存储器结构及其编程方法.pdf

上传人:1*** 文档编号:868881 上传时间:2018-03-16 格式:PDF 页数:24 大小:1.29MB
返回 下载 相关 举报
摘要
申请专利号:

CN200680013713.5

申请日:

2006.02.23

公开号:

CN101501781A

公开日:

2009.08.05

当前法律状态:

授权

有效性:

有权

法律详情:

授权|||实质审查的生效|||公开

IPC分类号:

G11C16/04

主分类号:

G11C16/04

申请人:

飞思卡尔半导体公司

发明人:

李驰楠

地址:

美国得克萨斯

优先权:

2005.4.28 US 11/116,614

专利代理机构:

中国国际贸易促进委员会专利商标事务所

代理人:

付建军

PDF下载: PDF下载
内容摘要

说明了一种存储器和对存储器件进行编程的方法。所述方法包括:选择要编程的单元(32),其中所述单元与位线耦接;施加第一编程脉冲(34),其中第一编程脉冲包括施加第一电压到所述位线;验证在施加第一编程脉冲之后所述单元是否被编程(36);以及如果在施加第一编程脉冲之后所述单元没有被编程,则在施加第一编程脉冲之后施加第二编程脉冲到所述位线,其中第二编程脉冲包括施加第二电压到所述位线,其中第二电压与第一电压不同。

权利要求书

1、  一种用于对存储器件进行编程的方法,该方法包括:
选择要编程的单元,其中所述单元与位线耦接;
施加第一编程脉冲,其中施加第一编程脉冲包括施加第一电压到所述位线;
验证在施加第一编程脉冲之后所述单元是否被编程;以及
如果在施加第一编程脉冲之后所述单元没有被编程,则在施加第一编程脉冲之后施加第二编程脉冲到所述位线,其中施加第二编程脉冲包括施加第二电压到所述位线,其中第二电压与第一电压不同。

2、
  如权利要求1所述的方法,其中第二电压小于第一电压。

3、
  如权利要求1所述的方法,其中施加第一编程脉冲和第二编程脉冲还包括施加第一编程脉冲和第二编程脉冲到所述单元的漏极。

4、
  如权利要求1所述的方法,还包括:
验证在施加第二编程脉冲之后所述单元是否被编程;以及
重复施加第二编程脉冲以及验证在施加第二编程脉冲之后所述单元是否被编程的步骤,直到所述单元被编程。

5、
  如权利要求1所述的方法,其中施加第一编程脉冲还包括施加第三电压到所述单元的源极,施加第二编程脉冲还包括施加第四电压到所述单元的源极,其中第四电压不同于第三电压。

6、
  如权利要求5所述的方法,其中第四电压大于第三电压。

7、
  如权利要求1所述的方法,其中施加第一编程脉冲还包括施加第五电压到所述单元的阱,施加第二编程脉冲还包括施加第六电压到所述单元的阱,其中第六电压不同于第五电压。

8、
  如权利要求7所述的方法,其中第六电压大于第五电压。

9、
  如权利要求1所述的方法,其中施加第一编程脉冲还包括施加第七电压到所述单元的栅极,施加第二编程脉冲还包括施加第八电压到所述单元的栅极,其中第八电压不同于第七电压。

10、
  如权利要求9所述的方法,其中第八电压大于第七电压。

11、
  一种用于对存储单元进行编程的方法,该方法包括:
在存储单元的源极处于第一电压电平而漏极处于第二电压电平的情况下施加第一编程脉冲到所述存储单元的漏极;以及
在施加第一编程脉冲之后,在所述存储单元的源极处于第三电压电平而漏极处于第四电压电平的情况下施加第二编程脉冲到所述存储单元的漏极,其中第三电压电平不同于第一电压电平,第四电压电平不同于第二电压电平。

12、
  如权利要求11所述的方法,其中第三电压电平大于第一电压电平,第四电压电平大于第二电压电平。

13、
  如权利要求11所述的方法,其中:
在所述存储单元的源极处于第一电压电平而漏极处于第二电压电平的情况下施加第一编程脉冲还包括耦接所述源极到具有第一电阻级别的电路和耦接所述漏极到具有第二电阻级别的电路;以及
在所述存储单元的源极处于第三电压电平而漏极处于第四电压电平的情况下施加第二编程脉冲包括耦接所述源极到具有第三电阻级别的电路和耦接所述漏极到具有第四电阻级别的电路,其中第三电阻级别不同于第一电阻级别,第二电阻级别不同于第四电阻级别。

14、
  如权利要求13所述的方法,其中第一电阻级别基本上与第二电阻级别相同,第三电阻级别基本上与第四电阻级别相同。

15、
  如权利要求13所述的方法,其中具有第一电阻级别的电路包括第一电阻器电路,具有第二电阻级别的电路包括第二电阻器电路,具有第三电阻级别的电路包括与第三电阻电路串联的所述第一电阻器电路,具有第四电阻级别的电路包括与第四电阻电路串联的所述第二电阻器电路。

