CN101268520A - 用于快闪存储器的具有依据经检测未通过编程的位数目的优化电压电平的编程方法 - Google Patents
用于快闪存储器的具有依据经检测未通过编程的位数目的优化电压电平的编程方法 Download PDFInfo
- Publication number
- CN101268520A CN101268520A CNA2006800299731A CN200680029973A CN101268520A CN 101268520 A CN101268520 A CN 101268520A CN A2006800299731 A CNA2006800299731 A CN A2006800299731A CN 200680029973 A CN200680029973 A CN 200680029973A CN 101268520 A CN101268520 A CN 101268520A
- Authority
- CN
- China
- Prior art keywords
- programming
- data
- memory device
- data bit
- volatile memory
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3404—Convergence or correction of memory cell threshold voltages; Repair or recovery of overerased or overprogrammed cells
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/12—Programming voltage switching circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/02—Detection or location of defective auxiliary circuits, e.g. defective refresh counters
- G11C29/021—Detection or location of defective auxiliary circuits, e.g. defective refresh counters in voltage or current generators
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/02—Detection or location of defective auxiliary circuits, e.g. defective refresh counters
- G11C29/028—Detection or location of defective auxiliary circuits, e.g. defective refresh counters with adaption or trimming of parameters
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C2029/0409—Online test
Abstract
本文阐述一种非易失性存储器装置及编程过程,其与前一编程循环期间未通过编程检验且未正确编程到所述存储器阵列中的数据位的百分比相关地增加连续编程循环的编程电压。这允许较快的平均编程操作,并使编程电压的后续增加更准确地匹配于非易失性存储器装置、正被编程的特定区域或行、及因装置磨损而导致的任何变化。在本发明的一个实施例中,通过产生未通过位百分比对编程电压增加曲线以设定所需的编程电压Δ/增值来表征制造过程/设计及/或特定存储器装置。在本发明的另一实施例中,涉及用于将数据编程到非易失性存储器装置中且尤其是NAND及NOR构架快闪存储器中的方法及设备。
Description
技术领域
本发明大体来说涉及存储器装置,且具体来说本发明涉及快闪存储器装置。
背景技术
存储器装置通常被提供为计算机中的内部存储区域。术语存储器标识以集成电路芯片形式出现的数据存储装置。在现代电子学中存在数个不同类型的存储器,一个常见类型是RAM(随机存取存储器)。已发现RAM以特有方式用作计算机环境中的主存储器。RAM是指读写存储器;也就是说,你既可以将数据写入RAM也可以从RAM读取数据。这和只允许读取数据的ROM形成对比。多数RAM是易失性的,这意谓其要求稳定电流以维持其内容。一旦断开电源,RAM中的任何数据均丢失。
计算机几乎总是含有少量持有用于启动所述计算机的指令的只读存储器(ROM)。与RAM不同,ROM不能被写入。在移除电源时不会丢失其存储器单元的数据内容的存储器装置一般称为非易失性存储器。EEPROM(电可擦除可编程只读存储器)是可以通过将其暴露给电荷来擦除的特种非易失性ROM。EEPROM包括大量具有电隔离栅(浮栅)的存储器单元。数据以浮栅上的电荷的形式存储于存储器单元中。典型的浮栅存储器单元装配于集成电路衬底内,且包含源极区域和与源极区域分离开以形成中间沟道区域的漏极区域。通常由掺杂多晶硅制成的浮栅沉积于沟道区域上,且通过介电材料(通常为氧化物)与其他单元元素电绝缘。例如,栅氧化物可形成于所述浮栅与沟道区域之间。控制栅位于浮栅上方,且通常也由掺杂多晶硅制成。所述控制栅通过另一介电层与浮栅电隔离。因此,所述浮栅“浮动”于电介质中,以使其与所述沟道及控制栅二者绝缘。电荷分别通过专门的编程和擦除操作输送到浮栅中或从浮栅中移除。其他类型的非易失性存储器包含但不限于聚合物存储器、铁电体随机存取存储器(FeRAM)、奥弗辛斯基电效应统一存储器(Ovonics Unified Memory,OUM)及磁阻随机存取存储器(MRAM)。
再一类型的非易失性存储器是快闪存储器。典型的快闪存储器包括包含大量存储器单元的存储器阵列。所述每一存储器单元均包含嵌入到场效应晶体管(FET)晶体管中的浮栅或电荷捕获层。所述单元一般被分组到称为“擦除块”的区段中。可通过将电荷隧穿到浮栅来选择性地对擦除块中的每一单元进行电编程。通常借助块擦除操作而从浮栅中移除负电荷,其中所述擦除块中的所有浮栅存储器单元均在单次操作中擦除。应注意,在当前的快闪存储器装置中,已通过利用多个阈值电平或非传导性电荷捕获层并将所捕获的数据存储在存储器单元FET的每个源极/漏极附近的电荷中来将多个位存储于单个单元中。
两种常见类型的快闪存储器阵列构架是“NAND”和“NOR”构架,如此说是因为每一构架的基本存储器单元配置均分别具有与基本NAND或NOR门电路的相似性。在NOR阵列构架中,存储器阵列的浮栅存储器单元被排列成矩阵。所述阵列矩阵的每一浮栅存储器单元的栅均成行地连接到字选择线(字线),且其源极/漏极连接到列位线及/或源极线。NAND阵列构架也将其浮栅存储器单元阵列排列成矩阵,以便所述阵列的每一浮栅存储器单元的栅均成行地连接到字线。然而,每个存储器单元并不直接连接到源极线和列位线。而是,所述阵列的存储器单元分别排列成串(通常为每串8个、16个、32个或更多个),其中所述串中的存储器单元一起在共用源极线和列位线之间从源极到漏极地串联连接。然后,通过选择连接到所述NAND构架浮栅存储器阵列的存储器单元的栅的字选择线来激活连接到所选存储器单元的一行浮栅存储器单元,以存取所述NAND构架浮栅存储器阵列的所选存储器单元。另外,还驱动(以较高电压)连接到所述串中未选存储器单元的栅的字线以将其置于通过模式,从而允许存取所选的存储器单元。
快闪存储器的常见编程技术通过将编程电压或一连串编程电压脉冲施加到控制栅及将所选存储器单元编程到编程模式(设定为逻辑“0”)或禁止到禁止模式(不编程,一般意在将单元擦除并设定为逻辑“1”)来将所述存储器的一行(一页)编程。这些编程电压及/或脉冲通常由设计设定,且在某些情形中于制造过程期间经修整或选择而进一步增加制造成本。然而,由于存储器阵列中逐芯片、或甚至逐区域或逐行的制造过程变化,并非每一快闪存储器或快闪存储器单元均将针对所施加的给定编程电压来进行相同编程。另外,即使在个别存储器装置的制造期间已选定编程电压,所述存储器装置的编程特性也可以在多个编程/擦除循环后变化,或随电源电压或温度而变化。
针对上述原因,及针对所属技术领域的技术人员在阅读及理解本说明书后将显而易见的下述其他原因,所属技术领域中需要用于将快闪存储器阵列编程的替代方法。
发明内容
本发明解决了上述对快闪存储器进行编程所操作的问题及其他问题,且将通过阅读及研究下列说明来理解。
所述各实施例涉及对非易失性存储器装置进行编程,其中在并行操作中(例如对所述存储器阵列的行进行编程)将数据编程到存储器阵列中,且其中所述编程循环以增加的编程电压电平重复,以对在先前循环中未能正确编程的任何数据位进行编程。在本发明的实施例中,与在前一编程循环期间未通过编程检验且未正确编程到存储器阵列中的数据位的百分比相关地增加连续编程循环的编程电压。这允许平均编程操作更快,且编程电压的后续增加更准确地匹配于特定非易失性存储器装置、正在编程的特定区域或行及因装置使用及磨损而引起的任何编程特性变化。在本发明的一个实施例中,通过产生未通过位百分比对编程电压增加曲线以针对数据位的给定未通过百分比设定所需的编程电压Δ/增值来表征制造过程/设计及/或特定存储器装置。在本发明的一个实施例中,涉及将数据编程到非易失性存储器装置中且尤其是NAND及NOR构架的快闪存储器阵列及装置中的方法及设备。
对于一个实施例,本发明提供一种操作非易失性存储器装置的方法,其包括通过以下步骤在编程循环中将多个数据位编程到非易失性存储器装置的非易失性存储器阵列中:将初始编程电压施加到经选择以用所述多个数据位来编程的多个存储器单元中;以与所述编程循环期间未能正确编程到所述非易失性存储器阵列的多个存储器单元中的多个数据位的百分比的选定关系增加编程电压;中止对一个或多个已正确编程的存储器单元的编程;及施加所述已增加的编程电压以编程所述数据的未能正确编程的一个或多个位。
在另一实施例中,本发明提供一种对数据进行编程的方法,其包括接收编程命令及包含多个数据位的编程数据;在编程循环中通过将初始编程电压施加到经选择以用所述多个数据位编程的多个存储器单元而将所述多个数据位编程到非易失性存储器阵列中;及通过以下步骤尝试编程多个存储器单元中未能正确编程的任何存储器单元:检验被编程到所述非易失性存储器阵列的多个存储器单元中的编程数据的所述多个数据位;以与未能正确编程到所述多个存储器单元中的所选多个数据位的百分比的选定关系增加编程电压;中止对一个或多个已正确编程的存储器单元的编程;施加所述已增加的编程电压以编程所述数据中未能正确编程的一个或多个位;及重复一个或多个迭代循环。
在再一实施例中,本发明提供一种操作快闪存储器装置的方法,其包括在所述快闪存储器装置的接口上接收编程命令及包含多个数据位的编程数据;将所述编程数据输送到数据高速缓冲存储器;将所述编程数据输送到写入数据锁存器;计算所述数据高速缓冲存储器中保持的编程数据中将要编程的位的数目;在编程循环中通过将初始编程电压施加到经选择以用所述多个数据位编程的多个存储器单元来将所述多个数据位编程到快闪存储器阵列中;及通过以下步骤来尝试编程所述多个存储器单元中未能成功编程的任何存储器单元:检验被编程到所述快闪存储器阵列的多个存储器单元中的编程数据的多个数据位;与所述数据高速缓冲存储器中保持的将要编程的位的数目相关地计算未能成功编程到所述多个存储器单元中的多个数据位的百分比;以与未能正确编程到多个存储器单元中的多个数据位的百分比的选定关系增加编程电压;中止对一个或多个已正确编程的存储器单元的编程;施加已增加的编程电压以编程所述数据中未能正确编程的一个或多个位;及重复一个或多个迭代循环。
在进一步的实施例中,本发明提供一种包括耦合到非易失性存储器装置的主机的系统。所述非易失性存储器装置包括非易失性存储器阵列及控制状态机电路,其中所述控制状态机电路适于在编程操作中通过将初始编程电压施加到经选择以用多个数据位来编程的多个存储器单元中及通过以下步骤尝试编程多个存储器单元中未能正确编程的任何存储器单元而将所述多个数据位编程到非易失性存储器阵列中:检验被编程到所述非易失性存储器阵列的多个存储器单元中的多个数据位;以与未能正确编程到所述多个存储器单元中的多个数据位的百分比的选定关系增加编程电压;中止对一个或多个已正确编程的存储器单元的编程;施加已增加的编程电压以编程所述数据中未能正确编程的一个或多个位;及重复一个或多个迭代循环。
在再一实施例中,本发明提供一种操作非易失性存储器装置的方法,其包括根据在编程操作中将要编程到非易失性存储器阵列中的编程数据来计算期望数据位的数目;计算在所述编程操作中未能编程的未通过数据位的数目;及响应于期望数据位的数目与未通过数据位的数目的比较来增加编程电压。
本发明的进一步实施例包含可变范围的方法及设备。
附图说明
图1是根据本发明的实施例含有非易失性存储器装置的系统的简化方块图。
图2是根据本发明实施例的NOR构架快闪存储器阵列的简化方块图。
图3是根据本发明实施例的NAND构架快闪存储器阵列的一连串浮栅存储器单元的简化方块图。
图4是详细显示浮栅存储器单元的擦除及编程Vt分布的图示。
图5是根据本发明的实施例详细显示非易失性存储器装置的编程操作的波形图。
图6是现有技术的NAND构架快闪存储器的编程操作的流程图。
图7是根据本发明实施例的NAND构架快闪存储器的编程操作的流程图。
图8是根据本发明实施例的读出放大器电路及控制电路的简化图。
具体实施方式
下文将参照附图对优选实施例进行详细说明,所述附图形成本发明的一部分且其中以图解方式显示可实行本发明的具体优选实施例。这些实施例经充分详细阐述以使所属技术领域的技术人员均能够实践本发明,但应了解,也可以利用其他实施例且可在不背离本发明范围的前提下做出逻辑、机械、电的变化。因此,下文详细说明不应被视为具有限定意义,且本发明的范围仅由权利要求书来界定。
本发明各实施例包含在并行操作(例如对存储器阵列的行进行编程)中将数据编程到非易失性阵列中的非易失性存储器装置,且其中所述编程循环以增加的编程电压电平进行重复以对数据中在先前循环中未能正确编程的任何位进行编程。在本发明的实施例中,与在前一编程期间未通过编程检验且未能正确编程到存储器阵列中的数据位的百分比相关地增加连续编程循环的编程电压。这允许平均编程操作更快,且编程电压的后续增加更准确匹配于特定非易失性存储器装置、正被编程的特定区域或行、及因装置使用及磨损导致的任何编程特性变化。在本发明的一个实施例中,通过产生未通过位百分比对编程电压增加曲线来为数据位的给定未通过百分比设定所需的编程电压Δ/增值,以表征制造过程/设计及/或特定存储器装置。在本发明的一个实施例中,涉及用于将数据编程到非易失性存储器装置中且尤其是NAND及NOR构架快闪存储器阵列及装置中的方法及设备。
图1详细显示含有本发明实施例的非易失性存储器装置100的系统128的简化图,所述非易失性存储器装置100连接到主机102,其通常是处理装置或存储器控制器。非易失性存储器100(例如快闪存储器装置)具有控制接口106和地址/数据接口108,其各自连接到处理装置102以允许存储器读取及写入存取。应注意,在替代实施例中,地址/数据接口108可被划分为单独接口。所述非易失性存储器装置内部的控制状态机/控制电路110引导内部操作;管理非易失性存储器阵列112及更新RAM控制寄存器及擦除块管理寄存器114。RAM控制寄存器及表格114由控制状态机110在非易失性存储器100的操作期间使用。非易失性存储器阵列112含有存储器组或区段序列116,每一条116均以逻辑方式组织到一连串擦除块(未显示)中。在非易失性存储器100的地址/数据接口108上接收存储器存取地址并将其划分到行及列地址部分内。在进行读取存取时,行解码电路120对行地址锁存及解码,行解码电路120跨越所选存储器组来选择及激活存储器单元(未显示)及其相关联串中的其他存储器单元的行页。在所选存储器单元行的输出中进行编码的位值从本地位线/串(未显示)连接到总位线(未显示),并由与所述存储器组相关联的读出放大器122检测。读出放大器122通常还包含数据高速缓冲存储器和写入数据锁存电路(未显示)。所述存取的列地址由列解码电路124锁存及解码。列解码电路的输出端从读出放大器输出中选择所需的列数据,并连接到数据缓冲器126以通过地址/数据接口108从存储器装置进行输送。在进行写入存取时,行解码电路120选择行页,且列解码电路选择写入读出放大器122。所要写入的数据值从数据缓冲器126连接到数据高速缓冲存储器,且然后连接到由列解码电路124选择的写入读出放大器122的写入数据锁存器,并写入存储器阵列112的所选浮栅存储器单元(未显示)。然后,所述写入的单元可由行及列解码电路120、124及读出放大器122重新选择,以使所述写入单元可经读取以检验已将正确值编程到所选存储器单元中。应注意,在本发明的一个实施例中,列解码电路124可视需要置于存储器阵列112与读出放大器122之间。
如先前所述,两种常见类型的非易失性存储器EEPROM及快闪存储器阵列构架是“NAND”和“NOR”构架,如此说是因为每一基本存储器单元配置均具有与对应逻辑门设计的类似性。在NOR阵列构架中,存储器阵列的浮栅存储器单元排列为类似于RAM或ROM的矩阵。所述阵列矩阵的每一浮栅存储器单元的栅均成行地耦合到字选择线(字线),且其漏极均耦合到列位线。每一浮栅存储器单元的源极通常耦合到一共用源极线。NOR构架浮栅存储器阵列由行解码器通过选择耦合到其栅的字线以激活一行浮栅存储器单元来存取。然后,通过依据其编程状态使一不同电流从所耦合的源极线流到所耦合的列位线,所选存储器单元行将其存储的数据值置于列位线上。选择及感测一位线列页,并从列页及从存储器传送的感测数据字中选择个别数据字。
NAND存储器阵列构架也将其浮栅存储器单元阵列排列成矩阵,以便所述阵列的每一浮栅存储器单元的栅均成行地耦合到字线。然而,每一存储器单元并不直接耦合到源极线及列位线。而是,所述阵列的各存储器单元一起排列成串(通常为每串8个、16个、32个或更多个),其中所述串中的存储器单元一起在共用源极线与列位线之间从源极到漏极串联耦合。这允许NAND阵列构架具有比可比NOR阵列更高的存储器单元密度,但代价是一般来说更慢的存取速率和更大的编程复杂度。
NAND构架浮栅存储器阵列由行解码器通过选择耦合到其栅的字选择线以激活一行浮栅存储器单元来存取。另外,还驱动耦合到每一串中未选存储器单元的栅的字线。然而,每一串的未选存储器单元通常由较高栅电压驱动,以将其操作为传递晶体管,且允许其以不受其所存储数据值约束的方式传递电流。然后,电流通过所述串联耦合串中的每一浮栅存储器单元从源极线流到列位线,仅由经选择以供读取的每一串的存储器单元约束。这会将所选存储器单元行的当前已编码的所存储数据值置于列位线上。选择及感测一位线列页,然后从来自所述列页及从存储器装置传送的所感测数据字中选择个别数据字。
图2详细显示本发明实施例的EEPROM或快闪存储器装置的简化NOR浮栅存储器阵列200。在图2中,浮栅存储器单元202一起耦合到具有位线212、源极线214、字线206及衬底连接222的NOR构架存储器阵列中。每一浮栅存储器单元202均具有浮栅场效应晶体管(FET),FET包括分别耦合到位线212和源极线214的漏极和源极区域之间形成的栅绝缘层堆叠。
图3详细显示本发明实施例的EEPROM或快闪存储器装置的简化NAND浮栅存储器阵列串304。在图3中,一连串浮栅存储器单元302一起以从源极到漏极的方式耦合为一串联NAND串304(通常为8个、16个、32个或更多个单元)。每一浮栅存储器单元302均具有一栅绝缘层堆叠,其由衬底顶部的隧道绝缘层、形成于所述隧道绝缘层上的浮栅、形成于所述浮栅上方的集成/互聚绝缘层、及形成于每一浮栅存储器单元302的集成/互聚绝缘层上方的控制栅306(通常形成为字线的一部分)组成。掺杂区域(对于N-FET存储器单元来说通常为N+)形成于每一栅绝缘层堆叠之间,以形成邻近浮栅存储器单元的源极和漏极区域,其中邻近浮栅存储器单元另外操作为连接器以将NAND串304的单元耦合在一起。图中还显示衬底连接322。选择栅310形成于NAND浮栅串304的任一端,且以可选方式将NAND浮栅串304的对置端耦合到位线接点312和源极线接点314。
快闪存储器的常见编程技术通过将编程电压或一连串编程电压脉冲施加到存储器单元的控制栅并通过将其沟道耦合到编程或禁止电压以将所选存储器单元编程到编程模式(设定为逻辑“0”)或禁止到禁止模式(不编程,一般意在使所述单元被擦除及设定为逻辑“1”)来对存储器行(一般称为页)编程。不幸地,存储器单元的这种编程一般在存储器阵列的每一行上并不均匀。将载体如此不均匀地注入存储器单元的浮栅会导致将移位的阈值电压分布在编程单元中,如图4中详细显示。在图4中,显示浮栅存储器单元在擦除状态402和编程状态406中的阈值电压(Vt)分布。对于将要在编程时读取的存储器单元,其必须将其阈值电压移位到已编程单元的阈值电压限值404以上。然而,由于装置磨损程度(存储器单元写入疲劳)及制造过程中逐芯片、及甚至存储器阵列的逐区域变化形式,即使在如图4中显示的编程循环之后在已编程单元的阈值电压分布406中存在大量变化形式,也并非每一快闪存储器或快闪存储器单元均将针对给定的所施加编程电压、脉冲及时间周期来进行相同编程。结果,如果许多单元各自的阈值电压尚未升高到已编程单元的阈值电压限值404以上,那么在随后进行检查检验时其上施加有编程电压的所述许多单元将不会读作已编程。
因此,在初始编程尝试之后,则存储于所述行中的数据被脱离所述行读回,并与原始数据对比检查以检验正确编程。然后,通常做出努力以通过针对设定数量的编程循环迭代将额外编程脉冲施加到那些单元的控制栅来校正任何尚未如需编程的单元。这些额外编程电压脉冲通常还以选定电压速率步进,直至达到存储器装置的最大编程电压。在图5中,详细显示波形图500,其显示非易失性存储器装置的此种编程操作,其中施加增加的电压编程脉冲502、504、506、508,且在从初始编程电压502到存储器装置中可能的最大编程电压508的每一脉冲后检验510编程结果。
图6详细显示NAND或并行编程非易失性存储器装置中的现有技术编程算法600的流程图。在图6中,编程操作开始602于在非易失性存储器装置(例如NAND构架快闪存储器装置)处接收含有地址的编程命令。然后,遵循所述编程命令将编程数据(通常为2k字节)载入604存储器装置并存储于数据高速缓冲存储器中。然后,将所述数据输送606到写入读出放大器的数据锁存器中,供准备编程到非易失性存储器阵列的一行中。然后,设定608初始编程栅电压(例如15V)并将编程循环回路计数器设定为1。然后,通过用编程电压使控制栅发出脉冲并将其沟道耦合到编程或禁止电压而将所述数据行编程610到非易失性存储器阵列的所选行中。在已施加编程脉冲并将数据编程到行中之后,再次读取所述数据并与数据高速缓冲存储器中保持的原始数据进行比较,以检验其正确编程612。如果所述编程数据通过614检验,则我们完成所述编程操作并结束616。如果所述编程数据未通过检验,且尚未达到最大编程循环数(回路计数器尚未达到其最大值618),则编程操作继续并尝试再次将所述数据编程。如果已达到最大编程循环数(回路计数器已达到其最大值),则编程操作失败620。
在反复尝试将未通过检验的数据位重新编程时,所述算法使回路计数器622增加,且中止或禁止624对已通过编程检验的所述数据行的位进行编程,以避免这些单元的过度编程及非易失性存储器装置的不必要写入疲劳。如果栅编程电压未处于其最大电平处626,则以递增方式增加630(未编程单元极少为未通过单元,且通常仅偶然在较低电压下为较慢编程单元,因此存储器装置将通常增加这些单元上的电压并再次尝试)。如果栅编程电压已处于最大电平处,则其不增加且保留为最大值628。然后,循环632所述算法以再次对所述数据行编程。这种算法循环继续,并在每次循环时以递增方式增加编程电压,直到编程数据最后通过检验616或超过最大编程循环回路数且编程操作失败630。
如上文所述,以其重复迭代及栅编程电压的递增增加,现有技术编程过程并不有助于快速编程操作。另外,其并未提供编程电压的后续增加与指定非易失性存储器装置、正被编程的指定区域或行、或由于装置使用及磨损导致的存储器单元编程特性的任何变化之间的准确匹配。
本发明实施例利用一种改进的编程方法,以供用于总体更快速的编程操作及提供编程操作与指定非易失性存储器装置及由于装置使用及磨损导致的存储器单元编程特性中的任何变化之间的更好匹配。在本发明的实施例中,相对于在前一编程循环期间未通过编程检验且未正确编程到存储器阵列中的数据位百分比来增加后续编程循环的编程电压。这允许更快的编程操作,及编程电压的后续增加与指定非易失性存储器装置、正被编程的指定区域或行、及由于装置使用及磨损导致的任何编程特性变化之间的更准确匹配。
应注意,本发明实施例的编程方法可用于NAND快闪存储器装置、NOR快闪存储器装置、及任何并行增加编程数据以改进编程速度且使其编程循环更好地适于特定存储器装置的非易失性存储器装置。
图7详细显示本发明实施例的编程过程流程图700。在图7中,编程操作开始702于在非易失性存储器装置(例如NAND构架快闪存储器装置)处接收含有地址的编程命令。然后,遵循所述编程命令将编程数据(通常为2k字节)载入704到存储器装置中,并存储于数据高速缓冲存储器中。然后,存储器装置分析734所述数据高速缓冲存储器中的数据,以确定及存储所述编程数据中将要编程的数据位的总数。然后,将所述数据输送706到写入读出放大器的数据锁存器中,以准备用于编程到非易失性存储器阵列的一行中。然后,设定708初始编程栅电压(例如15V),并将编程循环回路计数器设定为1。然后,通过用编程电压使控制栅发出脉冲并使其沟道耦合到编程或禁止电压来将数据行编程710到非易失性存储器阵列的所选行中。在已施加编程脉冲并将数据编程到所述行中之后,再次读取所述编程脉冲并与数据高速缓冲存储器中保持的原始数据进行比较,以检验是否已发生正确编程712。如果所述编程数据通过714检验,则我们完成编程操作并结束716。如果编程数据未通过检验,且尚未达到最大编程循环数(回路计算器尚未达到其最大值718),则所述编程操作继续并尝试再次编程未通过的数据位。如果已达到最大编程循环数(回路计数器已达到其最大值),则所述编程操作已失败且结束720。
在重复尝试将未通过检验的数据位重新编程时,所述算法检验编程数据中未通过的总编程位的数目736,且然后计算738未通过的存储器单元/编程位的百分比。然后,回路计数器722增加,且中止或禁止724所检验及通过的数据位,以避免这些单元的过度编程。如果栅编程电压不在其最大电平处726,则其根据未通过位的总百分比来增加;在高的未通过位百分比处,编程电压以较高速率增加,且在低的未通过位百分比处,编程电压以较低速率增加。如果栅编程电压已处于最大电平处,则其不再增加且保留为最大值728。然后,所述算法重复732以将数据行再次编程。所述算法的这一重复继续,在每一回路上根据未通过位与已编程位的百分比来增加编程电压,直到已编程数据最后通过检验716或超过最大编程循环回路数且编程操作失败720。
在本发明的一个实施例中,为存储器装置的制造过程及设计确定曲线,以增加给定的未通过位百分比所需的电压增加变化/Δ匹配准确度。已发现,此未通过位百分比对电压增加曲线通常不针对给定的电源电压或存储器装置磨损使用程度而改变或变化,因此可提供准确的电压增加映射图。然后,在制造时将这一曲线资料合并/编程到存储器装置内。应注意,此未通过位百分比对电压增加曲线还可以针对每一个别存储器装置来完成,以允许为整个存储器装置及/或存储器阵列的个别区域确定曲线,从而针对个别存储器装置来调整电压增加曲线。然而,还应注意,此通常需要增加制造复杂度且因而具有较高的存储器装置单位成本。另外,在本发明的一个实施例中,存储器装置保持对整个存储器装置及/或存储器阵列的个别区域中存储器单元疲劳及磨损的内部编程统计,以允许针对个别存储器装置的磨损程度来调整电压增加曲线。
由于编程电压的更快及更准确增加,本发明的非易失性存储器装置的编程操作通常以与现有技术的存储器装置相比较少的编程循环对给定数据行进行编程。这会允许由于较少编程循环导致的较快写入、较少功率消耗,且导致非易失性存储器装置的总操作较快。
图8详细显示本发明实施例的存储器数据高速缓冲存储器及读出放大器电路800的简化部分。在图8中,将待编程的数据从I/O缓冲器(未显示)816装载到每个读出放大器802的数据高速缓存锁存器804,并输送到读出放大器802的数据写入锁存器806以供编程。每一写入数据锁存器耦合到位线808(此耦合视需要通过列解码器(未显示)),且用于将通过由行解码器(未显示)选择的非易失性存储器列的位线808耦合的存储器单元编程或禁止。位求和电路810耦合到数据高速缓存锁存器804,以将装载到数据高速缓存锁存器804中的编程数据中待编程的位的数目相加。未通过检验的位求和电路812耦合到写入数据锁存器806,且适于将未通过检验的位的数目相加。然后,比较及电压调整电路814将待编程的位的数目与未通过检验的位的数目进行比较,以计算从保持于数据高速缓存锁存器804中的当前编程数据中编程的位的百分比,并通过与未通过编程的位的相关百分比成比例地调整下一栅编程电压电平或参考未通过位对已增加栅编程电压概览表来设定下一栅编程电压电平。
应注意,本发明的其他编程电压电平及序列和NAND及NOR构架非易失性存储器装置编程方法和阵列实施例均有可能,且应为受益于这一揭示内容的所属技术领域的技术人员所显而易见。
结论
本文已阐述非易失性存储器装置及编程过程,其相对于在前一编程循环期间未通过编程检验且未正确编程到存储器阵列中的数据位的百分比来增加后续编程循环的编程电压。这允许更快的平均编程操作,及编程电压的后续增加与指定非易失性存储器装置、正编程的指定区域或行、及由于装置使用及磨损导致的任何编程特性变化之间的更准确匹配。在本发明的一个实施例中,通过产生未通过位百分比对编程电压增加曲线以针对数据位的给定未通过百分比设定所需的编程电压Δ/增加而表征制造过程/设计及/或特定存储器装置。在本发明的另一实施例中,各方法及设备设计将数据编程到非易失性存储器装置中,且具体来说,NAND及NOR构架快闪存储器阵列及装置。
尽管本文已图解说明及阐述指定实施例,但所属技术领域的技术人员将易于了解,任何经计算以达成相同目的的安排均可替代所示的指定实施例。本发明的许多调适将对所属技术领域的技术人员显而易见。因此,本申请案意在涵盖本发明的任何调适或变化形式。很明显,本发明意在仅由下列权利要求书及其等效内容限制。
Claims (23)
1、一种操作非易失性存储器装置的方法,其包括:
根据在编程操作中将要编程到非易失性存储器阵列中的编程数据计算期望数据位的数目;
计算在所述编程操作中未能编程的未通过数据位的数目;及
响应于期望数据位的所述数目与未通过数据位的所述数目的比较来增加编程电压。
2、如权利要求1所述的方法,其中响应于期望数据位的所述数目与未通过数据位的所述数目的比较来增加编程电压进一步包括响应于在所述编程操作期间未能正确编程到所述非易失性存储器阵列中的所述期望数据位的百分比来增加所述编程电压。
3、如权利要求1所述的方法,其进一步包括:
中止对一个或多个已正确编程的存储器单元的编程;及
施加所述增加的编程电压以编程所述数据中未能正确编程的一个或多个位。
4、如权利要求1所述的方法,其进一步包括:
重复一个或多个迭代循环,
根据在编程操作中将要编程到非易失性存储器阵列中的编程数据计算期望数据位的数目;
计算在所述编程操作中未能编程的未通过数据位的数目;及
响应于期望数据位的所述数目与未通过数据位的所述数目的比较来增加编程电压。
5、如权利要求4所述的方法,其中重复一个或多个迭代循环进一步包括迭代直到达到最大迭代数目或未通过数据位的所述数目为零。
6、如权利要求1所述的方法,其中响应于期望数据位的所述数目与未通过数据位的所述数目的比较来增加编程电压进一步包括响应于期望数据位的所述数目与未通过数据位的所述数目的比较来增加编程电压,其中编程电压的总增加受指定的最大编程电压电平限制。
7、如权利要求1所述的方法,其进一步包括:
为所述非易失性存储器装置确定曲线以针对期望数据位的所述数目与未通过数据位的所述数目的给定比较来确定编程电压增加的曲线。
8、如权利要求7所述的方法,其中为所述非易失性存储器装置确定曲线以针对期望数据位的所述数目与未通过数据位的所述数目的给定比较来确定编程电压增加的曲线进一步包括通过以下步骤中的一者来为所述非易失性存储器装置确定曲线:为所述非易失性存储器装置确定曲线以针对所述非易失性存储器装置制造过程的期望数据位的所述数目与未通过数据位的所述数目的给定比较来确定编程电压增加的曲线,表征所述非易失性存储器装置设计,为所述非易失性存储器装置确定曲线以针对特定存储器装置的期望数据位的所述数目与未通过数据位的所述数目的给定比较来确定编程电压增加的曲线,为所述非易失性存储器装置确定曲线以针对特定存储器阵列区域的期望数据位的所述数目与未通过数据位的所述数目的给定比较来确定编程电压增加的曲线,以及为所述非易失性存储器装置确定曲线以针对特定存储器单元磨损程度的期望数据位的所述数目与未通过数据位的所述数目的给定比较来确定编程电压增加的曲线。
9、如权利要求1所述的方法,其中所述非易失性存储器装置是以下中的一者:快闪存储器装置、EEPROM存储器装置、聚合物存储器装置、铁电体随机存取存储器(FeRAM)装置、奥弗辛斯基电效应统一存储器(OUM)装置和磁阻随机存取存储器(MRAM)装置。
10、如权利要求1所述的方法,其中所述非易失性存储器阵列是NAND构架存储器阵列和NOR构架存储器阵列中的一者。
11、如权利要求1所述的方法,其进一步包括:
在编程循环中,通过将初始编程电压施加到经选择以用多个数据位编程的多个存储器单元而将所述多个数据位编程到所述非易失性存储器装置的所述非易失性存储器阵列中;
以与所述编程循环期间未能正确编程到所述非易失性存储器阵列的所述多个存储器单元中的所述多个数据位的百分比的选定关系增加所述编程电压;
中止对一个或多个已正确编程的存储器单元的编程;及
施加所述增加的编程电压以编程所述数据中未能正确编程的一个或多个位。
12、如权利要求1所述的方法,其中所述操作非易失性存储器装置的方法进一步包括:
接收编程命令及含有多个数据位的编程数据;
在编程循环中,通过将初始编程电压施加到经选择以用所述多个数据位进行编程的多个存储器单元而将所述多个数据位编程到所述非易失性存储器阵列中;及
通过以下步骤尝试编程所述多个存储器单元中未能正确编程的任何存储器单元,
检验编程到所述非易失性存储器阵列的所述多个存储器单元中的编程数据的所述多个数据位,
以与未能正确编程到所述多个存储器单元中的所述多个数据位的百分比的选定关系增加所述编程电压,
中止对一个或多个已正确编程的存储器单元的编程,
施加所述增加的编程电压以编程所述数据中未能正确编程的一个或多个位,及
重复一个或多个迭代循环。
13、如权利要求1所述的方法,其中所述操作非易失性存储器装置的方法进一步包括:
在所述非易失性存储器装置的接口上接收编程命令及含有多个数据位的编程数据;
将所述编程数据输送到数据高速缓冲存储器;
将所述编程数据输送到写入数据锁存器;
计算所述数据高速缓冲存储器中保持的所述编程数据中待编程的位的数目;
在编程循环中,通过将初始编程电压施加到经选择以用所述多个数据位编程的多个存储器单元而将所述多个数据位编程到所述非易失性存储器阵列中;及
通过以下步骤尝试编程所述多个存储器单元中未能正确编程的任何存储器单元,
检验编程到所述非易失性存储器阵列的所述多个存储器单元中的编程数据的所述多个数据位,
计算未能正确编程的存储器单元的数目,
与所述数据高速缓冲存储器中保持的待编程的位的数目相关地计算未能正确编程到所述多个存储器单元中的所述多个数据位的百分比,
以与未能正确编程到所述多个存储器单元中的所述多个数据位的百分比的选定关系增加所述编程电压,
中止对一个或多个已正确编程的存储器单元的编程,
施加所述增加的编程电压以编程所述数据中未能正确编程的一个或多个位,及
重复一个或多个迭代循环。
14、一种为非易失性存储器装置确定曲线的方法,其包括:
为所述非易失性存储器装置确定曲线以针对正编程到所述非易失性存储器装置中的数据位的给定未通过百分比来为后续的编程循环指定所需的编程电压Δ增值。
15、如权利要求14所述的方法,其中为所述非易失性存储器装置确定曲线以针对正编程到所述非易失性存储器装置中的数据位的给定未通过百分比来为后续的编程循环指定所需的编程电压Δ增值进一步包括通过以下步骤中的一者来为所述非易失性存储器装置确定曲线:表征所述非易失性存储器装置制造过程,表征所述非易失性存储器装置设计,表征特定存储器阵列,表征特定存储器阵列区域,及表征特定存储器单元磨损程度以针对数据位的给定未通过百分比来选择所述所需的编程电压Δ/增值的曲线。
16、一种非易失性存储器装置,其包括:
非易失性存储器阵列;及
控制电路,其中所述控制电路适于在编程操作中通过将初始编程电压施加到经选择以用多个数据位编程的多个存储器单元及尝试通过以下步骤编程所述多个存储器单元中未能正确编程的任何存储器单元而将所述多个数据位编程到所述非易失性存储器阵列中,
检验编程到所述非易失性存储器阵列的所述多个存储器单元中的所述多个数据位,
以与未能正确编程到所述多个存储器单元中的所述多个数据位的百分比的选定关系增加所述编程电压,
中止对一个或多个已正确编程的存储器单元的编程,
施加所述增加的编程电压以编程所述数据中未能正确编程的一个或多个位,及
重复一个或多个迭代循环。
17、如权利要求16所述的非易失性存储器装置,其中所述控制电路适于重复一个或多个迭代循环,直到所述多个数据位均通过检验或达到最大迭代数目。
18、如权利要求16所述的非易失性存储器装置,其中所述控制电路适于在所述编程循环期间以与未能正确编程到所述非易失性存储器阵列的所述多个存储器单元中的所述多个数据位的百分比的选定关系增加所述编程电压进一步包括将总编程电压电平限制到指定的最大编程电压电平。
19、如权利要求16所述的非易失性存储器装置,其中所述控制电路适于根据所述非易失性存储器阵列的曲线来增加所述编程电压,所述曲线针对数据位的给定未通过百分比指定所述所需的编程电压Δ增值。
20、如权利要求16所述的非易失性存储器装置,其中所述非易失性存储器装置是以下中的一者:NAND构架快闪存储器装置、NOR构架快闪存储器装置、EEPROM存储器装置、聚合物存储器装置、铁电体随机存取存储器(FeRAM)装置、奥弗辛斯基电效应统一存储器(OUM)装置及磁阻随机存取存储器(MRAM)装置、分子存储器装置。
21、如权利要求16所述的非易失性存储器装置,其中所述非易失性存储器装置进一步包括:
多个读出放大器;
I/O缓冲器;及
存储器接口;且
其中所述控制电路是耦合到所述非易失性存储器阵列、所述I/O缓冲器、所述多个读出放大器及所述存储器接口的控制状态机,其中所述控制状态机适于在编程操作中通过将初始编程电压施加到经选择以用多个数据位编程的多个存储器单元及尝试通过以下步骤编程所述多个存储器单元中未能正确编程的任何存储器单元而将在所述存储器接口处接收的所述多个数据位编程到所述非易失性存储器阵列中,
检验编程到所述非易失性存储器阵列的所述多个存储器单元中的所述多个数据位,
以与未能正确编程到所述多个存储器单元中的所述多个数据位的百分比的选定关系增加所述编程电压,
中止对一个或多个已正确编程的存储器单元的编程,
施加所述增加的编程电压以编程所述数据中未能正确编程的一个或多个位,及
重复一个或多个迭代循环。
22、如权利要求16所述的非易失性存储器装置,其中所述非易失性存储器装置进一步包括一系统,其包括:
耦合到非易失性存储器装置的主机。
23、如权利要求22所述的非易失性存储器装置,其中所述主机是处理器和存储器控制器中的一者。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/156,223 US7239557B2 (en) | 2005-06-17 | 2005-06-17 | Program method with optimized voltage level for flash memory |
US11/156,223 | 2005-06-17 | ||
PCT/US2006/023086 WO2006138333A1 (en) | 2005-06-17 | 2006-06-13 | Program method for flash memory with optimized voltage level dependent of the number of bits detected to have failed programming |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101268520A true CN101268520A (zh) | 2008-09-17 |
CN101268520B CN101268520B (zh) | 2012-03-28 |
Family
ID=37084634
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2006800299731A Active CN101268520B (zh) | 2005-06-17 | 2006-06-13 | 用于快闪存储器的具有依据经检测未通过编程的位数目的优化电压电平的编程方法 |
Country Status (9)
Country | Link |
---|---|
US (4) | US7239557B2 (zh) |
EP (1) | EP1894207B1 (zh) |
JP (1) | JP4640660B2 (zh) |
KR (1) | KR100956709B1 (zh) |
CN (1) | CN101268520B (zh) |
AT (1) | ATE425539T1 (zh) |
DE (1) | DE602006005664D1 (zh) |
TW (1) | TWI305918B (zh) |
WO (1) | WO2006138333A1 (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102403039A (zh) * | 2010-09-06 | 2012-04-04 | 海力士半导体有限公司 | 半导体存储器件及其操作方法 |
CN108461100A (zh) * | 2017-02-20 | 2018-08-28 | 爱思开海力士有限公司 | 存储系统及其操作方法 |
CN110232945A (zh) * | 2018-03-06 | 2019-09-13 | 华邦电子股份有限公司 | 存储器装置以及其写入/擦除方法 |
CN111951870A (zh) * | 2019-05-15 | 2020-11-17 | 北京兆易创新科技股份有限公司 | 一种非易失性存储器的编程方法及控制装置 |
CN111951857A (zh) * | 2019-05-15 | 2020-11-17 | 北京兆易创新科技股份有限公司 | 一种非易失性存储器的编程方法及控制装置 |
Families Citing this family (110)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7656710B1 (en) | 2005-07-14 | 2010-02-02 | Sau Ching Wong | Adaptive operations for nonvolatile memories |
US7395466B2 (en) * | 2005-12-30 | 2008-07-01 | Intel Corporation | Method and apparatus to adjust voltage for storage location reliability |
US7702935B2 (en) * | 2006-01-25 | 2010-04-20 | Apple Inc. | Reporting flash memory operating voltages |
US20070174641A1 (en) * | 2006-01-25 | 2007-07-26 | Cornwell Michael J | Adjusting power supplies for data storage devices |
US7861122B2 (en) * | 2006-01-27 | 2010-12-28 | Apple Inc. | Monitoring health of non-volatile memory |
US7564718B2 (en) * | 2006-04-12 | 2009-07-21 | Infineon Technologies Flash Gmbh & Co. Kg | Method for programming a block of memory cells, non-volatile memory device and memory card device |
CN103258572B (zh) | 2006-05-12 | 2016-12-07 | 苹果公司 | 存储设备中的失真估计和消除 |
WO2007132457A2 (en) | 2006-05-12 | 2007-11-22 | Anobit Technologies Ltd. | Combined distortion estimation and error correction coding for memory devices |
WO2007132456A2 (en) | 2006-05-12 | 2007-11-22 | Anobit Technologies Ltd. | Memory device with adaptive capacity |
WO2007132452A2 (en) | 2006-05-12 | 2007-11-22 | Anobit Technologies | Reducing programming error in memory devices |
US20080036487A1 (en) * | 2006-08-09 | 2008-02-14 | Arm Limited | Integrated circuit wearout detection |
US8060806B2 (en) | 2006-08-27 | 2011-11-15 | Anobit Technologies Ltd. | Estimation of non-linear distortion in memory devices |
WO2008053472A2 (en) | 2006-10-30 | 2008-05-08 | Anobit Technologies Ltd. | Reading memory cells using multiple thresholds |
CN101601094B (zh) | 2006-10-30 | 2013-03-27 | 苹果公司 | 使用多个门限读取存储单元的方法 |
US8037231B2 (en) * | 2006-11-28 | 2011-10-11 | Intel Corporation | Memory architecture for separation of code and data in a memory device |
US7924648B2 (en) | 2006-11-28 | 2011-04-12 | Anobit Technologies Ltd. | Memory power and performance management |
US8151163B2 (en) | 2006-12-03 | 2012-04-03 | Anobit Technologies Ltd. | Automatic defect management in memory devices |
US20080141082A1 (en) * | 2006-12-06 | 2008-06-12 | Atmel Corporation | Test mode multi-byte programming with internal verify and polling function |
US7900102B2 (en) | 2006-12-17 | 2011-03-01 | Anobit Technologies Ltd. | High-speed programming of memory devices |
US7751240B2 (en) | 2007-01-24 | 2010-07-06 | Anobit Technologies Ltd. | Memory device with negative thresholds |
US8151166B2 (en) | 2007-01-24 | 2012-04-03 | Anobit Technologies Ltd. | Reduction of back pattern dependency effects in memory devices |
CN101715595A (zh) | 2007-03-12 | 2010-05-26 | 爱诺彼得技术有限责任公司 | 存储器单元读取阈的自适应估计 |
US8001320B2 (en) | 2007-04-22 | 2011-08-16 | Anobit Technologies Ltd. | Command interface for memory devices |
US20080288712A1 (en) | 2007-04-25 | 2008-11-20 | Cornwell Michael J | Accessing metadata with an external host |
US7913032B1 (en) | 2007-04-25 | 2011-03-22 | Apple Inc. | Initiating memory wear leveling |
KR100927119B1 (ko) * | 2007-05-10 | 2009-11-18 | 삼성전자주식회사 | 불 휘발성 반도체 메모리 장치 및 그것의 프로그램 방법 |
WO2008139441A2 (en) | 2007-05-12 | 2008-11-20 | Anobit Technologies Ltd. | Memory device with internal signal processing unit |
US8234545B2 (en) | 2007-05-12 | 2012-07-31 | Apple Inc. | Data storage with incremental redundancy |
US7697365B2 (en) * | 2007-07-13 | 2010-04-13 | Silicon Storage Technology, Inc. | Sub volt flash memory system |
US7925936B1 (en) | 2007-07-13 | 2011-04-12 | Anobit Technologies Ltd. | Memory device with non-uniform programming levels |
US7729161B2 (en) * | 2007-08-02 | 2010-06-01 | Macronix International Co., Ltd. | Phase change memory with dual word lines and source lines and method of operating same |
US8259497B2 (en) | 2007-08-06 | 2012-09-04 | Apple Inc. | Programming schemes for multi-level analog memory cells |
US8174905B2 (en) | 2007-09-19 | 2012-05-08 | Anobit Technologies Ltd. | Programming orders for reducing distortion in arrays of multi-level analog memory cells |
US7773413B2 (en) | 2007-10-08 | 2010-08-10 | Anobit Technologies Ltd. | Reliable data storage in analog memory cells in the presence of temperature variations |
US8068360B2 (en) | 2007-10-19 | 2011-11-29 | Anobit Technologies Ltd. | Reading analog memory cells using built-in multi-threshold commands |
US8000141B1 (en) | 2007-10-19 | 2011-08-16 | Anobit Technologies Ltd. | Compensation for voltage drifts in analog memory cells |
WO2009050703A2 (en) | 2007-10-19 | 2009-04-23 | Anobit Technologies | Data storage in analog memory cell arrays having erase failures |
WO2009063450A2 (en) | 2007-11-13 | 2009-05-22 | Anobit Technologies | Optimized selection of memory units in multi-unit memory devices |
US8225181B2 (en) | 2007-11-30 | 2012-07-17 | Apple Inc. | Efficient re-read operations from memory devices |
US8209588B2 (en) | 2007-12-12 | 2012-06-26 | Anobit Technologies Ltd. | Efficient interference cancellation in analog memory cell arrays |
US8456905B2 (en) | 2007-12-16 | 2013-06-04 | Apple Inc. | Efficient data storage in multi-plane memory devices |
US8085586B2 (en) | 2007-12-27 | 2011-12-27 | Anobit Technologies Ltd. | Wear level estimation in analog memory cells |
US8156398B2 (en) | 2008-02-05 | 2012-04-10 | Anobit Technologies Ltd. | Parameter estimation based on error correction code parity check equations |
US7924587B2 (en) | 2008-02-21 | 2011-04-12 | Anobit Technologies Ltd. | Programming of analog memory cells using a single programming pulse per state transition |
US7864573B2 (en) | 2008-02-24 | 2011-01-04 | Anobit Technologies Ltd. | Programming analog memory cells for reduced variance after retention |
ITRM20080114A1 (it) * | 2008-02-29 | 2009-09-01 | Micron Technology Inc | Compensazione della perdita di carica durante la programmazione di un dispositivo di memoria. |
US8230300B2 (en) | 2008-03-07 | 2012-07-24 | Apple Inc. | Efficient readout from analog memory cells using data compression |
US8059457B2 (en) | 2008-03-18 | 2011-11-15 | Anobit Technologies Ltd. | Memory device with multiple-accuracy read commands |
US8400858B2 (en) | 2008-03-18 | 2013-03-19 | Apple Inc. | Memory device with reduced sense time readout |
US7633804B2 (en) * | 2008-03-20 | 2009-12-15 | Micron Technology, Inc. | Adjusting programming or erase voltage pulses in response to the number of programming or erase failures |
KR101506655B1 (ko) * | 2008-05-15 | 2015-03-30 | 삼성전자주식회사 | 메모리 장치 및 메모리 데이터 오류 관리 방법 |
US7995388B1 (en) | 2008-08-05 | 2011-08-09 | Anobit Technologies Ltd. | Data storage using modified voltages |
US7924613B1 (en) | 2008-08-05 | 2011-04-12 | Anobit Technologies Ltd. | Data storage in analog memory cells with protection against programming interruption |
JP2010040144A (ja) * | 2008-08-07 | 2010-02-18 | Toshiba Corp | 不揮発性半導体記憶システム |
US8169825B1 (en) | 2008-09-02 | 2012-05-01 | Anobit Technologies Ltd. | Reliable data storage in analog memory cells subjected to long retention periods |
US8949684B1 (en) | 2008-09-02 | 2015-02-03 | Apple Inc. | Segmented data storage |
US8000135B1 (en) | 2008-09-14 | 2011-08-16 | Anobit Technologies Ltd. | Estimation of memory cell read thresholds by sampling inside programming level distribution intervals |
US8482978B1 (en) | 2008-09-14 | 2013-07-09 | Apple Inc. | Estimation of memory cell read thresholds by sampling inside programming level distribution intervals |
US8239734B1 (en) | 2008-10-15 | 2012-08-07 | Apple Inc. | Efficient data storage in storage device arrays |
US8261159B1 (en) | 2008-10-30 | 2012-09-04 | Apple, Inc. | Data scrambling schemes for memory devices |
US8208304B2 (en) | 2008-11-16 | 2012-06-26 | Anobit Technologies Ltd. | Storage at M bits/cell density in N bits/cell analog memory cell devices, M>N |
US8397131B1 (en) | 2008-12-31 | 2013-03-12 | Apple Inc. | Efficient readout schemes for analog memory cell devices |
US8248831B2 (en) | 2008-12-31 | 2012-08-21 | Apple Inc. | Rejuvenation of analog memory cells |
US8924661B1 (en) | 2009-01-18 | 2014-12-30 | Apple Inc. | Memory system including a controller and processors associated with memory devices |
US8228701B2 (en) | 2009-03-01 | 2012-07-24 | Apple Inc. | Selective activation of programming schemes in analog memory cell arrays |
JP2010211883A (ja) * | 2009-03-11 | 2010-09-24 | Toshiba Corp | 不揮発性半導体記憶装置 |
US8832354B2 (en) | 2009-03-25 | 2014-09-09 | Apple Inc. | Use of host system resources by memory controller |
US8259506B1 (en) | 2009-03-25 | 2012-09-04 | Apple Inc. | Database of memory read thresholds |
US8238157B1 (en) | 2009-04-12 | 2012-08-07 | Apple Inc. | Selective re-programming of analog memory cells |
US8479080B1 (en) | 2009-07-12 | 2013-07-02 | Apple Inc. | Adaptive over-provisioning in memory systems |
US8495465B1 (en) | 2009-10-15 | 2013-07-23 | Apple Inc. | Error correction coding over multiple memory pages |
US8243520B2 (en) * | 2009-11-02 | 2012-08-14 | Infineon Technologies Ag | Non-volatile memory with predictive programming |
US8130553B2 (en) * | 2009-12-02 | 2012-03-06 | Seagate Technology Llc | Systems and methods for low wear operation of solid state memory |
US8677054B1 (en) | 2009-12-16 | 2014-03-18 | Apple Inc. | Memory management schemes for non-volatile memory devices |
US8694814B1 (en) | 2010-01-10 | 2014-04-08 | Apple Inc. | Reuse of host hibernation storage space by memory controller |
US8572311B1 (en) | 2010-01-11 | 2013-10-29 | Apple Inc. | Redundant data storage in multi-die memory systems |
US8694853B1 (en) | 2010-05-04 | 2014-04-08 | Apple Inc. | Read commands for reading interfering memory cells |
US8572423B1 (en) | 2010-06-22 | 2013-10-29 | Apple Inc. | Reducing peak current in memory systems |
JP5566797B2 (ja) * | 2010-07-02 | 2014-08-06 | 株式会社東芝 | 不揮発性半導体記憶装置 |
US9741436B2 (en) | 2010-07-09 | 2017-08-22 | Seagate Technology Llc | Dynamically controlling an operation execution time for a storage device |
US8595591B1 (en) | 2010-07-11 | 2013-11-26 | Apple Inc. | Interference-aware assignment of programming levels in analog memory cells |
US9104580B1 (en) | 2010-07-27 | 2015-08-11 | Apple Inc. | Cache memory for hybrid disk drives |
US8767459B1 (en) | 2010-07-31 | 2014-07-01 | Apple Inc. | Data storage in analog memory cells across word lines using a non-integer number of bits per cell |
US8856475B1 (en) | 2010-08-01 | 2014-10-07 | Apple Inc. | Efficient selection of memory blocks for compaction |
US8310870B2 (en) * | 2010-08-03 | 2012-11-13 | Sandisk Technologies Inc. | Natural threshold voltage distribution compaction in non-volatile memory |
US8694854B1 (en) | 2010-08-17 | 2014-04-08 | Apple Inc. | Read threshold setting based on soft readout statistics |
US9021181B1 (en) | 2010-09-27 | 2015-04-28 | Apple Inc. | Memory management for unifying memory cell conditions by using maximum time intervals |
US8842469B2 (en) * | 2010-11-09 | 2014-09-23 | Freescale Semiconductor, Inc. | Method for programming a multi-state non-volatile memory (NVM) |
TWI447731B (zh) * | 2010-12-01 | 2014-08-01 | Phison Electronics Corp | 資料讀取方法、記憶體儲存裝置及其控制器 |
US8605531B2 (en) * | 2011-06-20 | 2013-12-10 | Intel Corporation | Fast verify for phase change memory with switch |
JP5950591B2 (ja) * | 2012-01-31 | 2016-07-13 | エスアイアイ・セミコンダクタ株式会社 | ボルテージレギュレータ |
WO2013169235A1 (en) * | 2012-05-08 | 2013-11-14 | Intel Corporation | Adaptive voltage input to a charge pump |
KR101996004B1 (ko) | 2012-05-29 | 2019-07-03 | 삼성전자주식회사 | 비휘발성 메모리 장치의 프로그램 방법 및 그것의 메모리 시스템 |
US8724404B2 (en) | 2012-10-15 | 2014-05-13 | United Microelectronics Corp. | Memory, supply voltage generation circuit, and operation method of a supply voltage generation circuit used for a memory array |
KR102221752B1 (ko) | 2014-03-20 | 2021-03-02 | 삼성전자주식회사 | 메모리 장치의 프로그램 방법 및 이를 포함하는 데이터 독출 방법 |
KR20150130849A (ko) * | 2014-05-14 | 2015-11-24 | 에스케이하이닉스 주식회사 | 반도체 장치의 동작 방법 |
KR102314135B1 (ko) | 2015-06-22 | 2021-10-18 | 삼성전자 주식회사 | 적응적인 루프를 수행하는 플래시 메모리 장치, 메모리 시스템 및 그 동작방법 |
KR102251815B1 (ko) | 2015-07-02 | 2021-05-13 | 삼성전자주식회사 | 메모리 장치 및 메모리 시스템 |
US9489990B1 (en) * | 2015-11-17 | 2016-11-08 | Atmel Corporation | Adaptive non-volatile memory programming |
US10082964B2 (en) * | 2016-04-27 | 2018-09-25 | Micron Technology, Inc | Data caching for ferroelectric memory |
US10522226B2 (en) * | 2018-05-01 | 2019-12-31 | Silicon Storage Technology, Inc. | Method and apparatus for high voltage generation for analog neural memory in deep learning artificial neural network |
JP2020009511A (ja) | 2018-07-05 | 2020-01-16 | キオクシア株式会社 | メモリシステム及び不揮発性半導体メモリ |
US10741256B2 (en) * | 2018-09-18 | 2020-08-11 | Western Digital Technologies, Inc. | Data storage systems and methods for improved recovery after a write abort event |
US10614898B1 (en) | 2018-09-19 | 2020-04-07 | Sandisk Technologies Llc | Adaptive control of memory cell programming voltage |
US11081170B2 (en) | 2018-12-19 | 2021-08-03 | Micron Technology, Inc. | Apparatus and methods for programming memory cells responsive to an indication of age of the memory cells |
US10964402B1 (en) | 2020-02-19 | 2021-03-30 | Sandisk Technologies Llc | Reprogramming memory cells to tighten threshold voltage distributions and improve data retention |
US11556416B2 (en) | 2021-05-05 | 2023-01-17 | Apple Inc. | Controlling memory readout reliability and throughput by adjusting distance between read thresholds |
US11749346B2 (en) * | 2021-05-19 | 2023-09-05 | Micron Technology, Inc. | Overwrite mode in memory programming operations |
CN113692623A (zh) * | 2021-06-30 | 2021-11-23 | 长江存储科技有限责任公司 | 用于三维nand存储器的数据保护 |
US11847342B2 (en) | 2021-07-28 | 2023-12-19 | Apple Inc. | Efficient transfer of hard data and confidence levels in reading a nonvolatile memory |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5257225A (en) | 1992-03-12 | 1993-10-26 | Micron Technology, Inc. | Method for programming programmable devices by utilizing single or multiple pulses varying in pulse width and amplitude |
US5357463A (en) | 1992-11-17 | 1994-10-18 | Micron Semiconductor, Inc. | Method for reverse programming of a flash EEPROM |
DE19542029C1 (de) * | 1995-11-10 | 1997-04-10 | Siemens Ag | Verfahren zum selbsttätigen Ermitteln der nötigen Hochspannung zum Programmieren/Löschen eines EEPROMs |
KR100208433B1 (ko) | 1995-12-27 | 1999-07-15 | 김영환 | 플래쉬 메모리 소자 및 그를 이용한 프로그램 방법 |
US5768287A (en) | 1996-10-24 | 1998-06-16 | Micron Quantum Devices, Inc. | Apparatus and method for programming multistate memory device |
JP3786513B2 (ja) * | 1997-12-11 | 2006-06-14 | 株式会社東芝 | 不揮発性半導体記憶装置 |
US6188613B1 (en) | 1998-10-08 | 2001-02-13 | Micron Technology, Inc. | Device and method in a semiconductor memory for erasing/programming memory cells using erase/program speeds stored for each cell |
US6493270B2 (en) | 1999-07-01 | 2002-12-10 | Micron Technology, Inc. | Leakage detection in programming algorithm for a flash memory device |
KR100414146B1 (ko) * | 2000-06-27 | 2004-01-13 | 주식회사 하이닉스반도체 | 플래쉬 메모리 소자의 소거 방법 |
JP4250325B2 (ja) | 2000-11-01 | 2009-04-08 | 株式会社東芝 | 半導体記憶装置 |
US6466480B2 (en) | 2001-03-27 | 2002-10-15 | Micron Technology, Inc. | Method and apparatus for trimming non-volatile memory cells |
KR100496866B1 (ko) | 2002-12-05 | 2005-06-22 | 삼성전자주식회사 | 미프로그램된 셀들 및 과프로그램된 셀들 없이 균일한문턱 전압 분포를 갖는 플레쉬 메모리 장치 및 그프로그램 검증 방법 |
US6882567B1 (en) | 2002-12-06 | 2005-04-19 | Multi Level Memory Technology | Parallel programming of multiple-bit-per-cell memory cells on a continuous word line |
US7392436B2 (en) | 2003-05-08 | 2008-06-24 | Micron Technology, Inc. | Program failure recovery |
KR100505707B1 (ko) * | 2003-08-26 | 2005-08-03 | 삼성전자주식회사 | 프로그램 동작시 가변되는 비트 라인의 전압 레벨을조절하는 플래쉬 메모리 장치의 프로그램 제어회로 및 그제어방법 |
US6977842B2 (en) | 2003-09-16 | 2005-12-20 | Micron Technology, Inc. | Boosted substrate/tub programming for flash memories |
US6898126B1 (en) * | 2003-12-15 | 2005-05-24 | Powerchip Semiconductor Corp. | Method of programming a flash memory through boosting a voltage level of a source line |
-
2005
- 2005-06-17 US US11/156,223 patent/US7239557B2/en active Active
-
2006
- 2006-06-13 JP JP2008517039A patent/JP4640660B2/ja not_active Expired - Fee Related
- 2006-06-13 KR KR1020087001285A patent/KR100956709B1/ko active IP Right Grant
- 2006-06-13 DE DE602006005664T patent/DE602006005664D1/de active Active
- 2006-06-13 AT AT06773108T patent/ATE425539T1/de not_active IP Right Cessation
- 2006-06-13 CN CN2006800299731A patent/CN101268520B/zh active Active
- 2006-06-13 EP EP06773108A patent/EP1894207B1/en active Active
- 2006-06-13 WO PCT/US2006/023086 patent/WO2006138333A1/en active Application Filing
- 2006-06-14 TW TW095121160A patent/TWI305918B/zh active
-
2007
- 2007-06-07 US US11/810,725 patent/US7453737B2/en active Active
-
2008
- 2008-11-17 US US12/272,281 patent/US7663934B2/en active Active
-
2010
- 2010-02-16 US US12/706,393 patent/US7876623B2/en active Active
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102403039A (zh) * | 2010-09-06 | 2012-04-04 | 海力士半导体有限公司 | 半导体存储器件及其操作方法 |
CN108461100A (zh) * | 2017-02-20 | 2018-08-28 | 爱思开海力士有限公司 | 存储系统及其操作方法 |
CN110232945A (zh) * | 2018-03-06 | 2019-09-13 | 华邦电子股份有限公司 | 存储器装置以及其写入/擦除方法 |
CN111951870A (zh) * | 2019-05-15 | 2020-11-17 | 北京兆易创新科技股份有限公司 | 一种非易失性存储器的编程方法及控制装置 |
CN111951857A (zh) * | 2019-05-15 | 2020-11-17 | 北京兆易创新科技股份有限公司 | 一种非易失性存储器的编程方法及控制装置 |
CN111951870B (zh) * | 2019-05-15 | 2023-06-20 | 兆易创新科技集团股份有限公司 | 一种非易失性存储器的编程方法及控制装置 |
Also Published As
Publication number | Publication date |
---|---|
KR100956709B1 (ko) | 2010-05-06 |
EP1894207A1 (en) | 2008-03-05 |
US7663934B2 (en) | 2010-02-16 |
CN101268520B (zh) | 2012-03-28 |
US20080031047A1 (en) | 2008-02-07 |
TWI305918B (en) | 2009-02-01 |
ATE425539T1 (de) | 2009-03-15 |
US7239557B2 (en) | 2007-07-03 |
US20100142283A1 (en) | 2010-06-10 |
WO2006138333A1 (en) | 2006-12-28 |
JP2008544435A (ja) | 2008-12-04 |
US7453737B2 (en) | 2008-11-18 |
US20090073772A1 (en) | 2009-03-19 |
US7876623B2 (en) | 2011-01-25 |
EP1894207B1 (en) | 2009-03-11 |
JP4640660B2 (ja) | 2011-03-02 |
TW200713284A (en) | 2007-04-01 |
US20060285396A1 (en) | 2006-12-21 |
KR20080019713A (ko) | 2008-03-04 |
DE602006005664D1 (de) | 2009-04-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101268520B (zh) | 用于快闪存储器的具有依据经检测未通过编程的位数目的优化电压电平的编程方法 | |
CN100552808C (zh) | 具有限流锁存器之集成电路 | |
US9984756B2 (en) | Fast programming memory device | |
CN1754230B (zh) | 一种操作非易失性存储器的方法 | |
US7495954B2 (en) | Method for partitioned erase and erase verification to compensate for capacitive coupling effects in non-volatile memory | |
US6108236A (en) | Smart card comprising integrated circuitry including EPROM and error check and correction system | |
KR20080079500A (ko) | 불휘발성 메모리 장치 및 그것의 프로그램 및 소거 방법 | |
CN101213614A (zh) | 使用个别验证擦除非易失性存储器和额外擦除存储器单元的子组 | |
WO2010056504A2 (en) | Erase voltage reduction in a non-volatile memory device | |
JP3739102B2 (ja) | 不揮発性半導体記憶装置 | |
JP3775963B2 (ja) | 不揮発性半導体メモリ装置の消去方式 | |
CN103489480B (zh) | 非易失性存储器件以及控制该非易失性存储器件的方法 | |
US8081520B2 (en) | Over erase correction method of flash memory apparatus | |
US7460401B2 (en) | Method for checking block erasing of a memory and circuit thereof | |
US11837297B2 (en) | Smart erase verify in non-volatile memory structures |
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 |