RAM

In elettronica e informatica, la memoria ad accesso casuale, meglio nota come RAM (), è un tipo di memoria volatile caratterizzata dal permettere l'accesso diretto a qualunque indirizzo di memoria con gli stessi tempi. 

La RAM si contrappone alla memoria ad accesso sequenziale, in cui i dati sono disposti in modo sequenziale e per accedervi è necessario scorrere su tutti i dati precedenti.

Funzionamento 
Nella memoria RAM vengono copiati (caricati) i programmi che la CPU deve eseguire. Una volta chiuso il programma, le modifiche effettuate, se non opportunamente salvate sul disco rigido o su altra memoria non volatile, verranno perse.

Per le sue caratteristiche, la RAM viene utilizzata come memoria primaria nei computer più comuni. Inoltre, si può utilizzare una porzione di RAM come RAM disk, ovvero trattarla come se fosse memoria secondaria, col vantaggio di avere prestazioni in lettura e scrittura enormemente più elevate, con tempi di accesso significativamente migliori.

Il tipo di memoria ad accesso diretto più comune attualmente è a stato solido, a lettura-scrittura e volatile, ma rientrano nel tipo di memoria ad accesso casuale la maggior parte dei tipi di ROM (memoria a sola lettura), la NOR Flash (un tipo di memoria flash), oltre a vari tipi di memorie informatiche utilizzate ai primordi dell'informatica e oggi non più utilizzate come ad esempio la memoria a nucleo magnetico.

L'acronimo RAM (non il termine "memoria ad accesso diretto") ha anche una seconda accezione più ristretta, ma attualmente più diffusa, che identifica le schede fisiche che vengono installate negli odierni computer (vedi moduli DIMM, SIMM, SO-DIMM).

Per testare i moduli di memoria si può utilizzare il software Memtest86.

Tipologia

SRAM 

Nelle SRAM, acronimo di Static Random Access Memory, ovvero RAM statica ogni cella è costituita da un Flip-Flop di tipo D. Le celle sono disposte a matrice e l'accesso avviene specificando la riga e la colonna.

Consentono di mantenere le informazioni per un tempo infinito ma, perdono le informazioni in esse contenute se non alimentate da corrente, sono molto veloci, consumano poca energia e calore. La necessità di usare molti componenti, però, le rende molto costose, difficili da impacchettare e con una scarsa capienza.

Proprio per la loro bassa capienza, sono solitamente usate per le memorie cache, dove sono necessarie elevate velocità in abbinamento a ridotti consumi e capienze non troppo elevate (dell'ordine di pochi Megabit).

DRAM 

La DRAM, acronimo di Dynamic Random Access Memory, ovvero ram dinamica, a livello concettuale è costituita da un transistor che separa un condensatore, il quale mantiene l'informazione, dai fili di dati. A livello pratico non viene usato un vero condensatore ma si sfruttano le proprietà elettrico/capacitive dei semiconduttori. È così possibile usare un solo componente per ogni cella di memoria, con costi molto ridotti e la possibilità di aumentare notevolmente la densità di memoria.

A causa del non perfetto isolamento, il condensatore si scarica, quindi dopo un breve lasso di tempo il suo contenuto diventa completamente inaffidabile. Si rende necessario perciò ricaricarlo, l'operazione è detta di "refreshing", provvedendo ad eseguire un'operazione di lettura fittizia e riscrittura entro il tempo massimo in cui il contenuto può essere considerato ancora valido. Queste operazioni sono eseguite da un circuito interno alle memorie stesse. Oltre a comportare un certo dispendio di energia rendono più lenta la memoria in quanto, mentre si sta eseguendo il refreshing, non è possibile accedervi. Le memorie DRAM si possono considerare abbastanza affidabili anche perché molto spesso ad ogni riga della memoria è associato un bit di parità, che consente di individuare eventuali errori singoli all'interno della riga, oppure una serie di bit (login), che opportunamente impostati nel momento di ogni scrittura, generano il codice di Hamming corrispondente, che consente di individuare e correggere errori singoli e individuare errori doppi.

È importante sottolineare come l'operazione di lettura sia distruttiva, in quanto nel momento in cui un dato viene letto viene anche perso; risulta quindi necessaria la sua riscrittura immediata e questa porta a uno spreco di tempo.

Le DRAM sono asincrone, ovvero l'accesso in scrittura ed in lettura è comandato direttamente dai segnali in ingresso, al contrario delle memorie sincrone in cui il passaggio da uno stato all'altro è sincronizzato ad un segnale di clock.

Per ogni cella sono presenti un numero basso di componenti che permettono di ottenere un'alta capacità complessiva del dispositivo, un basso assorbimento di potenza e costi ridotti, sono dunque utilizzate generalmente per la memoria principale del sistema.

SDRAM 

La SDRAM, acronimo di Synchronous Dynamic Random Access Memory, ovvero DRAM sincrone, si differenzia dalla DRAM normale per il fatto che l'accesso è sincrono, ovvero governato dal clock. Tale segnale di clock temporizza e sincronizza le operazioni di scambio di dati con il processore, raggiungendo una velocità almeno tre volte maggiore delle SIMM con EDO RAM.

Tipicamente saldata in un modulo di tipo DIMM, è normalmente impiegata come memoria principale dei Personal Computer di tipo Pentium e successivi.

Alcuni esempi sono classificati come:
 SDR SDRAM: indica le originarie memorie SDRAM. Con l'evoluzione tecnica, questo tipo ha preso il suffisso SDR ossia Single Data Rate, per differenziarle dalle successive SDRAM con controller DDR. Il single data rate indicava l'accettazione di un comando e il trasferimento di 1 word di dati per ciclo di clock (tipicamente 100 e 133 MHz). Il data bus era diversificato ma tipicamente erano impiegate su moduli DIMM da 168 pin e potevano operare su 64 bit (non-ECC) o 72 bit (ECC) alla volta.
 DDR SDRAM
 DDR2
 DDR3
 DDR4
 DDR5
 SODIMM: da notare che il package SODIMM non necessariamente contiene memoria SDRAM.

FeRAM 

La FeRAM, acronimo di Ferroelectric Dynamic Random Access Memory, ha la peculiarità di mantenere i dati senza l'ausilio del refresh di sistema. Utilizzano un materiale denominato ferroelettrico che ha la capacità di mantenere la propria polarizzazione anche dopo esser scollegato dalla fonte energetica.

Memoria a cambiamento di fase 

Le memorie a cambiamento di fase sono delle memorie ad accesso casuale che utilizzano il cambiamento di fase di un materiale per memorizzare le informazioni. Questo permette alla memoria di mantenere le informazioni anche senza alimentazione, come le memorie flash ma rispetto a queste hanno alcuni vantaggi. Il principale è la velocità di scrittura che può arrivare ad essere più rapida di 30 volte, come ciclo di vita 10 volte maggiore e, nota non trascurabile, un costo minore dato dalla lavorazione più veloce.

Frequenze a confronto 
La memoria scambia dati con gli altri componenti attraverso il Bus, che ha una sua frequenza operativa di base, a multipli di 33 MHz, così come la memoria e il processore. I tre componenti vanno sincronizzati su un multiplo della frequenza di base del bus. La frequenza di clock interna della memoria differisce dalla frequenza del bus di I/O del modulo, che è quella con la quale il modulo stesso si interfaccia col bus della piastra madre.

Nella tabella sottostante è possibile vedere le frequenze operative dei vari tipi di moduli di memoria; si fa riferimento agli standard utilizzati dai produttori e non solo a quelli standardizzati dal JEDEC:

SDR

DDR (2002)

DDR2 (2004)

DDR3 (2007)

DDR4 (2012)

DDR5 (2020)

Note

Voci correlate 
 DRAM
 RRAM
 Memoria (informatica)
 Memoria ad accesso diretto
 Memoria ad accesso sequenziale
 Read only memory
 Dual In-line Memory Module
 DDR SDRAM
 DDR2 | DDR3 | DDR4
 SODIMM
 Content addressable memory
 Shadow RAM
 MetaSDRAM
 MRAM
 SDRAM

Altri progetti

Collegamenti esterni