CN102714055B - 通过基于感测的位线补偿对存储器编程以减少沟道到浮栅的耦合 - Google Patents

通过基于感测的位线补偿对存储器编程以减少沟道到浮栅的耦合 Download PDF

Info

Publication number
CN102714055B
CN102714055B CN201080062255.0A CN201080062255A CN102714055B CN 102714055 B CN102714055 B CN 102714055B CN 201080062255 A CN201080062255 A CN 201080062255A CN 102714055 B CN102714055 B CN 102714055B
Authority
CN
China
Prior art keywords
bit line
memory element
voltage
level
coupled
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201080062255.0A
Other languages
English (en)
Other versions
CN102714055A (zh
Inventor
李艳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Delphi International Operations Luxembourg SARL
Original Assignee
SanDisk Technologies LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SanDisk Technologies LLC filed Critical SanDisk Technologies LLC
Publication of CN102714055A publication Critical patent/CN102714055A/zh
Application granted granted Critical
Publication of CN102714055B publication Critical patent/CN102714055B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5628Programming or writing circuits; Data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5642Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3418Disturbance prevention or evaluation; Refreshing of disturbed memory data
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3418Disturbance prevention or evaluation; Refreshing of disturbed memory data
    • G11C16/3427Circuits or methods to prevent or reduce disturbance of the state of a memory cell when neighbouring cells are read or written
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3436Arrangements for verifying correct programming or erasure
    • G11C16/3454Arrangements for verifying correct programming or for detecting overprogrammed cells
    • G11C16/3459Circuits or methods to verify correct programming of nonvolatile memory cells

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Hardware Design (AREA)
  • Read Only Memory (AREA)
  • Semiconductor Memories (AREA)

Abstract

在存储元件的编程期间,对沟道到浮栅的耦合效应进行补偿以避免增加的编程速度和阈值电压分布扩宽。结合编程迭代,使未选择的位线的电压逐步升高以引入对所选择的位线的耦合,并且感测由所选择的位线体验的耦合量。当施加编程脉冲时,基于耦合量设定所选择的位线的电压。当感测到较大的耦合时,位线电压被设定为较高。给定的所选择的位线体验的耦合量是其与未选择的位线的接近度的函数。可以使用一个或更多个耦合阈值来分别指示给定的所选择的位线具有一个或两个相邻的未选择的位线。

Description

通过基于感测的位线补偿对存储器编程以减少沟道到浮栅的耦合
背景技术
本技术涉及非易失性存储器。
半导体存储器已越来越普遍地用在各种电子装置中。例如,非易失性半导体存储器用在蜂窝电话、数字相机、个人数字助理、移动计算装置、非移动计算装置和其他装置中。电可擦除可编程只读存储器(EEPROM)和闪速存储器是最普遍的非易失性半导体存储器之一。与传统的全功能EEPROM相比,也是一类EEPROM的闪速存储器的整个存储器阵列或者存储器的一部分的内容可以在一个步骤中擦除。
传统的EEPROM和闪速存储器两者均利用置于半导体衬底中的沟道区域上方并且与其绝缘的浮栅。浮栅被置于源极和漏极区域之间。控制栅极设置在浮栅上并且与其绝缘。这样形成的晶体管的阈值电压(Vth)由浮栅上保存的电荷量控制。就是说,在晶体管接通以允许晶体管的源极和漏极之间导通之前必须施加到控制栅极的最小电压量由浮栅上的电荷水平控制。
一些EEPROM和闪速存储器装置具有带有浮栅的存储元件或单元,浮栅用于存储两个范围的电荷,并且因此该存储元件可以在两个状态之间,例如在擦除状态和编程状态之间编程/擦除。该闪速存储器装置有时被称为二进制闪速存储器装置,因为每个存储元件可以存储一位数据。
通过识别多个不同的允许/有效编程阈值电压范围,实现了多状态(还被称为多电平)闪速存储器装置。每个不同的阈值电压范围与存储器装置中编码的数据位集合的预定值对应。例如,当每个存储元件可以处于与四个不同的阈值电压范围对应的四个不同的电荷带中的一个中时,可以存储两位数据。
典型地,在编程操作期间施加到控制栅极的编程电压或脉冲Vpgm被作为一系列幅值随时间增加的脉冲而施加。可以将编程电压施加到所选择的字线。在一种可能的方法中,对于每个连续的脉冲,脉冲的幅值按例如0.2-0.4V的预定的步长尺寸增加。可以将Vpgm施加到闪速存储器元件的控制栅极。在编程脉冲之间的时段中,执行验证操作。就是说,在连续的编程脉冲之间读取正被并行编程的存储元件组的每个元件的编程电平以确定其是否等于或大于元件正在被编程到的验证电平。对于多状态闪速存储器元件的阵列,可以针对元件的每个状态执行验证步骤以确定元件是否达到其数据关联验证电平。例如,能够以四个状态存储数据的多状态存储器元件可能需要对三个比较点执行验证操作。
此外,当对诸如NAND(与非)串中的NAND闪速存储器装置的EEPROM或闪速存储器装置进行编程时,典型地将Vpgm施加到控制栅极并且将位线接地,使来自存储元件的沟道的电子被注入到浮栅中。当电子在浮栅中积累时,浮栅变为被负向充电并且存储元件的阈值电压升高,使得认为其处于编程状态。
然而,随着存储器装置变小,编程期间的电容耦合效应越来越成问题。
附图说明
图1a是NAND串的俯视图。
图1b是NAND串的等效电路图。
图2是NAND串的横截面视图。
图3是示出三个NAND串的电路图。
图4是NAND闪速存储元件的阵列的框图。
图5是使用单行/列解码器和读/写电路的非易失性存储器系统的框图。
图6是示出感测块的一个实施例的框图。
图7a示出了阈值电压分布的示例集合,包括因耦合效应引起的扩宽的分布。
图7b示出了阈值电压分布的示例集合以及两轮回(two-pass)编程。
图8示出了在编程操作期间施加到所选择的字线的一系列编程和验证脉冲。
图9示出了用于存储元件集合的多轮回(multi-pass)编程操作。
图10a示出了NAND串的横截面视图,其示出了沟道到浮栅的耦合和浮栅到浮栅的耦合。
图10b示出了从未选择的位线到所选择的位线的耦合。
图11a示出了使用偏移和目标验证电平、并且减少耦合效应的示例编程技术。
图11b示出了仅使用一个编程速度模式以及每个状态的一个验证电平、并且减少耦合效应的示例编程技术。
图11c示出了与图11a和11b相关的示例编程处理。
图11d示出了用于各个位线的数据锁存器。
图11e示出了关于图11d的锁存器的位分配。
图12示出了关于没有补偿的快编程模式、具有补偿的慢编程模式以及闭锁/禁用条件的数据状态的阈值电压范围。
图13示出了用于对非易失性存储元件的集合编程的方法,其中使用两个驱动电压逐步升高禁用位线的电压以将补偿引入到与邻近位线的耦合。
图14示出了用于与图13的处理一起使用的感测电路,其中针对禁用位线使用驱动电压。
图15示出了与图14的感测电路相关联的时间线。
图16a示出了替选的感测电路。
图16b示出了与图16a的感测电路相关联的用于编程的时间线。
图17a示出了用于感测所选择的位线以确定在后继编程中是否需要耦合补偿的方法。
图17b示出了与图16a的感测电路相关联的用于感测和编程的时间线。
图17c示出了与图16a的感测电路相关联的用于感测的时间线。
图17d示出了与图16a的感测电路相关联的用于感测的另一时间线。
图18a示出了另一替选感测电路。
图18b示出了与图18a的感测电路相关联的用于感测和编程的时间线。
具体实施方式
提供了一种方法和非易失性存储系统,其中在编程期间减少包括沟道到浮栅的电容耦合的耦合效应。
随着存储器装置变小,电容耦合效应变得更加成问题的。特别地,在编程期间,通过在来自块中的所有字线和浮动沟道的帮助下经由升压来升高相关联的衬底沟道区域的沟道电位,禁用已经完成编程的存储元件(还被称为未选择的、闭锁的或禁用的存储元件)。浮动沟道通过来自增加的位线电压(Vbl)的调制来实现。然而,这种增加的沟道电位可以耦合到附近的仍在编程的存储元件(还被称为所选择的存储元件)的浮栅,无意地升高了浮栅的电位。这被称为沟道到浮栅的电容耦合。结果,编程速度可以增加到超过所选择的存储元件的期望水平,并且它们的阈值电压(Vth)分布被扩宽。
通过控制被设定成处于快或慢编程模式的存储元件能够体验这种增加的编程速度。典型地,当存储元件的Vth远离目标Vth时,(与所选择的存储元件相关联的)所选择的位线的Vbl保持在0V以提供快编程模式。随后,当存储元件的Vth接近目标Vth时,通过将Vbl升高到约0.6-0.8V以减慢但是未完全禁用编程,来使用慢编程模式。
一种避免这种耦合的方法是允许所选择的存储元件的位线浮动。然而这不允许使用慢编程模式,其中Vbl需要处于指定的非零电平。这里提供的各种解决方案提供了以最优的方式驱动位线和/或使位线浮动的感测电路和编程技术。
在一种方法中,在不需要额外的验证操作以及控制实现的快或慢编程模式的情况下提供了编程减慢。作为替代,可以使用一个状态的目标验证电平来减慢所选择的存储元件的编程,其中正在通过使所选择的存储元件的位线浮动来将所选择的存储元件编程到下一较高的状态。作为传到沟道的Vbl的沟道电位由于来自(与未选择的存储元件相关联的)未选择的邻近位线的逐步升压的耦合而增加,从而减慢编程速度。当存在较大的位线到位线耦合时,该方法自动地并且自适应地更加减慢,并且用作由于沟道到浮栅的耦合引起的沟道电位增加的对策。
在另一方法中,对于处于慢编程模式的所选择的存储元件,补偿沟道到浮栅的电容耦合。在该方法中,利用逐步升高的电压驱动未选择的位线,逐步升高其耦合到所选择的位线并且被传输到相关联的沟道。由Vbl确定的沟道电位可以在0.8至1.2V的范围内,这高于它们先前的位线偏置,从而补偿所选择的存储元件的较高的浮栅电位。结果,在预期的慢速度下对所选择的存储元件执行慢编程模式,不存在在没有该补偿的情况下将另外体验的任何加速。可以在快编程模式中为所选择的存储元件提供相似的补偿,其中所选择的存储元件的沟道在最初时接地,随后由于位线耦合而被偏置,使得在预期的快速度下执行编程,不存在在没有该补偿的情况下将另外体验的任何加速。但是对处于快编程模式中的所选择的存储元件的补偿较之慢编程模式的存储元件通常不太关键。这种方法和其他方法的变化涉及相对于将通过电压施加到字线的时间的将Vbl传递到沟道的定时。也可以使用于调整漏极选择栅极电压的定时最优化。
在另一方法中,作为编程操作的一部分,执行感测操作以确定所选择的存储元件(及其位线,被称为所选择的位线)是否与一个或更多个未选择的存储元件(及其位线,被称为未选择的位线)相邻。未选择的位线是与所选择的字线上的未选择的存储元件相关联的位线。所选择的位线是与所选择的字线上的所选择的存储元件相关联的位线。当所选择的存储元件与一个或两个经历沟道升压的未选择的存储元件相邻时,从未选择的存储元件的沟道到同一字线上的所选择的存储元件的浮栅的沟道到浮栅的耦合是最强的。感测可用于确定该情形存在的时间,以在需要时提供适当的补偿,并且在不需要时不提供补偿。
在另一方法中,经由所选择的存储元件的位线将补偿电压单独地或者与慢编程模式偏置组合地直接提供给所选择的存储元件的沟道。
适当的存储器系统的一个示例使用NAND闪速存储器结构,其将多个晶体管串联布置在两个选择栅极之间。串联的晶体管和选择栅极被称为NAND串。图1a是示出一个NAND串90的俯视图。图1b是其等效电路。所示出的NAND串包括串联的四个晶体管100、102、104和106,它们夹在第一选择栅极120和第二选择栅极122之间。选择栅极120将NAND串连接到位线126。选择栅极122将NAND串连接到源极线128。通过向控制栅极120CG和122CG施加适当的电压来分别控制选择栅极120和122。每个晶体管100、102、104和106具有控制栅极和浮栅。晶体管100具有控制栅极100CG和浮栅100FG。晶体管102具有控制栅极102CG和浮栅102FG。晶体管104具有控制栅极104CG和浮栅104FG。晶体管106具有控制栅极106CG和浮栅106FG。控制栅极100CG、102CG、104CG和106CG分别连接到字线WL3、WL2、WL1和WL0。在一个实施例中,晶体管100、102、104和106均是存储器单元。在其他实施例中,存储器单元可以包括多个晶体管或者可以与所示出情况不同。选择栅极120和122分别连接到漏极侧选择线SGD和源极侧选择线SGS。
图2提供了上述NAND串的横截面视图。NAND串的晶体管在p阱区域140中形成。P阱区域接着可以位于p型衬底144的n阱区域142内。每个晶体管包括堆叠的栅极结构,其包括控制栅极(100CG、102CG、104CG和106CG)和浮栅(100FG、102FG、104FG和106FG)。浮栅在位于氧化物或其他介电膜上面的p阱的表面上形成。控制栅极位于浮栅上方,层间多晶硅介电层将控制栅极和浮栅隔开。存储器单元(100、102、104和106)的控制栅极形成字线。N+掺杂层或区域130、132、134、136和138由邻近的单元共享,由此各单元彼此串联连接以形成NAND串。这些N+掺杂层形成了每个单元的源极和漏极。例如,N+掺杂层130用作晶体管122的漏极和晶体管106的源极,N+掺杂层132用作晶体管106的漏极和晶体管104的源极,N+掺杂层134用作晶体管104的漏极和晶体管102的源极,N+掺杂层136用作晶体管102的漏极和晶体管100的源极,并且N+掺杂层138用作晶体管100的漏极和晶体管120的源极。N+掺杂层125连接到NAND串的位线126,而N+掺杂层128连接到多个NAND串的公共源极线。每个存储器单元可以在一个或更多个位中存储以模拟或数字形式表示的数据。
还可以使用除了NAND闪速存储器以外的其他类型的非易失性存储器。
作为编程操作的一部分,可以使与未选择的存储元件和例如未选择的NAND串90相关联的衬底的沟道区域的电位升压。未选择的存储元件或NAND串可以被称为禁用的或闭锁的存储元件或NAND串,因为其在编程操作的给定编程迭代中对于编程是禁用的或闭锁的。例如,当控制栅极和浮栅100CG/100FG、102CG/102FG、104CG/104FG和106CG/106FG提供的任何存储元件是编程操作中的未选择的存储元件时,例如当NAND串90是未选择的NAND串时,沟道区域141可以设置在衬底144的p阱140中。沟道区域141表示在掺杂区域130、132、134、136和138中和之间延伸的衬底中的传导路径。升压可以通过不同方式实现。例如,在将通过电压施加到未选择的字线之前进行的预充电操作中,位线126上提供的电压可以经由漏极侧选择栅极晶体管120CG传递到沟道141。
在一个可能的情形中,在漏极侧晶体管的控制栅极被偏置在Vdd+Vth时,其中Vdd是针对感测电路的供电电压并且Vth是漏极侧选择栅极晶体管的阈值电压,利用适当的Vbl,漏极侧选择栅极晶体管向沟道提供电压Vbl作为预充电电压。在控制栅极电压上升时,沟道升压到较高的电位。漏极侧选择栅极晶体管可以随后呈现为不传导,使得位线从沟道141切断,并且在沟道中维持升压电位。通过将通过电压施加到字线并且使沟道浮动,也可以实现沟道升压。通过电压耦合到沟道,使其电位升高。
图3是示出三个NAND串的电路图。使用NAND结构的闪速存储器系统的典型结构将包括若干个NAND串。例如,在具有许多个NAND串的存储器阵列中示出了三个NAND串320、340和360。每个NAND串包括两个选择栅极和四个存储元件。尽管为了简化示出了四个存储元件,但是现代的NAND串可以具有例如高达32个或64个存储元件。
例如,NAND串320包括选择栅极322和327以及存储元件323-326,NAND串340包括选择栅极342和347以及存储元件343-346,NAND串360包括选择栅极362和367以及存储元件363-366。每个NAND串通过其选择栅极(例如,选择栅极327、347或367)连接到源极线370。选择线SGS用于控制源极侧选择栅极。各个NAND串320、340和360分别通过选择栅极322、342、362中的漏极侧选择晶体管连接到各个位线321、341和361。这些选择晶体管由漏极选择线SGD控制。在其他实施例中,选择线不一定需要在NAND串之间共用;就是说,可以为不同的NAND串提供不同的选择线。可以在衬底中创建分别与NAND串320、340和360相关联的示例沟道区域329、330和331。注意,存储元件和沟道区域被示出为如同它们相对它们的实际位置旋转90度。
字线如下连接到存储元件的控制栅极:WL3(存储元件323、343和363)、WL2(存储元件324、344和364)、WL1(存储元件325、345和365)、以及WL0(存储元件326、346和366)。每个字线连接一行中的每个存储元件的控制栅极。或者,控制栅极可由字线自身提供。
当对闪速存储元件编程时,例如经由相关联的字线将编程电压施加到存储元件的控制栅极,并且与存储元件相关联的位线接地。来自沟道的电子被注入到浮栅中。当电子在浮栅中积累时,浮栅变为负向充电并且存储元件的Vth升高。
图4图示了诸如图1a和1b中所示的NAND存储元件的阵列400的示例。位线406沿每个列耦合到NAND串450的漏极侧选择栅极的漏极端子426。源极线404可以沿NAND串的每个行连接NAND串的源极选择栅极的所有源极端子428。
存储元件的阵列被分成大量的存储元件块。如对于闪速EEPROM系统常见的,块是擦除单位。就是说,每个块包含被一起擦除的最小数目的存储元件。每个块典型地被分成许多个页。页是编程的最小单位。一个或更多个数据页典型地存储在存储元件的一个行中。例如,行典型地包含若干个交错的页或者其可以构成一个页。页的所有存储元件将被一起读取或编程。大量的页形成块,从例如8个页直到32、64、128或更多个页不等。在一些实施例中,NAND串的行包括块。
示例感测电路410、412、414分别与位线406、407和408连通。感测电路分别与由一个或更多个电源405提供的为Vdd、Vdd-ΔV和Vcomp的电源线401、402和403连通。下文进一步描述了这些电压。感测电路还与一个或多个控制电路连通以交换控制信号和数据。
图5是使用单行/列解码器和读/写电路的非易失性存储器系统的框图。根据一个实施例,存储器装置596具有用于并行读取存储元件的页并且对其编程的读/写电路。存储器装置596可以包括一个或更多个存储器管芯598。存储器管芯598包括存储元件400的二维阵列、控制电路510和读/写电路565。在一些实施例中,存储元件的阵列可以是三维的。可以通过字线经由行解码器530以及通过位线经由列解码器560对存储器阵列400寻址。读/写电路565包括多个感测块500(典型地,每个感测块包括感测电路或感测放大器的集合,每个位线有一个这样的集合)并且允许并行地读取存储元件的页并且对其编程。下文更详细地描述了示例感测电路。典型的控制器550包括在与一个或更多个存储器管芯598相同的存储器装置596(例如,可移除存储卡)中。在主机和控制器550之间经由线路520并且在控制器和一个或更多个存储器管芯598之间经由线路518传输命令和数据。
控制电路510与读/写电路565协作以对存储器阵列400执行存储器操作。控制电路510包括状态机512、片上地址解码器514和功率控制模块516。状态机512提供对存储器操作的芯片级控制。片上地址解码器514提供主机或存储器控制器使用的硬件地址到解码器530和560使用的硬件地址之间的地址接口。功率控制模块516控制在存储器操作期间提供给字线和位线的功率和电压,并且可以包括图4的电源405。
在一些实现方案中,图5的一些部件可以组合。在各种设计中,除了存储元件阵列400以外的一个或更多个部件(单独地或组合地)可以被视为管理或控制电路。例如,一个或更多个管理或控制电路可以包括控制电路510、状态机512、解码器514/560、功率控制模块516、感测块500(包括下文进一步讨论的感测电路)、读/写电路565、控制器550等中的一个或组合。
在另一实施例中,非易失性存储器系统使用双行/列解码器和读/写电路。各个外围电路对存储器阵列400的访问在阵列的相对侧以对称方式实现。
图6是示出感测块的一个实施例的框图。单独的感测块500被分成核心部分(被称为感测模块580)和公共部分590。在一个实施例中,对于每个位线存在分离的感测模块580,并且对于多个感测模块580的集合存在一个公共部分590。在一个示例中,感测块将包括一个公共部分590和八个感测模块580,每个感测模块类似于下文进一步讨论的感测电路。成组的感测模块中的每个将经由数据总线572与相关联的公共部分连通。
感测模块580包括感测电路570,其确定所连接的位线中的传导电流在预定阈值水平以上还是以下。感测模块580还包括位线锁存器582,其用于设定所连接的位线上的电压条件。例如,位线锁存器582中锁存的预定状态将导致所连接的位线被拉到指定编程禁用的状态。
公共部分590包括处理器592、数据锁存器集合594以及耦合在数据存储器集合594和数据总线520之间的I/O接口596。处理器592执行计算。例如,其功能之一是确定感测到的存储元件中存储的数据并且将所确定的数据存储在数据锁存器集合中。数据锁存器集合594用于存储在读操作期间由处理器592确定的数据位。其还用于存储在编程操作期间从数据总线520导入的数据位。导入的数据位表示写数据,其意味着将被编程到存储器中。I/O接口596提供数据锁存器594和数据总线520之间的接口。
在读取或其他感测期间,状态机512控制将不同的控制栅极电压提供给所寻址的存储元件。在逐步通过与存储器支持的各个存储器状态对应的各个预先限定的控制栅极电压时,感测模块580可以绊停(trip)在这些电压中的一个处并且将从感测模块580经由总线572向处理器592提供输出。此时,处理器592通过考虑感测模块的绊停事件以及关于从状态机经由输入线路593所施加的控制栅极电压的信息,确定得到的存储器状态。随后计算关于存储器状态的二进制编码并且将得到的数据位存储到数据锁存器594中。在核心部分的另一实施例中,位线锁存器582用作用于锁存感测模块580的输出的锁存器和如上文所述的位线锁存器两者。
在编程或验证期间,待编程数据从数据总线520存储在数据锁存器集合594中。在状态机的控制下,编程操作包括施加到所寻址的存储元件的控制栅极的一系列编程电压脉冲。每个编程脉冲跟随有读回(验证),以确定存储元件是否已被编程到期望的存储器状态。处理器592监视与期望的存储器状态相关的读回存储器状态。当两者一致时,处理器592设定位线锁存器582以便将位线拉到指定编程禁用的状态。这使得禁止耦合到位线的存储元件被进一步编程,即使编程脉冲呈现在其控制栅极上。在其他实施例中,处理器在最初时加载位线锁存器582并且感测电路在验证处理期间将其设定到禁用值。
数据锁存器堆栈594包含与感测模块对应的数据锁存器的堆栈。在一个实施例中,对于每个感测模块580存在三个数据锁存器。数据锁存器可以被实现为移位寄存器,使得其中存储的并行数据被转换成用于数据总线的串行数据,反之亦然。与m个存储元件的读/写块对应的所有数据锁存器可以链接在一起以形成块移位寄存器,使得能够通过串行传输来输入或输出数据块。特别地,调节读/写模块的组,使得每个数据锁存器集合将数据按照如同它们是用于整个读/取块的移位寄存器的一部分的序列来移入或移出数据总线。
图7a示出了关于四状态存储器装置的阈值电压分布的示例集合,其中每个存储元件存储两位数据。为擦除的(E状态)存储元件提供第一Vth分布700。三个Vth分布702、704和706分别表示编程状态A、B和C,其中沟道到浮栅的耦合被补偿。由于沟道到浮栅的耦合,对于编程状态A、B和C分别出现了扩宽的Vth分布703、705和707。这种耦合增加了所选择的存储元件的浮栅上的电位,使得例如被表示成每个编程脉冲的Vth的改变的其编程速度被加速到预期的编程速度以上,导致上末端上的Vth分布的扩宽。在一个实施例中,E状态中的阈值电压是负的,并且A、B和C状态中的阈值电压是正的。
还提供用于从存储元件读取数据的读取参考电压Vra、Vrb和Vrc。通过测试给定的存储元件的阈值电压在Vra、Vrb和Vrc以上还是以下,系统可以确定存储元件所处的状态,例如编程条件。
此外,提供验证参考电压Vva、Vvb和Vvc。在将存储元件编程到A状态、B状态或C状态时,系统将分别测试这些存储元件是否具有大于或等于Vva、Vvb和Vvc的阈值电压。
在全序列编程中,存储元件可以从E状态直接编程到编程状态A、B或C中的任一个态。例如,待编程的存储元件群组可以首先被擦除,使得该群组中的所有存储元件处于E状态。使用诸如图8中所示的一系列编程脉冲将存储元件直接编程到A、B和C状态。在一些存储元件正在从E状态编程到A状态时,其他存储元件正在从E状态编程到B状态和/或从E状态编程到C状态。
慢编程模式的一个示例对于一个或更多个数据状态使用低(偏移)和高(目标)验证电平。例如,VvaL和Vva分别是关于A状态的偏移和目标验证电平,并且VvbL和Vvb分别是关于B状态的偏移和目标验证电平。在编程期间,当正在被编程到作为目标状态的A状态的存储元件(例如,A状态存储元件)的Vth超过VvaL时,诸如通过将Vbl升高到例如0V的额定编程或非禁用电平与例如2-3V的全禁用电平之间的、例如0.6-0.8V的电平来使其编程速度减慢。这通过避免Vth的大幅增加来提供较大的精度。当Vth达到Vva时,使存储元件闭锁以阻止进一步的编程。相似地,当B状态存储元件的Vth超过VvbL时,使其编程速度减慢,并且当Vth达到Vvb时,使存储元件闭锁以阻止进一步的编程。在一种方法中,慢编程模式未被用于最高状态,因为某种过冲典型地是可接受的。作为替代,慢编程模式可用于擦除状态以上且最高状态以下的编程状态。
图7b图示了对存储关于两个不同的页(即下页和上页)的数据的多状态存储元件编程的两轮回技术的示例。通过重复来自图7a的阈值电压分布700、702、704和706示出了四个状态。这些状态以及它们表示的位是:E状态(11)、A状态(10)、B状态(00)和C状态(01)。对于E状态,两个页都存储“1”。对于A状态,下页存储“0”并且上页存储“1”。对于B状态,两个页都存储“0”。对于C状态,下页存储“1”并且上页存储“0”。注意,尽管特定的位式样已被分配给每个状态,但是也可以分配不同的位式样。
在第一编程轮回中,根据待编程到下逻辑页中的位来设定存储元件的阈值电压电平。如果该位是逻辑“1”,则由于作为以前已被擦除的结果其处于适当的状态,因此阈值电压不变。然而,如果待编程的位是逻辑“0”,则如箭头730所示,存储元件的阈值电平增加到A状态。这终止第一编程轮回。
在第二编程轮回中,根据正被编程到上逻辑页的位来设定存储元件的Vth。如果上逻辑页位将存储逻辑“1”,则由于根据下页位的编程,存储元件处于状态E或A之一,其中这两个状态均承载上页位“1”,因此未进行编程。如果上页位将是逻辑“0”,则Vth漂移。如果第一轮回导致存储元件保持在E状态,则如箭头720所示,在第二阶段中存储元件被编程,使得Vth增加到C状态内。如果作为第一编程轮回的结果,存储元件已被编程到A状态,则如箭头710所示,存储元件被进一步编程到第二轮会,使得Vth增加到B状态内。第二轮回的结果是将存储元件编程到指定针对上页存储逻辑“0”、而下页的数据不变的状态。
注意,通过该技术,也可以使用慢编程模式。
在一种方法中,如果写入足够的数据以填满整个页,则可以将系统设置成执行全序列写入。如果对于整页没写入足够的数据,则编程处理可以对下页编程,利用接收到的数据进行编程。当接收到后继的数据时,系统随后将对上页编程。在又一实施例中,如果随后接收到足以填满整个(或大部分)字线的存储元件的数据,则系统可以在对下页编程的模式中开始写入并且转换成全序列编程模式。
在另一可能的编程技术中,在第一步骤中,对下页编程。如果下页将保持数据1,则存储元件状态保持在E状态。如果数据将被编程到0,则存储元件的电压的阈值升高,使得存储元件被编程到在状态A和B之间延伸的中间分布。
在对上页编程时,如果存储元件处于E状态并且上页保持在1,则存储元件将保持在E状态。如果存储元件处于E状态并且其上页数据将被编程到0,则存储元件的阈值电压将升高,使得存储元件处于A状态。如果存储元件处于中间Vth分布并且上页数据将保持在1,则存储元件将被编程到目标B状态。如果存储元件处于中间Vth分布并且上页数据将变为数据0,则存储元件的阈值电压将升高,使得存储元件处于C状态。
尽管编程示例示出了四个数据状态和两个数据页,但是所教导的概念可以应用于具有多于或少于四个状态以及多于或少于两个页的其他实现方案。例如,当前规划了或者正在生产每个存储元件具有8个或16个状态的存储器装置。
而且,在所讨论的示例编程技术中,存储元件在被编程到目标数据状态时,其Vth升高。然而,可以使用其中存储元件在被编程到目标数据状态时,其Vth降低的编程技术。也可以使用测量存储元件电流的编程技术。这里的概念可以适于不同的编程技术。
图8图示了在编程操作期间施加到所选择的字线的一系列编程和验证脉冲。编程操作可以包括多个编程迭代,其中每个迭代将跟随有一个或更多个验证电压的一个或更多个编程脉冲(电压)施加到所选择的字线。在一种可能的方法中,编程电压在连续迭代中逐步升高。而且,编程电压可以包括具有例如6-8V的通过电压(Vpass)电平的第一部分,其跟随有例如12-25V的编程电平处的第二部分。例如,第一、第二、第三和第四编程脉冲800、802、804和806分别具有编程电压Vpgm1、Vpgm2、Vpgm3和Vpgm4,等等。可以在每个编程脉冲之后提供诸如Vva、Vvb和Vvc的一个或更多个验证电压的集合808。在一些情况下,一个或更多个初始编程脉冲未跟随有验证脉冲,因为没有预见到任何存储元件已达到最低编程状态(例如,A状态)。随后,例如,编程迭代可以使用用于A状态的验证脉冲,接着是使用用于A和B状态的验证脉冲的编程迭代,接着是使用用于B和C状态的验证脉冲的编程迭代。
在一种选择中,使用偶数-奇数编程脉冲。在该情况下,在单个编程迭代中,使用一个编程脉冲对偶数编号的位线的所选择的存储元件编程,接着是用于对奇数编号的位线的所选择的存储元件编程的另一编程脉冲,接着是用于偶数和奇数编号的位线两者的一个或更多个验证脉冲。
图9示出了关于存储元件集合的多轮回编程操作。所示出的部件可以是字线、位线和存储元件的更大的集合的子集。在一种方法中,在第一编程轮回中对例如存储元件902、904和906的、WLn-1上的存储元件编程。该步骤由圆形“1”表示。接着(“2”),在第一编程轮回中对例如存储元件912、914和916的、WLn上的存储元件编程。在该示例中,当选择字线用于编程时,在每个编程脉冲之后进行验证操作。在WLn上的验证操作之后,将一个或更多个验证电压施加到WLn并且将通过电压施加到包括WLn-1和WLn+1的剩余字线。通过电压用于接通未选择的存储元件(使其导通),使得可以针对所选择的字线进行感测操作。接着(“3”),在第二编程轮回中对WLn-1上的存储元件编程。接着(“4”),在第一编程轮回中对WLn+1上的存储元件编程。接着(“5”),在第二编程轮回中将WLn上的存储元件编程到它们各个目标状态。
图10a示出了NAND串的横截面视图,其示出了沟道到浮栅的耦合和浮栅到浮栅的耦合。位线或NAND串方向进入纸面,并且字线方向从左到右。字线1000延伸跨越多个NAND串。第一NAND串包括沟道区域(CH)1016。还参见结合图2和3讨论的沟道区域。第一NAND串中的存储元件1010包括作为字线1000的一部分的控制栅极(CG)1012以及浮栅(FG)1014。第二NAND串包括沟道区域1026。第二NAND串中的存储元件1020包括作为字线1000的一部分的控制栅极1022以及浮栅1024。第三NAND串包括沟道区域1036。第三NAND串中的存储元件1030包括作为字线1000的一部分的控制栅极1032以及浮栅1034。
随着存储器装置的缩小,存储元件对存储元件的干扰充当日益重要的角色。如开头所提及的,这些干扰之一是在编程期间出现的沟道到浮栅的耦合。在全位线编程中,考虑经历编程的所选择的字线1000的所选择的存储元件1020。当同一字线1000上相邻位线的相邻存储元件(例如,1010和/或1030)达到其目标数据状态时,其被闭锁以阻止进一步的编程。结果,在下一编程迭代中,在向所选择的字线1000施加编程脉冲时,闭锁的或未选择的存储元件的衬底沟道区域(例如,1016和/或1036)被升压以防止未选择的存储元件的浮栅(例如,1014和/或1034)的电压增加。然而,如果沟道1026保持在诸如0V的固定电压,则沟道(例如,1016和/或1036)中的升高的电位耦合到所选择的存储元件1020的浮栅1024,导致当施加编程脉冲时浮栅1024和沟道1026之间的有效电场增加。耦合量取决于沟道电位和耦合系数。这导致了不期望的所选择的存储元件的Vth的较大的跳跃。因此如图7a中所示,存储元件的Vth分布不合需要地扩宽。
除了沟道到浮栅的耦合之外,浮栅到浮栅的耦合也可以增加所选择的存储元件所见的有效Vpgm。这由从浮栅1014和/或1034到浮栅1024的耦合表示。
例如,如果向字线1000施加具有0.2V的步长尺寸的编程电压,则由于来自沟道1016的耦合,浮栅1024的电位可以增加步长尺寸较高的情况下预期的量,诸如0.3V,并且没有来自沟道1016的耦合。来自沟道1036的耦合可以相似地无意地增加浮栅1024的电位,使得其比预期情况更快地被编程。这主要是其中相邻的位线/NAND串被同时编程的全位线(ABL)编程技术中的关注点。通过ABL,邻居存储元件可以是在编程开始时沟道处于0V的编程存储元件。随着编程的进行,邻居存储元件变为沟道电压升压到高达例如8V的禁用存储元件。这种突然改变可能使邻居存储元件体验用于编程的电场的突然增加。
ABL编程的一个特性在于编程结束点可以是极为随机的和不可预测的。在上文讨论的偶数/奇数编程技术中,当偶数编号的NAND串被编程时,奇数编号的NAND串未被选择,反之亦然。未选择的NAND沟道总是从编程序列开始升压到高电位。沟道到浮栅的耦合有效地使所选择的存储元件看见较高的用于编程的电场,但是所选择的存储元件仅在其中看见较高的电场的第一编程脉冲中被较快地编程。随后的编程脉冲不受来自未选择的邻居沟道的恒定耦合的影响并且因此对于遵循稳定状态编程的所选择的存储元件不存在突然的Vth改变。即使偶数/奇数编程技术具有不存在沟道到浮栅的耦合的副效应的优点,但是其性能仅为ABL编程的一半。因此,在不损失性能的情况下值得将补偿技术用于ABL编程。
对于ABL编程,为了克服所选择的存储元件上的突然电场改变,可以使用例如0.5V的某个电压来补偿所选择的存储元件的沟道,以减少跨越浮栅到沟道的有效电压。如图3中所示,可以经由位线通过所选择的栅极SGD提供该沟道偏置。通过将栅极电压342升高到适当的电平,可以将位线341上的电压传递到沟道330。由于位线彼此极为接近,位线到位线的耦合是相对强的。可以利用这一事实来获得调制沟道电位所需的位线电位。
图10b示出了从未选择的位线到所选择的位线的耦合。可以出现由箭头表示的从未选择的位线到所选择的位线的耦合。当相邻的未选择的位线两者耦合到所选择的位线时这种耦合最高。这种位线耦合可用于补偿和控制所选择的存储元件的沟道电压。
通常,所选择的位线体验的耦合取决于一个或更多个邻近位线的式样。例如,可以体验来自一个或更多个非相邻位线的耦合。耦合效应还可能以波纹效应跨越位线链传输。考虑具有式样:U1-S2-S3-S4-U5的一系列相邻位线,其中U和S分别表示未选择的位线和所选择的位线。对于S3,可以从U1和U5接收耦合,尽管它们是非相邻位线。相邻位线之间的耦合比可以是相对高的,例如45%;另外的5%来自接下来的第二个邻居耦合或地。来自与另一位线相距两个位线的位线的耦合是45%×45%=20.25%,这是相当大的。因此,S3可以接收总共40.5%的耦合,这非常接近于其中所选择的存储元件在一侧具有相邻的未选择的邻居的情况。存在预期的和非预期的耦合效应。从U5到S4的耦合或者从U1到S1的耦合是预期的耦合,其将提供减慢效应以补偿从U5到S4以及从U1到S1的沟道耦合效应。来自U1和U5两者的S3位线耦合(例如,40.5%)与45%的直接耦合效应极为接近,并且是非预期的耦合效应且导致不合需要的编程减慢。S3不受来自其直接邻居,即S2和S4的耦合的影响,因为它们没有将禁用沟道耦联到与S3相关联的所选择的存储元件的浮栅。
用于减少沟道到浮栅的耦合的各种方法包括使用上文讨论的偶数-奇数编程脉冲。然而,这导致了性能损失。还可以为未选择的存储元件提供较小的升压,但是这增加了编程干扰的风险。具有慢编程模式的浮动位线技术也是可能的,但是难于有效实现。在该实现方案中浮动的禁用位线可以通过慢编程模式位线(与慢编程模式的所选择的存储元件相关联的位线)耦合,并且禁用Vbl的最终逐步升压可能不足以耦联慢编程模式位线以充分减慢编程。另一方法是使用较小的编程脉冲步长尺寸。然而,这也导致了性能损失。
图11a示出了在使用偏移和目标验证电平并且减少耦合效应的示例编程技术中的阈值电压分布1100、1102、1104和1106。
在一个方法中,A和B状态存储元件在它们的Vth接近各个目标验证电平时,首先在快编程模式中被编程并且随后在慢编程模式中被编程。C状态存储元件未减慢以增强性能。如结合图7a讨论的,慢和块编程模式可用于实现更紧密的Vth分布。存储元件可以在最初时在其中其位线处于0V的快编程模式中从擦除状态编程到较高的状态。由于存储元件远离其目标验证电平,因此可以忽略耦合效应,因为耦合引起的突然Vth跳跃不会将存储元件过度编程到超过期望的Vth范围。当存储元件的Vth通过诸如分别相对目标验证电平Vva或Vvb偏移的VvaL或VvbL的偏移验证电平时,存储元件进入慢编程模式,其中诸如通过将Vbl升高到例如Vslow=0.6-0.8V来减少Vth随每个编程脉冲的增加速率。当存储元件处于慢编程模式,并且因此接近其目标验证电平时,由于期望精确控制,因此应补偿耦合效应。在预期的减慢的基础上需要额外的减慢以补偿沟道耦合效应。该技术可被称为双减慢(DSD)。提供额外的减慢的一种方法是在将Vbl升高到Vslow之后使位线浮动。当存储元件的Vth通过目标验证电平时,通过升高其Vbl使存储元件闭锁以阻止进一步的编程。
在一些情况下,当接近目标时具有预期的减慢的最终编程技术不是必需的。
另一方法使用一个编程速度模式,但是仍在偏移和目标验证电平处执行验证操作。在该情况下,当达到数据状态的偏移验证电平时,使将被编程到该数据状态的所选择的存储元件的位线浮动。如同一些其他的方法,这可以在不将Vbl驱动到较高电压的情况下完成。当达到数据状态的目标验证电平时,使这些所选择的存储元件的位线闭锁。
偏移验证电平VvaL和VvaB可被分别视为A和B状态的存储元件的触发验证电平,其触发位线浮动和/或设定Vbl=Vslow。
然而,这些方法使用附加的验证操作,导致了性能损失。
图11b示出了在整个编程操作中仅使用一个编程速度模式以及针对每个状态一个验证电平的情况下,减少耦合效应的示例编程技术中的阈值电压分布。在该情况下,存储元件处于快编程模式或禁用模式。为了补偿沟道到浮栅的耦合,可以将Vth窗口分成三个区域(假设使用四个数据状态)而不添加任何额外的验证操作。在在Vva以下的第一区域中,B和C状态存储元件将处于快编程模式,因为它们远离其目标。如果必要可以通过使A状态存储元件的相关联的位线浮动来使它们减慢。当邻居被禁用时,浮动的位线可以通过相邻的位线耦合。在A状态存储元件通过Vva之后,它们被禁用。
在从Vva到Vvb的第二区域中,当B状态存储元件通过Vva时,使它们的相关联的位线浮动以接收来自邻居禁用位线的耦合,使得它们减慢以防止过度编程。在Vvb以上的第三区域中,在B状态存储元件通过B验证电平(Vvb)之后,它们被禁用。C状态存储元件处于快编程模式直至它们达到Vvc。目标验证电平Vva和Vvb可以被分别视为B和C状态存储元件的触发验证电平,其触发位线浮动。
该方法允许来自一个或更多个相邻的或者其他邻近的未选择的位线的耦合(如果存在)以针对全部的或者所选择的部分的编程操作,减少所选择的位线的编程速度。注意,该方法不需要了解是否存在一个或更多个相邻的未选择的位线,使得避免了用于获得该信息的步骤以及相关联的性能损失。与出现的耦合量成比例地自动地降低编程速度。特别地,使所选择的位线浮动将允许位线被邻近的未选择的位线较高地耦合。具有约3pF量级的大电容的位线可以用作针对相关联的沟道的电源,其具有极小的电容(可能为3pF的1%)。对于具有耦合电压的位线,沟道处于与位线相同的电压。禁用位线的电压相对于沟道浮动的导通晶体管SGD是足够高的,并且与位线无关联。稍后通过升高字线电压来耦合浮动沟道,并且浮动沟道实现了高的升压以防止进一步的编程。
如下文进一步讨论的,通过设定UDL锁存器中的“减慢”位可以指示所选择的存储元件应使其位线浮动并且从而经历作为补偿的形式的减慢的编程。
理想地,经由浮动位线进行的减慢应在目标验证电平之前约500mV处完成(假设500mV的最差情况的沟道到浮栅的耦合)。如针对A和B状态存储元件讨论的经由浮动位线提供减慢可以导致约两个另外的验证脉冲。然而,由于与C状态编程共享编程脉冲,因此未获得另外的编程脉冲。C状态存储元件的减慢可以导致约两个另外的编程脉冲。然而,这些权衡导致了更紧密的Vth分布。为了减少性能损失,一种解决方案是不减慢C状态存储元件。实际上由于当C状态存储元件继续编程时禁用了大部分的编程到其他状态的存储元件,因此C状态的沟道到浮栅的耦合效应的概率低于其他两个状态A和B。而且,如果在C状态存储元件达到其验证电平之前邻居存储元件被禁用了许多编程脉冲,则沟道到浮栅的耦合现象将不会扩宽Vth分布。
注意,当相对较多的位线接地时,在编程操作早期,跨越位线的耦合的机会较小,因为接地的位线通常将停止这样的耦合。
更详细地,假设使用如图8中的阶梯式增加的Vpgm。典型地,使用第一编程脉冲集合对A状态存储元件编程,使用重叠的第二编程脉冲集合对B状态存储元件编程,并且使用重叠的第三编程脉冲集合对C状态存储元件编程。假设在每次A状态阶段一开始时由于位线浮动存在某种减慢。这导致了A状态编程阶段的结束较之没有减慢的情况是较晚的。而且,如果具有关于B状态的减慢,B状态编程阶段的结束较之没有减慢的情况也是较晚的。然而,由于存储元件共享相同的编程脉冲,因此对于A和B状态存储元件来说可接受的是:用较长的时间编程,并且执行较多的验证操作,因为整体编程时间没有增加。整体编程时间基于最高状态的编程时间。
因此,当使C状态存储元件减慢时,存在整体编程时间的损失。通常,注意,沟道到浮栅的耦合效应牵涉相对不频繁地发生的、当邻居位线闭锁时位线几乎闭锁的概率。C状态中的该罕见事件的组合是更为罕见的事件。使C状态存储元件减慢可以使整体编程时间增加例如两个编程迭代。
图11c示出了与图11a和11b相关的示例编程处理。编程操作开始于步骤1120。编程迭代开始于步骤1122。
在与图11a对应的一种选择中,在步骤1124处,将未达到其偏移验证电平(其为低于所选择的存储元件的目标验证电平的验证电平)的所选择的存储元件的位线接地,并且使已达到其偏移验证电平的所选择的存储元件的位线浮动以提供补偿。例如,VvbL是B状态存储元件的偏移验证电平,其中目标数据状态是B状态并且目标验证电平是Vvb。一种选择是例如在使位线浮动之前设定Vbl=Vslow,使得它们在略在Vslow以上的电平处浮动。否则,例如在使位线浮动之前使Vbl=0V,使得它们在略在0V以上的电平处浮动。
在与图11b对应的另一选择中,在步骤1126处,将未达到比其目标数据状态低的特定数据状态的目标验证电平(其为比其目标验证电平低的验证电平)的所选择的存储元件的位线接地,并且使已达到该较低的特定数据状态的目标验证电平的所选择的存储元件的位线浮动以提供补偿。例如,Vva是比B状态的目标数据状态低的数据状态的目标验证电平。就是说,A状态是比B状态低的一个状态。例如,在具有状态Er(表示不同于较高的E状态的擦除状态)、A、B、C、D、E、F和G的八级装置中,状态D比状态F低两个状态。
步骤1132包括使未选择的位线上的电压逐步升高以耦联到浮动位线。步骤1134处施加编程脉冲。
步骤1128包括升高未选择的字线上的Vpass。这可以在所选择的位线的浮动开始之前或之后进行。步骤1130包括在升高Vpass或使所选择的位线浮动之前或之后使Vsgd逐步升高。Vsgd可以在Vpgm升高的同时(当沟道升压依赖于Vpass时,在Vpgm之前,或者当沟道升压依赖于Vpgm时,在Vpgm之后)逐步升高。这是正常编程中的可选的步骤,其中禁用位线没有逐步升压。下文进一步讨论的图15图示了图11c的某些步骤。例如,其示出了接地位线的Vbl(1524)、浮动位线的Vbl(1522),其中浮动开始于t8处,在t8处使未选择的位线的Vbl(1518)逐步升高,在所选择的位线的浮动(在t8处)之前(在t7处)升高未选择的字线上的Vpass(1529),在所选择的位线的浮动(在t8处)之后(在t9处)升高未选择的字线上的Vpass(1528),以及在升高Vpass之后(分别在t7至t9处)使Vsgd(分别是t9或t10处的1530或1531)逐步升高。Vsgd是设置在存储元件和各个位线(例如,图3中的321、341和361)之间的漏极选择晶体管(例如,图3中的322、342和362)的栅极电压。
步骤1136包括执行验证操作。使用验证操作的结果闭锁达到其目标验证电平的所选择的存储元件的位线。步骤1138包括基于验证操作的结果更新感测电路中的锁存器。如果在判定步骤1140中存在下一编程迭代,则处理在下一编程迭代中在步骤1122处继续。如果判定步骤1140为假,则编程操作在步骤1142处结束。
注意,步骤1124、1128、1130、1132和1134至少部分地在时间上重叠。相似地,步骤1126、1128、1130、1132和1134至少部分地在时间上重叠。通常,要耦联到的位线应在使未选择的位线逐步升压之前浮动。而且,应在施加Vpgm之前建立期望的位线电压和SGD电压。
注意,这里描述的各种编程技术可以通过控制电路中的适当逻辑实现。
图11d示出了各个位线的数据锁存器。如所提及的,数据锁存器可用于存储减慢位。该位具有一个值(1),其指示相关联的存储元件应通过使其位线在至少一部分编程操作期间浮动而经历减慢。该位可以具有另一值(0),其指示相关联的存储元件不应经历减慢,并且作为替代,应通过使其位线在至少一部分编程操作期间接地而经历快编程。位值可以在编程操作期间改变,并且由控制电路读取以典型地经由相关联的感测电路来适当地控制位线。
通常,可以针对每个位线提供多个数据锁存器,每个数据锁存器存储一位数据。锁存器识别相关联的存储元件何时达到编程操作中的特定的程标(milepost)。例如,锁存器可以识别存储元件仍未完成编程(例如,其Vth在诸如Vva、Vvb或Vvc的目标验证电平以下),或者已完成编程(例如,其Vth在目标验证电平以上)。锁存器还可以识别存储元件的Vth在偏移验证电平(例如,VvaL或VvbL)以下,在例如慢编程模式中在偏移验证电平(例如,VvaL或VvbL)以上但是在目标验证电平以下(例如,Vva、Vvb或Vvc),或者在目标验证电平以上。
被称为XDL锁存器的第一锁存器集合1201包括锁存器1200、1202、1204、1206和1208。XDL锁存器可用于存储例如数据的下页。当下页位被存储在相关联的存储元件中时,XDL锁存器翻转。被称为UDL锁存器的第二锁存器集合1211包括锁存器1210、1212、1214、1216和1218。在一个可能的实现方案中,当相关联的存储元件处于慢编程模式时,例如,当其Vth在偏移和目标验证电平之间时,UDL锁存器翻转。在图11a的实现方案中,UDL锁存器存储当相关联的存储元件从其中其沟道浮动的慢编程模式转移到其中其沟道接地的快编程模式时翻转的位。被称为LDL锁存器的第三锁存器集合1221包括锁存器1220、1222、1224、1226和1228。锁存器连接到代表性位线BLi-2、BLi-1、BL、BLi+1和BLi+2。LDL锁存器可用于存储例如数据的上页。当相关联的存储元件完成编程时,例如,当其Vth超过诸如Vva、Vvb或Vvc的目标验证电平时,LDL锁存器翻转。
图11e示出了图11d的锁存器的位分配。E表示擦除状态。Af、Bf和Cf分别表示沟道接地的情况下的A状态、B状态和C状态存储元件的快编程模式。As、Bs和Cs分别表示位线浮动的情况下的A状态、B状态和C状态存储元件的减慢编程模式。Ain、Bin和Cin分别表示A状态、B状态和C状态存储元件的禁用模式。Lockout和Lockoutl分别表示来自数据锁存器的用于控制感测电路中的位线的第一和第二数据传输。如下文进一步讨论的,第一传输将数据推入以电容器作为动态锁存器的感测节点中,并且随后将数据传输到锁存器,并且第二传输将一些数据更换到锁存器上。这些数据传输提供了一种控制感测电路中的电压的方式。例如,可以使用一个用于禁用的电压和一个用于减慢的电压。Lockoutl可用于指示位线是否处于慢编程模式。
在该实现方案中,UDL=1指示对于A、B和C状态,慢编程模式有效。在编程期间,控制电路读取所选择的存储元件的锁存器数据,并且响应于该数据,确定所选择的存储元件应以其位线浮动的状态还是以其位线接地的状态编程。控制电路随后将相应的数据传输到感测电路。
图12示出了关于没有补偿的快编程模式、具有补偿的慢编程模式以及闭锁/禁用条件的数据状态的阈值电压范围。通常,当期望对Vth的增加速率进行更准确的控制时,沟道到浮栅的耦合是处于慢编程模式中的存储元件最为关注的。最高状态(例如,C状态)可以不使用慢编程模式,因为沟道到浮栅的耦合的补偿对于其他状态而言不太重要。因此C状态编程未减慢并且不会导致整体性能损失。关于A和B状态的慢编程模式招致了损失,诸如耦合更多的验证操作。结果,对于作为示例的B状态,可以具有阈值电压范围1254,其中沟道接地而出现快编程模式,并且不存在对沟道到浮栅的耦合的补偿。范围1254向上延伸到VvbL。提供阈值电压范围1256,其中出现具有对沟道到浮栅的耦合的补偿的慢编程模式,并且慢编程模式对应于Vth分布1250。范围1256从VvbL延伸到Vvb。还提供Vvb以上的并且与Vth分布1252对应的阈值电压范围1258,其中B状态存储元件处于闭锁/禁用条件。该讨论可以也可以被归纳成其他状态。
潜在缺陷在于,与范围1256接近(例如,与VvbL接近并且刚好在其以下)的存储元件处于受到沟道到浮栅的耦合的影响并且使其Vth跳跃到Vth分布1252的上端,引起Vth分布扩宽的危险。
一种替选的方法是使快编程模式的存储元件的位线浮动以减慢它们的编程,不论目标状态如何。这两种选择可以在存储器装置中实现以确定哪一个是最优的。
下文详细描述提供对沟道到浮栅的耦合的补偿的各种编程技术。
图13示出了用于对非易失性存储元件的集合编程的方法,其中使用两个驱动电压使禁用位线的电压逐步升高以引入对邻近位线的补偿耦合。编程操作开始于步骤1300处。编程操作的迭代开始于步骤1302处。步骤1304识别第一组禁用的(未选择的)存储元件、处于慢编程模式的第二组存储元件以及处于快编程模式的第三组存储元件。第一组表示未选择的存储元件,而第二和第三组表示所选择的存储元件。例如,该识别可由控制电路通过读取锁存器数据来进行。第一组包括与第一位线连通的第一存储元件,第二组包括与第二位线连通的第二存储元件,并且第三组包括与第三位线连通的第三存储元件。存储元件和位线可以处于存储器阵列中的任何相对彼此的位置。
步骤1306包括在第一时间段中使用Vdd-ΔV(初始电平)处的电源对第一组的位线预充电,并且将第二和第三组的位线接地。ΔV表示电压逐步升高,其随后将引入从未选择的位线到所选择的位线的耦合以抵消所选择的存储元件体验的沟道到浮栅的耦合。就是说,对于所选择的存储元件,通过升高其位线电位,至少部分地补偿了由于沟道到浮栅的耦合引起的升高的浮栅电位。
步骤1308包括在第一时间段之后的第二时间段中将第二组的位线预充电到Vslow。在该步骤中,为了防止不合需要的耦合效应,理想的是有源地对禁用位线和接地位线进行偏置,使得它们不会浮动。
步骤1310包括在第二时间段之后的第三时间段中使用Vdd(逐步升高的电平)处的电源驱动第一组的位线,使第二组的位线浮动,并且使第三组的位线浮动或接地。
在同一时间段中,步骤1309包括在开始浮动之前或之后,升高未选择的字线上的Vpass,其后步骤1311包括在Vpass升高之前或之后,或者在浮动开始之后,诸如当所选择的字线上的Vpgm升高时,使Vsgd逐步升高。步骤1309和1311可以在相对于步骤1310的定时的各种时间开始。在一些情况下,步骤1309可以在步骤1310之前开始,其中在未选择的位线的电压逐步升高之前未选择的字线上的Vpass升高。在另一情况下,步骤1309可以在步骤1310之后开始,其中未选择的位线改变其电压并且随后未选择的字线上的Vpass升高以实现沟道升压。在另一情况下,跟随步骤1309的步骤1311可以在步骤1310前面开始,其中未选择的浮动沟道将被首先升压,随后未选择的位线升高到最终Vdd电平,并且随后Vsgd升高。在升压步骤1309之后开始步骤1310可以是有利的,因为经补偿的位线的沟道(由紧邻的未选择的位线耦联)将不会面临其相关联的沟道不利地升压的可能性,其中编程在减慢之前停止。
而且,对于不同的所选择的字线,可以使用不同的技术,其中根据所使用的升压模式,未选择的Vpass电压使与一些字线相关联的浮动沟道升压(被称为Vpass升压)并且所选择的字线Vpgm使与一些其他字线相关联的浮动沟道升压(被称为Vpgm升压)。步骤1309可以包括Vpass升压情况和Vpgm升压情况两者。对于Vpass升压情况,步骤1309表示升高Vpass的时间。对于Vpgm升压情况,步骤1309表示升高Vpgm的时间。
通过将第一组的位线从Vdd-ΔV升高到Vdd,基于ΔV的幅值和位线的式样,ΔV的逐步升压从第一组的位线耦合到第二和第三组的位线。所选择的和未选择的字线上的字线电压将耦联第一组存储元件上的用于禁用的浮动位线。第二和第三组存储元件的浮动位线用作相关联的位线的电压偏置并且这些位线未通过字线耦联。这主要是因为位线和沟道之间的电容差,其中具有大电容的位线用作具有小电容的沟道贮存器。
来自第一组位线的耦合使第二组位线的电位升高到Vslow以上的Cr×ΔV处,其中Cr是耦合比。相似地,当第三组位线浮动时,来自第一组位线的耦合基于ΔV和耦合比使它们升高到0V以上的电位。然而,当第三组位线接地时,在另一可能的方法中,它们保持在0V处并且不受ΔV逐步升高的影响。给定的所选择的位线体验的耦合量取决于例如距逐步升压的位线的距离以及逐步升压的位线数目。
步骤1312包括对第二和第三组中的所选择的存储元件执行一个或更多个验证操作。步骤1313包括使达到目标数据状态的位线闭锁。在判定步骤1314中,如果存在下一编程迭代,则处理在步骤1302处继续;否则编程操作在步骤1316处结束。
作为示例,可以使用图14的感测电路和图15的时间线来实现图13的处理。例如,第一时间段可以对应于图15中的t3-t6,第二时间段可以对应于t6-t7或t6-t8,并且第三时间段可以对应于t7-t11或t9-t11。
图14示出了用于与图13的方法一起使用的感测电路,其中驱动电压用于偏置位线。可以使用各种感测电路的配置。这里描述的各种感测电路的操作可以基于它们的共同描述而被理解,注意,名称相同的部件可以执行共同的功能。除非另外指示,否则大量的感测电路(例如平面中的64K感测电路)典型地接收公共控制信号,并且接入一个或更多个公共电源。参见例如图4中的公共电源405。例如,下文进一步描述了诸如BLX、BLC、CLK、ICO、LCO和FCO的公共控制信号。感测电路本地的信号示例是下文进一步描述的BUS、SEN、LAT和FLG。对于电源,由大的感测电路组的边缘处的全局电路提供感测电路中的晶体管栅极电压。这些可以是诸如Vdd+Vth的高电压。由于栅极被电容性地加载,因此它们可以使用高电压。然而,对于感测电路的源极/漏极电压,功率限于Vdd以避免消耗大量的电流。
对于每个位线可以提供感测电路1490的单独的复制品,并且根据位线与被禁用编程的存储元件相关联、处于慢编程模式还是处于快编程模式,对感测电路进行不同的配置。一个或更多个控制电路可以向每个感测电路传递命令以配置它们,以及交换数据,诸如读取和写入数据。
感测电路的特征在于所提供的用于存储数据的许多锁存器以及能够提供给位线的许多电压。这里提供的技术在尽可能使感测电路紧凑和高效的同时,最优地充分利用了感测电路的能力。示例实现方案包括两个锁存器并且可以向位线提供三个电压,即0V、慢编程模式电压Vslow和Vdd。参见图例1491,其指示哪些部件用于设定哪些电压。一个锁存器1471是LAT 1480及其互补节点INV 1462处的全锁存器,并且另一锁存器是由电容器1452提供的动态电容器锁存器,其具有SEN 1454处的存储节点和作为接地板的时钟(CLK)节点1453。
这里的感测电路中的晶体管可以包括例如nMOSFET(nMOS)和pMOSFET(pMOS)。NAND串1450连接到感测电路1490,并且包括存储元件1444、1446和1448,它们分别与例如字线WL63、WL62、…、WL0连通,并且经由SGD晶体管1442与位线(BL)1440连通。NAND串1450还包括源极选择栅极SGS 1449,其连接到多个NAND串的公共源极线1451。位线1440与BLS晶体管1438和BLC(位线箝位)晶体管1428连通,BLC晶体管1428耦合到COM1路径1426。BLS晶体管1438是高电压晶体管,其可以使具有低电压晶体管的感测电路与存储器阵列的高电压隔离。在感测期间,BLS是导通的。BLC晶体管可以通过控制其栅极电压并且在晶体管的漏极上提供诸如Vdd的充分高的电压来对位线上的电压进行箝位。
BLC晶体管1428具有源极(S)侧和漏极(D)侧。针对INV晶体管1430的输入是针对LAT晶体管1432的输入的反相,LAT晶体管1432经由pMOS 1432的n阱的端子1434接收电源Vdd。这些晶体管连接到源极地(SRCGRD)节点1436。相似地,针对LAT晶体管1420的输入是针对INV晶体管1424的输入的反相,INV晶体管1424经由pMOS 1424的n阱的端子1422接收电源Vdd。
在一个路径中,BLX晶体管1412在COM2路径1418、COM3路径1411和QSW晶体管1406之间延伸,QSW晶体管1406接着连接到电源端子1404。在另一路径中,HLL晶体管1414和XXL晶体管1416在COM2路径1418和SEN晶体管1410之间延伸,SEN晶体管1410接着连接到电源端子BCP 1408。HLL晶体管1414在感测操作开始时设定SEN节点1454处的初始电压以建立SEN节点上的电压。在感测操作中控制XXL、SET和BUS以根据BUS 1468上的电压确定在放电时段之后SEN被放电到例如0V还是维持在Vdd。电容器1452可用于通过将处于传导状态的晶体管1410控制在导通状态,允许节点1408与位线连通,来存储确定是否应有源地将位线偏置在Vbcp处的数据。而且,如下文进一步讨论的,对于未选择的位线,Vbcp从Vdd-ΔV逐步升高到Vdd可以用作用于确定是否需要关于所选择的位线的耦合补偿的处理的一部分。
在一种可能的方法中,Vbcp节点1408连接到开关1402,开关1402选择提供Vdd处的输出或驱动电压的第一电源1401或者提供Vdd-ΔV处的输出或驱动电压的第二电源1403。电源可以例如1.7至2.5V的范围中。电源可以是分离的,或者可以提供使用两个输出的一个电源。控制信号SW可用于控制开关1402。作为所有感测电路的全局控制的电源和开关可以被设置在感测电路的组的边缘处。感测电路1490可以被控制为通过Vdd或Vdd-ΔV直接驱动表示未选择的NAND串的NAND串1450的位线1440,以提供ΔV逐步升压,使得在不能够使位线浮动的情况下,提供对所选择的位线的ΔV耦合的精确控制。
在一个可能的实现方案中,经由开关将公共控制信号SW发送到禁用位线的每个感测电路以选择1401或1403。可以在各个路径中将公共的Vdd或Vdd-ΔV提供给未选择的位线的每个感测电路。注意,晶体管1410在SEN的控制下,确定Vdd还是Vdd-ΔV可以传递到位线。
如果Vbcp固定在Vdd,则可以通过nMOS箝位,诸如通过BLC晶体管1428,来控制VBl。nMOS箝位提供与BLC栅极电压(Vgs)成比例的电平处的Vbl。通常,BLC箝位可用于在不使位线浮动的情况下设定位线上的电压。然而,在一些情形中,箝位BLC可以截止。例如,在将位线充电到设定电压的处理期间,Vbl可以在邻居位线充电时耦联。一旦电压被耦合到设定电压以上,则当Vgs下降到Vth以下时,BLC晶体管可以截止,使得位线浮动。浮动位线不是在受控电平处驱动的,而是采取基于例如浮动之前的过去的驱动电平的电平,并且实现诸如电容耦合。
特别地,如果通过对BLC晶体管1428的栅极进行偏置(例如,分别在Vdd-ΔV+Vth和Vdd+Vth处)来为未选择的位线提供Vdd-ΔV并且随后提供Vdd,则当慢编程模式存储元件的位线被充电到初始电平Vslow时,可以经由来自慢编程模式存储元件的位线的位线耦合来耦联未选择的位线。这可以使BLC晶体管1428截止。如果BLC晶体管1428的栅极电压超过其阈值电压(Vth)与其源极电压(Vbl)之和,则其将是导通的。如果未选择的位线的电压升高,则BLC栅极电压将不足以高到将BLC晶体管保持在导通状态。
用于解决该浮动问题的一种方法是由提供可切换的供电Vbcp的电源1401或1403分离地控制BLC晶体管的漏极电压。在最初时,对于未选择的位线,BLC晶体管的漏极电压在Vdd-ΔV处,并且当BLC栅极电压充分高到使BLC用作传输门时,这被传输到沟道。还可以通过电压源斜变率来控制预充电峰值电流Icc。BLC晶体管的漏极电压随后上升到Vdd。在逐步升高的CLK 1453的帮助下,SEN节点1454逐步升高足够高到在晶体管1410处使Vdd通过。可以回想,未选择的位线上的ΔV可用于有意地将耦合引入到所选择的位线以减慢它们的编程。
对于慢编程模式中的所选择的位线,SET晶体管1466可以经由晶体管INV 1424、LAT 1420、BLC 1428和BLS 1438向位线1440提供Vslow。COM2路径1418经由SET晶体管1466连接到总线端子1468用于对来自SEN节点1454的数据进行输入和输出。SEN节点1454经由电容器1452连接到CLK端子1453。SEN节点1454还经由晶体管1456耦合到INV路径1462,并且INV路径1462经由重置(RST_NCO)晶体管1464耦合到总线端子1468。晶体管1456经由STBn晶体管1458耦合到电源节点1460,STBn晶体管1458在感测期间接收选连通号。INV路径1462还经由STBn晶体管1484和下拉晶体管1486耦合到地。当STBn 1458转到0V时,SEN节点1454可以反转到INV节点1462。当BUS 1468处于0V时,INV节点1462可以通过晶体管RST_NCO 1464被初始化到0V。另一方面,如果INV节点需要被初始化到诸如Vdd的高电位,则当BUS 1468处于0V时,SEN节点1454将经由路径XXL 1416和SET 1466初始化到0。
在锁存器1471中,LAT路径1480是INV路径1462的反相。LAT 1480经由晶体管1478耦合到电源节点1476,并且经由晶体管1474和RST PCO晶体管1472耦合到电源节点1470。LAT 1480还经由下拉晶体管1482耦合到地。具有栅极STBn的晶体管1484切断上拉路径1456和1468相对下拉路径1484和1486之间的“飞行”。当INV需要通过RST_NCO路径1464更新到0时,晶体管RST_PCO 1472用于切断上拉路径。
图15示出了与图14的感测电路相关联的时间线。示出了时间点t0-11。时间线并非依据比例绘制。时间线在涵盖多个迭代的编程操作的单个迭代上延伸,并且一个或更多个验证操作(未示出)可以跟随由每个迭代的时间线涵盖的时段。
各波形与图14中的相同命名的部件对应。在所示出的时间段中QSW、HLL和XLL=0V。波形1502是BLX/BLC晶体管栅极偏置的电压。波形1504是SET晶体管栅极偏置的电压。波形1506是BUS的电压。波形1508是RST_NCO的电压。波形1509是感测节点SEN的电压。波形1510是STBn的电压。波形1512是INV的电压。波形1514是CLK的电压。波形1516是Vbcp。波形1518是未选择的位线的Vbl。波形1520是具有补偿的慢编程模式中的所选择的位线的Vbl。波形1522是当位线浮动时,具有补偿的快编程模式中的所选择的位线的Vbl。虚线表示浮动电压。波形1524是当位线接地时,不具有补偿的快编程模式中的所选择的位线的Vbl。通过考虑如下三个代表性的位线可以理解时间线:与禁用的或未选择的存储元件(第一存储元件)相关联的第一位线、与慢编程模式存储元件(第二存储元件)相关联的第二位线、和与快编程模式存储元件(第三存储元件)相关联的第三位线。
对于其中在t8处ΔV逐步升高之后Vpass升高的情况,波形1526是所选择的字线的电压(Vwl),并且波形1528是未选择的字线的电压。Δt是Vpass的升高时间。对于其中在t8处ΔV逐步升高之前Vpass升高的情况,波形1527是所选择的字线的电压,并且波形1529是未选择的字线的电压。波形1530或1531分别是当在t8处ΔV逐步升高之后或之前Vpass升高时的漏极选择栅极电压(Vgsd)。
在t1处,RST_NCO变高,允许地处的总线节点1458与INV路径1462连通,有效地将INV 1462重置到0V。在t2处,SET按照0号到7号感测电路的顺序串行地变高。在该实现方案中,诸如感测块500的公共部分590(图6)的一个电路在总线上串行地向八个感测电路(每个感测电路类似于感测模块580)提供电压,并且每个感测电路按顺序接收SET电压。
对于一些感测电路,当BUS处于0时允许SEN节点1454放电,或者对于其他感测电路,当BUS保持高时允许SEN节点1454不放电。在1510处,STBn变低,并且SEN节点值的反相被保存在INV节点1462处。
在t3处,波形1516指示Vbcp从0V升高到Vdd-ΔV,即初始电平。同时,波形1502指示BLX/BLC控制栅极电压从0V升高到电平Vsg,例如4-5V,其足以高到使BLX/BLC晶体管用作传输门,将Vdd-ΔV传递到未选择的位线(波形1518)。较之其中使用BLC箝位设定Vbl的情况,不存在使未选择的位线浮动的风险。如所提及的,如果Vblc较低,则位线将被箝位并且浮动。具体地,t3处的CLK的上升使SEN节点1454升压到高电平以接通SEN晶体管1410,使得在Vdd-ΔV处驱动未选择的位线。SEN晶体管1410和SGD 1442用作传输门。通过包括晶体管1430和1432的地路径,在t3处对于所选择的位线,Vbl=0V(波形1520、1522和1524)。
在t4处,SGD降低到如下电平:当Vbl充分低时,其允许漏极选择栅极导通,允许位线与沟道连通,或者当Vbl充分高时,其允许漏极选择栅极是不导通的,从而因为沟道从位线切断而使沟道浮动。
在t5处,RST_NCO和INV提供数据传输。对于慢编程模式位线,SET晶体管升高到Vslow+Vth,使得当在t6处SET晶体管与位线连通时,Vslow被提供给位线。
在t6处,BUS上升到Vdd(波形1506),并且慢编程模式位线的Vbl上升到Vslow(波形1520)。
在t7处,在一种选择中,Vwl(波形1529)随时间段Δt开始上升,并且在t8处达到Vpass。如前面在图13中描述的步骤1309和1310,可以相对于位线浮动时间t8调整Vpass上升时间t7。
在t8处,激活Vdd处的电源(波形1516)以驱动未选择的位线。引起ΔV逐步升高。控制信号SW可以控制开关1402以选择Vdd电源1401而非Vdd-ΔV电源1403。作为结果,慢编程模式存储元件的位线被较高地耦合(波形1520)。如讨论的,这是有利的,因为其抵消了对慢编程模式存储元件的沟道到浮栅的耦合。向慢编程模式存储元件的位线提供不能由它们的感测电路以其他形式直接提供的补偿。
如果例如通过使SRCGND浮动允许快编程模式存储元件的位线浮动,则这些位线和沟道也被较高地耦合(波形1522)。这也是有利的,因为其抵消了对快编程模式存储元件的沟道到浮栅的耦合。如果快编程模式存储元件的位线接地(波形1524),则它们保持在0V。由于抵消对快编程模式存储元件的沟道到浮栅的耦合常常不是重要的,因此这是可接受的。ΔV是可以针对特定类型的存储器装置进行最优设定、以提供期望水平的耦合的设计参数。
在实现期望的沟道电位的情况下,将编程脉冲施加到所选择的字线(波形1527),并且如预期的那样在补偿沟道到浮栅的耦合的情况下进行编程。
在其中没有早先施加Vpass的情况下,可以在t9处施加Vpass(波形1528),并且在t10处施加Vpgm(波形1526)。
Vsgd可以保持恒定而不像t9或t10所示的那样逐步升高。然而,在t9(波形1531,当使用Vwl波形1529和1527时)或t10(波形1530,当使用Vwl波形1528和1526时)处Vpass升高之后使Vsgd逐步升高具有一些益处,因为Vsgd处于确定能够从位线传递到沟道的电压的电平处(当Vsgd-Vth>Vbl时,Vchannel=Vbl)。在Vsgd较高的情况下,较大的电压可以从位线传递到沟道,因此将实现更大的减慢。但是,如果Vsgd过高,则这可能引入升压沟道的漏电,其中Vsgd的功能是切断沟道和位线之间的连接。沟道电容如此小,使得从沟道到位线的小漏电将是有害的并且导致编程干扰。对于禁用位线逐步升压,初始Vsgd应足够低到在Vdd-ΔV处阻挡从沟道到位线的漏电。在设定Vsgd时必须考虑邻近字线对SGD的耦合的效应,以防止升压沟道的沟道漏电。在沟道升压之后,位线升高到Vdd。Vsgd也可以升高到Vsgd(初始)+ΔV。由于位线电压升高到Vdd,这提供了将较大的电压从位线传递到沟道而不用担心升压沟道漏电的益处。
通常,当施加Vpass时Vsgd需要处于指定电平。Vpass和Vpgm的定时由沟道升压机制确定。如果Vpass支配沟道升压,则Vpass升高的时间相对于Vsgd定时是重要的。相似地,如果Vpgm支配沟道升压,则Vpgm升高的时间相对于Vsgd定时是重要的。Vsgd应充分高,使得位线与所选择的存储元件的沟道连通,但是应充分低,使得可以从未选择的存储元件的沟道切断位线。然而,Vsgd可以从t5到t9或t10低于该指定电平以避免从禁用位线的经由SGD晶体管的漏电压,并且确保沟道被切断。而且,可以提供Vpass升高的时间和Vsgd升高的时间之间的延迟,以允许使沟道升压稳定。关于Vsgd的该控制技术也可以与这里提供的、包括图16b、17b-d和18b的其他实施例一起使用。
来自邻居沟道的耦合可以影响SGD晶体管的Vth。通过这种来自未选择的升压沟道的耦合,使晶体管导通的Vth可以是较低的。因此,当由于增加的耦合而需要附加的电压时,SGD晶体管将自动地将较大的电压从位线传递到沟道。由于Vsgd被施加在所有所选择的漏极晶体管的栅极上,因此如果升压沟道彼此相挨着,则还可以使升压沟道泄漏到位线。折衷的解决方案是当位线低时保持Vsgd低,并且当位线电压高时,升高Vsgd。
图16a示出了替选的感测电路1699。该示例实现方案包括两个锁存器并且可以向位线提供三个电压,即(a)0V,(b)Vslow、Vslow+comp或Vcomp以及(c)Vdd-ΔV。参见图例1691,其指示哪些部件用于设定哪些电压。一个锁存器1619包括反相器1620和1622、LAT路径1621和INT路径1623,并且另一锁存器1635包括反相器1634和1632、FLG路径1629和INV路径1635。LAT路径1621是锁存器1619的非反相侧,并且FLG路径1629是锁存器1635的非反相侧。
NAND串1650连接到感测电路,并且包括存储元件1644、1646和1648,它们分别与例如字线WL63、WL62、…、WL0连通,并且经由SGD晶体管1642与位线(BL)1640连通。NAND串1650还包括源极选择栅极SGS 1649,其连接到多个NAND串的公共源极线1651。位线1640与BLS晶体管1616和BLC晶体管1614连通,BLC晶体管1614具有源极S和漏极D。BLC晶体管1614连接到BLY晶体管1612,BLY晶体管1612接着连接到总线1624。BLY晶体管1612还经由COM路径1645连接到FLA晶体管1604,FLA晶体管1604接着连接到FLG晶体管1602。Vdd处的电源节点1600连接到FLG和FLA晶体管。
HLL晶体管1606连接到感测(SEN)节点1611,并且在感测操作期间提供初始电压。SEN节点还经由电容器1609连接到时钟(CLK)节点1608,并且连接到晶体管1613的栅极。晶体管1613经由STR(选通)晶体管1615连接到总线1624,并且连接到CLK节点1608。总线1624在传输门1643之后经由LCO晶体管1618与锁存器1619连通。总线1624还经由ICO晶体管1626和FCO晶体管1628与锁存器1635连通。当发生牵涉锁存器的数据传输时,隔离(ISO)晶体管1617可以使包括锁存器1619和1635的右手侧的电路与左手侧的电路1699和位线隔离。具体地,ISO晶体管使BUS 1624与COM节点1645隔离。这使从BUS 1624到LAT 1621的数据传输与从FLG 1629经由BLY 1612和BLC 1614提供的位线偏置隔离,用于更高效的同时操作。对于进一步的信息,参见图17d中的波形1791。
在感测期间,可以提供从FLG 1629经由BLY 1612和BLC 1614到位线BL的位线偏置。例如,通过控制BLC可以提供诸如Vbl=0.4V的非零偏置。而且,BLY路径到位线的电压(例如,0.4V)可以不同于来自BUS(0或Vdd)的电压。通过STR 1615的路径而非HLL 1606的路径进行感测。HLL路径用于通过LAT锁存器使SEN电压数字化并且返回SEN。例如,对于2.5V电压源,LAT锁存器可以在1.2V处有跳变点(trip point)。SEN节点上的电压可以是0和2.5V之间的任何值。如果SEN电压在1.2V以上,则其将被锁存到2.5V。相似地,低于1.2V的SEN电压将在LAT锁存器中被锁存到0V。这种将连续电压范围传输到两个离散电压的处理被称为数字化。在这种针对和来自LAT锁存器的传输之后,数字化的电压将被存储在SEN节点上。STR路径用于使用当前感测进行更准确的感测。
路径1641用于通过BUS将lockout数据传输到FLG。FLG=0用于禁用,并且INV=0用于编程。路径1637用于通过FLG pMOS路径(1602)将位线充电到关于禁用位线的Vdd。ICO 1626保持高以提供快编程模式中的所选择的存储元件的固定接地(solid ground)。对于ICO=0V,路径1639用于将lockoutl数据从BUS 1624传输到LAT路径1621。
特别地,锁存器1619具有一个门控装置,其是LCO晶体管1618。总线1624可以通过LCO 1618将数据传输到锁存器1619的LAT路径1621。或者,总线可以通过ICO晶体管1626将数据传输到锁存器1635的反相侧的INV节点1631,或者经由FCO晶体管1628将数据传输到锁存器1635的正向侧的FLG节点1629。
对于慢编程模式存储元件,LCO 1618可以具有栅极电压Vslow+Vth以提供用于对位线充电的偏置电平Vslow。通常,LCO可以被箝位以获得期望的供电电压。作为另一示例,LCO可以具有栅极电压Vslow+comp+Vth以对慢编程模式存储元件的位线提供偏置电平Vslow+comp,偏置电平Vslow+comp对沟道到浮栅的耦合进行补偿。Vslow可以是例如0.6-0.8V,并且Vcomp可以是相当的,例如,0.2-0.6V。因此Vslow+comp可以是0.8-1.4V。Vfast+comp可以等于快编程模式的Vcomp。
注意,在感测操作期间,从SEN经由STR和FCO传输到FLG 1629的数据使其逻辑值跳变。例如,如果SEN=1(高),则FLG=0(低)。这是具有反相的感测。另一方面,从SEN经由HLL传输到LAT 1621的数据不使其逻辑值跳变。例如,如果SEN=1(高),则LAT=1(高)。这是没有反相的感测。
图16b示出了与图16a的感测电路相关联的编程的时间线。在该示例控制技术中,BLC晶体管1614用于将与Vdd一样高的电压从感测电路传递到位线,并且以不提供耦合补偿的方式操作感测电路。该时间线示出了关于禁用位线的电压(Vbl(inhibit))、没有补偿的慢编程位线的电压(Vbl(slow))和没有补偿的快编程位线的电压(Vbl(fast))。波形1660示出了BLC晶体管的电压。波形1662示出了t0-t2处的BUS 1624到FLG路径1629的数据传输以及t3-t4处的BUS 1624到LAT路径1621的数据传输。波形1664示出了禁用位线的位线电压(Vbl(inhibit))。当FLG=0时,Vbl(inhibit)被设定为Vdd。波形1666示出了Vbl(fast),使用LAT=0(低)将其设定在0V。波形1667示出了Vbl(slow),结合FLG=1(高)使用LAT=1(高)将其设定为高,即设定到Vslow。波形1668示出了施加到所选择的字线的电压,并且波形1670示出了施加到未选择的位线的电压。波形1672示出了施加到ICO晶体管的电压,其更新锁存器1635和FLG节点。波形1674示出了施加到LCO晶体管的、用于更新慢编程模式位线的LAT锁存器的电压。LCO电压在t3-t4处上升到满逻辑电平Vdd更新了LAT锁存器。t4和t7之间的LCO电压将位线电压供电箝位到诸如Vslow的指定的电平。这里,LCO电压是将诸如0.2至1.4V的电压传递到位线的模拟电压电平。
从t0到t2,FCO(波形1676)变高,允许进行BUS到FLG的传输。从t1到t3,ICO变高。在t2处,BLC上升到Vdd+Vth,使得Vbl(inhibit)=Vdd。从t2到t3,Vbl(fast)和Vbl(slow)处于0V。从t3到t4,LCO变高,使得进行BUS到LAT的数据传输。在BUS到LAT传输期间,从t3到t4,Vbl(fast)和Vbl(slow)浮动。在t4处,Vbl(slow)上升到Vslow。在t5处,施加Vpass(波形1670),并且在t6处,施加Vpgm(波形1668)。
图17a示出了后继编程中的、用于感测所选择的位线以确定是否需要耦合补偿的方法。如提及的,所选择的存储元件体验的沟道到浮栅的耦合取决于邻近的存储元件的数据式样。如果同一字线上的相邻的存储元件两者均未被选择,则较之仅一个相邻的存储元件位于同一字线上的情况或者最近的未选择的存储元件不与所选择的存储元件相邻的情况,耦合将是较大的。通过感测每个所选择的位线体验的实际耦合,可以关于是否提供补偿,和/或将提供的补偿的水平进行明智的判定。通过引用合并于此的美国专利7,215,574根据一个或全部两个邻居位线是否被闭锁来提供Vbl偏移。给定位线的感测放大器从左侧和右侧的邻居位线的感测放大器接收控制信号以确定它们是否被闭锁。然而,该方法需要附加的电路和布局面积以允许感测放大器彼此连通。这里提供的解决方案克服了这些缺陷。
在一种方法中,使未选择的位线的电压逐步升高以引入对任何邻近的所选择的位线的耦合,并且感测所选择的位线以确定耦合量。如果耦合量超过阈值,则将指示所选择的位线应通过使Vbl在编程期间上升指定的量来接收补偿的数据存储在锁存器或其他位置中。补偿可以施加到慢和/或快编程模式位线。
在示例处理中,编程操作开始于步骤1700处。编程操作的迭代开始于步骤1702处。步骤1704包括在使所选择的位线浮动的同时使未选择的位线的电压逐步升高。控制电路可以读取位线的锁存器以确定哪些未被选择,并且指令感测电路升高Vbl。相似地,控制电路可以读取位线的锁存器以确定哪些被选择,并且指令感测电路使位线浮动。步骤1706包括感测所选择的位线上的电压以确定来自未选择的位线的耦合的程度。可以使用任何类型的感测技术,包括电压或电流感测。步骤1708包括将每个所选择的位线识别成需要补偿或不需要补偿。该信息可以存储在感测电路的锁存器或另一位置中。需要补偿的耦合的阈值电平(T)可以基于当所选择的位线的一个或更多个相邻位线未被选择时实现的耦合量。
步骤1710包括通过将需要补偿的所选择的位线的电压升高到基线电平以上来为它们提供补偿。在一种方法中,考虑三种情形:(1)相邻位线两者均被禁用,(2)仅一个相邻位线禁用,或者(3)没有相邻位线禁用。针对每种情形提供位线偏置。例如,对于第一、第二和第三情况,可以分别使用0.5V、0.25V和0V。对于快编程模式,其中Vfast标称是0V,对于第一、第二和第三情况,分别有Vfast+comp=Vcomp=0.5V、0.25V或0V。对于慢编程模式,其中Vslow标称是0.6V,对于第一、第二和第三情况,分别有Vslow+comp=1.1V、0.85V或0.6V。
步骤1712包括在提供补偿的情况下向所选择的存储元件施加编程脉冲。步骤1714包括对所选择的位线执行验证操作。步骤1716包括使达到目标数据状态的位线闭锁。
在判定步骤1718中,如果存在下一编程迭代,则处理在步骤1702处继续。如果不存在下一编程迭代,则编程操作在步骤1720处结束。
作为示例,参照图16a的感测电路和图17b和17c的时间线来进一步解释图17a的处理。
图17b示出了与图16a的感测电路相关联的用于感测和编程的时间线。注意,这里各图中的图表不一定依照比例或者彼此成比例。这是控制感测电路1699以感测是否需要补偿并且诸如经由LCO晶体管1618(BLC晶体管仅是传输门)提供这种补偿的示例。时间线示出了禁用位线和所选择的位线的电压。提供了关于图16a的感测电路中的相同名称的部件的波形。在该情况下,当施加Vpgm时,Vbl(波形1734、1736和1737)未浮动。然而,未提供慢和快编程模式两者。
波形1730表示BLC晶体管的栅极电压。波形1732表示从BUS 1624到FLG路径1629以及从SEN到LAT路径1621的数据传输。波形1734表示禁用位线的Vbl(Vbl(inhibit))。波形1736表示所选择的位线的Vbl(Vbl(no comp)),其中通过感测确定不需要补偿(comp)。在该情况下,LAT=0。波形1737表示所选择的位线的Vbl(Vbl(comp)),其中通过感测确定需要补偿。在该情况下,LAT=1。波形1738表示施加到所选择的字线的电压。波形1739表示施加到未选择的字线的电压。波形1742表示这样的电压:其施加到BLZ晶体管的栅极以确定从t5到t6在SEN节点和耦合位线之间的电荷共享,用于感测。波形1744表示施加到CLK节点1608的电压,其中该电压逐步升高以增强SEN节点用于感测。波形1746表示这样的电压:其施加到LCO晶体管的栅极以引起从t7到t8的SNE到LAT的数据传输。波形1748表示这样的电压:其施加到FCO晶体管的栅极以引起从t0到t3的BUS到FLG的数据传输。
在t0-t3处的BUS到FLG的数据传输之后,BLC在t3处上升到Vdd-ΔV+Vth。结果,Vbl(inhibit)上升到Vdd-ΔV。在t4处,BLC上升ΔV,达到Vdd+Vth。结果,Vbl(inhibit)上升到Vdd。如讨论的,基于ΔV和耦合比,禁用位线中的逐步升高的电压耦合到浮动的所选择的位线,也使它们的电压增加。例如,波形1736提供了其中Vbl耦合到在阈值T以下的电平的情况,而波形1737提供了其中Vbl耦合到在阈值T以上的电平的情况。对于波形1736,T'是可以使用的第二阈值的示例。可以感测所选择的位线是否已体验不同的耦合的阈值水平,在该情况下可以提供相应的不同水平的补偿,例如,当存在较大的耦合时提供较大的补偿。例如,较低的耦合阈值(T)可以对应于仅一个相邻的未选择的位线,在该情况下在编程期间施加第一位线偏置,并且较高的耦合阈值(T')可以对应于两个相邻的未选择的位线,在该情况下在编程期间施加较高的第二位线偏置。
通过感测电路提供不同的补偿电压,并且可能需要更多的与LAT锁存器1619和LCO晶体管1618相似的锁存器电路。为了简化,图16a中所示的电路不能提供多于一个补偿电压。相反地,图14和15中所示的电路和时间线可以提供覆盖从0到实现全补偿所需的最大电压的电压范围的连续补偿电压。下文进一步讨论的图17c中提供的方法提供了更多的受控和数字化补偿,而在编程期间没有不受控的耦合。
虚线表示浮动电压。从t5到t6,BLZ晶体管接通用于感测。通过LAT=H(高)将耦联在T以上的位线锁存,并且通过LAT=0(低)将不耦联在T以上的位线锁存。图16a中的LAT路径162的更新是经由HLL1606、ISO 1607和LCO 1618实现的,这与STR(选通)路径1615不同,用于防止数据极性翻转。
感测可以使用例如用于确定在与电容器1609连接的SEN节点161和位线电容之间是否出现电荷共享的技术。电容器的电压将基于BLZ晶体管接通或断开而分别改变或不改变。如果位线电平低于由BLZ晶体管设定的阈值(T)(T+Vth),则具有小电容的SEN节点将处于与位线电压相同的电平。如果位线电压高于T阈值,则将SEN留在Vdd处,即其预充电电平。在一种可能的方法中,可以向BLZ晶体管1610或另一晶体管提供栅极电压T+Vth,使得当具有位线到位线的耦合的Vbl小于或等于T时,BLZ晶体管是导通的,或者当具有位线到位线的耦合的Vbl大于T时,BLZ晶体管是不导通的。电容器1609在最初时被充电到Vdd。例如,如果T=0.8V,则可以利用0.8V加上晶体管的Vth(例如,1V)、即总共1.8V来对BLZ晶体管进行偏置。如果位线耦联到0.9V,则BLZ晶体管从感测电路切断位线(由于1.8-1.0<0.9)。当感测节点被充电到诸如Vdd的电压时,由于BLZ晶体管是不导通的,因此该电压将保持。当电容器的电压未显著下降时,可以确定BLZ晶体管是不导通的。另一方面,如果位线耦联到0.7V,则BLZ晶体管将是导通的,使得位线可以与感测电路连通(由于1.8-1.0>0.7),并且由于位线电容比电容器1609的电容高得多,因此感测节点电压将显著下降到等于Vbl。
在t8处,不需要补偿的位线被拉到地(波形1736),并且通过提供在Vth+补偿电平处的LCO晶体管的控制栅极,在指定的补偿电平处(波形1737)对需要补偿的位线进行预充电。因此,当施加Vpgm时,在一个电平处,例如,在0V(波形1736)处提供未耦联到阈值T的所选择的非易失性存储元件的各个位线的电位,并且在另一较高的电平处,例如,在Vcomp(波形1737)处提供耦联到阈值T的所选择的非易失性存储元件的各个位线的电位。
在t9处将Vpass施加到字线,并且在t10处将Vpgm施加到所选择的字线。当施加Vpgm时,位线不浮动,但是有利地将位线设置在指定电平处。在这种方法中,当未使用慢编程模式时,所选择的位线通常指并且可以是例如快编程模式位线。当施加Vpgm时,当不需要补偿时Vbl有利地在0V(波形1736)处,并且当需要补偿时,Vbl有利地在指定的非零电平(波形1737)处。
图17c示出了与图16a的感测电路相关联的用于感测的时间线。这是控制图16a的感测电路1699以感测是否需要补偿并且诸如经由LCO晶体管1618提供这种补偿的另一示例。时间线包括禁用位线的电压、具有和没有补偿的快编程位线的电压、以及具有和没有补偿的慢编程位线的电压。该实施例使V(slow+comp)浮动(波形1762),而所有三个其他的电压被有源地偏置在例如0V、Vslow和Vcomp(=Vfast+comp=0V)处。这是当感测电路不允许在不同电平处驱动所有位线时选择将驱动哪些位线以及将使哪些位线浮动的设计权衡的示例。具体地,当未指示补偿时,该技术选择驱动慢编程模式位线,并且当指示补偿时,该技术选择使慢编程模式位线浮动。该技术还选择在一个电平处驱动快编程模式位线,不论是否需要补偿。下文进一步讨论的图17d提供了替选的技术。
注意,如示例实现方案中讨论的可以通过感测指示补偿,或者通过其他手段指示补偿。例如,从控制数据可以获知所选择的和未选择的位线的位置。前面讨论的美国专利7,215,574提供了一种可能的方法,其中感测放大器交换指示位线被选择还是未被选择的控制数据。另一方法是基于中央控制对未选择的位线与每个所选择的位线的接近度的了解,使中央控制向每个感测电路提供直接设定补偿水平或者没有补偿的数据。
对于四种位线情况,锁存器条件如下。在第一情况下,对于禁用位线(波形1754),FLG=0并且LAT=1。在第二情况下,对于经补偿的位线(波形1758或1762),FLG=1并且LAT=1。对于具有补偿的慢编程模式位线,LCO将是Vslow+comp+Vth。从t8到t9对位线充电。在第三情况下,对于Vbl(slow)(波形1760),FLG=1并且LAT=1。当在t10之后对位线充电时,对于慢编程模式位线,LCO将处于Vslow+Vth。此时,经补偿的位线在放电时段中放电到0V或者保持在经补偿的电平(波形1758)或者略微耦联到Vslow+comp+(波形1762)。在第四情况下,对于接地位线(波形1756),FLG=1并且LAT=0。
波形1750表示BLC晶体管的栅极电压。波形1752表示从t0到t3的从BUS 1624到FLG路径1629的数据传输、从t7到t8的从SEN节点1611到LAT路径1621的数据传输、以及从t9到t10的从BUS 1624到LAT路径1621的数据传输。波形1754表示Vbl(inhibit)。波形1756表示Vbl(fast),其中通过感测未指示补偿。在该情况下,LAT=0。波形1758表示快编程模式位线的Vbl(Vbl(fast+comp)=0V),其中通过感测指示需要补偿,但是对于其中Vth远离目标Vth的情况,当LAT被第二次更新时经补偿的电压被放电。波形1760表示慢编程模式位线的Vbl(Vbl(slow)),其中通过感测未指示补偿。通过将LCO栅极设定到Vslow+Vth,从t10到t13,Vbl(slow)=Vslow。波形1762表示所选择的慢编程模式位线的Vbl(Vbl(slow+comp)),其中通过感测指示需要补偿。
波形1764表示施加到所选择的字线的电压。波形1766表示施加到未选择的字线的电压。波形1767表示施加到HLL晶体管1606的电压。波形1768表示施加到ICO晶体管的栅极以在FLG被设定到Vdd的情况下将非禁用位线保持在地的电压。波形1770表示施加到BLZ晶体管的栅极以从t5到到t6对用于感测的电容器1609放电的电压。波形1772表示施加到CLK节点1608以使SEN节点升压用于更新LAT的电压。波形1774表示施加到LCO晶体管的栅极的电压。从t7到t8,LCO引起BUS到LAT的数据传输。从t8到t13,LCO被设定成提供期望的Vbl。例如,LCO被设定在用于对编程模式位线进行补偿的电平处。波形1776表示施加到FCO晶体管的栅极以在FCO为高时引起BUS到LAT的数据传输的电压。
在t0-t3处的BUS到FLG的数据传输之后,BLC在t3处上升到Vdd-ΔV+Vth。结果,Vbl(inhibit)上升到Vdd-ΔV。在t4处,BLC上升ΔV,达到Vdd+Vth。结果,Vbl(inhibit)上升到Vdd。基于ΔV和耦合比,禁用位线中的电压上升耦合到浮动的所选择的位线Vbl(fast+comp)和Vbl(slow+comp),增加了它们的电压。不超过阈值的针对Vbl(fast)的小的耦合量被示出作为示例。同样作为示例,基本上没有耦合影响Vbl(slow)。虚线表示浮动电压。从t4到t5,HLL为高以将SEN节点充电到Vdd。从t5到t6,BLZ晶体管接通(使其导通)用于感测,并且从t7到t8,HLL为高以引起用于设定锁存器1619的SEN到LAT的传输。
在t8处,未指示补偿的Vbl(fast)位线被拉到地(波形1756)。在t8-t9处,在Vbl(slow)位线接地(波形1760)的同时,在指定电平处对位线1758和1762进行预充电。LCO被设定在Vslow+comp+Vth处以提供Vbl(slow+comp)=Vslow+comp。从t9-t10,LCO逐步下降到Vdd+Vth(>Vslow+Vth)以执行从BUS到LAT的数据传输。在t10处,Vbl(fast+comp)也被充电到地,并且由于LCO=Vslow+Vth,Vbl(slow)=Vslow。注意,在t10处Vbl(slow)的增加耦联Vbl(slow+comp)。
例如,如讨论的,对于(1)相邻位线两者均禁用,(2)仅一个相邻位线禁用,或者(3)没有相邻位线禁用,Vbl(slow+comp)可以分别是1.1V、0.85V或0.6V
在t11处将Vpas施加到字线,在t12处将Vpgm施加到所选择的字线。在该情况下,当施加Vpgm时,Vbl(slow+comp)位线浮动,而其他位线不浮动。
因此,当施加Vpgm时,在0V处提供未耦联到阈值T的Vbl(fast),在Vslow处提供未耦联到阈值T的Vbl(slow),并且在Vslow+comp或Vslow+comp+处提供未耦联到阈值T的Vbl(slow+comp)。Vslow+comp+表示由于Vbl(slow)在t10处从0V逐步升高到Vslow(波形1760)引起的来自Vslow+comp的耦联。该耦联对于数据式样是特定的。
图17d示出了与图16a的感测电路相关联的感测的另一时间线。这是控制图16a的感测电路1699感测是否需要补偿并且提供这种补偿的另一示例。时间线包括禁用位线的电压、具有和没有补偿的快编程位线的电压、以及具有和没有补偿的慢编程位线的电压。该实施例使禁用位线浮动,而三个其他的电压被有源地偏置(例如,偏置在0V、Vbl(slow)和Vbl(slow+comp)处)。
这是当感测电路不允许在不同电平处驱动所有位线时选择将驱动哪些位线以及将使哪些位线浮动中的设计权衡的另一示例。具体地,当未指示补偿时,该设计选择在一个电平处驱动慢编程模式位线,并且当指示补偿时,该设计选择在另一电平处驱动慢编程模式位线。该技术还选择在一个电平处驱动快编程模式位线。该技术使Vbl(inhibit)浮动。
应用如下步骤:(a)感测浮动位线,并且将感测结果锁存在FLG而非LAT中。利用来自BUS的慢编程信息对LAT进行更新。使用隔离晶体管ISO 1617使BUS和LAT之间的数据传输操作与位线充电操作隔离,使得可以同时执行这两个操作。(b)通过接通(使其导通)HLL和LCO(晶体管)利用LAT数据对SEN节点进行更新。(c)对于慢编程模式位线,将BLC降低到Vslow+comp+Vth,设定LCO=Vslow+Vth,并且将位线充电到该电压。(d)开始使字线电压斜变以执行编程。
对于四种位线情况,锁存器条件如下。在第一情况下,对于禁用位线(波形1782),FLG=0并且LAT=1,并且在t4和t8之间禁用位线被充电到Vdd。在第二情况下,对于经补偿的位线(波形1784和1786),在t8之后FLG=0并且LAT=1。在t8之后,对于具有补偿的慢编程模式位线,BLC=Vslow+comp+Vth。在第三情况下,对于没有补偿的慢编程模式位线(波形1785),FLG=1并且LAT=1。对于没有补偿的慢编程模式位线,LCO=Vslow+Vth。在t10之后对位线充电。此时,经补偿的位线被放电到0V并且禁用位线略微耦联。慢编程位线和slow+comp位线两者都被有源地偏置以避免耦合。在第四情况下,对于接地位线(波形1783),FLG=1并且LAT=0。
波形1780表示BLC晶体管的栅极电压。波形1781表示从t0到t3的从BUS 1624到FLG路径1629的数据传输、从t5到t6的从BUS到LAT路径的数据传输、以及从t7到t8的从SEN节点到FLG路径的数据传输。使用与图17c相似的波形名称,波形1782表示Vbl(inhibit),波形1783表示Vbl(fast),其中LAT=0,波形1784表示Vbl(fast+comp),并且波形1785表示Vbl(slow)。通过将LCO栅极设定到Vslow+Vth,在t8之后Vbl(slow)=Vslow。波形1786表示Vbl(slow+comp)。
波形1787表示施加到所选择的字线的电压。波形1788表示施加到未选择的字线的电压。波形1789表示施加到STR晶体管1615的电压。波形1790表示施加到BLL晶体管的栅极的电压。波形1791表示施加到ISO晶体管的栅极的电压。波形1792表示施加到ICO晶体管的栅极的电压。波形1793表示施加到BLZ晶体管的栅极以从t5到t6使用于感测的电容器1609放电的电压。波形1794表示施加到CLK节点1608的电压。波形1795表示施加到LCO晶体管的栅极的电压。从t5到t6,LCO引起BUS到LAT的数据传输。从t9到t13,LCO被设定成提供期望的Vbl。波形1796表示施加到FCO晶体管的栅极以在FCO为高时引起BUS到FLG和SEN到FLG的数据传输的电压。
在t0-t3处的BUS到FLG的数据传输之后,BLC在t3处上升到Vdd-ΔV+Vth。结果,Vbl(inhibit)上升到Vdd-ΔV。在t4处,BLC上升ΔV,达到Vdd+Vth。结果,Vbl(inhibit)上升到Vdd。基于ΔV和耦合比,禁用位线中的电压上升耦合到浮动的所选择的位线Vbl(fast+comp)和Vbl(slow+comp),增加了它们的电压。不超过阈值的针对Vbl(fast)的小的耦合量被示出作为示例。同样作为示例,基本上没有耦合影响Vbl(slow)。虚线表示浮动电压。从t5到t6使BLZ晶体管接通用于感测。从t6到t7,HLL和ISO变高以根据LAT锁存器更新SEN节点。从t7到t8,STR为高以引起SEN到FLG的传输。在锁存器更新BUS→FLG、BUS→LAT和SEN→FLG期间,反向连接的反相器1622和1632(图16a)被禁止以避免冲突。在SEN根据LAT 1619更新期间,反向连接的反相器1622有效以确保在LAT=0的情况下LAT将覆写SEN。
在t8处,对于具有补偿的慢编程模式位线,BLC被设定在Vslow+comp+Vth处,使得在波形1786处提供Vslow+comp。对于具有补偿的快编程模式位线,通过LAT=0将位线放电到地。LCO被设定在Vslow+Vth处,使得在波形1785处提供Vslow。未指示补偿的Vbl(fast)位线被拉到地(波形1783)。由于Vbl(slow)(波形1785)和Vbl(slow+comp)(波形1786)在t8的逐步升高,Vbl(inhibit)(波形1782)可以耦联到大于Vdd的电平Vdd+。
在t11处将Vpas施加到字线,在t12处将Vpgm施加到所选择的字线。在该情况下,当施加Vpgm时,Vbl(inhibit)位线浮动,而其他位线不浮动。
注意,如果图16a被修改成如图14中所示的包括Vdd-ΔV和Vdd处的电源,则可以修改与图16a的感测电路相关的图16b、17b-d的时间线的技术。在该情况下,BLC可以被设定为高以将Vdd-ΔV和Vdd传递到位线而非使用BLC对位线电压箝位。
图18a示出了另一替选感测电路1899。在该电路中,驱动电压用于具有补偿的慢编程模式位线。相似的双电压驱动技术也可以在图14中所示的感测电路中实现。感测电路1899与图16a的电路相同,除了添加了晶体管1807、电源节点1805以及在Vslow+comp处提供输出的电源1803。Vcomp可以在例如0.2-0.6V的范围内可调,并且Vslow可以在例如0.2-0.8V的范围内可调,使得Vslow+comp可以在0.4-1.4V的范围内可调。图18a中的编号相同的元件对应于图16a中的元件。
通过使用一个或更多个电源来驱动所选择的位线,较之使位线浮动的技术可以精确地设定电平。电源1803可以耦合到位线,使得在指定电平Vslow+comp处驱动所选择的位线,除了补偿沟道到浮栅的耦合之外,这为慢编程模式提供了适当的Vbl。
此外,对于没有补偿的慢编程模式位线,可以通过向LCO晶体管1618施加Vslow+Vth来向位线提供Vslow,使得在路径1825上提供Vslow并且Vslow耦合到位线。另一选择是除了路径1825上的Vslow之外,将来自另一电源的Vcomp连接到位线,而非将电源1803连接到位线。参见图例1891,其指示哪些部件用于设定哪些电压。通过适当地控制感测电路1899,可以由电源Vslow+Vcomp直接驱动位线1640和表示所选择的NAND串的NAND串1650的沟道。在该情况下,可以在没有使位线浮动的风险的情况下提供对位线的精确控制。
可以如下操作感测电路以提供四个电源。
a)将lockout数据传输到FLG锁存器1635。
b)如果FLG=0用于禁用位线,则将位线预充电到Vdd-ΔV(由BLC电压控制);在ICO=H(高)以通过INV下拉时,其他位线是固定GND。
c)在FLG=1的情况下断开ICO以使位线浮动;增加BLC电压以传递Vdd。
d)在位线耦联之后;接通BLZ以执行电压感测并且将结果存储在具有电容器的SEN节点上。通过CLK节点使感测结果升压以确保其足够高到针对补偿的情况将LAT设定为高。
e)在LAT处使感测结果从模拟电压变换成数字电平。数字化电压被传输回SEN节点并且被存储以备未来使用。因此,所选择的位线的感测电压被感测、数字化并存储,并且随后当施加Vpgm时,响应于所存储的数据,在基于感测的各个电平处提供所选择的位线的电压。
如果LAT=1,则提供耦合补偿;如果LAT=0,则不提供耦合补偿。使用电容器1609保存数据。
f)通过BUS将lockoul数据从数据锁存器传输到LCO锁存器。
g)仅当LAT=0时接通HLL以更新SEN节点。
h)Vbcp节点1805从浮动变为偏置电压以提供补偿电压Vcomp+Vslow。Vslow可以由LCO提供。
i)(在0V、Vslow、Vslow+comp和Vdd处)有源地向位线提供四个不同的位线电压,其中每个位线被偏置到四个电压之一。使字线电压斜变以开始编程。
图18b图示了与图18a的感测电路相关联的用于感测和编程的时间线。这是控制感测电路1899感测是否需要补偿并且经由专用电源提供这种补偿以提供精确控制的另一示例。时间线包括禁用位线的电压、具有和没有补偿的快编程位线的电压、以及具有和没有补偿的慢编程位线的电压。
通常,t0-t3是其中从感测电路切断位线的闭锁时段,t3-t4是位线预充电时段,t4-t7是其中感测来自邻居位线的耦合的感测时段,t7-t8、t9-t10以及t12-t13是数据传输时段,并且t13-t16是其中对位线充电并且进行编程的时段。
波形1860表示BLC晶体管的栅极电压。波形1862表示t0到t3之间的从BUS 1624到FLG节点1629的数据传输、在t7到t8之间的从SEN节点1611到LAT节点1621的数据传输、在t9到t10之间的从LAT节点回到SEN节点以将SEN更新到数字电平的数据传输以及在t11到t12之间的从BUS 1624到LAT节点1621的数据传输。波形1864表示Vbl(inhibit)。波形1866表示Vbl(fast),其中LAT=0。波形1868表示Vbl(fast+comp)。波形1870表示Vbl(slow)。从t13到t16通过BLC控制Vbl(slow)。波形1872表示Vbl(slow+comp)。
波形1874表示施加到所选择的字线的电压。波形1876表示施加到未选择的字线的电压。波形1878表示施加到ICO晶体管的栅极的电压。波形1880表示施加到BLZ晶体管的栅极以从t5到到t6对用于感测的电容器1609放电的电压。波形1882表示施加到CLK节点1608的电压。CLK信号在t7到t9之间在位线耦合感测期间逐步升压并且再一次被需要用于使SEN升压,使得晶体管1807变为导通,将Vbcp传递到位线。波形1884表示施加到LCO晶体管的栅极以引起从t7到t8的SEN到LAT的数据传输,从t9到t10的LAT到SEN的数据传输以及从t11到t12的BUS到LAT的数据传输,并且在t13之后向位线提供慢编程电压的电压。在t13之后LCO=Vslow+Vth以向没有补偿的慢编程模式存储元件的位线提供Vslow。波形1886表示施加到FCO晶体管的栅极以在FCO为高时引起BUS到FLG的数据传输的电压。波形1888表示施加到HLL晶体管的栅极以首先在时段t7-t10期间将感测结果从SEN传输到LAT锁存器并且从LAT传输到SEN节点,并且随后从t12到t13在LAT=0时在不需要补偿的情况下使SEN节点放电的电压。
HLL晶体管用于进出SEN电容器1609的数据传输。在将感测数据从SEN传输到LAT之后,正被锁存的LAT信号是数字信号,并且在t9到t10之间被传输到电容器上的动态锁存器上。通过将HLL设定成高,在SEN处保存Vdd。如果不需要补偿,则电容器处于0V。如果需要补偿,则电容器将存储Vdd。SEN节点1611连接到电容器,并且当SEN为高时使晶体管1807变为导通以将节点1805连接到位线,或者当SEN为低时使晶体管1807变为不导通以使Vbcp节点1805从位线断开连接。晶体管1807具有连接到节点1805和电源1803的漏极、连接到位线的源极、以及连接到感测节点1611的栅极。当FLG=0时,FLG将向位线提供Vdd。
从t12到t13,LAT将仅提供Vslow并且电源1803将向位线提供Vslow+comp。
t12-t13的lockoutl传输指示位线是否处于慢编程模式。这里,利用新数据对LAT进行不止一次刷新。在lockoutl传输结束时,在t12-t13,对于fast+comp的情况,SEN再次被刷新以将SEN放电到0。接收Vslow的位线仍具有LAT=1。
对于禁用位线,FLG=0,LAT=1并且SEN=1,其中晶体管FLG 1602向位线提供Vdd。对于没有补偿的快编程模式位线,FLG=1,LAT=0并且SEN=0,其中LAT锁存器1619向位线提供地。对于没有补偿的慢编程模式位线,FLG=1,LAT=1并且SEN=0,其中LAT锁存器1619提供Vslow。对于具有补偿的慢编程模式位线,FLG=1,LAT=1并且SEN=1,其中SEN晶体管1807提供Vslow+comp。LAT将仅通过LCO晶体管控制向位线提供Vslow。
因此,有三个数据锁存器保持数据,即FLG、LAT和电容器。基于这三个值,可以设定位线电压。在所有位线电压建立之后,在t13处开始,执行升压和编程。
同时,LAT=0V还将位线下拉到地。因此,将感测节点刷新成等于零确保了不会将Vcomp施加在位线上。经补偿的位线仅必须放电到地,但是通过LAT=0V激活放电路径。对于放电路径,必须经由反相器或地晶体管,但是Vcomp电源1803仅是电压源。即使感测节点已处于0V,这仍不能保证位线将被放电到零,因此放电必须经由LAT晶体管。
注意,第一和第二HLL脉冲具有不同的幅度,但这不是必需的。不同的幅度可用于在转移感测节点以传递Vdd时传递Vdd。但是当SEN仅被放电到地时,对于HLL不需要高电压。例如,当传递Vdd时,HLL仅需要处于Vdd+Vth。通常Vth约为1V。如果Vdd=2.5V,则HLL=3.5V。当HLL是低电压晶体管时,这可以引起HLL上的某种应力。可以使用可切换的电压,使得当希望传递Vdd时,可以在HLL上使用3.5V,但是如果仅希望传递0V,则可以使用2.5V以减少HLL晶体管上的应力。
波形1890表示当SEN节点在感测期间未被放电时的SEN节点处的电压,并且波形1892表示当SEN节点在感测期间或者更新期间被放电时的SEN节点处的电压。波形1894表示当Vbcp上升到Vslow+comp时,图18a中的节点1805处的电压。
在t0-t3处的BUS到FLG的数据传输之后,BLC在t3处上升到Vdd-ΔV+Vth。结果,Vbl(inhibit)上升到Vdd-ΔV。在FLG=0的情况下由FLG路径1629提供Vbl(inhibit)。同时LAT=1(高)。在t4处,BLC上升ΔV,达到Vdd+Vth。结果,Vbl(inhibit)=Vdd。根据ΔV和耦合比,禁用位线中的电压上升耦合到浮动的Vbl(fast+comp)和Vbl(slow+comp),增加了它们的电压。不超过阈值的针对Vbl(fast)的小的耦合量被示出作为示例。同样作为示例,基本上没有耦合影响Vbl(slow)。虚线表示浮动电压。从t5到t6,BLZ晶体管接通用于感测。
在t8处未指示补偿的Vbl(fast)位线被拉到地(波形1866),而在t13处指示补偿的Vbl(fast+comp)位线被拉到地(波形1868)。在t13-t16处在指定电平处对位线进行预充电。对于波形1870,当由于感测操作的放电时段中的感测节点的显著放电引起SEN=0(低)时,这指示耦合是低的,使得不需要补偿。因此,SEN=低致使晶体管1807不导通,使得从电源节点1805从位线切断。另一方面,当由于放电时段中的感测节点的不明显的放电引起SEN=高时,这指示耦合是高的,使得需要补偿。因此,SEN充分高以致使晶体管1807导通,使得电源节点1805连接到位线。在SEN和LAT两者均为高的情况下,存在提供给位线的两个电压。一个电压是来自LCO路径的Vslow,并且另一个来自晶体管1807。由于电源Vbcp=Vslow+comp,其高于Vslow,因此LCO晶体管将处于断开(不导通)条件。最终,仅存在提供位线电位的来自Vbcp的一个电源。
当SEN=低时,LCO向位线提供Vslow。对于波形1872,设定SEN=1(高)以使晶体管1807导通,用作传输门,使得电源节点1805耦合到位线。对于波形1866和1868,设定SEN=0(低)以使晶体管1807不导通,使得从位线切断电源节点1805。再者,LAT=0并且FLG=1。在t14处将Vpass施加到字线,并且在t15处将Vpgm施加到所选择的字线。有利地,当施加Vpgm时除了位线将浮动之外不用关注其他。为了精确控制,在指定电平处驱动位线,包括具有或没有补偿的慢编程模式。
注意,如果图18a被修改成如图14中所示的包括Vdd-ΔV和Vdd处的电源,则可以修改涉及图18a的感测电路的图18b的时间线的技术。在该情况下,BLC可以被设定为高以将Vdd-ΔV和Vdd传递到位线而非使用BLC对位线电压箝位。相似地,如图18a中所示,可以修改图14和16a的感测电路以包括Vcomp处的电源。
在一个实施例中,一种存储系统包括:存储元件集合;与每个存储元件相关联的相应的位线,其中相应的位线包括所选择的位线和未选择的位线;以及一个或更多个控制电路。为了针对所述存储元件集合执行多迭代编程操作的迭代,所述一个或更多个控制电路执行以下操作:(a)使未选择的位线的电压逐步升高,并且感测所选择的位线的电压,以针对每个所选择的位线确定所选择的位线是(i)没有响应于逐步升压而耦联到至少第一电平,其指示不存在相邻的未选择的位线,还是(ii)响应于逐步升压而耦联到至少第一电平,其指示存在至少一个相邻的未选择的位线;以及随后在基于感测的各个电平处提供所选择的位线的电压,并且同时将编程脉冲施加到所述存储元件集合。
在另一实施例中,一种在存储系统中编程的方法包括:针对存储元件集合执行多迭代编程操作的迭代,每个存储元件与相应的位线连通,并且相应的位线包括所选择的位线和未选择的位线;执行迭代包括:使未选择的位线的电压逐步升高,并且感测所选择的位线的电压,以针对每个所选择的位线,确定所选择的位线:(i)没有响应于逐步升压而耦联到至少第一电平(T),其指示不存在相邻的未选择的位线,还是(ii)响应于逐步升压而耦联到至少第一电平,其指示存在至少一个相邻的未选择的位线,以及随后,在基于感测的各个电平处提供所选择的位线的电压,同时将编程脉冲施加到所述存储元件集合。
在另一实施例中,一种存储系统包括与位线集合相关联的存储元件集合,该存储元件集合包括与所选择的位线相关联的所选择的存储元件和与未选择的位线相关联的未选择的存储元件。还提供了一个或更多个控制电路。在存储元件集合的编程操作中,一个或更多个控制电路:(a)使未选择的位线的电压逐步升高以引入对所选择的位线的耦合,(b)感测引入耦合时的所选择的位线的电压,以确定耦合的程度,以及(c)在将编程脉冲施加到所选择的存储元件和未选择的存储元件时,基于耦合的程度设定所选择的位线上的电压。
前面的详细描述是出于说明和描述的目的而进行的。并非旨在是无遗漏的或者限于所公开的准确形式。考虑到以上教导,许多修改和变化是可能的。所描述的实施例被选择的目的是最佳地说明本技术的原理及其实际应用,从而使本领域技术人员能够在各种实施例中通过适于预期特定用途的各种修改来最佳地利用本技术。本技术的范围应由所附权利要求来限定。

