Sunteți pe pagina 1din 32

44

4. CIRCUITE LOGICE COMBINAIONALE (CLC)



4.1. ANALIZA I SINTEZA CIRCUITELOR LOGICE COMBINAIONALE

Dup cum s-a menionat, circuitele logice combinaionale sunt mulimi de componenete electronice
interconectate, capabile s realizeze operaii logice i caracterizate prin faptul c setul mrimilor de ieire
este complet determinat, n orice moment de timp, de combinaia curent a mrimilor de intrare.
Reprezentarea intrare/ieire a unui CLC este prezentat n Fig. 4.1, unde x
1
, x
2
, ... ,x
n
sunt intrrile, iar
y
1
, y
2
, ... ,y
m
sunt ieirile. Din punct de vedere sistemic, funcia logic este o funcie de transfer.









Din grupa CLC fac parte porile logice elementare prezentate anterior: NU, I, SAU, I NU, SAU
NU, SAU EXCLUSIV. Alte exemple de pori logice elementare sunt INHIBARE (Fig. 4.2) i IMPLICARE
(Fig. 4.3). n afar de structurile elementare, n proiectare intereseaz i alte structuri de circuite logice
combinaionale dedicate, de complexitate mai mare: decodificatoare, codificatoare, convertoare de cod,
multiplexoare, demultiplexoare, comparatoare numerice, generatoare i detectoare de paritate, sumatoare,
uniti aritmetice i logice etc. Aceste structuri pot fi folosite ca module de baz n sinteza altor circuite
logice.






Fig. 4.2. Circuitul logic INHIBARE.







Fig. 4.3. Circuitul logic IMPLICARE.

Dat fiind structura fizic (schema circuitului), analiza unui CLC const, n principal, n deducerea
funciei de transfer. Pe baza acestei funcii de transfer, cunoscnd semnalele logice ale intrrilor, se pot
determina semnalele logice de ieire.
Proiectarea (sinteza) unui CLC este operaia invers analizei i const n determinarea structurii fizice
(schemei circuitului), cunoscnd funcia de transfer, dedus, de cele mai multe ori, din intrrile i ieirile
corespunztoare. n proiectarea CLC pot fi folosite mai multe metode: metode simple, metode complexe,
incluznd metodele de minimizare a funciilor logice obinute, i metode bazate pe module. Astfel, metoda
de sintez simpl pleac direct de la funcia de transfer, utiliznd porile logice elementare corespunztoare
operaiilor logice din funcia de transfer. n schimb, metoda de sintez complex presupune parcurgerea
urmtoarelor etape:
a) Formularea problemei prin definirea variabilelor de intrare i de ieire; definirea restriciilor.
b) Alctuirea tabelului de adevr.

CLC
x
1
x
2

x
n
y
1
y
2

y
n
Fig. 4.1. Reprezentarea intrare/ieire a unui CLC
45
c) Obinere funciei logice n form minimizat.
d) Implementarea circuitului logic (corespunztor sintezei simple).

Exemplul 4.1. Sinteza simpl

S se implementeze un CLC corespunztor funciei de transfer:

f(x
0
,x
1
,x
2
,x
3
) = ((x
0
x
1
+x
2
)x
3
)

Circuitul logic corespunztor funciei de mai sus este prezentat n Fig.4.4.









Fig. 4.4. Schema circuitului logic din exemplul 4.1.

Exemplul 4.2. Sinteza complex

S se implementeze un CLC care s primeasc la intrare un numr natural cuprins ntre 0 i 15
inclusiv, iar ieirea s fie 1 dac numrul este n intervalul [0,15] i este divizibil cu 2 sau 3, i s fie 0 dac
este n intervalul [0,15] i nu este divizibil cu 2 sau 3. Rezolvarea acestei probleme, prin determinarea formei
disjunctive minimale, s-a fcut n Exemplul 2.11, utiliznd algoritmul Quine McCluskey.

Structura fizic a unui CLC simplu depinde de forma de expresie a funciei logice i de operatorii
logici de baz utilizai. Astfel, cele mai folosite forme fizice de implementare sunt:
Forma disjunctiv (NU I SAU);
Forma conjuctiv (NU SAU I);
Forma NAND;
Forma NOR.
Pentru implementarea unor CLC mari, complexe, cu multe intrri i ieiri, aceast proiectare bazat pe
pori logice elementare nu mai este posibil sau nu mai este convenabil. n acest caz se folosesc combinaii
de circuite modulare standard, cu un grad sporit de integrare (de regul, MSI i LSI) Fig. 4.5. Aceste
module logice pot avea, pe lng intrrile propriuzise de date (x
1
,..., x
k
) i intrri de comand (c
1
,..., c
i
).









Fig.4.5. Modul CLC cu intrri de comand.

Evident, o funcie logic are mai multe soluii de implementare. Alegerea unei soluii depinde i de
anumite criterii auxiliare, ce nu apar n etapele de proiectare specificate, ca de exemplu: ncadrarea n
familiile de circuite integrate existente, timpii de propagare a fronturilor, cum ar fi t
pLH
(timpul de propagare
la comutarea ieirii din 0 n 1) sau t
pHL
(timpul de propagare la comutarea ieirii din 1 n 0), fanout ul
(numrul maxim de intrri de pori logice pe care le poate comanda o ieire de poart logic), gradul de
complexitate (considerat, de regul, ca fiind numrul total de intrri de poart din circuit), adncimea sau
nivelul de profunzime (numrul maxim de niveluri de pori logice pe care le poate parcurge semnalul de la
intrare la ieire i care este proporional cu timpul de propagare prin poart, fanin ul etc.

MODUL
CLC
x
1



x
k

c
1
c
i
y
1


y
m

46
4.2. STRUCTURI CLC (MODULE) FOLOSITE N PROIECTARE

Modulele CLC folosite n proiectare sunt mprite n dou categorii, n funcie de destinaia
circuitelor complexe proiectate: module CLC pentru sinteza funciilor logice (codificatoare, decodificatoare,
multiplexoare, demultiplexoare etc.) i module CLC pentru sinteza funciilor aritmetice (sumatoare, uniti
logice aritmetice etc.).

4.2.1. Decodificatoare

Decodificatoarele sunt CLC complexe cu mai multe intrri (I
0
,I
1
,...I
n-1
) i mai multe ieiri (O
0
,O
1
,...,
O
m-1
) care transform biunivoc cuvintele dintr-un anume cod la intrare n cuvinte din alt cod la ieire (sunt de
fapt convertoare de cod). Pentru un decodificator, codul de la intrare are mai puini bii dect codul de la
ieire (m>n). n afar de intrrile de date (cuvintele de cod de intrare), decodificatoarele mai au i intrri de
activare: E
0
,...,E
k-1
, m>k (Fig. 4.6).
Decodificatoarele se folosesc n diverse aplicaii cum ar fi adresarea memoriilor, afiarea datelor
numerice etc. De obicei, decodificatoarele sunt CI de tip MSI .











Fig. 4.6. Structura unui decodificator.

Exemplul 4.3

Decodificatorul BCD 7 segmente 74x49, reprezentat n Fig. 4.7 i tabelul 4.1 are patru intrri de date
(A,B,C,D), ce pot reprezenta o cifr zecimal codificat binar, i apte ieiri (a,b,c,d,e,f,g), pentru comanda
LED-urilor dispozitivului de afiare. BI reprezint intrarea de blocare (activ pe 0).





Fig. 4.7. Decodificator BCD 7 segmente i dispozitivul de afiare cu 7 segmente.

Dispozitivul de afiare considerat are apte segmente formate din LED-uri i este conectat doar la V
cc

(nu are legtur direct la mas). Un LED este aprins dac pe intrarea corespunztoare (a, b,,f, g) apare 0
logic. Pentru fiecare ieire se poate extrage funcia logic folosit fr a ine seama de intrarea de blocare BI
(blocheaz circuitul cnd este 0). Astfel, pentru funcia g se obine diagrama Karnaugh din Fig. 4.8. Rezult
forma minimal a lui g:
DECODIFICA-
TOR
I
0



I
n-1

E
0
E
k-1
O
0


O
m-1

BI
47

g = BCD + ABC

Analog, se poate descrie convertorul BCD zecimal (binar, 1 din 10).

Tabelul 4.1.Tabelul de adevr pentru decodificatorul 74x49

BI D C B A a b c d e f g Nr.
afiat
0 X X X X 1 1 1 1 1 1 1
1 0 0 0 0 0 0 0 0 0 0 1 0
1 0 0 0 1 1 0 0 1 1 1 1 1
1 0 0 1 0 0 0 1 0 0 1 0 2
1 0 0 1 1 0 0 0 0 1 1 0 3
1 0 1 0 0 1 0 0 1 1 0 0 4
1 0 1 0 1 0 1 0 0 1 0 0 5
1 0 1 1 0 1 1 0 0 0 0 0 6
1 0 1 1 1 0 0 0 1 1 1 1 7
1 1 0 0 0 0 0 0 0 0 0 0 8
1 1 0 0 1 0 0 0 1 1 0 0 9











Fig.4.8. Diagrama Karnaugh pentru g.

Exemplul 4.4

Decodificatorul de adrese 74x138, cu 3 intrri i 8 ieiri, este reprezentat n Fig. 4.9 i tabelul 4.2.

Tabelul 4.2. Tabelul de adevr pentru decodificatorul de adrese 3: 8.

Intrri Ieiri
G
1
G
2A
G
2B
C B A y
7
y
6
y
5
y
4
y
3
y
2
y
1
y
0
0 x x x x x 1 1 1 1 1 1 1 1
x 1 x x x x 1 1 1 1 1 1 1 1
BA

DC


00 01 11 10
1 1
1


1





00
01
11
10
48
x x 1 x x x 1 1 1 1 1 1 1 1
1 0 0 0 0 0 1 1 1 1 1 1 1 0
1 0 0 0 0 1 1 1 1 1 1 1 0 1
1 0 0 0 1 0 1 1 1 1 1 0 1 1
1 0 0 0 1 1 1 1 1 1 0 1 1 1
1 0 0 1 0 0 1 1 1 0 1 1 1 1
1 0 0 1 0 1 1 1 0 1 1 1 1 1
1 0 0 1 1 0 1 0 1 1 1 1 1 1
1 0 0 1 1 1 0 1 1 1 1 1 1 1





Fig. 4.9. Decodificatorul de adrese 3: 8.

Evident, dac pe intrrile de activare (G
1
G
2A
G
2B
)

se gsete cuvntul (1 0 0), o singur linie de ieire
y
j
este activ (pe 0) pentru un cuvnt de intrare (CBA)
j
. Rezult imediat funciile logice pentru ieiri. De
exemplu, pentru y
0
se obine expresia urmtoare :

A B C y + + =
0
,

de unde:
A B C y =
0


4.2.2. Convertoare de cod

Convertoarele de cod binar au acelai numr de intrri i de ieiri.

Exemplul 4.5

Convertorul din cod binar natural n cod Gray pentru patru bii este prezentat n Fig. 4.10, iar
implementarea lui cu pori elementare, n Fig. 4.11.
G
1
y
0
G
2A

y
1
G
2B
y
2


y
3
y
4
A y
5

B
C y
6


y
7
49

Fig. 4.10. Convertorul cod BN cod Gray.

innd seama de modul de obinere a codului Gray din codul binar, prezentat n Cap.1, funciile
logice ce caracterizeaz ieirile y
0
, y
1
, y
2
, y
3
sunt urmtoarele:


1 0 0
x x y =

2 1 1
x x y =

3 2 2
x x y =

3 3
x y =














Fig. 4.11. Implementarea convertorului Cod BN-Cod Gray.

Pentru conversia invers, cod Gray - cod binar natural, schema convertorului este prezentat n Fig
4.12, iar implementarea lui cu pori elementare, n Fig. 4.13.

Fig. 4.12. Convertorul Cod Gray Cod BN.









50

















Fig. 4.13.Implementarea convertorului Cod Gray-Cod BN.

Funciile logice ce caracterizeaz ieirile y
0
, y
1
, y
2
, y
3
sunt urmtoarele:

3 2 1 0 0
x x x x y =
3 2 1 1
x x x y =
3 2 2
x x y =
3 3
x y =

4.2.3. Codificatoare

Codificatoarele sunt circuite logice combinaionale asemntoare decodificatoarelor, dar avnd
funcionarea invers, astfel nct, la ieire ofer un cod binar corespunztor combinaiei de la intrare
(Fig.4.14). Cuvntul de la intrare are mai muli bii dect codul de la ieire. n afar de

intrrile pentru datele
de codificat, I
0
,...,I
n-1
, i de ieirile pentru datele codificate, O
0
,...,O
m-1
, codificatorul mai prezint comenzi de
activare a intrrilor E
0
,...,E
k-1
, i, respectiv, de validare a ieirilor, Y
0
,...,Y
p-1
. De regul, n > m, n > k, n > p, n
= 2
m
.

















Fig. 4.14. Schema general a unui codificator.

De exemplu, un codificator de adres simplu, cu opt intrri i trei ieiri, este prezentat n Fig. 4.15 i
tabelul 4.3. Codul de intrare este un cod binar, 1 din 8, iar codul de ieire este cel binar natural.


CODIFICATOR
O
0
O
m -1
I
0
I
n-1
Y
0
Y
p-1
E
0
E
k-1
51

















Fig. 4.15. Codificator de adres, simplu.


Tabelul 4.3. Tabelul de adevr al codificatorului 8:3.

Intrri Ieiri
I
7
I
6
I
5
I
4
I
3
I
2
I
1
I
0
O
2
O
1
O
0
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

innd seama de restricia ca una i numai una dintre intrri s fie 1, din tabela de adevr, rezult
expresii simple pentru funciile logice ale ieirilor:


4 5 6 7 2
I I I I O + + + =
2 3 6 7 1
I I I I O + + + =
1 3 5 7 0
I I I I O + + + =

Implementarea codificatorului 8:3 cu ajutorul porilor elementare este foarte simpl i este prezentat
n Fig. 4.16.
Pentru a preveni funcionarea defectuoas a codificatorului, n cazul activrii a dou sau mai multe
intrri simultan, s-au realizat codificatoare cu prioriti. De regul, prioritatea cea mai mare o are intrarea cu
numrul de ordine cel mai mare (I
7
), iar prioritatea cea mai mic o are intrarea I
0
. Deoarece este posibil ca
nicio intrare s nu fie egal cu 1, s-a considerat ieirea suplimentar OS, care indic acest stare. Tabela de
adevr pentru un codificator cu prioriti este prezentat n Tabelul 4.4 (prin x s-a marcat starea indiferent).


I
0
I
1
I
7
O
0
O
1
O
2
C
O
D
I
F
I
C
A
T
O
R
8:3
52


















Fig. 4.16. Implementarea codificatorului de adrese 8 :3 cu ajutorul funciilor logice elementare

Tabelul 4.4. Tabela de adevr pentru codificatorul cu prioriti

Intrri Ieiri
I
7
I
6
I
5
I
4
I
3
I
2
I
1
I
0
O
2
O
1
O
0
OS
0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 1 0 0 0 1
0 0 0 0 0 0 1 x 0 0 1 1
0 0 0 0 0 1 x x 0 1 0 1
0 0 0 0 1 x x x 0 1 1 1
0 0 0 1 x x x x 1 0 0 1
0 0 1 x x x x x 1 0 1 1
0 1 x x x x x x 1 1 0 1
1 x x x x x x x 1 1 1 1

Ieirile vor avea funciile logice urmtoare:

0
2
= I
7
+I
7
I
6
+I
7
I
6


I
5
+I
7
I
6
I
5
I
4
,

0
1
= I
7
+I
7
I
6
+I
7
I
6


I
5
I
4
I
3
+ I
7
I
6


I
5
I
4
I
3
I
2
,

0
0
= I
7
+ I
7
I
6


I
5
+I
7
I
6


I
5
I
4
I
3
+ I
7
I
6


I
5
I
4
I
3
I
2
I
1
,

OS = I
7
+I
6
+I
5
+I
4
+I
3
+I
2
+I
1
+I
0


Un exemplu de codificator 8:3 cu prioriti este 74x148 la care att intrrile ct i ieirile sunt active
pe 0. n acest caz, tabelul de adevr se modific n mod corespunztor, nlocuindu-se 0 cu 1 i 1 cu 0.



53
4.2.4 Multiplexoare

Multiplexorul (MUX) este un dispozitiv cu mai multe canale de intrare i un canal de ieire, de acelai
tip, care, la un moment dat, comut la ieire unul dintre canalele de intrare, selectat potrivit unei legi sau unui
cod de selecie. Datele de pe canalele de intrare i de ieire pot fi analogice (multiplexoare analogice) sau
numerice (multiplexoare numerice). n continuare, prin multiplexoare vom denumi multiplexoarele
numerice. Vom considera n canale de intrare sau de date (D
0
,...,D
n-1
), un canal de ieire (Y), fiecare canal
avnd cte m bii, un canal de selecie (S) avnd s bii i un canal de activare (E) de un bit (Fig. 4.17).
De regul, n = 2
s
, iar notaia semnific legtura pe mai multe fire (legaturi paralele).
Se poate considera c, dac adresele canalelor sunt codificate n cod binar natural, tabela de adevr a
funciei de selectare S conine n = 2
s
mintermeni 1 ,..., 1 , 0 , = n i m
i
, dintre care, la un moment dat, doar
unul ia valoare logic 1.
Presupunnd c egalitatea E = 1 are semnificaia de multiplexor activat i notnd cu
i
j
b i
j
y , j =
0,1,.., m-1, biii canalului de intrare
i
D , respectiv biii canalului de ieire y, se pot scrie urmtoarele funcii
logice pentru ieirea multiplexorului:

=
= =
1
0
1 ,..., 1 , 0 ,
n
i
i
j i j
m j b m E y (4.1)

Pentru utilizarea modular, exist multiplexoare standard n capsule dual in line de 16 pini, avnd
diverse configuraii: opt intrri de un bit (74x151), patru intrri de doi bii (74x153) i dou intrri de patru
bii (74x157). De exemplu, multiplexorul 74x151 are simbolul prezentat n Fig. 4.18, structura n Fig. 4.19,
iar tabela de adevr in tabelul 4.5. Se observ c, n aceast schem, intrarea E este activ pe 0, relaia (4.1)
devenind (4.2):

=
=
7
0 i
i i
D m E y (4.2)















Fig. 4.17. Schema bloc a unui multiplexor.



E
D
0

D
1

.
.
.

D
n-1
S
Y
54


Fig. 4.18. Simbolul multiplexorului 74x151.



Tabelul 4.5
E C B A y
y

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


Exist aplicaii care cer, fie un numr mai mare de surse de intrare, fie un numr mai mare de bii, fie
ambele dezvoltri . Aceste cerine se pot ndeplini utiliznd o structur cu mai multe multiplexoare i,
eventual, un decodificator.
De exemplu, o structur de multiplexor cu opt intrri de cte patru bii, se poate realiza fie cu patru
multiplexoare de tip 74x151, fie cu patru multiplexoare de tip 74x157, fie cu patru multiplexoare de tip
74x153. n primul caz, realizarea nu impune un decodificator pentru selectarea multiplexoarelor, ele
funcionnd n paralel, pe fiecare bit. n celelalte dou cazuri se impune utilizarea unor decodificatoare
pentru selectarea multiplexoarelor. De regul, creterea numrului de canale impune utilizarea
decodificatoarelor pentru selectarea multiplexoarelor intermediare.

55

Fig. 4.19. Structura multiplexorului 74x151.


































Fig. 4.20. Implementarea unui multiplexor de un bit cu 32 de intrari.


56
n Fig. 4.20 este prezentat realizarea unui multiplexor de un bit cu 32 de intrri utiliznd patru
multiplexoare de un bit cu opt intrri (74x151) i un decodificator 2:4 (1/2 din 74x139).
Se observ c biii de adres care depesc capacitatea de adresare (A,B,C) a multiplexoarelor, se
repartizeaz pe adresarea decodificatorului (
4 3
A A ). Astfel, partea inferioar (
0 1 2
A A A ) a cuvntului de
adres se distribuie multiplexoarelor (n paralel), iar partea superioar (
4 3
A A ) se repartizeaz
decodificatorului. innd seama de ieirile negate ale multiplexoarelor, poarta NAND de la ieire realizeaz
de fapt un SAU ntre ieirile normale ale multiplexoarelor (care nu pot fi 1 simultan, datorit condiiilor de
adresare).































Fig. 4.21. Implementarea unei funcii logice cu ajutorul multiplexoarelor.

Cu ajutorul multiplexoarelor de un bit se pot implementa direct funciile logice, utiliznd mintermenii.
n acest scop, variabilele funciei se asociaz intrrilor de adrese ale multiplexorului, iar pe intrrile de date
(canale) ale multiplexorului se pun valorile logice asociate mintermenilor din tabelul de adrese.
Intrrile de date corespunzatoare mintermenilor de valoare 0 (care nu apar n FCD) se pun la mas, iar
intrrile de date corespunzatoare mintermenilor de valoare 1 (care apar in FCD) se pun, printr-o rezisten, la
cc
V . Astfel, n Fig. 4.21 este prezentat implementarea funciei logice (4.3) de patru variabile cu ajutorul a
dou multiplexoare cu opt intrri.

1 2 3
'
1
'
2
'
3
'
1
'
2 3
'
0 0 1 2 3
) , , , ( x x x x x x x x x x x x x x f + + + = (4.3)

Aceasta este forma minimal a funciei din exemplul 2.11.
Considernd multiplexorul activat, relaia (4.1) se poate scrie astfel:

=
=
1
0
n
i
i i
D m y , (4.4)

57
unde
i
m reprezint mintermenul cu numrul de ordine i din spaiul de dimensiune s al unei funcii logice,
reprezentat n tabelul de adevr prin valorile mintermenilor
i
D , 1 2 ,...., 1 , 0 =
s
i .
Dac numrul de variabile ale funciei logice este mai mare dect numrul intrrilor de adrese ale
multiplexorului, atunci se folosesc structuri de multiplexoare extinse, comandate de decodificatoare.
Variabilele cele mai puin semnificative se pun la intrrile de adrese ale multiplexoarelor, iar variabilele cele
mai semnificative se pun la intrrile de adrese ale decodificatoarelor.
Dac se noteaz cu Y
1
ieirea lui MUX
1
i cu Y
2
ieirea lui MUX
2
, se observ c:

f = Y
1
+ Y
2


Din acest punct de vedere, circuitul de multiplexare poate fi privit ca un circuit universal.
Se poate reduce complexitatea schemei dac se utilizeaz funcii logice pariale pentru varibilele cele
mai semnificative. Numrul de funcii logice pariale va corespunde cu numrul de intrri de date ale
multiplexorului de un bit.
Funcia logic de mai sus, pentru care s-a gsit forma logic minimal (4.3), se poate implementa i cu
un singur MUX de un bit cu opt intrri prin partiionarea spaiului de definiie S
4
n dou subspaii, unul de
dimensiune 3 (S
3
) i unul de dimensiune 1 (S
1
). Astfel, n loc de:

=
=
15
0 i
i i
m D f ,

se poate scrie:

=
=
7
0
3
) (
i
i i
x g D f ,

unde funciile logice pariale g
i
, i = 0,1,...,7, se determin nlocuind toate valorile posibile ale variabilelor
logice x
0
,x
1
,x
2
n forma minimal. Aceste valori se pot stabili i din tabela de adevr, urmrind, pentru fiecare
combinaie de cod a variabilelor x
0
,x
1
,x
2
, comportarea funciei f fa de schimbarea lui x
3
.
Pentru exemplul dat, expresiile funciilor logice pariale sunt urmtoarele:

g
0
(x
3
) = f(x
3
,0,0,0) = 1,

g
1
(x
3
) = f(x
3
,0,0,1) = x
3
,

g
2
(x
3
) = f(x
3
,0,1,0) = 1,

g
3
(x
3
) = f(x
3
,0,1,1) = x
3
,

g
4
(x
3
) = f(x
3
,1,0,0) = 1,

g
5
(x
3
) = f(x
3
,1,0,1) = 0,

g
6
(x
3
) = f(x
3
,1,1,0) = 1,

g
7
(x
3
) = f(x
3
,1,1,1) = x
3


Astfel:

x
0
= A, x
1
= B, x
2
= C, D
0
= D
2
= D
4
= D
6
= 1, D
5
= 0, D
3
= x
3
, D
1
= D
7
= x
3



58

Fig. 4.22. Implementarea unei funcii logice prin partiionarea spaiului de intrare.

Pentru variabilele care nu se aplic direct pe adrese, se utilizeaz pori logice care realizeaz, unde este
cazul, restriciile g
j
, dependente de aceste variabile. Implementarea funciei logice f prin partiionarea
spaiului variabilelor de intrare, cu ajutorul unui singur multiplexor, este dat n Fig. 4.22.

4.2.5. Demultiplexoare

Demultiplexorul (DMUX), indeplinete o funcie invers fa de cea a multiplexorului, adic distribuie
datele de pe canalul de intrare pe unul dintre canalele de ieire, selectat ntr-un anume mod.
Schema unui demultiplexor cu n canale de ieire i s bii pentru adresare (de regul n = 2
s
) este
prezentat n Fig. 4.23. Att canalul de intrare ct i canalul de ieire pot fi pe unul sau mai multi bii (m). n
Fig. 4.24 este prezentat schema unui demultiplexor cu opt canale de un bit.


















Fig. 4.23. Schema bloc a unui demultiplexor.


Pentru realizarea demultiplexoarelor pe un bit se pot utiliza decodificatoare. Astfel, n Fig. 4.25 este
prezentat un demultiplexor cu opt canale de ieire realizat cu un decodificator (de adrese) cu trei intrri i opt
ieiri, 74x138. n acest caz, ieirile apar negate, iar D G
1
.





59



















Fig. 4.24. Schema bloc a unui demultiplexor de opt canale cu un bit.














Fig. 4.25. Schema bloc a unui demultiplexor de opt canale cu un bit realizat cu un decodificator 74x138.

O pereche MUX-DMUX poate fi utilizat pentru a gestiona transmiterea pe o magistral de date de la
mai multe surse S
1
, S
2
, ..., S
8
la mai multe receptoare R
1
, R
2
, ..., R
8
(Fig. 4.26).
Cu ajutorul unui DEMUX i al unor tranzistoare MOS de comutaie se poate realiza un circuit de
multiplexare bidirecional (MDX).
Ca i multiplexoarele, demultiplexoarele pot fi utilizate drept circuite universale pentru implementarea
unei funcii logice reprezentate n FCD (Exemplul 4.6). Considernd un DMUX cu ieiri nenegate, pentru
implementarea funciei logice, dat n FCD sau prin tabel de adevr, se conecteaz variabilele funciei pe
intrrile de adres (respectnd ponderile corespunzatoare). Intrarea de date D se pune la V
cc
(valoare logic
1), iar ieirile corespunztoare adreselor mintermenilor de valoare logic 1 (sau care apar n FCD) se leag la
intrrile unui SAU a crui ieire reprezint funcia logic f. Celelalte ieiri se las libere (Fig. 4.27). Dac
ieirile sunt negate, poarta SAU se nlocuiete cu NAND.

60


Fig. 4.26. Magistral pe un bit realizat cu o pereche MUX-DEMUX.

Exemplul 4.6. Implementarea unei funcii logice cu ajutorul DEMUX.

0 1 2 0 1 2 0 1 2 1 2 0 1 2
x x x x x x x x x x x x x x f + + = + =

Schema circuitului logic combinaional de implementare a funciei este prezentat n Fig. 4.27.



















Fig. 4. 27. Schema circuitului de implementare a funciei din exemplul 4.1.

4.2.6. Circuite logice de comparare

Circuitele logice de comparare pot furniza informaii despre relaiile n care se afl dou numere A i
B codificate binar (natural): egal (A = B), mai mic (A < B), mai mare (A > B).
Comparatoarele pentru indicarea egalitii se pot realiza cu pori logice de tipul XOR sau NXOR. n
Fig. 4.28 sunt prezentate comparatoare simple, pe un bit, pentru indicarea egalitii (a) sau a inegalitii (b).
n tabelul 4.6 sunt prezentate funcia egalitate (EQ) i funcia inegalitate (INEQ) pentru un bit.
Utiliznd mai multe pori de acest tip se pot realiza comparatoare pentru indicarea egalitii pe mai muli bii
(Fig. 4.29). n acest caz, EQ = 1 dac sunt ndeplinite simultan condiiile: A
0
= B
0
, A
1
= B
1
, A
2
= B
2
i A
3
= B
3







Fig.4.28. Comparatoare simple pentru indicarea egalitii.

61
Tabelul 4.6. Tabelul de adevr pentru funcia EQ i pentru funcia INEQ.

A B EQ INEQ
0 0 1 0
0 1 0 1
1 0 0 1
1 1 1 0













Fig. 4.29. Comparator pe 4 bii pentru indicarea egalitii.

Exist comparatoare pe 4 bii, realizate ca circuite integrate pe scar medie, pentru indicarea uneia
dintre cele trei stri posibile: A = B, A < B, A > B (Fig. 4.30) i avnd posibiliti de interconectare,
pentru a putea fi extins la mai muli bii. Semnificaiile notaiilor din figur sunt urmtoarele:
A
0
, A
1
, A
2
, A
3
biii corespunztori numrului A;
B
0
, B
1
, B
2
, B
3
biii corespunztori numrului B;
ALTB OUT ieire pentru A < B;
AEQB OUT ieire pentru A = B;
AGRB OUT ieire pentru A > B;
ALTB IN intrare pentru A < B (egal cu 1, dac A < B n etajul anterior, n cazul n care exist o
conexiune n lan a modulelor n vederea comparrii a dou numere reprezentate pe un numr mai mare de
bii);
AEQB IN intrare pentru A = B (egal cu 1, dac A = B, n etajul anterior);
AGRB IN intrare pentru A > B (egal cu 1, dac A > B, n etajul anterior).


















Fig. 4.30. Simbolul comparatorului pe 4 bii 74x85.

Se precizeaz c:

ALTB OUT = 1, dac (A < B) sau [(A = B) i (ALTB IN = 1)];
62

AEQB OUT = 1, dac (A = B) i (AEQB IN = 1);

AGRB OUT = 1, dac (A > B) sau [(A= B) i (AGRB IN = 1)]

n cuvntul binar de ieire, unul i numai unul singur dintre cei trei bii este egal cu 1.































Fig. 4.31. Comparator pe 12 bii realizat cu trei comparatoare pe 4 bii standard (de tip 74x85).

Pentru extinderea capacitii n bii a comparatoarelor, se conecteaz mai multe comparatoare standard
(cu numr fixat de bii) n casacad, ca n Fig. 4.31.

4.2.7. Detectoare de paritate / imparitate

n cazul codurilor detectoare de erori, bazate pe bit de paritate, este posibil detectarea
paritii/imparitii numrului de bii ai cuvntului de cod. innd seama de structura cuvntului de cod,
nerespectarea paritii/imparitii impuse semnific apariia unei erori n cuvntul respectiv. Aceast
problem se poate rezolva simplu, printr-o operaie de tip SAU EXCLUSIV asupra biilor componeni ai
cuvntului de cod.
Fie n acest sens x
0
, x
1
, ...., x
n-1
bii unui cuvnt de cod. Se poate cosidera funcia logic IMPAR(x
0
, x
1
,
...., x
n-1
) care ia valoarea 1 dac:

1 ...
1 1 0
=
n
x x x

Analog, se poate considera funcia logic PAR(x
0
, x
1
, ...., x
n-1
), care ia valoarea 1 dac :

0 ...
1 1 0
=
n
x x x

63
Avnd n vedere faptul c porile XOR elementare sunt realizate n varianta cu dou intrri, o schem
pentru determinarea imparitii/paritii conine mai multe astfel de pori ce pot fi conectate n mai multe
moduri. Unul dintre ele, bazat pe simetria circuitului, este prezentat n Fig. 4.32.
Evident, ieirea Y va fi:
Y = 0, pentru un numr par de 1 n cuvntul binar x
0
, x
1
, ...., x
n-1
i
Y = 1, pentru un numr par de 1 n cuvntul binar x
0
, x
1
, ...., x
n-1
.
Astfel de pori sunt integrate pe o singur capsul (cazul circuitului de paritate 74x280, pentru cuvinte
de nou bii).




Fig. 4.32. Detector de paritate/imparitate pentru opt bii.

Ieirea circuitului din Fig. 4.32 este y=1, pentru un numr impar de 1+uri.

4.2.8. Sumatoare i uniti aritmetice logice

Sumatoarele, circuitele de scdere i unitile aritmetice-logice, realizeaz funcii aritmetice utiliznd
circuite logice.
n cazul sumrii a dou numere binare de un bit (Tabelul 4.7), rezultatul este furnizat pe doi bii, un bit
pentru sum (S) i un bit pentru transport n rangul superior carry (C). Acest CLC se numete
semisumator. Simbolul lui este dat n Fig. 4.33.
Pentru ca acest sumator elementar s poat fi utilizat la implementarea unui sumator pe mai muli bii
este necesar nc o intrare i anume transportul din rangul inferior C
in
. n acest caz, C = C
out
(Tabelul 4.8)
iar sumatorul pe un bit se numete sumator complet. Simbolul unui sumator complet este dat n Fig. 4.34.


Tabelul 4.7. Tabela de adevr pentru un semisumator.

A B S C
0 0 0 0
0 1 1 0
1 0 1 0
1 1 0 1





64


















Fig. 4.33. Simbol unui semisumator.

Funciile logice corespunztoare lui S (4.5) i C
OUT
(4.6) se pot implementa direct din tabelul de
adevr, considernd FCD:

IN IN IN IN OUT
C B A C B A C B A C B A C + + + =
'
' ' (4.5)

IN IN IN IN
C B A C B A C B A C B A S + + + =
' '
' ' ' ' (4.6)


Tabelul 4.8. Tabelul de adevr pentru un sumator complet pe un bit.







































A B Cin S Cout
0 0 0 0 0
0 0 1 1 0
0 1 0 1 0
0 1 1 0 1
1 0 0 1 0
1 0 1 0 1
1 1 0 0 1
1 1 1 1 1
A B
C


S
operand x operand y
transport
sum
65
















Fig. 4.34. Simbol unui sumator complet pe un bit.

Expresiile celor dou funcii logice pot fi simplificate utiliznd proprietile algebrei logice i pori de
tip XOR. Astfel, relaia (4.5) devine:

B A C B A C C B A C B A B A C
IN IN IN IN OUT
+ = + + + = ) ( ) ( ) ' ' (
'
(4.7)

Considernd transformarea (4.8):

= + + = = + = + ))' ' ' ( ) (( )' )' ( )' ' ' (( )' )' ' ' (( ' ' B A B A B A B A B A B A B A B A )' ( )' ' ' ( B A B A B A = + = (4.8)

relaia (4.6) se poate scrie n modul urmtor:

= + = + + + =
' '
) ( )' ( ) ' ' ( ) ' ' (
IN IN IN IN
C B A C B A C B A B A C B A B A S
IN
C B A = (4.9)

Implementarea celor dou funcii logice Cout i S este reprezentat prin circuitul logic combinaional
din Fig. 4.35.















Fig. 4.35. Implementare funciilor S i Cout.

O alt expresie pentru Cout se poate obine prin minimizarea funciei logice (4.2) cu ajutorul
diagramelor Karnangh (Fig. 4.36).



A B
C
IN
C
OUT


S
operand x operand y
transport n
rangul superior
sum
transport din
rangul inferior
66
Fig. 4.36. Diagrama Karnaugh pentru funcia logic Cout.

Din minimizarea funciei conform diagramei Karnaugh de mai sus rezult:

C
OUT
= BA + AC
IN
+ B C
IN
= AB + C
IN
(A + B) (4.10)

Adunarea a dou numere binare pe mai muli bii se face, utiliznd transportul n rangul urmtor, dup
regula obinuit (Exemplul 4.7).

Exemplul 4.7. Adunarea a dou numere binare utiliznd transportul.








Observaie

C
IN (rang i)
= C
OUT (rang i-1)

Conform observaiei precedente, pentru a putea realiza sumatoare pe mai muli bii sumatoarele
complete pe un bit pot fi conectate n cascad pe liniile de transport. Astfel, n Fig. 4.37 se prezint un
sumator pe n bii obinut prin legarea n cascad a n sumatoare complete de un bit.


Fig. 4.37. Sumator pe n bii obinut prin legarea n cascad a n sumatoare complete pe un bit.

Sumatorul de mai sus prezint dezavantajul c, prin legarea in cascad semnalul de transport este
ntrziat foarte mult, proporional cu numrul de celule conectate. Prin ntrzierea semnalului de transport
apar semnale de ieire false pe durata regimului tranzitoriu. Astfel, presupunnd c avem un sumator pe
patru bii i operanzii x = 1111, y = 0001, la ieirea sumatorului binar paralel se obin, succesiv
urmtoarele configuraii tranzitorii (i), (ii), (iii) (iv):









Pentru un numr mic de bii (de exemplu, patru bii) se poate realiza o schem de sumator ce
calculeaz C
i
direct din A
j
, B
j
i C
0
, j = 0,1,...,i-1, ocolind legarea n cascad a sumatoarelor pe un bit. Aceste
sumatoare se numesc sumatoare cu anticiparea transportului sau sumatoare rapide (de exemplu, sumatorul
pe patru bii 74x283).
1 1 1 1
0 0 0 1
0 1 1 1 0 (i)
0 1 1 0 0 (ii)
0 1 0 0 0 (iii)
1 0 0 0 0 (iv)
1 1 1 0 C
0 1 0 1 1

x
0 1 1 1 0

y
1 1 0 0 1 (S)
67
Structura unei celule a sumatorului rapid este prezentat in Fig. 4.38.





















Fig. 4.38. Structura unei celule a sumatorului rapid.

n figur, CLCi este un circuit logic combinaional pentru calculul direct al transportului C
i
. Acesta se
bazeaz pe relaia de recuren obinut din (4.10). S-a considerat: C
OUT
= C
n
, C
IN
= C
n-1
, A = A
n-1
, B = B
n-1
.

,... 2 , 1 ), (
1 1 1 1 1
= + + =

n B A C B A C
n n n n n n
(4.11)

n cazul sumatorului rapid pe patru bii avnd intrrile C
0
, A
0
, A
1
, A
2
, A
3
, B
0
, B
1
, B
2
, B
3
i ieirile S
0
,
S
1
, S
2
, S
3
, C
4
(Fig. 4.39), transporturile intermediare C
1
, C
2
, C
3
i transportul de ieire C
4
, se determin din
relaiile urmtoare:

) (
0 0 0 0 0 1
B A C B A C + + =

) (
1 1 1 1 1 2
B A C B A C + + = ) ( ) ( ) (
1 1 0 0 0 1 1 0 0 1 1
B A B A C B A B A B A + + + + + =

+ + + = + + = ) ( ) (
2 2 1 1 2 2 2 2 2 2 2 3
B A B A B A B A C B A C
) ( ) ( ) ( ) ( ) (
0 0 1 1 2 2 0 1 1 2 2 0 0
B A B A B A C B A B A B A + + + + + + +
Schema unui sumator rapid, integrat, pe patru bii (74x283) este prezentat n Fig. 4.39. Semnificaia
notaiilor sunt urmtoarele: C
0
- intrarea de transport, A
3
, A
2
, A
1
, A
0
- biii primului operand, B
3
, B
2
, B
1
, B
0
-
biii celui de-al doilea operand, S
3
, S
2
, S
1
, S
0
biii sumei (ieirea), C
4
ieirea de transport.


68

Fig. 4.39. Schema unui sumator rapid, integrat, pe 4 bii.


4.2.9. Circuite de scdere

Utiliznd un sumator paralel, se poate realiza un circuit de scdere (ce realizeaz operaia x-y) pe baza
complementrii fa de 2 a scztorului y luat cu semnul minus. Pentru complementare, biii numrului y se
inverseaz, iar C
0
se conecteaz la Vcc (1 logic) - Fig. 4.40.

Observaie
Circuitul sumator paralel poate fi folosit ca sumator/scztor n aceeai configuraie utiliznd comanda de
adunare/scdere (ADD/SUB) i punnd 0 pentru adunare i 1 pentru scdere (Fig. 4.41). Circuitele XOR
joac rolul unor inversoare programate.















Fig. 4.40. Configurarea unui sumator pe patru bii ca dispozitiv de scdere.

Considernd MSB bitul de semn ( pentru x i pentru y), se poate semnaliza depirea formatului
de opt bii, examinnd cele dou situaii din tabelul de adevr: prima, cnd se adun dou numere pozitive i
bitul de semn rezultat ( ) este 1, i a doua, cnd se adun dou numere negative i bitul de semn rezultat
este 0 (Tabelul 4.9).











69















Fig. 4.41.

Sumator/scztor pe opt bii n C2.

Tabelul 4.9. Tabelul de adevr pentru funcia Detector de depire (DD) (overflow)


DD
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
0
0
0
1
0


Astfel, pentru n = 8, rezult funcia logic a detectorului de depire DD n forma canonic
disjunctiv:

'
7 7 7 7
'
7
'
7
s y x s y x DD + =

Circuitul logic prin care este implementat aceast funcie este prezentat n Fig. 4.42.




Fig. 4.42. Implementarea circuitului DD utiliznd biii de semn.

70
4.2.10. Unitai artimetice-logice (ALU)

O unitate aritmetic-logic (ALU) este un CLC capabil s realizeze o serie de operaii aritmetice sau
logice cu doi operanzi pe n bii (de obicei, o astfel de unitate, de tip MSI, are n = 4). De asemenea, exist un
set de intrri pentru selectarea funciei pe care o execut ALU. Unele ALU au prevzute ieiri pentru
generarea transportului rapid (anticipat) i n cazul conectrii mai multor ALU standard de patru bii (de
exemplu, 74x181 sau 74x381) n paralel, fr ntrzierea transportului. Generarea transportului anticipat pe
grupe de patru bii se face cu ajutorul unui CLC integrat 74x182 (pn la patru grupe).

Exemplul 4.8. Unitate aritmetic-logic pe patru bii.
Circuitul integrat 74x381, ALU de patru bii este prezentat n Fig. 4.43, iar funciile realizate, n
Tabelul 4.10.
Funcia realizat de circuitul integrat 74x381 este selectat cu ajutorul intrrilor S
2
, S
1
, S
0
. Cuvintele
binare A i B, care reprezint cei doi operanzi, au biii A
3
, A
2
, A
1
, A
0
, i, respectiv, B
3
, B
2
, B
1
, B
0
.

De
asemenea, exist o intrare de transport C
IN
i dou ieiri active n 0, G i P, utilizate pentru generarea
transportului anticipat n rangul urmtor, cu ajutorul circuitului integrat 74x182.





















Fig. 4.43. Circuitul integrat 74x381, ALU de patru bii.

Tabelul 4.10. Funciile realizate de ALU 74x381

S
2
S
1
S
0
Funcia (F
3
,F
2
,F
1
,F
0
)
0 0 0 0 0 0 0 (iniializare 0)
0 0 1 B-A-1+C
IN
(aritmetic)
0 1 0 A-B-1+C
IN
(aritmetic)
0 1 1 A+B+C
IN
(aritmetic)
1 0 0
AB (logic)
1 0 1 A+B (logic)
1 1 0 AB (logic)
1 1 1 1 1 1 1 (iniializare 1)



A
3
B
3
S
0


S
1


S
2

Cin
A
0
B
0
A
1
B
1
A
2

B
2

F
0
F
1

F
2
F
3
G
P
71
4.2.11. Realizarea multiplicrii cu ajutorul CLC

Pentru implementarea unui multiplicator combinaional se folosete algoritmul obinuit, care
utilizeaz deplasri i adunri.
De exemplu, pentru nmulirea a dou numere de patru bii: x
3
x
2
x
1
x
0
i y
3
y
2
y
1
y
0
,

se aplic schema din
Fig. 4.44.
Se observ ca operaiile elementare principale ale produsului (considerat ca operaie aritmetic) sunt:
nmulirile pe un bit (operaie logic), deplasrile cu un bit i adunarea (operaie aritmetic) pe mai muli bii.
Pentru fiecare ieire: P
6
, P
5
, , P
0
, se pot implementa funciile logice corespunztoare, sub forma unor
circuite logice combinaionale.


















3 3
y x








3 2
2 3
y x
y x






3 1
2 2
1 3
y x
y x
y x


3 0
2 1
1 2
0 3
y x
y x
y x
y x


2 0
1 1
0 2
y x
y x
y x


1 0
0 1
y x
y x


0 0
y x
P
7
P
6
P
5
P
4
P
3
P
2
P
1
P
0


Fig. 4.44. Schem pentru realizarea multiplicatorului combinaional pe 4 bii.


4.3. HAZARDUL COMBINAIONAL AL FUNCIILOR LOGICE

Dup cum s-a menionat, un circuit logic combinaional ideal se caracterizeaz prin faptul c ieirea la
un moment dat depinde doar de combinaia de intrare la acel moment:

) ,..., , (
1 1 0
=
n
x x x f y (4.12)

n realitate, datorit ntrzierii introduse de circuitele electronice fizice (porile logice), apar
desincronizri ntre modificarea intrrii i modificarea corespunztoare a ieirii. Pn la obinerea valorii
ieirii se manifest un fenomen tranzitoriu pe parcursul cruia ieirea poate lua alte valori dect cele ideale,
fenomen numit hazard.
n cele ce urmeaz, vom presupune c toate porile logice introduc aceeai ntrziere, t
p
(timp de
propagare), ntre momentul modificrii intrrii i momentul n care apare schimbarea la ieire.
n fond, hazardul se refer la contrazicerea, pentru cazul real, a dou teoreme fundamentale ale
algebrei logice: teorema terului exclus i teorema contradiciei:

f = x + x = 1

i, respectiv,
g = xx = 0








72


Fig. 4.45. Circuit logic ce verific cele dou teoreme.

Dac se modific intrarea x din 01 i din 10, conform diagramelor de semnal din Fig. 4.46,
datorit timpilor de propagare t
p
prin cele trei pori, semnalele de ieire g i f din montajul de test (Fig.
4.45) vor avea, pe o durat scurt, alte valori dect cele teoretice. Se observ c salturile nedorite, de scurt
durat, pot fi 010 (risc sau hazard static n 0) sau 101 (risc sau hazard static n 1). Un astfel de
impuls se numete glitch.

Observaie.
Hazardul static n 0 nu apare n cazul formelor disjunctive, deoarece ar fi lipsit de sens s se aplice x i
x aceleiai pori I din nivelul 1. De asemenea, hazardul static n 1 nu apare n cazul formelor conjunctive,
deoarece nu pot aprea x i x pe aceeai poart SAU din nivelul 1.

Hazardul static n 1 poate fi prezent atunci cnd exist dou combinaii de intrare care se deosebesc
printr-o singur variabil i au, ambele, ieirile corespunztoare egale cu 1.
Hazardul static n 0 poate fi prezent atunci cnd exist dou combinaii de intrare care se deosebesc
printr-o singur variabil i au, ambele, ieirile corespunztoare egale cu 0. De fapt, hazardul static n 0 este
dualul hazardului static n 1.
















Fig. 4.46. Diagrama de semnale pentru ilustrarea hazardului static.

Pentru eliminarea hazardului se pot introduce termeni suplimentari (redundani), obinnd o nou
funcie logic, echivalent din punctul de vedere al comportrii ideale cu cea iniial, dar care nu mai
prezint fenomenul de hazard.
O alt metod de evitare a fenomenului de hazard const n introducerea unor impulsuri de
sincronizare, pentru validarea datelor n zone lipsite de hazard. Astfel, n cazul sistemelor numerice sincrone
(Cap. 5) proiectate corect nu este necesar analiza hazardului. De fapt, eliminarea hazardului apare necesar
doar n cazul circuitelor secveniale asincrone.
Pentru studiul modalitilor de eliminare a hazardului static combinaional, vom considera doar
reprezentarea n form disjunctiv, cea n form conjunctiv fiind tratat similar. O metod simpl de
eliminare a hazardului n 1 este metoda diagramelor Karnaugh. n acest caz, toate gruprile de 1, selectate
pentru minimizare, trebuie s fie nlnuite (s nu fie separate). Termenii suplimentari introdui fa de forma
minimal elimin glitch-urile, susinnd valoarea 1 pe aceast durat, i se numesc termeni de consens.








x
t
x'
t
x x
t
x + x
t
t
1
t
2

t
1
+t
p

t
2
+t
p

t
1
+2t
p

t
2
+2t
p

73

Exemplul 4.9. CLC cu hazard static.


S se analizeze hazardul static pentru circuitul din Fig. 4.47.












Fig. 4.47. Circuit logic combinaional cu hazard static.

Expresia analitic a funciei de tranziie f este (4.13) iar diagrama Karnaugh este prezentat n Fig.
4.48.

f = x
1
x
0
+ x
2
x
1
(4.13)

Cu linie plin sunt marcai implicanii ce apar n f (A i B). Cele dou grupri nu sunt legate. Se introduce un
termen de consens care leag cele dou grupri (cu linie punctat): x
2
x
0
. Adugarea acestui termen la forma
disjunctiv a lui f schimb expresia lui f cu f
C
(4.14) - funcia corectat. Cele dou funcii sunt, evident,
echivalente.

f
C
= x
1
x
0
+ x
2
x
1
+ x
2
x
0
(4.14)









Fig. 4.48. Diagrama Karnaugh pentru funcia (4.10) i evidenierea termenilor de consens.


Modul de eliminare a hazardului static n 1, la trecerea din combinaia A (110) n combinaia B (100),
se observ din diagrama de semnal din Fig. 4.49.

1
1
1 1
0
0
x
1
x
0
x
2

0 0
00 01 11
0

1
A
B
10

74

Fig. 4.49. Diagrama de semnal pentru ilustrarea eliminrii hazardului static n 1 din exemplul 4.9.


Exemplul 4.10

Pentru funcia logic f, reprezentat prin diagrama Karnaugh din Fig. 4.50, s se elimine hazardul
static n 1. Funcia logic minimizat f este (4.15). nlnuind gruprile separate din diagram rezult trei
termeni de consens: x
1
x
0
, x
3
x
2
x
1
i x
3
x
2
x
0
i funcia corectat f
C
(4.16).

f = x
3
x
1
+ x
3
x
0
+ x
2
x
1
x
0
(4.15)

f = x
3
x
1
+ x
3
x
0
+ x
2
x
1
x
0
+ x
1
x
0
+ x
3
x
2
x
1
+ x
3
x
2
x
0
(4.16)











Fig. 4.50. Diagrama Karnaugh pentru funcia (4.15) i evidenierea termenilor de consens.

Hazardul dinamic se caracterizeaz prin faptul c ieirea se poate schimba de mai multe ori n cadrul
regimului tranzitoriu. Acest lucru se ntmpl atunci cnd semnalele parcurg, la acelai circuit, ci ce conin
un numr diferit de pori logice sau atunci cnd parcurg, la acelai circuit, ci ce conin pori mai lente i ci
ce conin pori mai rapide.
La circuitele combinaionale cu dou niveluri, de tipul FD sau FC, corect implementate, nu apar
hazarduri dinamice.


x
1
x
0
x
3
x
2

00 01 11 10
1 1 0 0
1 1 0 1
0 1 1 1
0 1 1 0
00
01
11
10
00

01
11

10


75

Un exemplu de hazard dinamic este dat n Fig. 4.51.








Fig. 4.51. Exemplu de hazard dinamic.

Aplicaii

i) S se implementeze un MUX de un bit cu dou intrri utiliznd pori logice elementare.

ii) S se implementeze funcia f direct, utiliznd pori logice elementare:

