CN101789266A - 非易失性存储器的编程 - Google Patents

非易失性存储器的编程 Download PDF

Info

Publication number
CN101789266A
CN101789266A CN200911000026A CN200911000026A CN101789266A CN 101789266 A CN101789266 A CN 101789266A CN 200911000026 A CN200911000026 A CN 200911000026A CN 200911000026 A CN200911000026 A CN 200911000026A CN 101789266 A CN101789266 A CN 101789266A
Authority
CN
China
Prior art keywords
data block
programmed
value
data
write
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
Application number
CN200911000026A
Other languages
English (en)
Other versions
CN101789266B (zh
Inventor
J·奥特斯泰特
W·阿勒斯
T·尼尔施尔
M·博卢
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.)
Infineon Technologies AG
Original Assignee
Infineon Technologies AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Infineon Technologies AG filed Critical Infineon Technologies AG
Publication of CN101789266A publication Critical patent/CN101789266A/zh
Application granted granted Critical
Publication of CN101789266B publication Critical patent/CN101789266B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0069Writing or programming circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1006Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0069Writing or programming circuits or methods
    • G11C2013/0088Write with the simultaneous writing of a plurality of cells

Landscapes

  • Read Only Memory (AREA)

Abstract

本发明涉及非易失性存储器的编程。公开了非易失性存储器及其编程方法。在一个实施例中,编程存储器阵列的方法包括:接收一系列数据块,每个数据块具有许多将被编程的位;确定第一数据块中将被编程的位的数量;确定第二数据块中将被编程的位的数量;并且如果所述第一数据块和所述第二数据块中将被编程的位的数量之和不大于最大值,将第一和第二数据块并行地写入存储器阵列。

Description

非易失性存储器的编程
技术领域
本发明总体上涉及半导体存储器,并且在特定实施例中涉及编程非易失性存储器。
背景技术
非易失性存储器阵列包括诸如浮栅晶体管的非易失性器件。通过在浮栅存储电荷来编程浮栅晶体管。浮栅上的电荷在应用激活电压时转移沟道的导电性。通过感测流过所述器件的电流来检测存储器晶体管的沟道导电性(因此,检测存储器状态)。
存储器单元的编程通常一次一字地完成,但是常规地需要将所选单元的漏极置于例如6或者7伏特,栅极在11或12伏特,以及源极接地。因为当在漏极端和源极端之间放置显著的电位差时,栅极端上升到高于漏极端和源极端的水平,所以该编程操作将抽取大量的源极到漏极电流。
一种提高编程过程速度的方法是并行地编程更多器件。然而,编程更多晶体管抽取更大的电流。由于编程需要的高电压的原因,由电荷泵电路提供电流到晶体管。进一步,非易失性存储器的许多部件(诸如栅极电介质)不容易缩放并且限制了编程电压的任何降低。
电荷泵电路从较低电压源提供高电压输出。然而,从电荷泵可抽取的最大电流是有限的。来自电荷泵的总电流输出的上升需要相应地增加管芯面积,这与经济学驱动缩放适得其反。
因此,在本领域中所需要的是编程半导体存储器的改进的电路及方法。
发明内容
通过本发明的优选实施例,基本解决或避免了这些或者其它问题,并且通常获得了技术优势。
本发明实施例包括编程非易失性存储器。根据本发明的优选实施例,编程存储器阵列的方法包括接收一系列数据块,每个数据块具有许多将被编程的位;确定在第一数据块中将被编程的位的数量;确定在第二数据块中将被编程的位的数量;以及如果在第一数据块中和在第二数据块中将被编程的位的数量之和不大于最大值,并行地将第一和第二数据块写入存储器阵列。
前述内容相当广泛地概述本发明实施例的特征,以便以下本发明的详细描述可以更好地被理解。本发明实施例的另外的特征以及优点将在下文中描述,其形成本发明权利要求的主题。应当被本领域技术人员意识到的是,所公开的概念以及特定实施例可以容易地用作修改或设计其它结构或过程用以实施本发明的相同目的的基础。还应当被本领域技术人员认识到的是,这些等价的构架没有脱离如所附权利要求所阐明的本发明的精神和范围。
附图说明
为了更完整地理解本发明及其优点,现在参考结合附图进行的以下描述,其中:
图1,其包括图1a和1b,示出根据本发明实施例的写算法,其中在两个相邻数据块上对数据块求和;
图2,其包括图2a和图2b,示出根据本发明实施例的写算法,其中在任意两个相邻数据块上对数据块求和以便最小化写操作的数量;
图3,其包括图3a和图3b,示出根据本发明实施例的写算法,其中在两个或三个相邻数据块上对数据块求和以便最小化写操作的数量;
图4示出根据本发明实施例的写算法,其中在两个相邻数据块和反数(inverse)数据块上对数据块求和;
图5,其包括图5a和5b,示出根据本发明实施例的写算法,其中在两个或三个相邻数据块和反数数据块上对数据块求和;
图6示出根据本发明实施例的写算法,其中在任意两个或任意三个相邻数据块和反数数据块上对数据块求和;
图7示出根据本发明实施例的写算法,其中在相邻数据块上对数据块求和,其中在不降低写效率情况下减少总编程电流;
图8示出根据本发明实施例的写算法,其中在任意两个或任意三个数据块上对数据块求和;以及
图9描述示出存储器电路框图的本发明的实施例。
除非特别指明,在不同图中的相应数字和符号通常指示相应部分。图画成清楚地示出实施例的相关方面,并且不必按比例绘制。
具体实施方式
以下详细地讨论当前优选实施例的制造和使用。然而,应当意识到的是,本发明提供能够在各种各样的特定上下文中实施的许多可应用发明概念。所讨论的特定实施例仅仅是制造和使用本发明的特定方式的示例,并不是限制本发明的范围。
将针对特定上下文(即编程非易失性存储器)中的优选实施例来描述本发明。然而,本发明还可以应用于其它操作以及应用于诸如易失性存储器的其它器件。
在许多非易失性存储器中,可以同时编程的位的数量(例如,“1”的数量)受到最大可用电流限制。特别地,利用热电子注入或者热空穴注入来编程的非易失性存储器需要相对高的电流以产生这些热载流子。需要高电流的非易失性存储器的例子包括常规的闪存器件以及诸如相变存储器、MRAM以及CBRAM的新兴存储器,其中在某些情形下,具有双态内容(toggling content)的存储器单元的数量限定了所消耗的电流。最大可用电流受到应用的限制,例如,具有有限电池的手持装置具有非常有限的可用电流。类似地,电荷泵的大小限制了可用电流。同时可编程位的最大数量(nmax)的增加需要适当增加电荷泵面积。
当总可用电流是Imax并且单一写操作需要的电流是Is时,能够并行编程的位的最大数量包括Imax/Is。例如,如果每个所写的位需要100μA 且1mA的总电流是可用的,那么不超过10个位能够并行地写入到非易失性存储器中。典型地,当某一数量的数据位(x)被写时,独立于这些位中将被编程的位的数量(例如,“1”的数量),nmax位数据的块被并行地写入到非易失性存储器中,直到所有x位被写。因此,为最坏情形选择写顺序,以便当数据位(x)中的所有位包括将被编程的位时,那么以100%的效率执行写。然而,在大多数应用中平均地,只有一半数据位包括将被编程的位,并且因此,只有一半的可用电流被使用。在各种实施例中,本发明克服了这些限制并且以更高的效率写,并有效地使用可用编程电流。
在不同的方法中,同时写可变数量的数据位,从而有效地使用可用电流。如果选择被写的数据位的数量以便完全使用所有编程电流,100%的效率是可能的。然而,这个方法有许多缺点。例如,写时间不恒定而是依赖于数据,例如,数据中将被编程的位的数量。由于要处理的情况的数量等于可能宽度的数量,实现此算法所需的软件和硬件都非常复杂令人望而却步。在各种实施例中,通过预选择并行编程的数据宽度(或者晶体管)来克服这些局限。例如,仅特定数量的晶体管能够并行地编程。在一个实施例中,例子包括编程q、2q、3q、4q的数据宽度(或晶体管),其中q是最小预选择的编程的数据宽度。作为选择,在另一个实施例中选择q、1.5q、2q的数据宽度。在由所有晶体管抽取的电流小于或等于从电荷泵可获得的最大电流的约束下,从预选择的数据宽度中选择较大的数据宽度。
将参照图1来描述提高编程效率的本发明的实施例,其中使用仅两个大小来写数据,较大的一个是较小一个的两倍。然后用图2-7所示的表来描述可选择的实施例。用图8来描述在各种实施例中所使用的存储器电路的框图。
图1,其包括图1a和1b,示出无需硬件复杂性明显增加情况下提高写性能效率的本发明的实施例。图1a示出表,而图1b示出编程方法的流程图。
如图1a的表中所示,示出包括16个数据块的数据块序列(将被写的数据)的任意阵列。每个数据块包括例如8个数据位。每个数据位可以是“1”或者“0”。将被编程数据位包括值“1”。因此如上所述,“1”的数量限制了能够并行编程的数据位的数量。第一行是将被编程的数据块序列,以及,第二行示出在该数据序列中将被编程的数据位的数量(nr)。因此,第二行的第二列示出与将被编程的数据位数量相对应的对于第一数据块的值4。第三行示出在相邻数据块,例如第一和第二数据块,以及随后第三和第四数据块中将被编程的位的数量(n1+n2,n3+n4,…nr+nr+1)。因此,第三行包括数据块数量的一半(在该情况下8个数据块)作为将被写的数据。因此,如果最大可编程数据位nmax(能够并行编程的数据位)是10,第三行示出能够同时写前两个数据块。如果第三行的每个单元中的数据位的数量不大于最大可编程数据位nmax,则在效率上达到100%增长。然而,如果第三行中的单元大于最大可编程数据位nmax,数据位将作为单独的块来写。
对于图1a的第一行所示的数据位序列,在第四行中示出一起写的数据块。因此,一起写第一和第二数据块,然而第三和第四数据块分开来写。因此,使用这种方法该数据序列作为十一个数据块来写。因此,对于该特定的数据块序列获得45%的效率增长。当平均只有一半数据位是“1”时,使用该算法对于随机数据所获得的平均效率增长大约是81%。因此,大约20%的时间,数据块不能组合。
尽管展示了对两个相邻块求和,但在各种实施例中,可以对更多相邻数据块一起求和。例如,在一个实施例中,能够对相邻的两个相邻数据块(例如,nr+nr+1)求和以及对三个相邻数据块(例如,nr+nr+1+nr+2)求和。如果在三个相邻块中将被编程位的数量不大于最大可编程位nmax,那么一起写这三个相邻块。例如,在图1中,在第十三、十四和十五列中的数据块可以一起编程,对于该例子,带来总共60%的效率增长。类似地,在另一个实施例中,多达四个数据块能够被组合。因此,例如,在第十三、十四、十五和十六列中的数据块能够一起被编程,对于该例子,带来总共78%的效率增长。
图2,其包括图2a和2b,示出用于进一步优化写序列的本发明的实施例。图2a示出如图1a的表,而图2b示出流程图。如在前的实施例一样,第一行列出数据序列,第二行列出将被编程的位的数量,以及第三行列出在相邻行上求和的将被编程的位的数量。如上所述,第三行包括在相邻数据块中(例如,n1+n2,n3+n4,…nr+nr+1)将被编程的位。不像在前的实施例,增加另外的行(第四行),其在第二和第三数据块中在相邻块(例如,n2+n3,n4+n5,…nr+1+nr+2)上求和。
第五行,其相应于图1a中的第四行,示出用于写数据序列的数据块。类似于图1a,第一列包括第一和第二数据块。第二列也类似于图1a使用第三数据块。然而,不像在前的实施例,第三列包括第四和第五数据块。这是因为如在第四行所示,第四和第五数据块能够被组合到小于最大可编程位nmax。因此,使用这个实施例获得进一步效率增益。例如,对于在第一行所示的数据序列,数据可以被编程为10个数据块,而不是在前的实施例中的11个。因此,获得60%的提高。当平均只有一半数据位是“1”时,使用这个算法获得的对于随机数据的平均效率增长大约是83%。这个实施例还可以包括在多个数据块(例如,nr+1+nr+2+nr+3)上相加以如上所述进一步提高效率。
图3a示出根据本发明的实施例的写算法,其中数据块在两个或三个相邻数据块上求和以最小化写操作的数量。如图2a的在前实施例一样,第一行列出数据序列,第二行列出将被编程的位的数量,以及第三行列出在相邻数据块上求和的将被编程的位的数量。第四行也列出如图2a中所描述的在两个相邻数据块上的求和。不像在前实施例,第五、第六和第七行列出在三个相邻块上的求和,例如,第五行列出在nr+nr+1+nr+2上的求和,第六行列出在nr+1+nr+2+nr+3上的求和,以及第七行列出在nr-1+nr+nr+1上的求和。因此,如在第八行所列,选择两个或者三个相邻数据块来最小化写操作的数量。例如,第十二、第十三和第十四数据块一起被选择并且并行地写。如在该表中所示,对于这个例子,在九个步骤中处理所示的数据序列,效率增益总共约为78%。
图4示出一实施例,其将数据如上所述写成“1”或者写成反数的数据,其中“1”作为“0”存储且“0”作为“1”存储。如果“0”的数量小于“1”的数量,以反数存储数据能够节省写操作。然而,数据块必须包括附加位来标明数据类型是反数或不是反数。尽管包括这个附加位在存储效率上会有损失,但是这能够由通过使用特别是对于特定类型数据的这种算法而获得的增益来补偿。
参考图4,向图1a增加另外的行,以示出在单个数据块(ur)中需要被编程的反数数据位的数量(第四行),以及在相邻列中反数数据位的数量(第五行)。例如,在第五行中,相邻的两个相邻块二者(例如,ur+ur+1)被求和。如果在相邻块中将被编程的反数位少于最大可编程位nmax,那么相邻块作为反数数据一起被写,而通过在上述附加位中写入附加的“1”来指示反数。
因此,如图1所示在普通模式下,第一和第二数据块一起被编程。然而,使用反数模式一起编程第三和第四块,因此减少所需写操作的数量。因此,在八个数据块中编程所有数据块,而普通模式的实施例需要十一个数据块。尽管存在由于需要包括关于数据位模式的信息所引起的存储效率的损失,但在一些实施例中,这能够通过效率增益来补偿。这个过程的效率增益是100。有利的是,并且不像在前的实施例,对于这个每数据块8位以及nmax=10的例子,此效率增益不依赖于数据。
图5,其包括图5a和5b,示出使用普通和反数数据的本发明实施例。尽管第一、第二和第三行与图4类似,像如上参照图3描述的那样,增加另外的行以增加多于一个的相邻数据块。尽管第三行在两个相邻块(例如,nr+nr+1)上求和,第四行在三个相邻块(例如,nr+nr+1+nr+2)上求和。如果在三个相邻块中将被编程的位不大于最大可编程位nmax,那么此三个相邻块一起被写。类似地,增加附加的行,其在反数数据块中的三个相邻块上求和(例如,ur+ur+1+ur+2)。如果在三个相邻块中将被编程的反数位的数量小于最大可编程位nmax,那么三个相邻数据块作为反数数据一起被写,再增加“1”用于表明反数数据。对于这个例子效率增益大约是128%。
图6示出在普通和反数数据模式下三个相邻块求和的实施例。增加另外的行以示出另外的求和(例如,第五行示出nr+1+nr+2+nr+3上的求和,并且第六行示出nr-1+nr+nr+1上的求和)。类似地,在反数数据空间中增加另外的行。如表中所示,对于此例子,在6个步骤内处理所示的数据序列,总效率增益大约为167%。因此,在任何给定数据序列,通过选择在两个相邻块或者三个相邻块上求和的位的最小数量,选择继续。
在各种实施例中,能够在芯片上配置如上描述的写优化算法。由于在有限数量的数据块(例如,对于图1的实施例是2个)上执行求和,硬件的复杂度水平是最小的。在各种实施例中,硬件可以或者使用本发明的实施例,或者使用固定数量的数据块,因此使用不依赖于数据的写宽度。
图7示出实施例,其中在没有写效率明显下降的情况下,减小可编程位的最大数量nmax。在图7中,与图1a相比可编程位的最大数量nmax降至8,图1a中可编程位的最大数量nmax是10。在这个实施例中,写操作的总共数量是13,效率增长23%,尽管对于编程可用的总电流减少。
如图7所示,该改进的写操作可用于,例如,通过减少电荷泵的面积,来减少器件的电路面积。通过减少可用于写操作的总电流,这是可能的。例如,使用本发明的实施例,在不影响总写时间的情况下可以减少可编程位的最大数量nmax。由于减少了来自电荷泵的总电流,电荷泵的面积能够缩小,因为电容器的尺寸能够减小。由于电荷泵的电容器消耗相当大的面积,管芯尺寸的明显节省是可能的。这个实施例在诸如手持装置的功率敏感装置中可能是更优选的。
图8示出一实施例,其中通过尽可能接近要编程的最大可编程位nmax位选择数据块组合,选择数据块以最大化被写的位的数量。在这个实施例中,先缓冲数据,并且如图1所示计算在每个数据块中的数据位的数量。然而,在这个实施例中,选择数据块来最大化一起写的位的数量。例如,图8示出使用这个实施例写的图1的数据序列。在第一个循环中,选择在第一和第三列的数据块以形成并行编程的十位的单个块。在第二个循环中,选择第二和第四数据块。类似地,如图8所示,在仅仅7个循环中写该数据序列的其余部分。
图9描述示出存储器电路框图的本发明实施例。该存储器电路包括耦合到电源节点12的电荷泵11。电荷泵设计为提供高于电源电压的电压。例如,电荷泵提供12V的输出电压,用于存储器阵列15的写或擦除操作。例如通过开关16向存储器阵列提供来自电荷泵的电压。例如,在一个实施例中,字线和位线开关分别耦合到存储器阵列的字线和位线,并耦合到电荷泵11。位线和字线在存储器阵列15的每个存储器器件上提供电压。控制器20处理将被写入存储器阵列15的数据序列10并提供关于位的数量和位置的信息,以及因此提供关于同时被写的存储器器件的数量的信息。在一个实施例中,控制器20包括处理器。开关16使用来自控制器20的信息,并且并行地耦合存储器器件的组。在各种实施例中,控制器20使用图1至8的实施例中所描述的任意一个算法来选择一起写的位的数量。在各种实施例中,存储器阵列15包括诸如闪存存储器器件的非易失性存储器。
在描述本发明的实施例时,表格仅作为解释算法的方式使用,实际实施可以不需要生成这样的表格。
尽管本发明及其优点已经被详细描述,应当理解的是,在不脱离所附权利要求限定的本发明的精神和范围的情况下,能够做出各种改变、置换以及改造。例如,以上讨论的许多特征和功能能够以软件、硬件或者固件、或其组合来实现。作为另一例子,可以容易地由本领域技术人员理解的是,在此描述的许多特征、功能可以改变而仍保持在本发明的范围内。
此外,本申请的范围并不旨在限于说明书中所描述的过程、机器、制造、物质的组分、装置、方法以及步骤的特定实施例。作为本领域技术人员将很容易地从本发明的揭示中理解的是,可以根据本发明来利用当前存在的或者以后开发的过程、机器、制造、物质的组分、装置、方法或者步骤,其执行与在此描述的相应实施例实质上相同的功能或者达到实质上相同的结果。由此,所附的权利要求旨在将这些过程、机器、制造、物质的成分、装置、方法或者步骤包括在其范围内。

