DDR SDRAM

Da Wikipedia, l'enciclopedia libera.
(Reindirizzamento da DDR1)
Modulo di memoria DDR SDRAM da 1 GB PC2700

La DDR SDRAM, acronimo di Double Data Rate Synchronous Dynamic Random Access Memory (in italiano "memoria dinamica ad accesso casuale sincrona a doppia velocità"), è un tipo di memoria RAM su circuiti integrati usati nei computer.

Caratteristiche[modifica | modifica sorgente]

Pedinatura delle diverse memorie DDR a confronto

Ha una larghezza di banda maggiore rispetto alla SDRAM poiché trasmette i dati sia sul fronte di salita che sul fronte di discesa del ciclo di clock. Questa tecnica consente di raddoppiare la velocità di trasferimento senza aumentare la frequenza del bus di memoria. Quindi un sistema DDR ha un clock effettivo doppio rispetto a quello di uno SDRAM.

Poiché i dati sono trasferiti 8 byte per volta (il bus è sempre a 64 bit) una RAM DDR dà una velocità di trasferimento V_T di:

V_T = B_M · 2 · 8

dove B_M è la velocità di clock del bus di memoria, 2 è il numero di invii per ciclo di clock, 8 è il numero di byte trasferiti ad ogni invio. Quindi con una frequenza di clock di 100 MHz, una DDR SDRAM dà una velocità massima di trasferimento di 1600 MB/s.

Nella realtà la situazione è più complessa, poiché la velocità di trasferimento è notevolmente influenzata dai fenomeni di latenza, che si verificano durante le operazioni di lettura/scrittura e che dipendono strettamente dal tipo e dalla qualità del chip, nonché dalla frequenza di funzionamento. Per quantificare tali fenomeni, ad ogni banco di memoria vengono associati dei tempi caratteristici detti timing, misurati in unità di cicli di clock: a valori più bassi corrispondono prestazioni migliori, a parità di frequenza.

I timing più importanti sono:

  • CAS Latency Time (tCl) : durante un'operazione di lettura, rappresenta l'intervallo di tempo tra l'istante in cui il comando di lettura giunge ad una certa cella di memoria e quello in cui inizia il trasferimento dei dati; la denominazione è dovuta al fatto che, per individuare la cella di memoria, l'indirizzo di colonna viene selezionato sempre per ultimo (tramite il segnale CAS), successivamente a quello di riga. Per le memorie DDR-400 (si veda la classificazione successiva) tCl è generalmente compreso tra 2 e 3 cicli di clock, che corrispondono a 12-17 nsec.
  • RAS to CAS Delay Time (tRCD): costituisce l'intervallo di tempo che passa tra l'attivazione della riga e della colonna che identificano la cella di memoria in cui si vuole leggere o scrivere il dato, cioè il ritardo del segnale CAS rispetto al segnale RAS; è di norma compreso tra 3 e 4 cicli di clock.
  • RAS Precharge Time (tRP): La pre-carica RAS è il ritardo tra il momento in cui un comando di selezione riga viene dato e il prossimo comando.
  • Active-to-Precharge Delay (tRAS) - questo tipo di latenza riguarda in realtà i diversi passi in cui può essere suddiviso il processo di accesso alla memoria, ed il suo numero indica il numero minimo di cicli che intercorrono fra il comando "active" e "precharge".
  • Row Cycle Time (tRC): è l'intervallo di tempo che passa tra l'attivazione consecutiva di 2 righe di memoria dello stesso banco; in genere è compreso tra 6 e 9 cicli di clock.

A questi parametri, che sono impostati dal costruttore e memorizzati nel SPD, se ne aggiungono altri, che riguardano le latenze dipendenti dalle operazioni di interfaccia tra le memorie ed il resto del sistema; tra questi ultimi citiamo:

  • Command Rate : è l'intervallo di tempo che intercorre tra 2 comandi consecutivi impartiti al chip di memoria; tipicamente esso può valere 1 o 2 cicli di clock. Viene anche definito come il tempo che deve trascorrere fra il segnale di selezione del chip e l’inizio dei comandi di selezione (riga e colonna)/lettura/scrittura.
  • Dram Idle Timer : costituisce il tempo che la memoria deve attendere prima di iniziare ad eseguire il comando impartito.

Il JEDEC ha stabilito gli standard per le DDR SDRAM, divise in due parti: le prime specifiche sono per i chip di memoria e le seconde sono per i banchi di memoria. Anche le dimensioni dei moduli di memoria DDR SDRAM sono standardizzati dal JEDEC.

