Visible to Intel only — GUID: nik1411172584440
Ixiasoft
Visible to Intel only — GUID: nik1411172584440
Ixiasoft
2.7.1. Testbenches with Adapters
File Names |
Description |
---|---|
Testbench and Simulation Files |
|
alt_40gbe_tb.sv, alt_e40_avalon_kr4_tb.sv, alt_100gbe_tb.v |
The testbench wrapper file. For non-KR4 variations, this file includes all of the testbench modules. |
alt_e40_avalon_tb_packet_gen.v |
The packet generator. This file is present only for 40GBASE-KR4 variations. |
alt_e40_avalon_tb_packet_gen_sanity_check.v |
The packet checker. This file is present only for 40GBASE-KR4 variations. |
alt_e40_avalon_tb_sample_tx_rom.hex |
The sample TX ROM. This file is present only for 40GBASE-KR4 variations. |
alt_e40_avalon_tb_sample_tx_rom.v |
Lists the contents of the sample TX ROM (alt_e40_avalon_tb_sample_tx_rom.hex). This file is present only for 40GBASE-KR4 variations. |
Testbench Scripts |
|
run_vsim.do | The ModelSim script to run the testbench. |
run_vcs.sh | The Synopsys VCS script to run the testbench. |
run_ncsim.sh | The Cadence NCSim script to run the testbench. |
The markers in the figure show the following sequence of events:
- At marker 1, the application asserts l4_tx_startofpacket, indicating the beginning of a TX packet.
- At marker 2, the application asserts l4_tx_endofpacket, indicating the end of the TX packet. The value on l4_tx_empty[4:0] indicates that the 2 least significant bytes of the last data cycle are empty.
- At marker 3, the IP core asserts l4_rx_startofpacket, indicating the beginning of an RX packet. A second transfer has already started on the TX bus.
- At marker 4, the 40GbE IP core deasserts l4_rx_valid, indicating that the IP core does not have new valid data to send to the client on l4_rx_data[255:0]. l4_rx_data[255:0] remains valid and unchanged for a second cycle.
- A marker 5, the 40GbE IP core asserts l4_rx_valid, indicating that the it has valid data to send to the client on l4_rx_data[255:0].
- At marker 6, the 40GbE IP core deasserts l4_rx_valid, indicating that it does not have new valid data to send to the client on l4_rx_data[255:0]. l4_rx_data[255:0] remains unchanged for a second cycle.
- At marker 7, the 40GbE IP core asserts l4_rx_valid, indicating that the it has valid data to send to the client on l4_rx_data[255:0].
- At marker 8, the 40GbE IP core deasserts l4_rx_valid, indicating that the 40GbE IP core does not have new valid data to send to the client on l4_rx_data[255:0]. l4_rx_data[255:0] remains unchanged for a second cycle.
- At marker 9, the IP core asserts l4_rx_endofpacket, indicating the end of the RX packet. l4_rx_empty[4:0] has a value of 0x1D, indicating that 29 least significant bytes of the last cycle of the RX packet empty.