Jak Začít?

Máš v počítači zápisky z přednášek
nebo jiné materiály ze školy?

Nahraj je na studentino.cz a získej
4 Kč za každý materiál
a 50 Kč za registraci!




bpc-los_08 - Metastabilita, VHDL-popis sekv. obvodů

PDF
Stáhnout kompletní materiál zdarma (495.58 kB)

Níže je uveden pouze náhled materiálu. Kliknutím na tlačítko 'Stáhnout soubor' stáhnete kompletní formátovaný materiál ve formátu PDF.

že sekvenční příkazy se používají pouze pro sekvenční 

obvody!

Procesy v jazyce VHDL - spouštění

Každý proces je spuštěn automaticky na začátku simulace. Další 
spuštění je možné dvěma způsoby:

• spuštění na základě signálů uvedených v citlivostním seznamu 

(sensitivity list) - pokud dojde ke změně hodnoty jakéhokoliv 
signálu, který je uveden v citlivostním seznamu, dojde ke 
spuštění procesu. (Proces který obsahuje definici citlivostního 
seznamu, nesmí v těle obsahovat příkaz WAIT.),

• na základě prázdného citlivostního seznamu a příkazu WAIT - 

pomocí tohoto příkazu je možné proces pozastavit na zvolený 
čas (WAIT FOR), splnění podmínky (WAIT UNTIL), změny signálu 
(WAIT ON), případně kombinace více zastavení. Jakmile proces 
bez citlivostního seznamu skončí, okamžitě se znovu spustí.

Procesy v jazyce VHDL - příklad

LIBRARY ieee;
USE ieee.std_logic_1164.ALL;

ENTITY SimpleProcess IS PORT(
  a: IN  std_logic;
  y: OUT std_logic;
);
END SimpleProcess;

ARCHITECTURE Behavioral OF SimpleProcess IS
BEGIN PROCESS (a) -- Proces s citlivost. seznamem na signál a
BEGIN y <= a;
END PROCESS;
END Behavioral;

Procesy v jazyce VHDL - varianty 

přiřazení

Významným rysem procesu je jeho algoritmický charakter. Je ovšem 
významný rozdíl, pokud je pro výsledek přiřazení uvnitř těla procesu 
použit signál nebo proměnná.

• Pro signály platí tzv. odložené přiřazení (scheduled assignment) - 

pokud jsou v těle procesu postupně přiřazovány jednomu 

signálu 

různé hodnoty, má tento signál hodnotu odpovídající poslednímu 
přiřazovacímu příkazu
 v procesu. Přičemž až do konce procesu 
má 

signál vždy svoji původní hodnotu. Lze si tedy představit, že k 

přiřazení všech hodnot signálům dojde najednou až v okamžiku 
skončení procesu, dle poslední signálu přiřazené hodnoty.

• Pro proměnné platí tzv. bezprostřední přiřazení (immediate 

assignment) - 

okamžité přiřazení (jako platilo pro signály mimo 

proces), platí 

uvnitř procesu pouze pro proměnné.

Procesy v jazyce VHDL - chybný příklad

&

y

a0

a1

a2

a3

Procesy v jazyce VHDL - chybný příklad

LIBRARY ieee;
USE ieee.std_logic_1164.ALL;

ENTITY And4 IS PORT(
  a: IN     std_logic_vector(3 DOWNTO 0);
  
);
END And4;

ARCHITECTURE Behavioral OF And4 IS
BEGIN PROCESS (a) -- Proces s citlivost. seznamem na signál a

y: BUFFER std_logic;

&

y

a0

a1

a2

a3

BEGIN y <= '1';
FOR i IN a'range LOOP y <= a(i) AND y;
END LOOP;
END PROCESS;
END Behavioral;

Procesy v jazyce VHDL - chybný příklad

Témata, do kterých materiál patří