Souhrn Apendixu A doporučení VHDL

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

Download "Souhrn Apendixu A doporučení VHDL"

Transkript

1 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:

2 Poznámka k jazyku VHDL Jazyk VHDL byl původně vytvořen pro dokumentování a simulaci obvodů, spíš než pro popis syntézy obvodů. Proto je jeho syntaxe v některých ohledech trochu neobvyklá. Následující kapitoly obsahují pouze základní popis jazyka VHDL. Jak nepsat kód v jazyce VHDL Začínající uživatelé jazyka VHDL mají tendenci psát kód stejným způsobem jako pro program pro počítač, který obsahuje mnoho proměnných a cyklů. Následující kapitoly budou zaměřeny na základní popis syntaxe jazyka VHDL, kde budou na první pohled vidět rozdíly mezi jazykem VHDL a programem pro počítač. Jelikož je jazyk VHDL velmi složitý, jsou chyby v syntaxi, i pro zkušeného uživatele, celkem běžné. Je užitečné zkoumat již hotové obvody ve snaze jim porozumět a tím více pochopit samotný jazyk VHDL. Tvorba dokumentace v jazyce VHDL Jazyk VHDL může obsahovat dokumentaci prostřednictvím komentářů. Každý komentář začíná dvěma znaky '-'. Překladač jazyka VHDL následně všechen text, který začíná znaky '--', ignoruje. Příklad: -- ukázka komentáře v jazyce VHDL Datové objekty V jazyce VHDL jsou všechny informace reprezentovány jako datové objekty. Datové objekty se dělí na signály (signal), konstanty (constant) a proměnné (variable). Pro popis logických obvodů se používají datové objekty v podobě signálů, které představují logické signály v obvodu. Konstanty a proměnné jsou také někdy používány pro popis logických obvodů, ale pouze zřídka. Názvy datových objektů Pravidla pro specifikování názvů datových objektů jsou jednoduchá, lze použít všechny alfanumerické znaky. Existují také některé výjimky. Jako jméno nemůže být použito některé z klíčových slov, musí začínat písmenem, nemůže končit podtržítkem a nemůže mít v názvu dvě po sobě jdoucí podtržítka. Jako příklad správného názvu lze uvést příklad: x, x1, x_y a Byte. Ukázka nesprávného pojmenování datového objektu: 1x, _y, x y a entity. Poslední název nelze použít z toho důvodu, že se jedná o klíčové slovo jazyka VHDL. Je nutné poznamenat, že jazyk VHDL není case sensitive, tedy název x je totožný s názvem X a ENTITY je shodné s entity. Hodnoty a čísla datových objektů Jako datový objekt použijeme signál (pro reprezentaci jednoho logického signálu v obvodu), mnohonásobné signály a binární čísla (celá čísla). Hodnoty jednoho signálu se zapisují mezi dvojici apostrofů (př. '0' nebo '1'). Hodnoty vícenásobných signálů se zapisují mezi dvojici uvozovek "". Jako příklad lze uvést čtyř-bitový signál "1001" nebo osmi-bitový signál " ". Uvozovkami je tedy vyjádřeno binární číslo. Takové číslo je možné vyjádřit i

3 pomocí čtyřech signálů s hodnotami '1', '0', '0', '1', nebo také celím číslem (1001) 2 = (9) 10. Celé číslo lze zapsat také přímo bez použití uvozovek, např. 9 nebo 152. Stejnými způsoby se zapisují hodnoty pro konstanty i pro proměnné. Datový objekt SIGNAL Jak již bylo zmíněno, tento datový objekt představuje logické signály, nebo také vodiče (dráty), v obvodu. Existují tři možné umístění deklarace signálu, v deklaraci entity, v deklaraci architektury a v deklaraci balíčku. Deklarace signálu vypadá následovně: SIGNAL nazev_signalu : typ_signalu; typ_signalu představuje správnou hodnotu, kterou může signál v rámci VHDL kódu nabývat. V následujících podkapitolách bude popsáno 9 typů signálů: BIT, BIT_VECTOR, STD_LOGIC, STD_LOGIC_VECTOR, SIGNED, UNSIGNED, INTEGER, ENUMERATION a BOOLEAN. Typy BIT a BIT_VECTOR Tyto typy jsou předdefinovány ve standardech VHDL IEEE 1076 a IEEE 1164, proto není potřeba žádná knihovna pro použití těchto typů. Objekty typu BIT mohou nabývat hodnot '0' nebo '1' a objekt typu BIT_VECTOR je lineární pole objektů typu BIT. Příklad deklarace: SIGNAL x1 : BIT; SIGNAL C : BIT_VECTOR (1 TO 4); SIGNAL Byte : BIT_VECTOR (7 DOWNTO 0); Signály C a Byte představují dva způsoby definice mnohobitového datového objektu. Syntaxe nejnižší-index TO nejvyšší-index lze použít pro mnohabitové signály jako pole bitů, nejvýše významný bit je totožný s bitem nejvyšší-index a nejméně významný bit je totožný s bitem nejnižší-index. Syntaxe nejvyšší-index DOWNTO nejnižší-index se používá při deklaraci binárních čísel. V tomto případě je nejvíce významný bit totožný s bitem nejvyšší-index a nejméně významný bit s bitem nejnižší-index. Přiřadit hodnotu vícebitovému objektu lze dvěma způsoby. Přímé přeřazení C <= "1010" nebo přiřazení po jednotlivých bitech (signálech) C(1) = '1', C(2) = '0', C(3) = '1' a C(4) = '0'. Pro datový objekt Byte je přiřazení např. následující Byte <= " ", tedy jednotlivé signály mají tyto hodnoty: Byte(7) = '1', Byte(6) = '0',..., Byte(0) = '0'. Typy STD_LOGIC a STD_LOGIC_VECTOR Typ STD_LOGIC byl přidán do standardu VHDL IEEE Tento typ poskytuje větší flexibilitu než typ BIT. Pro použití tohoto typu je potřeba vložit knihovnu std_logic_1164 následujícím způsobem: LIBRARY ieee; USE ieee.std_logic_1164.all;

