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

Rozměr: px
Začít zobrazení ze stránky:

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

Transkript

1 Digitální technika Jazyk VHDL, základy návrhu Ing. Jakub Št astný, Ph.D. 1 1 stastnj1@seznam.cz FPGA laboratory Department of Circuit Theory, FEE CTU Prague Technická 2, Praha 6, Přednášky - DIT

2 1 První kroky Proč HDL? Úrovně abstrakce Typická podoba návrhu Základy jazyka První návrh 2 Základní číslicové struktury Kombinační obvody Základní aritmetické operace Jednoduché sekvenční obvody 3 Slídy kuchařka na později

3 Doporučená literatura

4 Před HDL jazyky schéma Použití schématických editorů pro přímé kreslení schématu bylo sice jednoduché na implementaci a velký pokrok proti kreslení na papír, ale přinášelo řadu problémů: potřebujeme proprietární editor ukládáme v proprietárním formátu kreslení je časově náročné ve schématu je obížné se vyznat návrh je prováděn na příliš nízké úrovni abstrakce schéma i jednoduchých obvodů je veliké a trvá dlouho, než se v něm zorientujete obtížná tvorba parametrizovatelných konstrukcí schéma není přenositelné mezi technologiemi (FPGA, ASIC,...) malá produktivita práce. Proto se dnes zejména používá pro prohlížení obvodů vytvořených z HDL popisu (pro review) a při opravách.

5 Hardware Description Languages Hlavní proud implementace číslisových obvodů je dnes pomocí HDL jazyků, které odstraňují většinu nevýhod schematického zápisu: místo schematu použijeme speciální programovací návrhový jazyk zápis běžným textovým editorem, univerzální formát vyšší produktivita práce jednoduché sdílení jednodušší opětovné použití přenositelnost nástroje,techlib VHDL, Verilog, SystemVerilog, System-C (běžně kombinujeme) popis na různých úrovních abstrakce Ale pozor: stále se jedná o návrh, nikoliv programování, jak zjistíte brzy sami.

6 Jazyky HDL k čemu použít? Specifikace Takže co s tím lze dělat? systémový návrh volba FPGA hotové RTL constraints netlist constraints konfigurace FPGA Návrh systému Kódování návrhu (Design Capture) Syntéza Rozmístění+propojení (Place & Route) RTL simulace Gate level simulace Statická časová analýza Nakonfigurovaný obvod Změna specifikace simulovat pomocí číslicového simulátoru vytvořit vlastní obvod pomocí nástrojů pro implementaci použít speciální nástroje pro formální analýzu obvodu (linting, propojení, formální verifikace,...) Validace

7 Úvod úrovně abstrakce Abstraktni popis Vetsi "rezervy" Vice detailu Konkretni popis behavioural level RTL level mnozstvi detailu Gate level Transistor level Physical level nejrychlejsi implementace nejrychlejsi odladeni nejlevnejsi nejmene presne odhady nejpresnejsi odhady nejpomalejsi implementace nejpomalejsi odladeni nejdrazsi

8 Úrovně abstrakce proces návrhu neustále se zpřesňující model převádíme popis (model) návrhu mezi úrovněmi abstrakce čím vyšší úroveň abstrakce, tím potřeba větší rezervy a méně detailů přechod na nižší úroveň abstrakce detaily přidává, zvyšuje složitost modelu modely na vyšší úrovni abstrakce se snáze implementují, simulace na vyšší úrovni abstrakce běží rychleji, rychlejší odladění chyb v návrhu. abstraktnější model nezachycuje detaily, některé typy chyb nelze na vyšších úrovních abstrakce ani detekovat

9 Behaviorální úroveň Příklad: popis obvodu pro sečtení čtyř čísel: e = a + b + c + d Je to jeden řádek kódu. popis chováním, algoritmus v programovacím jayzce, programujeme př. dělička implementována operátorem dělení jeden řádek kódu = i tisíce hradel obvykle nepracujeme s hodinami, neužíváme stavové automaty, volně nakládáme s pamětí. lze odladit správnou funkci algoritmů obvykle C++, Matlab, SystemVerilog nebo VHDL logické úrovně modelovány jako true/false/1/0, časté použití složitých datových typů

10 RTL úroveň, příklad 4 bity a b c d a_in b_in c_in d_in 5 bitu a_b c_d 6 bitu e_in 6 bitu e clk res a : SIGNAL unsinged (3 DOWNTO 0);... add : PROCESS (clk, res) BEGIN IF (res= 1 ) THEN a_in <= 0; b_in <= 0; c_in <= 0; d_in <= 0; a_b <= 0; c_d <= 0; ELSIF (rising_edge(clk)) THEN a_in <= a; b_in <= b; c_in <= c; d_in <= d; a_b <= a+b; c_d <= c+d; e <= a_b+c_d; END IF; END PROCESS add; Jedno sčítání čtyř čísel ted zaplní celý slajd :-).

11 Register Transfer Level RTL úroveň sada registrů propojených pomocí kombinačních bloků modelujeme mikroarchitekturu navrhovaného systému simulace nerespektuje reálná zpoždění na jednotlivých prvcích logiky, ale velmi rychlá př. dělička implementována jako sekvenční obvod realizující dělení jeden řádek kódu = desítky-stovky hradel lze odladit implementaci mikroarchitektury systému; ověříme, zda je kód funkčně správně a obvod reaguje jak jsme si přáli, nejsme schopni ověřit korektnost interního časování (zpoždění na kombinačních prvcích, apod.). obvykle Verilog, SystemVerilog nebo VHDL logické úrovně modelovány jako 1,0; možnost použití složitějších typů

12 Hradlová úroveň Jednoduchý obvod, který realizuje y = x(0) OR x(1) OR x(2) OR x(3) zaplní hravě několik slajdů.

13 Hradlová úroveň netlist

14 Hradlová úroveň anotace zpoždění (SDF)

15 Hradlová úroveň back-annotated gate level simulation, timing simulation simulujeme finální podobu obvodu implementovaného ve zvolené technologii návrh je popsán ve formě schematu obvodu vyjádřeného ve zdrojovém kódu (netlist) a před simulací anotován informacemi o zpoždění na obvodových prvcích a spojích (back annotation). modelujeme reálná zpoždění na prvcích, detailní simulace př. dělička implementována jako sekvenční obvod realizující dělení několik řádků kódu = i jen jedno hradlo lze odladit detailní časování obvodu obvykle Verilog nebo VHDL

16 Tranzistorová úroveň

17 transistor level Tranzistorová úroveň schéma obvodu sestavené z elementárních obvodových prvků, tranzistorů (realizovaných příslušnými modely) a zdrojů simulátor pracuje s obvodovými veličinami (proud a napětí), řeší soustavy diferenciálních rovnic vyšší přesnost simulace, ale také významné zpomalení jejího běhu jsou potřeba analogové simulátory, obvykle SPICE a odvozené lze odladit např. chyby v rozhraních mezi analogovými a číslicovými bloky v systému a chování za číslicovou abstrakcí" logická nula/jednička celá škála analogových hodnot

18 Fyzická úroveň

19 Typická podoba návrhu tb_top clk_gen clk stop_clk reset_gen res vstupy DUT výstupy stimuli_gen = OK/FAIL DUT model

20 Typická podoba návrhu tb_top testbench top strukturní popis, integruje všechny bloky clk_gen behaviorální popis, generátor hodin reset_gen behaviorální popis, generátor resetu stimuli_gen behaviorální popis, generátor stimulů pro návrh, často generuje náhodné stimuly DUT Design Under Test verifikovaný návrh, na RTL/hradlové/tranzistorové úrovni DUT model model návrhu na behaviorální úrovni, prediktor, předvídá reakce DUT na stimuly komparátor srovnává reakce DUT a modelu

