CN100555465C - 操作非易失性存储系统的存储系统电路及方法 - Google Patents

操作非易失性存储系统的存储系统电路及方法 Download PDF

Info

Publication number
CN100555465C
CN100555465C CNB2003801093022A CN200380109302A CN100555465C CN 100555465 C CN100555465 C CN 100555465C CN B2003801093022 A CNB2003801093022 A CN B2003801093022A CN 200380109302 A CN200380109302 A CN 200380109302A CN 100555465 C CN100555465 C CN 100555465C
Authority
CN
China
Prior art keywords
piece
district
storage system
controller
system circuit
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.)
Expired - Lifetime
Application number
CNB2003801093022A
Other languages
English (en)
Other versions
CN1745433A (zh
Inventor
凯文·M·康利
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Creative Memory Systems Inc
Original Assignee
SanDisk Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=32468705&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=CN100555465(C) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by SanDisk Corp filed Critical SanDisk Corp
Publication of CN1745433A publication Critical patent/CN1745433A/zh
Application granted granted Critical
Publication of CN100555465C publication Critical patent/CN100555465C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/76Masking faults in memories by using spares or by reconfiguring using address translation or modifications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/38Response verification devices
    • G11C29/42Response verification devices using error correcting codes [ECC] or parity check
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/44Indication or identification of errors, e.g. for repair
    • G11C29/4401Indication or identification of errors, e.g. for repair for self repair
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/78Masking faults in memories by using spares or by reconfiguring using programmable devices
    • G11C29/80Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout
    • G11C29/808Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout using a flexible replacement scheme
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Read Only Memory (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Credit Cards Or The Like (AREA)
  • Transforming Light Signals Into Electric Signals (AREA)
  • Semiconductor Integrated Circuits (AREA)

Abstract

由卡控制器将一非易失性存储器划分成若干个逻辑区,以便减小其用于地址变换的数据结构的大小。调整区界,以包容存储器测试所允许的缺陷从而提高卡的成品率并调整所述区域中的边界以延长所述卡的使用寿命。固件扫描在所述卡上是否存在缺陷块。一旦得知这些块的位置,所述固件便以一使好块均匀分布于各区中的方式来计算所述区界。由于存储器测试标准使好块的数量满足卡测试标准,因此缺陷将会减小卡成品率的下降。所述控制器可实施动态边界调整。在出现缺陷时,所述控制器可再次实施分析,并且,如果需要,重新分布区界,从而移动任何用户数据。

Description

操作非易失性存储系统的存储系统电路及方法
技术领域
本发明涉及半导体非易失性数据存储系统架构及其操作方法领域,并应用于基于快闪电可擦可编程只读存储器(EEPROM)的数据存储系统。
背景技术
快闪EEPROM器件的一常见应用是用作电子器件的大容量数据存储子系统。此种子系统通常构建为可插入多个主机系统内的可拆式存储卡或嵌入主机系统内的不可拆式嵌入存储器。在这两种构建形式中,所述子系统皆包括一个或多个快闪器件并且通常包括一子系统控制器。
快闪EEPROM器件由一个或多个晶体管单元阵列组成,每一单元均能够以非易失性方式存储一位或多位数据。因此,快闪存储器保持其中所编程的数据不需要功率。然而,一旦编程,一单元必须在擦除后才可以一新的数据值重新编程。这些单元阵列被划分成若干组,以便能够有效地构建读取、编程和擦除功能。一种用于大容量存储器的典型的快闪存储器架构将大的单元组排列成若干可擦除的块,其中一块包含可同时擦除的最小数量的单元(擦除单位)。
在一商用形式中,每一块均包含足够的单元来存储一个扇区的用户数据加上一些与所述用户数据及/或与其中存储所述用户数据的块有关的开销数据。在一种此类存储系统中,一扇区中包含的用户数据量为标准的512字节,但也可以是某一其他大小。由于为使各单独的单元块可单独擦除,需要使其彼此隔离,而此会占用集成电路芯片上的空间,所以另一类快闪存储器将块明显变大,以使此种隔离所需的空间变小。但由于还希望以小得多的扇区来处理用户数据,每一大块通常被进一步划分成可单独寻址的页面,这些可单独寻址的页面是读取和编程用户数据的基本单位。每个页面通常存储一个用户数据扇区,但一页面也可存储一不完全的扇区或多个扇区。本文使用的“扇区”是指作为一个单位传输至主机及自主机传输来的用户数据量。
大块系统中的子系统控制器实施许多种功能,包括在由存储器子系统自一主机接收的逻辑地址(LBA)与存储单元阵列内的物理块编号(PBN)及页面地址之间的变换。所述变换通常涉及对逻辑块号(LBN)和逻辑页面使用中间项。所述控制器还通过其经由一接口总线发至快闪存储器件的一系列命令来管理低级快闪电路操作。所述控制器实施的另一功能是通过各种方法保持存储到所述子系统的数据的完整性,例如通过使用一错误修正码(ECC)。
图1显示一快闪存储器件131的一典型内部架构。其主要器件包括一输入/输出(I/O)总线411、及与一外部控制器进行接口连接的控制信号412、一通过命令、地址和状态信号寄存器来控制内部存储操作的存储控制电路450。包括一个或多个快闪EEPROM单元阵列400,每一阵列均具有其自身的行译码器(XDEC)401和列译码器(YDEC)402、一组读出放大器和程序控制电路(SA/PROG)454、及一数据寄存器404。目前,存储单元通常包括一个或多个导电浮动栅极作为存储元件,但也可以使用其他长期电子电荷存储元件。所述存储单元阵列可使用为每一存储元件界定的两个电荷电平来工作,以便因此每一元件存储一位数据。或者,可为每一存储元件界定多于两个存储状态,在此情况下,每一元件中存储多于一位数据。
如果需要,可例如根据美国专利第5,890,192号中所教示,提供复数个阵列400,连同相关的X译码器、Y译码器、遍程/验证电路、数据寄存器等等,该美国专利于1999年3月30日颁发,并受让给本申请案的受让者SanDisk公司,其以引用方式并入本文中。相关的存储系统器件阐述于2000年2月17日由KevinConley等人提出申请的同在申请中的专利申请第09/505,555号中,该申请案以引用方式并入本文中。
外部接口I/O总线411和控制信号412可包括如下:
CS-芯片选择:用来激活快闪存储器接口。
RS-读取选通:用来指示I/O总线正用于自存储器阵列传输数据。
WS-写入选通:用来指示所述I/O总线正用于向存储器阵列传输数据。
AS-地址选通:指示I/O总线正用于传输地址信息。
AD(7:0)-地址/数据总线:此I/O总线用于在控制器与所述存储器控制电路450的快闪存储器命令、地址及数据寄存器之间传输数据。
除这些信号外,所述存储器还通常具有一所述存储子系统控制器可用以确定所述存储器正忙于实施某一任务的构件。此构件可在一内部存储寄存器中包括一专用信号或一状态位,该内部存储寄存器在所述存储器正忙时可访问。
因为可使用其他信号配置来提供同样的功能性,所以该接口仅作为一实例。图1只显示一快闪存储器阵列400及其相关组件,但在一单个快闪存储器芯片上可存在许多个此种阵列,这些阵列共享一共用接口及存储控制电路,但具有单独的XDEC、YDEC、SA/PROG及DATA REG电路以便能够并行地进行读取和编程操作。
数据通过数据寄存器404、经由数据寄存器与I/O总线AD[7:0]411的耦合,从所述存储器阵列传输至一外部控制器。数据寄存器404还耦合读出放大器/编程电路454。耦合至每一读出放大器/编程电路元件的数据寄存器元件的数量可取决于所述存储单元的每一存储元件中所存储的位数,快闪EEPROM单元各自包含一个或多个浮动栅极作为所述存储元件。如果所述存储单元以一多状态模式工作,则每一存储元件可存储复数个位,例如2位或4位。或者,所述存储单元可以一二进制模式工作,以便每一存储元件存储一位数据。
所述行译码器401对阵列400的行地址进行译码,以选择要访问的物理页面。行译码器401经由内部行地址线419从存储器控制逻辑450接收行地址。一列译码器402经由内部列地址线429从所述存储器控制逻辑450接收列地址。
图2显示一典型非易失性数据存储系统的架构,在本实例中,采用快闪存储单元作为存储媒体。在一种形式中,该系统被封装在一可拆式卡内,该可拆式卡具有一沿一侧延伸的电连接器,以便在插入一主机的插座内时提供主机接口。或者,可以一永久性安装的嵌入式电路形式或其他形式将图2所示的系统嵌入一主机系统内。所述系统利用一实施高级主机和存储器控制功能的一单个控制器101。所述快闪存储媒体由一个或多个快闪存储器件组成,每一此种器件通常均形成于其自身的集成电路芯片上。所述系统控制器与所述快闪存储器由一总线121连接,从而使控制器101能够装入命令、地址,并传输数据至所述快闪存储器阵列及自所述快闪存储器阵列传输数据。(所述总线121包括图1所示的412和411。)所述控制器101与一主机系统(未显示)进行接口,用户数据通过该主机系统传输至和传输自所述快闪存储器阵列。倘若图2所示系统包括在一卡内,所述主机接口会包括所述卡及主机设备上的一配合插头和插座总成(未显示)。
控制器101从所述主机接收一命令,以从一特定逻辑地址开始读取或写入一个或多个扇区的用户数据。所述地址既可与也可不与存储单元块中的第一物理页面相一致。
在一些具有划分成多个页面的大容量存储单元块的现有技术系统中,来自一未在更新的块的数据需要从原始块复制到一新块,该新块还包含正由主机写入的新更新的数据。在其他现有技术系统中,与页面中的用户数据一起记录标志,这些标志用来指示正由新写入的数据取代的原始块中的数据页面无效。在2001年1月19日由Kevin Conley提出申请的名称为“非易失性存储器中的部分块数据编程和读取操作(Partial Block Data Programming and Reading Operations)”的同在申请中的专利申请案第09/766,436号中,阐述了一种可写入数据来部分地取代存储在一现有块中的数据而无需从现有块复制未改变的数据或将标志编程至先前已编程的页面中的机制,该申请案以引用方式明示地并入本文中。
此种类型的非易失性存储系统正得到大量应用,尤其当封装在一以可拆方式与主机系统相连接的封闭卡中时。当前的商用存储卡格式包括个人计算机存储卡国际协会(PCMCIA)卡、微型闪存(CF)卡、多媒体卡(MMC)及安全数字(SD)卡。这些卡的一供应商为本申请的受让者SanDisk公司。与这些卡一起使用的主机系统包括个人计算机、笔记本式计算机、手持式计算装置、摄像机、声音重现装置等等。快闪EEPROM系统也用作嵌入主机系统内的大容量存储器。
这些非易失性存储系统包括一个或多个浮动栅极存储单元阵列及一系统控制器。所述控制器管理与主机系统的通信和存储单元阵列存储和检索用户数据的操作。所述存储单元一起分组成多个单元块,其中一单元块是可同时擦除的最小单元分组。在将数据写入一个或多个单元块之前,先擦除那些单元块。用户数据通常以扇区为单位在主机与存储器阵列之间传输。一扇区的用户数据可为便于处理的任一量,较佳小于存储块的容量,通常等于标准磁盘驱动器扇区的大小,即512个字节。在一商用架构中,所述存储系统块的大小可存储一扇区的用户数据加上开销数据,所述开销数据包括诸如存储在所述块中的用户数据的错误修正码(ECC)、所述块的使用历史、缺陷等信息、以及所述存储单元块的其他物理信息。在下列转让给SanDisk公司的美国专利和待决申请案中阐述了此类非易失性存储系统的各种构建方案,这些美国专利和待决申请案的全文皆以引用方式并入本文中:第5,172,338号、第5,602,987号、第5,315,541号、第5,200,959号、第5,270,979号、第5,428,621号、第5,663,901号、第5,532,962号、第5,430,859号和第5,712,180号专利,及1997年8月7日提出申请的第08/910,947号和1999年6月30日提出申请的第09/343,328号申请案。另一类非易失性存储系统利用一存储多个扇区的用户数据的更大存储单元块大小。
有一种存储单元阵列架构可由一列或两列位于一单元子阵列或其他单元装置内并共享一共用擦除栅极的存储单元方便地形成一块。SanDisk公司的美国专利第5,677,872和5,712,179号即提供该架构的实例,这些专利的全文均并入本文中。虽然当前最常见的是通过只界定两个所编程的阈值电平在每一浮动栅极单元里存储一位数据,但趋势是通过建立多于两个浮动栅极晶体管阈值范围而在每一单元中存储多于一位数据。当前可得到一种每一浮动栅极存储两位数据(4个阈值电平范围或状态)的存储系统,且预计未来的系统中每一单元可存储三位数据(8个阈值电平范围或状态)及每一单元可存储四位数据(16个阈值电平范围)。当然,随着每一单元中所存储的位数的上升,存储一扇区的数据所需要的存储单元的数量下降。该趋势与由单元结构和通用半导体处理的改进所促成的阵列的按比例缩放相结合,使在一行单元的一分段部分中形成一存储单元块变得切实可行。所述块结构也可形成为能够在两种状态(每单元1位数据)中或在某一多种状态(例如4种状态(每单元两位数据))中选择每一存储单元的操作,如SanDisk公司的美国专利第5,930,167号中所阐述,该美国专利的全文以引用方式并入本文中。
因为将数据编程到浮动栅极存储单元中可能需大量时间,所以通常同时编程一行中的大量存储单元。但此种平行性的增大会导致增大功率需求和邻近单元的电荷的电位干扰或其间的交互作用。在上文中所并入的SanDisk公司的美国专利第5,890,192号即阐述一种系统,该系统通过同时将多个页面(在彼专利中被称做程序块)的数据编程到位于不同的工作存储单元装置(子阵列)中的不同单元块内而使这些影响最小化。能够将多个页面并行编程到多个子阵列单元内的存储系统阐述于2000年2月17日由Kevin Conley等人提出申请的同在申请中的专利申请案第09/505,555号-其在上文中以引用方式并入本文中、及在2001年1月10日由John Mangan等人提出申请的第09/759,835号-该申请案以引用方式并入本文中。
图3中显示关于图2所示的具体实施例的更多细节。该具体实施例将存储器阵列400划分成许多“平面”,其中平面为在单个电路小片上对所述存储器的细分。本文将只阐述图3所示的更相关的部分。更多细节可见于在前一段中以引用方式并入本文中的美国专利申请案第09/759,835号中。
非易失性存储器芯片17包括一用于通过线302与控制器进行接口的逻辑电路39。为简化说明,未显示所述存储器芯片的其他组件。逻辑电路39的作用是在单独的总线和控制线中产生信号。在线41中提供各种控制信号,一供给所述存储器阵列电路的电源43也通过接口39受到控制。一数据总线45携带被编程入或读取自所述非易失性存储器的用户数据,一地址总线47携带所访问的存储器部分的地址,以便读取用户数据、写入用户数据或擦除存储单元块。
一单一非易失性存储器芯片的浮动栅极存储单元阵列本身被划分成许多个单元,每一个单元均具有其自身的一组支持电路用于寻址、译码、读取等类似操作。在此实例中,图解说明8个由参考编号51-58标记的此等阵列单元0-7。实际上,作为一实例,一单一芯片上的存储器阵列被划分成象限或“平面”,每一象限包括两个单元,这两个单元部分地连接在一起并共享一共用字线译码电路(y-译码),例如存储单元装置4(55)和5(56)任一侧上的y-译码器61和62。如下文根据图3所进一步阐述,所述共用字线横过两个存储单元装置4(55)和5(56),其中一半连接至一侧上的y-译码器61、一半连接至另一侧上的y-译码器62。该存储器架构类似于在上文中以引用方式并入本文的美国专利第5,890,192号中所阐述的架构,只是其具有8个单元或“平面”而不是该专利中所图解说明的4个单元(象限)。
有许多架构用于诸如400(图1)或51-58(图3)等非易失性存储器阵列。其中一种设计的NOR阵列将其存储单元连接在相邻的位(列)线之间并将控制栅极连接至字(行)线。各单独的单元包含一个浮动栅极晶体管并具有或不具有与其串联形成的一选择晶体管,或包含由一单一选择晶体管隔开的两个浮动栅极晶体管。在下列以引用方式全部并入本文中或先前已在上文中并入本文中的SanDisk公司的美国专利和待决申请案中即提供此等阵列的实例及其在存储系统中的应用:第5,095,344、5,172,338、5,602,987、5,663,901、5,430,859、5,657,332、5,712,180、5,890,192和6,151,248号专利,及2000年2月17日提出申请的第09/505,555号和2000年9月22日提出申请的第09/667,344号。
其中一种设计的NAND阵列具有许多存储单元(例如8个、16个或甚至32个),这些存储单元以串联串的形式通过两端的选择晶体管连接于一位线与一参考电位之间。字线与不同串联串中的单元的控制栅极连接。在2001年6月27日提出申请的美国专利申请案第09/893,277号及其中所包含的参考文献中提供此种阵列及其操作的相关实例,该专利申请案也以引用方式并入本文中。
一存储器通常将因制造工艺而具有缺陷部分或在器件的操作过程中出现缺陷部分。存在许多种处理例如使用错误修正码或通过重新映射存储器的若干部分来管控这些缺陷的技术,例如在美国专利第5,602,987号(其在上文以引用方式并入本文中)或美国专利第5,315,541、5,200,959和5,428,621号(其以引用方式并入本文中)中所阐述的技术。举例而言,器件在发运前通常要进行彻底的测试。所述测试可以发现存储器中需要去除的缺陷部分。在装运器件前,可将有关这些缺陷的信息存储在器件上,例如存储在存储器阵列的一ROM区域或单独的ROM内,并且在加电时,由控制器读取并使用所述信息,以使控制器可以所述存储器的一好的部分替代坏的部分。此后,在读取或写入时,控制器将需要参考控制器中的一指针结构进行此种重新映射。
存储器通常设计成具有许多冗余块以取代缺陷块。这些冗余块通常分布于存储器的各逻辑结构区域之间。然而,如果坏块的数量太大或分布太不均匀,此会导致成品率下降或使卡的容量降级。
发明内容
根据本发明的一主要方面,简要且一般地说,一非易失性存储器(例如快闪存储器)由卡控制器划分成若干逻辑区,以便减小其用于地址变换的数据结构的大小。本发明提供用于调整区界以包容存储器测试所允许的缺陷从而提高卡的成品率、及调整所述区域内的边界以延长卡的使用寿命的方法。在生产卡时,实施一设定区界的操作。在此过程中,固件会扫描在卡上是否存在缺陷块。一旦得知所有这些块的位置,所述固件即会通过使好块均匀分布于各区中的方式来计算区界。由于存储器测试标准使好块的数量满足卡测试标准,所以缺陷将使卡成品率的下降降低。
在本发明的另一方面中,所述控制器可实施动态边界调整。在出现缺陷时,所述控制器再次实施分析,且如果好块的数量变得失衡,则重新分布各区界,从而移动任一用户数据。可基于一定时机构,例如编程或擦除循环的数量,响应于一错误修正码(ECC)结果、或者一关于编程或擦除困难(例如验证失败)的指示,来改进所述过程。
本发明的其他方面、特征和优点包括在下文的实例性实施例说明中,应结合附图来阅读此说明。
附图说明
图1为一具有存储器控制逻辑、数据和地址寄存器的典型现有技术快闪EEPROM存储器的方块图。
图2图解说明一利用图1所示存储器及一系统控制器的架构。
图3图解说明一非易失性存储器的一些元件。
图4图解说明一单一平面实施例中坏块的布置。
图5显示在一4平面、10区实施例中边界调整的一实例。
图6为一示意性说明如何重新排列边界的图解。
图7为一图解说明一实例性实施例的流程图。
具体实施方式
本发明的不同方面普遍适用于非易失性存储系统。虽然下文说明以及背景技术中的说明主要是就一EEPROM快闪存储器实施例给出,但是在所述存储器阵列中使用的特定存储单元的类型在本发明中并不特别重要。有关存储元件如何读取、写入及存储数据的细节并不属于本发明的主要方面,并可为不同非易失性系统中任一非易失性系统的存储元件。
在下文中,如在背景部分中一样,使用下列术语:块包含可同时擦除的最小数量的单元(擦除单位),扇区在本文中用于指作为一个单位传输至和传输自主机的用户数据量,页面为读取和编程用户数据的基本单位,平面为一单一电路小片上存储器的物理细分。虽然在一些实施例中,这些结构中有些结构相互对应-直接对应或通过逻辑至物理的对应而对应,但它们在概念上是各异。另外,在更一般的实例中,读取页面和写入页面可能相异。在本说明中,使用附加术语“区”对电路小片的总容量进行逻辑细分。在本发明的一主要方面中,在逻辑上,一地址分布于各平面上,但在一平面内一区的各物理边界是独立的且针对缺陷位置加以优化。
在本发明的此实例性实施例中,一快闪或其他存储器件(例如图3中的17)由卡控制器301划分成若干逻辑区,以便减小其用于地址变换的数据结构的大小。在一区内,在所述区的逻辑容量以外通常包括某一数量的物理块,以便提供一用于写入操作的擦除池。由于各逻辑区及其缺陷容限可能与在存储器测试期间所在每一区段中发现的缺陷数量不一致,因此可能会因在一区内具有过多的缺陷而遭受成品率的损失。此外,在卡的操作期间可能会出现可导致一区不可用的缺陷,从而限制卡的寿命。本发明的一主要方面是调整区界以包容存储器测试所允许的缺陷从而提高卡的成品率,及调整所述区域中的边界以延长所述卡的可用寿命。
图4中针对一具有一单个平面的存储器阵列400示意性地图解说明该情形,,该平面在逻辑上划分成6个区(由虚线指示)加上许多专用于开销数据及其他非用户数据的系统块。以涂黑的条带显示若干坏块511-523。举例而言,区0中的坏块511和区3中的坏块513可为一对在最初测试所述器件时可接受、但在所述器件使用时失效的块;而区4中的坏块515、517、519和521、及区5中的坏块523可能在最初测试时即由于例如制造过程中的处理误差而成为坏块。如果每一区分配有三个备用块,则区4将没有足够的与其逻辑分配相对应的好块。
解决这个问题的一种方法是提供更多的备用块,但这是在浪费空间(及由此引起的成本)与可靠性之间的折衷。虽然标准的作法是在一阵列中包含若干备用的或冗余的块,但通常有一限值,超过该限值就会变得适得其反。此外,当将一阵列在逻辑上划分成若干子单元(例如本文所阐述的区结构)时,所述备用块通常均匀地分布于所述子单元中。然而,由于随机性,或因处理或其他问题会影响一有限区域,所以所述缺陷块可能会群集在一给定子单元中。因此,所述数量的备用块可能在一个区中分布得太稀,而另一区则保持其原始的过多数量的备用块。
解决此问题的一先前的方法涉及在测试存储器的同时分配边界,例如移动区4的边界以添加所需的额外的好块。这会限制在减少区以更好地满足控制器存储器的成本要求时的灵活性。另一方法是遭受成品率损失或使卡的容量降级。
在本发明的一个主要方面中,所述控制器扫描卡上是否存在缺陷块。此可在生产卡的同时与一为设定区界所实施的操作一起完成。在一实例性实施例中,此是在固件中实施,而硬件和软件实施方案是变化的方法。一旦得知所有块的位置,所述固件便以一使好块均等地分布到各区中的方式来计算区界。由于存储器测试标准保证好块的数量满足卡测试标准,因此缺陷将不会导致卡成品率下降。在出现缺陷时,所述控制器再次实施分析,且如果发现好块的数量变得失衡,则重新分布各区界,从而移动任一用户数据。
举例而言,在图4中,在测试时,可移动区4与区3之间的边界以便为区4提供额外的非缺陷块。如果随着时间的推移在区3中形成坏块513或另外的坏块,则所述控制器随后可将区3-区2边界上移,以确保在所述阵列中具有足够多的好块。
因为每一区通常设置有足够的备用块以允许出现一合理数目的缺陷块,所以当所述阵列包含在一单一平面中时,通常具有足够的备用,因而一般将不需要较大地移动边界。然而,当各区是分布在数个平面中时,这些储备可能分布得相当稀。举例而言,如果每一区分配有8个额外的块,则一如图4所示的单平面实施例将允许在所述区中最多有8个缺陷块,此后所述区变得不能通过边界调整而可用。如果每一区而是分布于4个平面中,则每一区的在一特定平面中的那一部分可容许至多两个缺陷。
平面的使用阐述在上文的背景技术中。为了通过减少编程时间来提高性能,一个目标是在不引起其他损失的情况下对尽可能多的单元进行合理的并行编程。一种实施方案是利用平面将存储器阵列划分成基本独立的子阵列或单元,每一单元又划分成大量的块,如在2000年2月17日由Kevin Conley等人提出申请的美国专利申请案第09/505,555号及2001年1月10日由John Mangan等人提出申请的第09/759,835号专利申请案所述,这些专利申请案在上文中以引用方式并入本文中。然后将数据页面同时编程入多于一个单元。另一配置进一步组合来自多个存储器芯片的一个或多个这些单元。这些多个芯片可连接至一单一总线(如图2所示),或连接至多个独立总线以提高数据吞吐量。
如2001年1月19日提出申请的美国专利申请案第09/766,436号中所阐述,其一扩展是链接来自不同单元的块以便一起编程、读取和擦除,该专利申请案在上文中以引用方式并入本文中。在该方案中,可将来自不同单元的块作为一元块一起操作。一元块,因而一区,可跨越多个平面且各个平面无需处于同一物理器件内。多个电路小片可并行操作,而与其实际封装的方式无关。
如同上文所阐述的存储器实施例一样,每一块-存储器阵列中的最小可擦除组,通常划分成多个页面,一页面包含块内可一起编程的最小数量的单元。因此,元块的编程操作通常会包括将数据同时编程入形成所述元块的每一块的至少一个页面,此重复进行,直至所述元块已满或输入数据已全部编程。其他元块是由来自各阵列单元的不同块(每一单元一个块)形成。下文所述的各种扩展均可与元块操作及其扩展相结合,例如在2002年2月22日提出申请的美国专利申请案第10/081,375号中所阐述的那些扩展,该专利申请案以引用方式并入本文中。
图5显示一具有10个区的实例性实施列,其中每个区均分布于4个平面中。举例而言,区0由部分620、621、622和623构成,这些部分共同构成一单个区的逻辑结构。坏块显示在区3、平面1(601),区5、平面2(603),及区8、,平面0(605)中。如图5中所示,区界已在各平面之间出现移位,以包容这些坏块。更一般地说,平面的数量和区的数量二者可为许多不同的值,虽然根据下文所阐述,在选择这些值时存在各种折衷。
每一区的边界的选择使在所述区的每一平面中有至少一最小数量的好块可供写入。每一区所包含的块数量应至少足以容纳来自最佳系统操作所必需的块的数据。任何其余备用块可每一平面每一区地均匀分布,其中如果备用块数量不能被平面数量除尽,则这些其余的额外块可从第一区段起均匀地分布。该过程是对每一平面独立实施,图5中显示所述芯片的图示及其划分方式。
在此实例性实施例中,各区界较佳不跨越器件边界。如在上文对相关技术的论述中所阐述,此约束是由于在存储器中偏好并行操作以便提高器件性能。在其他实施例中,各平面可分布于多个芯片中以进一步增加其灵活性和适应性。举例而言,平面0(620)、平面1(621)及平面2(622)可形成于一个芯片上,而平面3(623)则形成于另一芯片上。
可按相同的方式对一多芯片器件中的每一芯片进行分区,只是第一(或其他)芯片(芯片0)可具有预留的系统块且可将一个或多个备用块分配给所述预留区域,从而相应地减少可供用于所述芯片的用户部分的备用块的数量。下文根据本发明的另一方面进一步阐述预留系统块的用途。并不要求块0为好块。事实上,固件会容忍芯片的前九个块中的坏块。
区的大小取决于几个因素。首先,由于必须在控制器RAM中保存一逻辑至物理转换表,因而出于控制器成本的原因,力图使区大小保持较小。虽然是取决于实施方案,但是本发明将通常需要RAM中的更多区域,因为除了存储区与物理块编号之间的关系外,此时还将包含用于允许区大小因平面而异的信息。因为在初次访问一区时,必须读取每一块的一页面来建立其逻辑地址,所以建立这些表也占用时间。一对立的因素是其尽量合理大地扩大,以便更有效地使用擦除池中的额外物理块并允许更多的缺陷。
举例而言,一特定实施例是基于每一存储器芯片具有4个平面及4092个用户数据块加上4个系统块-合计4096个块。一组抽样计算显示,用于存储一物理表的RAM的数量和汇编此表的时间二者均与区的数量成反比:5个区所占用的数量是10个区的两倍及15个区的三倍。缺陷容限也以同样的方式减少。因此,必须在这两个效应之间选择折衷。对于所述实施例,一合理的平衡是使用一具有9个区或如图5所示具有10个区的实例性实施例。
调整区界的过程可在许多不同的时间完成。举例而言,其可在器件的存储器测试时实施,以包容新的存储器阵列中的缺陷块。在此种情形中,将一来自系统外部的信号发送至控制器,确定坏块并汇编一区表。然后,该表可存储在非易失性存储器的预留区域中以供将来使用。本发明的该方面会提高器件的成品率。先前,如果在一区段中存在太多的缺陷块,则所述区将不能使用。现在,则可移动边界来挽救该区。同样,其还能增加器件寿命。举例而言,假如一区在测试时具有最大数量的坏块,则先前其会在第一次另外的块失效时变得不能使用,而现在则是重新分布额外的好块。
本发明的此方面也可以动态方式实现,以在出现错误时包容错误。这可尤其适用于在系统寿命的后期各区开始失效时。虽然在测试时进行的初始边界调整后,各备用块可均匀地分布于各区之中,但新的坏块通常不会在一器件中均匀地出现。当一个区域循环次数更多且耗损更大时,可造成不均匀耗损。还可能因不均匀的处理而导致所出现缺陷的聚集,因而使所述器件将同样用完某些区中的擦除块。
备用块的动态分配可由几个源来推动。可根据例如一时间要求,响应于来自主机的信号而为之。主机将向控制器发出一命令,然后由控制器继续进行该过程。控制器本身也可例如响应于一指示出现一问题的ECC结果或响应于编程或擦除困难而独自启动该过程。
不管为何种动力,控制器均将确定这(这些)存储器阵列中的缺陷位置并确定向所述区分布块来包容所述缺陷块。由于在一块中可能存在原来处于某一区中而现在被重新分配至另一区的数据,所以将需要移动该块中的数据以使其保持处于同一区中。如果在一单一区中出现若干缺陷块,则如果分步骤移动数据和重新分配边界(例如每次将边界移动一个块),此通常将更易于应用。(当不存在数据时,例如在测试时,可在一个步骤中完成全部所述重新分配。)此过程示意性地显示在图6中。
然后通过针对新的边界分配汇编所述逻辑块至物理块变换,来更新所述边界表。随后可将该表从控制器RAM移动至非易失性存储器的一预留部分。通过将所述区表存储到非易失性存储器中,当所述系统从所述主机接收一初始化命令时,存储系统的初始化将包括将所述区界表从所述非易失性存储器传输到所述控制器的高速缓冲存储器。然后,可使用所述表按区访问所述存储器。
图6显示一平面的一部分,其中区8与9之间和区7与8之间的初始边界由虚线A所指示的虚线表示。在此图中,显示区9有5个坏块701-705。举例而言,这可能是阵列的一如下部分:其中因处理误差而使存储单元构造偏差并最终失效,从而导致所述区中好块的数量不足。需要通过将所述边界移动至由C指示的位置而将几个好块从区8转移到区9。由于这样会减少区8中的块的数量,因而可能需要通过将该边界移动至由B指示的位置来实施一进一步的调整,以将一些块从区7转移至区8。
由于由711和712所指示的块可能包含数据,所以如果要使其逻辑块编号保持处于同一区中并保持所述区的结构,须移动该数据。因为可能没有足够的可用空间来同时移动两个块,所以可首先移动块711并在区8和9之间建立一由B所指示的中间边界。为在区8中创建额外的空间并允许其与区7的边界从A移至B,需要同样地移动块721中的数据。在将块721中的数据移至区7并建立由B所指示的边界之后,块712中的数据便可移至区8并建立C边界。
至于相对的定时,如果需要通过移动块721创建额外的空间来移动块712,仅需在移动块712之前的某个时间移动块721。这可在移动块711之后、与此同时或甚至在此之前。如果在这些块中没有数据,例如在测试时,则当然没有数据要移动,因而不需要中间步骤便可建立最终边界。
图7为所述过程的一流程图。所述过程可用许多种方式启动。其可由一外部信号启动(801),例如在测试时或根据一主机所决定。所述主机可根据定时或操作数量(例如若干擦除/编程操作)来启动所述过程。此种启动也可以由所述控制器本身发起。可在所述系统本身内启动所述过程的另一方式是响应于一在阵列的一部分中存在缺陷的指示(802),例如起因于一ECC结果或在一编程或擦除过程中的验证失败。
所述过程本身始于所述控制器评估存储器的选定部分(803),以确定哪些(如果有)块存在缺陷。根据此结果,所述控制器确定会如上文所述使好块在一平面中分布于各区中的好块分布。此会均衡好块的数量-或者更精确地说,使好块数量的变化最小化-如上所述,以便产生区表(805)。在此实例性实施例中,在所述控制器中使用一固件实施方案,尽管只使用硬件或软件的实施方案也为可能的变化形式。在另外一组变化形式中,可在主机中实施某些或所有边界确定。
如参照图6所阐述,可能需要移动将会受到边界变化影响的数据。此是在步骤807中实施,此后在步骤809中调整边界。同样如上文参照图6所阐述,此过程可以一递增的过程实施(811)。在无数据存在时,例如在初始器件测试时,则不需要这些步骤。
此时,所述区表已确定,并已于每一平面中设定所述边界,因而实际过程已完成。现在可通过利用该区表访问存储器来操作所述器件(813)。最后,可如参照步骤802所阐述,根据访问所述存储器的结果重复此过程。同样,更新后的区表也可存储在非易失性存储器(815)中,例如存储在预留部分中,以保存此信息供将来使用。虽然图7中显示步骤815发生在步骤813之后,但其可在所述表建成后的任一时间实施。
如上文所述,虽然到现在为止本说明主要是提及其中对存储器件使用诸如浮动栅极EEPROM或快闪单元等电荷存储器件的实施例,但其也可应用于其他实施例,包括磁性和光学媒体。因为有关存储元件如何读取、写入及存储数据的细节不属于本发明的主要方面,所以本发明的各方面也可应用于其他存储器类型,包括(但不限于)次0.1um晶体管、单电子晶体管、有机/碳基纳米晶体管、和分子晶体管。举例而言,也可以使用NROM和MNOS单元-例如分别阐述于Eitan的美国专利第5,768,192号和Sato等人的美国专利第4,630,086号中的NROM和MNOS单元,或磁性RAM和FRAM单元-例如分别阐述于Gallagher等人的美国专利第5,991,193号和Shimizu等人的美国专利第5,892,706号中的磁性RAM和FRAM单元,这些专利均以引用方式并入本文中。
虽然已根据不同的实例性实施例阐述了本发明,但应了解,本发明有权在随附权利要求书的整个范围内受到保护。

Claims (31)

1、一种存储系统电路,其包括:
一存储电路,其由一个或多个物理阵列组成,所述阵列的每一者均包括复数个非易失性存储元件块,其中所述块中单独块内的所述存储元件可同时擦除,及
一控制器电路,其同时控制将数据编程入所寻址的块内、自所寻址的块读取数据及自一个或多个所寻址的块擦除数据,其中通过引入所述物理阵列的逻辑边界,所述控制器将所述物理阵列的每一者细分成若干区,每一区均由一个或多个用于地址变换的块构成,且其中块与区的对应可由控制器动态调整。
2、如权利要求1所述的存储系统电路,其中所述存储元件为多状态存储单元。
3、如权利要求1所述的存储系统电路,其中所述控制器包括一易失性存储段,所述易失性存储段包含一存储逻辑区与块之间的所述对应的转换表。
4、如权利要求3所述的存储系统电路,其中所述对应的一副本存储在所述非易失性存储器中。
5、如权利要求1所述的存储系统电路,其中所述存储器由复数个平面构成,且其中所述区中的一个或多个区由来自复数个平面的块构成。
6、如权利要求5所述的存储系统电路,其中所述复数个平面来自多于一个芯片。
7、如权利要求1所述的存储系统电路,其中所述控制器包括错误修正码(ECC)逻辑,且其中块与区的所述对应是响应于一错误修正码结果来调整。
8、如权利要求1所述的存储系统电路,其中块与区的所述对应是响应于一编程验证结果来调整。
9、如权利要求1所述的存储系统电路,其中块与区的所述对应是响应于一擦除验证结果来调整。
10、如权利要求1所述的存储系统电路,其中块与区的所述对应是响应于一自所述存储系统的外部至所述控制器的信号来调整。
11、一种操作一非易失性存储系统的方法,所述非易失性存储系统包括:复数个非易失性存储元件块,其中所述块的单独块内的所述存储元件可同时擦除;及一存储控制电路,其同时控制将数据编程入所寻址的块内、从所寻址的块中读取数据及从一个或多个所寻址的块中擦除数据,所述方法包括:
通过引入逻辑边界,分配用于地址变换的块与区的一初始对应,借此所述控制器将所述非易失性存储元件组织成若干逻辑区,每一逻辑区均由一个或多个块所构成;
随后识别所述块中的一个或多个块为缺陷块;及
由所述控制器根据所述所识别的缺陷块的分布来分配块与区的一第一对应。
12、如权利要求11所述的方法,其中所述识别包括:
测试所述存储块;及
根据所述测试来确定所述缺陷块。
13、如权利要求12所述的方法,其中所述测试是响应于所述存储系统外部的一信号来实施。
14、如权利要求12所述的方法,其中所述存储系统进一步包括错误修正码(ECC)逻辑,且所述测试是响应于一错误修正码结果来实施。
15、如权利要求11所述的方法,其中所述识别是响应于一编程验证结果来实施。
16、如权利要求11所述的方法,其中所述识别是响应于一擦除验证结果来实施。
17、如权利要求11所述的方法,其中所述分配一第一对应包括基于使所述区中非缺陷块的数量变化最小化来向各区分配块。
18、如权利要求11所述的方法,其中所述控制器具有一其中保持所述第一对应的易失性存储器。
19、如权利要求18所述的方法,其进一步包括在非易失性存储器中保持所述第一对应。
20、如权利要求11所述的方法,其进一步包括:
响应于所述分配一第一对应,将存储在一第一块中的用户数据移动至一第二块,其中所述第一块在所述分配一第一对应之前是一第一区的一部分,而在所述分配一第一对应之后是第二区的一部分,且其中所述第二区在所述分配一第一对应之后是所述第一区的一部分。
21、如权利要求20所述的方法,其进一步包括:
在所述将存储在一第一块中的用户数据移动至一第二块之后,由所述控制器根据所述所识别的缺陷块的分布分配块与区的一第二对应。
22、一种存储系统电路,其包括:
一存储电路,其由一个或多个物理阵列组成,所述阵列的每一者均包括复数个非易失性存储元件块,其中所述块中单独块内的所述存储元件可同时擦除,
一控制器,其同时控制将数据编程入所寻址的块内、自所寻址的块读取数据及自一个或多个所寻址的块擦除数据,其中通过引入所述物理阵列的逻辑边界,所述控制器将所述物理阵列的每一者细分成逻辑地址段,每一逻辑地址段均由一个或多个用于地址变换的块所构成,且其中物理块与逻辑地址段之间的对应可由控制器响应于所述存储器中的缺陷来修改。
23、如权利要求22所述的存储系统电路,其中所述存储元件为多状态存储单元。
24、如权利要求22所述的存储系统电路,其中所述控制器包括一易失性存储段,所述易失性存储段包含一存储逻辑区与块之间的所述对应的转换表。
25、如权利要求24所述的存储系统电路,其中所述对应的一副本存储在所述非易失性存储器中。
26、如权利要求22所述的存储系统电路,其中所述存储器由复数个平面构成,且其中所述区中的一个或多个区由来自复数个平面的块构成。
27、如权利要求26所述的存储系统电路,其中所述复数个平面来自多于一个芯片。
28、如权利要求22所述的存储系统电路,其中所述控制器包括错误修正码(ECC)逻辑,且其中块与区的所述对应是响应于一错误修正码结果来调整。
29、如权利要求22所述的存储系统电路,其中块与区的所述对应是由所述控制器响应于一编程验证结果来修改。
30、如权利要求22所述的存储系统电路,其中块与区的所述对应是由所述控制器响应于一擦除验证结果来修改。
31、如权利要求22所述的存储系统电路,其中块与区的所述对应是由所述控制器响应于一自所述存储系统的外部至所述控制器的信号来修改。
CNB2003801093022A 2002-12-09 2003-12-02 操作非易失性存储系统的存储系统电路及方法 Expired - Lifetime CN100555465C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/315,451 US6901498B2 (en) 2002-12-09 2002-12-09 Zone boundary adjustment for defects in non-volatile memories
US10/315,451 2002-12-09

Publications (2)

Publication Number Publication Date
CN1745433A CN1745433A (zh) 2006-03-08
CN100555465C true CN100555465C (zh) 2009-10-28

Family

ID=32468705

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2003801093022A Expired - Lifetime CN100555465C (zh) 2002-12-09 2003-12-02 操作非易失性存储系统的存储系统电路及方法

Country Status (9)

Country Link
US (3) US6901498B2 (zh)
EP (1) EP1570489B1 (zh)
JP (1) JP4576235B2 (zh)
KR (1) KR100992583B1 (zh)
CN (1) CN100555465C (zh)
AT (1) ATE555442T1 (zh)
AU (1) AU2003293322A1 (zh)
TW (1) TWI317946B (zh)
WO (1) WO2004053888A2 (zh)

Families Citing this family (77)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100544175B1 (ko) * 1999-05-08 2006-01-23 삼성전자주식회사 링킹 타입 정보를 저장하는 기록 매체와 결함 영역 처리 방법
US7660941B2 (en) * 2003-09-10 2010-02-09 Super Talent Electronics, Inc. Two-level RAM lookup table for block and page allocation and wear-leveling in limited-write flash-memories
US7333364B2 (en) * 2000-01-06 2008-02-19 Super Talent Electronics, Inc. Cell-downgrading and reference-voltage adjustment for a multi-bit-cell flash memory
US6901498B2 (en) * 2002-12-09 2005-05-31 Sandisk Corporation Zone boundary adjustment for defects in non-volatile memories
KR100560645B1 (ko) * 2002-12-17 2006-03-16 삼성전자주식회사 메모리 사용 정보를 표시하는 유에스비 플래시 메모리 장치
US7069377B2 (en) * 2003-05-08 2006-06-27 Micron Technology, Inc. Scratch control memory array in a flash memory device
US7046555B2 (en) * 2003-09-17 2006-05-16 Sandisk Corporation Methods for identifying non-volatile memory elements with poor subthreshold slope or weak transconductance
US20050144516A1 (en) * 2003-12-30 2005-06-30 Gonzalez Carlos J. Adaptive deterministic grouping of blocks into multi-block units
CN102685825B (zh) * 2004-03-12 2016-01-20 美商内数位科技公司 在wtru中实施的用于切换无线技术的方法及设备
US20050285248A1 (en) * 2004-06-29 2005-12-29 Sun-Teck See Method and system for expanding flash storage device capacity
CN101091223B (zh) * 2004-12-24 2011-06-08 斯班逊有限公司 施加偏压至储存器件的方法与装置
WO2006093304A1 (en) * 2005-03-01 2006-09-08 Tokyo Electron Device Limited Storage device, memory block managing method, and program
JP4884382B2 (ja) * 2005-05-23 2012-02-29 パナソニック株式会社 メモリコントローラ、不揮発性記憶装置、不揮発性記憶システム及びメモリ制御方法
JP4679581B2 (ja) * 2005-07-29 2011-04-27 パナソニック株式会社 メモリコントローラ、不揮発性記憶装置、不揮発性記憶システム及び不揮発性メモリのアドレス管理方法
CN100573476C (zh) * 2005-09-25 2009-12-23 深圳市朗科科技股份有限公司 闪存介质数据管理方法
US7259988B2 (en) * 2005-10-06 2007-08-21 Phison Electronics Corp. Method for managing memory blocks in flash memory
US7631162B2 (en) 2005-10-27 2009-12-08 Sandisck Corporation Non-volatile memory with adaptive handling of data writes
US7509471B2 (en) * 2005-10-27 2009-03-24 Sandisk Corporation Methods for adaptively handling data writes in non-volatile memories
CN1979449B (zh) * 2005-12-08 2010-10-27 群联电子股份有限公司 逻辑区块与物理区块形成弹性对应的方法
US20070141731A1 (en) * 2005-12-20 2007-06-21 Hemink Gerrit J Semiconductor memory with redundant replacement for elements posing future operability concern
US7441068B2 (en) * 2006-01-06 2008-10-21 Phison Electronics Corp. Flash memory and method for utilizing the same
US7609561B2 (en) * 2006-01-18 2009-10-27 Apple Inc. Disabling faulty flash memory dies
WO2007083449A1 (ja) * 2006-01-20 2007-07-26 Matsushita Electric Industrial Co., Ltd. 不揮発性記憶装置、不揮発性記憶システム、及び不揮発性記憶装置の不良管理方法
SG134195A1 (en) * 2006-01-23 2007-08-29 Phison Electronics Corp Flash memory and method for utilizing the same
GB2434460B (en) * 2006-01-24 2007-12-05 Phison Electronics Corp Flash memory and method for utilizing the same
US20070174549A1 (en) * 2006-01-24 2007-07-26 Yevgen Gyl Method for utilizing a memory interface to control partitioning of a memory module
JP2007199905A (ja) * 2006-01-25 2007-08-09 Toshiba Corp 半導体記憶装置の制御方法
JP4710753B2 (ja) * 2006-08-04 2011-06-29 Tdk株式会社 メモリコントローラ及びメモリコントローラを用いたフラッシュメモリシステム、並びにフラッシュメモリの制御方法
TW200811874A (en) * 2006-08-25 2008-03-01 Etron Technology Inc Sense amplifier-based latch
JP5378664B2 (ja) * 2006-08-28 2013-12-25 三星電子株式会社 マルチ−ページコピーバック機能を有するフラッシュメモリー装置及びそのブロック置換方法
US20080071968A1 (en) * 2006-09-18 2008-03-20 Phison Electronics Corp. Method of managing blocks fo flash memory suitable for flexible correspondence between logic block and physical block
KR100818797B1 (ko) 2006-10-19 2008-04-01 삼성전자주식회사 메모리 용량 조절 방법과 메모리 용량 조절 장치
KR100780963B1 (ko) * 2006-11-03 2007-12-03 삼성전자주식회사 메모리 카드 및 메모리 카드의 구동 방법
US7818701B1 (en) * 2006-12-22 2010-10-19 Cypress Semiconductor Corporation Memory controller with variable zone size
US7669092B2 (en) 2007-02-26 2010-02-23 Micron Technology, Inc. Apparatus, method, and system of NAND defect management
US7715255B2 (en) * 2007-06-14 2010-05-11 Sandisk Corporation Programmable chip enable and chip address in semiconductor memory
CN101779249B (zh) * 2007-06-14 2013-03-27 桑迪士克科技股份有限公司 半导体存储器中的可编程芯片使能和芯片地址
US7477545B2 (en) * 2007-06-14 2009-01-13 Sandisk Corporation Systems for programmable chip enable and chip address in semiconductor memory
US8095851B2 (en) * 2007-09-06 2012-01-10 Siliconsystems, Inc. Storage subsystem capable of adjusting ECC settings based on monitored conditions
US8151034B2 (en) * 2007-09-12 2012-04-03 Sandisk Technologies Inc. Write abort and erase abort handling
US8120958B2 (en) * 2007-12-24 2012-02-21 Qimonda Ag Multi-die memory, apparatus and multi-die memory stack
CN101499316B (zh) * 2008-01-30 2011-10-19 群联电子股份有限公司 快闪存储器区块管理方法及使用此方法的控制器
US8484432B2 (en) * 2008-03-11 2013-07-09 Kabushiki Kaisha Toshiba Memory system
CN101533675B (zh) * 2008-03-11 2013-11-06 深圳市朗科科技股份有限公司 闪存介质扫描和管理方法
US8327066B2 (en) * 2008-09-30 2012-12-04 Samsung Electronics Co., Ltd. Method of managing a solid state drive, associated systems and implementations
US8891298B2 (en) 2011-07-19 2014-11-18 Greenthread, Llc Lifetime mixed level non-volatile memory system
US8239614B2 (en) 2009-03-04 2012-08-07 Micron Technology, Inc. Memory super block allocation
US8413015B2 (en) * 2009-09-21 2013-04-02 Sandisk Technologies Inc. Nonvolatile memory controller with scalable pipelined error correction
KR101616100B1 (ko) * 2009-09-25 2016-04-28 삼성전자주식회사 메모리 시스템 및 그것의 동작 방법
TWI484334B (zh) * 2009-12-24 2015-05-11 Univ Nat Taiwan 非揮發記憶體的區域式管理方法
US8856488B2 (en) 2010-02-11 2014-10-07 Memory Technologies Llc Method for utilizing a memory interface to control partitioning of a memory module
US9007836B2 (en) * 2011-01-13 2015-04-14 Kabushiki Kaisha Toshiba Non-volatile semiconductor memory device
TWI473105B (zh) * 2011-01-18 2015-02-11 Macronix Int Co Ltd 具有錯誤自動檢查與更正位元之三維記憶體結構
US8446772B2 (en) 2011-08-04 2013-05-21 Sandisk Technologies Inc. Memory die self-disable if programmable element is not trusted
US9417803B2 (en) * 2011-09-20 2016-08-16 Apple Inc. Adaptive mapping of logical addresses to memory devices in solid state drives
US20130151755A1 (en) 2011-12-12 2013-06-13 Reuven Elhamias Non-Volatile Storage Systems with Go To Sleep Adaption
JP5694212B2 (ja) * 2012-02-23 2015-04-01 株式会社東芝 管理情報生成方法およびメモリシステム
US8924636B2 (en) * 2012-02-23 2014-12-30 Kabushiki Kaisha Toshiba Management information generating method, logical block constructing method, and semiconductor memory device
US9195587B2 (en) * 2013-03-07 2015-11-24 Sandisk Technologies Inc. Enhanced dynamic read process with single-level cell segmentation
KR102070724B1 (ko) 2013-03-29 2020-01-30 삼성전자주식회사 비휘발성 메모리 장치 및 그것의 구동 방법
US10083069B2 (en) * 2013-06-27 2018-09-25 Sandisk Technologies Llc Word line defect detection and handling for a data storage device
US9411721B2 (en) 2013-11-15 2016-08-09 Sandisk Technologies Llc Detecting access sequences for data compression on non-volatile memory devices
KR102116364B1 (ko) * 2013-11-18 2020-05-28 삼성전자주식회사 메모리 시스템 및 그에 따른 반도체 메모리의 결함 메모리 셀 관리방법
US9230689B2 (en) 2014-03-17 2016-01-05 Sandisk Technologies Inc. Finding read disturbs on non-volatile memories
US9595352B2 (en) * 2014-03-17 2017-03-14 Seagate Technology Llc Manufacturer self-test for solid-state drives
JP2016162466A (ja) * 2015-02-26 2016-09-05 株式会社東芝 半導体記憶装置及びメモリシステム
CN105513630B (zh) * 2015-11-30 2019-08-13 深圳市江波龙电子股份有限公司 Dram的初始化方法及装置
US10209895B2 (en) * 2016-02-18 2019-02-19 Toshiba Memory Corporation Memory system
US10275156B2 (en) * 2016-09-29 2019-04-30 Intel Corporation Managing solid state drive defect redundancies at sub-block granularity
US20180121287A1 (en) * 2016-11-01 2018-05-03 Nvidia Corporation Inline error detection and correction techniques
TWI687933B (zh) * 2017-03-03 2020-03-11 慧榮科技股份有限公司 資料儲存裝置及其區塊釋放方法
US9996458B1 (en) * 2017-07-12 2018-06-12 Nxp Usa, Inc. Memory sector retirement in a non-volatile memory
US10430117B2 (en) 2017-10-23 2019-10-01 Micron Technology, Inc. Host accelerated operations in managed NAND devices
US10635515B2 (en) * 2017-12-06 2020-04-28 Sandisk Technologies Llc Recovery of partial memory die
TWI667571B (zh) * 2018-06-13 2019-08-01 慧榮科技股份有限公司 資料儲存裝置、系統資訊編程方法及系統資訊重建方法
CN112181276B (zh) * 2019-07-03 2023-06-20 北京忆恒创源科技股份有限公司 提升存储设备服务质量的大块构造、分配方法及其存储设备
CN115237351B (zh) * 2022-08-02 2023-08-15 苏州启恒融智信息科技有限公司 Nand块动态重映射、读写命令处理方法及存储设备

Family Cites Families (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5067105A (en) 1987-11-16 1991-11-19 International Business Machines Corporation System and method for automatically configuring translation of logical addresses to a physical memory address in a computer memory system
JPH02105954A (ja) * 1988-10-14 1990-04-18 Fujitsu Ltd 半導体記憶装置
US5172338B1 (en) 1989-04-13 1997-07-08 Sandisk Corp Multi-state eeprom read and write circuits and techniques
EP1031992B1 (en) * 1989-04-13 2006-06-21 SanDisk Corporation Flash EEPROM system
US5200959A (en) 1989-10-17 1993-04-06 Sundisk Corporation Device and method for defect handling in semi-conductor memory
GB2251323B (en) * 1990-12-31 1994-10-12 Intel Corp Disk emulation for a non-volatile semiconductor memory
US5270979A (en) 1991-03-15 1993-12-14 Sundisk Corporation Method for optimum erasing of EEPROM
US5663901A (en) 1991-04-11 1997-09-02 Sandisk Corporation Computer memory cards using flash EEPROM integrated circuit chips and memory-controller systems
US5430859A (en) 1991-07-26 1995-07-04 Sundisk Corporation Solid state memory system including plural memory chips and a serialized bus
US5712180A (en) 1992-01-14 1998-01-27 Sundisk Corporation EEPROM with split gate source side injection
US5422855A (en) * 1992-03-31 1995-06-06 Intel Corporation Flash memory card with all zones chip enable circuitry
US5532962A (en) 1992-05-20 1996-07-02 Sandisk Corporation Soft errors handling in EEPROM devices
US5315541A (en) 1992-07-24 1994-05-24 Sundisk Corporation Segmented column memory array
US5428621A (en) 1992-09-21 1995-06-27 Sundisk Corporation Latent defect handling in EEPROM devices
KR970008188B1 (ko) 1993-04-08 1997-05-21 가부시끼가이샤 히다찌세이사꾸쇼 플래시메모리의 제어방법 및 그것을 사용한 정보처리장치
JPH06332806A (ja) * 1993-05-25 1994-12-02 Hitachi Ltd フラッシュメモリを記憶媒体とする記憶システムおよびその制御方法
JP3215237B2 (ja) * 1993-10-01 2001-10-02 富士通株式会社 記憶装置および記憶装置の書き込み/消去方法
JPH08212019A (ja) * 1995-01-31 1996-08-20 Mitsubishi Electric Corp 半導体ディスク装置
US5943693A (en) * 1995-03-29 1999-08-24 Intel Corporation Algorithmic array mapping to decrease defect sensitivity of memory devices
US5579259A (en) 1995-05-31 1996-11-26 Sandisk Corporation Low voltage erase of a flash EEPROM system having a common erase electrode for two individually erasable sectors
US5712179A (en) 1995-10-31 1998-01-27 Sandisk Corporation Method of making triple polysilicon flash EEPROM arrays having a separate erase gate for each row of floating gates
US6031758A (en) 1996-02-29 2000-02-29 Hitachi, Ltd. Semiconductor memory device having faulty cells
US5724284A (en) 1996-06-24 1998-03-03 Advanced Micro Devices, Inc. Multiple bits-per-cell flash shift register page buffer
US5860124A (en) * 1996-09-30 1999-01-12 Intel Corporation Method for performing a continuous over-write of a file in nonvolatile memory
US5890192A (en) 1996-11-05 1999-03-30 Sandisk Corporation Concurrent write of multiple chunks of data into multiple subarrays of flash EEPROM
US5956473A (en) * 1996-11-25 1999-09-21 Macronix International Co., Ltd. Method and system for managing a flash memory mass storage system
US5881003A (en) * 1997-07-16 1999-03-09 International Business Machines Corporation Method of making a memory device fault tolerant using a variable domain redundancy replacement configuration
US5930167A (en) 1997-07-30 1999-07-27 Sandisk Corporation Multi-state non-volatile flash memory capable of being its own two state write cache
JP4079506B2 (ja) * 1997-08-08 2008-04-23 株式会社東芝 不揮発性半導体メモリシステムの制御方法
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
US6367030B1 (en) * 1997-10-09 2002-04-02 Matsushita Electric Industrial Co., Ltd. Address conversion circuit and address conversion system with redundancy decision circuitry
JP4085478B2 (ja) * 1998-07-28 2008-05-14 ソニー株式会社 記憶媒体及び電子機器システム
US6199177B1 (en) * 1998-08-28 2001-03-06 Micron Technology, Inc. Device and method for repairing a semiconductor memory
JP3730423B2 (ja) 1998-11-24 2006-01-05 富士通株式会社 半導体記憶装置
TW436795B (en) 1999-01-21 2001-05-28 Memory Corp Plc Memory system
JP4439096B2 (ja) * 2000-08-28 2010-03-24 株式会社東芝 メモリカード及び同カードに適用されるアドレス変換方法
US6377500B1 (en) * 1999-11-11 2002-04-23 Kabushiki Kaisha Toshiba Memory system with a non-volatile memory, having address translating function
US6426893B1 (en) 2000-02-17 2002-07-30 Sandisk Corporation Flash eeprom system with simultaneous multiple data sector programming and storage of physical block characteristics in other designated blocks
JP4037605B2 (ja) * 2000-12-04 2008-01-23 株式会社東芝 不揮発性メモリユニットのコントローラ、同コントローラを有するメモリシステム及び不揮発性メモリユニットの制御方法
JP4373615B2 (ja) * 2001-01-25 2009-11-25 富士通マイクロエレクトロニクス株式会社 初期不良ブロックのマーキング方法
US7096313B1 (en) * 2002-10-28 2006-08-22 Sandisk Corporation Tracking the least frequently erased blocks in non-volatile memory systems
DE60316171T2 (de) * 2002-10-28 2008-05-29 SanDisk Corp., Milpitas Automatischer abnutzungsausgleich in einem nicht-flüchtigen speichersystem
US6901498B2 (en) * 2002-12-09 2005-05-31 Sandisk Corporation Zone boundary adjustment for defects in non-volatile memories

Also Published As

Publication number Publication date
EP1570489B1 (en) 2012-04-25
US7149871B2 (en) 2006-12-12
AU2003293322A1 (en) 2004-06-30
TW200418033A (en) 2004-09-16
JP2006509304A (ja) 2006-03-16
US20070047305A1 (en) 2007-03-01
WO2004053888A3 (en) 2004-09-30
US20040111553A1 (en) 2004-06-10
ATE555442T1 (de) 2012-05-15
KR100992583B1 (ko) 2010-11-05
WO2004053888A2 (en) 2004-06-24
TWI317946B (en) 2009-12-01
US9665478B2 (en) 2017-05-30
US20050195661A1 (en) 2005-09-08
CN1745433A (zh) 2006-03-08
KR20050101160A (ko) 2005-10-20
EP1570489A2 (en) 2005-09-07
US6901498B2 (en) 2005-05-31
JP4576235B2 (ja) 2010-11-04

Similar Documents

Publication Publication Date Title
CN100555465C (zh) 操作非易失性存储系统的存储系统电路及方法
CN100487672C (zh) 用于分割一逻辑块的方法及设备
US7379330B2 (en) Retargetable memory cell redundancy methods
KR100663738B1 (ko) 동시 다중 데이터 섹터 프로그래밍 및 다른 지정 블럭들에대한 물리적 블럭 특성들의 저장기능을 갖는 플래시이이피롬 시스템
KR101040961B1 (ko) 온-칩 비휘발성 메모리 기록 캐쉬를 사용하기 위한 시스템및 방법
US7818490B2 (en) Partial block data programming and reading operations in a non-volatile memory
US20050144363A1 (en) Data boundary management
US20050144357A1 (en) Adaptive metablocks
US20070266202A1 (en) Memory controller, flash memory system, and control method of flash memory
JP2008527586A (ja) オンチップデータのグループ化および整列
KR20070087571A (ko) 스크래치 패드 블록
KR20070102485A (ko) 클러스터 자동-정렬
US8074128B2 (en) Block management and replacement method, flash memory storage system and controller using the same
JP2009503740A (ja) データファイルを直接記憶する再プログラム可能な不揮発性メモリ内のファイルデータの索引付け
US8769217B2 (en) Methods and apparatus for passing information to a host system to suggest logical locations to allocate to a file
JP4235595B2 (ja) メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム及びフラッシュメモリの制御方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: SANDISK TECHNOLOGY CO., LTD.

Free format text: FORMER OWNER: SANDISK CORP.

Effective date: 20120427

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20120427

Address after: Texas, USA

Patentee after: Sanindisco Technology Co.,Ltd.

Address before: California, USA

Patentee before: Sandisk Corp.

C56 Change in the name or address of the patentee

Owner name: SANDISK TECHNOLOGY CO., LTD.

Free format text: FORMER NAME: SANDISK TECHNOLOGIES, INC.

CP01 Change in the name or title of a patent holder

Address after: Texas, USA

Patentee after: Sandy Technology Corp.

Address before: Texas, USA

Patentee before: Sanindisco Technology Co.,Ltd.

ASS Succession or assignment of patent right

Owner name: INNOVATIVE STORAGE SYSTEMS, INC.

Free format text: FORMER OWNER: SANDISK TECHNOLOGY CO., LTD.

Effective date: 20150512

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20150512

Address after: California, USA

Patentee after: Creative Memory Systems Inc.

Address before: Texas, USA

Patentee before: Sandy Technology Corp.

CX01 Expiry of patent term
CX01 Expiry of patent term

Granted publication date: 20091028