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.

TLV320ADC3140: Use the Biquads to control signal latency

Part Number: TLV320ADC3140

There are 3 Biquads in TLV320ADC3140. Can we use them just to add some delay to the audio signal chain so as to adjust the whole signal processing latency?

If we disable one of these Biquads then the latency of this Biqauds will be Zero? If we enable one of them, the maximum delay we can get is 2 samples?

The datasheet specifies the latency of internal Digital Decimation Filters clearly, but what is the overall latency if we turn off all the Biquads and set the Channel Phase Calibration to Zero?

  • Yang,

    There are a couple of options to add delay to a channel on the TLV320ADCx140 devices:

    • Use the programmable phase calibration to add specific delay to each channel. See data sheet Section 8.3.6.3 through the CHx_CFG4 register, CHx_PCAL bit field.
    • Choose between linear phase, low latency, and ultra-low latency decimation filters for all channels. See data sheet Section 8.3.6.7 for the group delay specifics. DSP_CFG0 register, DECI_FILT bit field.
    • Design all-pass filter with specific delay and implement them using the 1,2, 3, or 4 Biquad filters. See app note TLV320ADCx140 Programmable Bi-Quad Filter Configuration and Application (Rev. A) for details on how to program the Biquad filters. Up to 4 out of 12 Biquads can be assigned to a channel in the DSP_CFG1 register, BIQUAD_CFG bit field. you can program some of these Biquads to be Allpass filters with no additional delay by zeroing the coefficients for the past states. Since you can allocate up to 4 Biquads (if using for channels), you can have varying delay. Note that Biquads, as IIR filters, do not have linear phase, so the group delay can vary with frequency. Note that you can design some approximately-linear IIR filters. The PPC3 application will plot the group delay of the Biquad filters. You can input your own coefficient, using a program like MatLab to design them, or select from one of the typical filters by adjusting its parameters.

    Disabling the biquad bypasses that processing and does not add any additional delay to the existing decimation filters. The group delay will then be dictated by the decimation filter (linear, low latency, or ultra-low latency). Those delays are provided in the data sheet and varies by the selected sampling rate.

    Best regards,