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

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

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

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

KOMBINAČNÍ LOGICKÉ OBVODY

Způsoby realizace této funkce:

Souhrn Apendixu A doporučení VHDL

Sčítačky Válcový posouvač. Demonstrační cvičení 6

Úvod do jazyka VHDL. Jan Kořenek Návrh číslicových systémů

v aritmetické jednotce počíta

Aritmetické operace a obvody pro jejich realizaci

Cíle. Teoretický úvod

1 z :27

Kódy pro odstranění redundance, pro zabezpečení proti chybám. Demonstrační cvičení 5 INP

Návrh základních kombinačních obvodů: dekodér, enkodér, multiplexor, demultiplexor

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

Číslicové obvody základní pojmy

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

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

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

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

1. Seznamte se s výukovou platformou FITkit (

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

Koncept pokročilého návrhu ve VHDL. INP - cvičení 2

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

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

Univerzita Tomáše Bati ve Zlíně

Násobičky, Boothovo překódování. Demonstrační cvičení 7

Čísla, reprezentace, zjednodušené výpočty

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č

Číselné soustavy v mikroprocesorové technice Mikroprocesorová technika a embedded systémy

Binární logika Osnova kurzu

1. 5. Minimalizace logické funkce a implementace do cílového programovatelného obvodu CPLD

Integrované obvody. Obvody malé, střední a velké integrace Programovatelné obvody

KOMBINAČNÍ LOGICKÉ OBVODY

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

Čísla, reprezentace, zjednodušené výpočty

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

Architektura počítačů Logické obvody

Obsah DÍL 1. Předmluva 11

Architektura počítačů Logické obvody

Sylabus kurzu Elektronika

Operace ALU. INP 2008 FIT VUT v Brně

Mikroprocesorová technika (BMPT)

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

Číslicové obvody a jazyk VHDL

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

Title: IX 6 11:27 (1 of 6)

B. Sčítání,odčítání adoplňkovýkód

Analogově-číslicové převodníky ( A/D )

Pohled do nitra mikroprocesoru Josef Horálek

Návrh ovládání zdroje ATX

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

DUM 02 téma: Elementární prvky logiky výklad

Algoritmizace a programování

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

Návrh. číslicových obvodů

ODBORNÝ VÝCVIK VE 3. TISÍCILETÍ MEII KOMBINAČNÍ LOGICKÉ OBVODY

Multiplexor a demultiplexor

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

18A - PRINCIPY ČÍSLICOVÝCH MĚŘICÍCH PŘÍSTROJŮ Voltmetry, A/D převodníky - principy, vlastnosti, Kmitoměry, čítače, fázoměry, Q- metry


Zkouškové otázky z A7B31ELI

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

ČÍSELNÉ SOUSTAVY PŘEVODY

Úvod do informačních technologií

I N V E S T I C E D O R O Z V O J E V Z D Ě L Á V Á N Í. výstup

LOGICKÉ OBVODY X36LOB

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

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

Číslicová technika 4 učební texty (SPŠ Zlín) str.: - 1 -

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.

Sekvenční logické obvody

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

Čísla a aritmetika. Řádová čárka = místo, které odděluje celou část čísla od zlomkové.

Základy číslicové techniky z, zk

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

LOGICKÉ OBVODY. souèástka se doplòuje na sklad # souèástka na skladì, výprodej Dodací podmínky neoznaèených souèástek sdìlíme na poptávku

Úloha 9. Stavové automaty: grafická a textová forma stavového diagramu, příklad: detektory posloupností bitů.

PODPORA ELEKTRONICKÝCH FOREM VÝUKY

Úvod do informačních technologií

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

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

Seznam témat z předmětu ELEKTRONIKA. povinná zkouška pro obor: L/01 Mechanik elektrotechnik. školní rok 2018/2019

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

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

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

Číselné soustavy: Druhy soustav: Počítání ve dvojkové soustavě:

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

FAKULTA ELEKTROTECHNICKÁ KATEDRA MĚŘENÍ. Tutoriál digitálního návrhu v Cadence pro studenty informatiky

Nalezněte pracovní bod fotodiody pracující ve fotovoltaickem režimu. Zadáno R = 100 kω, φ = 5mW/cm 2.

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

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

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

P4 LOGICKÉ OBVODY. I. Kombinační Logické obvody

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

2.8 Kodéry a Rekodéry

Profilová část maturitní zkoušky 2015/2016

5. A/Č převodník s postupnou aproximací

Jazyk VHDL zápis čísel, znaků a řetězců. Jazyk VHDL základní datové typy a operátory. Kurz A0B38FPGA Aplikace hradlových polí

Transkript:

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

Základní invertor v technologii CMOS dva tranzistory: T1 vodivostní kanál typ N T2 vodivostní kanál typ P při u VST = H nebo L je klidový proud velmi malý (na) diody slouží jako ochrana proti vlivům statické elektřiny a proti přepólování

Základní invertor v technologii CMOS

Základní invertor v technologii CMOS Převodní charakteristika Topologie CMOS invertoru u O 14 V U DD = 15 V 12 10 U DD = 10 V 8 6 U DD = 5 V u O (u I ) 4 2 TTL 0 2 4 6 8 10 12 14 V u I

Základní invertor v technologii CMOS Převodní charakteristika

Základní invertor v technologii CMOS

Šumová imunita NM L = V IL V OL NM H = V OH V IH

Další CMOS hradla NAND a NOR y = x 1 x 2 y = x 1 + x 2

Souběžné příkazy v jazyce VHDL with-select Signálu signal_name je přiřazena hodnota podle hodnoty výběrového signálu select_expression Konečné množství kombinací Pokud je signál select_expression typu bit_vector, pak máme pouze 4 možné hodnoty: 00, 01, 10 a 11 Každá hodnota signálu select_expression může být použita pouze jednou Pro výběrové signály typy std_logic_vector je často použito klíčové others.

Souběžné příkazy v jazyce VHDL with-select Koncepční schéma s využitím MUX pro příkaz with-select

Souběžné příkazy v jazyce VHDL with-select Příklad: mějme následující popis v jazyce VHDL?? kombinací Koncepční schéma Schéma na hradlové úrovni

Souběžné příkazy v jazyce VHDL with-select Příklad: dekodér 1z4, funkce je dána pravdivostní tabulkou

Souběžné příkazy v jazyce VHDL with-select Příklad: prioritní enkodér 4-to-2, funkce je dána pravdivostní tabulkou Tento příkaz není vhodný pro prioritní enkodér!!!

Číslicový komparátor Číslicový komparátor porovnává velikosti dvou čísel v binárním kódu. Nejčastěji je využívána informace o shodě dvou čísel. Mějme dvě n-bitové čísla A a B Vyjádření, že čísla jsou shodná vyjadřuje následující vztah K = ( A = B )( A = B )...( A = B ) n 1 n 1 n 2 n 2 0 0 Schematická značka číslicového komparátoru n n A B KOMP K podmínka K A=B 1 A B 0

Aritmetické operace (komb. log. obvody) sčítání Neúplná sčítačka má dva vstupy A, B a dva výstupy S, cout. Výstup S udává výsledek součtu jednobitových čísel A a B, výstup cout generuje přenos vznikající při součtu. Pro výstupy platí logické funkce S = AB + AB = A B cout = AB Úplná sčítačka jednobitová je sestavena ze dvou neúplných sčítaček. Má tři vstupy, ke vstupům A a B přibývá vstup pro přenos ze sčítačky nižšího bitu. Sn = A B cin cout = AB + cin( A B) A B cin cout S cin B A =1 1 & 2 =1 3 & 4 5 & S cout 0 0 0 0 0 0 1 0 0 1 1 0 0 0 1 1 1 0 1 0 0 0 1 0 1 0 1 1 1 0 1 0 1 1 0 1 1 1 1 1

Aritmetické operace sčítání Symbol 1-bitové úplné sčítačky n-bitová sčítačka s postupným přenosem je složena z n 1-bitových úplných sčítaček 4-bitová sčítačka s postupným přenosem (Carry-Ripple Adder)

Aritmetické operace sčítání Sčítačka s postupným přenosem Výhody: Jednoduchá realizace Sériové zapojení n 1-bitových úplných sčítaček Nevýhody: Velmi pomalé Velké zpoždění ze vstupu přes všechny 1-bitové úplné sčítačky na výstup Požití: Kde není kritická rychlost Pro pomalé aplikace, výsledné zpoždění závisí cílové technologii Když je požadována vysoká rychlost => velký pracovní kmitočet Není možné použít tento typ sčítačky Je nutné realizovat sčítačku založenou na odlišné struktuře!!! Např. sčítačka s paralelním přenosem (Carry-Lookahead Adder) mnohem rychlejší, ale větší obvodová struktura

Aritmetické operace sčítání 4-bitová sčítačka symbol

Dvojkový doplněk 4-bitové číslo rozsah +7 až -8 MSB představuje znaménkový bit Využívá se při operaci odčítání Samotná sčítačka může pracovat se zápornými čísly vyjádřené ve dvojkovém doplňku Pokud chceme převést číslo do dvojkového doplňku a na pozici MSB je 1, je nutné vektor rozšířit o jednu pozici Příklad: Unsigned 2 scomplement (kladný) 1001 (9) => 01001 (+9), +15 až -16 10010 (18) => 010010 (+18), +31 až -32 Binární číslo ------------- 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 Dekadické číslo ------------- 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Dvojkový doplněk ------------ 0 1 2 3 4 5 6 7-8 -7-6 -5-4 -3-2 -1

Aritmetické operace odčítání Využití dvojkového doplňku 4-bitové číslo rozsah +7 až -8 Mohou nastat 2 případy A B výsledek je kladný A<B výsledek je záporný, vyjádření ve dvojkovém doplňku Příklad: Odečteme dvě čísla A-B, A=5 a B=3 1) Určíme dvojkový doplněk čísla B 2) Sečteme číslo A a B: 0011 (+3) 1100 +1 -------- 1101 0101 (5) +1101 (-3) ---------- 10010 (+2) Obecné vyjádření odčítačky je tedy A B = A + (-B) = A + not(b) + 1

