集成电路与其相关的方法与流程

文档序号:11834666阅读:240来源:国知局
集成电路与其相关的方法与流程

本发明是有关于一种基于电阻式存储器装置的高密度存储单元阵列,且特别是有关于电阻式存储器装置的验证架构。



背景技术:

电阻式存储器(Resistive random access memory,简称为RRAM或ReRAM)是非挥发性存储器的一种。电阻式存储器包含的金属氧化材料(metal oxide material)的电阻值,会因为在集成电路内,被施加合适电平的电气脉冲的缘故,而在两个或以上的稳定电阻值范围间改变。电阻值可通过随机存取的方式而被读取或写入。耦接至存储单元(memory cell)的存取线(line)亦连接至用于进行如设定(SET)操作与重置(RESET)操作的电路。其中,SET操作与RESET操作会改变存储器元件的状态,进而存储或抹除数据。

若未能成功存储数据,现有技术会强化操作条件,例如使用强度较强及/或期间较长的操作脉冲。然而,此种强化操作条件的作法,会使存储器元件承受压力与损坏存储器元件,进而使装置的可靠度因为经过重复使用而降低。

为了减少存储器元件所承受的压力与损坏,亟需开发用于电阻式存储器的新验证架构。



技术实现要素:

本案技术的不同实施例中,不需要在编程验证操作失败后增加后续脉冲的强度才能使编程能成功。由于不需要增加脉冲强度的关系,让存储器装置承受较少的压力,并能提升存储器装置的可靠度。在编程验证操作失败的情况下,本案技术的不同实施例会在编程验证操作失败之后、后续编程脉冲之前,对存储单元件施加与编程脉冲极性相反的脉冲。

根据本发明的一方面,提出一种集成电路,包含:一可编程控制元件,包含金属氧化物;以及一电路,耦接至该可编程控制元件,该电路用于执行一编程-验证操作。

编程-验证操作包含(i)一编程操作与一验证操作的一初始周期,以及(ii)在该初始周期后,于该可编程控制元件的该存储单元电阻值不在该电阻值的目标范围内时,重复进行在该验证操作后接续的至少一后续周期。

初始周期所包含的一初始编程操作,用于建立该可编程控制元件的一存储单元电阻值(cell resistance)。该初始编程操作包含将具有一第一极性的一初始编程脉冲施加至该可编程控制元件。初始周期所包含的一初始验证操作,用于判断该可编程控制元件的该存储单元电阻值是否介于一电阻值的目标范围内。

重复进行接续在该验证操作后的至少一后续周期,直到该可编程控制元件的该存储单元电阻值介于该电阻值的目标范围内。该至少一后续周期包含:施加具有一第二极性的一附加脉冲至该可编程控制元件。该初始编程脉冲的该第一极性以及该附加脉冲的该第二极性彼此反向。该至少一后续周期包含进行一后续编程操作,包含将具有该第一极性的一后续编程脉冲施加至该可编程控制元件。该至少一后续周期包含进行一后续验证操作,用于判断该可编程控制元件的该存储单元电阻值是否介于该电阻值的目标范围内。

在集成电路的部分实施例中,该至少一后续周期重复执行,直到该可编程控制元件的该存储单元电阻值介于该电阻值的目标范围内,或是执行该编程操作与该验证操作的周期达到一最大数量。

在集成电路的部分实施例中,该初始编程脉冲与该后续编程脉冲为重置脉冲。在集成电路的部分实施例中,该初始编程脉冲与该后续编程脉冲为设定脉冲。

在集成电路的部分实施例中,该初始编程脉冲的一第一强度至少等于在该后续周期中,用于进行该后续编程操作的该后续编程脉冲的强度。

在集成电路的部分实施例中,另一编程操作包含进行另一编程操作与另一验证操作的另一初始周期,以及更进一步接续在该另一编程操作与该另一验证操作后的后续周期。

在集成电路的部分实施例中,在该至少一接续周期后,该编程操作的累积通过率超过97%。

在集成电路的部分实施例中,该可编程控制元件具有一可编程的电阻值。

根据本发明的另一方面,提出一种集成电路,包含:一存储单元阵列,具有包含金属氧化物的可编程控制元件;以及耦接至该存储单元阵列的一电路。如下所述,该电路用于对该存储单元阵列内的至少一第一存储单元执行一编程-验证(program-verify)操作。

