Sunteți pe pagina 1din 13

Curs 2 CID 2009 ALGEBRA CIRCUITELOR DIGITALE

Circuitele logice sunt de dou categorii: combinaionale i secveniale. Circuite logice combinaionale sunt acele circuite ale cror ieiri sunt funcii exclusiv de starea curent a intrrilor. Ieirile unui circuit logic secvenial depind nu numai de starea curent a intrrilor, ci i de starea anterioar a acestora, care se poate s fi existat o perioad de timp arbitrar ndelungat. Circuitele combinaionale pot fi formate dintr-un numr arbitrar de pori logice i inversoare, ns nu conin nici o bucl de reacie. Bucla de reacie este o cale de semnal dintrun circuit, prin care semnalul de la ieirea unei pori se poate ntoarce la intrarea aceleiai pori; n general, funcionarea circuitelor secveniale se bazeaz pe acest tip de bucl. n analiza circuitelor combinaionale se pornete de la o schem logic din care se obine o reprezentare formal a funciei realizate de acel circuit, de pild un tabel de adevr sau o expresie logic. n sintez se procedeaz invers, adic se pleac de la o reprezentare formal i se obine o schem logic.

4.1 Algebra de comutaie


La originea formalismului aplicat n metodele de analiz a circuitelor digitale se afl opera unui matematician englez pe nume George Boole. n 1854, el a inventat un sistem algebric bazat pe dou valori, numit astzi algebr boolean. Mult timp dup apariia operei lui Boole, n 1938, cercettorul Claude E. Shannon, de la Bell Laboratories, a artat cum poate fi adaptat algebra boolean n scopul descrierii i analizrii funcionrii circuitelor cu relee - elementele logice digitale cele mai larg utilizate n acea epoc. n algebra de comutaie a lui Shannon, starea unui contact de releu - deschis sau nchis - este reprezentat prin variabila X, care poate lua una dintre cele dou valori posibile, 0 i 1. n tehnologiile logice actuale, aceste valori sunt atribuite unei game largi de stri fizice tensiune HIGH sau LOW, lumin aprins sau stins, condensator ncrcat sau descrcat, siguran ars sau intact. 4.1.1 Axiomele algebrei booleene Prin convenia de logic pozitiv asociem valorii 0 o tensiune LOW i valorii 1 o tensiune HIGH. Prin convenia de logic negativ se face asocierea invers: 0=HIGH i 1=LOW. ns utilizarea fie a logicii pozitive, fie a celei negative nu afecteaz posibilitile de a reprezenta algebric fr echivoc funcionarea unui circuit; sunt afectate doar detaliile formalismului de reprezentare algebric a fenomenelor fizice. Axiomele (sau postulatele) unui sistem matematic alctuiesc un set minim de definiii fundamentale pe care le acceptm ca adevrate i din care se deduc toate celelalte informaii referitoare la acel sistem. Vom nota cu X inversul (opusul sau complementul) lui X. (A1): X = 0 dac X 1 (A1): X = 1 dac X 0

(A2): Dac X = 0, atunci X = 1 (A3): 0 0 = 0 (A4): 1 1 = 1 (A5): 0 1 = 1 0 = 0

(A2): Dac X = 1, atunci X = 0 (A3): 1 + 1 = 1

(A4): 0 + 0 = 0

(A5): 1 + 0 = 0 + 1 = 1

Cele cinci perechi de axiome definesc complet algebra de comutaie. Pornind de la ele se demonstreaz toate celelalte propoziii referitoare la acest sistem.

Figura 4-1 Denumirile semnalelor i notaia algebric pentru: (a) poart AND, (b) poart OR

Funcia realizat de o poart AND cu dou intrri este numit uneori multiplicare logic sau produs logic i este simbolizat algebric printr-un punct de multiplicare. Deci semnalul de ieire al unei pori AND cu intrrile X i Y are valoarea X Y, cum arat fig. 4-1 (a). Funcia realizat de o poart OR cu dou intrri este numit uneori sum logic i este simbolizat algebric prin semnul plus (+). Semnalul de ieire al unei pori OR cu intrrile X i Y are valoarea X + Y, ca n fig. 4-1 (b). Prin convenie, ntr-o expresie logic n care apar att operaii de multiplicare, ct i de nsumare, multiplicarea are prioritate, la fel ca n expresiile cu ntregi din limbajele de programare convenionale. n consecin, expresia WX+YZ este echivalent cu (WX)+(YZ). Ultimele trei perechi de axiome definesc formal operaiile AND i OR artnd ce valoare apare la ieirea fiecrui tip de poart pentru fiecare combinaie de intrare posibil. 4.1.2 Teoreme pentru o singur variabil n desfurarea analizei sau sintezei circuitelor logice scriem frecvent expresii algebrice care caracterizeaz funcionarea real sau propus a unui circuit. n algebra de comutaie, teoremele sunt enunuri demonstrate ca adevrate, care ne permit s efectum o analiz mai simpl sau o sintez mai eficient a circuitelor respective. De exemplu, teorema X + 0 = X ne permite s nlocuim prin X, ntr-o expresie, orice apariie a sumei X + 0. (T1) (T2) (T3) (T4) (T5) X+0=X X+1=1 X+X=X (X) = X X + X = 1 (T1) (T2) (T3) (T4) (T5) X1=X X 0 = 0 X X =X X X = 0 (Identiti) (Elemente nule) (Idempoten) (Involuie) (Complemente)

Tabelul 4-1 Teoreme pentru o variabil n algebra de comutaie

Tabelul 4-1 prezint teoremele algebrei de comutaie referitoare la o singur variabil, X. Majoritatea teoremelor din algebra de comutaie se demonstreaz extrem de simplu printro metod numit inducie perfect. Axioma de baz a acestei metode este Al: ntruct o variabil de comutaie poate lua doar dou valori diferite, teoremele pentru o singur variabil se demonstreaz verificndu-le att pentru X = 0, ct i pentru X = 1. De exemplu, pentru demonstrarea teoremei T1 se efectueaz dou substituii: [X = 0] [X = 1] 0+0=0 1+0=1 adevrat, conform axiomei A4' adevrat, conform axiomei A5'

4.1.3 Teoreme pentru dou i trei variabile Teoremele algebrei de comutaie referitoare la dou i trei variabile sunt prezentate n tabelul 4-2. Fiecare dintre ele se demonstreaz simplu prin inducie perfect, verificnd relaiile corespunztoare pentru cele patru combinaii posibile de X i Y sau pentru cele opt combinaii de X, Y i Z. (T6) (T7) (T8) (T9) (T10) (T11) (T11) X+Y=Y+X (X + Y) + Z = X + (Y + Z) X Y + X Z = X (Y + Z) X+XY=X X Y + X Y = X X Y + X Z + Y Z = X Y + X Z (X + Y) (X + Z) (Y + Z) = (X Y) (X + Z) (T6) (T7) (T8) (T9) (T10) X Y = Y X (Comutativitate) (X Y) Z = X (Y Z) (Asociativitate) (X + Y) ( X + Z) = X (Distributivitate) +YZ X (X + Y) = X (Acoperire) (X + Y) (X + Y) = X (Combinare) (Consens)

Tabelul 4-2 Teoremele algebrei de comutaie pentru dou i trei variabile

