7 CAPITOLUL 7 CIRCUITE DE MEMORIE - ece.ubm.roece.ubm.ro/ea/cursuri/circuite_digitale/pdf/CD - C7...

21
104 7 CAPITOLUL 7 CIRCUITE DE MEMORIE Un circuit de memorare este un circuit electronic care permite stocarea şi regăsirea unor informaţii reprezentate sub formă binară care au fost anterior stocate. Această implementare se poate realiza în mai multe moduri, în funcţie de suportul fizic utilizat ca de exemplu: memorii magnetice, memorii optice, memorii semiconductoare. În continuare ne vom referi numai la memoriile realizate cu dispozitive semiconductoare. Există două categorii majore de memorii semiconductoare: - memorii cu citire şi scriere de date, în această categorie intră aşa numitele memorii cu acces aleator RAM (Random Access Memory) care permit citirea şi înscrierea unor noi date de către sistemul care le utilizează. Pentru acest tip de memorie timpul de acces este egal pentru orice adresă şi ele pot fi selectate în orice ordine. Deoarece memoriile RAM îşi pierd conţinutul în lipsa alimentării ele sunt memorii volatile. - memorii numai cu citire de date, în această categorie intră memoriile ROM (Read Only Memory), PROM (Programmable Read Only Memory), EPROM (Eraseable Programmable Read Only Memory) care pot fi numai citite de către sistemul care le utilizează, ştergerea fiind posibilă numai în cazul memoriilor de tip EPROM, dar nu este efectuată de către sistemul utilizator şi nu este selectivă în raport cu informaţia înscrisă. De asemenea tot în această categorie intră şi memoriile EEPROM (Electricaly Eraseable Programmable Read Only Memory) care pot fi atât citite cât şi şterse în mod selectiv şi reprogramate de către sistemul care le utilizează. Deoarece memoriile ROM nu îşi pierd conţinutul în lipsa alimentării ele se numesc nevolatile. Citirea informaţiei stocate necesită furnizarea unor semnale privind locul unde se găseşte această informaţie. Aceste semnale constituie intrări pentru circuitul de memorie şi se numesc adrese. Cuvintele binare memorate constituie date pentru acest circuit şi ele sunt semnale de intrare atunci când se înscrie în memorie şi semnale de ieşire atunci când se citeşte din memorie. Accesul la memorie se face la un moment de timp bine determinat, care se comunică circuitului de memorie printr-un semnal. Astfel circuitul de memorie împreună cu conexiunile sale informaţionale are structura din figura 7.1. Figura 7.1. Conexiunile memoriei.

Transcript of 7 CAPITOLUL 7 CIRCUITE DE MEMORIE - ece.ubm.roece.ubm.ro/ea/cursuri/circuite_digitale/pdf/CD - C7...

Page 1: 7 CAPITOLUL 7 CIRCUITE DE MEMORIE - ece.ubm.roece.ubm.ro/ea/cursuri/circuite_digitale/pdf/CD - C7 Memorii.pdf · Circuite digitale 106 - Volatilitatea. O memorie este volatil ă dac

104

7 CAPITOLUL 7

CIRCUITE DE MEMORIE

Un circuit de memorare este un circuit electronic care permite stocarea şi regăsirea unor informaţii reprezentate sub formă binară care au fost anterior stocate. Această implementare se poate realiza în mai multe moduri, în funcţie de suportul fizic utilizat ca de exemplu: memorii magnetice, memorii optice, memorii semiconductoare. În continuare ne vom referi numai la memoriile realizate cu dispozitive semiconductoare. Există două categorii majore de memorii semiconductoare: - memorii cu citire şi scriere de date, în această categorie intră aşa numitele memorii cu acces aleator RAM (Random Access Memory) care permit citirea şi înscrierea unor noi date de către sistemul care le utilizează. Pentru acest tip de memorie timpul de acces este egal pentru orice adresă şi ele pot fi selectate în orice ordine. Deoarece memoriile RAM îşi pierd conţinutul în lipsa alimentării ele sunt memorii volatile. - memorii numai cu citire de date, în această categorie intră memoriile ROM (Read Only Memory), PROM (Programmable Read Only Memory), EPROM (Eraseable Programmable Read Only Memory) care pot fi numai citite de către sistemul care le utilizează, ştergerea fiind posibilă numai în cazul memoriilor de tip EPROM, dar nu este efectuată de către sistemul utilizator şi nu este selectivă în raport cu informaţia înscrisă. De asemenea tot în această categorie intră şi memoriile EEPROM (Electricaly Eraseable Programmable Read Only Memory) care pot fi atât citite cât şi şterse în mod selectiv şi reprogramate de către sistemul care le utilizează. Deoarece memoriile ROM nu îşi pierd conţinutul în lipsa alimentării ele se numesc nevolatile. Citirea informaţiei stocate necesită furnizarea unor semnale privind locul unde se găseşte această informaţie. Aceste semnale constituie intrări pentru circuitul de memorie şi se numesc adrese. Cuvintele binare memorate constituie date pentru acest circuit şi ele sunt semnale de intrare atunci când se înscrie în memorie şi semnale de ieşire atunci când se citeşte din memorie. Accesul la memorie se face la un moment de timp bine determinat, care se comunică circuitului de memorie printr-un semnal. Astfel circuitul de memorie împreună cu conexiunile sale informaţionale are structura din figura 7.1.

Figura 7.1. Conexiunile memoriei.

Page 2: 7 CAPITOLUL 7 CIRCUITE DE MEMORIE - ece.ubm.roece.ubm.ro/ea/cursuri/circuite_digitale/pdf/CD - C7 Memorii.pdf · Circuite digitale 106 - Volatilitatea. O memorie este volatil ă dac

Capitolul 7. Circuite de memorie

105

Transferul de date este bidirecţional în cazul memoriilor RAM şi EEPROM şi unidirecţional în cazul memoriilor ROM, PROM şi EPROM.

7.1 Definirea termenilor şi caracteristicile mai importante ale unei memorii.

Fiecare element de stocare din memorie se numeşte celul ă şi poate lua valoarea 0 logic sau 1 logic. Memoria este compusă din arii de celule. Putem definii: - Geometria sau modul de organizare a memoriei reprezentată de lungimea unui cuvânt şi numărul de cuvinte memorate; - Capacitatea memoriei reprezentând numărul total de biţi ce pot fi memoraţi, se exprimă în general în multipli de 1 k=1024 biţi. Acest număr reprezintă produsul dintre numărul cuvintelor memorate şi lungimea cuvântului. De exemplu o memorie de 16k octeţi reprezintă o memorie de 16.384 cuvinte de 8 biţi.

În figura 7.2 se prezintă diferite moduri de organizare a memoriei folosind ca exemplu o arie de 64 de celule. În figura 7.2.a se prezintă o memorie cu capacitatea de 64 biţi organizată ca o memorie de 8 cuvinte de 8 biţi adică o memorie de 8 octeţi. În figura 7.2.b se prezintă o memorie de aceeaşi capacitate dar organizată ca o memorie de 16 cuvinte de 4 biţi adică 16 nible. În cele din urmă figura 7.2.c reprezintă o memorie de 64 cuvinte de 1 bit.

