6 use IEEE.STD_LOGIC_1164.
all;
7 use ieee.numeric_std.
all;
9 use ipbus_lib.ipbus.
all;
10 use ipbus_lib.ipbus_reg_types.
all;
11 library infrastructure_lib;
18 ipb_clk : in std_logic;
19 ipb_rst : in std_logic;
21 ipb_out : out ipb_rbus;
22 constraints_gitsha : in std_logic_vector(31 downto 0);
23 constraints_version : in std_logic_vector(31 downto 0);
24 hog_gitsha : in std_logic_vector(31 downto 0);
25 hog_version : in std_logic_vector(31 downto 0);
26 top_version : in std_logic_vector(31 downto 0);
27 top_gitsha : in std_logic_vector(31 downto 0);
28 infra_version : in std_logic_vector(31 downto 0);
29 infra_gitsha : in std_logic_vector(31 downto 0);
30 algo_version : in std_logic_vector(31 downto 0);
31 algo_gitsha : in std_logic_vector(31 downto 0);
32 readout_version : in std_logic_vector(31 downto 0);
33 readout_gitsha : in std_logic_vector(31 downto 0);
34 ipbus_gitsha : in std_logic_vector(31 downto 0)
44 signal ack : std_logic;
45 signal ipbw : ipb_wbus_array(N_SLAVES-1 downto 0);
46 signal ipbr, ipbr_d : ipb_rbus_array(N_SLAVES-1 downto 0);
51 fabric_lib_version :
entity ipbus_lib.ipbus_fabric_sel
52 generic map(NSLV => N_SLAVES,
53 SEL_WIDTH => ipbus_sel_width
)
57 sel => ipbus_sel_efex_lib_version
(ipb_in.ipb_addr
),
58 ipb_to_slaves => ipbw,
59 ipb_from_slaves => ipbr
62 constraints :
entity ipbus_lib.ipbus_ctrlreg_v
69 ipbus_in => ipbw
(N_SLV_CONSTRAINTS
),
70 ipbus_out => ipbr
(N_SLV_CONSTRAINTS
),
71 d =>
(1 => constraints_gitsha,
0 => constraints_version
),
75 hog :
entity ipbus_lib.ipbus_ctrlreg_v
82 ipbus_in => ipbw
(N_SLV_HOG
),
83 ipbus_out => ipbr
(N_SLV_HOG
),
84 d =>
(1 => hog_gitsha,
0 => hog_version
),
88 top_directory :
entity ipbus_lib.ipbus_ctrlreg_v
95 ipbus_in => ipbw
(N_SLV_TOP
),
96 ipbus_out => ipbr
(N_SLV_TOP
),
97 d =>
(1 => top_gitsha,
0 => top_version
),
101 infra_lib :
entity ipbus_lib.ipbus_ctrlreg_v
108 ipbus_in => ipbw
(N_SLV_INFRASTRUCTURE
),
109 ipbus_out => ipbr
(N_SLV_INFRASTRUCTURE
),
110 d =>
(1 => infra_gitsha,
0 => infra_version
),
114 algo_lib :
entity ipbus_lib.ipbus_ctrlreg_v
121 ipbus_in => ipbw
(N_SLV_ALGORITHM
),
122 ipbus_out => ipbr
(N_SLV_ALGORITHM
),
123 d =>
(1 => algo_gitsha,
0 => algo_version
),
127 readout_lib :
entity ipbus_lib.ipbus_ctrlreg_v
134 ipbus_in => ipbw
(N_SLV_READOUT
),
135 ipbus_out => ipbr
(N_SLV_READOUT
),
136 d =>
(1 => readout_gitsha,
0 => readout_version
),
140 ipbus_a :
entity ipbus_lib.ipbus_ctrlreg_v
147 ipbus_in => ipbw
(N_SLV_IPBUS
),
148 ipbus_out => ipbr
(N_SLV_IPBUS
),
149 d =>
(0 => ipbus_gitsha
),
Version of the various firmware libraries.
Version of the various firmware libraries.