非易失性存储器中的交错编程和验证

文档序号:1316071 发布日期:2020-07-10 浏览:12次 >En<

阅读说明:本技术 非易失性存储器中的交错编程和验证 (Interleaved programming and verification in non-volatile memory ) 是由 X·杨 H-Y·曾 D·杜塔 于 2019-02-19 设计创作,主要内容包括:本发明公开了一种电路,该电路包括编程控制器,该编程控制器被配置为利用交错编程-验证回路来执行编程操作以对相同块中的存储器单元进行编程。在每个编程-验证回路期间,控制栅极线电压供电电路首先向块的第一单元提供编程脉冲,然后在验证第一单元之前,向块的第二单元提供编程脉冲。在发送编程脉冲之后,控制栅极线供电电路连续地向第一单元和第二单元提供验证脉冲,使得在第一单元和第二单元的相应编程阶段和验证阶段之间引入延迟。另外,在连续验证阶段期间施加第一存储器单元和第二存储器单元的公共控制栅极线上的恒定电压偏置。此外,可在验证阶段期间以颠倒顺序施加验证脉冲的顺序。(A circuit includes a program controller configured to perform a program operation to program memory cells in the same block using an interleaved program-verify loop. During each program-verify loop, the control gate line voltage supply circuit first provides a program pulse to a first cell of the block, and then provides a program pulse to a second cell of the block before verifying the first cell. After sending the programming pulses, the control gate line supply circuit provides the verify pulses to the first and second cells successively such that a delay is introduced between the respective programming and verifying phases of the first and second cells. In addition, a constant voltage bias on the common control gate line of the first and second memory cells is applied during successive verify phases. Further, the order of the verify pulses may be applied in a reverse order during the verify phase.)

具体实施方式

以下实施方案描述了用于对非易失性存储器中的存储器单元进行交错编程的装置、设备、系统、电路和方法。所公开的实施方案可包括在单独存储器单元或存储器单元组的编程-验证回路的编程和验证阶段之间引入延迟,但使用交错编程技术,该交错编程技术结合编程和验证阶段的交错来对不同组多个存储器单元进行编程,从而避免编程操作的总延迟。交错方式的交错编程的其他方面是结合存储器的某些控制栅极上的验证偏置的能力。并不需要使每个验证阶段的控制栅极偏置单独地斜升和斜降(这可能是属于单独非交错编程-验证回路的验证阶段的典型情况),所公开的交错编程-验证回路允许连续验证阶段以使得共享控制栅极可一次而非多次斜升和斜降。可包括在本文所公开的交错编程操作中的其他方面包括颠倒验证最低编程状态到最高编程状态的典型过程的验证顺序以利用要施加验证脉冲的选定字线上已有的偏置水平。在一个实施方案中,电路包括交错控制电路、编程控制电路和验证控制电路。交错控制电路被配置为确定使两个编程-验证回路交错的序列。编程控制电路被配置为根据该序列向块的第一存储器单元施加第一编程脉冲,并且根据该序列在施加第一编程脉冲之后且在施加验证脉冲之前向该块的第二存储器单元施加第二编程脉冲。验证控制电路被配置为根据该序列在施加第二编程脉冲之后向第一存储器单元施加验证脉冲。

在一些实施方案中,验证控制电路被配置为在施加第一验证脉冲之后施加第二验证脉冲。

在一些实施方案中,验证控制电路被配置为在多个连续验证阶段中的第一验证阶段期间施加第一验证脉冲,并且在所述多个连续验证阶段中的第二验证阶段期间施加第二验证脉冲。

在一些实施方案中,验证控制电路被进一步配置为在第一验证阶段和第二验证阶段的持续时间内保持选定漏极选择栅极线上的漏极选择栅极线电压处于恒定水平。

在一些实施方案中,验证控制电路被配置为在第一验证阶段和第二验证阶段期间各以递减验证顺序施加多个验证脉冲序列。

在一些实施方案中,验证控制电路被配置为在第一验证阶段和第二验证阶段期间以颠倒验证顺序施加多个验证脉冲序列。

在一些实施方案中,验证控制电路被配置为在第一验证阶段期间以递增验证顺序施加第一验证脉冲序列,并且在第二验证阶段期间以递减验证顺序施加第二验证脉冲序列。

在一些实施方案中,验证控制电路被配置为在第一验证阶段和第二验证阶段的持续时间内保持该块的所有多个位线的位线电压处于选定位线水平。

在一些实施方案中,第一存储器单元和第二存储器单元耦接到该块的不同字线。

在一些实施方案中,不同字线包括第一字线和第二字线,并且编程控制电路被配置为在向第一字线施加第一编程脉冲期间向第二字线施加未选字线电压,并且在向第二字线施加第二编程脉冲期间向第一字线施加未选字线电压。

在一些实施方案中,第一组存储器单元和第二组存储器单元各自耦接到该块的相同字线。

在一些实施方案中,第一存储器单元属于该块的第一子块,第二存储器单元属于该块的第二子块,第一子块耦接到第一漏极选择栅极线且第二子块耦接到第二漏极选择栅极线,并且编程控制电路被配置为在施加第一编程脉冲期间向第一漏极选择栅极线施加选定漏极选择栅极线电压并向第二漏极选择栅极线施加未选漏极选择栅极线电压,并且在施加第二编程脉冲期间向第二漏极选择栅极线施加选定漏极选择栅极线电压并向第一漏极选择栅极线施加未选漏极选择栅极线电压。

在另一个实施方案中,电路包括存储器单元的块,该块包括第一组存储器单元和第二组存储器单元;以及编程控制器。编程控制器被配置为为了在编程阶段和验证阶段之间插入延迟周期以对第一组存储器单元和第二组存储器单元进行编程:连续地对第一组存储器单元和第二组存储器单元进行编程,并且连续地验证第一组存储器单元和第二组存储器单元。

在一些实施方案中,第一组存储器单元和第二组存储器单元耦接到该块的不同字线。

在一些实施方案中,编程控制器被配置为均根据递减验证顺序连续地验证第一组存储器单元和第二组存储器单元。

在一些实施方案中,编程控制器被进一步配置为控制栅极线电压供电电路以在连续验证期间保持选定漏极选择栅极线上的恒定漏极选择栅极线电压。

在一些实施方案中,第一组存储器单元和第二组存储器单元耦接到该块中的相同字线。

在一些实施方案中,编程控制器被配置为根据颠倒验证顺序连续地验证第一组存储器单元和第二组存储器单元。

在一些实施方案中,编程控制器被配置为首先根据递增验证顺序验证第一组存储器单元,然后根据递减验证顺序验证第二组存储器单元。

在另一个实施方案中,系统包括:具有多个字线的块,所述多个字线被配置为偏置多个存储器单元;以及编程控制器。为了执行交错编程-验证回路,编程控制器被配置为控制电压供电电路以:连续地提供第一编程脉冲以对该块的第一组存储器单元进行编程,并将第二编程脉冲提供给该块的第二组存储器单元,并且连续地将第一验证脉冲序列以递增验证顺序或递减验证顺序提供给第一组存储器单元,并将第二验证脉冲序列以递减验证顺序提供给第二组存储器单元。

在一些实施方案中,第一组存储器单元和第二组存储器单元各自耦接到该块的不同字线,并且编程控制器被配置为控制电压供电电路以根据递减验证顺序提供第一验证脉冲序列。

在一些实施方案中,编程控制器被配置为:将该块分成上字线区和下字线区,并且选择上字线区中的下一更高字线和下字线区中的下一更低字线以用交错编程-验证回路执行下一组编程操作。

在一些实施方案中,第一组存储器单元和第二组存储器单元耦接到该块的相同字线,并且编程控制器被配置为控制电压供电电路以根据递增验证顺序提供第一验证脉冲序列。

在一些实施方案中,为了对该块进行编程,编程控制器被配置为先根据交错编程-验证回路对耦接到一个字线的所有字线单元组进行编程,再根据交错编程-验证回路对耦接到另一个字线的字线单元组进行编程。

在另一个实施方案中,方法包括:利用编程控制电路施加第一编程脉冲以对块的第一组存储器单元进行编程;利用交错控制电路确定第一延迟周期,在该第一延迟周期中延迟施加第一验证脉冲序列以验证第一组存储器单元;在第一延迟周期期间,利用编程控制电路施加第二编程脉冲以对该块的第二组存储器单元进行编程;利用交错控制电路确定第二延迟周期,在该第二延迟周期中延迟施加第二验证脉冲序列以验证第二组存储器单元;并且在第二延迟周期期间,利用验证控制电路施加第一验证脉冲序列以验证第一组存储器单元。

在一些实施方案中,方法包括:在施加第一验证脉冲序列之后利用验证控制电路施加第二验证脉冲序列以验证第二组存储器单元。

在另一个实施方案中,装置包括:用于确定使两个编程-验证回路交错的序列的装置;用于根据该序列向块的第一存储器单元施加第一编程脉冲的装置;用于在施加第一编程脉冲之后且在施加验证脉冲之前向该块的第二存储器单元施加第二编程脉冲的装置;以及用于在施加第二编程脉冲之后向第一存储器单元施加验证脉冲的装置。

其他实施方案是可行的,并且实施方案中的每个可单独使用或组合在一起使用。因此,现在将参考附图描述各种实施方案。

图1A是示出存储器系统100的框图。存储器系统100可包括控制器102以及可包括一个或多个存储器管芯104或由这些存储器管芯组成的存储器。如本文所用,术语管芯指的是在单个半导体基板上形成的一组存储器单元以及用于管理这些存储器单元的物理操作的相关电路。控制器102可与主机系统相连接,并将用于读取、编程和擦除操作的命令序列发送到非存储器管芯104。

控制器102(可以是闪存存储器控制器)可以采用以下形式:例如处理电路、微处理器或处理器,以及存储可由(微)处理器执行的计算机可读程序码的计算机可读介质(例如,软件或固件)、逻辑门、开关、专用集成电路(ASIC)、可编程逻辑控制器和嵌入式微控制器。控制器102可以配置有硬件和/或固件,以执行下文描述并且在流程图中示出的各种功能。另外,示出为在控制器内部的一些部件可也存储在控制器外部,并且可以使用其他部件。此外,短语“操作地与…通信”可能意味着直接或间接地(有线或无线)与一个或多个部件通信、通过一个或多个部件通信,其可在本文中示出或未示出。

如本文所用,控制器102是管理存储在存储器管芯中的数据并与主机诸如计算机或电子设备通信的设备。除了本文所述的特定功能之外,控制器102还可具有各种功能。例如,控制器102可格式化存储器管芯104以确保其正常工作,标出坏的闪存存储器单元,并分配备用单元以替换未来发生故障的单元。备用单元的一些部分可用于保持固件以操作控制器102并实现其他特征。在操作中,当主机需要从存储器管芯104读取数据或将数据写入该存储器管芯时,主机将与控制器102通信。如果主机提供要向其读取/写入数据的逻辑地址,则控制器102可将从主机接收的逻辑地址转换为存储器管芯104中的物理地址。(或者,主机可以提供物理地址)。控制器102还可执行各种存储器管理功能,诸如但不限于损耗均衡(分配写入以避免损耗否则将被重复写入的特定存储器块)和垃圾收集(在块已满之后,仅将有效的数据页面移动到新块,因此可以擦除并重新使用完整块)。

控制器102和非易失性存储器管芯104之间的接口可以是任何合适的接口,诸如闪存接口,包括被配置用于切换模式200、400、800、1000或更高的接口。对于一些示例性实施方案,存储器系统100可以是基于卡的系统,诸如安全数字(SD)或微型安全数字(微型SD)卡。在另选的示例性实施方案中,存储器系统100可以是嵌入式存储器系统的一部分。

在图1A所示的实施例中,存储器系统100被示为包括控制器102和非易失性存储器管芯104之间的单个通道。然而,本文所述的主题不限于具有单个存储器通道的存储器系统。例如,在一些存储器系统中,诸如体现NAND架构的那些存储器系统,根据控制器能力,在控制器102和存储器管芯104之间可存在2、4、8或更多个通道。在本文描述的任何实施方案中,即使在附图中示出单个通道,控制器和存储器管芯104之间也可存在不止单个通道。

图1B示出了包括多个非易失性存储器系统100的存储模块200。因此,存储模块200可包括与主机和存储系统204相连接的存储控制器202,该存储系统包括多个非易失性存储器系统100。存储控制器202和非易失性存储器系统100之间的接口可以是总线接口,作为示例,诸如串行高级技术附件(SATA)、快速外围组件接口(PCIe)、嵌入式多媒体卡(eMMC)接口、SD接口或通用串行总线(USB)接口。在一个实施方案中,存储模块200可以是固态驱动器(SSD),诸如存在于便携式计算设备(诸如膝上型电脑和平板电脑)和移动电话中。

图1C是示出了分级存储系统210的框图。分级存储系统210可包括多个存储控制器202,每个存储控制器控制相应的存储系统204。主机系统212可经由总线接口访问分级存储系统210内的存储器。作为示例,示例性总线接口可包括非易失性存储器express(NVMe)、以太网光纤信道(FCoE)接口、SD接口、USB接口、SATA接口、PCIe接口或eMMC接口。在一个实施方案中,图1C中所示的存储系统210可以是可由多个主计算机访问的可机架安装的大容量存储系统,诸如将存在于数据中心或需要大容量存储的其他位置中。

图2A是更详细地示出控制器102的示例性部件的框图。控制器102可包括与主机进行交互的前端模块108、与非易失性存储器管芯104进行交互的后端模块110、以及执行非易失性存储器系统100的各种功能的各种其他模块。一般来讲,模块可以是硬件或硬件和软件的组合。例如,每个模块可包括专用集成电路(ASIC),现场可编程门阵列(FPGA),电路,数字逻辑电路,模拟电路,离散电路、门或任何其他类型的硬件的组合,或者其组合。除此之外或另选地,每个模块可包括存储器硬件,该存储器硬件包括可用处理器或处理器电路执行以实现模块的特征中的一个或多个的指令。当模块中的任一个包括存储器的包括可用处理器执行的指令的部分时,模块可包括或可不包括处理器。在一些示例中,每个模块可仅为存储器的包括可用处理器执行以实现对应模块的特征的指令的部分,而模块不包括任何其他硬件。由于每个模块都包括至少一些硬件,因此即使在所包括的硬件包括软件时,每个模块也可互换地称为硬件模块。

控制器102可包括缓冲管理器/总线控制器模块114,其管理随机存取存储器(RAM)116中的缓冲器并控制内部总线仲裁以在控制器102的内部通信总线117上进行通信。只读存储器(ROM)118可存储和/或访问系统引导码。虽然图2A所示为与控制器102分开定位,但在其他实施方案中,RAM116和ROM 118中的一者或两者可位于控制器102内。在其他实施方案中,RAM 116和ROM 118的部分可以位于控制器102内和控制器102外部。此外,在一些实施方式中,控制器102、RAM 116和ROM 118可以位于单独的半导体管芯上。

另外,前端模块108可包括提供与主机或下一级存储控制器的电接口的主机接口120和物理层接口(PHY)122。主机接口120类型的选择可取决于所使用的存储器的类型。主机接口120的示例类型可包括但不限于SATA、SATA Express、SAS、光纤通道、USB、PCIe和NVMe。主机接口120可通常有利于传输数据、控制信号和定时信号。

后端模块110可包括错误校正代码(ECC)引擎或模块124,该ECC引擎或模块对从主机接收的数据字节进行编码,并且对从非易失性存储器管芯104读取的数据字节进行解码和错误校正。后端模块110可还包括命令定序器126,该命令定序器生成命令序列,诸如编程命令序列、读取命令序列和擦除命令序列,以传输到非易失性存储器管芯104。另外,后端模块110可包括RAID(独立驱动器冗余阵列)模块128,该RAID模块管理RAID奇偶校验的生成和失败数据的恢复。RAID奇偶校验可用作写入到非易失性存储器系统100中的数据的附加级的完整性保护。在一些情况下,RAID模块128可以是ECC引擎124的一部分。存储器接口130向非易失性存储器管芯104提供命令序列,并且从非易失性存储器管芯104接收状态信息。连同命令序列和状态信息,可通过存储器接口130传送要编程到非易失性存储器管芯104中和从非易失性存储器管芯读取的数据。在一个实施方案中,存储器接口130可以是双数据速率(DDR)接口和/或切换模式200、400、800或更高的接口。控制层132可控制后端模块110的整体操作。

图2A中所示的非易失性存储器系统100的附加模块可包括介质管理层138,其执行特定存储器管理功能,输入存储器管芯104的存储器单元的损耗均衡、地址管理,并且促进折叠操作。其他存储器管理功能也是可能的。非易失性存储器系统100可还包括其他分立部件140,诸如外部电气接口、外部RAM、电阻器、电容器或可与控制器102进行交互的其他部件。在另选的实施方案中,RAID模块128、媒体管理层138和缓冲区管理/总线控制器114的一者或多者是控制器102中可能不需要的任选部件。

图2B是存储器管芯104的部件的示例性配置的更详细框图。存储器管芯104可包括存储器单元结构142,该存储器单元结构包括多个存储器单元,或可互换地称为存储器元件。存储器单元是存储具有n位数据值的数据单元的元件或部件,其中n为一或超过一。任何合适类型的存储器可用于存储器单元结构142的存储器单元。作为示例,存储器可以是动态随机存取存储器(“DRAM”)或静态随机存取存储器(“SRAM”)、非易失性存储器,诸如电阻随机存取存储器(“ReRAM”)、电可擦除可编程只读存储器(“EEPROM”)、闪存存储器(也可被认为是EEPROM的子集)、铁电随机存取存储器(“FRAM”)、磁阻随机存取存储器(“MRAM”),相变存储器(“PCM”),或包括半导体材料或能够存储信息的其他材料的其他元件。每种类型的存储器可具有不同的配置。例如,闪存存储器可以NAND配置或NOR配置进行配置。

存储器可以任何组合由无源和/或有源元件形成。以非限制性示例的方式,无源半导体存储器元件包括ReRAM设备元件,其在一些实施方案中包括电阻率切换存储元件诸如反熔丝、相变材料等,以及可选地包括导引元件诸如二极管等。进一步以非限制性示例的方式,有源半导体存储器元件包括EEPROM和闪存存储器设备元件,其在一些实施方案中包括具有电荷存储区域的元件,诸如浮栅、导电纳米粒子或电荷存储介电材料。

多个存储器单元可被配置为使得它们串联连接或者使得每个元件可被单独访问。以非限制性示例的方式,NAND配置中的闪存存储器设备(NAND存储器)通常包含串联连接的存储器元件。NAND存储器阵列可被配置为使得该阵列由多个单元组构成,其中属于同一单元组的存储器单元共享单个偏置线,诸如单个字线或单个位线,并且作为组被访问或偏置。另选地,存储器单元可被配置为使得每个元件均为单独可访问的,例如,NOR存储器阵列。NAND和NOR存储器配置是示例性的,并且可以其他方式配置存储器单元。

形成存储器管芯的存储器单元结构142的多个存储器单元可位于基板内和/或基板上方。基板可以是存储器单元的层在其之上或之中形成的晶圆,或者它可以是在存储器单元形成后附接到存储器单元的承载基板。作为非限制性示例,基板可包括半导体和/或由半导体材料诸如硅制成。

此外,形成整个存储器单元结构142或存储器单元结构142的至少一部分的多个存储器单元可被布置成二维或三维。布置成二维的多个存储器单元被称为二维(2-D)存储器单元结构。布置成三维的多个存储器单元被称为三维(3-D)存储器单元结构。

在二维存储器单元结构中,存储器元件被布置在单个平面或单个存储器设备级中。通常,在二维存储器单元结构中,存储器单元被布置在基本上平行于支承存储器单元的基板的主表面延伸的平面中(例如,在x-y方向平面中)。

在三维存储器单元结构中,存储器单元被布置成使得存储器单元占据多个平面或多个存储器设备级(例如,多个x-y方向平面),从而形成三维结构(即x,y和z方向,其中z方向基本上垂直于基板的主表面并且x方向和y方向基本上平行于基板的主表面)。当被配置为三维存储器单元结构时,存储器单元向上或远离基板的主表面延伸。

作为非限制性示例,三维存储器结构可被垂直地布置为多个二维存储器设备级的堆叠。作为另一个非限制性示例,三维存储器阵列可被布置为多个垂直列(例如,基本上垂直于基板的主表面延伸的列,即,在z方向上),其中在每一列中每一列均具有多个存储器单元。列可以二维配置布置,例如,在x-y平面中,产生存储器单元的三维布置,其中存储器单元位于多个垂直堆叠的存储器平面上。三维存储器单元的其他配置也可构成三维存储器阵列。

在至少一些示例性配置中,二维或三维存储器单元结构可以是有序排列(或仅称排列)的形式或被配置为有序排列。一种类型的排列是正交排列,它是包括行和列的类似矩阵结构。存储器单元被布置为行和列。在行和列的交叉处是存储器单元。然而,在其他配置中,存储器元件能够以非常规配置或非正交配置排列。

参见图3A,位于单个存储器管芯104上的存储器单元结构142的存储器单元可被组织成从第一块BLK 1延伸至第N块BLK N的N个块。块是存储器管芯104的最小擦除单元。属于同一块的存储器单元被同时擦除和/或作为同一擦除操作的一部分被擦除。

参见图3B,对于一些示例性配置,位于单个存储器管芯104上的N个块被组织成多个存储器平面(或仅称平面)。图3B示出了将块组织成两个存储器平面的示例性配置,包括第一存储器平面Plane 0和第二存储器平面Plane 1。包括两个以上的存储器平面的配置可以是可能的。在图3B中,每个存储器平面被示出为包括从第一块BLK 1延伸至第M块BLK M的M个块。在至少一些示例性配置中,属于同一平面的块可被取向为和/或形成一列块或块的一维排列,尽管单个平面中的块的其他配置可以是可能的。

块的存储器单元可以二维地布置在二维(2-D)存储器阵列中,也可以三维地布置在三维(3-D)存储器阵列中。二维块是具有二维地布置的存储器单元的块。三维块是具有三维地布置的存储器单元的块。

图4A示出了包括一组或多个三维块400的存储器管芯104的至少一部分的透视图,所述三维块可表示图2B的存储器单元结构142的至少一部分。为简单起见,所述多个块400被示出为包括四个块,即BLK1、BLK2、BLK3和BLK4。在实际具体实施中,存储器管芯104的给定存储器单元结构142可包括比四个更多的块,诸如大约数百、数千或数万个块。在一个具体示例性配置中,块组成的一个平面包括2,000个块。

块400位于或设置在存储器管芯104的基板402上。基板402可为存储器管芯104的下层或区域404的一部分,其承载或包括块400下方的电路,以及被图案化以形成导电路径的一个或多个下金属层,所述导电路径承载或提供从电路输出的信号或电压,诸如用于执行存储器操作(读取、编程、感测、擦除等)的那些。

块400设置在存储器管芯104的中间层或区域406(也称为块层或区域,或阵列层或区域)中,该中间层在存储器管芯104的下部区域404和上层或区域408之间。上部区域408可包括以导电路径的形式图案化的一个或多个上部金属层,所述导电路径承载或提供从电路输出的信号或电压。

基板402通常为具有相对的平坦表面的平面结构。本文中,可结合具有x轴、y轴和z轴的三维笛卡尔坐标系对存储器管芯104上的部件进行实际地描述。z轴为垂直于基板402的平坦表面延伸的轴线。一般来讲,存储器管芯104上的部件以平行于z轴的z方向设置在平坦表面中的一个上和/或从其延伸。术语“上方”和“下方”以及其他术语诸如“顶部”和“底部”以及“上部”和“下部”在本文中用于描述存储器管芯104的部件沿着或参考z轴的相对定位。例如,块400在基板402“上方”,并且基板402是在块400“下方”的下部区域404的一部分。此外,上部区域408是存储器管芯104的在块400和基板402两者“上方”的区域。设置在上部区域408中的存储器管芯104的部件在z方向上比块400的部件距基板402更远。一般来讲,对于给定存储器管芯104上的两个部件,其中第一部件在第二部件“上方”,则第一部件在z方向上比第二部件距基板402更远。此外,在第一部件在第二部件“下方”的情况下,第一部件定位或设置成在z方向上比第二部件更靠近基板402。

术语“顶部”和“底部”也用于指存储器管芯104的部件在z方向上和/或沿z轴的相对定位。一般来讲,“底部”部件定位或设置成在z方向上比“顶部”部件更靠近基板402,并且“顶部”部件定位或设置成在z方向上比“底部”部件距基板402更远。在这种情况下,存储器管芯104可包括设置在上部区域408中的一个或多个顶部金属层和设置在下部区域404中的一个或多个底部金属层。一般来讲,底部金属层定位或设置成在z方向上比顶部金属层更靠近基板402,并且顶部金属层定位或设置成在z方向上比底部金属层距基板402更远。

虽然术语“上部”和“下部”,“上方”和“下方”以及“顶部”和“底部”用于描述存储器管芯104上的部件的相对位置,但它们不应被理解为限制部件的相对定位,因为存储器管芯104或整个存储器系统100可被取向为各种位置中的任一个。

相对于块的部件,块包括多个偏置元件和多个控制线。偏置元件是块的接收偏置、被偏置和/或响应于偏置的部件或单元。与块的偏置元件结合使用的偏置是电压、电流、多个电压、多个电流,或施加到偏置元件和/或由偏置元件接收以引起来自偏置元件的响应或将偏置元件配置为特定状态的至少一个电压和至少一个电流的组合。向偏置元件施加或提供偏置,或者在一个或多个层级上利用偏置来使偏置元件偏置,以引起响应或将偏置元件配置为特定状态以便执行存储器操作。

块的多个偏置元件可全部为单一类型或可各自为多种不同类型中的一种。不同类型的偏置元件可在块中执行不同的功能和/或可在存储器操作期间在不同层级上利用不同偏置来偏置。

一种类型的偏置元件为存储器单元。属于同一块的存储器单元被称为存储器单元块。其他类型的偏置元件也是可能的,具体取决于存储器技术。在NAND技术中,其他类型的偏置元件可包括虚设单元、漏极选择栅极晶体管(称为SGD晶体管)和源极选择栅极晶体管(称为SGS晶体管)。至少对于NAND技术,虚设单元是不存储来自主机的数据的存储器单元,并且虚设单元设置为与虚设字线层共面,该虚设字线层保护存储器单元和字线层不受某些边缘效应的影响。SGD晶体管和SGS晶体管可被配置为在特定时间和/或响应于某些偏置而被启用(接通),禁用或禁止(关闭)或以其他方式被配置为导电状态和非导电状态,以允许执行存储器操作(例如,允许将数据编程到存储器单元中,从存储器单元读取数据或擦除数据)。除存储器单元、虚设单元,SGD晶体管和/或SGS晶体管之外或与它们同样的偏置元件类型也是可能的。

此外,块的控制线是块的导电结构、元件或部件,其向块的一个或多个偏置元件提供、施加或输出偏置的至少一部分(诸如单个电压或单个电流)和/或利用偏置的至少一部分将一个或多个偏置元件偏置。在至少一些示例性配置中,控制线用作接触线,因为其是物理延伸到并接触它偏置的一个或多个偏置元件的导电线,诸如通过接触和/或形成其偏置的偏置元件的电极或端子的至少一部分。

块的控制线可被组织、布置、表征、划分或配置成多个不同类型的控制线。可通过它们用来将偏置元件偏置的方式将控制线组织成各个类型。例如,同一类型的控制线可以相同的方式将偏置元件偏置,诸如通过将相同类型的偏置元件偏置和/或将偏置元件的相同类型的端子偏置。

对于NAND技术,块的控制线可被组织成三种主要类型,包括控制栅极线、位线和源极线。控制栅极线(至少对于NAND技术)是将控制栅极电压施加到一个或多个偏置元件的一个或多个控制栅极端子(或仅称控制栅极)的控制线,和/或利用控制栅极电压偏置一个或多个偏置元件的一个或多个控制栅极端子的控制线。

位线(至少对于NAND技术)是将位线电压施加到一个或多个偏置元件的一个或多个漏极端子(或仅称漏极)的控制线,和/或利用位线电压偏置一个或多个偏置元件的一个或多个漏极端子的控制线。在该上下文中,位线电压可另选地称为漏极电压,其中位线是将漏极电压施加到一个或多个偏置元件的一个或多个漏极端子的控制线。在具体示例性配置中,位线通过以下方式偏置漏极端子:将其位线电压施加到一个或多个NAND串和/或相关联的通道的一个或多个漏极端或漏极侧,和/或利用位线电压偏置一个或多个NAND串和/或相关联的通道的一个或多个漏极端或漏极侧。在这种情况下,位线电压可另选地称为漏极侧通道电压(或仅称漏极侧电压)。在本文中,除非另有明确描述,否则术语位线电压、漏极电压、漏极侧电压和漏极侧通道电压可互换使用,至少因为这些电压属于NAND技术。下文将进一步详细描述NAND串、通道及其漏极端。

源极线(至少对于NAND技术)是将源极线电压施加到一个或多个偏置元件的一个或多个源极端子(或仅称源极)的控制线,和/或利用源极线电压偏置一个或多个偏置元件的一个或多个源极端子的控制线。在该上下文中,源极线电压可另选地称为源极电压,其中源极线是将源极电压施加到一个或多个偏置元件的一个或多个源极端子的控制线。在具体示例性配置中,源极线通过以下方式偏置源极端子:将其源极线电压施加到一个或多个NAND串和/或相关联的通道的一个或多个源极端或源极侧,和/或利用源极线电压偏置一个或多个NAND串和/或相关联的通道的一个或多个源极端或源极侧。在这种情况下,源极线电压可另选地称为源极侧通道电压(或仅称源极侧电压)。在本文中,除非另有明确描述,否则术语源极线电压、源极电压、源极侧电压和源极侧通道电压可互换使用,至少因为这些电压属于NAND技术。另外,块的源极线可另选地称为单元源极线CELSRC。下文将进一步详细描述NAND串、通道及其源极端。

在至少一些示例性配置中,块的控制栅极线可被进一步组织、布置、表征、划分或配置为多个不同的控制栅极类型(或子类型)。具体地讲,控制栅极线可被进一步布置成它们偏置的偏置元件的类型,并且包括字线、虚设字线、漏极选择栅极线(称为SGD线)和源极选择栅极线(称为SGS线)。

字线是将字线电压施加到一个或多个存储器单元的一个或多个控制栅极的控制栅极线,和/或利用字线电压将一个或多个存储器单元的一个或多个控制栅极偏置的控制栅极线。虚设字线是将虚设字线电压施加到一个或多个虚设单元的一个或多个控制栅极的控制栅极线,和/或利用虚设字线电压将一个或多个虚设单元的一个或多个控制栅极偏置的控制栅极线。漏极选择栅极线(称为SGD线)是将漏极选择栅极电压(称为SGD线电压)施加到一个或多个SGD晶体管的一个或多个控制栅极的控制栅极线,和/或利用SGD线电压将一个或多个SGD晶体管的一个或多个控制栅极偏置的控制栅极线。源极选择栅极线(称为SGS线)是将源极选择栅极电压(称为SGS线电压)施加到一个或多个SGS晶体管的一个或多个控制栅极的控制栅极线,和/或利用SGS线电压将一个或多个SGS晶体管的一个或多个控制栅极偏置的控制栅极线。

对于三维块的一些示例性配置,至少一种类型的控制线被实现或形成为多个层。例如,在至少一些3-D NAND配置中,块的控制栅极线被实现或形成为层。一般来讲,层(换句话讲称为片或板)是在垂直于z方向的x-y方向上延伸的大致为平面的结构。层具有面向相反方向的相对的平坦表面。平坦表面中的一个为在z方向上远离基板402的顶部表面,并且其中的另一个为在z方向上朝向基板402的底部表面。