1 1 1 2 2 2 3 3 3 4 4 4 5 5 5 6 6 6 7 8 1 2 3 4 5 6 7 8 14 62 15 63 16 64 1 2 3 4 1 a) arie de 8x8 b) arie de 16x4 c) arie de 64x1

Figura 7.2. Arie de memorie de 64 celule organizat ă în trei moduri diferite

Alte proprietăţi ale memoriilor sunt: - Timpul de acces la memorie reprezintă timpul necesar pentru citirea sau scrierea unor informaţii în memorie, se exprimă în µs sau ns. - Puterea consumat ă raportată la un bit de informaţie, exprimă puterea totală consumată de circuit raportată la capacitatea memoriei adică µW/bit;

Page 3: 7 CAPITOLUL 7 CIRCUITE DE MEMORIE - ece.ubm.roece.ubm.ro/ea/cursuri/circuite_digitale/pdf/CD - C7 Memorii.pdf · Circuite digitale 106 - Volatilitatea. O memorie este volatil ă dac

Circuite digitale

106

- Volatilitatea. O memorie este volatilă dacă informaţia înscrisă se pierde în timp, pierderea informaţiei se poate datora fie modului de stocare a acesteia în cazul memoriilor dinamice, fie datorită dispariţiei tensiunilor de alimentare ale circuitului. Modul de adresare depinde de organizarea memoriei. Adresa unui bit este dată prin linie şi coloană în timp ce adresa unui octet se specifică doar prin linie, ca şi în figura 7.3.

1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 a) adresa bitului este lina 5 coloana 4 b) adresa octetului este linia 4

Figura 7.3. Exemple de adresare a memoriilor.

7.1.1 Opera ţiile de baz ă ale memoriilor

Având în vedere că memoriile stochează date binare, acestea trebuiesc puse în memorie şi datele de care avem nevoie trebuiesc citite din memorie. Operaţia de punere a datelor la o anumită adresă în memorie se numeşte scriere iar operaţia de scoatere a datelor de la o anumită adresă din memorie se numeşte citire din memorie. Operaţia de adresare este parte componentă a ambelor operaţii şi permite selectarea adresei de memorie specificată. Datele se scriu şi se citesc prin intermediul magistralei de date care este bidirecţională, adică datele pot circula spre sau dinspre memorie, aşa cum se poate vedea şi în figura 7.1. Adresa este specificată printr-un cod plasat pe magistrala de adrese . Codul de adresă este decodificat în interiorul memoriei, şi se selectează adresa dorită. Numărul de linii din magistrala de adrese depinde de capacitatea memoriei. De exemplu un cod de adresă de 12 biţi poate selecta 4096 (212) locaţii de memorie, un cod de 16 biţi poate selecta 655363 (216) locaţii, iar un cod de 32 biţi cum se întâlneşte în calculatoarele personale poate selecta 4.294.967.296 (232) locaţii, exprimat ca 4G locaţii.

Opera ţia de scriere. O operaţie simplă de scriere este reprezentată în figura 7.4. Pentru a stoca un octet de date în memorie, un cod păstrat într-un registru de adresă este pus pe magistrala de adresă. Decodificatorul de adresă decodifică această adresă şi selectează locaţia de memorie specificată. După aceasta memoria primeşte o comandă de scriere şi datele păstrate într-un registru de date sunt plasate pe magistrala de date şi stocate la adresa indicată din memorie. Dacă se dă o comandă de scriere la o adresă la care au mai fost înscrise date, acestea se suprascriu, deci se pierd.

Operaţia de scriere se face în felul următor: 1) Codul adresei este plasat pe magistrala de adrese şi adresa 5 este selectată 2) Octetul de date se plasează pe magistrala de date

Page 4: 7 CAPITOLUL 7 CIRCUITE DE MEMORIE - ece.ubm.roece.ubm.ro/ea/cursuri/circuite_digitale/pdf/CD - C7 Memorii.pdf · Circuite digitale 106 - Volatilitatea. O memorie este volatil ă dac

Capitolul 7. Circuite de memorie

107

3) Comanda de scriere cauzează înscrierea datei la adresa 5, datele precedente sunt înlocuite.

Registru de Registru de adresă date

101 10001101

Decodificator

de

adresă

0 1 1 2

3 4 2 5 1 0 0 0 1 1 0 1 6 7

3 Scriere

Figura 7.4. Opera ţiei de scriere în memorie.

Opera ţia de citire. Pentru a citi un octet de date din memorie un cod păstrat într-un registru de adresă este pus pe magistrala de adresă. Decodificatorul de adresă decodifică această adresa şi selectează locaţia de memorie specificată. După aceasta memorie primeşte o comandă de citire şi o copie a octetului de date stocat la adresa specificată este plasat pe magistrala de date şi încărcat într-un registru de date. La citirea datelor de la o adresă, acestea rămân în continuare în memorie deci nu se pierd. Aceasta se numeşte citire nedistructivă. Operaţia de citire este prezentată în figura 7.5.

Registru de Registru de

adresă date 100 11001011

Decodificator

de

adresă

0 1 1 2 3 3 4 1 1 0 0 1 0 1 1 5 6 7

2 Citire

Figura 7.5. Opera ţia de citire a memoriei.

Page 5: 7 CAPITOLUL 7 CIRCUITE DE MEMORIE - ece.ubm.roece.ubm.ro/ea/cursuri/circuite_digitale/pdf/CD - C7 Memorii.pdf · Circuite digitale 106 - Volatilitatea. O memorie este volatil ă dac

Circuite digitale

108

Operaţia de citire se face în felul următor: 1) Codul adresei este plasat pe magistrala de adrese şi adresa 4 este selectată. 2) Se aplică comanda de citire. 3) Conţinutul memoriei de la adresa 4 este plasat pe magistrala de date şi se înscrie

în registrul de date. Conţinutul locaţiei 4 rămâne neschimbat.

7.2 Memoria RAM

Pentru memorarea unui cuvânt circuitul registru poate fi un suport flexibil şi de mare viteză. La un volum mai mare de cuvinte soluţia este o colecţie de registre, dar pentru un volum mai mare de ordinul sutelor de cuvinte are următoarele dezavantaje: cost ridicat, acces doar pe cuvânt şi decodificator complex. Pentru un volum mare de informaţie soluţia eficientă este o memorie realizată ca o colecţie de celule de memorare, fiecare celulă având posibilitatea de selectare pentru ştergere şi înscriere a unui bit. În cadrul familiei de memorii RAM se disting două subfamilii şi anume memoriile RAM statice – SRAM (Static RAM) şi memoriile RAM dinamice – DRAM (Dynamic RAM). Memoriile RAM statice folosesc ca element de memorare circuite basculante bistabile şi prin urmare pot memora informaţia un timp nedefinit, atât timp cât se păstrează alimentarea circuitului . Memoriile RAM dinamice folosesc condensatoare ca elemente de stocare şi prin urmare ele nu pot memora informaţia un timp foarte mare fără ca acestea să fie reîncărcate în cadrul unui proces numit reîmprosp ătare . Ambele tipuri pierd informaţia memorată la decuplarea alimentării şi în consecinţă fac parte din clasa memoriilor volatile. Datele pot fi citite mai rapid din memoriile SRAM decât din memoriile DRAM, dar acestea din urmă pot stoca mult mai multe date pentru o dimensiune fizică dată şi la un preţ mai mic datorită faptului că ele sunt mai simple şi se pot integra mai multe celule de memorare DRAM pe unitatea de suprafaţă decât celule SRAM. Tipurile de bază de memorii SRAM sunt memoria SRAM asincronă şi memoria SRAM în rafale (sau cu lucru în avalanşă). Tipurile de bază de memorii DRAM sunt memoria FPM DRAM (Fast Page Mode DRAM), EDO DRAM (Extended Data Out DRAM), BEDO DRAM (Burst EDO DRAM) şi memoria DRAM sincronă (SDRAM), şi mai nou DDRAM (Double Data Rate SDRAM).

Memoria cu acces aleator (RAM)

Memoria RAM statică (SRAM) Memoria RAM dinamică (DRAM)

Memoria

SRAM

asincronă

(ASRAM)

SRAM

cu lucru în

avalanşă

(SBRAM)

DRAM

cu acces rapid

pe pagină

(FPM DRAM)

DRAM

cu ieşire extinsă

de date

(EDO DRAM)

EDO DRAM

cu lucru în

avalanşă

(BEDO DRAM)

Memorie

DRAM

sincronă

(SDRAM)

Figura 7.6. Familia de memorii RAM.

Page 6: 7 CAPITOLUL 7 CIRCUITE DE MEMORIE - ece.ubm.roece.ubm.ro/ea/cursuri/circuite_digitale/pdf/CD - C7 Memorii.pdf · Circuite digitale 106 - Volatilitatea. O memorie este volatil ă dac

Capitolul 7. Circuite de memorie

109

Considerăm ca fiind o celul ă de memorie, circuitul elementar care realizează memorarea unui bit. Aceasta se poate realiza fie cu tranzistoare bipolare fie cu tranzistoare MOS.

7.2.1 Memoria RAM static ă

Toate memoriile RAM statice sunt alcătuite din bistabili care de obicei sunt implementaţi cu tranzistoare MOS. Există unele memorii de capacitate mică realizate cu tranzistoare bipolare.

7.2.1.1 Celula de memorie cu tranzistoare bipolare

În cazul utilizării tranzistoarelor bipolare circuitul elementar de memorie îl constituie circuitul basculant bistabil (CBB). În figura 7.7 sunt prezentate structuri de bistabile folosite în memoriile RAM având capacitatea de până la 1 kbit. După cum se vede, schemele au la bază un CBB realizat cu tranzistoarele T1 şi T2. Liniile de conexiune în afara celulei sunt: - 2 linii de bit (DL şi DL ) care folosesc la scrierea şi citirea informaţiei în celulă, aceste linii sunt comune tuturor celulelor de pe aceiaşi coloană dintr-o matrice de memorie; - o linie de selecţie cuvânt (WL), reprezentând selecţia pe linii în matricea de memorie, acţionarea unei selecţii cuvânt face posibilă citirea sau scrierea informaţiei în oricare din celulele de memorie situate pe aceeaşi linie în matrice; - o linie de alimentare (sursa de tensiune VCC), această conexiune este comună tuturor celulelor din matricea de memorie.

Figura 7.7. Celula de memorare SRAM cu tranzistoare bipolare.

Celula de memorie din figura 7.7.a foloseşte tranzistoare multiemitor. În starea neselectată conexiunea selecţie cuvânt (WL) este menţinută la un potenţial coborât (+0,3 V). Liniile de bit (DL, DL ) sunt conexiuni pentru sesizarea stării bistabilului şi în mod normal sunt conectate la capătul coloanei la o tensiune de 0,5 V prin intermediul

Page 7: 7 CAPITOLUL 7 CIRCUITE DE MEMORIE - ece.ubm.roece.ubm.ro/ea/cursuri/circuite_digitale/pdf/CD - C7 Memorii.pdf · Circuite digitale 106 - Volatilitatea. O memorie este volatil ă dac

Circuite digitale

110

unor rezistenţe care să sesizeze apariţia închiderii unui curent. Pentru citire, selecţia cuvânt este pusă la un potenţial mai ridicat (+3 V) apropiat de VCC. În felul acesta emitoarele conectate la liniile de bit sunt polarizate la o tensiune mai coborâtă (+0,5 V) şi conducţia este preluată de acestea. Curentul de emitor se va închide pe rezistenţele senzor conectate la liniile de bit şi în funcţie de semnul tensiunii obţinute la bornele celor două linii de bit se poate spune care este starea bistabilelor. Dacă spre exemplu T1 conduce şi T2 este blocat, atunci la aplicarea comenzii citire pe selecţia cuvânt se va obţine la ieşire o tensiune diferenţială cu plusul pe DL şi minusul pe DL . În cazul T1 blocat şi T2 conduce sensul tensiunii se schimbă. Pentru înscrierea informaţiei în celulă se ridică potenţialul selecţiei cuvânt (WL) şi simultan se forţează cu circuite adecvate pe liniile de bit o diferenţă de potenţial corespunzătoare stării în care dorim să se afle bistabilul. De exemplu, pentru a obţine T1 în conducţie şi T2 blocat se forţează linia de bit stânga (DL) la zero iar linia de bit dreapta ( DL ) la o tensiune de circa +0,5 V. Acest circuit are un consum de putere în stare neselectată de circa 800 µV şi o viteză de comutaţie de 20 ns. Celula din figura 7.7.b foloseşte diode Schottky având un consum de putere în stare neselectată de 60 µV şi o viteză de comutaţie de 5 ns.

7.2.1.2 Celula de memorie cu tranzistoare MOS

Celula de memorie statică realizată cu tranzistoare NMOS este reprezentată în figura 7.8. Celula foloseşte şase tranzistoare NMOS. Tranzistoarele T1 şi T2 reprezintă sarcini active, iar T3 şi T4 constituie un bistabil. Tranzistoarele T5 şi T6 permit conectarea ieşirilor bistabilului la liniile de bit pentru citirea sau înscrierea informaţiei. În starea neselectată linia WL se află conectată la potenţial zero şi tranzistoarele T5 şi T6 sunt blocate. Liniile de bit sunt conectate prin rezistenţe la +VDD.

Pentru citire se aplică tensiune ridicată pe linia de selecţie cuvânt WL. Tranzistoarele T5 şi T6 se deschid şi permit determinarea stării bistabilului. De exemplu, când bistabilul este în starea T3 blocat şi T4 conducţie, la comanda de citire linia de bit DL va avea un potenţial apropiat de zero prin tranzistorul T4.

Pentru înscrierea informaţiei se ridică potenţialul liniei WL şi apoi se forţează cu circuite adecvate tensiune zero pe linia de bit în care dorim să obţinem zero la citire. De exemplu dacă se aplică zero pe linia DL bistabilul va trece în starea T3 conducţie şi T4 blocat. Acest circuit folosind tranzistoare MOS cu canal n are o viteză de comutaţie relativ ridicată şi o putere disipată în stare neselectată mică. Ca un dezavantaj trebuie menţionat că sunt necesare două linii de alimentare pentru fiecare celulă deoarece

