P4 LOGICKÉ OBVODY I. Kombinační Logické obvody
I. a) Základy logiky
Zákony Booleovy algebry 1. Komutativní zákon duální forma a + b = b + a a. b = b. a 2. Asociativní zákon (a + b) + c = a + (b + c) (a. b). c = a. (b. c) 3. Zákon idempotence a + a = a a. a = a 4. Zákon absorpce a + (a. b) = a a. (a + b ) = a 5. Zákon agresivnosti nuly a jedničky a. 0 = 0 a + 1 = 1
Zákon neutrálnosti nuly a jedničky a + 0 = a a. 1 = a Distributivní zákon a. (b + c) = (a. b) + (a. c) a + (b. c) = (a + b). (a + c) Zákon sporu a vyloučeného třetího a. a = 0 a + a = 1. a = 0 a Zákon involuce neboli dvojí negace a + a = 1 a = a Zákon absorpce negace a + a. b = a + b a.( a + b) = a.b De Morganovy zákony a + b + c +... + z = a. b. c... z a. b. c... z = a + b + c +... + z
Shannonův expanzní teorém - rozklad logické funkce I. verze součtová : F(x 1, x 2,, x n ) = x 1.F(1, x 2,, x n ) +. F(0, x 2,, x n ) II. verze součinová : F(x 1, x 2,, x n ) = [x 1 +F(0, x 2,, x n )]. [ + F(1, x 2,, x n )] x 1 x 1 D U A L I T A F U N K C Í F D (x 1, x 2, x 3,, x n, 0, 1, +,.) = F(x 1, x 2, x 3,, x n, 1, 0,., + )
Základní logické funkce
Schematické značky logických členů
Funkce majority Funkce majority je souměrná logická funkce, která nabývá jedničkové hodnoty tehdy, když většina vstupních logických proměnných nabývá logické hodnoty jedna. Př.: Majorita ze tří je rovna jedné právě když 2 nebo 3 logické vstupní proměnné nabývají jedničkovou hodnotu. Označíme ji následovně: M 3 (x, y, z ) nebo x # y # z nebo ji můžeme zapsat jako logickou funkci tří proměnných: M 3 (x, y, z) = x yz + x yz + xyz + xyz a tu je možné realizovat : 1 log. členem OR - čtyřvstupovým a 4 log. členy AND třívstupovými a 3 log. členy NOT invertory Tedy bylo by zapotřebí celkem 8 logických členů(prvků)
Můžeme ale udělat úpravu vytkneme z posledních čl. xy M 3 = x yz + x yz + xyz + xyz = = x yz + x yz + xy = 1 Tuto upravenou funkci můžeme realizovat 1 x OR třívstupový 2 x AND třívstupový 1 x AND dvouvstupový 2 x NOT invertory Tedy celkem by bylo třeba 6 logických členů! A posléze můžeme udělat další úpravu pokud rozšíříme funkci na bázi zákona idempotence : xyz = xyz + xyz + xyz - pak M 3 = x yz + x yz + xyz + xyz = x yz + x yz + xy ( z + z) x yz + x yz + xy ( z + z) = ( x + x) yz + ( y + y) xz + xy( z + z) = xy + xz + yz
Nyní již budeme realizovat majoritní funkci se 4 logickými členy: 1 x OR třívstupový 3 x AND dvouvstupový Pozn: Invertory nepotřebujeme! Zápis logické funkce pravdivostní tabulkou a mapou
Zobrazení do mapy :
Mapy pro 3 a 4 proměnné :
Poznámka: Jedna jedničková hodnota zadané logické funkce může být pokývána libovolněkrát, ale musí být splněna zmíněná kriteria minimality. Příklad Karnaughovy mapy pro 5 proměnných: použit Grayův kód
Normální formy logických funkcí a) Úplná normální disjunktní forma (úndf) - součtová V úplné normální formě je každá jedničková hodnota zadané logické funkce pokrývána jedním termem resp. implikantem. Takový součinový term obsahuje všechny proměnné zadané logické funkce jako přímé nebo negované (minterm). Na příklad u zmíněné majority ze tří (funkce je dána třemi proměnnými) jsou implikanty délky 3 tj. xyz, xyz, x yz, x yz Prvotní popis majoritní funkce ze 3 je zapsán úplnou normální formou. b) Úpná normální konjunktní forma (únkf) - součinová Konjunktní forma pokrývá nulové hodnoty zadané logické funkce svými součtovými termy např. ( x + y + z).( x + y + z).... (maxtermy obsahuje opět všechny proměnné)., atd.
c) Minimální normální disjunktní forma (mndf) Minimální normální disjunktní forma (mndf) obsahuje nejmenší možný počet nejkratších implikantů(součinových termů), tj. přímých implikantů. Kriteria minimality tedy jsou: 1) má minimální délku formy (tj. počet přímých implikantů) 2) má minimální délku implikantů(tj. s min.počtem prom.) 3) eventuelně obsahuje minimální počet negací Minializace pomocí mapy: Pokrýváním jedničkových stavů zadané logické funkce vytvoříme nejmenší počet co největších smyček! Řešení nemusí být jediné. Ukázka viz Karnaughova mapa pro 4 proměnné v předchozím slajdu řešení jsou dvě : 1. F 1 (a,b,c,d) = 2. F 2 (a.b.c.d) = ac + abc + bcd + ac + abc + bcd + abd bcd
Příklad na tabulku pokrytí Je daná následující logická funkce 4 proměnných Úplná množina přímých implikantů {PI}: {PI} = {c.d, a.d, b.c, a.c, a.b.d, b. c.d, a.b.c}
Nejvýhodnějším řešení je první funkce - doplňující implikant má délku 2 (dvě proměnné) :
Realizace log. funkce s členy NAND (NOR)
Další aplikace logických obvodů s členy NAND
Realizace kaskády NAND : Náhrada NAND
Realizace součtové formy s NAND členy
Návrh kombinačních obvodů s členy NAND Výchozí podmínky: - minimální forma logické funkce - jsou dané typy logických členů, resp. se volí pro danou technologii - je daná rychlost logického --------------------------------------------------------------------------------------------- - požaduje se snadná diagnostika a oživování - bere se ohled na konstrukční řešení I. OBECNÁ a KLASICKÁ STRUKTURA AND OR Uvažujme realizaci dané logické v minimálním tvaru: F 3 (a, b, c, d) = a. b + a. d + a. b. d + a. c. d + a. b. c Tuto minimální součtové funkci (mndf) můžeme zakreslit ve struktuře AND - OR
Úprava minimální logické funkce pro realizaci s členy NAND Použijeme zákona dvojí negace (involuce) a De Morganových pravidel F 3 (a, b, c, d) = a. b + a. d + a. b. d + a. c. d + F 3 (a, b, c, d) = a. b + a. d + a. b. d + a. c. d + a. b. c a. b. c (a, F 3 b, c, d) = (a.b). (a. d). (a. b. d). (a. c. d). (a. b. c) Z této úpravy lze již snadno nakreslit schéma se členy NAND neboť každé závorce odpovídá logický člen NAND a negace celého výrazu odpovídá pětivstupovému NAND výstupnímu
Výsledné schéma se členy NAND max. třívstupovými - bylo třeba nahradit výstupní log, člen pětivstupový Úprava logické funkce F 3 (a, b, c, d) = a. b + a. d + a. b. d + a. c. d + a. b. c Funkci rozdělíme na 2 větve F 3 (a, b, c, d) = a. b. a. d. a. b. d + a. c. d. a. b. c Další úprava F 3 (a, b, c, d) = a. b. a. d. a. b. d. a. c. d. a. b. c 1. větev 2. větev
Upravené schéma s 2 a 3 vstupovými log. členy Prodloužení větví znamená delší reakce na výstupech!!
Příklad sčítačky :