architettura dei calcolatori 09 memorie

31
Dispense del corso di Architettura dei Calcolatori Architettura dei Calcolatori Le memorie prof. Rita Cucchiara (dal corso di Calcolatori Elettronici Fac di Ingegneria) (dal corso di Calcolatori Elettronici Fac. di Ingegneria)

Upload: majong-devjfu

Post on 05-Dec-2014

1.926 views

Category:

Business


4 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Architettura dei Calcolatori 09 Memorie

Dispense del corso diArchitettura dei CalcolatoriArchitettura dei Calcolatori

Le memorieprof. Rita Cucchiara

(dal corso di Calcolatori Elettronici – Fac di Ingegneria)(dal corso di Calcolatori Elettronici – Fac. di Ingegneria)

Page 2: Architettura dei Calcolatori 09 Memorie

Architettura dei calcolatori a.a. 2007/2008

Memorie

• Memoria : unita’ logica di memorizzazione di dati nel calcolatore.• I dispositivi di memoria ne sono le implementazioni fisiche

• Esistono diversi tipi di dispositivi di memoria che possono essere classificatei in base a:classificatei in base a:

1. Capacità: 2. Caratteristiche fisiche3. Modalità di Accesso4 O i i4. Organizzazione5. Prestazioni

MA[0:na-1]

MD[0:N-1]

Page 3: Architettura dei Calcolatori 09 Memorie

Architettura dei calcolatori a.a. 2007/2008

Capacita’

1. Capacita’:

– numero di parole, Mp ,– dimensione delle parole N bit

– Normalmente N=8 (byte-wide) o N=1 (bit-wide)Normalmente N 8 (byte wide) o N 1 (bit wide) – Spesso la dimensione delle parole e’ maggiore per la

presenza di bit di ridondanza ( bit di parita’)– Nelle memorie centrali Se NB numero di byte per parola

na=log(M/NB)

10000001 11001101 11110000 00001010 1 0 1 110000001 11001101 11110000 00001010 1 0 1 1

D[0:31]DP[0:3] Bit di paritàDP[0:3] p

Page 4: Architettura dei Calcolatori 09 Memorie

Architettura dei calcolatori a.a. 2007/2008

Memorie

2. Caratteristiche fisiche• Tipo :

– a semiconduttore, – a superficie magnetica, – ottica…

C• Consumo:

– Dipende dalla tecnologia (può comportare la necessità di sistemi di raffreddamento)

• Affidabilità:

– è di solito misurata dal tempo medio tra 2 guasti (Mean TimeBetween Failure -MTBF)Between Failure MTBF).

• Alterabilita’: ( o funzionalità)

– cancellabile/non-cancellabile• Durevolezza:

– volatile/non-volatile

Page 5: Architettura dei Calcolatori 09 Memorie

Architettura dei calcolatori a.a. 2007/2008

Durevolezza

• In base alla durevolezza o volatilità: • Memorie che perdono le informazioni se non alimentate elettricamente: lo

l i d ll i l i h ( l RAM)sono la maggior parte delle memorie elettroniche (come le RAM).

• Memorie che mantengono le informazioni anche se non alimentate elettricamente: (come l’hard disk). ( )

• I difetti della volatilità :• Consumo di energia per conservare le informazioni. g p

• La necessità di una fonte di energia rende meno portabile e maneggevole la memoria.. E perdita per malfunzionamento

• Nonostante i loro difetti, le memorie volatili sono molto utilizzate, in quanto hanno tempi di accesso molto inferiori a quelli di altre memoriequanto hanno tempi di accesso molto inferiori a quelli di altre memorie

Page 6: Architettura dei Calcolatori 09 Memorie

Architettura dei calcolatori a.a. 2007/2008

Accesso ai dati

3. Modalità di Accesso:• Sequenziale:

– per accedere ad un dato in una fissata posizione (locazione) della p p ( )memoria e’ necessario accedere a tutti i dati memorizzati in posizioni precedenti (es. i tape)

• Diretto: – e’ possibile avere un accesso direttamente alla locazione di memoria

voluta senza dovere accedere alle precedenti. In molti casi pero’ il tempo di accesso e’ dipendente dalla posizione e dalla locazione letta o scritta

