Estratto del documento

Capitolo primo Prerequisiti

Introduzione Argomenti che si suppone sian o noti al lettore:

• Calcolo automatico , elab orazione, algoritmo

• Automa

• Stati e registri

1 Architettura, organizzazione e struttura dei calcolatori • Macchine di Tu ring

2 Livelli di astrazione e strati • Caratteristiche fondamentali di un computer

3 I modelli fondamentali e l'architettura

4 Modello di Von Neumann 1 Architettura, organizzazione e struttura dei calcolatori

4.1 Modello “penna e carta”

4.2 Le unità del modello di Von Neumann Spunto da Stalling s

4.3 Le istruzioni elementari del modello

4.4 Caricamento del programma e sua esecuzione 2 Livelli di astrazione e strati

4.5 L'algoritmo del processore

5 Organi di un calcolatore: unità di ingresso e uscita La suddivisione in livelli di un sistema per l'elaborazione delle informazioni pu ò avvenire

5.1 Unità di ingresso in funzione dell'osservatore ch e lo u sa o lo progetta; in tal caso si parla pi ù propriamente di

5.2 Unità di uscita. strati del sistema: in fig. 2.1 è mostrata una tipica suddivisione di tal genere che si svilu ppa

6 La memoria principale (o centrale) dalla vision e d el sistema che ha l'utente finale fino a includere quella propria del progettista

7 Memorie di massa elettron ico.

8 Unità logico-aritmetica

9 Il processore e l'unità centrale (CPU) Gestione aziendale, progettazione, …

Pacchetti applicativi

Utenti Programmi

Sistema operativo (gestione lavori, sistema di archiviazione)

Processori del sistema operativo (traduttori, editor, ...)

Sistema software Sistema operativo (gestione sistema):

routine di servizio delle interruzioni, drivers, etc.

Architettura del sistema

Unità hardware componenti:

Sistema processore, unità logico-aritmetica, input-output, memorie

hardware Architettura delle unità

Macchine elementari: addizionatori, codificatori, decodificatori, reti di controllo,

registri, flip-flop, porte, etc.

Unità hardware Circuiti integrati e apparati elettromeccanici

Componenti elettronici ed elettromeccanici

Figura 1.1 -Struttura a strati di un sistema per l'elaborazione delle informazioni

L'utente finale «vede» il sistema come un og getto unico che gli consente la solu zione di

una prop ria problematica (ad es. gestione aziendale, pro gettazione di imp ianti, di strutture,

etc.) e che si integra (o dovrebbe integrarsi!) con una realtà esterna (ad es. struttura

aziendale, centro di progetto e ricerca, etc.). I componenti d el sistema, oltre a componenti

«esterni » all'elaboratore (ad es. reparto amministrativo dell'azienda, metodi di simulazione

per la progettazione di impianti, etc.), so no i pacchetti applicativ i (packages), sov ente fra

loro collegati, che affrontano una singola problematica dell'utente finale (ad es. contab ilità

generale dell'azienda, gestione magazzini, contabilit à indu striale, prog etto di strutture, di reti

elettriche, etc.).

Il progettista di pacchetti applicativi è anch'esso un utente del sistema, ma di tipo div erso:

esso tiene co nto delle esigenze dell'utente finale, ma è concentrato soprattutto su lla singola

problematica che un pacchetto applicativo deve risolvere. Esso quin di è interessato in

particolare a come articolare ciascun pacchetto in programmi (ad es. caricamento di

movimenti, aggiornamento di archivi base, calcolo di telai, distribuzione del carico, etc.), alle

sezioni «gestione lavo ri » e «archiviazio ne» del sistema operativo (s.o.) e a tutti quei

processori del s.o. che o sono strumenti per la realizzazione e messa a punto dei programmi

(tradutto ri, editors, interpreti, etc.) o possono essere inglobati nei pacchetti stessi (programmi

di sort, merge, etc.). - l'algo ritmo come concetto intuitivo: una sequenza finita di azioni elaborative da esegu ire

Il personale di gestione del sistema interagisce con i pacchetti ap plicativi e quindi con i automaticamente: l'algoritmo necessita di un esecutore per essere eseguito;

- il modello di auto ma: ciascun automa esegue un algo ritmo, ottenuto come sequenza di non

singoli programmi utilizzando il s.o. che coordina e disciplina la loro esecuzione nella

sezione g estione lavori. ulteriormente precisate "uscite", in risposta ad an aloghi "ingressi"; con l'automa si

Il progettista del s.o. è ovviamente interessato a tutti gli strati del sistema software, ma introduce il concetto di stato;

- il modello di Turing: ciascuna macchina esegue un alg oritmo , come sequenza di alcune

deve anche conoscere a vari livelli d i dettaglio tutti gli strati superiori del sistema per venire

incontro alle esigenze dell'utenza. Peraltro, esso deve soprattutto conoscere il sistema precisate azioni elabo rative elementari (destra, sinistra, leggi, scriv i, ...) e,

hardw are (architettura e .unità componen ti) per poter p rogettare la sezione del s.o. «gestione so rprendentemente, la tesi di Church ha affermato che questo semplice modello consente in

del sistema». .Tale sezione infatti «vede» il sistema hardw are in quanto interviene ripetuta - realtà di fornire una definizione di algoritmo: è algoritmo ci ò che pu ò essere calcolato da

mente durante l'esecuzione di un qualsiasi programma, sia per contro llarne l'avanzamento con una macchina di Turing.

- esiste una distin ta macchina di Turing per ciascun distinto prob lema da calcolare.

l'attribuzione delle risorse necessarie, sia per sovraintendere alle operazioni di ingresso uscita

e alla loro sincronizzazione. Ma il concetto che caratterizza un calcolatore è quello di possedere un

Il sistemista hard ware opera a livello di architettura hard ware del sistema e qu indi lo vede programma

come un insieme di componenti, dette unità hardw are, fra loro connesse in una determinata registrato in memo ria: la medesima macchina fisica (il calcolatore), attrezzata con differenti

struttu ra logico -topo logica: unità classiche sono il processore centrale (CPU), l'unità "pr ogrammi" è in g rado di rappresentare tutte le possibili macchine di Turing (fatti salvi

aritmetico-logica (ALU), i sistemi di ingresso-uscita (I/O), le memorie ed appositi «can ali» e so ltanto alcune questioni di natura puramente teorica sulla "capacità" di memoria).

Un "programma" è la descrizione formalizzata di un alg oritmo , espressa in un linguagg io

«bus» per il loro collegamento. Oltre all'architettu ra fondamentale d i V on Neu mann (lo

schema classico di collegamento fra le unità citate), sono oggi possibili anche altre di programm azione: è questo il nuovo concetto che verr à introdotto con i prossimi modelli.

architetture, sia costituenti un a semplice evoluzione di quella fondamentale in quan to In un modello alternativo, la stessa macchin a di Turing p otrebbe in effetti essere una

ottenute multiplando le u nit à componen ti e realizzando appositi collegamenti e macchina "a programma": bastereb be in proposito concepire un "linguaggio" formale con il

sincronizzazioni fra esse, sia basate su principi diversi. quale esprimere la sequenza delle azioni elaborative elementari ed un org ano che

interpretasse tali "istruzioni" eseguend ole; la descrizione della macchina avverrebbe

Ovviamente il sistemista hardware deve anche conoscere in un certo dettaglio gli strati

inferiori del sistema software, in qu anto l'architettura del sistema hardware e le funzio ni attraverso tale "p rogramma" piuttosto che attraverso la tabella delle transizioni classica dei

sv iluppate d a ciascu na unità componen te condizionan o strettamente la potenzialità e il modelli di automa e di Turing.

parallelismo d i esecuzione delle funzioni elementari presenti nei programmi deg li strati

su periori. In particolare, la potenzialità è condizionata dal linguaggio macchina dei

processori mentre il parallelismo d al tipo di architettura impiegata.

Il progettista delle unità hardware studia a sua vo lta l'unità a livello architettura,

individuandone le macchine componenti più elementari e le loro connessioni. Tale approccio

può ovviamente essere iterato dando luogo ad un processo iterativo più o meno lungo in

dipendenza della complessità delle funzioni espletate dal - l'unità, e che conduce alla

individuazione delle macchine elementari che la compongono e delle relativ e connessio ni; ad 4 Modello di Von Neumann

esempio una unità aritmetica è composta da un divisore, un moltiplicatore, un sottrattore ed

un addizionatore; quest’ultimo, se l'un it à è in virgola mobile, è composto da u na macchina L’architettura d ei calcolatori elettronici attuali trae le sue origini da un modello generale

per il confronto degli esponenti e da un addizionato re in virgola fissa, che è a sua volta di elaboratore, concepito dal matematico John Von Neumann ed illustrato nel 1945 in una

composto da un addizionatore di cifre e così via. proposta[1] per la realizzazione di un n uovo calcolatore[2] chiamato EDVA C (Electronic

Le macchine elementari o sono di tipo elettromeccanico o di tipo elettronico; con Discrete Varia ble Com puter). La realizzazione dell’EDVAC fu effettivamente portata a

particolare riferimento a qu este ultime, esse sono in gen ere prodotte in ap positi chip di termine solo nel 1952 dall'Istituto per gli Studi Avanzati (IAS) di Princeton (USA), ma già

circuiti integrati (in tali chip , peraltro, si realizzano anche funzioni più complesse, quali. nel 1948 era stato realizzato in Inghilterra, presso l’Università di Manchester, un calcolatore

quelle co rrispondenti ad una intera unità): di esse si richiede dapprima u n progetto lo gico e (Manchester Mark I) basato sul modello di Von Neumann.

su ccessivamente un progetto elettronico che so no di competenza rispettivamente del

progettista di reti logiche e del progettista di circuiti elettronici. 4.1 Modello “penna e carta”

Prima di introdurre il modello di Von Neumann, che ha ispirato l ’architettura dei primo

3 I modelli fondamentali e l'architettura calcolatori elettronici, se ne illustra una versione ipotetica in cui il ruolo di esecutore è

affidato ad un operatore inintelligente dotato di “penna e carta” come strumenti ausiliari.

L'architettura di un sistema di elaborazione delle informazioni non prescinde dai modelli Un operatore inintelligente legge istruzioni scritte su un foglio di carta (il “program ma”) e

teorici di base dell'informatica; anzi, almeno sul piano lo gico-funzionale, ne è la pratica dispon e da un lato di un tabulato in cui trascrive e da cui legge i risultati di operazio ni

attuazione. Il modello fondamentale al quale si ispirano le architetture dei moderni elementari e dall'altro una calcolatrice elettrica per l'esecuzio ne di dette operazioni. Le

calcolatori è quello di Von Neumann, che tra breve presenteremo, anche se il modello istruzioni che costituiscono il "programma di calcolo" rich iedono in generale l'esecu zione

originario ha subito nel tempo revisioni sostanziali, ma non tali da ridefinire un distin to delle seguenti operazioni:

modello. - operazioni d i ingresso dati, cioè assegnazione d i valori alle variabili del pro gramma;

Il modello di V on Neumann nasce come evoluzione d ei modelli preesistenti degli automi e - operazioni d i trasferimento dati dal tabulato ai registri della calcolatrice e viceversa;

della macchina di Tu ring e pertanto, prima di presentarlo, richiamiamo i principi introdotti - operazioni aritm etiche e logiche, eseguite dalla calcolatrice a seguito di azionamento d i

dai su ddetti modelli. appositi tasti;

I concetti fondamentali introdo tti indipendentemente dal modello di Von N eumann sono, in - operazioni di uscita, mediante le quali l'operatore restituisce al committente i risultati della

sintesi: elaborazione.

esegu e.

Il p rogramma eseguito dall’operatore è il risultato di un ’appro fondita analisi del problema

e traduce, in termini operativi e con l’impiego delle sole istruzioni che l’operatore è in grad o 4.4 Caricamento del programma e sua esecuzione

di interpretare, l ’algoritmo che un a persona esp erta (il programmatore) ha individuato come L'esecuzione di un programma al calcolato re avvien e fondamen talmente in due "fasi" o

adatto a risolvere il problema. "temp i" successivi:

- caricamento d el p rogramma (al tempo di caricamento - load time);

4.2 Le unità del modello di Von Neumann - esecuzione d el programma (al tempo di esecuzione - ru n time)

Il modello di V on N eumann ad erisce alla metafora "penna e carta" e, secon do esso, un Nella prima fase, il programma viene prelevato dall'unità di ingresso e registrato in

sistema è costituito dalle seguenti "unit à": memoria, nella seconda esso viene eseg uito per opera dell'unità di controllo che interpreta le

su ccessive istruzioni ed attiva opportunamente le altre un it à. Si n oti che, mentre il

programma viene letto n ella fase di caricamento preventivo, la lettura dei dati è una delle

c

o n

t r o

l

l

o operazioni richieste dal prog ramma e p ertanto questa viene eseguita in fase di esecuzione, nei

tempi e con le modalità prefissate dal pro gramma.

c o

n

t r

o

l l

o c

o n

t r o

l

l

o

u

. d

i c o

n

t r o

l l

o Questa precisazion e è stata qui fatta soprattutto per colui che legge per la prima volta i

( p

r o

c e

s

s

o

r e

) particolari del fu nzionamento del calcolatore, mentre l'"esperto" dovrebbe gi à sapere che in

c

o n

t r

o l

l

o effetti dal punto di vista del processore (e quindi dell'architettura del sistema) le due fasi di

d

a

t i cui sopra non sono distin te: la fase di caricamento del programma è, in effetti, essa stessa la

u

. d

i u

s

c

i t a

u

. d

i i n

g

r e s

s

o d a

t i d

a

t i fase di esecuzione di un altro programma particolare (il caricatore di programmi o load er). In

m

e

m o

r i a

( i

n

p

u

t ) ( o

u

t p

u

t ) altri termini, le istruzion i del prog ramma sono i dati di un altro p rogramma.

d

a

t i 4.5 L'algoritmo del processore

A .

L

. U

. Il p rogramma è una sequenza di "istruzio ni", ciascuna delle q uali esprime, in un linguaggio

prefissato, una delle azioni elaborative proprie del sistema. Il linguagg io direttamente

interpretato d al processore è il linguagg io macchina e quindi il programma e le istruzioni del

Figura 4.1 Modello di Von Neumann modello in esame so no quelli di macchina.

- L'unità di ingresso (input), che consente l'immissione (in gergo "lettura") di dati nella Ma come fa il processore ad eseguire le istruzion i del linguaggio macchina, mentre qu esto

memoria in fase di esecuzione del programma e del p rogramma stesso in una fase è in memoria? N ela unità di controllo è realizzato circuitalmente (o comu nque nella macchina

preliminare che diremo di caricamento del programma. di livello immediatamente inferiore a quella in esame) un apposito algo ritmo del processore

- L'unità di mem oria, nella q uale vengono registrate tutte le informazioni, cio è le istruzioni che nelle sue linee essenziali (nel seguito l'algoritmo sarà particolarizzazto e specializzato),

del p rogramma e i dati originari, intermedi e finali; essa svolge in effetti la duplice opera alternando in ciclo due attività fondamentali (fig. ):

funzione del foglio su cui veniva scritto il programma e del tabulato per i dati di cui - accesso ad una istruzione (fetch);

all'esempio. - esecuzione d ell'istruzione (execute ).

- L'unità di controllo o d i governo, detta anche processore, che presiede a tutte le operazioni Nella prima fase, l'unità di controllo accede ad u na istruzione (determinata dall'istruzione

del calcolatore, interpretando le istruzioni successivamen te prelevate dalla memoria ed precedentemente esegu ita), prelevandola dalla memoria e trasportandola nei propri registri.

inviando alle specifiche unità i segn ali per l'esecuzione delle singole operazioni. Nella fase di esecuzione, l'istruzione così individuata viene interpretata ed eseguita, con

- L'unità aritmetico-logica o di elaborazione (Arithmetic -Logic U nit - ALU), in g rado di l'ausilio, a second a dei casi, d elle un ità di ingresso, aritmetico-logica e di uscita. Infine,

esegu ire, a richiesta dell'unità di co ntrollo, le operazioni aritmetiche e logiche. l'unità di co ntrollo ripren de ciclicamente un nuovo accesso ed una nuova esecuzione.

- L'unità di uscita (output), p er la presentazio ne dei risultati dell'elaborazione su appositi Nonostante la struttura di prin cipio estremamente elementare che risulta dallo schema

documenti. proposto, il calcolatore numerico possiede notev oli capacità elaborative e flessibilità di

Il modello è rappresentato graficamente in figura 10.1, ove sono posti in evidenza con impiego: tali p rerogative gli derivano fondamentalmente dalla eno rme velocità operativa,

linee tratteggiate lo spostamento dei dati fra le diverse unità e con le linee piene la funzione dell'ordine della decina di nanosecondo per azione elaborativa elementare, dalla cap acità di

di supervisione esercitata dall'un ità di co ntrollo sulle altre unità. memoria, in grado d i registrare un nu mero di informazioni praticamente illimitato e

so prattutto dalla possibilità di memorizzare i programmi e di procedere pertanto alla

4.3 Le istruzioni elementari del modello interpretazione delle relative istruzioni a velocit à elettron ica.

Pur senza entrare nel dettaglio operativo, il modello si basa sulla scelta di alcune

operazioni elementari (azioni elaborative) semplici, che costituiscono le componenti

fondamentali d

Anteprima
Vedrai una selezione di 29 pagine su 136
Calcolatori Elettronici I Pag. 1 Calcolatori Elettronici I Pag. 2
Anteprima di 29 pagg. su 136.
Scarica il documento per vederlo tutto.
Calcolatori Elettronici I Pag. 6
Anteprima di 29 pagg. su 136.
Scarica il documento per vederlo tutto.
Calcolatori Elettronici I Pag. 11
Anteprima di 29 pagg. su 136.
Scarica il documento per vederlo tutto.
Calcolatori Elettronici I Pag. 16
Anteprima di 29 pagg. su 136.
Scarica il documento per vederlo tutto.
Calcolatori Elettronici I Pag. 21
Anteprima di 29 pagg. su 136.
Scarica il documento per vederlo tutto.
Calcolatori Elettronici I Pag. 26
Anteprima di 29 pagg. su 136.
Scarica il documento per vederlo tutto.
Calcolatori Elettronici I Pag. 31
Anteprima di 29 pagg. su 136.
Scarica il documento per vederlo tutto.
Calcolatori Elettronici I Pag. 36
Anteprima di 29 pagg. su 136.
Scarica il documento per vederlo tutto.
Calcolatori Elettronici I Pag. 41
Anteprima di 29 pagg. su 136.
Scarica il documento per vederlo tutto.
Calcolatori Elettronici I Pag. 46
Anteprima di 29 pagg. su 136.
Scarica il documento per vederlo tutto.
Calcolatori Elettronici I Pag. 51
Anteprima di 29 pagg. su 136.
Scarica il documento per vederlo tutto.
Calcolatori Elettronici I Pag. 56
Anteprima di 29 pagg. su 136.
Scarica il documento per vederlo tutto.
Calcolatori Elettronici I Pag. 61
Anteprima di 29 pagg. su 136.
Scarica il documento per vederlo tutto.
Calcolatori Elettronici I Pag. 66
Anteprima di 29 pagg. su 136.
Scarica il documento per vederlo tutto.
Calcolatori Elettronici I Pag. 71
Anteprima di 29 pagg. su 136.
Scarica il documento per vederlo tutto.
Calcolatori Elettronici I Pag. 76
Anteprima di 29 pagg. su 136.
Scarica il documento per vederlo tutto.
Calcolatori Elettronici I Pag. 81
Anteprima di 29 pagg. su 136.
Scarica il documento per vederlo tutto.
Calcolatori Elettronici I Pag. 86
Anteprima di 29 pagg. su 136.
Scarica il documento per vederlo tutto.
Calcolatori Elettronici I Pag. 91
Anteprima di 29 pagg. su 136.
Scarica il documento per vederlo tutto.
Calcolatori Elettronici I Pag. 96
Anteprima di 29 pagg. su 136.
Scarica il documento per vederlo tutto.
Calcolatori Elettronici I Pag. 101
Anteprima di 29 pagg. su 136.
Scarica il documento per vederlo tutto.
Calcolatori Elettronici I Pag. 106
Anteprima di 29 pagg. su 136.
Scarica il documento per vederlo tutto.
Calcolatori Elettronici I Pag. 111
Anteprima di 29 pagg. su 136.
Scarica il documento per vederlo tutto.
Calcolatori Elettronici I Pag. 116
Anteprima di 29 pagg. su 136.
Scarica il documento per vederlo tutto.
Calcolatori Elettronici I Pag. 121
Anteprima di 29 pagg. su 136.
Scarica il documento per vederlo tutto.
Calcolatori Elettronici I Pag. 126
Anteprima di 29 pagg. su 136.
Scarica il documento per vederlo tutto.
Calcolatori Elettronici I Pag. 131
Anteprima di 29 pagg. su 136.
Scarica il documento per vederlo tutto.
Calcolatori Elettronici I Pag. 136
1 su 136
D/illustrazione/soddisfatti o rimborsati
Acquista con carta o PayPal
Scarica i documenti tutte le volte che vuoi
Dettagli
SSD
Ingegneria industriale e dell'informazione ING-INF/05 Sistemi di elaborazione delle informazioni

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher Sara F di informazioni apprese con la frequenza delle lezioni di Calcolatori elettronici I e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli studi di Napoli Federico II o del prof Canonico Roberto.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community