在集成电路的部分实施例中,该存储单元阵列所包含的一第一部分(subset)存储单元的电阻值,只需经过该编程操作与该验证操作的该初始周期,即被编程在该电阻值的目标范围内;该存储单元阵列所包含的一第二部分存储单元的电阻值,在经过该编程操作与该验证操作的该初始周期,以及经过该编程操作与该验证操作的至少一后续周期后,被编程在该电阻值的目标范围内。该存储单元阵列的该第一部分存储单元所对应的一第一平均电阻值至少等于该存储单元阵列的该第二部分存储单元所对应的一第二平均电阻值。

在集成电路的部分实施例中,一第一电阻值分布源自于利用重置脉冲而对该存储单元阵列实施编程-验证操作,以及一第二电阻值分布源自于利用设定脉冲而对该存储单元阵列实施编程-验证操作。一开放的电阻窗口区隔为第一电阻值分布的最低部分以及该第二电阻值分布的最高部分的区间。在集成电路的部分实施例中,在该编程操作与该验证操作的该初始周期后,即在彼此重叠的第一电阻值分布以及第二电阻值分布间产生该开放的电阻窗口。

在集成电路的部分实施例中,尽管该初始编程脉冲的一第一强度至少等于在该后续周期中,用于进行该后续编程操作的该后续编程脉冲的强度,该存储单元阵列的一累积通过速率(a cumulative pass rate)随着附加在该编程操作与该验证操作后的后续周期而增加。

根据本发明的另一方面,提出一种方法,包含以下步骤:对包含一可编程控制元件的至少一第一存储单元执行一编程-验证操作,其中该可编程控制元件包含在一集成电路内的一存储单元阵列中的一金属氧化物。如下所述,该编程验证操作包含:(i)实现一编程操作与一验证操作的一初始周期;以及(ii)重复实现接续在该验证操作后的至少一后续周期。

为了对本发明的上述及其他方面有更好的了解,下文特举优选实施例,并配合所附附图,作详细说明如下:

附图说明

图1,其是以电压相对时间代表在编程验证操作失败后,使用具有强度较强的重置编程操作脉冲序列的示意图。

图2,其是以电压相对时间代表在编程验证操作失败后,以(i)不具有强度较强的重置编程操作脉冲序列,以及(ii)与RESET编程操作脉冲的极性彼此相反的反向极性脉冲的示意图。

图3,其是以电压相对于时间代表在编程验证操作失败后,以(i)不具有强度较强的重置编程操作脉冲序列,以及(ii)与SET编程操作脉冲的极性彼此相反的反向极性脉冲的示意图。

图4A,其是根据一实施例的存储单元的示意图。

图4B、图4C,其是因应不同方式设置的源极线与位线而改变对存储单元施加偏压方式的示意图。

图5,其是二极管存取装置的交点(cross-point)存储单元阵列的示意图。

图6,其是例示可变电阻存储单元的简化剖面图(cross-sectional view)。

图7,其是编程操作脉冲不重复的情况下,存储单元阵列的电阻值分布的累积机率的示意图。

图8、图9,其是存储单元阵列分别为低电阻状值态分布与高电阻值状态分布的示意图。

图10,其是在SET编程操作脉冲后与RESET编程操作脉冲后,存储单元阵列的电阻值分布的累积机率的示意图,用于说明不经过编程验证的情况不具有电阻窗口。

图11,其是在SET编程操作脉冲后与RESET编程操作脉冲后,存储单元阵列的电阻值分布的累积机率的示意图,用于说明经过循环后的电阻值状态将降低。

图12、图13,其是在SET-RESET-SET序列的操作后,SET状态的电阻值轨迹示意图。

图14~图17,其是通过SET-RESET-SET-RESET序列的操作存储单元阵列时,以字线的位置代表垂直位置、以位线的位置代表水平位置的电阻值映像的示意图。

图18,其是编程-编程验证操作的周期的流程图。

图19-图21,其是在编程操作脉冲序列中,与编程操作脉冲对应的电阻值分布的示意图。

图22,其是在编程操作脉冲序列中,每一个编程操作脉冲对应的电阻值分布的示意图。

图23,其是在编程验证成功后,存储单元阵列的电阻值分布的累积机率的示意图。

