SNLA473 November   2024 DP83867CS , DP83867E , DP83867IS , DP83869HM , DP83TC811S-Q1 , DP83TC812S-Q1 , DP83TC813S-Q1 , DP83TC814S-Q1 , DP83TC817S-Q1 , DP83TC818S-Q1 , DP83TG720S-Q1 , DP83TG721S-Q1

 

  1.   1
  2.   Abstract
  3.   Trademarks
  4. 1Troubleshooting the MAC Interface - SGMII
    1. 1.1 Verify Bootstrap Configurations
      1. 1.1.1 SGMII Bootstrap Configuration for DP83TG720S-Q1
    2. 1.2 Read and Check Register Values
    3. 1.3 Auto-Negotiation
    4. 1.4 Throughput and Loopback Testing
      1. 1.4.1 Bidirectional Throughput Testing
      2. 1.4.2 RX and TX Throughput Testing
      3. 1.4.3 RX and TX Throughput Testing with Fixed Number of Packets
      4. 1.4.4 Loopback Testing
        1. 1.4.4.1 MII Loopback
        2. 1.4.4.2 Reverse Loopback
    5. 1.5 Check the Clock Signal
    6. 1.6 Measure the SGMII Eye
      1. 1.6.1 SGMII Eye Mask Requirements
    7. 1.7 SGMII Layout
  5. 2Summary
  6. 3References

RX and TX Throughput Testing with Fixed Number of Packets

For Single Pair Ethernet devices released after 2018, there are RX/TX packet counter and error counter registers that can be found in the data sheet. For example, in the DP83TG720S-Q1 these registers are 0x639-0x63E. Follow these steps to check communication in RX and TX direction:

  1. Power on and link up the system under test.
  2. Disable any background packets in the system.
  3. Read 0x639-0x63E to clear the registers.
  4. Send 100 packets across the system in both directions.
  5. Check that the TX/RX counters are incrementing correctly and that there are no CRC errors in registers, the registers needs to have the following values: 0x639=0x64, 0x63A=0x0, 0x63B=0x0, 0x63C=0x64, 0x63D=0x0. 0x63E=0x0.

Figure 1-7 shows an example of using DP83TC812's packet counter registers to check the RX and TX communication. The script ./packetcounters.sh prints out registers 0x639-0x63E in order. The register values indicate 10 packets are sent and 10 packets are received in the PHY and there are no errors. Therefore, RX and TX communication are working.

 Checking Throughput and Packet Counters with DP83TC812 Figure 1-7 Checking Throughput and Packet Counters with DP83TC812

If an Ethernet PHY without packet counter registers is being used or the background packets cannot be disabled in the system, Wireshark or Tcpdump can be used to sniff the packets. Follow these steps to check communication in TX direction:

  1. Power on and link up the system under test.
  2. Start running tcpdump or wireshark on the link partner's terminal.
  3. Ping/send 10 packets from the device under test (DUT) to the link partner. See Figure 1-8.
  4. If all 10 packets are received, then there can be 10 requests that show up in wireshark/tcpdump. See Figure 1-9.
 Sending 10 Packets from DUT to Link Partner Figure 1-8 Sending 10 Packets from DUT to Link Partner
 Example TCP Dump Log Figure 1-9 Example TCP Dump Log

The steps for testing the RX direction are similar except the role of the link partner and DUT are reversed.