bpc-los_08 - Metastabilita, VHDL-popis sekv. obvodů
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.
limit.vhdl:
main.vhdl:
Příklad definice funkce v knihovní balíku
LIBRARY ieee;
USE ieee.std_logic_1164.ALL;
PACKAGE limit IS FUNCTION val_in_limit(val: INTEGER; low: INTEGER; high: INTEGER)
RETURN boolean;
END PACKAGE limit;
PACKAGE BODY limit IS FUNCTION val_in_limit(val: INTEGER; low: INTEGER; high: INTEGER)
RETURN boolean IS BEGIN
IF (val >= low AND val <= high) THEN RETURN true;
ELSE RETURN false;
END IF;
END FUNCTION val_in_limit;
END PACKAGE BODY limit;
limit.vhdl:
main.vhdl:
LIBRARY ieee;
USE ieee.std_logic_1164.ALL;
USE work.limit.ALL; -- Tady je náš uživatelský balík
Vytváření hierarchických modelů
v jazyce VHDL - doplnění
Vytváření hierarchických modelů v jazyce
VHDL - doplnění
V popisu architektury je nejprve definována komponenta, aby do následujícího
strukturálního popisu mohla být komponenta vložena (i několikanásobně).
Doplnění:
• Způsob přiřazení vnějších signálu komponentě, je možné pomocí
přiřazení vyjmenováním, případně přiřazením pozičním. Vstupnímu
signálu lze přiřadit i literál.
• Každou instanci komponenty je nutné doplnit vhodným návěštím.
• Má-li komponenta výstupy, které se v nadřazeném zdrojovém textu
nevyužívají, označí se tyto výstupy namísto jmen skutečných signálů,
klíčovým slovem OPEN.
• Standard VHDL-93 podporuje tzv.
přímé vložení entity (direct entity
instantiation), bez nutnosti v každém zdrojovém textu projektu
komponentu opakovaně deklarovat.
Vytváření hierarchických modelů v jazyce
VHDL - doplnění
V popisu architektury je nejprve definována komponenta, aby do následujícího
strukturálního popisu mohla být komponenta vložena (i několikanásobně).
Doplnění:
• Způsob přiřazení vnějších signálu komponentě, je možné pomocí
přiřazení vyjmenováním, případně přiřazením pozičním. Vstupnímu
signálu lze přiřadit i literál.
• Každou instanci komponenty je nutné doplnit vhodným návěštím.
• Má-li komponenta výstupy, které se v nadřazeném zdrojovém textu
nevyužívají, označí se tyto výstupy namísto jmen skutečných signálů,
klíčovým slovem OPEN.
• Standard VHDL-93 podporuje tzv.
přímé vložení entity (direct entity
instantiation), bez nutnosti v každém zdrojovém textu projektu
komponentu opakovaně deklarovat.
Příklad, vložení komponenty
D
Q
Q
C
AR
D
Q
Q
C
AR
D
Q
Q
C
AR
shiftClk
shiftARst
shiftD
shiftQ
Shift_register
Příklad, vložení komponenty
D
Q
Q
C
AR
D
Q
Q
C
AR
D
Q
Q
C
AR
shiftClk
shiftARst
shiftD
shiftQ
Shift_register
Příklad, vložení komponenty
ENTITY Shift_register IS PORT(
shiftD, shiftClk, shiftARst: IN std_logic;
shiftQ: OUT std_logic;
);
END Shift_register;