对存储器件进行编程和验证的方法以及相关的存储器件转让专利

申请号 : CN201980002547.6

文献号 : CN110870015B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 赵向南宋雅丽张安刘红涛靳磊

申请人 : 长江存储科技有限责任公司

摘要 :

当对包括多个存储单元和多个字线的存储器件进行编程和验证时,首先对多个存储单元中的由多个字线中的第一字线控制的第一存储单元执行第一粗略编程然后,对多个存储单元中的由多个字线中的第二字线控制的第二存储单元执行第二粗略编程。接下来,使用第一粗略验证电流来确定第一存储单元是否通过了粗略验证,且使用第二粗略验证电流来确定第二存储单元是否通过了第二粗略验证,其中第二粗略验证电流小于第一粗略验证电流。

权利要求 :

1.一种对包括多个存储单元和多个字线的存储器件进行编程和验证的方法,所述方法包括:

对所述多个存储单元中的第一存储单元执行第一粗略编程,所述第一存储单元由所述多个字线中的第一字线控制;

在对所述第一存储单元执行所述第一粗略编程之后,对所述多个存储单元中的第二存储单元执行第二粗略编程,所述第二存储单元由所述多个字线中的第二字线控制;

根据第一粗略验证电流,确定所述第一存储单元是否通过了粗略验证;以及根据小于所述第一粗略验证电流的第二粗略验证电流,确定所述第二存储单元是否通过了第二粗略验证。

2.根据权利要求1所述的方法,还包括:在所述第一存储单元通过了所述第一粗略验证之后,对所述第一存储单元执行第一精细编程;以及

在所述第二存储单元通过了所述第二粗略验证之后,对所述第二存储单元执行第二精细编程。

3.根据权利要求1所述的方法,还包括:通过向所述第一字线施加编程电压来对所述第一存储单元执行所述第一粗略编程;

使所述编程电压的电平增长第一量;以及在确定所述第一存储单元未通过所述第一粗略验证之后,通过将经增长的编程电压施加到所述第一字线来对所述第一存储单元执行第三粗略编程。

4.根据权利要求3所述的方法,还包括:在确定所述第一存储单元通过了第三粗略验证之后,使所述编程电压的所述电平增长第二量,所述第二量小于所述第一量;以及通过将经增长的编程电压施加到所述第一字线来对所述第一存储单元执行第一精细编程。

5.一种存储器件,包括:

存储器阵列,包括多个存储单元;

多个字线;

字线驱动器;以及

控制器,被配置为:

对第一存储单元执行第一粗略编程,所述第一存储单元由所述多个字线中的第一字线控制;

在对所述第一存储单元执行所述第一粗略编程之后,对第二存储单元执行第二粗略编程,所述第二存储单元由所述多个字线中的第二字线控制;

根据第一粗略验证电流,确定所述第一存储单元是否通过了粗略验证;以及根据小于所述第一粗略验证电流的第二粗略验证电流,确定所述第二存储单元是否通过了第二粗略验证。

6.根据权利要求5所述的存储器件,其中,所述控制器还被配置为:在所述第一存储单元通过了所述第一粗略验证之后,对所述第一存储单元执行第一精细编程;以及

在所述第二存储单元通过了所述第二粗略验证之后,对所述第二存储单元执行第二精细编程。

7.根据权利要求5所述的存储器件,其中,所述控制器还被配置为:通过指令所述字线驱动器向所述第一字线施加编程电压来对所述第一存储单元执行所述第一粗略编程;

指令所述字线驱动器使所述编程电压的电平增长第一量;以及在确定所述第一存储单元未通过所述第一粗略验证之后,通过指令所述字线驱动器将经增长的编程电压施加到所述第一字线来对所述第一存储单元执行第三粗略编程。

8.根据权利要求7所述的存储器件,其中,所述控制器还被配置为:在确定所述第一存储单元通过了第三粗略验证之后,指令所述字线驱动器使所述编程电压的所述电平增长第二量,所述第二量小于所述第一量;以及通过指令所述字线驱动器将经增长的编程电压施加到所述第一字线来对所述第一存储单元执行第一精细编程。