4 Tento postup zajistí přístup do balíčku std_logic_1164, který definuje typ STD_LOGIC. Tento typ může nabývat pouze těchto hodnot: 0, 1, Z,, L, H, U, X a W. Pouze první čtyři hodnoty lze použít v logických obvodech. Hodnota Z znamená vysokou impedanci, hodnota znamená nepoužito. Hodnota L je stejné vyjádření pro 0 a hodnota H pro 1, hodnota U znamená, že není inicializována, hodnota X je pro neznámou hodnotu a hodnota W je pro tzv. měkkou neznámou hodnotu. Typ STD_LOGIC_VECTOR představuje pole typu STD_LOGIC. Příklad deklarace: SIGNAL x1, x2, Cin, Cout, Sel : STD_LOGIC; SIGNAL C : STD_LOGIC_VECTOR(1 TO 4); SIGNAL X, Y, S : STD_LOGIC_VECTOR(3 DOWNTO 0); Typ STD_LOGIC je často používán pro logické výrazy. Typ STD_LOGIC_VECTOR aby mohl být použit jako binární číslo v aritmetických obvodech, je potřeba vložit další knihovnu: USE ieee.std_logic_signed.all; V tomto balíčku je specifikováno správné použití typu STD_LOGIC_VECTOR s aritmetickými operátory, jako je např. +. Takto překladač vygeneruje obvod pracující s čísly se znaménkem. Při použití balíčku std_logic_unsigned vygeneruje překladač obvod, který bude pracovat s čísly bez znaménka. Typy SIGNED a UNSIGNED Knihovny std_logic_signed a std_logic_unsigned používají další knihovnu std_logic_aritm, která definuje typy pro obvody využívající aritmetické operace, např. sčítání. Navíc definuje dva typy signálů, SIGNED a UNSIGNED. Tyto typy jsou identické s typem STD_LOGIC_VECTOR, protože představují pole typu STD_LOGIC. Účelem těchto typů je pouze zpřehlednění kódu, protože se jimi dává najevo, že se bude pracovat s čísly. Typ SIGNED se použije v případě obvodů, kde se pracuje s čísly se znaménkem (dvojkový doplněk) a typ UNSIGNED naopak v obvodech, kde se pracuje s čísly bez znaménka. Typ INTEGER Standard VHDL definuje typ INTEGER pro práci s aritmetickými operátory. Typ INTEGER reprezentuje binární číslo, při deklaraci lze určit kolik bitů bude ve výsledku signál mít, stejně jako pro typ STD_LOGIC_VECTOR. Pro určení velikosti typu INTEGER se používá klíčové slovo RANGE. Výchozí délka typu INTEGER je 32bitů. Standard VHDL také umožňuje určit velikost záporného a kladného čísla. Příklad deklarace: SIGNAL X : INTEGER RANGE 127 TO 127; Typ BOOLEAN Objekt typu BOOLEAN může nabývat pouze hodnoty TRUE nebo FALSE. Hodnota TRUE je stejná s 1 a FALSE s 0.

5 Typ ENUMERATION Tento typ může nabývat pouze určitých kladných čísel. Základní tvar typu ENUMERATION: TYPE nazev_typu_enumeration IS (nazev1 [, nazev2]); Typ ENUMERATION se nejvíce využívá při tvorbě stavových automatů, kde obsahuje aktuální nebo následující stav. Příklad deklarace: TYPE typ_stavu IS (stava, stavb, stavc); SIGNAL y : typ_stavu; Signál y může nyní nabývat pouze hodnot stava, stavb nebo stavc. Datový objekt CONSTANT Konstantní datový objekt CONSTANT představuje klasickou konstantu, tedy signál, který nemůže měnit svoji hodnotu. Základní tvar typu CONSTANT: CONSTANT nazev : typ := hodnota; Příklad použití: CONSTANT Zero : STD_LOGIC_VECTOR(3 DOWNTO 0) := "0000" Takto lze použít slovo Zero v kódu všude tam, kde bude potřeba konstanta "0000". Datový objekt VARIABLE Proměnná, neboli datový objekt VARIABLE, na rozdíl od signálu nutně nepředstavuje drát v obvodu. Datový objekt VARIABLE se používá např. pro uchování hodnoty ve výpočtech nebo jako indexová proměnná v cyklech. Typové konverze Jazyk VHDL je velice typově bezpečný, nelze tedy signál jednoho typu přiřadit signálu jiného typu, i když se jedná i podobné typy, např. typ BIT a STD_LOGIC. V případech kdy je potřeba přetypovat jeden typ na druhý, musejí se použít k tomu určené funkce. Např. signál X má osm bitů typu STD_LOGIC a Y je typu INTEGER definovaný v rozsahu 0 až 255 (oba mají osm bitů), pro tento případ lze použít tuto funkci: X <= CONV_STD_LOCIG_VECTOR(Y,8); Tato funkce má dva parametry, první je signál, který chceme převést, a druhý parametr je do kolika bitů signálu X chceme uložit výsledek. Pozn. tato funkce je deklarována v knihovně std_logic_aritm. Pole Jak bylo již řečeno typy BIT_VECTOR a STD_LOGIC_VECTOR jsou ve skutečnosti pole typu BIT nebo STD_LOGIC. Ve standardech VHDL jsou tyto pole definovány následovně: TYPE BIT_VECTOR IS ARRAY (NATURAL RANGE <>) OF BIT; TYPE STD_LOGIC_VECTOR IS ARRAY (NATURAL RANGE <>) OF STD_LOGIC; Velikost těchto typů není definována, to zaručuje syntaxe (NATURAL RANGE <>), která má vliv na to, že si výslednou velikost bude moci vybrat sám uživatel. Pole jakéhokoli typu si může uživatel vytvořit sám např. takto:

6 TYPE Byte IS ARRAY (7 DOWNTO 0) OF STD_LOGIC; SIGNAL y : Byte; Signál y bude mít osm bitů typu STD_LOGIC. Lze také deklarovat dvou rozměrné pole: TYPE RegArray IS ARRAY (3 DOWNTO 0) OF STD_LOGIC_VECTOR(7 DOWNTO 0); SIGNAL R : RegArray; Tento kód definuje R jako pole čtyř elementů, každý element je osmi bitový typ STD_LOGIC_VECTOR. Syntaxe R(i) (3 ii 0) získá jeden ze čtyř elementů a R(i)(j) (3 ii 0, 7 jj 0) získá přístup k j-tému bitu i-tého elementu, tento bit je typu STD_LOGIC. Operátory Jazyk VHDL umožňuje použít řadu operátorů: Priorita Třída operátorů Operátory Vysoká Různé **, ABS, NOT Násobící *, /, MOD, REM Znaménkové +, Sčítací +,, & Relační =, /=, <, <=, >, >= Nízká Logické AND, OR, NAND, NOR, XOR, XNOR Operátory se rozlišují podle třídy a každá třída má svoji prioritu, např. operátor NOT a AND mají různou prioritu, operátor NOT má vyšší prioritu. Je potřeba si dávat pozor na logické výpočty s operátory ze stejné třídy, tedy se stejnou prioritou. Logické operátory jsou vyhodnocovány zleva doprava. Např.: x1 AND x2 OR x3 AND x4 není stejný s aritmetickým zápisem x1.x2 + x3.x4 naopak je roven výrazu (x1.x2+x3).x4, správný výraz je potřeba zapsat následovně: (x1 AND x2) OR (x3 AND x4) Návrh entity ve VHDL Obvod nebo podobvod popsaný ve VHDL je nazýván entitou. Každá entita má dvě části, první část je deklarace entity (entity), která určuje vstupní a výstupní signály, a druhou částí je architektura (architecture), která určuje chování entity. Entita Deklarace entity Architektura

7 Deklarace entity V deklaraci entity se určují vstupní a výstupní signály. Název entity může být pouze vhodný název v rámci jazyka VHDL. Vstupní a výstupní signály mohou být specifikovány pouze v rámci klíčového slova PORT, jak ukazuje následující ukázka: ENTITY nazev_entity IS PORT ([SIGNAL] signal_name {, signal_name} : [mode] typ_signalu{; [SIGNAL] signal_name {, signal_name} : [mode] typ_signalu}); END nazev_entity; Port může být vstupní (IN), výstupní (OUT) nebo obousměrný (INOUT) (v ukázce definováno na místě mode), pokud není směr portu definován, je považován za vstupní. Architektura Tato část entity popisuje výsledné chování entity. Základní tvar architektury vypadá takto: ARCHITECTURE nazev_architektury OF nazev_entity IS [deklarace signálů] [deklarace konstant] [deklarace uživatelských typů] [deklarace komponent] [deklarace atributů] BEGIN {instance komponent; } {paralelní příkazy; } {proces; } END [nazev_architektury]; Každá architektura má dvě hlavní části, část pro deklarace (signálů, konstant, apod.) a tělo architektury, kde je umístěna hlavní funkčnost entity. Paralelní příkazy Paralelní příkazy přiřazují hodnoty signálům v těle architektury. Jazyk VHDL rozlišuje celkem čtyři typy paralelních příkazů. Jednoduché přiřazení Jednoduché přiřazení se používá pro logické nebo aritmetické výpočty. Základní tvar jednoduchého přiřazení: nazev_signalu <= vyraz; Symbol <= je přiřazovací operátor, který lze použít buď na jednotlivé signály: SIGNAL x1, x2, x3, f : STD_LOGIC; f <= (x1 AND x2) OR x3; Nebo také pro vícebitové signály: SIGNAL A, B, C : STD_LOGIC_VECTOR(1 TO 3); C <= A AND B; Přiřazení hodnoty prostřednictví příkazu OTHERS Pokud je potřeba nějaký více bitový signál např. vynulovat, můžeme to provést pomocí příkazu S <= "0000". Pokud má, ale signál mnoho bitů je možné použít příkaz OTHERS

