Memorie DDR400 low latency

Memorie DDR400 low latency

Dopo una continua rincorsa a frequenze di clock sempre più elevate, i produttori di memoria sono ritornati a puntare su latenze di accesso ridotte. E' il caso di Corsair e GeIL, che propongono soluzioni leggermente differenti per i propri modelli DDR400

di pubblicato il nel canale Memorie
CorsairGeIL
 

Timings memorie e impostazioni da bios

Per meglio analizzare i risultati ottenuti dai moduli memoria in prova in queste pagine, è indispensabile prima fare alcune premesse teoriche su quelli che sono gli elementi chiave nell'analisi delle memorie DDR. Frequenza di lavoro e latenze di accesso sono i parametri da tenere in massima considerazione quando si analizzano le memorie, in quanto da essi ne derivano le prestazioni velocistiche complessive.

Esistono varie tipologie di memorie DDR, operanti a differenti frequenze di clock. La tabella seguente ne riporta le principali caratteristiche tecniche:

Memoria

Bandwidth
max teorica
single DDR

Bandwidth
max teorica
dual DDR

Freq. di clock
nominale

Freq. di clock
effettiva

DDR266 2,1 GB/sec 4,2 GB/sec 133 MHz 266 MHz
DDR333 2,7 GB/sec 5,4 GB/sec 166 MHz 333 MHz
DDR400 3,2 GB/sec 6,4 GB/sec 200 MHz 400 MHz
DDR433 3,4 GB/sec 6,8 GB/sec 218 MHz 433 MHz
DDR466 3,7 GB/sec 7,4 GB/sec 233 MHz 466 MHz
DDR500 4 GB/sec 8 GB/sec 250 MHz 500 MHz
DDR550 4,4 GB/sec 8,8 GB/sec 275 MHz 550 MHz

Al crescere della frequenza di lavoro della memoria, la bandwidth massima teorica ottenibile aumenta di conseguenza raggiungendo valori molto elevati. Utilizzando una scheda madre con supporto a configurazioni memoria Dual Channel, sia per processori Intel che AMD, la bandwidth massima teorica viene raddoppiata a patto ovviamente di utilizzare contemporaneamente due moduli memoria DDR. Nello schema sopra riportato bisogna considerare che la massima frequenza di lavoro ufficialmente supportata dal JEDEC per moduli DDR è quella di 200 MHz (400 MHz effettivi), corrispondente a moduli DDR400; gli standard da DDR433 in poi sono stati creati dai produttori di moduli memoria, ma mai direttamente certificati dal JEDEC.

La frequenza di lavoro della memoria DDR potrà al limite essere identica a quella di bus del sistema, operando in modalità sincrona quindi con divisore impostato da bios pari a 1:1. In alcuni casi produttori di schede madri hanno implementato, da bios, rapporti di lavoro superiori a quelli 1:1 ma spesso si dimostrano o non funzionanti, oppure instabili. L'eccezione è rappresentata dalle schede madri Socket A basate su chipset nForce 2, anche se con queste tipologie di processori forzare la frequenza di lavoro della memoria fuori da valori sincroni è spesso controproducente in termini prestazionali.

Al crescere della frequenza di clock della memoria, quindi, ne consegue un aumento della bandwidth massima teorica disponibile. Questa è massima teorica, in quanto all'atto pratico non viene mai raggiunto appieno. Il collo di bottiglia è rappresentato dal bus di sistema, che se capace di bandwidth massima teorica inferiore limita di fatto la bandwidth massima della memoria.

La tabella seguente riporta in dettaglio le bandwidth massime teoriche delle varie piattaforme Pentium 4 a seconda della frequenza di bus e del tipo di memoria utilizzato:

Controller
memoria

Bandwidth
max teorica

Freq. bus
sistema

Bandwidth
max teorica

Bandwidth massima
teorica utilizzata

