逐幸存路径处理(PSP)算法

本文介绍了混合信号处理发展阶段,指出传统处理方法不足,引出联合信道估计与序列检测思想及PSP算法。阐述了PSP算法的信号模型、实施步骤,探讨了初始化及定时问题,包括幅度、初始相位、脉冲响应初始化和定时估计,给出仿真结果,总结了PSP算法特点。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

混合信号处理的发展历程大致可以分为四个阶段:
一、采用过采样的方法,达到类似多通道接收效果,借助已有的多通道处理方式进行分离
二、通过变换域方法实现混合信号分离
三、通过最大似然序列联合估计方法分离混合信号
四、基于深度神经网络的解调算法

混合信号盲分离的核心是从一路接收信号中估计出两路信号的符号序列。传统的处理思想是先实现混合信号的分离,再进行解调。该类方法的核心思想是利用分量信号某个参数的差异构造正定条件,寻求在某个变换域上“正交”,或采用多通道分离方法实现分离,然而该类方法的性能往往受多种参数的影响,且分离后还需要解调,存在错误传播现象,不能满足实际需求。

鉴于此,跳过分离环节,直接对接收混合信号进行符号序列的盲检测,将信号调制参数的影响等效成一信道滤波器,恢复出通信双方发送的符号序列,从而避免了先分离后解调类处理方法带来的不足,这就是联合信道估计与序列检测的思想,可以用粒子滤波、逐幸存路径算法进行实现。

逐幸存路径处理(Per-Survivor Processing, PSP)

1.信号模型及PSP算法描述

对于一个接收机接收到的一个包含两个QPSK信号的混合信号,等效到基带后可以表示为
y ( t ) = h 1 e j ( Δ ω 1 t + θ 1 ) x 1 ( t ) + h 2 e j ( Δ ω 2 t + θ 2 ) x 2 ( t ) + v ( t ) (1) \begin{aligned}y(t)=h_1e^{j(\Delta\omega_1t+\theta_1)}x_1(t)+h_2e^{j(\Delta\omega_2t+\theta_2)}x_2(t)+v(t)\end{aligned}\tag{1} y(t)=h1ej(Δω1t+θ1)x1(t)+h2ej(Δω2t+θ2)x2(t)+v(t)(1)其中 h i h_i hi 是两个调制信号的实际振幅衰减, Δ ω i \Delta\omega_i Δωi 是两个信号的频率偏移, θ i \theta_i θi 是初始相位, v ( t ) v(t) v(t) 是加性高斯白噪声。中间信号 x i ( t ) x_i(t) xi(t) 可以定义为
x i ( t ) = ∑ n = − ∞ ∞ s n ( i ) g i ( t − n T + τ i ( t ) ) (2) \begin{aligned}x_i(t)=&\sum_{n=-\infty}^\infty s_n^{(i)}g_i(t-nT+\tau_i(t))\end{aligned}\tag{2} xi(t)=n=sn(i)gi(tnT+τi(t))(2)其中,其中 s n ( i ) s_n^{(i)} sn(i) 是具有单位能量(QPSK调制)、各符号出现概率等概、独立同分布的随机序列。 g i ( t ) g_i(t) gi(t) 是由成型滤波器、信道滤波器和匹配滤波器组成的等效信道滤波器的脉冲响应, 0 ≤ τ i ( t ) < t 0≤τ_i(t)<t 0τi(t)<t是两个调制信号的相对时延, T T T 是符号周期。

