Indice Memorie
  1. Rambus e DDR: quali sono le differenze?
  2. Quali parametri, oltre alla frequenza, influenzano le prestazioni di un modulo memoria?
  3. Le sigle delle memorie DDR, da PC2100 a DDR433
  4. Come faccio a capire la densità di memorizzazione dei chip montati su un modulo memoria?
  5. Perché installando un modulo memoria questo mi viene visto per solo metà della sua capacità?
  6. Byte, Bit, Kbyte, Mbyte: che cosa indicano queste misure?
  7. Memorie PC100 e PC133: quali sono le differenze?
  8. Uso una cpu con bus a 66 Mhz; posso utilizzare memorie PC100 e/o PC133?
  9. Utilizzo differenti moduli memoria (PC100 e PC133) sulla stessa motherboard: è un problema?
  10. PC66: cosa indica questa sigla?
  11. E' vero che alcuni moduli memoria reggono frequenze di funzionamento più elevate di quelle massime dichiarate dal produttore?
  12. Memorie Rambus: che cosa sono?
  13. PC600, PC700 e PC800: ma le memorie non arrivano al massimo a PC133?
  14. Da cosa dipende la frequenza di lavoro di un modulo memoria
  15. Come si può ricavare la velocità di un modulo memoria
  16. Cosa vuol dire memoria DDR?

 

Rambus e DDR: quali sono le differenze? 

L'evoluzione delle memorie DDR è stata molto più rapida di quella delle memorie Rambus. Queste ultime, infatti, sono state introdotte originariamente negli standard PC600, PC700 e PC800 nel corso dell'anno 2000 ma all'atto pratico è stato solo quello PC800 ad aver conosciuto una discreta diffusione sul mercato. Nel mese di Maggio 2002, in concomitanza con il passaggio alla frequenza di bus Quad Pumped di 533 Mhz, Rambus ha introdotto la memoria PC1066, con frequenza di clock di 533 Mhz e bandwidth massima teorica passata dai 3,2 Gbytes al secondo della memoria PC800 a 4,2 Gbytes al secondo.

L'evoluzione delle memorie DDR ha visto il passaggio dallo standard DDR266 o PC2100 verso quello DDR333 o PC2700, l'attuale riferimento in termini prestazionali tra le memorie DDR. Negli ultimi mesi sono stati presentati anche numerosi moduli memoria DDR400, sigla che indica moduli memoria DDR testati per operare alla frequenza di clock di 400 Mhz; al momento il JEDEC non ha ancora ufficializzato uno standard DDR400, pertanto si può più correttamente parlare di moduli memoria DDR333 overcloccati per operare stabilmente a 400 Mhz di clock.

La tabella sottostante riporta informazioni dettagliate su tutti i tipi di memorie DDR che sono state immesse in commercio


Modulo

frequenza
di lavoro
bandwidth
massima teorica
DDR200 - PC1600 100 Mhz 1,6 Gbytes/sec
DDR266 - PC2100 133 Mhz 2,1 Gbytes/sec
DDR333 - PC2700 166 Mhz 2,7 Gbytes/sec
DDR400 - PC3200 200 Mhz 3,2 Gbytes/sec
Rambus PC800 400 Mhz 3,2 Gbytes/sec
Rambus PC1066 533 Mhz 4,2 Gbytes/sec


E' bene non limitarsi a confrontare le prestazioni dei moduli memoria osservandone la sola bandwidth massima teorica; la memoria Rambus, infatti, per via della sua particolare architettura ha bandwidth molto elevata in senso assoluto ma questo valore è bilanciato da una latenza d'accesso ben superiore a quella della memoria DDR. Questo spiega come mai le memorie Rambus siano superiori in alcuni ambiti applicativi e soffrano invece di un certo gap prestazionale in altri.



memoria DDR400


memoria Rambus PC1066 

Quali parametri, oltre alla frequenza, influenzano le prestazioni di un modulo memoria? 

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, partndo 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.

Oltre a frequenza di lavoro e timings di accesso un altro elemento è da tenere in massima considerazione nell'analisi delle prestazioni velocistiche delle memorie di sistema: si tratta del rapporto tra frequenza di bus e frequenza di lavoro della memoria. Più questo rapporto è vicino ad 1, cioè più vicine sono frequenza di bus e frequenza di lavoro della memoria, minore sarà la latenza di accesso alla memoria legata ad un funzionamento asincrono e, di conseguenza, più elevate le prestazioni velocistiche. Questo spiega perché, ad esempio, con molte applicazioni la memoria DDR333 permetta di ottenere prestazioni velocistiche superiori a quella DDR400, con frequenza di bus di 166 Mhz.

Le sigle delle memorie DDR, da PC2100 a DDR433

