Che cos’è la memoria RAM? Come funziona?

Sapevi che interagiamo quotidianamente con apparecchi contenenti almeno una memoria? Ma esattamente sai che cos’è e come funziona una RAM? Beh, anche se raramente usi il computer hai a che fare quotidianamente con le memorie RAM contenute ad esempio nello smartphone o nel tuo televisore. Giochi con una console? Usi lettori MP3? La RAM è ovunque… o quasi, ma andiamo per gradi!

Introduzione

Sai che anche nel dispositivo che stai utilizzando ora per leggere questo articolo è presente una RAM? Che cosa significa il termine? L’acronimo RAM deriva da”Random Access Memory” ossia “Memoria ad accesso casuale”, ma non vorrei soffermarmi sugli aspetti generali di tale componente, quanto vorrei analizzare il tutto un po’ più da vicino. 

RAM Kingston
RAM Kingston

Struttura della RAM

Abbiamo visto che il termine RAM indica una componente che memorizza dati tramite accesso casuale, ma che cosa significa? Capiresti meglio la questione se ti dicessi che una RAM è composta da tantissime “celle” elettroniche capaci di trattenere della corrente?

Hey, sto usando delle definizioni estremamente grossolane per farti immergere nel discorso, non usare tali termini in situazioni differenti, mi raccomando! Tutto ciò è in linea teorica in quanto vengono solo utilizzate le relative proprietà elettrico-capacitive di tali componenti. Dicevamo, la RAM riesce ad intrappolare e trattenere degli impulsi elettrici tramite una serie di minuscole celle alle quali altri componenti fanno riferimento per depositare o leggere dati.

Le memorie RAM si definiscono “volatili” perché i dati in esse contenuti non vengono conservati ad uno spegnimento del dispositivo. Questo perché viene a mancare una “tensione di controllo” in grado di attivare la rete di celle così come detto poc’anzi. Per capire che cos’è la RAM e come funziona bisogna analizzare come prima cosa la sua struttura.

Esempio strutturale di una RAM: Le micro-celle
Esempio strutturale di una RAM: Le micro-celle

Come puoi già immaginare la faccenda è estremamente più complessa, ma rendendo le cose chiare e gradite, possiamo affermare che ogni cella di memoria è costituita da una tipologia di  transistorcondensatori. Prendendo in esame il funzionamento di una cella, il condensatore ha il compito di immagazzinare gli impulsi (0-1) che comporranno, tramite altri processi, il codice macchina. Il transistor invece ha due scopi:

  1. Lettura delle informazioni, quindi lettura dei blocchi di memoria;
  2. Scrittura delle informazioni, quindi scrittura nei blocchi di memoria;

Le celle di memoria sono distribuite come un alveare organizzato, per riga e colonna. Ogni singola cella è indicizzata secondo un esclusivo indirizzo denominato locazione di memoria. Da qui derivano varie strutture e tipologie di RAM: DDR, DDR2, DDR3, DDR4, SODIMM. Tuttavia tutte sfruttano il medesimo principio per svolgere i loro compiti.

SDRAM e DRAM: Cosa cambia?

La lettera “S” di SRAM indica “Static”, ovvero quei tipi di celle di memorie composte esclusivamente da transistor e che non hanno bisogno di una tensione per conservare i dati: È il classico esempio di memorie cache installate direttamente nel microprocessore. La CPU infatti comunica esclusivamente con la cache, la quale, a sua volta, dialoga con le DRAM.

Per capire che cos’è la RAM e come funziona bisogna analizzare prima di tutto i diversi livelli di memorie cache fisiche contenute nel microprocessore: di primo livello o L1, di secondo livello o L2, di terzo livello o L3. La CPU lavora a stretto contatto solo ed esclusivamente con le L1, memorie estremamente piccole (si parla di Kb) ma di 15 / 20 volte più veloci delle DRAM.

Leggi anche: Che cos’è la CPU? Come funziona?

Esempio di comunicazione tra memorie e componenti
Esempio di comunicazione tra memorie e componenti

La “D” di DRAM, invece, indica “Dynamic”, ovvero quei tipi di celle di memorie che devono essere “ricaricate” per non perdere i dati. È il classico esempio delle RAM DDR più conosciute. Queste memorie hanno un funzionamento scandito da un tempo, denominato clock, così come avviene per le CPU.

Il clock delle memorie RAM è gestito dal chipset della scheda madre, ed è questa una delle particolarità a cui si dovrebbe porre attenzione quando si acquista una nuova motherboard!

RAM Hinyx
RAM Hinyx

SDR, DDR, QDR: Cosa cambia?

Una volta capito che cos’è la ram focalizziamoci ora su come funziona. Per gestire tale memoria, è stato chiaro fin da subito l’importanza della “frequenza di clock“, la quale stabilisce l’inizio di ogni singolo ciclo operativo.

Esempio: Se la velocità di clock è pari a 100 Hz, la memoria RAM esegue 100 cicli operativi, quindi 100 operazioni di carico e scarico delle celle di memoria.

La prima memoria inventata utilizzava, per ogni ciclo di lavoro, solo una delle operazioni (carico o scarico), per questo è stata denominata SDR, ossia “Single Data Rate“.

SDR DDR messe a confronto, è evidente la doppia velocità di calcolo delle seconde
SDR DDR messe a confronto, è evidente la doppia velocità di calcolo delle seconde

Con l’avanzare della tecnologia di stampaggio ed assemblaggio dei componenti elettronici, vennero adottate memorie realizzate a doppia faccia. I componenti, quindi, erano presenti sia sul fronte che sul retro: Questo ha permesso la realizzazione delle odierne DDR, ossia “Double Data Rate” capaci di eseguire sia operazioni di carico che di scarico in un singolo ciclo di utilizzo.

Alcuni banchi di RAM DDR3
Alcuni banchi di RAM DDR3

Che cos'è la latenza di una RAM e come funziona?

Abbiamo accennato a diverse spiegazioni per capire che cos’è la RAM e come funziona, tra cui il tempo di clock. Tuttavia c’è da considerare un altro fattore: il “tempo di latenza” (CL). Esso indica il tempo che intercorre tra l’invio di una richiesta alla memoria RAM e l’istante in cui il segnale è pronto per essere inviato. Il valore di riferimento è espresso in nanosecondi (ns) ed esiste una precisa formula matematica per stabilire la latenza di una memoria RAM: (CL / Mhz) * 1000=x.

I pin ravvicinati di una memoria RAM
I pin ravvicinati di una memoria RAM

Esempio: Prendiamo in esame due memorie RAM DDR3, la prima da 1600Mhz – CL9, la seconda 1866Mhz – CL10. Calcoliamo la latenza:

  • ( 9 / 1600 ) * 1000 = 5.625 ns
  • ( 10 / 1866 ) * 1000 = 5.359 ns

La differenza è di soli 0.266 nanosecondi, ma tenendo in considerazione la quantità di cicli operativi al secondo, il dato inizia ad avere la sua importanza.

Esempio di una memoria SAMSUNG DDR3
Esempio di una memoria SAMSUNG DDR3