În proiectarea sistemelor digitale, logica secvențială este utilizată nu doar pentru a gestiona starea curentă a automatelor finite, ci și pentru a stoca volume mari de informații/date de uz general. Aceste blocuri de circuite secvențiale de mari dimensiuni sunt denumite memorii.
Caracteristicile primare care definesc un bloc de memorie sunt:
Fiecare soluție este una de compromis 1), iar în aplicațiile de dimensiuni mari se adoptă o tehnică hibridă, numită ierarhie de memorii.
Memoria unui calculator numeric este organizată ca o ierarhie de module de memorie. La baza ierarhiei se află memoria auxiliară/secundară 2), urmată de memoria principală 3), apoi de memoria cache 4), iar în vârful ierarhiei se află registrele generale ale procesorului 5).
Memoria cache este o memorie SRAM, utilizată pentru eficientizarea timpului de acces la date a procesorului. Aceasta este încapsulată împreună cu unitatea centrală de procesare (CPU) pentru a facilita viteza ridicată de transfer, eficiența energetică pentru transportul datelor și compensarea timpului de acces la memoria principală.
Memoria principală este o memoria DRAM ce oferă o capacitate mare de lucru (în general de ordinul GB) la un cost rezonabil.
Unul din cele mai simple criterii de clasificare este cel dupa modul de acces:
Din acest punct de vedere există:
În cadrul acestui laborator vom aprofunda memoriile cu acces aleator, volatile (RAM).
În cadrul acestui laborator vom implementa o memorie RAM statică sincronă.
Toate operațiile necesare pentru interfațarea unui chip SRAM sincron sunt controlate de unul sau mai multe semnale externe de ceas. Pentru a funcționa corect toate semnalele de control trebuie să fie valide atunci când are loc tranziția respectivă a ceasului, adică să fie respectați timpii de setup și hold.
Funcționarea unui SSRAM poate fi descrisă prin următoarele semnale: