首页 专利交易 科技果 科技人才 科技服务 国际服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

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

买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!

申请/专利权人:中兴通讯股份有限公司

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

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

全文数据:一种Polar码的译码方法、装置及计算机可读存储介质技术领域本发明涉及译码技术,尤其涉及一种Polar码的译码方法、装置及计算机可读存储介质。背景技术Polar码于2008年由Arikan教授提出,是已知的唯一能够被严格证明“达到”信道容量的信道编码方法,其中,编码序列由冻结位,信息位和PC位三部分组成。目前,对于Polar码译码的方法是串行抵消列表SCL,SuccessiveCancellationList算法。该译码方法的原理是同时维护L条译码路径的信息,每条路径都会按照规则计算当前路径的路径度量PM,PathMetrics值。对于信息位要分别按照硬判结果为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,ReadOnlyMemory、可编程只读存储器PROM,ProgrammableRead-OnlyMemory、可擦除可编程只读存储器EPROM,ErasableProgrammableRead-OnlyMemory、电可擦除可编程只读存储器EEPROM,ElectricallyErasableProgrammableRead-OnlyMemory、磁性随机存取存储器FRAM,FerromagneticRandomAccessMemory、快闪存储器FlashMemory、磁表面存储器、光盘、或只读光盘CD-ROM,CompactDiscRead-OnlyMemory;磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器RAM,RandomAccessMemory,其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器SRAM,StaticRandomAccessMemory、同步静态随机存取存储器SSRAM,SynchronousStaticRandomAccessMemory、动态随机存取存储器DRAM,DynamicRandomAccessMemory、同步动态随机存取存储器SDRAM,SynchronousDynamicRandomAccessMemory、双倍数据速率同步动态随机存取存储器DDRSDRAM,DoubleDataRateSynchronousDynamicRandomAccessMemory、增强型同步动态随机存取存储器ESDRAM,EnhancedSynchronousDynamicRandomAccessMemory、同步连接动态随机存取存储器SLDRAM,SyncLinkDynamicRandomAccessMemory、直接内存总线随机存取存储器DRRAM,DirectRambusRandomAccessMemory。本发明实施例描述的存储器旨在包括但不限于这些和任意其它适合类型的存储器。在实际应用中,上述位图表模块201,确定模块202,计算模块203,状态转移配置表模块204,运算模块205可由位于基站中的中央处理器CPU,CentralProcessingUnit、微处理器MPU,MicroProcessorUnit、数字信号处理器DSP,DigitalSignalProcessor、或现场可编程门阵列FPGA,FieldProgrammableGateArray等实现。下面以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译码程序的高效性和通用性的兼顾。以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

权利要求: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任一所述方法的步骤。

百度查询: 中兴通讯股份有限公司 一种Polar码的译码方法、装置及计算机可读存储介质

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。