bpc-los_11 - Speciální čítače, KSA
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.
Z předchozí úvahy je zřejmé, že každý blok schématu
popíšeme zvláštním procesem. Tak vznikne tzv.
tříprocesový způsob popisu.
Pokud je například komb. část č. 2 jednoduchá, můžeme
její proces nahradit prostým souběžným příkazem
(případně chybí tato část zcela), potom jde o
dvouprocesový způsob zápisu.
Jednoduché stavové automaty může být možné popsat
pouze
jedním procesem představující stavový registr,
jehož příští stav se popíše jako funkce stavu současného.
Popis chování KSA - jazyk VHDL
Z předchozí úvahy je zřejmé, že každý blok schématu
popíšeme zvláštním procesem. Tak vznikne tzv.
tříprocesový způsob popisu.
Pokud je například komb. část č. 2 jednoduchá, můžeme
její proces nahradit prostým souběžným příkazem
(případně chybí tato část zcela), potom jde o
dvouprocesový způsob zápisu.
Jednoduché stavové automaty může být možné popsat
pouze
jedním procesem představující stavový registr,
jehož příští stav se popíše jako funkce stavu současného.
Popis chování KSA - jazyk VHDL
Nejčastěji
budeme využívat dvou a tříprocesový způsob
zápisu.
Moore KSA - VDHL implementace
Kombinační
obvod č. 1
Klopné
obvody
Kombinační
obvod č. 2
X
Q
Y
Moore KSA:
S1
S0
S2
S3
O0
O1
O2
O3
I1
I0+I1+I2
I0
I2
I0+I2
I1
I1
I0+I2
LIBRARY ieee;
USE ieee.std_logic_1164.ALL;
TYPE TInput IS (I0, I1, I2);
TYPE TOutput IS (O0, O1, O2, O3);
ENTITY Moore IS
PORT(X : IN TInput;
Y : OUT TOutput;
CLK, CLR : IN std_logic
);
END Moore;
ARCHITECTURE Behavioral OF Moore IS TYPE TState IS (S0, S1, S2, S3);
SIGNAL Q, next_Q: TState := S0;
BEGIN
PROCESS(Q, X) -- Kombinační obvod č.1 (vstup)
END PROCESS;
PROCESS(CLK, CLR) -- Paměťová (registrová) část
END PROCESS;
PROCESS(Q) -- Kombinační obvod č.2 (výstup)
END PROCESS;
END Behavioral;
Kombinační
obvod č. 1
Klopné
obvody
Kombinační
obvod č. 2
X
Q
Y
Moore KSA:
S1
S0
S2
S3
O0
O1
O2
O3
I1
I0+I1+I2
I0
I2
I0+I2
I1
I1
I0+I2
LIBRARY ieee;
USE ieee.std_logic_1164.ALL;
TYPE TInput IS (I0, I1, I2);
TYPE TOutput IS (O0, O1, O2, O3);
ENTITY Moore IS
PORT(X : IN TInput;
Y : OUT TOutput;
CLK, CLR : IN std_logic
);
END Moore;
ARCHITECTURE Behavioral OF Moore IS TYPE TState IS (S0, S1, S2, S3);
SIGNAL Q, next_Q: TState := S0;
BEGIN
PROCESS(Q, X) -- Kombinační obvod č.1 (vstup)
END PROCESS;
PROCESS(CLK, CLR) -- Paměťová (registrová) část
END PROCESS;
PROCESS(Q) -- Kombinační obvod č.2 (výstup)
END PROCESS;
END Behavioral;