载波同步
通信接收机解调器设计中,一个很重要的模块是载波同步。由于通信双方的相对运动和时钟差异,到达接收机的载波调制信号存在一定的频率和相位漂移,这是不利于相干解调的,因此加入载波同步模块,对存在的频率和相位偏差进行估计、补偿,以便在本地产生与接收信号同频同相的载波信号,用来相干解调,得到基带信号(这里暂且忽略多径效应,并假定没有码字偏差)。载波同步技术主要有两类,一类是非数据辅助的同步,如锁相环技术;另一类是基于数据辅助的同步,即在发送数据中加入特定的已知信息位,用于辅助载波同步。今天主要讲讲数据辅助的载波同步技术中,对未知参数估计的方法,即载波同步中的最大似然估计。
接收信号的概率密度分布函数
最大似然估计第一步就是要建立似然函数,而似然函数又是和数据样本的概率分布函数相关,因此首先需要知道接收信号的概率密度分布函数。这里设发送信号为
X
(
t
)
X(t)
X(t),接收到的信号为
Y
(
t
)
Y(t)
Y(t),高斯信道引入的噪声为
W
(
t
)
W(t)
W(t),则:
Y
(
t
)
=
X
(
t
)
+
W
(
t
)
Y(t) =X(t) + W(t)
Y(t)=X(t)+W(t)。噪声满足标准正态分布,设其方差为
σ
2
\sigma^{2}
σ2,可推出接收信号
Y
(
t
)
Y(t)
Y(t)的概率密度分布函数为:
P
(
Y
(
t
)
)
=
1
2
π
σ
e
x
p
(
−
(
Y
(
t
)
−
X
(
t
)
)
2
2
σ
2
)
P(Y(t)) = \frac{1}{\sqrt{2\pi}\sigma}exp({-\frac{(Y(t)-X(t))^2}{2\sigma^2}})
P(Y(t))=2πσ1exp(−2σ2(Y(t)−X(t))2)
这是到达接收机的信号
Y
(
t
)
Y(t)
Y(t)的概率分布,在接收机的处理中,第一步是下变频,将数字中频信号变换至基带,成为正交信号,即下变频后的信号变为了有实部和虚部的复信号
Y
d
d
c
(
t
)
Y^{ddc}(t)
Yddc(t),同时
X
(
t
)
X(t)
X(t)和
W
(
t
)
W(t)
W(t)也会变为复信号,不变的是噪声的概率分布,那复信号
Y
d
d
c
(
t
)
Y^{ddc}(t)
Yddc(t)的概率分布又会变成什么样呢?其实这是一个简单的联合概率分布问题(实部与虚部正交)。
P
(
Y
d
d
c
(
t
)
)
=
P
(
Y
r
e
a
l
d
d
c
(
t
)
,
Y
i
m
a
g
d
d
c
(
t
)
)
=
P
(
Y
r
e
a
l
d
d
c
(
t
)
)
P
(
Y
i
m
a
g
d
d
c
(
t
)
)
P(Y^{ddc}(t)) = P(Y^{ddc}_{real}(t),Y^{ddc}_{imag}(t))= P(Y^{ddc}_{real}(t))P(Y^{ddc}_{imag}(t))
P(Yddc(t))=P(Yrealddc(t),Yimagddc(t))=P(Yrealddc(t))P(Yimagddc(t))
则,
P
(
Y
d
d
c
(
t
)
)
=
1
2
π
σ
e
x
p
(
−
(
Y
r
e
a
l
d
d
c
(
t
)
−
X
r
e
a
l
d
d
c
(
t
)
)
2
2
σ
2
)
∗
1
2
π
σ
e
x
p
(
−
(
Y
i
m
a
g
d
d
c
(
t
)
−
X
i
m
a
g
d
d
c
(
t
)
)
2
2
σ
2
)
P(Y^{ddc}(t)) = \frac{1}{\sqrt{2\pi}\sigma}exp({-\frac{(Y^{ddc}_{real}(t)-X^{ddc}_{real}(t))^2}{2\sigma^2}})* \frac{1}{\sqrt{2\pi}\sigma}exp({-\frac{(Y^{ddc}_{imag}(t)-X^{ddc}_{imag}(t))^2}{2\sigma^2}} )
P(Yddc(t))=2πσ1exp(−2σ2(Yrealddc(t)−Xrealddc(t))2)∗2πσ1exp(−2σ2(Yimagddc(t)−Ximagddc(t))2)
= 1 2 π σ 2 e x p ( − ∣ Y d d c ( t ) − X d d c ( t ) ∣ 2 2 σ 2 ) = \frac{1}{{2\pi}\sigma^2}exp({-\frac{|Y^{ddc}(t)-X^{ddc}(t)|^2}{2\sigma^2}} ) =2πσ21exp(−2σ2∣Yddc(t)−Xddc(t)∣2)
载波同步中的最大似然估计
这里就不再啰嗦最大似然的基本原理了,需要补知识的童鞋可以点链接 通俗易懂的最大似然估计 当你明白了什么是最大似然和最大似然估计,接着就来看看在基于数据辅助的载波同步中,怎么使用最大似然估计。
- 建立似然函数
L
(
R
i
∣
γ
)
L(R_i|\gamma)
L(Ri∣γ) ,其中
R
i
R_i
Ri为下变频后的样本序列,
γ
\gamma
γ为待估参数,其代表频偏和相偏的集合,即
γ
=
(
f
d
,
θ
d
)
\gamma={(f_d,\theta_d)}
γ=(fd,θd),则似然函数为带有参数
γ
\gamma
γ的样本序列概率分布函数的连乘。
L ( R i ∣ γ ) = ∏ i = 1 N 1 2 π σ 2 e x p ( − ∣ Y d d c ( t i , γ ) − X d d c ( t i , γ ) ∣ 2 2 σ 2 ) L(R_i|\gamma) = ∏_{i=1}^N\frac{1}{{2\pi}\sigma^2}exp({-\frac{|Y_{ddc}(t_i,\gamma)-X_{ddc}(t_i,\gamma)|^2}{2\sigma^2}} ) L(Ri∣γ)=i=1∏N2πσ21exp(−2σ2∣Yddc(ti,γ)−Xddc(ti,γ)∣2)
其中N表示用于最大似然估计的样本长度。 - 似然函数取对数,为方便计算,一般会用对数似然函数来代替原始的似然函数,将连乘运算变为连加运算。
L n [ L ( R i ∣ γ ) ] = N L n ( 1 2 π σ 2 ) + ∑ i = 1 N − ∣ Y d d c ( t i , γ ) − X d d c ( t i , γ ) ∣ 2 2 σ 2 Ln[L(R_i|\gamma)] =NLn(\frac{1}{{2\pi}\sigma^2})+∑_{i=1}^N-\frac{|Y_{ddc}(t_i,\gamma)-X_{ddc}(t_i,\gamma)|^2}{2\sigma^2} Ln[L(Ri∣γ)]=NLn(2πσ21)+i=1∑N−2σ2∣Yddc(ti,γ)−Xddc(ti,γ)∣2 - 对数似然函数的极大值,当参数估计准确时,样本序列概率函数连乘有最大值。即对数似然函数的最大值对应的参数值即为待估参数的实际值,所以基于最大似然的参数估计就变为了求似然函数最大值的问题。
M a x ( L n [ L ( R i ∣ γ ) ] ) = M a x ( − ∑ i = 1 N ∣ Y d d c ( t i , γ ) − X d d c ( t i , γ ) ∣ 2 ) Max(Ln[L(R_i|\gamma)]) = Max(-∑_{i=1}^N|Y_{ddc}(t_i,\gamma)-X_{ddc}(t_i,\gamma)|^2) Max(Ln[L(Ri∣γ)])=Max(−i=1∑N∣Yddc(ti,γ)−Xddc(ti,γ)∣2)
= M a x ( − ∑ i = 1 N ∣ Y d d c ( t i , γ ) ∣ 2 − ∑ i = 1 N ∣ X d d c ( t i , γ ) ∣ 2 + 2 ∑ i = 1 N R e ( Y d d c ( t i , γ ) ∗ C o n j ( X d d c ( t i , γ ) ) ) ) =Max(-∑_{i=1}^N|Y_{ddc}(t_i,\gamma)|^2-∑_{i=1}^N|X_{ddc}(t_i,\gamma)|^2+2∑_{i=1}^NRe(Y_{ddc}(t_i,\gamma)*Conj(X_{ddc}(t_i,\gamma)))) =Max(−i=1∑N∣Yddc(ti,γ)∣2−i=1∑N∣Xddc(ti,γ)∣2+2i=1∑NRe(Yddc(ti,γ)∗Conj(Xddc(ti,γ))))
其中 Y d d c ( t i , γ ) Y_{ddc}(t_i,\gamma) Yddc(ti,γ)为接收的样本序列,其值属于固定的,因此在最大值计算中,可以去除,则上式可进一步简化为:
M a x ( L n [ L ( R i ∣ γ ) ] ) = M a x ( 2 ∑ i = 1 N R e ( Y d d c ( t i , γ ) ∗ C o n j ( X d d c ( t i , γ ) ) ) − ∑ i = 1 N ∣ X d d c ( t i , γ ) ∣ 2 ) ) Max(Ln[L(R_i|\gamma)]) =Max(2∑_{i=1}^NRe(Y_{ddc}(t_i,\gamma)*Conj(X_{ddc}(t_i,\gamma)))-∑_{i=1}^N|X_{ddc}(t_i,\gamma)|^2)) Max(Ln[L(Ri∣γ)])=Max(2i=1∑NRe(Yddc(ti,γ)∗Conj(Xddc(ti,γ)))−i=1∑N∣Xddc(ti,γ)∣2))
X d d c ( t i , γ ) X_{ddc}(t_i,\gamma) Xddc(ti,γ)是接收数据中的已知序列(所谓的数据辅助 指的就是它的辅助,因此它对于我们来说是已知的,譬如常用的导频序列,前导序列等),但它与发送端的序列还是有点区别的,区别在于它包含了频率和相位的偏差信息,其可描述为 X d d c ( t i , γ ) = C i e j ( 2 π f d i T + θ d ) g ( t − i T ) X_{ddc}(t_i,\gamma)=C_ie^{j(2\pi f_diT +\theta_d)}g(t-iT) Xddc(ti,γ)=Ciej(2πfdiT+θd)g(t−iT),可见 ∣ X d d c ( t i , γ ) ∣ 2 |X_{ddc}(t_i,\gamma)|^2 ∣Xddc(ti,γ)∣2也为一个固定值,因此上面的最大值计算公式可进一步简化为:
M a x ( L n [ L ( R i ∣ γ ) ] ) = M a x ( ∑ i = 1 N R e ( Y d d c ( t i , γ ) ∗ C o n j ( X d d c ( t i , γ ) ) ) ) Max(Ln[L(R_i|\gamma)]) =Max(∑_{i=1}^NRe(Y_{ddc}(t_i,\gamma)*Conj(X_{ddc}(t_i,\gamma)))) Max(Ln[L(Ri∣γ)])=Max(i=1∑NRe(Yddc(ti,γ)∗Conj(Xddc(ti,γ))))
将
X
d
d
c
(
t
i
,
γ
)
X_{ddc}(t_i,\gamma)
Xddc(ti,γ)的表达式带入上式,得
M
a
x
(
L
n
[
L
(
R
i
∣
γ
)
]
)
=
M
a
x
(
R
e
(
e
−
j
θ
d
∑
i
=
1
N
C
i
∗
∗
Y
d
d
c
(
t
i
,
γ
)
e
−
j
2
π
f
d
i
T
g
(
t
−
i
T
)
)
)
Max(Ln[L(R_i|\gamma)]) =Max(Re(e^{-j\theta_d}∑_{i=1}^NC_i^**Y_{ddc}(t_i,\gamma)e^{-j2\pi f_diT}g(t-iT)))
Max(Ln[L(Ri∣γ)])=Max(Re(e−jθdi=1∑NCi∗∗Yddc(ti,γ)e−j2πfdiTg(t−iT)))
由上面的公式可推出数据辅助载波同步的处理流程,它包括匹配滤波,基于偏移频率的二次下变频,与本地码字的共轭相关,经过这样的处理后,得到的最大值对应的偏移频率,即为估计的载波频偏。同时也通过这个方法,做到了码字同步,其找到了码字的起始位置,与帧同步类似。
设
∑
i
=
1
N
C
i
∗
∗
Y
d
d
c
(
t
i
,
γ
)
e
−
j
2
π
f
d
i
T
g
(
t
−
i
T
)
=
∣
A
∣
e
j
ψ
∑_{i=1}^NC_i^**Y_{ddc}(t_i,\gamma)e^{-j2\pi f_diT}g(t-iT)=|A|e^{j\psi}
∑i=1NCi∗∗Yddc(ti,γ)e−j2πfdiTg(t−iT)=∣A∣ejψ,则上式可简写为
M
a
x
(
∣
A
∣
c
o
s
(
j
ψ
−
θ
)
)
Max(|A|cos(j\psi-\theta))
Max(∣A∣cos(jψ−θ))