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

Small updates.

parent 9def7464
Branches
No related tags found
1 merge request!288Resolve L2SDP-836
......@@ -70,10 +70,9 @@ END eth_tester_tx;
ARCHITECTURE str OF eth_tester_tx IS
CONSTANT c_bg_block_len_max : NATURAL := c_network_eth_payload_jumbo_max; -- 9000 octets
CONSTANT c_bg_block_len_w : NATURAL := ceil_log2(c_bg_block_len_max);
CONSTANT c_empty_w : NATURAL := 2; -- for 0, 1, 2, 3 empty octets per word
CONSTANT c_fifo_fill : NATURAL := c_network_eth_payload_jumbo_max / c_word_sz; -- = 9000 / 4 = 2250
CONSTANT c_fifo_fill : NATURAL := c_eth_tester_bg_block_len_max / c_word_sz; -- = 9000 / 4 = 2250
CONSTANT c_fifo_size : NATURAL := true_log_pow2(c_fifo_fill); -- = 4096
CONSTANT c_nof_total_counts : NATURAL := 1; -- one to count Tx packets
......@@ -83,13 +82,18 @@ ARCHITECTURE str OF eth_tester_tx IS
SIGNAL app_total_length : NATURAL;
SIGNAL bg_sosi : t_dp_sosi;
SIGNAL bg_data : STD_LOGIC_VECTOR(c_octet_w-1 DOWNTO 0);
SIGNAL bg_ctrl_hold : t_diag_block_gen;
SIGNAL bg_block_len : NATURAL;
SIGNAL tx_packed_sosi : t_dp_sosi;
SIGNAL tx_packed_data : STD_LOGIC_VECTOR(c_word_w-1 DOWNTO 0);
SIGNAL tx_fifo_sosi : t_dp_sosi;
SIGNAL tx_fifo_data : STD_LOGIC_VECTOR(c_word_w-1 DOWNTO 0);
SIGNAL tx_fifo_siso : t_dp_siso;
SIGNAL i_ref_sync : STD_LOGIC := '0';
SIGNAL in_strobe_arr : STD_LOGIC_VECTOR(c_nof_total_counts-1 DOWNTO 0);
SIGNAL i_tx_udp_sosi : t_dp_sosi;
SIGNAL tx_udp_data : STD_LOGIC_VECTOR(c_word_w-1 DOWNTO 0);
-- Use hdr_fields_slv_in default 0, to have DP driven fields ip_header_checksum = 0 and udp_checksum = 0
SIGNAL hdr_fields_slv_in : STD_LOGIC_VECTOR(1023 DOWNTO 0) := (OTHERS => '0');
......@@ -100,6 +104,13 @@ ARCHITECTURE str OF eth_tester_tx IS
BEGIN
ref_sync <= i_ref_sync;
tx_udp_sosi <= i_tx_udp_sosi;
-- View sosi.data in Wave Window
bg_data <= bg_sosi.data(c_octet_w-1 DOWNTO 0);
tx_packed_data <= tx_packed_sosi.data(c_word_w-1 DOWNTO 0);
tx_fifo_data <= tx_fifo_sosi.data(c_word_w-1 DOWNTO 0);
tx_udp_data <= i_tx_udp_sosi.data(c_word_w-1 DOWNTO 0);
-------------------------------------------------------------------------------
-- Generate packed data blocks
......@@ -107,7 +118,8 @@ BEGIN
u_bg : ENTITY diag_lib.mms_diag_block_gen
GENERIC MAP (
g_nof_streams => 1,
g_use_bg_buffer_ram => FALSE
g_use_bg_buffer_ram => FALSE,
g_buf_addr_w => c_diag_bg_mem_adrs_w -- = 24, use full range 2**24 for BG addr --> data values
)
PORT MAP (
-- System
......@@ -124,12 +136,14 @@ BEGIN
out_sosi_arr(0) => bg_sosi
);
u_repack : ENTITY dp_lib.dp_repack_data -- pack 8b octets into 32b words
u_pack : ENTITY dp_lib.dp_repack_data -- pack 8b octets into 32b words
GENERIC MAP (
g_in_dat_w => c_octet_w, -- = 8
g_in_nof_words => c_word_sz, -- = 4
g_in_symbol_w => c_octet_w,
g_out_dat_w => c_word_w, -- = 32
g_out_nof_words => 1
g_out_nof_words => 1,
g_out_symbol_w => c_octet_w
)
PORT MAP (
rst => st_rst,
......@@ -138,10 +152,11 @@ BEGIN
src_out => tx_packed_sosi
);
u_fifo : ENTITY dp_lib.dp_fifo_fill_eop
u_tx_fifo : ENTITY dp_lib.dp_fifo_fill_eop
GENERIC MAP (
g_data_w => c_word_w,
g_bsn_w => c_diag_bg_bsn_init_w, -- = 64 bit
g_empty_w => c_empty_w,
g_use_bsn => TRUE,
g_use_empty => TRUE,
g_use_sync => TRUE,
......@@ -237,7 +252,7 @@ BEGIN
snk_in_arr(0) => tx_fifo_sosi,
snk_out_arr(0) => tx_fifo_siso,
src_out_arr(0) => tx_udp_sosi,
src_out_arr(0) => i_tx_udp_sosi,
src_in_arr(0) => tx_udp_siso,
hdr_fields_in_arr(0) => hdr_fields_slv_in, -- hdr_fields_slv_in_arr(i) is considered valid @ snk_in_arr(i).sop
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment