Referat, comentariu, eseu, proiect, lucrare bacalaureat, liceu si facultate
Top referateAdmitereTesteUtileContact
      
    


 


Ultimele referate adaugate

Adauga referat - poti sa ne ajuti cu un referat?

Politica de confidentialitate





Ultimele referate descarcare de pe site
  CREDITUL IPOTECAR PENTRU INVESTITII IMOBILIARE (economie)
  Comertul cu amanuntul (economie)
  IDENTIFICAREA CRIMINALISTICA (drept)
  Mecanismul motor, Biela, organe mobile proiect (diverse)
  O scrisoare pierduta (romana)
  O scrisoare pierduta (romana)
  Ion DRUTA (romana)
  COMPORTAMENT PROSOCIAL-COMPORTAMENT ANTISOCIAL (psihologie)
  COMPORTAMENT PROSOCIAL-COMPORTAMENT ANTISOCIAL (psihologie)
  Starea civila (geografie)
 




Ultimele referate cautate in site
   domnisoara hus
   legume
    istoria unui galban
   metanol
   recapitulare
   profitul
   caract
   comentariu liric
   radiolocatia
   praslea cel voinic si merele da aur
 
despre:
 
Aplicatii ale circuitelor basculante bistabile
Colt dreapta
Vizite: ? Nota: ? Ce reprezinta? Intrebari si raspunsuri
 

3.2.1. Numaratoare j8p16pg
Numaratoarele sunt circuite logice secventiale care inregistreaza numarul de impulsuri aplicate la intrare. Ele se realizeaza prin asocierea circuitelor basculante bistabile, avand rol de celule de memorie binara, cu circuite logice combinationale, care determina modul corect in care urmeaza ca numaratorul sa-si schimbe starea la fiecare nou impuls aplicat la intrare.
Clasificare
Clasificarea numaratoarelor se face dupa anumite criterii:
1. modul de functionare (comutare a bistabililor):
- asincrone -; celulele de memorie din care este construit numaratorul nu comuta simultan ci aleator;
- sincrone -; celulele de memorie din care este construit numaratorul comuta simultan sub actiunea unui impuls de tact aplicat simultan tuturor celulelor.
2. modul de modificare a starilor (continutului):
- directe -; isi cresc continutul cu o unitate la fiecare impuls aplicat la intrare;
- inverse -; continutul scade cu o unitate la fiecare impuls aplicat la intrare;
- reversibile -; numara direct sau invers, in functie de o comanda aplicata din exterior.
3. modul de codificare a informatiei:
- binare
- binar-zecimale
- modulo “p” etc.
Numaratoarele se pot realiza cu celule de memorie de tip T care realizeaza o divizare cu 2. Prin interconectarea a “n” celule de memorie se obtine un numarator cu un numar de stari distincte. Fiecarei stari ii vom asocia cate un cuvant de cod binar de lungime “n”, reprezentand continutul celor “n” celule binare pentru starea data a numaratorului. Codul in care numara un numarator va fi dat de succesiunea cuvintelor de cod binar asociate starilor numaratorului.
Numarul starilor stabile distincte posibile ale unui numarator format din “n” celule binare este 2n. Daca din aceste stari se elimina “k” stari rezulta un numarator cu p = 2n -; k stari distincte. Matematic, operatia realizata de numarator este o operatie modulo “p”.




Definitii:
Capacitatea numaratorului = numarul starilor sale distincte.
Factorul de divizare = raportul dintre numarul de impulsuri de la intrare si numarul impulsurilor de la iesire.
Observatie. Un numarator functioneaza de fapt si ca un divizor de frecventa.
Tipuri de numaratoare
1. Numarator binar asincron direct
Schema logica a numaratorului este realizata prin conectarea in cascada a bistabililor de tip JK in configuratie de bistabili de tip T:
Q0 Q1 Q2

J0 Q0 J1 Q1 J2 Q2
CLK0 CLK1 CLK2
K0 Q0 K1 Q1 K2 Q2

1 1 1 R

Q0, Q1, Q2, iesirile numaratorului, ne dau starea lui la un moment dat.
R este semnalul de Reset, folosit pentru aducerea numaratorului in starea initiala, la 000.
Intrarile bistabililor JK sunt toate legate la “1” logic, deci bistabilii vor comuta la fiecare impuls de tact.
Tact exterior se aplica doar pe intrarea primului bistabil.
Formele de unda pentru numaratorul binar asincron direct sunt:

CLK

Q0

Q1

Q2

Q2 0 0 0 0 1 1 1 1
Q1 0 0 1 1 0 0 1 1
Q0 0 1 0 1 0 1 0 1
Numaratorul este modulo 8, numarand direct in binar, de la 000 la 111. El basculeaza pe fronturile descrescatoare ale impulsurilor de tact.
Daca dorim sa obtinem valorile numarului in zecimal putem utiliza iesirile numaratorului, Q0, Q1, Q2, ca si intrari intr-un decodificator binar zecimal.
Dezavantajul numaratorului asincron este ca timpul de comutare, in cel mai defavorabil caz, este egal cu suma timpilor de comutare a tuturor bistabililor care il compun. Avantajul lui consta in simplitatea schemei, realizata doar cu bistabile, prin interconectari directe.
2. Numarator binar asincron invers
Schema logica a numaratorului este:
Q0 Q1 Q2

J0 Q0 J1 Q1 J2 Q2
CLK0 CLK1 CLK2
K0 Q0 K1 Q1 K2 Q2

1 1 1 R

Formele de unda pentru numaratorul binar asincron invers sunt:

CLK

Q0

Q1

Q2

Q2 0 1 1 1 1 0 0 0 0
Q1 0 1 1 0 0 1 1 0 0
Q0 0 1 0 1 0 1 0 1 0
Numaratorul este modulo 8, numarand invers in binar, de la 111 la 000. El basculeaza pe fronturile descrescatoare ale impulsurilor de tact.
3. Numarator binar asincron reversibil
Numaratorul binar asincron reversibil are celula de memorie de baza ca si numaratoarele asincrone anterioare, dar intre celulele de memorie se intercaleaza multiplexoare de tip 2:1 prin care se comanda sensul de numarare.
Q0 Q1 Q2

J0 Q0 A Mux J1 Q1 A Mux J2 Q2
CLK0 2:1 Y CLK1 2:1 Y CLK2
K0 Q0 B K1 Q1 B K2 Q2

1 1 1 R
S

Pentru S = 0 numaratorul numara direct, iar pentru S = 1 numaratorul numara invers.
4. Numarator binar sincron serie si paralel
Realizarea numaratoarelor de tip sincron are ca scop cresterea vitezei de comutare a numaratorului in ansamblu.
Functionarea acestor numaratoare este sincrona, bistabilii, de tip JK, avand intrarile de CLK legate impreuna. Pe baza tabelului de adevar se obtine logica combinationala suplimentara, care asigura functionarea corecta a numaratorului.

