CN101512667B - 具有在编程期间的耦合补偿的浮动栅极存储器 - Google Patents

具有在编程期间的耦合补偿的浮动栅极存储器 Download PDF

Info

Publication number
CN101512667B
CN101512667B CN2007800274512A CN200780027451A CN101512667B CN 101512667 B CN101512667 B CN 101512667B CN 2007800274512 A CN2007800274512 A CN 2007800274512A CN 200780027451 A CN200780027451 A CN 200780027451A CN 101512667 B CN101512667 B CN 101512667B
Authority
CN
China
Prior art keywords
memory device
volatile memory
programming
memory cell
state
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
CN2007800274512A
Other languages
English (en)
Other versions
CN101512667A (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 Corp
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
Priority claimed from US11/459,001 external-priority patent/US7885119B2/en
Application filed by SanDisk Corp filed Critical SanDisk Corp
Priority claimed from PCT/US2007/073739 external-priority patent/WO2008011440A2/en
Publication of CN101512667A publication Critical patent/CN101512667A/zh
Application granted granted Critical
Publication of CN101512667B publication Critical patent/CN101512667B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1015Read-write modes for single port memories, i.e. having either a random port or a serial port
    • G11C7/1045Read-write mode select 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/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/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3418Disturbance prevention or evaluation; Refreshing of disturbed memory data

Abstract

非易失性存储器单元的浮动栅极(或其它电荷存储元件)上存储的表观电荷的偏移可能因基于相邻浮动栅极(或其它相邻电荷存储元件)中存储的电荷的电场耦合而发生。为了补偿此耦合,对给定存储器单元的读取或编程过程可考虑到相邻存储器单元的经编程状态。为了确定是否需要补偿,可执行一种过程,其包括感测关于相邻存储器单元(例如,在相邻位线或其它位置上)的经编程状态的信息。

Description

具有在编程期间的耦合补偿的浮动栅极存储器
技术领域
本发明涉及用于非易失性存储器的技术。
背景技术
半导体存储器已变得越来越普遍运用在各种电子装置中。举例而言,蜂窝式电话、数字相机、个人数字助理、移动计算装置、非移动计算装置和其它装置中皆使用非易失性半导体存储器。电可擦除可编程只读存储器(Electrical Erasable Programmable ReadOnly Memory,EEPROM)和快闪存储器是最普遍的非易失性半导体存储器。
EEPROM和快闪存储器两者均利用半导体衬底中定位在沟道区上方且与沟道区绝缘的浮动栅极。所述浮动栅极定位在源极区与漏极区之间。控制栅极提供在浮动栅极上方且与浮动栅极绝缘。晶体管的阈值电压受控于浮动栅极上保留的电荷量。即,在晶体管接通之前必须施加至控制栅极以允许在其源极与漏极之间传导的最小电压量受控于浮动栅极上的电荷电平。
当编程EEPROM或快闪存储器装置(例如NAND型快闪存储器装置)时,通常将编程电压施加至控制栅极且使位线接地。来自沟道的电子被注入至浮动栅极。当电子在浮动栅极中累积时,浮动栅极变成带有负电荷,并且存储器单元的阈值电压上升,使得存储器单元处于经编程状态。关于编程的更多信息,请参阅标题为“非易失性存储器的源极侧自升压技术”(″Source Side Self-Boosting Technique for Non-Volatile Memory″)的第6,859,397号美国专利和标题为“经编程存储器上的检测”(″Detecting OverProgrammed Memory″)的第6,917,545号美国专利,所述两个专利的全文以引用方式并入本文中。
一些EEPROM及快闪存储器装置具有用于存储两种范围电荷的浮动栅极,并且因此可在两种状态(经擦除状态与经编程状态)之间编程/擦除存储器单元。此快闪存储器装置有时候称为双态(binary)快闪存储器装置。
一种多状态式快闪存储器装置是通过识别以禁用范围相隔离的多个相异的受允许的/有效编程阈值电压范围来实施。每一相异的阈值电压范围对应于一用于存储器装置中编码的数据位的组的预定值。
浮动栅极上存储的表观电荷(apparent charge)的偏移可起因于基于相邻浮动栅极中存储的电荷的电场耦合而发生。第5,867,429号美国专利中描述此浮动栅极至浮动栅极耦合现象,所述专利的全文以引用方式并入本文中。对一目标浮动栅极的相邻浮动栅极的一个实例包括经连接至相同字线且连接至相邻位线的浮动栅极。
因为在多状态式装置中的受允许的阈值电压范围与禁用范围比双态装置中窄,所以对于多状态式装置较关注浮动栅极至浮动栅极耦合的效应。因此,浮动栅极至浮动栅极耦合可导致存储器单元从受允许阈值电压范围偏移至禁用范围。
浮动栅极至浮动栅极耦合可发生于在不同时间已编程的若干组相邻存储器单元之间。举例而言,第一存储器单元经编程以将对应于一组数据的电荷电平加至其浮动栅极。其后,将一个或一个以上相邻存储器单元编程,以将对应于一第二组数据的电荷电平加至其浮动栅极。所述相邻存储器单元中的所述一个或一个以上存储器单元经编程之后,因为所述相邻存储器单元上的电荷耦合至所述第一存储器单元的效应,所以从所述第一存储器单元读取的电荷电平似乎不同于所编程的电荷电平。来自相邻存储器单元的耦合可使读取中的表观电荷电平偏移,其偏移量足以导致错误地读取所存储的数据。
浮动栅极至浮动栅极耦合也可发生于同时已编程的若干组相邻存储器单元之间。举例而言,两个相邻多状态式存储器单元可被编程至不同目标电平,使得第一存储器单元被编程至对应于较低阈值电压的状态,并且第二存储器单元被编程至对应于较高阈值电压的状态。在第二存储器单元达到对应于较高阈值电压的状态之前,正被编程至对应于较低阈值电压的状态的存储器单元很可能达到所述状态并且被锁定而无法进行进一步编程。在第二存储器单元达到对应于较高阈值电压的状态之后,第二存储器单元将耦合至第一存储器单元,并且造成第一存储器具有高于经编程电压的表观阈值电压。
随着存储器单元尺寸持续缩小,预期自然的阈值电压编程与擦除分布因短沟道效应、较大的氧化物厚度/耦合比率变化及更大的沟道掺杂物波动而增大,借此减小相邻状态之间的可用分隔。与仅使用两种状态的存储器(双态存储器)相比,多状态式存储器的此效应更加显著。另外,字线之间的空间和位线之间的空间的减小将也使相邻浮动栅极之间的耦合增大。
因此,需要减小相邻浮动栅极之间的耦合效应。
发明内容
本文描述用于减小相邻浮动栅极之间的耦合效应的技术。一个实施例包括减小位于不同位线上的相邻浮动栅极之间的耦合效应;但是,在其它实施例中,本文描述的技术可用于其它组浮动栅极(或不利用浮动栅极的其它组存储器单元)之间的耦合。
一个实施例包括:将非易失性存储元件编程为与特定经编程状态相关联的粗略验证电平;对第一子组非易失性存储元件执行额外编程使其成为与所述特定经编程状态相关联的第一精细验证电平;以及对第二子组非易失性存储元件执行额外编程使其成为与所述特定经编程状态相关联的第二精细验证电平。
另一个实施例包括:运用第一粗略编程过程,使用一个粗略验证电平,将第一子组非易失性存储元件编程为第一经编程状态,并且运用精细编程过程,使用两个精细验证电平,将第一子组非易失性存储元件编程为第一经编程状态;以及运用所述第一粗略编程过程,对于每一额外经编程状态,使用一个粗略验证电平,将额外子组非易失性存储元件编程为额外经编程状态,并且运用所述精细编程过程,对于每一额外经编程状态,使用一个精细验证电平,将额外子组非易失性存储元件编程为额外经编程状态。
一个实施例包括:使用用于特定经编程状态的特定最终目标电平,将第一组非易失性存储元件编程为所述特定经编程状态;以及使用用于所述特定经编程状态的另一最终目标电平,将第二组非易失性存储元件编程为所述特定经编程状态。所述第一组非易失性存储元件位于已被识别出用于编程为一不同经编程状态的非易失性存储元件的旁边。所述第二组非易失性存储元件并非位于已被识别出用于编程为所述不同经编程状态的非易失性存储元件的旁边。
另一个实施例包括:使用用于特定经编程状态的特定最终目标电平,将第一组非易失性存储元件编程为所述特定经编程状态;使用用于所述特定经编程状态的另一最终目标电平,将第二组非易失性存储元件编程为所述特定经编程状态;以及使用一不同最终目标电平,将额外非易失性存储元件编程为一不同经编程状态。所述第一组非易失性存储元件位于已被识别出用于编程为所述不同经编程状态的非易失性存储元件的旁边。
可通过各种装置执行本文中描述的各种方法。一个适合设备的实例包括:非易失性存储元件;控制线,所述控制线连通于所述非易失性存储元件;以及管理电路,其与所述非易失性存储元件及所述控制线连通。所述管理电路执行本文中描述的方法。在各个实施例中,所述管理电路包括控制电路、功率控制电路、解码器、状态机、控制器和感测区块中的任一者或组合。也可包括其它电路。
附图说明
图1为NAND串的俯视图。
图2为NAND串的等效电路图。
图3为NAND串的剖面图。
图4为NAND快闪存储器单元阵列的一部分的方框图
图5为非易失性存储器系统的方框图。
图6为非易失性存储器系统的方框图。
图7为存储器阵列的方框图。
图8为描绘感测区块的一个实施例的方框图。
图9为感测模块的一个实施例的示意图。
图10为感测模块的一个实施例的时序图。
图11为描述编程非易失性存储器的过程的一个实施例的流程图。
图12为施加至非易失性存储器单元的控制栅极的示范性波形。
图13描绘一组示范性阈值电压分布。
图14描绘一组示范性阈值电压分布。
图15为描述在读取数据时执行的过程的一个实施例的流程图。
图16为描述在读取数据时执行的过程的一个实施例的流程图。
图17为描述用于从邻近位线感测数据的过程的一个实施例的流程图。
图18为描述用于从邻近位线感测数据的过程的一个实施例的时序图。
图19为描述读取过程的一个实施例的流程图。
图20描绘经编程状态的阈值电压分布。
图21为描述编程过程的一个实施例的曲线图。
图22为描述编程过程的一个实施例的曲线图。
图23为描述编程过程的一个实施例的流程图。
图24为描述验证过程的一个实施例的流程图。
图25为描述读取数据过程的一个实施例的流程图。
图26为描述读取数据的一个实施例的时序图。
图27为描述配置及使用存储器系统的过程的一个实施例的流程图。
图28为描述配置存储器系统的过程的一个实施例的流程图。
图29为描述配置存储器系统的过程的一个实施例的流程图。
图30为描述配置存储器系统的过程的一个实施例的流程图。
图31为描述配置存储器系统的过程的一个实施例的流程图。
具体实施方式
适合实施本发明的一种存储器系统的一个实例使用NAND型快闪存储器结构,其包括在两个选择栅极之间串联排列多个晶体管。所述串联的晶体管与所述选择栅极被称为NAND串。图1为绘示NAND串的俯视图。图2为其等效电路。图1及图2所描绘的NAND串包括夹在第一选择栅极120与第二选择栅极122之间的串联的四个晶体管100、102、104和106。选择栅极120门控与位线126的NAND串连接。选择栅极122门控与源极线128的NAND串连接。通过将适当电压施加至控制栅极120CG来控制选择栅极120。通过将适当电压施加至控制栅极122CG来控制选择栅极122。晶体管100、102、104和106每一者具有一控制栅极及一浮动栅极。晶体管100具有控制栅极100CG及浮动栅极100FG。晶体管102包括控制栅极102CG及浮动栅极102FG。晶体管104包括控制栅极104CG及浮动栅极104FG。晶体管106包括控制栅极106CG及浮动栅极106FG。控制栅极100CG连接至(或为)字线WL3,控制栅极102CG连接至字线WL2,控制栅极104CG连接至字线WL1,且控制栅极106CG连接至字线WL0。在一个实施例中,晶体管100、102、104和106每一者皆为存储器单元。在其它实施例中,存储器单元可包括多个晶体管,或可能不同于图1及图2所描绘的存储器单元。选择栅极120连接至选择线SGD。选择栅极122连接至选择线SGS。
图3为上文所述的NAND串的剖面图。如图3描绘,NAND串的晶体管形成在p阱区140中。每一晶体管包括一堆叠式栅极结构,其由一控制栅极(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+掺杂区126连接至用于所述NAND串的位线,而N+掺杂区128连接至用于多个NAND串的共同源极线。
请注意,虽然图1至图3绘示在所述NAND串中有四个存储器单元,但是使用四个晶体管只是作为一个实例而提供。连同本文描述的技术一起使用的NAND串可具有少于四个存储器单元或多于四个存储器单元。举例而言,一些NAND串将包括8个存储器单元、16个存储器单元、32个存储器单元、64个存储器单元等等。本文中的论述未限定一NAND串中的任何特定存储器单元数目。
每一存储器单元可存储以模拟或数字形式表示的数据。当存储一位数字数据时,存储器单元的可能的阈值电压范围被划分成经指派为逻辑数据“1”及“0”的两个范围。在NAND型快闪存储器的一个实例中,存储器单元被擦除之后阈值电压为负且被定义为逻辑“1”。编程操作之后阈值电压为正且被定义为逻辑“0”。当阈值电压为负且尝试通过施加0伏至控制栅极来进行读取时,存储器单元将接通以指示正在存储逻辑“1”。当阈值电压为正且尝试通过施加0伏至控制栅极来进行读取操作时,存储器单元将不接通,其指示存储逻辑“0”。存储一位数字数据的存储器单元称为双态存储器单元。
存储器单元也可以存储多位数字数据。此存储器单元称为多状态式存储器单元。多状态式存储器单元的阈值电压窗被分成状态的数目。举例而言,如果使用四种状态,那么将有四个阈值电压范围指派给数据值“11”、“10”、“01”及“00”。在NAND型存储器的一个实例中,擦除操作之后的阈值电压为负且被定义为“11”。正阈值电压用于状态“10”、“01”及“00”。
以下美国专利/专利申请案中提供NAND型快闪存储器及其操作的相关实例,所有所述专利的全文均以引用方式并入本文中:第5,570,315号美国专利;第5,774,397号美国专利;第6,046,935号美国专利;第5,386,422号美国专利;第6,456,528号美国专利及第09/893,277号美国专利申请案(第US 2003/0002348号公开案)。除了NAND型快闪存储器以外的其它类型非易失性存储器也可配合本发明一起使用。
对快闪EEPROM系统有用的另一类型存储器单元利用非传导介电材料来取代传导浮动栅极,用以用非易失性方式来存储电荷。1987年3月“电气电子工程师协会电子装置通讯”(IEEE Electron Device Letters)第EDL-8卷第3号第93-95页Chan等人的“真正的单晶体管氧化物-氮化物-氧化物EEPROM装置”(″A True Single-TransistorOxide-Nitride-Oxide EEPROM Device″)文章中描述此种存储器单元。由氧化硅、氮化硅、氧化硅(“ONO”)所形成的三层式电介质被夹在传导控制栅极与在存储器单元沟道上方的半传导衬底的表面之间。通过将电子从单元沟道注入至氮化物(此处电子被截获且存储在受限区域中)中来编程单元。接着,此存储的电荷以可检测方式改变单元的沟道的一部分的阈值电压。通过将热空穴注入至氮化物中来擦除存储器单元。还请参阅1991年4月“电气电子工程师协会固态电路期刊”(IEEE Journal of Solid-State Circuits)第26卷第4号第497-501页Nozaki等人的“用于半导体磁盘应用的具有MONOS存储器单元的1Mb EEPROM”(″A1-Mb EEPROM with MONOS Memory Cell for SemiconductorDisk Application″),其描述一种分割栅极(split-gate)配置的类似单元,其中经掺杂的多晶硅栅极延伸于存储器单元沟道的一部分上,以形成单独的选择晶体管。前文提及的两篇文章的全文均以引用方式并入本文中。1998年电气电子工程师协会出版社(IEEEPress)由威廉·D·布朗(William D.Brown)与乔·E·布鲁尔(Joe E.Brewer)主编的“非易失性半导体存储器技术”(″Nonvolatile Semiconductor Memory Technology″)(其以引用方式并入本文中)第1.2节中提出编程技术,所述章节中描述的编程技术也适用于介电电荷截获装置。此段落中描述的存储器单元也可配合本发明一起使用。因此,本文描述的技术也适用于不同存储器单元的介电区域之间的耦合。
2000年11月“电气电子工程师协会电子装置通讯”(IEEE Electron Device Letters)第21卷第11号第543-545页艾坦(Eitan)等人的“NROM:新颖的局部截获2位非易失性存储器单元”(″NROM:A Novel Localized Trapping,2-Bit Nonvolatile MemoryCell″)已描述另一种在每一单元中存储两个位的方法。ONO介电层延伸跨越源极与漏极扩散之间的沟道。一个数据位的电荷被局部化在与漏极相邻的介电层中,而另一个数据位的电荷被局部化在与源极相邻的介电层中。通过单独读取电介质内空间上分开的电荷存储区的二元状态(binary state)而获得多重状态数据存储。此段落中描述的存储器单元也可配合本发明一起使用。
图4说明NAND单元阵列的实例,例如图1至图3中所示的NAND单元。沿每一列,一位线206耦合至用于NAND串150的漏极选择栅极的漏极端子126。沿每一行NAND串,一源极线204可连接至所有所述NAND串的源极选择栅极的源极端子128。作为存储器系统的一部分的NAND架构阵列及其操作的实例请参阅第5,570,315号美国专利、第5,774,397号美国专利及第6,046,935号美国专利。
存储器单元阵列被划分成大量存储器单元区块。快闪EEPROM系统中的常见情况是区块是擦除单位。即,每一区块包含可一起擦除的最少数目的存储器单元。每一区块通常被划分成若干页。一页是一编程单位。在一个实施例中,个别页可被划分成若干区段(segment),并且区段可包含作为一基本编程操作而一次写入的最少数目的单元。一页或一页以上数据通常被存储于一行存储器单元中。一页可存储一个或一个以上扇区(sector)。扇区包括用户数据及额外开销(overhead)数据。额外开销数据通常包括已从所述扇区的用户数据所计算的错误校正码(ECC)。控制器的一部分(在下文描述)在将数据编程至阵列中时计算所述ECC,并且当从阵列读取数据时也检查所述ECC。替代做法为,将ECC和/或其它额外开销数据存储在与其所属的用户数据不同的页(乃至不同区块)中。一扇区的用户数据通常是512个字节,其对应于磁盘驱动器中的一扇区的大小。额外开销数据通常是额外的16-20个字节。大量页形成一区块,举例而言,其为从8页直到32、64、128或更多页。
图5说明根据本发明一个实施例的存储器装置296,其具有用于并行读取及编程一页存储器单元的读取/写入电路。存储器装置296可包括一个或一个以上存储器电路小片298。存储器电路小片298包括二维存储器单元阵列300、控制电路310及读取/写入电路365。在一些实施例中,所述存储器单元阵列可为三维的。存储器单元是通过各种控制线来控制及存取,例如位线、字线、源极线及用于控制存储器阵列的其它线路。举例而言,存储器阵列300可经由行解码器330通过字线以及经由列解码器360通过位线来寻址。读取/写入电路365包括多个感测区块400,并且允许并行地读取或编程一页存储器单元。通常在相同于所述一个或一个以上存储器电路小片298的存储器装置296(例如,可卸除式存储卡)中包括一控制器350。命令与数据经由线路320在主机与控制器350之间传送并且经由线路318在所述控制器与所述一个或一个以上存储器电路小片298之间传送。
控制电路310与读取/写入电路365协作以对存储器阵列300执行存储器操作。控制电路310包括状态机312、芯片上地址解码器314及功率控制模块316。状态机312提供存储器操作的芯片级控制。芯片上地址解码器314提供主机或一存储器控制器使用的地址与解码器330和360使用的硬件地址之间的地址接口。功率控制模块316控制在存储器操作期间供应至字线与位线的功率与电压。
在一些实施方案中,可组合图5的一些组件。在各种设计中,图5的除存储器单元阵列300外的一个或一个以上组件(单独式或组合式)可视为一管理电路。举例而言,管理电路可包括如下中任一项或其组合:控制电路310、状态机312、解码器314/360、功率控制316、感测区块400、读取/写入电路365、控制器350等等。
图6说明图5所示的存储器装置296的另一布置。通过各种外围电路对存储器阵列300的存取是在所述阵列的相对侧处以对称方式实施,使得每一侧的存取线路与电路的密度减少一半。因此,行解码器被分割成行解码器330A与330B,并且列解码器被分割成列解码器360A与360B。同样,读取/写入电路被分割成读取/写入电路365A(其从存储器阵列300底端连接至位线)与读取/写入电路365B(其从存储器阵列300顶端连接至位线)。以此方式,使读取/写入模块的密度实质上减小一半。图6的装置也可包括一控制器,如同上文针对图5的装置所述。
请参阅图7,图中描绘存储器单元阵列300的示范性结构。作为一个实例,描述一种被分割成1,024个区块的NAND快闪EEPROM。可同时擦除每一区块中存储的数据。在一个实施例中,区块是被同时擦除的存储器单元的最小单位。在此实例中,每一区块中有对应于位线BL0、BL1、...、BL8511的8,512列。在一个实施例中,在读取操作及编程操作期间,可同时选择一区块的所有位线。沿一共同字线且连接至任何位线的存储器单元可被同时编程。
在另一实施例中,位线被划分成偶数位线及奇数位线。在一种奇数/偶数位线架构中,对沿一共同字线且连接至奇数位线的存储器单元进行一次编程,并且对沿一共同字线且连接至偶数位线的存储器单元进行另一次编程。
图7展示串联连接以形成一NAND串的四个存储器单元。虽然图中展示每一NAND串中包括四个存储器单元,但是可以使用四个以上或以下存储器单元(例如,16、32或其它数目)。NAND串的一个端子经由漏极选择栅极(其连接至选择栅极漏极线SGD)而连接至对应的位线,并且另一端子经由源极选择栅极(其连接至选择栅极源极线SGS)而连接至c-源极。
图8为个别感测区块400的方框图,所述感测区块被分成一核心部分(称为感测模块380)与一共同部分390。在一个实施例中,对于每一位线将有一个单独的感测模块380,并且对于一组多个感测模块380有一个共同部分390。在一个实例中,一感测区块将包括一个共同部分390及八个感测模块380。一群组中的每一感测模块将经由一数据总线372与相关联的共同部分通信。详细信息请参阅2004年12月29日申请的标题为“用于读出放大器集合的共享处理的非易失性存储器与方法”(″Non-Volatile Memory &Method with Shared Processing for an Aggregate of Sense Amplifiers″)的第11/026,536号美国专利申请案,所述申请案的全文以引用方式并入本文中。
感测模块380包括感测电路370,所述感测电路确定一经连接的位线中的传导电流是否高于或低于预定阈值电平。感测模块380还包括一位线锁存器382,所述位线锁存器用于设置所述经连接的位线上的电压条件。举例而言,锁存于位线锁存器382中的预定状态将导致所述经连接的位线被拉至一指定编程禁止的状态(例如,Vdd)。
共同部分390包括处理器392、一组数据锁存器394及耦合于所述组数据锁存器394与数据总线320之间的I/O接口396。处理器392执行计算。举例而言,处理器的功能之一是确定经感测的存储器单元中所存储的数据,并且将所述经确定的数据存储于所述组数据锁存器中。所述组数据锁存器394用于存储在读取操作期间处理器392所确定的数据位。所述组数据锁存器还用于存储在编程操作期间从数据总线320导入的数据位。经导入的数据位表示希望编程于存储器中的写入数据。I/O接口396提供数据锁存器394与数据总线320之间的接口。
在读取与感测期间,系统的操作受到状态机312的控制,状态机控制不同控制栅极电压向经寻址单元的供应。随着逐步通过对应于存储器所支持的各种存储器状态的各种预定义的控制栅极电压,感测模块380可在这些电压之一下断路(trip),并且将经由总线372从感测模块380提供一输出至处理器392。此时,处理器392通过考虑感测模块的断路事件及关于经由输入线路393从状态机施加的控制栅极电压的信息来确定所得存储器状态。接着,处理器计算所述存储器状态的二进制编码,并且将所得数据位存储于数据锁存器394中。在核心部分的另一实施例中,位线锁存器382有双重用途,既用作用于锁存感测模块380的输出的锁存器又用作上文所述的位线锁存器。
预期一些实施方案将包括多个处理器392。在一个实施例中,每一处理器392将包括一输出线(图9中未描绘),使得每一输出线被线“或”连接(wired-OR)在一起。在一些实施例中,所述输出线在被连接至所述线“或”连接的线之前先被反转。此配置实现在编程验证过程期间迅速确定已完成编程过程的时间,这是因为接收线“或”连接的状态机可确定何时所有正被编程的位已达到所要电平。举例而言,当每一位已达到其所要电平时,所述位的一逻辑“0”将被发送至所述线“或”连接的线(或一数据“1”被反转)。当所有位输出一数据“0”(或一数据“1”被反转)时,状态机知道要终止编程过程。因为每一处理器与八个感测模块通信,所以状态机需要读取线“或”连接的线八次,或将用以累加相关联的位线的结果的逻辑加入至处理器392,使得状态机仅需要读取线“或”连接的线一次。类似地,通过正确选择逻辑电平,全局状态机可检测何时第一位改变其状态且据此改变算法。
在编程或验证期间,来自数据总线320的待编程的数据被存储在所述组数据锁存器394中。在状态机的控制下,编程操作包括施加至经寻址存储器单元的控制栅极的一连串编程电压脉冲。在每一编程脉冲之后进行一验证操作,以确定存储器单元是否已被编程至所要的状态。处理器392相对于所要的存储器状态来监视所验证的存储器状态。当所述两种存储器状态一致时,处理器222设置位线锁存器214,致使位线被拉至一指定编程禁止的状态。此做法禁止进一步编程耦合至所述位线的单元,即使所述单元的控制栅极上有编程脉冲出现也是如此。在其它实施例中,在验证过程期间,处理器在开始时加载位线锁存器382,并且感测电路将其设置为一禁止值。
数据锁存器堆叠394包含对应于感测模块的一堆叠数据锁存器。在一个实施例中,每感测模块380有三个数据锁存器。在一些实施方案中(但非必须),数据锁存器被实施为一移位寄存器,使得存储于其中的并行数据被转换成用于数据总线320的串行数据,反之亦然。在优选实施例中,对应于m个存储器单元的读取/写入区块的所有数据锁存器可被链接在一起,以形成一区块移位寄存器,使得可通过串行传送来输入或输出一区块数据。具体而言,含r个读取/写入模块的库(bank)经调适,使得其所述组数据锁存器中的每一者将数据循序移入或移出数据总线,犹如其是一用于整个读取/写入区块的移位寄存器的一部分。
关于非易失性存储装置的各个实施例的结构和/或操作的额外信息可参阅:(1)2004年3月25日公告的标题为“具有减少的源极线偏置错误的非易失性存储器及方法”(″Non-Volatile Memory And Method With Reduced Source Line Bias Errors″)的第2004/0057287号美国专利申请公开案;(2)2004年6月10日公告的标题为“具有改进的感测的非易失性存储器及方法”(″Non-Volatile Memory And Method with ImprovedSensing″)的第2004/0109357号美国专利申请公开案;(3)发明人Raul-Adrian Cernea于2004年12月16日申请的标题为“低电压操作的改进存储器感测电路及方法”(″Improved Memory Sensing Circuit And Method For Low Voltage Operation″)的第11/015,199号美国专利申请案;(4)发明人Jian Chen于2005年4月5日申请的标题为“对非易失性存储器的读取操作期间的耦合的补偿”(″Compensating for Coupling DuringRead Operations of Non-Volatile Memory″)的第11/099,133号美国专利申请案;以及(5)发明人Siu Lung Chan与Raul-Adrian Cernea于2005年12月28日申请的标题为“非易失性存储器的参考读出放大器”(″Reference Sense Amplifier For Non-Volatile Memory″)的第11/321,953号美国专利申请案。以上列出的全部五份专利文件的全文均以引用方式并入本文中。
图9说明感测模块380的实例,但是,也可使用其它实施方案。感测模块380包括位线隔离晶体管512、位线下拉电路(晶体管522与550)、位线电压箝位晶体管612、读出总线传送栅极530、读出放大器600及位线锁存器382。位线隔离晶体管512的一侧连接至位线BL及电容器510。位线隔离晶体管512的另一侧连接至位线电压箝位晶体管612及位线下拉晶体管522。位线隔离晶体管512的栅极接收标示为BLS的信号。位线电压箝位晶体管512的栅极接收标示为BLC的信号。位线电压箝位晶体管512在节点SEN2处连接至读出总线传送栅极530。读出总线传送栅极530连接至读出总线532。位线电压箝位晶体管512在节点SEN2处连接至读出放大器600。在图9的实施例中,读出放大器600包括晶体管613、634、641、642、643、654、654与658以及电容器Csa。位线锁存器382包括晶体管661、662、663、664、666与668。
一般而言,以并行方式操作沿一字线的存储器单元。因此,对应数目的感测模块是以并行方式操作。在一个实施例中,控制器提供控制信号与时序信号至以并行方式操作的感测模块。在一些实施例中,沿一字线的数据被划分成多个页,并且以一次一页方式或以一次多页方式读取或编程所述数据。
当通过信号BLS而启用位线隔离晶体管512时,感测模块380可连接至用于一存储器单元的位线(例如,位线BL)。感测模块380通过读出放大器600来感测存储器单元的传导电流,并且锁存读取结果作为感测节点SEN2处的数字电压电平并且经由栅极530将读取结果输出至读出总线532。
读出放大器600包括第二电压箝位(晶体管612与634)、预充电电路(晶体管541、642与643)和鉴别器(discriminator)或比较电路(晶体管654、656与658,及电容器Csa)。在一个实施例中,施加一参考电压至正被读取的存储器单元的控制栅极。如果所述参考电压大于所述存储器单元的阈值电压,那么将使存储器单元接通并且在其源极与漏极之间传导电流。如果所述参考电压不大于所述存储器单元的阈值电压,那么将使存储器单元不接通并且将不在其源极与漏极之间传导电流。在许多实施方案中,开/关可为连续转变,使得所述存储器单元将响应于不同控制栅极电压而传导不同电流。如果所述存储器单元处于接通状态并且正在传导电流,那么经传导电流将使节点SEN上的电压减小,有效地充电或增大横跨电容器Csa的电压,所述电容器Csa另一端子处于Vdd。如果在一预定感测周期期间所述节点SEN上的电压放电至一预定电平,那么读出放大器600报告所述存储器单元已响应于控制栅极电压而接通。
感测模块380的一个特征是在感测期间将一恒定电压供应并入至位线。这优选通过位线电压箝位晶体管612实施,在晶体管612串联于位线BL情况下,其操作如同二极管箝位(diode clamp)。所述晶体管的栅极偏置于高于其阈值电压VT的一恒定电压BLC,所述恒定电压BLC等于所要位线电压VBL。以此方式,在编程-验证或读取期间,所述晶体管使位线与节点SEN隔离,并且设置位线的一恒定电压电平,例如设置所要VBL=0.5伏至0.7伏。一般而言,位线电压电平被设置成充分低以避免长预充电时间但又充分高以避免接地噪声与其它因素的电平。
读出放大器600感测通过感测节点SEN的传导电流,并且确定所述传导电流是否高于或低于一预定的值。所述读出放大器将数字形式的所感测结果作为信号SEN2输出至读出总线532。
还输出数字控制信号INV(其实质上可为SEN2处的信号的经反转状态)以控制下拉电路。当所感测的传导电流高于预定值时,INV将为高(HIGH)且SEN2将为低(LOW)。下拉电路加强此结果。下拉电路包括一n型晶体管522(其受控于控制信号INV)及另一n型晶体管550(其受控于控制信号GRS)。当GRS信号为低时,其允许位线BL浮动,而不考虑INV信号的状态。在编程期间,GRS信号转变为高以允许位线BL被拉至接地且受控于INV。当需要位线BL浮动时,GRS信号转变为低。请注意,也可使用感测模块、读出放大器及锁存器的其它设计。
读取/写入电路365同时操作一页存储器单元。所述读取/写入电路365中的每一感测模块380经由位线耦合至一对应的单元。传导电流从感测模块流经位线流入存储器单元的漏极中并且从源极流出,之后行进通过一源极线而至接地。在集成电路芯片中,存储器阵列中的单元的源极全部被连接在一起,作为连接至存储器芯片的某外部接地衬垫(例如,Vss衬垫)的源极线的多个分支。甚至当使用金属带(metal strapping)来减小源极线的电阻时,存储器单元的源电极与接地衬垫之间仍然有一有限电阻R。通常接地回路电阻R为约50欧姆。
对于正被并行感测的整页存储器,流动通过源极线的总电流是所有传导电流的总和。一般而言,每一存储器单元具有取决于经编程到其电荷存储元件中的电荷量的传导电流。对于存储器单元的给定控制栅极电压,小电荷将产生相对较高的传导电流。当存储器单元的源电极与接地衬垫之间存在有限电阻时,所述电阻两侧的电压降由Vdrop=iTOT R给定。
举例而言,如果4,256个位线同时放电,每一者的电流为1μA,那么源极线电压降将等于4,000个线×1微安培/线×50欧姆~0.2伏。当感测存储器单元的阈值电压时,此源极线偏压将促成0.2伏的感测误差。
在一组实施例中,一种用于减小源极线偏压的方法是通过具有用于多遍感测(multi-pass sensing)的特征与技术的读取/写入电路而实现。每一遍有助于用高于一给定分界电流值的传导电流来识别及关闭存储器单元。通常随着每一遍,所述给定分界电流值以渐进方式收敛于常规单遍感测的断点电流值。以此方式,由于较高电流的单元已被关闭,所以后续遍中的感测受到源极线偏压的影响将较小。
举例而言,可用两遍(j=0至1)来实施多遍感测。在第一遍之后,识别出具有高于断点的传导电流的存储器单元,并且通过关闭其传导电流来移除所述存储器单元。一种关闭存储器单元的传导电流的优选方式为:将所述存储器单元的位线上的其漏极电压设置成接地。在第二遍中,来自源极线偏压的误差减少。也可考虑两遍以上。在源极线偏压将不造成误差的实施例中,可使用一遍进行感测。
图10(A)至10(K)描绘用于解说在读取/验证操作期间感测模块380的一个实施例的时序图。
阶段(0):设定
感测模块380(请参阅图9)经由启用信号BLS(图10(A))而连接至对应的位线。用BLC(图10(B))来启用电压箝位。用控制信号FLT(图10(C))来启用预充电晶体管642以作为一受限制的电流源。
阶段(1):受控制的预充电
通过重设信号RST(图10(D))来初始化读出放大器600,其经由晶体管658将信号INV(图10(H))拉至接地。因此,在重设时,INV被设置成低。同时,p型晶体管663将互补信号LAT拉至Vdd或高(图10(H))。即,LAT是INV的补信号。隔离晶体管634受控于信号LAT。因此,在重设之后,隔离晶体管634被启用以将感测节点SEN2连接至读出放大器的内部感测节点SEN。
预充电晶体管642通过内部感测节点SEN与感测节点SEN2对位线BL进行预充电达一预定时间周期。这将使位线达到用于感测其中传导状态的最佳电压。预充电晶体管642受控于控制信号FLT(“浮动(FLOAT)”)。位线将被朝向由位线电压箝位612所设置的所要位线电压上拉。上拉速率将取决于位线中的传导电流。传导电流越小,上拉越快。
前文已描述,如果具有高于一预定值的传导电流的存储器单元被关闭并且消除其对源极线偏压的促成,那么可最小化因源极线偏压导致的感测误差。因此,预充电晶体管642有两个功能。一个功能是将位线预充电至一最佳感测电压。另一个功能是帮助识别具有高于一用于D.C.(直流)感测的预定值的传导电流的存储器单元,使得可避免其促成源极线偏压。
通过提供预充电电路(其作用如同用于供应预定电流至位线的电流源)来实现D.C.感测。用以控制p型晶体管642的信号FLT是致使其“编程”一预定电流使其流动。作为一个实例,可从具有设置成500毫微安培的参考电流的电流镜来产生FLT信号。当p型晶体管642形成电流镜的镜象支脚时,其也将具有注入于其中的相同500毫微安培。
图10(I1)至10(I4)说明四个示范性位线上的电压,所述四个位线分别连接至具有700毫微安培、400毫微安培、220毫微安培与40毫微安培的传导电流的存储器单元。举例而言,当预充电电路(其包括晶体管642)是具有500毫微安培的限制的电流源时,具有超过500毫微安培的传导电流的存储器单元在位线上被汲取电荷的速度将比其可累积电荷的速度快。结果,对于具有传导电流700毫微安培的位线,其在内部感测节点SEN处的电压或信号将维持在接近0伏(例如0.1伏,请参阅图10(I1))。另一方面,如果存储器单元的传导电流低于500毫微安培,那么预充电电路(其包括晶体管642)将开始对位线进行充电,并且其电压将开始朝向经箝位位线电压(例如,由电压箝位612设置的0.5伏)上升(图10(I2)至10(I4))。相应地,内部感测节点SEN将维持接近于0伏或被上拉至Vdd(图10(G))。一般而言,传导电流越小,将越快使位线电压充电至经箝位位线电压。因此,通过在受控制的预充电阶段之后检查位线上的电压,使得可能识别经连接的存储器单元是否具有高于或低于一预定电平的传导电流。
阶段(2):从后续选通进行D.C.锁存与移除高电流的单元
在受控制的预充电阶段之后,初始D.C.高电流感测阶段开始于由鉴别器电路来感测节点SEN。所述感测识别具有高于所述预定电平的传导电流的存储器单元。所述鉴别器电路包括串联的两个p型晶体管654与656,其用作用于寄存信号INV的节点的上拉。通过一转变为低的读取选通信号STB来启用所述p型晶体管654,通过在所述内部感测节点SEN处转变为低的信号来启用所述p型晶体管656。高电流的存储器单元将具有接近0伏的信号SEN,或至少无法使其位线预充电至充分高而关闭所述p型晶体管656。举例而言,如果弱上拉被限制至500毫微安培的电流,那么其将无法上拉具有700毫微安培的传导电流的单元(图10(G1))。当STB选通低以进行锁存时,INV被上拉至Vdd。这将用INV高与LAT低(图10(H1))来设置锁存器电路660。
当INV是高且LAT是低时,隔离栅极630被停用并且阻隔所述感测节点SEN2与所述内部感测节点SEN。同时,通过下拉晶体管522将位线拉至接地(图9与图10(I1))。这将有效地关闭位线中的任何传导电流,从而使其无法促成源极线偏压。
因此,在感测模块380的一个优选实施方案中,采用受限制电流源预充电电路。这提供额外或替代方式(D.C.感测),以识别载运高电流的位线并且关闭所述经识别的位线,以最小化后续感测中的源极线偏压误差。
在另一实施例中,预充电电路未经特定配置以帮助识别高电流的位线,而是,预充电电路经最佳化,以在存储器系统可用的最大电流的容许范围内,尽可能快地上拉且预充电位线。
阶段(3):恢复/预充电
在感测先前尚未下拉的位线中的传导电流之前,通过转变为低的信号FLT来激活预充电电路,以将内部感测节点SEN2预充电至Vdd(图10(C)及图10(I2)-10(I4)),并且可能已部分耦合的位线因相邻位线上的电压减小而下降。
阶段(4):第一A.C.感测
在一个实施例中,通过确定浮动的内部感测节点SEN处的电压降来执行A.C.(交流或瞬变)感测。这是通过鉴别器电路而实现,其采用耦合至内部感测节点SEN的电容器Csa,并且考虑正在用于为其充电(减小节点SEN上的电压)的传导电流的速率。在集成电路环境中,通常用晶体管来实施电容器Csa,但是,其它实施方案也是适合的。电容器Csa具有一预定电容(例如,30fF),其可经选择以用于最佳电流确定。可通过适当调整充电周期来设置鉴别电流值,通常在100毫微安培至1000毫微安培范围内。
所述鉴别器电路感测所述内部感测节点SEN中的信号SEN。在每次感测之前,通过预充电晶体管642将在所述内部感测节点SEN处的信号上拉至Vdd。这将初始设置横跨电容器Csa的电压为零。
当读出放大器600准备好进行感测时,通过转变为高的FLT来停用预充电电路(图10(C))。通过断言(assertion)选通信号STB来结束第一感测周期T1。在感测周期期间,传导中的存储器单元所引起的传导电流将对电容器进行充电。通过位线中的传导电流的汲取动作,SEN处的电压将随着对电容器Csa进行充电而从Vdd减小。图10(G)(请参阅曲线G2至G4)说明对应于其余三个示范性位线的节点SEN,所述三个位线分别连接至具有400毫微安培、220毫微安培与40毫微安培的传导电流的存储器单元,存储器单元的传导电流越高,减少速率越快。
阶段(5):从后续感测进行第一A.C.锁存及移除较高电流的单元
在第一预定感测周期结束时,节点SEN将已减小至某电压,其取决于位线中的传导电流(请参阅图10G的曲线G2至G4)。作为一个实例,在此第一阶段中的分界电流被设置为300毫微安培。电容器Csa、感测周期T1及p型晶体管656的阈值电压是致使对应于高于分界电流(例如,300毫微安培)的传导电流的SEN处的信号将下降至充分低以接通晶体管656。当锁存信号STB选通低时,输出信号INV将被拉至高,并且将被锁存器382锁存(图10(E)与图10(H)(曲线H2))。另一方面,对应于低于分界电流的传导电流的信号SEN将产生一无法接通晶体管656的信号SEN。在此情况中,锁存器382将维持不变,在所述情况中,LAT维持高(图10(H3)与10(H4))。因此,可了解到,鉴别器电路有效地确定位线中的传导电流相对于感测周期所设置的参考电流的量值。
读出放大器600还包括第二电压箝位晶体管612,其用途旨在使所述晶体管612的漏极的电压维持充分高,以使位线电压箝位610正常运作。如上文所述,位线电压箝位610将位线电压箝位至一预定值VBL(例如,0.5伏)。这将需要将晶体管612的栅极电压BLC设置为VBL+VT(其中VT为晶体管612的阈值电压),并且连接至感测节点501的漏极高于源极,即,信号SEN2>VBL。具体而言,给定电压箝位的配置,SEN2应不高于XX0-VT或BLX-VT中的较小者,并且SEN应不低于所述较小者。在感测期间,隔离栅极630处于传递(pass-through)模式。但是,在感测期间,在所述内部感测节点SEN处的信号具有从Vdd减小的电压。第二电压箝位防止SEN降至低于XX0-VT或BLX-VT中的较小者。这是通过受控于信号BLX(其中BLX≥VBL+VT)的n型晶体管612来实现的。因此,通过电压箝位的动作,使位线电压VBL在感测期间保持恒定(例如,~0.5伏)。
通过锁存器电路382来锁存电流确定的输出。通过晶体管661、662、663与664连同晶体管666与668一起将锁存器电路形成为设置/重设锁存器。p型晶体管666受控于信号RST(重设(RESET)),并且n型晶体管668受控于信号STB。上文所述的经调适用于低电压操作的读出放大器的变化方案请参阅发明人Raul-Adrian Cernea于2004年12月16日申请的标题为“用于低电压操作的改进的存储器感测电路及方法”(″ImprovedMemory Sensing Circuit And Method For Low Voltage Operation″)的第11/015,199号美国专利申请案,所述申请案的全文以引用方式并入本文中。
一般而言,将有一页存储器单元是由对应数目的多遍感测模块380来操作。对于具有高于第一分界电流电平的传导电流的那些存储器单元,其LAT信号将被锁存为低(INV被锁存为高)。这接着激活位线下拉电路520,以将对应的位线拉至接地,借此关闭其电流。
阶段(6):恢复/预充电
在下一次感测先前尚未下拉的位线中的传导电流之前,通过信号FLT来激活预充电电路,以将内部感测节点631预充电至Vdd(图10(C)及图10(I3)-10(I4))。
阶段(7):第二感测
当读出放大器600准备好进行感测时,通过转变为高的FLT来停用预充电电路(图10(C))。通过断言选通信号STB来设置第二感测周期T2。在感测周期期间,传导电流(如果有的话)将对电容器进行充电。通过位线36中的传导电流的汲取动作,在节点SEN处的信号将随着对电容器Csa进行充电而从Vdd减小。
根据前文的实例,已识别出具有高于300毫微安培的传导电流的存储器单元,并且在早先阶段中关闭所述存储器单元。图14(G)(曲线G3与G4)分别说明对应于两个示范性位线的SEN信号,所述两个位线分别连接至具有220毫微安培与40毫微安培的传导电流的存储器单元。
阶段(8):用于读出的第二锁存
在第二预定感测周期T2结束时,SEN将已减小至某电压,其取决于位线中的传导电流(图10G的曲线G3与G4)。作为一个实例,此第二阶段中的分界电流被设置为100毫微安培。在此情况下,具有220毫微安培的传导电流的存储器单元的INV经锁存为高(图10(H)),并且随后其位线被拉至接地(图10(I3))。另一方面,具有40毫微安培的传导电流的存储器单元将不影响锁存器的状态,所述状态是用LAT高来预设的。
阶段(9):读出至总线
最后,在读出阶段中,传送栅极530处的控制信号NCO允许经锁存的信号SEN2被读出至读出总线532(图10(J)与10(K))。
如图10(I1)至10(I4)可见,在每一感测周期期间位线电压维持恒定。因此,在前文的论述中排除了电容性位线至位线耦合。
上文所述的感测模块380是一个用三遍来执行感测的实施例,最前面的两遍是经实施以识别及关闭较高电流的存储器单元。由于排除了较高电流对源极线偏压的促成,所以最后一遍能够更准确地感测具有较低范围传导电流的单元。
在其它实施例中,用不同组合的D.C.遍与A.C.遍来实施感测操作,一些感测操作仅使用两遍或两遍以上A.C.,或仅使用一遍。对于不同遍,所使用的分界电流值可能每次相同,或以渐进方式收敛于最后一遍使用的分界电流。另外,上文所述的感测实施例仅是适合的感测模块的一个实例。也可使用其它设计与技术来实施本文所述的本发明。对于本文所述的本发明,并不需要或提议任何特定的感测模块。
图11为用以描述编程非易失性存储器的方法的一个实施例的流程图。在一个实施方案中,在编程之前先擦除存储器单元(以区块为单位或其它单位)。在一个实施例中,擦除存储器单元的方式为:使p阱上升至一擦除电压(例如,20伏)达一段充分时间周期,并且使选定区块的字线接地,同时源极线及位线处于浮动状态。由于电容性耦合,非选定字线、位线、选择线及c-源极也上升至所述擦除电压的一有效分数。因此,施加强电场至选定存储器单元的穿隧氧化物层,并且由于浮动栅极的电子被发射至衬底侧(通常是通过福勒-诺德海姆(Fowler-Nordheim)穿隧),导致选定存储器单元的数据被擦除。随着电子从浮动栅极转移至p阱区,选定存储器单元的阈值电压被降低。可对整个存储器阵列、单独的区块或另一单元单位来执行擦除。
在图11的步骤700中,由控制器发出“数据加载”命令,且由控制电路310接收所述命令。在步骤702中,从控制器或主机将指定页地址的地址数据输入至解码器314。在步骤704,将所寻址的页的一页编程数据输入至数据缓冲器以进行编程。所述数据被锁存在适当组的锁存器中。在步骤706中,控制器向状态机312发出“编程”命令。
通过“编程”命令的触发,使用图12所示的施加至适当字线的步进式脉冲,将由状态机312控制以将在步骤704中锁存的数据编程至选定存储器单元中。在步骤708中,编程电压Vpgm被初始化为开始脉冲(例如,12伏或其它值),并且状态机312所维持的编程计数器PC被初始化为0。在步骤710中,施加第一Vpgm脉冲至选定字线。如果在一特定数据锁存器中存储逻辑“0”,从而指示应编程对应的存储器单元,那么对应的位线被接地。另一方面,如果在特定锁存器中存储逻辑“1”,从而指示对应的存储器单元应维持其当前数据状态,那么对应的位线被连接至Vdd以禁止编程。
在步骤712中,验证选定存储器单元的状态,以确定其是否已到达其目标阈值电压。如果检测到选定存储器单元的阈值电压已到达目标电平,那么对应的数据锁存器中存储的数据被改变为逻辑“1”。如果检测到阈值电压未到达适当电平,那么不改变对应的数据锁存器中存储的数据。以此方式,在本身对应的数据锁存器中已存储逻辑“1”的位线不需要编程。当所有数据锁存器皆正在存储逻辑“1”时,状态机(经由上文所述的线“或”连接型机制)知道已编程所有选定存储器单元。在步骤714中,检查是否所有数据锁存器正存储逻辑“1”。如果是,因为所有选定存储器单元皆经编程且验证,所以编程过程完成且成功。在步骤716中,报告“通过(PASS)”状态。
在步骤714中,如果确定并非所有数据锁存器都正存储逻辑“1”,那么编程过程继续进行。在步骤718中,对照一编程限制值PCMAX来检查所述编程计数器PC。编程限制值的一个实例为20,但是,也可使用其它数值。如果编程计数器PC不小于20,那么编程过程已失败且在步骤720中报告“失败”状态。在一些实施例中,到达最大循环次数之后,系统检查是否少于预定数目的单元尚未完成编程。如果少于所述预定数目的单元尚未完成编程,那么编程过程仍然视为通过。如果所述编程计数器PC小于20,那么按步进大小来增加Vpgm电平,并且在步骤722中使所述编程计数器PC递增。在步骤722之后,过程循环回到步骤710,以施加下一Vpgm脉冲。
图12展示一连串编程脉冲,其被施加至经选择用以编程的字线。编程脉冲之间的是一组验证脉冲(图中未描绘)。在一些实施例中,对于正在将数据编程于其中的每一状态可能有一验证脉冲。在其它实施例中,可能有更多或更少的验证脉冲。
在一个实施例中,数据是沿一共同字线编程至存储器单元。因此,在施加图12的编程脉冲之前,先选择字线之一来编程。此字线将称为选定字线。区块中的其余字线称为非选定字线。
如果适当,在成功编程(具有验证)过程结束时,存储器单元的阈值电压应在经编程的存储器单元的一个或一个以上阈值电压分布内或在经擦除的存储器单元的一阈值电压分布内。图13说明当每一存储器单元存储两个位的数据时存储器单元阵列的示范性阈值电压分布。图13展示经擦除的存储器单元的第一阈值电压分布E。还描绘出经编程的存储器单元的三种阈值电压分布A、B和C。在一个实施例中,E分布中的阈值电压是负值,A、B和C分布中的阈值电压是正值。
图13的每一相异阈值电压范围对应于用于所述组数据位的预定值。编程于存储器单元中的数据与单元的阈值电压电平之间的特定关系取决于单元所采用的数据编码方案。举例而言,第6,222,762号美国专利及2003年6月13日申请的第2004/0255090号美国专利申请公开案“追踪存储器系统的单元”(″Tracking Cells For A Memory System″)(所述两案的全文以引用方式并入本文中)描述用于多状态式快闪存储器单元的各种数据编码方案。在一个实施例中,使用格雷码(Gray code)指派将数据值指派给所述阈值电压范围,使得如果一浮动栅极的阈值电压错误地偏移至其邻近物理状态,那么仅一个位将受到影响。一个实例指派“11”给阈值电压范围E(状态E);指派“10”给阈值电压范围A(状态A);指派“00”给阈值电压范围B(状态B);且指派“01”给阈值电压范围C(状态C)。但是,在其它实施例中,不使用格雷码。虽然图13展示四种状态,但是也可配合其它多状态结构(包括具有四种以上或四种以下状态的多状态结构)使用本发明。举例而言,一些非易失性存储元件可利用八种(七种经编程状态与一种经擦除状态)或八种以上状态。
图13还展示用于从存储器单元读取数据的三个读取参考电压Vra、Vrb和Vrc。通过测试给定存储器单元的阈值电压是否高于或低于Vra、Vrb和Vrc,系统可确定所述存储器单元所处的状态。
图13还展示三个验证参考电压Vva、Vvb和Vvc。当将存储器单元编程至状态A时,系统将测试所述存储器单元是否具有大于或等于Vva的阈值电压。当将存储器单元编程至状态B时,系统将测试存储器单元是否具有大于或等于Vvb的阈值电压。当将存储器单元编程至状态C时,系统将确定存储器单元是否具有大于或等于Vvc的阈值电压。
在一个称为全序列编程的实施例中,可将存储器单元从经擦除状态E直接编程至所述经编程状态A、B或C中的任一状态。举例而言,可先将待编程的一存储器单元群体擦除,使得所述群体中的所有存储器单元皆处于经擦除状态E。当一些存储器单元正被从状态E编程至状态A时,其它存储器单元正被从状态E编程至状态B和/或从状态E编程至状态C。
图14说明一种编程多状态式存储器单元的两遍(two-pass)技术的实例,其存储两个不同页(下部页与上部页)的数据。图中描绘四种状态:状态E(11)、状态A(10)、状态B(00)及状态C(01)。对于状态E,两页均存储“1”。对于状态A,下部页存储“0”且上部页存储“1”。对于状态B,两页均存储“0”。对于状态C,下部页存储“1”且上部页存储“0”。请注意,虽然特定位模式(bit pattern)已被指派给每一状态,但是也可指派不同的位模式。
在第一遍编程中,按照待编程至下部逻辑页中的位来设置单元的阈值电压电平。如果所述位是逻辑“1”,那么由于其早先已被擦除而处于适当状态,因此未使阈值电压变化。但是,如果待编程的位是逻辑“0”,那么单元的阈值电平增加至状态A,如箭头730所示。
在第二遍编程中,按照正被编程至上部逻辑页中的位来设置单元的阈值电压电平。如果所述上部逻辑页位存储逻辑“1”,那么由于所述单元处于状态E或A之一(取决于下部页位的编程),所述两种状态皆带有上部页位“1”,所以未发生编程。如果所述上部页位是逻辑“0”,那么使阈值电压偏移。如果第一遍导致单元维持在经擦除状态E,那么在第二阶段中,将所述单元编程,使得阈值电压增加至状态C内,如箭头734所示。如果第一遍编程导致所述单元已被编程为状态A,那么在第二遍中进一步编程所述存储器单元,使得阈值电压增加至状态B内,如箭头732所示。第二遍的结果是将单元编程为经指定用以为上部页存储逻辑“0”的状态,而不改变下部页的数据。
在一个实施例中,可设定一系统以在写入数据足以填满一字线的情况下执行全序列写入。如果写入的数据不足,那么编程过程可用所接收的数据来编程下部页编程。当接收到后续数据时,系统将接着编程上部页。在另一个实施例中,系统可在编程下部页的模式中开始进行写入,并且如果随后接收到足以填满一整个(或一大部分)字线的存储器单元的数据,那么转换至全序列编程模式。此实施例的详细信息请参阅发明人SergyAnatolievich Gorobets及Yan Li于2004年12月14日申请的标题为“使用早期数据对非易失性存储器进行管线式编程”(″Pipelined Programming of Non-Volatile MemoriesUsing Early Data″)的第11/013,125号美国专利申请案,所述申请案的全文以引用方式并入本文中。
图15为用以描述从非易失性存储器单元读取数据的一个实施例的流程图。在前文关于感测模块的论述中论述了如何从特定位线读取数据。图15提供系统级的读取过程。在步骤800中,接收来自主机、控制器或另一实体的读取数据的请求。如上文所述,非易失性存储器单元的浮动栅极(或其它电荷存储元件)上存储的表观电荷的偏移可能因基于相邻浮动栅极(或其它相邻电荷存储元件)中存储的电荷的电场耦合而发生。为了补偿此耦合,对于给定存储器单元的读取过程将考虑到相邻存储器单元的经编程状态。步骤802包括确定是否对邻近浮动栅极之间的耦合提供此补偿。在一些实施例中,步骤802还包括确定要使用多少补偿。在步骤804中,响应于读取数据的请求,对于特定页或其它数据单位执行读取过程。步骤804的读取过程可包括基于步骤802适当补偿邻近浮动栅极之间的耦合。在一个实施例中,在步骤804中读取的存储器单元被连接至一共同字线,但是连接至不同位线。
在一个实施例中,当编程用于一页的数据时,系统也将建立错误校正码(ECC),并且连同所述页数据一起写入所述ECC。ECC技术是此项技术中众所周知的技术。使用的ECC过程可包括此项技术已知的任何适合ECC过程。当从一页(或其它数据单位)读取数据时,将使用ECC来确定所述数据中是否有任何错误(步骤806)。可由控制器、状态机或系统中的其它位置执行ECC过程。如果所述数据中无错误,那么在步骤808将所述数据报告给用户。如果在步骤806中发现错误,那么确定所述错误是否可校正(步骤810)。各种ECC方法具有校正一组数据中预定数目的错误的能力。如果ECC过程可校正所述数据,那么在步骤812中使用ECC过程来校正所述数据,并且在步骤814中将校正后的数据报告给用户。如果所述数据不可通过ECC过程来校正(步骤810),那么在步骤820中将错误报告给用户。在一些实施例中,步骤820也可包括报告所有数据或一子组的数据。如果已知一子组的数据不具有错误,那么可报告所述子组。
图16为描述从非易失性存储器单元读取数据的另一实施例的流程图,此个实施例可能对邻近浮动栅极之间的耦合使用补偿。图15的过程与图16的过程之间的一个差异在于,图16的过程仅在读取过程期间有错误的情况下使用补偿。
在图16的步骤840中,接收来自主机、控制器或另一实体的读取数据的请求。在步骤842中,响应于读取数据的请求,对于特定页或其它数据单位执行读取过程。步骤842的读取过程不包括本文所描述的耦合补偿。步骤844包括确定所述数据中是否有任何错误。如果所述数据中无错误,那么在步骤846处将所述数据报告给用户。如果在步骤844处发现错误,那么在步骤850中确定所述错误是否可校正。各种ECC方法均具有校正一组数据中的预定数目的错误的能力。如果ECC过程可校正所述数据,那么在步骤852中使用ECC过程来校正所述数据,并且在步骤854中将校正后的数据报告给用户。如果所述数据不可通过ECC过程来校正(步骤850),那么系统将通过配合对邻近浮动栅极之间的耦合的补偿执行读取过程来尝试恢复数据。因此,在步骤860中,系统确定是否使用补偿和/或使用多少补偿来解决邻近浮动栅极之间的耦合。在步骤862中,响应于读取数据的请求,对于特定页或其它数据单位执行读取过程。步骤862的读取过程通过基于步骤860适当补偿邻近浮动栅极之间的耦合来尝试恢复数据。
目标浮动栅极的邻近浮动栅极可包括:位于相同位线但位于不同字线的邻近浮动栅极;位于相同字线但位于不同位线的邻近浮动栅极;或位于目标浮动栅极对角处的浮动栅极,原因是所述浮动栅极既位于邻近位线又位于邻近字线上。在一个实施例中,本文所论述的耦合补偿可应用于上文提出的各组邻近浮动栅极中的任一组。在一些实施例中,本文所描述的耦合补偿可应用于位于相同字线但位于不同位线的邻近浮动栅极。举例而言,存储器单元362的表观阈值电压可因来自存储器单元364与366的耦合而改变(请参阅图7)。关于补偿因位于相同位线但位于不同字线的邻近浮动栅极的耦合的详细信息请参阅发明人Yan Li与Jian Chen于2005年4月5日申请的标题为“包括耦合补偿的非易失性存储装置的读取操作”(″Read Operation For Non-Volatile Storage ThatIncludes Compensation for Coupling″)的第11/099,049号美国专利申请案,所述申请案的全文以引用方式并入本文中。一些实施例对位于相同字线但位于不同位线的邻近浮动栅极之间的耦合以及于位于相同位线但位于不同字线的邻近浮动栅极之间的耦合提供补偿。
邻近浮动栅极之间的耦合量取决于当编程所述邻近浮动栅极时的时序。同时被编程的两个邻近浮动栅极很可能少有耦合或无任何耦合。最大耦合量很可能发生于如下两个邻近浮动栅极之间:其中一个浮动栅极未被编程(例如,维持在经擦除状态E);并且另一浮动栅极随后被编程为最高(例如,最大程度)经编程状态(例如,被编程至状态C,请参阅图13)。因为状态E与状态A之间有大的裕度,所以甚至在存在耦合的情况下,读取处于状态E的数据也不太可能有错误。第二大的耦合量是在被编程至状态A的浮动栅极与被编程至状态C的稍后编程浮动栅极之间。因此,在一个实施例中,将使用耦合补偿的唯一时间是当存储器单元处于一组状态中的第一经编程状态(例如,状态A),并且其邻近者处于所述组状态中的最高经编程状态(例如,状态C)时(所述组状态有4种状态、8种状态或不同数目的状态)。在其它实施例中,当一邻近存储器单元处于不同状态(例如状态B或另一状态)时,可使用耦合补偿。在使用多于或少于四种状态的一些实施例中,当邻近存储器单元处于经发现造成耦合的状态时,可使用耦合补偿。类似地,如果适用于特定实施方案,当目标存储器单元是处于除状态A以外的状态时,可使用耦合补偿。
如果可使用某技术来检测或获取邻近存储器单元的状态,那么可在下一读取操作中确定及调整所考虑的存储器单元所需的校正量。一种得知特定存储器单元的状态的方式是通过读取操作。但是,在一个实施例中,用于邻近位线的读出放大器之间无任何通信。甚至在读取操作之后,所考虑的存储器单元仍将不知道其邻近存储器单元的状态。
图17为描述基于存储器单元是否处于状态A以及其邻近者中的一者或一者以上是否处于状态C来确定是否应使用补偿及使用多少补偿的一个实施例的流程图。有至少两种情形。在第一种情形中,正被读取的特定存储器单元处于状态A并且其邻近者中的一者处于状态C。在第二种情形中,正被读取的特定存储器单元处于状态A并且其邻近者中的两者(不同位线)处于状态C。图17的过程确定特定存储器单元(或特定位线)的任何邻近者是否处于状态C(或处于一组7种或7种以上状态中的最高经编程状态)。可使用此过程来实施图15的步骤802及图16的步骤860。
在图17的步骤900中,读取连接至选定字线的所有存储器单元(或一子组存储器单元),以确定所述存储器单元是否处于状态C。这是通过使用读取比较点Vrc来实现的。具有高于Vrc的阈值电压的那些存储器单元被假设为处于状态C。具有低于Vrc的阈值电压的那些存储器单元不处于状态C。使用Vrc进行读取操作结束时,每一读出放大器将锁存对应的存储器单元是否处于状态C。一个必须克服的障碍是,在一些实施方案中,读出放大器无法与邻近读出放大器交谈。因此,请参阅图7,用于位线BL2的读出放大器无法与读出放大器位线BL1或位线BL3通信。因此,用于BL2的读出放大器无法得知位于BL1及BL3上的邻近存储器单元是否处于状态C。执行步骤902至910以指示邻近存储器单元是否处于状态C。在步骤902处,连接至在步骤900中经感测是处于状态C的存储器单元的所有位线被充电至一预定电压。在一个实例中,具有处于状态C的存储器单元的位线被充电至0.5伏。请重新参阅图9,可实现此充电的方式为,施加0.5伏+Vth(晶体管612的阈值电压)至晶体管612的栅极并且将RST信号切换为低以促使INV=0。用INV=1来设定其它读出放大器,并且因此其位线将未被充电。在GRS=0的情况下,在位线上无任何有效的下拉。当具有C数据的位线充电时,因位线至位线耦合,导致邻近位线将被耦合至所述位线。在一个实施方案中,此耦合可能是总位线电容的40%。对于两个邻近者均具有C数据的位线,电容性耦合可高达总位线电容的80%。举例而言,如果位线的一个邻近者具有C数据,那么可通过约0.15伏而耦合。如果位线的两个邻近者均具有C数据,那么其可通过约0.3伏而耦合。
在步骤904中,识别出两个邻近者具有C数据的位线。在一个实施例中,通过将BLC降低至0.2+Vth(晶体管612的阈值电压)来实现步骤904。这将造成具有两个C邻近者的位线将其晶体管612断开,原因是晶体管612的漏极侧是Vdd且源极侧是0.3伏。接着,SEN节点将不被放电,读出放大器将锁存LAT=1。具有一个C邻近者或不具有C邻近者的其它位线将使晶体管612传导。由于位线的电容比电容器Csa高很多,所以SEN节点将放电,并且读出放大器将锁存LAT=0。SEN节点是否经充电或经放电的结果将被存储在适当数据锁存器394中(步骤906)。在步骤906之后,读出放大器与位线被重设,并且接着在步骤908中,再次对连接至处于状态C的存储器单元的那些位线进行充电,类似于步骤902。在步骤910中,通过施加BLC=0.15伏+Vth(晶体管612的阈值电压)来感测耦合至一个或一个以上C邻近者的那些位线。系统感测一个或一个以上邻近者具有处于状态C的存储器单元的那些位线。在步骤912中,将把结果存储在锁存器394中的一者中。对于在步骤904中存储有两个邻近者处于状态C的指示及在步骤908中存储有一个或一个以上邻近者处于状态C的指示的位线,假设所述位线具有处于状态C的两个或两个以上邻近者。对于在步骤906中未存储有两个或两个以上邻近者处于状态C的指示但是在步骤910中存储有一个或一个以上邻近者处于状态C的指示的位线,假设所述位线具有处于状态C的一个邻近者。
图18为用曲线图描绘在图17的过程中执行的一些操作的时序图。时序图被分成对应于步骤902、904与906的三段时间周期。在步骤902期间,可看出信号BLC上升至0.5伏加晶体管612的阈值电压。对于耦合至经连接至选定字线且处于状态C的存储器单元的所有位线完成此操作。图中所示的那些位线上升至0.5伏。接着,具有两个C邻近者的位线被耦合至所述两个对应的邻近位线,致使所述位线上升至0.3伏。不具有C邻近者的位线将维持在0伏。在此时间范围期间,信号GRS为低。接着,BLC下降至0伏且随后上升至0.2伏加晶体管612的阈值电压,此时感测位线(步骤904)。在两个状态C邻近者旁边的那些位线将不对SEN节点进行放电(请参阅线914)。不具有两个状态C邻近者的位线将对SEN节点进行放电(请参阅线916)。将数据锁存在适当位线锁存器382中之后,数据将被传送至数据锁存器394。
图19描述读取过程的一个实施例,其可包括对于具有一个或一个以上C邻近者的存储器单元提供补偿。图19的过程提供图15的步骤804及图16的步骤862的一个实施例的更多细节。另外,可使用步骤940至950及964至972来实施图16的步骤842。可对于一页数据执行图19的过程,其中所述一页数据涵盖一字线及所有位线,或一子组的位线。在图19的步骤940中,施加读取参考电压Vra至与所述页相关联的适当字线。这造成将读取参考电压Vra施加至用于连接至所述字线的存储器单元的控制栅极。在步骤842中,感测与页相关联的位线,以基于施加Vra至其控制栅极而确定经寻址的存储器单元是否传导。传导的位线指示存储器单元接通;因此,那些存储器单元的阈值电压低于Vra(例如,处于状态E中)。在步骤944中,将位线的感测结果存储在用于所述位线的适当锁存器中。
在步骤946中,施加读取参考电压Vrb至与正被读取的页相关联的字线。在步骤948中感测位线,如上文所述。在步骤950中,对于连接至页中不具有处于状态C的邻近存储器单元的存储器单元的那些位线,将结果存储在适当锁存器中。
此个实施例尝试校正在处于状态C的存储器单元旁边的处于状态A的数据。可造成的错误是:存储器单元将具有增大的表观阈值电压,使得当其实质上处于状态A时,其看起来是处于状态B。在步骤952中,将Vrb加第一偏移量施加至与正被读取的页相关联的字线。在步骤954中感测位线,如上文所述。在步骤956中,对于连接至页中具有一个处于状态C的邻近存储器单元的存储器单元的那些位线,将结果存储在适当锁存器中。在步骤958,将Vrb加第二偏移量施加至与正被读取的页相关联的字线。在步骤960中感测位线,如上文所述。在步骤962中,对于连接至所述页中具有两个处于状态C的邻近存储器单元的存储器单元的位线,将结果存储在适当锁存器中。
在步骤964中,施加读取参考电压Vrc至与正被读取的页相关联的字线。在步骤966中感测位线,如上文所述。在步骤968中,对于所有位线,将结果存储在适当锁存器中。在步骤970中,确定所述页(或其它数据单位)中的每一存储器单元的数据值。举例而言,如果存储器单元在Vra下传导,那么所述存储器单元是处于状态E。如果存储器单元在Vrb(或Vrb加第一偏移量,或Vrb加第二偏移量)及Vrc下传导,但不在Vra下传导,那么所述存储器单元处于状态A。如果存储器单元在Vrc下传导,而不在Vra或Vrb(或Vrb加任一偏移量)下传导,那么所述存储器单元处于状态B。如果存储器单元在Vra、Vrb(或Vrb加任一偏移量)或Vrc下皆不传导,那么所述存储器单元处于状态C。在一个实施例中,由处理器392来确定数据值。在步骤972中,对于每一位线,处理器392将经确定的数据值存储在适当锁存器中。在其它实施例中,各种电平(Vra、Vrb和Vrc)的感测可依不同顺序发生。
第一偏移量及第二偏移量的量取决于特定实施方案。本文所述的本发明不取决于第一偏移量或第二偏移量的任何特定值。在一个实施例中,第一偏移量是0.1伏,并且第二偏移量是0.2伏;但是,也可在适当情况下使用其它值。
取代在读取过程期间校正不同位线上邻近存储器单元之间的电容性耦合,也可在编程时执行补偿。由于系统将在编程时得知数据,所以如果存储器单元的一个或一个以上邻近者被指派为编程至状态C,那么系统可刻意用稍微较低的阈值电压将所述存储器单元编程至状态A。以此方式,在被指派至状态C的邻近者已完成编程之后,将正确读取状态A的存储器单元。
一种在不会不合理地减缓编程过程的情况下实现紧密阈值电压分布的解决方案是使用一种两阶段式编程过程。第一阶段(粗略编程阶段)包括尝试使阈值电压以较快方式上升,并且相对较不注意实现紧密阈值电压分布。第二阶段(精细编程阶段)尝试使阈值电压以较慢方式上升,以到达目标阈值电压且同时实现较紧密的阈值电压分布。有关粗略/精细编程方法的实例请参阅第6,888,758号美国专利,所述专利的全文以引用方式并入本文中。
在一个粗略/精细编程方法的实例中,过程中使用两个验证电平:目标验证电平(也称为精细验证电平)及粗略验证电平。过程将开始于执行编程过程的粗略阶段。当存储器单元的阈值电压到达粗略验证电平(其低于目标验证电平)时,通过使位线电压上升至大于0伏且小于禁止电压的值,存储器单元将进入精细编程阶段。在粗略阶段期间,位线电压将为约0伏。为了禁止存储器单元进行编程,位线电压上升至禁止电压(例如,Vdd)。与粗略编程阶段相比较,在精细编程阶段期间编程缓慢,这是因为位线电压从0伏上升至中间值的影响。因此,在粗略编程阶段期间,每编程步骤的阈值电压的变化很可能较小。存储器单元将继续处于精细编程阶段,直到存储器单元的阈值电压已到达目标阈值电压为止。当存储器单元的阈值电压到达目标阈值电压时,位线电压上升至Vdd(或其它禁止电压),以禁止对所述存储器单元进行进一步编程。
所提议的编程方法(其包括校正不同位线上的邻近存储器单元之间的耦合)将使用上文所述的粗略/精细编程过程;但是,将使用三个验证电平,而非使用两个验证电平。举例而言,图20展示状态A的阈值电压分布980。用于验证的目标电压为Vva。用于上文所述的粗略/精细编程的现有技术方法具有标示为Vca的粗略验证电平。所提议的方案包括增加第三验证电平Via,其用途如下文所述。总而言之,在粗略编程阶段期间,存储器单元将被编程直到阈值电压到达Vca为止。在精细阶段中将编程需要补偿的那些存储器单元(因为所述存储器单元正被编程至状态A并且在将被编程至状态C的存储器单元的旁边),直到阈值电压到达Via为止。在精细阶段中将编程其它存储器单元,直到所述存储器单元的阈值电压到达Vva为止。因此,具有处于状态C的邻近者的处于状态A的存储器单元很可能具有较低的阈值电压,可能甚至低于目标阈值电压分布980。因此,耦合将造成所述存储器单元的阈值电压上升至阈值电压分布980中。
图21提供阈值电压相对于时间的曲线图以及位线电压相对于时间的曲线图,用以指示对于因其邻近者皆不处于状态C而不需要补偿的存储器单元的粗略/精细编程的一个实例。所述曲线图假设:在时间t1、t2、t3、t4与t5,将一编程脉冲施加至存储器单元的控制栅极。在与t1、t2和t3相关联的脉冲处,存储器单元的阈值电压增大。在时间t3,存储器单元的阈值电压变成高于Vca。因此,粗略编程阶段结束,并且精细编程阶段开始。相应地,位线电压从0伏上升至中间电压V1(例如,1伏)。施加中间电压V1(而不是0伏)使所述位线的编程过程减慢。在时间t5,当存储器单元的阈值电压高于Vva时,位线电压将上升至禁止电压(例如,Vdd)。
图22展示对于不需要补偿的存储器单元(因为所述存储器单元的一个或一个以上邻近者是处于状态C,并且所述存储器单元正被编程至状态A)的曲线图。在时间t3,存储器单元的阈值电压已增大至到达Vca;因此,位线电压上升至中间电压V1。在时间t4,存储器单元的阈值电压到达Via(其大于Vca且小于Vva);因此,通过使位线电压上升至Vdd来锁定所述存储器单元以禁止进一步编程。
请注意,在其它实施例中,除了V1以外,还可使用多个中间电压。举例而言,接收补偿的存储器单元可使用一个中间位线电压,并且不接收补偿的存储器单元可使用另一中间位线电压。在其它实施例中,不同的位线可使用不同的中间电压。
图23为用以描述依据图21及图22的曲线图进行编程的过程的一个实施例的流程图。在步骤700中,控制器发出“数据加载”,且控制电路接收所述命令。在步骤1002中,从控制器或主机将指定页地址的地址数据输入至解码器314。在步骤1004中,所寻址的页的一页编程数据(或其它数据单位)被输入至数据缓冲器以进行编程。所述数据被锁存在适当组的锁存器中。在步骤1006中,控制器向状态机312发出“编程”命令。在步骤1008中,确定是否进行耦合补偿。举例而言,控制器350、控制电路310、感测区块400或另一组件将确定特定存储器单元是否将需要在编程过程期间接收补偿,因为所述特定存储器单元正被编程至状态C并且其一个或一个以上(或两个或两个以上)邻近者将被编程至状态C。在一个实施例中,由于控制器350与控制电路310知道所有编程数据,所以系统将自动得知是否必须进行补偿。在其它实施例中,用于每一位线的每一数据锁存器将知道待编程的数据。因此,感测区块400可执行图17的步骤908、910及912,以确定是否有任何位线的邻近者具有待编程至状态C的数据。如果是,那么标记具有此类邻近者的那些位线以进行补偿。在图23的一个实施例中,仅有一个补偿值被提供至具有处于状态C的一个或一个以上邻近者的存储器单元。在其它实施例中,可依据是否有一个处于状态C的邻近者或有两个处于状态C的邻近者来提供不同的值补偿。
在图23的步骤1010中,起始脉冲被设置为其起始值,编程计数器被设置为其起始值,并且位线电压被设置为其起始值。对于待被编程的存储器单元,位线电压将被设置为0伏。对于将不被编程的存储器单元,位线将被设置为Vdd。也可将起始电压的指示存储在锁存器中。在一些实施例中,可在编程脉冲步骤1012期间施加起始位线值(下文论述)。
在步骤1012中,将一编程脉冲施加至适当的字线。在步骤1014中执行一验证过程。如果存储器单元是处于粗略编程阶段中,那么将使用步骤1014的验证过程来确定存储器单元的阈值电压是否已到达粗略验证电平。如果存储器单元是处于精细编程阶段中,那么将对于需要补偿的那些存储器单元,对存储器单元的阈值电压与目标阈值电压(例如,Vva)或中间验证电平(例如,Via)进行比较。下文将提供步骤1014的详细细节。在步骤1016中,确定是否所有待被编程的存储器单元的状态均致使所述存储器单元已全部经过验证。如果所述存储器单元已全部经过验证,那么在步骤1018中报告成功的编程过程。如果所述存储器单元尚未全部经过验证,那么在步骤1020中,对照编程限制值PCMAX来检查所述编程计数器PC。如果编程计数器PC不小于PCMAX,那么编程过程已失败且在步骤1022中报告失败状态。如果所述编程计数器小于PCMAX,那么在步骤1024中,按步进大小来增加编程电压(Vpgm)量值,并且使所述编程计数器PC递增。在步骤1024之后,过程循环回到步骤1012,以施加下一Vpgm脉冲。
图24为用于描述图23的验证步骤1014的一个实施例的流程图。在步骤1060中,系统确定存储器单元是处于粗略编程阶段还是精细编程阶段。请注意,图23的过程描述对于一群组的存储器单元(例如,连接至一共同字线的一页存储器单元)执行的高阶过程。对于每一正被编程的特定存储器单元个别执行图24的过程。在一个实施例中,感测区块将配备一锁存器,用于存储特定存储器单元是处于粗略编程阶段还是精细编程阶段的指示。如果存储器单元是处于粗略编程阶段中,那么在步骤1062中用粗略验证电平(例如,Vca)来执行验证过程。即,将使用读出放大器来确定存储器单元的阈值电压是否已到达适合的粗略验证电平。举例而言,如果存储器单元正被编程至状态A,那么读出放大器将测试存储器单元的阈值电压是否已到达Vca,如上文所述。如果阈值电压已到达粗略验证电平(步骤1064),那么存储器单元已完成粗略编程阶段。因此,在步骤1066,位线电压上升至中间电压V1,致使存储器单元将在下一编程脉冲进入精细编程阶段。在步骤1066之后,过程将在步骤1080(下文论述)继续进行,以确定阈值电压是否也超过精细验证电平(或中间验证电平是适当的)。如果存储器单元的阈值电压尚未到达粗略验证电平,那么在步骤1068中,位线电压将维持在当前电平,致使存储器单元将继续粗略编程阶段。
在步骤1060中,如果确定存储器单元是处于精细编程阶段,那么在步骤1080中,确定存储器单元是否正被编程至状态A并且需要耦合补偿。如果不是,那么在步骤1082中使用精细验证电平(例如,目标验证电平Vva、Vvb或Vvc)来执行验证过程。如果需要补偿,那么在步骤1090中,使用中间验证电平Via来执行验证过程。如果存储器单元的阈值电压高于适合的验证电平(步骤1084),那么在步骤1088中通过使位线电压上升至Vdd来锁定所述存储器单元以禁止进一步编程。如果存储器单元的阈值电压不高于验证电平(步骤1084),那么在步骤1086中使位线电压维持在其当前电平,并且精细编程阶段将继续。
如上文所述,在编程序列期间可校正单元的浮动栅极至浮动栅极耦合效应。也可在读取操作期间校正所述耦合效应。下文论述的内容描述一读取序列,其并入位线至位线耦合效应作为对感测过程的修改因数,致使可依据邻近存储器单元状态来修改读取。图25及图26解说用于读取数据的过程的一个实施例,其允许对经历来自邻近存储器单元的耦合的某些存储器单元提供补偿。在步骤1100中,读取所有位线以确定连接至所述位线且连接至选定字线的存储器单元是否处于状态C。这是通过使用Vrc作为读取比较点来执行读取操作而执行的。具有处于状态C的存储器单元的那些位线将锁存存储器单元处于状态C的指示。图18展示读取操作。在步骤1102中,具有处于除状态C外的状态的存储器单元的那些位线将被充电。在一个实施例中,所述位线被充电至0.5伏。在步骤1102中对位线进行充电之后,在步骤1104中,连接至处于状态C的存储器单元的那些位线被充电至0.25伏与0.4伏之间。在步骤1104中对连接至处于状态C的存储器的位线进行充电将使在步骤1102中充电的位线耦合至高于0.5伏的电压。举例而言,图26展示位线BLn,其表示不具有处于状态C的存储器单元的位线。曲线图展示出在步骤1102期间位线正被充电至0.5伏。位线BLn+1连接至处于状态C的存储器单元,并且位线BLn+1是位线BLn的邻近者。在步骤1104期间,位线BLn+1被充电至约0.4伏。接着,位线BLn将被耦合至高于0.5伏的电压,如虚线1120所示。不在邻近者旁边的在步骤1104中被充电的那些位线将维持在0.5伏,如虚线1122所示。在图25的步骤1106中,将感测所有位线(或一子组的位线)。将感测到具有一C邻近者的位线具有较高的位线电压。因为较高的位线电压,所以位线将传导更多电流,这导致表现出较低的阈值电压。这将补偿邻近单元之间的耦合。具有C邻近者的单元在其邻近者被编程之后被耦合至高于其原始编程电平的浮动电压。此具有浮动栅极至浮动栅极耦合补偿的读取将正确读回单元的原始编程电平。此读取校正是在没有因多次读取操作所造成的耗时代价的情况下完成。一读取操作获得关于需要校正的存储器单元及不需要校正的存储器单元的结果。
在上文所述的一个实施例中,随着正在移除单元源极噪声,可能存在数次感测选通。在所有发送选通期间或稍后感测选通期间,可应用上文关于图25与26所述的过程。举例而言,在运用两次选通的一个实施例中,第一选通可不使用图25与26的过程,而第二选通可使用图25与26的过程。
上文说明内容描述用于在编程期间及读取期间补偿浮动栅极耦合的过程。在一些实施例中,在编程及读取两者期间均可执行补偿。但是,在大多数实施例中,将在编程期间或在读取期间执行补偿,但不在编程及读取两者期间均执行补偿。可基于存储器系统的使用确定是在读取期间还是在编程期间执行补偿。举例而言,如果存储器系统即将在数据将被编程非常少次数但被多次读取的主机中使用,那么可能最好在编程期间进行补偿。或者,如果主机将进行许多次编程但进行读取次数非常少,那么最好在读取过程期间执行补偿。
在一个实施例中,可制造存储器系统以包括用于在读取过程期间及在编程过程期间执行补偿的技术。在制造过程期间或之后的某时间点,可配置存储器系统,使得存储器系统将仅在读取过程期间执行补偿或仅在编程过程期间执行补偿。
图27提供用以描述用于配置存储器系统以使得存储器系统将在读取过程期间执行补偿或在编程过程期间执行补偿的过程的流程图。在步骤1200中,制造存储器系统以使其具备在读取期间执行补偿及在编程期间执行补偿的能力。这可包括制造半导体晶片。步骤1200也可任选地包括使用此项技术中已知的工艺来封装晶片。封装可具有或可不具有用以执行上文所述的配置的切换器。用于在集成电路上增加连接至存储元件的此切换器的技术在此项技术中是已知的。在步骤1202中,基于想要的用途来设置一旗标(补偿旗标,其为在步骤1200中制造的存储器系统的一部分),以指示是否应在读取期间执行补偿或是否应在编程期间执行补偿。可在制造过程期间、在制造过程之后、在测试过程期间或正在使用装置时设置旗标。在步骤1204中,当正在使用装置时,系统将检查补偿旗标。如果补偿旗标被设置为在读取期间执行补偿,那么在步骤1206中,存储器系统将在读取过程期间提供耦合补偿。如果补偿旗标被设置为用于编程,那么存储器将在编程过程期间提供耦合补偿(步骤1208)。
可用许多不同方式在步骤1202中设置旗标。在制造或测试过程期间,可设置一ROM熔丝,以指示应在读取期间执行补偿或在编程期间执行补偿。在其它实施例中,可在制造过程期间或以后实施和/或设置用于存储一旗标的指示的其它构件(例如,非易失性阵列中的存储器单元、触发器或其它存储装置)。也可在测试过程期间或使用期间设置旗标。另外,用于集成电路的封装可包括切换器,用户可在将存储卡插入到主机中之前设置所述切换器。
在一些实施例中,可在将存储器系统插入到主机中之后,在步骤1202中设置补偿旗标。图28至图31提供此配置的实例。在图28的步骤1300中,在主机中安装存储器系统。主机的实例可包括数字相机、音乐播放器、移动电话、手持型计算装置或其它计算装置。为了实例的目的,考虑音乐播放器,与进行编程相比,其可能更加频繁地进行读取。因此,音乐播放器可在编程期间提供补偿。另一方面,数字相机可能更加频繁地进行编程,因此,可能更适合在读取过程期间提供补偿过程。在图28的步骤1302中,主机将向控制器通知其偏好。即,将预先编程主机以知道当主机想要执行补偿时其可使用已知协议来告知控制器。在步骤1304中,控制器将接收来自主机的偏好,并且基于从主机接收的偏好来设置补偿旗标(存储于存储器单元或其它存储装置中)。
图29提供用以配置存储器系统的另一实施例的流程图。在步骤1320中,在主机中安装存储器系统。在步骤1332中,用户可选择偏好。在一个实施例中,用户将通过移动一机械切换器来选择偏好,或在主机的用户界面中选择偏好。举例而言,数字相机的用户可选择在读取期间执行补偿,而音乐播放装置的用户可选择在编程期间执行补偿。在步骤1334中,主机向控制器通知所述偏好。在步骤1336中,控制器基于从主机接收的偏好来设置补偿旗标。
图30提供用以描述用于配置存储器系统的过程的另一实施例的流程图。在步骤1330中,在主机中安装存储器系统。在步骤1332中,控制器请求主机识别自己。举例而言,主机可指示其是数字相机、音乐播放器、PDA、手机等等。在步骤1334中,控制器将接收所述信息并且存取主机信息表格。所述表格将针对每一型号或类型的装置来识别如何设置补偿旗标。基于所述表格和从主机接收的信息,控制器将选取一配置(例如,选取是在读取还是在编程期间执行补偿)。在步骤1336中,控制器将基于在步骤1334中确定的配置来相应地设置旗标。
图31为用以描述用于配置存储器系统的过程的另一实施例的流程图。在步骤1360中,将在主机中安装存储器系统。在步骤1362中,主机将促使将多个文件存储在存储器系统中。在一段预定时间量之后、在已将预定量的文件存储于存储器系统之后或根据来自主机或用户的命令,在步骤1364中,控制器将确定存储在存储器系统上的最具代表性的文件类型。举例而言,如果存储十个文件并且其中的八个文件是音乐文件,那么控制器将确定最具代表性的文件是音乐文件。在步骤1366处,控制器将基于代表性文件类型来确定配置。举例而言,可在存储器系统中存储一列出文件类型的表格,并且对于每一文件类型,将存储用于补偿旗标的值。旗标的值可指示出是在编程期间还是在读取期间执行补偿。在步骤1368中,控制器将基于在步骤1366中确定的配置来设置补偿旗标。
出于说明及描述的目的,前文已呈现本发明的具体实施方式。其并不意图详尽说明本发明或使本发明限于所揭示的精确形式。可按照前面的教示进行许多修改及变更。选取所描述的实施例是为了最好地解说本发明的原理及其实际应用,因此使所属领域的技术人员以各种实施例以及适用于所考虑的特定用途的修改来最佳地运用本发明。希望本发明的范围通过随附的权利要求书来定义。

Claims (16)

1.一种编程非易失性存储装置的方法,其包含:
将非易失性存储元件编程为与特定经编程状态相关联的粗略验证电平;
将第一子组所述非易失性存储元件执行额外编程为与所述特定经编程状态相关联的第一精细最终目标电平;以及
将第二子组所述非易失性存储元件执行额外编程为与所述特定经编程状态相关联的第二精细最终目标电平,
其中,所述第一精细最终目标电平与所述第二精细最终目标电平不同;
其中,补偿所述第一子组所述非易失性存储元件的浮动栅极至浮动栅极耦合;且不补偿所述第二子组所述非易失性存储元件的浮动栅极至浮动栅极耦合。
2.根据权利要求1所述的方法,其中:
所述特定经编程状态是多个经编程状态中的一者;
所述非易失性存储元件是非易失性存储元件阵列的一部分;且
所述非易失性存储元件被作为目标以编程为所述特定经编程状态。
3.根据权利要求1所述的方法,其中:
所述第一子组所述非易失性存储元件与处于第一条件的一个或一个以上邻近非易失性存储元件相邻,其中,所述第一条件是不同的经编程状态;且
所述第二子组所述非易失性存储元件不与处于所述第一条件的一个或一个以上邻近非易失性存储元件相邻。
4.根据权利要求3所述的方法,其中:
第一精细最终目标电平低于所述第二精细最终目标电平。
5.根据权利要求1所述的方法,其中:
所述对所述第一子组所述非易失性存储元件执行额外编程以及所述对所述第二子组所述非易失性存储元件执行额外编程包括:施加一同组编程脉冲至所述第一子组所述非易失性存储元件及所述第二子组所述非易失性存储元件的控制栅极。
6.根据权利要求1所述的方法,其中:
所述将非易失性存储元件编程为所述粗略验证电平包括:对于所述非易失性存储元件施加第一位线电压;且
所述对所述第一子组所述非易失性存储元件执行额外编程以及所述对所述第二子组所述非易失性存储元件执行额外编程包括:对于所述非易失性存储元件施加不同于所述第一位线电压的一个或一个以上位线电压。
7.根据权利要求1所述的方法,其中:
所述非易失性存储元件是NAND快闪存储器装置。
8.根据权利要求1所述的方法,其中:
所述非易失性存储元件是多状态式快闪存储器装置。
9.一种非易失性存储系统,其包含:
非易失性存储元件;以及
管理电路,其与所述非易失性存储元件连通,所述管理电路将所述非易失性存储元件编程为与特定经编程状态相关联的粗略验证电平,所述管理电路使用与所述特定经编程状态相关联的第一精细最终目标电平对第一子组所述非易失性存储元件执行额外编程,并使用与所述特定经编程状态相关联的第二精细最终目标电平对第二子组所述非易失性存储元件执行额外编程,
其中,所述第一精细最终目标电平与所述第二精细最终目标电平不同;
其中,补偿所述第一子组所述非易失性存储元件的浮动栅极耦合;且
不补偿所述第二子组所述非易失性存储元件的浮动栅极耦合。
10.根据权利要求9所述的非易失性存储系统,其中:
所述特定经编程状态是多个经编程状态中的一者;且
所述管理电路包括控制电路、一功率控制电路、若干解码器、一状态机、一控制器及若干感测区块中的任一者或组合。
11.根据权利要求9所述的非易失性存储系统,其中:
所述第一子组所述非易失性存储元件与处于第一条件的一个或一个以上邻近非易失性存储元件相邻,其中,所述第一条件是不同的经编程状态;且
所述第二子组所述非易失性存储元件不与处于所述第一条件的一个或一个以上邻近非易失性存储元件相邻。
12.根据权利要求11所述的非易失性存储系统,其中:
第一精细最终目标电平低于所述第二精细最终目标电平。
13.根据权利要求9所述的非易失性存储系统,其进一步包含:
字线,所述字线与所述第一子组非易失性存储元件及所述第二子组非易失性存储元件相关联,所述对所述第一子组所述非易失性存储元件进行额外编程以及所述对所述第二子组所述非易失性存储元件进行额外编程包括施加一同组编程脉冲至所述字线。
14.根据权利要求9所述的非易失性存储系统,其中:
所述将所述非易失性存储元件编程为所述粗略验证电平包括:对于所述非易失性存储元件施加第一位线电压;且
所述对所述第一子组所述非易失性存储元件进行额外编程以及所述对所述第二子组所述非易失性存储元件进行额外编程包括:对于所述非易失性存储元件施加不同于所述第一位线电压的一个或一个以上位线电压。
15.根据权利要求9所述的非易失性存储系统,其中:
所述非易失性存储元件是NAND快闪存储器装置。
16.根据权利要求9所述的非易失性存储系统,其中:
所述非易失性存储元件是多状态式快闪存储器装置。
CN2007800274512A 2006-07-20 2007-07-18 具有在编程期间的耦合补偿的浮动栅极存储器 Active CN101512667B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US11/459,001 US7885119B2 (en) 2006-07-20 2006-07-20 Compensating for coupling during programming
US11/459,001 2006-07-20
US11/459,002 2006-07-20
US11/459,002 US7400535B2 (en) 2006-07-20 2006-07-20 System that compensates for coupling during programming
PCT/US2007/073739 WO2008011440A2 (en) 2006-07-20 2007-07-18 Floating gate memory with compensating for coupling during programming

Publications (2)

Publication Number Publication Date
CN101512667A CN101512667A (zh) 2009-08-19
CN101512667B true CN101512667B (zh) 2012-11-21

Family

ID=38971297

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2007800274512A Active CN101512667B (zh) 2006-07-20 2007-07-18 具有在编程期间的耦合补偿的浮动栅极存储器

Country Status (2)

Country Link
US (3) US7400535B2 (zh)
CN (1) CN101512667B (zh)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7894269B2 (en) * 2006-07-20 2011-02-22 Sandisk Corporation Nonvolatile memory and method for compensating during programming for perturbing charges of neighboring cells
US7885119B2 (en) 2006-07-20 2011-02-08 Sandisk Corporation Compensating for coupling during programming
US7443729B2 (en) * 2006-07-20 2008-10-28 Sandisk Corporation System that compensates for coupling based on sensing a neighbor using coupling
US7400535B2 (en) * 2006-07-20 2008-07-15 Sandisk Corporation System that compensates for coupling during programming
US7701770B2 (en) * 2006-09-29 2010-04-20 Hynix Semiconductor Inc. Flash memory device and program method thereof
US7660166B2 (en) * 2007-01-31 2010-02-09 Sandisk Il Ltd. Method of improving programming precision in flash memory
US7652929B2 (en) * 2007-09-17 2010-01-26 Sandisk Corporation Non-volatile memory and method for biasing adjacent word line for verify during programming
US7876611B2 (en) * 2008-08-08 2011-01-25 Sandisk Corporation Compensating for coupling during read operations in non-volatile storage
US8223551B2 (en) * 2009-02-19 2012-07-17 Micron Technology, Inc. Soft landing for desired program threshold voltage
US8169830B2 (en) 2009-09-17 2012-05-01 Micron Technology, Inc. Sensing for all bit line architecture in a memory device
US8107298B2 (en) * 2010-01-29 2012-01-31 Sandisk Technologies Inc. Non-volatile memory with fast binary programming and reduced power consumption
US8687431B2 (en) * 2011-07-06 2014-04-01 Micron Technology, Inc. Programming methods and memories
US8537623B2 (en) 2011-07-07 2013-09-17 Micron Technology, Inc. Devices and methods of programming memory cells
US8681547B2 (en) 2011-08-23 2014-03-25 Micron Technology, Inc. Memory cell coupling compensation
US9001577B2 (en) 2012-06-01 2015-04-07 Micron Technology, Inc. Memory cell sensing
US8988942B2 (en) 2012-07-02 2015-03-24 Sandisk Technologies Inc. Methods for extending the effective voltage window of a memory cell
US9142309B2 (en) * 2013-02-19 2015-09-22 Sk Hynix Memory Solutions Inc. Generation of a composite read based on neighboring data
WO2015004714A1 (ja) 2013-07-08 2015-01-15 株式会社 東芝 半導体記憶装置
US9355739B2 (en) * 2013-11-20 2016-05-31 Globalfoundries Inc. Bitline circuits for embedded charge trap multi-time-programmable-read-only-memory

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6301161B1 (en) * 2000-04-25 2001-10-09 Winbond Electronics Corporation Programming flash memory analog storage using coarse-and-fine sequence
US6888758B1 (en) * 2004-01-21 2005-05-03 Sandisk Corporation Programming non-volatile memory
CN1658329A (zh) * 2004-02-19 2005-08-24 恩益禧电子股份有限公司 非易失半导体存储设备以及在其中编程的方法

Family Cites Families (56)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IT1246241B (it) 1990-02-23 1994-11-17 Sgs Thomson Microelectronics Circuito per la lettura dell'informazione contenuta in celle di memoria non volatili
US5220531A (en) 1991-01-02 1993-06-15 Information Storage Devices, Inc. Source follower storage cell and improved method and apparatus for iterative write for integrated circuit analog signal recording and playback
US6222762B1 (en) 1992-01-14 2001-04-24 Sandisk Corporation Multi-state memory
US5532962A (en) 1992-05-20 1996-07-02 Sandisk Corporation Soft errors handling in EEPROM devices
JP3476952B2 (ja) 1994-03-15 2003-12-10 株式会社東芝 不揮発性半導体記憶装置
GB9423036D0 (en) 1994-11-15 1995-01-04 Sgs Thomson Microelectronics An integrated circuit memory device
US5903495A (en) 1996-03-18 1999-05-11 Kabushiki Kaisha Toshiba Semiconductor device and memory system
US5798967A (en) 1997-02-22 1998-08-25 Programmable Microelectronics Corporation Sensing scheme for non-volatile memories
US5867429A (en) 1997-11-19 1999-02-02 Sandisk Corporation High density non-volatile flash memory without adverse effects of electric field coupling between adjacent floating gates
IT1306963B1 (it) 1999-01-19 2001-10-11 St Microelectronics Srl Circuito a compensazione capacitativa per la regolazione dellatensione di lettura di riga in memorie non-volatili
US6118702A (en) 1999-10-19 2000-09-12 Advanced Micro Devices, Inc. Source bias compensation for page mode read operation in a flash memory device
US6327194B1 (en) 2000-04-25 2001-12-04 Advanced Micro Devices, Inc. Precise reference wordline loading compensation for a high density flash memory device
US6359821B1 (en) 2000-08-25 2002-03-19 Micron Technology, Inc. Differential sensing in a memory with reference current
US6535423B2 (en) 2000-12-29 2003-03-18 Intel Corporation Drain bias for non-volatile memory
ITRM20010001A1 (it) 2001-01-03 2002-07-03 Micron Technology Inc Circuiteria di rilevazione per memorie flash a bassa tensione.
JP3631463B2 (ja) 2001-12-27 2005-03-23 株式会社東芝 不揮発性半導体記憶装置
US6522580B2 (en) 2001-06-27 2003-02-18 Sandisk Corporation Operating techniques for reducing effects of coupling between storage elements of a non-volatile memory operated in multiple data states
US6717847B2 (en) 2001-09-17 2004-04-06 Sandisk Corporation Selective operation of a multi-state non-volatile memory system in a binary mode
US6529398B1 (en) 2001-09-27 2003-03-04 Intel Corporation Ferroelectric memory and method for reading the same
US6542407B1 (en) 2002-01-18 2003-04-01 Sandisk Corporation Techniques of recovering data from memory cells affected by field coupling with adjacent memory cells
US6621739B2 (en) * 2002-01-18 2003-09-16 Sandisk Corporation Reducing the effects of noise in non-volatile memories through multiple reads
US6771536B2 (en) 2002-02-27 2004-08-03 Sandisk Corporation Operating techniques for reducing program and read disturbs of a non-volatile memory
KR100476888B1 (ko) 2002-04-04 2005-03-17 삼성전자주식회사 온도보상기능을 가진 멀티비트 플래쉬메모리
US6826102B2 (en) 2002-05-16 2004-11-30 Micron Technology, Inc. Noise resistant small signal sensing circuit for a memory device
US6781877B2 (en) 2002-09-06 2004-08-24 Sandisk Corporation Techniques for reducing effects of coupling between storage elements of adjacent rows of memory cells
US7038960B2 (en) 2002-09-10 2006-05-02 Silicon Storage Technology, Inc. High speed and high precision sensing for digital multilevel non-volatile memory system
US6885600B2 (en) 2002-09-10 2005-04-26 Silicon Storage Technology, Inc. Differential sense amplifier for multilevel non-volatile memory
US6754106B1 (en) 2002-09-16 2004-06-22 Advanced Micro Devices, Inc. Reference cell with various load circuits compensating for source side loading effects in a non-volatile memory
US6987693B2 (en) 2002-09-24 2006-01-17 Sandisk Corporation Non-volatile memory and method with reduced neighboring field errors
US6983428B2 (en) 2002-09-24 2006-01-03 Sandisk Corporation Highly compact non-volatile memory and method thereof
US6891753B2 (en) 2002-09-24 2005-05-10 Sandisk Corporation Highly compact non-volatile memory and method therefor with internal serial buses
US7196931B2 (en) 2002-09-24 2007-03-27 Sandisk Corporation Non-volatile memory and method with reduced source line bias errors
US7443757B2 (en) 2002-09-24 2008-10-28 Sandisk Corporation Non-volatile memory and method with reduced bit line crosstalk errors
US6657891B1 (en) 2002-11-29 2003-12-02 Kabushiki Kaisha Toshiba Semiconductor memory device for storing multivalued data
JP3913704B2 (ja) * 2003-04-22 2007-05-09 株式会社東芝 不揮発性半導体記憶装置及びこれを用いた電子装置
US6816403B1 (en) 2003-05-14 2004-11-09 International Business Machines Corporation Capacitively coupled sensing apparatus and method for cross point magnetic random access memory devices
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
US7372730B2 (en) 2004-01-26 2008-05-13 Sandisk Corporation Method of reading NAND memory to compensate for coupling between storage elements
US7177977B2 (en) 2004-03-19 2007-02-13 Sandisk Corporation Operating non-volatile memory without read disturb limitations
US7020017B2 (en) * 2004-04-06 2006-03-28 Sandisk Corporation Variable programming of non-volatile memory
US7158421B2 (en) 2005-04-01 2007-01-02 Sandisk Corporation Use of data latches in multi-phase programming of non-volatile memories
US7230851B2 (en) 2004-12-23 2007-06-12 Sandisk Corporation Reducing floating gate to floating gate coupling effect
US20060140007A1 (en) 2004-12-29 2006-06-29 Raul-Adrian Cernea Non-volatile memory and method with shared processing for an aggregate of read/write circuits
US7196928B2 (en) * 2005-04-05 2007-03-27 Sandisk Corporation Compensating for coupling during read operations of non-volatile memory
US7187585B2 (en) * 2005-04-05 2007-03-06 Sandisk Corporation Read operation for non-volatile storage that includes compensation for coupling
US7193898B2 (en) * 2005-06-20 2007-03-20 Sandisk Corporation Compensation currents in non-volatile memory read operations
US7301817B2 (en) * 2005-10-27 2007-11-27 Sandisk Corporation Method for programming of multi-state non-volatile memory using smart verify
US20070141731A1 (en) 2005-12-20 2007-06-21 Hemink Gerrit J Semiconductor memory with redundant replacement for elements posing future operability concern
US7499326B2 (en) * 2006-04-12 2009-03-03 Sandisk Corporation Apparatus for reducing the impact of program disturb
US7443729B2 (en) 2006-07-20 2008-10-28 Sandisk Corporation System that compensates for coupling based on sensing a neighbor using coupling
US7495953B2 (en) 2006-07-20 2009-02-24 Sandisk Corporation System for configuring compensation
US7885119B2 (en) 2006-07-20 2011-02-08 Sandisk Corporation Compensating for coupling during programming
US7400535B2 (en) * 2006-07-20 2008-07-15 Sandisk Corporation System that compensates for coupling during programming
US7522454B2 (en) * 2006-07-20 2009-04-21 Sandisk Corporation Compensating for coupling based on sensing a neighbor using coupling
US7506113B2 (en) 2006-07-20 2009-03-17 Sandisk Corporation Method for configuring compensation

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6301161B1 (en) * 2000-04-25 2001-10-09 Winbond Electronics Corporation Programming flash memory analog storage using coarse-and-fine sequence
US6888758B1 (en) * 2004-01-21 2005-05-03 Sandisk Corporation Programming non-volatile memory
CN1658329A (zh) * 2004-02-19 2005-08-24 恩益禧电子股份有限公司 非易失半导体存储设备以及在其中编程的方法

Also Published As

Publication number Publication date
US7400535B2 (en) 2008-07-15
US7480179B2 (en) 2009-01-20
US20080219056A1 (en) 2008-09-11
US7630248B2 (en) 2009-12-08
US20080019186A1 (en) 2008-01-24
US20080219051A1 (en) 2008-09-11
CN101512667A (zh) 2009-08-19

Similar Documents

Publication Publication Date Title
CN101512662B (zh) 基于使用耦合感测邻近者来对非易失性存储器中的相邻存储元件之间的耦合进行补偿
CN101512667B (zh) 具有在编程期间的耦合补偿的浮动栅极存储器
CN101218650B (zh) 从非易失性存储设备中读取数据的非易失性存储系统及方法
CN101194322B (zh) 一种非易失性存储器系统及其读取方法
CN101199022B (zh) 补偿非易失性存储设备中浮动栅极之间耦合的方法及系统
CN101861623B (zh) 编程期间偏置相邻字线以验证的非易失性存储器和方法
CN102947888B (zh) 在非易失性存储元件的感测期间减小沟道耦合效应
CN101861624B (zh) 用于在编程期间补偿邻居单元的干扰电荷的非易失性存储器和方法
CN101405814B (zh) 使用不同电压的用于非易失性存储装置的检验操作
CN101627441B (zh) 用于非易失性存储装置的电阻感测及补偿
CN101361138B (zh) 以对非选定字线的高效控制来读取非易失性存储器
CN101263560B (zh) 非易失性存储器读取操作中的补偿电流
CN101395673B (zh) 对浮动栅极耦合具有补偿的非易失性存储装置的读取操作
KR101048834B1 (ko) 프로그래밍 중의 커플링 보상
CN102549673B (zh) 用较小通道电压干扰和浮栅极到控制栅极泄漏对存储器编程
CN101371314B (zh) 减少非易失性存储装置的读取干扰
CN101351849B (zh) 在非易失性存储器写入操作中的持续检验的方法及装置
CN102576566B (zh) 使用浮置位线对非易失性存储器的部分速度和全速度编程
KR101073116B1 (ko) 커플링을 사용하는 이웃 감지에 기반한 커플링 보상
CN101627443B (zh) 通过考虑相邻存储器单元的所存储状态来读取非易失性存储器单元
CN101627440A (zh) 通过使用不同的预充电启用电压而以减少的编程干扰对非易失性存储器进行编程
CN101627439A (zh) 通过移除对字线数据的预充电相依性而以减少的编程干扰对非易失性存储器进行编程
CN101689400A (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
ASS Succession or assignment of patent right

Owner name: SANDISK TECHNOLOGIES, INC.

Free format text: FORMER OWNER: SANDISK CORPORATION

Effective date: 20121212

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20121212

Address after: American Texas

Patentee after: Sandisk Corp.

Address before: American California

Patentee before: Sandisk Corp.

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 Corp.