• Non ci sono risultati.

Architettura degli Elaboratori Architettura degli Elaboratori

N/A
N/A
Protected

Academic year: 2022

Condividi "Architettura degli Elaboratori Architettura degli Elaboratori"

Copied!
9
0
0

Testo completo

(1)

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

2 Architetture degli Elaboratori

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

Circuiti combinatori e sequenziali Circuiti combinatori e sequenziali

I circuiti sequenziali collegano alcune uscite di un circuito combinatorio con ingressi dello stesso circuito in modo da produrre dei cicli chiusi

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`

stato 0

stato 1 S = 1 (temporaneamente) dopodiche` non ha nessun effetto

R = 1 (temporaneamente) dopodiche` non ha nessun effetto

(2)

Architetture degli Elaboratori 5

Stato 0 -> Stato 1: S = 1 R = 0 Stato 0 -> Stato 1: S = 1 R = 0

S (set) viene impostato ad uno, R lasciato a zero

1

0

Stato 0

6 Architetture degli Elaboratori

Stato 0 -> Stato 1: S = 1 R = 0 Stato 0 -> Stato 1: S = 1 R = 0

Il valore in output del NOR in alto commuta, dal valore uno passa a zero Il valore zero, output per NOR in alto finisce come input del NOR in basso

1 0

0

0

Stato 0 -> Stato 1: S = 1 R = 0 Stato 0 -> Stato 1: S = 1 R = 0

Anche il valore del NOR in basso commuta,

passando dal valore zero al valore uno

Il nuovo valore del NOR in basso finisce anche come input del NOR in alto Il NOR in alto non

commuta in presenza del nuovo input

1 0

0

1 1

0

Stato 0 -> Stato 1: S = 0 R = 0 Stato 0 -> Stato 1: S = 0 R = 0

Se ora il valore dell'input S torna a zero il circuito rimane stabile nel nuovo stato, che chiamiamo Stato 1 (l'output in Q è uno, in Q è zero)

Se S venisse riportato a uno lo stato rimarrebbe sempre lo stesso, è uno stato stabile

Stato 1

(3)

Architetture degli Elaboratori 9

Stato 1 -> Stato 0: S = 0 R = 1 Stato 1 -> Stato 0: S = 0 R = 1

Se vogliamo tornare nello Stato 0 (Q = 0 e Q = 1) è necessario impostare R a uno

1

10 Architetture degli Elaboratori

Stato 1 -> Stato 0: S = 0 R = 1 Stato 1 -> Stato 0: S = 0 R = 1

Il NOR in basso commuta, l'output ora vale zero, questo finisce anche come input del NOR in alto

1 0

0

Stato 1 -> Stato 0: S = 0 R = 1 Stato 1 -> Stato 0: S = 0 R = 1

L'output del NOR in alto vale ora uno, questo è anche uno degli input del NOR in basso che non cambia di output

1 0

0

1

1

Stato 1 -> Stato 0: S = 0 R = 0 Stato 1 -> Stato 0: S = 0 R = 0

Il circuito mantiene la sua impostazione anche se il valore di R torna ad essere zero, è uno stato stabile

Stato 0

(4)

Architetture degli Elaboratori 13

Lacth SR: automa di transizione Lacth SR: automa di transizione

S0 S1

S= 1, R= 0

14 Architetture degli Elaboratori

Lacth SR: automa di transizione Lacth SR: automa di transizione

S0 S1

S= 1, R= 0

S= 1, R= 0

Lacth SR: automa di transizione Lacth SR: automa di transizione

S0 S1

S= 1, R= 0

S= 1, R= 0

S= 0, R= 0

Lacth SR: automa di transizione Lacth SR: automa di transizione

S0 S1

S= 1, R= 0

S= 0, R= 1

S= 1, R= 0

S= 0, R= 0

(5)

Architetture degli Elaboratori 17

Lacth SR: automa di transizione Lacth SR: automa di transizione

S0 S1

S= 1, R= 0

S= 0, R= 1

S= 0, R= 1 S= 1, R= 0

S= 0, R= 0 S= 0, R= 0

18 Architetture degli Elaboratori

Lacth SR: automa di transizione Lacth SR: automa di transizione

S0 S1

S= 1, R= 0

S= 0, R= 1

S= 0, R= 1 S= 1, R= 0

S= 0, R= 0 S= 0, R= 0

Q= 0, Q= 0 S= 1

R= 1

S= 1 R= 1

Lacth SR: automa di transizione Lacth SR: automa di transizione

S0 S1

S= 1, R= 0

S= 0, R= 1

S= 0, R= 1 S= 1, R= 0

S= 0, R= 0 S= 0, R= 0

S= 0 R= 1 S= 1 R= 1

S= 1 R= 1 S= 1 R= 0

Lacth SR: automa di transizione Lacth SR: automa di transizione

S0 S1

S= 1, R= 0

S= 0, R= 1

S= 0, R= 1 S= 1, R= 0

S= 0, R= 0 S= 0, R= 0

S= 0 R= 1 S= 1 R= 1

S= 1 R= 1 S= 1 R= 0

?

(6)

Architetture degli Elaboratori 21

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)

TestLatc hSR

22 Architetture degli Elaboratori

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” TestLat chD

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

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)

(7)

Architetture degli Elaboratori 25

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

26 Architetture degli Elaboratori

Registri Registri

Segnali di clock, preset, clear raggruppati insieme per formare un registro Invertitore come

amplificatore del segnale di clock

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

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

(8)

Architetture degli Elaboratori 29

Organizzazione della memoria Organizzazione della memoria

decoder

multiplexer +

buffer non invertenti:

dispositivi tri-state output

enable

and-or flip-flop di tipo D

30 Architetture degli Elaboratori

Circuito multiplexer: decoder + Circuito multiplexer: decoder +

andor andor

Organizzazione della memoria Organizzazione della memoria

multiplexer decoder

decoder con abilitazione dell'output

flip-flop di tipo D

buffer non invertenti

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

(9)

Architetture degli Elaboratori 33

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

34 Architetture degli Elaboratori

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)

Riferimenti

Documenti correlati

✗ Un computer è una macchina programmabile, tuttavia esso non è direttamente utilizzabile da parte degli utenti poiché richiederebbe la conoscenza sull’organizzazione fisica

✗ Ogni CPU 486 (e successive) contengono un piccolo processore RISC che esegue le istruzioni piu` semplici (e piu` comuni) in un ciclo di data path, le istruzioni piu`.

 Architettura load/store: le unicheoperazioni con accesso diretto alla memoria sono LOAD e STORE, le istruzioni per spostare i dati fra i registri e la memoria, tutti gli

[r]

Dopo averne dato la definizione, dare un esempio di autovettore di una funzione definita sullo spazio R

•  NOTA: ciascuna somma vale 0 solo per quella data combinazione degli addendi (dei valori delle variabili in input)... Dalle forme canoniche ai circuiti

•  Set deve essere ridiretto verso la 1-bit ALU che fornirà in output il bit meno significativo del risultato!. Il blocco che controlla lʼoverflow lo fa sulla

  ogni passo da eseguire in un ciclo di clock (ciclo più corto rispetto alla CPU a ciclo singolo)!..   importante il bilanciamento della quantità di