bpc-los_09 - Posuv. registry, VHDL-implementace 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.
PULSE <= '1' WHEN (COUNT = MAX) ELSE
'0';
CEO <= '1' WHEN (COUNT = MAX AND CE = '1') ELSE
'0';
END Behavioral;
Sekvenční příkazy
Souběžné příkazy
Synchronní čítač VHDL implementace
ENTITY counter IS GENERIC (MAX : positive);
PORT (
CLK, CE : IN std_logic;
PULSE, CEO : OUT std_logic;
);
END counter;
ARCHITECTURE Behavioral OF counter IS SIGNAL COUNT: natural RANGE 0 TO MAX := 0; -- omezení na: <0 - MAX>
BEGIN PROCESS(CLK)
BEGIN IF(rising_edge(CLK)) THEN IF(CE = '1') THEN
COUNT <= COUNT + 1;
END IF;
END IF;
END PROCESS;
PULSE <= '1' WHEN (COUNT = MAX) ELSE
'0';
CEO <= '1' WHEN (COUNT = MAX AND CE = '1') ELSE
'0';
END Behavioral;
VHDL implementace čítače - shrnutí
Výsledná realizace obsahuje na výstupech PULSE a CEO
kombinační obvody, které
mohou generovat hazardy.
Je třeba zhodnotit, zda daná situace je nebo není na
závadu:
• Hazardy není potřeba řešit => následující blok je
synchronní s CLK.
• Hazardy je nutné řešit => následující blok není
synchronní. (Na výstupy přidáme záchytné registry,
který zajistí jejich změny synchronně s CLK, ale také je
zpozdí o jednu periodu hodinového signálu CLK.)
Jazyk VHDL - seznam klíč. slov
architecture
access after alias all and
abs
array assert attribute
begin block body buffer bus
case component configuration constant
disconnect downto
else elsif end entity exit
file for function
generate generic group guarded
if impure in inertial inout islabel library linkage literal loop
map mod
nand new next
not null
of on open or others out
package port postponed procedure process pure
range record register reject rem report return rol ror
select severity shared signal sla sll sra srl subtype
then to transport type
unaffected units until use
variable
wait when while with
xnor xor
nor
Jazyk VHDL - seznam klíč. slov
architecture
access after alias all and
abs
array assert attribute
begin block body buffer bus
case component configuration constant
disconnect downto
else elsif end entity exit
file for function
generate generic group guarded
if impure in inertial inout islabel library linkage literal loop
map mod
nand new next
not null
of on open or others out
package port postponed procedure process pure
range record register reject rem report return rol ror
select severity shared signal sla sll sra srl subtype