1 / T 1/T 1/T 的速率采样公式(1)中的信号,假设等效信道滤波器的脉冲响应持续有限时间 2 L T 2LT 2LT,从 ( 1 − L ) T (1-L)T (1L)T L T LT LT,可以得到采样后的序列 y k = h 1 e j ( Δ ω 1 k T + θ 1 ) x k ( 1 ) + h 2 e j ( Δ ω 2 k T + θ 2 ) x k ( 2 ) + v k (3) \begin{aligned}y_k=h_1e^{j(\Delta\omega_1kT+\theta_1)}x_k^{(1)}+h_2e^{j(\Delta\omega_2kT+\theta_2)}x_k^{(2)}+v_k\end{aligned}\tag{3} yk=h1ej(Δω1kT+θ1)xk(1)+h2ej(Δω2kT+θ2)xk(2)+vk(3)其中 y k = y ( k T ) , v k = v ( k T ) y_k=y(kT), v_k=v(kT) yk=y(kT),vk=v(kT),且
x k ( i ) = x i ( k T ) = ∑ n = 1 − L L s k + n ( i ) g i ( − n T + τ k ( i ) ) (4) \begin{aligned}x_{k}^{(i)}=x_{i}(kT)=\sum_{n=1-L}^{L}s_{k+n}^{(i)}g_{i}(-nT+\tau_{k}^{(i)})\end{aligned}\tag{4} xk(i)=xi(kT)=n=1LLsk+n(i)gi(nT+τk(i))(4)其中 τ k ( i ) = τ i ( k T ) , k = 0 , 1 , . . . , K − 1 \tau_{k}^{(i)}=\tau_i(kT),k=0,1,...,K-1 τk(i)=τi(kT),k=0,1,...,K1
通过定义 2 L × 1 2L\times1 2L×1 源符号向量 s k ( i ) = [ s k − L + 1 ( i ) , s k − L + 2 ( i ) , … , s k + L ( i ) ] T \quad\text{s}_{k}^{(i)}\quad=\quad\left[s_{k-L+1}^{(i)},s_{k-L+2}^{(i)},\ldots,s_{k+L}^{(i)}\right]^\mathrm{T} sk(i)=[skL+1(i),skL+2(i),,sk+L(i)]T 以及对应的CIR(channel impulse responses, 广义的信道脉冲响应)向量 f k ( i ) = h i e j ( Δ ω i k T + θ i ) . [ g i ( ( L − 1 ) T + τ k ( i ) ) , … , g i ( − L T + τ k ( i ) ) ] T \begin{array}{ccc}\textbf{f}^{(i)}_k\quad=\quad h_ie^{j(\Delta\omega_ikT+\theta_i)}\quad.\end{array}\left[g_i((L-1)T+\tau_k^{(i)}),\ldots,\text{}g_i(-{LT}+\tau_k^{(i)})\right]^T fk(i)=hiej(ΔωikT+θi).[gi((L1)T+τk(i)),,gi(LT+τk(i))]T。通过 s k ( 1 ) , s k ( 2 ) \textbf{s}_k^{(1)},\textbf{s}_k^{(2)} sk(1),sk(2) f k ( 1 ) , f k ( 2 ) \textbf{f}_k^{(1)},\textbf{f}_k^{(2)} fk(1),fk(2) ,可以构造向量 s k = [ s k ( 1 ) s k ( 2 ) ] \textbf{s}_k=\begin{bmatrix}\textbf{s}_k^{(1)}\\ \textbf{s}_k^{(2)}\end{bmatrix} sk=[sk(1)sk(2)] f k = [ f k ( 1 ) f k ( 2 ) ] \textbf{f}_k=\begin{bmatrix}\textbf{f}_k^{(1)}\\ \textbf{f}_k^{(2)}\end{bmatrix} fk=[fk(1)fk(2)],并将公式(3)改写成向量形式 y k = f k T s k + v k (5) y_k=\textbf{f}_k^T\textbf{s}_k+v_k\tag{5} yk=fkTsk+vk(5)
上述是关于接收信号的描述,对于混合信号的接收,我们的最终目的是恢复出发送的信息序列,即得到发送的符号序列 s 0 : K − 1 ( i ) = { s 0 ( i ) , s 1 ( i ) , … , s K − 1 ( i ) } \begin{aligned}s_{0:K-1}^{(i)}&=\end{aligned}\left\{s_0^{(i)},s_1^{(i)},\ldots,s_{K-1}^{(i)}\right\} s0:K1(i)={s0(i),s1(i),,sK1(i)},可用信息是接收到的信息序列 y 0 : K − 1 = { y 0 , y 1 , … , y K − 1 } y_{0\text{:}K-1}=\text{}\bigl\{y_0,y_1,\ldots,y_{K-1}\bigr\} y0:K1={y0,y1,,yK1}。如果CIR f k f_k fk 已知,那么可以用序列检测,如使用 Viterbi 算法。显然,对于盲信号分离, f k f_k fk 是未知的,需要将 f k f_k fk 和符号序列 s 0 : K − 1 ( i ) s_{0\text{:}K-1}^{(i)} s0:K1(i)一起进行联合估计。

通过实验发现,当载波频率之间的位移相对较大时, f k f_k fk 随时间 k k k 的变化太快,现有的算法如 最小均方算法(LMS) 和递归最小二乘(RLS)无法跟踪。在这种情况下,必须修改信号模型以保持最终形式的CIR尽可能恒定。

假设载波频偏被估计为 Δ ω i ^ \widehat{\Delta\omega_{i}} Δωi ,有一个小误差 Δ ω i ~ \widetilde{\Delta\omega_{i}} Δωi ,即
Δ ω i = Δ ω i ^ + Δ ω i ~ (6) \quad\Delta\text{}\omega_i=\widehat{\Delta\omega_i}+\widetilde{\Delta\omega_i}\tag{6} Δωi=Δωi +Δωi (6)将公式(6)代入到公式(3),将频偏估计 Δ ω i ^ \widehat{\Delta\omega_{i}} Δωi 与源符号 s k ( i ) \textbf{s}_k^{(i)} sk(i) 结合,在CIR中只留下误差 Δ ω i ~ \widetilde{\Delta\omega_{i}} Δωi ,可以得到修正后的模型为
y k = f ‾ k T s ‾ k + v k (7) y_k=\underline{\textbf{f}}_k^T\underline{\textbf{s}}_k+v_k\tag{7} yk=fkTsk+vk(7)其中 s ‾ k = [ s ‾ k ( 1 ) s ‾ k ( 2 ) ] \underline{\textbf{s}}_k=\begin{bmatrix}\underline{\textbf{s}}_k^{(1)}\\ \underline{\textbf{s}}_k^{(2)}\\ \end{bmatrix} sk=[sk(1)sk(2)] f ‾ k = [ f ‾ k ( 1 ) f ‾ k ( 2 ) ] \underline{\textbf{f}}_k=\begin{bmatrix}\underline{\textbf{f}}_k^{(1)}\\ \underline{\textbf{f}}_k^{(2)}\\ \end{bmatrix} fk=[fk(1)fk(2)],且
s ‾ k ( i ) = e j Δ ω i ^ k T ⋅ [ s k − L + 1 ( i ) , … , s k + L ( i ) ] T (8) \underline{\textbf{s}}_k^{(i)}=e^{j\widehat{\Delta\omega_i} k T}\cdot\left[s_{k-L+1}^{(i)},\ldots,s_{k+L}^{(i)}\right]^T\tag{8} sk(i)=ejΔωi kT[skL+1(i),,sk+L(i)]T(8)
f ‾ k ( i ) = h i e j ( Δ ω i ~ k T + θ i ) . [ g i ( ( L − 1 ) T + τ k ( i ) ) , … , g i ( − L T + τ k ( i ) ) ] T (9) \begin{aligned}\underline{\textbf{f}}_{k}^{(i)}&=h_{i}e^{j(\widetilde{\Delta\omega_{i}}k T+\theta_{i})}.\\ &\left[g_{i}((L-1)T+\tau_{k}^{(i)}),\ldots,g_{i}(-LT+\tau_{k}^{(i)})\right]^{T}\end{aligned}\tag{9} fk(i)=hiej(Δωi kT+θi).[gi((L1)T+τk(i)),,gi(LT+τk(i))]T(9)现在可以观察到,新的CIR f ‾ k \underline{\textbf{f}}_k fk不再随时间k快速变化,可以用一个简单的LMS算法来处理。