Nr. Q0 Q1 Q2 Q3
0 0 0 0 0
1 1 0 0 0
2 0 1 0 0
3 1 1 0 0
4 0 0 1 0
5 1 0 1 0
6 0 1 1 0
7 1 1 1 0
8 0 0 0 1
9 1 0 0 1
10 0 1 0 1
11 1 1 0 1
12 0 0 1 1
13 1 0 1 1
14 0 1 1 1
15 1 1 1 1

Schema logica pentru numaratorul binar sincron serie este:

Q0 Q1 Q2 Q3

1
S S S S
J Q J Q J Q J Q
CLK CLK CLK CLK
K Q K Q K Q K Q
R R R R

Reset

Intrarile J si K ale primului bistabil sunt legate la 1 “logic” si vor comuta bistabilul la fiecare tact (conform tabelului de adevar). Al doilea bistabil comuta doar din 2 in 2 impulsuri de tact, adica atunci cand Q0 trece din 1 in 0, deci pot fi legate la iesirea primului bistabil. Al treilea bistabil basculeaza din 4 in 4 impulsuri si va fi comandat de functia SI intre iesirile Q1 × Q0, iar al patrulea bistabil comuta din 8 in 8 impulsuri si va fi comandat de functia SI intre iesirile Q2 × Q1 × Q0. In cazul numaratorului binar sincron de tip serie portile logice de tip SI utilizate vor fi toate cu 2 intrari, ca in schema logica anterioara.
Pentru marirea vitezei de raspuns a numaratorului se vor folosi porti logice de tip SI cu numarul de intrari necesar functiei SI implementate, ca in schema de mai jos, corespunzatoare unui numarator binar sincron paralel.

Q0 Q1 Q2 Q3

1
S S S S
J Q J Q J Q J Q
CLK CLK CLK CLK
K Q K Q K Q K Q
R R R R
CLK
Reset

Timpul de comutare al numaratorului binar sincron paralel este mai mic decat la cel serie, dar exista porti de tip SI cu un numar mai mare de intrari.
5. Numarator binar sincron reversibil
Pentru realizarea reversibilitatii numaratorului binar sincron se folosesc 2 intrari suplimentare, Count-Up (numara direct) si Count-Down (numara invers). Aceste numaratoare vor avea si iesiri pentru transport (Carry) si imprumut (Borrow), care vor permite legarea in cascada a numaratoarelor.

Sinteza numaratoarelor modulo p
Pentru a face sinteza unui numarator cu p ¹ 2n trebuie determinat numarul minim de celule de memorie binara necesare. Relatia folosita este: 2n ³ p. Celulele de memorie se interconecteaza apoi astfel incat sa se omita (2n -; p) stari. Din acest motiv exista mai multe variante posibile pentru interconectare, deci si pentru sinteza numaratorului.

Exemplu: Sinteza unui numarator modulo 5.
Pentru 2n ³ 5 obtinem n = 3, deci vom avea 3 celule de memorie pentru numarator. Numarul starilor omise va fi 23 -; 5 = 8 -; 5 = 3.
Presupunem ca avem urmatoarea succesiune a starilor de numarare (ciclu de numarare):

000 001 010 011 100

Evident ca se putea alege si alta succesiune a starilor numaratorului.
Folosim pentru realizarea numaratorului bistabili de tip JK.
Se construieste un tabel cu starile actuale ale numaratorului, cu starile urmatoare si cu conditionarile intrarilor JK ale celor 3 bistabili folositi pentru sinteza. Completarea tabelului se face pe baza tabelului de excitatie al bistabilului JK sincron.
Qt Qt+1 J K
0 0 0 x
0 1 1 x
1 0 x 1
1 1 x 0

Q2t Q1t Q0t Q2t+1 Q1t+1 Q0t+1 J2 K2 J1 K1 J0 K0
0 0 0 0 0 1 0 x 0 x 1 x
0 0 1 0 1 0 0 x 1 x x 1
0 1 0 0 1 1 0 x x 0 1 x
0 1 1 1 0 0 1 x x 1 x 1
1 0 0 0 0 0 x 1 0 x 0 x

Diagramele Karnaugh pentru cele 6 intrari ale bistabilelor ne permit determinarea functiilor pentru intrari. Starile omise se considera indiferente.
J2:
Q2 Q1Q0 00 01 11 10
0 1
1 x x x x
J2 = Q1 × Q0
K2:
Q2 Q1Q0 00 01 11 10
0 x x x x
1 1 x x x
K2 = 1
J1:
Q2 Q1Q0 00 01 11 10
0 1 x x
1 x x x
J1 = Q0
K1:
Q2 Q1Q0 00 01 11 10
0 x x 1
1 x x x x
K1 = Q0
J0:
Q2 Q1Q0 00 01 11 10
0 1 x x 1
1 x x x
J0 = Q2
K0:
Q2 Q1Q0 00 01 11 10
0 x 1 1 x
1 x x x x
K0 = 1
Schema logica pentru numaratorul modulo 5 va fi urmatoarea:

Q2 Q1 Q0

J2 Q2 J1 Q1 J0 Q0
CLK CLK CLK
1 K2 Q2 K1 Q1 1 K0 Q0
R2 R1 R0

CLK
Reset

Pentru rezolvarea completa a sintezei numaratorului modulo 5 trebuie discutata si problema starilor omise. Ce se intampla cu numaratorul daca nu are secventa de initializare sau daca ajunge cumva in una dintre starile care nu face parte din ciclul de numarare? Care va fi evolutia numaratorului?
Trebuie verificate tranzitiile numaratorului in cazul in care este intr-o stare din afara ciclului de numarare. Putem avea 2 situatii: fie numaratorul revine singur in ciclul de numarare, fie trebuie reproiectat astfel incat sa revina in ciclul de numarare.
Starile omise in exemplul dat sunt:
101 ® 010
110 ® 010 si din starea aceasta se revine in ciclu
111 ® 010
Observatie. Un numarator modulo p se poate obtine folosind un numarator binar sincron. Se lasa numaratorul binar sa evolueze pana la starea p-1. La atingerea starii “p” se aplica numaratorului, printr-o logica combinationala, un impuls de stergere (pe intrarea de Reset).

