<!-- title: 信道编码原理：LDPC与Polar码图解 -->

# 从“传纸条”到香农极限：LDPC与Polar码原理图解

手机刷视频不卡、打电话不撕边，靠的不只是信号强，更靠一层看不见的“数学防护服”——**信道编码**。5G的数据通道穿着LDPC码，控制通道穿着Polar码。这两件“防护服”为什么长这样？为什么5G要同时选两个码？这篇文章从直觉讲到公式，把这件事讲透。

---

## 一、先想清楚：为什么信息传出去就一定会错？

想象你在嘈杂的教室里给同桌传纸条：“周六去打球”。教室里人人都在说话（噪声），纸条传到同桌手里可能变成了“周六去大球”或者“周桅去打球”。**只要信道有噪声，接收方收到的就不再是发送方写的原文。**

数字通信里也一样：基站发出的比特"1"，经过无线信道，可能因为衰落、干扰、热噪声，被手机解调成"0"。物理层能做的是尽量把信号解调准（调制解调是上一讲的主题），但永远做不到100%准。剩下的错误，就要靠信道编码来兜底。

整个数字通信系统的分工可以用一张图看清楚：

```text
flowchart LR
    A[信源<br>视频/语音数据] --> B[信源编码<br>压缩去冗余]
    B --> C[信道编码<br>有规律地加冗余]
    C --> D[调制<br>比特搬上电磁波]
    D --> E((无线信道<br>必然引入噪声))
    E --> F[解调<br>软信息:不只是0和1<br>还有"多确定"]
    F --> G[信道译码<br>利用冗余纠错]
    G --> H[信源译码<br>还原数据]

    style C fill:#ffe0b2,stroke:#ff9800,stroke-width:3px
    style G fill:#ffe0b2,stroke:#ff9800,stroke-width:3px
    style E fill:#ffcdd2,stroke:#f44336
```

注意中间那对橙色的盒子：**信源编码负责“删冗余”，信道编码负责“加冗余”**——听起来矛盾，其实加的是“有结构的、能用来纠错的冗余”，删的是“没结构的、浪费的冗余”。这一删一加，就是通信系统设计的精髓。

信道编码纠错的核心思想朴素得惊人：**发得多，才传得准。**

最笨的办法是重复码：每个比特发3遍，"1"变成"111"，接收端收到"101"，少数服从多数，判为"1"。它能纠正1个错，但代价是速率只剩1/3——太浪费。好的信道编码，就是要在“加最少的冗余”和“纠最多的错”之间，逼近那个理论上的完美平衡点。

---

## 二、理论天花板：香农极限

1948年，香农在创立信息论的论文里给出了一个反直觉的结论：**再吵的信道，只要速率不超过某个上限，就一定存在一种编码方式能让误码率任意低。** 这个上限就是信道容量：

$$C = B \log_2 \left( 1 + \frac{S}{N} \right)$$

其中 $B$ 是带宽，$S/N$ 是信噪比。这个公式有两层含义，工程师必须都记住：

- **天花板是存在的**：速率压到 $C$ 以下，理论上可以做到零误码；超过 $C$，神仙编码也救不了，错误率必然飙升。
- **香农只证明了“好码存在”，没告诉你怎么造**。他把“怎么造”这个难题留给了之后70年的工程师。

用个类比：香农告诉你“这座山一定有登顶的路”，但没给地图。此后数十年的编码研究，就是一代代人拿着不同的路线图爬山——卷积码爬到了半山腰，Turbo码1993年首次几乎登顶（当年还差点被学术界轰下台，因为作者来自电路方向而非编码理论方向，且拿不出优雅的理论解释），而LDPC其实早在1960年就发明了，却因算力不够被雪藏了三十多年。

---

## 三、LDPC：让“检查员”们在一张图上聊天

### 3.1 核心构造：稀疏的奇偶校验

