一种均衡器的权系数更新装置及方法

文档序号:7898722阅读:248来源:国知局
专利名称:一种均衡器的权系数更新装置及方法
技术领域
本发明涉及一种用于对均衡器的权系数进行更新的装置和方法,特别适用于为高 速均衡器产生权系数,属于数字通信领域。
背景技术
目前,高码速率是通信发展的必然趋势,而均衡器对数据的处理受FPGA处理速度 的限制,所以有必要采用多路数据并行均衡。并行均衡可以克服高码速率带来的硬件速度 限制,提高处理速度,节省硬件资源。并且在并行均衡中,,也存在多种均衡器中的权系数 更新方法。目前文献中讨论较多的都是串行均衡器,其中使用的权系数更新方法有基于 LMS的算法、基于NLMS算法、基于RLS算法等等,在这些算法中权系数的更新策略可能是 每个时钟周期一次,也可能是每η个时钟周期一次。例如《Design and Implementation of Adaptive Equalizer Based On FPGA》(Guo Yecai)禾口《Adaptive LMS Processing Architectures Employing Frequency Domain Sun-Convolution》(Andrew A. Gray)所介 绍的方法每4个时钟周期更新一次权系数;文献的《16QAM基带Modem的FPGA芯片设计》 (耿光辉)所介绍的方法每1个时钟周期更新一次权系数。综合分析大量的关于均衡器权系数更新的文献与相关的研究资料,若将以往的更 新方法应用于高速并行频域均衡器中,会占用大量的硬件资源,并且权系数很容易处于不 稳定的状态,降低了权系数的准确性。

