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.

ADS8344 noise

Other Parts Discussed in Thread: ADS8344, REF5030, REF3330

Hello.

I have two design with ADS8344 and the output creates a lot of noise / jumps, app 64 counts.

The other thing is that the output jumps at 16 count and only gives 2, 4, 6 etc in the  last digit.

When connecting a scoop at the Vref input it is giving noise at about 100mV (goes down) when the SPI runs.

When connecting a huge capacitor on Vref the noise is gone and I get all figures 1, 2 ,3 etc but still giving inappropriately the same jumps.

Have used this unit on older design with 5V supply (now I use 3.3V) and it works perfect.

Can it be faulty devices in the production batch?

I'm out of ideas, so please help?

Asle

  • Hi Asle,

    Welcome to our forum!  We're on break for the Thanksgiving Holiday here in the US through Monday next week.  We'll get back to you on this question as soon as possible.

  • Hello,

    I have some more information.

    After checking my HW multiple times ( looks OK) I have found that the last 2 to 4 bits seems to be 0 all the time. Jumping at 16, 32 etc. 

    Have tried internal and external conversation, timing between all operations etc. 

    My colleague made a design 10 yeas ago ant that it jumping on LSB bit. The different is that that is running at 5 volt as my design is running at 3.3 Volt.

    Any ideas how to start looking??

  • Hello Asle,

    With lower reference voltages, the LSB size is reduced and the converter becomes more sensitive to noise.
    To get the 20uVrms of typical noise spec with the ADS8344, component selection and layout is critical specially close to the reference input.

    Also, there is the typical power consumption and noise performance trade off. For example, a low power reference introduces more noise to the reference pin than a high-power one. With a 3V reference, the LSB is 46uV, and the reference noise should be less than 1LSB to have good performance. Thus, a REF5030 (1mA, 9uVrms) should allow good noise performance, while a REF3330 (4uA, 84uVrms) will introduce to much noise that can be code dependent.

    Then, there is the issue of input driver noise and anti-aliasing filter. What sampling rate is currently used?

    Could you send us the schematic with the components around it to see if we can find a possible source or sources of noise?

    Thank you,
    Rafael

  • Dear Rafael,

    Thank you for your reply and information.

    I have tried 0.5, 1 and 2MHz clock on SPI. Have also tried internal and external clock, actually all possibilities on the SPI.

    As it looks it may be out voltage reference which cause the problem. We are using ISL60002-3V. The load transient response is 300mV @ IL=50uA.

    The footprint is SOT23 and we have found Maxim alternative, MAX6103 which seems to have better performance.

    Pleas look into the attached schematic and advise your best suggestions. We need help!

    Best regards,

    Asle

    1261.ML6FPL01_Page1.pdf

  • Hi Asle,

    The issue might be the 10nF capacitor at the reference pin because this capacitor is making the external reference the main charge provider during conversion time.

    During conversion time (8us_Max with internal clock), about 40uA of current are required by the converter. In charge terms, during conversion, 320pC of charge is required. This reduces the 10nF cap voltage by about 32mV or 700LSBs(3Vref). In this application, the external reference load regulation might be helping attenuate this discharge during conversion but not enough.

    For best performance, the external reference should be very stable during conversion, and to allow a 10nF at the ref pin, it must have an excellent (almost-ideal) load regulation. However, external references cannot provide this. Excellent load regulation might be seen with very high-speed (BW>100MHz)/high-power (iq>10mA) op-amps, but they aren’t practical as external references.

    The best way to drive precision SAR converter references is to avoid relying on the external reference load regulation. For this, a big capacitor that discharges less than 1LSB during conversion is preferred.

    For example:
    10uF would discharge by 32uV or 0.7LSB(3VRef)
    22uF would discharge by 14.5uV or 0.3LSB(3VRef)

    So, you could try the following assuming the reference doesn’t become unstable driving big capacitive loads:
    1) Removing C113 and replacing R122 by 0ohm resistor.
    or
    2) Replacing C113 by a 10uF or 22uF capacitor.

    If the reference becomes unstable, try option 1) with R122 values between 10 and 0.47 ohms. 2.2kohm as R122 doesn’t allow fast charge transfer .

    If this improves noise and a board revision is possible, place this capacitor as close as possible to the reference pin to avoid trace inductance for fast transfer of charge from the cap. This can improves performance even more as long as the external reference noise isn't dominating.

    Also, try a RC between the instrumentation amplifier and mux input to protect the ADC input from high frequency noise. A 1kohm in series with a 10nF should be enough.

    Let us know if any of this helps.

    Best regards,
    Rafael

  • Hello Rafael,

    We have tried you proposal but unfortunately the result is not as good as expected.

    The 3V reference is replaced by MAX6103 and we cannot see any noise (drop) on the scope with this.

    Further we have put a low pass filter on the input after the amplifier (5K6 and 1uF). We have still noise but may be 1/3 of what we had. We also read both odd and even figures from the converter now.

    On an old design the same filter were used but the reference was to VCC and it was running at 5V.

    The SPI clock and conversion method is exactly the same.

    Can it be any different between 5V and 3V3 supply?

    Best regards 

    Asle

  • Hi Asle,

    The main difference is the LSB size: 76uV for 5Vref vs 46uV for 3Vref. Smaller LSB allows the converter to see more noise.

    For example, with 100uVrms of noise, the converter will show 1.3LSBs of standard deviation for 5Vref and 2.2LSBs of standard deviation with 3Vref. 

    BTW, noise_RMS estimation is more accurate with standard deviation of codes instead of the "Noise_RMS = peak-to-peak_Codes / 7" assumption.

    I just checked the instrumentation amplifier noise specs and estimated its total noise. I believe this is the dominating noise with the MAX6103 as reference. These are my calculations:

    Case 1) Without the 28.4Hz anti-aliasing filter (5K6 and 1u) the amplifier bandwidth is 400Hz (G=200)
    1/f noise(0.1to10Hz); 4uVpp*200Gain = 800uVpp ≈ 114uVrms or 800uVpp/7
    White noise76nVrms/sqrt(Hz) * sqrt((400Hz-10Hz)*1.57) * 200Gain = 376uVrms
    Total noise = sqrt( ( 1/f_Noise)^2+ (White_Noise)^2+(ADC_Noise)^2))
    = sqrt((114uVrms)^2+(376uVrms)^2+(20uVrms)^2)) = 393uVrms ( amplifier noise dominates)
    Total noise  ≈ 393uVrms/46uV = 8.6LSBs of standard deviation of raw data or about 60 codes_pp

    Case 2) With the 28.4Hz anti-aliasing filter (5K6 and 1u),
    1/f noise(0.1to10Hz); 4uVpp*200Gain = 800uVpp ≈ 114uVrms or 800uVpp/7
    White noise 76nVrms/sqrt(Hz) * sqrt((28.4Hz-10Hz)*1.57) * 200Gain = 82uVrms
    Total noise = sqrt( ( 1/f_Noise)^2+ (White_Noise)^2+(ADC_Noise)^2) )
    = sqrt((114uVrms)^2+(82uVrms)^2+(20uVrms)^2)) = 142uVrms ( amplifier noise dominates)
    Total noise  ≈ 142uVrms/46uV = 3.1LSBs of standard deviation of raw data or about 22 codes_pp

    Then, the MAX6103 40uVrms of noise contributes some more making the ADC noise worse, but I still assume the amplifier noise is the dominating noise source. 
    The ISL60002-30 doesn’t have white noise data in the datasheet, but since its supply current is 100 times lower than the MAX6103, its noise should be much higher. I assume somewhere around 200uVrms to 400uVrms, which might be similar to the amplifier noise without anti-aliasing.

    Could you calculate the standard deviation of your raw data with the MAX6103? I hope it will approximate these calculations.

    Thank you,
    Rafael


  • Hi Asle,

    I just corrected a little mistake in the previous post. 

    For case 1,

    Instead of this:
    Total noise  ≈ 378uVrms/46uV = 8.6LSBs of standard deviation of raw data or about 60 codes_pp

    it should be:
    Total noise  ≈ 393uVrms/46uV = 8.6LSBs of standard deviation of raw data or about 60 codes_pp


    For case 2,

    Instead of:
    Total noise  ≈ 89uVrms/46uV = 3.1LSBs of standard deviation of raw data or about 22 codes_pp:

    It should be:
    Total noise  ≈ 142uVrms/46uV = 3.1LSBs of standard deviation of raw data or about 22 codes_pp

    In addition, for RMS_Noise calculation, use the "standard deviation of the sample" with the raw data and as many samples as possible

    Best regards,
    Rafael