图24,其是在各个编程-验证循环后,对SET与RESET编程操作的通过位数量与累积通过速率的示意图。

图25,其是周期增加的RESET与SET电阻值的示意图。

图26,其是说明在SET编程操作脉冲后与RESET编程操作脉冲后,不经过编程验证而缺少电阻窗口的存储单元阵列的电阻值分布的累积机率。

图27,其是根据一实施例的集成电路的简化方块图。

【符号说明】

RESET与验证操作周期2、4、6、8

趋势线10、20、40

RESET 1编程操作脉冲12、14、16

验证操作22、26、30、42、46、50

反向极性脉冲24、28、44、48

SET 1编程操作脉冲32、34、36

存储单元90 控制器101、534

晶体管102 第一电流输送端点104

第二电流输送端点106 存储器元件108、128

第一存取线110 第二存取线112

第三存取线114 电流源/偏压120

位线122 源极线124

存取晶体管126 字线127

接地电压129 存储单元阵列100

可变电阻存储单元200 绝缘介电层204

黏合层206 导电塞208

存储器元件210 氧化黏合层212

轨迹310、312、314、316、318、320、430、432、434、470、472、484、486、488、496、498

中心部位322、324

相同位置的存储单元的电阻值326、328、330、332、334、336

步骤350、352、354、356、358、360、362、364

电阻值分布370、380、390、414、416、418

通过编程验证的较高分布372

平均电阻值374、394、384、420、422、424

编程验证临限376、396、404、438

未通过编程验证的较低分布378

较高分布382、392 较低分布388、398

较低的编程验证临限402

编程验证406、408、410、412

上方阻值分布426 较高的编程验证临限440

矩形450、452、454、456、458、460、462、464

曲线466、468

编程验证临限或电阻修整边界490、492

电阻窗口494 集成电路510

其他电路530 数据输入线528

数据输出线532 方块524

数据总线526 位线译码器518

位线520 存储单元的交点阵列500

总线522 字线译码器514

字线516

偏压安排供应电压/电流源536

具体实施方式

请参见图1,其是以电压相对时间代表在编程验证操作失败后,使用具有强度较强的重置编程操作脉冲序列的示意图。

选定的存储单元会经过多个编程重置(RESET)与验证操作的周期。每个周期内会产生一个RESET的编程操作,以及接续在其后,用于读取该选定的存储单元的验证操作。

图中所示为四个编程RESET与验证操作周期2、4、6、8。阶层增量脉冲写入(Incremental Step Pulse Programming,简称为ISPP)会在每一个接续的周期中,因为验证失败而增加编程操作脉冲的强度。这些编程操作脉冲被命名为RESET 1、RESET 2、RESET 3与RESET 4,用以代表递增的强度。这些编程操作脉冲的顶端以具有正斜率的趋势线10相连接,代表编程操作脉冲强度的增加。

请参见图2,其是以电压相对时间代表在编程验证操作失败后,以(i)不具有强度较强的RESET编程操作脉冲序列,以及(ii)与RESET编程操作脉冲的极性彼此相反的反向极性脉冲的示意图。

初始周期包含RESET 1编程操作脉冲12与接续在后的验证操作22。在初始周期编程失败后,后续周期包含反向极性脉冲24、RESET 1编程操作脉冲14,以及验证操作26。若在后续周期中,验证操作26的结果为,RESET 1编程操作脉冲14仍然编程失败,便接着进行另一个包含反向极性脉冲28、RESET 1编程操作脉冲16,以及验证操作30的后续周期。编程操作脉冲同样被定义为RESET 1,用以代表编程操作脉冲的强度并未增加。平坦的趋势线20连接至各个编程操作脉冲的顶部,用于指出强度并未增加。此实施例仅说明使用一个反向极性脉冲的情形。在其他的实施例中,可以在接续的编程操作脉冲前使用多个反向极性脉冲。

请参见图3,其是以电压相对于时间代表在编程验证操作失败后,以(i)不具有强度较强的RESET编程操作脉冲序列,以及(ii)极性与SET编程操作脉冲的极性彼此相反的反向极性脉冲的示意图。