d t t ( H d Di k i i il k ti (t di i )precedentemente (es. Hard Disk in cui il seek time (tempo di ricerca) dipende dalla posizione della testina)

• Casuale: – e’ un accesso diretto in cui il tempo di accesso e’ costante e non dipende

dall’indirizzo ne’ dalla precedente locazione acceduta. (RAM,ROM..)• Associativo: ( o per contenuto)

– per accedere ad un dato bisogna associare l’indirizzo al contenuto, ossia parte dell’indirizzo o una funzione dell’indirizzo (chiave hash) e’ contenuta nella memoria e bisogna accedere a tutte le locazioni presenti per verificare la presenza del datoverificare la presenza del dato.

Page 7: Architettura dei Calcolatori 09 Memorie

Architettura dei calcolatori a.a. 2007/2008

Accesso

• Per le memorie con accesso sequenziale e diretto ( tipiche epr dispositivi di I/O), l’accesso avviene tramite la interfaccia tra CPU e controller

• La CPU manda una configurazione ed una richiesta di accesso, ed un identificatore digpartenza (come un “indirizzo”)e la dimensione di blocco. Il dispositivo dopo un tempo iniziale manda i dati con un tempo proporzionale alla dimensione dei dati.

• Taccesso= Treq +Tstartup+NTdato

• Per le memorie con accesso casuale (tipiche memorie centrali) c’e’ una corrispondenza1-1- tra l’indirizzo mandato dalla CPU e locazione di memoria. Ogni indirizzo corrisponde ad

l i ( ll’i i i d l bl )una locazione ( o all’inizio del blocco).

• Taccesso= Taddr+Tdato Taato ritardo della memoria

Page 8: Architettura dei Calcolatori 09 Memorie

Architettura dei calcolatori a.a. 2007/2008

Accesso

• Memorie associative (cache) contengono meno locazioni del numero di indirizzi possibili.L’i di i ( t ) ’ t t ll i t TAG• L’indirizzo (o parte) e’ contenuto nella memoria stessa come TAG. L’accesso avviene tramite la richiesta di una corrispondenza o associazione tra indirizzo mandato dalla CPU e TAG. Se la corrispondenza c’e (HIT)= il dato e’ presente e puo’ essere letto o scritto. Se la corrispondenza non c’e’ (MISS) il dato non e’ presente.

MAR 000110

000110

Page 9: Architettura dei Calcolatori 09 Memorie

Architettura dei calcolatori a.a. 2007/2008

Organizzazione

4.Organizzazione delle memorie (centrali)in parallelo (per aumentare la dimensione di parola) e in serie per aumentare lo spazio di indirizzamento fisico coperto

Nell’architettura di un calcolatore si cerca di avere il parallelismo delle memorie palmeno uguale al parallelismo del bus dei dati della CPU. (bus di memoria e bus proprietario). Spesso dispositivi di parallelisimo minore

Mem

CPU32 32

16

16

Page 10: Architettura dei Calcolatori 09 Memorie

Architettura dei calcolatori a.a. 2007/2008

Dispositivi in serie e in paralleloCPUMEM

M

ALUMEM

Dispositivo di mem. M0n=32

nd=64 B data bus N=16

N=8

MDR

REG

U

Dispositivo di mem. M1

nd=64US

i

data bus

control bus

N 16

N=8

MARUC

inte

control bus

Ma (logM)=20

rf.na=32 address bus

• Dispositivi in parallelo per realizzare un banco di memorie di dimensione N maggiori della dimensione del singolo dispositivogg g p

• Dispositivi in serie per realizzare un mo dulocon piu’ locazioni di memoria di quanti presenti in un singolo dispositivo o banco

Page 11: Architettura dei Calcolatori 09 Memorie

Architettura dei calcolatori a.a. 2007/2008

Dispositivi in serie o in parallelo• Esempio: Avendo a disposizione dispositivi di memoria di capacità di 1Mbyte con

parallelismo 1 byte si vuole realizzare un modulo di memoria di 8 Byte con a parallelismo pari al bus della CPU a 32 bit. Come devono essere disposti i dispositivi in serie e i parallelo?in serie e i parallelo?

• Ogni banco da 32 bit deve essere composto da np=4 dispositivi in parallelo • La capacità del banco Cb= C x np Cp=1M Bx 4=4MB• La capacità del modulo Cm=8MB Il numero di banchi in serie ns=Cm/Cb ns=2• La capacità del modulo Cm=8MB. Il numero di banchi in serie ns=Cm/Cb ns=2• sono necessari 2 banchi in serie ognuno con 4 dispositivi in parallelo. Ogni parola

e’ di 4 byte. Il numero di parole M=Cm/np=2M• In questo caso se si volesse leggere o scrivere una parola per volta sarebbero• In questo caso se si volesse leggere o scrivere una parola per volta sarebbero

necessari na bit di indirizzo: il numero di bit di indirizzo necessari per indirizzare il modulo a livello di parola sono log2(Cm/np) na=21. Con 21 bit si indirizzano 2M parole.

BM1

D[0 31]

BM1

D[0:31]MA[0:20]

BM0

Page 12: Architettura dei Calcolatori 09 Memorie

Architettura dei calcolatori a.a. 2007/2008

Organizzazione non gerarchica

• Organizzazione non gerarchica se lo spazio di indirizzamento e’ coperto solo da memorie centrali ad accesso casuale con corrispondenza 1 1 tra indirizzi e locazioni disponibilicorrispondenza 1-1- tra indirizzi e locazioni disponibili.

CPU

M1 M2 M3M1 M2 M3

• Organizzazione gerarchica:• Il calcolatore contiene memorie di tipi, prestazioni e costi diversep p• Tende ad accedere alle memorie piu’ veloci. Il dato puo’ non essere

presente viene richiesto in una memoria di gerarchia inferiore.

Page 13: Architettura dei Calcolatori 09 Memorie

Architettura dei calcolatori a.a. 2007/2008

Organizzazione delle memorie

• Organizzazione gerarchica (tipica dei calcolatori general-purpose)• La CPU vede un solo tipo di memoria, la memoria centrale, indirizzata direttamente tramite un

identificatore (indirizzo)• L’hardware (MMU) e il sistema operativo gestiscono invece un insieme di memorie organizzate

gerarchicamente che contengono repliche dei dati in modo che la CPU trovi il dato utile nella memoria piu’ veloce possibile

• Per la località temporale conviene replicare i dati anche in memorie temporaneep p p• Per la località spaziale conviene replicare non singoli dati ma blocchi di dati adiacenti• La dimensione dei blocchi dipende dal costo del trasferimento, piu’ la memoria e’ lenta piu’

e’ conveniente accedervi raramente e quindi spostare blocchi di grandi dimensioni. g

memoria

CPUAddr.Data

Page 14: Architettura dei Calcolatori 09 Memorie

Architettura dei calcolatori a.a. 2007/2008

Memoria in un calcolatore general purpose

• La memoria interna alla CPU e’ costituita dai registri ed e’ caratterizzata da: alta velocità (comparabile con quella del processore) e limitate dimensioni (al più qualche migliaio di byte).

– Nei sistemi attuali un livello di memorie cache e’ stato inserito tra CPU e memorie centrali

• La memoria centrale o principale e’ caratterizzata da,dimensioni molto maggiori della memoria interna alla CPU (fino a qualche Gbyte) ma tempi di accesso più elevati. È accessibile in modo diretto tramite indirizziaccessibile in modo diretto tramite indirizzi.

• Memorie secondarie:In un calcolatore esistono diverse memorie secondarie (o memorie di massa) ad alta capacita’ bassi costi e non volatili

Page 15: Architettura dei Calcolatori 09 Memorie

Architettura dei calcolatori a.a. 2007/2008

Gerarchia di memorie

Cache L1

Cache L2CPU MMU

Memoria centralemicroprocessore Bus

controllerBus proprietario DMA Bus standard di I/O

Memoria di massa

Page 16: Architettura dei Calcolatori 09 Memorie

Architettura dei calcolatori a.a. 2007/2008

Memorie e cache

• Le memorie cache non sono visibili dal programmatore

Page 17: Architettura dei Calcolatori 09 Memorie

Architettura dei calcolatori a.a. 2007/2008

Memorie

4. Prestazioni• Tempo di accesso: (Tacc), il tempo necessario per una operazione di lettura (o

scrittura). Per le memorie ad accesso casuale e’ il tempo che intercorre dascrittura). Per le memorie ad accesso casuale e il tempo che intercorre da quando vengono forniti gli indirizzi a quando sono pronti i dati. Per le memorie sequenziali comprende anche il tempo per raggiungere i dati

• Tempo di ciclo e’ il tempo di accesso piu’ il tempo per terminare l’operazione prima di poter compiere un altro accesso. Di solito si calcola in lettura (Trc); e’ di solito piu’ lungo del tempo di accesso. Nelle memorie sincrone determina la

i f d l b i ll tmassima frequenza del bus a cui possono essere collegate

• Velocita’ di trasferimento (bit rate); per le memorie ad accesso casuale e’ il reciproco del tempo di ciclo (thro ghp t) considerando il n mero di bit trasferitireciproco del tempo di ciclo, (throughput) considerando il numero di bit trasferiti

• In generale T= ts+ N/br• Bisogna considerare un tempo di startup ts (per l’accesso al bus, la traduzione

degli indirizzi, l’accesso iniziale..), piu’ un tempo proporzionale al numero di bit trasferiti N rispetto alla velocita’in bps br

Di solito sono dati che vengono imposti dalla CPU a cui la memoria o si adegua oDi solito sono dati che vengono imposti dalla CPU a cui la memoria o si adegua o introduce ritardi.

Page 18: Architettura dei Calcolatori 09 Memorie

Architettura dei calcolatori a.a. 2007/2008

Blocchi di locazione di memoria

Gerarchia di memoria: più livelli• Blocco: unità di informazione minima scambiata fra livelli (ex: 32 bytes)• Hit: un accesso alla memoria che trova l'informazione cercata nel livello superioreHit: un accesso alla memoria che trova l informazione cercata nel livello superiore• Hit Rate: frequenza di accessi trovati nel livello superiore (h)• Miss Rate: (1 - h)• Hit Time: tempo di accesso al livello superiore ThHit Time: tempo di accesso al livello superiore Th• Miss Penalty: tempo per rimpiazzare un blocco nel livello superiore più il tempo per fornirlo

