cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Highlighted
Observer
Observer
331 Views
Registered: ‎05-24-2020

JESD rx_sync issue on ZCU102 HPC0

Jump to solution

ADS54J66
JESD RX -  Line rate = 6.238Gbps, LMFS = 4421, K = 32, RefClk = 155.968MHz, CoreClk = 155.968MHz, Sysref always ON, Sysref = 2.437MHz

Subclass 1

This configuration works when the ADC is connected to HPC1 but it fails when connected to HPC0.

rx_sync toggles continuously after triggering sysref and there are disparity and not in table errors.

ADC connected to HPC0 rx_sync toggles after triggering sysrefADC connected to HPC0 rx_sync toggles after triggering sysref

 

ADC connected to HPC0 rx_sync toggles after triggering sysref

I have tried inverting rx lanes polarity by writing 1 to gt_rxpolarity and changing sysref frequency but none of this helped. I would appreciate your helpful guidance in debugging this issue. 

The AXI registers are
              
rd_rx00 07020400
rd_rx04 00000000
rd_rx08 00000001
rd_rx0C 00000000
rd_rx10 00000001

rd_rx18 00000000
rd_rx1C 00000fff
rd_rx20 00000001
rd_rx24 0000001f
rd_rx28 0000000f
rd_rx2C 00000001
rd_rx30 00000000
rd_rx34 00000001
rd_rx38 00010000
rd_rx3C 0000cfff

Lane  0         
rd_rx800 00000505
rd_rx804  000000bc
rd_rx808 0000001c
rd_rx80C 1c0802c9
rd_rx810 021c1cbc
rd_rx814 1c011c00
rd_rx818 00bcbc9c
rd_rx81C 00000002
rd_rx820 00000000
rd_rx824 35f61c1e
rd_rx828 00000000
rd_rx82C 00000000
rd_rx830 00000000

Lane 1
rd_rx840 00000303
rd_rx844 0000003c
rd_rx848 00000015
rd_rx84C 160100b2
rd_rx850 001a153c
rd_rx854 03011100
rd_rx858 002665ca
rd_rx85C 0001010d
rd_rx860 00000000
rd_rx864 3876c5c4
rd_rx868 00000000
rd_rx86C 00000000
rd_rx870 00000000


Lane 2
rd_rx880 00000505
rd_rx884 000000bc
rd_rx888 0000001c
rd_rx88C 1c1c0cbc
rd_rx890 021c1cbc
rd_rx894 1c011c01
rd_rx898 00bcbc9c
rd_rx89C 0000010b
rd_rx8A0 00000000
rd_rx8A4 3b7e92bf
rd_rx8A8 00000000
rd_rx8AC 00000000
rd_rx8B0 00000000


Lane 3
rd_rx8C0 00000304
rd_rx8C4 000000ad
rd_rx8C8 0000000e
rd_rx8CC 12090a12
rd_rx8D0 031d1bd0
rd_rx8D4 13001f01
rd_rx8D8 000f0f7b
rd_rx8D8 00000108
rd_rx8E0 00000000
rd_rx8E4 ffffffff
rd_rx8E8 00000000
rd_rx8EC 00000000
rd_rx8F0 00000000

 

OUTPUT when ADC connected to HPC1

ADC connected to HPC1ADC connected to HPC1

ADC connected to HPC1

Pin mapping
ADC connected to HPC1


set_property -dict {PACKAGE_PIN G27} [get_ports rxrefclk_p]
set_property -dict {PACKAGE_PIN G28} [get_ports rxrefclk_n]

set_property -dict {PACKAGE_PIN AE5 IOSTANDARD LVDS} [get_ports rxglblclk_p]
set_property -dict {PACKAGE_PIN AF5 IOSTANDARD LVDS} [get_ports rxglblclk_n]

set_property -dict {PACKAGE_PIN AH1 IOSTANDARD DIFF_HSTL_I_18} [get_ports rx_sysrefp]

set_property PACKAGE_PIN B33 [get_ports {rxp_in[0]}]
set_property PACKAGE_PIN C31 [get_ports {rxp_in[1]}]
set_property PACKAGE_PIN D33 [get_ports {rxp_in[2]}]
set_property PACKAGE_PIN E31 [get_ports {rxp_in[3]}]


set_property -dict {PACKAGE_PIN AE3 IOSTANDARD LVDS} [get_ports rx_syncp]
set_property -dict {PACKAGE_PIN T13 IOSTANDARD LVDS} [get_ports rx_alt_syncp]

ADC connected to HPC0


set_property -dict {PACKAGE_PIN G8} [get_ports rxrefclk_p]
set_property -dict {PACKAGE_PIN G7} [get_ports rxrefclk_n]

set_property -dict {PACKAGE_PIN Y4 IOSTANDARD LVDS} [get_ports rxglblclk_p]
set_property -dict {PACKAGE_PIN Y3 IOSTANDARD LVDS} [get_ports rxglblclk_n]

set_property -dict {PACKAGE_PIN Y2 IOSTANDARD DIFF_HSTL_I_18} [get_ports rx_sysrefp]

set_property PACKAGE_PIN K2 [get_ports {rxp_in[0]}]
set_property PACKAGE_PIN F2 [get_ports {rxp_in[1]}]
set_property PACKAGE_PIN J4 [get_ports {rxp_in[2]}]
set_property PACKAGE_PIN H2 [get_ports {rxp_in[3]}]

set_property -dict {PACKAGE_PIN V4 IOSTANDARD LVDS} [get_ports rx_syncp]
set_property -dict {PACKAGE_PIN T7 IOSTANDARD LVDS} [get_ports rx_alt_syncp]

@nathanx @roym @barriet 

0 Kudos
1 Solution

Accepted Solutions
Highlighted
Observer
Observer
251 Views
Registered: ‎05-24-2020

I resolved it by creating a new project in Vivado. I am not sure if changing the GT pin locations inside the same project is a bug in Vivado.

View solution in original post

0 Kudos
2 Replies
Highlighted
Observer
Observer
312 Views
Registered: ‎05-24-2020

I have tried 2.437MHz and 3.249MHz sysref frequencies but none has helped. Both these sysref refrequencies work when ADC connected to HPC1.
@roym 

0 Kudos
Highlighted
Observer
Observer
252 Views
Registered: ‎05-24-2020

I resolved it by creating a new project in Vivado. I am not sure if changing the GT pin locations inside the same project is a bug in Vivado.

View solution in original post

0 Kudos