From 32192a938d949acdb49850a06edcc653aece59f0 Mon Sep 17 00:00:00 2001 From: Eric Kooistra <kooistra@astron.nl> Date: Thu, 6 Oct 2022 10:49:44 +0200 Subject: [PATCH] Correct c_eth_runtime_timeout to account for skipped first new_interval. --- .../tb_lofar2_unb2c_sdp_station_fsub_sst_offload.vhd | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/applications/lofar2/designs/lofar2_unb2c_sdp_station/revisions/lofar2_unb2c_sdp_station_fsub/tb_lofar2_unb2c_sdp_station_fsub_sst_offload.vhd b/applications/lofar2/designs/lofar2_unb2c_sdp_station/revisions/lofar2_unb2c_sdp_station_fsub/tb_lofar2_unb2c_sdp_station_fsub_sst_offload.vhd index 74694c689d..82d0a90366 100644 --- a/applications/lofar2/designs/lofar2_unb2c_sdp_station/revisions/lofar2_unb2c_sdp_station_fsub/tb_lofar2_unb2c_sdp_station_fsub_sst_offload.vhd +++ b/applications/lofar2/designs/lofar2_unb2c_sdp_station/revisions/lofar2_unb2c_sdp_station_fsub/tb_lofar2_unb2c_sdp_station_fsub_sst_offload.vhd @@ -74,7 +74,7 @@ ARCHITECTURE tb OF tb_lofar2_unb2c_sdp_station_fsub_sst_offload IS CONSTANT c_nof_clk_per_sync : NATURAL := c_nof_block_per_sync*c_sdp_N_fft; CONSTANT c_pps_period : NATURAL := c_nof_clk_per_sync; CONSTANT c_wpfb_sim : t_wpfb := func_wpfb_set_nof_block_per_sync(c_sdp_wpfb_subbands, c_nof_block_per_sync); - CONSTANT c_nof_sync : NATURAL := 2; + CONSTANT c_nof_sync : NATURAL := 1; -- MM CONSTANT c_mm_file_reg_bsn_source_v2 : STRING := mmf_unb_file_prefix(c_unb_nr, c_node_nr) & "REG_BSN_SOURCE_V2"; @@ -88,13 +88,15 @@ ARCHITECTURE tb OF tb_lofar2_unb2c_sdp_station_fsub_sst_offload IS SIGNAL eth_done : STD_LOGIC := '0'; -- . 1GbE output - CONSTANT c_eth_check_nof_packets : NATURAL := c_nof_sync * c_sdp_S_pn; + CONSTANT c_eth_check_nof_packets : NATURAL := c_nof_sync * c_sdp_S_pn; -- S_pn = 12 received packets per sync interval CONSTANT c_eth_header_size : NATURAL := 19; -- words CONSTANT c_eth_crc_size : NATURAL := 1; -- word CONSTANT c_eth_packet_size : NATURAL := c_eth_header_size + c_eth_crc_size + c_sdp_N_sub * (c_sdp_W_statistic / c_word_w); -- 20 + 512 * 2 = 1044 CONSTANT c_eth_check_nof_valid : NATURAL := c_eth_check_nof_packets * c_eth_packet_size; - CONSTANT c_eth_runtime_timeout : TIME := (c_nof_sync + 1) * c_nof_clk_per_sync * c_ext_clk_period; -- eth statistics should be done after c_nof_sync intervals - + + -- eth statistics should be done after c_nof_sync + 1 intervals (+1 because first new_interval is skipped) + CONSTANT c_eth_runtime_timeout : TIME := (c_nof_sync + 2) * c_nof_clk_per_sync * c_ext_clk_period; + -- DUT SIGNAL ext_clk : STD_LOGIC := '0'; SIGNAL pps : STD_LOGIC := '0'; -- GitLab