CN1114214C - 对非易失存储器的每单次擦除的多重写入 - Google Patents

对非易失存储器的每单次擦除的多重写入 Download PDF

Info

Publication number
CN1114214C
CN1114214C CN96198382.5A CN96198382A CN1114214C CN 1114214 C CN1114214 C CN 1114214C CN 96198382 A CN96198382 A CN 96198382A CN 1114214 C CN1114214 C CN 1114214C
Authority
CN
China
Prior art keywords
group
level
memory cell
storage unit
unit
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.)
Expired - Fee Related
Application number
CN96198382.5A
Other languages
English (en)
Other versions
CN1202262A (zh
Inventor
R·N·哈斯布恩
F·P·雅内克
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.)
Intel Corp
Original Assignee
Intel 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 US08/537,132 external-priority patent/US5815434A/en
Application filed by Intel Corp filed Critical Intel Corp
Publication of CN1202262A publication Critical patent/CN1202262A/zh
Application granted granted Critical
Publication of CN1114214C publication Critical patent/CN1114214C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or 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
    • 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/5628Programming or writing circuits; Data input circuits
    • G11C11/5635Erasing circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5642Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/14Circuits for erasing electrically, e.g. erase voltage switching circuits
    • G11C16/16Circuits for erasing electrically, e.g. erase voltage switching circuits for erasing blocks, e.g. arrays, words, groups
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/56Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
    • G11C2211/564Miscellaneous aspects
    • G11C2211/5641Multilevel memory having cells with different number of storage levels

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Read Only Memory (AREA)

Abstract

描述在擦除存储单元(500)之前完成多重写入的方法。在存储单元的第一组电平中存入M位。不用擦除存储单元在存储单元(500)的第二组电平中存入M相继的更迭的位。写入存储单元的另一种方法包括在存储单元的第一组电平中存入M位。调整组指示符以指示存储单元的下一组电平。随后,m更迭的相继的位被存入下一组电平,而没有擦除存储单元。重复调整组指示符和存储更迭的相继位的步骤。还描述推迟存储单元擦除的方法。调整组指示符以指示适合于存储m位值的存储单元的一组2m个相邻电平。读存储单元的方法包括设置组指示符。组指示符指示存储单元的一组2m个相邻电平。然后通过读出由组指示符所指示的2m个相邻电平组来读出m位的值。

Description

