Skip to content
Snippets Groups Projects

Resolve HPR-122

Merged Reinier van der Walle requested to merge HPR-122 into master
6 unresolved threads

Closes HPR-122

Merge request reports

Loading
Loading

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
35 35 -- if override = '0' the field is taken from snk_in.data.
36 36 -- . The initial (default) values of the override bits are passed via g_field_sel(one bit per field);
37 37 -- . Both the SLV as the override (ovr) fields can be read back via MM;
38
38 -- . g_mode can be used to select in which mode dp_field_blk should work. Most of the time, the
39 -- default g_mode = 0 can be used. Forcing either source or sink mode could be done when the
40 -- data sosi data length is larger than the field block.
  • 205 206 TYPE t_reg IS RECORD
    206 207 dat_arr : t_dat_arr(g_in_nof_words-1 DOWNTO 0); -- internally use dat_arr[] to represent v.src_out.data
    207 208 src_out : t_dp_sosi; -- sosi output
    209 src_out_data : STD_LOGIC_VECTOR(c_in_buf_dat_w-1 DOWNTO 0);
  • 20 20 -- AUthor: E. Kooistra
    21 21 -- Purpose: Test the 1GbE interface by sending and counting received packets.
    22 22 -- Description: See detailed design in [1]
    23 23 --
    • Kun je [1] ook uitbreiden met wat je hebt toegevoegd, bijv over split. + uitleggen wat de complicaties zijn van 100GbE tov 1GbE tester, dat het niet simpel opschaalt, vanwege de interne data breedtes en wens om packet lengte per octet in te kunnen stellen en bit rate ook in fijne stapjes in te kunnen stellen.

      Edited by Eric Kooistra
    • Please register or sign in to reply
  • 18 --
    19 -------------------------------------------------------------------------------
    20 -- Author: R. vd Walle
    21 -- Purpose: Test bench for eth_tester using high bandwidth generic configuration
    22 -- Description: Similar to the 1GbE testbench [1] for the eth tester but using generic
    23 -- values for usage with high bandwidth, e.g. 10 / 100 GbE.
    24 -- The g_nof_streams >= 1 are tested independently, using g_bg_ctrl_first for
    25 -- BG in stream 0 and g_bg_ctrl_others for all other streams.
    26 --
    27 -- Usage:
    28 -- > as 8
    29 -- # * E.g. view sosi/data signals in dut/gen_streams/u_rx and u_tx
    30 -- > run -a
    31 --
    32 -- References:
    33 -- [1] https://support.astron.nl/confluence/display/L2M/L6+FWLIB+Design+Document%3A+ETH+tester+unit+for+1GbE
  • added 1 commit

    Compare with previous version

  • 67 71
    68 72 CONSTANT c_nof_total_counts : NATURAL := 3; -- 0 = nof_sop, 1 = nof_valid, 2 = nof_crc_corrupt
    69 73
    70 CONSTANT c_empty_w : NATURAL := 2; -- for 0, 1, 2, 3 empty octets per word
    74 CONSTANT c_empty_w : NATURAL := ceil_log2(g_nof_octet_input);
    71 75 CONSTANT c_error_w : NATURAL := 1;
    76 CONSTANT c_in_data_w : NATURAL := g_nof_octet_input * c_octet_w;
    77 CONSTANT c_repack_data_w : NATURAL := g_nof_octet_unpack * c_octet_w;
    78 CONSTANT c_nof_repack_words : NATURAL := g_nof_octet_input / g_nof_octet_unpack;
    72 79
    73 80 -- Rx FIFO size can be much less than rx_block_sz_max, because st_clk >
    74 81 -- eth_clk rate, but with st level tx-rx loopback the Rx FIFO does need
    75 82 -- rx_block_sz_max FIFO size.
    76 CONSTANT rx_block_sz_max : NATURAL := c_eth_tester_rx_block_len_max / c_word_sz; -- = 9004 / 4 = 2251
    77 CONSTANT c_fifo_size : NATURAL := true_log_pow2(rx_block_sz_max); -- = 4096 words
    83 CONSTANT rx_block_sz_max : NATURAL := c_eth_tester_rx_block_len_max / g_nof_octet_input;
  • 94 CONSTANT c_empty_w : NATURAL := ceil_log2(g_nof_octet_output);
    77 95
    78 96 -- Choose 10% extra margin for FIFO fill level that will result in BG block
    79 97 -- level flow control via bg_siso.xon. The input eop will release blocks
    80 98 -- for FIFO output already before the FIFO is fill level is reached.
    81 99 -- Choose FIFO size to fit one more packet on top of FIFO fill level.
    82 CONSTANT c_packet_sz_max : NATURAL := ceil_div(c_eth_tester_bg_block_len_max, c_word_sz);
    100 CONSTANT c_packet_sz_max : NATURAL := ceil_div(c_eth_tester_bg_block_len_max, g_nof_octet_output);
    83 101 CONSTANT c_fifo_fill : NATURAL := c_packet_sz_max * 11 / 10;
    84 CONSTANT c_fifo_size : NATURAL := true_log_pow2(c_fifo_fill + c_packet_sz_max); -- = 8192
    102 CONSTANT c_fifo_size : NATURAL := true_log_pow2(c_fifo_fill + c_packet_sz_max);
    85 103 CONSTANT c_fifo_size_w : NATURAL := ceil_log2(c_fifo_size);
    86 104
    87 105 CONSTANT c_nof_total_counts : NATURAL := 1; -- one to count Tx packets
    88 106
    107 CONSTANT c_nof_repack_words : NATURAL := g_nof_octet_output / g_nof_octet_generate;
  • added 1 commit

    Compare with previous version

  • Eric Kooistra enabled an automatic merge when the pipeline for 31f07b1f succeeds

    enabled an automatic merge when the pipeline for 31f07b1f succeeds

  • Eric Kooistra mentioned in commit bb8729da

    mentioned in commit bb8729da

  • merged

  • Please register or sign in to reply
    Loading