初始周期包含SET 1编程操作脉冲32与在其后的验证操作42。当初始周期失败后,后续周期包含反向极性脉冲44、SET 1编程操作脉冲34,以及验证操作46。若在后续周期中,验证操作46的结果为,SET 1编程操作脉冲34仍然编程失败,便接着进行另一个包含反向极性脉冲48、SET1编程操作脉冲36,以及验证操作50的后续周期。编程操作脉冲同样被定义为SET 1,用以代表编程操作脉冲的强度并未增加。平坦的趋势线40连接至各个编程操作脉冲的顶部,用于指出强度并未增加。此实施例仅说明使用一个反向极性脉冲的情形。在其他的实施例中,可以在接续的编程操作脉冲前使用多个反向极性脉冲。

请参见图4A,其是根据一实施例的存储单元的示意图。存储单元90包含一存取装置,即晶体管102。晶体管102具有第一电流输送端点(current carrying terminal)104、第二电流输送端点106。存储单元包含位于第一电流输送端点104与第一存取线110(例如位线)间的存储器元件108。实施例中的存取装置例如晶体管102,包含一第二存取线112(如:源极线),连接至第二电流输送端点106。以及连接至晶体管102栅极的第三存取线114(例如字线)。控制器101用于将极性与编程操作脉冲相反的操作脉冲施加至存储单元90。

请参见图4B、图4C,其是因应不同方式设置的源极线与位线而改变对存储单元施加偏压方式的示意图。

在图4B、图4C中,电流源/偏压120从电流源提供电流作为SET操作使用,或是提供电压作为RESET操作使用。在反向端点为参考电压29如接地电压。

在图4B中,下述元件位于电流源/偏压120以及接地电压129间:位线122、存储器元件128、由字线127控制的存取晶体管126,以及源极线124。在图4C中,以下的元件位于电流源/偏压120以及接地电压129间:源极线124、由字线127控制的存取晶体管126、存储器元件128,以及位线122。

在一个实施例中,初始RESET脉冲以及后续RESET脉冲将1.2V至5V间(例如,2.3V)的偏压施加至图4B的位线122、或是图4C的源极线124,以及将为期10纳秒至10微秒间(例如,800纳秒)的栅极电压1.6V至5V(例如2.8V)施加至于图4B或图4C的字线127。反向极性脉冲的电流为126微安培,为期800纳秒(请参见较宽的SET脉冲),其电压的极性与RESET脉冲反向。

在另一个实施例中,初始SET脉冲以及后续SET脉冲的电流介于40至350微安培间(例如,126微安培),为期10纳秒至10微秒间(例如,约800纳秒)。将反向极性脉冲的偏压(例如2.3V)施加至图4B的位线122,或是图4C的源极线124;以及将2.8V的栅极电压(为期如800纳秒)(参见较宽的RESET脉冲),施加至图4B或图4C的字线127,其电压的极性与SET脉冲反向。

在不同的实施例中,通过调变脉冲高度(强度)与宽度(期间)的方式,能使电阻值的分布达到优化。此外,可以使用强度较弱的反向脉冲,进而减少装置的压力。在一实施例中,在RESET 1中,编程操作脉冲12的强度或宽度可以大于、等于或小于编程操作脉冲14的强度或宽度。反向极性脉冲24,28可以等于或小于SET操作中的编程操作脉冲32,34,36的最大值。在另一实施例中,在RESET 1中,编程操作脉冲12的强度或宽度可以至少等于编程操作脉冲14的强度或宽度。同理,在一实施例中,在SET 1中,编程操作脉冲32的强度或宽度可能大于、等于或小于编程操作脉冲34的高度或宽度。反向极性脉冲44,48可以等于或小于SET操作中的编程操作脉冲2,4,6,8,12,14,16的最大值。在另一实施例中,在SET 1中,编程操作脉冲32的强度或宽度可以至少等于编程操作脉冲34的强度或宽度。

请参见图5,其是二极管存取装置的交点(cross-point)存储单元阵列的示意图。在此类实施例中,存储器元件108并未通过第三存取线存取。在某些实施例中,存取装置采用的并非金属-氧化层-半导体(MOS)晶体管,而是双极性晶体管(bipolar transistors)或是二极管(diodes)。控制器101说明如何将与编程操作脉冲具有相反极性的反向极性脉冲施加至存储器元件108。