8 S <= (OTHERS => '0');. Tento příkaz vynuluje všechny bity signálu S, ať je jeho velikost jakákoli. Výběrové přiřazení Výběrové přiřazení se používá pro přiřazení hodnoty signálu podle hodnoty jiného signálu: WITH hodnota_signalu SELECT nazev_signalu <= signal1 WHEN konstanta; signal2 WHEN OTHERS; Jako ukázkový příklad se hodí např. dvou vstupý multiplexer: SIGNAL x1, x2, Sel, f : STD_LOGIC; WITH Sel SELECT f <= x1 WHEN '0', x2 WHEN OTHERS; Tento kód funguje tak, že podle hodnoty signálu Sel se přiřazují signálu f hodnoty signálů x1 nebo x2. Je-li Sel = '0' f = x1 a pro jiné hodnoty Sel f = x2. Podmíněné přiřazení Této způsob přiřazení je podobný výběrovému. Podmíněné přiřazení přiřazuje signálu jednu z možných hodnot, nikoli hodnoty jiných signálů. Základní tvar: nazev_signalu <= vyraz WHEN logicky_vyraz ELSE {vyraz WHEN logicky_vyraz ELSE} vyraz; Příklad použití: SIGNAL x1, x2, x3 : STD_LOGIC; SIGNAL f : STD_LOGIC_VECTOR (1 DOWNTO 0); f <= '00' WHEN x1 = '1' ELSE '01' WHEN x2 = '1' ELSE '10' WHEN x3 = '1' ELSE '11'; Tento kód nastavuje hodnotu signálu f podle hodnot jiných signálů. Bude-li signál x1 = '1' bude se f = '00', apod. V případě, že hodnoty signálů x1 a x2 budou '1' bude se signál f = '00', protože hodnota signálu x1 má vyšší prioritu. Generující příkaz Existují dvě varianty generujícího příkazu (GENERATE), FOR GENERATE a IF GENERATE. Příkaz IF GENERATE se používá jen velmi zřídka, ale příkaz FOR GENERATE se používá často. Ukázky použití: FOR index_citace IN rozsah GENERATE vyraz; {vyraz;} END GENERATE; IF vyraz GENERATE vyraz; {vyraz;} END GENERATE;

9 Sekvenční příkazy Sekvenční příkazy jsou dalším typem příkazů, stejně jako paralelní příkazy, které se umisťují do těla architektury. Paralelní příkazy sice umožňují tvorbu většiny logických obvodů, nicméně jazyk VHDL poskytuje také sekvenční příkazy, které lze použít při návrhu kombinačních i sekvenčních logických obvodů. Existují tři příkazy (IF, CASE, LOOP) pro použití se sekvenčními příkazy. Příkaz PROCESS Jedná se o příkaz, který odděluje paralelní příkazy od sekvenčních příkazů. Pochopitelně je umístěn také v těle architektury a zahrnuje další příkazy, jako jsou příkazy IF, CASE a LOOP, které mohou být umístěny pouze v rámci příkazu PROCESS. Základní tvar příkazu PROCESS: PROCESS [(nazev_signalu{, nazev_signalu})] [deklarace proměnných] BEGIN [příkaz WAIT] [jednoduché přiřazení signálů] [přiřazení proměnných] [příkaz IF] [příkaz CASE] [příkaz LOOP] END PROCESS; Struktura příkazu PROCESS je podobná se strukturou příkazu ARCHITECTURE. Jedině v rámci příkazu PROCESS mohou být deklarovány proměnné (VARIABLE) a jedině v rámci procesu mohou být i použity, při nutnosti použití proměnné mimo proces je nutné hodnotu proměnné přiřadit nějakému signálu. Za příkazem PROCESS se může vyskytnout tzv. citlivostní seznam. Změna některého ze signálů uvedených v tomto seznamu vyvolá spuštění procesu. Není-li citlivostní seznam uveden je nutné v rámci procesu použít příkaz WAIT. Příkazy IF, CASE nebo LOOP umožňují vytvoření popisu kombinačního nebo sekvenčního obvodu. Při tvorbě kombinačních obvodů musí být v citlivostním seznamu uvedeny všechny vstupní signály. Příklad ukázky kombinačního obvodu: PROCESS (Sel, x1, x2) BEGIN IF (Sel = '0') THEN f <= x1; ELSE f <= x2; END IF; END PROCESS; Toto je ukázka vytvoření dvou vstupého multiplexeru.

10 Příkaz IF Tento příkaz je velice podobný příkazu if z jiných programovacích jazyků. Základní tvar: IF logicky_vyraz THEN ELSIF logicky_vyraz THEN ELSE END IF; Při splnění jedné z podmínek se provedou dané příkazy, pokud není splněna žádná podmínka, budou provedeny příkazy za příkazem ELSE. Příkazy ELSIF ani ELSE nemusejí být použity. Příkaz CASE Základní tvar příkazu CASE: CASE nazev_signalu IS WHEN konstanta => WHEN konstanta => WHEN OTHERS => END CASE; Tento příkaz v závislost na hodnotě signálu nazev_signalu vykonává jednotlivé příkazy. Příkaz CASE musí zahrnovat všechny možné hodnoty signálu, proto je vhodné použít příkaz OTHERS. Příklad použití: CASE Sel IS WHEN '0' => f <= x1; WHEN OTHERS => f <= x2; END CASE; Takto navržený obvod je totožný s obvodem, který byl uveden v příkladu ukázky kombinačního obvodu při použití příkazu PROCESS.

11 Příkaz LOOP Jazyk VHDL umožňuje dva typy příkazů pro tvorbu cyklů (LOOP), příkazy FOR-LOOP a WHILE- LOOP. Tyto příkazy jsou použity pro opakování jednoho nebo více sekvenčních příkazů. Základní tvary příkazů: FOR nazev_promenne IN rozsah LOOP END LOOP; WHILE logicky_vyraz LOOP END LOOP; Příkaz FOR-LOOP se používá pro případy, kdy je znám počet opakování. Zato příkaz WHILE- LOOP se používá v případech, kdy není přesně znám počet opakování.

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

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

Ú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

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

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

Programovací jazyk Pascal

Programovací jazyk Pascal Programovací jazyk Pascal Syntaktická pravidla (syntaxe jazyka) přesná pravidla pro zápis příkazů Sémantická pravidla (sémantika jazyka) pravidla, která každému příkazu přiřadí přesný význam Všechny konstrukce

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

Čí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

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

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

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

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

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

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

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

Úvod do programovacích jazyků (Java)

Úvod do programovacích jazyků (Java) Úvod do programovacích jazyků (Java) Michal Krátký Katedra informatiky VŠB Technická univerzita Ostrava Úvod do programovacích jazyků (Java), 2007/2008 c 2006 2008 Michal Krátký Úvod do programovacích

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

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

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

- speciální symboly + - * / =., < > <> <= >= a další. Klíčová slova jsou chráněnými útvary, které nelze použít ve významu identifikátorů. Základní symboly - písmena A B C Y Z a b c y z - číslice 0 1 2 9 - speciální symboly + - * / =., < > = a další - klíčová slova and array begin case const a další Klíčová slova jsou chráněnými útvary,

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

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

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

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

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

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

Paměť počítače. alg2 1 Paměť počítače Výpočetní proces je posloupnost akcí nad daty uloženými v paměti počítače Data jsou v paměti reprezentována posloupnostmi bitů (bit = 0 nebo 1) Připomeňme: paměť je tvořena řadou 8-mi bitových

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

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

1.1 Struktura programu v Pascalu Vstup a výstup Operátory a některé matematické funkce 5 Obsah Obsah 1 Programovací jazyk Pascal 1 1.1 Struktura programu v Pascalu.................... 1 2 Proměnné 2 2.1 Vstup a výstup............................ 3 3 Operátory a některé matematické funkce 5

Více

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

Logické operace. Datový typ bool. Relační operátory. Logické operátory. IAJCE Přednáška č. 3. může nabýt hodnot: o true o false Logické operace Datový typ bool může nabýt hodnot: o true o false Relační operátory pravda, 1, nepravda, 0, hodnoty všech primitivních datových typů (int, double ) jsou uspořádané lze je porovnávat binární

Více

Čtvrtek 8. prosince. Pascal - opakování základů. Struktura programu:

Čtvrtek 8. prosince. Pascal - opakování základů. Struktura programu: Čtvrtek 8 prosince Pascal - opakování základů Struktura programu: 1 hlavička obsahuje název programu, použité programové jednotky (knihovny), definice konstant, deklarace proměnných, všechny použité procedury

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

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

5 Přehled operátorů, příkazy, přetypování 5 Přehled operátorů, příkazy, přetypování Studijní cíl Tento studijní blok má za cíl pokračovat v základních prvcích jazyka Java. Konkrétně budou uvedeny detaily týkající se operátorů. Doba nutná k nastudování

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

NPRG030 Programování I, 2010/11

NPRG030 Programování I, 2010/11 Podmínka = něco, co JE, nebo NENÍ splněno typ Boolean hodnoty: TRUE pravda FALSE lež domluva (optimistická): FALSE < TRUE když X, Y jsou (číselné) výrazy, potom X = Y X Y X < Y X > Y X = Y jsou

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

NPRG030 Programování I, 2016/17 1 / :58:13

NPRG030 Programování I, 2016/17 1 / :58:13 NPRG030 Programování I, 2016/17 1 / 31 10. 10. 2016 10:58:13 Podmínka = něco, co JE, nebo NENÍ splněno typ Boolean hodnoty: TRUE pravda FALSE lež domluva (optimistická): FALSE < TRUE NPRG030 Programování

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

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

Obsah. Předmluva 13 Zpětná vazba od čtenářů 14 Zdrojové kódy ke knize 15 Errata 15 Předmluva 13 Zpětná vazba od čtenářů 14 Zdrojové kódy ke knize 15 Errata 15 KAPITOLA 1 Úvod do programo vání v jazyce C++ 17 Základní pojmy 17 Proměnné a konstanty 18 Typy příkazů 18 IDE integrované vývojové

Více

Michal Krátký. Úvod do programovacích jazyků (Java), 2006/2007

Michal Krátký. Úvod do programovacích jazyků (Java), 2006/2007 Úvod do programovacích jazyků (Java) Michal Krátký 1 Katedra informatiky VŠB Technická univerzita Ostrava Úvod do programovacích jazyků (Java), 2006/2007 c 2006 Michal Krátký Úvod do programovacích jazyků

Více

LEKCE 6. Operátory. V této lekci najdete:

LEKCE 6. Operátory. V této lekci najdete: LEKCE 6 Operátory V této lekci najdete: Aritmetické operátory...94 Porovnávací operátory...96 Operátor řetězení...97 Bitové logické operátory...97 Další operátory...101 92 ČÁST I: Programování v jazyce

Více

MQL4 COURSE. By Coders guru www.forex-tsd.com. -4 Operace & Výrazy

MQL4 COURSE. By Coders guru www.forex-tsd.com. -4 Operace & Výrazy MQL4 COURSE By Coders guru www.forex-tsd.com -4 Operace & Výrazy Vítejte ve čtvrté lekci mého kurzu MQL4. Předchozí lekce Datové Typy prezentovaly mnoho nových konceptů ; Doufám, že jste všemu porozuměli,

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

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

Jak v Javě primitivní datové typy a jejich reprezentace. BD6B36PJV 002 Fakulta elektrotechnická České vysoké učení technické Jak v Javě primitivní datové typy a jejich reprezentace BD6B36PJV 002 Fakulta elektrotechnická České vysoké učení technické Obsah Celočíselný datový typ Reálný datový typ Logický datový typ, typ Boolean

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

Algoritmizace a programování

Algoritmizace a programování Algoritmizace a programování Výrazy Operátory Výrazy Verze pro akademický rok 2012/2013 1 Operace, operátory Unární jeden operand, operátor se zapisuje ve většině případů před operand, v některých případech

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

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

1. lekce. do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme:

1. lekce. do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme: 1. lekce 1. Minimální program do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme: #include #include int main() { printf("hello world!\n"); return 0; 2.

Více

Datové typy strana 29

Datové typy strana 29 Datové typy strana 29 3. Datové typy Jak již bylo uvedeno, Java je přísně typový jazyk, proto je vždy nutno uvést datový typ datového atributu, formálního parametru metody, návratové hodnoty metody nebo

Více

24-2-2 PROMĚNNÉ, KONSTANTY A DATOVÉ TYPY TEORIE DATUM VYTVOŘENÍ: 23.7.2013 KLÍČOVÁ AKTIVITA: 02 PROGRAMOVÁNÍ 2. ROČNÍK (PRG2) HODINOVÁ DOTACE: 1

24-2-2 PROMĚNNÉ, KONSTANTY A DATOVÉ TYPY TEORIE DATUM VYTVOŘENÍ: 23.7.2013 KLÍČOVÁ AKTIVITA: 02 PROGRAMOVÁNÍ 2. ROČNÍK (PRG2) HODINOVÁ DOTACE: 1 24-2-2 PROMĚNNÉ, KONSTANTY A DATOVÉ TYPY TEORIE AUTOR DOKUMENTU: MGR. MARTINA SUKOVÁ DATUM VYTVOŘENÍ: 23.7.2013 KLÍČOVÁ AKTIVITA: 02 UČIVO: STUDIJNÍ OBOR: PROGRAMOVÁNÍ 2. ROČNÍK (PRG2) INFORMAČNÍ TECHNOLOGIE

Více

PHP - úvod. Kapitola seznamuje se základy jazyka PHP a jeho začleněním do HTML stránky.

PHP - úvod. Kapitola seznamuje se základy jazyka PHP a jeho začleněním do HTML stránky. PHP - úvod Kapitola seznamuje se základy jazyka PHP a jeho začleněním do HTML stránky. Klíčové pojmy: PHP, webový prohlížeč, HTTP, FTP Základní pojmy služba WWW = 1990 první prototyp serveru, od roku 1994

Více

Programovací jazyk. - norma PASCAL (1974) - implementace Turbo Pascal, Borland Pascal FreePascal Object Pascal (Delphi)

Programovací jazyk. - norma PASCAL (1974) - implementace Turbo Pascal, Borland Pascal FreePascal Object Pascal (Delphi) Programovací jazyk - norma PASCAL (1974) - implementace Turbo Pascal, Borland Pascal FreePascal Object Pascal (Delphi) Odlišnosti implementace od normy - odchylky např.: nepovinná hlavička programu odlišná

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

VÝUKOVÝ MATERIÁL. Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632 Číslo projektu

VÝUKOVÝ MATERIÁL. Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632 Číslo projektu VÝUKOVÝ MATERIÁL Identifikační údaje školy Vyšší odborná škola a Střední škola, Varnsdorf, příspěvková organizace Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632

Více

Test prvočíselnosti. Úkol: otestovat dané číslo N, zda je prvočíslem

Test prvočíselnosti. Úkol: otestovat dané číslo N, zda je prvočíslem Test prvočíselnosti Úkol: otestovat dané číslo N, zda je prvočíslem 1. zkusit všechny dělitele od 2 do N-1 časová složitost O(N) cca N testů 2. stačí zkoušet všechny dělitele od 2 do N/2 (větší dělitel

Více

Algoritmizace a programování

Algoritmizace a programování Algoritmizace a programování Řídicí struktury jazyka Java Struktura programu Příkazy jazyka Blok příkazů Logické příkazy Ternární logický operátor Verze pro akademický rok 2012/2013 1 Struktura programu

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

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

Základní datové typy, proměnné - deklarujeme předem - C je case sensitive rozlišuje malá a velká písmena v názvech proměnných a funkcí

Základní datové typy, proměnné - deklarujeme předem - C je case sensitive rozlišuje malá a velká písmena v názvech proměnných a funkcí 02 Jazyk C - je imperativní říkáme, co se má udělat, voláme příkazy - další imperativní jazyky: Pascal, Java, C/C++ apod. - na rozdíl od jazyků deklarativních např. Prolog, Haskell, Scheme, Lisp (funkcionální

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

EVROPSKÝ SOCIÁLNÍ FOND. Úvod do PHP PRAHA & EU INVESTUJEME DO VAŠÍ BUDOUCNOSTI

EVROPSKÝ SOCIÁLNÍ FOND. Úvod do PHP PRAHA & EU INVESTUJEME DO VAŠÍ BUDOUCNOSTI EVROPSKÝ SOCIÁLNÍ FOND Úvod do PHP PRAHA & EU INVESTUJEME DO VAŠÍ BUDOUCNOSTI Úvod do PHP PHP Personal Home Page Hypertext Preprocessor jazyk na tvorbu dokumentů přípona: *.php skript je součást HTML stránky!

Více

Sada 1 - PHP. 03. Proměnné, konstanty

Sada 1 - PHP. 03. Proměnné, konstanty S třední škola stavební Jihlava Sada 1 - PHP 03. Proměnné, konstanty Digitální učební materiál projektu: SŠS Jihlava šablony registrační číslo projektu:cz.1.09/1.5.00/34.0284 Šablona: III/2 - inovace a

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

Tematický celek Proměnné. Proměnné slouží k dočasnému uchovávání hodnot během provádění aplikace Deklarace proměnných

Tematický celek Proměnné. Proměnné slouží k dočasnému uchovávání hodnot během provádění aplikace Deklarace proměnných Tematický celek 03 3.1 Proměnné Proměnné slouží k dočasnému uchovávání hodnot během provádění aplikace. 3.1.1 Deklarace proměnných Dim jméno_proměnné [As typ] - deklarace uvnitř procedury platí pouze pro

Více

Identifikátory označují objekty v programu používané (proměnné, typy, podprogramy).

Identifikátory označují objekty v programu používané (proměnné, typy, podprogramy). JAZYK PASCAL ÚVOD materiály pro studenty Jiráskova gymnázia v Náchodě (verze 2005-10-28) RNDr Jan Preclík, PhD preclik@gymnachodcz Jazyk Pascal byl navržen profesorem curyšské univerzity Niklausem Wirthem

Více

Vyučovací hodina. 1vyučovací hodina: 2vyučovací hodiny: Opakování z minulé hodiny. Procvičení nové látky

Vyučovací hodina. 1vyučovací hodina: 2vyučovací hodiny: Opakování z minulé hodiny. Procvičení nové látky Vyučovací hodina 1vyučovací hodina: Opakování z minulé hodiny Nová látka Procvičení nové látky Shrnutí 5 min 20 min 15 min 5 min 2vyučovací hodiny: Opakování z minulé hodiny Nová látka Procvičení nové

Více

Java reprezentace dat, výrazy. A0B36PR1-Programování 1 Fakulta elektrotechnická České vysoké učení technické

Java reprezentace dat, výrazy. A0B36PR1-Programování 1 Fakulta elektrotechnická České vysoké učení technické Java reprezentace dat, výrazy A0B36PR1-Programování 1 Fakulta elektrotechnická České vysoké učení technické Dva základní přístupy k imperativnímu programování Strukturované procedurální Objektové V PR1

Více

Ahoj mami. Uložení dat v počítači. Příklady kódování dat. IAJCE Přednáška č. 4

Ahoj mami. Uložení dat v počítači. Příklady kódování dat. IAJCE Přednáška č. 4 Uložení dat v počítači Data = užitečné, zpracovávané informace Kódování (formát) dat = způsob uložení v počítači (nutno vše převést na čísla ve dvojkové soustavě) Příklady kódování dat Text každému znaku

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

Činnost: 1) Vyhodnotí se výraz E. 2) Jeho hodnota se uloží do proměnné V.

