1 引言
在基于查找表的自适应预失真放大器中,最小均方LMS(1east-mean-square)算法广泛采用文献[1-5]所提出的观点。初始收敛速度、时变系统跟踪能力及稳态失调是衡量自适应滤波算法优劣的最重要技术指标。LMS算法的缺点是收敛速度慢。为了提高LMS算法的收敛速度,文献[6]提出改进的两个方法:输入信号去相关和尽可能增大步长参数。对于输入信号去相关方面,研究了分块LMS算法,DCT-LMS算法,归一化LMS算法。而增大步长参数方面,发现子带自适应LMS算法,SVSLMS算法,改进的SVSLMS算法。根据以前的研究:固定步长的自适应滤波算法在收敛速度、时变系统跟踪速度与收敛精度方面对算法步长因子的要求是相互矛盾的。为解决这一矛盾,提出LMS算法的步长调整原则;在初始收敛阶段或未知系统参数发生变化时,步长应较大,以便有较快的收敛速度和对时变系统的跟踪速度;而在算法收敛后,应保持很小的步长以达到很小的稳态失调噪声。
在深入研究自适应算法的基础上,提出一个新的变步长LMS算法并与以前算法相对比仿真。新算法已用于预失真放大器仿真并取得良好效果。
2 数字预失真放大器
图1为数字预失真放大器的基本结构,预失真器包括查找表和自适应预失真参数估计,反馈的输出信号Vout和输入信号Vin经自适应算法计算更新查找表中的增益系数,此增益系数与输入信号做乘法运算得到预失真信号Vpd一般而言,预失真器要补偿的是由放大器非线性带来的幅度非线性失真和相位非线性失真。预失真器的输入输出关系表示为:
式中:F(·)为预失真器的增益函数。
功率放大器的输出:
式中,G(·)为功率放大器的增益函数。
式(2)代人式(1),则有:
信号经过自适应预失真放大器之后其输出为:
3 查找表的自适应算法
LMS算法中,令Rin(n)为输入信号的自相关矩阵。W(n)为抽头权向量,那么有:
式中:d(n)为期望信号;e(n)为期望信号与输出信号的误差信号;μ为步长参数,μ(n)=β(1-exp(-α|e(n)|2))。
LMS算法收敛的条件为:0<μ<1/λmax,λmax是输入信号自相关矩阵的最大特征值。提出改进的SVSLMS算法,从而提高LMS算法的收敛速度。
4 新的自适应算法
新的自适应算法为
式(9)中μ(n)要满足0<μ(n)<1/λmax。由于α是人为指定,所以可由试验手段取得,e(n)是未知变量,其初始值无法估计,所以首先要判断α*| e(n)|2/N是否小于1/λmax。但是这会增加时间复杂度,如果能够确认α*| e(n)|2/N<1/λmax,比如第一次迭代的e(n)<1,则可直接设定α为小于1/λmax的值计算,以便减少时间复杂度。
5 仿真结果
用MATLAB搭建了一个自适应预失真放大器的模型,放大器使用saleh模型。输入信号为256QAM信号,分别对SVSLMS改进型算法和该新算法进行仿真对比,其中SVSLMS改进型算法的参数取值为β=1,α=10,该新算法参数取值为α=2,N=5。迭代500次的结果如图2~图5。其中,图2是理想的功放输出星座图;图3是未经预失真器的功放输出星座图:图4是采用改进的SVSLMS算法的预失真放大器的输出星座图;图5是采用新算法的预失真放大器的输出星座图。通过仿真可知,该新算法对预失真放大器的改进明显优于SVSLMS改进型算法。
6 结论
提出一个新的变步长LMS算法,通过误差的平方函数控制步长的变化,有很好的收敛特性,用MATLAB搭建了预失真放大器的仿真系统。仿真表明:在进行500次迭代计算时该新算法对预失真放大器非线性特性的改进明显优于改进的SVSLMS算法。
|
||||||
|
||||||