Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Struktura a architektura počítačů (BI-SAP) 4 doc. Ing. Hana Kubátová, CSc. Katedra číslicového návrhu Fakulta informačních technologii ČVUT v Praze Hana Kubátová BI-SAP 4, Logické obvody letní semestr 2010-11
BI-SAP 4: osnova Logické obvody kombinační a sekvenční používané v číslicovém počítači Sčítačka, půlsčítačka, registr, čítač Některé obrázky převzaty z doporučené literatury: Gajski, D. D.: Principles of Digital Design. Prentice-Hall International, Inc. 1997 Hana Kubátová BI-SAP 4, Logické obvody 2
Často používané funkce Majorita: nabývá hodnotu 1, když většina proměnných je rovna 1 Majorita ze 3 M 3 (tzn. 2 nebo 3 proměnné) 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 + Hana Kubátová BI-SAP 4, Logické obvody 3
XOR a b = ab + ab ab + a( a 0 + ab + 0 = ab + aa + ab + bb = + b) + b( a + b) = a. ab + b. ab Hana Kubátová BI-SAP 4, Logické obvody 4
Dekodéry Dekodér: binární kód 1 ze 4 = 1 pro x 1 x 0 = 00 = 1 pro x 1 x 0 = 01 = 1 pro x 1 x 0 = 10 = 1 pro x 1 x 0 = 11 4 pravdivostní tabulky: x 1 x 0 y 0 y 1 y 2 y 3 0 0 1 0 0 0 0 1 0 1 0 0 1 0 0 0 1 0 1 1 0 0 0 1 Booleovské výrazy: y 0 = x 1 x 0 y 1 = x 1 x 0 y 2 = x 1 x 0 y 3 = x 1 x 0 Hana Kubátová BI-SAP 4, Logické obvody 5
Dekodéry obecně, jak navrhnout Dekodér 2z5. BCD Desítkové číslo Kód BCD Kód 2z5 typ 74210 Kód 2z5 typ 84210 DCBA edcba edcba 0 0000 11000 10100 1 0001 00011 00011 2 0010 00101 00101 3 0011 00110 00110 4 0100 01001 01001 5 0101 01010 01010 6 0110 01100 01100 7 0111 10001 11000 8 Hana Kubátová 1000 10010 10001 BI-SAP 4, Logické obvody 6 9 1001 10100 10010
Multiplexor - princip Hana Kubátová BI-SAP 4, Logické obvody 7
Multiplexor Y = A1. A0. D0 + A1. A0. D1 + A1. A0. D2 + A1. A0. D 3 Hana Kubátová BI-SAP 4, Logické obvody 8
Multiplexor Multiplexor: poznámka: v CMOS je 2 vstupový MUX realizován pomocí přenosových hradel, tzn. jen 6 transistorů Hana Kubátová BI-SAP 4, Logické obvody 9
Multiplexor poznámka: v CMOS je 2 vstupový MUX realizován pomocí přenosových hradel, tzn. jen 6 transistorů D0 Y D1 Výběr Hana Kubátová BI-SAP 4, Logické obvody 10
Demultiplexor Demultiplexor: Pravdivostní tabulka: a 1 a 0 x y 0 y 1 y 2 y 3 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 1 1 0 1 1 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 1 0 0 0 1 Hana Kubátová BI-SAP 4, Logické obvody 11
Realizace: Hana Kubátová BI-SAP 4, Logické obvody 12
Sčítačka a b p q s 0 0 0 0 0 0 0 1 0 1 0 1 0 0 1 0 1 1 1 0 1 0 0 0 1 1 0 1 1 0 1 1 0 1 0 1 1 1 1 1 s = abp + abp + abp + abp q = abp + abp + abp + abp Hana Kubátová BI-SAP 4, Logické obvody 13
Poloviční sčítačka half-adder Úplná binární sčítačka: Poloviční sčítačka (HA): s = a b q = a. b a b q s 0 0 0 0 0 1 0 1 1 0 0 1 1 1 1 0 Hana Kubátová BI-SAP 4, Logické obvody 14
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 Hana Kubátová BI-SAP 4, Logické obvody 15
Paralelní sčítačka S = A + B A= a 2 a 1 a 0 B= b 2 b 1 b 0 Hana Kubátová BI-SAP 4, Logické obvody 16
Registry n- klopných obvodů řízené společným hodinovým signálem zde příklad 4 bitového registru Hana Kubátová BI-SAP 4, Logické obvody 17
Registr s asynchronním nastavením a nulováním Poznámka: asynchronní nastavení na 1 nebo nulování má přednost před vstupy I3 I0 Hana Kubátová BI-SAP 4, Logické obvody 18
Registr s řízením zápisu paralelní load Hana Kubátová BI-SAP 4, Logické obvody 19
Posuvný registr Hana Kubátová BI-SAP 4, Logické obvody 20
Posuvný registr s řízením zápisu a směrem posuvu Hana Kubátová BI-SAP 4, Logické obvody 21
Posuvný registr - zjednodušený Hana Kubátová BI-SAP 4, Logické obvody 22
Čí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 e M(modulo) 2 n -čítají do 4, 8, 16, 32,..., neúplné např. do 10, 60, 80, 97,... Obvykle čítají v binárním kódu Ale jsou čítače i v jiných kódech (např. v 1 z n nebo v Grayově kódu aby se měnila jen jedna vnitřní proměnná) Jsou čítače synchronní i asynchronní Hana Kubátová BI-SAP 4, Logické obvody 23
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ů 1 0/00 1 0 3/11 1/01 0 Q/E 0 1 Y 0 0 1 00 1 1 2 01 2 2 3 10 0 1 1 3 3 0 11 2/10 0 Hana Kubátová BI-SAP 4, Logické obvody 24
Příklad čítač M4 v binárním kódu E 0 1 q 1 q 0 00 00 01 01 01 10 10 10 11 11 11 00 Výstupy: Y 0 = q 0, Y 1 = q 1 E E 0 1 1 0 1 0 0 1 D q 0 0 1 1 0 1 0 1 Hana Kubátová BI-SAP 4, Logické obvody 25 0 1 0 q1 q0 = q0 E + q0e = q0 D q = 1 = Eq q 0 q 1 q q1 q0 + q 1 E E + q 0 q 1 E
realizace E Poloviční sčítačka.. HA (half adder) Ci přenosy clear CLK q 1 = Y 1 q 0 = Y 0 Výstup je vidět až po přechodu do následného stavu Q t Tedy z až po aktivní hraně CLK Hana Kubátová BI-SAP 4, Logické obvody 26
Čítač M16 Přenosy C 1 -C 4 E Q 0 D 1 =. Q Q E Q Q + Q E + Q Q E Hana Kubátová BI-SAP 4, 0Logické 1 obvody 1 0 1 27 HA half adder 0 1 =
Mealy, graf a tabulka přechodů a výstupů 0/00 Q/E 0 1 0 1 1/00 0 0 0 1 00 01 1/01 0/01 1 1 2 01 10 3 1 2 2 3 10 11 0/11 1/11 2 1/10 0/10 3 3 0 11 00 Hana Kubátová BI-SAP 4, Logické obvody 28
Zakódování, vnitřní proměnné a, b Q/E 0 1 0 1 00 00 01 00 01 01 01 10 01 10 10 10 11 10 11 E 0 1 1 0 1 0 0 1 Y 0 = ae + ae = a E = 11 11 00 11 00 0 0 1 1 E 0 1 0 1 b a Da a b Y 1 = Db = ab + be + abe Hana Kubátová BI-SAP 4, Logické obvody 29
realizace E clear CLK Y 1 Y 0 Výstup musí být vidět dříve, tzn. současně s následným stavem Q t a ne s výchozím stavem Q t-1, tedy je odvozen ze vstupů a ne z výstupů Hana Kubátová BI-SAP 4, Logické obvody 30
rozdíl Mealy x Moore 0 0/00 0/00 0 1/00 1/01 3 1 0/01 1 1 3/11 1/01 0 0/11 1/11 2 1/10 0/10 0 1 2/10 1 0 Q/E 0 1 0 1 0 0 1 00 01 1 1 2 01 10 2 2 3 10 11 3 3 0 11 00 Q/E 0 1 Y 0 0 1 00 1 1 2 01 2 2 3 10 BI-SAP 4, Logické obvody 31 3 3 0 11
rozdíl Mealy x Moore u čítače E E clear CLK clear CLK Y 1 Y 0 Y 1 Y 0 Hana Kubátová BI-SAP 4, Logické obvody 32
Čítače neúplné Příklad1: navrhněte čítač M5 v binárním kódu. Příklad2: navrhněte vratný čítač M4 v Grayově kódu, pro vstup D=0 čítá nahoru, pro D=1 dolů. Otázka: Jak bude vypadat čítač typu Mealy? Hana Kubátová BI-SAP 4, Logické obvody 33
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. Hana Kubátová BI-SAP 4, Logické obvody 34
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 0 nebo 1 (má mít stejnou úroveň), místo toho se objeví krátká změna do opačné úrovně 0-1-0... statický hazard v 0 1-0-1...statický hazard v 1 Hana Kubátová BI-SAP 4, Logické obvody 35
Statický hazard v 1 - 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 Hana Kubátová BI-SAP 4, Logické obvody 36
Hledání hazardu v časovém diagramu Hledám podmínky pro proměnnou y (dvě cesty), tzn. Pro x = z = 1... hradla AND xy + yz = 1, ale uvidíme: Hana Kubátová BI-SAP 4, Logické obvody 37
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 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 Hana Kubátová BI-SAP 4, Logické obvody 38
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 Hana Kubátová BI-SAP 4, Logické obvody 39
TTL struktura -standardní V CC = +5 V Hana Kubátová BI-SAP 4, Logické obvody 40
Otevřený kolektor Chybí pull-up transistor a odpor a) Circuit design b) Graphic symbol OC open collector Hana Kubátová BI-SAP 4, Logické obvody 41
Třístavový výstup V CC = +5 V Upgrade na 3 stavy H, L, Z Hana Kubátová BI-SAP 4, Logické obvody 42
CMOS complementary metal-oxidsemiconductor logic Pravdivostní tabulka: x T 1 T 2 F L on off L H off on H invertor Hana Kubátová BI-SAP 4, Logické obvody 43
x y T 1 T 2 T 3 T 4 F L L on on off off H L H on off off on H H L off on on off H H H off off on on L NAND hradlo Hana Kubátová BI-SAP 4, Logické obvody 44
x y T 1 T 2 T 3 T 4 F L L on on off off H L H on off off on L H L off on on off L H H off off on on L NOR hradlo Hana Kubátová BI-SAP 4, Logické obvody 45