并行变步长cma均衡算法、装置、电子设备及存储介质

文档序号:990135 发布日期:2020-10-20 浏览:3次 >En<

阅读说明:本技术 并行变步长cma均衡算法、装置、电子设备及存储介质 (Parallel variable-step-size CMA (China Mobile alliance) equalization algorithm, device, electronic equipment and storage medium ) 是由 李一航 王锐 李倩 王晓东 王忠丽 于 2020-06-16 设计创作,主要内容包括:本申请公开了一种并行变步长CMA均衡算法、装置、电子设备及存储介质。包括:各个支路将输入信号与滤波器抽头矩阵的转置相乘得出当前时刻的输出值;根据所述输出值,得到每个支路当前时刻的误差值;根据所述误差值,计算汇总结果;通过汇总结果r,计算步长μ;各个支路通过所述步长、所述误差值以及输入信号计算用于下一时刻均衡的滤波器抽头,同时读入下一组输入信号。本申请方法在变步长计算中只设计四则运算,算法结构简单,占用资源较少,便于实现并行结构。针对高速数字通信中常用的并行处理结构进行了专门的设计,更方便用于高速无线通信当中;步长的改变与时间无关,可以在时变信道中正常工作。(The application discloses a parallel variable-step CMA (constant amplitude adaptive equalizer) equalization algorithm, a device, electronic equipment and a storage medium. The method comprises the following steps: each branch circuit multiplies the input signal by the transpose of the filter tap matrix to obtain the output value at the current moment; obtaining the error value of each branch at the current moment according to the output value; calculating a summary result according to the error value; calculating the step length mu through the summary result r; each branch calculates a filter tap for equalization at the next time through the step size, the error value and the input signal, and simultaneously reads in the next group of input signals. The method only designs four arithmetic operations in the variable step length calculation, has simple algorithm structure and less occupied resources, and is convenient for realizing a parallel structure. The special design is carried out aiming at the common parallel processing structure in the high-speed digital communication, so that the method is more convenient to be used in the high-speed wireless communication; the step size changes are time-independent and can work properly in time-varying channels.)

并行变步长CMA均衡算法、装置、电子设备及存储介质

技术领域

本申请涉及信道均衡和无线通信技术领域,具体而言,涉及一种并行变步长CMA均衡算法、装置、电子设备及存储介质。

背景技术

目前,在高速无线通信中,由于多径效应、定时采样产生的偏差以及射频器件和ADC的带内幅度不一致性导致的码间串扰会严重影响通信质量。码间串扰带来的影响会随着符号速率的增加而逐渐严重。为了解决这一问题,需要加入均衡模块。

高速信号在FPGA中往往采取并行处理的方式,本均衡算法也是基于对高速并行信号的处理来讨论的。其主要由各支路的均衡滤波器、支路误差计算模块与汇总计算模块构成。

传统的CMA均衡算法为固定步长,因此在收敛速度上要慢于变步长均衡算法。

变步长CMA均衡原理为通过接收信号模值与规定模值之间的平方差计算出误差因子e。再根据e来更新算法的步长μ。将各个支路计算出的步长一起计算得出统一的步长。并根据此更新滤波器的抽头值w。

目前,针对变步长CMA均衡算法的研究主要有南京大学、武汉邮电科学院研究有限公司、南京信息科技大学和西南科技大学申请过相关专利,但是相关专利中往往存在计算复杂、资源占用较多等缺陷,同时其均未考虑在并行状态下算法如何进行调整的问题,难以用于高速无线数字通信当中。

其中,专利一为南京大学提出的专利申请,专利申请号:CN201710082645.8,标题为“一种卫星信道多模盲均衡算法”,提出了一种通过误差判决实现两种均衡模式切换的均衡算法。该方法涉及到变步长CMA均衡算法的部分涉及了大量的自然指数运算以及幂运算,在FPGA上实现较为困难,且需要大量的运算资源,在高速并行的情况下会极大地增加成本,难以实现。

专利二为武汉邮电科学院研究有限公司提出的专利申请,专利申请号:CN201811362088.6,标题为“一种基于CMA的信号均衡方法及系统”,提出了一种用于光通信的基于误码率判断调整步长因子的CMA均衡算法。该方法在步长调整上依赖误码判决,在无线通信中会使得系统结构复杂化,且步长的调整具有较大滞后性。

专利三为南京信息科技大学提出的专利申请,专利申请号:CN200910028459.1,标题为“基于正交小波包变换的双模式变步长盲均衡方法”,提出了一种用于水声通信的基于正交小波包变换的双模式变步长均衡算法。但是正交小波变换在FPGA上实现会占用大量资源,并行状态下会加剧这一问题,使得这一算法在高速通信中实现成本过高。

