Intento hacer un programa VHDL simple que consiste en incrementar un std_logic_vector en uno cada vez que se presiona el botón A. Cuando se presiona el botón B, se debe restablecer el valor.
Mi idea era hacerlo de esta manera
entity simple is
Port ( A : in std_logic;
B : in std_logic;
CLK : in std_logic;
debug : out std_logic_vector (7 downto 0));
end simple;
architecture Behavioral of simple is
signal state: std_logic_vector(7 downto 0) := "00000000";
begin
increment: process(state, A, B)
begin
if (B'event and B = '1') then
state <= "00000000";
end if;
if (A'event andA = '1') then
state <= std_logic_vector(unsigned(state)+1);
end if;
end process;
led_debug: process(CLK)
begin
debug <= state;
end process;
end Behavioral;
El problema es que estoy recibiendo un error: mala descripción síncrona, que no puedo entender.