English
Language : 

GC5316 Datasheet, PDF (20/75 Pages) Texas Instruments – HIGH-DENSITY DIGITAL DOWNCONVERTER AND UPCONVERTER
GC5316
SLWS154A − JANUARY 2004 − REVISED MARCH 2004
www.ti.com
The GC5316 automatic gain control circuit is shown above. The basic operation of the circuit is to multiply the 18-bit
input data from the PFIR by a 19-bit gain word that represents a gain or attenuation in the range of 0 to 128. The
gain format is mixed integer and fraction. The 7-bit integer allows the gain to be boosted by up to factor of 128 (42 dB).
The 12-bit fractional part allows the gain to be adjusted up or down in steps of one part in 4096, or approximately
0.002 dB. If the integer portion is zero, then the circuit attenuates the signal. The gain adjusted output data is
saturated to full scale and then rounded to between 3 and 18 bits in steps of one bit or the full 25 bits may be output
by setting agc_rnd_disable.
The AGC portion of the circuit is used to automatically adjust the gain so that the median magnitude of the output
data matches a target value, which is performed by comparing the magnitude of the output data with a target
threshold. If the magnitude is greater than the threshold, then the gain is decreased, otherwise it is increased. The
gain is adjusted as: G(t) = G + A(t), where G is the default, user supplied gain value, and A(t) is the time varying
adjustment. A(t) is updated as A(t) = A(t) + G(t)×S×2−D , where S=1 if the magnitude is less than the threshold and
is −1 if the magnitude exceeds the threshold, and where D sets the adjustment step size. Note that the adjustment
is a fraction of the current gain. This is designed to set the AGC noise level to a known and acceptable level while
keeping the AGC convergence and tracking rate constant, independent of the gain level. The signal to AGC noise
ratio will be equal to 6×D dB, so for noise purposes, D should be set to 5 or more to preserve an SNR > 30 dB, while
typical CDMA or UMTS applications set D considerably higher (longer AGC time constant). The time constant is how
long it takes the AGC to converge to within 63% of a required gain change. (It takes four time constants to converge
to within 98% of the change.)
If one assumes the data is random with a Gaussian distribution, which is valid for UMTS if more than 12 users with
different codes have been overlaid, then the relationship between the RMS level and the median is MEDIAN =
0.6745×RMS, hence the threshold should be set to 0.6745 times the desired RMS level.
The gain step size can be set using four different values of D, each of which is a 4-bit integer. D can range from 3 to 18.
The user can specify values of D for different situations, i.e., when the signal magnitude is below the user-specified
threshold (Dblw), is above the threshold (Dabv), is consistently equal to zero (Dzro) or is consistently equal to
maximum (Dsat). It is important to note that D represents a gain step size. Smaller values of D represent larger gain
steps. The definition of equal to zero is any number when masked by zero_mask is considered to be zero. This
permits consistently very small amplitude signals to have there gain be increased rapidly.
The different D values allows the user to set different attack and decay time constants when the signal is in a useful
working range. When the output signal so weak or so strong that no useful information remains there is no concern
about preserving signal quality and the desire is to move the signal rapidly into a useful working range. The magnitude
is considered to be uselessly weak by using a 4-bit counter that counts up every time the masked 8-bit magnitude
value is zero, and counts down otherwise. If the counter’s value exceeds a user specified threshold, then Dzro is
used. Similarly the magnitude is considered uselessly strong by using a counter that counts up when the magnitude
is maximum, and counts down otherwise. If this counter exceeds another user specified threshold, then Dsat is used.
As an example using a dc-signal input, if the AGC’s current gain at a particular moment in time is 5.123, and the
magnitude of the output signal is greater than zero, but less than the user-programmed threshold. Step size Dblw
will be used to increase the gain for the next sample. This represents the AGC attack profile. If Dblw is set to a value
of 5, then the gain for the next sample will be 5.123 + 5.123 x 2−5 = 5.283. If the output signal’s magnitude is still less
than the user-programmed threshold, then the gain for the next sample will be 5.283 + 5.283 x 2−5 = 5.448. This
continues until the output signal’s magnitude exceeds the user-programmed threshold. When the magnitude
exceeds threshold (but is not saturated), then step size Dabv is automatically employed as a size rather than Dblw.
The AGC converges linearly in dB with a step size of 40log(1+2−D) when the error is greater than 12 dB (i.e., the gain
is off by 12 dB or more). Within 6 dB, the behavior is approximately an exponential decay with a time constant of
2(D+0.5) samples.
The suggested value of D is 5 or 6, when the error is greater than 12 dB (i.e., in the fast range detected by consistently
zero or saturated data). This gives a step size of 0.5 dB or 0.25 dB per sample.
The suggested value when the gain is off by less than 12 dB is D=10, giving a exponential time constant for delay
of around 1722 samples (63% decay every 1722 samples).
20