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.

Sampling Frequency SD16 in MSP430AFE253

Other Parts Discussed in Thread: MSP430AFE253

I want to use the SD16 of MSP430AFE253 to convert a voltage, changing with a freq of ~10kHz

The sampling freq of SD is the modulation freq divided by the OSR. Is this the case for each channel, or if I use 2 channels for ex, the data rate gets then reduced by a factor of 2?

The minimal OSR that can be set is 32, does it mean that the highest achievable sampling rate is 1,1Mhz/32 = 33kHz?

  • MSP430-Beginner said:
    or if I use 2 channels for ex, the data rate gets then reduced by a factor of 2?

    Worse: when switching the input signal, the digital filter needs to be cleared as you have a sudden change in signal that invalidates the data bits in the filter, as the bitstream history belongs to the old datastream. Hence the SD16INTDLYx control to discard the next conversion results.
    This is because teh SD16 is a delta-sigma converter that emits a bitstream that is a result of continued accumulation and feedback. The relation '1' bits and total bits in this bitstream directly corresponds to the reelation of signal and reference voltage.
    So on a straight delta-sigma with 16 bit result, 65536 samples would be necessary, the number of '1' bits in this stream directly giving the conversion result. However, after the initial 65536 samples, a new result could be output with every new sampled bit (moving sum). The digital filter uses a digital algorithm that reduces the buffer size from 65536 to only 4*OSR bits, while also reducing the conversion speed to one conversion every OSR samples. It does, however, introduce some aliasing effects. The exact digital algorithm is not disclosed.

    MSP430-Beginner said:
    The minimal OSR that can be set is 32, does it mean that the highest achievable sampling rate is 1,1Mhz/32 = 33kHz?

    Yes. Speed is not the domain of the SD16 ADC. Here the ADC10/ADC12 are by far better.

    The big advantage of the SD16 is the high accuracy. Where on the ADC10/ADC12 the conversion error is relative to the maximum value (in % of Vref), the error of the SD16 is relative to the signal and gets smaller if the signal is smaller. This allows the higher resolution. While on a full range signal, the error may be as large as e.g. 32LSB (so only the upper 11 bits are significant), a small signal of 3.125% of full range would have all 16 bits significant. (or rather the upper 11 but counted from the highest '1' bit).
    On an ADC10 boosted to 16 bit, you'd have 9 or 10 significant bits on full range, and still 10 significant bits on 3.125% signal, resulting in only 3 useful bits. So the SD16 has a by far higher dynamic range at the cost of a significantly lower conversion rate.

     

  • Jens-Michael Gross said:
    when switching the input signal, the digital filter needs to be cleared as you have a sudden change in signal that invalidates the data bits in the filter, as the bitstream history belongs to the old datastream. Hence the SD16INTDLYx control to discard the next conversion results.

    In the data sheet of MSP430AFE253, it is said: "The SD24_A module integrates up to three independent 24-bit sigma-delta A/D converters. Each channel is
    designed with fully differential analog input pair and programmable gain amplifier input stage"

    Does this mean, that every channel has its own digital filter, and hence the digital filter doesn't need to be cleared when switching, and hence the sampling frequency of every channel, even if we use all 3 channels simoultaneously, stays the same: fM/OSR?

  • You're right, the AFE253 has SD24_A with three independent delta-sigma converters.
    But you wrote in your original post 'Iwant to use SD16 module'. And what I wrote was for SD16. And is still mostly true for the SD24_A.

    On SD24_A , each "submodule" has its own digital filter. And on teh AFE253, each submodule has its own, dedicated input pair and you cannot switch (external) channels at all, as there is only one. But what I said still applies if you change the reference or when you start up the device the first time. Or change the clock timing. (changing the reference might be an option if you want to further increase resolution on low signals). Or if you switch from external input to temperature sensor or VCC/2 or come from offset measurement/calibration mode. Or change the buffer setting or the conversion mode, or, or....

    MSP430-Beginner said:
    and hence the digital filter doesn't need to be cleared when switching

    When switching, it needs to be cleared (conversions need to be skipped, that is). But if all you want is converting the three external channels, then there is no need to switch at all. The three modules have their own registers and can be operated independently. Well, mostly: the clock and reference settings are for all three)

    MSP430-Beginner said:
    the sampling frequency of every channel, even if we use all 3 channels simoultaneously, stays the same: fM/OSR?

    If you don't change the channel setting (or one of the other things) , then yes. As long as you do not change any configuration, all three modules will run with fM/OSR on three different (or in case of the internal channels even same)  channels.

  • Thanks for the explanation.

    I want to measure a signal which may change with a max frequency of 10 kHz. Nyquist says I have to sample my signal with at least 20kHz. As we said above, the highest possible sampling frequency is 1,1Mhz/32 =34khz, with OSR=32. with unipolar mode and OSR=32, the resolution is only 14 bit (too low). And since the SD ADC implements oversampling, is it possible to setup a lower sampling frequency (lower then nyquist freq), through increasing of the resolution (more bits)?

  • MSP430-Beginner said:
    And since the SD ADC implements oversampling, is it possible to setup a lower sampling frequency (lower then nyquist freq), through increasing of the resolution (more bits)?

    The SD24 oversampling has nothing to do with the oversampling on ADC12 or simila SAR converters.

    The SD16 works as follows:

    from the signal, the reference is subtracted (depending on the result of the last conversion). This is the delta stage. Then the resulting signal is integrated (the Sigma stage). The output if the integrator is comared to the reference and the comparison result outputs a single bit to the digital filter. It also controls the subtraction in the delta stage.

    So the resulting bitstream consists of 0 and 1 values only, and the percantege of 1 values compared to the total number of bits is the percentage of the signal compared to the reference.

    So in theory, you'd have to collect 65536 bits to get a 16 bit result. Because this is not very useful, the digital filter is used to calculate a result with lower bits by some hidden magic. So after each 32 to 1024 bits a result is produced based on bit pattern analysis or whatever.

    The oversampling period is some sort of moving low-pass for the signal. delta-sigmas are for low-cost high-precision but low-frequency conversions.

    Also, you cannot lower the NyQvist frequency by lowering the sampling frequency. The NF depends on the maximum frequency you want (or neeed to) detect on the input signal, to avoid alias results. If you sample with a lower frequency, the results you get will produce alias 'overtones' if analyzed, if the signal contains frequencies above half of your sampling frequency.

    P.s.: if you sample a 10kHz sine wave signal with 20kHz (exactly at nyqvist), you'll may see a 10kHz square signal as sampling result, with varying amplitude (depends on synchronisation of signal and sampling point). Worst case, the amplitude is 0 and you seem to have DC. So the signal you want to detect defines the sampling frequency you need. Not the other way.

**Attention** This is a public forum