CN110036446A - 用于对存储器系统编程的方法 - Google Patents
用于对存储器系统编程的方法 Download PDFInfo
- Publication number
- CN110036446A CN110036446A CN201980000346.2A CN201980000346A CN110036446A CN 110036446 A CN110036446 A CN 110036446A CN 201980000346 A CN201980000346 A CN 201980000346A CN 110036446 A CN110036446 A CN 110036446A
- Authority
- CN
- China
- Prior art keywords
- programming
- storage unit
- programming operation
- threshold voltage
- voltage
- 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
Links
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/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
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/56—Digital 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/5621—Digital 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/5628—Programming or writing circuits; Data input 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/10—Programming or data input 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/3404—Convergence or correction of memory cell threshold voltages; Repair or recovery of overerased or overprogrammed cells
-
- 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/3468—Prevention of overerasure or overprogramming, e.g. by verifying whilst erasing or writing
- G11C16/3486—Circuits or methods to prevent overprogramming of nonvolatile memory cells, e.g. by detecting onset or cessation of current flow in cells and using the detector output to terminate programming
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2211/00—Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C2211/56—Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
- G11C2211/562—Multilevel memory programming aspects
- G11C2211/5622—Concurrent multilevel programming of more than one cell
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2211/00—Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C2211/56—Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
- G11C2211/562—Multilevel memory programming aspects
- G11C2211/5624—Concurrent multilevel programming and programming verification
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Read Only Memory (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
Abstract
一种存储器系统包括多个存储单元,并且存储单元为多电平单元。存储器系统执行编程操作以对存储单元编程。在每次编程操作之后,执行至少一次阈值电压测试,以判断存储单元的阈值电压是否大于验证电压。在确定第一存储单元的阈值电压大于第一验证电压时,将禁止所述第一存储单元在下一编程操作期间被编程。在确定第二存储单元的阈值电压新近变得大于第二验证电压时,其中第二验证电压大于第一验证电压,将在下一编程操作期间再次对第二存储单元编程。
Description
技术领域
本发明涉及一种用于对存储器系统编程的方法,并且更具体而言,涉及一种用于对存储器系统编程以减少保留错误的方法。
背景技术
NAND闪存存储器是一种已经广泛用于包括笔记本、移动电话和硬盘驱动器的很多领域中的非易失性存储介质。不过,NAND闪存存储器中存储的数据可能并非一直稳定且固定。例如,在闪存存储单元随时间推移而失去电荷时,闪存存储单元中存储的数据可能会变化并变为无效。在闪存存储单元是多电平单元(MLC)时,保留错误甚至更有害。
导致保留错误的原因之一被称为瞬时(或初始)阈值电压(Vt)漂移(IVS),这意味着由编程操作提升的阈值电压可能在编程操作之后的短时间段内下降。有时,IVS可能会大到200mV到300mV。在该情况下,将会减小读取裕量,并且一些闪存存储单元中存储的数据可能变为无效。
发明内容
本发明的一个实施例公开了一种用于对存储器系统编程的方法。存储器系统包括多个存储单元,并且多个存储单元为多电平单元(MLC)。
该方法包括:执行多次编程操作,以对多个存储单元编程,在多次编程操作中的每次之后,执行至少一次阈值电压测试,以判断多个存储单元的阈值电压是否大于至少一个验证电压,在确定第一存储单元的阈值电压大于对应于低于预定编程状态的编程状态的验证电压时,禁止第一存储单元在下一编程操作期间被编程,并且在确定第二存储单元的阈值电压新近变得大于对应于不低于预定编程状态的编程状态的验证电压时,在下一编程操作期间保持对第二存储单元编程。
本发明的另一个实施例公开了一种用于对存储器系统编程的方法。存储器系统包括多个存储单元,并且多个存储单元为多电平单元(MLC)。
该方法包括:执行多次编程操作,以对多个存储单元编程,在多次编程操作中的每次之后,执行至少一次阈值电压测试,以判断多个存储单元的阈值电压是否大于至少一个验证电压,在确定第一存储单元的阈值电压大于第一验证电压时,禁止第一存储单元在下一编程操作期间被编程,并且在已经执行预定次数的编程操作之后,提高要在后续阈值电压测试中测试的验证电压。
本发明的另一个实施例公开了一种用于对存储器系统编程的方法。存储器系统包括多个存储单元,并且多个存储单元为多电平单元(MLC)。
该方法包括:执行多次编程操作,以对多个存储单元编程,在多次编程操作中的每次之后,执行至少一次阈值电压测试,以判断多个存储单元的阈值电压是否大于至少一个验证电压,在确定第一存储单元的阈值电压大于第一验证电压时,禁止第一存储单元在下一编程操作期间被编程,并且在执行对应于多个存储单元的目标编程状态的阈值电压测试之后,提高要在后续阈值电压测试中测试的对应于多个存储单元的所有编程状态的验证电压。
本发明的另一个实施例公开了一种存储器系统。存储器系统包括耦合到至少一个字线的多个存储单元、以及耦合到至少一个字线的控制电路。多个存储单元是多电平单元(MLC)。
控制电路通过经由至少一个字线提供编程电压而执行多次编程操作以对多个存储单元编程,在多次编程操作中的每个之后,执行至少一次阈值电压测试,以判断多个存储单元的阈值电压是否大于至少一个验证电压。在确定第一存储单元的阈值电压大于对应于低于预定编程状态的编程状态的验证电压时,控制电路禁止第一存储单元在下一编程操作期间被编程。在确定第二存储单元的阈值电压新近变得大于对应于不低于预定编程状态的编程状态的验证电压时,控制电路在下一编程操作期间保持对第二存储单元编程。
在阅读各种附图和绘图中所示的优选实施例的以下具体实施方式之后,本发明的这些和其它目的将毫无疑义地对本领域普通技术人员显而易见。
附图说明
图1示出了根据本发明的一个实施例的存储器系统。
图2示出了根据本发明的一个实施例的用于操作图1中的存储器系统的方法。
图3示出了根据本发明的另一个实施例的用于操作图1中的存储器系统的方法。
具体实施方式
图1示出了根据本发明的一个实施例的存储器系统100。存储器系统100包括多个存储单元MCA(1,1)到MCA(M,N)以及控制电路110,其中M和N为正整数。在本发明的一些实施例中,存储器系统100可以是闪存存储器,例如NAND型闪存存储器。
在图1中,N个存储单元可以耦合到同一对应字线。例如,存储单元MCA(1,1)到MCA(1,N)可以耦合到字线WL1,并且存储单元MCA(M,1)到MCA(M,N)可以耦合到字线WLM。而且,控制电路110耦合到字线WL1到WLM,以用于控制存储单元MCA(M,1)到MCA(M,N),以用于编程操作。
在一些实施例中,可以通过经由字线施加编程电压而同时对耦合到同一字线的存储单元进行编程。
在一些实施例中,存储单元MCA(1,1)到MCA(M,N)可以是多电平单元(MLC),包括四电平单元(QLC)和三电平单元(TLC)。亦即,存储单元MCA(1,1)到MCA(M,N)中的每者可以存储多种位状态的数据。
例如,存储单元MCA(1,1)到MCA(M,N)中的每者可以包括浮栅晶体管FT。在存储单元MCA(1,1)到MCA(M,N)的编程操作期间,存储单元MCA(1,1)到MCA(M,N)的浮栅晶体管FT的栅极端子可以从字线WL1到WLM接收编程电压,并且存储单元MCA(1,1)到MCA(M,N)的浮栅晶体管FT的第一端子可以接收参考电压。在一些实施例中,编程电压可以大于参考电压,并且因而浮栅晶体管FT的栅极端子和第一端子之间的高交叉电压将向浮栅晶体管FT的栅极结构注入电子,从而提高浮栅晶体管FT的阈值电压。
通过向浮栅晶体管FT的栅极结构注入足够的电子,浮栅晶体管FT的阈值电压将被提高到期望电平。因此,可以根据存储单元MCA(1,1)到MCA(M,N)的浮栅晶体管FT的阈值电压的电平来识别存储单元MCA(1,1)到MCA(M,N)中存储的数据的状态。
例如,存储单元MCA(1,1)到MCA(M,N)能够存储八种不同的数据状态。在该情况下,如果存储单元MCA(1,1)的阈值电压小于第一验证电压,那么可以将存储单元MCA(1,1)视为未被编程,并且可以将存储单元MCA(1,1)视为具有第一编程状态。不过,如果存储单元MCA(1,1)的阈值电压大于第一验证电压,那么可以将存储单元MCA(1,1)视为被编程为具有第二编程状态。而且,如果存储单元MCA(1,1)保持被编程为使其阈值电压大于第二编验证电压,该第二验证电压大于第一验证电压,那么存储单元MCA(1,1)将被视为被编程为具有第三编程状态,以此类推。在一些其它实施例中,存储单元MCA(1,1)到MCA(M,N)能够存储更多或更少的数据状态,并且根据应用需要,数据状态可以由具有不同级的阈值电压表示。
不过,在将存储单元MCA(1,1)到MCA(M,N)编程到阈值电压的期望电平之后,存储单元MCA(1,1)到MCA(M,N)的阈值电压可以在短时间段内下降,这就是所谓的瞬时阈值电压漂移(或初始阈值电压漂移)。瞬时阈值电压漂移可能导致存储单元MCA(1,1)到MCA(M,N)中的一些的阈值电压下降到验证电压以下,由此导致存储单元MCA(1,1)到MCA(M,N)中的一些中存储的数据出错。
为了解决瞬时阈值电压漂移导致的问题,已经证实多次编程是有效的。亦即,在已经将存储单元编程为使其阈值电压变得大于对应的验证电压之后,可以对存储单元执行附加的编程操作以减小存储单元的瞬时阈值电压漂移。
图2示出了根据本发明的一个实施例的用于操作存储器系统100的方法200。在一些实施例中,方法200可以包括图2所示的步骤S210到S280,但不限于图2中所示的顺序。
S210:执行编程操作以对存储单元MCA(1,1)到MCA(M,N)进行编程;
S220:在编程操作之后,执行至少一次阈值电压测试,以判断存储单元MCA(1,1)到MCA(M,N)的阈值电压是否大于至少一个验证电压;
S230:如果已经执行了预定数量的编程操作,前进到步骤S240,否则前进到步骤S250;
S240:如果确定存储单元的阈值电压新近变得大于对应于不低于预定编程状态的编程状态的验证电压,前进到步骤S242,否则前进到步骤S250;
S242:在下一个编程操作期间保持对存储单元编程;
S250:如果确定存储单元大于对应的验证电压,禁止存储单元在下一编程操作期间被编程;
S260:如果有超过目标数量的存储单元尚未通过对应阈值电压测试,则前进到步骤S270,否则前进到步骤S280;
S270:如果已经执行了最大数量的编程操作,前进到步骤S272,否则前进到步骤S210;
S272:确定编程过程已失败。
S280:确定编程过程已成功。
在一些实施例中,可以由控制电路110执行步骤S210到S280。即,控制电路110能够根据编程进度提供期望的编程电压。
在步骤S210中,可以执行编程操作以提高存储单元MCA(1,1)到MCA(M,N)的阈值电压,并且在每次执行编程操作之后,可以执行至少一次阈值电压测试,以判断存储单元MCA(1,1)到MCA(M,N)的阈值电压是否大于至少一个验证电压。例如,可以执行编程操作以将存储单元MCA(1,1)编程为具有第二编程状态。在该情况下,将在步骤S220中执行对应于第二编程状态的阈值电压测试。而且,同一编程操作也可以将存储单元MCA(1,2)编程为具有第三编程状态。在该情况下,也将在步骤S220中执行对应于第三编程状态的阈值电压测试。
通常,如果存储单元MCA(1,1)意在被编程为具有第二编程状态并且存储单元MCA(1,1)已经通过了对应于第二编程状态的阈值电压测试,那么在下一编程操作期间会禁止存储单元MCA(1,1),如步骤S250中所示。不过,如果存储单元MCA(1,1)未通过对应于第二编程状态的阈值电压测试,意味着存储单元MCA(1,1)的阈值电压仍然小于对应验证电压,那么将在下一编程操作期间对存储单元MCA(1,1)编程以保持提升其阈值电压。
在图2中,为了减小瞬时阈值电压漂移,在已经执行预定数量的编程操作并确定存储单元的阈值电压新近变得大于不小于预定验证电压的验证电压时,可以施加重新编程方案。亦即,为了将存储单元编程到更高编程状态,可以施加附加的编程操作以进一步保证阈值电压。
例如,在一些实施例中,预定验证电压可以对应于第六编程状态。在该情况下,如果存储单元MCA(1,2)意在被编程到第六编程状态并且已经在步骤S220中被确定为新近变得大于对应于第六编程状态的验证电压,则存储单元MCA(1,2)将在下一编程操作期间被再次编程,而非被禁止。因此,可以减小瞬时阈值电压漂移对存储单元MCA(1,2)的影响。
对意在被编程到较高编程状态的存储单元执行附加的编程操作,因为在存储单元的阈值电压变得更高时,瞬时阈值电压漂移的问题可能变得更显著。而且,如果在存储单元具有较低编程状态时增加附加的编程操作,那么存储单元在它们被编程为具有较高编程状态时可能被过度编程,这可能会使存储单元劣化并导致不稳定。
因此,在步骤S230中,将在施加附加的编程操作之前检查所执行的编程操作的数量,以防止过度编程。例如,在一些实施例中,在第18次编程操作之前,在下一编程操作期间将始终禁止通过阈值电压测试的存储单元,如步骤S250中所示。不过,在第17次编程操作之后,将对被确定为新近变得大于对应于较高编程状态的验证电压的那些存储单元执行附加的编程操作,如步骤S240和S242所示。
在该情况下,如果确定存储单元MCA(1,1)的阈值电压大于对应于第一编程状态的验证电压,将在下一编程操作期间禁止存储单元MCA(1,1),如步骤S250中所示。在编程操作已经执行了超过预定次数之后,例如,但不限于17次,如果确定存储单元MCA(1,2)的阈值电压新近变得大于对应于第六编程状态的验证电压,将在下一编程操作期间对存储单元MCA(1,2)再次编程。不过,在编程操作尚未执行超过17次之前,即使确定存储单元MCA(1,3)的阈值电压新近变得大于对应于第六编程状态的验证电压,也将在下一编程操作期间禁止存储单元MCA(1,3)。
此外,在一些实施例中,通过重新编程,具有高编程状态的存储单元可能足以防止过度编程。在该情况下,可以省略步骤S230,并将对已经被确定为新近变得大于对应于较高编程状态的验证电压的所有存储单元执行附加编程操作,而不考虑已经执行的编程操作的数量。
此外,为了改善编程操作的效率,可以向方法200施加增量阶跃脉冲编程(ISPP)。例如,在方法200中,在第一编程操作期间,可以生成第一编程脉冲以对存储单元MCA(1,1)到MCA(M,N)编程,而在第一编程操作之后的第二编程操作期间,可以生成第二编程脉冲以对存储单元MCA(1,1)到MCA(M,N)编程。在该情况下,第二编程脉冲可以具有大于第一编程脉冲的电压,以帮助在第二编程操作中提高存储单元MCA(1,1)到MCA(M,N)的阈值电压。
在步骤S240、S242和S250之后,可以执行步骤S260以判断是否有超过目标数量的存储单元未通过对应的阈值电压测试。如果有超过目标数量的存储单元尚未通过对应的阈值电压测试,这可能暗示存储器系统100尚未被成功编程,并且可能需要更多次编程操作。不过,如果有少于目标数量的存储单元尚未通过对应的阈值电压测试,这可能暗示存储器系统100已被成功编程,如步骤S280中的结论那样。
此外,在一些实施例中,编程操作的总数量可以限于低于最大数量,以用于防止过度编程和无休止的操作。因此,在步骤S270中,如果编程操作已经执行了超过最大次数,那么将在步骤S272中确定编程过程已失败。否则,将在步骤S210中执行下一编程操作。
对于方法200而言,可以稳定地保证存储单元的阈值电压,并且可以减少瞬时阈值电压漂移导致的保留错误。
图3示出了根据本发明的另一个实施例的用于操作存储器系统100的方法300。在一些实施例中,方法300可以包括图3所示的步骤S310到S380,但不限于图3中所示的顺序。
S310:执行编程操作以对存储单元MCA(1,1)到MCA(M,N)进行编程;
S320:在编程操作之后,执行至少一次阈值电压测试,以判断存储单元MCA(1,1)到MCA(M,N)的阈值电压是否大于至少一个验证电压;
S330:如果已经执行了预定数量的编程操作,前进到步骤S340,否则前进到步骤S332;
S332:如果已经执行了对应于目标编程状态的阈值电压测试,前进到步骤S340,否则前进到步骤S350;
S340:增大要在后续阈值电压测试中测试的验证电压;
S350:如果确定存储单元大于对应验证电压,禁止存储单元在下一编程操作期间被编程;
S360:如果有超过目标数量的存储单元尚未通过对应阈值电压测试,则前进到步骤S370,否则前进到步骤S380;
S370:如果已经执行了最大数量的编程操作,前进到步骤S372,否则前进到步骤S310;
S372:确定编程过程已失败。
S380:确定编程过程已成功。
在一些实施例中,可以由控制电路110执行步骤S310到S380。即,控制电路110能够根据编程进度提供期望的编程电压。
在方法300中,替代执行附加的编程操作,可以提高验证电压以减小由瞬时阈值电压漂移导致的保留错误。
例如,在执行步骤S310中的编程操作和步骤S320中的阈值电压测试之后,步骤S330将判断是否已经执行了预定数量的编程操作。如果编程操作已经执行了超过预定次数,例如但不限于17次,那么将在步骤S340中提高在后续阈值电压测试中测试的验证电压。亦即,为了通过对应于特定编程状态的阈值电压,存储单元的阈值电压必须要高于先前的标准电平。因此,即使发生瞬时阈值电压漂移,存储单元的阈值电压将仍然足够高,以在读取操作期间采集期望的编程状态。
而且,将在步骤S332中检查阈值电压测试的编程状态。在该情况下,如果已经执行了对应于目标编程状态(例如但不限于第六编程状态)的阈值电压测试,那么将在步骤S340中提高要在后续阈值电压测试中测试的验证电压。因此,意在被编程到较高编程状态并且更难以编程的存储单元将在编程过程期间受到更严格的测试,以防止瞬时阈值电压漂移导致保留错误。
在编程过程一开始不提高验证电压的原因之一是保护存储单元MCA(1,1)到MCA(M,N)以使其不被过度编程。不过,在一些实施例中,如果存储器系统100的条件允许,可以省略步骤S330和S332之一。
总之,由本发明的实施例提供的存储器系统和用于对存储器系统编程的方法能够对新近通过阈值电压测试的存储单元执行附加的编程操作,或者可以提高阈值电压测试中的对应于较高编程状态的验证电压。因此,可以将存储单元编程为具有大于读取操作中使用的验证电压的阈值电压,并具有充分大的余量,以防止瞬时阈值电压漂移导致的保留错误并保证读取电压裕量。
本领域的技术人员将容易观察到,可以对该装置和方法做出许多修改和更改同时保留本发明的教导。因此,以上公开内容应当被解释为仅受所附权利要求的边界和界限的限制。
Claims (17)
1.一种用于对存储器系统编程的方法,所述存储器系统包括多个存储单元,所述方法包括:
执行多次编程操作以对所述多个存储单元编程;
在所述多次编程操作中的每次编程操作之后,执行至少一次阈值电压测试,以判断所述多个存储单元的阈值电压是否大于至少一个验证电压;
在确定第一存储单元的阈值电压大于对应于低于预定编程状态的编程状态的验证电压时,禁止所述第一存储单元在下一编程操作期间被编程;以及
在确定第二存储单元的阈值电压新近变得大于对应于不低于预定编程状态的编程状态的验证电压时,在下一编程操作期间保持对所述第二存储单元编程;
其中,所述多个存储单元是多电平单元(MLC)。
2.根据权利要求1所述的方法,其中,在确定所述第二存储单元的阈值电压新近变得大于对应于不低于所述预定编程状态的所述编程状态的所述验证电压时,在所述下一编程操作期间保持对所述第二存储单元编程是:
在确定所述第二存储单元的阈值电压新近变得大于对应于不低于所述预定编程状态的所述编程状态的所述验证电压并且已经执行了预定数量的编程操作时,在所述下一编程操作期间保持对所述第二存储单元编程。
3.根据权利要求2所述的方法,还包括:
在已经执行所述预定数量的编程操作之前,在确定第三存储单元的阈值电压新近变得大于所述第二验证电压时,禁止所述第三存储单元在下一编程操作期间被编程。
4.根据权利要求2所述的方法,还包括:
在有超过目标数量的存储单元尚未通过对应阈值电压测试时,执行下一编程操作。
5.根据权利要求1所述的方法,还包括:
在所述多次编程操作中的第一编程操作期间,生成第一编程脉冲以对所述多个存储单元编程;以及
在所述多次编程操作中的所述第一编程操作之后的第二编程操作期间,生成第二编程脉冲以对所述多个存储单元编程;
其中,所述第二编程脉冲具有大于所述第一编程脉冲的电压。
6.一种用于对存储器系统编程的方法,所述存储器系统包括多个存储单元,所述方法包括:
执行多次编程操作以对所述多个存储单元编程;
在所述多次编程操作中的每次编程操作之后,执行至少一次阈值电压测试,以判断所述多个存储单元的阈值电压是否大于至少一个验证电压;
在确定第一存储单元的阈值电压大于第一验证电压时,禁止所述第一存储单元在下一编程操作期间被编程;以及
在已经执行了预定数量的编程操作之后,提高要在后续阈值电压测试中测试的验证电压;
其中,所述多个存储单元是多电平单元(MLC)。
7.根据权利要求6所述的方法,还包括:
在执行对应于所述多个存储单元的目标编程状态的阈值电压测试之后,提高要在后续阈值电压测试中测试的对应于所述多个存储单元的所有编程状态的验证电压。
8.根据权利要求6所述的方法,还包括:
在有超过目标数量的存储单元尚未通过对应阈值电压测试时,执行下一编程操作。
9.根据权利要求6所述的方法,还包括:
在所述多次编程操作中的第一编程操作期间,生成第一编程脉冲以对所述多个存储单元编程;
在所述多次编程操作中的所述第一编程操作之后的第二编程操作期间,生成第二编程脉冲以对所述多个存储单元编程;
其中,所述第二编程脉冲具有大于所述第一编程脉冲的电压。
10.一种用于对存储器系统编程的方法,所述存储器系统包括多个存储单元,所述方法包括:
执行多次编程操作以对所述多个存储单元编程;
在所述多次编程操作中的每次编程操作之后,执行至少一次阈值电压测试,以判断所述多个存储单元的阈值电压是否大于至少一个验证电压;
在确定第一存储单元的阈值电压大于第一验证电压时,禁止所述第一存储单元在下一编程操作期间被编程;以及
在执行对应于所述多个存储单元的目标编程状态的阈值电压测试之后,提高要在后续阈值电压测试中测试的对应于所述多个存储单元的所有编程状态的验证电压;
其中,所述多个存储单元是多电平单元(MLC)。
11.根据权利要求10所述的方法,还包括:
在有超过目标数量的存储单元尚未通过对应阈值电压测试时,执行下一编程操作。
12.根据权利要求10所述的方法,还包括:
在所述多次编程操作中的第一编程操作期间,生成第一编程脉冲以对所述多个存储单元编程;以及
在所述多次编程操作中的所述第一编程操作之后的第二编程操作期间,生成第二编程脉冲以对所述多个存储单元编程;
其中,所述第二编程脉冲具有大于所述第一编程脉冲的电压。
13.一种存储器系统,包括:
耦合到至少一个字线的多个存储单元;以及
耦合到所述至少一个字线的控制电路,并且所述控制电路被配置为:
执行多次编程操作以通过经由所述至少一个字线提供编程电压而对所述多个存储单元编程;
在所述多次编程操作中的每次编程操作之后,执行至少一次阈值电压测试,以判断所述多个存储单元的阈值电压是否大于至少一个验证电压;
在确定第一存储单元的阈值电压大于对应于低于预定编程状态的编程状态的验证电压时,禁止所述第一存储单元在下一编程操作期间被编程;以及
在确定第二存储单元的阈值电压新近变得大于对应于不低于预定编程状态的编程状态的验证电压时,在下一编程操作期间保持对所述第二存储单元编程;
其中,所述多个存储单元是多电平单元(MLC)。
14.根据权利要求13所述的存储器系统,其中,在已经执行了预定数量的编程操作的同时,在确定所述第二存储单元的阈值电压新近变得大于对应于不低于所述预定编程状态的所述编程状态的所述验证电压时,所述控制电路在下一编程操作期间保持对所述第二存储单元编程。
15.根据权利要求14所述的存储器系统,其中,在确定第三存储单元的阈值电压新近变得大于所述第二验证电压时,并且在已经执行所述预定数量的编程操作之前,所述控制电路被进一步配置为禁止在下一编程操作期间对所述第三存储单元编程。
16.根据权利要求14所述的存储器系统,其中,所述控制电路还被配置为:在有超过目标数量的存储单元尚未通过对应阈值电压测试时,执行下一编程操作。
17.根据权利要求13所述的存储器系统,其中,所述控制电路还被配置为:
在所述多次编程操作中的第一编程操作期间,生成第一编程脉冲以对所述多个存储单元编程;以及
在所述多次编程操作中的所述第一编程操作之后的第二编程操作期间,生成第二编程脉冲以对所述多个存储单元编程;
其中,所述第二编程脉冲具有大于所述第一编程脉冲的电压。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2019/075549 WO2020168478A1 (en) | 2019-02-20 | 2019-02-20 | Method for programming memory system |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110036446A true CN110036446A (zh) | 2019-07-19 |
Family
ID=67243936
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980000346.2A Pending CN110036446A (zh) | 2019-02-20 | 2019-02-20 | 用于对存储器系统编程的方法 |
Country Status (7)
Country | Link |
---|---|
US (3) | US11037642B2 (zh) |
EP (1) | EP3853855B1 (zh) |
JP (3) | JP7148727B2 (zh) |
KR (1) | KR20210066899A (zh) |
CN (1) | CN110036446A (zh) |
TW (1) | TWI702608B (zh) |
WO (1) | WO2020168478A1 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110970082A (zh) * | 2019-11-29 | 2020-04-07 | 深圳大普微电子科技有限公司 | 降低闪存滞留错误的方法、装置及固态硬盘 |
CN113228186A (zh) * | 2021-03-29 | 2021-08-06 | 长江存储科技有限责任公司 | 多遍编程中的负栅极应力操作机器存储器件 |
CN113284541A (zh) * | 2021-06-17 | 2021-08-20 | 长江存储科技有限责任公司 | 存储器系统及其编程方法 |
WO2023098145A1 (en) * | 2021-12-02 | 2023-06-08 | Yangtze Memory Technologies Co., Ltd. | Memory device, memory system, and program operation method thereof |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3853855B1 (en) | 2019-02-20 | 2023-07-12 | Yangtze Memory Technologies Co., Ltd. | Method for programming memory system |
US11790994B2 (en) * | 2021-09-22 | 2023-10-17 | Western Digital Technologies, Inc. | Non-volatile memory with reverse state program |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101335048A (zh) * | 2007-06-29 | 2008-12-31 | 旺宏电子股份有限公司 | 多阶存储单元非易失性存储器的双重编程方法 |
US20100002523A1 (en) * | 2006-11-22 | 2010-01-07 | Park Ki-Tae | Flash Memory Devices that Utilize Age-Based Verify Voltages to Increase Data Reliability and Methods of Operating Same |
US20120140566A1 (en) * | 2010-12-02 | 2012-06-07 | Seiichi Aritome | Programming method of non-volatile memory device |
CN102947888A (zh) * | 2010-05-04 | 2013-02-27 | 桑迪士克科技股份有限公司 | 在非易失性存储元件的感测期间减小沟道耦合效应 |
US20130336057A1 (en) * | 2012-06-19 | 2013-12-19 | Samsung Electronics Co., Ltd. | Nonvolatile memory device and related method of operation |
CN105097034A (zh) * | 2014-05-13 | 2015-11-25 | 三星电子株式会社 | 非易失性存储系统以及存储控制器的操作方法 |
US20160118126A1 (en) * | 2014-10-22 | 2016-04-28 | Sungsu Moon | Nonvolatile memory devices and program method thereof |
Family Cites Families (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR19990066130A (ko) * | 1998-01-21 | 1999-08-16 | 윤종용 | 불 휘발성 메모리 장치 및 그것의 프로그램 방법 |
DE102005009700B4 (de) | 2004-02-26 | 2009-02-05 | Samsung Electronics Co., Ltd., Suwon | Programmierverfahren und nichtflüchtiger Speicher |
KR100721012B1 (ko) * | 2005-07-12 | 2007-05-22 | 삼성전자주식회사 | 낸드 플래시 메모리 장치 및 그것의 프로그램 방법 |
ITRM20080114A1 (it) | 2008-02-29 | 2009-09-01 | Micron Technology Inc | Compensazione della perdita di carica durante la programmazione di un dispositivo di memoria. |
KR101506655B1 (ko) * | 2008-05-15 | 2015-03-30 | 삼성전자주식회사 | 메모리 장치 및 메모리 데이터 오류 관리 방법 |
US8248850B2 (en) * | 2010-01-28 | 2012-08-21 | Sandisk Technologies Inc. | Data recovery for non-volatile memory based on count of data state-specific fails |
KR101676816B1 (ko) | 2010-02-11 | 2016-11-18 | 삼성전자주식회사 | 플래시 메모리 장치 및 그것의 프로그램 방법 |
US20150348633A1 (en) * | 2010-02-11 | 2015-12-03 | Samsung Electronics Co., Ltd. | Nonvolatile memory devices and methods of programming nonvolatile memory devices |
KR101211840B1 (ko) * | 2010-12-30 | 2012-12-12 | 에스케이하이닉스 주식회사 | 반도체 메모리 장치의 프로그램 방법 |
KR101855169B1 (ko) * | 2011-10-13 | 2018-05-09 | 삼성전자주식회사 | 불휘발성 메모리 장치, 불휘발성 메모리 장치의 프로그램 방법, 불휘발성 메모리 장치를 포함하는 메모리 시스템 |
KR102083450B1 (ko) * | 2012-12-05 | 2020-03-02 | 삼성전자주식회사 | 페이지 버퍼를 포함하는 불휘발성 메모리 장치 및 그것의 동작 방법 |
KR20140088386A (ko) * | 2013-01-02 | 2014-07-10 | 에스케이하이닉스 주식회사 | 반도체 장치 및 이의 동작 방법 |
US8929142B2 (en) | 2013-02-05 | 2015-01-06 | Sandisk Technologies Inc. | Programming select gate transistors and memory cells using dynamic verify level |
KR102112596B1 (ko) * | 2013-03-15 | 2020-05-19 | 삼성전자주식회사 | 비휘발성 메모리 장치 및 이의 프로그래밍 방법 |
KR102175039B1 (ko) * | 2013-06-25 | 2020-11-05 | 삼성전자주식회사 | 불휘발성 메모리 장치의 데이터 기입 방법 |
KR102118979B1 (ko) * | 2013-09-13 | 2020-06-05 | 삼성전자주식회사 | 불휘발성 메모리 장치 및 그것의 프로그램 방법 |
KR102290448B1 (ko) * | 2014-09-04 | 2021-08-19 | 삼성전자주식회사 | 불휘발성 메모리 및 불휘발성 메모리의 동작 방법 |
KR102396053B1 (ko) * | 2015-04-20 | 2022-05-10 | 삼성전자주식회사 | 비휘발성 메모리 장치 및 그것의 동작 방법 |
KR102470606B1 (ko) * | 2015-11-26 | 2022-11-28 | 삼성전자주식회사 | 불휘발성 메모리 장치 및 불휘발성 메모리 장치를 포함하는 스토리지 장치 |
KR102432483B1 (ko) * | 2015-12-31 | 2022-08-12 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 이의 구동 방법 |
CN107633865B (zh) * | 2016-07-19 | 2024-02-20 | 兆易创新科技集团股份有限公司 | 一种非易失性存储器的数据读取装置及方法 |
JP6652470B2 (ja) * | 2016-09-07 | 2020-02-26 | キオクシア株式会社 | 半導体記憶装置 |
KR102565888B1 (ko) * | 2016-09-12 | 2023-08-11 | 에스케이하이닉스 주식회사 | 반도체 메모리 장치 및 그것의 동작 방법 |
CN107689245B (zh) * | 2017-08-31 | 2019-02-22 | 长江存储科技有限责任公司 | 一种nand闪存装置的编程方法 |
TWI635499B (zh) * | 2017-09-11 | 2018-09-11 | 旺宏電子股份有限公司 | 編程非揮發性記憶體的方法及記憶體系統 |
JP2020038738A (ja) * | 2018-09-03 | 2020-03-12 | キオクシア株式会社 | 不揮発性メモリ及びメモリシステム |
EP3853855B1 (en) | 2019-02-20 | 2023-07-12 | Yangtze Memory Technologies Co., Ltd. | Method for programming memory system |
-
2019
- 2019-02-20 EP EP19915722.3A patent/EP3853855B1/en active Active
- 2019-02-20 WO PCT/CN2019/075549 patent/WO2020168478A1/en unknown
- 2019-02-20 KR KR1020217013305A patent/KR20210066899A/ko not_active Application Discontinuation
- 2019-02-20 CN CN201980000346.2A patent/CN110036446A/zh active Pending
- 2019-02-20 JP JP2021530282A patent/JP7148727B2/ja active Active
- 2019-04-01 US US16/371,130 patent/US11037642B2/en active Active
- 2019-04-02 TW TW108111593A patent/TWI702608B/zh active
-
2020
- 2020-07-08 US US16/924,133 patent/US11386970B2/en active Active
-
2021
- 2021-05-12 US US17/318,992 patent/US20210264995A1/en active Pending
-
2022
- 2022-09-22 JP JP2022151045A patent/JP7414921B2/ja active Active
-
2023
- 2023-12-28 JP JP2023222797A patent/JP2024019722A/ja active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100002523A1 (en) * | 2006-11-22 | 2010-01-07 | Park Ki-Tae | Flash Memory Devices that Utilize Age-Based Verify Voltages to Increase Data Reliability and Methods of Operating Same |
CN101335048A (zh) * | 2007-06-29 | 2008-12-31 | 旺宏电子股份有限公司 | 多阶存储单元非易失性存储器的双重编程方法 |
CN102947888A (zh) * | 2010-05-04 | 2013-02-27 | 桑迪士克科技股份有限公司 | 在非易失性存储元件的感测期间减小沟道耦合效应 |
US20120140566A1 (en) * | 2010-12-02 | 2012-06-07 | Seiichi Aritome | Programming method of non-volatile memory device |
US20130336057A1 (en) * | 2012-06-19 | 2013-12-19 | Samsung Electronics Co., Ltd. | Nonvolatile memory device and related method of operation |
CN105097034A (zh) * | 2014-05-13 | 2015-11-25 | 三星电子株式会社 | 非易失性存储系统以及存储控制器的操作方法 |
US20160118126A1 (en) * | 2014-10-22 | 2016-04-28 | Sungsu Moon | Nonvolatile memory devices and program method thereof |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110970082A (zh) * | 2019-11-29 | 2020-04-07 | 深圳大普微电子科技有限公司 | 降低闪存滞留错误的方法、装置及固态硬盘 |
CN113228186A (zh) * | 2021-03-29 | 2021-08-06 | 长江存储科技有限责任公司 | 多遍编程中的负栅极应力操作机器存储器件 |
CN113228186B (zh) * | 2021-03-29 | 2023-09-29 | 长江存储科技有限责任公司 | 多遍编程中的负栅极应力操作机器存储器件 |
CN113284541A (zh) * | 2021-06-17 | 2021-08-20 | 长江存储科技有限责任公司 | 存储器系统及其编程方法 |
WO2023098145A1 (en) * | 2021-12-02 | 2023-06-08 | Yangtze Memory Technologies Co., Ltd. | Memory device, memory system, and program operation method thereof |
Also Published As
Publication number | Publication date |
---|---|
EP3853855A4 (en) | 2022-04-27 |
US20200342947A1 (en) | 2020-10-29 |
JP2022511447A (ja) | 2022-01-31 |
EP3853855A1 (en) | 2021-07-28 |
JP2022171971A (ja) | 2022-11-11 |
JP2024019722A (ja) | 2024-02-09 |
US11037642B2 (en) | 2021-06-15 |
EP3853855B1 (en) | 2023-07-12 |
KR20210066899A (ko) | 2021-06-07 |
US20210264995A1 (en) | 2021-08-26 |
TWI702608B (zh) | 2020-08-21 |
US20200265904A1 (en) | 2020-08-20 |
US11386970B2 (en) | 2022-07-12 |
TW202032572A (zh) | 2020-09-01 |
WO2020168478A1 (en) | 2020-08-27 |
JP7414921B2 (ja) | 2024-01-16 |
JP7148727B2 (ja) | 2022-10-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110036446A (zh) | 用于对存储器系统编程的方法 | |
KR100850509B1 (ko) | 프로그램 에러를 감소시킬 수 있는 멀티 비트 플래시메모리 장치의 프로그램 방법 | |
KR101854927B1 (ko) | 다수의 데이터 상태-실패들을 허용하는 비휘발성 메모리에서 다중 비트 프로그래밍 방법 및 프로그래밍 실패의 경우 데이터 복구 방법 | |
US9064580B2 (en) | Nonvolatile semiconductor memory device and write-in method thereof | |
CN102422362B (zh) | 存储器装置中的多电平编程检验 | |
KR100794311B1 (ko) | 프로그램 에러를 차단할 수 있는 멀티 비트 플래시 메모리장치의 프로그램 방법 | |
JP2011513885A (ja) | メモリ素子のプログラミング中の電荷損失補償 | |
US8174894B2 (en) | Program method of flash memory device | |
US11475964B2 (en) | Method for programming a memory system | |
US9342401B2 (en) | Selective in-situ retouching of data in nonvolatile memory | |
JP2008181630A (ja) | フラッシュメモリ素子のプログラム方法 | |
KR100954949B1 (ko) | 불휘발성 메모리 장치의 멀티 레벨 셀 프로그램 방법 | |
JP3850791B2 (ja) | 不揮発性半導体記憶装置 | |
TWI327319B (en) | Double programming methods of a multi-level-cell nonvolatile memory | |
JP7399174B2 (ja) | 不揮発性メモリデバイスおよび複数のビット線バイアス電圧を印加することによる不揮発性メモリデバイスにおけるプログラミングのための方法 | |
US8000154B2 (en) | Non-volatile memory device and method of controlling a bulk voltage thereof | |
US10811111B1 (en) | Non-volatile memory device and method for programming in non-volatile memory device by applying multiple bitline bias voltages | |
KR20120086939A (ko) | 반도체 시스템 및 데이터 프로그래밍 방법 | |
KR20090048112A (ko) | 불휘발성 메모리 장치의 프로그램 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190719 |
|
RJ01 | Rejection of invention patent application after publication |