54
Capitolul 2 Circuite logice combinat ¸ionale P2.1 Rezolvare: Utilizˆ and axioma asociativit˘ at ¸ii asupra operatorului sum˘ a modulo doi, funct ¸ia paritate se poate exprima pentru a fi implementabil˘ a cu XOR2 sub urm˘ atoarele dou˘ a forme: f =(x n-1 (x n-2 (x n-3 (x n-4 ⊕···⊕ (x 3 (x 2 (x 1 x 0 ))) ... )))) f = ((... ((x n-1 x n-2 ) (x n-3 x n-4 )) ⊕···⊕ ((x 3 x 2 ) (x 1 x 0 )) ... )) Prima expresie poate fi mapat˘ a pe o ret ¸ea serie (rs) iar a doua pe o ret ¸ea arbore binar (rb). Adoptˆ and num˘ arul de port ¸i XOR ca m˘ asur˘ a pentru dimensiunea ret ¸elei rezult˘ a: S(n) rs = n-1,S(n) rb = n-1, iar adˆ ancimea D(n) rs =(n-1) niveluri ,D(n) rb = dlog 2 ne. Prin substitut ¸ia XOR2 NXOR2 se calculeaz˘ a aceea¸ si funct ¸ie dac˘ a un num˘ ar de (n - 1) bit ¸i ai cuvˆ antului, ˆ ınainte de aplicare la intrarea ret ¸elei, sunt complementat ¸i deoarece: x i+1 x i = x i+1 x i . P2.2 Rezolvare: f 1 = (A + B)(C + D)= A B + C D f 2 = AB CD = AB( CD)+( AB)CD = AB( C + D)+ CD( A + B)= = AB C + AB D + ACD + BCD f 3 = ABC + BD f 4 =( ( A B)( C D)) = AB + A B + C D + CD Tabelele de adev˘ ar sunt reprezentate ˆ ın Figura P.2.2-e. 1

Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

Capitolul 2

Circuite logice combinationale

P2.1

Rezolvare:Utilizand axioma asociativitatii asupra operatorului suma modulo doi, functia paritate sepoate exprima pentru a fi implementabila cu XOR2 sub urmatoarele doua forme:

f = (xn−1 ⊕ (xn−2 ⊕ (xn−3 ⊕ (xn−4 ⊕ · · · ⊕ (x3 ⊕ (x2 ⊕ (x1 ⊕ x0))) . . . ))))

f = ((. . . ((xn−1 ⊕ xn−2)⊕ (xn−3 ⊕ xn−4))⊕ · · · ⊕ ((x3 ⊕ x2)⊕ (x1 ⊕ x0)) . . . ))

Prima expresie poate fi mapata pe o retea serie (rs) iar a doua pe o retea arbore binar(rb). Adoptand numarul de porti XOR ca masura pentru dimensiunea retelei rezulta:S(n)rs = n−1, S(n)rb = n−1, iar adancimea D(n)rs = (n−1) niveluri , D(n)rb = dlog2ne.Prin substitutia XOR2→ NXOR2 se calculeaza aceeasi functie daca un numar de (n−1)biti ai cuvantului, ınainte de aplicare la intrarea retelei, sunt complementati deoarece:xi+1 ⊕ xi = xi+1 ⊕ xi.

P2.2

Rezolvare:f1 = (A+B)(C +D) = AB + C Df2 = AB ⊕ CD = AB(CD) + (AB)CD = AB(C +D) + CD(A+B) == ABC +ABD +ACD +BCDf3 = ABC +BD

f4 = ((A⊕B)(C ⊕D)) = AB +AB + CD + CD

Tabelele de adevar sunt reprezentate ın Figura P.2.2-e.

1

Page 2: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

2 CAPITOLUL 2. CIRCUITE LOGICE COMBINATIONALE

1 1

1 1 1 1

1 1

1 1

1 1 1 1 1

1 1 1

1

1

1

1

1 1

1

1 1

1

1 1

1

1

1 0 0 0

0000 0 0

0000

00 00 00

0 0 0

000

0

0 0

00

0 000 0

000

0 00 0

00 0

0 000

0000

000 0 000

000

1 1 1 1

1 1 1 1

1 1 1

1

1 1

1 1 1

1 1 1 1 1 1

1 1 1 1 1

1 1 f1 f2 f3 f4A B C D

0

e)

Figura P 2.2

P2.3Rezolvare:

Se vor demonstra analitic urmatoarele identitati:

A⊕B = A⊕B = (A⊕B) = (A⊕B);

(A⊕B) = (A⊕B) = (A⊕B) = (A⊕B).

P2.4Rezolvare:

a) f = [(AB)A] · [(AB)B] = (AB +A)(AB +B) = ABAB +AAB +ABB +AB =

= AB + 0 + 0 +AB = AB +AB = A⊕B , vezi problema 1.6.

b) f = (A+B + C)(AB + CD) +BCD = (A+B + C) (AB + CD) +BCD =

= (ABC)(ABCD) +BCD = (ABC)(ABCD) +BCD = BCD.

c) f = (ABC +BCD) + (ACD +BC D +BCD) =

= (ABC +BCD)(ACD +BC D +BCD) =

= (ABC +BCD)(A+ C +D +BC D +BCD) =

= (ABC +BCD)(A+D(1 +BC) + C(1 +BD)) =

= (ABC +BCD)(A+D + C) =

= ABCA+ABCD +ABCC +BCDA+BCDD +BCDC =

= 0 +ABCD + 0 +BCDA+ 0 +BCD =

= ABCD + (ABCD +BCD) = ABCD +BCD

Page 3: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

3

P2.5Rezolvare:

a) Implicanti primi:

0, 4 → BC; 0, 2 → AC; 2, 3 → AB;

3, 7 → BC; 4, 5 → AB; 5, 7 → AC;

Exista doua variante de alegere a implicantilor primi prin care sunt acoperiti totimintermii din diagrama:

f = AC +AB +BC sau f = BC +AB +AC

Forma minima ca produs de sume rezulta din Figura P2.5-a:

f = (A+B + C)(A+B + C) = AC +AB +BC +BC +AB +AC

Prin desfacerea parantezelor s-au obtinut totii implicantii primi de la forma sumade produse.

b) Pentru forma suma de produse din Figura P2.5-b rezulta urmatorii implicanti primi:0, 1, 4, 5 → AC;9, 11, 13, 15 → AD;1, 5, 9, 13 → CD.Dintre acesti implicanti primi, numai AC si AD sunt implicanti primi esentiali caretrebuie sa fie considerati pentru acoperirea tuturor mintermilor din diagrama V-K.Expresia minima a functiei este:

f = AC +AD

Pentru forma produse de sume din Figura P2.5-b rezulta urmatorii implicanti primi:2, 3, 6, 7 → A+ C;8, 10, 12, 14 → A+D;2, 6, 10, 14 → C +D.Dintre acesti implicanti primi, numai A+C si C +D sunt implicanti primi esentialicare trebuie considerati pentru acoperirea tuturor maxtermilor din diagrama V-K.Expresia minima a functiei este:

f = (A+ C)(A+D) = AC +AD + CD

Prin desfacerea parantezelor s-au obtinut toti implicanti primi de la forma suma deproduse.

c) Pentru forma suma de produse din Figura P2.5-c rezulta urmatorii implicanti primi:0, 4, 8, 12, 16, 20, 24, 28 → DE;8, 9, 10, 11, 12, 13, 14, 15 → AB.Amandoi implicanti primi sunt esentiali, deci acoperirea functiei se realizeaza prinexpresia minima:

f = DE +AB

Page 4: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

4 CAPITOLUL 2. CIRCUITE LOGICE COMBINATIONALE

0 2 6 4

1 3 7 5

0 2 6 4

1 3 7 5

00 01 11 10

0

1

0 4 12 8

1 5 13 9

3 7 15 11

2 6 14 10

0 4 12 8

1 5 13 9

3 7 15 11

2 6 14 10

00 01 11 10

00 01 11 10

0 4 12 8

1 5 13 9

3 7 15 11

2 6 14 10

0

1

00 01 11 10

00 00

01 01

11 11

10 10

000 001 011 010 110 111 101 100

00

01

11

10

24 28 20 16

25

27

26

29

31

30

21 17

19

18

23

22

ABC C

ABA A

C C

B BB C A C A B BC AC A B

A+B+C A+B+C

1 1

1 1 1

1 0

0

1 01

1 1 1 1

11

0

0 0

00 0 0

AB ABCDCD

A C C D AD A+C C+D A+D

D

C

A

C

D

A

B

b)

a)

c)

ABCDE

BA

B

E

C CD E AB

D

1 1 1

1

1 1

1 1

1

1 1 1 1 1

B

Figura P 2.5

Page 5: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

5

P2.6Rezolvare: e)F = C E h)F = (A+ E)(A+ C)(B + C)

P2.7Rezolvare: a) AB,CD,BD b) ABC,ABC,CE,BDE

P2.9Rezolvare:

Termenii produs care sunt indiferenti, notati cu d(don′t care) pot fi considerati ın diagramaV-K fie de valoare 0 fie 1. Se va alege valoarea logica ce va duce la identificarea de implicantiprimi cu o exprimare cat mai simpla. In diagrama V-K, aceasta ınseamna definirea unorsuprafete cat mai mari si cat mai putine pentru a acoperi casutele cu 1.Pentru functiile anterioare se obtin urmatoarele forme minime: a) f = BC+AD+ABC;b) f = CD +BD; c) f = D; d) f = CE + CE.

P2.10Rezolvare:

O functie de j variabile se poate exprima ca o functie de j−1 variabile si o variabila reziduu.Variabila reziduu se introduce ın expresia functiei reziduu pentru calculul coeficientilor.Generarea variabilelor reziduu se poate continua recursiv pana cand se ajunge la j − 1variabile reziduu si o singura variabila pentru functie.Se va exemplifica pentru functia de patru variabile:

f(A,B,C,D) = (d0D + d1D)ABC + (d2D + d3D)ABC + (d4D + d5D)

ABC + (d6D + d7D)ABC + (d8D + d9D)ABC + (d10D +

+ d11D)ABC + (d12D + d13D)ABC + (d14D + d15D)ABC

Coeficientii functiei de trei variabile A, B, C se calculeaza ca o suma dintre produsul unuicoeficient di al functiei de patru variabile cu variabila D si produsul coeficientului urmatordi+1 al functiei cu D. Coeficientii di ai functiei de patru variabile se pot deduce fie dintabelul de adevar, fie din diagrama V-K. Coeficientii functiei de trei variabile calculati dinexpresiile functiilor reziduu pot avea doar valorile: 1, 0, D,D.De asemenea, pentru functia de patru variabile, cand se introduc ın coeficienti doua vari-abile reziduu (C si D), se obtine exprimarea:f(A,B,C,D) = (d0C D + d1CD + d2CD + d3CD)AB + (d4C D + d5CD + d6CD +d7CD)AB + (d8C D + d9CD + d10CD + d11CD)AB + (d12C D + d13CD + d14CD +d15CD)ABCoeficientii functiei rezultate de doua variabile AB au forma:

(diC D + di+1CD + di+2CD + di+3CD)

si pot fi calculati usor ca suma a patru produse dintre coficientii consecutivi ai functieide patru variabile cu mintermii corespunzatori ai variabilelor C si D. Acesti coeficienti,calculati cu ajutorul unei functii reziduu, pot avea expresia celor 16 functii de doua vari-abile dintre care 6 snt valori banale: 0, 1, C, C,D,D.Introducerea varaibilelor reziduu ın tabelul de adevar este prezentata ın figura P2.10-a.

Page 6: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

6 CAPITOLUL 2. CIRCUITE LOGICE COMBINATIONALE

di di di

a)

00 1101 10

0

11

0

CAB

D/0 0/1 0

D/1 D DD

C,D

B0

1

C/CD CD

A

1/CC + D/CD

0 000

000000

000

0000

00

00

00

00

0

0

0

0

0

0

0

0

000

00

0

0

123456789

10

131415

1112

111 1

1111

11111111

1111 1

1

11

11

1

1

1

1

1

1

d

d

dd

1

1

1

11

0 0 0 0

0 0

0 0

0

0 0 0

0 0 0

0

0

1 1

1

1 1

1

1

1

1 1 1 1

1 1

1

1 11 0

01

2

3

4

5

6

7

2

3

A B C D A B C A B

0

D/1

D/0

D

D

0/1

CD/C

CD

C/1

Variabile reziduu:nici una Variabila reziduu: D Variabile reziduu:CsiD

0

00 01 11 10

00

0000 00

00

00

00 00

00 00 00

00

01

01

01 01

01 01

0101 01

01

01

01

11

11 11 11

11

11

1111 11

10

10 10

10 10

10

11 11

10 10 10

10

10

11 10

d

1

0 0

00 0

1 1

1

d

10

0 0

0 0 0

0 0

0

0

0 0

0

0

0

0

0

0

0

0 0

0

0

0

d

d

d

d

d d

d

d

d d

d

1 1 1

1 1

1

1 1

1 1 1

1 1 1

1 1

0 0 0

0

0

0

00 00

d d

d

d

1 1

1

1

1 1

0 0 0

111

0/C C/1C B/1 B 0/B0/B B 1 0/B

ABC

0/A 1 0/A1 A 0/1

DAC BCAB

CD D

CDABABAB

CD CD

CDAB

b)

c)

D

D

D

C

C

CD + CD

B BB A AC

D

0/C CC C/1

Figura P 2.10

Page 7: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

7

Introducerea unei variabile reziduu (D) ın diagramele V-K este prezentata ın figuraP2.10-b.(0 ·D + 0 ·D) ·ABC = 0 ·ABC;(d ·D + 1 ·D) ·ABC = (D/1) ·ABC;(0 ·D + d ·D) ·ABC = (D/0) ·ABC;(1 ·D + 0 ·D) ·ABC = D ·ABC;(0 ·D + 0 ·D) ·ABC = 0 ·ABC;(0 ·D + 1 ·D) ·ABC = D ·ABC;(d ·D + d ·D) ·ABC = (0/1) ·ABC;(1 ·D + 1 ·D) ·ABC = 1 ·ABC;

Introducerea a doua variabile reziduu (C,D) ın diagramele V-K este prezentata infigura P2.10-c.(0 · C D + 0 · CD + d · CD + 1 · CD) ·AB = (C/CD) ·AB;(0 · C D + d · CD + 1 · CD + 0 · CD) ·AB = (C ⊕D/CD) ·AB;(0 · C D + 0 · CD + 0 · CD + 1 · CD) ·AB = (CD) ·AB;(d · C D + d · CD + 1 · CD + 1 · CD) ·AB = (1/C) ·AB;

P2.11

Rezolvare:Operatia de minimizare pe diagrama V-K se realizeaza in trei pasi.Pasul 1: Se grupeaza casutele care au valori logice 1 si cele care au valori indiferente (d)pentru a se exprima cat mai simplu implicantii primi.

Pasul 2: Casutele cu valoare 1 se considera a fi cu valoare d. Se grupeaza casutele carecontin aceeasi functie reziduu si cu unele casute (potrivite) care contin valori indiferentepentru a exprima cat mai simplu implicanti primi. Implicantii primi rezultati se vorınmulti cu functia reziduu.

Pasul 3: Forma minima a functiei se obtine prin sumarea logica a implicantilor primiobtinuti de la primul si al doilea pas. Daca functiile reziduu au mai mult de o variabila,ın cazuri particulare, expresia se mai poate reduce prin prelucrari analitice.

Aplicand succesiv cei trei pasi pentru fiecare functie din diagramele date se obtin formeleminime prezentate ın Figura P2.11.

Se observa ca pentru F5 se obtin doua expresii diferite. Acestea se explica prin modul cumse grupeaza casutele ın care exista valori indiferente d sau ce valoare se atribuie acesteia.Toate expresiile sunt corecte deoarece pentru acele combinatii ale variabilelor, carora lecorespunde d ın diagrama V-K, valoarea functiei este indiferenta.

Page 8: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

8 CAPITOLUL 2. CIRCUITE LOGICE COMBINATIONALE

1

2

3

4

5

6

7

8

9

10

AB

ABBAB + ACBC +AABBCAC

ACBCABCAC + ADCD sau BDAE + CDBCDBDE + ACFADE + ACEBDE + ABF

AB + ACBCAB + ABCB + AC + ADA + CD sau A + BDB + AC + AE + CDBC + A+ BCDAB + BDE + ACEBC + ADE + ACEAC + BDE + ABF

unctiaF

ffffffffffb)

Pasul 1 Pasul 2Pasul 3

( forma minima )

Figura P 2.11

P2.13

Rezolvare:Tabelul de adevar pentru conversia BCD 2-4-2-1 la matricea de sapte segmente este prezen-tat ın Figura P2.13-a. In multimea cuvintelor de intrare nu apar niciodata combinatiilecare ar defini mintermii: P2, P3, P4, P5, P6, P7, P8, respectiv maxtermii: S2, S3, S4, S5, S6, S7.Functiile care realizeaza comanda segmentelor matricei, exprimate ca suma de produsesunt:A =

∑150 (1, 10) +

∑150 d(2, 3, 4, 5, 6, 7);

B =∑15

0 (11, 12) +∑15

0 d(2, 3, 4, 5, 6, 7);

C =∑15

0 (8) +∑15

0 d(2, 3, 4, 5, 6, 7);

D =∑15

0 (1, 10, 13) +∑15

0 d(2, 3, 4, 5, 6, 7);

E =∑15

0 (1, 9, 10, 11, 13, 15) +∑15

0 d(2, 3, 4, 5, 6, 7);

F =∑15

0 (1, 8, 9, 13) +∑15

0 d(2, 3, 4, 5, 6, 7);

G =∑15

0 (0, 1, 13) +∑15

0 d(2, 3, 4, 5, 6, 7).Aceleasi functii, exprimate ca produse de sume sunt:A =

∏150 (0, 8, 9, 11, 12, 13, 14, 15) +

∏150 d(2, 3, 4, 5, 6, 7);

B =∏15

0 (0, 1, 8, 9, 10, 13, 14, 15) +∏15

0 d(2, 3, 4, 5, 6, 7);

C =∏15

0 (0, 1, 9, 10, 11, 12, 13, 14, 15) +∏15

0 d(2, 3, 4, 5, 6, 7);

D =∏15

0 (0, 8, 9, 11, 12, 14, 15) +∏15

0 d(2, 3, 4, 5, 6, 7);

E =∏15

0 (0, 8, 12, 14) +∏15

0 d(2, 3, 4, 5, 6, 7);

F =∏15

0 (0, 10, 11, 12, 14, 15) +∏15

0 d(2, 3, 4, 5, 6, 7);

G =∏15

0 (8, 9, 10, 11, 12, 14, 15) +∏15

0 d(2, 3, 4, 5, 6, 7).Minimizarea acestor functii se face pe diagramele V-K de patru variabile prezentate ınFigura P2.13-b.S-au dedus formele minime atat ca produse de sume cat si ca sume de produse. Prinaplicarea dublei negatii formei de suma de produse (obtinuta din Forma Normala Dis-junctiva - FND), se poate implementa functia cu operatori NAND. Similar, prin aplicareadublei negatii formei minime de produs de sume (obtinuta din Forma Normala Conjunc-

Page 9: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

9

0123456789

A

00 01 11 10

00

01

11

10

WXYZ 00 01 11 10

00

01

11

10

WXYZ

00 01 11 10

00

01

11

10

WXYZ 00 01 11 10

00

01

11

10

WXYZ

ddddd

d

ddddd

d

ddddd

d

ddddd

d

ddddd

dD

C

B

A

F

E

G

J KJ J J J

J

A B C D E F G

w z x y z x y z x y z w x y z x y z x y w x y y z w

w x y z

w x y z

z

I − 74LS00J − 74LS10K− 74LS20L − 74LS04

00 01 11 10

00

01

11

10

WXYZ

ddddd

d

11

1

0 0 0000

0

P i Si

00 01 11 10

00

01

11

10

WXYZ

A B

DGF00 01 11 10

00

01

11

10

WXYZ

E

INTRARIBCD 2421

w x y z0011111111

0000001111

0000110011

0101010101

Termeni

A B C D E F G0100100000

0000011000

0010000000

0100100100

0101110101

0111000100

1100000100

CIFRAZECIM

XYZ + XYZWXYZ

Porti NANDsuma de produse

Porti NORprodus de sume

X(Y +Z)(W + Z)(X + Y)(X+Z)(Y + Z)WXYZ

BC

WZ +XYZ

(W + X + Y)(Y + Z)D

XYZ + WY(X + Z)(W + Z)Y(W + Z)(W + X)

EFG

Z + XYWXY+ YZ

(X + Z)(Y + Z)(X+Y)(Y+Z)XYZ + WZ +XYZ

Iesire

a)

0 d 0010

00

00 0

0

0 0 0

0

0 0

0 000

d dd

dd 1

11

111

1 1

1

1

1 11 1

1 1

10

00

00 0

00

0 00000

0

0000

000

c)

b)

d)

Min Max

P9

P8

P1

P0

P10P11P12P13P14P15

S0S1S8S9S10S11S12S13S14S15

IESIRICodul 7 segmente

C

Figura P 2.13

Page 10: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

10 CAPITOLUL 2. CIRCUITE LOGICE COMBINATIONALE

tiva - FNC), se poate implementa functia cu operatori NOR. Expresiile minimizate alefunctiilor, pentru o implementare cu operatori NAND si pentru o implementare cu portiNOR sunt prezentate in Figura P2.13-c.Structura cu porti NAND care implementeaza functiile este prezentata ın Figura P2.13-d.

P2.15Rezolvare:

Circuitele AND-OR si NAND-NOR, care calculeaza termeni produs sunt potentiale deproducere de hazard static 1 deoarece iesirea lor 1 (sinteza formei normale disjunctive afunctiei se face pe baza de 1) poate genera un glitch 0 cand o variabila x comuta de la 1la 0. Hazardul apare daca, pentru anumite valori constante ale celorlalte variabile, functia

t

t

t

t

t

t

t

tt 6t 5t 4t 3t 2t 1t 0

A

A

C

B

B

AB

BC

F

0

1

C AB00 01 11 101

IPE IP suplimentar IPE

1 1 1

a) b)

c)

G1

G2

G3

G5

A

B

G4

G6

IP(1,3)suplimentarC

f

Hazard

Figura P 2.15

se reduce la: x + x = 1. Pentru circuitul considerat, functia F (A,B,C) = AB + BC sereduce la F (0, B, 1) = B + B, pentru A=0 si C=1. Ca efect, implementarea propusa vadetermina aparitia unui glitch 0, cand B comuta de la 1 la 0.In diagramele de timp din Figura P2.15-c se observa ca o comutatie de la 0 la 1 a lui B lamomentrul t0 nu produce hazard, dar o comutatie de la 1 la 0 la momentul t3 genereazaun interval t5−t6 cand iesirea devine 0, (B+B 6= 1). Similar, ın diagrama V-K din FiguraP2.15-a, cand “punctul de functionare“ se deplaseaza ıntre IPE(0,1) si IPE(3,7), nu apare

Page 11: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

11

hazard deoarece B comuta ıntre 0 si 1 dar apare hazard cand se deplaseaza, ıntre IPE(3,7)si IPE(0,1) pentru ca B comuta de la 1 la 0.

Solutia de eliminare a hazardului este introducerea implicantului prim IP(1,3), “punte“ıntre cei doi IPE. Acest IP mentine functia la valoarea 1 chiar cand B comuta de la 1 la0. Aceasta “punte“ este implementata ın Figura P2.15-c (prin introducerea portii G6).

P2.16

Rezolvare:Circuitele OR-AND si NOR-NOR, care calculeaza termeni suma sunt potentiale de pro-ducere de hazard static 0 deoarece iesirea lor 0 (sinteza formei normale conjunctive afunctiei se face pe baza de 0) poate genera un glitch la 1 cand o variabila comuta de la0 la 1, daca pentru anumite valori constante ale celorlate variabile, functia se reduce laforma: x · x = 0.

Miminizarea circuitului se realizeaza cu trei implicanti primi esentiali, prezentati ın FiguraP2.16.IPE(1, 3, 5, 7) = (A+D),IPE(10, 11, 14, 15) = A+ C,IPE(4, 12) = (B + C +D).Acestora le corespunde expresia:

F = (A+ C)(A+D)(B + C +D)

Cand A=0, B=1 si C=0, functia se reduce la F = DD. La trecerea de la maxtermul5 (A + B + C + D), la maxtermul 4 (A + B + C + D) nu se produce hazard, dar latrecerea de la maxtermul 4 la maxtermul 5 se produce hazard deoarece D comuta din 0 ın1. Hazardul se elimina prin introducerea implicantului prim IP (4, 5) = (A+B +D).Intre IPE(10,11,14,15) si IPE(4,12), cand A=1, B=1 si D=0, functia se reduce laF = CC. La trecerea de la maxtermul 14 (A+B+C+D) la maxtermul 12 (A+B+C+D)nu se produce hazard, dar la trecerea de maxtermul 12 la maxtermul 14 se produce hazarddeoarece variabila C comuta din 0 ın 1 (Figura P2.16-b. Hazardul se elimina prin intro-ducerea implicantului prim IP (12, 14) = (A+B +D).Intre IPE(10,11,14,15) si IPE(1,3,5,7), cand B=1, C=1 si D=1, functia se reduce laF = AA. La trecerea de la maxtermul 15 (A+B+C+D) la maxtermul 7 (A+B+C+D)nu se produce hazard, dar la trecerea de la maxtermul 7 la maxtermul 15 se produce hazarddeoarece variabila comuta din 0 ın 1. Hazardul se elimina prin introducerea implicantuluiprim IP (3, 7, 11, 15) = C + D. Aici s-a luat ın considerare si comutatia de la maxtermul3 la maxtermul 11.In Figura P2.16-c este reprezentata implementarea care elimina hazardul static 0 pentrufunctia data.

Page 12: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

12 CAPITOLUL 2. CIRCUITE LOGICE COMBINATIONALE

A B C D

DDCCBBAA

A C A DB C D A B C A B D C D

B+C+D A+D A+B+C A+B+D C+DA+C

Adaugare pentrueliminarea hazarduluistatic "0"

t

t

t

t

t

tt6t5t4t3t2t1t0

C

C

A+C

D+A

F

B+C+DHazard

0 0

0

0 0

0

0 000

00 01 11 10

00

01

11

10

ABCD

IPE(A+C)IP,adaugat A=1,B=1,D=0IPE(A+D)

(C+D)IP,adaugat (A+B+D)

IP,adaugat(A+B+C)

F=(A+D)(A+C)(B+C+D)

a)

b)

c)

Figura P 2.16

P2.17Rezolvare:

Pentru valori constante ale tuturor variabilelor functiei, ın afara de variabila xi, dacafunctia de tipul FD poate fi adusa la expresia xi + xi = 1 iar functia de tipul FC poate fiadusa la expresia xixi = 0 atunci poate apare hazard. Fizic, la comutatia variabilei xi dela 1 la 0 exista un interval, datorat inversorului xi, cand xi+xi = 0! iar pentru comutareavariabilei xi de la 0 la 1 exista un interval cand xixi = 1!.

P2.19Rezolvare:

Din structura circuitului se deduce expresia functiei logice:

f = AB ·A · C ·AB = AB ·A · C +AB = (AB +A) · C +AB =

= ABC +AC +AB = (ABC +AB) +AC = AB(C + 1) +AC = AB +AC.

Page 13: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

13

Diagrama V-K din Figura P2.19-a indica faptul ca se poate genera hazard static 1. Candse trece de la mintermul 7 (A=1, B=1 si C=1), la mintermul 3 (A=0, B=1 si C=1), functiase reduce la expresia F = A+A care ia valoarea nepermisa 0 la comutatia variabilei A dela 1 la 0.Hazardul se poate elimina prin adaugarea implicantului prim BC obtinandu-se functiaF = AB +AC +BC cu implementarea din Figura P2.19-b.

00 01 11 10

0

1

1

11 1

IP,BC(adaugat)b)a)

CAB

IPE(AB)IPE(AC)

A

B

C

f

Figura P 2.19

P2.20

Rezolvare:Tabelul de adevar al functiei este dat ın Figura P2.20-a din care se deduce arborele dedecizie binar din Figura P2.20-b. Apoi, aplicand regula de eliminare a nodurilor termi-nale duplicate, se obtine OBDD numai cu doua noduri terminale ca ın Figura P2.20-c.Continuand cu reducerea, eliminarea nodurilor neterminale duplicate, doua din nodurilex1 avand arcele low(x1) la nodul terminal 0 si high(x2) la nodul terminal pot fi exclusesi se obtine OBDD din Figura P2.20-d. Si prin ultima transformare, eliminarea nodurilorneterminale care au low(x) = high(x), un nod al variabilei x1 si unul al variabilei x0 potfi neglijate si se obtine forma redusa de OBDD din Figura P2.20-e.

P2.21

Rezolvare:Din reprezentarea pe diagrama V-K din figura P2.21-a se deduce ca acoperirea ce duce laun numar minim de porti NAND este: BD dar nu ABDC si AC dar nu ABCD deci functiaf se exprima:

f = BD(ABCD) +AC(ABCD)

