动态多级解码制造技术

技术编号:21453702 阅读:29 留言:0更新日期:2019-06-26 04:42
本发明专利技术题为“动态多级解码”。本发明专利技术公开了用于解码原始数据的方法和系统,该方法和系统可以包括:基于先前的解码数据确定多个读取电平电压的序列,并且执行多级解码操作,以使用所述确定的所述多个读取电平电压的序列对从所述多个存储器单元读取的原始数据进行解码。在完成所述多级解码操作时从所述多级解码操作返回解码数据,并且基于所述多级解码操作的结果更新所述先前的解码数据。

【技术实现步骤摘要】
动态多级解码
技术介绍
由于在制造时引入的存储器单元的变化或者由于存储器单元老化时的行为变化,闪存可能将数据错误引入存储在其中的数据。可以采用纠错代码来纠正读取操作期间的数据错误。例如,低密度奇偶校验检查(LDPC)代码可以提供强大的纠错能力。然而,LDPC算法代码会给读取操作增加不必要的延迟。
技术实现思路
根据本主题技术的方面,提供了一种机器实现的方法,包括:基于先前的解码数据确定多个读取电平电压的序列,并且执行多级解码操作,以使用确定的多个读取电平电压的序列对从多个存储器单元读取的原始数据进行解码。在完成多级解码操作时从多级解码操作返回解码数据,并且基于多级解码操作的结果更新先前的解码数据。根据本主题技术的方面,提供了一种数据存储系统,包括非易失性存储器设备和控制器。控制器被配置为基于先前的解码数据确定多个读取电平电压的序列,并且执行多级解码操作,以使用确定的多个读取电平电压的序列对从多个存储器单元读取的原始数据进行解码。多级解码操作的每个级包括执行一个或多个解码操作,以使用来自对应于该级的多个读取电平电压的序列中的各自读取电平电压来解码从多个存储器单元读取的原始数据。多级解码操作的各个级被顺序地执行,直到其中一个级中的一个或多个解码操作中的一个成功地解码从多个存储器单元读取的原始数据。在完成多级解码操作时从多级解码操作返回解码数据,并且基于多级解码操作的结果更新先前的解码数据。根据本主题技术的方面,处理器可读介质由可执行指令编码,这些可执行指令在由处理器执行时执行方法。该方法包括基于先前的解码数据确定多个读取电平电压的序列,并且执行多级解码操作,以使用确定的多个读取电平电压的序列对从多个存储器单元读取的原始数据进行解码。通过递增对应于用于读取成功解码的原始数据的多个读取电平电压的读取电平电压的计数器值,在完成多级解码操作时从多级解码操作返回解码数据,并且基于多级解码操作的结果更新先前的解码数据。基于计数器值确定多个读取电平电压的序列。根据本主题技术的方面,提供了一种数据存储系统,其包括非易失性存储器和用于基于先前的解码数据确定多个读取电平电压的序列的装置。该数据存储系统还包括用于使用确定的多个读取电平电压的序列执行多级解码操作以解码从多个存储器单元读取的原始数据的装置和用于在完成多级解码操作时返回多级解码操作的解码数据的装置。该数据存储系统还包括用于基于多级解码操作的结果更新先前的解码数据的装置。应当理解,本公开的其他配置对于本领域技术人员而言将从以下详细描述变得显而易见,其中通过图示的方式示出以及描述了本公开的各种配置。如将认识到的,本公开能够具有其他和不同的配置,并且其若干细节能够在各种其他方面进行修改,所有这些都不脱离本公开的范围。因此,附图和详细描述本质上被认为是例示性的而不是限制性的。附图说明图1是示出根据本主题技术的方面的数据存储系统的示例性部件的框图。图2示出了示例性图表,其图示了根据本主题技术的方面的多级单元闪存中的四种可能的单元编程分布。图3示出了根据本主题技术的方面的多级解码操作的流程图。图4示出了根据本主题技术的方面的用于调整多级解码操作的过程的流程图。具体实施方式以下列出的详细描述旨在作为本公开的各种配置的描述,并且不旨在表示可以实践本公开的仅有的配置。附图并入本文并构成详细描述的一部分。本详细描述包括具体细节以便提供本公开的彻底理解。然而,对于本领域技术人员显而易见的是,可以在没有这些具体细节的情况下实践本公开。在一些情况下,结构和部件以框图形式示出,以避免模糊本公开的概念。为了便于理解,相同的部件标有相同的元件编号。LDPC解码可以利用多级解码操作来解码从诸如NAND闪存的非易失性存储器中的一组存储器单元读取的原始数据。可以使用来自不同的读取电平电压的序列的各自读取电平电压从存储器单元读取在解码操作的每个级中处理的原始数据。每个级可执行原始数据上的硬解码操作和/或原始数据上的一个或多个软解码操作。多级解码操作可在序列中一次执行一个级,直到从存储器单元读取的原始数据成功解码。同一块、一组块、管芯、或一批管芯中的存储器单元可以共用共同的特征,这些特征导致在从块、块组、管芯或一批管芯读取数据时所经历的读取错误的相似性。读取在类似的寿命级从存储器单元读取数据时经历的错误也可能有相似之处。本主题技术利用这些相似性来通过跟踪先前解码操作成功解码从存储器单元读取的原始数据的级和各自读取电平电压,来改善多级解码操作。基于可以缩短多级解码操作的先前成功的解码操作,可以使用读取电平电压的序列来恢复在其他类似位置的存储器单元中经历的读取错误。如下面更详细讨论的,本主题技术通过基于先前的解码数据确定读取电平电压的序列来修改多级解码操作,该先前解码数据指示哪些读取电平电压用于在先前的读取操作中成功解码原始数据。基于先前成功的读取操作对序列中的读取电平电压排序允许在序列中较早地对具有较高成功解码可能性的读取电平电压排序,同时推动读取电平电压,其在序列中稍后成功解码的可能性较低。这样,随着存储器单元老化或操作条件改变,基于先前的读取操作来优化读取电平电压的序列。图1是示出根据本主题技术的方面的数据存储系统100的示例性部件的框图。数据存储系统100包括控制器102、低密度奇偶校验检查(LDPC)引擎104、存储介质106、以及闪存设备阵列108。如图1中所示,数据存储系统100可以经由主机接口112连接到主机设备110。控制器102可包括若干内部部件,诸如一个或多个处理器103、只读存储器、闪存部件接口(例如,多路复用器,用于管理沿着与闪存设备阵列108的连接的指令和数据传输)、I/O界面、纠错电路等。控制器102的处理器103可以监视和控制数据存储控制器102中的部件的操作。处理器103和/或控制器102可以是多核处理器、通用微处理器、微控制器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、可编程逻辑设备(PLD)、控制器、状态机、门控逻辑、分立硬件部件或前述的组合。控制器102的一个或多个元件可以集成到单个芯片中。在其他方面,这些元件可以在两个或多个分立组件中实现。控制器102可被配置为执行代码或指令,以执行本文描述的操作和功能。例如,控制器102可被配置为执行用于管理请求流和地址映射的操作,以及执行计算和生成命令。一个或多个指令序列可存储为控制器102内的存储器上的固件。一个或多个指令序列可以是从存储介质106、闪存设备阵列108读取和存储的或从主机设备110(例如,经由主机接口112)接收的软件。存储介质106和闪存设备阵列108表示机器或计算机可读媒体的示例,其上可以存储可由控制器102执行的指令/代码。机器或计算机可读媒体通常可指用于向控制器102提供指令的任何有形和非暂时性介质或媒体,包括易失性媒体(诸如用于存储媒体102、或用于控制器102内的缓冲器的动态存储器)和非易失性媒体(诸如电子媒体、光学媒体和磁性媒体)。本文描述的操作和功能也可以使用例如逻辑电路或硬件和软件/固件的组合以硬件实现。在一些方面,存储介质106表示用于临时地存储数据和信息的易失性存储器,这些数据和信息用于管理数据存储系统100。根据本公开的方面,存储介质106是随机存本文档来自技高网...

【技术保护点】
1.一种机器实现的方法,包括:基于先前的解码数据确定多个读取电平电压的序列;使用所述确定的所述多个读取电平电压的序列执行多级解码操作,以解码从所述多个存储器单元读取的原始数据;在完成所述多级解码操作时返回从所述多级解码操作的解码数据;以及基于所述多级解码操作的结果更新所述先前的解码数据。

【技术特征摘要】
2017.12.18 US 15/846,0201.一种机器实现的方法,包括:基于先前的解码数据确定多个读取电平电压的序列;使用所述确定的所述多个读取电平电压的序列执行多级解码操作,以解码从所述多个存储器单元读取的原始数据;在完成所述多级解码操作时返回从所述多级解码操作的解码数据;以及基于所述多级解码操作的结果更新所述先前的解码数据。2.根据权利要求1所述的机器实现的方法,其中所述多级解码操作的每个级包括使用来自对应于所述级的所述多个读取电平电压的所述序列的各自读取电平电压,执行一个或多个解码操作以解码从所述多个存储器单元读取的原始数据,并且其中顺序地执行所述多级解码操作的所述级,直到所述级中的一个的所述一个或多个解码操作中的一个成功地解码从所述多个存储器单元读取的所述原始数据。3.根据权利要求2所述的机器实现的方法,其中更新所述先前的解码数据包括递增对应于用于读取所述成功地解码的原始数据的所述多个读取电平电压的读取电平电压的计数器值,并且其中基于所述计数器值确定所述多个读取电平电压的所述序列。4.根据权利要求3所述的机器实现的方法,其中所述先前的解码数据包括对应于所述多个读取电平电压的多个各自计数器的计数器值,并且其中确定所述多个读取电平电压的所述序列包括根据所述各自计数器的所述计数器值对所述多个读取电平电压进行排序。5.根据权利要求3所述的机器实现的方法,其中确定所述多个读取电平电压的所述序列包括从多个预定序列中选择所述序列。6.根据权利要求1所述的机器实现的方法,其中所述多个读取电平电压的所述序列在完成多个读取请求之后确定,因为所述序列是最后确定的。7.根据权利要求1所述的机器实现的方法,其中所述多个存储器单元是管芯上的多个块的块的一部分,并且其中为所述块、包括所述块的块组或所述管芯维持各自先前的解码数据。8.一种数据存储系统,包括:非易失性存储器设备;和控制器,所述控制器被配置为:基于先前的解码数据确定多个读取电平电压的序列;使用所述确定的所述多个读取电平电压的序列执行多级解码操作,以解码从所述多个存储器单元读取的原始数据,其中所述多级解码操作的每个级包括使用来自对应于所述级的所述多个读取电平电压的所述序列的各自读取电平电压,执行一个或多个解码操作以解码从所述多个存储器单元读取的原始数据,并且其中顺序地执行所述多级解码操作的所述级,直到所述级中的一个的所述一个或多个解码操作中的一个成功地解码从所述多个存储器单元读取的所述原始数据;在完成所述多级解码操作时返回从所述多级解码操作的解码数据;以及基于所述多级解码操作的结果更新所述先前的解码数据。9.根据权利要求8所述的数据存储系统,其中更新所述先前的解码数据包括递增对应于用于读取所述成功解码的原始数据的所述多个读取电平电压的读取电平电压的计数器值,并且其中基于所述计数器值确定所述多个读取电平电压的所述序列。10.根据权利要求9所述的数据存储系统,其中所述先前的解码数据包括对应于所述多个读取电平电压的多个各自计数器的计数器值,并且其中确定所述多个读取电平电压的所述序列包括根据所述各自计数器的所述计数器值对所述多个读取电平电压进行排序。11.根据权利要求9所述的数据存储系统,其中确定所述多个读取电平电压的所述序列包括从多个预定序列中选择所述序列。12.根据权利要求8所述的数据存储系统,其中所述多个读取电平电压的所述序列在完成多个读取请求之后确定,因为所述序列是最后确定的。13.根据权利要求...

【专利技术属性】
技术研发人员:陈娘助陶俊
申请(专利权)人:西部数据技术公司
类型:发明
国别省市:美国,US

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

1