软解调-软判决

软解调-软判决

省流

  • 简单来说,软判决是对应每一位比特来说的。每一位比特的对数似然比(LLR)就是软判决值。通过LLR值与0比较,得到对应比特位是bit 0还是bit 1。
  • 每一位比特LLR的计算可以通过一系列计算简化为,星座图上欧式距离的差

本文是针对MIMO-OFDM无线通信技术及MATLAB实现的第11.7节中的内容解读。
如有不对之处,烦请各位指出。

什么是对数似然比(LLR)?


  • 首先是,通俗来说,似然(likelihood):当我们在一个条件下,发生一种情况的概率有多大,也就是可能性。
    那么似然比就是两个概率之比,对数似然比也自然就是去一个自然对数了。
    L ( b i ) = ln ⁡ ( P ( b i = 1 ∣ r ) P ( b i = 0 ∣ r ) ) (1) L\left(b_i\right)=\ln \left(\frac{P\left(b_i=1 \mid r\right)}{P\left(b_i=0 \mid r\right)}\right) \tag{1} L(bi)=ln(P(bi=0r)P(bi=1r))(1)
  • 公式(1)中,我们假设当接收信号为 r 时,发送信号的这一位是0还是1。如果 L ( b i ) > 0 L\left(b_i\right)>0 L(bi)>0则发射为1,如果 L ( b i ) < 0 L\left(b_i\right)<0 L(bi)<0则发射为0。

软解调是干嘛的?

  1. 对于一个SISO系统
    x x x 为发射信号(已经调制), x ~ \tilde{x} x~为经过信道均衡后的信号。
    x ~ = y h = x + z h = x + z ~ (2) \tilde{x}=\frac{y}{h}=x+\frac{z}{h}=x+\tilde{z} \tag{2} x~=hy=x+hz=x+z~(2)
    z ~ \tilde{z} z~为高斯噪声。

本文中假设 x x x是利用16-QAM进行调制的,**那么我们现在要做的就是从16-QAM中找到与 x ~ \tilde{x} x~最近的星座点,以此来实现解调。

  1. 16QAM星座图如下:

怎么实现软解调?

  1. 假设 S 1 + = − 3 + 3 j , − 1 + 3 j , 1 + 3 j , 3 + 3 j , − 3 + j , − 1 + j , 1 + j , 3 + j S_1^+={-3 + 3j,-1+3j,1+3j,3+3j,-3+j,-1+j,1+j,3+j} S1+=3+3j,1+3j,1+3j,3+3j,3+j,1+j,1+j,3+j表示第一位为0的符号集。 S 1 − = − 3 − 3 j , − 1 − 3 j , 1 − 3 j , 3 − 3 j , − 3 − j , − 1 − j , 1 − j , 3 − j S_1^-={-3 -3j,-1-3j,1-3j,3-3j,-3-j,-1-j,1-j,3-j} S1=33j,13j,13j,33j,3j,1j,1j,3j表示第一位为1的符号集。
  2. 计算每个比特位的LLR,假设每个符号出现概率相等,经过一系列化简推导(后续更新)可以得到LLR表示为两个欧氏距离的差值。
    LLR ⁡ ( b 1 ) ≈ ∣ x ~ − x 1 , o p t − ∣ 2 − ∣ x ~ − x 1 , o p t + ∣ 2 (3) \operatorname{LLR}\left(b_1\right) \approx\left|\tilde{x}-x_{1, \mathrm{opt}}^{-}\right|^2-\left|\tilde{x}-x_{1, \mathrm{opt}}^{+}\right|^2 \tag{3} LLR(b1) x~x1,opt 2 x~x1,opt+ 2(3)
    x ~ \tilde{x} x~表示经过信道均衡后的信号(上文中有), x 1 , o p t − x_{1, \mathrm{opt}}^{-} x1,opt表示与 x ~ \tilde{x} x~欧式距离最近的 S 1 − S_1^- S1中的符号。 x 1 , o p t + x_{1, \mathrm{opt}}^{+} x1,opt+表示与 x ~ \tilde{x} x~欧式距离最近的 S 1 + S_1^+ S1+中的符号。
    下图给出了计算16QAM星座每一位LLR的示意图。(后面的公式实际上就是在计算式(3))
    ee
    LLR ⁡ ( b 1 ) = { ( x ~ I − 3 ) 2 − ( x ~ I − ( − 1 ) ) 2 = − 8 x ~ I + 8 , 2 ≤ x ~ I ( x ~ I − 1 ) 2 − ( x ~ I − ( − 1 ) ) 2 = − 4 x ~ I , 0 ≤ x ~ I < 2 ( x ~ I − 1 ) 2 − ( x ~ I − ( − 1 ) ) 2 = − 4 x ~ I , − 2 ≤ x ~ I < 0 ( x ~ I − 1 ) 2 − ( x ~ I − ( − 3 ) ) 2 = − 8 x ~ I − 8 , x ~ I < − 2 LLR ⁡ ( b 2 ) = { ( x ~ I − 3 ) 2 − ( x ~ I − 1 ) 2 = − 4 x ~ I + 8 , 2 ≤ x ~ I ( x ~ I − 3 ) 2 − ( x ~ I − 1 ) 2 = − 4 x ~ I + 8 , 0 ≤ x ~ I < 2 ( x ~ I − ( − 3 ) ) 2 − ( x ~ I − ( − 1 ) ) 2 = 4 x ~ I + 8 , − 2 ≤ x ~ I < 0 ( x ~ I − ( − 3 ) ) 2 − ( x ~ I − ( − 1 ) ) 2 = 4 x ~ I + 8 , x ~ I < − 2 LLR ⁡ ( b 3 ) = { ( x ~ R − ( − 1 ) ) 2 − ( x ~ R − 3 ) 2 = 8 x ~ R − 8 , 2 ≤ x ~ R ( x ~ R − ( − 1 ) ) 2 − ( x ~ R − 1 ) 2 = 4 x ~ R , 0 ≤ x ~ R < 2 ( x ~ R − ( − 1 ) ) 2 − ( x ~ R − 1 ) 2 = 4 x ~ R , − 2 ≤ x ~ R < 0 ( x ~ R − ( − 3 ) ) 2 − ( x ~ R − 1 ) 2 = 8 x ~ R + 8 , x ~ R < − 2 LLR ⁡ ( b 4 ) = { ( x ~ R − 3 ) 2 − ( x ~ R − 1 ) 2 = − 4 x ~ R + 8 , 2 ≤ x ~ R ( x ~ R − 3 ) 2 − ( x ~ R − 1 ) 2 = − 4 x ~ R + 8 , 0 ≤ x ~ R < 2 ( x ~ R − ( − 3 ) ) 2 − ( x ~ R − ( − 1 ) ) 2 = 4 x ~ R + 8 , − 2 ≤ x ~ R < 0 ( x ~ R − ( − 3 ) ) 2 − ( x ~ R − ( − 1 ) ) 2 = 4 x ~ R + 8 , x ~ R < − 2 \begin{align*} & \operatorname{LLR}(b1) = \begin{cases} \left(\tilde{x}_{\mathrm{I}} - 3\right)^2 - \left(\tilde{x}_{\mathrm{I}} - (-1)\right)^2 = -8 \tilde{x}_{\mathrm{I}} + 8, & 2 \leq \tilde{x}_{\mathrm{I}} \\ \left(\tilde{x}_{\mathrm{I}} - 1\right)^2 - \left(\tilde{x}_{\mathrm{I}} - (-1)\right)^2 = -4 \tilde{x}_{\mathrm{I}}, & 0 \leq \tilde{x}_{\mathrm{I}} < 2 \\ \left(\tilde{x}_{\mathrm{I}} - 1\right)^2 - \left(\tilde{x}_{\mathrm{I}} - (-1)\right)^2 = -4 \tilde{x}_{\mathrm{I}}, & -2 \leq \tilde{x}_{\mathrm{I}} < 0 \\ \left(\tilde{x}_{\mathrm{I}} - 1\right)^2 - \left(\tilde{x}_{\mathrm{I}} - (-3)\right)^2 = -8 \tilde{x}_{\mathrm{I}} - 8, & \tilde{x}_{\mathrm{I}} < -2 \end{cases} \\ & \operatorname{LLR}(b2) = \begin{cases} \left(\tilde{x}_{\mathrm{I}} - 3\right)^2 - \left(\tilde{x}_{\mathrm{I}} - 1\right)^2 = -4 \tilde{x}_{\mathrm{I}} + 8, & 2 \leq \tilde{x}_{\mathrm{I}} \\ \left(\tilde{x}_{\mathrm{I}} - 3\right)^2 - \left(\tilde{x}_{\mathrm{I}} - 1\right)^2 = -4 \tilde{x}_{\mathrm{I}} + 8, & 0 \leq \tilde{x}_{\mathrm{I}} < 2 \\ \left(\tilde{x}_{\mathrm{I}} - (-3)\right)^2 - \left(\tilde{x}_{\mathrm{I}} - (-1)\right)^2 = 4 \tilde{x}_{\mathrm{I}} + 8, & -2 \leq \tilde{x}_{\mathrm{I}} < 0 \\ \left(\tilde{x}_{\mathrm{I}} - (-3)\right)^2 - \left(\tilde{x}_{\mathrm{I}} - (-1)\right)^2 = 4 \tilde{x}_{\mathrm{I}} + 8, & \tilde{x}_{\mathrm{I}} < -2 \end{cases} \\ & \operatorname{LLR}(b3) = \begin{cases} \left(\tilde{x}_{\mathrm{R}} - (-1)\right)^2 - \left(\tilde{x}_{\mathrm{R}} - 3\right)^2 = 8 \tilde{x}_{\mathrm{R}} - 8, & 2 \leq \tilde{x}_{\mathrm{R}} \\ \left(\tilde{x}_{\mathrm{R}} - (-1)\right)^2 - \left(\tilde{x}_{\mathrm{R}} - 1\right)^2 = 4 \tilde{x}_{\mathrm{R}}, & 0 \leq \tilde{x}_{\mathrm{R}} < 2 \\ \left(\tilde{x}_{\mathrm{R}} - (-1)\right)^2 - \left(\tilde{x}_{\mathrm{R}} - 1\right)^2 = 4 \tilde{x}_{\mathrm{R}}, & -2 \leq \tilde{x}_{\mathrm{R}} < 0 \\ \left(\tilde{x}_{\mathrm{R}} - (-3)\right)^2 - \left(\tilde{x}_{\mathrm{R}} - 1\right)^2 = 8 \tilde{x}_{\mathrm{R}} + 8, & \tilde{x}_{\mathrm{R}} < -2 \end{cases} \\ & \operatorname{LLR}(b4) = \begin{cases} \left(\tilde{x}_{\mathrm{R}} - 3\right)^2 - \left(\tilde{x}_{\mathrm{R}} - 1\right)^2 = -4 \tilde{x}_{\mathrm{R}} + 8, & 2 \leq \tilde{x}_{\mathrm{R}} \\ \left(\tilde{x}_{\mathrm{R}} - 3\right)^2 - \left(\tilde{x}_{\mathrm{R}} - 1\right)^2 = -4 \tilde{x}_{\mathrm{R}} + 8, & 0 \leq \tilde{x}_{\mathrm{R}} < 2 \\ \left(\tilde{x}_{\mathrm{R}} - (-3)\right)^2 - \left(\tilde{x}_{\mathrm{R}} - (-1)\right)^2 = 4 \tilde{x}_{\mathrm{R}} + 8, & -2 \leq \tilde{x}_{\mathrm{R}} < 0 \\ \left(\tilde{x}_{\mathrm{R}} - (-3)\right)^2 - \left(\tilde{x}_{\mathrm{R}} - (-1)\right)^2 = 4 \tilde{x}_{\mathrm{R}} + 8, & \tilde{x}_{\mathrm{R}} < -2 \end{cases} \end{align*} LLR(b1)= (x~I3)2(x~I(1))2=8x~I+8,(x~I1)2(x~I(1))2=4x~I,(x~I1)2(x~I(1))2=4x~I,(x~I1)2(x~I(3))2=8x~I8,2x~I0x~I<22x~I<0x~I<2LLR(b2)= (x~I3)2(x~I1)2=4x~I+8,(x~I3)2(x~I1)2=4x~I+8,(x~I(3))2(x~I(1))2=4x~I+8,(x~I(3))2(x~I(1))2=4x~I+8,2x~I0x~I<22x~I<0x~I<2LLR(b3)= (x~R(1))2(x~R3)2=8x~R8,(x~R(1))2(x~R1)2=4x~R,(x~R(1))2(x~R1)2=4x~R,(x~R(3))2(x~R1)2=8x~R+8,2x~R0x~R<22x~R<0x~R<2LLR(b4)= (x~R3)2(x~R1)2=4x~R+8,(x~R3)2(x~R1)2=4x~R+8,(x~R(3))2(x~R(1))2=4x~R+8,(x~R(3))2(x~R(1))2=4x~R+8,2x~R0x~R<22x~R<0x~R<2
  3. 通过第二步的计算,下图给出了16QAM星座图四个比特LLR的示意图。
    在这里插入图片描述
  4. 后续软判决输出比特**(还未弄清楚)**,可以参考文章1中的matlab代码。

软解调为什么可以实现性能增益?

  • 软判决是一个系统的概念,不能从软判决模块的输出直接获得性能的比较,而是要经过信道解码后的输出,才能显示出性能的差异性,所以需要放在一个较完整的系统中予以评价其性能的优劣。
  • 软判决所携带的比特似然比信息是给后级信道解码所利用的,要是没有后续的模块,则软判决不会带来任何性能增益。差异性体现在BER性能以及BLER性能,这是由于软判决的准确性不是体现在其符号的正负,而是体现在其幅度是否能真实反映接收信号为比特1或是比特0的概率大小,进而被信道译码所利用。

硬解调是什么?

我感觉解释的很好的是,最近写的代码里就是这么做的:
硬解调其实是把解调+硬判决的工作一起做了。简单的通过设置阈值来判断输出,以二进制来说的话,一般大于0的判1,小于0的判0。
具体参考文章5。

参考文献

1、https://www.zhihu.com/question/22019466/answer/1967818641
2、MIMO-OFDM无线通信技术及MATLAB实现
3、https://zhuanlan.zhihu.com/p/615787267
4、https://blog.csdn.net/pgone1/article/details/124469107
5、https://blog.csdn.net/ddatalent/article/details/129692524

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

精通matlab

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值