21 Jazyky HDL Hardware Description Language Jak si hrát doma Xilinx ISE WebPack (syntéza, rozmístění a propojení... a simulátor) ModelSim PE Student Edition vyplňování formulářů po pravdě :-)

22 Jazyk VHDL VHSIC Hardware Description Language (Very High Speed Integrated Circuit) U.S. Deparment of Defense: jazyk pro dokumentaci chování integrovaných obvodů alternativa k tlustým příručkám :-) std. IEEE 1076, první použitelný je IEEE základ je jazyk ADA, striktní typová kontrola později syntéza z RTL fa. Synopsys velmi košatý jazyk demonstrujeme na příkladech

23 Hello world! První výtvor entita a architektura, 1:N jméno souboru=jméno entity architektury:rtl, struct, behav ASSERT-REPORT- SEVERITY: NOTE, ERROR, WARNING, FAILURE

24 Odmocnina: technika líného muže PROCESS základní blok, WAIT CONSTANT/VARIABLE proměnné užitečné typy: natural, integer, boolean, real, time FOR LOOP END LOOP EXIT, NEXT, IF END IF atribut IMAGE

25 Odmocnina: technika bisekce WHILE LOOP END LOOP FPGA prakticky, kapitola 6 další techniky, ruční výpočet a VHDL kód reálného obvodu :-)

26 Generování průběhů blok s výstupem std_logic typ logický signál WAIT FOR nesyntetizovatelné

27 Sekvenční a paralelní prostředí

28 Sekvenční a paralelní prostředí paralelní prostředí BEGIN END ARCHITECTURE paralelně spouštěné činnosti hardware je z principu paralelní paralelismus je ovšem simulovaný sekvenční prostředí BEGIN END PROCESS sekvenční běh jako v Javě, C++, atd. delta-čas nekonečně rychlé vykonání citlivostní seznam sekvenční prostředí je vložené do paralelního prostředí sekvenční popis PROCESS se spouští, bud vždy, nebo podle citlivostního seznamu

29 Dekodér pro sedmisegm. displej první syntetizovatelný kód proces s citlivostním seznamem CASE WHEN WHEN OTHERS

30 Chování procesu VHDL kód 1 log: PROCESS (a,b,c) 2 BEGIN 3 d<= a AND b; 4 y<= d OR c; 5 END PROCESS log; b a c a1 a2 b g5 andor1d1 zn y

31 Chování procesu VHDL kód 1 log: PROCESS (a t,b t,c t ) 2 BEGIN 3 d t+1 <= a t AND b t ; 4 y t+1 <= d t OR c t ; 5 END PROCESS log; b a c a1 a2 b g5 andor1d1 zn y

32 Chování procesu VHDL kód 1 log: PROCESS (a t,b t,c t,d t ) 2 BEGIN 3 d t+1 <= a t AND b t ; 4 y t+1 <= d t OR c t ; 5 END PROCESS log; b a c a1 a2 b g5 andor1d1 zn y

33 Chování procesu Proměnná vs signál? log: PROCESS (a,b,c) VARIABLE d: std_logic; BEGIN d := a AND b; y <= d OR c; END PROCESS log; b a c a1 a2 b g5 andor1d1 zn y

34 Událostmi řízená simulace event-driven simulation rychlá, simulátor počítá jen to, co se mění jádro simulátoru je tzv. fronta událostí událost = (uzel, čas kdy se má měnit, hodnota na kterou se má měnit)

35 Událostmi řízená simulace zjednodušený simulační algoritmus 1 elaborace návrhu: kompletace hierarchie, expanze generických konstrukcí, kontrola 2 start simulace: uzlům v obvodu přiřazeny a dopočteny počáteční stavy, naplánovány události 3 t c = t n 4 Každý aktivní signál v modelu je aktualizován; každý proces, který má ve svém citlivostním seznamu signál na kterém se vyskytla událost, je vykonán. Vzniknou další události a jsou vloženy do fronty událostí. 5 Čas příštího simulačního cyklu t n se nastaví na nejbližší z TIME HIGH kdy je další budič ve frontě událostí je aktivní čas ve kterém se probudí nějaký proces v návrhu (uspaný např. pomocí příkazu WAIT). Pokud t n = t c, pak je další simulační cyklus tzv. delta cyklus. 6 Simulátor pokračuje krokem 4.

36 Implikace pro praxi Doba běhu simulátoru roste s velikostí návrhu, s počtem hodinových cyklů, které synchronní číslicový obvod zpracovává a s počtem událostí, které jsou modelovány. Simulace se zpomaluje směrem k nižším úrovním abstrakce, kde je třeba modelovat více prvků detailněji. Simulace je ukončena, když je fronta událostí prázdná. Simulaci lze ukončit například pomocí příkazu jazyka VHDL ASSERT (false) REPORT konec simulace SEVERITY FAILURE; Snažší je přestat generovat hodiny pro obvod a přestat stimulovat jeho vstupy. Události lze ukládat a zkoumat zpětně (pomocí wave file).

37 Několik nudných poznámek komentáře zapisujeme za zápisy čísel: 112, 11e5 v jiných číselných soustavách: 2#1010#, 2#1000_0010#, 16#97#, 16#2A#E4 řetězec "mrkev", znak c

38 Dotazy?

39 Kombinační obvody změny na vstupu se prošíří na výstup jen se zpožděním logických členů žádný vnitřní stav obvodu

40 Invertor 1 LIBRARY IEEE; 2 USE IEEE.std_logic_1164.ALL; 3 4 ENTITY invertor IS 5 PORT ( 6 x : IN std_logic; 7 y : OUT std_logic 8 ); 9 END ENTITY invertor; ARCHITECTURE rtl OF invertor IS 12 BEGIN 13 y<=not(x); 14 END ARCHITECTURE rtl; Rozhraní bloku x INVERTOR y

41 Invertor 1 LIBRARY IEEE; 2 USE IEEE.std_logic_1164.ALL; 3 4 ENTITY invertor IS 5 PORT ( 6 x : IN std_logic; 7 y : OUT std_logic 8 ); 9 END ENTITY invertor; ARCHITECTURE rtl OF invertor IS 12 BEGIN 13 y<=not(x); 14 END ARCHITECTURE rtl; Implementace bloku x INVERTOR Architektury: rtl, behav, struct, gate y

42 Invertor 1 LIBRARY IEEE; 2 USE IEEE.std_logic_1164.ALL; 3 4 ENTITY invertor IS 5 PORT ( 6 x : IN std_logic; 7 y : OUT std_logic 8 ); 9 END ENTITY invertor; ARCHITECTURE rtl OF invertor IS 12 BEGIN 13 y<=not(x); 14 END ARCHITECTURE rtl; Simulace logických úrovní extrémy: dvoustavová logika vs. analogové kontinuum 9-ti stavová logika 10XHLUZW- aproximace reálného analogového světa std_logic std_logic_vector

43 Příklad AND v 9 stavové logice x y z x/y

44 Příklad AND v 9 stavové logice x/y U X 0 1 Z W L H U U U 0 U U U 0 U U X U X 0 X X X 0 X X U X 0 1 X X 0 1 X Z U X 0 X X X 0 X X W U X 0 X X X 0 X X L H U X 0 1 X X 0 1 X U X 0 X X X 0 X X

45 std_logic Rezoluční funkce Simulace zkratu jeden signál buzený z více míst modelování reálného chování funkce v knihovně definuje výsledek praktické pro 3-stavové sběrnice, atd. více procesů paralelně!

