超能课堂(137):5G信道编码之争
前一段时间,第五代移动通信网络5G(IMT-2020)在中国发生了一件大事情,祸起于各大问答平台,矛盾一致指向了联想的“不爱国行为”——在确认5G信道编码标准时,没有把票投给华为的Polar码。后面经过自媒体肆意编造后,版本越传越邪乎,似乎一个通信技术确认的背后充满了内幕,为3GPP严谨的技术制定蒙上了阴影。同一时间,什么5G长码、短码、信道编码、控制编码等专业词汇一股脑地塞给我们,让吃瓜群众试图还原事件真相充满了难度,接下曾经是通信人的小编给大家理清楚其中的技术细节。
3GPP作为全球通信标准的主要制定方,每个标准的确定都是经过反复讨论、验证以及严格审查以确保其可实现性。为了确保标准按进度完成,3GPP下面分为RAN、SA以及CT三大领域工作组,各自负责不同各任务,RAN主要负责无线接入网络相关的内容,SA主要负责业务和系统概念等相关的内容,CT负责核心网和终端等相关的内容,而且还会在三大工作组下再细分几个工作组。
其中RAN1工作组负责无线接入网物理层设计,其中就包括信道编码。信道编码也叫差错控制编码,可以说是每一代移动通信技术中的核心要素,是所有现代通信系统的基石。它承担起数据纠错功能,防止你手机发送的是“不行”,而在电磁波传输过程由于各种干扰导致数据出现丢失,到了别人手机就变成了“行”,这样的误会可就大了,因此移动通信系统普遍引入信道编码技术。
那么长短码又是什么?
其实这里面有一个天大的误会,主要是当时中兴提出了一个混合信道编码方案R1-1610607,提出同时使用LDPC+Polar编码,此后华为也提过类似的方案R1-1610805。以数据信道数据块大小分为长码块和短码块,长码块用LDPC,短码块用Polar,但最终未被主席会所接纳。
又因为信道编码里头还划分了数据信道编码以及控制信道编码,由于数据通常码长比较长,而控制码长非常短,不明所以然的人就误以为长码就是数据信道编码,而短码是控制信道编码,其实这是一种误读的,其实长短码都是用于描述数据信道编码。
那么LDPC、Polar、Turbo三雄争霸又是什么情况?
信道编码采用谁家的方案,其实不单单体现国与国之间的较量,其实对于我们消费者来说也是有密切关系,信道编码方案的优势、成熟程度最终会对终端基带的复杂度、成本造成重大影响。而且最终某一个信道编码方案成为5G标准方案,谁家拥有该专利越多,最后从中收取的专利费用就越多,这个就是涉及到商业利益互博了,占大头的还能掌握住5G标准的大权,这个参考高通在CDMA制式上的超强控制能力,以及收专利费收到手软的例子。
在制定5G标准过程中,经过前期的较量,众多编码方案经过讨论、考核后,只剩下三个比较有前途的编码,分别是法国电信的Turbo code、美国高通主推的LDPC Code,还有来自中国华为主推的Polar Code。而这三者都有一个共同点,那就是非常接近香农极限。
1948年Claude Shannon提出了通信领域非常重要的香农定理,揭示了信道信息传送速率的上限(比特每秒)和信道信噪比及带宽的关系,而且存在一个上限问题,还可以通过信道编码的方式来实现更可靠通信。
通信系统框架图
随着我们对于网速要求越来越高,通信人不断在探索更加接近香农极限的信道编码,其中比较优秀的方案成功突围,成为5G候选标准之一。
Turbo码,涡轮码
Turbo码的诞生也很神奇,发明它的人却不是通信行业的工程师,而是两名来自法国电机工程师C.Berrou和A.Glavieux,使用了迭代译码的办法解决了困扰通信人已久的计算复杂性问题,开创了全新的通信时代,这时候原本与香农极限相差2-3dBA,突然一下子就进入到0.1-0.01dBA的水平。
Turbo码很快成为了3G、4G移动通信技术中采用的编码技术,但它的缺点很明显,由于它采用了两个分量译码器之间进行迭代译码,解码时长上要高于其他方案,这个对于5G愿景中超低时延要求不符合,很快就淡出考虑范围之内。一种编码用三代的愿望就此落空了。
LDPC码,低密度奇偶校验码
最早在1963年由美国MIT的Robert Gallager在博士论文《Low Density Parity Check Codes》中提出,不过你可知道Robert Gallager师承何人?正正是前面提及开创了《信息论》与香农定理的Claude Shannon。
但LDPC当时缺乏性能足够强大的CPU来支持大规模并行运算,受到技术限制未发展起来。但金子终会发光的,直到Turbo码被商用后,再度被通讯学家重新提及,发现其优势明显,很多行业都进行过一场轰轰烈烈的攻关研究,用途极为广泛,你看现在很多WiFi标准、SSD固态硬盘上已经应用上这种编码。
LDPC Tanner图
LDPC利用校验矩阵的稀疏性,使得译码复杂度只与码长成线性关系,在长码长的情况下仍然可以有效的进行译码,因而具有更简单的译码算法。由于LDPC可以使用高效的并行译码构架,其译码器在硬件实现复杂度和功耗方面均优于Turbo码,在利用计算机找到最优秀的LDPC码,其极限性能距香农理论限已经缩小到0.0045dB水平。
Polar码,极化码
相比于Turbo码、LDPC码有悠久历史,极化码显得相当年轻,土耳其Erdal Arikan在2008年最先通过研究信道极化现象提出了Polar Code极化码,更凑巧的是,LDPC码的发明人Robert Gallager就是Erdal Arikan的MIT导师,没想到一对师徒各自研究出可以影响5G移动网络格局的信道编码。
Erdal Arikan在讲解Polar码,
Polar码是首个能从数学上被严格证明达到信道容量极限的编码方案,比起Turbo码、LDPC码更加优秀。曾有通讯专家表示,如果不考虑通信系统设计问题,就单一的编码技术而已,Polar可以说已经走到了信道编码技术“尽头”,除非是找到比Polar码更低复杂程度的编码,更加容易译码,否则Polar码可能就是编码技术的巅峰。这也是华为看中了它的前景,在这方面花了大量时间、人力、物力去攻关Polar码技术,掌握大量的基础专利。虽然Polar码不是出自中国之手,但是由华为主导推动并发扬光大的。
然而Polar码虽然极具潜力和优秀,目前就编解码复杂性问题而言还是一道坎,只能利用Successive Cancelation List算法,以较低复杂度的代价实现最大似然译码,而且在硬件不适合并行计算。
其次就是Polar码实在是太年轻了,从来没有应用于实际通讯系统,不像Turbo码、LDPC码的广泛用于各种通信系统中,很多东西还是基于理论基础之上,落实到硬件设计、系统设计上是否还有问题就很难说一时半会能不能完成,毕竟5G网络商用时间迫在眉睫,整个产业链都在等标准的落实,如果不能快速成熟,Polar码可能会错过5G的黄金时代。
还原联想在5G信道编码投票上都干了些什么
这个可能要从三场关键性会议说起:
RAN1#86
当时的R1-16799提案就是LDPC要一统数据信道编码天下,而华为提议的R1-168040则是希望Polar码能作为数据信道的候选方案之一。不过这次会议就纯讨论、摸底性质,没有说必然的。
联想之所以会同意LDPC方案,这个可能和联想早期收购了摩托罗拉有很大关系,因为摩托罗拉早期以通信起家,更是造了全世界第一支手机,前期积累下大量的基础专利,其中就包括了LDPC的40个标准基础专利,被收购以后就落到了联想手中,为了公司利益着想,站队LDPC码是合情合理,根本不存在什么“不爱国”行为,况且当时在会议上,中兴、Vivo、小米、北京信威通信也都支持了LDPC。
RAN1#86b
这次还是继续上次的话题,到底用哪个作为信道编码,然而这次联想和摩托罗拉再提议LDPC成为5G数据信道唯一编码,支持名单非常豪华,清一色美欧日韩的大公司,而中国公司开始转向了华为的R1-1610850提案,就是长码用LDPC、短码用Polar。这次方案选择的火药味就更重了,联想成为一个“特殊”的存在,因此这个事情成了“联想不支持华为Polar事件”的导火索。
但是这场会议没有实质的方案被确立,大会一看,大家没有统一意见不是办法,最后组织了一场“否决投票”,你可以选择弃权,但如果你不赞同该方案,就一定要投否决票。
一共有三个方案:长码LDPC,短码Turbo;长码LDPC,短码Polar;长短码都用LDPC。而这三个方案投否决的公司分别有33、27、24家。这也是某些自媒体所说,因为联想的错误决定,导致华为的Polar码输给了高通的LDPC码,但明显这是不正确、断章取义的说法。
最后大会充分与各方沟通,决定数据信道编码中的长码使用LDPC码,短码待定。
RAN1#87
这一次华为的R1-1613307方案要求短码使用Polar获得55家公司的支持,其中就包含了联想和摩托罗拉,也就是说他们已经转变态度。而高通阵营的R1-1613342方案作出了让步,在特殊小码块以及控制信道下用Polar,其余短码仍用LDPC,支持者有31家。
那么华为赢了?很遗憾,3GPP会议并不是简单地投票,而是一个求同存异、协商的过程,要考虑站队的公司背后的市场分量以及技术实力,明显高通阵营更胜一筹,更有话语权。结局就是华为同意控制信道采用Polar码,短码仍采用LDPC码,这也算是华为辛苦得回来的收获吧。
至此,对于5G非独立组网的信道编码标准已经确立,LDPC成为了数据信道的唯一编码,而Polar成为控制信道编码。