You are on page 1of 5

Seminar Circuite Integrate Digitale

Zoltan Hascsi

MINIMIZAREA DIAGRAMELOR VK CU FUNCII LOGICE


1. Reprezentarea funciilor pe diagrame VK compacte S considerm o funcie logic de trei variabile, f, definit prin tabelul de adevr:

a 0 0 0 0 1 1 1 1

b 0 0 1 1 0 0 1 1

c 0 1 0 1 0 1 0 1

f 0 0 1 0 0 1 1 1

Expresia ei normal disjunctiv (FND) este: f = abc + abc + abc + abc Iar reprezentarea ei pe diagrama VK partiionat dup toate cele trei variabile ale sale (a, b i c) este urmtoarea:

b a 1 1 1 0 c 1 0 0 0

Diagrama VK partiionat dup toate variabilele unei funcii o vom numi diagram VK extins sau normal. Dac grupm termenii expresiei normal disjunctive de mai sus n funcie de variabilele a i b, vom obine: f = ab(c) + ab(c) + ab(c + c) = ab(c) + ab(c) +ab(1) Pentru claritate vom introduce i cea de-a patra combinaie a variabilelor a i b, care nu apare explicit n expresiile anterioare, ab. Aceast combinaie va fi nmulit (I) cu 0 logic astfel nct funcia f s nu fie afectat de introducerea ei: f = ab(0) + ab(c) + ab(c) +ab(1) Orice funcie logic de dou variabile, fie acestea a i b, are forma canonic disjunctiv: h = ab h (00) + ab h (01) + ab h (10) +ab h (11) Comparnd ultimele dou expresii logice observm c funcia noastr, f, poate fi egalat cu funcia h dac i numai dac: h(00) = 0, h (01) = c, h (10) = c, h (11) = 1 Era de ateptat acest lucru deoarece funcia f depinde de 3 variabile. Dac ncercm s o reprezentm ntr-o form caracteristic funciilor de dou variabile (form normal cu 4 mintermeni, tabel de adevr cu 4 rnduri, sau diagram VK cu 4 csue) valoarea funciei n punctele definite de combinaiile primelor dou variabile (a i b) poate s nu fie o constant logic (0 sau 1) ci poate depinde de o a treia variabil (c). Digrama VK a funciei f poate fi compactat ntr-o diagram caracteristic funciilor de dou variabile prin gruparea punctelor mulimii de definiie care corespund acelorai combinaii de valori ale variabilelor a i b:

Seminar Circuite Integrate Digitale

Zoltan Hascsi

b a 1f(11) 1 1f(01) 0 c 1f(10) 0 0f(00) 0

Funcia f(00) este restricia funciei iniiale f pe submulimea de puncte de definiie caracterizat prin a = 0 i b = 0, funcia f (01) corespunde submulimii de puncte care au a = 0 i b = 1, .a.m.d. Diagrama compact a funciei f poate fi obinut prin plierea diagramei VK extinse dup tietura variabilei care nu se regsete ntre variabilele care vor mpri diagrama VK compact (n cazul nostru, variabila c):

a 1 1

b 1 0 c 1 0 0 0

O csu de pe diagrama VK extins se va suprapune peste cealalt csu din diagrama extins care are exact aceleai valori ale variabilelor a i b. Pentru a afla ce valoare logic sau ce funcie logic se va pune ntr-o csu de pe diagrama VK compact n locul perechii de valori logice ale csuelor de pe diagrama VK extins ce au fost suprapuse prin pliere, trebuie doar s aflm relaia ntre valorile logice ale perechii i valoarea variabilei c:

b 1 a 1 c

f(11) 1 c f(01) 0

f(10)

f(00) 0 c 0

0 c

Fiecare pereche de valori poate fi imaginat ca o minidiagram VK mprit doar dup variabila c, diagram din care este foarte uor s extragem funcia logic. n final diagrama VK compactat dup variabila c, altfel spus care conine n interior funcii de variabila c, arat aa:

b a 1 c c 0

Diagramele VK cu variabile sau funcii logice n interior nu sunt aadar altceva dect diagramele VK compacte ale unor funcii logice de mai multe variabile.

Seminar Circuite Integrate Digitale

Zoltan Hascsi

2. Minimizarea funciilor pe diagrame VK compacte Pasul I: separarea expresiilor logice distincte S considerm funcia f din exemplul precedent reprezentat prin diagrama VK compact obinut la finalul lui. Putem privi aceast diagram ca o suprapunere de trei diagrame VK, valoarea logic a fiecrei csue din prima diagram fiind suma logic (SAU) a valorilor din csuele suprapuse ale ultimelor trei diagrame:

b a 1 c c 0

f a

b 1 0 0 0

f1 a

b x 0 c 0

fc a

b x c 0 0

fc

Astfel valoarea logic a funciei f n csua din stnga sus, corespunztoare domeniului a = 1 i b = 1, este suma logic a valorilor funciilor f1, fc i fc n punctul (a,b) = (1,1), punct localizat de asemenea n csua din stnga sus pe diagramele lor: f (a=1, b=1) = 1 + x + x = 1 Analog pentru celelalte csue ale diagramei compuse: f (a=1, b=0) = 0 + c + 0 = c f (a=0, b=1) = 0 + 0 + c = c f (a=0, b=0) = 0 + 0 + 0 = 0 Cele trei diagrame au permis separarea expresiilor logice distincte care apar pe diagrama compact, ct i separarea lor de valorile logice de 1. Diagrama lui f1 conine numai valori logice de 1 n afara celor nule, diagrama fc conine numai instane ale variabilei c n afara valorilor nule, iar fc conine numai instane ale expresiei c n afara valorilor nule. Pasul II: Reducerea diagramelor VK ce conin variabile sau expresii logice Funcia a crei diagram conine numai valori nule i instane ale unei singure variabile poate fi exprimat ca produs logic (I) ntre acea variabil i o alt funcie care pe o asemenea diagram este reprezentat numai prin valori logice de 0 i de 1. Astfel, funcia fc poate fi rescris ca produsul logic ntre variabila c i o alt funcie, f2c :

b a x 0 c 0

fc a

b cx c1 c0 c0

fc a

b x 0 1 0

f2 c

n acelai mod o funcie a crei diagram conine numai valori nule i instane ale unei expresii logice poate fi exprimat ca produs logic (I) ntre acea expresie logic i o alt funcie care pe o asemenea diagram este reprezentat numai prin valori logice de 0 i de 1. Astfel, funcia fc poate fi rescris ca produsul logic ntre expresia logic c i o alt funcie, f2c :

b a x c 0 0

fc a

b cx c0 c1 c0

fc a

b x 1 0 0

f2 c

Seminar Circuite Integrate Digitale

Zoltan Hascsi

Dnd factor comun variabila sau expresia logic din diagrama iniial, se obine astfel o diagram VK redus ce conine numai valori logice de 0 i 1, diagram ce va fi minimizat prin metoda clasic. Pasul III: minimizarea diagramelor reduse

b a f 1 0 0 0

f1 a

b x 0 1 0

f2c a

b x 1 0 0

f2c

+ c

Dup minimizare funciile corespunztoare diagramelor reduse devin: f1 = ab f2c = a f2c = b Pasul IV: suma logic a tuturor produselor corespunztoare diagramelor reduse f = f1 + f c + f c = f1 + c f 2c + c f 2c = a b + c a + c b Observaie. Dac pe ultimul desen reintroducem variabilele c i c n diagramele corespunztoare, prin I-ul logic ntre acestea i valorile logice din diagrame, vom obine:

b a f 1 0 0 0

f1 a

b x 0 c 0

fc a

b x c 0 0

fc

Cum suma logic (SAU) a funciilor booleene este echivalent n spaiul boolean multidimensional cu reuniunea mulimilor punctelor n care acele funcii au valori logice 1, putem suprapune suprafeele obinute la minimizarea separat a funciilor f1, f c i f c pe o singur diagram. Suma logic a funciilor f1, f c i f c este chiar funcia f. prin urmare suprafeele suprapuse vor reprezenta chiar acoperirea funciei f:

b a 1 c c 0

f a

b 1 0 0 0

f1 a

b x 0 c 0

fc a

b x c 0 0

fc

Seminar Circuite Integrate Digitale

Zoltan Hascsi

3. Algoritm pentru minimizarea funciilor pe diagrame VK compacte Pentru ilustrare vom folosi aceeai diagram compact. Etapa I: construcia diagramei funciei f1 i minimizarea acesteia Funcia f1 se obine prin nlocuirea cu valoarea logic 0 a tuturor variabilelor i expresiilor logice ce apar n interiorul diagramei compacte:

b a 1 c c 0

f a

b 1 0 0 0

f1

Dup minimizare se obine f1 = ab . Etapa a II-a: construcia diagramelor funciilor f2 exp i minimizarea acestora Aceast etap se repet pentru fiecare variabil i expresie logic distinct din interiorul digramei compacte. Funcia f2 exp se obine prin nlocuirea cu valoarea logic 1 a expresiei logice exp, respectiv cu valoarea logic 0 a celorlaltor expresii logice din diagrama compact. n plus, csuele care pe diagrama compact aveau valoarea logic 1 vor avea o valoare nedefinit, x, ntruct ele au fost deja luate n considerare n etapa I. n diagrama compact de la care am plecat sunt prezente dou expresii logice distincte, c i c. Diagrama funciei f2c va fi:

b a 1 c c 0

f a

b X 0 1 0

f2c

Dup minimizare se obine f2c = a . Pentru cealalt expresie logic, c, diagrama obinut este:

b a 1 c c 0

f a

b X 1 0 0

f2c

Dup minimizare se obine f2c = b . Etapa a III-a: Suma logic ntre forma minim disjunctiv a funciei f1 i produsele dintre fiecare form minim disjunctiv obinut n etapa a II-a i expresia logic corespunztoare. Cum f2c a fost construit plecnd de la variabila c, iar f2c a fost construit lundu-se n considerare expresia logic c, suma logic va arta astfel: f = f1 + c f 2c + c f 2c = a b + c a + c b