请参见图6,其是例示可变电阻存储单元200的简化剖面图(cross-sectional view)。导电塞(conductive plug)208(底部电极)通过绝缘介电层(insulating dielectric layer)204而延伸,例如二氧化硅层(silicon dioxide layer)。在一个实施例中,导电塞208可包含黏合层(adhesion layer)206。导电塞208的一端可耦接至存取装置,例如存取晶体管的漏极、二极管的端点或是存取线。在所示实施例中,导电塞为钨塞(tungsten plugs),且黏合层为包含侧壁部与底部的氮化钛衬垫(TiN liners)。存储器元件210在导电塞208上。存储器元件210可以是导电塞208的氧化物。黏合层206的上方是氧化黏合层(oxidized adhesion layer)212的区域。导电层202(顶部电极)至少形成在存储器元件210上。在不同的实施例中,导电塞的材料可以是其他金属,例如:钛(Ti)、钽(Ta)、铝(Al)、锡(TiN)、钽(TaN)、铜(Cu)、锆(Zr)、钆(Gd)、镱(Yb)以及铪(Hf)。粘合层可以是导电的金属氮化物(conductive metal nitride),包括氮化钛(titanium nitride)、氮化钨(tungsten nitride)、氮化钽(tantalum nitride)、钛等。黏合层亦可采用金属例如钛。