Činnost: 1) Vyhodnotí se výraz E. 2) Jeho hodnota se uloží do proměnné V. Přiřazovací příkaz V := E, V jednoduchá nebo indexovaná proměnná, E výraz, jehož typ je kompatibilní podle přiřazení s typem proměnné V. 1) Vyhodnotí se výraz E. 2) Jeho hodnota se uloží do proměnné V.

Více

for (i = 0, j = 5; i < 10; i++) { // tělo cyklu }

for (i = 0, j = 5; i < 10; i++) { // tělo cyklu } 5. Operátor čárka, - slouží k jistému určení pořadí vykonání dvou příkazů - oddělím-li čárkou dva příkazy, je jisté, že ten první bude vykonán dříve než příkaz druhý. Např.: i = 5; j = 8; - po překladu

Více

Programování v jazyce JavaScript

Programování v jazyce JavaScript Programování v jazyce JavaScript Katedra softwarového inženýrství Fakulta informačních technologií České vysoké učení technické v Praze Pavel Štěpán, 2011 Operátory a příkazy BI-JSC Evropský sociální fond

Více

Elementární datové typy

Elementární datové typy Elementární datové typy Celočíselné typy (integers) Mohou nabývat množiny hodnot, která je podmnožinou celých čísel (někdy existuje implementační konstanta maxint). Operace: aritmetické, relační, bitové,

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 C# a platforma.net

Jazyk C# a platforma.net Jazyk C# a platforma.net Katedra softwarového inženýrství Fakulta informačních technologií České vysoké učení technické v Praze Pavel Štěpán, 2011 Syntaxe jazyka C# - 1. část BI-DNP Evropský sociální fond

Více

Datové typy v Javě. Tomáš Pitner, upravil Marek Šabo

Datové typy v Javě. Tomáš Pitner, upravil Marek Šabo Datové typy v Javě Tomáš Pitner, upravil Marek Šabo Úvod k datovým typům v Javě Existují dvě základní kategorie datových typů: primitivní a objektové Primitivní v proměnné je uložena přímo hodnota např.

Více

MAXScript výukový kurz

MAXScript výukový kurz MAXScript výukový kurz Díl čtvrtý jazyk MAXScript, část I. Jan Melichar, březen 2008 Jan Melichar (aka JME) strana 1 OBSAH ÚVOD... 4 ZÁKLADNÍ PŘÍKAZY... 5 OPERÁTORY... 6 PROMĚNNÉ... 6 POLE... 7 ZÁVĚREM...

Více

Skripta ke školení. Základy VBA. vypracoval: Tomáš Herout. tel:

Skripta ke školení. Základy VBA. vypracoval: Tomáš Herout.   tel: Skripta ke školení Základy VBA vypracoval: Tomáš Herout e-mail: herout@helpmark.cz tel: 739 719 548 2016 Obsah TROCHA TEORIE VBA...2 ZPŮSOB ZÁPISU VE VBA...2 CO JE TO FUNKCE...2 CO JE TO PROCEDURA...2

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

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

Chapter Základní principy simulace :).

Chapter Základní principy simulace :). Chapter 1 Simulace číslicových obvodů 1.1 Základní principy simulace V doporučeních firmy Xilinx, kde píší jakým způsobem navrhovat: pozor, vyhněte se asynchronnímu návrhu, pokud se tomu nevyhnete, zlikviduje

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

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

