CN104094354A - 使用改进的第一遍编程的非易失性存储器及方法 - Google Patents

使用改进的第一遍编程的非易失性存储器及方法 Download PDF

Info

Publication number
CN104094354A
CN104094354A CN201280068979.5A CN201280068979A CN104094354A CN 104094354 A CN104094354 A CN 104094354A CN 201280068979 A CN201280068979 A CN 201280068979A CN 104094354 A CN104094354 A CN 104094354A
Authority
CN
China
Prior art keywords
programming
memory cell
state
memory
page
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201280068979.5A
Other languages
English (en)
Inventor
李艳
C.许
大和田健
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 Corp
SanDisk Technologies LLC
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 CN104094354A publication Critical patent/CN104094354A/zh
Pending legal-status Critical Current

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/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
    • 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
    • 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/3468Prevention of overerasure or overprogramming, e.g. by verifying whilst erasing or writing

Landscapes

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

Abstract

一种使用多遍编程方案的非易失性存储器使得能够在减少浮置栅极到浮置栅极扰动(Yupin效应)的情况下对多级存储器单元的页进行编程。存储器单元在被划分为表示一系列递增编程状态(DE、D1、D2、D3、D4、D5、D6、D7)的多个带的共同阈值电压范围或窗口内操作。所述系列被分为两半,较低组和较高组(DVLM)。存储器单元在第一次存储编程遍中编程,使得具有来自较高组的目标状态的页的存储器单元被编程为接近阈值窗口中的中间的分阶区域。具体地,与先前的方案相比,它们被编程为更接近它们的目标目的地,而不导致更多的性能损失(步骤2)。然后,随后的遍将更快地完成编程(步骤3、4)。由于随后的遍中阈值电压改变减少,因此Yupin效应减少。

Description