9.根据权利要求5所述的存储器件,其中,所述多个存储单元被以三维四级单元(3D QLC)结构布置。

说明书 :

对存储器件进行编程和验证的方法以及相关的存储器件

技术领域

[0001] 本发明涉及对存储器件进行编程和验证的方法以及相关的存储器件,并且更具体地涉及一种对具有3D QLC结构的存储器件进行编程和验证的方法以及相关的存储器件。

背景技术

[0002] 半导体存储器已经变得越来越流行用于各种电子器件中。例如,非易失性半导体存储器被应用于蜂窝电话、数码相机、个人数字助理、移动计算器件、非移动计算器件和其
他器件中。最近,已提出了使用三维(3D)堆叠存储器结构(有时被称为比特成本可缩放(Bit 
Cost Scalable,BiCS)架构)的超高密度的储存器件。例如,可以由交替的导电和电介质层
的阵列形成3D NAND堆叠闪存器件。在这些层中钻存储孔,以同时限定许多存储层。然后通
过用适当的材料填充存储孔来形成NAND串。存储单元的控制栅极由导电层提供。
[0003] 每个平面NAND存储器由通过多个字线和位线连接的存储单元的阵列组成。逐页地将数据编程到平面NAND存储器中或从平面NAND存储器中读取该数据。为了减轻浮栅到浮栅
耦合的影响,可以通过粗略和精细编程来对3D QLC NAND存储器进行编程以提高整体编程
速度。还有,在粗略/精细编程的每个步骤之后,根据恒定的粗略/精细验证电流执行粗略/
精细验证,以确定所选择的存储单元是否已经达到期望值。
[0004] 在现有技术的粗略/精细编程方法中,以在3D QLC NAND存储器件的电流-电压曲线上导致恒定电压差的方式来设定粗略验证电流和精细验证电流之间的差。随着3D QLC 
NAND存储器件采用更多的层,最佳电流(best-of-current,BOC)情况电流-电压曲线和最差
电流(worse-of-current,WOC)情况电流-电压曲线之间的差异也增大,从而导致不同的存
储单元之间的较大的增益变化。因此,现有技术的粗略/精细编程方法在存储单元的阈值电
压上具有小的余量。

发明内容

[0005] 本发明提供一种对包括多个存储单元和多个字线的存储器件进行编程和验证的方法。所述方法包括:对所述多个存储单元中的第一存储单元执行第一粗略编程,所述第一
存储单元由所述多个字线中的第一字线控制;在对所述第一存储单元执行所述第一粗略编
程之后,对所述多个存储单元中的第二存储单元执行第二粗略编程,所述第二存储单元由
所述多个字线中的第二字线控制;根据第一粗略验证电流,确定所述第一存储单元是否通
过了粗略验证;以及根据小于所述第一粗略验证电流的第二粗略验证电流,确定所述第二
存储单元是否通过了第二粗略验证。
[0006] 本发明提供还一种存储器件,所述存储器件包括:存储器阵列,具有多个存储单元;多个字线;字线驱动器;以及控制器。所述控制器被配置为:对第一存储单元执行第一粗
略编程,所述第一存储单元由所述多个字线中的第一字线控制;在对所述第一存储单元执
行所述第一粗略编程之后,对第二存储单元执行第二粗略编程,所述第二存储单元由所述
多个字线中的第二字线控制;根据第一粗略验证电流,确定所述第一存储单元是否通过了
粗略验证;以及根据小于所述第一粗略验证电流的第二粗略验证电流,确定所述第二存储
单元是否通过了第二粗略验证。
[0007] 在阅读了在各个图和图样中示出的优选实施例的以下详细描述之后,本发明的这些和其他目的对于本领域的普通技术人员无疑将变得显而易见。

附图说明

[0008] 图1是示出根据本发明的实施例的一个NAND串的顶视图。
[0009] 图2是示出根据本发明的实施例的一个NAND串的等效电路的图。
[0010] 图3是示出根据本发明的实施例的存储器阵列的示例性结构的图。
[0011] 图4是根据本发明的实施例的存储器件的框图。
[0012] 图5是示出根据本发明的实施例的对存储器件中的存储器阵列进行编程的方法的流程图。
[0013] 图6是示出根据本发明的实施例的当对存储器件中的存储器阵列进行编程时的编程电压的波形的图。
[0014] 图7是示出根据本发明的实施例的与每个字线子集相关联的粗略验证电流的值的图。
[0015] 图8是示出根据本发明的实施例的当执行步骤时的验证电压的波形的图。

