CN1783343B - 非易失性存储器件及其编程方法 - Google Patents
非易失性存储器件及其编程方法 Download PDFInfo
- Publication number
- CN1783343B CN1783343B CN2005101180820A CN200510118082A CN1783343B CN 1783343 B CN1783343 B CN 1783343B CN 2005101180820 A CN2005101180820 A CN 2005101180820A CN 200510118082 A CN200510118082 A CN 200510118082A CN 1783343 B CN1783343 B CN 1783343B
- Authority
- CN
- China
- Prior art keywords
- voltage
- circuit
- bit
- programming cycle
- during
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/12—Programming voltage switching circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/08—Address circuits; Decoders; Word-line control circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3436—Arrangements for verifying correct programming or erasure
- G11C16/3454—Arrangements for verifying correct programming or for detecting overprogrammed cells
- G11C16/3459—Circuits or methods to verify correct programming of nonvolatile memory cells
Landscapes
- Read Only Memory (AREA)
Abstract
披露了一种非易失性存储器件及其编程方法。该方法包括在多次程序循环期间将字线电压、位线电压和整体电压施加到存储单元。在当前程序循环期间位线电压下降到低于第一预定检测电压或者整体电压变得高于第二预定检测电压的情况下,相同的字线电压被用在当前编程循环和在当前程序循环之后的下一个程序循环中。否则,在下一编程循环之前将字线电压增加预定的量。
Description
技术领域
本发明一般涉及一种电子存储器件。具体地说,本发明涉及一种非易失性存储器件及其编程方法。
背景技术
半导体存储器件是诸如计算机和其它数字逻辑平台的大多数现代电子系统的重要部件。但是,遗憾的是,这些电子系统的性能经常受到半导体存储器的速度和容量的限制。另外,存储器芯片的物理尺寸经常对其在电子系统中所能进行微型化的程度产生限制。由于半导体存储器对现代电子系统的限制效果,需要继续生产更快、更高集成的半导体存储器。为此,需要改进用于生产这些存储器的制造技术。特别是,需要开发用于生产高密度集成和高频半导体存储器的处理技术。
半导体存储器件通常被分组为两个宽的分类:易失性半导体存储器件和非易失性半导体存储器件。简言之,易失性半导体存储器件是只要该器件被通电,它就能够提供持久的数据存储,但是,一旦关断电源,它们就会丢失数据。相反,非易失性半导体存储器件即使当该器件的电源被关断或暂停时也能够提供持久的数据存储。
由于即使是当电源被关断时它们提供持久数据存储的能力,非易失性存储器件通常被用于提供用于诸如程序文件和微代码的数据的长时间存储。非易时性存储器件被频繁地使用在诸如个人计算机、航天电子工程通信系统和家用电器等应用领域。
某些非易失性半导体存储器件适合于再编程,而其他的非易失性半导体存储器件则不适合。例如,由于设计限制,掩膜编程只读存储器(MROM)和可编程只读存储器(PROM)在其寿命期间只能编程一次。可擦除可编程只读存储器(EPROM)可以被再编程,但是,只是在将其曝露在紫外光数分钟以擦除先前存储的数据之后。相反,电可擦可编程只读存储器(EEPROM)通过简单地施加电场给存储单元以允许这些存储单元能够被再编程而提供了有效的再编程能力。EEPROM在其寿命期间通常能够被编程多于十万次。
闪存是一种特殊类型的EEPROM,在闪存中,利用单一的编程操作擦除或编程多个存储器块。闪存的性能通常优于一次只允许擦除或编程一个存储器块的普通EEPROM。另外,闪存对读操作提供快速的存取时间并能够抗击物理冲击,因此,它成为用于诸如蜂窝式电话和个人数字助理(PDA)等高性能便携式设备的具有吸引力的选择。
典型的闪存包括被称之为单元的晶体管阵列,其中,每个单元具有在其基板上形成的源极和漏极以及在源和漏端之间的基板上形成的两个栅结构。两个栅结构通常包括被绝缘层环绕的浮动栅和在浮动栅上形成的控制栅。浮动栅被用于存储用于确定单元逻辑状态的电子。
通过将电压置于其控制栅并检测在其漏极和源极之间流动的电流读出闪存单元。根据在浮动栅中存储有多少电子,施加于控制栅的电压将允许或不允许在漏极和源极之间有电流流过。例如,在浮动栅中存在大量电子的情况下,这些电子对施加到控制栅的电压有删除作用,因此,影响在漏极和源极之间是否有电流流动。换言之,存储在浮动栅中的电子修改所述单元的阈值电压,即,必须被施加到控制栅以便使电流在漏即和源极之间流动的电压。
由于闪存单元在诸如几何形状或用于编程存储单元方面的电压变化,已经被编程的闪存单元的阈值趋向于变化。在没有适当调节存储单元阈值电压变化的情况下,可能会导致闪存的性能下降。
为了调节用于已编程存储单元的阈值电压分布,通常使用诸如图1所示的增量步进脉冲编程(ISPP)方案对存储单元进行编程。参看图1,编程电压VWL被施加给字线。在编程操作期间执行的多程序循环迭代中,增加编程电压VWL。每个程序循环包括编程周期和程序验证周期。在每次程序循环中,编程电压VWL被增加量ΔV。在编程操作期间,正在被编程的单元的阈值电压Vt在每次程序循环中被增加量ΔV。为了使阈值电压分布的变化最小,量ΔV应当很小。当增量ΔV变得较小时,程序循环的数量变得较大。由于在所需程序循环的数量和阈值电压分布的变化之间存在折中,所以,在不会因为需要太多程序循环而明显限制存储器件性能的情况下,应当对所述ΔV做出选择,以尽可能地使阈值电压的变化最小。
例如在美国专利号6266270中披露了使用ISPP对非易失性存储器件进行编程的方案。例如在美国专利号5642309和韩国专利公开号2002-39744中披露了使用ISPP产生编程电压的电路。
如上所述,当使用ISPP方案对NOR闪存器件编程时,字线电压(例如,3V到10V,ΔV=0.3V)被施加到闪存单元的控制栅,约5V-6V的位线电压被施加到该闪存单元的漏极,并且低于0(例如,-1V)的电压被施加到闪存单元的整体或基板上。通常,流经存储单元的单元电流Icell正比于(VGS-Vt)2,其中,Vt是存储单元的阈值电压,VGS是存储单元的栅对源电压。利用电荷泵(未示出)产生和保持位线电压。在流经存储单元的单元电流量超过用于位线电压的电荷泵的容量的情况下,位线电压下降到低于一预定电压电平。在如图1虚线所示的编程操作期间,当位线电压(即,漏极电压)降低时,闪存单元的阈值电压不能增加所希望的量。特别是,当根据ISPP方案执行连续的程序循环时,闪存单元的阈值电压和字线电压之间的差稳定地增加。结果,已编程单元的各种特征被破坏,或者可能发生编程故障。
与位线电压类似,也使用电荷泵(未示出)产生并保持整体电压。当流经存储单元的单元电流量超过用于该整体电压的电荷泵的量时,该整体电压增加到高于预定电压。当该整体电压增加到高于预定电压时,如图1虚线所示,在编程操作期间,闪存单元的阈值电压不能增加所希望的量。特别是,当根据ISPP方案执行连续的程序循环时,闪存单元的阈值电压与字线电压之间的差稳定增加。结果,已编程单元的各种特征被破坏,并可能发生编程故障。
因此,特别需要能够避免由增加的整体电压或降低的位线电压所引起的编程故障的新途径。
发明内容
根据本发明的一个实施例,提供了一种对非易失性存储器件编程的方法。该方法包括:将字线电压和位线电压施加到非易失性存储器件的存储单元;在与第一程序循环相关的第一编程周期期间检测位线电压是否低于一预定的检测电压;和基于检测结果,确定与在第一程序循环之后的第二程序循环相关的第二编程周期的编程条件。
根据本方面的另一实施例,提供了一种对非易失性存储器件编程的方法,该方法包括:将字线电压、位线电压和整体电压施加到非易失性存储器件的存储单元;在与第一程序循环相关的第一编程周期期间检测整体电压是否变得高于预定检测电压;和基于检测结果,确定与在第一程序循环之后的第二程序循环相关的第二编程周期的编程条件。
根据本发明的另一实施例,提供了一种对非易失性存储期间编程的方法,该方法包括:执行多次程序循环,其中,每次程序循环包括编程周期和程序验证周期。在该方法中,基于程序状态是否满足第一程序循环,确定在第一程序循环之后的第二程序循环的编程条件。使得第二程序循环的编程条件与在程序状态满足第一程序循环情况下在第一程序循环中使用的编程条件相同。否则,使得第二程序循环的编程条件不同于在第一程序循环中使用的编程条件。典型的,这包括增加用于第二程序循环的字线电压。
根据本发明的再一个实施例,提供了一种非易失性存储器件。该器件包括:第一电压产生电路,用于产生被施加给该非易失性存储器件的存储单元的第一电压;第二电压产生电路,用于产生被施加给所述存储单元的第二电压;和控制电路,用于产生具有基于在与第一程序循环相关的第一编程周期期间所述第二电压是否低于一预定检测电压的逻辑状态的控制信号。控制电路控制第一电压产生电路,以便在第一编程周期期间第二电压低于预定检测电压的情况下,在与在第一程序循环之后的第二程序循环相关的第二编程周期期间以相同的电平产生第一电压。
根据本发明的另一个实施例,非易失性存储器件包括:第一电压发生电路,用于产生施加到该非易失性存储器件中的存储单元的第一电压,第二电压产生电路,用于产生施加到所述存储单元的第二电压;和控制电路。所述控制电路产生具有依据在与第一程序循环相关的第一编程周期期间第二电压是否变得高与预定检测电压的逻辑状态的控制信号。该控制电路控制第一电压产生电路,以便在第一编程周期期间第二电压变得高于所述预定检测电压的情况下,在与在第一程序循环之后的第二程序循环相关的第二编程周期期间以相同的电平产生第一电压。
附图说明
下面将结合在附图中示出的几个实施例来描述本发明。在整个附图中,相同的参考数字表示相同的范例性元件、部件或步骤。在附图中:
图1的曲线示出了在非易失性存储器件的编程操作期间字线和阈值电压的变化;
图2的框图简要示出了根据本发明第一实施例的非易失性存储器件;
图3的框图示出了图2所示的步进保持电路;
图4的波形定时图示出了根据本发明第一实施例的非易失性存储器件的编程操作;
图5和图6的框图示出了图2所示步进保持电路的其它实施例;
图7的框图简要示出了根据本发明第二实施例的非易失性存储器件;
图8的框图示出了图7所示的步进保持电路;和
图9的波形定时图示出了根据本发明第二实施例的非易失性存储器件的编程操作。
具体实施方式
下面将参照附图描述本发明的范例性实施例。这些实施例是作为教导例给出的。本发明的实际范围由所附权利要求来定义。
图2和图7的简单框图示出了根据本发明各实施例的非易失性存储器件。虽然图2和图7所示的非易失性存储器件是NOR闪存器件,但也可以使用诸如掩膜只读存储器(MROM)、可编程只读存储器(PROM)、铁电随机存取存储器(FRAM)和NAND闪存等其它种类的非易失性存储器来实施本发明。
在非易失性存储器件中,编程操作通常包括多次程序循环,每次程序循环包括编程周期和程序验证周期。在编程周期期间,输入数据被编程到所选择的存储单元中,在程序验证周期期间,确定所选择的存储单元是否被正确地编程。在使用ISPP方案的非易失性存储器件中,当执行多次程序循环时,在每次循环期间字线电压被逐渐增加预定的量,直到达到用于所选择的存储单元的所希望的阈值电压为止。
参看图2,非易失性存储器件100包括具有沿着行或字线WL0-WLm和列或位线BL0-BLn以矩阵形式排列的存储单元的存储单元阵列110。行选择电路120根据预定的行地址信息选择字线WL0-WLm之一,并利用由字线电压产生电路210提供的字线电压VWL1来驱动字线。列选择电路130根据预定的列地址信息以例如字或字节为单位选择位线BL0-BLn。
读出放大电路140根据所选择的字线和位线从存储单元中读出数据位。由读出放大电路140读出的数据位通常被依据存储器件的特定操作模式输出给外部电路或发送给通过/故障检查电路180。例如,在存储器件处于读操作模式的情况下,由读出放大电路140读出的数据位被输出给外部电路。相反,在存储器件处于程序操作模式的情况下由读出放大电路140读出的数据位被发送给通过/故障检查电路180。
写驱动器电路150在程序操作模式期间响应位线使能信号BLEN1工作。在程序操作模式期间,写驱动器150利用其电平依据在该程序操作模式期间数据是否将被编程到存储单元阵列100的电压来驱动由列选择电路130选择的位线。例如,在数据将被编程到存储单元阵列100的情况下,写驱动器150利用位线电压VBL驱动所选择的位线。否则,写驱动器150利用例如是地的低于位线电压VBL的电压来驱动所选择的位线。
位线电压产生电路160响应来自控制逻辑电路190的控制信号产生位线电压VBL。步进保持电路170响应位线使能信号BLEN1工作并在每次程序循环的每个编程周期期间检测位线电压VBL是否下降到低于预定的检测电压。步进保持电路170根据位线电压VBL的电平产生步进保持信号STEP_HOLD1。例如,在位线电压VBL高于检测电压的场合,步进保持电路170去激活(即,设置为第一逻辑状态)步进保持信号STEP_HOLD1。但是,在位线电压VBL下降到低于为每个编程周期而建立的检测电压的场合,步进保持电路170激活(即,设置为第二逻辑状态)步进保持信号STEP_HOLD1。
在程序验证周期期间,通过/故障检查电路180确定由读出放大电路140读出的数据位是否处于已编程状态,并根据确定的结果输出通过/故障信号PF给控制逻辑电路190。
控制逻辑电路190控制由非易失性存储器件执行的各种操作。例如,在编程操作中,控制逻辑电路190在每次程序循环的编程周期期间激活位线使能信号BLEN1。然后,在每次程序循环的程序验证周期中,控制逻辑电路190根据通过/故障信号PF确定所选择的存储单元是否已经被完全编程。在通过/故障信号PF表示所选择的存储单元已经被完全编程的场合,控制逻辑电路190使得编程操作结束。通常,这是在已经执行了数个程序循环之后发生的。否则,在通过/故障信号PF表示所选择的存储单元还没有被完全编程的场合,控制逻辑电路190使得执行进一步的程序循环。一旦程序验证操作完成和编程操作没有结束,控制逻辑电路190激活上升(step-up)脉冲信号STEP_UP1。
步进控制电路200接收步升脉冲信号STEP_UP1和步进保持信号STEP_HOLD1并控制字线电压发生电路210以在编程操作期间逐渐增加字线电压VWL1。在步升脉冲信号STEP_UP1被激活和步进保持信号STEP_HOLD1被去激活的场合,步进控制电路200控制字线电压产生电路210,以使字线电压VWL1相对其先前程序循环中的值增加预定的量。在步升脉冲信号STEP_UP1被激活和步进保持信号STEP_HOLD1也被激活的场合,步进控制电路200控制字线电压产生电路210,以将字线电压VWL1保持与在先前程序循环中相同的值。字线电压产生电路210响应来自步进控制电路200的控制信号而产生字线电压VWL1。例如在前述美国专利号5,642,309和韩国专利公开号2002-39744中披露了使用ISPP方案的范例性字线电压产生电路。
如上所述,在特定程序循环的编程周期期间位线电压VBL变得低于预定检测电压的场合,步进保持信号STEP_HOLD1被激活。在步进保持信号STEP_HOLD1被激活的场合,步进控制电路200控制字线电压产生电路210,以使得在下一个程序循环的编程周期期间字线电压VWL1保持相同。换言之,在使用ISPP方案的非易失性存储器件中,在位线电压VBL1变得低于预定检测电压的场合,在连续的程序循环期间被提供给所选择字线的字线电压保持恒定。这意味着在相同的编程条件下,存储单元可以被编程两次或更多次。
在图2所示的实施例中,步进保持电路170、控制逻辑电路190和步进控制电路200组成了用于控制字线电压产生电路210的控制电路。该控制电路根据位线电压VBL是否低于预定的检测电压来产生控制字线电压产生电路的控制信号。
图3的框图示出了图2所示的步进保持电路170的一实施例。
参看图3,步进保持电路170包括检测器171、脉冲发生器172和锁存器173。响应位线使能信号BLEN1而工作的检测器171检测位线电压VBL是否低于预定的检测电压并产生相应的检测信号DET1。虽然检测器171通常是在位线使能信号BLEN1被激活的间隔期间工作的,但是,检测器171也可以相反在每个编程周期期间工作。脉冲发生器172响应位线使能信号BLEN1的发送而产生初始化脉冲信号RST1。锁存器173具有接收位线使能信号BLEN1的输入端“D”、接收检测信号DET1的时钟端CLK和输出步进保持信号STEP_HOLD1的输出端“Q”。
一旦位线使能信号BLEN1被激活,脉冲发生器172就产生初始化脉冲信号RST1。响应该初始化脉冲信号RST1,步进保持信号STEP_HOLD1被初始化为第一逻辑状态。在位线使能信号BLEN1被激活的场合,检测器171检测位线电压VBL是否低于预定的检测电压。在位线电压VBL低于预定检测电压的场合,检测信号DET1被激活和步进保持信号STEP_HOLD1被激活。响应检测信号DET1被激活,锁存器173锁存位线使能信号BLEN1。
一旦在每个编程周期结束时位线使能信号BLEN1被去激活,检测器171被初始化,并且结果,检测信号DET1被复位成第一逻辑电平。
图4的波形定时图示出了根据本发明一个实施例的非易失性存储器件的编程操作。
参看图4,在编程操作开始时,位线电压产生电路160和字线电压产生电路210响应来自控制逻辑电路190的控制信号分别产生位线电压VBL和字线电压VWL1。在产生字线电压VWL1和位线电压VBL1的基础上,在控制逻辑电路190的控制下启动第一程序循环的编程周期。控制逻辑电路190控制行选择电路120并激活位线使能信号BLEN1,以便使字线电压VWL1被提供给所选择的字线。在激活位线使能信号BLEN1的基础上,写驱动器电路150将位线电压VBL1提供给由列选择电路130所选择的位线。在这些条件下,所选择的存储单元开始被编程。
步进保持电路170的锁存器173与位线使能信号BLEN1的激活同步被初始化。结果,步进保持信号STEP_HOLD1被初始化到第一逻辑状态。一旦位线使能信号BLEN1被激活,检测器171就检测位线电压VBL是否低于预定的检测电压Vt。如图4所示,由于位线电压VBL在第一编程周期期间高于所述检测电压Vt,检测信号DET1处于第一逻辑状态。结果,步进保持信号STEP_HOLD1在第一编程周期期间也处于第一逻辑状态。接着,位线使能信号BLEN1被去激活和所选择的字线被放电,由此完成了第一程序循环的该编程周期。
一旦完成了第一程序循环的该编程周期,则开始该第一程序循环的程序验证周期。在该程序验证周期内,使用已知的方法确定所选择的存储单元是否已经被完全编程,即,是否发生了编程故障。这是使用读出放大电路140、通过/故障检查电路180和控制逻辑电路190实现的。在通过/故障信号PF表示所选择的存储单元还没有被完全编程的场合,控制逻辑电路190激活步升脉冲信号STEP_UP1。步进控制电路200响应步升脉冲信号STEP_UP1和步进保持信号STEP-HOLD1控制字线电压产生电路210。由于步进保持信号STEP-HOLD1表示在图4中第一程序循环的编程周期期间位线电压VBL高于检测电压,所以,步进控制电路200控制字线电压产生电路210,以将字线电压VWL1增加预定值ΔV。
在开始第二程序循环的基础上,重复上述过程。如上所述,检测器171在第二程序循环的编程周期期间检测位线电压VBL是否降低到低于检测电压Vt。在位线电压VBL下降到低于检测电压Vt的场合,如在第二程序循环中看到的,检测信号DET1被激活。因此,由锁存器173输出的步进保持信号STEP_HOLD1被与检测信号DET1同步激活。然后,检测信号DET1被与位线使能信号BLEN1同步去激活,如图4所示,由此完成了第二程序循环的编程周期。
一旦第二程序循环的编程周期完成,就开始第二程序循环的程序验证周期。在该程序验证周期中,再一次使用已知的方法确定所选择的存储单元是否已经被完全编程。这是使用读出放大电路140、通过/故障检查电路180和控制逻辑电路190实现的。在通过/故障信号PF表示所述存储单元还没有被完全编程的场合,控制逻辑电路190激活步升脉冲信号STEP_UP1。步进控制电路200响应步升脉冲信号STEP_UP1和步进保持信号STEP_HOLD1控制字线电压产生电路210。如上所述,由于步进保持信号STEP_HOLD1表示位线电压VBL低于检测电压Vt,所以,步进控制电路200控制字线电压产生电路210,以便使字线电压VWL1被保持在与先前编程周期中相同的电压电平,即,字线电压VWL1未增加预定值ΔV。
在第三程序循环中,使用上述方法执行程序操作。有一点例外,在第三编程周期中使用的编程条件与在第二编程周期中使用的编程条件相同。换言之,字线电压VWL1被保持为与第二编程周期中相同的电平。但是,如图4所示,在第三编程周期中,在激活位线使能信号BLEN1的基础上,步进保持信号STEP_HOLD1被去激活。在第三程序循环之后,进一步执行一定数量的程序循环,直到所选择的存储单元都具有所希望的阈值电压为止,在此基础之上完成编程操作。
最后,在每个程序循环的编程周期中,借助于位线电压VBL是否下降到低于检测电压Vt来确定用于后续程序循环的编程条件。因此,根据位线电压VBL的电平,用于一个程序循环的的编程条件可以和先前程序循环的编程条件相同。结果,避免发生由于位线电压VBL的下降而引起的编程故障。
虽然图2所示的步进保持电路170被配置来用于检测发送给写驱动器电路150的位线电压VBL,但是,对于本领域普通技术人员来讲很明显,对步进保持电路170检测位线电压VBL可以做出各种修改。例如,如图5所示,步进保持电路170检测从写驱动器电路150输出的位线电压VBL。另外,如图6所示,步进保持电路170检测由列选择电路130发送的位线电压VBL。
图7的简要框图示出了根据本发明另一实施例的非易失性存储器件。参看图7,非易失性存储器件1000包括具有沿着行或字线WL0-WLm和列或位线BL0-BLn以矩阵形式排列的存储单元的存储单元阵列1100。行选择电路1200根据预定的行地址信息选择字线WL0-WLm之一,并利用由字线电压产生电路2100产生的字线电压VWL2驱动字线。列选择电路1300根据预定的列地址信息以一单位(例如字或字节)选择位线BL0-BLn。读出放大电路1400从对应于所选择字线和位线的存储单元中读出数据位。由读出放大电路1400读出的数据位通常被根据存储器件的特定操作模式或输出给外部电路或发送给通过/故障检查电路1800。例如,在存储器件处于读操作模式的场合,由读出放大电路1400读出的数据位被输出给外部电路。或者,在存储器件处于程序操作模式的场合,由读出放大电路1400读出的数据位在一程序循环的程序验证周期内被输出给通过/故障检查电路1800。
在存储器件的编程操作期间,位线使能信号BLEN2控制写驱动器电路1500利用其电平取决于数据是否将被编程到存储单元阵列1100中的电压来驱动所选择的位线。例如,在数据将被编程到存储器的场合,根据将被编程到存储单元阵列1100中的存储单元的数据,通过位线电压产生电路2200来产生位线电压VBL。例如,在数据将被编程到存储单元阵列1100的场合,写驱动器1500利用位线电压VBL驱动所选择的位线。否则,写驱动器150利用低于位线电压VBL的电压(例如地)驱动所选择的位线。
整体电压产生电路1600响应来自控制逻辑电路1900的控制信号而产生整体电压VBULK。步进保持电路1700响应位线使能信号BLEN2而工作,并检测整体电压VBULK是否变得高于预定的检测电压。步进保持电路1700根据检测的结果产生步进保持信号STEP_HOLD2。例如,在程序循环的编程周期期间检测到整体电压VBULK低于预定检测电压的场合,步进保持电路1700去激活步进保持信号STEP_HOLD2。在整体电压VBULK变得高于该预定检测电压的场合,步进保持电路1700激活步进保持信号STEP_HOLD2。
在程序验证周期期间,通过/故障检查电路1800确定由读出放大电路1400读出的所有数据位是否都处于编程状态,即,确定相应的存储单元是否都已经被完全编程。通过/故障检查电路1800然后基于确定结果输出通过/故障信号PF。
控制逻辑电路1900控制由非易失性存储器件执行的各种操作。例如,在编程操作中,控制逻辑电路1900在每次程序循环的编程周期期间激活位线使能信号BLEN2。这样,在每次程序循环的程序验证周期期间,控制逻辑电路1900根据通过/故障信号PF确定所选择的存储单元是否都已经被完全编程。在通过/故障信号PF表示所选择的存储单元已经被全部编程的场合,控制逻辑电路1900使得编程操作结束。通常,这发生在已经执行了数个程序循环之后。否则,在通过/故障信号PF表示所选择的存储单元还没有被完全编程的场合,控制逻辑电路1900使得执行进一步的程序循环。一旦程序验证操作完成和编程操作没有结束,控制逻辑电路1900激活步升脉冲信号STEP_UP2。
步进控制电路2000接收步升脉冲信号STEP_UP2和步进保持信号STEP_HOLD2,并控制字线电压产生电路2100,以便在该编程操作期间逐渐增加字线电压VWL2。在步升脉冲信号STEP_UP2被激活和步进保持信号STEP_HOLD2被去激活的场合,步进控制电路2000控制字线电压产生电路2100,以相对于先前程序循环中它的值将字线电压VWL2增加预定的量。在步升脉冲信号STEP_UP2被激活和步进保持信号STEP_HOLD2也被激活的场合,步进控制电路2000控制字线电压产生电路2100,以使字线电压VWL2保持在与先前程序循环中的相同值。字线电压产生电路2100响应来自步进控制电路2000的控制信号而产生字线电压VWL2。例如在前述美国专利号5642309和韩国专利公开号2002-39744中披露了使用ISPP方案的范例性字线电压产生电路。
如上所述,在一特定程序循环的编程周期期间整体电压VBULK变得高于预定的检测电压的场合,步进保持信号STEP_HOLD2被激活。在步进保持信号STEP_HOLD2被激活的场合,步进控制电路2000控制字线电压产生电路2100,以使字线电压VWL2在下一程序循环的编程周期期间保持不变。换言之,在使用ISPP方案的非易失性存储器件中,在整体电压VBULK变得高于预定检测电压的场合,提供给所选择字线的字线电压在后续的程序循环期间保持恒定。这意味着在相同的编程条件下存储单元被编程两次或更多次。
在图7所示的实施例中,步进保持电路1700、控制逻辑电路1900和步进控制电路2000构成了基于整体电压VBULK是否高于预定检测电压而控制字线电压产生电路2100的控制电路。
图8的框图示出了图7所示步进保持电路1700的一实施例。
参看图8,步进保持电路1700包括检测器171、脉冲发生器172和锁存器173。响应位线使能信号BLEN2而工作的检测器171检测整体电压VBULK是否高于预定的检测电压并产生相应的检测信号DET2。虽然在这种情况下,检测器171仅仅是当位线使能信号BLEN2被激活时才工作,但是,它也可以被配置来在每个编程周期期间工作。脉冲发生器172响应位线使能信号BLEN2的转变而产生初始化脉冲信号RST2。锁存器173具有用于接收位线使能信号BLEN2的输入端“D”、用于接收检测信号DET2的时钟端CLK和用于输出步进保持信号STEP_HOLD2的输出端“Q”。
一旦位线使能信号BLEN2被激活,脉冲发生器172就产生初始化脉冲信号RST2。响应该初始化脉冲信号RST2,步进保持信号STEP_HOLD2,被初始化为第一逻辑状态。在位线使能信号BLEN2被激活的场合,检测器171检测整体电压VBULK是否高于所述预定检测电压。在整体电压VBULK高于预定检测电压的场合,检测信号DET2被激活和步进保持信号STEP_HOLD2被激活。响应检测信号DET2的激活,锁存器173锁存位线使能信号BLEN2。
一旦在每个编程周期结束时位线使能信号BLEN2被去激活,检测器171被初始化,结果检测信号DET2被复位为第一逻辑电平。
图9的波形定时图示出了根据本发明一个实施例的非易失性存储器件的编程操作。
参看图9,在编程操作开始处,整体电压产生电路1600和字线电压产生电路2100响应来自控制逻辑电路1900的控制信号分别产生整体电压VBULK和字线电压VWL2。在产生字线电压VWL2和整体电压VBULK的基础上,在控制逻辑电路1900的控制下启动第一程序循环的编程周期。控制逻辑电路1900控制行选择电路1200和激活位线使能信号BLEN2,从而将字线电压VWL2提供给所选择的字线。在激活位线使能信号BLEN2的基础上,写驱动器电路1500将位线电压提供给由列选择电路130所选择的位线,并且整体电压VBULK被提供给存储单元阵列1100。在这些条件下,所选择的存储单元开始被编程。
步进保持电路1700的锁存器173被与位线使能信号BLEN2的激活同步初始化。结果,步进保持信号STEP_HOLD2被初始化为第一逻辑状态。一旦位线使能信号BLEN2被激活,检测器171就检测整体电压VBULK是否高于一预定的检测电压Vt。如图9所示,由于整体电压VBL在第一编程周期期间低于检测电压Vt,所以,检测信号DET2处于第一逻辑状态。结果,步进保持信号STEP_HOLD2在第一编程周期期间也处于第一逻辑状态。接着,位线使能信号BLEN2被去激活和所选择的字线被放电,由此,完成了第一程序循环的编程周期。
一旦完成第一程序循环的编程周期,就开始第一程序循环的程序验证周期。在该程序验证周期内,使用已知的方法确定所选择的存储单元是否已经被完全编程,即,确定是否发生了编程故障,这是使用读处放大器电路1400、通过/故障检查电路1800和控制逻辑电路1900实现的。在通过/故障信号PF表示所选择的存储单元还没有被完全编程的场合,控制逻辑电路1900激活步升脉冲信号STEP_UP2。步进控制电路2000响应步升脉冲信号STEP_UP2和步进保持信号STEP_HOLD2而控制字线电压产生电路2100。由于步进保持信号STEP_HOLD2表示在图9所示第一程序循环的编程周期期间整体电压VBULK低于检测电压,所以,步进控制电路2000控制字线电压产生电路2100,以使字线电压VWL2增加预定的值ΔV。
在开始第二程序循环的基础上,重复上述过程。如上所述,检测器171在第二程序循环的编程周期期间检测整体电压VBULK是否变得高于检测电压Vt。在整体电压VBULK变得高于检测电压Vt的场合,如在第二程序循环中看到的,检测信号DET2被激活。因此,由锁存器173输出的步进保持信号STEP_HOLD2被与检测信号DET2同步激活。然后,该检测信号DET2被与位线使能信号BLEN2同步去激活,如图9所示,由此完成了第二程序循环的编程周期。
一旦完成第二程序循环的编程周期,就开始第二程序循环的程序验证周期。在该程序验证周期中,仍然使用已知的方法确定所选择的存储单元是否已经被完全编程。这是使用读出放大电路1400、通过/故障检查电路1800和控制逻辑电路1900实现的。在通过/故障信号PF表示存储单元还没有被完全编程的场合,控制逻辑电路1900激活步升脉冲信号STEP_UP2。步进控制电路2000响应步升脉冲信号STEP_UP2和步进保持信号STEP_HOLD2而控制字线电压产生电路2100。如上所述,由于步进保持信号STEP_HOLD2表示整体电压VBULK高于检测电压Vt,所以,步进控制电路2000控制字线电压产生电路2100,以使字线电压VWL2被保持在与先前编程周期中相同的电压电平,即,字线电压VWL2未增加预定的值ΔV。
在第三程序循环中,使用上述方法执行程序操作。有一点例外,在第三编程周期中使用的编程条件与在第二编程周期中使用的编程条件相同。换言之,字线电压VWL2被保持在和第二编程周期中相同的电平。但是,如图9所示,在第三编程周期中,在激活位线使能信号BLEN2的基础上步进保持信号STEP_HOLD2被去激活。在第三程序循环之后,还要执行一定数量的程序循环,直到所选择的存储单元具有所希望的阈值电压为止,在此基础之上,完成编程操作。
总之,在每次程序循环的编程周期内,通过整体电压VBULK是否下降到低于检测电压Vt来确定连续程序循环的编程条件。因此,基于整体电压VBULK的电平,用于一个程序循环的编程条件可以和用于先前程序循环的编程条件相同。结果,避免发生由于整体电压VBULK的增加而导致的编程故障。
如上所述,可以避免发生由于位线电压的减小或整体电压的增加而导致的编程故障。在位线电压上升到高于第一预定检测电压或整体电压上升到高于第二预定检测电压的情况下,用于对存储单元编程的字线电压保持为与在两个连续程序循环期间的电平相同。
前述的范例性实施例是教导例。本领域普通技术人员应当理解,在不脱离由权利要求书定义的本发明的范围的前提下,可以在形式和细节上对这些范例性实施例做出各种修改。
Claims (9)
1.一种编程非易失性存储器件的方法,该方法包括:
将字线电压和位线电压施加到非易失性存储器件的存储单元;
在与第一编程循环相关的第一编程周期期间,检测位线电压是否下降到低于预定检测电压;和
基于位线电压检测的结果,确定用于与在第一编程循环之后的第二编程循环相关的第二编程周期的编程条件,
其中,确定用于第二编程周期的编程条件包括:
当在第一编程周期期间检测到位线电压下降到低于预定检测电压时,在第二编程周期期间将与在第一编程周期期间施加到存储单元的字线电压相同的字线电压施加到所述存储单元;和
当在第一编程周期期间检测到位线电压没有下降到预定检测电压之下时,在第二编程周期期间将通过把在第一编程周期期间施加到存储单元的字线电压递增预定量而获得的字线电压施加到所述存储单元,
其中,第一和第二编程循环的每一个包括编程周期和编程验证周期。
2.如权利要求1所述的方法,其中,检测位线电压是否下降到低于预定检测电压只发生在位线使能信号被激活时。
3.一种非易失性存储器件,包括:
第一电压产生电路,用于产生施加到非易失性存储器件中的存储单元的第一电压;
第二电压产生电路,用于产生施加到所述存储单元的第二电压;和
控制电路,用于产生具有一逻辑状态的控制信号,所述逻辑状态根据在与第一编程循环相关的第一编程周期期间与预定检测电压相关的第二电压电平的确定而变化;
其中,控制电路控制第一电压产生电路,以当在第一编程周期期间第二电压下降到所述预定检测电压之下时在与第一编程循环之后的第二编程循环相关的第二编程周期期间产生具有第一电压电平的第一电压,
其中,控制电路控制第一电压产生电路,以当在第一编程周期期间第二电压没有下降到所述预定检测电压之下时在第二编程周期期间产生第二电压电平的第一电压,所述第二电压电平是通过将第一电压电平递增预定值获得的,其中,第一电压是字线电压,和第二电压是位线电压,
其中,第一和第二编程循环的每一个包括编程周期和编程验证周期。
4.如权利要求3所述的器件,其中,控制电路包括:
控制逻辑电路,用于在每个编程循环期间激活步升脉冲信号;
步进保持电路,用于在第一编程周期期间在第二电压下降到低于预定检测电压的场合激活步进保持信号;和
步进控制电路,用于响应步升脉冲信号和步进保持信号而控制第一电压产生电路。
5.如权利要求4所述的器件,其中,步进保持电路接收第二电压。
6.如权利要求4所述的器件,其中,第二电压被经过位线施加到存储单元,和步进保持电路检测该位线上的第二电压。
7.如权利要求4所述的器件,还包括利用第二电压驱动存储单元的写驱动器,
其中,步进保持电路检测从写驱动器电路输出的第二电压。
8.如权利要求4所述的器件,其中,步进保持电路在每个编程循环的编程周期期间响应由控制逻辑电路输出的信号而检测第二电压的电平。
9.如权利要求8所述的器件,其中,由控制逻辑电路输出的信号是位线使能信号。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR85749/04 | 2004-10-26 | ||
KR1020040085749A KR100572332B1 (ko) | 2004-10-26 | 2004-10-26 | 불 휘발성 메모리 장치 및 그것의 프로그램 방법 |
KR1020040089952A KR100648272B1 (ko) | 2004-11-05 | 2004-11-05 | 불 휘발성 메모리 장치 및 그것의 프로그램 방법 |
KR89952/04 | 2004-11-05 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1783343A CN1783343A (zh) | 2006-06-07 |
CN1783343B true CN1783343B (zh) | 2011-08-10 |
Family
ID=36773367
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2005101180820A Expired - Fee Related CN1783343B (zh) | 2004-10-26 | 2005-10-25 | 非易失性存储器件及其编程方法 |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR100572332B1 (zh) |
CN (1) | CN1783343B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100829791B1 (ko) * | 2006-10-12 | 2008-05-19 | 삼성전자주식회사 | 플래시 메모리 장치의 전압 공급 회로, 이를 포함하는 플래시 메모리 장치 및 플래시 메모리 장치의 프로그램 전압 공급 방법 |
KR101523677B1 (ko) * | 2009-02-26 | 2015-05-28 | 삼성전자주식회사 | 플래시 메모리 장치 및 그것의 프로그램 방법 그리고 그것을 포함하는 메모리 시스템 |
US8054691B2 (en) * | 2009-06-26 | 2011-11-08 | Sandisk Technologies Inc. | Detecting the completion of programming for non-volatile storage |
JP2018113084A (ja) * | 2017-01-06 | 2018-07-19 | 東芝メモリ株式会社 | 半導体記憶装置 |
CN109427405B (zh) * | 2017-08-31 | 2021-03-12 | 北京兆易创新科技股份有限公司 | 一种NOR Flash的编程方法和编程装置 |
CN108053853A (zh) * | 2017-12-25 | 2018-05-18 | 珠海博雅科技有限公司 | 字线电压产生电路和方法、编程装置和方法 |
CN109524047B (zh) * | 2018-10-15 | 2021-04-16 | 上海华虹宏力半导体制造有限公司 | 快闪存储器的字节编程重试方法 |
KR20210038189A (ko) * | 2019-09-30 | 2021-04-07 | 에스케이하이닉스 주식회사 | 저장 장치 및 그 동작 방법 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1139276A (zh) * | 1994-09-09 | 1997-01-01 | 三星电子株式会社 | 非易失性半导体存储器件中的自动编程电路 |
CN1146053A (zh) * | 1995-06-20 | 1997-03-26 | 日本电气株式会社 | 非易失半导体存储器 |
US6266270B1 (en) * | 1998-07-23 | 2001-07-24 | Sony Corporation | Non-volatile semiconductor memory and programming method of the same |
-
2004
- 2004-10-26 KR KR1020040085749A patent/KR100572332B1/ko not_active IP Right Cessation
-
2005
- 2005-10-25 CN CN2005101180820A patent/CN1783343B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1139276A (zh) * | 1994-09-09 | 1997-01-01 | 三星电子株式会社 | 非易失性半导体存储器件中的自动编程电路 |
CN1146053A (zh) * | 1995-06-20 | 1997-03-26 | 日本电气株式会社 | 非易失半导体存储器 |
US6266270B1 (en) * | 1998-07-23 | 2001-07-24 | Sony Corporation | Non-volatile semiconductor memory and programming method of the same |
Non-Patent Citations (1)
Title |
---|
CN 1139276 A,权利要求1,9. |
Also Published As
Publication number | Publication date |
---|---|
CN1783343A (zh) | 2006-06-07 |
KR100572332B1 (ko) | 2006-04-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1783343B (zh) | 非易失性存储器件及其编程方法 | |
US7286413B2 (en) | Non-volatile memory device and method of programming same | |
KR100332001B1 (ko) | 반도체불휘발성기억장치 | |
JP4896426B2 (ja) | 動作モードに応じてプログラム電圧の増加分を可変とすることができる不揮発性メモリ装置 | |
KR100634172B1 (ko) | 불 휘발성 메모리 장치 및 그것의 프로그램 방법 | |
US7239554B2 (en) | Nonvolatile memory device and method of improving programming characteristic | |
US7630263B2 (en) | Exploiting a statistical distribution of the values of an electrical characteristic in a population of auxiliary memory cells for obtaining reference cells | |
KR100672984B1 (ko) | 프로그램 시간을 줄일 수 있는 플래시 메모리 장치 | |
KR100322470B1 (ko) | 고밀도 노어형 플래시 메모리 장치 및 그것의 프로그램 방법 | |
WO1995005664A1 (en) | Self-recovering erase scheme for flash memory | |
US7245537B2 (en) | Nonvolatile memory device and method of programming same | |
US6081870A (en) | Method and apparatus to achieve fast suspend in flash memories | |
US7697342B2 (en) | Flash memory device and related high voltage generating circuit | |
US7649785B2 (en) | Flash memory device and related high voltage generating circuit | |
CN108335709B (zh) | 操作用于改变恢复区段的非易失性存储器装置的方法 | |
US6108263A (en) | Memory system, method for verifying data stored in a memory system after a write cycle and method for writing to a memory system | |
US7420852B2 (en) | Non-volatile memory device providing controlled bulk voltage during programming operations | |
US7180790B2 (en) | Non-volatile memory device having controlled bulk voltage and method of programming same | |
KR100621637B1 (ko) | 프로그램 시간을 단축시킬 수 있는 플래시 메모리 장치 및그것의 프로그램 방법 | |
KR100648272B1 (ko) | 불 휘발성 메모리 장치 및 그것의 프로그램 방법 | |
Marotta et al. | Memory circuit technologies | |
TW202211247A (zh) | 半導體儲存裝置以及編程方法 | |
KR20000033380A (ko) | 불휘발성 반도체 메모리 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20110810 Termination date: 20121025 |