Sunteți pe pagina 1din 4

Circuite Numerice

Memorii

LUCRAREA nr. 13

Memorii
1. Memorii de tip FIFO (First In First Out) O astfel de memorie este caracterizat prin faptul c primul cuvnt nscris, va fi primul cuvnt ce va aprea la ieire la o operaie de citire. Pentru a realiza o astfel de memorie, sunt necesare RD. ntru-ct aplicaiile cele mai utilizate folosesc cuvinte de 8 bii, vom prezenta o memorie de 8 bii: Capacitatea unei astfel de memorii este dat de lungimea RD (de numrul celulelor RD). Se utilizeaz pentru memorarea temporar a datelor ce intr ntr-un sistem (circuit tampon). Dup recepionarea unui bloc de date (memoria este plin), se transfer coninutul n sistem. Astfel nu se ntrerupe funcionarea (bucla principal de program) la recepionarea fiecrui cuvnt, nlturnduse timpii pierdui pentru tratarea operaiilor de ntrerupere. De exemplu conectarea unui convertor A/D la un sistem cu microprocesor se face prin intermediul unei astfel de memorii.
D0 tact SIS-D CK

RD0

SOS-D

Q0

D1

SIS-D CK

RD1

SOS-D

Q1

D7

SIS-D CK

RD7
Figura 1

SOS-D

Q7

a) memorii de tip LIFO (Last In First Out) Aceasta este o memorie de tip stiv: ultimul cuvnt nscris va fi primul cuvnt citit. Realizarea unei memorii LIFO se face cu registre universale, ca n figura urmtoare. Lungimea cuvntului ce poate fi memorat fixeaz numrul de RU necesare, iar capacitatea maxim a memoriei stabilete
77

Circuite Numerice

Memorii

LUCRAREA nr. 13
D0 tact SIS-D CK SOD-S Q0

RU0

A0 A1 SOD-S Q1

D1

SIS-D CK

RU1

A0 A1

D7

SIS-D CK

SOD-S

Q7

RU7

A0 A1 A1 A0

Figura 2 lungimea fiecrui RU. Tabelele urmtoare ilustreaz funcionarea memoriei LIFO de 4 cuvinte. Pe intrrile SIS-D se aplic cuvntul de memorat. Modul de funcionare al RU este selectat de deplasare stnga-dreapta prin A0=A1=0. Fiecare impuls de tact va nscrie cuvntul aflat la D0-7 n registre. La tactul urmtor, primul cuvnt se deplaseaz n celulele urmtoare, iar noul cuvnt aflat pe intrri se memoreaz n primele celule din fiecare RU, .a.m.d. Cnd se dorete citirea din memorie, se stabilete A0=1 i A1=0, fiecare tact realiznd citirea informaiei existente n primele celule, i deplasarea coninutului din registre spre stnga.
A0=0, A1=0nscriere registru (deplasare S-D)
RU0 RU1 RU2 RU3 RU4 RU5 RU6 RU7

Q0 Q1 Q2 Q3

x0

x1

x2

x3

x4

x5

x6

x7

A0=0, A1=0nscriere registru (deplasare S-D)


RU0 RU1 RU2 RU3 RU4 RU5 RU6 RU7

Q0 Q1 Q2 Q3

y0 x0

y1 x1

y2 x2

y3 x3
78

y4 x4

y5 x5

y6 x6

y7 x7

Circuite Numerice

Memorii

LUCRAREA nr. 13
A0=1, A1=0nscrie registru (deplasare S-D)
RU0 RU1 RU2 RU3 RU4 RU5 RU6 RU7

Q0 Q1 Q2 Q3

z0 y0 x0

z1 y1 x1

z2 y2 x2

z3 y3 x3

z4 y4 x4

z5 y5 x5

z6 y6 x6

z7 y7 x7

A0=0, A1=0citire registru (deplasare D-S)


RU0 RU1 RU2 RU3 RU4 RU5 RU6 RU7

Q0 Q1 Q2 Q3

y0 x0

y1 x1

y2 x2

y3 x3

y4 x4

y5 x5

y6 x6

y7 x7

Acest tip de memorie se utilizeaz la memorarea adreselor, de la care se abandoneaz programul, pentru executarea unor subrutine de tratare a cererilor de ntrerupere, pentru ca programul s tie unde s revin. In cazul n care a aprut o cerere de ntrerupere, sistemul a salvat adresa instruciunii la care ajunsese programul x7x6...x1x0, dup care ncepe execuia subprogramului de tratare a ntreruperii. n acest timp survine o alt ntrerupere, care determin suspendarea activitii i saltul la alt adres. Se salveaz n memorie adresa curent y7y6...y1y0 i se execut o alt subrutin. i aceasta este ntrerupt la rndul ei. Se salveaz n memoria LIFO noua adres curent z7z6...z1z0 i se sare la adresa subrutinei de ntrerupere asociate noii ntreruperi. Terminare tratrii acestei ntreruperi, duce la revenirea n program, la adresa z7z6...z1z0 i execuia pn la capt a subrutinei abandonate. La terminarea ei se va relua subrutina anterioar de la adresa y7y6...y1y0, i n final se va reveni n bucla principal de program, la adresa x7x6...x1x0. 5. Lucrri de efectuat n laborator Se completeaz fia de laborator disponibil la adresa: http://www.ee.tuiasi.ro/~demm/Digital_Circuits/FiaLab13.DOC

79

Circuite Numerice

Memorii

LUCRAREA nr. 13 FIA LABORATOR


1. Se realizeaz un registru de deplasare cu CBB de tip D cu 8 celule. Se utilizeaz acesta pentru a realiza o memorie FIFO de 8 locaii de 8 bii. Se aplic la intrare cuvinte de 8 bii i se urmrete deplasarea acestora prin memorie de la un capat la altul. Ieirile se realizeaz sub form de magistral. Formele de und rezultate se copie mai jos. Se noteaz timpii de ntrziere i valorile logice pe formele de und. Se compar rezultatele cu tabelul de adevr.
Ck Q0[7..0] Q1[7..0] Q2[7..0] Q3[7..0] Q4[7..0] Q5[7..0] Q6[7..0] Q7[7..0] Q[7..0]

2. Se realizeaz un registru universal cu N=4 n MaxPlus II i se construiete apoi o memorie LIFO de 8 bii. Se nscriu 3 cuvinte n memorie i apoi se extrag. Formele de und rezultate se copie mai jos. Se noteaz timpii de ntrziere i valorile logice pe formele de und. Se compar rezultatele cu tabelul de adevr.
Ck A0 A1 D[7..0] Q0[7..0] Q1[7..0] Q2[7..0] Q3[7..0]

80

S-ar putea să vă placă și