Velocità di accesso RAM, latenza vs larghezza di banda


4

Sono un po 'confuso riguardo la velocità della RAM, la latenza e le velocità di trasferimento.

Da quello che riesco a capire fino ad ora, la RAM è valutata sulla sua velocità di clock e latenza. Esistono alcune misure di latenza diverse (la stringa di 4 numeri, ad esempio, 5-5-5-18), tuttavia l'unico numero veramente importante è l'ultimo che misura la latenza complessiva tra l'accesso di dati tra due "casuali" aree di memoria (correggimi se sbaglio).

La mia domanda è questa:

come si calcola la reale latenza della RAM (cioè in nanosecondi). È il tRAS diviso per la velocità di clock della RAM o è il tRAS diviso per la velocità del processore (che non suona proprio per me, il processore non dovrebbe influenzare l'accesso alla RAM come quello) o è qualcosa di completamente diverso?

Inoltre, in che modo il canale duello e il canale triplo influenzano la latenza della RAM (da quello che posso raccogliere, non lo fa, influisce solo sulla larghezza di banda) e come funziona esattamente? È fondamentalmente qualcosa di simile allo striping con RAID per i dischi rigidi?

Infine, c'è qualche differenza tra le velocità di accesso per la lettura e la scrittura? La scrittura richiede più tempo e, in tal caso, come si riflette nei tempi di latenza, o anche se lo è.

Grazie

-Faken

memory 

Risposte:


4

la stringa di 4 numeri, ad es. 5-5-5-18

I tempi di memoria sono specificati attraverso una serie di numeri:

2-3-2-6-T1
3-4-4-8
2-2-2-5

Questi numeri indicano la quantità di cicli di clock necessari alla memoria per eseguire una determinata operazione. Più piccolo è il numero, più veloce è la memoria.

CL-tRCD-Trp-tRAS-CMD

  • CL: latenza CAS . Il tempo impiegato tra un comando inviato alla memoria e quando inizia a rispondere ad esso. È il tempo che intercorre tra il processore che richiede alcuni dati dalla memoria e lo restituisce.
  • tRCD: Ritardo da RAS a CAS . Il tempo impiegato tra l'attivazione della linea (RAS) e la colonna (CAS) in cui i dati sono memorizzati nella matrice.
  • tRP: RAS Precharge . Il tempo necessario per disabilitare l'accesso a una linea di dati e iniziare l'accesso a un'altra riga di dati.
  • tRAS Attivo al ritardo di precarica **. Per quanto tempo la memoria deve attendere fino al successivo accesso alla memoria.
  • CMD: tasso di comando . Il tempo che intercorre tra l'attivazione del chip di memoria e l'invio del primo comando. A volte questo valore non è fornito. Solitamente è T1 (1 ciclo di clock) o T2 (2 cicli di clock).

La latenza CAS è probabilmente il numero più importante. La memoria con CL = 3 ritarderà tre cicli di clock per fornire i dati; la memoria con CL = 5 ritarderà cinque cicli di clock per eseguire la stessa operazione.

Il periodo di ciascun ciclo di clock può essere calcolato:

T = 1 / f

Supponiamo di avere una memoria DDR2-533 in esecuzione a 533 MHz (266 MHz effettivi), il che significa che il periodo di clock è 3.75 ns. Se questa memoria DDR2-533 ha CL = 5, ritarderebbe 18.75 ns prima di consegnare i dati, se avesse CL = 3, ritarderebbe 11.25 ns.

Tenere presente che la memoria implementa anche le modalità burst, quindi se il successivo indirizzo dati richiesto è sequenziale dal primo, non ci sono ritardi nell'ottenere i dati "successivi".

È fondamentalmente qualcosa di simile allo striping con RAID per i dischi rigidi?

Credo di sì, sì. I canali Dual e Triple (la memoria deve essere installata in coppia o in tripla) riguardano la larghezza di banda.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.