Sunteți pe pagina 1din 37

5.

CIRCUITE DE MEMORIE

5.1. Noiuni introductive

O modalitate rigid de stocare a informaiei, reprezentat de memoria


ROM, a fost analizat anterior (vezi 4.6.4). S-a constatat c funcia de memorie
ROM este implementabil uznd numai de CLC-uri, deci este asigurat prin
circuite din clasa sistemelor de ordinul zero. Un circuit flexibil de memorie, al
crui coninut poate fi modificat n exploatarea curent (i care poate fi att citit ct
i scris), nu mai poate fi realizat printr-o structur specific unui sistem de ordin
zero. Este necesar o structur de complexitate sporit, mai precis, este necesar
existena unei bucle de reacie de la ieire spre intrare, care se nchide peste un
sistem de ordinul zero (fig.5.1). Din punct de vedere al clasificrii generale a
sistemelor digitale, structura obinut n acest mod poart numele de sistem de
ordinul unu.

Fig.5.1. Structura unui sistem de ordinul unu

Evident c CLC-ul din cadrul unui sistem de ordinul unu are drept obiectiv
funcia de prelucrare. Reacia este cea care confer structurii funcia de memorare.
Dup cum s-a constatat, un CLC are o structur arborescent format din
pori logice (nivele) neinversoare i/sau pori logice (nivele) inversoare. De
menionat faptul c prevederea unei reacii n cadrul unui CLC poate avea un efect
semnificativ numai dac bucla se nchide peste cel puin un nivel inversor.
Esenial pentru comportarea structurii din fig.5.1 este dac numrul de
nivele inversoare peste care se nchide reacia este par sau impar. Se impune o
succint analiz a celor dou situaii. n fig.5.2,a se prezint cazul n care reacia se
nchide peste un numr impar de nivele inversoare (la limit, un singur nivel
inversor, deci un numr impar de nivele).
Este evident c dac x=0, atunci y=1 i, ntruct la aceast combinaie de
intrri, poarta NAND rspunde cu y=1, rezult c ieirea se automenine pe nivel
ridicat. S presupunem acum c are loc comutarea intrrii x n 1. Dup timpul de
propagare tp HL specific porii, perechea x=1, y=1 conduce la ieirea y=0. n
continuare, cu ntrzierea dat de timpul de propagare tp LH, perechea x=1, y=0
conduce la ieirea y=1 .a.m.d. Rezult deci c, pentru x=1, la ieire se obine un
semnal oscilant a crui perioad este determinat de timpii de propgare prin poart.
La aceeai concluzie se ajunge i dac se consider alt numr impar de nivele
inversoare (3, 5, etc).

Fig.5.2. Reacie nchis peste un singur nivel inversor (a) i dou


nivele inversoare (b)

Fr a insista asupra utilitii sau inutilitii practice a comportrii descrise,


