Sunteți pe pagina 1din 10

Dispozitive numerice si calculatoare Curs 3 Por i logice. Minimizarea func iilor logice 3.1 Por i logice 3.

2 Reprezentarea func iilor logice 3.3 Metoda de minimizare analitic 3.4 Metoda de minimizare Karnaugh 3.5 Aplica ii Circuitele care utilizeaz logica digital pot fi analizate i proiectate cu ajutorul algebrei booleene i prin alte mijloace abstracte de descriere a comportrii ntr-un circuit a valorilor 0 i 1. O valoare logic, 0 i 1, este denumit frecvent cifr binar sau bit. Dac o aplica ie necesit mai mult de dou valori discrete se pot folosi bi i suplimentari, cu o mul ime de n bi i, putnd fi reprezentate 2n valori diferite. In cazul circuitelor logice electronice, cum sunt CMOS i TTL, se utilizeaz n loc de 0 i 1, indicativele L, de la LOW i H, de la HIGH, tiind c: L (LOW) reprezint semnal cu valori cuprinse n domeniul valorilor algebrice mici, care sunt interpretate ca 0 logic; H (HIGH) reprezint semnal cu valori cuprinse n domeniul valorilor algebrice mari, care sunt interpretate ca 1 logic. Atribuirea valorii 0 strii LOW i a valorii 1 strii HIGH se numete logic pozitiv, iar atribuirea invers, 1->LOW i 0-> HIGH se numete logic negativ i este utilizat mai rar. 3.1 Por i logice Un circuit logic poate fi reprezentat, cu minim de detalii, ca o simpl cutie neagr cu un anumit numr de intrri i ieiri. De exemplu, n figura 3-1 apare un circuit logic cu 3 intrri i o ieire. Aceast reprezentare nu descrie modul n care circuitul rspunde la semnalele de intrare. Intrri Ieiri X Y Z Circuit logic F

Figura 3-1 Reprezentarea unui circuit logic Pentru a proiecta circuite electronice sunt ns necesare numeroase informa ii care s descrie cu precizie comportarea unui circuit din punct de vedere electric. Dar, intruct se poate considera c semnalele de la intrrile unui circuit logic iau doar valorile discrete 0 i 1, func ionarea logic a circuitului poate fi descris printr-un tabel care nu ine seama de aspectele de natur electric, men ionnd numai valorile discrete 0 i 1. Un circuit logic ale crui semnale de ieire depind numai de semnalele de intrare curente se nume circuit combina ional. Func ionarea unui asemenea circuit se descrie printr-un tabel de adevr, n care apar toate combina iile de semnale de intrare i valoarea semnalului sau a

Curs 3

semnalelor de ieire ce rezult pentru fiecare combina ie de intrare. Tabelul 3 -2 este tabelul de adevr al unui circuit logic cu 3 semnale de intrare X, Y i Z, i o singur ieire, F. X 0 0 0 0 1 1 1 1 Y 0 0 1 1 0 0 1 1 Z 0 1 0 1 0 1 0 1 F 0 1 0 0 0 0 1 1

Tabel 3-2 Tabelul de adevr pentru un circuit logic Pentru realizarea oricrui circuit logic combina ional se pot folosi trei func ii logice de baz: AND (SI), OR (SAU) i NOT (NU). In figura 3 -3 sunt prezentate tabelele de adevr i simbolurile por ilor logice care realizeaz aceste func ii. Simbolurile i tabelele de adevr ale func iilor AND i OR pot fi adaptate pentru por i cu orice numr de intrri. O poart AND are ieirea 1 dac i numai dac toate intrrile sale sunt 1. O poart OR are ieirea 1 dac i numai dac cel pu in una dintre intrrile sale este 1. O poart NOT, numit i inversor, produce la ieire valoarea opus valorii de la intrare. X AND Y X OR Y X X (a) Y
X Y

(b)

X+Y

X NOT Y (c) X
X

X 0 0 1 1

Y 0 1 0 1

X AND Y 0 0 0 1 X 0 1 X NOT Y 1 0

X 0 0 1 1

Y 0 1 0 1

X OR Y 0 1 1 1

Figura 3-3 Elementele logice de baz (a) AND; (b) OR; (c) NOT Prin combinarea func iei logice NOT cu AND, respectiv cu OR, se ob in alte func ii logice: NAND (SI-NU) i NOR (SAU-NU). In figura 3 -4 sunt date tabelele de adevr i simbolurile acestor por i.

Dispozitive numerice i calculatoare


O poart NAND are ieirea 0 dac i numai dac toate intrrile sale sunt 1. O poart NOR are ieirea 0 dac i numai dac cel pu in una dintre intrrile sale este 1. X NAND Y X NOR Y X X