alla CPU. Il "miss penalty“, Tmp, può anche essere scomposto nei tempi per reperire il primo dato di un blocco più il tempo per trasferire gli altri. Comprende certamente un Th e gun “overhead” nel caso di miss (Tmiss)

• Tacc = h Th + (1-h)Tmp

• Tacc = Th + (1-h)Tmiss

Il Tmiss comprende il tempo per reperire il blocco nella gerarchia di livello piu’ basso piu’ (eventualmente trascurabile) il tempo per rimpiazzare i dati dal livello alto al livello piu’ basso (se il livello piu’ alto deve essere “svuotato”)

Page 19: Architettura dei Calcolatori 09 Memorie

Architettura dei calcolatori a.a. 2007/2008

Esempio

Pentium II a 333Mhz

64 bitCache int 16KB dati e 16KB

clock di CPU (3ns) e 66 Mhz clock di busSe fosse possibile 1

64 bitCache int 16KB dati e 16KB istruzioni

istr/clock trasferimento di 66M dati da 8 byte banda di 528MB/s

Cache est SRAM a 6ns di 512KB

Controllore di cache a 333MHZ con 1 stato di wait 264MB/s

Mem centrale 128 Mbyte DRAM a 60ns

Controllore di mem a 66Mhz b t 5 2 2 2 180MB/burst 5-2-2-2 180MB/s

ControlloreControllorePCIDisco rigido 8GB a 10MB/s

Disco CD ROM 650MB24x Controllore SCSIdi mem di massa

Disco CD ROM 650MB24x 3.6MB/s

Page 20: Architettura dei Calcolatori 09 Memorie

Architettura dei calcolatori a.a. 2007/2008

Gerarchia: esempio

• Esercizio:• Supponiamo un sistema a due livelli in cui per accedere al primo livello (memoria centrale)

il tempo di accesso sia 0 1 microsec (100 ns) per ogni dato e per accedere al secondo (adil tempo di accesso sia 0.1 microsec (100 ns) per ogni dato e per accedere al secondo (ad esempio HD) sia di 0.1msec .Quando si accede al secondo livello il dato deve essere copiato nel primo. Ipotizziamo che le probabilita’ di trovare il dato al primo livello siano del 95% (h). Trascuriamo il tempo necessario al processore per capire dove si trova il dato

ll’h d di k( bil i l di ) il di f i dinell’hard disk(trascurabile rispetto al tempo di accesso) e il tempo di trasferimento di un intero blocco

• Quanto e’ il tempo di accesso medio?

• In microsec • Tacc= 0.95 0.1 + 0.05 (0.1 +100)= 0.095+5.5= 5.596 microsec

• Basta un 5% di penalizzazione di miss che tutto l’accesso medio e’ fortemente rallentato, nel caso specifico di ben 5 volte Circa 103 differenza di dimensioni (es. 10K – 10M) Circa 103 differenza di tempo di accesso (es 10-7s 10-4s)Circa 103 differenza di tempo di accesso (es. 10 7s – 10 4s)

• Approssimatamente, lo speedown tra il sistema ideale(solo mem centrale) e quello reale epr quel che riguarda il tempo di accesso - Sp=0 1/5 596 0 0178 ( 55 96 volte piu’epr quel che riguarda il tempo di accesso Sp 0.1/5.596 0.0178 ( 55.96 volte piu lenta)

Page 21: Architettura dei Calcolatori 09 Memorie

Architettura dei calcolatori a.a. 2007/2008

Memoria centrale

• La memoria centrale e’ un blocco logico ad accesso diretto e casuale tramite indirizzi. Fornisce dati o legge dati in base a segnali di controllo

– di lettura, RD# o OE# ,– Scrittura Wr#– ed abilitazione CS# o CE# storicamente in logica negata

• Tecnologicamente puo’ essere realizzata in molti modi differenti • RAM

– SRAM– DRAM

• ROM– ROM– PROM– EPROM– EEPROM

FLASHMA[0:na-1]

RD#WR#CS#– FLASH

MD[0:N-1]CS#

Page 22: Architettura dei Calcolatori 09 Memorie

Architettura dei calcolatori a.a. 2007/2008

Memorie RAM-ROM

• RAM memorie random access memory; memorie volatili a lettura e scrittura in cui il tempo di accesso e’ costante per ogni locazione di memoria indirizzata.

• Modalita’ di accesso: casuale

• SRAM: memorie RAM statiche: sono memorie molto veloci, realizzate in diverse tecnologie che permettono al dato di rimanere staticamente memorizzato fino a che il dispositivo e’ alimentato. Sono composte da

– tanti FF quanti i bit da memorizzare– logica combinatoria di selezione del FF ( o dei FF se la parola ha parallelismo maggiore di 1 bit) a

partire dagli indirizzipartire dagli indirizzi– logica combinatoria di selezione di lettura e scrittura.

• Sono a piu’ bassa capacità a parità di prezzo a piu’ alti consumi come dissipazione di potenza e piu’ veloci delle DRAM. Sono usate nei registri interni, nelle memorie cache o in p p g ,applicazioni embedded.

• DRAM memorie RAM Dinamiche non usano FF ma il bit e’ memorizzato in un condensatore che può essere caricato o scaricato; la carica di circa 50pF pero’ necessita di essere rinfrescata (refresh) ogni decina di msec e quindi e’ necessaria una logica aggiuntiva di refresh; più lente ma a più alta capacita’ delle RAM statiche.

Page 23: Architettura dei Calcolatori 09 Memorie

Architettura dei calcolatori a.a. 2007/2008

Memorie ROM

• ROM Memorie Read only memory memorie di sola lettura; non hanno la logica per la scrittura, ma la scrittura avviene con altra tecnologia

• PROM programmabili una volta impiegando un pin speciale (ad elevato voltaggio)p g p g p p ( gg )• EPROM cancellabili in toto con luce ultravioletta• EEPROM sono cancellabili elettricamente senza doverle estrarre dalla scheda, più lente e

con meno capacita’• FLASH leggibili e scrivibili a blocchi senza estrarle dal circuito con alta capacita’ ma

cancellabili un n. limitato di volte

Page 24: Architettura dei Calcolatori 09 Memorie

Architettura dei calcolatori a.a. 2007/2008

ROMROM i l l tt L ROM i t tti i i i i i d ti d• ROM memorie a sola lettura. Le ROM servono in tutti quei casi in cui i dati devono essere memorizzati permanentemente o comunque quando c'e' un netto squilibro fra le operazioni di accesso "read-write" in favore del "read". Le ROM possono quindi classificarsi in:

• Masked ROM ROM in cui le celle di memoria sono state scritte in fase di integrazione (nella maschera usata per creare l'integrato); le MROM non possono essere cancellate ma garantiscono bassi costi di produzione per grandi quantità. Le singole celle della ROM sono come collegamenti elettrici presenti (0) o interrotti (1). Quando si vuole leggere il

t t di ll di i li i i i t li ll l tt i lt ilcontenuto di una cella di memoria gli viene inviato un livello elettrico alto, se il collegamento è presente, il segnale passa (1) altrimenti la cella vale 0.

• Programmable ROM (PROM) e’ ROM "vuota", ossia non ancora programmata. La ROM nasce come un insieme di bit a 1, per scrivere uno 0 in uno specifico bit si esegue una p p gprocedura di scrittura una tantum che bruciando un microscopico fusibile interno interrompe, per quel bit, la conduzione di corrente che viene interpretata in lettura come uno 0.

• Erasable Programmable ROM (EPROM) PROM ma realizza l'interruzione di unaErasable Programmable ROM (EPROM) PROM ma realizza l interruzione di una connessione elettrica nella cella tramite un fenomeno di intrappolamento delle cariche con segnali di programmazione di una certa potenza. La memoria può quindi essere scritta con questo procedimento ma può anche essere "resettata" ossia totalmente cancellata esponendo il core del chip ad una radiazione ultravioletta (tramite la tipica finestrella t t d ll EPROM) h f i ll i h i t l t l' i itrasparente delle EPROM) che fornisce alle cariche intrappolate l'energia necessaria per liberarsi con conseguente azzeramento delle celle di memoria.

• Electrically Erasable Programmable ROM (EEPROM) questo tipo di ROM e’ simile all'EPROM ma può essere cancellato elettricamentee’ quindi molto più pratico p q p pdell'EPROM, inoltre si può operare la cancellazione su blocchi limitati oltre che sull'intera memoria. E' l'antesignano della Flash RAM, che ha granularità inferiore e tecnologie superiori, ed e’ stato utilizzato a lungo nei BIOS

Page 25: Architettura dei Calcolatori 09 Memorie

Architettura dei calcolatori a.a. 2007/2008

SRAM

• Esempio di RAM statica 1K x8 bit

• in CS (attivo basso) seleziona il dispositivo e WE (write enable)• in CS (attivo basso) seleziona il dispositivo e WE (write enable) indica se si ha una lettura o scrittura

CS#WE#

A0A1 WE#

OE#

IO0IO1

A1A2A3A4A5 IO1

IO2IO3IO4IO5

A5A6A7A8A9 IO5

IO6IO7

A9

Page 26: Architettura dei Calcolatori 09 Memorie

Architettura dei calcolatori a.a. 2007/2008

RAM dinamiche

• ad esempio una DRAM a 1Mbit usa solo 10 bit di indirizzo una volta per le righe e una per le colonne

• E’ piu’ lenta: Il tempo di accesso deve tener conto sia del segnale di accesso alle righe che p p g galle colonne RAS (row address select) che di CAS(colum address select)

• Occorre poi considerare il tempo del rinfresco ad esempio ogni 16ms devono essere lette e scritte tutte le 1024 righe E servono 1024 cicli di RAS

Decoderdi

1024 x 1024 celle di

riga

Address

Latch, Multiplexers/DemultiplexersRL

comb

A9A0

RAS#

di riga Address di colonna

WE#

RAS#CAS#

DINDOUT

Page 27: Architettura dei Calcolatori 09 Memorie

Architettura dei calcolatori a.a. 2007/2008

RAM dinamiche

• DRAM da 16Mb 4M locazioni per parole di 4 bit

Page 28: Architettura dei Calcolatori 09 Memorie

Architettura dei calcolatori a.a. 2007/2008

Dram controllerI t f i t il l RAM di i i tt• Interfaccia tra il processore e la RAM dinamica avviene attraverso un DRAM controller che ha il compito di essere un bridge tra dati, indirizzi e segnali di controllo

• Es. Intel 820 chipset interfaccia con DRAM, con AGP con PCI• ftp://download.intel.com/design/chipsets/datashts/29063002.pdf

Page 29: Architettura dei Calcolatori 09 Memorie

Architettura dei calcolatori a.a. 2007/2008

DRAM SINCRONE

• RAM sincrone:• Hanno un ritardo (Tacc) sincrono con un clock dato

SDRAM Syncronous Dynamic RAM• SDRAM Syncronous Dynamic RAM– Sono generalmente piu’ lente delle corrispondenti memorie asincrone– hanno un ritardo predicibile ( n Tck) in cui la CPU puo’ attendere (con segnale di rdy#)

o far partire un’altra attivitào far partire un altra attività

– CPU manda indirizzoD it d T k l i ’ t il i i ’ l– Dopo un ritardo n Tck la memoria e’ pronta a rilasciare una o piu’ parole

– Se la memoria puo’ rilasciare una sequenza di parole puo’ essere usata in trasferimenti a burst

• Le memorie devono adeguarsi ai tempi richiesti dalla CPU

• La CPU definisce quanti cicli di clock sono necessari in un ciclo di bus per– Trasferimento singolo (1 sola parola larga al massimo come il data bus)– Trasferimento a BURST sequenze di parole con indirizzi consecutivi

Page 30: Architettura dei Calcolatori 09 Memorie

Architettura dei calcolatori a.a. 2007/2008

DRAM

• SDRAM ECC (Error Correcting Code), sicurezza e stabilità:Le SDRAM ECC (con Codice di Correzione di Errore) sono un particolare tipo di SDRAM che permette il controllo dei dati ed un'eventuale correzione grazie ad unSDRAM che permette il controllo dei dati ed un eventuale correzione grazie ad un bit aggiuntivo agli otto tradizionali, il nono bit, detto anche bit di parità.

Questa funzione di controllo e correzione, permette a queste RAM di avere una , p qmaggiore stabilità e sicurezza rispetto alle RAM "tradizionali", infatti queste memorie sono utilizzate dalla maggiorparte dei server, sono un po' più lente delle memorie "tradizionali", esse hanno infatti tempi d'accesso maggiori rispetto a quest'ultime.

Page 31: Architettura dei Calcolatori 09 Memorie

Architettura dei calcolatori a.a. 2007/2008

Esempi

• Velocità della memoria• Velocità operative dei Moduli DIMM SDRAM a 168 pin

PC66: opera alla frequenza di clock di 66 MHz– PC66: opera alla frequenza di clock di 66 MHz– PC100: opera alla frequenza di clock di 100 Mhz– PC133: opera alla frequenza di clock di 133 MHz

V l ità ti d i M d li DIMM DDRRAM 184 i• Velocità operative dei Moduli DIMM DDRRAM a 184 pin– PC1600 - DDR200: opera alla frequenza di clock di 200 MHz– PC2100 - DDR266: opera alla frequenza di clock di 266 Mhz– PC2700 - DDR333: opera alla frequenza di clock di 333 MHz– PC3200 - DDR400: opera alla frequenza di clock di 400 MHz

• Velocità operative dei Moduli RIMM RDRAM– PC600 - RDRAM: opera alla frequenza di clock di 300 MHz– PC700 - Concurrent RDRAM - CRDRAM: opera alla frequenza di clock di 356 MHz– PC800 - Direct RDRAM - DRDRAM: opera alla frequenza di clock di 400 Mhz