CN1620703A - 用于非易失存储器的高效数据验证操作的方法和结构 - Google Patents

用于非易失存储器的高效数据验证操作的方法和结构 Download PDF

Info

Publication number
CN1620703A
CN1620703A CNA018222234A CN01822223A CN1620703A CN 1620703 A CN1620703 A CN 1620703A CN A018222234 A CNA018222234 A CN A018222234A CN 01822223 A CN01822223 A CN 01822223A CN 1620703 A CN1620703 A CN 1620703A
Authority
CN
China
Prior art keywords
data
register
array
programming
sectors
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.)
Granted
Application number
CNA018222234A
Other languages
English (en)
Other versions
CN100474452C (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.)
Delphi International Operations Luxembourg SARL
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
Application filed by SanDisk Corp filed Critical SanDisk Corp
Publication of CN1620703A publication Critical patent/CN1620703A/zh
Application granted granted Critical
Publication of CN100474452C publication Critical patent/CN100474452C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3436Arrangements for verifying correct programming or erasure
    • G11C16/3454Arrangements for verifying correct programming or for detecting overprogrammed cells
    • G11C16/3459Circuits or methods to verify correct programming of nonvolatile memory cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5628Programming or writing circuits; Data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3436Arrangements for verifying correct programming or erasure
    • G11C16/3454Arrangements for verifying correct programming or for detecting overprogrammed cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2216/00Indexing scheme relating to G11C16/00 and subgroups, for features not directly covered by these groups
    • G11C2216/12Reading and writing aspects of erasable programmable read-only memories
    • G11C2216/14Circuits or methods to write a page or sector of information simultaneously into a nonvolatile memory, typically a complete row or word line in flash memory

Abstract

基于改进快擦写EEPROM存储器的存储子系统包含一或多个快擦写存储器阵列,其中每个快擦写存储器阵列具有3个数据寄存器和一个控制器电路。在快擦写编程操作期间,一个数据寄存器被用来控制编程操作,第二寄存器被用来保存目标数据数值,第三寄存器被用来加载下一扇区数据。在快擦写编程操作之后,扇区的数据被从快擦写存储器阵列读取到第一数据寄存器,并且与第二寄存器中存储的目标数据相比较。当数据验证成功时,来自第三寄存器的数据被复制到第一和第二寄存器以便进行下一编程操作。这产生了性能改进的系统,该系统在编程操作没有数据传送延迟,其中在编程操作完成之后需要数据验证。可选实施例使用2寄存器实现和单寄存器实现执行比较。写后检验可以被重复,并且使用不同偏置条件以该取数据。过程可以自动执行,或根据可以规定读取条件的命令执行。

Description

