when "0110" =>
next_INT_DATA_OUT <= DAT_MED2INT(55 downto 0);
next_RECV_STAT <= DAT_MED2INT(64 downto 56);
- if INT_READ_IN = '1' then
- next_MED2INT_state <= "1110";
+ next_INT_DATAREADY_OUT <= '1';
+ next_MED2INT_state <= "0111";
+ when "0111" =>
+ if buf_INT_DATAREADY_OUT = '1' and INT_READ_IN = '1' then
+ next_MED2INT_state <= "0000";
next_INT_DATAREADY_OUT <= '0';
+ next_INT_DATA_OUT <= (others => '0');
else
- next_MED2INT_state <= "0110";
+ next_MED2INT_state <= "0111";
next_INT_DATAREADY_OUT <= '1';
- end if;
- when "1110" =>
- next_INT_DATA_OUT <= (others => '0');
- next_INT_DATAREADY_OUT <= '0';
- if MED_TRANSMISSION_CLK_IN = '0' then
- next_MED2INT_state <= "0000";
- else
- next_MED2INT_state <= "1110";
+ next_INT_DATA_OUT <= buf_INT_DATA_OUT;
end if;
when others =>
next_MED2INT_state <= "0000";