The Designer's Guide Community Forum
https://designers-guide.org/forum/YaBB.pl
Design >> Analog Design >> Is it wise to use AGC for audio signal amplification?
https://designers-guide.org/forum/YaBB.pl?num=1223298013

Message started by vivkr on Oct 6th, 2008, 6:00am

Title: Is it wise to use AGC for audio signal amplification?
Post by vivkr on Oct 6th, 2008, 6:00am

Hi,

I am wondering if it is wise to use automatic gain control when processing audio signals on chip? Is this something which is realistic to implement without introducing excessive distortion. I am considering limiting large signals by reducing gain, but also increasing gain for smaller signals to get almost constant output levels (within reasonable limits).

The primary problem is the very wide range of the audio bandwidth (20 Hz - 20 kHz). One would need a regulation loop which has a timeconstant large enough that the 20 Hz signals pass through, which would imply that the loop takes around 100 ms to react to a transient. With some simple models, I could get the system to achieve reasonable convergence to final gain values in 200 ms, but this would probably be too large a time, and also there is likely to be considerable distortion of the signal in this time.

How are conventional AGC systems for audio implemented? What are the challenges?
Feedback is welcome.

Regards,
Vivek

Title: Re: Is it wise to use AGC for audio signal amplification?
Post by thechopper on Oct 7th, 2008, 6:50am


vivkr wrote on Oct 6th, 2008, 6:00am:
Hi,

The primary problem is the very wide range of the audio bandwidth (20 Hz - 20 kHz). One would need a regulation loop which has a time constant large enough that the 20 Hz signals pass through, which would imply that the loop takes around 100 ms to react to a transient. With some simple models, I could get the system to achieve reasonable convergence to final gain values in 200 ms, but this would probably be too large a time, and also there is likely to be considerable distortion of the signal in this time.


Hi Vivek,

I do not see significant drawbacks in using AGC amplifiers for an audio signal. I imagine you could simply control the gain by looking at a threshold (at which the signals might be clamped) and trying to get the signal peaks as close to them as possible by adjusting the amplifier gain.

However, I do not see why you would need loops with such slow time responses while you could have the AGC amplifier with BW larger than the max frequency (20KHz in your case). I might be missing something I guess.

Another thing you might want to consider is the offset contribution from the AGC amplifier, which will change according to the selected gain. This at some point in time might hurt you and force your output signal to reach the clamp levels because of a large offset rather than a large gain...

Just a few considerations I came up with
Regards

Tosei

Title: Re: Is it wise to use AGC for audio signal amplification?
Post by aaron_do on Oct 7th, 2008, 7:00am

Hi,

audio signals vary with amplitude, so i guess that if the AGC is faster than 20 Hz, it will remove the amplitude information of the signal...I think that's what Vivek was saying anyway..

I don't really know much about it, but first thing that comes to mind is to upconvert the signal to an IF before doing AGC so that the relative BW is not so large, and then down-convert it again. That way your loop can be faster...

cheers,
Aaron

Title: Re: Is it wise to use AGC for audio signal amplification?
Post by vivkr on Oct 7th, 2008, 11:07pm

Hi Aaron,

You are spot on about the bandwidth issue.

As for upconverting, that sounds intriguing. Let me think if it would work.

Regards,
Vivek


aaron_do wrote on Oct 7th, 2008, 7:00am:
Hi,

audio signals vary with amplitude, so i guess that if the AGC is faster than 20 Hz, it will remove the amplitude information of the signal...I think that's what Vivek was saying anyway..

I don't really know much about it, but first thing that comes to mind is to upconvert the signal to an IF before doing AGC so that the relative BW is not so large, and then down-convert it again. That way your loop can be faster...

cheers,
Aaron


Title: Re: Is it wise to use AGC for audio signal amplification?
Post by vivkr on Oct 8th, 2008, 2:01am

Hi Aaron,

Thanks for your brilliant suggestion. I think it will work although I have not looked through all possible problems.

The key function is that of peak detection and it seems to work. I am able to build a very simple circuit (accuracy is not a very big issue) to do the job and peak detection seems to give almost identical results with an IF peak detector as what I got with my baseband processing circuit, except that the detector bandwidth can be 200 times higher.

Let's see what other issues arise. Atleast, the delay part is taken care of.

Regards,
Vivek

Title: Re: Is it wise to use AGC for audio signal amplification?
Post by loose-electron on Oct 9th, 2008, 12:21pm

For audio systems, peak detection of a DC reference level and comparing that to the input signal provides a PWM type signal which can be used to control gain.

With that in hand, you need a very very LOW bandwidth control loop, usually underneath 0.1Hz!!!!

For the sake of argument, you speech is 10Hz to 10KHz, and you want to be several decades below that to not encroach on the signal you are processing.

With human speech, and gain control you will have one additional issue - dead time and pauses - If the loop is just left to free run, when a person pauses, the gain slowly ratchets up. They start talking again and  you get a blast of high gain volume because the control loop went to maximum gain. Keepingthat in mind, you need to add a "loss of signal" conditional into your control loop. When the input signal goes quiet (below a defined level) the control loop maintains the present state gain and does not adjust until an input signal comes back.

There are some other issues here due to the idiosyncracies of human speech, but the above has been used with some success.

-- Jerry

Title: Re: Is it wise to use AGC for audio signal amplification?
Post by chase.ng on Oct 14th, 2008, 3:36pm

Hi Vivek,

Regarding the upconversion idea, I am just wondering, isn't that you still need to have a very low BW control loop since you now need to detect the envelop change?

chase

Title: Re: Is it wise to use AGC for audio signal amplification?
Post by vivkr on Oct 14th, 2008, 11:02pm

Hi Chase,

The overall bandwidth is not so small at about 20 kHz for audio, provided the IF is not too high. The problem is that if you do not upconvert, then the lowest frequency of interest at 20 Hz constrains the regulator bandwidth to be < 20 Hz.

I still have to see if I can use this approach because it is not clear yet whether I can upconvert the input signal easily (without some other system-related issues) or not.

Vivek

The Designer's Guide Community Forum » Powered by YaBB 2.2.2!
YaBB © 2000-2008. All Rights Reserved.