este clar c structura nu poate ndeplini n nici un fel obiectivul anunat, respectiv,
asigurarea funciei de memorare. Memorarea implic n mod necesar instalarea
unei stri stabile pentru o intrare dat.
n cazul nchiderii buclei de reacie peste un numr par de nivele
inversoare (de exemplu dou nivele, ca n schema din fig.5.2,b), rspunsul la ieire
se schimb sensibil. Vom considera pe rnd toate cele patru combinaii de semnale
posibile la intrarea porii NAND.
1. Dac x=0 i y=0, atunci a=1 i y=0 (stare stabil).
2. Dac x=0 i y=1, atunci a=1 i y=0 (urmeaz instalarea unei stri
stabile y=0, ntruct se ajunge n situaia (1).
3. Dac x=1 i y=0, atunci a=1 i y=0 (stare stabil, ntruct se menin
aceleai intrri).
4. Dac x=1 i y=1, atunci a=0 i y=1 (stare stabil, ntruct se menin
aceleai intrri).
n concluzie, nchiderea reaciei peste dou nivele inversoare (i n general,
peste un numr par de nivele inversoare) nu determin apariia unor oscilaii
autontreinute la ieire. O structur de acest tip este susceptibil s fie utilizat
pentru a realiza funcia de memorare.

5.2. Circuite elementare de memorare

Pornind de la ideile de baz discutate mai sus, se pot construi diverse


circuite elementare avnd capacitatea de memorare de un bit. Astfel de circuite pot
fi realizate direct cu tranzistoare sau folosind pori logice. Din motive de simplitate
a nelegerii funcionrii, n cele ce urmeaz se vor prezenta circuitele elementare
de memorare bazate pe pori logice.
Circuitele elementare de memorare sunt ntlnite sub numele generic de
circuite basculante sau circuite bistabile. n limba englez se folosesc termenii de
latch (lact) i flip-flop (n sens de basculant).
Din punct de vedere al tipului de semnal la care reacioneaz, se disting
dou variante de circuite elementare de memorare: circuite sensibile pe nivel i
circuite sensibile pe front (pozitiv sau negativ). n genral, circuitele acionate pe
nivel sunt denumite latch-uri. Pentru concizia exprimrii, n continuare se va
adopta aceast terminologie, practicat deseori n limba romn. Termenul de
bistabil sau flip-flop va fi rezervat pentru circuitele elementare de memorare
sensibile pe frontul unui semnal de comand.

5.2.1. Latch RS

O prim variant de schem a unui latch RS, bazat pe pori NAND, este
prezentat n fig.5.3. Intrrile sunt marcate prin literele R (reset) i S (set) i apar
supraliniate deoarece starea activ a acestora corespunde nivelului cobort.
Circuitul are dou ieiri, notate prin Q i respectiv, Q supraliniat.

Fig.5.3. Latch RS realizat cu pori NAND

Urmrind traseul urmrit de una din ieiri, de exemplu Q, se observ uor


c, prin reacia prevzut, aceasta se rentoarce n acelai punct dup trecerea prin
dou nivele inversoare. Conform celor discutate anterior, este de ateptat ca n
funcionarea structurii s apar numai stri stabile.
n regim normal de exploatare a circuitului, cele dou ieiri sunt n
opoziie, ceea ce justific modul de notare a ieirilor. Regimul normal de
exploatare a circuitului presupune ca, pe un interval de timp oarecare, cel mult una
din intrri s fie activ.
Starea circuitului este definit prin starea ieirii Q. Dac Q=1, se spune c
latch-ul este setat, iar dac Q=0, se spune c latch-ul este resetat. Pentru setare, este
necesar ca, pentru o scurt perioad de timp, s fie activat intrarea S. Resetarea
este asigurat prin activarea pentru o scurt perioad de timp a intrrii R. Pe scurt,
circuitul este comandat prin impulsuri active pe nivel cobort. Efectul de memorare
se manifest prin meninerea strii circuitului i dup dezactivarea (trecerea pe
nivel ridicat) a unei intrri aflate temporar n 0.
Pentru exemplificarea modului de funcionare anunat, s considerm c
latch-ul se afl n starea 0 i deci ieirile sunt:
Q = 0, Q =1
1. Dac ambele intrri sunt inactive:
S = 1, R = 1,
atunci poarta U1 are ambele intrri n 1 i deci Q=0. Poarta U2 are o intrare n 0 i
deci ieirea sa va avea valoarea 0. Cu alte cuvinte, dac ambele intrri sunt
inactive, starea ieirilor se menine nemodificat.
2. Dac se activeaz temporar comanda de resetare:
S = 1, R = 0 ,
starea circuitului rmne de asemenea nemodificat, deoarece poarta U2 are, pe
durata activrii resetrii, ambele intrri n 0 i deci ieirea sa va rmne n 1.
Cealalt poart (U1) avnd intrrile (1 , 1) va produce aceeai ieire Q=0, ca i
nainte de apariia comenzii de resetare. Acest mod de rspuns era de altfel
previzibil: circuitul fiind resetat, o comand de resetare nu are nici un fel de efect.
3. Dac se activeaz temporar comanda de setare:
S = 0, R =1 ,
pe perioada activrii, U1 are o intrare n 0 i deci ieirea sa se va modifica (Q=1).
Odat cu aceasta, deoarece U2 are ambele intrri n 1, cealalt ieire va comuta n
0, astfel c latch-ul trece n starea 1. La dezactivarea intrrii de setare, starea latch-
ului se va menine neschimbat, ntruct U1 va avea intrrile (1, 0) i deci ieirea 1,
iar U2 va avea intrrile (1, 1) i deci ieirea 0. Meninerea strii dup dezactivarea
comenzii de setare este echivalent cu memorarea acestei comenzi.
O analiz similar, lsat n sarcina cititorului, care ia n considerare
cealalt stare iniial (starea 1) a latch-ului:
Q = 1, Q = 0
conduce la urmtoarele concluzii:
1. Dac ambele intrri sunt inactive, starea latch-ului rmne
neschimbat;
2. Dac se activeaz temporar intrarea de setare, starea latch-ului rmne
neschimbat;
3. Dac se activeaz temporar intrarea de resetare, latch-ul va trece n
starea 0 i i va pstra aceast stare i dup revenirea n 1 a comenzii.
Altfel spus, circuitul memoreaz activarea temporar a comenzii de
resetare.
n mod intenionat, n analiza de mai sus a fost evitat discutarea cazului n
care sunt active simultan cele dou intrri. Acest caz reprezint punctul nevralgic al
latch-ului RS, i conform celor anunate, trebuie evitat o asfel de comand dubl.
Este uor de spus ce se ntmpl cu ieirile dac ambele intrri sunt active;
indiferent de starea iniial, deoarece ambele pori NAND au o intrare n 0, ambele
ieiri vor trece n 1. Pe de o parte, aceast combinaie de ieiri contrazice modul
formal de notare, care sugereaz faptul c ieirile sunt ntotdeuna n opoziie. Pe de
alt parte, presupunnd c intrrile se dezactiveaz simultan, nu se poate prevedea
care va fi starea final a ieirilor. Intr-adevr, n momentul dezactivrii comenzilor,
ambele pori vor avea ambele intrri n 1. Ca urmare, ieirile celor dou pori vor
avea tendina s treac n 0. Este imposibil ca cele dou pori s fie absolut identice
din punct de vedere al timpului de comutare. Dac U1 este mai rapid, atunci va
prevala aciunea acesteia, respectiv, se va obine nti Q=0, ceea ce va fora cealalt
ieire s rmn n 1 (latch-ul va fi resetat). Dac U2 este mai rapid, atunci va
prevala aciunea acesteia, respectiv, latch-ul va fi setat.
Diagramele din fig.5.4 ilustreaz evoluia ieirilor n cazul unor impulsuri
de intrare perfect sincrone. Prin tpU1 i tpU2 s-au notat timpii de comutare ai celor
dou pori. Pentru simplitatea desenului, aceste ntrzieiri nu apar explicit n
diagrame.

Fig.5.4. Rspunsuri posibile ale latch-ului din fig.5.3


la comutarea sincron a celor dou intrri

Desigur c pentru o realizare fizic dat, caracterizat printr-o relaie


definit ntre cei doi timpi de comutare a porilor, starea final dup dezactivarea
simultan a intrrilor va fi mereu aceeai (0 sau 1). Nu se poate ti ns aprioric
care va fi comportarea unui latch oarecare. Aceast comportare imprevizibil,
denumit i comutare nedeterminat, restrnge domeniul de utilizare a latch-ului
RS la situaiile n care cel mult una din intrri este activ la un moment dat.
Funcionarea descris a latch-ului este sintetizat n tabelul 5.1.

Tab.5.1

Observaie. Situaia imaginat a comutrii perfect sincrone a intrrilor


reprezint un caz limit greu de ntlnit n practic, dac sursele care genereaz
intrrile sunt distincte (ceea ce se ntmpl de regul). O mic diferen de timp
existent ntre momentele de dezactivare a intrrilor va conduce la o comutare
previzibil a ieirilor. Evident c starea final a latch-ului va fi dictat de ultima
intrare dezactivat. Totui, n aprecierea funcionrii circuitului se ia n considerare
cazul idealizat al comutrii sincrone a intrrilor, fa de care se manifest
nedeterminarea evideniat. La aceast deficien a circuitului se mai poate aduga
i faptul c, pe perioada n care ambele intrri sunt active (chiar n absena unui
sincronism perfect), cele dou ieiri au aceeai valoare, ceea ce poate conduce la
alterarea funciei aplicaiei n care latch-ul este inclus.
n fig.5.5 se prezint alte variante de realizare a unui latch RS. Structura
din fig.5.5,a este comandat pe nivel ridicat. O alt deosebire fa de schema bazat
pe pori NAND const n plasarea inversat a ieirii Q i a ieirii negate. Se observ
c ieirea Q apare la poarta NOR care primete intrarea de resetare R. n schema
din fig.5.5,b se folosesc numai inversoare simple cu o singur intrare. Aceast
variant nu are semnale intrare distincte. Comenzile de setare i resetare se aplic
direct la terminalele de ieire i sunt active pe nivel cobort.

Fig.5.5 Alte variante de realizare a unui latch RS

Spre exemplu, dac latch-ul se afl n starea 1 (deci Q=1), se foreaz


temporar n 0 ieirea Q. Ca urmare, la ieirea negat apare valoarea 1, deci latch-ul
trece n starea 0. Aceast stare este meninut i dup dispariia impulsului datorit
aciunii celor dou inversoare conectate n cascad prin reacie. Dac latch-ul se
afl n starea 0 (deci Q=0), comanda temporar de tip nivel cobort trebuie aplicat
pe ieirea negat. Pstrnd aceeai semnificaie a notaiilor comenzilor, exist deci
pentru aceast variant de latch urmtoarea echivalen:
S =Q
R=Q
i variantele din fig.5.5 prezint inconvenientul unei comportri
imprevizibile la activarea i dezactivarea sincron a comenzilor. n fine, pentru a
ncheia discuia relativ la aceast prim soluie de realizare a unui circuit
elementar de memorare, trebuie menionat o alt deficien. Semnalele de intrare
determin cum i cnd are loc comutarea latch-ului. n numeroase aplicaii este
necesar s se asigure o discriminare ntre cele dou aspecte.

5.2.2. Latch cu ceas

Eliminarea deficienei latch-ului RS referitoare la decuplarea ntre cum i


cnd are loc comutarea strii comport introducerea unui semnal suplimentar de
comand. Acest semnal, denumit semnal de ceas i notat n mod curent CK,
condiioneaz aciunea semnalelor de setare i resetare. Condiionarea se traduce
prin existena unei anumite valori a semnalului de ceas (1 sau 0, n funcie de
realizarea circuitului), care poart denumirea de palier activ al ceasului.
Pornind de la un latch RS de tipurile reprezentate n fig.5.3 i 5.5,a, se
obin, prin adugarea unei pori NAND, schemele latch-urilor cu ceas din fig.5.6.
n unele lucrri astfel de circuite sunt denumite latch-uri RST (T de la timp).

Fig.5.6. Varainte de latch cu ceas

Pentru varianta din fig.5.6,a, palierul activ al ceasului este cel de nivel
ridicat, iar comenzile de setare i resetare sunt de asemenea active pe nivel ridicat.
ntr-adevr, pentru CK=1 i una din intrri activ, una din porile U1 sau U2
produce la ieire valoarea logic adecvat pentru comanda latch-ului RS (valoare
logic 0). n cazul circuitului din fig.5.6,b comenzile de setare i resetare, precum
i semnalul de ceas sunt active pe nivel cobort.
De la bun nceput trebuie menionat faptul c i latch-ul cu ceas prezint
inconvenientul unei comutri imprevizibile n cazul n care pe durata palierului
activ al ceasului sunt active ambele comenzi de setare i restare. Deficiena persist
pentru simplul motiv c n componena circuitului intr un latch elementar RS. n
consecin, n cele ce urmeaz se vor considera numai situaiile n care comenzile S
i R nu sunt active simultan. Pentru precizarea ideilor, ne vom referi la varianta din
fig.5.6,a (din punct de vedere calitativ, comportarea circuitului din fig.5.6,b este
identic).
O utilizare corect a latch-ului cu ceas presupune ca activarea semnalelor S
sau R s aib loc n afara palierului activ al ceasului. Prin utilizare corect se
nelege o astfel de succesiune n timp a comutrilor semnalelor R, S i CK prin
care se asigur atingerea obiectivului urmrit de separare funcional a rolului
setului de comenzi R, S de rolul semnalului de ceas.
Diagramele din fig.5.7,a ilustreaz modul corect de utilizare a circuitului.
Se observ c o comand oarecare (de setare iniial i apoi de resetare) devine
efectiv numai n momentul n care apare palierul activ al ceasului. Pentru
simplitatea desenului s-a fcut abstracie de ntrzierea inerent introdus de pori.
Liniile punctate evideniaz legtura dintre activarea ceasului i comutarea
circuitului.
Dac nu se respect condiia precizat, funcia semnalului de ceas este
alterat (se rezum numai la blocarea comenzilor pe palierul inactiv) i circuitul se
comport ca i un latch RS elementar. Acest lucru este ilustrat n diagrama din
fig.5.7,b. Se observ c, n succesiunea n timp imaginat a semnalelor, S i
respectiv R determin nu numai felul comutrii dar i momentul n care aceasta se
produce (evideniat prin liniile punctate). n aceast situaie, se spune c latch-ul
este transparent. De reinut deci c latch-ul cu ceas este transparent pe palierul
activ al ceasului.

Fig.5.7. Funcionarea latch-ului cu ceas cu semnale active pe nivel ridicat.


Utilizare corect (a) i incorect (b)

Observaie. Desigur c dac setarea sau resetarea sunt active numai ntr-un
interval de timp n care ceasul este inactiv, atunci comenzile respective nu sunt
resimite la ieire. O astfel de situaie nu a fost luat n considerare n diagramele
din fig.5.7.
n tabelul 5.2 se prezint sintetic funcionarea unui latch cu ceas, n cazul
variantei cu semnale active pe nivel ridicat. Notaiile Qn i Qn+1 semnific starea
existent nainte i dup apariia palierului activ al ceasului.

Tab.5.2

n concluzie, latch-ul cu ceas rezolv numai parial problema decuplrii


ntre cum i cnd are loc comutarea. Rezolvarea este parial deoarece este
condiionat de respectarea condiiei menionate de utilizare corect a circuitului.
Totodat, n condiii de ceas activ, se menine deficiena semnalat la latch-ul
elementar RS referitoare la nedeterminarea comutrii provocate de activarea
simultan a comenzilor de setare i resetare.

5.2.3. Latch de tip D

Cele dou variante anterioare de circuite elementare de memorare prezint


deficiena comun constnd existena unei situaii n care comutarea este
imprevizibil. Latch-ul de tip D (data latch latch de date) constituie soluia
eliminrii acestei nedeterminri i const n prevederea unei restricii prin care se
face imposibil activarea simultan a semnalelor de setare i resetare n cadrul unui
latch cu ceas (vezi fig.5.8,a).

Fig.5.8. Latch de tip D. Variant de schem (a) i


reprezentri simbolice (b)

Se observ c acest circuit nu mai are de fapt dou semnale de comand


distincte, ci unul singur, notat D. Pentru varianta figurat de latch cu ceas, dac
D=1 i ceasul este activ, rezult ieirea Q=1. Evident, dac D=0 i ceasul este activ,
rezult ieirea Q=0. Se poate spune deci c latch-ul memoreaz data D, de unde i
denumirea circuitului.
n aplicaii diverse un latch de tip D este reprezentat concentrat printrr-unul
din simbolurile din fig.5.8,b. Cele dou simboluri pun n eviden palierul activ al
ceasului, conform conveniei cunoscute: cerculeul indic faptul c ceasul este activ
pe nivel cobort.
Indiferent de varianta constructiv, exploatarea corect a unui latch de tip
D presupune ca modificarea intrrii de date s se produc n afara palierului activ al
ceasului. Dac nu se respect aceast condiie, se manifest fenomenul de
transparen, semnalat i n cazul latch-ului RS cu ceas analizat n paragraful
anterior. Transparena constituie punctul slab al latch-ului de tip D deoarece n
acest regim dispare practic funcia de memorare, ieirea urmrind direct comutrile
nregistrate la intrarea de date (dispare controlul tranziiei ieirii prin intermediul
ceasului). n fig.5.9 este ilustrat funcionarea corect a unui latch de tip D, precum
i regimul nedorit de transparen. La fel ca i n diagramele anterioare, s-a fcut
abstracie de ntrzierea produs de timpul de propagare prin circuit a efectului
comutrilor semnalelor de intrare.

Fig.5.9. Funcionarea unui latch de tip D cu ceasul activ pe nivel ridicat

Privind comparativ latch-ul cu ceas i latch-ul de tip D, se remarc


urmtoarele:
latch-ul de tip D elimin problema comutrii imprevizibile;
un latch cu ceas poate menine un timp orict de mare data memorat,
indiferent de evoluia ceasului; n acest scop trebuie ca cele dou comenzi
(setare i resetare) s rmn inactive;
un latch de tip D actualizeaz ieirea la fiecare palier activ al
ceasului, n conformitate cu starea intrrii unice D; pentru a menine o
anumit valoare memorat este necesar ca, n intervalul de timp dorit s nu
apar o comutare a ceasului pe palierul activ.
Ultimul aspect menionat nu constituie o restricie de natur s limiteze aria
de aplicaie a latch-ului de tip D. Denumirea de semnal de ceas este generic i nu
presupune cu necesitate ca acesta s reprezinte o und dreptunghiolar periodic,
aa cum sugereaz diagramele de timp prezentate. Semnalul de ceas poate s fie
activat neperiodic n timp, n conformitate cu logica aplicaiei n care este folosit
latch-ul. Din acest motiv, uneori, n loc de semnal de ceas se folosete pentru
aceast intrare denumirea de semnal de activare latch.
n producia de serie de circuite integrate se ntlnesc numeroase variante
care conin n general mai multe latch-uri de tip D. De menionat c exist i
circuite ale cror latch-uri sunt prevzute cu ieiri cu trei stri. Utilizarea lor se
impune atunci cnd ieirile latch-urilor sunt legate rigid n paralel cu ieirile altor
circuite, care, la rndul lor, trebuie s fie prevzute cu aceeai facilitate.
Aceast soluie de tratare a ieirilor elimin necesitatea existenei unui
sistem de selectare a datelor bazat pe multiplexoare.
n fig.5.10 este prezentat schematic structura unui circuit latch de tip D cu
ieire cu trei stri. S-a considerat cazul n care latch-ul este activat pe nivel ridicat,
iar ieirea este activat pe nivelul cobort. Activarea latch-ului este comandat prin
semnalul EN, iar activarea ieirii este controlat prin semnalul OE (output
enable).

Fig.5.10. Latch de tip D cu ieire cu trei stri

Se observ uor c problema se rezolv cu ajutorul unui buffer cu trei stri.


Cnd comanda acestui buffer este pe nivel cobort, Q=Q'. n caz contrar, la pinul
de ieire Q se instaleaz starea de nalt impedan. n tabelul din fig.5.10 care
definete funcionarea circuitului, prin Q0 s-a notat starea ieirii stabilit la ultima
activare a circuitului, prin X este marcat o valoare indiferent, iar HZ indic starea
de nalt impedan.
n final, trebuie reinut faptul c latch-ul de tip D prezint deficiena de a fi
transparent pe perioada n care semnalul de ceas este activ (funcia de memorare
este activat). Eliminarea acestei deficiene este asigurat prin varianta de circuit
elementar de memorare prezentat n continuare.

5.2.4. Bistabil (flip-flop) de tip D

Spre deosebire de circuitele denumite latch analizate anterior - latch cu


ceas i latch de tip D - bistabilul de tip D este comandat pe frontul semnalului de
ceas (se reamintete convenia anunat n introducerea acestui capitol privind
semnificaia termenilor: latch-ul este un circuit de memorare sensibil pe nivel, n
timp ce prin bistabil (flip-flop) se nelege un circuit sensibil pr front). La origine,
denumirea de tip D dat acestui circuit provine de la cuvntul delay (ntrziere) i
va fi justificat dup prezentarea modului de funcionare.
Un bistabil de tip D se poate realiza pe baza aa-numitei structuri master-
slave (vezi fig.5.11). Este vorba de dou latch-uri RS cu ceas conectate n cascad
i atacate n antifaz de un semnal de ceas CK.
Pentru ambele latch-uri semnalul de ceas propriu este activ pe nivel ridicat.
Datorit prezenei inversorului, este evident c cele dou latch-uri sunt activate
pentru nivele opuse ale semnalului de ceas extern. Astfel, latch-ul master i poate
schimba starea pe perioada n care CK=1 i memoreaz valoarea dictat de S sau R.
Acest latch este transparent pe palierul activ al ceasului i, n consecin, este
necesar s se asigure condiia cunoscut: S i R trebuie s comute numai n afara
palierului activ al ceasului.
Cnd apare tranziia 10 a ceasului, circuitul master se blocheaz n starea

memorat i circuitul slave este activat, reproducnd starea furnizat de ieirile QM.
Fig.5.11. Structura master-slave

In concluzie, ieirea Q , Q va comuta pe frontul negativ al ceasului,


conform strii avute de intrrile S,R nainte de aceast tranziie. La nivelul ieirii
globale nu se mai poate manifesta deci fenomenul de transparen criticat n cazul
latch-ului de tip D.
Structura master-slave prezentat este ns deficitar n raport cu situaia
activrii simultane a semnalelor de setare i resetare S i R. Pentru a elimina acest
dezavantaj se adopt soluia ntlnit anterior n cazul latch-ului de tip D: se
renun la existena a dou semnale de intrare i se distribuie printr-un inversor o
aceeai intrare ctre terminalele S i R din fig.5.11. Schema rezultat astfel
constituie o variant de realizare a bistabilului de tip D (vezi fig.5.12).

Fig.5.12. Bistabil de tip D realizat cu pori NAND

n plus fa de elementele discutate, n schem apar dou semnale de


comand asincrone S A , R A . Aceste intrri acioneaz direct asupra latch-ului
slave, fr a fi condiionate de starea semnalului de ceas (motiv pentru care sunt
denumite asincrone) i permit setarea sau resetarea forat a bistabilului. Deseori,
n documentaiile de firm n loc de S A , R A se folosesc notaiile PRE (preset) i
CLR (clear=tergere) pentru semnalele de comand asincrone.
n fig.5.13,a se prezint o diagram de timp care ilustreaz funcionarea
bistabilului de tip D n raport cu comutrile intrrii D. Efectul intrrilor asincrone
este evident i nu a fost luat n considerare n acest exemplu.

Fig.5.13. Bistabil de tip D: a. funcionare; b. condiii de comutare

n principiu, funcionarea este definit prin rspunsul circuitului la nivelul


ieirii Q=QS (ieirea negat corespunztoare este ntotdeauna n opoziie cu Q).
Totui, pentru a sublinia aspecte legate de funcionarea intern a circuitului s-a
reprezentat i ieirea latch-ului master QM. S-a fcut abstracie de ntrzierea
inerent n propagarea semnalelor.
Urmrind evoluia semnalelor n ordinea celor patru impulsuri de ceas
considerate, se observ urmtoarele evenimente semnificative. La apariia
palierului activ pentru master (CK=1), ieirea QM ia valoarea impus de data de
intrare (D=1), n timp ce ieirea Q rmne nemodificat. Ieirea Q comut n 1 n
momentul apariiei frontului negativ al ceasului. Similar se petrec lucrurile i n
cazul celui de-al doilea impus de ceas, cu diferena c, deoarece acum D=0,
comutrile suferite de QM i Q corespund noii valori a datei de intrare. Pe durata
celui de-al treilea impuls de ceas, D comut temporar n 1 i apoi revine la 0. Se
observ c aceast comutare este resimit numai la nivelul latch-ului master, care
este transparent pe palierul activ al ceasului, dar nu are efect la nivelul ieirii Q,
ntruct QM=0 n momentul frontului negativ al ceasului. n fine, pe durata
palierului activ al celui de-al patrulea impuls de ceas apare o comutare n 1 a
intrrii D. Deoarece aceast valoare se menine i n momentul frontului negativ al
ceasului, valoarea lui D este memorat la ieirea Q.
Descrierea de mai sus este pur calitativ. Pentru ca evoluiile semnalelor s
fie ntr-adevr cele prezentate este necesar s fie respectate anumite condiii
cantitative privind succesiunea n timp a comutrilor. De exemplu, n legtur cu
ultima combinaie de semnale (la cel de=al patrulea ipuls de ceas), trebuie
menionat c pentru a garanta memorarea este necesar ca D s aib o valoare
stabil nainte i dup frontul negativ al ceasului (vezi fig.5.13,b). Cele dou
intervale de timp sunt specificate n documentaia de firm folosind notaiile tSU i
tH (timp de stabilire set up i timp de meninere hold) i reprezint valorile
minime impuse pentru o funcionare corect a bistabilului. De aceti parametri
trebuie s se in cont atunci cnd se proiecteaz o aplicaie care include bistabilul.
Pentru nelegerea aplicaiilor care vor urma este esenial s se rein
modul sintetic de prezentare a funcionrii bistabilului de tip D (vezi tab.5.3).

Tab.5.3

Observaie. Dup cum s-a vzut anterior, exist i posibilitatea realizrii


unui latch cu ceas avnd palierul activ pe nivel cobort. Folosind astfel de latch-uri
conectate ntr-o schem similar celei din fig.5.12 se obine un bistabil de tip D
comandat pe frontul pozitiv al ceasului. n schemele de principiu cele dou variante
de bistabile de tip D sunt reprezentate utiliznd simbolurile din fig.5.14.

Fig.5.14. Simboluri pentru reprezentarea bistabilelor de tip D acionate


pe front negativ (a) i pe front pozitiv (b)

n tehnologia CMOS, un bistabil de tip D cu performane superioare este


realizat ntr-o manier diferit de cea reprezentat n fig.5.12. Noutatea const n
utilizarea unui circuit de baz specific acestei tehnologii i denumit poart de
transmisie (transmission gate).

Fig.5.15. Poarta de transmisie MOS. Schema bloc (a) i funcia ndeplinit (b)
O poart de transmisie (vezi schema bloc din fig.5.15,a) este format din
dou tranzistoare complementare (unul cu canal n i cellalt cu canal p) conectate
n paralel i comandate n opoziie prin semnalul C i negatul su. n funcie de
comanda dubl C (0/1 sau 1/0), cele dou tranzistoare sunt fie ambele n conducie,
fie ambele blocate. n starea cu cele dou tranzistoare n conducie, rezistena ntre
terminalele A i B este foarte mic (RON) i curentul datorat unei surse externe
poate circula n ambele sensuri ntre aceste dou borne. n starea cu cele dou
tranzistoare blocate, rezistena ntre terminalele A i B este foarte mare (ROFF) i
circuitul n care sunt intercalate aceste terminale este practic ntrerupt, cu condiia
ca tensiunile aplicate la bornele A i B s respecte specificaiile de catalog. Pe
scurt, o poart de transmisie poate fi asimilat cu un contact comutator a crui stare
este stabilit prin comanda C, conform reprezentrii simbolice din fig.5.15,b.
n fig.5.16 este prezentat schema de principiu a unui bistabil de tip D
realizat pe baza porilor de transmisie. Se regsete ideea structurii master-slave i
asigurarea funciei de memorare prin prevederea unei bucle de rezcie care se
nchide peste dou nivele inversoare.

Fig.5.16. Schema de principiu a unui bistabil D cu pori de transmisie

Cu linie plin i linie punctat s-a figurat corespondena dintre starea


(conducia) porilor de transmisie i nivelul semnalului de ceas CK. Astfel, pentru
CK=0 sunt nchise (conduc) porile 1TG i 4TG, n timp ce porile 2TG i 3TG sunt
deschise (ntrerupte). La CK=1 situaia celor dou perechi de pori se inverseaz.
Se observ c pentru CK=0 data de intrare este recepionat de etajul master, n
timp ce etajul slave este izolat i produce la ieire valoarea memorat la tactul de
ceas anterior. n momentul comutrii 01 a ceasului, deci la un front pozitiv, se
nchide reacia etajului master i se asigur memorarea valorii negate a intrrii. Prin
nchiderea porii 3TG se transmite la ieirea etajului slave negaia datei memorate
de master, deci valoarea avut de intrarea D n momentul frontului negativ al
ceasului.
Schema concret (simplificat) a bistabilului este prezentat n fig.5.17.
Din raiuni legate de posibilitatea introducerii reaciilor i a unor semnale de
comand suplimentare, inversoarele simple din schema de principiu au fost
nlocuite cu pori NAND. Circuitul este prevzut cu dou intrri suplimentare
active pe nivel cobort i care acioneaz independent de semnalul de ceas (intrri
asincrone):
PRE = 0 (preset) foreaz ieirea n 1 (seteaz bistabilul)
CLR = 0 (clear) foreaz ieirea n 0 (terge bistabilul)
Se las pe seama cititorului s stabileasc cum ar trebui comandate porile
de transmisie pentru ca bistabilul s fie acionat pe frontul negativ al ceasului.

Fig.5.17. Bistabil de tip D realizat cu pori NAND i pori de transmisie

Este evident c i n acest mod de realizare, etajul master este transparent


pe durata unui anumit palier al ceasului (n cazul prezentat, pe palierul de 0).
Totui, la fel ca i n cazul schemei din fig.5.12, la nivelul ntregului ansamblu
(master+slave) este eliminat efectul nedorit de transparen.
n 5.2.15.2.4 au fost discutate circuitele elementare de memorare care
stau la baza realizrii a numeroase i variate structuri digitale. nainte de a analiza
unele aplicaii, este util o privire retrospectiv asupra caracteristicilor de baz ale
celulelor elementare de memorare. Tabelul 5.4 ofer o imagine sintetic a acestor
caracteristici.Poziiile marcate - indic faptul c nu se pune problema respectiv.

Tab.5.4
Denumirea Numr Decuplare Nedeterminare Ceas Transparen
circuitului intrri ntre cum i la activarea i activ pe fa de ceas
de cnd are loc dezactivarea nivel
comand comutarea sincron a sau
comenzilor front
Latch RS 2 Nu Da - -
Latch RS cu 2 Da Da Nivel Da
ceas
Latch D 1 Da - Front Nu
Bistabil D 1 Da - Front Nu
5.3. Circuite complexe de memorare

Funcia de memorare este esenial n marea majoritate a sistemelor


digitale. Sunt destul de rare situaiile n care o aplicaie dat s poat fi construit
doar pe baza circuitelor logice combinaionale. Raiunile sunt diverse i este
prematur la acest nivel al expunerii s fie precizate exhaustiv. Vom lua n
considerare numai un singur aspect, care evideniaz o caracteristic a circuitelor
de memorare la care nu s-a fcut pn acum o referire explicit.
Din analiza diverselor circuite elementare examinate anterior rezult c
funcionarea acestora are un caracter secvenial, n sensul unei evoluii controlate n
timp a semnalelor de ieire, spre deosebire de CLC-uri, la care relaia n timp ntre
intrare i ieire este determinat doar de performanele dinamice intrinseci ale
porilor componente. Este uor de intuit c n cele mai multe aplicaii este necesar
un control strict n timp a modului n care se stabilete relaia dintre intrare i ieire.
Vom denumi structur de memorare un ansamblu format din celule
elementare de memorare interconectate astfel nct s rezulte un circuit exploatabil
n conformitate cu un set de reguli predefinite. Caracteristicile de baz ale unei
structuri de memorare sunt:
capacitatea de memorare (dimensiunea), exprimat n bii;
timpul de acces, reprezentnd durata unei operaii de scriere sau citire
din memorie.
Este evident c este de dorit ca timpul de acces s aib o valoare ct mai
mic i c, pentru a face fa unor cerine complexe ale sistemului n care este
inclus structura de memorare, aceasta trebuie s aib o dimensiune adecvat
(uneori mare sau foarte mare). Satisfacerea simultan a ambelor cerine n condiii
economice rezonabile ridic probleme serioase, odat cu creterea capacitii de
memorare.
Fr a epuiza toate cazurile posibile, din punct de vedere al poziiei
structurii de memorare n cadrul unui sistem digital se pot distinge dou situaii:
structur de memorare dedicat exclusiv funciei de memorare i
realizat sub forma unui circuit integrat care se interconecteaz cu
alte circuite;
structur de memorare inclus ntr-un circuit integrat conceput astfel
nct s ofere i alte funcii n afara celei de memorare.
n cele ce urmeaz se vor analiza cteva structuri de memorare
reprezentative pentru cele dou direcii menionate. Pentru facilitarea nelegerii,
exemplele se vor succeda urmrind o ordine cresctoare din punct de vedere al
capacitii de memorare.

5.3.1. Circuit de memorare i transfer de date

Deseori este necesar s se manevreze n mod paralel date de lungime


redus (de exemplu, opt bii) de la un circuit emitor spre un circuit receptor. Un
caz tipic este cel al comunicrii dintre un microprocesor i un dispozitiv extern
situat la distan mic, rolul de emitor, respectiv receptor, putnd fi jucat de
oricare din aceste componente. Comunicarea este asigurat printr-un circuit
denumit port, care se intercaleaz ntre microprocesor i dispozitivul extern. Un
port de intrare transmite date de la un dispozitiv extern ctre microprocesor, iar un
port de ieire servete la transmiterea datelor de la microprocesor ctre un
dispozitiv extern (vezi fig.5.18).

Fig.5.18. Porturi de intrare i ieire

Condiiile impuse pentru circuitele cu rol de port sunt urmtoarele:


s poat fi comandate de ctre microprocesor astfel nct transferul
datei s se realizeze la momentul dictat de acesta;
ieirea portului de intrare trebuie s aib posibilitatea trecerii n starea
de nalt impedan, deparece la magistrala DBUS sunt conectate n
paralel mai multe circuite;
portul de ieire trebuie s aib capacitatea de a memora data furnizat
de ctre microprocesor i a o menine un timp suficient pentru ca
dispozitivul extern s o poat folosi (n general, viteza de lucru a unui
microprocesor este mult mai mare dect aceea a unui dispozitiv
extern).
Un circuit clasic care poate fi folosit att ca port de intrare ct i ca port de
ieire este 74373.
6. AUTOMATE FINITE

6.1. Noiuni generale

n raport cu structurile analizate n capitolele 4 i 5 (circuite logice


combinaionale i circuite de memorie), automatele finite reprezint pasul imediat
urmtor pe linia mririi complexitii funcionale a unui sistem digital. Automatele
finite sunt ncadrate n categoria sistemelor digitale de ordinul 2. Din punct de
vedere funcional, automatele finite cumuleaz carcteristicile de baz ale celor
dou tipuri de structuri menionate, respectiv, funcia de prelucrare i cea de
memorare i n plus, pot asigura anumite funcii specifice, calitativ diferite de cele
ndeplinite de CLC-uri i de sistemele de memorare.
n fig.6.1 se prezint schema bloc de principiu a unui automat finit. Se
remarc existena unei bucle de reacie care se nchide peste sistemul de ordinul 1
inclus. Aceast reacie este definitorie pentru un automat finit i confer structurii
proprieti specifice, respectiv, un comportament n evoluia strii care nu se
ntlnete la sistemele analizate anterior.

Fig.6.1. Schema bloc de principiu Fig.6.2. Evidenierea semnalelor i a


a unui sistem de ordinul 2 blocurilor componente ale unui automat

n esen, specificitatea funcional a unui sistem de ordin 2 const n


posibilitatea modificrii strii chiar i n condiiile meninerii constante a comenzii.
Altfel spus, la astfel de sisteme exist o anumit autonomie a evoluiei n timp a
strii fa de comanda (intrarea X) aplicat.
ntr-o form mai explicit, schema general a unui automat finit este
prezentat n fig.6.2. Aceast imagine pune n eviden intrarea X i starea Q. La un
prim nivel de prezentare a problemelor, starea Q va fi asimilat cu ieirea
automatului, ceea ce corespunde, conform unei definiii mai riguroase, structurii de
semiautomat. Din raiuni similare celor evideniate n cazul circuitelor de
memorare, se impune o decuplare ntre cum i cnd are loc comutarea
automatului.
Problema lui cum se rezolv la nivelul circuitelor de prelucrare
combinaional (CLC)
Problema lui cnd este decis la nivelul sistemului de ordinul 1 i
comport existena unor elemente de memorare sincronizate cu
semnalul de ceas, ceea ce face ca automatul finit s aib n mod
implicit atributul de sincron.
Pentru a putea controla n mod strict determinat secvenierea strilor este
necesar ca n bucla de reacie a automatului s existe elemente de memorare
netransparente, care s nu permit transmiterea permanent a comutrilor prin
bucl, ci numai la apariia frontului pozitiv sau negativ al semnalului de ceas. Deci,
memoria pe bucla de reacie trebuie realizat cu circuite acionate pe frontul
impulsului de ceas (flip-flop master-slave sau D), denumite generic i registre. n
consecin, fiecrei perioade a ceasului i va corespunde o singur stare a
automatului.
n cazul general, X i Q sunt vectori de variabile binare. n cazul cel mai
simplu, dimensiunea spaiului strilor este egal cu 2.
Un automat cu numai dou stri se numete automat bistabil (a nu se
confunda cu un circuit de memorare bistabil !). Relund ideea de baz enunat mai
sus, diferena dintre un circuit de memorare bistabil i un automat bistabil const n
aceea c acesta din urm i poate schimba starea la apariia unui front adecvat al
ceasului chiar i n cazul n care comanda (comenzile) rmn nemodificate. n cele
ce urmeaz se vor analiza dou exemple de automate bistabile elementare pe baza
crora se pot construi automate de complexitate mrit cu un numr impus de stri.

6.2. Automate finite bistabile


6.2.1. Automat de tip T

Acest automat, denumit pe scurt bistabil T, este cel mai simplu automat
bistabil posibil, ntruct comport o singur comand. Comanda este notat cu T
(toggle) i asigur dou comportri distincte ale circuitului:
- dac T=0, circuitul nu i modific starea, indiferent de evoluia CK;
- dac T=1, la fiecare impuls de ceas circuitul trece n starea opus celei
precedente.
Pentru memorarea strii este necesar un registru pe 1 bit, de exemplu, un
flip-flop de tip D. Rezult schema de principiu din fig.6.3,a. Se pune problema
sintezei CLC astfel nct s se asigure funcionarea descris mai sus. n tabelul
6.1se prezint tabelul de adevr al CLC, avnd intrrile T i Q i ieirea D.

Tab.6.1
T Q D
0 0 0
0 1 1
1 0 1
1 1 0
Rezult imediat c:
D =T Q
i deci CLC va fi un circuit XOR, ajungndu-se astfel la schema prezentat n
fig.6.3,b. n fig.6.3,c este prezentat reprezentarea simbolic a unui automat de tip
T acionat pe frontul pozitiv al ceasului. Dac circuitul flip-flop de tip D este
sensibil pe frontul negativ al ceasului, n reprezentarea simbolic a automatului
apare un cercule pe intrarea de ceas.

Fig.6.3. Automat bistabil T: a. schema de principiu; b. realizare; c. simbolizare

O aplicaie imediat a acestui tip de automat const n divizarea cu 2 a


frecvenei semnalului de ceas (presupus periodic). Efectul de divizare se obine la
nivelul ieirii Q, cu condiia ca T=1 i este ilustrat n diagrama din fig.6.4.

Fig.6.4. Divizarea cu 2 a frecvenei semnalului de ceas

Dup cum se va vedea ulterior, obinerea unui semnal periodic cu o


frecven mai redus dect cea a unui semnal de ceas de baz este larg utilizat n
sistemele digitale complexe. Exemplul simplu considerat aici sugereaz
posibilitatea rezolvrii acestei probleme, n condiiile impunerii unui factor
oarecare de divizare. Desigur c factorul de divizare trebuie s fie un numr ntreg.
Dac este vorba de un factor de divizare egal cu o putere ntreag a lui 2, problema
se rezolv prin simpla cascadare a unui numr adecvat de automate de tip T a cror
intrare de ceas const n starea Q a automatului precedent.
6.2.2. Automat de tip JK

Acest automat, denumit pe scurt bistabil JK, are dou intrri de comand,
notate J i K, active pe nivel ridicat. Drept element de memorare se folosete un
circuit RS master-slave (vezi fig.6.4,a). Se reamintete c un flip-flop master-slave
prezint deficiena unei comutri imprevizibile la nivelul ieirii circuitului master
n cazul n care intrrile de comand R, S sunt activate i apoi dezactivate sincron
pe durata palierului activ al ceasului.
Obiectivul urmrit de automatul JK este de a elimina aceast deficien i
de a asocia comenzii J=K=1 o evoluie autonom a ieirii, impus numai de
semnalul de ceas. Mai precis, n cazul J=K=1, la fiecare front activ al semnalului
de ceas automatul JK trebuie s comute n starea opus celei anterioare. Pentru
celelalte combinaii ale comenzilor, comportarea trebuie s fie similar cu cea a
circuitului RS master-slave, cu precizarea c J=1 conduce la setarea circuitului, iar
K=1, la resetarea acestuia.

Fig.6.5. Automat bistabil JK: a. schema de principiu; b. realizare; c. simbolizare

Condiiile menionate de funcionare sunt sintetizate n tab.6.2, pe baza


cruia poate fi definit CLC-ul. n conformitate cu structura din fig.6.5,a, intrrile
sunt J, K, Q, iar ieirile sunt R, S.
Rezult imediat FND a funciilor R i S, precum i echivalentul redus al
acestora:
R = J KQ + JKQ = KQ
S = J K Q + JK Q = J Q
i deci automatul JK va avea schema din fig.6.5,b. Pentru o reprezentare
concentrat se folosete simbolul din fig.6.5,c, n care s-a considerat cazul ceasului
activ pe front negativ.
Tab.6.2.
J K Q R S Observaii
0 0 0 0 0 Nu comut
0 0 1 0 0 Nu comut
0 1 0 0 0 Nu comut
0 1 1 1 0 Comut n 0
1 0 0 0 1 Comut n 1
1 0 1 0 0 Nu comut
1 1 0 0 1 Comut n starea opus
1 1 1 1 0 Comut n starea opus

Observaie. De remarcat faptul c, pentru J=K=1 i J=K=0, automatul de


tip JK se comport exact ca i automatul de tip T. n cataloagele de firm
nu se ntlnesc circuite integrate care conin automate de tip T. Dac se
dorete asigurarea unei funcionri corespunztoare unui automat de tip T,
se folosete un circuit de tip JK la care cele dou intrri de comand J i K
se leag mpreun i sunt atacate cu un acelai semnal binar.

6.3. Structuri bazate pe automate bistabile

Prin conectarea adecvat a automatelor elementare analizate se pot realiza


automate mai complexe, avnd dimensiunea vectorului de stare superioar lui 2. n
paragrafele urmtoare se vor prezenta cteva astfel de automate, cunoscute sub
numele de numrtoare.
Un numrtor pe n bii este un automat finit cu maximum 2n stri stabile
care, n variantele uzuale, realizeaz funcia aritmetic de incrementare sau de
decrementare. n primul caz este vorba de un numrtor cresctor (counter up), iar
n cel de al doilea, de un numrtor descresctor (counter down). Desigur c
incrementarea i decrementarea trebuie privite prin prisma reprezentrii naturale pe
n bii a unui numr.
Pentru precizarea ideilor, ne vom referi la un numrtor cresctor avnd
schema bloc din fig.6.6 i care este acionat pe frontul pozitiv al semnalului de
ceas.
Comanda U (up) condiioneaz funcionarea numrtorului:
- Dac U=0 starea Y=[yn-1, .y0] rmne nemodificat, indiferent de
evoluia semnalului de ceas CK.
- Dac U=1, la fiecare front pozitiv al ceasului are loc incrementarea
numrtorului: Y=Y+1.
n general, numrtoarele pot fi asincrone sau sincrone. Semnificaia
acestor atribute va rezulta din exemplele prezentate n continuare.
Fig.6.6. Schema bloc a unui numrtor

Observaii.
1. Numrul maxim reprezentat prin coninutul numrtorului este 2n-1
(numrtor modulo 2n). Exist i variante de numrtoare la care
numrarea este limitat la o valoare mai mic. De exemplu, pentru n=4 se
pot realiza numrtoare n baza 10, 12 etc.
2. Dac starea actual a numrtorului este 111 i dac U=1, la
urmtorul front pozitiv al ceasului starea va fi 000. Acest eveniment se
numete depire.
3. Utilizrile curente ale unui numrtor sunt cele de contor de evenimente
sau temporizator. n primul caz, semnalul de ceas nu este periodic, evoluia
sa n timp fiind legat de o logic oarecare. n al doilea caz, semnalul de
ceas este periodic, cu frecven constant, astfel c starea numrtorului
reflect scurgerea timpului real. ntr-o alt accepie, n regimul de
funcionare ca temporizator, numrtorul asigur divizarea frecvenei
semnalului de ceas.
Celula de baz a unui numrtor poate fi un automat bistabil de tip T sau
de tip JK. Realizarea cu bistabile de tip T este mai simpl i va fi luat n
considerare cu precdere n cele ce urmeaz.

6.3.1.1. Numrtor asincron

Pentru simplitate, se va considera cazul n=3 (numrtor modulo 8). Strile


succesive sunt prezentate n tabelul 6.3. Sgeile figurate indic sensul evouliei
strii i revenirea la starea zero dup atingerea numrului maxim.

Tab.6.3. Strile numrtorului modulo 8


y2 y1 y0 Stare
0 0 0 0
0 0 1 1
0 1 0 2
0 1 1 3
1 0 0 4
1 0 1 5
1 1 0 6
1 1 1 7
n fig.6.7,a este prezentat realizarea numrtorului folosind automate de
tip T. Este evident c pentru acoperirea celor opt stri distincte sunt necesare trei
astfel de automate, notate n figur prin T0, T1 i T2. Presupunnd c starea iniial
este 000 i c U=1, evoluia numrtorului este ilustrat n diagramele din fig.6.7,b.
Numrtorul se numete asincron deoarece bistabilele de tip T nu sunt
comandate prin acelai impuls de ceas (T0 este comandat de frontul negativ al lui
CK, T1 de frontul negativ al lui y0, iar T2, de frontul negativ al lui y1).

Fig.6.7. Numrtor asincron modulo 8: a. structur; b. diagrame de funcionare

Fie tpr timpul de propagare al semnalului printr-un bistabil T, respectiv,


ntrzierea cu care se instaleaz starea stabil Q fa de frontul negativ al
semnalului aplicat la intrarea CK.
ntrzierea maxim pentru ansamblul celor 3 bistabile apare n cazul n
care are loc trecerea de la starea 7 la starea 0 (comut toate cele trei bistabile) :
t max = 3 t pr
n general, pentru un numrtor pe n bii: t max = n t pr . Dac n este mare,
se poate ajunge la ntrzieri care depesc limita impus pentru viteza de numrare.
Altfel spus, dac frecvena semnalului de ceas depete o anumit limit, de la un
anumit rang automatele componente nu mai sesizeaz fronturile CK. Pentru a
asigura o vitez de numrare mai mare se adopt soluia numrtorului sincron.
6.3.1.2. Numrtor sincron

O analiz atent a funcionrii schemei numrtorului asincron prezentat


mai sus relev urmtoarele observaii:
1. Bitul 0 este modificat de fiecare front negativ al impulsului extern de ceas
CK.
2. Biii de rang i, i >0, sunt modificai la fronturile negative ale semnalului
extern de ceas CK pentru care toi biii de rang inferior sunt egali cu 1.
n concluzie, comanda T a bistabilului de rang i>0 trebuie s fie activ
(T=1) numai dac toi biii de rang inferior sunt egali cu 1. Condiia este asigurat
cu ajutorul unor pori AND avnd un numr adecvat de intrri. n fig.6.8 este
prezentat soluia problemei pentru n=3, considernd automate elementare de tip T.

Fig.6.8. Numrtor sincron modulo 8

Se observ uor c toate automatele bistabile sunt comandate de acelai


semnal de ceas, motiv pentru care numrtorul este denumit sincron.
ntrzierea cu care se instaleaz starea stabil fa de tranziia 10 a
ceasului este:
t = t pr + t pAND ,
tpAND fiind timpul de propagare al unei pori AND. Prin comparaie cu automatul
asincron, rezult n mod evident c ntrzierea se reduce substanial.
Perioada ceasului TCK trebuie s fie mai mare ca t. Rezult de aici
1
frecvena maxim a ceasului f CK = , respectiv viteza maxim de numrare.
TCK
Observaii
f
1. La ieirea yi se obine un semnal avnd frecvena f i = CK , care pune
2 i +1
n eviden funcia de divizor de frecven a numrtorului. n particular,
f CK
pentru ieirea ultimului bistabil din schema prezentat, f 2 = i deci,
23
la nivelul ieirii y2 se realizeaz funcia de divizor cu 8 al frecvenei
semnalului de ceas.
2. Un numrtor descresctor se obine cu o schem similar n care n loc
de ieirile Q se folosesc ieirile Q ale bistabilelor T.
3. n multe aplicaii este util s se semnalizeze atingerea strii finale a
numrtorului (1111) pentru numrtoarele cresctoare i 000 pentru
cele descresctoare.

6.3.1.3. Numrtor sincron reversibil

Se poate realiza o structur care asigur numrarea n ambele sensuri n


funcie de starea unei comenzi dedicate. Considernd aceeai capacitate de
numrare ca i n exemplele anterioare, n fig.6.9 se prezint o soluie posibil
pentru un numrtor reversibil, bazat pe automate de tip T.

Fig.6.9. Numrtor sincron reversibil

Intrarea COUNT condiioneaz numrarea: COUNT=1 asigur numrarea,


iar COUNT=0 blocheaz evoluia numrtorului n starea curent.
Prin comanda U / D se stabilete sensul de numrare: (up/down):
U / D = 0 - numrtor cresctor
U / D = 1 - numrtor descresctor
Se observ c pentru U / D = 0 se selecteaz intrrile I0 ale
multiplexoarelor (deci se folosesc ieirile Q ale automatelor), astfel nct structura
funcioneaz identic cu cea din fig.6.8. Dac U / D = 1 se selecteaz intrrile I1 ale
MUX, astfel c pentru transmiterea comenzii la intrarea T a automatelor T1 i T2 se
folosesc ieirile negate ale automatelor precedente. n consecin, numrarea va
decurge n sens descresctor.
Semnalul OV (overflow=depire) ia valoarea 1 cnd se atinge starea
111 pentru U / D = 0 sau cnd se atinge starea 000 pentru U / D = 1, cu
condiia general ca numrtorul s fie activ (COUNT=1). Acest semnal poate fi
folosit pe post de semnal COUNT pentru un alt numrtor similar, ntr-o structur
cascadat prin care se asigur mrirea capacitii de numrare. Schema de principiu
a unei astfel de structuri este prezentat n fig.6.10.

Fig.6.10. Extinderea capacitii de numrare

Graie conexiunii dintre ieirea OV a numrtorului pe n bii NUM0 i


intrarea COUNT a numrtorului NUM1, acesta din urm va fi incrementat la
apariia frontului semnalului de ceas numai n situaiile n care NUM0 conine
valoarea maxim 11 . . .1 (s-a presupus c numrtoarele sunt setate s funcioneze
n regim de incrementare). O astfel de soluie prezint interes n cazul n care se
folosesc CI prefabricate. De exemplu, cu ajutorul a dou CI care conin fiecare un
numrtor pe 4 bii (cu 16 stri) se poate realiza un numrtor pe 8 bii (cu 256
stri).

6.3.1.4. Numrtor ntr-o baz diferit de 2n

Avnd n vedere utilizarea numrtorului ca divizor al frecvenei


semnalului de ceas (presupus constant), se poate pune problema sintezei unui
circuit a crui capacitate de numrare s fie un numr oarecare, diferit de o putere
ntreag a lui 2. De exemplu, dac oscilatorul de baz al sistemului genereaz un
semnal de ceas cu frecvena de 12MHz i n sistem exist un bloc care reclam
funcionarea la frecvena de 1MHz, se impune divizarea cu 12 a frecvenei de baz.
Schema din fig.6.11, realizat cu automate JK n conectarea specific unui
numrtor asincron, asigur la nivelul ieirii un semnal periodic a crui frecven
este de 12 ori mai mic dect cea a semnalului de ceas CK. Se poate spune c este
vorba de un numrtor n baza 12.

Fig.6.11. Numrtor modulo 12: a. structur; b. diagrame de funcionare

n general, obinerea unui numrtor ntr-o baz diferit de o valoare de


tipul 2n presupune introducerea unei restricii prin care evoluia numrtorului s
fie limitat la valoarea bazei dorite. Astfel, n cazul exemplului prezentat, prin
poarta AND se comand trecerea din starea 1011 n starea 0000 (bitul cel mai
semnificativ al numrtorului este produs la ieirea automatului A3, starea fiind
deci definit prin ieirile Q ale automatelor n ordinea A3A2A1A0).
Presupund c U=1 (numrtor activat), de remarcat urmtoarele
particulariti ale schemei:
- automatele A0, A1 i A2 au realizat condiia de basculare la frontul
negativ al semnalului aplicat la intrarea proprie CK, ntruct pentru acestea condiia
J=K=1 este satisfcut n permanen;
- automatul A3 are asigurat condiia de basculare la frontul negativ al
semnalului aplicat la intrarea proprie CK numai n perioadele n care Q2=1;
- automatul A2 poate primi un front negativ pe intrarea CK numai dac
Q3=0, deoarece numai atunci poarta AND, atacat cu negaia lui Q3, este deschis
pentru al doilea semnal, reprezentat de Q1.
innd cont de aceste observaii, este justificat diagrama de semnale care
ilustreaz evoluia numrtorului i care evideniaz faptul c starea 1011 este
urmat de starea 0000, ceea este echivalent cu numrarea n baza 12.

6.3.1.5. Numrtoare cu funcii multiple

Pornind de la ideile i structurile de baz analizate mai sus se pot concepe


circuite de numrare cu un grad sporit de versatilitate, foarte utile ntr-o gam larg
de aplicaii. n principiu, este avantajos ca un numrtor s posede una sau mai
multe din urmtoarele faciliti:
s poat fi ters (adus n starea 0 . . . 00);
s poat fi ncrcat forat cu o valoare dat;
dup atingerea valorii limit, s reia numrarea de la o valoare
prestabilit.
n mod curent, comanda de tergere este notat CLR (clear), iar comanda
de ncrcare forat, denumit i presetare, este notat PRE (preset) sau LD (load).
De fapt, primele dou faciliti sunt funcional identice, ntruct tergerea este
echivalent cu ncrcarea forat cu valoarea zero. Din acest motiv, n continuare se
va lua n considerare numai comanda de presetare, cu observaia c o realizare
prevzut cu comanda CLR asigur numai tergerea numrtorului.
Comanda de presetare este asincron (independent de semnalul de ceas) i
prioritar fa de comanda sincron, reprezentat de frontul semnalului de ceas.
Posibilitatea introducerii unei astfel de comenzi este oferit de comenzile asincrone
de setare i resetare disponibile la nivelul circuitelor flip-flop de tip D, care, n
ultim instan, intr n componena celulelor unui numrtor. Se reamintete c
aceste comenzi sunt active pe nivel i acioneaz n sensul discutat n prezentarea
unui latch cu ceas.
Posibilitatea de ncrcare a numrtorului cu o valoare aleas i de reluare
a numrrii de la aceast valoare dup atingerea valorii limit, confer circuitului
atributul de programabil, dac numrtorul este inclus ntr-un sistem adecvat. Un
astfel de numrtor programabil rezolv ntr-o manier flexibil problema discutat
anterior privind realizarea divizrii frecvenei semnalului de ceas, fiind realizabil
orice factor de divizare cuprins n gama de numrare (exemplul prezentat de
divizor la 12 comport o schem rigid cu care nu se poate realiza i alt factor de
divizare).
n fig.6.12 este prezentat schema unui numrtor cresctor cu trei ranguri
binare prevzut cu posibilitatea presetrii. Starea numrtorului este definit prin
ansamblul ieirilor Y0Y1Y2 (n convenia uzual, cu Y0 cel mai puin semnificativ
bit). Semnalele externe au urmtoarele funcii:
CK semnal de ceas activ pe frontul pozitiv;
E comand de activare a numrrii (activ n 0); dei convenia
uzual de notare a unui semnal cu o astfel de aciune presupune
supralinierea, pentru evitarea confuziilor n descrierea algebric a
funcionrii, s-a renunat la aceast manier de simbolizare;
PRE comand de activare a presetrii (activ n 0);
I0, I1, I2 semnale care definesc valoarea de presetare.

Fig.6.12. Numrtor cu prevzut cu posibilitatea de presetare


Se observ uor c numrtorul este de tip sincron. Spre deosebire de
schemele analizate anterior, n care s-au folosit simbolurile concentrate ale
automatelor de tip T, de aceast dat este figurat o schem detaliat n care sunt
evideniate celulele elementare formate din circuite flip-flop de tip D. Pentru
simplitate, s-a renunat la figurarea circuitelor prin care se detecteaz depirea.
Modul de asigurare a operaiei de presetare rezult imediat din citirea
schemei: dac PRE = 0 , se deschid porile AND prin care valorile A, B i C i
negatele lor se transmit intrrilor de setare i resetare ale bistabilelor D.
Inversoarele intercalate sunt necesare deoarece comenzile asincrone ale bistabilelor
D sunt active pe nivel cobort. Este evident c aceste comenzi sunt independente
de ceas i de semnalul de activare a numrrii.
Pentru justificarea modul de conexiune a celorlalte pori, s considerm
funciile logice conform crora se stabilesc valorile actuale la intrrile D ale
bistabilelor. Din urmrirea schemei rezult:
D0 = E Y0
D1 = (Y0 Y1 )E + EY1
D2 = (Y1Y0 Y2 )E + EY2
n care valorile Yi reprezint ieirile curente, stabilite la momentul frontului
precedent al ceasului. Se observ c valorile Yi sunt obinute prin inversarea
ieirilor negate ale bistabilelor D. n acest fel se degreveaz de sarcin ieirile Q i
se exploateaz efectul benefic al prezenei unui inversor n calea de transmisie a
semnalului ctre urmtoarea celul a numrtorului.
Pentru bitul cel mai puin semnificativ se regsete funcia specific unui
automat de tip T, deci nu apare nici o noutate fa de schemele anterioare. O logic
diferit, bazat pe funcia XOR, apare n cazul intrrilor D1 i D2. Primul termen al
sumei logice asigur (pentru E=0) funcionarea numrtorului conform regulii
cunoscute, iar al doilea (pentru E=1), menine valoarea Yi precedent, n cazul
situaiei de oprire a numrrii.
Pe baza acestor relaii, prin generalizare, se poate scrie funcia pentru
intrarea celulei de rang k a unui numrtor modulo 2n realizat prin extensia schemei
analizate:
Dk = (Yk 1Yk 2 . . . Y0 Yk )E + EYk , n 1 > k > 1
Pornind de la schema discutat, se poate imagina acum un numrtor
programabil, n sensul definit anterior. Un astfel de numrtor ar trebui ca, odat
atins valoarea maxim 11 . . . 1, la urmtorul front al ceasului s fie ncrcat forat
cu o valoare definit (s-a considerat cazul unui numrtor cresctor). Cu alte
cuvinte, semnalul care indic depirea ar trebui s activeze comanda de presetare,
astfel c dup starea 11 . . . 1 va urma starea In-1In-2 . . . I0 dictat de setul de valori
binare existente la intrrile de presetare. Principiul schemei este ilustrat n
fig.6.13,a.
Poarta NAND va activa comanda de presetare n intervalul de timp n care
OV=1 i CK=0, deci pe durata palierului cobort al ceasului imediat urmtor
frontului pozitiv care a condus la atingerea valorii maxime. O astfel de soluie
poate conduce ns la fenomene de hazard i la o funcionare necorespunztoare.

Fig.6.13. Numrtor programabil: principiul schemei (a) i eliminarea hazardului (b)

Problema este urmtoarea : declanarea procesului de ncrcare cu valoarea


de presetare atrage dup sine n mod inevitabil anularea semnalului de depire n
momentul n care un prim bistabil comut n zero, i implicit, dezactivarea
comenzii de presetare. n consecin, nu exist nici o garanie c toate bistabilele
componente vor reaciona corect, timpii de lucru fiind n mod inerent diferii de la
un bistabil la altul. Pentru a elimina efectul de anulare necontrolat a semnalului de
depire este necesar introducerea unui circuit suplimentar de memorare prin care
valoarea OV=1 s fie meninut pe toat durata palierului cobort al ceasului. Se
ajunge astfel la schema din fig.6.13,b, n care drept element de memorare s-a
folosit un latch elementar RS (cu comenzi active pe nivel cobort).

6.4. Noiuni de baz privind proiectarea automatelor finite

n 6.1 au fost introduse noiuni generale referitoare la structurile denumite


automate finite. n lumina acestor noiuni au fost apoi definite automatele
elementare de tip T i JK. Pe baza acestora se pot construi automate complexe cu
mai mult de dou stri, cazul tipic fiind cel al numrtoarelor de diverse tipuri.
n discutarea schemelor de numrtoare (6.3.1.1 - 6.3.1.5) s-a pus
accentul pe analiz, elemente de sintez aprnd numai accidental. Pentru a avea o
imagine mai complet a problemelor legate de automatele finite este util s trecem
acum, ntr-o manier sistematic, i la prezentarea unor aspecte referitoare la
sinteza acestor structuri, larg utilizate n sistemele digitale.
Metodele generale de sintez sunt caracterizate printr-un nalt grad de
abstractizare i pot face obiectul unor lucrri cu caracter monografic. Aplicarea
metodele generale de sintez (proiectare) a automatelor finite este de multe ori
laborioas i poate necesita apelarea la programe de calcul specializate. n cele ce
urmeaz se va ncerca o abordare ct mai simpl a subiectului, fr a intra n
detaliile care sunt apanajul specialitilor n domeniu.
Pentru elucidarea elementelor teoretice, n final se va considera o analiz
de caz, care poate constitui un model de rezolvare a altor probleme.

6.4.1. Modele generale de automate i formalizare matematic

n 6.1 s-a introdus schema bloc a unui sistem de ordinul doi i s-a
menionat faptul c, ntr-o definiie riguroas, reprezentarea din fig.6.2 corespunde
unui semiautomat. Un automat n sens larg are o structur diferit i constituie o
extensie a unui semiautomat. n mod practic, se disting dou modele generale de
automate, denumite automat Mealy i automat Moore. n fig.6.14 sunt ilustrate prin
scheme bloc aceste modele, relund, pentru comparaie, i schema unui
semiautomat.

Fig.6.14. Scheme generale de automate finite


Din examinarea acestor scheme se observ uor diferena dintre un
semiautomat i un automat: n cazul semiautomatului nu exist o ieire Y distinct
de starea Q (fapt constatat n cazul numrtoarelor, formate prin conexiunea unor
semiautomate). Pe de alt parte, se observ c automatul Mealy difer de automatul
Moore prin modul n care se obine ieirea Y. Cu precizarea c automatele figurate
sunt de tip imediat i c exist pentru ambele variante i structuri denumite cu
ntrziere, vom trece acum la un mod de definire abstract, care i dovedete
utilitatea n abordarea sistematic a problemelor de sintez.
Fr a afecta sensibil gradul de generalitate, ne vom limita la cazul
automatelor deterministe.
Un automat este definit prin cvintuplul:
A = ( X, Y, Q, Q, Y),
n care:
X este mulimea configuraiilor binare de intrare;
Y este mulimea configuraiilor binare de ieire;
Q este mulimea configuraiilor binare de stare;
Q : X x Q Q este funcia de tranziie a strii;
Y : este funcia de tranziie a ieirii.
Cele dou tipuri de automate difer prin modul de definire a funciei de
tranziie a ieirii. Astfel, dup cum rezult din schema bloc din fig.6.14:
Y : X x Q Y pentru automatul Mealy i
Y : Q Y pentru automatul Moore.
n esen, funcionarea unui automat poate fi descris n cuvinte n felul
urmtor.
pentru o intrare X dat i constant, la fiecare impuls de ceas are loc
modificarea strii Q conform funciei Q;
consecina modificrii strii Q const n modificarea ieirii Y, conform
funciei Y.
Se regsete caracterisitica menionat anterior i observat chiar i n
cazul automatelor elementare T i JK, referitoare la relativa autonomie a evoluiei
strii n raport cu intrarea.
O prim problem care trebuie precizat este aceea a strii iniiale stabilite
la punerea sub tensiune a sistemului. n general, nu exist nici o garanie c starea
instalat n mod natural la punerea sub tensiune aparine spaiului strilor definit
prin proiectare. De regul, pentru o iniializare definit a automatului se folosesc
semnale de intrare diferite de X.
n principiu, o aplicaie oarecare poate fi implementat sub forma oricruia
din cele dou tipuri de automate. De regul, adoptarea soluiei de tip Moore
conduce la un numr de stri mai mare dect cel necesar n cazul automatului
Mealy echivalent (dou automate sunt echivalente dac au o comportare la bornele
X i Y identic).
Se practic mai multe variante de definire a funciilor de tranziie Q i Y,
care, n ultim instan, concretizeaz o problem dat:
prin intermediul limbajului natural;
prin grafuri, cu noduri reprezentnd strile i arce reprezentnd
tranziiile;
prin diagrame care precizeaz formele de und ale semnalelor;
prin organigrame logice;
prin tabele de adevr.
Indiferent de varianta de descriere adoptat, n final, funciile de tranziie
trebuie definite prin tabele de adevr. n analiza de caz dezvoltat n paragraful
urmtor se va apela la o reprezentare combinat, bazat pe diagrame cu forme de
und i tabele de adevr.
Evident c formularea corect a unei probleme i respectiv, reprezentarea
adecvat a automatului sunt elemente indispensabile unei proiectri de succes. Pe
aceast baz se identific numrul total n de stri ale automatului. Rezult imediat
numrul m de bii ai vectorului de stare, respectiv, cea mai mic valoare m pentru
care este satisfcut condiia 2mn. De regul, apare situaia 2m>n, astfel c o serie
de stri sunt nefolosite (inaccesibile). Apariia unei stri definit ca inaccesibil
prin proiectare indic o funcionare incorect a automatului. Se pot concepe
sisteme cu autosupraveghere prin care se detecteaz instalarea unei stri
inaccesibile.
Pentru o problem dat codificarea elementelor mulimilor X i Y este strict
determinat de contextul sistemului n care automatul este inclus. Cu totul altfel
stau lucrurile n privina codificrii elementelor mulimii Q. Strile nu sunt
accesibile la borne i din acest motiv exist un mare grad de libertate n privina
codifcrii adoptate. Efectul unei anumite codificri se manifest direct n
complexitatea structurii care implementeaz automatul. Din pcate, nu exist un
algoritm general simplu prin care s poat fi stabilit codificarea optim, creia s-i
corespund o structur minimal a CLC-ului. Exist ns urmtoarele dou reguli
recomandabile:
Codificarea strilor conform principiului dependenei reduse fa de o
variabil se adopt o astfel de codificare nct un singur bit al codului
strii succesive unei stri date s depind de variabila aleas;
Codificarea strilor cu variaie minim - se adopt o astfel de
codificare a strilor nct codurile strilor succesive s difere printr-un
numr minim de bii, la limit, unul singur.
Chiar i pentru sisteme simple este ns dificil s se asigure ndeplinirea
acestor condiii (ndeplinirea lor simultan este rareori posibil). n funcie de
specificul problemei se opteaz pentru unul din obiective.
Dup cum rezult din schema bloc, un automat Mealy este susceptibil s
produc hazard la ieire n cazul comutrii nesincrone a variabilelor de intrare X.
ntr-adevr, pentru o stare oarecare Q, comutarea asincron a mai mult de dou
variabile de intrare se va traduce prin impulsuri parazite la nivelul ieirii Y,
deoarece aceasta este furnizat direct de un CLC. La un automat Moore acest
inconvenient este atenuat, deoarece ieirea Y rezult numai din prelucrarea
combinaional a variabilelor de stare, a cror comutare este sincronizat prin
semnalul de ceas. Totui, poate s apar hazard la nivelul variabilelor de stare.
n principiu, poblemele legate de hazard sunt rezolvabile prin adoptarea
unor structuri de automate cu ntrziere (fig.6.15). Aceste soluii implic mrirea
complexitii schemei de implementare i conduc la mrirea timpului de reacie al
automatului prin comparaie cu strucurile de tip imediat, ilustrate n fig.6.14 (cu un
tact al ceasului la un automat Mealy i cu dou tacturi la un automat Moore).

Fig.6.15. Automate cu ntrziere: a. Mealy; b. Moore

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