1 2 1 0 2
x x x x x f + + =

iii) S se implementeze funcia f direct, utiliznd pori logice elementare:

) ( ) (
2 1 0 2
x x x x f + =

iv) Utiliznd un MUX integrat pe un bit cu opt intrri, s se implementeze funcia logic:

0 1 2 0 1 2
x x x x x x f + =

v) S se alctuiasc tabela de adevr pentru ieirea LSB a unui convertor pe trei bii din cod binar natural n
cod Gray.
vi) S se alctuiasc tabela de adevr pentru ieirea MSB a unui convertor pe patru bii din cod BCD (8421)
n cod BCD exces 3.
vii) S se implementeze funcia f direct, utiliznd pori logice elementare:
2 1 0 2 1
) ( x x x x x f + =
f
ideal
f
real

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

  • TSA Global
    TSA Global
    Document219 pagini
    TSA Global
    Ionut
    Încă nu există evaluări
  • TSA Global
    TSA Global
    Document219 pagini
    TSA Global
    Ionut
    Încă nu există evaluări
  • TSA2014 Cap1
    TSA2014 Cap1
    Document55 pagini
    TSA2014 Cap1
    Cosmin Neculau
    Încă nu există evaluări
  • Tsa 1
    Tsa 1
    Document75 pagini
    Tsa 1
    Gîrju Andrada
    Încă nu există evaluări
  • Curs 1
    Curs 1
    Document20 pagini
    Curs 1
    Gîrju Andrada
    Încă nu există evaluări