定义 ϕ k = ( s ‾ k ( 1 ) , s ‾ k ( 2 ) ) \phi_k=\left(\text{}\underline{s}_k^{(1)},\underline{s}_k^{(2)}\right) ϕk=(sk(1),sk(2)),定义在 k k k 时刻信道状态为 μ k = ϕ k − L + 2 : k + L = { ϕ k − L + 2 , … , ϕ k + L } \mu_k=\phi_{k-L+2:k+L}=\{\phi_{k-L+2},\ldots,\phi_{k+L}\} μk=ϕkL+2:k+L={ϕkL+2,,ϕk+L},当 ϕ k + L \phi_{k\text{+}L} ϕk+L 可得到时,状态从 μ k − 1 μ_{k−1} μk1 转移到 μ k μ_k μk,输出 y k y_k yk。这种转移可以写成
μ k − 1 ⟶ ( ϕ k + L , y k ) μ k \mu_{k-1}\stackrel{(\phi_{k+L},y_{k})}{\longrightarrow}\mu_{k} μk1(ϕk+L,yk)μk 对于QPSK调制,符号有四种可能。当成型滤波采用升余弦脉冲时, g i ( t ) g_i(t) gi(t) 随时间 t t t 衰减非常快,当 L 取 2 时信道可以描述为 4 2 ( 2 × 2 − 1 ) = 4096 4^{2(2\times2\text{}-1)}=4096 42(2×21)=4096 个状态的网格。为了进一步降低复杂性,引入DFSE(decision feedback sequence estimation, 判决反馈序列估计)检测源符号。为了保持分离性能,我们将最不显著的抽头作为唯一的反馈抽头。因此,我们将 k k k 时刻的状态重新定义为 μ k = ϕ k + 1 : k + 2 \mu_k=\phi_{k+1:k+2} μk=ϕk+1:k+2。现在状态数减少到256,方便更快速地进行符号检测。

PSP算法实施如下:
1.初始化:令 k = 0 k=0 k=0,对于每个状态 μ ‾ 0 \underline{\mu}_{0} μ0,用某个特定值初始化 f ‾ 0 \underline{\textbf{f}}_0 f0,保存幸存路径 p 0 = ( μ ‾ 0 ) p_{0}=(\text{}\underline{\mu}_{0}) p0=(μ0) 及其对应的度量 Γ ( μ ‾ 0 ) = 0 \Gamma(\text{}\underline{\mu}_0)=0 Γ(μ0)=0
2.符号检测(DFSE):对第 k k k 步的分支,度量评估所有可能的状态转换,根据 λ ( μ ‾ k → μ ‾ k + 1 ) = ∣ e ( μ ‾ k → μ ‾ k + 1 ) ∣ 2 (10) \begin{aligned}\lambda(\underline{\mu}_k\to\underline{\mu}_{k+1})=\left|e(\underline{\mu}_k\to\underline{\mu}_{k+1})\right|^2\end{aligned}\tag{10} λ(μkμk+1)= e(μkμk+1) 2(10)其中
e ( μ ‾ k → μ ‾ k + 1 ) = y k − f ‾ k T s ‾ k ( μ ‾ k → μ ‾ k + 1 ) (11) \begin{aligned}e(\underline{\mu}_k\to\underline{\mu}_{k+1})=y_k-\underline{\textbf{f}}_k^T\underline{\textbf{s}}_k(\underline{\mu}_k\to\underline{\mu}_{k+1})\end{aligned}\tag{11} e(μkμk+1)=ykfkTsk(μkμk+1)(11)其中 s ‾ k ( μ ‾ k → μ ‾ k + 1 ) \underline{\textbf{s}}_k(\underline{\mu}_k\to\underline{\mu}_{k+1}) sk(μkμk+1) 是相对于 μ ‾ k → μ ‾ k + 1 \underline{\mu}_k\to\underline{\mu}_{k+1} μkμk+1 状态转移的符号向量。对于所有后续状态 μ ‾ k + 1 \underline{\mu}\text{}_{k+1} μk+1,累积的度量是通过对当前状态 μ ‾ k \underline{\mu}_k μk 进行最小化来确定的。
Γ ( μ ‾ k + 1 ) = min k ( Γ ( μ ‾ k ) + λ ( μ ‾ k → μ ‾ k + 1 ) ) (12) \begin{aligned}\Gamma(\underline{\mu}_{k+1})=\underset{k}{\text{min}}\left(\Gamma(\underline{\mu}_{k})+\lambda(\underline{\mu}_{k}\to\underline{\mu}_{k+1})\right)\end{aligned}\tag{12} Γ(μk+1)=kmin(Γ(μk)+λ(μkμk+1))(12)最后,根据 p k + 1 = ( p k , μ ‾ k + 1 ) p_{k+1}=(p_{k},\underline{\mu}_{k+1}) pk+1=(pk,μk+1),通过合并满足(12)的转移路径来扩展终止于当前状态的幸存节点。
3.参数估计:对于转移路径 μ ‾ k → μ ‾ k + 1 \underline{\mu}_{k}\to\underline{\mu}_{k+1} μkμk+1 来扩展当前的幸存节点,CIR向量根据下式更新
f ‾ k + 1 = f ‾ k + γ ⋅ e ( μ ‾ k → μ ‾ k + 1 ) ⋅ s ‾ k ∗ ( μ ‾ k → μ ‾ k + 1 ) (13) \underline{\textbf{f}}_{k+1}=\underline{\textbf{f}}_k+\gamma\cdot e(\underline{\mu}_k\to\underline{\mu}_{k+1})\cdot\underline{\textbf{s}}_k^*(\underline{\mu}_k\to\underline{\mu}_{k+1})\tag{13} fk+1=fk+γe(μkμk+1)sk(μkμk+1)(13)其中 ∗ * 表示共轭, γ \gamma γ 是控制调整速率的尺度因子。
4.令 k = k + 1 k=k+1 k=k+1,当 k = K k=K k=K时结束算法,否则回到步骤2.

与部分算法需要估计参数 h i , Δ ω i , θ i , τ k ( i ) h_i,\Delta\omega_i,\theta_i,\tau_k^{(i)} hi,Δωi,θi,τk(i) 的方法不同,PSP算法仅估计CIR向量 f ‾ k ( i ) \underline{\textbf{f}}_{k}^{(i)} fk(i)

2.初始化及定时问题

通过对PSP算法的描述,可以看出其中各参数的初始化是非常重要的。好的初始化可以确保结果收敛并加速迭代过程,坏的初始化可能导致结果不收敛。为了获得 f ‾ 0 \underline{\textbf{f}}_0 f0 真实值的好的近似,根据公式(9)所述需要分别估计 h i , θ i , g i ( − n T + τ k ( i ) ) \textit{h}_i,\theta_i,g_i(-nT+\tau_{k}^{(i)}) hi,θi,gi(nT+τk(i))

还有一个问题是定时,当进行连续分离时,定时是需要考虑的。在许多情况下,符号周期 T T T 是未知的,需要估计,因此误差是不可避免的。当由于时间增加而累积的定时误差超过一个符号周期(例如T)时,主抽头将滑向区域 [ 1 − L , L ] [1−L,L] [1LL] 的任一边缘,甚至滑出区域,这导致信号重构的不准确,进而导致分离性能的下降。此外,还需要在精确点对接收到的混合信号进行采样,以满足条件 τ k ( 1 ) + τ k ( 2 ) = T \tau_{k}^{(1)}+\tau_{k}^{(2)}=T τk(1)+τk(2)=T,从而实现最佳的信号分离[1]。

不失一般性,可以假定载波频率偏移只有符号不同,即 Δ ω 1 = − Δ ω 2 \begin{aligned}\Delta\omega_1=-\Delta\omega_2\end{aligned} Δω1=Δω2.

2.1 幅度估计

根据两个源序列内部和之间的独立性,忽略噪声的影响,将接收到的混合信号 y k y_k yk 的平均功率可以从(3)写成
E ( ∣ y k ∣ 2 ) = h 1 2 ∑ n = 1 − L L g 1 2 ( − n T + τ k ( 1 ) ) + h 2 2 ∑ n = 1 − L L g 2 2 ( − n T + τ k ( 2 ) ) ≈ 2 h ˉ 2 P 0 (14) \begin{align}E(|y_k|^2)=&h_1^2\sum_{n=1-L}^{L}g_1^2(-nT+\tau_k^{(1)})+\\ &h_2^2\sum_{n=1-L}^{L}g_2^2(-nT+\tau_k^{(2)})\\ \approx&2\bar{h}^2P_0\end{align}\tag{14} E(yk2)=h12n=1LLg12(nT+τk(1))+h22n=1LLg22(nT+τk(2))2hˉ2P0(14)其中 h ˉ 2 = ( h 1 2 + h 2 2 ) / 2 , P 0 = g i 2 ( 0 ) \bar{h}^2=(h_1^2+h_2^2)/2,P_{0}=g_{i}^{2}(0) hˉ2=(h12+h22)/2,P0=gi2(0)。当两个混合信号有相近的功率时,根据公式(14)幅度 h i h_i hi 可以被估计为 h ^ i = 1 2 K P 0 ∑ k = 0 K − 1 ∣ y k ∣ 2 (15) \begin{aligned}\hat{h}_i=\sqrt{\frac{1}{2KP_0}\sum_{k=0}^{K-1}|y_k|^2}\end{aligned}\tag{15} h^i=2KP01k=0K1yk2 (15)

2.2 初始相位估计

构造辅助信号
Z k ( i ) = y k e − j Δ ω i k T = h i e j θ i x k ( i ) + h l e j ( ( Δ ω l − Δ ω i ) k T + θ l ) x k ( l ) (16) \begin{aligned}Z_{k}^{(i)}&=y_{k}e^{-j\Delta\omega_{i}kT}\\ &=h_{i}e^{j\theta_{i}}x_{k}^{(i)}+h_{l}e^{j((\Delta\omega_{l}-\Delta\omega_{i})kT+\theta_{l})}x_{k}^{(l)}\\ \end{aligned}\tag{16} Zk(i)=ykejΔωikT=hiejθixk(i)+hlej((ΔωlΔωi)kT+θl)xk(l)(16)其中 i , l ∈ { 1 , 2 } , i ≠ l i,l\in\{1,2\},i\neq l i,l{1,2},i=l,可以得到其四次形式如下
E { ( Z k ( i ) ) 4 } = h i 4 E { ( x k ( i ) ) 4 } e j 4 θ i (17) \quad E\{(Z_k^{(i)})^4\}=h_i^4E\{(x_k^{(i)})^4\}e^{j4\theta_i}\tag{17} E{(Zk(i))4}=hi4E{(xk(i))4}ej4θi(17)初始相位 θ i \theta_i θi 可以被估计为 θ i ^ = 1 4 arg [ E { ( Z k ( i ) ) 4 } ] (18) \hat{\theta_i}=\dfrac{1}{4}\text{arg}\left[E\{(Z_k^{(i)})^4\}\right]\tag{18} θi^=41arg[E{(Zk(i))4}](18)这里存在一个 k π / 2 , k = 0 , 1 , 2 , 3 k\pi/2, k = 0,1,2,3 /2,k=0,1,2,3 的模糊,但通常不太重要。

2.3 脉冲响应初始化和定时估计

通过 2.1 和 2.2可以估计出 h i , θ i h_i,\theta_i hi,θi,如果再获得时间延迟 τ k ( i ) \tau_k(i) τk(i),我们可以正确地初始化 g i ( − n T + τ k ( i ) ) g_i(-nT+\tau_k^{(i)}) gi(nT+τk(i)),从而得到CIR各参数。然而 τ k ( i ) \tau_k^{(i)} τk(i) 的估计是较困难的。其中一种简单的做法是将其设置为中间值。

对于定时,Gardner定时同步算法广泛地应用在单调制信号解调中,其可以通过以下方式定位不受码间串扰(ISI)影响的最佳内插时刻:
t k = t k − 1 + T ^ + η T ^ e k (19) t_{k}=t_{k-1}+\hat{T}+\eta \hat{T} e_{k}\tag{19} tk=tk1+T^+ηT^ek(19) 其中 t k = k T − ξ k t_k=kT-\xi_k tk=kTξk 表示第 k k k 次插值的时刻, T ^ \hat{T} T^ 是符号周期的估计值, η \eta η是归一化的步长参数,Gardner定时误差检测器的输出值可以写成
e k = ℜ { [ y ( t k − 1 ) − y ( t k ) ] ⋅ y ∗ ( t k − 1 + t k 2 ) } (20) \begin{aligned}e_k&=\Re\left\{\left[y(t_{k-1})-y(t_k)\right]\cdot y^*(\frac{t_{k-1}+t_k}{2})\right\}\\ \end{aligned}\tag{20} ek={[y(tk1)y(tk)]y(2tk1+tk)}(20)其中 ℜ \Re 意味着取实部。

对于两个QPSK信号的单通道接收混合信号,将公式(1),带入到公式(20),并且令
h 1 = h 2 = h , Δ ω 1 = − Δ ω 2 = Δ ω , g 1 ( t ) = g 2 ( t ) = g ( t ) ,   τ i ( t k − 1 )   =   τ i ( t k )   =   τ i ( ( t k − 1 + t k ) / 2 )   =   τ i , ξ k − 1 = ξ k = ξ h_1=h_2=h,\Delta\omega_1=-\Delta\omega_2=\Delta\omega,g_1(t)=g_2(t)=g(t),~\tau_i(t_{k-1})~=~\tau_i(t_k)~=~\tau_i((t_{k-1}+t_k)/2)~=~\tau_i,\xi_{k-1}=\xi_{k}=\xi h1=h2=h,Δω1=Δω2=Δω,g1(t)=g2(t)=g(t), τi(tk1) = τi(tk) = τi((tk1+tk)/2) = τi,ξk1=ξk=ξ 得到
E ( e k ) = h 2 cos ( Δ ω T 2 ) ⋅ { ∑ n = − ∞ ∞ g ( − n T − T 2 − ξ + τ 1 ) ⋅ [ g ( − n T − T − ξ + τ 1 ) − g ( − n T − ξ + τ 1 ) ] + ∑ n = − ∞ ∞ g ( − n T − T 2 − ξ + τ 2 ) ⋅ [ g ( − n T − T − ξ + τ 2 ) − g ( − n T − ξ + τ 2 ) ] } (21) \begin{aligned}E(e_k)&=h^2\text{cos}(\frac{\Delta\omega T}{2})\cdot\\ &\{\sum_{n=-\infty}^\infty g(-nT-\frac{T}{2}-\xi+\tau_1)\cdot[g(-nT-T-\xi+\tau_1)-g(-nT-\xi+\tau_1)]\\ +&\sum_{n=-\infty}^\infty g(-nT-\frac{T}{2}-\xi+\tau_2)\cdot[g(-nT-T-\xi+\tau_2)-g(-nT-\xi+\tau_2)]\} \end{aligned}\tag{21} E(ek)+=h2cos(2ΔωT){n=g(nT2Tξ+τ1)[g(nTTξ+τ1)g(nTξ+τ1)]n=g(nT2Tξ+τ2)[g(nTTξ+τ2)g(nTξ+τ2)]}(21)可以将符号定时误差定义为
d = ξ − τ 1 + τ 2 2 (22) d=\xi-\dfrac{\tau_1+\tau_2}{2}\tag{22} d=ξ2τ1+τ2(22)显然,利用升余弦的轴对称特性, E ( e k ) E(e_k) E(ek)是关于 d d d 的奇函数。因此,可以认为,Gardner算法是适合用在混合信号上的,当以上假定全满足时,算法将收敛于 ( τ 1 + τ 2 ) / 2 (\tau_1+\tau_2)/2 (τ1+τ2)/2,即源信号最佳插值点的中点。显然,这些假设并不能全满足,当条件未完全满足时,例如当 h 1 ≠ h 2 , g 1 ( t ) ≠ g 2 ( t ) h_1\neq h_2,g_1(t)\neq g_2(t) h1=h2,g1(t)=g2(t) 同时满足或满足其中一个时,仍可以期望Gardner算法收敛到源信号两个最佳内插时刻之间的某一点。

通过Gardner算法后,时延 τ k ( 1 ) \tau_k^{(1)} τk(1) τ k ( 2 ) \tau_k^{(2)} τk(2) 将落于 [ − T / 4 , T / 4 ) [-T/4,T/4) [T/4,T/4) 且符号相反。为了满足最佳性能条件,在采样的时候可以延迟 T / 2 T/2 T/2,然后可以使用区域 [ T / 4 , 3 T / 4 ) [T/4,3T/4) [T/4,3T/4) 的中点 T / 2 T/2 T/2 来初始化等效信道滤波器的脉冲响应。

3.仿真结果

对于两路 QPSK 信号,采用升余弦成型,滚降系数为 0.33,两路幅度为 1,频偏设置为 ± 1 100 T \pm \frac{1}{100}T ±1001T,可以得到结论,PSP 算法非常接近信道已知的 Viterbit 算法性能。

在这里插入图片描述

总结

PSP 算法就是 Viterbi + 信道反馈估计,实现了时变信道下最大似然序列检测,在信道截短长度足够长时,其性能逼近最大似然解,但其复杂度随着信号阶数和信道截短长度爆炸上升。

参考文献

[1]Tu S , Hui Z , Na G . Single-channel blind separation of Two QPSK signals using per-survivor processing[C]// IEEE Asia Pacific Conference on Circuits & Systems. IEEE, 2009.
[2]熊涛. 同频混合信号单通道盲分离关键技术研究[D].信息工程大学,2015.

评论 24
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值