热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

5G新空口关键技术之信道编码

信道编码概念  信道编码过程包括添加循环冗余校验码(CRC,CyclicRedundancyCheck)、码块分割(Code

信道编码
概念
  信道编码过程包括添加循环冗余校验码(CRC,Cyclic Redundancy Check)、码块分割(Code Block Segmentation)、纠错编码Forward Error CorrectingCoding)、速率适配(Rate Matching)、码块连接(Code Block Concatenation)、数据交织(Interleave)、数据加扰(Scrambling)等组成部分。其中纠错编码 最重要。纠错编码是通过尽可能小的冗余开销确保接收端能自动地纠正数据传输中所发生的差错。在同样的误码率下,所需要的开销越小,编码的效率也就越高。

Turbo、LDPC、Polar编码比较
  Turbo
  为了达到香农公式所定义的信道容量的极限,各种信道编码技术称为研究的热点。其中Turbo 码的性能优异,可以非常逼近香农理论的极限。在 3G 和 4G 中广泛使用。Turbo 码编码器基本原理如图1 所示。其编码器的结构包括两个并联的相同的递归系统卷积码编码器(Recursive Systematic Convolutional Code),二者之间用一个内部交织器(Interleaver)分隔。编码器 1 直接对信源的信息序列分组进行编码,编码器 2 为经过交织器交织后的信息序列分组进行编码。信息位一路直接进入复用器,另一路经两个编码器后得到两个信息冗余序列,再经恰当组合,在信息位后通过信道。
在这里插入图片描述
在这里插入图片描述
Turbo码解码的迭代次数越多,其解码的准确度也越高,但是在到达某个迭代次数的时候,误码率会趋于稳定。
  Turbo总结
  Turbo 码的编码相对简单,它在码长、码率的灵活度和码率兼容自适应重传等方面有一些优势。但是其解码器由于需要迭代解码,相对比较复杂,需要较大的计算能力,并且解码时由于迭代的需要会产生时延。所以对于实时性要求很高的场合,Turbo 码的直接应用会受到一定限制。此外,Turbo 码采用次优的译码算法,有一定的错误平层。Turbo 码比较适合码长较长的应用,但是码长越长,其解码的复杂度和时延也越大,这就限制了它的实用性。总的来说,Turbo 码性能优异,编码构造比较简单,但是它的解码复杂度较高。该码是3G 和 4G 商用的关键技术之一,它的研究和应用已经十分成熟。

  LDPC
   LDPC是一种具有稀疏校验矩阵的线性分组纠错码,其特点是它的奇偶校验矩阵(H 矩阵)具有低密度。由于它的 H 矩阵具有稀疏性,因此产生了较大的最小距离(dmin),同时也降低了解码的复杂性。该码的性能同样可以非常逼近香农极限。已有研究结果表明,实验中已找到的最好 LDPC 码的性能距香农理论限仅相差 0.0045dB。
  与Turbo相比,LDPC的优势
  (1)LDPC 码的解码可以采用基于稀疏矩阵的低复杂度并行迭代解码算法,运算量要低于 Turbo 码解码算法。并且由于结构并行的特点,在硬件实现上比较容易,解码时延小。因此更适合于高速率和大文件包的情况。
  (2)LDPC 码的码率可以任意构造,有更大的灵活性。
  (3)LDPC 码具有更低的错误平层,可以应用于有线通信、深空通信以及磁盘存储业等对误码率要求非常高的场合。
  目前,LDPC 码已应用于 802.11n、802.16e、DVB-S2 等通信系统中。在 3GPP R15 的讨论过程中,全球多家公司在统一的比较准则下达成共识,将 LDPC 码确定为 5G eMBB 场景数据信道的编码方案。
  Polar
  它是基于信道极化理论提出的一种线性分组码,是针对二元对称信道(BSC,Binary Symmetric Channel)的严格构造码。理论上,它在较低的解码复杂度下能够达到理想信道容量且无误码平层,而且码长越大,其优势就越明显。Polar 码是目前为止唯一能够达到香农极限的编码方法。
  Polar工作原理
  包括信道组合、信道分解和信道极化 3 部分,其中,信道组合和信道极化在编码时完成,信道分解在解码时完成。Polar 编码理论的核心是信道极化理论。其原理过程如图3所示,它的编码是通过以反复迭代的方式对信道进行线性的极化转换来实现的。
在这里插入图片描述
  Polar选择那部分趋于完全无噪声比特信道发送信源输出的信息比特,而在容量为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 码较好地平衡了性能和复杂性,在中短码长的情形下比较有优势。它的码率调整机制颗粒度很精细,即它的信息块长度可以按比特增减。此外,它的复杂度、吞吐量、解码时延也都具有较好的指标。

  5G NR中的信道编码(R15)
  在 5G NR 中,信道编码的操作对象主要是传输信道(TrCH)和控制信息的数据块。3GPP 在 R15 中定义的各个传输信道和控制信息所采用的信道编码详细情况见表1 和表 2。
在这里插入图片描述
  5G NR 对数据信道采用的是 Quasi-Cyclic LDPC 码,并且为了在 HARQ 协议中使用而采用了速率匹配(Rate-Compatible)的结构。控制信息部分在有效载荷(Payload)大于 11bit 时采用了 Polar 码。当有效载荷小于等于 11bit 时,信道编码采用的是 Reed-Muller 码。

  传输信道编码
  传输信道编码的过程如下图4所示。
在这里插入图片描述
  添加 CRC 是通过在数据块后增加 CRC 校验码使得接收端能够检测出接收的数据是否有错。CRC 校验码块的大小取决于传输数据块的大小,对于大于 3824bit 的传输数据块,校验码采用了 24-bit CRC;对于小于等于 3824bit的传输数据块,采用的则是 16-bit CRC。在接收端,通过判断所接收数据是否有错误,再通过 HARQ 协议决定是否要求发送端重发数据。
  码块分割是把超过一定大小的传输数据块切割成若干较小的数据块,分开进行后续的纠错编码,分割后的数据块会分别计算并添加额外的 CRC 校验码。
  信道编码采用了 Quasi-cyclic LDPC 码。
  速率匹配的目的是把经过信道编码的比特数量通过调整,适配到对应的所分配的PDSCH 或 PUSCH 资源(所承载的比特数量)上。
  速率匹配输出的码块按顺序级联后即可进行调制进而经由发射机发送。

  控制信道编码
  上下行控制信道都采用了Polar码。
  上行
  上行控制信息UCI的整个信道编码过程如下图5所示。
在这里插入图片描述
  首先,对待传输的控制信息进行码块分割和添加码块 CRC 校验码。信道纠错编码采用了 Polar 码。速率匹配则把经过信道编码的数据从速率上匹配到所分配到的物理信道资源上。码块级联则把数据块按顺序连接起来,然后通过调制发送。
  下行
  下行控制信息(DCI)的整个信道编码过程如图 6 所示。
在这里插入图片描述
  首先,对待传输的控制信息添加 CRC 校验码。随后经过加扰,加扰序列采用的是终端无线网络临时识别号(RNTI,Radio Network Temporary Identity),这样做的目的是使得接收侧(终端)可以通过 CRC 校验码和加扰序列同时得知数据的正确性以及本终端是不是该信息的正确接收方,从而减少了需要通过PDCCH 发送的比特数。信道纠错编码采用了 Polar 码。速率匹配则把经过信道编码的数据从速率上匹配到所分配到的物理信道资源上,后续数据块即可按顺序进行 QPSK 调制进而由发射机发送。
参考文档


推荐阅读
  • Python处理Word文档的高效技巧
    本文详细介绍了如何使用Python处理Word文档,涵盖从基础操作到高级功能的各种技巧。我们将探讨如何生成文档、定义样式、提取表格数据以及处理超链接和图片等内容。 ... [详细]
  • 利用决策树预测NBA比赛胜负的Python数据挖掘实践
    本文通过使用2013-14赛季NBA赛程与结果数据集以及2013年NBA排名数据,结合《Python数据挖掘入门与实践》一书中的方法,展示如何应用决策树算法进行比赛胜负预测。我们将详细讲解数据预处理、特征工程及模型评估等关键步骤。 ... [详细]
  • 实用正则表达式有哪些
    小编给大家分享一下实用正则表达式有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下 ... [详细]
  • 本文将详细介绍如何在没有显示器的情况下,使用Raspberry Pi Imager为树莓派4B安装操作系统,并进行基本配置,包括设置SSH、WiFi连接以及更新软件源。 ... [详细]
  • 本文探讨了如何利用HTML5和JavaScript在浏览器中进行本地文件的读取和写入操作,并介绍了获取本地文件路径的方法。HTML5提供了一系列API,使得这些操作变得更加简便和安全。 ... [详细]
  • 本文介绍如何使用 Android 的 Canvas 和 View 组件创建一个简单的绘图板应用程序,支持触摸绘画和保存图片功能。 ... [详细]
  • 中科院学位论文排版指南
    随着毕业季的到来,许多即将毕业的学生开始撰写学位论文。本文介绍了使用LaTeX排版学位论文的方法,特别是针对中国科学院大学研究生学位论文撰写规范指导意见的最新要求。LaTeX以其精确的控制和美观的排版效果成为许多学者的首选。 ... [详细]
  • 采用IKE方式建立IPsec安全隧道
    一、【组网和实验环境】按如上的接口ip先作配置,再作ipsec的相关配置,配置文本见文章最后本文实验采用的交换机是H3C模拟器,下载地址如 ... [详细]
  • 本题探讨了在大数据结构背景下,如何通过整体二分和CDQ分治等高级算法优化处理复杂的时间序列问题。题目设定包括节点数量、查询次数和权重限制,并详细分析了解决方案中的关键步骤。 ... [详细]
  • Coursera ML 机器学习
    2019独角兽企业重金招聘Python工程师标准线性回归算法计算过程CostFunction梯度下降算法多变量回归![选择特征](https:static.oschina.n ... [详细]
  • 本文探讨了如何在 F# Interactive (FSI) 中通过 AddPrinter 和 AddPrintTransformer 方法自定义类型(尤其是集合类型)的输出格式,提供了详细的指南和示例代码。 ... [详细]
  • 本文介绍如何从字符串中移除大写、小写、特殊、数字和非数字字符,并提供了多种编程语言的实现示例。 ... [详细]
  • 深入解析Java虚拟机(JVM)架构与原理
    本文旨在为读者提供对Java虚拟机(JVM)的全面理解,涵盖其主要组成部分、工作原理及其在不同平台上的实现。通过详细探讨JVM的结构和内部机制,帮助开发者更好地掌握Java编程的核心技术。 ... [详细]
  • 在PHP后端开发中遇到一个难题:通过第三方类文件发送短信功能返回的JSON字符串无法解析。本文将探讨可能的原因并提供解决方案。 ... [详细]
  • 在编译BSP包过程中,遇到了一个与 'gets' 函数相关的编译错误。该问题通常发生在较新的编译环境中,由于 'gets' 函数已被弃用并视为安全漏洞。本文将详细介绍如何通过修改源代码和配置文件来解决这一问题。 ... [详细]
author-avatar
风之伤ASH
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有