发明内容
本发明的技术解决问题是克服现有技术的不足,提供了一种均衡器的权系数更 新装置及其相应的更新方法。采用本发明降低了用于生成权系数所需数据的精度,进而用 更少的资源达到了同样的性能,并提高了硬件处理速度。本发明的技术解决方案是一种均衡器的权系数更新装置,包括误差信号累加模块、控制模块、权系数产生 模块、计数器;所述误差信号累加模块将权系数产生模块输出的各路误差信号分别送入累加器, 并将累加器产生的绝对值累加值进行M倍抽取后输出;M倍抽取的时刻由计数器决定,并且 由计数器控制误差信号累加模块将累加值清零重置;所述控制模块将误差信号累加模块的输出信号累加求和,得到一路累加信号并送 入由计数器控制的门限比较器;控制信号产生器根据门限比较器的输出结果产生控制信号 ctrl ;并利用控制信号ctrl产生权系数更新信号flag_l0Ck ;所述权系数更新信号flag_ lock输出到权系数产生模块;所述权系数产生模块将从均衡器输出端返回的数据输出到误差计算模块;误差计 算模块将产生的误差信号输出到数据更新模块以及误差信号累加模块;数据更新模块利用 误差信号以及由解调数据经串并变换产生的2η路数据产生梯度信号;梯度信号分别经0到Ien-I个延迟器后的输出进行降Ien矢量抽取后获得Ien路矢量信号;Ien路矢量信号分别 经Ien个累加器后输出信号Mw,j = 1,…,n,k为Mw的顺序编号;权系数产生模块对接收 的flag_l0Ck以及flag_loCk经延迟器后的信号flag_loCk_delay进行判断,若flag_l0ck 为低电平且flag_l0Ck_delay为高电平,则置复位信号reset为有效;若reset有效,则权 系数产生模块以任意值将权系数初始化;若reset无效且flag_l0ck为低电平,则利用Mkj 更新输出的权系数;所述M倍抽取的时刻为计数器累加值cnt = M的时刻,其中M等于计数器的最大 累加值。所述数据更新模块采用频域LMS、NLMS或CMA等算法进行梯度信号计算。一种均衡器的权系数更新方法,具体的步骤如下步骤1 接收由解调数据经串并变换得到的2η路数据,并送入步骤6 ;对均衡器产 生的输出数据进行误差计算,将获得的误差信号同时送入步骤2和步骤6 ;步骤2 将误差信号分为正交的I支路的η路信号和Q支路的η路信号;对分解后 的信号分别进行绝对值累加计算;并从1到M的进行循环累加计数;步骤3 当步骤2中的计数达到M时,对各绝对累加值进行M倍抽取,并将结果送 入步骤4 ;当计数返回1时,对绝对累加值清零,重新开始绝对值累计,并返回步骤2 ;步骤4 将步骤3送入的结果进行叠加产生一路和信号sum ;若计数值等于A时, sum小于门限gate,则对控制信号ctrl加1 ;若ctrl等于B时,由计数值等于A,则保持ctrl 不变;若计数值等于A时,sum大于等于门限gate,则将ctrl清零;将ctrl送入步骤5 ;步骤5 若Ctrl等于B,则产生有效的权系数更新信号flag_loCk ;否则产生无效 的flag_lock,并将flag_lock送入步骤7 ;步骤6 利用步骤1送入的2η路数据以及误差信号进行频域数据处理,获得2η路 梯度信号;对2η路梯度数据分别进行O到Ien-I节拍的延迟,并对延迟后的数据进行Ien 倍矢量抽取;获得共Ien路矢量信号,并送入步骤8 ;步骤7 对步骤5送入的flag_lock进行一拍延迟,获得flag_lock_delay ;对 flag_lock 和 flag_lock_delay 进行联合判断若flag_l0Ck为低电平,且flag_l0Ck_delay高电平,则产生有效复位信号;否则 无效复位信号;将复位信号送入步骤8 ;步骤8 若步骤7送入的复位信号有效,则以任意值对权系数进行初始化;否则利 用步骤6送入的矢量信号作为新的权系数输出。在步骤6中采用频域LMS、NLMS或CMA等算法获得梯度信号。所述计数值M等于计数器的最大累加值。本发明与现有技术相比具有如下优点(1)本发明不采用固定周期的形式对权系数进行更新,而是根据均衡器输出信号 的误差绝对累加值判断是否需要更新权系数,当信道特性不变时,权系数可以固定值输出; 当信道特性发生变化时,才对更新权系数进行更新,从而实现了对信道特性的动态适应。(2)本发明所述装置在实现时可以显著降低FPGA中资源的占用率,并提高了数据 处理速度。以对QPSK均衡且均衡滤波器权系数选为16阶为例,在相同情况下,发明与现有 技术相比,RAM的占用率降低了约78%,DSP的使用率较技术降低了约17% ;Slice使用率降低了约12%。 (3)采用本发明所述装置可以降低对生成权系数所需数据的精度要求。现有技术 中,高速并行均衡器中若采用频域LMS算法中得到的2η个梯度信息对权系数不进行控制而 直接进行更新,对数据的精度有很高的要求,稍有偏差就会导致权系数的发散,而本发明则 降低了对所述2η个数据的精度要求,但实现了性能更好的权系数。