本文中,术语“线”和“层”(至少在它们用于指控制线时,除了下文进一步详细描述的SGD线之外)可互换使用或作为彼此的替代形式使用。例如,术语“控制栅极线”和“控制栅极层”可互换使用;术语“字线”和“字线层”可互换使用;术语“虚设字线”和“虚设字线层”可互换使用;并且术语“源选择栅极线”(或SGS线)和“源选择栅极层”(或SGS层)可互换使用。

此外,至少对于3-D NAND技术的一些示例性配置,三维块包括叠堆。一般来讲,叠堆是设置在彼此顶部的多个层或一系列层。对于3-D NAND,块的叠堆包括多个控制栅极层和多个介电层。至少当用叠堆的控制栅极层实现时,介电层是将一个控制栅极层与另一个控制栅极层电隔离的层。在叠堆中,控制栅极层和介电层以交替方式布置,因为当叠堆在z方向上远离基板延伸时,这些层在控制栅极层和介电层之间连续地交替。在这种情况下,三维块的叠堆是一系列交替设置的控制栅极层和介电层。

三维块的叠堆包括由层的侧表面和边缘限定的外表面和边缘,以及叠堆的最顶层的顶部表面和叠堆的最底层的底部表面。叠堆的外表面和边缘继而限定叠堆的外边界。三维块的偏置元件以三维方式布置在外边界内。在这种情况下,三维块的偏置元件被称为设置在叠堆中或叠堆内。

此外,至少对于一些示例性配置,三维块的偏置元件与控制栅极层共面(在x-y方向上)设置。具体地讲,偏置元件与它们被配置成由其偏置的控制栅极层共面。因此,被配置为由特定字线层偏置的存储器单元设置成与该特定字线层共面;被配置为由特定SGD层偏置的SGD晶体管设置成与该特定SGD层共面;被配置为由特定SGS层偏置的SGS晶体管设置成与该特定SGS层共面;并且被配置为由特定虚设字线层偏置的虚设单元设置成与该特定虚设字线层共面。

与给定的控制栅极层共面和/或被配置为由给定的控制栅极层偏置的偏置元件可称为设置在给定的控制栅极层中,位于给定的控制栅极层中,和/或耦接到给定的控制栅极层。例如,与给定的字线共面和/或被配置为由给定的字线偏置的存储器单元可称为设置在给定的控制字线层中,位于给定的字线层中,和/或耦接到给定的字线层。

此外,至少对于3-D NAND技术的一些示例性配置,三维块包括多个通道。通道是在z方向上延伸穿过块的叠堆的细长结构,块的偏置元件在通道周围或围绕通道形成或设置。在通道周围或围绕通道设置或形成的偏置元件可至少部分地,并且在一些配置中完全包括或围绕该通道。

此外,至少对于3-D NAND技术的一些示例性配置,块的偏置元件利用通道进行偏置。换句话讲,通道是块的用来将偏置元件偏置的结构。具体地讲,偏置元件的漏极端子和源极端子利用通道进行偏置。具有由给定通道偏置的源极端子和漏极端子的偏置元件耦接到该给定通道。

每个通道包括相应的漏极端子(或漏极侧)和相应的源极端(或源极侧)。通道在z方向上从其漏极端到其源极端延伸穿过基板。块的位线电连接或耦接到通道的漏极端,并且块的源极线电连接或耦接到通道的源极端。在块中,位线将位线电压(或漏极电压或漏极侧电压或漏极侧通道电压)施加到与其耦接的一个或多个通道的一个或多个漏极端。源极线将源极线电压(或源极电压或源极侧电压或源极侧通道电压)施加到与其耦接的通道的源极端。

另外,如本文所用,NAND串是在同一通道周围或围绕同一通道形成或设置的多个偏置元件或偏置元件集合。包括在给定通道周围或围绕给定通道设置或形成的偏置元件的给定通道和给定NAND串被称为耦接到彼此和/或彼此相关联。此外,属于同一NAND串的偏置元件被称为耦接到彼此。

对于至少一些示例性配置,NAND串的偏置元件包括多个存储器单元、至少一个SGD晶体管和至少一个SGS晶体管。在具体示例性配置中,NAND串还可包括一个或多个虚设单元。

NAND串围绕其相关联的通道在z方向上延伸。与通道类似,NAND串各自包括相应的漏极端(或漏极侧)和源极端(或源极侧)。通道在z方向上从其漏极端到其源极端朝基板延伸。

NAND串的漏极端电耦接到其相关联的通道的漏极端。因此,位线电连接或耦接到通道和相关联的通道元件组的漏极端。位线被配置为将位线电压(或漏极电压、漏极侧通道电压或漏极侧电压)施加到位线所耦接的通道和相关联的NAND串的漏极端。换句话讲,位线电压(或漏极电压、漏极侧通道电压或漏极侧电压)是位线生成并施加到位线电连接或耦接的通道的漏极端(或漏极侧)和/或NAND串的漏极端(或漏极侧)的电压。在至少一些存储器操作期间,位线可通过将位线电压(或漏极电压、漏极侧通道电压或漏极侧电压)施加到位线电连接或耦接的一个或多个通道的一个或多个漏极端和/或一个或多个NAND串的一个或多个漏极端,来将一个或多个偏置元件的一个或多个漏极端子偏置。换句话讲,在存储器操作期间,位线利用位线所耦接的一个或多个通道的漏极端和/或一个或多个NAND串的漏极端来利用位线电压(或漏极电压、漏极侧通道电压或漏极侧电压)将一个或多个偏置元件的一个或多个漏极端子偏置。

相似地,NAND串的源极端电耦接到其相关联的通道的源极端。因此,源极线电连接或耦接到通道和相关联的通道元件组的源极端。源极线被配置为将源极线电压(或源极电压、源极侧通道电压或源极侧电压)施加到源极线所耦接的通道和相关联的NAND串的源极端。换句话讲,源极线电压(或源极电压、源极侧通道电压或源极侧电压)是源极线生成并施加到源极线电连接或耦接的通道的源极端(或源极侧)和/或NAND串的源极端(或源极侧)的电压。在至少一些存储器操作期间,源极线可通过将源极线电压(或源极电压、源极侧通道电压或源极侧电压)施加到源极线电连接或耦接的一个或多个通道的一个或多个源极端和/或一个或多个NAND串的一个或多个源极端,来将一个或多个偏置元件的一个或多个源极端子偏置。换句话讲,在存储器操作期间,源极线利用源极线所耦接的一个或多个通道的源极端和/或一个或多个NAND串的源极端来利用源极线电压(或源极电压、源极侧通道电压或源极侧电压)将一个或多个偏置元件的一个或多个源极端子偏置。

此外,NAND串的偏置元件在同一通道周围或围绕同一通道沿z方向延伸。NAND串的每个偏置元件设置成与块的所述多个控制栅极层中的一个共面。就这一点而言,块的每个控制栅极层被配置为将NAND串的所述多个偏置元件中相应的一个的控制栅极偏置。

此外,对于至少一些示例性配置,块的NAND串可具有相同数量的偏置元件,偏置元件类型的相同组合,以及每个偏置元件类型的相同数量的偏置元件。另外,其相应偏置元件类型的偏置元件在z方向上远离基板延伸的偏置元件顺序在块的NAND串之间是相同的。至少对于3-D NAND技术的一些示例性配置,从最靠近基板开始并在z方向上远离基板移动的NAND串的偏置元件的偏置元件顺序包括:一个或多个SGS晶体管,然后是一个或多个源极侧虚设单元,然后是多个存储器单元,然后是一个或多个漏极侧虚设单元,然后是一个或多个SGD晶体管。其他偏置元件顺序可以是可能的。

控制栅极层的控制栅极层顺序及其相应类型可匹配或对应于块的偏置元件顺序。因此,至少对于3-D NAND技术的一些示例性配置,从最靠近基板开始并在z方向上远离基板移动的块的多个控制栅极层的控制栅极层顺序包括:一个或多个SGS层,然后是一个或多个源极侧虚设子线层,然后是多个字线层,然后是一个或多个漏极侧虚设子线层,然后是一个或多个SGD层。

进一步详细地,图4B示出了块410的一部分的剖视图,该块可代表图4A的块400中的一个。块410包括交替的控制栅极层和介电层(DL)的叠堆412。此外,图4B中示出的部分包括延伸穿过这些层的两个通道(或存储器孔),包括第一通道414和第二通道416。在这两个通道414、416周围形成两个NAND串的偏置元件由图4B中的虚线框标识。具体地讲,在第一通道414周围形成第一NAND串NS1的偏置元件由标记为NS1的虚线框标识,并且在第二通道416周围形成第二NAND串NS2的偏置元件由标记为NS2的虚线框标识。下面参考图4C,结合第一NAND串NS1的特定区域418和相关联的第一通道414进一步详细地描述偏置元件和用于形成元件和通道的示例性材料的更多细节。

为了举例说明的目的,在图4B中,在第一通道414和第二通道416周围形成的第一NAND串CEG1和第二NAND串CEG2都电连接到第i个位线BLi。在实际具体实施中,块可包括数百个或数千个位线。块的通道和相关联的NAND串的布置可确定哪些通道和NAND串电连接到哪些位线。在块的所述多个通道和NAND串中,通道和相关联的NAND串的某些组合彼此电连接到同一位线,而通道和相关联的NAND串的某些其他组合彼此电连接到不同位线。

此外,给定的NAND串可利用其相关联的通道和将相关联的通道与位线电连接的导电通孔电连接到给定的位线。例如,在图4B中,第一NAND串CEG1利用第一通道414和将第一通道414与第i位线BLi电连接的导电通孔420电连接到第i位线BLi。第二NAND串CEG2利用第二通道416和将第二通道416与第i位线BLi电连接的导电通孔422电连接到第i位线BLi。将位线与NAND串电连接的其他方式也可为可能的。

块410还可包括基板424或设置在该基板上。绝缘膜426可形成在基板424上,并且源极线SL可形成或设置在叠堆412的最底层上。

此外,在图4B中示出的示例性配置中,每个通道414、416包括连接到源极线SL的源极端,以及连接到其相关联的导电通孔的漏极端。在图4B中,第一通道414包括连接到源极线SL的源极端428和连接到导电通孔420的漏极端430。相似地,第二通道416包括连接到源极线SL的源极端432和连接到导电通孔422的漏极端434。

此外,在至少一些示例性配置中,块410还可包括延伸穿过叠堆412的竖直互连件(例如,金属填充狭缝),所述竖直互连件将源极线SL连接到堆叠412上方的导电线,诸如上部区域408(图4A)中的金属层中的一个中的导电线。出于举例说明的目的,图4B示出了延伸穿过叠堆412的两个互连件436、438。

此外,在图4B中的示例性配置中,为了举例说明的目的,NAND串中的每一个包括两个SGS晶体管、两个源极侧虚设单元、十一个存储器单元、两个漏极侧虚设单元和两个SGD晶体管。因此,叠堆412的控制栅极层包括:两个SGS层,包括第一SGS层SGSL0和第二SGS层SGSL1;两个源极侧虚设字线层,包括第一源极侧虚设字线层DWLS0和第二源极侧虚设字线层DWLS1;从第一字线层WLL0延伸至第十一字线层WLL10的十一个字线层;两个漏极侧虚设字线层,包括第一漏极侧虚设字线层DWLD0和第二漏极侧虚设字线层DWLD1;以及两个SGD层,包括第一SGD层SGSL0和第二SGD层SGDL1。该叠堆还包括从第一DL0介电层DL19延伸至第二十介电层的二十个介电层,它们交替地设置在控制栅极层之间。

在图4B中的块410的示例性配置中,用于NAND串的偏置元件的数量及其相应偏置元件类型以及对应的控制栅极层的数量是非限制性的,并且出于举例说明的目的,仅仅是示例性的。任何偏置元件类型的偏置元件的其他数量,或不包括某些偏置元件类型的偏置元件,或包括除图4B中示出的那些之外的偏置元件类型的一个或多个偏置元件的其他配置也可为可能的。

图4C是图4B的块410的区域418的近距离视图。形成偏置元件的材料在叠堆412的相应控制栅极层和相应通道的交汇处在不同层级形成。在块410的示例性配置中,如图4C的近距离视图所示,第一SGD晶体管440和第二SGD晶体管442设置在第一通道414的漏极端430下方并且在第一漏极侧虚设单元444和第二漏极侧虚设单元446以及第十一存储器单元MC10上方。

在物理上或结构上,通道包括z方向上延伸的存储器孔限定侧壁(SW)。通道还包括设置在存储器孔中和/或侧壁上的一个或多个材料层,诸如通过使用原子层沉积作为例子。在一些示例性配置中,如相对于第一通道414所述,通道的材料层(可以被称为材料的列或柱)可包括电荷俘获层或膜448诸如氮化硅、隧道层450、多晶硅主体或通道452和介电芯454。此外,在一些示例性配置中,诸如图4C中示出的配置,构成偏置元件中的每一个的材料可包括阻挡氧化物/阻挡高k材料456、阻挡金属458和形成晶体管的控制栅极的导电金属460(例如,钨)。形成偏置元件的材料可设置在与相应的控制栅极层相同的层级或相同的平面中。其他配置可使用沿着侧壁(SW)沉积的材料和/或除参考图4C示出和描述的那些之外的偏置元件。

图4D示出了三维块480的示例性配置的电路示意图,该三维块可代表图4A的块400中的一个的至少一部分和/或具有如图4B、图4C描绘的物理构造或结构。在图4D中,每个偏置元件被表示或描绘为晶体管。此外,存储器单元被标记为MC,SGD晶体管被标记为SGDT,并且SGS晶体管被标记为SGST。在示例性块480中,每个NAND串(例如,CEG1)包括50个单元,其中包括从第一存储器单元MC1延伸到第48存储器单元MC48的48个存储器单元,一个SGD晶体管SGDT和一个SGS晶体管SGST。其他NAND串配置是可能的,包括那些包括一个或多个源极侧虚设单元、一个或多个漏极侧虚设单元、多于一个SGD晶体管和/或多于一个SGS晶体管的那些,如前所述。

根据图4B中的NAND串配置,块480包括50个控制栅极层,包括从第一字线层WLL1延伸到第48字线层WLL48的48个字线层,一个SGD层SGDL和一个SGS层SGSL。如前所述,每个NAND串中的第i个存储器单元MCi设置在控制栅极层中的第i个字线层WLLi中并配置为使其相应的控制栅极由该字线层偏置。例如,NAND串CEG的第一存储器单元MC1设置在第一字线层WLL1中并配置为使其控制栅极由该第一字线层偏置,第二存储器单元MC2设置在第二字线层WLL2中并配置为使其控制栅极由该第二字线层偏置,并且NAND串CEG的第48存储器单元MC48设置在第48字线层WLL48中并配置为使其控制栅极由该字线层偏置。此外,NAND串的SGD晶体管设置在SGD层SGDL中并配置为使其相应的控制栅极由该SGD层SGDL偏置,并且NAND串的SGS晶体管设置在SGS层SGSL中并配置为使其相应的控制栅极由该SGS层SGSL偏置。

如图4D所示,NAND串CEG及其相关联的通道在块480中以x和y方向二维地布置,并且电连接到m个位线。在具体示例性配置中,NAND串CEG及其相关联的通道根据通道布置被二维地布置,所述通道布置取决于连接到单个位线的P个NAND串及其相关联的通道。换句话讲,每个位线BL被配置为电连接到P个NAND串及其相关联的通道组成的唯一组,将相应的位线电压施加到该唯一组,和/或利用相应的位线(通道)电压将该唯一组偏置。

在图4D的示例性配置中,每个位线BL被配置为电连接到四个NAND串(即,P=4)。因此,图4D示出了电连接到第一NAND串CEG1、第二NAND串CEG2、第三NAND串CEG3和第四NAND串CEG4中的每一者的第一位线BL1。其他两个到第m位线(BL2至BLm)中的每一者也电连接至相应的一组四个NAND串及其相应的通道。对于各种其他配置,除四之外的用于P的数字可以是可能的。

在一些示例性配置中,可将一个SGD层分离或划分成彼此电隔离或断开的多个不同的漏极选择栅极(SGD)子层。例如,可将SGD层蚀刻以移除形成SGD层的金属的一部分,以便形成多个电隔离或断开的SGD子层。

同一SGD层的不同SGD子层可独立地和/或单独地被偏置和/或提供有多个SGD线电压中的不同的一个。继而,对于设置在同一SGD层中的给定多个SGD晶体管,同一SGD层中的每个SGD子层可被配置为将设置在其SGD子层中的那些SGD晶体管的控制栅极偏置,但不将设置在其他SGD子层中的SGD晶体管的控制栅极偏置。这样,多个SGD子层可被配置为独立地或单独地利用多个SGD线电压中的相应一个将其相应SGD子层中的不同SGD晶体管进行偏置。

此外,例如包括多个SGD层的配置,每个SGD层可包括多个SGD子层。每个SGD层中的SGD子层的数量可以相同。此外,不同SGD层中的SGD子层的某些组合可电耦接在一起和/或提供有同一SGD线电压,使得同一NAND串的SGD晶体管利用同一SGD线电压使其控制栅极偏置。将利用同一SGD线电压将SGD晶体管偏置的SGD子层形成同一SGD线的一部分。

如本文所用,SGD线是块的利用公共或同一SGD线电压将SGD晶体管的控制栅极偏置的导电结构。因此,如本文针对SGD层和SGD线所具体使用的,术语“线”和“层”不可互换使用。相反,SGD线是单个SGD子层,或一系列SGD子层,每个子层属于不同的SGD层。具体地讲,对于包括单个SGD层的3-D块配置,SGD层的每个SGD子层形成整个SGD线。对于包括多个SGD层的3-D块配置,每个SGD子层与来自一个或多个其他SGD层的一个或多个其他SGD子层形成SGD线的一部分。

此外,不同的SGD线被配置为独立地或单独地利用不同SGD线电压将块的不同集合或组的SGD晶体管偏置。SGD线被配置为将其耦接或电连接的那些SGD晶体管的控制栅极偏置,并且不将从其解耦或电断开的那些SGD晶体管的控制栅极偏置。因此,块的SGD晶体管SGDT被布置或形成为多个SGDT组。属于同一SGDT组的SGD晶体管耦接到同一SGD线并且被配置为由同一SGD线电压偏置。属于不同SGDT组的SGD晶体管耦接到不同的SGD线并且被配置为由不同的SGD线电压偏置。

此外,对于3-D块的至少一些示例性配置,SGD线的数量等于连接到同一位线的P个NAND串和相关联的通道的数量。例如,参考图4D,块480包括对应于连接到单个位线的四个NAND串的四个SGD线,包括第一SGD线SGD1、第二SGD线SGD2、第三SGD线SGD3和第四SGD线SGD4。换句话讲,SGD层SGDL包括四个SGD线,即SGD1、SGD2、SGD3和SGD4。

此外,NAND串可被布置为使得对于连接到同一位线的给定一个NAND串集合,该集合中的每个NAND串使其SGD晶体管SGDT耦接到SGD线中的不同的一个。例如,在图4D的块480中,连接到第一位线BL1的四个NAND串CEG1、CEG2、CEG3、CEG4的集合使其相应的SGD晶体管连接到SGD线SGD1、SGD2、SGD3、SGD4中的不同的一个。具体地讲,第一NAND串CEG1包括SGD晶体管SGDT1,该SGD晶体管耦接到第一SGD线SGD1并配置为使其控制栅极由该第一SGD线偏置,第二NAND串CEG2包括SGD晶体管SGDT2,该SGD晶体管耦接到第二SGD线SGD2并配置为使其控制栅极由该第二SGD线偏置,第三NAND串CEG3包括SGD晶体管SGDT3,该SGD晶体管耦接到第三SGD线SGD3并配置为使其控制栅极由该第三SGD线偏置,并且第四NAND串CEG4包括SGD晶体管SGDT4,该SGD晶体管耦接到第四SGD线SGD4并配置为使其控制栅极由该第四SGD线偏置。

基于不同的SGD线,可以跨m个字线将3-D块布置、组织或划分为子块(例如,图4D中的项目SB1-SB4)。如本文所用,子块是块的一部分,该部分具有NAND串,其中SGD晶体管被配置为由同一SGD线偏置和/或利用同一SGD线电压偏置。子块可(诸如,在x方向上)横跨块的m个字线。此外,具有被配置为由不同SGD线偏置和/或利用不同SGD线电压偏置的SGD晶体管的NAND串属于不同子块。

块的子块的数量可以等于SGD线的数量。例如,图4D的示例性块480包括等于SGD线的数量的四个子块(SB),包括第一子块SB1、第二子块SB2、第三子块SB3和第四子块SB4。第一子块SB1包括具有耦接到第一SGD线SGD1并配置为利用第一SGD线电压偏置的SGD晶体管SGD1的那些NAND串,第二子块SB2包括具有耦接到第二SGD线并配置为利用第二SGD线电压偏置的SGD单元SGD2的那些NAND串,第三子块SB3包括具有耦接到第三SGD线并配置为利用第三SGD线电压偏置的SGD单元SGD3的那些NAND串,并且第四子块SB4包括具有耦接到第四SGD线并配置为利用第四SGD线电压偏置的SGD单元SGD4的那些NAND串。

此外,存储器单元块(即,属于同一块的存储器单元)可在子块级别上或在子块级别和字线级别两者上被布置、组织、分离和/或标记。属于同一子块的多个存储器单元MC被称为存储器单元子块。换句话讲,存储器单元子块是具有耦接到同一SGD线和/或配置为利用同一SGD线电压偏置的SGD单元的NAND串的存储器单元。

此外,属于同一子块的多个存储器单元以及还设置在同一字线层中和/或配置为使其控制栅极由同一字线和/或利用同一字线电压偏置的多个存储器单元称为存储器单元的字线单元组。换句话讲,存储器单元的字线单元组是耦接到同一字线层的多个存储器单元或存储器单元集合,以及属于配置为利用同一SGD线电压偏置的NAND串的多个存储器单元或存储器单元集合。

单个字线层可包括多个字线单元组,使得设置在单个字线层中的存储器单元被组织、布置或设置为多个字线单元组。耦接到同一字线层但属于具有耦接到不同SGD线的SGD晶体管的NAND串的存储器单元属于不同的字线单元组。在具体示例性配置中,耦接到单个字线层的字线单元组的数量等于块的SGD线的数量。此外,单个字线单元组的存储器单元的数量可等于m个位线即BL1至BLm的数量,使得字线单元组的每个存储器单元电连接到m个位线即BL1至BLm中的不同的一个。

此外,块的存储器单元或存储器单元结构142的存储器单元通常被配置为将数据存储为位或二进制数字,其中每一位具有逻辑0或逻辑1二进制值。单个存储器单元可被配置为存储单个位或多个位。单个存储器单元存储的一个位或多个位称为数据值。换句话讲,数据值是单个存储器单元存储的n位二进制值,其中n是该二进制值的位数,并且其中数字n为一或超过一。单个存储器单元可以存储的可能数据值的数量取决于它被配置为存储的n个位。具体地讲,单个存储器单元可存储的可能数据值的数量为2n

存储器单元可称为单级单元或多级单元,具体取决于它们被配置为存储的位的数量。称为SLC单元(或仅称SLC)的单级单元是被配置为存储单个位数据或一个位数据的存储器单元。称为MLC单元(或仅称MLC)的多级单元是被配置为存储多个(即,两个或更多个)位数据的存储器单元。MLC单元可存储的位数包括2、3或4,但可能存在存储多于4位的MLC单元。

通常,存储器单元的某些集合被配置为存储相同数量的位。例如,属于同一字线单元组、属于同一块或属于同一存储器单元结构142的存储器单元被配置为存储相同数量的位。在这种情况下,给定集合的存储器单元(例如,同一字线单元组、同一块、同一存储器单元结构等的存储器单元)基于每单元位数来存储数据。给定集合的每个存储器单元为存储相同数量的每单元位。

此外,存储器单元结构142(包括存储器单元结构142的块和字线单元组)可将数据存储为页面。在本文中,页面是存储器单元的单个字线单元组存储的单个数据单元。单个字线单元组存储的页面的数量取决于该单个字线单元组的存储器单元被配置为存储的每单元位数。例如,SLC单元的字线单元组被配置为存储单个页面或一个页面的数据;被配置为存储每单元两位的MLC单元的字线单元组被配置为存储两个页面的数据;并且被配置为存储每单元三位的MLC单元的字线单元组被配置为存储三个页面的数据。

此外,存储器单元结构142可根据一个或多个存储方案来存储数据。如本文所用,存储方案是包括预定义的一组动作和存储器系统实施以存储数据的预定义的一组参数的总体计划。用于特定集合的存储器单元的给定存储方案可识别或限定该特定集合的存储器单元被配置为存储的每单元位数。存储器系统的部件(包括给定存储器管芯上的电路部件)被配置为根据给定存储方案对该特定集合执行存储器操作,以便将数据编程到该特定集合的存储器单元中和/或从该特定集合的存储器单元中读取数据。

不同存储器技术的存储器单元可根据不同存储方案来存储数据。此外,同一存储器技术的存储器单元可根据不同存储方案来存储数据。例如,具有同一存储器技术但位于不同存储器系统中,或在同一存储器系统中但在不同存储器管芯中,或在同一存储器管芯的不同块或平面中,或甚至同一块的不同字线层或不同字线单元组中的存储器单元可至少相对于不同存储器单元被配置为存储的每单元位数来存储数据。

至少对于NAND存储器技术,NAND存储器单元可被配置为根据多个不同存储方案中的一个来存储数据,其中每个存储方案与不同的每单元位数相关联或识别不同的每单元位数。在至少一些示例性配置中,一些NAND存储器单元可根据一个存储方案存储数据,而其他NAND存储器单元根据不同的存储方案存储数据。因此,位于不同存储器系统中,或在同一存储器系统中但在不同的管芯、平面、块、字线层或字线单元组中的两个不同的NAND存储器单元集合可根据不同的存储方案来存储不同的每单元位数。为了举例说明,一个NAND存储器单元集合可被配置为SLC单元,并且另一个NAND存储器单元集合可被配置为MLC单元。

此外,同一存储器单元(或同一存储器单元集合)可被配置为根据不同的存储方案在不同时间存储不同的每单元位数。为了举例说明,在一个示例中,可将存储器单元配置为在一个时间点为SLC单元,然后将其重新配置为在稍后的时间点为MLC单元。又如,可将存储器单元配置为在一个时间点为MLC单元,然后将其重新配置为在稍后的时间点为SLC单元。又如,存储单元可被配置为在一个时间点为存储第一数量的每单元位的MLC单元,然后被重新配置为在稍后的时间点存储第二数量的每单元位的MLC单元,其中第一数量和第二数量彼此不同,其中第一数量小于或大于第二数量。

此外,存储器单元通过将相关联的存储参数(另选地或换句话讲称为特性、属性或特征)设置为某个水平、值、量值或状态来存储数据。相关联的参数是可调节的或可变的,并且可通过在某些存储器操作期间并根据某些存储方案在某些时间将耦接到存储单元的控制线以一定水平偏置来控制。在限定一组数据值的一个存储方案内,存储器单元可以通过将其存储参数设置为某个水平、值、量值或状态,或者在水平、值、量值或状态的预定范围内,来以数据值中的某个值存储数据。存储器单元处于或设置的水平、值、量值或状态对应于存储器单元正在存储的集合的数据值。此外,存储器单元可被配置为存储不同的值,或将正在存储的数据的数据值从一个数据值更改为另一个数据值,具体是通过将存储参数更改或调节为不同的水平、值、量值或状态。

存储器单元存储数据所需的存储参数取决于存储器技术,并且可以在不同的存储器技术之间变化。对于NAND技术,存储参数为阈值电压。至少相对于NAND存储器单元,存储器单元的阈值电压是施加到存储器单元的控制栅极的电压,在该电压下存储器单元变为导电。阈值电压的水平(或者称为值或量值)取决于存储器单元正在存储或捕获的电荷的量或与该量成比例。存储器单元正在存储的电荷越多,其阈值电压就越高,并且存储器单元正在存储的电荷越少,其阈值电压就越低。因此,通过将存储器单元的阈值电压设定为特定水平来设定存储器单元正在存储的数据值,并且通过将阈值电压改变为不同的水平或在不同的水平范围内来调节或改变数据值。

此外,对于NAND技术,存储器单元通过配置在各存储器状态中来存储数据。如本文所用,存储器状态是标识存储器单元正在存储、可存储或预期将存储的数据的数据值的标识符。存储方案识别或定义可用来配置存储器单元的相关联的多个或一组存储器状态。每个存储器状态标识由存储方案识别或定义的多个数据值中的一个数据值,对应于该数据值和/或与该数据值相关联。因此,被配置为给定存储器状态的存储器单元正在存储对应于该给定存储器状态的数据值。存储器单元可通过被配置成不同的存储器状态来存储不同的数据值。

对于给定的存储方案,存储器状态包括擦除状态以及一个或多个编程状态。擦除状态是当存储器单元在被擦除时配置的存储器状态。对于至少一些示例性配置,擦除状态是存储器单元集合中的全部存储器在用以对该集合中的至少一些存储器单元进行编程的编程操作开始时所述的存储器状态。编程状态是存储器单元在经受编程操作之后所处的存储器状态。在给定时间点,存储器单元可处于擦除状态或处于编程状态中的一个。

此外,对于给定的存储方案,每个存储器状态具有相关联的阈值电压水平范围,对应于该范围,或与该范围相关联,其中每个范围由上限阈值电压水平和下限阈值电压水平界定。换句话讲,给定的存储方案可定义多个不重叠的阈值电压范围,其中每个范围与由给定存储方案定义或识别的多个存储器状态中的相应一个相关联或对应。继而,每个范围具有数据值中的相应一个,对应于该相应一个,或与该相应一个相关联。这样,存储方案在阈值电压范围、存储器状态和数据值之间建立了一一对应关系。根据该一一对应关系来对存储器单元进行编程和读取。即,配置有在给定阈值电压范围内的阈值电压水平的存储器单元被配置为与该给定阈值电压范围相关联的存储器状态,继而存储具有与该给定阈值电压范围和对应存储器状态相关联的数据值的数据。

对于具体实施方案,擦除状态与最低阈值电压范围相关联。编程状态与从与擦除状态相关联的范围起连续或顺序地更高的阈值电压范围相关联。

此外,作为非限制性示例,存储方案可以各种方式中的任何一种来标记或命名存储器状态,包括以字母、数字或字母数字方式。在具体示例性配置中,擦除状态被称为擦除状态,并且通过将字母表中的排序较靠后的字母或较大的数字与较高阈值电压范围相关联,来利用字母、数字或它们的组合对编程状态进行命名。例如,存储器状态C与比存储器状态A高的阈值电压范围相关联,并且存储器状态8与比存储器状态1高的阈值电压范围相关联。各种标记或命名存储器状态的方法是可能的。

此外,存储器状态相对于彼此可被称为较高存储器状态和较低存储器状态。第一存储器状态是比第二存储器状态更高的存储器状态,其中第一存储器状态与比与第二存储器状态相关联的阈值电压范围更高的阈值电压范围相关联。此外,第一存储器状态是比第二存储器状态更低的存储器状态,其中第一存储器状态与比与第二存储器状态相关联的阈值电压范围更低的阈值电压范围相关联。

