CN110400594A - 一种闪存存储器及其编程验证系统和编程验证方法 - Google Patents
一种闪存存储器及其编程验证系统和编程验证方法 Download PDFInfo
- Publication number
- CN110400594A CN110400594A CN201810373564.8A CN201810373564A CN110400594A CN 110400594 A CN110400594 A CN 110400594A CN 201810373564 A CN201810373564 A CN 201810373564A CN 110400594 A CN110400594 A CN 110400594A
- Authority
- CN
- China
- Prior art keywords
- programming
- program
- page
- storage unit
- 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
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/38—Response verification devices
- G11C29/42—Response verification devices using error correcting codes [ECC] or parity check
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C2029/0405—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals comprising complete test loop
Landscapes
- Read Only Memory (AREA)
Abstract
本发明公开了一种闪存存储器及其编程验证系统和编程验证方法,在编程循环过程中,利用对编程页相应字线施加当前编程电压完毕后的编程等待恢复时间内,对上一次编程循环存储的验证结果进行统计计数,且根据统计计数情况进行判断处理等过程,进而能够省去现有技术中对编程页相应字线施加验证电压后的对验证结果进行统计计数和判断处理的时间,最终达到缩短整体编程验证时间,提高芯片性能的目的。
Description
技术领域
本发明涉及闪存存储技术领域,更为具体的说,涉及一种闪存存储器及其编程验证系统和编程验证方法。
背景技术
NAND闪存是一种比硬盘驱动器更好的存储设备,随着人们持续追求功耗更低、重量更轻和性能更佳的产品,NAND被证明极具吸引力。NAND闪存是一种非易失性存储技术,即断电后仍能保存数据,它的发展目标就是降低每比特存储成本、提高存储容量。
闪存存储器的操作包括读取、擦除、擦除验证、编程、编程验证等操作,其中闪存存储器的编程和编程验证操作的基本单位是对一个页进行,如要编程该页相应字线上连接的所有存储单元,则需要对该字线上施加编程电压,结束后再次施加验证电压进行编程验证操作,最后对验证结果进行计数等操作,如果结果为编程不成功的数目超过了所能纠正错误,则再次施加电压值更高的编程电压,以及进行编程验证操作,和结果统计,并循环此过程直到编程操作成功。现有的闪存存储器在进行编程验证操作时,在对存储单元施加编程电压后,由于存储到存储单元的电子会在编程后一段时间内出现退化效应,此时如果立即对存储单元施加验证电压进行编程验证操作,则此时读出的阈值电压因为存储单元没有完全退化,会使得验证通过的存储单元比实际编程通过的存储单元数量多。因此,在对存储单元施加验证电压前需要等待一段时间进行恢复(即编程等待恢复时间),进而使得编程时间变长,影响芯片的性能。
发明内容
有鉴于此,本发明提供了一种闪存存储器及其编程验证系统和编程验证方法,在编程循环过程中,利用对编程页相应字线施加当前编程电压完毕后的编程等待恢复时间内,对上一次编程循环存储的验证结果进行统计计数,且根据统计计数情况进行判断处理等过程,进而能够省去现有技术中对编程页相应字线施加验证电压后的对验证结果进行统计计数和判断处理的时间,最终达到缩短整体编程验证时间,提高芯片性能的目的。
为实现上述目的,本发明提供的技术方案如下:
一种闪存存储器的编程验证方法,所述闪存存储器包括非易失性半导体存储单元阵列,所述非易失性半导体存储单元阵列包括多个页,且每一页包括多个存储单元,所述编程验证方法包括:
通过以下操作对所述多个页中选取的编程页执行第N次编程循环:将当前编程电压施加至所述编程页的相应字线进行编程;
在所述当前编程电压施加结束后,对第N-1次编程循环时存储的编程验证结果进行计数,以对所述编程页的存储单元的编程不成功个数进行统计;
判断所述编程页的存储单元的编程不成功个数是否在允许范围内,若是,则判定编程成功;若否,则判断所述第N次编程循环是否达到编程循环次数上限,若是,则判定编程失败;若否,则对所述编程页的相应字线施加验证电压进行编程验证感应操作,并在所述编程验证感应操作结束后在页缓存电路中存储每一存储单元在所述第N次循环编程后的编程验证结果;
将所述当前编程电压升高一定数值后,按照上述编程循环过程对所述编程页执行第N+1次编程循环,N为不小于2的整数。
可选的,所述编程验证结果以所述存储单元的在施加的所述验证电压下的导通电流值大于导通的存储单元的电流的最小值为编程不成功的条件。
可选的,所述判断所述编程页的存储单元的编程不成功个数是否在允许范围内,为:
判断所述编程页的存储单元的编程不成功个数是否在ECC机制所允许范围内。
可选的,所述将所述当前编程电压升高一定数值时,每次编程循环时对所述当前编程电压升高的数值可以不相同。
相应的,本发明还提供了一种闪存存储器的编程验证系统,所述闪存存储器包括非易失性半导体存储单元阵列和页缓存电路,所述非易失性半导体存储单元阵列包括多个页,且每一页包括多个存储单元,所述编程验证系统包括:编程及编程验证控制单元、行译码单元、编程电压产生单元、验证电压产生单元、验证检查和计数单元和判断处理单元,其中,
通过以下操作对所述多个页中选取的编程页执行第N次编程循环:所述编程及编程验证控制单元控制所述编程电压产生单元生成的当前编程电压通过行译码单元施加至所述编程页的相应字线进行编程;
在所述当前编程电压施加结束后,所述验证检查和计数单元对第N-1次编程循环时存储的编程验证结果进行计数,以对所述编程页的存储单元的编程不成功个数进行统计;
所述判断处理单元判断所述编程页的存储单元的编程不成功个数是否在允许范围内,若是,则判定编程成功;若否,则判断所述第N次编程循环是否达到编程循环次数上限,若是,则判定编程失败;若否,则所述编程及编程验证控制单元控制所述验证电压产生单元生成的验证电压施加至所述编程页的相应字线进行编程验证感应操作,并在所述编程验证感应操作结束后在所述页缓存电路中存储每一存储单元在所述第N次循环编程后的编程验证结果;
存储所述编程验证结果后,所述编程电压产生单元将所述当前编程电压升高一定数值,而后按照上述编程循环过程对所述编程页执行第N+1次编程循环,N为不小于2的整数。
可选的,所述编程验证结果以所述存储单元的在施加的所述验证电压下的导通电流值大于导通的存储单元的电流的最小值为编程不成功的条件。
可选的,所述判断处理单元判断所述编程页的存储单元的编程不成功个数是否在允许范围内为:
所述判断处理单元判断所述编程页的存储单元的编程不成功个数是否在ECC机制所允许范围内。
可选的,所述编程电压产生单元将所述当前编程电压升高一定数值时,每次编程循环时对所述当前编程电压升高的数值可以不相同。
可选的,所述存储单元为浮栅型金属氧化物半导体存储单元或电荷俘获型存储单元。
相应的,本发明还提了一种闪存存储器,所述闪存存储器包括上述的闪存存储器的编程验证系统。
相较于现有技术,本发明提供的技术方案至少具有以下优点:
本发明提供了一种闪存存储器及其编程验证系统和编程验证方法,所述闪存存储器包括非易失性半导体存储单元阵列,所述非易失性半导体存储单元阵列包括多个页,且每一页包括多个存储单元,所述编程验证方法包括:通过以下操作对所述多个页中选取的编程页执行第N次编程循环:将当前编程电压施加至所述编程页的相应字线进行编程;在所述当前编程电压施加结束后,对第N-1次编程循环时存储的编程验证结果进行统计和计数,以对所述编程页的存储单元的编程不成功个数进行统计;判断所述编程页的存储单元的编程不成功个数是否在允许范围内,若是,则判定编程成功;若否,则判断所述第N次编程循环是否达到编程循环次数上限,若是,则判定编程失败;若否,则对所述编程页的相应字线施加验证电压进行编程验证感应操作,并在所述编程验证感应操作结束后在页缓存电路中存储每一存储单元在所述第N次循环编程后的编程验证结果;将所述当前编程电压升高一定数值后,按照上述编程循环过程对所述编程页执行第N+1次编程循环,N为不小于2的整数。
由上述内容可知,本发明提供的技术方案,在编程循环过程中,利用对编程页相应字线施加当前编程电压完毕后的编程等待恢复时间内,对上一次编程循环存储的验证结果进行统计计数,且根据统计计数情况进行判断处理等过程,进而能够省去现有技术中对编程页相应字线施加验证电压后的对验证结果进行统计计数和判断处理的时间,最终达到缩短整体编程验证时间,提高芯片性能的目的。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为现有一种编程循环过程的结构示意图;
图2为本申请实施例提供的一种闪存存储器的编程验证方法的流程图;
图3为本申请实施例提供的一种编程循环过程的结构示意图;
图4为本申请实施例提供的一种闪存存储器的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
正如背景技术所述,闪存存储器的操作包括读取、擦除、擦除验证、编程、编程验证等操作,其中闪存存储器的编程和编程验证操作的基本单位是对一个页进行,如要编程该页相应字线上连接的所有存储单元,则需要对该字线上施加编程电压,结束后再次施加验证电压进行编程验证操作,最后对验证结果进行计数等操作,如果结果为编程不成功的数目超过了所能纠正错误,则再次施加电压值更高的编程电压,以及进行编程验证操作,和结果统计,并循环此过程直到编程操作成功。现有的闪存存储器在进行编程验证操作时,在对存储单元施加编程电压后,由于存储到存储单元的电子会在编程后一段时间内出现退化效应,此时如果立即对存储单元施加验证电压进行编程验证操作,则此时读出的阈值电压因为存储单元没有完全退化,会使得验证通过的存储单元比实际编程通过的存储单元数量多。因此,在对存储单元施加验证电压前需要等待一段时间进行恢复(即编程等待恢复时间),进而使得编程时间变长,影响芯片的性能。
具体的,传统编程验证方法采用多个编程循环完成整个编程过程,通过不断提高编程电压使得存储单元的阈值电压逐渐被提高,直至达到目标电压为止。具体流程如下:参考图1所示的编程循环过程的结构示意图,首先在该页相应字线上施加编程电压Vpgm,而后为了避免退化效应的影响,经过编程等待恢复时间后,对该页相应字线上施加验证电压Vvfy,以采用读操作来感应存储单元导通电流的大小进行编程验证感应操作,并将编程验证结果存储于页缓存电路中,而后进行计数处理过程,在计数处理过程中统计编程不成功的存储单元的数量是否在允许范围内,如果是则判定编程成功;如果不是,则判断编程循环的次数是否达到上限,如果达到上限,则判定编程失败,如果没有达到上限,则将当前编程电压升高一定数值后,按照上述编程循环过程进行下一次编程循环操作。由图1中可知,在一次编程循环中,包括有编程等待恢复时间和对本次编程循环的计数处理过程(对编程验证结果进行统计计数和判断处理的过程),使得编程时间变长,影响芯片的性能。
基于此,本申请实施例提供了一种闪存存储器及其编程验证系统和编程验证方法,在编程循环过程中,利用对编程页相应字线施加当前编程电压完毕后的编程等待恢复时间内,对上一次编程循环存储的验证结果进行统计计数,且根据统计计数情况进行判断处理等过程,进而能够省去现有技术中对编程页相应字线施加验证电压后的对验证结果进行统计计数和判断处理的时间,最终达到缩短整体编程验证时间,提高芯片性能的目的。为实现上述目的,本申请实施例提供的技术方案如下,具体结合图2至图4对本申请实施例提供的技术方案进行详细的描述。
参考图2所示,为本申请实施例提供的一种闪存存储器的编程验证方法的流程图,所述闪存存储器包括非易失性半导体存储单元阵列,所述非易失性半导体存储单元阵列包括多个页,且每一页包括多个存储单元,所述编程验证方法包括:
通过以下操作对所述多个页中选取的编程页执行第N次编程循环:S1、将当前编程电压施加至所述编程页的相应字线进行编程;
S2、在所述当前编程电压施加结束后,对第N-1次编程循环时存储的编程验证结果进行计数,以对所述编程页的存储单元的编程不成功个数进行统计;
S3、判断所述编程页的存储单元的编程不成功个数是否在允许范围内,若是,则判定编程成功;若否,则S4、判断所述第N次编程循环是否达到编程循环次数上限,若是,则判定编程失败;若否,则S5、对所述编程页的相应字线施加验证电压进行编程验证感应操作,并在所述编程验证感应操作结束后在页缓存电路中存储每一存储单元在所述第N次循环编程后的编程验证结果;
S6、将所述当前编程电压升高一定数值后,按照上述编程循环过程对所述编程页执行第N+1次编程循环,N为不小于2的整数。
需要说明的是,在进行编程循环前需要进行数据装载过程,即首先通过数据装载过程将数据在页缓存电路中进行缓存,而后在编程循环时将数据编程至存储单元中,对此与现有技术相同,故本申请实施例不作多余赘述。
此外,本申请实施例在第一次编程循环时,默认编程页的所有存储单元均为未编程过的擦除态存储单元。
本申请实施例提供的闪存存储器包括非易失性半导体存储单元阵列,其以矩阵排列方式进行排列,全部存储单元分为若干个块,每个块分为若干个页,每个页包括有多个存储单元,存储单元用于存储数据。进一步的,闪存存储器的一个块中包括多个存储串,一个存储串由多个存储单元串联组成,其中,存储串的漏端连接至位线选择管的源端,再通过位线选择管的源端连接至位线;存储串的源端连接至地线选择管的漏端,再通过地线选择管的源端连接至共同地线。其中,位线选择管栅端连接在一起,地线选择管的栅端连接在一起,而同一层存储单元的栅端连接至同一根字线,且连接至同一根字线的存储单元组成一个页,对此与现有闪存存储器的结构相同,本申请不作具体赘述。
在编程循环过程中,编程页相应的字线被施加编程电压,而同一个存储串上的其他未被选中的存储单元的字线施加通过电压,需要编程的存储单元的位线为零电位,而不需要编程的存储单元的位线连接至电源电位。这样,编程的存储单元的字线高电压会使得存储单元的阈值电压升高,以此实现编程操作。
本申请实施例提供的技术方案,在编程循环过程中,利用对编程页相应字线施加当前编程电压完毕后的编程等待恢复时间内,对上一次编程循环存储的验证结果进行统计计数,且根据统计计数情况进行判断处理等过程,进而能够省去现有技术中对编程页相应字线施加验证电压后的对验证结果进行统计计数和判断处理的时间,最终达到缩短整体编程验证时间,提高芯片性能的目的。
具体结合图3所示的本申请实施例提供的一种编程循环过程的结构示意图,其中,首先对编程页相应的字线上施加编程电压Vpgm,而后,在为了避免退化效应的影响的而设置的编程等待恢复时间内,对上次编程循环的验证结果进行计数处理操作,即在计数处理过程中统计编程不成功的存储单元的数量是否在允许范围内,如果是则判定编程成功;如果不是,则判断编程循环的次数是否达到上限,如果达到上限,则判定编程失败,如果没有达到上限,对编程页的相应字线施加验证电压Vvfy进行编程验证感应操作,并在所述编程验证感应操作结束后在页缓存电流中存储每一存储单元在本次循环编程的编程验证结果,最终将当前编程电压升高一定数值后,按照上述编程循环过程进行下一次编程循环操作。由图3中与现有编程循环过程对比可知,本申请实施例提供的技术方案在t2时间时结束本次编程循环过程,而现有技术在t1时间时结束本次编程循环过程,即本申请将对上次编程循环的验证结果在编程等待恢复时间内进行统计计数和判断处理,而省去现有技术中在本次编程循环时对编程页相应字线施加验证电压后的统计计数和判断处理的过程,最终达到缩短整体编程验证时间,提高芯片性能的目的。
在本申请一实施例中,本申请提供的所述编程验证结果以所述存储单元的在施加的所述验证电压下的导通电流值大于导通的存储单元的电流的最小值为编程不成功的条件。即,编程验证结果为对存储单元施加验证电压后对其导通电流大小进行判断的结果,后续过程根据此编程验证结果对编程不成功的存储单元的个数进行统计。
在本申请一实施例中,本申请提供的所述判断所述编程页的存储单元的编程不成功个数是否在允许范围内为:
判断所述编程页的存储单元的编程不成功个数是否在ECC(Error CorrectingCode,错误检查和纠正)机制所允许范围内。
在本申请一实施例中,本申请提供的所述将所述当前编程电压升高一定数值时,每次编程循环时对所述当前编程电压升高的数值可以不相同。此外,本申请实施例提供的编程循环可以按照步进脉冲编程(ISPP)方法进行的编程,通过不断增加编程电压的数值来执行编程操作,其中,每次增加编程电压的数值不相同;此外,在其他实施例中每次增加编程电压的数值也可以为相同的步进电压,对此本申请不做具体限制。
相应的,本申请实施例还提供了一种闪存存储器的编程验证系统,所述闪存存储器包括非易失性半导体存储单元阵列和页缓存电路,所述非易失性半导体存储单元阵列包括多个页,且每一页包括多个存储单元,所述编程验证系统包括:编程及编程验证控制单元、行译码单元、编程电压产生单元、验证电压产生单元、验证检查和计数单元、判断处理单元等,其中,
通过以下操作对所述多个页中选取的编程页执行第N次编程循环:所述编程及编程验证控制单元控制所述编程电压产生单元生成的当前编程电压通过行译码单元施加至所述编程页的相应字线进行编程;
在所述当前编程电压施加结束后,所述验证检查和计数单元对第N-1次编程循环时存储的编程验证结果进行计数,以对所述编程页的存储单元的编程不成功个数进行统计;
所述判断处理单元判断所述编程页的存储单元的编程不成功个数是否在允许范围内,若是,则判定编程成功;若否,则判断所述第N次编程循环是否达到编程循环次数上限,若是,则判定编程失败;若否,则所述编程及编程验证控制单元控制所述验证电压产生单元生成的验证电压施加至所述编程页的相应字线进行编程验证感应操作,并在所述编程验证感应操作结束后在所述页缓存电路中存储每一存储单元在所述第N次循环编程后的编程验证结果;
存储所述编程验证结果后,所述编程电压产生单元将所述当前编程电压升高一定数值,而后按照上述编程循环过程对所述编程页执行第N+1次编程循环,N为不小于2的整数。
需要说明的是,在进行编程循环前需要进行数据装载过程,即首先通过数据装载过程将数据在页缓存电路中进行缓存,而后在编程循环时将数据编程至存储单元中,对此与现有技术相同,故本申请实施例不作多余赘述。
此外,本申请实施例在第一次编程循环时,默认编程页的所有存储单元均为未编程过的擦除态的存储单元。
本申请实施例提供的闪存存储器包括非易失性半导体存储单元阵列,其以矩阵排列方式进行排列,全部存储单元分为若干个块,每个块分为若干个页,每个页包括有多个存储单元,存储单元用于存储数据。进一步的,闪存存储器的一个块中包括多个存储串,一个存储串由多个存储单元串联组成,其中,存储串的漏端连接至位线选择管的源端,再通过位线选择管的源端连接至位线;存储串的源端连接至地线选择管的漏端,再通过地线选择管的源端连接至共同地线。其中,位线选择管栅端连接在一起,地线选择管的栅端连接在一起,而同一层存储单元的栅端连接至同一根字线,且连接至同一根字线的存储单元组成一个页,对此与现有闪存存储器的结构相同,本申请不作具体赘述。
在编程循环过程中,编程页相应的字线被施加编程电压,而同一个存储串上的其他未被选中的存储单元的字线施加通过电压,需要编程的存储单元的位线为零电位,而不需要编程的存储单元的位线连接至电源电位。这样,编程的存储单元的字线高电压会使得存储单元的阈值电压升高,以此实现编程操作。
本申请实施例提供的技术方案,在编程循环过程中,利用对编程页相应字线施加当前编程电压完毕后的编程等待恢复时间内,对上一次编程循环存储的验证结果进行统计计数,且根据统计计数情况进行判断处理等过程,进而能够省去现有技术中对编程页相应字线施加验证电压后的对验证结果进行统计计数和判断处理的时间,最终达到缩短整体编程验证时间,提高芯片性能的目的。
在本申请一实施例中,本申请提供的所述编程验证结果以所述存储单元的在施加的所述验证电压下的导通电流值大于导通的存储单元的电流的最小值为编程不成功的条件。即,编程验证结果为对存储单元施加验证电压后对其导通电流大小进行判断的结果,后续过程根据此编程验证结果对编程不成功的存储单元的个数进行统计。
在本申请一实施例中,本申请提供的所述判断处理单元判断所述编程页的存储单元的编程不成功个数是否在允许范围内为:
所述判断处理单元判断所述编程页的存储单元的编程不成功个数是否在ECC机制所允许范围内。
在本申请一实施例中,本申请提供的所述编程电压产生单元将所述当前编程电压升高一定数值时,每次编程循环时对所述当前编程电压升高的数值可以不相同。其中,本申请实施例提供的编程循环可以按照步进脉冲编程(ISPP)方法进行的编程,通过不断增加编程电压的数值来执行编程操作,其中,每次增加编程电压的数值不相同;此外,在其他实施例中每次增加编程电压的数值也可以为相同的步进电压,对此本申请不做具体限制。
在本申请一实施例中,本申请提供的所述存储单元为浮栅型金属氧化物半导体存储单元或电荷俘获型存储单元。
相应的,本申请实施例还提了一种闪存存储器,所述闪存存储器包括上述的闪存存储器的编程验证系统。
具体参考图4所示,为本申请实施例提供的一种闪存存储器的结构示意图,其中,闪存存储器包括非易失性半导体存储单元阵列100、控制电路200、行译码电路300、页缓存电路400、高压产生电路500、数据通路和I/O电路600、验证检查和结果计数电路700。
其中高压产生电路产生闪存存储器中所需电压如Vpass(导通电压),Vpgm,Vvfy等,即本申请实施例提供的编程电压产生单元和验证电压产生单元均可以集成于高压产生电路中。本申请实施例提供的编程及编程验证控制单元可以集成于控制电路中,且行译码单元可以集成于行译码电路中;其中,控制电路通过控制高压产生电路以及行译码电路将所需电压传输至闪存存储器中所选中的存储单元所连接的字线上。页缓存电路包括多个页缓存子电路,其中,每一个页缓存子电路连接至每一条位线,完成位线操作,并缓存编程验证结果。本申请实施例提供的验证检查和计数单元及判断处理单元均可以集成于验证检查和结果技术电路中,其中,通过验证检查和结果计数电路完成本申请上述实施例中提供的编程验证过程中的对编程验证结果的统计计数和判断处理的操作。数据通路和I/O电路完成数据调整并完成与外部其他电路的通信。
需要说明的是,本申请上述实施例提供的闪存存储器的还包括有其他组成结构,对此与现有技术相同,本申请不做多余赘述。
本申请实施例提供了一种闪存存储器及其编程验证系统和编程验证方法,所述闪存存储器包括非易失性半导体存储单元阵列,所述非易失性半导体存储单元阵列包括多个页,且每一页包括多个存储单元,其特征在于,所述编程验证方法包括:通过以下操作对所述多个页中选取的编程页执行第N次编程循环:将当前编程电压施加至所述编程页的相应字线进行编程;在所述当前编程电压施加结束后,对第N-1次编程循环时存储的编程验证结果进行计数,以对所述编程页的存储单元的编程不成功个数进行统计;判断所述编程页的存储单元的编程不成功个数是否在允许范围内,若是,则判定编程成功;若否,则判断所述第N次编程循环是否达到编程循环次数上限,若是,则判定编程失败;若否,则对所述编程页的相应字线施加验证电压进行编程验证感应操作,并在所述编程验证感应操作结束后在页缓存电路中存储每一存储单元在所述第N次循环编程后的编程验证结果;将所述当前编程电压升高一定数值后,按照上述编程循环过程对所述编程页执行第N+1次编程循环,N为不小于2的整数。
由上述内容可知,本发明提供的技术方案,在编程循环过程中,利用对编程页相应字线施加当前编程电压完毕后的编程等待恢复时间内,对上一次编程循环存储的验证结果进行统计计数,且根据统计计数情况进行判断处理等过程,进而能够省去现有技术中对编程页相应字线施加验证电压后的对验证结果进行统计计数和判断处理的时间,最终达到缩短整体编程验证时间,提高芯片性能的目的。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种闪存存储器的编程验证方法,所述闪存存储器包括非易失性半导体存储单元阵列,所述非易失性半导体存储单元阵列包括多个页,且每一页包括多个存储单元,其特征在于,所述编程验证方法包括:
通过以下操作对所述多个页中选取的编程页执行第N次编程循环:将当前编程电压施加至所述编程页的相应字线进行编程;
在所述当前编程电压施加结束后,对第N-1次编程循环时存储的编程验证结果进行计数,以对所述编程页的存储单元的编程不成功个数进行统计;
判断所述编程页的存储单元的编程不成功个数是否在允许范围内,若是,则判定编程成功;若否,则判断所述第N次编程循环是否达到编程循环次数上限,若是,则判定编程失败;若否,则对所述编程页的相应字线施加验证电压进行编程验证感应操作,并在所述编程验证感应操作结束后在页缓存电路中存储每一存储单元在所述第N次循环编程后的编程验证结果;
将所述当前编程电压升高一定数值后,按照上述编程循环过程对所述编程页执行第N+1次编程循环,N为不小于2的整数。
2.根据权利要求1所述的闪存存储器的编程验证方法,其特征在于,所述编程验证结果以所述存储单元的在施加的所述验证电压下的导通电流值大于导通的存储单元的电流的最小值为编程不成功的条件。
3.根据权利要求1所述的闪存存储器的编程验证方法,其特征在于,所述判断所述编程页的存储单元的编程不成功个数是否在允许范围内,为:
判断所述编程页的存储单元的编程不成功个数是否在ECC机制所允许范围内。
4.根据权利要求1所述的闪存存储器的编程验证方法,其特征在于,所述将所述当前编程电压升高一定数值时,每次编程循环时对所述当前编程电压升高的数值可以不相同。
5.一种闪存存储器的编程验证系统,所述闪存存储器包括非易失性半导体存储单元阵列和页缓存电路,所述非易失性半导体存储单元阵列包括多个页,且每一页包括多个存储单元,其特征在于,所述编程验证系统包括:编程及编程验证控制单元、行译码单元、编程电压产生单元、验证电压产生单元、验证检查和计数单元和判断处理单元,其中,
通过以下操作对所述多个页中选取的编程页执行第N次编程循环:所述编程及编程验证控制单元控制所述编程电压产生单元生成的当前编程电压通过行译码单元施加至所述编程页的相应字线进行编程;
在所述当前编程电压施加结束后,所述验证检查和计数单元对第N-1次编程循环时存储的编程验证结果进行计数,以对所述编程页的存储单元的编程不成功个数进行统计;
所述判断处理单元判断所述编程页的存储单元的编程不成功个数是否在允许范围内,若是,则判定编程成功;若否,则判断所述第N次编程循环是否达到编程循环次数上限,若是,则判定编程失败;若否,则所述编程及编程验证控制单元控制所述验证电压产生单元生成的验证电压施加至所述编程页的相应字线进行编程验证感应操作,并在所述编程验证感应操作结束后在所述页缓存电路中存储每一存储单元在所述第N次循环编程后的编程验证结果;
存储所述编程验证结果后,所述编程电压产生单元将所述当前编程电压升高一定数值,而后按照上述编程循环过程对所述编程页执行第N+1次编程循环,N为不小于2的整数。
6.根据权利要求5所述的闪存存储器的编程验证系统,其特征在于,所述编程验证结果以所述存储单元的在施加的所述验证电压下的导通电流值大于导通的存储单元的电流的最小值为编程不成功的条件。
7.根据权利要求5所述的闪存存储器的编程验证系统,其特征在于,所述判断处理单元判断所述编程页的存储单元的编程不成功个数是否在允许范围内为:
所述判断处理单元判断所述编程页的存储单元的编程不成功个数是否在ECC机制所允许范围内。
8.根据权利要求5所述的闪存存储器的编程验证系统,其特征在于,所述编程电压产生单元将所述当前编程电压升高一定数值时,每次编程循环时对所述当前编程电压升高的数值可以不相同。
9.根据权利要求5所述的闪存存储器的编程验证系统,其特征在于,所述存储单元为浮栅型金属氧化物半导体存储单元或电荷俘获型存储单元。
10.一种闪存存储器,其特征在于,所述闪存存储器包括权利要求5~9任意一项所述的闪存存储器的编程验证系统。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810373564.8A CN110400594A (zh) | 2018-04-24 | 2018-04-24 | 一种闪存存储器及其编程验证系统和编程验证方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810373564.8A CN110400594A (zh) | 2018-04-24 | 2018-04-24 | 一种闪存存储器及其编程验证系统和编程验证方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110400594A true CN110400594A (zh) | 2019-11-01 |
Family
ID=68321937
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810373564.8A Pending CN110400594A (zh) | 2018-04-24 | 2018-04-24 | 一种闪存存储器及其编程验证系统和编程验证方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110400594A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111356980A (zh) * | 2020-02-20 | 2020-06-30 | 长江存储科技有限责任公司 | 对多存储片存储器件进行编程的方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103222007A (zh) * | 2010-09-29 | 2013-07-24 | 桑迪士克科技股份有限公司 | 用于在nand闪存中字线的快速稳定的技术 |
US20140022841A1 (en) * | 2012-07-17 | 2014-01-23 | Sandisk Technologies Inc. | Memory System with Unverified Program Step |
CN106205721A (zh) * | 2016-07-06 | 2016-12-07 | 北京兆易创新科技股份有限公司 | 一种存储单元的编程方法 |
US20170154685A1 (en) * | 2015-11-26 | 2017-06-01 | Ji-Suk Kim | Nonvolatile memory device and storage device including nonvolatile memory device |
CN106920571A (zh) * | 2015-12-25 | 2017-07-04 | 北京兆易创新科技股份有限公司 | 一种Nand Flash的编程方法 |
CN107068190A (zh) * | 2016-01-15 | 2017-08-18 | 三星电子株式会社 | 修正编程电压的存储器设备编程方法 |
-
2018
- 2018-04-24 CN CN201810373564.8A patent/CN110400594A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103222007A (zh) * | 2010-09-29 | 2013-07-24 | 桑迪士克科技股份有限公司 | 用于在nand闪存中字线的快速稳定的技术 |
US20140022841A1 (en) * | 2012-07-17 | 2014-01-23 | Sandisk Technologies Inc. | Memory System with Unverified Program Step |
US20170154685A1 (en) * | 2015-11-26 | 2017-06-01 | Ji-Suk Kim | Nonvolatile memory device and storage device including nonvolatile memory device |
CN106920571A (zh) * | 2015-12-25 | 2017-07-04 | 北京兆易创新科技股份有限公司 | 一种Nand Flash的编程方法 |
CN107068190A (zh) * | 2016-01-15 | 2017-08-18 | 三星电子株式会社 | 修正编程电压的存储器设备编程方法 |
CN106205721A (zh) * | 2016-07-06 | 2016-12-07 | 北京兆易创新科技股份有限公司 | 一种存储单元的编程方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111356980A (zh) * | 2020-02-20 | 2020-06-30 | 长江存储科技有限责任公司 | 对多存储片存储器件进行编程的方法 |
CN111356980B (zh) * | 2020-02-20 | 2021-03-12 | 长江存储科技有限责任公司 | 对多平面存储器件进行编程的方法 |
US11133077B2 (en) | 2020-02-20 | 2021-09-28 | Yangtze Memory Technologies Co., Ltd. | Method of programming multi-plane memory device for accelerating program speed and reducing program disturbance |
US11776641B2 (en) | 2020-02-20 | 2023-10-03 | Yangtze Memory Technologies Co., Ltd. | Method of programming multi-plane memory device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104282337B (zh) | 存储设备及其写方法 | |
US9997258B2 (en) | Using non-volatile memory bad blocks | |
KR101285576B1 (ko) | 비휘발성 메모리를 프로그래밍/소거하기 위한 방법 및 장치 | |
CN103219041B (zh) | 用于模拟存储单元的增强编程和擦除方案 | |
CN104134459B (zh) | 带有可变验证操作的非易失性存储器(nvm) | |
US9417804B2 (en) | System and method for memory block pool wear leveling | |
US8737141B2 (en) | Apparatus and method for determining an operating condition of a memory cell based on cycle information | |
US7839690B2 (en) | Adaptive erase and soft programming for memory | |
CN101847443B (zh) | 非易失性存储器器件和相关的编程方法 | |
US8036035B2 (en) | Erase cycle counter usage in a memory device | |
CN102298966B (zh) | 非易失性存储器设备、系统及编程方法 | |
CN109935267A (zh) | 半导体存储器装置及其操作方法 | |
US8971128B2 (en) | Adaptive initial program voltage for non-volatile memory | |
US20120254515A1 (en) | Erase-suspend system and method | |
CN105047224B (zh) | 读取闪存中所储存的数据的方法与存储器控制器 | |
CN104094354A (zh) | 使用改进的第一遍编程的非易失性存储器及方法 | |
CN110471788A (zh) | 异步功率损耗影响的数据结构 | |
CN106448733A (zh) | 非易失性存储器设备、编程方法和其编程验证方法 | |
US9384839B2 (en) | Write sequence providing write abort protection | |
CN106782655A (zh) | 半导体存储装置及其操作方法 | |
US9342401B2 (en) | Selective in-situ retouching of data in nonvolatile memory | |
CN103680620A (zh) | 使用软编程的非易失性存储器(nvm) | |
CN104916323A (zh) | 编程多个存储单元及存储器的方法及该存储器 | |
US9588700B2 (en) | Semiconductor device and method for programming healing patterns on memory blocks | |
CN110400594A (zh) | 一种闪存存储器及其编程验证系统和编程验证方法 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20191101 |