Primele dou perechi de teoreme se refer la comutativitatea i asociativitatea sumei logice i produsului logic i sunt identice cu legile de comutativitate i asociativitate aferente numerelor ntregi i reale. n ansamblu, ele arat c nu este necesar s se in cont de includerea ntre paranteze sau de scrierea ntr-o anumit ordine a termenilor unei sume logice sau ai unui produs logic. De exemplu, din punct de vedere strict algebric, o expresie de genul W X Y Z este ambigu; sunt de preferat variantele (W (X (Y Z))) sau (((W X) Y) Z) sau (W X) (Y Z). Teoremele arat ns c forma ambigu a expresiei este corect, ntruct n oricare dintre cazuri se obine acelai rezultat. Putem chiar s schimbm ordinea variabilelor (de exemplu, X Z Y W) i rezultatul va fi acelai. Orict de banal ar prea aceast discuie, ea are mare importan, deoarece constituie baza teoretic a utilizrii porilor logice cu mai mult de dou intrri. S-au definit operatorii i + ca operatori binari - operatori ce intervin ntre dou variabile. n practic ns utilizm pori AND i OR cu 3, 4 sau mai multe intrri. Teoremele ne arat c putem conecta intrrile porilor n orice ordine; de fapt, multe programe de dispunere a componentelor pe cartelele cu circuit imprimat i n interiorul ASIC exploateaz aceast posibilitate. Astfel, se pot folosi fie o poart cu n intrri, fie (n - 1) pori cu dou intrri, dei, probabil, timpul de propagare i preul sunt mai mari n cazul folosirii mai multor pori cu dou intrri.

Teorema T8 este identic legii de distributivitate pentru numere ntregi i reale, adic produsul logic este distributiv fa de suma logic. n consecin, putem multiplica o expresie punnd-o sub forma unei sume de produse, ca n exemplul de mai jos: V(W+X)(Y+Z)=VWY+VWZ+VXY+VXZ Algebra de comutaie prezint ns i o proprietate neobinuit: inversa acestei teoreme este, de asemenea, adevrat suma logic este distributiv fa de produsul logic aa cum reiese din teorema T8'. Deci, putem extinde o expresie i sub form de produs de sume: (VWX)+(YZ)=(V+Y)(V+Z)(W+Y)(W+Z)(X+Y)(X+Z) Teoremele T9 i T10 sunt mult utilizate la minimizarea funciilor logice. De exemplu, dac subexpresia X + X Y este inclus ntr-o expresie logic, teorema de acoperire T9 arat c este suficient includerea n acea expresie a variabilei X; se spune ca X acoper X Y. Teorema de combinare T10 arat c dac ntr-o expresie este inclus subexpresia X Y + X Y', aceasta poate fi nlocuit prin X. ntruct Y poate fi ori 0, ori 1, n oricare caz, subexpresia original poate lua valoarea 1 dac i numai dac X este 1. Dei T9 poate fi demonstrat cu uurin prin inducie perfect, corectitudinea ei reiese mai evident dac vom folosi n demonstraie celelalte teoreme deja demonstrate: X + X Y = X 1 + X Y (n conformitate cu T1') = X (1 + Y) (n conformitate cu T8) = X 1 (n conformitate cu T2) = X (n conformitate cu T1') n mod asemntor, celelalte teoreme pot fi folosite i pentru a demonstra T10, principalul artificiu fiind aici rescrierea membrului stng ca X (Y + Y'), conform teoremei T8. Teorema T11 este cunoscut ca teorema de consens. Termenul Y Z este numit consens ntre X Y i X' Z. Se pleac de la ideea c dac Y Z este 1, atunci fie X Y, fie X' Z trebuie s fie tot 1, ntruct att Y, ct i Z sunt 1 i fie X, fie X' trebuie s fie 1. Prin urmare, termenul Y Z este redundant i poate fi eliminat din membrul drept al relaiei T11. Teorema de consens are dou aplicaii importante. Ea poate fi utilizat pentru eliminarea anumitor incertitudini de temporizare caracteristice circuitelor logice combinaionale. De asemenea, teorema de consens constituie baza metodei consensului iterativ de aflare a implicanilor primi. n toate teoremele este posibil nlocuirea oricrei variabile cu o expresie logic arbitrar. Una dintre nlocuirile simple const n complementarea uneia sau a mai multor variabile: (X +Y') + Z' = X + (Y' + Z') (pe baza teoremei T7) Se pot nlocui ns i expresii mai complicate: (V'+X)(W(Y'+Z))+(V'+X)(W(Y'+Z))'=V'+X (pe baza teoremei T10)