此外,数据值与存储器状态和/或阈值电压范围对应的方式可以变化,并且在具体的实施方案中,数据值对应于或分配给存储器状态和/或阈值电压范围的方式可取决于特定码方案,诸如格雷码方案。

在具体实施中,编程到相同存储器状态中的存储器单元集合可具有作为编程的结果的相关联阈值电压集合。阈值电压可被表示为阈值电压概率分布,或仅被表示为根据阈值电压的集合中存储器单元的数量的阈值分布。

给定存储方案可具有模型、参考、理想或目标阈值电压分布,该阈值电压分布可以是例如针对由给定存储方案限定的存储器状态和相关联阈值电压范围中的每一者的连续概率分布的形式,诸如高斯分布。模型阈值电压分布可表示用于被编程为具有相同存储器状态的存储器单元集合的理想阈值电压分布的模型。模型阈值电压分布的下尾和上尾可与与每个模型阈值电压分布相关联的范围的上限阈值电压电平和下限阈值电压电平一致或对应。

图5A至图5D是用于将不同位数存储到存储器单元中的不同存储方案的阈值电压分布曲线的曲线图。绘制了存储器单元数量随阈值电压Vth变化的阈值电压分布曲线。此外,图5A至图5D示出了每个阈值电压分布曲线与之相关联的存储器状态、数据值和阈值电压范围。图5A示出了用于每个存储器单元存储一位数据的SLC存储方案的阈值电压分布曲线。图5B至图5D示出了MLC存储方案的阈值电压分布曲线。具体地讲,图5B示出了用于每个存储器单元存储两位数据的MLC存储方案的阈值电压分布曲线;图5C示出了用于每个存储器单元存储三位数据的MLC存储方案的阈值电压分布曲线;并且图5D示出了用于每个存储器单元存储四位数据的MLC存储方案的电压分布曲线。可为用于存储每单元两位、三位或四位以外(诸如以上)的位数的其他存储方案定义或生成相似的阈值电压分布曲线。

参考图5A,对于被配置为存储一位数据的存储器单元,每个存储器单元可被配置为处于擦除状态Er或编程状态A。参考图5B,对于被配置为存储两位数据的存储器单元,每个存储器单元可被配置为处于擦除状态Er或处于三个编程状态A、B、C中的一个。参考图5C,对于被配置为存储三位的存储器单元,每个存储器单元可被配置为处于擦除状态Er或处于七个编程状态A、B、C、D、E、F、G中的一个。参考图5D,对于被配置为存储四位的存储器单元,每个存储器单元可被配置为处于擦除状态Er或十五个编程状态1、2、3、4、5、6、7、8、9、A、B、C、D、E、F中的一个。如图5A至图5D所示,每个电压分布曲线与擦除状态或者这些编程状态中的一个相关联。另外,在本文中,术语“存储器状态”和“编程状态”可互换使用。例如,术语“存储器状态A”和“编程状态A”可互换使用,是指相同存储器状态。

此外,在图5A至图5D中,相关联的存储器状态和数据值包括在每个阈值电压分布曲线之内或之下。例如,图5A将左阈值电压分布曲线示出为与擦除状态Er和逻辑1值相关联,并且将右阈值电压分布曲线示出为与存储器状态A和逻辑0值相关联。对于图5B至图5D所描绘的示例性MLC存储方案,数据值根据格雷码方案随存储器状态和阈值电压范围递增而循序地改变。例如,参考图5B,被配置为处于擦除状态Er的存储器单元存储数据值“11”;被配置为处于存储器状态A的存储器单元存储数据值“01”;被配置为处于存储器状态B的存储器单元存储数据值“00”;并且被配置为处于存储器状态B的存储器单元存储数据值“10”。可针对被编程为存储每单元三位(图5C)、四位(图5D)或超过四位数的存储器单元建立数据值、存储器状态和阈值电压范围之间的相似关系或对应关系。

此外,如图5A至图5D所示,每个编程状态与相应验证电压脉冲水平(或仅称验证脉冲水平)Vv和读取电压脉冲水平(或仅称读取脉冲水平)Vr相关联。例如,就图5A至图5D的存储方案而言,验证脉冲水平VvA和读取脉冲水平VrA与存储器状态A相关联,验证脉冲水平VvB和读取脉冲水平VrB与存储器状态B相关联,并且验证脉冲水平VvC和读取脉冲水平VrC与存储器状态C相关联。相似的验证脉冲水平Vv和读取脉冲水平Vr与其他存储器状态(诸如如图5C和图5D所描绘的存储器状态D-G和存储器状态1-9)相关联。

如图5A至图5D所示,验证脉冲水平Vv和读取脉冲水平Vr指定阈值电压分布曲线的下界或下尾,或者相对于阈值电压分布曲线的下界或下尾定位。如下文进一步详细描述的,验证脉冲水平Vv可用于在编程操作期间设定选定字线电压的水平以便验证存储器单元的编程状态,并且读取脉冲水平Vr可用于在读取操作期间设定选定字线电压的水平以便从存储器单元读取数据。

重新参考图2B,存储器管芯104还可包括读取/写入电路144,其包括多个或p个感测块(也称为感测模块或感测电路)146。如下文进一步详细描述的,感测块146被配置为并行地参与从字线单元组存储器单元读取数据或将数据写入到该字线单元组存储器单元中。

存储器管芯104还可包括行地址解码器(或仅行解码器)148和列地址解码器(或仅列解码器)150。行解码器148(其也可称为字线解码器,x解码器或x线解码器)可对行地址(也称为字线地址或x地址)进行解码,并且在从存储器单元结构142读取数据或将数据编程/写入到该存储器单元结构中时,选择与解码的行地址对应和/或由解码的行地址标识的存储器单元结构142中的特定字线。列解码器150(其也可称为位线解码器,y解码器或y线解码器)可对列地址(也称为位线地址或y地址)进行解码,并且在从存储器单元结构142读取数据或将数据编程到该存储器单元结构中时,选择与列地址对应和/或由列地址标识的存储器单元结构142中的特定字线或位线组。

此外,非易失性存储器管芯104可包括外围电路152。外围电路152可包括控制逻辑电路(也称为控制逻辑、片上控制器或管芯上控制器)154,至少在一些示例性实施方案中,该控制逻辑电路可被实现为被配置为控制片上存储器操作以及将状态信息发送到控制器102的状态机。外围电路152还可包括片上地址解码器156,该片上地址解码器提供由控制器102和/或主机使用的寻址与由行和列解码器148、150使用的寻址之间的地址接口。此外,外围电路152可包括易失性存储器158。易失性存储器158的示例性配置可包括锁存器,但是其他配置也是可能的。

此外,外围电路152可包括功率控制电路160,该功率控制电路被配置为生成控制线路电压(包括电压脉冲)并将其提供给存储器单元结构142的控制线。控制线电压包括提供给控制栅极层的控制栅极线电压、提供给位线的位线电压,以及提供给供给管线的供电电压。控制栅极线电压包括提供给字线的字线电压、提供给SGD线的漏极选择栅极线电压(SGD线电压),以及提供给SGS线的源极选择栅极线电压(SGS线电压)。功率控制电路160还可被配置为生成和/或提供除控制线电压之外的电压,包括可提供给存储器单元结构142、读取/写入电路144、感测块146和/或存储器管芯104上的其他电路部件的其他电压。

功率控制电路160可包括各种电路拓扑结构或电路配置中的任一种,以生成和/或提供适当水平下的电压,从而执行存储器操作(包括读取、编程/写入、感测和擦除操作),诸如驱动器电路、电流源、电荷泵、参考电压生成器、调节器和脉冲生成电路,或者它们的各种组合中的任一种。用于产生电压的其他类型的电路可为可能的。此外,功率控制电路160可与控制逻辑电路154、读取/写入电路144和/或感测块146通信和/或由其控制,以便以适当的电平并且在适当的时间提供电压以执行存储操作。

图6是示例性编程电路600的框图,该编程电路被配置为执行编程操作以将数据编程(写入)到块602中。如本文所用,编程电路是将数据编程或写入到存储器单元中的电路或者电路或电路部件的集合。此外,对于至少一些示例性实施方案,编程电路可验证其编程的存储器单元的编程状态。在具体示例性实施方案中,编程电路位于与其编程和/或验证的存储器单元相同的存储器管芯上。另外,如本文所用,编程操作(另称为写入操作)是编程电路执行的步骤序列以改变存储器单元的电和/或磁特性,使得一个或多个存储器单元的改变的电和/或磁特性表示数据值。

块602可为图2B的存储器单元结构142的块,图3A、图3B或图4A的块BLK中的一个,具有图4B、图4C中的块410的物理构造或结构,和/或具有图4D中的块480的电路配置。块602包括多个控制线,包括多个控制栅极线层(或仅称控制栅极线)、多个位线BL和源极线SL。与图4D的块480相对应,块602包括m个位线BL1至BLm,并且控制栅极层包括四个SGD线SGD1、SGD2、SGD3、SGD4;四十八个字线层(或仅称字线)WLL1至WLL48;以及SGS线/层SGSL。

位线BL被配置为生成位线电压VBL(亦称或另选地称为漏极电压、漏极侧通道电压或漏极侧电压)并将位线电压VBL施加到块602的通道和相关联的NAND串。每个位线BL被配置为生成相应位线电压并将相应位线电压施加到相关联的一组通道和相关联的NAND串。例如,第一位线BL1被配置为生成第一位线电压VBL1并将第一位线电压VBL1施加到第一组通道和相关联的NAND串;第二位线BL2被配置为生成第二位线电压VBL2并将第二位线电压VBL2施加到第二组通道和相关联的NAND串;第三位线BL3被配置为生成第三位线电压VBL3并将第三位线电压VBL3施加到第三组通道和相关联的NAND串;并且第m位线BLm被配置为生成第m位线电压VBLm并将第m位线电压VBLm施加到第m组通道和相关联的NAND串。图6中未示出的其他位线BL4至BL(m-1)被类似地配置为生成相应位线电压并将其相应位线电压施加到相关联的通道组和NAND串。

此外,控制栅极线被配置为生成控制栅极电压并将控制栅极电压施加到控制栅极线分别与之耦接的偏置元件的控制栅极。例如,第一SGD线SGD1被配置为生成第一SGD线电压VSGD1并将第一SGD线电压VSGD1施加到与第一SGD线SGD1耦接的SGD晶体管的控制栅极。第二SGD线SGD2被配置为生成第二SGD线电压VSGD2并将第二SGD线电压VSGD2施加到与第二SGD线SGD2耦接的SGD晶体管的控制栅极;第三SGD线SGD3被配置为生成第三SGD线电压VSGD3并将第三SGD线电压VSGD3施加到与第三SGD线SGD3耦接的SGD晶体管的控制栅极;并且第四SGD线SGD4被配置为生成第四SGD线电压VSGD4并将第四SGD线电压VSGD4施加到与第四SGD线SGD4耦接的SGD晶体管的控制栅极。此外,第一字线WLL1被配置为生成第一字线电压VWL1并将第一字线电压VWL1施加到与第一字线WLL1耦接的存储器单元的控制栅极;并且第四十八字线WLL48被配置为生成第四十八字线电压VWL48并将第四十八字线电压VWL48施加到与第四十八字线WLL48耦接的存储器单元的控制栅极。图6中未示出的其他字线WLL2至WLL47被类似地配置为生成相应字线电压并将其相应字线电压施加到这些字线与之耦接的存储器单元。此外,SGS线SGSL被配置为生成SGS线电压VSGS并将SGS线电压VSGS施加到与SGS线SGSL耦接的SGS晶体管。另外,如图6所示,源极线SL被配置为生成源极线电压VSL并将源极线电压VSL施加到源极线SL与之耦接的通道和相关联的NAND串的源极端。

编程电路600执行编程操作以将数据编程到选定存储器单元中。如本文所用,编程操作的选定存储器单元是在编程操作期间编程的存储器单元。除此之外或另选地,编程操作的选定存储器单元是在编程操作期间将其存储器状态从初始存储器状态改变为目标存储器状态的存储器单元。选定存储器单元的初始存储器状态是在编程操作开始时存储器单元的存储器状态。目标存储器状态是存储器单元在编程操作结束时所处的存储器状态以便数据被正确地存储在存储器单元中。对于至少一些编程操作,选定存储器单元的初始存储器状态是擦除状态。对于此类编程操作,选定存储器单元是将其存储器状态从擦除状态改变为编程状态的存储器单元。除此之外或另选地,编程操作的选定存储器单元是改变存储参数的水平、值或状态以便将其存储器状态从初始存储器状态改变为目标存储器状态的存储器单元。

至少对于NAND技术,编程操作的选定存储器单元是将其阈值电压的水平从初始阈值电压水平改变为目标阈值电压水平以便在编程操作期间将其存储器状态从初始存储器状态改变为目标存储器状态的存储器单元。选定存储器单元的初始阈值电压水平是编程操作开始时目标存储器单元的阈值电压水平,并且是在与选定存储器单元的初始存储器状态相对应的阈值电压水平范围内的阈值电压水平。选定存储器单元的目标阈值电压水平是在与选定存储器单元的目标存储器状态相对应的阈值电压水平范围内的阈值电压水平。此外,至少对于NAND技术,编程操作的选定存储器单元是在编程操作期间响应于至少一个编程电压脉冲(或仅称编程脉冲)而将其阈值电压水平从初始阈值电压水平改变为目标阈值电压水平的存储器单元。下文将进一步详细描述在编程操作期间生成的编程脉冲。

此外,不是编程操作的对象的存储器单元被称为未选存储器单元。换句话讲,编程操作的未选存储器单元是未在编程操作期间编程的存储器单元。未选存储器单元可为在编程操作的整个持续时间保持或维持处于其初始存储器状态的存储器单元。

在具体示例性实施方案中,编程电路600将编程操作局限于存储器单元结构142的特定区域或部分。对于此类实施方案,选定存储器单元包括特定区域的第一部分或第一组,并且未选存储器单元包括特定区域的第二部分或第二组。

至少对于NAND技术,编程电路600将编程操作局限于块。编程操作的选定存储器单元属于该块的存储器单元的第一集合或第一组,并且未选存储器单元属于该块的存储器单元的第二集合或第二组,即不是选定存储器单元的那些存储器单元。在具体示例性实施方案中,编程操作的选定存储器单元设置在相同字线(或字线层)中和/或被配置为由相同字线(或字线层)偏置。在进一步的具体实施方案中,编程操作的选定存储器单元仅包括属于相同或单个字线单元组的那些存储器单元。

编程电路600可在一个或多个编程回路上执行编程操作。编程回路(也称为编程循环或编程迭代)是编程操作的至少一部分,在此期间编程电路执行离散组编程动作以将选定存储器单元的存储器状态移动到其相应目标存储器状态中(目标状态表示/编码数据值)。在某些实施方案中,编程回路包括验证阶段,该验证阶段被配置为确定哪些单元已达到一个或多个目标状态。如下文进一步详细描述的,离散组编程动作可包括将离散组偏置、此类电压或电流水平施加到块602的控制线以便改变至少一些选定存储器单元的存储参数的水平、量值、值或状态。离散组编程动作中的一个包括将编程脉冲施加到选定字线。

在编程电路600无法利用单个离散组编程动作在单个编程回路中对所有选定存储器单元进行编程的情况下,编程电路600可诸如循序地或连续地执行多个编程回路,直到选定存储器单元被编程到其相应目标存储器状态中。在编程电路600执行多个编程回路以将选定存储器单元编程到其目标存储器状态中的情况下,编程电路600可执行多组离散编程动作,每组离散编程动作处于所述多个编程回路中的不同一者中。

在编程操作期间的任何给定时刻,选定存储器单元可具有相关联的编程状态,其可为三个不同编程状态中的一个,包括充分编程状态、不充分编程状态和过度编程状态。具有充分编程状态的选定存储器单元是充分编程的存储器单元,其是处于或已达到其目标存储器状态的存储器单元。具有不充分编程状态的选定存储器单元是不充分编程的存储器单元,其是尚未达到其目标存储器状态的存储器单元。具有过度编程状态的选定存储器单元是过度编程的存储器单元,其是不处于其目标存储器状态并且无法通过一个或多个离散组编程动作的进一步执行来移动到其目标存储器状态中的存储器单元。选定存储器单元在这样的情况下可为过度编程的,其中其在编程阶段开始时处于其目标存储器状态,但为编程启用的而非编程禁止的,因此在编程阶段期间对应于离散组编程动作。在其他情况下,选定存储器单元可为过度编程的,其中选定存储器单元在编程阶段开始时为不充分编程的,但编程阶段期间执行的离散组编程动作使选定存储器单元的存储参数改变太多,使得附加离散组编程动作的执行无法将选定存储器单元的存储参数移动到与目标存储器状态相对应的水平。

在编程电路600执行编程回路之后,编程电路600确定所有选定存储器单元是否为充分编程的。如果所有选定存储器单元为充分编程的,则编程电路600结束编程操作。另选地,如果选定存储器单元中的至少一个为不充分编程的,则编程电路600执行下一编程回路。编程电路600可迭代遍历这些编程回路直到编程电路600确定所有选定存储器单元为充分编程的,或编程电路600识别已发生超时事件,从而引起编程电路600结束编程操作。在一个示例性配置中,超时事件是编程回路的数量达到编程回路的预定最大数量。其他超时事件也可为可能的。

此外,编程电路600被配置为在编程回路的编程阶段中或期间执行离散组编程动作。如本文所用,编程阶段是编程回路的至少一部分,在此期间编程电路执行离散组编程动作以将至少一些选定存储器单元移动到其目标存储器状态中。

在编程阶段期间,编程电路600可将每个选定存储器单元配置为处于两个编程偏置状态中的一个,包括编程启用状态和编程禁止状态。编程启用状态和编程禁止状态被称为偏置状态,因为不同偏置(诸如呈具有不同水平的电压的形式)被施加到位线和SGD晶体管以便将每个选定存储器单元配置为处于编程启用状态或编程禁止状态。

编程启用状态是这样的编程偏置状态,其启用或允许选定存储器单元通过改变与选定存储器单元可被编程到其中的存储器状态相关联的存储参数来对离散组编程动作作出响应。当选定存储器单元被配置为处于编程启用状态时,编程启用的选定存储器单元(其可仅被称为编程启用的存储器单元)被启用或允许响应于离散组动作而改变其存储参数的水平或值。

当编程启用的存储器单元响应于编程阶段期间的离散组编程动作而改变其存储参数时,存储参数的变化可能会或可能不会改变存储器单元在编程阶段开始时所处的当前存储器状态。即,响应于离散组编程动作,编程启用的存储器单元可保持处于相同存储器状态或改变为新存储器状态。

如前所述,对于NAND技术,存储器单元的存储参数是其阈值电压。当选定存储器单元被配置为处于编程启用状态时,编程启用的存储器单元可通过增加其阈值电压的水平来对离散组编程动作作出响应。阈值电压的增加可保持选定存储器单元处于其当前存储器状态,或可将选定存储器单元移动到新存储器状态中。

编程禁止状态是禁止或防止选定存储器单元对离散组编程动作作出响应的编程偏置状态。当选定存储器被配置为处于编程禁止状态时,编程禁止的选定存储器单元(其可仅被称为编程禁止的存储器单元)被防止或禁止或无法在编程电路600执行离散组编程动作时改变其存储参数的水平。换句话讲,当编程电路600在编程阶段期间执行离散组编程动作时,编程禁止的存储器单元保持其存储参数的当前值或水平不变,继而保持处于相同存储器状态。作为被称为编程禁止的存储器单元的补充或替代,被配置为处于编程禁止状态的选定存储器单元可被称为锁定存储器单元,因为其被锁定而不能在编程阶段期间进行编程。

在编程阶段开始时,编程电路600可将每个选定存储器单元配置为处于编程启用状态或编程禁止状态。在编程阶段开始时,如果选定存储器单元为充分编程的(即,其处于或已达到其目标存储器状态),则编程电路600将选定存储器单元配置为处于编程禁止状态,以使得选定存储器单元在编程阶段期间不改变其存储器状态。另一方面,如果选定存储器单元为不充分编程的(即,其尚未处于或尚未达到其目标存储器状态),则编程电路600将选定存储器单元配置为处于编程启用状态,以使得编程启用的存储器单元改变其存储参数的水平以移动到其目标存储器状态中或至少移动到更接近其目标存储器状态处。

编程回路可为各种类型中的一种。一种类型的编程回路是仅编程回路。仅编程回路是被配置为仅对选定存储器单元进行编程的编程回路。在一个实施方案中,仅编程回路仅包括编程阶段,并且不包括其他阶段。即,仅编程回路排除了验证步骤或验证阶段,该验证步骤或验证阶段将确认选定存储器单元在目标或期望存储器状态下编程。在编程电路600执行编程阶段之后,编程电路600要么结束编程操作,要么开始执行下一或另一编程回路的下一或另一编程阶段,而不会对选定存储器单元的编程状态进行任何明确检查或验证。对于仅编程回路,编程电路600对选定存储器单元是否为充分或不充分编程的作出隐式确定或假定。例如,编程电路600可执行预定数量的一个或多个编程阶段和/或预定数量的一个或多个仅编程回路,并且假定在执行预定数量的编程阶段或仅编程回路之后选定存储器单元为充分编程的。

图7A示出了用仅编程回路执行的编程操作的示意图。在执行第一仅编程回路的第一编程阶段之后,编程电路600可直接前进到在第二仅编程回路中执行下一编程阶段。编程电路600可继续以这种方式在连续仅编程回路中执行编程阶段,直到编程电路600在最后仅编程回路中执行最后编程阶段,之后编程电路600可结束编程操作。

另一种类型的编程回路是编程-验证回路。编程-验证回路是既对选定存储器单元进行编程、又检查或验证所编程的选定存储器单元的编程状态的编程回路。当编程电路600执行编程-验证回路时,编程电路600在验证阶段期间对选定存储器单元的编程状态作出确定。验证阶段是为检查或验证选定存储器单元的编程状态而执行的编程操作的一部分。当结合编程操作或作为编程操作的一部分执行时,验证阶段可被视为编程操作的子操作。

在具体实施方式中,编程电路600在一个编程-验证回路中执行单个验证阶段。在编程-验证回路期间,在执行编程阶段之后,编程电路600在转到下一编程-验证回路之前执行验证阶段以检查或验证选定存储器单元是否为充分编程的。

在本文中,短语“验证存储器单元”用来指确定存储器单元的编程状态、特别是存储器单元是否为充分编程的或不充分编程的动作或动作集合。另外,如本文所用,术语“最后编程阶段”在相对于特定验证阶段来提及时用来指在相同编程-验证回路中作为特定验证阶段执行的编程阶段、或紧接在特定验证阶段之前执行的编程阶段。

对于一些示例性配置,就给定编程-验证回路而言,编程电路600在给定编程-验证回路的验证阶段期间验证所有选定存储器单元。对于其他示例性配置,就给定编程-验证回路而言,编程电路600在以下验证回路期间仅验证在最后编程阶段期间被编程启用的那些选定存储器单元。由于在最后编程阶段期间被编程禁止的选定存储器单元被视为充分编程的,因此编程电路600可能不需要验证其编程状态,因此不对它们进行以下验证阶段。验证阶段会消耗功率,因此不对已经被确定为充分编程的某些选定存储器单元进行操作可节省功率。

在验证阶段期间,编程电路600可将选定存储器单元配置为处于两个验证偏置状态中的一个,包括验证启用状态和验证禁止状态。验证启用状态是启用或允许验证选定存储器单元(即,启用或允许确定选定存储器单元的编程状态)的偏置状态。当编程电路600将选定存储器单元配置为处于验证启用状态时,验证启用的选定存储器单元(其可仅被称为验证启用的存储器单元)能够或被允许进行验证。验证禁止状态是防止或禁止验证选定存储器单元(即,防止或禁止确定选定存储器单元的编程状态)的偏置状态。当编程电路600将选定存储器单元配置为处于验证禁止状态时,验证禁止的选定存储器单元(其可仅被称为验证禁止的存储器单元)被防止或禁止进行验证。与编程启用状态和编程禁止状态一样,验证启用状态和验证禁止状态被称为偏置状态,因为编程电路600将不同偏置(诸如呈具有不同水平的电压的形式)施加到位线和SGD线以便将每个选定存储器单元配置为处于验证启用状态或验证禁止状态。作为被称为验证禁止的存储器单元的补充或替代,被配置为处于验证禁止状态的选定存储器单元可被称为锁定存储器单元,因为其被锁定而不能在验证阶段期间进行验证。

图7B示出了用编程-验证回路执行的编程操作的示意图。在执行第一编程-验证回路的第一编程阶段之后,编程电路600可执行第一编程-验证回路的第一验证阶段。在执行第一验证阶段之后,编程电路前进到在第二编程-验证回路中执行下一编程阶段,接着是下一验证阶段。编程电路600可继续以这种方式在连续编程-验证回路中执行编程阶段,接着是验证阶段,直到编程电路600在最后编程-验证回路中执行最后编程阶段,接着是最后验证阶段,之后如果最后验证阶段成功或达到编程-验证回路的最大数量,则编程电路600可结束编程操作。

在一些示例性配置中,当在编程-验证回路内或作为编程-验证回路的一部分执行验证阶段时,编程电路600可将验证阶段分离或划分成离散验证子阶段。验证子阶段是验证阶段的至少一部分,在此期间编程电路600执行离散组验证动作以验证具有共同目标存储器状态的选定存储器单元。如下文进一步详细描述的,离散组验证动作可包括将离散组偏置(诸如电压)施加到块的控制线以便验证具有相同目标存储器状态的选定存储器单元。离散组验证动作还可包括执行感测操作以感测具有相同目标存储器状态的选定存储器单元的编程状态。对于给定编程-验证回路,编程电路600在相同验证子阶段中验证具有相同目标存储器状态的选定存储器单元,并且在不同验证子阶段中验证具有不同目标存储器状态的选定存储器单元。

通过将验证阶段划分或分离成不同验证子阶段,编程电路600使每个验证子阶段与选定存储器单元可具有的所述多个存储器状态中的不同一者相关联。与给定验证子阶段相关联的存储器状态被称为给定验证子阶段的相关联的存储器状态。

对于具有相关联的存储器状态的给定验证子阶段,编程电路600验证具有与给定验证子阶段的相关联的存储器状态匹配或相同的目标存储器状态的那些选定存储器单元。此外,编程电路600可不验证具有与给定验证子阶段的相关联的存储器状态不匹配或不同的目标存储器状态的那些选定存储器单元,而是在验证阶段的一个或多个其他验证子阶段期间验证那些选定存储器单元。

具有与给定验证子阶段的相关联的存储器状态匹配或相同的目标存储器状态的选定存储器单元被称为给定验证阶段的匹配的存储器单元。此外,具有与给定验证子阶段的相关联的存储器状态不匹配或不同的目标存储器状态的选定存储器单元被称为给定验证子阶段的不匹配的存储器单元。在编程操作的选定存储器单元间,每个选定存储器单元对于验证子阶段之一是匹配的存储器单元,并且对于其他验证子阶段是不匹配的存储器单元。对于至少一些示例性配置,编程电路600通过以下方式在给定子验证阶段期间仅验证匹配的存储器单元:在给定验证子阶段期间将匹配的存储器单元配置为处于验证启用状态,同时将不匹配的存储器单元配置为处于验证禁止状态。

为了执行验证阶段,编程电路600以预定验证顺序循序地进行或执行验证子阶段。验证顺序可为存储器状态的顺序,诸如存储器状态A、存储器状态B、存储器状态C等等。给定存储器状态在验证顺序中定位的位置决定编程电路600执行与给定存储器状态相关联的给定验证子阶段的时间与编程电路600执行其他验证子阶段的时间的关系。例如,如果存储器状态A是验证顺序中的第一存储器状态,则与存储器状态A相关联的验证阶段是编程电路600在验证阶段中执行的第一验证子阶段。

对于包括多个验证子阶段的验证阶段,编程电路600通过根据验证顺序循序地从一个验证子阶段转变到另一个验证子阶段来循序地进行或执行验证阶段。当编程电路600结束当前验证子阶段时,编程电路600将验证顺序中的下一验证子阶段识别为当前验证子阶段,并且开始执行新的当前验证子阶段。编程电路600以这种方式循序地执行验证子阶段,直到执行验证顺序中的最后验证子阶段。

当编程电路600根据验证顺序从与第一存储器状态相关联的当前验证子阶段转变到与第二存储器状态相关联的下一验证子阶段时,在当前验证子阶段中是匹配的存储器单元的那些选定存储器单元在下一验证子阶段中从匹配的存储器单元转变到不匹配的存储器单元。对于执行验证阶段的一些示例性配置,编程电路600通过将其配置从验证启用状态改变为验证禁止状态来改变从匹配转变到不匹配的那些存储器单元。此外,在当前验证子阶段中是不匹配的存储器单元但现在具有与下一验证子阶段的第二存储器状态匹配的目标存储器状态的那些选定存储器单元从不匹配的存储器单元转变到匹配的存储器单元。对于一些示例性配置,编程电路600通过将其配置从验证禁止状态改变为验证启用状态来改变从不匹配转变到匹配的那些存储器单元。另外,在当前验证子阶段中是不匹配的存储器单元且仍具有不与下一验证子阶段中的第二存储器状态匹配的目标存储器状态的一些选定存储器单元保持为不匹配的存储器单元。对于一些示例性配置,编程电路600保持那些存储器单元被配置为处于验证禁止状态。

此外,对于一些示例性配置,在验证阶段期间在匹配和不匹配的存储器单元之间转变仅涉及在最后编程阶段期间被编程启用的那些选定存储器单元。对于在最后编程阶段期间被编程禁止的那些选定存储器单元,编程电路600可保持那些选定存储器单元被配置为在验证阶段的整个持续时间处于验证禁止状态,而不论其相应目标存储器状态是否与给定验证子阶段的相关联的存储器状态匹配。对于其他示例性配置,在验证阶段期间在匹配和不匹配的存储器单元之间转变还涉及在最后编程阶段期间未被编程启用(即,被编程禁止)的选定存储器单元。即,对于这些其他示例性配置,即使选定存储器单元被配置为在最后编程阶段期间处于编程禁止状态,编程电路600也会在选定存储器单元是给定验证子阶段的匹配的存储器单元的情况下将选定存储器单元配置为处于给定验证子阶段的验证启用状态。

此外,对于至少一些示例性配置,编程电路600可不执行每一个编程-验证回路的所有验证子阶段。执行哪些验证子阶段可因回路不同而改变。验证子阶段可改变的一种方式是完成对给定目标存储器状态的编程。如果具有相同目标存储器状态的那些选定存储器单元全都为充分编程的,则编程电路600将它们全都配置为在验证阶段的其余部分中处于验证禁止状态,并且在验证阶段的其余部分中跳过与该目标存储器状态相关联的验证子阶段。验证子阶段可改变的另一种方式是达到预定阈值数量的编程-验证回路。在一些示例性配置中,也许不可能或至少统计上不太可能的是,在编程电路600执行预定数量的离散编程动作之前,编程电路600可对选定存储器单元进行充分编程。为了节省时间,编程电路600可从编程操作的早期验证阶段中跳过或省略与某个目标存储器单元相关联的验证子阶段。例如,初始预定数量的编程-验证回路可具有排除一个或多个特定验证子阶段的验证顺序。然后,在编程电路600执行预定或阈值数量的编程-验证回路之后,编程电路600可将所述一个或多个特定验证子阶段添加到后续编程-验证回路的验证顺序。

作为简要说明,假定编程电路600根据每单元三位的存储方案对多个选定存储器单元进行编程。编程电路600可排除与更高存储器状态(诸如预定n个编程-验证回路的存储器状态D及以上)相关联的验证子阶段。然后,一旦编程操作达到第(n+t)编程-验证回路,编程电路600就开始执行与存储器状态D及可能一个或多个其他更高存储器状态(诸如存储器状态E)相关联的验证子阶段。随后,在执行预定p个编程-验证回路(其中p大于n)之后,编程电路600开始执行与进一步更高存储器状态(诸如存储器状态F和G)相关联的验证子阶段。配置编程电路600以便为随后执行的编程-验证回路添加与更高存储器状态相关联的验证子阶段的各种方式也可为可能的。

图7C示出了用编程-验证回路执行的编程操作的示意图。编程电路600可通过执行第一编程-验证回路的第一编程阶段来开始编程操作。在执行第一编程阶段之后,编程电路600可通过执行验证阶段的第一或初始验证子阶段来转变到第一编程-验证回路的验证阶段。在执行第一验证子阶段之后,编程电路600可前进到第二验证子阶段。编程电路600可通过如下步骤以这种方式前进:根据与第一编程-验证回路相关联的验证顺序连续地执行验证子阶段,直到其执行第一编程-验证回路的验证阶段的最后验证子阶段。

在执行第一编程-验证回路的验证阶段期间或之后,作为执行第一编程-验证回路中的第一编程子阶段的结果,编程电路600可确定哪些选定存储器单元为充分编程的。如果所有选定存储器单元都未充分编程,则编程电路600可前进或转变到第二或下一编程-验证回路。编程电路600可通过执行编程-验证回路的编程阶段来开始第二或下一编程-验证回路。在执行编程阶段之后,编程电路600可通过根据第二编程-验证回路的验证顺序连续地执行验证子阶段来执行第二编程-验证回路的验证阶段。在执行最后验证子阶段之后,如果仍存在不充分编程的存储器单元,则编程电路600可前进到第三编程-验证子阶段。编程电路600可通过如下步骤以这种方式前进:连续地执行编程-验证回路,直到在最后编程-验证回路后选定存储器单元为充分编程的。

如图7C所示,每个编程-验证回路的第一验证阶段、第二验证阶段和最后验证阶段分别与存储器状态p、q和r相关联。存储器状态p、q和r表示选定存储器单元可被编程到其中的各种存储器状态中的任何一种。存储器状态p、q和r对于不同编程-验证回路而言可彼此相同或不同,具体取决于那些编程-验证回路的验证顺序。在具体示例性配置中,存储器状态p、q和r可对应于渐增或递增阈值电压范围,其中存储器状态q对应于比存储器阶段p更高的阈值电压范围,并且存储器状态r对应于比存储器状态p和q更高的阈值电压范围。

对于至少一些示例性配置,在给定编程-验证回路期间,当执行与存储器状态p相关联的第一存储器子阶段时,编程电路600可将具有存储器状态p作为其目标存储器状态的那些选定存储器单元配置为验证启用的存储器单元,并且将其他选定存储器单元配置为编程禁止或锁定的存储器单元。然后编程电路600可在第一验证子阶段期间验证具有目标存储器状态p的选定存储器单元。当转变到与存储器状态q相关联的第二验证子阶段时,编程电路600可将具有存储器状态p作为其目标存储器状态的那些选定存储器单元配置为处于验证禁止状态,并且将具有存储器状态q作为其目标存储器状态的那些选定存储器单元配置为处于验证启用状态。编程电路600可保持具有存储器状态r作为其目标存储器状态的那些选定存储器单元处于验证禁止状态。编程电路600可在转变到与存储器状态r相关联的最后验证子阶段时执行相似动作。

重新参见图6,如此前所述,编程电路600可在编程阶段期间执行离散组编程动作,并在验证子阶段期间执行离散组验证动作。至少对于NAND技术,编程电路600在给定编程阶段期间执行的一组编程动作包括利用一组编程电压偏置块的控制栅极和通道。每个编程电压可处于与给定编程阶段相关联的多个编程水平中的一个。此外,编程电路600在给定验证子阶段期间执行的一组验证动作包括利用一组验证电压偏置块的控制栅极和通道。每个验证电压可处于与给定验证子阶段相关联的多个验证水平中的一个。另外,如下文进一步详细描述的,在给定验证子阶段期间执行的离散组验证动作还包括执行感测操作以感测具有匹配与给定验证子阶段相关联的存储器状态的目标存储器状态的、选定存储器单元的编程状态。

就编程阶段而言,编程电路600用来偏置控制栅极和通道的编程电压组包括编程选定存储器单元栅极电压、编程未选存储器单元栅极电压、编程选定SGD栅极电压、编程未选SGD栅极电压、编程SGS栅极电压、编程选定漏极侧电压、编程未选漏极侧电压以及编程源极侧电压。编程电路600在编程阶段期间利用编程选定存储器单元栅极电压来偏置选定存储器单元的控制栅极以将选定存储器单元移动到其目标存储器状态中或朝向其目标存储器状态移动,诸如通过增加其相应阈值电压。编程电路600在编程阶段期间利用编程未选存储器单元栅极电压来偏置未选存储器单元的控制栅极。编程电路600在编程阶段期间利用编程选定SGD栅极电压来偏置与选定存储器单元耦接的SGD晶体管的控制栅极。编程电路600在编程阶段期间利用编程未选SGD栅极电压来偏置与未选存储器单元耦接的SGD晶体管的控制栅极。编程电路600在编程阶段期间利用编程SGS栅极电压来偏置SGS晶体管的控制栅极。编程电路600在编程阶段期间利用编程选定漏极侧电压来偏置与编程启用的存储器单元耦接的通道的漏极端。编程电路600在编程阶段期间利用编程未选漏极侧电压来偏置与编程禁止的存储器单元耦接的通道的漏极端。编程电路600在编程阶段期间利用编程源极侧电压来偏置通道的源极端。

就验证子阶段而言,编程电路600用来偏置控制栅极和通道的验证电压组包括验证选定存储器单元栅极电压、验证未选存储器单元栅极电压、验证选定SGD栅极电压、验证未选SGD栅极电压、验证SGS栅极电压、验证选定漏极侧电压、验证未选漏极侧电压以及验证源极侧电压。编程电路600在验证子阶段期间利用验证选定存储器单元栅极电压来偏置选定存储器单元的控制栅极。编程电路600在验证子阶段期间利用验证未选存储器单元栅极电压来偏置未选存储器单元的控制栅极。编程电路600在验证子阶段期间利用验证选定SGD栅极电压来偏置与选定存储器单元耦接的SGD晶体管的控制栅极。编程电路600在验证子阶段期间利用验证未选SGD栅极电压来偏置与未选存储器单元耦接的SGD晶体管的控制栅极。编程电路600在验证子阶段期间利用验证SGS栅极电压来偏置SGS晶体管的控制栅极。编程电路600在验证子阶段期间利用验证选定漏极侧电压来偏置与验证启用的存储器单元耦接的通道的漏极端。编程电路600在验证子阶段期间利用验证未选漏极侧电压来偏置与验证禁止的存储器单元耦接的通道的漏极端。编程电路600在验证子阶段期间利用验证源极侧电压来偏置通道的源极端。

编程电路600被配置为在编程和验证阶段期间经由块602的控制线(包括控制栅极线SGD、WLL、SGSL、位线BL和源极线SL)利用编程和验证电压来偏置控制栅极和通道。具体地讲,编程电路600被配置为分别经由字线WLL、SGD线和SGS线利用编程和验证栅极电压来偏置存储器单元、SGD晶体管和SGS晶体管的控制栅极。编程电路600被配置为利用编程和验证漏极侧电压来偏置通道的漏极端。编程电路600被配置为利用编程和验证源极侧电压来偏置通道的源极端。

在该上下文中,编程和验证电压另外或另选地相对于使控制栅极和通道偏置的控制线来提及或标示。具体地讲,编程和验证选定存储器单元栅极电压被称为编程和验证选定字线电压,编程和验证未选存储器单元栅极电压被称为编程和验证未选字线电压,编程和验证选定漏极侧电压被称为编程和验证选定位线电压,编程和验证未选漏极侧电压被称为编程和验证未选位线电压,编程和验证未选源极侧电压被称为编程和验证源极线电压,编程和验证SGS栅极电压被称为编程和验证SGS线电压,编程和验证选定SGD栅极电压被称为编程和验证选定SGD线电压,并且编程和验证未选SGD栅极电压被称为编程和验证未选SGD线电压。

为了利用编程和验证电压来偏置块的控制线、继而偏置控制栅极和通道,编程电路600可包括向控制线提供编程和验证电压的电压供电电路604。通过向控制线提供编程和验证电压,电压供电电路604将编程和验证电压施加到控制线,利用编程和验证电压来偏置控制线,和/或在控制线上生成编程或验证电压。从控制线的角度来看,控制线从电压供电电路604接收编程或验证电压,被提供有该编程或验证电压,或利用该编程或验证电压来进行偏置,利用其接收的编程或验证电压来偏置相应控制栅极或通道,将其接收的编程或验证电压施加到相应控制栅极或通道,响应于接收到其从电压供电电路604接收的编程或验证电压而生成编程或验证电压,在其接收的编程或验证电压的水平下生成编程或验证电压,将其生成的编程或验证电压施加到相应控制栅极或通道,或利用其响应于其接收的编程或验证电压而生成的编程或验证电压来偏置相应控制栅极或通道。除非另有明确描述,否则用于描述编程电路600如何通过向块602的控制线提供编程和验证电压而利用编程和验证电压来偏置块602的控制栅极和通道的这些术语和短语在本文中一般可互换使用。

如图6中所指示,电压供电电路602可被配置为生成编程和验证电压,和/或使控制线在相对于具有0V接地参考电压水平的接地参考GND的水平下生成其相应电压。然而,一些编程或验证阶段期间的一些电压可在以除接地参考GND以外的不同参考点(诸如源极线SL)为参考的水平下生成。在本文中,除非另有明确描述,否则电压水平可被假定为以0V接地参考电压水平为参考来指示。

在图6的示例性配置中,电压供电电路604包括向控制线提供编程和验证电压的三个电压供电电路,包括控制栅极线电压供电电路606、位线电压供电电路608和源极线电压供电电路610。控制栅极线电压供电电路606被配置为向块602的控制栅极线提供或施加编程和验证栅极电压。具体地讲,控制栅极线电压供电电路606被配置为向字线WLL提供编程和验证选定和未选字线电压,向SGD线提供编程和验证选定和未选SGD线电压,并且向SGS线提供编程和验证SGS线电压。位线电压供电电路608被配置为向块602的位线BL提供或施加编程和验证选定和未选位线电压。源极线电压供电电路610被配置为向块602的源极线SL提供或施加编程和验证源极线电压。配置电压供电电路604的其他方式也可为可能的。

此外,在图6中的示例性配置中,控制栅极线电压供电电路606和位线电压供电电路608各自包括两个电路部件、电压生成电路和解码器电路。一般来讲,电压生成电路生成向控制线提供的电压,并且解码器电路将所生成的电压选择性地路由到控制线。

进一步详细地,控制栅极线电压供电电路606包括控制栅极线电压生成电路612和行解码器电路614。控制栅极电压生成电路612可表示图2B的功率控制电路160的至少一部分。行解码器电路614可表示图2B的行解码器148的至少一部分。

控制栅极电压生成电路612被配置为生成多个或一组控制栅极线电压,包括选定字线电压VWLS、未选字线电压VWLU、选定SGD线电压VSGDS、未选SGD线电压VSGDU和SGS线电压VSGS。为简单起见,控制栅极线电压生成电路612所生成的控制栅极线电压未被分成不同的编程控制栅极线电压和验证控制栅极线电压。相反,控制栅极线电压生成电路612在图6中被示出为生成单组控制栅极线电压。在实际实施方式中,控制栅极线电压生成电路612可按各种方式同时为编程和验证阶段生成控制栅极线电压。在一个示例性实施方式中,如图6所描绘,控制栅极线电压生成电路612可生成单组控制栅极线电压。控制栅极线电压可为编程阶段期间的编程栅极线电压以及验证阶段期间的验证栅极线电压。控制栅极线电压生成电路612可被配置为将控制栅极线电压设定为编程阶段的编程水平,并且将控制栅极线电压设定为验证阶段的验证水平。此外,控制栅极线电压生成电路612可被配置为当编程电路600从编程阶段转变到验证阶段或从一个编程-验证回路中的最后验证子阶段转变到下一编程-验证回路的编程阶段时,在编程水平和验证水平之间调节控制栅极线电压的水平。在其他示例性实施方式中,控制栅极线电压生成电路612被配置为生成单独组编程和验证控制栅极线电压。对于此类实施方式,控制栅极线电压生成电路612可包括选择电路(诸如呈开关或多路复用器的形式),该选择电路选择要向行解码器电路614提供哪组控制栅极线电压(要么是编程控制栅极线电压,要么是验证控制栅极线电压)。

不论实施方式如何,控制栅极线电压生成电路612的编程或验证控制栅极线电压的生成以及编程水平或验证水平下的控制栅极线电压的生成可在本文中互换使用,是指相同电压。即,在编程阶段期间,控制栅极线电压生成电路612生成编程控制栅极线电压或编程水平下的控制栅极线电压。在验证阶段(或子阶段)期间,控制栅极线电压生成电路612生成验证控制栅极线电压或验证水平下的控制栅极线电压。

一般来讲,如本文所用,除非另有明确描述,否则诸如“生成编程或验证电压”和“生成编程或验证水平下的电压”的短语或术语—以及诸如“提供编程电压”和“提供编程或验证水平下的电压”;“施加编程或验证电压”和“施加编程或验证水平下的电压”;或“利用编程或验证电压来偏置控制线”和“利用编程或验证水平下的电压来偏置控制线”的其他类似短语或术语—一般可互换使用。

此外,控制栅极线电压生成电路612可被配置为生成不同编程阶段的不同编程水平下、和/或不同验证阶段和/或不同验证子阶段的不同验证水平下的控制栅极线电压。例如,对于至少一些编程操作,控制栅极线生成电路612可被配置为在不同编程阶段中或期间以不同编程脉冲水平生成编程栅极电压脉冲(或仅称编程电压脉冲或编程脉冲)形式的选定字线电压VWLS。又如,对于至少一些编程操作,控制栅极线生成电路612可被配置为在不同验证阶段中或期间以不同验证脉冲水平生成验证栅极电压脉冲(或仅称验证电压脉冲或验证脉冲)形式的选定字线电压VWLS。例如,控制栅极线生成电路612可在第一验证阶段中验证与第一目标存储器状态相关联的选定存储器单元时输出一个水平下的验证脉冲,并且在第二验证阶段中验证与第二目标存储器状态相关联的选定存储器单元时输出不同水平下的验证脉冲。当编程电路600从一个验证阶段转变到另一个验证阶段时,控制栅极线电压生成电路612可使选定字线电压VWLS的水平从一个验证脉冲水平改变或转变到另一个验证脉冲水平(其中每个验证脉冲水平与所执行的相应验证子阶段相关联),以便生成连续验证阶段的连续验证脉冲。

行解码器电路614是将控制栅极线电压选择性地路由或提供到控制栅极线的电路。行解码器电路614可包括从控制栅极线电压生成电路612接收控制栅极线电压的一组输入端子。此外,行解码器电路614可包括耦接到控制栅极线的一组输出端子。行解码器614可将其在其输入端子处接收的控制栅极线电压从控制栅极电压生成电路612选择性地路由或提供到其输出端子以便提供或施加到控制栅极线。

行解码器电路614被配置为选择性地路由或提供控制栅极线电压,因为行解码器614可根据不同编程操作或相同编程操作内的不同编程或验证阶段(或验证子阶段)的选定、未选、被编程启用、被编程禁止、被验证启用和被验证禁止的块602的存储器单元,而在相同编程操作内的不同时间或在不同编程操作期间将控制栅极线电压路由到不同控制栅极线。例如,行解码器电路614可在第一编程操作期间向第一字线提供选定字线电压VWLS(诸如呈一个或多个编程脉冲的形式),并且可在第二编程操作期间向第二不同字线WLL提供选定字线电压VWLS(诸如呈一个或多个编程脉冲的形式)。

行解码器电路614可具有各种电路配置中的任何一种以将控制栅极线电压选择性地路由或提供到控制栅极线。对于至少一些示例性配置,行解码器电路614可包括多个开关(例如,晶体管),所述多个开关接通和关断以将输入端子选择性地连接到输出端子。这些开关的接通和关断状态可形成行解码器614的输入和输出端子之间的导电路径,从而选择性地提供或路由控制栅极线电压。这些开关可具有各种配置中的任何一种,诸如单层或多层(或树形)配置。对于给定编程操作或者编程操作的给定编程阶段或验证阶段(或子阶段),被配置为处于接通和关断状态的控制栅极开关的给定总体状态可确定行解码器电路614如何将控制栅极线电压路由到块602的各种控制栅极线。

此外,位线电压供电电路606包括位线电压生成电路616和列解码器电路618。位线电压生成电路616可表示图2B的功率控制电路160的至少一部分。列解码器电路618可表示图2B的列解码器148的至少一部分。

位线电压生成电路616被配置为生成多个或一组位线电压,包括选定位线电压VBLS和未选位线电压VBLU。为简单起见,位线电压生成电路616所生成的位线电压未被分成不同的编程电压和验证电压。相反,位线电压生成电路616在图6中被示出为生成单组位线电压。在实际实施方式中,位线电压生成电路616可按各种方式为编程和验证阶段(包括验证子阶段)生成位线电压。在一个示例性实施方式中,如图6所描绘,位线电压生成电路616可生成单组位线电压。位线电压可为编程阶段期间的编程电压以及验证阶段期间的验证电压。位线电压生成电路616可被配置为将位线电压设定为编程阶段的编程水平,并且将位线电压设定为验证阶段的验证水平。此外,控制栅极电压生成电路616可被配置为当编程电路600从编程阶段转变到验证阶段(包括从编程阶段转变到初始验证子阶段)或从一个编程-验证回路中的最后子验证阶段转变到下一编程-验证回路的编程阶段时,在编程水平和验证水平之间调节位线电压的水平。在其他示例性实施方式中,位线电压生成电路616被配置为生成单独组编程和验证位线电压。对于此类实施方式,位线电压生成电路616可包括选择电路(诸如呈开关或多路复用器的形式),该选择电路选择要向列解码器电路618提供哪组位线电压(要么是编程电压,要么是验证电压)。

不论实施方式如何,位线电压生成电路616生成编程或验证位线电压以及位线电压生成电路616生成编程水平或验证水平下的位线电压可互换使用并且是指相同电压的生成。即,在编程阶段期间,位线电压生成电路616生成编程位线电压或编程水平下的位线电压。在验证阶段和/或验证子阶段期间,位线电压生成电路616生成验证位线电压或验证水平下的位线电压。

列解码器电路618是将位线电压选择性地路由或提供到位线的电路。列解码器电路618可包括从位线电压生成电路616接收位线电压的一组输入端子。此外,列解码器电路618可包括耦接到位线的一组输出端子。列解码器618可将其在其输入端子处接收的选定和未选位线电压从位线电压生成电路616选择性地路由或提供到其输出端子以便提供或施加到位线。

列解码器电路618被配置为选择性地路由或提供位线电压,因为列解码器618可根据不同编程操作或相同编程操作内的不同编程或验证阶段(包括验证子阶段)的选定、未选、被编程启用、被编程禁止、被验证启用和被验证禁止的块602的存储器单元,而在相同编程操作内的不同时间或在不同编程操作期间将位线电压路由到不同位线。例如,在编程-验证回路的编程阶段期间,列解码器电路618可向第一组位线BL提供相关联的编程水平下的选定位线电压VBLS,并且向第二组位线BL提供相关联的编程水平下的未选位线电压VBLU。在编程-验证回路的第一验证子阶段期间,列解码器电路618可向第三组位线BL提供相关联的验证水平下的选定位线电压VBLS,并且向第四组位线BL提供相关联的验证水平下的未选位线电压VBLU。然后,在编程-验证回路的第二验证子阶段期间,列解码器电路618可向第五组位线BL提供相关联的验证水平下的选定位线电压VBL,并且向第六组位线BL提供相关联的验证水平下的未选位线电压VBLU。在编程阶段以及第一验证子阶段和第二验证子阶段期间接收选定位线电压VBLS的第一位线组、第三位线组和第五位线组可包括彼此相同或不同的位线,或具有一些相同的位线和一些不同的位线。相似地,在编程阶段以及第一验证子阶段和第二验证子阶段期间接收未选位线电压VBLU的第二位线组、第四位线组和第六位线组可包括彼此相同或不同的位线,或具有一些相同的位线和一些不同的位线。

列解码器电路618可具有各种电路配置中的任何一种以将位线电压选择性地路由或提供到位线BL。对于至少一些示例性配置,列解码器电路618可包括多个开关(例如,晶体管),所述多个开关接通和关断以将输入端子选择性地连接到输出端子。这些开关的接通和关断状态可形成列解码器618的输入和输出端子之间的导电路径,从而选择性地提供或路由位线电压。这些开关可具有各种配置中的任何一种,诸如单层或多层(或树形)配置。对于给定编程操作或者编程操作的给定编程或验证阶段(或验证子阶段),被配置为处于接通和关断状态的开关的给定总体状态可确定列解码器电路618如何将位线电压路由到块602的各种位线。

对于一些示例性配置(诸如图6所示的配置),列解码器电路618的输出端子经由多个感测电路620耦接到位线BL,所述多个感测电路被配置为执行感测操作以在编程操作的验证阶段(包括验证子阶段)期间感测选定存储器单元的编程状态。下文将进一步详细描述感测电路620和感测操作的细节。

在图6中的示例性配置中,所述多个感测电路620包括m个感测电路620(1)至620(m),其中每个感测电路620耦接到m个位线BL1至BLm中的相应一者。其他感测电路配置也可为可能的。例如,感测电路620的数量可小于块的位线BL的数量。除此之外或另选地,一个感测电路620可耦接到不同块的不同位线。例如,第一感测电路620(1)可耦接到块602的第一位线BL1,并且可耦接到存储器单元结构142的不同块的不同第一位线BL1。其他感测电路配置也是可能的,如下文进一步详细描述的。

对于一些示例性配置,从列解码器618输出的位线电压可直接通过感测电路620,使得如位线BL所接收的位线电压的水平与其在列解码器电路618的输出端子处的水平相同或基本上相同。在其他示例性配置中,感测电路620可各自包括各种电路部件中的任何一种,作为非限制性示例,诸如为电阻器、电容器和/或半导体设备(例如,晶体管),这些电路部件改变它们接收的位线电压的电压水平,诸如通过降低所述水平。在具体示例性配置中,感测电路620各自包括从列解码器618接收位线电压的相应半导体设备,诸如晶体管。半导体设备可包括相应第一端子(诸如栅极端子),该相应第一端子从列解码器电路618接收位线电压。半导体设备还可包括相应第二端子(诸如源极端子),该相应第二端子通过将位线电压从在其第一(栅极)端子处接收到位线电压的水平降低阈值电压水平而将位线电压输出到位线BL上。经由感测电路向位线提供位线电压的各种方式也可为可能的。

编程电路600还可包括编程控制器622。编程控制器是被设计和构建为控制编程操作的部件或模块。在某些实施方案中,编程控制器可包括硬件、固件(或软件)、或硬件和固件(或软件)的组合。例如,编程控制器可包括或为集成电路(IC)的部件,诸如专用集成电路(ASIC),现场可编程门阵列(FPGA),电路,数字逻辑电路,模拟电路,离散电路、门或任何其他类型的硬件的组合,或者其组合。除此之外或另选地,编程控制器可包括存储器硬件,该存储器硬件包括可用处理器或处理器电路执行以实现编程控制器的特征中的一个或多个的指令。编程控制器(其在某些实施方案中可为管芯上NAND编程控制器)可采用以下形式:处理电路、微处理器或处理器,以及存储可由(微)处理器执行的计算机可读程序码(例如,软件或固件)的计算机可读介质(例如,非暂态计算机可读存储介质)、逻辑门、开关、专用集成电路(ASIC)、可编程逻辑控制器和嵌入式微控制器。

另外,编程控制器控制编程操作何时开始及何时结束。此外,编程控制器控制编程操作内的编程阶段和验证阶段(包括验证子阶段)何时开始和结束。编程控制器控制阶段从一个阶段到下一阶段的转变,并且控制编程回路从一个编程回路到下一编程回路的转变。例如,编程控制器控制从编程阶段到验证阶段、从编程阶段到初始验证子阶段、从一个验证子阶段到下一验证子阶段、或从一个编程-验证回路的最后验证子阶段到下一编程-验证回路的编程阶段的转变。

此外,编程控制器在块的控制线上将电压设定为编程和/或验证水平,将编程和/或验证水平下的电压施加或提供到块的控制线,和/或利用编程和/或验证水平下的电压来偏置块的控制线。编程控制器可通过以下方式实现上述操作:控制电压供电电路生成和提供的电压的电压水平,以及电压供电电路何时生成和提供其特定水平下的电压。例如,编程控制器控制选定和未选电压是否和/或何时在相关联的编程水平或相关联的验证水平下生成。此外,编程控制器在控制线上设定这些电压,将这些电压施加或提供到控制线,和/或通过控制如何将电压路由到块的控制线而利用这些电压来偏置控制线,并且可改变哪些电压路由到哪些控制线。因此,如本文所用,除非另有明确描述,否则对编程控制器622在控制线上设定电压的提及或描述可与编程控制器622控制电压供电电路604(或其部件之一)以在控制线上设定电压互换使用;编程控制器622将电压施加或提供到控制线可与编程控制器622控制电压供电电路604(或其部件之一)以在控制线上提供或施加电压互换使用;并且编程控制器622利用电压来偏置控制线可与编程控制器622控制电压供电电路604(或其部件之一)以利用电压来偏置控制线互换使用。

此外,编程控制器还可确定在何处存储数据。例如,编程控制器可确定该数据将被存储,并且识别要向其中存储或编程该数据的存储器单元集合,诸如通过识别包括该存储器单元集合的平面、块、字线和/或字线单元组。编程控制器可将该存储器单元集合识别为编程操作的选定存储器单元。

编程控制器可响应于从控制器102(图2A)接收到地址信息而确定在何处存储数据,或以其他方式识别唯一物理地址(例如,包括特定平面、特定块、特定字线和/或特定字线单元组的唯一物理地址),该唯一物理地址识别要向其中编程该数据的选定存储器单元的物理位置。

此外,编程控制器可获知或确定在选定存储器单元中存储数据的存储方案。通过获知存储方案,编程控制器可获知是否要如存储方案所定义的那样将选定存储器单元编程为SLC单元或MLC单元。此外,在选定存储器单元要被编程为MLC单元的情况下,编程控制器可获知每个MLC单元被配置为存储的每单元位数,如存储方案所定义。编程控制器可控制这些控制线上的偏置以便根据存储方案将选定存储器单元编程为SLC单元或MLC单元。

编程控制器还可识别要编程到选定存储器单元中的数据的数据值。编程控制器可获知哪些数据值要存储在选定存储器单元的哪些存储器单元中。基于该知识,编程控制器可获知编程操作的每个选定存储器单元的目标存储器状态。继而,编程控制器可在编程操作的过程中确定哪些选定存储器单元为充分编程的以及哪些选定存储器单元为不充分编程的。基于这些确定,编程控制器可在编程阶段期间确定哪些选定存储器单元要配置为编程禁止的存储器单元以及哪些选定存储器单元要配置为编程启用的存储器单元。此外,通过获知每个选定存储器单元的目标存储器状态,编程控制器可在验证阶段和/或验证子阶段期间确定哪些选定存储器单元要配置为验证启用的存储器单元以及哪些选定存储器单元要配置为验证禁止的存储器单元。编程控制器可控制这些控制线上的偏置以便将各种选定存储器单元在编程阶段期间配置为编程启用或编程禁止的存储器单元,并且在验证阶段和/或验证子阶段期间配置为验证启用或验证禁止的存储器单元。

结合图6的示例性配置进一步详细地,编程控制器622可被配置为在某些编程和验证阶段(包括某些验证子阶段)期间在控制线上将电压设定为某些水平以便执行编程操作。为此,编程控制器622被配置为控制电压供电电路604以在编程阶段期间将编程电压提供、施加或输出到控制线,并且在验证阶段和子阶段期间将验证电压提供、施加或输出到控制线。

就控制栅极线电压供电电路606而言,编程控制器622被配置为控制该控制栅极线电压供电电路606以在编程阶段期间以编程水平以及在验证阶段和子阶段期间以验证水平将控制栅极线电压VSGDS、VSGDU、VWLS、VWLU、VSGS提供、施加或输出到控制栅极线。编程控制器622可控制该控制栅极线电压生成电路612以在编程阶段期间生成相关联的编程水平下的控制栅极线电压VSGDS、VSGDU、VWLS、VWLU、VSGS。此外,编程控制器622可控制该控制栅极线电压生成电路612以在验证阶段和子阶段期间生成相关联的验证水平下的控制栅极线电压VSGDS、VSGDU、VWLS、VWLU、VSGS。在一些示例性配置中,如图6所示,编程控制器622可输出控制栅极线电压控制信号CTRLCLV以便控制该控制栅极线电压生成电路612以生成相关联的编程水平或验证水平下的控制栅极线电压VSGDS、VSGDU、VWLS、VWLU、VSGS,或以其他方式将控制栅极线电压VSGDS、VSGDU、VWLS、VWLU、VSGS作为编程电压或验证电压输出到行解码器电路614。

此外,编程控制器622被配置为通过以下方式控制行解码器电路614:将行解码器614配置为处于各种状态中的任何一种以将控制栅极线电压VSGDS、VSGDU、VWLS、VWLU、VSGS路由到控制栅极线以便在编程和验证阶段和子阶段期间对选定存储器单元进行编程和验证。如图6所示,编程控制器622可通过将行解码器控制信号CTRLRD输出到行解码器电路614来控制行解码器电路614。行解码器电路614可通过被配置为处于与行解码器控制信号CTRLRD的水平或值相对应的状态(诸如通过接通或关断各种开关)来对行解码器控制信号CTRLRD作出响应。编程控制器622可基于识别选定存储器单元的物理地址信息来输出行解码器控制信号CTRLRD。

就位线电压供电电路608而言,编程控制器622被配置为控制位线电压供电电路606以在编程阶段期间以编程水平以及在验证阶段和子阶段期间以验证水平将位线电压VBLS、VBLU提供、施加或输出到位线。编程控制器622可控制位线电压生成电路616以在编程阶段期间生成相关联的编程水平下的位线电压VBLS、VBLU。此外,编程控制器622可控制位线电压生成电路616以在验证阶段和子阶段期间生成相关联的验证水平下的位线电压VBLS、VBLU。在一些示例性配置中,如图6所示,编程控制器622可输出位线电压控制信号CTRLBLV以便控制位线电压生成电路616以生成相关联的编程水平或验证水平下的位线电压VBLS、VBLU,或以其他方式将位线电压VBLS、VBLU作为编程电压或验证电压输出到列解码器电路618。

此外,编程控制器622被配置为通过以下方式控制列解码器电路618:将列解码器618配置为处于各种状态中的任何一种以将位线电压VBLS、VBLU路由到位线以便在编程和验证阶段和子阶段期间对选定存储器单元进行编程和验证。如图6所示,编程控制器622可通过将列解码器控制信号CTRLCD输出到列解码器电路618来控制列解码器电路618。列解码器电路618可通过被配置为处于与列解码器控制信号CTRLCD的水平或值相对应的状态(诸如通过接通或关断各种开关)来对列解码器控制信号CTRLCD作出响应。

编程控制器622可基于识别选定存储器单元的物理地址信息来输出列解码器控制信号CTRLCD。此外,编程控制器622可基于在验证阶段和子阶段期间获得的选定存储器单元的编程状态来输出列解码器控制信号CTRLCD。基于编程状态,编程控制器622可输出列解码器控制信号CTRLCD以使得列解码器618在编程阶段期间将选定位线电压VBLS路由或提供到与不充分编程的选定存储器单元耦接的位线,并且将未选位线电压VBLU路由或提供到与充分编程的选定存储器单元耦接的位线。此外,编程控制器622可基于选定存储器单元的目标存储器状态来输出列解码器控制信号CTRLCD。基于目标存储器状态,编程控制器622可输出列解码器控制信号CTRLCD以使得列解码器618在验证阶段和子阶段期间将选定位线电压VBLS路由或提供到与匹配的存储器单元耦接的位线,并且将未选位线电压VBLU路由或提供到与不匹配的存储器单元耦接的位线。

就源极线电压供电电路610而言,编程控制器622被配置为控制源极线电压供电电路610以在编程阶段期间以编程水平以及在验证阶段和子阶段期间以验证水平将源极线电压VSL提供、施加或输出到源极线SL。在一些示例性配置中,如图6所示,编程控制器622可输出源极线电压控制信号CTRLSLV以便控制源极线电压供电电路610以生成相关联的编程水平或验证水平下的源极线电压VSL

在编程操作期间,编程控制器622将块602的字线、位线和SGD线配置为处于选定状态和未选状态以便将选定存储器单元编程到其目标存储器状态中,同时保持未选存储器单元处于其初始存储器状态。处于选定状态的字线被称为选定的和/或被称为选定字线。处于未选状态的字线被称为未选的和/或被称为未选字线。处于选定状态的位线被称为选定的和/或被称为选定位线。处于未选状态的位线被称为未选的和/或被称为未选位线。处于选定状态的SGD线被称为选定的和/或被称为选定SGD线。处于未选状态的SGD线被称为未选的和/或被称为未选SGD线。

编程操作的选定字线(或选定字线层)是在编程操作期间耦接到选定存储器单元的字线(或字线层)。选定字线在编程操作的编程阶段和验证阶段期间可起着不同作用或执行不同功能。至少对于NAND技术,在编程阶段期间,选定字线将相关联的编程水平下的选定字线电压(被称为编程栅极电压脉冲(或仅称编程电压脉冲或编程脉冲))施加到选定存储器单元,和/或诸如通过以下方式利用编程脉冲来偏置选定存储器单元:将编程脉冲施加到选定存储器单元的控制栅极,和/或在编程阶段期间利用编程脉冲来偏置选定存储器单元的控制栅极。在验证子阶段期间,选定字线将验证水平下的选定字线电压(被称为验证栅极电压脉冲(或仅称验证电压脉冲或验证脉冲))施加到选定存储器单元,和/或诸如通过以下方式利用验证脉冲来偏置选定存储器单元:将验证脉冲施加到选定存储器单元的控制栅极,和/或在验证子阶段期间利用验证脉冲来偏置选定存储器单元的控制栅极。

编程操作的未选字线(或未选字线层)是在编程操作期间未耦接到任何选定存储器单元的字线(或字线层)。除此之外或另选地,编程操作的未选字线是在编程操作期间未将至少一个编程脉冲施加到至少一个选定存储器单元和/或未将至少一个验证脉冲施加到至少一个选定存储器单元的字线。对于局限于存储器单元结构142的特定区域的编程操作,未选字线为该特定区域中不是选定字线的那些字线。例如,对于选定存储器单元耦接到相同字线(或设置在相同字线层中)的编程操作,未选字线为该块中不是选定字线的字线。

编程操作的选定位线是启用或允许耦接到选定位线的选定存储器单元进行编程或验证的位线。在编程操作的编程阶段期间,选定位线是这样的位线,其将选定存储器单元配置为处于编程启用状态以允许或启用选定存储器单元在编程阶段期间进行编程。在编程操作的验证阶段和/或子阶段期间,选定位线是这样的位线,其将选定存储器单元配置为处于验证启用状态以允许或启用选定存储器单元在验证阶段和/或子阶段期间进行验证。

编程操作的未选位线是这样的位线,其禁止、防止耦接到未选位线的选定存储器单元进行编程或验证,或者锁定耦接到未选位线的选定存储器单元而使之不能进行编程或验证。在编程操作的编程阶段期间,未选位线是这样的位线,其将选定存储器单元配置为处于编程禁止状态以禁止、防止选定存储器单元在编程阶段期间进行编程,或者锁定选定存储器单元而使之不能在编程阶段期间进行编程。在编程操作的验证阶段和/或子阶段期间,未选位线是这样的位线,其将选定存储器单元配置为处于验证禁止状态以禁止、防止选定存储器单元在验证阶段和/或子阶段期间进行验证,或者锁定选定存储器单元而使之不能在验证阶段和/或子阶段期间进行验证。

此外,编程操作的选定SGD线是启用或允许耦接到SGD线的选定存储器单元进行编程或验证的SGD线。在编程操作的编程阶段期间,选定SGD线是这样的SGD线,其将选定存储器单元配置为处于编程启用状态以允许或启用选定存储器单元在编程阶段期间进行编程。在编程操作的验证阶段和/或子阶段期间,选定SGD线是这样的SGD线,其将选定存储器单元配置为处于验证启用状态以允许或启用选定存储器单元在验证阶段和/或子阶段期间进行验证。

编程操作的未选SGD线是这样的SGD线,其禁止、防止耦接到SGD线的未选存储器单元进行编程或验证,或者锁定耦接到SGD线的未选存储器单元而使之不能进行编程或验证。即使这些未选存储器单元可耦接到选定位线和/或选定字线,SGD线也可禁止、防止这些未选存储器单元进行编程或验证,或者锁定这些未选存储器单元而使之不能进行编程或验证。在编程操作的编程阶段期间,设置在与选定存储器单元相同的字线层中的未选存储器单元可在编程阶段期间耦接到选定位线。耦接到该未选存储器单元的未选SGD线是这样的SGD线,其将未选存储器单元配置为处于编程禁止状态以使得未选存储器单元即使耦接到选定位线,也不会在编程阶段期间进行编程。在编程操作的验证阶段和/或子阶段期间,设置在与选定存储器单元相同的字线层中的未选存储器单元可在验证阶段和/或子阶段期间耦接到选定位线。耦接到该未选存储器单元的未选SGD线是这样的SGD线,其将未选存储器单元配置为处于验证禁止状态以使得未选存储器单元即使耦接到选定位线,也不会在验证阶段和/或子阶段期间进行验证。

在编程操作期间的任何给定时间点,字线、位线和SGD线具有相应选定状态。控制线的选定状态是识别控制线是否为选定控制线或未选控制线的状态标识符。在编程操作的过程或持续时间中,控制线的选定状态可保持相同或可变化。对于变化的控制线的选定状态,该变化可从选定状态到未选状态,或从未选状态到选定状态。此外,对于变化的控制线的选定状态,可在单个编程回路(例如,单个编程-验证回路)内发生该变化。例如,在单个编程回路内,可在从编程阶段到验证阶段和/或子阶段、或从一个验证子阶段到另一个验证子阶段的转变期间发生控制线的选定状态的变化。在单个编程回路内,控制线的选定状态可变化一次或多次。除此之外或另选地,对于变化的控制线的选定状态,可跨编程回路发生该变化。例如,控制线在一个编程回路的编程阶段期间可为选定的,然后在另一或下一编程回路的编程阶段期间可为未选的。又如,控制线在一个编程回路的最后验证子阶段期间可为选定的,然后在另一或下一编程回路的编程阶段期间可为未选的。

对于编程操作的每个编程阶段和验证阶段和/或子阶段,编程控制器622可将字线WLL、位线BL和SGD线中的每一者识别为选定的或未选的,并且根据这些识别将字线WLL、位线BL和SGD线中的每一者配置为处于选定和未选状态。具体地讲,根据这些识别,编程控制器622将每个字线WLL配置为选定字线或未选字线,将每个位线BL配置为选定位线或未选位线,并且将每个SGD线配置为选定SGD线或未选SGD线。

编程控制器622通过以下方式将字线WLL、位线BL和SGD线中的每一者配置为处于选定和未选状态:提供相应选定和未选电压,或利用相应选定和未选电压对它们进行偏置。具体地讲,编程控制器622通过以下方式将字线配置为选定字线:将选定字线电压VWLS提供或施加到该字线,和/或利用选定字线电压VWLS来偏置该字线。接收选定字线电压VWLS或利用该选定字线电压来偏置的字线变为或被配置为选定字线,并且通过在选定字线水平下生成其电压来生成选定字线电压。相似地,编程控制器622通过以下方式将字线配置为未选字线:将未选字线电压VWLU提供或施加到该字线,和/或利用未选字线电压VWLU来偏置该字线。接收未选字线电压VWLU或利用该未选字线电压来偏置的字线变为或被配置为未选字线,并且通过在未选字线水平下生成其电压来生成未选字线电压。

以相似方式,编程控制器622通过以下步骤将SGD线配置为选定SGD线:将选定SGD线电压VSGDS提供或施加到该SGD线,和/或利用选定SGD线电压VSGDS来偏置SGD线。接收选定SGD线电压VSGDS或利用该选定SGD线电压来偏置的SGD线变为或被配置为选定SGD线,并且通过在选定SGD水平下生成其电压来生成选定SGD线电压。相似地,编程控制器622通过以下方式将SGD线配置为未选SGD线:将未选SGD线电压VSGDU提供或施加到该SGD线,和/或利用未选SGD线电压VSGDU来偏置SGD线。接收未选SGD线电压VSGDU或利用该未选SGD线电压来偏置的SGD线变为或被配置为未选SGD线,并且通过在未选SGD水平下生成其电压来生成未选SGD线电压。

字线和SGD线生成其相应电压的选定和未选水平可与选定和未选字线和SGD线电压VWLS、VWLU、VSGDS、VSGDU的电压水平相同或不同。例如,行解码器电路614可提供电压降,使得选定和未选字线和SGD线利用一定水平下的其相应选定和未选电压来偏置或在一定水平下生成其相应选定和未选电压,所述水平低于控制栅极线电压生成电路612生成选定和未选字线和SGD线电压VWLS、VWLU、VSGDS、VSGDU的水平。对于此类示例性配置,控制栅极线电压生成电路612被配置为在足够高的水平下生成选定和未选字线和SGD线电压VWLS、VWLU、VSGDS、VSGDU以及SGS线电压VSGS以实现控制栅极线SGD、WLL、SGSL的适当偏置。

对于一些示例性配置,选定和未选字线和SGD线电压VWLS、V-WLU、VSGDS、VSGDU被称为全局选定和未选电压,并且字线和SGD线生成和/或用来偏置的选定和未选电压被称为局部选定和未选电压。相似地,控制栅极线电压生成电路612生成全局SGS线电压VSGS,并且SGS线SGSL生成局部SGS线电压VSGS和/或利用该局部SGS线电压来偏置。在该上下文中,控制栅极线电压供电电路606生成全局控制栅极线电压(包括全局选定和未选控制栅极线电压),并且将全局控制栅极线电压提供或路由到块602的控制栅极线。作为响应,块602的控制栅极线生成相应局部控制栅极线电压。选定控制栅极线生成局部选定控制栅极线电压或局部选定水平下的电压,并且未选控制栅极线生成局部未选控制栅极线电压或局部选定水平下的电压。在本文中,为简单起见,未在控制栅极线电压生成电路612生成的控制栅极线电压的水平(包括选定和未选水平)与控制栅极线生成的控制栅极线电压的水平(包括选定和未选水平)之间作出明确区分。

此外,编程控制器622通过以下方式将位线配置为选定位线:将选定位线电压VBLS提供或施加到该位线,和/或利用选定位电压VBLS来偏置该位线。接收选定位线电压VBLS或利用该选定位线电压来偏置的位线变为或被配置为选定位线,并且通过在选定位线水平下生成其电压来生成选定位线电压。相似地,编程控制器622通过以下方式将位线配置为未选位线:将未选位线电压VBLU提供或施加到该位线,和/或利用未选位线电压VBLU来偏置该位线。接收未选位线电压VBLU或利用该未选位线电压来偏置的位线变为或被配置为未选位线,并且通过在未选位线水平下生成其电压来生成未选位线电压。

位线生成其相应电压的选定和未选水平可与选定和未选位线电压VBLS、VBLU的电压水平相同或不同。例如,列解码器电路618和/或感测电路620可提供一个或多个电压降,使得选定和未选位线利用一定水平下的其相应选定和未选位线电压来偏置或在一定水平下生成其相应选定和未选位线电压,所述水平低于位线电压生成电路616生成选定和未选位线电压VBLS、VBLU的水平。对于此类示例性配置,位线电压生成电路616被配置为在足够高的水平下生成选定和未选位线电压VBLS、VBLU以实现位线的适当偏置。

对于一些示例性配置,选定和未选位线电压VBLS、V-BLU被称为全局选定和未选位线电压,并且位线生成和/或用来偏置的选定和未选电压被称为局部选定和未选位线电压。在该上下文中,位线电压供电电路608生成全局位线电压(包括全局选定和未选位线电压),并且将全局位线电压提供或路由到块602的位线。作为响应,这些位线生成相应局部位线电压。选定位线生成局部选定位线电压或局部选定水平下的电压,并且未选位线生成局部未选位线电压或局部选定水平下的电压。在本文中,为简单起见,未在位线电压生成电路616生成的位线电压的水平(包括选定和未选水平)与位线生成的位线电压的水平(包括选定和未选水平)之间作出明确区分。

如前所述,编程控制器622可将字线、位线和SGD线中的每一者识别或分配为对于编程操作的编程和验证阶段(包括验证子阶段)是选定的或未选的。编程控制器622所作出的将字线、SGD线和位线中的每一者分配为选定或未选的确定或识别取决于待编程或验证的选定存储器单元(即,它们耦接的字线和位线)的物理位置、选定存储器单元的目标存储器状态、选定存储器单元的编程状态、以及将在编程操作的给定时间点执行的特定编程阶段或验证阶段和/或验证子阶段。

此外,对于至少一些示例性配置,编程控制器622可包括编程控制电路624和验证控制电路626。如本文所用,编程控制电路是控制编程操作的编程阶段的编程控制器的部件或模块。编程控制电路624诸如通过电压供电电路604和/或其部件的控制,可在块的控制线上设定编程电压(或编程水平下的电压),可将编程电压(或编程水平下的电压)提供或施加到块的控制线,或可在编程操作的编程阶段期间利用编程电压(或利用编程水平下的电压)来偏置控制线。编程控制电路624可确定或识别编程阶段何时开始以及编程阶段何时结束;并且可控制在编程阶段期间向控制栅极线、位线和源极线施加的各种编程电压的编程电压的编程水平(包括编程选定和未选水平)。一般来讲,编程控制电路624所具有的编程阶段的功能和控制与编程控制器622相同。因此,在编程阶段期间执行的动作可互换地被描述或被称为由编程控制器622或编程控制电路624执行。

相似地,如本文所用,验证控制电路是控制编程操作的验证阶段(包括验证子阶段)的编程控制器的部件或模块。验证控制电路626诸如通过电压供电电路604和/或其部件的控制,可在块的控制线上设定验证电压(或验证水平下的电压),可将验证电压(或验证水平下的电压)提供或施加到块的控制线,或可在编程操作的验证阶段(包括验证子阶段)期间利用验证电压(或利用验证水平下的电压)来偏置控制线。验证控制电路626可确定或识别验证阶段何时开始以及验证阶段何时结束。另外,验证控制电路626可确定或识别验证顺序,按照或根据验证顺序来执行验证阶段,在验证阶段期间按照或根据验证顺序来施加或提供验证脉冲序列,在验证阶段期间在验证子阶段之间转变,并且控制在验证阶段(包括验证子阶段)期间向控制栅极线、位线和源极线施加的各种验证电压的验证电压的验证水平(包括验证选定和未选水平)。一般来讲,验证控制电路626所具有的验证阶段(包括验证子阶段)或验证阶段(包括验证子阶段)内的功能和控制与编程控制器622相同。因此,在验证阶段(包括验证子阶段)期间执行的动作可互换地被描述或被称为由编程控制器622或验证控制电路626执行。

另外,编程控制电路624和验证控制电路626可被配置为彼此同步地操作以便执行编程操作(包括编程-验证回路)。因此,编程控制电路624和验证控制电路626可彼此同步地操作以便在编程阶段和验证阶段之间转变,和/或从一个编程-验证回路转变到下一编程-验证回路。另外,作为编程控制器622的部件或模块,编程控制电路624和验证控制电路626中的每一者可具有编程控制器622为了执行或实施编程操作的编程阶段和验证阶段而可具有的各种硬件和/或硬件与固件(或硬件与软件)配置的组合中的任何一种。对于一些示例性配置,编程控制电路624和验证控制电路626可包括单独、离散组电路,诸如单独、离散组逻辑电路或其他类型的硬件电路。对于其他示例性配置,编程控制电路624和验证控制电路626可包括相同硬件电路,诸如相同处理器,但执行不同固件,诸如不同计算机代码集或指令集,以便实施其相应功能、操作或动作。编程控制器600的编程控制电路624和验证控制电路626也可能有各种配置或配置的组合。

在示例性编程操作中,编程电路600可执行编程操作以将数据(诸如一个或多个页面的数据)编程到块602的选定字线单元组628中。一般来讲,选定字线单元组是包括在编程操作期间编程的选定存储器单元的字线单元组。不包括选定存储器单元(即,包括未选存储器单元)的那些字线单元组是编程操作的未选字线单元组。

参考图8A至图8C和图9并结合图6来描述将数据编程到选定字线单元组中的示例性编程操作(或编程操作的至少一部分)。图8A至图8C示出了3-D块800的至少一部分的分解透视图,该3-D块包括要在编程操作期间编程的选定存储器单元MC(S)。为简单起见,块800包括两个字线(或字线层)WLL1、WLL2,在一个或多个SGD层SGDL中设置或延伸的两个SGD线SGD1、SGD2,SGS线或层SGSL,以及三个位线BL1、BL2、BL3。这两个字线WLL1、WLL2可彼此相邻或不相邻。例如,这两个字线WLL1、WLL2可表示图6的块602的48个字线WLL1至WLL48中的任何两个。相似地,这三个位线BL1、BL2、BL3可彼此相邻或不相邻。例如,这三个位线BL1、BL2、BL3可表示图6的块602的m个位线BL1至BLm中的任何三个。

参考图8A至图8C和图9描述的编程操作包括编程-验证回路的编程阶段和验证阶段,该验证阶段包括两个验证子阶段。参考图8A描述了在编程阶段期间编程电压向块800的控制线的施加。参考图8B描述了在第一验证子阶段期间验证电压向块800的控制线的施加。参考图8C描述了在第二验证子阶段期间验证电压向块800的控制线的施加。图9示出了在编程和验证阶段期间在块800的控制线上生成的编程和验证电压的电压波形的时序图。

参见图8A,在示例性编程操作中,编程控制器622已确定将数据编程到与第一字线WLL1耦接的第一字线单元组WLCG1中。因此,编程控制器622将第一字线WLL1识别为选定字线WLL1(S),并且将第二字线WLL2识别为未选字线WLL2(U)。此外,编程控制器622将第一字线单元组WLCG1识别为选定字线单元组WLCG1(S),并且将其他字线单元组识别为未选字线单元组WLCG(U)。选定字线单元组WLCG1(S)的三个存储器单元MC1、MC2、MC3是编程操作的选定存储器单元MC1(S)、MC2(S)、MC3(C)。选定字线单元组WLCG(S)的选定存储器单元MC(S)可表示图6的选定字线单元组628的至少一部分。未选字线单元组的其他存储器单元是未选存储器单元MC(U)。

此外,在示例性编程-验证回路中,编程控制器622确定第二选定存储器单元MC2(S)为充分编程的,并且将其配置为处于编程禁止状态或配置为编程禁止的存储器单元P-IMC2(S)。然而,编程控制器622确定第一和第三选定存储器单元MC1(S)、MC3(S)为不充分编程的,并且希望在编程阶段期间使它们经受编程脉冲。因此,编程控制器622将第一和第三选定存储器单元MC1(S)、MC3(S)配置为处于编程启用状态或配置为编程启用的存储器单元P-E MC1(S)、P-E MC3(S)。

如图8A所示,第一位线BL1耦接到第一选定存储器单元MC1(S),第二位线BL2耦接到第二选定存储器单元MC2(C),并且第三位线BL3耦接到第三选定存储器单元MC3(C)。因此,编程控制器622将第一和第三位线识别为选定位线BL1(S)、BL3(S),这是由于它们耦接到编程启用的存储器单元P-E MC1(S)、P-E MC3(S)。此外,编程控制器622将第二位线识别为未选位线BL2(U),这是由于其耦接到编程禁止的存储器单元P-I MC2(S)。

此外,选定字线单元组WLCG(S)的选定存储器单元MC(S)耦接到第一SGD线SGD1。因此,编程控制器622将第一SGD线SGD1识别为编程阶段的选定SGD线SGD1(S),并且将第二SGD线SGD2识别为编程阶段的未选SGD线SGD2(U)。

为了在编程阶段期间正确地偏置控制线,编程控制器622可控制电压供电电路604以在编程水平(而非验证水平)下生成其电压。此外,编程控制器622可控制行和列解码器614、618以确保选定和未选电压被正确地路由或提供到其已识别的选定和未选线。具体地讲,编程控制器622可控制行解码器614以使得行解码器614向选定第一字线WLL1(S)提供选定字线电压VWLS,向未选第二字线WLL2(U)提供未选字线电压VWLU,向选定第一SGD线SGD1(S)提供选定SGD线电压VSGDS,并且向未选第二SGD线SGD2(U)提供未选SGD线电压VSGDU。此外,编程控制器622可控制列解码器618以使得列解码器618向选定第一和第三位线BL1(S)、BL3(S)提供选定位线电压V-BLS,并且向未选第二位线电压BL2(U)提供未选位线电压VBLU

参考图8A和图9,在编程阶段期间,选定第一字线WLL1(S)可以以编程栅极电压脉冲(或仅称编程电压脉冲或编程脉冲)的形式在编程水平下生成选定字线电压。例如,控制栅极线电压供电电路606可以以编程脉冲的形式提供选定字线电压VWLS,并且作为响应,选定第一字线WLL1(S)可响应于接收到选定字线电压VWLS而生成编程脉冲。如本文所用,编程栅极电压脉冲(或仅称编程电压脉冲或编程脉冲)是这样的电压,其被生成、提供、输出或施加以改变存储器单元的存储参数的水平、值、量值或状态以便在编程操作期间对该存储器单元进行编程。对于NAND技术,编程脉冲是这样的电压,其被施加到选定字线或用于偏置选定字线,和/或被施加到与选定字线耦接的存储器单元的控制栅极。至少对于NAND技术,编程启用的选定存储器单元(或仅称编程启用的存储器单元)是通过升高其阈值电压的水平来对编程脉冲作出响应或至少被配置为通过升高其阈值电压的水平来对编程脉冲作出响应的存储器单元。

图9示出了在编程阶段期间,选定字线WLL1(S)通过使选定字线电压V-WLL1(S)从初始电压水平升高到编程脉冲水平VPGM来生成编程脉冲。选定字线WLL1(S)在预定时间周期内保持编程脉冲处于编程脉冲水平VPGM,然后在预定时间周期之后在编程阶段结束或临近结束时使电压往回降低。对于至少一些实施方案,编程脉冲水平在约16伏特(V)至22V的范围内。另外,编程控制器622可控制编程脉冲水平,诸如通过在编程阶段期间升高选定字线电压VWLS的水平。对于一些示例性配置,编程脉冲水平可根据所执行的编程-验证回路的增加数量来升高。

对于至少一些编程操作,为了编程启用的存储器单元响应于编程脉冲而升高其阈值电压水平,编程启用的存储器单元使其漏极端子(或仅称漏极)偏置到低于编程脉冲水平VPGM的水平下的电压并且使其源极端子(或仅称源极)从源极线SL切断或电气地断开。在具体示例性配置中,低于编程脉冲水平VPGM的水平是接地参考电压水平0V。为了实现该偏置,选定位线被配置为利用低于编程脉冲水平VPGM的编程选定位线水平VPSB(诸如0V)下的选定位线电压来偏置与编程启用的存储器单元耦接的通道的漏极侧。图9将选定位线BL1(S)和BL3(S)上生成的选定位线电压统一标记为VBL(S),并且示出了编程阶段期间编程选定位线水平VPSB下的选定位线电压VBL(S)

此外,至少对于一些示例性配置,SGS线SGSL和源极SL在彼此相同或大约相同的水平下生成其相应SGS线和源极线电压VSGSL、VSL以便在编程阶段期间关断SGS晶体管SGST,继而将存储器单元的源极端子从源极线SL切断。对于一些示例性配置,源极线SL在正(即,高于接地参考电压0V,诸如2V)的编程源极线水平VPSL下生成其源极线电压VSL,以更有效地将源极线SL从源极端子切断和/或降低通道干扰的可能性或影响。编程源极线水平VPSL可另选地称为编程源极水平PROGSRC。SGS线SGSL可在与编程源极线水平VPSL相同或大约相同的编程SGS水平下生成其SGS线电压VSGSL,如图9所指示。

此外,在编程阶段期间,未选字线WLL2(U)可在编程未选字线水平VPUW下生成未选字线电压VWLL2(U)。在一些示例性配置中,未选字线所生成的未选字线电压可被称为导通电压或在导通电压水平VPASS下生成的电压。除此之外或另选地,对于至少一些示例性配置,编程未选字线水平VPUW(或导通电压水平VPASS)可在约8-11V的范围内,诸如为10V,但其他电压水平也可为可能的。

另外,未选位线可利用编程未选位线水平VPUB下的未选位线电压来偏置与编程禁止的存储器单元耦接的通道的漏极侧,继而偏置编程禁止的存储器单元的漏极,该编程未选位线水平VPUB下的未选位线电压将锁定选定存储器单元而使之不能响应于编程脉冲来升高其阈值电压,或防止选定存储器单元响应于编程脉冲来升高其阈值电压。对于至少一些示例性配置,编程未选位线水平VPUB高于编程选定位线水平VPSB,诸如在约2-3V的范围内。另外,对于至少一些示例性配置,编程未选位线水平VPUB可另选地称为感测放大器VDD水平VDDSA。因此,图8A和图9示出了未选位线BL2(U)利用编程未选位线水平VPUB下的未选位线电压VBL2(U)来偏置编程禁止的存储器单元P-I MC2(U)。

另外,对于图8中的示例性编程操作,选定位线BL1(S)、BL3(S)和选定字线WLL1(S)还耦接到不在编程操作期间编程的未选存储器单元,即未选字线单元组WLCG2(U)的第一和第三未选存储器单元MC1(U)、MC3(U)。对于该情况(以及编程操作期间的其他类似情况),SGD线SGD1、SGD2用于对属于选定字线单元组WLCG1(S)的那些存储器单元进行编程启用,并且对属于未选字线单元组WLCG2(U)的那些存储器单元进行编程禁止。

为此,第一SGD线SGD1被配置为选定SGD线SGD1(S),该选定SGD线在编程选定SGD水平VPSSGD下生成选定SGD线电压,继而将耦接到第一SGD线SGD1的SGD晶体管配置为启用的SGD晶体管SGDT(E)。如本文所用,启用的SGD晶体管是这样的SGD晶体管,其启用或允许选定位线偏置与选定位线耦接的存储器单元的漏极端子。换句话讲,启用的SGD晶体管是这样的晶体管,其启用或允许存储器单元的漏极端子由选定位线偏置。因此,结合图8A,通过耦接到选定位线BL1(S)、BL3(S)和选定SGD线SGD1(S)两者,耦接到第一SGD线SGD1(S)的第一和第三SGD晶体管被配置为启用的SGD晶体管SGDT1(E)、SGDT3(E),继而对选定字线单元组WLCG1(S)的第一和第三选定存储器单元MC1(S)、MC(3)进行编程启用。

另一方面,第二SGD线SGD2被配置为未选SGD线SGD2(U),该未选SGD线在编程未选SGD水平VPUSGD下生成未选SGD线电压,继而将耦接到未选第二SGD线SGD2(U)的SGD晶体管配置为禁止的SGD晶体管SGDT(I)。禁止的SGD晶体管是这样的SGD晶体管,其防止、禁止选定位线偏置与选定位线耦接的存储器单元的漏极端子,或者锁定选定位线而使之不能偏置与选定位线耦接的存储器单元的漏极端子。换句话讲,禁止的SGD晶体管是这样的晶体管,其防止、禁止存储器单元的漏极端子由选定位线偏置,或者锁定存储器单元的漏极端子而使之不能由选定位线偏置。禁止SGD晶体管可另选地称为使SGD晶体管升压。结合图8A,通过耦接到选定位线BL1(S)、BL3(S)和未选SGD线SGD2(U)两者,耦接到第二SGD线SGD2(U)的第一和第三SGD晶体管被配置为禁止的SGD晶体管SGDT1(I)、SGDT3(I),继而对未选字线单元组WLCG2(U)的第一和第三未选存储器单元MC1(U)、MC3(U)进行编程禁止。

对于一些示例性配置,编程选定SGD水平高于编程未选SGD水平。在具体配置中,编程选定SGD水平PSSGD为3V,并且编程未选SGD水平PUSGD为0V,但其他电压水平也可为可能的。

一般来讲,向SGD晶体管施加的选定和未选SGD和位线电压的某些组合可启用这些SGD晶体管或禁止这些SGD晶体管。在具体实施方式中,所施加的选定SGD线电压和选定位线电压的组合可启用SGD晶体管,并且其他组合可禁止SGD晶体管。

进一步详细地,使其控制栅极利用选定SGD线电压来偏置并且使其漏极利用选定位线电压来偏置的SGD晶体管SGDT可被启用。因此,编程电路600可通过以下方式启用SGD晶体管:为耦接到SGD晶体管的选定SGD线提供选定SGD线电压VSGDS,并且为耦接到SGD晶体管的选定位线提供选定位线电压VBLS

使其控制栅极利用选定SGD线电压来偏置并且使其漏极利用未选位线电压来偏置的SGD晶体管可被禁止。这种类型的禁止可被称为x模式升压。编程电路600可通过以下方式执行x模式升压以禁止SGD晶体管:为耦接到SGD晶体管的选定SGD线提供选定SGD线电压VSGDS,并且为耦接到SGD晶体管的未选位线提供未选位线电压VBLU

使其控制栅极利用未选SGD线电压来偏置并且使其漏极利用未选位线电压来偏置的SGD晶体管可被禁止。这种类型的禁止可被称为xy模式升压。编程电路600可通过以下方式执行xy模式升压以禁止SGD晶体管:为耦接到SGD晶体管的未选SGD线提供未选SGD线电压VSGDU,并且为耦接到SGD晶体管的未选位线提供未选位线电压VBLU

使其控制栅极利用未选SGD线电压来偏置并且使其漏极利用选定位线电压来偏置的SGD晶体管可被禁止。这种类型的禁止可被称为y模式升压。编程电路600可通过以下方式执行y模式升压以禁止SGD晶体管:为耦接到SGD晶体管的未选SGD线提供未选SGD线电压VSGDU,并且为耦接到SGD晶体管的选定位线提供选定位线电压VBLS

具体地参见结合图8A至图8C和图9描述的编程操作,编程控制器622可控制电压供电电路604以在与编程阶段相关联的预定时间周期内向控制栅极线提供编程电压。在预定时间周期到期时,编程控制器622可控制电压供电电路604以将编程电压降低到初始水平以便结束、终止或离开编程阶段。在离开编程阶段时,编程控制器622可使编程操作转变到编程-验证回路的初始验证子阶段。

一般来讲,编程控制器622可控制编程操作中执行的阶段的转变。编程操作的转变是编程操作从一个(子)阶段到另一个(子)阶段、诸如从第一(子)阶段到第二(子)阶段、或从当前(子)阶段到下一(子)阶段的移动或进度。这两个(子)阶段可处于相同编程回路中。例如,该转变可为从编程阶段到验证阶段或验证阶段的初始子阶段的转变,或者诸如根据编程-验证回路的验证顺序,可为从一个验证子阶段到另一个验证子阶段的转变。另选地,这两个(子)阶段可处于不同编程回路中。例如,对于两个编程-验证回路,该转变可为从当前编程-验证回路的最后验证子阶段到下一编程-验证回路的编程阶段。又如,对于两个仅编程回路,该转变可为从当前仅编程回路的编程阶段到下一仅编程回路的编程阶段。

编程控制器622可通过控制电压供电电路604向块602的控制线提供的编程和验证电压来控制这些(子)阶段的转变。例如,如图9所示,编程控制器622至少通过使编程电压从编程水平向下转变到初始水平来结束或终止编程阶段。这包括停止向选定字线WLL1(S)提供编程脉冲,引起选定字线WLL1(S)使其选定字线电压从编程脉冲水平VPGM向下降低到初始水平(诸如0V)。

又如,编程控制器622可通过改变至少一个控制线电压的水平来控制该转变。为了从编程阶段转变到验证阶段(诸如转变到初始验证子阶段),编程控制器622可将所有水平从编程电压水平改变为验证电压水平。当从第一验证子阶段转变到第二验证子阶段时,编程控制器622可通过改变至少一个验证电压水平来控制该转变。例如,编程控制器622可将向选定字线施加的验证电压脉冲从第一验证电压脉冲水平改变为第二验证电压脉冲水平。此外,编程控制器622可根据位线在验证子阶段之间改变其选定状态来改变位线电压的电压水平,由此控制一个验证子阶段到下一验证子阶段的转变。

结合图8A至图8C和图9的示例性编程操作进一步详细地,假定例如三个选定存储器单元MC1(S)、MC2(S)、MC3(S)分别具有目标存储器状态p、目标存储器状态q和目标存储器状态r,其中存储器状态p、q和r是存储器单元可在给定存储方案下编程到其中的各种存储器状态中的任何一种。图8B示出了针对存储器状态p来验证第一选定存储器单元MC1(S)的块800的示例性偏置条件。图8C示出了针对存储器状态r来验证第三选定存储器单元MC3(S)的块800的示例性偏置条件。

针对存储器状态p来验证第一选定存储器单元MC1(S)的验证子阶段被称为第一验证子阶段,并且针对存储器阶段r来验证第三选定存储器单元MC2(S)的验证阶段被称为第二验证子阶段。第一验证子阶段可能是或不是紧接在编程阶段之后执行的初始验证子阶段,具体取决于验证顺序。即,编程控制器622可能或可能不直接从编程阶段转变到第一验证子阶段,具体取决于验证顺序。在编程控制器622不直接转变到第一验证子阶段的情况下,编程电路600可在执行第一验证子阶段之前执行一个或多个其他验证子阶段。另外,第二验证子阶段一般被称为在第一验证子阶段之后执行或发生。然而,编程控制器622可能或可能不直接从第一验证子阶段转变到第二验证子阶段,具体取决于验证顺序。在编程控制器622不直接转变到第二验证子阶段的情况下,编程电路600可在第一验证子阶段之后且在执行第二验证子阶段之前执行一个或多个其他验证子阶段。图9示出了在块800的控制线上生成的用于在第一和第二验证子阶段期间验证第一和第三选定存储器单元MC1(S)、MC3(S)的验证电压的示例性电压波形。

参考图8B和图9,在第一验证子阶段期间,选定第一字线WLL1(S)可以以验证栅极电压脉冲(或仅称验证电压脉冲或验证脉冲)的形式在验证水平下生成选定字线电压。例如,控制栅极线供电电路614可以以验证脉冲的形式提供选定字线电压VWLS,并且作为响应,选定第一字线WLL1(S)可生成验证脉冲。如本文所用,验证栅极电压脉冲(或验证电压脉冲或验证脉冲)是向验证选定存储器单元生成、提供、输出或施加的电压。一般来讲,在给定验证子阶段期间,选定字线在对应于与给定验证子阶段相关联的存储器状态的给定验证脉冲水平Vv下生成验证脉冲。给定验证脉冲水平可为与模型或目标阈值分布曲线的下尾相符的预定水平。示例性验证脉冲水平Vv包括所示和此前参考图5A至图5D所述的那些。图8B和图9示出了选定字线WLL1(S)在与验证具有目标存储器状态p的选定存储器单元相关联的第p验证脉冲水平Vvp下生成验证脉冲。

对于包括多个验证子阶段的给定编程-验证回路,控制栅极线电压供电电路606在所述多个验证子阶段期间或过程中根据验证顺序在验证脉冲水平Vv序列或系列下施加验证脉冲序列或系列。作为响应,选定字线可各在多个验证子阶段之一期间各在与将生成验证脉冲的验证子阶段相对应的相应验证脉冲水平Vv下循序地生成多个验证脉冲。在具体示例性配置中,选定字线可在编程电路600从一个验证子阶段转变到下一验证子阶段时使选定字线电压从一个验证脉冲水平转变到下一验证脉冲水平,由此生成验证脉冲序列。对于至少一些验证阶段的执行,选定字线可从一个验证脉冲水平转变到下一验证脉冲水平,而不会在验证脉冲之间使选定字线电压向下降低到初始或低水平(例如,0V)。表征编程-验证回路期间验证脉冲的生成的另一种方式是在包括多个验证子阶段的编程-验证回路期间,选定字线在多个验证脉冲水平下生成验证脉冲,每个验证脉冲水平对应于所述多个验证子阶段之一。对于一些示例性配置,各种验证脉冲水平的范围可从0.8V的最低验证脉冲水平延伸到6V的最高验证脉冲水平,但其他验证脉冲水平或验证脉冲水平范围也可为可能的。

如前所述,编程电路600在验证阶段期间(包括在验证子阶段期间)通过确定选定存储器单元的编程状态来验证选定存储器单元。在验证阶段中(包括在验证子阶段中),编程电路600使用感测电路620通过以下方式执行感测操作以验证选定存储器单元:感测其编程状态,即感测选定存储器单元是否和何时为充分编程的。换句话讲,编程电路600通过以下方式执行或进行验证阶段(包括验证子阶段):执行感测操作以感测或以其他方式确定选定存储器单元的编程状态。

一般来讲,如本文所用,感测操作是为确定根据预定偏置条件来偏置的存储器单元的响应而执行的存储器操作。用来在感测操作期间偏置存储器单元的偏置可为各种类型的偏置中的任何一种,包括任何数量的偏置或任何类型的偏置,诸如电压、电流、或各种信号中的任何一种,所述信号诸如为可影响存储器单元的行为或触发存储器单元的响应的直流(DC)信号或交流(AC)有线或无线信号。存储器单元的状态一般是存储器单元的条件或状态。该状态可为存储器单元可处于的多个可能预定条件或状态之一。存储器单元在经受偏置时的响应传达或传送存储器单元的状态。

进一步详细地,存储器单元的状态可为各种类型的状态中的任何一种。状态类型可涉及或特定于对其执行感测操作的存储器操作。如前所述,一种类型的状态是编程状态,其可包括充分编程的、不充分编程的或过度编程的。在验证阶段期间,或特别是在验证子阶段期间,感测电路执行感测操作以确定存储器单元的编程状态,即,确定存储器单元是充分编程的还是不充分编程的。另一种状态类型是读取状态,其是存储器单元的存储器状态和/或存储器单元的阈值电压是高于还是低于向选定字线施加的读取脉冲的读取脉冲水平的状态。对于一些示例性配置,感测电路可在读取操作的读取阶段期间执行感测操作以感测存储器单元的存储器状态,继而感测存储器单元存储的数据的数据值。

在感测操作期间产生的存储器单元的响应可为存储器单元可在感测操作期间生成、传导、感应、发射、辐射或以其他方式促使响应于偏置而产生的电信号(诸如DC或AC电压或电流、或电磁波)的各种可测量特性中的任何一种。作为非限制性示例,示例性可测量特性可包括量值、量、水平、频率、斜率、占空比、脉冲宽度、波形类型(例如,正弦、方形、锯齿)、变化速率(例如,衰减速率或增加速率)、调制或信噪比。所测量或感测的响应的类型和响应的值可取决于存储器单元的存储参数以及存储参数的水平、值或状态,这继而指示存储器单元的状态。

至少对于NAND技术,存储器单元的响应是存储器单元消耗或促使通过位线消耗的电流。在感测操作期间,利用预定组电压来偏置存储器单元以引起存储器单元通过位线消耗电流。存储器单元消耗或促使消耗的电流量取决于存储器单元的阈值电压水平,继而指示存储器单元的状态,诸如编程状态或读取状态。

感测电路是在感测操作期间感测存储器单元被偏置时存储器单元的响应的电路。感测电路可通过以下方式感测该响应:感测或检测该响应的存在或不存在,和/或测量该响应的量、水平、值或量值。图6中的感测电路620所执行的感测存储器单元的状态的功能具有电路结构,所述电路结构通过启用或形成允许电流流过其中到达位线的电流路径而连接到与存储器单元耦接的位线BL。用于执行电流感测的功能的其他结构配置也可为可能的。例如,其他示例性感测电路可连接到字线而非位线,并且基于通过字线消耗的电流来确定存储器单元的状态。其他示例性感测电路可感测字线或位线上的电压,而不必使该电压依赖于通过选定存储器单元消耗的电流。对于此类配置,感测电路执行电压感测而非电流感测以确定选定存储器单元的状态。

回到图8B中的第一验证子阶段,感测电路620执行感测操作以感测通过与具有目标存储器状态p的验证启用的存储器单元耦接的选定位线消耗的电流,同时选定字线WLL1(S)在第p验证脉冲水平Vvp下生成验证脉冲。对于不充分编程(例如,阈值电压低于与存储器状态p相关联的阈值电压水平范围)的验证启用的单元,第p验证脉冲水平Vvp下的验证脉冲将高于不充分编程的存储器单元的阈值电压,从而使那些验证启用的存储器单元通过它们耦接的选定位线传导或消耗电流。换句话讲,在验证子阶段期间,验证启用的存储器单元在不充分编程时通过它们耦接的选定位线消耗电流。另一方面,对于充分编程(例如,阈值电压在与存储器状态p相关联的阈值电压水平范围内)的验证启用的单元,第p验证脉冲水平Vvp下的验证脉冲将低于或小于充分编程的存储器单元的阈值电压,从而防止那些验证启用的存储器单元通过它们耦接的选定位线传导或消耗电流。换句话讲,在验证子阶段期间,验证启用的存储器单元在充分编程时通过它们耦接的选定位线消耗零电流或微不足道的量的电流。

在至少一些示例性配置的实际实施方式中,验证启用的存储器单元可消耗变化量的电流,并且在一些实施方案中,可根据其阈值电压与验证脉冲水平有多接近来表征为完全导通或部分导通。不同编程电路600及其相应感测电路可根据验证启用的存储器单元的不同响应以各种方式处理感测操作和识别编程状态。

在图8B中的聚焦示例中,三个选定存储器单元MC(S)中仅第一选定存储器单元MC1(S)具有目标存储器状态p,因此这三个中仅第一选定存储器单元是第一验证阶段中的验证启用的存储器单元V-E MC1(S)。其他两个选定存储器单元MC2(S)、MC3(S)是验证禁止的存储器单元V-I MC2(S)、V-I MC3(S)。因此,在第一验证子阶段期间,第一位线BL1是选定位线BL1(S),并且第二和第三位线BL2、BL3是未选位线BL2(U)、BL3(U)。

对于第一验证子阶段,块800的控制线被偏置以使得耦接到选定位线BL1(S)的感测电路620可感测第一选定存储器单元MC1(S)是否响应于其控制栅极被第p验证脉冲水平Vvp下的验证脉冲偏置而通过选定第一位线BL1(S)消耗电流。在本文中,在验证阶段期间,控制线被偏置的验证水平在执行感测操作以验证存储器单元的上下文中亦称或另选地称为感测水平。

进一步详细地,选定第一位线BL1(S)被配置为在验证或感测选定位线水平VSSB(或VBLC)下生成选定位线电压VBL1(S)。未选第二和第三位线BL2(U)、BL3(U)被配置为在验证或感测未选位线水平VSUB下生成未选位线电压VBL2(U)、VBL3(U)(在图9中统一标记为未选位线电压VBL(U))。在验证阶段期间(或在感测操作期间),存储器单元的源极不从源极线切断,因此对于至少一些实施方案,参考源极线电压VSL来测量、指示、设计或引用感测位线水平。在具体配置中,感测选定位线水平VSSB是高于感测源极线水平VSSL的正电压,诸如在高于感测源极线水平VSSL约0.2V至0.8V的范围内。感测未选位线水平VUSB与感测源极线水平VSSL相同或大约相同,因此在包括验证禁止的存储器单元的通道的源极和漏极端之间存在零电压差,继而可防止电流流过未选位线和验证禁止的存储器单元,从而在第一验证子阶段期间降低功率消耗。

感测源极线水平VSSL可另选地称为单元源极水平VCELSRC。在一些示例性配置中,感测源极线水平VSSL处于接地参考电压水平0V。在其他示例性配置中,感测源极线水平VSSL是高于0V的正电压,诸如1V。源极线SL在正电压(例如,1V)下生成其源极线电压VSL的一个有益效果是通过在源极线电压和选定字线电压之间形成负电压差来感测存储器单元的负阈值电压。从设计实现来看,形成允许通过将感测线电压VSL设定为比选定位线电压更高的水平来感测负阈值电压的偏置设置可能更容易,而不是试图将电压供电电路604配置为生成低于接地参考电压的负电压。

此外,在第一验证子阶段期间,未选字线WLL2(U)可在验证或感测未选字线水平VSUW下生成未选字线电压VWLL2(U)。在一些示例性配置中,未选字线所生成的未选字线电压可被称为读取电压或在读取电压水平VREAD下生成的电压。除此之外或另选地,对于至少一些示例性配置,感测未选字线水平VSUW(或VREAD)可在约7-9V的范围内,诸如为8V,但其他电压水平也可为可能的。

另外,与图8A中的编程阶段类似,选定位线BL1(S)和选定字线WLL1(S)还在第一验证子阶段期间耦接到未选字线单元组WLCG2(U)的未选第一存储器单元MC1(U),如图8B中所指示。如果未选第一存储器单元MC1(U)在第一验证子阶段期间为验证启用的,则其可通过选定位线BL1(S)消耗电流,这可引起耦接到选定位线BL1(S)的感测电路在第一验证阶段期间执行感测操作时识别选定第一存储器单元MC1(S)的不正确编程状态。与编程阶段类似,第一和第二SGD线SGD1、SGD2分别被配置为选定和未选SGD线,以便对耦接到选定字线和选定位线的选定存储器单元进行验证启用,并且对耦接到选定字线和选定位线的未选存储器单元进行验证禁止。

结合图8B,第一SGD线SGD1在验证或感测选定SGD水平VSSSGD水平(其亦可或另选地称为选择栅极水平VSG)下生成选定SGD线电压VSGD1(S),该验证或感测选定SGD水平至少对于一些示例性配置而言可在约5-8V的范围内。使其控制栅极利用感测选定SGD水平VSSSGD下的选定SGD线电压来偏置并且使其漏极端子利用感测选定位线水平VSSB(或VBLC)下的选定位线电压来偏置的SGD晶体管可被启用或接通以在其耦接的存储器单元不充分编程的情况下允许该存储器单元在验证阶段期间消耗电流。此外,第二SGD线SGD2在验证或感测未选SGD水平VSUSGD水平下生成未选SGD线电压VSGD2(U),该验证或感测未选SGD水平至少对于一些示例性配置而言可处于或接近0V。即便使其漏极端子利用感测选定位线水平VSSB(或VBLC)下的选定位线电压来偏置也使其控制栅极利用感测未选SGD水平VSUSGD下的未选SGD线电压来偏置的SGD晶体管可被禁止或关断以防止或禁止其耦接的未选存储器单元在验证阶段期间消耗电流。

此外,至少对于一些示例性配置,SGS线SGSL可在感测SGS水平VSSGS下生成SGS线电压VSGSL,该感测SGS水平VSSGS也可为与感测选定SGD水平VSSSGD相同的水平。换句话讲,选定SGD线SGD1和SGS线SGSL可在第一验证阶段期间在相同选择栅极水平VSG下生成其电压。

编程控制器622可在第一验证子阶段期间在如图8B所示的验证或感测水平下控制电压供电电路604。在该时间周期期间,耦接到选定第一位线BL1(S)的感测电路620可执行感测操作以感测通过选定第一位线BL1(S)消耗的电流。基于该感测,感测电路620可生成感测结果信号,该感测结果信号指示验证启用的存储器单元V-E MC1(S)的编程状态或以其他方式保持对验证启用的存储器单元V-E MC1(S)的编程状态的跟踪或记录。感测电路620可将感测结果信号输出到编程控制器622,或以其他方式允许编程控制器622确定验证启用的存储器单元V-E MC1(S)的编程状态,以使得编程控制器620可确定是否要结束编程操作,或至少确定是否要对下一编程回路的选定第一存储器单元MC1(S)进行编程启用或编程禁止。

在第一验证子阶段结束时,编程控制器622可转变到下一验证子阶段。在编程-验证回路期间的某个时间点,编程控制器622可在紧接在第一验证子阶段之后或在执行第一验证子阶段后的一个或多个验证子阶段之后转变到第二验证子阶段。图8C示出了针对存储器状态r来验证第三选定存储器单元MC3(S)的块800的示例性偏置条件。图9示出了在块800的控制线上生成的用于在第二验证子阶段期间验证选定第三存储器单元MC3(S)的验证电压的示例性电压波形。

对于第二验证子阶段的执行,块800可以以与第一验证子阶段中类似的方式偏置。一个差异是选定字线WLL1(S)可在与存储器状态r相关联的第r验证脉冲水平下,而非在与存储器状态p相关联的第p验证脉冲水平下生成验证脉冲。另外,由于选定第三存储器单元MC3(S)具有目标存储器状态r,因此选定第三存储器单元是验证启用的存储器单元V-E MC3(S),而选定第一和第二存储器单元是验证禁止的存储器单元V-I MC1(S)、V-I MC2(S)。因此,第一和第二位线BL1、BL2被配置为第二验证阶段的未选位线BL1(U)、BL2(U)并且在感测未选位线水平VSUB下生成未选位线电压VBL1(U)、VBL2(U)(在图9中统一标记为VBL(U)),而第三位线BL3被配置为第二验证子阶段的选定位线BL3(S)并且在感测选定位线水平VSSB下生成选定位线电压VBL3(S)。第一和第二SGD线SGD1、SGD2可继续分别为选定和未选SGD线SGD1(S)、SGD2(U),以使得耦接到选定第一SGD线SGD1(S)的第三SGD晶体管SGDT3是启用的SGD晶体管SGDT3(E),并且耦接到未选第二SGD线SGD2(U)的第三SGD晶体管SGDT3是禁止的SGD晶体管SGD3(I)。

编程控制器622可控制电压供电电路604以在其相应验证水平下偏置块800的控制线,直到编程控制器622确定用于执行第二验证子阶段的预定时间周期已到期或结束。在预定时间周期期间,编程控制器622可控制感测电路620以感测验证启用的存储器单元的编程状态。例如,参考图8C,编程控制器622可控制耦接到选定第三位线BL3(S)的感测电路以感测验证启用的存储器单元V-E MC3(S)的状态。在第二编程子阶段结束时,编程控制器622可转变到下一验证子阶段,或如果第二验证阶段是编程-验证回路的最后验证子阶段,则编程控制器622可要么在选定字线组WLCG1(S)的所有选定存储器单元充分编程的情况下结束编程操作,要么转变到编程操作内的下一编程-验证回路。

如前所述,编程电路600可根据识别要验证的存储器状态的验证顺序以及在验证阶段期间执行与存储器状态相关联的验证子阶段的顺序来执行验证阶段。为了根据验证顺序来执行验证子阶段,控制栅极线电压供电电路606可根据该验证顺序将验证脉冲水平Vv系列或序列下的验证脉冲系列或序列提供或施加到选定字线。作为验证子阶段之间转变的一部分,控制栅极线电压供电电路606可根据该验证顺序将下一验证脉冲水平下的下一验证脉冲提供到选定字线。因此,为了从当前验证子阶段转变到下一验证子阶段,控制栅极线供电电路606从提供当前验证脉冲水平下的当前验证脉冲转变到下一验证脉冲水平下的下一验证脉冲。控制栅极线供电电路606可通过直接从当前验证脉冲水平转变到下一验证脉冲水平来从当前验证脉冲转变到下一验证脉冲。即,控制栅极线供电电路606在转变到提供下一验证脉冲之前不使当前验证脉冲的水平转变到初始或低电压水平(诸如0V)。因此,当控制电路600根据验证顺序执行验证阶段的验证子阶段并在这些验证子阶段中转变时,控制栅极线电压供电电路606通过直接转变到如验证顺序所定义或确定的下一验证脉冲水平而根据验证顺序循序地施加验证脉冲序列。此外,在所述多个验证子阶段内的验证阶段的整个持续时间中,控制栅极线电压供电电路606可保持其他控制栅极线电压处于其相应验证水平。

图10示出了在编程操作的编程-验证回路的示例性验证阶段期间在块602的控制栅极线上生成的示例性波形的时序图。在示例性验证阶段中,编程控制器622已确定验证具有存储器状态s、存储器状态t和存储器状态u作为其目标存储器状态的选定存储器单元。存储器状态s、t和u可表示存储器单元可被编程到其中的各种存储器状态中的任何一种。此外,多于或少于三种存储器状态对于其他示例性验证阶段也可为可能的。

此外,编程控制器622已确定存储器状态s、存储器状态t和存储器状态u的验证顺序。对于具体配置,编程控制器622可根据循序升高的阈值电压范围来确定验证顺序。例如,参考图10,存储器状态t与比存储器状态s更高的阈值电压范围相关联,并且存储器状态u与比存储器状态s和t更高的阈值范围相关联。因此,为了执行验证阶段,编程控制器622将验证顺序设定为存储器状态s、之后是存储器状态t、之后是存储器状态u。

为了执行验证阶段,编程电路600以该验证顺序循序地执行存储器状态s、t和u的验证子阶段。即,为了根据该验证顺序执行验证阶段,编程控制器622首先执行存储器状态s的第一验证子阶段、之后是存储器状态t的第二验证子阶段、之后是存储器状态u的第三验证子阶段。

验证阶段可包括初始斜升时间周期,在此期间电压供电电路604使至少一些控制栅极线上的电压从初始电压水平(例如,0V)斜升到初始验证水平。如图10所示,除了选定字线电压VWLL(S)之外,电压供电电路604使验证或感测控制栅极线水平和验证或感测源极线水平在验证阶段的持续时间内(即,在连续验证子阶段内)保持恒定。

就选定字线电压VWLL(S)而言,电压供电电路604(诸如具有控制栅极线电压供电电路606)可根据所执行的验证子阶段以及在验证阶段内执行验证子阶段的验证顺序循序地施加对应验证脉冲水平下的验证脉冲序列。例如结合图10,电压供电电路604可在存储器状态s的第一验证子阶段期间向选定字线WLL(S)施加第s验证脉冲水平Vvs下的第一验证脉冲,之后在第二验证子阶段期间向选定字线WLL(S)提供第t验证脉冲水平Vvt下的第二验证脉冲,然后在第三验证子阶段期间向选定字线WLL(S)提供第u验证脉冲水平Vvu下的第三验证脉冲。至少在该上下文中,编程电路600通过根据验证顺序从向选定字线WLL(S)施加当前验证脉冲转变到施加下一验证脉冲而循序地在这些验证子阶段中转变。

另外,至少对于一些示例性验证阶段(诸如图10所示的验证阶段),控制栅极线供电电路606通过使选定字线WLL(S)上生成的选定字线电压VWLL(S)直接从当前验证脉冲水平转变到下一验证脉冲水平而在连续验证阶段内向选定字线WLL(S)施加连续验证脉冲或验证脉冲序列。对于包括与第一存储器状态相关联的当前验证子阶段和与第二存储器状态相关联的下一验证子阶段的两个连续验证子阶段,控制栅极线电压供电电路606通过以下方式使选定字线电压VWLL(S)直接转变:在与第一存储器状态相关联的第一验证脉冲水平下生成选定字线电压VWLL(S),然后在验证阶段从当前验证子阶段转变到下一验证子阶段时(即,在当前验证子阶段结束且下一验证子阶段开始时)使选定字线电压VWLL(S)直接从第一验证脉冲水平转变到与第二存储器状态相关联的第二验证脉冲水平。

例如,如图10所示,控制栅极线电压供电电路604在第一验证子阶段期间在第s验证脉冲水平Vvs下生成选定字线电压VWLL(S)。然后,在第一验证子阶段结束且第二验证子阶段开始时,控制栅极线电压供电电路606直接从在第s验证脉冲水平Vvs下生成选定字线电压VWLL(S)转变到在第t验证脉冲水平Vvt下生成选定字线电压VWLL(S)。相似地,在第二验证子阶段结束且第三验证子阶段开始时,控制栅极线电压供电电路606直接从在第t验证脉冲水平Vvt下生成选定字线电压WWLL(S)转变到在第u验证脉冲水平Vvu下生成选定字线电压VWLL(S)。在该上下文中,控制栅极线电压供电电路606可被视为根据验证顺序在这些验证脉冲或验证脉冲水平中循序地步进以便执行验证阶段。

此外,虽然未在图10的时序图中示出,但在验证子阶段期间,位线电压供电电路608可将选定和未选位线电压施加到选定和未选位线,如此前所述。例如结合图10,在第一验证子阶段期间,位线电压供电电路608可将选定位线电压施加到与具有存储器状态s作为其目标存储器状态的选定存储器单元耦接的那些位线以便对那些选定存储器单元进行验证启用,并且可将未选位线电压施加到与具有存储器状态s以外的目标存储器状态的选定存储器单元耦接的那些位线以便在第一验证子阶段期间对那些选定存储器单元进行验证禁止。在验证阶段从第一验证子阶段转变到第二验证子阶段时,位线电压供电电路608可改变或转变其位线偏置以使得其将选定位线电压施加到与具有存储器状态t作为其目标存储器状态的选定存储器单元耦接的那些位线以便对那些选定存储器单元进行验证启用,并且可将未选位线电压施加到与具有存储器状态t以外的目标存储器状态的选定存储器单元耦接的那些位线以便在第二验证子阶段期间对那些选定存储器单元进行验证禁止。位线电压供电电路608在转变到存储器状态u的第三验证子阶段时可类似地改变其位线偏置。

另外,如前所述,编程控制器622可在每个验证子阶段期间控制感测块620以便对验证启用的存储器单元的编程状态进行验证。例如,在第一验证子阶段期间,编程控制器622可控制耦接到选定位线的感测块620以感测具有存储器状态s作为其目标存储器状态的验证启用的存储器单元的编程状态。然后,在第二验证子阶段期间,编程控制器622可控制耦接到选定位线的感测块620以感测具有存储器状态t作为其目标存储器状态的验证启用的存储器单元的编程状态。相似地,在第三验证子阶段期间,编程控制器622可控制耦接到选定位线的感测块620以感测具有存储器状态u作为其目标存储器状态的验证启用的存储器单元的编程状态。在验证阶段结束时,编程控制器622将已获得在三个验证子阶段期间具有存储器状态s、t和u的各种选定存储器单元的编程状态,或至少已使感测块620感测这些编程状态。

在最后验证子阶段结束时或结束后不久,验证阶段可包括斜降周期来终结验证阶段。在斜降周期期间,电压供电电路604可使控制线(包括控制栅极和源极线,如图10所示)上的验证电压斜降或降低回到初始水平。

对于至少一些示例性配置,编程电路600被配置为执行具有延迟周期的编程-验证回路。如本文所用,延迟周期是编程-验证回路的两个阶段之间(诸如编程阶段和验证阶段之间)的时间周期。延迟周期从第一阶段的结束延伸到第二阶段的开始,其中第一和第二阶段属于相同或不同编程-验证回路。编程控制器622可通过在将下一阶段的电压提供或施加到该块的控制线之前等待诸如预定时间周期而向编程-验证回路中插入延迟周期。时间量可从编程控制器622可最先将下一阶段的电压施加到该块的时间到编程控制器622确已将下一阶段的电压施加到该块的时间。

例如,在编程-验证回路的编程阶段结束时,编程控制器622可具有其将下一验证阶段的验证电压施加到该块的最早时间。然而,编程控制器622并非在最早时间施加验证电压,而是在施加验证电压以执行下一验证阶段之前等待一定时间周期。通过等待,编程控制器622在编程-验证回路的编程阶段和验证阶段之间插入了延迟周期。

又如,在验证阶段结束时,如果仍然存在不充分编程的选定存储器单元,编程控制器622通过以下方式启动下一编程-验证回路:施加编程水平下的电压以执行下一编程-验证回路的编程阶段。编程控制器622可具有其可施加编程电压以执行下一编程-验证回路的编程阶段的最早时间。然而,编程控制器622并非在最早时间施加编程电压,而是在施加编程电压以执行编程阶段之前等待一定时间周期。通过等待,编程控制器622在一个编程-验证回路的验证阶段和下一编程-验证回路的编程阶段之间插入了延迟周期。

以下实施方案描述了编程操作,其中编程控制器622在一个或多个编程阶段和一个或多个验证阶段之间插入了延迟周期以对块的选定位置(诸如选定字线单元组)进行编程。在一个实施方案中,编程控制器622可在一个编程-验证回路的编程阶段和验证阶段之间和/或在一个编程-验证回路的验证阶段和下一编程-验证回路的编程阶段之间插入延迟周期。然而,编程控制器622并不保持空闲,而是移动到该块内的另一个位置并且对另一位置处的至少一个存储器单元进行编程或验证。在一个实施方案中,在对另一位置的一个或多个存储器单元进行编程或验证之后,编程控制器622可确定延迟周期已结束,并且执行其延迟的编程或验证阶段。

在具体示例性配置中,编程电路600被配置为利用交错编程-验证回路来执行编程操作。如本文所用,交错编程验证回路是这样的编程回路,其被配置为使一个块的第一组存储器单元的编程阶段或验证阶段在该块的第二组存储器单元的编程阶段和验证阶段之间交错。不同组存储器单元可为相同块的不同字线单元组。利用交错编程-验证回路来对块进行编程的编程电路可直到执行每个编程操作的编程和验证阶段,才转变到下一交错编程-验证回路。在一些实施方案中,根据交错编程-验证回路将数据编程到块中的编程电路组合了多个编程-验证回路,每个编程-验证回路对该块的不同组存储器单元进行编程。

对于一些示例性实施方案,编程电路600通过以下方式执行交错编程-验证回路:使用于对第一组存储器单元进行编程的编程阶段在用于对第二组存储器单元进行编程和验证的一组编程和验证阶段之间交错。通过使编程阶段在一组编程和验证阶段之间交错,编程电路600分裂或分开该组编程和验证阶段,由此插入验证阶段的延迟。然而,编程电路600并非在该延迟周期期间保持空闲,而是执行交错编程阶段,从而有效地重叠编程电路600插入的延迟周期。

另外,对于一些示例性实施方案,编程电路600通过以下方式执行交错编程-验证回路:使用于对第一组存储器单元进行验证的验证阶段在用于对第二组存储器单元进行编程和验证的一组编程和验证阶段之间交错。通过使验证阶段在一组编程和验证阶段之间交错,编程电路600分裂或分开该组编程和验证阶段,由此插入验证阶段的延迟。然而,编程电路600并非在该延迟周期期间保持空闲,而是执行交错验证阶段,从而有效地重叠编程电路600插入的延迟周期。

对于至少一些示例性交错编程-验证回路,交错的效应或结果是编程阶段系列或序列后跟验证阶段系列或序列。即,当执行交错编程-验证回路时,编程电路600首先执行交错编程-验证回路的所有编程阶段,然后执行交错编程-验证回路的所有验证阶段。

图11是用交错编程-验证回路执行的示例性编程操作的示意图。图11中用交错编程-验证回路执行的编程操作与图7B中用编程-验证回路执行的编程操作的类似之处在于编程操作以第一交错编程-验证回路开始,并且以最后交错编程-验证回路结束。在交错编程-验证回路结束时,如果不同组选定存储器单元仍包括不充分编程的存储器单元,则编程电路600执行另一或下一交错编程-验证回路。编程电路600继续执行另一或下一交错编程-验证回路,直到不同组的所有选定存储器单元都为充分编程的。

然而,图11的交错编程-验证回路与图7B中的编程-验证回路的不同之处至少在于交错编程-验证回路各自包括用于对块的不同组存储器单元进行编程和验证的多个编程阶段和多个验证阶段。如前所述,每组存储器单元可为该块的字线单元组。不同组存储器单元可耦接到该块的相同字线,或耦接到不同字线。

因此,交错编程-验证回路使至少两个编程-验证回路交错,其中每个编程-验证回路对该块的不同组存储器单元进行编程和验证。对于图11中的示例性交错编程-验证回路,每个交错编程验证回路包括两个编程-验证回路,包括具有第一编程阶段和第一验证阶段的第一编程-验证回路,以及具有第二编程阶段和第二验证阶段的第二编程-验证回路。在交错编程-验证回路内,编程电路600执行第一编程和验证阶段以对第一组存储器单元进行编程和验证,并且执行第二编程和验证阶段以对第二组存储器单元进行编程和验证。另外,在交错编程-验证回路内,编程电路600通过以下方式使两个编程-验证回路交错:使第二编程阶段在第一编程阶段和第一验证阶段之间交错,并且使第一验证阶段在第二编程阶段和第二验证阶段之间交错。

另外,编程电路600可根据序列执行交错编程-验证回路或使两个或更多个编程-验证回路交错。用于执行交错编程-验证回路或用于使两个或更多个编程-验证回路交错的序列识别交错的编程和验证阶段以及要执行编程和验证阶段的顺序。编程控制器622可确定用于交错编程-验证回路或用于使两个或更多个编程-验证回路交错的序列,并且可根据该序列施加编程脉冲和验证脉冲。

进一步详细地,图11中的示例性交错编程-验证回路各自包括用于对两个不同组存储器单元(诸如两个不同字线单元组)进行编程和验证的两组编程和验证阶段。这两个不同组包括第一组第一编程和验证阶段以及第二组第二编程和验证阶段。编程电路600可执行第一组编程和验证阶段以对块(例如,块602)的第一组选定存储器单元进行编程,并且可执行第二组编程和验证阶段以对该块的第二组选定存储器单元进行编程。如前所述,第一和第二组选定存储器单元可位于该块的不同字线中或耦接到该块的不同字线,或可位于相同字线中但属于不同子块—即,属于耦接到不同SGD线的不同NAND串。例如,不同组选定存储器单元可包括不同字线单元组。

对于给定交错编程-验证回路,编程电路600使对第二组选定存储器单元进行编程的第二编程阶段在对第一组选定存储器单元进行编程的第一编程阶段和对第一组选定存储器单元进行验证的第一验证阶段之间交错或插入。在执行第一编程阶段之后,编程电路600在执行对第一组选定存储器单元进行验证的第一验证阶段之前执行对第二组选定存储器单元进行编程的第二编程阶段。在执行第二编程阶段之后,编程电路600执行第一验证阶段。另外,对于给定交错编程-验证回路,编程电路600使第一验证阶段在第二编程阶段和第二验证阶段之间交错或插入。即,在执行第二编程阶段之后,编程电路600在执行对第二组选定存储器单元进行验证的第二验证阶段之前执行对第一组选定存储器单元进行验证的第一验证阶段。本领域技术人员应认识到第一验证阶段和/或第二验证阶段在某些实施方案中可包括验证子阶段。

作为交错的结果,编程电路600在编程控制器622的控制下连续地对两组选定存储器单元进行编程。两组选定存储器单元的连续编程包括一个紧接另一个地施加或提供编程脉冲以便对这两组选定存储器单元进行编程。编程电路600在编程控制器622的控制下通过以下方式连续地对两组选定存储器单元进行编程:执行第一组编程和验证阶段的第一编程阶段,并且执行第二组编程和验证阶段的第二编程阶段,其中第一和第二编程阶段形成每个交错编程-验证回路的编程阶段系列或序列。

此外,通过交错,编程电路600在编程控制器622的控制下连续地对两组选定存储器单元进行验证。两组选定存储器单元的连续验证包括一个紧接另一个地施加或提供验证脉冲序列以对这两组选定存储器单元进行验证。编程电路600在编程控制器622的控制下通过以下方式连续地对两组选定存储器单元进行验证:执行第一组编程和验证阶段的第一验证阶段,并且执行第二组编程和验证阶段的第二验证阶段,其中第一和第二验证阶段形成每个交错编程-验证回路的验证阶段系列或序列。

对于每个交错编程-验证回路,编程电路600可根据与验证第一组选定存储器单元相关联的第一验证顺序来执行第一验证阶段,并且可根据与验证第二组选定存储器单元相关联的第二验证顺序来执行第二验证阶段。在执行第二验证阶段的最后验证子阶段之后,假定选定存储器单元组仍包括不充分编程的存储器单元,则编程电路600可转变到下一交错编程-验证回路。

另外,对于至少一些示例性配置,在交错编程-验证回路期间,编程电路600可不使充分编程的选定存储器单元组的编程-验证回路交错。在给定交错编程-验证回路结束时,如果一组选定存储器单元全都为充分编程的,则编程电路600将执行后续回路而不纳入充分编程的组的编程阶段和验证阶段。例如,在图11中的编程操作中,在给定交错编程-验证回路结束时,如果其中一组选定存储器单元全都为充分编程的而另一组仍包括不充分编程的存储器单元,则编程电路600可按如图7B所示的常规编程-验证回路来执行后续回路,以便继续对仍包括不充分编程的存储器单元的组进行编程。

在图11中的示例性编程操作中,对于每个交错编程-验证回路,编程电路600以与其执行编程阶段系列相同的顺序执行验证阶段系列。编程电路600执行对第一组选定存储器单元进行编程的第一编程阶段,然后执行对第二组选定存储器单元进行编程的第二编程阶段。相似地,编程电路执行对第一组选定存储器单元进行验证的第一验证阶段,然后执行对第二组选定存储器单元进行验证的第二验证阶段。对于其他配置,编程电路600以不同顺序(诸如以彼此颠倒的顺序)执行编程阶段系列和验证阶段系列。例如,在给定交错编程验证回路中,在执行第二编程回路之后,编程电路600可与第二组选定存储器单元保持在一起并且在执行第二编程阶段之后立即执行第二验证阶段。在执行第二验证阶段之后,编程电路600可转变为执行对第一组选定存储器单元进行验证的第一验证阶段。在该上下文中,编程电路600使整组第二编程和验证阶段在第一编程阶段和第一验证阶段之间交错或插入以便执行交错编程-验证回路。

另外,图11中的示例性编程操作被示出为仅使两组编程验证阶段交错以便对块的两个不同组选定存储器单元进行编程。其他示例性编程操作可类似地使三组或更多组编程和验证阶段交错以便对块的三个不同组选定存储器单元进行编程。此类其他示例性编程操作可包括交错编程-验证回路,每个交错编程-验证回路包括一系列三个或更多个编程阶段后跟一系列三个或更多个验证阶段以对块的三个或更多个不同组选定存储器单元进行编程和验证。另选地,编程电路600可通过以下方式执行交错编程-验证回路以对三个或更多个不同组选定存储器单元进行编程和验证:将至少一个验证阶段交错或插入到编程阶段系列中,使得编程电路600在对给定交错编程-验证回路的所有编程阶段进行编程之前执行至少一个验证阶段。使编程阶段和验证阶段交错以形成块的两个或更多个不同组选定存储器单元的交错编程-验证回路的各种方式也可为可能的。

此外,编程控制器622被配置为以与其控制利用此前参考图7B至图10所述的编程-验证回路执行的性能或编程操作相同或类似的方式控制利用交错编程-验证回路执行的编程操作。当执行交错编程-验证回路时,编程控制器622确定使两个或更多个编程-验证回路交错的序列以便对两个或更多个不同组存储器单元进行编程。例如,编程控制器622确定要在交错编程-验证回路中执行的编程和验证阶段,以及编程电路600执行这些阶段的顺序。另外,编程控制器622根据所确定的序列来确定和控制何时在交错编程-验证回路内执行编程和验证阶段。例如,编程控制器622被配置为确定或识别编程阶段开始和结束的时间以及验证阶段开始和结束的时间。继而,编程控制器622被配置为在对第一组存储器单元进行编程和验证的编程阶段和验证阶段之间确定或识别延迟周期(包括延迟周期的量)。此外,编程控制器622被配置为确定或识别使对第二组存储器单元进行编程的编程阶段在对第一组存储器单元进行编程和验证的编程和验证阶段之间交错或插入的时间或时间周期。编程控制器622可被配置为使交错或插入的编程阶段的执行与延迟周期重叠。相似地,编程控制器622被配置为确定或识别使对第一组存储器单元进行验证的验证阶段在对第二组存储器单元进行编程和验证的编程和验证阶段之间交错或插入的时间或时间周期。编程控制器622可被配置为使交错或插入的验证阶段的执行与延迟周期重叠。

另外,编程控制器622可控制不同组存储器单元(诸如不同字线单元组)的连续或顺序编程,并且控制不同组存储器单元的连续或顺序验证。例如,编程控制器622可在当前编程阶段之后循序地或直接地执行下一编程阶段,诸如通过在施加对第一组存储器单元进行编程的第一编程脉冲之后施加对第二组存储器单元进行编程的第二编程脉冲。另外,编程控制器622可在当前验证阶段之后循序地或直接地执行下一验证阶段,诸如通过在施加对第一组存储器单元进行验证的第一验证脉冲序列之后施加对第二组存储器单元进行验证的第二验证脉冲序列。

此外,编程控制器622被配置为确定或识别哪些组存储器单元(诸如哪些字线单元组)要配置为选定存储器单元以利用交错编程-验证回路进行编程操作。例如,编程控制器622被配置为确定或识别字线以在利用交错编程-验证回路执行的编程操作期间配置为选定或未选字线,并且确定或识别一个或多个选定字线中的哪些字线单元组要配置为选定存储器单元以利用交错编程-验证回路进行给定编程操作。

此外,对于至少一些示例性配置,编程控制器622可包括交错控制电路630。如本文所用,交错控制电路是控制利用交错编程-验证回路的编程操作的编程控制器的部件或模块。交错控制电路确定交错编程-验证回路的序列,包括用于使两个或更多个编程-验证回路交错和/或用于执行两个或更多个编程-验证回路的验证和编程阶段的序列。另外,交错控制电路可控制何时执行交错编程-验证回路、它们何时从一个交错编程-验证回路转变到下一编程-验证回路的时序,以及何时执行单独交错编程-验证回路的编程阶段和验证阶段的时序。例如,交错控制电路630可确定或识别第一组存储器单元的编程阶段和验证阶段之间的时间或时间周期,诸如编程阶段结束之后的时间或时间周期以及验证阶段开始之前的时间或时间周期。除此之外或另选地,交错编程控制电路630可确定交错编程-验证回路的编程阶段和验证阶段之间的延迟周期(包括延迟周期的量)。一般来讲,交错控制电路630所具有的交错编程-验证回路的功能和控制与编程控制器622相同。因此,为控制交错编程-验证回路而执行的动作可互换地被描述或被称为由编程控制器622或交错控制电路626执行。

另外,交错控制电路630可被配置为与编程控制电路624和验证控制电路626同步地操作以执行交错编程-验证回路。例如,响应于交错控制电路630确定或识别对第一组存储器单元进行编程和验证的编程阶段和验证阶段之间的时间、时间周期或延迟周期,编程控制电路624可诸如通过施加或提供编程脉冲来执行编程阶段,以响应于所识别的时间、时间周期或延迟周期而对第二组存储器单元进行编程。相似地,响应于交错控制电路630确定或识别对第二组存储器单元进行编程和验证的编程阶段和验证阶段之间的时间、时间周期或延迟周期,验证控制电路626可诸如通过施加或提供验证脉冲序列来执行验证阶段,以响应于所识别的时间、时间周期或延迟周期而对第一组存储器单元进行验证。

另外,作为编程控制器622的部件或模块,交错控制电路630可具有编程控制器622为了实施编程操作的交错编程-验证回路而可具有的各种硬件和/或硬件与固件(或硬件与软件)配置的组合中的任何一种。对于一些示例性配置,交错控制电路630可包括与编程控制电路624和/或验证控制电路626分开的离散组电路。对于其他示例性配置,交错控制电路630可包括相同硬件电路,诸如相同处理器,但执行不同固件,诸如不同计算机代码集或指令集,以便实施其功能、操作或动作。采用或不采用编程控制电路624和/或验证控制电路626的交错控制电路630的各种配置或配置组合也可为可能的。

编程电路600可被配置为执行交错编程-验证回路以便根据不同组选定存储器单元在块中所处的位置以不同方式对该块进行编程。以下描述对两种不同类型的交错编程-验证回路进行描述。执行参考图12至图15所述的第一种类型的交错编程-验证回路以对位于不同字线中或耦接到不同字线但位于块的相同子块中的不同组存储器单元进行编程以便将数据编程到该块中。执行参考图16至图18所述的第二种类型的交错编程-验证回路以对位于相同字线中或耦接到相同字线但属于块的不同子块的不同组存储器单元进行编程以便将数据编程到该块中。

参见图12至图15和第一种类型的交错编程-验证回路,图12示出了块1200的至少一部分的分解透视图,其可表示图2B的存储器单元结构142的块的至少一部分,图3A、图3B或图4A中的块BLK之一的至少一部分,具有图4B、图4C的块410的物理构造或结构,具有图4D中的块480的电路配置,表示图6的块602的至少一部分,和/或被配置为耦接到图6的编程电路600和/或由该编程电路偏置。

与图8A至图8C中的块800的构造类似,块1200被示出为包括SGD层SGDL,该SGD层SGDL包括两个SGD线,包括第一SGD线SGD1和第二SGD线SGD2。块1200还被示出为包括SGS线(或层)SGSL和源极线SL。为简单起见,未示出耦接到SGD线SGD1、SGD2的SGD晶体管SGDT以及耦接到SGS线的SGS晶体管SGST。

块1200被示出为包括两个字线(或字线层),包括第一字线WLL1和第二字线WLL2。字线WLL1、WLL2中的每一者被示出为包括两个字线单元组,包括第一字线单元组WLCG1和第二字线单元组WLCG2。耦接到字线WLL1、WLL2中的每一者的第一字线单元组WLCG1与第一SGD线SGD1形成第一子块SB1—即,属于第一字线单元组WLCG1的存储器单元MC属于包括SGD晶体管的NAND串,所述SGD晶体管具有耦接到第一SGD线SGD1和/或被配置为由该第一SGD线偏置的控制栅极。相似地,耦接到字线WLL1、WLL2中的每一者的第二字线单元组WLCG2与第二SGD线SGD2形成第二子块SB2—即,属于第二字线单元组WLCG2的存储器单元MC属于包括SGD晶体管的NAND串,所述SGD晶体管具有耦接到第二SGD线SGD2和/或被配置为由该第二SGD线偏置的控制栅极。

参考图12至图13所述的示例性编程操作对耦接到第一和第二字线WLL1、WLL2的第一字线单元组WLCG1进行编程。因此,对于参考图12至图13所述的编程操作,耦接到第一和第二字线WLL1、WLL2的第一字线单元组WLCG1是编程操作的选定字线单元组WLCG1(S),并且耦接到第一和第二字线WLL1、WLL2的第二字线单元组WLCG2是编程操作的未选字线组WLCG2(U)。图12将第一字线单元组WLCG1(S)的存储器单元MC示出为选定存储器单元MC(S),并且将第二字线单元组WLCG2(S)的存储器单元MC示出为未选存储器单元MC(U)。

此外,由于第一和第二字线WLL1、WLL2两者都耦接到选定存储器单元MC(S),因此第一和第二字线WLL1、WLL2中的每一者均被称为选定字线WLL1(S)、WLL2(S),每个选定字线被配置为生成相应选定字线电压VWLL1(S)、VWLL2(S)。此外,由于第一SGD线SGD1在编程操作的交错编程-验证回路期间对选定存储器单元MC(S)进行进行编程启用和验证启用,因此第一SGD线SGD1是被配置为生成选定SGD线电压VSGD1(S)的编程操作的选定SGD线SGD1(S)。另外,由于第二SGD线SGD2在编程操作的交错编程-验证回路期间对未选存储器单元MC(U)进行编程禁止和验证禁止,因此第二SGD线SGD2是被配置为生成未选SGD线电压VSGD2(U)的编程操作的未选SGD线SGD2(U)。另外,图12示出了被配置为生成相应SGD线和源极线电压VSGDL、VSL的SGD线SGDL和源极线SL。

图13是编程和验证电压的电压波形的时序图,这些编程和验证电压在交错编程-验证回路期间施加到块1200的控制栅极线和源极线SL或在所述控制栅极线和源极线上生成以对耦接到选定第一和第二字线WLL1(S)、WLL2(S)的选定存储器单元MC(S)进行编程。图13中的交错编程-验证回路被示出为包括两个编程阶段,包括对耦接到选定第一字线WLL1(S)的选定存储器单元MC(S)进行编程的第一编程阶段,以及对耦接到选定第二字线WLL2(S)的选定存储器单元MC(S)进行编程的第二编程阶段。第一和第二编程阶段可形成一系列或一对编程阶段。此外,图13中的交错编程-验证回路包括两个验证阶段,包括对耦接到选定第一字线WLL1(S)的选定存储器单元MC(S)进行验证的第一验证阶段,以及对耦接到选定第二字线WLL2(S)的选定存储器单元MC(S)进行验证的第二验证阶段。第一和第二验证阶段可形成一系列或一对验证阶段。

为了对耦接到不同选定字线WLL1(S)、WLL2(S)的两组选定存储器单元MC(S)进行编程,编程电路600可交替地将选定字线WLL1(S)、WLL2(S)配置为选定和未选字线。即,为了首先对耦接到第一字线WLL1(S)的选定存储器单元MC(S)进行编程、其次接着对耦接到第二字线WLL2(S)的选定存储器单元MC(S)进行编程,编程电路600可在第一编程阶段期间将选定第一字线WLL1(S)配置为选定字线并且将选定第二字线WLL2(S)配置为未选字线。然后,在第二编程阶段期间,编程电路600可将选定第二字线WLL2(S)配置为选定字线并且将选定第一字线WLL1(S)配置为未选字线。

因此,如图13所示,在第一编程阶段期间,控制栅极线电压供电电路606将编程脉冲施加到选定第一字线WLL1(S),同时将编程未选字线水平VPUW(或导通水平VPASS)下的未选电压施加到选定第二字线WLL2(S)以禁止选定第二字线上的编程。作为响应,选定第一字线WLL1(S)通过使其字线电压VWLL1(S)斜升到编程脉冲水平VPGM来生成编程脉冲,并且选定第二字线WLL2(S)在第一编程阶段期间使其字线电压VWLL2(S)斜升到编程未选字线水平VPUW。然后,在第一编程阶段结束或将近结束时,选定第一和第二字线WLL1(S)、WLL2(S)可使其相应电压VWLL1(S)、VWLL2(S)斜降到初始水平以离开第一编程阶段并进入第二编程阶段。

在第二编程阶段期间,控制栅极线电压供电电路606颠倒其向选定第一和第二字线WLL1(S)、WLL2(S)施加的选定和未选电压,并且将编程脉冲施加到选定第二字线WLL2(S),同时将编程未选字线水平VPUW下的未选字线电压施加到选定第一字线WLL1(S)以禁止选定第一字线上的编程。作为响应,选定第二字线WLL2(S)通过使其字线电压VWLL2(S)斜升到编程脉冲水平VPGM来生成编程脉冲,并且选定第一字线WLL1(S)在第二编程阶段期间使其字线电压VWLL1(S)斜升到编程未选字线水平VPUW。

此外,如图13所示,块1200的未选字线(未在图12中示出)通过以下方式生成相应未选字线电压VWLL(U-):在第一和第二编程阶段中的每一者开始时使其相应未选字线电压VWLL(U)从初始水平斜升到编程未选字线水平VPUW,然后在第一和第二编程阶段中的每一者结束或将近结束时使其相应未选字线电压VWLL(U)从编程未选字线水平VPUW斜降到初始水平。其他控制栅极线和源极线SL可被配置为最初在第一编程阶段开始时使其电压斜升到相应编程水平,然后在第一和第二编程阶段的过程中保持其电压处于相应编程水平—即,并不先斜降再往回斜升以从第一编程阶段转变到第二编程阶段。具体地讲,在第一和第二编程阶段的过程中,选定第一SGD线SGD1(S)保持其电压VSGD1(S)处于编程选定SGD水平VPSSGD,未选第二SGD线SGD2(U)保持其电压VSGD2(U)处于编程未选SGD水平VPUSGD,SGS线SGSL保持其电压VSGSL处于编程SGS水平VPSGS,并且源极线SL保持其电压VSL处于编程源极线水平VPSL。在其他示例性配置中,与第一和第二编程阶段期间的选定和未选电压VWLL1(S)、VWLL2(S)、VWLL(U)类似,选定第一SGD线SGD1(S)可在第一编程阶段结束时使其电压VSGD1(S)斜降,然后在第二编程阶段期间使电压VSGD1(S)往回斜升到编程选定SGD水平VPSSGD。

另外,位线电压供电电路608可将编程选定和未选位线电压施加到选定和未选位线以便在第一和第二阶段期间基于其相应编程状态对各种选定存储器单元进行编程启用和编程禁止。图13示出了在两个编程阶段内生成的两个电压波形,包括示出向选定位线施加的编程选定位线水平VPSB下的选定位线电压的第一电压波形(由虚线表示),以及示出向未选位线施加的编程未选位线水平VPUB下的未选位线电压的第二电压波形(由实线表示)。在具体示例性配置中,如图13所示,位线电压供电电路608可使未选位线电压VBL(U)在第一编程阶段结束或将近结束时从编程未选位线水平VPUB斜降到初始水平,然后在第二编程阶段开始时往回斜升到编程未选位线水平VPUB。在其他示例性配置中,位线电压供电电路608可在第一和第二编程阶段的过程中或持续时间内保持未选位线电压VBL(U)处于编程未选位线水平VPUB—即,并不先斜降再往回斜升。

如图13所示,在第二编程阶段结束或将近结束时,编程电路600可进入或转变成第一验证阶段以对耦接到选定第一字线WLL1(S)的选定存储器单元进行验证。编程电路600可通过使控制栅极线和源极线电压转变到验证或感测水平来实现这一点。

在图13所示的示例性交错编程-验证回路中,为了对耦接到不同选定字线WLL1(S)、WLL2(S)的两组选定存储器单元MC(S)进行验证,编程电路600可交替地将选定字线WLL1(S)、WLL2(S)配置为选定和未选字线。即,为了首先对耦接到第一字线WLL1(S)的选定存储器单元MC(S)进行验证、其次接着对耦接到第二字线WLL2(S)的选定存储器单元MC(S)进行验证,编程电路600可在第一验证阶段期间将选定第一字线WLL1(S)配置为选定字线并且将选定第二字线WLL2(S)配置为未选字线。然后,在第二验证阶段期间,编程电路600可将选定第二字线WLL2(S)配置为选定字线并且将选定第一字线WLL1(S)配置为未选字线。

因此,如图13所示,在第一验证阶段期间,控制栅极线电压供电电路606将验证脉冲系列或序列施加到选定第一字线WLL1(S),同时将感测未选字线水平VSUW(或读取水平VREAD)下的未选电压施加到选定第二字线WLL2(S)。作为响应,选定第一字线WLL1(S)通过根据与第一验证阶段相关联的验证顺序在验证脉冲电压水平Vv序列下生成其字线电压VWLL1(S)来生成验证脉冲序列,同时选定第二字线WLL2(S)在第一验证阶段期间在感测未选字线水平VSUW下生成其字线电压VWLL2(S)

在第二验证阶段期间,控制栅极线电压供电电路606颠倒其向选定第一和第二字线WLL1(S)、WLL2(S)施加的选定和未选电压,并且将验证脉冲序列施加到选定第二字线WLL2(S),同时将感测未选字线水平VSUW下的未选字线电压施加到选定第一字线WLL1(S)。作为响应,选定第二字线WLL2(S)通过根据与第二验证阶段相关联的验证顺序在验证脉冲电压水平Vv序列下生成其字线电压VWLL2(S)来生成验证脉冲序列,同时选定第一字线WLL1(S)在第二验证阶段期间在感测未选字线水平VSUW下生成其字线电压VWLL1(S)

如图13所示,为了执行第一和第二验证阶段,控制栅极线电压供电电路606将验证脉冲以递减验证顺序施加到选定字线WLL1(S)、WLL2(S)。如本文所用,递减验证顺序是识别逐渐降低的存储器状态的验证顺序。如前所述,第一存储器状态低于第二存储器状态,其中第一存储器状态与比与第二存储器状态相关联的阈值电压范围更低的阈值电压范围相关联。为了根据递减验证顺序来执行验证阶段,编程电路600接下来将在验证阶段中执行的每个下一验证子阶段与比与编程电路600当前执行的当前验证子阶段相关联的存储器状态和/或阈值电压范围更低的存储器状态和/或更低的阈值电压范围相关联。

结合图13,执行示例性交错编程-验证回路以对被编程为存储每单元两位的存储器单元进行验证—即,每个选定存储器单元可具有擦除状态、存储器状态A、存储器状态B或存储器状态C作为其目标存储器状态。根据每单元两位的存储方案,存储器状态A和B是比存储器状态C更低的存储器状态,并且存储器状态A是比存储器状态B更低的存储器状态。因此,编程电路600可通过以下方式根据递减验证顺序来执行第一和第二验证阶段中的每一者:执行存储器状态C的第一验证阶段,之后执行存储器状态B的第二验证阶段,然后执行存储器状态A的第三验证阶段。

因此,为了根据递减验证顺序来执行第一和第二验证阶段,控制栅极线电压供电电路606根据递减验证顺序来施加验证脉冲序列以使得选定第一字线在循序降低的验证脉冲水平下生成其选定字线电压。根据图13所示的每单元两位的存储方案,控制栅极线电压供电电路606向选定第一字线WLL1(S)提供验证脉冲以使得选定第一字线WLL1(S)在第一验证阶段的存储器状态C、B和A的对应三个验证子阶段中的每一者期间在循序降低的验证脉冲水平VvC、VvB和VvA下生成其选定字线电压VWLL1(S)。然后,在第二验证阶段期间,控制栅极线电压供电电路606向选定第二字线WLL2(S)提供验证脉冲以使得选定第二字线WLL2(S)在第二验证阶段的存储器状态C、B和A的对应三个验证子阶段中的每一者期间在循序降低的验证脉冲水平VvC、VvB和VvA下生成其选定字线电压VWLL2(S)

根据递减验证顺序来执行第一验证阶段可比根据递增验证顺序来执行第一验证阶段更有效,因为选定第一字线WLL1(S)的字线电压VWLL1(S)在第二编程阶段结束时已处于编程未选字线水平VPUW(或VPASS)。因此,控制栅极线电压供电电路606、继而选定第一字线水平WLL1(S)可使选定第一字线WLL1(S)上的选定字线电压VWLL1(S)从编程未选字线水平VPUW转变到最高验证脉冲水平(在该示例中为与存储器状态C相关联的验证脉冲水平VvC),该转变速度快于其可使选定字线电压VWLL1(S)从编程未选字线水平VPUW向下转变回到初始水平(例如,0V的接地参考电压水平),然后向上转变回到与存储器状态A相关联的验证脉冲水平VvA,或直接转变到比最高验证脉冲水平(例如,每单元两位的存储方案的验证脉冲水平VvC)更低的任何其他验证脉冲水平。

相似地,根据递减验证顺序来执行第二验证阶段可比根据递增验证顺序来执行第二验证阶段更有效,因为选定第二字线WLL2(S)的字线电压VWLL2(S)在第一验证阶段结束时已处于验证或感测未选字线水平VSUW(或VREAD)。因此,控制栅极线电压供电电路606、继而选定第二字线水平WLL2(S)可使选定第二字线WLL2(S)上的选定字线电压VWLL2(S)从感测未选字线水平VSUW转变到最高验证脉冲水平(在该示例中为与存储器状态C相关联的验证脉冲水平VvC),该转变速度快于其可使选定字线电压VWLL2(S)从感测未选字线水平VSUW向下转变回到初始水平(例如,0V的接地参考电压水平),然后向上转变回到与存储器状态A相关联的验证脉冲水平VvA,或直接转变到比最高验证脉冲水平(例如,每单元两位的存储方案的验证脉冲水平VvC)更低的任何其他验证脉冲水平。然而,在其他示例性实施方案中,编程电路600可根据递增验证顺序来执行第二验证顺序,其中控制栅极线电压供电电路606根据递增验证顺序来施加验证脉冲序列。

此外,除了选定第一和第二字线WLL1(S)、WLL2(S)之外,其他控制栅极线和源极线SL可被配置为最初在第一验证阶段开始时使其电压斜升到相应验证或感测水平,然后在第一和第二验证阶段的过程中保持其电压处于其相应验证或感测水平—即,并不先斜降再往回斜升以从第一验证阶段转变到第二验证阶段。具体地讲,在第一和第二验证阶段的过程中,选定第一SGD线SGD1(S)保持其电压VSGD1(S)处于感测选定SGD水平VSSSGD(或选择栅极水平VSG),未选第二SGD线SGD2(U)保持其电压VSGD2(U)处于感测未选SGD水平VSUSGD,该块的未选字线(未在图12中示出)保持其相应未选字线电压VWLL(U)处于验证或感测未选字线水平VSUW(或VPASS),SGS线SGSL保持其电压VSGSL处于感测SGS水平VSSGS,并且源极线SL保持其电压VSL处于感测源极线水平VPSL。

另外,对于一些示例性配置,如图13所示,位线电压供电电路608可将验证或感测选定位线水平VSSB(或VBLC)下的选定位线电压施加到与该块的选定存储器单元耦接的所有位线。为了在图13中举例说明,描绘选定和未选位线电压的两个电压波形在第一验证阶段开始时合并成感测选定位线水平VSSB下的单个电压波形。因此,在第一验证阶段开始时,位线电压供电电路608使选定位线电压从初始水平斜升到感测选定位线水平VSSB,并且将感测选定位线水平VSSB下的选定位线电压施加到位线BL。位线电压供电电路608在第一和第二验证阶段的过程中或持续时间内保持选定位线电压处于感测选定位线水平VSSB,即,在第一和第二验证阶段之间转变时并不先使位线电压斜降再往回斜升。

