Memorie (computer)

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare

Memoria , în informatică , este un element al unui computer sau al subsistemului său responsabil pentru persistența datelor și / sau a instrucțiunilor programului , a căror implementare fizică dă viață diferitelor medii de stocare existente.

Caracteristici

Descriere generala

Pictogramă lupă mgx2.svg Același subiect în detaliu: Adresa memoriei .

Stocarea informațiilor în memorie și recuperarea ulterioară a acestora sunt funcții fundamentale în procesele de procesare a datelor . Capacitatea mediilor de stocare electronice de a stoca cantități mari de date într-un spațiu redus și viteza cu care informațiile pot fi recuperate fac parte din motivațiile cheie pentru dezvoltarea electronicii, ducând, de exemplu, la nașterea bazelor de date moderne. De asemenea, este posibil să inserați și să ștergeți programe din aceeași memorie. Aceasta înseamnă că un computer poate rula teoretic programe infinite pe parcursul vieții sale, făcând posibilă o mașină Turing cu o capacitate de memorie finită.

O memorie poate fi considerată abstract ca o secvență finită de celule în care fiecare celulă conține o secvență finită de biți , gestionată în mod normal în grupuri de opt numiți octeți . Prin urmare, spațiul fizic de memorie poate fi imaginat ca o succesiune de poziții, fiecare conținând un octet. Fiecare poziție este identificată printr-o adresă de memorie precisă, exprimată de obicei ca un număr întreg pozitiv. Până în prezent, printre tehnologiile care implementează acest model abstract, cele mai răspândite sunt memoria electronică , memoria magnetică și memoria optică .

Abstracție Von Neumann

Pictogramă lupă mgx2.svg Același subiect în detaliu: arhitectura von Neumann .

Arhitectura von Neumann , care reprezintă modelul computerizat simplificat, arată modul în care sunt folosite amintirile. O mașină Von Neumann este împărțită într-o parte destinată procesării, numită procesor , și o parte destinată stocării, numită memorie centrală . Memoria centrală conține atât datele pe care operează procesorul, cât și programele care oferă instrucțiunile pe care procesorul trebuie să le efectueze.

Operațiuni

Mai precis, operațiunile pe care CPU le poate face pe memoria computerului sunt practic următoarele:

  • Inițializare . Este tratamentul pe care îl suferă memoria înainte de utilizare normală. Unele tipuri de memorie (de exemplu, RAM electronică) nu necesită inițializare; pentru astfel de amintiri, conținutul inițial este imprevizibil. Pentru amintirile numai în citire, inițializarea constă în scrierea datelor efectuate în faza de producție. Pentru discurile magnetice, inițializarea constă în scrierea datelor care constituie un fișier în care să plasați informații utile (așa-numita formatare ).
  • Scrierea . Este operațiunea de stocare a informațiilor. Un exemplu de scriere este de a atribui octetul 123 celulei de adresă 1000.
  • Citind . Este operațiunea de recuperare a informațiilor stocate. Un exemplu de citire este să solicitați memoriei conținutul celulei cu adresa 1000. Memoria și conținutul acesteia sunt, de asemenea, accesate ori de câte ori Unitatea de control al procesorului solicită date utile pentru a efectua o operație de procesare. Toate acestea se întâmplă datorită procedurilor de adresare gestionate de subsistemul procesorului Logica adreselor .

Pentru a vorbi indiferent despre citit sau scris, se folosește termenul de acces . De exemplu, pentru a indica faptul că o memorie este rapidă atât la citire cât și la scriere, se spune că are un timp de acces scăzut. În realitate, operația de ștergere a datelor nu există, întrucât mai corect putem vorbi de suprascrierea datelor.

Clasificare

Memoria computerului poate fi clasificată în funcție de diferite criterii:

  • ordinea de acces (memorii de acces direct sau memorii de acces secvențial );
  • posibilitatea de a scrie (amintiri citire-scriere, amintiri scrise o dată, amintiri numai citire);
  • viteza de citire;
  • viteza de scriere;
  • cost unitar;
  • volatilitate;
  • tehnologie (electronică, magnetică, optică, magneto-optică).

În arhitectura computerelor , se disting două tipuri de memorie: memoria primară , care funcționează în contact mai direct cu procesorul , constând în principal din memorie RAM , memorie ROM , memorie cache și memoria secundară a cărei reprezentanți principali sunt hard diskurile disc , dar și suporturi amovibile, cum ar fi dischete , CD-uri , DVD-uri , benzi magnetice , memorii flash de tot felul și multe altele.

Memoriile de computer pot utiliza diverse tehnologii care oferă performanțe și costuri foarte variabile. Adesea, expresia „memorie centrală” sau „memorie primară” este utilizată pentru amintiri rapide, dar cu costuri unitare mari, în timp ce pentru amintiri cu unități reduse, dar lente, se folosește expresia „ memorie de masă ” sau „memorie secundară”.

Prin ierarhie

Memorie primară sau centrală

Conectată la placa de bază prin conectori numiți sockets și la CPU prin BUS-ul sistemului, memoria primară, numită și memorie centrală sau memorie principală, conține date și instrucțiuni preluate din memoria de masă care așteaptă ca acestea să fie preluate și procesate de microprocesor, funcționând astfel într-un mod strâns asociat cu acesta și, prin urmare, fiind comparabil cu un buffer sau o memorie de rezervă.

Cel mai adesea aceasta este memorie RAM și cache, iar în arhitecturile moderne ale procesorului este adesea încorporată în placa CPU sau direct în cipul procesorului în sine. Este o parte importantă a computerului, deoarece dimensiunea sa în ceea ce privește capacitatea de stocare depinde, prin urmare, de cantitatea maximă de date care poate fi retrasă și, prin urmare, procesată de procesor în condiții de monotare și multitasking și, prin urmare, este considerată din toate punctele de vedere o performanță parametru. al computerului în sine. Dacă memoria primară este epuizată, multe sisteme informatice moderne sunt capabile să implementeze așa-numitul mecanism de memorie virtuală ca o extensie temporară a memoriei primare.

Tehnologiile semiconductoare sunt utilizate în mod normal pentru a crea o memorie principală (adică se utilizează circuite integrate bazate pe siliciu).

Această memorie constă dintr-un număr foarte mare de celule de memorie , dispozitive bistabile, adică capabile să presupună două stări stabile alternative prin care este posibilă stocarea cantității minime de informații (1 bit). Există două operații care pot fi efectuate pe această componentă: citire (încărcare) și scriere (stocare). Deoarece în viața de zi cu zi posibilele alegeri în diferite cazuri sunt mult mai multe decât două, un bit nu mai este suficient pentru a le reprezenta și, prin urmare, s-a decis să se unească mai multe celule de memorie în registre de memorie. Dacă cu un singur bit este posibil să se obțină doar două stări diferite, cu două celule (2 biți) este posibil să se reprezinte 2 2 alternative, cu asocierea a 3 celule (3 biți) 2 3 alternative, etc. În special, cea mai comună dimensiune a registrului este de 8 biți. Unirea a 8 biți formează de fapt 1 octet de memorie, primul multiplu al bitului, care poate reprezenta până la 256 de combinații diferite posibile (2 8 ). Într-un registru de memorie, operațiile de citire / scriere au loc simultan pe toate celulele care fac parte din registru. În amintirile cu registre de 1 octeți, prin urmare, se citesc 8 celule odată.

Fiecare registru de memorie este notat printr-o adresă .

Operația de citire

În operația de citire de pe memoria principală, procesorul își asumă o poziție de master în ceea ce privește memoria , care este sclavul. Cele două componente sunt conectate între ele prin magistrala de sistem .

Procesul constă în esență din următoarea succesiune de operații:

  • CPU transferă adresa datelor care urmează să fie citite de pe Program Counter (PC) în Registrul de adrese de memorie (MAR);
  • MAR trimite această adresă în memorie prin linia de adresă a magistralei de sistem în paralel cu semnalul care specifică tipul de operațiune efectuată (în acest caz, citire);
  • Memoria preia datele conținute în adresa specificată de procesor și le trimite, prin linia de date (prezentă și pe BUS-ul sistemului), în Registrul de date de memorie (MDR) al procesorului.

MAR, PC și MDR sunt registre speciale ale unității centrale a mașinii.

Operațiunea de scriere

Scrierea constă în principal din următoarele operații:

  • transferul adresei de scris de la CPU la MAR și în același timp transferul la MDR a valorii de scris;
  • transferul valorii MBR ( Memory Byte Register ) către celula de memorie a cărei adresă este prezentă în MAR.

Memoria centrală este organizată ca un tabel de celule, fiecare dintre ele fiind notată printr-o adresă (celule care conțin o secvență de biți ; fiecare bit poate reprezenta informația 0 sau 1 printr-o stare electrică diferită). Fiecare celulă are o dimensiune prestabilită și adresele celulei variază între 0 și n, unde n este o putere de 2.

Operațiile pe care le poate efectua memoria sunt două: citire (încărcare) și scriere (stocare).

Este necesar să se facă distincția între diferite tipuri de amintiri primare, în funcție de funcția îndeplinită și de caracteristicile lor specifice. Cele mai importante sunt enumerate mai jos.

  • RAM , acronimul pentru „memorie cu acces aleatoriu”, este memoria în care sunt încărcate datele care trebuie utilizate de computer pentru procesare. RAM-ul poate fi volatil (se curăță spontan și trebuie actualizat), static sau tamponat (menține puterea chiar și atunci când aparatul este oprit). Procesorul identifică celulele RAM prin adrese predestinate care le specifică poziția: memoria apare deci ca un vector imens (șir ordonat de elemente numite octeți, fiecare identificabil cu o adresă). Termenul "aleator" arată că nu există diferențe în accesarea diferitelor celule de memorie. Caracteristicile RAM sunt, de asemenea, moștenite din toate celelalte memorii cu acces aleatoriu (ușor de identificat prin faptul că acestea conțin RAM la final). Practic amintirile RAM sunt împărțite în DRAM (dinamic), SRAM static și care sunt utilizate pentru memoria cache .
  • Memoria cache RAM, o memorie asociativă integrată în procesor, care are caracteristica de a fi foarte rapidă; dat fiind costul ridicat, este folosit exclusiv pentru a conține datele și instrucțiunile utilizate cel mai frecvent (pentru a îmbunătăți semnificativ performanța procesorului).
  • ROM , acronimul pentru „numai citire memorie”, sau „numai citire memorie (sau numai citire)”, este o memorie permanentă (adică are un conținut fix care nu poate fi șters și, de asemenea, nu este volatil), prezent pe cardul mama , care conține instrucțiunile pe care CPU trebuie să le încarce pentru a permite sistemului să pornească și rutinele de bază numite BIOS (Basic I / O System).
  • EPROM , acronimul pentru „memorie ștearsă programabilă numai în citire”, adică „ROM ștearsă și programabilă”, care este o memorie numai în citire, dar are particularitatea de a putea fi șters în anumite condiții. EPROM-urile sunt anulate prin expunerea la razele UV, în timp ce EEPROM-urile " memorabile numai în citire programabile șterse electric" sunt anulate de un impuls electric trimis de un instrument numit programator.
  • MRAM , acronimul pentru „RAM magnetorezistiv”, sau „RAM magnetorezistiv”, este o memorie cu acces aleatoriu de „nouă generație”, care folosește proprietățile magnetismului , în loc de o serie de impulsuri electrice, pentru a stoca informații.

Faza de transfer din memoria sistemului în memoria cache este realizată de un circuit special numitMMU (Memory Management Unit). MMU îndeplinește, de asemenea, sarcina de gestionare a memoriei virtuale.

Mai mult, trebuie remarcat faptul că, datorită dispersiei sarcinii condensatorului , de o capacitate extrem de mică, este nevoie de o reîmprospătare continuă a informațiilor. Un canal al circuitului DMA este dedicat acestei sarcini care la intervale regulate (153 ms) trebuie să reîmprospăteze în mod necesar întreaga memorie a sistemului pentru a evita pierderea ireparabilă a datelor și, prin urmare, prăbușirea computerului.

Memorie video

O versiune specială a amintirilor dinamice este utilizată pentru gestionarea video. În aceste dispozitive, acțiunea de reîmprospătare, solicitată anterior, este exploatată pentru a gestiona informațiile care trebuie trimise periodic către videoclip, evitând astfel trecerea prin CPU care ar face transferul de date mult mai lent.

Tehnologia utilizată în prezent pentru realizarea memoriei video este GDDR (Graphics Double Data Rate).

Memorie secundară sau de masă

Pictogramă lupă mgx2.svg Același subiect în detaliu: stocarea în masă .

Memoria secundară, numită și memorie auxiliară sau memorie de masă, este o unitate care este adăugată la memoria primară (sau centrală) a computerului pentru a-și crește capacitatea de stocare. Se compune dintr-o clasă de dispozitive care nu sunt puse în contact direct cu procesorul . În consecință, datele pe care le conțin nu se pierd odată cu oprirea procesorului în sine.

Tipuri de memorie secundară

Mai jos sunt diferitele categorii de amintiri secundare:

  • Discurile magnetice , alcătuite din unul sau mai multe discuri ( pachete de discuri ) acoperite cu material feromagnetic, sunt „citite și scrise” (adică datele sunt salvate și recuperate pe aceste discuri) prin intermediul unui braț mobil echipat cu un „cap de citire / scriere” . ". Datele sunt transferate pe discurile magnetice printr-un buffer din memoria principală și ocupă poziții succesive de-a lungul pistelor, sub forma diferitelor stări de magnetizare. Sectoarele de disc sunt citite și scrise în întregime folosind suprafața, pista și numărul sectorului. Timpul de acces la discurile magnetice este mai mare decât cel al memoriei centrale, dar costurile, având în vedere aceeași cantitate de informații stocate, sunt decisiv mai mici. Această categorie include, de exemplu, hard disk-urile și dischetele (realizate din material plastic flexibil).
  • Discuri optice , compuse din material reflectorizant acoperit cu o substanță de protecție, unde informațiile sunt înregistrate prin modificări ale suprafeței reflectorizante și sunt citite de un fascicul laser care detectează neregulile suprafeței reflectorizante. Discurile optice sunt, fără îndoială, cele mai populare medii de memorie secundare: există diferite tipuri, unele reinscriptibile (adică odată scrise pot fi rescrise din nou) și nerescriptibile (odată ce datele au fost stocate pe disc, acesta nu mai este regrababil cu alte date ). Această categorie include CD - uri , CD-ROM-uri și DVD - uri .
  • Benzile magnetice , alcătuite din benzi de bandă magnetică și gestionate de unități de bandă (care au un cap de citire / scriere), sunt utilizate pentru a efectua funcții de backup și jurnal (înregistrarea operațiunilor efectuate într-un anumit timp). Benzile magnetice permit doar accesul secvențial la date (adică este necesar să citiți toate datele anterioare înainte de a accesa anumite date). Dintre diferitele tipuri de benzi magnetice, cea mai bună performanță este obținută din benzile de stocare a datelor digitale .
  • Memoria Flash , memorie electronică nevolatilă de tip EEPROM . Vine ca un card de memorie cu amprentă mică.
Memoria holografică

Un alt tip de amintiri secundare, dar încă în curs de dezvoltare, sunt amintirile holografice . Aceste noi tehnologii de stocare holografică vor avea avantajul de a putea stoca date nu pe o suprafață (așa cum o fac suporturile actuale), ci pe un volum: aceste noi memorii vor fi, prin urmare, caracterizate printr-o capacitate mare de stocare și, în plus, prin timpi de acces. .

Printre diferitele idei, cel mai promițător mod de a stoca mai multe imagini holografice pe același mediu este de a utiliza unghiuri de divergență diferite între cele două lasere. Prin schimbarea unghiului de incidență al fasciculului de citire este posibil să citiți diferite pagini. Cu toate acestea, există unele probleme care împiedică realizarea acestor noi amintiri; cele mai importante sunt:

  • precizia optică ridicată necesară pentru proiect
  • dificultatea în alinierea diferitelor componente
  • probleme legate de imperfecțiunea materialului folosit
  • riscul de colimare a fasciculului
  • problema procesării semnalelor de ieșire din care urmează să fie obținuți biții inițial stocați

Principalul motiv care îi împinge pe cercetători să creeze aceste amintiri este că înregistrarea datelor pe suport magnetic și optic va ajunge rapid să se ciocnească cu limitele fizice ale suporturilor și, prin urmare, amintirile, care sunt acum adecvate, nu mai pot fi suficiente pentru viitor are nevoie.

După tipul de acces

  • Memoriile de acces secvențial pot fi citite și scrise numai la adresa imediat următoare adresei la care a avut loc accesul anterior. Principalele exemple de memorii de acces secvențial sunt benzile magnetice.
  • Memoriile cu acces direct pot fi citite și scrise la orice adresă, cu timpi de acces variați și în funcție de adresa de memorie la care a avut loc accesul anterior.
  • Memoriile cu acces aleatoriu pot fi citite și scrise la orice adresă, dar cu același timp de acces.

Pentru posibilitatea de a scrie de către utilizatorul final

Memoria tipică poate fi citită și scrisă. Aceste dispozitive se numesc amintiri citire-scriere .

Cu toate acestea, sunt folosite și amintiri care sunt scrise numai în faza de inițializare și pentru care scrierea nu este posibilă în utilizarea normală. Această inițializare poate fi realizată incremental de același echipament cu care sunt citite datele scrise. Aceste dispozitive se numesc amintiri care se pot scrie o dată sau WORM-uri (Scrie o dată, Citește multe).

Alternativ, poate fi necesar să scrieți toate datele cu un dispozitiv extern adecvat înainte ca memoria să poată fi utilizată pentru citire. Aceste dispozitive sunt numite memorii numai în citire sau ROM-uri (Memorie numai în citire).

Iată cele mai populare exemple pentru fiecare dintre cele trei tipuri de mai sus:

Pe baza permanenței datelor

Pe baza capacității de a stoca permanent date, există două tipuri de memorie:

  • memorie volatilă : amintiri care pierd informații dacă nu sunt alimentate electric (majoritatea memoriei RAM electronice sunt);
  • memorie nevolatilă : memorii care rețin informații chiar dacă nu sunt alimentate electric (toate celelalte tipuri de memorie sunt).

Defectele în volatilitate sunt următoarele:

  • consumul de energie pentru stocarea informațiilor;
  • nevoia unei surse de energie face ca memoria să fie mai puțin portabilă și mai ușor de gestionat. CD-ROM-urile, de exemplu, dacă ar avea puterea bateriei pentru a păstra informațiile, ar fi mult mai scumpe și incomode;
  • pierderea informațiilor în caz de defecțiune sau întreținere a computerului.

În ciuda neajunsurilor lor, amintirile volatile sunt utilizate pe scară largă, deoarece au timpi de acces mult mai scurți decât alte amintiri.

Pe baza vitezei de acces și a costului unitar

Pentru amintirile de citire-scriere, timpul de citire este în mod normal apropiat de timpul de scriere, deci vorbim generic despre timpul de acces. Pentru amintirile care se scriu odată, scrierea poate fi mult mai lentă decât citirea; în acest caz, având în vedere că memoria va fi citită de mai multe ori, timpul de citire este considerat a fi mai semnificativ.

În general, costul unitar (adică pe octet) al amintirilor crește odată cu creșterea vitezei de citire. Prin urmare, clasificarea prin viteza de citire coincide substanțial cu clasificarea după costul unitar.

Pe baza acestui criteriu, avem următoarea ierarhie:

  • Registrele CPU, care oferă cea mai mare viteză de acces, la cel mai mare cost unitar.
  • Cache internă a procesorului, numită și cache de primul nivel.
  • Cache extern CPU, numit și cache de nivel secundar.
  • Memorie centrală, numită și memorie principală, și adesea pur și simplu (dar necorespunzător) numită RAM.
  • Tobe magnetice, acum în uz.
  • Discuri (magnetice) dure.
  • Dispozitive inserabile și detașabile „la cald”, adică fără oprirea computerului, cum ar fi dischete, benzi, memorii flash, discuri optice. Acestea din urmă oferă cea mai mică viteză de acces, la cel mai mic cost unitar.

Prin tehnologia de construcție

Notă


Bibliografie

Elemente conexe

Alte proiecte

linkuri externe

Controlul autorității Tezaur BNCF 7612 · LCCN (EN) sh85029541 · GND (DE) 4159219-0 · BNF (FR) cb11940192f (data)