用于非易失存储器的 高效数据验证操作的方法和结构
技术领域
本发明涉及半导体非易失存储器体系结构及其操作方法领域,并且适用于到快擦写(flash)电可擦除和可编程只读存储器(EEPROM)。
背景技术
快擦写EEPROM器件通常被用于电子设备的大容量数据存储子系统。这种子系统通常被实现为可以插入多个主机系统的移动存储器卡,或主机系统内的非移动嵌入式存储器。在两种实现中,子系统包含一或多个快擦写器件,并且经常包含子系统控制器。
快擦写EEPROM器件由一或多个晶体管单元阵列组成,每个单元能够非易失地存储数据的一或多个位。于是,快擦写存储器不需要电力以保持其中编程的数据。然而一旦经过编程,在其可以被重新编程以新数据数值之前,必须擦除单元。这些单元阵列被分成组,以便提供读取、编程和擦除功能的高效实现。大容量存储器的典型快擦写存储器体系结构将较大的单元组布置成可擦除的块。每个块被进一步分成一或多个可寻址扇区,扇区是读取和编程功能的基本单位。
子系统控制器执行若干功能,包含将子系统的逻辑块地址(LBA)转换成物理芯片、块和扇区地址。控制器还通过一系列命令以管理低级快擦写电路操作,其中通过接口总线向快擦写存储器器件发出所述命令。控制器执行的另一个功能是通过各种手段(例如使用纠错码或ECC)保持存储到子系统的数据的完整性。
图1示出了典型的现有技术快擦写EEPROM器件的内部体系结构4000。关键特征包含与外部控制器接口的I/O总线411和控制信号412,通过用于命令、地址和状态的寄存器控制内部存储器操作的存储器控制电路450,一或多个快擦写EEPROM单元阵列400,一组检测放大器和编程控制电路(SA/PROG)454,以及数据寄存器404,其中每个阵列具有其自身的行解码器(XDEC)401和列解码器(YDEC)402。
例如美国专利5,890,192所教导的,如果需要,提供多个阵列400,以及相关的X解码器、Y解码器、编程/验证电路、数据寄存器等等;所述美国专利5,890,192于1999年3月30日授权,并转让给SanDisk公司,即本申请的受让人,这里参考引用了所述专利申请。
可以通过以下信号配置外部接口I/O总线411和控制信号412:
CS-片选。被用来激活快擦写存储器接口。
RS-读选通。被用来指示AD总线正被用于数据读取操作。
WS-写选通。被用来指示AD总线正被用于数据写入操作。
AS-地址选通。表明AD总线正被用于传送地址信息。
AD[7:0]-地址/数据总线。被用来在控制器和快擦写存储器命令、地址以及数据寄存器之间传送数据。
由于其它信号配置可用于提供相同的功能,这个接口仅作为一个例子。这个图例只示出一个快擦写存储器阵列400及其相关部件,但是在单个快擦写存储器芯片上可以存在多个阵列,这些阵列共享公共接口和存储器控制电路,但具有分立的XDEC、YDEC、SA/PROG和数据寄存器电路以允许并行读取和编程操作。
来自EEPROM系统4000的数据寄存器404的数据通过连接到I/O总线AD[7:0]411的数据寄存器被传送到外部控制器。数据寄存器404也被连接到检测放大器/编程电路454。连接到每个检测放大器/编程电路单元的数据寄存器的单元数量可以取决于每个快擦写EEPROM单元中存储的比特数。如果使用多态存储器单元,每个快擦写EEPROM单元可以包含多个位,例如2或4个。
行解码器401解码阵列400的行地址,以便选择被访问的物理扇区。行解码器401通过内部行地址线419从存储器控制逻辑450接收行地址。列解码器402通过内部列地址线429从存储器控制逻辑450接收列地址。
图2示出了典型的快擦写存储器卡体系结构,该体系结构具有执行主机和存储器控制功能的单个控制器301,和由一或多个快擦写存储器器件组成的快擦写存储器阵列。通过总线302连接系统控制器和快擦写存储器,总线302允许控制器301针对快擦写存储器阵列加载命令、地址和传送数据。
通常情况下,各个扇区的价值在于,将被编程到扇区的主机数据附加上检纠错码(ECC),其中在回读时,检纠错码(ECC)被用来确定存储的数据的有效性。某些这样的系统会利用从存储器件向控制器传送数据的机会检查被读取的数据的有效性,以作为一种保证数据不被破坏的手段。
为了确保编程数据的有效性,某些系统在数据被编程之后立即从扇区读取数据。通过ECC、数据比较或其它机制在进行下一个操作之前验证数据。正如本领域技术人员已知的,在现有技术的系统中,在数据传送(发生在读取之后)期间进行这种数据验证。于是,由于增加了读取操作和从快擦写存储器器件到控制器电路(其中实际执行验证)的数据传送,提高了执行编程操作的时间。编程验证操作指示所有单元是否已经被编程到期望水平或高于期望水平,并且通常不检查单元是否已经超出目标状态,即在使用多态存储器的情况下是否可能进入下一个状态,而是只检查它们是否已经超出特定验证条件。由于这些存储器件的总体保真度,在这种验证期间很少出现失败。
图3示出了2扇区编程/验证操作的时序图,其中数据被编程到2个目的地址(DST[N]和DST[N+1]),并且接着被读取,以便在编程到下一个目的地址(DST[N+2])之前进行验证。READ信号指示正在从源扇区读取。XFER信号指示快擦写数据寄存器和控制器之间的数据传送。R/WB信号指示传送的方向(高表示从快擦写存储器读取到控制器,低表示从控制器写入到快擦写存储器)。PROG信号指示针对目标页面进行编程操作。
图4图解了在编程/验证操作期间发生的事件序列:
1.向主数据寄存器403传送来自外部控制器电路(未示出)的数据。
2.向从数据寄存器404传送主数据寄存器403的内容。
3.将来自从数据寄存器404的数据编程到快擦写存储器阵列400。
4.将来自快擦写存储器阵列400的数据回读到从数据寄存器404。
5.向主数据寄存器403传送来自从寄存器404的数据。
6.向外部控制器电路(未示出)传送来自主数据寄存器403的数据以进行验证。
这些验证操作的确切成本取决于各种快擦写存储器操作的时间、数据集合大小、I/O总线容量和I/O总线周期时间。但是下面示出了使用某些典型数值的例子:
TRD=25μs    TX=26.4μs    TPRG=300μs
编程和验证单个扇区的总时间(图4所示)。
TPgm/Vfy=TX+TPRG+TRD+TX=377μs
进行数据验证的时间占总编程/验证操作时间的14%。
在非易失存储器设计中通常增加一次可以编程和读取的单元的数量,以便改进这些器件的读写性能。通过增加单个电路小片上的存储器单元阵列数量,增加单个平面内的页面容量,并行编程多个芯片,或者采取这3种技术的组合,可以实现上述目的。其结果是,对于被编程或读取的大量单元,在编程和读取时间变化很小或没有变化的情况下,数据传送长度增加。于是,在增加了并发度的系统中数据验证的费用变得更高。作为一个例子,与上述例子中使用的定时数值相同的定时数值示出了对并发度提高4倍的系统的影响:
TPgm/Vfy=4*TX+TPRG+TRD+4*TX=526.4μs
数据验证时间占4页面复制操作总时间的24%。
发明内容
本发明提供了一种快擦写存储器器件,能够在不向外部控制器电路传送数据的情况下执行编程后验证(post-programming verification)操作,并且允许在那些编程或验证操作期间从外部控制器传送数据。根据本发明的基本方面,在存储器件中保存被编程的数据的复本。在编程完成之后,回读数据,以便通过在存储器件本身执行的写后读验证(post-write read-verify)过程与保存的复本相比较。
在一组实施例中,非易失存储器系统被设计成具有包含3个数据寄存器的电路。第一数据寄存器控制编程电路并且存储来自读取操作的数据。第二数据寄存器保存编程数据的复本以便以后进行验证。第三数据寄存器被用来在编程、验证和读取操作期间传送数据。这个在当前数据集合正被编程的同时传入下一被编程数据集合的过程可以被称作流式编程。在编程操作之前,数据被传送到第一和第二寄存器。在编程操作之后,从刚才编程的单元回读数据,并且回读的数据被存储在第一寄存器中。接着将该寄存器的内容与第二寄存器的内容相比较。2个数据集合之间的匹配表明数据编程正确,并且产生指示成功验证的状态。在编程和验证操作期间,第三数据寄存器可用于接收下一个被编程的数据集合。
可选的一组实施例是2寄存器实现,其中主寄存器接收传入数据,并且在对其编程之后保存数据的复本。在数据被写入之后,数据被读取到第二寄存器,接着将第二寄存器的内容与主寄存器中的原始数据相比较。另一个可选实施例只使用单个主寄存器,其中数据在编程之后被再次保存在主寄存器中,并且当从阵列读取数据时,将读数据直接与主寄存器的内容相比较。这些变化允许使用破坏性(其中寄存器中用于编程的数据在编程-验证过程中丢失)和非破坏性(其中数据在整个过程中被保存)编程方法。
在所有实施例中,可以重复编程后验证操作,其中可以使用不同的读取条件执行附加验证,以确保存在适当的读取余量(margin)。在本发明的另一方面,各种实施例可以并行写入多个数据扇区,其中在不同扇区上串行或并行地执行编程后验证操作。编程后验证可以是存储器件上的自动过程,或者响应来自控制器的命令而执行。命令可以指定用于验证的读取类型,或指定用于读取的参数,例如一组留有余量(margining)的电平。存储器可以利用二元或多态存储器单元。在多态实施例中,寻址可以是存储器级别的。
本发明的附加方面、特征和优点被包含在以下具体实施例的描述中,其中结合附图进行描述。
附图说明
图1示出了典型的现有技术EEPROM的模块图。
图2示出了现有技术的基于快擦写存储器的典型存储子系统体系结构。
图3示出了现有技术的2扇区编程/验证操作的时序图。
图4图解了现有技术系统中在编程/验证操作期间发生的事件序列。
图5示出了根据本发明一个实施例的半导体非易失存储器的示意图。
图6图解了本发明实施例中的2扇区编程/验证操作的时序图。
图7图解了本发明实施例中在编程/验证操作期间发生的事件序列。
图8图解了本发明实施例中在编程/多验证(multiple-verify)操作期间发生的事件序列。
图9图解了本发明一个可选实施例中在编程/多验证操作期间发生的事件序列。
图10图解了本发明另一个可选实施例中在编程/多验证操作期间发生的事件序列。
图11和12是图解流式编程的使用的时序图。
图13图解了多态存储器中的单元群体和余量读取条件。
图14示出了改变读取条件的一个可能方式。
图15图解了按照其状态寻址存储器单元的过程。
图16是一个例子,有关当根据其状态寻址存储器单元时寄存器在本发明实施例中的使用。
具体实施方式
本发明包括在快擦写存储器器件上执行编程/验证操作的系统和方法,所述快擦写存储器器件不需要从存储器件传送数据,从而允许外部控制器同时向器件传送数据,以便进行后续的编程操作。需要将本发明的编程后读验证过程(下面通常被随意称作验证或检验,取决于上下文)与作为实际编程过程的一部分来进行、为现有技术所公知的编程-验证过程区分开。在本发明的基本方面,编程期间在存储器件中保存数据的复本。本发明的比较过程与编程过程分离并且发生在编程过程之后,还使用实际读取过程以提供与保存的复本相比较的数据。图5示出了根据本发明一个实施例构造的半导体非易失存储器。这个图例中每个部件的描述类似于先前针对图1的描述,其中存在以下差异:存在附加的数据比较寄存器405和相关的比较逻辑430,以便执行数据验证操作。在本发明的一个实施例中,设计存储检测的数据和提供被编程的数据的寄存器,使得用于两个操作的存储器元件物理上相同。
在上述美国专利5,890,152中详细描述了这种适用于本发明的数据寄存器电路。在Raul Adrian Cemea于2001年9月17日提交的美国专利申请″动态列块选择(Dynamic Column Block Selection)″中描述了另一组适当的寄存器/数据锁存器电路。根据描述的实施例,各种寄存器(例如主数据寄存器403、从数据寄存器404和数据比较寄存器405)的大小足够保存所有并行编程的数据,或者对于每个被并行编程的扇区,存在许多组相关寄存器。图6示出了2扇区编程/验证操作的时序图,其中数据被编程到2个目的地址(DST[n]和DST[n+1]),并且接着被读取以便进行验证。在读取的同时,传送下一对被写入到地址DST[N=2]和DST[n+3]的扇区的数据。READ信号指示2个扇区正被从刚才编程的地址并行读取。XFER信号指示快擦写数据寄存器和控制器之间的数据传送。R/W信号指示传送的方向(高表示传送到控制器,低表示传送到快擦写存储器)。注意,由于没有发生从快擦写存储器到控制器的数据传送,所以R/W信号保持为低。PROG信号指示针对目标页面进行编程操作。
图7根据本发明的3寄存器实施例图解了编程/验证操作期间发生的事件序列。在图7中,省略了图5的Y解码器YDEC 402、检测/编程电路SA/PROG 454和其它单元以简化讨论。图7的过程包含:
1.向主数据寄存器403传送来自外部控制器电路(未示出)的数据。
2.例如同时地,向从数据寄存器404和数据比较寄存器405传送主数据寄存器403的内容。
3.将来自从数据寄存器404的数据编程到快擦写存储器阵列400。
4.从快擦写存储器阵列400向从数据寄存器404回读数据。同时,开始从外部总线向主数据寄存器403传送用于下一编程操作(步骤1)的数据。
5.比较(430)从寄存器404中的数据和数据比较寄存器405中的数据。这个比较的结果被保存在状态寄存器431中,该结果可以被例如外部控制器读取。
6.如果比较失败,外部控制器可以进行适当的差错恢复措施。
在一个可选实施例中,与″流式编程″过程中一或多个编程、回读数据和比较步骤同时进行从外部总线到主数据寄存器403的数据传送。有许多处理出错状态的可选方式。这些方式可以包含向存储器的不同区域写入数据并擦除存储器的失败部分或将其标明为坏区,在不介入擦除的情况下提供更多的脉冲,或者擦除并向相同区域重新写入数据。可选地,如果出错数量少于某个数值,可以不采取任何动作。
这些验证操作在时间和性能方面的确切成本取决于各种快擦写存储器操作的时间、数据集合大小、I/O总线宽度和I/O总线周期时间。但是下面示出了本发明使用某些典型数值的操作的例子:
TRD=25μs    TX=26.4μs    TPRG=300μs
编程和验证单个扇区的总时间(图4所示)。
TPgm/Vfy=[TX+TPRG+TRD]=351.4μs
这表示将现有技术的单扇区例子的编程时间改进了7%。
在非易失存储器设计中通常增加一次可以编程和读取的单元数量,以便改进这些器件的读写性能。通过增加单个电路小片上的存储器单元阵列数量,增加单个平面内的页面容量,并行编程多个芯片,或者采取这3种技术的组合,可以实现上述目的。其结果是,对于被编程或读取的大量单元,在编程和读取时间变化很小或没有变化的情况下,数据传送长度增加。于是,在增加了并发度的系统中数据验证的费用变得更高。使用前面的4扇区例子,
TPgm/Vfy=4*TX+TPRG+TRD=426μs
这表示将现有技术的4扇区例子的编程时间改进了20%。
图7在步骤4和5中提供了单个编程后读验证操作。需要将这个编程后读验证操作与作为实际编程过程的一部分而进行、现有技术中公知的验证过程区分开。图7和以下可选实施例的比较过程与编程过程分离并接在编程过程之后,并且使用实际读取过程提供根据单元水平来比较的数据,而编程验证过程将单元水平与固定目标数值相比较。
在编程-验证过程中,需要区别破坏性和非破坏性编程-验证方案。当验证存储单元具有适当水平时,破坏性编程-验证方案在编程-验证操作期间破坏从寄存器的内容。寄存器的内容被用作到编程电路的反馈,以指示指定存储单元是否需要更多的编程;一旦验证具有适当的水平,清除对应于被验证存储单元的寄存器内容,以禁止进一步的编程。一旦从寄存器的所有内容被清除,或者当所有存储单元的验证状态指示成功编程时,编程操作完成。非破坏性编程-验证方案不破坏从寄存器的内容。该方案会允许存储单元接受更多的编程步骤,即使在其已经被验证具有适当水平之后。当所有存储单元已经达到编程状态时,编程操作终止,其中所述条件的检测需要针对所有存储单元监视编程-验证结果以检测完成。在现有技术中,快擦写存储器器件通常使用破坏性编程-验证方案,尤其是在多水平器件中。当使用附加脉冲不会过度消极地影响单元状态的分布时,非破坏性技术也可以被使用在快擦写存储器系统中。非破坏性编程-验证方案也可以被使用在具有其它形式的存储单元的存储器系统中,所述其它形式的存储单元可以承受附加压力。
前面针对图7描述的实施例适应破坏性编程-验证方案和流式编程。由于数据的复本被保存在比较寄存器中,从寄存器在编程期间不需要保存数据。此外,一旦主寄存器将其内容传送到比较和从寄存器,它能够自由地接收下一数据集合。通过免除流式编程,在使用非破坏性编程-验证方案或二者均使用的情况下,可以用较少的寄存器实现编程后读验证操作。如果器件使用非破坏性编程-验证方案,则不需要比较寄存器,并且可以直接将从寄存器中的数据与检测放大器输出相比较。
在可选实施例中,可以执行不止一个编程后读验证操作,例如在每个写操作之后,或者仅在某些写操作之后,这由例如从前面的多验证操作之后执行的写操作数量指定,随机指定,根据前面的多验证操作之后经过的时间指定,在擦除验证失败时指定,根据擦除周期的数量指定,或在编程-验证失败时指定。如下面参照图13所描述的,在电压检测方案中可以在各种条件(例如标称电压阈值、低余量电压阈值和高余量电压阈值)下执行检验。这种对不同电压水平的使用进一步使本发明的写后读验证操作区别于构成部分编程过程的传统验证。
当存储器在擦除操作之后返回验证失败状态时,发生擦除验证失败,在这种情况下擦除操作可能失败,虽然该块可能被擦除到足够在正常条件下使用的状态。这是由于擦除验证可以检查单元被擦除到比实际需要更加充分的擦除状态,从而提供比正常使用的需要更加充分的保护带。这在例如美国专利5,172,338和5,602,987中有描述,这里参考引用了所述专利。检查块在擦除之后是否可用的可选方式是在某些条件下执行擦除后读取,所述条件被偏置以检查擦除失败,通常被提供余量以检查未充分擦除的单元。在每个擦除之后执行这种读取会导致系统的性能损失,所以通常避免这种方式。许多现有技术的快擦写存储器系统忽略了擦除操作的验证状态,并且只检查写后读验证操作的结果。在本发明一个实施例中,仅在出现擦除验证失败状态的情况下执行被偏置以检查未充分擦除的单元的额外写后读验证操作。如果该块满足这些读取-验证条件,则该块被认为在正常条件下可用,无论是否存在擦除验证失败。
根据擦除周期数量调用多个读取-验证操作类似于根据前面的多验证操作之后执行的写操作数量进行判决,因为擦除操作和编程操作通常是一对一的。在一个变化中,可以根据前面的多验证操作之后执行的擦除操作数量,而不是擦除周期的总数来触发多验证操作的使用。美国专利5,095,344讨论了快擦写存储器存储系统中擦除周期数量的维护。
对于触发附加写后读比较(post-write read-compare)的编程验证失败条件,应当注意,编程验证是存储器在编程操作之后返回的状态,该状态指示是否所有单元已经被编程到期望水平或高于期望水平。这个编程验证不同于本发明规定的写后读验证,它是实际读取单元以确定其具体状态。编程验证通常不检查单元是否超过目标状态(在多态存储器的情况下可能达到下一状态)。
图8提供了具有2个写后比较验证的实施例的3寄存器实现。与图7相比,加入步骤6和7以进行额外的比较。该过程也包含图7中未明确示出(虽然也可以在那里使用)的阶段3(″流式编程″操作)期间的可选数据传送。图8的变化与上述序列的不同之处还在于,下一编程操作的数据传送的启动与当前编程操作而不是读取验证的启动相一致。由于编程操作时间较长,这允许并行存在更多的数据传送时间。下面在图12中描述了对应的时序图。
图8所示的在本发明的编程/验证操作发生的事件序列包含:
1.向主数据寄存器403传送来自外部控制器电路(未示出)的数据。
2.例如同时地,向从数据寄存器404和数据比较寄存器405传送主数据寄存器403的内容。可选地,可以在加载从数据寄存器404之后、步骤5之前加载数据比较寄存器405。
3.将来自从数据寄存器404的数据编程到存储器阵列400。
i.一旦主数据寄存器403的内容已经被传送到从数据寄存器404和数据比较寄存器405,开始从外部总线向主数据寄存器403传送下一编程操作(步骤1)的数据。这可以和编程同时开始。
4.在读取检验的指定迭代所期望的条件下从存储器阵列400向从数据寄存器404回读数据。
5.比较(430)从寄存器404中的数据和数据比较寄存器405中的数据。这个比较的结果被保存在状态寄存器431中,该结果可以被外部控制器读取。
6.确定是否将进行一或多个附加读取验证,例如由于上述准则中的一个。在每个迭代期望的,并且可能不同的读取条件下针对所有期望的迭代重复步骤4-5。
7.如上所述,如果比较失败,外部控制器可以进行适当的差错恢复措施。
象前面那样,这些验证操作的确切时间/性能成本有所不同,但是在针对各个操作时间使用如上所述的相同示例性数值的情况下,图4的具有2个写后比较验证的现有技术单扇区例子提供:
TPgm/Vfy=TX+TPRG+TRD+TX+TRD+TX=429μs
对于具有2个写后比较验证的现有技术4扇区并行例子:
TPGM/VFY=4*TX+TPRG+TRD+4*TX+TRD+4*TX=666μs
对于图8所示的本发明的实施例,单扇区例子为:
TPGM/VFY=TX+TPRG+TRD+TRD=376μs
并且在4扇区并行例子的情况下:
TPGM/VFY=4*TX+TPRG+TRD+TRD=455μs
这些例子分别表示12%的改进和32%的改进。注意,这些节省没有考虑到由于流式编程而带来的性能改进,这种性能改进是通过在当前扇区的编程期间向后续扇区传送被编程的数据来实现的。
迄今为止描述的实施例均使用不同的寄存器,即数据比较寄存器405存储数据的复本,并且使用不同的寄存器,即从数据寄存器404保存针对读/写电路454传送的数据。可选的实施例集合只使用2寄存器实现中的主和从寄存器,其中主寄存器也充当比较寄存器。在这种实施例中,可以执行数据比较,但是不能开始下一个从主机到快擦写存储器控制器的数据传送,直到完整的编程/验证操作完成之后。
分别针对图7和8中的3寄存器实施例示出的单写后比较验证和多写后比较验证可被用于2个和1个寄存器的实施例。在2寄存器实施例中,除去流式编程,或者必须使用非破坏性编程-验证方案;在单寄存器实施例中,象在下面的矩阵中描述的那样得到两个措施。
  Pgm-Vfy寄存器数量 破坏性 非破坏性
  1 不可能 无流式编程比较MstReg-SenseOut
  2 无流式编程比较MstReg-SlvReg或比较MstReg-SenseOut 流式编程比较SlvReg-SenseOut
  3 流式编程比较CmpReg-SlvReg或比较CmpReg-SenseOut 流式编程比较SlvReg-SenseOut额外寄存器,或比较SlvReg-CmpReg
矩阵的3寄存器、破坏性框中的第一个记录是针对图7和8描述的过程。在一个变化中,类似于下面针对1寄存器、非破坏性实施例描述的过程,比较寄存器(CmpReg)可以直接与检测过程的输出相比较。在2寄存器、破坏性的情况下,由于比较寄存器(CmpReg)不存在,当主寄存器保存数据复本以便与从寄存器(SlvReg)或检测输出相比较时,不可使用流式编程。由于存储器中没有完好的数据复本以用于比较,1寄存器、破坏性的过程不可用。
在非破坏性列中,由于主寄存器一旦已经传送了当前数据集合便空闲,3寄存器实施例允许进行流式编程。在这种情况下,象在破坏性情况中那样,可以在从寄存器中读取和存储编程的结果,并且将结果与比较寄存器的内容相比较。可选地,由于从寄存器保存数据复本,从寄存器中这个保存的复本可以直接和检测输出相比较,在这种情况下比较寄存器是冗余的。移除这个现在为冗余的比较寄存器产生了2寄存器、非破坏性的情况。如果不是使用从寄存器,而是直接从主寄存器执行数据的非破坏性编程,则可以有1寄存器实施例,其中直接将主寄存器中保存的数据与检测输出相比较。在这个单寄存器实施例中,流式编程不可用。在上述描述中注意,在任何方案中均可以直接针对检测输出进行比较。
图9示出了2寄存器实现的例子,其中具有非破坏性编程-验证和2个写入比较验证操作。由单个寄存器分担主寄存器和比较寄存器的责任,使得图5的405和403现在相同,其中430在一个输入上现在连接到404,在另一个输入上连接到主数据寄存器403/405。主寄存器保存编程之后的数据以便执行比较。
图9中的实施例的过程类似于针对图8描述的过程:
1.向主数据寄存器403传送来自外部控制器电路(未示出)的数据。
2.向从寄存器404传送主数据寄存器403的内容。数据被保存在主数据寄存器403中。
3.将来自从寄存器404的数据编程到存储器阵列400。由于主数据寄存器403正保存这个数据的复本,在这种情况下不可以有流式编程,除非附加寄存器可用。
4.在读取检验的指定迭代所期望的条件下从存储器阵列400向从寄存器404回读数据。
5.比较(430)从寄存器404中的数据和主数据寄存器403中的数据。这个比较的结果被保存在状态寄存器431中,该结果可以被外部控制器读取。
6、7.如果将进行一或多个附加读取验证,例如由于上述准则中的一个,则步骤6和7在每个迭代的期望读取条件下针对所有期望迭代重复步骤4和5。象前面那样,如果比较失败,外部控制器可以进行适当的差错恢复措施。
如果使用非破坏性编程-验证方案,则可以在单个寄存器实施例中进行单写后比较验证过程和多写后比较验证过程。图10图解了这种针对2部分写入比较验证操作的方案。在这个可选实施例集合中,在读取过程结束的同时进行比较,而不是将读数据存储在寄存器中并且比较这个寄存器的存储内容。现在不存在图5的从和比较寄存器(分别为405和404),其中430现在通过一个输入连接到SA/PROG 454的检测电路,通过另一个输入连接到主数据寄存器403。象图9那样,数据被保存在主数据寄存器403中;与图9中不同,在不破坏数据集合的情况下从主数据寄存器编程阵列。图10示出的实施例中的2个写后比较验证的过程的处理如下所述:
1.向主数据寄存器403传送来自外部控制器电路(未示出)的数据。
2.将来自主数据寄存器403的数据编程到存储器阵列400。数据被保存在主数据寄存器403中。由于主数据寄存器403正保存这个数据的复本,在这种情况下不可以有流式编程,除非附加寄存器可用。
3.在读取检验的指定迭代所期望的条件下从存储器阵列400回读数据,并且直接与主数据寄存器403中的数据相比较。这个比较的结果被保存在状态寄存器431中,该结果可以被外部控制器读取。
4.如果将进行一或多个附加读取验证,例如由于上述准则中的一个,则步骤4在每个迭代的期望读取条件下针对所有期望迭代重复步骤3。象前面那样,如果比较失败,外部控制器可以进行适当的差错恢复措施。在图10的单寄存器实施例的变化中,可以提供第二寄存器403,使得它可以被加载流式处理中的下一数据,同时使用第一主数据寄存器403执行步骤1-4。在针对第一寄存器403完成处理之后,交换2个主数据寄存器403的角色。
图11和12是一对时序图,图解了在允许这个过程的实施例中流式编程的使用,即发出用于后续扇区的编程的数据,同时对寄存器中的当前数据进行编程的动作。图11的图例示出了现有技术的例子,其中有2扇区并行编程操作,随后是每个的单个读取,该图例基于的协议不同于图3和6中使用的协议。图11的示例性协议,以及图12中的协议更加灵活,并且说明性更强,从而允许更容易地解释本发明的构思。为了简要说明所述接口,当向存储器提交地址时,ALE线为有效高电平,当向存储器提交命令时,CLE线为有效高电平, WE线为写入到存储器的数据、地址和命令提供时钟, RE线为从存储器读取的数据、地址和命令提供时钟,当存储器件正在存储器阵列上执行读取、写入或擦除操作时,R/ B线为有效高电平。序列C.1.A和C.1.B是读取过程,其中数据被传送离开存储器件,当 RE为低电平时I/O线上分别为DATA N和DATA N+2。通过例如重复序列C1.A和C1.B,并且以不同命令开始各组序列,图11的实施例可以扩展到针对每个扇区进行2个读取的情况。例如,一次性提交序列,其中每个序列以命令READ1 CMD开始,接着再次以READ2 CMD开始,从而指示不同的读取条件。可选实施例可能需要在每个读命令之前以数据的形式提交某参数集合。
图11中描述的类似接口的现有技术实现在部件繁忙时忽略接口上的任何活动,尽管本发明的流式编程实现特性需要存储器件允许它。图11和12的图例描述了接口框架内的一个可能实现,并且可以有其它的时序图。XFER CMD启动到存储器件的数据传送,CACHE CMD完成到存储器的数据传送。PGM CMD可用于触发从主寄存器到从和比较寄存器的数据传送。ADDR和DATA阶段实际上会由若干周期构成。在数据写入之后,R/ B线首先变成低电平,STAT CMD和STAT提供编程操作的状态,包含确定是否已经达到目标水平的编程-验证阶段。再次地,作为编程操作的一部分而发生的验证与本发明的过程相分离,它基于读取并且在写入过程完成之后。
图12示出了2扇区并行编程操作的例子的部分时序图,其中具有″流式编程″,随后是每个扇区的单个比较验证。这个基本图例含有若干不同实施例的单元,即使各种单元被重新排列、改变和重复或省略。
第一实施例集合执行2扇区并行编程,流式编程和单写后比较验证。这是图12示出的例子。在传送前2个扇区的数据(N和N+1)之后,当R/ B为低时这2个扇区被编程到存储器阵列。在这些扇区正被写入的同时,在序列C2.A中将下2个扇区(N+2和N+3)传送到主数据寄存器。(这个特定变化会使用3寄存器实现或2寄存器、非破坏性实现,其中直接将阵列的输出与寄存器相比较。)这后面跟有序列C2.B,其中读取和比较在地址N存储的数据,之后是序列C2.C,其中读取和比较在地址N+1存储的数据。序列C2.C中继续进行并超出图例的示出部分的剩余部分象序列C2.B那样完成。
存在关于从序列中何处开始序列C2.A的新数据传送的选择。图3和6示出的例子示出了在编程操作之后和后续读取-验证期间开始的数据传送。由于读取操作时间短于并行编程操作所需的若干数据传送的累积时间,某些数据传送时间不会与快擦写存储器操作并行执行。相对于全部并行执行的情况,存储器操作时间的任何附加数据传送时间均会降低性能。图11和12示出了在编程操作期间开始的数据传送。由于编程操作较长,并且后面跟有读取-验证操作,更多的数据传送时间会与存储器操作并行执行。这会产生非常小的性能退化(如果有)。在图12中,需要将发生在序列C2.A和序列C2.B之间的信号STAT CMD和STAT与发生在序列C2.B和序列C2.C内的信号STAT CMD和STAT区分开。序列C2.A和C2.B之间的STAT CMD和STAT提供在低R/ B信号期间执行的编程操作的状态,包含确定是否已经达到目标水平的编程-验证阶段。构成序列C2.B和C2.C一部分的STAT CMD和STAT提供本发明的写后读验证操作的状态。更一般地,可以在可选实施例中使用不同命令,其中一个命令用于编程验证状态,另一个命令用于读取-验证过程。在比较图12的序列C2.B和序列C1.A时应当注意,序列C1.A以正传送离开存储器的数据为结束,而序列C2.B仅以被传送的状态为结束。在一个可选实施例中,可以并行比较数据,并且序列C2.B被改变以便提交两个地址。例如,组合的C2.B/C2.C序列可以是CMP1CMD,ADDR N,ADDR N+1,CMP EXEC CMD,STAT CMD和STAT,其中额外的CMP EXEC CMD被用来指示所有被比较的地址均已经提交。
在另一个可选实施例中,存储器可以在编程操作之后自动执行比较序列,于是不需要序列C2.B和C2.C,在这种情况下,编程操作之后的状态阶段会包含比较的状态。
另一个实施例集合执行2扇区并行编程,流式编程和多写后比较验证。通过例如重复序列C2.B和C2.C,并且以不同命令开始各组序列,这个序列可以扩展到针对每个扇区进行2个比较的情况。例如,一次性提交序列,所述序列以命令CMP1 CMD开始,接着再次以CMP2 CMD开始,从而指示不同的读取条件。可选实施例可能需要在每个读命令之前以数据的形式提交某参数集合,例如用于读取的电压水平数值。在另一个实施例中,存储器可以如上所述地自动进行写后比较,其中编程的状态阶段会包含比较的状态。
另一个实施例集合执行2扇区并行编程,无流式编程和任何数量的写后比较验证。可以在图9和10的2寄存器实施例或1寄存器实施例中实现这些实施例。通过从其在图例的位置移除序列C2.A,可以改变序列以执行无流式编程的编程。在如修改的图12所示、但具有地址N+2和N+3的序列中提交用于后续扇区的数据。所有如上所述的可选实施例均适用。
如上所述,不同读取条件可被用于写后比较验证的读取过程。对于使用多比较-验证的实施例,用于多个比较的多个单个读取中的每个均可以按照不同的读取余量条件执行。以下针对多态非易失存储单元提供讨论,由此可容易地得到二元非易失存储单元的情况。另外,虽然例子示出了2扇区并行操作,然而本发明适用于一个扇区或任意数量的扇区并行的情况。
图13描述了4态存储器中单元群(cell population)的示例性分布和读取余量条件,并且示出了2个可能的读取余量条件设置;一个被偏置到高编程状态,一个被偏置到低编程状态。在美国专利5,532,962和2000年9月27日提交的美国专利申请09/671,793中提供了有关各种留有余量的电平及其使用的详细描述,这里参考引用所述专利和申请。
图13的例子是电流检测存储器系统的例子,其中将某个读取条件下的存储单元电流与一组基准电流相比较。在其它存储器系统中,可以使用若干不同参数确定存储单元的状态。在下面的例子中,通过电流检测可以确定单元的存储电荷水平,其中检测其使用固定偏压条件的传导量级。可选地,通过检测阈值电压可以进行这种确定,其中使用变化操纵的门偏置条件检测这种传导的开始。这些方法代表若干更加标准的方案。
可选地,通过使单元电荷水平决定的驱动器强度控制动态保持(例如通过预充电的电容器)检测节点的放电速率,可以动态执行确定。通过检测达到指定放电水平的时间,确定存储电荷水平。在这种情况下,指示单元条件的参数是时间。在美国专利6,222,762,和ShahzadKhalid于2001年11月20日提交的美国专利申请″多级非易失集成存储器件的读出放大器(Sense Amplifier for Multilevel Non-VolatileIntegrated Memory Devices)″中描述了这个方案,这里参考引用所述专利和申请。另一个可选技术是使用频率作为参数以确定存储单元的状态,其中在美国专利6,044,019中描述了一个方案,这里参考引用了该专利。
电流检测方案在前面参考引用的美国专利5,172,338,以及这里参考引用的美国专利申请08/910,947中得到更加全面的扩展,并且可以用于本发明的各个实施例。阈值电压Vth检测方案(可选地,被称作电压余量)在某些情况下可以是优选的,因为该方案改进了检测分辨率,使得涉及大量并行读取操作的电流和功率较低,并且高位线电阻的弱点最小。Vth检测或电压余量方案在美国专利6,222,762中得到更加全面的发展。另一个电压检测技术(其中固定漏极电压的源上的电压响应指定栅极电压)是源跟随器技术,例如在美国专利申请09/671,793中描述了该技术,前面参考引用了该申请。
图14描述了改变读取条件的示例性方式。这个例子示出了电流检测技术,其中余量电流与参考电流相加,将其总和与单元输出电流相比较。该例子针对3个断点示出了并行读取,并且需要同时提供所有基准水平,而在另一个实施例中,读取可以包括使用单个基准电压或电流在基准空间上进行的搜索中的多个阶段。在多比较过程中,可以针对不同比较改变余量电流数值。读取的类型会取决于具体方案。图14的示例性实施例使用3个基准电流以区分4个状态,而其它实施例可以使用4个基准电流,象在前面参考引用的美国专利5,172,338和5,095,344中更加全面地扩展的那样。
本发明的各个方面也可以被用于在多态存储器系统中分级寻址的情况。这个方案需要将2个分别可寻址的主机数据扇区(表示成″上页面(upper page)″和″下页面(lower page)″)映射到4态存储器中的相同单元集合。在这个方案中,下页面数据的每个位被编程到指定单元中2个单元状态中的一个,上页面数据的每个位被编程以便根据指定位的数值修改每个指定单元的状态。该方案可扩展到每个单元有更高数量的状态的情况。这在2001年6月27日提交的美国专利申请09/893,277中有更加全面的描述,并且这里对其进行简要的描述,其中这里参考引用了所述专利申请。图15针对4态单元示出了一个这样的状态分配实施例,并且通过示例性电压数值示出了这种方案中的使用。
图16针对本发明在按照状态方案寻址的实现示出了寄存器的使用。根据该图例的图示,为了读取下页面,有必要首先按照上页面的粒度(图15中的0.8V鉴别点)进行读取,并且在寄存器,即寄存器1(404a)中存储结果。步骤1是上页面的正常读取,步骤2使用先前读取的上页面数据设置后续的下页面读取的条件。在第二阶段读取期间将下页面读取到第二寄存器,即寄存器2(404b),其中上页面数据被逐位反馈到检测电路以便设置适当的读取条件。结果,单个读取需要2个寄存器。然而注意,只需要将2个寄存器中的一个与比较寄存器相比较,因为它会含有所涉及的数据。上页面的读取只需要一个读取阶段,和一个寄存器。为了加入流式编程能力,加入第四寄存器,即寄存器4(403)以作为主寄存器。某些存储器可以在2态和4态下工作。在2态模式下,存储器可以将多态中的第一阶段读取所需的额外寄存器,即寄存器1(404a)用于其它目的,例如用于流式编程。
在4态操作中,寄存器1(404a)和寄存器2(404b)均充当从寄存器,寄存器3(405)是比较寄存器,寄存器4(403)充当主寄存器。在2态操作模式下,涉及前面图例的寄存器可被描述如下:寄存器1(404a)是从寄存器,寄存器4(403)是主寄存器,寄存器3(405)是比较寄存器,没有计划用于寄存器2(404b)的电流。在使用上述方案,即上页面/下页面读取方案的现有技术实现中,寄存器3(405)和寄存器4(403)不存在,并且只提供寄存器1(404a)和寄存器2(404b)对。加入寄存器3(405)和寄存器4(403)以用于本发明的目的。
本发明的许多方面不特定于存储器阵列中使用的存储单元的类型的细节。虽然迄今为止的讨论侧重于对存储器件使用电荷存储器件(例如浮动栅极EEPROM或FLASH单元)的实施例,然而本发明可以被应用于使用其它形式的存储单元的存储器系统。本发明可被用于存储器系统,所述存储器系统包含但不局限于亚0.1μm晶体管,单电子晶体管,基于有机物/碳的毫微-晶体管和分子晶体管。例如也可以使用NROM和MNOS单元,或磁性RAM和FRAM单元,例如在Eitan的美国专利5,768,192和Sato等人的美国专利4,630,086中分别描述了NROM和MNOS单元,在Gallagher等人的美国专利5,991,193和Shimizu等人的美国专利5,892,706中分别描述了磁性RAM和FRAM单元,这里参考引用了所述专利。对于这些其它类型的单元,读写过程的具体结构可以不同,但是根据前面的例子可以容易地得到本发明的各个方面的扩展。
应当理解,虽然在前面的描述中已经提出了本发明的某些实施例的许多特征和优点,以及本发明的各个实施例的结构和功能的细节,然而这里公开的内容只是说明性的,并且可以在细节方面进行改变,尤其是对于在符合本发明原理的部分的结构和方案方面,其中这种改变可以延伸到所附权利要求书表述的、从广义上理解的完整范围。例如,虽然这里描述的优选实施例涉及使用基于半导体的固态微电子器件的存储器,然而本领域的技术人员应当理解,本发明的指导可以适用于使用分子比例的有机或化学开关的其它存储器。于是,所附权利要求书的范围不应被限制到这里描述的优选实施例。

Claims (84)

1.一种非易失存储器器件,包括:
非易失存储器单元阵列;
主数据寄存器,用于接收要存储在所述阵列中的数据;
数据比较寄存器,用于从所述主数据寄存器接收数据;
从数据寄存器,用于从所述阵列接收数据;和
比较电路,用于比较所述从数据寄存器和所述数据比较寄存器中存储的数据,以验证所述阵列中的数据的正确编程。
2.如权利要求1所述的器件,其中所述存储器单元包括快擦写存储器单元。
3.如权利要求1所述的器件,其中所述主数据寄存器在进行所述比较的同时接收和/或保存用于所述阵列中的编程的后续数据集合。
4.一种系统,包括:
如权利要求1所述的存储器件;和
控制器,其中根据所述比较的指示出错的结果,所述控制器使数据被重写到所述阵列。
5.操作非易失存储器器件的方法,包括的步骤有:
接收要存储在非易失存储器单元阵列中的数据;
在主数据寄存器中存储所述第一数据;
在数据比较寄存器中存储所述第一数据;
将所述第一数据编程到所述阵列;
读取存储在所述阵列中的所述第一数据;
将所述读取的第一数据存储到从数据寄存器;和
比较所述从数据寄存器和所述数据比较寄存器中存储的数据,以验证所述阵列中的数据的正确编程。
6.如权利要求5所述的方法,其中在所述编程步骤之前从所述主数据寄存器向所述从数据寄存器传送数据。
7.如权利要求5所述的方法,其中所述主数据寄存器在一或多个所述编程、读取和比较步骤的同时接收和/或保存用于所述阵列中的编程的第二数据集合。
8.如权利要求5所述的方法,还包含根据所述比较步骤的指示所述阵列中数据的不正确编程的结果,将所述数据重新编程到所述阵列的附加步骤。
9.如权利要求8所述的方法,还包括在所述重新编程步骤之后重复所述读取和比较步骤的步骤。
10.一种非易失存储器器件,包括:
非易失存储单元阵列;
主数据寄存器,用于接收要存储在所述阵列中的数据,其中在所述要存储在所述阵列中的数据被存储在所述阵列中之后,主数据寄存器保存所述要存储在所述阵列中的数据;
从数据寄存器,用于从所述阵列接收数据;和
比较电路,用于比较所述从数据寄存器和所述主数据寄存器中存储的数据,以验证所述阵列中的数据的正确编程。
11.如权利要求10所述的器件,其中所述存储单元包括快擦写存储器单元。
12.如权利要求10所述的器件,其中所述存储单元包括NROM存储器单元。
13.如权利要求10所述的器件,其中所述存储单元包括磁性存储器单元。
14.如权利要求10所述的器件,其中所述存储单元是多态存储单元。
15.如权利要求10所述的器件,其中所述要存储在所述阵列中的数据包括多个扇区的数据,还包括:
写入电路,其中所述写入电路在所述阵列中并行存储所述多个扇区的数据。
16.如权利要求15所述的器件,其中所述比较电路并行比较所述从数据寄存器和所述主数据寄存器中存储的所述多个扇区的数据中的多个扇区。
17.如权利要求15所述的器件,其中所述比较电路每次一个扇区地串行比较所述从数据寄存器和所述主数据寄存器中存储的所述多个扇区的数据。
18.一种系统,包括:
如权利要求10所述的存储器件;和
控制器。
19.如权利要求18所述的系统,其中所述比较电路响应所述控制器提交的命令执行所述比较。
20.如权利要求18所述的系统,其中所述比较电路在所述存储器件独立于所述控制器而启动的过程中执行所述比较。
21.如权利要求18所述的器件,还包括:
从所述阵列读取数据并且向所述从寄存器提供日期的检测电路,其中所述控制器规定一或多个用于读取数据的参数。
22.如权利要求10所述的器件,其中所述比较电路响应命令执行所述比较,还包括:
从所述阵列读取数据并且向所述从寄存器提供数据的检测电路,其中所述命令规定用于读取数据的条件。
23.一种非易失存储器器件,包括:
非易失存储单元阵列;
主数据寄存器,用于接收要存储在所述阵列中的数据,其中在所述要存储在所述阵列中的数据被存储在所述阵列中之后,主数据寄存器保存所述要存储在所述阵列中的数据;
从所述阵列读取数据的检测电路;和
连接到所述检测电路的比较电路,用于比较从所述阵列读取的所述数据和所述主数据寄存器中存储的数据,以验证所述阵列中的数据的正确编程。
24.如权利要求23所述的器件,其中所述存储单元包括快擦写存储器单元。
25.如权利要求23所述的器件,其中所述存储单元包括NROM存储器单元。
26.如权利要求23所述的器件,其中所述存储单元包括磁性存储器单元。
27.如权利要求23所述的器件,其中所述存储单元是多态存储单元。
28.如权利要求23所述的器件,还包括:
第二主数据寄存器,其中所述第二主数据寄存器在进行所述比较的同时接收和/或保存用于所述阵列中的编程的后续数据集合。
29.如权利要求23所述的器件,还包括:
第二主数据寄存器,其中所述第二主数据寄存器在进行所述编程的同时接收和/或保存用于所述阵列中的编程的后续数据集合。
30.如权利要求23所述的器件,其中所述要存储在所述阵列中的数据包括多个扇区的数据,还包括:
写入电路,其中所述写入电路在所述阵列中并行存储所述多个扇区的数据。
31.如权利要求30所述的器件,其中所述检测电路从所述阵列读取所述多个扇区中的多个扇区,所述比较电路并行地比较从所述阵列读取的所述多个扇区的数据和所述主数据寄存器存储的数据中的多个扇区。
32.如权利要求30所述的器件,其中所述检测电路从所述阵列读取所述多个扇区中的多个扇区,所述比较电路每次一个扇区地串行比较从所述阵列读取的所述多个扇区的数据和所述主数据寄存器存储的数据中的多个扇区。
33.一种系统,包括:
如权利要求23所述的存储器件;和
控制器。
34.如权利要求33所述的系统,其中所述比较电路响应所述控制器提交的命令执行所述比较。
35.如权利要求33所述的系统,其中所述比较电路在所述存储器件独立于所述控制器而启动的过程中执行所述比较。
36.如权利要求33所述的器件,其中所述控制器规定用于从所述阵列读取数据的一或多个参数。
37.如权利要求23所述的器件,其中所述比较电路响应命令执行所述比较,而所述命令规定用于从所述阵列读取数据的条件。
38.一种非易失存储器器件,包括:
非易失存储单元阵列;
主数据寄存器,用于接收要存储在所述阵列中的数据;
数据比较寄存器,用于从所述主数据寄存器接收数据;
写入电路,用于在所述阵列中存储所述要存储在所述阵列中的数据;
从数据寄存器,用于从所述阵列接收数据;和
比较电路,用于比较所述从数据寄存器和所述数据比较寄存器中存储的数据,以验证所述阵列中的数据的正确编程。
39.如权利要求38所述的器件,其中所述存储单元是多态存储单元。
40.如权利要求38所述的器件,其中所述要存储在所述阵列中的数据包括多个扇区的数据,所述写入电路并行地在所述阵列中存储所述阵列中的所述多个扇区的数据。
41.如权利要求40所述的器件,其中所述比较电路并行比较所述从数据寄存器和所述数据比较寄存器中的所述多个扇区的数据中的多个扇区。
42.如权利要求40所述的器件,其中所述比较电路串行比较所述从数据寄存器和所述数据比较寄存器中的所述多个扇区的数据中的多个扇区。
43.一种系统,包括:
如权利要求38所述的存储器件;和
控制器,其中所述比较电路响应所述控制器提交的命令执行所述比较。
44.如权利要求43所述的器件,其中所述比较电路响应命令执行所述比较,还包括:
从所述阵列读取数据并且向所述从寄存器提供日期的检测电路,其中所述命令规定一或多个用于读取数据的参数。
45.一种系统,包括:
如权利要求38所述的存储器件;和
控制器,其中所述比较电路在所述存储器件独立于所述控制器而启动的过程中执行所述比较。
46.如权利要求38所述的器件,其中所述比较电路响应命令执行所述比较,还包括:
从所述阵列读取数据并且向所述从寄存器提供数据的检测电路,其中所述命令规定用于读取数据的条件。
47.操作非易失存储器器件的方法,包括的步骤有:
接收要被存储在非易失存储单元阵列中的第一数据;
在主数据寄存器中存储所述第一数据;
当在所述主数据寄存器中保存所述第一数据的同时将所述第一数据编程到所述阵列;
读取存储在所述阵列中的所述第一数据;
将所述读取的第一数据存储到从数据寄存器;和
比较所述从数据寄存器和所述主数据寄存器中存储的数据,以验证所述阵列中的数据的正确编程。
48.如权利要求47所述的方法,其中在所述编程步骤之前从所述主数据寄存器向所述从数据寄存器传送数据。
49.如权利要求47所述的方法,还包含根据所述比较步骤的指示所述阵列中的数据的不正确编程的结果,执行出错恢复措施的附加步骤。
50.如权利要求49所述的方法,还包括在所述执行出错恢复措施的步骤之后重复所述读取和比较步骤的步骤。
51.如权利要求47所述的方法,还包括在所述比较之后重复所述读取、存储和比较。
52.如权利要求51所述的方法,其中利用不同的读取条件设置执行所述比较之前的读取和所述比较之后的重复读取。
53.如权利要求47所述的方法,其中所述第一数据包括多个扇区,所述编程包括将多个扇区并行编程到所述阵列。
54.如权利要求53所述的方法,其中在所述多个扇区中的多个扇区上并行执行所述读取、存储和比较。
55.如权利要求53所述的方法,其中在所述多个扇区上串行执行所述读取、存储和比较。
56.如权利要求47所述的方法,其中响应命令而执行所述读取、存储和比较。
57.如权利要求56所述的方法,其中所述命令从外部发到存储器件。
58.如权利要求56所述的方法,其中所述命令由存储器件在内部产生。
59.如权利要求56所述的方法,其中所述命令规定用于所述读取的条件。
60.如权利要求56所述的方法,其中所述命令规定用于所述读取的一或多个参数。
61.操作非易失存储器器件的方法,包括的步骤有:
接收要存储在非易失存储单元阵列中的第一数据;
在主数据寄存器中存储所述第一数据;
当在所述主数据寄存器中保存所述第一数据的同时将所述第一数据编程到所述阵列;
读取存储在所述阵列中的所述第一数据;和
比较所读取的第一数据和所述主数据寄存器中存储的数据,以验证所述阵列中的数据的正确编程。
62.如权利要求61所述的方法,还包含根据所述比较步骤的指示所述阵列中的数据的不正确编程的结果,执行出错恢复措施的附加步骤。
63.如权利要求62所述的方法,还包括在所述执行出错恢复措施的步骤之后重复所述读取和比较步骤的步骤。
64.如权利要求61所述的方法,还包括在所述比较之后重复所述读取、存储和比较。
65.如权利要求64所述的方法,其中利用不同的读取条件设置执行所述比较之前的读取和所述比较之后的重复读取。
66.如权利要求61所述的方法,其中所述第一数据包括多个扇区,所述编程包括将多个扇区并行编程到所述阵列。
67.如权利要求66所述的方法,其中在所述多个扇区中的多个扇区上并行执行所述读取、存储和比较。
68.如权利要求66所述的方法,其中在所述多个扇区上串行执行所述读取、存储和比较。
69.如权利要求61所述的方法,其中响应控制信号而执行所述读取、存储和比较。
70.如权利要求69所述的方法,其中所述控制信号从外部发到存储器件。
71.如权利要求69所述的方法,其中所述控制信号由存储器件在内部产生。
72.如权利要求69所述的方法,其中所述控制信号规定用于所述读取的条件。
73.如权利要求69所述的方法,其中所述控制信号规定用于所述读取的一或多个参数。
74.操作非易失存储器器件的方法,包括的步骤有:
接收要存储在非易失存储单元阵列中的第一数据;
在主数据寄存器中存储所述第一数据;
在数据比较寄存器中存储所述第一数据;
将所述第一数据编程到所述阵列;
读取存储在所述阵列中的所述第一数据;
将所述读取的第一数据存储到从数据寄存器;
比较所述从数据寄存器和所述数据比较寄存器中存储的数据,以验证所述阵列中的数据的正确编程;和
接着重复所述读取、存储和比较。
75.如权利要求74所述的方法,其中利用不同的读取条件设置执行所述比较之前的读取和所述比较之后的重复读取。
76.操作非易失存储器器件的方法,包括的步骤有:
接收要存储在非易失存储单元阵列中的第一数据;
在主数据寄存器中存储所述第一数据;
在数据比较寄存器中存储所述第一数据;
将所述第一数据编程到所述阵列,其中所述第一数据包括多个扇区,所述编程包括将多个扇区并行编程到所述阵列;
读取存储在所述阵列中的所述第一数据;
将所述读取的第一数据存储到从数据寄存器;和
比较所述从数据寄存器和所述数据比较寄存器中存储的数据,以验证所述阵列中的数据的正确编程。
77.如权利要求76所述的方法,其中在所述多个扇区中的多个扇区上并行执行所述读取、存储和比较。
78.如权利要求76所述的方法,其中在所述多个扇区上每次一个扇区地串行执行所述读取、存储和比较。
79.操作非易失存储器器件的方法,包括的步骤有:
接收要存储在非易失存储单元阵列中的第一数据;
在主数据寄存器中存储所述第一数据;
在数据比较寄存器中存储所述第一数据;
将所述第一数据编程到所述阵列;和
响应控制信号:
读取存储在所述阵列中的所述第一数据;
将所述读取的第一数据存储到从数据寄存器;和
比较所述从数据寄存器和所述数据比较寄存器中存储的数据,以验证所述阵列中的数据的正确编程。
80.如权利要求79所述的方法,其中所述控制信号从外部发到存储器件。
81.如权利要求79所述的方法,其中所述控制信号由存储器件在内部产生。
82.如权利要求79所述的方法,其中所述控制信号规定用于所述读取的条件。
83.如权利要求79所述的方法,其中所述控制信号规定用于所述读取的一或多个参数。
84.操作非易失存储器器件的方法,包括的步骤有:
接收要存储在非易失存储单元阵列中的第一数据,所述非易失存储单元被逻辑组织成一或多个集合,其中每个存储单元集合存储多个分别可寻址的主机数据扇区,所述第一数据包括多个扇区的数据;
在主数据寄存器中存储所述第一数据;
在数据比较寄存器中存储所述第一数据的第一扇区;
将所述第一数据编程到所述阵列;
读取所述阵列中所存储的所述第一数据的第二扇区;
将所述第一数据的所述读取的第二扇区存储到第一从数据寄存器;
使用所述第一数据的所述读取的第二扇区的条件读取所述阵列中存储的所述第一数据的所述第一扇区;
将所述第一数据的所述读取的第一扇区存储到第二从数据寄存器;和
比较所述第二从数据寄存器和所述数据比较寄存器中存储的数据,以验证所述阵列中的数据的正确编程。
CNB018222234A 2000-12-28 2001-12-28 用于非易失存储器的高效数据验证操作的方法和结构 Expired - Fee Related CN100474452C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/751,178 2000-12-28
US09/751,178 US6349056B1 (en) 2000-12-28 2000-12-28 Method and structure for efficient data verification operation for non-volatile memories