Aritmetické operace odčítání A 3 A 2 A 1 A 0 B 3 B 2 B 1 B 0 A 3 A 2 A 1 A 0 B 3 B 2 B 1 B 0 C out C in 1 S 3 S 2 S 1 S 0 S 3 S 2 S 1 S 0 A B = A + (-B) = A + not(b) + 1

Aritmetické operace sčítání/odčítání Vstup SET je přiveden na XOR a rozhoduje o sčítání nebo odčítaní SET=1 odčítání SET=0 sčítání

BCD sčítačka Jedná se o klasické sčítání. Problém nastává v případě, kdy je výstupní 4-bitové binární číslo v rozsahu od 1010(1010) do 1111(1510) Rozsah BCD kódu je od 0000(0 10 ) do 1001(9 10 ). Pokud je součet čísel do hodnoty 1001, pak je BCD a binární číslo stejné. Pokud je součet větší než 1001, pak musí dojít k převodu na další BCD číslo. Nejvýznamnější BCD číslice součtu nebude vyšší než 1, protože součet dvou BCD čísel nebude vyšší než číslo 19 10. Mějme binární číslo 10011 2 (19 10 ). BCD číslo je pak vyjádřeno dvěma BCD čísly 0001 BCD a 1001 BCD.

BCD sčítačka Binární součet (A + B + Cin) Dekadický tvar Upravený BCD tvar (C4 + BCD) 00000 0 0 + 0000 00001 1 0 + 0001 00010 2 0 + 0010 00011 3 0 + 0011 00100 4 0 + 0100 00101 5 0 + 0101 00110 6 0 + 0110 00111 7 0 + 0111 01000 8 0 + 1000 01001 9 0 + 1001 01010 10 1 + 0000 01011 11 1 + 0001 01100 12 1 + 0010 01101 13 1 + 0011 01110 14 1 + 0100 01111 15 1 + 0101 10000 16 1 + 0110 10001 17 1 + 0111 10010 18 1 + 1000 10011 19 1 + 1001

BCD sčítačka BCD číslice BCD číslice A 3 A 2 A 1 A 0 B 3 B 2 B 1 B 0 A 3 A 2 A 1 A 0 B 3 B 2 B 1 B 0 C 4 ' 4-bitová sčítačka C 0 S 3 S 2 S 1 S 0 C 0 B 3 B 2 B 1 B 0 převodník BIN/BCD C 4 D 3 D 2 D 1 D 0 C 4 D 3 D 2 D 1 D 0 přetečení BCD číslice

BCD sčítačka převodník BIN/BCD Příznak přetečení C4 je generován v případě, pokud je binární součet v rozsahu 01010(10 10 ) sum 10011(19 10 ). V upraveném BCD tvaru je součet v rozsahu 1 0000 sum 1 1001. Pokud je binární součet menší nebo roven 01001, pak je výstupní číslo převodníku BIN/BCD rovno vstupnímu číslu. Pokud je binární součet v rozsahu 01010(10 10 ) sum 10011(19 10 ), musí být nejnižší 4-bity vstupního binárního čísla převedeny na korektní BCD číslo. To může být provedeno přičtením čísla 0110 2 (6 10 ).

BCD sčítačka Příznak přetečení C4 bude roven 0 pro binární součet v rozsahu od 00000(0 10 ) do 01001(9 10 ). Příznak přetečení C4 musí být roven 1 pro binární součet v rozsahu od 01010(10 10 ) do 10011(19 10 ). Pokud je příznak přetečení C4 paralelní 4-bitové paralelní sčítačky roven 1, pak je příznak přetečení C4 převodníku BIN/BCD rovněž roven 1. Pokud je binární součet v rozsahu od 01010(10 10 ) do 01111(15 10 ), pak musí být bit MSB binárního součtu převeden na číslo 1 Vyjádříme si tento vztah příznakem přetečená C4 a navrhneme příslušnou Karnaughovu mapu.

BCD sčítačka C " = S S + S S 4 3 2 3 1 C = C ' + C " = C ' + S S + S S 4 4 4 4 3 2 3 1

BCD sčítačka BCD číslice BCD číslice A 3 A 2 A 1 A 0 B 3 B 2 B 1 B 0 A 3 A 2 A 1 A 0 B 3 B 2 B 1 B 0 C 4 ' 4-bitová sčítačka S 3 S 2 S 1 S 0 C 0 ' Cin & 1 & S 3 ' S 2 ' S 1 ' S 0 ' A 3 A 2 A 1 A 0 B 3 B 2 B 1 B 0 převodník BIN/BCD C 4 4-bitová sčítačka C 0 S 3 S 2 S 1 S 0 C 4 S 3 S 2 S 1 S 0

BCD sčítačka - výstupní součet v rozsahu od 00000 do 19999 A 1000 B 1000 A 100 B 100 A 10 B 10 A 1 B 1 C 4 ' 4-bitová sčítačka C 0 ' C 4 ' 4-bitová sčítačka C 0 ' C 4 ' 4-bitová sčítačka C 0 ' C 4 ' 4-bitová sčítačka C 0 ' C 0 BIN/BCD C 0 BIN/BCD C 0 BIN/BCD C 0 BIN/BCD C 4 C 4 C 4 C 4 S 10000 S 1000 S 100 S 10 S 1

Realizace jednoduché aritmetické jednotky (ALU) Aritmetická jednotka bude zpracovávat 2 16-bitové sběrnice A a B Funkce aritmetické jednotky ALU je dána následující tabulkou sel Operace Funkce Jednotka 0000 y<=a Přenesení A 0001 y<=a+1 Inkrementace A 0010 y<=a-1 Dekrementace A 0011 y<=b Přenesení B 0100 y<=b+1 Inkrementace B aritmetická 0101 y<=b-1 Dekrementace B 0110 y<=a+b Součet A a B 0111 y<=a+b+cin Součet A a B a přenosu 1000 y<=not A Negace A 1001 y<=not B Negace B 1010 y<=a and B AND 1011 y<=a or B OR 1100 y<=a nand B NAND logická 1101 y<=a nor B NOR 1110 y<=a xor B XOR 1111 y<=a xnor B XNOR

Realizace jednoduché aritmetické jednotky (ALU)

Realizace jednoduché aritmetické jednotky (ALU) entity ALU_arith is Port (sel : in std_logic_vector(2 downto 0); A,B : in std_logic_vector(15 downto 0); cin : in std_logic; y : out std_logic_vector(15 downto 0)); end ALU_arith; architecture Behavioral of ALU_arith is architecture Behavioral of ALU_arith is begin with sel select y<=a when 000, A+1 when 001, A-1 when 010, B when 011, B+1 when 100, B-1 when 101, A+B when 110, A+B+cin when others; end Behavioral;