专利四为西南科技大学提出的专利申请,专利申请号:CN201810578167.4,标题为“一种MPSK信号的CMA盲均衡变步长优化方法”,提出了一种基于反比例函数的变步长CMA均衡算法。其运算相较于其他算法较为简单,但是其步长会随着时间推移无限接近于0,这使得该算法无法在时变信道中工作。

针对相关技术中运算复杂、未考虑并行模式以及无法应对时变信道的问题,目前尚未提出有效的解决方案。

发明内容

本申请的主要目的在于提供一种并行变步长CMA均衡算法、装置、电子设备及存储介质,其占用系统资源较少、实现简单,且专门工作于并行模式下的变步长CMA均衡算法,以解决相关技术中运算复杂、未考虑并行模式以及无法应对时变信道的问题。

为了实现上述目的,本申请提供了一种并行变步长CMA均衡算法,包括如下步骤:

步骤S1、各个支路将输入信号与滤波器抽头矩阵的转置相乘得出当前时刻的输出值。

这一步骤可以通过FIR滤波器实现。

步骤S2:根据所述输出值,得到每个支路当前时刻的误差值。

具体步骤包括:

步骤S2.1、计算出所述输出值的模值,将其平方后与寄存器中所存储的给定模值的平方相减,得到模值差。

步骤S2.2、将模值差与所述输出值相乘,得到每个支路当前时刻的误差值。

步骤S1至步骤S2与传统CMA均衡算法一致,而两种算法的差别就在于传统CMA均衡无需接下来的步骤,直接进入步骤S7。

步骤S3、根据所述误差值,计算汇总结果;

具体步骤包括:

步骤S3.1、各支路计算所述误差值模值的平方ri

步骤S3.2、通过ri进行汇总计算,得到汇总结果r。

其中,j为S中0的数量,m为支路的数量,M为误差值个数,R为各支路计算得出的误差模值平方矩阵,S为系数矩阵。

步骤S4、通过汇总结果r,计算步长μ,其表达式为:

Figure BDA0002541741070000032

其中,μ0为步长因子,a为大于1的实数,用于限制μ的最大值,b为略大于0的实数,用于限制μ的最小值以及防止r=0计算出现错误。

这一计算方法只涉及四则运算,相比于其他变步长CMA算法更容易在硬件平台上实现。

步骤S5、各个支路通过所述步长、所述误差值以及输入信号计算用于下一次均衡的滤波器抽头,同时读入下一组输入信号,转到步骤S1。

至此,从步骤S1到步骤S5,完成了一种并行变步长CMA均衡算法。

所述S的取值,当si取1/M,此时r为ri的平均值。但是在较为恶劣的信道环境下,噪声对于系统的影响会使得R中极易出现一些偏离正常范围的极大值或者极小值。在本算法的并行计算模式下如果不去除它们的影响就会使得平均值产生偏差。因此可以将S修改为:

当矩阵R中的某个值ri与平均值均比值大于或小于阈值rup,rdown时,其在系数矩阵中对应的系数被修正为ε。

由于CMA均衡中

Figure BDA0002541741070000043

