随着软件无线电技术和FPGA、DSP、AD 等技术的高速发展,数字接收机的应用日益广泛。为了扩大数字接收机的ADC 动态范围,广泛采用了自动增益控制(AGC) ,使接收机的增益随着信号的强弱进行调整,其性能的好坏直接影响着接收机能否高质量稳定接收。传统的AGC 电路大都采用模拟电路,但由于模拟AGC 缺乏智能性,难以实现复杂的控制算法,且精度不高,调试复杂。这里介绍了一种基于FPGA 和数控VGA 芯片AD8370 的数字自动增益控制的实现方法,实时地调整中频接收机的增益,大大增强了系统的动态范围。
1 数控AGC 实现方法
数控AGC 原理框图如图1 所示,在信号数字化后,根据样本估计出信号功率,与参考值比较后,反馈控制前端的数控VGA 芯片,将信号输出调整到ADC 的满量程附近,以获得全程数字量化和最大输出信噪比。
图1 AGC 环路框图
要实现AGC 控制,必须先检测信号幅度或功率的估计值,通过正交I/Q 的均方值即I2+ Q2 精确得到AGC 信号功率,其中I、Q 为同相正交2 支路的符号峰值采样点数据。计算机仿真表明,当信号以每符号4 采样点进行统计平均估计时,得到的估计值与定时恢复无关,即I、Q 值不必为最佳采样点。
由于输入信号的幅度通常是缓慢变化的,故可通过一段时间样值的累加进行一次估计,通常将累加值与参考值相比,得到AGC 需放大或缩小的倍数。在这里,将除法运算改为对数运算后的减法实现,通过与参考值的比较,直接对应需放大或缩小的dB数。再通过查表,转化为数控VGA 芯片的控制字,反馈至前端。这与模拟AGC 相比,由于反馈部分的主要功能由数字方法实现,使得复杂的控制要求用数字信号处理技术能够较容易的实现,且具有快速收敛和精确的稳态响应等优点。
2 计算机仿真
在Matlab 中,首先生成PN 9 的伪随机码作为基带信号。进行格雷码的预差分编码和成型滤波,上变频、加噪、下变频后得到正交和同相2 路基带信号:
式中,△ω为载波频偏,θ0 为载波相位,则:
仿真中,设置其中信噪比为12 dB,中频为70 MHz,符号率2 Mbps,采样率为64MHz,抽取率为8,信号功率估计时累积长度为1 024 点,即256 个符号。
调整前采样所得的中频信号如图2 所示。其中前4 000 点的信号放大倍数为1,4 001 至9 000 点的信号放大倍数为10,9 000 点之后的放大倍数为20,即信号幅度有2 次变化,需通过AGC 进行调整,使信号幅度保持恒定。图2( a) 为AGC 调整后的中频信号,其中调整的参考值为前4 000点信号的功率,可以看出在4 000和9 000附近信号有一段抖动,这是调整所需的相应时间; 下图为AGC 的放大倍数,同样的,在4 000和9 000点产生了跳变,以响应信号幅度的变化,其中前4 000点的放大倍数为1,4 001至9 000点的放大倍数变为0. 1,而9 000点之后则为0. 05。另外根据仿真结果,信号功率估计值最大偏差小于1 dB,因此,该估计算法和调整控制是准确有效的。
图2 调整前后的信号及放大倍数
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)