使用改进的第一遍编程的非易失性存储器及方法
技术领域
本申请涉及一种可重新编程例如半导体闪速存储器的非易失性存储器系统的操作,并且更具体地,涉及一种具有准确和高效的编程方案的闪速存储器。
背景技术
能够进行电荷的非易失性存储的、尤其以被封装为小形状因子卡的EEPROM和闪速EEPROM的形式的固态存储器最近成为各种移动和手持式设备中、尤其是信息装置和消费电子产品中的存储器选择。与同样是固态存储器的RAM(随机访问存储器)不同,闪速存储器是非易失性的,并且即使在断开电源之后,也保持其存储的数据。此外,与ROM(只读存储器)不同,闪速存储器与盘存储设备类似是可重写的。虽然成本更高,但是闪速存储器日益用于大容量存储应用中。基于例如硬盘驱动器和软盘驱动器的旋转磁介质的传统大容量存储器不适用于移动和手持式环境。这是因为盘驱动器趋向于体积大、易于机械故障并且具有高等待时间和高功率需要。这些不理想属性使得基于盘的存储器在大多数移动和便携式应用中并不实用。另一方面,嵌入式和以可移除卡的形式的闪速存储器理想地适用于移动和手持式环境,因为它的小尺寸、低功率消耗、高速度以及高可靠性特征。
闪速EEPROM与EEPROM类似,在于其是可以擦除并且使得新的数据写入或“编程”到它们的存储器单元中的非易失性存储器。两者都利用在源极和漏极区域之间的位于半导体基底中的沟道(channel)区域上的场效应晶体管结构中的浮置(floating)(未连接)导电栅极。然后,在浮置栅极上提供控制栅极。晶体管的阈值电压特性由在浮置栅极上保持的电荷量控制。也就是说,对于浮置栅极上的给定电荷电平,存在在接通晶体管以允许在其源极和漏极区域之间导电之前必须施加于控制栅极的对应电压(阈值)。具体地,例如闪速EEPROM的闪速存储器允许同时擦除存储器单元的整个块。
浮置栅极可以保持一电荷范围并且因此可以被编程为阈值电压窗口内的任何阈值电压电平。阈值电压窗口的尺寸通过器件的最小和最大阈值电平划界,其转而对应于可以被编程为浮置栅极上的电荷范围。阈值窗口通常取决于存储器器件的特性、操作条件和历史。所述窗口内的每一个不同、可辨识阈值电压电平范围原则上可以用于表示所述单元的明确存储器状态。
通常在当前商用产品中,闪速EEPROM阵列的每一个存储元件通过在二进制模式中操作而存储单个数据位,其中存储元件晶体管的阈值电平的两个范围被定义为存储电平。晶体管的阈值电平对应于在它们的存储元件上存储的电荷电平的范围。除了缩小存储器阵列的尺寸之外,趋势是通过在每一个存储元件晶体管中存储多于一个数据位而进一步增大这种存储器阵列的数据存储密度。这通过对于每一个存储元件晶体管定义多于两个阈值电平作为存储状态而实现,现在四个这种状态(每存储元件2个数据位)被包括在商用产品中。还实现例如每存储元件16个状态的更多的存储状态。每一个存储元件存储器晶体管具有其中其可以实际操作的阈值电压的特定总的范围(窗口),并且该范围被分为对其定义的状态数加上状态之间的边界以允许彼此清楚地区分它们。显然,存储器单元被配置为存储的位越多,其必须在其中操作的错误边界越小。
用作存储器单元的晶体管通常通过两种机制之一被编程为“编程”状态。在“热电子注入”中,施加于漏极的高电压使穿过基底沟道区域的电子加速。同时施加于控制栅极的高电压将热电子拉过薄栅极电介质到浮置栅极上。在“遂穿(tunneling)注入”中,将高电压相对于基底施加于控制栅极。以该方式,将电子从基底拉至中间的浮置栅极。虽然术语“编程”历史上用于描述通过将电子注入存储器单元的初始擦除电荷存储单元以改变存储器状态而写入存储器,但是现在其与例如“写入”或“记录”的更多常用术语可互换使用。
存储器器件可以通过许多机制擦除。对于EEPROM,通过将高电压相对于控制栅极施加于基底以在浮置栅极中引入电子以通过薄的氧化物遂穿到基底沟道区域(即,Fowler-Nordheim遂穿效应)而可以电擦除存储器单元。通常,EEPROM可以按字节擦除。对于闪速EEPROM,可以一次全部电擦除存储器或一次擦除一个或多个最小可擦除块,其中最小可擦除块可以由一个或多个扇区组成,并且每一个扇区可以擦除512字节或更多数据。
存储器器件通常包括可以在卡上安装的一个或多个存储器芯片。每一个存储器芯片包括由例如解码器以及擦除、写入和读取电路的外围电路支持的存储器单元的阵列。更复杂的存储器器件还具备执行智能和更高级别存储器操作以及接口连接的控制器。
如今使用了许多商业上成功的非易失性固态存储器器件。这些存储器器件可以是闪速EEPROM或可以采用其他类型的非易失性存储器器件。闪速存储器和系统及其制造方法的示例在美国专利no.5,070,032、5,095,344、5,315,541、5,343,063和5,661,053、5,313,421以及6,222,762中给出。具体地,在美国专利No.5,570,315、5,903,495、6,046,935中描述了具有NAND串结构的闪速存储器器件。此外,非易失性存储器器件还由具有用于存储电荷的电介质层的存储器单元造成。代替前面描述的导电浮置栅极元件,使用了电介质层。在Eitan等的“NROM:A Novel Localized Trapping,2-Bit NonvolatileMemory Cell,”IEEE Electron Device Letters,vol.21,no.11,November 2000,pp.543-545中描述了这种利用电介质存储元件的存储器器件。ONO电介质层延伸穿过源极和漏极扩散之间的沟道。一个数据位的电荷位于邻近漏极的电介质层中,并且另一数据位的电荷位于邻近源极的电介质层中。例如,美国专利no.5,768,192和6,011,725公开一种具有夹在两个二氧化硅层之间的捕捉电介质的非易失性存储器单元。通过分开读取电介质内空间分开的电荷存储区域的二进制状态而实现多状态数据存储。
单元的浮置栅极到浮置栅极编程编程干扰(“Yupin效应”)
被编程为一个存储器单元的电荷存储元件中的电荷产生扰动(perturb)相邻存储器单元的电场的电场。通常,被擦除的单元在其浮置栅极中没有电荷并且具有最低阈值电压。随着不断使更多电荷进入浮置栅极而对存储器单元进行编程,存储器单元的阈值电压增大。存储器单元通常在一阈值电压范围(阈值窗口)内操作。阈值窗口被划分为多个子范围或阈值电压带,每一个表示存储器状态。作为具有浮置栅极的场效应晶体管,被编程为存储器单元的浮置栅极中的电荷确定其阈值电压并且所述阈值电压转而确定其处于何种存储器状态。然而,随着单元间距离缩小,存储器单元可能开始“看见”被编程为其邻居的浮置栅极中的电荷。因此,其看见比其真正具有的电荷更多的电荷并且具有增大其阈值电压的虚拟效果。
如果存储器单元在第一场环境下被编程验证并且稍后由于随后以不同电荷对相邻单元进行编程在不同场环境下被再次读取,读取准确度可能被称为“Yupin效应”的效应所影响,所述Yupin效应是由于相邻浮置栅极之间的耦合的干扰。随着半导体存储器中越来越高的集成,由于存储器单元之间存储的电荷的电场的扰动(Yupin效应)随着单元间间隔缩小变得越来越可感知。
Yupin效应可以通过在单元已完成编程验证(即编程为其目标状态)的时间到其邻居已完成编程的时间之间,最小化由于其邻居的单元的场环境中的非对称性而减轻。以该方式,当单元在其目标状态被编程验证时,其看见由于其邻居的第一场环境,并且随后在其邻居的编程完成的情况下,其看见第二场环境,并且这两个场环境之间的差异被最小化。Yupin效应是影响存储器的沿行和跨位线(BL-BL Yupin效应)以及沿列跨字线(WL-WL Yupin效应)的邻近单元的编程干扰。
一种减少BL-BL Yupin效应的方式是采用多遍(pass)编程方案用于对字线上的存储器单元的页进行并行编程。在第一次编程遍中,目标为更高编程状态(其是将它们的阈值电压从阈值窗口的较低端的擦除状态移动到较高端的状态)的存储器单元被初始编程为接近阈值窗口的一半的分阶(staging)区域。在随后的编程遍中,它们从分阶区域被编程到它们的最后目标目的地。以该方式,由存储器单元看见的第一和第二场环境之间的差异是由于其邻居的阈值电压未移动通过整个阈值窗口而至多通过半个阈值窗口。
通过一系列二进制编程执行实现上述多遍编程的传统方法,其中在每一次编程遍时,阈值窗口被二分并且目标状态属于二分的较高一半的存储器单元被编程为二分部分的中间偏低部分。每一次进一步的编程遍迭代二分编程直到在最后的编程遍中页的全部存储器单元被编程到它们的最后目的地。由“LM”编码给出遵从这种编程方案的优选编码。
然而,LM编码和编程方法不是最高效的。
仍存在对用于对非易失性存储器进行编程以帮助使由于Yupin效应的编程干扰最小化的最高效的方案的一般需要。
发明内容
根据本发明的一个实施例,在共同阈值电压窗口内操作的存储器单元的页通过改进的多遍编程操作编程。多遍编程包括第一次“改进的LM”编程遍,其包括选择具有在阈值窗口的较高一半中的目标状态的所述页的第一组存储器单元用于编程,使用编程来电压脉冲接脉冲地编程和验证第一组中的每一个存储器单元,直到所述每一个存储器单元都已被验证为通过接近阈值窗口的中间部分的预定验证点,并且在已编程验证第一组中的全部存储器单元之后,在没有中间验证的情况下进一步对许多额外的编程脉冲使能已编程验证的存储器单元,编程脉冲的数目取决于目标状态。改进的LM遍其后是一次或多次编程遍,其中页的全部存储器单元被更精细地编程到它们的最后目的地。
具体地,当存储器具有越高编程状态或相对于分阶区域在阈值窗口的越高处的目标状态时,其将接收的额外的编程脉冲的数目越大。
以该方式,改进的LM遍与传统LM编程遍实现方式相比将每一个存储器单元编程为更接近其最后目的地。这将减少在随后的遍中所需的编程,从而改进性能。因为更高效更粗糙的编程脉冲和没有中间验证操作,在改进的LM遍期间比在随后的遍中在阈值窗口中移动存储器单元更快,因此节省了总时间。
根据本发明的第二实施例,在共同阈值电压窗口内操作的存储器单元的页通过改进的多遍编程操作编程。多遍编程包括第一次“改进的LM”编程遍,其包括选择具有在阈值窗口的较高一半中的目标状态的所述页的第一组存储器单元用于编程,使用编程电压来脉冲接脉冲地编程和验证第一组中的每一个存储器单元,直到所述每一个存储器单元都已被验证为通过接近阈值窗口的中间部分的预定验证点,并且在编程和验证正在进行用于将还未编程验证的第一组的存储器单元保持在预定验证点的同时,在没有对编程验证存储器单元进行中间验证的情况下,进一步对许多正在进行的编程脉冲来编程使能已编程验证的存储器单元,编程脉冲的数目取决于目标状态。改进的LM遍(LM pass)其后是一次或多次编程遍,其中页的全部存储器单元被更精细地编程到它们的最后目的地。
具体地,当存储器具有越高编程状态或相对于分阶区域在阈值窗口的越高处的目标状态时,其将接收的额外的编程脉冲的数目越大,但限于正在进行的编程脉冲的可用性。
与改进的LM遍的第一实施例类似的第二实施例与先前的LM编程遍实现方式相比将每一个存储器单元编程为更接近其最后目的地。这将减少在随后的遍中所需的编程,从而改进性能。因为由于更粗糙的编程脉冲和没有中间验证操作,在改进的LM遍中导致的额外的编程脉冲更高效,因此在改进的LM遍期间比在随后的遍中在阈值窗口中移动存储器单元更快,因此节省了总时间。具体地,第二实施例仅在编程验证第一组的全部存储器单元所需的正在进行的编程脉冲数目内而非在额外的编程脉冲数目内操作。
根据本发明的优选实施例的下列描述将理解本发明的额外的目的、特征和优点,所述描述应结合附图考虑。
附图说明
图1示出与其中实施本发明的特征的存储器设备通信的主机。
图2示出并行感测或编程的被组织在例如NAND配置中的存储器单元的页。
图3示意性示出组织在可擦除块中的存储器阵列的示例。
图4示出施加于选择的字线的阶梯波形形式的一系列编程电压脉冲。
图5(0)-5(3)示出根据现有技术的通过使用2位逻辑码(“LM”码)编码的4状态存储器的页编程的逻辑页。
图6(0)-6(4)示出根据现有技术的使用优选的3位逻辑码(“LM”码)编码的8状态存储器的编程。
图7(0)-7(4)示出现有技术中的“LM-模糊-精细”编程方案。
图8(0)-8(4)示出根据本发明的第一实施例的对具有如改进的LM的第一次编程遍的3位存储器单元的页的改进的多遍编程。
图9(0)-9(4)示出根据本发明的第二实施例的对具有如改进的LM的第一次编程遍的3位存储器单元的页的改进的多遍编程。
图10是示出根据第一实施例的具有改进的LM遍的多遍编程的流程图。
图11是示出根据第二实施例的具有改进的LM遍的多遍编程的流程图。
具体实施方式
存储器系统
图1示出与其中实施本发明的特征的存储器设备通信的主机。主机80通常发送要存储在存储器设备90的数据,或通过读取存储器设备90获取数据。存储器设备90包括由存储器控制器102管理的一个或多个存储器芯片100。存储器芯片100包括存储器单元的存储器阵列200,其中每一个单元能够被配置为用于存储多位数据的多级单元(“MLC”),并且能够被配置为用于存储1位数据的单级单元(“SLC”)。
存储器芯片还包括外围电路204,例如行和列解码器、感测模块210、数据锁存器220和I/O电路。芯片上控制电路310控制每一个芯片的低级别存储器操作。控制电路310是与外围电路合作以对存储器阵列200执行存储器操作的芯片上控制器。控制电路310通常包括经由数据总线231以及控制和地址总线111提供存储器操作的芯片级控制的状态机312。
在许多实现方式中,主机80经由存储器控制器102与存储器芯片100通信和交互。控制器102与存储器芯片合作并控制和管理更高级别的存储器操作。固件60提供实现控制器102的功能的代码。错误校正码(“ECC”)处理器62在存储器设备的操作期间处理ECC。
例如,在主机写入中,主机10向由主机的操作系统的文件系统分配的逻辑扇区中的存储器阵列100发送要写入的数据。在控制器中实现的存储器块管理系统对扇区分阶并且将它们映射和存储到存储器阵列的物理结构。在美国专利申请公开号:US-2010-0172180-A1中公开了优选块管理系统,其整个公开通过引用合并于此。
物理存储器架构
为了改进读取和编程性能,并行读取或编程阵列中的多个电荷存储元件或存储器晶体管。因此,一起读取或编程一“页”存储器元件(物理页)。在现有存储器架构中,一行通常包含一个或多个物理页。将一起读取或编程一页的全部存储器元件。
图2示出并行感测或编程的组织在例如NAND配置中的存储器单元的页。图2基本上示出图1的存储器阵列200中的NAND串50的堆。例如页60的“页”是一组被使能为并行感测或编程的存储器单元。这通过感测放大器210的对应页在外围电路中实现。感测结果被锁存在数据锁存器220的对应组中。每一个感测放大器可以经由位线36耦接到NAND串,例如NAND串50。例如,页60沿一行并且通过施加于共同连接到字线WL3的页的单元的控制栅极的感测电压来感测。沿每一列,例如单元10的每一个单元可以经由位线36被感测放大器访问。数据锁存器220中的数据经由数据I/O总线231从存储器控制器102切换入(toggle in from)或切换出(toggle out of)至存储器控制器102。
NAND串50是通过它们的源极和漏极菊花链式连接以在其两端分别形成源极端子和漏极端子的一系列存储器晶体管10。一对选择晶体管S1、S2分别经由NAND串的源极端子和漏极端子控制存储器晶体管链至外部的连接。在存储器阵列中,当接通源极选择晶体管S1时,源极端子耦接到源极线34。类似地,当接通漏极选择晶体管S2时,NAND串的漏极端子耦接到存储器阵列的位线36。链中的每一个存储器晶体管10用作存储器单元。其具有存储给定电荷量的电荷存储元件20以表示预期存储器状态。每一个存储器晶体管的控制栅极允许控制读取和写入操作。NAND串的一行的对应存储器晶体管的控制栅极全部连接到相同字线(例如WL0、WL1、……)。类似地,选择晶体管S1、S2中的每一个的控制栅极(分别经由选择线SGS和SGD访问)分别经由其源极端子和漏极端子提供对NAND串的控制访问。
上面提及的页是物理页存储器单元或感测放大器。取决于上下文,在其中每一个单元存储多位数据的情况下,每一个物理页具有多个数据页。
此外,物理页可以存储一个或多个逻辑扇区的数据。通常,使用盘操作系统操作的主机80(参见图1)通过以逻辑扇区(通常为一个或多个512字节的单元)为单位组织文件的内容而管理文件的存储。
在稍后给出的示例中,物理页可以具有经由16kB字线通过对应16kB感测放大器并行感测的16kB存储器单元,由主机分配的示例逻辑扇区具有2kB大小的数据。因此,如果每一个单元被配置为存储1位数据(SLC),则物理页可以存储8个扇区。对于例如每一个单元存储2位数据的MLC,每一个物理页可以存储16个逻辑扇区等。
擦除块
闪速存储器和其他类型的存储器之间的一个重要差异在于单元必须从擦除状态编程。也就是说,浮置栅极必须首先被清空电荷。然后,编程将希望的电荷量增加回浮置栅极。其不支持从浮置栅极移除一部分电荷以从更高编程状态变为更低编程状态。这意味着更新数据不能覆写现有数据并且必须写入先前未写入的位置。
此外,擦除是从浮置栅极清空全部电荷并且通常花费可观的时间。出于该原因,一个单元接一个单元或甚至一页接一页的擦除将是麻烦和非常慢的。实践中,存储器单元的阵列被分为大量存储器单元块。如对于闪速EEPROM系统常见的,块是擦除单元。也就是说,每一个块包含一起擦除的最小数目的存储器单元。
图3示意性示出组织在可擦除块中的存储器阵列的示例。电荷存储存储器设备的编程可以仅使得将更多的电荷增加到其电荷存储元件。因此,在编程操作之前,必须移除(或擦除)存储器单元的电荷存储元件中的现有电荷。当一起(即,瞬间)电擦除整个单元阵列200或阵列的大量单元组时,例如EEPROM的非易失性存储器被称为“闪速”EEPROM。一旦擦除,就可以随后对单元组进行重新编程。可以一起擦除的单元组可以由一个或多个可寻址的擦除单元300组成。擦除单元或块300通常擦除一个或多个数据页,页是编程和读取的最小单元,虽然在单个操作中可以编程或读取多于一页。每一页通常擦除一个或多个数据扇区,扇区的大小被主机系统定义。示例是遵循磁盘驱动器建立的标准的512字节的用户数据加上关于用户数据和/或其存储的块的开销信息的一些字节的扇区。
在图3中示出的示例中,存储器阵列200中的单独的存储器单元可以由例如WL0-WLy的字线42和例如BL0-BLx的位线36访问。存储器被组织为擦除块,例如擦除块0、1、……、m。如果NAND串50(参见图2)包含16个存储器单元,则阵列中第一堆NAND串将可以通过选择线44和例如WL0到WL15的字线42访问。擦除块0被组织为使得第一堆NAND串的全部存储器单元一起擦除。在存储器架构中,可以一起擦除多于一堆NAND串。
图4示出施加于选择的字线的一系列阶梯波形形式的编程电压脉冲。当单元被编程为给定状态时,其经历连续编程电压脉冲,每一次都试图将增量电荷增加到浮置栅极。在编程脉冲之间,读回或验证单元以确定相对于断点电平的其源极-漏极电流。当单元被验证为达到希望状态时,对于所述单元的编程停止。使用的编程脉冲队可以具有增大的周期或幅度以便抵消编程为存储器单元的电荷存储单元中的积累电子。比另一脉冲移动更多电荷到存储器单元中的脉冲被称为更粗糙的或者该另一脉冲以更精细的粒度编程,编程电路通常将一系列编程脉冲施加于选择的字线。以该方式,其控制栅极连接到字线的存储器单元的页可以一起编程。只要页的存储器单元被编程为其目标状态,就将其编程禁止,而其他单元继续经历编程直到已编程验证页的全部单元为止。
单元的浮置栅极到浮置栅极编程干扰(“Yupin效应”)
被编程为一个存储器单元的电荷存储元件中的电荷产生扰动相邻存储器单元的电场的电场。通常,被擦除的单元在其浮置栅极中没有电荷并且具有最低阈值电压。随着不断使更多电荷进入浮置栅极而对存储器单元进行编程,存储器单元的阈值电压增大。存储器单元通常在一阈值电压范围(阈值窗口)内操作。阈值窗口被划分为多个子范围或阈值电压带,每一个表示存储器状态。作为具有浮置栅极的场效应晶体管,被编程为存储器单元的浮置栅极中的电荷确定其阈值电压并且所述阈值电压转而确定其处于何种存储器状态。然而,随着单元间距离缩小,存储器单元可能开始“看见”被编程为其邻居的浮置栅极中的电荷。因此,其看见比其真正具有的电荷更多的电荷并且具有增大其阈值电压的虚拟效果。
如果存储器单元在第一场环境下被编程验证并且稍后由于随后以不同电荷对相邻单元进行编程在不同场环境下被再次读取,读取准确度可能被称为“Yupin效应”的效应所影响,所述Yupin效应是由于相邻浮置栅极之间的耦合的干扰。随着半导体存储器中越来越高的集成,由于存储器单元之间存储的电荷的电场的扰动(Yupin效应)随着单元间间隔缩小变得越来越可感知。
Yupin效应可以通过在单元已完成编程验证(即编程为其目标状态)的时间到其邻居已完成编程的时间之间、最小化由于其邻居的单元的场环境中的非对称性,而减轻。以该方式,当单元在其目标状态被编程验证时,其看见由于其邻居的第一场环境,并且随后在其邻居的编程完成的情况下,其看见第二场环境,并且这两个场环境之间的差异被最小化。Yupin效应是影响存储器的沿行和跨位线(BL-BL Yupin效应)以及沿列跨字线(WL-WL Yupin效应)的邻近单元的编程干扰。
一种减少BL-BL Yupin效应的方式是采用多遍编程方案用于对并行字线上的存储器单元的页进行编程。在第一次编程遍中,目标为更高编程状态(其是将它们的阈值电压从阈值窗口的较低端的擦除状态移动到较高端的状态)的存储器单元被初始编程为接近阈值窗口的一半的分阶区域。在随后的编程遍中,它们从分阶区域被编程到它们的最后目标目的地。以该方式,由存储器单元看见的第一和第二场环境之间的差异是由于未移动通过整个阈值窗口而至多通过半个阈值窗口的其邻居的阈值电压。
通过一系列二进制编程来执行实现上述多遍编程的传统方法,其中在每一次编程遍时,阈值窗口被二分并且目标状态属于二分的较高一半的存储器单元被编程为二分部分的中间偏低部分。每一次进一步的编程遍迭代二分编程直到在最后的编程遍中页的全部存储器单元被编程到它们的最后目的地。由“LM”编码给出遵从这种编程方案的优选编码。
单级(SLC)和多级(MLC)存储器单元
如上所述,由场效应晶体管阵列形成非易失性存储器的示例,每一个场效应晶体管在其沟道区域和其控制栅极之间具有电荷存储层。电荷存储层或单元可以存储一个范围的电荷,得到每个场效应晶体管的一个范围的阈值电压。可能的阈值电压的范围跨越阈值窗。当阈值窗被划分为多个子范围或区块的阈值电压时,每个可辨识区块被用于表示存储器单元的不同存储器状态。可以通过一个或多个二进制位来编码多个存储器状态。在SLC存储器中,每个存储器单元存储一位数据。在MLC存储器中,每个存储器单元存储多于一位数据。
2位或4状态存储器的示例“LM”编码
图5(0)-5(3)示出了根据现有技术的用2位逻辑码(“LM”码)来编码4状态存储器的逐个逻辑页的编程。来自一页的每个存储器单元的2个码位形成两个逻辑页,其中每页由从该页的每个存储器单元贡献的一个码位来形成。可以逐个逻辑页地、较低逻辑页之后是较高逻辑页地、进行编程。该码提供容错,且减轻BL-BL Yupin效应。图5(0)示出了4状态存储器阵列的阈值电压分布。每个存储器单元的可能的阈值电压跨越阈值窗,该阈值窗被分界阈值电压DA、DB和DC划分为四个区域,以分别分界四个可能的存储器状态,“Er”、“A”、“B”、和“C”。“Er”是地状态,其是在收紧分布内的已擦除状态,“A”、“B”和“C”是三个渐进编程的状态。在读取期间,四个状态被三个读取点DRA、DRB和DRC分界。
图5(3)示出了优选的2位LM编码来表示四个可能的存储器状态。每个存储器状态(即,“Er”、“A”、“B”、和“C”)分别由一对“较高、较低”码位、即“11”、“01”、“00”和“10”来表示。LM编码与传统Gray(格雷)码不同之处在于较高和较低位被保留用于状态“A”和“C”。“LM”码已经被US专利No.6657891公开,且有利于通过避免需要大量电荷改变的编程操作来减少相邻浮置栅极之间的场效应耦合。如将在图5(2)和5(3)中看到的,每个编程操作导致存储单元中的电荷的适度(moderate)改变,如从阈值电压VT的适度改变可以明显看出的。
编码被设计为使得2位码,“较低”和“较高”位,可以分开编程和读取。当对较低位进行编程时,单元的阈值电平保持在“擦除”区域中或被移动到阈值窗口的“中间偏低”区域。当对较高位进行编程时,在这两个区域中的单元的阈值电平被进一步提升至阈值窗口的“中间偏低”区域中的稍微更高的电平。
图5(1)和5(2)示出使用2位LM码的较低页编程。容错LM码被设计为避免穿过任何中间状态的任何随后的较高页编程。因此,如果较低位为“1”,则第一轮较低页编程使得单元保持在“已擦除”或“Er”状态,或者如果较低位为“0”,则第一轮较低页编程使得单元被编程为“中间偏低”状态。基本上,“Er”或“地”状态是通过使得深度擦除状态被编程为明确定义的阈值窗口范围内的具有紧分布的“已擦除”状态。较低页LM编程基本上使得目标是阈值窗口的较高一半中的状态“B”和“C”的存储器单元编程为接近阈值窗口的中间的中间分阶区域。“中间偏低”(“LM”)状态可以具有横跨在存储器状态“A”和“B”之间的阈值电压的宽分布。优选地,使用相对较少的粗糙脉冲执行编程以将指定为状态“B”和“C”的存储器单元快速移动到LM状态。“LM”状态相对于例如DVLM的验证分界在编程脉冲之间被编程验证,使得LM状态接近状态“B”和“C”之间的分界D2但不超过它。
基本上,第一遍编程使得目标是属于阈值窗口的较低一半的状态“E”和“A”的存储器单元保持不变,并且这些存储器单元保持在阈值窗口的已擦除带中。同时,编程将目标是属于阈值窗口的较高一半的状态“B”和“C”的存储器单元移动到接近阈值窗口的中间的LM分阶区域。在完成存储器单元编程的随后的编程遍中,必须移动到其最后目的地的大多数每一个单元是阈值窗口的宽度的一半。
图5(2)和5(3)示出使用2位LM码的较高页编程。基于第一遍较低页编程执行较高页编程。取决于较低位的值,给定的较高位可以表示不同存储器状态。在第二次编程遍中,如果单元的较高位为“1”同时较低位为“1”,即(1,1),则不对该单元进行编程并且其保持为“Er”。如果较高位为“0”同时较低位为“1”,即(0,1),则单元从“Er”状态被编程为“A”状态。在编程为“A”期间,该验证相对于分界DVA。另一方面,如果单元的较高位为“0”同时较低位为“0”,即(0,0),则单元从“中间偏低”状态被编程为“B”。该编程验证相对于分界DVB。类似地,如果单元的较高位为“1”同时较低位为“0”,即(1,0),则单元将从“中间偏低”状态被编程为“C”。该编程验证相对于分界DVC
由于较高页编程仅涉及从“Er”状态或“中间偏低”状态编程到下一相邻存储器状态,因此轮与轮之间没有大量电荷改变。此外,从“Er”到大致“中间偏低”状态的较低页编程被设计为节省时间。在每一次编程遍中,递增的编程脉冲重新开始并且从初始Vpgm0斜升(参见图10)。
在另一实现方式中,实现“快速遍写入”编程技术。只要单元的编程接近验证分界点,通过位线电压的适当偏置(bias)或通过修改编程脉冲编程就将被切换为较慢(即较精细)模式。以该方式,较大编程步进可以初始用于快速收敛而没有超过目标状态的危险。在2005年12月29日提交的、名称为“Methods for Improved Program Verify Operations in Non-Volatile Memory(用于非易失性存储器中改进的编程验证操作的方法)”的美国专利申请序列No.11/323,596中公开了“QPM”编程算法,所述申请的整个公开通过引用合并于此。
用于3位或8状态存储器的示例“LM”编码
用于2位LM码的示例可以类似地扩展到3位或更高数的位。
图6(0)-6(4)示出根据现有技术的使用优选的3位逻辑码(“LM”码)编码的8状态存储器的编程。来自页的每一个存储器单元的3位形成三个逻辑页并且可以逻辑页接逻辑页地执行编程。该码类似于上述2位LM编码并且被扩展为3位以编码8个可能的存储器状态。图6(0)示出8状态存储器阵列的阈值电压分布。每一个存储器单元的可能的阈值电压横跨阈值窗口,所述阈值窗口通过分界阈值电压点DA-DG被划分为8个区域以分别对8个可能的存储器状态“Er”、“A”、“B”、“C”、“D”、“E”、“F”和“G”划分界限。“Er”是地状态,其是紧分布内的擦除状态,并且“A”-“G”是7个逐步编程状态。在读取期间,8个状态通过7个分界读取点DRA-DRG划分界限。
图6(4)示出表示8个可能的存储器状态的3位LM编码。8个存储器状态中的每一个分别由“较高、中间、较低”位的三位元组(triplet)表示,即“111”、“011”、“001”、“101”、“100”、“000”、“010”和“110”。从图6(4)可以明显看出,最后的编程遍仅导致全部存储器单元的阈值电压的较小改变。这转化为每一个存储器单元的电荷存储单元中的较小改变,从而使Yupin效应最小化。
编码被设计为可以分开编程和读取3个码位,“较低”、“中间”和“较高”位。因此,如果较低位为“1”,则第一轮较低页编程使得单元保持在“擦除”或“Er”状态,或者如果较低位为“0”,则第一轮较低页编程使得单元被编程为“中间偏低”状态。基本上,“Er”或“地”状态是通过使得深度擦除状态被编程为阈值窗口的窄范围内的具有紧分布的“擦除”状态。“中间偏低”(“LM”)状态可以具有横跨在存储器状态“B”和“D”之间的阈值电压的宽分布。在编程期间,可以相对于例如DB的粗糙断点阈值电平验证“中间偏低”状态。当对中间位进行编码时,单元的阈值电平将从较低页编程产生的2个区域之一开始并且移动到4个可能的区域之一。当对较高位进行编程时,单元的阈值电平将从中间页编程产生的4个可能的区域之一开始并且移动到8个可能的存储器状态之一。
通常,并行地对存储器单元的页进行编程,其中每一个存储器单元具有3位。因此,存储器单元的页可以被视为具有3个逻辑数据页,其中每一个逻辑数据页来自页的每一个单元的1个码位。因此,“较低位”页由页的每一个存储器单元的较低位形成,“中间位”页由每一个单元的中间位形成,并且“较高位”页由页的每一个单元的较高位形成。
图6(1)和6(2)示出使用3位LM码的较低页编程。容错LM码被设计为避免任何随后的更高页编程穿过任何中间状态。因此,如果较低位为“1”,即(x,x,1),则第一轮较低页编程使得单元保持在“擦除”或“Er”状态,或者如果较低位为“0”,即(x,x,0),则第一轮较低页编程使得单元被编程为“中间偏低”状态。基本上,“Er”或“地”状态是通过使得深度擦除状态被编程为明确定义的阈值窗口范围内的具有紧分布的“擦除”状态。较低页LM编程基本上使得目标是阈值窗口的较高一半中的状态“D”-“G”的存储器单元编程为接近阈值窗口的中间的中间分阶区域。“中间偏低”(“LM”)状态可以具有横跨在存储器状态“B”和“D”之间的阈值电压的宽分布。优选地,使用相对较少的粗糙脉冲执行编程以将指定为状态“B”和“C”的存储器单元快速移动到LM状态。“LM”状态相对于例如DVLM的验证分界在编程脉冲之间被编程验证,使得LM状态接近状态“D”和“E”之间的分界D4但不超过它。
基本上,第一遍编程使得目标是属于阈值窗口的较低一半的状态“E”-“C”的存储器单元保持不变,并且这些存储器单元保持在阈值窗口的擦除带中。同时,编程将目标是属于阈值窗口的较高一半的状态“D”-“G”的存储器单元移动到接近阈值窗口的中间的LM分阶区域。在完成存储器单元编程的随后的编程遍中,必须移动到其最后目的地的大多数每一个单元是阈值窗口的宽度的一半。
图6(2)和6(3)示出使用3位LM码的中间页编程。基于第一遍较低页编程执行中间页编程。取决于较低位,给定的中间位可以表示不同存储器状态。在第二轮编程中,如果单元的中间位为“1”同时较低位为“1”,即(x,1,1),则不对该单元进行编程并且其保持为“Er”。如果中间位为“0”同时较低位为“1”,即(x,0,1),则单元从“Er”状态被编程为横跨在“A”和“B”之间的第一“中间中间”状态。在编程为第一“中间中间”状态期间,该验证相对于分界DVMM1。另一方面,如果单元的中间位为“0”同时较低位为“0”,即(x,0,0),则单元从“LM”状态被编程为横跨在“C”和“D”之间的第二“中间中间”状态。该编程验证相对于分界DVMM2。类似地,如果单元的中间位为“1”同时较低位为“0”,即(x,1,0),则单元将从“LM”状态被编程为横跨在“E”和“F”之间的第三“中间”状态。该编程验证相对于分界DVMM3
图6(3)和6(4)示出使用3位LM码的较高页编程。基于第一和第二轮,即较低和中间页编程,执行较高页编程。取决于较低和中间位,给定的较高位可以表示不同存储器状态。在第三轮编程中,如果单元的较高位为“1”同时较低和中间位为“1”,即(1,1,1),则不对该单元进行编程并且其保持为“Er”。另一方面,如果较高位为“0”同时较低和中间位为“1”,即(0,1,1),则单元从“Er”状态被编程为“A”状态。在编程为“A”期间,该验证相对于分界DVA
类似地,如果单元的较高位为“0”同时较低位和中间位分别为“0”和“1”,即(0,0,1),则单元从第一“中间中间”状态被编程为“B”。该编程验证相对于分界DVB。如果单元的较高位为“1”同时较低位和中间位分别为“0”和“1”,即(1,0,1),则单元将从第一“中间中间”状态被编程为“C”。该编程验证相对于分界DVC
类似地,如果单元的较高位为“1”同时较低位和中间位分别为“0”和“0”,即(1,0,0),则单元从第二“中间中间”状态被编程为“D”。编程验证相对于分界DVD。如果单元的较高位为“0”同时较低位和中间位分别为“0”和“0”,即(0,0,0),则单元将从第二“中间中间”状态被编程为“E”。编程验证相对于分界DVE
类似地,如果单元的较高位为“0”同时较低位和中间位分别为“1”和“0”,即(0,1,0),则单元从第三“中间中间”状态被编程为“F”。编程验证相对于分界DVF。如果单元的较高位为“1”同时较低位和中间位分别为“1”和“0”,即(1,1,0),则单元将从第三“中间中间”状态被编程为“G”。编程验证相对于分界DVG
由于较高页编程仅涉及从“Er”状态或“中间中间”状态之一编程为下一相邻存储器状态,因此轮与轮之间没有大量电荷改变。这帮助减轻BL-BLYupin效应。
对于4位、5位和更高位LM编码,在n位码将具有n个数据页,其中每一页由提供码的给定位的页中的每一个单元形成的情况下适用相同原理。更重要的是,从较低向较高位页编程导致单元的电荷的适度改变,从而限制由于存储器单元的页之间的Yupin效应的扰动量。
用于3位或8状态存储器的示例“LM-模糊-精细”编程
图6中描述的3位LM编码和编程可以在每一次编程遍时对逻辑页进行编程而实现。存在三个逻辑页:与较低、中间和较高位对应的较低页、中间页和较高页。
替换编程方案是保持如图6中的第一遍LM编程对较低逻辑页进行编程。然而,第二遍将不再将存储器单元编程为二进制划分的分阶区域,而是简单地将全部存储器单元编程为接近它们的目的地。第二遍编程被称为“模糊”,因为其仍然使用粗糙编程脉冲粗糙地执行以增大速度,但所述编程脉冲比第一次LM遍的编程脉冲更精细。其后是第三次“精细”编程遍,其使用更精细的编程脉冲修整每一个状态的阈值分布的后沿。每一遍的验证阈值点取决于编程脉冲的粒度。每一个布置使得存储器单元在其被过编程到指定阈值之前首先在验证阈值处验证。
图7(0)-7(4)示出现有技术中的“LM-模糊-精细”编程方案。
图7(1)-7(2)示出与图6(1)到6(2)中示出的“LM”遍类似的“LM”遍。LM遍如上所述对较低逻辑页进行编程。
图7(2)-7(3)示出其中使用更精细的编程脉冲将全部存储器单元相对粗糙和快速编程到它们的目标状态的“模糊”通过。
图7(2)-7(3)示出其中使用甚至更精细的编程脉冲将全部存储器单元最后编程到它们的目标状态的“精细”通过。
存储器单元被编程为更接近它们的最后目的地的改进的“LM”编程
从对于2位和3位多遍编程给出的示例可以清楚看出,最初LM编程遍用作将目标是较高编程状态的存储器单元放到接近阈值窗口的较低中间部分的“LM”分阶区域。在2位的情况下,通过在DVLM对目标是“B”和“C”的存储器单元进行编程验证而将它们存入分阶区域。在3位的情况下,通过在DVLM对目标是“D”-“G”的存储器单元进行编程验证而将它们存入分阶区域。虽然基于这些存储器单元的目标状态属于阈值窗口的较高一半而选择它们进行编程,但是当执行编程验证时不同状态之间没有区别。由于它们不论目标状态为何都相对于DVLM被存入相同分阶区域,因此当随后的编程遍将这些存储器单元移动到它们的最后目的地时,目标是更高编程状态的存储器单元并不占先(no head start),并且将需要更多编程脉冲来达到它们的最后目的地。
根据本发明的第一实施例,在共同阈值电压窗口内操作的存储器单元的页通过改进的多遍编程操作来编程。多遍编程包括第一次“改进的LM”编程遍,其包括选择具有在阈值窗口的较高一半中的目标状态的所述页的第一组存储器单元用于编程,使用编程电压脉冲接脉冲地编程和验证第一组中的每一个存储器单元,直到所述每一个存储器单元都已被验证为通过接近阈值窗口的中间部分的预定验证点,并且在已编程验证第一组中的全部存储器单元之后,在没有中间验证的情况下进一步对许多额外的编程脉冲使能已编程验证的存储器单元,编程脉冲的数目取决于目标状态。改进的LM遍其后是一次或多次编程遍,其中页的全部存储器单元被更精细地编程到它们的最后目的地。
以该方式,改进的LM遍与传统LM编程遍实现方式相比将每一个存储器单元编程为更接近其最后目的地。这将减少在随后的遍中所需的编程,从而改进性能。因为更高效更粗糙的编程脉冲和没有中间验证操作,在改进的LM遍期间比在随后的遍中在阈值窗口中更快移动存储器单元,因此节省了总时间。
图8(0)-8(4)示出根据本发明的第一实施例的对具有如改进的LM的第一次编程遍的3位存储器单元的页进行的改进的多遍编程。
图8(0)示出8状态存储器阵列的阈值电压分布。每一个存储器单元的可能的阈值电压横跨阈值窗口,所述阈值窗口通过分界阈值电压点DA-DG被划分为8个区域以分别对8个可能的存储器状态“Er”、“A”、“B”、“C”、“D”、“E”、“F”和“G”划分界限。“Er”是地状态,其是紧分布内的擦除状态,并且“A”-“G”是7个逐步编程状态。在读取期间,8个状态通过7个分界读取点DRA-DRG划分界限。
图8(4)示出表示8个可能的存储器状态的3位LM编码。8个存储器状态中的每一个分别由“较高、中间、较低”位的三位元组表示,即“111”、“011”、“001”、“101”、“100”、“000”、“010”和“110”。从图8(4)可以明显看出,最后的编程遍仅导致全部存储器单元的阈值电压的较小改变。这转化为每一个存储器单元的电荷存储单元中的较小改变,从而使Yupin效应最小化。
图8(1)-8(2)示出被称为“改进的LM遍”的第一次编程遍。改进的LM遍最初与图5(1)-5(2)和图6(1)-6(2)中示出的较低页LM编程类似。要编程的页的3位存储器单元具有2N=k+1个可能的存储器状态中的目标状态。当N=3时,可能的存储器状态的数目为8,并且在具有一个擦除状态的情况下,编程状态的数目为k=7。因此,8个存储器状态在阈值窗口的最低端的“Er”到最高端的“G”的范围中。状态“Er”、“A”、“B”和“C”存在于阈值窗口的较低一半,并且状态“D”、“E”、“F”和“G”存在于阈值窗口的较高一半。选择具有在阈值窗口的较高一半中的状态“D”-“G”中的目标状态的第一组存储器单元用于编程为接近阈值窗口的中间的中间偏低分阶区域。“中间偏低”(“LM”)分阶区域可以具有横跨在存储器状态“C”和“D”之间但不超过状态“D”的阈值电压的宽分布。优选地,使用相对较少的粗糙脉冲执行编程以将指定为状态“D”和“G”的存储器单元快速移动到LM分阶区域。这通过相对于预定验证分界DVLM在编程脉冲之间编程验证,使得移动到LM分阶区域的存储器单元尽可能接近状态“D”和“E”之间的分界D4但不超过它来实现。
基本上,第一遍编程使得目标是属于阈值窗口的较低一半的状态“E”-“C”的存储器单元保持不变,并且这些存储器单元保持在阈值窗口的擦除带中。同时,编程将目标是属于阈值窗口的较高一半的状态“D”-“G”的存储器单元移动到接近阈值窗口的中间的LM分阶区域。
通常,传统LM遍中的每一个编程脉冲被设置为将存储器单元提前一个编程状态。因此,传统LM遍将通常在第一组存储器单元被编程到但未超过状态“D”时的4个脉冲之后完成。
改进的LM遍在传统LM遍已完成之后具有额外的编程。如果分阶区域中的存储器单元的目标是状态“D”,则对于任何额外的脉冲其将不会被编程使能,因为其已经在它的最后目的地编程验证。然而,对于分阶区域中目标是状态“E”的存储器单元,其仅在未达到“E”的状态“D”编程验证。因此,例如其将被编程使能以被1个额外的脉冲编程。类似地,对于分阶区域中目标分别是状态“F”和“G”的存储器单元,它们将被编程使能以分别被2个和3个额外的脉冲编程。
图8(2)示出具有在额外的编程之后扩展的目标状态“D”、“E”、“F”和“G”的存储器单元的分布。“E”+1表示对于1个额外的编程脉冲使能的具有目标状态“E”的存储器单元,“F”+2表示对于2个额外的编程脉冲使能的具有目标状态“F”的存储器单元,并且“G”+3表示对于3个额外的编程脉冲使能的具有目标状态“G”的存储器单元。
额外的编程导致在完成传统LM遍之后的3个额外的脉冲,但不需要中间验证。优点在于存储器单元被分阶在更接近它们的最后目的地,从而在随后的编程遍中节省时间,
图8(3)示出与结合图7(3)描述的“模糊”通过类似的第二次编程遍。
图8(4)示出与结合图7(3)描述的“精细”通过类似的第三次编程遍。
通过每一个随后的编程遍,更精细的编程脉冲和一组更严格的验证阈值电压点用于改进编程的分辨率。
根据本发明的第二实施例,在共同阈值电压窗口内操作的存储器单元的页通过改进的多遍编程操作来编程。多遍编程包括第一次“改进的LM”编程遍,其包括选择具有在阈值窗口的较高一半中的目标状态的所述页的第一组存储器单元用于编程,使用编程电压脉冲接脉冲地编程和验证第一组中的每一个存储器单元,直到所述每一个存储器单元都已被验证为通过接近阈值窗口的中间部分的预定验证点,并且在编程和验证正在进行用于将还未编程验证的第一组的存储器单元保持在预定验证点的同时,在没有对编程验证存储器单元进行中间验证的情况下进一步对许多正在进行的编程脉冲使能已编程验证的存储器单元,编程脉冲的数目取决于目标状态。改进的LM遍其后是一次或多次编程遍,其中页的全部存储器单元被更精细地编程到它们的最后目的地。
具体地,当存储器具有越高编程(more programmed)状态或相对于分阶区域在阈值窗口的越高处的目标状态时,其将接收的额外的编程脉冲的数目越大,但限于正在进行的编程脉冲的可用性。例如,其花费多达4个脉冲来编程验证第一组的全部存储器单元。如果存储器状态在脉冲2中通过验证点,并且其具有目标状态“D”,则其将在脉冲3和4中被编程禁止。另一方面,如果存储器状态具有目标状态“E”,其将在脉冲3中被编程使能,而在脉冲4中不会。如果存储器状态具有目标状态“F”,则其将在脉冲3和脉冲4中被编程使能。如果存储器状态目标状态“G”,则其将在脉冲3和脉冲4中被编程使能。
与改进的LM遍的第一实施例类似的第二实施例与先前的LM编程遍实现方式相比将每一个存储器单元编程到更接近其最后目的地。这将减少在随后的遍中所需的编程,从而改进性能。因为由于更粗糙的编程脉冲和没有中间验证操作,在改进的LM遍中导致的额外的编程脉冲更高效,因此在改进的LM遍期间比在随后的遍中在阈值窗口中移动存储器单元更快,因此节省了总时间。具体地,第二实施例仅在编程验证第一组的全部存储器单元所需的正在进行的编程脉冲数目内而非在额外的编程脉冲数目内操作。
图9(0)-9(4)示出根据本发明的第二实施例的对具有如改进的LM的第一次编程遍的3位存储器单元的页进行的改进的多遍编程。第二实施例与第一实施例的不同在于实现改进的LM遍(第一遍)的方式。
图9(1)-9(2)示出被称为“改进的LM遍”的第一次编程遍。改进的LM遍最初与图5(1)-5(2)和图6(1)-6(2)中示出的较低页LM编程类似。要编程的页的3位存储器单元具有2N=k+1个可能的存储器状态中的目标状态。当N=3时,可能的存储器状态的数目为8,并且在具有一个擦除状态的情况下,编程状态的数目为k=7。因此,8个存储器状态在阈值窗口的最低端的“Er”到最高端的“G”的范围中。状态“Er”、“A”、“B”和“C”存在于阈值窗口的较低一半,并且状态“D”、“E”、“F”和“G”存在于阈值窗口的较高一半。选择具有在阈值窗口的较高一半中的状态“D”-“G”中的目标状态的第一组存储器单元用于编程为接近阈值窗口的中间的中间偏低分阶区域。“中间偏低”(“LM”)分阶区域可以具有横跨在存储器状态“C”和“D”之间但不超过状态“D”的阈值电压的宽分布。优选地,使用相对较少的粗糙脉冲执行编程以将指定为状态“D”和“G”的存储器单元快速移动到LM分阶区域。这通过相对于预定验证分界DVLM在编程脉冲之间编程验证、使得移动到LM分阶区域的存储器单元尽可能接近状态“D”和“E”之间的分界D4但不超过它来实现。
通常,传统LM遍中的每一个编程脉冲被设置为将存储器单元提前一个编程状态。因此,传统LM遍将通常在第一组存储器单元被编程到但未超过状态“D”时的4个脉冲之后完成。
改进的LM遍在传统LM遍已完成之后不导致额外的编程。相反,如果传统LM遍仍在进行,则其仅使目标是较高编程状态(例如,“E”-“G”)的存储器单元受额外的脉冲的影响。如果分阶区域(即,在“D”编程验证)中的存储器单元的目标是状态“D”,则其将对任何正在进行的脉冲编程禁止(非编程使能),因为其已经在其最后目的地被编程验证。然而,对于目标是状态“E”的分阶区域(即,在“D”编程验证)中的存储器单元,其对任何1个额外的正在进行的脉冲将不会被编程禁止(或被编程使能)。类似地,对于目标分别是状态“F”和“G”的存储器单元,它们分别被编程使能到任何2个和3个额外的正在进行的脉冲。
图9(2)示出具有在额外的编程之后扩展的目标状态“D”、“E”、“F”和“G”的存储器单元的分布。“E”+1表示对于1个额外的编程脉冲(如果有的话)使能的具有目标状态“E”的存储器单元,“F”+2表示对于2个额外的编程脉冲(如果有的话)使能的具有目标状态“F”的存储器单元,并且“G”+3表示对于3个额外的编程脉冲(如果有的话)使能的具有目标状态“G”的存储器单元。
图10是示出根据第一实施例的具有改进的LM遍的多遍编程的流程图。
步骤400:向非易失性存储器提供存储器单元的阵列,每一个存储器单元具有定义阈值窗口的共同阈值电压范围。
步骤410:通过使用k个分界点D(i)将阈值窗口划分为2N=k+1个阈值电压带而将每一个存储器单元配置为存储N位数据,其中最低带表示擦除状态并且其后是表示k个递增编程状态P(i)的k个递增带。
步骤412:提供作为一系列脉冲的编程电压。
步骤420:在多次编程遍中将选择的字线上的存储器单元的页编程为相应的目标状态。
步骤422:所述多次编程遍包括第一次编程遍和更多次随后的编程遍之一以将页的全部存储器单元编程为相应的目标状态。
步骤430:其中第一次编程遍进一步包括脉冲接脉冲地编程和验证具有在k个递增编程状态的较高一半中的目标状态的页的第一组存储器单元,所述编程状态以P([k+1]/2)开始并且以P(k)结束。
步骤432:所述验证相对于预定阈值电压,预定验证阈值电压使得能够验证放置在接近阈值窗口的中间而不超过D([k+1]/2+1)的具有P([k+1]/2)到P(k)之一的目标状态的全部存储器单元的编程。
步骤440:禁止相对于预定验证阈值电压已编程验证的第一组的每一个存储器单元的编程。
步骤450:在第一组的全部存储器单元相对于预定验证阈值已编程验证之后,在没有中间编程验证的情况下,选择性地禁用具有目标状态P([k+1]/2+x)的每一个存储器单元的所述禁止编程以使用额外的x个脉冲来编程。
图11是示出根据第二实施例的具有改进的LM遍的多遍编程的流程图。
步骤500:向非易失性存储器提供存储器单元的阵列,每一个存储器单元具有定义阈值窗口的共同阈值电压范围。
步骤510:通过使用k个分界点D(i)将阈值窗口划分为2N=k+1个阈值电压带而将每一个存储器单元配置为存储N位数据,其中最低带表示擦除状态并且其后是表示k个递增编程状态P(i)的k个递增带。
步骤512:提供作为一系列脉冲的编程电压。
步骤520:在多次编程遍中将选择的字线上的存储器单元的页编程为相应的目标状态。
步骤522:所述多次编程遍包括第一次编程遍和更多次随后的编程遍之一以将页的全部存储器单元编程为相应的目标状态。
步骤530:其中第一次编程遍进一步包括脉冲接脉冲地编程和验证具有在k个递增编程状态的较高一半中的目标状态的页的第一组存储器单元,所述编程状态以P([k+1]/2)开始并且以P(k)结束。
步骤532:所述验证相对于预定阈值电压,预定验证阈值电压使得能够验证放置在接近阈值窗口的中间而不超过D([k+1]/2+1)的具有P([k+1]/2)到P(k)之一的目标状态的全部存储器单元的编程。
步骤540:禁止相对于预定验证阈值电压已编程验证的第一组的每一个存储器单元的编程。
步骤550:在正在进行的编程脉冲仍然施加于存储器单元的页、直到相对于预定验证阈值已编程验证第一组的全部存储器单元为止的同时,在没有中间编程验证的情况下,选择性地禁用具有目标状态P([k+1]/2+x)的每一个存储器单元的所述禁止编程以使用多达x个额外的正在进行的编程脉冲编程。
虽然已描述的本发明的实施例是优选实现方式,但是本领域技术人员将理解其变化也是可能的。因此,本发明有权保护所附权利要求的整个范围。