Numaratoare Moebius
Numaratoarele Moebius sunt numaratoare in inel cu coada intoarsa (twisted tail ring counter).
Desi exista numaratoare de tip MSI pentru numararea binara sau a altor tipuri de secvente, exista unele cazuri in care se prefera proiectarea unor numaratoare speciale cu bistabili si porti logice.
Exemplu: un numarator cu 8 stari la care la fiecare tranzitie se modifica numai un singur bit, se poate construi utilizand urmatoarea secventa:
0000 0
1000 8
1100 12
1110 14
1111 15
0111 7
0011 3
0001 1
Proiectarea se face si cu bistabili de tip D si cu bistabili de tip JK.
Tabelul folosit pentru sinteza numaratorului este:
Q3t Q2t Q1t Q0t Q3t+1 Q2t+1 Q1t+1 Q0t+1 D3 D2 D1 D0 J3 K3 J2 K2 J1 K1 J0 K0
0 0 0 0 1 0 0 0 1 0 0 0 1 x 0 x 0 x 0 x
1 0 0 0 1 1 0 0 1 1 0 0 x 0 1 x 0 x 0 x
1 1 0 0 1 1 1 0 1 1 1 0 x 0 x 0 1 x 0 x
1 1 1 0 1 1 1 1 1 1 1 1 x 0 x 0 x 0 1 x
1 1 1 1 0 1 1 1 0 1 1 1 x 1 x 0 x 0 x 0
0 1 1 1 0 0 1 1 0 0 1 1 0 x x 1 x 0 x 0
0 0 1 1 0 0 0 1 0 0 0 1 0 x 0 x x 1 x 0
0 0 0 1 0 0 0 0 0 0 0 0 0 x 0 x 0 x x 1
Diagramele Karnaugh ne permit sa determinam valorile pentru intrarile bistabilelor D3 -; D0 si J3 -; K0.

D3:
Q3Q2 Q1Q0 00 01 11 10
00 1 x
01 x x x
11 1 x 1
10 1 x x x
D3 = Q0
D2:
Q3Q2 Q1Q0 00 01 11 10
00 x
01 x x x
11 1 x 1 1
10 1 x x x
D2 = Q3
D1:
Q3Q2 Q1Q0 00 01 11 10
00 x
01 x x 1 x
11 1 x 1 1
10 x x x
D1 = Q2
D0:
Q3Q2 Q1Q0 00 01 11 10
00 1 x
01 x x 1 x
11 x 1 1
10 x x x
D0 = Q1
J3:
Q3Q2 Q1Q0 00 01 11 10
00 1 x
01 x x x
11 x x x x
10 x x x x
J3 = Q0
K3:
Q3Q2 Q1Q0 00 01 11 10
00 x x x x
01 x x x x
11 x 1
10 x x x
K3 = Q0
J2:
Q3Q2 Q1Q0 00 01 11 10
00 x
01 x x x x
11 x x x x
10 1 x x x
J2 = Q3
K2:
Q3Q2 Q1Q0 00 01 11 10
00 x x x x
01 x x 1 x
11 x
10 x x x x
K2 =Q3
J1:
Q3Q2 Q1Q0 00 01 11 10
00 x x
01 x x x x
11 1 x x x
10 x x x
J1 = Q2
K1:
Q3Q2 Q1Q0 00 01 11 10
00 x x 1 x
01 x x x
11 x x
10 x x x x
K1 = Q2
J0:
Q3Q2 Q1Q0 00 01 11 10
00 x x x
01 x x x x
11 x x 1
10 x x x
J0 = Q1
K0:
Q3Q2 Q1Q0 00 01 11 10
00 x 1 x
01 x x x
11 x x x
10 x x x x
K0 = Q1
Cele 2 scheme logice pentru numarator sunt:

D3 Q3 D2 Q2 D1 Q1 D0 Q0

CLK Q3 CLK Q2 CLK Q1 CLK Q0

CLK

J3 Q3 J2 Q2 J1 Q1 J0 Q0
CLK CLK CLK CLK
K3 Q3 K2 Q2 K1 Q1 K0 Q0

CLK

Observatie. Starea fiecarui bistabil este determinata de starea anterioara a bistabilului plasat in stanga sa, iar starea primului bistabil este determinata de iesirea complementara a ultimului bistabil.
Se pot construi numaratoare Moebius de orice dimensiune (ordin).
Aplicatii ale numaratoarelor Moebius a. Se pot folosi ca si numaratoare de stare. Daca numaratorul este implementat cu bistabile JK, fiecare comutare a starii este controlata de cate o intrare diferita. Din acest motiv, modificarea oricarei stari va putea fi controlata independent, adaugand o poarta SI sau SI-NU pe intrarea respectiva (de exemplu tranzitia 0 ® 8 este controlata de J3, tranzitia 8 ® 12 de J2 s.a.m.d.). b. Generatoare de ceas cu mai multe faze. Cele 8 iesiri ale numaratorului genereaza de fapt 8 semnale de ceas defazate in mod egal, cu factor de umplere de 50%. In general un numarator Moebius de n biti genereaza 2n faze de ceas. c. Decodificarea oricarei stari se poate face printr-o poarta cu 2 intrari. Pt. a face decodificarea starii se vor urmari cei 2 biti adiacenti distincti, 1 si 0. d. Decodificarea starilor succesive se realizeaza prin porti care au ca intrari ultimul 1 al primei stari si primul 0 al ultimei stari.

Curs 8

3.2.2. Registre



Registrele sunt circuite logice secventiale care permit stocarea si/sau deplasarea informatiei codificate binar. Ele se realizeaza din celule de memorie binara (CBB) si din circuite logice combinationale (CLC), care permit inscrierea, citirea si transferul informatiei. Capacitatea unui registru este data de numarul celulelor de memorie.
Orice informatie binara, care nu depaseste capacitatea registrului, poate fi inscrisa prin actionarea corespunzatoare a intrarilor (care depinde si ea de natura bistabilelor).
Registrele pot sa fie de mai multe tipuri: de memorie; de deplasare; combinate; universale.
Registrele de memorie memoreaza informatia binara in celule de memorie binara. In fiecare celula de memorie se memoreaza un bit de informatie. Incarcarea se poate face paralel, prin intrarile asincrone, de Set si Reset.
Registrele de deplasare sunt cele care realizeaza transferul informatiei. Transferul se poate face: stanga-dreapta; dreapta-stanga; in ambele sensuri.
La fiecare impuls de tact continutul registrului se deplaseaza cu cate o celula (in sensul stabilit). Semnalul de iesire este identic cu cel de intrare, dar intarziat cu un numar de impulsuri de tact egal cu numarul de celule de memorie din care este format registrul.
Exceptand primul bistabil, ecuatia de stare a unui registru de deplasare stanga-dreapta este data de relatia: Qi(t+1) = Qi-1(t) × c (unde c = impulsul de tact).
Exemplu: Registru de deplasare stanga-dreapta cu bistabile JK MS.
Q0 Q1 Q2 Q3
SIN
J0 Q0 J1 Q1 J2 Q2 J3 Q3
CLK CLK CLK CLK
K0 Q0 K1 Q1 K2 Q2 K3 Q3
R R R R
Reset

