LOGICKÉ OBVODY 2 – kombinační obvody, minimalizace
Transkript
LOGICKÉ OBVODY 2 – kombinační obvody, minimalizace • logické obvody kombinační • logické funkce a jejich reprezentace • formy popisu – – tabulka, – n-rozměrné krychle – algebraický zápis – mapy 9.10.2008 Logické obvody - 2 - minimalizace 1 Kombinační x sekvenční obvody • Kombinační – vystup je dán kombinací vstupů, nezáleží na čase • Sekvenční – výstup závisí na posloupnosti (sekvenci) hodnot na vstupech, realizuje se tzv. zpětnou vazbou • Vše lze matematicky popsat – Logická funkce – Konečný automat - FSM 9.10.2008 Logické obvody - 2 - minimalizace 2 Kombinační funkce Kombinační funkce: outk = f(i1, i2, i3, … ip), k=1,2,…,m i1 i2 i3 out1 f ip 9.10.2008 Logické obvody - 2 - minimalizace out2 outm 3 Základní kombinační prvky - hradla Wire Inverter In Out 0 1 Out = In In 0 1 A Out B 0 0 1 1 A Out B 9.10.2008 A B 0 0 0 1 1 0 1 1 A 1 1 1 0 A A 1 1 0 0 Out B DeMorgan’s Theorem Out = A • B = A + B 1 1 1 0 A B Logické obvody - 2 - minimalizace 0 0 1 1 B Out 0 1 0 1 1 0 0 0 Out = A + B = A • B B Out 1 0 1 0 1 0 NOR Gate B Out 0 1 0 1 0 1 Out = In NAND Gate A In Out Out Out A B 0 0 0 1 1 0 1 1 A 1 1 0 0 B Out 1 0 1 0 1 0 0 0 4 Obecná kombinační logická buňka, zpoždění Vout A B . . . Combinational Logic Cell Delay Va -> Vout X Cout X X X X X X delay per unit load Internal Delay Ccritical Cout Kombinační buňka (symbol) je plně určena: – Funkčním chováním (input -> output) • Pravdivostní tabulka, logická rovnice, …. – Zatížením vstupů – Propagačním zpožděním z každého vstupu na výstup a pro každou změnu signálu 9.10.2008 Logické obvody - 2 - minimalizace 5 Návrhový proces • • • • • • • • Specifikace Určení vstupů a výstupů Pravdivostní tabulky Boolovské rovnice Návrh realizace na úrovni hradel Simulace na úrovni hradel Realizace číslicového obvodu Ověření návrhu 9.10.2008 Logické obvody - 2 - minimalizace 6 Základní pojmy logické syntézy 1. Logické funkce a jejich reprezentace, formy popisu a jejich vzájemný převod – – – – tabulka (… měli jsme minule) n-rozměrné krychle algebraický zápis mapy 2. Dvouúrovňová logická minimalizace – • • • terminologie Karnaughova mapa metoda Quine-McCluskey 3. Realizace na úrovni hradel 9.10.2008 Logické obvody - 2 - minimalizace 7 Boolovská n-krychle (cube) B • B = { 0,1} • B2 = {0,1} X {0,1} = {00, 01, 10, 11} B0 n B2 B1 B4 B3 9.10.2008 Logické obvody - 2 - minimalizace 8 Booleovské funkce f(x) : Bn B B = {0, 1}, x = (x1, x2, …, xn) • x1, x2, … jsou proměnné - variables • x1, x1, x2, x2, … jsou literály - literals • Každému vrcholu Bn je přiřazena 0 nebo 1 – onset f je {x|f(x)=1} =f 1 = f -1(1) – offset f je {x|f(x)=0} =f 0 = f -1(0) n • jestliže f 1 = B , f je tautologie, tzn. f ≡ 1 • jestliže f 0 = Bn (f 1 = ∅), f není splnitelná • jestliže f(x) = g(x) pro všechna x ∈Bn, pak f a g jsou ekvivalentní Obvyklé zjednodušení: f namísto f 1 9.10.2008 Logické obvody - 2 - minimalizace 9 Literály Literál je proměnná nebo její negace x1, x1,a, z, y Literál reprezentuje logickou funkci. Literál x1 reprezentuje logickou funkci f, kde f = {x| x1 = 1} f = x1 x1 9.10.2008 g = x1 x1 Literál x1 reprezentuje logickou funkci g, kde g = {x| x1 = 0} Logické obvody - 2 - minimalizace 10 Boolovské formule - výrazy Boolovské formule (Boolean formulas) mohou být reprezentovány formulemi definovanými jako zřetězení • závorek ( , ) • literálů x, y, z, x, y, z • Boolovských operátorů + (OR), . (AND) • komplementace, např. x + y Příklady f = x1 . x2 + x1 . x2 = (x1+x2) . (x1+x2) h = a + b . c = a . (b + c) Obvykle nahrazujeme . jen zřetězením, a . b → ab 9.10.2008 Logické obvody - 2 - minimalizace 11 Logické funkce Existuje 2n vrcholů v prostoru Bn 111 x3 x2 000 x1 000 1 001 0 010 1 011 0 100 ⇒ 1 101 0 110 1 111 0 n 2 Existuje 2 různých logických funkcí Každá podmnožina vrcholů tvoří jinou logickou funkci: f ⊆ Bn 9.10.2008 Logické obvody - 2 - minimalizace 12 Logické funkce • Ale existuje nekonečně logických formulí f=x+y = xy + xy + xy = xx + xy + y = (x + y)(x + y) + xy • Syntéza – nalezení "nejlepší" formule (nebo “reprezentace”) 9.10.2008 Logické obvody - 2 - minimalizace 13 Boolovské operace AND, OR, KOMPLEMENT f : Bn → B g : Bn → B • AND - fg = h kde h = {x| f(x)=1 and g(x)=1} • OR - f + g = h kde h = {x| f(x)=1 or g(x)=1} • KOMPLEMENT - f = h kde h = {x| f(x) = 0} 9.10.2008 Logické obvody - 2 - minimalizace 14 Krychle - cube • Logický součin (AND) množiny literálů (“conjunction - konjunkce” literálů) je krychle C = x.y C = (x=1)(y=0) ale může to být i samotný literál z y x x =1 9.10.2008 y =0 Logické obvody - 2 - minimalizace xy 15 Krychle - cube • Jestliže C ⊆ f, C je krychle, pak C je implikant f. n • Když C ⊆ B a C má k literálů, pak |C| má n-k 2 vrcholů. 3 Příklad1 C = x y ⊆ B . k = 2 , n = 3. C = {100, 101}. 3-2 |C| = 2 = 2 . • Jestliže k=n, pak krychle je minterm (obsahuje všechny literály) 9.10.2008 Logické obvody - 2 - minimalizace 16 Reprezentace Boolovských funkcí n • Pravdivostní tabulka funkce fn: B → B je vyjádření n hodnot všech 2 vrcholů z B . abcd f • Pro 0 0000 0 f = abcd + abcd + abcd + abcd + abcd + 1 0001 1 2 0010 0 abcd + abcd + abcd Pravdivostní tabulka (truth table): Nepoužitelná pro velká n (ale je kanonická - canonical) Kanonická znamená: když jsou dvě funkce stejné, je jejich kanonická reprezentace izomorfní. 9.10.2008 Logické obvody - 2 - minimalizace 3 0011 1 4 0100 0 5 0101 1 6 0110 0 7 0111 0 8 1000 0 9 1001 1 10 1010 0 11 1011 1 12 1100 0 13 1101 1 14 1110 1 15 1111 1 17 Sum-of-Products – SOP (Disjunktivní forma) • Funkce může být reprezentována jako součet krychlí (součinů): f = ab + ac + bc Každá krychle je součin literálů, mluvíme tedy o reprezentaci “sum of products” – součet součinů SOP …. DNF • SOP Můžeme považovat za množinu krychlí F F = {ab, ac, bc} = C • Množinu krychlí reprezentující f nazýváme pokrytí (cover) f. • F={ab, ac, bc} je pokrytí fukce f = ab + ac + bc. 9.10.2008 Logické obvody - 2 - minimalizace 18 SOP bc = onset minterm c ac ab b a Každý onset minterm je “pokrytý” nejméně jednou krychlí a nepokrývá žádný offset minterm (nulový vrchol). Pokrytí (SOP’s) mohou efektivně reprezentovat mnoho logických funkcí. Dvouúrovňová minimalizace (two-level minimization) hledá pokrytí o minimální velikosti (nejmenší počet krychlí) 9.10.2008 Logické obvody - 2 - minimalizace 19 Neredundance • Nechť F = {c1, c2, …, ck} je pokrytí pro f. f = ∑ik=1 ci Krychle ci∈ F je neredundantní, jestliže F\{ci} ≠ f Příklad 2: f = ab + ac + bc bc bc c ac není pokryto !!! ab ac b F\{ab} ≠ f 9.10.2008 a Logické obvody - 2 - minimalizace 20 Prime – přímost • Literál j krychle ci ∈ F ( =f ) je přímý (prime) jestliže: (F \ {ci }) ∪ {c’i } ≠ f kde c’i je ci ve kterém je literál j z ci vypuštěn. • Krychle z F je přímá když všechny její literály jsou přímé (nemohou být vypuštěny) F=ac + bc + a = Příklad 3 F \{ci } ∪ {c’i } f = ab + ac + bc bc ci = ab; c’i = a (literál b odtraněn) F \ {ci } ∪ {c’i } = a + ac + bc Nerovná se f protože je pokrytý offsetový vrchol 9.10.2008 c Logické obvody - 2 - minimalizace ac a b a 21 Podstatná krychle • Přímá krychle z f je nesporná (podstatná, essential - essential prime), jestliže obsahuje minterm (jedničkový vrchol), který není obsažen v jiné přímé krychli. 9.10.2008 Logické obvody - 2 - minimalizace 22 Přímé a neredundantní pokrytí, podstatná krychle Příklad 4 f = abc + bd + cd je přímé a neredundantní. abc je podstatná protože abcd∈abc, a abc ∈ bd ani cd ani ad bd c b a 9.10.2008 d Logické obvody - 2 - minimalizace cd 23 Funkce neúplně specifikované F = (f, d, r) : B → {0, 1, x} kde x reprezentuje “don’t care” (neurčený stav) n • f = onset funkce • r = offset funkce • d = don’t care funkce - f(a)=1 ↔ F(x)=1 r(a)=1 ↔ F(x)=0 d(a)=1 ↔ F(x)=x n (f,d,r) tvoří rozdělení (partition) B tzn. n • f+d+r=B • fd = fr = dr = ∅ (pairwise disjoint) 9.10.2008 Logické obvody - 2 - minimalizace 24 …pokračování .. Úplně určená funkce g je pokrytí pro F=(f,d,r), jestliže f⊆ g ⊆ f+d • Když x∈d (tj. d(x)=1), potom g(x) je 0 nebo 1, • Ale když x∈f, potom g(x)=1 • A když x∈r, potom g(x)=0. 9.10.2008 Logické obvody - 2 - minimalizace 25 Příklady si 0 1 2 3 4 5 6 7 9.10.2008 a 0 0 0 0 1 1 1 1 b 0 0 1 1 0 0 1 1 p 0 1 0 1 0 1 0 1 q 0 0 0 1 0 1 1 1 S 0 1 1 0 1 0 0 1 SOP – Úplná normální disjunktivní forma q = abp + abp + abp + abp p b a si – stavový index Logické obvody - 2 - minimalizace 26 Příklady si 0 1 2 3 4 5 6 7 a 0 0 0 0 1 1 1 1 9.10.2008 b 0 0 1 1 0 0 1 1 p 0 1 0 1 0 1 0 1 q S 0 0 0 1 0 1 1 0 0 1 1 0 1 0 1 1 SOP – Úplná normální disjunktivní forma ÚNDF q = abp + abp + abp + abp bp p ap ab b a SOP – Minimální normální disjunktivní forma MNDF Logické obvody - 2 - minimalizace q = bp + ap +ab 27 Mapy Svobodova mapa 9.10.2008 Karnaughova mapa Logické obvody - 2 - minimalizace 28 Změna velikosti mapy – zvyšování počtu proměnných Karnaughova Svobodova 9.10.2008 Logické obvody - 2 - minimalizace 29 Příklady - tabule • Minimalizace v mapě pro přenos q a součet (nelze, nejsou sousední stavy) • Příklad funkce určené onset a don´t care 9.10.2008 Logické obvody - 2 - minimalizace 30
Podobné dokumenty
Bc. Martin Hanus, Bc. Petr Prikryl
1.1 Zápis logické funkce..................................................................................................................3
1.1.1 Pravdivostní tabulka .................................
Logické systémy a jejich návrh
obvodům nevadí takový přechodný vstup, který vyžaduje právě funkci paměť.
Podstatné hazardy jsou pouze v asynchronních obvodech a způsobují chyby trvalého charakteru. Důvodem jejich existence je sh...
Reprezentace Booleovských funkcí
V tomto paragrafu popíšeme deterministické rozhodovací diagramy, které v každém větvícím uzlu testují jednu proměnnou. Kromě obecných rozhodovacích diagramů budeme zkoumat jejich podtřídy, konkrétn...
Číslicová technika
písmen, pro které nabývá uvažovaná logická funkce
hodnoty 1
UNKF obsahuje tolik maxterm , kolik je po et vstupních
písmen, pro které nabývá uvažovaná logická funkce
hodnoty 0
Vytvo ení UNDF z UNKF ...
005_slajdy (7) - České vysoké učení technické v Praze
Slepá separace signálů (Blind Source Separation, BSS) [5] je obor, který se zabývá získáváním skrytých informací obsažených v souboru dat. Analýza nezávislých komponent
(Independent Component Analy...