一种原始比特错误率感知的译码软判决延迟降低方法与流程

文档序号:21100523发布日期:2020-06-16 20:45阅读:576来源:国知局
一种原始比特错误率感知的译码软判决延迟降低方法与流程

本发明属于固态盘存储技术领域,更具体地,涉及一种原始比特错误率感知的译码软判决延迟降低方法。



背景技术:

当前三维(3-dimentional,简称3d)堆叠闪存由于采用层式存储结构且每单元存储多个比特,具有高的单元存储密度和大的存储容量,因此广泛用于计算机等系统作为大容量的存储设备。

3d堆叠闪存带来大的存储容量的同时,数据存储可靠性却受到威胁,由于层间干扰、可编程擦写周期和保存周期的影响,原始比特错误率逐渐增加,严重影响了数据存储可靠性。为了保证数据存储可靠性,低密度奇偶校验(lowdensityparitycheck,简称ldpc)采用基于对数似然比信息的软判决译码算法具有较高的译码纠错能力被广泛用于3d堆叠闪存纠错。

然而,在现有的ldpc软判决译码过程中,每个比特的对数似然比信息频繁地迭代判决,增加了译码软判决延迟。



技术实现要素:

针对现有技术的以上缺陷或改进需求,本发明提供了一种原始比特错误率感知的译码软判决延迟降低方法,其目的在于,首先根据当前ldpc译码结果获取原始比特错误率的变化信息。然后根据比特错误率的变化信息,在下次译码判决过程中,直接将比特的对数似然比信息迭代更新至目标值后再执行判决操作,以降低冗余的判决次数,进而降低软判决译码判决延迟,从而能够解决现有ldpc软判决译码纠错方法造成高的译码判决延迟的技术问题。采取的具体技术方案如下:

一种原始比特错误率感知的译码软判决延迟降低方法,应用在闪存系统中,其包括以下步骤:

(1)上层主机给闪存控制器发送读命令和数据地址,控制器执行读命令,并根据数据地址施加将对应闪存页中的数据读到页面寄存器中;

(2)将页面寄存器中的数据传输到闪存控制器中的ldpc译码器中进行译码操作,将页面寄存器中的原始数据和成功译码的最终数据缓存在控制器中;

(3)将原始数据和成功译码的最终数据进行对比,获取原始比特错误率;

(4)记录该页面所在块的保存时间、可编程擦写周期、页面地址和当前保存时间和可编程擦写周期下的原始比特错误率和译码迭代次数p;

(5)随着保存时间和可编程擦写周期的增加,再一次读取该页面中的数据时,读出的新的原始数据由页面寄存器读到译码器中进行译码纠错;

(6)如果原始比特错误率m在ldpc硬译码纠错能力范围内,则使用硬译码进行纠错;

(7)将原始数据中比特为0的赋值为1,比特为1的赋值为-1,得到一组元素仅为1和-1组成的向量,作为原始数据的初始对数似然比信息;

(8)将步骤(7)中的初始对数似然比信息输入ldpc译码算法中进行迭代译码,译码算法为最小和译码算法;

(9)译码过程中,利用初始对数似然比信息进行ldpc译码最小和算法的校验节点信息和变量节点信息迭代更新;

(10)在步骤(9)中判断迭代次数是否大于迭代阈值p,如果是,则转入步骤(11),如果否,则转入步骤(12);

(11)进行比特节点最终判决;

(12)继续进行迭代直到达到目标次数p,然后再进行译码判决;

(13)如果原始比特错误率超过ldpc硬译码的纠错范围,即m>5.0×10-3,使用ldpc软译码方法进行纠错;

(14)使用多个检测电平,使用如下公式获取对数似然比信息:

其中,stk(k∈{1,2,...,2n})表示闪存单元第k个比特为0的存储状态集合,n表示闪存单元存储的比特数量,和pl(v)(l∈stk)表示状态sm和状态l的概率密度函数;

(15)获取对数似然比信息之后转入步骤(9)到步骤(11)。

进一步,上述步骤(3)中原始比特错误率计算为

进一步,上述步骤(6)中ldpc硬译码的纠错范围为m≤5.0×10-3

进一步,预前判断原始比特错误率是否超过ldpc硬译码的纠错范围能够及时调用ldpc软译码纠错算法,以提高纠错能力和保证数据存储可靠性。

总体而言,本发明所提供的技术方案与现有技术相比,能够取得下列有益效果:

(1)本发明的方法能够降低ldpc译码判决次数和译码延迟。

(2)本发明能够根据原始比特错误率的变化动态调整ldpc的译码算法

附图说明

图1为本发明一种原始比特错误率感知的译码软判决延迟降低方法的设计结构图。

图2为本发明一种原始比特错误率感知的译码软判决延迟降低方法的流程图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。