Operátory, výrazy. Tomáš Pitner, upravil Marek Šabo Operátory, výrazy Tomáš Pitner, upravil Marek Šabo Operátor "Znaménko operace", pokyn pro vykonání operace při vyhodnocení výrazu. V Javě mají operátory napevno daný význam, nelze je přetěžovat jako v

Více

1. lekce. do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme:

1. lekce. do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme: 1. lekce 1. Minimální program do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme: #include #include int main() { printf("hello world!\n"); return 0; 2.

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

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

5a. Makra Visual Basic pro Microsoft Escel. Vytvořil Institut biostatistiky a analýz, Masarykova univerzita J. Kalina

5a. Makra Visual Basic pro Microsoft Escel. Vytvořil Institut biostatistiky a analýz, Masarykova univerzita J. Kalina 5a. Makra Visual Basic pro Microsoft Escel Vytvořil Institut biostatistiky a analýz, Masarykova univerzita J. Kalina Cyklické odkazy a iterativní výpočty Zde bude stránka o cyklických odkazech a iteracích.

Více

10 Algoritmizace Příklad 2 Word 2007/ VBA

10 Algoritmizace Příklad 2 Word 2007/ VBA TÉMA: Zápis algoritmu, cyklus se známým počtem opakování Prostředí aplikace Wordu je možné doplnit v rámci využití maker o automatizaci složitějších posloupností příkazů. Vedle záznamu makra je možno makra

Více

type Obdelnik = array [1..3, 1..4] of integer; var M: Obdelnik;

type Obdelnik = array [1..3, 1..4] of integer; var M: Obdelnik; Vícerozměrné pole type Obdelnik = array [1..3, 1..4] of integer; var M: Obdelnik; M[2,3] := 3145; - počet indexů není omezen (v praxi obvykle nejvýše tři) - více indexů pomalejší přístup k prvku (počítá

Více

Obsah přednášky. programovacího jazyka. Motivace. Princip denotační sémantiky Sémantické funkce Výrazy Příkazy Vstup a výstup Kontinuace Program

Obsah přednášky. programovacího jazyka. Motivace. Princip denotační sémantiky Sémantické funkce Výrazy Příkazy Vstup a výstup Kontinuace Program Denotační sémantika programovacího jazyka doc. Dr. Ing. Miroslav Beneš katedra informatiky, A-1007 59 732 4213 Obsah přednášky Princip denotační sémantiky Sémantické funkce Výrazy Příkazy Vstup a výstup

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

Sada 1 - Základy programování

Sada 1 - Základy programování S třední škola stavební Jihlava Sada 1 - Základy programování 07. Základní příkazy vstup a výstup hodnot Digitální učební materiál projektu: SŠS Jihlava šablony registrační číslo projektu:cz.1.09/1.5.00/34.0284

Více

Kurz LSL skriptování. Shiny Iceberg 2009

Kurz LSL skriptování. Shiny Iceberg 2009 Kurz LSL skriptování Shiny Iceberg 2009 2 2 Kurz LSL skriptování Shiny Iceberg v Second Life od roku 2006 shiny.iceberg@virtualmagazine.cz Aktuální projekty virtualmagazine.cz Urbanica, Shinyland Bwindi

Více

BI-PA1 Programování a algoritmizace 1, ZS Katedra teoretické informatiky

BI-PA1 Programování a algoritmizace 1, ZS Katedra teoretické informatiky Příprava studijního programu Informatika je podporována projektem financovaným z Evropského sociálního fondu a rozpočtu hlavního města Prahy. Praha & EU: Investujeme do vaší budoucnosti Vstup, výstup BI-PA1

Více

Výrazy a operátory. Operátory Unární - unární a unární + Např.: a +b

Výrazy a operátory. Operátory Unární - unární a unární + Např.: a +b Výrazy a operátory i = 2 i = 2; to je výraz to je příkaz 4. Operátory Unární - unární a unární + Např.: +5-5 -8.345 -a +b - unární ++ - inkrement - zvýší hodnotu proměnné o 1 - unární -- - dekrement -

Více

Software602 Form Designer

Software602 Form Designer Software602 Form Designer Javascriptový vyhodnocovací mechanismus výrazů Aktualizováno: 17. 3. 2017 Software602 a.s. Hornokrčská 15 140 00 Praha 4 tel: 222 011 602 web: www.602.cz e-mail: info@602.cz ID

Více

SPJA, cvičení 1. ipython, python, skripty. základy syntaxe: základní datové typy, řetězce. podmínky: if-elif-else, vyhodnocení logických výrazů

SPJA, cvičení 1. ipython, python, skripty. základy syntaxe: základní datové typy, řetězce. podmínky: if-elif-else, vyhodnocení logických výrazů SPJA, cvičení 1 ipython, python, skripty základy syntaxe: základní datové typy, řetězce podmínky: if-elif-else, vyhodnocení logických výrazů cykly: for, while kolekce: seznam, n-tice, slovník funkce, list

Více

CZ.1.07/1.5.00/

CZ.1.07/1.5.00/ Celá čísla Celočíselný typ má označení INTEGER. Kromě tohoto základního jsou k dispozici ještě další celočíselné typy, které uvádí následující tabulka. Každý typ umožňuje definovat určitý rozsah celých

Více

Způsoby realizace této funkce:

Způsoby realizace této funkce: KOMBINAČNÍ LOGICKÉ OBVODY U těchto obvodů je výstup určen jen výhradně kombinací vstupních veličin. Hodnoty výstupních veličin nezávisejí na předcházejícím stavu logického obvodu, což znamená, že kombinační

Více