在第二验证阶段结束时,电压供电电路604可使控制栅极线和供电线电压从其验证或感测水平斜降到初始水平。假定仍存在需要加以编程的不充分编程的存储器单元,则编程电路600可随后转变到下一交错编程-验证回路。

图14示出了根据交错编程-验证回路对耦接到一组字线的存储器单元进行编程的示例性方法1400的流程图。在块1402处,编程控制器622可识别要将数据编程到其中的块的一组字线。该组字线可包括至少两个字线。编程控制器622可将该组中的字线识别为利用交错编程-验证回路的多个编程操作的选定字线,这类似于作为参考图12和图13所述的编程操作的选定字线的第一和第二字线WLL1(S)、WLL2(S)。

在块1404处,编程控制器622可识别未编程字线单元组集合以在编程操作中编程。该未编程字线单元组集合可属于相同子块,其中该集合的每个字线单元组位于选定字线中的不同一者中或耦接到选定字线中的不同一者。未编程字线单元组是所有其存储器单元都处于擦除状态的字线单元组。编程控制器622可识别其在块1404中识别的那些字线单元组具有编程操作的选定字线单元组。

在块1406处,编程电路600可根据参考图12至图13所述的交错编程-验证回路,通过执行交错编程-验证回路来执行编程操作以对该选定字线单元组集合进行编程。在编程电路600已在块1406处对该选定字线单元组集合的存储器单元进行充分编程之后,编程控制器622可确定是否存在与该字线组耦接的未编程字线单元组的任何其他集合。未编程字线单元组的另一个集合可属于该块的不同子块。如果编程控制器622确定存在与该字线组耦接的未编程字线单元组的另一个集合,则方法1400可回到块1406,在此处编程电路600执行另一个编程操作以对编程控制器622在块1406处识别的该未编程字线单元组集合进行编程。另选地,如果编程控制器622未确定存在与该字线组耦接的未编程字线单元组的另一个集合,则编程方法1400可结束。

图15示出了通过根据参考图12至图14所述的交错编程-验证回路利用交错编程-验证回路执行编程操作来对块1502进行编程的示意图。块1502可表示图2B的存储器单元结构142的块的至少一部分,图3A、图3B或图4A中的块BLK之一的至少一部分,具有图4B、图4C的块410的物理构造或结构,具有图4D中的块480的电路配置,表示图6的块602的至少一部分,和/或被配置为耦接到图6的编程电路600和/或由该编程电路偏置。

为了对块1502进行编程,编程电路600可将块1502的字线分离、划分或布置成字线区WLZ。如本文所用,字线区是块的多个、一组或一批字线。编程电路600可基于高度将这些字线分成字线区WLZ。如本文所用,块的更高字线是在z方向上离基板更远的字线,并且块的更低字线是在z方向上离基板更近的字线。编程电路600可配置字线区WLZ以使得字线的高度在字线区WLZ之间没有重叠。即,一个字线区的所有字线高于另一个字线区的所有字线,或一个字线区的所有字线低于另一个字线区的所有字线。

在图15所示的示例性配置中,编程电路600将块1502分成两个字线区,包括上字线区WLZ(U)和下字线区WLZ(L)。上字线区WLZ(U)的所有字线高于下字线区WLZ(U)的所有字线。包括超过两个字线区WLZ的其他配置也可为可能的。

此外,在图15所示的示例性配置中,编程电路600布置字线区WLZ以使得每个字线区具有从第一字线WL(1)延伸到第N字线WL(N)的相同N个字线。因此,块1502作为一个整体包括2*N个字线。

在每个字线区WLZ内或对于每个字线区WLZ,第一字线WLL(1)是字线区的最低字线(离基板最近的字线区的字线),并且第N字线WLL(N)是字线区的最高字线(离基板最远的字线区的字线)。作为一个整体观察块1502,下字线区WLZ(L)的第一字线WLL(1)是块1502的最低字线,并且上字线区WLZ(U)的第N字线WLL(N)是块1502的最高字线。

为了将数据编程到块1502中,编程电路600被配置为根据编程操作组的序列来对该数据进行编程。编程电路600被配置为对多组字线之一执行每组编程操作。给定字线组的字线位于不同字线区WLZ中或属于不同字线区WLZ。因此,对于图15中的双字线区配置,编程电路600被配置为对包括上字线区WLZ(U)中的字线和下字线区WLZ(L)中的字线的一组字线执行一组编程操作。

在具体示例性配置中,编程电路600被配置为根据参考图14所述的方法1400执行一组编程操作以对一组字线进行编程。编程控制器622识别块1502中包括上字线区WLZ(U)中的字线和下字线区WLZ(L)中的字线的一组字线,并且根据参考图12至图14所述的交错编程-验证回路,利用交错编程-验证回路来执行编程操作。在编程电路600完成执行一组编程操作以对块1502的一组字线的存储器单元进行编程之后,编程控制器622识别块1502的下一组字线,并且通过利用交错编程-验证回路执行下一组编程操作来将数据编程到与下一组字线耦接的存储器单元中。编程电路600可按这种方式前进,直到与不同组字线耦接的块1502的所有存储器单元为充分编程的。

在具体示例性配置(诸如图15所示的配置)中,编程控制器622被配置为通过识别或选择上字线区WLZ(U)中的下一更高字线和下字线区WLZ(L)中的下一更低字线来识别用于利用交错编程-验证回路执行下一组编程操作的下一组字线。为了开始编程操作组的序列,编程电路600可执行第一或初始组编程操作以对与第一字线组耦接的存储器单元进行编程,该第一字线组包括上字线区WLZ(U)的最低字线WLL(1)和下字线区WLZ(L)的最高字线WLL(N)。在利用交错编程-验证回路对与第一字线组耦接的存储器单元进行编程之后,编程控制器622可识别用于执行下一组或第二组编程操作的上字线区WLZ(U)中的下一更高字线和下字线区WLZ(L)中的下一更低字线,即,上字线区WLZ(U)中的第二字线WLL(2)和下字线区WLZ(L)中的第(N-1)字线。编程控制器622可按这种方式识别下一字线组的字线一直到最后一组编程操作,对于最后一组编程操作,其将上字线区WLZ(U)的最高字线WLL(N)和下字线区WLZ(L)的最低字线WLL(1)识别为最后一组字线。

参见图16至图18和第二种类型的交错编程-验证回路,图16示出了块1600的至少一部分的分解透视图,其可表示图2B的存储器单元结构142的块的至少一部分,图3A、图3B或图4A中的块BLK之一的至少一部分,具有图4B、图4C的块410的物理构造或结构,具有图4D中的块480的电路配置,表示图6的块602的至少一部分,和/或被配置为耦接到图6的编程电路600和/或由该编程电路偏置。此外,块1600被示出为具有与图12的块1200相同的配置,包括两个SGD线SGD1、SGD2,两个字线(或字线层)WLL1、WLL2,SGD线(或SGD层)SGDL,以及源极线SL。

参考图16和图17所述的示例性编程操作对耦接到第一字线WLL1的第一和第二字线单元组WLCG1、WLCG2进行编程。因此,对于参考图16和图17所述的编程操作,耦接到第一字线WLL1的第一和第二字线单元组WLCG1、WLCG2是编程操作的选定字线单元组WLCG1(S)、WLCG2(S),并且耦接到第二字线WLL2的第一和第二字线单元组WLCG1、WLCG2是编程操作的未选字线组WLCG1(U)、WLCG2(U)。图16将耦接到第一字线WLL1的存储器单元MC示出为选定存储器单元MC(S),并且将耦接到第二字线WLL2的存储器单元MC示出为未选存储器单元MC(U)。

此外,与参考图12和图13所述的编程操作截然不同,由于仅第一字线WLL1耦接到选定存储器单元MC(S),故第一字线WLL1是被配置为生成选定字线电压VWLL1(S)的选定字线WLL1(S),并且第二字线WLL2仅耦接到未选存储器单元MC(U),因此是被配置为生成未选字线电压VWLL2(U)的未选字线WLL2(U)。

此外,由于第一和第二SGD线SGD1、SGD2两者在编程操作的交错编程-验证回路期间对选定存储器单元MC(S)进行编程启用和验证启用,因此第一和第二SGD线SGD1、SGD2均是编程操作的选定SGD线SGD1(S)、SGD2(S),每个选定SGD线被配置为生成相应选定SGD线电压VSGD1(S)、VSGD2(S)。另外,图16示出了被配置为生成相应SGD线和源极线电压VSGDL、VSL的SGD线SGDL和源极线SL。

图17是编程电压的电压波形的时序图,这些编程电压在交错编程-验证回路期间施加到块1600的控制栅极线和源极线SL或在所述控制栅极线和源极线上生成以对与选定第一字线WLL1(S)耦接的选定第一和第二字线单元组WLCG1(S)、WLCG2(S)的选定存储器单元MC(S)进行编程。图17中的交错编程-验证回路被示出为包括两个编程阶段,包括对选定第一字线单元组WLCG1(S)的选定存储器单元MC(S)进行编程的第一编程阶段,以及对选定第二字线单元组WLCG2(S)的选定存储器单元MC(S)进行编程的第二编程阶段。第一和第二编程阶段可形成一系列或一对编程阶段。此外,图17中的交错编程-验证回路包括两个验证阶段,包括对选定第一字线单元组WLCG1(S)的选定存储器单元MC(S)进行验证的第一验证阶段,以及对选定第二字线单元组WLCG2(S)的选定存储器单元MC(S)进行验证的第二验证阶段。第一和第二验证阶段可形成一系列或一对验证阶段。

为了对不同选定字线单元组WLCG1(S)、WLCG2(S)的两组选定存储器单元MC(S)进行编程,编程电路600可交替地将选定SGD线SGD1(S)、SGD2(S)配置为选定和未选SGD线以便交替地启用和禁止字线单元组WLCG1(S)、WLCG2(S)的选定存储器单元。即,为了首先对第一字线单元组WLCG1(S)的选定存储器单元MC(S)进行编程、其次接着对第二字线单元组WLCG2(S)的选定存储器单元MC(S)进行编程,编程电路600可在第一编程阶段期间将选定第一SGD线SGD1(S)配置为选定SGD线以对选定第一字线单元组WLCG1(S)的选定存储器单元MC(S)进行编程启用,并且将选定第二SGD线SGD2(S)配置为未选SGD线以对选定第二字线单元组WLCG2(S)的选定存储器单元MC(S)进行编程禁止。然后,在第二编程阶段期间,编程电路600可将选定第二SGD线SGD2(S)配置为选定SGD线以对选定第二字线单元组WLCG2(S)的选定存储器单元MC(S)进行编程启用,并且将选定第一SGD线WLL1(S)配置为未选SGD线以便对选定第一字线单元组WLCG2(S)的选定存储器单元MC(S)进行编程禁止。

因此,如图17所示,在第一编程阶段期间,控制栅极线电压供电电路606将编程脉冲施加到选定第一字线WLL1(S),同时将编程选定SGD水平VPSSGD下的选定SGD电压施加到选定第一SGD线SGD1并且将编程未选SGD水平VPUSGD下的未选SGD电压施加到选定第二SGD线SGD2。作为响应,在第一编程阶段期间,选定第一字线WLL1(S)通过使其字线电压VWLL1(S)斜升到编程脉冲水平VPGM来生成编程脉冲,选定第一SGD线SGD1(S)在编程选定SGD水平VPSSGD下生成其选定SGD线电压VSGD1(S),并且选定第二SGD线SGD2(S)在编程未选SGD水平VPUSGD下生成其选定SGD线电压VSGD2(S)。继而,选定第一字线单元组WLCG1(S)的选定存储器单元MC(S)(至少耦接到选定位线的那些)将通过升高其阈值电压来对编程脉冲作出响应,同时防止选定第二字线单元组WLCG2(S)的选定存储器单元MC(S)(特别是耦接到选定位线的那些)对编程脉冲作出响应。在第一编程阶段结束或将近结束时,选定第一字线WLL1(S)可使其电压VWLL1(S)斜降到初始水平以离开第一编程阶段并进入第二编程阶段。

在第二编程阶段期间,控制栅极线电压供电电路606将另一个或第二编程脉冲施加到选定第一字线WLL1(S),并且颠倒其向选定第一和第二SGD线SGD1(S)、SGD2(S)施加的选定和未选电压,从而将编程选定SGD水平VPSSGD下的选定SGD线电压施加到选定第二SGD线SGD2(S),同时将编程未选SGD水平VPUSGD下的未选SGD线电压施加到选定第一SGD线WLL1(S)。作为响应,在第二编程阶段期间,选定字线WLL1(S)通过再次使其字线电压VWLL1(S)斜升到编程脉冲水平VPGM来生成编程脉冲,选定第二SGD线SGD2(S)在编程选定SGD水平VPSSGD下生成其选定SGD线电压VSGD2(S),并且选定第一SGD线SGD1(S)在编程未选SGD水平VPUSGD下生成其选定SGD线电压VSGD1(S)。继而,选定第二字线单元组WLCG2(S)的选定存储器单元MC(S)(至少耦接到选定位线的那些)将通过升高其阈值电压来对编程脉冲作出响应,同时防止选定第一字线单元组WLCG1(S)的选定存储器单元MC(S)(特别是耦接到选定位线的那些)对编程脉冲作出响应。

此外,如图17所示,块1200的未选字线(包括未选第二字线WLL2(U))通过以下方式生成相应未选字线电压VWLL(U-):在第一和第二编程阶段中的每一者开始时使其相应未选字线电压VWLL(U)从初始水平斜升到编程未选字线水平VPUW(或VPASS),然后在第一和第二编程阶段中的每一者结束或将近结束时使其相应未选字线电压VWLL(U)从编程未选字线水平VPUW(或VPASS)斜降到初始水平。另外,SGS线和源极线SL可被配置为最初在第一编程阶段开始时使其电压斜升到相应编程水平,然后在第一和第二编程阶段的过程中保持其电压处于相应编程水平—即,并不先斜降再往回斜升以从第一编程阶段转变到第二编程阶段。具体地讲,SGS线SGSL在第一和第二编程阶段的过程中保持其电压VSGSL处于编程SGS水平VPSGS,并且源极线SL保持其电压VSL处于编程源极线水平VPSL。

另外,位线电压供电电路608可将编程选定和未选位线电压施加到选定和未选位线以便在第一和第二阶段期间基于其相应编程状态对各种选定存储器单元进行编程启用和编程禁止。图17示出了在两个编程阶段内生成的两个电压波形,包括示出向选定位线施加的编程选定位线水平VPSB下的选定位线电压的第一电压波形(由虚线表示),以及示出向未选位线施加的编程未选位线水平VPUB下的未选位线电压的第二电压波形(由实线表示)。在具体示例性配置中,如图17所示,位线电压供电电路608可使未选位线电压VBL(U)在第一编程阶段结束或将近结束时从编程未选位线水平VPUB斜降到初始水平,然后在第二编程阶段开始时往回斜升到编程未选位线水平VPUB。在其他示例性配置中,位线电压供电电路608可在第一和第二编程阶段的过程中或持续时间内保持未选位线电压VBL(U)处于编程未选位线水平VPUB—即,并不先斜降再往回斜升。

如图17所示,在第二编程阶段结束或将近结束时,编程电路600可进入或转变成第一验证阶段以对选定第一字单元组WLCG1(S)的选定存储器单元进行验证。编程电路600可通过使控制栅极线和源极线电压转变到验证或感测水平来实现这一点。

在图17所示的示例性交错编程-验证回路中,为了对与第一字线WLL1(S)耦接的不同选定字线单元组WLCG1(S)、WLCG2(S)的两组选定存储器单元MC(S)进行验证,编程电路600可交替地将选定SGD线SGD1(S)、SGD2(S)配置为选定和未选SGD线。即,为了首先对第一字线单元组WLCG1(S)的选定存储器单元MC(S)进行验证、其次接着对第二字线单元组WLCG2(S)的选定存储器单元MC(S)进行验证,编程电路600可在第一验证阶段期间将选定第一SGD线SGD1(S)配置为选定SGD线并且将选定第二SGD线SGD2(S)配置为未选SGD线。然后,在第二验证阶段期间,编程电路600可将选定第二SGD线SGD2(S)配置为选定SGD线并且将选定第一SGD线SGD1(S)配置为未选SGD线。

因此,如图17所示,在第一验证阶段期间,控制栅极线电压供电电路606将验证脉冲系列或序列施加到选定第一字线WLL1(S),同时将验证或感测选定SGD水平VPSSGD下的选定SGD电压施加到选定第一SGD线SGD1且同时将验证或感测未选SGD水平VPUSGD下的未选SGD电压施加到选定第二SGD线SGD2。作为响应,在第一验证阶段期间,选定第一字线WLL1(S)通过以下方式生成验证脉冲序列:根据与第一验证阶段相关联的验证顺序在验证脉冲电压水平Vv序列下生成其字线电压VWLL1(S)。在选定第一字线WLL1(S)生成验证脉冲序列时,选定第一SGD线SGD1(S)在编程选定SGD水平VPSSGD(或选择栅极水平VSG)下生成其SGD线电压VSGD1(S),并且选定第二SGD线SGD2(S)在验证或感测未选SGD水平VPUSGD下生成其SGD线电压VSGD2(S)。继而,选定第一字线单元组WLCG1(S)的选定存储器单元MC(S)(至少耦接到选定位线的那些)为验证启用的并且编程电路600感测其编程状态,同时选定第二字线单元组WLCG2(S)的选定存储器单元MC(S)(特别是耦接到选定位线的那些)为验证禁止的并且被防止对其编程状态进行验证。

在第二验证阶段期间,控制栅极线电压供电电路606颠倒其向选定第一和第二SGD线SGD1(S)、SGD2(S)施加的选定和未选电压。因此,在第二验证阶段期间,控制栅极线电压供电电路606将另一个验证脉冲系列或序列施加到选定第一字线WLL1(S),同时将验证或感测选定SGD水平VPSSGD下的选定SGD电压施加到选定第二SGD线SGD2且同时将验证或感测未选SGD水平VPUSGD下的未选SGD电压施加到选定第一SGD线SGD1。作为响应,在第二验证阶段期间,选定第一字线WLL1(S)通过以下方式生成另一个验证脉冲序列:根据与第二验证阶段相关联的验证顺序在验证脉冲电压水平Vv序列下生成其字线电压VWLL1(S)。在选定第一字线WLL1(S)生成验证脉冲序列时,选定第二SGD线SGD2(S)在编程选定SGD水平VPSSGD(或选择栅极水平VSG)下生成其SGD线电压VSGD2(S),并且选定第一SGD线SGD1(S)在验证或感测未选SGD水平VPUSGD下生成其SGD线电压VSGD1(S)。继而,选定第二字线单元组WLCG2(S)的选定存储器单元MC(S)(至少耦接到选定位线的那些)为验证启用的并且编程电路600感测其编程状态,同时选定第一字线单元组WLCG1(S)的选定存储器单元MC(S)(特别是耦接到选定位线的那些)为验证禁止的并且被防止对其编程状态进行验证。

如图17所示,为了执行第一和第二验证阶段,控制栅极线电压供电电路606将验证脉冲以连续递增和递减验证顺序施加到选定字线WLL1(S)、WLL2(S)。如本文所用,递增验证顺序是识别逐渐升高的存储器状态的验证顺序。如前所述,第一存储器状态高于第二存储器状态,其中第一存储器状态与比与第二存储器状态相关联的阈值电压范围更高的阈值电压范围相关联。为了根据递增验证顺序来执行验证阶段,编程电路600接下来将在验证阶段中执行的每个下一验证子阶段与比与编程电路600当前执行的当前验证子阶段相关联的存储器状态和/或阈值电压范围更高的存储器状态和/或更低的阈值电压范围相关联。

此外,递增验证顺序和递减验证顺序是彼此颠倒的验证顺序。如本文所用,颠倒的验证顺序是在相反方向上识别存储器状态的顺序的验证顺序。递增验证顺序识别与逐渐升高的存储器状态和/或相关阈值电压范围相关联的验证子阶段的进度,而递减验证顺序识别与逐渐降低的存储器状态和/或相关阈值电压范围相关联的验证子阶段的进度。由于逐渐升高和逐渐降低的存储器状态对应于存储器状态的相反高和低方向,因此递增和递减验证顺序是颠倒的验证顺序。以颠倒的验证顺序连续地执行验证阶段的验证控制电路可通过以下方式执行连续验证阶段:首先根据递增验证顺序执行验证阶段,然后根据递减验证顺序执行第二验证阶段,或者首先根据递减验证顺序执行验证阶段,然后根据递增验证顺序执行第二验证阶段。

与参考图13所述的示例性交错编程-验证回路类似,执行图17中描绘的示例性交错编程-验证回路以对被编程为存储每单元两位的存储器单元进行验证—即,每个选定存储器单元可具有擦除状态、存储器状态A、存储器状态B或存储器状态C作为其目标存储器状态。因此,编程电路600可通过以下方式按每单元两位的存储方案根据递增验证顺序执行验证阶段:执行存储器状态A的第一验证子阶段,之后执行存储器状态B的第二验证子阶段,然后执行存储器状态C的第三验证子阶段。

因此,为了根据连续递增和递减验证顺序来执行第一和第二验证阶段,控制栅极线电压供电电路606根据递增验证顺序来施加验证脉冲序列以使得选定第一字线WLL1(S)在第一验证阶段期间在循序升高的验证脉冲水平下生成其选定字线电压VWLL1(S)。然后,在第二验证阶段期间,控制栅极线电压供电电路606根据递减验证顺序来施加验证脉冲序列以使得选定第一字线WLL1(S)在循序降低的验证脉冲水平下生成其选定字线电压VWLL1(S)。然而,在其他示例性实施方案中,编程电路600可根据递增验证顺序来执行第二验证顺序,其中控制栅极线电压供电电路606根据递增验证顺序来施加验证脉冲序列。

根据图17所示的每单元两位的存储方案,控制栅极线电压供电电路606向选定第一字线WLL1(S)提供验证脉冲以使得选定第一字线WLL1(S)在第一验证阶段的存储器状态A、B和C的对应三个验证子阶段中的每一者期间在循序升高的验证脉冲水平VvA、VvB和VvC下生成其选定字线电压VWLL1(S)。然后,在第二验证阶段期间,控制栅极线电压供电电路606向选定第一字线WLL1(S)提供验证脉冲以使得选定第一字线WLL1(S)在第二验证阶段的存储器状态C、B和A的对应三个验证子阶段中的每一者期间在循序降低的验证脉冲水平VvC、VvB和VvA下生成其选定字线电压VWLL1(S)

根据连续递增和递减验证顺序来执行第一和第二验证阶段可比根据连续递增验证顺序来执行第一和第二验证阶段更有效,因为选定第一字线WLL1(S)的字线电压VWLL1(S)在第一验证阶段开始时已处于初始电压水平(例如,接地参考电压水平0V)。因此,控制栅极线电压供电电路606、继而选定第一字线水平WLL1(S)可使选定第一字线WLL1(S)上的选定字线电压VWLL1(S)从初始水平转变到最低验证脉冲水平(在该示例中为与存储器状态A相关联的验证脉冲水平VvA),该转变速度快于其可使选定字线电压VWLL1(S)从0V的初始水平电压水平转变到高于最低验证脉冲水平的任何其他验证脉冲水平—例如,每单元两位的存储方案的验证脉冲水平VvB或VvC。

相似地,根据递减验证顺序来执行第二验证阶段可比根据递增验证顺序来执行第二验证阶段更有效,因为选定第一字线WLL1(S)的字线电压VWLL1(S)在第一验证阶段结束时已处于与存储器状态C相关联的验证脉冲水平VvC。因此,控制栅极线电压供电电路606、继而选定第一字线水平WLL1(S)可保持选定第一字线WLL1(S)上的选定字线电压VWLL1(S)处于与存储器状态C相关联的验证脉冲水平VvC以开始第二验证阶段,因此与控制栅极线电压供电电路606使选定字线电压VWLL1(S)转变到不同验证脉冲水平(例如,每单元两位的存储方案的验证脉冲水平VvA或VvB)的情况相比可更快地开始第二验证阶段的初始验证子阶段。

此外,除了选定字线WLL1(S)及选定第一和第二SGD线SGD1(S)、SGD2(S)之外,其他控制栅极线和源极线SL可被配置为最初在第一验证阶段开始时使其电压斜升到相应验证或感测水平,然后在第一和第二验证阶段的过程中保持其电压处于其相应验证或感测水平—即,并不先斜降再往回斜升以从第一验证阶段转变到第二验证阶段。具体地讲,该块的未选字线(包括图16中的第二字线WLL2(U))在第一和第二验证阶段的过程中保持其相应未选字线电压VWLL(U)处于验证或感测未选字线水平VSUW(或VREAD),SGS线SGSL保持其电压VSGSL处于感测SGS水平VSSGS,并且源极线SL保持其电压VSL处于感测源极线水平VPSL。

另外,对于一些示例性配置,如图17所示,位线电压供电电路608可将验证或感测选定位线水平VSSB(或VBLC)下的选定位线电压施加到与该块的选定存储器单元耦接的所有位线。为了在图17中举例说明,描绘选定和未选位线电压的两个电压波形在第一验证阶段开始时合并成感测选定位线水平VSSB下的单个电压波形。因此,在第一验证阶段开始时,位线电压供电电路608使选定位线电压从初始水平斜升到感测选定位线水平VSSB,并且将感测选定位线水平VSSB下的选定位线电压施加到位线BL。位线电压供电电路608在第一和第二验证阶段的过程中或持续时间内保持选定位线电压处于感测选定位线水平VSSB,即,在第一和第二验证阶段之间转变时并不先使位线电压斜降再往回斜升。

在第二验证阶段结束时,电压供电电路604可使控制栅极线和供电线电压从其验证或感测水平斜降到初始水平。假定仍存在需要加以编程的不充分编程的存储器单元,则编程电路600可随后转变到下一交错编程-验证回路。

图18示出了根据交错编程-验证回路对耦接到字线的存储器单元进行编程的示例性方法1800的流程图。在块1802处,编程控制器622可识别要将数据编程到其中的块的字线。编程控制器622可将这些字线识别为利用交错编程-验证回路的编程操作的选定字线,这类似于作为参考图16和图17所述的编程操作的选定字线的第一字线WLL1(S)。

在块1804处,编程控制器622可识别未编程字线单元组集合以在编程操作中编程。该未编程字线单元组集合可耦接到编程控制器622在块1802处识别的字线。编程控制器622可识别其在块1804中识别的那些字线单元组具有编程操作的选定字线单元组。

在块1806处,编程电路600可根据参考图16和图17所述的交错编程-验证回路,通过执行交错编程-验证回路来执行编程操作以对该选定字线单元组集合进行编程。在编程电路600已在块1806处对该选定字线单元组集合的存储器单元进行充分编程之后,编程控制器622可确定是否存在与该选定字线耦接的未编程字线单元组的任何其他集合。未编程字线单元组的另一个集合可属于该块的不同子块。如果编程控制器622确定存在与选定字线耦接的未编程字线单元组的另一个集合,则方法1800可回到块1806,在此处编程电路600执行另一个编程操作以对编程控制器622在块1806处识别的该未编程字线单元组集合进行编程。另选地,如果编程控制器622未确定存在与该字线组耦接的未编程字线单元组的另一个集合,则编程方法1800可结束。

编程电路600可按各种方式中的任何一种方式根据参考图16至图18所述的交错编程-验证回路对块进行编程。对于至少一些示例性配置,编程电路600按照一次一个字线的方式对存储器单元进行编程。即,在编程电路600对与块的第一字线耦接的字线单元组进行编程的情况下,编程电路600直到已对第一字线的所有字线单元组进行编程,才对耦接到不同字线的字线单元组进行编程。为了举例说明,假定每个字线耦接到四个字线单元组,并且进一步假定编程电路600对两个字线单元组执行编程操作。因此,编程电路600利用交错编程-验证回路来执行两个编程操作以对耦接到字线的四个字线单元组进行编程。编程电路600直到已利用交错编程-验证回路来执行两个编程操作以对耦接到当前字线的四个字线单元组进行编程,才从对耦接到当前字线的存储器单元进行编程转变到对耦接到下一字线的存储器单元进行编程。

此外,编程电路600可根据参考图16至图18所述的交错编程-验证回路,并进一步根据识别要对块的存储器单元进行编程的序列或顺序的字线序列或顺序,来对该块进行编程。在具体示例性配置中,字线顺序在字线高度中逐步增加,从该块的最低字线开始并且以该块的最高字线结束。

不论是图12至图14的交错编程-验证回路(位于单独字线上但处于公共子块中的存储器单元组)还是图16至图18的实施方案(位于相同字线上但处于不同子块中的存储器单元组),都可在每个存储器单元组的编程阶段和验证阶段之间实现延迟,而不会在组合存储器单元组的编程-验证回路的总执行中引入延迟。在第二验证阶段完结时,在任一实施方案中,为对两组存储器单元进行编程和验证而执行的交错编程-验证回路将已利用第二组存储器单元的居间第二编程阶段在第一组存储器单元的第一编程阶段和第一验证阶段之间引入延迟。第二组存储器单元的第二编程阶段和第二验证阶段之间的延迟也将已通过第一组存储器单元上的居间第一验证阶段来实现。不同组存储器单元的编程阶段和验证阶段之间的延迟,引申而言先前编程-验证回路的验证阶段和下一编程-验证回路的后续编程阶段之间的延迟,可例如通过以下方式提供改善的短期数据保留(STDR):潜在地收紧这些单元中的不同存储器状态的阈值电压分布并且降低位出错率,同时潜在地改善擦除状态Er和相邻第一编程状态(例如,存储器状态A)之间的电荷分布。

在各种实施方案中,用于确定使两个编程-验证回路交错的序列的装置可包括控制逻辑电路154、编程电路600、编程控制器622、交错控制电路630等。其他实施方案可包括用于确定使两个编程-验证回路交错的序列的类似或等同装置。

在各种实施方案中,用于根据序列向块的第一存储器单元施加第一编程脉冲的装置可包括由控制逻辑电路154加以控制的功率控制电路160、编程电路600、编程控制器622、编程控制电路624、由编程控制器622和/或编程控制电路624加以控制的控制栅极线电压供电电路606等。其他实施方案可包括用于根据序列向块的第一存储器单元施加第一编程脉冲的类似或等同装置。

在各种实施方案中,在施加第一编程脉冲之后且在施加验证脉冲之前向该块的第二存储器单元施加第二编程脉冲的装置可包括由控制逻辑电路154加以控制的功率控制电路160、编程电路600、编程控制器622、编程控制电路624、由编程控制器622和/或编程控制电路624加以控制的控制栅极线电压供电电路606等。

在各种实施方案中,用于在施加第二编程脉冲之后向第一存储器单元施加验证脉冲的装置可包括由控制逻辑电路154加以控制的功率控制电路160、编程电路600、编程控制器622、编程控制电路624、由编程控制器622和/或编程控制电路624加以控制的控制栅极线电压供电电路606等。

预期将前面的详细描述理解为本发明可以采用的选定形式的说明,而不是作为本发明的定义。预期只有以下权利要求(包括所有等同物)限定要求保护的本发明的范围。最后,应当指出的是,本文所述的任何优选实施方案的任何方面均可单独使用或彼此组合使用。

99页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:高效执行生物测定的系统和方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!