46 Parametrizace bloků a opětovné použití Moorův zákon návrhy obvodů se stále víc a víc komplikují ačkoliv velikost návrhu roste exponenciálně, čas na návrh se spíše zkracuje a tak je třeba zvyšovat produktivitu práce vyšší produktivity se dá dosáhnout pomocí opětovného použití částí návrhu příklad mohou být čítač/časovač: šířka čítače, jak dlouho má běžet pamět ové bloky (ROM, RAM, registrová pole) velikost paměti, obsah pro ROM komunikační bloky (SPI, I2C) adresa slav standardizace rozhraní standardizace formátů podpora pro opětovné použití v HDL jazycích

47 AND konfigurace bloků 1 LIBRARY IEEE; 2 USE IEEE.std_logic_1164.ALL; 3 ENTITY and_gate IS 4 GENERIC ( 5 n : natural := 3 6 ); 7 PORT ( 8 x : IN std_logic_vector(n 1 DOWNTO 0); 9 y : OUT std_logic 10 ); 11 END ENTITY and_gate; 12 ARCHITECTURE rtl OF and_gate IS 13 BEGIN 14 gate_output : PROCESS (x) 15 VARIABLE cnt : natural; 16 BEGIN 17 y <= 1 ; 18 FOR cnt IN 0 TO n 1 LOOP 19 IF x(cnt)/= 1 THEN 20 y <= 0 ; 21 END IF; 22 END LOOP; 23 END PROCESS gate_output; 24 END ARCHITECTURE rtl; Rozhraní bloku n x(0) AND x(1) x(n 1) y

48 AND konfigurace bloků 1 LIBRARY IEEE; 2 USE IEEE.std_logic_1164.ALL; 3 ENTITY and_gate IS 4 GENERIC ( 5 n : natural := 3 6 ); 7 PORT ( 8 x : IN std_logic_vector(n 1 DOWNTO 0); 9 y : OUT std_logic 10 ); 11 END ENTITY and_gate; 12 ARCHITECTURE rtl OF and_gate IS 13 BEGIN 14 gate_output : PROCESS (x) 15 VARIABLE cnt : natural; 16 BEGIN 17 y <= 1 ; 18 FOR cnt IN 0 TO n 1 LOOP 19 IF x(cnt)/= 1 THEN 20 y <= 0 ; 21 END IF; 22 END LOOP; 23 END PROCESS gate_output; 24 END ARCHITECTURE rtl; Implementace bloku n x(0) AND x(1) x(n 1) y

49 AND konfigurace bloků 1 LIBRARY IEEE; 2 USE IEEE.std_logic_1164.ALL; 3 ENTITY and_gate IS 4 GENERIC ( 5 n : natural := 3 6 ); 7 PORT ( 8 x : IN std_logic_vector(n 1 DOWNTO 0); 9 y : OUT std_logic 10 ); 11 END ENTITY and_gate; 12 ARCHITECTURE rtl OF and_gate IS 13 BEGIN 14 gate_output : PROCESS (x) 15 VARIABLE cnt : natural; 16 BEGIN 17 y <= 1 ; 18 FOR cnt IN 0 TO n 1 LOOP 19 IF x(cnt)/= 1 THEN 20 y <= 0 ; 21 END IF; 22 END LOOP; 23 END PROCESS gate_output; 24 END ARCHITECTURE rtl; Sekvenční prostředí 1 sekvenční výpočet 2 delta-čas 3 nekonečně rychlé vykonání 4 citlivostní seznam

50 Strukturní popis Strukturní popis jednotlivé bloky potřebujeme propojit dohromady porty propojit na signály, nakonfigurovat generické parametry ruční kód nejvyšší úroveň bloku v procesu návrhu netlist

51 Invertor budeme ho potřebovat 1 LIBRARY IEEE; 2 USE IEEE.std_logic_1164.ALL; 3 4 ENTITY invertor IS 5 PORT ( 6 x : IN std_logic; 7 y : OUT std_logic 8 ); 9 END ENTITY invertor; ARCHITECTURE rtl OF invertor IS 12 BEGIN 13 y<=not(x); 14 END ARCHITECTURE rtl; Rozhraní bloku x INVERTOR y

52 Invertor budeme ho potřebovat 1 LIBRARY IEEE; 2 USE IEEE.std_logic_1164.ALL; 3 4 ENTITY invertor IS 5 PORT ( 6 x : IN std_logic; 7 y : OUT std_logic 8 ); 9 END ENTITY invertor; ARCHITECTURE rtl OF invertor IS 12 BEGIN 13 y<=not(x); 14 END ARCHITECTURE rtl; Implementace bloku x INVERTOR Architektury: rtl, behav, struct, gate y

53 NOR instance bloků 1 LIBRARY IEEE; 2 USE IEEE.std_logic_1164.ALL; 3 4 ENTITY nor_gate IS 5 PORT ( 6 a : IN std_logic; 7 b : IN std_logic; 8 y : OUT std_logic 9 ); END ENTITY nor_gate; ARCHITECTURE rtl OF nor_gate IS 14 SIGNAL or_result : std_logic; COMPONENT invertor IS 17 PORT ( 18 x : IN std_logic; 19 y : OUT std_logic 20 ); 21 END COMPONENT invertor; BEGIN 24 or_result <= a OR b; inv_i : invertor 27 PORT MAP ( 28 x => or_result, 29 y => y 30 ); END ARCHITECTURE rtl; Rozhraní bloku nor_gate a b or_result INVERTOR x y y

54 NOR instance bloků 1 LIBRARY IEEE; 2 USE IEEE.std_logic_1164.ALL; 3 4 ENTITY nor_gate IS 5 PORT ( 6 a : IN std_logic; 7 b : IN std_logic; 8 y : OUT std_logic 9 ); END ENTITY nor_gate; ARCHITECTURE rtl OF nor_gate IS 14 SIGNAL or_result : std_logic; COMPONENT invertor IS 17 PORT ( 18 x : IN std_logic; 19 y : OUT std_logic 20 ); 21 END COMPONENT invertor; BEGIN 24 or_result <= a OR b; inv_i : invertor 27 PORT MAP ( 28 x => or_result, 29 y => y 30 ); END ARCHITECTURE rtl; Komponenty nor_gate a b or_result INVERTOR x y y

55 NOR instance bloků 1 LIBRARY IEEE; 2 USE IEEE.std_logic_1164.ALL; 3 4 ENTITY nor_gate IS 5 PORT ( 6 a : IN std_logic; 7 b : IN std_logic; 8 y : OUT std_logic 9 ); END ENTITY nor_gate; ARCHITECTURE rtl OF nor_gate IS 14 SIGNAL or_result : std_logic; COMPONENT invertor IS 17 PORT ( 18 x : IN std_logic; 19 y : OUT std_logic 20 ); 21 END COMPONENT invertor; BEGIN 24 or_result <= a OR b; inv_i : invertor 27 PORT MAP ( 28 x => or_result, 29 y => y 30 ); END ARCHITECTURE rtl; Implementace bloku nor_gate a INVERTOR b or_result x y y

56 NOR instance bloků 1 LIBRARY IEEE; 2 USE IEEE.std_logic_1164.ALL; 3 4 ENTITY nor_gate IS 5 PORT ( 6 a : IN std_logic; 7 b : IN std_logic; 8 y : OUT std_logic 9 ); END ENTITY nor_gate; ARCHITECTURE rtl OF nor_gate IS 14 SIGNAL or_result : std_logic; COMPONENT invertor IS 17 PORT ( 18 x : IN std_logic; 19 y : OUT std_logic 20 ); 21 END COMPONENT invertor; BEGIN 24 or_result <= a OR b; inv_i : invertor 27 PORT MAP ( 28 x => or_result, 29 y => y 30 ); END ARCHITECTURE rtl; Paralelní prostředí a b simulace HW paralelismus! event-driven sim. nor_gate INVERTOR or_result x y y

