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.

ADS8568 400kSPS Serial IF Timeline Issue

Other Parts Discussed in Thread: ADS8568

Hello,

I am trying to sample all 8 channels of an ADS8568 simultaneously using the serial interface at 400 kSPS.  Other configuration details include:

  • Software mode.
  • ADS8568 uses its internal clock (CCLK).
  • CONVST_x generation and serial transfer logic is clocked independently of the ADS8568’s CCLK (in other words CONVST_x is generated asynchronously from the perspective of the ADS8568).
  • All CONVST_x inputs are electrically tied together, because I want as close to simultaneous sampling on all 8 channels as possible.

Has anyone had success using the ADS8568 in this way?

Some more details:

I think that my issue relates to CONVST_x setup time and the BUSY/INT pin’s functionality.  If all CONVST_x inputs are electrically tied together and generated by a clock that is asynchronous to the ADS8568’s internal clock, then there will be times that some of the CONVST_x inputs make setup time while others don’t.  The following diagram visualizes this behavior:

In the above diagram, CONVST_A and CONVST_B are electrically connected to the same driver, but because of the electrical characteristics of the board, CONVST_A has made setup time while CONVST_B has not.  When this happens, the SAR ADC module for channel pair A goes “BUSY” one cycle before the SAR ADC module for channel pair B.  Then the ADS8568 combines the two BUSY signals to form one BUSY output according the following rules:

“This pin transitions high when a conversion has been started and transitions low for a single conversion clock cycle (tCCLK) whenever a channel pair conversion is completed and stays low when the conversion of the last channel pair has completed.”

When this happens, the combined “BUSY” output drops at the appropriate time for the channel pair who’s CONVST_x made setup time, which is one cycle too early for the channel pair that failed setup time.  If I perform a serial transfer as soon as I see BUSY drop, I will get the newly sampled value for the channel pair that made timing and a repeat of the previously sampled value for the channel pair that failed CONVST_x setup time.  This results in a 6 bit ENOB!

I have verified that simply waiting an additional ADS8568 internal conversion clock cycle after BUSY drops before performing the serial transfer resolves the issue, but this takes approximately an additional 90ns, which there is no room for in the extremely tight 400 kSPS serial timeline.  Since the ADS8568 advertises simultaneous high-speed signal acquisition of up to 400 kSPS in serial mode, I assume that there is a way to get around this.  My question is how?

Note that the provided example where CONVST_A makes setup time and CONVST_B doesn’t is just one case of many and with the same physical setup it is possible for CONVST_B to make setup time while CONVST_A fails.

Thanks in advance for the responses!

Chuck

  • HI Charles: It was nice talking to you few minutes ago. Glad to hear the issue was resolved. Please let  us know if you need further assistance in the future.

     Regards,

    Naser Salameh

    Application Team

  • Chuck -

    Could you summarize what your resolution was?  We just want  to ensure that there aren't any unforeseen issues that may arise in the future.

  • I would also like to know what the solution was as I am running into the same problem in my circuit.  It is good to see that a problem has been solved, but it would be better to post the solution for all to access without further research.

    I have a system who's shipment is being held until I can fix the problem.

    Sincerely,

    Mike Fontes

  • Hi Mike,

    I apologies for not posting the solution.  At the time I was extremely busy and was scrambling to solve problems, as I am sure you are now!  Anyways, the solution is extremely simply; don't pay attention to the busy signal at all.  You can still use it for error checking if you would like, but you don't have the timeline to initiate a transfer only after sampling this signal.  Instead, always assume that the ADS8568 sampled all of your analog channels according to the worst possible serial timeline.  There is nothing in the documentation that says you must initiate a serial transfer within a certain amount of time after the busy signal rises, the only constraint is that there is a minimum amount of time that you must wait after.  And, assuming the worst serial timeline, you will never break this requirement.

    If you have more questions, I will be unable to respond for several hours.

    Hope this helps!

    Chuck

  • Hi Chuck: Thanks for the update and feedback.

    Regards,

    Naser