对非易失存储器的每单次 擦除的多重写入
参考有关的申请
本申请是Hasbun等人的编号为08/537,132的于1995年9月29日提出的申请的延续。
发明领域
本发明属于存储电路领域,具体讲,本发明适合完成在电可编程的非易失存储器中的无擦除操作的多重写操作。
发明背景
半导体存储器件一般由大量单个的用于存储数据的单元组成。在传统的二进制存储器件中,每单元能够存代表数据位的二态中的一态。另外,每个存储单元可以存多于一位的数据。此种存储器件称为多级或多位存储器件。多级存储器件较之传统二进制器件增大了存储容量和密度。例如一个每单元能存二位数据的存储器件具有两倍于相同数量传统二进制存储器件所能存储的数据的能力。
传统二进制存储器件的编程包括存储或编程一个存储单元中的两个电平或两个态中的一个以表示一位数据的所有可能的值。例如,传统的存储单元,当其在写操作中被存取时,存储第一电压或阈值电平以表示第一态,或者存储第二电压或阈值电平以表示第二态。然而,在多级存储器件中,典型地,n个态中的一个被存储以表示多于单个位的数据,虽然存储单一位的能力需要存储至少两个电平的能力这就像在现有技术的二进制存储单元中那样,这里所用的“多级”意指一个单元能够存储多于两个电平或态的能力(也即存储比一个二进制数字多)。并且“二进制”指的是一个单元能够存储只有两个电平中的一个(即一个二进制数)。例如,为了在每个多级存储单元中存储两个位,每个单元必须能存储至少四个电平的一个,一个能存储n位的多级单元必须能保证2n阈值电平,因为每位能有两个电平中的一个。
快速多级存储单元就是一种多级存储单元。一般讲,快速存储单元包括一个浮栅场效应晶体管,每个浮栅晶体管有一个选择门、一个浮栅、一个源极和一个漏极。通过变化存储在浮栅上的电荷量,将信息存储进快速单元中。这反过来引起浮栅场效应晶体管的阈电压。Vt被改变,典型的现有技术的二进制快速存储单元在或者被“编程”或者被“擦除”时,能处于两个可能态的一个中。理论上讲,快速单元对于每个被加到浮栅上的电子具有一个特殊的态,然而实际上现有技术的快速单元具有有限数目的态,这起因于若干限制因素包括在快速单元结构上的不一致性,随时间的包荷损失,以及在检测存储在浮栅上的电荷时的缺陷。
存储在编程单元上的实际电荷可能从一个编程单元变到另一编程平元或者从一个擦除单元变到另一个擦除单元。为了适应这个因素,二进制快速单元被解释为如果Vt位于第一值域内存储“1”而如果Vt在第二值域内则存储“0”。第一和第二值域是截然不同的且可由一个“隔离值域”分开,换言之,如果阈电压,Vt,被编程到一组值内的一个值,单元态是“1”。如果阈电压,Vt,被编程到另一组值内的一个值,单元态是“0”。这两组值之间的设置差称为隔离域的值。
当快速单元被读时,由快速单元传导的电流与由一个参考被擦写单元传导的电流相比较,参考快速单元具有预置于位于隔离值域内的预定电压上的阈值电压Vt。当快速单元被选择为读出时,偏置电压被加到场效应晶体管的选择门上。同样,相同的偏置电压被加到参考单元的选择门上。如果快速单元被编程,过量的电压在浮栅上被捕获,快速单元的阈值电压Vt增大以致于所选择的快速单元传导的漏极电流比参考快速单元小。现有技术的二进制快速单元的编程态典型地是与逻辑0相联系的。如果现有技术的快速单元被“擦除”,浮栅有较小的电子并且快速单元传导的漏极至源极的电流比参考单元大。现有技术的二进制快速单元的擦除态通常是与逻辑1相联系的。
多级快速单元能够存储两个以上电平的一个。例如,能存储2位的多级快速单元能被置于四态中的一态中。这意味着一个态被唯一地指定于二位的四种可能组合即“00”,“01”,“10”和“11”中的一种。在2n种态之间进行区分需要2n-1种参考。因此,对于4个态,必须有3个参考电压和3个隔离值域,比较而言,现有技术的二进制快速单元典型地用一个参考电压来区分二种态。
这些多级快速单元是通过将2n-1个参考电压中的每一个与由存储单元的漏极至源极的电流所决定的电压相比较来读出的。于是译码逻辑被用来将2n-1比较器的输出转换成n位。
快速存储器件典型地由快速存储单元的阵列组成。这种阵列一般被分组或者进一步细分成字块。现有技术的快速存储器能够被逐单元地编程,但是,快速存储器只能够以单元字块的方式被擦除。
现有技术的写入方法的一个缺点是一旦字块已经数据写入,在此字块中的数据在不首先做字块擦除时不能被修改。换句话说,现有技术的写入方法对每个擦除周期只允许一个写入周期。
快速存储器的一个应用是在固态“磁盘”领域。固态磁盘使用非易失性存储器,比如快速存储器,来仿真传统的计算机磁盘存储器件。一般讲,磁盘的扇区或者被物理地或者被逻辑地映像至快速存储单元的字块上。因为在现有技术的存储***中对每个擦除周期只可能有一个写入周期,为使这些单元再次适合于数据存储需要有“清除”早先所写单元的措施。一般地,字块中的有效数据连同最新数据一起被复制到另一个字块单元。然后先前的字块单元被标记为清除。清除过程擦除整个字块单元使这个字块适合于再次存储。
关于在单元上每次擦除写一次的现有技术的方法的一个缺点是需要消耗大量能源。因此,在必须频繁地修改存储数据的应用场合,相当多的能源被消耗在将有效数据搬至新的单元和擦除那些先前将信息存储其中的字块。
为重新编程而完成一步擦除的另一种缺点是擦除过程一般要花费比循环过程要长得多的执行时间。
对每个编程周期作擦除的另一个缺点是周期的引入可靠性误差。快速存储单元随每个程序/擦除周期而降低品质。
发明概要
鉴于已知***和方法的局限性,本发明的期望之一是提供一种完成多重更迭的m位的写至非易失存储单元且无需执行擦除的方法,该方法包括的步骤是将m位存入存储单元的第一组的电平中以及存储m更迭位在存储单元的第二组电平中而不用擦除存储单元。
另一个写方法包括将m位存入存储单元的第一组电平中,组指示符被调整以识别存储单元相继电平组。
不用擦除存储单元,m个更迭的相继位被存储进相继组的电平中,调整组指示符和存储相继的m个更迭相继位的步骤被重复。
另一个希望是提供读出能够存储直到K次更迭m个位值的存储单元的方法。此方法包括的步骤有提供组指示符以识别2m个存储单元的相邻电平的组以及检测所识别的电平组以读出m位的值。
此外,提供一个在非未易失存储单元上推迟擦除操作的方法,通过调整一组指示符推迟擦除操作,其中该组指示符识别该存储单元的2m个相邻存储器电平,以便储存m位值。
回填技术被采用作为对给定的存储单元的电平组确保一致的编程次数的方法。
其余的希望、特点和优点将从下面的附图及详细说明中明显地看出来。
附图的简要说明
本发明用举例的方法来图示说明但不局限于附图的图象,在附图中相同的标记表示同样的元素并且其中
图1是一个多级存储单元的字块的擦除态的实施例的图示说明。
图2是多级存储单元的字块内一个电平的编程图例。
图3是图解说明多级存储单元的块内的另一个电平的编程。
图4是利用“回填”技术对多级存储单元的一个电平进行编程的图示说明。
图5举例说明多级存储单元的四个电平。
图6是一个具有n电平的多级存储单元的实施例的图解说明,n个电平分为k组,每组j个电平。
详细说明
通过将多级单元用作单一位存储器件,在擦除发生前单一位能被写多次。考虑一个n级的多级快速存储单元。快速存储单元能够有多达n个专门的电平。一个电平将被留作擦除态用。其余的n-1个电平可用于编程。
在擦除操作过程中电荷被从快速存储单元的浮栅上移走。在编程操作期间电荷能被置到快速存储单元的浮栅上。编程态和擦除态应与编程操作和擦除操作相对照。在现有技术的二进制快速单元的编程态(即放置电荷到浮栅上)一般与逻辑0相关联,而擦除态(即从浮栅移走电荷)通常与逻辑1相关联。擦除操作是从浮栅上放空电荷的过程。在擦除操作过程中,在浮栅上超过给定阈值的电荷被排走以确保在浮栅上的电荷电平低于擦除操作后的阈电平。然而编程操作则可能放置或可能不放置电荷到浮栅门上,这取决于所要存储的值。传统的二进制快速单元能够总是被编程为0(即为电荷放置到浮栅上)。但是,在被编程为0后,传统的二进制单元在其能再次存储1之前必须完成擦除操作。
在多级单元中不是通过选择电荷电平来存储单一的多位值,而是单一位能被存储在给定的电平上。换言之,对多级存储单元的多重更迭的写入是通过完成以下步骤完成的:在n电平多级存储单元的第一电平上存储(或写入)第一位,然后在多级存储单元的第二电平上存储第二位。存储第二位在第二电平上第一值已被重写。本质上,这允许在需要擦除操作之前时多级单元进行多重写入。
为了决定在给定单元中所存储的值,必须知道最后所写的电平是什么。这意味着需要有跟踪机制以保持跟踪当前电平(或者用适当的参考电压),此机制可能包括状态机,存储器,或计数器。跟踪被完成的程度(也即逐单元、字块、字块组、或器件电平)被称为跟踪分辨率。在一个实施例中,跟踪机制是以逐单元为基础完成的。但是以逐单元为基础的跟踪可能由于在完成跟踪机制时的实际考虑而是无效的。进一步讲,因为为了擦除字块中的一个快速单元,无论如何字块中的所有快速单元都必须被擦除,在字块或者在器件电平上跟踪可能证明是最有效的。因此,另一个实施例采用字块,多单元、或器件电平跟踪分辨率。多单元跟踪可能是有用的,例如,在固态磁盘应用中其磁盘扇区被逻辑映射于物理地排列为单元字块中的单元子集的单元数目上。
图1-3用来图示说明对四个4电平单元完成多重写的结果。图1表示擦除的多级单元110,120,130和140。图2表示将数列“0101”写到诸单元。图3表示相继地写“0110”(图中填线表示置放到浮栅上的电荷并且在浮栅上置放电荷与逻辑0相联系),但是,这些图中没有画出隔离值域,返回参见图1,上面所讨论的参考电压对应于分隔线160,162和164被用来决定存储在单元110,120,130和140中的值。第一电平(150)代表擦除态。空的园(例如170)表示浮栅未包含足够的电荷以致于阈分界电平1和2被超过。当单元140被检测并将结果与对应于分界线160的参考电压比较时,因为已有的电荷不足以超过由分界线160所设置的阈值,单元140将被决定要被擦除(即在电平1上存储“1”)。实际上,电荷可能在电平1上存在(即图中填线或图中部分地填线可能出现)以及电荷电平不超过分界线160的阈值。
图2表示存储“0101”(当由单元210开始从左向右观察时)到预先擦除的单元,在给定电平上的“填园”或圆点是指定表征此单元的浮栅已经被充电到该电平。例如,在电平2上的圆点270意味着单元210的浮栅已经有足够的电荷置于其上,因此当对应于260的参考电平被使用时,与被擦除或在电平2上存储“1”相反该单元将被认为要在电平2上存储“0”。换言之,圆点270意思是从单元210测得任何电压将高于与分界线260相对应的参考电压。
为了完成由圆点270所代表的在电平2上存储0,在浮栅上的电荷量将超过为电平1设置的阈值。因此圆点280(对应于图1中的空心园180)将变成在圆中填线,如果它早先是空心园就像在图1中所示那样。
图3表示存储“0110”至一组单元,这组单元先前存储的是“0101”。注意单元310的浮栅不断地有电荷放置其上而单元320的浮栅迄今无任何电荷放置其上。在此实施例中,单元330不需要有任何附加的电荷放置其上。但是单元340的浮栅必须有充足的电荷放置其上以携其向上通过电平1(350)和电平2(352)。因此单元340先前没有任何实质数量的电荷在浮栅上。为在这点上加上适当数量的电荷将需要较多的时间和能量。现在电平3(354)要被利用,电平指示符必须被设置成使得现在使用适当的分界线(即参考电压)。
所有的参考电压被用来决定存储在以上面所指出的传统方式使用的多级单元中的多位值。然而,在这种情况下,由电平指示符所指示的当前电平决定了应该用那一个参考电压。
电平3不曾被使用因而适合于写。所以,对于n电平的多级单元多达n-1的写入能在进行擦除操作以前完成。多级存储单元能够在完成擦除操作之前被写多次,就像下面所述那样:首先,第一位在n-电平多级存储单元的第一电平上被存储。在读此单元时为了知道要用的参考电压,必须设置一个电平指示符以指示这个第一电平。当第二的更迭位要被写进该单元时,第二位在n-电平存储单元的第二电平上被存储。电平指示符于是被修改更新以指明现在正在使用的是第二电平。
多级存储单元能够被伪擦除且通过增大电平指示符便适合于存储数值,因此电平指示符指示下一个要写的多级单元的下一电平。这个步骤能够在需要做真正的擦除之前进行到n-1电平。
将固态磁盘考虑作为在多级存储单元的擦除完成之前多重写的一种应用。虽然快速单元一次被编程一个,快速单元一般地一次只能够被擦除一个字块。传统的二进制单元能够随时被个别地编程到逻辑0,但是,一旦单元被编程至逻辑0,为了存储逻辑1它必须被擦除。因此,如果字块内的二进制单元相关联的位必须从0改变成1,在此单元能够重新存储1之前,整个字块必须被擦除。
在一个实施例中,“有效的”信息和最新的信息被复制到快速存储器的自由区域中。旧的字块的位置被标记用于清零因而它的存储空间能够被擦除和空出来作进一步的存储。这允许推迟擦除步骤而有助于改善固态磁盘的性能。
比起编程操作来擦除操作倾向于需要更多的时间和更多的能量。减少两种操作任何一种的执行时间能改进***的性能。如果多级单元被用来取代传统的二进制单元,伪擦除操作可能通过简单地递增所涉及单元的字块的电平指示符来完成。虽然真正的擦还没被完成,这种方法允许推迟擦除操作直到对n电平的多级单元的一个字块已经写了n-1次。此方法具有节省能源和节省擦除时间的潜力。因为未发生真正的擦除,在正常擦除过程中所运用的能量除了为递增存储字块的电平指示符所需要的部分外而被节省。唯一需要的时间是为递增字块的电平指示符所必需的时间。因此这种方法的使用能够节省能量和时间并且因此具有改善固态磁盘性能的潜力。
一种可能提高***性能的附加方法将会是“回填”,这种方法考虑到,在单元的第q电平上编程一位为0可能花费不同的时间,这取决于上次存储该位是“0”或“1”。换言之,在特定电平上编程单元所需要的时间直接与已经在浮栅上的电荷量有关。
图4表示采用了回填方法的图3的替代例。注意到在图3中写至电平3时,单元320仍然实质上没电荷在浮栅上,这是由于三个“1”已被写到单元这个事实。如果在电平4上要被写的是“0”,为将单元320编程为“0”所需的时间将会比编程单元310为“0”所需的时间更多、这是由于在310单元的浮栅门上已经有电荷量。因此编程操作对于上次存储在多级单元中的值是敏感的。但是图4表示的存储在电平3中的值是与图3中被存储的值相同,差别是现在第1和第2电平的处置是在处置下一个电平之前编程为“0”。注意图3的370是空心圆而图4的470是填线园,在两个图中在电平3上存储的值仍然是相同的。
回填方法有助于保证在任意电平上将单元编程为0占用近似相同的时间。这个方法的确有缺点即无论何时电平指示符是否被递增都需要时间和能量以将电荷加到浮栅上。然而,使用这个方法的优点包括在相继的较高电平上的一致的编程时间,这实质上与在多级单元中所存储的当前值无关。回头去参考图1,按照回填法,四个单元的浮栅能够被充电直达(但不超过)阈值160。因此170和180和其它园将被填线以表示电荷存在。电平1将仍然代表擦除态,但是,电平2的编程现在将需要较少时间因为已经有一定量的电荷在浮栅上。
上面所举例子图示说明完成对存储器的多重复迭写入而无须在写入操作之间进行擦除操作。特别是,高达n-1个单个位写入且无擦除能够在具有至少n个电平的多级单元上被完成。
图5用来获得关于不用擦除就能完成对具有n个电平的多级单元的写入的目的一般性表示。图5图示多级单元500其具有4个电平-501,502,503和504。为存储m位,需2m电平。因此,例如,为存储单个位需2电平。为存储第一个单个位,电荷将被放置在504电平或者电平503和电平504,因此参考530能决定在第一写入操作后是1或是0被存储。每个参考能够从两个相关联电平决定两个态中的一个。参考530与电平503和504相关联如560所指示那样。参考520与电平502和电平503相关联如550所指示。参考510与电平501和502相关联如540所指示。因此540,550和560表示与更迭写入相关联的电平组,这样一来550是对560的更迭写入组和540是对550的更迭写入组。
虽然每次写操作需要2m电平每位,相继的写操作用先前所写位的最高电平来表示其后所写位的最低电平。因此相继的写操作所需的这些电平中的至少一个电平实际上与先前的写入操作所需的电平中的一个电平重叠。因此仅要求2m-1个附加电平写入相继置位位。参考图5,这是用两个相邻写入组之间的交会来表示的。这样写入组560和550每个需要两个电平,但是,电平503被两个写入组所用,所以只需要一个附加的电平来支持两个写入组。因此,对于给定的相继的写入操作为表示m位所需的附加电平的数目是2m-1。
图6图示有n个电平的多级单元600。n个电平被分为每组j个电平的k个组。为使每组电平能够存储m位的值,j≥2m。每组(610)j个电平也可以称作写入组且能用组指示符来指示。
假设单元存储电平有效地被利用使得每组能存储一个m位的值而不浪费任何电平,则j=2m。否则每写入组能够存储的位数是int(log2(j))。函数int(x)的结果是x的整数部分。例如int(5/3)=1。函数log2(x)的结果是x对数(底为2),即如果x=2a则log2(x)=a。在一个实施例中j是2的整数幂,故j=2m
完成无擦除的多重写的方法能够概括为:完成k重写,其中每次写时写入m位值。在一般情况下,有k组电平适合于写入(也即k个写入组)。第一写入组以后的每个写入组与其前面的写入组共享一个电平。另一写入组需要2m个电平。其后的k-1个写入组中的每一个需要2m1个附加的电平。这就可以确定n以及要求允许k次写入m位而不必执行擦除的电平的总数。
为了对存储单元写入高至k个更迭的m位值,其中每次相继的写入更替由前次写操作所存储的m位值,存储单元必须有n个电平,此处
n≥k(2m-)+1
变量k表示在擦除操作之前要完成的写入操作的最大数。
对k求解得到: k ≤ n - 1 2 m - 1
将此等式应用到单个位情况(即m=1)得到k=n-1,这与上面所举的单位例子相一致。
变量n和m能够被这样地选择以致于k不是整数。但是,在一个实施例中,部分的写入是不允许的故k必须是整数。已知int(x)≤x(对于x>0的情况),变数k能够被选择为任意整数以及 k ≤ in + ( n - 1 2 m - 1 ) ≤ n - 1 2 m - 1
在一个实施例中,至少n和m中的一个不是整数。在另一个实施例中n和m都是整数并且被选择得使 k ≤ in + ( n - 1 2 m - 1 ) = n - 1 2 m - 1
与单个位情况不同,当多位被写入时(即m>1)在电压参考和写入组之间没有一对一的对应关系。为了从每个写入组决定2m个态中的一个,将需要2m-1个参考。因此,使得给定的写入组现在与2m-1参考相关。(注意,对于单个位情况,m=1和2m-1=21-1=1参考,因此在参考和写入组之间存在一对一的对应)。
一旦m位值已被写入至给定的写入组,更迭的m位值能够通过对下一写入组写入而被写到多级单元而不用执行擦除。换言之,写入存储单元的方法包括写入第一个m位值到存储单元的第一写入组的步骤。更迭的第二m位值被写入到存储单元的第二写组。
组指示符能使用类似于上面关于单个位情况所提出的电平指示符。组指示符被用来决定k组中的哪一组正在被用于存储m位值。组指示符也指示已被无擦除地完成的写入的数目。代替先前的一个电平存储一值的方法,组指示符被调整,以使得能够确定用于相继更迭写入m位值的下一个可利用的写入组。
在一个实施例中组指示符被递增以指示适用于相继的更迭写入的下一个写入组。
因此写入存储单元的一个方法包含的步骤有:存储m位在第一电平组的存储单元中,调整组指示符以指示下一个合适的组,以及将相继的更迭的m位存储进第二电平组的存储单元中,且不用擦除存储单元。
一旦k次写入操作已被完成,在另外的写入操作能够被执行之前该存储单元必须被物理地擦除。根据是允许完全物理擦除还是部分物理擦除来必须调整组指示符。
在一个实施例中,部分的物理擦除被允许。在部分的物理擦除的情况,在存储单元的一个写入组里所存储的电荷被移走直至没有电荷保留在这一写入组里。在此情况下,组指示符将依赖于有多少写入组被擦除而被预置。如果当前写入组是写入组i并且足够的电荷被移走以擦除b个写组,则组指示符必须被减少或者预置到i-b。换言之,部分擦除能够通过从具有k个写入组的n-电平存储单元中移走电荷来完成。因此写入组k-b至k(k>b)实质上没有保存电荷。
但是,如果在另一个实施例中,只有完成物理的擦除被允许,于是在物理擦除操作过程中实际上所有的电荷都从多级存储单元中移走。在这种情况下,组指示符应该被预置成在完成的物理擦除操作以后组指示符指向存储单元里k个适用组中的第一个。
如同上面所举的关于单个位擦除的例子那样,当组指示符被适当地调整时,似乎存储单元被擦除m位。当组指示符被调整到指示存储单元的一组可利用的2m相邻电平时,似乎存储单元m位被擦除。但是,实际上真正的擦除由于k个写入操作而被推迟了。因此存储单元通过将组指示符提升至下一组合适的2m相邻电平而被“擦除”。但是,在k次写入之后,在另一个值能被存进存储单元之前存储单元将必须被完全地擦除。
读操作用组指示符来决定那一组2m个电平需要被检测以便确定存储在存储单元中的m位值,因为每组2m电平需要2m-1个参考,组指示符实际上指示那一组2m-1个参考被用来确定m位的存储在存储单元的值。因此组指示符是为指示存储单元的2m个相邻电平而设置的。然后通过确定2m个相邻电平的态从存储单元读出m位值。
上面提到的关于存储单元位的回填方法可类似地用于存储m位。具体讲,在将m个替换的位存入第二写入组之前通过将预定的值存进第一写入组来完成回填。
利用n-电平多级存储单元来完成m位(其中m≥1)值的多重写入使得有可能减少为读出存入存储单元的值而需要的读出放大器的总数。为读出存在给定等组中的值需要该写入组里的所有参考电压。但是,在正常操作下,全部n个电平属于相同的写入组,所以n电平单元被用来存储具有log2(n)位的值。因此该单元必须在可以将一新值编程进去之前被擦除。为了读出单元的内容同时需要全部n-1个电压参考。但是,如果每个写入组由2m电平组成,则仅仅2m-1个电压参考为每次读操作所必需。只要2m<n,这意味着少于n-1的读出放大器为每次读操作所必需。
如果采用可编程的读出放大器,用于读存储单元所需的读出放大器的总数能够从n-1减少到大约2m-1。一般讲读出放大器是一个比较器,它将读出值与参考电压相比较。参见图1,为了确定存储在单元110,120,130和140中的值,与在160,162和164上设立的参考电压相对应需要三个读出放大器。参考图6,对于给定的读操作只有为读出当前写入组所需读出放大器是必须的。为了读出下一个写入组,同样的2m-1个读出放大器能被用到,如果用于每个读出放大器的参考电平被调整2m个电平。效果是移动所有2m-1个读出放大器的参考电压以对应于读出存储在下一写入组中的m位值所需的参考电压。
在一个实施例中,2m-1可编程读出放大器被用来读出存储在第一组2m个相邻电平中的m位值。相同的2m-1个可编程读出放大器被重新编程以读出存储在第二组2m相邻电平中的m位值。对给定读出放大器编程的参考电压由可编程值决定。在一个实施例中,可编程值是组指示符。因此每次组指示符增大和减小时,给定读出放大器有关的参考电压被调整2m个电平。
因此从多级存储单元中读m位值的另一个方法被描述。存储单元的第一组2m相邻电平被指出。利用第一套2m-1读出放大器读出第一组。然后存储单元的第二组2m个相邻电平被指出。利用相同的第一套2m1个读出放大器读出第二组。在一个实施例中,2m-1读出放大器被按照组指示符编程,其中每次组指示符增大或减小时,每个读出放大器的参考电压(或参考电平)是调整2m电平。因此在一个实施例中,如果组指示符增大时,2m-1个读出放大器的每一个的参考电平增加2m电平。类似地,如果组指示符减小,2m-1个读出放大器的每一个的参考电平减少2m电平。
虽然快速存储器已被用在上面所举的例子中。这些方法适用于任何在相继的编程过程中允许电荷的连续的存贮并允许读出连续变化的电荷量(即电荷中的正或负的变化)的存储器。这些存储器的例子包括非多级快速存储单元(non-MLC flash),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),只读存储器(ROM)以及如上面所描述多级快速单元(MLC flash)。
在前面的详细描述中,本发明是参考它们特殊的示范性的实施例来说明的。可以作各种各样的修正和改变而不偏离本发明的主要精神和范围,如像在权利要求中所规定的那样。从而详细说明和附图应该被看作为一个图示的而非严格意义上的说明。