16、
  如权利要求13所述的方法,其中第一电阻级别小于第三电阻级别,第二电阻级别小于第四电阻级别。

17、
  如权利要求11所述的方法,还包括:
在施加第二编程脉冲之后,在所述存储单元的源极处于第四电压电平而所述存储单元的漏极处于第五电压电平的情况下施加第三编程脉冲到所述存储单元的漏极。

18、
  如权利要求11所述的方法,其中施加第一编程脉冲还包括施加第九电压到所述存储单元的阱,施加第二编程脉冲还包括施加第十电压到所述存储单元的阱,其中第十电压大于第九电压。

19、
  如权利要求11所述的方法,其中施加第一编程脉冲还包括施加第十一电压到所述存储单元的栅极,施加第二编程脉冲还包括施加第十二电压到所述存储单元的栅极,其中第十二电压大于第十一电压。

20、
  一种存储器,包括:
具有多个存储单元的存储器阵列;
与所述多个存储单元的源极耦接的源极偏置电路,所述源极偏置电路被配置为:在施加编程脉冲到多个被编程的存储单元的漏极期间,提供多个源极偏置电压中的任何一个到所述多个存储单元的源极,在施加编程脉冲到所述多个存储单元中的存储单元的漏极期间,所述源极偏置电路响应于至少一个电压控制信号以提供多个源极偏置电压中由所述至少一个电压控制信号表示的所希望的源极偏置电压到所述多个存储单元的源极;以及
与所述多个存储单元的漏极耦接的漏极偏置电路,所述漏极偏置电路被配置为:在施加编程脉冲到多个被编程的存储单元的漏极期间,提供多个漏极偏置电压中的任何一个到所述多个存储单元的漏极,在施加编程脉冲到所述多个存储单元中的存储单元的漏极期间,所述漏极偏置电路响应于至少一个电压控制信号以提供多个漏极偏置电压中由所述至少一个电压控制信号表示的所希望的漏极偏置电压到所述多个存储单元中的存储单元的漏极。

说明书

存储器结构及其编程方法
技术领域
本发明总体上涉及半导体器件,更具体地,涉及存储器件,比如非易失性存储器件。
背景技术
为了提高器件的运行速度,不断地缩小其尺寸。例如,基于非易失性存储器件的浮置栅极的沟道长度缩短了。由于编程电压保持不变,在所述沟道长度缩短时,短沟道行为在编程期间会成为问题。一般地,为了对一个选定器件进行编程,向该选定器件的位线施加高漏电压(Vd)而对字线施加栅电压(Vg)。因为未被编程的其它器件(未选定器件)也被耦接到所述选定器件的位线,而与其耦接的字线的栅电压Vg为零,所述未选定器件发生漏感应势垒降低(DIBL,DrainInduced Barrier Lowering)。DIBL在向所选定位线施加高Vd的编程期间使未选定器件的阈值电压(Vt)降低并引起高的列泄漏。
此外,当非易失性存储器件被缩小时,隧道氧化物的厚度也变薄了。这种氧化物厚度的变薄增加了读取干扰或来自低Vt状态的低温日期保持(LTDR,Low temperature Date Retention)。一个降低LTDR的解决方法是降低所述器件的自然紫外光Vt。但是,短沟道效应,比如DIBL在降低了自然紫外光Vt时会更严重。结果,列泄漏变得更大,其负面地影响了编程效率和时间。
所以,需要一种减少LTDR且不降低编程效率的编程方法。
附图说明
通过举例来说明本发明,附图不是对本发明的限制,附图中,相似附图标记表示相似的元件。
图1图示了根据本发明的一个实施例的可以被用于编程的存储器阵列的一部分;
图2的流程图图示了根据本发明的一个实施例的可以用于编程一个单元,比如图1中的一个单元的方法;
图3-5图示了根据本发明的实施例,各种电压如何在不同的编程脉冲期间变化;
图6图示了根据本发明的一个实施例的电路的一部分;以及
图7的流程图图示了根据本发明的一个实施例的可以与图2的方法结合用于编程图6的电路的方法;
普通技术人员理解附图中的元件的绘制是为了简洁和清晰并没有必要按比例绘制。例如,附图中的一些元件的尺寸可能相对其它元件过大,这是为了帮助提高对本发明的实施例的理解。
具体实施方式
我们没有通过改变器件尺寸来避免DIBL,而是改变了编程过程。使用多步骤编程过程来解决所述DIBL效应并且来保持编程效率。在一个实施例中,不同步骤的编程脉冲是不同的,因为在每一个步骤中施加的阱电压和漏电压具有不同的值。在其它实施例中,编程脉冲的不同是因为在所述编程过程的每一个步骤中施加的栅电压、漏电压、源电压和阱电压,或上述电压的结合具有不同的值。
图1图示了存储单元阵列10的示例部分。存储单元阵列10包括单元或器件22-27。单元22-24中的每一个具有耦接到位线18的漏极,单元25-27中的每一个具有耦接到位线20的漏极。单元22和25中的每一个的栅极耦接到字线16,单元23和26中的每一个的栅极耦接到字线14,单元24和27中的每一个的栅极耦接到字线12。用于单元22到27中的每一个的源极与地线耦接。
如果使用现有技术来对例如单元23编程,在单元22和24中会有高电流泄漏。例如,为了使用传统方法对单元23编程,向位线18施加电压并向字线14施加电压。没有向字线12和16施加电压,所以这些字线上的电压等于零。由于单元22和24通过其漏极与位线18和字线12耦接而没有被施加电压,单元22和24会发生DIBL。所述DIBL效应在编程期间使用于所述单元的擦除的阈值电压下降并引起高的列泄漏,使在位线18上的电压降低。
为了避免现有技术的上述问题,使用多步骤编程方法来对单元23进行编程。可能使用任意数量的编程步骤。在一个实施例中,所述多步骤编程方法包括两个编程步骤。第一步施加获取高编程速度的第一编程脉冲,第二编程脉冲将对发生DIBL的任何不正常(erratic)位线进行编程。第二(以及可选的其它的)编程脉冲不影响阵列中的整体编程速度。如果执行两个以上的编程步骤,其它编程步骤(例如3、4、5等)将与第二编程脉冲相似且与第二编程脉冲起同样的作用。参考图2的流程图可以更好地理解对单元23的编程。
图2是图示了用于运行存储器,比如图1中的存储器10来获得有效的编程的方法30的流程图,包括步骤32、34、36、38、40、41、42和43。首先,选择要被编程的单元或器件,其中所述单元与位线与字线耦接(步骤32)。例如,可以选择图1中的单元23来进行编程。(尽管实际上会同时对很多单元编程,为了说明的简便,描述只对一个单元编程)。在选择单元23(步骤32)之后,向所述位线和字线施加第一编程脉冲(步骤34)。在一个实施例中,第一编程脉冲也被提供到所述单元的栅极和阱。在一个实施例中,第一编程脉冲是用于热载流子注入(HCI)编程的脉冲。例如,所述栅电压(Vg)可以是从5到10V,比如8.5V;所述漏电压(Vd)可以是从4到5V;所述源电压(Vs)和所述阱电压(Vwell)可以是从0到-2V。由于半导体技术的不断改进导致沟道长度和栅极电介质的尺寸越来越小,这些电压很可能下降。通过使用HCI编程电压,可以获得对所述单元的高编程速度,所述单元是由此步骤(没有其它编程步骤)来编程的。仅使用HCI编程电压应该可以对阵列中的大多数单元进行编程。
在施加第一编程脉冲(步骤34)之后,进行验证来确定(步骤36)选定的单元是否已被编程。可以使用读出放大器来检测单元23的状态,也可以使用控制电路来确定对单元23的编程是否充分。如果选定单元已被编程,则翻转(flip)数据缓冲器(步骤42)然后该方法结束(步骤43)。如果在施加第一编程脉冲之后选定单元被编程,则此位线的DIBL效应不存在或最小。但是,如果此位线的DIBL效应影响了编程,所述单元将不会被编程。
如果没有对选定单元编程,施加第二编程脉冲(步骤38)到所述位线和字线,其中至少一个编程电压和第一编程脉冲不同。第二编程脉冲是低编程速度过程,其用于编程位于包含不正常单元的位线中的单元,所述不正常单元比普通(average)单元具有不正常的更小的沟道长度。所述单元可能具有不正常的更小的沟道长度,这是因为所述长度可以随着处理变化而变化。由于仅有少数几个单元将要求此第二编程脉冲,整体编程速度没有受到影响。在一个实施例中,向源极、漏极、栅极、阱或上述的任何结合施加不同的编程电压。在一个实施例中,在第二编程脉冲期间的编程电压全都不同于第一编程脉冲期间的编程电压;因此,向源极、漏极、栅极和阱施加的编程电压可以是不同的。在这种实施例中,其中第一编程脉冲使用HCI编程条件(Vg=8.5,Vd=5,Vs=0,且Vwell=0到-0.5)向源极、漏极、栅极和阱施加编程电压,第二编程脉冲条件可以被设置为施加更高的阱势,降低漏电压,这样列泄漏被切断。例如,第二编程脉冲条件可以是Vg=8.5V,Vs=0,Vd=3.3V,且Vwell=-1.5V,这样使用了具有阱偏压的第二电子注入。随着半导体技术的不断改进导致沟道长度和栅极电介质的尺寸越来越小,这些电压很可能下降。在一个实施例中,源电压、漏电压、或前述二者的第二编程脉冲可以使用电阻器来降低,如下面参照图6所描述的一样。
在进一步说明之后会理解,方法30包括重复过程。如参照图7所描述的,使用电阻器来降低电压是确定何时即使选定单元没有被编程也停止施加编程脉冲的一种方式。或者,万一出现所述单元从未被编程,可以使用其它方法来终止此方法。例如,可以设置预定的时间或周期数目。如果没有满足这些条件,所述方法可以跳过而直接到完成过程(步骤43)以避免永不终止过程。
在施加第二编程脉冲(步骤38)之后,进行验证来确定(步骤40)选定的单元是否已被编程。如果该单元已被编程,则翻转数据缓冲器(步骤42)然后结束该方法(步骤43)。
如果,相反,选定单元没有被编程,则改变第二编程脉冲的至少一个编程电压的值(步骤41)。在改变第二编程脉冲的至少一个编程电压的值(步骤41)之后,如果选定单元已被编程,则重复施加第二编程脉冲(步骤38)和验证(步骤40)的步骤。因此,每当执行编程步骤时,所述至少一个编程电压相对于前面的编程步骤发生变化。例如,漏电压可以降低,阱电压可以变得更负(more negative)(降低),源电压可以升高,栅电压可以升高,或上述情况的结合。图3-5图示了在每一个编程步骤期间不同的电压是如何变化的。
图3图示了在编程期间漏电压是如何变化的(若有变化的话)。Y轴70是漏电压(Vd),以伏特表示,X轴72是时间。元素74是第一编程脉冲,元素76是第二编程脉冲,而元素78是第三编程脉冲。尽管可以执行任意数量的编程脉冲,图中示出了三个编程脉冲作为例子。在每一个编程脉冲之间是验证75。如果漏电压值相对于不同的编程脉冲变化,则所述值应当随着每一个编程脉冲降低。在一个实施例中,第一编程脉冲74为4.5到5.5V,第二编程脉冲76为4到4.5V,而第三编程脉冲78为3.5到4V。降低漏电压是为了减少随后编程脉冲中的列泄漏。降低漏电压避免了一般在6到7伏特发生的结击穿。
图4图示了在编程期间阱电压是如何变化的(若有变化的话)。Y轴80是阱电压(Vw),以伏特表示,X轴82是时间。因为阱电压是负值,Y轴只沿负方向显示。元素84是第一编程脉冲,元素86是第二编程脉冲,而元素88是第三编程脉冲。尽管可以执行任意数量的编程脉冲,图中示出了三个编程脉冲作为例子。在每一个编程脉冲之间是验证85。如果阱电压值相对于不同的编程脉冲变化,则所述值应当随着每一个编程脉冲降低(更负了,即使所述电压的绝对值在增加)。在一个实施例中,第一编程脉冲84为0到-0.5V,第二编程脉冲86为-0.5到-1V,而第三编程脉冲88为-1到-2V。阱电压在某一点将最终稳定下来,这是因为阱电压的任何升高将增加结击穿。但是,仅因为阱电压不应该进一步提高并不意味着编程脉冲停止。阱电压可以停止升高,但是其它电压,比如栅电压可以发生变化。因此,在图7的方法50中(下面将具体说明),阱电压可以在达到步骤62中的最终计数之前停止升高。在一个实施例中,阱电压将稳定在-2V。阱电压升高的幅度(绝对值)在施加编程脉冲时减少了列泄漏。
图5图示了在编程期间源极或栅电压是如何变化的(若有变化的话)。Y轴90是以伏特表示的源电压(Vs)或以伏特表示的栅电压(Vg),X轴92是时间。元素94是第一编程脉冲,元素96是第二编程脉冲,且元素98是第三编程脉冲。尽管可以执行任意数量的编程脉冲,图中所示的三个编程脉冲只是作为例子。在每一个编程脉冲之间是验证95。如果栅电压或源电压值相对于不同的编程脉冲变化,则所述值应当随着每一个编程脉冲升高。在一种对于源电压的实施例中,第一编程脉冲94为0到0.5V,第二编程脉冲96为0.5到1V,而第三编程脉冲98为1到1.5V。在一种对于栅电压的实施例中,第一编程脉冲94为7到8V,第二编程脉冲96为8到8.5V,而第三编程脉冲98为8.5到9.5V。源电压升高的幅度在施加编程脉冲时减少了列泄漏,就像阱电压一样。升高的栅电压补偿了改变源电压、阱电压、漏电压和这些电压的结合时发生的编程速度的损失。
图6图示了根据本发明的一个实施例的一种存储器的部分。此实施例包括用来改变编程脉冲的电阻器。更具体地,可以使用电阻器来改变漏极、源极或前述二者的电压。图3中详细地图示了I/O块的一部分114、源极控制电路148、第一晶体管158、漏极控制电路248和第二晶体管258。所述I/O块的部分包括存储单元160、162、164和166;位线174和178;以及源极线172和176。源极控制电路148包括晶体管180、182、184和186以及电阻器188、190和192。漏极控制电路248包括晶体管280、282、284和286以及电阻器288、290和292。存储单元160和164的漏极与位线174连接。存储单元162和166的漏极与位线178连接。存储单元160和164的源极与源极线172连接。存储单元162和166的源极与源极线176连接。存储单元160和162的控制栅极与字线168连接。存储单元164和166的控制栅极与字线170连接。在一个实施例中,源极线172和176互相连接。I/O块114具有用于块114中的器件的公共阱,这样如果所述阱电压相对于I/O块114中的其中一个单元发生变化,它对于其它I/O块114中的所有单元也发生了改变。
进一步来说明图6,晶体管180具有与源极线172和176连接的漏极、与编程信号P连接的栅极以及源极。电阻器188具有与晶体管180的源极连接的第一端子,以及第二端子。晶体管182具有与电阻器188的第二端子连接的漏极、与地线连接的源极和用于接收编程信号P1的栅极。电阻器190具有与电阻器188的第二端子连接的第一端子,以及第二端子。晶体管184具有与电阻器190的第二端子连接的漏极、与地线连接的源极和用于接收编程信号P2的栅极。电阻器192具有与电阻器190的第二端子连接的第一端子,以及第二端子。晶体管186具有与电阻器192的第二端子连接的漏极、与地线连接的源极和用于接收编程信号P3的栅极。晶体管158具有与源极线172和176连接的漏极、与地线连接的源极和用于接收READ ENABLE(允许读取)信号的栅极。晶体管158是许多晶体管的代表晶体管,其作为连接到位于存储器阵列中的其它位置的源极线的阵列的一部分,用于在存储器的读取操作期间将所述源极线耦接到地线。READENABLE信号和信号P、P1、P2和P3由控制电路(未图示)生成。
晶体管280具有通过解码器电路控制块281连接到位线174和178的漏极、连接到编程信号P的栅极以及源极。电阻器288具有与晶体管280的源极连接的第一端子,以及第二端子。晶体管282具有与电阻器288的第二端子连接的漏极、与VD连接的源极和用于接收编程信号P1的栅极。电阻器290具有与电阻器288的第二端子连接的第一端子,以及第二端子。晶体管284具有与电阻器290的第二端子连接的漏极、与VD连接的源极和用于接收编程信号P2的栅极。电阻器292具有与电阻器290的第二端子连接的第一端子,以及第二端子。晶体管286具有与电阻器292的第二端子连接的漏极、与VD连接的源极和用于接收编程信号P3的栅极。晶体管258具有与位线174和178连接的漏极、与VD连接的源极和用于接收READ ENABLE(可读取)信号的栅极。晶体管258是许多晶体管的代表晶体管,其作为连接到位于存储器阵列中的其它位置的位线的阵列的一部分,用于在存储器的读取操作期间将所述漏极线耦接到Vread。READ ENABLE信号和信号P、P1、P2和P3由控制电路(未图示)生成。
在图6所示的实施例中,源极控制电路148和漏极控制电路248相似,因为它们每一个都使用三个电阻器。但是,可以使用任意数目的电阻器。源极控制电路148和漏极控制电路248所使用的电阻器数量不需要相同。此外,可以只使用源极控制电路148或漏极控制电路248。另外,图6只是可以使用的一个方法的例子。可以使用用于施加电压到源极和漏极的任何其它方法。
图7图示了用于运行图3的存储器以获得有效编程的方法50的一部分的流程图,包含步骤52、56、58、60、62和64。在一个实施例中,方法50可以用于图2的方法30中。方法50是图2的步骤41的一个实施例(改变编程电压的值(步骤41))。如图4所示,如果在步骤40中发现选定单元未被编程,通过将方法30作为步骤41使得步骤52在步骤40之后,方法50可以和图3的方法30结合。为了完整,方法30和方法50的结合将根据图3中存储器的运行来说明。
如图2的步骤32中所示,该过程通过选择要被编程的单元并初始化一些设置开始。然后施加第一编程脉冲(步骤34)到所述单元,如根据图2所说明的。接下来,执行验证(步骤36)以确定选定的单元是否被编程。如果已经对所述单元编程,则翻转数据缓冲器(步骤42)然后过程终止(步骤34)。
如果没有对所述单元编程,执行第二编程脉冲(步骤38)。在执行第二编程脉冲之前,第二编程脉冲的次数(周期)的总数量被初始设置了。因为还没有执行周期,总计数(Total Count)被设置为0(零)。在此过程中,多个编程周期将使用不同的电阻,所述不同的电阻可以按级(step)递增,使得电阻的每一级表示为Rx。在一种具体说明的实施例中,Rx将是Rd,但Rx也可以是Rs,如在后面会详细说明的。因此,尽管此过程是根据使用漏极控制电路248改变漏电压来说明的,相同的过程可以用于使用漏极控制电路248改变源电压。
设置要使用的第一电阻,这样Rd=1为用于Rd的初始设置。同样,对于每一个电阻级会有最大编程周期的设置数量。开始时,对于包括第一级的任何级没有编程周期,结果Rd计数=0作为初始设置。在实际操作中,在选择要编程的单元的同时,很多其它单元也一起被选择了,一般从每一个I/O块选择一个单元,在此情况下,数量多达64个。在这64个中,只有那些被从擦除状态改变的才被编程。结果,64个单元中的许多单元很可能预期保持在擦除状态,其一般被认作是一(1)状态,与被认作是零(0)状态的已编程状态相区别。同样,预期处于“0”状态的一些单元可能已经处于此状态。因此,对于任何给定的编程周期,实际编程可以在从无存储单元到64个存储单元之间的任何位置。当所有单元已经处于要被写入的情况时,出现没有单元被编程的情形。当所有存储单元处于擦除(一)状态且要写入全零条件时,出现对所有64个单元编程的情形。
在已经确定具体的需要被编程的单元,比如图6的单元160,且设置了初始条件之后,通过位线174向所述单元的漏极施加第二编程脉冲,同时,所述单元的栅极通过字线168也处于升高的电压。可以使用前面关于图2的步骤38讨论的电压。在向位线174施加脉冲期间,晶体管284和286是不导电的。在这些初始条件下,传统控制逻辑(未图示)在逻辑高状态时提供信号P和P1到漏极控制电路248中,而在逻辑低状态时提供信号P2和P3到漏极控制电路248中,READ ENABLE信号258被保持在逻辑低状态下以进行编程,这样晶体管258在编程期间是不导电的。这具有与整个阵列的源极串联的电阻器288的效果。电阻器288具有相对较低的电阻,例如250ohms(欧姆),这样通过此电阻器时电压下降相对较小,因此没有明显升高源或漏电压。如果与位线274连接的其它存储单元没有太多泄漏,这对于充分编程存储单元很有效。如果其它单元,比如存储单元164,确实有很明显的泄漏,那么因为电源的载入以及与I/O块114关联的寄生电阻,将会有降低施加到位线174上的电压的作用。
然后下一步,即图2的步骤40,用来确定单元160是否已被编程。受源极控制电路148控制的读出放大器(未图示)检测单元160的状态,这样源极控制电路148能够确定对单元160的编程是否充分。如果是,则在数据缓冲器中将数据翻转如步骤42中所示,然后完成编程如步骤43所示。另一方面,如果单元160被认为未被编程,则总计数递增且Rd计数递增,如图4的步骤52所示。
接下来,在步骤56,编程周期的总计数与最大的允许的编程周期数相比较。当然,第一次提出此步骤56的标准时,该标准不会被满足,所以答案为否,然后下一步会是步骤60。如果在其它编程周期之后,满足了步骤56的此标准,则这被认为是错误(步骤58),编程周期完成(步骤43)。如果这在产品被实际销售之前的试验阶段被完成,则被认为故障,所述器件会被抛弃。传统控制逻辑(未图示)具有作出此决定需要的所有信息。
对于步骤56的标准没被满足的情况,之后确认是否当前Rd是最后的Rd,如步骤60所示。如果它是最后Rd,则下一步,通过转到步骤38去执行另一个第二编程脉冲。如果当前Rd不是最后一级,则在下一步,步骤62,确定是否已经执行了在此Rd级别的最大级数。在第一次解决此问题的情况下,第一步骤往往是使用第一电阻级(电阻器288的电阻)的唯一步骤。这样编程步骤的数量在Rd=1时很可能只是1。结果,Rd计数1将匹配Rd最后数,很可能为一。在这样的情况下,下一步骤是步骤64。在没有达到此Rd级别的编程步骤的数量的其它情况下,下一步将重复步骤38,即施加第二编程脉冲到选定单元的位线。
因此,如果Rd计数匹配Rd最后数,执行步骤64以递增Rd并转移到下一个Rd。通过此递增步骤,Rd=2被执行,Rd计数被设置为零。通过Rd=2,该效应对于在漏极控制电路248中的信号P和P2处于逻辑高状态,而对于在漏极控制电路248中的信号P1和P3处于逻辑低状态。漏极电阻(在此上下文中,漏极电阻是与所述存储器阵列中的晶体管的共同连接的漏极耦接的电阻)因此成为电阻器290的漏极电阻加上电阻器288的漏极电阻。电阻器290优选地明显比电阻器288电阻高,例如2000欧姆。将电阻器290的电阻设计为提供充分的电阻来升高所述漏电压使得在编程期间在位线174上的典型的低阈值电压器件成为不导电的。如果初次尝试时,所述单元没有被编程,就认为当时在位线174上存在低阈值电压晶体管,其提供了足够的电流泄漏,从而妨碍了对单元160的成功编程。在执行在Rd=2的编程步骤之后,下一步是确定所述单元是否被成功编程。如果是,则在数据缓冲器30中将数据翻转,完成对此单元160的编程。
如果单元160没有被充分编程,则将总编程计数和最后计数比较。如果是,则此被认为是出错,并且如果在试验阶段的话,所述器件会被抛弃。如果还没有达到总编程计数,下一步是确定Rd是否处于最后级别。如果是,则下一步是重复在所述Rd的第二编程脉冲步骤38。如果否,刚下一步确定是否已经执行了在所述Rd的最大数目的编程步骤。如果否,这在此情况下很可能发现,则下一步在相同Rd级别即Rd=2对所述单元再次编程。对于编程更慢的单元要用更高的源极电阻,所以很有可能所述单元在此Rd级别将要求多于仅一次的编程周期。另一方面,如果对于Rd=2的编程周期的最大数量已经达到,则下一步是递增Rd到Rd=3且使Rd计数=0。
这样,编程过程以这种方式继续,直到对每一个单元完成编程或已经执行了最大数量的编程步骤。因此,使用更高电阻的相当慢的方法只有在必要的时候才做。统计表明,在更低的源极电阻状态可以对数量大很多的单元编程。因此,使用高速方法可以实现绝大多数的编程。在试验时期,这尤其重要。如果,例如,如已经发现的,用在低电阻状态下的源极电阻器可以仅用一次脉冲可以实现99%的编程,则只有1%需要一次以上的脉冲。如果更高的电阻用于所有的单元,则用于所有这些单元的编程时间会延长两倍或更多倍。
此方法是对于源极电阻有三种可能选择的情况作出的说明。也可以有两个或两个以上的电阻值。如果只有两个电阻值,则简化所述方法,因为能更简单地了解哪个电阻正在被使用以及对于每一个电阻允许多少个编程脉冲。优选两个,除非要求三个或三个以上。还有,一般来说,如果总共三次脉冲还不能对一个存储单元编程,则该存储单元是有缺陷的。
所述技术使用电阻器,其确实提供了一些帮助来在所述阵列晶体管的源极上获得所需要的偏压。但是,所需要的偏压可以通过其它方法比如有源偏置电路来实现。所述有源偏置电路在相对较低的电压下提供漏极(或源极,其中Rx是Rs)偏压,以进行第一次试编程,然后提供高一些的偏压以提供所需的用于那些在位线上具有过度泄漏的单元的编程。
此外,方法30和50被描述为施加漏电压。但是,可以使用相同的过程来使用与漏极控制电路248类似(mirror)的源极控制电路148施加源电压。因此,方法50可以同时用于源极控制电路148和漏极控制电路248;或者,方法50可以用于源极控制电路148或漏极控制电路248。
在一个实施例中,描述了一种对存储器件进行编程的方法,其中所述方法包括:选择要编程的单元,其中所述单元与位线耦接;施加第一编程脉冲,其中第一编程脉冲包括施加第一电压到所述位线;验证在施加第一编程脉冲之后所述单元是否被编程;以及如果在施加第一编程脉冲之后所述单元没有被编程,在施加第一编程脉冲之后施加第二编程脉冲到所述位线,其中第二编程脉冲包括施加第二电压到所述位线,其中第二电压和第一电压不同。在一个实施例中,第二电压小于第一电压。在一个实施例中,施加第一编程脉冲和第二编程脉冲还包括施加第一编程脉冲和第二编程脉冲到所述单元的漏极。在一个实施例中,所述方法还包括验证在施加第二编程脉冲之后所述单元是否被编程,以及重复施加第二编程脉冲并验证在施加第二编程脉冲之后所述单元是否被编程,直到所述单元被编程。在一个实施例中,施加第一编程脉冲还包括施加第三电压到所述单元的源极,并且施加第二编程脉冲还包括施加第四电压到所述单元的源极,其中第四电压不同于第三电压。在一个实施例中,第四电压大于第三电压。在一个实施例中,施加第一编程脉冲还包括施加第五电压到所述单元的阱,并且施加第二编程脉冲还包括施加第六电压到所述单元的阱,其中第六电压不同于第五电压。在一个实施例中,第六电压大于第五电压。在一个实施例中,施加第一编程脉冲还包括施加第七电压到所述单元的栅极,并且施加第二编程脉冲还包括施加第八电压到所述单元的栅极,其中第八电压不同于第七电压。在一个实施例中,第八电压大于第七电压。
在一个实施例中,一种用于对存储单元进行编程的方法包括:在存储单元的源极处于第一电压电平而漏极处于第二电压电平的情况下施加第一编程脉冲到所述存储单元的漏极;以及在施加第一编程脉冲之后,在所述存储单元的源极处于第三电压电平而漏极处于第四电压电平的情况下,施加第二编程脉冲到所述存储单元的漏极,其中第三电压电平不同于第一电压电平,第四电压电平不同于第二电压电平。在一个实施例中,第三电压电平大于第一电压电平,第四电压电平大于第二电压电平。在一个实施例中,在所述存储单元的源极处于第一电压电平而漏极处于第二电压电平的情况下施加第一编程脉冲还包括耦接所述源极到具有第一电阻级别的电路和耦接所述漏极到具有第二电阻级别的电路,并且在所述存储单元的源极处于第三电压电平而漏极处于第四电压电平的情况下施加第二编程脉冲包括耦接所述源极到具有第三电阻级别的电路和耦接所述漏极到具有第四电阻级别的电路,其中第三电阻级别不同于第一电阻级别,第二电阻级别不同于第四电阻级别。在一个实施例中,第一电阻级别基本上与第二电阻级别相同,第三电阻级别基本上与第四电阻级别相同。在一个实施例中,具有第一电阻级别的电路包括第一电阻器电路,具有第二电阻级别的电路包括第二电阻器电路,具有第三电阻级别的电路包括与第三电阻电路串联的第一电阻器电路,具有第四电阻级别的电路包括与第四电阻电路串联的第二电阻器电路。在一个实施例中,第一电阻级别小于第三电阻级别,第二电阻级别小于第四电阻级别。在一个实施例中,所述方法还包括在施加第二编程脉冲之后,在所述存储单元的源极处于第四电压电平而漏极处于第五电压电平的情况下施加第三编程脉冲到所述存储单元的漏极。在一个实施例中,施加第一编程脉冲还包括施加第九电压到存储单元的阱,施加第二编程脉冲还包括施加第十电压到存储单元的阱,其中第十电压大于第九电压。在一个实施例中,施加第一编程脉冲还包括施加第十一电压到存储单元的栅极,施加第二编程脉冲还包括施加第十二电压到存储单元的栅极,其中第十二电压大于第十一电压。
在一个实施例中,一种存储器包括:包含多个存储单元的存储器阵列;所述多个存储单元的源极耦接的源极偏置电路,所述源极偏置电路被配置为:在施加编程脉冲到多个被编程的存储单元的漏极期间,提供多个源极偏置电压中的任何一个到所述多个存储单元的源极,在施加编程脉冲到多个存储器的存储单元的漏极期间,所述源极偏置电路响应于至少一个电压控制信号以提供多个源极偏置电压中由该至少一个电压控制信号表示的所希望的源极偏置电压到所述多个存储单元的源极;以及与多个存储单元的漏极耦接的漏极偏置电路,所述漏极偏置电路被配置为:在施加编程脉冲到多个被编程的存储单元的漏极期间,提供多个漏极偏置电压中的任何一个到所述多个存储单元的漏极,在施加编程脉冲到多个存储单元的存储单元的漏极期间,所述漏极偏置电路响应于至少一个电压控制信号以提供多个漏极偏置电压中由该至少一个电压控制信号表示的所希望的漏极偏置电压到所述多个存储单元中的存储单元的漏极。
由于实施本发明的装置大部分由本领域普通技术人员所知的电子元件和电路构成,除了上面对被认为必要的内容作出的说明,对电路细节就不再作进一步具体说明,以便于对本发明的根本概念的理解和评价以及为了不模糊和分散本发明的阐述。
在上述的说明中,根据具体的实施例描述了本发明。但是,任何一个本领域普通技术人员会理解:在不脱离所附权利要求书提出的本发明的范围的前提下,可以作出各种修改和变动。例如,可以用多个编程步骤来使编程Vt分配变紧,能够实行多位存储或每单元2位类型的应用。因此,应当理解,说明书和附图为说明性的而不是限制性的,以及所有的这样的修改应当被涵盖在本发明的范围中。
已经根据具体的实施例说明了本发明的益处、其它优点和问题的解决方案。但是,所述益处、优点、问题的解决方案以及可以引起任何益处、优点或解决方案发生或变得更加明确的任何元素将不会被认为是任何或所有的权利要求的重要的、所要求的或基本特征或元素。如在此所使用的,术语“包括(comprise)”、“包括(comprising)”或任何其它变化要用于涵盖非排它性的包括比如包括一系列元素的过程、方法、物品或装置不仅包括这些元素,还可以包括其它没有表示的列出的其它元素或这样的过程、方法、物品或装置所固有的元素。在此使用的术语“一个(a)”或“一个(an)”是指一个或多于一个。在此使用的术语“多个”是指两个或两个以上。在此使用的术语“另一个”是指至少第二个或更多。在此使用的术语“耦接”是指被连接,尽管不一定是直接连接,也不一定是机械连接。

存储器结构及其编程方法.pdf_第1页
第1页 / 共24页
存储器结构及其编程方法.pdf_第2页
第2页 / 共24页
存储器结构及其编程方法.pdf_第3页
第3页 / 共24页
点击查看更多>>
资源描述

《存储器结构及其编程方法.pdf》由会员分享,可在线阅读,更多相关《存储器结构及其编程方法.pdf(24页珍藏版)》请在专利查询网上搜索。

说明了一种存储器和对存储器件进行编程的方法。所述方法包括:选择要编程的单元(32),其中所述单元与位线耦接;施加第一编程脉冲(34),其中第一编程脉冲包括施加第一电压到所述位线;验证在施加第一编程脉冲之后所述单元是否被编程(36);以及如果在施加第一编程脉冲之后所述单元没有被编程,则在施加第一编程脉冲之后施加第二编程脉冲到所述位线,其中第二编程脉冲包括施加第二电压到所述位线,其中第二电压与第一电压。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 信息存储


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1