CN102150216B - 具有降低的数据存储要求的存储器的多遍编程 - Google Patents

具有降低的数据存储要求的存储器的多遍编程 Download PDF

Info

Publication number
CN102150216B
CN102150216B CN200980135261.1A CN200980135261A CN102150216B CN 102150216 B CN102150216 B CN 102150216B CN 200980135261 A CN200980135261 A CN 200980135261A CN 102150216 B CN102150216 B CN 102150216B
Authority
CN
China
Prior art keywords
programming
memory device
data
volatile memory
memory element
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.)
Active
Application number
CN200980135261.1A
Other languages
English (en)
Other versions
CN102150216A (zh
Inventor
三轮达
格里特.J.赫明克
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 CN102150216A publication Critical patent/CN102150216A/zh
Application granted granted Critical
Publication of CN102150216B publication Critical patent/CN102150216B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • 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/3418Disturbance prevention or evaluation; Refreshing of disturbed memory data
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/56Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
    • G11C2211/562Multilevel memory programming aspects
    • G11C2211/5621Multilevel programming verification

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Read Only Memory (AREA)

Abstract

在多遍编程操作中降低非易失性存储器件中的邻近浮置栅极之间的耦合效应,同时降低编程数据存储需求。在一种方法中,按无序或Z形字线顺序来编程存储元件。利用粗略编程遍来编程具体字线,然后利用精细编程遍来编程另一字线,然后读该具体字线。在利用导致与该具体字线的存储元件的耦合干扰的粗略编程遍来编程另一字线之前,读该具体字线。读取的数据随后用于对该具体字线进行精细编程遍。这避免了同时存储多条字线的编程数据的需要,使得可以降低存储硬件的大小以及功耗。

Description

具有降低的数据存储要求的存储器的多遍编程
相关申请的交叉引用
本申请要求于2008年9月11日提交的并通过参考合并于此的美国临时专利申请号61/096221(案号:SAND-01378US1)的权益。
技术领域
本发明涉及非易失性存储器的技术。
背景技术
半导体存储器已经变得更普遍用在各种电子设备中。例如,非易失性半导体存储器用在蜂窝电话、数码相机、个人数字助理、移动计算设备、非移动计算设备和其他设备中。电可擦除可编程只读存储器(EEPROM)和闪存位列最普遍使用的非易失性半导体存储器中。
EEPROM和闪存两者都利用位于半导体衬底中的沟道区上方并与之隔离的浮置栅极。该浮置栅极位于源极和漏极区之间。在浮置栅极之上并与之隔离地提供控制栅极。晶体管的阈值电压受保留在浮置栅极上的电荷量控制。即,在晶体管导通前必须施加到控制栅极以允许其源极和漏极之间导电的电压的最小量受浮置栅极上的电荷水平控制。
当编程EEPROM或诸如NAND闪存器件的闪存器件时,通常编程电压被施加到控制栅极,并且位线接地。来自沟道的电子被注入到浮置栅极中。当电子在浮置栅极中累积时,浮置栅极变为充负电,并且存储器单元的阈值电压升高,使得存储器单元处于已编程状态。可以在题为“Source Side SelfBoosting Technique For Non-Volatile Memory”的美国专利6859397以及题为“Detecting Over Programmed Memory”的美国专利6917545中找到关于编程的更多信息,两者通过全部参考被并于此。
一些EEPROM和闪存器件具有用于存储两个范围的电荷的浮置栅极,因此存储器单元可以在两个状态(已擦除状态和已编程状态)之间被编程/擦除。这样的闪存器件有时被称为二进制闪存器件。
通过识别由禁止(forbidden)范围分隔的多个不同的允许/有效编程阈值电压范围来实现多状态闪存器件。每个不同的阈值电压范围对应于在存储器器件中被编码的数据位集合的预定值。
可能由于基于在邻近浮置栅极中存储的电荷的电场的耦合而发生在浮置栅极上存储的表观电荷(apparent charge)的漂移。目标浮置栅极的邻近浮置栅极的一个例子包括连接到相同字线并连接到邻近位线的浮置栅极。
浮置栅极与浮置栅极耦合的效应对于多状态器件具有更大关系,因为在多状态器件中,允许的阈值电压范围和禁止的范围比二进制器件中的更窄。因此,浮置栅极与浮置栅极耦合可能导致存储器单元从允许的阈值电压范围漂移到禁止的范围。
浮置栅极与浮置栅极耦合可能发生在已经在不同时间被编程的邻近存储器单元的各集合之间。例如,第一存储器单元被编程以将一个水平的电荷添加到其与一个数据集对应的浮置栅极。随后,一个或多个邻近存储器单元被编程以将一个水平的电荷添加到它们的与第二数据集合对应的浮置栅极。在该一个或多个邻近存储器单元被编程之后,由于耦合到第一存储器单元的邻近存储器单元上的电荷的影响,从第一存储器单元读取的电荷水平看起来不同于已编程的。与邻近存储器单元的耦合可能将读取的表观电荷水平漂移足够以导致对所存储的数据的错误读取的量。
浮置栅极与浮置栅极耦合还可能发生在已经同时被编程的邻近存储器单元的各集合之间。例如,两个邻近的多状态存储器单元可以被编程到不同的目标水平,使得第一存储器单元被编程到与较低阈值电压对应的状态,并且第二存储器单元被编程到与较高阈值电压对应的状态。被编程到与较低阈值电压对应的状态的存储器单元很可能达到该状态并且被锁定以不在第二存储器单元达到与较高阈值电压对应的状态之前进一步编程。在第二存储器单元达到与较高阈值电压对应的状态之后,其将耦合到第一存储器单元并致使第一存储器单元具有比已编程的更高的视在阈值电压。
随着存储器单元在尺寸上继续缩小,预期阈值电压的本来的编程和擦除分布由于短沟道效应、更大氧化物厚度/耦合率变化和更多沟道掺杂波动而增加,由此降低邻近状态之间的可用分隔。该影响对于多状态存储器比对仅使用两个状态的存储器(二进制存储器)更大得多。此外,字线之间的间隔以及位线之间的间隔的减小还将增加邻近浮置栅极之间的耦合。
因此,需要降低邻近浮置栅极之间的耦合的效应。此外,由于市场竞争,任何这样的方法应该是节省成本的并有效利用硬件。
发明内容
提供了用于以节省成本的方式降低在邻近浮置栅极之间的耦合效应的编程技术。
在一个实施例中,一种用于操作非易失性存储器的方法,包括:(a)编程具体非易失性存储元件以将其阈值电压升高到在第一验证电平以上的第一电平;(b)在编程之后读所述具体非易失性存储元件,以确定所述阈值电压已经升高到所述第一验证电平以上;以及(c)响应于所述读,进一步编程所述具体非易失性存储元件,以将其阈值电压从所述第一电平升高到在第二验证电平以上的第二电平。
在另一实施例中,一种用于操作非易失性存储器的方法,包括:对与字线的集合相关联的非易失性存储元件的集合进行多遍编程操作。该多遍编程操作包括对于每条字线的至少两个相关联的编程遍,并且按如下顺序进行:在该顺序中,具体字线WLn经历一个编程遍,然后至少第一附加的字线经历至少一个编程遍,然后WLn经历另一遍编程。该方法还包括在WLn经历该一个编程遍之后并且在第一附加的WL经历该一个编程遍之前进行对WLn的读操作,并使用来自读操作的结果来进行WLn的相关的附加的遍。
在另一实施例中,一种用于操作非易失性存储器的方法,包括:对与字线的集合相关联的非易失性存储元件的集合进行多遍编程操作。该多遍编程操作包括对于每条字线的至少两个相关联的编程遍,并且按如下顺序进行:在该顺序中,具体字线WLn经历一个编程遍,然后至少第一附加的字线经历部分地编程与WLn相关联的非易失性存储元件的至少一个编程遍。该方法还包括在WLn经历该一个编程遍之后对WLn进行读操作和相关的误差校正处理。该方法还包括使用来自读操作的结果以及相关的误差校正处理来进行WLn的另一个编程遍,由此完成与WLn相关联的非易失性存储元件的编程。
在另一实施例中,一种非易失性存储装置,包括:非易失性存储元件的集合;以及与该非易失性存储元件的集合通信的一个或多个电路。该一个或多个控制电路:(a)编程具体非易失性存储元件以将其阈值电压升高到在第一验证电平以上的第一电平;(b)在编程之后读所述具体非易失性存储元件,以确定所述阈值电压已经升高到所述第一验证电平以上;以及(c)响应于所述读,进一步编程所述具体非易失性存储元件,以将其阈值电压从所述第一电平升高到在与第二验证电平以上的第二电平。
还可以提供相应的方法、系统以及具有用于进行在此提供的方法的可执行代码的计算机可读或处理器可读的存储器件。
附图说明
图1a是NAND串的顶视图。
图1b是NAND串的等效电路图。
图1c是NAND闪存元件的阵列的方框图。
图2绘出NAND串的截面视图。
图3绘出在两遍编程技术中存储元件集合和相关字线的编程顺序。
图4a绘出在编程期间施加到存储元件的控制栅极的第一示例脉冲串。
图4b绘出在编程期间施加到存储元件的控制栅极的第二示例脉冲串。
图4c绘出在读操作期间施加到非易失性存储元件的控制栅极的示例电压波形。
图5a绘出其中在各编程遍之间读取数据的图3的两遍编程技术的细节。
图5b绘出其中在各编程遍之间不读取数据的两遍编程技术的细节。
图6a绘出在图3的两遍编程技术的第一、粗略遍之后的阈值电压的改变。
图6b绘出在图3的两遍编程技术的第二、精细遍之后的阈值电压的改变。
图7a绘出其中在各编程遍之间读并随后访问并误差校正数据的多遍编程处理的概况。
图7b绘出与图3的两遍编程技术对应的多遍编程处理。
图8绘出三遍编程技术中的存储元件集合和相关字线的编程顺序。
图9绘出其中在各编程遍之间读数据的图8的三遍编程技术的细节。
图10a-10c绘出与图8相关联的三遍编程技术的阈值电压分布。
图11绘出与图8的三遍编程技术对应的多遍编程处理。
图12a绘出另外的多遍编程处理。
图12b-12e绘出与图12a相关联的编程技术的阈值电压分布。
图13是NAND闪存元件的阵列的方框图。
图14是使用单行/列解码器和读/写电路的非易失性存储器系统的方框图。
图15是绘出读/写堆叠的一个实施例的方框图。
图16图示将存储器阵列组织成全位线存储器架构或奇偶存储器架构的块的例子。
具体实施方式
提供了以节省成本的方式降低邻近浮置栅极之间的耦合的影响的编程技术。
闪存系统的一个例子使用NAND结构,该NAND结构包括夹在两个选择栅极之间串联地布置多个晶体管。串联的晶体管和选择栅极被称为NAND串。图1a是示出一个NAND串的顶视图。图1b是其等效电路。图1a和图1b中所示的NAND串包括串联并夹在第一(漏极侧)选择栅极120和第二(源极侧)选择栅极122之间的四个晶体管100、102、104和106。选择栅极120经由位线触点(contact)126将NAND串连接到位线。选择栅极122将NAND串连接到源极线128。通过向选择线SGD施加适当的电压来控制选择栅极120。通过向选择线SGS施加适当的电压来控制选择栅极122。晶体管100、102、104和106的每个具有控制栅极和浮置栅极。例如,晶体管100具有控制栅极100CG和浮置栅极100FG。晶体管102包括控制栅极102CG和浮置栅极102FG。晶体管104包括控制栅极104CG和浮置栅极104FG。晶体管106包括控制栅极106CG和浮置栅极106FG。控制栅极100CG连接到字线WL3,控制栅极102CG连接到字线WL2,控制栅极104CG连接到字线WL1,并且控制栅极106CG连接到字线WL0。
注意,尽管图1a和图1b示出了NAND串中的四个存储器单元,但是仅作为例子而提供四个存储器单元的使用。NAND串可以具有少于四个存储器单元或者多于四个存储器单元。例如,一些NAND串将包括八个存储器单元、16个存储器单元、32个存储器单元、64个存储器单元、128个存储器单元等等。在此的讨论不限于NAND串中的任何特定数量的存储器单元。一个实施例使用66个存储器单元的NAND串,其中64个存储器单元用于存储数据,并且两个存储器单元被称为哑存储器单元,因为它们不存储数据。
使用NAND结构的闪存系统的通常架构将包括几个NAND串。每个NAND串通过由选择线SGS控制的其源极选择栅极连接到公共源极线,并通过由选择线SGD控制的其漏极选择栅极连接到其相关联的位线。每条位线以及经由位线触点连接到该位线的相应(一个或多个)NAND串构成(comprise)存储器单元的阵列的列。与多个NAND串共享位线。通常,位线在与字线垂直的方向上在NAND串之上运行,并连接到感测放大器(sense amplifier)。
除了NAND闪存之外,也可以使用其他类型的非易失性存储器件。例如,还从使用介电层来存储电荷的存储器单元中来制造非易失性存储器器件。代替早前描述的导电的浮置栅极元件,使用介电层。利用介电存储元件的这种存储器器件已经由Eitan等人的“NROM:A Novel Localized Trapping,2-BitNonvolatile Memory Cell”IEEE Electron Device Letters,vol.21,no.11,2000年11月,543-545页描述。ONO介电层跨越源极和漏极扩散之间的沟道而延伸。用于一个数据位的电荷被局限在与漏极相邻的介电层中,并且用于另一数据位的电荷被局限在与源极相邻的介电层中。美国专利no.5768192和6011725公开了具有夹在两个二氧化硅层之间的俘获(trapping)电介质的非易失性存储器单元。通过分别读取在电介质内的空间分离的电荷存储区域的二进制状态来实现多状态数据存储。也可以使用基于MONOS或TANOS类型的结构或微晶的非易失性存储器。也可以使用其他类型的非易失性存储器。
图1c是绘出三个NAND串的电路图。使用NAND结构的闪存系统的通常架构将包括几个NAND串。例如,三个NAND串320、340和360被示出在具有许多NAND串的存储器阵列中。每个NAND串包括两个选择栅极和四个存储元件。尽管为了简化而图示了四个存储元件,但是当今的NAND串可以具有高达例如32或64个存储元件。
例如,NAND串320包括选择栅极322和327以及存储元件323-326,NAND串340包括选择栅极342和347以及存储元件343-346,NAND串360包括选择栅极362和367以及存储元件363-366。每个NAND串通过其选择栅极(例如选择栅极327、347或367)连接到源极线。选择线SGS用于控制源极侧选择栅极。各个NAND串320、340和360通过选择栅极322、342、362等等中的选择晶体管而连接到各自位线321、341和361。这些选择晶体管受漏极选择线SGD控制。在其他实施例中,选择线不一定必须是在各NAND串中公用的;即,可以为不同的NAND串提供不同的选择线。WL3连接到存储元件323、343和363的控制栅极。WL2连接到存储元件324、344和364的控制栅极。WL1连接到存储元件325、345和365的控制栅极。WL0连接到存储元件326、346和366的控制栅极。如可见的,每条位线和相应NAND串包括存储元件的阵列或集合的列。字线(WL3、WL2、WL1和WL0)包括该阵列或集合的行。每条字线连接在该行中的每个存储元件的控制栅极。或者,可以通过字线本身提供控制栅极。例如,WL2提供存储元件324、344和364的控制栅极。实践中,在字线上可以存在数千的存储元件。
每个存储元件可以存储数据。例如,当存储一位数字数据时,存储元件的可能的阈值电压(VTH)的范围被划分成两个范围,这两个范围被分配了逻辑数据“1”和“0”。在NAND型闪存的一个例子中,在存储元件被擦除之后VTH是负的,并被定义为逻辑“1”。在编程操作之后的VTH是正的并被定义为逻辑“0”。当VTH是负的并尝试读时,存储元件将导通以指示逻辑“1”正被存储。当VTH是正的并尝试读操作时,存储元件将不导通,这指示逻辑“0”被存储。存储元件还可以存储多级的信息,例如多位数字数据。在此情况下,VTH的范围被划分为多级的数据。例如,如果存储了四级的信息,则将存在被分配了数据值“11”、“10”、“01”和“00”的四个VTH范围。在NAND型存储器的一个例子中,在擦除操作之后的VTH是负的并被定义为“11”。正的VTH值用于“10”、“01”和“00”的状态。被编程到存储元件中的数据和存储元件的VTH范围之间的具体关系取决于对存储元件采用的数据编码方案。
当编程闪存元件时,编程电压被施加到存储元件的控制栅极,并且与存储元件相关的位线接地。来自沟道的电子被注入浮置栅极中。当电子在浮置栅极中累积时,浮置栅极变为充负电,并且存储元件的VTH升高。为了向正被编程的存储元件的控制栅极施加编程电压,将该编程电压施加在适当的字线上。如上所述,每个NAND串中的一个存储元件共享同一字线。例如,当编程图1c的存储元件324时,编程电压还将被施加到存储元件344和364的控制栅极。
图2绘出了NAND串的截面图。该图被简化并不是按比例的。NAND串200包括在衬底290上形成的源极侧选择栅极206、漏极侧选择栅极224以及八个存储元件208、210、212、214、216、218、220和222。各组件可以被形成在p阱区292上,该p阱区本身被形成在衬底的n阱区294中。N阱又可以被形成在p衬底296中。供应线202和203可以分别与p阱区292和n阱区294通信。除了具有电势VBL的位线226之外,还提供具有电势VSOURCE的源极供应线204。VSGS被施加到选择栅极206,并且VSGD被施加到选择栅极224。字线或非易失性存储元件的源极侧指的是面对NAND串的源极端、例如在源极供应线204处的一侧,而字线或非易失性存储元件的漏极侧指的是面对NAND串的漏极端、例如在位线226处的一侧。
重要的是能够将数据准确地编程到存储器器件中的存储元件中。通常,随着诸如NAND器件的非易失性存储器器件已经缩小到越来越小的尺寸,相邻存储元件之间的间隔也缩小。这导致更大的电容性耦合,尤其是在浮置栅极之间,这意味着来自相邻存储元件的更大干扰。电容性耦合包括位线与位线耦合和字线与字线耦合。
为了使VTH分布更窄,必须克服干扰影响。一个方案是多遍编程。在一种方法中,存储元件在一个粗略遍中被编程到比其最终意图的状态低的偏移电平。该偏移电平用于可以被认为是粗略或“模糊”状态的部分编程的状态。随后,存储元件在另一精细遍中经过剩余路途被编程到其最终意图的状态。最终编程的状态可以被认为是“精细”状态。接下来讨论多遍编程技术的一个例子。
图3绘出在两遍编程技术中的存储元件集合和相关字线的编程顺序。在此,每个由方块表示的存储元件的集合与字线WL0到WL4的集合以及位线BLi-1到BLi+1的集合通信。所绘的组件可以是存储元件、字线和位线的更大集合的子集。在此例子中,提供了五条字线,其中WL0是源极侧端字线并且WL4是漏极侧端字线。在实践中,更多的字线通常被安排在块中,诸如64条或128条字线。所提供的例示用于绘出本发明的一个实施例的方面。步骤S1到S15表示依次进行的步骤。
编程顺序可以称为无序(out of sequence)或者Z形次序的字线,因为该顺序涉及在字线之间的跳回和前进。注意,为每条字线提供粗略遍和精细遍。对与WL0相关联的所选存储元件进行第一编程遍(这是步骤1或S1)。接下来,对WL0进行读操作(S2)。读操作允许WL0上的存储元件的情况在存储元件受来自相邻字线存储元件的随后编程的耦合的影响之前被确知。可以使用误差校正码(ECC)来检测在读取的数据中的误差。此外,可以利用ECC来校正由粗略编程本身引起的错误位或者在粗略编程之后并在粗略读之前的时段中引起的错误位。假设没有由临时存储引起的错误位。
随后,在S3,发生对WL1的粗略编程遍。该编程由于与WL1的耦合而引起WL0的存储元件的阈值电压的漂移。在S4,发生对WL0的精细编程遍。为了实现此,在一个可能的实现方式中,使用ECC解码来访问并解码先前读取并存储的数据。读取的数据指示在精细编程遍中WL0的每个存储元件要被编程到的数据状态。在步骤S4之后,所读取的数据可以被删除。该方法避免了在粗略编程期间为给定的字线存储用于精细编程的编程数据的需要,如在以下进一步详细说明的。另外,阈值电压分布被收紧。
在S5,对WL1进行读操作,并在S6,对WL2进行粗略编程,这由于耦合而引起WL1的存储元件的阈值电压的漂移。在S7,发生对于WL1的精细编程遍。这可以引起与源极侧相邻字线WL0的较小量的耦合。但是,该耦合比由于粗略编程引起的耦合小得多,因此可以容忍。使用ECC解码来访问并解码先前在S5读取的数据。该读取的数据指示WL1的每个存储元件在精细编程遍中要被编程到的数据状态。于是该处理继续对其他字线进行,使得对于给定的字线,存储元件在粗略编程之后、在字线经历来自更高字线的粗略编程的耦合之前被读,并且读取的数据用于精细编程。除了在S14的读之后没有更高字线被编程之外,最后的字线、WL4类似地被编程。而是,在S15处发生对于WL4的精细编程。
可选地,可以在诸如结合图8所绘的粗略和精细编程遍之前进行另外的初始编程遍。
在图3的方法中,给定的字线直到下一较高字线已经部分被编程才完成编程。实质上,下一较高字线落后一个编程遍。例如,当WL0已经完成了精细编程时,WL仅完成粗略编程。
可以使用全位线编程,其中字线上的所有位线的存储元件被编程而不管存储元件是与偶数位线还是奇数位线相关联。但是,其他方法是可能的,包括其中偶数位线被编程、经历编程和验证操作、然后奇数位线被编程、经历编程和验证操作的方法。在另一方法中,偶数和奇数位线两者一起被编程、接收编程脉冲,然后偶数位线被验证,并且然后奇数位线被验证。随后施加下一编程脉冲,于是该处理继续。接下来描述这些方法。
图4a绘出在编程期间施加到存储元件的控制栅极的第一示例脉冲串400。该脉冲串包括在一种可能的方法中幅度逐步增加的编程脉冲402、404、406、408、410......以及在每个编程脉冲后之间的验证脉冲的集合,包括示例的验证脉冲403,该验证脉冲的集合具有诸如VVA-COARSE、VVB-COARSE和VVC-COARSE或者VVA-FINE、VVB-FINE和VVC-FINE的幅度,以下进一步讨论。脉冲幅度是VPGM1、VPGM2等等。这些脉冲可以固定幅度,或者它们可以以例如固定或变化的速率而逐步增加。通常,当使用m个数据状态时,使用m-1个验证脉冲。在一种方法中,对每个编程遍使用相同的脉冲串。但是,还能够在不同的编程遍中使用不同的脉冲串。例如,第二编程遍可以使用以比第一遍更高的初始VPGM开始的脉冲串。
在一个实施例中,编程脉冲具有以例如12V开始的电压VPGM1,并且对于每个相继的编程脉冲增加例如0.5V的增量,直到达到最大例如20-25V。在一些实施例中,对于数据正被编程到的每个状态、例如状态A、B和C,可以存在验证脉冲。在其他实施例中,可以存在更多或更少的验证脉冲。
可以在例如全位线编程期间或者奇偶编程期间使用脉冲串400。在一种类型的奇偶编程期间,使用重复施加的脉冲串400来编程和验证偶数位线的存储元件,然后使用重复施加的脉冲串400来编程和验证奇数位线的存储元件。
在图4b所示的另一类型的奇偶编程中,偶数位线和奇数位线的存储元件一起被编程,但是分别进行验证。例如,脉冲串460包括在幅度上逐步增加的编程脉冲442、444、446、448、450......以及在每个编程脉冲之间的验证脉冲的两个集合,包括示例集合443和445。在一种可能的方法中,在编程脉冲442和444之间,例如,可以使用验证脉冲的集合443来验证偶数位线的存储元件,并且可以使用验证脉冲的集合445来验证奇数位线的存储元件。
图4c绘出在读操作期间施加到非易失性存储元件的控制栅极的示例电压波形。在读操作期间,在所选字线上的电压耦合到所选存储元件的控制栅极,并且提供了读电压的序列VCGR-A、VCGR-B和VCGR-C。读操作区别于验证操作在于,对于多级存储元件,验证操作通常仅使用一个比较电平,而读操作使用多个比较电平。此外,验证操作涉及确保存储元件的阈值电压超过比较电平,而读操作涉及确定存储元件应该被分类到的阈值电压间隔和数据状态。通常,n-1个读比较电平用于在n个状态之间区分。如以下结合图6a和6b讨论的,可以取决于正读取被粗略编程的数据还是精细编程的数据,使用不同的读电压。
图5a绘出其中在各编程遍之间读数据的图3的两遍编程技术的细节。步骤S1到S10对应于图3的类似标号的步骤。“E”表示擦除的状态。时间向右前进。在S1之前,所有字线的存储元件都处于已擦除的(E)状态。在S1,对WL0进行粗略编程(“粗略编程”),然后WL0的存储元件处于粗略编程的状态(“粗略”)。WL1到WL4的存储元件处于E状态。在S2,读WL0,并且存储相关的数据。例如,当存在四个可能的数据状态时,对于每个存储元件可以存储两位数据。通常,当存在2N个状态时,存储N位。在S3,对WL1进行粗略编程。WL1的存储元件处于粗略状态,并且WL2到WL4的存储元件处于E状态。
在S4,访问对于WL0的读取的数据以用在WL0的精细编程中。实质上,读取的数据指示WL0的每个存储元件在精细编程期间要被编程到的数据状态。因此,粗略阈值电压分布提供了用于精细分布的编程数据。WL0的读取的数据在精细编程之后可以被丢弃,因为不再需要。注意,仅从一条字线读取的数据需要一次被存储。这降低了编程数据的存储需要以及将数据移来移去所需的操作,因此允许硬件成本、功耗和存储器芯片上的硬件所使用的空间的可能降低。数据的读取、存储和随后的访问可以被实现为由命令输入来启动的序列,并且可以提供存储器器件中的存储位置来临时存储读取的数据。多遍编程对用户将是显然的。另外,存储器器件中的存储位置可以是易失性的,因为该命令保证了数据的读取、存储和随后的访问是连续的。
在此的技术提供了需要较少的数据存储容量的粗略-精细编程方法。对于4级的存储元件的传统粗略/精细编程方法需要诸如每位线4位触发器(不是一定要是触发器,任何存储器是可接受的)的存储器来保持编程数据。另一方面,在此所述的技术的4级单元仅需要诸如每位线2位触发器(不是一定要是触发器,任何存储器是可接受的)的存储器。
在S5,读WL1,并且存储相关的数据。在S6,对WL2进行粗略编程。通常,在WLn上的粗略编程之前读WLn-1上的粗略分布。WLn-1上的粗略分布仅受来自WLn-2上的精细编程的耦合的最小干扰。在S6期间,WL0的存储元件处于精细状态,WL1的存储元件处于粗略状态,WL3和WL4的存储元件处于E状态。在S7,访问WL1的读取数据以用在WL1的精细编程中。在精细编程之后可以丢弃WL1的读取数据。在S8,读WL2,并且存储相关的数据。在S9,对WL3进行粗略编程。WL0和WL1的存储元件处于精细状态,WL2的存储元件处于粗略状态,并且WL4的存储元件处于E状态。在S10,访问WL2的读取数据以用在WL2的精细编程中。在精细编程之后,可以丢弃WL2的读取数据。随后进行未绘出的另外的步骤。
注意,由读粗略分布的时间引起向多遍编程添加读操作的开销成本。但是,该成本低,因为读取时间通常是整个编程时间的一小部分。
图5b绘出其中在各编程遍之间不读取数据的两遍编程技术的细节,作为与图5a的比较。步骤S1、S3、S4、S6、S7、S9和S10对应于图5a中的类似标号的步骤。在该方法中,来自至少两条字线的编程数据需要同时被存储在存储器器件或存储系统中的某处。例如,从对WL0进行粗略编程(S1)时直到进行精细编程(S4),存储WL0的数据。从对WL1进行粗略编程(S3)时直到进行精细编程(S7),存储WL1的数据。从对WL2进行粗略编程(S6)时直到进行精细编程(S10),存储WL2的数据,等等。因此,WL0和WL1同时被存储,WL1和WL2同时被存储,并且WL2和WL3同时被存储,等等。
图6a绘出在图3的两遍编程技术的第一、粗略遍之后的阈值电压的改变。该编程技术被称为全序列编程。编程技术的该部分使用较低或粗略的验证电压。
粗略编程指的是利用比精细编程更低的精确度并以比其更快的速率(更大的ΔVTH/秒)将存储元件朝向其最终意图状态编程的事实。例如可以通过施加具有更高幅度或者以更快速率增加的编程脉冲来实现该更快的编程。存储元件被编程到作为比最终或精细的验证电平低的偏移的验证电平。粗略验证电平通常接近于精细验证电平,但是足够低以防止存储元件超过(overshoot)精细验证电平太远。也就是说,允许各单元编程超过精细验证电平,如所绘的,尽管将单元编程超过精细验证电平太远将导致精细分布的加宽。
作为例子,可以存在四个数据状态,包括已擦除状态(E)和三个较高状态A、B和C。可以使用任意数量的状态,包括两个、四个、八个、十六个或更多。存储元件初始处于E状态。第一、粗略编程遍使用分别对于状态A、B和C的验证电压VVA-COARSE、VVB-COARSE和VVC-COARSE的第一粗略集合。或者将粗略编程遍称为多“遍写”(PW)编程处理的第一遍。就在粗略编程遍之后,与给定的字线、例如WLn相关联的存储元件具有由长虚线表示的VTH分布。在WLn上的阈值电压的迁移相对大,导致与相邻字线的存储元件的耦合。在对邻近源极侧字线WLn-1的精细编程之后,WLn的VTH分布稍微高地漂移,如由短虚线表示。在对邻近漏极侧字线WLn+1的粗略编程之后,WLn的VTH分布显著更高地漂移,如由点线表示。粗略编程的耦合影响因此比精细编程的更强。
在对WLn-1的精细编程之后在WLn上的粗略分布将具有某些读余量,例如这些分布不重叠。因此,在对WLn-1的精细编程之后读WLn上的粗略分布(读由短虚线表示的分布)将得到准确的结果。在使用ECC的情况下,可以允许分布的某种量的重叠,同时可以使用ECC来校正错误位。用于读粗略分布的最佳读电平应该稍低于用于精细分布的电平。例如,粗略分布的读电平是VCGR-A(COARSE)、VCGR-B(COARSE)和VCGR-C(COARSE),如图6a所绘,并且精细分布的读电平是VCGR-A(FINE)、VCGR-B(FINE)和VCGR-C(FINE),如图6b所绘。在对WLn+1的粗略编程之后在WLn上的粗略分布可能不具有良好的读余量,例如这些分布可能重叠,如所示。
图6b绘出在图3的两遍编程技术的第二、精细遍之后阈值电压的改变。跟在图6a的粗略遍之后的第二、精细编程遍使用分别对于状态A、B和C的验证电压VVA-FINE、VVB-FINE和VVC-FINE的第二较高集合。因此,该验证电压的第二集合中的每第n个验证电压比验证电压的第一集合中的每第n个验证电压高了增量,该增量对于不同的状态可以相同或不同。这是多“遍写”编程处理的第二遍。就在作为WLn的精细编程遍的第二编程遍之后,存储元件具有由点划线表示的VTH分布。在图6b中重复图6a的由点线表示的分布用于参照,箭头指示各分布如何变窄。在此,存储元件已经被编程到其最终意图状态。但是,在对WLn+1的精细编程之后,WLn的VTH分布稍微更高地偏移,如实线所示。
精细编程指的是利用比粗略编程更高的精确度并以比其更低的速率(较小的ΔVTH/秒)将存储元件朝向其最终意图状态编程的事实。例如可以通过施加具有较低幅度或者以较低速率增加的编程脉冲来实现该较慢编程。
图7a绘出其中在各编程遍之间读并随后访问并误差校正数据的多遍编程处理的概况。最初,要被编程的数据可以是ECC编码的形式。通常可以使用检测和校正误差的纠错码或者检测但不校正误差的误差检测码。多遍编程操作开始于步骤700。在步骤702,对具体字线、例如WLn进行粗略编程。在步骤704,对不强耦合到该具体字线的另一字线、例如WLn-1进行编程。例如,该编程可以是对WLn-1的精细编程。在步骤706,读具体字线并存储相关数据。在步骤708,对确实导致与该具体字线的可感知耦合的另一字线进行编程。例如,该编程可以是WLn+1的粗略编程。具体地,在步骤710,该具体字线的存储元件的VTH由于耦合而漂移。
步骤712包括访问WLn的存储的数据并使用ECC进行误差校正处理。在步骤714,使用访问的数据对该具体字线进行精细编程,并且在步骤716丢弃对该具体字线的存储的数据。例如,可以改写(write over)该数据,因为其不再需要。
图7b绘出与图3的两遍编程技术对应的多遍编程处理。该编程操作开始于步骤720。在步骤725,字线索引被设置为0,其表示第一字线。字线通常在诸如NAND串的字线集合的源极侧以0开始被依次标号。步骤730包括WL0的粗略编程,并且步骤735包括读WL0。步骤755将索引递增到例如1。如果在决定步骤760中索引不在最后的字线,则流程前进到740,其包括WLi(例如WL1)的粗略编程,并且步骤745包括访问WLi-1(例如WL0)粗略读的数据并进行WLi-1的精细编程。步骤750包括读WLi(例如WL1)并存储相关数据。
步骤755再次递增索引例如到2。如果在决定步骤760中该索引不在最后的字线,则流程前进到740,其包括WLi(例如WL2)的粗略编程,并且步骤745包括访问WLi-1(例如WL1)粗略读的数据并进行WLi-1的精细编程。步骤750包括读WLi(例如WL2)并存储相关数据。
从而处理继续直到在决定步骤760索引处于最后的字线。在图3的例子中,最后的字线由i=4表示。这时,由于没有比最后的字线更高的字线的事实,稍微修改该编程。在步骤765,发生WLi(例如WL4)的粗略编程。在步骤770,访问WLi(例如WL4)粗略读的数据,并对WLi进行精细编程。该编程操作最终结束于步骤775。注意,这是一个示例的编程序列,因为其他编程序列是可能的。
图8绘出在三遍编程技术中的存储元件的集合和相关字线的编程顺序。如图3,每个由方块表示的存储元件的集合与字线WL0到WL4的示例集合以及位线BLi-1到BLi+1的示例集合通信。所绘的组件可以是存储元件、字线和位线的更大集合的子集。在该例子中,提供了五条字线,其中WL0是源极侧端字线,并且WL4是漏极侧端字线。即,WL0处于诸如NAND串的串联连接的存储元件的集合的源极端,并且WL4处于该串联连接的存储元件的集合的漏极端。所提供的图示用于绘出本发明的一个实施例的方面。步骤S1到S20表示依次发生的操作。
编程的三遍是较低页遍、较高页粗略遍(或第一较高页遍)以及较高页精细遍(或第二较高页遍),以下进一步描述。S1包括WL0的较低页编程,S2包括WL1的较低页编程,S3包括WL0的较高页粗略编程,S4包括WL2的较低页编程,以及S5包括读WL0。S6包括WL1的较高页粗略编程,其导致对WL0的耦合干扰。S7包括访问先前读的数据和进行WL0的较高页精细编程。S8包括WL3的较低页编程。S9包括读WL1。S10包括WL2的较高页粗略编程,其导致对WL1的耦合干扰。S11包括访问先前读的数据并进行WL1的较高页精细编程。从而该处理继续直到到达最后的字线。
在该方法中,给定的字线直到下两个更高字线已经部分被编程才完成编程。实质上,下一较高字线落后一个编程遍,并且第二较高字线落后两个编程遍。例如,当WL0已经完成较高页精细编程时,WL仅完成了较高页粗略编程,并且WL2仅完成较低页编程。
图9绘出图8的三遍编程技术的细节,其中在各编程遍之间读数据。步骤S1到S11对应于图8的类似标号的步骤。“E”表示已擦除状态。时间向右前进。在S1之前,所有字线的存储元件都处于已擦除状态(E)。在S1,对WL0进行较低页编程,然后,WL0的存储元件处于较低页状态(“较低页”)。当存储元件处于两个可能的状态之一时,较低页编程也是两级编程。
WL1到WL4的存储元件处于E状态。在S2,对WL1进行较低页编程,然后WL1的存储元件处于较低页状态。WL0的存储元件处于较低页状态,并且WL2到WL4处于E状态。在S3,WL0经历较高页粗略编程(“粗略编程”)。WL1的存储元件处于较低页状态,并且WL2到WL4处于E状态。在S4,对WL2进行较低页编程,然后WL2的存储元件处于较低页状态。WL0的存储元件处于粗略状态,WL1的存储元件处于较低页状态,并且WL3到WL4的存储元件处于E状态。
在S5,读WL0并存储相关数据。在S6,发生对WL1的粗略编程。WL0的存储元件处于粗略状态,WL2的存储元件处于较低页状态,并且WL3到WL4的存储元件处于E状态。在S7,访问WL0数据,并用于WL0的精细编程。然后可以丢弃WL0数据。在S8,发生对WL3的较低页编程。WL0的存储元件处于精细较高页状态,WL2的存储元件处于粗略较高页状态,并且WL4的存储元件处于E状态。在S9,读WL1,并存储相关数据。在S10,发生对于WL2的粗略编程。WL0的存储元件处于精细较高页状态,WL2的存储元件处于粗略较高页状态,WL3的存储元件处于较低页状态,并且WL4的存储元件处于E状态。在S11,WL1经历精细编程,并且WL1的读的数据可以被丢弃。再次,注意,来自仅一条字线的读的数据需要一次被存储。这降低了存储需求以及来回移动数据所需的操作。
例如,对于四级存储元件,在一个可能的实现方式中,无需在此所述的读操作,编程的工作区需要存储两位,并且用于随后操作的临时缓冲器需要存储四位,包括要用于要用来精细编程的WLn+1数据的两位以及用于要用来精细编程的WLn数据的两位。因此,对于每个存储元件需要总共六位存储空间。例如可以通过数据锁存器或触发器来提供工作区,而通过数据锁存器、触发器、二进制缓冲器或二进制存储器来提供临时缓冲器。进一步的细节请参见图14和15。相反,利用在此所述的读操作,用于编程的工作区需要存储两位,并且临时缓冲器需要存储两位,包括用于要用来精细编程的WLn数据的两位。因此,对于每个存储元件需要总共四位的存储空间。利用在此所述的编程技术,结果,每个存储元件节省了两位。
在另一可能的实现方式中,工作区需要存储三位,并且用于随后操作的临时缓冲器需要存储两位,包括用于要用来精细编程的WLn数据的两位。因此,对于每个存储元件需要总共五位的存储空间。相反,利用在此所述的编程技术,结果,每个存储元件节省了一位。
随着字线中几百或几千的存储元件,存储需求的节省是极大的。想到,存储器器件可以被设计为具有降低的存储需求来节约成本。此外,可以降低功耗。
注意,随后还进行未绘出的另外的步骤。
图10a-10c绘出了与图8相关联的三遍编程技术的阈值电压分布。
图10a绘出在其中使用了中间验证电压的第一较低页编程遍之后的阈值电压的改变。在此,编程处理在三个阶段中发生。初始阶段涉及对于意图被编程到最终状态B或C的存储元件使用中间验证电压VVINT来编程。意图被编程到最终状态A的存储元件维持处于已擦除状态。该初始阶段可能涉及编程数据较低页。就在WLn的较低页编程之后,WLn的INT VTH分布由INT分布的长虚线表示。在对WLn-1的粗略编程之后,INT VTH分布稍微更高地漂移,如由短虚线表示。在对WLn+1的粗略编程之后,WLn的INT VTH分布稍微更高地漂移,如由点线表示。
图10b绘出在其中使用较低验证电压的作为粗略较高页遍的第二遍之后的阈值电压的改变。在图10a的初始阶段之后,第一“遍写”编程遍使用分别对于状态A、B和C的验证电压VVA-COARSE、VVB-COARSE和VVC-COARSE的第一较低集合。意图被编程到最终状态A的存储元件从状态E开始被编程,并且意图被编程到最终状态B或C的存储元件从状态INT开始被编程。在图10b中重复图10a的点线用于参照。存储元件被编程到作为低于最终状态的偏移的电平。该编程阶段可以是编程数据的较高页的第一粗略遍。
就在WLn的粗略较高页编程遍之后,例如WLn的存储元件具有由点划线表示的VTH分布。在对WLn-1的精细编程之后,WLn的VTH分布稍微更高地漂移,如由点划线所示。在对WLn+1的粗略编程之后,WLn的VTH分布稍微更高地漂移,如由虚线-虚线-点线表示。粗略较高页分布的读电平是VCGR-A(COARSE)、VCGR-B(COARSE)和VCGR-C(COARSE)。为了参照还绘出了分别对于状态A、B和C的示例控制栅极读电压VCGR-A(COARSE)、VCGR-B(COARSE)和VCGR-C(COARSE)
图10c绘出在其中使用较高验证电压的第三精细较高页遍之后的阈值电压的改变。从图10b到图10c的转变类似于从图6a到图6b的转变。在图10b的第一“遍写”编程遍之后,第二“遍写”编程遍使用分别对于状态A、B和C的验证电压VVA-FINE、VVB-FINE和VVC-FINE的第二较高集合。意图被编程到最终状态A、B或C的存储元件从由从图10b重复的虚线-虚线-点线表示的各自较低偏移状态开始被编程。为了参照还绘出了分别对于状态A、B和C的示例控制栅极读电压VCGR-A(FINE)、VCGR-B(FINE)和VCGR-C(FINE)。该编程阶段可以是编程较高页数据的第二精细遍。
就在WLn的精细较高页编程遍之后,存储元件具有由点线表示的VTH分布。为了参照在图10c中重复由虚线-虚线-点线表示的图10b的分布,箭头指示分布如何变窄。在对WLn+1的精细编程之后,WLn的VTH分布稍微更高漂移,如由实线所示。
接下来讨论示例的多遍编程技术的进一步的细节。在一个示例实现方式中,非易失性存储元件使用四个数据状态每存储元件存储两位数据。例如,假设状态E是已擦除状态,并且状态A、B和C是已编程状态。状态E存储数据11。状态A存储数据01。状态B存储数据10。状态C存储数据00。这是非格雷编码的例子,因为两个位都在邻近状态A和B之间改变。也可以使用将数据编码到物理数据状态的其他编码。每个存储元件存储两页数据。为了参考目的,这些数据页将被称为较高页和较低页;但是,也可以给它们其他标记。参考状态A,较高页存储位0并且较低页存储位1。参考状态B,较高页存储位1并且较低页存储位0。参考状态C,两页都存储位数据0。
在初始编程遍中,编程较低页。如果较低页要保持数据1,则存储元件状态保持在状态E。如果数据要被编程到0,则存储元件的电压的阈值升高,使得存储元件被编程到状态INT。在一个实施例中,在存储元件从状态E编程到状态INT之后,在NAND串中的其相邻存储元件(WLn+1)则将关于其较低页被编程。例如,回去查看图1b,在编程了存储元件106的较低页之后,将编程存储元件104的较低页。在编程存储元件104之后,如果存储元件106具有从状态E升高到状态INT的VTH,则浮置栅极与浮置栅极耦合效应将使存储元件106的表观VTH升高。这将具有加宽状态INT的VTH分布的效果。当编程较高页时,VTH分布的这种表观的加宽被大部分修正。
如果存储元件处于状态E并且较高页要保持在1,则存储元件将保持在状态E中。如果存储元件处于状态E并且其较高页数据要被编程到0,则存储元件的VTH将升高,使得存储元件处于状态A中。如果存储元件处于INT阈值电压分布,并且较高页数据要保持在1,则存储元件将被编程到最终状态B。如果存储元件处于INT阈值电压分布,并且较高页数据要变成数据0,则存储元件的VTH将升高,使得存储元件处于状态C。替换的状态编码的例子是当较高页数据是1时从分布INT移动到状态C,并且当较高页数据是0时,移动到状态B。
尽管图10a-c提供了关于四个数据状态和两页数据的例子,但是所教导的概念可以应用于具有任意数量的状态和页的其他实现方式。
图11绘出与图8的三遍编程技术对应的多遍编程处理。编程操作开始于步骤1100。在步骤1105,字线索引被设置为0以表示初始源极侧字线。步骤1110包括WL0的较低页编程。步骤1115包括WL1的较低页编程。步骤1120包括WL0的粗略较高页编程。步骤1145第一次将索引递增到例如i=1。如果在决定步骤1150还未达到最后字线的索引,则进行步骤1125到1145的处理。具体地,步骤1125包括WLi+1(例如WL2)的较低页编程,步骤1130包括读WLi-1(例如WL0)并存储相关数据,步骤1135包括WLi(例如WL1)的粗略编程。步骤1140包括访问WLi-1(例如WL0)粗略读的数据并进行WLi-1的精细较高页编程。步骤1145将索引递增到i=2,并且再次进行步骤1125-1145的处理。具体地,步骤1125包括WLi+1(例如WL3)的较低页编程,步骤1130包括读WLi-1(例如WL1)并存储相关数据,步骤1135包括WLi(例如WL2)的粗略编程。步骤1140包括访问WLi-1(例如WL1)粗略读的数据并进行WLi-1的精细较高页编程。
在步骤1145再次递增索引,并且再次进行步骤1125到1145,直到在决定步骤1150达到最后的字线。在这点上,进行步骤1155到1190,这涉及结束最后几条字线的编程处理。例如,对于最后的字线i=4,如图8所绘,仅作为例示,步骤1155包括读WLi-2(例如WL2),步骤1160包括WLi-1(例如WL3)的粗略较高页编程,并且步骤1165包括访问WLi-2(例如WL2)粗略读的数据并使用其来进行WLi-2的精细编程。步骤1170包括读WLi-1(例如WL3),步骤1175包括WLi(例如WL4)的粗略较高页编程,并且步骤1180包括访问WLi-1(例如WL3)粗略读的数据并使用其来进行WLi-1的精细编程。步骤1185包括读WLi(例如WL4),并且步骤1190包括访问WLi(例如WL4)粗略读的数据并使用其来进行WLi的精细编程。编程操作结束于步骤1195。
接下来结合图12a-12e讨论进一步的编程选项。图12a绘出除了在A和B状态之前对C状态进行较高页粗略编程之外类似于图8的另外的多遍编程处理。在此,S3、S6、S10、S14和S17表示对状态C存储元件进行较高页的粗略编程,然后对状态A和B存储元件的较高页的粗略编程的步骤。S7、S11、S15、S18和S20表示对于所有状态、例如A、B和C的较高页的精细编程的步骤。
图12b-12e绘出与图12a相关的编程技术的阈值电压分布。
图12b绘出在其中使用中间验证电压的较低页编程之后的阈值电压的改变。该选项还可以降低扰乱(disturb)和相邻单元干扰效应的影响。其主要降低位线与位线干扰和编程扰乱。该编程技术被称为“C最先”或“最高状态最先”,其中C状态表示四个数据状态、多级实现方式中的最高状态。该技术可以扩展到八个、十六个或其他数量的状态。这种技术涉及在较低状态单元的粗略编程之前,使用粗略验证电平将所有最高状态单元编程到其意图的状态。
在图12b中,使用VVINT作为验证电平来编程B和C状态存储元件(即,最终分别要被编程到状态B或C的元件)。长虚线绘出就在WLn的较低页编程之后的WLn的INT VTH分布,短虚线绘出在WLn-1的粗略较高页编程之后的WLn的INT VTH分布,并且点线绘出在WLn+1的较低页编程之后的WLn的INT VTH分布。
图12c绘出由点划线表示的就在C状态存储元件的粗略较高页编程之后的VTH分布。为了参照,重复图12b的INT状态的点线。对于C状态存储元件的VTH的转变由箭头绘出。B状态存储元件的VTH保持在INT。
图12d绘出其中使用状态A和B的较低验证电压的A和B存储元件的粗略较高页编程。使用较低验证电压VVA-COARSE从状态E编程A状态存储元件,并且使用验证电平VVB-COARSE从INT状态编程B状态存储元件。为了参照,在图12d中重复图12c的INT状态的点线。这时,在一个可能的方法中,C状态存储元件被锁定以不编程。A和B存储元件的粗略较高页编程导致C状态存储元件的VTH从由点划线表示的分布漂移到由虚线-点-点线(dash-dot-dot line)表示的分布。该虚线-点-点线绘出就在WLn的状态A和B存储元件的粗略较高页编程之后对于状态A、B和C的WLn的VTH分布。此外,虚线-虚线-点线绘出在WLn-1的精细较高页编程之后WLn的存储元件的VTH分布,其中经历了小的耦合漂移,并且虚线绘出在WLn+1的粗略较高页编程之后WLn的存储元件的VTH分布,其中经历较大的耦合漂移。
图12e绘出其中使用对于状态A、B和C的较高验证电压的精细较高页编程。具体地,分别使用较高验证电平VVA-FINE、VVB-FINE和VVC-FINE来编程A、B和C状态存储元件。就在WLn的精细较高页编程之后,存储元件具有由点线表示的VTH分布。为了参照,在图12e中重复图12d的由虚线表示的分布,箭头指示该分布如何变窄。在对WLn+1的精细编程之后,WLn的VTH分布稍微更高地漂移,如由实线所示。
接下来讨论可以进行上述技术的非易失性存储器件的示例实现方式。
图13图示诸如图1a和1b所示的NAND存储元件的阵列1300的例子。沿着每列,位线1306耦接到NAND串1325的漏极选择栅极的漏极端1326。沿着NAND串的每行,源极线1304可以连接NAND串的源极选择栅极的所有源极端1328。
存储元件的阵列被划分成大量的存储元件块。如对于快闪EEPROM系统共同的,块是擦除的单位。即,每块包含一起被擦除的最小数量的存储元件。每块通常被划分成多个页。页是编程的最小单位。一页或多页数据通常被存储在存储元件的一行中。例如,一行通常包含几个交织的页,或者其可以构成一页。一页的所有存储元件将一起被读或编程。另外,一页可以存储来自一个或多个扇区的用户数据。扇区是由主机使用作为用户数据的传统单位的逻辑概念;其通常不包含限制于控制器的开销数据。开销数据可以包括已经从扇区的用户数据计算出的纠错码(EEC)。控制器(以下描述)的一部分在数据被编程到阵列中时计算ECC,并且还在从该阵列读数据时检查该ECC。或者,ECC和/或其他开销数据被存储在与它们所属于的用户数据不同的页中、或者甚至不同块中。
用户数据的扇区通常是512字节,对应于磁盘中的扇区的大小。开销数据通常是另外的16-20字节。大量页形成块,从8页到例如高达32、64、128或更多页任意。在一些实施例中,NAND串的一行包括一块。
在一个实施例中通过将p阱升高到擦除电压(例如14-22V)达足够的时间段并将所选块的字线接地同时源极和位线浮置来擦除存储器存储元件。可以对整个存储器阵列、单独的块或另一单位的存储元件进行擦除。
除了NAND之外,在此提供的技术可应用于包括NOR的其他非易失性存储技术。
图14是使用单行/列解码器和读/写电路的非易失性存储器系统的方框图。该图图示了根据本发明的一个实施例的具有用于并行地读并编程一页存储元件的读/写电路的存储器器件1396。存储器器件1396可以包括一个或多个存储器晶片1398。存储器晶片1398包括存储元件的二维阵列1300、控制电路1310和读/写电路1365。在一些实施例中,存储元件的阵列可以是三维的。存储器阵列1300可由字线经由行解码器1330以及由位线经由列解码器1360寻址。读/写电路1365包括允许并行地读或编程一页存储元件的多个读/写(R/W)堆叠1305。每个读/写(R/W)堆叠1305是芯片上电路。二进制缓冲器1302也与存储器阵列相关联。通常芯片外(off-chip)控制器1350被包括在与该一个或多个存储器晶片1398相同的存储器器件1396(例如可移除存储卡)中。经由线路1320在主机和控制器1350之间以及经由线路1318在控制器与一个或多个存储器晶片1398之间传送命令和数据。
控制电路1310与读/写电路1365协作以对存储器阵列1000执行存储器操作。控制电路1310包括状态机1312、芯片上地址解码器1314和功率控制模块1316。状态机1312提供对存储器操作的芯片级控制。芯片上地址解码器1314提供在由主机或存储器控制器使用的地址与由解码器1330和1360使用的硬件地址之间的地址接口。功率控制模块1316控制在存储器操作期间向字线和位线提供的功率和电压。
在一些实现方式中,组件中的一些可以被组合。在各个设计中,不同于存储器阵列1300的一个或多个组件(单独或组合)可以被认为是管理或控制电路。例如,一个或多个管理或控制电路可以包括控制电路1310、状态机1312、解码器1314/1360、功率控制1316、R/W堆叠1305、读/写电路1365、控制器1350等等中的任意一个或组合。
在另一方法中,在存储器阵列1300的相对侧上以对称方式实现各种外围电路对该阵列的访问,使得每侧的访问线和电路的密度降低一半。因此,行解码器被分为两个行解码器,并且列解码器被分为两个列解码器。类似地,读/写电路被分为连接到来自阵列1300的底部的位线的读/写电路和连接到来自阵列1300的顶部的位线的读/写电路。以此方式,读/写模块的密度实质上减少了一半。
控制器1350可以包括ECC编码器/解码器1352和缓冲存储器1354。ECC编码器/解码器1352用于编码和解码在多遍编程处理期间被编程和读取的字线的数据,如先前例如结合图7a所述。在粗略编程数据之前进行包括ECC编码的编码。ECC编码器/解码器1352可以类似地用于解码从字线读取的原始数据、进行误差校正和检测、以及确定是否已经超过误差阈值。缓冲存储器1354、二进制缓冲器1320和数据锁存器通常是临时的易失性数据存储位置。
图15是绘出也称作感测块的读/写堆叠的一个实施例的方框图。如所述,在一种可能的方法中,可以提供一堆(bank)分区的R/W堆叠以实现图14的读/写电路1365。示例的各个R/W堆叠1305包括用于感测k条相应位线的感测模块1380的堆叠、用于处理数据和协调传送数据的公共处理器1392、针对每条相应位线的数据锁存器1394以及I/O接口模块1396。因此,在一个可能的实施例中,将存在对于每条位线的单独的感测模块1380和对于感测模块1380的集合的一个公共处理器1392。感测模块1380、公共处理器1392和数据锁存器1394可以经由数据总线1393通信。此外,数据锁存器1394可以直接与I/O接口1396通信。状态机1312(图14)可以可选地经由堆叠总线控制器与总线1393通信。进一步的细节请参考US 2006/0140007以及US2008/0065813,两者通过参考合并于此。
感测模块1380包括感测电路1382、例如感测放大器,其确定所连接的位线中的导电电流是在预定阈值水平以上还是以下。感测模块1380还包括位线锁存器1384,其用于设置在所连接的位线上的电压情况。例如,锁存在位线锁存器1384中的预定状态将导致所连接的位线被拉到指定编程禁止的状态(例如VDD)。
公共处理器1392进行计算。例如,其功能之一是确定所感测的存储元件中存储的数据并将所确定的数据存储在数据锁存器的集合1394中。数据锁存器的集合1394用于存储在读操作期间由处理器1392确定的数据位。其还用于存储在编程操作期间从数据总线1320输入的数据位。输入的数据位表示意要被编程到存储器中的写数据。I/O接口1396提供数据锁存器1394和数据总线1320之间的接口。
在读或感测期间,系统的操作在控制不同控制栅极电压向被寻址的存储元件的供应的状态机1312的控制下。随着其逐步经过与存储器支持的各个存储器状态对应的各个预定控制栅极电压,感测模块1380可以行进(trip)在这些电压之一,并且将从感测模块1380经由总线1393提供输出给处理器1392。那时,处理器1392通过考虑感测模块的(一个或多个)行进事件以及经由输入线1393来自状态机的关于所施加的控制栅极电压的信息来确定得到的存储器状态。然后其计算存储器状态的二进制编码并将得到的数据位存储到数据锁存器1394中。在另一实施例中,位线锁存器1384起双重用途,作为锁存感测模块1380的输出的锁存器以及还作为如上所述的位线锁存器。
一些实现方式可以包括多个处理器1392。在一个实施例中,每个处理器1392将包括输出线(未绘出),使得每条输出线被在一起布线为或(wired-OR)。在一些实施例中,输出线在被连接到布线为或的线之前被反相(invert)。该配置使能够在编程验证处理期间迅速确定编程处理何时完成,因为接收被布线为或的状态机可以确定正被编程的所有位何时达到期望的电平。例如,当每位已达到其期望的电平时,对于该位的逻辑0将被发送到布线为或的线(或数据1被反相)。当所有位输出数据0(或数据1被反相)时,则状态机知道终止编程处理。因为每个处理器与八个感测模块通信,因此状态机需要读布线为或的线八次,或者逻辑被添加到处理器1392以累积相关联的位线的结果,使得状态机仅需要读布线为或的线一次。类似地,通过正确地选择逻辑电平,全局状态机可以检测第一位何时改变其状态,并据此改变算法。
在编程或验证期间,要编程的数据从数据总线1320被存储在数据锁存器的合集1394中。在状态机的控制下的编程操作包括施加到被寻址的存储元件的控制栅极的一系列编程电压脉冲。每个编程脉冲后跟随着读回(验证),以确定存储元件是否已被编程到期望的存储器状态。处理器1392相对于期望的存储器状态监视读回的存储器状态。当两者一致时,处理器1392设置位线锁存器1384,以便致使位线被拉到指定编程禁止的状态。这禁止耦接到位线的存储元件进一步编程,即使编程脉冲出现在其控制栅极上。在其他实施例中,处理器最初加载位线锁存器1384,并且在验证处理期间,感测电路将其设置到禁止值。
数据锁存器堆叠1394包含与感测模块对应的数据锁存器的堆叠。在一个实施例中,存在每个感测模块1380三个数据锁存器。在一些实现方式中(但不是要求的),数据锁存器被实现为移位寄存器,使得存储在其中的并行数据被转换为串行数据用于数据总线1320,并反之亦然。在优选实施例中,与m个存储元件的读/写块对应的所有数据锁存器可以链接在一起以形成块移位寄存器,使得可以通过串行传送来输入或输出数据块。具体地,r个读/写模块的堆被适配为使得其数据锁存器的集合的每个将依次将数据移入或移出数据总线,就像它们是整个读/写块的移位寄存器的部分那样。
关于非易失性存储器件的各个实施例的结构和/或操作的另外的信息可以在美国专利7196931、美国专利7023736、美国专利7046568、US2006/0221692以及US 2006/0158947中找到。所有的这五个就在以上列出的文件通过全部参考合并于此。
如所述,可以提供多个R/W堆叠,其中每个负责将用户数据的各个部分存储到所选字线的各个存储元件。R/W堆叠通常可以并行工作。
图16图示将存储器阵列组织成用于全位线存储器架构或者用于奇偶存储器架构的块的示例。描述了存储器阵列1600的示例结构。作为一个例子,描述被分区成1024个块的NAND快闪EEPROM。存储在每个块中的数据可以同时被擦除。在一个实施例中,块是同时被擦除的存储元件的最小单位。在此例子中,在每个块中,存在与位线BL0、BL1......BL8511对应的8512个列。在称为全位线(ABL)架构(架构1610)的一个实施例中,在读和编程操作期间,一块的所有位线可以同时被选择。沿着公共字线并连接到任意位线的存储元件可以同时被编程。
在所提供的例子中,64个存储元件串联连接以形成NAND串。存在六十四条数据字线,其中每个NAND串包括六十四个数据存储元件。在其他实施例中,NAND串可以具有多于或少于64个数据存储元件。
NAND串的的一端经由(连接到选择栅极漏极线SGD的)漏极选择栅极连接到相应位线,并且另一端经由(连接到选择栅极源极线SGS的)源极选择栅极连接到c源极。
在称为奇偶架构(架构1600)的一个实施例中,位线被划分成偶数位线(BLe)和奇数位线(BLo)。在此情况下,沿着公共字线并连接到奇数位线的存储元件在一次被编程,而沿着公共字线并连接到偶数位线的存储元件在另一次被编程。可以同时将数据编程到不同的块中和从不同的块读数据。在此例子中,在每个块中,存在被划分成偶数列和奇数列的8512个列。
在读和编程操作的一个配置期间,同时选择4256个存储元件。所选的存储元件具有相同的字线和相同种类的位线(例如偶数或奇数)。因此,形成一个逻辑页的532字节的数据可以同时被读取或被编程,并且存储器的一个块可以存储至少八个逻辑页(四条字线,每条具有奇数和偶数页)。对于多状态存储元件,当每个存储元件存储两位数据时,其中这两位的每位被存储在不同的页中,一块存储十六个逻辑页。也可以使用其他大小的块和页。
对于ABL或者奇偶架构,可以通过将p阱升高到擦除电压(例如20V)并将所选块的字线接地来擦除存储元件。源极和位线浮置。可以对整个存储器阵列、单独的块或作为存储器器件的一部分的另一单位的存储元件进行擦除。电子从存储元件的浮置栅极转移到p阱区,使得存储元件的VTH变为负。
为了例示和描述的目的已经给出了本发明的以上详细描述。不意图详尽或将本发明限制到所公开的精确形式。根据以上教导,许多修改和变更是可能的。选择所描述的实施例以便最佳地说明本发明的原理及其实际应用,由此使得本领域技术人员能够在各种实施例中并利用适合于意图的具体使用的各种修改来最佳地利用本发明。意要本发明的范围由附于此的权利要求限定。

Claims (14)

1.一种用于操作非易失性存储器的方法,包括:
(a)编程(S3)具体字线的具体非易失性存储元件(208-222)以将其阈值电压升高到在粗略验证电平(VVA-COARSE、VVB-COARSE、VVC-COARSE)以上的第一电平,包括验证该阈值电压在所述粗略验证电平以上,所述粗略验证电平与所述具体非易失性存储元件的目标数据状态(A、B、C)相关联;
(b)在所述验证之后,编程(S4)与所述具体非易失性存储元件串联连接的至少一个其他非易失性存储元件;
(c)在编程所述至少一个其他非易失性存储元件之后读(S5)所述具体非易失性存储元件,以确定所述具体非易失性存储元件的所述阈值电压已经升高到所述粗略验证电平以上;
(d)响应于所述读,进一步编程(S7)所述具体非易失性存储元件,以将其阈值电压从所述第一电平升高到在与所述目标数据状态相关联的精细验证电平(VVA-FINE、VVB-FINE、VVC-FINE)以上的第二电平。
2.如权利要求1的方法,其中所述具体非易失性存储元件串联连接到NAND串中的非易失性存储元件的集合(200)中的所述至少一个其他非易失性存储元件。
3.如权利要求1或2的方法,其中:
所述具体非易失性存储元件邻近于所述至少一个其他非易失性存储元件。
4.如权利要求1或2的方法,其中:
所述读确定所述目标数据状态。
5.如权利要求1或2的方法,还包括:
提供第一二进制数据,步骤(a)的编程响应于所述第一二进制数据;以及
响应于所述读,提供第二二进制数据,步骤(d)的进一步编程响应于所述第二二进制数据而不是所述第一二进制数据。
6.如权利要求1或2的方法,还包括:
在步骤(a)(S3)之前,使用第一页数据来编程(S1)所述具体非易失性存储元件,步骤(a)(S3)的编程是使用第二页数据的第一编程遍,并且步骤(d)(S7)的进一步编程是使用该第二页数据的第二编程遍。
7.如权利要求1或2的方法,其中:
所述读包括依次将与相应的多个数据状态(A、B、C)相关联的多个控制栅极读电压(VCGR-A、VCGR-B、VCGR-C)施加到所述具体非易失性存储元件。
8.一种非易失性存储装置,包括:
非易失性存储元件的集合(200);
(a)用于编程(S3)具体字线的具体非易失性存储元件以将其阈值电压升高到在粗略验证电平(VVA-COARSE、VVB-COARSE、VVC-COARSE)以上的第一电平、包括验证该阈值电压在所述粗略验证电平以上的部件(1310,1350),所述粗略验证电平与所述具体非易失性存储元件的目标数据状态(A、B、C)相关联;
(b)用于在所述验证之后,编程(S4)与所述具体非易失性存储元件串联连接的至少一个其他非易失性存储元件的部件(1310,1350);
(c)用于在编程所述至少一个其他非易失性存储元件之后读(S5)所述具体非易失性存储元件、以确定所述具体非易失性存储元件的所述阈值电压已经升高到所述粗略验证电平以上的部件(1310,1350);以及
(d)用于响应于所述读、进一步编程(S7)所述具体非易失性存储元件、以将其阈值电压从所述第一电平升高到在与所述目标数据状态相关联的精细验证电平(VVA-FINE、VVB-FINE、VVC-FINE)以上的第二电平的部件(1310,1350)。
9.如权利要求8的非易失性存储装置,还包括:
基于用于读的部件确定所述目标数据状态的部件。
10.如权利要求8或9的非易失性存储装置,其中:
所述具体非易失性存储元件串联连接到NAND串中的所述至少一个其他非易失性存储元件。
11.如权利要求8或9的非易失性存储装置,还包括用于以下的部件:
提供第一二进制数据;
响应于所述第一二进制数据,编程所述具体非易失性存储元件;
响应于用于读的部件,提供第二二进制数据;以及
响应于所述第二二进制数据而不是所述第一二进制数据,进一步编程所述具体非易失性存储元件。
12.如权利要求8或9的非易失性存储装置,还包括用于以下的部件:
在用于编程(a)所述具体非易失性存储元件以将其阈值电压升高到所述第一电平的部件之前,使用第一页数据来编程所述具体非易失性存储元件,其中用于编程(a)的部件进行的编程是使用第二页数据的第一编程遍,并且用于进一步编程(d)的部件的进一步编程是使用该第二页数据的第二编程遍。
13.如权利要求8或9的非易失性存储装置,其中:
用于读的部件通过依次将与相应的多个数据状态(A、B、C)相关联的多个控制栅极读电压(VCGR-A、VCGR-B、VCGR-C)施加到所述具体非易失性存储元件来读所述具体非易失性存储元件。
14.如权利要求8或9的非易失性存储装置,其中:
所述非易失性存储元件存储多位数据。
CN200980135261.1A 2008-09-11 2009-09-09 具有降低的数据存储要求的存储器的多遍编程 Active CN102150216B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US9622108P 2008-09-11 2008-09-11
US61/096,221 2008-09-11
US12/344,763 2008-12-29
US12/344,763 US8130552B2 (en) 2008-09-11 2008-12-29 Multi-pass programming for memory with reduced data storage requirement
PCT/US2009/056394 WO2010030692A2 (en) 2008-09-11 2009-09-09 Multi-pass programming for memory with reduced data storage requirement

Publications (2)

Publication Number Publication Date
CN102150216A CN102150216A (zh) 2011-08-10
CN102150216B true CN102150216B (zh) 2014-03-12

Family

ID=41799149

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200980135261.1A Active CN102150216B (zh) 2008-09-11 2009-09-09 具有降低的数据存储要求的存储器的多遍编程

Country Status (7)

Country Link
US (1) US8130552B2 (zh)
EP (1) EP2332147B1 (zh)
JP (1) JP5467107B2 (zh)
KR (1) KR101632367B1 (zh)
CN (1) CN102150216B (zh)
TW (1) TW201017672A (zh)
WO (1) WO2010030692A2 (zh)

Families Citing this family (183)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103258572B (zh) 2006-05-12 2016-12-07 苹果公司 存储设备中的失真估计和消除
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
WO2008026203A2 (en) 2006-08-27 2008-03-06 Anobit Technologies Estimation of non-linear distortion in memory devices
WO2008053472A2 (en) 2006-10-30 2008-05-08 Anobit Technologies Ltd. Reading memory cells using multiple thresholds
WO2008053473A2 (en) * 2006-10-30 2008-05-08 Anobit Technologies Ltd. Memory cell readout using successive approximation
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
US7900102B2 (en) 2006-12-17 2011-03-01 Anobit Technologies Ltd. High-speed programming of memory devices
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
WO2008111058A2 (en) 2007-03-12 2008-09-18 Anobit Technologies Ltd. Adaptive estimation of memory cell read thresholds
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
US8174905B2 (en) * 2007-09-19 2012-05-08 Anobit Technologies Ltd. Programming orders for reducing distortion in arrays of multi-level analog memory cells
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
WO2009050703A2 (en) * 2007-10-19 2009-04-23 Anobit Technologies 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
KR101509836B1 (ko) * 2007-11-13 2015-04-06 애플 인크. 멀티 유닛 메모리 디바이스에서의 메모리 유닛의 최적화된 선택
US8225181B2 (en) 2007-11-30 2012-07-17 Apple Inc. Efficient re-read operations from memory devices
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
US8738841B2 (en) 2007-12-27 2014-05-27 Sandisk Enterprise IP LLC. Flash memory controller and system including data pipelines incorporating multiple buffers
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
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
US8400858B2 (en) 2008-03-18 2013-03-19 Apple Inc. Memory device with reduced sense time readout
US8059457B2 (en) 2008-03-18 2011-11-15 Anobit Technologies Ltd. Memory device with multiple-accuracy read commands
US7995388B1 (en) 2008-08-05 2011-08-09 Anobit Technologies Ltd. Data storage using modified voltages
US7924613B1 (en) 2008-08-05 2011-04-12 Anobit Technologies Ltd. Data storage in analog memory cells with protection against programming interruption
US8949684B1 (en) 2008-09-02 2015-02-03 Apple Inc. Segmented data storage
US8169825B1 (en) 2008-09-02 2012-05-01 Anobit Technologies Ltd. Reliable data storage in analog memory cells subjected to long retention periods
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
US8239734B1 (en) 2008-10-15 2012-08-07 Apple Inc. Efficient data storage in storage device arrays
US7839687B2 (en) * 2008-10-16 2010-11-23 Sandisk Corporation Multi-pass programming for memory using word line coupling
US8261159B1 (en) 2008-10-30 2012-09-04 Apple, Inc. Data scrambling schemes for memory devices
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
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
US8228701B2 (en) 2009-03-01 2012-07-24 Apple Inc. Selective activation of programming schemes in analog memory cell arrays
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
US8238157B1 (en) 2009-04-12 2012-08-07 Apple Inc. Selective re-programming of analog memory cells
US8479080B1 (en) 2009-07-12 2013-07-02 Apple Inc. Adaptive over-provisioning in memory systems
US8495465B1 (en) 2009-10-15 2013-07-23 Apple Inc. Error correction coding over multiple memory pages
KR101636248B1 (ko) * 2009-12-10 2016-07-06 삼성전자주식회사 플래시 메모리 장치, 이를 포함하는 플래시 메모리 시스템 및 이의 프로그램 방법
US8677054B1 (en) 2009-12-16 2014-03-18 Apple Inc. Memory management schemes for non-volatile memory devices
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
JP2011181156A (ja) * 2010-03-03 2011-09-15 Toshiba Corp 半導体記憶装置
US8694853B1 (en) 2010-05-04 2014-04-08 Apple Inc. Read commands for reading interfering memory cells
US8572423B1 (en) 2010-06-22 2013-10-29 Apple Inc. Reducing peak current in memory systems
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
US8767459B1 (en) 2010-07-31 2014-07-01 Apple Inc. Data storage in analog memory cells across word lines 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
US9021181B1 (en) 2010-09-27 2015-04-28 Apple Inc. Memory management for unifying memory cell conditions by using maximum time intervals
US8472280B2 (en) 2010-12-21 2013-06-25 Sandisk Technologies Inc. Alternate page by page programming scheme
US8910020B2 (en) 2011-06-19 2014-12-09 Sandisk Enterprise Ip Llc Intelligent bit recovery for flash memory
US8909982B2 (en) 2011-06-19 2014-12-09 Sandisk Enterprise Ip Llc System and method for detecting copyback programming problems
KR101792870B1 (ko) * 2011-06-21 2017-11-02 삼성전자주식회사 불휘발성 메모리 장치 및 그것의 읽기 방법
US8432740B2 (en) 2011-07-21 2013-04-30 Sandisk Technologies Inc. Program algorithm with staircase waveform decomposed into multiple passes
KR101903091B1 (ko) 2011-10-05 2018-10-02 삼성전자주식회사 불휘발성 메모리 장치를 포함하는 메모리 시스템 및 그것의 동작 방법
EP3736265A1 (en) 2011-10-20 2020-11-11 Oryzon Genomics, S.A. (hetero)aryl cyclopropylamine compounds as lsd1 inhibitors
US8938658B2 (en) 2011-11-07 2015-01-20 Sandisk Enterprise Ip Llc Statistical read comparison signal generation for memory systems
US9048876B2 (en) 2011-11-18 2015-06-02 Sandisk Enterprise Ip Llc Systems, methods and devices for multi-tiered error correction
US8954822B2 (en) 2011-11-18 2015-02-10 Sandisk Enterprise Ip Llc Data encoder and decoder using memory-specific parity-check matrix
US8924815B2 (en) 2011-11-18 2014-12-30 Sandisk Enterprise Ip Llc Systems, methods and devices for decoding codewords having multiple parity segments
KR101893145B1 (ko) 2011-12-06 2018-10-05 삼성전자주식회사 메모리 시스템들 및 그것들의 블록 복사 방법들
US8867271B2 (en) * 2012-05-30 2014-10-21 Sandisk Technologies Inc. Threshold voltage adjustment for a select gate transistor in a stacked non-volatile memory device
US8750045B2 (en) 2012-07-27 2014-06-10 Sandisk Technologies Inc. Experience count dependent program algorithm for flash memory
US9699263B1 (en) 2012-08-17 2017-07-04 Sandisk Technologies Llc. Automatic read and write acceleration of data accessed by virtual machines
JP2014059930A (ja) 2012-09-18 2014-04-03 Toshiba Corp 不揮発性半導体記憶装置
US9501398B2 (en) 2012-12-26 2016-11-22 Sandisk Technologies Llc Persistent storage device with NVRAM for staging writes
US9239751B1 (en) 2012-12-27 2016-01-19 Sandisk Enterprise Ip Llc Compressing data from multiple reads for error control management in memory systems
US9612948B2 (en) 2012-12-27 2017-04-04 Sandisk Technologies Llc Reads and writes between a contiguous data block and noncontiguous sets of logical address blocks in a persistent storage device
US9454420B1 (en) 2012-12-31 2016-09-27 Sandisk Technologies Llc Method and system of reading threshold voltage equalization
US9003264B1 (en) 2012-12-31 2015-04-07 Sandisk Enterprise Ip Llc Systems, methods, and devices for multi-dimensional flash RAID data protection
US9329928B2 (en) 2013-02-20 2016-05-03 Sandisk Enterprise IP LLC. Bandwidth optimization in a non-volatile memory system
US9214965B2 (en) 2013-02-20 2015-12-15 Sandisk Enterprise Ip Llc Method and system for improving data integrity in non-volatile storage
US9870830B1 (en) 2013-03-14 2018-01-16 Sandisk Technologies Llc Optimal multilevel sensing for reading data from a storage medium
US9136877B1 (en) 2013-03-15 2015-09-15 Sandisk Enterprise Ip Llc Syndrome layered decoding for LDPC codes
US9236886B1 (en) 2013-03-15 2016-01-12 Sandisk Enterprise Ip Llc Universal and reconfigurable QC-LDPC encoder
US9367246B2 (en) 2013-03-15 2016-06-14 Sandisk Technologies Inc. Performance optimization of data transfer for soft information generation
US9009576B1 (en) 2013-03-15 2015-04-14 Sandisk Enterprise Ip Llc Adaptive LLR based on syndrome weight
US9244763B1 (en) 2013-03-15 2016-01-26 Sandisk Enterprise Ip Llc System and method for updating a reading threshold voltage based on symbol transition information
US9092350B1 (en) 2013-03-15 2015-07-28 Sandisk Enterprise Ip Llc Detection and handling of unbalanced errors in interleaved codewords
TWI497509B (zh) * 2013-04-01 2015-08-21 Macronix Int Co Ltd 非揮發性記憶體及其程式化
US10049037B2 (en) 2013-04-05 2018-08-14 Sandisk Enterprise Ip Llc Data management in a storage system
US9170941B2 (en) 2013-04-05 2015-10-27 Sandisk Enterprises IP LLC Data hardening in a storage system
US9159437B2 (en) 2013-06-11 2015-10-13 Sandisk Enterprise IP LLC. Device and method for resolving an LM flag issue
US9043517B1 (en) 2013-07-25 2015-05-26 Sandisk Enterprise Ip Llc Multipass programming in buffers implemented in non-volatile data storage systems
US9384126B1 (en) 2013-07-25 2016-07-05 Sandisk Technologies Inc. Methods and systems to avoid false negative results in bloom filters implemented in non-volatile data storage systems
US9524235B1 (en) 2013-07-25 2016-12-20 Sandisk Technologies Llc Local hash value generation in non-volatile data storage systems
US9639463B1 (en) 2013-08-26 2017-05-02 Sandisk Technologies Llc Heuristic aware garbage collection scheme in storage systems
US9235509B1 (en) 2013-08-26 2016-01-12 Sandisk Enterprise Ip Llc Write amplification reduction by delaying read access to data written during garbage collection
US9442670B2 (en) 2013-09-03 2016-09-13 Sandisk Technologies Llc Method and system for rebalancing data stored in flash memory devices
US9519577B2 (en) 2013-09-03 2016-12-13 Sandisk Technologies Llc Method and system for migrating data between flash memory devices
US9158349B2 (en) 2013-10-04 2015-10-13 Sandisk Enterprise Ip Llc System and method for heat dissipation
US9323637B2 (en) 2013-10-07 2016-04-26 Sandisk Enterprise Ip Llc Power sequencing and data hardening architecture
US9442662B2 (en) 2013-10-18 2016-09-13 Sandisk Technologies Llc Device and method for managing die groups
US9298608B2 (en) 2013-10-18 2016-03-29 Sandisk Enterprise Ip Llc Biasing for wear leveling in storage systems
KR102125559B1 (ko) * 2013-10-28 2020-06-22 삼성전자주식회사 멀티 패스 시뮬레이터에서 캐시 프로파일링 정보를 보정하는 방법 및 이를 위한 장치
US9436831B2 (en) 2013-10-30 2016-09-06 Sandisk Technologies Llc Secure erase in a memory device
US9263156B2 (en) 2013-11-07 2016-02-16 Sandisk Enterprise Ip Llc System and method for adjusting trip points within a storage device
US9244785B2 (en) 2013-11-13 2016-01-26 Sandisk Enterprise Ip Llc Simulated power failure and data hardening
US9152555B2 (en) 2013-11-15 2015-10-06 Sandisk Enterprise IP LLC. Data management with modular erase in a data storage system
US9703816B2 (en) 2013-11-19 2017-07-11 Sandisk Technologies Llc Method and system for forward reference logging in a persistent datastore
US9520197B2 (en) 2013-11-22 2016-12-13 Sandisk Technologies Llc Adaptive erase of a storage device
US9280429B2 (en) 2013-11-27 2016-03-08 Sandisk Enterprise Ip Llc Power fail latching based on monitoring multiple power supply voltages in a storage device
US9122636B2 (en) 2013-11-27 2015-09-01 Sandisk Enterprise Ip Llc Hard power fail architecture
US9520162B2 (en) 2013-11-27 2016-12-13 Sandisk Technologies Llc DIMM device controller supervisor
US9582058B2 (en) 2013-11-29 2017-02-28 Sandisk Technologies Llc Power inrush management of storage devices
US9250676B2 (en) 2013-11-29 2016-02-02 Sandisk Enterprise Ip Llc Power failure architecture and verification
US9092370B2 (en) 2013-12-03 2015-07-28 Sandisk Enterprise Ip Llc Power failure tolerant cryptographic erase
US9235245B2 (en) 2013-12-04 2016-01-12 Sandisk Enterprise Ip Llc Startup performance and power isolation
US9129665B2 (en) 2013-12-17 2015-09-08 Sandisk Enterprise Ip Llc Dynamic brownout adjustment in a storage device
US9549457B2 (en) 2014-02-12 2017-01-17 Sandisk Technologies Llc System and method for redirecting airflow across an electronic assembly
US9497889B2 (en) 2014-02-27 2016-11-15 Sandisk Technologies Llc Heat dissipation for substrate assemblies
US9703636B2 (en) 2014-03-01 2017-07-11 Sandisk Technologies Llc Firmware reversion trigger and control
US9485851B2 (en) 2014-03-14 2016-11-01 Sandisk Technologies Llc Thermal tube assembly structures
US9519319B2 (en) 2014-03-14 2016-12-13 Sandisk Technologies Llc Self-supporting thermal tube structure for electronic assemblies
US9348377B2 (en) 2014-03-14 2016-05-24 Sandisk Enterprise Ip Llc Thermal isolation techniques
US9390814B2 (en) 2014-03-19 2016-07-12 Sandisk Technologies Llc Fault detection and prediction for data storage elements
US9448876B2 (en) 2014-03-19 2016-09-20 Sandisk Technologies Llc Fault detection and prediction in storage devices
US9454448B2 (en) 2014-03-19 2016-09-27 Sandisk Technologies Llc Fault testing in storage devices
US9626399B2 (en) 2014-03-31 2017-04-18 Sandisk Technologies Llc Conditional updates for reducing frequency of data modification operations
US9390021B2 (en) 2014-03-31 2016-07-12 Sandisk Technologies Llc Efficient cache utilization in a tiered data structure
US9626400B2 (en) 2014-03-31 2017-04-18 Sandisk Technologies Llc Compaction of information in tiered data structure
US9697267B2 (en) 2014-04-03 2017-07-04 Sandisk Technologies Llc Methods and systems for performing efficient snapshots in tiered data structures
US9093160B1 (en) 2014-05-30 2015-07-28 Sandisk Technologies Inc. Methods and systems for staggered memory operations
US9703491B2 (en) 2014-05-30 2017-07-11 Sandisk Technologies Llc Using history of unaligned writes to cache data and avoid read-modify-writes in a non-volatile storage device
US8891303B1 (en) 2014-05-30 2014-11-18 Sandisk Technologies Inc. Method and system for dynamic word line based configuration of a three-dimensional memory device
US10656840B2 (en) 2014-05-30 2020-05-19 Sandisk Technologies Llc Real-time I/O pattern recognition to enhance performance and endurance of a storage device
US10114557B2 (en) 2014-05-30 2018-10-30 Sandisk Technologies Llc Identification of hot regions to enhance performance and endurance of a non-volatile storage device
US9070481B1 (en) 2014-05-30 2015-06-30 Sandisk Technologies Inc. Internal current measurement for age measurements
US10372613B2 (en) 2014-05-30 2019-08-06 Sandisk Technologies Llc Using sub-region I/O history to cache repeatedly accessed sub-regions in a non-volatile storage device
US9645749B2 (en) 2014-05-30 2017-05-09 Sandisk Technologies Llc Method and system for recharacterizing the storage density of a memory device or a portion thereof
US10656842B2 (en) 2014-05-30 2020-05-19 Sandisk Technologies Llc Using history of I/O sizes and I/O sequences to trigger coalesced writes in a non-volatile storage device
US10162748B2 (en) 2014-05-30 2018-12-25 Sandisk Technologies Llc Prioritizing garbage collection and block allocation based on I/O history for logical address regions
US10146448B2 (en) 2014-05-30 2018-12-04 Sandisk Technologies Llc Using history of I/O sequences to trigger cached read ahead in a non-volatile storage device
US9230664B2 (en) 2014-06-06 2016-01-05 Kabushiki Kaisha Toshiba Nonvolatile memory and data writing method
US9652381B2 (en) 2014-06-19 2017-05-16 Sandisk Technologies Llc Sub-block garbage collection
US9971647B2 (en) * 2014-07-31 2018-05-15 Winbond Electronics Corporation Apparatus and method for programming ECC-enabled NAND flash memory
US9443601B2 (en) 2014-09-08 2016-09-13 Sandisk Technologies Llc Holdup capacitor energy harvesting
JP2016062624A (ja) 2014-09-17 2016-04-25 株式会社東芝 半導体記憶装置
US9460780B2 (en) * 2015-01-20 2016-10-04 Sandisk Technologies Llc Initialization techniques for multi-level memory cells using multi-pass programming
US9576665B2 (en) 2015-03-12 2017-02-21 Kabushiki Kaisha Toshiba Semiconductor memory device and memory system
CN111679787B (zh) 2016-04-27 2023-07-18 慧荣科技股份有限公司 闪存装置、闪存控制器及闪存存储管理方法
US10019314B2 (en) 2016-04-27 2018-07-10 Silicon Motion Inc. Flash memory apparatus and storage management method for flash memory
CN112463433B (zh) * 2016-04-27 2024-03-29 慧荣科技股份有限公司 存取闪存模块的方法及相关的闪存控制器与记忆装置
US10614886B2 (en) 2017-09-22 2020-04-07 Samsung Electronics Co., Ltd. Nonvolatile memory device and a method of programming the nonvolatile memory device
US10446244B1 (en) * 2018-04-09 2019-10-15 Sandisk Technologies Llc Adjusting voltage on adjacent word line during verify of memory cells on selected word line in multi-pass programming
US10643721B2 (en) 2018-06-21 2020-05-05 Sandisk Technologies Llc Interleaved program and verify in non-volatile memory
KR20200071955A (ko) 2018-12-12 2020-06-22 삼성전자주식회사 비휘발성 메모리 장치의 동작 방법, 스토리지 장치의 동작 방법 및 스토리지 장치
US11257552B2 (en) 2019-02-21 2022-02-22 Macronix International Co., Ltd. Programming a memory device
EP3909049A4 (en) 2019-05-17 2022-08-24 Yangtze Memory Technologies Co., Ltd. DATA BUFFERING OPERATION OF A THREE-DIMENSIONAL STORAGE DEVICE WITH STATIC RAM ACCESS MEMORY
US11036582B2 (en) 2019-09-27 2021-06-15 Western Digital Technologies, Inc. Uncorrectable error correction code (UECC) recovery time improvement
JP7360478B2 (ja) * 2019-10-18 2023-10-12 長江存儲科技有限責任公司 メモリデバイスおよび方法
US10984867B1 (en) 2019-12-23 2021-04-20 SanDiskTechnologies LLC Direct look ahead mode for memory apparatus programmed with reverse order programming
US11282580B2 (en) * 2020-05-29 2022-03-22 Western Digital Technologies, Inc. Data storage device with foggy-fine program sequence for reducing neighbor wordline interference
KR20220067419A (ko) * 2020-11-17 2022-05-24 삼성전자주식회사 메모리 장치, 메모리 시스템 및 이들의 동작 방법
CN112599157B (zh) * 2020-12-17 2022-05-27 长江存储科技有限责任公司 三维存储器及其编程方法
US11462265B2 (en) * 2020-12-18 2022-10-04 Micron Technology, Inc. Reading memory cells coarsely programmed via interleaved two-pass data programming techniques
US11335407B1 (en) 2020-12-18 2022-05-17 Micron Technology, Inc. One-ladder read of memory cells coarsely programmed via interleaved two-pass data programming techniques
US11430526B2 (en) * 2020-12-18 2022-08-30 Micron Technology, Inc. Interleaved two-pass data programming techniques with reduced write amplification
US11456038B2 (en) 2020-12-18 2022-09-27 Micron Technology, Inc. Simplified operations to read memory cells coarsely programmed via interleaved two-pass data programming techniques
WO2022204852A1 (en) * 2021-03-29 2022-10-06 Yangtze Memory Technologies Co., Ltd. Negative gate stress operation in multi-pass programming and memory device thereof
US11556416B2 (en) 2021-05-05 2023-01-17 Apple Inc. Controlling memory readout reliability and throughput by adjusting distance between read thresholds
CN113646843B (zh) 2021-06-25 2023-12-15 长江存储科技有限责任公司 存储装置及其多遍编程操作
US11847342B2 (en) 2021-07-28 2023-12-19 Apple Inc. Efficient transfer of hard data and confidence levels in reading a nonvolatile memory
CN114400035A (zh) * 2021-12-02 2022-04-26 长江存储科技有限责任公司 存储器的编程方法、存储器及存储系统
US20240062840A1 (en) * 2022-08-16 2024-02-22 Micron Technology, Inc. Read verification cadence and timing in memory devices
US11875043B1 (en) * 2022-08-29 2024-01-16 Sandisk Technologies Llc Loop dependent word line ramp start time for program verify of multi-level NAND memory

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100338775C (zh) * 2001-12-27 2007-09-19 株式会社东芝 在单个存储单元中存储多值数据的非易失性半导体存储器

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6571361B1 (en) 1995-09-29 2003-05-27 Kabushiki Kaisha Toshiba Encoder and decoder
JP3210259B2 (ja) * 1996-04-19 2001-09-17 株式会社東芝 半導体記憶装置及び記憶システム
US5768192A (en) 1996-07-23 1998-06-16 Saifun Semiconductors, Ltd. Non-volatile semiconductor memory cell utilizing asymmetrical charge trapping
US6768165B1 (en) 1997-08-01 2004-07-27 Saifun Semiconductors Ltd. Two bit non-volatile electrically erasable and programmable semiconductor memory cell utilizing asymmetrical charge trapping
JP2001093288A (ja) * 1999-09-20 2001-04-06 Toshiba Corp 不揮発性半導体記憶装置
ITRM20020369A1 (it) 2002-07-09 2004-01-09 Micron Technology Inc Architettura a burst per memoria a doppio bus.
US7327619B2 (en) 2002-09-24 2008-02-05 Sandisk Corporation Reference sense amplifier for non-volatile memory
US7196931B2 (en) 2002-09-24 2007-03-27 Sandisk Corporation Non-volatile memory and method with reduced source line bias errors
US7046568B2 (en) 2002-09-24 2006-05-16 Sandisk Corporation Memory sensing circuit and method for low voltage operation
US6859397B2 (en) 2003-03-05 2005-02-22 Sandisk Corporation Source side self boosting technique for non-volatile memory
US7020017B2 (en) * 2004-04-06 2006-03-28 Sandisk Corporation Variable programming of non-volatile memory
US7057939B2 (en) 2004-04-23 2006-06-06 Sandisk Corporation Non-volatile memory and control with improved partial page program capability
JP2006031871A (ja) * 2004-07-20 2006-02-02 Toshiba Corp 半導体記憶装置
JP4410188B2 (ja) * 2004-11-12 2010-02-03 株式会社東芝 半導体記憶装置のデータ書き込み方法
US20060140007A1 (en) 2004-12-29 2006-06-29 Raul-Adrian Cernea Non-volatile memory and method with shared processing for an aggregate of read/write circuits
EP1686592A3 (en) * 2005-01-19 2007-04-25 Saifun Semiconductors Ltd. Partial erase verify
US7196928B2 (en) 2005-04-05 2007-03-27 Sandisk Corporation Compensating for coupling during read operations of non-volatile memory
US7307887B2 (en) * 2005-12-29 2007-12-11 Sandisk Corporation Continued verification in non-volatile memory write operations
US7224614B1 (en) 2005-12-29 2007-05-29 Sandisk Corporation Methods for improved program-verify operations in non-volatile memories
US7330373B2 (en) 2006-03-28 2008-02-12 Sandisk Corporation Program time adjustment as function of program voltage for improved programming speed in memory system
US7443729B2 (en) 2006-07-20 2008-10-28 Sandisk Corporation System that compensates for coupling based on sensing a neighbor using coupling
US7885119B2 (en) 2006-07-20 2011-02-08 Sandisk Corporation Compensating for coupling during programming
US7522454B2 (en) 2006-07-20 2009-04-21 Sandisk Corporation Compensating for coupling based on sensing a neighbor using coupling
US7606966B2 (en) 2006-09-08 2009-10-20 Sandisk Corporation Methods in a pseudo random and command driven bit compensation for the cycling effects in flash memory
US7616500B2 (en) 2007-02-20 2009-11-10 Sandisk Corporation Non-volatile storage apparatus with multiple pass write sequence
JP4435200B2 (ja) 2007-04-03 2010-03-17 株式会社東芝 半導体記憶装置のデータ書き込み方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100338775C (zh) * 2001-12-27 2007-09-19 株式会社东芝 在单个存储单元中存储多值数据的非易失性半导体存储器

Also Published As

Publication number Publication date
KR101632367B1 (ko) 2016-06-21
JP5467107B2 (ja) 2014-04-09
KR20110056408A (ko) 2011-05-27
TW201017672A (en) 2010-05-01
US20100061151A1 (en) 2010-03-11
US8130552B2 (en) 2012-03-06
WO2010030692A3 (en) 2010-06-10
EP2332147A2 (en) 2011-06-15
JP2012502408A (ja) 2012-01-26
WO2010030692A2 (en) 2010-03-18
EP2332147B1 (en) 2014-08-06
CN102150216A (zh) 2011-08-10

Similar Documents

Publication Publication Date Title
CN102150216B (zh) 具有降低的数据存储要求的存储器的多遍编程
CN102138182B (zh) 编程并选择性地擦除非易失性存储器
CN102292775B (zh) 存储器的适应性擦除和软编程
CN101584006B (zh) 非易失性存储器中的经分割的软编程
CN102549673B (zh) 用较小通道电压干扰和浮栅极到控制栅极泄漏对存储器编程
CN102037516B (zh) 用于增加非易失性存储器中的沟道升压的增强的位线预充电方案
CN102138183B (zh) 对非易失性存储器的选择性擦除操作
CN101584005B (zh) 非易失性存储器中的经分割擦除及擦除验证
CN101405813B (zh) 用于对非易失性存储器进行非实时重新编程以实现较紧密的阈值电压分布的方法
CN102177554B (zh) 补偿在非易失性存储器中的读操作期间的耦合
CN102132355B (zh) 校正过度编程非易失性存储器
CN102160118B (zh) 非易失性存储器阵列的最后字线的数据保持的改进
CN102099867B (zh) 非易失性存储器的擦除-验证处理
CN101405812B (zh) 编程不同大小的容限及在选择状态下使用补偿进行感测以改进非易失性存储器中的读取操作
CN101006519B (zh) 非易失性存储器系统及其编程的方法
CN102160119B (zh) 非易失性存储器中感测期间的基于数据状态的温度补偿
CN102138181B (zh) 非易失性存储器以及其操作方法
CN102187399B (zh) 使用字线耦合的用于存储器的多趟次编程
CN102306501B (zh) 编程不同大小的容限及在选择状态下使用补偿进行感测以改进非易失性存储器中的读取操作
CN101796591B (zh) 使用针对改进感测的不同参考电平的非易失性存储器中的粗略/精细编程验证
CN102906820A (zh) 用同步耦合编程非易失性存储器
CN101689400A (zh) 基于阈值电压分布的动态检验
CN101366091A (zh) 使用智能验证的多状态非易失性存储器的编程方法
CN101802925B (zh) 控制门线架构
CN101595527A (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
ASS Succession or assignment of patent right

Owner name: SANDISK TECHNOLOGY CO., LTD.

Free format text: FORMER OWNER: SANDISK CORP.

Effective date: 20120625

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

Effective date of registration: 20120625

Address after: The United States of America Texas

Applicant after: Sandisk Corp.

Address before: American California

Applicant before: Sandisk Corp.

GR01 Patent grant
GR01 Patent grant
C56 Change in the name or address of the patentee
CP01 Change in the name or title of a patent holder

Address after: texas

Patentee after: DELPHI INT OPERATIONS LUX SRL

Address before: texas

Patentee before: Sandisk Corp.