57 Dotazy?

58 Návrh sčítačky v hradlech a b 1 2 Σ s a a cy b b cy_in s a s 1 2 Σ 1 cy b 2 Σ cy s cy_out

59 Syntetizovatelné aritmetické obvody HDL jazyky jsou tu kvůli produktivitě booleovskou algebru budete v životě potřebovat v řadě situací, ale... v HDL jazyce se ale pro aritmetické operátory nepoužívá př.: sčítačku vyrobíte pomocí operátoru + produktivita práce jeden řádek kódu řádově desítky hradel syntetizovatelné jsou aritmetické operátory +, -, * syntetizovatelné jsou relační operátory operátory <, >, = a jejich kombinace... a ještě pár dalších co nás ted tolik nezajímá

60 Datové typy a sčítání Základní kouzlo: LIBRARY IEEE; USE IEEE.numeric_std.ALL; SIGNAL a : unsigned (7 DOWNTO 0); SIGNAL b : unsigned (7 DOWNTO 0); SIGNAL c : unsigned (8 DOWNTO 0); Datové typy signed, unsigned sběrnice o daném počtu bitů pozor na rozšíření výsledku c <= 0 &a + 0 &b;

61 Násobení SIGNAL a: unsigned (7 DOWNTO 0); SIGNAL b: unsigned (7 DOWNTO 0); SIGNAL c: unsigned (15 DOWNTO 0); Násobení paralelní násobička podle typu vstupů se použije správná struktura více v knize FPGA prakticky, kapitola 6 c <= a * b;

62 Složitější obvod minimum a maximum komparace_cisel x>y min_sel x y 0 1 min_xy 1 0 max_xy

63 Dotazy?

64 Sekvenční obvody výstup obvodu závisí na vstupu a vnitřním stavu

65 P Jednoduchý registr res d D Q q clk

66 Čítač

67 ROM pamět

68 Dotazy?

69 Děkuji za pozornost!

70 Konverzní funkce v návrhu vše typu std_logic, std_logic_vector aritmetické operátory ale pracují s typy signed a unsigned jak to převést? SIGNAL a: std_logic_vector (7 DOWNTO 0); SIGNAL b: std_logic_vector (7 DOWNTO 0); SIGNAL c: std_logic_vector (7 DOWNTO 0); c <= std_logic_vector (unsigned(a) + unsigned(b));

71 Jednoduchý registr s write enable res q 0 D Q 1 q clk ce

72 Registr se sync. setem a resetem ares d 0 10, D Q q clk res set bit 1 bit 0

73 Posuvný registr konfigurovatelná šířka vnitřní registr o N bitech operace skládání vektoru

74 Stavový automat 1 LIBRARY IEEE; 2 USE IEEE.std_logic_1164.ALL; 3 4 ENTITY automat IS 5 PORT ( 6 clk : IN std_logic; 7 res : IN std_logic; 8 9 sc : OUT std_logic; 10 rdy : IN std_logic; we1 : OUT std_logic; 13 we2 : OUT std_logic 14 ); 15 END ENTITY automat; ARCHITECTURE rtl OF automat IS TYPE t_state IS (gen_sc, rdy_wait, we1_gen, we2_gen); 20 SIGNAL current_s : t_state; 21 SIGNAL next_s : t_state; BEGIN Příklad stavového automatu vlastní automat je realizován pomocí tří procesů registr na současný stav proces pro generování příštího stavu proces pro generování výstupů automatu

75 state_reg : PROCESS (clk, res) BEGIN IF res= 1 THEN current_s <= gen_sc; ELSIF clk EVENT AND clk= 1 THEN current_s <= next_s; END IF; END PROCESS state_reg; Stavový automat 2

76 next state next_state_gen : PROCESS (current_s, rdy_sc2) BEGIN CASE current_s IS WHEN gen_sc => next_s <= rdy_wait; WHEN rdy_wait => IF rdy_sc2= 1 THEN next_s <= we1_gen; ELSE next_s <= rdy_wait; END IF; WHEN we1_gen => next_s <= we2_gen; WHEN we2_gen => next_s <= gen_sc; WHEN OTHERS => next_s <= gen_sc; END CASE; END PROCESS next_state_gen; Stavový automat 3

77 1 output signals 2 outputs : PROCESS (current_s) 3 BEGIN 4 CASE current_s IS 5 WHEN gen_sc => 6 we1 <= 0 ; 7 we2 <= 0 ; 8 sc <= 1 ; 9 WHEN rdy_wait => 10 we1 <= 0 ; 11 we2 <= 0 ; 12 sc <= 0 ; 13 WHEN we1_gen => 14 we1 <= 1 ; 15 we2 <= 0 ; 16 sc <= 0 ; 17 WHEN we2_gen => 18 we1 <= 0 ; 19 we2 <= 1 ; 20 sc <= 0 ; 21 WHEN OTHERS => 22 we1 <= 0 ; 23 we2 <= 0 ; 24 sc <= 0 ; 25 END CASE; 26 END PROCESS outputs; END ARCHITECTURE rtl; Stavový automat 4

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

