Cíle. Teoretický úvod

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

Cíle. Teoretický úvod. BDIO - Digitální obvody Ústav mikroelektroniky Sekvenční logika - debouncer, čítače, měření doby stisknutí tlačítka Student

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

BDIO - Digitální obvody

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

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

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

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

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

Registry a čítače část 2

SEKVENČNÍ LOGICKÉ OBVODY

2.9 Čítače Úkol měření:

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

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

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

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


Typy a použití klopných obvodů

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 (

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

Návrh synchronního čítače

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

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

3. Sekvenční logické obvody

Sylabus kurzu Elektronika

5. Sekvenční logické obvody

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

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

2.8 Kodéry a Rekodéry

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

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

Architektura počítačů Logické obvody

Architektura počítačů Logické obvody

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

Návrh ovládání zdroje ATX

Návrh asynchronního automatu

Sekvenční logické obvody

VY_32_INOVACE_OV_2.ME_CISLICOVA_TECHNIKA_19_SPOJENI KOMBINACNICH_A_SEKVENCNICH_OBVODU Střední odborná škola a Střední odborné učiliště, Dubno

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

VY_32_INOVACE_CTE_2.MA_18_Čítače asynchronní, synchronní. Střední odborná škola a Střední odborné učiliště, Dubno Ing.

Návrh čítače jako automatu

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

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

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

BISTABILNÍ KLOPNÉ OBVODY, ČÍTAČE

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

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

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

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

Návrh. číslicových obvodů

PROGRAMOVATELNÉ LOGICKÉ OBVODY

1 Digitální zdroje. 1.1 Převod digitálních úrovní na analogový signál. Cílem cvičení je osvojení práce s digitálními zdroji signálu.

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

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

Pokročilé využití jazyka VHDL. Pavel Lafata

PODPORA ELEKTRONICKÝCH FOREM VÝUKY

Struktura a architektura počítačů

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

Použití programovatelného čítače 8253

Sekvenční logické 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

TECHNICKÝ POPIS MODULU GRAFIK =============================

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

1 z :27

Způsoby realizace této funkce:

Obsah DÍL 1. Předmluva 11

KOMBINAČNÍ LOGICKÉ OBVODY

Číslicové obvody základní pojmy

SPARTAN - 3 Xilinx FPGA Device

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

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

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

2-LC: ČÍSLICOVÉ OBVODY

PROGRAMOVATELNÁ LOGICKÁ POLE A JAZYKY HDL

Struktura a architektura počítačů

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

Direct Digital Synthesis (DDS)

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

Pohled do nitra mikroprocesoru Josef Horálek

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

Alfanumerické displeje

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

Práce v návrhovém prostředí Xilinx ISE WebPack 9.2i

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 obsluze výukové desky CPLD

LOGICKÉ OBVODY X36LOB

Principy komunikace s adaptéry periferních zařízení (PZ)

STŘEDNÍ PRŮMYSLOVÁ ŠKOLA STROJNICKÁ A STŘEDNÍ ODBORNÁ ŠKOLA PROFESORA ŠVEJCARA, PLZEŇ, KLATOVSKÁ 109. Miroslav Hůrka MECHATRONIKA

Hardwarová realizace konečných automatů

Kombinační automaty (logické obvody)

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

7. Popis konečného automatu

VY_32_INOVACE_CTE_2.MA_19_Registry posuvné a kruhové. Střední odborná škola a Střední odborné učiliště, Dubno Ing. Miroslav Krýdl

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

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

Konečné automaty (sekvenční obvody)

Implementace čítačů v číslicových systémech Jakub Šťastný

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

Transkript:

Předmět Ú Úloha č. 7 BIO - igitální obvody Ú mikroelektroniky Sekvenční logika návrh asynchronních a synchronních binárních čítačů, výhody a nevýhody, využití Student Cíle Funkce čítačů a použití v digitálních systémech. Rozdíly mezi asynchronními a synchronními čítači. Metodika návrhu binárních čítačů. Popis čítače v jazyce VHL a jeho implementace do FPGA. Teoretický úvod Čítač je podle obecné definice zařízení, které slouží ke stanovení absolutní četnosti výskytu určitého jevu, nebo události. Jedná se o počítadlo - způsob realizace, funkční principy, nebo metoda detekce sledovaného jevu přitom nejsou podstatné. Čítače mají velké uplatnění v digitální technice např. čítání požadované sekvence, ové automaty, děličky frekvence apod. Z hlediska digitální techniky je čítač obvykle chápán jako sekvenční logický obvod, který zaznamenává počet změn vstupního hodinového signálu (nástupná, nebo sestupná hrana). S každou změnou hodinového signálu dochází ke změně hodnoty výstupu čítače. Výstup nabývá hodnoty v definovaném intervalu. V případě binárního čítače je interval definován šířkou výstupního slova. Hodnoty jsou reprezentovány použitým kódováním. V technické praxi jsou často využívány binární čítače. Jejich výstupní hodnota je vyjádřena binárním kódem. Interval výstupních hodnot je <0 ; (2 n 1)>, kde n je šířka výstupního slova čítače. Pravdivostní tabulka 3-bitového binárního čítače vpřed je v tabulce 1. Tab. 1: Pravdivostní tabulka 3-bitového binárního čítače současný následující (buzení) 2 1 0 2 1 0 s0 0 0 0 0 0 1 s1 0 0 1 0 1 0 s2 0 1 0 0 1 1 s3 0 1 1 1 0 0 s4 1 0 0 1 0 1 s5 1 0 1 1 1 0 s6 1 1 0 1 1 1 s7 1 1 1 0 0 0

Stejný interval výstupních hodnot, ovšem odlišné kódování využívá Grayův čítač. Realizace Grayova čítače je náročnější než v realizace binárního čítače. Výhodou čítače v Grayově kódu je, že pro dvě následující hodnoty se výstupní slovo vždy mění pouze v jenom bitu. U binárního kódu dochází u dvou následujících hodnot ke změnám na jednom i více bitech. Proto u Grayova čítače nemuže nikdy nastat, že by na výstupu kvůli rozdílným zpožděním jednotlivých výstupů z KO byla jiná hodnota než požadována. Tento typ čítače se často využívá např. při realizaci vyrovnávacích FIFO (First In, First Out) pamětí, které přenášejí data mezi různými hodinovými doménami. Pravdivostní tabulka 3-bitového čítače v Grayově kódu je v tabulce 2. Tab. 2: Pravdivostní tabulka 3-bitového binárního čítače v grayově kódu současný následující (buzení) 2 1 0 2 1 0 s0 0 0 0 0 0 1 s1 0 0 1 0 1 1 s2 0 1 1 0 1 0 s3 0 1 0 1 1 0 s4 1 1 0 1 1 1 s5 1 1 1 1 0 1 s6 1 0 1 1 0 0 s7 1 0 0 0 0 0 Pro implementaci čítání v desítkové souě je možné využít BC čítače. Každá číslice desítkové souy je vyjádřena BC kódem pomocí 4-bitového binárního čísla. Interval hodnot je omezen na <0 9>. Pro zkrácení intervalu čítání (oproti binárnímu čítači) se využívají čítače modulo M, které čítají v intervalu <0 (M-1)>. Typicky se tyto čítače požívají pro dělení frekvence, kde M odpovídá dělícímu poměru. Poslední skupinu čítačů tvoří speciální čítače, pro které je charakteristická absence určitých hodnot v čítaném intervalu. Takový čítač čítá posloupnost například 0-2-5-7. Při volbě vhodného čítače hraje velmi významnou roli také otázka synchronnosti vůči řídícímu hodinovému signálu. Asynchronní struktury jsou zpravidla jednodušší, zároveň jsou však náchylnější ke vzniku hazardních ů. Především u systémů pracujících s vysokou frekvencí hodinového signálu je vhodné využívat synchronní obvodové struktury. Na obrázku 1 je příklad implementace 3-bitového asynchronního binárního čítače realizovaného pomocí klopných obvodů typu. Čítač je tvořen kaskádním spojením klopných obvodů, které jsou zapojeny jako děličky frekvence dvěma. 0 1 2 Obr. 1: Tříbitový asynchronní čítač s klopnými obvody

Na obrázku 2 jsou časové průběhy hodinového vstupu a výstupů 3-bitového asynchronního čítače z obrázku 1. Průběhy výstupů 0, 1 a 2 mají různé zpoždění vůči hodinovému signálu. Toto zpoždění je způsobeno kaskádním zapojením KO, protože změna na vstupním hodinovém signálu se potupně přenáší jednotlivými stupni čítače. Toto zpoždění roste s počtem použitých klopných obvodů. Změna hodnoty více než jednoho bitu binárního čítače se projví postupně. Výstupní hodnota po dobu zpoždění neodpovídá skutečné hodnotě čítače. To se nejvíc projeví při přetečení čítače, kdy čítač přechází mezi y: 111 000 Výstupní se ale změní postupně tři krát: 111 110 100 000 Pokud je výstup čítače připojen ke vstupu kombinační logiky, jeho hodnota bude zpracována chybně. 0 1 2 Obr. 2: Průběh výstupního signálu asynchronního čítače Na obrázku 3 je koncepční schéma 3-bitového binárního synchronního čítače. Čítač je rozdělen na paměťovou část tvořenou KO a kobinační logiku. Synchronní binární čítač obsahuje oproti asynchronnímu navíc kombinační logickou funkci, která dekóduje aktuální na následující. Hodnota následujícího u je připojena ke vstupům všech KO před příchodem hrany hodinového signálu. íky tomu je zabezpečeno, že hodnoty všech bitů jsou přeneseny ze vstupů na výstupy KO synchronně s hranou hodinového signálu a se stejným spožděním. Struktura synchronních čítačů je obvykle složitější než struktura asynchronních čítačů a jejich implementace je náročnější na plochu. Synchronní čitače jsou při návrhu digitálnich obvodů využívány častějí, než asynchronní. Na obrázku 4 je obvodové schéma 3-bitového synchronního binárního čítače navrženého dle koncepčního schématu z obrázku 3, vynačena je kombinační a paměťová čast.

kombinační logika paměťová část 2 2 kombinační logika 1 1 výstupy 0 0 Obr. 3: Koncepční schéma 3-bitového binárního synchronního čítače kombinační logika paměťová část 2 1 0 2 1 0 2 2 1 1 výstupy 1 1 1 0 0 Obr. 4: Obvodové schéma 3-bitového binárního synchronního čítače Na následující stránce je ukázka postupu návrhu synchronního 3-bitového binárního čítače. Tento návrh počíta se strukturou ze schématu z obrázku 3. Paměťová část je realizována pomocí KO. Kombinační funkce je odvozena z pravdivostní tabulky. Pravdivostní tabulka 3-bitového binárního čítače bude mít 2 n řádků, kde n je počet bitů čítače. Z pravdivostní tabulky jsou odvozeny funkce popisující výstupy kombinační sítě. Vstupem kombinační sítě jsou výstupy čítače, jsou uvedeny na levé straně pravdivostní tabulky. Výstupy kombinační logiky, které jsou zároveň vstupy paměťové části, jsou na pravé straně pravdivostní tabulky. Z pravdivostní tabulky jsou následně odvozeny funkce popisující kombinační logiku.

Aktuální Následující 2 1 0 2 1 0 0 0 0 0 0 1 0 0 1 0 1 0 0 1 0 0 1 1 0 1 1 1 0 0 1 0 0 1 0 1 1 0 1 1 1 0 1 1 0 1 1 1 1 1 1 0 0 0 Kombinační funkce pro vstup 0 je tvořena pouze invertorem: 0 = 0 Kombinační funkce pro vstup 1 je tvořena hradlem XOR: 1 = 1 XOR 0 Kombinační funkce pro vstup 2 je odvozena z Karnaughovy mapy: 1 0 2 00 01 11 10 0 0 0 1 0 1 1 1 0 1 2 = ( 2 * 1 ) + ( 2 * 0 ) + ( 0 * 1 * 2 ) Odvozené funkce popisující kombinační logiku 3-bitového mohou být použity například při popisu čítače v jazyce VHL. V případě širších čítaču je odvození funkcí kombinační logiky náročné a je vhodnější v jazyce VHL využít behaviorální popis. Ukázka metodicky korektního behaviorálního VHL popisu 3-bitového synchronního čítače, využívající oddělení kombinační části od sekvenční: entity counter is Port ( : in ST_LOGIC; : out ST_LOGIC_VECTOR (2 downto 0)); end counter; architecture Behavioral of counter is signal d_int,q_reg : ST_LOGIC_VECTOR (2 downto 0); begin -- sekvecni (pametova) cast process () begin if ('event and ='1') then q_reg <= d_int; end if; end process; -- kombinacni cast process (q_reg) begin d_int <= q_reg + 1; end process; <= q_reg; end Behavioral; Výše popsané čítače obsahují pouze jeden vstup, na základě kterého je inkrementována hodnta n-bitového výstupu. Takový čítač zaznamenává počet změn na vstupním řídicím signálu. V případech, kdy není dostačující jednoduchý inkrementující čítač je možné jeho funkce rozšířit. Typickým případem rozšíření funkce čítače je možnost změny směru čítání. To je možné realizovat dvěma způsoby. V prvním případě čítač obsahuje dva vstupy, kdy jeden vyvolává inkrementaci a druhý dekrementaci. alší způsob využívá vstup, který nauje, zda čítač inkrementuje nebo dekrementuje a hodinvý vstup. alší typické rozšíření funkce čítačů je možnost nulování nebo přednaení počáteční hodnoty čítače. To může být implementováno jako synchronní nebo asynchronní. V případe synchronní implementace dojde k provedení s hranou hodinového signálu a v případě asynchronní implmentace s úrovní příslušného vstupu.

Vypracování laboratorní úlohy Úkol č. 1 (0,6 bodu) Na obrázku je 3-bitový čítač realizovaný pomocí KO. oplňte pravdivostní tabulku a vyznačte typ čítače. 0 1 2 0 0 0 CLK 2 1 0 a) Synchronní čítač vpřed b) Synchronní čítač vzad c) Asynchronní čítač vpřed d) Asynchronní čítač vzad BC čítač je N-bitový synchronní binární čítač modulo M. oplňte N a M: N = M = Úkol č. 2 (0,6 bodu) Zjistěte výstupní frekvenci oscilátoru osazeného na vývojové desce Spartan-3 Starter Board. Navrhněte děličku frekvence tohoto hodinového signálu tak, aby výstupní signál měl periodu větší než 1 sekunda a menší než 2 sekundy. Uveďte pouze výpočet(schéma zapojení není nutné).