Claims (37)

1.一种编程存储器阵列的方法,该方法包括:
将待写数据分为多个第一长度的第一数据块;
计算第一值,所述第一值是在每个第一数据块中将被编程的位的数量;
将待写数据分为多个第二长度的第二数据块,所述第二长度大于第一长度;
计算第二值,所述第二值是在每个第二数据块中将被编程的位的数量;并且
如果所述第二值不大于最大允许并行编程的位的数量,并行地写所述第二数据块中将被编程的位。
2.权利要求1的方法,进一步包括:如果所述第二值大于所述最大允许并行编程的位的数量,并行地写所述第一数据块中将被编程的位。
3.权利要求1的方法,其中所述第二长度是所述第一长度的整数倍。
4.权利要求1的方法,其中所述第二长度小于所述第一长度的四倍。
5.权利要求1的方法,进一步包括将待写数据分为多个第三长度的第三数据块,所述第三长度大于所述第二长度,
计算第三值,所述第三值是每个第三数据块中将被编程的位的数量;以及
如果所述第三值不大于所述最大允许并行编程的位的数量,并行地写所述第三数据块中将被编程的位。
6.权利要求5的方法,其中所述第二长度和所述第三长度是所述第一长度的整数倍。
7.权利要求1的方法,进一步包括:
将待写数据分为多个所述第二长度的第三数据块,所述第三数据块和所述第二数据块被平移所述第一长度;
计算第三值,所述第三值是每个第三数据块中将被编程的位的数量;以及
如果所述第三值不大于所述最大允许并行编程的位的数量,并行地写所述第三数据块中将被编程的位。
8.权利要求7的方法,其中第二长度是第一长度的整数倍。
9.权利要求8的方法,进一步包括:
将待写数据分为多个第三长度的第四数据块,所述第三长度大于所述第二长度;
计算第四值,所述第四值是每个第四数据块中将被编程的位的数量;以及
如果所述第四值不大于所述最大允许并行编程的位的数量,并行地写所述第四数据块中将被编程的位。
10.权利要求9的方法,其中所述第二长度和所述第三长度是所述第一长度的整数倍。
11.权利要求9的方法,进一步包括:
将待写数据分为多个所述第三长度的第五数据块,所述第五数据块和所述第四数据块被平移所述第一长度;
计算第五值,所述第五值是每个第五数据块中将被编程的位的数量;以及
如果所述第五值不大于所述最大允许并行编程的位的数量,并行地写所述第五数据块中将被编程的位。
12.权利要求7的方法,其中所述第二长度和所述第三长度是所述第一长度的整数倍。
13.权利要求1的方法,进一步包括:
将待写数据分为多个第二长度的第三数据块,所述多个第三数据块包括待写数据的反数;
计算第三值,所述第三值是每个第三数据块中将被编程的位的数量;以及
如果所述第三值不大于所述最大允许并行编程的位的数量,并行地写所述第三数据块中将被编程的位。
14.一种编程存储器阵列的方法,该方法包括:
接收一系列数据块,每个数据块具有多个将被编程的位;
确定第一数据块中将被编程的位的数量;
确定第二数据块中将被编程的位的数量;并且
如果所述第一数据块和所述第二数据块中将被编程的位的数量之和大于最大值,并行地将第一数据块写入所述存储器阵列。
15.权利要求14的方法,其中所述第一和第二数据块是相邻数据块。
16.权利要求14的方法,进一步包括:如果所述第一数据块和所述第二数据块中将被编程的位的数量之和不大于所述最大值,将所述第一和第二数据块并行地写入所述存储器阵列。
17.权利要求14的方法,进一步包括:确定第三数据块中将被编程的位的数量。
18.权利要求17的方法,进一步包括:如果所述第一数据块、所述第二数据块和所述第三数据块中将被编程的位的数量之和不大于所述最大值,将所述第一、第二和第三数据块并行地写入所述存储器阵列。
19.权利要求17的方法,进一步包括:如果所述第一数据块、所述第二数据块和所述第三数据块中将被编程的位的数量之和大于所述最大值,将所述第一和第二数据块并行地写入所述存储器阵列。
20.权利要求19的方法,其中所述第一、第二和第三数据块是相邻数据块。
21.权利要求17的方法,进一步包括:如果所述第一数据块和所述第三数据块中将被编程的位的数量之和不大于所述最大值,将所述第一和第三数据块并行地写入存储器阵列。
22.权利要求21的方法,其中所述第一和第三数据块不是相邻数据块。
23.权利要求17的方法,进一步包括:确定第四数据块中将被编程的位的数量。
24.权利要求23的方法,进一步包括:如果所述第一数据块、所述第二数据块、所述第三数据块和所述第四数据块中将被编程的位的数量之和不大于所述最大值,将所述第一、第二、第三和第四数据块并行地写入存储器阵列。
25.权利要求24的方法,其中所述第一、第二、第三和第四数据块是相邻数据块。
26.权利要求23的方法,进一步包括:如果所述第一数据块、所述第二数据块、所述第三数据块和所述第四数据块中将被编程的位的数量之和大于所述最大值,将所述第一、第二和第三数据块并行地写入存储器阵列。
27.权利要求14的方法,进一步包括:
确定在所述第一和第二数据块中数据的反数;
如果所述第一数据块和所述第二数据块中将被编程的位的数量之和大于所述最大值,将所述第一和第二数据块的反数并行地写入所述存储器阵列。
28.权利要求27的方法,进一步包括:如果所述第一数据块和所述第二数据块中将被编程的位的数量之和不大于最大值,将所述第一和第二数据块并行地写入所述存储器阵列。
29.权利要求27的方法,其中所述第一和第二数据块是相邻数据块。
30.一种编程存储器阵列的方法,该方法包括:
将待写数据分为多个第一长度的第一数据块;
计算第一值,所述第一值是多个第一数据块的每个数据块中将被编程的位的数量;
计算第二值,所述第二值是多个第一数据块后续紧接的数据块中将被编程的位的数量;
计算第三值,所述第三值是所述第一和第二值之和;并且
如果所述第三值不大于最大允许并行编程的位的数量,并行地写所述第一数据块和后续紧接的数据块中将被编程的位。
31.权利要求30的方法,进一步包括:如果所述第三值大于所述最大允许并行编程的位的数量,并行地写所述第一数据块中将被编程的位。
32.权利要求31的方法,进一步包括:
将所述第一数据块和后续紧接的数据块转换为反数数据;
如果所述第三值大于所述最大允许并行编程的位的数量,并行地写所述反数数据中将被编程的位。
33.一种存储器电路,包括:
包括非易失性存储器器件的非易失性存储器阵列;
耦合到多个非易失性存储器阵列的电荷泵,所述电荷泵为所述非易失性存储器器件的编程供电;
耦合到多个非易失性存储器阵列的控制器,所述控制器包括用于计数一系列待写数据的数据块中将被编程的位的数量的装置,其中所述控制器产生第一值,所述第一值是将被并行地写的位的数量,其中所述第一值是第二值的整数倍,其中所述第二值是预定义值并且包括并行地被写的位的最小数量;
耦合在所述电荷泵和所述非易失性存储器阵列之间的开关,其中所述开关包括用于将计算所述第一值的总和的非易失性存储器器件的一部分与所述电荷泵耦合的装置。
34.权利要求33的存储器电路,其中所述控制器通过下述操作来产生第一值:
接收一系列数据块,每个数据块具有许多将被编程的位;
确定第一数据块中将被编程的位的数量;
确定第二数据块中将被编程的位的数量;并且
如果所述第一数据块和所述第二数据块中将被编程的位的数量之和大于最大值,将所述第一数据块中将被编程的位的数量指定为所述第一值。
35.权利要求34的存储器电路,其中所述第一和第二数据块是相邻数据块。
36.权利要求34的存储器电路,其中所述最大值由所述电荷泵的容量确定。
37.权利要求34的存储器电路,进一步包括:如果所述第一数据块和所述第二数据块中将被编程的位的数量之和不大于所述最大值,将所述第一和第二数据块中将被编程的位的数量指定为所述第一值。
CN200911000026.1A 2008-12-09 2009-12-09 非易失性存储器的编程 Expired - Fee Related CN101789266B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/331206 2008-12-09
US12/331,206 US8327062B2 (en) 2008-12-09 2008-12-09 Memory circuit and method for programming in parallel a number of bits within data blocks

