文献标识码:A
DOI:10.16157/j.issn.0258-7998.171328
中文引用格式:赵潇腾,尹军舰,张锦涛,等. 一种混合式高动态范围AGC算法与FPGA实现[J].电子技术应用,2017,43(12):76-80.
英文引用格式:Zhao Xiaoteng,Yin Junjian,Zhang Jintao,et al. A hybrid AGC algorithm for high dynamic range and implementation on FPGA[J].Application of Electronic Technique,2017,43(12):76-80.
0 引言
由于多径衰落等因素,接收机天线端的信号功率可能具有超过60 dB的波动[1]。而中频ADC具有的固定动态范围难以精确采样这样的大动态信号,为使基带能够正确解调、解码,接收机需要根据输入信号的强度自动调整其增益,从而为后级提供相对恒定的输出。这种功能正是由自动增益控制(Automatic Gain Control,AGC)环路实现的。
常用的AGC环路分为3种:前馈式AGC、反馈式AGC与混合式AGC[2-4]。前馈式AGC表现为开环控制,输入信号功率被检测后经处理用作增益的调整;反馈式AGC则是闭环控制,输出功率与一个参考值作对比后得到功率误差,该误差经过运算后控制增益的大小。文献[3]的研究表明,前馈式的AGC具有更快的响应速度,且其算法较为简单,占用资源较少,因此得到了广泛的应用。然而正因为其灵敏的响应特性,前馈式AGC容易因电路参数的波动而产生误调。反馈式AGC则可以实现较为稳定的控制,但因其呈闭环结构,环路参数需要仔细确认,为设计带来一定的挑战。混合式AGC则是前馈与反馈式的结合,兼具两者的特性。
1 混合式AGC环路
用于接收机中的混合式AGC环路由射频前馈式AGC电路与中频反馈式AGC电路组成。如图1所示,天线接收到的信号经过一定的耦合系数馈入射频检波器,检波器的输出电压由ADC转换为数字量,再由FPGA处理后控制信号通路上的单刀双掷开关与数控衰减器,从而控制射频部分的增益。其中,低噪声放大器(Low Noise Amplifier,LNA)具有22 dB增益,衰减网络具有-10 dB增益。射频信号与本地振荡器下混频得到中频输入信号IFIN,IFIN经过两级相同的可变增益放大器(Variable Gain Amplifier,VGA)放大后,通过耦合器向中频检波器馈入适当的电平,检波器的输出电压VIFDET由ADC转换为数字量,再由FPGA进行数据处理,处理结果决定DAC的输出电压,从而控制VGA的增益。其中IFOUT表示中频输出信号,VG为VGA的控制电压。
2 AGC算法
在介绍AGC算法前,首先说明环路的设计指标。如引言中所述,所设计的AGC算法需要满足两种不同输入信号的需求。对于恒包络信号,需要AGC单次控制时间小于50 μs,输入动态范围不小于-95 dBm~5 dBm,输出功率为-19 dBm;对于非恒包络信号,需要输出信号包络不失真。
根据AGC环路指标,设计了图2所示的总体算法,注意到输入信号的包络特性在本系统中可由外部获悉。环路启动时首先判断输入信号是否为恒包络信号,若是,则执行快速AGC算法,否则执行慢速AGC算法,顺序均为先射频后中频。中频AGC算法执行完毕后经过一定时间间隔再次返回射频AGC,如此循环。
射频前馈式AGC算法如图3,首先配置ADC的射频通道采样,根据输入信号的包络特性,确定采样次数。根据耦合器与射频检波器的特性(式(1)),将均值电平转化为对应的输入功率。对于检测到的输入功率执行条件判断,从而确定LNA与数控衰减器的应配状态。若本次确定的状态与目前的电路状态一致,则跳过配置阶段结束射频AGC,否则按照所确定的状态配置电路后结束。
射频AGC算法的仿真结果如图4所示,当射频输入功率从-95 dBm变化至5 dBm时,射频输出功率变化范围为[-73 dBm,-8.2 dBm],将输入信号的波动范围由100 dB降为64.8 dB。
在射频调整的基础上,中频反馈式 AGC进行增益的连续精密调控,其算法如图5所示,首先为VGA的控制电压VGint赋初始值,接着根据输入信号的包络特性确定中频通道采样次数并求均值VIFDET,在非恒包络输入下,两次采样间具有T1秒的时间间隔。中频AGC环路中VGA的增益Gain与控制电压VG在正常工作状态下符合式(2)所示的线性关系,其中增益的单位为dB,控制电压的单位为V。
根据所使用的VGA器件特性,式(2)中k取50,b取-5。中频检波器输出电压VIFDET与中频输出功率PIFOUT在正常工作区域符合式(3)的线性关系,其中电压的单位为V,被检测功率的单位为dBm。根据检波器与耦合器特性可以得:
式(3)中k1取0.05,b1取2.575。
在中频AGC环路中,若用PIFIN表示中频输入功率,PIFOUT表示中频输出功率,则所设计的环路目标为:当PMIN
IFIN
MAX时,PIFOUT保持在目标功率PAIM。假设某一时刻的输出功率为PNOW,VGA控制电压为VG1,中频检波器的输出电压为VIFDET,经过一次调整后,应使VGA控制电压变为VG2,输出功率达到PAIM,根据式(2)、式(3)及控制目标可以得到式(4)的控制算法,其中NSTAGE表示VGA的级数,在本文中取2,PAIM取-19 dBm。
基于控制目标及式(4)所示的关系给出了图5中的判断条件与控制电压VG的计算公式,其中VGint为VGA目前的控制电压,Max[]表示取最大值运算,Min[]表示取最小值运算。由于检波器仅在一定范围内符合式(3)的关系,因此需要确定一个可置信的检波电压区间:[0.375 V,2.75 V]。在此区间内,认为检波电压VIFDET代表了真实的输出功率,此时按照式(4)所述的方法进行AGC控制;当VIFDET<0.375 V时,认为输出功率较小,需先增大VGA的控制电压以提高增益,使VIFDET于可置信区间,然后重新进行判断;VIFDET>2.75 V时,需先减小VGA的控制电压以降低增益,再重新判断。
中频AGC算法仿真结果如图6所示。其中横坐标为AGC执行次数。中频输入信号的功率范围为-100 dBm~-10 dBm。当输入信号功率处于[-79.04,-9.3]dBm时,VGA控制电压VG能够随着输入功率的变化而改变,输出功率保持在-19 dBm,VIFDET与PIFOUT同步变化,实现了环路的功率控制目标。
3 算法的实现与测试
根据第2节所述,在Xilinx Spartan 3E系列FGPA上实现了混合式AGC算法。算法控制的主要器件包括ADC、射频开关、数控衰减器与DAC。其中,射频与中频部分共用一片10 bit、4通道的模数转换器ADS7954;单刀双掷开关的状态由FPGA输出的单比特高低电平控制;数控衰减器为6 bit、0.5 dB步进的RFSA2644芯片。中频VGA的控制电压由12 bit DAC提供。ADC通道的切换及采样、数控衰减器的衰减值、DAC的输出电压均由FPGA通过串行外设接口(Serial Peripheral Interface,SPI)总线控制。为了方便数字部分的处理,所提出算法中的采样次数N1、N2、N3、N4均取2的整数次幂。
在不同输入激励条件下Modelsim的功能仿真结果如图7所示。当输入为恒包络信号时(图7(a)),首先配置ADC射频通道,进行4次射频通道采样,经过计算后配置了数控衰减器。由于输入功率较高,LNA始终保持关断,随后预置了VGA增益。接着配置ADC切换至中频通道,进行连续的16次采样,最后配置DAC输出适当的VGA控制电压。恒包络输入信号下单次AGC过程耗时41.73 μs。
当输入为非恒包络信号时(图7(b)),射频AGC采样变为64次,中频AGC仍然采样16次,但在采样间加入了6.68 μs时间间隔,总的控制时间为230.53 μs。使用示波器测量的时域输入输出波形如图8所示,其中通道1为输入正弦包络信号,包络周期为128 μs,通道2为中频输出信号,可以观察到输出信号包络保持完好,平均功率恒定。
输入为恒包络信号条件下,混合式AGC环路中关键参数随射频输入功率变化的曲线如图9所示。图9(a)中按照式(1)拟合的曲线与实测曲线吻合良好;图9(b)中VGA控制电压呈现三次跳变,与射频AGC算法中的所设计的4种条件判断相符;图9(c)、图9(d)表明所设计的AGC系统在输入信号功率为-100 dBm~10 dBm时,输出可恒定地控制在-19 dBm,具有110 dB的动态范围。近年来所提出AGC系统的动态范围对比如图10[5-16]所示,对比表明本文所实现的动态范围具有一定的领先性。
4 结论
本文针对输入信号的不同的包络特性,结合前馈式与反馈式AGC的特点,依据接收机中的硬件架构,提出了一种混合式高动态范围AGC算法,并在FPGA硬件平台上得以实现。在该算法的控制下,以射频开关、数控衰减器、检波器、可变增益放大器为核心器件,实现了一种输入动态范围110 dB、灵敏度-100 dBm、输出功率为-19 dBm的自动增益控制环路。在恒包络与非恒包络输入下,算法执行时间分别为41.73 μs与230.53 μs,信号包络保持完好。对比表明,所提出的AGC算法实现了优良的动态范围特性。
参考文献
[1] XIA G,ZHANG Q,YANG Z.Design and implementation of an efficient and large dynamic range hybrid digital AGC for burst communication systems[C].2012 IEEE 11th International Conference on Signal Processing,2012:1373-1377.
[2] FUJII M,KAWAGUCHI N,NAKAMURA M,et al.Feed-forward and feedback AGC for fast fading channels[J].Electronics Letters,1995,31(13):1029-1030.
[3] SOBAIHI K,HAMMOUDEH A,SCAMMELL D.Automatic gain control on FPGA for software-defined radios[C].Wireless Telecommunications Symposium,2012:1-4.
[4] 沈同平,谷宗运,方芳,等.反馈式数字AGC的FPGA优化实现[J].安庆师范学院学报(自然科学版),2015(3):68-70.
[5] 马战刚,张宇平,孙弋,等.大动态范围AGC电路在接收机中的应用[J].开云棋牌官网在线客服技术,2010,35(2):191-193.
[6] 朱会柱,袁斌,张志刚.90 dB大动态范围可调AGC系统设计[C].2009年全国微波毫米波会议,2009.
[7] 陈立泽,陈星,王超.宽带大动态中频AGC系统实现[J].电子测量技术,2010,33(11):46-48,73.
[8] 李飚,刘春群,黄忠快.基于FPGA射频接收机前端AGC系统电路的设计[J].无线电通信技术,2016,42(3):82-84.
[9] 郑隆浩,彭艳云.基于FPGA的中频AGC电路设计[J].电子设计工程,2014(14):113-116.
[10] Jing Bing,Xue Yuankun,Ye Fan,et al.Automatic gain control algorithm with high-speed and double closed-loop in UWB system[C].2013 IEEE 10th International Conference on ASIC,2013:1-4.
[11] 耿云辉,冯西安,张路,等.一种大动态范围AGC电路的设计与实现[J].微处理机,2012(3):20-23,28.
[12] RAY S,HELLA M M.A 10 Gb/s inductorless AGC amplifier with 40 db linear variable gain control in 0.13 um CMOS[J].IEEE Journal of Solid-State Circuits,2016,51(2):440-456.
[13] TISSERAND E,BERVILLER Y.Design and implementation of a new digital automatic gain control[J].Electronics Letters,2016,52(22):1847-1849.
[14] 罗有亮,魏连魁,刘杰.基于VCA810的大动态范围AGC电路设计[J].电子设计工程,2016(4):105-107,110.
[15] 李怀良,庹先国,朱丽丽,等.中低频宽动态范围AGC放大器设计[J].电测与仪表,2013,50(2):96-99.
[16] 贺欣.宽带大动态AGC电路设计[J].电子设计工程,2012(8):167-170.
作者信息:
赵潇腾1,2,尹军舰1,张锦涛1,2,李仲茂1,冷永清1
(1.中国科学院微电子研究所,北京100029;2.中国科学院大学,北京100049)