Skip to content

Turbo 码

Turbo code

由交织器连接两个递归系统卷积分量码而成的并行级联线性码。

条目类型
模型

形式陈述

经典 Turbo 码是 parallel concatenated convolutional code。取长度 K 的信息序列 u1K,第一台递归系统卷积编码器直接接收 u1K,第二台接收经置换 π(u1K);发送端保留一份系统序列,并发送两台编码器产生的 parity stream。若不 puncture 且每个分量编码器每个输入 bit 产生一个 parity bit,忽略尾终止开销时码率为 1/3

分量编码器必须是递归系统的:系统输出就是当前输入,parity 由有限状态递推产生;递归反馈使低重量信息序列通常扩散成较长 parity 序列。交织器 π[K] 上的置换,同一信息图样在两台分量编码器看来具有不同的时间位置。固定初始状态、终止规则和交织器后,整体映射在 F2 上线性,因而得到一个有限长度线性码;若不说明 termination 或 tail-biting,卷积 trellis 尚未唯一确定一个块码。

常用 RSC 分量以有理生成函数表示,例如

G(D)=[1,g1(D)g0(D)],

其中反馈多项式 g0(0)=1,状态递推实现形式除法。两个 trellis 只通过共享的信息 bit 与交织关系相连,不把第一台的 parity 输入第二台;这一区别将 Turbo 码与串行级联码分开。

直觉

单个短约束长度卷积码容易出现局部低重量事件。Turbo 构造让同一信息序列同时接受两种次序下的约束:在第一台 trellis 中相邻的非零 bit,经交织后通常被拉远;能让两台 parity 都很轻的信息图样因而少得多。接收端则在两个 trellis 之间来回传递“另一台从不同次序中学到的新证据”,形成名称中的涡轮式反馈。

交织器不是装饰性的随机打乱。它决定整体生成矩阵、码字重量谱和最小距离随 K 的增长方式。长交织器通常改善 waterfall 区域的统计独立近似,却也增加时延;若置换保留太多短间隔结构,两台分量码可能同时遭遇低重量输入,形成明显 error floor。

例子与边界

用 accumulator 作为最小递归系统分量:

si=si1ui,pi=si,s0=0.

输入 u=(1,0,1,1) 时,第一台状态与 parity 序列为

p(1)=(1,1,0,1).

若交织顺序为 (3,1,4,2),第二台看到 (1,1,1,0),所以

p(2)=(1,0,1,1).

不计尾 bit 的未 puncture 码字可按时间打包为系统串 1011、第一 parity 1101、第二 parity 1011,共十二 bit,名义码率 4/12=1/3。这个 accumulator 例子让递归与交织都可逐位复算,但不代表标准中采用的具体反馈多项式。

若 puncture 掉部分 parity,码率可以提高到 1/2 等值,同时低重量码字和可用软信息也会变化。把 trellis 强制回到零状态需要发送 tail bits,实际码率低于名义值;tail-biting 避免固定尾部,却让初始状态求解与译码边界改变。Turbo 码接近 Shannon 极限的经典数字来自特定 AWGN、块长、迭代数和误码口径,不能脱离这些条件写成普遍定理。

推论与应用

Turbo 码的编码复杂度随 K 线性增长:两台有限状态机各扫描一次序列,交织只做置换。其主要代价在软输入软输出迭代译码;每轮对两个 trellis 做前向—后向递推,复杂度仍为 O(K),但乘以迭代轮数和状态数。

Turbo 码曾广泛用于深空链路与 3G/4G 数据通道,并确立了“稀疏全局图加局部精确分量译码”的现代设计范式。有限长度下常见 waterfall 与 error floor 两区:前者受迭代阈值支配,后者更受距离谱、interleaver 与 puncturing 支配,优化其中一者未必同步改善另一者。

参考资料
  • Claude Berrou, Alain Glavieux, and Punya Thitimajshima, “Near Shannon Limit Error-Correcting Coding and Decoding: Turbo-Codes. 1,” Proceedings of ICC ’93, 1993, 1064–1070.
  • Claude Berrou and Alain Glavieux, “Near Optimum Error Correcting Coding and Decoding: Turbo-Codes,” IEEE Transactions on Communications 44(10), 1996, 1261–1271.
  • Sergio Benedetto and Guido Montorsi, “Unveiling Turbo Codes: Some Results on Parallel Concatenated Coding Schemes,” IEEE Transactions on Information Theory 42(2), 1996, 409–428.
关系图谱7 个相邻概念 · 1 类关系

拖动节点调整位置。

显示关系

显示:依赖

  1. 前置三跳
  2. 前置二跳
  3. 前置一跳
  4. 当前条目
  5. 后续一跳
  6. 后续二跳
  7. 后续三跳
文字版关系按与当前条目的最短距离分组