SLAS647 – DECEMBER 2009
www.ti.com
An AGC low-pass filter is used to help determine the average level of the input signal. This average level
is compared to the programmed detection levels in the AGC to provide the correct functionality. This
low-pass filter is in the form of a first-order IIR filter. Programming this filter is done by writing to page 4 /
register 2 through page 4 / register 7. Two 8-bit registers are used to form the 16-bit digital coefficient as
shown on the register map. In this way, a total of six registers are programmed to form the three IIR
coefficients.
Attack time determines how quickly the AGC circuitry reduces the PGA gain when the input signal is too
loud. Programming the attack time is done by writing to page 0 / register 89, bits D7–D0.
Decay time determines how quickly the PGA gain is increased when the input signal is too low.
Programming the decay time is done by writing to page 0 / register 90, bits D7–D0.
Noise threshold is a reference level. If the input speech average value falls below the noise threshold,
the AGC considers it as a silence and hence brings down the gain to 0 dB in steps of 0.5 dB every sample
period and sets the noise-threshold flag. The gain stays at 0 dB unless the input speech signal average
rises above the noise-threshold setting. This ensures that noise is not amplified in the absence of speech.
The noise-threshold level in the AGC algorithm is programmable from –30 dB to –90 dB for the
microphone input. When the AGC noise threshold is set to –70 dB, –80 db, or –90 dB, the microphone
input maximum PGA applicable setting must be greater than or equal to 11.5 dB, 21.5 dB, or 31.5 dB,
respectively. This operation includes debounce and hysteresis to prevent the AGC gain from cycling
between high gain and 0 dB when signals are near the noise threshold level. When the noise-threshold
flag is set, the status of the gain applied by the AGC and the saturation flag has no meaning.
Programming the noise debounce is done by writing to page 0 / register 91, bits D4–D0. Programming the
signal debounce is done by writing to page 0 / register 92, bits D3–D0.
Max PGA applicable allows the user to restrict maximum gain applied by AGC. This can be used for
limiting PGA gain in situations where environmental noise is greater than the programmed noise threshold.
Microphone input maximum PGA can be programmed from 0 dB to 59.5 dB in steps of 0.5 dB.
Programming the maximum PGA gain allowed by the AGC is done by writing to page 0 / register 88,
bits D6–D0.
See
Table 5-15 for various AGC programming options. AGC can be used only if the microphone input is
routed to the ADC channel.
Table 5-15. AGC Settings(1)
CONTROL REGISTER
BIT
FUNCTION
36
D5 (Read-only)
AGC saturation flag
39
D3 (Read-only)
ADC saturation flag
45
D6 (Read-only)
Signal to level setting of noise threshold
86
D7
AGC enable
86
D6–D4
Target level
87
D7–D6
Hysteresis
87
D5–D1
Noise threshold
88
D6–D0
Maximum PGA applicable
89
D7–D0
Time constants (attack time)
90
D7–D0
Time constants (decay time)
91
D4–D0
Debounce time (noise)
92
D3–D0
Debounce time (signal)
93
D7–D0 (Read-only)
Gain applied by AGC
(1)
All registers shown in this table are located on page 0.
26
APPLICATION INFORMATION
Copyright 2009, Texas Instruments Incorporated