图1为均衡器结构示意图2为权系数更新装置框图3为误差信号累加模块结构图4为控制模块结构图5为权系数产生模块结构图6为分路单元结构示意图7为频域并行滤波器结构示意图8为使用matlab定点化权系数;
图9为硬件输出的均衡前后的星座图
具体实施例方式下面就结合附图对本发明具体实施方式
做进一步介绍。如图1所示,为均衡器结构示意图。均衡器一般放置于解调器之后,包括分路单 元、频域并行均衡器和权系数更新装置。均衡器的输入数据x(n)是一个η路的数据块。分路单元将输入的x(n)经串并变 换后变为2η路数据后输出,串并变换后的输出同时输出到频域并行均衡器和权系数更新 装置;频域并行均衡器利用权系数更新装置产生的权系数对输出的2η路数据进行子卷积 方式滤波,从而实现对输入数据的均衡。而权系数更新装置则利用输出的2η路数据以及均 衡器输出的反馈数据产生权系数。如图2所示,为本发明权系数更新装置框图。所述权系数更新装置包括误差信号 累加模块、控制模块、权系数产生模块和计数器。误差信号累加模块对权系数产生模块输出 的各路误差信号进行绝对值累加,对各路累加值进行M倍抽取后输出到控制模块;控制模 块对输入的信号累加求和,利用门限比较器对累加和进行门限判决,根据判决结果产生控 制信号以及权系数更新信号;权系数产生模块的数据更新模块利用由解调数据经串并变换 产生的2η路数据以及误差计算模块产生的误差信号产生1路梯度信号输出;将输出的梯度 信号分别经0到Ien-I个延迟器后的输出进行降Ien矢量抽取后获得Ien路矢量信号;Ien 路矢量信号分别累加后产生队彳信号,其中,j = 1,…,n,的顺序编号。在控制信 号和权系数更新信号的控制下,产生均衡器中频域并行均衡器所需的权系数。下面就对权系数更新装置中的各模块的设计和功能做详细介绍。1、误差信号累加模块如图3所示,为误差信号累加模块结构图。误差信号累加模块的输入为误差信号, 所述误差信号为η路复数信号,由权系数产生模块中的误差计算单元产生。对误差信号进行绝对值累加的过程,分为I路和Q路分别进行(I路和Q路为相互正交的两路)。将I路 的误差信号{err_Il(k),err_I2(k),…errJnQO}分别送入η个累加器,进行绝对值累 加。在累加的过程中,计数器从Cnt = 1开始进行步长为1的循环累加计数。当计数值Cnt =M(Cnt 一般选取计数器的最大值)时,对累加器的输出进行M倍抽取,输出η路信号,其 中M为大于0的正整数,一般在考虑硬件资源占用率前提下取较大整数值。同时当Cnt = 1 时,误差信号累加模块对送入累加器的绝对累加值清零。计数器在误差信号累加模块工作 时从1到M循环计数,控制误差信号累加模块的工作。对Q路的误差信号采用与I路误差信号同样的处理后输出。误差信号累加模块同 时输出I路和Q路的共2η路分别经过累加和抽取后的数据到控制模块。2、控制模块如图4所示,为控制模块结构图。控制模块采用加法器将输入的2η路信号进行叠 加获得累加信号sum。sum首先送入门限比较器,门限比较器在计数器的控制下将sum与预设门限gate 进行比较,输出判决结果以产生控制信号ctrl。当计数器的计数值Cnt = A时(Vj < M ),若sum彡gate,则控制信号产生器将控 制信号ctrl清零;若sum < gate,则控制信号产生器将控制信号ctrl加1,当ctrl累加 到ctrl = B时(B为某一预设值,B > O正整数,一般可以选取3、4),若仍然有Cnt =A,且 sum(k) < gate,则保持ctrl不变。对ctrl作进一步判断,若ctrl = B,则由权系数更新信 号模块输出有效的权系数更新信号flag_lock(即输出高电平,否则输出低电平)。gate值的选取受很多因素的影响,例如前端误差信号表示的位数,计数器抽取时 刻M的影响等等。(例如,在加性高斯白噪声信道中,QPSK均衡,计数器M = 4096,硬件中 误差信号用12位表示,gate取140000。)3、权系数产生模块如图5所示,为权系数产生模块的结构图。权系数产生模块包括误差计算模块和 数据更新模块。误差计算模块用于产生误差信号累加模块所需的误差信号,其输入为均衡器输出 端返回的输出数据。误差信号的计算要依据采用的是何种相关算法,若是LMS算法,误差信 号为期望信号与输入信号相减;若是CMA算法,误差信号的计算则会相对复杂。误差信号在 输出到上述的误差信号累加模块的同时,还输出到数据更新模块。数据更新模块的输入除误差信号外还包括由解调数据经串并变换产生的2η路数 据。数据更新模块采用频域LMS、NLMS或CMA等相关算法产生一路梯度信号并输出。输出的梯度信号同样包括2η个数据点,对梯度信号分别利用Ien个延迟器进行O 到Ien-I拍的延迟,其中Ien = P/n, P为并行均衡器的权系数阶数。对Ien个延迟器的输 出再分别进行降Ien矢量抽取,对抽取的结果再单独进行累加,从而获得Ien个累加值Mkl, Mk2. . . Mklm,其中每个Mkj仍由2η个点表示,j = 1,…,n,k为Mkj的顺序编号。权系数更新模块接收产生的Mkj,并利用flag_loCk进行判断产生并输出权系数。 权系数更新模块首先对flag_lock延迟一拍得到flag_l0Ck_delay,并判断当flag_loCk ='0'(低电平),flag_l0Ck_delay 是否为 1(高电平),若 flag_l0Ck_delay=' 1', 则产生有效的复位信号reset (高电平),否则reset无效(低电平)。然后,利用信号Mw、复位信号reset及flag_l0Ck信号判断是否需要更新权系数。若reset有效(高电平),则 权系数将被初始化,对Wkl,Wk2. . . Wklen赋予一个任意值;若reset无效(低电平),且flag_ lock为低电平,则更新利用Mkj更新权系数;若reset为低电平,且f lag_l0ck为高电平,则 权系数保持不变。实施例下面就以QPSK均衡,均衡滤波器系数选为16阶为例,给出本发明的实施例,本实 施例的最终均衡结果可如图9所示。1、分路单元分路单元,对解调后的信号χ (η)中的η路数据利用延迟单元进行延迟,延迟后再 与输入的下一个η路数据进行合并形成2η路新的数据块,并将该2η路数据输入给频域并 行滤波器。如图6所示,为分路单元的结构示意图,可将输入的数据从并行4路转换成并行8 路。设从均衡器前端送来的并行载波恢复数据点为lx4k+1,x4k+2, x4k+3,x4k+4} (k代表第k个 数据块),将这第k个数据块用延迟单元进行延迟,和后面送入的{x4(k+1)+1,x4(k+1)+2, x4(k+1)+3,
合并,形成长度为8的新的数据块 Xk 一 iX4k+l' X4k+2 ‘ X4k+3,X4k+4,X4(k+1)+1,X4(k+l)+2,
x4(k+1)+3';上述延迟单元可以采用寄存器来实现。2、频域并行均衡器频域并行均衡器对输入的2η路数据进行FFT变换,再利用输入的权系数对变换后 的数据进行子卷积滤波,结果将作为最终的均衡数据输出。如图7所示,频域并行滤波器的具体实现如下(1)首先对接收的数据块中的并行8路数据进行FFT变换,并将变换后的数据Ak =Iakl ^t2…ak8}输入给数据延迟模块;FFT变换的具体实现使用基2的8点FFT,该算法为 本领域的公知算法,这里不再进行详细介绍。(2)将Ak延迟1拍得到Bk,延迟2拍得到Ck,以此类推延迟Ien-I拍得到Lenk ;其 中,Ien = P/n,P为所述高速并行均衡器权系数的阶数,其数值可以根据硬件资源和均衡性 能来确定。每延迟一拍采用一个延迟单元实现,延迟单元被用作子卷积中的延迟,滤波器的 阶数为16阶。本实施例中延迟单元采用的是寄存器实现。(3)根据接收的并行权系数产生模块输入的权系数Wkl,Wk2. . . Wklen,与步骤O)的 结果相乘求和 Ck = Ak. *Wkl+Bk. *Wk2+. . . +Lenk. *Wklen ;从4个不同的延迟单元送来的4路数据矢量(每路数据矢量为8路并行数据点), 分别与4路权系数矢量(每路权系数矢量为8路并行频域权系数数据点,由并行权系数产 生模块输入,在下个elk上升沿所有乘法器中的权系数将被更新)相乘,可以得到4路相乘 后的矢量,对这4路相乘得到的矢量相加求和,最终得到8路并行数据点。乘法单元可以使 用FPGA的复数乘法器IP核,使用FPGA自带的乘法器IP核可以节省逻辑资源,同时也能够 进行更好的优化,有利于硬件速率的提高。(4)对步骤(3)中的Ck进行2η点的IFFT变换得到Dk,舍去Dk的前η个点,输出 均衡后的数据点Yk。IFFT变换的输入为进行滤波后的8路数据,输出也为8路数据,根据循环卷积的原理舍去前4个点。3、权系数更新装置权系数更新装置用来更新(或产生)权系数。结合上述各模块的具体实现操作流 程如下(1)接收由分路单元产生的2η路数据,将这2η路输出送入步骤(6);接收均衡输 出的y(n);对y(n)进行误差计算获得误差信号,并同时输出到步骤( 和步骤(6);(2)对误差信号进行正交划分,获得I支路和Q支路的各η路信号;并对I支路和 Q支路的信号分别进行绝对值累加,累加器都是进行从1到M的加1计数;(3)当计数值达到M时,对步骤O)中获得的累加值分别进行M倍抽取;将抽取的 结果输出到步骤;当计数值为1时,对送入累加器的累加值清零,并返回步骤O);(4)将所有抽取后的结果相加,获得一路和信号sum ;若判断当前计数值等于A时, sum小于门限gate,则对控制信号ctrl加1,若累加后的ctrl = B时,仍有计数值等于A, 则保持ctrl不变(B与gate没有必然联系);若当前计数值等于A时,sum大于等于门限 gate,则将ctrl清零;将ctrl送入步骤(5);(5)若ctrl = B,则输出有效的权系数更新信号flag_l0Ck(高电平);否则(即 ctrl Φ B)flag_lock的输出为低电平,将flag_lock送入步骤(7);(6)利用频域LMS算法对步骤⑴送入的2η路数据以及误差信号进行频域数据处 理,获得2η路的梯度信号,将梯度信号以1为步长,分别进行0到Ien-I的延迟,并对延迟 后的数据进行降Ien倍矢量抽取,获得共Ien路矢量信号,并将其送入步骤(8);(7)对 flag_lock 进行一拍延迟,获得 f lag_lock_delay ;对 flag_lock 和 flag_ lock_delay进行联合判断若flag_l0Ck为低电平,且flag_l0Ck_delay高电平,则产生有效复位信号;否则 无效复位信号;(8)若步骤(7)中的复位信号有效,则对当前的权系数初始化;否则利用步骤(6) 产生的Ien路矢量信号作为新的权系数输出。采用本发明实施例实现的均衡器与现有技术相比,所使用的资源如表1和表2所 示,表1为本实施例所使用的硬件资源,表2为现有技术所使用的硬件资源。
权利要求
1.一种均衡器的权系数更新装置,其特征在于,包括误差信号累加模块、控制模块、 权系数产生模块、计数器;所述误差信号累加模块将权系数产生模块输出的各路误差信号分别送入累加器,并将 累加器产生的绝对值累加值进行M倍抽取后输出;M倍抽取的时刻由计数器决定,并且由计 数器控制误差信号累加模块将累加值清零重置;所述控制模块将误差信号累加模块的输出信号累加求和,得到一路累加信号并送入 由计数器控制的门限比较器;控制信号产生器根据门限比较器的输出结果产生控制信号 ctrl ;并利用控制信号ctrl产生权系数更新信号flag_l0Ck ;所述权系数更新信号flag_ lock输出到权系数产生模块;所述权系数产生模块将从均衡器输出端返回的数据输出到误差计算模块;误差计算 模块将产生的误差信号输出到数据更新模块以及误差信号累加模块;数据更新模块利用误 差信号以及由解调数据经串并变换产生的2η路数据产生梯度信号;梯度信号分别经0到 Ien-I个延迟器后的输出进行降Ien矢量抽取后获得Ien路矢量信号;Ien路矢量信号分别 经Ien个累加器后输出信号Mw,j = 1,…,n,k为Mw的顺序编号;权系数产生模块对接收 的flag_l0Ck以及flag_loCk经延迟器后的信号flag_loCk_delay进行判断,若flag_l0ck 为低电平且flag_l0Ck_delay为高电平,则置复位信号reset为有效;若reset有效,则权 系数产生模块以任意值将权系数初始化;若reset无效且flag_l0ck为低电平,则利用Mkj 更新输出的权系数;
2.根据权利要求1所述的一种均衡器的权系数更新装置,其特征在于,所述M倍抽取的 时刻为计数器累加值cnt = M的时刻,其中M等于计数器的最大累加值。
3.根据权利要求1所述的一种均衡器的权系数更新装置,其特征在于,所述数据更新 模块采用频域LMS、NLMS或CMA等算法进行梯度信号计算。
4.一种均衡器的权系数更新方法,其特征在于具体的步骤如下步骤1 接收由解调数据经串并变换得到的2η路数据,并送入步骤6 ;对均衡器产生的 输出数据进行误差计算,将获得的误差信号同时送入步骤2和步骤6 ;步骤2 将误差信号分为正交的I支路的η路信号和Q支路的η路信号;对分解后的信 号分别进行绝对值累加计算;并从1到M的进行循环累加计数;步骤3 当步骤2中的计数达到M时,对各绝对累加值进行M倍抽取,并将结果送入步 骤4 ;当计数返回1时,对绝对累加值清零,重新开始绝对值累计,并返回步骤2 ;步骤4 将步骤3送入的结果进行叠加产生一路和信号sum ;若计数值等于A时,sum小 于门限gate,则对控制信号ctrl加1 ;若ctrl等于B时,由计数值等于A,则保持ctrl不 变;若计数值等于A时,sum大于等于门限gate,则将ctrl清零;将ctrl送入步骤5 ;步骤5 若ctrl等于B,则产生有效的权系数更新信号flag_loCk ;否则产生无效的 flag_lock,并将 flag_lock 送入步骤 7 ;步骤6 利用步骤1送入的2η路数据以及误差信号进行频域数据处理,获得2η路梯度 信号;对2η路梯度数据分别进行O到Ien-I节拍的延迟,并对延迟后的数据进行Ien倍矢 量抽取;获得共Ien路矢量信号,并送入步骤8 ;步骤7 对步骤5送入的flag_lock进行一拍延迟,获得flag_lock_delay ;对flag_ lock和f lag_lock_delay进行联合判断若flag_l0Ck为低电平,且flag_l0Ck_delay高电平,则产生有效复位信号;否则无效 复位信号;将复位信号送入步骤8 ;步骤8 若步骤7送入的复位信号有效,则以任意值对权系数进行初始化;否则利用步 骤6送入的矢量信号作为新的权系数输出。
5.根据权利要求4所述的一种均衡器的权系数更新方法,其特征在于在步骤6中采 用频域LMS、NLMS或CMA等算法获得梯度信号。
6.根据权利要求4所述的一种均衡器的权系数更新方法,其特征在于所述计数值M 等于计数器的最大累加值。
全文摘要
本发明公开了一种均衡器的权系数更新装置及方法,在所述装置中包括误差信号累加模块、控制模块、权系数产生模块、计数器。误差信号累加模块在计数器的控制下将权系数产生模块输出的各路误差信号分别进行累加抽取后输出;控制模块将误差信号累加模块的输出信号进行叠加,在计数器的控制下将叠加后的信号与门限信号进行比较,根据比较结果产生控制信号,并利用控制信号产生权系数更新信号;权系数产生模块利用从均衡器输出端返回的数据计算误差信号;并同时利用误差信号以及由解调数据经串并变换产生的2n路数据产生梯度信号;梯度信号分别经0到len-1个延迟器后的输出进行降len矢量抽取后获得len路矢量信号;len路矢量信号分别经len个累加器后输出信号Mkj;最后,根据权系数更新信号判断是否初始化权系数还是利用Mkj更新权系数。采用本发明降低了用于生成权系数所需数据的精度,进而用更少的资源达到了同样的性能,并提高了硬件处理速度。
文档编号H04L25/03GK102082749SQ20101062123
公开日2011年6月1日 申请日期2010年12月24日 优先权日2010年12月24日
发明者平一帆, 李立, 杨光文, 杨新权, 谢耀菊 申请人:西安空间无线电技术研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1