Skip to content
Snippets Groups Projects
Commit c8a55f39 authored by BRONES Romain's avatar BRONES Romain
Browse files

fix(DAQ): Add delay on the BPM DAQ

* This let the autotimestamp (new sequence) getting in first in the DAQ
parent a353bcfa
No related branches found
No related tags found
No related merge requests found
......@@ -179,6 +179,16 @@ architecture struct of bsp_fmc2zup_payload is
signal axis_daqs03_tdata : std_logic_vector(63 downto 0);
signal axis_daqs03_tvalid : std_logic;
-- Delayed bpm DAQ, in order to have the new seq timestamp first in the capture
signal d1_axis_daqs01_tdata : std_logic_vector(63 downto 0);
signal d1_axis_daqs01_tvalid : std_logic;
signal d1_axis_daqs02_tdata : std_logic_vector(63 downto 0);
signal d1_axis_daqs02_tvalid : std_logic;
signal d2_axis_daqs01_tdata : std_logic_vector(63 downto 0);
signal d2_axis_daqs01_tvalid : std_logic;
signal d2_axis_daqs02_tdata : std_logic_vector(63 downto 0);
signal d2_axis_daqs02_tvalid : std_logic;
signal axis_daqm00_tdata : std_logic_vector(63 downto 0);
signal axis_daqm00_tvalid : std_logic;
signal axis_daqm00_tready : std_logic;
......@@ -669,6 +679,16 @@ begin
r_last_seq <= (others => '0');
axis_daqs00_tvalid <= '0';
d1_axis_daqs01_tdata <= (others => '0');
d1_axis_daqs02_tdata <= (others => '0');
d1_axis_daqs01_tvalid <= '0';
d1_axis_daqs02_tvalid <= '0';
d2_axis_daqs01_tdata <= (others => '0');
d2_axis_daqs02_tdata <= (others => '0');
d2_axis_daqs01_tvalid <= '0';
d2_axis_daqs02_tvalid <= '0';
elsif rising_edge(axis_clk) then
if (axis_pkt_rx_tvalid and axis_pkt_rx_tready) = '1' then
r_last_seq <= axis_pkt_rx_tuser(7 downto 0);
......@@ -681,6 +701,17 @@ begin
else
axis_daqs00_tvalid <= '0';
end if;
d1_axis_daqs01_tdata <= axis_daqs01_tdata;
d1_axis_daqs01_tvalid <= axis_daqs01_tvalid;
d1_axis_daqs02_tdata <= axis_daqs02_tdata;
d1_axis_daqs02_tvalid <= axis_daqs02_tvalid;
d2_axis_daqs01_tdata <= d1_axis_daqs01_tdata;
d2_axis_daqs01_tvalid <= d1_axis_daqs01_tvalid;
d2_axis_daqs02_tdata <= d1_axis_daqs02_tdata;
d2_axis_daqs02_tvalid <= d1_axis_daqs02_tvalid;
end if;
end process;
......@@ -728,13 +759,13 @@ begin
s00_axis_tready => open, --no back pressure
s00_axis_tdata => axis_daqs00_tdata,
s01_axis_tvalid => axis_daqs01_tvalid,
s01_axis_tvalid => d2_axis_daqs01_tvalid,
s01_axis_tready => open, --no back pressure
s01_axis_tdata => axis_daqs01_tdata,
s01_axis_tdata => d2_axis_daqs01_tdata,
s02_axis_tvalid => axis_daqs02_tvalid,
s02_axis_tvalid => d2_axis_daqs02_tvalid,
s02_axis_tready => open, --no back pressure
s02_axis_tdata => axis_daqs02_tdata,
s02_axis_tdata => d2_axis_daqs02_tdata,
s03_axis_tvalid => axis_daqs03_tvalid,
s03_axis_tready => open, --no back pressure
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment