Upload
ady-andrei
View
145
Download
4
Embed Size (px)
DESCRIPTION
Analiza si sinteza dispozitivelor numerice
Citation preview
MINIMIZAREA FUNCłIILOR BOOLEENE
27.10.2009 Curs 4 ASDN 2
3.3.3. Minimizarea funcŃiilor booleene
� Gradul de complexitate al funcŃiei booleene ⇔Gradul de complexitate al circuitului numeric
� În sinteza circuitelor de comutaŃie - etapa de minimizare, după etapa de definire
� Scopul minimizării = obŃinerea unor forme echivalente mai simple ⇒ forma minimă
� Metode de minimizare (simplificare) ⇒ expresii minimale de forma SAU-uri de ŞI-uri (reuniune minimală) ori ŞI-uri de SAU-uri (intersecŃie minimală)
27.10.2009 Curs 4 ASDN 3
3.3.3. Minimizarea funcŃiilor booleene
� Criterii utilizate pentru minimizare:� Reducerea numărului de variabile
� Reducerea numărului de termeni
� Reducerea pe ansamblu a variabilelor şi termenilor încât suma lor să devină minimă
� Metode de minimizare:� Grafice
� Algebrice
27.10.2009 Curs 4 ASDN 4
3.3.3.1. Minimizarea grafică
1. Diagrama Karnaugh - funcŃii complet definite� Minimizarea se bazează pe proprietatea de adiacenŃă
a codului Grey
� Se aleg suprafeŃe maxime formate din constituenŃi ai unităŃii, respectiv din constituenŃi ai lui zero
� SuprafeŃele au ca dimensiune un număr de compartimente egal întotdeauna cu puteri ale lui 2
� SuprafeŃele corespund termenilor canonici, termenii vecini fiind adiacenŃi (diferă printr-un singur bit)
27.10.2009 Curs 4 ASDN 5
3.3.3.1. Minimizarea grafică
1. Diagrama Karnaugh - funcŃii complet definite� Prin gruparea termenilor adiacenŃi şi aplicarea
principiului terŃului exclus (x + x = 1) şi a proprietăŃii elementului unitate (x • 1 = x) eliminăm o variabilă:
x1 • x2 + x1 • x2 = x1
� O suprafaŃă cu 2m compartimente va elimina “m”variabile de intrare
� Un compartiment poate fi membru în mai multe suprafeŃe (x + x + … + x = x şi x • x •...• x = x)
27.10.2009 Curs 4 ASDN 6
3.3.3.1. Minimizarea grafică
1. Diagrama Karnaugh - funcŃii complet definite� Metoda de minimizare:
� Se realizează grupări de compartimente (numărul compartimentelor egal cu puteri ale lui 2)
� Se scriu ecuaŃiile corespunzătoare fiecărei suprafeŃe ⇒
termenii elementari
� Se realizează:� FDM = forma disjunctivă minimă - prin însumarea termenilor
elementari obŃinuŃi prin gruparea constituenŃilor lui 1
� FCM = forma conjunctivă minimă - prin înmulŃirea termenilor elementari obŃinuŃi prin gruparea constituenŃilor lui 0
27.10.2009 Curs 4 ASDN 7
3.3.3.1. Minimizarea grafică
1. Diagrama Karnaugh - funcŃii complet definite
� OBS. FuncŃiile minimale obŃinute în cele 2 forme de
minimizare sunt identice (diferă doar forma de reprezentare)
27.10.2009 Curs 4 ASDN 8
3.3.3.1. Minimizarea grafică
1. Diagrama Karnaugh - funcŃii complet definite
� Exemplu: f (x1,x2,x3,x4) = Σ (3, 7, 8, 9, 12, 13, 15)
� Minimizarea cu constituenŃii lui 1 (FDM) are 2 variante, după cum se aleg suprafeŃele de minimizare x4
x1x2 x3x4 00 01 11 1000 0 0 1 001 0 0 1 0 x2
x1 11 1 1 1 010 1 1 0 0
x3
27.10.2009 Curs 4 ASDN 9
3.3.3.1. Minimizarea grafică
1. Diagrama Karnaugh - funcŃii complet definite
� Exemplu: f (x1,x2,x3,x4) = Σ (3, 7, 8, 9, 12, 13, 15)
� Minimizarea cu constituenŃii lui 1 (FDM) are 2 variante, după cum se aleg suprafeŃele de minimizare
fFDM1 = x1•x3 + x1•x3•x4 + x1•x2•x4 sau
fFDM2 = x1•x3 + x1•x3•x4 + x2•x3•x4
27.10.2009 Curs 4 ASDN 10
3.3.3.1. Minimizarea grafică
1. Diagrama Karnaugh - funcŃii complet definite
� Exemplu: f (x1,x2,x3,x4) = Σ (3, 7, 8, 9, 12, 13, 15)
� Implementarea cu porŃi de tip ŞI-NU utilizează principiul dublei negaŃii şi apoi teoremele lui De Morgan
� fFDM1 = fFDM1 = x1•x3 + x1•x3•x4 + x1•x2•x4 =
= x1•x3 • x1•x3•x4 • x1•x2•x4 =
= x1•x3•x3 • x1•x1•x3•x4 • x1•x2•x4
27.10.2009 Curs 4 ASDN 11
3.3.3.1. Minimizarea grafică
1. Diagrama Karnaugh - funcŃii complet definite
� Exemplu: f (x1,x2,x3,x4) = Σ (3, 7, 8, 9, 12, 13, 15)
� Minimizarea cu constituenŃii lui 0 (FCM)
� fFCM = (x1 + x3) • (x3 + x4) • (x1 + x2 + x3)
x4
x1x2 x3x4 00 01 11 1000 0 0 1 001 0 0 1 0 x2
x1 11 1 1 1 010 1 1 0 0
x3
27.10.2009 Curs 4 ASDN 12
3.3.3.1. Minimizarea grafică
2. Diagrama Karnaugh - funcŃii incomplet definite� FuncŃii incomplet definite: în anumite puncte ale
domeniului de definiŃie pot lua valoarea 0 sau 1
� SituaŃii:� CombinaŃii ale variabilelor de intrare pentru care funcŃia
are valori indiferente (nedefinite)
� CombinaŃii ale variabilelor de intrare care nu pot să apară din punct de vedere fizic - se studiază dacă pot să apară
la manevre false sau după defecte de funcŃionare
27.10.2009 Curs 4 ASDN 13
3.3.3.1. Minimizarea grafică
2. Diagrama Karnaugh - funcŃii incomplet definite� Valorile funcŃiei în DK se numesc în aceste situaŃii
indiferente sau arbitrare sau redundante� NotaŃia acestor valori se face cu “X”
� La minimizare, pentru “X” se dau valori de 1 sau de 0, în funcŃie de situaŃie, pentru obŃinerea unei forme minime a funcŃiei
� ObservaŃie: FuncŃia minimizată în FDM nu mai coincide întotdeauna cu funcŃia minimizată în FCM
27.10.2009 Curs 4 ASDN 14
3.3.3.1. Minimizarea grafică
2. Diagrama Karnaugh - funcŃii incomplet definite� Exemplu: funcŃie incomplet definită reprezentată
direct în DK
� Minimizam în FDM şi alegem “X” cu valoare 1, acolo unde este cazul
� OBSERVAłIE: Nu se grupează în suprafeŃe numai valori de “X”!!!
27.10.2009 Curs 4 ASDN 15
3.3.3.1. Minimizarea grafică
2. Diagrama Karnaugh - funcŃii incomplet definite� Exemplu: funcŃie incomplet definită reprezentată
direct în DK
� fFDM = x1•x2 + x2•x3 + x1•x4 + x2•x4
x4
x1x2 x3x4 00 01 11 1000 x 101 x 1 x x2
x1 11 1 1 110 1 x 1 x
x3
27.10.2009 Curs 4 ASDN 16
3.3.3.1. Minimizarea grafică
3. Diagrama Karnaugh - cu expresii� SuperpoziŃia funcŃiilor booleene
� Dacă avem F(X), unde X = (x1,x2,…xi,xi+1,…,xn) şi considerăm X1 = (x1,x2,…xi) şi X2 = (xi+1,…,xn) şi dacă F(X) se poate scrie F(X) = f3[f 1(X1), f2(X2)] atunci F(X) s-a obŃinut prin superpoziŃia funcŃiilor f 1(X1) şi f2(X2)
� DecompoziŃia funcŃiilor booleene� Dacă avem f(X), unde X = (x1,x2,…,xn) şi un set de
funcŃii, decompoziŃia înseamnă că F(X) se poate scrie:
� f(X) = fm[fm-1(Xm-1), fm-2(Xm-2),…, f1(X1), X0] cu Xi ⊂ X
27.10.2009 Curs 4 ASDN 17
3.3.3.1. Minimizarea grafică
3. Diagrama Karnaugh - cu expresii
� Exemplu: f(x1,x2,x3,x4) = Σ (0, 2, 3, 7, 9, 10, 11, 14)
� fFDM = x1•x2•x4 + x1•x3•x4 + x1•x3•x4 + x1•x2•x4 =
= x2•(x1 • x4) + x3•(x1 + x4) = x2•G + x3•G
unde G = (x1 + x4)
x4
x1x2 x3x4 00 01 11 1000 1 1 101 1 x2
x1 11 110 1 1 1
x3
27.10.2009 Curs 4 ASDN 18
3.3.3.1. Minimizarea grafică
3. Diagrama Karnaugh - cu expresii
� Exemplu: f(x1,x2,x3,x4) = Σ (0, 2, 3, 7, 9, 10, 11, 14)
� Folosind decompoziŃia f(X) = f2[f 1(X1), X0] putem scrie f = f2[G(x1,x4), x2, x3]
� În continuare facem un artificiu de calcul:
f = x2•G + x3•G = x2•G•(x3 + x3) + x3•G•(x2 + x2) =
= x2•x3•G + x2•x3•G + x2•x3•G + x2•x3•G = x2•x3 +
+ x2•x3•G + x2•x3•G
27.10.2009 Curs 4 ASDN 19
3.3.3.1. Minimizarea grafică
3. Diagrama Karnaugh - cu expresii
� Exemplu: f(x1,x2,x3,x4) = Σ (0, 2, 3, 7, 9, 10, 11, 14)
� DK corespunzătoare este acum:
� Prin înglobarea în DK cu număr de compartimente 2n, a “m” expresii (variabile) rezultă o DK cu 2n-m
compartimente
x2 x3 0 10 G 1
x2 1 0 Gx3
27.10.2009 Curs 4 ASDN 20
3.3.3.1. Minimizarea grafică
3. Diagrama Karnaugh - cu expresii� Paşii pentru minimizarea cu DK cu expresii
(variabile) înglobate:� 1. Se consideră toate variabilele ca şi cum ar fi 0 şi se
formează suprafeŃe cu constituenŃii lui 1 şi se minimizează
� 2. Se consideră toate locaŃiile cu 1 indiferente şi se formează suprafeŃe cu variabilele înglobate
� 3. Se consideră intersecŃia variabilelor înglobate cu grupările obŃinute prin minimizare la pasul 2
27.10.2009 Curs 4 ASDN 21
3.3.3.1. Minimizarea grafică
3. Diagrama Karnaugh - cu expresii� Paşii pentru minimizarea cu DK cu expresii
(variabile) înglobate:� 4. Se face reuniunea termenilor obŃinuŃi în paşii 1 şi 3
� 5. Pentru mai multe variabile se repetă pe rând pentru fiecare paşii 1-4 (celelalte variabile se consideră 0), apoi se face reuniunea tuturor termenilor obŃinuŃi
27.10.2009 Curs 4 ASDN 22
3.3.3.1. Minimizarea grafică
3. Diagrama Karnaugh - cu expresii� Exemplu: Să se minimizeze funcŃia cu variabile
înglobate f(x1,x2,x3,a,b,c):
� Pasul 1
� Se obŃine x2•x3 + x1•x3
x1 x2x3 00 01 11 100 a+b 1 c1 1 1 x
x1 x2x3 00 01 11 100 11 1 1 x
27.10.2009 Curs 4 ASDN 23
3.3.3.1. Minimizarea grafică
3. Diagrama Karnaugh - cu expresii� Exemplu: Să se minimizeze funcŃia cu variabile
înglobate f(x1,x2,x3,a,b,c):
� Pasul 2 şi 3
� Se obŃine c•x2 + (a+b)•x1•x3
� Pasul 4 - se obŃine funcŃia minimizată:
� f = x2•x3 + x1•x3 + c•x2 + (a+b)•x1•x3
x1 x2x3 00 01 11 100 a+b x c1 x x x
27.10.2009 Curs 4 ASDN 24
3.3.3.2. Minimizarea algebrică
� Se bazează pe axiomele şi teoremele algebrei booleene
� Se utilizează pentru funcŃii booleene cu mai mult de 6 variabile
� Exemplu de metodă de minimizare algebrică: Metoda Quine-Mc Cluskey
27.10.2009 Curs 4 ASDN 25
3.3.3.2. Minimizarea algebrică
� Etapele de minimizare:� 1. Se grupează termenii canonici astfel încât
termenii din fiecare grupare să conŃină acelaşi număr de 1, respectiv de 0
� 2. Se compară fiecare termen dintr-o grupare cu toŃi cei din gruparea următoare, aplicând relaŃia de reducere: x1•x2 + x1•x2 = x1.� Se grupează termenii care diferă printr-o singură
variabilă. Termenul obŃinut prin reducere va conŃine “-”pe poziŃia acelei variabile.
� Pasul se repetă până nu se mai pot face reduceri� Termenii rezultaŃi în final se numesc implicanŃi primi IP
27.10.2009 Curs 4 ASDN 26
3.3.3.2. Minimizarea algebrică
� Etapele de minimizare:� 3. Se aleg acei implicanŃi primi IP care asigură
acoperirea minimală a termenilor canonici TC� Se construieşte un tabel de acoperire cu TC pe coloane şi
IP pe linii
� În intersecŃiile tabelului se notează TC care sunt acoperiŃi de fiecare IP
� Unii IP sunt numiŃi esenŃiali deoarece acoperă cel puŃin un TC care nu este acoperit de nici un alt IP ⇒ IP esenŃiali fac parte în mod obligatoriu din expresia minimală finală a funcŃiei
27.10.2009 Curs 4 ASDN 27
3.3.3.2. Minimizarea algebrică
� Exemplu: f(x1,x2,x3,x4) = Σ (0, 2, 3, 5, 7, 8, 10, 11, 13, 15)� Etapa 1 - gruparea termenilor canonici
TC x1 x2 x3 x4
0 0 0 0 0
2 0 0 1 0
8 1 0 0 0
3 0 0 1 1
5 0 1 0 1
10 1 0 1 0
7 0 1 1 1
11 1 0 1 1
13 1 1 0 1
15 1 1 1 1
27.10.2009 Curs 4 ASDN 28
3.3.3.2. Minimizarea algebrică
� Exemplu: f = Σ (0, 2, 3, 5, 7, 8, 10, 11, 13, 15)� Etapa 2 - compararea termenilor din grupe diferite
TC x1 x2 x3 x4
0,2 0 0 - 00,8 - 0 0 02,3 0 0 1 -2,10 - 0 1 08,10 1 0 - 03,7 0 - 1 13,11 - 0 1 15,7 0 1 - 15,13 - 1 0 110,11 1 0 1 -7,15 - 1 1 111,15 1 - 1 113,15 1 1 - 1
27.10.2009 Curs 4 ASDN 29
3.3.3.2. Minimizarea algebrică
� Exemplu: f = Σ (0, 2, 3, 5, 7, 8, 10, 11, 13, 15)� Etapa 2 - continuarea comparării
TC x1 x2 x3 x4
0, 2, 8, 10 - 0 - 0
2, 3, 10, 11 - 0 1 -
3, 7, 11, 15 - - 1 1
5, 7, 13, 15 - 1 - 1
� Dacă în urma comparării un termen apare de mai multe ori se trece o singură dată
� IP rezultaŃi sunt: (0,2,8,10) = x2•x4, (2,3,10,11) = x2•x3, (3,7,11,15) = x3•x4 , (5,7,13,15) = x2•x4
27.10.2009 Curs 4 ASDN 30
3.3.3.2. Minimizarea algebrică
� Exemplu: f = Σ (0, 2, 3, 5, 7, 8, 10, 11, 13, 15)� Etapa 3 - tabelul de acoperire
IP TC 0 2 3 5 7 8 10 11 13 15
0, 2, 8, 10 x x x x
2, 3, 10, 11 x x x x
3, 7, 11, 15 x x x x
5, 7, 13, 15 x x x x
� ImplicanŃii primi esenŃiali sunt (0,2,8,10) şi (5,7,13,15)� Pentru TC neacoperiŃi de IP esenŃiali se pot alege 2
variante de acoperire ⇒ 2 soluŃii de minimizaref = (0,2,8,10) + (5,7,13,15) + (2,3,10,11) = x2•x4 + x2•x4 + x2•x3 sauf = (0,2,8,10) + (5,7,13,15) + (3,7,13,15) = x2•x4 + x2•x4 + x3•x4
27.10.2009 Curs 4 ASDN 31
3.3.4. Minimizarea sistemelor de funcŃii
� Sistemele de funcŃii booleene se exprimă prin:
f: Bn → Bm unde B = {0,1}
� Argumentele funcŃiilor pot fi de “n” variabile
� Există mai multe funcŃii: f 1, f2, …, fm
27.10.2009 Curs 4 ASDN 32
3.3.4. Minimizarea sistemelor de funcŃii
� Se caută implicanŃi primi pentru funcŃiile individuale şi pentru produsele:� f1, f2, …, fm� f1•f2, f1•f3, …, f1•fm
� f1•f2•f3, f1•f2•f4, …
� f1•f2•f3•f4, ...
� Exemplu: pentru un sistem de 3 funcŃii vor rezulta pentru minimizare 7 funcŃii şi produse de funcŃii
� SoluŃia aleasă: cea mai avantajoasă din punct de
vedere al circuitelor disponibile şi al preŃului