本技术实施例涉及存储,具体而言,涉及一种码字的译码方法和装置、存储介质及电子设备。
背景技术:
1、随着非易失性存储单元闪存(nand flash memory,简称是nand flash)技术的不断发展,存储介质容量和性能持续提升,3d flash堆叠层数持续增加,存储单元密度也在不断提升。这些技术发展对存储颗粒的可靠性、耐用性产生了明显的影响,nand读写过程中误码率明显升高,为保证nand读写数据的可靠性,需要在数据读写通道上引入纠错技术。
2、在闪存领域,业界普遍采用低密度奇偶校验码(low density parity checkcode,简称是ldpc)作为闪存主控芯片的纠错技术。ldpc码字通常采用硬解码和软解码相结合的译码模式。随着误码率的提高,ldpc硬解码性能可能难以满足纠错要求,此时开始启动ldpc软解码模式,软解码模式下需要对ldpc码字所覆盖的所有物理页(page)进行多次软信息读取,而软信息读取对ldpc译码时延影响较大。当对跨越2个或多个page的ldpc码字进行软信息读取时,无疑使得数据读取时延进一步增大。
3、针对现有技术中,在一个ldpc码字跨越2个或多个物理页的情况下,需要对ldcp码字所在的全部物理页进行多次软信息读取,导致译码时延高的问题,尚未得到有效解决。
技术实现思路
1、本技术实施例提供了一种码字的译码方法和装置、存储介质及电子设备,以至少解决现有技术中在一个ldpc码字跨越2个或多个物理页的情况下,需要对ldcp码字所在的全部物理页进行多次软信息读取,导致译码时延高的问题。
2、根据本技术的一个实施例,提供了一种码字的译码方法,包括:将低密度奇偶校验码ldpc的校验矩阵中处于第一位置的数据移动到第二位置,得到目标校验矩阵,其中,所述第一位置是所述校验矩阵中错误比特出现频率高于预设频率的位置,所述第二位置与存储单元中的目标物理页对应,所述存储单元包括:用于存储通过所述目标校验矩阵编码得到的码字的多个物理页,所述多个物理页包括目标物理页;通过所述目标校验矩阵对待编码数据进行编码,得到所述码字;在需要对所述码字进行译码的情况下,通过所述目标物理页的软信息对所述码字进行译码。
3、在一个示例性实施例中,将低密度奇偶校验码ldpc的校验矩阵中处于第一位置的数据移动到第二位置,得到目标校验矩阵,包括:对所述校验矩阵进行预分析,以确定所述校验矩阵中的所述第一位置;确定目标对象预先在所述校验矩阵中选取的第二位置;将所述校验矩阵中处于所述第一位置的数据移动到所述第二位置,得到目标校验矩阵。
4、在一个示例性实施例中,对所述校验矩阵进行预分析,以确定所述校验矩阵中的所述第一位置,包括:对所述校验矩阵的列重进行分析,以确定所述校验矩阵中列重低于第一阈值的第三位置;将所述第三位置确定为所述第一位置。
5、在一个示例性实施例中,对所述校验矩阵进行预分析,以确定所述校验矩阵中的所述第一位置,包括:对所述校验矩阵的陷阱集进行分析,以确定所述校验矩阵中陷阱集密度高于第二阈值的第四位置;将所述第四位置确定为所述第一位置。
6、在一个示例性实施例中,确定目标对象预先在所述校验矩阵中选取的第二位置,包括:确定所述校验矩阵与所述多个物理页中每个物理页的映射关系;获取目标对象从多个所述映射关系的选择的目标映射关系;将所述目标映射关系在所述校验矩阵中所指示的第五位置确定为所述第二位置。
7、在一个示例性实施例中,将所述校验矩阵中处于所述第一位置的数据移动到所述第二位置,得到目标校验矩阵,包括:在所述第一位置、所述第二位置对应所述校验矩阵的列的情况下,对所述第一位置的数据进行列变换,以将所述第一位置的数据移动到第六位置,其中,所述第六位置是所述第二位置中未进行过列变换的位置。
8、在一个示例性实施例中,通过所述目标物理页的软信息对所述码字进行译码,包括:对所述码字进行硬解码,得到所述多个物理页分别对应的硬解码信息,以及硬解码结果;在所述硬解码结果指示硬解码失败的情况下,确定所述第二位置对应的所述目标物理页,并获取所述目标物理页的所述软信息;通过其他物理页分别对应的所述硬解码信息和所述软信息对所述码字进行译码,其中,所述其他物理页是所述多个物理页中除了所述目标物理页之外的物理页。
9、在一个示例性实施例中,获取所述目标物理页的所述软信息,包括:调整所述存储单元的控制极参考电压,以多次读取所述目标物理页的比特数据;通过多个所述比特数据计算所述目标物理页是第一值的第一概率,以及通过多个所述比特数据计算所述目标物理页是第二值的第二概率;将所述第一概率和所述第二概率确定为所述软信息。
10、在一个示例性实施例中,通过其他物理页分别对应的所述硬解码信息和所述软信息对所述码字进行译码,包括:将所述其他物理页分别对应的所述硬解码信息和所述软信息确定为对所述码字进行软解码的初值;通过所述初值对所述码字进行软解码,以对所述码字进行译码。
11、在一个示例性实施例中,通过所述初值对所述码字进行软解码之后,所述方法还包括:确定对所述码字进行软解码的软解码结果;在所述软解码结果指示软解码成功的情况下,保存对所述码字进行译码的译码结果;在所述软解码结果指示软解码失败的情况下,获取所述多个物理页对应的多个软信息,通过所述多个软信息再次对所述码字进行软解码。
12、在一个示例性实施例中,获取所述多个物理页对应的多个软信息,包括:对所述多个物理页分别调整所述存储单元的控制极参考电压,以多次读取所述多个物理页中的每个物理页的比特数据;通过多次读取到的所述每个物理页的比特数据确定所述每个物理页的软信息,以获取所述多个软信息。
13、在一个示例性实施例中,通过所述多个软信息再次对所述码字进行软解码之后,所述方法还包括:在再次软解码失败的情况下,获取软解码过程信息,其中,所述软解码过程信息包括以下至少之一:所述目标校验矩阵、所述码字、以及所述多个软信息;通过所述软解码过程信息生成告警事件,并将所述告警事件发送给目标对象。
14、在一个示例性实施例中,确定对所述码字进行软解码的软解码结果之后,所述方法还包括:在所述软解码结果指示软解码失败的情况下,确定所述软信息对应的物理页的第一索引,以及确定所述第二位置对应的物理页的第二索引;在所述第一索引与第二索引不一致的情况下,通过所述第二索引所指示的物理页的目标软信息更新所述软信息;通过更新后的软信息和其他物理页分别对应的所述硬解码信息对所述码字进行译码。
15、根据本技术的另一个实施例,提供了一种码字的译码装置,包括:移动模块,用于将低密度奇偶校验码ldpc的校验矩阵中处于第一位置的数据移动到第二位置,得到目标校验矩阵,其中,所述第一位置是所述校验矩阵中错误比特出现频率高于预设频率的位置,所述第二位置与存储单元中的目标物理页对应,所述存储单元包括:用于存储通过所述目标校验矩阵编码得到的码字的多个物理页,所述多个物理页包括目标物理页;编码模块,用于通过所述目标校验矩阵对待编码数据进行编码,得到所述码字;译码模块,用于在需要对所述码字进行译码的情况下,通过所述目标物理页的软信息对所述码字进行译码。
16、根据本技术的又一个实施例,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
17、根据本技术的又一个实施例,还提供了一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
18、根据本技术的又一个实施例,还提供了一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现上述任一项方法实施例中的步骤。
19、通过本技术,将低密度奇偶校验码ldpc的校验矩阵中处于第一位置的数据移动到第二位置,得到目标校验矩阵,其中,所述第一位置是所述校验矩阵中错误比特出现频率高于预设频率的位置,所述第二位置与存储单元中的目标物理页对应,所述存储单元包括:用于存储通过所述目标校验矩阵编码得到的码字的多个物理页,所述多个物理页包括目标物理页;通过所述目标校验矩阵对待编码数据进行编码,得到所述码字;在需要对所述码字进行译码的情况下,通过所述目标物理页的软信息对所述码字进行译码。也就是说,将校验矩阵中错误比特出现频率较高的第一位置的数据移动到与目标物理页对应的第二位置,得到目标校验矩阵,进而使得需要对通过目标校验矩阵编码得到的码字进行译码的情况下,可以仅通过目标物理页的软信息对该码字进行译码。因此,可以解决现有技术中,在一个ldpc码字跨越2个或多个物理页的情况下,需要对ldcp码字所在的全部物理页进行多次软信息读取,导致译码时延高的问题。降低了对ldcp码字的译码时延。