CLK
La fiecare impuls de tact continutul bistabilului Qi se transfera in bistabilul Qi+1. In bistabilul Q0 se introduce informatia din exterior, iar continutul ultimului bistabil se pierde. Incarcarea registrului se realizeaza deci in mod serie. Initializarea registrului se face prin semnalul de Reset, care forteaza toate iesirile registrului in 0 logic.
Registrele de deplasare dreapta-stanga si reversibile se realizeaza folosind circuite logice combinationale suplimentare.
Registrele combinate sunt cele care au si functia de memorare si cea de deplasare.
Registrele universale cumuleaza toate functiile: deplasare stanga-dreapta, deplasare dreapta-stanga, incarcare serie sau paralela a informatiei, citire serie sau paralela a informatiei.
RI A B C D LI
S0

S1

D Q D Q D Q D Q
CLK CLK CLK CLK CLK
CLR CLR CLR CLR

CLR
Q0 Q1 Q2 Q3
Intrarile de selectie S1S0 conditioneaza modul de functionare a registrului. Avem:
S1S0 = 00 pastreaza continutul nemodificat;
S1S0 = 01 deplasare stanga-dreapta;
S1S0 = 10 deplasare dreapta-stanga;
S1S0 = 11 incarcare paralela.
Stergerea registrului se face asincron, prin semnalul CLR.

Aplicatii ale registrelor
Registrele sunt utilizate in mai multe tipuri de aplicatii, dupa functiile pe care pot sa le indeplineasca.
1. Registre de deplasare cu reactie
Au iesirile conectate la intrari si pot fi:
- registre de deplasare in inel -; continutul ultimei celule de memorie se inscrie in prima celula de memorie;
Q0 Q1 Q2 Q3
1 0 0 0
SIN 0 1 0 0
0 0 1 0
Q0 Q1 Q2 Q3 0 0 0 1
1 0 0 0
- registre (numaratoare) Johnson -; in prima celula se introduce continutul negat al ultimei celule.
Q0 Q1 Q2 Q3
0 0 0 0
SIN 1 0 0 0
1 1 0 0
Q0 Q1 Q2 Q3 1 1 1 0
1 1 1 1
0 1 1 1
0 0 1 1
0 0 0 1
0 0 0 0
2. Memorie de tip FIFO (First In, First Out), primul inscris -; primul citit (memorie coada)
Se realizeaza cu registre de deplasare stanga-dreapta. Numarul registrelor depinde de lungimea cuvintelor ce urmeaza a fi memorate. Capacitatea memoriei depinde de lungimea registrelor. De exemplu, daca registrele sunt de 4 biti, capacitatea memoriei este de 4 cuvinte. La fiecare impuls de tact se introduc datele pe intrarea seriala. y1

SIN Ts x1 y2

SIN Ts x2 y3

SIN Ts x3 y4

SIN Ts x4
CLK

3. Memorie de tip LIFO (Least In, First Out), ultimul introdus -; primul citit (memorie stiva)
Realizarea se face cu registre combinate. Numarul registrelor este dat de lungimea cuvantului de memorie, iar lungimea registrelor determina capacitatea de memorie. xi
A0
A1
A1 A0
SIN Q0 yi
Q1
Q2
Q3
R CLK

A1 A0
0 1 deplasare stanga-dreapta ® inscriere
1 0 citire
Memoria stiva poate fi organizata si soft, in memoria de tip RAM, dar desi capacitatea acesteia poate fi mare, timpul de acces va fi si el mare.
4. Conversia serie-paralel si paralel serie a informatiei
Pentru conversia serie-paralel se face incarcarea registrului pe intrarea seriala si cu comanda de tact serie Ts si se citeste informatia pe iesiri, paralel.
Pentru conversia paralel-serie se face incarcarea paralela a informatiei, cu comanda de tact paralel Tp si apoi se deplaseaza informatia stanga-dreapta, cu comanda de tact serie Ts si se citeste serie la ultima iesire.
5. Generatoare de secvente
Generatoarele de secvente genereaza o succesiune de secvente binare (1 si 0) de lungime data (prestabilite). Lungimea secventei reprezinta numarul de biti dupa care se repeta intreaga secventa. Secventele binare pot fi:
- aleatoare, de lungime infinita;
- deterministe, de lungime finita.
Secventele binare deterministe de lungime maxima se numesc secvente pseudoaleatoare.
Realizarea generatoarelor de secvente se face cu registre in reactie cu circuite logice combinationale adecvate.

Q0 Q1 Q2 y = Q0 + Q2

S0 Q0 S1 Q1 S2 Q2
CLK CLK CLK
R0 Q0 R1 Q1 R2 Q2
CLK

Secventa pseudoaleatoare generata la iesirile Q0Q1Q2 este:
100 ® 110 ® 111 ® 011 ® 101 ® 010 ® 001

3.2.3. Memorii RAM
Memoriile de tip RAM (random access memory) sunt memorii de tip citeste-scrie, cu acces aleator. Ele nu-si pastreaza informatia dupa intreruperea tensiunii de alimentare.
Memoria este formata din nivelul de decodificare, matricea de memorie realizata cu celule de memorie binara de tip “latch” si nivelul de multiplexare.
Dimensiunea memoriei este specificata prin numarul de cuvinte si numarul de biti pe cuvant. Capacitatea memoriei este data de numarul de biti memorati in matricea de memorie.
Schema functionala de principiu a unei memorii RAM este urmatoarea:

Adresa CE sau CS (chip select) n Decodificator

2n n Matrice de memorie
2n
WE (write enable)
Multiplexor

Date

Decodificatorul actioneaza pentru selectarea fiecarei celule de memorie, iar multiplexorul permite selectarea oricarei celule de memorie la intrare -; iesire.
Validarea memoriei se face prin intrarea CS. Citirea memoriei se face daca WE = 1, iar scrierea memoriei se face daca WE = 0.
Datele de intrare si iesire pot sa foloseasca linii diferite sau aceeasi linie bidirectionala. Memoriile pot avea un numar diferit de cai de date (de obicei cuvinte de 1 bit sau de un numar de biti multiplu de 2).
Memoriile de tip RAM pot sa fie din punct de vedere constructiv de tip static sau dinamic. Cele dinamice sunt realizate cu condensatoare si au nevoie de reimprospatarea la diferite intervale de timp a informatiei memorate, pentru a se evita pierderea ei.
Extinderea capacitatii memoriilor se face atat prin extinderea dimensiunii cuvantului de memorie (numarul de biti din cuvant), cat si prin extinderea numarului de cuvinte ale memoriei (adresa de memorie).

Curs 9

3.3. Sinteza circuitelor logice secventiale sincrone

Circuitele secventiale sincrone trec dintr-o stare in alta la momente distincte de timp, determinate de impulsurile de tact. Intre doua impulsuri de tact starea circuitului nu se modifica.
Variabile de intrare

Generare stare noua
Calculul excitatiilor secundare
CLC

Excitatii secundare
Tact

Registru de stari
Stari interne
CL

Variabile secundare

Calculul variabilelor de iesire
CLC

