2 use ieee.std_logic_1164.all;
3 use ieee.std_logic_arith.all;
4 use ieee.std_logic_unsigned.all;
5 use ieee.numeric_std.all;
6 use work.lx_dad_pkg.all;
8 -- Memory bus measurement
9 -- Holds the signal for one clock to simulate longest route
11 entity bus_measurement is
17 reset_i : in std_logic;
21 address_i : in std_logic_vector(1 downto 0);
23 data_i : in std_logic_vector(31 downto 0);
24 data_o : out std_logic_vector(31 downto 0);
26 bls_i : in std_logic_vector(3 downto 0)
30 architecture Behavioral of bus_measurement is
33 signal meas1_out_s : std_logic_vector(31 downto 0);
34 signal meas1_ce_s : std_logic;
36 signal meas2_out_s : std_logic_vector(31 downto 0);
37 signal meas2_ce_s : std_logic;
41 -- First measurement register (0xAAAAAAAA)
42 measurement1: measurement_register
45 id_g => "10101010101010101010101010101010"
51 switch_i => address_i(0),
58 -- Second measurement register (=0x55555555)
59 measurement2: measurement_register
62 id_g => "01010101010101010101010101010101"
68 switch_i => address_i(0),
77 process (ce_i, address_i, meas1_out_s, meas2_out_s)
83 data_o <= (others => 'X');
87 if address_i(1) = '0' then
89 data_o <= meas1_out_s;
92 data_o <= meas2_out_s;