Post Go back to editing

tx_adxcvr: adxcvr_drp_wait_idle: Timeout!

Thread Summary

The user encountered a timeout error in the adrv9009 no_os program when initializing 32 lanes with the XCZU19EG FPGA and 8 ADRV9009 chips. The issue was resolved by modifying the axi_adxcvr IP core, as the 2022_R2 version does not support 32 lanes. The 16-lane configurations with each HMC7044 and 4 ADRV9009 chips worked correctly.
AI Generated Content
Category: Software
Product Number: ADRV9009
Software Version: 3.6.5

I got an error when using the adrv9009 no_os program:
tx_adxcvr: adxcvr_drp_wait_idle: Timeout!ERR: ../src/platform/xilinx_transceiver.c:141:xilinx_xcvr_drp_read(): xilinx_xcvr_drp_read: Failed to read reg 16-0x0014: -1

hardware information:
FPGA is XCZU19EG-ffvc1760-2, 
clock is 2 pcs of hmc7044, transceiver is 8 pcs of adrv9009, each HMC7044 provides clocks for four ADRV9009 chips.

Develop using Vivado 2022.2 and Vitis 2022.2

Refer to the XCZU102 + FMCOMMS8 project and configure IP cores such as xcvr and jesd to 32 lanes.

It is normal to conduct tests with the first HMC7044 and the first four ADRV9009s, and it is also normal to conduct tests with the second HMC7044 and the last four ADRV9009s. The projects for these two tests also refer to the XCZU102 + FMCOMMS8 project, and the IP cores such as XCVR and JESD are configured to 16 lanes.

So I think there should be no problem with my hardware. However, the project of 8 ADRV9009 chips will report an error at fpga_xcvr_init(). May I ask how I should troubleshoot it?

Parents
  • If i understand correctly, 1xHMC7044 + 4x ADRV9009 (16lanes) is working fine and other  1xHMC7044 + 4x ADRV9009 (16lanes) are working fine . But when we are combining all these i.e. when it is with 32 lanes we are facing this issue . Is my understanding correct?

    Can you check if the no of lanes, JESD config parameters etc are set and matching along with the HDL and Hardware ? Just ensure there is no issue/mismatch with HDL lane order , JESD IP lane mapping , Serializer lane order etc.

    Have you checked the clock topology if its fine ? can you please share your test setup block diagram?

  • Thank you very much for your reply. Your understanding is correct.
    I have solved this problem. I'm leaving the solution here for others to refer to.
    The Vivado version I used is 2022.2, and the reference HDL and NO_OS I used are also version 2022_R2. The axi_adxcvr in the HDL repository of this version does not support 32 lanes. As shown in the figure, it is a comparison between the mainline version and 2022_R2. You can make corresponding modifications.

Reply Children
No Data