Polar码是什么:从信道容量到5G控制信道
Polar 码是现代信道编码里非常特殊的一类码。它特殊,不只是因为它进入了 5G NR 控制信道,也不只是因为它有一个漂亮的蝶形编码结构;更重要的是,它给出了一个非常清楚的答案:怎样从信道本身出发,构造一类可以达到二元输入离散无记忆信道对称容量的编码。
如果用一句话概括:Polar 码是一类基于“信道极化”现象构造的线性分组码。它通过把多个相同的基础信道组合、分裂,得到一批可靠性差异越来越明显的合成子信道;发送端把信息比特放在可靠子信道上,把不可靠子信道固定为冻结位;接收端再利用这些结构进行译码。
这篇文章先不进入细节推导,而是把 Polar 码放进整个信道编码的发展脉络里看清楚:它为什么被提出,它和 Turbo / LDPC 是什么关系,它的核心机制是什么,它经历了哪些重要发展,以及为什么 5G NR 会把它用于控制信道。
信道编码到底在解决什么问题
通信系统面对的根本矛盾是:真实信道有噪声,但我们希望信息可靠传输。
发送端发出一串比特,经过调制、无线信道、噪声和干扰之后,接收端拿到的往往不是清晰的 0 和 1,而是一组带不确定性的观测值。信道编码的作用,就是在原始信息中加入有结构的冗余,让接收端可以利用整体约束把错误纠回来。
从 Shannon 1948 年的信息论开始,人们就知道一个重要结论:只要传输速率低于信道容量,就存在某种编码方式,使误码概率可以随着码长增加而趋近于 0。
这句话极其强大,但也留下了一个工程问题:Shannon 告诉我们“好码存在”,却没有直接给出一套简单、可构造、可译码、能在真实系统里跑起来的码。
后来的信道编码研究,很多时候都在追这个目标:离信道容量尽量近,同时编码和译码复杂度不能失控。
常见码率写作:
R = \frac{K}{N}其中 K 是信息比特长度,N 是编码后的码长。容量问题可以粗略理解为:在某个信道条件下,R 能不能尽量接近容量,同时仍然可靠。
从 Shannon 到 Turbo、LDPC、Polar
从历史上看,信道编码不是一条直线,而是几次关键思想的接力。
Shannon 建立了容量理论,给出了“可靠通信极限”的存在性。Hamming、BCH、Reed-Solomon 等经典代数码让纠错编码有了明确结构,适合解决许多早期存储和通信问题。卷积码配合 Viterbi 译码,在较长时间内成为通信系统中的主力方案。
LDPC 码由 Gallager 在 1960 年代提出,核心是用稀疏校验矩阵定义码,并通过迭代消息传递译码。它提出得很早,但受限于当时计算能力,没有马上成为工程主角。后来随着计算能力提升和迭代译码思想成熟,LDPC 被重新发现,并在长码、高吞吐场景中展现出很强竞争力。
Turbo 码由 Berrou、Glavieux 和 Thitimajshima 在 1993 年提出,是信道编码史上的一个震动点。它通过并行级联卷积码、交织器和迭代译码,在实际复杂度下逼近 Shannon 限,让“接近容量”从理论理想变成工程现实。
Polar 码由 Arikan 在 2009 年提出。它的标志性意义在于:这是第一类被严格证明可以达到二元输入离散无记忆信道对称容量,并且具有显式构造和低复杂度编译码算法的编码方案。
这也是为什么很多概述文章会把 Polar 码写成“第一个具有显式构造的容量可达码”。这里的“容量可达”对应 Arikan 论文标题中的 capacity-achieving codes,更严格地说是达到对称容量。
Turbo、LDPC 和 Polar 的位置关系
Turbo、LDPC 和 Polar 经常被放在一起比较,更准确地说,它们是面向不同结构、复杂度和应用需求的三种代表性现代信道编码方案。
| 编码 | 出现时间 | 核心结构 | 译码特点 | 工程优势 | 典型位置 |
|---|---|---|---|---|---|
| Turbo | 1993 | 并行级联卷积码 + 交织器 | 迭代译码 | 中短码性能强,曾长期用于移动通信 | 3G / 4G 数据信道的重要方案 |
| LDPC | 1960s 提出,1990s 后复兴 | 稀疏校验矩阵 | 置信传播 / 消息传递 | 并行度高,长码和高吞吐表现好 | 5G NR 数据信道 |
| Polar | 2009 | 信道极化 + 冻结位 | SC / SCL / CA-SCL | 理论结构清楚,短控制信息场景有优势 | 5G NR 控制信道 |
Turbo 码的核心贡献,是让工程界真正看到接近 Shannon 限的可实现方案。它靠迭代译码把两个相对简单的分量码联合起来,从全局上获得强性能。
LDPC 码的核心优势,是稀疏图结构带来的并行译码能力。对高吞吐、长数据块、硬件并行实现来说,LDPC 很自然。因此 5G NR 数据信道采用 LDPC,并不令人意外。
Polar 码的优势不主要体现在“它在所有码长下都压倒其他码”。如果只看有限码长性能,原始 SC 译码下的 Polar 码并不总是惊艳。Polar 真正的关键在于它的理论构造非常干净:通过信道极化,可以明确知道哪些位置适合承载信息,哪些位置应该冻结。后来配合 CRC 和 SCL 译码之后,有限码长性能显著改善,才使它在控制信道场景中具备工程竞争力。
所以可以这样理解三者的关系:Turbo 是迭代译码时代的工程突破,LDPC 是稀疏图和并行译码的长码强者,Polar 是从信道极化出发的容量可达构造,并在 5G 控制信道中完成工程落地。
Polar 码的基本思想:信道极化
Polar 码的名字来自 polarization,也就是极化。这里的极化不是物理电磁波极化,而是信道可靠性的两极分化。
假设有一个二元输入信道 W。我们把多个独立使用的 W 通过一个固定变换组合起来,再从接收端和逐位判决的角度把它们看成一组新的合成子信道。随着码长 N 增大,这些合成子信道会逐渐分成两类:
- 一类越来越可靠,接近“无噪声信道”。
- 一类越来越不可靠,接近“完全没用的信道”。
这就是信道极化。
Polar 码的编码策略顺势而来:选出可靠的子信道集合 \mathcal{A} 放信息比特;剩下的不可靠位置集合 \mathcal{A}^c 放固定值,通常固定为 0,这些位置叫冻结位。
于是一个 Polar 码通常可以用三个量描述:
- 码长 N:通常取 2 的幂,来自递归构造。
- 信息长度 K:真正承载信息的比特数。
- 信息位集合 \mathcal{A}:哪些子信道被认为足够可靠。
这比“把 K 个比特乘上一个矩阵”更接近 Polar 码的本质。矩阵只是实现结构;真正决定性能的是信道极化之后,哪些子信道被选为信息位。
一张图先建立全局印象
下面这张图把第一篇最重要的三件事压缩在一起:信道编码是问题背景,信道极化是 Polar 码的核心机制,5G 控制信道是它的重要工程落点。