La tabella sottostante riporta informazioni dettagliate su tutti i tipi di memorie DDR che sono state immesse in commercio


Modulo è standard
ufficiale
frequenza
di lavoro
bandwidth
massima teorica
DDR200
PC1600
si 100 Mhz 1,6 Gbytes/sec
DDR266
PC2100
si 133 Mhz 2,1 Gbytes/sec
DDR300
PC2400
no 150 Mhz 2,4 Gbytes/sec
DDR333
PC2700
si 166 Mhz 2,7 Gbytes/sec
DDR375
PC3000
no 187,5 Mhz 3 Gbytes/sec
DDR400
PC3200
no 200 Mhz 3,2 Gbytes/sec
DDR433
PC3500
no 217,5 Mhz 3,5 Gbytes/sec

Gli standard PC2400 e PC3000 sono stati originariamente introdotti da Corsair con i primi moduli memoria della serie XMS. Per i moduli memoria DDR433 sono invece diversi i produttori che hanno presentato prodotti, tutti ottenuti pretestando varie serie di moduli memoria DDR400 capaci di reggere stabilmente frequenze di lavoro più elevate. La frequenza di lavoro della memoria DDR viene generalmente indicata con il doppio della frequenza nominale; ad esempio, la memoria DDR400 viene indicata come operante a 400 Mhz di clock. Questa scelta è legata al particolare funzionamento della tecnologia DDR, che prevede di fatto un raddoppio della frequenza di funzionamento sfruttando entrambi i fronti del clock.

Come faccio a capire la densità di memorizzazione dei chip montati su un modulo memoria? 

E' sufficiente contare il numero di chip memoria e dividere il quantitativo complessivo di memoria per questo valore. 
Se, ad esempio, il proprio modulo memoria è da 256 Mbytes e sul PCB del modulo sono montati 8 chip memoria, ogni chip memoria avrà capacità complessiva pari a 32 Mbytes di memoria (256/8). Per risalire alla capacità in Mbit sarà sufficiente convertire i byte in bit, quindi moltiplicare per 8 il valore ottenuto. 
Nell'esempio, avremo che ogni modulo ha densità di 256 Mbit (32 Mbytes x 8).

Perché installando un modulo memoria questo mi viene visto per solo metà della sua capacità? 

Si tratta di un problema di compatibilità tra chipset e modulo memoria utilizzato, che tipicamente si verifica quando si abbiano moduli memoria di grande capacità a schede madri non recentissime. 

Montando un modulo memoria di capacità, ad esempio, 128 Mbytes, il sistema ne riconosce e riporta correttamente la metà, cioè 64 Mbytes. Questo accade in quanto il chipset e la scheda madre non riescono ad accedere correttamente a tutti i chip memoria, per via della loro densità di memorizzazione troppo elevata, e pertanto ne riconoscono e utilizzano solo la metà. 

Per verificare l'assenza di problemi di compatibilità è necessario controllare la densità massima che possono avere i chip memoria utilizzati sulla propria scheda madre; in genere queste informazioni sono fornire o dal produttore della scheda madre, o da quello del chipset montato sulla propria scheda madre 

Come è possibile capire quale sia la densità di memorizzazione dei moduli memoria utilizzati? 

E' sufficiente contare il numero di chip memoria e dividere il quantitativo complessivo di memoria per questo valore. 

Se, ad esempio, il proprio modulo memoria è da 256 Mbytes e sul PCB del modulo sono montati 8 chip memoria, ogni chip memoria avrà capacità complessiva pari a 32 Mbytes di memoria (256/8). Per risalire alla capacità in Mbit sarà sufficiente convertire i byte in bit, quindi moltiplicare per 8 il valore ottenuto. 
Nell'esempio, avremo che ogni modulo ha densità di 256 Mbit (32 Mbytes x 8). 

In genere un aggiornamento del bios della scheda madre non risolve questo genere di problemi, anche se tentare non nuove. E' altresì vero che questo genere di inconvenienti avviene tipicamente con schede madri di vecchia generazione, quando si vuole aggiornare la propria memoria così da velocizzare il sistema.

Byte, Bit, Kbyte, Mbyte: che cosa indicano queste misure? 