Publications (2)

Publication Number Publication Date
CN1620703A true CN1620703A (zh) 2005-05-25
CN100474452C CN100474452C (zh) 2009-04-01

Family

ID=25020829

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB018222234A Expired - Fee Related CN100474452C (zh) 2000-12-28 2001-12-28 用于非易失存储器的高效数据验证操作的方法和结构

Country Status (10)

Country Link
US (5) US6349056B1 (zh)
EP (1) EP1488429B1 (zh)
JP (2) JP4129428B2 (zh)
KR (1) KR100921763B1 (zh)
CN (1) CN100474452C (zh)
AT (1) ATE386329T1 (zh)
AU (1) AU2001297851A1 (zh)
DE (1) DE60132830T2 (zh)
TW (1) TWI241590B (zh)
WO (1) WO2002099806A2 (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101256838A (zh) * 2007-01-23 2008-09-03 三星电子株式会社 数据验证方法和半导体存储器
CN101114530B (zh) * 2006-05-08 2010-06-09 旺宏电子股份有限公司 改变读取参考电流以存取具有读取错误的非挥发存储器的装置与方法
CN101377953B (zh) * 2007-08-29 2011-08-24 旺宏电子股份有限公司 虚拟接地阵列存储器及其编程方法
CN102509557A (zh) * 2011-11-04 2012-06-20 珠海天威技术开发有限公司 电可擦可编程只读存储器的数据擦写控制装置及方法、芯片及其数据写入方法、耗材容器
CN101256525B (zh) * 2007-01-23 2013-03-06 三星电子株式会社 用于存储页面数据的方法和装置
CN105389239A (zh) * 2015-12-10 2016-03-09 浪潮电子信息产业股份有限公司 天梭k1系统路由模块寄存器信息自动校验方法
CN106158030A (zh) * 2015-04-28 2016-11-23 旺宏电子股份有限公司 对存储器装置编程的方法以及相关的存储器装置
CN108431896A (zh) * 2016-03-15 2018-08-21 桑迪士克科技有限责任公司 用于非易失性储存阵列操作的数据寄存器复制
CN111199757A (zh) * 2018-11-16 2020-05-26 力旺电子股份有限公司 非易失性存储元件及具数据验证与重写功能的外围电路

Families Citing this family (271)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080209114A1 (en) * 1999-08-04 2008-08-28 Super Talent Electronics, Inc. Reliability High Endurance Non-Volatile Memory Device with Zone-Based Non-Volatile Memory File System
US7827348B2 (en) * 2000-01-06 2010-11-02 Super Talent Electronics, Inc. High performance flash memory devices (FMD)
US7886108B2 (en) * 2000-01-06 2011-02-08 Super Talent Electronics, Inc. Methods and systems of managing memory addresses in a large capacity multi-level cell (MLC) based flash memory device
US6961546B1 (en) * 1999-10-21 2005-11-01 Broadcom Corporation Adaptive radio transceiver with offset PLL with subsampling mixers
US20080320209A1 (en) * 2000-01-06 2008-12-25 Super Talent Electronics, Inc. High Performance and Endurance Non-volatile Memory Based Storage Systems
US7071771B2 (en) * 2000-12-11 2006-07-04 Kabushiki Kaisha Toshiba Current difference divider circuit
JP2002184190A (ja) * 2000-12-11 2002-06-28 Toshiba Corp 不揮発性半導体記憶装置
US6757193B2 (en) * 2001-05-31 2004-06-29 Macronix International Co., Ltd. Coding method of multi-level memory cell
US6929634B2 (en) * 2001-08-22 2005-08-16 Gore Enterprise Holdings, Inc. Apparatus and methods for treating stroke and controlling cerebral flow characteristics
JP4034949B2 (ja) * 2001-09-06 2008-01-16 株式会社ルネサステクノロジ 不揮発性半導体記憶装置
JP3802411B2 (ja) * 2001-12-20 2006-07-26 株式会社東芝 不揮発性半導体記憶装置のデータコピー方法
US6871257B2 (en) * 2002-02-22 2005-03-22 Sandisk Corporation Pipelined parallel programming operation in a non-volatile memory system
US7136304B2 (en) * 2002-10-29 2006-11-14 Saifun Semiconductor Ltd Method, system and circuit for programming a non-volatile memory array
US6829167B2 (en) * 2002-12-12 2004-12-07 Sandisk Corporation Error recovery for nonvolatile memory
US7392436B2 (en) * 2003-05-08 2008-06-24 Micron Technology, Inc. Program failure recovery
US7237074B2 (en) * 2003-06-13 2007-06-26 Sandisk Corporation Tracking cells for a memory system
JP4156499B2 (ja) * 2003-11-28 2008-09-24 株式会社日立製作所 ディスクアレイ装置
US7173863B2 (en) * 2004-03-08 2007-02-06 Sandisk Corporation Flash controller cache architecture
TWI289304B (en) * 2004-02-17 2007-11-01 Hon Hai Prec Ind Co Ltd Data structure design system and method for prolonging useful life of FRAM
US7213177B2 (en) * 2004-03-14 2007-05-01 Benq Corporation Method for detecting and eliminating errors in application data of an electronic device
US7490283B2 (en) * 2004-05-13 2009-02-10 Sandisk Corporation Pipelined data relocation and improved chip architectures
US8429313B2 (en) * 2004-05-27 2013-04-23 Sandisk Technologies Inc. Configurable ready/busy control
US7009889B2 (en) 2004-05-28 2006-03-07 Sandisk Corporation Comprehensive erase verification for non-volatile memory
US7401258B1 (en) * 2004-09-30 2008-07-15 Xilinx, Inc. Circuit for and method of accessing instruction data written to a memory
KR100576485B1 (ko) 2004-12-06 2006-05-10 주식회사 하이닉스반도체 플래쉬 메모리 소자의 프로그램 검증 방법
GB2421092B (en) * 2004-12-07 2008-12-03 Hewlett Packard Development Co Bufferless writing of data to memory
US7120051B2 (en) * 2004-12-14 2006-10-10 Sandisk Corporation Pipelined programming of non-volatile memories using early data
US7420847B2 (en) * 2004-12-14 2008-09-02 Sandisk Corporation Multi-state memory having data recovery after program fail
US7158421B2 (en) * 2005-04-01 2007-01-02 Sandisk Corporation Use of data latches in multi-phase programming of non-volatile memories
US7882299B2 (en) * 2004-12-21 2011-02-01 Sandisk Corporation System and method for use of on-chip non-volatile memory write cache
US7849381B2 (en) * 2004-12-21 2010-12-07 Sandisk Corporation Method for copying data in reprogrammable non-volatile memory
US7409473B2 (en) * 2004-12-21 2008-08-05 Sandisk Corporation Off-chip data relocation
US7463521B2 (en) * 2005-04-01 2008-12-09 Sandisk Corporation Method for non-volatile memory with managed execution of cached data
US7447078B2 (en) * 2005-04-01 2008-11-04 Sandisk Corporation Method for non-volatile memory with background data latch caching during read operations
US7206230B2 (en) * 2005-04-01 2007-04-17 Sandisk Corporation Use of data latches in cache operations of non-volatile memories
KR100626392B1 (ko) * 2005-04-01 2006-09-20 삼성전자주식회사 읽기 속도를 향상시킬 수 있는 플래시 메모리 장치
MX2007014846A (es) * 2005-05-30 2008-02-21 Seiko Epson Corp Aparato de almacenamiento de semiconductor.
US7694071B1 (en) * 2005-07-12 2010-04-06 Seagate Technology Llc Disk drives and methods allowing configurable zoning
US7747927B2 (en) 2005-11-22 2010-06-29 Sandisk Corporation Method for adapting a memory system to operate with a legacy host originally designed to operate with a different memory system
US7739472B2 (en) 2005-11-22 2010-06-15 Sandisk Corporation Memory system for legacy hosts
WO2007062307A2 (en) * 2005-11-22 2007-05-31 Sandisk Corporation Method and memory system for legacy hosts
US7307887B2 (en) * 2005-12-29 2007-12-11 Sandisk Corporation Continued verification in non-volatile memory write operations
US7352629B2 (en) * 2005-12-29 2008-04-01 Sandisk Corporation Systems for continued verification in non-volatile memory write operations
US20070234143A1 (en) * 2006-01-25 2007-10-04 Samsung Electronics Co., Ltd. Semiconductor memory devices and methods of testing for failed bits of semiconductor memory devices
US7428180B2 (en) * 2006-01-25 2008-09-23 Samsung Electronics Co., Ltd. Semiconductor memory devices and methods of testing for failed bits of semiconductor memory devices
US7773421B2 (en) * 2006-05-08 2010-08-10 Macronix International Co., Ltd. Method and apparatus for accessing memory with read error by changing comparison
US8077516B2 (en) * 2006-05-08 2011-12-13 Macronix International Co., Ltd. Method and apparatus for accessing memory with read error by changing comparison
CN103258572B (zh) 2006-05-12 2016-12-07 苹果公司 存储设备中的失真估计和消除
US7697326B2 (en) 2006-05-12 2010-04-13 Anobit Technologies Ltd. Reducing programming error in memory devices
US8156403B2 (en) 2006-05-12 2012-04-10 Anobit Technologies Ltd. Combined distortion estimation and error correction coding for memory devices
US8239735B2 (en) 2006-05-12 2012-08-07 Apple Inc. Memory Device with adaptive capacity
US7355892B2 (en) * 2006-06-30 2008-04-08 Sandisk Corporation Partial page fail bit detection in flash memory devices
US7304893B1 (en) 2006-06-30 2007-12-04 Sandisk Corporation Method of partial page fail bit detection in flash memory devices
US7680841B2 (en) * 2006-07-26 2010-03-16 International Business Machines Corporation Determining whether data written to source storage locations according to a write order is copied to corresponding target storage locations in the write order
KR100744013B1 (ko) * 2006-07-31 2007-07-30 삼성전자주식회사 플래시 메모리 장치 및 그것의 소거 방법
EP2487794A3 (en) * 2006-08-22 2013-02-13 Mosaid Technologies Incorporated Modular command structure for memory and memory system
WO2008026203A2 (en) 2006-08-27 2008-03-06 Anobit Technologies Estimation of non-linear distortion in memory devices
US7450425B2 (en) 2006-08-30 2008-11-11 Micron Technology, Inc. Non-volatile memory cell read failure reduction
KR100819106B1 (ko) * 2006-09-27 2008-04-02 삼성전자주식회사 상변화 메모리 장치에서의 라이트 동작방법
US7975192B2 (en) 2006-10-30 2011-07-05 Anobit Technologies Ltd. Reading memory cells using multiple thresholds
CN101601094B (zh) 2006-10-30 2013-03-27 苹果公司 使用多个门限读取存储单元的方法
KR100849715B1 (ko) * 2006-11-07 2008-08-01 주식회사 하이닉스반도체 글로벌 페이지 버퍼를 구비하는 낸드형 플래쉬 메모리소자및 데이터 리드 방법
US7924648B2 (en) 2006-11-28 2011-04-12 Anobit Technologies Ltd. Memory power and performance management
US8151163B2 (en) 2006-12-03 2012-04-03 Anobit Technologies Ltd. Automatic defect management in memory devices
KR100926475B1 (ko) * 2006-12-11 2009-11-12 삼성전자주식회사 멀티 비트 플래시 메모리 장치 및 그것의 프로그램 방법
US7900102B2 (en) 2006-12-17 2011-03-01 Anobit Technologies Ltd. High-speed programming of memory devices
WO2008077243A1 (en) 2006-12-22 2008-07-03 Sidense Corp. A power up detection system for a memory device
WO2008077240A1 (en) * 2006-12-22 2008-07-03 Sidense Corp. Mask programmable anti-fuse architecture
KR100897604B1 (ko) 2007-01-03 2009-05-14 삼성전자주식회사 검증 성공된 메모리 셀에 대하여 재검증이 가능한 비휘발성 메모리 장치의 구동 방법 및 비휘발성 메모리 장치
US8151166B2 (en) 2007-01-24 2012-04-03 Anobit Technologies Ltd. Reduction of back pattern dependency effects in memory devices
US7751240B2 (en) 2007-01-24 2010-07-06 Anobit Technologies Ltd. Memory device with negative thresholds
KR100877609B1 (ko) * 2007-01-29 2009-01-09 삼성전자주식회사 버퍼 메모리의 플래그 셀 어레이를 이용하여 데이터 오류 정정을 수행하는 반도체 메모리 시스템 및 그 구동 방법
KR100871700B1 (ko) * 2007-02-13 2008-12-08 삼성전자주식회사 불휘발성 메모리 장치에서 전하 손실에 기인한 오류 데이터정정 방법
CN101715595A (zh) 2007-03-12 2010-05-26 爱诺彼得技术有限责任公司 存储器单元读取阈的自适应估计
US8001320B2 (en) 2007-04-22 2011-08-16 Anobit Technologies Ltd. Command interface for memory devices
US8234545B2 (en) 2007-05-12 2012-07-31 Apple Inc. Data storage with incremental redundancy
WO2008139441A2 (en) 2007-05-12 2008-11-20 Anobit Technologies Ltd. Memory device with internal signal processing unit
US7925936B1 (en) 2007-07-13 2011-04-12 Anobit Technologies Ltd. Memory device with non-uniform programming levels
US8259497B2 (en) 2007-08-06 2012-09-04 Apple Inc. Programming schemes for multi-level analog memory cells
US7944702B2 (en) 2007-08-27 2011-05-17 Super Talent Electronics, Inc. Press-push flash drive apparatus with metal tubular casing and snap-coupled plastic sleeve
US8174905B2 (en) 2007-09-19 2012-05-08 Anobit Technologies Ltd. Programming orders for reducing distortion in arrays of multi-level analog memory cells
WO2009037697A2 (en) * 2007-09-20 2009-03-26 Densbits Technologies Ltd. Improved systems and methods for determining logical values of coupled flash memory cells
WO2009095902A2 (en) * 2008-01-31 2009-08-06 Densbits Technologies Ltd. Systems and methods for handling immediate data errors in flash memory
US7773413B2 (en) 2007-10-08 2010-08-10 Anobit Technologies Ltd. Reliable data storage in analog memory cells in the presence of temperature variations
US8000141B1 (en) 2007-10-19 2011-08-16 Anobit Technologies Ltd. Compensation for voltage drifts in analog memory cells
US8527819B2 (en) * 2007-10-19 2013-09-03 Apple Inc. Data storage in analog memory cell arrays having erase failures
US8068360B2 (en) 2007-10-19 2011-11-29 Anobit Technologies Ltd. Reading analog memory cells using built-in multi-threshold commands
US8694715B2 (en) 2007-10-22 2014-04-08 Densbits Technologies Ltd. Methods for adaptively programming flash memory devices and flash memory systems incorporating same
US8443242B2 (en) 2007-10-25 2013-05-14 Densbits Technologies Ltd. Systems and methods for multiple coding rates in flash devices
US8270246B2 (en) 2007-11-13 2012-09-18 Apple Inc. Optimized selection of memory chips in multi-chips memory devices
US7924628B2 (en) * 2007-11-14 2011-04-12 Spansion Israel Ltd Operation of a non-volatile memory array
US8098532B2 (en) 2007-11-20 2012-01-17 Kabushiki Kaisha Toshiba Non-volatile semiconductor storage device with address search circuit used when writing
US7945825B2 (en) * 2007-11-25 2011-05-17 Spansion Isreal, Ltd Recovery while programming non-volatile memory (NVM)
US8225181B2 (en) 2007-11-30 2012-07-17 Apple Inc. Efficient re-read operations from memory devices
US8116083B2 (en) * 2007-12-04 2012-02-14 Super Talent Electronics, Inc. Lipstick-type USB device with tubular housing
WO2009072105A2 (en) * 2007-12-05 2009-06-11 Densbits Technologies Ltd. A low power chien-search based bch/rs decoding system for flash memory, mobile communications devices and other applications
US8453022B2 (en) 2007-12-05 2013-05-28 Densbits Technologies Ltd. Apparatus and methods for generating row-specific reading thresholds in flash memory
WO2009072103A2 (en) 2007-12-05 2009-06-11 Densbits Technologies Ltd. Flash memory apparatus and methods using a plurality of decoding stages including optional use of concatenated bch codes and/or designation of 'first below' cells
US8276051B2 (en) 2007-12-12 2012-09-25 Densbits Technologies Ltd. Chien-search system employing a clock-gating scheme to save power for error correction decoder and other applications
WO2009074978A2 (en) 2007-12-12 2009-06-18 Densbits Technologies Ltd. Systems and methods for error correction and decoding on multi-level physical media
US8209588B2 (en) 2007-12-12 2012-06-26 Anobit Technologies Ltd. Efficient interference cancellation in analog memory cell arrays
US8456905B2 (en) 2007-12-16 2013-06-04 Apple Inc. Efficient data storage in multi-plane memory devices
US8327246B2 (en) 2007-12-18 2012-12-04 Densbits Technologies Ltd. Apparatus for coding at a plurality of rates in multi-level flash memory systems, and methods useful in conjunction therewith
US8085586B2 (en) 2007-12-27 2011-12-27 Anobit Technologies Ltd. Wear level estimation in analog memory cells
US8156398B2 (en) 2008-02-05 2012-04-10 Anobit Technologies Ltd. Parameter estimation based on error correction code parity check equations
US20090201748A1 (en) * 2008-02-11 2009-08-13 Sony Corporation Removable nonvolatile memory system with destructive read
US7924587B2 (en) 2008-02-21 2011-04-12 Anobit Technologies Ltd. Programming of analog memory cells using a single programming pulse per state transition
US7864573B2 (en) 2008-02-24 2011-01-04 Anobit Technologies Ltd. Programming analog memory cells for reduced variance after retention
US8230300B2 (en) 2008-03-07 2012-07-24 Apple Inc. Efficient readout from analog memory cells using data compression
US8059457B2 (en) 2008-03-18 2011-11-15 Anobit Technologies Ltd. Memory device with multiple-accuracy read commands
US8400858B2 (en) 2008-03-18 2013-03-19 Apple Inc. Memory device with reduced sense time readout
US8972472B2 (en) * 2008-03-25 2015-03-03 Densbits Technologies Ltd. Apparatus and methods for hardware-efficient unbiased rounding
US8116123B2 (en) * 2008-06-27 2012-02-14 Seagate Technology Llc Spin-transfer torque memory non-destructive self-reference read method
US8116122B2 (en) 2008-06-27 2012-02-14 Seagate Technology Llc Spin-transfer torque memory self-reference read method
TWI386803B (zh) * 2008-07-02 2013-02-21 Silicon Motion Inc 快閃記憶卡及快閃記憶體預防資料毀損的方法
US8498151B1 (en) 2008-08-05 2013-07-30 Apple Inc. Data storage in analog memory cells using modified pass voltages
US7924613B1 (en) 2008-08-05 2011-04-12 Anobit Technologies Ltd. Data storage in analog memory cells with protection against programming interruption
US8332725B2 (en) 2008-08-20 2012-12-11 Densbits Technologies Ltd. Reprogramming non volatile memory portions
US8169825B1 (en) 2008-09-02 2012-05-01 Anobit Technologies Ltd. Reliable data storage in analog memory cells subjected to long retention periods
US8949684B1 (en) 2008-09-02 2015-02-03 Apple Inc. Segmented data storage
US8482978B1 (en) 2008-09-14 2013-07-09 Apple Inc. Estimation of memory cell read thresholds by sampling inside programming level distribution intervals
US8000135B1 (en) 2008-09-14 2011-08-16 Anobit Technologies Ltd. Estimation of memory cell read thresholds by sampling inside programming level distribution intervals
US7969782B2 (en) 2008-09-26 2011-06-28 Micron Technology, Inc. Determining memory page status
CN101685676B (zh) * 2008-09-26 2014-07-02 美光科技公司 确定存储器页状况
US8239734B1 (en) 2008-10-15 2012-08-07 Apple Inc. Efficient data storage in storage device arrays
US7813168B2 (en) * 2008-10-27 2010-10-12 Seagate Technology Llc Spin-transfer torque memory self-reference read and write assist methods
US7826260B2 (en) * 2008-10-27 2010-11-02 Seagate Technology Llc Spin-transfer torque memory self-reference read and write assist methods
US8261159B1 (en) 2008-10-30 2012-09-04 Apple, Inc. Data scrambling schemes for memory devices
US8095834B2 (en) * 2008-10-30 2012-01-10 Micron Technology, Inc. Macro and command execution from memory array
US7898838B2 (en) * 2008-10-31 2011-03-01 Seagate Technology Llc Resistive sense memory calibration for self-reference read method
US7876604B2 (en) * 2008-11-05 2011-01-25 Seagate Technology Llc Stram with self-reference read scheme
US8208304B2 (en) 2008-11-16 2012-06-26 Anobit Technologies Ltd. Storage at M bits/cell density in N bits/cell analog memory cell devices, M>N
US8159864B2 (en) * 2008-12-08 2012-04-17 Qualcomm Incorporated Data integrity preservation in spin transfer torque magnetoresistive random access memory
US8248831B2 (en) 2008-12-31 2012-08-21 Apple Inc. Rejuvenation of analog memory cells
US8174857B1 (en) 2008-12-31 2012-05-08 Anobit Technologies Ltd. Efficient readout schemes for analog memory cell devices using multiple read threshold sets
US8924661B1 (en) 2009-01-18 2014-12-30 Apple Inc. Memory system including a controller and processors associated with memory devices
US8161355B2 (en) * 2009-02-11 2012-04-17 Mosys, Inc. Automatic refresh for improving data retention and endurance characteristics of an embedded non-volatile memory in a standard CMOS logic process
US8228701B2 (en) 2009-03-01 2012-07-24 Apple Inc. Selective activation of programming schemes in analog memory cell arrays
US8296628B2 (en) * 2009-03-06 2012-10-23 Texas Instruments Incorporated Data path read/write sequencing for reduced power consumption
US8832354B2 (en) 2009-03-25 2014-09-09 Apple Inc. Use of host system resources by memory controller
US8259506B1 (en) 2009-03-25 2012-09-04 Apple Inc. Database of memory read thresholds
US8458574B2 (en) 2009-04-06 2013-06-04 Densbits Technologies Ltd. Compact chien-search based decoding apparatus and method
US8819385B2 (en) 2009-04-06 2014-08-26 Densbits Technologies Ltd. Device and method for managing a flash memory
US8238157B1 (en) 2009-04-12 2012-08-07 Apple Inc. Selective re-programming of analog memory cells
US8566510B2 (en) 2009-05-12 2013-10-22 Densbits Technologies Ltd. Systems and method for flash memory management
US8479080B1 (en) 2009-07-12 2013-07-02 Apple Inc. Adaptive over-provisioning in memory systems
US8305812B2 (en) * 2009-08-26 2012-11-06 Densbits Technologies Ltd. Flash memory module and method for programming a page of flash memory cells
US8868821B2 (en) 2009-08-26 2014-10-21 Densbits Technologies Ltd. Systems and methods for pre-equalization and code design for a flash memory
US8995197B1 (en) 2009-08-26 2015-03-31 Densbits Technologies Ltd. System and methods for dynamic erase and program control for flash memory device memories
US9330767B1 (en) 2009-08-26 2016-05-03 Avago Technologies General Ip (Singapore) Pte. Ltd. Flash memory module and method for programming a page of flash memory cells
US8730729B2 (en) 2009-10-15 2014-05-20 Densbits Technologies Ltd. Systems and methods for averaging error rates in non-volatile devices and storage systems
US8495465B1 (en) 2009-10-15 2013-07-23 Apple Inc. Error correction coding over multiple memory pages
US8724387B2 (en) 2009-10-22 2014-05-13 Densbits Technologies Ltd. Method, system, and computer readable medium for reading and programming flash memory cells using multiple bias voltages
US8214700B2 (en) 2009-10-28 2012-07-03 Sandisk Technologies Inc. Non-volatile memory and method with post-write read and adaptive re-write to manage errors
US8423866B2 (en) * 2009-10-28 2013-04-16 SanDisk Technologies, Inc. Non-volatile memory and method with post-write read and adaptive re-write to manage errors
US8634240B2 (en) * 2009-10-28 2014-01-21 SanDisk Technologies, Inc. Non-volatile memory and method with accelerated post-write read to manage errors
US8504884B2 (en) * 2009-10-29 2013-08-06 Freescale Semiconductor, Inc. Threshold voltage techniques for detecting an imminent read failure in a memory array
US8626988B2 (en) * 2009-11-19 2014-01-07 Densbits Technologies Ltd. System and method for uncoded bit error rate equalization via interleaving
US8677054B1 (en) 2009-12-16 2014-03-18 Apple Inc. Memory management schemes for non-volatile memory devices
US9037777B2 (en) 2009-12-22 2015-05-19 Densbits Technologies Ltd. Device, system, and method for reducing program/read disturb in flash arrays
US8607124B2 (en) * 2009-12-24 2013-12-10 Densbits Technologies Ltd. System and method for setting a flash memory cell read threshold
US8694814B1 (en) 2010-01-10 2014-04-08 Apple Inc. Reuse of host hibernation storage space by memory controller
US8572311B1 (en) 2010-01-11 2013-10-29 Apple Inc. Redundant data storage in multi-die memory systems
US8341502B2 (en) * 2010-02-28 2012-12-25 Densbits Technologies Ltd. System and method for multi-dimensional decoding
US8527840B2 (en) 2010-04-06 2013-09-03 Densbits Technologies Ltd. System and method for restoring damaged data programmed on a flash device
US9104610B2 (en) 2010-04-06 2015-08-11 Densbits Technologies Ltd. Method, system and medium for analog encryption in a flash memory
US8745317B2 (en) 2010-04-07 2014-06-03 Densbits Technologies Ltd. System and method for storing information in a multi-level cell memory
US9021177B2 (en) 2010-04-29 2015-04-28 Densbits Technologies Ltd. System and method for allocating and using spare blocks in a flash memory
US8694853B1 (en) 2010-05-04 2014-04-08 Apple Inc. Read commands for reading interfering memory cells
US8799747B2 (en) * 2010-06-03 2014-08-05 Seagate Technology Llc Data hardening to compensate for loss of data retention characteristics in a non-volatile memory
US8572423B1 (en) 2010-06-22 2013-10-29 Apple Inc. Reducing peak current in memory systems
US8621321B2 (en) 2010-07-01 2013-12-31 Densbits Technologies Ltd. System and method for multi-dimensional encoding and decoding
US8539311B2 (en) 2010-07-01 2013-09-17 Densbits Technologies Ltd. System and method for data recovery in multi-level cell memories
US20120008414A1 (en) 2010-07-06 2012-01-12 Michael Katz Systems and methods for storing, retrieving, and adjusting read thresholds in flash memory storage system
US8514630B2 (en) 2010-07-09 2013-08-20 Sandisk Technologies Inc. Detection of word-line leakage in memory arrays: current based approach
US8305807B2 (en) 2010-07-09 2012-11-06 Sandisk Technologies Inc. Detection of broken word-lines in memory arrays
US8432732B2 (en) 2010-07-09 2013-04-30 Sandisk Technologies Inc. Detection of word-line leakage in memory arrays
US8595591B1 (en) 2010-07-11 2013-11-26 Apple Inc. Interference-aware assignment of programming levels in analog memory cells
US9104580B1 (en) 2010-07-27 2015-08-11 Apple Inc. Cache memory for hybrid disk drives
US8645794B1 (en) 2010-07-31 2014-02-04 Apple Inc. Data storage in analog memory cells using a non-integer number of bits per cell
US8856475B1 (en) 2010-08-01 2014-10-07 Apple Inc. Efficient selection of memory blocks for compaction
US8694854B1 (en) 2010-08-17 2014-04-08 Apple Inc. Read threshold setting based on soft readout statistics
US8964464B2 (en) 2010-08-24 2015-02-24 Densbits Technologies Ltd. System and method for accelerated sampling
US8508995B2 (en) 2010-09-15 2013-08-13 Densbits Technologies Ltd. System and method for adjusting read voltage thresholds in memories
US9021181B1 (en) 2010-09-27 2015-04-28 Apple Inc. Memory management for unifying memory cell conditions by using maximum time intervals
US9063878B2 (en) 2010-11-03 2015-06-23 Densbits Technologies Ltd. Method, system and computer readable medium for copy back
US8850100B2 (en) 2010-12-07 2014-09-30 Densbits Technologies Ltd. Interleaving codeword portions between multiple planes and/or dies of a flash memory device
US8472280B2 (en) 2010-12-21 2013-06-25 Sandisk Technologies Inc. Alternate page by page programming scheme
US10079068B2 (en) 2011-02-23 2018-09-18 Avago Technologies General Ip (Singapore) Pte. Ltd. Devices and method for wear estimation based memory management
US8693258B2 (en) 2011-03-17 2014-04-08 Densbits Technologies Ltd. Obtaining soft information using a hard interface
US8990665B1 (en) 2011-04-06 2015-03-24 Densbits Technologies Ltd. System, method and computer program product for joint search of a read threshold and soft decoding
WO2012151001A1 (en) * 2011-04-30 2012-11-08 Rambus Inc. Configurable, error-tolerant memory control
US8379454B2 (en) 2011-05-05 2013-02-19 Sandisk Technologies Inc. Detection of broken word-lines in memory arrays
US9396106B2 (en) 2011-05-12 2016-07-19 Avago Technologies General Ip (Singapore) Pte. Ltd. Advanced management of a non-volatile memory
US8996790B1 (en) 2011-05-12 2015-03-31 Densbits Technologies Ltd. System and method for flash memory management
US9372792B1 (en) 2011-05-12 2016-06-21 Avago Technologies General Ip (Singapore) Pte. Ltd. Advanced management of a non-volatile memory
US9110785B1 (en) 2011-05-12 2015-08-18 Densbits Technologies Ltd. Ordered merge of data sectors that belong to memory space portions
US9195592B1 (en) 2011-05-12 2015-11-24 Densbits Technologies Ltd. Advanced management of a non-volatile memory
US9501392B1 (en) 2011-05-12 2016-11-22 Avago Technologies General Ip (Singapore) Pte. Ltd. Management of a non-volatile memory module
US8667211B2 (en) 2011-06-01 2014-03-04 Densbits Technologies Ltd. System and method for managing a non-volatile memory
US8456911B2 (en) 2011-06-07 2013-06-04 Sandisk Technologies Inc. Intelligent shifting of read pass voltages for non-volatile storage
US8775901B2 (en) 2011-07-28 2014-07-08 SanDisk Technologies, Inc. Data recovery for defective word lines during programming of non-volatile memory arrays
US8726104B2 (en) 2011-07-28 2014-05-13 Sandisk Technologies Inc. Non-volatile memory and method with accelerated post-write read using combined verification of multiple pages
US8750042B2 (en) 2011-07-28 2014-06-10 Sandisk Technologies Inc. Combined simultaneous sensing of multiple wordlines in a post-write read (PWR) and detection of NAND failures
US8588003B1 (en) 2011-08-01 2013-11-19 Densbits Technologies Ltd. System, method and computer program product for programming and for recovering from a power failure
US8553468B2 (en) 2011-09-21 2013-10-08 Densbits Technologies Ltd. System and method for managing erase operations in a non-volatile memory
US8996788B2 (en) 2012-02-09 2015-03-31 Densbits Technologies Ltd. Configurable flash interface
US8947941B2 (en) 2012-02-09 2015-02-03 Densbits Technologies Ltd. State responsive operations relating to flash memory cells
US8730722B2 (en) 2012-03-02 2014-05-20 Sandisk Technologies Inc. Saving of data in cases of word-line to word-line short in memory arrays
US9190162B2 (en) * 2012-03-13 2015-11-17 Micron Technology, Inc. Nonconsecutive sensing of multilevel memory cells
US8996793B1 (en) 2012-04-24 2015-03-31 Densbits Technologies Ltd. System, method and computer readable medium for generating soft information
US8838937B1 (en) 2012-05-23 2014-09-16 Densbits Technologies Ltd. Methods, systems and computer readable medium for writing and reading data
US8879325B1 (en) 2012-05-30 2014-11-04 Densbits Technologies Ltd. System, method and computer program product for processing read threshold information and for reading a flash memory module
US8566671B1 (en) 2012-06-29 2013-10-22 Sandisk Technologies Inc. Configurable accelerated post-write read to manage errors
US9921954B1 (en) 2012-08-27 2018-03-20 Avago Technologies General Ip (Singapore) Pte. Ltd. Method and system for split flash memory management between host and storage controller
US9368225B1 (en) 2012-11-21 2016-06-14 Avago Technologies General Ip (Singapore) Pte. Ltd. Determining read thresholds based upon read error direction statistics
CN103001956A (zh) * 2012-11-23 2013-03-27 杭州也要买电子商务有限公司 一种对系统读操作请求进行权限验证的方法
US9069659B1 (en) 2013-01-03 2015-06-30 Densbits Technologies Ltd. Read threshold determination using reference read threshold
US9076530B2 (en) 2013-02-07 2015-07-07 Seagate Technology Llc Non-volatile write buffer data retention pending scheduled verification
US9552296B2 (en) * 2013-03-15 2017-01-24 International Business Machines Corporation Verifying shared memory integrity
US9250995B2 (en) * 2013-05-29 2016-02-02 Seagate Technology Llc Protection of data in memory
US9136876B1 (en) 2013-06-13 2015-09-15 Densbits Technologies Ltd. Size limited multi-dimensional decoding
CN103345610B (zh) * 2013-06-20 2015-09-23 武汉天喻信息产业股份有限公司 快速验证智能卡数据完整性的设备及方法
US20150006784A1 (en) * 2013-06-27 2015-01-01 Sandisk Technologies Inc. Efficient Post Write Read in Three Dimensional Nonvolatile Memory
US9063671B2 (en) 2013-07-02 2015-06-23 Sandisk Technologies Inc. Write operations with full sequence programming for defect management in nonvolatile memory
US9218242B2 (en) * 2013-07-02 2015-12-22 Sandisk Technologies Inc. Write operations for defect management in nonvolatile memory
US9165683B2 (en) 2013-09-23 2015-10-20 Sandisk Technologies Inc. Multi-word line erratic programming detection
US9413491B1 (en) 2013-10-08 2016-08-09 Avago Technologies General Ip (Singapore) Pte. Ltd. System and method for multiple dimension decoding and encoding a message
US9397706B1 (en) 2013-10-09 2016-07-19 Avago Technologies General Ip (Singapore) Pte. Ltd. System and method for irregular multiple dimension decoding and encoding
US9348694B1 (en) 2013-10-09 2016-05-24 Avago Technologies General Ip (Singapore) Pte. Ltd. Detecting and managing bad columns
US9786388B1 (en) 2013-10-09 2017-10-10 Avago Technologies General Ip (Singapore) Pte. Ltd. Detecting and managing bad columns
US9043537B1 (en) 2013-11-21 2015-05-26 Sandisk Technologies Inc. Update block programming order
US9213601B2 (en) 2013-12-03 2015-12-15 Sandisk Technologies Inc. Adaptive data re-compaction after post-write read verification operations
KR102140784B1 (ko) * 2013-12-03 2020-08-03 삼성전자주식회사 비휘발성 메모리 장치의 데이터 기록 방법
US9058881B1 (en) 2013-12-05 2015-06-16 Sandisk Technologies Inc. Systems and methods for partial page programming of multi level cells
US9244631B2 (en) 2013-12-06 2016-01-26 Sandisk Technologies Inc. Lower page only host burst writes
US9239756B2 (en) * 2013-12-13 2016-01-19 Sandisk Technologies Inc. Systems and methods for performing data recovery in a memory system
DE102014101945A1 (de) * 2013-12-23 2015-06-25 Endress + Hauser Gmbh + Co. Kg Messumformer mit Überwachungsfunktion
US9208023B2 (en) * 2013-12-23 2015-12-08 Sandisk Technologies Inc. Systems and methods for scheduling post-write read in nonvolatile memory
US9536612B1 (en) 2014-01-23 2017-01-03 Avago Technologies General Ip (Singapore) Pte. Ltd Digital signaling processing for three dimensional flash memory arrays
US10120792B1 (en) 2014-01-29 2018-11-06 Avago Technologies General Ip (Singapore) Pte. Ltd. Programming an embedded flash storage device
US8902652B1 (en) 2014-05-13 2014-12-02 Sandisk Technologies Inc. Systems and methods for lower page writes
US8886877B1 (en) 2014-05-15 2014-11-11 Sandisk Technologies Inc. In-situ block folding for nonvolatile memory
US9542262B1 (en) 2014-05-29 2017-01-10 Avago Technologies General Ip (Singapore) Pte. Ltd. Error correction
US9892033B1 (en) 2014-06-24 2018-02-13 Avago Technologies General Ip (Singapore) Pte. Ltd. Management of memory units
US9972393B1 (en) 2014-07-03 2018-05-15 Avago Technologies General Ip (Singapore) Pte. Ltd. Accelerating programming of a flash memory module
US9584159B1 (en) 2014-07-03 2017-02-28 Avago Technologies General Ip (Singapore) Pte. Ltd. Interleaved encoding
US9449702B1 (en) 2014-07-08 2016-09-20 Avago Technologies General Ip (Singapore) Pte. Ltd. Power management
US9484086B2 (en) 2014-07-10 2016-11-01 Sandisk Technologies Llc Determination of word line to local source line shorts
US9514835B2 (en) 2014-07-10 2016-12-06 Sandisk Technologies Llc Determination of word line to word line shorts between adjacent blocks
US9443612B2 (en) 2014-07-10 2016-09-13 Sandisk Technologies Llc Determination of bit line to low voltage signal shorts
US9460809B2 (en) 2014-07-10 2016-10-04 Sandisk Technologies Llc AC stress mode to screen out word line to word line shorts
US9202593B1 (en) 2014-09-02 2015-12-01 Sandisk Technologies Inc. Techniques for detecting broken word lines in non-volatile memories
US9240249B1 (en) 2014-09-02 2016-01-19 Sandisk Technologies Inc. AC stress methods to screen out bit line defects
US9449694B2 (en) 2014-09-04 2016-09-20 Sandisk Technologies Llc Non-volatile memory with multi-word line select for defect detection operations
US9524211B1 (en) 2014-11-18 2016-12-20 Avago Technologies General Ip (Singapore) Pte. Ltd. Codeword management
US10305515B1 (en) 2015-02-02 2019-05-28 Avago Technologies International Sales Pte. Limited System and method for encoding using multiple linear feedback shift registers
KR102292217B1 (ko) 2015-02-06 2021-08-24 삼성전자주식회사 내부적으로 데이터 읽기 검증을 수행할 수 있는 메모리 장치, 이의 작동 방법, 및 이를 포함하는 메모리 시스템
EP3289442B1 (en) * 2015-04-30 2023-04-19 Microchip Technology Incorporated Central processing unit with enhanced instruction set
US10628255B1 (en) 2015-06-11 2020-04-21 Avago Technologies International Sales Pte. Limited Multi-dimensional decoding
JP6359491B2 (ja) * 2015-06-12 2018-07-18 東芝メモリ株式会社 半導体記憶装置
US9851921B1 (en) 2015-07-05 2017-12-26 Avago Technologies General Ip (Singapore) Pte. Ltd. Flash memory chip processing
US9659666B2 (en) 2015-08-31 2017-05-23 Sandisk Technologies Llc Dynamic memory recovery at the sub-block level
US9619321B1 (en) 2015-10-08 2017-04-11 Seagate Technology Llc Internal copy-back with read-verify
US9858009B2 (en) 2015-10-26 2018-01-02 Sandisk Technologies Llc Data folding in 3D nonvolatile memory
US9954558B1 (en) 2016-03-03 2018-04-24 Avago Technologies General Ip (Singapore) Pte. Ltd. Fast decoding of data stored in a flash memory
US9952775B2 (en) * 2016-08-11 2018-04-24 SK Hynix Inc. Unusable column mapping in flash memory devices
KR20200087557A (ko) 2019-01-11 2020-07-21 주식회사 엘지화학 에러 복구 방법, 이를 이용한 마이크로 컨트롤러 유닛, 및 상기 마이크로 컨트롤러를 포함하는 배터리 장치
JP2022522437A (ja) 2019-04-30 2022-04-19 長江存儲科技有限責任公司 コントローラ、機器および方法
US11556416B2 (en) 2021-05-05 2023-01-17 Apple Inc. Controlling memory readout reliability and throughput by adjusting distance between read thresholds
US11847342B2 (en) 2021-07-28 2023-12-19 Apple Inc. Efficient transfer of hard data and confidence levels in reading a nonvolatile memory

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4577293A (en) * 1984-06-01 1986-03-18 International Business Machines Corporation Distributed, on-chip cache
JP3152720B2 (ja) * 1991-03-12 2001-04-03 株式会社東芝 不揮発性半導体記憶装置
JPH08249893A (ja) * 1995-03-07 1996-09-27 Toshiba Corp 半導体記憶装置
US5602789A (en) * 1991-03-12 1997-02-11 Kabushiki Kaisha Toshiba Electrically erasable and programmable non-volatile and multi-level memory systemn with write-verify controller
JP2647321B2 (ja) * 1991-12-19 1997-08-27 株式会社東芝 不揮発性半導体記憶装置及びこれを用いた記憶システム
US5532962A (en) * 1992-05-20 1996-07-02 Sandisk Corporation Soft errors handling in EEPROM devices
JP3212396B2 (ja) * 1993-01-14 2001-09-25 富士通株式会社 不揮発性半導体記憶装置
US5410544A (en) * 1993-06-30 1995-04-25 Intel Corporation External tester control for flash memory
US5748939A (en) * 1993-06-30 1998-05-05 Intel Corporation Memory device with a central control bus and a control access register for translating an access request into an access cycle on the central control bus
JP3013714B2 (ja) * 1994-09-28 2000-02-28 日本電気株式会社 半導体記憶装置
KR100208433B1 (ko) * 1995-12-27 1999-07-15 김영환 플래쉬 메모리 소자 및 그를 이용한 프로그램 방법
KR100223868B1 (ko) * 1996-07-12 1999-10-15 구본준 비휘발성 메모리를 프로그램하는 방법
US5890152A (en) * 1996-09-09 1999-03-30 Seymour Alvin Rapaport Personal feedback browser for obtaining media files
JP3796851B2 (ja) * 1996-10-21 2006-07-12 ソニー株式会社 不揮発性半導体記憶装置
JP3898349B2 (ja) * 1997-07-29 2007-03-28 株式会社東芝 半導体記憶装置
JP2000013581A (ja) 1998-06-24 2000-01-14 Ricoh Co Ltd ファクシミリ装置
JP2000123581A (ja) * 1998-10-14 2000-04-28 Hitachi Ltd 半導体記憶装置の書き込み方法、および半導体記憶装置
JP3219069B2 (ja) * 1999-01-25 2001-10-15 エヌイーシーマイクロシステム株式会社 不揮発性半導体記憶装置
JP2000251484A (ja) * 1999-02-26 2000-09-14 Sony Corp 不揮発性半導体記憶装置
US6266273B1 (en) * 2000-08-21 2001-07-24 Sandisk Corporation Method and structure for reliable data copy operation for non-volatile memories

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101114530B (zh) * 2006-05-08 2010-06-09 旺宏电子股份有限公司 改变读取参考电流以存取具有读取错误的非挥发存储器的装置与方法
CN101256838A (zh) * 2007-01-23 2008-09-03 三星电子株式会社 数据验证方法和半导体存储器
CN101256525B (zh) * 2007-01-23 2013-03-06 三星电子株式会社 用于存储页面数据的方法和装置
CN101377953B (zh) * 2007-08-29 2011-08-24 旺宏电子股份有限公司 虚拟接地阵列存储器及其编程方法
CN102509557A (zh) * 2011-11-04 2012-06-20 珠海天威技术开发有限公司 电可擦可编程只读存储器的数据擦写控制装置及方法、芯片及其数据写入方法、耗材容器
CN102509557B (zh) * 2011-11-04 2014-10-15 珠海天威技术开发有限公司 电可擦可编程只读存储器的数据擦写控制装置及方法、芯片及其数据写入方法、耗材容器
CN106158030A (zh) * 2015-04-28 2016-11-23 旺宏电子股份有限公司 对存储器装置编程的方法以及相关的存储器装置
CN105389239A (zh) * 2015-12-10 2016-03-09 浪潮电子信息产业股份有限公司 天梭k1系统路由模块寄存器信息自动校验方法
CN108431896A (zh) * 2016-03-15 2018-08-21 桑迪士克科技有限责任公司 用于非易失性储存阵列操作的数据寄存器复制
CN111199757A (zh) * 2018-11-16 2020-05-26 力旺电子股份有限公司 非易失性存储元件及具数据验证与重写功能的外围电路

Also Published As

Publication number Publication date
US6349056B1 (en) 2002-02-19
ATE386329T1 (de) 2008-03-15
EP1488429B1 (en) 2008-02-13
WO2002099806A2 (en) 2002-12-12
CN100474452C (zh) 2009-04-01
US20020126528A1 (en) 2002-09-12
US20030174555A1 (en) 2003-09-18
TWI241590B (en) 2005-10-11
DE60132830T2 (de) 2009-02-05
US7170782B2 (en) 2007-01-30
JP4129428B2 (ja) 2008-08-06
US6972993B2 (en) 2005-12-06
EP1488429A2 (en) 2004-12-22
WO2002099806A3 (en) 2004-09-30
AU2001297851A1 (en) 2002-12-16
JP2007257831A (ja) 2007-10-04
JP2005507129A (ja) 2005-03-10
AU2001297851A8 (en) 2005-11-03
US7376011B2 (en) 2008-05-20
KR20030068202A (ko) 2003-08-19
US20050195653A1 (en) 2005-09-08
KR100921763B1 (ko) 2009-10-15
US6560143B2 (en) 2003-05-06
DE60132830D1 (de) 2008-03-27
US20070109858A1 (en) 2007-05-17

Similar Documents

Publication Publication Date Title
CN1620703A (zh) 用于非易失存储器的高效数据验证操作的方法和结构
US7171536B2 (en) Unusable block management within a non-volatile memory system
US7290109B2 (en) Memory system and memory card
US7512014B2 (en) Comprehensive erase verification for non-volatile memory
JP5069127B2 (ja) 再プログラム可能な不揮発性メモリにおいてデータをコピーする方法
US7558148B2 (en) Memory controller
US7505338B2 (en) Memory systems and memory cards that use a bad block due to a programming failure therein in single level cell mode and methods of operating the same
CN106128505B (zh) 包括半导体存储器件的存储系统以及其编程方法
CN1647049A (zh) 非易失性存储器系统中的流水线并行编程操作
JP2007520801A (ja) 書き込み/消去失敗検出機構を有するフラッシュ記憶システム
US8274840B2 (en) Nonvolatile memory devices having built-in memory cell recovery during block erase and methods of operating same
CN1856841A (zh) 对每个存储块具有保护功能的非易失性半导体存储器件
US20080273405A1 (en) Multi-bit programming device and method of multi-bit programming
US20060239089A1 (en) Non-volatile semiconductor device for use in memory card and memory system
US20060143368A1 (en) Method for using a multi-bit cell flash device in a system not designed for the device
US8755230B2 (en) Semiconductor memory device
US8164954B2 (en) Flash memory device and program method thereof
US20080270682A1 (en) Method for using a multi-bit cell flash device in a system not designed for the device
JP4332108B2 (ja) メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法
CN111488292B (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
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: 20120327

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

Effective date of registration: 20120327

Address after: American Texas

Patentee after: Sandisk Corp.

Address before: American California

Patentee before: Sandisk Corp.

C56 Change in the name or address of the patentee
CP03 Change of name, title or address

Address after: texas

Patentee after: DELPHI INT OPERATIONS LUX SRL

Address before: American Texas

Patentee before: Sandisk Corp.

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20090401

Termination date: 20201228

CF01 Termination of patent right due to non-payment of annual fee