Skip to content
Snippets Groups Projects
Commit f8c004de authored by Eric Kooistra's avatar Eric Kooistra
Browse files

Verify Tx seq diag_mod values other than default.

parent cc83660f
No related branches found
No related tags found
No related merge requests found
...@@ -41,6 +41,7 @@ USE work.diag_pkg.ALL; ...@@ -41,6 +41,7 @@ USE work.diag_pkg.ALL;
ENTITY tb_diag_rx_seq IS ENTITY tb_diag_rx_seq IS
GENERIC ( GENERIC (
g_tx_cnt_incr : INTEGER := -7; g_tx_cnt_incr : INTEGER := -7;
g_tx_mod : INTEGER := 0;
g_rx_use_steps : BOOLEAN := TRUE; g_rx_use_steps : BOOLEAN := TRUE;
g_rx_steps_arr : t_integer_arr(c_diag_seq_rx_reg_nof_steps-1 DOWNTO 0) := (1, 0, -7, 3); g_rx_steps_arr : t_integer_arr(c_diag_seq_rx_reg_nof_steps-1 DOWNTO 0) := (1, 0, -7, 3);
g_seq_dat_w : NATURAL := 16 -- = 12b for Lofar RCU test data, 16b for Lofar TBBI test data g_seq_dat_w : NATURAL := 16 -- = 12b for Lofar RCU test data, 16b for Lofar TBBI test data
...@@ -66,6 +67,7 @@ ARCHITECTURE tb OF tb_diag_rx_seq IS ...@@ -66,6 +67,7 @@ ARCHITECTURE tb OF tb_diag_rx_seq IS
-- Tx test data -- Tx test data
SIGNAL tx_diag_en : STD_LOGIC; SIGNAL tx_diag_en : STD_LOGIC;
SIGNAL tx_diag_sel : STD_LOGIC; SIGNAL tx_diag_sel : STD_LOGIC;
SIGNAL tx_diag_mod : STD_LOGIC_VECTOR(g_seq_dat_w-1 DOWNTO 0) := TO_UVEC(g_tx_mod, g_seq_dat_w);
SIGNAL tx_diag_req : STD_LOGIC; SIGNAL tx_diag_req : STD_LOGIC;
SIGNAL seq_dat : STD_LOGIC_VECTOR(g_seq_dat_w-1 DOWNTO 0); SIGNAL seq_dat : STD_LOGIC_VECTOR(g_seq_dat_w-1 DOWNTO 0);
SIGNAL seq_val : STD_LOGIC; SIGNAL seq_val : STD_LOGIC;
...@@ -265,6 +267,7 @@ BEGIN ...@@ -265,6 +267,7 @@ BEGIN
rst => rst, rst => rst,
diag_en => tx_diag_en, diag_en => tx_diag_en,
diag_sel => tx_diag_sel, diag_sel => tx_diag_sel,
diag_mod => tx_diag_mod,
diag_req => tx_diag_req, diag_req => tx_diag_req,
out_dat => seq_dat, out_dat => seq_dat,
out_val => seq_val out_val => seq_val
......
...@@ -31,12 +31,16 @@ ARCHITECTURE tb OF tb_tb_diag_rx_seq IS ...@@ -31,12 +31,16 @@ ARCHITECTURE tb OF tb_tb_diag_rx_seq IS
BEGIN BEGIN
-- g_tx_cnt_incr : INTEGER := 1; -- g_tx_cnt_incr : INTEGER := 1;
-- g_tx_mod : INTEGER := 0;
-- g_rx_use_steps : BOOLEAN := TRUE; -- g_rx_use_steps : BOOLEAN := TRUE;
-- g_rx_steps_arr : t_integer_arr(c_diag_seq_rx_reg_nof_steps-1 DOWNTO 0) := (OTHERS=>1); -- g_rx_steps_arr : t_integer_arr(c_diag_seq_rx_reg_nof_steps-1 DOWNTO 0) := (OTHERS=>1);
-- g_seq_dat_w : NATURAL := 16 -- g_seq_dat_w : NATURAL := 16
u_diag_sel : ENTITY work.tb_diag_rx_seq GENERIC MAP ( 1, FALSE, (1, 1, 1, 1), 8); u_diag_sel : ENTITY work.tb_diag_rx_seq GENERIC MAP ( 1, 0, FALSE, (1, 1, 1, 1), 8);
u_diag_steps_incr_1 : ENTITY work.tb_diag_rx_seq GENERIC MAP ( 1, TRUE, (1, 1, 1, 1), 8); u_diag_steps_incr_1 : ENTITY work.tb_diag_rx_seq GENERIC MAP ( 1, 0, TRUE, (1, 1, 1, 1), 8);
u_diag_steps_incr_neg_7 : ENTITY work.tb_diag_rx_seq GENERIC MAP (-7, TRUE, (1, -7, 1, 1), 8); u_diag_steps_incr_neg_7 : ENTITY work.tb_diag_rx_seq GENERIC MAP (-7, 0, TRUE, (1, -7, 1, 1), 8);
u_diag_steps_tx_mod : ENTITY work.tb_diag_rx_seq GENERIC MAP ( 1, 255, TRUE, (1, 2, 1, 1), 8); -- rx_step = 2**g_seq_dat_w - tx_mod + g_tx_cnt_incr = 256 - 255 + 1 = 2
u_diag_steps_tx_mod_incr_7 : ENTITY work.tb_diag_rx_seq GENERIC MAP ( 7, 255, TRUE, (7, 8, 7, 7), 8); -- rx_step = 2**g_seq_dat_w - tx_mod + g_tx_cnt_incr = 256 - 255 + 7 = 8
u_diag_steps_tx_mod_incr_5 : ENTITY work.tb_diag_rx_seq GENERIC MAP ( 5, 127, TRUE, (5, 134, 5, 5), 8); -- rx_step = 2**g_seq_dat_w - tx_mod + g_tx_cnt_incr = 256 - 127 + 5 = 134
END tb; END tb;
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment