CN103797540B - 采用被分解为多遍的阶梯波形的存储器编程方法 - Google Patents

采用被分解为多遍的阶梯波形的存储器编程方法 Download PDF

Info

Publication number
CN103797540B
CN103797540B CN201280045361.7A CN201280045361A CN103797540B CN 103797540 B CN103797540 B CN 103797540B CN 201280045361 A CN201280045361 A CN 201280045361A CN 103797540 B CN103797540 B CN 103797540B
Authority
CN
China
Prior art keywords
subset
wordline
level
unit
checking
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
CN201280045361.7A
Other languages
English (en)
Other versions
CN103797540A (zh
Inventor
李艳
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.)
SanDisk Technologies LLC
Original Assignee
SanDisk Technologies LLC
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 Technologies LLC filed Critical SanDisk Technologies LLC
Publication of CN103797540A publication Critical patent/CN103797540A/zh
Application granted granted Critical
Publication of CN103797540B publication Critical patent/CN103797540B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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
    • 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

Landscapes

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

Abstract

给出了适合于非易失性存储器器件的编程算法,其中通常的阶梯类型的波形被分解为多遍。使用相同的脉冲,但是它们的顺序不同,被分开为每隔N个脉冲的子集使得存在N个编程脉冲。例如,在四遍版本中,第一遍将顺序地具有阶梯的脉冲(1,5,9);第二遍将具有脉冲(2,6,10);对于第三和第四遍类似。通过使用大的步长大小用于逐步增加编程电压VPGM、预验证以及对不同遍的偏移的验证余量,通过多遍可以获得窄的分布。而且,在补充的特征集中,可以进行快速遍写入(QPW)而没有通过使用共享的验证电平进行QPW验证的缺点。

Description

