Sia la DRAM (Dynamic Random Access Memory) che la SRAM (Static Random Access Memory) sono tipi di memoria ad accesso casuale (RAM). La RAM è un dispositivo a semiconduttore interno al chip integrato che memorizza il processore che un microcontrollore o un altro processore utilizzerà costantemente per memorizzare le variabili utilizzate nelle operazioni durante l’esecuzione dei calcoli. La RAM si riferisce all’hardware che fornisce le posizioni di memoria a cui si fa riferimento nel software come registri. Al momento in cui scriviamo, tutta la RAM comunemente usata è volatile, il che significa che tutto ciò che si trova nella memoria volatile viene perso quando si toglie l’alimentazione. Si può pensare alla RAM come una memoria di lavoro in cui le variabili sono memorizzate mentre la CPU esegue i calcoli. La RAM è molto più veloce per accedere alla memoria esterna ed è un componente critico per la velocità del chip del processore.
La differenza architettonica tra i due è che la DRAM usa transistor e condensatori in una serie di circuiti ripetuti (dove ogni circuito è un bit), mentre la SRAM usa diversi transistor in un circuito per formare un bit.
La DRAM memorizza dati “scrivendo una carica al condensatore per mezzo di un transistor di accesso” ed è stata inventata nel 1966 da Robert Dennard alla IBM e fu brevettata nel 1967. La DRAM guarda lo stato di carica in un circuito transistor-condensatore (vedi Figura 1); uno stato carico è un bit 1; la carica bassa è vista come un bit 0.
Tutti questi circuiti transistor-condensatore insieme creano una “parola” di memoria. (Vedi Figura 2).
La DRAM usa condensatori che perdono carica nel tempo a causa di perdite, anche se la tensione di alimentazione viene mantenuta. Poiché la carica di un condensatore decade quando viene rimossa una tensione, la DRAM deve essere alimentata con una tensione per conservare la memoria (ed è quindi volatile). I condensatori possono perdere un po’ la loro carica anche quando sono alimentati con tensione se hanno dei dispositivi nelle vicinanze (come i transistor) che assorbono un po’ di corrente anche se sono in uno stato “spento”; questo si chiama perdita del condensatore. A causa della perdita dei condensatori, la DRAM ha bisogno di essere rinfrescata spesso.
SRAM
SRAM non usa condensatori. La SRAM usa diversi transistor in una configurazione flip-flop accoppiata in modo incrociato e non ha il problema della perdita e non ha bisogno di essere rinfrescata.
Ma la SRAM ha ancora bisogno di energia costante per mantenere lo stato di carica e quindi è volatile come la DRAM. Dato che la SRAM usa diversi transistor (vedi Figura 3) per ogni bit di memoria contro la DRAM, che usa un transistor e un condensatore per bit, la DRAM è meno costosa. La DRAM usa un processo diverso da quello della SRAM, quindi discutere la dimensione è un paragone tra mele e arance in alcuni aspetti, a seconda dell’obiettivo di ottimizzazione. La DRAM è almeno dieci volte più lenta della SRAM. La SRAM è più veloce e tipicamente usata per la cache, la DRAM è meno costosa e ha una densità maggiore e ha un uso primario come memoria principale del processore.
SDRAM
SDRAM sta per Synchronous Dynamic Random Access Memory, un tipo di DRAM che è sincronizzata con il bus di sistema del processore per un vantaggio di velocità.