Koncept pokročilého návrhu ve VHDL. INP - cvičení 2 Koncept pokročilého návrhu ve VHDL INP - cvičení 2 architecture behv of Cnt is process (CLK,RST,CE) variable value: std_logic_vector(3 downto 0 if (RST = '1') then value := (others => '0' elsif (CLK'event

Více

Návrh FPGA systémů. Jazyk VHDL, principy simulace. Ing. Jakub Št astný, Ph.D. 1

Návrh FPGA systémů. Jazyk VHDL, principy simulace. Ing. Jakub Št astný, Ph.D. 1 Návrh FPGA systémů Jazyk VHDL, principy simulace Ing. Jakub Št astný, Ph.D. 1 1 stastnj1@seznam.cz FPGA laboratory under the Biosignal processing laboratory Department of Circuit Theory, FEE CTU Prague

Více

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

Příklady popisu základních obvodů ve VHDL Příklady popisu základních obvodů ve VHDL INP - cvičení 2 Michal Bidlo, 2008 bidlom@fit.vutbr.cz entity Circuit is port ( -- rozhraní obvodu ); end Circuit; Proces architecture Behavioral of Circuit is

Více

Návrh. číslicových obvodů

Návrh. číslicových obvodů Návrh číslicových obvodů SW Aritmetika HW Periférie CPU function AddSub(a,b,s); var c; a b k k a+b mpx c if (s==1) c=a+b; else c=a-b; a-b return c; End; PAMĚŤ s Princip: univerzální stroj Výhoda: univerzalita

Více

12. VHDL pro verifikaci - Testbench I

12. VHDL pro verifikaci - Testbench I Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti 12. VHDL pro verifikaci - Testbench I Praktika návrhu číslicových obvodů Dr.-Ing. Martin Novotný Katedra číslicového návrhu Fakulta informačních

Více

Úvod do jazyka VHDL. Jan Kořenek korenek@fit.vutbr.cz. Návrh číslicových systémů 2007-2008

Úvod do jazyka VHDL. Jan Kořenek korenek@fit.vutbr.cz. Návrh číslicových systémů 2007-2008 Úvod do jazyka VHDL Návrh číslicových systémů 2007-2008 Jan Kořenek korenek@fit.vutbr.cz Jak popsat číslicový obvod Slovně Navrhněte (číslicový) obvod, který spočte sumu všech členů dané posloupnosti slovní

Více

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. Klopné obvody jsou nejjednodušší sekvenční součástky Záleží na předcházejícím stavu Asynchronní klopné obvody reagují na změny vstupu okamžitě Synchronní

Více

Souhrn Apendixu A doporučení VHDL

Souhrn Apendixu A doporučení VHDL Fakulta elektrotechniky a informatiky Univerzita Pardubice Souhrn Apendixu A doporučení VHDL Práce ke zkoušce z předmětu Programovatelné logické obvody Jméno: Jiří Paar Datum: 17. 2. 2010 Poznámka k jazyku

Více

Číslicové obvody a jazyk VHDL

Číslicové obvody a jazyk VHDL Číslicové obvody a jazyk VHDL Návrh počítačových systémů 2007-2008 Jan Kořenek korenek@fit.vutbr.cz Proč HW realizace algoritmu Vyšší rychlost paralelní nebo zřetězené zpracování, přizpůsobení výpočetních

Více

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. Realizace kombinačních logických funkcí Realizace kombinační logické funkce = sestavení zapojení obvodu, který ze vstupních proměnných vytvoří výstupní proměnné

Více

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. Stavové automaty enkódování Proces, který rozhoduje kolik paměťových prvků bude využito v paměťové části. Binární enkódování je nejpoužívanější. j počet stavů

Více

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

Vzorový příklad. Postup v prostředí ISE. Zadání: x 1 x 0 y Rovnicí y = x 1. Přiřazení signálů: Vzorový příklad. Zadání: Na přípravku realizujte kombinační obvod představující funkci logického součinu dvou vstupů. Mající následující pravdivostní tabulku. x 1 x 0 y 0 0 0 0 1 0 1 0 0 1 1 1 Rovnicí

Více

7. Popis konečného automatu

7. Popis konečného automatu Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Praktika návrhu číslicových obvodů Dr.-Ing. Martin Novotný Katedra číslicového návrhu Fakulta informačních technologií ČVUT v Praze Miloš

Více

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. 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ý

Více

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

Simulace číslicových obvodů (MI-SIM) zimní semestr 2010/2011 Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Simulace číslicových obvodů (MI-SIM) zimní semestr 2010/2011 Jiří Douša, katedra číslicového návrhu (K18103), České vysoké učení technické

Více

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

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 Vzorový příklad. Zadání: Na přípravku realizujte kombinační obvod představující funkci logického součinu dvou vstupů. Mající následující pravdivostní tabulku. x 1 x 0 y 0 0 0 0 1 0 1 0 0 1 1 1 Rovnicí

Více

1. Seznamte se s výukovou platformou FITkit (http://merlin.fit.vutbr.cz/fitkit/).

1. Seznamte se s výukovou platformou FITkit (http://merlin.fit.vutbr.cz/fitkit/). Zadání: Fakulta informačních technologií VUT v Brně Ústav počítačových systémů Technika personálních počítačů, cvičení ITP FITkit Řízení 7mi-segmentového displeje Úloha č. 3. 1. Seznamte se s výukovou

Více

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

Simulace číslicových obvodů (MI-SIM) zimní semestr 2010/2011 Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Simulace číslicových obvodů (MI-SIM) zimní semestr 2010/2011 Jiří Douša, katedra číslicového návrhu (K18103), České vysoké učení technické

Více

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

Jazyk VHDL konstanty, signály a proměnné. Jazyk VHDL paralelní a sekvenční doména. Kurz A0B38FPGA Aplikace hradlových polí ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE Fakulta elektrotechnická Ing. Radek Sedláček, Ph.D., katedra měření K13138 Jazyk VHDL konstanty, signály a proměnné Jazyk VHDL paralelní a sekvenční doména Kurz A0B38FPGA

Více

Simulace číslicových obvodů: úvod Jakub Šťastný ASICentrum, s.r.o. Katedra teorie obvodů FEL ČVUT Praha

Simulace číslicových obvodů: úvod Jakub Šťastný ASICentrum, s.r.o. Katedra teorie obvodů FEL ČVUT Praha Tento článek je původním rukopisem textu publikovaného v časopise DPS Elektronika A-Z: J. Šťastný. Simulace číslicových obvodů: úvod, DPS Elektronika od A do Z, pp. 23-27, leden/únor 2015. Bez souhlasu

Více

9. Praktická verifikace

9. Praktická verifikace Fakulta informačních technologií MI-NFA, zimní semestr 2011/2012 Jan Schmidt 9. Praktická verifikace EVROPSKÝ SOCIÁLNÍ FOND PRAHA & EU: INVESTUJENE DO VAŠÍ BUDOUCNOSTI Pravidla, postupy Testovací prostředí

Více

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

Simulace číslicových obvodů (MI-SIM) zimní semestr 2010/2011 Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Simulace číslicových obvodů (MI-SIM) zimní semestr 2010/2011 Jiří Douša, katedra číslicového návrhu (K18103), České vysoké učení technické

Více

Cíle. Teoretický úvod

Cíle. Teoretický úvod 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

Více

Návrh ovládání zdroje ATX

Návrh ovládání zdroje ATX Návrh ovládání zdroje ATX Zapínání a vypínání PC zdroj ATX se zapíná spojením řídicího signálu \PS_ON se zemí zapnutí PC stiskem tlačítka POWER vypnutí PC (hardwarové) stiskem tlačítka POWER a jeho podržením

Více

Vývoj VHDL. Verilog HDL

Vývoj VHDL. Verilog HDL Popis systémů pomocí VHDL Vývoj VHDL HDL - Hardware Description Language VHDL - Very High Speed Integrated Circuits HDL Vývoj od roku 1983 v rámci projektu VHSIC 1987 - standard IEEE 1076-1987 1993 - revize

Více

SYSTÉMY NAČIPU MI-SOC

SYSTÉMY NAČIPU MI-SOC Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti SYSTÉMY NAČIPU MI-SOC doc. Ing. Hana Kubátová, CSc. Katedra číslicového návrhu Fakulta informačních technologii ČVUT v Praze Hana Kubátová

Více

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

Sčítačky Válcový posouvač. Demonstrační cvičení 6 Sčítačky Válcový posouvač INP Demonstrační cvičení 6 Poloviční sčítačka (Half Adder) A B S C 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1 A B HA S C S: A C: A 0 1 0 0 1 0 B 0 1 B S

Více

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.

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. VHDL-AMS Počátek jazyků HDL sahá do šedesátých let. V průběhu doby vznikla celá řada jazyků FAS (Anacad 1988), SpetreHDL (Cadence 94), MAST (Analogy 1986) a jiné. V současné době hrají největší roli jazyky

Více

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

Implementace čítačů v číslicových systémech 2 Jakub Šťastný ASICentrum, s.r.o. FPGA Laboratoř, Katedra teorie obvodů FEL ČVUT Praha Tento článek je původním rukopisem textu publikovaného v časopise DPS Elektronika A-Z: J. Šťastný. Implementace čítačů v číslicových systémech 2, DPS Plošné spoje od A do Z, no 4, pp. 11-14, 2011. Bez

Více

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

Simulace číslicových obvodů (MI-SIM) zimní semestr 2010/2011 Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Simulace číslicových obvodů (MI-SIM) zimní semestr 2010/2011 Jiří Douša, katedra číslicového návrhu (K18103), České vysoké učení technické

Více

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

Násobičky, Boothovo překódování. Demonstrační cvičení 7 Násobičky, Boothovo překódování INP Demonstrační cvičení 7 Obsah Princip násobení Sekvenční a kombinační násobička Kombinační násobičky ve VHDL Násobení se znaménkem (FX) Boothovo překódování, VHDL Násobení

Více

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

Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti MI-SOC: 2 METODY VERIFIKACE SYSTÉMŮ NA ČIPU II doc. Ing. Hana Kubátová, CSc. Katedra číslicového návrhu Fakulta informačních technologii

Více

PROGRAMOVATELNÉ LOGICKÉ OBVODY

PROGRAMOVATELNÉ LOGICKÉ OBVODY PROGRAMOVATELNÉ LOGICKÉ OBVODY (PROGRAMMABLE LOGIC DEVICE PLD) Programovatelné logické obvody jsou číslicové obvody, jejichž logická funkce může být programována uživatelem. Výhody: snížení počtu integrovaných

Více

Architektura počítačů Logické obvody

Architektura počítačů Logické obvody 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 Digitální

Více

PROGRAMOVATELNÁ LOGICKÁ POLE A JAZYKY HDL

PROGRAMOVATELNÁ LOGICKÁ POLE A JAZYKY HDL PROGRAMOVATELNÁ LOGICKÁ POLE A JAZYKY HDL Doc. Ing. Jaromír Kolouch, CSc. Ústav radioelektroniky FEKT VUT v Brně, Purkyňova 118, kolouch@feec.vutbr.cz Přednáška má přinést informaci o současném stavu v

Více

Architektura počítačů Logické obvody

Architektura počítačů Logické obvody 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í

Více

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. 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

Více

2. Entity, Architecture, Process

2. Entity, Architecture, Process Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Praktika návrhu číslicových obvodů Dr.-Ing. Martin Novotný Katedra číslicového návrhu Fakulta informačních technologií ČVUT v Praze Miloš

Více

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

Pokročilé využití jazyka VHDL. Pavel Lafata Pokročilé využití jazyka VHDL Pavel Lafata Autor: Pavel Lafata Název díla: Pokročilé využití jazyka VHDL Zpracoval(a): České vysoké učení technické v Praze Fakulta elektrotechnická Kontaktní adresa: Technická

Více

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

Číselné vyjádření hodnoty. Kolik váží hrouda zlata? Čísla a logika Číselné vyjádření hodnoty Au Kolik váží hrouda zlata? Dekadické vážení Když přidám osmé závaží g, váha se převáží => závaží zase odeberu a začnu přidávat závaží x menší 7 závaží g 2 závaží

Více

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

Simulace číslicových obvodů (MI-SIM) zimní semestr 2010/2011 Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Simulace číslicových obvodů (MI-SIM) zimní semestr 2010/2011 Jiří Douša, katedra číslicového návrhu (K18103), České vysoké učení technické

Více

Pohled do nitra mikroprocesoru Josef Horálek

Pohled do nitra mikroprocesoru Josef Horálek Pohled do nitra mikroprocesoru Josef Horálek Z čeho vycházíme = Vycházíme z Von Neumannovy architektury = Celý počítač se tak skládá z pěti koncepčních bloků: = Operační paměť = Programový řadič = Aritmeticko-logická

Více

Digitální návrh. Postup návrhu digitálních IO. Co to jsou HDL jazyky? Příklad Verilog kódu pro D klopný obvod

Digitální návrh. Postup návrhu digitálních IO. Co to jsou HDL jazyky? Příklad Verilog kódu pro D klopný obvod Jak navrhnout systém se 700 mil. Tranzistorů? Digitální Časová analýza Návrh topologie Dělení u na subsystémy Návrh je rozdělen na jednotlivé bloky a ty na další sub-bloky Použití již existujících ů Rychlejší

Více

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. Základní pojmy digitální techniky Abstrakce v digitální technice: signály se pokládají za skokově proměnné, v nejjednodušším případě dvě možné hodnoty logická

Více

1 Stručný popis jazyku VHDL

1 Stručný popis jazyku VHDL 1 Stručný popis jazyku VHDL Jazyk VHDL (Very High Speed Integrated Circuits Hardware Description Language) je spolu s jazykem Verilog HDL jedním z nejpoužívanějším jazykům pro popis hardwarových struktur

Více

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

Simulace číslicových obvodů (MI-SIM) zimní semestr 2010/2011 Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Simulace číslicových obvodů (MI-SIM) zimní semestr 2010/2011 Jiří Douša, katedra číslicového návrhu (K18103), České vysoké učení technické

Více

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

Integrované obvody. Obvody malé, střední a velké integrace Programovatelné obvody Integrované obvody Obvody malé, střední a velké integrace Programovatelné obvody Integrovaný obvod zkratka: IO anglický termín: integrated circuit = IC Co to je? elekrotechnická součástka na malé ploše

Více

Návrh obvodů založených na programovatelných hradlových polích

Návrh obvodů založených na programovatelných hradlových polích 317 Návrh obvodů založených na programovatelných hradlových polích V předchozím článku (Automatizace č. 1/2008, str. 9) jsme se zabývali koncepcí a vlastnostmi programovatelných hradlových polí, jejich

Více

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

Struktura a architektura počítačů (BI-SAP) 3 Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Struktura a architektura počítačů (BI-SAP) 3 doc. Ing. Hana Kubátová, CSc. Katedra číslicového návrhu Fakulta informačních technologii

Více

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 Základní logická hradla, Booleova algebra, De Morganovy zákony Student Předmět Ústav Úloha č. DIO - Digitální obvody Ústav mikroelektroniky Základní logická hradla, ooleova algebra, De Morganovy zákony Student Cíle Porozumění základním logickým hradlům NND, NOR a dalším,

Více

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

OVLÁDACÍ OBVODY ELEKTRICKÝCH ZAŘÍZENÍ OVLÁDACÍ OBVODY ELEKTRICKÝCH ZAŘÍZENÍ Odlišnosti silových a ovládacích obvodů Logické funkce ovládacích obvodů Přístrojová realizace logických funkcí Programátory pro řízení procesů Akční členy ovládacích

Více

Organizace předmětu, podmínky pro získání klasifikovaného zápočtu

Organizace předmětu, podmínky pro získání klasifikovaného zápočtu ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE Fakulta elektrotechnická Ing. Radek Sedláček, Ph.D., katedra měření K13138 Organizace předmětu, podmínky pro získání klasifikovaného zápočtu Kurz A0B38FPGA Aplikace

Více

Sekvenční logické obvody

Sekvenční logické obvody Sekvenční logické obvody Sekvenční logické obvody - úvod Sledujme chování jednoduchého logického obvodu se zpětnou vazbou Sekvenční obvody - paměťové členy, klopné obvody flip-flop Asynchronní klopné obvody

Více

Simulace číslicových obvodů na hradlové úrovni: model návrhu Jakub Šťastný ASICentrum, s.r.o. Katedra teorie obvodů FEL ČVUT Praha

Simulace číslicových obvodů na hradlové úrovni: model návrhu Jakub Šťastný ASICentrum, s.r.o. Katedra teorie obvodů FEL ČVUT Praha Tento článek je původním rukopisem textu publikovaného v časopise DPS Elektronika A-Z: J. Šťastný. Simulace číslicových obvodů na hradlové úrovni: model návrhu, DPS Elektronika od A do Z, pp. 6-12, leden/únor

Více

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

Kódy pro odstranění redundance, pro zabezpečení proti chybám. Demonstrační cvičení 5 INP Kódy pro odstranění redundance, pro zabezpečení proti chybám Demonstrační cvičení 5 INP Princip kódování, pojmy Tady potřebujeme informaci zabezpečit, utajit apod. zpráva 000 111 000 0 1 0... kodér dekodér

Více

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

Příklad č. 1 Přepis informace ze vstupů (SW0 až SW3) na ledky (LEDG0 až LEDG3) VHAD - Návod k VHDL hadovi Obsah Příklad č. 1 Přepis informace ze vstupů (SW0 až SW3) na ledky (LEDG0 až LEDG3)... 1 Příklad č. 2 Blikající LED... 3 Příklad č. 3 Časovač 1s... 4 Příklad č. 4 Had 8 x LED

Více

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

Y36SAP Y36SAP-2. Logické obvody kombinační Formy popisu Příklad návrhu Sčítačka Kubátová Y36SAP-Logické obvody 1. Y36SAP 26.2.27 Y36SAP-2 Logické obvody kombinační Formy popisu Příklad návrhu Sčítačka 27-Kubátová Y36SAP-Logické obvody Logický obvod Vstupy a výstupy nabývají pouze hodnot nebo Kombinační obvod popsán

Více

3. Sekvenční logické obvody

3. Sekvenční logické obvody 3. Sekvenční logické obvody 3. Sekvenční logické obvody - úvod Sledujme chování jednoduchého logického obvodu se zpětnou vazbou 3. Sekvenční logické obvody příklad sekv.o. Příklad sledování polohy vozíku

Více

Struktura a architektura počítačů

Struktura a architektura počítačů Struktura a archtektura počítačů Logcké obvody - sekvenční Formy popsu, konečný automat Příklady návrhu České vysoké učení techncké Fakulta elektrotechncká Ver..2 J. Zděnek 24 Logcký sekvenční obvod Logcký

Více

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

Simulace číslicových obvodů (MI-SIM) zimní semestr 2010/2011 Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Simulace číslicových obvodů (MI-SIM) zimní semestr 2010/2011 Jiří Douša, katedra číslicového návrhu (K18103), České vysoké učení technické

Více

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

Struktura a architektura počítačů (BI-SAP) 4 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

Více

Úvod do problematiky obvodů FPGA pro integrovanou výuku VUT a VŠB-TUO

Úvod do problematiky obvodů FPGA pro integrovanou výuku VUT a VŠB-TUO FAKULTA ELEKTROTECHNIKY A KOMUNIKAČNÍCH TECHNOLOGIÍ VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ Úvod do problematiky obvodů FPGA pro integrovanou výuku VUT a VŠB-TUO Garant předmětu: Ing. Michal Kubíček, Ph.D. Autoři

Více

14. Složitější konstrukce

14. Složitější konstrukce Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Praktika návrhu číslicových obvodů Dr.-Ing. Martin Novotný Katedra číslicového návrhu Fakulta informačních technologií ČVUT v Praze Miloš

Více

Případová studie Řadič I2C rozhraní

Případová studie Řadič I2C rozhraní Případová studie Řadič I2C rozhraní ASICentrum, s.r.o. Ing. Jakub Šťastný, Ph.D. jakub.stastny@asicentrum.cz Page 1 Cíl přednášky ukázat, jak se dělá návrh číslicového bloku zákaznického integrovaného

Více

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

Simulace číslicových obvodů (MI-SIM) zimní semestr 2010/2011 Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Simulace číslicových obvodů (MI-SIM) zimní semestr 2010/2011 Jiří Douša, katedra číslicového návrhu (K18103), České vysoké učení technické

Více

Použití jazyka VHDL pro návrh číslicových obvodů

Použití jazyka VHDL pro návrh číslicových obvodů 440 A U T O M A T I Z A C E R O Č N Í K 5 1 Č Í S L O 7 Č E R V E N E C S R P E N 2 0 0 Použití jazyka VHDL pro návrh číslicových obvodů Předchozí díl volného pokračování seriálu seznámil čtenáře s kroky

Více

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

Jazyk VHDL zápis čísel, znaků a řetězců. Jazyk VHDL základní datové typy a operátory. Kurz A0B38FPGA Aplikace hradlových polí ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE Fakulta elektrotechnická Ing. Radek Sedláček, Ph.D., katedra měření K13138 Jazyk VHDL zápis čísel, znaků a řetězců Jazyk VHDL základní datové typy a operátory Kurz

Více

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

4. Elektronické logické členy. Elektronické obvody pro logické členy 4. Elektronické logické členy Kombinační a sekvenční logické funkce a logické členy Elektronické obvody pro logické členy Polovodičové paměti 1 Kombinační logické obvody Způsoby zápisu logických funkcí:

Více

5. Sekvenční logické obvody

5. Sekvenční logické obvody 5. Sekvenční logické obvody 3. Sekvenční logické obvody - úvod Sledujme chování jednoduchého logického obvodu se zpětnou vazbou 3. Sekvenční logické obvody - příklad asynchronního sekvenčního obvodu 3.

Více

SEKVENČNÍ LOGICKÉ OBVODY

SEKVENČNÍ LOGICKÉ OBVODY Sekvenční logický obvod je elektronický obvod složený z logických členů. Sekvenční obvod se skládá ze dvou částí kombinační a paměťové. Abychom mohli určit hodnotu výstupní proměnné, je potřeba u sekvenčních

Více

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

Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti MI-SOC: 7 ČASOVÁNÍ A SYNCHRONIZACE TECHNICKÉHO VYBAVENÍ doc. Ing. Hana Kubátová, CSc. Katedra číslicového návrhu Fakulta informačních

Více

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

Profilová část maturitní zkoušky 2014/2015 Střední průmyslová škola, Přerov, Havlíčkova 2 751 52 Přerov Profilová část maturitní zkoušky 2014/2015 TEMATICKÉ OKRUHY A HODNOTÍCÍ KRITÉRIA Studijní obor: 26-41-M/01 Elektrotechnika Zaměření: technika

Více

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

Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti MI-SOC: 9 SYSTÉMOVÝ NÁVRH, IP-CORES doc. Ing. Hana Kubátová, CSc. Katedra číslicového návrhu Fakulta informačních technologii ČVUT v Praze

Více

ZÁKLADY PROGRAMOVÁNÍ. Mgr. Vladislav BEDNÁŘ 2013 1.3 2/14

ZÁKLADY PROGRAMOVÁNÍ. Mgr. Vladislav BEDNÁŘ 2013 1.3 2/14 ZÁKLADY PROGRAMOVÁNÍ Mgr. Vladislav BEDNÁŘ 2013 1.3 2/14 Co je vhodné vědět, než si vybereme programovací jazyk a začneme programovat roboty. 1 / 14 0:40 1.3. Vliv hardware počítače na programování Vliv

Více

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

Profilová část maturitní zkoušky 2015/2016 Střední průmyslová škola, Přerov, Havlíčkova 2 751 52 Přerov Profilová část maturitní zkoušky 2015/2016 TEMATICKÉ OKRUHY A HODNOTÍCÍ KRITÉRIA Studijní obor: 26-41-M/01 Elektrotechnika Zaměření: technika

Více

LOGICKÉ OBVODY X36LOB

LOGICKÉ OBVODY X36LOB LOGICKÉ OBVODY X36LOB Doc. Ing. Hana Kubátová, CSc. Katedra počítačů FEL ČVUT v Praze 26.9.2008 Logické obvody - 1 - Úvod 1 Obsah a cíle předmětu Číslicový návrh (digital design) Číslicové obvody logické

Více

Moderní nástroje pro vývoj elektronických řídicích jednotek

Moderní nástroje pro vývoj elektronických řídicích jednotek Moderní nástroje pro vývoj elektronických řídicích jednotek Jiří Sehnal Humusoft spol. s r.o. sehnal@humusoft.com EVV 2008 Automobilová elektronika Brno, 17. - 18. 6. 2008 Jiří Sehnal, Humusoft spol. s

Více

1 z 16 11.5.2009 11:33 Test: "CIT_04_SLO_30z50" Otázka č. 1 U Mooreova automatu závisí okamžitý výstup Odpověď A: na okamžitém stavu pamětí Odpověď B: na minulém stavu pamětí Odpověď C: na okamžitém stavu

Více

OPERAČNÍ PROGRAM PRAHA ADAPTABILITA & EU:

OPERAČNÍ PROGRAM PRAHA ADAPTABILITA & EU: ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE Fakulta elektrotechnická Ing. Radek Sedláček, Ph.D., katedra měření K13138 Nástroje a metody pro simulaci, tvorba TestBench souborů Speciální interní struktury FPGA

Více

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č

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č Y36SAP 27 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č 27-Kubátová Y36SAP-Logické obvody typické Často používané funkce Majorita:

Více

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

... sekvenční výstupy. Obr. 1: Obecné schéma stavového automatu Předmět Ústav Úloha č. 10 BDIO - Digitální obvody Ústav mikroelektroniky Komplexní příklad - návrh řídicí logiky pro jednoduchý nápojový automat, kombinační + sekvenční logika (stavové automaty) Student

Více

Profilová část maturitní zkoušky 2013/2014

Profilová část maturitní zkoušky 2013/2014 Střední průmyslová škola, Přerov, Havlíčkova 2 751 52 Přerov Profilová část maturitní zkoušky 2013/2014 TEMATICKÉ OKRUHY A HODNOTÍCÍ KRITÉRIA Studijní obor: 78-42-M/01 Technické lyceum Předmět: TECHNIKA

Více

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

Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti MI-SOC: 11 METODY VERIFIKACE SYSTÉMŮ NA ČIPU Hana Kubátov vá doc. Ing. Hana Kubátová, CSc. Katedra číslicového návrhu Fakulta 1 informačních

Více

LabView jako programovací jazyk II

LabView jako programovací jazyk II LabView jako programovací jazyk II - Popis jednotlivých funkcí palety Function II.část - Funkce Numeric, Array, Cluster Ing. Martin Bušek, Ph.D. Práce s daty typu NUMERIC Numerické funkce obsahuje funkce

Více

Semestrální práce z předmětu Speciální číslicové systémy X31SCS

Semestrální práce z předmětu Speciální číslicové systémy X31SCS Semestrální práce z předmětu Speciální číslicové systémy X31SCS Katedra obvodů DSP16411 ZPRACOVAL: Roman Holubec Školní rok: 2006/2007 Úvod DSP16411 patří do rodiny DSP16411 rozšiřuje DSP16410 o vyšší

Více

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

Implementace čítačů v číslicových systémech Jakub Šťastný 1 Úvod Implementace čítačů v číslicových systémech Jakub Šťastný Čítač je fundamentálním obvodovým blokem nezbytným pro návrh většiny číslicových systémů. Blok čítače je v číslicových obvodech používán

Více

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

Logické funkce a obvody, zobrazení výstupů Logické funkce a obvody, zobrazení výstupů Digitální obvody (na rozdíl od analogových) využívají jen dvě napěťové úrovně, vyjádřené stavy logické nuly a logické jedničky. Je na nich založeno hodně elektronických

Více

Logické obvody - sekvenční Formy popisu, konečný automat Příklady návrhu

Logické obvody - sekvenční Formy popisu, konečný automat Příklady návrhu MIKROPROCEORY PRO VÝKONOVÉ YTÉMY MIKROPROCEORY PRO VÝKONOVÉ YTÉMY Logcké obvody - sekvenční Formy popsu, konečný automat Příklady návrhu České vysoké učení techncké Fakulta elektrotechncká AB4MI Mkroprocesory

Více

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

Struktura a architektura počítačů (BI-SAP) 10 Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Struktura a architektura počítačů (BI-SAP) 10 doc. Ing. Hana Kubátová, CSc. Katedra číslicového návrhu Fakulta informačních technologii

Více

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

Simulace číslicových obvodů (MI-SIM) zimní semestr 2010/2011 Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Simulace číslicových obvodů (MI-SIM) zimní semestr 2010/2011 Jiří Douša, katedra číslicového návrhu (K18103), České vysoké učení technické

Více

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

Logické obvody 10. Neúplné čítače Asynchronní čítače Hazardy v kombinačních obvodech Metastabilita Logické obvody - 10 hazardy 1 Logické obvody 10 Neúplné čítače Asynchronní čítače Hazardy v kombinačních obvodech Metastabilita 6.12.2007 Logické obvody - 10 hazardy 1 Neúplné čítače Návrh čítače M5 na tabuli v kódu binárním a Grayově

Více

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

3.7.5 Znaménkové operátory Násobící operátory Rùzné operátory Základní objekty Konstanty Sig OBSAH Úvod 11 Signály v èíslicových systémech 13 2.1 Dvojstavové signály... 14 2.2 Tøístavové signály... 16 2.3 Dynamické parametry èíslicových signálù... 16 Jazyk VHDL 19 3.1 Historie, souèasnost, budoucnost

Více

Procesor. Základní prvky procesoru Instrukční sada Metody zvýšení výkonu procesoru

Procesor. Základní prvky procesoru Instrukční sada Metody zvýšení výkonu procesoru Počítačové systémy Procesor Miroslav Flídr Počítačové systémy LS 2006-1/17- Západočeská univerzita v Plzni Víceúrovňová organizace počítače Digital logic level Microarchitecture level Processor Instruction

Více

Pascal. Katedra aplikované kybernetiky. Ing. Miroslav Vavroušek. Verze 7

Pascal. Katedra aplikované kybernetiky. Ing. Miroslav Vavroušek. Verze 7 Pascal Katedra aplikované kybernetiky Ing. Miroslav Vavroušek Verze 7 Proměnné Proměnná uchovává nějakou informaci potřebnou pro práci programu. Má ve svém oboru platnosti unikátní jméno. (Připadne, musí

Více

Logické obvody - sekvenční Formy popisu, konečný automat Příklady návrhu

Logické obvody - sekvenční Formy popisu, konečný automat Příklady návrhu MIKROPROCEORY PRO VÝKONOVÉ YTÉMY MIKROPROCEORY PRO VÝKONOVÉ YTÉMY Logcké obvody - sekvenční Formy popsu, konečný automat Příklady návrhu České vysoké učení techncké Fakulta elektrotechncká AB4MI Mkroprocesory

Více

Vývoj a testování elektronických řídicích jednotek pro automobily

Vývoj a testování elektronických řídicích jednotek pro automobily Vývoj a testování elektronických řídicích jednotek pro automobily Jiří Sehnal Humusoft spol. s r.o. sehnal@humusoft.com EVV 2011 Automobilová elektronika Praha, 7. 6. 2011 Jiří Sehnal, Humusoft spol. s

Více

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

Simulace číslicových obvodů (MI-SIM) zimní semestr 2010/2011 Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Simulace číslicových obvodů (MI-SIM) imní semestr 2/2 Jiří Douša, katedra číslicového návrhu (K83), České vysoké učení technické v Prae,

Více

Zpracování obrazu v FPGA. Leoš Maršálek ATEsystem s.r.o.

Zpracování obrazu v FPGA. Leoš Maršálek ATEsystem s.r.o. Zpracování obrazu v FPGA Leoš Maršálek ATEsystem s.r.o. Základní pojmy PROCESOROVÉ ČIPY Křemíkový čip zpracovávající obecné instrukce Různé architektury, pracují s různými paměti Výkon instrukcí je závislý

Více

r90>25=.nt>+>7z5n2k<1561/+;5n{.57u07k{16;5=.nt>+>7z5n2k<15n>29l.05,90>2/3k5n2k7,50{10;<o5>/>?ˆ581:+z6,561/+;

r90>25=.nt>+>7z5n2k<1561/+;5n{.57u07k{16;5=.nt>+>7z5n2k<15n>29l.05,90>2/3k5n2k7,50{10;<o5>/>?ˆ581:+z6,561/+; 33069 306074760630396 01234567896945606 2926922 736963 73 093769!"674 279023 36&'(' 7362639226667 36709216369331 47699439416643748 933 20643994341 7163699699966373 9963639932 67#4$6% 69 ()!'*6)* de9065@f7ge)'*#6h'6'6i'j6klf

Více