La memoria viene misurata in byte (un byte è la combinazione di 8 bit, mentre un bit è lo spazio necessario per memorizzare un'unità del sistema di numerazione binario, cioè 0 oppure 1) anche se è abitudine utilizzarne i multipli: 

- byte: 8 bit 

- kilobyte (o Kbyte): 1024 byte 

- megabyte (o Mbyte): 1024 Kbyte 

- gigabyte (o Gbyte): 1024 Mbyte 

Un Mbyte non è pari a 1000 Kbyte, come in genere si è portati a pensare, ma a 1024 (pari a 2 elevato alla 10); questo spiega il perché computer dotati di 16 Mbyte abbiano, in termini di Kbyte, ben 16834 Kbyte (16x1024=16834); medesimo discorso vale per i Gbyte (anche se per ancora qualche tempo tale unità di misura verrà utilizzata solo per le dimensioni degli hard disk e non per le memorie). 

Memorie PC100 e PC133: quali sono le differenze? 

La sigla PC100 indica memorie SDRAM che sono state certificate per operare ad una frequenza massima di 100 Mhz; viceversa, la sigla PC133 indica memorie che sono state certificate per l'impiego alla frequenza di lavoro fino a 133 Mhz. In genere tale indicazuione è riportata su un'etichetta adesiva posta sul modulo stesso, così da facilitarne l'individuazione. 

Uso una cpu con bus a 66 Mhz; posso utilizzare memorie PC100 e/o PC133? 

Certamente: se si utilizza una frequenza di lavoro delle memorie più bassa e/o uguale a quella supportata dalle memorie di sistema, non vi è nessun tipo di controindicazione al funzionamento. Viceversa, se si vuole utilizzare una frequenza di lavoro delle memorie di sistema più elevata di quella supportata ufficialmente dalle memorie impiegate non è detto che il funzionamento del sistema sia stabile, al limite che il sistema funzioni del tutto.

Utilizzo differenti moduli memoria (PC100 e PC133) sulla stessa motherboard: è un problema? 

Se la frequenza di lavoro per le memorie è pari a quella più bassa ufficialmente supportata dai moduli memoria impiegati non ci sono controindicazioni; per fare un esempio, se si imposta la frequenza di lavoro di 100 Mhz per le memorie di sistema e si utilizzano due moduli, uno PC100 e l'altro PC133, non vi saranno problemi di funzionamento in quanto entrambi i moduli funzionano correttamente alla frequenza di lavoro di 100 Mhz. Viceversa, se si imposta con gli stessi due moduli dell'esempio la frequenza di lavoro di 133 Mhz non è detto che ne risulti un funzionamento stabile, in quanto il modulo PC100 non è ufficialmente pensato per essere utilizzato alla frequenza di 133 Mhz. 

PC66: cosa indica questa sigla? 

Con l'introduzione dei moduli memoria PC100 prima e PC133 è stata coniata la sigla PC66, che indica i moduli memoria SDRAM capaci di operare ufficialmente alla sola frequenza di lavoro di 66 Mhz, quella per intendersi utilizzata dai processori Intel Celeron, Pentium, Pentium III, AMD K6 e K6-2 (solo alcuni modelli). I moduli PC66 ufficialmente non supportano l'impiego a frequenze di lavoro superiori a 66 Mhz anche se, all'atto pratico, molto spesso è possibile utilizzare questi moduli memoria a frequenze superiri a 66 Mhz ottenendo un funzionamento complessivo stabile.

E' vero che alcuni moduli memoria reggono frequenze di funzionamento più elevate di quelle massime dichiarate dal produttore? 

Ogni produttore di moduli memoria certifica i propri prodotti per l'impiego ad una predeterminata frequenza di lavoro; per questo motivo si parla di moduli memoria PC66, PC100 e PC133. All'atto pratico, la tolleranza dei moduli memoria può essere superiore, cioè un modulo PC100, ad esempio, può essere capace di funzionare correttamente alla frequenza di lavoro di 133 Mhz, quella propria dei moduli PC133.

Non è possibile stabilire a priori delle regole generali in quanto la stabilità di comportamento varia da modulo a modulo ed è fortemente influenzata anche da altri fattori, quali la motherboard utilizzata e il voltaggio di alimentazione fornito ai moduli memoria; la cosa più saggia da fare per sapere sino a che frequenza i propri moduli memoria reggono il funzionamento è quella di provare direttamente ad aumentarne al frequenza di lavoro, fino a quando il comportamento del sistema non diviene instabile. 

Memorie Rambus: che cosa sono? 

Rambus è un nuovo tipo di memoria introdotto da Intel con il chipset i820 per sistemi Slot 1 e Socket 370. E' operante ad una frequenza di clock sensibilmente superiore a quella dei moduli SDRAM PC100 e PC133 (frequenze variabili tra i 300 Mhz e i 400 Mhz a seconda dei modelli), dotata di prestazioni superiori ma anche di una più elevata latenza (al crescere della latenza peggiorano le prestazioni con le applicazioni che eseguono numerosi accessi random alla memoria). L'introduzione di questo nuovo tipo di memoria ha rappresentato l'arma di Intel contro le elevate prestazioni delle cpu AMD Athlon e il tentativo di superare i limiti propri della memoria SDRAM, in primo luogo la banda passante che anche nella versione PC133 a 133 Mhz di clock è limitata a poco più di 1 Gbyte al secondo contro gli 1.6 Gbytes della memoria Rambus PC800. 

Per via del costo d'acquisto estremamente elevato questo tipo di memoria ha avuto una diffusione commerciale limitata alle sole workstationi di medio-alta potenza, in quanto pur avendo prestazioni superiori ha un divario di costo rispetto ai moduli memoria SDRAM PC133 decisamente troppo elevato.

PC600, PC700 e PC800: ma le memorie non arrivano al massimo a PC133?

Le sigle PC600, PC700 e PC800 sono state introdotte da Intel per indicare i differenti tipi di moduli memoria Rambus disponibili in commercio. Lo schema sottostante ne riporta le principali caratteristiche di uso: 

  Rambus PC600 Rambus PC700 Rambus PC800
Frequenza di clock 300 Mhz 356 Mhz 400 Mhz
Compatibile bus 100 Mhz Si Si Si
Compatibile bus 133 Mhz No Si Si


Le frequenze di clock delle memorie Rambus sono ben superiori a quelle delle memorie SDRAM ma è bene prestare attenzione alle sigle PC600, PC700 e PC800: queste ultime non indicano la frequenza di clock dei moduli Rambus ma circa il doppio. Tale scelta, puramente di marketing, è dettata dal fatto che le memorie Rambus sfruttano entrambi i fronti di clock per trasportare le informazioni, fatto che porta ad un raddoppio delle prestazioni velocistiche effettive.

Da cosa dipende la frequenza di lavoro di un modulo memoria 

La frequenza di lavoro di un modulo memoria è in genere uguale alla frequenza di bus utilizzata dalla motherboard. Alcuni chipset, tuttavia, permettono di impostare differenti frequenze di lavoro, sempre legate alla frequenza di bus della motherboard ma non uguale a quest'ultima. Ad esempio, i chipset Via Apollo PRO 133, Apollo PRO 133A (per sistemi Slot 1 - Socket 370), KX133, KT133 (per sistemi Slot A - Socket A) permettono di impostare la frequenza di lavoro della memoria come pari a quella di bus, oppure come +33 Mhz di clock oppure ancora come -33 Mzh di clock. Ad esempio, se si imposta la frequenza di bus di 100 Mhz è possibile forzare la memoria di sistema ad operare a 100 Mhz, ppure a 66 Mhz (-33 Mhz) oppure ancora a 133 Mhz (+33 Mhz); questo permette di utilizzare i moduli memoria in proprio possesso a prescindere dalla loro frequenza di lavoro ufficiale e, soprattutto, dalla frequenza di bus utilizzata dalla motherboard.

I chipset Intel i810 e i810E per sistemi Slot 1 e Socket 370 utilizzano la frequenza di lavoro della memoria di 100 Mhz quando viene utilizzata la frequenza di bus di 133 Mhz, mentre a 100 Mhz di bus la memoria opera sempre a 100 Mhz. medesimo ragionamento vale per il chipset Intel i820 quando abbinato al chip MTH (memory Translator Hub).

Come si può ricavare la velocità di un modulo memoria 

Un modo molto semplice per risalire alla velocità dei moduli memoria è quella di osservare le scritte riportate sui chip: in genere è espresso un valore in ns (nanosecondi), che può essere variabile da 12 a 7 a seconda del tipo di modulo memoria utilizzato. Prendendo questo valore è possibile risalire alla frequenza massima teorica di quel chip memoria; l'inverso della velocità in ns, infatti, indica proprio la massima frequenza di lavoro supportata dal modulo memoria in via teorica. la tabella sottostante illustra questa relazione: 

Velocità in ns frequenza massima teorica 
12 83 Mhz
10 100 Mhz
9 111 Mhz
8 125 Mhz
7.5 133 Mhz
7 143 Mhz
6.5 153 Mhz
6 166 Mhz
5.5 181 Mhz
5 200 Mhz


All'atto pratico, esiste un certo margine di tolleranza: per questo motivo, molti chip memoria riescono a supportare una frequenza di lavoro più elevata.

Cosa vuol dire memoria DDR? 

La sigla DDR indica Double Data Rate e contraddistingue un particolare tipo di memorie SDRAM; in termini molto smeplici, queste memorie utilizzano entrambi i fronti di clock per trasmettere le informazioni (ecco il perché di Double Data Rate), ottenendo prestazioni sulla carta pari al doppio di quelle ottenibili con moduli memoria SDRAM non DDR della stessa frequenza di lavoro. Ad esempio, se si prende un moduli memoria a 100 Mhz del tipo DDR, le sue prestazioni saranno in teoria pari a quelle di un modulo memoria SDRAM da 200 Mhz, in quanto sfruttando entrambi i fronti di clock si ottiene un raddoppio delle prestazioni.