本发明的设计结构图如图1所示,当数据存储在闪存中,由于保存周期、可编程擦写周期等因素的影响,比特容易发生错误,需要纠错码保证数据数据存储可靠性。ldpc纠错码具有较高的纠错能力被广泛使用。ldpc是基于对数似然比信息的软判决译码算法,在译码之前,需要获取每个比特的对数似然比信息。之后将对数似然比信息传输到ldpc译码器中进行译码操作。在译码的过程中,选择最小和译码算法作为纠错算法,首先将获得每个比特节点对数似然比信息作为初始值进行校验节点信息更新,然后使用已经更新的校验节点信息更新变量节点信息,判断迭代信息值是否大于迭代阈值,如果是,则进行译码判决,如果否,继续进行比特对数似然比信息的迭代更新操作。

如图2所示,本发明一种原始比特错误率感知的译码软判决延迟降低方法,其是应用在闪存系统中,且包括以下步骤:

(1)上层主机给闪存控制器发送读命令和数据地址,控制器执行读命令,并根据数据地址施加将对应闪存页中的数据读到页面寄存器中。

本步骤的优点在于:将数据首先读到页面寄存器中可以降低数据堵塞的比率。

(2)将页面寄存器中的数据传输到闪存控制器中的ldpc译码器中进行译码操作。将页面寄存器中的原始数据和成功译码的最终数据缓存在控制器中。

本步骤的优点在于:可以清楚地获取比特错误率和具体的位置信息。

(3)将原始数据和成功译码的最终数据进行对比,获取原始比特错误率。具体地,原始比特错误率计算为

本步骤的优点在于:获取的原始比特错误率可以为译码判决提供有力依据和参考。

(4)记录该页面所在块的保存时间、可编程擦写周期、页面地址和当前保存时间和可编程擦写周期下的原始比特错误率和译码迭代次数p。

本步骤的优点在于:可以清楚地获知每个页的保存、可编程擦写周期等相关信息,为后续的译码操作提供帮助。

(5)随着保存时间和可编程擦写周期的增加,再一次读取该页面中的数据时,读出的新的原始数据由页面寄存器读到译码器中进行译码纠错。

本步骤的优点在于:保证在特定的保存周期和可编程擦写周期内可以进行有效的译码判决。

(6)如果原始比特错误率m在ldpc硬译码纠错能力范围内,则使用硬译码进行纠错。其中,ldpc硬译码的纠错范围为m≤5.0×10-3。否则进入步骤(13)。

本步骤的优点在于:根据特定的原始比特错误率选择合适的ldpc纠错码算法。

(7)将原始数据中比特为0的赋值为1,比特为1的赋值为-1,得到一组元素仅为1和-1组成的向量,作为原始数据的初始对数似然比信息。

本步骤的优点在于:能够为ldpc译码提供初始软信息,是启动译码操作关键的一步。

(8)将步骤(7)中的初始对数似然比信息输入ldpc译码算法中进行迭代译码。具体地,译码算法为最小和译码算法。

本步骤的优点在于:执行迭代译码操作,能够累积比特判决的可靠性信息,提高比特节点对数似然比信息的精度。

(9)译码过程中,利用初始对数似然比信息进行ldpc译码最小和算法的校验节点信息和变量节点信息迭代更新。

本步骤的优点在于:使用最小和算法能够降低译码复杂度。

(10)在步骤(9)中判断迭代次数是否大于迭代阈值p。如果是,转入步骤(11),如果否转入步骤(12)。

本步骤的优点在于:设置迭代阈值能够消除冗余的判决步骤,降低判决次数和译码延迟。

(11)进行比特节点最终判决。

本步骤的优点在于:能够判决比特节点信息是否满足译码迭代终止条件。

(12)继续进行迭代直到达到目标次数p,然后在进行译码判决。

本步骤的优点在于:迭代更新至目标阈值在进行判决能够提高译码收敛速度。

(13)如果原始比特错误率超过ldpc硬译码的纠错范围,即m>5.0×10-3,使用ldpc软译码方法进行纠错。

本步骤的优点在于:预前判断原始比特错误率是否超过ldpc硬译码的纠错范围能够及时调用ldpc软译码纠错算法,以提高纠错能力和保证数据存储可靠性。

(14)使用多个检测电平,使用如下公式获取对数似然比信息。

其中,stk(k∈{1,2,...,2n})表示闪存单元第k个比特为0的存储状态集合,n表示闪存单元存储的比特数量,和pl(v)(l∈stk)表示状态sm和状态l的概率密度函数。

本步骤的优点在于:使用多个检测电平能够获取较高精度的比特节点对数似然比信息。

(15)获取对数似然比信息之后转入步骤(9)到步骤(11)。

本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1