您的位置 首页 5G

根据FPGA器材完成AGC算法和体系的规划

基于FPGA器件实现AGC算法和系统的设计-大多数接收机必须处理动态范围很大的信号,这需要进行增益调整,以防止过载或某级产生互调,调整解调器的工作以优化工作。在现代无线电接收装置中。可变增益放大器是电控的,并且当接收机中使用衰减器时,他们通常都是由可变电压控制的连续衰减器。控制应该是平滑的并且与输入的信号能量通常成对数关系(线性分贝)。在大多数情况下,由于衰落,AGC通常用来测量输入解调器的信号电平,并且通过反馈控制电路把信号电平控制在要求的范同内。

1、 引 言

大多数接纳机有必要处理动态规模很大的信号,这需求进行增益调整,以避免过载或某级发生互调,调整解调器的作业以优化作业。在现代无线电接纳设备中。可变增益扩大器是电控的,而且当接纳机中运用衰减器时,他们一般都是由可变电压操控的接连衰减器。操控应该是滑润的而且与输入的信号能量一般成对数联系(线性分贝)。在大多数情况下,因为式微,AGC一般用来丈量输入解调器的信号电平,而且通过反应操控电路把信号电平操控在要求的范同内。

2 、体系总体规划

在本规划中,前端TD_SCDMA射频信号RF输入后,通过MAX2392零中频下变频解调后进行增益处理。VGA输出的信号通过ADC改换后就成为数字中频信号,经RSP(接纳信号处理器)处理输出为IF数字信号。IF信号能够通过AGC操控算法处理后操控VGA的增益。AGC增益操控算法在数字部分来完成,在本规划中,AGC电路能够有用进步链路的动态规模(+25~-105 dBm),进步ADC输出的SNR,以使DSP能更容易地完成Dw-PTS同步。AGC在体系中的方位如图1虚线框所示:

根据FPGA器材完成AGC算法和体系的规划

3 、AGC体系的FPGA完成

根据AGC所完成的功用,在FPGA中将AGC模块分为如下几个部分来完成:

3.1 数据千路模块

从RSP接口来10位二进制补码数据I1和Q1,与求指数模块传送来的预扩大增益GAIN2相乘后所得出的数据(仍取10位二进制补码数据)即将传送到CIC均匀模块,一起要别离与求指数模块传送来的扩大增益GAIN3相乘,然后采纳截短处理,取8位二进制补码数据,I1′,Q1′,输出到DSP中。

3.2 核算下行同步码功率(SYNC_DL)模块

核算下行同步码功率(SYNC_DL)模块对应于图2中的判别部分,是AGC中最为重要算法核算。TD_SCD-MA每个帧有6 400个码片,在其一帧5 ms的时刻上是不接连的,因而只能求出下行同步码(SYNC_DL)的功率值,以此为根据操控VGA的电压值。

由图3的TD_SCDMA的帧结构知道,下行同步码(SYNC_DL)在下行导频时隙(DwPTS)发射,SYNC_DL的长为64个码片,在其左面和右边各有32和96个码片的维护时隙(GP)。为此,在FPGA中共用了3种不同的办法核算其功率值。

办法一 在FPGA内根据检波法的原理核算下行同步码64个码片的功率(AGC模块图2中的dcmt部分)。考虑TD的帧结构,维护时隙GP的功率很小,故从接纳功率的时刻散布上来看,与GP比较SYNC_DL段的功率较大。当用SYNC_DL段的64码片之和除以SYNC_DL前后个32个码片相加之和,成果大于3时,就能够判别出SYNC_DL的大致方位。因而,根据这种办法,FPGA在5 ms的周期中遍取6 400个码片,每64个码片做积分,顺次向前翻滚核算,一起做除法运算,最终即可核算出SYNC_DL在一帧6 400个码片中的方位和能量,以此操控VGA的电压和后续的核算。不过这种办法只要在信号质量很好,信号强度比较大的时分才核算准确。

办法二 由DSP方根据传过来的数据,通过相干检测法检测出SYNC_DL的准确方位,并把这个方位参数传送给FPGA。FPGA收到这一点的方位后,立既停止运用其本身检波法求出的功率值,根据DSP传过来的SYNC_DL的方位,核算出这一点之后的64个码片的积分值,作为SYNC_DL的总功率,并以此操控VGA的电压(AGC模块图2中的dwpts部分)。这时求出来的总能量比较准确(DSP供给的方位比FPGA本身检波法求出来的准确),可是速度比较慢。