cu implementarea din figura P2.21-b.

Page 14: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

14 CAPITOLUL 2. CIRCUITE LOGICE COMBINATIONALE

x1x2 x0

x1x1

x1 x1 x1x1x1

x0 x0 x0 x0

x0 x0 x0

x0 x0 x0 x0

x2

x2 x2x2

0 0 00 00 0

00

0

0

000 0

011 1 1

1

1

1111 1

11 1

1 1 1

1 1 1

0 0 0

00000

0 0

0 0 0 0

1

1 1

1

1

10

0

0 0

1

1

1

10

1

10

0

0

0

00

0 1

1

1101

1

0

f0

1

0 1

a) b)

c) d) e)

Figura P 2.20

00

01 1

1 1

1110

11

00 01

A

B

D

Cb)a)

ABCD

1f

11 10

Figura P 2.21

Page 15: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

15

P2.22Rezolvare:

O definitie posibila pentru DAR este “f1 este adevarata daca A1 si B1 sunt adevarateDAR fie A2 sau B2 sunt false; f2 este adevarata daca A2 si B2 sunt adevarate DAR fieA1 sau B1 sunt false“. Din tabelul de adevar (de patru variabile), prin minimizare cudiagrama V-K, rezulta

f1 = A1B1(A2B2) ; f2 = A2B2(A1B1)

cu structura din Figura P2.22-a. Pentru functia f rezulta implementarea din FiguraP2.22-b (analizand tabelele de adevar pentru f1 si f2 rezulta ca functia data poate fiexprimata ca: f = f1

⋃f2).

A2

A2

B1

A1B1

A1

B2

B2

2f2f

1f1f

f

b)a)

Figura P 2.22

P2.23Rezolvare:

Codificatorul este un nivel de OR, ın cazul acesta necesita patru porti OR cu 8 intrari(la fiecare poarta se aplica doar 8 din cele 16 intrari Ii, i = 0, 1, 2 . . . 15). Deoarece

A + B = A ·B adica operatorul OR este echivalent cu operatorul NAND cu intrarilenegate, implementarea cu 4 porti NAND cu 16 intrari este posibila, iar semnalele de in-trare sunt active ın starea low, Ii L, dar iesirile sunt active ın starea H, ca ın Figura P2.23.

I1_LI2_LI3_LI4_L

I5_L

I6_L

I7_L

I8_L

I9_L

I10_LI11_L

I12_LI14_L

I15_L I13_L

O3 O2 O1 O0

I0_L

Figura P 2.23

Page 16: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

16 CAPITOLUL 2. CIRCUITE LOGICE COMBINATIONALE

P2.24

Rezolvare:Circuitul 74XX148, al carui tabel de adevar si simbol de reprezentare sunt date ın FiguraP2.24-a si b, are o intrare de validare EI si opt intrari (I7, . . . , I0; I7 are prioritatea ceamai ridicata) active ın stare “low“. Circuitul genereaza pe iesirea A2 LA1 LA0 L numarulintrarii de prioritate cea mai ridicata care a fost activata. Numarul intrarii este exprimatın binar, ın complement fata de 1, deoarece iesirile sunt active ın starea “low“. Iesirea GSeste activata (“0“) cand cel putin o intrare este activata. Iesirea EO este activata (“0“)cand circuitul este validat de catre semnalul EI L dar nici o intrare nu a fost activata.Semanlul EO L poate fi utilizat pentru a cascada mai multe circuite, ın scopul obtineriiunei structuri de codificator cu mai multe intrari.Observatie:Printr-un artificiu de conectare a semnalelor I0, I1 . . . I7 (I7 fiind evenimentul cu nivelulcel mai ridicat de prioritate), la cele opt intrari ın felul urmator: I0 → 7, I1 → 6 . . . I7 → 0,cuvantul de iesire y2 Ly1 Ly0 L va indica ın binar (necomplementat) intrarea activata cuprioritatea cea mai scazuta. Aceasta este o modalitate de realizare a unui codificator pen-tru prioritatea cea mai scazuta.Utilizarea celui de al doilea codificator prioritar de opt intrari, 74XX148 pentru struc-turarea codificatorului prioritar de 16 intrari va implica la subcuvantul de iesirey2 Ly1 Ly0 L adaugarea ınca a unui bit y3 L. Acest bit y3 L va fi generat doar atunci candexista cel putin o intrare activa ın intervalul A15 L . . . A8 L, ceea ce determina totdeaunapentru al doilea circuit 74XX1482 sa activeze semnalul GS L. Deci, pentru generareacelui de al patrulea bit de iesire se considera y3 L ≡ GS L.Pentru structurarea serie, figura P2.24-c, al doilea circuit este validat permanent princonectarea semnalului EI L la masa. In schimb, primul circuit este necesar sa fie vali-dat de catre al doilea doar atunci cand nici o intrare din intervalul A15 L . . . A8 L nu esteactivata (iesirea EO devine activa) ceea ce se poate realiza prin conectarea EO ≡ EI.Bitii y2 L, y1 L, y0 L ai subcuvantului de iesire sunt colectati fie de la iesirile O2, O1, O0

ale primului codificator, cand sunt activate intrari numai din intervalul A7 . . . A0, SAUde al doilea codificator, cand sunt activate intrari din intervalul A15 . . . A8. Deci , inple-mentarea se face cu porti NAND (deoarece semnalele de la codificatoare sunt active ınstarea low si cuvantul de iesire este ın complement fata de unu). La aceasta structurareserie, timpul de propagare fiind prin cele doua codificatoare, viteza circuitului este scazuta.O ımbunatatire se obtine prin structurarea paralela.Structurarea paralela este reprezentata in figura P2.24-d. Validarea celor doua circuiteeste permanenta prin legarea intrarilor EI la masa. Bitul y3 L din cuvantul de iesire esteidentic cu semnalul GS L de la al doilea circuit 74XX1482, la fel ca la structurarea serie.In plus, acest semnal GS L este folosit si pentru selectarea subcuvantului O2O1O0 de laprimul circuit cand sunt activate intrari numai din intervalul A7 . . . A0(GS L = 1) saude la al doilea circuit cand sunt activate intrari si din intervalul A15 . . . A8(GS L = 0).Implementarea selectarii este realizata cu circuitul 74LS157 (4×MUX2 : 1)

Page 17: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

17

I2_L I3_L I4_L I5_L I6_L I7_L A A1_L A0_L GS_L EO_L2_L

0O

O2 O1 O0

EIGS

I7 I6 I5 I4 I3 I2 I1 I0

EO

A11_L

A14_L A13_L10_LA A8_L

A15_LA9_L

A12_L A5_L A3_L

O2 O1 O0

EIGS

I7 I6 I5 I4 I3 I2 I1 I0

EO

A7_L A1_LA0_LA4_LA6_L A2_L

O2 O1 O0

EIGS

I7 I6 I5 I4 I3 I2 I1 I0

EO

A11_L

A14_L A13_L10_LA A8_L

A15_LA9_L

A12_L A5_L A3_L

O2 O1 O0

EIGS

I7 I6 I5 I4 I3 I2 I1 I0

EO

A7_L A1_LA0_LA4_LA6_L A2_L

74XX148 2 74XX148 1

74XX148 174XX148 2

EQ_L EI_L

3_L

EI_L I0_L I1_L

1000000000

x10xxxxxxx

x110xxxxxx

x1110xxxxx

x11110

x111110xxx

xx

xx

x1111110xx

x11111110x

x111111110

1111110000

1111001100

1110101010

1100000000

1011111111

INTRARI IESIRI

EII7I6I5I4I3I2I1I0

O2O1

GS

EO

D1 D0 C1 C0 B1 B0 A1 A0

ESOC OB OA

2_L 1_L 0_L

74XX148a) b)

c)

0_L2_L 1_Ly y y y

yyy3_Ly

74LS154

.

Figura P 2.24

Page 18: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

18 CAPITOLUL 2. CIRCUITE LOGICE COMBINATIONALE

P2.25Rezolvare:

Numarul 2N se exprima printr-un cuvant format de 1 urmat de N zerouri. Numarul binarM este multiplu al numarului 2N daca este ındeplinita relatia:

M = K · 2N

pentru: 2N ∈ 0, 2, 4, 8, 16, 32, 64, 128, K ∈ [0, 255] ıntreg.Relatia este ındeplinita cand dintre cei opt biti m7 . . .m0 ai cuvantul M, cel putin ultimii

A3

IA<B

I7 I6 I5 I4 I3 I2 I1 I0

GS O2 O1 O0

m0 m1 m2 m3 m4 m5 m6 m7

A2 A1 A0 B3 B2 B1 B0

n2 n1 n0

Vcc

A>B A=B A<B

IA<B

IA=B

N

M

y1_L y0_Ly2_L

74LS148

74XX85

f

Figura P 2.25

N biti sunt zero. Solutia problemei se reduce la a determina daca numarul M aplicatpe o intrare are cel putin cei mai putin semnificativi N biti egali cu “0“ cand pe cealaltaintrare se aplica cuvantul N. Determinarea numarului de zerouri din pozitiile cele mai putinsemnificative ale cuvantului M este echivalenta cu aflarea numarului pozitiei primului bit1, ıncepand cu m0.Implementarea acestei solutii apare ca evidenta cu ajutorul circuituluicomparator digital 7485: pe o intrare A a comparatorului se aplica numarul pozitiei mi alprimului bit egal cu 1 din cuvantul M, ıncepand cu pozitia m0, iar pe intrarea B se aplicacuvantul N. La iesirea A > B se obtine functia f, asa ca ın Figura P2.25.Circuitul codificator prioritar, daca se considera ın binar cuvantul de intrare I si cuvantulde iesire O, implementeaza relatia:

O = blog2Ic

Circuitul va genera la iesire numarul O al pozitiei activate, cu prioritatea cea mai ridicataın cuvantul de intrare I.

Conform observatiei de la problema P2.24, inversand ordinea de conectare a bitilorm7 . . .m0 la intrarile I7 . . . I0 ale codificatorului prioritar 74LS148, acesta va calcula la

Page 19: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

19

iesire, ın cod binar natural si nu complementat, pozitia primului bit activ pe intrare cuprioritatea cea mai scazuta, ceea ce este necesar ın aceasta problema. Iesirile O2, O1 si O0

ale codificatorului se conecteaza la intrarile A2, A1, A0 ale comparatorului digital. Bitiicuvantului M se aplica prin inversoare la intrarile comparatorului 7485 deoarece intrarileacestuia sunt active ın stare “L“.

P2.27

Rezolvare:Solutia acestei probleme se bazeaza pe Observatia de la problema P2.24. Structura circuit-ului contine pe doua codicatoare prioritare: unul calculeaza prioritatea cea mai ridicata74XX1481, ın cod complementar fata de 1, iar celalalt 74XX1482 prioritatea cea maiscazuta, Figura P2.27. Cand ın cuvantul de intrare X exista doar un singur bit zero,bitul B3 devine 0, deoarece B3 = GS L = 0, prin sumarea celor doua cuvinte de codde trei biti (unul complementat fata de 1, iar celalalt necomplementat) se obtine pentrus2s1s0 = 111 + C 1 = 111 + 1 = 000 plus 1 transfer la s3, iar s3 = A3 +B3 + 1 = 1, decis3s2s1 = 1000. In cazul ın care nu este activata nici o intrare, GS L = 1, cuvintele de codsunt 111 iar prin sumarea 1111 + 0111 + 1 se obtine s3s2s1s0 = 0111 si C3 = 1. Cand ıncuvantul de intrare exista mai multe zerouri suma celor doua cuvinte de cod este mai micadecat 111 la care adunat C 1 nu va da transfer la s3 deci iesirea f = s3 va fi zero. Decidetectarea singurului zero ın cuvantul de intrare se realizeaza cu iesirea s3 iar numarulbinar, z2z1z0, care exprima pozitia zero-ului ın acest cuvant este generat de 74XX1482.

x1x0x2x3 x4x5 x6x7

X

A1A2A3 B3 B2 A0B1 B0

s1 s0s2s3

C−1

E1

GS O2 O1 O0

E0 E1

GS O2 O1 O0

E0

Z1Z0

Z2

I7 I6 I5 I4 I3 I2 I1 I0 I7 I6 I5 I4 I3 I2 I1 I0

zero−uluiPozitia

74XX148 174XX148 2

Σ

Vcc

"1"C3

f

Figura P 2.27

Page 20: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

20 CAPITOLUL 2. CIRCUITE LOGICE COMBINATIONALE

P2.28

Rezolvare:Codarea pozitiei zeroului celui mai semnificativ pe intrare se poate realiza cu un codificatorprioritar (74LS148), vezi Figura P2.24, iar decodarea pentru iesire se poate realiza cu uncircuit decodificator (7442).

P2.29Rezolvare:

Structura circuitului este data ın Figura P2.29. Codificatorul prioritar 74XX148 genereazape magistrala de date a µP codul perifericului activat Y2 LY1 LY0 L cu prioritatea cea mairidicata iar semnalul de ıntrerupere este generat de GS, IRQ L=GS L. Selectarea coduluipe magistrala de date se realizeaza cu 3×MUX2 : 1 din doua surse:

1- de la iesirea circuitului 74XX148 si corespunde perifericului activat cu prioritateacea mai ridicata, pentru s=0;

2- o valoare cablata 101 cand x7 L = 0 SI x2 L = 0 pentru s=1. Valoarea s=1 se obtinecand y2 L = 0, y1 L = 0, y0 L = 0 SI x2 L = 0 adica y2 L + y1 L + y0 L + x2 L = 1,ceea ce se realizeaza cu un NOR4.

D7_0

IRQIRQ_L

GSI2 I1I3I4I5I6I7 I0

"1" "0" "1"

Magistrala de date

6_Lx7_Lx 5_Lx 4_Lx 3_Lx 2_Lx 1_Lx 0_Lx

S = 0

EI

MUX2:1 MUX2:1 MUX2:1

O2 O1 O074XX148

µ P

0 1 0 1 0 1

7

2_L 1_L 0_Ly y y

Figura P 2.29

P2.30

Rezolvare:Tabelul de adevar si simbolul de reprezentare pentru circuitul 74XX138 sunt date ınFigura P2.30-a si 2.30-b. Pentru un cuvant de cod cu lungimea de trei biti aplicat pe

Page 21: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

21

