CN101174462A - 用于编程多层非易失性存储装置的方法 - Google Patents
用于编程多层非易失性存储装置的方法 Download PDFInfo
- Publication number
- CN101174462A CN101174462A CNA2007101596356A CN200710159635A CN101174462A CN 101174462 A CN101174462 A CN 101174462A CN A2007101596356 A CNA2007101596356 A CN A2007101596356A CN 200710159635 A CN200710159635 A CN 200710159635A CN 101174462 A CN101174462 A CN 101174462A
- Authority
- CN
- China
- Prior art keywords
- programming
- voltage
- unit
- threshold voltage
- data
- 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/04—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
-
- 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
-
- 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/30—Power supply circuits
Landscapes
- Engineering & Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Read Only Memory (AREA)
Abstract
一种用于编程包括至少一个标识单元和多个多位存储单元的多层非易失性存储器的方法。每一个存储单元存储最低有效位(LSB)和最高有效位(MSB)的数据。使用LSB数据编程单元,使得编程过的存储单元具有大于VR1的阈值电压。修改阈值电压使得对于第三或第四值具有大于VR2的阈值电压。使用MSB数据编程存储单元,使得阈值电压对于第一值小于VR1,对于第二值大于VR1且小于VR2,对于第三值大于VR2且小于VR3,对于第四值大于VR3。VR1小于VR2,VR2小于VR3。编程标识单元以显示是否已经编程MSB数据。
Description
相关申请的交叉引用
本申请要求于2006年9月6日提交的韩国专利申请10-2006-0085879的优先权,通过引用的方式将其全部内容合并在此。
技术领域
本公开涉及非易失性存储装置,并且更特别地,涉及用于编程多层非易失性存储装置的方法。
背景技术
闪存是计算机存储器的一种形式,其能够保存数据而不需要消耗功率,因此其特征在于非易失性。可以以块对闪存进行编程和擦除。
闪存将数据存储在被称作单元(cell)的浮栅晶体管的阵列中。在单层闪存中,可以在每个单元中存储一位数据。在多层闪存中,通过在存储于单元的浮栅中的电荷的数个层之间区分,可以在每个单元中存储超过一位的数据。
图1是示出闪存的单个单元10的示意图。闪存由可以掺杂例如硼离子的p型半导体衬底11组成。通过掺杂例如磷、砷或锑离子,可以在衬底11中形成n型源极区12和n型漏极区13。可以在衬底11之上形成浮栅14,并且可以与衬底隔离。可以在浮栅14之上形成控制栅15,并且可以与浮栅14隔离。因为浮栅14被完全隔离,所以在浮栅中存储的电荷被俘获,并且从而不需要消耗电力就可以将数据保留在浮栅中。
闪存可以是或非(NOR)存储器或与非(NAND)存储器。每一种闪存具有其自身的一套特点。例如,NOR闪存利用被称作热电子注入的过程来俘获浮栅中的电荷,并依赖量子隧道来使浮栅放电。NAND闪存利用量子隧道来俘获电荷和放电。
可以将NAND闪存装置组织成串。图2示出了一串NAND闪存的示例。所示串由200A物理地描绘,而200B描绘了其类似的电子示意图。每个串是一组串连的单元。每个串可以包括例如16或32个单元。每个串可以具有带有位线触头(contact)210的位线和一个或多个用于控制所述串的栅。例如,每个串可以具有选择栅220和控制栅230。所述串还可以具有浮栅240和单元源极线250。
可以连接多个串以形成页面。字线可以连接页面的每个串中的类似单元。可以将多个页面组织成块。图3示出了闪存块的示例。闪存100具有控制字线(WL)、串选择线(SSL)和地选择线(GSL)的电压的X-译码器130。闪存100还具有用于控制位线(BL)电压的页面缓冲器电路150。将闪存100组织成由串组成的块110。在图3中,示出了串110_1、110_2和110_M,然而可以理解在110_2和110_M之间可以存在任意数目的串。这里,串110_1具有位线“BLe”,而串110_2具有位线“BLo”。也将闪存100组织成页面。将页面的示例示出为110p。
可以将每个串连接到串选择线(SSL)、地选择线(GSL)、标号为WL<N-1>到WL<0>的一连串字线(WL)、和公共源极线(Common Source Line,CSL),并且每个串可以具有串选择晶体管(SST)、地选择晶体管(GST)和标号为MCT<N-1>到MCT<0>的一连串存储单元晶体管(MCT)。
在闪存装置中,浮栅中电荷的存在和程度影响着该单元的阈值电压。可以将单元的阈值电压理解为电流开始在源极与漏极之间流动之前需要施加到控制栅上的最小电压。因此,通过向控制栅施加预定电压并确定电流是否可以在源极与漏极之间流动,可以读取所述单元。在实际应用中,放大器可以用来检测并放大所观测的电流。
在多层闪存中,可以将多个分离层的电荷存储在单元的浮栅中。例如,在2位多层闪存中,可以有存储在单元的浮栅中的四个分离层的电荷。在该情况中,单元可以依赖于在浮栅中俘获的电荷的层来展示四个独立(distinct)的阈值电压中之一。存储在单元中的电荷的层,和由此的存储的数据值可以通过向控制栅施加测试电压并确定是否有电流而确定。对于2位多层闪存,需要测试电流是否在多达3个离散的读电压流过来确定单元的状态。
多层闪存可以具有超过2位。例如,多层闪存可以具有3位或更多位。3位闪存每个单元将具有8(23)个状态,4位闪存每个单元将具有16(24)个状态,5位闪存每个单元将具有32(25)个状态等。这样的多层闪存的操作的阈值电压(level)将不得不被设定为超过可能值的范围,并且可以通过余量(margin)分离相邻的阈值范围。因此,具有更高位数的闪存必须能够在更窄范围内设定电荷电平并具有更窄的余量。为了容纳这些更窄的范围和余量,必须以提高的精度将电荷加到单元上。将电荷加到单元的处理被称作“编程”。因此,用于多层闪存的编程需要提高的精度。
当对闪存尤其是具有提高精度的多层闪存编程时,可能会中断编程操作。例如,可能失去电源或过早断开闪存装置。在这些情况下,预先写到闪存的数据可能变得不可读。因此,对闪存尤其是多层闪存编程可能携带存储损失的风险。
发明内容
提供了一种对包括至少一个标识单元和多个多位存储单元的多层非易失性存储器编程的方法。多个多位存储单元的每一个存储由最低有效位(LSB)和最高有效位(MSB)代表的数据。所述方法包括编程存储单元,使得编程过的存储单元具有大于VR1的阈值电压。修改编程过的存储单元的阈值电压,使得当期望存储单元存储第三或第四值时,每一个编程过的存储单元具有大于VR2的阈值电压。当期望存储单元存储第一值时,使用MSB数据编程存储单元,使得每一个存储单元具有小于电压VR1的阈值电压。当期望存储单元存储第二值时,每一个单元具有大于电压VR1且小于电压VR2的阈值电压。当期望存储单元存储第三值时,每一个单元具有大于电压VR2且小于电压VR3的阈值电压。当期望存储单元存储第四值时,每一个单元具有大于电压VR3的阈值电压。电压VR1小于电压VR2,电压VR2小于电压VR3。编程标识单元以显示是否已经编程MSB数据。
一种用于根据用于编程包括至少一个标识单元和多个多位存储单元的多层非易失性存储器的方法来控制存储器的控制器。多个多位存储单元的每一个存储由最低有效位(LSB)和最高有效位(MSB)代表的数据。所述方法包括编程存储单元的LSB数据,使得编程过的存储单元具有大于VR1的阈值电压。修改编程过的存储单元的阈值电压,使得当期望存储单元存储第三或第四值时,每一个编程过的存储单元具有大于VR2的阈值电压。当期望存储单元存储第一值时,使用MSB数据编程存储单元,使得每一个存储单元具有小于电压VR1的阈值电压。当期望存储单元存储第二值时,每一个单元具有大于电压VR1且小于电压VR2的阈值电压。当期望存储单元存储第三值时,每一个单元具有大于电压VR2且小于电压VR3的阈值电压。当期望存储单元存储第四值时,每一个单元具有大于电压VR3的阈值电压。电压VR1小于电压VR2,电压VR2小于电压VR3。编程标识单元以显示是否已经编程MSB数据。
一种用于编程包括至少一个标识单元和多个多位存储单元的多层非易失性存储器的方法。多个多位存储单元的每一个能够存储用于代表数据的不同层的电荷。数据由多个数据页面表示。所述方法包括顺序地编程多个数据页面的一个或更多个,使得每一个编程过的存储单元具有在包括第一范围和多个后续范围的多个阈值电压范围中之一内的阈值电压。将多个后续范围的每一个定义为等于或大于相应的校验电压。在相应的读取电压读取多个后续范围的每一个。对于每一个给定的后续范围,相应的读取电压比相应的校验电压小余量M。在多个数据页面的每一个的编程之间提升编程过的存储单元的阈值电压,使得将提升过的存储单元的阈值电压编程为等于或大于下一个校验电压,下一个校验电压大于已经预先编程的单元的校验电压。将至少一个标识单元编程到指示已经编程过的页面信息的阈值电压范围内的阈值电压。将标识单元阈值电压范围定义为等于或大于标识单元校验电压。在标识单元读取电压读取标识单元,并且标识单元读取电压比标识单元校验电压小增强余量MEnhanced,该增强余量MEnhanced大于余量M。
一种用于根据编程包括至少一个标识单元和多个多位存储单元的多层非易失性存储器的方法来控制存储器的控制器。多个多位存储单元的每一个能够存储用于代表数据的不同层的电荷。数据由多个数据页面表示。所述方法包括顺序地编程多个数据页面的一个或更多个,使得每一个编程过的存储单元具有在包括第一范围和多个后续范围的多个阈值电压范围中一个内的阈值电压。将多个后续范围的每一个定义为等于或大于相应的校验电压,其中在相应的读取电压读取多个后续范围的每一个。对于每一个给定的后续范围,相应的读取电压比相应的校验电压小余量M。在多个数据页面的每一个的编程之间提升编程过的存储单元的阈值电压,使得将提升过的存储单元的阈值电压编程到等于或大于下一个校验电压,下一个校验电压大于已经预先编程的单元的校验电压。将至少一个标识单元编程为指示已经编程过的页面信息的阈值电压范围内的一个阈值电压。将标识单元阈值电压范围定义为等于或大于标识单元校验电压。在标识单元读取电压读取标识单元,并且标识单元读取电压比标识单元校验电压小增强余量Menhanced,该增强余量Menhanced大于余量M。
附图说明
当联系附图考虑时,参考以下详细的描述,本公开的更完整的评价及其很多附带的优点将更好地理解而被更容易的掌握,其中:
图1是示出闪存的单个单元的示意图;
图2示出了一串NAND闪存的示例;
图3示出了闪存页面的示例;
图4图解根据本发明的示例性实施例的2位多层闪存的四个状态;
图5图解作为ISPP方法的一部分使用的示例性电信号;
图6图解根据本发明的另一个示例性实施例的作为ISPP方法的一部分使用的电信号;
图7图解根据本发明的示例性实施例的2位存储器的四个可能的状态;
图8图解根据本发明的示例性实施例的、用于在单元中编程数据的方法;
图9图解根据本发明的示例性实施例的、用于编程多层非易失性存储装置的方法;
图10图解根据本发明的示例性实施例的、用于编程多层非易失性存储装置的方法;
图11图解根据本发明的示例性实施例的、用于编程多层非易失性存储装置的方法;
图12图解根据本发明的一个或更多个示例性实施例的、用于编程LSB页面的详细方法;
图13图解根据本发明的一个或更多个示例性实施例的、用于编程MSB页面的详细方法;
图14A-14B示出了根据本发明的示例性实施例的3位存储装置;
图15是示出根据本发明的示例性实施例的、用于控制2位多层非易失性存储装置的偏置条件的表;和
图16示出了根据本发明的示例性实施例的包括闪存的存储器系统。
具体实施方式
在描述附图中所示的本公开的优选实施例中,为了清楚采用特定的术语。然而,本发明并非旨在局限于所选的特定术语,并且可以理解每一个特定元件包括所有以类似方式操作的技术等价物。
本发明的实施例可以允许在多层非易失性存储装置(例如,具有两个或更多位的闪存)中单元的高精度编程。
图4图解2位多层闪存的四个状态。在该图表400中,x轴代表阈值电压,而y轴代表对于特定的编程过的单元的阈值电压的概率分布。将单元的阈值电压表示成概率分布,并且由此将单元的电荷状态表示成曲线,该曲线示出了根据特定状态编程过的单元将具有特定阈值的可能性。
给定的单元可以具有分别代表第一状态、第二状态、第三状态和第四状态的四个可能的阈值电压概率曲线410、420、430、440中之一。在理想情况下,具有阈值电压概率曲线410的单元将不在任何测试电压VR1、VR2和VR3显示(register)电流。具有阈值电压概率曲线420的单元将在VR1而不在VR2或VR3显示电流。具有阈值电压曲线430的单元将在VR1和VR2而不在VR3显示电流。具有阈值电压曲线440的单元将在所有测试电压VR1、VR2和VR3显示电流。因此,在理想情况下,可以通过在3个电压VR1、VR2和VR3的每一个读取单元来在四个状态之间区分。
还期望分别在阈值电压范围420、430和440以及测量电压VR1、VR2和VR3之间留有余量。将这些余量表示为距离M并且从测量电压和相邻校验电压VF1、VF2和VF3延伸,该相邻校验电压指示了阈值电压范围420、430和440的开始。
当根据设计和制造约束来选择确切的阈值电压范围时,在此可以单独提供特定电压作为示例,并且预期单元的状态可以根据任何电压比例而设置。例如,第一状态410可以由具有小于大约-2伏特的阈值电压的单元代表。第二状态420可以由具有在0.3到0.7伏特范围内的阈值电压的单元代表。第三状态430可以由具有在1.3到1.7伏特范围内的阈值电压的单元代表。第四状态440可以由具有在2.3到2.7伏特范围内的阈值电压的单元代表。
如上所述,随着单元的可能的存储状态的数目增加,所以与给定状态对应的阈值电压的范围变得更窄,而从测量电压分离阈值电压的余量也更窄。因此,以高度精度编程每个单元日益重要。
用于增加编程精度的一个方法是增量步进脉冲编程(ISPP)。图5示出了可用于ISPP的示例波形。
图6示出了根据本发明的示例性实施例的用于ISPP的波形。使用图6中所示的波形有利于使单元阈值电压变化比使用图5中所示的波形的更小。这里,电信号600(Vpgm)包括一系列脉冲,其每个脉冲扩展构成程序周期620的时间长度。每个脉冲可以通过构成校验周期640的时间长度而分离。可以将每个连续的脉冲的电压增加例如电压630(ΔVpgm),该电压值可以是例如0.5V。例如,第一脉冲610的电压可以是15V。每个连续的脉冲可以增加到并包括最大电压650,该电压值可以是例如19V。可以在例如每个脉冲之间或周期性地例如每3个脉冲测试单元的阈值电压,以查看是否已经获得正确的阈值电压。如果没有获得,则可以施加另外的脉冲。
在已经编程单元之后,可以读取单元以校验是否正确地编程该单元。例如,可以测试阈值电压以查看其是否已经设置得足够高。如果不是,则施加另外的脉冲直到阈值电压足够高为止。
可以使用一组校验测试电压来校验编程过的阈值电压。校验电压(VF)可以与用于读取单元的测试电压(VR)不同。例如,校验电压VF1、VF2、VF3的每一个可以比对应的读取电压VR1、VR2、VR3大上述余量M的量。
多位存储装置的每个单元状态可以由数字代表。例如,当使用2位闪存时,四个可能的状态的每一个可以由2位二进制数表示。例如,第一个未编程状态可以表示为“11”,第二个状态可以表示为“01”,第三个状态可以表示为“10”,第四个状态可以表示为“00”。图7图解根据本发明的实施例的2位存储器的四个可能的状态。应该理解命名可以是任意的,所提供的当前的命名只是一个示例。这里,示出了对于四个状态的每一个的阈值电压概率分布700。可以理解,给定的单元可以一次只具有一个阈值电压,并且阈值电压可以在四个状态中的一个内,确切的阈值电压落在根据概率曲线的该状态的分布中。
每个2位二进制数可以被称作包括最高有效位(MSB)和最低有效位(LSB)。在第一未编程状态710中,MSB 712是“1”,LSB 718是“1”。在第二状态720中,MSB 722是“0”,LSB 728是“1”。在第三状态730中,MSB 732是“1”,LSB 738是“0”。在第四状态740中,MSB 742是“0”,LSB 748是“0”。
如上所述,通过在所需浮栅中俘获一层电荷可以将数据存储在每个单元中,以在期望范围内得到阈值电压,每个范围代表一个状态。因此,通过对单元编程可以将数据存储在单元中,并且在2位存储器的情况下,可以在每个单元中存储2位数据。当期望时,可以只用数据的单个位来编程2位存储单元。类似地,只用数据的第一位编程的单元可以随后用数据的第二位编程。当在单元中仅编程单个位数据时,单元被称作只包含LSB数据。当在单元中编程2位数据时,单元被称作包含LSB数据和MSB数据。可期望的并且在一些情况下是必需的是,在单元中首先编程(和校验)LSB数据然后在单元中编程(和校验)MSB数据。应该理解在NAND闪存中,可以一次一页地将单元编程。因此,物理页面的LSB单元可以被认为是LSB逻辑页面,而物理页面的MSB单元可以被认为是MSB逻辑页面,其中编程物理页面的过程包括首先编程(和校验)LSB逻辑页面,接着编程(和校验)MSB逻辑页面。
图8图解根据本发明的示例性实施例的、用于在单元中编程数据的方法。线800A代表已经仅编程LSB数据的单元。LSB数据的未编程状态是“1”。当期望存储“0”时,编程单元直到阈值电压被校验为处于“0”状态(大于VF2*)的正确范围内为止。这个编程步骤被图解为P1。
当在单元中只存储LSB数据时,可以在单个电压读取单元,这里所示为VR1。如果在电压VR1,可以观测到电流,则确定单元处于未编程的“1”状态。如果在电压VR1,没有观测到电流,则确定单元处于“0”状态。
至少部分地因为相邻单元的靠近,在被称作耦合效应的现象中,相邻单元的编程可能影响给定单元的阈值电压。因为在受影响的单元的阈值电压中的这个潜在的改变,概率曲线可能加宽。线800B代表只有LSB数据已经被编程且阈值电压概率曲线加宽了数量D1的单元。
当在编程LSB页面之后编程MSB页面时,作为使用本发明的一些示例性实施例的情况,线800B的“1”LSB数据状态可以保持为线800C的“11”数据状态,或者可以被编程直到阈值电压通过表示为P2的编程步骤被校验处于线800C的“01”状态(大于VF1)的正确范围内为止。类似地,可以编程线800B的“0”数据状态直到阈值电压通过表示为P3的编程步骤被校验处于线800C的“10”状态(大于VF2)的正确范围内为止,或者可以被编程直到阈值电压通过表示为P4的编程步骤被校验处于线800C的“00”数据状态(大于VF3)的正确范围内为止。每个编程步骤可以利用ISPP过程,例如上述的ISPP过程。
当从存储装置读取数据时,需要知道是否只有LSB数据已经被存储,或者是否LSB数据和MSB数据均已经被存储。存在应当知道这个信息的许多原因。例如,仅读取LSB数据只需要在一个电压(VR1)读取,而读取LSB和MSB数据需要在上述的三个电压(VR1、VR2和VR3)读取。此外,如线800B中所示,LSB数据的“0”状态可以包括在电压VR2任何一侧的阈值电压。
VF1比VR1大余量M。类似地,VF2比VR2大余量M,VF3比VR3大余量M。所有的余量M可以相等;然而,不是必须的。允许余量可以提高读取精度。
本发明的实施例可以利用称为MSB标识的单元来指示是否已经存储MSB数据。在专用存储设备的一个单元作为MSB标识单元处,其余单元可以被称为数据存储单元。在后面的点当期望读取所存储的数据时,可以读取MSB标识单元以允许所存储数据的正确解释,而不管是否只有LSB数据已经被存储或是否LSB和MSB数据都已经被存储。对于每个页面存在至少一个MSB标识单元,指示是否已经将MSB数据存储到该页面。
线800D图解处于未编程的“1”状态的MSB标识单元。该状态可以用来指示还没有被编程MSB数据。线800E图解处于“0”状态的MSB标识单元。该状态可以用来指示已经编程了MSB数据。MSB标识可以在“1”状态中开始,并且可以被编程直到阈值电压通过编程步骤P5被校验处于“0”状态(大于VF3)为止,以指示已经编程了MSB数据。
如上所述,可以编程MSB标识的“0”状态直到MSB标识单元的阈值电压大于VF3为止。当该状态的阈值电压比VR3大余量M时,从VR2读取MSB标识以提供增强的余量。该增强的余量被示例为MEnhanced。
随着电荷无意识地从单元的浮栅逃离,被称作电荷损失的现象可能发生。电荷可以由于绝缘层中的缺陷或一些其他原因而无意识地逃离。电荷的损失可能导致阈值电压变得比期望的更低的可能性。该可能性可以由在更低电压方向中的概率曲线的展宽来表示。
虽然电荷损失可能发生在任何单元,但是存储单元需要比MSB标识单元具有更多的误差校正措施。此外,在一个存储单元中的电荷损失可以只表示该受影响的单元不可读,而在MSB标识单元中的电荷损失可以表示整个页面不可读。因此在MSB标识单元中的电荷损失是特殊的问题。
至少由于这个原因,即使电荷是从MSB标识单元的浮栅丢失的,增强的余量MEnhanced也可以足够大以允许对MSB标识单元的正确读取。根据本发明的实施例,距离MEnhanced足以将MSB标识的“0”状态放置在与存储单元的“00”状态(如线800C上“00”所示)相同的分布曲线上。因此,通过定义MSB标识单元的“0”状态,即使在低于理想的状态下也可以正确地读取MSB标识单元。
图9图解根据本发明的示例性实施例的、用于编程多层非易失性存储装置的方法。首先,可以编程存储单元的LSB数据(步骤S910)。如上所述,通过使用ISPP过程,可以编程LSB逻辑页面直到阈值电压被校验为大于VF2*为止,其中期望‘0’状态。如果期望‘1’状态,则在此步骤不需要编程。然后,通过使用ISPP过程,MSB数据可以用于在期望处编程“00”状态(步骤S920A)直到阈值电压被校验为大于VF3为止。该编程步骤可以包括实现ISPP过程以增加另外的电荷到“0”LSB状态。可以将MSB标识单元从未编程的状态“1”编程到编程的状态“0”(步骤S920B)以指示已经编程了MSB数据。该编程步骤可以包括实现ISPP过程以增加另外的电荷到“1”状态来获得“0”状态。如上所述,可以编程用于MSB标识单元的“0”状态,直到阈值电压被校验大于VR3为止。可以同时执行步骤S920A和S920B,这是因为它们均可以使用同样的VR3校验电压。然后,MSB数据可以用于在期望处编程“01”和“10”状态(步骤S930)。该编程步骤可以包括通过编程直到阈值电压分别被校验为大于VF1和VF2为止,来实现ISPP处理以增加另外的电荷到“1”和“0”状态以分别获得“01”和“10”状态。“11”状态可以通过将单元留在其未编程的“1”状态而获得。
如上所述,尤其在电源中断和/或过早断开存储装置的情况下,闪存尤其是多层闪存的编程携带存储丢失的风险。本发明的实施例通过在编程处理中执行一个或更多个另外的步骤来寻求减少这种风险。
例如,如果在使用MSB数据进行“00”状态编程(步骤S920A)和MSB标识单元编程(步骤S920B)期间中断电源。在这样的情况下,当LSB数据是潜在可读的时,MSB数据将不可读,并且MSB标识单元的状态不是清楚确认的。由于MSB标识单元的不明确的状态,所以将LSB数据表示为不可读。
下述的本发明的示例性实施例同时关注编程主存储单元的方式和当编程主存储单元时编程标识单元的方式。可以理解下述编程主存储单元的方式和下述编程标识单元的方式不是相互依赖的,并且不需要以所示的形式结合特定的方式。特别地,下述编程主存储单元的方式可以与其他没有在下面描述但是本领域公知的编程标识单元的方式相结合,而下述编程标识单元的方式可以与其他没有在下面描述但是本领域公知的编程主存储单元的方式相结合。
因此,图10和11图解根据本发明的另一个示例性实施例的编程多层非易失性存储装置的替代方法。首先,以上述方式编程LSB数据(步骤S1010)(线1100A)。然后,通过编程该单元直到阈值电压被校验大于VF2为止,可以将‘0’状态提前到提前状态“A”(步骤S1020)(线1100B)。通过编程到VF2而定义的状态也被定义为‘10’状态,然而,当期望‘10’状态或‘00’状态时可以执行该步骤。MSB标识单元可以在该步骤(1110B)保持未编程。然后,如果期望的话,通过编程A状态直到阈值电压被校验为大于VF3为止,可以编程‘00’状态,或者在期望‘10’状态的地方,没有另外的编程需要发生(步骤S1030A)(线1100C)。通过编程MSB标识单元直到阈值电压被校验为大于VF3为止,可以在该点编程MSB标识(步骤S1030B)(线1110C)。可以同时或接近同时执行步骤S1030A和S1030B,这是因为它们都包括到VF3校验电压的编程。最后,通过编程“1”状态直到阈值电压被校验为大于VF1为止,可以在期望处编程“01”状态(步骤S1040)(线1100D)。
图12提供了根据本发明的一个或更多个实施例的、如何编程LSB页面的详细说明。首先,可以将LSB数据载入到页面缓冲器中(步骤S1210)。在执行该步骤时,根据LSB数据可以在页面缓冲器中设置闩锁,使得如果数据是‘0’则允许编程,而如果数据是‘1’则禁止编程。为了禁止单元,可以对正确的位线发送电压Vcc。然后可以将计数器“N”设置为“1”(步骤S1220)。通过施加编程电压Vpgm到正确的字线来编程单元(步骤S1230)。将在编程过的字线上的每个单元编程为‘0’状态,除非已经禁止了单元的位线。通过上述例如关于图6的ISPP步骤定义电压Vpgm,并且在第一次编程尝试(N=1)中,将电压设置为第一电平610(图6)。在编程步骤之后,通过在测试电压VF2*校验(步骤S1240)而执行编程。如果编程完成,例如,阈值电压被校验为处于期望电平(≥VF2*)(是,步骤S1250),则编程通过(步骤S1260)。然而,如果没有成功校验阈值电压(否,步骤S1250),则确定N是否处于与最高Vpgm电压(650,图6)对应的最大电平(步骤S1270)。如果N不是其最大值(否,步骤S1270),则将N增加1,并且将电压Vpgm增加ΔVpgm(630,图6),并且在下一个Vpgm编程单元。如果N处于其最大值(是,步骤S1270),指示在直到包括最大编程电压的所有编程电压下(650,图6)的编程都不成功,则该编程失败(步骤S1290)。
闪存装置可以包括发生编程失败的页面和/或块的表,并且可以将这些页面/块标记为坏的,并且文件系统可以避免使用这些页面/块。
图13提供了根据本发明的一个或更多个实施例的如何编程MSB页面的详细说明。首先,可以将MSB数据载入到页面缓冲器中(步骤S1310)。然后,通过编程该单元直到阈值电压被校验为大于VF2为止,可以提前(advance)编程过的LSB数据的‘0’状态(步骤S1311)。应当理解该步骤(步骤S1311)是根据本发明的一些实施例可以使用的可选步骤,诸如以上参考图10和11讨论的实施例。诸如以上参考图8和9讨论的实施例的其它实施例可以省略该步骤。
对“00”数据状态可以设置页面缓冲器(步骤S1312)。对‘0’数据状态可以载入标识单元页面缓冲器(步骤S1313)。然后可以将计数器“N”设置为“1”(步骤S1314)。通过施加编程电压Vpgm到正确的字线,可以编程包括存储单元和标识单元的单元(步骤S1315)。将每个单元编程为“00”状态,除非已经禁止了单元的位线。通过上述的ISPP步骤来定义电压Vpgm。在编程步骤之后,通过在校验电压VF3校验(步骤S1316)来执行编程。如果阈值电压被校验为处于所期望电平(≥VF3)(是,步骤S1317),则编程通过。然而,如果没有正确校验阈值电压(否,步骤S1317),则确定N是否处于上述最大值(步骤S1318)。如果N不处于其最大值(否,步骤S1318),则将N增加1,并且将电压Vpgm增加ΔVpgm,并且单元在下一个编程Vpgm(步骤S1315)。如果N处于其最大值(是,步骤S1318),指示在所有编程电压直到包括最大编程电压的编程都不成功,则该编程已经失败。
在编程已经完成(是,步骤S1317)之后,或者编程已经失败(是,步骤S1318)之后,设置页面缓冲器用来编程‘01’和‘10’状态(步骤S1320)。然后可以将N设置为1(步骤S1320b)。然后如上述编程单元(步骤S1321)。在VF1(对于‘01’状态)和在VF2(对于‘10’状态)发生校验(步骤S1322)。如果编程完成(是,步骤S1323),则编程通过(步骤S1324)。如果编程没有完成(否,步骤S1323),例如,如果没有校验正确的电压,则确定N是否处于其最大电平(步骤S1325)。如果N不处于其最大值(否,步骤S1325),则提前N,并且增加Vpgm(步骤S1326),并且编程再次进行(步骤S1321)。如果N处于最大值(是,步骤S1325),则编程失败(步骤S1327)。
虽然上述示例性实施例描述了2位多层非易失性存储装置,但是可以理解,可以将本发明的示例性实施例应用到任意位的多层非易失性存储装置。例如,可以使用3位多层非易失性存储装置。3位装置对每个单元具有8个可用的存储器状态。这些存储器状态可以分别被称为“111”、“011”、“101”、“001”、“110”、“010”、“100”和“000”。3位存储装置将不再具有LSB页面和MSB页面,而将具有第一逻辑页面、第二逻辑页面和第三逻辑页面。还可以存在指示第二页面何时已经被编程的第一标识单元,和指示第三页面何时已经被编程的第二标识单元。可替代地,可以使用具有多存储状态的单个标识单元来指示第二页面何时已经被编程和第三页面何时已经被编程。例如,可以将标识单元初始地设定为指示第二页面和第三页面都还没有被编程过的未编程的‘111’状态,可以将标识单元编程到‘010’状态以指示已经载入第二页面,并且可以将标识单元编程到‘000’状态以指示已经载入第三页面。对于使用两个标识单元的实施例,可以将第一标识单元编程到‘0’状态以指示已经编程第二数据页面,并且可以将第二标识单元编程到‘0’状态以指示已经编程第三数据页面。虽然本发明的实施例可以利用任一方式,但是为了简单本发明讨论的示例性实施例只涉及第一种方式。
对于超过3位的实施例,存在超过8个可用的存储状态和超过3个标识单元或在单个标识单元上超过3个状态。
图14A-14B示出了根据本发明的示例性实施例的3位存储装置。关于如何对不同的单元编程的许多细节可以理解为与上述的示例性实施例类似。应当理解,可以外推这些示例的特点以提供超过3位的多位存储装置。
关于图14A和14B,可以编程第一页面(线1400,步骤S1410)。标识单元可以在未写入的‘111’状态起始(线1401)。然后提前‘0’位(线1402,步骤S1411),以便在意外中断的情况下可以保护第一页面数据以免数据损坏。标识单元可以保持在‘111’状态(线1403)。然后,可以编程第二页面数据(线1404,步骤S1412),并且可以将标识单元编程到指示已经编程过第二数据页面的电平(线1405,步骤S1413)。例如,可以将标识单元编程到‘010’状态。两个步骤S1412和S1413可以同时或接近同时发生。然后提前第二页面数据状态‘01’、‘10’和‘00’(线1406,步骤S1414),以便在意外中断的情况下可以保护第二页面数据以免数据损坏。在该步骤不编程标识单元(线1407)。然后可以编程第三页面数据(线1408,步骤S1415),并且可以将标识单元编程到指示已经编程过第三数据页面的电平(线1409,步骤S1416)。例如,可以将标识单元编程到‘000’状态。两个步骤S1415和S1416可以同时或接近同时发生。
虽然多层非易失性存储装置可以使用任何可想到的、用于数据单元的编程的方案,但是图15是示出根据本发明的示例性实施例的、用于控制2位多层非易失性存储装置的偏置条件的表。该表示出了根据本发明的示例性实施例的、可以用来擦除、编程、禁止、读取和校验存储单元和标识单元的信号的示例。
图15中的表总结了根据本发明的示例性实施例的、可用于操作存储器单元阵列的电压。该表的顶行定义了一组可以执行的存储器功能。这些功能包括擦除存储器、编程存储器、禁止存储器的编程、以及读取LSB、MSB和标识单元数据。对于每个所期望的功能,第一列标注了在执行期望的功能时可以接收电压的每一条线。该表的其余行和列定义了一组将被施加到第一列中列出的每一条线以执行在顶行列出的期望的功能的电压。根据特定电压诸如0V或20V可以指定电压。根据上面详细描述的信号(如Vcc或Vpgm)可以可替代地指定电压。术语“浮动”指示该线没有设置到特定的电压。“H或L”指示向该线发送高信号或低信号。当读取数据时将Vread施加到未选择的WL,而当编程时将Vpass施加到未选择的WL。
图16示出了根据本发明的一个示例性实施例的包括闪存的存储器系统。存储系统可以包括闪存1600和存储控制器1610。存储控制器1610可以控制闪存1600的操作。
可以理解虽然许多图形示出了具有多个阈值电压曲线的单元,但是为了示例所有可能的状态的目的,示出这些多个阈值电压曲线,并且可以理解任何一个给定的单元在给定时间将仅具有一个阈值电压范围。此外,当本公开讨论编程一个状态时,可以理解仅将编程执行到期望的程度。因此,当处理步骤描述将单元编程到例如‘00’状态时,仅在期望这个状态时执行该编程步骤。可以理解一旦已经达到期望的状态,则不再将该单元编程到另一个状态。
上述特定的实施例是说明性的,并且在不背离本公开的精神或所附权利要求的范围的情况下,可以在这些实施例中引入许多变更。例如在本公开和所附权利要求的范围内,不同的说明性实施例的元件和/或特征可以彼此结合和/或彼此替换。
Claims (28)
1.一种用于编程包括标识单元和多个多位存储单元的多层非易失性存储器的方法,该多个多位存储单元的每一个用于存储由最低有效位(LSB)和最高有效位(MSB)代表的数据,所述方法包括:
使用LSB数据编程该存储单元,使得编程过的存储单元具有大于VR1的阈值电压;
修改该编程过的存储单元的该阈值电压,使得当期望该存储单元存储第三或第四值时,每一个该编程过的存储单元都具有大于VR2的阈值电压;
使用MSB数据编程存储单元,使得每一个存储单元:
当期望该存储单元存储第一值时,具有小于电压VR1的阈值电压;
当期望该存储单元存储第二值时,具有大于电压VR1且小于电压VR2的阈值电压;
当期望该存储单元存储第三值时,具有大于电压VR2且小于电压VR3的阈值电压;和
当期望该存储单元存储第四值时,具有大于电压VR3的阈值电压,其中VR1<VR2<VR3,其中标识单元被编程以显示MSB数据是否已经被编程。
2.如权利要求1所述的方法,还包括编程该标识单元使其具有大于VR3的阈值电压,以指示已经编程过该存储单元的MSB数据。
3.如权利要求1所述的方法,其中编程该标识单元的步骤发生在修改该编程过的存储单元的阈值电压的步骤之后。
4.如权利要求3所述的方法,其中使用MSB数据编程该存储单元与该标识单元的编程同时开始。
5.如权利要求1所述的方法,其中该标识单元的编程发生在该修改步骤之后,并且该MSB数据的编程发生在该标识单元的编程之后。
6.如权利要求1所述的方法,其中该多层非易失性存储器是闪存。
7.如权利要求6所述的方法,其中该多层非易失性存储器是NAND闪存。
8.如权利要求1所述的方法,其中该LSB数据的编程和该MSB数据的编程均包括实现增量步进脉冲编程。
9.如权利要求1所述的方法,其中修改该编程过的存储单元的阈值电压包括实现增量步进脉冲编程。
10.如权利要求1所述的方法,还包括当该标识单元显示存在编程过的MSB数据时,先在VR1、然后在VR2、然后在VR3读取MSB数据。
11.如权利要求10所述的方法,其中在VR1读取该标识单元。
12.如权利要求10所述的方法,其中在VR2读取该标识单元。
13.如权利要求1所述的方法,其中:
VR1大约等于0伏特;
VR2在大约1到2伏特的范围内;并且
VR3在大约2.5到3.5伏特的范围内。
14.一种用于根据用于编程包括至少一个标识单元和多个多位存储单元的多层非易失性存储器的方法来控制存储器的控制器,该多个多位存储单元的每一个用于存储由最低有效位(LSB)和最高有效位(MSB)代表的数据,所述方法包括:
使用LSB数据编程该存储单元,使得该编程过的存储单元具有大于VR1的阈值电压;
修改该编程过的存储单元的该阈值电压,使得当期望该存储单元存储第三或第四值时,每一个该编程过的存储单元具有大于VR2的阈值电压;
使用MSB数据编程该存储单元,使得每一个存储单元:
当期望该存储单元存储第一值时,具有小于电压VR1的阈值电压;
当期望该存储单元存储第二值时,具有大于电压VR1且小于电压VR2的阈值电压;
当期望该存储单元存储第三值时,具有大于电压VR2且小于电压VR3的阈值电压;
当期望该存储单元存储第四值时,具有大于电压VR3的阈值电压,其中VR1<VR2<VR3,其中标识单元被编程以显示MSB数据是否已经被编程。
15.如权利要求14所述的控制器,其中所述方法还包括编程该标识单元以指示已经编程过该存储单元的MSB数据。
16.如权利要求15所述的控制器,其中该标识单元的编程步骤发生在修改该编程过的存储单元的阈值电压的步骤之后。
17.如权利要求16所述的控制器,其中使用MSB数据编程该存储单元与该标识单元的编程同时开始。
18.如权利要求15所述的控制器,其中该标识单元的编程发生在该修改步骤之后,并且MSB数据的编程发生在该标识单元的编程之后。
19.如权利要求14所述的控制器,其中该多层非易失性存储器是闪存。
20.如权利要求19所述的方法,其中该多层非易失性存储器是NAND闪存。
21.一种用于编程包括至少一个标识单元和多个多位存储单元的多层非易失性存储器编程的方法,该多个多位存储单元的每一个能够存储用于代表数据的不同层的电荷,该数据由多个数据页面表示,所述方法包括:
顺序地编程该多个数据页面的一个或更多个,使得每一个该编程过的存储单元具有在包括第一范围和多个后续范围的多个阈值电压范围之一内的阈值电压,其中将该多个后续范围的每一个定义为等于或大于相应的校验电压,其中在相应的读取电压读取该多个后续范围的每一个,并且其中对于每一个给定的后续范围,该相应的读取电压比该相应的校验电压小余量M;
在该多个数据页面的每一个的编程之间将编程过的存储单元的阈值电压提升,使得将该提升的存储单元的阈值电压编程为等于或大于下一个校验电压,该下一个校验电压大于之前已经将该单元编程至其的校验电压;并且
将至少一个标识单元编程到指示已经编程过的页面信息的阈值电压范围内的一个阈值电压,其中将该标识单元阈值电压范围定义为等于或大于标识单元校验电压,其中在标识单元读取电压读取该标识单元,并且该标识单元读取电压比该标识单元校验电压小增强余量MEnhanced,该增强余量MEnhanced大于该余量M。
22.如权利要求21所述的方法,其中在提升该存储单元的阈值电压之后编程该至少一个标识单元。
23.如权利要求21所述的方法,其中该数据页面的编程与该至少一个标识单元的编程同时发生。
24.如权利要求21所述的方法,其中在该提升步骤之后发生该至少一个标识单元的编程。
25.一种用于根据对包括至少一个标识单元和多个多位存储单元的多层非易失性存储器编程的方法来控制存储器的控制器,该多个多位存储单元的每一个能够存储用于代表数据的不同层的电荷,该数据由多个数据页面表示,所述方法包括:
顺序地编程该多个数据页面的一个或更多个,使得每一个该编程过的存储单元具有在包括第一范围和多个后续范围的多个阈值电压范围之一内的阈值电压,其中将该多个后续范围的每一个定义为等于或大于相应的校验电压,其中在相应的读取电压读取该多个后续范围的每一个,并且其中对于每一个给定的后续范围,该相应的读取电压比该相应的校验电压小余量M;
在该多个数据页面的每一个的编程之间提升该编程过的存储单元的阈值电压,使得将该提升的存储单元的阈值电压编程为等于或大于下一个校验电压,该下一个校验电压大于之前已经将该单元编程至其的校验电压;并且
将该至少一个标识单元编程到指示已经编程过的页面信息的阈值电压范围内的一个阈值电压,其中将该标识单元阈值电压范围定义为等于或大于标识单元校验电压,其中在标识单元读取电压读取该标识单元,并且该标识单元读取电压比该标识单元校验电压小增强余量MEnhanced,该增强余量MEnhanced大于该余量M。
26.如权利要求25所述的控制器,其中在提升该存储单元的阈值电压之后编程该至少一个标识单元。
27.如权利要求25所述的控制器,其中该数据页面的编程与该至少一个标识单元的编程同时发生。
28.如权利要求25所述的控制器,其中在该提升步骤之后发生该至少一个标识单元的编程。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060085879A KR100771882B1 (ko) | 2006-09-06 | 2006-09-06 | 멀티-레벨 불휘발성 메모리 장치의 프로그램 방법 |
KR85879/06 | 2006-09-06 | ||
US11/847,980 | 2007-08-30 | ||
US11/847,980 US7508705B2 (en) | 2006-09-06 | 2007-08-30 | Method for programming a multi-level non-volatile memory device |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101174462A true CN101174462A (zh) | 2008-05-07 |
CN101174462B CN101174462B (zh) | 2012-05-16 |
Family
ID=39060397
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007101596356A Active CN101174462B (zh) | 2006-09-06 | 2007-09-06 | 用于编程多层非易失性存储装置的方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US7508705B2 (zh) |
KR (1) | KR100771882B1 (zh) |
CN (1) | CN101174462B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101727983A (zh) * | 2008-10-28 | 2010-06-09 | 三星电子株式会社 | 存储设备及其编程方法 |
CN102436849A (zh) * | 2011-12-02 | 2012-05-02 | 南京大学 | 一种局部俘获型快闪存储器实现多值/多位存储的操作方法 |
CN106205712A (zh) * | 2015-01-20 | 2016-12-07 | 爱思开海力士有限公司 | 半导体存储器件及其操作方法 |
CN107564566A (zh) * | 2016-06-30 | 2018-01-09 | 东芝存储器株式会社 | 存储系统及写入方法 |
Families Citing this family (37)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100771883B1 (ko) * | 2006-09-06 | 2007-11-01 | 삼성전자주식회사 | 멀티-레벨 불휘발성 메모리 장치 및 프로그램 방법 |
US7609548B2 (en) * | 2006-09-29 | 2009-10-27 | Hynix Semiconductor Inc. | Method of programming a multi level cell |
KR100784867B1 (ko) * | 2006-12-13 | 2007-12-14 | 삼성전자주식회사 | 엠에스비 프로그램 상태를 저장하는 플래그 셀들을구비하는 비휘발성 메모리 장치 |
KR101411976B1 (ko) * | 2007-07-09 | 2014-06-27 | 삼성전자주식회사 | 플래시 메모리 시스템 및 그것의 에러 정정 방법 |
KR100948468B1 (ko) * | 2007-12-24 | 2010-03-17 | 주식회사 하이닉스반도체 | 불휘발성 메모리 장치의 플래그 상태 결정 방법. |
KR100933852B1 (ko) * | 2007-12-28 | 2009-12-24 | 주식회사 하이닉스반도체 | 불휘발성 메모리 소자 및 그 동작 방법 |
KR101432108B1 (ko) | 2008-06-03 | 2014-08-21 | 삼성전자주식회사 | 비휘발성 메모리 장치 및 그것의 구동 방법 |
KR101541736B1 (ko) | 2008-09-22 | 2015-08-04 | 삼성전자주식회사 | 멀티-레벨 셀 플래시 메모리 장치에서의 lsb 페이지 복구 방법 |
KR101010468B1 (ko) * | 2009-06-29 | 2011-01-21 | 주식회사 하이닉스반도체 | 불휘발성 메모리 소자의 프로그램 방법 |
KR101512199B1 (ko) | 2009-06-29 | 2015-04-14 | 에스케이하이닉스 주식회사 | 불휘발성 메모리 소자의 동작 방법 |
TWI436363B (zh) | 2010-05-11 | 2014-05-01 | Silicon Motion Inc | 資料儲存裝置以及快閃記憶體之資料寫入方法 |
KR20120066347A (ko) * | 2010-12-14 | 2012-06-22 | 삼성전자주식회사 | 비휘발성 메모리 장치 및 그 구동 방법 |
US8451662B2 (en) | 2011-03-03 | 2013-05-28 | Micron Technology, Inc. | Reading memory cell history during program operation for adaptive programming |
US8537613B2 (en) | 2011-03-31 | 2013-09-17 | Sandisk Technologies Inc. | Multi-layer memory system |
US9424938B2 (en) | 2011-06-09 | 2016-08-23 | Micron Technology, Inc. | Reduced voltage nonvolatile flash memory |
US8619475B2 (en) | 2011-08-05 | 2013-12-31 | Micron Technology, Inc. | Methods to operate a memory cell |
KR101915719B1 (ko) | 2012-04-26 | 2019-01-08 | 삼성전자주식회사 | 불휘발성 메모리 장치 및 그것의 프로그램 동작 방법 |
US9348746B2 (en) | 2012-12-31 | 2016-05-24 | Sandisk Technologies | Method and system for managing block reclaim operations in a multi-layer memory |
US9336133B2 (en) | 2012-12-31 | 2016-05-10 | Sandisk Technologies Inc. | Method and system for managing program cycles including maintenance programming operations in a multi-layer memory |
US9734050B2 (en) | 2012-12-31 | 2017-08-15 | Sandisk Technologies Llc | Method and system for managing background operations in a multi-layer memory |
US8873284B2 (en) | 2012-12-31 | 2014-10-28 | Sandisk Technologies Inc. | Method and system for program scheduling in a multi-layer memory |
US9465731B2 (en) | 2012-12-31 | 2016-10-11 | Sandisk Technologies Llc | Multi-layer non-volatile memory system having multiple partitions in a layer |
US9734911B2 (en) | 2012-12-31 | 2017-08-15 | Sandisk Technologies Llc | Method and system for asynchronous die operations in a non-volatile memory |
US9223693B2 (en) | 2012-12-31 | 2015-12-29 | Sandisk Technologies Inc. | Memory system having an unequal number of memory die on different control channels |
US9672919B2 (en) * | 2013-04-22 | 2017-06-06 | Apple Inc. | Techniques for reducing power-down time in non-volatile memory devices |
JP2015069688A (ja) * | 2013-09-30 | 2015-04-13 | 株式会社東芝 | 半導体記憶装置 |
US9696918B2 (en) | 2014-07-13 | 2017-07-04 | Apple Inc. | Protection and recovery from sudden power failure in non-volatile memory devices |
US10120613B2 (en) | 2015-10-30 | 2018-11-06 | Sandisk Technologies Llc | System and method for rescheduling host and maintenance operations in a non-volatile memory |
US10042553B2 (en) | 2015-10-30 | 2018-08-07 | Sandisk Technologies Llc | Method and system for programming a multi-layer non-volatile memory having a single fold data path |
US10133490B2 (en) | 2015-10-30 | 2018-11-20 | Sandisk Technologies Llc | System and method for managing extended maintenance scheduling in a non-volatile memory |
US9778855B2 (en) | 2015-10-30 | 2017-10-03 | Sandisk Technologies Llc | System and method for precision interleaving of data writes in a non-volatile memory |
US10043573B2 (en) * | 2016-08-04 | 2018-08-07 | Intel Corporation | Apparatus and method for endurance friendly programming using lower voltage thresholds |
KR102362858B1 (ko) * | 2017-09-11 | 2022-02-15 | 에스케이하이닉스 주식회사 | 반도체 메모리 장치 및 그 동작 방법 |
US10839925B2 (en) * | 2017-09-11 | 2020-11-17 | SK Hynix Inc. | Semiconductor memory device and method of operating the same |
KR20200091712A (ko) * | 2019-01-23 | 2020-07-31 | 에스케이하이닉스 주식회사 | 반도체 메모리 장치, 컨트롤러 및 이들의 동작 방법 |
WO2021031205A1 (en) * | 2019-08-22 | 2021-02-25 | Micron Technology, Inc. | Granular error reporting on multi-pass programming of non-volatile memory |
US11462279B1 (en) * | 2021-05-13 | 2022-10-04 | Western Digital Technologies, Inc. | Modified distribution of memory device states |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR950000273B1 (ko) * | 1992-02-21 | 1995-01-12 | 삼성전자 주식회사 | 불휘발성 반도체 메모리장치 및 그 최적화 기입방법 |
TW389909B (en) * | 1995-09-13 | 2000-05-11 | Toshiba Corp | Nonvolatile semiconductor memory device and its usage |
JP3392604B2 (ja) * | 1995-11-14 | 2003-03-31 | 株式会社東芝 | 不揮発性半導体記憶装置 |
JP3114630B2 (ja) * | 1996-10-03 | 2000-12-04 | 日本電気株式会社 | 不揮発性半導体メモリおよび書込み読出し方法 |
TW559814B (en) * | 2001-05-31 | 2003-11-01 | Semiconductor Energy Lab | Nonvolatile memory and method of driving the same |
KR100390959B1 (ko) * | 2001-06-29 | 2003-07-12 | 주식회사 하이닉스반도체 | 센싱회로를 이용한 멀티레벨 플래시 메모리 프로그램/리드방법 |
US6456528B1 (en) * | 2001-09-17 | 2002-09-24 | Sandisk Corporation | Selective operation of a multi-state non-volatile memory system in a binary mode |
US6897522B2 (en) * | 2001-10-31 | 2005-05-24 | Sandisk Corporation | Multi-state non-volatile integrated circuit memory systems that employ dielectric storage elements |
TWI292914B (zh) * | 2002-01-17 | 2008-01-21 | Macronix Int Co Ltd | |
JP3935139B2 (ja) * | 2002-11-29 | 2007-06-20 | 株式会社東芝 | 半導体記憶装置 |
US6859397B2 (en) * | 2003-03-05 | 2005-02-22 | Sandisk Corporation | Source side self boosting technique for non-volatile memory |
US8019928B2 (en) | 2004-02-15 | 2011-09-13 | Sandisk Il Ltd. | Method of managing a multi-bit-cell flash memory |
KR100525004B1 (ko) * | 2004-02-26 | 2005-10-31 | 삼성전자주식회사 | 멀티레벨 셀(Multi-level cell)플래쉬메모리장치 및 이의 프로그램 방법 |
US7092290B2 (en) * | 2004-11-16 | 2006-08-15 | Sandisk Corporation | High speed programming system with reduced over programming |
KR100680479B1 (ko) * | 2005-04-11 | 2007-02-08 | 주식회사 하이닉스반도체 | 비휘발성 메모리 장치의 프로그램 검증 방법 |
KR100771883B1 (ko) * | 2006-09-06 | 2007-11-01 | 삼성전자주식회사 | 멀티-레벨 불휘발성 메모리 장치 및 프로그램 방법 |
KR100784867B1 (ko) * | 2006-12-13 | 2007-12-14 | 삼성전자주식회사 | 엠에스비 프로그램 상태를 저장하는 플래그 셀들을구비하는 비휘발성 메모리 장치 |
US20080189473A1 (en) * | 2007-02-07 | 2008-08-07 | Micron Technology, Inc | Mlc selected multi-program for system management |
-
2006
- 2006-09-06 KR KR1020060085879A patent/KR100771882B1/ko active IP Right Grant
-
2007
- 2007-08-30 US US11/847,980 patent/US7508705B2/en active Active
- 2007-09-06 CN CN2007101596356A patent/CN101174462B/zh active Active
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101727983A (zh) * | 2008-10-28 | 2010-06-09 | 三星电子株式会社 | 存储设备及其编程方法 |
CN101727983B (zh) * | 2008-10-28 | 2016-06-01 | 三星电子株式会社 | 存储设备及其编程方法 |
CN102436849A (zh) * | 2011-12-02 | 2012-05-02 | 南京大学 | 一种局部俘获型快闪存储器实现多值/多位存储的操作方法 |
CN102436849B (zh) * | 2011-12-02 | 2015-03-11 | 南京大学 | 一种局部俘获型快闪存储器实现多值/多位存储的操作方法 |
CN106205712A (zh) * | 2015-01-20 | 2016-12-07 | 爱思开海力士有限公司 | 半导体存储器件及其操作方法 |
CN106205712B (zh) * | 2015-01-20 | 2020-06-26 | 爱思开海力士有限公司 | 半导体存储器件及其操作方法 |
CN107564566A (zh) * | 2016-06-30 | 2018-01-09 | 东芝存储器株式会社 | 存储系统及写入方法 |
CN107564566B (zh) * | 2016-06-30 | 2021-02-26 | 东芝存储器株式会社 | 存储系统及写入方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101174462B (zh) | 2012-05-16 |
US20080084739A1 (en) | 2008-04-10 |
US7508705B2 (en) | 2009-03-24 |
KR100771882B1 (ko) | 2007-11-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101174462B (zh) | 用于编程多层非易失性存储装置的方法 | |
CN101197190B (zh) | 一种对多层非易失性存储器设备编程的方法 | |
CN102150216B (zh) | 具有降低的数据存储要求的存储器的多遍编程 | |
CN1926635B (zh) | 读取nand存储器以补偿存储元件之间的耦合效应的方法 | |
CN102576568B (zh) | 通过检测自然阈值电压分布预告存储器中的编程干扰 | |
CN102270501B (zh) | 利用编程定序器的闪存器件和系统,以及编程方法 | |
CN113168881B (zh) | 检测存储器设备中字线与源极线之间的短路及恢复方法 | |
KR101854927B1 (ko) | 다수의 데이터 상태-실패들을 허용하는 비휘발성 메모리에서 다중 비트 프로그래밍 방법 및 프로그래밍 실패의 경우 데이터 복구 방법 | |
CN1930633B (zh) | 用于编程非易失性存储器的设备和方法 | |
CN1855304B (zh) | 集成电路器件、闪存阵列和操作闪存器件的方法 | |
CN1930631B (zh) | 用于非易失性存储器的粗略/精细编程的可变电流吸收 | |
US7272050B2 (en) | Non-volatile memory device and erase method of the same | |
CN102306501B (zh) | 编程不同大小的容限及在选择状态下使用补偿进行感测以改进非易失性存储器中的读取操作 | |
CN104160449B (zh) | 在nand快闪存储器的写入操作期间通过均衡和调整源极、阱和位线的电荷循环 | |
US7668019B2 (en) | Non-volatile memory device and erasing method thereof | |
CN109102829B (zh) | 用于储存装置的状态相关的感测电路和感测操作 | |
CN101789264B (zh) | 操作非易失性存储器的方法 | |
CN106024061A (zh) | 半导体器件及其操作方法 | |
JP7186892B2 (ja) | マルチプレーンメモリデバイスをプログラミングする方法 | |
CN103814408A (zh) | 用于非易失性存储器的部分编程块的读取补偿 | |
CN101405812A (zh) | 编程不同大小的容限及在选择状态下使用补偿进行感测以改进非易失性存储器中的读取操作 | |
CN102549673A (zh) | 用较小通道电压干扰和浮栅极到控制栅极泄漏对存储器编程 | |
US7522452B2 (en) | Non-volatile semiconductor storage device | |
US20080316818A1 (en) | Non-volatile memory device and method of operating | |
CN102411988A (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 |