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.

AIC3254 Clipping on ADC input



When connecting about any input source to the input of the AIC3254 (dynamic mic, music source, etc.), if the ADC gain is increased, at some point the device will clip.  That is expected.  What isn't expected is that the ADC doesn't appear to actually clip by maxing out the digital value and creating a waveform with a flattened top as you would expect.  Rather, the generated value actually overflows into the sign bit causing positive digital values that actually flip to very negative values.  This causes the waveform to suddenly flip negative, creating a very ugly clipping sound.

Using AGC isn't really an option for me since I need manual gain control, but I would like to have some sort of DRC capability like the DAC has.  I considered adding a DRC to the miniDSP, but that's post digitization, so doesn't solve the problem.

Is there a way to prevent positive clipping from hitting the maximum without giving up manual gain control?  I'm ok with a flattened top on the curve, but the sign reversal is too alarming for customers.

Thanks,

  • Hi Ed,

    1. When gaining up, use analog (MicPGA) gain.
    2. Multiplication operations (e.g. gain, etc) will clip. Addition operations will overflow if above 12dB from 0dBFS. So any biquad filters or processing that performs addition operations should be performed before gain blocks that gain above 0dBFS.

    The DSP has 32-bits of resolution. This means that some digital attenuation will not affect the overall noise floor since I2S, ADC noise usually dominates. So my recommendation is to avoid gain before any processing.

    Regards,
    J-
  • J,

    Thank you for the response. In the end, the clipping problem I was seeing had to do with another part of my circuit, so the MicPGA (which I am using for gain) works as it should with clipping going flat at 0dBFS. Your recommendations about avoiding gain before processing is great advice.

    Thanks,
    EdA