在两个相邻时刻基本相等,所以用上一时刻的误差模值平方r`替代

Figure BDA0002541741070000044

来减少计算时间。

一种并行变步长CMA均衡装置,采用一种并行变步长CMA均衡算法实现,包括:输出值计算模块、误差值计算模块、汇总模块、步长计算模块;

所述输出值计算模块、误差值计算模块、汇总模块、步长计算模块依次链接;所述输出值计算模块得到输出值,并将输出值输入到误差计算模块,所述步长计算模块得到步长计算结果,将步长计算结果反馈到所述输出值计算模块;

所述输出值计算模块,用来计算输出值,各个支路将输入信号与滤波器抽头矩阵的转置相乘得出当前时刻的输出值;

所述误差值计算模块,用来计算误差值,根据所述输出值,得到每个支路当前时刻的误差值;

所述汇总模块,用来计算汇总值,根据所述误差值,计算汇总结果;

所述步长计算模块,用来计算步长,通过汇总结果,计算步长。

一种电子设备,所述电子设备包括存储器以及处理器,所述存储器用于存储计算机程序,所述处理器运行所述计算机程序以使计算机设备执行根据所述的一种并行变步长CMA均衡算法。

一种可读存储介质,所述可读存储介质中存储有计算机程序指令,所述计算机程序指令被一处理器读取并运行时,执行所述的一种并行变步长CMA均衡算法。

有益技术效果:

本发明提出的一种并行变步长CMA均衡算法、装置、电子设备及存储介质,与其他变步长CMA均衡算法相比,具有如下有益效果:

1.本算法在变步长计算中只设计四则运算,算法结构简单。

2.占用资源较少,便于实现并行结构。

3.针对高速数字通信中常用的并行处理结构进行了专门的设计,更方便用于高速无线通信当中。

4.步长的改变与时间无关,可以在时变信道中正常工作。

附图说明

构成本申请的一部分的附图用来提供对本申请的进一步理解,使得本申请的其它特征、目的和优点变得更明显。本申请的示意性实施例附图及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:

图1是根据本申请实施例提供的一种并行变步长CMA均衡算法流程图;

图2是根据本申请实施例提供的一种并行变步长CMA均衡算法结构图;

图3是根据本申请实施例提供的步长μ随着误差模值平方r的变化情况;

图4是根据本申请实施例提供的采用定步长算法与本算法的均衡模块的滤波器主抽头值变化情况;

图5是根据本申请实施例提供的四种情况下输出信号星座图,(a)为不进行均衡的输出信号,(b)为经过定步长CMA均衡的输出信号,(c)为分别计算步长的变步长CMA均衡的输出信号,(d)为本申请算法的输出信号。。

具体实施方式

为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。

需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

在本申请中,术语“上”、“下”、“左”、“右”、“前”、“后”、“顶”、“底”、“内”、“外”、“中”、“竖直”、“水平”、“横向”、“纵向”等指示的方位或位置关系为基于附图所示的方位或位置关系。这些术语主要是为了更好地描述本申请及其实施例,并非用于限定所指示的装置、元件或组成部分必须具有特定方位,或以特定方位进行构造和操作。

并且,上述部分术语除了可以用于表示方位或位置关系以外,还可能用于表示其他含义,例如术语“上”在某些情况下也可能用于表示某种依附关系或连接关系。对于本领域普通技术人员而言,可以根据具体情况理解这些术语在本申请中的具体含义。

另外,术语“多个”的含义应为两个以及两个以上。

需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。

下面结合图1,详细说明一种并行变步长CMA均衡算法、装置、电子设备及存储介质,其中,一种并行变步长CMA均衡算法,包括如下步骤:

步骤S1、各个支路将输入信号X=[x1,x2,...,xm]T与滤波器抽头W=[w1,w2,...,wm]T转置相乘得出当前时刻的输出值yi。这一步骤可以通过FIR滤波器实现。

在处理高速数字信号的过程中,输入信号以并行的形式进入均衡模块当中,各个支路包含一个FIR滤波器,当前时刻滤波器内信号可以表示为X=[x1,x2,...,xm]T,滤波器抽头值则表示为W=[w1,w2,...,wm]T,如图2所示,图2中所述输出值计算模块即为FIR滤波器。

将二者转置相乘即可得出当前时刻的输出值yi

步骤S2、计算出yi的模值|yi|,将其平方后与寄存器中所存储的给定模值的平方d2相减,得出二者之间的模值差。

步骤S3、将模值差与yi相乘,得到每个支路当前时刻的误差值ei

ei=yi*(d2-|yi|2)

步骤S1至步骤S3与传统CMA均衡算法一致,而两种算法的差别就在于传统CMA均衡无需接下来的步骤,直接进入步骤S7。

在高速率无线通信中,符号速率往往会大于系统的时钟速率,这使得系统的所有模块均处在并行工作的状态下。在均衡过程中,M路并行就会在同一时刻产生M个误差值。如果要在并行结构中引入变步长算法,就需要考虑如何使用多个误差值计算步长。

最为简单的方法是各个子滤波器分别利用各自的误差值ei(n)计算对应的步长μi(n)。然而其存在的问题是分别计算会产生不统一的步长,这会导致各个子滤波器的收敛时间与稳态误差产生差异,从而影响最终的均衡效果。

而本算法所采取的方法为各个支路计算出误差值后,先经过处理,再利用结果计算出一个统一的μ。

步骤S4、各支路计算ei模值的平方ri=|ei|2,用于后续步骤的计算。

各路分别计算误差的模值平方ri,再将其发送至汇总计算模块计算总的误差模值平方r。

步骤S5、汇总计算模块通过ri计算r。

相较于各路分别计算步长而言,这一方法节约了计算资源,且分别计算的算法会产生不统一的步长,这会导致各个子滤波器的收敛时间与稳态误差产生差异,从而影响最终的均衡效果。

汇总计算模块收到各个支路的ri,计算误差模值平方r的方法如下。

r=SR,R=[r1,r2,...,rm]T,S=[s1,s2,...,sm]

通常情况下,si可以取1/M,此时r为ri的平均值。但是在较为恶劣的信道环境下,噪声对于系统的影响会使得R中极易出现一些偏离正常范围的极大值或者极小值。在本算法的并行计算模式下如果不去除它们的影响就会使得平均值产生偏差。因此可以将S修改为:

Figure BDA0002541741070000081

当矩阵R中的某个值ri与平均值

Figure BDA0002541741070000082

的比值大于或小于阈值rup,rdown时,其在系数矩阵中对应的系数被修正为ε。为了计算方便,在本算法中,ε取0。于此同时,r的计算方法应当被修正为:

Figure BDA0002541741070000083

j为S中0的数量

由于CMA均衡中

Figure BDA0002541741070000084

在两个相邻时刻基本相等,所以用上一时刻的误差模值平方r`替代来减少计算时间。