DDR266 2,1 GB/sec 400 MHz 3,2 GB/sec 2,1 GB/sec
DDR333 2,7 GB/sec 533 MHz 4,2 GB/sec 2,7 GB/sec
DDR400 3,2 GB/sec 800 MHz 6,4 GB/sec 3,2 GB/sec
DDR466 3,75 GB/sec 933 MHz 7,5 GB/sec 3,75 GB/sec
DDR500 4 GB/sec 1000 MHz 8 GB/sec 4 GB/sec
Dual DDR266 4,2 GB/sec 400 MHz 3,2 GB/sec 3,2 GB/sec
Dual DDR333 5,4 GB/sec 533 MHz 4,2 GB/sec 4,2 GB/sec
Dual DDR400 6,4 GB/sec 800 MHz 6,4 GB/sec 6,4 GB/sec
Dual DDR466 7,5 GB/sec 933 MHz 7,5 GB/sec 6,4 GB/sec
Dual DDR500 8 GB/sec 1000 MHz 8 GB/sec 8 GB/sec

Per sfruttare appieno la bandwidth delle memorie oltre DDR400 è necessario forzare il funzionamento sincrono della memoria con il bus di sistema, aumentando inoltre la frequenza di bus a valore superiore a quello di default. Ma la bandwidth da sola non è unica responsabile delle prestazioni velocistiche: a questa bisogna aggiungere la latenza di accesso dei moduli memoria, che sarà tanto più elevata quanto maggiore è la frequenza di lavoro così da massimizzare la stabilità operativa. Per questo motivo i moduli DDR400 più performanti hanno latenza CAS pari a 2, mentre quelli DDR466 e DDR500 vengono generalmente impostati con latenza CAS pari a 3 e in alcuni casi anche pari a 2,5.

Non è solo la frequenza di lavoro, e di conseguenza il tempo d'accesso, a determinare le prestazioni velocistiche di un modulo memoria; esistono alcuni parametri di funzionamento, tipicamente raccolti sotto il nome di timings, che influenzano le prestazioni velocistiche in modo marcato. E' possibile intervenire manualmente a variare i timings di accesso, così da ottenere prestazioni velocistiche superiori; i bios delle schede madri mettono a disposizione settaggi di accesso differenti a seconda sia del modello di chipset, sia delle scelte del produttore della scheda madre. Tra i vari timings sono tre le sigle che più di frequente vengono ricordate:

  • CAS (Column Address Strobe) Latency: indica il numero di cicli di clock richiesti dalla memoria per processare una richiesta. A valori inferiori della latenza corrispondono prestazioni velocistiche superiori. Ovviamente, una latenza pari a 3 implica prestazioni velocistiche differenti se la memoria opera alla frequenza di 100 MHz o 133 MHz oppure ancora a quella di 166 MHz.
  • RAS to CAS Delay: questo valore indica quanti cicli di clock sono richiesti dalla memoria per accedere ai dati contenuti nelle righe (row) della memoria. I dati contenuti nei moduli memoria vengono disposti e letti in righe e colonne, partendo sempre prima dalle righe e in seguito passando alle colonne.
  • RAS Precharge Time: questo valore indica quanti cicli di clock sono necessari per precaricare i condensatori della memoria; questa operazione si rende indispensabile affinché i dati contenuti nei moduli memoria possano essere letti oppure scritti. Ovviamente, anche in questo caso a valori inferiori corrispondono prestazioni superiori.

La possibilità di selezionare valori inferiori per questi parametri ha, ovviamente, molto a che vedere con il tipo di modulo memoria utilizzato, nonché con la combinazione scheda madre e frequenza di bus scelta. Detto in altro modo, non sempre i timings di accesso più spinti per alcuni moduli memoria possono essere selezionati, in quanto il funzionamento stabile potrebbe non essere assicurato. Per questo motivo tutti i produttori di memorie ad elevate prestazioni ne certificano il funzionamento testandole con particolari combinazioni di schede madri.

 
^