larchitettura del sistema di elaborazione. modello di von neumann (parte 1)
TRANSCRIPT
L’Architettura del Sistema di Elaborazione. L’Architettura del Sistema di Elaborazione. Modello di Von Neumann (Parte 1)Modello di Von Neumann (Parte 1)
L’Architettura del Sistema di Elaborazione. Il Modello di Von Neumann (parte 1)
2
Argomenti trattati
Macchina di Von NeumannMacchina di Von Neumann Elementi della macchina di Von NeumannElementi della macchina di Von Neumann Codifica dei dati e delle istruzioni di un Codifica dei dati e delle istruzioni di un
programmaprogramma
L’Architettura del Sistema di Elaborazione. Il Modello di Von Neumann (parte 1)
3
Architettura di un calcolatore elettronico
Per architettura di un calcolatore elettronico si Per architettura di un calcolatore elettronico si intende: intende: l'insieme delle principali unità funzionali di un l'insieme delle principali unità funzionali di un
calcolatore calcolatore il modo in cui queste interagiscono il modo in cui queste interagiscono
L’Architettura del Sistema di Elaborazione. Il Modello di Von Neumann (parte 1)
4
Architettura di un calcolatore elettronico
ENIAC
Personal Computer
L’Architettura del Sistema di Elaborazione. Il Modello di Von Neumann (parte 1)
5
Architettura di un calcolatore elettronicoProgramma applicativo
Linguaggio di programmazione
Linguaggio assemblativo
Sistema Operativo
Linguaggio Macchina
Microprogramma
Logica Digitale
Gerarchia delle astrazioni
L’Architettura del Sistema di Elaborazione. Il Modello di Von Neumann (parte 1)
6
Modello di Von Neumann
L'architettura della L'architettura della Macchina di Von NeumannMacchina di Von Neumann comprende le seguenti unità funzionali:comprende le seguenti unità funzionali: il processore o unità centrale di elaborazione il processore o unità centrale di elaborazione
(CPU - Central Processing Unit)(CPU - Central Processing Unit)
la memoria centralela memoria centrale
i dispositivi di ingresso e uscita (I/O) i dispositivi di ingresso e uscita (I/O)
il bus di sistemail bus di sistema
L’Architettura del Sistema di Elaborazione. Il Modello di Von Neumann (parte 1)
7
Modello di Von Neumann
Memoria Centrale
L’Architettura del Sistema di Elaborazione. Il Modello di Von Neumann (parte 1)
8
CPU memoria Interfacce di I/O
bus
Funzionamento sequenziale del modello di Von Neumann
istruzione 1istruzione 2istruzione 3
…istruzione n
ris = f(op)OUT(op)dato 1dato 2dato 3
…dato m
opris
L’Architettura del Sistema di Elaborazione. Il Modello di Von Neumann (parte 1)
9
Elementi del modello di Von Neumann: CPU L'unità centrale di elaborazione (CPU) è la parte del L'unità centrale di elaborazione (CPU) è la parte del
sistema che contiene i dispositivi elettronici necessari sistema che contiene i dispositivi elettronici necessari al funzionamento della macchinaal funzionamento della macchina
La CPU esegue i programmi che risiedono nella La CPU esegue i programmi che risiedono nella memoria centralememoria centrale prelevando prelevando decodificandodecodificando eseguendo eseguendo
le istruzioni in essa contenuti e coordinando il le istruzioni in essa contenuti e coordinando il trasferimento dei dati tra le varie unità funzionalitrasferimento dei dati tra le varie unità funzionali
L’Architettura del Sistema di Elaborazione. Il Modello di Von Neumann (parte 1)
10
Elementi del modello di Von Neumann: CPU
L’Architettura del Sistema di Elaborazione. Il Modello di Von Neumann (parte 1)
11
Elementi del modello di Von Neumann: CPU
La CPU è composta da:La CPU è composta da: una unità di controllo una unità di controllo CU - Control UnitCU - Control Unit che che
interpreta e attiva le risorse necessarie interpreta e attiva le risorse necessarie all’esecuzione delle istruzioni all’esecuzione delle istruzioni
una unità aritmetico-logica una unità aritmetico-logica ALU - Arithmetic and ALU - Arithmetic and Logic UnitLogic Unit che effettua i calcoli aritmetici e logici che effettua i calcoli aritmetici e logici presenti nelle istruzioni (aritmetiche e logiche) del presenti nelle istruzioni (aritmetiche e logiche) del programmaprogramma
alcuni dispositivi di memoria detti alcuni dispositivi di memoria detti registriregistri
L’Architettura del Sistema di Elaborazione. Il Modello di Von Neumann (parte 1)
12
Elementi del modello di Von Neumann: CPU
Un registro è un dispositivo elettronico per memorizzare i Un registro è un dispositivo elettronico per memorizzare i datidati
Dal punto di vista tecnologico un registro è un Dal punto di vista tecnologico un registro è un insieme diinsieme di n elementi fisici bistabilin elementi fisici bistabili, detti , detti bitbit
Un registro formato da Un registro formato da nn bit è in grado di assumere bit è in grado di assumere 22nn configurazioni di stato diverseconfigurazioni di stato diverse
Ciascun bit ha due configurazioni stabili possibili, a cui Ciascun bit ha due configurazioni stabili possibili, a cui per convenzione vengono associati i simboli per convenzione vengono associati i simboli 00 e e 11
Registri
n=6, il numero delle configurazioni è 64
L’Architettura del Sistema di Elaborazione. Il Modello di Von Neumann (parte 1)
13
Approfondimenti: Bit BitBit (Binary Digit) cifra binaria che può assumere solo i valori 0 e 1 (Binary Digit) cifra binaria che può assumere solo i valori 0 e 1 Byte (B)Byte (B) un gruppo contiguo di 8 bit (es. 11001010) un gruppo contiguo di 8 bit (es. 11001010) NIBBLENIBBLE = 4 bit = 4 bit (es. 0110)(es. 0110) WORDWORD = 16 bit / 32 bit / 64 bit (dipende dall’architettura del = 16 bit / 32 bit / 64 bit (dipende dall’architettura del
calcolatore)calcolatore)
KB (chilo) =KB (chilo) = 221010 B = 1.024 B B = 1.024 B MB (mega) =MB (mega) = 221010 KB = 2 KB = 22020 B = 1.048.576 B B = 1.048.576 B GB (giga) =GB (giga) = 221010 MB = 2 MB = 23030 B = 1.073.741.824 B B = 1.073.741.824 B TB (tera) = TB (tera) = 221010 GB = 2 GB = 24040 B = 1.099.511.627.776 B B = 1.099.511.627.776 B
L’Architettura del Sistema di Elaborazione. Il Modello di Von Neumann (parte 1)
14
Elementi del modello di Von Neumann: CPU
Lo stato del registro, ossia la configurazione dei suoi Lo stato del registro, ossia la configurazione dei suoi bit, rappresenta l'informazione che vi è memorizzata e bit, rappresenta l'informazione che vi è memorizzata e tale informazione viene conservata fino a quando non tale informazione viene conservata fino a quando non la si altera la si altera
Un registro quindi ha una capacità di memorizzare Un registro quindi ha una capacità di memorizzare informazioni che è funzione del numero degli elementi informazioni che è funzione del numero degli elementi di cui si compone di cui si compone
Registri
Registro n=1 2Registro n=1 21 1 = 2 configurazioni= 2 configurazioni {0, 1}{0, 1}
Registro n=2, 2Registro n=2, 22 2 = 4 configurazioni= 4 configurazioni {00, 01, 10, 11}{00, 01, 10, 11}
Registro n=3 2Registro n=3 23 3 = 8 configurazioni= 8 configurazioni {000, 001, 010, 011,{000, 001, 010, 011,
100, 101, 110, 111}100, 101, 110, 111}
L’Architettura del Sistema di Elaborazione. Il Modello di Von Neumann (parte 1)
15
Elementi del modello di Von Neumann: CPU
I registri fondamentali all’interno della CPU sono:I registri fondamentali all’interno della CPU sono: I registri generali I registri generali R1, R2, …, RnR1, R2, …, Rn il registro degli indirizzi di memoria il registro degli indirizzi di memoria Memory Address Memory Address
Register (MAR)Register (MAR) il registro dei dati di memoria il registro dei dati di memoria Memory Data Register Memory Data Register
(MDR)(MDR) il contatore di programma il contatore di programma Program Counter (PC)Program Counter (PC) il registro della istruzione corrente il registro della istruzione corrente Instruction Register (IR)Instruction Register (IR) il registro di stato il registro di stato Program Status Register (PSR)Program Status Register (PSR)
Registri
L’Architettura del Sistema di Elaborazione. Il Modello di Von Neumann (parte 1)
16
Elementi del modello di Von Neumann: Memoria Centrale
Insieme di dispositivi aventi la funzione di memorizzare Insieme di dispositivi aventi la funzione di memorizzare (mantenere nel tempo) programmi e dati(mantenere nel tempo) programmi e dati
Per eseguire in modo efficiente i programmi, la memoria Per eseguire in modo efficiente i programmi, la memoria dovrebbe essere:dovrebbe essere: molto velocemolto veloce molto capiente (dimensioni sufficienti a contenere un molto capiente (dimensioni sufficienti a contenere un
programma e tutti i suoi dati)programma e tutti i suoi dati) permanente (in grado di mantenere il suo contenuto anche permanente (in grado di mantenere il suo contenuto anche
quando non vi e’ alimentazione elettrica)quando non vi e’ alimentazione elettrica) Queste caratteristiche NON sono facilmente conciliabili in Queste caratteristiche NON sono facilmente conciliabili in
sistemi come i PC dove occorre contenere i costisistemi come i PC dove occorre contenere i costi
Memoria
L’Architettura del Sistema di Elaborazione. Il Modello di Von Neumann (parte 1)
17
Elementi del modello di Von Neumann: Memoria Centrale
In un sistema di elaborazione In un sistema di elaborazione ci sono sempre due tipi di ci sono sempre due tipi di memoria: memoria: la memoria centrale, interna al la memoria centrale, interna al
calcolatore, direttamente calcolatore, direttamente accessibile dalla CPU accessibile dalla CPU realizzata da componenti a realizzata da componenti a semiconduttoresemiconduttore
la memoria secondaria o di la memoria secondaria o di massa, esterna al calcolatore massa, esterna al calcolatore realizzata da componenti realizzata da componenti magnetici o ottici(dischi, nastri)magnetici o ottici(dischi, nastri)
Memoria Cache
Memoria Primaria
Memoria Secondaria
Memoria di Archiviazione
C.P.U.
Memoriein linea
Memoriefuori linea
R.A.M.R.O.M.
DiscoFisso
floppyCDROMnastriDVDetc…
Memoria
L’Architettura del Sistema di Elaborazione. Il Modello di Von Neumann (parte 1)
18
Elementi del modello di Von Neumann: Memoria Centrale
La La memoria centralememoria centrale è una parte del sistema è una parte del sistema di memoria illustrato precedentemente e di memoria illustrato precedentemente e rappresenta la memoria interna al calcolatore rappresenta la memoria interna al calcolatore direttamente accessibile dalla CPUdirettamente accessibile dalla CPU
La memoria centrale mantiene:La memoria centrale mantiene: i programmi i programmi i dati necessari all'esecuzione dei programmii dati necessari all'esecuzione dei programmi
L’Architettura del Sistema di Elaborazione. Il Modello di Von Neumann (parte 1)
19
Elementi del modello di Von Neumann: Memoria Centrale
E’ un insieme finito di locazioni (celle o registri) di uguali E’ un insieme finito di locazioni (celle o registri) di uguali dimensionidimensioni
Ogni locazione di memoria consta di n bit, ciascuno dei quali Ogni locazione di memoria consta di n bit, ciascuno dei quali può rappresentare una informazione binaria (valori 0 e 1)può rappresentare una informazione binaria (valori 0 e 1)
Ogni locazione è caratterizzata da un Ogni locazione è caratterizzata da un indirizzoindirizzo e dal e dal contenutocontenuto L’indirizzo di una locazione è la posizione che questa occupa L’indirizzo di una locazione è la posizione che questa occupa
nella memoria rispetto alla prima locazione che ha indirizzo nella memoria rispetto alla prima locazione che ha indirizzo zero zero
Il contenuto di una locazione è l'informazione in essa registrata Il contenuto di una locazione è l'informazione in essa registrata (parola di memoria - WORD)(parola di memoria - WORD)
L’Architettura del Sistema di Elaborazione. Il Modello di Von Neumann (parte 1)
20
Elementi del modello di Von Neumann: Memoria Centrale
L’Architettura del Sistema di Elaborazione. Il Modello di Von Neumann (parte 1)
21
Elementi del modello di Von Neumann: Memoria Centrale
La memoria centrale è caratterizzata:La memoria centrale è caratterizzata: Dalla Dalla lunghezza di una parola di memorialunghezza di una parola di memoria che che
può variare da calcolatore a calcolatore, ma può variare da calcolatore a calcolatore, ma comunque è un multiplo del byte (es. comunque è un multiplo del byte (es. 8,16,32,64 bit)8,16,32,64 bit)
Dalla Dalla capacitàcapacità ovvero dal numero totale di ovvero dal numero totale di locazioni di memoria capacità della memoria si locazioni di memoria capacità della memoria si misura in byte o in multipli del byte. misura in byte o in multipli del byte.
L’Architettura del Sistema di Elaborazione. Il Modello di Von Neumann (parte 1)
22
Elementi del modello di Von Neumann: Memoria Centrale
Alla memoria centrale si accede per effettuare operazioni di Alla memoria centrale si accede per effettuare operazioni di letturalettura o o scritturascrittura
Ciascuna locazione di memoria può essere selezionata Ciascuna locazione di memoria può essere selezionata specificando il suo indirizzo nel registro degli indirizzi (MAR, specificando il suo indirizzo nel registro degli indirizzi (MAR, Memory Address Register)Memory Address Register)
L'indirizzamento di una locazione di memoria consiste nel L'indirizzamento di una locazione di memoria consiste nel selezionare elettricamente la locazione relativa all'indirizzo selezionare elettricamente la locazione relativa all'indirizzo specificatospecificato
Se il (MAR) registro degli indirizzi ha Se il (MAR) registro degli indirizzi ha kk bit può indirizzare bit può indirizzare 22kk celle di celle di memoria i cui indirizzi variano da memoria i cui indirizzi variano da 00 a a 22kk-1-1
Con un MAR di Con un MAR di 1010 bit si possono indirizzare bit si possono indirizzare 221010 ovvero ovvero 10241024 locazioni di memorialocazioni di memoria
L’Architettura del Sistema di Elaborazione. Il Modello di Von Neumann (parte 1)
23
Elementi del modello di Von Neumann: Memoria Centrale
01234567
indirizzo 4
contenuto
MAR a 3 bit
MDR a 8 bit
Memoria con: • 23=8 locazioni di 8 bit• Capacità = 8*8 = 64 bit
0 01
0 0 1 0 10 000 0 0 1 0 1 0 0
L’Architettura del Sistema di Elaborazione. Il Modello di Von Neumann (parte 1)
24
Elementi del modello di Von Neumann: Memoria Centrale
La memoria centrale a cui ci siamo fino ad ora riferiti La memoria centrale a cui ci siamo fino ad ora riferiti viene anche detta memoria viene anche detta memoria RAM (Random Access RAM (Random Access Memory)Memory)
La RAM è volatile ovvero in assenza di La RAM è volatile ovvero in assenza di alimentazione elettrica perde il suo contenutoalimentazione elettrica perde il suo contenuto
Quando si spegne il computer, tutto quello che è Quando si spegne il computer, tutto quello che è stato caricato nella memoria RAM viene cancellatostato caricato nella memoria RAM viene cancellato
L’Architettura del Sistema di Elaborazione. Il Modello di Von Neumann (parte 1)
25
Elementi del modello di Von Neumann: Memoria Centrale
Una porzione di memoria centrale, identificata con il Una porzione di memoria centrale, identificata con il termine termine ROM (Read Only Memory)ROM (Read Only Memory) è riservata solo per è riservata solo per operazioni di letturaoperazioni di lettura
La ROM è realizzata con diversa tecnologia e viene La ROM è realizzata con diversa tecnologia e viene usate dai costruttori per memorizzare in modo usate dai costruttori per memorizzare in modo permanente informazioni necessarie per l’avviamento permanente informazioni necessarie per l’avviamento del sistema (firmware)del sistema (firmware)
L’Architettura del Sistema di Elaborazione. Il Modello di Von Neumann (parte 1)
26
Approfondimenti: ROM Le ROM si distinguono a seconda della tecnologia usata per Le ROM si distinguono a seconda della tecnologia usata per
memorizzare le informazioni iniziali in EROM, PROM e EPROM:memorizzare le informazioni iniziali in EROM, PROM e EPROM: Le EROM (Erasable ROM) sono ROM cancellabili, in genere questo Le EROM (Erasable ROM) sono ROM cancellabili, in genere questo
tipo di ROM sono cancellabili esponendole a raggi ultraviolettitipo di ROM sono cancellabili esponendole a raggi ultravioletti Le PROM (Programmable ROM) sono ROM programmabiliLe PROM (Programmable ROM) sono ROM programmabili Le EPROM (Erasable and Programmable ROM) sono ROM Le EPROM (Erasable and Programmable ROM) sono ROM
cancellabili e programmabilicancellabili e programmabili Il software contenuto nelle ROM per distinguerlo da quello Il software contenuto nelle ROM per distinguerlo da quello
contenuto nella RAM viene chiamato contenuto nella RAM viene chiamato firmwarefirmware
L’Architettura del Sistema di Elaborazione. Il Modello di Von Neumann (parte 1)
27
Approfondimenti: Firmware Fa parte del firmware, ad esempio, il Fa parte del firmware, ad esempio, il BIOSBIOS, ,
cioè quel gruppo di istruzioni che consente: cioè quel gruppo di istruzioni che consente: ai diversi processori di attivarsi al momento ai diversi processori di attivarsi al momento
dell’accensione del computerdell’accensione del computer di effettuare un auto-test di funzionamento di effettuare un auto-test di funzionamento di caricare nella RAM il sistema operativo, presente di caricare nella RAM il sistema operativo, presente
sul disco rigido, a cui viene ceduto il controllo del sul disco rigido, a cui viene ceduto il controllo del sistema sistema
L’Architettura del Sistema di Elaborazione. Il Modello di Von Neumann (parte 1)
28
Elementi del modello di Von Neumann: Bus
Il Il bus di sistemabus di sistema è l’insieme di linee o circuiti, è l’insieme di linee o circuiti, impiegati per il trasferimento di dati tra le impiegati per il trasferimento di dati tra le componenti di un sistema informaticocomponenti di un sistema informatico
Questo gruppo di linee trasporta tipi diversi di Questo gruppo di linee trasporta tipi diversi di informazione: informazione: dati dati indirizzi indirizzi segnali di controllosegnali di controllo
Definizione generale
L’Architettura del Sistema di Elaborazione. Il Modello di Von Neumann (parte 1)
29
Elementi del modello di Von Neumann: Bus
Il bus di sistema è il mezzo fisico che, sotto il Il bus di sistema è il mezzo fisico che, sotto il diretto controllo della CPU, collega le varie diretto controllo della CPU, collega le varie unità funzionali della macchina di Von unità funzionali della macchina di Von NeumannNeumann
La CPU, tramite i suoi organi, permette di La CPU, tramite i suoi organi, permette di collegare solo due unità funzionali alla volta:collegare solo due unità funzionali alla volta: una che trasmette dati una che trasmette dati una che riceve una che riceve
All’interno del modello di Von Neumann
L’Architettura del Sistema di Elaborazione. Il Modello di Von Neumann (parte 1)
30
Elementi del modello di Von Neumann: Bus
Il bus degli indirizzi, connesso al MAR, ha tanti Il bus degli indirizzi, connesso al MAR, ha tanti conduttori quanti sono i bit di un indirizzo (pari quindi conduttori quanti sono i bit di un indirizzo (pari quindi alla dimensione del MAR)alla dimensione del MAR)
Questo numero in genere è il logaritmo in base due Questo numero in genere è il logaritmo in base due dello spazio di indirizzamento, ovvero del numero di dello spazio di indirizzamento, ovvero del numero di locazioni di memoria complessivamente indirizzabililocazioni di memoria complessivamente indirizzabili
Il bus dei dati, connesso al registro MDR ha un numero Il bus dei dati, connesso al registro MDR ha un numero di conduttori pari alla dimensione di una locazione di di conduttori pari alla dimensione di una locazione di memoria, lo stesso numero quindi corrisponde anche memoria, lo stesso numero quindi corrisponde anche alla lunghezza del registro MDRalla lunghezza del registro MDR
Alcune specifiche
L’Architettura del Sistema di Elaborazione. Il Modello di Von Neumann (parte 1)
31
Unità di elaborazione (CPU)
Parte operativa: Parte operativa: blocchi funzionali blocchi funzionali interconnessi dal bus interconnessi dal bus di sistemadi sistema
Unità di controllo: Unità di controllo: attiva i circuiti della attiva i circuiti della parte operativaparte operativa
Funzionamento Funzionamento sincrono (clock)sincrono (clock)
parte operativa
parte controllo
clock
dati/istruzioniindirizzi
controlli
comandiistruzioni/flag
L’Architettura del Sistema di Elaborazione. Il Modello di Von Neumann (parte 1)
32
Elementi del modello di Von Neumann
Motherboard