CL = circuit logic general -; pastreaza starea interna ® registru de stari (bistabili RS, D, JK, registre, memorii); poate fi circuit logic secvential cu bucla de reactie.
CLC = determina functiile de excitatie secundare care in prezenta tactului determina trecerea circuitului in alta stare ® se poate numi generatorul starii noi; se pot realiza cu porti logice sau cu circuite specializate (multiplexoare, decodificatoare).
Variabilele de intrare sunt in general sincrone cu impulsul de tact, dar pot fi si de tip asincron.

3.3.1. Etapele de sinteza
1. Expunerea conditiilor de functionare (descrierea comportarii circuitului).
Stabilirea modalitatii de definire a circuitului care trebuie sintetizat prin:
- tabel de tranzitii;
- graf de tranzitii;
- organigrama;
- forme de unda.
Trebuie evidentiate:
- starile prin care trece circuitul;
- valorile variabilelor de intrare pentru care se schimba starile;
- valorile rezultate ale variabilelor de iesire.
Evolutia circuitului incepe intr-o stare initiala si de obicei se revine la aceasta stare, dupa ultima stare a ciclului.
2. Se codifica starile circuitului.
3. Se incearca reducerea (simplificarea) numarului de stari a circuitului, daca este posibil, incat sa se pastreze functionarea lui corecta.
4. Se decide asupra modului de implementare (registrul de stari interne).
5. Se determina functiile de excitatie si cele de iesire, daca este posibil.
6. Se studiaza problemele legate de eventualele iesiri false (hazard) sau tranzitii false.
7. Se deseneaza circuitul.
Etapa cea mai dificila este cea de codificare a starilor. In general functionarile defectuoase se datoreaza unor tranzitii gresite intre stari sau unor semnale gresite care apar la circuitul de generare a variabilelor de iesire.
Tranzitiile gresite intre stari apar datorita prezentei variabilelor de intrare asincrone (se elimina cel mai usor daca se sincronizeaza variabilele de intrare cu semnalul de tact).
Codificarea starilor se stabileste astfel incat, in orice stare, pentru toate combinatiile posibile de intrari asincrone, sa nu fie mai mult decat o singura variabila de stare dependenta de o variabila de intrare asincrona. In aceste conditii, doua stari rezultate din calea de iesire a unei intrari asincrone vor avea codificare adiacenta.



Iesirile false pot sa apara din cauza ca la trecerea dintr-o stare in alta, variabilele de stare practic nu se modifica simultan. Pentru evitarea tranzitiilor false ale iesirilor se pot folosi metodele:
- se realizeaza o codificare adiacenta a starilor;
- se forteaza trecerea circuitului prin stari suplimentare;
- se sincronizeaza variabilele de iesire.
Observatie: Hazardul static al CLC se elimina prin proiectare (se introduc termeni redundanti, indiferenti).

3.3.2. Utilizarea organigramei in sinteza circuitelor logice secventiale sincrone
Elementele componente ale organigramei de functionare a oricarui circuit secvential sincron sunt:
- elementul de intrare (control sau decizie):
Variabile de intrare
- sincrone

var. 1

0
- asincrone

var. 1

0
- elementul de stare:
Q2Q1Q0
000

- elementul de iesire:

transfer

Configuratii elementare care unesc cele 3 elemente de baza:

A 001 tranzitie simpla:
- contor de timp
- solutionarea problemei de codificare a starilor
B 011

A stare cu iesire

Aduna

B

A stare cu decizie

1 I1 0

B C

A stare cu iesire si decizie

Scade

1 I1 0

B C

A stare cu iesire conditionata

I1 1

0 Iesire

B

A stari cu decizii multiple si iesire

0 I1 1

1
I2 C
0 1 0
I3
B Iesire

Observatii
1. Orice tranzitie intre 2 stari ale circuitului se face intr-un singur impuls de tact.
2. La un moment dat circuitul se poate gasi intr-o singura stare.
3. Un circuit care se gaseste la un moment dat intr-o stare data, cu un set de intrari dat, poate avea o singura stare urmatoare.

3.3.3. Sinteza circuitelor secventiale sincrone cu diferite elemente de memorie
In sinteza circuitelor secventiale sincrone se vor folosi ca elemente de memorie bistabili de tip D si JK. Implementarea registrului de stari se va realiza cu aceste tipuri de bistabile.
Exemplu: Sa se recunoasca secventa 101 in sirul de cifre binare 10101.
Graful de tranzitii are in noduri starile circuitului. Pe arce avem tranzitia dintr-o stare in alta pentru o anumita intrare, cu o anumita iesire.

0/0 1/0
1/0 0/0
Init A B C
1/1
0/0
Avem 2 variabile de stare pentru a putea codifica 2 stari (A=00, B=01, C=11). Cu x am notat intrarea, cu z iesirea. Tabelul de tranzitii este:
St St+1,z
Q1Q0 x=0 x=1
00 A A,0 B,0
01 B C,0 B,0
11 C A,0 B,1

a. Implementam registrul de stari cu bistabile de tip D.
Functiile de excitatie se deduc explicitand diagrama starilor pentru momentul t si momentul t+1. Starile se vor inlocui cu codurile lor (A=00, B=01, C=11).
St St+1 (Q1Q0)t+1 z
Q1Q0 D1D0 D1D0 x=0 x=1 x=0 x=1
00 (A) 00 (A) 01 (B) 0 0
01 (B) 11 (C) 01 (B) 0 0
11 (C) 00 (A) 01 (B) 0 1

Di = Qit ecuatia starii urmatoare

D1:
Q1Q0 x 0 1
00 0 0
01 1 0
11 0 0
10 x x
D1 = Q1 × Q0 × x
D0:
Q1Q0 x 0 1
00 0 1
01 1 1
11 0 1
10 x x

D0 = x + Q1 × Q0 z:
Q1Q0 x 0 1
00 0 0
01 0 0
11 0 1
10 x x z = Q1 × x

La trecerea din starea C in starea A se poate trece prin starea B, ceea ce nu corespunde functionarii. In mod normal se introduce o stare suplimentara pentru a rezolva situatia.
Schema pentru circuitul secvential sincron este:

D1 Q1 D0 Q0 Q1
CLK CLK Q0 D1
Q1 Q0 x
R R Q0
Init Q1 D0 x
CLK Q1 z x

b. Implementam registrul de stari cu bistabile de tip JK.
Diagrama starilor se completeaza tinand cont de tabelul de excitatie al bistabilului JK.

Qt Qt+1 J K
0 0 0 x
0 1 1 x
1 0 x 1
1 1 x 0

St St+1(Q1Q0)t+1 z
Q1Q0 J1K1 J0K0 J1K1 J0K0 x=0 x=1 x=0 x=1 x=0 x=1
00 (A) 00 01 0x 0x 0x 1x 0 0
01 (B) 11 01 1x x0 0x x0 0 0
11 (C) 00 01 x1 x1 x1 x0 0 1

