基于记忆多项式模型数字预失真算法的改进
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
进行简单的变换得:
K z
=
[
K z K y
φ1L
(
K y
L
),
K z K y
2 2
φ2L
(
K y
L
),",
K z K y
K K
φKL
(
K y
L
),"",
K z K y
φ10
(
K y0
),
K z K y
2 2
φ20 (
K y0
),",
K z K y
K K
φK
0
(
K y0
)]
⋅
[a1′0 ,
1K z
a2′0 ,",
预失真器模型与功放模型类似,只不过的预失真器模型即包含奇次项又包含偶次项:
∑ ∑ K L
z(n) =
akl
k =1 l=0
y(n −Hale Waihona Puke Baidul) G
y(n − l) k−1 G
实验证明包含偶次项的预失真模型可以增加记忆多项式模型的精确度[5]。
(3)
2.2.1 预失真算法
如果将功率放大器的输入和输出分别用向量表示为
http://www.paper.edu.cn
基于记忆多项式模型数字预失真算法的改进
刘洋
北京邮电大学电信工程学院,北京(100876)
E-mail:rabbitliuyang@hotmail.com
摘 要:本文针对功率放大器工作于非线性区并且对于宽带信号具有记忆效应的特点,介绍 了一种基于 Hammerstein 模型的数字预失真算法,并用归一化的方法对该算法进行了改进。 计算机仿真结果验证了该改进算法的有效性。 关键词:非线性,记忆效应,数字预失真,归一化,OFDM 中图分类号:TN722.7
4. 改进算法仿真
为验证本文改进算法的有效性,采用 MATLAB 进行K 仿真。功放采用(2)的奇次多项 式模型,最高阶次 K = 5 ,记忆深度 L = 2 ,功放系数 b 为:
b10 =3.1539 + 0.2712i b20 =0 b30 =-0.1626 - 0.8700i b40 =0 b50 =-2.8971 - 2.1084i b11 =-0.2040 - 0.0069i b21 =0 b31 =0.6702 + 0.6951i b41 =0 b51 =-0.7353 - 1.1205i b12 =0.0867 - 0.0162i b22 =0 b32 =-0.1863 - 0.2796i b42 =0 b52 =0.3687 + 0.4524i
功率放大器除了具有非线性特性以外,对于宽带信号(如:OFDM 信号)还具有记忆 效应[1],此时功放的输出不仅与当前输入有关,而且还与以前的输入有关。随着传输信号带 宽的不断增加,研究记忆非线性功放的预失真算法有着非常重要的实际意义。
本文基于 Volterra 级数的特殊形式 Hammerstein 模型[2]对记忆非线性功放及预失真器进 行建模,运用最小二乘法求解预失真器系数,并在此基础上提出了算法的改进方案。
(7)
k =1 l =0
此时可用 2.1.1 中的算法求出 aK′ = [a1′0 , a2′0 ,", aK′ 0 ,"", a1′L , a2′L ,", aK′ L ]T ,但此时求
出的预失真器系数并不是最终的预失真器系数,需要对其进行补偿(见附录):
K a
=
[a1′0 ,
1K z
a2′0 ,",
aKL
]T
:
K a
=
(Y
HY
) −1Y
H
K z
(6)
3. 改进的数字基带预失真算法
通过上述算法可以求解出预失真器系数,但是存在一个问题。在图一的间接学习结构中
有一个1 G 模块,在算法的计算中会用到这个参数。而在实际的预失真器训练过程中,只能
-2-
http://www.paper.edu.cn
采集为到解功决放这的个输问入题和我输们出采,取并对不功能放得的到输功入放增zK 和益输G出,因 yK 进此行参归数一G化实的际办上法是:未知的。
,""
,
a1′L
,
a2′
L
,"
,
aK′ L
]T
K zK z
=[
1K y
φ1L
(
K y
L
),
1 K y
2
φ2
L
(
K y
L
),",
1
K y
K
φKL
K ( yL
),"",
1K y
φ10
(
K y0
),
1 K y
2
φ20
(
K y0
),",
1
K y
K
φK
0
(
K y0
)]⋅
[a1′0 , a2′0 ,", a′K 0 ,"", a1′L , a′2L ,", a′KL ]T
K a
的初值。
(2) (3)
将将预aK 的失值真复器制的到输预出失zK 经真器过中功,放输得入到数yK 据。
K x
经过预失真器后得到
K z
。
(4)
对
K z
和
K y
归一化,利用(7)求出
aK′
并用
K z
进行补偿,更新
K a
的值。
(5) 判断是否满足线性化要求,如果满足,停止训练;如果不满足,则返回步骤(2)
(G
−1
K y0
),
φ20
(G
−1
K y0
),",
φ
K
0
(G
−1
K y0
)] ⋅
[a1′0 ,
1K z
a2′0 ,",
K z
1
K −1
a′K 0 ,"", a1′L ,
1K z
a2′ L ,",
K z
1
K −1
a′KL
]T
与(4)进行比较得
K a
与
K a
′
的关系为:
K a
=
[a1′0
,
1K z
a2′0 ,",
预失真器采用(3)的记忆多项式模型。 输入信号采用子载波数为 1024 的 OFDM 宽带信号,没有符号间干扰,忽略保护间隔影
响,64QAM 星座调制,采集点数 N =8192。
-3-
http://www.paper.edu.cn
图 2 功放输出信号星座图
图 2(a)是输入信号没有经过预失真直接通过功放的输出结果。可以看出输出信号的 幅度和相位都发生畸变。且随着信号幅度的增加,畸变越明显,说明输入信号已进入功放的 非线性区。图 2(b)是输入信号先预失真再输入到功放的输出结果。功放同样工作在非线 性区,但是由于预失真的作用使信号的幅度和相位都得到了较大的校正和补偿。
1
K z
K −1
aK′ 0 ,"", a1′L ,
1K z
a2′L ,",
1
K z
K −1
aK′ L ]T
(8)
这时求出的预失真器系数则是最终所需要的。
完整的算法步骤如下:
(1)
初始化系数
K a
:将输入数据
K x
直接经过功放得到
K y
,对
K x
和
K y
归一化,利用(7)
求出 aK′ 并用
K x
进行补偿得到
k
i =1
(1)
其中 hk (τ1 "τ k ) 是 k 阶 Volterra 核,其求解过程非常复杂。在一般的应用中通常采用其特
殊形式 Hammerstein 模型:
∑ ∑ K
y(n) =
L bkl x(n − l) x(n − l) k−1
k =1 l=0
odd
(2)
由于功放后通常紧跟随一个带通带通滤波器,以滤除带外信号成分,因此上述模型只含有奇 次项[4]。
1
K z
K −1
aK′ 0 ,"", a1′L ,
1K z
a2′L ,",
1
K z
K −1
aK′ L ]T
-5-
http://www.paper.edu.cn
参考文献
[1] Kim J and Konstantinou K. Digital predistortion of wideband signals based on power amplifier model with memory [A].Electron Lett. vol.37[C].2001.1417-1418 [2] Schetzen M. The Volterra and Wienner Theories of Nonlinear Systems[M].New York:Wiley,1980 [3] Eun C and Powers E J. A predistorter design for a memory-less nonlinearity preceded by a dynamic linear system [A]. Proc. Global Telecommunications Conference.vol.1[C].Singapore:1995.152-156 [4] Benedetto S and Biglieri E. Principles of Digital Transmission with Wireless Applications[M].New York Klumer Academic/Plenum,1999 [5] Ding L and Zhou G. Effects of even-order nonlinear terms on predistortion linearization.[A].Proc. 10th IEEE DSP Workshop[C].Pine Mountain:2002
K z
1
K −1
a′K 0 ,"",
a1′L ,
1K z
a2′ L ,",
1
K z
K −1
a′KL
]T
由于
K z K y
可近似为 G −1 ,并将
K z
k
K y
k
移入φkl 函数内,上式变为:
K z
=
[φ1L
(G
−1
K y
L
), φ2 L
(G
−1
K yL
),",φKL
(G
−1
K y
L
),"",φ10
预失真器训练支路的输出。经过训练,实际的预失真器的参数则是对预失真器训练支路所计
算出的参数的拷贝。当 y(t) = Gx(t) 时,误差 e(t) = z(t) − zˆ(t) 为零。因此间接学习结构是 通过最小化 e(t) 来间接达到减小 y(t) 与 Gx(t) 之间误差的目的。
2.2 记忆多项式模型
1. 引 言
功率放大器是通信系统中的重要组成部分,而且也是主要的非线性器件之一。功放的非 线性特性使得传输信号带外频谱扩展引起相邻信道干扰,带内幅度和相位都发生畸变致使误 码率升高。
为克服功放的非线性特性,可以采取回退的办法,即是说使功放的工作点回退,只工作 在线性区。但这样功放的效率非常低。另一种办法是仍使功放工作在非线性区,但在输入信 号进入功放之前先经过一个预失真器,再经过功放。预失真器也是一个非线性器件,但其非 线性特性恰好与功放的非线性特性相反,使得输入信号经过两次非线性变化后得到的输出信 号与输入信号之间呈现出线性关系。
功放不仅具有非线性特性,而且具有记忆效应。当输入信号带宽远小于功放带宽时,功
放的记忆效应可以忽略。但是当输入信号具有较宽的带宽时其记忆效应不能忽略,此时功放
的输出不仅与当前输入有关,而且还与以前的输入有关。通常记忆非线性系统可以利用
Volterra 级数表示为:
k
∑ ∫ ∫ ∏ y(t) = " hk (τ1 "τ k ) x(t − τ i )dτ1 "dτ k
K y
L
),"",
φ10
(G
−1
K y0
),φ20
(G
−1
K y0
),",
φK
0
(G
−1
K y0
)]
对于1
≤
k
≤
K ,0
≤
l
≤
L
,
φkl
(
K yl
)
=
[φkl ( y(l)),",φkl ( y(l
+
N
−1−
L))]T
。
由最小二乘法求解出预失真器系数
K a
=
[a10 , a20 ,", aK 0 ,"", a1L , a2L ,",
z′(n) = z(Kn) , n = 0,", N −1,其中
K z
=
z
N
∑ z(n) 2
i=1
N
y′(n) =
y(Kn) , n = 0,", N −1,其中
K y
=
y
N
∑ y(n) 2
i =1
N
对功放的输入
K z
和输出
K y
归一化后(3)变为:
∑ ∑ K
z′(n) =
L ak′l y′(n − l) y′(n − l) k−1
将
K y
提出φkl 函数外得:
Y′ =[
1K y
φ1L
(
K yL
),
1 K y
2
φ2L
(
K yL
),",
1
K y
K
φKL
K ( yL
),"",
1K y
φ10
(
K y0
),
1 K y
2
φ20
(
K y0
),",
1
K y
K
φK
0
(
K y0
)]
K a
′
=
带入
zK[a′ 1′=0
,Ya′2a′K0′,后"得, a:K′ 0
-4-
http://www.paper.edu.cn
6. 附录
归一化后(4)变为 zK′ = Y ′aK′ ,其中: zK′ =
K zK
z
K
K
K
K
K
K
Y
′
=
[φ1L
(
yKL y
),φ2L
(
yKL y
),"φKL
(
yKL y
),"",φ10
(
yK0 y
),φ20
(
yK0 y
),"φK
0
(
yK0 y
)]
图 3 功放输入和输出信号归一化功率谱
图 3 显示了输入信号以及有无预失真功放的输出信号的功率谱。从图中可以看出,输入 信号在经过预失真后,功放的非线性特性带来的频谱扩展得到了极大的抑制,减少了相邻信 道的干扰。
5. 结论
本文针对功率放大器工作于非线性区并且对于宽带信号具有记忆效应的特点,介绍了一 种基于 Hammerstein 模型的数字预失真算法,并对该算法进行了改进,具有一定的实用价值。 仿真的结果表明,该改进算法能够有效抑制传输信号的带外频谱扩展同时减小传输信号的带 内失真,实现了记忆非线性功率放大器的数字预失真。
K z
=
[
z(L),
z(L
+
1),",
z(
N
−1)]T
和
K y
=
[
y(0),
y(1),",
y(
N
−
1)]T
,则可将(3)表示为矩阵形式:
K z
=
K Ya
(4)
定义
φkl ( x(l)) = x(l) x(l) k−1
(5)
则Y
=
[φ1L
(G
−1
K y
L
),
φ2
L
(G
−1
K yL
),",φKL
(G
−1
2. 数字预失真算法
2.1 预失真器结构
我们采用间接学习结构[3]作为预失真算法的结构,如图 1 所示:
x(t)
z(t)
预失真器
y(t) PA
e(t) 1/G
zˆ(t)
预失真器训练支路
图 1 预失真间接学习结构 -1-
http://www.paper.edu.cn
其中 x(t) 表示预失真器的输入,z(t) 表示预失真器的输出同时它也是功放的输入, y(t) 表 示功放的输出。 y(t) G 为预失真器训练支路的输入,而 G 表示功放的放大增益, zˆ(t) 表示