CN110311689A - 一种Polar码的译码方法、装置及计算机可读存储介质 - Google Patents

一种Polar码的译码方法、装置及计算机可读存储介质 Download PDF

Info

Publication number
CN110311689A
CN110311689A CN201810239686.8A CN201810239686A CN110311689A CN 110311689 A CN110311689 A CN 110311689A CN 201810239686 A CN201810239686 A CN 201810239686A CN 110311689 A CN110311689 A CN 110311689A
Authority
CN
China
Prior art keywords
decoding
information
value
information bits
polar
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201810239686.8A
Other languages
English (en)
Other versions
CN110311689B (zh
Inventor
王阳赟
郭瑞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ZTE Corp
Original Assignee
ZTE Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ZTE Corp filed Critical ZTE Corp
Priority to CN201810239686.8A priority Critical patent/CN110311689B/zh
Publication of CN110311689A publication Critical patent/CN110311689A/zh
Application granted granted Critical
Publication of CN110311689B publication Critical patent/CN110311689B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本发明公开了一种Polar码的译码方法,预先根据Polar译码位图进行离线构造位图表,所述位图表至少包含函数指针所使用的索引信息和函数在计算过程中所使用的输入Const表索引信息;根据Polar译码中信息比特的位数,确定出所述信息比特所包含信息的各组合方式;基于所述位图表,对所述信息比特所包含信息的各组合方式进行运算,确定出所述信息比特各信息组合方式所对应译码路径的PM值;保留PM值最低的译码路径,删除其它译码路径,记录所述译码路径删除过程中的状态转移关系,生成状态转移配置表;通过读取所述状态转移配置表中的数值,进行上级的Polar码或下级的Polar码的译码运算。本发明还公开了一种Polar码的译码器及计算机可读存储介质。

Description

一种Polar码的译码方法、装置及计算机可读存储介质
技术领域
本发明涉及译码技术,尤其涉及一种Polar码的译码方法、装置及计算机可读存储介质。
背景技术
Polar码于2008年由Arikan教授提出,是已知的唯一能够被严格证明“达到”信道容量的信道编码方法,其中,编码序列由冻结位,信息位和PC位三部分组成。目前,对于Polar码译码的方法是串行抵消列表(SCL,Successive Cancellation List)算法。该译码方法的原理是同时维护L条译码路径的信息,每条路径都会按照规则计算当前路径的路径度量(PM,Path Metrics)值。对于信息位要分别按照硬判结果为0和1计算PM值,这样L条路径就扩展为2L条,最后再挑选PM值较小的L条路径进行后面的译码。对于冻结位固定按0判决,如果是校验位按照所对应路径的信息位依照校验位编码方法得到的编码值判决。
PM的值是通过当前路径历史PM值和LLR的值和硬判结果计算得到,LLR值的计算对于不同的节点位置采用不同的公式计算得出。由于SCL译码是基于树形结构,而树的层数为log2N0,每一层的LLR都要依次计算,这就决定了只能进行串行译码。由于SCL译码方法一次判断一个Bit效率太低,因此也有人提出了改进算法,比如:2b-SCL,4b-SCL,改进后的算法是从一个点的最大似然扩展到多个点的最大似然,一次计算2个Bit或4个Bit以减少函数调用开销,代价是一次计算多个信息Bit时,PM计算量以及排序数据量会按照指数级别增大。
发明内容
有鉴于此,本发明实施例期望提供一种Polar码的译码方法、装置及计算机可读存储介质,能通过最后保留的译码路径的编码结果进行逆向编码得到译码结果,降低了译码过程中复杂度,通过一种函数方案实现Polar译码程序的高效性和通用性的兼顾。
为达到上述目的,本发明实施例提供了Polar码的译码方法,所述方法包括:
预先根据Polar译码位图进行离线构造位图表,所述位图表至少包含函数指针所使用的索引信息和函数在计算过程中所使用的输入Const表索引信息;
根据Polar译码中信息比特的位数,确定出所述信息比特所包含信息的各组合方式;
基于所述位图表,对所述信息比特所包含信息的各组合方式进行运算,确定出所述信息比特各信息组合方式所对应译码路径的PM值;
保留PM值最低的译码路径,删除其它译码路径,记录所述译码路径删除过程中的状态转移关系,生成状态转移配置表;
通过读取所述状态转移配置表中的数值,进行上级的Polar码或下级的Polar码的译码运算。
其中,上述删除其它译码路径,包括:
在CEVA平台对Polar码进行译码时,将双调排序原理与所述CEVA平台中的VCU指令相结合,对所述删除其它译码路径的操作连续使用排序操作。
其中,上述基于所述位图表,对所述信息比特所包含信息的各组合方式进行运算,确定出所述信息比特各信息组合方式所对应译码路径的PM值,包括:
将所述信息比特所包含信息的各组合方式填入所述译码树种对应的节点位置,通过调用对应的函数以及查询所述位图表,计算出所述信息比特包含信息中各组合方式所对应的u向量;
对所述u向量进行编码,获得对应的Beta向量;
将所述Beta向量与LLR值进行计算,确定出差分PM值;
将所述信息比特包含信息的各种组合方式所对应译码路径的PM值与所述差分PM值进行求和,确定出所述各译码路径最终的PM值。
其中,上述信息比特包含信息的各种组合方式所对应译码路径的PM值,包括:
将信息比特各组合方式所对应译码路径的编码遍历结果构造编码表,并对应于信息比特位将所述编码表导入计算函数中;
所述计算函数根据所述编码表,计算出信息比特各组合方式所对应译码路径的PM值。
其中,上述基于所述位图表,对所述信息比特所包含信息的各组合方式进行运算,包括:
在根据译码树进行译码的过程中,将译码树中左分支译码路径或右分支译码路径的运算使用汇编语言进行调用,根据预设的循环控制条件,完成所述译码树中左分支译码路径或右分支译码路径的运算。
其中,上述进行上级的Polar码或下级的Polar译码运算,包括:
将LLR数据按照符号位和绝对值分别进行存储运算,其中,符号位的翻转根据译码的实现指令进行异或操作,或累加操作。
本发明实施例提供了一种Polar码的译码器,所述装置包括:位图表模块,确定模块,计算模块,状态转移配置表模块,运算模块;其中,
位图表模块,用于预先根据Polar译码位图进行离线构造位图表,所述位图表至少包含函数指针所使用的索引信息和函数在计算过程中所使用的输入Const表索引信息;
确定模块,用于根据Polar译码中信息比特的位数,确定出所述信息比特所包含信息的各组合方式;
计算模块,用于基于所述位图表,对所述信息比特所包含信息的各组合方式进行运算,确定出所述信息比特各信息组合方式所对应译码路径的PM值;
状态转移配置表模块,用于保留PM值最低的译码路径,删除其它译码路径,记录所述译码路径删除过程中的状态转移关系,生成状态转移配置表;
调用模块,用于通过读取所述状态转移配置表中的数值,进行上级的Polar码或下级的Polar码的译码运算。
其中,上述状态转移配置表模块用于:所述译码器在CEVA平台对Polar码进行译码时,将双调排序原理与所述CEVA平台中的VCU指令相结合,对所述删除其它译码路径的操作连续使用排序操作。
其中,上述计算模块,用于将所述信息比特所包含信息的各组合方式填入所述译码树种对应的节点位置,通过调用对应的函数以及查询所述位图表,计算出所述信息比特包含信息中各组合方式所对应的u向量;
对所述u向量进行编码,获得对应的Beta向量;
将所述Beta向量与LLR值进行计算,确定出差分PM值;
将所述信息比特包含信息的各种组合方式所对应译码路径的PM值与所述差分PM值进行求和,确定出所述各译码路径最终的PM值
其中,上述计算模块,用于将信息比特各组合方式所对应译码路径的编码遍历结果构造编码表,并对应于信息比特位将所述编码表导入计算函数中;所述计算函数根据所述编码表,计算出信息比特各组合方式所对应译码路径的PM值。
其中,上述计算模块用于:在根据译码树进行译码的过程中,将译码树中左分支译码路径或右分支译码路径的运算使用汇编语言进行调用,根据预设的循环控制条件,完成所述译码树中左分支译码路径或右分支译码路径的运算。
其中,上述调用模块用于:将LLR数据按照符号位和绝对值分别进行存储运算,其中,符号位的翻转根据译码的实现指令进行异或操作,或累加操作。
本发明实施例提供了一种电子设备,所述电子设备包括:包括:处理器和用于存储能够在处理器上运行的计算机程序的存储器,
其中,所述处理器用于运行所述计算机程序时,执行:
预先根据Polar译码位图进行离线构造位图表,所述位图表至少包含函数指针所使用的索引信息和函数在计算过程中所使用的输入Const表索引信息;
根据Polar译码中信息比特的位数,确定出所述信息比特所包含信息的各组合方式;
基于所述位图表,对所述信息比特所包含信息的各组合方式进行运算,确定出所述信息比特各信息组合方式所对应译码路径的PM值;
保留PM值最低的译码路径,删除其它译码路径,记录所述译码路径删除过程中的状态转移关系,生成状态转移配置表;
通过读取所述状态转移配置表中的数值,进行上级的Polar码或下级的Polar码的译码运算。
本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现:
预先根据Polar译码位图进行离线构造位图表,所述位图表至少包含函数指针所使用的索引信息和函数在计算过程中所使用的输入Const表索引信息;
根据Polar译码中信息比特的位数,确定出所述信息比特所包含信息的各组合方式;
基于所述位图表,对所述信息比特所包含信息的各组合方式进行运算,确定出所述信息比特各信息组合方式所对应译码路径的PM值;
保留PM值最低的译码路径,删除其它译码路径,记录所述译码路径删除过程中的状态转移关系,生成状态转移配置表;
通过读取所述状态转移配置表中的数值,进行上级的Polar码或下级的Polar码的译码运算。
本发明公开了一种Polar码的译码方法、装置及计算机可读存储介质,预先根据Polar译码位图进行离线构造位图表,所述位图表至少包含函数指针所使用的索引信息和函数在计算过程中所使用的输入Const表索引信息;根据Polar译码中信息比特的位数,确定出所述信息比特所包含信息的各组合方式;基于所述位图表,对所述信息比特所包含信息的各组合方式进行运算,确定出所述信息比特各信息组合方式所对应译码路径的PM值;保留PM值最低的译码路径,删除其它译码路径,记录所述译码路径删除过程中的状态转移关系,生成状态转移配置表;通过读取所述状态转移配置表中的数值,进行上级的Polar码或下级的Polar码的译码运算。如此,通过消除Polar译码的冗余处理提高了处理效率,并利用Polar编码的规律减少了译码开发的复杂度,最后通过一种高效的函数方案提升了译码效率。
附图说明
图1为本发明实施例一Polar码的译码方法的流程示意图;
图2为本发明实施例二Polar码的译码器的组成结构示意图;
图3为本发明实施例二使用G-SSCL算法进行Polar码的译码实现流程。
具体实施方式
下面结合附图及具体实施例对本发明再作进一步详细说明。
实施例一
图1为本发明实施例Polar码的译码方法的流程示意图,如图1所示,本发明实施例Polar码的译码方法包括以下步骤:
步骤101:预先根据Polar译码位图进行离线构造位图表,所述位图表至少包含函数指针所使用的索引信息和函数在计算过程中所使用的输入Const表索引信息;
在实际应用中,常规的做法是对每一套Polar译码位图开发一个译码函数,或者写一个通用的代码,在执行时判断位图来调用不同的函数。而第一种方法的弊端在于函数众多,导致维护复杂;第二种方法在实施过程中效率低下。因此,本发明实施例基于Polar译码的位图相对固定,译码操作的函数调用顺序,以及函数入参都是有规律的特性,提出了离线构造位图表的方法,提前得到不同位图的函数个数,函数顺序和参数值,放在固定的Const表中,然后在循环中调用查表得到顺序在函数指针数组中对应的函数以及查表得到的参数,所有的时间都是在线的处理时间,因此,在不影响处理效率的情况下降低了执行的代码量和处理的复杂度。
步骤102:根据Polar译码中信息比特的位数,确定出所述信息比特所包含信息的各组合方式;
在实际应用中,由于译码树是树形结构,在每一级中的叶节点的个数一定是2的N次方,以2b-GSSCL为例,叶节点的个数可能为2,4,8,16,32,信息节点的个数可能为0、1、2,当信息节点个数为1的情况时,在译码树中各种叶节点中的位置可能是任意的,这样就会导致可能性非常多,当信息节点个数为2的时候,其在译码树中各种叶节点中的位置可能性会变的更复杂。在通过分析Polar码译码位图,并结合编码的可靠性原理后,本发明实施例提出了简化位图的方法:即当信息节点个数为1时,其必定出现在当前叶节点集合的最后1比特;当信息节点个数为2时,其中一个必定在叶节点集合的最后1比特,另一个只可能在倒数第二比特位或者中间的比特位。
其中,将信息比特的按照0,1进行组合,例如:对于2个信息比特,就有4中组合:00、01、10和11四种组合方式;对于1个信息比特,有2种组合:1和0;依此类推,根据Polar译码中信息比特的位数,确定出所述信息比特所包含的信息的各种组合方式,依次对各组合方式的信息比特进行后续的译码运算。
步骤103:基于所述位图表,对所述信息比特所包含信息的各组合方式进行运算,确定出所述信息比特各信息组合方式所对应译码路径的PM值;
其中,将所述信息比特所包含信息的各组合方式填入所述译码树种对应的节点位置,通过调用对应的函数以及查询所述位图表,计算出所述信息比特包含信息中各组合方式所对应的u向量;
对所述u向量进行编码,获得对应的Beta向量;
将所述Beta向量与LLR值进行计算,确定出差分PM值;
将所述信息比特包含信息的各种组合方式所对应译码路径的PM值与所述差分PM值进行求和,确定出所述各译码路径最终的PM值。
其中,所述信息比特包含信息的各种组合方式所对应译码路径的PM值,包括:
将信息比特各组合方式所对应译码路径的编码遍历结果构造编码表,并对应于信息比特位将所述编码表导入计算函数中;
所述计算函数根据所述编码表,计算出信息比特各组合方式所对应译码路径的PM值。
其中,在根据译码树进行译码的过程中,将译码树中左分支译码路径或右分支译码路径的运算使用汇编语言进行调用,根据预设的循环控制条件,完成所述译码树中左分支译码路径或右分支译码路径的运算。
在实际应用中,对每一种组合填入叶节点对应的位置得到u向量,然后对u向量进行Arikan编码得到Beta向量。编码后的结果结合LLR计算得到△PM值,跟当前路径对应的PM值求和后得到译码路径最终的PM值,在后续的译码过程中,根据所述PM值决定译码路径的保留或删除。
步骤104:保留PM值最低的译码路径,删除其它译码路径,记录所述译码路径删除过程中的状态转移关系,生成状态转移配置表;
其中,在CEVA平台对Polar码进行译码时,将双调排序原理与所述CEVA平台中的VCU指令相结合,对所述删除其它译码路径的操作连续使用排序操作。
在实际应用中,路径删减以后废弃的原有路径和新增的新路径的数据存储和维护对于Polar码译码过程起着至关重要的作用,因为,译码树的各级LLR值、编码结果都是跟路径相关的值,当涉及到路径删减后,均需要都将译码树中跟路径相关的值在内存中更新一遍,而其实现的代价也是巨大的,因此,本发明实施例通过引入状态转移配置表格,记录每次路径删减过程中状态转移关系,当需要进行上一级树序列的编码计算或者使用前一级LLR数据时,只要读取状态转移配置表格的值,结合CEVA的vpermute或者vgen系列指令,就可以高效进行状态前后的运算,从而避免了大量的内存拷贝操作。
步骤105:通过读取所述状态转移配置表中的数值,进行上级的Polar码或下级的Polar码的译码运算。
具体地,将LLR数据按照符号位和绝对值分别进行存储运算,其中,符号位的翻转根据译码的实现指令进行异或操作,或累加操作。
在实际应用中,分析资源位图进行的译码过程,对于左分支的计算有时候需要连续进行多次,类似的,对于从底层右分支开始的编码计算也会重复进行多次。如果使用C代码的进行递归调用,会导致函数调用开销以及汇编的GCU开销巨大,造成资源的浪费。本发明实施例将递归功能下沉到汇编,在汇编看来是两层循环嵌套,只要合理设计汇编嵌套中的循环控制条件,可以高效的完成处理操作。
而对于开头位的译码处理,其具备两个特殊点,一个是只有一条路径,所以PM的统一加减某个数对最后译码的判别没有影响,另一个是开头的位置大多是冻结位,只需要固定译码为0。基于此,本发明实施例对于译码开头使用单独的处理函数进行处理,可以提高译码效率,其中,函数处理的信息位数必须是2的幂次方,信息位个数应当在5个比特之内。
另一方面,位图相同的UE在同一个比特位置有统一的行为,虽然不同的UE的路径删减情况可能大相径庭,大部分操作也无法放在同一个Cycle中处理,同时,Polar的顺序译码逻辑导致了VCU纯计算之外还有大量的公共开销,本发明实施例提出了多UE并行处理,可以平摊这部分公共开销,及时地分先后进行循环处理,提升了的译码效率。
综上所述,本发明实施例提出的Polar码的译码方法、装置及计算机可读存储介质,预先根据Polar译码位图进行离线构造位图表,所述位图表至少包含函数指针所使用的索引信息和函数在计算过程中所使用的输入Const表索引信息;根据Polar译码中信息比特的位数,确定出所述信息比特所包含信息的各组合方式;基于所述位图表,对所述信息比特所包含信息的各组合方式进行运算,确定出所述信息比特各信息组合方式所对应译码路径的PM值;保留PM值最低的译码路径,删除其它译码路径,记录所述译码路径删除过程中的状态转移关系,生成状态转移配置表;通过读取所述状态转移配置表中的数值,进行上级的Polar码或下级的Polar码的译码运算。如此,通过最后保留的译码路径的编码结果进行逆向编码得到译码结果,降低了译码过程中复杂度,通过一种函数方案实现Polar译码程序的高效性和通用性的兼顾。
实施例二
图2为本发明实施例Polar码的译码器的组成结构示意图,如图2所示,本发明实施例译码器组成包括:位图表模块201,确定模块202,计算模块203,状态转移配置表模块204,运算模块205;其中,
位图表模块201,用于预先根据Polar译码位图进行离线构造位图表,所述位图表至少包含函数指针所使用的索引信息和函数在计算过程中所使用的输入Const表索引信息;
确定模块202,用于根据Polar译码中信息比特的位数,确定出所述信息比特所包含信息的各组合方式;
计算模块203,用于基于所述位图表,对所述信息比特所包含信息的各组合方式进行运算,确定出所述信息比特各信息组合方式所对应译码路径的PM值;
状态转移配置表模块204,用于保留PM值最低的译码路径,删除其它译码路径,记录所述译码路径删除过程中的状态转移关系,生成状态转移配置表;
调用模块205,用于通过读取所述状态转移配置表中的数值,进行上级的Polar码或下级的Polar码的译码运算。
其中,上述译码器在CEVA平台对Polar码进行译码时,所述状态转移配置表模块204用于:将双调排序原理与所述CEVA平台中的VCU指令相结合,对所述删除其它译码路径的操作连续使用排序操作。
其中,上述计算模块203,用于将所述信息比特所包含信息的各组合方式填入所述译码树种对应的节点位置,通过调用对应的函数以及查询所述位图表,计算出所述信息比特包含信息中各组合方式所对应的u向量;
对所述u向量进行编码,获得对应的Beta向量;
将所述Beta向量与LLR值进行计算,确定出差分PM值;
将所述信息比特包含信息的各种组合方式所对应译码路径的PM值与所述差分PM值进行求和,确定出所述各译码路径最终的PM值。
其中,上述计算模块203,用于将信息比特各组合方式所对应译码路径的编码遍历结果构造编码表,并对应于信息比特位将所述编码表导入计算函数中;所述计算函数根据所述编码表,计算出信息比特各组合方式所对应译码路径的PM值。
其中,上述计算模块203用于:在根据译码树进行译码的过程中,将译码树中左分支译码路径或右分支译码路径的运算使用汇编语言进行调用,根据预设的循环控制条件,完成所述译码树中左分支译码路径或右分支译码路径的运算。
其中,上述调用模块205用于:将LLR数据按照符号位和绝对值分别进行存储运算,其中,符号位的翻转根据译码的实现指令进行异或操作,或累加操作。
本发明实施例提供了一种电子设备,所述电子设备包括:包括:处理器和用于存储能够在处理器上运行的计算机程序的存储器,
其中,所述处理器用于运行所述计算机程序时,执行:
预先根据Polar译码位图进行离线构造位图表,所述位图表至少包含函数指针所使用的索引信息和函数在计算过程中所使用的输入Const表索引信息;
根据Polar译码中信息比特的位数,确定出所述信息比特所包含信息的各组合方式;
基于所述位图表,对所述信息比特所包含信息的各组合方式进行运算,确定出所述信息比特各信息组合方式所对应译码路径的PM值;
保留PM值最低的译码路径,删除其它译码路径,记录所述译码路径删除过程中的状态转移关系,生成状态转移配置表;
通过读取所述状态转移配置表中的数值,进行上级的Polar码或下级的Polar码的译码运算。
本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现:
预先根据Polar译码位图进行离线构造位图表,所述位图表至少包含函数指针所使用的索引信息和函数在计算过程中所使用的输入Const表索引信息;
根据Polar译码中信息比特的位数,确定出所述信息比特所包含信息的各组合方式;
基于所述位图表,对所述信息比特所包含信息的各组合方式进行运算,确定出所述信息比特各信息组合方式所对应译码路径的PM值;
保留PM值最低的译码路径,删除其它译码路径,记录所述译码路径删除过程中的状态转移关系,生成状态转移配置表;
通过读取所述状态转移配置表中的数值,进行上级的Polar码或下级的Polar码的译码运算。。
需要说明的是,上述位图表模块201,确定模块202,计算模块203,状态转移配置表模块204,运算模块205的功能实现可具体参考本发明实施例一中的关于Polar码的译码方法的相关描述,本发明实施例中不再赘述。
上述位图表模块201,确定模块202,计算模块203,状态转移配置表模块204,运算模块205可以由任何类型的易失性或非易失性存储设备、或者它们的组合来实现。其中,非易失性存储器可以是只读存储器(ROM,Read Only Memory)、可编程只读存储器(PROM,Programmable Read-Only Memory)、可擦除可编程只读存储器(EPROM,ErasableProgrammable Read-Only Memory)、电可擦除可编程只读存储器(EEPROM,ElectricallyErasable Programmable Read-Only Memory)、磁性随机存取存储器(FRAM,FerromagneticRandom Access Memory)、快闪存储器(Flash Memory)、磁表面存储器、光盘、或只读光盘(CD-ROM,Compact Disc Read-Only Memory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(RAM,Random Access Memory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(SRAM,Static Random Access Memory)、同步静态随机存取存储器(SSRAM,SynchronousStatic Random Access Memory)、动态随机存取存储器(DRAM,Dynamic Random AccessMemory)、同步动态随机存取存储器(SDRAM,Synchronous Dynamic Random AccessMemory)、双倍数据速率同步动态随机存取存储器(DDRSDRAM,Double Data RateSynchronous Dynamic Random Access Memory)、增强型同步动态随机存取存储器(ESDRAM,Enhanced Synchronous Dynamic Random Access Memory)、同步连接动态随机存取存储器(SLDRAM,SyncLink Dynamic Random Access Memory)、直接内存总线随机存取存储器(DRRAM,Direct Rambus Random Access Memory)。本发明实施例描述的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
在实际应用中,上述位图表模块201,确定模块202,计算模块203,状态转移配置表模块204,运算模块205可由位于基站中的中央处理器(CPU,Central Processing Unit)、微处理器(MPU,Micro Processor Unit)、数字信号处理器(DSP,Digital SignalProcessor)、或现场可编程门阵列(FPGA,Field Programmable Gate Array)等实现。
下面以General-SSCL算法为例,对本发明实施例所提出的Polar码的译码方法进行详细阐述,其中,在本发明实施例中,考虑计算代价和处理效率,选择一次计算的信息比特数最大为2,并行路径个数为8。
实施例三
本发明实施例所提出的G-SSCL算法,在对Polar码进行译码时,所计算的步长不是根据译码的比特位确定,而是根据信息比特位的位数进行确定,如此,可以维持计算复杂度的稳定可控,同时还可以减少函数调用的开销,特别在低码率时,函数调用的开销比使用固定步长的SCL方案有极大的改进。
图3为本发明实施例使用G-SSCL算法进行Polar码的译码实现流程,如图3所示,本发明实施例三Polar码的译码具体包括以下步骤:
步骤301:通过Polar译码位图确定G-SSCL的实现流程;
其中,预先根据Polar译码位图进行离线构造位图表,所述位图表至少包含函数指针所使用的索引信息和函数在计算过程中所使用的输入Const表索引信息;
在实际应用中,基于Polar译码的位图相对固定译码操作的函数调用顺序,以及函数入参均具有规律的特性,提出了离线构造位图表的方法,提前得到不同位图的函数个数,函数顺序和参数值,放在固定的Const表中。然后在循环中调用查表得到顺序在函数指针数组中对应的函数以及查表得到的参数,所有的时间都是在线的处理时间,因此,没有时间浪费,提高了译码效率。
步骤302:判断译码树当前层级是否满足译码处理的条件,如满足,执行步骤305,如不满足,执行步骤303;
步骤303:将当前级的LLR值按照F节点计算公式计算F节点的值,然后跳转到下一层级。从下一层级处理完成后根据返回的Beta1和LLR值执行步骤304;
其中,将所述信息比特所包含的信息的各种组合方式填入所述译码树种对应的节点位置,通过调用对应的函数以及查询所述位图表,计算出所述信息比特所包含的信息的各种组合方式所对应的u向量,所述u向量包含有下一层级处理完成后根据返回的Beta1和LLR值。
步骤304:根据输入的Beta1和LLR值按照G节点的计算公式计算G节点的值,然后跳转到下一层级,从下一级处理完成后根据返回的Beta2和输入的Beta1进行编码,输出Beta向量;
其中,所述Beta向量根据Beta=[Beta1^Beta2,Beta2]计算获得,所述据返回的Beta2和输入的Beta1进行编码可以是Arikan编码。
步骤305:将信息比特的按照0和1进行组合,确定出各组合方式所对应译码路径的PM值,保留PM值最低的译码路径,删除其它译码路径,记录所述译码路径删除过程中的状态转移关系,生成状态转移配置表;
其中,将信息比特各组合方式所对应译码路径的编码遍历结果构造编码表,并对应于信息比特位将所述编码表导入计算函数中;
所述计算函数根据所述编码表,计算出信息比特各组合方式所对应译码路径的PM值。
其中,在根据译码树进行译码的过程中,将译码树中左分支或右分支的译码路径的运算使用汇编语言进行调用,根据预设的循环控制条件,完成所述译码树中左分支或右分支的译码路径的运算。
在实际应用中,对每一种组合填入叶节点对应的位置得到u向量,然后对u向量进行Arikan编码得到Beta向量。编码后的结果结合LLR计算得到△PM值,跟当前路径对应的PM值求和后得到最终的PM值。将L条路径,其中,L表示并行度,是译码过程中同步保留译码路径的个数,所有的组合得到的最终PM值进行排序,选择PM值最小的路径进行保留,删除其他的路径,本发明实施例在代码的实现时提出了一种Trace的映射表以解决现有的常规方法中保留路径对应的u向量和Beta向量,并向上一级返回,如果发生路径删减需要同步更新历史的u向量和Beta向量,导致的效率低下以及资源消耗巨大的问题,避免了路径删减造成的数据频繁拷贝开销。
步骤306:通过读取所述状态转移配置表中的数值,进行上级或下级的Polar码的译码运算。
在实际应用中,分析资源位图进行的译码过程,对于左分支的计算有时候需要连续进行多次,类似的,对于从底层右分支开始的编码计算也会重复进行多次。如果使用C代码的进行递归调用,会导致函数调用开销以及汇编的GCU开销巨大,造成资源的浪费。本发明实施例将递归功能下沉到汇编,在汇编看来是两层循环嵌套,只要合理设计汇编嵌套中的循环控制条件,可以高效的完成处理操作。
而对于开头位的译码处理,其具备两个特殊点,一个是只有一条路径,所以PM的统一加减某个数对最后译码的判别没有影响,另一个是开头的位置大多是冻结位,只需要固定译码为0。基于此,本发明实施例对于译码开头使用单独的处理函数进行处理,可以提高译码效率,其中,函数处理的信息位数必须是2的幂次方,信息位个数应当在5个比特之内。
另一方面,位图相同的UE在同一个比特位置有统一的行为,虽然不同的UE的路径删减情况可能大相径庭,大部分操作也无法放在同一个Cycle中处理,同时,Polar的顺序译码逻辑导致了VCU纯计算之外还有大量的公共开销,本发明实施例提出了多UE并行处理,可以平摊这部分公共开销,及时地分先后进行循环处理,提升了的译码效率。
如上所述,本发明实施例提出的Polar码的译码方法、装置及计算机可读存储介质,预先根据Polar译码位图进行离线构造位图表,所述位图表中包含有函数指针所使用的索引信息以及函数在计算过程中所使用的输入Const表的索引信息;根据Polar译码中信息比特的位数,确定出所述信息比特所包含的信息的各种组合方式;将所述信息比特所包含的信息的各种组合方式,在译码树中对应的节点调用对应的函数以及查询所述位图表进行运算,确定出各组合方式所对应译码路径的PM值;保留PM值最低的译码路径,删除其它译码路径,记录所述译码路径删除过程中的状态转移关系,生成状态转移配置表;通过读取所述状态转移配置表中的数值,进行上级或下级的Polar码的译码运算。如此,通过最后保留的译码路径的编码结果进行逆向编码得到译码结果,降低了译码过程中复杂度,通过一种函数方案实现Polar译码程序的高效性和通用性的兼顾。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (14)

1.一种Polar码的译码方法,其特征在于,所述方法包括:
预先根据Polar译码位图进行离线构造位图表,所述位图表至少包含函数指针所使用的索引信息和函数在计算过程中所使用的输入Const表索引信息;
根据Polar译码中信息比特的位数,确定出所述信息比特所包含信息的各组合方式;
基于所述位图表,对所述信息比特所包含信息的各组合方式进行运算,确定出所述信息比特各信息组合方式所对应译码路径的PM值;
保留PM值最低的译码路径,删除其它译码路径,记录所述译码路径删除过程中的状态转移关系,生成状态转移配置表;
通过读取所述状态转移配置表中的数值,进行上级的Polar码或下级的Polar码的译码运算。
2.根据权利要求1所述的方法,其特征在于,所述删除其它译码路径,包括:
在CEVA平台对Polar码进行译码时,将双调排序原理与所述CEVA平台中的VCU指令相结合,对所述删除其它译码路径的操作连续使用排序操作。
3.根据权利要求1所述的方法,其特征在于,所述基于所述位图表,对所述信息比特所包含信息的各组合方式进行运算,确定出所述信息比特各信息组合方式所对应译码路径的PM值,包括:
将所述信息比特所包含信息的各组合方式填入所述译码树种对应的节点位置,通过调用对应的函数以及查询所述位图表,计算出所述信息比特包含信息中各组合方式所对应的u向量;
对所述u向量进行编码,获得对应的Beta向量;
将所述Beta向量与LLR值进行计算,确定出差分PM值;
将所述信息比特包含信息的各种组合方式所对应译码路径的PM值与所述差分PM值进行求和,确定出所述各译码路径最终的PM值。
4.根据权利要求3所述的方法,其特征在于,所述信息比特包含信息的各种组合方式所对应译码路径的PM值,包括:
将信息比特各组合方式所对应译码路径的编码遍历结果构造编码表,并对应于信息比特位将所述编码表导入计算函数中;
所述计算函数根据所述编码表,计算出信息比特各组合方式所对应译码路径的PM值。
5.根据权利要求1或3所述的方法,其特征在于,所述基于所述位图表,对所述信息比特所包含信息的各组合方式进行运算,包括:
在根据译码树进行译码的过程中,将译码树中左分支译码路径或右分支译码路径的运算使用汇编语言进行调用,根据预设的循环控制条件,完成所述译码树中左分支译码路径或右分支译码路径的运算。
6.根据权利要求1所述的方法,其特征在于,所述进行上级的Polar码或下级的Polar译码运算,包括:
将LLR数据按照符号位和绝对值分别进行存储运算,其中,符号位的翻转根据译码的实现指令进行异或操作,或累加操作。
7.一种Polar码的译码器,其特征在于,所述装置包括:位图表模块,确定模块,计算模块,状态转移配置表模块,运算模块;其中,
位图表模块,用于预先根据Polar译码位图进行离线构造位图表,所述位图表至少包含函数指针所使用的索引信息和函数在计算过程中所使用的输入Const表索引信息;
确定模块,用于根据Polar译码中信息比特的位数,确定出所述信息比特所包含信息的各组合方式;
计算模块,用于基于所述位图表,对所述信息比特所包含信息的各组合方式进行运算,确定出所述信息比特各信息组合方式所对应译码路径的PM值;
状态转移配置表模块,用于保留PM值最低的译码路径,删除其它译码路径,记录所述译码路径删除过程中的状态转移关系,生成状态转移配置表;
调用模块,用于通过读取所述状态转移配置表中的数值,进行上级的Polar码或下级的Polar码的译码运算。
8.根据权利要求7所述的译码器,其特征在于,所述状态转移配置表模块用于:所述译码器在CEVA平台对Polar码进行译码时,将双调排序原理与所述CEVA平台中的VCU指令相结合,对所述删除其它译码路径的操作连续使用排序操作。
9.根据权利要求7所述的译码器,其特征在于,所述计算模块,用于将所述信息比特所包含信息的各组合方式填入所述译码树种对应的节点位置,通过调用对应的函数以及查询所述位图表,计算出所述信息比特包含信息中各组合方式所对应的u向量;
对所述u向量进行编码,获得对应的Beta向量;
将所述Beta向量与LLR值进行计算,确定出差分PM值;
将所述信息比特包含信息的各种组合方式所对应译码路径的PM值与所述差分PM值进行求和,确定出所述各译码路径最终的PM值。
10.根据权利要求9所述的译码器,其特征在于,所述计算模块,用于将信息比特各组合方式所对应译码路径的编码遍历结果构造编码表,并对应于信息比特位将所述编码表导入计算函数中;所述计算函数根据所述编码表,计算出信息比特各组合方式所对应译码路径的PM值。
11.根据权利要求7所述的译码器,其特征在于,所述计算模块用于:在根据译码树进行译码的过程中,将译码树中左分支译码路径或右分支译码路径的运算使用汇编语言进行调用,根据预设的循环控制条件,完成所述译码树中左分支译码路径或右分支译码路径的运算。
12.根据权利要求7所述的译码器,其特征在于,所述调用模块用于:将LLR数据按照符号位和绝对值分别进行存储运算,其中,符号位的翻转根据译码的实现指令进行异或操作,或累加操作。
13.一种电子设备,其特征在于,所述电子设备包括:包括:处理器和用于存储能够在处理器上运行的计算机程序的存储器,
其中,所述处理器用于运行所述计算机程序时,执行权利要求1至6任一所述方法的步骤。
14.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至6任一所述方法的步骤。
CN201810239686.8A 2018-03-22 2018-03-22 一种Polar码的译码方法、装置及计算机可读存储介质 Active CN110311689B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810239686.8A CN110311689B (zh) 2018-03-22 2018-03-22 一种Polar码的译码方法、装置及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810239686.8A CN110311689B (zh) 2018-03-22 2018-03-22 一种Polar码的译码方法、装置及计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN110311689A true CN110311689A (zh) 2019-10-08
CN110311689B CN110311689B (zh) 2024-09-24

Family

ID=68073440

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810239686.8A Active CN110311689B (zh) 2018-03-22 2018-03-22 一种Polar码的译码方法、装置及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN110311689B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111294058A (zh) * 2020-02-20 2020-06-16 湖南遥昇通信技术有限公司 一种信道编码和纠错译码方法、设备以及存储介质
CN112087237A (zh) * 2020-09-15 2020-12-15 Oppo广东移动通信有限公司 数据处理方法、芯片及终端
CN112532252A (zh) * 2020-11-24 2021-03-19 深圳市大数据研究院 编码方法、译码方法、电子设备及存储介质
CN117874314A (zh) * 2024-03-13 2024-04-12 时粤科技(广州)有限公司 一种基于大数据处理的信息可视化方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017054164A1 (zh) * 2015-09-30 2017-04-06 华为技术有限公司 极化码的编译码方法及其装置
CN106803759A (zh) * 2016-12-27 2017-06-06 南京邮电大学 基于高斯构造的Polar码有效自适应译码方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017054164A1 (zh) * 2015-09-30 2017-04-06 华为技术有限公司 极化码的编译码方法及其装置
CN106803759A (zh) * 2016-12-27 2017-06-06 南京邮电大学 基于高斯构造的Polar码有效自适应译码方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
RAYIMBAEV, J: "Temperature and solvent effect on the thermodynamic equilibrium in the intramolecular transesterification process of ethyl 4-(4-hydroxyphenyl)-4-(2-hydroxyphenyl)-pentanoate", PRZEMYSL CHEMICZNY, vol. 92, no. 10, 15 January 2014 (2014-01-15) *
王美洁;郭锐;: "极化码低时延列表连续删除译码算法", 通信技术, no. 03, 10 March 2016 (2016-03-10) *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111294058A (zh) * 2020-02-20 2020-06-16 湖南遥昇通信技术有限公司 一种信道编码和纠错译码方法、设备以及存储介质
CN111294058B (zh) * 2020-02-20 2020-11-24 湖南遥昇通信技术有限公司 一种信道编码和纠错译码方法、设备以及存储介质
CN112087237A (zh) * 2020-09-15 2020-12-15 Oppo广东移动通信有限公司 数据处理方法、芯片及终端
CN112532252A (zh) * 2020-11-24 2021-03-19 深圳市大数据研究院 编码方法、译码方法、电子设备及存储介质
CN112532252B (zh) * 2020-11-24 2024-04-02 深圳市大数据研究院 编码方法、译码方法、电子设备及存储介质
CN117874314A (zh) * 2024-03-13 2024-04-12 时粤科技(广州)有限公司 一种基于大数据处理的信息可视化方法及系统
CN117874314B (zh) * 2024-03-13 2024-05-10 时粤科技(广州)有限公司 一种基于大数据处理的信息可视化方法及系统

Also Published As

Publication number Publication date
CN110311689B (zh) 2024-09-24

Similar Documents

Publication Publication Date Title
CN110311689A (zh) 一种Polar码的译码方法、装置及计算机可读存储介质
CN109063886B (zh) 一种异常检测方法、装置以及设备
CN109409518B (zh) 神经网络模型处理方法、装置及终端
CN107608970B (zh) 词性标注模型生成方法和装置
CN101803205A (zh) 近码字的ram列表解码
CN111898750A (zh) 基于进化算法的神经网络模型压缩方法及装置
US8751895B2 (en) Semiconductor memory device and decoding method
US20160285476A1 (en) Method for encoding and decoding of data based on binary reed-solomon codes
CN110991724A (zh) 用于预测风景区客流量的方法、系统及存储介质
US20220366315A1 (en) Feature selection for model training
CN111611811A (zh) 翻译方法、装置、电子设备及计算机可读存储介质
JP2020537363A (ja) 二次元コード誤り訂正復号化
CN113569061A (zh) 一种提高知识图谱补全精度的方法与系统
KR20190019798A (ko) 채널 편파 코드의 연속 제거 리스트 디코딩을 위한 효율적인 생존 메모리 아키텍처
CN112632051B (zh) 基于神经网络的数据库清理方法及系统
CN116519003B (zh) 一种路径规划方法、装置、电子设备及存储介质
CN114757244A (zh) 模型训练方法、装置、存储介质及设备
CN116361662A (zh) 机器学习模型的训练方法及量子网络设备性能预测方法
CN113869033B (zh) 融入迭代式句对关系预测的图神经网络句子排序方法
KR102456690B1 (ko) 강화학습에 기반한 gop 선택 방법 및 분석장치
CN114708110A (zh) 续保行为预测模型的联合训练方法、装置及电子设备
TW202226767A (zh) 應用於鍵樹的編碼方法、應用於鍵樹的解碼方法與電子裝置
CN111404558B (zh) 一种Polar码译码的方法、译码器及计算机存储介质
CN109753351A (zh) 一种限时任务处理方法、装置、设备及介质
CN117852730B (zh) 车辆流转预测方法、装置、计算机设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant