第 2 章 5G 新空口关键技术
| 2.2 5G 多址接入 |
| 2.3 5G 信道编码 |
2.3.1 信道编码概述
信道编码(Channel Coding)是无线通信领域最核心的技术之一。信道编码的完整过程包括添加循环冗余校验码(CRC,Cyclic Redundancy Check)、码块分割(Code Block Segmentation)、纠错编码(Forward Error CorrectingCoding)、速率适配(Rate Matching)、码块连接(Code Block Concatenation)、数据交织(Interleave)、数据加扰(Scrambling)等组成部分。其中纠错编码是最关键的部分,也是本章要介绍的主要内容。
纠错编码的目的,是通过尽可能小的冗余开销确保接收端能自动地纠正数据传输中所发生的差错。在同样的误码率下,所需要的开销越小,编码的效率也就越高。
信息论的创始人香农(Claud Shannon,见图 2-32)在 1948 就指出(参见文献[53]):在带宽和发射功率受限的加性高斯白噪声(AWGN,Additive WhiteGaussian Noise)信道中,通过设计足够好的信道编解码,只要信息传输速率 R小于信道容量 C,可以使信息传输的错误概率任意小。反之,如果信息传输速率 R 超过了信道容量 C,则无法使信息传输的错误概率减小到 0。信道容量 C可以表示为
其中,C(bit/s)是码元速率的极限值;W(Hz)为信道带宽;S(W)是信号功率,N(W)是噪声功率。
香农从理论上证明了信道编码方案的存在,但是并未指明具体的编解码构造方法。自此以后,各种各样的信道编码方案纷纷涌现。对于信道编码技术的研究者而言,达到香农所定义的信道极限是无数研究者追求的目标。
传统的信道编解码大体上包括线性分组码(Linear Block Code),如汉明码、格雷码、BCH 码,Reed-Solomon 码等,卷积码(Convolutional Code)和级联码(Concatenated Code),这些码有各自不同的特点和性能,适用于不同的场景。但是它们所能达到的信道容量与香农理论极限始终都存在一定的差距。
直到 Turbo 码的出现才改变了这种情况。Turbo 码的性能非常优异,可以非常逼近香农理论的极限。在 3G 和 4G 时代的移动通信系统中,Turbo 码扮演了非常重要的角色。
在即将到来的 5G 时代,数据的传输速率将比 4G 有数量级的提高,对于Turbo 码而言,其基于串行处理的解码器要在这种情况下有效地支持如此高速的数据传输将是挑战。
与此同时,5G 时代出现了更加丰富的业务应用场景和对信道编码的新的要求,例如,mMTC 场景需要传输的文件包较小,而 URLLC 场景对编解码时延和低误码要求很高,Turbo 码在所有这些新的场景中是否还是最优的,这也同样是个问题。这就要求业界重新审视和研究适合 5G 的信道编解码技术。
5G 时代不同的应用场景对于信道编解码有着不同需求,三大应用场景对信道编码的关键需求见表 2-8(可以参见 3GPP R1-162896 Channel Coding Requirementfor 5G New Radio)。
在 3GPP 的讨论中,新的编解码方案讨论主要集中于 Turbo 码,低密度奇偶校验码(LDPC)以及 Polar 码(又称为极化码)。与传统的线性分组码和卷积码相比,这 3 种码的性能都更加优异,可以非常逼近香农理论的极限,但是它们在适用的场景和编解码器的复杂性上又有各自不同的特点,在以下几节中将对这几种码进行简单介绍。
2.3.2 Turbo、LDPC 和 Polar 码的综合分析对比
2.3.2.1 Turbo 码简介
Turbo 码是由法国工程师 C.Berrou(见图 2-33)和 A.Glavieux 等人在 1993 年首次提出的一种级联码。Turbo 码的性能非常优异,可以非常逼近香农理论极限。
Turbo 码编码器基本原理如图 2-34 所示。其编码器的结构包括两个并联的相同递归系统卷积码编码器(Recursive Systematic Convolutional Code),二者之间用一个内部交织器(Interleaver)分隔。编码器 1 直接对信源的信息序列分组进行编码,编码器 2 为经过交织
器交织后的信息序列分组进行编码。信息位一路直接进入复用器,另一路经两个编码器后得到两个信息冗余序列,再经恰当组合,在信息位后通过信道。
Turbo 码解码器基本原理如图2-35 所示,它包含两个分量码解码器,其中,后验概率(APP,A PosterioriProbability)由每个解码器产生,并被另一个解码器用作先验信息(Priori
Information)。译码时在两个分量解码器之间进行迭代译码,通过上述对比特判决的可置信度信息的帮助,把这两组结果彼此参照,可以得出一次近似的结果。然后把这一结果反馈到解码器前端,再进行迭代。经过多次的往复迭代,使得其置信度不断提高。
由于该编解码方案的译码过程利用了解码器的输出来改进解码过程,和涡
轮增压(Turbocharger)(见图 2-36)利用排出的气体把空气压入引擎提高内燃机效率的原理很相似,所以又形象地称为 Turbo 码。
Turbo 码解码的迭代次数越多,其解码的准确度也越高,但是到达某个值后其增强效果会逐步变得不明显。Turbo 码误码率和迭代次数的关系如图 2-37 所示。
Turbo 码的编码相对简单,它在码长、码率的灵活度和码率兼容自适应重传等方面有一些优势。但是其解码器由于需要迭代解码,相对比较复杂,需要较大的计算能力,并且解码时由于迭代的需要会产生时延。所以对于实时性要求很高的场合,Turbo 码的直接应用会受到一定限制。此外,Turbo 码采用次优的译码算法,有一定的错误平层。
Turbo 码比较适合码长较长的应用,但是码长越长,其解码的复杂度和时延也越大,这就限制了它的实用性。
总的来说,Turbo 码性能优异,编码构造比较简单,但是它的解码复杂度较高。当然,针对 Turbo 的业界研究也在继续,新的 Turbo 码 2.0 就相对早期的 Turbo 码做了改进,提高了它的性能,该码是3G 和 4G 商用的关键技术之一,它的研究和应用已经十分成熟了。
2.3.2.2 LDPC 码简介
LDPC 码是麻省理工学院的 RobertGallager(见图 2-38)于 1962 年在他的博士论文中首次提出的一种具有稀疏校验矩阵的线性分组纠错码,其特点是它的奇偶校验矩阵(H 矩阵)具有低密度。由于它的 H 矩阵具有稀疏性,因此产生了较大的最小距离(dmin),同时也降低了解码的复杂性。该码的性能同样可以非常逼近香农极限,但是在 20 世纪60年代由于受到硬件计算能力的限制,以及后续 Reed-Solomon码的提出,LDPC 码基本处于被人们遗忘的状态。直到 1990 年,MacKay、Luby等人又重新发现了这种编码方法,该码才再次引起了学术界的重视。
较新的研究结果表明,实验中已找到的最好 LDPC 码的性能距香农理论限仅相差 0.0045dB。与此同时,LDPC 码的数学描述非常简单,易于进行理论分析和研究,编解码方法在实现中也非常适宜于并行处理,适合用硬件来实现。因此,LDPC 码已经成为编码界近年来的研究热点。
LDPC 码的构造可以分为随机生成和结构化生成。随机码由计算机搜索得到,优点是具有灵活的结构和良好的性能;但是,长的随机码通常由于生成矩阵没有明显的特征,因而编码复杂度高。结构码由几何、代数和组合设计等方法构造。随机方法构造 LDPC 码的典型代表有 Gallager 和 Mackay,用随机方法构造的 LDPC 码的码字参数灵活,具有良好的性能,但编码复杂度与码长的平方成正比。后续人们又提出了采用几何、图论、实验设计、置换等方法来设计LDPC 编码,极大地降低了编解码的复杂度(其复杂度与码长呈线性关系)。结构化的体现可以是多种的,其中应用最广泛的是准循环结构(Quasi-Cyclic)。
与 Turbo 码相比较,LDPC 码主要有以下优势。
(1)LDPC 码的解码可以采用基于稀疏矩阵的低复杂度并行迭代解码算法,运算量要低于 Turbo 码解码算法。并且由于结构并行的特点,在硬件实现上比较容易,解码时延也小。因此在高速率和大文件包的情况下,LDPC 码更具有优势。
(2)LDPC 码的码率可以任意构造,有更大的灵活性。
(3)LDPC 码具有更低的错误平层,可以应用于有线通信、深空通信以及磁盘存储业等对误码率要求非常高的场合。
(4)LDPC 码是 20 世纪 60 年代发明的,在知识产权和专利上已不存在过多麻烦。这一点为进入通信领域较晚的公司提供了一个很好的发展机会。
但是,LDPC 码也存在构造复杂、不适合于短码等不足之处。值得指出的是,业界对于 LDPC 码的优化也一直在进行,它的工业实现的成熟度较高。近年来,LDPC 码在短码设计、支持灵活码长和码率等方面也有突破。
目前,LDPC 码已应用于 802.11n、802.16e、DVB-S2 等通信系统中。
在 3GPP R15 的讨论过程中,全球多家公司在统一的比较准则下,详细评估了多种候选编码方案的性能、复杂度、编译码时延和功耗等指标,并最终达成共识,将 LDPC 码确定为 5G eMBB 场景数据信道的编码方案。
2.3.2.3 Polar 码简介
Polar 码是由土耳其比尔根大学的 E. Arikan 教授(正好是 LDPC 码的发明者 Gallager 教授的学生)(见图 2-39)于 2007 年基于信道极化理论提出的一种线性分组码,它是针对二元对称信道(BSC,Binary Symmetric Channel)的严格构造码。理论上,它在较低的解码复杂度下能够达到理想信道容量且无误码平层,而且码长越大,其优势就越明显。Polar 码是目前为止唯一能够达到香农极限的编码方法,自从提出以来,就一直吸引了众多学者的兴趣,是近年来信息论领域研究的一个热点。
Polar 码的工作原理与其他的传统的信道编码方法都不同。它包括了信道组合、信道分解和信道极化 3 部分,其中,信道组合和信道极化在编码时完成,信道分解在解码时完成。
Polar 编码理论的核心是信道极化理论。其原理过程如图 2-40 所示,它的编码是通过以反复迭代的方式对信道进行线性的极化转换来实现的。根据信道极化理论,经过信道组合和信道分离两个步骤,比特信道 将会出现极化现象。当组合信道的数目 N 趋于无穷大时,一部分比特信道将趋于无噪信道[信道容量];另一部分则趋于全噪信道[信道容量)趋于 0]。
Polar 码选择趋近于 1 的完全无噪声比特信道发送信源输出的信息比特,而容量趋近于 0 的全噪声比特信道上发送冻结比特(已知比特,如 0)。通过这种编码构造方式,保证了信息集中在较好的比特信道中传输,从而降低了信息在信道传输过程中出现错误的可能性,保证了信息传输的正确性。Polar码就是以此种方式实现编码的。
当编码长度 N 趋向无穷大时,Polar 码可以逼近理论信道容量,这是目前为止发现的唯一能达到此极限的信道编码。其编解码的复杂度正比于 N log N。
Polar 码具有如下几个优点:
(1)相比 Turbo 码具有更高的增益,在相同误码率的前提下,实测 Polar码对信噪比的要求要比 Turbo 码低 0.5~1.2dB;
(2)Polar 码没有误码平层,可靠性比 Turbo 码高,对于未来 5G URLLC 等应用场景(如远程医疗、自动驾驶、工业控制和无人驾驶等)能真正实现高可靠性;
(3)Polar 码的编解码复杂度较低,可以通过采用基于 SC(SuccessiveCancellation)或 SCL(SC List)的解码方案,以较低的解码复杂度为代价,获得接近最大似然解码的性能。
接近最大似然解码的性能。
Polar 码的主要缺点为:
(1)它的最小汉明距离较小,可能在一定程度上影响解码性能。当然,这个问题也可以采取一些方法来规避。
(2)SC 译码的时延较长,采用并行解码的方法则可以缓解此问题。
总的来说,Polar 码较好地平衡了性能和复杂性,在中短码长的情形下比较有优势。它的码率调整机制颗粒度很精细,即它的信息块长度可以按比特增减。此外,它的复杂度、吞吐量、解码时延也都具有较好的指标。
虽然 Polar 码的性能非常优异,但是到目前为止在业界的应用并不多,因此相对来讲应用没有 Turbo 码和 LDPC 码那样成熟。
得益于 Polar 码的潜力,一些公司投入了大量研发力量对其在 5G 应用方案进行深入研究、评估和优化。3GPP R15 在最后讨论的决议中,将 Polar 码确定为 5G eMBB 场景控制信道的编码方案。在 mMTC 和 URLLC 场景下,Polar 码也是重要的编码候选方案。
2.3.2.4 其他编码方案
5G NR 中用到的信道编码还包括用于信息长度为 1bit 时的重复编码(RepititionCode),用于信息长度为 2bit 时的简单编码(SimplexCode),用于信息长度为 3~11bit 时的 Reed-Muller 码,与在 LTE 中情况类似,在此不再一一介绍。
2.3.3 5G NR 编码方案选项的综合比较
关于 Turbo、LDPC 和 Polar 3 种码的纠错性能比较,图 2-41 所示为某特定场景下对于不同信息块大小达到 1.0%误块率所需 SNR 的计算机仿真结果(摘自三星、高通、诺基亚、KT 和英特尔的提案 3GPP R1-1610690)。从结果可以看出,为了获得同样的误块率,Turbo 码需要最高的 SNR,Polar 码和 LDPC 码的性能和信息块的大小有一定关系。
华为对 5G NR 中出现的主要几种编码方案的性能和实现复杂性做了全面的分析比较(可以参见 3GPP R1-164039)。包括编码的性能、硬件实现和功耗效率以及对不同码率和码长的支持度。根据分析,Turbo 码在码块较大时功耗和芯片面积效率会变得较差,而其纠错性能也不如 LDPC 和 Polar 码;LDPC 码在码块较大和码率较高时性能很好,但是在编码率<1/2 时性能稍差;Polar 码则相对均衡,并且具有较强的灵活性,适合不同的场景需要。详情可以参见表 2-9,咬尾卷积码(TBCC,Tail-Biting Convolutional Code)的特点是编码器的结束状态和初始状态相同,从而降低了为了使卷积码的移位寄存器清零所需的额外开销。
总体而言,LDPC 码在 eMBB 应用场景特别是码块较大时具有一定优势,而 Polar 码在小码块、控制信道以及 URLLC 和 mMTC 场景有一定优势。
2.3.4 3GPP 对信道编解码方案的讨论过程
2016 年 4 月 11—15 日在韩国釜山召开的 RAN1 #84bis 会议是 5G 新技术研究项的起点,会议讨论了 5G NR 对于信道编码的总体需求和评估方法,对于具体的信道编码方案,各公司都阐述了各自的观点。
会议中,华为提出采用 Polar 码,认为 Polar 码适用于各种应用场景。爱立信和 LGE 支持 Turbo 码,并认为 Turbo 码性能良好,并且在各种场景下均适用。三星、高通、中兴、英特尔、Sony 和诺基亚则比较倾向于 LDPC 码,但是各家在具体实现方式上有区别。
爱立信展示了 Turbo 编码相对于 LDPC 的优势,其他公司则认为爱立信采用较大的码块来对 Turbo 编码进行估算可能导致结果缺乏公平性,最终大家仍然同意将 Turbo 编码作为 5G NR 的候选方案之一。华为对 Polar 码和 Turbo 码进行了比较,认为 Polar 码更加优越,其他公司则对二者的性能差异有疑问,认为华为需要更多时间确认此研究结果。诺基亚认为应该尽快确定模拟仿真的假设条件,并提供了两份提案,针对每种应用场景下的编码需求和编码评估方法进行了说明。
该次会议最终同意(可以参见三星、诺基亚、高通、中兴、英特尔和华为等公司的提案 3GPP R1-163662)。
(1)LDPC、Polar、Turbo 以及卷积码为 5G NR 的候选方案,并且不排除前述各类编码的组合使用,以及 Outer Erasure Code。
(2)明确了仿真假设条件,以便启动编码算法的评估工作。
(3)编码算法评估时需要从性能、实施的复杂性、编解码时延、灵活性等多方面对新编码方式进行综合分析评估。
2016 年 5 月 23—27 日在中国南京召开的 RAN1#85 次会议上,多数公司对各自在 eMBB 场景的候选编码方式的看法没有太大改变,但是对于其他场景有些新看法。此次会议由于不同公司的观点完全不同,因此最终会议未能达成一致决议。
2016 年 8 月 22—26 日,3GPP 在瑞典哥德堡举行 RAN1#86 会议。
编解码部分主要讨论的内容包括:
(1)eMBB 编码方案的实施复杂度;
(2)eMBB 编码方案的性能比较;
(3)小文件块编码;
(4)控制信道编码机制。
高通等公司的提议是 eMBB 数据信道采用 LDPC 码;华为等公司的提议是Polar 码作为 eMBB/mMTC/URLLC 的候选编码方案。关于控制信道,爱立信和诺基亚等公司提议采用 TBCC 码。最后与会者同意,各公司应该继续对各种编码方案进行分析和比较,并在下次会议上形成关于 eMBB 数据信道编码的最终结论。
2016 年 10 月 10—14 日,RAN1#86bis 会议在葡萄牙里斯本召开。这次会议的主题是讨论数据信道的编码方案。由于不同编码方案在长短码的不同场景下的表现各有优劣,经过讨论后同意把长码和短码分开来处理,各自选择一种合适的编码,让各家公司更充分表达意见。
由于此次会议将产生 eMBB 数据信道的编码方案的最终定论,因此讨论比较激烈。但是讨论结果也表明,Polar 码对于大数据块情况下性能不如 LDPC 码。
此次会议的最终决议为:
(1)在 eMBB 场景中,信息块大小>X 时,数据信道的编码方式为 LDPC 码;
(2)信息块大小≤X 时,RAN1#87 会议将决定选择 Polar、LDPC 和 Turbo中的哪一个;
(3)X 的具体值将在 RAN1#87 中确定,大体上 128bit≤X≤1024bit,这里必须考虑编解码的复杂度;
(4)各公司继续研究 URLLC、mMTC 以及控制信道的编码方式。
2016 年 11 月 14—18 日,RAN1#87 会议在美国雷诺举行。这次会议最终决定了 eMBB 数据信道短码和控制信道的编码问题。
会议未对 Turbo 码做过多讨论。讨论的主要问题就是“短码用 LDPC,还是用 Polar 码”。华为等 50 多家公司支持采用 Polar 码(参见提案 R1-1613307)。三星、高通等 30 多家公司则支持采用 LDPC 码(参见提案 R1-1613342)。华为、海思等公司通过硬件资源利用率和功耗的分析论证了在 eMBB 数据信道采用两种编码方案是有效率的(参见提案 R1-1613306)。在控制信道编码上也存在分歧。华为等公司提议控制信道编码也采用 Polar 码(参见提案 R1-1613211),高通、爱立信等公司则提议采用 TBCC 码(参见提案 R1-1613577)。
讨论的最后结果,会议双方做出妥协并取得共识,数据信道基本采纳了高通等公司的提议,即数据信道短码也采用 LDPC 码;控制信道编码则基本采纳了华为等公司的提议,采用 Polar 码。
因此,3GPP 的最终决定为:
(1)eMBB 场景数据信道(PDSCH、PUSCH),采用 LDPC 码为编码方案;
(2)eMBB 场景控制信道(及控制信息)和 PBCH,采用 Polar 码为编码方案。
通过 RAN1 #84bis 到 RAN1 #87 共 5 次会议,eMBB 场景下数据信道和控制信道(及控制信息)的编码方案已经基本上讨论完成。数据信道的候选编码方案包括 LDPC、Polar 以及 Turbo,最终 LDPC 胜出;控制信道的编码方案的讨论主要是在 LTE 原有的 TBCC 码和 Polar 码之间展开的,最终 Polar 码胜出。
2.3.5 R15 中的信道编码
在 5G NR 中,信道编码的操作对象主要是传输信道(TrCH)和控制信息的数据块。3GPP 在 R15 中定义的各个传输信道和控制信息所采用的信道编码详细情况见表 2-10 和表 2-11。
5G NR 对数据信道采用的是 Quasi-Cyclic LDPC 码,并且为了在 HARQ 协议中使用而采用了速率匹配(Rate-Compatible)的结构。控制信息部分在有效载荷(Payload)大于 11bit 时采用了 Polar 码。当有效载荷小于等于 11bit 时,信道编码采用的是 Reed-Muller 码。
2.3.5.1 传输信道编码
其中,添加 CRC 是通过在数据块后增加 CRC 校验码使得接收侧能够检测出接收的数据是否有错。CRC 校验码块的大小取决于传输数据块的大小,对于大于 3824bit 的传输数据块,校验码采用了 24-bit CRC;对于小于等于 3824bit的传输数据块,采用的则是 16-bit CRC。在接收侧,通过判断所接收数据是否有错误,再通过 HARQ 协议决定是否要求发送侧重发数据。
码块分割是把超过一定大小的传输数据块切割成若干较小的数据块,分开进行后续的纠错编码,分割后的数据块会分别计算并添加额外的 CRC 校验码。
信道编码采用了 Quasi-cyclic LDPC 码。
速率匹配的目的是把经过信道编码的比特数量通过调整,适配到对应的所分配到的 PDSCH 或 PUSCH 资源(所承载的比特数量)上。
速率匹配输出的码块按顺序级联后即可进行调制进而经由发射机发送。
2.3.5.2 控制信息编码
首先,对待传输的控制信息进行码块分割和添加码块 CRC 校验码。信道纠错编码采用了 Polar 码。速率匹配则把经过信道编码的数据从速率上匹配到所分配到的物理信道资源上。码块级联则把数据块按顺序连接起来,然后通过调制发送。
下行控制信息(DCI)的整个信道编码过程如图 2-44 所示。
首先,对待传输的控制信息添加 CRC 校验码。随后经过加扰,加扰序列采用的是终端无线网络临时识别号(RNTI,Radio Network Temporary Identity),这样做的目的是使得接收侧(终端)可以通过 CRC 校验码和加扰序列同时得知数据的正确性以及本终端是不是该信息的正确接收方,从而减少了需要通过PDCCH 发送的比特数。信道纠错编码采用了 Polar 码。速率匹配则把经过信道编码的数据从速率上匹配到所分配到的物理信道资源上,后续数据块即可按顺序进行 QPSK 调制进而由发射机发送。
传输信道和控制信息的详细编码过程可以参见第 4 章的相关部分。
信道编码是一门专门的学问,本章旨在对 5G NR 讨论中出现的几种编码方案取舍和实现做个简单介绍,有兴趣做进一步深入了解的读者可以参见 3GPPTS38.212 和文献[60]。