存储器元件可包含以下材料,例如金属氧化物(metal oxide),包括氧化钨(tungsten oxide(WOx)、氧化铪(hafnium oxide(HfOx))、氧化钛(titanium oxide(TiOx))、氧化钽(tantalum oxide(TaOx))、氮化钛氧化物(titanium nitride oxide(TiNO))、氧化镍(nickel oxide(NiOx))、氧化镱(ytterbium oxide(YbOx))、氧化铝(aluminum oxide(AlOx))、氧化铌(niobium oxide(NbOx))、氧化锌(zinc oxide(ZnOx))、氧化铜(copper oxide(CuOx))、钒氧化物(vanadium oxide(VOx))、氧化钼(molybdenum oxide(MoOx))、氧化钌(ruthenium oxide(RuOx))、氧化铜硅(copper silicon oxide(CuSiOx))、银氧化锆(silver zirconium oxide(AgZrO))、铝镍氧化物(aluminum nickel oxide(AlNiO))、铝钛氧化物(aluminum titanium oxide(AlTiO))、氧化钆(gadolinium oxide(GdOx))、氧化镓(GaOx)、氧化锆(zirconium oxide(ZrOx))、铬掺杂(chromium doped)SrZrO3、铬掺杂钛酸锶、PCMO或LaCaMnO等。

请参见图7,其是编程操作脉冲不重复的情况下,存储单元阵列的电阻值分布的累积机率的示意图。

轨迹302说明在一个RESET编程操作脉冲后,未经过电阻值调整的阵列电阻值分布。轨迹304说明在SET编程操作脉冲后,未经过电阻值调整的阵列电阻值分布。在RESET脉冲后的高电阻状态与接续在SET脉冲后的低电阻状态存在约3%的小部分重叠。

请参见图8、图9,其是存储单元阵列分别为低电阻状值态分布与高电阻值状态分布的示意图。

图8说明在一个SET编程操作脉冲后,未经过电阻值调整的低电阻值状态分布。图9说明在一个RESET编程操作脉冲后,未经过电阻值调整的高电阻值状态分布。图8与图9皆以高斯函数(Gaussian functions)代表SET编程操作以及RESET编程操作的统计特性。

请参见图10,其是在SET编程操作脉冲后与RESET编程操作脉冲后,存储单元阵列的电阻值分布的累积机率的示意图,用于说明不经过编程验证的情况不具有电阻窗口。

轨迹310代表经过一个SET编程操作脉冲后,未经过电阻值调整的低电阻值状态分布。轨迹312代表经过一个RESET编程操作脉冲后,未经过电阻值调整的高电阻值状态分布。轨迹314代表存储单元阵列的初始电阻值分布。在轨迹310的较高部分与轨迹312的较低部分并不存在电阻窗口。因此,需要通过编程验证开启在低电阻状态与高电阻状态间的电阻窗口。

请参见图11,其是在SET编程操作脉冲后与RESET编程操作脉冲后,存储单元阵列的电阻值分布的累积机率的示意图,用于说明经过循环后的电阻值状态将降低。

轨迹316代表在SET编程后的存储单元阵列的低电阻状态分布。轨迹318代表在RESET编程操作脉冲后的存储单元阵列的高电阻状态分布。轨迹320代表存储单元阵列的初始电阻值分布。在轨迹群316以及318中,ISPP在每一个脉冲后增加编程操作脉冲的强度,并对存储单元的电阻式存储器元件施加压力。因此,轨迹319的低机率部分代表朝低电阻值方向弯折所造成的损坏的尾端存储单元。

请参见图12、图13,其是在SET-RESET-SET序列的操作后,SET状态的电阻值轨迹示意图。

图12以及图13共享的垂直轴为RESET状态的电阻值。图12以及图13的水平轴为SET状态的电阻值。图12的水平轴所代表的SET状态位于与垂直轴向相对应的中间RESET状态前。图13的水平轴所代表的SET状态位于与垂直轴向相对应的中间的RESET状态后。数据点的浓淡代表同时在RESET状态与在SET状态中具有特定电阻值的存储单元数量。图12所示的最密集的数据点,代表大部分的数据点位于中心部位322。图13所示的最密集的数据点,亦说明大部分的数据点位于中心部位324。图12、图13的变化代表存储单元阵列中的特定存储单元的电阻值是无法预测的。然而,图12、图13代表经过一连串的SET-RESET-SET后的存储单元阵列的正规化高斯分布(Gaussian distribution)。

请参见图14~图17,其是通过SET-RESET-SET-RESET序列的操作存储单元阵列时,以字线的位置代表垂直位置、以位线的位置代表水平位置的电阻值映像的示意图。

图14为第一SET状态的电阻值映射。接着在存储单元阵列实现RESET编程。因此,图16说明第一RESET状态的电阻值映射。接着在存储单元阵列进行SET编程。因此,图15说明第二SET状态的电阻值映射。接着,在存储单元阵列实现RESET编程。因此,图17说明第二RESET状态的电阻值映射。在图14-图17所示的电阻值映像图中,垂直位置以及水平位置对应于字线的位置以及位线的位置。以圆圈代表在字线与位线的特定交点的存储单元的电阻值。图14的326、图15的328、图16的330以及图17的334代表在相同位置的存储单元的电阻值。以及,图16的332以及图17的336代表在相同位置的存储单元的电阻值。每一个配对代表多个差异的顺序数量(multiple magnitudes of order of difference),无论假设在相同电阻状态内的相同存储单元。

这些附图主要说明一般情况下,因为一特定的编程操作所影响的特定存储单元的电阻值是无法预期的。这些附图也说明在一般的情况下,因为特定的编程操作而影响存储单元阵列的电阻值分布是可以预见的。

据此,当编程验证指出编程尝试失败时,不应解释为有很多个毁损(defective)的存储单元,而应被解读为一种不讨喜的统计结果(unfavorable statistical result)。因此,并不需要使用具有增加强度的编程操作脉冲的ISPP,而是施加未增加强度的编程操作脉冲。

请参见图18,其是编程-编程验证操作的周期的流程图。编程操作自步骤350开始。无论是SET或RESET,编程操作的操作参数在步骤352均维持固定。举例而言,编程操作脉冲的参数组可包含:上升时间(rise time)、下降时间(falling time)、脉冲宽度,以及脉冲强度。在步骤354中,初始周期开始于在选定存储单元的施加编程操作脉冲。在步骤356中,初始周期接着通过编程验证读取选定的存储单元。在步骤358中,随着编程验证读取所显示之,被选定的存储单元是否被成功编程的结果不同,编程操作会结束于步骤364,或是实现后续编程周期。在步骤360中,后续编程周期开始于一个在所选定的存储单元上施加的反向极性脉冲。无论编程操作脉冲为SET编程操作脉冲或RESET编程操作脉冲,反向极性脉冲的极性均与编程操作脉冲的极性相反。在步骤362中,因为不需要进一步强化编程条件的缘故,用于控制编程操作脉冲的强度操作参数并不需要增加。然而,在某些实施例中,可以选择性的采用ISPP。自步骤354后的步骤与初始编程周期相似。另一种实现步骤358的作法是,若尝试编程周期的次数已经达到一个预设的最大次数时,停止对失败的编程验证再次进行编程。

请参见图19-图21,其是在编程操作脉冲的序列中,与编程操作脉冲对应的电阻值分布的示意图。尽管在先前的周期中的编程验证失败,但在编程以及编程验证的后续周期内,编程操作脉冲的强度并未增加。

在图19中,电阻值分布370对应于经历过初始周期的编程以及编程验证的存储单元阵列。编程验证临限376用于区隔通过编程验证的较高分布372以及未通过编程验证的较低分布378。

在图20中,电阻值分布380对应于经历过编程与编程验证的后续周期的存储单元阵列。连接图19的较低分布378,以及图20的电阻值分布380的箭头代表,在图19中的初始周期中编程验证失败的存储单元,将会在图20再次经历编程与编程验证的后续周期。编程验证临限386区隔通过编程验证的较高分布382,以及未通过编程验证的较低分布388。

在图21中,电阻值分布390对应于经历过编程与编程验证的另一个后续周期的存储单元阵列。连接图20的较低电阻值分布345,以及图21的电阻值分布390的箭头代表,在图20中的编程与编程验证的后续周期中编程验证失败的存储单元,会在图21再次经历另一个编程与编程验证的后续周期。编程验证临限396用于区隔通过编程验证的较高分布392以及未通过编程验证的较低分布398。

在图19-图21的每一个附图中,电阻值分布具有一平均电阻。图19的平均电阻值为374、图20的平均电阻值为384,以及图21的平均电阻值为394。因为在编程与编程验证的后续周期中,并不会增加编程操作脉冲的强度,因此平均电阻值并不会随着周期的改变而增加。

请参见图22,其是在编程操作脉冲的序列中,每一个编程操作脉冲对应的电阻值分布的示意图。与图19-图21不同的是,在先前周期内的编程验证失败后,图22所示的编程以及编程验证的后续周期内会增加编程操作脉冲的强度。

较低的编程验证临限402用于区别通过编程验证408的存储单元,以及未通过编程验证406的存储单元。较高的编程验证临限404用于区别通过编程验证410的存储单元,以及未通过编程验证412的存储单元。

电阻值分布414对应于经历过编程与编程验证的初始周期的存储单元阵列。电阻值分布416对应于经历过编程以及编程验证的后续周期的存储单元阵列。电阻值分布416包含在电阻值分布414中编程验证失败的存储单元。电阻值分布418对应于经历过编程以及编程验证的另一个后续周期的存储单元阵列。电阻值分布418包含在电阻值分布416中编程验证失败的存储单元。

图22中的每一个电阻值分布具有一平均电阻。电阻值分布414的平均电阻值为420、电阻值分布416的平均电阻值为422,以及电阻值分布418的平均电阻值为424。因为在编程与编程验证的后续周期中,会逐渐增加编程操作脉冲的强度,因此平均电阻值会随着周期的改变而增加。强度较强的编程操作脉冲会使整体的电阻值分布418向上移动。连带的,电阻值分布418的上方阻值分布426将超过编程验证临限404。在存储单元损毁的原因中,有偏高的比率(disproportionately large share)是因为电阻值分布418具有过高的上方阻值分布426。图19-图21并不会发生此种因为过高(overly high)的电阻值所影响,进而使失败比率过高的情形。这是因为在图19-图21中,后续编程验证周期并不会增加编程操作脉冲的强度,此种做法并不会使电阻值的分布向上偏移。

请参见图23,其是在编程验证成功后,存储单元阵列的电阻值分布的累积机率的示意图。

轨迹430以及432代表在SET编程后,存储单元阵列的低电阻值状态分布。轨迹430说明在编程验证前的低电阻值状态分布,而轨迹432说明在编程验证后的低电阻值状态分布。因为编程验证的缘故,轨迹430的高电阻值部分被向下调整至低于较低的编程验证临限438。

轨迹434以及436代表在RESET编程后,存储单元阵列的高电阻值状态分布。轨迹434说明在编程验证前的高电阻值状态分布,而轨迹436说明在编程验证后的高电阻值状态分布。因为编程验证的缘故,轨迹434的较低电阻部分被向上调整至高于较高的编程验证临限440。编程验证临限或电阻修整边界(trimming boundaries)为30kΩ以及100kΩ,因此电阻窗口的宽度为70kΩ。

请参见图24,其是在各个编程-验证循环后,对SET与RESET编程操作的通过位数量与累积通过速率的示意图。

左侧的垂直轴代表通过位数量(pass bit number),用于代表在经过特定的操作或是经过编程与编程验证周期后的存储单元数量。左侧的垂直轴用于表示经过SET以及RESET周期后,通过编程验证的存储单元的直方图(bar chart)。矩形450以及458分别代表在SET以及RESET编程的操作#1后,通过编程验证的存储单元数量。矩形452以及460分别代表在SET以及RESET编程的操作#2后,通过编程验证的存储单元数量。矩形454以及462分别代表用在SET以及RESET编程的操作#3后,通过编程验证的存储单元数量。矩形456以及464分别代表在SET以及RESET编程的操作#4后,通过编程验证的存储单元数量。如利用对数单位表示的高度递减的矩形所示,因为大部分的存储单元会在特定的操作后顺利通过验证,后续的操作会被施加至数量较少且尚未被顺利编程的剩余存储单元。

右侧的垂直轴代表经过一特定操作或编程与编程验证周期后的累积通过速率。右侧的垂直轴用于表示曲线466以及468,分别为SET操作与RESET操作的累积通过速率。图24代表通过速率在操作与操作间稳定维持,此附图亦支持图8、图9所介绍的编程验证的统计处理(statistical treatment)。

请参见图25,其是周期增加的RESET与SET电阻值的示意图。轨迹470代表随着RESET-SET周期的增加,具有1k位的存储单元阵列在RESET状态下的电阻值中位数与标准偏差。轨迹472代表随着RESET-SET周期的增加,具有该1k位的存储单元阵列在SET状态下的电阻值中位数以及标准偏差。

请参见图26,其是说明在SET编程操作脉冲后与RESET编程操作脉冲后,不经过编程验证而缺少电阻窗口的存储单元阵列的电阻值分布的累积机率。

轨迹488为存储单元阵列在操作前的初始阻值分布。轨迹484代表经过SET编程后,存储单元阵列的低电阻值状态分布。因为编程验证的缘故,轨迹484低于较低的编程验证临限或电阻修整边界490。轨迹486及496代表经过RESET编程后,存储单元阵列的高电阻值状态分布。因为编程验证的缘故,轨迹486及498高于较高的编程验证临限或电阻修整边界492。编程验证临限或电阻修整边界490与492保留着电阻窗口494。电阻窗口494为存储单元阵列的尾对尾(tail-to-tail)之间的无分布区域。

请参见图27,其是根据一实施例的集成电路的简化方块图。集成电路510包含存储单元的交点(cross-point)阵列500。字线译码器514与多条字线516彼此耦接并进行电气通信。位线(行)译码器与多条位线520进行电气通信,藉以自存储单元的交点阵列500内的存储单元读取数据,或是将数据写至存储单元的交点阵列500内的存储单元。地址通过总线522提供至字线译码器与驱动器514以及位线译码器518。方块524内的感测放大器与数据输入结构通过数据总线526耦接至位线译码器518。数据输入线528用于将集成电路510的输入端口/输出端口所提供的数据,或是集成电路510将内部或外部的其他数据源提供的数据,传送至方块524的数据输入结构。集成电路510可能包含其他电路530,例如通用处理器或专用电路,或是由存储单元阵列100支持的系统单芯片功能的模块的组合。方块524内的感测放大器所提供的数据,通过数据输出线532传送至集成电路510的输入端口/输出端口,或是传送至集成电路510的内部或外部的其他数据目的端。

此例子的控制器534,利用偏压状态机(bias arrangement state machine)实现对偏压安排供应电压(bias arrangement supply voltage)/电流源536的控制。例如,读取电压、用于SET与RESET的编程电压,以及用于验证SET与RESET编程的电压。本案所属技术领域的普通技术人员亦可采用专用逻辑电路(special-purpose logic circuitry)实现控制器534。在另一个实施例中,控制器534包含通用处理器(general-purpose processor),通用处理器可在相同的集成电路上实现,通过计算机程序的执行而控制装置的操作。在另一个实施例中,可以使用专用逻辑电路与通用处理器的组合作为控制器534。

综上所述,虽然本发明已以优选实施例揭露如上,然其并非用以限定本发明。本发明所属技术领域中普通技术人员,在不脱离本发明的精神和范围内,当可作各种的更改与修饰。因此,本发明的保护范围当视权利要求所界定者为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1