Documente Academic
Documente Profesional
Documente Cultură
1
Circuite combinaționale-circuite segvențiale. 3.2
Descrierea funcțiilor logice I-Tabelul de adevăr
Facultatea : MPT
Specializare: Electro
An III
3.1Circuite combinaționale
Circuitele alcătuite din porțile logice de bază, a căror operare poate fi descrisă
cu ajutorul algebrei Booleene, se numește circuite combinaționale logice,
deoarece în fiecare moment de timp starea logică a ieșirii depinde de modul în
care se combină nivelurile logice ale intrărilor în acel moment de timp.
Problema esenţială care trebuie rezolvată cu ajutorul circuitelor logice
combinaţionale este implementarea unor funcţii logice cu ajutorul unui număr
minim de porţi logice. Pentru atingerea acestui scop, funcţia logică trebuie
adusă la o formă cât mai simplă care să conţină un număr minim de termeni.
Acest proces se numeşte minimizarea funcţiei logice.
Despre funcţiilor logice aduse la o formă minimizată se mai spune că sunt
scrise sub formă canonică. Există două forme canonice utile în proiectarea
circuitelor logice combinaţionale, suma de produse sau produsul de sume,
prima dintre ele fiind cea mai folosită.
Minimizarea funcţiilor logice până la una din formele canonice se
poate face în două moduri:
• folosind teoremele algebrei Booleene
• folosind tehnica diagramelor
În cazul scrierii funcţiei sub formă de sumă de produse, ea este alcătuită din
doi sau mai mulţi termeni care includ funcţia ŞI, după care aceştia sunt uniţi
între ei cu ajutorul funcţiei SAU. Termenii ŞI ai sumei trebuie să respecte
următoarea regulă:
Din cele prezentate până acum se poate observa că scrierea unei funcţii logice
sub formă de sumă de produse facilitează proiectarea circuitului care să o
realizeze folosind porţile logice elementare ŞI, SAU şi INVERSORUL. Din
punct de vedere teoretic totul pare a fi în ordine. Din
punct de vedere practic însă, apare un mic inconvenient. Majoritatea
circuitelor integrate care conţin porţi logice au la bază porţile logice ŞI-NU şi
SAU-NU cu ajutorul cărora se pot realiza toate celelalte funcţii logice
elementare. Am arătat acest lucru în Capitolul 12. Dacă în procesul de
implementare a funcţiilor logice se vor folosi astfel de circuite integrate, este
evident necesar ca schema logică ce realizează funcţia minimizată să fie
realizată numai cu porţi ŞI-NU sau cu porţi SAU-NU.
Tabelul 13.3
B A xAB Termeni ŞI
0 0 0
0 1 1 AB
1 0 1 AB
1 1 0
B A xAB Termeni ŞI
0 0 1 AB
0 1 0
1 0 0
1 1 1 AB
x= AB+ AB
N = log2(numărul de intrări)
Tabelul 13.5
A7 A6 A5 A4 A3 A 2 A1 A0 O2 O1 O0
0 0 0 0 0 0 0 1 0 0 0
0 0 0 0 0 0 1 0 0 0 1
0 0 0 0 0 1 0 0 0 1 0
0 0 0 0 1 0 0 0 0 1 1
0 0 0 1 0 0 0 0 1 0 0
0 0 1 0 0 0 0 0 1 0 1
0 1 0 0 0 0 0 0 1 1 0
1 0 0 0 0 0 0 0 1 1 1
2.3 Multiplexoare
iesi
re
Intrări de selecție
2.4 Demultiplexoare
intr
are
ON-1
intrari de selectie
Fig.13.13
Proiectarea unui demultiplexor se poate face stabilind funcţia de
transfer pe baza tabelului de adevăr. Astfel, dacă avem o gară cu opt
linii, multiplexorul care distribuie trenurile va trebui să aibă trei intrări
de selecţie (log28 = 3). Variabilele de intrare în demultiplexor vor fi
cele de la intrarea de date şi intrările de selecţie. Punând condiţia ca
primele opt date de intrare să fie distribuite în ordine la cele opt ieşiri,
se poate construi următorul tabel de adevăr:
Tabelul 13.8
S2 S1 So Funcţia de
O7 O6 O5 O4 O3 O2 O1 O0
transfer
0 0 0 0 0 0 0 0 0 0 I O0=I S2 S1 So
0 0 1 0 0 0 0 0 0 I 0 O1=I S2 S1So
0 1 0 0 0 0 0 0 I 0 0 O2=I S2 S1 So
0 1 1 0 0 0 0 I 0 0 0 O3=I S2 S1So
1 0 0 0 0 0 I 0 0 0 0 O4=I S2 S1 So
1 0 1 0 0 I 0 0 0 0 0 O5=I S2 S1S o
1 1 0 0 I 0 0 0 0 0 0 O6=I S2 S1 So
1 1 1 I 0 0 0 0 0 0 0 O7=I S2 S1So
comple
mentar
ă
Fig 14.1
0
1
1
2
1
2
0
1
1
a b fig 14.2
Cunoscând faptul că ieşirea unui inversor este întotdeauna complementul logic al
intrării sale, după o examinare sumară a circuitului se poate observa că circuitul are
două stări stabile (fig.14.2a, şi b). Inconvenientul major al acestui circuit bistabil
este acela că starea în care el se va afla la un moment dat nu poate fi influenţată din
exterior. La conectarea tensiunii de alimentare circuitul va trece în una dintre cele
două stări stabile, în funcţie de care dintre cele două inversoare va reacţiona mai
rapid la acest stimul şi va rămâne în aceasta atâta timp cât este alimentat.
Tabelul 14.1
S R Qn+1
0 0 Qn S Q
1 0 1
0 1 0 Q
R
1 1 ?
Fig.14.6
intrarea S, ieşirea normală va fi la nivel logic 1 indiferent de starea sa
iniţială. De aceea intrarea S se mai numeşte intrare de înscriere a unei
informaţii. Dacă impulsul de nivel logic 1 se aplică la intrarea R, ieşirea
normală va fi la nivel logic 0 indiferent de starea sa iniţială. Intrarea R se
mai numeşte intrare de ştergere.
În tabelul 14.1 apare şi situaţia în care ambele intrări sunt aduse simultan la
nivel logic 1. În intervalul de timp în care ele se află la nivel logic 1 ambele
ieşiri vor fi la nivel logic 0. Acest lucru rezultă din analiza logică a
circuitului ca un circuit combinaţional în stare staţionară. Ce se întâmplă însă
după ce intrările revin în starea de nivel logic 0? Cele două porţi nu
reacţionează simultan la un “stimul” extern. Una dintre ele va reveni mai
rapid decât cealaltă la nivel logic 0, lăsând celeilalte rolul de poartă de
decizie. Dar, cum nu avem de unde şti care dintre cele două porţi este mai
rapidă, în circuit se poate întâmpla orice. După revenirea la nivel logic 0 a
celor două intrări, ieşirile vor fi în starea 01 sau 10, dar fără a putea prezice
în care. De aceea, se spune despre această situaţie că este una nedorită,
tocmai pentru că are un efect imprevizibil. Vom vedea mai târziu cum o
putem înlătura.
Tabelul 14.3
CLK J K Qn+1
J Q
1 0 0 Qn
1 1 0 1 CLK K
1 0 1 0 Q
1 1 1 Qn
Fig.14.11
1.5 Circuitul basculant bistabil D( Data )
Prin adăugarea unui inversor la intrarea K a unui bistabil JK şi conectarea
intrării lui la intrarea J, se obţine circuitul basculant bistabil D. În fig.14.12
sunt prezentate modalitatea de obţinere a circuitului precum şi simbolul său,
iar tabelul 14.4 sintetizează funcţionarea lui.
D D Q
J Q
CLK
Q CLK Q
K
Fig.14.12
Tabelul 14.4
Fig.14.14
Se poate observa că dacă ambele intrări sincronizate sunt la nivel logic 1, pe
frontul activ al semnalului de tact bistabilul "trigger" va bascula dintr-o stare
în alta.
În fig.14.15 sunt prezentate formele de undă ale semnalelor de la intrările şi
ieşirile unui circuit basculant bistabil JK în situaţia în care intrările
sincronizate sunt simultan la nivel logic 1.
CLK
x 0 1 Q=1
x 1 0 Q=0
DCQ CLEAR nu se
x 0 0 foloseste
Fig.14.16
În stare normală intrările asincrone sunt menţinute la nivelul logic 1
neafectând funcţionarea sincronă a CBB. Aducerea intrării asincrone DC
SET la nivel logic 0 va aduce ieşirea CBB în starea Q = 1, Q = 0, deci
informaţia este înscrisă la ieşirea normală. Activarea intrării DC CLEAR are
ca efect ştergerea informaţiei (dacă ea există) de la ieşirea normală. Trebuie
menţionat faptul că intrările asincrone răspund şi la semnale continue de
tensiune (nu numai la impulsuri), astfel încât un CBB poate fi menţinut într-
o anumită stare un interval de timp oricât de lung.
2. Registrul de deplasare
Registrul de deplasare poate fi folosit la stocarea de biţi informaţionali. Biţii
informaţionali pot fi transferaţi într-un alt registru identic cu primul.
Transferul poate fi serial (bit după bit) sau paralel (toţi biţii deodată). În
cazul transferului paralel, circuitele basculante din componenţa registrului
trebuie să aibă intrări asincrone.
Registrul de deplasare de bază este alcătuit dintr-un număr de CBB
conectate în cascadă (serie), ieşirea fiecăruia fiind conectată la intrarea
următorului. El are calitatea de a memora un număr de biţi informaţionali
egal cu numărul de CBB.
3. Numărătoare
Q Q
În toate cele trei cazuri au fost prezentate toate combinaţiile posibileale nivelurilor
logice de la intrare. Numărul acestora este funcţie de numărul de intrări N, şi el
este 2N. Valoarea variabilei de ieşire a fost marcată cu "?" în toate coloanele x
deoarece ea depinde de tipul circuitului logic folosit.
Acest circuit are trei intrări A, B şi C şi o singură ieşire x. Expresia lui x poate fi
găsită foarte uşor folosind expresiile Booleene pentru fiecare poartă în parte,
pornind de la intrare către ieşire. Astfel, expresia pentru ieşirea porţii ŞI este A.B.
Ieşirea porţii ŞI este conectată la una din intrările porţii SAU, la cealaltă fiind
aplicată variabila C. Expresia variabilei de ieşire a porţii SAU este A.B + C.
Deoarece ieşirea porţii SAU este conectată la intrarea inversorului, variabila de
ieşire va avea expresia: x = AB + C .
În procesul de evaluare a nivelului logic al ieşirii unui circuit alcătuit din mai multe
porţi logice se aplică următoarele reguli fundamentale:
1. http://www.phys.ubbcluj.ro/~sorin.anghel/teaching/Electronics/capitole%20electronica
%20pdf/Algebra%20Booleana.pdf
2. https://mail.uaic.ro/~ftufescu/LUCRAREA%20NR.14-Circuite%20logice.pdf