|
MEMORII RAM
ARGUMENT
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 (din punct de vedere 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.
Aceasta componenta permite lucrul cu diferitele informatii din sistem. Exista doua mari categorii de memorii: RAM Random Access memory (memorie cu acces aleator) si ROM Read Only Memory (memorie doar pentru citire).
Ele sunt circuite electronice care pot memora o anumita cantitate de informatie.
Unii includ in termenul de memorie si orice dispozitiv pentru stocarea datelor, cum sunt discurile, dar ne referim aici numai la memoria RAM sau memoria de sistem, cea care se sterge la oprirea sistemului. Prin memoria de sistem se intelege acea components care are rolul de a stoca temporar date folosite de computer in timpul functionarii sale. Fizic, este vorba de niste placute care se monteaza pe placa de baza, si ele contin circuite de memorie.
Orice program lansat in executie manevreaza diverse date, si pe perioada procesarii acestora ele sunt stocate in circuitele de memorie, care sunt foarte rapide in comparatie cu alte dispozitive de stocare din sistem. Cu cit un sistem are mai
multa memorie RAM, cu atit are mai mult spatiu temporar de manevrare a datelor, si poate procesa blocuri mai mari de date, sau poate lucra simultan cu mai multe programe. Cand memoria RAM ajunge sa se umple, sistemul incepe sa functioneze mai greu.
Poti vedea cata memorie RAM are sistemul tau chiar de la pornire, cind se face un test initial al circuitelor de memorie, si apare un contor care avanseaza rapid pina la volumul total al memoriei instalate. Un sistem cu performante medii are astazi 128 MB de memorie RAM. In lipsa memoriei RAM, sau daca memoria RAM este defecta, sistemul poate refuza sa porneasca, deci si memoria este o componenta vitala a computerului. Unii includ in termenul de memorie si orice dispozitiv pentru stocarea datelor, cum sunt discurile, dar ne referim aici numai la memoria RAM sau memoria de sistem, cea care se sterge la oprirea sistemului. Prin memoria de sistem se intelege acea componenta care are rolul de a stoca temporar date folosite de computer in timpul functionarii sale. Fizic, este vorba de niste placute care se monteaza pe placa de baza, si ele contin circuite de memorie.
MEMORIA RAM
(Random Access Memory)
Este denumirea generica pentru orice tip de memorie care define urmatoarele caracteristici: poate fi accesata aleator (nu secvential, precum benzile magnetice), este volatila (la Tntreruperea alimentarii cu energie electrica, datele stocate se pierd) si se prezinta sub forma de cip-uri (asadar excludem dispozitivele magnetice sau optice, precum hard disk-urile sau CD-urile). Utilitatea memoriei RAM este foarte mare, ea beneficiind in plus fata de alte medii de stocare a informatiilor de o viteza extrem de mare, fund de mii de ori mai rapida decat un hard disk, de exemplu.
Deoarece memoria RAM se monteaza pe placa de baza, si exists citeva tipuri distincte de arhitectura a placutelor de memorie, orice adaugare sau inlocuire de memorie RAM trebuie facuta tinind cont de ceea ce poate fi montat pe placa ta de baza. O placa de baza poate suporta numai un anumit tip (uneori 2 tipuri, dar nu simultan) de placute de memorie.
Orice program lansat in executie manevreaza diverse date, si pe perioada procesarii acestora ele sunt stocate in circuitele de memorie, care sunt foarte rapide in comparatie cu alte dispozitive de stocare din sistem. Cu cit un sistem are mai multa memorie RAM, cu atit are mai mult spatiu temporar de manevrare a datelor, si poate procesa blocuri mai mari de date, sau poate lucra simultan cu mai multe programe. Cind memoria RAM ajunge sa se umple, sistemul incepe sa functioneze mai greu.
Poti vedea cita memorie RAM are sistemul tau chiar de la pornire, cind se face un test initial al circuitelor de memorie, si apare un contor care avanseaza rapid pina la volumul total al memoriei instalate. Un sistem cu performante medii are astazi 128 MB de memorie RAM. In lipsa memoriei RAM, sau daca memoria RAM este defects, sistemul poate refuza sa porneasca, deci §i memoria este o components vitala a computerului.
Memoria RAM este volatila, in sensul ca ea pierde toata informatia inmagazinata,la inchiderea calculatoruli. Memoria ROM este nevolatila, in sensul ca ea pastreaza nealterata informatia chiar si dupa inchiderea calculatorului.
Unitatea cea mai mica de masura a informatiei este bit-ul El ne arata daca un eveniment a avut sau nu a avut loc si este reprezentat printr-o valoare 0 sau 1. 8 biti formeaza un octet sau un byte sau bait. In general o celula de memorie poate memora o informatiede 8 biti deci un bait.
Capacitatea memoriei se masoara de obicei in megabaiti. Avem marimi standard de 32 Mb megabaiti, 64 Mb, 128Mb,256 Mb 512 Mb etc.
Memoria volatila (memoria nepermanenta sau memoria interna) RAM: Este memoria de lucru a sistemului. In aceasta memorie sistemul incarca diverse programe sau aplicatii pe care microprocesorul le executa instructiune cu instructiune.
Obs. Program: un sir imens de instructiuni elementare pe care microprocesorul le executa pas cu pas. Poate fi comparat cu o reteta pentru prepararea unei prajituri pe care gospodina, aici microprocesorul, o urmareste pas cu pas pentru a obtine un rezultat bine definit.
Aplicatie: o multime finita de programe care impreuna rezolva o problems foarte complexa.
In continuare, este prezentata o scurta descriere a modului de functionare pentru cele mai raspindite memorii existente pe piata cit si avantajele si dezavantajele tehnologiilor existente.Este o memorie in care se poate scrie si din care se poate citi. La scoaterea de sub tensiune a sistemului, informatiile scrise aici se pierd. Memoria RAM pastreaza programele sistemului de operare al utilizatorului, iar utilizatorul are acces la aceasta.
Capacitatea memoriei interne a unui calculator este dimensiunea memoriei RAM si este o caracteristica de performanta a sistemului. De memoria RAM depinde lungimea maxima a unui program care poate fi incarcat intr-o sesiune de lucru si executat de procesor.
Programele ruleaza in memoria interna a calculatorului. Acest lucru inseamna ca datele si programul sunt incarcate in memoria interna, instructiunile sunt executate de microprocesor iar rezultatele sunt aduse in memoria interna.
Numarul de biti din memoria interaa este constant. Cand un program este incarcat intr-o zona de memorie, comutatoarele de aici sunt setate sa reprezinte instructiuni, date sau biti ramasi liberi. Transferul de biti in si din memorie este realizat de microprocesor, care executa doua operatii:
-depoziteaza secventele de biti in memorie (store);
-extrage secventele de biti din memorie (fetch).
Depozitarea secventelor de biti in memorie se face prin schimbarea starii comutatoarelor astfel incat sa reprezinte noile valori, vechile valori fiind sterse.
Extragerea secventelor de biti din memorie inseamna copierea acestor biti in registrele procesorului, fara modificarea starii comutatoarelor din memorie.
Dupa perioada de inceput, cand chip-urile de memorie se Tnfigeau pur si simplu in placa de baza, primul model uzual a fost SIMM-ul pe 30 de pini, urmat de eel pe 72 de pini. SIMM (Single Inline Memory Module), modulul prezentand o latime de banda de 8 biti pentru prima versiune si de 32 pentru cea de-a doua; dimensiunea fizica a SIMM-ului pe 30 de pini este de doua ori mai mica decat in cazul celeilalte variante. Diferentele de viteza dintre ele corespund perfect perioadei de glorie: daca prima versiune era uzuala pe timpul sistemelor 286 si 386, SIMM-ul pe 72 de pini a stat la baza generatiei 486, Pentium si Pentium Pro. Chip-urile folosite au fost de tip DRAM, FPM si, mai tarziu, EDO DRAM.
Urmasul lui SIMM s-a chemat DIMM (Dual Inline Memory Module). Dupa cum Ti spune si numele, el ofera o latime de banda de 64 de biti, dubla fata de SIMM-urile pe 72 de pini, avand la baza un fel de dual-channel intern, daca ni se permite comparatia. Numarul de pini a fost de 168 sau de 184 de pini, in functie de tip: SDRAM sau DDR SDRAM. A existat si un numar limitat de modele de DIMM bazate pe EDO DRAM dar ele nu au avut succes pentru ca trecerea de la SIMM la DIMM a coincis cu cea de la EDO la SDRAM. RIMM (Rambus Inline Memory Module) este modelul constructiv al memoriilor RDRAM. Numarul de pini este de 184 (ca si la DDR SDRAM) dar asemanarile se opresc aici, configuratia pinilor si modul de lucru fiind total diferit. Mai sunt de amintit modulele SO-DIMM, destinate calculatoarelor portabile, care detin un numar diferit de pini: 184 pentru SDRAM si 200 pentru DDR SDRAM. Practic vorbind, montarea modulelor SIMM era o operatie greoaie si necesita experienta si indemanare.
Odata cu modulele DIMM (si RIMM, care au acelasi sistem de prindere) chinul a fost dat uitarii, oricine putand monta o memorie, fiind necesara doar putina atentie. Montarea inversa a unui DIMM (care necesita, totusi, destula forta) duce intotdeauna la arderea memoriei.
Random Access Memory (Memorie cu acces aleator) este un tip de memorie a calculatorului folosita pentru rularea programelor. Memoria RAM este eel mai des intalnit tip de memorie la calculatoare si alte periferice.
Memoria cea mai des folosita pentru calculatoare este cea de tip DRAM (Dynamic RAM). Ea trebuie sa fie improspatata de cateva mii de ori pe secunda pentru pastrarea informatiei. Celalalt tip de memorie, SRAM (Static RAM) nu necesita reimprospatare, ceea ce il face mult mai rapid, dar este semnificativ mai scump.
Memoria RAM se caracterizeaza prin timpi mici de acces (ceea ce permite o viteza de rulare maxima a programelor) si volatilitate (informatiile se pierd atunci cand memoria nu mai este alimentata).
Doua elemente care influenteaza viteza, stabilitatea si pretul memoriilor ar fi functiile ECC si Registered, integrate in unele module de memorie. Cele ECC (Error Correction Code) detin o functie speciala care permite corectarea erorilor ce apar pe parcursul utilizarii iar cele Registered (numite si Buffered), detin un buffer (zona de memorie suplimentara) care depoziteaza informatia inainte ca ea sa fie transmisa controller-ului, permitand verificarea riguroasa a acesteia. Memoriile Registered sunt mai lente decat cele normale sau ECC si extrem de scumpe, folosirea lor fiind justificata doar in cazuri speciale, cand corectitudinea informatiilor prelucrate si stabilitatea sistemului este yitala, de exemplu in cazul server-elor. In general, atat timp cat memoria nu este supusa unor situatii anormale de functionare (frecventa, tensiune sau temperatura in afara specificatiilor) ea ofera o stabilitate extrem de apropiata de perfectiune, arhisuficienta pentru un calculator obisnuit.
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 BlOS-uIui. Scopul, evident, este de a actualiza functiile BlOS-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 ?ntre componentele din sistem si sistemul de operare instalat (SO).
In configuratia unui sistem de calcul intalnim doua mari tipuri de memorii - RAM si ROM. Memoria este spaliul de lucru primar al oricarui calculator . Lucrand in tandem cu CPU (procesorul) are rolul de a stoca date li de a procesa informatii ce pot fi procesate imediat si in mod direct de catre processor sau alte dispozitive ale sistemului . Memoria este de asemenea legatura dintre software si CPU .
Din punct de vedere intern memoria RAM este aranjata intr-o matrice de celule de memorie , fiecare celula fiind folosita pentru stocarea unui bit de date (Osaul logic) . Datele memorate pot fi gasite aproape instantaneu (timp de ordinul zecilor de ns) prin indicarea randului si coloanei la intersectia carora se afla celula respectiva . Se deosebesc doua tipuri de memorie :
SRAM(Static Ram) si DRAM(Dynamic Ram).
Tehnologia DRAM este cea mai intalnita in sistemele actuale , trebuind sa fie reimprospatata de sute de ori / secunda pentru a retine datele stocate in celulelede memorie (de aici vine si numele) ; fiecare celula este conceputa ca un mic condensator care stocheaza sarcina electrica .
Este prezenta sub doua tipuri de module : SIMM-urile si DIMM-urile . SIMM-ul a fost dezvoltat cu scopul de a fi o solutie usoara pentru upgrade-uri . Magistral a de date este pe 32 biti, fizic modulele prezentanJ 72 sau 30 de pini. DIMM-ul a fost folosit intai la sistemele Maclntosch dar a fost adoptat pe PC-uri datorita magistralei pe 64 de biti , avand 128 pini.
Tipurile de memorie DRAM sunt: FPM (Fast Page Mode), EDO(Extended Data Out), SDRAM (Synchronous DRAM). Cele mai rapide sunt SDRAM-urile , fiind si cele mai noi, oferind timpi de acces mici (8ns).
RAM este o memorie volatila, ceea ce face ca informatia continuta aici sa se piarda la decuplarea calculatorului de sub tensiune. Aceasta este memoria care poate fi citita ori scrisa in mod aleator, in acest mod putindu-se 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.In memoria RAM se incarca sistemul de operare si programele de aplicatie. Este o memorie cu viteza de acces foarte mare(actual 8-10 ns).Daca in urma cu cativa ani ea era caracterizata dupa timpul de acces(60-70 ns), acum este caracterizata de viteza de bus la care lucreaza cu procesorul(momentan existand memorie functionand pe bus de 66, 100,133 Mhz.
TIPURI DE MEMORII RAM
Exista doua tipuri principale de RAM: memorie statica (SRAM = Static RAM) si dinamica (DRAM = Dynamic RAM), diferentele constand in 'stabilitatea' informatiilor. Astfel, memoria statica pastreaza datele pentru o perioada de timp nelimitata, pana in momentul in care ea este rescrisa, asemanator unui mediu magnetic. In schimb, memoria dinamica necesita rescrierea permanenta, la cateva fractiuni de secunda, altfel informatiile fiind pierdute. Avantajele memoriei SRAM: utilitatea crescuta datorita modului de functionare si viteza foarte mare; dezavantaj: pretul mult peste DRAM. In realitate, memoria de tip SRAM este folosita eel mai adesea ca memorie cache pe cand DRAM-ul este uzual in PC-urile moderne, fiind prezent in primul rand ca memorie principals a oricarui sistem. De acest din urma tip ne vom ocupa in continuare, enumerand tipurile uzuale de DRAM prezente de-a lungul istoriei, toate concepute in scopul cresterii performantelor DRAM-ului standard: FPM DRAM (Fast Page Mode DRAM), EDO DRAM (Extended Data Out DRAM), BEDO RAM (Burst EDO DRAM), RDRAM (Rambus DRAM), in prezent impunandu-se SDRAM (Synchronous DRAM), cu variantele DDR SDRAM (Double Data Rate SDRAM) si DDR2 SDRAM. De asemenea, pentru placile grafice au fost concepute mai multe tipuri de memorie, printre care VRAM (Video RAM), WRAM (Windows RAM), SGRAM (Synchronous Graphics RAM) si GDDR3, ele fiind variante de DRAM (primele doua), SDRAM si respectiv DDR2 SDRAM, optimizate pentru a fi folosite ca memorie video.
SRAM : acest tip de memorie utilizeaza in structure 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. 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 Tntre 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 fund 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 eel 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 eel 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 confine un amplificator de semnal, acesta receptioneaza informatiile stocate in celulele de memorie, amplifica semnalul, retnearca 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 Tncapsulata intr-un chip. Chip-urile de memorie sunt asamblate pe un modul de
memorie (circuit imprimat) in numar de opt. Acestea sunt 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 rindul lor sunt 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 define 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 as.teptare, 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 nume§te RAS (Row Address Strobe) to CAS (Column Address Strobe) delay si identificarea coloanei (CAS latency) pentru care se consuma aproximativ acela§i 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 numerator intern care identifies urmatoarea coloana si transmite catre amplificator continutul. Este o memorie din care se poate citii si pe care se poate scrie. Ca si procesorul si memorile au o anumita viteza(66, 100, 133Mhz)
Exista mai multe tipuri de memorieRAM:
- EDO care are 32 de pini -SDRAM care are 72 de pini
-RDRAM si DDRAM care sunt deasmenea pe 72 de pini dar au viteze de pana la 2400 MHZ.
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 ll 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 (Ll) ce este integrate in structura procesoarelor. Memoria cache Ll 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.
CARACTERISTICILE IMPORTANTE ALE UNEI
MEMORII RAM
A. Geometria sau modul de organizare a memoriei reprezentat de lungimea unui cuvant si numarul de cuvinte memorate.
B. Capacitatea memoriei; reprezentand numarul
total de biti ce pot fi memorati;
se exprima in general in multipli de Ik = 1024 de biti.
C. Timpul de acces la memorie; se exprima in [us] sau [ns] reprezentand timpul necesar pentru citirea sau scrierea unor informatii in memorie.
D. Puterea consumata; pentru caracterizarea din acest punct de vedere a unei memorii, se foloseste puterea consumata raportata al un bit de informatie, respectiv raportul dintre puterea totala consumata de circuit si capacitatea acestuia; se masoara in [uw/bit].
E. Volatitatea, o memorie este volatila daca informatia inscrisa se pierde in timp; pierderea informatiei se poate datora fie modului de stocare a acesteia (memoriei dinamice fie datorita disparitiei tensiunilor de alimentare ale circuitului.
Stergerea informatiei din celula se face astfel: se aplica tensiunea pozitiva (+20 V) pe linia de selectie cuvant punand in conductie tranzistorul T. Drena acestuia se conecteaza la potential zero si se aplica +20V pe linia de programare. Datorita campului electric intern mare.
Electronii care tree din substrat prin efect tunel si se acumuleaza in grila izolata, formand o sarcina negativa.
Inscrierea informatiei in celula se face aplicand +20V pe linia selectie cuvant (WL) si +18V in drena tranzistorului in timp ce linia de programare este la potential zero. Campul electric format intre grila si substrat (substrat, grila) smulge electroni din grila a doua, aceasta acumuleaza sarcina pozitiva si tranzistorul intra in conductie prin formarea canalului 'n' intre drena si sursa.
CLASIFICARE CARACTERISTICILOR
UNEI MEMORII RAM
In functie de modul de utilizare in raport cu un sistem de calcul a acestor memorii avem urmatoarele tipuri de functii de memorare:
1. Functia de memorare cu citire si scriere de date; in aceasta categorie
intra asa numitele memorii cu acces aleator RAM (Random Acces Memory) care permit citirea si inscrierea unor noi date de catre sistemul care le utilizeaza, precum si memoriile EEPROM (Electricaly Eraseable Programmable Read Only Memory) care pot fi atat citite cat si sterse in mod selectiv si programate de catre sistemul care le utilizeaza.
2. Functia de memorare numai cu citire de date; in aceasta categorie
intra memoriile ROM (Read Only Memory), PROM (Programable Read Only Memory), EPROM (Eraseable Programable Read Only Memory) care pot fi numai citite de catre sistemul care le utilizeaza; stergerea posibila numai in cazul memoriilor de tip EPROM.
Nu este efectuata de catre sistemul utilizator si nu este selectiva in raport cu informatia inscrisa.
Asa cum este usor de observat regasirea unei informatii stocate necesita
|
furnizarea unor semnale privind locul unde se gaseste aceasta informatie. Aceste semnale constituie intrari pentru circuitul de memorie si se numesc adrese. Numerele binare memorate constituie date pentru acest circuit si ele sunt semnale de intrare atunci cand se citeste din memorie. In final trebuie sa precizam ca accesul la memorie se face la un moment de timp bine
determinat, moment necesar a fi comunicat printr-un semnal circuitului de memorie. Trebuie sa precizam ca transferul de date este bidirectional (datele intra si ies din din circuit) in cazul memoriilor RAM si EEPROM si unidirectional (datele ies din circuit) in cazul memoriilor ROM, PROM si EPROM.
Initial toate
fuzibilele memoriei sunt scurtcircuitate. Programarea unei celule inseamna
arderea fuzibilului din nodul respectiv. Pentru programare se aplica impuls pozitiv pe baza, iar linia de bit DL se
mentine la potential coborat. Curentul de emitor al tranzistorului, suficient
de mare, produce arderea fuzibilului F. Programarea se face succesiv pe fiecare
celula, selectia unei celule facandu-se prin liniile WL si DL.
Nucleul: alocarea de memorie
Un alt alocator se afla in nucleul sistemului de operare. Asa cum am spus deja, acest alocator gestioneaza atit spatiul folosit in structurile de date interne nucleului, cit si spatiu necesar proceselor care se executa Interactiunea dintre feluritele alocatoare de memorie din nucleu. Alocatorul de pagini
gestioneaza intreaga memorie fizica a masinii. El genereaza spatiu atit pentru procese (unitatea de baza fund pagina), cit si memorie pentru alocatorul intern al nucleului. Sagetile indica schimb de spatiu de memorie intre componente.
Subiectul acestui articol este cutiuta etichetata 'alocatorul intern al nucleului', desi multe din principiile indicate se aplica si celorlalte entitati. Aceste alocatoare sunt mult mai constrinse decit alocatoarele din spatiul utilizatorului; in particular trebuie sa aiba timpi de raspuns foarte mici, pentru ca pot fi chemate de parti critice din nucleu.
Cele trei alocatoare interactioneaza permanent: cind nucleul nu mai are destule zone pentru propriile lui date cere noi pagini de la alocatorul de pagini. Cind procesele utilizatorilor mor, paginile lor sunt preluate de alocatorul de pagini. Cind alocatorul de pagini are putine resurse disponibile, el poate cere alocatorului intern sa returneze din memoria pe care nu o folose§te in acel moment, etc..
ALOCAREA MEMORIEI
Alocarea memoriei.
Ce este de fapt alocarea memoriei? Calculatorul poseda din fabricate o anumita cantitate de memorie (RAM). In memorie vor fl incarcate mai multe programe si datele prelucrate de ele: nucleul sistemului de operare, datele acestuia, programele utilizatorilor si datele asupra carora acestea opereaza, datele citite de la dispozitivele periferice, pachetele de date care vin si merg in reteaua in care calculatorul este conectat, bibliotecile incarcate dinamic, etc. O singura bucata mare de memorie (RAM-ul) trebuie impartita intre toate aceste entitati lacome, in asa fel Tncit sa nu se incomodeze unele pe altele. Entitatea care gestioneaza memoria, tine contabilitatea zonelor ocupate si a celor libere, care satisface cererile pentru noi zone si care re-utilizeaza zonele eliberate este alocatorul de memorie.
Alocarea memoriei este de obicei o treaba ierarhica; la baza ierarhiei se afla sistemul de operare, care are la dispozitie Tntregul RAM. Sistemul de operare da feluritelor programe ale utilizatorilor portiuni de memorie. La rindul lor, fiecare din programe gestioneaza bucatica primita de la nucleu pentru nevoile sale interne.
In acest text ne vom concentra asupra alocatorului de memorie din nucleele sistemelor de operare de tip Unix, dar vom privi superficial si asupra unor alte alocatoare. Un tratament excelent al subiectului puteti gasi in capitolul 12 din cartea 'Unix Internals', de Uresh Vahalia, publicatain anul 1996 de editura Prentice Hall. Am folosit unele dintre prezentarile din acea carte in scrierea acestui articol.
O clasificare a limbajelor din punctul de vedere al alocarii memoriei le imparte in trei categorii:
Limbaje care nu pot aloca dinamic memorie. Din aceasta categorie fac parte cele mai ancestrale limbaje: Cobol, Fortran. In aceste limbaje (eel putin in versiunile lor initiate), utilizatorul nu poate aloca dinamic memorie de loc in momentul executiei programului; toata memoria necesara trebuie sa fie alocata inainte ca programul sa porneasca in executie.
Limbaje cu alocare si dealocare explicita. Limbaje ca Pascal, C si C++ Ti permit utilizatorului sa ceara pe parcursul executiei noi zone de memorie si sa returneze memoria folosita. Utilizatorul apeleaza pentru acest scop niste functii de biblioteca. Aceste functii au fost implementate de eel care a scris compilatorul pentru limbajul respectiv. Aceste functii cer de la sistemul de operare o bucata mare de memorie pe care apoi o impart dupa necesitati; atunci cind toata bucata este consumata cer o alta de la nucleu. In Pascal functiile cu pricina sunt new si free, in C malloc si free iar in C++ new si delete. Ca functionare sunt extrem de similare; functiile din Pascal sj C++ folosesc tipul obiectelor alocate pentru a deduce cita memorie este necesara (de exemplu programatorul zice: 'vreau memorie pentru un vector de 10 intregi'); programatorii in C trebuie sa indice explicit de cita memorie au nevoie (ex.: 'da-mi si mie 40 de octeti').
Limbaje cu colectoare de gunoaie (garbage collection). Lisp si Java folosesc un mecanism extrem de interesant, prin care utilizatorul nu specifica niciodata cind vrea sa elibereze o zona de memorie (adica free() nu exista); compilatorul si un sistem de functii care se executa simultan cu programul (runtime system) deduc singure care dintre zone sunt nenecesare si le recupereaza. Lisp-ul aparent este un limbaj in care nu exista nici macar alocare dinamica (o functie de gen new); in realitate in Lisp fiecare obiect nou creat este automat alocat intr-o zona de memorie noua, fara ca utilizatorul sa trebuiasca sa specifice asta (de exemplu cind utilizatorul concateneaza doua liste, atunci sistemul aloca automat spatiu pentru lista rezultat).
Din anumite puncte de vedere, tehnica colectarii de gunoaie este cea mai preferabila. Principalul ei avantaj este ca scuteste utilizatorul de pericolul de a folosi zone de memorie nealocate, prevenind astfel aparitia unor bug-uri extrem de greu de depanat. Avantajele ei nu se opresc aici: impreuna cu o disciplina de tipuri stricta, colectarea deseurilor face demonstrarea automata a corectitudinii programelor o sarcina mult mai simpla: un demonstrator de teoreme va fi intotdeauna sigur ca o zona de memorie folosita nu este dealocata.
Pe de alta parte, colectarea de gunoaie are anumite dezavantaje: este impredictibila ca timp consumat (adica nu e clar in ce moment al executiei programului se va petrece), §i este conservative. Intrebarea daca o anumita zona de memorie va mai fi sau nu folosita de un program in viitor este in general o chestiune nedecidabila; asta inseamna ca nu se poate scrie nici un algoritm care sa raspunda la o astfel de intrebare, chiar daca are informatii complete despre programul analizat si despre datele lui de intrare. Din cauza aceasta este posibil ca un program cu coleetare automata sa pastreze alocate zone de memorie care sunt in realitate inutile, pentru ca sistemul nu are cum sa demonstreze acest lucru.
In acest articol vom vorbi mai ales despre sisteme de tipul intermediar, cu alocare si dealocare explicita. Motivele sunt multiple. In primul rind majoritatea alocatoarelor din nucleele sistemelor de operare comerciale sunt de acest tipl. In al doilea rind, chiar implementarea unui alocator cu colector va folosi idei de genul celor prezente in alocatoarele explicite. si in al treilea rind, colectarea gunoaielor este un subiect ceva mai dificil.
PROTECTIA MUNCII
Masuri de protectia muncii la utilizarea instalatiilor si echipamentelor electrice
Pentru evitarea accidentelor prin electrocutare, este necesara eliminarea posibilitatii de trecere a unui curent periculos prin corpul omului.
Masurile, amenajarile si mijloacele de protectie trebuie sa fie cunoscute de catre tot personalul muncitor din toate domeniile de activitate.
Principalele masuri de prevenire a electrocutarii la locurile de munca sunt:
Asigurarea inaccesibilitatii elementelor care fac parte din circuitele
electrice si care se realizeaza prin: 51866bql58esn7t
Amplasarea conductelor electrice, chiar izolate, precum si a unor echipamente electrice, la o inaltime inaccesibila pentru om. Astfel, normele prevad ca inaltimea minima la care se pozeaza orice fel de conducto electric sa fie de 4M, la traversarea partilor carosabile de 6M, iar acolo unde se manipuleaza materiale sau piese cu un gabarit mai mare, aceasta inaltime se depaseasca cu 2.25m gabaritele respective.
Izolarea electrica a conductoarelor;
Folosirea carcaselor de protectie legate la pamant;
Ingradirea cu plase metalice sau cu tablii perforate, respectandu-se distanta impusapana la elementele sub tensiune.
Folosirea tensiunilor reduse (de 12, 24, 36V) pentru lampile si sculele electrice portative. Sculele si lampile portative care functioneaza la tensiune redusa se alimenteaza la un transformator coborator. Deoarece exista pericolul inversarii bornelor este bine ca atat distanta picioruselor fiselor de 12, 24 si 36V, cat si grosimea acestor picioruse, sa fie mai man decat cele ale fiselor obisnuite de 120, 220 si 380 V, pentru a evita posibilitatea inversarii lor.
La utilizarea uneltelor si lampilor portative alimentate electric, sunt obligatorii: varificarea atenta a uneltei, a izolatii ai a fixarii sculei inainte de incperea lucrului;
Evitarea rasucirii sau a incolacirii cablului de alimentare in timpul lucrului si a deplasarii muncitorului, pentru mentinerea bunei stari a izolatiei;
Menajarea cablului de legatura in timpul mutarii uneltei dint-un loc de munca in altul, pentru a fi solicitat prin intindere sau rasucire; unealta nu va fi purtata tinandu-se de acest cablu;
Evitarea trecerii cablului de alimentare peste drumurile de acces si in locurile de depozitare a materialelor; daca acest lucru nu poate fi evitat, cablul va fi protejat prin ingropare, acoperire, cu scanduri sau suspendate;
Interzicerea repararii sau remedierii defectelor in timpul functionarii motorului sau lasarea fara supraveghere a uneltei conectate la reteua electrica.
Folosirea mijloacelor individuale de protectie si mijloacelor de avertizare. Mijloacele de protectie individuala se intrebuinteaza de catre electricieni pentru prevenirea electrocutarii prin atingere directa si pot fi impartite in doua categorii: principale si auxiliare.
Mijloacele principale de protectie constau din: tije electroizolante, clesti izolanti si scule cu manere izolante. Izolatia acestor mijloace suporta tensiunea de regim a instalatiei in conditii sigure; cu ajutorul lor este permisa atingerea partilor conductoare de curent aflate sub tensiune.
Mijloacele auxiliare de protectie constau din: echipament de protectie (manusi, cizme, galosi electroizolanti), covorase de cauciuc, platforme si gratare cu picioruse electroizolante din portelan etc. Aceste mijloace nu pot realiza insa singure securitatea impotriva electrocutarilor.
Intotdeauna este necesara folosirea simultana eel putin a unui mijloc principal si a unuia auxiliar.
Mijloacele de avertizare constau din placi avertizoare, indicatoare de seuritate (stabilita prin standarde si care contin indicatii de atentionare), ingradiri provizorii prevazute si cu placute etc. Acestea nu izoleaza, ci folosesc numai pentru avertizarea muncitorilor sau a persoanelor care se apropie de punctele de lucru periculoase.
Deconectarea automata in cazul aparitiei unei tensiuni de atingere periculoase sau a unor scurgeri de curent periculoase. Se aplica mai ales la instalatiile electrice care functioneaza cu punctul neutru al sursei de alimentare izolat fata de pamant.
Mentionand faptul ca un curent de defect 300-500A poate deveni in anumite conditii, un factor provocator de incendii, aparatul prezentat asigura protectia si impotriva acestui pericol.
Intreruptorul este prevazut cu carcase izolante, si este echipat
declansatoare termice, electromagnetice si releu de protectie la curenti de defect.
Separarea de protectie se realizeaza cu ajutorul unui transformator de separatie. Prin acesta, se urmareste crearea unui circuit izolat fata de pamant, pentru alimentarea echipamentelor electrice, la care trebuie inlaturat pericolul de electrocutare. In cazul uni defect, intensitatea curentului care se inchide prin om este foarte mica, deoarece trebuie sa treaca prin izolatia care are o rezistenta foarte mare.
Conditiile principale care trebuie indeplinite de o protectie prin separare
sunt:
aplicarea unei izolari suplimentare intre izolatia obisnuita de lucru si elementele bune conducatoare de electricitate ale utilajului;
aplicarea unei izolatii exterioare pe carcasa utilajului electric;
izolarea amplasamentului muncitorului fata de pamant.
Protectia prin legarea la pamant este folosita pentru asigurarea personalului contra electrocutarii prin atingerea achipamentelor si instalatiilor care nu fac parte din circuitele de lucru, dar care pot intra accidental sub tensiune, din cauza unui defect de izolatie. Elementele care se leaga la pamant sut urmatoarele: carcasele si postamentele utilajelor, masinilor si ale apartelor electrice, scheletele metalicecare sustin instaltiile electrice de distribute, carcasele tablourilor de distributie si ale tablourilor de comanda, corpurile mansoanelor de calibru si mantalele electrice ale cablurilor, conductoarele de protectie ale liniilor electrice de transport etc. Instalatia de legare la pamant consta din conductoarele de legare la pamant si priza de pamant, formata din electrozi. Prizele de paman verticale sau orizontale se realizeaza astfel incat diferenta de potential la care ar putea fi expus muncitorul prin atingere directa sa nu fie mai mare de 40V.
In general, pentru a se realiza o priza buna, cu rezistenta mica, elementele ei metalice se vor ingropa la o adancime de peste 1M, in pamantul bun conducator de electricitate, bine umezit si batut.
Sistemul de priza (legare la pamant) separata pentru fiecare utilaj prezinta urmatoarele dezavantaje: este costisitor (cantitati mari de materiale si manopera); unele utilaje (transformatoare de sudura, benzi transportoare etc.) se muta frecvent dintr-un loc in altul; legatura este de multe ori incorect executata datorita caracterului de provizorat al instalatiei.
Protectia prin legare la nul se realizeaza prin construirea unei retele generale de protectie care insotesc in permanenta reteua de alimenare cu energi electrica a utilajelor.
Reteaua de protectie are rolul unui conductor principal de legare la pamant, legat la prize de pamant cu rezistenta suficient de mica.
Sistemul prezinta o serie de avantaje:
utilajle electrice pot fi legate la o instalatie de legare la pamant cu o rezistenta suficient de mica;
este economic, deoarece la instalatiile provizorii pentru santiere, materialele folosite pot fi recuperate in cea mai mare parte;
este usor de realizat, putand fi folosite prizele de pamant naturale, constituite chiar din constructiile de beton armat;
permite sa se execute legaturi sigure de exploatare, deoarece are prize stabile cu durata mare de functionare;
toate utilajele electrice pot fi racordate cu usurinta la reteua de protectie;
se poate executa in mod facil un control al instalatiei de legare la pamant, deoarece legaturile sunt simple si vizibile, iar prizele de pamant pot fi separate pe rand pentru masurare, utilajele ramanand protejatesigur de celelalte prize.
Pentru cazul unei intreruperi accidentale a legaturii la nul se prevede, ca o masura suplimentara, un numar de prize de pamant.
In aceeasi instalatie nu este permisa protejarea unor utilaje electrice prin legare la pamant, iar a altora prin legare la nul. Instalatia de protectie nu poate fi modificata in timpul exploatarii, fara un proiect si fara dispozitia sefului unitatii respective.
Conductoarele de legare la pamant si la nul nu se vor folosi pentru alte scopuri (alimentarea corpurilor de iluminat, a prizelor monofazate etc.). Conductoarele circuitelor electrice prin care circula curentul de lucru (conductoarele de nul, de lucru) nu pot fi folosite drept conductoare de protectie. Pentru a nu se crea confuzii, conductoarele de nul de protectie se vopsesc in culoarea rosie (sau se folosesc conductoare cu izolatie rosie), iar cele de lucru in culoare alb-cenusie.
Protectia prin egalizarea potentialelor este un mijloc secundar de protectie si consta in efectuarea unor legaturi, prin conductoare, in toate partile metalice ale diverselor instalatii si ale constructiilor, care in mod accidental ar putea intra sub tensiune si ar fi atinse de catre un muncitor ce lucreaza sau de catre o persoana care trece prin acel loc.
Prin intermediul legatuirlor se realizeaza o reducere diferentelor de
potential dintre diferite obiecte metalice sau chiar o anulare a acestor diferente, obtinandu-se astfel egalizarea potentialelor si deci eliminarea pericolului de electrocutare. De precizat insa ca reteua de egalizare trebuie conectata la instalatia de legare la pamant sau la nul.
BIBLIOGRAFIE
Winn L. Rosch - Totul desprea hardware
Scott Muller- Depanare si modernizare
Shery Kinkoph - Microsoft
Joe Kraynak - Calculatoare personale
Internet