AN 705: Scalable 10G Ethernet MAC using 1G/10G PHY

ID 683066
Date 5/13/2016
Public

Visible to Intel only — GUID: sss1403172069802

Ixiasoft

Document Table of Contents

1.7.4.1. Test Scenario for Design Example without IEEE 1588v2

This test case uses the following configuration:

  • 2 channels
  • Circular loopback
  1. The channel is configured to 10G mode by default during start-up.
  2. Perform basic MAC configuration, PHY speed configuration and FIFO configuration for all 2 channels.
  3. Wait for the design example to assert the channel_ready signals for all 2 channels.
  4. Send the following packets:
    • Normal data frame, 64Bytes
    • VLAN data frame, multicast, 1500Bytes
    • Normal data frame, 1500Bytes
    • SVLAN data frame, broadcast, 64Bytes
    • VLAN data frame, unicast, 500Bytes
    • SVLAN data frame, 1500Bytes
  5. Repeat Step 2 to Step 4 for 1G, 100M and 10M speed mode.
    Note: The Avalon_st_rxstatus_valid and Avalon_st_txstatus_valid signals are not aligned to the Avalon_st_rx_endofpacket and Avalon_st_tx_endofpacket signals as stated in the 10Gbps Ethernet MAC MegaCore Function User Guide. This is due to the Avalon_st_rx_endofpacket and Avalon_st_tx_endofpacket signals are coming from an internal SC FIFO which creates a certain delay. You should observe the Avalon_st_rxstatus_valid and Avalon_st_txstatus_valid signals that correspond to the Avalon_st_rx_endofpacket and Avalon_st_tx_endofpacket signals directly from the MAC.
  6. When the simulation ends, refer to the transcript window for channel 0 MAC TX and RX statistic counter results.
    Figure 6. MAC TX and RX Statistic Counter Results
    # ------------------------ # Channel 0: TX Statistics # ------------------------ # framesOK = 24 # framesErr = 0 # framesCRCErr = 0 # octetsOK = 20080 # pauseMACCtrlFrames = 0 # ifErrors = 0 # unicastFramesOK = 16 # unicastFramesErr = 0 # multicastFramesOK = 4 # multicastFramesErr = 0 # broadcastFramesOK = 4 # broadcastFramesErr = 0 # etherStatsOctets = 20608 # etherStatsPkts = 24 # etherStatsUndersizePkts = 0 # etherStatsOversizePkts = 0 # etherStatsPkts64Octets = 0 # etherStatsPkts65to127Octets = 8 # etherStatsPkts128to255Octets = 0 # etherStatsPkts256to511Octet = 4 # etherStatsPkts512to1023Octets = 0 # etherStatsPkts1024to1518Octets = 12 # etherStatsPkts1519OtoXOctets = 0 # etherStatsFragments = 0 # etherStatsJabbers = 0 # etherStatsCRCErr = 0 # unicastMACCtrlFrames = 0 # multicastMACCtrlFrames = 0 # broadcastMACCtrlFrames = 0 # # ------------------------ # Channel 0: RX Statistics # ------------------------ # framesOK = 24 # framesErr = 0 # framesCRCErr = 0 # octetsOK = 20080 # pauseMACCtrlFrames = 0 # ifErrors = 0 # unicastFramesOK = 16 # unicastFramesErr = 0 # multicastFramesOK = 4 # multicastFramesErr = 0 # broadcastFramesOK = 4 # broadcastFramesErr = 0 # etherStatsOctets = 20608 # etherStatsPkts = 24 # etherStatsUndersizePkts = 0 # etherStatsOversizePkts = 0 # etherStatsPkts64Octets = 0 # etherStatsPkts65to127Octets = 8 # etherStatsPkts128to255Octets = 0 # etherStatsPkts256to511Octet = 4 # etherStatsPkts512to1023Octets = 0 # etherStatsPkts1024to1518Octets = 12 # etherStatsPkts1519OtoXOctets = 0 # etherStatsFragments = 0 # etherStatsJabbers = 0 # etherStatsCRCErr = 0 # unicastMACCtrlFrames = 0 # multicastMACCtrlFrames = 0 # broadcastMACCtrlFrames = 0 # # # Simulation PASSED
If all the total 24 packets have been received successfully to channel 0 Avalon_st RX interface, the transcript will display Simulation PASSED.