多进制LDPC解码算法的优化方法、装置及解码器制造方法及图纸

技术编号:24804924 阅读:21 留言:0更新日期:2020-07-07 22:02
本发明专利技术实施例适用于编解码技术领域,提供了一种多进制LDPC解码算法的优化方法、装置及解码器,所述方法包括对多进制LDPC解码算法的时间复杂度进行的优化和对多进制LDPC解码算法的空间复杂度进行的优化。本实施例从计算时间和存储空间两方面入手,对多进制LDPC解码算法进行优化,可以降低解码算法的时间复杂度及空间复杂度,提高多进制LDPC解码算法的解码效率。

【技术实现步骤摘要】
多进制LDPC解码算法的优化方法、装置及解码器
本专利技术属于编解码
,特别是涉及一种多进制LDPC解码算法的优化方法、一种多进制LDPC解码算法的优化装置、一种解码器及一种计算机可读存储介质。
技术介绍
二进制LDPC(BinaryLow-Density-Parity-Check,简称B-LDPC)码是一种具有稀疏校验矩阵的分组纠错码,适用于几乎所有的信道,可以以码长指数的形式快速接近香农理论的信道容量,是编码界近年来的研究热点。然而,当码长相对较短时,B-LDPC码的性能会出现一定程度的降低。因此,有学者在B-LDPC码的基础上提出了多进制LDPC(Non-BinaryLow-Density-Parity-Check,简称NB-LDPC)码。相对于B-LDPC码,特别是当码长较短时,NB-LDPC码理论上具有更优异的性能,目前,NB-LDPC码也开始逐渐被相关行业采纳为编码标准。例如,北斗卫星导航系统(BDS)。但是,NB-LDPC码的应用也带来了更为复杂的解码算法。总体而言,NB-LDPC解码算法是一种基于置信度传播的迭代算法,常见的包括基本的置信度传播算法(BeliefPropagation,BP)、基于快速傅里叶变换的置信度传播算法(FFT-BP)和扩展最小和算法(ExtendedMinimumSum,EMS)等。如图1所示,是现有技术中NB-LDPC迭代解码算法的流程示意图。该流程包括如下步骤:(1.1)初始化:初始化符号置信度,设置最大迭代次数等;(1.2)变量节点更新(又称为水平更新或后向更新):利用属于同一校验节点下的其他变量节点的信息更新当前变量节点的置信度;(1.3)校验节点更新(又称垂直更新或前向更新),利用属于同一变量节点的其他校验节点的信息更新当前校验节点的置信度;(1.4)符号判决:选择置信度最大的符号输出;(1.5)校验计算:对输出的符号进行校验,若通过校验,则解码成功,否则重复步骤(1.2)和(1.3),继续进行迭代直至迭代次数超过设置的最大迭代次数。按照上述流程,采用BP或FFT-BP等算法可以获得NB-LDPC码最优的解码性能,但其解码的时间和空间复杂度均很高,而采用EMS算法则可以在不明显降低解码性能的情况下大幅降低解码的时间和空间复杂度。因而EMS算法成为了普遍采用的NB-LDPC解码算法。尽管如此,基于EMS的NB-LDPC解码算法相对于常用的B-LDPC解码算法仍然过于复杂,因此需要进一步改进。
技术实现思路
有鉴于此,本专利技术实施例提供了一种多进制LDPC解码算法的优化方法、装置及解码器,以解决现有技术中多进制LDPC解码算法时间和空间复杂度较高的问题。本专利技术实施例的第一方面提供了一种多进制LDPC解码算法的优化方法,包括对多进制LDPC解码算法的时间复杂度进行的优化和对多进制LDPC解码算法的空间复杂度进行的优化,其中,所述对多进制LDPC解码算法的时间复杂度进行的优化包括:逐行或逐列读取用于校验节点更新的稀疏校验矩阵,所述稀疏校验矩阵按行存储有原始稀疏矩阵中各行的非0元素及其列序号和行分隔符,以及按列存储有所述原始稀疏矩阵中各列的非0元素及其行序号和列分隔符;以及,根据两个有序的置信度输入队列确定当前的置信度虚拟矩阵;基于所述置信度虚拟矩阵,对所述多进制LDPC码的校验节点进行更新,生成置信度输出队列,所述置信度输出队列中各个元素的符号互不相同;所述对多进制LDPC解码算法的空间复杂度进行的优化包括:依据预设比特数,将所述多进制LDPC解码算法中各个码对应不同符号的置信度量化为有限位数;以及,针对有限域中元素的乘除法操作,依据预置的元素-幂次表和幂次-元素表,将所述乘除法操作转换为加减法操作。本专利技术实施例的第二方面提供了一种多进制LDPC解码算法的优化装置,包括:稀疏校验矩阵读取模块,用于逐行或逐列读取用于校验节点更新的稀疏校验矩阵,所述稀疏校验矩阵按行存储有原始稀疏矩阵中各行的非0元素及其列序号和行分隔符,以及按列存储有所述原始稀疏矩阵中各列的非0元素及其行序号和列分隔符;校验节点更新模块,用于根据两个有序的置信度输入队列确定当前的置信度虚拟矩阵;基于所述置信度虚拟矩阵,对所述校验节点进行更新,生成置信度输出队列,所述置信度输出队列中各个元素的符号互不相同;置信度量化模块,用于依据预设比特数,将所述多进制LDPC解码算法中各个码对应不同符号的置信度量化为有限位数;有限域乘除法操作模块,用于针对有限域中元素的乘除法操作,依据预置的元素-幂次表和幂次-元素表,将所述乘除法操作转换为加减法操作。本专利技术实施例的第三方面提供了一种解码器,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述多进制LDPC解码算法的优化方法的步骤。本专利技术实施例的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述多进制LDPC解码算法的优化方法的步骤。与现有技术相比,本专利技术实施例包括以下优点:本专利技术实施例,通过优化稀疏校验矩阵的存储及读取方式、优化校验节点更新的搜索及排序方式,可以实现对解码算法的计算时间的优化,降低解码算法的时间复杂度;通过对多进制LDPC多个符号的置信度进行非均匀化量化,通过预置简单的元素-幂次表和幂次-元素表将有限域中的乘除法操作转换为加减法操作,可以实现对解码算法的存储空间的优化,降低解码算法的空间复杂度,相较于现有技术,通过上述对计算时间和对存储空间两方面的优化处理,可以显著地降低解码复杂度,提高解码效率。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1是现有技术中NB-LDPC迭代解码算法的流程示意图;图2是本专利技术一个实施例的一种多进制LDPC解码算法的优化方法的步骤流程示意图;图3是本专利技术一个实施例的稀疏校验矩阵的存储示意图;图4是本专利技术一个实施例的一种稀疏校验矩阵的逐行读取过程示意图;图5是本专利技术一个实施例的一种稀疏校验矩阵的逐列读取过程示意图;图6是本专利技术一个实施例的校验节点的搜索排序过程示意图;图7a是本专利技术一个实施例的第一次校验节点的搜索排序结果示意图;图7b是本专利技术一个实施例的第二次校验节点的搜索排序结果示意图;图7c是本专利技术一个实施例的最后一次校验节点的搜索排序结果示意图;图8是本专利技术一个实施例的有限域乘/除法的电路示意图;图9是本专利技术一个实施例的一种多进制LDPC解码算法的优化装置的示意图;图10是本专利技术一个实施例的一种解码器本文档来自技高网
...

【技术保护点】
1.一种多进制LDPC解码算法的优化方法,其特征在于,包括对多进制LDPC解码算法的时间复杂度进行的优化和对多进制LDPC解码算法的空间复杂度进行的优化,其中,/n所述对多进制LDPC解码算法的时间复杂度进行的优化包括:/n逐行或逐列读取用于校验节点更新的稀疏校验矩阵,所述稀疏校验矩阵按行存储有原始稀疏矩阵中各行的非0元素及其列序号和行分隔符,以及按列存储有所述原始稀疏矩阵中各列的非0元素及其行序号和列分隔符;以及,/n根据两个有序的置信度输入队列确定当前的置信度虚拟矩阵;基于所述置信度虚拟矩阵,对所述多进制LDPC码的校验节点进行更新,生成置信度输出队列,所述置信度输出队列中各个元素的符号互不相同;/n所述对多进制LDPC解码算法的空间复杂度进行的优化包括:/n依据预设比特数,将所述多进制LDPC解码算法中各个码对应不同符号的置信度量化为有限位数;以及,/n针对有限域中元素的乘除法操作,依据预置的元素-幂次表和幂次-元素表,将所述乘除法操作转换为加减法操作。/n

【技术特征摘要】
1.一种多进制LDPC解码算法的优化方法,其特征在于,包括对多进制LDPC解码算法的时间复杂度进行的优化和对多进制LDPC解码算法的空间复杂度进行的优化,其中,
所述对多进制LDPC解码算法的时间复杂度进行的优化包括:
逐行或逐列读取用于校验节点更新的稀疏校验矩阵,所述稀疏校验矩阵按行存储有原始稀疏矩阵中各行的非0元素及其列序号和行分隔符,以及按列存储有所述原始稀疏矩阵中各列的非0元素及其行序号和列分隔符;以及,
根据两个有序的置信度输入队列确定当前的置信度虚拟矩阵;基于所述置信度虚拟矩阵,对所述多进制LDPC码的校验节点进行更新,生成置信度输出队列,所述置信度输出队列中各个元素的符号互不相同;
所述对多进制LDPC解码算法的空间复杂度进行的优化包括:
依据预设比特数,将所述多进制LDPC解码算法中各个码对应不同符号的置信度量化为有限位数;以及,
针对有限域中元素的乘除法操作,依据预置的元素-幂次表和幂次-元素表,将所述乘除法操作转换为加减法操作。