intrarile A,B,C se activeaza doar una din iesirile yi L, i = 0, 1 . . . 7. Aceasta decodi-ficare este validata de conjuntia a trei semnale de validare G1, G2A L si G2B L, adicaG1 ·G2A L ·G2B L = 1 ceea ce se realizeaza cand G1 = 1, G2A L = 0 si G2B L = 0. Struc-turarea pentru un DCD5:32 este prezentata ın Figura P2.30-c.Circuitele 74XX138 sunt organizate pe doua niveluri de decodificare, pe primul nivel uncircuit iar pe al doilea nivel patru circuite. La fiecare din intrarile A,B,C de pe nivelulal doilea se aplica cei trei biti x2, x1, x0 mai putin semnificativi din cuvantul de intrare.Primii doi biti mai semnificativi x4 si x3 sunt aplicati la decodificatorul din primul nivelsi de la acesta sunt utilizate doar patru iesiri care sunt aplicate ca semnale de validareG2B L la cele patru circuite din nivelul doi. Prin acest semnal de validare G2B L multimeaiesirilor y31 L, y30 L . . . y1 L, y0 L este impartita ın patru intervale 31-24, 23-16, 15-8, 7-0 siasignat cate un interval unui circuit decodificator. Precautie trebuie acordata la factorulde ıncarcare al semnalelor de validare de pe nivelul al doilea.

INTRARI IESIRIde selectarede validare

G1 A CBG2A_L G1A_L O1_L O2_L O3_LO0_L O5_LO4_L O6_L O7_L

x x x x xx x x xx

x x x x x1

1

0 11 1 1 1 1 1 11 1 1 1 11 1 1 1 1

1 1 1 1 11 1 1 1 1

1 1 1 1 11 1 1 1 1

1 1 1111

1 111

11

111

111

111

111

1 11

11

11

00

00

00

00

1

1 1 1 1 1

11111

11111111

00000000

00000000

0000

00 0

0

000 0

11

11

1111 11 1 1

A

B

C

G1

G2A

G2B

O0

O1

O2

O3

O4

O5

O7

O6

x4 x3 x2 x1 x0

CBAG1G2A G2B

O774XX138

O0

CBAG1G2A G2B

O774XX138

O0

CBAG1G2A G2B

O774XX138

O0

CBAG1G2A G2B

O774XX138

O0

G1G2A G2B

O0O1O4O7 O6 O5 O3 O2

y31_L y24_L y23_L y16_L y15_L y8_L y7_L y0_L

DCD3:8

74XX138

74XX138

VALIDARE

A B C

c)

a)b)

k

Figura P 2.30

Page 22: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

22 CAPITOLUL 2. CIRCUITE LOGICE COMBINATIONALE

P2.31

Rezolvare:Realizarea functiei Y1 pe un DCD3:8 este o implementare banala, Figura P2.31-b, deoarece

1 0 0 0 0 0 0 0 0 . . . 0

1 0 0 0 0 0 0 0 01 . . . 0

1 0 0 0 0 0 0 0 0 . . . 01

1 0 0 0 0 0 0 0 0 . . . 01

o7 o6 o5 o4 o3 o2 o1 o0

I2 I1 I0

o7 o6 o5 o4 o3 o2 o1 o0

I2 I1 I0

22 3 22 4 22 1 22 0

Y2=22xY1=2xx

0 1

1

2

3

4

5

6

7

1

1

1

1

11

1

0

00

000

0000

0000000000

0000000

1 0

1

1

1

0 0

0 0 0 0

0 0 0 0 0 0 0 0

128 ori

64 ori

32 ori

16 ori

x2 x1 x0

27 26 25 24 23 22 21 20

x2 x1 x0

1=2 x

2=2 2 x

22 2

b)

a)

c)

DCD 3:8

DCD 3:8

Y

Y

Figura P 2.31

tocmai functia de exponentiere este realizata de decodificator daca se considera cuvintelede intrare si de iesire ca numere binare.

Din tabelul din Figura P2.31-a se observa ca pentru functia Y2, ca si pentru functiaY1 pe intervalul de definitie [000,111] se obtin tot opt valori dar cu un numar de zero-uridiferit pentru un acelasi x si de asemenea cand se trece de la x la x+1 cuvantul Y2 creste cumai mult de un zero. Pe baza acestei observatii se poate implementa Y2 ın felul urmator:cuvantul de iesire Y2 se obtine cu acelasi circuit ca si Y1, dar se intercaleaza ıntre bitiicuvantului Y1 un numar de biti zero conform valorilor calculate ın tabel. Acesti biti zero,intercalati ın cuvantul de iesire, se obtin prin calblare la masa, Figura P2.31-c.

Page 23: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

23

P2.32Rezolvare:

Fiecare din operatiile 2x1 , 2x2 poate fi implementata pe cate un circuit 74LS138. Im-punand conditia ca x1 6= x2 niciodata iesirile de acelasi rang nu vor fi activate simultan side asemenea suma 2x1 + 2x2 nu va depasi 28 − 1, adica un numar care este un cuvant peopt biti.Conditia x1 6= x2 va determina ca fiecare bit din cuvantul de iesire sa fie o suma doar acombinatiilor 0 + 0 = 0, 0 + 1 = 1 dar niciodata a combinatiilor 1+1 deci implementareaadunarii se poate face cu o poarta OR si nu cu o poarta XOR. Utilizand circuitul 74LS138cu iesirile active ın stare zero adunarea anterioara se implementeaza cu porti NAND

cu doua intrari Pi + Pj = Pi + Pj = Pi · Pj = yi L · yj L, deci doua circuite 74LS00(4×NAND cu doua intrari). Rezulta implementarea din Figura P2.32.Pentru cazul cand se elimina restrictia x1 6= x2, pentru sumarea 2x1 + 2x2 , se vor utilizadoua circuite sumatoarea 74LS83. Daca circuitele DCD sunt cu iesirile active ın starezero, aceste iesiri trebuie negate ınainte de sumare.

G A2G1 G2 B A B C

O7 O6 O5 O4 O3 O2 O1 O0

Vcc

G A2G1 G2 B A B C

O7 O6 O5 O4 O3 O2 O1 O0

VccX1 X2

y7_L y0_L y7_L y0_L

Y

74LS138 74LS138

2x74LS00

Figura P 2.32

P2.34Rezolvare:

Circuitul DCD n : 2n produce la iesire toti cei 2n mintermi de n variabile. Din punctul devedere al implementarii unei functii logice de n variabile data sub forma FND (suma deproduse), circuitul DCD n : 2n poate fi un suport. Existand generati toti cei 2n mintermi,deci nivelul SI de implementare, mintermii necesari functiei sunt selectati ın nivelul SAUcare se adauga ın exterior. Deoarece, ın general, la iesirea DCD sunt generati minterminegati, expresia functiei FND trebuie exprimata ın felul urmator:

f(A,B,C) = P0 + P1 + P3 + P5 + P7 = P0 · P1 · P3 · P5 · P7 =

= y0 L · y1 L · y3 L · y5 L · y7 L

Page 24: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

24 CAPITOLUL 2. CIRCUITE LOGICE COMBINATIONALE

Pi = yi L pentru: i = 0, 1 . . . 7Rezulta ca ın exterior trebuie sa se adauge o poarta NAND care sa colecteze semnalele

O0

O1

O2

O3

O4

O5

O6

O7

A

B

C

G1

G2A

G2B

A

B

C

CC

74L

S138

V

O0

O1

O2

O3

O4

O5

O6

O7

A

B

C

G1

G2A

G2B

A

B

C

CC

74L

S138

V

y6_Ly6_L

VCC

74LS30

F(A,B,C)F(A,B,C)

1/3 74LS21

y1_L

y0_L

y3_L

y5_L

y

b)a)

2_L

3_Ly

Figura P 2.34

y0 L, y1 L, y3 L, y5 L si y7 L. Se poate utiliza circuitul 74LS30 care contine o singura poartaNAND cu opt intrari ca ın Figura P2.34-a.Pentru cazul ın care functia are un numar de mintermi mai mare decat 2n−1, se poate facesiteza functiei negate f , deoarece acesta se poate exprima cu mai putini mintermi.

f(A,B,C) = P2 + P4 + P6 = P2 + P4 + P6 = P2 · P4 · P6 →

→ f(A,B,C) = P2 · P4 · P6 = y2 L · y4 L · y6 L·In exterior se adauga o poarta AND cu trei intrari, ceea ce se poate implementa cu 1/3din circuitul 74LS21 (trei porti AND pe chip) ca ın Figura P2.34-b.Implementarea cu DCD se poate realiza pornind de la forma FNC (produse de sume) afunctiei. Aceeasi functie de mai sus poate fi exprimata si transformata ın felul urmator:

f(A,B,C) =∏

(2, 4, 6) = S2S4S6 = P2 · P4 · P6 = y2 L · y4 L · y6 L

deoarece Si = Pi pentru i = 1, 2 . . . 7 Rezulta o implementare cu o poarta AND cu treiintrari ca ın Figura P2.34-b.De asemenea, se poate face sinteza functiei negate f exprimate sub forma FNC:

f(A,B,C) =∏

(0, 1, 3, 5, 7) = S0 · S1 · S3 · S5 · S7 = P0 · P1 · P3 · P5 · P7

f(A,B,C) = P0 · P1 · P3 · P5 · P7 = y0 L · y1 L · y3 L · y5 L · y7 L

Rezulta implementarea din Figura P2.34-a.Pentru implementarea unui CLC cu iesiri multiple pe un singur DCD unii mintermi pot fiutilizati de mai multe porti SAU externe, caz ın care se impune verificarea valorii maximea fan-out-ului pentru semnalele respective.

Page 25: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

25

P2.36Rezolvare:

Sumatorul implementat este prezentat ın Figura P2.36.

O0

O1

O2

O3

O4

O5

O6

O7

A

B

C

G1

G2A

G2B

A

B

C

CC

74L

S138

V

P2

P4

P7

P1

P3

P5

P6

P7

A1

A2

A3

A4

B1

B2

B3

B4

y1

y2 C i

i

i

i−1

74LS20

si

Figura P 2.36

P2.37Rezolvare:

Pentru implementarea unei functii de n variabile cu un DCDn : 2n functia nu necesitaminimizare deoarece ın nivelul SI sunt produsi toti mintermii de n variabile; ın exterioruldecodificatorului pe un nivel SAU trebuie colectati toti mintermii existenti ın expresiafunctiei.

P2.38Rezolvare:

Toti mintermii acestor functii sunt produsi de un circuit 74XX138, DCD3:8 si deoarecefiecare functie are numai doi mintermi sunt necesare patru porti NAND cu doua intrari carese gasesc ın circuitul integrat 74XX00. Deci sunt necesare numai doua circuite integrate,Figura P2.38.

A AB BC C

O7

O6

O4

O1

O0

O2

O5

O3

G2B

R

74XX0074XX138

G2A

f1

f2

f3

f4

G1

VCC

Figura P 2.38

Page 26: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

26 CAPITOLUL 2. CIRCUITE LOGICE COMBINATIONALE

P2.39Rezolvare:

Glitch-urile (hazardul) pe iesiri pot apare cand comutatia semnalelor aplicate pe intrarileA,B,C, Figura P2.39-a, nu este sincrona. In acest caz semnalele de intrare nu comutasincron deoarece se obtin de la un numarator asincron; datorita ıntarzierilor din interiorulnumaratorului asincron semnalul X1(21) va avea o ıntarziere fata de comutarea semnaluluiX0(20), de asemenea X2(22) va avea o ıntarziere fata de X1. In punctele notate cu 1,2,3,4,cand comuta mai mult de un semnal de intrare, Figura P2.39-b, pot apare glitch-uri ınsemnalele de iesire yi L, i = 0 . . . 7 ale circuitului decodificator

- In punctul 1 la comutarea de la 001 la 010 poate apare starea trazitorie la intrare000 (001→ 000→ 010) care va genera un glitch ın semnalul y0 L

- In punctul 2 la comutarea de la 011 la 100 pot apare starile trazitorii la intrare 010si 000 (011→ 010→ 010→ 100) care vor genera glitch-uri ın y0 L si y2 L

- In punctul 3 la comutarea de la 101 la 110 poate apare starea trazitorie la intrare100 (101→ 100→ 110) care va genera un glitch ın semnalul y4 L

- In punctul 4 la comutarea de la 111 la 000 pot apare starile trazitorii 110 si 100(111→ 110→ 100→ 000) care vor genera glitch-uri ın semnalul y6 L si y4 L

22

21

20

A

B

"1"

O0

O1

O2

O3

O4

O5

O7

O6

"0"

G1

G2B

G2A

Numarator

CLOCKC

y0_L

y1_L

y2_L

y3_L

y4_L

y5_L

y6_L

y7_L

y7_L

y6_L

y5_L

y4_L

y3_L

y2_L

y1_L

y0_L

x1

x2

x0

1 2 3 4

a) b)

Figura P 2.39

O modalitate de a elimina glitch-urile ın circuitele la care se aplica iesirile de la decod-ificator, yi L, este strobarea, adica fiecare semnal din aceastea este intrarea unei portiAND, iar aceasta poarta este validata, pe o alta intrare, cu un semnal care se aplica nu-mai dupa trecerea perioadei de timp tranzitoriu. (S-a considerat ca ın circuitul 74XX138toate caile de propagare, de la intrarile de selectare A,B,C la iesirile Oi, au acelasi timpde propagare).

Page 27: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

27

P2.40

Rezolvare:Analizand compunerea semnalului si = P1 + P2 + P4 + P7 se constata ca va aparea unimpuls parazit “1“ ın valoarea sa determinat de glitch-ul y4 din momentul (3) (vezi FiguraP2.39-b). Celelalte doua momente (2) si (4) reusind doar sa extinda, eventual, duratavalorii “1“ la ınceput respectiv la sfarsit. Pentru semanlul Ci = P3 +P5 +P6 +P7 glitch-uldin y6 poate duce la prelungirea duratei valorii de 1 logic, dar nu la o valoare eronata.Eliminarea glitch-urilor generate pe iesirile decodificatorului se poate realiza fie prin uti-lizarea unui numarator sincron dar mai sigur prin activarea (la decodificator) a semnaluluicompus de validare G1 ·G2A ·G2B cu o ıntarziere fata de frontul de comutare al clock-uluila numarator astfel ıncat procesul tranzitoriu sa se fi “consumat“.

P2.41

Rezolvare:O astfel de organizare, Figura P2.41, este posibila deoarece circuitul 74XX138 contine atatsemnale de validare active ın low, G2B L si G2A L cat si un semnal de validare activ ınstarea high, G1. Aplicand bitul cel mai semnificativ, D, al cuvantului de intrare, D ABC,pe intrarea de validare G2B al unui circuit si pe intrarea G1 al celuilalt, atunci iesirileprimului circuit sunt repartizate intervalului 7-0 iar iesirile celui de al doilea intervalului15-8.

ABC

G1 G1G2B G2BG2A G2AB B

O1 O1O7 O7O6 O6O5 O5O4 O4O3 O3O2 O2O0 O0

y7_L y0_Ly15_L y8_L

74XX138 74XX138C C A

D

0 0 1 0

A

.

Figura P 2.41

P2.42

Rezolvare:

f1 =7∑

0

(0, 2, 3, 4); f2 =7∑

0

(0, 1, 5, 7); f3 =7∑

0

(3, 4, 6, 7); f4 =7∑

0

(0, 3, 5, 7)

Page 28: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

28 CAPITOLUL 2. CIRCUITE LOGICE COMBINATIONALE

P2.43Rezolvare:

Cuvantul de date D de pe intrare d31−d0 este ımpartit ın patru intervale d31−d24, d23−d16,d15−d8, d7−d0 si fiecare interval de biti de date se aplica unui circuit 74XX151. La toateaceste patru circuite MUX8:1 se aplica pentru selectare cei trei biti mai putini semnificativix2, x1, x0 ai cuvantului de selectare. Cei doi biti mai semnificativi x4 si x3 se utilizeazapentru generarea semnalelor de selectare a datelor din unul din cele patru intervale. Invarianta din Figura P2.43-a iesirile circuitului decodificator 74XX139, aplicate pe intrarilede validare al multiplexoarelor, selecteaza cate un multiplexor pentru fiecare interval debiti de date. Iesirile Y0 L ale celor patru multiplexoare sunt colectate ıntr-o poarta NAND,daca se utilizeaza iesirile nenegate este necesara o poarta OR.In varianta din Figura P2.42 iesirile celor patru multiplexoare 8:1 sunt selectate la iesirecu un multiplexor 4:1.

D7 D0

O0O1

74XX151G A B C D7 D0

O0O1

74XX151G A B C D7 D0

O0O1

74XX151G A B C D7 D0

O0O1

74XX151G A B C

D7 D0

O0O1

74XX151G A B C D7 D0

O0O1

74XX151G A B C D7 D0

O0O1

74XX151G A B C D7 D0

O0O1

74XX151G A B C

y0 y0_L y0 y0_L y0 y0_L y0 y0_L

y0 y0_Ly0 y0_Ly0 y0_Ly0 y0_L

INTRARI DE SELECTARE

A BG

x 4 x 3 x 2 x 1 x 0 24 23 16 15

O3 O2 O1 O0

31 ... ... ... ...

i

D3 D2 D1 D0BC

G

i

1/274XX153y

x 4 x 3 x 2 x 1 x 0 31...

24 23 15 7

b)

a)

d d d d d d

d d d ... d d ... d d ... d 16 8 0

d 07 d 8

. . . . . .. . . . . .

d

d

INTRARI DESELECTARE

. . . . . . . . . . . .

74xxx139

INTRARI DE DATE − D

INTRARI DE DATE − D

Figura P 2.43

Page 29: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

29

P2.44

Rezolvare:Selectarea unui port la magistrala b3b2b1b0 se poate realiza cu 4×MUX4 : 1. Sunt utilizatecircuitele 74XX253, MUX4:1 cu iesirea TSL, se comanda ın stare normala cand GL = 0,Figura P2.44-a. Porturile P3, P2, P1 si P0 se selecteaza respectiv cu urmatoarele valori alevariabilelor de selectare x1x0(= 11, 10, 01, 00). Aceeasi functie de selectare se poate realizasi cu patru buffere TSL neinversoare de patru biti 74XX253, Figura P2.44-b. Comanda(si selectarea) unui buffer ın stare normala de functionare se realizeaza cu semnalele deiesire de la un DCD2:4, 74XX139.

I3 I2 I I

74XX253

1 0 I3 I2 I I

74XX253

1 0 I3 I2 I I

74XX253

1 0I3 I2 I I

74XX253

1 0

b3 bb

b2

10

b3 bb

b2

10

74XX 243 74XX 243 74XX 243

P3

P2

P1

P0

OE_L

AB

AB

AB

AB0 0 0 0

x 1

x 0

a)

G A B

O3 O2 O1 O0

74XX139

P3 P2 P1 P0

X0X1

G

74XX 243

b)

GGGG

Figura P 2.44

Page 30: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

30 CAPITOLUL 2. CIRCUITE LOGICE COMBINATIONALE

P2.46

Rezolvare:Implementarea functiei de n variabile pe un MUX 2n : 1 se realizeaza prin maparea directa(unu la unu) a tebelului de adevar sau a diagramei V-K pe intrarile de date ale multiplex-orului.Cand se realizeaza o structura de MUX 2n : 1, din multiplexoare cu un numar de cai maimic decat 2n, numarul fiecarei intrari rezultante (numerele ınscrise ın paranteze ın figuraP2.46) se obtine ca un cuvant ın binar compus din alaturarea bitilor ce se ıntalnesc la par-curgerea tuturor intrarilor de la MUX-urile componente de pe calea rezultanta respectiva.Foarte adesea implementarile cu MUX 2:1 pe primul nivel, chiar si pe urmatoarele niveluri,sunt avantajoase deoarece pentru calculul functiilor banale (x0, x0, 0, 1) multiplexoarele 2:1pot fi eliminate.

0

1

0

1

0

1

1

0

00

01

10

11

MUX 4:1

00

01

10

11

MUX 4:1

0

1

0

1

0

1

0

1

2:1MUX

0

1

0

1

0

1

0

1 2:1MUX

1

1

1

1

c

c

c

1

12 terminale3xMUX 2:1

1

0

0

1

1

1

0

1

(0)

(4)

(2)

(6)

(1)

(3)

(5)

(7)

0

1

MUX 2:1

B A C B A

2xMUX 4:11xMUX 2:118 terminale

1

1

0

1

0

0

1

1

000

001

010

011

100

101

110

111

MUX 8:1

(7)

(5)

(3)

(1)

(6)

(2)

(4)

(0) 1 MUX 8:112 terminale

A B C

00011011

MUX4:1

B A1

c

c

c 1 MUX 4:112 terminale

1

0

1

0

0

1

1

1

ff

1

0

(0)

(4)

(2)

(6)

(1)

(5)

(3)

(7)

C

2:1MUX

2:1MUX

2:1MUX

2:1MUX

2:1MUX

2:1MUX

2:1MUX

(0)

(4)

(2)

(6)

(1)

(5)

(3)

(7)

C

2:1MUX

2:1MUX

ff

Figura P 2.46

Page 31: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

31

P2.48 Fie functia f(A,B,C,D) =∑

(3, 6, 11, 14, 15) +∑d(2, 5, 12, 13). Sa se imple-

menteze cu circuitul 74LS151, MUX 8:1.Rezolvare:

Pe circuitul 74LS151 MUX 8:1, ca circuit universal de trei variabile, nu se poate imple-menta functia de patru variabile prin maparea directa pe intrari a tabelului de adevar. Inschimb, daca una din variabile este introdusa ın coeficientii functiei, ca variabila reziduu,rezulta o functie de trei variabile cu exprimarile urmatoare:

VCC

VCC VCC

A B C A B D A C D

B C D

CDB

C D1/2 74LS151

A B

D0

D1

D2

D3

ENA BA

a) b) c)

d) e)

D0D1D2D3D4D5D6D7G A B C

74LS151

D0D1D2D3D4D5D6D7G A B C

74LS151

f

ff

f

D0D1D2D3D4D5D6D7G A B C

74LS151

D0D1D2D3D4D5D6D7G A B C

74LS151

D0D1D2D3D4D5D6D7G A B C

74LS151

D0D1D2D3D4D5D6D7G A B C

74LS151

VCC

ff f

f

ff

Figura P 2.48

f(D,A,B,C) = 0 ·ABC + (D/0) ·ABC + (D/0) ·ABC +D ·ABC + 0 ·ABC +

+ D ·ABC + (0/1) ·ABC + 1 ·ABCf(C,A,B,D) = (0/C) ·ABD + C ·ABD + C ·ABD + (0/C) ·ABD + 0 ·ABD +

+ C ·ABD + (C/1) ·ABD + (C/1) ·ABDf(B,A,C,D) = 0 ·AC D + (0/B) ·ACD + (B/1) ·ACD +B ·ACD +

+ (0/B) ·AC D + (0/B) ·ACD +B ·ACD + 1 ·ACDf(A,B,C,D) = 0 ·BC D + 0 ·BCD + (0/A) ·BCD + 1 ·BCD + (0/A) ·BC D +

+ (0/1) ·BCD + 1 ·BCD +A ·BCD

Page 32: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

32 CAPITOLUL 2. CIRCUITE LOGICE COMBINATIONALE

Pentru aceste exprimari, se obtin implementarile din Figura P2.48-a,b,c,d. Aceste imple-mentari sunt recomandate deoarece cei opt coeficienti reziduu care se aplica pe intrarilecircuitului 74LS151 sunt valori banale care nu trebuie sa fie calculate. Introducand douavariabile reziduu se obtine exprimarea:

f(C,D,A,B) = (C/CD) ·AB + (C ⊕ C/CD) ·AB + (CD) ·AB + (1/C) ·AB

Implementarea este prezentata ın figura P2.48-e, unde s-a utilizat un MUX 4:1. La aceastaimplementare sunt necesare anumite calcule, realizate cu porti simple, pentru coeficintiiaplicati pe intrarile multiplexorului.

P2.50

Rezolvare:Functia fiind de cinci variabile, pentru implementare este necesara introducerea ın expresiacoeficientilor a doua variabile reziduu. Deoarece ın expresia functiei se poate factoriza

VCC

D0D1D2D3D4D5D6D7G

A B C

A C D

74LS151A

E

f

f

Figura P 2.50

variabila E, aceasta poate fi utilizata pentru comanda validarii circuitului, aplicata peborna G, deci este necesara numai o singura variabila reziduu. Expresia data se transformaın felul urmator:

f(A,B,C,D,E) = EA[B + CD] +A[BC + CD] =

= EA[B(C + C)(D +D) + CD(B +B)] +A[BC(D +D) + CD(B +B)] =

= EA[P1 + P4 + P5 + P7] +A[P2 + P3] + P6 + 0 · P0

Termenii produs sunt calculati numai pentru cele trei variabile B,C,D. Implementareaacestei expresii este reprezentata ın Figura P2.50.

Page 33: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

33

P2.52Rezolvare:

Pentru functiile de mai multe variabile, la care numarul variabilelor introduse ca variabilereziduu este relativ mare, se poate utiliza pentru calculul coeficientilor o structura de DCDcareia i se adauga nivelul de SAU ın exterior. O functie de j variabile se implementeaza cuun MUX cu n intrari de selectare si mai multe functii de (j−n) variabile, care se calculeazacu un DCD(j−n) : 2(j−n), plus nivelul de SAU exterior, si care, apoi, se aplica pe intrarilemultiplexorului. In acest sens, pentru implementarea cu circuitul 74LS153, MUX4:1, sicu circuitul 74LS138, DCD3:8, este necesar ca functia sa fie exprimata ın functie de douavariabile C si D. Celelalte trei variabile, A,B si E sunt introduse ın expresia coeficientilorca variabile reziduu. In plus, expresiile coeficientilor trebuie sa fie functii de mintermii Pi,de cele trei variabile A,B si E, pentru a putea fi calculate de circuitul 74LS138, plus nivelulde SAU exterior. Pentru aceasta implementare expresia initiala a functiei se transformaın felul urmator:

f(A,B,C,D,E) = ABE +ABDE +ABCE +ACDE =

= ABE(C + C)(D +D) +ABDE(C + C) +ABCE(D +D) +ACDE(B +B) =

= ABECD +ABECD +ABECD +ABEC D+

+ABECD +ABECD +ABECD +ABECD +ABECD =

= (ABE +ABE +ABE) · CD + (ABE +ABE +ABE) · CD + (ABE +ABE) · CD+

+(ABE) · C D =

= (P3 + P1 + P5) · CD + (P3 + P5 + P7) · CD + (P3 + P1) · CD + P3 · C DAceasta expresie este implementata ın Figura P2.52.

O0

O1

O2

O3

O4

O5

O6

O7

ABC

G1

G AG2 B

2

74L

S138

1

0

11 10 01 00

EN1/2 74LS153

F(A,B,C,D,E)A B E C D

Vcc

Figura P 2.52

Page 34: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

34 CAPITOLUL 2. CIRCUITE LOGICE COMBINATIONALE

P2.54

Rezolvare:Uzual este circuitul convertor care pentru cele 10 cifre zecimale (0, 1, . . . , 8, 9) exprimateın BCD (0000, 0001, . . . , 1000, 1001) genereaza codul binar de 7 segmente pentru comandaafisoarelor compuse din 7 segmente, de data aceasta se cere un circuit convertor imple-mentat ın ROM care realizeaza conversia inversa.Tabelul de adevar pentru conversia cuvantului de cod 7 segmente ın BCD este dat ın FiguraP2.54-a care poate fi implementat pe un circuit ROM cu capacitatea de 27× 4 = 512 biti,cuvantul de adresa este abcdefg iar cel de iesire WXY Z. Deoarece la intrare, din cele 128cuvinte posibile, pot apare doar 10 cuvinte de cod 7 segmente, circuitul ROM este utilizatdoar (10 : 128)100 = 7, 8%.

O prima reducere a capacitatii circuitului ROM se poate obtine ın felul urmator. Cuultimii cinci biti cdefg se pot codifica 25 = 32 configuratii diferite, iar in tabelul din FiguraP2.54-a exista doar 7 configuratii diferite cu acesti cinci biti care sunt prezentate ın tabeluldin Figura P2.54-b. Aceste 7 configuratii diferite de cinci biti sunt transcodate ıntr-uncuvant de cod intermediar de trei biti A,B,C. Cu aceasta transcodare intermediara plusconfiguratiile formate cu cei doi biti a,b din tabelul din Figura P2.54-a se formeaza untabel de adevar, Figura P2.54-c, care are 10 configuratii pe intrare dar care nu mai sunt ex-primate prin 7 biti ci printr-un cuvant de 5 biti ABCab. Implementarea corespunzatoare,Figura P2.54-d, a acestui tabel de adevar se realizeaza cu un circuit ROM2 de capacitate(32×3) biti=96 biti pentru transcodare si un circuit ROM1 de capacitate (32×4) biti=128biti, capacitatea memoriei a scazut fata de implementarea anterioara de la 512 la 224 biti.Se mai poate reduce capacitatea ROM daca se elimina din cele 7 variabile de intrarevariabilele care sunt redundante. Sunt redundante acele variabile de intrare care suntindiferente ın definirea iesirilor W,X, Y, Z (iesirile pot fi exprimate si fara acestea), decipot fi eliminate. Analizand tabelul de adevar din Figura P2.54-a se constata ca se poateelimina fie perechea de variabile bc fie perechea cd, cu cele cinci variabile ramase, 25 = 32,se pot acoperi cele 10 configuratii de intrare distincte (32 > 10). Eliminand variabilele bsi c, se observa ca pentru oricare din configuratiile de variabile adefgh din tabel nu core-spund doua configuratii diferite ale cuvantului WXY Z. De exemplu, daca configuratiade intrare adefg = 11101, caruia ıi corespunde cuvantul de iesire 0010 (linia a treia dintabelul din Figura P2.54-e), presupunem, ca ar mai fi prezenta si pe linia a cincea dintabel caruia ıi corespunde cuvantul de iesire 0100, atunci ın cuvantul de intrare 11101 maitrebuie o variabila prin care sa se faca distinctia pentru cele doua cuvinte de iesire 0010 si0100, deci variabila eliminata nu este redundanta si trebuie pastrata. Tabelul de adevarın care s-au eliminat variabilele b si c, care sunt redundante, este implementat, FiguraP2.54-f, pe un circuit ROM de capacitate (32× 4) biti=128 biti.Se poate merge mai departe cu aceasta reducere prin includerea variabilelor d si g ıntr-ofunctie logica AND, H = g ·d, astfel numarul variabilelor care se aplica la intrarea unui cir-cuit ROM se reduce la patru a, e, f si H, Figura P2.54-g. Implementarea corespunzatoareeste prezentata ın Figura P2.54-h si necesita un circuit ROM de capacitate (16×4) biti=64biti si o poarta AND.