J1:
Q1Q0 x 0 1
00 0 0
01 1 0
11 x x
10 x x
J1 = Q0 × x
K1:
Q1Q0 x 0 1
00 x x
01 x x
11 1 1
10 x x
K1 = 1
J0:
Q1Q0 x 0 1
00 0 1
01 x x
11 x x
10 x x
J0 = x
K0:
Q1Q0 x 0 1
00 x x
01 0 0
11 1 0
10 x x
K0 = Q1 × x

z:
Q1Q0 x 0 1
00 0 0
01 0 0
11 0 1
10 x x z = Q1 × x

3.3.4. Implementarea generatorului noii stari cu multiplexoare
Pentru a realiza o implementare cu multiplexoare se scriu functiile de excitatie pentru bistabile in forma canonica (fara a se minimiza).
Se iau in considerare locatiile care sunt 1 sau care au o variabila inglobata. x

CLC

MUX

Registru de stare

CLC

y

3.3.5. Implementarea generatorului noii stari cu decodificatoare
In cazul implementarii generatorului noii stari cu decodificatoare, la intrarea decodificatorului sunt aplicate variabilele de stare, iar la iesire sunt individualizate starile interne.

3.3.6. Implementarea generatorului noii stari cu memorii si multiplexoare
Acest tip de implementare a generatorului noii stari se utilizeaza in cazul circuitelor complexe. Se asigura o simplificare a logicii de generare a noii stari si o crestere a sigurantei in functionare.

Implementarea generatorului noii stari cu decodificatoare: x

CLC

Registru de stari

DEC

CLC

y

Implementarea generatorului noii stari cu multiplexoare si memorii: x

MUX

Memorie

Registru de stari

CLC

y

Curs 10

Exemplu: Sinteza unui automat (circuit secvential sincron) de raspuns la telefon. Se poate programa numarul de apeluri sonore ale soneriei telefonului dupa care incepe sa functioneze automatul. Programul automatului se incheie in conditiile: 1) dupa preluarea (inregistrarea) mesajului; 2) daca apelantul inchide; 3) daca destinatarul raspunde la telefon.
1. Determinarea functionarii -; obtinerea organigramei.
Se stabileste schema bloc a automatului, cu componentele periferice aditionale necesare. Se stabilesc variabilele de intrare si iesire si caracterul lor sincron sau asincron.
Avem nevoie de:
- telefon propriu-zis (TEL);
- numarator pentru apelurile sonore ale soneriei telefonului (NRT);
- casetofon pentru redarea mesajului de intampinare (PLAY);
- casetofon pentru inregistrarea mesajului apelantului (REC).
Variabilele folosite sunt:
Sonerie: fiecare apel al soneriei telefonului provoaca decrementarea numaratorului NRT pana ce ajunge la 0. Nu este variabila a automatului.
Start: variabila de intrare asincrona, de la numarator, care determina inceperea functionarii automatului, daca numaratorul a ajuns pe 0.
StartPlay (SP), StartRecord (SR): variabile de iesire spre casetofon.
EndOfPlay (EP), EndOfRecord (ER): variabile de intrare asincrone, de la casetofon.
ApelantStop (AS): variabila de intrare asincrona de la telefon (apelantul poate inchide oricand telefonul).
DestinatarPick-Up (DPU): variabila de intrare asincrona de la telefon; apare cand destinatarul raspunde la telefon.
Init: variabila de iesire spre numarator; incarca paralel numaratorul cu valoarea stabilita pentru numarul de apeluri ale soneriei telefonului pana la intrarea in functiune a automatului.
Obs: variabilele de intrare AS si DPU genereaza semnalul de Reset pentru bistabilii interni ai automatului si opresc inregistrarea pe casetofon.
Schema bloc este:
CLK Sonerie
PL NRT TEL
Zero AS DPU
Start
Init Automat ER
SP
EP SR
PLAY REC

Organigrama automatului este:
000
A

Init

1 0
Start

B 001

SP

011 C

1 0
EP

D 010

SR

100 E

1 0
ER

2. Codificarea starilor
Pentru ca variabilele de intrare sunt asincrone este nevoie de o codificare adiacenta a starilor automatului (A,B), (C,D), (E,A) . Pentru 5 stari sunt necesare 3 variabile de stare pentru codificare. Se alege codificarea: A = 000; B = 001; C = 011; D = 010; E = 100.
Se construieste diagrama Karnaugh pentru stari, pe baza codificarii facute:
Q2 Q1Q0 00 01 11 10
0 A B C D
1 E

Trebuie obtinute diagramele pentru starile urmatoare. Le vom suprapune si vom desena o singura diagrama, ingloband si variabilele de intrare. Completarea se face urmarind tranzitiile din organigrama si completand pentru fiecare stare codul starii urmatoare. Locatiile necompletate vor fi indiferente deoarece continutul lor nu poate fi atins prin functionare.

Q2 Q1Q0 00 01 11 10
0 00Start 011 01EP 100
1 ER00

3. Reducerea numarului de stari nu mai este posibila.
4. si 5. Registrul de stari se implementeaza cu bistabile de tip D, iar generatorul noii stari (functiile de excitatie) si iesirile cu porti logice. a. Pentru implementarea registrului de stari cu bistabile de tip D se tine cont de ecuatia starii urmatoare a acestui tip de bistabil: Di = Qit.
Diagramele Karnaugh pentru intrarile bistabilelor vor fi:
D2:
Q2 Q1Q0 00 01 11 10
0 0 0 0 1
1 ER x x x
D2 = ER × Q2 + Q1 × Q0
D1:
Q2 Q1Q0 00 01 11 10
0 0 1 1 0
1 0 x x x
D1 = Q0
D0:
Q2 Q1Q0 00 01 11 10
0 Start 1 EP 0
1 0 x x x
D0 = Start × Q2 × Q1 + EP × Q0 + Q1 × Q0
Diagramele iesirilor se completeaza tinand cont de organigrama si de diagrama starilor.
Init:
Q2 Q1Q0 00 01 11 10
0 1
1 x x x
Init = Q2 × Q1 × Q0
SP:
Q2 Q1Q0 00 01 11 10
0 1
1 x x x
SP = Q1 × Q0

SR:
Q2 Q1Q0 00 01 11 10
0 1
1 x x x
SR = Q1 × Q0
7. Desenarea schemei circuitului
Iesirile se realizeaza cu porti logice de tip SI:
Q2
Q1 Init
Q0
Q2 SP
Q1
Q0 SR

Generarea semnalului de Reset se realizeaza cu o poarta logica SAU-NU:
Reset = AS + DPU
AS
Reset
DPU

Registrul de stari este cu bistabile de tip D:

D2 Q2 D1 Q1 D0 Q0
Clk Clk Clk
Q2 Q1 Q0
R R R
Clk
Reset

Functiile de excitatie se implementeaza cu porti logice:
Q2 D0
Q1
Q0
Q2
Q1 D2
Q0 D1
Start
ER
EP

