2 use IEEE.std_logic_1164.all;
3 use IEEE.numeric_std.all;
8 reset_n : in std_ulogic;
10 src_valid : in std_ulogic;
11 src_ready : out std_ulogic
15 architecture rtl of sub is
20 use IEEE.std_logic_1164.all;
21 use IEEE.numeric_std.all;
26 reset_n : in std_ulogic
30 architecture struct of bug is
31 signal filtered_src_valid : std_ulogic;
32 signal filtered_src_ready : std_ulogic;
34 signal pipeline_src_valid : std_ulogic;
35 signal pipeline_src_ready : std_ulogic;
37 type state_t is (idle, active);
38 signal state : state_t;
41 pipeline_src_valid <= filtered_src_valid when (state = idle) or (state = active) else '0';
46 elsif rising_edge(clk) then
48 if filtered_src_valid = '1' and filtered_src_ready = '1' then
51 elsif state = active then
52 if pipeline_src_valid = '1' and pipeline_src_ready = '1' then
59 pipeline : entity work.sub
64 src_valid => pipeline_src_valid,
65 src_ready => pipeline_src_ready