Publications (2)

Publication Number Publication Date
CN101789266A true CN101789266A (zh) 2010-07-28
CN101789266B CN101789266B (zh) 2016-05-04

Family

ID=42168977

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200911000026.1A Expired - Fee Related CN101789266B (zh) 2008-12-09 2009-12-09 非易失性存储器的编程

Country Status (3)

Country Link
US (1) US8327062B2 (zh)
CN (1) CN101789266B (zh)
DE (1) DE102009057356A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105637588A (zh) * 2013-10-16 2016-06-01 桑迪士克3D有限责任公司 非易失性存储器中的重组循环和跳过循环
CN111477259A (zh) * 2019-01-24 2020-07-31 华邦电子股份有限公司 抹除方法

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5300496B2 (ja) * 2009-01-07 2013-09-25 パナソニック株式会社 半導体記憶装置、ホスト機器及び半導体記憶システム
US8947944B2 (en) 2013-03-15 2015-02-03 Sandisk 3D Llc Program cycle skip evaluation before write operations in non-volatile memory
US8947972B2 (en) * 2013-03-15 2015-02-03 Sandisk 3D Llc Dynamic address grouping for parallel programming in non-volatile memory
US20170229176A1 (en) * 2014-09-19 2017-08-10 Hitach, Ltd. Semiconductor storage device, and storage device using same
US9564215B2 (en) 2015-02-11 2017-02-07 Sandisk Technologies Llc Independent sense amplifier addressing and quota sharing in non-volatile memory
FR3083362B1 (fr) 2018-06-29 2021-08-06 St Microelectronics Alps Sas Procede de programmation d'un dispositif de memoire non volatile et dispositif de memoire non volatile correspondant
US10861564B2 (en) 2018-10-17 2020-12-08 Winbond Electronics Corp. Memory circuit and data bit status detector thereof

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1396599A (zh) * 2001-07-09 2003-02-12 富士通株式会社 在刷新操作过程中读取数据并能纠错的半导体存储器件
CN1639683A (zh) * 2002-03-07 2005-07-13 诺基亚有限公司 用于并行访问多个存储器模块的方法和设备
CN1971736A (zh) * 2002-04-25 2007-05-30 三洋电机株式会社 数据处理装置
US7242623B2 (en) * 2005-07-12 2007-07-10 Infineon Technologies Flash Gmbh & Co. Kg Non-volatile memory cell device, programming element and method for programming data into a plurality of non-volatile memory cells
KR100857252B1 (ko) * 2007-12-27 2008-09-05 (주)인디링스 마모도를 비트 수준에서 평준화하는 플래시 메모리 장치 및플래시 메모리 프로그래밍 방법

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5537350A (en) 1993-09-10 1996-07-16 Intel Corporation Method and apparatus for sequential programming of the bits in a word of a flash EEPROM memory array
US5907700A (en) * 1994-10-24 1999-05-25 Intel Corporation Controlling flash memory program and erase pulses
US5673224A (en) * 1996-02-23 1997-09-30 Micron Quantum Devices, Inc. Segmented non-volatile memory array with multiple sources with improved word line control circuitry
US6418059B1 (en) * 2000-06-26 2002-07-09 Intel Corporation Method and apparatus for non-volatile memory bit sequence program controller
US7549011B2 (en) * 2001-08-30 2009-06-16 Micron Technology, Inc. Bit inversion in memory devices
US6747893B2 (en) 2002-03-14 2004-06-08 Intel Corporation Storing data in non-volatile memory devices
JP2005116132A (ja) * 2003-10-10 2005-04-28 Toshiba Corp 不揮発性半導体記憶装置
KR100645047B1 (ko) * 2004-10-12 2006-11-10 삼성전자주식회사 불휘발성 메모리 장치 및 그것의 고속 프로그램 방법
US7280392B2 (en) 2005-01-26 2007-10-09 Infineon Technologies, Ag Integrated memory device and method for operating the same
US7724570B1 (en) * 2007-05-31 2010-05-25 Virage Logic Corporation Adaptive programming of memory circuit including writing data in cells of a memory circuit

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1396599A (zh) * 2001-07-09 2003-02-12 富士通株式会社 在刷新操作过程中读取数据并能纠错的半导体存储器件
CN1639683A (zh) * 2002-03-07 2005-07-13 诺基亚有限公司 用于并行访问多个存储器模块的方法和设备
CN1971736A (zh) * 2002-04-25 2007-05-30 三洋电机株式会社 数据处理装置
US7242623B2 (en) * 2005-07-12 2007-07-10 Infineon Technologies Flash Gmbh & Co. Kg Non-volatile memory cell device, programming element and method for programming data into a plurality of non-volatile memory cells
KR100857252B1 (ko) * 2007-12-27 2008-09-05 (주)인디링스 마모도를 비트 수준에서 평준화하는 플래시 메모리 장치 및플래시 메모리 프로그래밍 방법

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105637588A (zh) * 2013-10-16 2016-06-01 桑迪士克3D有限责任公司 非易失性存储器中的重组循环和跳过循环
CN105637588B (zh) * 2013-10-16 2018-08-21 桑迪士克科技有限责任公司 非易失性存储器装置进行编程的方法和系统
CN111477259A (zh) * 2019-01-24 2020-07-31 华邦电子股份有限公司 抹除方法
CN111477259B (zh) * 2019-01-24 2022-03-08 华邦电子股份有限公司 抹除方法

