一种译码方法、译码器、电子设备及存储介质与流程

摘要: 本发明涉及数据存储,具体涉及一种译码方法、译码器、电子设备及存储介质。背景技术:1、低密度奇偶校验码(lowdensityparitycheckcode,ldp...
一种译码方法、译码器、电子设备及存储介质与流程

本发明涉及数据存储,具体涉及一种译码方法、译码器、电子设备及存储介质。

背景技术:

1、低密度奇偶校验码(low density parity check code,ldpc)因其接近香农限的纠错性能和良好的硬件实现性,成为高密度闪存的关键纠错方案。ldpc的译码核心是置信传播算法(belief propagation,bp),bp算法的理论性能接近香农限。然而,bp算法涉及复杂的非线性运算,导致计算复杂度过高,难以满足高吞吐、低功耗的硬件实现需求。当前,采用最小和算法(min-sum algorithm,msa)简化消息更新规则,以降低计算复杂度,但msa算法的简化牺牲了部分译码精度,其性能与bp算法存在显著差距。

技术实现思路

1、本发明提供了一种译码方法、译码器、电子设备及存储介质,以解决在计算复杂度可控的前提下,难以提升ldpc译码的译码精度和纠错性能的问题。

2、第一方面,本申请提供了一种译码方法,该方法包括:

3、初始化迭代次数,根据预设译码算法对待译码数据进行译码,得到更新值,并将更新值与当前已修正值进行比较,根据比较结果得到不同数据分层下的待修正值;

4、根据预设数量个校验方程对待译码数据进行校验,得到校验方程对应的校验结果;

5、获取当前修正项,根据更新值与当前已修正值的差值更新当前修正项,得到更新后的修正项,并根据更新后的修正项对待修正值进行修正,得到已修正值;

6、根据迭代次数和校验结果,调节校验方程对应的归一化因子,并根据归一化因子对已修正值进行加权处理,得到节点间信息;

7、根据节点间信息和待译码数据得到中间数据,将中间数据作为待译码数据,将迭代次数增加第一预设步长,并从根据预设译码算法对待译码数据进行译码开始执行后续步骤,直到校验结果均为校验通过,则迭代结束,得到待译码数据对应的译码后数据。

8、第二方面,本申请提供了一种译码器,该译码器包括:解码模块、变系数乘法模块、增量校验模块、归一化因子选择模块以及迭代计数模块;

9、迭代计数模块,用于初始化迭代次数;

10、解码模块,用于根据预设译码算法对待译码数据进行译码,得到更新值,并将更新值与当前已修正值进行比较,根据比较结果得到不同数据分层下的待修正值;

11、增量校验模块,用于根据预设数量个校验方程对待译码数据进行校验,得到校验方程对应的校验结果;

12、解码模块,用于获取当前修正项,根据更新值与当前已修正值的差值更新当前修正项,得到更新后的修正项,并根据更新后的修正项对待修正值进行修正,得到已修正值;

13、归一化因子选择模块,用于根据迭代次数和校验结果,调节校验方程对应的归一化因子;

14、变系数乘法模块,用于根据归一化因子对已修正值进行加权处理,得到节点间信息;

15、解码模块,用于根据节点间信息和待译码数据得到中间数据,将中间数据作为待译码数据;

16、迭代计数模块,用于将迭代次数增加第一预设步长;

17、解码模块,用于从根据预设译码算法对待译码数据进行译码开始执行后续步骤,直到校验结果均为校验通过,则迭代结束,得到待译码数据对应的译码后数据。

18、第三方面,本申请提供了一种译码装置,该装置包括:

19、译码模块,用于初始化迭代次数,根据预设译码算法对待译码数据进行译码,得到更新值,并将更新值与当前已修正值进行比较,根据比较结果得到不同数据分层下的待修正值;

20、校验模块,用于根据预设数量个校验方程对待译码数据进行校验,得到校验方程对应的校验结果;

21、修正模块,用于获取当前修正项,根据更新值与当前已修正值的差值更新当前修正项,得到更新后的修正项,并根据更新后的修正项对待修正值进行修正,得到已修正值;

22、处理模块,用于根据迭代次数和校验结果,调节校验方程对应的归一化因子,并根据归一化因子对已修正值进行加权处理,得到节点间信息;

23、迭代译码模块,用于根据节点间信息和待译码数据得到中间数据,将中间数据作为待译码数据,将迭代次数增加第一预设步长,并从根据预设译码算法对待译码数据进行译码开始执行后续步骤,直到校验结果均为校验通过,则迭代结束,得到待译码数据对应的译码后数据。

24、第四方面,本申请提供了一种电子设备,包括:存储器和处理器,存储器和处理器之间互相通信连接,存储器中存储有计算机指令,处理器通过执行计算机指令,从而执行上述第一方面或其对应的任一实施方式的译码方法。

25、第五方面,本申请提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机指令,计算机指令用于使计算机执行上述第一方面或其对应的任一实施方式的译码方法。

26、第六方面,本申请提供了一种计算机程序产品,包括计算机指令,计算机指令用于使计算机执行上述第一方面或其对应的任一实施方式的译码方法。

27、通过本申请,由于该方法初始化迭代次数,根据预设译码算法对待译码数据进行译码,得到更新值,并将更新值与当前已修正值进行比较,根据比较结果得到不同数据分层下的待修正值;根据校验方程对待译码数据进行校验,得到校验结果;根据更新值与当前已修正值的差值更新当前修正项,并根据更新后的修正项对待修正值进行修正,得到已修正值;根据迭代次数和校验结果调节归一化因子,并根据归一化因子对已修正值进行加权处理,得到节点间信息;根据节点间信息和待译码数据得到中间数据,将中间数据作为待译码数据,将迭代次数增加第一预设步长,对待译码数据进行迭代译码,直到校验结果均为校验通过,得到待译码数据对应的译码后数据。可以解决在计算复杂度可控的前提下,难以提升ldpc译码的译码精度和纠错性能的问题。该方法通过动态归一化因子和修正项优化,显著提升纠错能力,减少量化后的性能损失。早期迭代使用固定因子降低计算负载,后期按需动态调整,平衡性能与功耗,归一化因子随迭代次数自适应变化,加速收敛并减少冗余计算。将迭代次数与变量节点更新周期同步,精准控制调整时机。

1.一种译码方法,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述根据所述迭代次数和所述校验结果,调节所述校验方程对应的归一化因子,包括:

3.根据权利要求2所述的方法,其特征在于,在所述迭代次数大于所述第二预设阈值的情况下,所述方法还包括:

4.根据权利要求1所述的方法,其特征在于,在所述根据所述节点间信息和所述待译码数据得到中间数据之后,所述方法还包括:

5.根据权利要求1所述的方法,其特征在于,在所述根据所述迭代次数和所述校验结果,调节所述校验方程对应的归一化因子之后,所述方法还包括:

6.根据权利要求1所述的方法,其特征在于,在所述根据预设数量个校验方程对所述待译码数据进行校验,得到所述校验方程对应的校验结果之后,所述方法还包括:

7.根据权利要求1所述的方法,其特征在于,在所述根据预设译码算法对待译码数据进行译码之前,所述方法还包括:

8.一种译码器,其特征在于,所述译码器包括:解码模块、变系数乘法模块、增量校验模块、归一化因子选择模块以及迭代计数模块;

9.一种电子设备,其特征在于,包括:

10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机指令,所述计算机指令用于使计算机执行权利要求1至7中任一项所述的译码方法。