目录

  • 系统码和非系统码
  • 非系统polar码的编码方式
  • 系统polar码的编码方式
  • 性能分析

系统码和非系统码

按照差错控制编码的不同功能,可以将其分为检错码、纠错码和纠删码。检错码仅能检测误码;纠错码仅可纠正误码;纠删码则兼有纠错和检错能力,当发现不可纠正的错误时可以发出错误只是或者简单地删除不可纠正错误的信息段落。
按照信息码元和附加的监督码元之间的检验关系可以分为线性码和非线性码。 若信息码元与监督码元之间的关系为线性关系,即满足一组线性方程式,则称为线性码。反之,若两者不存在线性关系,则称为非线性码。
按照信息码元和监督码元之间的约束方式不同可以分为分组码和卷积码。 在分组码中,编码后的码元序列每n位分为一组,其中k个是信息码元,r个是附加的监督码元,r=n-k。监督码元仅与本码组的信息码元有关,而与其它码组的信息码元无关。卷积码则不然,虽然编码后序列也划分为码组,但监督码元不但与本组信息码元有关,而且与前面码组的信息码元也有约束关系。
按照信息码元在编码后是否保持原来的形式不变,可划分为系统码和非系统码。 在差错控制编码中,通常信息码元和监督码元在分组内有确定的位置,一般是信息码元集中在码组的前k位,而监督码元集中在后r=n-k位(有时两者倒过来放置)。在系统码中,编码后的信息码保持原样不变,而非系统码中信息码元则改变了原有的信号形式。系统码的性能大体上与非系统码相同,但是在某些卷积码中非系统码的系统优于系统码。优于非系统码中的信息位已“面目全非”,这对观察和译码都带来麻烦,因此很少应用。系统码的编码和译码相对比较简单些,因而得到广泛应用。
按照纠正错误的类型不同,可以分为纠正随机错误的码和纠正突发错误的码。 前者主要用于发生零星独立错误的信道,而后者则用于对付以突发错误为主的信道。
按照构造差错控制编码的数学方法来分类,可以分为代数码、几何码和算术码。 代数码建立在近世代数学基础上,是目前发展最为完善的编码。线性码是代数码的一个最重要的分支。
按照每个码元取值不同,可以分为二进制码和多进制码

非系统polar码的编码方式

由前一篇文章的介绍可知,polar码引入了克罗内克积和对称翻转操作计算得到的N阶编码矩阵:
F≜{1011}F \triangleq \begin{Bmatrix} 1 & 0 \\ 1 & 1 \end{Bmatrix} F≜{11​01​}
G≜F⨂n⋅BNG \triangleq F^{\bigotimes n} \cdot B_{N}G≜F⨂n⋅BN​
如果使用u1N=(u0,u1,u2,..,uN)u_{1}^{N}=(u_{0},u_{1},u_{2},..,u_{N})u1N​=(u0​,u1​,u2​,..,uN​)来代表输入编码器的序列,x1N=(x0,x1,x2,..,xN)x_{1}^{N}=(x_{0},x_{1},x_{2},..,x_{N})x1N​=(x0​,x1​,x2​,..,xN​)
从而可以得到非系统码的编码表达方式:
x1N=u1N⋅Gx_{1}^{N} =u_{1}^{N} \cdot Gx1N​=u1N​⋅G

系统polar码的编码方式

首先对polar码输入输出序列进行划分。

如果某一polar码的信息位集合为A(A⊆{1,2,...,N})A(A \subseteq \{1,2,...,N\})A(A⊆{1,2,...,N}),它的补集为ACA^{C}AC,因此我们可以把非系统编码的公式进行分解:
x=uA⋅GA+uAC⋅GACx =u_{A} \cdot G_{A} + u_{A^{C}} \cdot G_{A^{C}}x=uA​⋅GA​+uAC​⋅GAC​
上式中下标GAG_AGA​代表信息位AAA所构成的新矩阵。同理ACA^CAC的下标代表另一部分的矩阵。如果设定系统码的信息位集合为B(B \subseteq {1,2,…,N}),补集为,补集为,补集为B^{C}$,则码字 x=(xB,xBC)x=(x_{B},x_{B^C})x=(xB​,xBC​),我们又可以对公式进行进一步的划分:
xB=uA⋅GAB+uAC⋅GACBx_{B} =u_{A} \cdot G_{AB} + u_{A^{C}} \cdot G_{A^{C}B}xB​=uA​⋅GAB​+uAC​⋅GACB​
xBC=uA⋅GABC+uAC⋅GACBCx_{B^C} =u_{A} \cdot G_{AB^C} + u_{A^{C}} \cdot G_{A^{C}B^C}xBC​=uA​⋅GABC​+uAC​⋅GACBC​
GABG_{AB}GAB​等和GGG相关的子矩阵由元素G(i,j)G(i,j)G(i,j)构成,i∈Ai \in Ai∈A,j∈Bj \in Bj∈B。

根据系统码的定义,系统码码字的前半部分由信源比特构成,后半部分为冗余比特。

Arikan基于以上的推论得出,当AAA和BBB包含相同的元素且GABG_{AB}GAB​为可逆矩阵时,Polar码存在系统码形式。当已知待编码比特xBx_BxB​和冻结位信息uACu_{A^C}uAC​后,可以直接计算出:
uA=(xB−uACGACB)GAB−1u_{A} =(x_B-u_{A^C}G_{A^{C}B}) G_{AB}^{-1}uA​=(xB​−uAC​GACB​)GAB−1​
计算出uAu_{A}uA​后,在对xBCx_{B^C}xBC​进行计算,便可以完成编码后数据的映射。

