如何软解码DQPSK?


9

通过采用符号和前一个符号的星座位置的点积,我成功地对D-BPSK进行了软解码。如果结果> = 1,则符号相位保持不变,并且该位为零。如果结果<= -1,则相位已偏移,结果为1。在-1和1之间,结果是软0或软1。

我不知道如何使用D-QPSK进行相同的操作。我可以只使用阶段,但这会丢掉很多可以帮助软解码器的信息。

本文解释了如何做到这一点,并给出了公式(10):

b1=Re{snsn1},b2=Im{snsn1}

但是我不明白这种表示法- *浮动在上面意味着什么?我尝试仅将复数相乘并取实部和虚部,但这没有用。

由于星座可以旋转,因此如何将两个轴分开?


您可以添加用于“符号和前一个符号的星座图的点产生”的数学运算吗?
user2718 2013年

当然是:last_symbol.real cur_symbol.real + last_symbol.imag cur_symbol.imag
Dan Sandberg

遗憾的是,数据位b1不能使用上面给出的公式(10)来估计 b 2。在DQPSK,一个 ř Ë { 小号ñ 小号* ñ - 1 }中号 { 小号ñ 小号* ñ - 1 }是在幅度大,而另一个是在小幅度。其中一个有大幅度告诉你是否位会在数据制定是一个 { 00 11 }b2 Re{snsn1}Im{snsn1}{00,11}的一个或。大幅度的符号告诉您两种选择之一是正确的。就是说,大幅度告诉您哪一对双比特,而符号告诉您这两个双比特中的哪一个。{01,10}
Dilip Sarwate

@DilipSarwate,我得到了上面的公式,但是我不得不以某种看似任意的方式对数据进行预编码,以获得正确的结果。我对其进行预编码的方式可能等同于也可能不等同于:shf.de/communication/support/application_notes/getfile/230/269如果仅使用较大的幅度,则最终不会得到适合于软解码的信息-因为00和11是相反的(而不是相邻的代码),所以在两者之间进行软测量是没有帮助的。也许我错过了什么?我应该就DQPSK预编码器提出一个新问题吗?
丹·桑德伯格

Answers:


5

解调器中的两个连续符号是Z1=(X1,Y1)Z2=(X2,Y2) ,其中X是接收器的I分支的输出,Y是接收器Q分支的输出。该 硬判决 DBPSK决定设备会认为该问题:

是新的符号Z2靠近旧符号Z1或到 Z1旧标志的?

因此比较

(X2X1)2+(Y2Y1)2(X2+X1)2+(Y2+Y1)2

这可以简化为在符号比较Z1,Z2=X1X2+Y1Y2。请注意,这本质上是在询问

两个向量 Z1Z2 是指向大致相同的方向(在这种情况下,内积或点积为正)还是指向大致相反的方向(在这种情况下,点积为负)?

第三种观点认为Z1Z2复数,并要求

Re(Z1Z2)=X1X2+Y1Y2正或负?

软判决判决装置只是通过对点产品的软判决解码器,它可以选择量化点是在大小为艰难的决定非常大,继续胡扯就休息了产品的精确值。这就是OP的问题中所述的决策规则,即在大小上超过1情况。

在DQPSK中,编码使用以下两种约定之一:

  • 信号相位被延迟0,π/2,π,3π/2,根据作为将要发送的双位是00,01,11,10

  • 信号相位被提前0,π/2,π,3π/2,根据作为将要发送的双位是00,01,11,10

请注意,DQPSK信号不是在正交相位载波上调制的两个DBPSK信号之和,而是I和Q位 共同影响净载波相位。

为了解调DQPSK信号,决策设备需要询问

四个符号Z 1中的哪个Z1,jZ1=(Y1,X1),Z1,jZ1=(Y1,X1)Z2最接近?

因此,除了比较

(X2X1)2+(Y2Y1)2(X2+X1)2+(Y2+Y1)2

有必要比较

(X2+Y1)2+(Y2X1)2(X2Y1)2+(Y2+X1)2

Re Z 1 Z 2外,它还考虑了Im(Z1Z2),并根据哪个量值具有最大量级和最大量级的符号进行决策。软判决解码器如何使用判决统计Z 1 Z ∗的详细信息Re(Z1Z2)Z1Z2=(Re(Z1Z2),Im(Z1Z2)) 将决定如何进一步按摩这些数字。


感谢您非常复杂的答案Dilip。是一个错字?它应该是ž 1Z ^ 2?并执行符号平均点积?Z1,Z1Z1,Z2A,B
丹·桑德伯格

哈,我的意思是非常彻底的答案!:)
丹·桑德伯格

是的,这是一个错字,我已经纠正了。符号通常用于表示内积,其中一般的点积是一种特殊情况。A,B
Dilip Sarwate

如果我只看哪个量值最大,那似乎是我丢掉了信息。例如,虚部确定旋转是0度还是180度。但是,这两者之间的软测量没有意义,因为它们不是相邻的旋转(如0和90)。任何想法如何获得更有用的软解码?该论文似乎具有误导性,因为它声称第一位是实数部分,第二位是虚数部分。
丹·桑德伯格

3

星号是指复共轭。差分调制软解码的一种典型方法是延迟,共轭,乘法技术:

Si=DiDi1

其中d Di是两个连续的差分编码符号,而 S i是差分解码结果。这个通用公式适用于DBPSK或DQPSK(因为BPSK信号是真实的,所以共轭只是消失了)。结果信号流 S i与输入位于同一星座,因此您可以使用与常规BPSK或QPSK相同的规则来做出艰难的决定。Di1SiSi


谢谢杰森。在发布之前,我确实尝试过乘以复共轭,但是现在我不知道如何解释结果。由于我不知道星座的旋转,如何获得像我在DBPSK问题中提到的那样的映射?
丹·桑德伯格

我查看了您的建议的结果,似乎虚部映射为0度或180度旋转,而实部映射为90度或270度旋转。当数据是干净的(无噪声)时,一个部分(实部或虚部)为0,而另一部分为-1或1。当数据不干净且映射不是这样时,如何将其软解码为位理想?
丹·桑德伯格

Si=DiDi1

@DilipSarwate:我的答案可能会更详细,但是如果您的差分编码器具有产生输出符号的功能,该输出符号的相位是其前两个输入的相位之和,则解码器的类似运算为从而形成相继接收的差分编码符号的相位差。我可以更好地解释这一点,但是由于您的答案更加详细,因此我没有机会(也可能没有机会)重新回答。
詹森·R

Re(Si)Im(Si)Re(Di)Im(Di)
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.