LDPC（Low-Density Parity Check，低密度奇偶校验码）由MIT博士生Robert Gallager在1960年的博士论文中提出。它的想法可以拆成两句话：

1. **把信息比特分组做奇偶校验**：比如第1、2、4位加一个校验约束“这三位之和必须是偶数”，再来一组第2、3、5位……每个校验只管住一小撮比特。
2. **“低密度”是灵魂**：校验矩阵 $H$ 里1非常稀疏——每个比特只参与少数几个校验，每个校验只管少数几个比特。一张 $10000 \times 20000$ 的矩阵，每行可能只有6个1。

收到一串比特后，校验方程组是：

$$H \cdot x^T = 0$$

如果算出来不为零（称为“校验子/syndrome”非零），说明出错了，而且从哪些校验方程不满足，还能定位出错的概率分布。

### 3.2 Tanner图：编码的“社交网络”

把校验约束画成一张二部图，就是LDPC的灵魂——**Tanner图**：上面一排是**变量节点**（每个比特一个），下面一排是**校验节点**（每个校验方程一个），连线表示“这个比特参与了这个校验”。

```mermaid
graph TB
    subgraph 变量节点 比特
    V1[x1] --- V2[x2] --- V3[x3] --- V4[x4] --- V5[x5] --- V6[x6]
    end
    subgraph 校验节点 奇偶约束
    C1[c1: x1+x2+x3+x4=0]
    C2[c2: x3+x4+x6=0]
    C3[c3: x1+x4+x5=0]
    end
    V1 --- C1
    V2 --- C1
    V3 --- C1
    V4 --- C1
    V3 --- C2
    V4 --- C2
    V6 --- C2
    V1 --- C3
    V4 --- C3
    V5 --- C3
    style C1 fill:#e3f2fd,stroke:#2196f3
    style C2 fill:#e3f2fd,stroke:#2196f3
    style C3 fill:#e3f2fd,stroke:#2196f3
```

### 3.3 置信传播：一场有纪律的“传谣言”游戏

译码时，接收端拿到的**不是硬邦邦的0/1，而是软信息（LLR，对数似然比）**：

$$LLR(x) = \ln \frac{P(y \mid x=0)}{P(y \mid x=1)}$$

LLR的绝对值越大，表示“这个比特是0还是1”越确定；符号表示判断。译码就在Tanner图上做**消息传递（置信传播）**，每一轮：

1. **比特→校验**：每个变量节点把自己的“belief”（当前对0/1的置信度）告诉所有相连的校验节点——注意，告诉每个校验的那份信息要**排除来自这个校验本身的信息**，防止自我强化。
2. **校验→比特**：每个校验节点检查“我管的这串比特加起来是偶数吗？”综合它们的报告，给每个比特回一句话：“根据其他几个的可靠度，你更可能是0/1，置信度是多少。”
3. **重复迭代**，直到所有校验都满足，或迭代次数用完。

MIT的Forney教授给这个过程起过一个绝妙的类比——**谣言闭路**：如果一张图里环太短，某个比特的“谣言”转两圈就绕回自己，被自己重复相信了，置信度虚高，译码就崩了。LDPC要求“谣言传遍全世界才能绕回你耳边”——即图中环要尽量长，这正是**稀疏+伪随机构码**的设计动机。

一组比特中只要有两位信息可靠，第三个比特的值就能通过校验被“推理”出来——这是迭代译码能层层纠错的直觉来源。

### 3.4 为什么LDPC曾被打入冷宫30年？

因为1960年的计算机根本跑不动迭代译码。Gallager自己都说：设计这个码的初衷恰恰是想找个“实际可译”的好码，但当时的算力撑不住线性复杂度的迭代计算。直到1990年代，Turbo码的横空出世让学界疯狂研究迭代译码，人们才惊觉：**30年前的LDPC就是同样的思路，而且性能更好**。加上Turbo码专利收费而LDPC专利早已过期，LDPC迅速占领了Wi-Fi、DVB-S2卫星电视、10G以太网、SSD固态硬盘，最后拿下5G数据信道。