性能分析

仿真测试证明在相同码率码长下,系统polar码和非系统polar码的误帧率基本一致,系统码的误码率要优于非系统码。

5G NR Polar码系统编码和非系统编码(二)相关推荐

  1. 5G NR Polar码简介(一)

    这里写目录标题 Polar码的基本原理 NR Polar码的设计 CA-Polar码 PC-CA Polar码 Distributed CRC Polar码 序列设计 Polar码的基本原理 土耳其毕 ...

  2. 5G NR LDPC码(2)—— 5G NR中的LDPC码标准化内容

    LDPC码由于可以达到更高的译码吞吐量和更低的译码时延,可以更好适应高数据速率业务的传输,从而替代LTE的Turbo码,被采纳为5G NR数据的编码方案. 1. 基图 (BG, Base Graph) ...

  3. 5G NR LDPC码(1)—— LDPC码设计原理

    5G NR中规定了控制消息和广播信道用Polar码,数据传输用LDPC码的方案. LDPC属于线性分组码,常用校验矩阵或者Tanner图来描述. 用校验矩阵来描述LDPC码,可以清晰的看到信息比特和校 ...

  4. 硬编码与非硬编码(软编码)区别

    在计算机程序中, 硬编码是指将可变变量用一个固定值来代替的方法, 使用这样方法,编译后,如果想更改词变量就变的非常困难.因此, 在大部分的程序语言中,可以将一个固定值定义为一个标记, 然后用这个特殊的 ...

  5. 5G为何采纳华为力挺的Polar码?一个通信工程师的大实话

    [转载]http://xinsheng.huawei.com/cn/index.php?app=forum&mod=Detail&act=index&id=3264791 Po ...

  6. 霍夫码编码(一种不等长,非前缀编码方式)

    霍夫曼编码是一种不等长非前缀编码方式,于1951年由MIT的霍夫曼提出. 用于对一串数字/符号编码获取最短的结果,获取最大的压缩效率. 特点:不等长.非前缀 等长式编码 等长编码,意思是对出现的元素采 ...

  7. 5G NR QC-LDPC简介(一)

    目录 什么是LDPC? 为什么5G采用LDPC编码 5G NR LDPC码的设计 QC-LDPC码 基图 矩阵散列 & PCM 码块分段 速率匹配 什么是LDPC? LDPC码即低密度奇偶校验 ...

  8. 计算机采用的编码机制是什么,编码机制

    编码是信息从一种形式或格式转换为另一种形式的过程,也称为计算机编程语言的代码简称编码.用预先规定的方法将文字.数字或其它对象编成数码,或将信息.数据转换成规定的电脉冲信号,这个方法就是编码机制. 中文 ...

  9. 用U盘启动WinPE全新安装原版XP系统--有关pe装系统

    刻录光驱挂掉以后,还有一个普通dvd光驱,装系统变得不那么容易了,暂时也不想买刻录光驱,研究了一下用winpe倒是一个方法,下了一个winPE制作向导,一步到位直接将u盘变成了启动盘(这其中唯一要注意 ...

最新文章

  1. 跟无闻学习GO Web 编程(四) -- bee 工具使用
  2. Android自我修炼之路(欢迎拍砖)
  3. 【文本描述增强】标准屏幕字段文本描述更改增强
  4. 使用windbg排查一个内存溢出的问题
  5. LeetCode-14 最长公共前缀
  6. IOS开发基础之绘图的样式
  7. Android如何在测试程序中删除被测应用私有的原始数据
  8. 地址栏 输入 参数 刷新参数丢失_小米11 Pro屏幕参数曝光:2K屏幕+120Hz刷新率
  9. .NET Framework 3.5 SP1的图表控件——Chart (转)
  10. 39. (附加)二叉树是不是平衡二叉树(C++版本)
  11. 织梦内容模型管理(人才招聘)
  12. python数据分析师面试题选
  13. Python爬虫学习之scrapy框架(一)爬取豆瓣图书榜
  14. BigDecimal中的大于等于、小于等于及加减乘除
  15. 机房动环监控解决方案!
  16. SpringCloud-创建服务消费者-Feign方式(附代码下载)
  17. robo3T-操作MongoDB数据库常用命令
  18. 基于STM32F407标准库串口DMA+空闲中断
  19. echarts修改数据视图格式
  20. IBM SPSS Modeler 14.1下载安装及注册详细教程

热门文章

  1. BAT 字符串大小写转换
  2. QPython+uiautomator2安卓手机自动化脚本编写
  3. 100项世界上鲜为人知的事
  4. input验证邮箱 css,jquery验证邮箱格式并显示提交按钮
  5. 小米max3支持html吗,小米Max3这款手机是否有OTG功能,支持OTG鼠标和U盘吗?
  6. 英国脑科学领域_来自英国A级算法崩溃的数据科学家的4课
  7. win7锁定计算机自动关机,windows7怎么设置电脑自动关机_win7如何自动关机
  8. thymeleaf引用图片_thymeleaf显示图片(转)
  9. 修改百分浏览器(centbrowser)、谷歌和火狐浏览器默认字体的方法
  10. 深富策略:锂电光伏崛起 成长赛道再度回归