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.

Capturing 2 channels from ADS6245EVM with TSW1200EVM

Other Parts Discussed in Thread: ADS6245, ADS6445

Having read the posts on this subject, I installed a trial copy of MATLAB and the Instrument Control Toolbox.  I have recently purchased the evaluation module for the ADS6245 dual channel ADC and the TSW1200 EVM.  MATLAB scripts return this info: FPGA version is 0.21 and further details is 4.  I downloaded the folder 8322.TSW1200_64xx posted by R. Prentice.  Unfortunately, it looks like this modified version of MATlab of the makeCapture.m file and other called scripts does not support dual capture with the ADS6245.  I tried some other versions of the MATLAB scripts that did run and look like they are capturing two channel data, but I am unable to decipher the data.  Can you point me to some MATlab code that is known to work for simultaneous two channel capture from the ADS6245?  Alternately, give me some clues as to how the two channel data is encoded in the buffer of the Xilinx chip when interfaced to the ADS6245?

  • Hi,

    Ah, yes - I can see why the Matlab code would not have a selection for capturing from both channels of the ADS6245. 

    The reason is that the firmware in the TSW1200 FPGA is organized into four banks of FIFO, and there are four 'lanes' of data defined for the internal channel between the ADC interface code and the FIFO code.  Often times a four channel ADC EVM will simply have each channel of the ADC be connected to one each of these four lanes of data into the bank of four FIFOs. 

    The multiplexing to select which lane of data is used to fill up which FIFO was written to allow one lane to fill up all FIFOs, or two lanes to fill up all FIFOs, or four lanes to fill up four FIFOs.  But the selection of two lanes is not exhaustive of all combinations - it is either the two lower lanes or the two upper lanes.  Not the two lanes in the middle. 

    Now - mapping that to the ADS6445 and ADS6245:  the four channel ADS6445 maps the four channels to the four lanes.  So you can capture from channels A and B, or from channels C and D.   Or from all four channels A, B, C, D.  You cannot capture from channels B and C.

    But the two channel ADS6245 removed the outside channels A and D from the pinout and renamed the channels B and C to become the new A and B.  The EVM for the ADS6245 likewise took the ADS6445 design and dropped the two outside channels.  So from the standpoint of the TSW1200 you cannot capture from the two channels because they ended up on the two middle lanes of data going into the FIFOs.  The Matlab doesn't allow that selection because the FPGA firmware does not have a path through the multiplexing to support it.

    That may be more than you would want to know, except that this explanation points out one possible workaround.  Using your ADS6245 EVM, tell the Matlab interface that you are using an ADS6445 EVM and that you want to capture from all four lanes A, B, C, D.  The data you are looking for will come out on B and C and the data for A and D will be junk because there is nothing wired up to those inputs.  You will be limited to 16K samples each for the two channels you want to capture because we would be wasting half our FIFO on the two phantom channels, but that is the only option that I see.

    Regards,

    Richard P.

  • Great explanation!  I will try this and see how it works.  For now I could live with halfing the data rate. In the future, we plan to design a custom board for the ADS6245.  The TSW1200 will initially still be used to collect the data.  From my interpretation of your remarks, we could connect the "channels B and C" outputs from the ADC to the connector pins for lane 1 and lane 2 into the TSW1200 and regain the full data rate capability of the TSW1200.  Please confirm that I have interpreted your explanation correctly. Thank you for your prompt assistance!

  • Hi,

    Yes, i think you understand it correctly.  And if you did respin the ADS6245 board and moved the channel pin assignments properly, then the TSW1200 could still be fully functional with the new board (with a new ini file in the ADC Files folder, but with a slight edit at the bottom of that in ifile) *and* the Matlab code could use the hardware for a simultaneous capture from the 2 channels.  I've gone to the schematics for the ADS6445 and for the ADS6245 EVMs and illustrated how the new connector pin assignment could have been done.  DCLK adn FCLK must be left in position and not messed with, though.

    Regards,

    Richard P.