(a) X 0 0 1 1

Y Y 0 1 0 1

(b)
X Y

Y X 0 0 1 1 Y 0 1 0 1

X +Y

X NAND Y 1 1 1 0

X NOR Y 1 0 0 0

Figura 3-4 Por i inversoare (a) NAND; (b) NOR

Cercule ul de la ieirea simbolului inversorului i a por ilor NAND, respectiv NOR, este numit cercule inversor i se folosete pentru a indica func ia de inversare. Ca i n cazul por ilor AND i OR, simbolurile i tabelele de adevr ale por ilor NAND i NOR pot fi adaptate pentru orice numr de intrri. 3.2 Reprezentarea func iilor logice Reprezentarea de baz a unei func ii logice este tabelul de adevr. Tradi ional, combina iile de intrare sunt arajate pe o coloan n ordine cresctoare a valorilor binare, iar valorile de ieire corespunztoare apar n coloana alturat. Forma general a unui tabel de adevr pentru 3 variabile este prezentat in tabelul 3-5. X 0 0 0 0 1 1 1 1 Y 0 0 1 1 0 0 1 1 Z 0 1 0 1 0 1 0 1 F F(000) F(001) F(010) F(011) F(100) F(101) F(110) F(111) F 1 0 0 1 1 0 1 1

Tabel 3-5 Forma general a tabelului de adevr a unei func ii logice de 3 variabile

In coloana a 5-a este prezentat un caz particular de func ie logic de 3 variabile. Exist o coresponden strns ntre tabelul de adevr i mintermeni, respectiv maxtermeni. Un mintermen poate fi definit ca un termen produs care are valoarea 1 ntr-un singur rnd al tabelului de adevr. Analog, un maxtermen poate fi definit ca un termen sum care are valoarea 0 ntr-un singur rnd al tabelului de adevr. Tabelul 3-6 prezint aceast coresponden ntr-un tabel de adevr pentru 3 variabile.

Curs 3

X 0 0 0 0 1 1 1 1

Y 0 0 1 1 0 0 1 1

Z F Mintermeni Maxtermeni 0 F(000) X +Y + Z X Y Z 1 F(001) X Y Z X +Y + Z 0 F(010) X Y Z X +Y + Z 1 F(011) X Y Z X +Y + Z 0 F(100) X Y Z X +Y + Z 1 F(101) X Y Z X +Y + Z 0 F(110) X Y Z X +Y + Z 1 F(111) X Y Z X +Y + Z Tabel 3-6 Mintermenii i maxtermenii unei func ii logice de 3 variabile

Plecnd de la coresponden a dintre tabelul de adevr i mintermeni putem ob ine o reprezentare algebric a func iei logice i anume suma canonic. Suma canonic a unei func ii logice este suma mintermenilor corespunztori combina iilor de intrare din tabelul de adevr pentru care valoarea de ieire a func iei este 1. De exemplu, suma canonic a func iei logice F din tabelul 3-5 este: F = X ,Y , Z (0,3,4,6,7) = X Y Z + X Y Z + X Y Z + X Y Z + X Y Z Orice func ie logic poate fi scris sub forma unei sume canonice. Produsul canonic al unei func ii logice este produsul maxtermenilor corespunztori combina iilor de intrare pentru care valoarea de ieire a func iei este 0. De exemplu, produsul canonic al func iei logice din tabelul 3-5 este: F = X ,Y , Z (1,2,5) = ( X + Y + Z ) ( X + Y + Z ) ( X + Y + Z ) Orice func ie logic poate fi scris sub forma unui produs canonic. In concluzie, avem 3 moduri de reprezentare a unei func ii logice: 1. Tabelul de adevr; 2. Suma algebric a mintermenilor, adic suma canonic; 3. Produsul algebric al maxtermenilor, adic produsul canonic. 3.3 Metoda de minimizare analitic Pentru studiul circuitelor numerice (digitale) se folosete ca suport matematic algebra boolean. Algebra boolean opereaz pe o mul ime B = { x / x{0, 1}}. n aceast mul ime binar se definesc trei legi de compozi ie: complementarea (negare, "NU", "NOT", inversare logic), disjunc ia (suma logic, "+", "SAU", "OR") i conjunc ia (produs logic, "*", "SI", "AND" ). Transformarea i minimizarea func iilor logice se sprijin pe urmtoarele legi logice, exprimate mai jos sub form de echivalen e: A= A - legea identit ii: - legea contradic iei:

A * A = AA = 0

Dispozitive numerice i calculatoare - legea ter ului exclus: - legea dublei nega ii: - legile idempoten ei: - legile posibilit ii:
- legile comutativit ii: - legile asociativit ii: - legile distributivit ii: - legile absorb iei: - legile excluderii: - legile lui De Morgan:

A+ A =1 A= A A + A = A i A *1 = A
AB = BA

AA = A
A * 0 = 0 i A + 1 = 1 i A+ B = B+ A i A+0 = A

i
i

( AB )C = A(BC )

( A + B ) + C = A + (B + C )
A + BC = ( A + B )( A + C )

A(B + C ) = ( AB ) + ( AC ) = AB + AC A( A + B ) = A i A + ( AB ) = A
AB + A B = A i

( A + B )(A + B ) = A
sau sau

x =x
i

x + y = x* y x* y = x + y

x = x
i

- legile semiabsorb iei:

A + A B = A + B i A A + B = AB - legea dualit ii: aceasta enun faptul c opera iile AND i OR sunt duale, n sensul c prin nlocuirea ntr-o expresie a simbolurilor AND cu OR i invers, rezult expresia dual cu propiretatea c dac dou expresii sunt echivalente, i dualele lor sunt echivalente.

Exemplu: S se proiecteze circuitul logic asociat func iei: f ( A.B.C ) = ABC + A BC + ABC Solu ie ntr-o prim etap se minimizeaz func ia, dup cum urmeaz: f ( A, B, C ) = ABC + A BC + ABC = AC B + B + ABC = AC + ABC = A C + BC = A C + B Forma minimal ob inut va fi implementat cu circuite logice n variante ct mai convenabile.

) (

f ( A, B, C ) = A C + B = A + C B = A C B n figura 3-7 sunt prezentate circuitele logice corespunztoare celor patru variante ale solu iei.

) (

) ( )

Curs 3

Figura 3-7 Schemele logice echivalente func iilor logice

3.4 Metoda de minimizare Karnaugh


O diagram Karnaugh este o reprezentare grafic a tabelului de adevr a unei func ii logice. Diagrama unei func ii logice cu n intrri este un tablou cu 2n celule, cte una pentru fiecare mintermen posibil. In figura 3 -8 sunt prezentate diagramele Karnaugh aferente unor func ii logice de 2, 3 i 4 variabile.

A/B 0 1

AB/CD 00 01 11 0 1 3 00 2 3 4 5 7 6 4 5 7 01 12 13 15 11 8 9 11 10 Figura 2-8 Diagramele Karnaugh pentru func ii logice de 2, 3 i 4 variabile


0 1 0 1 3 2

A/BC 0 1

00

01

11

10

10
2 6 14 10

Liniile i coloanele unei diagrame Karnaugh sunt etichetate astfel nct combina ia de intrare a oricrei celule s poat fi aflat cu uurin din denumirile liniei i coloanei corespunztoare acelei celule. Fiecare celul a diagramei con ine data ce se gsete pe rndul din tabelul de adevr al func iei ce poart acelai numr ca i celula, i anume: 0 dac func ia are valoarea 0 pentru acea combina ie de intrare i 1 n caz contrar. Pentru a reprezenta o func ie logic printr-o diagram Karnaugh, se copiaz cifrele 1 i 0 din tabelul de adevr n celulele corespunztoare ale diagramei. Minimizarea ncepe prin gruparea celulelor vecine cte dou, eliminndu-se astfel variabila care difer. Fiecare celul ocupat de "1" trebuie s fac parte din cel pu in o grupare, dar poate fi inclus n mai multe grupri. Dac un grup de dou celule vecine este vecin la rndul su cu un alt grup de dou celule vecine (cele dou grupuri difer prin valoarea unei singure variabile), acestea se pot contopi ntr-un singur grup de patru celule vecine, ceea ce va permite eliminarea a dou variabile. Dac este posibil, procedura descris se repet, ob inndu-se un grup de opt celule vecine etc. Prin realizarea de grupri ce con in valoarea 1, se ob ine forma minim disjunctiv a func iei logice. n general, un grup pe 2m celule vecine ocupate de "1" permite eliminarea a m variabile. Cel mai avansat grad de simplificare se ob ine dac valorile "1" dintr-o diagram Karnaugh sunt grupate ntr-un numr minim de grupuri, fiecare grup con innd un numr maxim de "1". 6

Dispozitive numerice i calculatoare Procedura expus este similar pentru determinarea formei minime conjunctive, cu observa ia c rolul lui "1" este jucat de "0". n cazul func iilor incomplet definite, valorile indiferente ale func iei se consider "1" pentru forma disjunctiv i "0" pentru forma conjunctiv dac aceste valori particip la minimizare; valorile indiferente care nu sunt prinse n grupri devin "0" pentru forma disjunctiv i "1" pentru forma conjunctiv.

