CN1571069A - 非易失性存储系统 - Google Patents
非易失性存储系统 Download PDFInfo
- Publication number
- CN1571069A CN1571069A CNA2004100038344A CN200410003834A CN1571069A CN 1571069 A CN1571069 A CN 1571069A CN A2004100038344 A CNA2004100038344 A CN A2004100038344A CN 200410003834 A CN200410003834 A CN 200410003834A CN 1571069 A CN1571069 A CN 1571069A
- Authority
- CN
- China
- Prior art keywords
- data block
- data
- address
- controller
- accumulator system
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/349—Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
- Read Only Memory (AREA)
Abstract
这里提供了一种存储器系统,允许准备数个替换存储器块以便扩展可重写寿命,从而有助于提高信息存储的可靠性。存储器系统带有一个在预定物理地址单元中包括多个数据块的非易失性存储器和一个响应于来自外部的存取请求来控制所述非易失性存储器的控制器。数据块中的每一个具有用于保存关于每个数据区域的重写计数和错误检验信息的区域。控制器在非易失性存储器上的读操作中根据错误检验信息检查被读取的区域中的错误,并且,当有错误时,如果重写计数大于一个预定值,将用另一个数据块替换相关数据块,或者,如果不大于,校正与错误有关的数据块中的数据。
Description
技术领域
本发明涉及一种非易失性存储系统,尤其涉及一种可以有效地运用于例如与硬盘兼容的闪速存储卡和闪速盘的技术。
背景技术
在电可重写的非易失性存储器、典型地是闪速存储器上的已存储信息的重写在存储单元中会引起电学上的压力,随着重写计数的增大,存储单元的特性变坏。因此,通常的惯例是将重写计数预先确定为直至可以保证非易失性存储器的性能。重写可能集中在一些数据块上,并且已经提供了用替代区域中的未用存储块来替换已经达到重写的容许限制的数据块的技术(参见专利参考文献1和2)。
还可采用一种技术,对在每个数据块中用ECC校正的次数计数,并且用替代区域中的未用存储块来替换其校正计数已经达到一特定数目的数据块(参见专利参考文献3)。
此外,由于集中在其上进行写操作的数据块在性能上将显著变坏,还出现了一种技术,在数据和地址重写到达一特定计数时,用重写计数较小的区域自动替换有关区域,从而延长了非易失性存储器的可重写寿命。例如,如果重写计数超过一预定级别,则数据块中的地址分配会被改变(参见专利参考文献4)。或者,如果ECC差错数超过一预定级别,则数据块中的地址分配会被改变(参见专利参考文献5)。
专利参考文献1:日本未审查专利公开文本No.Hei08(1996)-96589
专利参考文献2:日本未审查专利公开文本No.2001-229069
专利参考文献3:WO 01/22232
专利参考文献4:USP 5,434,825
专利参考文献5:USP 5,583,812
发明内容
本发明人研究了在诸如闪速存储器的非易失性存储器中的数据块替换的处理。特别地,本发明人研究了与硬盘兼容的大容量存储器、例如应用了非易失性存储器、例如闪速存储器的大容量和高速闪速存储卡或闪速盘。
研究的第一个方面是使得非易失性存储器中的数据块替换的处理是合适的。即使在数据块重写计数超出许可次数时,存储单元在性能上也不会必然地变坏。因此,如果按照专利参考文献1和2的要求仅仅在重写计数的基础上替换数据块,则仍然可以使用的数据块将被不经济地替换。换句话说,由于工艺的波动,通知替换定时的重写计数将随每个数据块而不同。
第二个方面是信息存储的可靠性。即使如专利参考文献3所阐述的,只要由ECC的校正次数已经达到一预定级别就要替换数据块,其许可重写计数例如是300,000次的闪速存储器仍会保持可重写,直到500,000次重写或更多,如果其第一次ECC校正在那时出现。换句话说,在性能上变坏的数据块可以保持可重写,这将降低信息存储的可靠性。例如,如果性能变坏导致可由ECC电路校正的频繁出现的差错并且另外作为干扰的结果或由于其他原因出现非法数据,则可能会超过可由ECC电路校正的位数,则差错不再能够被ECC电路所解决,使得不能保护所存储的数据。
如果错误的数据是声音或图象数据,则该部分数据差错几乎不会影响其他处理。然而,如果错误的数据是算术处理数据或是一个程序中所包括的,则即使是部分数据差错也会相当大地影响其他处理依据数据处理的特性有时是致命的。因此,与硬盘兼容的闪速存储卡或闪速盘在信息存储上需要高级别的可靠性。
第三个方面是高速存取处理。在算术处理数据或程序中的数据要被存储在与硬盘兼容的闪速存储卡或闪速盘中的情况下,提高数据处理的速度将需要在闪速存储卡等部分上的高速存取处理性能。如果每次需要结合存取处理的表参考(table referencing)来延长重写寿命,则由于其大容量,该参考将构成一个很重的额外开销。例如,根据专利参考文献4和5中所公开的技术,在每次存取时将读入一个指示数据块中的地址分配的匹配表。
本发明的一个目的是提供一种能够限制可使用的数据块的不经济的替换以便延长可重写寿命的存储器系统。换句话说,存储器系统能够减少延长可重写寿命所需的替换存储块的数目。
本发明的另一个目的是提供一种能够限制在性能上变坏的数据块的可重写状态继续存在、从而提高信息存储的可靠性的存储器系统。
本发明的又一个目的是提供一种能够消除每次参考一个与存取处理有关的表的需要以便延长可重写寿命并在保证高速存取的同时延长可重写寿命的存储器系统。
从这个说明书的下面的结合附图的描述中,本发明的上述和其他目的和新颖特征将变得更加明显。
下面将简要描述在这个申请中公开的发明的典型方面。
(1)本发明的第一个方面涉及读操作中的替换控制。在本发明的这个方面中的存储器系统带有具有在预定物理地址单元中的多个数据块的非易失性存储器和一个用于响应于来自外部的存取请求来控制非易失性存储器的控制器。每个数据块具有用于保存重写计数和关于每个数据区域的差错检验信息的区域(31和32)。控制器在非易失性存储器的读操作中根据差错检验信息检验所读区域中的任何差错,并且,在有差错时,如果重写计数大于一个预定值,将用另一个数据块替换相关数据块,如果不大于,将校正与差错有关的数据块中的数据。
即使已经达到预定的重写计数限制,带有良好历史的非易失性存储器仍然能够重写。作为该能力的指示,考虑已经在数据块中出现过的数据差错的次数和此时的重写计数。如果从数据块读出的数据中有差错并且重写计数未达到预定限制,将执行ECC或其他校正。通常,在非易失性存储器、例如闪速存储器中,在许可的重写计数阈值内,如果有由存储器的制造者推荐或要求的差错校正能力(差错可校正位数),将不会出现不可校正的情况。因此,即使其差错已经由ECC或其他校正的数据被返回相关数据块,在数据的可靠性上也不太会出现问题。另一方面,如果有数据差错且重写计数已经到达预定限制,则很可能出现超出ECC的差错校正能力的位数的差错。因此,数据块将被替换,新的替换数据块将被用来保存校正的数据以供以后使用。
因此,依据上述替换技术,即使重写计数已经超过许可限制,与ECC的组合仍然进行可能的替换,并且,与仅仅在预定重写计数限制的基础上执行替换的技术相比,每个数据块地址的平均重写计数可以增大。由于这使得有可能免除过多的替代区域和限制替换中涉及的处理上的额外开销,因此可以确保高速存取。
此外,与在将依据ECC的差错数作为数据块替换的唯一尺度的情况不一样,可以防止变坏程度很深的数据块被保留在可重写状态下,从而提高信息存储的可靠性。
在本发明的具体模式中,数据块具有能够使用关于逻辑地址的信息来对应其物理地址的地址信息保存区域(30)。然后,控制器根据作为物理地址的逻辑地址选择数据块,并且,如果发现该数据块的物理地址与在该数据块的地址信息保存区域中保存的信息相同,则判断所选择的数据块还未被替换。因此,仅仅在发现所选择的数据块的物理地址和在该数据块的地址信息保存区域中保存的信息不相同时,才需要参考用于检查所替换地址等的表。这样,不需要在每次存取处理时都参考该表,因此在确保高速存取的同时,可以延长可重写寿命。
作为用于检查所替换地址的表,非易失性存储器例如可以具有一个替换地址表。替换地址表具有要用于与阵列物理地址的序列相一致地保存逻辑地址信息的对应项目的表信息保存区域(40)。当控制器发现根据作为物理地址的逻辑地址选择的数据块的物理地址与在该数据块的地址信息保存区域中保存的信息之间不相同时,控制器可以参考对应于替换地址表的物理地址的表信息保存区域,并找出用哪一数据块替换该逻辑地址。
为了确定一个新的可用的替换,将一个未使用代码(USFLG)存储到对应于未向其分配逻辑地址的数据块的表信息保存区域中。控制器在替换数据块时参考替换地址表,并将对应于未使用代码的数据块确定为一个新的可用替换。
关于地址信息保存区域,控制器以不同于逻辑地址的无效代码来初始化未向其分配逻辑地址的数据块的地址信息保存区域。进一步地,控制器在替换任何数据块时使得替换数据块的地址信息保存区域保存要被替换的数据块的物理地址。控制器还将经历了重写故障的数据块置于擦除状态。这想要统一所替换数据块的地址信息保存区域的处理,并使得在出现问题等时可以从数据块信息参考替换历史。
在本发明的另一个具体模式中,多个数据块中的特定数据块中的每一个具有一个用于重写阈值次数数据(TDAT)的存储区域。控制器判断与重写阈值次数数据相同的重写计数是预定重写计数。由于数据块的可重写寿命随着每个半导体制造工艺而波动,因此这种配置使得可重写寿命能够因此而延长。
非易失性存储器例如可以是一个闪速存储器。逻辑地址信息由32位或更多位组成。闪速存储器的存储容量可以被扩展到千兆位甚至更高。可以使用ECC码、CRC码、奇偶校验码或SUM值码作为差错检验信息。
控制器例如可以由外部接口电路、缓冲器、CPU、ECC电路和存储器接口电路构成。
(2)本发明的第二个方面涉及重写操作中的替换控制。在这个方面的存储器系统中,在非易失性存储器上的重写操作中,当控制器无法在被进行重写的数据块上重写时,如果重写计数大于一个预定值,控制器将用另一个数据块替换该数据块,如果不大于,在与故障相关的数据块上再次重写。如果再次重写的尝试失败,将用另一个数据块替换该数据块。
本发明的第三个方面涉及重写操作中的另一个方式的替换控制。在这个方面中的存储器系统带有一个具有在预定物理地址单元中的多个数据块的非易失性存储器和一个用于响应于来自外部的存取请求来控制非易失性存储器的控制器,其中,每个数据块具有用于保存重写计数和差错校正标志的区域(31和33)。在非易失性存储器上的重写操作中,如果数据块的重写计数不大于一个预定值,控制器将在被进行重写的数据块上执行重写处理,如果重写计数大于预定值并且差错校正标志指示该数据块已经经过差错校正,控制器将用另一个数据块替换该数据块,如果该标志指示该数据块没有经过差错校正,控制器将在该数据块上执行重写。在非易失性存储器上的重写处理中,当控制器无法在被进行重写的数据块上重写时,如果重写计数大于预定值,它可以用另一个数据块替换该数据块,如果重写计数不大于预定值,在与故障相关的数据块上再次重写。差错校正标志是指示差错校正是否已经完成的一位或更多位的标志信息。
可以使用与在上面的第一个方面中相同的手段来作为其第二个和第三个方面中的本发明的具体模式。
类似于本发明的第一个方面,依据本发明的第二个和第三个方面,即使重写计数超过许可限制,与ECC的组合也使得替换仍然是可能的,并使得过多的替代区域是不必要的。此外,与在将依据ECC的差错数作为数据块替换的唯一尺度的情况不一样,可以防止变坏程度很深的数据块被保留在可重写状态下,从而提高信息存储的可靠性。由于控制器根据作为物理地址的逻辑地址选择一个数据块,因此不需要在每次存取处理时都参考该表,因此在确保高速存取的同时,可以延长可重写寿命。
附图说明
图1是作为依据本发明的存储器系统的一个例子的闪速存储卡的方框图。
图2显示了在闪速存储器中的基于数据块的数据结构的一个例子。
图3显示了替换地址表的一个例子。
图4是显示由控制器进行的读操作的控制流程的一个例子的流程图。
图5是综合显示采用图4的读控制从闪速存储卡读出数据的操作的流程图。
图6显示了当从闪速存储卡读出数据时在图2的闪速存储器中出现的数据结构的变化的一个例子。
图7是显示由控制器进行的写操作的控制流程的一个例子的流程图。
图8是显示在响应于来自外部信息处理设备的重写请求在闪速存储器中的数据重写故障的情况下的操作的一个例子的流程图。
图9显示了图8所示的操作的重写处理的结果。
图10显示了具有ECC校正标志区域的闪速存储器3的数据结构的一个例子。
图11是显示由控制器参考ECC校正标志区域进行的重写操作的控制流程的一个例子的流程图。
图12显示了在图10的数据结构的闪速存储器上进行图11所示的替换处理之后闪速存储器的数据结构的一个例子。
图13是示意性地显示依据本发明的读处理和写处理的流程图。
图14是示意性地显示在由一个全时(all-time)的替换地址参考公式进行的比较例子中的读处理和写处理的流程图。
具体实施方式
[闪速存储卡]图1显示了作为依据本发明的存储器系统的一个例子的闪速存储卡。这里所示的闪速存储卡带有一个在预定外壳内具有多个数据块2的非易失性存储器、例如闪速存储器3和一个响应于来自外部信息处理设备4的存取请求来控制闪速存储器3的控制器5,其中每个数据块2与一个预定物理地址相匹配。预定外壳例如是PC卡或1.8英寸硬盘的外壳。外部信息处理设备4是一个主机设备,例如个人计算机、个人数字助手(PDA)或数字照相机。每个数据块2基本上被分成数据区域2D和管理区域2C。
虽然未显示,闪速存储器3具有一个存储单元阵列,其中,以矩阵形式排列有电可擦除和可写闪速存储单元。多个数据块被构造在这个存储单元阵列中。每个数据块具有固定的存储容量,例如1024位,并由多个闪速存储单元组成。
对于每个闪速存储单元,可以采用浮栅结构,其中,电荷可以被注入浮栅,作为由沟道区域之上的绝缘膜分隔的导体,或者可以采用电荷俘获结构,其中,电荷被局部注入电荷俘获区域、例如氮化硅膜,但这些并不是唯一可用的选择。例如,如果采用了浮栅结构,则根据充电状态和放电状态之间的阈值电压的差来确定所存储信息的逻辑值。在电荷俘获结构中,容易根据电荷的俘获位置或所俘获电荷的极性来存储多值信息。将数据存储到这样一个闪速存储单元中例如是通过初始化由存储单元保存的电荷的第一处理(例如,擦除或清除)和从初始状态改变充电状态的第二处理(例如,编程处理或写)来完成的。例如,浮栅型闪速存储单元的漏极与一条位线相连,其源极与一条源线相连,其控制栅极与一条字线相连。擦除是通过将高电压加到源线上以便提取电子到源线来完成的。编程是通过将高电压加到字线上以便从漏极向浮栅注入热电子来完成的。擦除可以在逐个数据块的基础上执行,但这并不是绝对的要求。
控制器5具有外部设备接口电路10、闪速存储器接口电路11、微计算机(MPU)12、由随机存取存储器(RAM)组成的缓冲器13、纠错码(ECC)电路14和内部总线15,但其结构并不限于这些。外部设备接口电路10控制与外部信息处理设备4的面接。与外部设备的面接的规范例如是具有与所考虑的硬盘的兼容性的集成设备电路(IDE)的规范。闪速存储器接口电路11以一种满足闪速存储器3的命令和数据存取要求的方式控制闪速存储器面接。MPU12具有中央处理单元(CPU)、用于CPU的工作RAM和用于CPU的控制程序ROM。CPU执行控制程序,使得外部设备接口电路10控制外部面接,闪速存储器接口电路11控制存储器面接。缓冲器13临时存储来自外部信息处理设备4的写数据和到外部信息处理设备4的读数据。
虽然在本发明的这个实施例中控制器和存储器彼此分离,但这两个部件和外围部件也可以集成在一个混合的半导体中。
当外部设备接口电路10从外部信息处理设备4接收到一个数据存取请求时,MPU12从闪速存储器接口电路11向闪速存储器3给出作为要存取的数据的物理地址的扇区地址、存取命令等等,从而控制数据重写、数据读取和闪速存储器3的其他操作。数据重写是由擦除和编程处理实现的。在重写中,将从外部信息处理设备4提供的写数据提供给闪速存储器3。在读过程中,将从闪速存储器3读出的数据提供给外部信息处理设备4。
向闪速存储器3的每个数据块(同样可以称为扇区)2分配一个物理地址(也称为扇区地址),该地址代表数据块的物理排列。换句话说,将地址分配结合进用于译码地址信号和选择数据块的地址译码器的译码逻辑。物理地址的位数例如是32。外部信息处理设备4中的数据块的逻辑排列是根据逻辑地址管理的。MPU12利用由外部信息处理设备4指定的逻辑地址来作为存取闪速存储器3中的物理地址。简言之,MPU12不需要始终参考逻辑地址和物理地址的匹配表。
[闪速存储器的数据结构]图2显示了闪速存储器3中的基于数据块的数据结构的一个例子。在图2中,例如有分别具有物理地址0到z的数据块2(0)到2(z),物理地址分别为0到n-1的数据块2(0)到2(n-1)构成了用户数据区域20,物理地址分别为n到z-1的数据块2(n)到2(z-1)构成了替代区域21,物理地址为z的数据块2(z)构成了替换地址表形成区域22。如上所述将物理地址分配给每个数据块2,数据块2具有逻辑地址区域30、重写计数区域31和ECC代码区域32作为管理区域2c。
假定逻辑地址区域30是一个可用于保存关于与物理地址匹配的逻辑地址的信息的地址信息保存区域。重写计数区域31保存对应数据块2的重写计数。ECC代码区域32保存作为对应数据块2上的错误检验信息的一或多个ECC代码。ECC代码可以覆盖整个数据块或只覆盖一特定数据区域。在未用于逻辑地址的分配的逻辑地址区域30的部分中,由控制器5初始写入一个无效代码IVCOD。这样,替代区域21中除了物理地址z之外的逻辑地址区域30的其他部分初始具有无效代码IVCOD。将一个表标志存储在物理地址z的数据块2(z)中的逻辑地址区域30中,并在该数据块2(z)的数据区域中存储替换地址表STLB。
控制器5根据作为物理地址的逻辑地址搜索数据块2,如果发现检索出的数据块2的物理地址与该数据块的逻辑地址区域30中保存的信息相同,将该数据块判断为未被替换。因此,仅仅在发现检索出的数据块的物理地址与该数据块的逻辑地址区域30中保存的信息不相同时才需要参考替换地址表STLB来找到替换地址。这样,不需要在每次存取处理时都参考替换地址表STLB。
关于本发明的这个实施例,将描述一个规则,根据该规则,每次都参考替换地址表STLB。然而,由于本发明使得替代区域最小化,它也可以直接搜索替代区域,而不是参考表STLB。
图3显示了替换地址表STLB的一个例子。替换地址表STLB是在检查替代区域21中的任何数据块以便替换用户数据区域20中的有缺陷或已经用完其可重写寿命的数据块2中所用的数据表。这个替换地址表STLB按照物理地址排列的顺序具有表信息保存区域40、即40(0)到40(z)。表信息保存区域40(0)到40(z)用于按照物理地址排列的顺序来保存对应的逻辑地址信息。对应于任何一个表信息保存区域40(0)到40(z)的物理地址是从相关的表信息保存区域的偏移获得的。例如,对应于物理地址(n-1)的逻辑地址(n-1)是从位于替换地址表STLB的偏移(n-1)处的表信息保存区域40(n-1)获得的。这个替换地址表STLB可以指示当前的逻辑地址被分配到哪个物理地址以及未使用区域在哪里。
如果控制器5发现了在根据作为物理地址的逻辑地址检索出的数据块的物理地址与相关数据块的逻辑地址区域30中保存的信息之间的不一致性,控制器可以参考对应于替换地址表STLB的物理地址的表信息保存区域40,并找出由哪一数据块替换逻辑地址。例如,参考图3,在替换地址表STLB的偏移(n)的表信息保存区域40(n)的基础上,对应于物理地址(n)的逻辑地址是逻辑地址(m)。
为了确定一个新的可用替换,在替换地址表STLB的表信息保存区域40(0)到40(z(-1))中存储一个对应于未分配逻辑地址的数据块的未使用标志USFLG作为未使用代码。控制器5在替换数据块时,参考替换地址表STLB,并将一个对应于未使用标志USFLG的数据块确定为一个新的可用替换。
将在替换地址表STLB的偏移(z)处的表信息保存区域40(z)用作一个用于重写阈值计数数据TDAT的存储区域40(z)。控制器5使用重写阈值计数数据TDAT来确定是否要替换一个数据块或估计其剩余可重写寿命。由于数据块的可重写寿命随着各个半导体制造工艺而波动,因此这个结构使得剩余可重写寿命能够被估计。
[读操作中的替换控制]下面将描述在读出数据块的操作中的替换控制。
图4显示了由控制器进行的读操作的控制流程的一个例子。当指示进行读取在逻辑地址m的数据的处理时,作为响应将在物理地址m的数据块读出到缓冲器13(S1)。确定在读出的数据块2(m)的逻辑地址区域30中保存的逻辑地址信息是否与数据块2(m)的物理地址相同(S2)。如果是,将确定该数据块还未被替换。如果不是,将确定该数据块已经被替换,将参考替换地址表STLB来搜索用于逻辑地址m的数据块的替代区域21,并将存储在这个数据块中的信息读出到缓冲器13(S3)。由ECC电路判断与步骤S2的相同性判断有关的数据块或步骤S3的搜索的替换数据块中的所有数据中的错误的存在与否(S4)。依据本发明,采用逻辑地址代码管理用户数据。然而,本发明可以以其他一些方式实现,例如,当在S2的检查显示出ECC代码将不被校正或者是可校正的时,将物理地址和逻辑地址视为是相同的,而当它是不可校正的时,将数据块视为已经被替换,搜索替代区域并参考逻辑地址m。如果没有错误,控制器5将从外部信息处理设备4要求一个对传送逻辑地址m的用户数据的容许(S5),并且,当该容许来自外部信息处理设备4时,将逻辑地址m的数据从缓冲器13传送到外部信息处理设备4(S6)。
如果在步骤S4确定有错误,所读数据将在缓冲器13中被校正(S7)。然后,判断重写计数是否高于由重写阈值计数数据TDAT所指示的级别(例如,K次)(S8)。如果小大于K次,将校正缓冲器13中的逻辑地址m的数据,并将校正的数据写回到对应于相关逻辑地址m的物理地址的数据块,以校正闪速存储器3中对应的存储数据。此后,过程向前进行到步骤S5到S6,将数据传送到外部信息处理设备4。
如果在步骤S8确定重写计数大于K次,将参考替换地址表STLB来搜索用于一个未使用数据块的替代区域21(S9)。进行替换来使用已经被检索出作为逻辑地址m的新的数据块的未使用数据块(S10)。在该替换处理中,首先,将逻辑地址m的信息存储到已经被检索出的未使用数据块的逻辑地址区域中,将用户数据m存储到未使用数据块的数据区域中,并且将未使用数据块的物理地址信息存储到替换前的逻辑地址m的数据块的逻辑地址区域中。其次,将逻辑地址m的信息存储在替换地址表STLB上的表信息保存区域40中的对应于未使用数据块的物理地址的偏移位置中。此后,过程向前进行到步骤S5和S6,将数据传送到外部信息处理设备4。
图5是综合显示采用图4的读控制来将数据读出闪速存储卡1的操作的流程图。在图中所示的操作中,假设闪速存储器3在读取之前的状态是图2中所示的状态,闪速存储器3在读取之后的状态是图6中所示的状态,替换地址表STLB在读取之后的状态是图3中所示的状态。假设重写阈值次数是K次。
外部信息处理设备4要求从控制器5读取用户数据区域20中的一特定数据块、例如逻辑地址m的数据块的数据(T1)。作为响应,控制器5从闪速存储器3接收物理地址m的数据块的数据(T2)。控制器5对接收的读取数据进行图4所示的处理。在这个例子中,如图2所示,假设数据块2(m)的逻辑地址区域30的逻辑地址等于物理地址m,并且可用ECC代码校正的错误已经出现在数据块2(m)的数据中。进一步地,假设数据块2(m)的重写计数是K+1,超过了上限K。为了搜索替代区域21中的未使用数据块,控制器5从闪速存储器3读出物理地址z的替换地址表STLB(T3)。控制器5在替换地址表STLB中搜索具有未使用标志(USFLG)的表信息保存区域,并例如获得表信息保存区域40(n)。在这个区域40(n)的偏移的基础上,控制器5读出物理地址(n)的数据表的信息,并确认无效代码IVCOD被存储在该逻辑地址区域30中以及确认在ECC代码区域中的ECC代码的基础上没有错误(T4)。如果未存储无效代码或依据ECC代码有错误,将重复T3和T4的处理。
如果无效代码的存在和依据ECC代码的错误的不存在由T4的处理确认,在替换之前逻辑地址m的数据块的逻辑地址区域将被地址信息n所替换(T5),逻辑地址m的信息被存储到物理地址n的数据块的逻辑地址区域,用户数据m被写入该数据区域内(T6),替换地址表STLB被重写,以便在对应于物理地址n的偏移位置中存储逻辑地址m的信息(T7)。
此后,控制器5从外部信息处理设备4要求一个对传送读取数据的容许(T8),并且,当该容许来自外部信息处理设备4时,将逻辑地址m的数据(用户数据m)传送到外部信息处理设备4(T9)。在传送之后,控制器5通知外部信息处理设备4读处理结束(T10)。
在上述读操作的替换控制中,注意到带有良好历史的非易失性存储器的即使已经到达预定重写计数阈值也能执行进一步的重写的性能。作为这个性能的指示器,考虑在数据块中的数据上的ECC错误检查的结果和重写计数。如果在从数据块读出的数据中有错误并且重写计数还未到达预定阈值,将执行ECC或其他校正。通常,在非易失性存储器、例如闪速存储器中,在保证的重写计数阈值内,如果具有由存储器的制造商推荐或要求的错误校正能力(错误可校正位的个数),将不会发生不可校正的情况。因此,即使在其错误已经由ECC或其他校正的数据被返回到相关数据块时在数据的可靠性上也不太可能发生问题。另一方面,如果有数据错误并且重写计数已经超过预定阈值,则很可能发生超出ECC的错误校正能力之外的位数的错误。因此,数据块将被替换,使得新的替换数据块来保存校正后的数据以供以后使用。
因此,通过上述结合ECC的替换技术,即使在重写计数超过保证限制时,与仅仅在预定重写计数限制的基础上执行替换的技术相比,每个数据块地址的平均重写计数也可以最终被增大。这使得能够省去过多的替代区域。
此外,使得能够避免象在仅仅根据在ECC的基础上已经出现的错误数来替换数据块的情况下一样将性能已经变坏的数据块保持在可重写状态,从而可以提高信息存储的可靠性。
[重写操作中的替换控制]下面将描述在重写操作中在数据块上的替换控制。
图7是显示由控制器进行的写操作的控制流程的一个例子的流程图。当给出一个指令来重写逻辑地址m的数据时,作为响应,控制器5通知外部信息处理设备4对传送用于逻辑地址m的重写数据(用于用户数据m的重写数据)的容许(S11)。接收到这个容许之后,控制器5接受由外部信息处理设备4提供的重写数据,并将数据存储到缓冲器13中(S12)。控制器5将物理地址m的数据块读到缓冲器13(S13)。然后判断在已经读出的数据块2(m)的逻辑地址区域30中保存的逻辑地址信息与数据块2(m)的物理地址是否彼此相同(S14)。如果是,将确定该数据块还未被替换,对应于逻辑地址m的数据块2(m)的物理地址m的数据区域被缓冲器13中的数据所替换(S15)。如果否,将确定数据块替换已经发生,在替换地址表STLB中搜索其逻辑地址m已经被替换的数据块(S16),并且用缓冲器13中的数据替换该被替换的数据块中的数据区域(S15)。在步骤S15的重写中,控制器5判断来自闪速存储器3的重写失败的通知存在与否(S17)。如果没有失败,该重写处理将结束。如果有失败,控制器5判断此时的重写计数是否大于由重写阈值次数数据TDAT指示的次数(例如,K次)(S18)。
如果在步骤S18的判断指示出一个大于K次的重写计数,则将参考替换地址表STLB来搜索用于未使用数据块的替代区域21(S19)。完成处理来将检索出的未使用数据块作为逻辑地址m的新数据块来替代(S20)。在这个替换处理中,首先,在替换之前,将逻辑地址m的信息存储到检索出的未使用数据块的逻辑地址区域,将缓冲器13中的用于重写的用户数据m存储到未使用数据块的数据区域,将未使用数据块的物理地址信息存储到逻辑地址m的数据块的逻辑地址区域。其次,将逻辑地址m的信息存储到替换地址表STLB的表信息保存区域40中对应于未使用数据块的物理地址的偏移位置中。对于相关的替换处理,控制器5判断来自闪速存储器3的重写失败的通知存在与否(S21),如果没有失败,该重写处理将结束。如果有失败,将重复在步骤S19和S20的处理。对于在步骤S20的替换处理,可以限制检索的次数,或者根据重写计数进行限制,当到达该限制时,将该过程视为有错误地结束。
如果在步骤S18的判断表明重写计数不大于K次时,控制器5可以再次执行处理来用缓冲器13中的用于重写的用户数据m替换逻辑地址m的数据区域(S22)。也在步骤S21为这个写操作判断重写失败的通知的存在与否,如果有失败,将进行在步骤S19和S20的处理。
图8是显示在响应于重写请求而重写闪速存储器中的数据失败的情况下的操作的一个例子的流程图。在其中所示的重写中,假设闪速存储器3在写之前的状态是图2所示的状态,闪速存储器3在写之后的状态是图9所示的状态。假设重写阈值次数是K次。
进行从外部信息处理设备4到逻辑地址m的数据重写处理(T11)、响应于此从控制器5向外部信息处理设备4通知对传送重写数据(用于用户数据m的重写数据)的容许(T12)、以及从外部信息处理设备4向控制器5传送用于用户数据m的重写数据的处理(T13)。控制器5从闪速存储器3读出物理地址m的数据块(T14),确认逻辑地址m的数据块还未被替换,并用用于用户数据m的重写数据替换相关物理地址m的数据块(T15)。然后,例如,闪速存储器3向控制器5发出重写失败的通知(T16)。由于重写计数在其上限K之外,因此从闪速存储器3读出数据块2(z)的替换地址表STLB以便替换数据块(T17)。控制器5搜索替换地址表STLB,将地址n的数据块作为要替换的数据块,并且在此时从闪速存储器3读出相关物理地址n的数据块(T18)。对已经读出的物理地址n的数据块进行错误检测等,如果发现正常,为了将这个物理地址n的数据块用来替换,控制器5将如上所述重写替换地址表STLB以便反映该替换(T19),并用用于用户数据m的重写数据替换物理地址n的数据块(T20)。最后,控制器5通知外部信息处理设备4处理结束(T21)。
在图9中显示了由图8所示的操作进行的重写处理的结果,与图6所示的状态不同,因为其初始状态如图2所示的闪速存储器中的物理地址m的重写已经失败,所有数据都被无效。在这种情况下的无效意味着例如所有数据都已经被擦除或不能由ECC校正。
在读操作中,在ECC错误的情况下,参考重写计数,如果其上限被超过,该数据块将被替换。在重写的情况下,如果一个重写尝试失败,将参考重写计数,如果其上限被超过,该数据块将被替换。这是因为随着存储单元性能的变坏,重写失败的可能性估计可能增大,如果在一个重写尝试失败时重写计数已经超过其上限,存储单元的可重写寿命很可能接近其终点。这类似于读操作中的假设,当出现一个ECC错误并且重写计数超出其上限之外时,存储单元的可重写寿命接近其终点。因此,与在读操作中的情况一样,在重写的情况下,即使重写计数已经超过保证界限时与ECC的结合也容许替换,使得能够省去过大的替代区域,另外,与将依据ECC的错误数目作为数据块替换的唯一标尺的情况不同,可以防止将过度变坏的数据块保持在可重写状态,从而可以提高信息存储的可靠性。由于控制器根据其作为物理地址的逻辑地址来选择数据块,因此不需要在每次存取处理时参考该表,使得能够确保高速存取并延长可重写寿命。
[重写操作中的另一种方式的替换控制]下面将描述在数据块的重写中的替换控制的另一个例子。
图10显示了闪速存储器3的数据结构的另一个例子。与图2的数据结构的不同之处在于将一个ECC校正标志区域33添加到每个数据块2上。在ECC校正标志区域33中,当读取对应的数据块时,如果发现已经经过至少一次ECC校正,将建立一个校正标志。如果还没有校正,将建立一个无校正标志。在替代区域21中,替换之前的ECC校正标志区域33包含无效数据,即,处于擦除状态。在图10的例子中,物理地址m指示过去发生的ECC校正。
图11是显示由控制器在图10所示的数据结构上进行的重写操作的控制流程的一个例子的流程图。当发出指令来重写逻辑地址m的数据时,作为响应,控制器5向外部信息处理设备4通知对向逻辑地址m传送重写数据(用于用户数据m的重写数据)的容许(S30)。在接收到这个容许之后,控制器5接受从外部信息处理设备4提供的重写数据,并将其存储在缓冲器13中(S31)。控制器5读出逻辑地址m的数据块(S32),并判断相关数据块的重写计数是否超出上限K之外(S33)。如果计数还未达到K,将用由缓冲器13保存的用于用户数据m的重写数据替换逻辑地址m的数据块的数据区域(S34)。如果重写计数是K或更多,判断在该逻辑地址m的数据块中是否建立了ECC校正标志(S35)。如果未建立ECC校正标志,将执行步骤S34的重写处理。如果建立了ECC校正标志,将用一个未使用数据块替换该逻辑地址m的数据块,并将用于用户数据m的重写数据写到被替换的地址中(S36)。
虽然未显示,如果在步骤S34出现写错误,可以接着进行步骤S36的处理。虽然也未显示,还可以执行图7的重写失败之后的处理以及图11的根据ECC错误校正标志存在与否进行的处理。
图12显示了在图10的数据结构的闪速存储器3上进行图11所示的替换处理之后闪速存储器的数据结构的一个例子。存储在物理地址m的数据区域2D中的用户数据m由物理地址n替换。
在图11所示的重写的情况下,如果重写计数超出其上限并且已经经过至少一次ECC校正,将替换该数据块来用于重写。这类似于读操作中的假设,当出现一个ECC错误并且重写计数超出其上限之外时,存储单元的可重写寿命接近其终点。因此,与在读操作中的情况一样,在图11的重写的情况下,即使重写计数已经超过保证界限时与ECC的结合也允许替换,使得能够省去过大的替代区域,另外,与将依据ECC的错误数目作为数据块替换的唯一标尺的情况不同,可以防止将过度变坏的数据块保持在可重写状态,从而可以提高信息存储的可靠性。由于控制器根据其作为物理地址的逻辑地址来选择数据块,因此不需要在每次存取处理时参考该表,使得能够确保高速存取并延长可重写寿命。
最后,将解释确保高速存取的方面。图13是示意性地显示依据目前所述的发明的读处理和写处理的流程图。图14是示意性地显示在一个作为比较的例子中的由一个全时替换地址参考公式进行读处理和写处理的流程图,根据该公式,当到达一特定重写计数时,用一个重写计数更小的区域自动执行数据和地址替换,从而延长了非易失性存储器的可重写寿命。在图14的情况下,在读操作和重写操作中,对定义逻辑地址和物理地址之间的对应关系的替换表的参考是必不可少的。在这个意义上,假设图14所示的操作是一个全时替换地址参考公式。相反,在依据本发明的图13所示的情况中,由于闪速存储器是根据作为物理地址的逻辑地址被存取的,所以仅仅在有替换时才需要参考替换地址表。依据本发明,相对于表参考而言,同样确保了高速存取。
虽然已经参考一个实施例在特定方面描述了由本发明人作出的发明,显然本发明并不限于这个实施例,而是可以在不偏离其实质的情况下以许多不同的方式变化。
例如,非易失性存储器并不限于闪速存储器。它同样可以是EEPROM、高介电存储器等。搜索替代区域的方法不限于参考一个表、例如替换地址表STLB。替代采用这样一个表,通过直接读出替代区域的逻辑地址区域30,同样可以完成搜索,但搜索所需的时间将会变长。使得替代区域中的未使用数据块的逻辑地址区域保存一个无效代码IVCOD并不是唯一的可能性。作为替代,可以仅仅将无效数据等保存在其中。进一步地,在图10的数据结构中,在ECC校正标志区域33中建立一个校正标志的条件并不限于上面所述的内容。条件同样可以是由ECC进行的预定多个错误校正。
虽然由本发明人作出的发明的前面的描述主要涉及与硬盘兼容的闪速盘或闪速存储卡,这是构成本发明的背景的使用领域,但本发明也可以运用于许多其他不同的存储器系统。
下面将简要描述由这个申请在其典型方面公开的本发明实现的优点。
在存储器系统中,可以限制可使用的数据块的不经济的替换,以延长可重写寿命。换句话说,可以减少所准备的替代存储器块的数目,以延长可重写寿命。
可以避免将性能上已经变坏的数据块保持在可重写状态,从而可以增强信息存储的可靠性。
不需要在每次存取处理时都参考表以延长存储器系统的可重写寿命,使得能够确保高速存取和延长可重写寿命。
Claims (16)
1.一种存储器系统,包括一个在预定物理地址单元中包括多个数据块的非易失性存储器和一个响应于来自外部的存取请求来控制所述非易失性存储器的控制器,
其中,所述数据块中的每一个具有用于保存关于每个数据区域的重写计数和错误检验信息的区域,以及
其中,所述控制器在所述非易失性存储器上的读操作中,根据错误检验信息检查进行读取的区域中的错误,并且,当已经出现错误时,如果重写计数大于一个预定值,将用另一个数据块替换相关数据块,或者,如果不大于,校正与错误有关的数据块中的数据。
2.如权利要求1所述的存储器系统,其中,如果所述控制器在所述非易失性存储器上的写操作中不能在被进行写的一个数据块上进行写,如果重写计数大于一个预定值,则用另一个数据块替换所述数据块,或者,如果不大于,则再次在与失败有关的数据块上进行写。
3.如权利要求2所述的存储器系统,其中,如果所述对写的尝试再失败,将用又一个数据块替换所述数据块。
4.一种存储器系统,包括一个在预定物理地址单元中包括多个数据块的非易失性存储器和一个响应于来自外部的存取请求来控制所述非易失性存储器的控制器,
其中,所述数据块中的每一个具有用于保存重写计数和错误校正标志的区域,以及
其中,所述控制器在所述非易失性存储器上的写操作中,如果数据块的重写计数不大于一个预定值,将在被进行写的数据块上执行写处理,如果重写计数大于预定值并且错误校正标志指示所述数据块已经经过错误校正,将用另一个数据块替换所述数据块,如果指示所述数据块未经过错误校正,将再次在所述数据块上进行写。
5.如权利要求4所述的存储器系统,其中,所述控制器在所述非易失性存储器上的写处理中,当它不能在被进行写的数据块上进行写时,如果重写计数大于预定值,则用另一个数据块替换所述数据块,或者,如果重写计数不大于,则再次在与失败有关的数据块上进行写。
6.如权利要求5所述的存储器系统,其中,所述错误校正标志是指示是否已经进行了错误校正的一位或更多位的标志信息。
7.如权利要求6所述的存储器系统,其中,所述数据块信息具有一个可以用于保存对应于其物理地址的逻辑地址信息的地址信息保存区域,以及
所述控制器根据作为物理地址的逻辑地址选择一个数据块,并根据所选择的数据块的物理地址与所述地址信息保存区域中保存的信息之间的同一性判断出所选择的数据块还未被替换。
8.如权利要求7所述的存储器系统,
其中,所述非易失性存储器具有一个替换地址表,
其中,所述替换地址表具有一个可以用于按照物理地址排列的次序来保存对应的逻辑地址信息的地址信息保存区域,以及
其中,当所述控制器发现了根据作为物理地址的逻辑地址选择的数据块的物理地址与该数据块的所述地址信息保存区域中保存的信息之间的不相同时,参考对应于替换地址表的物理地址的表信息保存区域,并找出逻辑地址是由哪个数据块替换的。
9.如权利要求8所述的存储器系统,
其中,对应于未向其分配逻辑地址的数据块将未使用代码存储在所述表信息保存区域中,以及
其中,所述控制器在替换数据块时参考所述替换地址表,并将个对应于所述未使用代码的数据块确定为新的可用替代物。
10.如权利要求7所述的存储器系统,其中,所述控制器用一个不同于逻辑地址的无效代码来初始化未向其分配逻辑地址的数据块的地址信息保存区域。
11.如权利要求10所述的存储器系统,其中,所述控制器在替换一个数据块时使得替换数据块的地址信息保存区域保存要被替换的数据块的物理地址。
12.如权利要求11所述的存储器系统,其中,所述控制器将已经经历了写失败的数据块置于一个擦除状态。
13.如权利要求5所述的存储器系统,
其中,所述多个数据块中的每个特定数据块具有一个用于重写阈值计数数据的存储区域,以及
其中,所述控制器判断与重写阈值计数数据相同的重写计数是所述预定重写计数。
14.如权利要求13所述的存储器系统,其中,非易失性存储器是一个闪速存储器,所述逻辑地址信息由八位或更多位组成。
15.如权利要求14所述的存储器系统,其中,所述错误检验信息是一个ECC代码。
16.如权利要求15所述的存储器系统,其中,所述控制器包括外部接口电路、缓冲器、CPU、ECC电路和存储器接口电路。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003030292A JP4073799B2 (ja) | 2003-02-07 | 2003-02-07 | メモリシステム |
JP2003030292 | 2003-02-07 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1571069A true CN1571069A (zh) | 2005-01-26 |
Family
ID=32820854
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2004100038344A Pending CN1571069A (zh) | 2003-02-07 | 2004-02-06 | 非易失性存储系统 |
Country Status (5)
Country | Link |
---|---|
US (3) | US7137027B2 (zh) |
JP (1) | JP4073799B2 (zh) |
KR (1) | KR101056800B1 (zh) |
CN (1) | CN1571069A (zh) |
TW (1) | TW200417860A (zh) |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100422947C (zh) * | 2005-03-10 | 2008-10-01 | 松下电器产业株式会社 | 非易失性存储系统、非易失性存储装置、数据读出方法及读出程序 |
CN101346697A (zh) * | 2005-12-29 | 2009-01-14 | 英特尔公司 | 报告存储器位校正的方法和装置 |
CN101510168B (zh) * | 2008-11-07 | 2012-06-27 | 慧帝科技(深圳)有限公司 | 一种快闪记忆体的存取方法和记忆体装置 |
CN102667943A (zh) * | 2009-10-28 | 2012-09-12 | 桑迪士克科技股份有限公司 | 通过加速的写入后读取来管理错误的非易失性存储器和方法 |
CN101183563B (zh) * | 2006-09-06 | 2012-10-10 | 三星电子株式会社 | 包括闪存的存储器系统和操作该系统的方法 |
CN102880521A (zh) * | 2007-06-07 | 2013-01-16 | 美光科技公司 | 检测出现的坏块 |
CN101930406B (zh) * | 2009-06-18 | 2013-06-12 | 慧国(上海)软件科技有限公司 | 非易失性存储器的写入错误管理方法、存储卡、及控制器 |
US8595593B2 (en) | 2008-12-24 | 2013-11-26 | Hynix Semiconductor Inc. | Nonvolatile memory device having a copy back operation and method of operating the same |
CN103632732A (zh) * | 2012-08-24 | 2014-03-12 | 索尼公司 | 存储器控制设备、非易失性存储器及存储器控制方法 |
CN104699546A (zh) * | 2006-11-30 | 2015-06-10 | 株式会社东芝 | 存储器系统 |
CN105489246A (zh) * | 2014-09-16 | 2016-04-13 | 华邦电子股份有限公司 | Nor闪存及其修补方法 |
CN108399936A (zh) * | 2017-02-06 | 2018-08-14 | 爱思开海力士有限公司 | 具有延长产品寿命的存储系统及其操作方法 |
CN109472172A (zh) * | 2017-09-08 | 2019-03-15 | 恩智浦有限公司 | 用于防止来自存储器的未授权数据访问的方法 |
CN110119247A (zh) * | 2018-02-05 | 2019-08-13 | 质子世界国际公司 | 非易失性存储器 |
CN110473586A (zh) * | 2019-07-31 | 2019-11-19 | 珠海博雅科技有限公司 | 一种写失效存储单元的替换方法、装置、设备及存储介质 |
CN110610737A (zh) * | 2018-06-14 | 2019-12-24 | 赛舌尔商塔普思科技公司 | 存储器的修复方法 |
CN111009280A (zh) * | 2018-10-08 | 2020-04-14 | 三星电子株式会社 | 存储装置以及存储装置的操作方法 |
CN111951855A (zh) * | 2016-04-27 | 2020-11-17 | 慧荣科技股份有限公司 | 存取闪存模块的方法及相关的闪存控制器与记忆装置 |
US11323133B2 (en) | 2016-04-27 | 2022-05-03 | Silicon Motion, Inc. | Flash memory apparatus and storage management method for flash memory |
US11500722B2 (en) | 2016-04-27 | 2022-11-15 | Silicon Motion, Inc. | Flash memory apparatus and storage management method for flash memory |
Families Citing this family (85)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8027194B2 (en) | 1988-06-13 | 2011-09-27 | Samsung Electronics Co., Ltd. | Memory system and method of accessing a semiconductor memory device |
US7664987B2 (en) * | 2003-05-25 | 2010-02-16 | Sandisk Il Ltd. | Flash memory device with fast reading rate |
US7173852B2 (en) * | 2003-10-03 | 2007-02-06 | Sandisk Corporation | Corrected data storage and handling methods |
KR100541642B1 (ko) * | 2004-03-11 | 2006-01-10 | 삼성전자주식회사 | 플래시 메모리의 데이터 관리 장치 및 방법 |
JP2006048783A (ja) | 2004-08-02 | 2006-02-16 | Renesas Technology Corp | 不揮発性メモリおよびメモリカード |
JP2006107363A (ja) * | 2004-10-08 | 2006-04-20 | Toshiba Corp | 携帯可能電子装置と携帯可能電子装置に用いられるメモリアクセス方法 |
JP4261462B2 (ja) * | 2004-11-05 | 2009-04-30 | 株式会社東芝 | 不揮発性メモリシステム |
US7315916B2 (en) * | 2004-12-16 | 2008-01-01 | Sandisk Corporation | Scratch pad block |
JP2006179101A (ja) * | 2004-12-22 | 2006-07-06 | Fujitsu Ltd | 半導体記憶装置 |
TWI308741B (en) * | 2005-06-03 | 2009-04-11 | Quanta Storage Inc | A method of defect areas management |
US20070011513A1 (en) * | 2005-06-13 | 2007-01-11 | Intel Corporation | Selective activation of error mitigation based on bit level error count |
KR100744122B1 (ko) * | 2006-01-12 | 2007-08-01 | 삼성전자주식회사 | 하이브리드 하드디스크 드라이브의 제어 방법, 이에 적합한기록 매체 그리고 이에 적합한 장치 |
JP2007214786A (ja) * | 2006-02-08 | 2007-08-23 | Toshiba Corp | 携帯型撮像装置 |
US20070226401A1 (en) * | 2006-03-21 | 2007-09-27 | Pa-Chung Huang | Data accessing structure and method for flash memory |
KR100854970B1 (ko) * | 2007-01-08 | 2008-08-28 | 삼성전자주식회사 | 멀티 레벨 셀 플래시 메모리 장치 및 그것의 프로그램 방법 |
US20080072119A1 (en) * | 2006-08-31 | 2008-03-20 | Rodney Rozman | Allowable bit errors per sector in memory devices |
DE102007033746A1 (de) | 2006-10-12 | 2008-04-17 | Giesecke & Devrient Gmbh | Verwaltung von Datenobjekten in einem Haldenspeicher |
US8145983B1 (en) | 2006-11-08 | 2012-03-27 | Marvell International Ltd. | Methods and apparatus for identification of likely errors in data blocks |
KR100929155B1 (ko) * | 2007-01-25 | 2009-12-01 | 삼성전자주식회사 | 반도체 메모리 장치 및 그것의 메모리 셀 억세스 방법 |
US7929372B2 (en) * | 2007-01-25 | 2011-04-19 | Samsung Electronics Co., Ltd. | Decoder, memory system, and physical position converting method thereof |
KR100877609B1 (ko) * | 2007-01-29 | 2009-01-09 | 삼성전자주식회사 | 버퍼 메모리의 플래그 셀 어레이를 이용하여 데이터 오류 정정을 수행하는 반도체 메모리 시스템 및 그 구동 방법 |
JP5283845B2 (ja) | 2007-02-07 | 2013-09-04 | 株式会社メガチップス | ビットエラーの予防方法、情報処理装置 |
JP2008198310A (ja) * | 2007-02-15 | 2008-08-28 | Megachips Lsi Solutions Inc | ビットエラーの修復方法および情報処理装置 |
JP5051514B2 (ja) * | 2007-02-23 | 2012-10-17 | 日本電気株式会社 | メモリエラーパターン記録システム、メモリエラーパターン記録方法 |
US7856576B2 (en) * | 2007-04-25 | 2010-12-21 | Hewlett-Packard Development Company, L.P. | Method and system for managing memory transactions for memory repair |
JP4444314B2 (ja) | 2007-07-13 | 2010-03-31 | 株式会社東芝 | 半導体メモリ情報蓄積装置とその書き込み制御方法 |
JP2008310896A (ja) * | 2007-06-15 | 2008-12-25 | Spansion Llc | 不揮発性記憶装置、不揮発性記憶システムおよび不揮発性記憶装置の制御方法 |
TWI372397B (en) * | 2007-08-06 | 2012-09-11 | Ind Tech Res Inst | Method and system of defect management for storage medium |
US8001444B2 (en) * | 2007-08-08 | 2011-08-16 | Intel Corporation | ECC functional block placement in a multi-channel mass storage device |
US7770079B2 (en) * | 2007-08-22 | 2010-08-03 | Micron Technology Inc. | Error scanning in flash memory |
JP5059524B2 (ja) * | 2007-09-05 | 2012-10-24 | ルネサスエレクトロニクス株式会社 | メモリ制御回路、半導体集積回路、不揮発性メモリのベリファイ方法 |
JP2009080884A (ja) * | 2007-09-26 | 2009-04-16 | Panasonic Corp | 不揮発性半導体記憶装置 |
JP2009087509A (ja) | 2007-10-03 | 2009-04-23 | Toshiba Corp | 半導体記憶装置 |
TWI343001B (en) * | 2007-11-13 | 2011-06-01 | Ite Tech Inc | Data preserving method and data accessing method for non-volatile memory |
US8261013B2 (en) * | 2007-11-26 | 2012-09-04 | Hyperstone Gmbh | Method for even utilization of a plurality of flash memory chips |
TWI368225B (en) * | 2007-11-29 | 2012-07-11 | Ind Tech Res Inst | Recoding medium structure capable of displaying defect rate |
JP4617405B2 (ja) * | 2008-02-05 | 2011-01-26 | 富士通株式会社 | 不良メモリを検出する電子機器、不良メモリ検出方法およびそのためのプログラム |
JP2009244962A (ja) * | 2008-03-28 | 2009-10-22 | Toshiba Corp | メモリシステム |
TWI381390B (zh) * | 2008-04-10 | 2013-01-01 | Phison Electronics Corp | 快閃記憶體的損壞區塊辨識方法、儲存系統及其控制器 |
TWI415134B (zh) * | 2008-04-10 | 2013-11-11 | Phison Electronics Corp | 資料存取方法、使用此方法的控制器與儲存系統 |
US8031521B1 (en) * | 2008-05-20 | 2011-10-04 | Marvell International Ltd. | Reprogramming non-volatile memory devices for read disturbance mitigation |
US20090327581A1 (en) * | 2008-06-30 | 2009-12-31 | Coulson Richard L | Nand memory |
KR100977709B1 (ko) * | 2008-08-20 | 2010-08-24 | 주식회사 셀픽 | 플래시메모리 저장장치 및 그에 따른 관리 방법 |
WO2010043245A1 (de) * | 2008-10-13 | 2010-04-22 | Hyperstone Gmbh | Verfahren zur sicherung eines ankerblocks in flashspeichern |
KR20100041313A (ko) * | 2008-10-14 | 2010-04-22 | 삼성전자주식회사 | 데이터 저장 방법, 데이터 저장 장치 및 그 시스템 |
JP2010123009A (ja) * | 2008-11-21 | 2010-06-03 | Kyocera Mita Corp | 情報管理装置および情報管理方法 |
KR101042197B1 (ko) | 2008-12-30 | 2011-06-20 | (주)인디링스 | 메모리 컨트롤러 및 메모리 관리 방법 |
TWI401691B (zh) * | 2009-03-20 | 2013-07-11 | Phison Electronics Corp | 具快閃記憶體測試功能的控制器及其儲存系統與測試方法 |
JP2010237822A (ja) * | 2009-03-30 | 2010-10-21 | Toshiba Corp | メモリコントローラおよび半導体記憶装置 |
CN101853693A (zh) * | 2009-04-02 | 2010-10-06 | 智微科技股份有限公司 | 储存装置以及延长储存装置的使用寿命的方法 |
US20100332922A1 (en) * | 2009-06-30 | 2010-12-30 | Mediatek Inc. | Method for managing device and solid state disk drive utilizing the same |
US8453021B2 (en) | 2009-07-29 | 2013-05-28 | Stec, Inc. | Wear leveling in solid-state device |
US8266481B2 (en) * | 2009-07-29 | 2012-09-11 | Stec, Inc. | System and method of wear-leveling in flash storage |
US8479061B2 (en) * | 2009-09-24 | 2013-07-02 | AGIGA Tech | Solid state memory cartridge with wear indication |
US8312349B2 (en) * | 2009-10-27 | 2012-11-13 | Micron Technology, Inc. | Error detection/correction based memory management |
US8230255B2 (en) | 2009-12-15 | 2012-07-24 | International Business Machines Corporation | Blocking write acces to memory modules of a solid state drive |
JP5508089B2 (ja) * | 2010-03-30 | 2014-05-28 | キヤノン株式会社 | 記録装置 |
JP5661313B2 (ja) * | 2010-03-30 | 2015-01-28 | キヤノン株式会社 | 記憶装置 |
WO2012039983A1 (en) * | 2010-09-24 | 2012-03-29 | Rambus Inc. | Memory device with ecc history table |
JP5263251B2 (ja) * | 2010-09-27 | 2013-08-14 | 富士通セミコンダクター株式会社 | 半導体記憶装置 |
TWI420308B (zh) * | 2010-10-13 | 2013-12-21 | Phison Electronics Corp | 區塊管理方法、記憶體控制器與記憶體儲存裝置 |
JP4865085B1 (ja) * | 2010-12-10 | 2012-02-01 | 株式会社エクスプロア | 発光表示スティック |
US8707104B1 (en) | 2011-09-06 | 2014-04-22 | Western Digital Technologies, Inc. | Systems and methods for error injection in data storage systems |
US8700834B2 (en) | 2011-09-06 | 2014-04-15 | Western Digital Technologies, Inc. | Systems and methods for an enhanced controller architecture in data storage systems |
US9195530B1 (en) | 2011-09-06 | 2015-11-24 | Western Digital Technologies, Inc. | Systems and methods for improved data management in data storage systems |
US8713357B1 (en) * | 2011-09-06 | 2014-04-29 | Western Digital Technologies, Inc. | Systems and methods for detailed error reporting in data storage systems |
JP2013068993A (ja) * | 2011-09-20 | 2013-04-18 | Toshiba Corp | メモリコントローラ |
JP2013069183A (ja) * | 2011-09-26 | 2013-04-18 | Toshiba Corp | コントローラおよびメモリシステム |
US8627158B2 (en) * | 2011-12-08 | 2014-01-07 | International Business Machines Corporation | Flash array built in self test engine with trace array and flash metric reporting |
US9053008B1 (en) | 2012-03-26 | 2015-06-09 | Western Digital Technologies, Inc. | Systems and methods for providing inline parameter service in data storage devices |
JP5929456B2 (ja) * | 2012-04-17 | 2016-06-08 | ソニー株式会社 | 記憶制御装置、記憶装置、情報処理システム、および、それらにおける処理方法 |
JP5867264B2 (ja) * | 2012-04-24 | 2016-02-24 | ソニー株式会社 | 記憶制御装置、メモリシステム、情報処理システム、および、記憶制御方法 |
US9519531B2 (en) * | 2012-11-27 | 2016-12-13 | Samsung Electronics Co., Ltd. | Memory devices and memory systems having the same |
JP2013137792A (ja) * | 2013-02-28 | 2013-07-11 | Toshiba Corp | 電子機器及びその制御方法 |
JP6102515B2 (ja) * | 2013-05-24 | 2017-03-29 | 富士通株式会社 | 情報処理装置、制御回路、制御プログラム、および制御方法 |
KR20170122771A (ko) * | 2015-02-26 | 2017-11-06 | 가부시키가이샤 한도오따이 에네루기 켄큐쇼 | 메모리 시스템 및 정보 처리 시스템 |
JP6901831B2 (ja) | 2015-05-26 | 2021-07-14 | 株式会社半導体エネルギー研究所 | メモリシステム、及び情報処理システム |
KR102565918B1 (ko) * | 2016-02-24 | 2023-08-11 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 그것의 동작방법 |
US10191854B1 (en) | 2016-12-06 | 2019-01-29 | Levyx, Inc. | Embedded resilient distributed dataset systems and methods |
KR20190052315A (ko) * | 2017-11-08 | 2019-05-16 | 에스케이하이닉스 주식회사 | 메모리 장치 및 그것을 포함하는 메모리 시스템 |
US10846165B2 (en) * | 2018-05-17 | 2020-11-24 | Micron Technology, Inc. | Adaptive scan frequency for detecting errors in a memory system |
TWI697006B (zh) * | 2019-05-09 | 2020-06-21 | 點序科技股份有限公司 | 快閃記憶體管理方法及快閃記憶體 |
KR20220167077A (ko) * | 2021-06-11 | 2022-12-20 | 에스케이하이닉스 주식회사 | 저장 장치 및 그 동작 방법 |
US11929127B2 (en) * | 2021-08-31 | 2024-03-12 | Micron Technology, Inc. | Selective data pattern write scrub for a memory system |
CN117008833A (zh) * | 2023-07-21 | 2023-11-07 | 汇钜电科(东莞)实业有限公司 | Nand闪存中数据可靠存储的方法、装置及存储介质 |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5268870A (en) | 1988-06-08 | 1993-12-07 | Eliyahou Harari | Flash EEPROM system and intelligent programming and erasing methods therefor |
DE69034227T2 (de) * | 1989-04-13 | 2007-05-03 | Sandisk Corp., Sunnyvale | EEprom-System mit Blocklöschung |
US6347051B2 (en) * | 1991-11-26 | 2002-02-12 | Hitachi, Ltd. | Storage device employing a flash memory |
JP3178909B2 (ja) * | 1992-01-10 | 2001-06-25 | 株式会社東芝 | 半導体メモリ装置 |
JPH0896589A (ja) | 1994-09-28 | 1996-04-12 | Nec Corp | 半導体記憶装置 |
JP2671860B2 (ja) * | 1995-03-30 | 1997-11-05 | 日本電気株式会社 | フラッシュメモリ用ファイルシステム |
US5884323A (en) * | 1995-10-13 | 1999-03-16 | 3Com Corporation | Extendible method and apparatus for synchronizing files on two different computer systems |
JP3145925B2 (ja) * | 1996-07-18 | 2001-03-12 | 株式会社小糸製作所 | 車輌用前照灯 |
JPH1049360A (ja) * | 1996-08-06 | 1998-02-20 | Nec Eng Ltd | フラッシュメモリへの書き込み方式 |
US6000006A (en) * | 1997-08-25 | 1999-12-07 | Bit Microsystems, Inc. | Unified re-map and cache-index table with dual write-counters for wear-leveling of non-volatile flash RAM mass storage |
KR200221001Y1 (ko) | 1997-10-13 | 2001-06-01 | 에릭 발리베 | 시동전동기용 스톱퍼 |
JP3729638B2 (ja) * | 1998-04-22 | 2005-12-21 | 富士通株式会社 | メモリデバイス |
US6108236A (en) * | 1998-07-17 | 2000-08-22 | Advanced Technology Materials, Inc. | Smart card comprising integrated circuitry including EPROM and error check and correction system |
JP3870563B2 (ja) * | 1998-07-22 | 2007-01-17 | 株式会社デンソー | 電子制御装置及び不揮発性メモリの書き換え回数計数方法 |
WO2001022232A1 (fr) | 1999-09-17 | 2001-03-29 | Hitachi, Ltd. | Memoire dans laquelle le nombre de corrections d'erreurs est enregistre |
JP2001229069A (ja) | 2000-02-17 | 2001-08-24 | Dainippon Printing Co Ltd | Icモジュール |
JP2002008381A (ja) | 2000-06-21 | 2002-01-11 | Seiko Epson Corp | 半導体装置 |
US6941505B2 (en) | 2000-09-12 | 2005-09-06 | Hitachi, Ltd. | Data processing system and data processing method |
JP4278879B2 (ja) * | 2001-02-27 | 2009-06-17 | 株式会社オートネットワーク技術研究所 | 車両周辺視認装置 |
US7467274B2 (en) * | 2001-12-31 | 2008-12-16 | Hewlett-Packard Development Company, L.P. | Method to increase the life span of limited cycle read/write media |
JP2004133969A (ja) * | 2002-10-08 | 2004-04-30 | Renesas Technology Corp | 半導体装置 |
-
2003
- 2003-02-07 JP JP2003030292A patent/JP4073799B2/ja not_active Expired - Fee Related
- 2003-11-27 TW TW092133429A patent/TW200417860A/zh not_active IP Right Cessation
-
2004
- 2004-01-14 US US10/756,292 patent/US7137027B2/en active Active
- 2004-02-03 KR KR1020040006998A patent/KR101056800B1/ko active IP Right Grant
- 2004-02-06 CN CNA2004100038344A patent/CN1571069A/zh active Pending
-
2006
- 2006-10-19 US US11/583,156 patent/US7447936B2/en not_active Expired - Fee Related
-
2008
- 2008-10-03 US US12/245,203 patent/US8103899B2/en not_active Expired - Fee Related
Cited By (39)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100422947C (zh) * | 2005-03-10 | 2008-10-01 | 松下电器产业株式会社 | 非易失性存储系统、非易失性存储装置、数据读出方法及读出程序 |
CN101346697A (zh) * | 2005-12-29 | 2009-01-14 | 英特尔公司 | 报告存储器位校正的方法和装置 |
CN101346697B (zh) * | 2005-12-29 | 2012-11-14 | 英特尔公司 | 报告存储器位校正的方法和装置 |
CN101183563B (zh) * | 2006-09-06 | 2012-10-10 | 三星电子株式会社 | 包括闪存的存储器系统和操作该系统的方法 |
CN104699546A (zh) * | 2006-11-30 | 2015-06-10 | 株式会社东芝 | 存储器系统 |
USRE47946E1 (en) | 2006-11-30 | 2020-04-14 | Toshiba Memory Corporation | Method for determining the exhaustion level of semiconductor memory |
CN102880521A (zh) * | 2007-06-07 | 2013-01-16 | 美光科技公司 | 检测出现的坏块 |
US8930771B2 (en) | 2007-06-07 | 2015-01-06 | Micron Technology, Inc. | Systems and methods for retrieving data |
CN102880521B (zh) * | 2007-06-07 | 2015-09-30 | 美光科技公司 | 非易失性存储器装置中管理块和存取数据页的方法及设备 |
US9405639B2 (en) | 2007-06-07 | 2016-08-02 | Micron Technology, Inc. | Systems and methods for retrieving data |
CN101510168B (zh) * | 2008-11-07 | 2012-06-27 | 慧帝科技(深圳)有限公司 | 一种快闪记忆体的存取方法和记忆体装置 |
US8595593B2 (en) | 2008-12-24 | 2013-11-26 | Hynix Semiconductor Inc. | Nonvolatile memory device having a copy back operation and method of operating the same |
CN101763904B (zh) * | 2008-12-24 | 2016-06-15 | 海力士半导体有限公司 | 非易失性存储装置及其操作方法 |
CN101930406B (zh) * | 2009-06-18 | 2013-06-12 | 慧国(上海)软件科技有限公司 | 非易失性存储器的写入错误管理方法、存储卡、及控制器 |
CN102667943A (zh) * | 2009-10-28 | 2012-09-12 | 桑迪士克科技股份有限公司 | 通过加速的写入后读取来管理错误的非易失性存储器和方法 |
CN102667943B (zh) * | 2009-10-28 | 2016-05-18 | 桑迪士克科技股份有限公司 | 通过加速的写入后读取来管理错误的非易失性存储器和方法 |
CN103632732A (zh) * | 2012-08-24 | 2014-03-12 | 索尼公司 | 存储器控制设备、非易失性存储器及存储器控制方法 |
CN103632732B (zh) * | 2012-08-24 | 2017-07-11 | 索尼公司 | 存储器控制设备、非易失性存储器及存储器控制方法 |
CN105489246B (zh) * | 2014-09-16 | 2018-10-19 | 华邦电子股份有限公司 | Nor闪存及其修补方法 |
CN105489246A (zh) * | 2014-09-16 | 2016-04-13 | 华邦电子股份有限公司 | Nor闪存及其修补方法 |
US11916569B2 (en) | 2016-04-27 | 2024-02-27 | Silicon Motion, Inc. | Flash memory apparatus and storage management method for flash memory |
US11847023B2 (en) | 2016-04-27 | 2023-12-19 | Silicon Motion, Inc. | Flash memory apparatus and storage management method for flash memory |
US11500722B2 (en) | 2016-04-27 | 2022-11-15 | Silicon Motion, Inc. | Flash memory apparatus and storage management method for flash memory |
CN111951855B (zh) * | 2016-04-27 | 2022-05-10 | 慧荣科技股份有限公司 | 存取闪存模块的方法及相关的闪存控制器与记忆装置 |
US11323133B2 (en) | 2016-04-27 | 2022-05-03 | Silicon Motion, Inc. | Flash memory apparatus and storage management method for flash memory |
CN111951855A (zh) * | 2016-04-27 | 2020-11-17 | 慧荣科技股份有限公司 | 存取闪存模块的方法及相关的闪存控制器与记忆装置 |
CN108399936A (zh) * | 2017-02-06 | 2018-08-14 | 爱思开海力士有限公司 | 具有延长产品寿命的存储系统及其操作方法 |
CN108399936B (zh) * | 2017-02-06 | 2021-09-24 | 爱思开海力士有限公司 | 具有延长产品寿命的存储系统及其操作方法 |
CN109472172B (zh) * | 2017-09-08 | 2023-09-08 | 恩智浦有限公司 | 用于防止来自存储器的未授权数据访问的方法 |
CN109472172A (zh) * | 2017-09-08 | 2019-03-15 | 恩智浦有限公司 | 用于防止来自存储器的未授权数据访问的方法 |
US11669392B2 (en) | 2018-02-05 | 2023-06-06 | Proton World International N.V. | Non-volatile memory |
CN110119247B (zh) * | 2018-02-05 | 2023-08-11 | 质子世界国际公司 | 非易失性存储器 |
CN110119247A (zh) * | 2018-02-05 | 2019-08-13 | 质子世界国际公司 | 非易失性存储器 |
CN110610737B (zh) * | 2018-06-14 | 2021-10-29 | 珠海兴芯存储科技有限公司 | 存储器的修复方法 |
CN110610737A (zh) * | 2018-06-14 | 2019-12-24 | 赛舌尔商塔普思科技公司 | 存储器的修复方法 |
CN111009280A (zh) * | 2018-10-08 | 2020-04-14 | 三星电子株式会社 | 存储装置以及存储装置的操作方法 |
CN111009280B (zh) * | 2018-10-08 | 2023-08-29 | 三星电子株式会社 | 存储装置以及存储装置的操作方法 |
CN110473586B (zh) * | 2019-07-31 | 2021-05-14 | 珠海博雅科技有限公司 | 一种写失效存储单元的替换方法、装置、设备及存储介质 |
CN110473586A (zh) * | 2019-07-31 | 2019-11-19 | 珠海博雅科技有限公司 | 一种写失效存储单元的替换方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
US20090037767A1 (en) | 2009-02-05 |
KR20040072036A (ko) | 2004-08-16 |
TWI324303B (zh) | 2010-05-01 |
JP4073799B2 (ja) | 2008-04-09 |
TW200417860A (en) | 2004-09-16 |
US7137027B2 (en) | 2006-11-14 |
KR101056800B1 (ko) | 2011-08-16 |
US20070038901A1 (en) | 2007-02-15 |
US7447936B2 (en) | 2008-11-04 |
US20040156251A1 (en) | 2004-08-12 |
US8103899B2 (en) | 2012-01-24 |
JP2004240793A (ja) | 2004-08-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1571069A (zh) | 非易失性存储系统 | |
US8713381B2 (en) | Systems and methods of using dynamic data for wear leveling in solid-state devices | |
US8412879B2 (en) | Hybrid implementation for error correction codes within a non-volatile memory system | |
US10892026B2 (en) | Memory management method, memory storage device and memory control circuit unit | |
CN1232912C (zh) | 非易失性存储器的控制方法 | |
US8266481B2 (en) | System and method of wear-leveling in flash storage | |
US20170039141A1 (en) | Mapping table updating method, memory storage device and memory control circuit unit | |
US9530509B2 (en) | Data programming method, memory storage device and memory control circuit unit | |
US8489942B1 (en) | Memory management method, and memory controller and memory storage device using the same | |
JP2012137994A (ja) | メモリシステムおよびその制御方法 | |
US9514819B2 (en) | Programming method, memory storage device and memory controlling circuit unit | |
CN1487530A (zh) | 非易失性存储装置 | |
CN1838319A (zh) | 使用多个串存储状态信息的非易失性存储器装置和方法 | |
US10503433B2 (en) | Memory management method, memory control circuit unit and memory storage device | |
US9383929B2 (en) | Data storing method and memory controller and memory storage device using the same | |
US10423524B2 (en) | Memory storage device, control circuit unit and method including storing logical-to-physical table bit map information in a management unit and not storing identical data content | |
US9396804B1 (en) | Memory programming method, memory control circuit unit and memory storage apparatus | |
US10459630B2 (en) | Memory management method, memory storage device and memory controlling circuit unit | |
TWI550625B (zh) | 記憶體管理方法、記憶體儲存裝置及記憶體控制電路單元 | |
US9941907B2 (en) | Memory management method, memory storage device and memory control circuit unit | |
US9600363B2 (en) | Data accessing method, memory controlling circuit unit and memory storage apparatus | |
JP2005190289A (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びに、フラッシュメモリの制御方法 | |
CN118034604A (zh) | 存储器控制方法和存储器存储装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |