相变存储器自适应性编程的制作方法

文档序号:6767975阅读:336来源:国知局
专利名称:相变存储器自适应性编程的制作方法
相变存储器自适应性编程相关申请案交叉参考本专利申请案请求对2008年3月14日提出申请的美国申请案第12/049,072号 的优先权权益,此美国申请案以引用方式并入本文中。
背景技术
计算机及例如数字电视、数码相机及蜂窝式电话等其它电子产品通常具有存储器 装置以存储数据及其它信息。一些常规存储器装置可基于存储器单元的存储节点上的电荷 量来存储信息。存储节点通常由例如硅等半导体材料制成。存储节点上的电荷的不同值可 表示存储于存储器单元中的信息位的不同值(例如,二进制值“0”及“ 1”)。其它常规存储器装置(例如,相变存储器装置)可基于存储器单元的存储器元件 的电阻状态来存储信息。存储器元件可具有在被编程时可在不同相(例如,结晶相与非晶 相)之间改变的材料。所述材料的不同相可致使存储器单元具有有不同电阻值的不同电阻 状态。存储器元件的不同电阻状态可表示存储于存储器中的信息的不同值。在一些相变存储器装置中,配置存储器单元以增加数据存储密度或对存储器单元 进行编程以满足一些装置性能规范可引起挑战。


图1显示根据本发明的实施例具有有相变存储器单元的存储器阵列的存储器装 置的框图。图2显示根据本发明的实施例具有包括具有存取组件及存储器元件的相变存储 器单元的存储器阵列的存储器装置的局部框图。图3到图5显示根据本发明的各种实施例具有耦合到存储器元件的不同存取组件 的不同存储器单元的实例的示意图。图6到图9显示根据本发明的各种实施例具有存储器元件的存储器单元,所述存 储器元件具有经配置以具有对应于各个电阻值的各个电阻状态的结构。图10是显示图6到图9的存储器元件的实例性电阻值及基于所述实例性电阻值 的实例性对应所存储信息值的图表。图11到图14显示根据本发明的各种实施例具有存储器元件的另一存储器单元, 所述存储器元件具有经配置以具有对应于各个电阻值的各个电阻状态的另一结构。图15是在根据本发明的实施例的用以重设存储器单元(例如,图1到图14的存 储器单元中的一者)的编程操作期间的温度对时间图。图16是在参照图15所描述的编程操作期间所使用的信号的电流对时间图。图17是在参照图15所描述的编程操作期间所使用的另一信号的电流对时间图。图18是在根据本发明的实施例的用以设定存储器单元(例如,图1到图14的存 储器单元)的存储器元件的编程操作期间的温度对时间图。图19是参照图18所描述的编程操作可使用的信号的电流对时间图。
图20是显示在根据本发明的实施例的编程操作期间用作目标值的电阻值与电流 值之间的关系的曲线图。图21是在根据本发明的实施例的编程操作期间所使用的不同信号的电流对时间 图,所述不同信号有具有可调整振幅值的脉冲。图22是显示在根据本发明的实施例的实例性编程操作期间的电阻对电流的图。图23是显示在与图22相关联的实例性编程操作期间所使用的基于初始目标电流 值的各个经调整电流值的图。图24是显示在根据本发明的实施例的实例性编程操作期间的电阻对电流的图, 所述编程操作使用基于斜率计算的经调整电流值。图25是显示在与图24相关联的实例性编程操作期间所使用的各个经调整电流值 的图。图26是显示在根据本发明的实施例的编程操作期间用作目标值的电阻值与转变 时间值之间的关系的曲线图。图27是显示在根据本发明的实施例的编程操作期间所使用具有脉冲的不同信号 的图,所述脉冲具有可调整转变时间值。图28是显示在根据本发明的实施例的实例性编程操作期间的电阻对转变时间的 图。图29是显示在与图28相关联的实例性编程操作期间所使用的基于初始目标转变 时间值使用的各个经调整转变时间值的图。图30是显示根据本发明的实施例操作装置的方法的流程图。图31是显示与图30相关联的方法的目标电阻值与对应目标电流值之间的关系的表。图32是显示与图30相关联的方法的目标电阻值与对应目标转变时间值之间的关 系的表。图33是显示根据本发明的实施例操作装置(包括振幅值调整)的方法的流程图。图34是显示根据本发明的实施例操作装置(包括转变时间值调整)的方法的流 程图。
具体实施例方式图1显示根据本发明实施例具有有相变存储器单元100的存储器阵列102的存储 器装置101的框图。存储器单元100可与线104 (例如,具有信号WLO到WLm的字线)及 线106(例如,具有信号BLO到BLn的位线)一起布置成行及列。存储器装置101可使用线 104及线106来与存储器单元100传送信息。行解码器107及列解码器108可对线109 (例 如,地址线)上的地址信号AO到AX解码以确定将存取哪些存储器单元100。感测放大器电 路110可操作以确定从存储器单元100读取的信息的值且将所述信息以信号形式提供到线 106。感测放大器电路110还可使用线106上的信号来确定将写入到存储器单元100的信 息的值。存储器装置101可包括用以在存储器阵列102与线(例如,数据线)105之间传送 信息的电路112。线105上的信号DQO到DQN可表示从存储器单元100读取或写入到存储 器单元100中的信息。线105可包括存储器装置101内的节点或存储器装置101可驻存于其中的封装上的接针(或焊料球)。存储器装置101外部的其它装置(例如,存储器控制器 或处理器)可经由线105、109及120与存储器装置101通信。存储器装置101可执行存储器操作,例如从存储器单元100读取信息的读取操作 及将信息编程(例如,写入)到存储器单元100中的编程操作(有时称作写入操作)。存储 器控制单元118可基于线120上的控制信号来控制存储器操作。线120上的控制信号的实 例可包括一个或一个以上时钟信号及指示存储器装置101可执行哪一操作(例如,编程或 读取操作)的其它信号。存储器装置101外部的其它装置(例如,处理器或存储器控制器) 可控制线120上的控制信号的值。线120上的信号的组合的特定值可产生可致使存储器装 置101执行对应存储器操作(例如,编程或读取操作)的命令(例如,编程或读取命令)。存储器单元100中的每一者可经编程以存储表示单个位的值或多个位(例如,两 个、三个、四个或另一数目个位)的值的信息。举例来说,存储器单元100中的每一者可经 编程以存储表示单个位的二进制值“0”或“1”的信息。在另一实例中,存储器单元100中 的每一者可经编程以存储表示多个位的值(例如,两个位的四个可能值“00”、“01”、“10”及 “ 11” 中的一者、八个可能值 “000 ”、“001 ”、“010 ”、“011 ”、“ 100 ”、“ 101”、“ 110 ” 及 “ 111” 中 的一者,或另一数目个多个位的其它值中的一者)的信息。存储器装置101可接收供电电压,包括分别位于线130及132上的供电电压信号 Vcc及Vss。供电电压信号Vss可以接地电位(例如,具有约零伏的值)操作。供电电压信 号Vcc可包括从外部电源(例如,电池或交流到直流(AC-DC)转换器电路)供应到存储器 装置101的外部电压。存储器装置101的电路112可包括选择电路115及输入/输出(I/O)电路116。 选择电路115可响应于信号SELl到SELn来选择可表示从存储器单元100读取或编程到存 储器单元100中的信息的线106及113上的信号。列解码器108可基于线109上的AO到 AX地址信号来选择性地启动SELl到SELn信号。选择电路115可选择线106及113上的信 号以在读取及编程操作期间提供存储器阵列102与I/O电路116之间的通信。存储器装置101可包括非易失性存储器装置且存储器单元100可包括非易失性存 储器单元,使得存储器单元100可在从存储器装置101断开电力(例如,Vcc或Vss,或者两 者)时保持存储于其上的信息。举例来说,存储器装置101可包括相变存储器装置,使得存 储器单元100中的每一者可包括具有材料的存储器元件,其中所述材料的至少一部分(例 如,可编程部分)可经编程以致使所述部分在不同相之间改变,例如,在结晶相(其有时称 作结晶状态)与非晶相(其有时称作非晶状态)之间改变。存储器单元100中的每一者可 具有对应于在所述存储器单元被编程时的电阻值的电阻状态。不同电阻值可表示编程于存 储器单元100中的每一者中的信息的不同值。当存储器装置101接收(例如,从外部处理器或存储器控制器)编程命令及将编 程到存储器单元100当中的选定存储器单元中的一者或一者以上中的信息的值时,其可执 行编程操作。基于所述信息的值,存储器装置101可对所述选定存储器单元进行编程以致 使其具有表示所述信息的值的适当电阻值。存储器装置101可包括用以存储编程参数值的存储区域144且在编程操作期间选 择性地使用这些值。存储器装置101可以存储区域144中的表155的形式存储所述编程参 数值。所述编程参数值可包括存储器装置101在编程操作中可使用的信号的脉冲的振幅值、转变时间值或两者。振幅值可对应于将在编程操作中使用的脉冲的电流振幅值(例如, 以安培为单位)或电压振幅值(例如,以伏为单位)。转变时间值可对应于将在编程操作中 使用的脉冲的上升沿的上升时间(以时间为单位,例如毫微秒)或下降沿的下降时间(以 时间为单位,例如毫微秒)。编程参数值还可包括存储器装置101可用来确定将编程到存储 器单元中的目标电阻值的可接受范围的偏移值。所属领域的技术人员可认识到,存储器装置101可包括其它组件,未显示所述其 它组件以帮助集中于本文中所描述的实施例上。存储器装置101可包括与下文参照图2到图34所描述的那些装置、存储器单元及 编程操作类似或相同的装置、存储器单元及编程操作。图2显示根据本发明的实施例具有包括具有存取组件211及存储器元件222的相 变存储器单元200的存储器阵列202的存储器装置201的局部框图。存储器阵列202可对 应于图1的存储器阵列102。如图2中所示,存储器单元200与具有信号WLO、WLl及WL2 的线一起布置成行230、231及232,且与具有信号BLO、BLl及BL2的线一起布置成列240、 241及242。存取组件211可接通(例如,通过使用信号WL0、WL1及WL2的适当值)以允许 对存储器元件222的存取以从存储器元件222读取信息(例如,测量电阻值)或将信息编 程到存储器元件222中(例如,致使存储器元件222具有特定电阻值)。图3到图5显示根据本发明的各种实施例具有耦合到存储器元件333、444及555 的不同存取组件311、411及511的不同存储器单元300、400及500的实例的示意图。图3 到图5中具有信号WL的线及具有信号BL的线可分别对应于图1的线104中的一者及线 106中的一者。图3到图5显示分别包括金属氧化物半导体场效晶体管(MOSFET)、双极结 晶体管(BJT)及二极管的存取组件311、411及511的实例。存储器单元300、400及500可 包括其它类型的存取组件。如图3到图5中所示,存储器元件333、444及555中的每一者可耦合于两个电极 之间,例如耦合于电极351与352 (图3)、电极451与452 (图4)或电极551与552 (图5) 之间。图3到图5示意性地将电极351、352、451、452、551及552显示为点。在结构上,这 些电极中的每一者可包括导电材料。在图3到图5中,存取组件311、411及511可在对读 取操作的编程期间经由电极351、352、451、452、551及552启用将传送到存储器元件333、 444及555及从存储器元件333、444及555传送的信号(例如,电压或电流)。举例来说,编程操作可使用信号WL来接通存取组件311、411及511,且然后穿过存 储器元件333、444及555施加电流(例如,编程电流)。所述电流致使存储器元件333、444 及555的材料的至少一部分变热并熔融。在材料熔融之后,所述编程操作可允许所述材料 快速冷却。这些加热及冷却动作可改变材料的相,例如从所述编程操作之前的结晶相改变 为所述编程操作之后的非晶相。所述相变可以是可逆的(例如,从非晶相改变为结晶相)。 材料的不同相可致使存储器元件333、444及555具有有不同电阻值的不同电阻状态,其对 应于存储于存储器元件333、444及555中的信息的不同值。在另一实例中,读取操作可使用信号WL来接通存取组件311、411及511,且然后 穿过存储器元件333、444及555施加电流(例如,读取电流)。所述读取操作可基于读取 电压来测量存储器单元300、400及500的电阻,以确定存储于其中对应的信息的值。举例 来说,在存储器单元300、400及500中的每一者中,当所述电流通过存储器元件333、444及555时,不同电阻值可在信号BL上提供不同值(例如,电流或电压值)。存储器装置的其它 电路(例如,例如图1的I/O电路116的电路)可使用信号BL来测量存储器元件333、444 及555的电阻值以确定信息的值。读取操作期间所使用的电流可具有不同于在编程操作期间所使用的电流的值。举 例来说,在编程操作中,形成流过存储器元件的电流的信号(例如,来自图3或图4中的线 BL或来自图5中的线WL的信号)的值可足以致使存储器元件的至少一部分的材料在不同 相之间改变,以基于将存储于存储器元件333、444及555中的信息的值来更改存储器元件 的电阻值。在读取操作中,形成流过存储器元件的电流的信号(例如,来自图3或图4中的 线BL或来自图5中的线WL的信号)的值可足以形成所述电流,但不足以致使存储器元件 的任一部分在不同相之间改变,使得存储于存储器元件中的信息的值在所述读取操作中可 保持不变。图1到图5的存储器单元100、200、300、400及500可包括与下文参照图6到图34 所描述的存储器单元中的一者或一者以上类似或相同的存储器单元。图6到图9显示根据本发明的各种实施例具有存储器元件666的存储器单元600, 存储器元件666具有经配置以具有对应于各个电阻值R0、R1、R2及R3的各个电阻状态633、 733,833及933的结构。如图6到图9中所示,存储器单元600可包括耦合到存储器元件 666的电极651及652。存储器单元600还可包括其它组件,例如可与存取组件211、311、411 或511 (图2到图5)类似或相同的存取组件。图6到图9省略存储器单元600的其它组件 以帮助集中于本文中所论述的实施例上。此外,为清晰起见,图6到图9显示具有横截面线 (阴影线)的存储器元件666及不具有横截面线的电极651及652。电极651与652可对 应于在图3到图5中示意性地显示为点的电极351与352 (图3)、电极451与452 (图4)或 电极551与552 (图5)。在图6到图9中,存储器元件666可包括用于部分601、602及603 的相同材料。所述材料可经配置以在多个相之间改变,例如在结晶相与非晶相之间改变。 存储器元件666可包括相变材料。一些相变材料可包括具有锗(Ge)、锑(Sb)、碲(Te)及其 它类似材料的各种组合的硫族化物材料。相变材料的实例可包括二元组合,例如碲化锗 (GeTe)、硒化铟(InSe),碲化锑(SbTe),锑化镓(GaSb),锑化铟(InSb)、碲化砷(AsTe)、碲 化铝(AlTe);三元组合,例如碲化锗锑(GeSbTe)、砷化碲锗(TeGeAs)、碲化铟锑(InSbTe)、 硒化碲锡(TeSnSe)、镓化锗硒(GeSeGa)、锑化铋硒(BiSeSb)、碲化镓硒(GaSeTe)、碲化锡 锑(SnSbTe)、锗化铟锑(InSbGe);及四元组合,例如硫化碲锗锑(TeGeSbS)、氧化碲锗锡 (TeGeSnO);及碲锗锡金、钯碲锗锡、铟硒钛钴、锗锑碲钯、锗锑碲钴、锑碲铋硒、银铟锑碲、锗 锑硒碲、锗锡锑碲、锗碲锡镍、锗碲锡钯、锗碲锡钼的合金。除本文中所列出的相变材料外, 一些相变材料可提供优于其它相变材料的适当选择,此部分地取决于装置的应用。举例来 说,锗(Ge)、锑(Sb)及碲化物(Te)的化合物可以是用于相变存储器装置的适当选择,部分 地由于其在不同电阻状态之间相对快的切换速度(例如,几毫微秒)。锗(Ge)、锑(Sb)及 碲化物(Te)的化合物可具有式Ge2Sb5Te5。此说明中的材料成分中的多数材料成分仅列出 组成元素。然而,这些材料成分中的每一者中的每一组成元素的相对量并不限于特定值。如图6到图9中所示,存储器元件666可包括直接接触电极651的部分601、直接 接触电极652的部分602及部分601与602之间的部分603。图6显示部分603位于由虚 线圈指示的大体区域处以指示部分603可包括部分601的一部分、部分602的一部分或两者。存储器元件666的部分603可称作可编程部分(或可编程体积)。编程操作可将存储 器单元600编程为对应于电阻值(以欧姆为单位)R0、Rl、R2及R3中的一者的多个可能电 阻状态633、733、833及933中的一者。存储于存储器元件666中的信息的值可基于存储器 元件666可具有电阻值R0、Rl、R2及R3中的哪一者。图6显示其中存储器元件666可具有电阻值RO的实例,其中部分601、602及603 处的材料具有相同结晶相613。编程操作可对存储器单元600进行编程以致使部分603的 至少一部分“非晶化”(例如,从结晶相改变为非晶相),从而产生非晶化区713、813或913。 如图6到图9中所示,部分603 (在编程之前或之后)通过存储器元件666的部分601与电 极651隔离,且通过存储器元件666的部分602与电极652隔离。将部分603与电极651 及652隔离可减少在存储器元件666的编程期间从部分603直接传送到电极651及652的 热,从而减小潜在热损失。因此,可减少编程时间,可使用相对较低的编程电流量,且可节约 电力。图7到图9显示具有不同区大小的非晶化区713、813及913。举例来说,非晶化区 713可具有小于非晶化区813的大小的大小。非晶化区813可具有小于非晶化区913的大 小的大小。部分603的不同大小的非晶化区可致使存储器单元600具有用以表示信息的不 同值的不同电阻值(例如,R1、R2或R3)。图10是显示图6到图9的存储器元件666的实例性电阻值R0、Rl、R2及R3及基 于所述实例性电阻值的实例性对应所存储信息值的图表1000。存储器单元600可经配置以 存储表示多个位(例如,两个、三个、四个或其它数目个位)的值的信息。图10的图表1000 显示其中四个电阻值RO、Rl、R2及R3中的每一者可被指派到四个可能值“ 00,,、“ 01,,、"10" 及“11”中的唯一值的实例。图11到图14显示根据本发明的各种实施例具有存储器元件1111的另一存储器 单元1100,存储器元件1111具有经配置以具有对应于各个电阻值R0、Rl、R2及R3的各个 电阻状态1133、1233、1333及1433的另一结构。存储器单元1100也可包括其它组件,例如 可与存取组件211、311、411或511 (图2到图5)类似或相同的存取组件。在图11到图14 中,存储器元件1111可包括与图6到图9的存储器元件666的材料类似或相同的材料。在图11到图14中,存储器元件1111可包括直接接触电极1151的部分1101、直 接接触电极1152的部分1102及部分1101与1102之间的部分1103。图11显示部分1103 位于由虚线圈指示的大体区域处以指示部分1103可包括部分1101的一部分、部分1102的 一部分或两者。存储器元件1111的部分1103可称作可编程部分。编程操作可将存储器单 元1100编程为对应于电阻值R0、RU R2及R3中的一者的多个可能电阻状态1133、1233、 1333及1433中的一者。存储于存储器单元1100中的信息的值可基于存储器元件1111可 具有电阻值R0、Rl、R2及R3中的哪一者。如图11中所示,存储器单元1100可具有其中部 分1101、1102及1103处的材料具有相同结晶相1113的电阻值RO及其中部分1103可分别 具有非晶化区1213、1313及1413的电阻值Rl、R2及R3,所述电阻值具有可对应于可存储 于存储器单元1100中的信息值(例如,图10的“00”、“01”、“10”及“11”)的不同区大小。本文中的说明包括对相变存储器装置(例如,存储器装置101或201(图1或图 2))的存储器单元进行编程的方式,其中所述存储器装置可包括具有存储器元件的存储器 单元,所述存储器元件具有例如存储器元件666 (图6到图9)及存储器元件1111 (图11到 图14)的结构的结构或其它结构。
编程操作可包括重设活动(有时称为“重设(reset) ”或“重设(resetting) ”)及 设定活动(有时称为“设定(set)”或“设定(setting)”)。重设活动可将存储器单元改变 为电阻状态,其中存储器元件的可编程部分的材料可具有一个相(例如,非晶相)且存储器 元件的其它部分的材料具有另一相(例如,结晶相)。举例来说,重设活动可将存储器单元 600 (图6)从对应于电阻值RO的电阻状态633改变为对应于电阻值R1、R2或R3中的一者 的电阻状态733、833或933(图7到图9)。因此,电阻状态733、833及933 (图7)中的每一 者可称为“重设”电阻状态。电阻值R1、R2及R3中的每一者可称为“重设”电阻值。设定 活动可将存储器单元从重设电阻状态改变为“设定”电阻状态,在此状态下存储器元件666 的材料可具有相同相(例如,结晶相),例如对应于图6中的电阻值RO的电阻状态633。因 此,电阻状态633可称为“设定”电阻状态。电阻值RO可称为“设定”电阻值。本文中所描 述的编程操作的重设及设定活动可包括下文参照图15到图34所描述的编程操作的活动。图15是在根据本发明的实施例的用以重设存储器单元(例如,图1到图14的存 储器单元100、200、300、400、500、600及1100中的一者)的编程操作期间的温度对时间图。 如图6到图9及图11到图14中所示,电阻值R0、R1、R2及R3可取决于存储器单元的可编 程部分(例如,部分603或1103)处的材料的特性。举例来说,不同大小的非晶化区(图7 到图9的713、813或913)可产生不同电阻值(例如,Rl、R2或R3)。如图15中所示,为重设存储器单元以使得存储器单元的可编程部分可具有非晶 化区,所述编程操作可使用信号来致使所述可编程部分处的材料加热且允许所述可编程部 分处的材料的温度上升并超过材料结晶温度Tc及熔点温度Tm。所述可编程部分处的材料 可熔融。所述编程操作可允许所述材料在其熔融之后冷却(或快速冷却)。因此,所述可 编程部分处的材料可非晶化且产生非晶化区。所述非晶化区的大小可取决于在所述编程操 作期间所使用的信号的信号值。所述信号可包括脉冲。所述信号值可包括所述脉冲的振幅 值、所述脉冲的转变时间值(例如,所述脉冲的沿的转变时间值)或两者。图16是在参照图15所描述的编程操作期间所使用的信号的电流对时间图。如图 16中所示,信号1600可包括一个或一个以上脉冲,例如具有方形(或大致方形)波形状的 脉冲1601,其中沿1611的转变时间值(例如,脉冲上升时间值)及沿1612的转变时间值 (例如,脉冲下降时间值)可远远小于脉冲1601的持续时间。脉冲1601还可具有可对应于 电流值Ikesetx的振幅值1680。振幅值1680的不同值(例如,不同电流值)可致使存储器单 元的可编程部分非晶化为对应于不同电阻值(例如,RU R2及R3)的具有不同大小的不同 非晶化区。图17是在参照图15所描述的编程操作期间所使用的另一信号1700的电流对时 间图。如图17中所示,信号1700可包括一个或一个以上脉冲,例如具有可对应于电流值 IEESETY的振幅值1780的脉冲1701。脉冲1701还可具有沿1711及1712。如图17中所示,不 同于图16的脉冲1601,图17的脉冲1701可具有不同于方形波形状的形状。沿1711的转 变时间值(例如,脉冲上升时间值)及沿1712的转变时间值(例如,脉冲下降时间值)1720 不相等。转变时间值1720的不同值可致使存储器单元的可编程部分非晶化,其中不同结晶 成分对应于不同电阻值(例如,R1、R2及R3),其中较大转变时间值1720产生较大结晶成分 及较低电阻值。如上文参照图16及图17所描述,为重设存储器单元以致使其从一个电阻值(例如,R0)改变为另一电阻值(例如,R1、R2或R3),编程操作可使用具有有方形波形状的脉冲 的信号(例如,图16的信号1600,或不同信号,例如图17的具有不相等上升时间与下降时 间值的信号1700)。图18是在根据本发明的实施例的用以设定存储器单元(例如,图1到图14的存 储器单元100、200、300、400、500、600及1100)的存储器元件的编程操作期间的温度对时间 图。如图18中所示,编程操作可使用信号来致使可编程部分处的材料加热且允许所述可编 程部分处的所述材料的温度上升到其结晶温度Tc以上但在其熔点温度Tm以下。所述编程 操作可保持所述材料的温度持续一时间间隔且然后允许其冷却。因此,所述可编程部分可 “再结晶”(例如,从非晶相改变为结晶相),使得所述可编程部分及其它部分(例如,图6的 部分601、602及603)的材料可具有相同相,从而致使存储器单元具有例如图6的电阻值RO 等电阻值。图19是参照图18所描述的编程操作可使用的信号1900及1902的电流对时间 图。信号1900或1902可在编程操作中使用。如图19中所示,信号1900可包括具有方形 (或大致方形)波形状的脉冲1901,其具有对应于小于电流值Ikeset的电流值Iset的振幅值。 信号1902可包括具有非方形形状的脉冲1903,其具有下降时间值1905。作为实例,图19 显示具有对应于电流值Ikeset的振幅值及下降时间值1905的脉冲1903。脉冲1903的振幅 及脉冲的下降时间值1905可变化。图19的电流值Ikeset可对应于电流值IKESETX(图16)或
IEESETY (图 17) °图20是显示在根据本发明的实施例的编程操作期间用作目标值的电阻值R0、R1、 R2及R3与电流值ISET> IRESETI > IRESET2及Ikeset3之间的关系的曲线2000的图。与图20相关联 的装置可将由曲线2000呈现的关系存储(例如,以表中的值的形式)于所述装置的存储区 域(例如,与图1的存储器装置101的存储区域144类似或相同的存储区域)中。在确定 所述关系时,与图20相关联的所述装置可包括用以在时间间隔期间(例如,在装置初始化 期间)表征(例如,编程且然后读取)一个或一个以上选定存储器单元的活动。举例来说, 所述装置可使用具有对应于不同编程电流值(例如,图20的ISET、la、Ieeseti, lb、Ieeset2, Ic、 Ikeset3及Id)的不同脉冲振幅值的不同信号来对一个或一个以上选定存储器单元进行编程 (例如,在装置初始化期间)。然后,所述装置可读取所述选定存储器单元(例如,在装置初 始化期间)以获得其对应于不同编程电流值的电阻值(例如,图20的R0、Ra、RU Rb、R2、 Rc、R3及Rd)。因此,可使用许多不同编程电流值来构造所述关系(由曲线2000呈现),其 可包括或可不包括电阻值R0、RU R2及R3。如果不包括电阻值R0、RU R2及R3,那么其可 从所述关系中推断。编程操作(例如,在初始化之后)可使用此关系(例如,来自所述表的 值)来对存储器单元进行编程。在图20中,电阻值R0、R1、R2及R3中的每一者可称为目标电阻值,有时称作RTAK。 Rtak是将对存储器单元进行编程的既定电阻值。编程操作可基于将存储于存储器单元中的
信息的值来确定Rtak。电流值 I SET、I EESETl、IRESET2 及 ires ET 3 中的每一者可称为目标电流值(有
时称作Itak)。在编程操作期间,例如在初始化之后,编程操作可选择电流值ISET、Ikeseti、Ikeset2 及Ikeset3中的一者作为ITAK,此取决于将电阻值R0、Rl、R2及R3中的哪一者确定为RTAK。因 此,Itak是编程操作可最初选择来开始存储器单元的编程的电流值。在编程期间,编程操作 可相继调整Itak以对存储器单元进行编程,直到存储器单元具有等于Rtak或等于Rtak的可接
17受范围之内的值的电阻值。如果将用不同信息值来对不同选定存储器单元进行编程,那么编程操作可选择 Itak的不同值来对所述选定存储器单元进行编程。举例来说,基于电阻值R0、R1、R2及R3与 电流值ISET、IEESETi> Ireset2及IKESET3之间的关系,编程操作可在将存储于第一存储器单元中的 信息对应于电阻值Rl的情况下选择Itak = Ikeseti (且相继调整Ikeseti)来对所述第一存储器 单元进行编程。然后,编程操作可在将存储于第二存储器单元中的信息对应于电阻值R2的 情况下选择Itak = Ikeset2 (且相继调整Ikeset2)来对所述第二存储器单元进行编程。图21是在根据本发明的实施例的编程操作期间所使用的不同信号的电流对时间 图,所述不同信号有具有可调整振幅值2181、2182及2183的脉冲2100、2101、2102及2103。 振幅值2181、2182及2183可分别对应于电流值Ikeseti、Ikeset2及Ikeset3,所述电流值大于电流 值ISET。编程操作可分别使用脉冲2100、2101、2102及2103来致使存储器单元具有对应电 阻值R0、Rl、R2及R3。图21的电流值ISET、Ikeseti、Ieeset2及Ieeset3可对应于图20的那些电 流值。如图21中所示,编程操作可分别调整振幅值2181、2182及2183以获得经调整振 幅值2191、2192及2193。经调整振幅值2191、2192及2193中的每一者可包括比其对应振 幅值小或大经调整振幅量的值。举例来说,如图21中所示,经调整振幅值2192可小于或大 于振幅值2182。取决于Rtak的值,编程操作可选择振幅值2181、2182及2183中的一者作为 初始目标振幅值且可在用以对存储器单元进行编程的编程期间调整选定初始目标振幅值 直到其经编程电阻值(有时称作Rrae)等于RTAK(例如,R1、R2或R3)或在Rtak的可接受范围 之内。图22是显示在根据本发明的实施例的实例性编程操作期间的电阻对电流的图。 如上文参照图20及21所描述,Rtae可表示将编程到存储器单元的目标电阻值。图22中的 Rtak可对应于图20及图21的R1、R2及R3中的一者。出于描述与图22相关联的实例性编 程操作的目的,假设Rtak为电阻值R2。当存储器单元具有在Rtak的目标电阻值范围(有时称 作Rtak范围)内的电阻值时,编程操作可完成对存储器单元进行编程。如图22中所示,Rtak 范围可包括等于Rtak加上偏移值OFFSETh的上限电阻值及等于Rtak减去偏移值0FFSEIY的 下限电阻值。OFFSETh与0FFSEIY可具有相等值。OFFSETh可具有一值(例如,小于Rtak(例 如,R2)与下一较高目标电阻值(例如,R3)之间的差的一半),使得图22的上限电阻值 (Rtae+0FFSETh)可不与另一目标电阻值范围的下限电阻值(例如,R3减去0FFSETJ重叠。类 似地,OFFSETl可具有一值(例如,小于Rtak(例如,R2)与下一较低目标电阻值(例如,Rl) 之间的差的一半),使得图22的下限电阻值(Rtak-OFFSEIY)可不与另一目标电阻值范围的 上限电阻值(例如,Rl加上OFFSETh)重叠。在图22中,Rpeg.a、Rpeg.Β>Rpeg.C>Rpeg.D> Rpeg.e及R .F可表示存储器单元在各个重复的 编程期间可具有的各个经编程电阻值。编程操作可多于一次地重复对存储器单元进行编程 (例如,重设),以试图致使经编程电阻值在Rtak范围之内。如上文参照图20所描述,基于电阻值与电流值之间的关系,编程操作可使用具有 对应于电流值IKESET1、Ieeset2或Ikeset3的初始目标振幅值的信号来将存储器单元重设为电阻 值Rl、R2或R3。此处,在图22的实例中,由于假设Rtak为电阻值R2,因此编程操作可使用 具有有对应于目标电流值Itak = Ieeset2的初始目标振幅值的脉冲的信号来对存储器单元进行编程,使得Rtak(或在此实例中为R2)可被编程到存储器单元中。与图22相关联的编程操作可包括以下活动。编程操作可最初使用电流值(例 如,Ireset2)来对存储器单元进行编程。如果经编程电阻值Rrae在Rtak范围外部,那么编程 操作可相继调整电流值(例如,通过将电流值增加或减小经调整电流量,例如Ai、l/2Ai、 l/4Ai、l/8Ai或l/16Ai),以获得不同经调整电流值。例如Δ i、1/2 Δ i、1/4 Δ i、1/8 Δ i 及1/16 Ai等经调整电流量可称为经调整参数量。在每一调整之后,编程操作可使用所述 经调整电流值且重复对存储器单元进行编程直到Rrae在Rtak范围之内。举例来说,在图22中,在使用电流值Ikeset2经编程之后,存储器单元可具有Rpk;.a, 其在Rtak范围外部且小于Rtak。因此,编程操作可调整Ikeset2且重复所述编程直到存储器单 元具有在Rtak范围之内的经编程电阻值(例如,Rpeg.F)。如图22中所示,在使用初始电流值Ikeset2经编程之后,存储器单元可具有Rpi ;.Α,其 在Rtak范围外部。为重复编程,编程操作可通过将Ikeset2增加Ai来调整Ikeset2,且然后使用 经调整电流值Ikeset2b = Ieeset2+Δ i来重复对存储器单元进行编程。在使用Ikeset2b编程之后,存储器单元可具有RPKe.B,其仍在Rtak范围外部且小于Rtak。 因此,编程操作可通过将Ikeset2b增加Δ i来调整Ikeset2b,且然后使用经调整电流值Ikeset2c = Ikeset2b+Ai来重复对存储器单元进行编程。编程操作可保持将电流值增加Δ ,直到经编程 电阻值在Rtak范围之内(那么编程操作可完成对存储器单元进行编程)或在Rtak范围外部 但大于Rtak(那么编程操作可继续,但用小于Δ i的经调整电流量)。在图22中,在使用Ireset2c编程之后,存储器单元可具有RPK;.e,其仍在Rtak范围外部 且大于Rtak。因此,编程操作可通过将IKESET2。减小1/2 Δ i来调整IKESET2e,且然后使用经调整 电流值Ikeset2d = Ikeset2。-1/2 Δ i来重复对存储器单元进行编程。在使用Ikeset2d编程之后,存储器单元可具有RPKe.D,其仍在Rtak范围外部且大于Rtak。 因此,编程操作可通过将Ikeset2d减小1/4 Δ i来调整IKESET2D,且然后使用经调整电流值Ikeset2e =IEESET2D-l/4Ai来重复对存储器单元进行编程。在使用Ikeset2e编程之后,存储器单元可具有RPKe.E,其仍在Rtak范围外部且大于Rtak。 因此,编程操作可通过将Ikeset2e减小1/8 Δ i来调整IKESET2E,且然后使用经调整电流值Ikeset2f =IKESET2E_l/8Ai来重复对存储器单元进行编程。在使用Ikeset2f编程之后,存储器单元可具 有Rpm;.f,其在Rtak范围之内。由于RpkU在Rtak范围之内,因此编程操作可完成对存储器单 元进行编程。如上文所描述,如果在经编程之后存储器单元具有在Rtak范围外部且小于Rtak的 经编程电阻值(例如,1^<^或1 ^),那么编程操作可将先前电流值增加经调整电流量(例 如,Ai)。相反,如果在经编程之后存储器单元具有在Rtak范围外部且大于Rtak的电阻值(例 如,RpEG.O RpEG.D或Rpffi. E),那么编程操作可将先前电流值减小经调整电流量(例如,1/2 Δ i、 1/4 Δ i或1/8 Δ i)。由于当电流值被调整时经调整电流量(Δ i、1/2 Δ i、1/4 Δ i、1/8 Δ i或 1/16 Δ i)可不同(例如,变化),因此经调整电流量可包括可变电流量。在图22中,Ai可称为选定电流量。与图22相关联的装置可将Ai的值选择 为任一适当值。然而,为改善经编程电阻在Rtak范围之内的机会或为减少重复的编程的数 目,举例来说,装置可基于来自电阻值对电流值曲线(例如,图22的曲线2200)的两个邻 近重设电流值之间的值的差来选择Ai的值。举例来说,装置可将Ai的值选择为等于ITAE+0FFSET' h 与 ITAK-OFFSET' ^之间的差或小于 ITAK+0FFSET' h 与 ITAK+0FFSET' L 之间的 差(例如,是其一半)。Itak+0FFSET ‘ η及Itak-OFFSET ‘ L可分别包括用于获得Rtak+0FFSETh 及Rtak-OFFSEIY的脉冲的电流值。图23是显示在与图22相关联的实例性编程操作期间所使用的基于初始目标电流 值的各个经调整电流值的图。如图23中所示,编程操作可最初使用具有脉冲2302的信号, 所述脉冲具有对应于电流值Ikeset2的振幅值以重设存储器单元且相继调整脉冲2302的振 幅以获得所述信号的经调整脉冲2312、2322、2332、2342及2352,所述脉冲分别具有对应于
经调整电幺丨L·值 IreSET2B、IRESET2C、IRESET2D、IRESET2E 及 IRESET2F 白勺经调整振巾田值 ° 例如 IRESET2、IRESET2B、
Ieeset2o Ireset2d> Ikeset2e及Ikeset2f等电流值可称为编程参数值。编程操作然后可使用这些编 程参数值且重复所述编程直到经编程电阻值(例如,图22中的RraeJ在Rtak范围之内(图 22)。此外,如图23中所示,在每次编程操作对存储器单元进行编程使得存储器单元具 有经编程电阻值Rpk;.a、Rpeg.b> Rpeg.c> Rpeg.d> IW.E或IW.F之前,编程操作可使用具有对应于电 流值Iset的脉冲振幅值的信号2300来将存储器单元编程(例如,设定)为初始电阻值(例 如,RO)。在每次存储器单元被重设之前设定存储器单元可允许存储器单元具有一致初始电 阻值(例如,RO)以改善编程操作。图24是显示在根据本发明的实施例的实例性编程操作期间的电阻对电流的图, 所述编程操作使用基于斜率计算的经调整电流值。Rtak可表示将编程到存储器单元的目标 电阻值。Rtak可对应于图20及图21的R1、R2及R3中的一者。出于描述图24的目的,假设 Rtak为电阻值R2。图24还显示Rtak范围,所述Rtak范围可包括等于Rtak加上偏移值0FFSETH 的上限电阻值与等于Rtak减去偏移值0FFSETL的下限电阻值内的电阻值。RPK;.W、Rpeg.x> Rpeg. Y及Rratz可表示在各个重复的编程期间存储器单元可具有以致使经编程电阻(例如,Rrae.Y) 值在Rtak范围之内的各个经编程电阻值。如上文参照图20所描述,基于电阻值与电流值之间的关系,编程操作可使用具有 对应于电流值IKESET1、Ieeset2或Ikeset3的初始目标振幅值的信号来将存储器单元重设为电阻 值Rl、R2或R3。此处,在图24的实例中,由于假设Rtak为电阻值R2,因此编程操作可使用 具有有对应于目标电流值Itak = Ieeset2的初始目标振幅值的脉冲的信号来对存储器单元进 行编程,使得Rtak(或在此实例中为R2)可被编程到存储器单元中。不同于与图22相关联 的编程操作,与图24相关联的编程操作可基于斜率计算来调整电流值。与图24相关联的编程操作可包括以下活动。编程操作可最初使用电流值(例如, Ieeset2)来对存储器单元进行编程。如果经编程电阻值Rpi ;在Rtak范围外部,那么编程操作可 基于斜率计算来相继调整(例如,通过将电流值增加或减小经调整电流量,例如Ail、Ai2 或Ai3)电流值,以获得不同经调整电流值。例如Ail、Ai2及Δ i3等经调整电流量可称 为经调整参数量。在每一调整之后,编程操作可使用所述经调整电流值且重复对存储器单 元进行编程直到Rrae (例如,图24中的Rrae. γ)在Rtak范围之内。举例来说,在图24中,在使用电流值Ikeset2经编程之后,存储器单元可具有Rrae. w,其在Rtak范围外部且小于Rtak。编程操作可将Ikeset2增加到经调整电流值Ikeset2x = Ieeset2+Δ 1且重复所述编程。在使用Ikeset2x经编程之后,存储器单元可具有RPK;.X,其仍在Rtak范围外部且小于
20Rtak。编程操作可将Ikeset2x增加到经调整电流值Ikeset2y = Ieeset2x+Δ 2且重复所述编程。在使用Ikeset2y经编程之后,存储器单元可具有RPKe γ,其在Rtak范围之内且小于Rtak。 由于RpiY在Rtak范围之内,因此编程操作可完成对存储器单元进行编程。在以上实例中,替代其中在存储器单元使用初始Ikeset2经编程之后可具有RPKe.w的 情形,存储器单元可具有IWz。如图24中所示,Rratz在Rtak范围外部且大于Rtak。在此情 形中,编程操作可将Ikeset2减小到经调整电流值Ikeset2y = Ieeset2-Δ 3且重复所述编程。如 果存储器单元使用Ikeset2y经编程之后具有Rrae.γ,那么编程操作可完成对存储器单元进行编 程。否则,编程操作可使用其它经调整电流值重复一次或一次以上直到Rrae在Rtak范围之 内。如上文所描述,如果在经编程之后存储器单元具有在Rtak范围外部且小于Rtak的 电阻值(例如,!^“或! ^),那么编程操作可将先前电流值增加经调整电流量(例如,Δ il 或Δ 2)。在相反情况下,如果在经编程之后存储器单元具有在Rtak范围外部且大于Rtak的 电阻值(例如,Rratz),那么编程操作可将先前电流值减小经调整电流量(例如,Δ 3)。编程操作可如下基于斜率计算来确定经调整电流量Δ il、Δ i2及Δ i3的值。图24显示在两个点Reuvi与Reuv2之间具有斜率2405的曲线2400,其可具有相对 较靠近曲线2400上的Rtak的两个侧的两个点的值(电阻值)。举例来说,如果假设Rtak为 R2,那么点Roti及Raiv2分别可具有等于电阻值Rl及R3的值。在另一实例中,虽然图24将 点R_及Raiv2显示为在Rtak范围外部,然而点Raivi及Rot2可分别具有等于Rtak+0FFSETh及 Rtae-OFFSETl的值(曲线2400与由Rtak+0FFSETh及Rtak-OFFSETl表示的线交叉处的两个点)。 编程操作可使用斜率2405的值来确定其在一个或一个以上重复的编程期间可使用的经调 整电流量(例如,Δ il、Δ i2或Δ 3)的值。如图24中所示,在使用Ikeset2编程之后,存储器单元可具有RPKe.w,其仍在Rtak范围 外部且小于Rtak。因此,如上文所描述,编程操作可将Ikeset2增加经调整电流量且重复所述 编程。由于斜率2405是基于相对较靠近Rtak的两个点计算的,因此使用斜率2405来计算 将在下一(重复的)编程中使用的经调整电流量(例如,ΔΠ)可改善下一电阻值(例如, 从下一编程产生的Rratx或Rrae.γ)在Rtak范围之内的机会。编程操作可通过使Rratw及Rtak 的斜率(例如,图24中的斜率2401)的值与斜率2405 (Slope24ci5)的值相等来确定Δ il的 值。斜率2405的值及斜率2401 (Slope24cil)的值可分别遵循表达式(1)及(2)。Slope2405 = (Rcuv2-Rcuvi)/(Icuv2-Icuvi)(1)Slope2401 = Δ Ril/ Ail= (Rtar-Rpeg. ff)/Δ (2)如果Slope2401 = slope24(15,那么基于表达式(1)及(2),(Rtae-Rpeg. w) / Δ i 1 = (Rcuv2-Rcuvi) / (Icot2-Icuvi) ⑶因此,基于表达式(3),Δ il可遵循以下表达式(4)或(5)。Ail= (Rtae-Rpeg. w) * [ (Icuv2-Icuvi) / (Rcw2-Rcuvi)]⑷或Ail= (Rtae-Rpeg ff)*(l/slope2405)(5)由于已知表达式(5)的右侧上的变量中的每一者的值,因此可确定Δ il的值。在类似于表达式(5)的计算的计算中,可通过如下表达式(6)及(7)来确定Ai2 及Ai3的值。Δ 2 = Δ Ri2/ Δ 2 = (Rtar-Rpeg.χ) * [ (Icm2-Iam) / (Rcuv2-Rcuvi)]或
Δ 2 = ( (Rtae-Rpeg. x)*(l/slope2405)(6)Δ 3 = Δ Ri3/ Δ 3 = (Rtar-Rpeg.ζ) * [ (Icuv2-Icwi) / (Rcuv2-Rcuvi)]或Δ i3 = (Rtak-Rpkg.z)*(l/slope2405)(7)由于经编程电阻值(例如,Rratw或RPKe.x)可具有小于Rtak或大于Rtak的值(例 如,RPK;.Z大于RTAK),且由于编程操作可将电流值增加或减小正的经调整电流值(例如, Ail、Ai2或Δ i3),因此以上表达式(5)、(6)及(7)通常可表达为Δ ix = Rtar-Rpeg | * (1/ slope·),其为Rtae与Rpeg之间的差的绝对值乘以(l/sl0pe24Q5),其中Δ ix表示将在重复 的编程中使用的经调整电流量(例如,Ail、Ai2或Δ i3),且Rrae表示在先前编程之后存 储器单元可具有的经编程电阻值(例如,Rpeg.ff> Rratx或Rratz)。如本文中所描述,由于当电 流值被调整(增加或减小)时经调整电流量(Ail、Ai2或Ai3)可不同(例如,变化), 因此所述经调整电流量可包括可变电流量。图25是在与图24相关联的实例性编程操作期间所使用的各个经调整电流值的 图。图25显示可在编程期间发生的两种实例性情形,一种情形在线2544的左侧且另一情 形在线2544的右侧。如图25中的线2544的左侧所示,编程操作可最初使用具有脉冲2502 的信号,所述脉冲具有对应于电流值Ikeset2的振幅值。然后,编程操作可相继调整脉冲2502 的振幅以获得所述信号的经调整脉冲2512及2522,所述脉冲分别具有对应于经调整电流 值Ikes■及Ikeset2x的经调整振幅值。编程操作可使用这些经调整电流值且重复编程直到 经编程电阻值(例如,图24中的RPK;.Y)在Rtak范围之内(图24)。在图25中的线2544右 侧的情形中,编程操作可最初使用具有脉冲2502的信号,所述脉冲具有对应于电流值Ikeset2 的振幅值,且然后相继调整脉冲2502的振幅以获得至少一个经调整脉冲,例如所述信号的 脉冲2532,其具有对应于经调整电流值(例如,Ieeset2y)的经调整振幅值。编程操作可使用 所述经调整电流值且重复所述编程直到经编程电阻值(例如,Rrae.γ)在Rtak范围之内(图 24)。例如IKESET2、Ieeset2x及Ikeset2y等电流值可称为编程参数值。此外,如图25中所示,在每次编程操作对存储器单元进行编程(例如,重设)使得 存储器单元具有经编程电阻值RKre.w、RKre.x或RKre.z之前,编程操作可使用具有对应于电流值 Iset的脉冲振幅值的信号2500来将存储器单元编程(例如,设定)为初始电阻值(例如, R0)。上文参照图20到图25的说明描述了其中编程操作可调整用以对存储器单元进行 编程的信号的脉冲的振幅直到存储器单元的经编程电阻在目标电阻值范围之内的实例。或者,为对存储器单元进行编程,编程操作可将脉冲的振幅值保持在相同或大致 相同的值且调整脉冲的转变时间值(替代调整脉冲的振幅或除调整脉冲的振幅外)直到存 储器单元的经编程电阻在目标电阻值范围之内。图26是显示在根据本发明的实施例的编程操作期间用作目标值的电阻值R0、R1、 R2及R3与转变时间值I;、T1, T2及T3之间的关系的曲线2610的图。如图26中所示,转变 时间值UpT2及T3中的每一者可表示脉冲的脉冲下降时间值。与图26相关联的装置可 表征(例如,编程且然后读取)选定存储器单元以确定由曲线2610表示的关系(例如,电 阻值R0、Rl、R2及R3与脉冲下降时间值)且然后将所述关系存储(例如,以表中的值的形 式)于所述装置的存储区域中。如图26中所示,编程操作可使用具有脉冲2600的信号来 将存储器单元编程为电阻值RO且分别使用具有不同脉冲2601、2602及2603的不同信号来将存储器单元编程为电阻值Rl、R2或R3,所述脉冲具有转变时间值(以时间为单位,例如 毫微秒)I\、T2及Τ3。脉冲2600的转变时间值Ttl可大于转变时间值Ι\、Τ2及T3中的每一者 以将存储器单元编程为较低电阻值R0。如图26中所示,脉冲2600、2601、2602及2603可具 有相同或大致相同的振幅值(例如,相同电流值)。转变时间值WT2及T3中的每一者 可称为目标转变时间值(有时称作Ttak)。在编程操作期间(例如,在初始化之后),编程操 作可选择转变时间值 ;、T1, T2及T3中的一者作为Ttak,此取决于将电阻值R0、Rl、R2及R3 中的哪一者确定为Rtak。在编程期间,编程操作可相继调整Ttak以对存储器单元进行编程, 直到存储器单元具有等于Rtak或等于Rtak的可接受范围之内的值的电阻值。图27是显示在根据本发明的实施例的编程操作期间所使用的具有脉冲2700、 2701、2702及2703的不同信号的图,所述脉冲具有可调整转变时间值U1J2及T3。编程 操作可分别使用脉冲2700、2701、2702及2703来致使存储器单元具有对应电阻值R0、RU R2及R3。如图27中所示,脉冲2700、2701、2702及2703可具有相同或大致相同的振幅值 (例如,相同电流值Ikesety)。图27的转变时间值 ;、T1, T2及T3可对应于图26的那些转变 时间值。或者,图27的脉冲2700可具有方形(或大致方形)波形状及小于脉冲2701、2702 及2703中的每一者的振幅的振幅值(例如,电流值Iset),其具有充分脉冲宽度以完全设定 存储器单元。如图27中所示,编程操作可调整转变时间值 ;、T1, T2及T3以分别获得经调整转 变时间值TA·、Tadji, Tadj2及Τ_。经调整转变时间值T_、Tadji, Tadj2及Taw3中的每一者可 包括比其对应转变时间值小或大经调整时间量的值。举例来说,如图27中所示,经调整转 变时间值Taw2可小于或大于转变时间值Τ2。取决于Rtak的值,编程操作可选择转变时间值 1\、T2及T3中的一者作为初始目标转变时间值且可在用以对存储器单元进行编程的编程期 间调整选定初始目标转变时间值直到其经编程电阻值Rrae等于RTAK(例如,Rl、R2或R3)或 在Rtak的可接受范围之内。图28是显示在根据本发明的实施例的实例性编程操作期间的电阻对转变时间的 图。除一些例外外,与图28相关联的实例性编程操作可包括类似于与图22相关联的实例 性编程操作的活动。如上文所描述,与图22相关联的编程操作可在Rrae在Rtak范围外部且 小于Rtak时相继增加电流值(例如,Ieeset2)且在Rrae在Rtak范围外部且大于Rtak时减小电流 值。然而,在图28中,编程操作可在Rrae在Rtak范围外部且小于Rtak时相继减小转变时间值 (例如,T2)且在Rrae在Rtak范围外部且大于Rtak时增加转变时间值。在图28中,Rtae, RTAK+0FFSETh、Rtar-OFFSETl及Rtak范围可与上文参照图22所描述 的那些类似或相同。出于描述图28的目的,假设Rtak为电阻值R2。Rrae. A、Rpeg. b、Rrae. c、Rrae. D、!^㈡及!^㈡可表示各个重复的编程期间存储器单元可具有的各个经编程电阻值。编程 操作可多于一次地重复对存储器单元进行编程(例如,重设),以试图致使经编程电阻值在 Rtak范围之内。在图28的实例中,由于假设Rtak为电阻值R2,因此编程操作可使用具有有初 始目标转变时间值Ttak = T2的脉冲的信号来对存储器单元进行编程,使得Rtak(或在此实例 中为R2)可被编程到存储器单元中。与图28相关联的编程操作可包括以下活动。编程操作可最初使用转变时间值(例 如,T2)来对存储器单元进行编程。如果编程电阻值Rrae在Rtak范围外部,那么编程操作可相 继调整转变时间值(例如,通过将转变时间值增加或减小经调整时间量,例如At、1/2 At、l/4At、l/8At或l/16At)以获得不同经调整转变时间值。例如Δ t、1/2 Δ t、1/4 Δ t、 l/8At及l/16At等经调整时间量可称为经调整参数量。在每一调整之后,编程操作可使 用所述经调整转变时间值且重复对存储器单元进行编程直到Rrae在Rtak范围之内。举例来说,在图28中,在使用转变时间值T2经编程之后,存储器单元可具有Rrae.A, 其在Rtak范围外部且小于Rtak。因此,编程操作可调整转变时间值T2且重复所述编程直到 存储器单元具有在Rtak范围之内的经编程电阻值(例如,Rpeg.F)。如图28中所示,在使用初始转变时间值T2经编程之后,存储器单元可具有Rpk;.a, 其在Rtak范围外部。为重复编程,编程操作可通过将T2减小At来调整转变时间值T2,且然 后使用经调整转变时间值Taw2b = T2-At来重复对存储器单元进行编程。在使用Taw2b编程之后,存储器单元可具有RPKe.B,其仍在Rtak范围外部且小于Rtak。 因此,编程操作可通过将Taw2b减小Δ t来调整Taw2b,且然后使用经调整转变时间值Taw2c = Taw2b-At来重复对存储器单元进行编程。编程操作可保持将电流值减小Ai,直到经编程 电阻值在Rtak范围之内(那么编程操作可完成对存储器单元进行编程)或在Rtak范围外部 但大于Rtak(那么编程操作可继续,但用小于Δ i的经调整电流量)。在使用TawM编程之后,存储器单元可具有RPKe.e,其仍在Rtak范围外部且小于Rtak。 因此,编程操作可通过将Taw2c减小Δ t来调整Taw2c,且然后使用经调整转变时间值Taw2d = TADJ2C- Δ t来重复对存储器单元进行编程。在使用Taw2d编程之后,存储器单元可具有RPKe.D,其仍在Rtak范围外部但大于Rtak。 因此,编程操作可通过将Taw2d增加1/2 Δ t来调整TAW2D,且然后使用经调整转变时间值Taw2e =TADJ2D+l/2 Δ t来重复对存储器单元进行编程。在使用Taw2e编程之后,存储器单元可具有RPKe.E,其仍在Rtak范围外部且大于Rtak。 因此,编程操作可通过将Taw2e增加1/4 Δ t来调整TAW2E,且然后使用经调整转变时间值Taw2f =TADJ2E+l/4 Δ t来重复对存储器单元进行编程。在使用Taw2f编程之后,存储器单元可具有 Rpeg. F,其在Rtak范围之内。由于Rrae. F在Rtak范围之内,因此编程操作可完成对存储器单元进 行编程。如上文所描述,如果在经编程之后存储器单元具有在Rtak范围外部且小于Rtak的 经编程电阻值(例如,Rpeg.a> Rpeg.β或RPK;.e),那么编程操作可将先前转变时间值减小经调整 转变时间量(例如,△〖)。相反,如果在经编程之后存储器单元具有在Rtak范围外部且大于 Rtak的电阻值(例如,Rpeg.D或Rpk;.e),那么编程操作可将先前转变时间值增加经调整转变时 间量(例如,1/2 Δ t或1/4 Δ t)。由于当转变时间被调整时经调整转变时间量(例如,Δ t、 l/2At、l/4At、l/8At或l/16At)可不同(例如,变化),因此所述经调整转变时间量可 包括可变转变时间量。在图28中,At可称为选定时间量。与图28相关联的装置可将At的值选择为 任一适当值。然而,为改善经编程电阻在Rtak范围之内的机会或为减少重复的编程的数目, 举例来说,装置可基于来自电阻值对转变时间值曲线(例如,图28的曲线2800)的两个 邻近转变时间值(例如,T1, T2&T3)之间的值的差来选择At的值。举例来说,装置可将 Δ t的值选择为等于TTAK+0FFSET〃 Η与Ttak-OFFSET" L之间的差或小于TTAK+0FFSET〃 h与 TTAE+0FFSET “ L 之间的差(例如,是其一半)。TTAE+0FFSET “ H 及 TTAK-OFFSET “ ^ 可分别包 括用于获得RTAK+0FFSETh及Rtak-OFFSEIY的脉冲的转变时间值。
24
图29是显示在与图28相关联的实例性编程操作期间所使用的基于初始目标转变 时间值的各个经调整转变时间值的图。如图29中所示,编程操作可最初使用具有脉冲2902 的信号,所述脉冲具有对应于电流值Ikesety的振幅值及转变时间值T2以对存储器单元进行 编程且相继调整脉冲2902的转变时间T2以获得所述信号的经调整脉冲2912、2922、2932、 2942及2952,所述脉冲分别具有经调整转变时间值Taw2b, T ADJ2C、Tadj2d、Tadj2e 及 Tadj2f O 例如 T2> Tadj2b, Tadj2c, Tadj2d, Tadj2e及Taw2f等转变时间值可称为编程参数值。编程操作然后可使用 这些编程参数值且重复所述编程直到经编程电阻值(例如,图28中的RPKe.Y)在Rtak范围之 内(图28)。
在本文中的说明中,图式中未按比例显示特征。为便于图解说明本文中的实施例, 一些图式可能夸大图式中所示特征当中的关系或使其形成对比。举例来说,图22显示Rtak 范围大于两个中间邻近经编程电阻值(例如,Rpeg.Β及IWe)。然而,RTAE范围可小于两个中 间邻近经编程电阻值之间的差。此外,本文中的一些实例在将存储器单元编程为目标电阻 值时可使用某一特定数目个经编程电阻值(例如,图22、图23或图28中的Rpk;.a、Rpk;.b、Rpk;. C、Rpeg.D> IWe及IWf或图24中的IWw、Rpeg.IWy及IWz)。然而,经编程电阻值的数目 可少于或多于这些实例中所使用的数目。举例来说,在图22及图28中,在编程操作将电流 量调整+ Δ i之后,存储器单元的电阻值可从Rrae.A跳到Rpeg.Dο在另一实例中,在一个编程之 后Rpk;.a(图22或图28)、Rpeg.ff(图24)可在Rtak范围之内,使得不执行重复的编程及调整。 因此,在编程操作期间,存储器单元的经编程电阻值可比本文中所描述的实例更快地聚合 到Rtak范围。参照图20到图29的上文说明描述了装置的一些实例性编程操作,包括用以调整 用以对存储器单元进行编程(例如,重设)的脉冲的振幅值(例如,电流值)或转变时间值 (例如,脉冲下降时间值)的活动。下文参照图30到图34的说明描述了操作装置的方法, 其可包括以上实例性编程操作的一些或所有活动。图30是显示根据本发明的实施例操作装置的方法3000的流程图。方法3000可 在活动3005处开始,所述活动可包括接通(例如,加电)所述装置或向所述装置供应电力。活动3010可包括创建在对所述装置的至少一个存储器单元进行编程期间所述装 置的编程操作可使用的表。活动3010可在未从外部装置(例如,处理器或存储器控制器) 接收到命令(例如,编程或读取命令)的情况下在时间间隔期间(例如,在装置初始化期 间)创建所述表。所述表可包括编程参数值及表示存储器单元的表征的值。举例来说,活动 3010可包括创建例如表3100 (图31)的表。如图31中所示,表3100可包括与目标电阻值 RO、Ra、Rl、Rb、R2、Rc、R3 及 Rd 与对应电流值 Iset 、la、Ireseti、lb、Ireset2、Ic、Ireset3 及 Id 之间 的关系相关联的值。表3100还可包括与信息的值(例如,“00”、“01”、“10”及“11”)与电 阻值R0、Rl、R2及R3之间的关系相关联的值。然而,所述装置可将电阻值R0、Rl、R2及R3 与信息的值(例如,“00”、“01”、“10”及“11”)之间的关系从表3100中排除且将所述关系 存储于与表3100分开的位置。为简单起见,表3100包括四个电阻值、四个电流值及四个信 息值的实例以指示所述装置的每一存储器可经配置以存储表示两个信息位的四个逻辑状 态(其也可称为等级)。然而,当存储器单元经配置以存储表示其它数目个信息位(例如, 三个或四个)的其它数目个逻辑状态时,表3100可包括其它数目(例如,八个、十六个或其 它数目)个电阻值、电流值及信息值。
为创建表3100,活动3010可包括使用具有对应于不同电流值(例如,ISET、la、 IEESET1> lb、IrESET2> Ic> Ikeset3及Id)的不同振幅值的信号对存储器装置的一些选定存储器单 元进行编程(例如,在装置初始化期间)。用于对选定存储器单元进行编程的不同振幅值可 使得选定存储器单元具有不同电阻值。在选定存储器单元经编程之后,活动3010可读取选 定存储器单元并测量其电阻值。然后,活动3010可将所测量电阻值(例如,R0、Ra、Rl、Rb、 R2、Re、R3及Rd)及已用于将选定存储器单元编程为所述所测量电阻值的对应电流值(例 如,Iset> la、Ieeseti> lb、Ieeset2> Ic、Ieeset3 及 Id)存储于表 3100 中。方法 3000 可使用表 3100 中的电流值或基于表3100的推断值中的一者作为初始(例如,目标)电流值(例如,ISET、 Ikeseti、Ikeset2或Ikeset3)来在编程操作(例如,响应于从装置(例如,处理器或存储器控制器) 提供的编程命令的编程操作)期间对存储器单元进行编程。
或者或另外,图30的活动3010可包括创建例如图32的表3200的表。如图32中 所示,表3200可包括目标电阻值R0、Ra、R1、Rb、R2、Re、R3及Rd与编程操作用来将存储器 单元编程为例如R0、Ra、RURb, R2、Re、R3及Rd等电阻值的信号的脉冲的对应转变时间值 !"。、!^、!^!^、!^!^、!^及Td之间的关系。表3200还可包括信息的值(例如,“00”、“01”、 “10”及“11”)与电阻值R0、R1、R2及R3之间的关系。然而,所述装置可将电阻值R0、R1、 R2及R3与信息的值(例如,“00”、“01”、“10”及“11”)之间的关系从表3200中排除且将 所述关系存储于与表3200分开的位置。为创建表3200,活动3010可包括使用具有不同转变时间值(例如, ;、Ta、T1、Tb、 T2、Tc、T3&Td)的信号对存储器装置的一些选定存储器单元进行编程(例如,在装置初始 化期间)。在选定存储器单元经编程之后,活动3010可读取选定存储器单元并测量存储器 单元的电阻值。然后,活动3010可将所测量电阻值(例如,RO、Ra、Rl、Rb、R2、Rc、R3及Rd) 及已用于对选定存储器单元进行编程的对应转变时间值(例如,T0, Ta、1\、Tb、T2, Tc、T3及 Td)存储于表3200中。方法3000可使用表3200中的转变时间值或基于表3200的推断值 中的一者作为初始(例如,目标)转变时间值(例如,WT2或T3)来在编程操作(例如, 响应于从装置(例如,处理器或存储器控制器)提供的编程命令的编程操作)期间对存储 器单元进行编程。表3100及3200中的每一者可包括硬件、固件、软件或其组合。方法3000所使用 的装置可将由活动3010创建的表存储于与图1的存储区域144类似或相同的存储区域中。 图30的方法3000可使用表3100或3200来对所述装置的存储器单元进行编程。在活动 3010创建表(例如,表3100或3200)之后,方法3000可继续活动3015。活动3015可包括获取用以对存储器单元进行编程的编程参数值。举例来说,基于 将编程到存储器单元的信息的值,在活动3015中获取编程参数可包括存取装置的包括表 (例如,表3100或3200)的一些位置,以确定目标电阻值Rtak及基于目标电阻值的目标振幅 值(例如,Itak)或目标转变时间值(例如,Ttae)。活动3015还可基于Rtak确定目标电阻值 范围(Rtak范围)。举例来说,活动3015可包括确定基于Rtak的Rtak范围的上限及下限电阻 值及偏移值,例如与上文参照图20到图29所描述的那些偏移值类似或相同的OFFSETh及 0FFSEIY。所述装置的存储区域可存储所述偏移值。图30中的活动3025可对存储器单元进行编程以致使其具有初始电阻值,例如由 图23、图25或图29的RO表示的“设定”电阻值。活动3025可包括如上文参照图18及图19所描述的设定活动以将存储器单元的可编程部分的材料改变为结晶相(例如,图6的结 晶相613)。活动3030可包括对存储器单元进行编程以致使其具有等于Rtak或在Rtak范围之内 的经编程电阻值RPK;。活动3030可使用具有至少一个脉冲的信号,所述脉冲可具有与上文 参照图20到图29所描述的那些类似或相同的振幅值或转变时间值或两者。在活动3030 中,经编程电阻值Rrae可具有与图22及图28的Rpk;.a、Rpeg.b, Rpeg.c> Rpeg.d> Rpk;.e及Rpk;.f中的 一者或一者以上或图24的Rrae.w、Rrae.x、Rrae.γ及Rpi ;.z中的一者或一者以上类似或相同的值。图30的活动3035可包括感测存储器单元以获得电阻值(例如,在活动3025或 3030中编程的电阻值或两者)。然而,方法3000可包括跳过活动3025及3030 (由活动3034 指示)且可在未在活动3025及3030中对存储器单元进行编程的情况下感测存储器单元以 获得电阻值。存储器单元可已经具有现有电阻值(在执行活动3025或3030之前),其可在 Rtak范围之内。因此,跳过编程活动3025及3030可避免存储器单元的额外编程,从而改善 装置的寿命。在此说明中,读取存储器单元是感测所述存储器单元的一种形式。活动3040可包括确定存储器单元的经编程电阻值是否在Rtak范围外部。如果经 编程电阻值不在Rtak范围外部(即,在Rtak范围之内),那么方法3000可继续活动3045以 完成所述编程。如果经编程电阻值在Rtak范围外部,那么方法3000可继续到活动3099。如 果方法3000跳过活动3025及3030,那么活动3040可包括确定存储器单元的现有电阻值是 否在Rtak范围外部。如果现有电阻值不在Rtak范围外部(即,在Rtak范围之内),那么方法 3000可继续活动3045以完成所述编程。如果现有电阻值在Rtak范围外部,那么方法3000 可继续到活动3099。活动3099可包括调整活动3099中所使用的脉冲振幅值及脉冲转变时间值中的一 者或两者。举例来说,活动3099可包括将电流值调整经调整电流量,例如△ i (参照图20到 图25描述)。或者或另外,活动3099可包括将转变时间值调整经调整时间量,例如At(参 照图26到图29描述)。方法3000可重复活动3088中的一些或所有及活动3099,直到存 储器单元的经编程电阻值Rrae在Rtak范围之内。举例来说,如果方法3000在活动3088中 使用表3100 (电阻值及振幅电流值)来对存储器单元进行编程,那么方法3000可在活动 3099中调整电流值且重复活动3025、3030、3035及3040 (由重复的活动3055指示)。在另 一实例中,如果方法3000在活动3088中使用表3200 (电阻值及转变时间值)来对存储器 单元进行编程,那么方法3000可在活动3099中调整转变时间值且重复活动3030、3035及 3040 (由活动3033指示)。如果跳过活动3025及3030且如果活动3040中的电阻值在Rtak范围外部,那么方 法3000可从活动3040跳到活动3025,从而将活动3099省略一次,因为振幅值可能尚未用
于对存储器进行编程。由活动3099执行的调整可包括图33的方法3300的活动或图34的方法3400的活动。 图33是显示根据本发明的实施例操作装置(包括振幅值调整)的方法3300的流 程图。方法3300可包括活动3388,其可与图30的活动3088类似或相同。举例来说,活动 3388可包括用以对存储器单元进行编程的活动3302及用以确定存储器单元的经编程电阻 值Rpi ;是否在电阻目标值范围(Rtak范围)外部的活动3304。图33显示其中活动3304可确定R1 在Rtak范围外部的实例。方法3300还可包括用以调整用以对存储器单元进行编程 的电流值的活动3399,且重复活动3302处的编程直到Rrae在Rtak范围之内。方法3300可包括用以在Rrae在Rtak范围外部的情况下将Rrae与目标电阻值Rtak相 比较的活动3305。基于所述比较,方法3300可继续活动3306及活动3310或3320。活动 3306可 继续修改Δ i,使得Δ i的适当值可用于活动3310或3320。活动3306在下文中更 详细描述。活动3310可包括在Rrae小于Rtak的情况下将电流值增加Ai。活动3320可包 括在Rrae大于Rtak的情况下将电流值减小Δ i。基于例如图31的表3100的表,电流值可具 有对应于电流值IKESET1、Ieeset或Ikeset3的初始值。Δ i可具有以与上文参照图22所描述的 那些方式类似或相同的方式选择的初始值。活动3306可有条件地修改Δ i,使得在活动3310或3320中所使用的Δ i可保持 在相同值(例如,等于Ai的先前值(例如,Ai的初始值)的值)或可变化,此取决于Rpkc 的各个值。在编程操作期间,Rrae可具有在Rtak范围外部且小于Rtak的一个或一个以上值 (例如,与图22的RPKe.A或Rpk;.b类似的值)及在Rtak范围外部且大于Rtak的一个或一个以 上其它值(例如,与图22的Rrae.。、Rrae.D或Rrae.E类似的值)。方法3300可存储编程操作期 间Rrae的值,以允许活动3306基于Rrae的所存储值有条件地修改Δ i,如下文所描述。如果在编程操作期间的任何时间处Rrae的所有值在Rtak范围外部且小于Rtak,那么 活动3306可将Δ i保持在相同值(例如,等于Δ i的初始值的值)。如果在编程操作期间的任何时间处Rrae的所有值在Rtak范围外部且大于Rtak,那么 活动3306也可将Δ i保持在相同值(例如,等于Δ i的初始值的值)。如果在编程操作期间的任何时间处Rrae(例如,与图22的Rpk;.a或Rpk;.b类似的值) 中的至少一个值在Rtak范围外部且小于Rtak且Rrae(例如,与图22的RPKe.e、Rpeg.D或RPKe.E类 似的值)中的至少一个值在Rtak范围外部且大于RTAK,那么活动3306可修改Ai(例如,减 小 Δ i)。基于活动3305中的比较及活动3306中对Δ i的有条件修改,如果在编程操作期 间的任何时间处Rrae的所有值小于RTAK,那么活动3310可将电流值(用于下一编程序列) 增加相同的初始值Δι。如果在编程操作期间的任何时间处Rrae的至少一个值小于Rtak且 Rpeg的至少一个值大于Rtak,那么活动3310可将电流值增加Δ i的经修改值。基于活动3305中的比较及活动3306中对Δ i的有条件修改,如果在编程操作期 间的任何时间处Rrae的所有值大于RTAK,那么活动3320可将电流值(用于下一编程序列) 减小相同的初始值Δι。如果在编程操作期间的任何时间处Rrae的至少一个值小于Rtak且 Rpeg的至少一个值大于Rtak,那么活动3320可将电流值减小Δ i的经修改值。方法3300可通过将Ai减小因子(l/2n)来修改Δ i,其中“η”是实数。方法3300 可在每次活动3306修改Δ i之后将“η”增加非整数值,使得当方法3300增加或减小电流值 时Δ i的值可不同(例如,减小)。方法3300还可在每次活动3306修改Δ i值之后将“η” 增加整数值(1、2或3或其它值)。举例来说,“η”可最初等于活动3306修改Δ i之前的一 者。方法3300可在每次活动3306修改Δ i之后将“η”增加一。因此,当活动3306第一次 修改Δ i时,方法3300可将经调整电流值增加或减小经调整电流量1/2 Δ i (即,(1/21) Δ i =l/2Ai)。然后,方法3300可将其它经调整电流值增加或减小(l/2n) Ai,其中“η”是对 应于活动3306修改Δ i的总次数的整数值。活动3306可以与上文参照图22及图23所描述的那些方式类似或相同的方式修改Ai以得到不同经调整电流量,例如l/2Ai、l/4Ai、 1/8Δ i 及 1/16 Δ i。如果方法3300使用具有与上文参照图24及图25所描述的Ail、Ai2及Δ i3的 那些值类似或相同的值的Δ i,那么活动3306可使用斜率计算来修改Ai。方法3300可重复活动3388及3399直到Rrae在Rtak范围之内。图34是显示根据本发明的实施例操作装置(包括转变时间值调整)的方法3400 的流程图。除方法3400可增加或减小脉冲的转变时间值(替代如图33中的电流值)夕卜, 方法3400与图33的方法3300类似。在图34中,方法3400可包括活动3488,其可与图30 的活动3088类似或相同。举例来说,活动3488可包括用以对存储器单元进行编程的活动 3402及用以确定经编程电阻值Rrae是否在电阻目标值范围(Rtak范围)外部的活动3404。 图34显示其中活动3404可确定Rrae在Rtak范围外部的实例。方法3400还可包括用以调整 用以对存储器单元进行编程的转变时间值的活动3499,且重复活动3402处的编程直到Rrae 在Rtak范围之内。方法3400可包括用以在Rrae在Rtak范围外部的情况下将Rrae与目标电阻值Rtak相 比较的活动3405。基于所述比较,方法3400可继续活动3406及活动3410或3420。活动 3406可继续修改Δ t,使得Δ t的适当值可用于活动3410或3420。活动3406在下文中更 详细描述。活动3410可包括在Rrae小于Rtak的情况下将转变时间值减小At。活动3420 可包括在Rrae大于Rtak的情况下将转变时间值增加At。基于例如图32的表320的表,转 变时间值可具有对应于转变时间值I\、T2及T3的初始值。Δ t可具有以与上文参照图28所 描述的那些方式类似或相同的方式选择的初始值。活动3406可有条件地修改Δ t,使得在活动3410或3420中所使用的Δ t可保持 在相同值(例如,等于At的先前值(例如,Ai的初始值)的值)或可变化,此取决于Rpkc 的各个值。在编程操作期间,Rrae可具有在Rtak范围外部且小于Rtak的一个或一个以上值 (例如,与图28的IWA、IWB或IWc类似的值)及在Rtak范围外部且大于Rtak的一个或一 个以上其它值(例如,与图28的Rpk;.d或!^㈡类似的值)。方法3400可存储编程操作期间 Rpeg的值,以允许活动3406基于Rrae的所存储值有条件地修改△ t,如下文所描述。如果在编程操作期间的任何时间处Rrae的全部值在Rtak范围外部且小于RTAK,那么 活动3406可将Δ t保持在相同值(例如,等于Δ i的初始值的值)。
如果在编程操作期间的任何时间处Rrae的全部值在Rtak范围外部且大于RTAK,那么 活动3406也可将Δ t保持在相同值(例如,等于Δ i的初始值的值)。如果在编程操作期间的任何时间处RPK;(例如,与图28的Rrae.A、Rrae.B或Rpi ^类似 的值)中的至少一个值在Rtak范围外部且小于Rtak且Rrae(例如,与图28的IWd或RPKe.E类 似的值)中的至少一个值在Rtak范围外部且大于RTAK,那么活动3406可修改At(例如,增 加 At)。基于活动3405中的比较及活动3406中对Δ t的有条件修改,如果在编程操作期 间的任何时间处Rrae的所有值小于RTAK,那么活动3410可将转变时间值(用于下一编程序 列)减小相同的初始值At。如果在编程操作期间的任何时间处Rrae的至少一个值小于Rtak 且Rrae的至少一个值大于Rtak,那么活动3410可将转变时间值减小Δ t的经修改值。基于活动3405中的比较及活动3406中对Δ t的有条件修改,如果在编程操作期间的任何时间处Rrae的所有值大于RTAK,那么活动3420可将转变时间值(用于下一编程序 列)增加相同的初始值At。如果在编程操作期间的任何时间处Rrae的至少一个值小于Rtak 且Rrae的至少一个值大于RTAK,那么活动3420可将转变时间值增加Δ t的经修改值。方法3400可以与图33的方法3300修改Δ i的那些方式类似或相同的方式来修 改At。举例来说,方法3400可通过将At减小因子(l/2n)来修改At,其中“η”是实数, 其中每次活动3406修改At时方法3400可将“η”增加非整数值或整数值。活动3406可使用上文参照图24及图25所描述的斜率计算来修改Δ t,但在所述 斜率计算中用At取代Ail、Ai2或Ai3。当使用斜率计算来修改At时,活动3406可 使用与图24的曲线2400类似的曲线来计算斜率,但用时间轴取代图24中的电流轴,使得 在斜率计算中所使用的曲线可表示电阻与转变时间之间的关系(与图28的曲线2800的电 阻与转变时间之间的关系类似)。
方法3400可重复活动3488及3499直到Rrae在Rtak范围之内。在本文中所描述的编程操作及方法3000、3300及3400中所使用的存储器单元可 包括存储器单元600或1100(图6到图9及图11到图14)。本文中所描述的编程操作可 允许以沿电流轴(例如,图20的电流轴)的电流值的相对较大限度来配置存储器单元(例 如,存储器单元600或1100),或允许沿时间轴(例如,图26的时间轴)的转变时间值的相 对较大限度。电流或转变时间值的较大限度可允许改善的编程、将更多逻辑状态存储于存 储器单元中及/或存储器单元当中的更紧密电阻分布。因此,可实现每存储器单元的较高 位密度。本文中所描述的编程操作还可改善数据保持与装置可靠性。此外,本文中所描述 的编程操作可允许相对较快地集中到目标电阻值及/或相对更一致的经编程电阻值,从而 还可改善装置性能(例如,编程速度)。对设备(例如,存储器装置101及201以及存储器单元100、200、300、400、500、600 及1100)的图解说明旨在提供对各种实施例的结构的一般了解,而并非旨在提供对可能利 用本文中所描述操作及结构的设备及系统的所有元件及特征的完全说明。上文所描述的特征中的任一者可以多种方式(包括经由软件仿真)实施。因此, 上文所描述的设备(例如,存储器装置101的一部分或整个存储器装置101,及存储器装置 201的部分或整个存储器装置201)在本文中可表征为若干“模块”(或一个“模块”)。这 些模块可根据所述设备(例如,存储器装置101及201)的设计师所期望,且根据对于各种 实施例的特定实施方案的需要包括硬件电路、单处理器及/或多处理器电路、存储器电路、 软件程序模块及对象及/或固件及其组合。举例来说,这些模块可包括于系统操作仿真封 装中,例如软件电信号仿真封装、功率使用及分布仿真封装、电容电感仿真封装、功率/热 耗散仿真封装、信号发射_接收仿真封装及/或用于操作或仿真各种潜在实施例的操作的 软件与硬件的组合。各种实施例的方法及设备可包括或包括于用于高速计算机、通信及信号处理电 路、单处理器或多处理器模块、单嵌入式处理器或多嵌入式处理器、多核处理器、数据开关 及包括多层、多芯片模块的专用模块中的电子电路中。这些方法及设备可进一步包括为各 种电子系统内的子组件,例如电视、蜂窝式电话、个人计算机(例如,膝上型计算机、桌上型 计算机、手持式计算机、平板计算机等)、工作台、无线电、视频播放器、音频播放器(例如, MP3(运动图像专家组音频层3)播放器)、车辆、医学装置(例如,心脏监测器、血压监测器等)、机顶盒及其它。本文中所描述的一个或一个以上实施例包括方法及设备,所述方法及设备具有模 块,所述模块经配置以使用信号对存储器单元进行编程以致使所述存储器单元具有经编 程电阻值;在所述经编程电阻值在目标电阻值范围外部的情况下调整所述信号的编程参数 值;及在所述经编程电阻值在所述目标电阻值范围外部的情况下重复所述编程及所述调整 中的至少一者,每次重复所述编程时所述信号包括不同编程参数值。上文参照图1到图34 描述了包括额外设备及方法的其它实施例。上文说明及图式图解说明本发明的一些实施例以使所属领域的技术人员能够实 践本发明的实施例。其它实施例可并入有结构、逻辑、电、过程及其它改变。在图式中,在所 有数个视图中,相同特征或相同编号描述大致类似的特征。实例仅代表可能的变化形式。一 些实施例的部分及特征可包括于其它实施例的部分及特征中或替代其它实施例的部分及 特征。在阅读并理解上文说明之后,所属领域的技术人员将明了许多其它实施例。因此,本 发明的各种实施例的范围是通过所附权利要求书连同被赋予此等权利要求的完全等效范 围来检查的。 提供本发明摘要以符合37C.F.R. § 1. 72 (b),其需要将允许读者快速探知技术揭 示内容的本质及要旨的摘要。基于以下理解提交本发明摘要其并非将用于解释或限制权 利要求书的范围或含义。
权利要求
1. 一种方法,其包含使用信号对存储器单元进行编程以致使所述存储器单元具有经编程电阻值; 在所述经编程电阻值在目标电阻值范围之外的情况下调整编程参数值;及 在所述经编程电阻值在所述目标电阻值范围之外的情况下重复所述编程及所述调整 中的至少一者,其中每次重复所述编程时所述信号包括不同编程参数值。
2.根据权利要求1所述的方法,其中调整所述编程参数值包括调整所述信号的振幅值。
3.根据权利要求1所述的方法,其中调整所述编程参数值包括调整所述信号的转变时 间值。
4.根据权利要求1所述的方法,其包含在对所述存储器单元进行编程之前感测所述存储器单元以获得所述存储器单元的电 阻值;及在所述电阻值在所述目标电阻值范围之内的情况下跳过所述编程。
5.根据权利要求1所述的方法,其中所述编程参数值包括振幅值,且其中调整包括执 行将所述振幅值增加振幅量及减小振幅量中的一者,且其中所述振幅量为可变量。
6.根据权利要求1所述的方法,其中所述编程参数值包括转变时间值,且其中调整包 括执行将所述转变时间值增加时间量及减小时间量中的一者,且其中所述时间量为可变 量。
7.根据权利要求1所述的方法,其进一步包含使用具有多个初始目标振幅值的多个信号来对至少一个选定存储器单元进行编程以 获得多个初始目标电阻值,所述多个信号具有不同振幅值,所述多个初始目标电阻值具有 不同电阻值,其中在使用所述信号对所述存储器单元进行编程之前对所述至少一个选定存 储器单元进行编程,其中所述目标电阻值范围包括所述多个初始目标电阻值中的一者,且 其中在所述调整之前的所述信号的所述振幅值包括所述多个初始振幅值中的一者。
8.根据权利要求1所述的方法,其进一步包含使用具有多个初始目标转变时间值的多个信号来对至少一个选定存储器单元进行编 程以获得多个初始目标电阻值,所述多个信号具有不同转变时间值,所述多个初始目标电 阻值具有不同电阻值,其中在使用所述信号对所述存储器单元进行编程之前对所述至少一 个选定存储器单元进行编程,其中所述目标电阻值范围包括所述多个初始目标电阻值中的 一者,且其中在所述调整之前的所述信号的所述转变时间值包括所述多个初始转变时间值 中的一者。
9. 一种方法,其包含使用第一信号对存储器单元进行编程以致使所述存储器单元具有初始电阻值; 使用第二信号对所述存储器单元进行编程以致使所述存储器单元具有经编程电阻值;在所述经编程电阻值在目标电阻值范围之外的情况下调整所述第二信号的电流值;及 在所述经编程电阻值在所述目标电阻值范围之外的情况下重复以下各项中的至少一 者使用所述第一信号对所述存储器单元进行编程;使用所述第二信号对所述存储器单元 进行编程;及调整所述第二信号的所述电流值,其中每次重复所述编程时所述第二信号包括不同电流值。
10.根据权利要求9所述的方法,其中调整包括在所述经编程电阻值小于目标电阻值 的情况下将所述电流值增加第一经调整电流量,所述目标电阻值是在所述目标电阻值范围 之内的值,且其中调整包括在所述经编程电阻值大于目标电阻值的情况下将所述电流值减 小所述第一经调整电流量。
11.根据权利要求10所述的方法,其中调整包括在所述重复之前的所述经编程电阻值 小于所述目标电阻值且所述重复之后的所述经编程电阻值中的至少一者大于目标电阻的 情况下将所述电流值减小小于所述第一电流量的第二经调整电流量。
12.根据权利要求10所述的方法,其中调整包括在所述重复之前的所述经编程电阻值 大于所述目标电阻值且所述重复之后的所述经编程电阻值中的至少一者小于所述目标电 阻的情况下将所述电流值增加小于所述第一电流量的第二经调整电流量。
13.根据权利要求9所述的方法,其中调整包括在第一经编程电阻值小于目标电阻值的情况下将所述电流值增加第一经调整电流量 以获得供在第一重复的编程中使用的第一经调整电流值,所述目标电阻值是在所述目标电 阻值范围之内的值,其中所述第一经编程电阻值对应于在执行所述第一重复的编程之前的 所述存储器单元的所述经编程电阻值;及在第二经编程电阻值大于所述目标电阻值的情况下将所述第一经调整电流值减小第 二经调整电流量以获得供在第二重复的编程中使用的第二经调整电流值,其中所述第二经 编程电阻值对应于在执行所述第一重复的编程之后的所述存储器单元的所述经编程电阻 值,且其中所述第一经调整电流量大于所述第二经调整电流量。
14.根据权利要求9所述的方法,其中调整包括在第一经编程电阻值大于目标电阻值的情况下将所述电流值减小第一经调整电流量 以获得供在第一重复的编程中使用的第一经调整电流值,所述目标电阻值是在所述目标电 阻值范围之内的值,其中所述第一经编程电阻值对应于在执行所述第一重复的编程之前的 所述存储器单元的所述经编程电阻值;及在第二经编程电阻值小于所述目标电阻值的情况下将所述第一经调整电流值增加第 二经调整电流量以获得供在第二重复的编程中使用的第二经调整电流值,其中所述第二经 编程电阻值对应于在执行所述第一重复的编程之后的所述存储器单元的所述经编程电阻 值,且其中所述第一经调整电流量大于所述第二经调整电流量。
15.根据权利要求9所述的方法,其中调整所述电流值包括将所述电流值增加经调整 电流量及减小经调整电流量中的一者,且其中所述经调整电流量是所述存储器单元的电阻 对电流曲线的斜率及目标电阻值与所述经编程电阻值之间的差的函数,所述目标电阻值是 在所述目标电阻值范围之内的值。
16.根据权利要求15所述的方法,其中基于所述曲线的第一点及第二点来计算所述斜 率,其中所述第一点对应于大于所述目标电阻值的电阻值,且其中所述第二点对应于小于 所述目标电阻值的电阻值。
17.根据权利要求15所述的方法,其中在所述经编程电阻值小于所述目标电阻值的情 况下将所述电流值增加所述经调整电流量,且其中在所述经编程电阻值大于所述目标电阻 值的情况下执行将所述电流值减小所述经调整电流量。
18.根据权利要求9所述的方法,其包含从与第一目标电阻值相关联的第一电流值、与第二目标电阻值相关联的第二电流值及 与第三目标电阻值相关联的第三电流值当中选择所述第二信号的所述电流值,其中所述目 标电阻值范围包括所述第一、第二及第三目标电阻值中的一者。
19.一种方法,其包含使用第一脉冲对存储器单元进行编程以致使所述存储器单元具有初始电阻值;使用第二脉冲对存储器单元进行编程以致使所述存储器单元具有不同于所述初始电 阻值的经编程电阻值;在所述经编程电阻值在目标电阻值范围之外的情况下调整所述第二脉冲的脉冲下降 时间值;及在所述经编程电阻值在所述目标电阻值范围之外的情况下,重复使用所述第二脉冲的 所述编程及所述调整中的至少一者,其中每次重复所述编程时第二脉冲包括不同经调整脉 冲下降时间值。
20.根据权利要求19所述的方法,其中调整包括在所述经编程电阻值大于目标电阻值 的情况下将所述脉冲下降时间值增加第一经调整时间量,所述目标电阻值是在所述目标电 阻值范围之内的值,且其中调整包括在所述经编程电阻值小于目标电阻值的情况下将所述 脉冲下降时间值减小所述第一经调整时间量。
21.根据权利要求20所述的方法,其中调整包括在所述重复之前的所述经编程电阻值 小于所述目标电阻值且所述重复之后的所述经编程电阻值中的至少一者大于目标电阻的 情况下将所述下降时间值增加小于所述第一时间量的第二经调整时间量。
22.根据权利要求20所述的方法,其中调整包括在所述重复之前的所述经编程电阻值 大于所述目标电阻值且所述重复之后的所述经编程电阻值中的至少一者小于所述目标电 阻的情况下将所述下降时间值减小小于所述第一时间量的第二经调整时间量。
23.根据权利要求19所述的方法,其中调整包括在第一经编程电阻值大于目标电阻值的情况下将所述脉冲下降时间值增加第一经调 整时间量以获得供在第一重复的编程中使用的第一经调整脉冲下降时间值,所述目标电阻 值是在所述目标电阻值范围之内的值,其中所述第一经编程电阻值对应于在执行所述第一 重复的编程之前的所述存储器单元的所述经编程电阻值;及在第二经编程电阻值小于所述目标电阻值的情况下将所述第一经调整脉冲下降时间 值减小第二经调整时间量以获得供在第二重复的编程中使用的第二经调整脉冲下降时间 值,其中所述第二经编程电阻值对应于在执行所述第一重复的编程之后的所述存储器单元 的所述经编程电阻值,且其中所述第一经调整时间量大于所述第二经调整时间量。
24.根据权利要求19所述的方法,其中调整包括在第一经编程电阻值小于目标电阻值的情况下将所述脉冲下降时间值减小第一经调 整时间量以获得供在第一重复的编程中使用的第一经调整脉冲下降时间值,所述目标电阻 值是在所述目标电阻值范围之内的值,其中所述第一经编程电阻值对应于在执行所述第一 重复的编程之前的所述存储器单元的所述经编程电阻值;及在第二经编程电阻值大于所述目标电阻值的情况下将所述第一经调整脉冲下降时间 值增加第二经调整时间量以获得供在第二重复的编程中使用的第二经调整脉冲下降时间值,其中所述第二经编程电阻值对应于在执行所述第一重复的编程之后的所述存储器单元 的所述经编程电阻值,且其中所述第一经调整时间量大于所述第二经调整时间量。
25.根据权利要求19所述的方法,其包含从与第一目标电阻值相关联的第一脉冲下降时间值、与第二目标电阻值相关联的第二 脉冲下降时间值及与第三目标电阻值相关联的第三脉冲下降时间值当中选择所述第二脉 冲的所述脉冲下降时间值,其中所述目标电阻值范围包括所述第一、第二及第三目标电阻 值中的一者。
26.根据权利要求19所述的方法,其中调整所述脉冲下降时间值包括将所述脉冲下降 时间值增加经调整时间量及减小经调整时间量中的一者,且其中所述经调整时间量是所述 存储器单元的电阻对转变时间曲线的斜率及目标电阻值与所述经编程电阻值之间的差的 函数,所述目标电阻值是在所述目标电阻值范围之内的值。
27.根据权利要求26所述的方法,其中基于所述曲线的第一点及第二点来计算所述斜 率,其中所述第一点对应于大于所述目标电阻值的电阻值,且其中所述第二点对应于小于 所述目标电阻值的电阻值。
28.根据权利要求26所述的方法,其中在所述经编程电阻值大于所述目标电阻值的情 况下将所述脉冲下降时间值增加所述经调整时间量,且其中在所述经编程电阻值小于所述 目标电阻值的情况下执行将所述脉冲下降时间值减小所述经调整时间量。
29.一种方法,其包含使用第一电流对存储器单元进行编程以获得第一经编程电阻值;在所述第一经编程电阻值在目标电阻值范围之外的情况下使用第二电流对所述存储 器单元进行编程以获得第二经编程电阻值,其中所述第二电流的值是所述第一电流的值及 第一经调整电流量的值的函数;在执行使用所述第二电流对所述存储器单元进行编程的情况下且在所述第二经编程 电阻值在所述目标电阻值范围之外的情况下使用第三电流对所述存储器单元进行编程以 获得第三经编程电阻值,其中所述第三电流的值是所述第二电流的所述值及第二经调整电 流量的值的函数;其中在所述第一及第二经编程电阻值中的每一者在所述目标电阻值范围之外且小于 目标电阻值的情况下,所述第二经调整电流量的所述值等于所述第一经调整电流量的所述 值;其中在所述第一及第二经编程电阻值中的每一者在所述目标电阻值范围之外且大于 所述目标电阻值的情况下,所述第二经调整电流量的所述值等于所述第一经调整电流量的 所述值;且其中在所述第一及第二经编程电阻值中的每一者在所述目标电阻值范围之外的情况 下且在所述第一及第二经编程电阻值中的一者小于所述目标电阻值且所述第一及第二经 编程电阻值中的另一者大于所述目标电阻值的情况下,所述第二经调整电流量的所述值小 于所述第一经调整电流量的所述值。
30.根据权利要求29所述的方法,其中在所述第一经编程电阻值小于所述目标电阻值 的情况下,所述第二电流的所述值等于第一电流的所述值加上所述第一经调整电流量的所 述值,且其中在所述第一经编程电阻值大于所述目标电阻值的情况下,所述第二电流的所述值等于第一电流的所述值减去所述第一经调整电流量的所述值。
31.根据权利要求30所述的方法,其中在所述第二经编程电阻值小于所述目标电阻值 的情况下,所述第三电流的所述值等于第二电流的所述值加上所述第二经调整电流量的所 述值,且其中在所述第二经编程电阻值大于所述目标电阻值的情况下,所述第三电流的所 述值等于第二电流的所述值减去所述第二经调整电流量的所述值。
32.根据权利要求29所述的方法,其进一步包含在执行使用所述第三电流对所述存储器单元进行编程的情况下且在所述第三经编程 电阻值在所述目标电阻值范围之外的情况下使用第四电流对所述存储器单元进行编程以 获得第四经编程电阻值,其中所述第四电流的值是所述第三电流的所述值及第三经调整电 流量的值的函数;其中在所述第一、第二及第三经编程电阻值中的每一者在所述目标电阻值范围之外且 小于目标电阻值的情况下,所述第三经调整电流量的所述值等于所述第一及第二经调整电 流量中的每一者的所述值;其中在所述第一、第二及第三经编程电阻值中的每一者在所述目标电阻值范围之外且 大于所述目标电阻值的情况下,所述第三经调整电流量的所述值等于所述第一及第二经调 整电流量中的每一者的所述值;且其中在所述第一、第二及第三经编程电阻值中的每一者在所述目标电阻值范围之外 的情况下且在所述第一、第二及第三经编程电阻值中的至少一者小于所述目标电阻值且所 述第一、第二及第三经编程电阻值中的至少一者大于所述目标电阻值的情况下,所述第三 经调整电流量的所述值小于所述第二经调整电流量的所述值。
33.一种方法,其包含使用第一脉冲的第一转变时间值来对存储器单元进行编程以获得第一经编程电阻值;在所述第一经编程电阻值在目标电阻值范围之外的情况下使用第二脉冲的第二转变 时间值对所述存储器单元进行编程以获得第二经编程电阻值,其中所述第二转变时间值是 所述第一转变时间值及第一经调整时间量的值的函数;在执行使用所述第二转变时间对所述存储器单元进行编程的情况下且在所述第二经 编程电阻值在所述目标电阻值范围之外的情况下使用第三脉冲的第三转变时间值对所述 存储器单元进行编程以获得第三经编程电阻值,其中所述第三转变时间值是所述第二转变 时间值及第二经调整时间量的值的函数;其中在所述第一及第二经编程电阻值中的每一者在所述目标电阻值范围之外且小于 目标电阻值的情况下,所述第二经调整时间量的所述值等于所述第一经调整时间量的所述 值;其中在所述第一及第二经编程电阻值中的每一者在所述目标电阻值范围之外且大于 所述目标电阻值的情况下,所述第二经调整时间量的所述值等于所述第一经调整时间量的 所述值;且其中在所述第一及第二经编程电阻值中的每一者在所述目标电阻值范围之外的情况 下且在所述第一及第二经编程电阻值中的一者小于所述目标电阻值且所述第一及第二经 编程电阻值中的另一者大于所述目标电阻值的情况下,所述第二经调整时间量的所述值小于所述第一经调整时间量的所述值。
34.根据权利要求33所述的方法,其中在所述第一经编程电阻值小于所述目标电阻值 的情况下,所述第二转变时间值等于所述第一转变时间值减去所述第一经调整时间量的所 述值,且其中在所述第一经编程电阻值大于所述目标电阻值的情况下,所述第二转变时间 值等于所述第一转变时间值加上所述第一经调整时间量的所述值。
35.根据权利要求34所述的方法,其中在所述第二经编程电阻值小于所述目标电阻值 的情况下,所述第三转变时间值等于所述第二转变时间值减去所述第二经调整时间量的所 述值,且其中在所述第二经编程电阻值大于所述目标电阻值的情况下,所述第三转变时间 值等于所述第二转变时间值加上所述第二经调整时间量的所述值。
36.根据权利要求33所述的方法,其进一步包含在执行使用所述第三转变时间对所述存储器单元进行编程的情况下且在所述第三经 编程电阻值在所述目标电阻值范围之外的情况下使用第四转变时间值对所述存储器单元 进行编程以获得第四经编程电阻值,其中所述第四转变时间值是所述第三转变时间值及第 三经调整时间量的值的函数;其中在所述第一、第二及第三经编程电阻值中的每一者在所述目标电阻值范围之外且 小于目标电阻值的情况下,所述第三转变时间量的所述值等于所述第一及第二经调整时间 量中的每一者的所述值;其中在所述第一、第二及第三经编程电阻值中的每一者在所述目标电阻值范围之外且 大于所述目标电阻值的情况下,所述第三经调整时间量的所述值等于所述第一及第二经调 整时间量中的每一者的所述值;且其中在所述第一、第二及第三经编程电阻值中的每一者在所述目标电阻值范围之外 的情况下且在所述第一、第二及第三经编程电阻值中的至少一者小于所述目标电阻值且所 述第一、第二及第三经编程电阻值中的至少一者大于所述目标电阻值的情况下,所述第三 经调整时间量的所述值小于所述第二经调整时间量的所述值。
37.一种设备,其包含非易失性存储器单元;及模块,其经配置以使用信号对所述存储器单元进行编程以致使所述存储器单元具有 经编程电阻值;在所述经编程电阻值在目标电阻值范围之外的情况下调整所述信号的编程 参数值;及在所述经编程电阻值在所述目标电阻值范围之外的情况下重复所述编程及所述 调整中的至少一者,其中每次重复所述编程时所述信号包括不同编程参数值。
38.根据权利要求37所述的设备,其中所述编程参数值包括振幅值,且其中所述模块 经配置以调整所述振幅值。
39.根据权利要求38所述的设备,其进一步包含存储区域,所述存储区域经配置以存 储多个目标电阻值与多个电流值之间的关系,其中所述模块经配置以在调整所述信号的振 幅值之前选择所述多个电流值中的一者作为所述信号的所述振幅值。
40.根据权利要求37所述的设备,其中所述编程参数值包括转变时间值,且其中所述 模块经配置以调整所述转变时间值。
41.根据权利要求40所述的设备,其进一步包含存储区域,所述存储区域经配置以存 储多个目标电阻值与多个脉冲下降时间值之间的关系,其中所述模块经配置以在调整所述信号的所述转变时间值之前选择所述多个脉冲下降时间值中的一者作为所述信号的所述 转变时间值。
42.根据权利要求37所述的设备,其中所述模块经配置以在对所述存储器单元进行编 程之前感测所述存储器单元以获得所述存储器单元的电阻值且在所述电阻值在所述目标 电阻值范围之内的情况下跳过所述编程。
43.根据权利要求37所述的设备,其中所述非易失性存储器单元包括第一电极及第二电极;及存储器元件,其直接接触所述第一及第二电极,其中所述存储器元件包括可编程部分, 所述可编程部分具有经配置以在多个相之间改变的材料,其中所述可编程部分通过所述存 储器元件的第一部分与所述第一电极隔离,且其中所述可编程部分通过所述存储器元件的 第二部分与所述第二电极隔离。
44.根据权利要求43所述的设备,其中所述存储器元件的所述材料包括锗(Ge)、锑 (Sb)及碲(Te)的化合物。
45.一种设备,其包含非易失性存储器单元;模块,其经配置以使用具有第一编程参数值的第一脉冲对所述存储器单元进行编程 以获得第一经编程电阻值;在所述第一经编程电阻值在目标电阻值范围之外的情况下使用 具有第二编程参数值的第二脉冲对所述存储器单元进行编程以获得第二经编程电阻值;及 在执行使用所述第二编程参数值对所述存储器单元进行编程的情况下且在所述第二经编 程电阻值在所述目标电阻值范围之外的情况下使用具有第三编程参数值的第三脉冲对所 述存储器单元进行编程以获得第三经编程电阻值,所述第二编程参数值是所述第一编程参 数值及第一经调整参数量的值的函数,所述第三编程参数值是所述第二编程参数值及第二 经调整参数量的值的函数;其中在所述第一及第二经编程电阻值中的每一者在所述目标电阻值范围之外且小于 目标电阻值的情况下,所述第二经调整参数量的所述值等于第一经调整参数值量的值;其中在所述第一及第二经编程电阻值中的每一者在所述目标电阻值范围之外且大于 所述目标电阻值的情况下,所述第二经调整参数量的所述值等于所述第一经调整参数量的 所述值;且其中在所述第一及第二经编程电阻值中的每一者在所述目标电阻值范围之外的情况 下且在所述第一及第二经编程电阻值中的一者小于所述目标电阻值且所述第一及第二经 编程电阻值中的另一者大于所述目标电阻值的情况下,所述第二经调整参数量的所述值小 于所述第一经调整参数量的所述值。
46.根据权利要求45所述的设备,其中所述存储器单元包括相变材料。
47.根据权利要求45所述的设备,其中所述第一经调整参数量的所述值包括第一经调 整电流量的值,且其中所述第二经调整参数量的所述值包括第二经调整电流量的值。
48.根据权利要求45所述的设备,其中所述第一经调整参数量的所述值包括第一经调 整时间量的值,且其中所述第二经调整参数量的所述值包括第二经调整时间量的值。
49.根据权利要求45所述的设备,其中所述模块经配置以存储第一偏移值及第二偏移 值,且其中所述目标电阻值范围包括等于所述目标电阻值加上所述第一偏移值的第一值及等于所述目标电阻值减去所述第二偏移值的第二值。
全文摘要
一些实施例包括方法及设备,所述方法及设备具有模块,所述模块经配置以使用信号对存储器单元进行编程以致使所述存储器单元具有经编程电阻值;在所述经编程电阻值在目标电阻值范围之外的情况下调整所述信号的编程参数值;及在所述经编程电阻值在所述目标电阻值范围之外的情况下重复所述编程及所述调整中的至少一者,每次重复所述编程时所述信号包括不同编程参数值。
文档编号G11C11/00GK102007541SQ200980113018
公开日2011年4月6日 申请日期2009年3月13日 优先权日2008年3月14日
发明者刘峻 申请人:美光科技公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1