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.

TAA5212: Understanding full scale range

Part Number: TAA5212

Hi,

I am using the TAA5212 in a sensor application and I don't understand the way the datasheet describes the full scale range and the difference between single-ended and differential inputs when AC coupled.

My sensor has a single-ended output but it also has a local signal ground and my design intent was to use the ADC in differential mode to cancel common-mode noise from the sensor. The sensor's local ground is offset by 2.5V from the local ground of the ADC. I AC coupled both the IN1P and IN1M lines, P to the sensor signal output and M to the sensor's ground.

Since only the signal (and not sensor ground) has a significant voltage swing relative to the ADC's ground, it looks like the common mode range is quite large - about half of my signal range, which is 2Vpeak (or 4Vpp). I have the common mode tolerance range set to the smallest (ADC_CH1_CM_TOL=[00]) in an effort to get the best SNR but it looks like I am violating this (since 2Vpp CM range is obviously greater than 100mVpp)

Despite this, it seems to be working and the full scale range seems to be about 5Vpp. I don't understand how this is possible given that the ADC's supply is only 3.3V.

If I have the IN1M input connected to a nearly constant voltage through a capacitor, what is the difference between setting up the ADC as single-ended versus differential? Can I get the common mode noise rejection despite the large common mode range? Will I see issues with distortion or SNR due to the large common mode range? I could either attenuate the sensor output to stay within the 100mVpp common mode range or I could set the CM tolerance to a larger setting. It looks like I would have to set it to the largest value, though, which the datasheet says carries a very significant SNR penalty.

  • Hi Sean,

    In AC coupled mode, the device actually sets its own common mode on the device set of the AC coupling caps. So, your scale is not dependent on your source common mode.

    The device will set the common mode voltage on the ADC input pins to Vref / 2. I'm assuming you have this at default, so the voltage you are centered around is 1.375V. This gives you the listed 2Vrms swing for differential mode. Each leg is able to swing at 1Vrms = 1.414Vp. This goes slightly negative but the device can handle it. At the high end you are hitting 2.8Vp which is well below the 3.3V rail.

    You don't need to be considering your DC common mode as part of the common mode tolerance. Those numbers are with respect to AC since the AC Coupling caps eat whatever DC common mode you have and the device sees the Vref / 2 common mode that I mentioned before. The common mode tolerance setting is only needed if you are dealing with a particularly noisy source and you need the extra rejection for CMRR reasons; it doesn't have any impact on the DC part of your common mode, and as you mentioned is only detrimental to performance if it's not needed.

    In your case (correct me if I misunderstood your setup), you have one leg swinging at 2Vp + 2.5V = 4.5Vp from the sensor side (with respect to ADC ground) but from the device point of view that signal becomes 2Vp + 1.375V = 3.375Vp. You are definitely going over the recommended spec here since you are effectively in single-ended mode and are limited to 1.414Vp when you are sending in 2Vp. Why it's still working it likely because your AVDD might be slightly high, or we've made some rounding errors and you actually aren't hitting the supply rails. Regardless you should be pulling this down to 1.414Vp if you want to ensure function across many devices.

    This implies the answer to your last question, the device is always measuring INP - INM, but there is a 6dB shift that is added or removed in digital to account for the different scale of differential or single ended signals.

    Let me know if I missed anything in my explanation or if you need any clarification,
    Jeff McPherson

  • Thank you for your detailed reply, Jeff. So, it sounds like you are recommending that if I want to be sure that my system will work across all individual TAA5212 units that I should limit my signal to 1Vpp. With AC coupling, then, this would result in the IN1P swinging between 2.375V and 0.375V while the IN1M input would sit at 1.375V. In this case, would the ADC codeword (in 32 bit mode) swing between 0 and (2^32)-1? It seems to me that I am not reaching the max codeword until the amplitude is larger than this. I don't need to use the entire codeword span but I do need to know what the correspondence is between analog amplitude and digital amplitude as I am measuring the sensor output (the sensor is AC coupled so the signal of interest is the amplitude of the AC)

  • Correction to myself - it sounds like you are suggesting keeping my signal range to 1.414Vpeak, which would swing between 2.789V and -0.39V. But my question still stands - will this correspond to the full scale range exactly? I need to know the scale factor between analog amplitude and digital amplitude. Thanks.

  • Hi Sean,

    Yes you are correct on your follow up in terms of the analog scale.

    Keep in mind the output of the ADC is formatted in two's complement fashion per I2S specs, so the digital values swing from -(2^31) to 2^31 - 1.

    Best regards,
    Jeff McPherson