Page 35: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

35

ZECIMALACIFRA

INTRARI IESIRICodul binar fragmente Y ZXW

(2 )3 (22) (2 )1 (20)a b c d e f g0123456789

1 1 1 1 1 11 1

1 1 1 1 1111 1 1 1 1

1 1 11111

11

1111 1 1 1

1111

1 1 11 1

11

1

1

1

1

111

1111

11

11

1111111 1 1 1 1

1 1 11

111

11

1

1

1

1

111

11

11

0

0

0 00

0

0 0

0 00

000

0

00

0 000

00

00000000 0

000

00 0

0

00

00 0

0

0

0

0

0 0 0 00000

0

00

00 0

0 00000

0

0 00

0

1

11

11

11

1

11

11

1

1 11

1

11

1 11111

11

11

1111

11

11

1

11

1

1

1

00

0

0

0

0

0000

0000

000

0000

000

0000

00

0

0 0 00

0 000000 0

000

00

a

bgf

e c

d

asiguratCodul

de intrareSUBCUVANT

A B C a b

Corespunde

zecimalecifrei

A B C 2

9,43508,6

7,1

IESIRIINTRARI

g

ef

dc

ba

A

B

C

WXYZ

ba YXW ZA B C ROM

(96 biti)

ROM

(128biti)

a)

b)

c) d)

32x3bit

32x4bit

Se continua pe pagina urmatoare

Page 36: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

36 CAPITOLUL 2. CIRCUITE LOGICE COMBINATIONALE

0123456789

0123456789

gf

ade

gf

ade

WXYZ

WXYZ

INTRARI IESIRICIFRAZECI−MALA X ZYWa e fd g

1 1 1 11

1 1 1 1 11 1 1 1 1

1 1 11 1 1 1 1 1

1 1 1 1 1 11 1 1 1

1111111 1 1 1 1

0 0 0 0 000000000

0

00

0 0

0

000

000

0 0 00 0 0

0

000

0000 0

00 0

0 0

ROM

(128biti)

(64 biti)

f)

e)

INTRARI IESIRICIFRAZECI−MALA a e f W X Y Z

h)

g)

10

1 1

1 11

111

1 111 1 11 1 1 1

11 1 11 11 11

1 11

10

000

00

0

0

0

000

00000000

00 0

0 0

000 0

0000 00 0 00

0

0

0

0

11

11

1

H(dg)

ROM1

16x4bit

32x4bit

Figura P 2.54

P2.55

Rezolvare:Este necesar un circuit EPROM de capacitate 28 × 4 biti=1kbiti. Daca circuitul ROMın stare neprogramata este “plin“ cu zero-uri ın toate locatiile dupa progmamare suntmodificate numai locatiile de la adresele indicate in tabelul din Figura P2.55. In cuvantulde iesire O3O2O1O0, citit din ROM, bitul O3 = 1 indica prezenta unui singur bit egal cuzero ın cuvantul de intrare/adresa iar bitii O2, O1, O0 formeaza cuvantul care specifica, ınbinar, pozitia ın cuvantul de intrare a singurului bit egal cu zero.

Page 37: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

37

IESIREINTRAREin binar hexa zecimal

x7 x6 x5 x4 x3 x2 x1 x0 O3O2O1O00 1

00

00

00

0

1 1 11 1 1 1 1 1

111111

1111

1111

11111111

1111 1

11

11

11 1

111

1 1 1111

1 1 1 11111111

1111 1

1

11

1

1

1

1

0000

00

0

0

000 07FH

BFHDFHEFHF7HFBHFDHFEH

127191223239247251253254

Figura P 2.55

P2.56Rezolvare:

Tabelul de adevar pentru calculul patratului numerelor binare de trei biti este redat ınFigura P2.56-a ın care se observa urmatoarele particularitati y1 = 1 si y0 = A0. Pentruimplementare rezulta structura de circuit din Figura P2.56-b, pe baza unui circuit ROMde capacitate 8× 4 biti=32 biti.

IESIRI 2

INTRARI

A2 A1 A0

A2

A1

A0

2

y5 y4 y3 y2 y1 y0

01234567

0 0 0 0 0 0 0 0 0 0000

0

00

0

0

0

00000

000

0

00

0

00

0

000

0

0000000

0

0

0

1 1 111

1111

11

1 1

1 11

11

1

1

11111

1

49

16253649

y0

y1

y2

y3

y4

y5

ROM(8x4)biti

NN 10 2 (N )10( N 10 )

Figura P 2.56

P2.57Rezolvare:

Transformand adresele spatiului de adresare din hexazecimal ın binar, pentru o decodifi-care completa se obtin pentru bitii A9 . . . A0 valorile prezentate ın Figura P2.57-a.Se observa ca, pentru toate cele patru adrese bitii A9 . . . A2 raman nemodificati ın timpce A1A0 se modifica ın functie de perifericul adresat. Aceasta sugereaza solutia utilizariicircuitului 74LS139, DCD2:4, la care se aplica bitii A1A2 si ale carui iesiri selecteaza per-ifericele #0,#1#2#3. Coincidenta valorilor bitilor de adresa A9A2, cu valorile 11110000,

Page 38: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

38 CAPITOLUL 2. CIRCUITE LOGICE COMBINATIONALE

trebuie detectata si aplicata ca un semnal de validare (G) la circuitul 74LS139. Cu ajutorulcircuitului 74LS138, DCD3:8, se poate obtine activarea iesirii O0 cand exista coincidentabitilor A9 . . . A2 cu urmatorul cuvant 11110000, Figura P2.57-b.O alta varianta de implementare pentru aceasta coincidenta este reprezentata ın figuraP2.57-c utilizand circuitul 74LS682 (circuit comparator de opt biti cu doua iesiri P=Q siP>Q, active ın L).Se poate realiza si o decodificare imcompleta cand nu sunt utilizati toti biti. De exem-plu, daca ın Figura P2.57-b se dispune de o poarta NAND numai cu doua intrari, bitulA9 ramane flotant pentru circuitul de identificare a coincidentei, deci poate lua fie val-oarea 0, fie valoarea 1. Rezulta ca fiecare periferic va fi decodificat nu pentru o singuraadresa transmisa de microprocesor pe magistrala de adresare ci pentru doua adrese ın felulurmator:

#0→ 1C0H si 3C0H;#1→ 1C1H si 3C1H;#2→ 1C2H si 3C2H;#3→ 1C3H si 3C3H;

Pentru implementarea cu comparator, Figura P2.57-c, o astfel de modalitate de decodi-

OOOOOOOO

1

1

2

3

4

5

6

7

A0

A1

A2

A3

A4

A7

A8

A9

A9 A8 A7 A6 A5 A4 A3 A2 A1 A0

3C0H3C1H3C2H3C3H

1111

1111

1111

1111

0000

0000

0000

0000

0011

0101

AB

O0

O1

O2

O3G

#0#1#2#4

(3C0H)(3C1H)(3C2H)(3C3H)

OOOOOOOO

1

1

2

3

4

5

6

7

A0

A1

A2

A3

A4

A7

A8

A9

A5

A6

P1

P0

P2

P3

P4

P5

P6

P7

P=QP>Q

74LS682

74LS139

ABC

G1G2AG2B

A5

A6

74LS138

74LS139

a)

b) c)

DCD3:8

DC

D2:4

10

AB

O0

O1

O2

O3G

#0#1#2#4

(3C0H)(3C1H)(3C2H)(3C3H)

VCC

10

Figura P 2.57

ficare incompleta se obtine prin conectarea intrarii Q7 nu la VCC ci la linia A9.

Page 39: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

39

P2.59

Rezolvare:Pentru a forma modulul de 8K × 16 biti este necesara o extensie la 16 biti pe iesire ceeace inseamna ca sunt necesare cate doua circuite 2716 conectate ın paralel pentru a obtine

A10 −A0Q0 −Q7

2716

CE/PGMOE

A10 −A0Q0 −Q7

2716

CE/PGMOE

A10 −A0Q0 −Q7

2716

CE/PGMOE

A10 −A0Q0 −Q7

2716

CE/PGMOE

Q0 −Q7A10 −A0

CE/PGM

OE

2716

Q0 −Q7A10 −A0

CE/PGM

OE

2716

Q0 −Q7A10 −A0

CE/PGM

OE

2716

Q0 −Q7A10 −A0

CE/PGM

OE

2716

8 8 8 8

8 8 8 8 D15 D8

0 DD15..

Magistrala de adrese A15 − A0

Magistrala de date

#0 #1 #2 #3

#0 #1 #2 #3

A10 − A0

A15 − A11

O0

O1

O2

O3

AB

G

A11

A12

A13

A14

A15

74LS139

READ

D7 D0

Figura P 2.59

cuvantul de date D15 . . .D8, D7 . . .D0 si o extensie pe intrare, Figura P2.59. Extensia peintrare consta ın plasarea pe fiecare subinterval de adresa de 2K (din cei 8K acoperitide modul) a cate unui grup de doua circuite 2716 (D15 . . .D8 si D7 . . .D0). Deoarecedecodificatorul intern al fiecarui circuit decodifica numai 11 (A10 . . . A0) biti este necesaraextensia decodificatorului ın exterior pentru bitii de adresa A12, A11. Extensia externase realizeaza cu circuitul 74LS139, DCD 2:4. Pentru a “plasa“ acest modul ın intervalulde 8K adrese cele mai semnificative din spatiul de 64K este necesar ca cei trei biti ceimai semnificativi din cuvantul de adresa sa fie A15A14A13 = 111. Prin conjunctia acestortrei biti se genereaza semnalul de validare G al decodificatrului 2:4. Astfel, intervalul deadresare asignat modulului este E000K . . . FFFFH compus din 4 subintervale adiacentecare se deduc din mapa memoriei din urmatorul tabel.

Page 40: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

40 CAPITOLUL 2. CIRCUITE LOGICE COMBINATIONALE

1

01

01

01

0

1

01

01

01

0

1

01

01

01

0

1

01

01

01

0

1

01

01

01

0

1

01

01

01

0

1

01

01

01

0

1

1

1

1

1

1

1

1

1

1

1

1

A11A12A14 A13 A6 A5A4

#3FFFF H

F800 HF7FF H

F000 HEFFF H

E800 HE700 H

E000 H

#2

#1

#0

1

01

01

01

0

1

01

01

01

0

1

01

01

01

0

1

01

01

01

0

1

0

1

0

1

1

0

0

A15 A10A9 A8 A7 A3A2A1A0

P2.60

Rezolvare:Implemetarea functiei reprezentate sub forma FCD pe o memorie ROM, se realizeaza prinınscrierea valorii 1 la adresele pentru care mintermii au valoarea 1 (codul mintermului esteconsiderat ca un cuant de adresa format din variabilele functiei). Aceasta simplitate aparedatorita faptului ca ROM-ul produce, pe nivelul de decodificare AND, toti mintermii vari-abilelor de intrare (adrese). Deci, nu trebuie efectuata nici o minimizare. Rezulta ca penivelul programabil (OR) se introduce direct tabelul de adevar al functiei. Implementareaapare mult mai intuitiva daca functia este data ıntr-o diagrama V-K ce poate fi mapatadirect pe o structura matriceala de memorie ca ın Figurile P2.60-a si b.Reprezentarea ın diagrama V-K poate fi privita ca o suma de functii de un numar mai re-dus de variabile. De exemplu, pentru o functie de 6 variabile se poate face o descompunereın: doua functii de 5 variabile sau 4 functii de 4 variabile sau o functie de 5 variabile si 2functii de 4 variabile, etc. In Figura P2.60-c este reprezentata functia f ca o suma logicaıntre o functie de 5 variabile, una de 4 variabile si doua de 3 variabile.Aceasta descompunere ın functii componente nu este de nici o utilitate pentru o sin-gura functie, dar este foarte utila cand se doreste implementarea mai multor functiidiferite, de aceleasi variabile, pe o aceeasi structura ROM. Suprafata ocupata de fiecarefunctie pe diagrama V-K este disjuncta fata de celelalte suprafete. Functia de 5 variabilef1(E,D,C,B,A) este ınscrisa ın intervalul de adrese care se selecteaza cu valoarea vari-abilei F = 1, functia de 4 variabile f2(D,C,B,A) se selecteaza cu valorile variabilelorF = 0 si E = 1; iar functiile de 3 variabile f3(C,B,A) si f4(C,B,A) sunt selectate re-spectiv prin FED = 001, FED = 000, Figura P2.60-d. Implementarea mai multor functiidiferite, de aceleasi variabile, pe aceeasi structura ROM, pe intervale disjuncte de adrese,duce la o mai buna utilizare a capacitatii circuitului dar, evident, functiile implementatenu pot fi selectate simultan!

Page 41: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

41

DCD 3:8

000001010011100101110111

0 100 0

00

0 0

00 0

01

11

1

1

111

111

MUX 8:1

DEF

ABC

DCD 3:8

000001010011100101110111

0 100 0

00

0 0

00 0

01

11

1

1

111

111

MUX 8:1

DEF

ABC

0 1 3 2 16 17 19 18

4 5 7 6 20 21 23 22

12 13 15 14 28 29 31 30

8 9 11 10 24 25 27 26

32 33 35 34 48 49 51 50

36 37 39 38 52 53 55 54

44 45 47 46 60 61 63 64

40 41 43 42 56 57 59 58

1 11 1 1 1

1

1

1

1

1

1

1

1

1

1

