Turbo码编码举例计算

Turbo码的结构与编码

turbo
编码器包含两个并联的递归系统卷积码编码器和一个交织器
两个编码器生成的校验比特在删除器中按一定规则进行删除,最后和信息比特复用,得到编码序列

Turbo编码举例

CDMA2000采用的成员编码器是八状态RSC编码器:
在这里插入图片描述
在一开始计算时,由于递归的原因,输出信息进入输入,计算搞得一塌糊涂,以成员编码器1为例,介绍一下我现在的想法:
在这里插入图片描述

假设输入序列:
  [ 1 , 0 , 1 , 0 , 0 , 1 , 0 , 0 ]   \ [1,0,1,0,0,1,0,0]\,  [10100100]   x ( t )   \ x(t) \,  x(t)即为输入序列,所以
  x ( t ) = [ 1 , 0 , 1 , 0 , 0 , 1 , 0 , 0 ]   \ x(t)=[1,0,1,0,0,1,0,0]\,  x(t)=[10100100]对于   y 0 ( t )   \ y_0(t) \,  y0(t)
编码器可简化为如图形式
在这里插入图片描述

  • 橙线为反馈线路,输入信号需要先于后两位移位寄存器中的数据摩尔加后,才正常输入。
  • 绿线为正常卷积码形式,可使用卷积码的方式计算,但是由于反馈的存在,理论推导会比较麻烦。
  1. 初始状态下,移位寄存器内为   0 、 0 、 0   \ 0、0、0 \,  000
  2. 输入   1   \ 1\,  1,此时进行计算时,使用的均为现状态,(或认为是上一状态)
    通过橙线,   1   \ 1\,  1   [ ∗ 、 0 、 0 ]   \ [*、0、0]\,  [00]摩尔加,得到   1   \ 1\,  1,则编码器下一状态为   [ 1 、 0 、 0 ]   \ [1、0、0]\,  [100]
      1   \ 1\,  1继续通过绿线摩尔加,使用原状态,即   1   \ 1\,  1   [ 0 、 ∗ 、 0 ]   \ [0、*、0]\,  [00]摩尔加,则输出为1.
  3. 继续输入   0   \ 0\,  0,此时计算,使用的状态为   [ 1 、 0 、 0 ]   \ [1、0、0]\,  [100]
    通过橙线,   0   \ 0\,  0   [ ∗ 、 0 、 0 ]   \ [*、0、0]\,  [00]摩尔加,得到   0   \ 0\,  0,则编码器下一状态为   [ 0 、 1 、 0 ]   \ [0、1、0]\,  [010]
      0   \ 0\,  0继续通过绿线摩尔加,使用原状态,即   0   \ 0\,  0   [ 1 、 ∗ 、 0 ]   \ [1、*、0]\,  [10]摩尔加,则输出为1.
  4. 继续输入   1   \ 1\,  1,此时计算,使用的状态为   [ 0 、 1 、 0 ]   \ [0、1、0]\,  [010]
    通过橙线,   1   \ 1\,  1   [ ∗ 、 1 、 0 ]   \ [*、1、0]\,  [10]摩尔加,得到   0   \ 0\,  0,则编码器下一状态为   [ 0 、 0 、 1 ]   \ [0、0、1]\,  [001]

反馈的体现

由于反馈,此时下一状态不是卷积码的[1、0、1]

  0   \ 0\,  0继续通过绿线摩尔加,使用原状态,即   0   \ 0\,  0   [ 0 、 ∗ 、 0 ]   \ [0、*、0]\,  [00]摩尔加,则输出为0.
5. 按照条件,继续运算,得到   y 0 ( t ) = [ 1 、 1 、 0 、 0 、 1 、 0 、 0 、 1 ]   \ y_0(t)=[1、1、0、0、1、0、0、1]\,  y0(t)=[11001001]

删余

假设删余码如此工作:

码率1/2
  x ( t )   \ x(t)\,  x(t)00
  y 0 ( t )   \ y_0(t)\,  y0(t)10
  y 1 ( t )   \ y_1(t)\,  y1(t)00

  0   \ 0\,  0表示需要删除,   1   \ 1\,  1保留
  y 1 ( t )   \ y_1(t)\,  y1(t)的输出我们可以不用计算,最终我们只保留   y 0 ( t )   \ y_0(t)\,  y0(t)的每   2 b i t   \ 2bit\,  2bit首位,

那最终输出为   [ 1 、 ∗ 、 0 、 ∗ 、 1 、 ∗ 、 0 ]   \ [1、*、0、*、1、*、0]\,  [1010]

复用

成员编码器2进行同样的运算,
他的删余方式为:

码率1/2
  x ′ ( t )   \ x'(t)\,  x(t)00
  y 0 ′ ( t )   \ y'_0(t)\,  y0(t)01
  y 1 ′ ( t )   \ y'_1(t)\,  y1(t)00

成员编码器2的输入,是经过交织器形成的,这里认为输入是:
  [ 1 、 1 、 0 、 0 、 0 、 0 、 1 、 0 ]   \ [1、1、0、0、0、0、1、0]\,  [11000010]
最终输出为   [ ∗ 、 0 、 ∗ 、 0 、 ∗ 、 0 、 ∗ 、 0 ]   \ [*、0、*、0、*、0、*、0]\,  [0000]


在这里插入图片描述

复用后结果为
在这里插入图片描述

  • 5
    点赞
  • 50
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值