采用被分解为多遍的阶梯波形的存储器编程方法
技术领域
本发明大体涉及诸如电可擦除可编程只读存储器(EEPROM)和快闪EEPROM的非易失性半导体存储器,具体地涉及以增加的准确性写数据的编程算法。
背景技术
能够非易失性地存储电荷的固态存储器、特别是被封装为小型规格卡的EEPROM和快闪EEPROM形式的固态存储器最近成为各种移动和手持设备、特别是信息装置和消费电子产品中的存储选择。不同于也是固态存储器的RAM(随机存取存储器),闪存是非易失性的,并且即使在切断电源之后仍保持它所存储的数据。而且,不像ROM(只读存储器),闪存类似于盘存储设备而可重写。尽管成本更高,但是闪存正被更多地用于大容量存储应用中。基于诸如硬盘驱动器和软盘的旋转磁介质的传统大容量存储不适合于移动和手持环境。这是因为盘驱动器倾向于体积大,易出现机械故障,并且具有高等待时间和高功率要求。这些不希望的属性使得基于盘的存储在大部分移动和便携式应用中不实用。另一方面,嵌入式和可移动卡形式这两种的闪存由于其小尺寸、低功耗、高速和高可靠性特征而理想地适合于移动和手持环境。
EEPROM和电可擦除可编程只读存储器(EPROM)是可被擦除并且使新数据被写到或“编程”到其存储器单元中的非易失性存储器。在场效应晶体管结构中,两者利用在源极和漏极区域之间的、位于半导体衬底中的沟道区之上的浮置(未连接的)导电栅极。然后在浮置栅极之上提供控制栅极。由被保留在浮置栅极上的电荷量来控制晶体管的阈值电压特性。也就是,对于浮置栅极上给定水平的电荷,存在必须在“导通”晶体管之前施加到控制栅极以允许在其源极和漏极区之间导电的相应电压(阈值)。具体地,诸如快闪EEPROM的闪存允许同时擦除整个块的存储器单元。
浮置栅极可以保持一个范围的电荷,因此可以被编程到在阈值电压窗内的任何阈值电压电平。由器件的最小和最大阈值电平来分界(delimit)阈值电压窗的大小,该最小和最大阈值电平又对应于可以被编程到浮置栅极上的电荷的范围。阈值窗通常取决于存储器器件的特性、工作条件和历史。在该窗内的每个不同的可分辨的阈值电压电平范围原则上可以用于指定单元的明确的存储器状态。当阈值电压被划分为两个不同的区域时,每个存储器单元将能够存储一位数据。类似地,当阈值电压窗被划分为多于两个不同的区域时,每个存储器单元将能够存储多于一位数据。
在通常的两状态EEPROM单元中,建立至少一个电流分界点水平以便将导电窗划分为两个区域。当通过施加预定的固定电压来读取单元时,其源极/漏极电流通过与分界点水平(或参考电流IREF)比较而被解析为存储器状态。如果读取的电流高于分界点水平,则该单元被确定为处于一个逻辑状态(例如“0”状态)。另一方面,如果该电流小于分界点水平,则该单元被确定为处于另一逻辑状态(例如“1”状态)。因此,这样的两状态单元存储一位逻辑信息。可以外部地可编程的参考电流源通常被提供为存储器系统的部分以产生分界点水平电流。
为了增加存储器容量,随着半导体技术状态的进步,正以越来越高的密度制造快闪EEPROM器件。增加存储容量的另一方法是使得每个存储器单元存储多于两个状态。
对于多状态或者多级EEPROM存储器单元,通过多于一个分界点将导电窗划分为多于两个区域,使得每个单元能够存储多于一位数据。给定的EEPROM阵列可以存储的信息因此随着每个单元可以存储的状态的数量而增加。已经在美国专利第5,172,338中描述了具有多状态或者多级存储器单元的EEPROM或快闪EEPROM。
通常通过两种机制之一来将充当存储器单元的晶体管编程到“已编程”状态。在“热电子注入”中,施加到漏极的高电压加速了穿过衬底沟道区的电子。同时,施加到控制栅极的高电压拉动热电子经过薄栅极电介质到浮置栅极上。在“隧穿注入”中,相对于衬底,高电压被施加到控制栅极。以此方式,将电子从衬底拉到中间的(intervening)浮置栅极。
可以通过多种机制来擦除存储器器件。对于EPROM,可通过紫外线辐射从浮置栅极移除电荷而批量擦除存储器。对于EEPROM,可通过相对于控制栅极向衬底施加高电压以便诱导浮置栅极中的电子遂穿过薄氧化物到衬底沟道区(即,Fowler-Nordheim隧穿)而电擦除存储器单元。通常,EEPROM可逐字节擦除。对于快闪EEPROM,该存储器可一次性全部电擦除或一次一个或多个块地电擦除,其中块可以由存储器的512字节或更多构成。
存储器器件通常包括可以被安装在卡上的一个或多个存储器芯片。每个存储器芯片包括由诸如解码器和擦除、写和读电路的外围电路支持的存储器单元的阵列。更复杂的存储器器件还与进行智能和更高级的存储器操作和接口的外部存储器控制器一起工作。
存在现今正使用的许多商业上成功的非易失性固态存储器器件。这些存储器器件可以是快闪EEPROM,或可以使用其他类型的非易失性存储器单元。在美国专利第5,070,032、5,095,344、5,315,541、5,343,063和5,661,053、5,313,421和6,222,762号中给出了闪存和系统及其制造方法的例子。具体地,在美国专利第5,570,315、5,903,495、6,046,935号中描述了具有NAND串结构的闪存器件。还由具有用于存储电荷的介电层的存储器单元制造非易失性存储器器件。取代先前描述的导电浮置栅极元件,使用介电层。由Eitan等人的“NROM:A Novel Localized Trapping,2-Bit Nonvolatile Memory Cell”,IEEE ElectronDevice Letters,Vol.21,No.11,2000年11月,543-545页描述了利用介电存储元件的这种存储器器件。ONO介电层延伸穿过在源极和漏极扩散之间的沟道。用于一个数据位的电荷被定位在与漏极相邻的介电层中,且用于另一数据位的电荷被定位在与源极相邻的介电层中。例如,美国专利第5,768,192和6,011,725号公开了具有夹在两个二氧化硅层之间的俘获(trapping)电介质的非易失性存储器单元。通过分别读取该电介质内的空间上分离的电荷存储区域的二进制状态来实现多状态数据存储。
为了改进读取和编程性能,并行读取或编程多个电荷存储元件或存储器晶体管。因此,一起读取或编程一“页”存储器元件。在现有的存储器架构中,行通常包含几个交织的页,或者其可以构成一页。一页的所有存储器元件将被一起读取或编程。
为了准确地存储数据,需要准确地写入。为了以更大的密度增加数据,正使得存储器器件每单元存储多位数据。还存在由于氧化物界面俘获引起的缩放将使得编程更具噪声以及编程/擦除将饱和的趋势,使得要求所有数据状态被包含在阈值电压的小的窗内。这两个趋势要求以更紧凑的分布写入数据。而且,由于正以更小的规模制造电路以便也增加存储密度,更小的器件引入或放大了影响写入准确性的现象。
因此,存在对于高容量和高性能非易失性存储器的普遍需要。具体地,需要使得高性能非易失性存储器具有改进的编程性能,其中上述的缺点被最小化。
发明内容
根据第一方面集,给出了编程非易失性存储器器件的方法。该方法包括:向第一字线施加形成增加幅度的阶梯的脉冲;以及在向第一字线施加每个脉冲之后,对沿着该第一字线的存储器单元进行验证操作。向第一字线施加脉冲系列作为所述阶梯的一系列多个的N个子集,该系列至少包括第一子集和第二子集。该第一子集包括所述阶梯的按照增加幅度的顺序依次施加的第一脉冲以及每个第N个后续脉冲,而该第二子集包括所述阶梯的按照增加幅度的顺序依次施加的第二脉冲以及每个第N个后续脉冲,并且在施加第一子集之后施加第二子集。该方法还包括响应于在与单元目标数据状态对应的子集的验证电平处的验证,锁定沿着第一字线的所述存储器单元以便不被进一步编程,其中每个子集使用不同验证电平集进行验证操作;以及在施加第一子集之后并且在施加第二子集之前,解锁沿着所述第一字线的存储器单元以允许进一步编程。
本申请的其他方面给出了将多个存储器单元的每个写到多个目标数据状态之一的方法。该方法包括向第一字线施加一系列脉冲,以及在向第一字线施加每个脉冲之后,对于沿着第一字线的存储器单元进行验证操作。该验证操作包括对于每个目标数据状态的初始验证电平和锁定验证电平,其中对于每个目标数据状态,该初始验证电平低于相应的锁定验证电平。响应于在对应于单元的初始验证电平处的验证,分别更改存储器单元上的偏压以更慢地编程,以及响应于在对应于单元的锁定验证电平处的验证,分别锁定沿着第一字线的存储器单元不被进一步编程。多状态中的第一状态的初始验证电平与多状态中的第二状态的锁定验证电平相同,多状态中的第一状态不同于多状态中的第二状态。
本发明的各个方面、优点、特征和实施例被包括在其示例例子的以下描述中,该描述应该结合附图来考虑。在此参考的所有专利、专利申请、论文、其他出版物、文档和事物因此为了所有目的通过此参考以其全部被并于此。至于在任意所并入的出版物、文档或事物以及本申请之间的术语的定义或使用的任何不一致或者矛盾之处,应以本申请的定义或使用为准。
附图说明
图1示意性例示其中可以实现本发明的非易失性存储器芯片的功能框图。
图2示意性例示非易失性存储器单元。
图3例示对于浮置栅极在任何一个时间可以选择性地存储的四个不同的电荷Q1-Q4的源极漏极电流ID和控制栅极电压VCG之间的关系。
图4例示存储器单元的NOR阵列的例子。
图5A示意性例示被组织为NAND串的存储器单元串。
图5B例示由诸如图5A所示的NAND串50构成的存储器单元的NAND阵列200的例子。
图6例示图1所示的包含跨过存储器单元的阵列的一堆p个感测模块的读/写电路270A和270B。
图7示意性例示图6所示的感测模块的优选组织。
图8更详细地例示图7所示的读/写堆叠。
图9(0)-9(2)例示编程一群4-状态存储器单元的例子。
图10(0)-10(2)例示编程一群8-状态存储器单元的例子。
图11例示将4-状态存储器单元编程到目标存储器状态的传统技术。
图12例示将阶梯分开为子集。
图13例示锁定分布的存储器单元的处理。
图14示出不同遍的验证电平的关系。
图15和16分别示出第一遍的脉冲和每个脉冲的锁定。
图17和18分别示出第二遍的脉冲和每个脉冲的锁定。
图19和20分别示出第三遍的脉冲和每个脉冲的锁定。
图21和22分别示出第四遍的脉冲和每个脉冲的锁定。
图23示出当第一遍是模糊编程操作时的验证电平的关系。
图24所示的是快速遍写入的例子。
图25-27示出锁存器分配的例子。
图28示出当使用快速遍写入时的验证电平的关系。
图29例示共享验证电平的例子。
具体实施方式
存储器系统
图1到图11例示其中可以实现本发明的各个方面的示例存储器系统。
图1示意性例示其中可以实现本发明的非易失性存储器芯片的功能块。存储器芯片100包括存储器单元的二维阵列200、控制电路210和诸如解码器、读/写电路和复用器的外围电路。
存储器阵列200可由字线经由行解码器230(分割为230A、230B)以及由位线经由列解码器260(分割为260A、260B)寻址(还参见图4和图5)。读/写电路270(分割为270A、270B)允许一页存储器单元被并行读取或编程。数据I/O总线231耦接到读/写电路270。
在一个优选实施例中,页由共享相同字线的连续行的存储器单元构成。在另一实施例中,在一行存储器单元被划分为多页的情况下,提供块复用器250(分割为250A和250B)以将读/写电路270复用到各个页。例如,分别由存储器单元的奇数列和偶数列形成的两页被复用到读/写电路。
图1例示其中各种外围电力对存储器阵列200的访问在该阵列的相对侧以对称方式实现以便每侧的访问线和电路的密度降低一半的优选布置。因此,行解码器被分割为行解码器230A和230B,并且列解码器被分割为列解码器260A和260B。在一行存储器单元被划分为多页的实施例中,页复用器250被分割为页复用器250A和250B。类似地,读/写电路270被分割为从阵列200的底部连接到位线的读/写电路270A以及从阵列200的顶部连接到位线的读/写电路270B。以此方式,读/写模块的密度以及因此的感测模块380的密度实质上降低一半。
控制电路110是与读/写电路270协作以对存储器阵列200进行存储器操作的芯片上控制器。控制电路110通常包括状态机112以及诸如芯片上地址解码器和电力控制模块(未明确示出)的其他电路。状态机112提供存储器操作的芯片级控制。控制电路经由外部存储器控制器与主机通信。
存储器阵列200通常被组织为按行和列布置的并且可由字线和位线寻址的存储器单元的二维阵列。该阵列可以根据NOR型或者NAND型架构而形成。
图2示意性例示非易失性存储器单元。存储器单元10可以由具有诸如浮置栅极或者电介质层的电荷存储单元20的场效应晶体管实现。存储器单元10还包括源极14、漏极16和控制栅极30。
存在许多现今正使用的商业上成功的非易失性固态存储器。这些存储器器件可以采用不同类型的存储器单元,每种类型具有一个或多个电荷存储元件。
典型的非易失性存储器单元包括EEPROM和快闪EEPROM。在美国专利第5,595,924号中给出了EEPROM单元及其制造方法的例子。在美国专利第5,070,032、5,095,344、5,315,541、5,343,063、5,661,053、5,313,421和6,222,762号中给出了快闪EEPROM单元、其在存储器系统中的使用及其制造方法的例子。具体地,在美国专利第5,570,315、5,903,495和6,046,935号中描述了具有NAND单元结构的存储器器件的例子。而且,已经由Eitan等人在“NORM:A Novel Localized Trapping,2-Bit Nonvolatile Memory Cell”,IEEE ElectronDevice Letters,Vol.21,No.11,2000年11月,543-545页中以及在美国专利第5,768,192和6,011,725号中描述了利用介电存储元件的存储器器件的例子。
实际上,通常通过在向控制栅极施加参考电压时感测跨过单元的源极和漏极电极的导电电流来读取该单元的存储器状态。因此,对于在单元的浮置栅极上的每个给定电荷,可以检测关于固定的参考控制栅极电压的相应导电电流。类似地,可编程到浮置栅极上的电荷的范围定义了相应的阈值电压窗或相应的导电电流窗。
或者,取代检测在划分的电流窗之间的导电电流,能够在控制栅极处为在测试下的给定存储器状态设置阈值电压,并检测导电电流是低于还是高于阈值电流。在一个实施方式中,通过检查导电电流经过位线的电容放电的速率来实现相对于阈值电流对导电电流的检测。
图3例示对于在任何一个时间时浮置栅极可以选择性存储的四个不同的电荷Q1-Q4的源极-漏极电流ID和控制栅极电压VCG之间的关系。四个实线的ID相对VCG曲线表示分别对应于四个可能的存储器状态的、可以被编程在存储器单元的浮置栅极上的四个可能的电荷水平。作为例子,一群单元的阈值电压窗范围可以从0.5V到3.5V。通过将阈值窗以每个0.5V的间隔划分为五个区域,可以划界分别表示一个已擦除和六个已编程的状态的七个可能的存储器状态“0”、“1”、“2”、“3”、“4”、“5”、“6”。例如,如果如所示使用2μA的参考电流IREF,则用Q1编程的单元可以被认为处于存储器状态“1”,因为其曲线在由VCG=0.5V和1.0V划界的阈值窗的区域中与IREF相交。类似地,Q4处于存储器状态“5”。
如从以上描述可以看出,使得存储器单元存储的状态越多,其阈值窗划分得越精细。例如,存储器器件可以具有含有范围从-1.5V到5V的阈值窗的存储器单元。这提供了6.5V的最大宽度。如果存储器单元要存储16个状态,则每个状态可以占据阈值窗中的从200mv到300mV。这将要求在编程和读取操作中的更高的精确度以便能够实现要求的分辨率。
图4例示存储器单元的NOR阵列的例子。在存储器阵列200中,每行存储器单元通过其源极14和漏极16以菊链方式连接。该设计有时被称为虚拟接地设计。一行中的单元10使得其控制栅极30连接到诸如字线42的字线。一列中的单元使得其源极和漏极分别连接到诸如位线34和36的所选位线。
图5A示意性例示被组织为NAND串的存储器单元的串。NAND串50包括通过其源极和漏极菊链连接的一系列存储器晶体管M1、M2、……Mn(例如n=4,8,16或更大)。一对选择晶体管S1、S2控制存储器晶体管链分别经由NAND串的源极端54和漏极端56与外部的连接。在存储器阵列中,当源极选择晶体管S1导通时,源极端耦接到源极线(见图5B)。类似地,当漏极选择晶体管S2导通时,NAND串的漏极端耦接到存储器阵列的位线。该链中的每个存储器晶体管10担当存储器单元。其具有用于存储给定量的电荷以便表示意图的存储器状态的电荷存储元件20。每个存储器晶体管的控制栅极30允许对读和写操作的控制。如将从图5B中可见,一行NAND串的相应存储器晶体管的控制栅极30全部连接到相同的字线。类似地,每个选择晶体管S1、S2的控制栅极32提供分别经由其源极端54和漏极端56对NAND串的控制访问。同样,一行NAND串的相应选择晶体管的控制栅极32全部连接到相同的选择线。
当在编程期间读取或验证NAND串内的被寻址的存储器晶体管10时,为其控制栅极30提供适当的电压。同时,NAND串50中的其余未被寻址的存储器晶体管通过施加在其控制栅极上的充分的电压而完全导通。以此方式,从各个存储器晶体管的源极到NAND串的源极端54有效地建立了导电路径,且同样从各个存储器晶体管的漏极到该单元的漏极端56有效地建立了导电路径。在美国专利第5,570,315、5,903,495、6,046,935号中描述了具有这种NAND串结构的存储器器件。
图5B例示由诸如图5A所示的NAND串50构成的存储器单元的NAND阵列200的例子。沿着NAND串的每列,诸如位线36的位线耦接到每个NAND串的漏极端56。沿着每堆NAND串,诸如源极线34的源极线耦接到每个NAND串的源极端54。而且,沿着一排NAND串中的一行存储器单元的控制栅极连接到诸如字线42的字线。沿着一堆NAND串中的一行选择晶体管的控制栅极连接到诸如选择线44的选择线。可以通过在一堆NAND串的字线和选择线上施加适当的电压来寻址该堆NAND串中的整行存储器单元。当NAND串内的存储器晶体管正被读取时,该串中的剩余的存储器晶体管经由其相关的字线而硬导通(turn on hard),以便流经该串的电流实质上依赖于被读取的单元中存储的电荷的水平。
感测电路和技术
图6例示包含跨过存储器单元的阵列的一堆p个感测模块的图1所示的读/写电路270A和270B。并行工作的整堆p个感测模块480允许沿着一行的一块(或一页)p个单元10被并行读取或编程。实质上,感测模块1将感测单元1中的电流I1,感测模块2将感测单元2中的电流I2,……,感测模块p将感测单元p中的电流Ip,等等。从源极线34流出到集合节点CLSRC中并从那里到地的对于页的总单元电流iTOT将是p个单元中所有电流之和。在传统存储器架构中,具有公共字线的一行存储器单元形成两页或多页,其中一页中的存储器单元被并行读取和编程。在一行具有两页的情况下,通过偶数位线访问一页,并通过奇数位线访问另一页。一页的感测电路在任何一个时间与偶数位线或奇数位线耦接。在该情况下,提供页复用器250A和250B以将读/写电路270A和270B分别复用到各个页。
在当前生产的基于56nm技术的芯片中,p>64000并且在43nm 32G位x4的芯片中,p>150000。在优选实施例中,块是一连串(run)的整行单元。这是所谓的“全位线(all bit-line)”架构,其中页由分别与连续的位线耦接的一行连续的存储器单元构成。在另一实施例中,块是行中的单元的子集。例如,单元的子集可以是整行的一半或者整行的四分之一。单元的子集可以是一连串连续的单元或者每隔一个单元,或者每隔预定数量的单元。每个感测模块经由位线耦接到存储器单元,并且包括用于感测存储器单元的导电电流的感测放大器。通常,如果读/写电路分布在存储器阵列的相对侧,则该堆p个感测模块将分布在两组读/写电路270A和270B之间。
图7示意性例示图6所示的感测模块的优选组织。包含p个感测模块的读/写电路270A和270B被分组为一堆读/写堆叠400。
图8更详细地例示图7中所示的读/写堆叠。每个读/写堆叠400并行对一组k条位线进行操作。如果一页具有p=r*k条位线,则将存在r个读/写堆叠400-1、……、400-r。实质上,该架构使得k个感测模块的每个堆叠由公共处理器500来服务以便节省空间。公共处理器500基于位于感测模块480处的以及位于数据锁存器430处的锁存器的当前值以及来自状态机112的控制来计算要存储在那些锁存器中的更新的数据。在2006年6月29日的美国专利申请公开号US-2006-0140007-A1中已经公开了公共处理器的详细描述,其全部公开通过引用合并于此。
并行工作的整堆被划分的读/写堆叠400允许沿着一行的一块(或页)p个单元并行被读取或编程。因此,对于整行单元将存在p个读/写模块。因为每个堆叠服务于k个存储器单元,所以堆中的读/写堆叠的总数由r=p/k给出。例如,如果r时该排中的堆叠的数量,则p=r*k。一个示例的存储器阵列可以具有p=150000,k=8,因此r=18750。
诸如400-1的每个读/写堆叠实质上包含并行服务于一段k个存储器单元的感测模块480-1到480-k的堆叠。页控制器410经由线路411向读/写电路370提供控制和定时信号。页控制器本身经由线路311依赖于存储器控制器310。每个读/写堆叠400之间的通信受互连堆叠总线431影响并且由页控制器410控制。控制线411将来自页控制器410的控制和时钟信号提供给读/写堆叠400-1的组件。
在优选布置中,堆叠总线被划分为用于公共处理器500和感测模块的堆叠480之间的通信的SA总线422以及用于处理器和数据锁存器的堆叠430之间的通信的D总线423。
数据锁存器的堆叠430包括数据锁存器430-1到430-k,与该堆叠相关联的每个存储器单元一个数据锁存器。I/O模块440使得数据锁存器能够经由I/O总线231与外部交换数据。
公共处理器还包括用于输出指示存储器操作的状态的诸如错误条件的状态信号的输出507。状态信号用于驱动在线或配置中联系于标记总线509的n-晶体管550的栅极。标记总线优选由控制器310预充电并且当状态信号由任意一个读/写堆叠赋活(assert)时被下拉。
多状态存储器划分的例子
已经结合图3描述了其中每个存储器单元存储多位数据的非易失性存储器。具体例子是由场效应晶体管的阵列形成的存储器,每个场效应晶体管具有在其沟道区和其控制栅极之间的电荷存储层。电荷存储层或单元可以存储一个范围的电荷,引起对于每个场效应晶体管的一个范围的阈值电压。可能的阈值电压的范围跨度是阈值窗。当阈值窗被划分为阈值电压的多个子范围或者区域时,每个可分辨的区域用于表示存储器单元的不同存储器状态。可以通过一个或多个二进制位来编码多个存储器状态。例如,被划分为四个区域的存储器单元可以支持可以被编码为2位数据的四个状态。类似地,被划分为八个区域的存储器单元可以支持可以被编码为3位数据的八个存储器状态,等等。
图9(0)-9(2)例示编程一群4状态存储器单元的例子。图9(0)例示可编程为分别表示存储器状态“0”、“1”、“2”和“3”的四个不同的阈值电压分布的该群存储器单元。图9(1)例示对于被擦除的存储器的“被擦除”阈值电压的初始分布。图9(2)例示在许多存储器单元已经被编程之后存储器的例子。实质上,单元初始具有“被擦除”阈值电压并且编程会将其移动到更高的值而进入由DV1、DV2和DV3划界的三个区域之一。以此方式,每个存储器单元可以被编程到三个被编程状态“1”、“2”和“3”之一或者在“被擦除”状态中保持未被编程。随着存储器得到更多编程,如图9(1)所示的“被擦除”状态的初始分布将变得更窄并且被擦除状态由“0”状态表示。
可以使用具有低位和高位的2-位码来表示四个存储器状态的每个。例如,“0”、“1”、“2”和“3”状态分别由“11”、“01”、“00”和“10”表示。可以通过在“全序列”模式下感测而从存储器读取2-位数据,在该“全序列”模式中,通过分别在三个子遍中相对于读取划界阈值DV1、DV2和DV3进行感测来一起感测两位。
图10(0)-10(2)例示编程一群8-状态存储器单元的例子。图10(0)例示可编程为分别表示存储器状态“0”-“7”的八个不同的阈值电压分布的该群存储器单元。图10(1)例示对于被擦除存储器的“被擦除”阈值电压的初始分布。图10(2)例示在许多存储器单元已经被编程之后的存储器的例子。实质上,单元初始具有“被擦除”阈值电压并且编程会将其移动到更高的值而进入由DV1-DV7划界的三个区域之一。以此方式,每个存储器单元可以被编程到七个被编程状态“1”-“7”之一或者在“被擦除”状态中保持未被编程。随着存储器得到更多编程,如图10(1)所示的“被擦除”状态的初始分布将变得更窄并且被擦除状态由“0”状态表示。
可以使用具有低位和高位的3-位码来表示四个存储器状态的每个。例如,“0”、“1”、“2”、“3”、“4”、“5”、“6”和“7”状态分别由“111”、“011”、“001”、“101”、“100”、“000”、“010”和“110”表示。可以通过在“全序列”模式中进行感测而从存储器读取3-位数据,在该“全序列”模式中,通过分别在七个子遍中相对于读取划界阈值V1-V7进行感测来一起感测三位。
页或字线编程和验证
对页编程的一种方法是全序列编程。该页的所有单元初始处于被擦除状态。因此,该页的所有单元从被擦除状态朝向其目标状态被并行编程。以“1”状态作为目标状态的那些存储器单元在一旦其已经被编程到“1”状态时就将被禁止进一步编程,而具有目标状态“2”或更高的其他存储器单元将经历进一步编程。最终,以“2”作为目标状态的存储器单元也将被锁定不进一步编程。类似地,随着逐步的编程脉冲,具有目标状态“3”-“7”的单元达到并被锁定。
图11例示了用于将4-状态存储器单元编程到目标存储器状态的传统技术。编程电路通常向所选字线施加一系列编程脉冲。以此方式,控制栅极耦接到该字线的一页存储器单元一起被编程。所使用的编程脉冲串可以具有增加的时段或幅度以便抵消被编程到存储器单元的电荷存储单元中的累积电子。编程电压VPGM被施加到在编程下的页的字线。编程电压VPGM是从初始电压水平VPGM0开始的阶梯波形形式的一系列编程电压脉冲。在编程下的页的每个单元经历此系列的编程电压脉冲,在每个脉冲处尝试向该单元的电荷存储元件添加递增的电荷。在编程脉冲之间,单元被读回以确定其阈值电压。读回处理可能涉及一个或多个感测操作。当单元的阈值电压已经被验证为落入与目标状态对应的阈值电压区域内时,对该单元的编程停止。无论何时页的存储器单元已被编程到其目标状态时,其被禁止编程,而其他单元继续经历编程,直到该页的所有单元都已被编程-验证过。
分解为多遍的阶梯编程波形
此部分的技术目标在于减少可能影响存储器器件的编程准确性的各种现象,特别是在小器件规模处出现的诸如电子去俘获(de-trapping)和Nakamura效应的那些现象,在这些现象中一个位线(不管其编程被使能还是禁止)上的电平显著影响相邻位线上的编程。这通过将一个编程序列变换为多遍编程而不降低性能来完成。通过使用用于逐步增加编程电压VPGM的大的步长大小、预验证和偏移的验证余量,通过多遍可以获得窄的分布。而且,如以下进一步讨论的,可以完成快速遍写入(QPW)而没有进行QPW验证的缺点。
随着在尺寸方面的技术收缩,存在变的相关的许多新的现象。一个现象是电子去俘获,其中浮置栅极上的电极将被去俘获并丢失。因为随着技术收缩到数十纳米的规模,每个电子都将考虑,所以去俘获将导致阈值电压的显著移动。去俘获单元可以被重新编程以帮助确保这些单元将具有足够的阈值电压(Vth)值。此部分的多边操作可以帮助重新编程被去俘获的单元。(可以在美国专利号6,850,441以及提交于2011年3月25日的美国专利申请号13/072,387中发现关于电子去俘获以及应对此问题的另外的技术的、对在此给出的进行补充的更多细节)。
当施加高的VPGM值时,编程干扰机制也将影响大多数较低状态。多遍还将帮助照顾到较低状态编程干扰问题,因为较低状态验证可以被偏移以补偿编程干扰。
由于当相邻的信道升高时在编程禁止期间该信道将耦合相邻的浮置栅极(Nakamura效应),这将导致在相邻者锁定期间额外的Vth偏移。通过使用多遍编程,在第一遍,相对大数量的单元将同时锁定,导致大量Nakamura效应加宽Vth分布。由于预验证,第二遍将使得一些单元被禁止开始。随着更多遍进行,在锁定的相同状态中的单元的数量将越来越少。最后遍将具有最少数量的单元编程,大多数单元被禁止。因此,Nakamura效应应该被抑制。
图12示出与图11类似但是在脉冲之间具有未被明确示出的验证的使用VPGM阶梯的通常的编程序列。在此示出编号1-16的16个脉冲来完成编程某个状态。在此字母A-D对应于阶梯将被分离为的子集。将单元编程到每个数据状态的窄的分布的处理是每次将自然分布推动一个步长的处理。一些位一通过验证,则这些位将被锁定并且不再发生编程。自然分布逐渐移动以被锁定到窄的分布中。
阶梯的步长大小DVPGM将确定最终目标的Vth分布宽度。图13例示锁定的处理。自然分布被划分为许多狭槽(slot),其前18个在此被编号。每个狭槽表示需要某个数量的编程脉冲来达到编程目标的单元组。数字表示用于完成编程的编程脉冲的数量。在顶部线上,尖峰分布示出正尝试要达到的状态。第一脉冲是VPGM的初始值,并且每个随后的脉冲将把分布中的第一槽(bin)偏移到期望的电平,其中在此示出了9个脉冲。增加DVPGM的步长大小的每个随后的脉冲将挪动该分布,带来下一单元槽。
在此部分中给出的技术中,阶梯将被分解为多个子集。仍将包括所有脉冲,但是顺序重新布置,使得如果使用N个子集,则第一子集将是脉冲1,N+1,2N+1等等,对于N个子集中的其余子集,下一子集是第二脉冲以及每隔N个脉冲等等。例如,此编程序列可以取为4部分。目标是在四遍中编程并且对于关于图13所述的通常的编程序列实现相同的编程性能和分布。
对于这四遍,编程数据可以保持在数据锁存器中,或者系统可以从二进制块读取数据,其中使用二进制非易失性缓存布置将原始数据保持在系统中(例如参见美国专利公开US-2010-0172179-A1和US-2010-0172180-A1),并且可以使用额外的锁存器来锁定通过的单元。如果缓存操作需要,最后遍可以释放锁存器。(在美国专利号7,158,421和7,206,230中描述了关于锁存器结构的更多信息。)考虑四遍的示例实施例,在遍1,对应于图12中的A脉冲,验证将从目标Vth电平偏移开。这将锁定相应组的单元以阻止过编程(overprogramming),因为否则更大的步长大小将很可能将许多单元过编程。步长大小将是4*DVPGM;例如,对于完整的阶梯,步长大小是0.2V,则对于每遍可以使用0.8V步长。在移动到下一(在此是第二)遍之前,将需要解锁单元。
在遍2,在进入第二遍编程之前,可以使用在最终目标的Vth处的预验证以锁定通过验证的单元。如果来自第一遍的一些单元发生了去俘获,则将用一个脉冲+DVPGM在第二编程在此对该单元编程。第二遍验证电平比第一遍高了DVPGM电平,以便尽管仍降低以防止过编程,但是其仍比第一遍的验证电平升高了。为了考虑对较低状态的编程干扰,第二遍验证电平可以比用于较低状态验证的DVPGM增加稍高一点。在遍3,在进入第三编编程之前,在最终目标的Vth处再次使用预验证以锁定通过该预验证的单元。第三遍验证电平比第二遍高了DVPGM电平。对于遍4的最后的子集,在进入到第四遍编程之前,示例实施例再次包括在最终目标的Vth处的预验证,其将锁定通过验证的单元。因为其在此是最后一遍,所以第四遍验证电平将处于目标状态验证电平。
图14例示示例实施例的预验证电平和4遍验证电平的相对电压电平中的一些。示出了对被写到给定数据状态的单元的期望类型的稍微尖峰的最终分布,此状态由在该分布的较下端处的最终验证电平确定。(对于每个非擦除状态将存在类似的布置。)以最终验证电平进行预验证,因为如果要被写到此电平的单元已经处于此电平,则应该不进一步写入。最后遍(第4遍)将使用最终目标Vth电平,第3、第2和第1电平的每个从此最终电平逐步向下增加,每次逐步向下达取为步长大小DVPGM的递增的增量的步长大小的量。在编程脉冲之间的编程验证需要偏移以容纳步长方面并且锁定其中一些单元可能还没有达到目标阈值电压的一组单元,其中在这些初始遍的每遍之后,在来到下一遍之前这些单元将被解锁。
查看第一遍,如图15所示,将施加具有步长大小的4倍大的编程脉冲,并且其对应于图12中标记为A的编程脉冲。在此,示出A脉冲具有与图12所示相同的位置以帮助使得它们的关系更清楚,但是在实践中实际的定时将使用与图12或图11的个体之间相同的间距,由此它们实践中尽可能紧密地放置以允许所需的脉冲间操作。在编程脉冲之间将存在验证以锁定相应的单元,比如图11所示,但是在图12中这被删除以简化讨论。
进一步考虑第一遍,图16是与图13相当的第一遍。如在顶部线上所示,遍1中的第一编程脉冲将以初始VPGM值开始。在此,可以对第一遍应用诸如美国专利公开号US-1020-0091573-A1和US-2010-0091568-A1的智能验证算法以搜索对于此字线的VPGM值。此新发现的VPGM值可以被存储用于将来的遍。在第一验证之后,在1、2、3、4狭槽中的单元将锁定,尽管仅狭槽1的单元达到了其目标Vth电平,因为否则下一脉冲将导致这些单元中的许多过命中(overshoot)。对于第一遍锁定狭槽2、3、4的单元,它们将在将来的遍中被更多地编程。处理以随后的遍1脉冲继续,并且随后的脉冲验证将进行直到所有单元完成编程。此第一遍还可以利用在美国专利号7,800,945中描述的减少的验证算法来加速处理。
第二遍表示在图17和18中,其分别对应于图15和16中的第一遍。在解锁单元之后,在开始编程之前,第二遍将以预验证所有状态而开始。在预验证之后,狭槽1、5、9、13、17中的单元将对于此遍被锁定。如果由于去俘获或者其他机制,一些单元具有Vth压降,则可以用比在先前被锁定时高一个DVPGM增量的脉冲再次对它们编程。在图18中,预锁定的单元具有空的狭槽。第一编程脉冲将使用VPGM+DVPGM电平。编程脉冲之间的验证电平也比先前遍移动得高了1DVPGM。然后该处理继续,直到所有单元在相应的第二遍验证处锁定。
图19和20是对应的第三遍的图。对于该示例实施例,在开始编程之前,第三遍将再次以对所有状态的预验证而开始。在预验证之后,狭槽1、2、5、6、9、10、13、14、17、18中的单元在此遍中将被锁定不再进行任何编程。如果一些单元由于去俘获具有Vth压降,则用比上次锁定高1DVPGM的脉冲再次对它们编程。在图20中,预锁定的单元具有空的狭槽。第一编程脉冲将使用VPGM+2*DVPGM电平,编程脉冲之间的验证电平也比前一遍移动得高了1DVPGM。
第四(以及在此实施例中的最后)遍表示在图21和22中。如之前,在解除锁定之后,在开始编程之前,第四遍将以预验证所有状态而开始。在预验证之后,狭槽1、2、3、5、6、7、9、10、11、13、14、15、17、18中的单元将对于此遍被锁定。如果一些单元由于去俘获或者其他机制具有Vth压降,则用比上次锁定高1DVPGM的脉冲再次对它们编程。在图22中,预锁定的单元具有空的狭槽。第一编程脉冲将使用VPGM+3*DVPGM电平。编程脉冲之间的验证电平也比前一遍移动得高了1DVPGM。如图22所示,少得多的数量的单元将被编程并锁定。更少锁定的群体将显著减少得到的Nakamura效应量,由于耦合到浮置栅极的信道升压,这将导致更高的Vth尾部。
此外,所述的框架可以并入模糊编程作为多遍编程的部分以节省编程时间;例如,遍1可以被用作模糊阶段,而2遍可以被用作精细模式。第一遍可以使用降低的验证来加速编程。(对于模糊编程的讨论,其中编程阶段的最后结果不将不同数据状态的分布解析到然后可以容易地被读取的点,例如参见美国专利申请号12/642,740。)可以调整模糊和精细之间的验证电平,如以下进一步所述。
多遍算法的数据锁存器要求将与传统的编程算法中的相同。在使用相同步长时,编程脉冲的总数与单遍布置相同,而仅仅是具有重新布置的顺序。每遍将添加预验证时间。通过将更大的跳跃引入到每遍中然后后备(back up)用于下一遍,此算法可以容纳去俘获的Vth压降,并且还可以降低由高的VPGM编程干扰引起的较低状态加宽。类似于正常编程序列,可以消除位线到位线Yupin效应(电容浮置栅极耦合)。由于编程群体仅仅是原始的四分之一,大部分数据已经被锁定,所以在最后遍还可以降低Nakamura效应。在验证操作期间,该群体的大部分已经被编程,使得在克服信道与信道耦合效应方面其非常接近最终读取偏压。
目前为止,刚刚已经在一次单条字线方面讨论了多遍中的不同遍。尽管可以对每条字线相继地进行多遍,来回工作通常将是有利的,在字线之间跳跃以最小化Yupin效应和其他效应。这是与模糊-精细编程或逐页编程时类似的情况,比如例如在美国专利申请号12/051,462、12/051,492以及12/642,740中描述的,例如,其中在WLn上写入较低页,跟着在WL(n+1)上写入较低页,然后回到WLn上的下一页,等等。在当前描述的多遍算法中,这可以转变,例如将对WLn进行第一遍,跟着对WL(n+1)进行第一遍,然后对WLn进行下一遍,等等,通过对所有字线的所有遍被写入。
考虑在第一遍使用模糊编程,这允许第一遍字线前耦合(pre-wordlinecoupling),并且稍后的遍是字线后耦合(post-wordline coupling)。图23例示对于不同遍的验证电平中的相应偏移。在Yupin效应的字线-字线电容耦合之前对第一个进行模糊编程。然后在下一字线完成其模糊编程之后可以进行精细编程,即后Yupin效应。对于不同的随后的遍,精细验证电平将不同。从模糊验证电平到最低精细验证电平的距离可以是几个DVPGM远。模糊分布将向曲线601那样宽。在字线-字线耦合之后,通过用模糊编程编程下一字线,曲线601可以将较上端加宽到曲线605。最终分布603的较上边缘将与曲线605的较上端对齐。由于字线-字线Yupin效应,然后应该调整各遍的验证电平。例如,如果没有字线-字线耦合,则该系统可以对所有遍使用例如0.8V步长大小已得到最终的0.2V最终宽度分布,在每遍VPGM和验证电平偏移0.2V。由于来自字线的较低-中间类型编程序列的字线-字线耦合(例如参见美国专利号7,502,255),系统可以对于所有遍使用0.7V(或更小)步长大小以得到0.2V宽度最终分布,在每遍VPGM和验证电平偏移0.2V。
多遍写入技术还可以并入快速遍写入(QPW)技术,这在美国专利号7,158,421和7,206,230中更详细地描述,其还提供了关于与以下讨论的部分相关的数据锁存器结构的更多细节。在通常的写入操作中,一旦存储器单元在其目标值处验证,其就被锁定不进一步编程。在快速遍写入布置中,使用另外的较低验证电平以便当单元在此较低电平处验证时,其编程速率减慢,但不完全锁定,然后在常规电平处验证之后发生锁定。这通常通过更改偏压条件、比如稍微提高位线电平但是不提高到用于锁定的完全值来实现。
快速遍写入编程通过同时编程两个槽可以减少步骤的数量,一个槽处于满编程模式,具有提高的位线偏压,另一槽处于快速编程模式,没有任何禁止。现在参考图24及其顶部线,写入将一起编程槽1和2,对槽2开始编程,并且对槽1慢编程。在下一遍,槽1和2两者将被锁定。在该示例实施例中,在一遍中将仅使用一个快速遍脉冲。如果需要另一快速遍写入,这将在下一遍中进行。
为了实现快速遍写入,如果在不同遍之间要保持原始数据,则可以包括另外的数据锁存器用于每个被写入的单元。例如,如果每单元正写入2位,则使用蓝光锁存器来保存数据,一个锁存器用于保持跟踪单元是否已被锁定并应该被禁止,一个锁存器用于保持跟踪单元是否已在快速遍写入电平处验证以及需要部分被禁止。这些分配例示在图25中,其中两个锁存器(ADL、BDL)存储两位数据(“D2数据”),一个锁存器(CDL)指示单元是否已经验证以及应该被锁定(“禁止”),一个锁存器(DDL)指示单元是否已在快速遍电平处验证以及应该切换到慢模式(“QPW锁定”)。(在此的示例实施例用于每单元存储2位的系统。对于具有更多位的其他单元,锁存器的数量对于每个另外的位将相应地增加一,或者对于二进制系统降低一。)
在其中被写入的数据可以安全地保存在别处使得存储器包括保存该数据的二进制非易失性块的布置中,该系统可以从该二进制块或其他源直接读回原始数据,将每单元需要的数据锁存器的数量减少一。(以二进制形式存储数据并且随后以多状态格式对其重写的存储器系统的例子参见例如美国专利公开US-2010-0172179-A1和US-2010-0172180-A1。)在这样的布置中的数据锁存器的分配的例子示出在图26中。
禁止和快速遍写入数据锁存器如何可以转换为偏压电平的例子示出在图27中。首先,两个锁存器将处于0,将没有禁止(即位线处于地),并且单元将具有快速编程。当单元在快速遍写入电平而不是最终验证电平处验证时,QPW锁存器将被设置为1,通过稍微升高位线而减慢编程速率。当通过QPW和最终验证电平两者时,然后通过将对应的位线取为高于禁止值而禁止对单元的编程。
在理想情况下,快速遍写入可以将分布编程为1/2DVPGM宽度。在图28中,例示了对于四遍的验证电平以及快速遍写入验证电平。在该示例实施例中,仅在每遍编程的开始时进行QPW验证,类似于预验证。QPW处理不需要许多另外的验证操作,并且该系统可以对每个状态仅进行一个QPW验证,相应地节省时间。
减少验证时间量的一般方法可以关于图29来描述。这将再次在每单元存储2位的系统的上下文中讨论,但是很容易延伸到其他值。(在图29中,标记状态,对于最低的“被擦除”状态标记为E,对于除了E状态之外的编程的较高电平编辑为A、B、C。指代状态的A、B、C不应与图12的A、B、C的以及以上的其他相混淆,这些指代阶梯的子集。)图29示出对于模糊-精细变型的三个编程遍,其中顶部线的第一遍是其中状态分布仍然散开的模糊遍。然后随后的遍监视对于较低位使用预验证的精细类型遍,并且将收紧该分部。在第一遍中,对于每个状态,示出各个遍验证电平(AV1、BV1、CV1)以及较低快速遍写入验证电平(AVL、BVL、CVL)。注意,在此布置中,QPW验证(AVL、BVL和CVL)与先前状态精细验证电平对齐:BVL=AV1,并且CVL=BV1等等。此方案可以用于其他的3位/单元验证操作,而不管系统是否正使用多遍算法。对于随后遍,示出了对于每个状态的预验证电平(PAV2等等)以及遍验证电平(AV1等等)。
在多遍算法、包括模糊-精细变型中,来自前一遍的Vth分布将在当前遍中被切断一半并折叠。例如,A分布710的下一半被折叠到其上一半。这使得容易预测远离编程目标的单元很少。而且,距离目标电平的Vth分布也可以不太远。在编程序列的开始处使用预验证可以允许较慢的位经历更快的编程。查看诸如图29的第一遍中的快速遍写入算法,低验证占用了总验证时间的一半。通过在编程序列的开始处的一次预验证,然后为低Vth单元给出固定数量的全编程脉冲,跟着使用快速遍写入慢编程直到锁定,可以减少验证量。
减少给定遍中的验证操作的数量的另一补充方式是通过共享验证电平。例如,回到第一遍(模糊),每个状态具有两个不同的验证电平:较低快速遍写入验证以及用于完全锁定单元的较高电平。由于在这点上分布是相当宽泛的,对于一个状态的低验证电平也可以用于下一较低状态的较高验证电平。例如,BVL可以使用AV1来减少验证的数量。在该示例实施例中,随后的遍在编程序列的开始处将仅进行一次低验证。通过在编程脉冲的开始处进行一次快速遍写入验证,这可以允许并入快速遍写入而不添加额外的验证时间。
结论
尽管已经关于某些实施例描述了本发明的各个方面,但是应理解本发明有权在所附权利要求的全部范围内进行保护。

Claims (13)

1.一种编程非易失性存储器器件的方法,包括:
向第一字线施加形成增加幅度的阶梯的脉冲;
在向第一字线施加每个脉冲之后,对沿着该第一字线的存储器单元进行验证操作,
其中向第一字线施加脉冲系列作为所述阶梯的一系列多个的N个子集,该系列至少包括第一子集和第二子集,该第一子集包括所述阶梯的按照增加幅度的顺序依次施加的第一脉冲以及每个第N个后续脉冲,该第二子集包括所述阶梯的按照增加幅度的顺序依次施加的第二脉冲以及每个第N个后续脉冲,并且在施加第一子集之后施加第二子集;
响应于在与单元目标数据状态对应的子集的验证电平处的验证,锁定沿着第一字线的所述存储器单元以便不被进一步编程,其中每个子集使用不同验证电平集进行验证操作;以及
在施加第一子集之后并且在施加第二子集之前,解锁沿着所述第一字线的存储器单元以允许进一步编程。
2.如权利要求1的方法,还包括:
在解锁存储器单元以允许进一步编程之后并且在施加第二子集之前,进行预验证操作;以及
锁定以防止被以与单元的目标数据状态对应的预验证电平处预验证的那些存储器单元的第二子集编程。
3.如权利要求1的方法,其中所述非易失性存储器以多状态格式存储数据,并且所述验证操作对于多个数据状态验证沿着所述第一字线的存储器单元。
4.如权利要求1的方法,其中所述第一子集是模糊编程处理,其中,在施加第一子集之后但是在施加第二子集之前,存储器单元的分布未被完全解析为不同的多状态。
5.如权利要求1的方法,还包括:
对于第一和第二子集的至少一个,在第一脉冲之前,使用对于每个目标数据状态低于用于锁定存储器单元不被进一步编程的相应验证电平的初始验证电平集进行初始验证操作;以及
响应于在与单元的目标数据状态对应的子集的初始验证电平处的验证,更改存储器单元上的偏压以更慢地编程。
6.如权利要求5的方法,还包括:
对于第一和第二子集的至少一个,在每个脉冲之后,使用对于每个目标数据状态低于用于锁定存储器单元不被进一步编程的相应验证电平的初始验证电平集进行初始验证操作;以及
响应于在与单元的目标数据状态对应的子集的初始验证电平处的验证,更改存储器单元上的偏压以更慢地编程。
7.如权利要求5的方法,其中所述非易失性存储器以多状态格式存储数据,并且所述验证操作对于多个数据状态验证沿着第一字线的存储器单元。
8.如权利要求7的方法,其中用于多状态中的第一状态的初始验证电平与用于锁定多状态中的第二状态的验证电平相同,多状态中的第一状态不同于多状态中的第二状态。
9.如权利要求1的方法,还包括:
向第二字线施加形成增加幅度的阶梯的脉冲;以及
在向第二字线施加每个脉冲之后,对于沿着第二字线的存储器单元进行验证操作,
其中该脉冲系列被施加到第二字线作为所述阶梯的一系列多个的N个子集,该系列至少包括第一子集和第二子集,该第一子集包括所述阶梯的按照增加幅度的顺序依次施加的第一脉冲以及每个第N个后续脉冲,该第二子集包括所述阶梯的按照增加幅度的顺序依次施加的第二脉冲以及每个第N个后续脉冲,并且在施加第一子集之后施加第二子集;
响应于在与单元目标数据状态对应的子集的验证电平处的验证,锁定沿着第二字线的所述存储器单元以便不被进一步编程,其中每个子集使用不同验证电平集进行验证操作;以及
在施加第一子集之后并且在施加第二子集之前,解锁沿着所述第二字线的存储器单元以允许进一步编程,
其中在施加第一子集之后以及在施加第二子集之前施加沿着第二字线的第一子集。
10.如权利要求9的方法,其中所述第二字线与所述第一字线相邻。
11.一种将多个存储器单元的每个写到多个目标数据状态之一的方法,该方法包括:
向第一字线施加一系列脉冲;
在向第一字线施加每个脉冲之后,对于沿着第一字线的存储器单元进行验证操作,其中该验证操作包括对于每个目标数据状态的初始验证电平和锁定验证电平,其中对于每个目标数据状态,该初始验证电平低于相应的锁定验证电平;
响应于在与单元的初始验证电平对应的电平处的验证,分别更改存储器单元上的偏压以更慢地编程;以及
响应于在与单元的锁定验证电平对应的电平处的验证,分别锁定沿着第一字线的存储器单元以便不被进一步编程,
其中多状态中的第一状态的初始验证电平与多状态中的第二状态的锁定验证电平相同,多状态中的第一状态不同于多状态中的第二状态。
12.如权利要求11的方法,其中所述验证电平是用于其中存储器单元的分布未被完全解析为不同的多状态的模糊编程处理。
13.如权利要求11的方法,其中所述验证电平是用于其中存储器单元的分布未被完全解析为不同的多状态的多遍编程处理。
CN201280045361.7A 2011-07-21 2012-07-05 采用被分解为多遍的阶梯波形的存储器编程方法 Active CN103797540B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/188,352 US8432740B2 (en) 2011-07-21 2011-07-21 Program algorithm with staircase waveform decomposed into multiple passes
US13/188,352 2011-07-21
PCT/US2012/045605 WO2013012567A1 (en) 2011-07-21 2012-07-05 Program algorithm with staircase waveform decomposed into multiple passes