Claims (24)

1.一种非易失性存储系统,包括:
存储元件集合(400,450);
与每个存储元件相关联的相应的位线(406,407,408),相应的位线包括所选择的位线和未选择的位线;以及
一个或更多个控制电路(510,550),为了针对所述存储元件集合执行多迭代编程操作的迭代,所述一个或更多个控制电路执行以下操作:(a)使未选择的位线的电压逐步升高,并且感测所选择的位线的电压,以针对每个所选择的位线确定所选择的位线是(i)没有响应于逐步升压而耦联到至少第一电平(T),其指示不存在相邻的未选择的位线,还是(ii)响应于逐步升压而耦联到至少第一电平,其指示存在至少一个相邻的未选择的位线;以及(b)随后在基于感测的各个电平(Vbl(comp),Vbl(no comp))处提供所选择的位线的电压,并且同时将编程脉冲施加到所述存储元件集合。
2.根据权利要求1所述的存储系统,其中,当所述一个或更多个控制电路将编程脉冲施加到所述存储元件集合时,在一个电平(Vbl(nocomp))处提供未耦联到至少第一电平的所选择的位线的电压,并且在另一更高的电平(Vbl(comp))处提供耦联到至少第一电平的所选择的位线的电压。
3.根据权利要求1或2所述的存储系统,其中:
所选择的位线的电压被感测、数字化并且存储为数据;以及
所述一个或更多个控制电路响应于所存储的数据,在基于感测的各个电平处提供所选择的位线的电压。
4.根据权利要求1或2所述的存储系统,其中,为了执行所述迭代,所述一个或更多个控制电路还执行以下操作:(c)对于每个所选择的位线,确定所选择的位线是否响应于逐步升压而耦联到所述第一电平(T)以上的至少第二电平(T'),其指示存在两个相邻的未选择的位线,以及(d)在将编程脉冲施加到所述存储元件集合时,在一个电平处提供耦联到所述第一电平但未耦联到所述第二电平的所选择的位线的电压,并且在另一更高的电平处提供耦联到所述第二电平的所选择的位线的电压。
5.根据权利要求1或2所述的存储系统,其中:
每个所选择的位线与相应的感测电路(1699,1899)连通,所述感测电路具有感测节点(1611)、锁存器(1635)和作为所述锁存器的门控装置的锁存器晶体管(1628);
在每个感测电路中,通过将数据从所述感测节点经由所述锁存器晶体管传输到所述锁存器,来感测所选择的位线的电压;以及
从所述感测节点经由所述锁存器晶体管传输到所述锁存器的数据被反相。
6.根据权利要求1或2所述的存储系统,其中:
每个所选择的位线与相应的感测电路(1699,1899)连通,所述感测电路具有感测节点(1611)、锁存器(1619)和作为所述锁存器的门控装置的锁存器晶体管(1618);
在每个感测电路中,通过将数据从所述感测节点经由所述锁存器晶体管传输到所述锁存器,来感测所选择的位线的电压;
所选择的位线包括为相关联的存储元件提供慢编程模式的所选择的位线;以及
所述锁存器晶体管用于提供:(i)为相关联的存储元件提供慢编程模式并且未耦联到所述至少第一电平的所选择的位线的电压(Vslow);以及(ii)为相关联的存储元件提供慢编程模式并且耦联到至少第一电平的所选择的位线的电压(Vslow+comp)。
7.根据权利要求6所述的存储系统,其中,所选择的位线包括为相关联的存储元件提供快编程模式的所选择的位线,并且在将编程脉冲施加到所述存储元件集合时,所述一个或更多个控制电路将为相关联的存储元件提供快编程模式的所选择的位线的电压接地,并且在禁用电平(Vdd)处驱动未选择的位线。
8.根据权利要求6所述的存储系统,其中:
从所述感测节点经由所述锁存器晶体管传输到所述锁存器的数据未被反相。
9.根据权利要求6所述的存储系统,其中:
在将编程脉冲施加到所述存储元件集合之前,所述一个或更多个控制电路控制所述锁存器晶体管(1618)的栅极电压以驱动为相关联的存储元件提供慢编程模式并且耦联到至少第一电平的所选择的位线;以及
随后,在将编程脉冲施加到所述存储元件集合时,所述一个或更多个控制电路使为相关联的存储元件提供慢编程模式、并且耦联到至少第一电平的所选择的位线浮动,并且控制所述锁存器晶体管的栅极电压以驱动为相关联的存储元件提供慢编程模式、并且未耦联到至少第一电平的所选择的位线。
10.根据权利要求1或2所述的存储系统,其中:
每个所选择的位线与相应的位线箝位晶体管(1614)连通,并且与相应的感测电路(1699,1899)连通,所述感测电路具有感测节点(1611)、锁存器(1619)和作为所述锁存器的门控装置的锁存器晶体管(1618);
为了感测所选择的位线的电压,在每个感测电路中,由所述一个或多个控制电路将数据从所述感测节点经由所述锁存器晶体管传输到所述锁存器;
所选择的位线包括为相关联的存储元件提供慢编程模式的所选择的位线;以及
在将编程脉冲施加到所述存储元件集合时,所述一个或更多个控制电路:(i)控制所述位线箝位晶体管的栅极电压(Vblc)以提供为相关联的存储元件提供慢编程模式、并且耦联到至少第一电平的每个所选择的位线的电压(Vslow+comp),以及(ii)控制所述锁存器晶体管的栅极电压(Vlco)以提供为相关联的存储元件提供慢编程模式、并且未耦联到至少第一电平的每个所选择的位线的电压(Vslow)。
11.根据权利要求10所述的存储系统,其中每个未选择的位线与相应的位线箝位晶体管(1614)连通,并且,所述一个或更多个控制电路针对每个未选择的位线执行以下操作:(iii)在将编程脉冲施加到所述存储元件集合之前,控制所述位线箝位晶体管的栅极电压(Vblc)以在禁用电平(Vdd)处驱动未选择的位线;以及(iv)随后,在将编程脉冲施加到所述存储元件集合时,使未选择的位线浮动。
12.根据权利要求10所述的存储系统,其中:
所述一个或更多个控制电路在使位线与所述锁存器(1619)隔离(1617)时经由总线(1624)更新所述锁存器。
13.一种在非易失性存储系统中编程的方法,包括:
针对存储元件集合(400,450)执行多迭代编程操作的迭代,每个存储元件与相应的位线(406,407,408)连通,并且相应的位线包括所选择的位线和未选择的位线;
执行迭代包括:
使未选择的位线的电压逐步升高,并且感测所选择的位线的电压,以针对每个所选择的位线,确定所选择的位线:(i)没有响应于逐步升压而耦联到至少第一电平(T),其指示不存在相邻的未选择的位线,还是(ii)响应于逐步升压而耦联到至少第一电平(T),其指示存在至少一个相邻的未选择的位线,以及
随后,在基于感测的各个电平(Vbl(comp),Vbl(no comp))处提供所选择的位线的电压,同时将编程脉冲施加到所述存储元件集合。
14.根据权利要求13所述的方法,其中,在将编程脉冲施加到所述存储元件集合时:
在一个电平(Vbl(no comp))处提供未耦联到至少第一电平的所选择的位线的电压;以及
在另一更高的电平(Vbl(comp))处提供耦联到至少第一电平的所选择的位线的电压。
15.根据权利要求13或14所述的方法,其中:
对所选择的位线的电压进行感测、数字化并且将其存储为数据;以及
响应于所存储的数据,在基于感测的各个电平处提供所选择的位线的电压。
16.根据权利要求13或14所述的方法,其中执行所述迭代进一步包括:
对于每个所选择的位线,确定所选择的位线是否响应于逐步升压而耦联到所述第一电平(T)以上的至少第二电平(T'),其指示存在两个相邻的未选择的位线;以及
在将编程脉冲施加到所述存储元件集合时:在一个电平处提供耦联到所述第一电平但未耦联到所述第二电平的所选择的位线的电压,并且在另一更高的电平处提供耦联到所述第二电平的所选择的位线的电压。
17.根据权利要求13或14所述的方法,其中:
每个所选择的位线与相应的感测电路(1699,1899)连通,所述感测电路具有感测节点(1611)、锁存器(1635)和作为所述锁存器的门控装置的锁存器晶体管(1628);
在每个感测电路中,通过将数据从所述感测节点经由所述锁存器晶体管传输到所述锁存器,来感测所选择的位线的电压;以及
使从所述感测节点经由所述锁存器晶体管传输到所述锁存器的数据反相。
18.根据权利要求13或14所述的方法,其中:
每个所选择的位线与相应的感测电路(1699,1899)连通,所述感测电路具有感测节点(1611)、锁存器(1619)和作为所述锁存器的门控装置的锁存器晶体管(1618);
在每个感测电路中,通过将数据从所述感测节点经由所述锁存器晶体管传输到所述锁存器,来感测所选择的位线的电压;
所选择的位线包括为相关联的存储元件提供慢编程模式的所选择的位线;以及
所述锁存器晶体管用于提供:(i)为相关联的存储元件提供慢编程模式并且未耦联到至少第一电平的的所选择的位线的电压(Vslow),以及(ii)为相关联的存储元件提供慢编程模式并且耦联到至少第一电平的所选择的位线的电压(Vslow+comp)。
19.根据权利要求18所述的方法,其中,所选择的位线包括为相关联的存储元件提供快编程模式的所选择的位线,并且在将编程脉冲施加到所述存储元件集合时:
将为相关联的存储元件提供快编程模式的所选择的位线的电压接地;以及
在禁用电平(Vdd)处驱动未选择的位线。
20.根据权利要求18所述的方法,其中:
不使从所述感测节点经由所述锁存器晶体管传输到所述锁存器的数据反相。
21.根据权利要求18所述的方法,进一步包括:
在将编程脉冲施加到所述存储元件集合之前,控制所述锁存器晶体管(1618)的栅极电压以驱动为相关联的存储元件提供慢编程模式、并且耦联到至少第一电平的所选择的位线;以及
随后,在将编程脉冲施加到所述存储元件集合时:
使为相关联的存储元件提供慢编程模式、并且耦联到至少第一电平的所选择的位线浮动;以及
控制所述锁存器晶体管的栅极电压以驱动为相关联的存储元件提供慢编程模式、并且未耦联到至少第一电平的所选择的位线。
22.根据权利要求13或14所述的方法,其中:
每个所选择的位线与相应的位线箝位晶体管(1614)连通,并且与相应的感测电路(1699,1899)连通,所述感测电路具有感测节点(1611)、锁存器(1619)和作为所述锁存器的门控装置的锁存器晶体管(1618);
在每个感测电路中,通过将数据从所述感测节点经由所述锁存器晶体管传输到所述锁存器,来感测所选择的位线的电压;
所选择的位线包括为相关联的存储元件提供慢编程模式的所选择的位线;以及
在将编程脉冲施加到所述存储元件集合时:
(i)控制所述位线箝位晶体管的栅极电压(Vblc)以提供为相关联的存储元件提供慢编程模式、并且耦联到至少第一电平的每个所选择的位线的电压(Vslow+comp);以及
(ii)控制所述锁存器晶体管的栅极电压(Vlco)以提供为相关联的存储元件提供慢编程模式、并且未耦联到至少第一电平的每个所选择的位线的电压(Vslow)。
23.根据权利要求22所述的方法,其中:每个未选择的位线与相应的位线箝位晶体管(1614)连通,所述方法进一步包括,针对每个未选择的位线:
在将编程脉冲施加到所述存储元件集合之前,控制所述位线箝位晶体管的栅极电压(Vblc)以在禁用电平(Vdd)处驱动未选择的位线;以及
随后,在将编程脉冲施加到所述存储元件集合时,使未选择的位线浮动。
24.根据权利要求22所述的方法,进一步包括:
在使位线与所述锁存器(1619)隔离(1617)时经由总线(1624)更新所述锁存器。
CN201080062255.0A 2009-11-24 2010-11-22 通过基于感测的位线补偿对存储器编程以减少沟道到浮栅的耦合 Active CN102714055B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/624,595 US8218381B2 (en) 2009-11-24 2009-11-24 Programming memory with sensing-based bit line compensation to reduce channel-to-floating gate coupling
US12/624,595 2009-11-24
PCT/US2010/057645 WO2011066228A1 (en) 2009-11-24 2010-11-22 Programming memory with sensing-based bit line compensation to reduce channel -to-floating gate coupling

Publications (2)

Publication Number Publication Date
CN102714055A CN102714055A (zh) 2012-10-03
CN102714055B true CN102714055B (zh) 2015-07-15

Family

ID=43430661

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201080062255.0A Active CN102714055B (zh) 2009-11-24 2010-11-22 通过基于感测的位线补偿对存储器编程以减少沟道到浮栅的耦合

Country Status (7)

Country Link
US (2) US8218381B2 (zh)
EP (1) EP2504837B1 (zh)
JP (1) JP5463421B2 (zh)
KR (1) KR101702642B1 (zh)
CN (1) CN102714055B (zh)
TW (1) TW201133490A (zh)
WO (1) WO2011066228A1 (zh)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8218381B2 (en) 2009-11-24 2012-07-10 Sandisk Technologies Inc. Programming memory with sensing-based bit line compensation to reduce channel-to-floating gate coupling
US8174895B2 (en) * 2009-12-15 2012-05-08 Sandisk Technologies Inc. Programming non-volatile storage with fast bit detection and verify skip
US8891297B2 (en) 2011-11-01 2014-11-18 Micron Technology, Inc. Memory cell sensing
US8971141B2 (en) * 2012-06-28 2015-03-03 Sandisk Technologies Inc. Compact high speed sense amplifier for non-volatile memory and hybrid lockout
JP2015041402A (ja) * 2013-08-23 2015-03-02 株式会社東芝 不揮発性半導体記憶装置、及びデータ書き込み方法
JP2016054014A (ja) * 2014-09-03 2016-04-14 株式会社東芝 半導体記憶装置
US9875805B2 (en) 2015-01-23 2018-01-23 Sandisk Technologies Llc Double lockout in non-volatile memory
US9548130B2 (en) 2015-04-08 2017-01-17 Sandisk Technologies Llc Non-volatile memory with prior state sensing
US9570179B2 (en) 2015-04-22 2017-02-14 Sandisk Technologies Llc Non-volatile memory with two phased programming
JP2017111847A (ja) * 2015-12-17 2017-06-22 株式会社東芝 半導体記憶装置
JP6490018B2 (ja) 2016-02-12 2019-03-27 東芝メモリ株式会社 半導体記憶装置
US10366739B2 (en) * 2017-06-20 2019-07-30 Sandisk Technologies Llc State dependent sense circuits and sense operations for storage devices
US10037810B1 (en) 2017-06-27 2018-07-31 Sandisk Technologies Llc Method and apparatus for coupling up a voltage-setting transistor for a control line in a programming operation
US10636487B2 (en) * 2018-06-05 2020-04-28 Sandisk Technologies Llc Memory device with bit lines disconnected from NAND strings for fast programming
KR20200129239A (ko) 2019-05-07 2020-11-18 삼성전자주식회사 페이지 버퍼, 이를 포함하는 메모리 장치
US11200952B2 (en) * 2019-07-22 2021-12-14 Samsung Electronics Co., Ltd. Non-volatile memory device
KR20210011209A (ko) 2019-07-22 2021-02-01 삼성전자주식회사 비휘발성 메모리 장치 및 비휘발성 메모리 장치의 프로그램 방법
KR20210111051A (ko) 2020-03-02 2021-09-10 에스케이하이닉스 주식회사 반도체 메모리 장치 및 이의 동작 방법

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101276638A (zh) * 2006-12-27 2008-10-01 海力士半导体有限公司 具有铁电器件的半导体存储器器件及其更新方法

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3210259B2 (ja) * 1996-04-19 2001-09-17 株式会社東芝 半導体記憶装置及び記憶システム
JP3557078B2 (ja) * 1997-06-27 2004-08-25 株式会社東芝 不揮発性半導体記憶装置
KR100385226B1 (ko) * 2000-11-22 2003-05-27 삼성전자주식회사 프로그램 디스터브를 방지할 수 있는 플래시 메모리 장치및 그것을 프로그램하는 방법
JP2001243782A (ja) * 2001-02-13 2001-09-07 Toshiba Corp 不揮発性半導体記憶装置
JP3816022B2 (ja) 2002-05-28 2006-08-30 松下電器産業株式会社 半導体記憶装置
US6983428B2 (en) * 2002-09-24 2006-01-03 Sandisk Corporation Highly compact non-volatile memory and method thereof
US6987693B2 (en) * 2002-09-24 2006-01-17 Sandisk Corporation Non-volatile memory and method with reduced neighboring field errors
US6859397B2 (en) * 2003-03-05 2005-02-22 Sandisk Corporation Source side self boosting technique for non-volatile memory
US7064980B2 (en) * 2003-09-17 2006-06-20 Sandisk Corporation Non-volatile memory and method with bit line coupled compensation
US6956770B2 (en) * 2003-09-17 2005-10-18 Sandisk Corporation Non-volatile memory and method with bit line compensation dependent on neighboring operating modes
JP4271168B2 (ja) * 2004-08-13 2009-06-03 株式会社東芝 半導体記憶装置
US7173859B2 (en) * 2004-11-16 2007-02-06 Sandisk Corporation Faster programming of higher level states in multi-level cell flash memory
US7158421B2 (en) * 2005-04-01 2007-01-02 Sandisk Corporation Use of data latches in multi-phase programming of non-volatile memories
JP2006196700A (ja) * 2005-01-13 2006-07-27 Toshiba Corp 不揮発性半導体記憶装置
JP4832767B2 (ja) * 2005-02-03 2011-12-07 株式会社東芝 半導体集積回路装置及びそのデータプログラム方法
US7313023B2 (en) * 2005-03-11 2007-12-25 Sandisk Corporation Partition of non-volatile memory array to reduce bit line capacitance
US7251160B2 (en) * 2005-03-16 2007-07-31 Sandisk Corporation Non-volatile memory and method with power-saving read and program-verify operations
US7206235B1 (en) * 2005-10-14 2007-04-17 Sandisk Corporation Apparatus for controlled programming of non-volatile memory exhibiting bit line coupling
US7894269B2 (en) * 2006-07-20 2011-02-22 Sandisk Corporation Nonvolatile memory and method for compensating during programming for perturbing charges of neighboring cells
US7506113B2 (en) * 2006-07-20 2009-03-17 Sandisk Corporation Method for configuring compensation
US20080247254A1 (en) * 2007-04-05 2008-10-09 Hao Thai Nguyen Method for temperature compensating bit line during sense operations in non-volatile storage
US7599224B2 (en) * 2007-07-03 2009-10-06 Sandisk Corporation Systems for coarse/fine program verification in non-volatile memory using different reference levels for improved sensing
US7508715B2 (en) * 2007-07-03 2009-03-24 Sandisk Corporation Coarse/fine program verification in non-volatile memory using different reference levels for improved sensing
US7869273B2 (en) * 2007-09-04 2011-01-11 Sandisk Corporation Reducing the impact of interference during programming
JP4504405B2 (ja) * 2007-09-12 2010-07-14 株式会社東芝 半導体記憶装置
JP5178167B2 (ja) * 2007-12-04 2013-04-10 株式会社東芝 半導体記憶装置及びそのデータ書き込み方法
US8081514B2 (en) 2009-08-25 2011-12-20 Sandisk Technologies Inc. Partial speed and full speed programming for non-volatile memory using floating bit lines
US8482975B2 (en) * 2009-09-14 2013-07-09 Micron Technology, Inc. Memory kink checking
US8218381B2 (en) 2009-11-24 2012-07-10 Sandisk Technologies Inc. Programming memory with sensing-based bit line compensation to reduce channel-to-floating gate coupling
US8089815B2 (en) * 2009-11-24 2012-01-03 Sandisk Technologies Inc. Programming memory with bit line floating to reduce channel-to-floating gate coupling
US7986573B2 (en) 2009-11-24 2011-07-26 Sandisk Technologies Inc. Programming memory with direct bit line driving to reduce channel-to-floating gate coupling

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101276638A (zh) * 2006-12-27 2008-10-01 海力士半导体有限公司 具有铁电器件的半导体存储器器件及其更新方法

Also Published As

Publication number Publication date
CN102714055A (zh) 2012-10-03
WO2011066228A1 (en) 2011-06-03
EP2504837B1 (en) 2015-09-30
USRE45731E1 (en) 2015-10-06
JP2013512532A (ja) 2013-04-11
US20110122702A1 (en) 2011-05-26
KR101702642B1 (ko) 2017-02-03
JP5463421B2 (ja) 2014-04-09
US8218381B2 (en) 2012-07-10
TW201133490A (en) 2011-10-01
EP2504837A1 (en) 2012-10-03
KR20120098801A (ko) 2012-09-05

Similar Documents

Publication Publication Date Title
CN102725797B (zh) 通过直接位线驱动对存储器编程以减少沟道到浮栅的耦合
CN102714055B (zh) 通过基于感测的位线补偿对存储器编程以减少沟道到浮栅的耦合
EP2504840B1 (en) Programming memory with bit line floating to reduce channel-to-floating gate coupling
EP2281290B1 (en) Enhanced bit-line pre-charge scheme for increasing channel boosting in non-volatile storage
CN102576567B (zh) 用于非易失性存储器中的增强沟道升压的减小的编程脉宽
CN102947887B (zh) 非易失性存储设备中的同时多状态读取或验证
CN102576566B (zh) 使用浮置位线对非易失性存储器的部分速度和全速度编程
CN102667948B (zh) 减小存储器沟道与浮置栅极耦合的数据状态相关沟道升压
EP2748819B1 (en) Read compensation for partially programmed blocks of non-volatile storage
EP2831878B1 (en) Bit line precharging scheme for nonvolatile memory with shared bit lines
WO2013040145A1 (en) Substrate bias during program of nand flash non-volatile storage
US20160203874A1 (en) Semiconductor memory device
US20080291736A1 (en) Non-volatile storage system with transitional voltage during programming
CN101783173A (zh) 非易失性存储设备及使用其的编程和读取方法
CN101715596B (zh) 使用沟道隔离切换的非易失性存储器的升压

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C56 Change in the name or address of the patentee
CP01 Change in the name or title of a patent holder

Address after: American Texas

Patentee after: DELPHI INT OPERATIONS LUX SRL

Address before: American Texas

Patentee before: Sandisk Technologies, Inc