Standard JEDEC[modifica | modifica sorgente]

Standard Modulo Frequenza di clock (MHz) Frequenza bus I/O (MHz) Velocità di trasferimento (MT/s) Banda massima per canale (GB/s)
DDR-200 PC-1600 200 200 200 1,600
DDR-266 PC-2100 266 266 266 2,133
DDR-333 PC-2700 333 333 333 2,667
DDR-400 PC-3200 400 400 400 3,200

Nota bene: Tutte le specifiche intermedie o superiori a quelle qui elencate non sono state standardizzate dal JEDEC, ma sono ottimizzazioni dei produttori che utilizzano chip standard con tensioni superiori.

Specifiche non conformi allo standard JEDEC[modifica | modifica sorgente]

Standard Modulo Frequenza di clock (MHz) Frequenza bus I/O (MHz) Velocità di trasferimento (MT/s) Banda massima per canale (GB/s)
DDR-300 PC-2400 300 300 300 2,400
DDR-433 PC-3500 433 433 433 3,467
DDR-466 PC-3700 466 466 466 3,733
DDR-500 PC-4000 500 500 500 4,000
DDR-550 PC-4400 550 550 550 4,400
DDR-600 PC-4800 600 600 600 4,800

Non c'è alcuna differenza di architettura tra DDR SDRAM per diverse velocità di clock, ad esempio le PC-1600 (progettate per una frequenza di 100 MHz) e le PC2100 (progettate per funzionare a 133 MHz). La sigla indica semplicemente la velocità a cui quel chip è garantito come funzionante. Quindi una DDR SDRAM può essere fatta funzionare a velocità inferiori rispetto a quella per cui è stata progettata (underclocking) o a velocità superiori (overclocking). Da notare che l'overclocking dovrebbe essere fatto solo con memorie di alta qualità e con cognizione di causa.

I DIMM di DDR SDRAM hanno 184 piedini (contro i 168 della SDRAM), e possono essere riconosciuti dai DIMM SDRAM dal numero di tacche (le DDR SDRAM ne hanno una, gli SDRAM due oppure tre). Le memorie DDR operano con una tensione di 2,5V, contro i 3,3V per le SDRAM. Questo può ridurre notevolmente i consumi.

Alcuni nuovi chipset utilizzano queste memorie in configurazioni a doppio canale (Dual channel) o quadruplo canale, che raddoppiano o quadruplicano la larghezza di banda teorica. Nelle configurazioni a due canali si raccomanda di usare una coppia di banchi di memoria dello stesso tipo per ottimizzare le prestazioni. I moduli in coppia devono avere stessa dimensione, velocità e tempi di latenza per permettere al chipset di effettuare gli accessi con la massima efficienza.

Storia[modifica | modifica sorgente]

Tra gli inizi del 1996 e giugno del 2000 la JEDEC sviluppò le specifiche delle DDR SDRAM (JESD79)[1], al fine di offrire un miglioramento significativo per i sistemi che richiedevano maggiore larghezza di banda. Nel 2003 vennero completate le specifiche per le memorie DDR2 SDRAM (JESD79-2), le quali offrivano una larghezza di banda fino a 800Mb/s, il doppio delle DDR SDRAM. Durante lo sviluppo degli standard DDR e DDR2 SDRAM, gli ingegneri rivolsero maggiore attenzione verso la gestione dei timing complessivi del sistema, affrontando così le aree critiche che ne limitavano le prestazioni. Venne così migliorata la larghezza di banda, evitando però frequenze di clock più elevate ma sfruttando al meglio il funzionamento del ciclo di clock.

In seguito lo standard DDR è stato sostituito con gli standard DDR-II e DDR-III, che adottano alcune modifiche per permettere frequenze di clock del buffer I/O superiori, ma operano con lo stesso principio Double Data Rate e con chip di memoria dalle frequenze di funzionamento invariate. Per il 2012 è inoltre previsto il debutto dei primi esemplari dello standard DDR4 [2].

Voci correlate[modifica | modifica sorgente]

Note[modifica | modifica sorgente]

  1. ^ The Love/Hate Relationship with DDR SDRAM Controllers
  2. ^ Il futuro delle memorie di sistema: lo standard DDR4

Collegamenti esterni[modifica | modifica sorgente]

informatica Portale Informatica: accedi alle voci di Wikipedia che trattano di informatica