吳小林,朱學勇,文光俊
(電子科技大學 通信與信息工程學院 射頻集成電路與系統研究中心,四川 成都 611731)
自動增益控制技術(Automatic Gain Control,AGC)有數字自動增益控制和模擬自動增益控制兩種。相較于模擬AGC電路而言,數字AGC由于采用離散的增益碼來控制增益而不會引入額外的噪聲,并且具有響應時間快、電路結構簡單等優點。故數字AGC電路廣泛應用于數字化的發射機和接收機中,其性能好壞對接收機的高質量穩定接收起著至關重要的作用。
AGC的基本功能是隨著發射機或接收機的輸入信號的功率自動調整放大器的增益,使輸入信號的功率變化時,輸出信號功率基本不變[1-2]。
調諧器的簡化結構如圖1所示。在系統鏈路中有3級可編程放大器:LNA(low noise amplifier)、VGCF(vari?able gain channel filter)和 PGA(programmable gain ampli?fier)。其中,VGCF是由一個低通濾波器(LPF)和一個放大器級聯組成的。各級放大器的增益由數字AGC電路提供的數字信號來控制。相比以上放大器,混頻器只是提供一個固定的增益。

假設差分輸入信號的功率分別為xi(t)和xq(t),差分輸出信號功率分別為yi(t)和yq(t),LNA,Mixer,VGCF和PGA的增益分別為wLNA(t),wMIX(t),wVGCF(t)和wPGA(t),則

在數字AGC電路中,可變增益放大器的增益是離散的,因此輸出功率不能穩定到一點上,而是穩定到一段功率范圍內[3]。在本文中,輸入信號功率范圍為(1.02~116 dBμ),輸出信號功率范圍穩定在(109~114 dBμ),故整個系統鏈路可提供高達120 dB的增益。混頻器的增益在本文中固定為-9 dB,故只需合理地分配W_LNA,W_VGCF和W_PGA的值,就可滿足輸入功率和輸出功率之間的關系。
采用內環AGC控制方式中,系統鏈路中的增益大小由調諧器本身控制,不需要外部輸入控制信號。由于LNA、VGCF和PGA的增益變化都是由數字控制信號實現的,因此屬于數字AGC控制方式。檢測LNA的輸出信號功率,這部分采用模擬方式實現,即采用功率檢測器輸出一個檢測信號(為直流電平),再對檢測信號進行A/D轉換產生數字LNA_RSSI信號輸出。一旦得到數字化的功率測量值,就可根據測量的輸出功率與要求的輸出功率之間的關系來控制放大器的增益。具體實現框圖如圖2所示。

首先給低噪放LNA,VGCF和PGA分配最小的增益(避免過大增益造成輸出信號電平過大,超出后級ADC可以處理的范圍),然后等待輸入信號的功率發生變化,即啟動內環AGC控制。先調節LNA的增益以使在大動態范圍內的輸入信號的功率所對應的LNA的輸出信號的功率在后級VGCF可允許的輸入功率范圍內,VGCF和PGA的增益也依次進行調整。
在調整系統增益時,首先要根據輸入信號的功率范圍與要求的輸出信號功率范圍之間的關系,確定整個系統的增益范圍,然后將系統增益按照一定的規則分配到LNA,VGCF和PGA中。各個模塊分配多少增益沒有嚴格的依據或限制,而第一級的最高增益要足夠大以抑制后面各級的噪聲[4]。
針對于輸入信號的強度不同,LNA,VGCF和PGA的增益分配如圖3所示。
在本文中,LNA,VGCF和PGA輸出信號的功率范圍或檢測窗口定義為如下:LNA的檢測窗口為41~121 dBμ;VGCF的檢測窗口為72~112 dBμ;PGA的檢測窗口為110~114 dBμ。

對內環AGC電路,各級放大器的檢測窗口值需通過I2C接口進行初始化,這些初始化值并不需要基帶解調芯片寫入。
在圖3中,各級放大器輸出信號的功率均位于前面討論的檢測窗口內。輸出信號的功率Pout,也即PGA的輸出信號功率PGA_out,穩定在112 dBμ,故增益分配是合理的。
將LNA,VGCF和PGA增益控制碼顯示在表1中。其中PGA的增益范圍為0~40 dB,步進為0.5 dB。AGC控制電路要實現對于0.5 dB步進的控制。