Polar 码由哪些部分组成
从学习和实现角度看,Polar 码至少要拆成三件事:编码、构造、译码。
编码回答的是:给定信息位和冻结位,如何生成发送码字。Polar 码最基本的编码矩阵来自二阶核:
F = \begin{bmatrix} 1 & 0 \\ 1 & 1 \end{bmatrix}长度为 N=2^n 时,可以通过 Kronecker 幂得到 F^{\otimes n},再结合 bit-reversal 等约定形成生成矩阵。这个结构带来一种类似 FFT 的蝶形计算方式,因此 Polar 编码可以用递归或蝶形网络高效完成。
构造回答的是:哪些位置放信息,哪些位置冻结。它不是附属问题,而是 Polar 码性能的核心问题。因为 Polar 码的思想就是“好子信道放信息,坏子信道冻结”,所以必须先评估每个子信道的可靠性。对 BEC 这类理想信道,可以用 Bhattacharyya 参数递推看得很清楚;对 AWGN 这类实际信道,就需要密度进化、高斯近似、Polarization Weight 等方法来生成可靠性排序。
译码回答的是:接收端如何从带噪观测恢复信息。Arikan 原始论文中对应的是 SC,也就是 successive cancellation,逐次抵消译码。SC 的思想是按位判断,每判断一位,就把前面已经判断出的结果用于后续位的判决。SC 结构简单,复杂度低,但有限码长下性能不总是理想。
后来 SCL,也就是 successive cancellation list 译码,把“每一步只保留一条路径”改成“保留多条候选路径”,显著改善性能。再配合 CRC 辅助筛选,就得到 CA-SCL。Tal 和 Vardy 对 SCL 译码做了重要推进,使其成为 Polar 码有限码长性能提升的关键方案之一。
因此,真正理解 Polar 码,不能只看生成矩阵。你至少要同时抓住这三条线:
- 编码结构:F、Kronecker 幂、蝶形网络。
- 构造方法:子信道可靠性排序、冻结位选择。
- 译码算法:SC、SCL、CA-SCL。
Polar 码为什么说是容量可达码
“容量可达”是 Polar 码最常被提到的标签,但它很容易被误解。
容量可达不是说任意短码长、任意译码器、任意参数下 Polar 码都比其他码强。它说的是在 Arikan 给出的理论框架下,对于二元输入离散无记忆信道,当码长趋于无穷时,可以选择合适的信息位集合,使码率逼近该信道的对称容量,同时块错误率趋于 0。
这个结论重要在两点。
第一,它不是随机编码意义上的“存在某种好码”,而是给出了显式构造路线。通过信道极化,我们知道应该如何挑选可靠子信道。
第二,它的复杂度可控。原始 Polar 码的编码和 SC 译码复杂度都是 O(N \log N),这让它不只是理论对象,也具备工程实现的基础。
但也要看到另一面:理论渐近性能不等于有限码长性能。实际系统里 N 不可能无限大,控制信道尤其经常面对短块长。因此 Polar 码进入工程时,必须处理有限码长、CRC 辅助、列表大小、速率匹配、交织等问题。
Polar 码的发展脉络
Polar 码从 2009 年提出后,发展主线大致可以分成几类。
第一类是译码增强。原始 SC 译码结构清楚,但容易出现错误传播:前面某一位判错,会影响后续判决。SCL 通过保留多条路径缓解这个问题,CA-SCL 再用 CRC 从候选路径中筛选更可能正确的一条。今天谈工程 Polar 码,基本绕不开 SCL 和 CA-SCL。
第二类是构造方法。理论上,子信道可靠性可以通过密度进化等方法分析;工程上,还需要更轻量、更稳定、更适合不同信道条件的方法。例如高斯近似常用于 AWGN 信道下的构造,Polarization Weight 则提供了一种更轻量的可靠性排序思路。5G NR 中还采用了标准化的可靠性序列,避免每次都从头做复杂构造。
第三类是有限码长优化。原始 Polar 码的渐近理论很漂亮,但实际通信系统关心的是有限码长下的 BLER、吞吐、延迟和硬件复杂度。系统 Polar 码、CRC 连接、交织设计、路径度量、列表大小选择、速率匹配等,都是围绕有限码长性能展开的工程补强。
第四类是标准化应用。Polar 码被 5G NR 采纳后,它从理论热点变成通信标准中的实际模块。标准化带来的一个变化是:学习 Polar 码不能只停在 G_N 和 SC 译码公式上,还要理解 CRC、交织、子块交织、速率匹配、编码链路和译码链路如何配合。
为什么 5G NR 控制信道选择 Polar 码
5G NR 对信道编码做了明确分工:数据信道主要采用 LDPC,控制信道采用 Polar。3GPP TS 38.212 规定了 NR 中信道编码、复用、交织和速率匹配等处理流程,其中包含 Polar 码用于控制信息的处理链路。
这个选择和应用场景有关。
数据信道通常强调高吞吐、大数据块、并行处理,LDPC 的稀疏图结构和并行译码非常适合。控制信道承载的信息块通常更短,但重要性很高,例如调度、反馈、广播控制等信息。控制信息一旦错了,后续数据传输可能直接失效。
Polar 码在控制信道中的优势主要来自几个方面:
- 它在短到中等长度控制信息上,配合 CRC-aided SCL 后性能有竞争力。
- 它的理论结构清晰,可靠性序列和冻结位机制适合标准化描述。
- 它可以自然结合 CRC、交织和速率匹配,形成完整控制信道链路。
- 它和 LDPC 形成互补:LDPC 负责数据面,Polar 负责控制面。
所以 5G 中的 Polar 码不是孤立的“编码矩阵”,而是一条处理链路的一部分。发送端通常会经历 CRC 添加、交织、Polar 编码、速率匹配等步骤;接收端则通过对应的解速率匹配、译码、CRC 检查等步骤恢复控制信息。
容易误解的几个点
第一个误解是把 Polar 码等同于生成矩阵。生成矩阵很重要,但它只是编码结构。Polar 码真正的核心是信道极化以及由此带来的信息位选择。
第二个误解是把“容量可达”理解成“短码一定最强”。容量可达是渐近理论结论,有限码长性能还要看构造、译码器、CRC、列表大小和信道条件。
第三个误解是认为冻结位只是随便补 0。冻结位的值通常简单,但冻结位的位置绝不随便。哪些位置冻结,哪些位置放信息,正是 Polar 构造问题的核心。
第四个误解是只学 SC 译码就能理解工程 Polar。SC 是理解 Polar 的基础,但工程中常见的是 SCL 和 CA-SCL。尤其在 5G 场景下,CRC 辅助列表译码非常关键。
第五个误解是忽略速率匹配。理论 Polar 码喜欢 N=2^n,但实际系统的信息长度和发送资源不会总是刚好匹配 2 的幂。puncturing、shortening、repetition 等速率匹配方式,是工程实现里必须面对的问题。
后续学习路线
这套系列会按从概念到工程的顺序展开。第一阶段先建立基本概念:B-DMC、码率、容量、LLR、二阶核、生成矩阵和小码长算例。第二阶段进入信道极化理论,重点理解 combining、splitting、Bhattacharyya 参数和冻结位选择。第三阶段讨论构造方法,从 BEC 走向 AWGN,并解释 design-SNR。第四阶段系统讲 SC、SCL、CA-SCL。第五阶段进入有限码长、CRC、系统码、性能曲线和速率匹配。最后再回到 5G NR,把标准链路串起来。
如果要给 Polar 码学习画一条主线,我会写成:
信道容量 -> 信道极化 -> 子信道可靠性排序 -> 信息位 / 冻结位选择 -> Polar 编码 -> SC 译码 -> SCL / CA-SCL -> 速率匹配 -> 5G NR 控制信道。
这条线比单纯从矩阵开始更稳。矩阵会在第三篇出现,但在那之前,先知道矩阵为什么会被这样构造,后面才不会陷入“公式都认识,但不知道它们在解决什么问题”的状态。
小结
Polar 码可以从三个层面理解。
理论上,它是 Arikan 基于信道极化提出的显式容量可达码,回答了如何构造一类接近 Shannon 极限的编码。
结构上,它通过二阶极化核和 Kronecker 幂形成递归编码网络,再通过子信道可靠性排序选择信息位和冻结位。
工程上,它需要与 SCL / CA-SCL、CRC、交织和速率匹配结合,才能在有限码长场景中发挥性能,并最终进入 5G NR 控制信道。
把它放在 Turbo 和 LDPC 旁边看,Polar 码不是简单替代谁,而是现代信道编码版图中的第三条重要路线:Turbo 代表迭代译码突破,LDPC 代表稀疏图和高并行长码方案,Polar 代表信道极化驱动的显式容量可达构造。
参考
- C. E. Shannon, “A mathematical theory of communication,” Bell Syst. Tech. J., vol. 27, no. 3, pp. 379-423, Jul. 1948; vol. 27, no. 4, pp. 623-656, Oct. 1948, doi: 10.1002/j.1538-7305.1948.tb01338.x; 10.1002/j.1538-7305.1948.tb00917.x.
- R. G. Gallager, “Low-density parity-check codes,” IRE Trans. Inf. Theory, vol. 8, no. 1, pp. 21-28, Jan. 1962, doi: 10.1109/TIT.1962.1057683.
- C. Berrou, A. Glavieux, and P. Thitimajshima, “Near Shannon limit error-correcting coding and decoding: Turbo-codes. 1,” in Proc. IEEE Int. Conf. Commun. (ICC), Geneva, Switzerland, May 1993, pp. 1064-1070, doi: 10.1109/ICC.1993.397441.
- E. Arikan, “Channel polarization: A method for constructing capacity-achieving codes for symmetric binary-input memoryless channels,” IEEE Trans. Inf. Theory, vol. 55, no. 7, pp. 3051-3073, Jul. 2009, doi: 10.1109/TIT.2009.2021379.
- I. Tal and A. Vardy, “List decoding of polar codes,” IEEE Trans. Inf. Theory, vol. 61, no. 5, pp. 2213-2226, May 2015, doi: 10.1109/TIT.2015.2410251.
- 3GPP, “NR; Multiplexing and channel coding,” 3GPP TS 38.212.