Claims (19)

1.写入存储单元的方法,其中包括的步骤有:
在存储单元的第一组电平中存入m位,其中m大于或等于2;
在存储单元的第二组电平中存入m位,不擦除该存储单元;以及
调整组指示符指示第二组。
2.权利要求1的方法,其中该存储单元是非易失性单元。
3.权利要求1的方法,其中该存储单元是闪速存储单元。
4.权利要求1的方法,其中该存储单元是至少具有n个电平的多级单元,其中n大于或等于2,以及n个电平包括K个组,其中K大于或等于2,每组包括n个电平中的j个。
5.权利要求4的方法,其中j≥2m
6.权利要求5的方法,其中j=2m
7.权利要求4的方法,其中m,k和n是整数。
8.权利要求7的方法,其中 k = n - 1 2 m - 1 .
9.权利要求的方法,其中第一和第二组电平重叠,以便包括至少一个公共电平。
10.权利要求1的方法,其中还包括在第二组电平中存m个更迭位步骤之前,在第一组电平中存入一个预定值的步骤。
11.读存储单元的方法,其中包括步骤:
读储存在一组指示符中的一组;
根据储存在组指示符中的值识别n级存储单元的一组相邻电平;以及
读出该组,以读出一个m位值。
12.权利要求11的方法,其中该存储单元是一个非易失性存储单元。
13.权利要求11的方法,其中该存储单元是闪速存储单元。
14.读存储单元的方法,其中包括的步骤有:
读储存在一组指示符中的一组;
根据储存在组指示符中的该值识别该存储单元的第一组2m个相邻电平,其中m大于或等于2;
利用第一套2m-1个读出放大器以便读出第一组,以便读出m个位值;
根据储存在该组中指示符中值识别该存储单元的第二组2m个相邻电平;以及
利用相同的第一套读出第二组,以便读出另外的m个位值。
15.权利要求11的方法,其中读出步骤还包括步骤:
根据组指示符设置2m-1个读出放大器每个的参考电平。
16.权利要求15的方法,其中还包括步骤:
如果该组指示符增加,增加该2m-1个读出放大器的2m个电平的每一个的参考电平。
17.权利要求15的方法,其中还包括步骤:
如果该组指示符减小,减小该2m-1个读出放大器的2m个电平的每一个的参考电平。
18.写入存储单元的方法,其中包括的步骤有:
a)在存储单元的第一组电平中存储m位;
b)调整组指示符识别该存储单元的相继电平组;
c)在相继电平组中存储m个更迭的相继位,不擦除该存储的单元,
  其中m大于或等于2;以及