办法三 当信号的强度变得很弱,信号或许淹没在了噪声傍边。这时无论是由FPGA的检波法仍是DSP的相干法都核算不出SYNC_DL的方位和能量。在这种情况下,以为在5 ms时域上信号接连,能量均衡,FPGA求5ms帧的均匀值,以此作为SYNC_DL的功率,并操控VGA(AGC模块图2中的CIC部分)。

3.3 求对数运算模块

在本模块,将上面得到的功率值进行求对数运算,以削减数据的运算量。用FPGA完成求对数运算时,能够先将数据归一化在1~2之间,然后通过将数据平方后推导出最高位的办法逐位求出所求数据的二进制数值。假定自变量X归一化在区间[1,2]内,用二进制数据可表明为1.X1X2…Xn,则所求的对数值在区间[0,1]内,用二进制数据可表明为0.Y1Y2…Ym,因而可用数学办法表明为20.Y1Y2…Ym=1.X1X2…Xn,问题归结为求Y1Y2…Ym。将上式左右两头一起平方, 能够得出2Y1Y2…Ym=(1.X11X21…Xn1)2,由此可推倒出Y1来。(X为已知,若等式右边数据小于2,则Y1=0;反之,若大于或等于2,则Y1=1)求出Y1后能够导出20.Y2Y3…Ym=1.X11X21…Xn1,同理可推倒出Y2。依此类推,可求出对数值的各位。

进行FPGA设计时,能够规划出一个平方比较单元顺次求出对数值,一起要注意需求消耗的体系资源。

3.4 求指数运算模块

通过求对数模块后,一路数据传送到IIR中,另一路数据则要传送到DSP中进行算法运算,因而,需求添加一个求指数模块,将对数模块运算后的成果还原成本来的数据送到DSP中。指数换底公式可知:2x=ex1n2,由双曲函数界说及特性可知:ex=sinh(x)+cosh(x),而当自变量x在[-π/4,7c/4]规模内时,能够选用FPGA的IP CORE(CORDIC算法)完成双曲正弦函数和双曲余弦函数,因而在FPGA内部求以2为底的指数函数时,能够先将自变量归一化在[0,1]内,然后将自变量乘以常系数1n 2,因为ln 2《π/4,故能够新乘得的数据作为新的自变量,使用IPCORE求出其双曲正弦函数和双曲余弦函数后将其相加,即可得到所需求的指数函数值。

3.5 IIR反应模块

IIR反应模块包含3部分:IIR滤波单元、饱满反应单元和VGA操控单元,其间IIR滤波单元担任将求对数模块得出的数值与参阅数值比较后得出的差错数据Uerr作IIR滤波核算得出Ufilter,然后根据相关算法核算出Urssi。饱满反应单元担任将Urssi与饱满限幅数据比较后得出差错电压Uerr2,然后按照相关算法求出U2送到求指数模块,然后能够操控差错反应增益Gain2。VGA操控单元担任将Urssi进行饱满限幅后得到输出操控电压Uda,量化后通过数模改换然后操控VGA。

3.6 CIC均匀模块

当AGC用于WCDMA体系时,能够将图2中的判别部分悉数去掉,参加这个CIC均匀模块。CIC均匀模块担任将预扩大模块求出的I1和Q1作为自变量,通过功率算法P1′=I1*I1+Q1*Q1求出P1′,然后将6 400个作业频率为1.28 MHz的P1′均匀,得出作业频率为1.28 MHz的P1。相同得出P2后再求出P1+P2。

在FPGA中关于相加运算,包含CIC完成部分的纯整数相加算法和其他部分的小数相加算法。其间CIC运算部分的运算数据是二进制10位有符号数;关于相乘运算,包含CIC完成部分的纯整数平方算法、CIC完成部分的常系数小数相乘算法。

4、 结 语

以上介绍的在FPGA中完成AGC的算法,通过项目的验证测验,作用比较好,DA选用ADS的5621,VGA电压调理规模在0.3~1.8 V之间,共45个dB的调理规模,因而AGC在+10~-35之间起调理作用,信号低于-45 dBm时,VGA电压坚持1.8 V最大值;高于+10 dBm时,VGA电压坚持在最小0.3 V。通过测验,FPGA可在+25~-105 dBm规模内查找到SYNC_DL的方位。

此种AGC算法,核算相对简略,运算速度快,不只可用于TD_SCDMA信号,在核算下行同步码能量时稍加改动,只做CIC均匀运算,即可应用于WCDMA信号。

责任编辑:gt

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/yingyong/5g/339508.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部