Claims (16)

1.一种对非易失性存储器进行编程的方法,包括:
向非易失性存储器提供存储器单元的阵列,每一个存储器单元具有定义阈值窗口的共同阈值电压范围;
通过使用k个分界点D(i)将阈值窗口划分为2N=k+1个阈值电压带而将每一个存储器单元配置为存储N位数据,其中最低带表示擦除状态并且其后是表示k个递增编程状态P(i)的k个递增带;
提供作为一系列脉冲的编程电压;
在多次编程遍中将选择的字线上的存储器单元的页编程为相应的目标状态;
所述多次编程遍包括第一次编程遍和更多次随后的编程遍之一以将页的全部存储器单元编程为相应的目标状态;并且其中第一次编程遍进一步包括:
脉冲接脉冲地编程和验证具有在k个递增编程状态的较高一半中的目标状态的页的第一组存储器单元,所述编程状态以P([k+1]/2)开始并且以P(k)结束;
所述验证相对于预定阈值电压,预定验证阈值电压使得能够验证放置在接近阈值窗口的中间而不超过D([k+1]/2+1)的具有P([k+1]/2)到P(k)之一的目标状态的全部存储器单元的编程;
禁止相对于预定验证阈值电压已编程验证的第一组的每一个存储器单元的编程;以及
在第一组的全部存储器单元相对于预定验证阈值已编程验证之后,在没有中间编程验证的情况下,选择性地禁用具有目标状态P([k+1]/2+x)的每一个存储器单元的所述禁止编程以使用额外的x个脉冲编程。
2.如权利要求1所述的方法,其中:
第一次编程遍中的编程电压具有以比随后的编程遍的速率更快的速率编程的脉冲。
3.如权利要求1所述的方法,其中,N=2。
4.如权利要求1所述的方法,其中,N=3。
5.如权利要求1所述的方法,其中,非易失性存储器是闪速存储器。
6.如权利要求1所述的方法,其中,存储器单元的阵列具有NAND架构。
7.如权利要求1所述的方法,其中,非易失性存储器以存储器卡具体化。
8.一种对非易失性存储器进行编程的方法,包括:
向非易失性存储器提供存储器单元的阵列,每一个存储器单元具有定义阈值窗口的共同阈值电压范围;
通过使用k个分界点D(i)将阈值窗口划分为2N=k+1个阈值电压带而将每一个存储器单元配置为存储N位数据,其中最低带表示擦除状态并且其后是表示k个递增编程状态P(i)的k个递增带;
提供作为一系列脉冲的编程电压;
在多次编程遍中将选择的字线上的存储器单元的页编程为相应的目标状态;
所述多次编程遍包括第一次编程遍和更多次随后的编程遍之一以将页的全部存储器单元编程为相应的目标状态;并且其中第一次编程遍进一步包括:
脉冲接脉冲地编程和验证具有在k个递增编程状态的较高一半中的目标状态的页的第一组存储器单元,所述编程状态以P([k+1]/2)开始并且以P(k)结束;
所述验证相对于预定阈值电压,预定验证阈值电压使得能够验证放置在接近阈值窗口的中间而不超过D([k+1]/2+1)的具有P([k+1]/2)到P(k)之一的目标状态的全部存储器单元的编程;
禁止相对于预定验证阈值电压已编程验证的第一组的每一个存储器单元的编程;以及
在正在进行的编程脉冲仍然施加于存储器单元的页、直到相对于预定验证阈值已编程验证第一组的全部存储器单元为止的同时,
在没有中间编程验证的情况下,选择性地禁用具有目标状态P([k+1]/2+x)的每一个存储器单元的所述禁止编程以使用多达x个额外的正在进行的编程脉冲编程。
9.如权利要求8所述的方法,其中:
第一次编程遍中的编程电压具有以比随后的编程遍的速率更快的速率编程的脉冲。
10.如权利要求8所述的方法,其中,N=2。
11.如权利要求8所述的方法,其中,N=3。
12.如权利要求8所述的方法,其中,非易失性存储器是闪速存储器。
13.如权利要求8所述的方法,其中,存储器单元的阵列具有NAND架构。
14.如权利要求8所述的方法,其中,非易失性存储器以存储器卡具体化。
15.一种非易失性存储器,包括:
存储器单元的阵列,每一个存储器单元具有定义阈值窗口的共同阈值电压范围;
通过使用k个分界点D(i)将阈值窗口划分为2N=k+1个阈值电压带而将每一个存储器单元配置为存储N位数据,其中最低带表示擦除状态并且其后是表示k个递增编程状态P(i)的k个递增带;
用于提供作为一系列脉冲的编程电压的电源;
用于控制在多次编程遍中将选择的字线上的存储器单元的页编程为相应的目标状态的控制电路;
所述多次编程遍包括第一次编程遍和更多次随后的编程遍之一以将页的全部存储器单元编程为相应的目标状态;并且其中第一次编程遍进一步包括:
脉冲接脉冲地编程和验证具有在k个递增编程状态的较高一半中的目标状态的页的第一组存储器单元,所述编程状态以P([k+1]/2)开始并且以P(k)结束;
所述验证相对于预定阈值电压,预定验证阈值电压使得能够验证放置在接近阈值窗口的中间而不超过D([k+1]/2+1)的具有P([k+1]/2)到P(k)之一的目标状态的全部存储器单元的编程;
禁止相对于预定验证阈值电压已编程验证的第一组的每一个存储器单元的编程;以及
在第一组的全部存储器单元相对于预定验证阈值已编程验证之后,在没有中间编程验证的情况下,选择性地禁用具有目标状态P([k+1]/2+x)的每一个存储器单元的所述禁止编程以使用额外的x个脉冲编程。
16.一种非易失性存储器,包括:
存储器单元的阵列,每一个存储器单元具有定义阈值窗口的共同阈值电压范围;
通过使用k个分界点D(i)将阈值窗口划分为2N=k+1个阈值电压带而将每一个存储器单元配置为存储N位数据,其中最低带表示擦除状态并且其后是表示k个递增编程状态P(i)的k个递增带;
用于提供作为一系列脉冲的编程电压的电源;
用于控制在多次编程遍中将选择的字线上的存储器单元的页编程为相应的目标状态的控制电路;
所述多次编程遍包括第一次编程遍和更多次随后的编程遍之一以将页的全部存储器单元编程为相应的目标状态;并且其中第一次编程遍进一步包括:
脉冲接脉冲地编程和验证具有在k个递增编程状态的较高一半中的目标状态的页的第一组存储器单元,所述编程状态以P([k+1]/2)开始并且以P(k)结束;
所述验证相对于预定阈值电压,预定验证阈值电压使得能够验证放置在接近阈值窗口的中间而不超过D([k+1]/2+1)的具有P([k+1]/2)到P(k)之一的目标状态的全部存储器单元的编程;
禁止相对于预定验证阈值电压已编程验证的第一组的每一个存储器单元的编程;以及
在正在进行的编程脉冲仍然施加于存储器单元的页、直到相对于预定验证阈值已编程验证第一组的全部存储器单元为止的同时,
在没有中间编程验证的情况下,选择性地禁用具有目标状态P([k+1]/2+x)的每一个存储器单元的所述禁止编程以使用多达x个额外的正在进行的编程脉冲编程。
CN201280068979.5A 2011-12-16 2012-11-27 使用改进的第一遍编程的非易失性存储器及方法 Pending CN104094354A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/329,103 US8811091B2 (en) 2011-12-16 2011-12-16 Non-volatile memory and method with improved first pass programming
US13/329,103 2011-12-16
PCT/US2012/066601 WO2013090003A1 (en) 2011-12-16 2012-11-27 Non-volatile memory and method with improved first pass programming

