AnsweredAssumed Answered

AD9648 Test Patterns in LVDS Mode

Question asked by dave@skutek.com on Aug 10, 2015
Latest reply on Aug 24, 2015 by DougI

I'm using an AD9648 with an LVDS interface (interleaved A/B data) to an FPGA.  I'm having trouble getting the data captured from the ADC properly in the FPGA, so I've enabled test patterns via SPI to try and troubleshoot. 

 

The problem I have is that I don't know if I'm getting the patterns that I should.  I've looked at AN-877 and it looks like Table 8 is for CMOS outputs and not LVDS.

 

I'd like to know what I should be getting for data output for the different test patterns when the ADC is in LVDS mode.   Is what I get below correct or not?

 

For example:

When the test register (0x0D) is set to Checkerboard (0100b), I get a samples like this:

A: 3FFF     B: 3FFF

     0000          0000

     3FFF         3FFF

     0000          0000

     3FFF         3FFF

     ...


When the test register is set to 1/0 Toggle (1001b), I get samples like this:

A: 3FFF     B: 0000

     0000         3FFF

     3FFF         0000

     0000         3FFF

     ...

 

When the test register is set to Ramp (1111b), I'm getting an odd data pattern:

n      A(dec) B(dec)    A(binary)               B(binary) 

...

0002 01935 -5935 0000011110001111 1110100011010001

0003 01806 -6064 0000011100001110 1110100001010000

0004 01935 -6064 0000011110001111 1110100001010000

0005 01806 -5935 0000011100001110 1110100011010001

0006 01677 -5935 0000011010001101 1110100011010001

0007 01548 -6064 0000011000001100 1110100001010000

0008 01677 -6064 0000011010001101 1110100001010000

0009 01548 -5677 0000011000001100 1110100111010011

0010 01419 -5677 0000010110001011 1110100111010011

0011 01290 -5806 0000010100001010 1110100101010010

0012 01419 -5806 0000010110001011 1110100101010010

0013 01290 -5677 0000010100001010 1110100111010011

0014 01161 -5677 0000010010001001 1110100111010011

0015 01032 -5806 0000010000001000 1110100101010010

...

 

The A side provides two values, then repeats them once.  (e.g. A0,A1,A0,A1,A2,A3,A2,A3...)

The B side provides two values, but repeats them differently (e.g. B0,B0,B1,B1,B0,B0,B1,B1,B2,B2,B3,B3,B2,B2,B3,B3...)

 

What should I see when I select the ramp function?

 

 

Thanks,
Dave

Outcomes