Figura 7.8. Celul ă de memorare

SRAM cu tranzistoare NMOS

Page 8: 7 CAPITOLUL 7 CIRCUITE DE MEMORIE - ece.ubm.roece.ubm.ro/ea/cursuri/circuite_digitale/pdf/CD - C7 Memorii.pdf · Circuite digitale 106 - Volatilitatea. O memorie este volatil ă dac

Capitolul 7. Circuite de memorie

111

pentru conducţia tranzistoarelor T1 şi T2 de tipul MOS cu îmbogăţire, grilele trebuie să fie la un potenţial pozitiv faţă de sursele tranzistoarelor. Se poate vedea că dacă pentru durate scurte de timp tensiunea de alimentare VDD lipseşte bistabilul îşi păstrează starea datorită capacităţilor parazite grilă sursă ale tranzistoarelor T3 şi T4. Această proprietate sugerează posibilitatea micşorării puterii consumate (şi deci disipate) în celulă prin întreruperea şi cuplarea periodică a alimentării. Se poate obţine în felul acesta o reducere a puterii consumate de până la 1000 de ori (într-o perioadă de 2 ms se alimentează circuitul numai un interval de 2 µs). Circuitul din figura 7.9 foloseşte un circuit basculant bistabil realizat cu tranzistoare complementare MOS (CMOS). Ca urmare în oricare din stările stabile circuitul nu consumă energie de la sursa de alimentare. Funcţionarea circuitului este similară cu aceea a circuitului precedent. În stare neselectată linia WL este la un potenţial coborât şi T5, T6 blocate. Pentru citire se aplică un potenţial ridicat liniei WL iar pentru înscriere se forţează suplimentar tensiune coborâtă pe una din liniile de bit DL sau DL . Acest circuit are o singură sursă de alimentare, deoarece foloseşte tranzistoare MOS canal p şi canal n. Problema esenţială în realizarea acestor circuite este obţinerea unor circuite de memorie cu o capacitate cât mai mare pe o suprafaţă de semiconductor cât mai mică. Aceasta se poate realiza urmărind reducerea suprafeţei ocupate de o celulă şi a numărului de interconexiuni. Reducerea suprafeţei unei celule este legată de două aspecte:

- reducerea puterii disipate în celulă; - reducerea numărului de componente electronice ale unei celule şi a

dimensiunilor acestora.

7.2.2 Memoria RAM dinamic ă

Structura celulei de memorie poate fi simplificată în mod considerabil dacă pentru stocarea informaţiei se foloseşte sarcina acumulată într-un condensator. Starea 0 poate fi reprezentată printr-un condensator descărcat (tensiune zero) iar starea 1 printr-un condensator încărcat (tensiune diferită de zero). În figura 7.10 se prezintă un astfel de circuit în care capacităţile de memorare sunt realizate cu capacităţile grilă-sursă ale tranzistoarelor MOS. Eliminarea tranzistoarelor de sarcină din bistabil este posibilă, starea circuitului rămânând nemodificată datorită sarcinii acumulate în cele două condensatoare C1 şi C2.

Figura 7.9.Celula de memorare

SRAM cu tranzistoare CMOS

Page 9: 7 CAPITOLUL 7 CIRCUITE DE MEMORIE - ece.ubm.roece.ubm.ro/ea/cursuri/circuite_digitale/pdf/CD - C7 Memorii.pdf · Circuite digitale 106 - Volatilitatea. O memorie este volatil ă dac

Circuite digitale

112

Cele două condensatoare nu sunt realizate separat de tranzistoarele T1 şi T2 pe circuit ci sunt formate de capacitatea grilă canal a tranzistoarelor T1 şi T2. Dacă bistabilul este în starea T1 blocat şi T2 saturat, înseamnă că avem VGS1=0 şi VGS2>Vprag respectiv C1 descărcat şi C2 încărcat. Pentru situaţia când T3 şi T4 conduc, ansamblul T1, T2 , T3, T4 formează un bistabil similar cu cel din figura 7.8 şi circuitul îşi menţine starea. Dacă T3 şi T4 sunt blocate sarcina acumulată în C2 se pierde lent datorită descărcării prin joncţiunea drenă substrat a tranzistorului T1. Pentru un anumit interval de timp (≈2 ms) se poate considera că C2 rămâne încărcat şi informaţia înscrisă (T1 blocat şi T2 conducţie) se păstrează. Ca urmare circuitul poate funcţiona fără tranzistoarele de sarcină, folosind pentru memorare sarcina acumulată în condensatoarele C1 sau C2, cu condiţia ca ceasta să fie refăcută periodic. Refacerea ei se face pur şi simplu prin deschiderea tranzistoarelor T3 şi T4. Trebuie observat că o comandă de deschidere a tranzistoarelor T3 şi T4 afectează simultan toate celulele de pe aceeaşi linie WL şi deci refacerea sarcinii se face în toate celulele de pe linia selectată. Simultan cu refacerea sarcinii la fel ca la circuitele precedente se poate face şi citirea stării prin măsurarea curentului ce se închide prin liniile de bit şi rezistenţele conectate la +VDD. Deosebim deci următoarele moduri de lucru: Citire: se ridică nivelul liniei WL şi se citesc potenţialele liniilor de bit DL şi DL ; Scriere: se ridică nivelul liniei WL şi se forţează cu circuite adecvate potenţialele corespunzătoare pe liniile de bit DL şi DL pentru o anumită stare a bistabilului, de exemplu pentru a pune bistabilul în starea T1 blocat şi T2 în conducţie se aplică potenţial ridicat pe linia DL şi potenţial coborât pe linia DL. Refacerea sarcinii (refresh) în condensatoare: se face simultan cu citirea sau scrierea prin comanda WL, pentru o întreagă linie, refacerea sarcinii trebuie făcută pentru toate liniile matricei de memorie în intervalul de timp corespunzător , pentru ca sarcina pierdută să nu modifice starea bistabilului. Această structură de circuit are următoarele avantaje: - se folosesc numai patru tranzistoare pe celulă; - sunt necesare numai trei linii de legătură, lipsind linia de alimentare. Ca urmare, circuitul obţinut permite o densitate mai mare de celule de memorie şi respectiv o capacitate mai mare a memoriei pe aceeaşi suprafaţă de siliciu.

Folosind memorarea prin sarcina electrică a unui condensator, circuitul se poate simplifica în continuare, obţinându-se o structură cu trei tranzistoare pe celulă (figura 7.11).

Figura 7.10. Celula de memorare RAM MOS dinamic ă

Page 10: 7 CAPITOLUL 7 CIRCUITE DE MEMORIE - ece.ubm.roece.ubm.ro/ea/cursuri/circuite_digitale/pdf/CD - C7 Memorii.pdf · Circuite digitale 106 - Volatilitatea. O memorie este volatil ă dac

Capitolul 7. Circuite de memorie

113

Figura 7.11. Celula RAM MOS dinamica cu num ăr redus de componente

Figura 7.12. Celula RAM MOS dinamica

minimal ă

Elementul de memorie îl constituie condensatorul C constituit din capacitatea grilă canal a lui T1. Dacă C este descărcat atunci VGS1<Vprag şi T1 este blocat, iar dacă C este încărcat atunci T1 este în conducţie. Citirea se face prin aplicarea unui potenţial ridicat (VDD) pe linia R/WL. Aceasta determină intrarea în conducţie a lui T3 şi apariţia unui curent prin linia de bit dacă T1 este în conducţie. Sesizarea acestui curent permite recunoaşterea stării memorate în C. Înscrierea informaţiei în circuit se face prin comanda cu impuls pozitiv a liniei W/WL, ceea ce duce la deschiderea lui T2 şi forţarea liniei de bit în zero sau VDD în funcţie de informaţia ce trebuie înscrisă. Potenţialul respectiv se transmite condensatorului C descărcându-l sau încărcându-l. Reîmprosp ătarea sarcinii pe C, în cazul acestui circuit nu se mai face automat la citire, ne mai existând CBB. Ea trebuie făcută în mod explicit după o citire. În timpul citirii se înregistrează informaţia prezentă pe toate celulele selectate de R/WL şi apoi se reînscrie printr-o comandă pe W/WL împreună cu prezentarea acestei informaţii (0 sau 1) pe liniile de bit. Aceasta duce la complicarea circuitelor anexe pe fiecare coloană. Avantajul acestei structuri constă în principal în reducerea numărului de elemente pe celulă şi deci implicit în creşterea capacităţii memoriei pe unitatea de arie. Cea mai simplă structură a unei celule de memorie care foloseşte memorarea pe condensator este cea prezentată în figura 7.12. În acest circuit capacitatea Cs este realizată independent de tranzistor, constituind o parte componentă a celulei de memorie. Selecţia celulei se face prin deschiderea tranzistorului, aplicând potenţial pozitiv în grila sa (linia WL). Datele sunt citite sau scrise pe linia de bit DL.

7.2.3 Structura circuitelor de memorie şi semnale de comand ă

Circuitul de memorare propriu-zis este aranjat sub forma unei matrici în ale cărei noduri se găsesc celulele de memorie. Structura circuitului de memorie având o matrice de m x n celule este dată în figura 7.13. Pentru accesul la celula de memorie (i, j) se

Page 11: 7 CAPITOLUL 7 CIRCUITE DE MEMORIE - ece.ubm.roece.ubm.ro/ea/cursuri/circuite_digitale/pdf/CD - C7 Memorii.pdf · Circuite digitale 106 - Volatilitatea. O memorie este volatil ă dac

Circuite digitale

114

face selecţia liniei acţionând WLi şi selecţia coloanei prin perechea DLj • DL j .

Capacitatea memoriei este dată de produsul m x n şi se măsoară în biţi.

Figura 7.13. Structura unei matrici de memorie.

Celula de memorare dintr-o matrice poate fi cu funcţionare statică sau dinamică de unde şi denumirile corespunzătoare structurii respective de memorie SRAM, pentru memoria cu celule statice şi DRAM pentru memoria cu celule dinamice. O celulă statică păstrează un timp nedefinit informaţia înscrisă, în schimb la o celulă dinamică proprietatea de memorare a informaţiei depinde de timp în sensul că memorarea are loc un timp definit. Circuitele anexă care asigură funcţionarea unei celule de memorie sunt: - circuitele de selecţie - decodificatoare de linii şi coloane care permit selectarea prin linia WLi şi coloana DLj a celulei dorite; - circuitele de citire a informaţiei din celulă, conectate pe liniile de bit DLj şi DL j, aceste circuite sunt comune unei întregi coloane din matricea de memorie, ele sunt activate de decodificatorul de coloană; - circuite de înscriere a informaţiei în celulă, conectate de asemenea pe liniile de bit DLj şi DL j, acestea asigură forţarea potenţialelor liniilor de bit astfel încât să se înscrie informaţia corespunzătoare în celulă, şi aceste circuite sunt activate de decodificatorul de adresă.

Când numărul de celule de memorare este mare (>103) complexitatea circuitului de înscriere, citire şi în special a celui de selectare pentru aceste două operaţii întrece pe cea a celulelor care de fapt constituie suportul de memorare. Complexitatea circuitului de selectare se poate reduce printr-o structurare a celulelor într-o reţea matricială cu o selectare bidimensională, pe linii şi coloane. De aceea adresa de n biţi

Celulă de memorare

Page 12: 7 CAPITOLUL 7 CIRCUITE DE MEMORIE - ece.ubm.roece.ubm.ro/ea/cursuri/circuite_digitale/pdf/CD - C7 Memorii.pdf · Circuite digitale 106 - Volatilitatea. O memorie este volatil ă dac

Capitolul 7. Circuite de memorie

115

este divizată în două grupe de biţi, una se aplică decodificatorului liniilor matricei iar cealaltă grupă multiplexoarelor pentru coloane. Din punct de vedere tehnologic este recomandat ca matricea de celule să fie pătrată. O matrice pătrată necesită ca n/2 biţi de adresă să fie aplicaţi la DCD n/2:2n/2 pentru activarea uneia din cele 2n/2 linii iar ceilalţi n/2 biţi să fie aplicaţi circuitului MUX 2n/2:1 pentru selectarea uneia din cele 2n/2 coloane. La intersecţia liniei activate cu coloana selectată se află celula asupra căreia se poate realiza o operaţie de scriere sau citire (figura 7.14).

Această structurare, realizată doar cu un circuit multiplexor pentru selectarea pe dimensiunea orizontală trebuie completată. Deoarece o celulă poate primi date, prin înscriere, şi poate genera date, prin citire, circuitul de selectare pe orizontală trebuie să permită transferul bidirecţional al datelor. O astfel de structură, ce poate atât să distribuie date (DMUX) cât şi să selecteze date (MUX) este referită ca un circuit multiplexor-demultiplexor.

Pentru a prezenta structura circuitelor de memorie de tip SRAM luăm ca exemplu memoria uPD43256B care este o memorie SRAM de 32K x8 biţi. Simbolul logic este prezentat în figura 7.15.a.

RAM 32kx8

43256

A0A1A2A3A4A5A6A7A8A9A10A11A12A13A14

CE

OEWE

D0D1D2D3D4D5D6D7

VCC

a) Simbolul logic b) Configuraţia ariei de memorie

Figura 7.15. Memoria uPD43256B, SRAM de 32K x8 bi ţi

Matrice de memorie 256 linii x

128 coloane x 8 biţi

Figura 7.14

128 coloane

8 biţi

256linii

Page 13: 7 CAPITOLUL 7 CIRCUITE DE MEMORIE - ece.ubm.roece.ubm.ro/ea/cursuri/circuite_digitale/pdf/CD - C7 Memorii.pdf · Circuite digitale 106 - Volatilitatea. O memorie este volatil ă dac

Circuite digitale

116

Matricea de memorie conţine la intersecţia unei linii cu o coloană o celulă de memorie de 1 bit. Liniile de intrare şi ieşire de date I/O1 până la I/O8 sunt comune. Pentru a putea folosii linii comune pentru intrare şi ieşire se folosesc circuite tampon cu trei stări (buffere tristate). Figura 7.15.b prezintă organizarea ariei de memorie.

Figura 7.16. Schema bloc a memoriei µPD43256B.

