2 use ieee.std_logic_1164.all;
3 use ieee.numeric_std.all;
4 use work.lx_dad_pkg.all;
6 -- Memory bus measurement
7 -- Holds the signal for one clock to simulate longest route
9 entity bus_measurement is
15 reset_i : in std_logic;
19 address_i : in std_logic_vector(1 downto 0);
21 data_i : in std_logic_vector(31 downto 0);
22 data_o : out std_logic_vector(31 downto 0);
24 bls_i : in std_logic_vector(3 downto 0)
28 architecture Behavioral of bus_measurement is
31 signal meas1_out_s : std_logic_vector(31 downto 0);
32 signal meas1_ce_s : std_logic;
34 signal meas2_out_s : std_logic_vector(31 downto 0);
35 signal meas2_ce_s : std_logic;
39 -- First measurement register (0xAAAAAAAA)
40 measurement1: measurement_register
43 id_g => "10101010101010101010101010101010"
49 switch_i => address_i(0),
56 -- Second measurement register (=0x55555555)
57 measurement2: measurement_register
60 id_g => "01010101010101010101010101010101"
66 switch_i => address_i(0),
75 process (ce_i, address_i, meas1_out_s, meas2_out_s)
81 data_o <= (others => 'X');
85 if address_i(1) = '0' then
87 data_o <= meas1_out_s;
90 data_o <= meas2_out_s;