---

## 四、Polar码：把一条烂信道“分裂”成一堆极好和极坏的

### 4.1 完全不同的哲学

LDPC是“工程直觉”的产物（画一张好图，剩下的交给迭代），而Polar码是**纯数学构造**的产物。2009年，土耳其Bilkent大学教授Erdal Arıkan（Gallager的学生）发表论文《信道极化》，给出了**第一个被数学证明能达到信道容量**的编码方案。

它的核心思想一句话能说完：**把 $N$ 个相同的物理信道，通过特定的线性变换组合再拆分，变成 $N$ 个质量各异的“虚拟信道”——一半变得近乎完美，一半变得近乎全废。然后把宝贵的信息比特只放在好信道上，坏信道统一填收发双方都约定好的固定比特（冻结比特）。**

### 4.2 信道极化是怎么发生的？

以最直观的信道合并与分裂看最小单元（$N=2$）：

```mermaid
graph TB
    subgraph 合并阶段
    u1[u₁ 信息比特] --> X1[XOR ⊕]
    u2[u₂ 信息比特] --> X1
    X1 -->|x1 = u1⊕u2| CH1[物理信道 W]
    u2 -->|x2 = u2| CH2[物理信道 W]
    end
    CH1 --> Y1[y₁]
    CH2 --> Y2[y₂]
    subgraph 分裂阶段
    D1[虚拟信道 W⁻: 译u₁时<br>只有y₁可看<br>变差了]
    D2[虚拟信道 W⁺: 译u₂时<br>y₁和y₂都能看<br>变好了]
    end
    Y1 --> D1
    Y1 --> D2
    Y2 --> D2
    style D1 fill:#ffcdd2,stroke:#f44336
    style D2 fill:#c8e6c9,stroke:#4caf50
```

关键洞察在分裂阶段：译第1个比特 $u_1$ 时，只能看到 $y_1$，比原始信道还差（记作 $W^-$）；但译第2个比特 $u_2$ 时，接收端已经知道 $u_1$，可以把 $y_1$、$y_2$ 一起利用（记作 $W^+$），比原始信道更好。**一负一正，总容量守恒**：

$$I(W^-) + I(W^+) = 2 \cdot I(W) \quad \text{但} \quad I(W^-) < I(W) < I(W^+)$$

把这个蝶形结构**递归嵌套**（$N=4, 8, 16, \ldots, 2^n$），就是Polar码的完整构造。其生成矩阵是核矩阵 $F$ 的克罗内克幂：

$$F = \begin{pmatrix} 1 & 0 \\ 1 & 1 \end{pmatrix}, \qquad G_N = F^{\otimes n} = \underbrace{F \otimes F \otimes \cdots \otimes F}_{n=\log_2 N}$$

编码就是 $x = u \cdot G_N$，其中向量 $u$ 里好信道位置放信息、坏信道位置放冻结比特。

### 4.3 “极化”这个名字的由来

随着码长翻倍，虚拟信道可靠度的分布像水结冰一样向两端凝聚——这就是**信道极化**。以删除信道（BEC）为例，每递归一层，虚拟信道容量按 $I^2$ 与 $2I - I^2$ 两条曲线分化：

$$\text{递归 } n \text{ 层后: } \frac{I(W^-)\text{类}}{I(W^+)\text{类}} \to \frac{\text{全部塌向 } 0}{\text{全部塌向 } 1} \quad (n \to \infty)$$

**没有一个虚拟信道停留在中间地带**——要么好到几乎不出错，要么坏到几乎纯噪声。只要把信息比特放到那占比为信道容量 $C$ 的好信道集合里，整体速率就无限逼近香农容量。这也是Polar码的一个天然性格：**码长越长，极化越充分，性能越好**；码长太短时，“分化不彻底”，中间有很多不好不坏的信道，效率就低。

### 4.4 译码：逐个击破的“连续删除”

Polar码天然匹配一种叫**SC（Successive Cancellation，连续消除）译码**的方式：按顺序先译 $u_1$，译对后把它“已知”这个事实用于辅助译 $u_2$，再依次传递。这与蝶形结构严丝合缝，复杂度只有 $O(N \log N)$，非常优雅。

但有个现实问题：**SC译码一旦前面译错一个比特，错误会像多米诺一样向后传播**。在工程要求的中短码长下，纯SC性能反而不如成熟的LDPC和Turbo。工程界的补救是**SCL（Successive Cancellation List，列表译码）**：不再一条路走到黑，每步同时保留 $L$ 条候选路径并行推进，最后选总置信度最高的那条；再配合外挂的CRC校验帮着“选路”，短码性能大幅反超。代价是译码器复杂度约变成 $L$ 倍，硬件实现效率不如LDPC的并行迭代架构。

---

## 五、为什么5G要“一网两码”？

2016年11月，3GPP在5G eMBB信道编码的激烈争论后落锤：**数据信道用LDPC，控制信道用Polar**。据Wikipedia收录的3GPP RAN1#87会议记录及多篇综述记载，这是经过多轮提案比拼后的技术+产业综合决策。理解了两种码的性格，你会发现这个搭配几乎是“量体裁衣”：

| 维度 | LDPC | Polar | Turbo（4G遗留） |
|---|---|---|---|
| 数学性质 | 无容量证明，靠图构造逼近 | **唯一有严格容量证明**的设计 | 无证明，工程逼近 |
| 擅长码长 | 长码、大块 | 中短码 | 中短码 |
| 高码率（如3/4、5/6）表现 | 优，无最下距离限制 | 好 | 较弱 |
| 低码率（如1/6、1/3）表现 | 较弱（Turbo/Polar更佳） | 好 | 优 |
| 硬件并行度 | 极高，天然适合Gbps级吞吐 | SCL译码并行度受列表规模限制 | 中 |
| 译码复杂度来源 | 迭代次数×稀疏图 | $O(N\log N)$×列表长度$L$ | 迭代×网格状态数 |
| 误码平台（error floor） | 存在（需设计规避短环） | 无明显平台 | 低码率下有平台 |
| 5G中的角色 | **数据信道**（PDSCH/PUSCH，追求峰值吞吐） | **控制信道**（PDCCH，短块、可靠性至上） | 退网过渡 |

控制信道为什么偏爱Polar？看需求画像：**调度指令（DCI）块长很短（几十比特），但一旦译错，整条调度就指错了人，必须极限可靠**。Polar恰好是短码之王——短码长下仍能精确挑出最可靠的虚拟信道，配合SCL+CRC在短块上误码率压得过任何对手。而且控制信道速率低，SCL译码的复杂度完全付得起。

数据信道为什么非LDPC不可？同样是需求画像：**块长大（几千上万比特）、速率高（Gbps级），译码器必须能大规模并行**。LDPC的稀疏Tanner图允许成百上千个校验节点同时计算，线性复杂度+高并行度 = 高吞吐低功耗；长码下LDPC已把性能打磨到距香农极限零点几dB以内。反过来，Polar在这种场景下SCL译码器的实现效率劣势就暴露了。

再看承载演进的历史脉络，能发现一条清晰的“每代换一次码”规律：

| 代际 | 数据信道编码 | 典型距香农极限差距 | 备注 |
|---|---|---|---|
| 2G GSM | 卷积码 | 约3 dB以上 | 结构简单，算力要求低 |
| 3G WCDMA | Turbo码 | 约1 dB | 1993年发明，首次逼近极限 |
| 4G LTE | Turbo码 | <1 dB | 打磨成熟 |
| 5G NR | LDPC + Polar | 长码约0.2~0.5 dB | 分场景择优 |
| 未来 | 各国6G研究已展开（如PAC码等Polar增强变体） | — | Arıkan本人2019年提出的PAC码在短码上进一步超越 |

一句话总结选择逻辑：**Polar赢在“短码的数学保证”，LDPC赢在“长码的硬件吞吐”——5G两个都要，各管一摊。**

---

## 六、现网实战：这些原理藏在你的日常调试里

### 6.1 BLER目标与MCS选择的幕后

做无线优化的人都盯着BLER（误块率），但很少有人问：**为什么初传BLER目标常设在10%而不是0%？** 这正是信道编码+HARQ的联合设计：10%的初传错误由HARQ重传兜底，换来的是每一步MCS都顶着信道容量跑（码率尽量高），系统频谱效率最大化。换句话说，**“容忍少量初传失败”本身就是逼近香农极限的工程手段**。看到BLER高先别慌，要看的是“初传BLER+重传后残余BLER”的组合。

### 6.2 码率是“ squeezed ”出来的

工程师常在路测软件里看到MCS（调制编码方案），MCS的本质就是一条公式：

$$\text{码率} = \frac{\text{信息比特数 } K}{\text{编码后比特数 } N}$$

信道好→用高码率（少冗余、贴容量上限）；信道差→用低码率（多冗余、保可靠）。5G数据信道LDPC支持码率打孔/重复实现**速率匹配**，同一个码可伸缩到任意码率——这是LDPC被选中时“灵活性”评分高的原因。调试时若发现“信号很好但吞吐上不去”，优先怀疑MCS被压制（如受邻区干扰、CQI上报偏差影响），本质是调度器不敢把码率推高。

### 6.3 控制信道聚合等级：Polar的“冗余旋钮”

调PDCCH问题的人会遇到CCE聚合等级（1/2/4/8/16）：弱场用户用高聚合等级，同一条DCI重复占用更多资源换可靠性。这背后就是Polar码的冻结比特机制——聚合等级越高，等效码率越低，用于信息的虚拟信道越“挑肥拣瘦”。**PDCCH弱场误调度问题，第一步就该查聚合等级分配策略**，而不是上来就查功控。

### 6.4 常见误解与调试陷阱

- **误解一：“信噪比高就不会误码。”** 错。LDPC存在**误码平台（error floor）**现象：SNR再高，误码率下降到某个值后会突然“横住”不再下降，根源是Tanner图中的短环/陷阱集（trapping set）。DVB-S2为此专门外挂了BCH码来“擦尾”。现网若遇到“RSRP很优但CRC偶发错误”，误码平台是值得排查的方向。
- **误解二：“5G用了Polar码，所以Polar码全面优于Turbo。”** 错。Polar只拿下了控制信道；低码率场景下Turbo依然有优势，这是业界公开的对比结论。每种码都有自己的“主场”。
- **误解三：“迭代译码次数越多越好。”** 边际收益递减，且LDPC过度迭代会陷入“谣言闭路”（置信度虚高假收敛）。芯片设计里迭代次数是功耗的关键参数，这也是为什么译码调度算法（如动态调度）一直是学术热点。
- **陷阱：把物理层残余误码当上层协议bug查。** 遇到偶发的应用层卡顿，先看物理层“CRC Fail后HARQ重传也失败”的计数（残余BLER），再去看RLC/PDCP，别把传输层问题浪费在应用层抓包上。

---

## 七、一张图总结：好码的三大核心素养

```text
mindmap
  root((信道编码的目标))
    逼近香农极限
      LDPC: 长码+迭代置信传播
      Polar: 唯一数学证明可达容量
    译码复杂度可接受
      LDPC: 稀疏图+线性复杂度+高并行
      Polar: O(N log N) 但SCL受列表规模限制
    工程灵活性
      LDPC: 速率匹配适配任意码率
      Polar: 冻结比特灵活适配短块
      5G的答案: 数据用LDPC 控制用Polar
```

---

## 常见问题

