K-mapa: úvod a sestavení Karnaughova mapa - minimalizace kombinační logické funkce K-mapou Karnaughova mapa (K-mapa, K-tabulka) je úspornější přepis pravdivostní tabulky, který umožňuje přímý zápis funkce v minimalizovaném tvaru. Karnaughova mapa obsahuje tolik buněk, kolik má pravdivostní tabulka řádků. Sestavení K-mapy: Příklad: tabulka má 8 řádků, K-mapa bude mít 8 buněk, tj. 2x4 nebo 4x2 a b c y 1 4 sloupce musí odpovídat 4 kombinacím – tedy 2 proměnným: a-b Kombinace jsou zapsány v tzv. Grayově kódu, tzn. mezi jednotlivými řádky/sloupci se mění vždy jen jedna proměnná! a-b c 0-0 0-1 1-1 1-0 1 1 1 1 Každému řádku pravdivostní tabulky odpovídá jedna buňka Karnaughovy mapy.
K-mapa: sestavení funkce Sestavení logické funkce z Karnaughovy mapy: v Karnaughově mapě najdeme jedničky, které přímo sousedí, označíme si je smyčkami, které mohou obsahovat 1, 2, 4, 8, atd. jedniček (počet=mocnina dvou), smyčka musí mít tvar čtverce nebo obdélníku (prostě ne L, T, kříž, …), smyčky se mohou překrývat, každá jednička musí být v nějaké smyčce, smyčka může jít i „přes hranu“ tabulky (viz. další příklady) pro každou smyčku napíšeme součin pouze těch proměnných, které jsou pro všechny jedničky v ní společné, pokud je některá ze společných proměnných nulová, dostane negaci, součiny nakonec klasicky sečteme. K-mapa: sestavení funkce Modrá smyčka: Pro obě jedničky platí, že a=0 a b=1. Proměnná c se liší, proto v součinu nebude. Namísto toho, abychom nejprve zapsali všechny součiny a pak pomocí Booleovy algebry eliminovali to, co se liší, takto rovnou zapisujeme jen to, co je společné. Princip funkce je ale naprosto stejný. a-b c 0-0 0-1 1-1 1-0 1 1 1 Červená smyčka: Pro obě jedničky platí, že b=1 a c=0. Proměnná a se liší, proto v součinu nebude. 1 a·b b·c
Další příklady Karnaughovy mapy: K-mapa: příklady Další příklady Karnaughovy mapy: konec a-b c 0-0 0-1 1-1 1-0 1 a-b c-d 0-0 0-1 1-1 1-0 1 a·c·d 1 1 b·c·d 1 1 1 1 a·b y = + c a a·c čím větší je smyčka, tím úspornější je výsledek a-b c 0-0 0-1 1-1 1-0 1 a-b c-d 0-0 0-1 1-1 1-0 1 1 1 b·d 1 1 a·b·d b·c y = + + a·b a·b·c b·c smyčka může jít i „přes hranu“ tabulky