I.5. LOGIKI FÜGGVÉNEK EGSERŰSÍTÉSE (MINIMLIÁCIÓ) Nem mindegy, hogy a logikai függvényeket mennyi erőforrás felhasználásával valósítjuk meg. Előnyös, ha kevesebb logikai kaput alkalmazunk ugyanarra a feladatra, illetve, ha csökkenteni tudjuk az egyes részfüggvények bemeneti változóinak számát. 1
Elsőként az algebrai lehetőségeket tekintjük át, majd a Karnaugh féle grafikus egyszerűsítési módszerrel ismerkedünk meg. Ez utóbbinak ma szinte csak pedagógiai jelentősége van, mivel a kézi tervezések háttérbe szorultak. Harmadikként a Quine féle módszert tárgyaljuk, amely alkalmas szoftveres megvalósításra. 2
LGERI EGSERŰSÍTÉS z algebrai egyszerűsítésnél a matema3kai logika törvényeit felhasználva egyszerűsítjük a függvényt. Pl. z egyenlőség felhasználásával az alábbi két logikai szorzat egyetlen szorzatra vezethető vissza, valamint a bemeneti változók számát is sikerült csökkenteni: 1 C C ( ) C C 3
Természetesen ez jelentős megtakarítást jelent a hardverben: két darab három bemenetű ÉS kapu és egy darab két bemenetű VG kapu helyett egyetlen két bemenetű ÉS kapuval megvalósítható a kifejezés. z algebrai egyszerűsítéssel az a gond, hogy nem áttekinthető és nem gépiesíthető. Nehéz felfedni, hogy mely tagokat lehetne összevonni, mely törvények alkalmazásával. 4
KRNUGH FÉLE GRFIKUS MÓDSER grafikus egyszerűsítésnél rendszerint a függvény igazságtáblázatából indulunk ki. Ha algebrai alak áll rendelkezésre, azt ki kell bővíteni a diszjunktív kanonikus alakra, amiből egyértelműen következik az igazságtáblázat. z igazságtáblázatból nem egyszerű belátni, hogy mely mintermeket lehetne összevonni és ezzel egyszerűsíteni a függvényt. z összevonással kapott tagokat prím implikánsoknak nevezzük. Esettől függően kettő, négy, nyolc, tizenhat... minterm vonható össze. 5
Úgy kell a mintermeket elrendezni (síkban vagy térben), hogy a szomszédosak (amelyek csak egyetlen változó ponált és negált alakja miatt különböznek) egymás mellé kerüljenek. z összevonást lefedő tömbbel jelöljük. z ilyen elrendezést Karnaugh táblának nevezzük. tábla előnye, hogy jól beláthatók az egyszerűsítési lehetőségek. Egy változó esetére a Karnaugh tábla a következő: 0 1 m i m 0 m 1 0 m 0 1 m 1 6
Két változó esetére a Karnaugh tábla a következő: m i 0 0 0 1 1 0 1 1 m 0 m 1 m 2 m 3 0 1 0 m 0 m 1 1 m 2 m 3 ttól függően, hogy melyik mintermek szerepelnek a függvényben, összevonhatók pl. m0 és m1, m1 és m3, m0 és m2, m2 és m3. 7
8 Egyszerűsítsük az alábbi függvényt először algebrai úton. ( ) m f ) (0,2,3, ( ) f (1) (1) ) ( ) (,, 1 következő két tételt használtuk fel a függvény egyszerűsítésére.
f (, ) m(0,2,3) függvénynek megfelelő Karnaugh táblában három egyes van, mivel három minterm alkotja a függvényt. lehetséges összevonásokat a következő ábra mutatja. lefedő tömböket karikázással jelöltük, a tábla mellé írtuk a lefedő tömböknek megfelelő prím implikánsokat. 0 1 0 1 0 1 1 1 9
z egyszerűsített függvény a következő: f (, ) z eredmény jelentős: a korábbi három két bemenetű ÉS kapu és egy darab három bemenetű VG kapu helyett a függvény megvalósítható egyetlen VG kapuval. 10
Három változó esetére a Karnaugh táblában a következő módon rendezzük el a mintermeket: 11
12 12 Tekintsük a következő két háromváltozós függvényt, amelyetket mind algebrai módszerrel, mind pedig a Karnaugh táblával egyszerűsítünk: ( ) m f ) (1,3,5,7,, 1 ( ) m f ) (1,2,3,6,7,, 2
13 13 ( ) ( ) ( ) ( ) f 1 1 ) ( ) (,, 1 00 01 11 10 0 0 1 1 0 1 0 1 1 0 Mindez együttesen
14 14 ( ) ( ) ( ) ( ) ( ) ( ) f,, 2
Ennek eredménye 00 01 11 10 0 0 1 1 1 1 0 0 1 1 Ennek eredménye 15
Négy változó esetére a Karnaugh táblában a következő módon rendezzük el a mintermeket: 16
QUINE FÉLE TÁLÁTOS MÓDSER Ez az eljárás is a szomszédos mintermek összevonására épül. Megfelelő algoritmussal azokat a logikai szorzatokat keressük, amelyek kódjai csak egy értékben különböznek egymástól. z algoritmus a következő lépésekből áll: 17
1. Csoportosítjuk a mintermeket a kódjukban szereplő egyesek száma szerint. 2. Felsorakoztatjuk a kapott csoportokat, kezdve azzal, amelyben a legkevesebb egyes van. 3. z i-edik csoport minden elemét megpróbáljuk kombinálni az i1-edik csoport minden elemével. Ha összevonási lehetőséget látunk, felírjuk az egyszerűsített szorzatot, a kiküszöbölt változót alsó vonallal jelöljük. 18
4. 3. pontban leírt műveletet folytatjuk az egyszerűsített szorzatokon is, mindaddig, amíg összevonási lehetőség kínálkozik. z utolsó menetben kapott egyszerűsített szorzatok a prím implikánsok. 5. Prím implikáns táblát szerkesztünk annyi oszloppal, ahány minterm van a függvényben és annyi sorral, amennyi a prím implikánsok száma. -szel jelöljük azokat a sor és az oszlop metszéspontját, ha az adott prím implikáns fedi az illető mintermet. 19
6. Kiválasztjuk azokat a (lényeges) prím implikánsokat, amelyek szükségesek a mintermek lefedéséhez (nincsenek már fedve más prím implikánsokkal). 7. maradék prím implikánsok közül kiválasztjuk azokat, amelyek minimálisan szükségesek a lényeges prím implikánsokkal még le nem fedett mintermek lefedéséhez. 8. z így kapott prím implikánsok alkotják az egyszerűsített függvényt. 20