E-Tile Transceiver PHY User Guide

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

3.1.6. Dynamic Reconfiguration Adaptation Flow

The following table lists the steps to perform dynamic reconfiguration adaptation.

Step Function Commands and Addresses Notes
1. If independent TX and RX reset is disabled, assert the reset signal. Otherwise, assert the tx_reset and rx_reset signals. Port.
2. Clear the register that indicates PMA attribute has been sent to the PMA.
  • Read-modify-write 0x8A[7] = 1.
Direct Avalon® memory-mapped write.

Asserted on power-up and must be cleared before first use.

3. Disable the PMA 29. Wait for tx_pma_ready and rx_pma_ready to deassert.
  • Attribute = 0x0001, data = 0x0000.
  • Poll return value until = 0x001
PMA attribute code and ports.
4. Trigger PMA Analog Reset 30.

Wait 70ms before polling 0x207.

  • 0x202, 0x201, 0x200 = 0x00.
  • 0x203 = 0x81.
  • Poll 0x207 until = 0x80
Opcode.
5. Load the new Native PHY IP settings using PMA attribute codes directly and Avalon® memory-mapped interface writes to the PCS/EMIB or use the MIF streamer. Direct Avalon® memory-mapped writes and PMA attribute codes.
6. Enable PMA29. Wait for tx_pma_ready and rx_pma_ready to assert.
  • Attribute = 0x0001, data = 0x0007.
  • Poll Return Value until = 0x001.
PMA attribute code and ports.
7. Set loopback and PRBS mode using Opcode.
  • Set TX and RX to PRBS31.
  • Enable Hard PRBS generator.
  • Enable internal serial loopback.
Or PMA attribute codes 31.
  • Set TX PRBS31 and turn on generator.
  • Set RX PRBS31
  • Enable internal serial loopback.

Wait 70ms before polling 0x207.

Use Opcode to SET_OPERATION_MODE:
  • 0x200 = 0x0D.
  • 0x201 = 0x00.
  • 0x202 = 0x00.
  • 0x203 = 0x93.
  • Poll 0x207 until = 0x80.
Or use PMA attribute codes:
  • Attribute = 0x0002, data = 0x0125.
  • Attribute = 0x0002, data = 0x0235.
  • Attribute = 0x0008, data = 0x0101.
Opcode or PMA attribute codes.
8. Set initial adaptation effort level. Use PMA attribute code:
  • Attribute = 0x002C, data = 0x0118.
  • Attribute = 0x006C, data = 0x0001.
PMA attribute code.

Data = 0x01 is full effort.

9. If using a stored PMA configuration, choose the PMA configuration. If not, skip this step.
  • Write 0x40143 = 0x80 (profile 0).
  • Read 0x40144[0] until = 1.
Direct Avalon® memory-mapped write.

Stored PMA configuration is only accessed from channel 0.

0x80 = configuration 0, 0x81 = configuration 1 and so on.
10. If using a stored PMA configuration, load the configuration into the transceiver channel32. If not, skip this step.

Wait 70ms before polling 0x207.

Use Opcode to LOAD_PMA_CONFIGURATION:
  • 0x200 = 0x00.
  • 0x201 = 0x00.
  • 0x202 = 0x00.
  • 0x203 = 0x94.
  • Poll 0x207 until = 0x80.
Opcode.

0x200[0] = 0, load configuration for initial adaptation.

11. Perform initial adaptation. Use PMA attribute code:
  • Attribute = 0xA, data = 0x1.
PMA attribute code.
12. Verify that the initial adaptation status is complete using PMA attribute code.
  • Attribute = 0x0126, data = 0x0B00
  • Repeat this step until 0x88[0] = 0 to confirm adaptation is no longer in process.
PMA attribute code.
13. Move to Mission/User Mode when external traffic is available:
  • Disable internal serial loopback31.
  • Disable TX Hard PRBS generator.
Or use PMA attributes codes:
  • Disable internal serial loopback.
  • Disable TX Hard PRBS generator.

Wait 70ms before polling 0x207.

Use Opcode SET_OPERATION_MODE:
  • 0x200 = 0x1E.
  • 0x201 = 0x00.
  • 0x202 = 0x00.
  • 0x203 = 0x93.
  • Poll 0x207 until = 0x80.
Or use PMA attribute codes:
  • Attribute = 0x2, data = 0x3FF.
  • Attribute = 0x8, data = 0x100.
Opcode or PMA attribute codes. Opcode disables internal serial loopback and PRBS. This step can also be done using PMA attribute codes.
14. Set initial adaptation effort level (if you want to change from last time it was set). Use PMA attribute code:
  • Attribute = 0x002C, data = 0x0118.
  • Attribute = 0x006C, data = 0x0001.
PMA attribute code.

Data = 0x01 is full effort.

15. Perform initial adaptation 33. Use PMA attribute code:
  • Attribute = 0xA, data = 0x1.
PMA attribute code.
16. Verify that the initial adaptation status is complete using PMA attribute code.
  • Attribute = 0x0126, data = 0x0B00.
  • Repeat this step until 0x88[0] = 0 to confirm that adaptation is no longer in process.
PMA attribute code.
17. If independent TX and RX reset is disabled, deassert the reset signal. Otherwise, deassert the tx_reset and rx_reset signals. Port.
18. If using a stored PMA configuration, choose the PMA configuration. If not, skip this step.
  • Write 0x40143 = 0x80 (profile 0).
  • Read 0x40144[0] until = 1.
Direct Avalon® memory-mapped write.

Stored PMA configuration is only accessed from channel 0.

0x80 = configuration 0, 0x81 = configuration 1 and so on.
19. If using a stored PMA configuration, load the configuration into the transceiver channel. If not, skip this step.

Wait 70ms before polling 0x207.

Use Opcode to LOAD_PMA_CONFIGURATION:
  • 0x200 = 0x00.
  • 0x201 = 0x00.
  • 0x202 = 0x00.
  • 0x203 = 0x94.
  • Poll 0x207 until = 0x80.
Opcode.

0x200[0] = 0, load configuration for initial adaptation.

20. Start continuous adaptation 33. Use PMA attribute code
  • Attribute = 0xA, data = 0x6.
Opcode or PMA attribute code.
Note: Hard PRBS checker is not valid while continuous adaptation is running.
21. Optional: Check the link status with rx_is_lockedtodata (clear the traffic checker, and verify that it is error free). Port
22. Start transmitting and receiving data.
30 Refer to PMA Analog Reset.
31 For how to enable and disable internal serial loopback, refer to 0x0008: Internal Serial Loopback and Reverse Parallel Loopback Control.
33 For PMA attributes for adaptation, refer to 0x000A: Receiver Tuning Controls.