Synchronous DRAM sau SDRAM este standardul actual pentru DRAM. Utilizarea sa principală este pentru RAM de sistem, deși este folosit și în VRAM pe plăcile grafice și oriunde este folosită DRAM. Este atât de dominant în domeniul său încât „S” este de obicei abandonat și este pur și simplu denumit DRAM. Sincronizarea SDRAM este esențială pentru performanța sa și a fost esențială în creșterea sa față de predecesorul său, DRAM asincron.
Lucrul în sincronizare
Sincron se referă la faptul că SDRAM are un ceas intern și că viteza ceasului este cunoscută de sistem. Asta nu înseamnă că rulează la aceeași viteză de ceas ca procesorul. Dar are un ceas intern, iar CPU îl știe. Acest lucru permite ca interacțiunile cu RAM să fie optimizate, astfel încât magistrala I/O să fie utilizată pe deplin, mai degrabă decât să fie lăsată inactiv, pentru a se asigura că nicio comandă nu interferează cu alte comenzi.
O parte a problemei este că atunci când scrieți date pe DRAM. Datele trebuie furnizate simultan ca comanda de scriere a datelor. La citirea datelor, totuși, datele sunt citite înapoi două sau trei cicluri de ceas după emiterea comenzii de citire. Aceasta înseamnă că controlerul DRAM trebuie să acorde suficient timp pentru ca operațiunile de citire să se termine înainte de a avea loc o operație de scriere. Cu DRAM asincronă, acest lucru s-a întâmplat pur și simplu acordând timp mai mult decât suficient pentru finalizarea operațiunii. Această practică, totuși, a lăsat magistrala I/O inactiv. În același timp, controlorul a așteptat suficient pentru a fi sigur, ceea ce era o utilizare ineficientă a resurselor.
DRAM sincronă utilizează un ceas intern pentru a sincroniza transferul de date și execuția comenzilor. Acest lucru permite operațiunilor de timp controlerului de memorie să utilizeze în mod optim magistrala I/O și să asigure niveluri de performanță mai ridicate.
Îmbunătățiri față de DRAM asincron
În afară de îmbunătățirile în sincronizare care permit un control îmbunătățit, principala îmbunătățire a SDRAM este capacitatea de a avea mai multe bănci de memorie în DRAM. Fiecare bancă operează în mod independent în mod intern. Într-o bancă, un singur rând poate fi deschis simultan. Totuși, un al doilea rând poate fi deschis într-o altă bancă, permițând operațiunilor de citire sau scriere să fie pipeline. Acest design împiedică magistrala I/O să stea inactiv. În același timp, o nouă operație de citire sau scriere este pusă în coadă, sporind eficiența.
O modalitate de a gândi la acest lucru este prin adăugarea unei a treia dimensiuni la o matrice bidimensională. În continuare, puteți citi sau scrie date dintr-un singur loc la un moment dat. Dar puteți pregăti un alt rând într-o altă bancă în timp ce interacționați cu unul.
Un alt beneficiu al SDRAM-ului vine din includerea datelor de sincronizare pe un cip de pe memorie. Unele stick-uri RAM moderne permit performanță mai rapidă decât standardele oficiale DRAM prin codificarea informațiilor lor specifice de performanță de sincronizare pe acel cip. De asemenea, poate fi posibilă modificarea manuală a acestor setări, permițând „overclockării” memoriei RAM. Aceasta este adesea foarte aprofundat, deoarece pot fi configurate multe valori de sincronizare și tinde să ofere o performanță minimă beneficiu. Overclockarea RAM prezintă, de asemenea, riscul de instabilitate, dar poate oferi avantaje în anumite sarcini de lucru.
Îmbunătățiri în timp
Viteza reală a ceasului de memorie nu a crescut mult de la lansarea SDRAM. Prima iterație a SDRAM a primit retronimul SDR. Aceasta este prescurtarea de la Single Data Rate pentru a o diferenția de memoria ulterioară DDR sau Double Data Rate. Aceste tipuri, precum și multe alte forme de DRAM, sunt toate exemple de SDRAM. Ciclul de ceas al chipului DRAM controlează timpul dintre cele mai rapide operațiuni ale DRAM. De exemplu, citirea unei coloane dintr-un rând deschis necesită un singur ciclu de ceas.
Este important de reținut că există două viteze de ceas distincte pentru SDRAM, ceasul intern și ceasul magistralei I/O. Ambele pot fi controlate independent și au fost îmbunătățite de-a lungul timpului. Ceasul intern este viteza memoriei în sine și influențează direct latența. Ceasul I/O controlează cât de des pot fi transmise datele care au fost citite din – sau vor fi scrise în – SDRAM. Această viteză de ceas, combinată cu lățimea magistralei I/O, influențează lățimea de bandă. Ambele ceasuri sunt legate și sunt esențiale pentru performanța ridicată a SDRAM.
Cum au crescut vitezele
Standardul oficial JEDEC pentru prima generație de DDR SDRAM avea ceasuri de memorie între 100 și 200MHz. DDR3 oferea încă 100MHz ceasuri de memorie, deși a standardizat și viteze de ceas de până la 266,6 MHz. În ciuda acestui fapt, modificări interne ale vitezei de ceas I/O și ale cantitatea de date inclusă într-o operațiune de citire a însemnat că, chiar și la un ceas de memorie de 100 MHz, lățimea de bandă pentru o unitate de timp a fost de patru ori.
DDR4 a schimbat modelul de upgrade și a dublat ceasul memoriei cu o gamă cuprinsă între 200 și 400MHz, realizând din nou o dublare a lățimii de bandă disponibilă, reducând în același timp latența. Standardul DDR5 începe, de asemenea, cu un ceas de memorie de 200 MHz. Cu toate acestea, atinge până la 450 MHz, revenind la dublarea cantității de date transferate pe ciclu pentru a dubla lățimea de bandă.
Concluzie
DRAM sincron este tipul principal de DRAM utilizat în prezent. Este baza pentru sistemul RAM și VRAM în aplicațiile grafice. Prin sincronizarea acțiunilor DRAM-ului cu ceasuri, performanța reală a DRAM-ului poate fi cunoscută, permițând operațiunilor să fie puse în coadă eficient pentru execuție. Acest lucru este mult mai eficient decât a lăsa mai mult decât suficient timp, deoarece nu există o măsură directă sau o modalitate de a ști când o anumită comandă a fost finalizată.
Ceasurile care controlează SDRAM sunt esențiale pentru performanța sa ridicată. Ei controlează cât de des pot fi executate comenzile și cât de repede pot fi citite sau scrise datele din DRAM. Cunoscând aceste timpi, ele pot fi optimizate pentru performanțe de vârf.