cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Highlighted
Contributor
Contributor
8,296 Views
Registered: ‎07-24-2009

JESD data corruption (KC705+ADC16DX370EVM)

Jump to solution

Hello!

I need some advice with using ADC16DX370. I'm trying to evaluate set of KC705+[optional TSW14J10]+ADC16DX370EVM with Xilinx JESD core. 1 lane mode is used; ADC is controlled via TI's GUI. Link is successfully established; SYNC is high and stable. But received data are corrupted in a very strange manner. When ADC Test Pattern (0x70[2]) is enabled four values are repeated: -31032,0, 31032,0. It differs from [0, 26280, 0, –26328] declared in the ADC's datasheet.
When any JESD Test Pattern is enabled (ramp with step 1 for example) it produce chaotic data with
weak track of true sequence.

Changing TX Driver parameters have no affects to link stability or data corruption. Enabling scrambler do not improve results also. I tried JESD cores 6.1 and 6.2 (Vivado 2015.2, 2015.3) at line frequencies 7.4Gbps (maximum allowed for ADC) and 4.0Gbps with same results. Reference clock for FPGA is 1/2 of sampling rate (1/40 of lane speed). It is generated at EVM board. Timing constraints in FPGA project are met.

 

Several examples of data for ramp mode with step =1 :

f8d3, f8d2, f8d1, f8cf, f8d0, f8ce,..

e3e3, e3fd, e3e5, e3fe, e3ff, e3e5, fd00, fd01, fd02,..

04b8, 04a6, 04a5, 04bb, 04a3, 04bd, 04be, 04bf, 0460, 0461, 0462, 047c, 0464, 047a

Examples of wave forms (with switching of high byte) is shown below

jesd1.png

jesd2.png

jesd3.png

 

Please note that period of higher bits is power of 2 (64, 128, etc). They are not randomly changes at each sample. But they switches to incorrect values while counting. The only correct bit is 5 (it named as rx_tadata[13]).

 

So, it looks as parallel data corruption (not serial link corruption). Unfortunately I cannot determine the source of problem: ADC or Xilinx JESD core.

 

Could you make any suggestion, please? Thank you.

0 Kudos
1 Solution

Accepted Solutions
Highlighted
Contributor
Contributor
198 Views
Registered: ‎07-24-2009

Hello. I not sure but it seems that ADC16DX370EVM has inverted polarity on JESD data lines. Perhaps the issue was caused by that fact. Good luck!

View solution in original post

5 Replies
Highlighted
Contributor
Contributor
8,284 Views
Registered: ‎07-24-2009
PS Important fact: same data sequence is repeated permanently. When Logic analyzer's trigger is set to any data value it captures same sequence everytime (for ramp pattern). For example:

ffe5, fffb, ffe3, fffd, fffe, ffff, 0000, 0001, 0002, 001c, 0004, 001a, 0019, 0007, 0008, 0016, ...
0 Kudos
Highlighted
Scholar
Scholar
1,953 Views
Registered: ‎04-26-2012

@5506273   "But received data are corrupted in a very strange manner."

 

Found this old unanswered thread tonight while searching for something else; thought I'd mention a likely source of JESD ramp pattern errors for anyone else stumbling across this thread:

 

When using JESD204 devices with Xilinx's transceivers, make sure the Xilinx receiver equalization mode is set to LPM, ***NOT*** to DFE, as the DFE equalizer doesn't work well with the JESD204 8B/10B patterns.

 

AR# 67043 JESD204 v6.1, v6.2, v7.0 and JESD204 PHY v2.0, v3.0, v3.1 (2015.1, 2015.2, 2015.3, 2015.4, 2016.1) - Defaults to DFE Equalisation mode

 

Also worth noting, as of 2016 or so when I first tripped over this problem, ADI's bare-metal reference design C code for Xilinx evaluation boards would incorrectly select the DFE equalization mode when setting up the transceivers.

 

-Brian

 

 

0 Kudos
Highlighted
Contributor
Contributor
209 Views
Registered: ‎10-03-2017

More than five years after this question we are facing the same problem in the same exact way, as we get the same sequence for the ramp pattern 

 

ffe5, fffb, ffe3, fffd, fffe, ffff, 0000, 0001, 0002, 001c, 0004, 001a, 0019, 0007, 0008, 0016, ..

 

Unfortunately, @brimdavis advice didn't help. We are using the 7.2 (rev 3) version of the JESD rx ip. According to its release notes:

2017.3:
* Version 7.2
* Bug Fix: Fixed issue causing RXLPMEN values to be incorrect when shared logic in the core is used AR69507

Still, we tried the solution proposed in Case 1 in the AR#67043, but to no avail.

@5506273 we know it has been some time, but did you solve the issue or can you give us some hint about it?

Thanks

 

 

0 Kudos
Highlighted
Contributor
Contributor
199 Views
Registered: ‎07-24-2009

Hello. I not sure but it seems that ADC16DX370EVM has inverted polarity on JESD data lines. Perhaps the issue was caused by that fact. Good luck!

View solution in original post

Highlighted
Contributor
Contributor
181 Views
Registered: ‎10-03-2017

That was it @5506273, we changed the polarity on the ADC and it worked!

Thanks!

0 Kudos