|
Memoria - notiuni de baza

Industria
memoriilor este una dintre cele mai dinamice aplicatii ale electronicii
din zilele noastre. In ultimi ani chip-urile de memorie au avansat intr-un
ritm alert, ceea ce a dus la o scadere dramatica a pretului/MB. Factorul
principal care a dus la cresterea productiei fiind cererea de memorie,
care a crescut datorita programelor ce utilizeaza tot mai multa memorie
dar si datorita avantajului (d.p.d.v. al performantelor) pe care memoria
RAM il ofera in comparatie cu alte tehnologii de stocare a informatiei. In
acelasi timp performantele noilor module au fost imbunatatite, au scazut
timpii de acces iar viteza bus-ului a crescut. Toate aceste caracteristici
au fost implementate din cauza mai multor factorii de ordin tehnic, unul
dintre acestia ar fi evolutia procesoarelor, care prin cresterea
frecventei introduc necesitatea cresterii performantelor pentru memorii.
In lungul timpului memoriile au fost construite prin prisma mai multor
tehnologii, dintre acestea doar o parte au reusit sa se impuna pe piata.
Principalul motiv fiind, dupa cum multi dintre noi cunosc, raportul pret/perfomanta.
In continuare, prin acest articol ne propunem o scurta descriere a
modului de functionare pentru cele mai raspindite memorii existente pe
piata cit si avantajele/dezavantajele tehnologiilor existente.
Clasificare, memoriile utilizate in PC se clasifica in doua categorii
:
- ROM (Read Only Memory) acest tip memorie nu poate fi rescrisa ori
stearsa. Avantajul principal pe care aceasta memorie il aduce este
insensibilitatea fata de curentul electric. Continutul memoriei se
pastreaza chiar si atunci cind nu este alimentata cu energie.
- RAM (Random Access Memory), este memoria care poate fi citita ori
scrisa in mod aleator, in acest mod se poate accesa o singura celula a
memoriei fara ca acest lucru sa implice utilizarea altor celule. In
practica este memoria de lucru a PC-ului, aceasta este utila pentru
prelucrarea tempoarara a datelor, dupa care este necesar ca acestea sa
fie stocate (salvate) pe un suport ce nu depinde direct de alimentarea
cu energie pentru a mentine informatia.
Memoria ROM este in general utilizata pentru a stoca BIOS-ul
(Basic Input Output System) unui PC. In practica, o data cu evolutia PC-urilor
acest timp de memorie a suferit o serie de modificari care au ca rezultat
rescrierea/arderea "flash" de catre utilizator a BIOS-ului. Scopul,
evident, este de a actualiza functiile BIOS-ului pentru adaptarea noilor
cerinte si realizari hardware ori chiar pentru a repara unele
imperfectiuni de functionare. Astfel ca in zilele noastre exista o
multitudine de astfel de memorii ROM programabile (PROM, EPROM, etc) prin
diverse tehnici, mai mult sau mai putin avantajoase in functie de gradul
de complexitate al operarii acestora.
BIOS-ul este un program de marime mica (< 2MB) fara de care
computerul nu poate functiona, acesta reprezinta interfata intre
componentele din sistem si sistemul de operare instalat (SO).
Memoria RAM se clasifica in SRAM (Static) si DRAM (Dynamic).
- SRAM, acest tip de memorie utilizeaza in structura celulei de
memorie 4 tranzistori si 2 rezistente. Schimbarea starii intre 0 si 1 se
realizeaza prin comutarea starii tranzistorilor. La citirea unei celule
de memorie informatia nu se pierde. Datorita utilizari matricei de
tranzistori, comutarea intre cele doua stari este foarte rapida.
- DRAM are ca principiu constructiv celula de memorie formata dintr-un
tranzistor si un condensator de capacitate mica. Schimbarea starii se
face prin incarcarea/descarcarea condensatorului. La fiecare citire a
celulei, condensatorul se descarca. Aceasta metoda de citire a memoriei
este denumita "citire distructiva". Din aceasta cauza celula de memorie
trebuie sa fie reincarcata dupa fiecare citire. O alta problema, care
micsoreaza performantele in ansamblu, este timpul de reimprospatare al
memoriei, care este o procedura obligatorie si are loc la fiecare 64 ms.
Reimprospatarea memoriei este o consecinta a principiului de functionare
al condensatoriilor. Acestia colecteaza electroni care se afla in
miscare la aplicarea unei tensiuni electrice, insa dupa o anumita
perioada de timp energia inmagazinata scade in intensitate datorita
pierderilor din dielectric. Aceste probleme de ordin tehnic conduc la
cresterea timpul de asteptare (latency) pentru folosirea memoriei.
Datorita raspindiri vaste a memoriei de tip DRAM, am sa exemplific
modul de functionare a celulei de memorie in baza acestei tehnologii.
Celula de memorie, este cea mai mica unitate fizica a
memoriei. Este compusa din componente electronice discrete. Principiul de
functionare este in fapt modificarea starii logice intre 0 si 1 care la
nivel fizic, in functie de tehnologia utilizata, corespunde cu
inmagazinarea energiei electrice prin intermediul unui condensator (pentru
DRAM), ori cu reconfigurarea matricei de tranzistori (in cazul SRAM).
Celula de memorie din punct de vedere logic este tratat ca fiind un
bit. Cea mai mica unitate logica adresabila a memoriei este formata din
opt biti si ia denumirea byte. Acesta ofera posibilitatea obtineri a 256
combinatii (caractere). Prin gruparea a opt bytes se obtine un cuvint
(word). Constructiv, din motive ce tin de design, celulele de memorie sint
organizate sub forma unor matrici.
Pentru identificarea si accesarea celulelor de memorie, acestea
dispun de o adresa unica pentru fiecare celula in parte. Identificarea
celulei de memorie se face prin transmiterea adresei acesteia prin BUS-ul
de adrese catre decodorul de adrese (format din decodoare pentru linie si
coloana), acesta identifica celula de memorie care corespunde adresei
primite si transmite continutul acesteia catre interfata de date iar
aceasta mai departe, catre BUS-ul de date.
Magistrala pentru adrese (BUS adrese) este conexiunea intre
chipset-ul placii de baza si memorie, aceasta este puntea de legatura prin
care adresele sunt transmise catre decodor.
Decodorul de adrese este format din decodorul de linie si cel
de coloana, acesta receptioneaza adresa celulei de memorie pe care o
imparte in doua, prima parte fiind transmisa catre decodorul de linie iar
a doua catre cel de coloana, astfel se identifica celula de memorie
corespunzatoare.
Matricea de memorie este structura prin care celulele de
memorie sunt ordonate pe linii si coloane.
Interfata pentru date contine un amplificator de semnal,
acesta receptioneaza informatiile stocate in celulele de memorie,
amplifica semnalul, reincarca memoria si transmite informatia prin BUS-ul
de date catre chipset (in cazul in care informatia este citita din memorie).
Pentru scriere procedeul se inverseaza.
Magistrala pentru date (BUS date) este conexiunea intre
chipset-ul placi de baza si memorie, aceasta ofera posibilitatea
transmiterii informatiilor ce trebuiesc prelucrate de catre procesor ori
stocate in memorie.
In general celulele de memorie nu pot fi accesate individual, din
acest motiv, constructiv matricea de memorie este incapsulata intr-un
chip. Chip-urile de memorie sunt asamblate pe un modul de memorie (circuit
imprimat) in numar de opt. Acestea sint conectate la magistrala de adrese
si la cea pentru date. Astfel se obtine o celula de memorie virtuala,
formata din 8 biti (1 byte). Modulele de memorie la randul lor sint
organizate in bancuri de memorie, acestea sunt conectate intre ele in
acelasi mod ca si chip-urile.
Daca luam ca exemplu un procesor ce lucreaza pe 16 biti si vechile
module de memorie de tip SIMM care functionau numai in perechi. Ne punem
intrebare, de ce cite doua?
Acest lucru se intimpla datorita procesorului, care are nevoie de 16
biti pentru a umple magistrala de date, avind in vedere ca un modul de
memorie detine numai 8 biti, doua astfel de module au fost conectate intre
ele, in acest mod sa obtinut o magistrala pentru date cu latimea de 16
biti.
Timpul de asteptare, pentru efectuarea tuturor operatiilor ce
aduc informatia in interfata pentru date este necesar un anumit timp, care
este identificat sub numele "latency". Astfel ca, pentru transmiterea
adreselor intre procesor, chipset si memorie se utilizeaza 2 cicluri de
tact. Pentru identificarea celulei de memorie se parcurg doua operatii.
Identificarea liniei din matrice, pentru care avem nevoie de 2/3 cicluri
(in functie de calitatea memoriei utilizata), aceasta perioada se numeste
RAS (Row Address Strobe) to CAS (Column Address Strobe) delay si
identificarea coloanei (CAS latency) pentru care se consuma aproximativ
acelasi timp ca si pentru prima operatie (2/3 cicluri). Pentru
transmiterea informatiei catre interfata de date se consuma 1 ciclu iar
pentru ultima operatie, transmiterea datelor catre chipset si apoi catre
procesor, inca 2 cicluri.
Dupa transmiterea informatiilor, in cazul in care cererea emisa de
procesor este mai mai mare decit latimea magistralei pentru date,
urmatoarele cuvinte sint transmise catre procesor in modul rafala "burst
mode" la fiecare ciclu de tact, acest lucru este posibil datorita unui
numarator intern care identifica urmatoarea coloana si transmite catre
amplificator continutul.
Deosebiri SRAM/DRAM
Principalul avantaj al memoriei dinamice (DRAM) este pretul foarte
redus pentru obtinerea unei celule. De altfel, acesta este si singurul
plus pe care aceasta memorie il are in comparatie cu SRAM. In schimb
performantele sint cu mult in urma memoriei statice (SRAM). Datorita
modului prin care se comuta intre starile 0 si 1 si a modului in care se
executa citirea celulei de memorie, SRAM nu are nevoie de rescriere a
datelor dupa ce acestea au fost citite si nici de reimprospatarea celulei
de memorie. Atfel ca timpii de acces sint mult mai mici iar viteza la care
acest tip de memorie lucreaza depaste cu mult performantele memoriei
dinamice. Datorita pretului de cost mare pentru obtinerea unei celule
SRAM, acest tip de memorie este utilizat numai pentru fabricarea memoriei
cache ce se implementeaza in placile de baza sub denumirea de cache level
2 (L2) ori pentru memoria cache level 1 (L1) ce este integrata in
structura procesoarelor. Memoria cache L1 functioneaza la aceasi frecventa
cu cea a procesorului in timp ce pentru memoria cache L2 frecventa de
lucru este jumatate fata de frecventa procesorului. Memoria cache a fost
introdusa ca un artificiu tehnologic, care trebuie sa suplineasca
diferenta de frecventa dintre procesor si memorie.
Lista completa articole ... |