1. 导言
在移动通讯和高速无线数据通讯中,多径效应和信道带宽的有限性以及信道特性的不完善性导致数据传输时不可避免的发生码间搅扰,成为影响通讯质量的首要因素,而信道的均衡技能能够消除码间搅扰和噪声,并削减误码率。其间判定反应均衡器(DFE)是一种十分有用且使用广泛得抵挡多径搅扰得办法。现在DFE大致有以下几种完结办法:1)选用多片通用数字滤波器集成电路级联方法,但一起由与多片带来的体积和功耗的添加,在实践中运用不多。2)选用DSP来完结,如Motorola SC140便是单片的可编程均衡器,选用软件来完结算法,但因为受器材功用约束,在实时性要求极高的场合中受到约束。3)选用可编程逻辑器材完结,跟着可编程逻辑器材逻辑门数量和速度的不断添加,在单片上完结体系集成现已成为可能,而且FPGA特别合适完结可装备的判定反应均衡器。
2.判定反应均衡器的基本原理
判定反应均衡器(DFE)是一种非线性均衡器。如图1所示,由前馈部分(由FIR滤波器组成)和反应部分(由IIR滤波器组成)组成,前馈部分能够抵消在时间上超前的码间搅扰和在时间是滞后的码间搅扰(由中心抽头的方位决议),反应部分能够抵消在时间上滞后的码间搅扰。
均衡器的输出为:
式中M,N别离为前馈滤波器和反应滤波器的长度。抽头系数更新选用DD_LMS(direct decision least mean square)和CMA(constant modulus algorithm)算法,CMA是一种盲自适应算法,即不需求练习序列,能够让均衡器收敛到较低的MSE水平,但因为CMA的差错量较大,然后步长较小,CMA的盯梢才能有限,因而,在DFE规划中,CMA常常作为均衡器的初始化算法,即对多径信号的时延和起伏进行大略估量。而DD_LMS算法相关于CMA有更低的MSE水平,而且DD_LMS具有较低的差错量,然后步长更大,盯梢才能强,因而,在DFE规划中,DD_LMS常常作为均衡器安稳后的自适应算法。
3.规划思维
因为咱们规划的DFE是一个比较复杂的体系,咱们在规划中依据功用块自下而上分层次进行,这样能够节约规划时间,削减规划输入的过错,消除重复的电路元件,并能简化校验于进行修正,在实践规划中,依照模块的巨细和功用分红三部分:如图二所示,PART I包含接口和DFE均衡器,PART II包含判定器和差错操控函数运算模块,PART III为抽头系数调整部分。
出于灵活性的考虑,体系选用相似于集散操控而非集中操控的计划,也便是体系没有一个中心操控器,这样能够坚持三个部分的相对独立,若要改动规划,比方改动算法,只需求改动差错操控函数运算模块即可。各模块的恰当切割大大添加了体系的灵活性。
4.各模块的FPGA完结
4.1 接口模块
本体系并未触及详细的A/D器材,仅依据常用的A/D器材的作业信号规划体系接口模块。
在转化完结后,一般A/D器材输出一个低电平信号作为A/D的答应信号。该信号在体系中为输入信号ad_end,接口模块体系时钟一直监控ad_end的电平改变,当检测到ad_end的低电平时,接口模块发生一个“开端”脉冲作为答应信号,答应DFE的推迟环节接纳输入数据,并开端移位。其完结如图三所示。
4.2 DFE模块
均衡器分为FFE(Feedforward Equalizer)和FBE(FeedBackward Equalizer)两部分,结构相似,前馈滤波器为32阶的FIR滤波器,反应滤波器为64阶的IIR滤波器,滤波器系数宽度都为16位,精度为15位,输入数据宽度为12位,精度为10位,判定器输出数据为2位,精度为0位,该模块首要由输入移位寄存器和卷积模块组成。
(1)输入移位寄存器
关于前馈滤波器,因为共有32阶,因而输入寄存器的长度为32。界说一个32×12的二维数组FFF[32][12],复位信号有用时,FFF清零。复位信号无效,而输入使能信号有用时,每来一个时钟上升沿,就从输入端进入一个数据,上一时间的数据别离前移一位,最前面的数据被第二个数据掩盖。
关于反应滤波器,因为有64阶,因而输入寄存器的长度为64,界说一个64×12的二维数组FFF[64][12],数据输入方法和前馈滤波器相同。
(2)卷积部分的完结
关于前馈滤波器,输入数据宽度是12位,精度为10位,滤波器系数宽度为16位,精度为15位,输入数据为带符号数,数据的高位为符号位,为完结相乘运算,规划12×16位的乘法器,别离早年馈输入移位寄存器和前馈系数移位寄存器中取出数据和系数作为12×16的输入,这样32个乘法器就别离得到32个乘积,乘积的宽度为11+15,精度为10和15的数据相乘后得到的数据精度为25位,因而成果的小数点在第25位和26位之间。为削减体系的硬件开支,把乘法器的输出成果进行合理的截取,取精度为15位,低10位丢掉,这样乘法器的输出就变为从第11位到第27位的数据,宽度为17位,精度为15位。反应滤波器完结与之相似。
4.3差错操控函数运算模块
差错操控函数运算模块首要完结判定输出以及差错操控函数的运算。不同的抽头更新算法在于差错操控函数的不同。判定器的功用是进行差错判定,判定器判定部分比较简单,因为二进制数选用补码表明,判定和差错的核算都能够用组合电路来完结。
4.4抽头系数调整模块
本模块完结抽头系数的自适应调整,模块首要由系数移位寄存器和系数调整运算模块组成。
(1)系数移位寄存器
关于前馈寄存器,相应的输入移位寄存器有32节,则系数移位寄存器也有32节。设置一个初始系数装入输出端,32个系数输入端,32个系数输出端,复位信号有用时,一切寄存器清零,初始系数串行装入,装入7个初始系数需求7个时钟周期,在装入使能有用时,每来一个时钟上升沿,装入一个系数,先装入的系数右移动一个寄存器,假如系数调整使能有用,则每来一个时钟上升沿就把来自系数调整运算模块调整后的系数并行装入到系数移位寄存器中。
关于反应系数,移位寄存器有64节,移位原理同前馈滤波器。
(2)系数运算调整
抽头系数的调整可按上式来核算,其间 为 时间前抽头系数向量, 为 时间反应抽头系数向量, 为输入数据向量, 为判定器输出向量, 为差错操控函数核算模块的输出。
关于前馈抽头系数,输入的前一个时间的系数来自前馈系数移位寄存器输出的系数,每来一个时钟,系数调整一次。 为宽度12位,精度为10位的数据, 为宽度为九位,精度为0位的数据,两者输入到一个12×9乘法器相乘后,得到宽度为11+8+1=20位,精度为10位的数据。因为在差错操控模块中核算 时,只取了低9位,小数点右移了15位,现在把小数点左移15位得到宽度为26,精度为25的数据。截取高16位,得到宽度为16、精度为15的系数调整量。前一个时间的系数和这个调整量输入到一个16位减法器,这儿系数极小,所以不用考虑进位,得到一个宽度为16位、精度为15位的差,即调整后的系数,输出到前馈系数移位寄存器。
关于反应抽头系数,输入的前一个时间的系数来自反应系数移位寄存器输出的系数。每来一个时钟,系数调整一次。 为宽度为2、精度为0的数据, 为宽度9位、精度0位的数据,两者输入到一个2×9乘法器相乘后,得到宽度为1+8+1=10位、精度为0位的乘积。相同把小数点左移15位,得到系数调整量。前一个时间的系数和这个调整量输入到一个16位减法器,得到一个调整后的系数,宽度16位、精度15位。
4.5 FPGA完结
整个规划悉数用verilog HDL言语完结,FPGA芯片选用XC2VP70,选用Synplify Pro 7.7进行归纳,ncverilog 5.0进行功用仿真,ISE6.3生成布线文件。依据归纳成果对规划进行了优化,最终体系显现最高频率可到80M,上板测验功用正常,体系推迟操控在35us规模以内,能够满意绝大多数高速无线数据通讯体系对均衡器的要求。
5总结
本文作者立异点:针对高速无线数据通讯的实时性要求,提出选用FPGA来完结可装备均衡器的规划,在规划过程中选用自顶而下区分的规划方法,即方便了规划的需求,一起又满意了功能的要求,在实践项目中收到很好的作用。