b. Implementarea generatorului noii stari cu multiplexoare se poate realiza numai cu multiplexoare daca numarul intrarilor de selectie a multiplexorului este egal cu numarul variabilelor de stare. Daca numarul intrarilor de selectie este mai mic decat cel al variabilelor de stare, la intrarile selectate se vor conecta circuite realizate cu porti logice.
Se scriu termenii canonici care contin 1 sau variabile inglobate in diagrama Karnaugh.
D2 = Q2 × Q1 × Q0 + ER × Q2 × Q1 × Q0
D1 = Q2 × Q1 × Q0 + Q2 × Q1 × Q0
D0 = Start × Q2 × Q1 × Q0 + EP × Q2 × Q1 × Q0 + Q2 × Q1 × Q0
Implementarea cu MUX 8:1 este:
0
0 MUX



1 8:1
0 D2
ER D2
0 74151
0
0 s2 s1 s0

Q2 Q1 Q0

0
1 MUX
0 8:1
1 D1
0 D1
0 74151
0
0 s2 s1 s0

Q2 Q1 Q0

Start
1 MUX
0 8:1
EP D0
0 D0
0 74151
0
0 s2 s1 s0

Q2 Q1 Q0

Daca implementarea s-ar realiza cu MUX 4:1 pe intrarile multiplexorului am avea iesiri din porti logice de tip SI. c. Implementarea generatorului noii stari cu decodificatoare se face aplicand la intrarea decodificatorului variabilele de stare. La iesirile decodificatorului se obtin starile interne individualizate.
Putem scrie:
D2 = D + ER × E
D1 = B + C
D0 = Start × A + B + EP × C
Pentru obtinerea functiilor de excitatie se vor utiliza porti logice de tip SI, SAU si NU.
Decodificatorul va fi de tip zecimal:

DCD 0 A
0 1 B D1
Q2 2 D
Q1 3 C
Q0 4 E

9

d. Implementarea generatorului noii stari cu memorii si multiplexoare permite simplificarea logicii generarii noii stari.

ROM A0 MUX 0 Start
16 x 4 A1 8:1 1 0
A2 2 0 y3 y2 y1 y0 A3 Y 3 EP
4 ER 5 0
D2 Q2 D1 Q1 D0 Q0 6 0
Clk Clk Clk s2 s1 s0 7 0

Q2Q1Q0 A3A2A1A0 y3y2y1y0 Q2Q1Q0 A3A2A1A0 y3y2y1y0
(s2s1s0) (s2s1s0)
000 0000 0000 000 1000 0001
001 0001 0011 001 1001 0000
010 0010 0100 010 1010 0000
011 0011 0010 011 1011 0011
100 0100 0000 100 1100 0100
101 0101 0000 101 1101 0000
110 0110 0000 110 1110 0000
111 0111 0000 111 1111 0000 e. Implementarea circuitelor secventiale sincrone se poate realiza cu numaratoare MSI. Numaratorul va fi utilizat pentru functia de memorare si partial pentru efectuarea tranzitiilor.
Vom utiliza pentru implementare un numarator sincron (de exemplu numaratorul zecimal 74162). Bistabilii interni ai acestuia pot memora starea circuitului.
Codificarea starilor se face tinand cont de ordinea de numarare a numaratorului: A = 000; B = 001; C = 010; D = 011; E = 100.

Q2 Q1Q0 00 01 11 10
0 A B D C
1 E

Vom determina functiile de numarare fN si incarcare (ramificare) fR si vom realiza implementarea lor cu multiplexoare 8:1 (de tipul 74151). Intrarile de selectie vor fi iesirile numaratorului, Q2Q1Q0. Diagramele pentru cele 2 functii vor fi:

fN:
Q2 Q1Q0 00 01 11 10
0 Start 1 1 EP
1 fR:
Q2 Q1Q0 00 01 11 10
0
1 ER

Starile urmatoare ale numaratorului trebuie specificate pentru starile din care au loc ramificari (E). D2 = Q2; D1 = Q1; D0 = Q0. In acest caz se utilizeaza incarcarea paralela a numaratorului cu valoarea prestabilita pe intrarile paralele.
Schema circuitului trebuie completata si cu logica pentru determinarea iesirilor. Iesirile Init, SP si SR corespund starilor A, B, D. Functiile de iesire sunt:
Init = Q2 × Q1 × Q0
SP = Q1 × Q0
SR = Q1 × Q0
Implementarea functiilor de iesire se poate realiza cu porti logice de tip SI sau cu un decodificator zecimal.

Circuitul secvential sincron va avea urmatoarea implementare:

0 0 En Start 0 En
0 1 MUX 1 1 MUX
0 2 8:1 EP 2 8:1
0 3 fR 1 3 fN
ER 4 Y 0 4 Y
0 5 Y 0 5 Y 0 Init
0 6 0 6 DCD 1 SP
0 7 4151 0 7 4151 2 s2 s1 s0 s2 s1 s0 0 D3 3 SR
D2 4
D1 5
D0 6
7
Q3Q2Q1Q0 7442 8
Reset MR 74162 Clk 9
LD D3D2D1D0 EN
0

Curs 11

3.4. Sisteme secventiale sincrone

Evolutia circuitelor secventiale sincrone a fost determinata de metodele de sinteza adecvate. Pentru circuitele secventiale sincrone cu numar mic de variabile de intrare si de stare se poate utiliza sinteza pornind de la grafuri sau diagrame de tranzitii (metoda studiata). Pentru circuitele cu numar mare de variabile de intrare si de stare se face o organigrama functionala care pune in evidenta direct starile interne si tranzitiile, in functie de modificarea unei singure variabile de intrare. Aceste circuite se numesc sisteme secventiale sincrone (SSS).
Structura unui sistem secvential sincron:
START

Incarcare R S1 numarator C = 0 cautarea bitilor = 1
intr-un registru de 8 biti

DA Ri = 1 NU S2

Prelucrare in functie Deplasare stanga R S3 de rangul bitului C = C -; 1
(succesiune de operatii)

NU S4
C = 8

DA

STOP
Analiza figurii permite determinarea a 2 blocuri functionale:
1. Unitatea de executie UE -; realizata cu registri, numaratoare, bistabili, CLC.
2. Generatorul de secvente sau unitatea de comanda UC -; secventiator care opereaza asupra unitatii de executie. UC trebuie sa asigure:
- trecerea din starea Si in starea Si+1;
- intreruperi de secvente prin salt;
- bucle de asteptare.
Schema sistemului secvential complex
UC UE

Calculul secventei Stari urmatoare
Generator de tact Unitate de
CLK executie UE
Generator de secvente secvente
Bloc de determinare actiune
CLK a actiunii asupra UE UE