Úkol č. 3 (0,6 bodu) Ve vývojovém prostředí Xilinx ISE založte nový projekt. Navrhněte VHL popis děličky frekvence (čítač modulo M) tak, aby výsledná frekvence byla _1Hz = 1Hz. Základním hodinovým signálem bude oscilátor umístěný na vývojové desce. Výsledek zobrazte na jedné z LE diod. Výsledný návrh implementujte do paměti PROM. Funkci otestujte na vývojové desce. Úkol č. 4 (2x0,6 bodu = 1,2 bodu) Ve vývojovém prostředí Xilinx ISE založte nový projekt. Navrhněte BC čítač čítající s frekvencí 1 Hz, kterého výstup se bude zobrazovat na 7-segmentovém displeji. Jako děličku frekvence (1 Hz) použijte blok z předcházejícího úkolu č. 3. Systém navrhněte pomocí strukturálního popisu. Blokové zapojení celého systému by mělo vypadat následovně: digi_top BC čítač 4 BC dekodér 7 ělička _1Hz rst Výsledný návrh implementujte do paměti PROM a funkci otestujte na vývojové desce. Bonusový úkol č. 5 (0,6 bodu) Upravte předcházející úkol tak, aby byl celý návrh plně synchronní a pracoval pouze se základní frekvencí 50 MHz, tj. všechny klopné obvody byly připojeny na stejný hodinový signál. Upravte děličku frekvence tak, aby generovala pouze povolovací impulz (enable) s frekvencí 1 Hz (po dobu jednoho taktu hlavních hodin). BC čítač upravte tak, aby zápis do registru (v sekvenční části) probíhal pouze, pokud je povolovací (enable) signál aktivní.