1

1

1

1 1 1 1

1 1

1 1

1 1 1 1

1 1

1 1 1

1 1 1

AE

C

C F

BB

D

D

A

f(F,E,D,C,B,A)f4 f3 f2 f1

AE

A

D

D

C F

B B

f4 (C,B,A)

F=0,E=0,D=0f2 (D,C,B,A)

F=0E=1

f3 (C,B,A)

F=0,E=0,D=1

f1 (E,D,C,B,A)

F=1

f=f 1 + f2 + f3 + f4

a) b)

c) d)

Figura P 2.60

P2.61Rezolvare:

Se reprezinta pe diagrama V-K si apoi se deduc variabilele de selectare (vezi P2.60).

P2.64Rezolvare:

Tabelul de adevar pentru conversia din BCD ın Gray este dat ın Figura P2.64-a, iar formaminima pentru fiecare din bitii de iesire W,X, Y, Z se obtin cu diagramele V-K din FiguraP2.64-b. Formele minime sunt implementate pe o structura generica de PLA ın Figura

Page 42: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

42 CAPITOLUL 2. CIRCUITE LOGICE COMBINATIONALE

P2.64-c si pe o structura generica de PAL ın Figura P2.64-d. La implementarea pe PALs-a tinut cont de faptul ca fiecare poarta OR poate colecta doar patru termeni produs.

A A

A

INTRARIGray

IESIRI

A B C D W X Y ZBCD

0

1

0 0 0 0 0 0 00000000

000

0

00

0

0

0

00

000

00

00

0

0

0

0 0 00 00 0 00 00

00 0 00

0 0 00 0

11

1 111

111

111

1

1

1

11 11 1 1

1 111111111 1

111

11

1

111 1

1 11

1xxx

xxxxx x

xxxx

x xxxxxx x

xxxx

ABCD

A

BD

BC

0

BC

0

0

0

0

0

B

C

BCD

AD

BCD

W X Y Z

d)

A B C D

a)

0

0

0

1

1

1

1

1

x

x

x

x

x

x

00

0

0

0

0

0

0

0

0

0 0 0 0

0 0

0

0

0

0

1

1

1

1

1

1

1 1

1

1

1 1

x

x

x x

xx

x

x x

x

x

x

x

x

x x

xx

11

10

00

01

00 01 11 10

10

10

10

10

10

10

00

0000

00

00

00 01

01

01 01

01

11

11

1111

11 11

01

CDAB

CC

C

D D

DD

ABCDCD

CDAB

ABB B

BBY=B+C

W=A+BD+BC X=BCA

b)

c)

A

BD

BC

BC

B

C

ABCD

BCD

AD

BCD

W X Y Z

A B C D

Z=ABCD+BCD+AD+BCD

Figura P 2.64

Page 43: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

43

P2.67Rezolvare

O prima varianta de circuit se poate realiza folosind circuitul standard comparator74XX85. Acest circuit determina pentru doua cuvinte A si B de patru biti urmatoarelerelatii: A < B,A = B si A > B. Pentru a putea fi extins la lungimi de cuvant maimari de patru biti circuitul poseda trei intrari Fi, Fe, Fs care indica faptul daca cir-cuitul repartizat bitilor cu patru pozitii mai spre stanga realizeaza respectiv relatiileA < B,A = B si A > B. O varianta de circuit pentru identitatea a doua cuvinte deun byte este prezentata ın Figura P2.67-a, la care identitatea ıntre semicuvintele supe-rioare A7 − A4 si B7 − B4 se transmite ca un semnal Fe la al doilea circuit 74XX85.Varianta din Figura P2.67-b determina identitatea celor doua semicuvinte ale celor douacuvinte A si B cu ajutorul unei porti AND, aceasta varianta este mai rapida decat primadeoarece cele doua circuite 74XX85 lucreaza ın paralel.O alta varianta se poate realiza cu porti XNOR, aceasta poarta genereaza identitatea adoi biti fe. Pentru identitatea simultana a patru perechi de biti trebuie sa fie adevaratafunctia fe = fe3 · fe2 · fe1 · fe0 Figura P2.67-c. (Aceeasi functie fe poate fi realizata cupatru porti XOR si o poarta NOR cu patru intrari deoarece fe = fe3 · fe2 · fe1 · fe0 =

fe3 + fe2 + fe1 + fe0).Pentru operatorul SAU-EXCLUSIV-NEGAT se poate utiliza circuitul 74XX266 carecontine patru porti XNOR cu colectorul ın gol care sunt conectate ıntr-o conexiune SIcablat, Figura P2.67-d. Daca se compara doua cuvinte de patru biti (m = 4) si la iesireaportilor cu colectorul ın gol se comanda o poarta TTL standard (N = 1) se poate scriepentru determinarea intervalului de valori al rezistentei R urmatoarele relatii (marginilede zgomot sunt: ML = 0V ;MH = 1V .

Rmin ≥VCCmax − (VILmax −ML)

IOLmax −N · IILmax=

5, 5V − (0, 8V − 0V )

8mA− 1× 1, 6mA= 734Ω

Rmax ≤VCCmin − (VIHmin +MH)

m · IOHmax +N · IIHmax=

4, 5V − (2V + 1V )

4 · 0, 1mA+ 1 · 0, 04mA=

1, 5V

0, 404mA= 3, 71kΩ

deci 0, 734kΩ ≤ R ≤ 3, 71kΩ

Daca se extinde aceasta structura de circuit la cuvinte cu lungimi mai mari scade limitasuperioara a rezistentei R pana se ajunge la conditia limitaRmax = Rmin (datorita faptuluica va creste componenta de curent m · IOH absorbita ın starea HZ). Introducand aceastaconditie de limita ın relatia anterioara, pentru calculul rezistenteiRmax, se obtine lungimeamaxima mmax a cuvintelor care pot fi comparate (se considera MH = 0, 4V )

mmax =Vccmin − (VIHmin +MH)−Rmin · IIH

Rmin · IOH=

=4, 5V − (2V + 0, 4V )− 0, 734kΩ · 0, 04mA

0, 734kΩ · 0, 1mA =2, 07V

0, 073V= 28

· Varianta din Figura P2.67-e utilizeaza pentru determinarea relatiei de identitate feiıntre doi biti Ai, Bi un MUX4:1 cu intrarile conectate la 1 si 0. Pentru identitatea adoua cuvinte de m biti vor fi utilizate m×MUX4:1 a caror iesiri se colecteaza intr-opoarta AND.

Page 44: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

44 CAPITOLUL 2. CIRCUITE LOGICE COMBINATIONALE

· Cu ajutorul a doua DCDAn : 2n si DCDBn : 2n se poate determina identitatea adoua cuvinte. Cele doua iesiri de acelasi rang, OAi si OBi, se colecteaza ın cate opoarta AND2, cuvintele de comparat se aplica pe intrarile decodificatoarelor. PoartaAND2 cu iesirea activa indica si configuratiile de biti aplicate pe intrari.

· Se poate implementa un circuit de identitate pentru cuvinte de n biti si pe unEPROM cu 22n × 1 biti. Numai 2n locatii sunt utilizate din cele 22n.

· Imaginati si alte variante de circuite.

A6 A4A A5 B B B B7 7 56 4 A6 A4A A5 B B B B7 7 56 4A3 A2 1 A0B3B2 B1B0A A3 A2 1 A0B3B2 B1B0A

A3 A2 1 A0B3B2 B1B0AA3 A2 1 A0B3B2 B1B0AA3 A2 1 A0B3B2 B1B0AA3 A2 1 A0B3B2 B1B0AF iFeFs

F iFeFs

F iFeFs

F iFeFsA=B A>BA<B A=B A>BA<B A=B A>BA<B A=B A>BA<B

A3

B3

A2

B2

A1

B1

A0

B0

A3

B3

A2

B2

A1

B1

A0

B0

VCC VCC VCC

VCC

B0

fe

fe

x

x

x

x

R

00011011

00011011

4:1

4:1

MUX 3

MUX 0

A0

A3

B3

A

B

74XX85 74XX85 74XX85 74XX85

b)a)

c) e)

¨1""0"

fe3

fe2

fe1

fe0

d)

"0""1"

fe

fe

fe

Figura P 2.67

P2.68Rezolvare:

a) Structura de circuit din Figura P2.68-a genereaza la iesirile circuitului 74XX85functiile conform functionarii normale ale acestuia pentru c=0 iar cand c=1 iesirilecircuitului sunt conform cu cerintele acestei probleme (se poate demonstra aceastafunctionare din analiza valorilor continute ın tabelul din Figura P2.68-b.O alta solutie este obtinuta prin conectarea pe intrarea A a cuvantului B iar peintrarea B a cuvantului A.

b) Relatiile de ordine se obtin cu portile care proceseaza semnalele de la iesirea circuit-ului 74XX85. Selectarea unei relatii de ordine se face cu un MUX8:1, Figura P2.68-ccu ajutorul cuvantului c2c1c0.

Page 45: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

45

fe fs

f ic2c1c0

ai bi A i= a i Bi=bi

fe

fs

fe

f i

a3 a2 a1 a0 b3 b2 b1 b0

A3 A2 A1 A0 B3 B2 B1 B0

A B

pentru c = 0

pentru c = 1

fs

f i

fe

A > B A = B A < B74XX85

a)

b)

4 4A B

7 6 5 4 3 2 1 022

21

20MUX 8:1

A > B A = B A < B74XX85

f

c)

C

Comanda c = 0 Comanda c = 1 f

INTRARI

A i=ai Bi i=b

0

1

0 0 0

00

0 0

1

1

11

1 1 1

1 1

1

10

0

00

f

f

f

fe

fe

i

s

Figura P 2.68

P2.72Rezolvare

Eliminarea unor ranguri (care pot fi alaturate sau nealaturate la variantele de doi biti)pune problema propagarii transportului prin acele ranguri. Propagarea unui transport Ciprin rangul eliminat i+ 1 necesita ca variabila propagare pi pe rangul i+ 1 sa fie 1, adicaAi+1 +Bi+1 = 1. Se va exemplifica cu doua variante.Varianta de sumator de trei biti din Figura P2.72-a pentru ca A3 = 0, B3 = 0, transportulC2 nu se va obtine la iesirea C3 ci la iesirea S3.Varianta de sumator de doi biti din Figura P2.72-b foloseste pozitia A0, B0 pentru rangul20 si pozitia A3, B3 pentru rangul 23, pozitiile A1, B1 si A2, B2 nu sunt utilizate decitrebuie realizate propagarile p1 = 1 si p2 = 1 prin aplicarea A2A1 = 00 si B2B1 = 11.Bitii de suma s1, s0 se obtin la S3 si S0 iar transportul C1 la C3

A3 A2 A1 A0 B2B3 B B01 A3 A2 A1 A0 B2B3 B B01

S3 S2 S1 S0 S3 S2 S1 S0

C3 C3C−1 C−174XX28374XX283

C2 s2 s1 s0 s1 s0

C in C in

0 0 1 1A2 A1 A0

A B

B2 B1 B0 A1 A1 B1 B0

A B

b)a)

Figura P 2.72

Page 46: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

46 CAPITOLUL 2. CIRCUITE LOGICE COMBINATIONALE

P2.73Rezolvare:

Celula semisumator ın baza trei este reprezentata ın Figura P2.73-a, are doua intrari: ceidoi operanzi Ai = a1a0, Bi = b1b0 si doua iesiri: suma si = s1s0 si transportul urmator Ci(nu se condidera transportul anterior Ci−1). Tabelul operatiei suma modulo trei este dat ınFigura P2.73-b (transportul generat este notat ın paranteza) iar tabelul de adevar pentrucelula semisumator este prezentat ın Figura P2.73-c. Realizand sinteza si tinand cont deconfiguratiile operanzilor (11) care nu pot apare pe intrari rezulta circuitul implementatcu porti NAND din Figura P2.73-d.

P2.74Rezolvare:

Celula sumator modulo 3 se obtine din doua semisumatoare modulo 3 ca ın Figura P2.74-a. Pe primul sumator se sumeaza cei doi operanzi generandu-se transportul Ci1 si osuma. Aceasta suma este adunata, pe un al doilea sumator, cu cuvantul 0Ci−1 carese aplica ca operandul Bi(= 0Ci−1), se obtine valoarea sumei si si un transport Ci2.Transportul Ci se obtine ca o functie logica OR ıntre Ci1 si Ci2. Un sumator modulo 38

cu transport progresiv se obtine prin punerea ın paralel a 8 celule sumator ale caror circuitede transfer al transportului se ınseriaza ca ın Figura P2.74-b. Propagarea transportuluiCi−1 la Ci pe o celula se face cu o ıntarziere de patru niveluri logice. Timpul de propagareal transportului pe sumatorul modulo 38, considerand aplicarea simultana a operanzilorAi, Bi(i = 0, 1, . . . 7) si a transportului initial C−1 este egal cu: 6 niveluri logice pe rangul30 si cate patru niveluri logice pe celelalte ranguri, deci ın total 6 + 7 × 4 = 34 nivelurilogice.

P2.75Rezolvare:

Adunarea a doua cuvinte ın cod BCD, Ai = Ai3Ai2Ai1Ai0Bi = Bi3Bi2Bi1Bi0 si trans-portul anterior Ci−1 poate genera un cuvant Cisi3si2si1si0 care reprezinta un numar ınbinar natural ın intervalul [0,19]. Efectuarea adunarii BCD pe un sumator binar de patrubiti genereaza un cod corect ın BCD numai daca cuvantul suma reprezinta ın binar unnumar ın intervalul [0,9], si respectiv un cuvant de cod eronat daca rezulta un numar binarın intervalul [10,19]. Codul corectat ın BCD, si pentru intervalul [10,19], se obtine dacala suma obtinuta se aduna 6|10 = 0110|2 sau se scade 10|10 = 1010|2, Figura P2.75-a. Seobserva ca prin aceasta adunare sau scadere de corectie bitul suma si0 nu se modifica. Oprima varianta de celula sumator complet ın BCD este reprezentata ın Figura P2.75-b.Pentru rangul 20 bitii Ai0 si Bi0 se sumeaza pe o celula

∑(3, 2). Iar pentru rangurile 21, 22

si 23 se realizeaza o sinteza de subcircuit BCD, care este descris de un tabel de adevarcu sapte intrari Ai3, Bi3, Ai2, Bi2, Ai1, Bi1 si Ci0 si genereaza patru iesiri si3, si2, si1 si Ci(complicat!).A doua varianta de celula sumator, Figura P2.75-c utilizeaza metoda de corectie explicataanterior. Cele doua cuvinte Ai, Bi ın cod BCD, plus Ci−1 se aplica la primul sumatorbinar de patru biti rezultand cuvantul suma s∗i3s

∗i2s∗i1s∗i0 si transportul C ′i. Aceasta suma

este aplicata la al doilea sumator binar de trei biti unde se aduna cu valoarea de corectie0000 sau 0110|2 = 6|10. Comanda pentru valoarea de corectie este tocmai transportul Ci.Acest bit de transport se compune din transportul C ′i care se genereaza pentru suma ın

Page 47: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

47

Cia1 a0 b1 b0 s1 s0

a0a1 b1 b0

a1 a1a1b1 b1 b1

b1 b1

b0 b0 b0

b0b0 a1 a1

a0 a0 a0

a0 a0

si

OPERANZI SumaA i Bi

semisumatormodulo 3

CelulaA Bi i Ci

0

1

0 0 0 0 0 00000000

000

0000

0

00

00

00

0

0

0

0

0

0

0

0 0

11

11

111 1

111

1111

11

11

11

11

1

1

1

1

1

1

1

1

000 0

0 0

00

00

0 0

0 0

11

1

11

1

11

1 100

00

0 0

000000

0 00

000000

1 1

11

11

11

1

1

100

0 2

2 (1)(1)(1)

s1 ss

s1

sia)

b) c)

d)

Ci−1

00 C i

Figura P 2.73

Cn−1

a1 a0 b1 b0

a1 a0 b1 b0 a1 a0 b1 b0 a1 a0 b1 b0s1 s0

s1 s0

s1 s0 s1 s0 s1 s0

si

si

celulasumatormodulo 3

celulasumatormodulo 3

celulasumatormodulo 3

celulasumatormodulo 3

A i Bi

Semi−sumator modulo 3

Ci

C

Ci−1

Cn−2

Ci Ci−1 C0 C−1

sn−1 s0

An−1 Bn−1 A i Bi A0 B0

Semi−sumator modulo 3

i2

Ci1

a) b)

0

Figura P 2.74

Page 48: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

48 CAPITOLUL 2. CIRCUITE LOGICE COMBINATIONALE

intervalul [16,19] sau cand suma este ın intervalul [10,15], iar detectarea acestui al doileainterval se face cu relatia (s∗i3 · s∗i2) + (s∗i3 · s∗i1).

(3,2) (3,2) (3,2) (3,2)

(3,2) (3,2) (3,2)

(3,2)

A i3Bi3

A i2Bi2

A i1Bi1

A i0Bi0

A i3

Bi3

A i2

Bi2

A i1

Bi1

A i0

Bi0

si3 si2 si1 si0

si BCDsi3 si2 si1 si0

si BCD

si3 si2 si1 si0

Ci

Ci

Ci

transport

transportcu

fara

C i si3 si2 si1 si3

0

1

000 0

000

0

0 0 0 00 0 00 0 0 00 0 00 0 00 00 0 000 0 00 0 00 00 0 00 00 00

0 0 0 00 0 00 0 00 0

111

111 1

1

1 1 111 11 11 1 11 11 1 1

1111 1 1 1

1111

11

1

1

Corectie+ =+++++++++

=========

000000000011

1111111

11 1

1

1111111

1111111111

0 0 0 00 0 00 00 00 0 00 00 00

0 0 00 0

011

1 1111 1

1

1 1 1

111

s3 s2 s1 s0

corectasuma

1 1

BCDsubcircuit

Ci Ci0

Ci−1

* * * *

Ci−1

a)

c)b)

0 0

corectie

Combinatiiinvalidein BCD

corectie )( necesita

Combinatiivalidein BCD (nu necesita corectie)

Figura P 2.75

P2.76

Rezolvare:O unitate logico-aritmetica pentru un grup de 16 biti poate fi structurata din patru cir-cuite 74LS181, iar ın exteriorul acestora se realizeaza o cale pentru generarea transportuluianticipat, pentru fiecare ALU de patru biti, cu un circuit 74LS182, Figura P2.76. Deci,

Page 49: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

49

aceasta structura poate fi o unitate logico-aritmetica pentru cei doi bytes mai putin sem-nificativi, adica pentru grupul de biti 15÷0 din lungimea de 64 de biti. La fel se realizeazao astfel de structura pentru fiecare din celelalte trei grupuri 63 ÷ 48, 47 ÷ 32 si 31 ÷ 16.Considerand fiecare grup ca o unitate logico-aritmetica de patru biti care genereaza sem-nalele P si G se poate realiza ın exteriorul acestor patru grupuri, pe un circuit 74LS181, ocale pentru generarea transportului anticipat pentru fiecare grup. In total sunt necesare16× 74LS181 si 5× 74LS182. In figura sunt prezentate numai semnalele de control, nu sibitii cuvintelor de intrare si de iesire.

C−1 C−1 C−1

C−1 C−1 C−1 C−1

G P G P G P

G P G P G P G P

74LS182

Grup Grup Grup63−48 47−32 31−16

G3P3 C2 G2P2 C1 G1P1 C0 G0P0 C−1

G P

G3P3 G2P2 G1P1 G0 P0C C0 C−1C12

74LS181 74LS181 74LS181 74LS181

G P

74LS182

Cin

Grup 15 − 0

Figura P 2.76

P2.77

Rezolvare:Daca la iesirea unei celule sumator complet

∑(3, 2) se considera cuvantul Cisi, ca un

numar ın binar natural, atunci acesta reprezinta numarul de biti care au valoarea 1 ıncuvantul de intrare AiBiCi−1 (vezi Tabelul 1.6, ultimele trei coloane). Astfel, din cuvantulde intrare se aplica grupuri de cate trei la cate o celula

∑(3, 2) obtinandu-se la iesire Cisi

care reprezinta numarul de biti 1 ın grupul respectiv; apoi se aduna aceste numere peun sumator cu propagarea transportului, Figura P2.77-a. Pentru cuvantul de un byte,deoarece numarul rezultat (al bitilor care au valoarea 1) poate fi exprimat ın binar cu 4biti (de exemplu 8|2 = 1000, pentru un sir de opt biti 1) adunarea se efectueaza ıntai peun numarator cu doua celule si apoi pe unul cu trei celule, Figura P2.77-b.

Page 50: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

50 CAPITOLUL 2. CIRCUITE LOGICE COMBINATIONALE

A7 A6

C i−1

C i

bi

aiis

C i−1

C i

bi

aiis

C i−1

C i

bi

aiis

C i−1

C i

bi

aiis

C i−1

C i

bi

aiis

C i−1

C i

bi

aiis

C i−1

C i

bi

aiis

C i−1

C i

bi

aiis

C i−1

C i

bi

aiis

C i−1

C i

bi

aiis

C i−1

C i

bi

aiis

C i−1

C i

bi

aiis

20

21

22

23

22

12

20

A6 A5

A4

A2

A1

A0A3

A8

A5 A3

A4A2

A1A0

20

21

22

a) b)

Figura P 2.77

P2.78

Rezolvare:Pentru incrementare corespunde Figura P2.78-a iar pentru decrementare Figura P2.78-b.Decrementarea poate fi exprimata ın felul urmator A− 1 = A2A1A0 + [−1]2 = A2A1A0 +111.

C i

ai bi

si

C i−1Σ(3,2) C i

ai bi

si

C i−1Σ(3,2) C i

ai bi

si

C i−1Σ(3,2) C i

ai bi

si

C i−1Σ(3,2) C i

ai bi

si

C i−1Σ(3,2) C i

ai bi

si

C i−1Σ(3,2)

A2 A1 0AR

A2 A1 A0

s2 s1 s0 s2 s1

22 21 20 22 21 20

s0

a) b)

VccVcc

Figura P 2.78

Page 51: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

51

P2.79Rezolvare:

1. C5 = A5 ·B5 + C4 ·A5 + C4 ·B5;C5 = g5 + p5 · g4 + p5 · p4 · g3 + p5 · p4 · p3 · g2 + p5 · p4 · p3 · p2 · g1 + p5 · p4 · p3 · p2 · p1 · g0

2. Pentru SPT, C5 se calculeaza cu 4 porti, iar pentru STA, C5 se calculeaza cu 6 porti(vezi expresia anterioara) plus doua porti care calculeaza pi si pi(i = 0, 1, 2, 3, 4, 5)dar care sunt utilizate de mai multe ranguri de sumare.

3. SPT: 3τp pentru rangul 20, 4× 2τp pentru rangurile 21, 22, 23, 24 si τp pentru rangul25, deci T∑ = 12τp.STA: 1 nivel pentru calculul variabilelor intermediare pi, gi; doua niveluri pentrucalculul lui Ci, iar daca se considera 3τp pe celula de sumare rezulta 6τp. Crestereade viteza la STA fata de SPT rezulta |6τp − 12τp|/12τp × 100 = 50%.

P2.80Rezolvare:

Deoarece suma maxima poate fi 9|10 = 1001|2 sunt necesare doua module sumatoare, careın general sunt de patru biti; pe primul modul se sumeaza X = x1x0 cu Y = y1y0 iar pe aldoilea se sumeaza Z = z1z0 cu c1s1s0. Se poate elimina un modul sumator de patru bitirealizand suma X + Y pe un sumator cu salvarea transportului, realizat pe doua celulesumator complet

∑(3, 2), dupa structurarea din Figura P2.80.

A3A2A1A0 B B BB3 2 1 0 −1C

x1 y1 z1 x0 y0 z0

ai bi ci−1 ai bi ci−1

Ci Cisi si

C3 s3 s2 s1 s0

Modul sumator de 4 biti

Figura P 2.80

P2.81Rezolvare:

Pentru multiplicarea x1x0 × y2y1y0 corespunde circuitul din Figura P2.81-a, iar pentrumultiplicarea y2y1y0 × x1x0 corespunde circuitul din Figura P2.81-b.

Page 52: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

52 CAPITOLUL 2. CIRCUITE LOGICE COMBINATIONALE

p01

y2

x1 x0y1 y0

p10 p00p11

s30 s20 s10 s00

p4 p3 p2 p1 p0

x1 y1 x1 y0y0y1x0 x0

p4 p3 p2 p1 p0

2 2 1c s s

c1 s2 s1

p11 p10 p00

s20

y2 y2x0x1

x0x0y1y1 x1 y0 y0 y0x1

C2 s2 s1 s0

y1 x2

DeinmultitorInmultitor

Produse partiale 0Produse partiale 1

Sume partiale 0p12 p02 Produse partiale 2 Modul sumator de 2 biti

Modul sumator de 2 biti

A1 A0 B1 B0 C−1

A1 A0 B1 B0 C−1

p02p12 s30 s10 s00

A2 A0 B2 B1 B0 C−1A1Modul sumator de 3 biti

p21 p11 p01 p20 p10 p00

p4 p3 p2 p1 p0

y2 y1 y0x1 x0

p10 p00p20p11 p01p21

p3 p2 p1 p0p4

DeinmultitorInmultitor

Produse partiale 0Produse partiale 1

Suma(rezultat)

x2

a)

b)

p01

Sume partiale1(rezultat)

Figura P 2.81

P2.82

Rezolvare:ALUE se structureaza ca un selector de date pe baza de multiplexor. Din tabelul dinFigura P2.82-a rezulta ca doua din operatii sunt logice: pentru S1S0 = 00 → F = B;pentru S1S0 = 01 A > B, care se poate scrie sub forma F = BA, deci pot fi implementatecu porti logice. Celelalte doua operatii sunt aritmetice si pot fi implementate pe douacelule sumator complet

∑(3, 2). Celula de scazator complet se poate obtine dintr-o celula

de sumator complet la care se aplica Ai iar bitul de suma se complementeaza F = si. Toateaceste operatii sunt realizate pe circuite separate, Figura P2.82-b iar apoi sunt selectatecu doua MUX4:1. Operatiile logice ar necesita doar un singur MUX4:1, deoarece producedoar bitul de functie F, pe cand operatiile aritmetice necesita doua MUX4:1, deoareceprin aceste operatii aritmetice se genereaza atat bitul de functie cat si bitul de transporturmator Ci.

Page 53: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

53

si si

C i C iC i−1 C i−1

11 10 01 11 11 10 01 11MUX 4:1MUX 4:1

F i C i

s1

s0

s1

s0

AiBiC i−1

0 0

0 1

1 0

1 1

trece B i

Ai − Bi − Ci−1

Ai > Bi

Ai + Bi + C i

a) b)

ai bi

Σ(3,2)ai bi

Σ(3,2)

SelectareOperatie s1 s0

OperatiaAritmetica/Logica

ii F , C

Figura P 2.82

P2.83Rezolvare:

Modulul ALU de patru biti este prezentat ın Figura P2.83.

A3

s1 s0 A B Ci−1

Ci FALUE, 2

s1 s0 A B Ci−1

Ci FALUE, 2

s1 s0 A B Ci−1

Ci FALUE, 2

s1 s0 A B Ci−1

Ci FALUE, 21 0

s1s0

B3

23

A2 B2 A1 B1 A0 B0

c−1

c3 s3 s2 s1 s0

Figura P 2.83

P2.84Rezolvare:

Fiecare operatie, ın afara de ınscrie iesirea ın 0 sau ın 1, este realizata pe un circuit separat.Pentru operatiile logice se utilizeaza portile AND, OR si XOR iar pentru cele aritmetice treicelule sumator complet

∑(3, 2). Selectarea se realizeaza prin doua MUX8:1 deoarece la

iesire trebuie generat atat functia F cat si transportul urmator Ci (numai pentru operatiilearitmetice). Selectarea operatiilor aritmetice se efectueaza prin semnalul de selectare S2 =1 iar cele logice prin S2 = 0, Figura P2.84-a. Structurarea ALUE este prezentata ın FiguraP2.84-b, se observa ca operatiile logice nu utilizeaza multiplexorul pentru transport.

Page 54: Circuite logice combinat˘ionale - Dan NICULA · 2011. 1. 5. · Termenii produs care sunt indiferent˘i, notat˘i cu d(don0t care) pot considerat˘i^ n diagrama V-K e de valoare

54 CAPITOLUL 2. CIRCUITE LOGICE COMBINATIONALE

s s01

SelectareOperaties2

OperatiaAritmetica/Logica F , C i

0

1

0

1

0

1

0

1

Ai Bi

Ai + Bi

Ai + Bi

Ai Bi

ai bici c

sΣ(3,2)

ii−1

ai bici c

sΣ(3,2)

ii−1

ai bici c

sΣ(3,2)

ii−1

111 110 101 100 011 010 001

MUX 8:1s2s1s0

111 110 101 100 011 010 001

MUX 8:1s2s1s0

0

0

0

0

1

1

1

1

0

0

1

1

0

0

1

1

Bi − Ai

Ai − Bi

C i−1

Ai

Bi

000 000

Vcc

C i F i

inscrie 0

inscrie 1

Figura P 2.84