GTS Transceiver PHY User Guide: Agilex™ 5 FPGAs and SoCs

ID 817660
Date 10/17/2025
Public
Document Table of Contents

3.14.2.2. GTS Attribute Access Method Example 2: Enable or Disable Internal Serial Loopback Mode (RX Manual Equalization Mode)

The following examples demonstrate the steps to enable and disable internal serial loopback for the GTS PMA lane 0 of a quad when RX auto adaptation mode is disabled.

To Enable Serial Loopback 41

  1. Assert TX and RX reset.
  2. Wait for TX and RX reset ACK.
  3. Write 0xF9A00F to address 0xA403C.
  4. Poll address 0xA4040 until bit 14 = 0 and bit 15 = 1.
  5. Write 0xF9200F to address 0xA403C.
  6. Poll address 0xA4040 until bit 14 = 0 and bit 15 = 0.
  7. Write 0x00A003 to address 0xA403C.
  8. Poll address 0xA4040 until bit 14 = 0 and bit 15 = 1.
  9. Write 0x002003 to address 0xA403C.
  10. Poll address 0xA4040 until bit 14 = 0 and bit 15 = 0.
  11. Write 0x06A040 to address 0xA403C.
  12. Poll address 0xA4040 until bit 14 = 0 and bit 15 = 1.
  13. Write 0x062040 to address 0xA403C.
  14. Poll address 0xA4040 until bit 14 = 0 and bit 15 = 0.
  15. Deassert TX and RX reset.
  16. Wait for TX and RX reset ACK deassertion.
  17. Wait until the RX channel is out of reset by checking 0xA00D8[20] = 1.
  18. Wait for RX status signal to assert high, by checking 0x97814[0] = 1.
  19. Write 0x0 to 0x919B4[28] to set up the serial loopback path.
  20. Write 0x1 to 0x9781C[1] to enable the serial loopback mode.
Once you have placed the channel in serial loopback mode, if you want to reset your channel, you have to perform the following steps:
  1. Assert the TX and RX reset.
  2. Wait for the TX and RX reset ACK.
  3. Write 0x0 to 0x9781C[1] to disable the serial loopback mode.
  4. Deassert the TX and RX reset.
  5. Wait for the TX and RX reset ACK deassertion.
  6. Wait until the RX channel is out of reset by checking 0xA00D8[20] = 1.
  7. Wait for RX status signal to assert high by checking 0x97814[0] = 1.
  8. Write 0x0 to 0x919B4[28] to set up the serial loopback path.
  9. Write 0x1 to 0x9781C[1] to enable the serial loopback mode.

You can then check the tx_ready, rx_ready, rx_is_lockedtoref, and rx_is_lockedtodata status signals to ensure that the link is in internal serial loopback mode.

To Disable Internal Serial Loopback

  1. Assert TX and RX reset.
  2. Wait for TX and RX reset ACK.
  3. Write 0xF9A00F to address 0xA403C.
  4. Poll address 0xA4040 until bit 14 = 0 and bit 15 = 1.
  5. Write 0xF9200F to address 0xA403C.
  6. Poll address 0xA4040 until bit 14 = 0 and bit 15 = 0.
  7. Write 0x00A003 to address 0xA403C.
  8. Poll address 0xA4040 until bit 14 = 0 and bit 15 = 1.
  9. Write 0x002003 to address 0xA403C.
  10. Poll address 0xA4040 until bit 14 = 0 and bit 15 = 0.
  11. Write 0x00A040 to address 0xA403C.
  12. Poll address 0xA4040 until bit 14 = 0 and bit 15 = 1.
  13. Write 0x002040 to address 0xA403C.
  14. Poll address 0xA4040 until bit 14 = 0 and bit 15 = 0.
  15. Deassert TX and RX reset
  16. Wait for TX and RX reset ACK deassertion.
41 After the channel is placed in GTS PMA channel in internal serial loopback mode and if you need to reset your TX link, you must perform a reset on both the TX and RX PMA of the channel, instead of just a TX reset.