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

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

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

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

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

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

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

Návrh ovládání zdroje ATX

Cíle. Teoretický úvod

Návrh. číslicových obvodů

Velmi zjednodušený úvod

Souhrn Apendixu A doporučení VHDL

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

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

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

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

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

12. VHDL pro verifikaci - Testbench I

Vzorový příklad. Postup v prostředí ISE. Zadání: x 1 x 0 y Rovnicí y = x 1. Přiřazení signálů:

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

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č

1. Seznamte se s výukovou platformou FITkit (

Číslicové obvody a jazyk VHDL

Logické obvody 10. Neúplné čítače Asynchronní čítače Hazardy v kombinačních obvodech Metastabilita Logické obvody - 10 hazardy 1

Vzorový příklad. Postup v prostředí ISE. Zadání: x 1 x 0 y. Rovnicí y = x 1. x 0. Přiřazení signálů: ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE

PROGRAMOVATELNÁ LOGICKÁ POLE A JAZYKY HDL

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

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

Jazyk VHDL konstanty, signály a proměnné. Jazyk VHDL paralelní a sekvenční doména. Kurz A0B38FPGA Aplikace hradlových polí

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

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

Univerzita Tomáše Bati ve Zlíně

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

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

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

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

SEKVENČNÍ LOGICKÉ OBVODY

Sylabus kurzu Elektronika

Architektura počítačů Logické obvody

Architektura počítačů Logické obvody

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

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

... sekvenční výstupy. Obr. 1: Obecné schéma stavového automatu

1 Stručný popis jazyku VHDL

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

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

Sekvenční logické obvody

KOMBINAČNÍ LOGICKÉ OBVODY

Způsoby realizace této funkce:

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

Vývoj VHDL. Verilog HDL

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

Příklad č. 1 Přepis informace ze vstupů (SW0 až SW3) na ledky (LEDG0 až LEDG3)

3. Sekvenční logické obvody

Zkouškové otázky z A7B31ELI

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

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

Systém řízení sběrnice

PROGRAMOVATELNÉ LOGICKÉ OBVODY

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

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

14. Složitější konstrukce

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

Návod k obsluze výukové desky CPLD

Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti

Implementace čítačů v číslicových systémech 2 Jakub Šťastný ASICentrum, s.r.o. FPGA Laboratoř, Katedra teorie obvodů FEL ČVUT Praha

Registry a čítače část 2

Programovatelné relé Easy (Moeller), Logo (Siemens)

Návrh synchronního čítače

Elektronika pro informační technologie (IEL)

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

LOGICKÉ OBVODY X36LOB

2. Entity, Architecture, Process

Typy a použití klopných obvodů

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

Návrh čítače jako automatu

Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti

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

11. Logické analyzátory. 12. Metodika měření s logickým analyzátorem

3.7.5 Znaménkové operátory Násobící operátory Rùzné operátory Základní objekty Konstanty Sig

7. Popis konečného automatu

MĚŘENÍ HRADLA 1. ZADÁNÍ: 2. POPIS MĚŘENÉHO PŘEDMĚTU: 3. TEORETICKÝ ROZBOR. Poslední změna

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

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

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

Řídicí obvody (budiče) MOSFET a IGBT. Rozdíly v buzení bipolárních a unipolárních součástek

Na trh byl uveden v roce 1971 firmou Signetics. Uvádí se, že označení 555 je odvozeno od tří rezistorů s hodnotou 5 kω.

Struktura a architektura počítačů

Cíle. Teoretický úvod. BDIO - Digitální obvody Ústav mikroelektroniky. Úloha č. 5. Student. Řešení komplexního úkolu kombinační logikou Chemická nádrž

Konfigurace portů u mikrokontrolérů

Základní znaky. - Ve srovnání se Spice jsou velmi složité a vyžadují dlouhou dobu na plné osvojení. - Velmi nákladné simulační programy.

STAVEBNÍ NÁVODY 1 pro činnost v elektro a radio kroužcích a klubech

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

Schmittův klopný obvod

LOGICKÉ SYSTÉMY PRO ŘÍZENÍ

Digitální technika. Jazyk VHDL, základy návrhu. Ing. Jakub Št astný, Ph.D. 1

Inovace a zkvalitnění výuky směřující k rozvoji odborných kompetencí žáků středních škol CZ.1.07/1.5.00/

Návod k použití výkonového modulu KP10M

BDIO - Digitální obvody

5. Sekvenční logické obvody

Transkript:

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

Obvody s třístavovým výstupem dva tranzistory: vodivostní kanál typ N vodivostní kanál typ P X CS 3 stavový sa výstup Y P logika X 3 stavový výstup W N CS

Obvody s třístavovým výstupem Vlastnosti třístavových výstupů : řízení výběrovým signálem CS - Chip Select při CS = 1 => W = 0 Y=1 tranzistory jsou uzavřené - vysoká impedance Z při CS = 0 => W = Y = not Xna výstupu je signál X Využití třístavových výstupů: propojování obvodů pomocí společných sběrnic efektivní implementacemultiplexorů s mnoha vstupy multiplexování LED diod - 3 piny řídí 6 LED (charlieplexing)

Obvody s třístavovým výstupem Charlieplexing: Prahové napětí LED diody je např. U T =2 V FPGA/MCU N pinů uřídí N(N-1) LED diod LED3 LED4 LED5 LED6 LED1 LED2

Dvojsměrný budič sběrnice S jedním 3-stavovým budičem výstupním

Dvojsměrný budič sběrnice S dvěma 3-stavovými budiči vstupním a výstupním dir FPGA/ASIC logika sig_out sig_inout logika sig_in

Dvojsměrný port v jazyce VHDL Popis dvojsměrného portu v jazyce VHDL entity bidir is port( pin_io: inout std_logic;... begin sig_out <= vyraz_pro_vystupni_signal;... vnitrni_signal <= vyraz_se_sig_in;... pin_io <= sig_out when dir = '1' else 'Z'; sig_in <= pin_io;...

Dvojsměrný port v jazyce VHDL Pro použití zapojení se dvěma budiči je potřeba poslední řádek upravit: entity bidir is port( pin_io: inout std_logic;... begin sig_out <= vyraz_pro_vystupni_signal;... vnitrni_signal <= vyraz_se_sig_in;... pin_io <= sig_out when dir = '1' else 'Z'; sig_in <= pin_io when dir = '0' else 'Z';...

Sběrnice s třístavovými členy zak končení X 1 X 2 X n CS 1 CS 2 CS n

Sběrnice s třístavovými členy Vlastnosti sběrnice s třístavovými členy Budiče jsou obvykle výkonové Výstupy členů jsou pospojovány paralelně Současně může být aktivní maximálně jeden budič sběrnice Přijímací členy mají hysterezní charakteristiku potlačující rušení Zakončení sběrnice s třístavovými členy Zakončení sběrnice definuje napětí na sběrnici v případě všech členů v Z by byla sběrnice bez napětí Obvody zakončující sběrnici se označují terminátory Zakončení potlačuje efekty dlouhého vedení

Přechodné děje v kombinačních obvodech Zpoždění Časovýý rozdíl mezi změnouě výstupního ýt signálu vůči vstupnímu Změna vstupního stavu do ustálení výstupního stavu, tj. všech výstupních signálů Zpoždění v kombinačních obvodech můžou být kritická pro správnou činnost dalších obvodů Měla by být známá maximální a minimální doba hodnota zpoždění V katalogovém listu se udávají zpravidla jen maximalní doby zpoždění Skutečná hodnota zpoždění je tedy neznámá je závislá na typu součástky, nap. napětí, teplotě, délce spojů apod.

Přechodné děje v kombinačních obvodech Časová zpoždění t PHL a t PLH určují zpoždění signálu ze vstupu na výstup během změny z log.0 do log.1 a z log.1 do log.0 V in [V] V DD ideální vstupní signál V 50% 0 t t PHL t PLH V out [V] t PHL t PLH V DD V 50% 0 t 0 t 1 t 2 t 3 t

Přechodné děje v kombinačních obvodech Obvod s různými dobami zpoždění b=0, c=0 a d=1 t p (a,y)=2t PLH +t PHL =2*5+3=13 ns když a t p (a,y) y)=2t PHL +t PLH =2*3+5=11 23+5 ns když a

Hazardní stavy Velmi často zamlžovaná problematika Sledovaný výstupní signál má být konstantní při změně signálu na vstupu Při některých změnách se objeví falešné impulzy Vznikají při změně úrovně na vstupních signálech Jsou tvořeny zpožděním Hazardní stav je přechodný a neplatí při něm pravidla booleovy algebry Falešné impulsy se mohou, ale také nemusí vyskutnout Nesprávné chování následujících obvodů

Hazardní stavy Vznik falešných impulzů u obvodu AND a OR předcházející obvody a a b y b y a a b b y y t t

Hazardní stavy Hazardní stavy Funkci některých obvodů neovlyvní: Relé - dlouhá časová odezva Indikační LED - impulz namenat lidským okem Ve většině případů jsou nežádoucí Blokující obvody odstraňují hazardní stavy Přídavná logika, která po dobu trvání hazardu blokuje výstup Musí být součástí návrhu logické funkce

Hazardní stavy Blokování hazardu signálem s hodnotou 1 y = bc + ac + ab y = bc + ac + ab + bc

Hazardní stavy Hledání hazardních stavů pomocí karnaug. map smyčky odpovídají členům výrazu popisujícího funkci přeskokř kmezi členy může b a způsobit hazardní stav 1 1 přeskoky uvnitř smyček c 0 1 nezpůsobují hazardní stav odstranění hazardu se provede 0 1 1 1 překrytím přeskoků mezi členy y = bc + ac + ab + bc redundantními smyčkami

Hazardní stavy Překrytí přeskoků nadbytečnými smyčkami výsledná funkce je ekvivalentní funkci původníů obsahuje redundantní členyy toto řešení není univerzální c a b 1 1 0 1 0 1 1 1 překrytí funguje pouze v případě, že se mění jedna vstupní proměnná y = bc + ac + ab + ac + ab + bc

Hazardní stavy Potlačení hazardních stavů pomocí registrů vložením registrů (paměťových obvodů) před vstup a za výstup kombinační logiky lze odstranit hazardní stavy registr je řízen náběžnou hranou hodinového signálu falešné impulzy musí odeznít před příchodem náběžné hrany hodinového signálu maximální frekvence hodinového signálu závisí na maximálním zpoždění kombinačního obvodu BUDE PODROBNĚJI PROBRÁNO V POZDĚJŠÍCH PŘEDNÁŠKÁCH JEDNÁ SE UŽ O SEKVENČNÍ SYSTÉMY!!!

Hazardní stavy Potlačení hazardních stavů pomocí registrů vstupy D D výstupy a b c d a_clk b_clk c_clk d_clk kombinační logika x_clk y_clk z_clk x y z clk a t clk th - maximální doba trvání hazardu tclk - perioda hodinového signálu clk a_clk musí platit tclk > th x_clk x t h t h

Strukturální popis v jazyce VHDL Jedná se o skládání jednotlivých komponent Jednotlivé komponenty mohou být popsány např. behaviorálním nebo dataflow způsobem Jedná se o přehledný popis Podobné netlistu Vhodné pro složitější systémy => může dojít k lepšímu výsledku po syntéze Složitý systém popsán behaviorálním způosbem může být nepřehledný a složitý pro syntetizér

Detektor sudé parity strukturální popis

Detektor sudé parity strukturální popis -- samostatny vhd soubor entity parita is Port (a : in std_logic_vector(2 downto 0); even : out std_logic); end parita; architecture Behavioral of parita is -- deklarace hradla xor2 component xor2_gate Port ( a,b : in std_logic; y : out std_logic); end component; -- deklarace hradla invertor component inv_gate Port ( a : in std_logic; y : out std_logic); end component; -- interni signaly signal sig1, sig2 : std_logic; begin unit1: xor2_gate instance prvni xor2 port map(a=>a(0), b=>a(1), y=>sig1); unit2: xor2_gate -- instance druhy xor2 port map(a=>sig1, b=>a(2), y=>sig2); unit3: inv_gate -- instance invertoru port map(a=>sig2, y=>even); end Behavioral; -- samostatny vhd soubor entity xor2_gate is Port ( a,b : in std_ logic; y : out std_logic); end xor2_gate; architecture rtl of xor2_gate is begin y <= a xor b; end rtl; -- samostatny vhd soubor entity inv_gate is Port( a : in std_ logic; y : out std_logic); end inv_gate; architecture rtl of inv_gate is begin y <= not a; end rtl;

MUX 16-to-1 strukturální popis

MUX 16-to-1 strukturální popis entity mux16_1 is Port ( a : in std_logic_vector(15 downto 0); s : in std_logic_vector(3 downto 0); y : out std_logic); end mux16_1; architecture Behavioral of mux16_1 1 is component mux4_1 is Port (a : in std_logic_vector(3 downto 0); s : in std_logic_vector(1 downto 0); y : out std_logic); end component mux4_1; SIGNAL m0,m1,m2,m3: m1 m2 m3: std_logic; SIGNAL m : std_logic_vector(3 downto 0); begin m <= m0&m1&m2&m3; mux1: mux4_1 port map(a=>a(3 downto 0),s=>s(1 downto 0),y=>m0); mux2: mux4_1 port map(a=>a(7 downto 4),s=>s(1 downto 0),y=>m1); mux3: mux4_1 port map(a=>a(11 downto 8),s=>s(1 downto 0),y=>m2); mux4: mux4_1 port map(a=>a(15 downto 12),s=>s(1 downto 0),y=>m3); mux5: mux4_1 port map(a=>m,s=>s(3 downto 2),y=>y); end Behavioral;