4.1.4 Teoreme pentru n variabile Cteva teoreme importante, prezentate in tabelul 4-3, se verific pentru orice numr n de variabile. Majoritatea lor se demonstreaz printr-o metod denumit inducie finit ce implic dou etape: ntr-o prim etap se arat c teorema se verific pentru n = 2 (etapa de baz), iar apoi se arat c dac teorema se verific pentru n = i, atunci ea se verific i pentru n = i + 1 (etapa de inducie). De exemplu, s considerm teorema de idempoten generalizat, T12. Pentru n = 2, T12 este echivalent cu T3, deci se verific. Dac se verific pentru o sum logic de i variabile X, atunci se verific i pentru suma a i + 1 variabile X, conform raionamentului urmtor: X + X + ... +X = X + (X + ... +X) (i + 1 variabile X n ambii membri) = X + (X) (dac T12 se verific pentru n = i) = X (n conformitate cu T3) Deci teorema se verific pentru orice valoare finit n. Teoremele lui DeMorgan (T13 i T13') sunt, probabil, teoremele cele mai frecvent utilizate din ntreaga algebr de comutaie. Teorema T13 afirm c o poart AND cu n intrri i ieirea complementat este echivalent cu o poart OR cu n intrri complementate. Prin urmare, circuitele din fig. 4-2 (a) i (b) sunt echivalente.
(T12) (T12) T(13) (T13) (T14) (T15) (T15) X+X++X=X XXX=X (X1 X2 Xn) = X1 + X2 + + Xn (X1 + X2 + + Xn) = X1 X2 Xn [F(X1, X2, , Xn, + , )] = F(X1, X2, , Xn, , +) F(X1, X2, , Xn) = X1 F(1, X2, , Xn) + X1 F(0, X2, , Xn) F(X1, X2, , Xn) = [X1 + F(0, X2, , Xn)] + [X1 + F(1, X2, , Xn)] (Idempoten generalizat) (Teoremele lui DeMorgan) (Teorema lui DeMorgan generalizat) (Teoremele de expansiune ale lui Shannon)

Tabelul 4-3 Teoremele algebrei de comutaie pentru n variabile

Figura 4-2 Circuite echivalente conform teoremei T13, a lui DeMorgan: (a) AND-NOT; (b) NOTOR; (c) simbolul logic al unei pori NAND; (d) simbol echivalent al unei pori NAND.

Figura 4-3 Circuite echivalente conform teoremei T13, a lui DeMorgan: (a) OR-NOT; (b) NOTAND; (c) simbolul logic al unei pori NOR; (d) simbol echivalent al unei pori NOR.

Teoremele T13 i T13' sunt cazuri particulare ale teoremei generalizate a lui DeMorgan, T14, aplicabil unei expresii logice oarecare, F. Prin definiie, complementul unei expresii logice, notat (F)', este o expresie a crei valoare este opus valorii expresiei F pentru orice combinaie de intrare posibil. Teorema T14 este foarte important deoarece ne ofer o cale de prelucrare i simplificare a complementului unei expresii. Teorema T14 afirm c, dat fiind o expresie logic de n variabile, complementul acesteia se poate obine nlocuind + cu i invers i complementnd toate variabilele. De exemplu, s considerm expresia: F(W, X, Y, Z) = (W' X) + (X Y) + (W (X' + Z')) = ((W)' X) + (X Y) + (W ((X)' + (Z)')) n rndul al doilea am introdus ntre paranteze variabilele complementate pentru a v aminti c ' nu face parte din denumirea variabilei, ci este un operator. Aplicnd teorema T14 obinem: [F(W,X,Y,Z)]' = ((W')' + X') (X' + Y') (W' + ((X')' (Z')')) Cu teorema T4, expresia se simplific la: [F(W,X,Y,Z)]' = (W + X') (X' + Y') (W' + (X Z)) 4.1.5 Dualitatea Toate axiomele algebrei de comutaie au fost enunate n perechi. Varianta notat cu prim a fiecrei axiome (de exemplu A5') se obine din varianta fr notaia prim (de exemplu A5) prin simpla schimbare ntre 0 i 1 i ntre i +, atunci cnd aceti operatori apar. n consecin, putem enuna urmtoarea metateorem o teorem despre teoreme: Principiul dualitii: Orice teorem sau identitate din algebra de comutaie i pstreaz valabilitatea dac se nlocuiesc reciproc, peste tot, 0 i 1 i i +. Dualitatea prezint importan deoarece tot ceea ce a fost descris despre algebra de comutaie i despre tratarea funciilor de comutaie are o dubl utilitate. De exemplu, dac s-a artat cum se sintetizeaz circuitele logice AND-OR cu dou etaje pornind de la o expresie format dintr-o sum de produse, se cunoate automat i metoda dual de sintetizare a circuitelor OR-AND pornind de la o expresie format dintr-un produs de sume.

n algebra de comutaie exist un singur caz n care i + sunt tratate diferit, deci dualitatea nu este totdeauna valabil. S considerm urmtorul enun al teoremei T9 i duala sa, n mod clar absurd: X+XY=X XX+Y=X (teorema T9) (dup aplicarea principiului dualitii)

X + Y = X (dup aplicarea teoremei T3') Evident, ultimul rnd de mai sus este un enun fals; unde este eroarea? Problema const n respectarea ordinei operatorilor. Membrul stng al relaiei din primul rnd a fost scris corect fr paranteze deoarece, prin convenie, operatorul are prioritate. ns, dup aplicarea principiului dualitii, ar fi trebuit s acordm prioritate operatorului + sau s scriem cel de-al doilea rnd sub forma X (X + Y) = X. Cea mai bun modalitate de a evita erorile de acest gen este scrierea cu toate parantezele a expresiei nainte de a trece la duala acesteia. n fig. 4-4 (a) apare tabelul de adevr al semnalelor electrice caracteristice funciei unui element logic pe care l vom numi simplu poart de tipul 1. n convenia de logic pozitiv (LOW = 0 i HIGH = 1), aceasta este o poart AND, ns n convenia de logic negativ (LOW = 1 i HIGH = 0), este o poart OR, cum arat fig. (b) i (c). Ne putem imagina i o poart ,,de tipul 2, ca aceea din fig. 4-5, care realizeaz funcia OR n logic pozitiv i AND n logic negativ. Asemenea tabele se pot scrie i pentru pori cu mai mult de dou intrri.

Figura 4-4 Poart logic de tipul 1: (a) tabelul logic al semnalelor electrice; (b) tabelul funciei logice i simbolul n logic pozitiv; (c) tabelul funciei logice i simbolul n logic negativ.

Figura 4-5 Poart logic de tipul 2: (a) tabelul logic al semnalelor electrice; (b) tabelul funciei logice i simbolul n logic pozitiv; (c) tabelul funciei logice i simbolul n logic negativ.

S considerm o expresie logic oarecare, F(X1, X2, ..., Xn). Respectnd convenia de logic pozitiv, putem construi un circuit care s realizeze aceast funcie folosind inversoare pentru operaia de negare, pori de tipul 1 pentru AND i pori de tipul 2 pentru OR, ca n fig. 4-6. Acum s presupunem c nu schimbm nimic n circuit, ns trecem de la logica pozitiv la cea negativ. Atunci, circuitul trebuie refcut ca n fig. 4-7. Este clar c pentru toate combinaiile posibile de semnale de intrare (HIGH i LOW), circuitul genereaz aceeai tensiune de ieire. Dar, din punctul de vedere al algebrei de comutaie, valoarea de ieire - 0 sau 1 - este opus celei obinute n convenia de logic pozitiv. Analog, fiecare valoare de intrare reprezint acum opusul celei anterioare. Prin urmare, pentru orice combinaie posibil de semnale de la intrarea circuitului din fig. 4-6, la ieire se obine opusul valorii rezultate din aplicarea combinaiei de valori opuse la intrrile circuitului din fig. 4-7:

Figura 4-6 Circuit ce realizeaz o funcie logic folosind inversoare i pori de tipurile 1 i 2, n convenia de logic pozitiv.

Prin complementarea ambilor membri se obine teorema lui DeMorgan generalizat: [F(X1,X2,...,Xn)]' = FD(X1,X2,...,Xn)
Tabelul 4-4 Forma general a tabelului de adevr al unei funcii logie de trei variabile F(X, Y, Z).

Figura 4-7 Interpretarea n logic negativ a circuitului prezentat anterior.

Rndul 0 1 2 3 4 5 6 7

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 (0, 0, 0) F (0, 0, 1) F (0, 1, 0) F (0, 1, 1) F (1, 0, 0) F (1, 0, 1) F (1, 1, 0) F (1, 1, 1)

Reprezentarea de baz a unei funcii logice este tabelul de adevr. Bazndu-se pe concepie similar metodei de demonstrare prin inducie perfect, aceast reprezentare grosier este, pur i simplu, o list a valorilor obinute la ieirea unui circuit pentru toate combinaiile de intrare posibile. Tradiional, combinaiile de intrare sunt aranjate pe o coloan n ordinea 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 n tabelul 4-4. Rndurile sunt numerotate de la 0 la 7, corespunztor combinaiilor binare de intrare, dar aceast numerotare nu este esenial pentru coninutul tabelului de adevr. n tabelul 4-5 este prezentat tabelul de adevr pentru un caz particular de funcie logic de trei variabile. Fiecare combinaie de 0 i 1 din coloana valorilor de ieire realizeaz o funcie logic diferit de celelalte; exist 28 asemenea combinaii. Deci funcia logic din tabelul 4-5 este una dintre cele 28 funcii logice diferite, de trei variabile. Tabelul de adevr corespunztor unei funcii logice de n variabile conine 2n rnduri. Rndul X Y Z F 0 0 0 0 1 1 0 0 1 0 2 0 1 0 0 3 0 1 1 -1 4 1 0 0 1 5 1 0 1 0 6 1 1 0 1 7 1 1 1 1

Tabelul 4-5 Tabelul de adevr pentru un caz particular de funcie logic de trei variabile F(X, Y, Z).

Informaiile coninute de un tabel de adevr pot fi interpretate i algebric. n acest scop ne sunt necesare cteva definiii: Variabilele sau complementele variabilelor reprezentate printr-o singur liter se numesc variabile literale. Exemple: X, Y, X', Y. Un termen produs este o variabil literal sau produsul logic a dou sau mai multe variabile literale. Exemple: Z, W X Y, X Y' Z, W' Y' Z. 0 expresie sum de produse este suma logic a unor termeni produs. Exemple: Z' + W X Y + X Y' Z + W' Y' Z. Un termen sum este o variabil literal sau suma logic a dou sau mai multe variabile literale. Exemple: Z', W + X + Y, X + Y' + Z, W' + Y' + Z. 0 expresie produs de sume este produsul logic al unor termeni sum. Exemple: Z' (W + X+ + Y ) (X + Y' + Z ) (W' +Y' + Z). Un termen normal este un produs sau o sum n care nici o variabil nu se repet. Un termen non-normal poate fi adus totdeauna la forma unei constante sau a unui termen normal prin aplicarea uneia dintre teoremele T3, T3', T5 sau T5'. Exemple de termeni non-normali: W X X Y', W + W + X'+ Y, X X' Y. Exemple de termeni normali: W X Y, W + X' + Y. Un mintermen de n variabile este un termen normal, produs a n variabile literale. Exist 2n asemenea produse. Exemple de mintermeni de 4 variabile: W' X' Y' Z', W X Y Z, W' X' Y Z'.

Un maxtermen de n variabile este un termen normal, sum a n variabile literale. Exist 2n asemenea sume. Exemple de maxtermeni de 4 variabile: W' + X' + Y' + Z', W + X' + Y' + Z, W' + X' + Y + Z'. Exist o coresponden strns ntre tabelul de adevr, mintermeni i 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 4-6 nfieaz aceast coresponden ntr-un tabel de adevr pentru trei variabile.
Rndul 0 1 2 3 4 5 6 7 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 (0, 0, 0) F (0, 0, 1) F (0, 1, 0) F (0, 1, 1) F (1, 0, 0) F (1, 0, 1) F (1, 1, 0) F (1, 1, 1) Mintermeni X Y Z X Y Z X Y Z X Y Z X Y Z X Y Z X Y Z XYZ Maxtermeni X+Y+Z X + Y + Z X + Y + Z X + Y + Z X + Y + Z X + Y + Z X + Y + Z X + Y + Z

Tabelul 4-6 Mintermenii i maxtermenii unei funcii logice de trei variabile, F(X, Y, Z).

Un mintermen de n variabile poate fi reprezentat printr-un ntreg de n bii, denumit numrul mintermenului. Mintermenul corespunztor rndului i din tabelul de adevr va fi numit mintermenul i. n acest mintermen, o variabil dat apare complementat dac bitul corespunztor ei n reprezentarea binar a numrului i este 0; n caz contrar, variabila apare necomplementat. De exemplu, pentru rndul 5, reprezentarea binar este 101, iar mintermenul corespunztor este X Y' Z. Aa cum, probabil, v ateptai, n cazul maxtermenilor, totul este invers: n maxtermenul i, o variabil este complementat dac bitul corespunztor ei n reprezentarea binar este 1. Prin urmare, maxtermenul 5 (101) este X' + Y + Z'. Remarcai c toate cele expuse pn acum sunt aplicabile dac tim numrul de variabile din tabelul de adevr - trei, n exemple. Plecnd de la corespondena dintre tabelul de adevr i mintermeni, putem obine cu uurin o reprezentare algebric a funciei logice, dedus din tabelul de adevr. Suma canonic a unei funcii logice este suma mintermenilor corespunztori rndurilor (combinaiilor de intrare) din tabelul de adevr pentru care valoarea de ieire a funciei este 1. De exemplu, suma canonic a funciei logice din tabelul 4-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 Aici, notaia reprezint o list a mintermenilor cu semnificaia suma mintermenilor 0, 3, 4, 6 i 7 cu variabilele X, Y i Z. Lista mintermenilor mai este denumit i deschiderea funciei logice (on-set). V putei da seama c fiecare mintermen deschide ieirea exact pentru o singur combinaie de intrare. Orice funcie logic poate fi scris sub forma unei sume canonice. Produsul canonic al unei funcii logice este produsul maxtermenilor corespunztori combinaiilor de intrare pentru care valoarea de ieire a funciei este 0. De exemplu, produsul canonic al funciei logice din tabelul 4-5 este: F = X, Y, Z (1, 2, 5) = (X + Y + Z') (X + Y' + Z) (X' + Y + Z')

Aici, notaia reprezint o list a maxtermenilor cu semnificaia produsul maxtermenilor 1, 2 i 5 cu variabilele X, Y i Z. Lista maxtermenilor mai este denumit i nchiderea funciei logice (off-set). V putei da seama c fiecare maxtermen nchide ieirea exact pentru o singur combinaie de intrare. Orice funcie logic poate fi scris sub forma unui produs canonic. Conversia ntre lista de mintermeni i cea de maxtermeni se efectueaz uor. n cazul unei funcii de n variabile, mintermenii i maxtermenii pot avea numere din mulimea 0, 1, 2n - 1; o list de mintermeni sau de maxtermeni este constituit dintr-o submulime a acestei mulimi. De exemplu:

A, B, C (0, 1, 2, 3) = A, B, C (4, 5, 6, 7) X, Y (l) = X, Y(0, 2, 3) W, X, Y, Z (0, 1, 2, 3, 5, 7, 11, 13) = W, X, Y, Z (4, 6, 8, 9, 10, 12, 14, 15)
Cunoatem acum cinci moduri de reprezentare a unei funcii logice combinaionale: 1. Tabelul de adevr. 2. Suma algebric a mintermenilor, adic suma canonic. 3. Lista mintermenilor, cu notaia . 4. Produsul algebric al maxtermenilor, adic produsul canonic. 5. Lista maxtermenilor, cu notaia . Fiecare dintre aceste reprezentri ofer exact aceleai informaii; cunoscnd pe oricare dintre ele, le putem deduce pe celelalte patru printr-un mecanism de calcul simplu.

4.2 Transformri de configuraii


Metodele de proiectare prezentate pn acum folosesc pori AND, OR i NOT. Dar se poate ntmpla s dorim s utilizm i pori NAND i NOR, acestea fiind, n majoritatea tehnologiilor, mai rapide dect porile AND i OR. ns, de obicei, oamenii nu construiesc propoziii logice cu ajutorul conjunciilor NAND i NOR. Prin urmare, dac se d o expresie logic fireasc, aceasta trebuie transpus, prin anumite metode, n alte forme.

Figura 4-8 Implementri alternative pornind de la sume de produse: (a) cu pori AND-OR; (b) cu

pori AND-OR i perechi de inversoare suplimentare; (c) cu pori NAND-NAND.

Putem transforma orice expresie logic ntr-o sum de produse echivalent, prin simpla deschidere a parantezelor. Aa cum arat fig. 4-8 (a), o asemenea expresie poate fi implementat direct cu pori AND i OR. Inversoarele necesare pentru complementarea intrrilor nu sunt reprezentate n desen. Dup cum observai n fig. 4-8 (b), se poate introduce cte o pereche de inversoare ntre fiecare ieire a unei pori AND i intrarea porii OR corespunztoare dintr-un circuit AND-OR cu dou niveluri. Conform teoremei T4, aceste inversoare nu modific funcia de ieire a circuitului. Am reprezentat intenionat cerculeul inversor la intrarea celui de-al doilea inversor din fiecare pereche, pentru a v aminti i prin imagine c inversrile se anuleaz reciproc. Dac ncorporm aceste inversoare n porile AND i OR, obinem pori AND-NOT pe primul nivel i NOT-OR pe nivelul al doilea. Acestea nu sunt dect dou variante de reprezentare a aceluiai tip de poart NAND. Prin urmare, un circuit cu dou niveluri AND-OR poate fi transformat ntr-un circuit cu dou niveluri NAND-NAND prin simpla substituire a porilor. Dac oricare dintre produsele din expresia sum de produse este format dintr-o singur variabil literal, este posibil ca, n cursul transformrii din AND-OR n NAND-NAND, s pierdem sau s ctigm inversoare. Astfel, n exemplul din fig. 4-9 nu mai este necesar prezena unui inversor la intrarea W, ns trebuie adugat unul la intrarea Z.

Figura 4-9 Alte circuite cu dou niveluri obinute pe baza unor sume de produse: (a) AND-OR; (b) AND-OR cu perechi de inversoare suplimentare; (c) NAND-NAND.

Am artat c orice expresie sum de produse poate fi implementat n dou moduri, fie ca un circuit cu pori AND-OR, fie ca unul NAND-NAND. Duala acestei afirmaii este, de asemenea, valabil: orice expresie produs de sume poate fi implementat ca un circuit ORAND sau ca un circuit NOR-NOR. Un exemplu este cel din fig. 4-10. Orice expresie logic poate fi transformat ntr-o expresie produs de sume echivalent, prin gruparea corespunztoare a termenilor, i deci poate fi implementat att printr-un circuit OR-AND, ct i printr-unul NOR-NOR.

Aceeai modalitate de transformare poate fi aplicat oricrui circuit logic. De exemplu, n fig. 4-11 (a) este prezentat un circuit construit din pori AND i OR. Dup adugarea perechilor de inversoare se obine circuitul din (b). Observai ns c una dintre pori - poarta AND cu dou intrri, dintre care o singur intrare este inversoare - nu este o poart standard. Putem folosi un inversor separat, ca n fig. (c), pentru a obine un circuit format exclusiv din pori standard, AND, NAND i inversoare. ns inversorul este mai bine folosit n fig. (d); se elimin astfel ntrzierea introdus de un nivel de pori, iar ultima poart devine NOR, n loc de AND. n majoritatea tehnologiilor de circuite logice, porile inversoare, ca NAND i NOR, sunt mai rapide dect cele neinversoare, ca AND i OR.

Figura 4-10 Implementarea unei expresii produs de sume: (a) OR-AND; (b) OR-AND cu perechi de inversoare suplimentare; (c) NOR-NOR.

Evaluare