表1 各級放大器的增益控制碼對比
當輸入信號的功率范圍很大時,若以加1或減1的方式來調整放大器的增益,則需要數以萬計的時鐘周期來得到正確的增益控制碼。因為太多的能量被浪費在這些周期里,如何降低調整時間是個關鍵的問題[1]。
一個簡單的調整方法是按照步長來減少或增強放大器的增益,這意味著放大器的增益在一個調整周期里只改變一個步長。這個過程稱為線性搜索算法[1]。
若輸出信號的功率小于檢測窗口的下限值,則增益控制碼加1以增強增益一個步長;若輸出信號的功率大于檢測窗口的上限值,則增益控制碼減1以減少增益一個步長;若輸出信號的功率在檢測窗口內則增益調整結束。
由于放大器增益不連續,線性算法中需注意的一點是死循環,這種情況發生在檢測窗口設置得比增益步長小的時候。例如輸出信號的功率略小于檢測窗口的下限值,增益步長加1后,輸出信號的功率大于檢測窗口的上限值。這樣增益會反復調整,進入死循環[3]。本設計中,LNA,VGCF和PGA的檢測窗口均大于相應的增益調整步長,故有效避免了死循環的問題。
為了快速調整增益,采用一種改進的算法,該算法基于二進制搜索算法[5]。放大器的增益控制碼按照從高到低的順序被排列成一個數組。通過不斷地減半搜索區間,在該數組中搜索所需的增益控制碼。該算法開始時設最高位為1,其他位設置為0[1]。
當輸出信號的功率小于檢測窗口的下限值,意味著增益控制碼太小,故將搜索間隔減少到高半間隔,即高位保持1,下一位設為1;若輸出信號的功率大于檢測窗口的下限值,意味著增益控制碼太大,故將搜索間隔減少到低半間隔,即高位變為0,下一位設為1。不斷循環直到輸出信號的功率位于檢測窗口內。二分法的優點是:增益的調整時間只與增益控制碼的位數相關。因為增益控制碼的搜索間隔相比之前減少了一半,故鎖定時間大大減小了,最終降低了AGC控制環路的響應時間[3]。
在具體的數字AGC算法中,可以將兩種算法結合起來。當輸出信號的功率與檢測功率相差太多時,用線性算法很耗時,這時采用二分法可以縮短鎖定時間。具體實現辦法是設定一個閾值,當輸出信號的功率與目標功率之差大于閾值時,采用二分法[6]。在本文中,閾值設為LNA的增益步長5 dB所對應的碼字101。
因為LNA和VGCF的增益步進較大,故只需采用線性算法。由于PGA步進為0.5 dB,調整范圍為0~40 dB,共有81個離散增益值,故需要采用二分法和線性算法的結合。詳細的增益調整流程圖如圖4所示。
內環AGC電路在ModelSim SE 6.2b中的功能仿真結果如圖5和圖6所示。圖5顯示了當輸入信號的功率是91 dBμ,并在PGA中分別使用綜合算法和線性算法時,收斂速度的比較。最后一行PGA_over是使用線性算法時,增益調整的完成信號。倒數第二行PGA_over_L是使用綜合算法時,增益調整完成的信號。可以看到,PGA_over_L比PGA_over延時了14個系統時鐘周期。圖6顯示,輸出信號PGA_RSSI穩定在指定的范圍之內。
內環AGC電路完成的版圖如圖7所示。版圖的最終面積是:126 μm×106 μm,當供電電壓為1.2 V時,平均功耗在3.876 mW左右。




AGC在需要穩定輸出信號的無線通信系統中是必需的[4]。本論文介紹了一款應用于移動數字電視調諧芯片中的內環AGC控制電路。該控制電路的最終版圖通過了DRC&LVS驗證,并達到了時序的收斂,符合設計的要求。
[1]WANG Xiaoman,CHI Baoyong,WANG Zhihua.A low-power highdata-rate ASK if receiver with a digital-control AGC loop[J].IEEE Trans.Circuits Syst.II,2010,57(8):617–621.
[2]蔣紹勤.CATV系統中的AGC[J].電視技術,1994,18(9):21-26.
[3]宮志超.射頻接收機中自動增益控制及功率檢測器設計[D].上海:復旦大學,2009.
[4]ISAAC M G.Automatic gain control(AGC)circuits theory and design[EB/OL].[2011-03-03].http://www.eecg.toronto.edu/~kphang/papers/2001/martin_AGC.pdf.
[5]AHO A,HOPCROFT J,ULLMAN J.The design and analysis of computer algorithms[M].NJ:Addison-Wesley,1974.
[6]KHOURY J M.On the design of constant settling time AGC circuit[J].IEEE Trans.Circuits and Systems,1998,45(3):283-294.