GTS Ethernet Intel® FPGA Hard IP User Guide

ID 817676
Date 7/08/2024
Public
Document Table of Contents

5.3.1. Simulation Testbench Flow

The testbench executes the following activities for MAC+PCS mode:
  1. Assert global reset (i_rst_n) to reset the GTS Ethernet Intel® FPGA Hard IP.
  2. Wait until reset acknowledgment. The o_rst_ack_n signal goes low.
  3. Deassert the global reset.
  4. Wait until o_tx_lanes_stable bit is set to 1, indicating TX path is ready.
  5. Wait until o_rx_pcs_ready bit is set to 1, indicating RX path is ready.
  6. Instruct packet client to transmit data by writing 0x1 to bit 0 of hardware packet client control hw_pc_ctrl register 0x0.
  7. Read RX packet data information from the following registers.
    • Set snapshot enable bit to read the RX packet statistics (set bit 6 of hw_pc_ctrl register 0x00 to 1’b1).
    • 0x38/0x3C: RX start of packet counter (LSB/MSB)
    • 0x40/0x44: RX end of packet counter (LSB/MSB)
    • 0x48/0x4C: RX error counter (LSB/MSB)
    • Disable snapshot bit (set bit 6 of hw_pc_ctrl register 0x00 to 1'b0).
  8. Read TX packet data information from the following registers:.
    • Set snapshot enable bit to read the TX packet statistics (set bit 6 of hw_pc_ctrl register 0x00 to 1’b1).
    • 0x20/0x24: TX start of packet counter (LSB/MSB)
    • 0x28/0x2C: TX end of packet counter (LSB/MSB)
    • 0x30/0x34: TX error counter (LSB/MSB)
    • Disable snapshot bit (set bit 6 of hw_pc_ctrl register 0x00 to 1'b0).
  9. Compare read counters to ensure 16 packets were sent and received.
  10. Instruct packet client to stop data transmission and clear the counters by writing 0x100 ( clearing bit 0 and setting bit 8) of hardware packet client control hw_pc_ctrl register 0x00.
  11. Perform Avalon® memory-mapped interface test. Write and read the following Ethernet IP registers.
    • 0x104: Scratch register
    • 0x108: Ethernet IP soft reset register
    • 0x014: Lower 32 bits of TX MAC Source address Register
    • 0x018: Upper 16 bits of TX MAC Source address Register
    • 0x01C: MAX RX frame size register