Architektura počítačů Logické obvody

Podobné dokumenty
Architektura počítačů Logické obvody

Principy počítačů a operačních systémů

SWI120 ZS 2010/ hookey.com/digital/

Číselné vyjádření hodnoty. Kolik váží hrouda zlata?

Úvod do informačních technologií

Úvod do informačních technologií

Binární logika Osnova kurzu

Číslicové obvody základní pojmy

12. Booleova algebra, logická funkce určitá a neurčitá, realizace logických funkcí, binární kódy pro algebraické operace.

4. Elektronické logické členy. Elektronické obvody pro logické členy

Y36SAP Y36SAP-2. Logické obvody kombinační Formy popisu Příklad návrhu Sčítačka Kubátová Y36SAP-Logické obvody 1.

BDIO - Digitální obvody

Projekt realizovaný na SPŠ Nové Město nad Metují. s finanční podporou v Operačním programu Vzdělávání pro konkurenceschopnost Královéhradeckého kraje

SEKVENČNÍ LOGICKÉ OBVODY

Obsah DÍL 1. Předmluva 11

Logické řízení. Náplň výuky

Typy a použití klopných obvodů

SČÍTAČKA, LOGICKÉ OBVODY ÚVOD TEORIE


KOMBINAČNÍ LOGICKÉ OBVODY

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

Booleovská algebra. Booleovské binární a unární funkce. Základní zákony.

Projekt Pospolu. Sekvenční logické obvody Klopné obvody. Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Jiří Ulrych.

Způsoby realizace této funkce:

Úplný systém m logických spojek. 3.přednáška

KOMBINAČNÍ LOGICKÉ OBVODY

DIGITÁLN LNÍ OBVODY A MIKROPROCESORY 1. ZÁKLADNÍ POJMY DIGITÁLNÍ TECHNIKY

Booleova algebra. ZákonyBooleovy algebry Vyjádření logických funkcí

Logické funkce a obvody, zobrazení výstupů

Pohled do nitra mikroprocesoru Josef Horálek

Struktura a architektura počítačů (BI-SAP) 3

Sekvenční logické obvody

Sylabus kurzu Elektronika

LOGICKÉ ŘÍZENÍ. Matematický základ logického řízení

OVLÁDACÍ OBVODY ELEKTRICKÝCH ZAŘÍZENÍ

Strojový kód. Instrukce počítače

Aritmetické operace a obvody pro jejich realizaci

Struktura a architektura počítačů (BI-SAP) 4

LOGICKÉ OBVODY X36LOB

Inovace a zkvalitnění výuky prostřednictvím ICT Základy programování a algoritmizace úloh. Ing. Hodál Jaroslav, Ph.D. VY_32_INOVACE_25 09

LOGICKÉ ŘÍZENÍ. Matematický základ logického řízení. N Měřicí a řídicí technika 2012/2013. Logické proměnné

2.7 Binární sčítačka Úkol měření:

Klopný obvod typu D, dělička dvěma, Johnsonův kruhový čítač

Matematická logika. Rostislav Horčík. horcik

1 z :27

Operace ALU. INP 2008 FIT VUT v Brně

Úvod do počítačových architektur

Sekvenční logické obvody

Digitální obvody. Doc. Ing. Lukáš Fujcik, Ph.D.

Výroková logika - opakování

Základy číslicové techniky z, zk

5 Přehled operátorů, příkazy, přetypování

- speciální symboly + - * / =., < > <> <= >= a další. Klíčová slova jsou chráněnými útvary, které nelze použít ve významu identifikátorů.

VY_32_INOVACE_CTE_2.MA_04_Aritmetické operace v binární soustavě Střední odborná škola a Střední odborné učiliště, Dubno Ing.

ASYNCHRONNÍ ČÍTAČE Použité zdroje:

Zvyšování kvality výuky technických oborů

Jak v Javě primitivní datové typy a jejich reprezentace. BD6B36PJV 002 Fakulta elektrotechnická České vysoké učení technické

Násobení. MI-AAK(Aritmetika a kódy)

Příklady popisu základních obvodů ve VHDL

Návrh synchronního čítače

Algoritmizace a programování

Programování. řídících systémů v reálném čase. Střední odborná škola a Střední odborné učiliště - - Centrum Odborné přípravy Sezimovo Ústí

Booleovy algebry. Irina Perfilieva. logo

PROGRAMOVATELNÉ LOGICKÉ OBVODY

Instrukční sada pro používání ControlLogix a CompactLogix výňatek

