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.

ADS1258: MUX / Auto-Scan & Anti-Aliasing Requirements

Part Number: ADS1258
Other Parts Discussed in Thread: ADS127L11

Hello,

I am using the ADS1258 in autoscan mode to mux through multiple input channels (up the full single ended channels at a time). I want to ensure that there is no aliasing of signals outside of the passband.

I understand (roughly) how the oversampling and digital filtering of a single channel delta-sigmal ADC reduces the requirements on the anti-aliasing filter... (here's a good link that I've often referred to: https://e2e.ti.com/blogs_/archives/b/precisionhub/posts/the-delta-sigma-advantage-to-anti-aliasing-filters)

What I don't understand however is how the MUX'ing the input (Autoscan mode) impacts (or does not impact) this behavoir.

As an example... Suppose I want to sample 16 channels with relevant frequency content of 200Sps.

So... In order to meet Nyquist theorem, my SPS needs to be at least 400Sps per channel (16 channels total)... So that means I need an aggregate Autoscan datarate of at least 6400SPS. Which can be achieved at a DATARATE = 0b10

Sounds good so far... But then I see that the datasheet states that the frequency response isn't different in Autoscan mode vs Fixed Channel Mode:

So I have a 3dB bandwidth of 12.4kHz but an output data rate per channel of only (15.123kHz / 16 channels = ) 945 Sps --

It seems to me that if I were to do an FFT of these samples... All of the content between 945Hz/2=473Hz and (at least) the 12.4kHz -3dB bandwidth (likely beyond this as -3dB is not much attenuation) would alias in... Or am I missing something?

So does this imply that we actually need a much steeper anti-aliasing filter at data rate / 2 to compensate for the fact that the digital filter isn't adjusted to account for the lower data rate associated with the MUX'd channels?

....

On a related note, I'm also struggling to conceptualize how the oversampling and digital filtering actually works when we are only focused on a given channel for a fraction of the time -- I think it ultimately plays into my above question, but I'm concerned that there is actually even more at play here that I am missing -- This question (unanswered) does a good job at summarizing this concern -- https://dsp.stackexchange.com/questions/17482/anti-aliasing-requirements-for-a-muxed-sigma-delta-converter

Thanks!

  • Hi WolfHort,

    When it comes to delta-sigma ADCs, it is helpful to understand aliasing with respect to the modulator frequency (f_mod) and the output data rate (f_data), where aliasing can occur around two frequencies:

    • Aliasing around f_mod/2
    • Aliasing around f_data/2

    For ADCs that are meant for DC measurements, that is ADCs with a SINC-type filter like the ADS1258, we usually don’t talk about aliasing around f_data/2 a lot. However in general it would be a concern if the input signal has frequency content (interferers) between f_data/2 and f_data. The SINC filter doesn’t offer much attenuation at f_data/2. We usually neglect that fact because we assume a DC signal doesn’t really have signal content in that region.

    ADCs meant for AC signals, such as the ADS127L11, offer what we call a flat passband or wideband filter. Those filters offer high stopband attenuation above f_data/2.

    In all cases, the digital filter takes care of aliasing around f_mod/2.

    However the digital filter has zero attenuation at f_mod. This is why you still need a simple RC (antialiasing) filter to attenuate interferers at fmod. Here are some general guidelines about how to select the anti-aliasing filter components: https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/955466/faq-delta-sigma-adc-anti-aliasing-filter-component-selection

    -Bryan

  • Bryan,

    Thanks for the quick reply! That all makes sense and I agree that typically there shouldn't be a ton of interference in the very low frequency range around f_data/2 as crosstalk / coupling should be minimal at low frequencies.

    That being said... Can you validate my above assumptions? I think that it's not just aliasing between f_data/2 and f_data that are of concern when using the ADS1258 in the 16 channel MUX.

    As I detailed above -- the passband (-3dB) of the digital filter in DATARATE = 0b10 (example) goes all the way out to 12.4kHz and it appears (based on datasheet) that this is unmodified if we MUX 16x channels at the input... So each channel has:

    • f_data = ~945 Sps... f_data/2 = ~473 Sps
    • f_digitalfilter_passband (-3dB) = ~12.4kHz

    So -- It would seem to me that any signal content between 473Hz and 12.4kHz would alias without a separate analog filter to attenuate... Is this correct?

    We have near-ish proximity driver circuits that may have switching content in this range and I want to understand if my assumptions are correct (cannot rely on digital filter until >12kHz).

    Thanks,

    Eric

  • Hi WolfHort,

    To be clear, the data rate is not changing as it relates to the filtering. If you are sampling at 15kSPS per channel, then the effective data rate is changing, but the actual data rate on a per channel basis is not. This is why the filter BW does not change even if you are changing the channels.

    So, you should consider that each channel will have a data rate of 15 kSPS and a BW of 12 kHz (or whichever settings you choose from Table 5).

    If you expect to have unwanted frequency content between DC and 12 kHz, then you will have to remove that using an analog filter at the input of the ADC (or wherever these unwanted signals are getting into your system), or remove them in post processing.

    -Bryan

  • Bryan,

    I'm honestly not sure I understand your reply, but the definition between "effective" vs "actual" data rate seems like semantics as what we really care about is the per channel data integrity...

    So unless I am mistaken, the main takeaway is still:

    • For 16x channel MUX, the per channel data rate is reduced by a factor of 16 when in autoscan mode and sampling all channels.
    • But the digital filter bandwidth does not change. I'm not saying that this behavior is unacceptable, I just want to account for it properly.

    Are the above bullets correct?


    Additional context --

    Per note (3) of the following table from the datasheet:

    So if I have 16 channels MUX'd I still get 15kSps / 16 = ~900Sps for each individual channel.

    If I then do an FFT on the data received (for a given single channel of the 16x MUX) from the ADC, the frequency content between ~450Hz (datarate/2) and 12kHz will alias if no hardware anti-aliasing filter was present... Correct?


    Also, as for your comment to remove them in post-processing... I'm not sure how that would be possible since, if the content aliases in before the A->D boundary and the upstream processor does not have insight into additional higher speed sampling data, then there is no way to actual do that.

    I'm fairly certain it's impossible to filter content that's already aliased in without additional information (and our processor will only be getting the "low rate" resolved datarate output).

  • Hi Wolfhort,

    So unless I am mistaken, the main takeaway is still:

    • For 16x channel MUX, the per channel data rate is reduced by a factor of 16 when in autoscan mode and sampling all channels.
    • But the digital filter bandwidth does not change. I'm not saying that this behavior is unacceptable, I just want to account for it properly.

    Are the above bullets correct?

    Yes this is correct

    If I then do an FFT on the data received (for a given single channel of the 16x MUX) from the ADC, the frequency content between ~450Hz (datarate/2) and 12kHz will alias if no hardware anti-aliasing filter was present... Correct?

    Yes this is also correct

    If you are concerned about aliasing for signals in the first several Nyquist zones, then you will need to use external analog anti-aliasing filters similar to a non-oversampling SAR ADC.

    -Bryan