1.5. Simulating the Design Example Testbench
Figure 7. Procedure
Follow these steps to simulate the testbench:
- Change to the testbench simulation directory <design_example_dir>/example_testbench.
- Run the simulation script for the supported simulator of your choice. The script compiles and runs the testbench in the simulator. Refer to the table Steps to Simulate the Testbench.
- Analyze the results. The successful testbench sends ten packets, receives ten packets, and displays "Testbench complete."
Table 3. Steps to Simulate the Testbench Simulator Instructions Mentor Graphics ModelSim* In the command line, type vsim -do run_vsim.do If you prefer to simulate without bringing up the ModelSim GUI, type vsim -c -do run_vsim.do
Note: The ModelSim* - Intel® FPGA Edition simulator does not have the capacity to simulate this IP core. You must use another supported ModelSim simulator such as ModelSim* SE.Cadence NCSim In the command line, type sh run_ncsim.sh Cadence Xcelium* In the command line, type sh run_xcelium.sh Synopsys VCS* / VCS* MX In the command line, type sh run_vcs.sh or sh run_vcsmx.sh Note: run_vcs.sh is only available if you select Verilog as the Generated HDL Format. If RS-FEC is enabled or you select VHDL as the Generated HDL Format, you must simulate the testbench with a mixed language simulator using run_vcsmx.sh.
The successful test run displays output confirming the following behavior:
- Waiting for the ATX PLLs to lock.
- Waiting for RX transceiver reset to complete.
- Waiting for RX alignment.
- Sending ten packets.
- Receiving ten packets.
- Displaying Testbench complete.
The following sample output illustrates a successful simulation test run:
ATX PLLs Locked
***************************************************
*************** Transmit Ready *****************
***************************************************
Waiting for the receiver to be ready
Receive transceivers are out of reset
Waiting for RX alignment
Rx Alignment Status Update 1/4: Word/Block lock is acquired over all virtual lanes
Rx Alignment Status Update 2/4: Virtual lanes Ordered
Rx Alignment Status Update 3/4: RX deskew lock acquired
Rx Alignment Status Update 4/4: RX alignment lock acquired
Rx is fully aligned with Tx
***************************************************
************** Receive Ready ******************
***************************************************
Transmitting test data
** Sending Packet 1...
** Sending Packet 2...
** Sending Packet 3...
** Sending Packet 4...
** Sending Packet 5...
** Sending Packet 6...
** Sending Packet 7...
** Sending Packet 8...
** Sending Packet 9...
** Sending Packet 10...
** Received Packet 1...
** Received Packet 2...
** Received Packet 3...
** Received Packet 4...
** Received Packet 5...
** Received Packet 6...
** Received Packet 7...
** Received Packet 8...
** Received Packet 9...
** Received Packet 10...
**
** Testbench complete.
**
*****************************************