RAM ~ TOPIC UFFICIALE & GUIDA
(by FFlegend)
(by FFlegend)

COS'E' LA RAM?
La memoria primaria (comunemente chiamata RAM poiché appartiene a questa categoria di memorie) è lo spazio in cui il computer, mentre è acceso, tiene tutti i dati che sta utilizzando, sia tutto il necessario al funzionamento del sistema operativo che tutti i nostri programmi in esecuzione, siano essi visibili e in uso o in background, cioè in funzione ma senza che noi li vediamo.
E' una memoria volatile (o temporanea), ovvero ha bisogno di un'alimentazione elettrica per mantenere memorizzate le informazioni; quando spegniamo il computer quindi, tuttò ciò che era in RAM viene perso.
COSA SIGNIFICA "RAM"? COME FUNZIONANO?
RAM è l'acronimo di Random Access Memory (memoria ad accesso casuale), ed è chiamata così perché in ogni momento si può accedere a qualsiasi cella di memoria conoscendone l'indirizzo, che non è altro che il chip, la riga e la colonna in cui si trova la cella.
Nelle RAM infatti in ogni modulo (scheda) i dati sono divisi in chip, che a loro volta contengono un determinato numero di celle disposte in una griglia, rintracciabili quindi conoscendone la riga e la colonna, come a battaglia navale.
Le celle di memorie sono formate da condensatori che possono essere scaricati e ricaricati, e i bit che compongono i dati vengono salvati attribuendo per esempio i condensatori carichi agli "1" e quelli scarichi agli "0". I condensatori, per mantenere la loro carica elettrica, devono subire un refresh, ovvero bisogna dargli tensione, altrimenti perdono la loro carica e di conseguenza il dato contenuto all'interno sotto forma di bit: questo è il motivo per il quale, spegnendo il computer, perdiamo tutti i dati in RAM.
Le RAM comunicano con la CPU tramite un canale chiamato bus, gestito dal memory controller.
Questa ovviamente è una visione molto semplificata del funzionamento di queste memorie, in realtà tutt'altro che banale.
TIPI DI RAM (DDR, DDR2, DDR3, SO-DIMM)
Il tipo di memoria RAM utilizzata attualmente nei nostri computer come memoria di sistema è SDRAM (evoluzione del precedente DRAM): con gli anni abbiamo visto evolversi questa tecnologia da DDR a DDR2, ed ora a DDR3, ma cosa cambia?
Sostanzialmente viene aumentata la velocità della memoria raddoppiando la frequenza di clock, quella frequenza sulla quale si basa il funzionamento della RAM. Viene anche progressivamente diminuita la tensione di funzionamento, diminuendo quindi calore generato e consumi; ad ogni evoluzione però salgono le latenze. Frequenze e latenze verranno approfondite in paragrafi a parte.
Per SO-DIMM s'intendono quei moduli di memoria in formato ridotto destinati ai computer portatili.
FREQUENZA
La frequenza a cui lavorano le RAM, espressa in MHz, la potrete trovare scritta in due modi: ad esempio dei moduli operanti a 800 MHz, potranno essere trovati anche come moduli PC2-6400. Niente di complicato, le due diciture hanno lo stesso significato, semplicemente il numero che segue "PC2-" è 8 volte la frequenza della RAM ed indica il massimo di dati che potrebbe teoricamente passare sul canale in MB al secondo. Il "2" indica la tipologia DDR2, ma può essere assente in caso di memorie DDR, o essere "3" in caso di RAM DDR3.
Mantenendo sempre come esempio delle DDR2-800, potreste trovare fra le caratteristiche la frequenza di 400 MHz: questa è la frequenza di input/output, ma l'architettura DDR (Double-Date Rate) lavora effettivamente ad una velocità doppia.
Perché tutto questo? Scendiamo leggermente più nel dettaglio, per chi fosse interessato.
I dati nelle tecnologia Double Date Rate sono trasferiti a 8 Byte per volta (essendo il bus a 64 bit ed ogni Byte formato da 8 bit, il calcolo è semplice, 64/8=8), per questo negli standard JEDEC, un importante organo che si occupa di definizione di standard in questo campo, viene applicata una moltiplicazione per 8.
Il clock, essendo un segnale periodico che sale e scende continuamente (come si vede nell'immagine sottostante), è formato da fronti di salita e fronti di discesa; in ogni ciclo di clock, il segnale sale e scende una volta. Con la tecnologia DDR si accede alle memorie sia ad ogni fronte in salita che ad ogni fronte in discesa, ed ecco spiegato il raddoppiamento della frequenza della RAM rispetto a quella alla quale realmente lavorano i chip di memoria. Questo vale per tutte le memorie DDR, siano esse DDR, DDR2 o DDR3.
TIMINGS (LATENZE)
Nelle specifiche delle RAM troviamo spesso sequenze di valori come 4-4-4-12: questi numeri indicano quanti cicli di clock le memorie devono aspettare per fare una determinata azione. Questi sono solo i 4 timings principali, ma ce ne sono molti altri; si parla, per la cronaca, di attese nell'ordine dei nanosecondi.
Per fare un esempio, il primo di questi timings è chiamato CAS o tCL, e indica il tempo necessario ad individuare la cella di memoria contenente le informazioni richieste.
A parità di frequenza, a minori latenze corrispondono ovviamente maggiori prestazioni, ma si parla di incrementi a dir poco impercettibili per un utilizzo normale (ma anche più avanzato) del PC.
RAFFREDDAMENTI

Va detto innanzitutto che i raffreddamenti vanno presi in considerazione solo da chi fa overclock, altrimenti non si notano differenze, un buon ricircolo d'aria nel case è più che sufficiente a raffreddare le memorie.
Detto questo, sulla RAM di qualità troviamo quasi sempre dei dissipatori passivi (come quelli in basso nella foto montati sulle RAM), quei blocchi di metallo che coprono uno o entrambi i lati del modulo di memoria. Dei buoni dissipatori sono importanti per chi fa overclock, sopratutto per chi si spinge a frequenze elevate aumentando i voltaggi, i quali sono la causa primaria di aumenti di temperatura.
E' possibile anche installare raffreddamenti ad aria attivi, cioé composti da una o più ventole, ad esempio quello in alto nella foto precedente con tre ventoline. Queste soluzioni assicurano temperature accettabili anche con voltaggi e frequenze molto fuori specifica, a patto di avere dei buoni dissipatori passivi sui moduli ed un case che favorisca la fuoriuscita dell'aria calda.
OVERCLOCK
L'obiettivo dell'overclock alle RAM è quello di alzare la frequenza senza aumentare troppo i timings e mantenendo un voltaggio più basso possibile. Per farlo, oltre ovviamente a moduli di buona fattura ed un sistema di dissipazione del calore adatto, è necessaria una scheda madre di qualità adatta a questa pratica.
La frequenza delle RAM non è liberamente impostabile, o almeno non direttamente, in quanto deriva dal bus di sistema. Le modalità variano da piattaforma a piattaforma, pertanto è difficile scrivere qualcosa che valga su ogni computer. In generale, il rapporto fra il bus e la frequenza delle RAM viene chiamato "divisore", anche se in realtà le RAM lavorano ad una frequenza maggiore di quella del bus.
L'overclock delle memorie non è un'operazione che influisce sensibilmente sulle prestazioni, solitamente viene eseguita per permettere al processore di salire ulteriormente in frequenza (anche la CPU lavora ad una velocità multipla di quella del bus), oppure per la semplice curiosità di scoprire il limite dei propri moduli.
SINGLE, DUAL E TRIPLE CHANNEL
Le memorie possono lavorare in queste tre modalità: single channel, dual channel e triple channel. La prima è quella standard e può essere utilizzata da qualsiasi configurazione.
Per sfruttare il dual channel invece (posto che la scheda madre lo permetta) bisogna montare una coppia di moduli identici (o quasi) negli slot dello stesso colore: per esempio nella foto sottostante, per far lavorare due moduli in dual channel dovremmo montarli nei due socket gialli o nei due arancioni; in caso di 4 moduli uguali (o almeno identici a coppie) potremmo occupare tutti gli slot sfruttando questa tecnologia. Questa possibilità è disponibile per tutte le attuali tipologie di RAM, quindi DDR, DDR2 e DDR3.

Il triple channel, com'è facile intuire dal nome, funziona allo stesso modo ma a gruppi di 3 moduli; per esempio nell'immagine sottostante sarà possibile far operare in triple channel tre moduli uguali montandoli negli slot rosso o in quelli neri.
In questo momento le uniche piattaforme (escluse quelle professionali per server) a poter sfruttare il triple channel sono quelle basate su Intel con socket LGA 1366 con moduli DDR3. Teoricamente è possibile sfruttare il dual channel montando una coppia di moduli adatti su due di tre slot dello stesso colore.

Come funzionano queste tecnologie?
L'obiettivo di queste innovazioni è quello di evitare colli di bottiglia da parte delle RAM a danno dei processori, raddoppiando o triplicando (rispettivamente dual o triple channel) la larghezza di banda totale del bus di sistema. In parole povere, il canale col quale comunicano CPU e RAM porta 64 bit alla volta, e con queste tecniche si aumenta questa larghezza a 128 o 192 bit.
L'aumento delle prestazioni è reale?
Nel caso del dual channel, la risposta purtroppo è NO. Svariati test hanno dimostrato che nell'uso quotidiano non c'è alcun aumento percettibile di prestazioni. Nel caso del triple channel invece, la situazione migliora.
Il dual channel è ormai presente su ogni scheda madre, di conseguenza è bene sfruttarlo visto che non costa nulla. E per le piattaforme adatte al triple channel, ovviamente vale lo stesso discorso.
RAM REGISTERED (O BUFFERED), RAM ECC E TECNOLOGIE SERVER
Le RAM registered (o buffered) e/o ECC entrano in gioco per lo più in ambito server, al fine di montare più moduli di memoria e/o ridurre gli errori nella trasmissione dei dati. Queste tecnologie sono assolutamente inutili nei computer "casalinghi": fanno lievitare il prezzo del sistema poiché non solo devono essere implementate nelle RAM, ma devono anche essere supportate dalla scheda madre, oltre al fatto che un controllo degli errori di questo tipo non è necessario per un utilizzo normale del PC.
Ma vediamo nel dettaglio queste caratteristiche, che possono essere presenti anche sullo stesso modulo:
- registered (o buffered): i moduli di questo tipo, chiamati anche R-DIMM, vengono montati su sistemi dove è presente un componente intermedio fra le RAM ed il memory controller (quest'ultimo, lo ricordiamo, ha il compito di mettere in comunicazione CPU e memorie). Questo componente serve a sgravare il controller da una parte del carico elettrico, permettendogli di gestire più moduli e montare quindi una quantità complessiva di RAM maggiore. In questo modo aumenta il prezzo e diminuiscono le prestazioni, visto che i dati devono passare attraverso un'altro componente;
- ECC (error-correcting code): normalmente i dati vengono trasportati dentro e fuori dalle RAM a pacchetti di 1 byte (8 bit): nei sistemi che supportano l'ECC viene aggiunto un bit, arrivando così a 9, che viene calcolato in base agli altri 8 dal mittente, e permette al ricevente di rilevare quasi sempre uno o più errori. Oltre a far aumentare il prezzo, il controllo e l'eventuale correzione in tempo reale dei dati rallentano il sistema;
- FB-DIMM (Fully Buffered DIMM): si tratta di un modo per risparmiare spazio sulle schede madri al fine di renderle più piccole a parità di slot, o di aumentare il numero di moduli a parità di grandezza: il risparmio di spazio sta nel numero minore di linee per la trasmissione dei segnali, che permette di montare un numero di slot 3-4 volte superiore al normale.
COSA SUCCEDE QUANDO TUTTA LA RAM E' OCCUPATA?
In questa condizione (che però non dovrebbe verificarsi mai in un sistema ben strutturato) i dati che dovrebbero andare in RAM vengono salvati temporaneamente in una zona dell'hard disk detta area di swap. Essendo questi dischi comunque estremamente più lenti della RAM, essa non può essere utilizzata continuamente perché rallenterebbe drasticamente l'utilizzo del computer.
PRIMA DI COMPRARE RAM, CONTROLLATE IL VOSTRO SISTEMA OPERATIVO!
Esistono due tipi di sistemi operativi: quelli a 32 bit (chiamati anche x86 o x32, anche se quest'ultima denominazione è errata) e quelli a 64 bit (o x64); per verificare il vostro tipo di sistema, da Windows cliccate col tasto destro su "Computer" o "Risorse del computer" e dalla scheda "Proprietà" verificate la tipologia.
Se siete su un 32 bit sarà inutile installare più di 3 GB di RAM poiché il limite di memoria realmente utilizzabile da questi sistemi varia a seconda dell'hardware da 3.25 GB a 3.50 GB, all'incirca. Nel caso dei 64 bit, non c'è limite alla massima RAM installabile, pertanto se volete installare 4 o più GB di memoria utilizzate questi sistemi (che quando possibile sarebbero da utilizzare lo stesso visto che sono più veloci). Per installare un 64 bit è necessario anche un hardware che lo supporti, ma ormai lo fanno quasi tutti i PC fissi e molti portatili.
Piccolo approfondimento per i curiosi: ma... perché ciò?
Esistono delle piccolissime memorie all'interno del processore, estremamente veloci (più di ogni RAM, SSD o cache del processore stesso) chiamate registri: uno di questi è quello degli indirizzi della memoria, cioé quello che contiene gli indirizzi dei dati presenti in RAM, ed esso può essere da 32 o 64 bit, a seconda di CPU e sistema operativo.
In memoria RAM i dati vengono salvati a "pacchetti" di 1 byte, come detto in precedenza. Ora, se si ha per esempio un sistema da 32 bit (ricordiamoci che tutto nei computer funziona in binario, solo 0 e 1, quindi 32 = 2^32), la massima quantità di dati che potrà indirizzare sarà 2^32 byte.
Facciamo un rapido calcolo:
massima quantità di dati indirizzabile = 2 ^ 32 byte = 4294967296 byte
trasformiamolo in KB (essendo che 1 KB = 1024 byte, basterà dividere per 1024) -> 4294967296 / 1024 = 4194304 KB
con un'altra divisione arriviamo ai MB -> 4194304 / 1024 = 4096 MB
4096 non sono altro che i fatidici 4 GB. Ma il limite non era un po' meno? Si, infatti in questi 4 GB ci devono stare anche gli indirizzi necessari al funzionamento dell'hardware e delle periferiche (tastiera ad esempio): per questo la massima RAM sfruttabile dipende dal proprio computer.
E con i sistemi a 64 bit il limite quant'è?
Beh, facendo gli stessi calcoli...
2^64 byte = 18446744073709551616 byte =
= 18014398509481984 KB =
= 17592186044416 MB =
= 17179869184 GB = <- (qua cominciate a capire di che grandezze si parla)
= 16777216 TB (TeraByte) =
= 16384 PB (PetaByte) =
= 16 EB (ExaByte)
Vi bastano 17 e rotti miliardi di GB di RAM? Ovviamente questi sono limiti teorici, ma in ogni caso l'evoluzione hardware al momento non permette nulla di simile.
Diffidate di chi spaccia per funzionanti metodi che fanno rilevare ai 32 bit 4 GB di RAM: effettivamente si, li rilevano, ma non li utilizzano come tali.
Tutto ciò è teorico, i limiti reali sono estremamente più bassi: per le versioni x64 di Windows più recenti ad esempio, si parte dal misero limite di 2 GB di 7 Starter al colossale 2 TB di alcune versioni di Windows Server 2003, passando attraverso i 128 GB di Vista.
Va detto che, se volessimo essere pignoli fino in fondo, dovremmo utilizzare le unità di misura corrette, ovvero KiB (KibiByte), MiB (MebiByte) e così via, che sono quelle che vanno di 1024 in 1024 (questo perché 1024 è una potenza di 2, per la precisione 2^10, quindi facilmente utilizzabile in binario), mentre KB, MB, GB ecc... dovrebbero andare di 1000 in 1000. Purtroppo però un utilizzo sbagliato di queste unità negli anni ha portato una gran confusione (e anche qualche fregatura sulle memorie di massa).
CHE RAM SCELGO? MEGLIO FREQUENZA MAGGIORE O LATENZE MINORI? E LA MARCA? (OSSERVAZIONI FINALI)
Va detto innanzitutto che, nonostante tutti gli aspetti analizzati in questa guida, quello fondamentale rimane la quantità complessiva di memoria installata sul sistema; vanno però ovviamente comprati moduli adatti alla propria scheda madre, su una motherboard DDR2 non potremo mai montare delle DDR3.
Premesso questo, com'è facile notare dando un'occhiata alle caratteristiche dei vari moduli, mediamente all'aumentare della frequenza aumentano anche le latenze. Nel caso delle DDR2, è sufficiente una velocità di 800 MHz, con timings più bassi possibile, mentre per le DDR3 non si notano più aumenti sensibili delle prestazioni oltre i 1333 MHz, ed anche qui è meglio mantenersi su latenze più basse possibile. In ogni caso, è meglio un frequenza più alta con latenze più alte che una velocità minore con timings più bassi.
Per quanto riguarda la quantità, per un uso medio del PC (compresi i videogiochi), 4 GB vanno benissimo, possibilmente in kit da due moduli ognuno da 2 GB, montati in dual channel.
Per chi fa un utilizzo basilare del computer senza videogames o applicazioni pesanti, e non tiene molti programmi aperti contemporaneamente, anche 2 GB possono bastare; tuttavia con l'uscita di nuovi sistemi operativi la richiesta di memoria RAM solitamente aumenta, e nell'ottica di un'acquisto longevo meglio non essere risicati con la memoria.
Per coloro che invece fanno un utilizzo massiccio del computer, per esempio pesanti rendering 3D, montaggio e conversioni audio/video ecc... possono essere utili 8 GB di memoria (6 o 12 in triple channel in caso di sistemi DDR3 che lo supportino), accompagnati da un disco veloce ed un processore adatto.
Qualunque sia l'utilizzo che farete del computer, esso va sempre ottimizzato dal punto di vista software, altrimenti vi ritroverete spazio in RAM occupato inutilmente che vi rallenterà il sistema.
Se non fate overclock, la marca non ha importanza a parità di specifiche; se invece intendete avventurarvi in questa pratica, controllate online quale marca ha prodotto i chip in grado di lavorare a frequenze molto fuori specifica. E' impossibile dare un consiglio generale, ad ogni generazione un marchio diverso riesce a produrre i moduli più adatti all'overclock.
Fanno eccezioni i sistemi triple channel, nei quali sono sufficienti 3 GB, o in alternativa 6 GB, in kit da tre moduli, in modo da sfruttare la banda triplicata.
Come sempre grazie agli altri dello staff che si son fatti du palle a leggerla in cerca di errorini vari, e grazie a .bucch per le info sui limiti di RAM dei vari sistemi windows, ovviamente aspetto critiche commenti e consigli per migliorarla //content.invisioncic.com/a283374/emoticons/smile.png
La riproduzione parziale o totale della parte testuale di questa guida è assolutamente vietata.
a voi la parola :kaname:
Ultima modifica da un moderatore: