Y36SAP 27 Y36SAP-4 Logické obvody kombinační a sekvenční používané v číslicovém počítači Sčítačka, půlsčítačka, registr, čítač 27-Kubátová Y36SAP-Logické obvody typické Často používané funkce Majorita: nabývá hodnotu, když většina proměnných je rovna Majorita ze 3 M 3 (2 nebo 3) M ( a, b, c) = a. b. c + a. b. c + a. b. c a. b. c 3 + Úpravami, algebraicky nebo v mapě dostaneme: M ( a, b, c) = a. b + a. c b. c 3 + 27-Kubátová Y36SAP-Logické obvody typické 2
Y36SAP 27 XOR a b = ab + ab ab + + ab + = ab + aa + ab + bb a( a + b) + b( a + b) = a. ab + b. ab = 27-Kubátová Y36SAP-Logické obvody typické 3 Dekodéry 27-Kubátová Y36SAP-Logické obvody typické 4 2
Y36SAP 27 Dekodéry obecně, jak navrhnout Dekodér 2z5. BCD 27-Kubátová Y36SAP-Logické obvody typické 5 Multiplexor - princip 27-Kubátová Y36SAP-Logické obvody typické 6 3
Y36SAP 27 Multiplexor Y = A. A. D + A. A. D + A. A. D2 + A. A. D 3 27-Kubátová Y36SAP-Logické obvody typické 7 Multiplexor y poznámka: v CMOS je 2 vstupový MUX realizován pomocí přenosových hradel, tzn. jen 6 transistorů 27-Kubátová Y36SAP-Logické obvody typické 8 4
Y36SAP 27 Demultiplexor 27-Kubátová Y36SAP-Logické obvody typické 9 27-Kubátová Y36SAP-Logické obvody typické 5
Y36SAP 27 Sčítačka a b p q s s = abp + abp + abp + abp q = abp + abp + abp + abp 27-Kubátová Y36SAP-Logické obvody typické Poloviční sčítačka half-adder Úplná binární sčítačka: Poloviční sčítačka (HA): a b q s s = a b q = a. b 27-Kubátová Y36SAP-Logické obvody typické 2 6
Y36SAP 27 Sčítačka pomocí půlsčítaček a b p.(a b) a.b q = ab + p.(a b) = ab + p(ab + ab)=ab + ap + bp 27-Kubátová Y36SAP-Logické obvody typické 3 Paralelní sčítačka S = A + B A= a 2 a a B= b 2 b b 27-Kubátová Y36SAP-Logické obvody typické 4 7
Y36SAP 27 Registry n- klopných obvodů řízené společným hodinovým signálem zde příklad 4 bitového registru 27-Kubátová Y36SAP-Logické obvody typické 5 Registr s asynchronním nastavením a nulováním Poznámka: asynchronní nastavení na nebo nulování má přednost před vstupy I3 I 27-Kubátová Y36SAP-Logické obvody typické 6 8
Y36SAP 27 Registr s řízením zápisu paralelní load 27-Kubátová Y36SAP-Logické obvody typické 7 Posuvný registr 27-Kubátová Y36SAP-Logické obvody typické 8 9
Y36SAP 27 Posuvný registr s řízením zápisu a směrem posuvu 27-Kubátová Y36SAP-Logické obvody typické 9 Posuvný registr - zjednodušený 27-Kubátová Y36SAP-Logické obvody typické 2
Y36SAP 27 Čítače Speciální typ registru, který v sobě zahrnuje funkci inkrementu (dekrementu) může čítat nahoru nebo (i) dolů Jsou tzv. úplné a neúplné čítače: úplné čítače M(modulo) 2 n -čítají do 4, 8, 6, 32,..., neúplné např. do, 6, 8, 97,... Obvykle čítají v binárním kódu Ale jsou čítače i v jiných kódech (např. v z n nebo v Grayově kódu aby se měnila jen jedna vnitřní proměnná) Jsou čítače synchronní i asynchronní 27-Kubátová Y36SAP-Logické obvody typické 2 Příklad čítač M4 v binárním kódu Navrhněte čítač M4 vstup E (enable counting), synchronní, v binárním kódu Moore, graf a tabulka přechodů a výstupů / Q/E 2 Y 3/ / 2 2 3 3 3 2/ 27-Kubátová Y36SAP-Logické obvody typické 22
Y36SAP 27 Příklad čítač M4 v binárním kódu E q q Výstupy: Y = q, Y = q E E D q 27-Kubátová Y36SAP-Logické obvody typické 23 q q = q E + qe = q q q E D q = q q + q E q q E + Čítač M6 Přenosy C -C 4 E Q D = E. Q Q = Q Q + Q E + Q Q E HA half adder 27-Kubátová Y36SAP-Logické obvody typické 24 2
Y36SAP 27 Čítače neúplné Příklad: navrhněte čítač M5 v binárním kódu. Příklad2: navrhněte vratný čítač M4 v Grayově kódu, pro vstup D= čítá nahoru, pro D= dolů. Otázka: Jak bude vypadat čítač typu Mealy? 27-Kubátová Y36SAP-Logické obvody typické 25 Hazardy Co je hazard Důvody vzniku hazardů Nalezení Kdy vadí a kdy ne Poznámka: zde se budeme zabývat jen statickým hazardem. Existuje ještě dynamický hazard a hazardy v sekvenčních obvodech asynchronních. 27-Kubátová Y36SAP-Logické obvody typické 26 3
Y36SAP 27 Co je a jak vzniká hazard Krátká neočekávaná změna výstupního signálu glitch Signál se ze vstupu na výstup šíří různými, ale konvergujícími cestami, z důvodů zpoždění na hradlech i vodičích cestami s různým zpožděním Statický hazard výstup má být trvale v nebo (má mít stejnou úroveň), místo toho se objeví krátká změna do opačné úrovně --... statický hazard v --...statický hazard v 27-Kubátová Y36SAP-Logické obvody typické 27 Statický hazard v - příklad y z Ze vstupu y na výstup F vedou dvě cesty, které se nejdříve rozpojí a pak zase spojí x F = xy + yz 27-Kubátová Y36SAP-Logické obvody typické 28 4
Y36SAP 27 Hledání hazardu v časovém diagramu Hledám podmínky pro proměnnou y (dvě cesty), tzn. Pro x = z =... hradla AND xy + yz =, ale uvidíme: 27-Kubátová Y36SAP-Logické obvody typické 29 Kdy hazardy vadí? Co je hazard-free design? Hazardy v návrhu kombinačních obvodů nejsou kritické, protože se výstupy po nějaké (krátké) době vždycky ustálí ve správných hodnotách Naopak v sekvenčních obvodech mohou přivést klopný obvod do nesprávného stavu, a tím celý obvod i do nevratného špatného vnitřního stavu Řešení synchronní návrh a správný výpočet maximální hodinové frekvence 27-Kubátová Y36SAP-Logické obvody typické 3 5
Y36SAP 27 Typy výstupů, připojení ke sběrnici Standardní výstup totem-pole Výstupy nelze spojovat!!! Otevřený kolektor open collector (OC) Montážní součin wired-and gate (TTL) Třístavový výstup tri-state output Připojení ke sběrnici, 3 stavy: H, L, Z vysoká impedance 27-Kubátová Y36SAP-Logické obvody typické 3 TTL struktura -standardní 27-Kubátová Y36SAP-Logické obvody typické 32 6
Y36SAP 27 Otevřený kolektor Chybí pull-up transistor a odpor OC open collector 27-Kubátová Y36SAP-Logické obvody typické 33 Třístavový výstup Upgrade na 3 stavy H, L, Z 27-Kubátová Y36SAP-Logické obvody typické 34 7
Y36SAP 27 CMOS complementary metal-oxidsemiconductor logic 27-Kubátová Y36SAP-Logické obvody typické 35 27-Kubátová Y36SAP-Logické obvody typické 36 8
Y36SAP 27 27-Kubátová Y36SAP-Logické obvody typické 37 9