Funcţionarea memoriei este următoarea. Pentru ca memoria să poată funcţiona ea trebuie să primească un semnal CS de valoare zero logic. Liniile de adresă sunt împărţite în două grupe. Opt din cele 15 linii de dresă sunt decodificate de decodificatorul de linii pentru a selecta o linie din cele 256 iar restul de şapte de decodificatorul de coloane care selectează o coloană din 128. La intersecţia dintre linia şi coloana selectată se găseşte cuvântul de 8 biţi care trebuie citit sau scris.

1

Matrice de memorie 256 linii x 128 x 8 coloane

I/E8

Linii de adresă

1 2

7

1

12

7

I/E1

Ieşire date

12

7

linii

Intrări/Ieşiri coloane

Linii de adresă

__ CS

__ OE

8 buffere de intrare

__ WE

8 buffere de ieşire

Controldate

intrare

2

7 Decodificator coloane

Decodificator

G1

G2

Page 14: 7 CAPITOLUL 7 CIRCUITE DE MEMORIE - ece.ubm.roece.ubm.ro/ea/cursuri/circuite_digitale/pdf/CD - C7 Memorii.pdf · Circuite digitale 106 - Volatilitatea. O memorie este volatil ă dac

Capitolul 7. Circuite de memorie

117

Semnalele sunt transmise în exterior prin intermediul unor circuite de intrare şi ieşire. Circuitul de control comandă circuitele care participă la realizarea funcţiei de citire sau scriere. De exemplu pentru citire semnalul WE trebuie să fie 1 logic şi semnalul OE zero logic. Bufferele de intrare sunt dezactivate de poarta G1 şi bufferele de ieşire pe coloane sunt activate de poarta G2. Deci cei 8 biţi de date de la adresa selectată sunt trimise prin liniile de I/E pe coloane spre liniile de date (I/O1 la I/O8) care funcţionează ca linii de ieşire. Pentru scriere semnalul WE este 0 logic şi OE 1 logic ceea ce duce la activarea de către poarta G1 a circuitelor de intrare şi dezactivarea de către poarta G2 a circuitelor de ieşire. Cei 8 biţi de date de la intrare sunt trimise prin circuitul de control de la intrare şi I/E coloane la adresa selectată pentru memorare.

Pentru funcţionarea corectă a circuitelor de memorie semnalele aplicate la borne trebuie să satisfacă anumite restricţii de timp. În figura 7.17 sunt prezentate semnalele pentru citirea (a) şi scrierea (b) într-o memorie RAM. Pentru citire se aplică un cod de adresă valid pentru un interval de timp tRC - ciclu de citire care reprezintă intervalul de timp între două schimbări de adresă. Apoi se aplică semnalul CS = 0. După un timp notat tCS - timpul de apariţie a datelor după aplicarea impulsului pe CS, datele valide apar pe liniile de date. Se mai definesc: - TA - timp de acces la memorie = timpul scurs de la stabilirea adreselor până la obţinerea datelor valide la ieşire; - tOTD - intervalul de timp cât datele sunt stabile la ieşire; Impulsul de scriere-citire (R/ W =1) are valoare corespunzătoare citirii din memorie pe toată durata ciclului.

a) b)

Figura 7.17. Diagrame de timp pentru ciclu de citir e şi scriere

Pentru scriere se aplică un cod de adresă validă pentru un interval de timp numit ciclu de scriere tWC. Apoi semnalele CS şi R/ W (WE ) se pun în zero logic şi datele se aplică pe intrare. Notaţiile din figura 7.17.b au următoarea semnificaţie: - tWA - intervalul de timp în care adresele trebuie să rămână stabile în raport cu frontul posterior al impulsului de scriere; - tW - durata impulsului de scriere;

Page 15: 7 CAPITOLUL 7 CIRCUITE DE MEMORIE - ece.ubm.roece.ubm.ro/ea/cursuri/circuite_digitale/pdf/CD - C7 Memorii.pdf · Circuite digitale 106 - Volatilitatea. O memorie este volatil ă dac

Circuite digitale

118

- tDS - timp de pregătire a datelor în raport cu momentul înscrierii; - tDM - timp de menţinere a datelor după dispariţia impulsului de scriere.

După cum se observă din figura 7.17.b datele ce se înscriu în memorie trebuie să rămână stabile un interval de timp tDS + tDM în jurul frontului posterior al impulsului de scriere. De asemenea impulsul de scriere R/ W =0 nu poate veni înaintea stabilirii adreselor şi poate fi simultan cu CS.

7.3 Memoriile ROM, PROM, EPROM, EEPROM (E2PROM)

În esenţă memoria ROM (Read Only Memory) este un convertor de cod compus dintr-un decodificator şi un codificator. Interpretând vectorul de intrare al DCD ca un cod de adresă, datele obţinute la ieşirea CD reprezintă informaţia înmagazinată la adresa respectivă. Rezultă că sediul informaţiei memorate în ROM este codificatorul, a cărui structură determină cuvântul binar de ieşire pentru fiecare adresă în parte. Structura codificatorului este stabilită în procesul de fabricaţie al CI sau poate fi impusă de utilizator prin programare. În aceste condiţii ROM devine o memorie fixă (care poate fi numai citită), nevolatilă al cărui conţinut nu se modifică în funcţionare. O memorie ROM memorează date care se folosesc în mod repetat în aplicaţii cum ar fi tabele, conversii, sau instrucţiuni de program pentru iniţializarea sistemului. Figura 7.18 prezintă clasificarea memoriilor ROM.

ROM

ROM

programat prin mască

la producător

ROM programabil la utilizator

(PROM)

PROM cu ştergere

(EPROM)

EPROM cu ştergere cu ultraviolete

(UV EPROM)

PROM cu ştergere electrică

(EEPROM)

Figura 7.18. Familia de circuite ROM

Memoria ROM programată prin mască este tipul în care datele sunt înscrise în timpul procesului de fabricare. Memoriile PROM sau memoriile ROM programabile sunt memoriile în care datele sunt înscrise pe cale electrică de către utilizator cu ajutorul unui echipament special numit programator de memorii. Ambele tipuri de memorie de mai sus pot fi realizate atât în tehnologie bipolară cât şi MOS. Memoria EPROM sau memoria PROM care poate fi ştearsă se poate realiza numai în tehnologie MOS. Memoria UV EPROM poate fi programată pe cale electrică de către utilizator, dar poate fi ştearsă numai prin expunere la raze ultraviolete pentru o perioadă de câteva minute. Memoria EPROM care poate fi ştearsă pe cale electrică se numeşte memorie EEPROM sau E2PROM şi poate fi ştearsă în câteva milisecunde. Schema bloc a unei memorii ROM este prezentată în figura 7.19. Cele n linii de adresă (intrările A0, A1,…An-1) sunt decodificate în m = 2n linii de cuvânt (W0,…,Wm-1), iar (CD), care constituie matricea de memorie, furnizează la ieşire m cuvinte de câte k biţi (O0,…,Ok-1). Capacitatea C a unei memorii fixe este determinată de numărul de biţi ai

Page 16: 7 CAPITOLUL 7 CIRCUITE DE MEMORIE - ece.ubm.roece.ubm.ro/ea/cursuri/circuite_digitale/pdf/CD - C7 Memorii.pdf · Circuite digitale 106 - Volatilitatea. O memorie este volatil ă dac

