Я пытаюсь написать код VHDL я это дает мне больше пытаюсь написать код для последовательного с 5 состояний (S0, S1, S2, S3, S4)Xillinx VHDL код ошибки
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
entity Seqq is
PORT (seq , clk , reset : IN std_logic;
output : OUT std_logic;
leds : OUT std_logic_vector(2 downto 0));
end Seqq;
architecture Behavioral of Seqq is
type states IS (S0 , S1 , S2 , S3 , S4);
signal nxt , prst : states ;
begin
FB:PROCESS(reset, clk)
begin
if Rising_edge(clk) then
if reset = '1' then prst <='0';
else prst <= nxt ;
end if ;
end if ;
end process FB;comb:PROCESS(prst)
begin
case prst IS
when S0 =>
If seq = '0' then nxt <= S0;
elsif seq = '1' then nxt <= S1;
end if ;
leds <= "000";
output <= '0';
when S1 =>
If seq = '0' then nxt <= S2;
elsif seq = '1' then nxt <= S1;
end if ;
leds <= "001";
output <= '0';
when S2 =>
If seq = '0' then nxt <= S2;
elsif seq = '1' then nxt <= S1;
end if ;
leds <= "010";
output <= '0';
when S3 =>
If seq = '0' then nxt <= S0;
elsif seq = '1' then nxt <= S4;
end if ;
leds <= "011";
output <= '0';
when S4 =>
If seq = '0' then nxt <= S0;
output <= '1';
elsif seq = '1' then nxt <= S1;
end if ;
leds <= "100";
output <= '0';
end case ;
end process comb;
end Behavioral;
и я получаю ошибку
Type of prst is incompatible with type of '0'.
что мне делать?