Unitatile de comanda UC pot fi: cablate sau microprogramate. Generatorul de secvente poate deci fi realizat cablat sau microprogramat.
1) UC cablate -; exista 2 posibilitati de realizare: a. Generatorul de secvente este realizat cu un numarator programabil. Acesta numara, se opreste sau se incarca cu o noua valoare. Iesirile sale sunt decodificate de un decodificator de secvente. Se genereaza secvente care valideaza actiunile asupra elementului functional (UE).
Generator de tact CLK

Calcul Calcul adresa Calcul adresa Calcul adresa adresa de salt urmatoare de oprire
(conditii de (conditii (conditii de
intrerupere) urmatoare) oprire)

Adresa Load Numarare Oprire
(Salt) UE
Numarator de secventa

Decodificator Calcul de secvente actiuni UE
CLK

b. Generatorul de secvente este realizat cu un registru de deplasare (decalaj) in care va circula un bit de 1. Fiecarei stari ii corespunde un bit din registrul de deplasare. Pozitia bitului de 1 semnalizeaza o anumita secventa. Pentru a obtine starea urmatoare registrul va fi decalat cu o pozitie sau va fi decalat in cazul saltului. Avantajul acestei variante consta in eliminarea decodificatorului de secvente.
In fiecare secventa se realizeaza o actiune sau un grup de actiuni. O actiune poate sa necesite mai multe etape. Dirijarea in cadrul secventei se realizeaza cu ajutorul generatorului de tact.
Variantele a si b de UC cablate au dezavantajul ca o modificare a functionarii presupune o modificare a secventei de lucru, deci o modificare a cablajului.
2) UC microprogramate
Generatorul de secvente trebuie sa aiba exact aceleasi functii ca si in cazul UC cablate.

Generator de tact CLK

Calcul adresa Calcul adresa Calcul adresa de salt urmatoare de oprire
(conditii de (conditii (conditii de
CLK intrerupere) urmatoare) oprire)

Adresa Load (Salt) Numarare Oprire
Registru de microinstructiune UE
Registru de adresa microprogram

Adresa Calcul
Memorie microprogram actiuni UE
Adresa noua Actiuni CLK

La acest mod de realizare a UC se castiga in fiabilitate deoarece se executa o singura operatie intr-o secventa, dar se pierde in viteza. Tactul actioneaza asupra registrului (numaratorului) de microprogram.

3.4.1. Principii de comanda a sistemelor secventiale sincrone
Sistemele secventiale sincrone isi modifica iesirea in functie de intrare doar in prezenta unui semnal de tact.
Functii logice de comanda. Tabele de excitatie
Generatorul de tact furnizeaza un semnal de tact de baza, care provine de la un oscilator si este un semnal periodic de durata si perioada constanta. Cu ajutorul semnalului de tact se vor genera toate semnalele de comanda necesare unui sistem secvential sincron.
In sistemele cablate, in cadrul unei secvente se pot efectua mai multe operatii. Din acest motiv este necesara dirijarea perioadei tactului pentru a stabili o succesiune a diferitelor actiuni. Pot sa apara urmatoarele situatii:
Tact suprapus
T

CLK1

CLK2

CLK3

Tact adiacent

CLK1

CLK2

CLK3

Tact neadiacent

CLK1

CLK2

CLK3

Sistemele secventiale sincrone se comanda prin functii care contin unul dintre semnalele de tact CLKi, o stare a circuitului si un semnal extern. Toate functiile de comanda care actioneaza asupra elementelor din unitatea de executie UE vor contine obligatoriu unul dintre semnalele de tact in cadrul expresiei functiei (valideaza o actiune).
Functiile logice de comanda nu tin cont de natura elementului fizic utilizat. Dupa alegerea elementelor fizice se vor grupa functiile de comanda intr-un tabel de excitatie. Tabelul de excitatie contine:
- numele elementului circuitului;
- tipul elementului;
- intrarile elementului;
- modul de comanda a intrarilor;
- functia logica corespunzatoare fiecarei intrari, scrisa sub forma simbolica.
3.4.2. Hazardul in functionarea sistemelor secventiale sincrone
Hazardul reprezinta aparitia unei modificari neprevazute si nedorite a unei stari a sistemului secvential sincron.
Hazardul poate fi:
- static -; datorat propagarilor pe cai diferite a semnalelor; se manifesta prin comutari fara semnificatie logica;
- dinamic -; datorat proceselor asincrone pe intrari; se manifesta prin comutari fara semnificatie logica.
Cauzele aparitiei pot fi:
- semnale parazite la functiile de excitatie;
- nerespectarea parametrilor dinamici;
- durata insuficienta a impulsului de comanda.
Metodele de evitare a hazardului:
1) Sincronizarea intrarilor asincrone

semnal asincron extern
CLK tsetup thold

Exemplu. Se considera un numarator N care face o incrementare +1 la tactul CLK si un semnal extern E. Incrementarea se face la CLK × E.

E N
CLK +1

E

CLK

CLK × E

Se poate ca semnalul CLK × E sa aiba o durata foarte scurta care va provoca o functionare gresita a numaratorului N. Se va face o sincronizare a semnalului asincron E cu ajutorul unui bistabil.

E Es +1
CBB CLK2
CLK1

Daca exista mai multe semnale asincrone, pentru realizarea sincronizarii se utilizeaza registre.
2) Automodificarea unui circuit secvential
Poate sa apara in situatii ca si urmatoarea: f = s × CLK1 × CLK2 × Q1 × Q2
in cazul in care bistabilul al doilea, Q2, va comuta in 0.

D Q2
CLK2 s

CLK2

s × CLK1 × Q1 × Q2 durata foarte scurta, neutilizabila

Q2
Se face sincronizarea pentru Q2.

Q1 D Q2 s CLK2

CLK2

s × Q1 × Q2
Q2

3) Probleme datorate decalajului de tact (defazarea tactului)
Daca la CLK2 × s × Q1 × Q2 avem Q3 ® 1 si la CLK2 × s × Q1 avem Q2 ® 0
Daca CLK2 care se aplica bistabilului 2 este in avans fata de CLK2 aplicat bistabilului 3, s × Q1 × Q2 ® 0 prea repede si nu se respecta thold pentru bistabilul 3, deci Q3 nu va ® 1.

J2 Q2 J3 Q3
CLK2
Q1 CLK CLK s K2 K3

CLK2 × Q1

Q2

s × CLK2 × Q1 tsetup thold


});

Colt dreapta
Creeaza cont
Comentarii:

Nu ai gasit ce cautai? Crezi ca ceva ne lipseste? Lasa-ti comentariul si incercam sa te ajutam.
Esti satisfacut de calitarea acestui referat, eseu, cometariu? Apreciem aprecierile voastre.

Nume (obligatoriu):

Email (obligatoriu, nu va fi publicat):

Site URL (optional):


Comentariile tale: (NO HTML)




Noteaza referatul:
In prezent referatul este notat cu: ? (media unui numar de ? de note primite).

2345678910



 
Copyright© 2005 - 2024 | Trimite referat | Harta site | Adauga in favorite
Colt dreapta