步骤S6、通过r计算步长μ,其表达式为:

Figure BDA0002541741070000086

其中μ0为步长因子,a为大于1的实数,用于限制μ的最大值,b为略大于0的实数,用于限制μ的最小值以及防止r=0计算出现错误。

当均衡滤波器未实现均衡时,系统误差较大,r也较大,在公式中a的取值占主导地位,此时μ的取值较大,系统收敛速度加快。

当均衡滤波器基本实现均衡时,系统误差较小,r较小,在公式中

Figure BDA0002541741070000087

与据主导地位,μ的取值接近于μ0,系统收敛精度增加。图3形象地展示了随着r的变化μ的变换情况。

这一计算方法只涉及四则运算,相比于其他变步长CMA算法更容易在硬件平台上实现。

步骤S7、各个支路通过步长μ、误差ei以及输入信号X计算用于下一次均衡的滤波器抽头W`,同时读入下一组输入信号,重复步骤S1。

W`=W+μeiX

至此,从步骤S1到步骤S7,完成了一种并行变步长CMA均衡算法。

一种并行变步长CMA均衡装置,如图2所示,采用一种并行变步长CMA均衡算法实现,包括:输出值计算模块、误差值计算模块、汇总模块、步长计算模块;

所述输出值计算模块、误差值计算模块、汇总模块、步长计算模块依次链接;所述输出值计算模块得到输出值,并将输出值输入到误差计算模块,所述步长计算模块得到步长计算结果,将步长计算结果反馈到所述输出值计算模块;

所述输出值计算模块,用来计算输出值,各个支路将输入信号与滤波器抽头矩阵的转置相乘得出当前时刻的输出值;

所述误差值计算模块,用来计算误差值,根据所述输出值,得到每个支路当前时刻的误差值;

所述汇总模块,用来计算汇总值,根据所述误差值,计算汇总结果;

所述步长计算模块,用来计算步长,通过汇总结果,计算步长。

一种电子设备,所述电子设备包括存储器以及处理器,所述存储器用于存储计算机程序,所述处理器运行所述计算机程序以使计算机设备执行根据所述的一种并行变步长CMA均衡算法。

一种可读存储介质,所述可读存储介质中存储有计算机程序指令,所述计算机程序指令被一处理器读取并运行时,执行所述的一种并行变步长CMA均衡算法。

为了验证算法的性能,设置了相关的多径信道环境进行仿真,并比较其与固定步长CMA均衡算法以及分别计算步长的变步长CMA均衡算法的差别。

设置输入信号为QPSK信号,符号速率为2.5Gsps。所采用信道为指数衰落信道。变步长算法中涉及的相关参数为:μ0=0.005,a=20,b=0.01。

将输入信号分别用固定步长CMA均衡算法与本算法进行均衡,得到其滤波器主抽头的抽头值的变化情况如图4所示。可以看到本算法的收敛速度要明显快于固定步长的CMA均衡算法。

图5则展示了各种算法的输出结果。a为不进行均衡的输出信号,b为经过定步长CMA均衡的输出信号,c为分别计算步长的变步长CMA均衡的输出信号,d为本申请算法的输出信号。可以看到,系统收敛后b、d的输出结果基本一致,而c产生了少许畸变。

表1为4种情况下的误码率结果,其从数值上印证了统一计算步长算法相较于分别计算步长结果更为准确。

表1四种情况下的误码率结果

Figure BDA0002541741070000101

以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

14页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种基于循环谱区分调制类型的方法及系统

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类