Also Published As

Publication number Publication date
CN101789266B (zh) 2016-05-04
US20100146189A1 (en) 2010-06-10
US8327062B2 (en) 2012-12-04
DE102009057356A1 (de) 2010-06-17

Similar Documents

Publication Publication Date Title
CN101789266A (zh) 非易失性存储器的编程
JP4763793B2 (ja) プログラムされるべきビットを予め定めるためのプログラミングウインドウおよびdc−dc変換器を使用する高性能のフラッシュメモリデバイス
US7796449B2 (en) Integrated circuit, method to program a memory cell array of an integrated circuit, and memory module
CN101000802B (zh) 存储器的操作方法及存储装置
US10249345B2 (en) Memories having select devices between access lines and in memory cells
KR20090020594A (ko) 스위치 소자를 갖춘 메모리 시스템
CN107204203A (zh) 一种存储器阵列及其读、编程和擦除操作方法
CN101847432A (zh) 存储器的供电结构
US20150255124A1 (en) Electrically erasable programmable read-only memory and storage array of the same
US20100271855A1 (en) Memory cell arrangements
KR20150118649A (ko) 데이터 스토리지 시스템에서의 스트로브 신호 성형방법 및 그에 따른 스트로브 신호 성형장치
US20120069668A1 (en) Semiconductor device
CN102298967B (zh) 双分离栅快闪存储器阵列的行译码电路及其驱动方法
US7920430B2 (en) Integrated circuits and methods for operating the same using a plurality of buffer circuits in an access operation
US10707751B2 (en) Electronic circuit including charge pump for converting voltage
CN102446555B (zh) 一种存储器及其使用方法
US8553456B2 (en) Flash memory device having improved read operation speed
CN102446556B (zh) 一种存储器及使用该存储器的方法
CN103366828B (zh) 存储器装置及其检测方法
CN111341366B (zh) 用于存储器装置的种子操作
US8274824B1 (en) High-performance CMOS-compatible non-volatile memory cell and related method
CN100492543C (zh) 半导体存储装置
EP1227499A1 (en) Non-volatile electrically alterable semiconductor memory
CN115101108A (zh) 一种基于fgmos管扩容的忆阻器存储阵列及工作方法
CN114203242A (zh) Nor型闪存编程电路

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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20160504

Termination date: 20201209

CF01 Termination of patent right due to non-payment of annual fee