Publications (2)

Publication Number Publication Date
CN103797540A CN103797540A (zh) 2014-05-14
CN103797540B true CN103797540B (zh) 2016-08-17

Family

ID=46640094

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201280045361.7A Active CN103797540B (zh) 2011-07-21 2012-07-05 采用被分解为多遍的阶梯波形的存储器编程方法

Country Status (4)

Country Link
US (1) US8432740B2 (zh)
KR (1) KR101787177B1 (zh)
CN (1) CN103797540B (zh)
WO (1) WO2013012567A1 (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9007841B1 (en) 2013-10-24 2015-04-14 Western Digital Technologies, Inc. Programming scheme for improved voltage distribution in solid-state memory
US9530506B2 (en) 2014-11-21 2016-12-27 Sandisk Technologies Llc NAND boosting using dynamic ramping of word line voltages
KR20160129430A (ko) * 2015-04-30 2016-11-09 에스케이하이닉스 주식회사 반도체 메모리 장치 및 그 프로그램 방법
CN107958687B (zh) * 2016-10-18 2021-05-11 群联电子股份有限公司 存储器编程方法、存储器控制电路单元及其存储装置
US10460797B2 (en) 2017-09-08 2019-10-29 Macronix International Co., Ltd. Method for programming non-volatile memory and memory system
US10424387B1 (en) 2018-05-16 2019-09-24 Sandisk Technologies Llc Reducing widening of threshold voltage distributions in a memory device due to temperature change
US11049578B1 (en) 2020-02-19 2021-06-29 Sandisk Technologies Llc Non-volatile memory with program verify skip
US11288011B2 (en) 2020-03-26 2022-03-29 Western Digital Technologies, Inc. Non-volatile memory array with write failure protection for multi-level cell (MLC) storage elements using coupled writes
US11250920B2 (en) * 2020-06-30 2022-02-15 Sandisk Technologies Llc Loop-dependent switching between program-verify techniques
US11328780B1 (en) 2020-12-09 2022-05-10 Sandisk Technologies Llc Reduced verify scheme during programming based on spacing between verify levels
US11532370B1 (en) 2021-05-25 2022-12-20 Sandisk Technologies Llc Non-volatile memory with fast multi-level program verify

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009048852A1 (en) * 2007-10-12 2009-04-16 Bose Corporation Oszillating magnet member with flexure with mechanical stress relief
CN101711413A (zh) * 2007-06-25 2010-05-19 桑迪士克公司 具有位于存储元件之间的可单独控制的屏蔽板的非易失性存储装置
CN101779250A (zh) * 2007-06-21 2010-07-14 桑迪士克公司 编程脉冲持续期的智能控制
CN102077298A (zh) * 2008-06-30 2011-05-25 桑迪士克公司 在非易失性存储器中的读取干扰减轻

Family Cites Families (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5095344A (en) 1988-06-08 1992-03-10 Eliyahou Harari Highly compact eprom and flash eeprom devices
US5070032A (en) 1989-03-15 1991-12-03 Sundisk Corporation Method of making dense flash eeprom semiconductor memory structures
US5172338B1 (en) 1989-04-13 1997-07-08 Sandisk Corp Multi-state eeprom read and write circuits and techniques
US5149208A (en) 1990-04-02 1992-09-22 Balanced Engines, Inc. Bearing with lubricating and non-lubricating spacers
JPH0453096A (ja) 1990-06-19 1992-02-20 Toshiba Corp アナログ記憶装置
US5146208A (en) 1990-08-17 1992-09-08 Parra Jorge M Method and apparatus for detecting intrusion into a body of water
US5343063A (en) 1990-12-18 1994-08-30 Sundisk Corporation Dense vertical programmable read only memory cell structure and processes for making them
US5313421A (en) 1992-01-14 1994-05-17 Sundisk Corporation EEPROM with split gate source side injection
US6222762B1 (en) 1992-01-14 2001-04-24 Sandisk Corporation Multi-state memory
US5315541A (en) 1992-07-24 1994-05-24 Sundisk Corporation Segmented column memory array
KR0169267B1 (ko) 1993-09-21 1999-02-01 사토 후미오 불휘발성 반도체 기억장치
US5661053A (en) 1994-05-25 1997-08-26 Sandisk Corporation Method of making dense flash EEPROM cell array and peripheral supporting circuits formed in deposited field oxide with the use of spacers
US5701266A (en) 1995-12-14 1997-12-23 Intel Corporation Programming flash memory using distributed learning methods
US5729489A (en) 1995-12-14 1998-03-17 Intel Corporation Programming flash memory using predictive learning methods
US5903495A (en) 1996-03-18 1999-05-11 Kabushiki Kaisha Toshiba Semiconductor device and memory system
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
EP0913832B1 (en) 1997-11-03 2003-07-23 STMicroelectronics S.r.l. Method for multilevel programming of a nonvolatile memory, and a multilevel nonvolatile memory
JP3631463B2 (ja) 2001-12-27 2005-03-23 株式会社東芝 不揮発性半導体記憶装置
US6522584B1 (en) * 2001-08-02 2003-02-18 Micron Technology, Inc. Programming methods for multi-level flash EEPROMs
US6850441B2 (en) 2002-01-18 2005-02-01 Sandisk Corporation Noise reduction technique for transistors and small devices utilizing an episodic agitation
US7073103B2 (en) 2002-12-05 2006-07-04 Sandisk Corporation Smart verify for multi-state memories
ITMI20022570A1 (it) 2002-12-05 2004-06-06 Simicroelectronics S R L Metodo di programmazione di una memoria a semiconduttore non-volatile programmabile elettricamente
US7158421B2 (en) 2005-04-01 2007-01-02 Sandisk Corporation Use of data latches in multi-phase programming of non-volatile memories
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
US7206230B2 (en) 2005-04-01 2007-04-17 Sandisk Corporation Use of data latches in cache operations of non-volatile memories
KR100766241B1 (ko) 2006-05-10 2007-10-10 주식회사 하이닉스반도체 플래쉬 메모리 소자의 프로그램 방법
US7489549B2 (en) 2006-06-22 2009-02-10 Sandisk Corporation System for non-real time reprogramming of non-volatile memory to achieve tighter distribution of threshold voltages
US7486561B2 (en) 2006-06-22 2009-02-03 Sandisk Corporation Method for non-real time reprogramming of non-volatile memory to achieve tighter distribution of threshold voltages
US7696035B2 (en) 2006-11-13 2010-04-13 Sandisk Corporation Method for fabricating non-volatile memory with boost structures
US7468920B2 (en) 2006-12-30 2008-12-23 Sandisk Corporation Applying adaptive body bias to non-volatile storage
US7502255B2 (en) 2007-03-07 2009-03-10 Sandisk Corporation Method for cache page copy in a non-volatile memory
US7904793B2 (en) 2007-03-29 2011-03-08 Sandisk Corporation Method for decoding data in non-volatile storage using reliability metrics based on multiple reads
US7539060B2 (en) 2007-04-05 2009-05-26 Sandisk Corporation Non-volatile storage using current sensing with biasing of source and P-Well
KR100922977B1 (ko) 2007-12-27 2009-10-22 주식회사 하이닉스반도체 불휘발성 메모리 소자의 프로그램 방법
KR101378349B1 (ko) 2008-01-30 2014-03-28 삼성전자주식회사 메모리 장치 및 메모리 데이터 읽기 방법
US7961512B2 (en) 2008-03-19 2011-06-14 Sandisk Corporation Adaptive algorithm in cache operation with dynamic data latch requirements
US7986554B2 (en) 2008-03-19 2011-07-26 Sandisk Technologies Inc. Different combinations of wordline order and look-ahead read to improve non-volatile memory performance
US7800945B2 (en) 2008-06-12 2010-09-21 Sandisk Corporation Method for index programming and reduced verify in nonvolatile memory
US7826271B2 (en) 2008-06-12 2010-11-02 Sandisk Corporation Nonvolatile memory with index programming and reduced verify
US8130552B2 (en) 2008-09-11 2012-03-06 Sandisk Technologies Inc. Multi-pass programming for memory with reduced data storage requirement
US7768836B2 (en) 2008-10-10 2010-08-03 Sandisk Corporation Nonvolatile memory and method with reduced program verify by ignoring fastest and/or slowest programming bits
US8094500B2 (en) 2009-01-05 2012-01-10 Sandisk Technologies Inc. Non-volatile memory and method with write cache partitioning
US8040744B2 (en) 2009-01-05 2011-10-18 Sandisk Technologies Inc. Spare block management of non-volatile memories
US8223556B2 (en) 2009-11-25 2012-07-17 Sandisk Technologies Inc. Programming non-volatile memory with a reduced number of verify operations
US8054684B2 (en) 2009-12-18 2011-11-08 Sandisk Technologies Inc. Non-volatile memory and method with atomic program sequence and write abort detection
US8443263B2 (en) 2009-12-30 2013-05-14 Sandisk Technologies Inc. Method and controller for performing a copy-back operation

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101779250A (zh) * 2007-06-21 2010-07-14 桑迪士克公司 编程脉冲持续期的智能控制
CN101711413A (zh) * 2007-06-25 2010-05-19 桑迪士克公司 具有位于存储元件之间的可单独控制的屏蔽板的非易失性存储装置
WO2009048852A1 (en) * 2007-10-12 2009-04-16 Bose Corporation Oszillating magnet member with flexure with mechanical stress relief
CN102077298A (zh) * 2008-06-30 2011-05-25 桑迪士克公司 在非易失性存储器中的读取干扰减轻

Also Published As

Publication number Publication date
KR101787177B1 (ko) 2017-10-18
KR20140061351A (ko) 2014-05-21
US20130021849A1 (en) 2013-01-24
CN103797540A (zh) 2014-05-14
WO2013012567A1 (en) 2013-01-24
US8432740B2 (en) 2013-04-30

Similar Documents

Publication Publication Date Title
CN103797540B (zh) 采用被分解为多遍的阶梯波形的存储器编程方法
US8374031B2 (en) Techniques for the fast settling of word lines in NAND flash memory
US7715235B2 (en) Non-volatile memory and method for ramp-down programming
CN102177555B (zh) 具有通过忽略最快和/或最慢编程位减少编程验证的非易失性存储器和方法
US9437302B2 (en) State-dependent lockout in non-volatile memory
US7177197B2 (en) Latched programming of memory and method
CN102906820B (zh) 用同步耦合编程非易失性存储器
CN102985976B (zh) 包括减小其他存储单元的影响的对非易失性存储器的编程
US8811075B2 (en) Charge cycling by equalizing and regulating the source, well, and bit line levels during write operations for NAND flash memory: verify to program transition
US8050090B2 (en) Memory page boosting method, device and system
CN102067233B (zh) 使用索引编程和减少的验证的非易失性存储器和方法
CN102089827B (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
CB02 Change of applicant information

Address after: texas

Applicant after: DELPHI INT OPERATIONS LUX SRL

Address before: texas

Applicant before: Sandisk Corp.

COR Change of bibliographic data
GR01 Patent grant