**Q: LDPC和Polar码的根本区别是什么？**
A: 构造哲学完全不同。LDPC是“图论+工程直觉”路线——设计一张环尽量长的稀疏Tanner图，靠迭代消息传递逼近极限，没有容量证明但硬件实现极其高效；Polar是“纯数学构造”路线——用线性变换把物理信道极化成好/坏两堆，信息只放好信道，是**第一个被严格证明能达到信道容量**的码。可以粗略记为：LDPC赢在长码吞吐与并行实现，Polar赢在短码可靠性与理论保证。

**Q: 为什么LDPC发明于1960年，却到2000年前后才火起来？**
A: 不是想法不好，是**算力配不上**。LDPC的置信传播译码虽然复杂度只有线性，但对1960年代的硬件依然过于昂贵。直到1993年Turbo码证明了迭代译码的实际威力，业界回头翻出Gallager的博士论文，才发现更优的方案早已躺在那里30年。这是通信史上著名的“理论超前于实现”案例。

**Q: 码率越低误码越少，那为什么不把码率固定在很低值？**
A: 码率低意味着冗余多、有效速率低，等于用频谱效率换可靠性。好系统的做法是**贴着信道容量动态调码率**（MCS自适应）：信道好的瞬间用高码率多吃容量，信道变差立刻降码率保住可靠度。固定低码率等于永远只用一半带宽，这在频谱按MHz计价的现网是不可接受的。

**Q: Turbo码在5G里被彻底淘汰了吗？**
A: 在5G NR新空口里，Turbo确实退出了，但“淘汰”要分场景看：在低码率（如1/6、1/3）短块场景，Turbo至今仍有性能优势；而且存量4G网络仍长期运行Turbo。选择LDPC+Polar更多是**面向5G的高吞吐、大块长、低时延需求做的组合优化**，而非Turbo本身不行。

**Q: 学习信道编码需要啃哪些数学基础？**
A: 三块就够入门：**线性代数**（生成矩阵、校验矩阵、GF(2)上的运算，理解LDPC和Polar的编码方程）；**概率论**（似然比、贝叶斯更新，理解软译码和置信传播）；**信息论入门**（熵、互信息、信道容量，理解“极限”在哪里）。不需要一上来就啃随机过程，先建立“冗余→约束→迭代推理”的直觉链条，公式自然会变得亲切。

---

## 参考来源

3. [Explained: Gallager codes — MIT News](https://news.mit.edu/2010/gallager-codes-0121) — Forney与Gallager亲述迭代译码的“谣言闭路”直觉、香农极限背景、Turbo码1993年提出时的学界反应
4. [Arikan, E. (2009). Channel Polarization — IEEE Transactions on Information Theory](https://arxiv.org/abs/0807.3917) — 极化码原始论文（arXiv预印本），信道极化与容量证明的第一手出处

---
> 本文由「51学通信」技术团队出品。51学通信由通信行业18年老兵**爱卫生**（微信ID: gprshome201101）维护，聚焦5G/6G核心网、3GPP标准解读、通信前沿技术深度分析。
> 出版作品有《5G核心网原理与实践》《IMS原理与实践》等4本通信专业书籍。知识星球「51学通信」提供深度技术答疑和行业洞察。

> [!tip] 51学通信知识星球
> **星主：爱卫生**（微信：gprshome201101）——公众号「51学通信」创办者，19 年通信行业运维与讲师经验，著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书（各大电商平台有售）。
> **星球定位**：深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域，主打运维岗位与信令分析。
> **当前规模**：5200 篇主题 / 990 个回答，198 元/年。
> **加入福利**：加入星球后请加爱卫生微信，拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题，另有群内分享。
> **AI 加持**：51学通信知识星球已作为 skill 接入 WorkBuddy，使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例，做总结、找文档和 PPT 等场景全覆盖。

![51学通信知识星球海报-扫码加入](https://wiki.500nian.com/images/zhixingqiu_qrcode.png)