Publications (1)

Publication Number Publication Date
CN104094354A true CN104094354A (zh) 2014-10-08

Family

ID=47297477

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201280068979.5A Pending CN104094354A (zh) 2011-12-16 2012-11-27 使用改进的第一遍编程的非易失性存储器及方法

Country Status (4)

Country Link
US (1) US8811091B2 (zh)
KR (1) KR101871546B1 (zh)
CN (1) CN104094354A (zh)
WO (1) WO2013090003A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110176269A (zh) * 2019-04-16 2019-08-27 华中科技大学 一种精确调控非易失性存储单元状态的方法及系统
CN111630599A (zh) * 2018-12-27 2020-09-04 桑迪士克科技有限责任公司 在第一编程遍次中省略验证测试的用于存储器设备的多遍编程过程
CN113228184A (zh) * 2021-03-30 2021-08-06 长江存储科技有限责任公司 存储器件及其多遍编程操作
CN114255816A (zh) * 2020-09-25 2022-03-29 爱思开海力士有限公司 半导体存储器设备及其操作方法

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8902648B2 (en) 2011-07-26 2014-12-02 Micron Technology, Inc. Dynamic program window determination in a memory device
KR101927212B1 (ko) * 2012-05-09 2019-03-07 삼성전자주식회사 비휘발성 메모리 장치의 프로그래밍 방법
US20150006784A1 (en) 2013-06-27 2015-01-01 Sandisk Technologies Inc. Efficient Post Write Read in Three Dimensional Nonvolatile Memory
US9063671B2 (en) 2013-07-02 2015-06-23 Sandisk Technologies Inc. Write operations with full sequence programming for defect management in nonvolatile memory
US9218242B2 (en) 2013-07-02 2015-12-22 Sandisk Technologies Inc. Write operations for defect management in nonvolatile memory
US9043537B1 (en) 2013-11-21 2015-05-26 Sandisk Technologies Inc. Update block programming order
US9058881B1 (en) 2013-12-05 2015-06-16 Sandisk Technologies Inc. Systems and methods for partial page programming of multi level cells
US9244631B2 (en) 2013-12-06 2016-01-26 Sandisk Technologies Inc. Lower page only host burst writes
US8902652B1 (en) 2014-05-13 2014-12-02 Sandisk Technologies Inc. Systems and methods for lower page writes
US8886877B1 (en) 2014-05-15 2014-11-11 Sandisk Technologies Inc. In-situ block folding for nonvolatile memory
KR102292183B1 (ko) 2014-11-07 2021-08-25 삼성전자주식회사 불휘발성 메모리의 동작 방법 및 불휘발성 메모리를 포함하는 스토리지 장치의 동작 방법
US10074439B2 (en) * 2015-06-04 2018-09-11 SK Hynix Inc. Modeling method of threshold voltage distributions
JP6617924B2 (ja) * 2015-06-18 2019-12-11 パナソニックIpマネジメント株式会社 耐タンパ性を有する不揮発性メモリ装置および集積回路カード、不揮発性メモリ装置の認証方法、個体識別情報生成方法
US9858009B2 (en) 2015-10-26 2018-01-02 Sandisk Technologies Llc Data folding in 3D nonvolatile memory
US9530491B1 (en) * 2015-11-16 2016-12-27 Sandisk Technologies Llc System and method for direct write to MLC memory
JP6652470B2 (ja) * 2016-09-07 2020-02-26 キオクシア株式会社 半導体記憶装置
US10102903B1 (en) * 2017-03-31 2018-10-16 Intel Corporation Write process for a non volatile memory device
WO2021068231A1 (en) * 2019-10-12 2021-04-15 Yangtze Memory Technologies Co., Ltd. Method of programming memory device and related memory device
CN112927741B (zh) * 2019-10-18 2022-09-30 长江存储科技有限责任公司 对存储器件进行编程和验证的方法以及相关的存储器件
US11309032B2 (en) * 2019-11-26 2022-04-19 Samsung Electronics Co., Ltd. Operating method of memory system including memory controller and nonvolatile memory device
US11437104B2 (en) * 2020-09-08 2022-09-06 Western Digital Technologies, Inc. Storage system and method for a hybrid quad-level cell (QLC) write scheme for reduced random access memory (RAM) footprint
WO2022266985A1 (en) 2021-06-25 2022-12-29 Yangtze Memory Technologies Co., Ltd. Memory device and multi-pass program operation thereof
KR20230041330A (ko) * 2021-09-17 2023-03-24 에스케이하이닉스 주식회사 비휘발성 메모리 장치에 데이터를 프로그램 및 검증하기 위한 장치 및 방법
CN114783487A (zh) * 2022-03-03 2022-07-22 长江存储科技有限责任公司 存储器的编程方法、存储器装置及存储器系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1661727A (zh) * 2004-02-26 2005-08-31 三星电子株式会社 多级闪存设备与编程方法
CN101351848A (zh) * 2005-12-29 2009-01-21 桑迪士克股份有限公司 用于非易失性存储器中经改进的编程检验操作的方法和装置
US20110157997A1 (en) * 2009-12-28 2011-06-30 Kabushiki Kaisha Toshiba Non-volatile semiconductor memory device, method of reading data therefrom, and semiconductor device

Family Cites Families (22)

* 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
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
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
US6657891B1 (en) 2002-11-29 2003-12-02 Kabushiki Kaisha Toshiba Semiconductor memory device for storing multivalued data
KR100525004B1 (ko) 2004-02-26 2005-10-31 삼성전자주식회사 멀티레벨 셀(Multi-level cell)플래쉬메모리장치 및 이의 프로그램 방법
US7499320B2 (en) * 2007-03-07 2009-03-03 Sandisk Corporation Non-volatile memory with cache page copy
US7492640B2 (en) * 2007-06-07 2009-02-17 Sandisk Corporation Sensing with bit-line lockout control in non-volatile memory
US7593265B2 (en) * 2007-12-28 2009-09-22 Sandisk Corporation Low noise sense amplifier array and method for nonvolatile memory
KR101468100B1 (ko) 2008-09-23 2014-12-04 삼성전자주식회사 불휘발성 메모리 장치 및 그것의 페이지 버퍼
US8254177B2 (en) * 2008-10-24 2012-08-28 Sandisk Technologies Inc. Programming non-volatile memory with variable initial programming pulse
US8094500B2 (en) 2009-01-05 2012-01-10 Sandisk Technologies Inc. Non-volatile memory and method with write cache partitioning
US8565020B2 (en) * 2010-04-14 2013-10-22 Kabushiki Kaisha Toshiba Semiconductor memory device
JP2012119019A (ja) * 2010-11-30 2012-06-21 Toshiba Corp 不揮発性半導体記憶装置
US8385132B2 (en) * 2010-12-22 2013-02-26 Sandisk Technologies Inc. Alternate bit line bias during programming to reduce channel to floating gate coupling in memory

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1661727A (zh) * 2004-02-26 2005-08-31 三星电子株式会社 多级闪存设备与编程方法
CN101351848A (zh) * 2005-12-29 2009-01-21 桑迪士克股份有限公司 用于非易失性存储器中经改进的编程检验操作的方法和装置
US20110157997A1 (en) * 2009-12-28 2011-06-30 Kabushiki Kaisha Toshiba Non-volatile semiconductor memory device, method of reading data therefrom, and semiconductor device

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111630599A (zh) * 2018-12-27 2020-09-04 桑迪士克科技有限责任公司 在第一编程遍次中省略验证测试的用于存储器设备的多遍编程过程
CN111630599B (zh) * 2018-12-27 2023-08-25 桑迪士克科技有限责任公司 在第一编程遍次中省略验证测试的用于存储器设备的多遍编程过程
CN110176269A (zh) * 2019-04-16 2019-08-27 华中科技大学 一种精确调控非易失性存储单元状态的方法及系统
CN110176269B (zh) * 2019-04-16 2020-11-17 华中科技大学 一种精确调控非易失性存储单元状态的方法及系统
CN114255816A (zh) * 2020-09-25 2022-03-29 爱思开海力士有限公司 半导体存储器设备及其操作方法
CN113228184A (zh) * 2021-03-30 2021-08-06 长江存储科技有限责任公司 存储器件及其多遍编程操作
CN113228184B (zh) * 2021-03-30 2023-10-20 长江存储科技有限责任公司 存储器件及其多遍编程操作

Also Published As

Publication number Publication date
US8811091B2 (en) 2014-08-19
US20130155769A1 (en) 2013-06-20
KR101871546B1 (ko) 2018-06-26
WO2013090003A1 (en) 2013-06-20
KR20140114370A (ko) 2014-09-26

Similar Documents

Publication Publication Date Title
CN104094354A (zh) 使用改进的第一遍编程的非易失性存储器及方法
CN107093465B (zh) 包括电压搜索单元的数据存储器装置
US7839690B2 (en) Adaptive erase and soft programming for memory
US8775901B2 (en) Data recovery for defective word lines during programming of non-volatile memory arrays
US8427874B2 (en) Non-volatile memory and method with even/odd combined block decoding
CN101711414B (zh) 非易失性存储器和用于预测编程的方法
US8472280B2 (en) Alternate page by page programming scheme
CN104599710B (zh) 具有极性控制的每单元多比特(mbc)的非易失性存储器设备和系统及其编程方法
KR102233810B1 (ko) 비휘발성 메모리 장치 및 그것의 워드라인 구동 방법
CN101512666B (zh) 非易失性存储器和用于线性估计初始编程电压的方法
CN1146918C (zh) 每个非易失存储单元可存储和检索多数字位的集成电路
CN101847443B (zh) 非易失性存储器器件和相关的编程方法
US20080253197A1 (en) Predictive Programming in Non-Volatile Memory
KR102233808B1 (ko) 저장 장치 및 그것의 테이블 관리 방법
US7911842B2 (en) Memory cell programming method and semiconductor device for simultaneously programming a plurality of memory block groups
CN102918599A (zh) 具有基本程序序列和写中止检测的非易失性存储器和方法
CN103544993A (zh) 非易失性存储器件和存储器系统及管理、擦除和编程方法
US8964467B1 (en) Systems and methods for partial page programming of multi level cells
KR20070012810A (ko) 개선된 부분 페이지 프로그램 능력을 가진 비휘발성 메모리및 제어
CN102667944A (zh) 通过写入后读取和适应性重写来管理错误的非易失性存储器和方法
US20080253193A1 (en) Non-Volatile Memory with Predictive Programming
US9384839B2 (en) Write sequence providing write abort protection
US8995188B2 (en) Sharing support circuitry in a memory
CN109726142A (zh) 回收坏块的非易失性存储系统
CN104952486B (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
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20141008