Capitolul 7. Circuite de memorie

119

matricei de memorie (C=mk). Ea se exprimă de cele mai multe ori în kilobiţi (1 kbit = 1024 biţi).

Figura 7.19. Schema bloc a unei memorii ROM.

Din punctul de vedere al tehnologiei se deosebesc memorii ROM realizate în tehnologie bipolară sau în tehnologie MOS. Primele sunt utilizate în aplicaţiile în care timpul de acces la informaţia memorată trebuie să fie mic (zeci de ns), iar cea de a doua categorie este proprie aplicaţiilor care necesită capacităţi mari de memorare la un timp de acces de ordinul sutelor de ns. Programarea memoriilor ROM este procesul prin care se stabileşte conţinutul memoriei, în conformitate cu aplicaţia avută în vedere, acţionând asupra codificatorului (matricei de memorie). Metodele folosite pentru programare depind de tipul memoriei.

7.3.1 Memoriile bipolare

Memoriile bipolare pot fi programate atât la producător prin mască (Mask ROM) cât şi la utilizator (PROM), prin aplicarea unor proceduri de programare.

7.3.1.1 Programarea prin masc ă.

Considerând codificatorul realizat cu tranzistoare în conexiunea colector comun, fiecărui bit corespunzându-i un tranzistor şi reprezentând doar tranzistoarele ce corespund unei singure linii de cuvânt Wp (figura 7.20). În primele etape ale procesului tehnologic se realizează matricea de memorie lăsând întrerupte legăturile bazelor tranzistoarelor la linia de cuvânt (sau ale emitoarelor la linia de bit L0, L1,L2,L3).

Programarea constituie o etapă a procesului de fabricaţie în care cu ajutorul unei măşti, în conformitate cu cerinţele utilizatorului, se realizează unele dintre legăturile l0,..,l3 pentru fiecare cuvânt în parte. De exemplu dacă liniei Wp îi corespunde cuvântul 1010, se realizează conectarea bazei tranzistoarelor T3 şi T1. Astfel la selecţia liniei de cuvânt Wp tranzistoarele T3 şi T1 intră în conducţie şi căderea de tensiune pe rezistenţele din emitor transmit un 1 logic pe liniile de bit respective (O3 şi O1). Celelalte tranzistoare fiind blocate potenţialul liniilor O2 şi O0 este zero. Principalul dezavantaj al acestei metode este costul ridicat, mai ales pentru serii mici de circuite.

Figura 7.20. ROM programat prin masc ă

Page 17: 7 CAPITOLUL 7 CIRCUITE DE MEMORIE - ece.ubm.roece.ubm.ro/ea/cursuri/circuite_digitale/pdf/CD - C7 Memorii.pdf · Circuite digitale 106 - Volatilitatea. O memorie este volatil ă dac

Circuite digitale

120

7.3.1.2 Programarea de c ătre utilizator.

În figura 7.21 se prezintă partea corespunzătoare unei linii de cuvânt pentru codificatorul unei memorii fixe programabile de către utilizator (PROM). Aici elementele de memorie pot fi considerate pelicule subţiri de crom-nichel (f0, f1, f2, f3), care pot fi întrerupte sau nu de către utilizator, prin trecerea unui curent de programare Ip, intens (zeci sau sute de mA) şi de scurtă durată (zeci de ms) prin circuitul marcat cu linie întreruptă. Diodele d au rolul de a împiedica ramificarea curentului de programare spre f2, f1 şi f0. Dacă se doreşte programarea cuvântului 1010 se întrerup f3 şi f1. La selecţia liniei de cuvânt tranzistorul T intră în conducţie şi pune la masă liniile de bit care au conexiunea neîntreruptă (O2 şi O0), restul liniilor fiind în 1 logic în mod permanent. Evident că legăturile întrerupte nu mai pot fi refăcute şi modificarea conţinutului memoriei programate se poate face numai dacă faţă de prima programare sunt necesare doar treceri ale valorii unor biţi de pe 0 pe 1.

7.3.2 Memoriile ROM realizate în tehnologie unipola ră

La fel ca şi memoriile bipolare, memoriile realizate în tehnologie unipolară pot fi: programabile prin mască şi programabile la utilizator.

7.3.2.1 Programarea prin masc ă

Aceasta se face de producător pe baza tabelului privind conţinutul matricei de memorie, furnizat de utilizator. În primele etape ale procesului de fabricaţie se realizează toate tranzistoarele MOS din nodurile matricei codificatorului, cu excepţia depunerii stratului izolant al porţii şi a electrodului poartă. În etapa de programare, tranzistoarele inactive se realizează cu o grosime mai mare a stratului izolant al porţii, iar cele active cu o grosime mai mică. În situaţia prezentată în figura 7.22, pentru programarea cuvântului 1010, tranzistoarele T3 şi T1 vor f realizate cu un strat izolant al porţii de grosime mai mare, rămânând blocate indiferent de nivelul logic aplicat la linia de cuvânt Wp. În această figură cu Ts s-au notat tranzistoarele de sarcină.

Figura 7.21. ROM programat la utilizator

Figura 7.22. Memorie ROM MOS

Page 18: 7 CAPITOLUL 7 CIRCUITE DE MEMORIE - ece.ubm.roece.ubm.ro/ea/cursuri/circuite_digitale/pdf/CD - C7 Memorii.pdf · Circuite digitale 106 - Volatilitatea. O memorie este volatil ă dac

Capitolul 7. Circuite de memorie

121

7.3.2.2 Programarea de c ătre utilizator.

În tehnologia MOS există două metode pentru realizarea memoriilor fixe, programabile pe cale electrică de către utilizator (EPROM). Prima dintre ele este similară cu cea folosită la programarea la utilizator a memoriilor ROM bipolare şi constă în arderea unor legături fuzibile prin intermediul unui curent controlat. Cea de a doua se bazează pe folosirea unei porţi flotante neconectate la circuitul exterior şi plasată izolat între poarta propriu-zisă şi substrat. În cazul utilizării tranzistoarelor cu canal N, încărcarea porţii flotante cu o sarcină electrică negativă echivalează cu creşterea tensiunii de prag poartă-sursă. Această creştere poate fi atât de mare încât tranzistorul rămâne blocat chiar dacă la poartă se aplică un potenţial corespunzător nivelului logic superior. Deci, încărcarea cu sarcină negativă a porţii flotante duce la dezactivarea tranzistorului respectiv. În procesul de programare la utilizator, prin aplicarea impulsurilor de programare este realizată dezactivarea unor tranzistoare din nodurile matricei codificatoare, în conformitate cu programul ce urmează să fie înscris. Ştergerea informaţiei înscrise, adică readucerea tuturor tranzistoarelor în stare activă, se poate face prin iradierea matricei de memorie cu radiaţii ultraviolete prin fereastra de cuarţ cu care este prevăzută capsula. După ştergere, memoria poate fi programată din nou. Operaţiile de ştergere şi reprogramare pot fi repetate de mai multe ori. În afară de memoriile ROM amintite mai sus, sunt de menţionat şi memoriile EAROM (Electricaly Alterabile ROM) sau EEPROM (Electricaly Erasable PROM) realizate în tehnologie MOS, prevăzute cu posibilitatea ştergerii pe cale electrică. În figura 7.23 este arătată organizarea tipic ă a unei memorii ROM de 8 kbi ţi.

Figura 7.23.Organizarea tipic ă a unei memorii de 8 kbi ţi

128

8

Page 19: 7 CAPITOLUL 7 CIRCUITE DE MEMORIE - ece.ubm.roece.ubm.ro/ea/cursuri/circuite_digitale/pdf/CD - C7 Memorii.pdf · Circuite digitale 106 - Volatilitatea. O memorie este volatil ă dac

Circuite digitale

122

Se constată că selecţia unui cuvânt de ieşire de 8 biţi (O7, …,O0) nu se face cu ajutorul unui DCD cu 1024 linii de ieşire ci, în scopul reducerii numărului de porţi folosite sunt utilizate: un DCD cu 128 de linii şi 8 MUX cu 8 căi. Intrările CS1 şi CS2 permit selectarea sau deselectarea capsulei de memorie prin intermediul celor 8 amplificatoare de ieşire (circuite ŞI-NU) care sunt prevăzute cu etaje de ieşire având colectorul în gol sau sunt circuite cu trei stări. Aceste două tipuri de circuite de ieşire fac posibilă interconectarea ieşirilor a mai multor capsule de memorie respectiv conectarea capsulei la o magistrală.

Pentru memoriile ROM un ciclu tipic este dat în figura 7.24. Semnificaţia notaţiilor este următoarea: - tRC - durata ciclului de citire; - tA - timp de acces la memorie; - tCS - intervalul de timp în raport cu CS după care apar date stabile la ieşire; - tOE - intervalul de timp după care apar date stabile la ieşire în raport cu impulsul OE ; - tOH - timp de menţinere a datelor la ieşire după dispariţia impulsului OE . Impulsul de comandă a ieşirii OE în general se poate aplica simultan cu CS.

Figura 7.24. Ciclu tipic pentru citirea unei memori i ROM

În cazul memoriilor programabile la utilizator, operaţia de programare se efectuează în stare neselectată a capsulei, iar pentru memoriile EPROM, capsula este prevăzută cu o intrare suplimentară la care sunt aplicate impulsurile de programare.

Figura 7.25. Structura intern ă a unei memorii PROM, EPROM

Page 20: 7 CAPITOLUL 7 CIRCUITE DE MEMORIE - ece.ubm.roece.ubm.ro/ea/cursuri/circuite_digitale/pdf/CD - C7 Memorii.pdf · Circuite digitale 106 - Volatilitatea. O memorie este volatil ă dac

Capitolul 7. Circuite de memorie

123

Structura internă a unei memorii PROM, EPROM este prezentată în figura 7.25. Circuitul de ieşire trebuie să asigure posibilitatea programării memoriei în cazul memoriilor PROM sau EPROM. Semnalul de control CS face selecţia circuitului controlând şi starea ieşirilor (mare impedanţă sau conectate la magistrala de date) în timp ce semnalul OE (output enable) controlează numai starea circuitelor de ieşire. Pentru OE=1 ieşirea este în stare de mare impedanţă. Acelaşi lucru se întâmplă şi dacă CS=1 indiferent de valoarea lui OE . Trebuie amintit că în general deselectarea circuitului ( CS=1) atrage după sine şi scăderea puterii consumate de circuit de la sursa de alimentare fără a se altera informaţia memorată. Acest lucru îl întâlnim atât la memoriile RAM cât şi ROM (PROM, EPROM).

Forma impulsurilor şi duratele lor pentru programarea unei memorii (PROM, EPROM) se dă în cataloagele circuitelor respective. Având în vedere dublul caracter al memoriilor ROM (PROM, EPROM), de convertor de cod şi memorie, aria de utilizare a acestora este extrem de largă. Dintre principalele aplica ţii se pot menţiona următoarele: Memorarea instrucţiunilor şi datelor în sisteme de calcul şi automate secvenţiale. Efectuarea transformărilor de adresă şi înmagazinarea microinstrucţiunilor, în microprogramare. Implementarea CLC cu un număr mare de variabile de intrare şi cu mai multe ieşiri. În cazul acestei aplicaţii este de remarcat faptul că datorită structurii interne a memoriei ROM fiecare linie de cuvânt reprezintă un termen al formei canonice, iar codificatorul permite însumarea acestor termeni în conformitate cu tabelul de adevăr, eliminându-se necesitatea minimizării. Conversia de cod este de asemenea una din aplicaţiile frecvente ale memoriilor fixe. Sunt de amintit aici convertoarele pentru afişarea prin 7 segmente sau 35 de puncte, precum şi generatoarele de caracter care deservesc sistemele pentru afişarea alfanumerică a datelor pe ecranul unui tub catodic. Realizarea unor tabele de funcţii în cadrul sistemelor de calcul sau conducere numerică, care constituie în fond un sistem de conversie a codului binar reprezentând argumentul funcţiei în codul de ieşire care furnizează valorile corespunzătoare ale funcţiei. Se realizează astfel de tabele pentru funcţii frecvent întâlnite ca cele logaritmice, trigonometrice sau exponenţiale. Generarea unor secvenţe de impulsuri cu ajutorul memoriei ROM, realizabilă prin programarea corespunzătoare a acesteia şi modificarea secvenţială a adresei de intrare cu ajutorul unei numărător binar. La cele k ieşiri de date se poate obţine acelaşi număr de secvenţe distincte. Este de menţionat că în toate aplicaţiile memoriei fixe este necesar să se urmărească utilizarea cât mai completă a capacităţii sale, respectiv să se adopte măsuri de reducere a capacităţii necesare prin codificare la intrare sau decodificare la ieşire.

Page 21: 7 CAPITOLUL 7 CIRCUITE DE MEMORIE - ece.ubm.roece.ubm.ro/ea/cursuri/circuite_digitale/pdf/CD - C7 Memorii.pdf · Circuite digitale 106 - Volatilitatea. O memorie este volatil ă dac

Circuite digitale

124

7.4 Extinderea capacităţii memoriilor

Dată fiind capacitatea unei capsule de memorie prin produsul dintre numărul de cuvinte m şi numărul de biţi ai cuvântului de ieşire k, există posibilitatea de a realiza o memorie de capacitate mai mare prin utilizarea unui număr sporit de capsule. Extinderea capacităţii se poate obţine acţionând asupra numărului de cuvinte, lăsând numărul biţilor pe cuvânt neschimbat (extindere la intrare sau de adresă), modificând numărul biţilor de ieşire la un număr neschimbat de cuvinte (extindere la ieşire), respectiv atât prin modificarea lui m cât şi a lui k (extindere mixtă). Figura 7.26 ilustrează extinderea de adresă de la o capacitate de (1x8) Kbiţi pe capsulă la (4x8) Kbiţi, iar în figura 7.27 este prezentată extinderea mixtă de la (1x8) Kbiţi pe capsulă la (2x16) Kbiţi.

Figura 7.26. Extinderea de adres ă

a capacit ăţii memoriilor

Figura 7.27. Extinderea mixt ă

a capacit ăţii memoriilor