用于nand闪速存储器的缺陷管理策略的制作方法
【技术领域】
[0001]本文描述的实施例大体涉及非易失性存储器技术,并且更具体地涉及管理非易失性存储器中的缺陷的系统和方法。
【背景技术】
[0002]在例如非易失性存储系统等常规存储系统中,数据可以根据预定纠错编码方案(例如低密度奇偶校验(LDPC)编码方案)来存储。这样的非易失性存储系统可以包括多个非非易失性存储器(NVM)设备,每个NVM设备包含众多NVM存储元件或单元,用于采用LDPC码字的形式存储编码数据。在从这样的NVM设备读取LDPC码字时,可以在每个NVM单元的多个编程状态之间建立一个或多个参考阈值电压水平,并且NVM单元的阈值电压水平可以与相应参考阈值电压水平比较来确定NVM单元的实际编程状态。
[0003]在典型操作模式中,为了从所选的NVM设备读取期望的LDPC码字,可以执行硬位读操作,其中从所选的NVM设备读取LDPC码字作为所谓的“硬数据”(即,LDPC码字中的逻辑高和低位级分别被看作“I”和“O”)。此外,可以执行软位读操作,其中从所选的NVM设备读取LDPC码字作为所谓的“软数据”(即,LDPC码字中的逻辑高和低位级分别被看作“I”和“O”,并且提供指示LDPC码字中的相应位是“I”或“O”的可能性的概率信息)。从所选的NVM设备读取的LDPC码字然后可以经历纠错解码来确定LDPC码字是否有效。如果发现解码的LDPC码字无效或“有故障”(例如,可存在纠错编码/解码失效),则可以从其他NVM设备读取额外LDPC码字,并且可以使用额外LDPC码字执行XOR数据恢复以试图恢复期望的LDPC码字。
[0004]这样的有故障LDPC码字的检测除其他事情外还可指示所选NVM设备上的物理存储器页面受到底层硬件缺陷(例如,开路或短路)的影响,或所选NVM设备具有固有地高的残余误码率(RBER)。在任何情况下,具有用于管理非易失性存储系统中的缺陷、可以用于避免数据的无意丢失同时在非易失性存储系统中维持尽可能多的有用存储器,这将是可取的。
【附图说明】
[0005]包含在该说明书中并且构成其部分的附图图示本文描述的一个或多个实施例,并且连同详细说明一起解释这些实施例。在图中:
图1a是根据本申请的示范性非易失性存储系统(其包括非易失性存储器(NVM)缺陷管理策略引擎)的框图;
图1b是图1a的非易失性存储系统中包括的示范性NVM读逻辑的框图;
图2是.代表从图1a的非易失性存储系统中包括的NVM设备读取的码字的解码的“电压” vs “概率”的图;
图3是图示操作图1a的非易失性存储系统中包括的NVM缺陷管理策略引擎的示范性方法的流程图;以及图4是其中可采用图1a的非易失性存储系统的示范性计算机系统的框图。
【具体实施方式】
[0006]公开管理非易失性存储系统中的缺陷的系统和方法,其可以用于避免数据的无意丢失,同时在非易失性存储系统中维持尽可能多的有用存储器。公开的系统和方法可以监测多个触发事件以用于检测非易失性存储系统中包括的一个或多个非易失性存储器(NVM)设备中的可能缺陷,并且基于导致检测可能缺陷的触发事件的类型来将一个或多个缺陷管理策略应用于相应的NVM设备。这样的缺陷管理策略可以前摄地用于使非易失性存储系统中的存储器以增加的粒度引退,从而使存储器的引退集中在可能包含缺陷的非易失性存储器的区域上。
[0007]图1a描绘根据本申请用于访问非易失性存储系统中的一个或多个NVM设备的示范性系统100的说明性实施例。如在图1a中示出的,系统100包括主处理器102、非易失性存储系统104和操作成使主处理器102可通信耦合于非易失性存储系统104的存储器总线105。非易失性存储系统104包括NVM控制器106、可通信耦合于NVM控制器106的一个或多个NVM设备108.1-108.η以及可通信耦合于NVM控制器106的NVM缺陷管理策略引擎110。如在图1a中进一步示出的,NVM控制器106包括响应于由主处理器102发出的一个或多个数据读/写请求、供在从相应NVM设备108.1-108.η读取数据中使用的NVM读逻辑112以及供在将数据写入相应NVM设备108.1 -108.η中使用的NVM写逻辑114。
[0008]在图1a的系统100中,主处理器102可以使用一个或多个处理器、一个或多个多核处理器和/或任何其他适合的处理器或多个处理器实现。此外,NVM设备108.1-108.η中的每个可以包括非易失性存储器,例如每存储器单元使用单个位的NAND或NOR闪速存储器、多级单元(MLC)存储器(例如每单元具有两个位的NAND闪速存储器)、聚合物存储器、相变存储器(PCM)、基于纳米线的电荷俘获存储器、铁电晶体管随机存取存储器(FeTRAM)、3维交叉点存储器、使用记忆电阻器(忆阻器)技术的非易失性存储器或任何其他适合的非易失性存储器。另外,非易失性存储系统104可以配置为固态驱动器(SSD)或任何其他适合的永久数据存储介质,并且存储器总线105可实现为外围组件互连express(PCIe)总线,或对永久数据存储介质的任何其他适合的接口。
[0009]图1b描绘NVM控制器106中包括的NVM读逻辑112的示范性功能图。如在图1b中示出的,NVM读逻辑112包括异或(XOR)逻辑116、复用器(MUX)118、硬数据发生器119、软数据发生器120和例如低密度奇偶校验(LDPC)解码器122等纠错解码器或任何其他适合的纠错解码器。在一个实施例中,采用LDPC编码以采用LDPC编码数据(在本文也称为“LDPC码字”)的形式将数据存储在相应NVM设备108.1-108.η中的至少一些中。例如,NVM设备108.1-108.n-1中的至少一些可用于存储这样的LDPC码字,并且至少NVM设备108.η可用于存储冗余数据(在本文也称为“X0R数据”),其随后可被采用来恢复由于例如一个或多个纠错编码/解码失效等而发现为无效或“有故障”的任何解码LDPC码字。此外,存储在NVM设备108.η中的这样的XOR数据可以通过对存储在相应NVM设备108.1-108.η-1中的至少一些的对应NVM存储位置中的LDPC码字执行异或(XOR)运算而生成。
[0010]注意非易失性存储器存储可以在NVM设备108.1-108.η中的每个内在非易失性存储器的多个块中组织。此外,每个块可以包括六十四个(64)按顺序排序的页面,或任何其他适合数量的按顺序排序页面。另外,每个页面可以包括多个NVM存储元件或单元,用于存储LDPC编码数据或XOR数据,以及可对页面生成的任何元数据(例如,有效/无效标记、物理/逻辑地址、序号)或存储在页面上的数据。
[0011]在图1a的系统100中,NVM缺陷管理策略引擎110操作以监测多个触发事件以用于检测非易失性存储系统104中包括的NVM设备108.1-108.η中的一个或多个中的可能缺陷,并且基于导致检测可能缺陷的触发事件的类型将一个或多个缺陷管理策略应用于相应NVM设备108.1-108.η。在一个实施例中,这样的触发事件可以包括至少三个(3)类型的触发事件,即硬位读(HBR)触发事件、软位读(SBR)触发事件和XOR数据恢复触发事件。此外,HBR触发事件、SBR触发事件和XOR数据恢复触发事件中的每个可以在使用NVM读逻辑112从相应NVM设备108.1-108.η读取数据的操作期间不时地生成。
[0012]HBR触发事件、SBR触发事件和XOR数据恢复触发事件的生成将参考下列说明性示例以及图1a-1b和2进一步理解。在该示例中,采用NVM控制器106内的NVM读逻辑112以响应于由主处理器102通过存储器总线105发出的数据读取请求来从相应NVM设备108.1-108.η中的一个或多个读取数据。例如,主处理器102可发出数据读取请求以用于读取存储在NVM设备108.1内的规定NVM存储位置处的期望LDPC码字。此外,规定的NVM存储位置可以包括一个或多个NVM单元,其中的每个可以被解码成对应于2位值、3位值或任何其他适合的多位值。
[0013]图2描绘代表存储在NVM设备108.1内的规定NVM存储位置处的期望LDPC码字的解码的“电压” vs.“概率”的图。如在图2中图示的,规定的NVM存储位置中包括的示范性NVM单元可以例如是每单元具有两个位的MLC NAND单元,其可以被解码成由多个状态(例如,至少状态1( 11)、状态2(10)、状态3(00))中的一个表示的2位值。具体地,状态1、2、3分