diff --git a/hdl/combpm_packet_filter.vhd b/hdl/combpm_packet_filter.vhd index 6bcdf53de238f4d3d97aa7fd15061237946a4c37..ee53a7612f38d0c83f3d7a9137eb5e37f34eba6b 100644 --- a/hdl/combpm_packet_filter.vhd +++ b/hdl/combpm_packet_filter.vhd @@ -2,7 +2,7 @@ library ieee; use ieee.std_logic_1164.all; use ieee.numeric_std.all; -use work.pkg_combpm_stream.all; +use work.pkg_bpmframe_stream.all; entity combpm_packet_filter is generic( @@ -134,8 +134,8 @@ architecture rtl of combpm_packet_filter is ------------------------ -- SIGNAL DECLARATION -- ------------------------ - signal in_packet : t_combpm_axis_packet; - signal out_packet : t_combpm_axis_packet; + signal in_packet : t_bpmframe; + signal out_packet : t_bpmframe; signal bram_clk_a : STD_LOGIC; signal bram_en_a : STD_LOGIC; @@ -162,13 +162,13 @@ begin p_main: process(axis_clk, axis_rst_n) begin if axis_rst_n = '0' then - in_packet <= slv2combpmpacket(zero_packet); - out_packet <= slv2combpmpacket(zero_packet); + in_packet <= slv2bpmframe(zero_packet); + out_packet <= slv2bpmframe(zero_packet); elsif rising_edge(axis_clk) then -- Register input packet if s_axis_tvalid = '1' then - in_packet <= slv2combpmpacket(s_axis_tdata); + in_packet <= slv2bpmframe(s_axis_tdata); end if; tvalid_r(tvalid_r'left downto 1) <= tvalid_r(tvalid_r'left-1 downto 0); @@ -183,7 +183,7 @@ begin -- AXIS OUTPUT -- ----------------- m_axis_tdest <= std_logic_vector(resize(unsigned(table_data(6 downto 0)), C_TDEST_W)); - m_axis_tdata <= combpmpacket2slv(out_packet); + m_axis_tdata <= bpmframe2slv(out_packet); m_axis_tlast <= '1'; -- Packet is one tdata only m_axis_tvalid <= tvalid_r(tvalid_r'left) and table_data(7); diff --git a/hdl/combpm_protocol_electron.vhd b/hdl/combpm_protocol_electron.vhd index 521e0dcf276bd22e2db924b138c93d8a308ef954..7e1751c647cc43e02c1307cf2cb9401351c34e41 100644 --- a/hdl/combpm_protocol_electron.vhd +++ b/hdl/combpm_protocol_electron.vhd @@ -18,7 +18,7 @@ entity combpm_protocol_electron is -- AXIS interface m_axis_m2s : out t_bpmframe_axis_m2s; - m_axis_s2m : in t_bpmframe_axis_s2m; -- warning: TREADY is ignored ! + m_axis_s2m : in t_bpmframe_axis_s2m; -- Status and control interface soft_reset : in std_logic; -- Reset all counters. @@ -82,7 +82,7 @@ architecture rtl of combpm_protocol_electron is signal rate_valid_r : unsigned(31 downto 0); signal rate_invalid_r : unsigned(31 downto 0); - signal packet : t_combpm_axis_packet; + signal packet : t_bpmframe; signal m_axi_tvalid : std_logic; @@ -236,7 +236,7 @@ begin -- AXIS OUT -- -------------- m_axis_m2s.tdest <= (others => '0'); - m_axis_m2s.tdata <= combpmpacket2slv(packet); + m_axis_m2s.tdata <= bpmframe2slv(packet); m_axis_m2s.tlast <= '1'; -- One transfer is One packet. m_axis_m2s.tvalid <= m_axi_tvalid; @@ -244,9 +244,8 @@ begin p_axis:process(clk, rst_n) begin if rst_n = '0' then - packet <= C_PACKET_ZERO; + packet <= C_BPMFRAME_ZERO; m_axi_tvalid <= '0'; - m_axi_tdest <= (others => '0'); elsif rising_edge(clk) then @@ -258,16 +257,12 @@ begin packet.mc_timestamp <= mc_time; packet.fa_seq <= packet_timestamp(7 downto 0); - - -- AXIS ancillary data - m_axi_tdest <= packet_bpmid; - -- AXIS TVALID m_axi_tvalid <= '1'; else -- Acknowledge transfer - if m_axi_tready = '1' then + if m_axis_s2m.tready = '1' then m_axi_tvalid <= '0'; end if; end if; diff --git a/hdl/top_combpm_electron.vhd b/hdl/top_combpm_electron.vhd index a9eba4c4021d0778c0700c135015f3d7cf7553dc..66d86f778ab8e4ac671a142b8795e10f12ad996f 100644 --- a/hdl/top_combpm_electron.vhd +++ b/hdl/top_combpm_electron.vhd @@ -13,7 +13,7 @@ library desyrdl; use desyrdl.common.all; use desyrdl.pkg_combpm.all; -use work.pkg_combpm_stream.all; +use work.pkg_bpmframe_stream.all; use work.pkg_combpm_version.all; entity top_combpm_electron is @@ -119,10 +119,10 @@ architecture struct of top_combpm_electron is ------------------------ -- SIGNAL DECLARATION -- ------------------------ - signal sync_resetn : std_logic; -- This is async reset with sync deassertion - signal sync_reset : std_logic; -- This is async reset with sync deassertion - signal usrclk : std_logic; - signal rst : std_logic; + signal sync_resetn : std_logic; -- This is async reset with sync deassertion + signal sync_reset : std_logic; -- This is async reset with sync deassertion + signal usrclk : std_logic; + signal rst : std_logic; signal frame_seq_cnt : std_logic_vector(15 downto 0); signal frame_valid_cnt : std_logic_vector(31 downto 0); @@ -141,8 +141,8 @@ architecture struct of top_combpm_electron is signal gt_rxbyterealign : std_logic; signal gt_rxcommadet : std_logic; - signal addrmap_w : t_addrmap_combpm_in; - signal addrmap_r : t_addrmap_combpm_out; + signal addrmap_w : t_addrmap_combpm_in; + signal addrmap_r : t_addrmap_combpm_out; begin diff --git a/tcl/main.tcl b/tcl/main.tcl index e34b1fed0e4dd95099e1d367dc9b7930c915c197..4db3d1f87ec2a482e6aab7bdca5e52cd8ca7aee4 100644 --- a/tcl/main.tcl +++ b/tcl/main.tcl @@ -20,6 +20,7 @@ proc setSources {} { lappend Vhdl ../hdl/combpm_protocol_electron.vhd lappend Vhdl ../hdl/top_combpm_electron.vhd + lappend Vhdl ../hdl/pkg_bpmframe_stream.vhd }