具体实施方式

[0016] 在下面的详细描述中,参考附图,这些附图以说明的方式示出了可以实践本发明的特定实施例。对这些实施例进行了足够详细的描述,以使本领域技术人员能够实践本发
明。应当理解,本发明的各种实施例尽管不同,但不一定是相互排斥的。例如,在不脱离本发
明的精神和范围的情况下,在此结合一个实施例描述的特定特征、结构或特性可以被实现
于其他实施例内。另外,应当理解,在不脱离本发明的精神和范围的情况下,可以修改每个
公开的实施例内的各个元件的位置或布置。因此,以下详细描述不应被理解为限制性的,并
且本发明的范围仅由适当地解释的所附权利要求以及权利要求所赋予的等同物的全部范
围来限定。在附图中,贯穿若干视图,相似的数字表示相同或类似的功能。
[0017] 图1是示出根据本发明的实施例的NAND串的顶视图。图2是示出其等效电路的图。在使用NAND结构的闪存系统中,多个晶体管串联布置并且被夹在两个选择栅极之间,其被
称为NAND串。图1和图2中所描绘的NAND串包括串联耦合并夹在顶部选择栅极SG_T(在漏极
侧)和底部选择栅极SG_B(在源极侧)之间的四个晶体管101~104。顶部选择栅极SG_T被布
置用于经由位线接触部将NAND串连接到位线,并且可以通过向选择栅极线SGTL施加适当的
电压来控制该顶部选择栅极SG_T。底部选择栅极SG_B被布置用于将NAND串连接到源极线,
并且可以通过向选择栅极线SGBL施加适当的电压来控制该底部选择栅极SG_B。晶体管101
~104中的每个包括控制栅极和浮置栅极。例如,晶体管101包括控制栅极CG1和浮置栅极
FG1,晶体管102包括控制栅极CG2和浮置栅极FG2,晶体管103包括控制栅极CG3和浮置栅极
FG3,并且晶体管104包括控制栅极CG4和浮置栅极FG4。控制栅极CG1连接到字线WL1,控制栅
极CG2连接到字线WL2,控制栅极CG3连接到字线WL3,并且控制栅极CG4连接到字线WL4。
[0018] 为了说明的目的,图1和2示出了NAND串中的四个存储单元。在其他实施例中,NAND串可以包括8个存储单元、16个存储单元、32个存储单元、64个存储单元、128个存储单元等。
然而,NAND串中的存储单元的数量不限制本发明的范围。
[0019] 用于使用NAND结构的闪存系统的典型架构包括若干NAND串。每个NAND串通过由选择线SGBL控制的其底部选择栅极SG_B连接到源极线,并且通过由选择线SGTL控制的其顶部
选择栅极SG_T连接到其相关联的位线。每个位线和经由位线接触部连接到该位线的相应的
NAND串(单个或多个)包括存储单元的阵列的列。位线被多个NAND串共享。典型地,位线在垂
直于字线的方向上在NAND串的顶部延伸,并连接到一个或多个感测放大器。
[0020] 图3是示出根据本发明的实施例的存储器阵列110的示例性结构的图。存储器阵列110被分成由BLOCK1~BLOCKI表示的存储单元的多个块,其中I是正整数,并且典型地等于较
大的数。块包含一组NAND串,该一组NAND串被经由位线BL1-BLM和一组公共字线WL1~WLN访
问,其中M和N是大于1的整数。NAND串的一个端子经由顶部选择栅极(连接到选择栅极线
SGTL)连接到对应的位线,并且另一端子经由底部选择栅极(连接到选择栅极线SGBL)连接
到源极线。每个块典型地被分成多个页面,如由虚线表示的。在一个实施例中,块是常规擦
除的单位,而页面是常规编程的单位。然而,也可以使用擦除/编程的其他单位。
[0021] 图4是根据本发明的实施例的存储器件100的框图。存储器件100包括存储器阵列110、字线驱动器102、位线驱动器104、列解码器120、感测电路122、数据缓冲器130、编程验
证逻辑140、粗略/精细验证电路150、控制器160以及微码170。存储器阵列110是非易失性存
储器阵列,其在断电时保持其状态。例如,存储器阵列110可以是NAND闪存,其包括具有浮栅
晶体管的存储单元,如图1和2所示。此外,可以以3D MLC结构布置存储器阵列110,以增大数
据容量。然而,存储器件100的类型不限制本发明的范围。
[0022] 存储器件100可以包括图3中未示出的功能块和信号线。例如,存储器件100可以包括将存储器件100的各个部分耦合到外部总线的写接口电路或读接口电路。例如,图3中所
示的存储器件100可以包括写接口电路或读接口电路。此外,存储器件100可包括从一个或
多个接口电路到控制器160、数据缓冲器130或图3中所示的任何其他块的信号线。图3中所
示的块被选择为支持对与存储器阵列110的编程有关的各种实施例的解释。
[0023] 控制器160可以是能够影响存储器件100内的编程操作的任何类型的适合的控制器。例如,控制器160可以是嵌入式微处理器、微控制器等。在操作中,控制器160被配置为从
微码170接收并执行软件指令。微码170可以被保持在诸如单独的闪存的非易失性存储元件
中。然而,实现控制器160和微码170的方式不限制本发明的范围。
[0024] 当对存储器阵列110进行编程时,要编程的数据被放置在数据缓冲器130中。在一些实施例中,可以由控制器160将要编程的数据放置在数据缓冲器130中。此外,编程操作可
以对存储器阵列110的子集进行编程,并且数据缓冲器130可以仅保存对子集进行编程的数
据。在编程操作期间,位线驱动器104被配置为向存储器阵列110内的位线提供适当的电压,
并且字线驱动器102被配置为在存储器阵列110内的字线上提供编程脉冲。
[0025] 在一些实施例中,存储器阵列110是NAND闪存,其包括多级存储单元的阵列。例如,以多级单元(multi-level cell,MLC)结构布置的存储器阵列110可以每个单元存储2比特,
以三级单元(TLC)结构布置的存储器阵列110可以每个单元存储3比特,并且以四级单元
(QLC)结构布置的存储器阵列110可以每个单元存储4比特。
[0026] 为说明性目的使用MLC结构,每个多级单元可以支持由浮栅晶体管上的不同阈值电压表示的四个不同的编程状态。这四个状态可以表示为第零电平(L0)、第一电平(L1)、第
二电平(L2)和第三电平(L3),其中L0对应于具有最低阈值电压的未编程存储单元,L3对应
于具有最高阈值电压的编程的存储单元,并且L1和L2对应于具有中间阈值电压的编程的存
储单元。L3、L2、L1和L0也分别表示为“00”、“01”、“10”和“11”。
[0027] 在MLC实施例中,数据缓冲器130被成对地加载有要编程到存储器阵列110中的值。例如,由于每个MLC存储单元可以被编程有两比特信息,因此数据缓冲器130被加载有表示
电平L0、L1、L2和L3的成对的数据比特。由于存储单元所保持的要擦除的比特全为1,因此要
用L0或“11”编程的MLC存储单元根本不需要被编程。本发明的各个实施例认识到不需要对
要保持“11”的单元进行编程,可以将要保持“00”的单元编程为高阈值电压,并且可以将要
保持“10”或“01”的单元编程为中间阈值电压。对应于各种编程状态的阈值电压被限定为彼
此具有足够的距离,以允许可靠地读取MLC存储单元。
[0028] 在一些实施例中,存储器件100使用在字线上的多个脉冲来支持对存储器阵列110内的MLC单元进行编程,其中脉冲处于不同的电压。此外,存储器件100支持以粗略步骤使字
线上的栅极电压增长,直到编程值接近期望的中间阈值电压,并且然后继续以精细步骤使
字线上的栅极电压增长,直到编程的值满足或超过预定水平。下面进一步描述利用粗略和
细字线电压步骤的各种编程实施例。如本文所使用的,术语“粗略脉冲”是指字线电压中的
在粗略步骤之后施加的编程脉冲,而术语“精细脉冲”是指字线电压中在精细步骤之后施加
的编程脉冲
[0029] 在编程期间,控制器160被配置为指令位线驱动器104向位线提供适当的电压,并且指令字线驱动器102向字线提供粗略和精细的栅极电压。在一些实施例中,控制器160包
括用于提供各种电压的电压参考电路,并且位线驱动器104和字线驱动器102包括用于选择
电压的开关。在其他实施例中,位线驱动器104和字线驱动器102包括电压生成电路,并且控
制器160提供数字控制信息,以指令位线驱动器104和字线驱动器102驱动位线和字线上的
各种电压。然而,生成电压或将电压路由到位线和字线的方式不限制本发明的范围。
[0030] 存储器阵列110可以将一个逻辑路径用于编程,并将另一逻辑路径用于读/验证。这允许路径在写(RWW)启用时被读,并允许在编程操作期间验证编程。例如,数据线112上的
电流可以随着存储单元被编程而改变。在一些实施例中,字线驱动器102在编程操作之间在
字线上提供“感测电压”以执行“验证”操作。本发明的各种实施例利用两种不同类型的验证
操作:“粗略验证”和“精细验证”。在下面进一步描述粗略验证和精细验证。
[0031] 在粗略验证期间(在粗略脉冲之后)或在精细验证期间(在精细脉冲之后),列解码器120被配置为从存储器阵列110接收数据并将该数据引导至感测电路122。感测电路122可
以包括一个或多个参考电路,其提供可以与数据进行比较的参考电平。例如,数据可以是电
流的形式,并且参考电路可以包括提供参考电流的编程的存储单元。在一些实施例中,每个
电平存在多个参考。出于说明性目的使用MLC实施例,感测电路122可以包括L1粗略验证电
流、L1精细验证电流、L2粗略验证电流、L2精细验证电流和L3验证电流。
[0032] 编程验证逻辑140被配置为将感测电路122的输出与来自数据缓冲器130的数据进行比较。例如,在粗略验证期间,感测电路122通过将列解码器120的输出与粗略验证电流进
行比较来生成数字输出信号,并且通过编程验证逻辑140将这些数字输出信号与数据缓冲
器130中的数据进行比较。在一些实施例中,存储器阵列110内的多个位置被同时编程,并且
在验证操作期间,同时验证存储器阵列110内的多个位置。例如,编程验证逻辑140可以同时
验证存储器阵列110内的32个位置。此外,在一些实施例中,存储器阵列110内同时被编程的
位置的数量可以基于各种总线的通信带宽或存储器件100内的编程泵的电流能力而改变。
[0033] 粗略/精细验证电路150从编程验证逻辑140接收信息,并将信息提供给控制器160。在粗略验证操作期间,粗略/精细验证电路150被配置为检测任何正被编程的存储单元
是否已经超过了对应的粗略参考,并且如果是,则向控制器160断言“粗略通过”信号。出于
说明性目的使用MLC实施例,对当前正用L1或L2编程的所有存储单元执行粗略验证操作。在
这些实施例中,即使一个存储单元超过了对应的粗略参考,粗略/精细验证电路150也将断
言粗略通过信号。通过断言粗略通过信号,粗略/精细验证电路150可以通知控制器160从粗
略栅极电压步骤切换到精细栅极电压步骤。
[0034] 在接收到粗略通过信号之后,控制器160被配置为指令字线驱动器102对存储器阵列110内的字线提供精细的栅极电压步骤。在精细验证操作期间(在精细脉冲之后),感测电
路122可以将列解码器120的输出与对应的精细验证电流进行比较。出于说明性目的使用
MLC实施例,将正用L1编程的位置中的数据与L1精细验证电流进行比较,并且将正用L2编程
的位置中的数据与L2精细验证电流进行比较。同样在精细验证操作期间,编程验证逻辑140
可以将传感电路122的输出与来自数据缓冲器130的数据进行比较。对于满足(meet)或超过
对应的精细验证电流的位置,编程验证逻辑140被配置为在数据缓冲器130中写诸如“11”的
通过数据,以指示对应的存储单元已经通过了精细验证操作。对于未满足或超过对应的精
细验证电流的位置,编程验证逻辑140不改变数据缓冲器130中的数据。然后重复精细脉冲,
但是对于已经满足或超过精细验证电流的那些位置则不重复,因为数据缓冲器130中与那
些位置对应的数据现在为“11”。仅当正被编程的所有存储单元已被正确编程时才断言“精
细通过”信号。
[0035] 图5是示出根据本发明的实施例的对存储器件100中的存储器阵列110进行编程和验证的方法的流程图。图5中的流程图包括以下步骤:
[0036] 步骤500:以粗略步骤使编程电压VPGM增长。
[0037] 步骤510:通过将编程电压VPGM施加到对应的选择的字线上,对一个或多个选择的存储单元执行粗略编程。
[0038] 步骤520:提供与所选择的字线相关联的对应的粗略验证电流和对应的精细验证电流。
[0039] 步骤530:根据对应的粗略验证电流,对一个或多个选择的存储单元执行粗略验证。
[0040] 步骤540:确定是否断言了粗略通过信号;若是,则执行步骤560;若否,则执行步骤550。
[0041] 步骤550:将相同数据写回至数据缓冲器;执行步骤500。
[0042] 步骤560:以精细步骤使编程电压VPGM增长。
[0043] 步骤570:通过将编程电压VPGM施加到对应的选择的字线上,对一个或多个选择的存储单元执行精细编程。
[0044] 步骤580:根据对应的精细验证电流,对一个或多个选择的存储单元执行精细验证。
[0045] 步骤590:确定是否断言了精细通过信号;若是,则执行步骤610;若否,则执行步骤600。
[0046] 步骤600:对通过精细验证的所有存储单元,将通过数据写回至数据缓冲器;执行步骤610。
[0047] 步骤610:结束。
[0048] 在步骤500和560中,控制器160被配置为指令字线驱动器102施加编程电压VPGM,该编程电压VPGM可以是从初始电压电平开始的阶梯波形形式的一系列编程电压脉冲。正受编
程的存储单元经受这一系列编程电压脉冲,每次都试图向其浮栅添加增量电荷。
[0049] 图6是示出根据本发明的实施例的在执行步骤500和560时的编程电压VPGM的波形的图。在步骤500中,在每个粗略编程时段PC期间,以粗略步骤使编程电压VPGM增长。更具体
地说,在每个粗略编程时段PC的开始,编程电压VPGM的电平增长VC的量(粗略脉冲)。在步骤
560中,在编程时段PF1期间,以精细步骤使编程电压VPGM增长。更特别地,在每个精细编程时
段FC的开始,编程电压VPGM的电平增长VF的量(精细脉冲),其中VF
[0050] 在步骤510中,可以通过在一个或多个粗略编程时段PC期间将编程电压VPGM(粗略脉冲)施加到对应的选择的字线,来对一个或多个选择的存储单元执行粗略编程。在步骤
570中,可以通过在一个或多个精细编程时段FC期间将编程电压VPGM(精细脉冲)施加到对应
的选择的字线,来对一个或多个选择的存储单元执行精细编程。每个脉冲向该一个或多个
选择的存储单元添加增量电荷,以达到存储在数据缓冲器130中的一个或多个编程状态的
目的。
[0051] 在步骤520中,感测电路122可以包括一个或多个参考电路,其提供参考电平,基于参考电平可以进行粗略验证和精细验证。例如,数据可以是电流的形式,并且参考电路可以
包括提供参考电流的编程的存储单元。在一些实施例中,针对每个编程的电平存在多个参
考。出于说明性目的使用MLC实施例,感测电路122可以提供L1粗略验证电流、L1精细验证电
流、L2粗略验证电流、L2精细验证电流和L3验证电流。
[0052] 在本发明中,可以根据对字线进行编程的顺序来调整每个粗略验证电流的值。公共组字线WL1~WLN还被分组成P个字线子集SUB1~SUBP,其中,每个字线子集包括n个相邻的
字线(n为小于N的正整数)。首先,将第一字线子集SUB1中的字线WL1~WLn顺序编程,然后顺
序地编程第二字线子集SUB2中的字线WLn+1~WL2n。继续相同的过程,直到第P字线子集中的
字线WLN-n+1~WLN被顺序编程。
[0053] 图7是示出与每个字线子集相关联的粗略验证电流的值的图。如所描绘的,如果由第一字线子集SUB1中的字线控制的选择的存储单元将被编程到L1,则将对应的粗略验证电
流设定为ISENSE1;如果由第二字线子集SUB2中的字线控制的选择的存储单元将被编程到L1,
则将对应的粗略验证电流设定为ISENSE2;…;如果由第P字线子集SUBP中的字线控制的选择
的存储单元将被编程到L1,则将对应的粗略验证电流设定为ISENSEP,其中ISENSE1>ISENSE2>…>
ISENSEP。换句话说,与较晚时间被编程为L1的字线子集相关联的粗略验证电流被设定为小于
与较早时间被编程为L1的字线子集相关联的粗略验证电流的值。
[0054] 在步骤530和580中,可以通过读回存储单元来对一个或多个选择的存储单元执行粗略/精细验证。通过在编程脉冲之间施加验证电压VVER,读回过程可以涉及一个或多个感
测操作。
[0055] 图8是示出根据本发明的实施例的当执行步骤530和580时的验证电压VVER的波形的图。参照图6,每个验证时段PV被插入两个相邻的编程时段之间,以确认一个或多个选择
的存储单元的当前电压电平。
[0056] 在步骤540和590中,列解码器120可以在每个验证时段期间从存储器阵列110接收数据,并且将该数据引导到感测电路122。感测电路122可以将来自存储器阵列110的数据与
对应的粗略/精细验证电流进行比较。
[0057] 在步骤540中,如果没有一个正被编程的存储单元已经超过了对应的粗略验证电流,则在步骤550中,编程验证电路140将相同的数据写回到数据缓冲器130中。在另一个实
施例中,可以省略步骤550,并且在步骤540中确定为“否”之后,该方法直接循环回到步骤
500。上述循环的目的是向一个或多个选择的存储单元添加增量电荷,直到正被编程的存储
单元中的至少一个存储单元已经超过了对应的粗略验证电流为止。
[0058] 如果任何正被编程的存储单元已经超过了对应的粗略参考,则粗略/精细验证电路150将“粗略通过”信号断言给控制器160,从而在步骤540中导致“是”确定。出于说明性目
的使用MLC实施例,对当前正用L1或L2编程的所有存储单元执行粗略验证操作。在这些实施
例中,如果任何存储单元超过了对应的粗略参考,则粗略/精细验证电路150将断言粗略通
过信号。通过断言粗略通过信号,在步骤560中,粗略/精细验证电路150可以通知控制器160
以精细步骤使编程电压VPGM增长。
[0059] 如果正被编程的存储单元中的至少一个尚未超过对应的精细验证电流,则不断言精细通过信号,从而在步骤590中导致“否”确定。在这种情况下,编程验证电路140对于在步
骤600中通过精细验证(超过对应的精细验证电流)的所有存储单元,将指示数据写至数据
缓冲器130。接下来,该方法直接循环回到步骤560。指示数据,诸如在MLC配置中的“11”,防
止已通过精细验证的所有存储单元被重新脉冲化。上述循环的目的是向一个或多个选择的
存储单元添加增量电荷,直到正被编程的所有存储单元都超过了对应的精细验证电流。
[0060] 在本发明中,可以采用粗略和精细编程来提高整体编程速度。而且,在每个粗略/精细编程的步骤之后,根据对应的粗略/精细验证电流来执行粗略/精细验证,以确定选择
的存储单元是否已经达到期望值。可以根据对字线进行编程的顺序来调整每个粗略验证电
流的值,从而补偿不同存储单元之间的增益变化。因此,本方法可以在存储单元的阈值电压
上提供大的余量。
[0061] 本领域技术人员将容易地观察到,在保持本发明的教导的同时,可以对器件和方法进行许多修改和变更。因此,以上公开内容应被解释为仅由所附权利要求的界限来限定。