Matteo Baldoni Architetture degli Elaboratori 1
Corso di Corso di
Architettura degli Elaboratori Architettura degli Elaboratori
Il livello logico digitale:
Memoria
Matteo Baldoni Dipartimento di Informatica Università degli Studi di Torino C.so Svizzera, 185 – I-10149 Torino [email protected] http://www.di.unito.it/ ~baldoni
Matteo Baldoni Architetture degli Elaboratori 2
Clock Clock
Clock: un circuito che emette una serie di impulsi con una specifica larghezza e intermittenza Tempo di ciclo di clock:
intervallo fra i fronti corrispondenti di due impulsi consecutivi Fronte di salita di C1, fronte di discesa di C1, fronte di salita di C2,
fronte di discesa di C2 500 MHz = 2 nsec di tempo di ciclo di clock
Matteo Baldoni Architetture degli Elaboratori 3
Latch di tipo SR Latch di tipo SR
Memoria di 1 un bit: ricorda i valori di input precedenti Con R = S = 0 ha due stati coerenti: “stato 0” e “stato 1”
S = 1 porta il latch allo “stato 0”, quindi non ha piu`
nessun effetto (analogamente per R = 1) Il circuito ricorda qual era l'ultimo S o R
stato 0
stato 1 S = 1 (temporaneamente) dopodiche` non ha nessun effetto
R = 1 (temporaneamente) dopodiche` non ha nessun effetto
Matteo Baldoni Architetture degli Elaboratori 4
Latch di tipo SR
Latch di tipo SR sincronizzato sincronizzato
Un clock garantisce che il latch cambi stato solo in certi momenti specifici
Le porte AND abilitano gli input S e R solo quando il clock e` a 1 (enable, strobe)
Matteo Baldoni Architetture degli Elaboratori 5
Latch di tipo D sincronizzato Latch di tipo D sincronizzato
R = S = 1 ha come stato coerente con ambo gli output 0 Quando R e S tornano a 0 il latch passa in modo non deterministico allo “stato 0” o allo “stato 1” (a meno che uno non prevalga per un istante sull'altro)
Il latch D evita questa ambiguita`: D = 1 e clock = 1 allora si ha lo “stato 1”, D = 0 e clock = 1 allora “stato 0”
Matteo Baldoni Architetture degli Elaboratori 6
Flip-flop di tipo D Flip-flop di tipo D
Un latch e` azionato dal livello )level triggered) Un flip-flop e` azionato dal fronte (edge triggered) La lunghezza dell'inpulso di clock non e` importante
crea un piccolo ritardo del segnale di clock
latch di tipo D
Matteo Baldoni Architetture degli Elaboratori 7
Flip-flop di tipo D Flip-flop di tipo D
L'invertitore crea un piccolo ritardo alla propagazione del segnale a verso b
Il latch D verra` attivato ad un ritardo fisso dopo il fronte di salita del clock (per l'attraversamento dell'AND)
Matteo Baldoni Architetture degli Elaboratori 8
Flip-Flop Flip-Flop
(a) latch di tipo D attivato con livello 1 del clock (b) latch di tipo D attivato con livello 0 del clock
(c) flip-flop di tipo D attivato sul fronte di salita del clock (d) flip-flop di tipo D attivato sul fronte di discesa del clock
Matteo Baldoni Architetture degli Elaboratori 9
Registri Registri
Segnali di clock, preset, clear raggruppati insieme per formare un registro
Invertitore come
amplificatore del segnale di clock
Matteo Baldoni Architetture degli Elaboratori 10
Registri con buffer (non) invertente Registri con buffer (non) invertente
Il buffer (non) invertente si comporta come un filo quando il control e alto
L'output enable permette di (dis)connettere il registro dal bus di output[Tanenbaum, Structured Computer Organization, Third Edition, pagine 162-164, sez. 4.1.1 e 4.1.2]
Matteo Baldoni Architetture degli Elaboratori 11
Organizzazione della memoria Organizzazione della memoria
memoria 4 x 3
8 linee di input:
3 per i dati di input
2 per l'indirizzo
3 per i bit di controllo:
CS per Chip Select
RD per distingure tra read e write
OE per abilitare l'output
3 per output
Matteo Baldoni Architetture degli Elaboratori 12
Organizzazione della memoria Organizzazione della memoria
decoder
multiplexer +
buffer non invertenti:
dispositivi tri-state output
enable
and-or flip-flop di tipo D
Matteo Baldoni Architetture degli Elaboratori 13
Circuito multiplexer: decoder + andor Circuito multiplexer: decoder + andor
Matteo Baldoni Architetture degli Elaboratori 14
Organizzazione della memoria Organizzazione della memoria
multiplexer decoder
decoder con abilitazione dell'output
flip-flop di tipo D
buffer non invertenti
Matteo Baldoni Architetture degli Elaboratori 15
Chip di memoria Chip di memoria
n linee di indirizzo corrispondono a 2n righe di flip-flop
n linee di output
corrispondono a n colonne di flip-flop
I segnali possono essere attivi quando il livello e`
basso o alto (specificato nel chip)
Matrici n x n (b): selezione della colonna e della riga
Matteo Baldoni Architetture degli Elaboratori 16
Tipi di memoria: RAM Tipi di memoria: RAM
RAM: random access memory
SRAM: RAM statiche (flip-flop tipo D), estremamente veloci, utilizzate per realizzare le cache
DRAM: RAM dinamiche (transistor con condensatore), vanno rinfrescati, offrono grandi capacita` ma piu` lente
DRAM FPM (Fast Page Memory): organizzate in matrici
DRAM EDO (Extended Data Output): con semplice pipeline per l'output
SDRAM (Synchronous DRAM): usata inizialmente su cache e memorie centrali, dati e indirizzi controllati dallo stesso clock (133 MHz per le SDR, Single Data Rate)
SDRAM-DDR (Double Data Rate): leggono sia nel fronte di salita che in quello di discesa (333/400 MHz), comparse inizialmente sulle schede video
Matteo Baldoni Architetture degli Elaboratori 17
Tipi di memoria: ROM Tipi di memoria: ROM
ROM: Read-Only Memory, utilizzati per dati che non devono essere modificati
PROM (Programmable ROM)
EPROM (Erasable PROM): memoria cancellabile medialte esposizione alla luce ultravioletta
EEPROM (Electrically Erasable PROM): memoria cancellabile per mezzo di impulsi elettrici (ma molto piu`
lente)
FLASH (EEPROM cancellabile a blocchi)