2.根据权利要求1所述的方法,其特征在于,所述基于所述置信度虚拟矩阵,对所述多进制LDPC码的校验节点进行更新,生成置信度输出队列的步骤包括:
提取所述置信度虚拟矩阵的左上角第一个元素插入动态排序表;
识别所述动态排序表中的置信度最大值对应的目标元素,将所述目标元素插入置信度初始输出队列;
提取在所述置信度虚拟矩阵中所述目标元素的右侧元素和下方元素插入所述动态排序表;
依据所述动态排序表和所述置信度初始输出队列,生成置信度输出队列。


3.根据权利要求2所述的方法,其特征在于,所述提取在所述置信度虚拟矩阵中所述目标元素的右侧元素和下方元素插入所述动态排序表的步骤包括:
提取在所述置信度虚拟矩阵中所述目标元素的右侧元素和下方元素;
逐个判断所述右侧元素或所述下方元素对应的符号是否已在所述动态排序表或所述置信度初始输出队列中;
若所述右侧元素或所述下方元素对应的符号已在所述动态排序表或所述置信度初始输出队列中,则舍弃所述右侧元素或所述下方元素;
若所述右侧元素或所述下方元素对应的符号未在所述动态排序表及所述置信度初始输出队列中,则将所述右侧元素或所述下方元素插入所述动态排序表。


4.根据权利要求3所述的方法,其特征在于,所述依据所述动态排序表和所述置信度初始输出队列,生成置信度输出队列的步骤包括:
重复执行识别所述动态排序表中的置信度最大值对应的目标元素,将所述目标元素插入置信度初始输出队列,以及,提取在所述置信度虚拟矩阵中所述目标元素的右侧元素和下方元素插入所述动态排序表的步骤;
确定所述置信度初始输出队列中各个元素的符号;
舍弃所述符号相同的各个元素,直至在所述置信度初始输出队列中插入最后一个元素,生成置信度输出队列。


5.根据权利要求1所述的方法,其特征在于,所述依据预设比特数,将所述多进制LDP...

【专利技术属性】
技术研发人员:朱永辉沈梓荣文宇波高峰许祥滨
申请(专利权)人:泰斗微电子科技有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1