d)重复步骤b)和c)。
19.权利要求18的方法,其中还包括步骤:
e)擦除该存储单元;以及
f)初始化该组指示符。
CN96198382.5A 1995-09-29 1996-09-24 对非易失存储器的每单次擦除的多重写入 Expired - Fee Related CN1114214C (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US08/537,132 US5815434A (en) 1995-09-29 1995-09-29 Multiple writes per a single erase for a nonvolatile memory
US08/537,132 1995-09-29
US08/685,939 1996-07-22
US08/685,939 US5936884A (en) 1995-09-29 1996-07-22 Multiple writes per a single erase for a nonvolatile memory

Publications (2)

Publication Number Publication Date
CN1202262A CN1202262A (zh) 1998-12-16
CN1114214C true CN1114214C (zh) 2003-07-09

Family

ID=27065382

Family Applications (1)

Application Number Title Priority Date Filing Date
CN96198382.5A Expired - Fee Related CN1114214C (zh) 1995-09-29 1996-09-24 对非易失存储器的每单次擦除的多重写入

Country Status (8)

Country Link
EP (1) EP0852798B1 (zh)
CN (1) CN1114214C (zh)
AU (1) AU7165696A (zh)
DE (1) DE69626654T2 (zh)
HK (1) HK1015519A1 (zh)
IL (1) IL123688A (zh)
MX (1) MX9802298A (zh)
WO (1) WO1997012368A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10261897B2 (en) 2017-01-20 2019-04-16 Samsung Electronics Co., Ltd. Tail latency aware foreground garbage collection algorithm

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE60134870D1 (de) 2001-12-28 2008-08-28 St Microelectronics Srl Programmierverfahren für eine Multibitspeicherzelle
US7132350B2 (en) 2003-07-21 2006-11-07 Macronix International Co., Ltd. Method for manufacturing a programmable eraseless memory
EP1503384A3 (en) * 2003-07-21 2007-07-18 Macronix International Co., Ltd. Method of programming memory
KR101303177B1 (ko) * 2007-06-22 2013-09-17 삼성전자주식회사 불휘발성 메모리 소자 및 그 동작 방법
KR101544607B1 (ko) 2008-10-28 2015-08-17 삼성전자주식회사 메모리 장치 및 그 프로그램 방법
US8149607B2 (en) * 2009-12-21 2012-04-03 Sandisk 3D Llc Rewritable memory device with multi-level, write-once memory cells
KR101438072B1 (ko) 2010-04-15 2014-09-03 라모트 앳 텔-아비브 유니버시티 리미티드 소거 없는 플래시 메모리의 다중 프로그래밍

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5163021A (en) * 1989-04-13 1992-11-10 Sundisk Corporation Multi-state EEprom read and write circuits and techniques
US5487033A (en) * 1994-06-28 1996-01-23 Intel Corporation Structure and method for low current programming of flash EEPROMS

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10261897B2 (en) 2017-01-20 2019-04-16 Samsung Electronics Co., Ltd. Tail latency aware foreground garbage collection algorithm

Also Published As

Publication number Publication date
HK1015519A1 (en) 1999-10-15
DE69626654D1 (de) 2003-04-17
MX9802298A (es) 1998-08-30
EP0852798A4 (en) 1999-05-26
EP0852798B1 (en) 2003-03-12
DE69626654T2 (de) 2004-02-05
IL123688A (en) 2000-12-06
CN1202262A (zh) 1998-12-16
IL123688A0 (en) 1998-10-30
WO1997012368A1 (en) 1997-04-03
EP0852798A1 (en) 1998-07-15
AU7165696A (en) 1997-04-17

Similar Documents

Publication Publication Date Title
US5936884A (en) Multiple writes per a single erase for a nonvolatile memory
CN104599710B (zh) 具有极性控制的每单元多比特(mbc)的非易失性存储器设备和***及其编程方法
US9378830B2 (en) Partial reprogramming of solid-state non-volatile memory cells
CN103843067B (zh) 用于非易失性存储器的片上动态读取
US8031529B2 (en) Memory cell threshold voltage drift estimation methods and apparatus
KR101548175B1 (ko) 싱글 레벨 메모리 셀 블락과 멀티 레벨 메모리 셀 블락을 포함하는 불휘발성 메모리 장치의 마모 레벨링 방법
US9001578B2 (en) Soft erasure of memory cells
US20120284574A1 (en) Non-Volatile Memory and Method Having Efficient On-Chip Block-Copying with Controlled Error Rate
KR20110038097A (ko) 플래시 메모리 디바이스 판독 방법 및 시스템
KR20130088066A (ko) 임계 전압 드리프트 또는 저항 드리프트 내성의 이동 기선 메모리 데이터 부호화를 이용한 멀티레벨 셀(mlc) 메모리의 향상된 데이터 부분 소거 구현
JP2008524706A (ja) 不揮発性メモリおよびマルチストリーム更新追跡を伴う方法
US11017864B2 (en) Preemptive mitigation of cross-temperature effects in a non-volatile memory (NVM)
US11086717B2 (en) Random selection of code words for read voltage calibration
CN1114214C (zh) 对非易失存储器的每单次擦除的多重写入
KR20130088069A (ko) 임계 전압 드리프트 또는 저항 드리프트 내성의 이동 기선 메모리 데이터 부호화를 이용한 멀티레벨 셀(mlc) 메모리의 향상된 데이터 쓰기 구현
CN110473581A (zh) 固态储存装置及其相关控制方法
US9053011B2 (en) Selective protection of lower page data during upper page write
JP2021026448A (ja) 記憶部システム、記憶部制御装置および記憶部制御方法
US8717827B1 (en) Method for the permanently reliable programming of multilevel cells in flash memories
US11901013B2 (en) Optimization of reference voltages in a non-volatile memory (NVM)
US9576649B2 (en) Charge loss compensation through augmentation of accumulated charge in a memory cell
CN112506809A (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
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20030709

Termination date: 20100924