This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

ADS4249: ADS4249 , ALTLVDS_RX , ALTPLL

Part Number: ADS4249
Other Parts Discussed in Thread: 4213

In reply to FRK:

Dear

Can you please suggest me any Xilinx IP core compatible with Altera Megafunction ALTLVDS_RX and ALTPLL. I am configuring ADS4249 with Xilinx VC 707 kit. After going through FPGA Firmware Example of How To Interface Altera FPGAs to High-Speed LVDS-Interface Data Converters TIDA-00069 , I need Xilinx IP Core for Altera megafunctions used in the example code.

Best Regards

FRK

  • Hi,

    That TI Design shows an example of using the Altera functions to implement the interface to our LVDS data converters, both ADC and DAC, and this TI Design made use of the work done in our TSW1400 capture card that is used in conjunction with our ADC and DAC EVMs.   We do not have a similar design built around the Xilinx functions.   We did have the older TSW1200 capture card that would interface with the LVDS ADC EVMS, including the ADS4249 that you mention, but we did not turn that code into a TI Design.   The Xilinx functions that we used in the TSW1200 (built around the Virtex4) was the IDDR cell and the IDELAY cell.  Below is a sketch of how the IDDR cell and IDELAY cells are used to implement the ADC interface.   The IDDR cell latches the incoming DDR data on the rising and falling edges of the LVDS clock, and the IDELAY cell is used to add delay to either the clock or data as needed to meet setup/hold timing into the IDDR cell.  in your design, you would need to use the Xilinx static timing analysis tools to determine what IDELAY setting you would need to close timing as the timing would be specific to your Virtex7 FPGA that you would be using.  If you provide an email address then I can send the source code from the TSW1200 as an example to look at.

    Regards,

    Richard P.

  • Dear Richard P

    Thank you for explanatory reply . its very helpful 

    I also going through Xilinx Application note XAPP866,1071 and UG471 . with you above exaplantion . I am sure that I will be able to do the task.

    Thanks again

    my email id is engrfaseeh3@gmail.com

  • Hi,
    Source code sent to the address provided.
    Regards,
    Richard P.
  • Hi,

    I am having confustion about using lvds IOSTANDARD, can you guys tell me which IOSTANDARD I should use while connecting ads4249 with xilinx kit vc707.

    Thanks
  • FRK,

    LVDS is a signaling interface that is independent of supply voltage, and was meant to be independent of supply voltage from creating of the standard.   The LVDS signal swing is defined as a 3.5mA current mode signal into a 100 ohm load, giving rise to a 350mV signal swing, nominally centered around a common mode of 1.2V.     The supply voltage of a device that meets these specs is immaterial.   An LVDS device with a 3.3V supply would still meet the 350mV around 1.2V definition as would an LVDS device with a 2.5V supply.  You should be able use whatever LVDS standard is available on the VC707.  

     

    Regards,

     

    Jim

     

     

  • Dear 

     As ADS4249 is 14 bit sample size . At the output of ADS4249 there is Digital version ( in the form of I & Q )  of Analog signal.My question it is possible or what is technique to separate 14 bit Sample into I Component and Q component .

  • FRK,

    Are you trying to use this part in the multiplexed mode of operation? If so, see section 8.4.1.6 of the data sheet. The output clock edge determines whether the data valid is from CHA or CHB. This is what you would use to separate the I data from the Q data. Note that this mode is only recommended when sampling below 80Msps.

    Regards,

    Jim 

  • Thanks Jim

    After getting 14 bit data from ADC . I want to perform FFT on received 14 bit data . For that I want to pass ADC data for FFT in the form of real and imaginary component e.g [ 3+2i ] .how to get real and imaginary component from received 14 bit data .

    Thanks 

  • Jim Seton
    Please suggest me any document for ADC Parallel data interface with Xilinx 7 series FPGA .
  • FRK,

    This document refers to an interface to an Altera device but most of it is still applicable to a Xilinx FPGA.

    Regards,

    Jim 

    4213.Interfacing to FPGA's app note.pdf

  • FRK,
    In regards to your other question "After getting 14 bit data from ADC . I want to perform FFT on received 14 bit data . For that I want to pass ADC data for FFT in the form of real and imaginary component e.g [ 3+2i ] .how to get real and imaginary component from received 14 bit data ", I am not sure what you need help with. The ADC will only have one or the other data. What is feeding your ADC? Are you using two ADC's? Please send a schematic or block diagram se we can better understand your setup.
    Regards,
    Jim
  • as stated in Datasheet of ADS4249 "

    Even data bits (D0, D2, D4, and so forth) are output at the CLKOUTP rising edge and the odd data bits (D1, D3,
    D5, and so forth) are output at the CLKOUTP falling edge Both the CLKOUTP rising and falling edges must be used to capture all the data bits,." my question is that we not used only rising edge or only falling for catpure  all data bits. why we even at one edge and odd at other .Thanks

  • FRK,

    Since the device only has 7 differential output pairs per ADC, to get 14 bits of data out, the bus is shared between even bits and odd bits. The user must combine these to make a complete 14 bit sample. The even bits are valid on the rising edge of the output clock and the odd bits are valid on the falling edge of this clock. One complete output clock cycle provides two bits of data. This is only true in DDR LVDS mode. In CMOS output mode, there are 14 outputs and the data on all of these is valid on every rising edge of CLKOUT.  

    Regards,

    Jim 

  • FRK,

    Are you using one ADC or two out of the ADS4249? I cannot tell from your block diagram.

    Jim

  •  Dear Jim,

    Thanks for your kind reply,

    It means that I should use one IBUFDS each for every data and clock differential pairs to make it one bit output and so on for every 7 differential  data pairs, and then we should receive our data on each raising and falling edges of clock like in the picture that i have attached.

    and yes I am using one ADC and I am using its channel A only.

    and one more thing, you have provided me a link for parallel interface in your early post (4213.Interfacing to FPGA's app note.pdf) but after going through i have found that there is description for serial interface in that document, can you suggest something for parallel interface.

    Thanks and Regards

  • DEAR

    I am waiting for your kind reply

    Best Regards

  • FRK,

    See if this attachment helps. Also below is from an old post to another customer with a similar issue.

    Hi,

    That TI Design shows an example of using the Altera functions to implement the interface to our LVDS data converters, both ADC and DAC, and this TI Design made use of the work done in our TSW1400 capture card that is used in conjunction with our ADC and DAC EVMs.   We do not have a similar design built around the Xilinx functions.   We did have the older TSW1200 capture card that would interface with the LVDS ADC EVMS, including the ADS4249 that you mention, but we did not turn that code into a TI Design.   The Xilinx functions that we used in the TSW1200 (built around the Virtex4) was the IDDR cell and the IDELAY cell.  Below is a sketch of how the IDDR cell and IDELAY cells are used to implement the ADC interface.   The IDDR cell latches the incoming DDR data on the rising and falling edges of the LVDS clock, and the IDELAY cell is used to add delay to either the clock or data as needed to meet setup/hold timing into the IDDR cell.  in your design, you would need to use the Xilinx static timing analysis tools to determine what IDELAY setting you would need to close timing as the timing would be specific to your Virtex7 FPGA that you would be using.  If you provide an email address then I can send the source code from the TSW1200 as an example to look at.

    Regards,

    Richard P.

    CaptureCardDesign.pdf