Exemplu Se d func ia de trei variabile F(A,B,C) descris prin tabelul de adevr prezentat n continuare: A B C F 0 0 0 1 0 0 1 0 0 1 0 1 0 1 1 1 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1
Pentru minimizare vom utiliza diagrama Karnaugh n care vom nlocui fiecare celul cu valoarea ieirii corespunztoare combina iei de intrare din tabelul de adevr.

AB/C 00 01 11 10

0
1 1 0 0

1
0 1 1 0 Se elimin variabila B, deoarece i schimb valoarea n cadrul gruprii => mintermenul A C Se elimin variabila A, deoarece i schimb valoarea n cadrul gruprii => mintermenul B C

Prin nsumarea celor doi mintermeni se ob ine forma minim disjunctiv: f ( A, B, C ) = A C + B C Schema circuitului utiliznd doar por i logice AND, OR i inversoare este prezentat n figura 3-9:

Figura 3-9 Schema logic realizat cu por i AND, OR i NOT

Curs 3 Pentru implementarea cu por i logice NAND, se aplic teorema lui De Morgan i expresia func iei devine:

f ( A, B, C ) = A C B C Schema circuitului utiliznd doar por i logice NAND i inversoare este prezentat n figura 3-10:

Figura 3-10 Schema logic realizat cu por i NAND Pentru a ob ine forma minim conjunctiv se realizeaz grupri de 0 logic n cadrul diagramei Karnaugh.

AB/C 00 01 11 10

0
1 1 0 0

1
0 1 1 0 Se elimin variabila A, deoarece i schimb valoarea n cadrul gruprii => maxtermenul B + C Se elimin variabila B, deoarece i schimb valoarea n cadrul gruprii => maxtermenul A + C

Prin nmul irea celor doi maxtermeni se ob ine forma minim conjunctiv: f ( A, B, C ) = ( A + C ) ( B + C ) Pentru implementarea cu por i logice NOR, se aplic teorema lui De Morgan i expresia func iei devine:

f ( A, B, C ) = ( A + C ) ( B + C ) = A + C + B + C
Schema circuitului utiliznd doar por i logice NOR i inversoare este prezentat n figura 3-11:

Figura 3-11 Schema logic realizat cu por i NOR

Dispozitive numerice i Calculatoare

3.5 Aplica ii 1. S se scrie tabelele de adevr pentru urmtoarele func ii logice: a) F = X Y + X Y Z b) F = X Y Z + X Y Z + X Y Z c) F = X Y + Z + Y d) F = X (Y + Z ) + X Z 2. Scrie i suma i produsul canonic pentru urmtoarele func ii logice: a) F = X ,Y (1,2)

b) F = A, B ,C (2,4,6,7)
c) F = A, B ,C , D (0,1,2,8,10,12,15) d) F = X ,Y , Z (0,1,3,4,5)

3. S se implementeze func ia logic F = AB + A B utiliznd: a) por i AND, OR i NOT; b) por i I NU (NAND); c) por i SAU NU (NOR). 4. S se minimizeze algebric circuitul logic asociat func iei logice f ( A, B, C ) = A BC + A BC + ABC i s se deseneze schema logic utiliznd: a) por i AND, OR i NOT; b) por i NAND; c) por i NOR. 5. Se d func ia logic de trei variabile (care ia valoarea 1 n punctele 1, 2, 3, 5): f(A, B, C) = P1 + P2 + P3 + P5 = (1,2,3,5) Se cere: a) s se minimizeze i implementeze schema logic cu por ile de baz; b) s se reprezinte func ia n form minim disjunctiv i s se realizeze schema logic cu por i NAND; c) s se reprezinte func ia n form minim conjunctiv i s se realizeze schema logic cu por i NOR. 6. Tabelul 3-12 descrie func ia logic de trei variabile F(A,B,C). S se minimizeze algebric i cu diagrame Karnaugh, apoi s se implementeze utiliznd por ile logice AND, OR, i NOT.

Curs 3

ABC F 000 0 001 0 010 1 011 0 100 1 101 1 110 1 111 0 Tabel 3-12 7. S se implementeze cu por i I NU (NAND) func ia logic care ia valoarea 1 n punctele Px:
f = P0 + P2 + P4 + P6 + P9 + P + P + P 11 13 15 a) n form neminimizat; b) n form minimizat algebric; c) n form minimizat cu diagrame Karnaugh;

8. S se implementeze cu por i AU NU (NOR) func ia logic care ia valoarea 0 n punctele Px:


f = P0 + P1 + P3 + P6 + P10 + P11 + P14 + P15 d) n form neminimizat; e) n form minimizat algebric; f) n form minimizat cu diagrame Karnaugh.

10

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