APP下载

一种LMS算法的实现及应用*

2019-06-10

通信技术 2019年5期
关键词:频点信号强度干扰信号

赖 川

(西南电子技术研究所,四川 成都 610036)

0 引 言

现代战争中,接收机不但会受到外部环境干扰信号的影响,同时也会受到自身发射机信号的影响,导致接收信号变差,无法正常接收信号,甚至导致通信中断。消除这些噪声的主要方法是使用滤波器滤波。滤波器可以较好的过滤干扰信号,保证正常信号到达接收端,从而改善通信状态。但是,一般的滤波器需要根据频点范围的变化而变化,即需要滤波的范围越大,滤波器就需要做的足够宽,从而导致设备成倍增加;同时,滤波器的滤波范围也有限,如果干扰信号频点和接收信号频点太近,滤波器基本就没有效果了。有没有一种滤波器能够自适应的根据接收频点调整信号,过滤非接收频点的噪声信号成为人们研究的重点。

自1960年Windrow和Hoff等人提出最小均方误差(Least Mean Square,LMS)算法以来,人们在自适应滤波方面取得了丰硕的成果。LMS算法具有结构简单,计算量小,稳定性好,易于实现等优点,在自适应滤波中得到的广泛应用。但是,LMS采用了固定步长的收敛算法,导致前期干扰信号强时,收敛效果明显;后期信号变弱,步长过大,导致收敛变慢的问题也十分突出。于是,人们提出来各种有效的方法来修正定步长带来的收敛速度和稳态误差的问题。文献[1-2]提出了一种Sigmoid函数变步长LMS算法,较好的提高了迭代后期收敛速度问题。单是Sigmoid函数过于复杂。文献[3]采用了类似Sigmoid函数的变步长算法,但是简化了Sigmoid函数,增加了a,b两个修改因子修改Sigmoid函数,较好的改进了Sigmoid函数算法在误差接近零时,收敛较差的问题。但是a,b值选取不好的话效果会变得更差。文献[4]针对该问题提出了a,b可变方法,更好的改进了Sigmoid函数提升了收敛速度和效果。文献[5]提出了一种分段函数思想,在迭代初期,使用较大的步长,迭代后期使用较小的步长,依次解决收敛后期速度变慢的问题。文献[6-7]还提出了其他一些变步长函数的方法,以此提高收敛速度和收敛效果。但是这些算法都没有考虑真实信号对算法收敛性能的影响。

随着理论的深入研究,人们逐渐将研究的中心从理论转移到算法的实际硬件实现。文献[8-13]都是讲述了不同的变步长LMS算法如何在DSP(Digital Signal Process)上实现,并实际软仿真测试了实现后的算法的噪声抑制效果,均得到了较好的噪声抑制和较快的收敛速度。随着各种变步长算法在DSP上的实现及其取得的抑制效果,人们又逐步开始将基于DSP实现LMS算法应用到具有实际背景的环境中,来抑制具体的干扰噪声:文献[14-15]都是利用DSP芯片实现了不同的变步长LMS算法,并将它应用在声回波系统中,有效的抑制了回波噪声,提高了话音的音质。文献[16]则利用DSP实现了一种变步长算法,用他来解决立体声回波对接收端的噪声影响,取得了很好的效果。这些研究仅仅是利用DSP芯片实现LMS算法,再模拟实际噪声环境,进行干扰抑制,分析了这种架构的可行性,没有进行实际的工程设计及验证。文献[17]提出了一种工程实现方案,但最后也仅仅是进行的软仿真,得到了噪声抑制的可行结论。

本文设计一种根据采集的实时信号决定迭代步长的算法,确保不同的信号采用不同的步长进行收敛迭代的方式,避免了单一变步长方式中,所有信号均采用一种变步长方式的方法。文章简单分析了硬件设计思路,重点关注算法的设计和DSP的实现,并将实现的算法用于实际工程中进行对消测试,取得了较好的效果。

1 对消原理及算法分析

对消原理如图1所示。原始输入信号中除了有用信号S外,还混入了不相关的噪声信号N0。要使系统输出获得高质量的有用信号S,就需要自适应滤波器通过调整接收到噪声参考信号N1,产生一个与N0信号幅度相等,相位相差180度的信号Y(理想情况)叠加到原始输入中,使得系统输出干净的有用信号S(实际为S+N0-Y)。

图1 对消原理图

假设S和N0、N1不相关,但是N0和N1是相关的,则有:

故当输出E的期望值最小时,N0与Y的期望值也越小。此时,Y信号就是N0的最优期望值。为了实现这个目标,我们采用LMS算法。

基于最速下降法的固定步长LMS算法的迭代公式如下:

其中:X(t)=[x(t),x(t-1),…,x(t-M+1)]T为时刻t的参考通道输入信号矢量;W(t)=[W0(t),W1(t),W2(t),…, WM-1(t)]T为T(t)时刻自适应滤波器的权系数;M为滤波器阶数;d(t)为主通道输入信号;e(t)为误差;μ为收敛步长,控制稳定性和收敛速度。

如果迭代过程中,μ值始终保持不变,则表示该算法为定步长算法,如果μ在迭代中会变化,则表示算法为变步长算法。

2 硬件设计及算法实现

2.1 硬件设计

数学上,一个向量的表示可以用直角坐标系的两个坐标表示,也可以采用极坐标系的幅度和相位两个指标表示。对于一个信号矢量,如果我们想知道这个信号的具体情况:要么采集它的幅度和相位值;要么对其进行正交分解,得到X轴和Y轴的信号强度值。对于前者,我们采集幅度强度和相位值是比较困难的。因此,本文采用正交分解的思想,将输入的信号进行分解,采集信号在X轴和Y轴的信号强度值。

图2 矢量正交分解图

进行信号分解后,自适应滤波器只需要根据采集到的X、Y两路的干扰信号强度,修正滤波器输出的X、Y两路的信号强度,达到抑制干扰信号的目的。因此,滤波器阶数为M=2。同时,硬件设计需要满足对信号的正交分解及分解后的信号强度 检测。

2.2 基于采样的变步长算法

由于不同频点的信号会有一定的差异,为了适应不同信号的抑制,本文在做射频抑制前,先采集信号样本,作为迭代步长的参考,具体方式如下:

设步长μ为如下表达式:

其中,a为常量收敛因子,λ为与采样值有关的变量。由于采用了正交分解,因此本文的滤波器阶数为2,设矢量信号的正交分解向量为采用归一化处理,则有:

故得到:

2.3 DSP算法实现

算法的实现需要进行反复的迭代,以达到射频抑制的效果,所以对运算的速度要求很高,而数字信号处理器就具有运算速度快、计算精度高、硬件配置强等特点,非常适合用于算法的开发和实现。我们采用TI公司生产的TMS320C6416芯片。该芯片具有最快1.39 ns指令周期时间,可以达到5760MIPS运算速度,具有两路乘法器,每个时钟周期支持最大4路16*16bit的乘法运算或者8路8*8 bit的乘法运算。同时,芯片自带1M内部RAM,满足程序内部取数要求,丰富的外围接口,可以极大的减少外围电路的开发。

整个算法实现分为4大块:

(1)初始化。包含芯片配置初始化,全局变量初始化。

(2)采集零漂值(即没有任何信号输入时采集到的信号强度),作为收敛基准。

(3)采集信号样本值。

(4)根据采集到的输入信号值,进行迭代计算,直到某次采集结果值和零漂值的误差在设定的阈 值内。

具体实现流程如下:

开始;

(1)芯片初始化,全局变量初始化,其中a=0.1,Th=10。a表示常量收敛因子,Th表示收敛门限。

(2)获取当前状态下设备内部零漂值sx,sy。sx表示x轴零漂信号值,sy表示y轴零漂信号值。

(3)采集样本信号值x0,y0;进而得到λ1和λ2的值。

(4)采集对消后的信号强度值,如果|xnowsx|+|ynow-sy|≤Th.成立,则执行下一步,否则继续执行当前步骤。

(5)迭代结束。

具体流程如图3所示。

3 测试结果

采用图4中所示测试环境进行测试,其中:信号源输出18 dBm的信号,进过10 dB功分器分成两路信号,一路信号直接输入给对消设备的参考信号N1;另一路经过20 dB衰减后作为干扰信号N0和正常信号S进行合成后输入到设备另一个输入口。对消前后结果反映在频谱分析仪上。选取了5个点进行测试,涵盖了包括高中低三段频点值。单载波测试结果见表1;FM信号(频偏1 kHz,调制信号频率400 Hz)测试结果见表2;AM信号(调制度 5%,调制信号频率400 Hz)测试结果见表3,通过表格统计结果可以发现,基于DSP实现的LMS对消算法对三种波形均能实现了40 dBm以上的对消比;根据统计迭代次数及时间可以发现,整个迭代次数最大不超过160次,时间不大于20 ms。

图3 算法迭代流程

图4 对消性能测试

表1 单载波测试结果

表2 2FM测试结果

表3 3AM测试结果

4 结 语

本文采用的基于采样值决定当前频点迭代步长方式的LMS算法,具有收敛速度快、抑制效果好的特点。实物测试结果表明:该变步长LMS算法不仅仅适用于单载波的噪声抑制,也适用于FM、AM信号的噪声抑制,具有很好的工程应用效果。下一步,将考虑实现实时变步长算法,进一步提高对消收敛的速度、进一步降低对消时间的消耗。

猜你喜欢

频点信号强度干扰信号
光学相干断层成像不同扫描信号强度对视盘RNFL厚度分析的影响
基于小波域滤波的电子通信信道恶意干扰信号分离方法
位置指纹定位中WiFi信号特性分析及处理技术研究
电子自旋共振波谱法检测60Co-γ射线辐照中药材
基于DJS的射频噪声干扰信号产生方法及其特性分析
基于变邻域粒子群的短波频率选择算法
基于粒子群算法的光纤通信干扰信号定位方法
LTE系统下D2D功能高层协议探析
一种高速跳频图案的高效同步方法
TETRA数字集群通信系统在露天矿山的应用