STRUKTURA POČÍTAČŮ JIŘÍ HRONEK, JIŘÍ MAZURA KATEDRA INFORMATIKY PŘÍRODOVĚDECKÁ FAKULTA UNIVERZITA PALACKÉHO

Obsah. Předmluva 13 Zpětná vazba od čtenářů 14 Zdrojové kódy ke knize 15 Errata 15

Data v počítači. Informační data. Logické hodnoty. Znakové hodnoty

2. LOGICKÉ OBVODY. Kombinační logické obvody

Cíle. Teoretický úvod

Registry a čítače část 2

mové techniky budov Osnova Základy logického Druhy signálů

Logické operace. Datový typ bool. Relační operátory. Logické operátory. IAJCE Přednáška č. 3. může nabýt hodnot: o true o false

Konečný automat. Studium chování dynam. Systémů s diskrétním parametrem číslic. Počítae, nervové sys, jazyky...

Technická kybernetika. Obsah. Klopné obvody: Použití klopných obvodů. Sekvenční funkční diagramy. Programovatelné logické automaty.

Operátory. Základy programování 1 Tomáš Kühr

Logické obvody. Přednáška 6. Prof. RNDr. Peter Mikulecký, PhD.

Cíle. Teoretický úvod. BDIO - Digitální obvody Ústav mikroelektroniky Základní logická hradla, Booleova algebra, De Morganovy zákony Student

1.1 Struktura programu v Pascalu Vstup a výstup Operátory a některé matematické funkce 5

Systém řízení sběrnice

Y36SAP 2007 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č

MODERNIZACE VÝUKY PŘEDMĚTU ELEKTRICKÁ MĚŘENÍ

MQL4 COURSE. By Coders guru -4 Operace & Výrazy

Paměť počítače. alg2 1

PROTOKOL O LABORATORNÍM CVIČENÍ

Operátory. Základy programování 1 Martin Kauer (Tomáš Kühr)

Velmi zjednodušený úvod

BI-JPO (Jednotky počítače) Cvičení

LOGICKÉ OBVODY 2 kombinační obvody, minimalizace

Otázka 10 - Y36SAP. Zadání. Logické obvody. Slovníček pojmů. Základní logické členy (hradla)

Zpráva o průběhu přijímacího řízení na vysokých školách dle Vyhlášky MŠMT č. 343/2002 a její změně 276/2004 Sb.

LOGICKÉ OBVODY

LOGICKÉ OBVODY J I Ř Í K A L O U S E K

Automatizace je proces při němž je řídicí funkce člověka nahrazována činností

Simulace číslicových obvodů (MI-SIM) zimní semestr 2010/2011

5. Sekvenční logické obvody

2. ÚVOD DO OVLÁDACÍ TECHNIKY

Operátory, výrazy. Tomáš Pitner, upravil Marek Šabo

Jak do počítače. aneb. Co je vlastně uvnitř

Transkript:

Architektura počítačů Logické obvody http://d3s.mff.cuni.cz/teaching/computer_architecture/ Lubomír Bulej bulej@d3s.mff.cuni.cz CHARLES UNIVERSITY IN PRAGUE faculty of mathematics and physics

2/36 Digitální počítač Dvě úrovně napětí Vyšší úroveň Logická 1, high, true, asserted Nižší úroveň Logická 0, low, false, deasserted Hodnoty jsou vzájemně inverzní a doplňkové Kombinační obvody Výstup závisí pouze na vstupu (neobsahují paměť) Reprezentace logických funkcí Sekvenční obvody Výstup závisí na vstupu a vnitřním stavu (paměť) Umožňují zachytit posloupnost kroků výpočtu

3/36 Logické funkce a pravdivostní tabulky Logická funkce (též Booleovská funkce) Výstupní hodnota je funkcí vstupních hodnot f: B k B, kde B = {0, 1} a k N je arita Pravdivostní tabulka Definice logické funkce výčtem hodnot vstupů a výstupů (pro k vstupů má tabulka 2 k řádků) Vstupy Výstup a b f(a, b) 0 0 0 0 1 1 1 0 1 1 1 1

4/36 Booleova algebra (1) Geogle Boole (1815 1864) Matematik, filozof, logik Systematizace aristotelské logiky Symbolická logika (algebraická reprezentace logických výroků) V mnoha ohledech předběhl dobu Před axiomatizací teorie množin atd. Retrospektivně považován za jednoho ze zakladatelů informatiky [1]

5/36 Booleova algebra (2) Algebraická reprezentace logických funkcí Logické proměnné s oborem hodnot B = {0, 1} Základní logické operátory primitivní logické funkce Negace (NOT): x, x,!x Logický součin, konjunkce (AND): x y, x y, x && y Logický součet, disjunkce (OR): x + y, x y, x y Další logické operátory (16 pro 2 proměnné) NAND, NOR, XOR atd.

6/36 Booleova algebra (3) Vstupy Základní operátory Univerzální operátory Další operátory a b NOT a a AND b a OR b a NAND b a NOR b a XOR b a XNOR b... 0 0 1 0 0 1 1 0 1 1 1... 0 1 0 1 1 0 1 1 0 1 0 1 0... 0 1 1 0 0 0 1 1 0 1 0 0 1... 0 1 1 1 0 1 1 0 0 0 1 1 1... 0 1

7/36 Booleova algebra (4) Axiomy a odvozené vlastnosti Idempotence: a + a = a, a a = a Komutativita: a + b = b + a, a b = b a Asociativita: a + (b + c) = (a + b) + c, a (b c) = (a b) c Absorpce: a (a + b) = a, a + (a b) = a Distributivita: a (b + c) = (a b) + (a c), a + (b c) = (a + b) (a + c) Neutralita 0 a 1: a + 0 = a, a 1 = a Agresivita 0 a 1: a + 1 = 1, a 0 = 0 Komplementarita: a + a = 1, a a = 0 Absorpce negace: a ( a + b) = a b, a + ( a b) = a + b De Morganovy zákony: (a + b) = a b, (a b) = a + b Dvojitá negace: ( a) = a

8/36 Logické operace (1) Rozšíření logických funkcí na operace s (konečnými) posloupnostmi bitů Slovo = konečná posloupnost bitů Délka slova = počet bitů konečné posloupnosti Výstupní hodnota logické operace je funkce vstupních hodnot f: (B n ) k B n, kde B = {0, 1}, k N je arita a n N je délka slova

Logické operace (2) Typické logické operace Logický součin, logický součet, logická negace atd. po bitech slova (bitwise) Operátory &,, ~ atd. v jazycích C, Java Odpovídající logická funkce aplikována na jednotlivé bity vstupního slova, výsledky po jednotlivých bitech uloženy do výstupního slova Umožňují izolovat (AND), vynulovat (AND, NOR), nastavit (OR), invertovat (XOR) vybrané bity slova, resp. invertovat bity celého slova (NOT) 9/36

Logické operace (3) Typické logické operace Logické posuny vlevo a vpravo Operátory << a >> v jazycích C, Java Přesun bitů ve slově o i pozic vlevo nebo vpravo Uvolněné bity jsou nahrazeny hodnotou 0 Pro reprezentaci přirozených čísel jako posloupnost bitů Posun o i bitů vlevo odpovídá násobení číslem 2 i Posun o i bitů vpravo odpovídá dělení číslem 2 i 10/36

11/36 Logická hradla (1) Fyzická realizace logických operátorů Základní NOT, OR, AND a a a a b a + b b a b

12/36 Logická hradla (2) Fyzická realizace logických operátorů Odvozené NAND, NOR, XOR a b (a b) a a b a b b (a + b)

Logické obvody Fyzická realizace složitějších logických funkcí a logických operací Spojení více logických operátorů Logické signály jako proměnné Logická hradla jako operátory V praxi nejčastější kombinace hradel NAND a NOR Funkční blok Seskupení logických obvodů do větších celků Abstrakce vnitřní struktury 13/36

Logický obvod sčítání Součet dvou 1-bitových čísel a b Nejjednodušší případ Vstup: operand a, operand b Výstup: součet s, přenos c s = a b + a b = a XOR b c = a b = a AND b c ½ s Vstupy Výstupy a b s c 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1 14/36

15/36 Logický obvod sčítání (2) a b c AND XOR ½ s

16/36 Logický obvod sčítání (3) Sčítání n-bitových čísel Spojení n ½-sčítaček pro jednotlivé bity? a n-1 b n-1 a 2 b 2 a 1 b 1 a 0 b 0 ½... ½ ½ ½ n-bit c n-1 s n-1 c 2 s 2 c 1 s 1 c 0 s 0 ½-sčítačka neumí propagovat přenosy mezi řády (málo vstupů)

17/36 Logický obvod sčítání (4) Úplná sčítačka Součet dvou 1-bitových čísel s přihlédnutím k přenosu z nižšího řádu Vstup: operand a, operand b, přenos c 0 Výstup: součet s, přenos c a b c c 0 s

Logický obvod sčítání (5) Úplná sčítačka Součet dvou 1-bitových čísel s přihlédnutím k přenosu z nižšího řádu Vstup: operand a, operand b, přenos c 0 Výstup: součet s, přenos c s = c 0 (a b + a b) + c 0 (a b + a b) s =... s = c 0 XOR (a XOR b) c = a b + c 0 (a b + a b) c = (a AND b) OR (c 0 AND (a XOR b)) c 0 a b c 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 18/36

Logický obvod sčítání (6) a b c 1 AND c OR XOR c 0 c 2 AND s 1 XOR s 2 s 19/36

Logický obvod sčítání (7) Abstrakce: a + b + c 0 = (a + b) + c 0 a b c OR c 1 ½ s 1 c 0 c 2 ½ s 2 s 20/36

21/36 Logický obvod sčítání (8) a n-1 b n-1 a 1 b 1 a 0 b 0 n-bit... c 0 s n-1 s 1 s 0 Funkční blok: a b add s

Logický obvod odčítání Využití vlastností dvojkového doplňku Základní stavební blok: Sčítačka Použití XOR hradla jako řízeného invertoru Příklad: 2-bitová ALU s podporou sčítání a odčítání Vstup: operand a 1 a 0, operand b 1 b 0 Řídící vstup: určení typu operace SUB SUB = 0 sčítání SUB = 1 odčítání Výstup: součet/rozdíl s 1 s 0, přenos c 22/36

23/36 2-bitová ALU pro sčítání a odčítání SUB = 1 invertuje bity druhého operandu a přičítá 1 (opačné číslo) a 1 b 1 a 0 b 0 2-bit ALU SUB a ALU b op XOR XOR s c s 1 s 0

24/36 Logický obvod znaménkového rozšíření 16 to 32 bit Sign Extend y 31 = x 15 y 16 = x 15 x 15 y 15 = x 15 x 0 y 0 = x 0

Sekvenční obvody Kombinační obvody + paměťové prvky Paměťové prvky udržují vnitřní stav Vstup a obsah paměťových prvků určuje výstup a následující stav (nový obsah paměťových prvků) Synchronní vs. asynchronní sekvenční obvody Způsob a okamžik změny stavu Nutnost docílit stability vstupních hodnot (vstupní hodnoty se nemění) Paměťový prvek 1 Kombinační obvod Paměťový prvek 2 25/36

Synchronní sekvenční obvody Hodinový signál synchronizuje změny stavu Změna stavu během jednoho cyklu hodin Hodnoty vstupů kombinačních obvodů se během čtení nemění Zápis výstupů do paměťových prvků probíhá s náběžnou/sestupnou hranou hodinového signálu náběžná hrana sestupná hrana perioda signálu 26/36

Paměťové prvky Dvojice invertorů se zpětnou vazbou Asynchronní obvod se dvěma stabilními stavy Stav slouží pro uložení 1 bitu informace Logický základ paměťových obvodů Potřebujeme stav obvodu nějak řídit... q q 27/36

Klopný obvod Set-Reset (R-S, latch) s q s q q ` r r q Vstupy Výstupy r s q n q n 0 0?? 0 1 0 1 1 0 1 0 1 1 q n-1 q n-1 28/36

29/36 Klopný obvod Set-Reset (R-S, latch) r q r q q s s q Vstupy Výstupy r s q n q n 0 0 q n-1 q n-1 0 1 1 0 1 0 0 1 1 1??

Další klopné obvody Odvozené od R-S Clocked R-S latch Synchronní varianta R-S Mění stav, kdykoliv je nastaveno r, s a hodinový signál je logická jednička R-S master/slave (R-S flip-flop) Mění stav jen s náběžnou/sestupnou hranou hodinového signálu S Q R Q 30/36

Další klopné obvody (2) Odvozené od R-S J-K master/slave (J-K flip-flop) Rozšíření R-S (J = S, K = R), pro J = K = 1 provede inverzi aktuálního stavu Clocked D latch, D flip-flop Jen jedna vstupní hodnota T flip-flop Dělič vstupního hodinového signálu J Q D Q T Q K Q Q Q 31/36

32/36 Registr z klopných obvodů q n 1... q 1 q 0 D Q D Q D Q... CLOCK DATA d n 1... d 1 d 0

33/36 Posuvný registr z klopných obvodů q n 1... q q 1 0 DATA D Q D Q D Q... CLOCK

34/36 32-bitová sekvenční násobička A 32-bit Shift Arith. Right Write Control Test 64-bit A B

35/36 32-bitová sekvenční dělička B 32-bit ALU Shift Right Shift Left Write Control Test A mod B 64-bit A div B

36/36 Reference [1] http://upload.wikimedia.org/wikipedia/commons/c/ce/george_boole_color.jpg