CN103137191B - 用于对相变存储器单元编程的方法和装置 - Google Patents

用于对相变存储器单元编程的方法和装置 Download PDF

Info

Publication number
CN103137191B
CN103137191B CN201210444235.0A CN201210444235A CN103137191B CN 103137191 B CN103137191 B CN 103137191B CN 201210444235 A CN201210444235 A CN 201210444235A CN 103137191 B CN103137191 B CN 103137191B
Authority
CN
China
Prior art keywords
programming
pulse
programming pulse
waveform
location mode
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.)
Active
Application number
CN201210444235.0A
Other languages
English (en)
Other versions
CN103137191A (zh
Inventor
N·帕潘德里奥
A·塞巴斯蒂安
A·潘塔齐
C·波齐迪斯
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN103137191A publication Critical patent/CN103137191A/zh
Application granted granted Critical
Publication of CN103137191B publication Critical patent/CN103137191B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/0004Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements comprising amorphous/crystalline phase transition cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5678Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using amorphous/crystalline phase transition storage elements
    • 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
    • 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/0064Verifying circuits or methods
    • 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/0092Write characterized by the shape, e.g. form, length, amplitude of the write pulse

Landscapes

  • Chemical & Material Sciences (AREA)
  • Crystallography & Structural Chemistry (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Semiconductor Memories (AREA)
  • Read Only Memory (AREA)

Abstract

提供用于对具有s>2个可编程单元状态的相变存储器单元(10)编程的方法和装置。施加至少一个控制信号(VBL,VWL)以产生用于对单元(10)编程的编程脉冲。在编程脉冲期间变化至少一个所述控制信号(VBL,VWL)以根据待编程的单元状态对编程脉冲整形并且产生与用于对所述单元状态编程的相应编程轨迹(TA,TB,TC,TD)对应的多个编程脉冲波形中的所选编程脉冲波形。所选编程脉冲波形对应于包含待编程的单元状态的编程轨迹。

Description

用于对相变存储器单元编程的方法和装置
技术领域
本发明主要地涉及相变存储器,并且更具体地涉及用于对多电平相变存储器单元编程的方法和装置。
背景技术
相变存储器(PCM)是一种利用具体硫系化合物(比如GST)在不同电传导性的状态之间的可逆热辅助切换的非易失性固态存储器技术。PCM被视为一种用于闪存置换和存储类存储器的候选技术。除了许多吸引人的特征(比如低读取和写入延时、高耐用性、长久留置和优良可伸缩性)之外,PCM还赋予多位操作,这是存储器技术中的用于增加容量并且减少成本的关键因素。通常借助旨在补偿通常在大型存储器阵列中观测到的单元编程特性中的可变性的迭代写入和验证(WAV)方案实现多位或者多电平存储。
当向多电平PCM写入时,每个PCM单元可以设置成表现不同电特性的s>2个不同状态或者电平中的任何状态或者电平。针对多电平操作而限定的s个可编程单元状态对应于硫族化物材料中的非晶态或者静态相的不同比率。这些继而对应于单元状态度量(通常为电阻)的不同值,检测该单元状态度量以在回读时检测单元状态。为了将PCM单元编程为特定单元状态,向单元施加编程脉冲以加热硫族化物材料并且在冷却时引起所需单元状态。可以通过在PCM电路中施加适当控制信号来产生编程脉冲。例如可以通过在存储器单元阵列的位线(BL)施加偏置电压信号来向单元施加电压脉冲(电压模式编程)。可以经由BL信号与向阵列的字线(WL)中的存取器件施加的又一控制信号对特定单元寻址。根据这样的存取器件的性质,向存取器件施加的信号脉冲也可以用来产生用于单元的编程脉冲。例如连接到单元的FET可以用作压控电流源,从而经由字线向FET的栅极施加的电压脉冲在单元中产生编程电流脉冲(电流模式编程)。
存在有通过改变编程脉冲的不同属性(具体而言,通过改变脉冲幅度或者脉冲持续时间或者脉冲的后沿的持续时间)对PCM单元编程的不同方法。在Pantazi等人的“Multi-levelPhase-ChangeMemoryModelingandExperimentalCharacterization”,EPCOS2009和Nirschl等人的“Writestrategiesfor2and4-bitMulti-levelPhase-ChangeMemory”,IEDM2007中讨论这些不同编程方法。在每种情况下,在特定脉冲属性变化时,有非晶态区域的尺寸改变并且因此有单元的关联电阻改变。合成电阻比对脉冲属性的函数通常称为“编程轨迹(trajectory)”或者“编程曲线”。编程轨迹限定用于多电平编程中的电平分配(即用于针对多电平操作而限定的不同可编程单元状态)的可用空间。
单个编程脉冲可以在编程操作中与适当设置的编程脉冲的可变属性一起运用以引起所需单元状态。与更通常用于多电平PCM的迭代(WAV)技术一起运用编程脉冲序列。在序列中的每个脉冲之后检测单元状态(例如通过测量单元电阻)。然后基于实际的测量的单元状态和所需目标单元状态针对序列中的下一脉冲适当调整可变脉冲属性。以这一方式,该过程沿着编程轨迹有效进展,从而逐渐收敛于目标单元状态。
在Papandreou等人、标题为“ProgrammingAlgorithmsforMultilevelPhase-ChangeMemory”、公开号为WO2011/121491A1的国际专利申请ISCAS2011中描述一种使用多个编程轨迹的编程技术。利用这一技术,与向单元字线中的FET存取器件施加的栅极电压VG的相应不同值对应的多个编程轨迹可用。对于VG的给定值,在单元位线的偏置电压脉冲的幅度继而可变以访问在对应编程轨迹中的单元状态。多个轨迹因此这里通过位线和字线信号的联合控制来实现,这两个信号有效提供用于编程控制的两个调节器(knob)。
已经基于来自PCM测试的实验数据论证使用多个轨迹的多电平编程的优点。该技术允许例如基于编程轨迹的陡峭度和每个电平的增加编程电压窗口向不同轨迹高效分配电平。可以放宽针对在编程期间的反馈循环的约束(例如电压分辨率),并且在迭代编程期间实现快速收敛。
将高度地希望改进用于PCM的多轨迹编程技术。
发明内容
本发明第一方面的一个实施例提供一种用于对具有s>2个可编程单元状态的相变存储器单元编程的方法。该方法包括:
施加至少一个控制信号以产生用于对单元编程的编程脉冲;并且
在编程脉冲期间变化至少一个所述控制信号以根据待编程的单元状态对编程脉冲整形并且产生与用于对所述单元状态编程的相应编程轨迹对应的多个编程脉冲波形中的所选编程脉冲波形;
其中所选编程脉冲波形对应于包含待编程的单元状态的编程轨迹。
体现本发明的方法提供了对PCM单元的多轨迹编程,其中通过脉冲整形来实现不同编程轨迹。具体而言,通过施加一个或者多个控制信号来产生编程脉冲,并且可以通过在编程脉冲期间变化至少一个控制信号对编程脉冲整形。这一脉冲整形依赖于目标单元状态,并且产生具有多个编程脉冲波形之一的脉冲。这些编程脉冲波形对应于相应不同编程轨迹。因此选择与包含目标单元状态的编程轨迹对应的特定波形,并且然后通过适当控制信号变化相应地对编程脉冲整形。
前述技术提供了一种赋予用于多轨迹编程的各种优点的简单和高效编程系统。如果需要则通过仅变化一个控制信号来实现脉冲整形,即仅需一个控制调节器用于编程控制。这允许即使在(i)PCM单元设计或者(ii)存取器件或者(iii)写入电路或者(iv)阵列架构提供仅一个控制调节器时仍然实现多个编程轨迹。这里的典型例子包括基于二极管的PCM单元或者纵横(crossbar)存储器阵列。因此可以用广泛多种单元设计和阵列架构实现多轨迹编程。使用不同波形以实现不同编程轨迹也允许有效利用不同基本单元编程机制。具体而言,波形可以利用性质(比如静态功率依赖性、熔融动力性和结晶动态性)的组合以实现高度地高效的操作。下面更详细地论述该优势和其它一些优势。
通过施加一个或者多个控制信号来产生用于单元的编程脉冲。为了产生编程脉冲而施加的控制信号可以包括向单元施加的偏置电压信号,例如作为PCM阵列中的位线电压。如更早描述的那样,单元可以具有存取器件(例如FET),该存取器件允许根据存取器件信号(例如作为字线信号而施加的FET栅极电压)控制单元电流。在这一情况下,为了产生编程脉冲而施加的控制信号可以包括存取器件信号。
一般可以通过在编程脉冲期间变化控制信号中的一个或者多个控制信号来执行对编程脉冲整形。然而,优选实施例利用的具体优点在于可以通过仅变化单个控制信号(例如仅变化在位线的偏置电压信号或者仅变化在字线的存取器件信号)来实现对编程脉冲整形。如果仅变化这样的偏置电压信号用于脉冲整形并且因此用于编程控制,则合成偏置电压脉冲(例如BL脉冲)有效地是用于单元的编程脉冲,从而跨单元地产生用于电压模式编程的对应电压。如果仅变化存取器件信号(例如FET栅极电压)用于脉冲整形,则合成存取器件信号脉冲(例如WL脉冲)有效地是用于单元的编程脉冲,从而在单元中产生用于电流模式编程的对应电流脉冲。然而,可以设想如下实施例,其中通过在编程脉冲期间变化两个这样的信号对编程脉冲整形。在这一情况下,编程脉冲可以视为由于两个控制信号的组合效果而导致跨单元地下降的合成电压(或者代之以流过单元的合成电流)。
与各种编程脉冲波形对应的编程轨迹的集合共同允许对针对多电平操作而限定的s个可编程单元状态中的任何状态编程。一般而言,可以经由给定的编程轨迹存取这些单元状态中的任何数目的状态,从而特定轨迹可以包含s个可编程状态中的多于1个的状态。
体现本发明的方法可以应用于单脉冲编程和迭代编程操作这二者中。迭代编程方法可以包括以下步骤:选择所述编程脉冲波形;通过在编程脉冲期间变化至少一个所述控制信号来产生具有所选波形的所述编程脉冲;在编程脉冲之后检测单元状态;并且根据检测到的单元状态迭代地产生具有修改的脉冲形状的编程脉冲,并且再次检测单元状态直至满足预先限定的编程标准。可以如前述那样通过在编程脉冲期间的适当控制信号变化来获得这里的修改的脉冲波形。在迭代过程的任何给定步骤中,修改的脉冲可以具有与先前脉冲相同的基本波形,而仅修改特定脉冲属性以给出修改的脉冲形状。然而,修改脉冲形状涉及到在迭代过程的一些步骤改变基本脉冲波形。例如,如果确定用于先前所选波形的编程轨迹例如由于单元编程特性变化而未包含目标单元状态,则这一修改可以出现。用于终止该过程的预先限定的编程标准可以例如基于在检测到的单元状态与目标单元状态之间的差值(例如检测到的状态是否在目标电阻水平的预定义电阻阈值内)和/或基于延时(例如是否已经执行预定迭代次数)。
为了实现的简化和高效,在一些优选实施例中,编程脉冲具有预先限定的脉冲宽度,从而脉冲宽度固定而未随着脉冲整形而变化。在一些特别优选的实施例中,编程脉冲波形中的至少一些(并且优选所有)编程脉冲波形各自包括第一部分和第二部分,第一部分的幅度一般高于第二部分,其中第一部分和第二部分的相对持续时间针对不同波形而不同。这提供用于如下优良简单系统的基础,该系统利用不同基本单元编程机制。每个波形的第二部分的属性优选地根据待编程的单元状态可变。因此,可以选择特定波形以存取特定编程轨迹而然后变化前述属性以存取该轨迹中的不同单元状态。在一个高度地高效的实现方式中,每个波形的第一部分具有第一恒定幅度,并且每个波形的第二部分具有第二恒定幅度。第二部分的幅度便利地根据待编程的单元状态可变。
本发明第二方面的一个实施例提供一种用于对具有s>2个可编程单元状态的相变存储器单元编程的装置。该装置包括:
信号生成器,用于供应至少一个控制信号以产生用于对单元编程的编程脉冲;以及
控制器,用于控制信号生成器以在编程脉冲期间变化至少一个所述控制信号以根据待编程的单元状态对编程脉冲整形并且产生与用于对所述单元状态编程的相应编程轨迹对应的多个编程脉冲波形中的所选编程脉冲波形,其中所选编程脉冲波形对应于包含待编程的单元状态的编程轨迹。
本发明第三方面的一个实施例提供相变存储器器件,该器件包括:
存储器,包括具有s>2个可编程单元状态的多个相变存储器单元;以及
读取/写入装置,用于读取和写入相变存储器单元中的数据,其中读取/写入装置包括根据本发明第二方面的用于对所述存储器单元编程的装置。
本发明另一方面的一个实施例还提供一种包括程序代码装置的计算机程序,该程序代码装置用于使计算机执行根据本发明第一方面的方法。将理解术语“计算机”是在最为一般意义上使用的并且包括具有用于实现计算机程序的数据处理能力的任何设备、部件或者系统。另外,体现本发明的计算机程序可以构成独立程序或者可以是更大程序的单元并且可以被供应、例如实现于计算机可读介质、比如盘中或者电子传输用于在计算机中加载。计算机程序的程序代码装置可以包括指令集在任何语言、代码或者符号标识中的任何表达,该指令集旨在于直接或者在(a)转换成另一语言、代码或者符号标识和(b)以不同材料形式再现中的任一操作之后使计算机执行讨论的方法。
一般而言,在这里参照本发明一个方面的一个实施例描述特征时,可以在本发明另一方面的实施例中提供对应特征。
附图说明
现在将参照以下附图通过例子描述本发明的优选实施例:
图1是体现本发明的相变存储器器件的示意框图;
图2是图1的器件的读取/写入装置的更具体示意图;
图3是在体现本发明的第一编程方法中运用的四个编程脉冲波形;
图4图示了与图3的波形对应的四个编程轨迹;
图5a至图5c图示了用于PCM单元的三个基本单元编程机制;
图6指示用于图4的编程轨迹的单元编程机制的变化;
图7指示图1的器件中的迭代编程操作的步骤;
图8示出了体现本发明的第二编程方法中的存取器件信号变化所产生的编程脉冲波形;并且
图9图示了第二实施例中的与不同编程脉冲波形对应的四个编程轨迹。
具体实施方式
图1是体现本发明的相变存储器器件的简化示意图。器件1包括用于在多电平PCM单元的一个或者多个集成阵列中存储数据的相变存储器2。尽管在图中表示为单个块,但是一般而言,存储器2可以包括范围例如从单个芯片或者裸片到各自包括多个存储器芯片封装的多个储存器组的任何所需PCM存储单元配置。读取和向存储器2写入数据由写入/读取装置3执行。装置3包括用于在数据写入操作期间对PCM单元编程并且用于在读取操作期间检测单元状态(电平检测)的电路。在这些操作期间,读取/写入装置3可以通过向存储器全体2中的字线和位线阵列施加适当控制信号对个别PCM单元寻址。除了如下文详述的方面之外以一般已知的方式执行这一过程。如图中的块4所示,向器件1的用户数据输入通常在作为写入数据应给装置3之前受到某一形式的写入处理,比如出于检错目的的编码。类似地,装置3输出的回读数据一般由例如执行码字检测和纠错操作的读取处理模块5处理以恢复原有输入用户输入。模块4和模块5的这样的处理独立于待描述的编程系统并且这里无需加以进一步讨论。
图2是示出了读取/写入装置3的主要部件的框图。示出了电路经由位线BL和字线WL连接到特定PCM单元10,与关联存取器件11连接用于对单元的读取/写入操作。存取器件11在这一例子中是栅极连接到字线WL的FET。装置3包括在12处以广义形式指示的控制信号生成器、读取测量电路13和控制器14。信号生成器12生成经由单元位线和字线供应的控制信号以对单元执行读取/写入操作。在所示广义形式中,信号生成器12包括BL信号生成器15和WL信号生成器16。BL信号生成器15生成在操作中向单元位线BL供应的位线电压信号VBL。WL信号生成器16生成在操作期间向单元字线WL供应的字线电压信号VWL。读取测量电路13在读取操作期间跨单元10地连接以测量流过单元的电流。向控制器14供应测量的单元电流Iread。控制器14主要控制装置3的操作,从而并入用于实现下文详述的单元编程方法并且用于基于读取电路的测量Iread的读取控制和电平检测的功能。可以用任何所需方式、优选地使用硬接线逻辑电路来实施信号生成器12和读取电路13以便执行描述的功能。控制器14的功能一般可以实施于硬件或者软件或者其组合中。适当实施方式根据这里的描述将为本领域技术人员所清楚。举例而言,控制器14的编程控制功能可以由处理器实现,该处理器由软件配置成执行描述的功能,并且根据这里的描述将清楚适当软件。
器件1中的写入操作涉及到将多电平单元编程为向它的s>2个可编程单元状态之一。读取操作涉及到检测单元设置成这些状态或者电平中的哪个状态或者电平。可以在用于读取检测的单元状态度量的预定参考值或者值范围限定针对多电平操作而限定的特定可编程单元状态。在给定的编程操作中,可以限定待编程的单元状态(即目标单元状态)为如下状态:测量的单元状态度量针对该状态具有在限定范围内(例如在适当参考值的限定阈值内)的任何值。在待描述的例子中,有名义上代表相应单元状态的四个参考电阻值的集合限定的s=4个可编程单元状态。如果测量的单元电阻在用于特定可编程单元状态的参考电阻值的预定阈值内,则该状态视为已经在编程期间被实现或者视为在回读时被检测到。
在器件1的读取和写入操作期间,控制器14控制信号生成器12以生成将针对讨论的操作而施加的适当控制信号VBL和VWL。对于读取操作,控制器14分别控制BL和WL信号生成器15和16以向单元位线和字线施加恒定幅度的读取电压脉冲。BL读取脉冲具有在单元状态改变可以出现时的阈值切换电压以下的幅度。控制器14然后比较如根据合成单元电流Iread确定的单元电阻与上文描述的参考电平,以确定单元设置成四个可编程单元状态中的哪个状态。在写入操作中,控制器14经由信号生成器12的控制施加适当控制信号VBL和VWL以在迭代编程操作中产生一系列编程脉冲。每个编程脉冲具有在控制器14中预设的固定脉冲宽度。在每个编程脉冲之后,如上文针对读取操作描述的那样测量单元电阻。然后基于测量的单元状态确定下一编程脉冲的适当形式,并且相应地生成用于这一脉冲的控制信号。
待描述的迭代编程方案利用经由对编程脉冲整形而实现的编程轨迹。具体而言,控制器14控制信号生成器12以在编程脉冲窗口期间变化控制信号VBL和VWL中的至少一个控制信号、由此对合成编程脉冲整形。一般而言,位线信号的变化使跨单元的电压变化,并且字线信号VWL的变化使单元电流变换。在待描述的第一实施例中,VWL在编程脉冲期间保持恒定,并且通过变化VBL来执行脉冲整形。具体而言,在控制器14的控制之下,恒定幅度的脉冲由WL脉冲生成器16输出用于在编程脉冲窗口期间存取单元。来自BL信号生成器15的信号VBL在编程窗口内变化以在位线产生用于电压模式编程的整形电压脉冲。VBL脉冲因此是在第一实施例中的有效地编程脉冲。针对迭代编程操作产生连串固定宽度的编程脉冲而通过在脉冲宽度变化VBL信号电平对每个脉冲整形。这一脉冲整形依赖于待编程的特定单元状态并且产生多个编程脉冲波形之一,每个编程脉冲波形对应于相应的编程轨迹。在这一例子中,有具有四个对应波形的四个编程轨迹。
图3是在这一实施例中的标记为A至D的四个基本编程脉冲波形的示意图示。每个波形具有幅度为V1的第一部分和幅度为V2的第二部分,其中V1一般高于V2。这些第一部分和第二部分的相对持续时间针对不同波形而不同。具体而言,第一部分为宽度W1而第二部分为宽度W2,并且比率W1∶W2如图所示一般在四个波形内增加。然而在每种情况下,波形的第二部分的幅度V2如图所示分步可调。每个波形A至D如图4中示意地所示对应于相应编程轨迹TA至TD。这针对每个编程脉冲波形比对幅度V2这一可变属性以任意电阻单位绘制测量的单元状态。这里的轨迹TA至TD对应于具有如下部分宽度W1和W2的波形A至D:
A:W1=20ns并且W2=300ns;
B:W1=160ns并且W2=160ns;
C:W1=220ns并且W2=100ns;
D:W1=300ns并且W2=20ns。
图3中的标注为“电平0”至“电平3”的水平带指示针对多电平操作而限定的四个可编程单元状态。每个电平包括在用于该电平的参考电阻值的限定阈值内的测量单元状态。注意轨迹TD包含仅电平0的测量单元状态,轨迹TC包含电平0和1的测量单元状态,轨迹TB包含电平0至2的测量单元状态,并且轨迹TA包含所有四个电平的测量单元状态。对于迭代编程操作,每个可编程电平可以名义上分配给包含该电平的特定轨迹。这些分配可以用来如下文进一步讨论的那样选择用于迭代过程的初始参数。一般而言,根据电平数目以及轨迹的特定形式和分布,可以向每个轨迹分配一个或者多个电平。这一例子假设分别向轨迹TD、TC、TB和TA名义上分配电平0、1、2和3。如果一般使用编程轨迹的右手斜率(slope)来执行编程,则暗阴影带和水平箭头基于名义电平分配指示用于每个电平的名义编程电压窗口(V2值范围)。因此可以基于特定目标单元状态和名义电平分配选择特定编程脉冲波形。然后可以调整用于这一波形的幅度V2以向轨迹上的所需点进展并且实现目标单元状态。
除提供多轨迹编程之外,不同编程脉冲波形A至D允许在编程操作中利用不同基本单元编程机制。更具体而言,波形利用PCM固有的性质(比如静态功率依赖性、熔融动力性和结晶动态性)的组合。这些性质或者度量在编程过程期间调节不同机制。图5a至图5c图示了单元状态对不同编程度量的依赖性。图5a经由测量单元状态比对作为固定宽度和可变幅度的矩形编程脉冲而施加的电压的绘图图示了静态功率依赖性。随着如图中的箭头所示静态功率增加,单元温度增加,从而造成增加的非晶态尺寸并且因此造成更大单元电阻。图5b图示了熔融动力性对单元状态的影响。这示出了单元状态在静态功率的不同值随着编程脉冲宽度的变化。某一熔融温度对应于增加脉冲宽度维持越多时间,合成非晶态尺寸并且因此单元电阻就越大。图5c图示了结晶动态性对单元状态的影响。这示出了单元状态在静态功率的不同值随着编程脉冲后沿持续时间的变化。结晶温度对应于后沿的增加长度维持越多时间,合成非晶态尺寸就越小开且因此单元电阻就越低。
图3的编程脉冲波形有效利用上文描述的基本度量作为多个编程调节器。唯一整形的脉冲波形组合这些调节器与不同加权,不同脉冲波形用来生成如描述的不同编程轨迹。图6中的箭头关于图4的编程轨迹TA至TD指示三个基本编程度量的变化。箭头I指示更高输入功率并且因此指示更高非晶态尺寸。这跟随编程脉冲波形的第一部分的增加宽度W1以及第二部分的增加幅度V2。箭头II指示熔融阶段的更长持续时间而非晶态尺寸因而增加,这对应于增加宽度W1。箭头III指示在结晶温度的更长持续时间从而给予更好结晶并且对应于编程脉冲波形的第二部分的增加宽度W2
在每个通过这一实施例的迭代编程操作时,控制器14控制BL信号生成器15以通过在编程窗口内适当变化控制信号VBL来产生编程脉冲波形A至D中的所选波形,而第二波形部分为所选幅度V2。来自控制器114的选择信号SW,V2指示应当产生四个波形中的哪个波形和V2的适当值。在图7的流程图中指示迭代编程操作的基本步骤。当操作开始时,控制器14先选择将用于初始编程脉冲的特定波形和V2值。在步骤20指示的对这些初始参数的选择涉及到对选择如下估计的“最好猜测”,该轨迹包含目标单元状态和在适当编程窗口内的V2值。这一选择基于用于操作的目标单元状态、用于不同波形的编程轨迹和关于图4讨论的名义电平分配。具体而言,针对给定的目标电平0、1、2或者3,选择与名义上向该电平分配的轨迹对应的波形。然后针对该轨迹在(假想)编程窗口内选择初始V2值。
图7的步骤21和22代表基本写入和验证(WAV)过程。在步骤21中,BL信号生成器16产生根据选择信号SW,V2整形的编程脉冲VBL。WL信号生成器16产生恒定幅度的脉冲VWL。在施加编程脉冲之后,在步骤22中检测当前单元状态。具体而言,在跟随第一编程脉冲的读取-测量周期中,控制器14基于来自读取电路13的测量单元电流Iread检测单元的电阻。在步骤23中,控制器14确定检测到的单元状态与目标单元状态之差为测量的单元电阻从用于讨论的电平的参考电阻值的偏差ΔR。(注意这里的ΔR可以由在测量的单元电流Iread与对应于目标单元状态的参考电流值之间的差值代表。在其它一些实施例中,可以针对给定的单元电流测量跨单元的电压,并且确定在检测到的单元状态与目标单元状态之间的差值为电压差)。然后在判决步骤24中比较差值ΔR与预定阈值,以判决是否已经实现目标单元状态。如果是这样,则编程已经成功并且该过程结束。如果不是,则操作继续判决步骤25。这里,控制器14判决所选编程轨迹对于当前操作而言是否正确,即是否已经选择正确(或者最好)轨迹以存取目标单元状态。PCM单元特性变化将使轨迹和编程窗口随时间并且随单元变化。因此,在步骤20中初始选择的轨迹可能未总是正确或者最优。在步骤25中的判决例如可以基于电阻误差ΔR的大小和/或延时,例如已经未成功执行编程操作的预定迭代次数。具体而言,直至已经未成功执行最小迭代次数,才可以在实践中做出当前轨迹不正确的判决。如果轨迹在步骤25中视为不正确,则在步骤26中,控制器选择不同编程脉冲波形作为其对应轨迹接下来最可能造成成功的编程脉冲波形。就图4的轨迹而言,选择支持更低电阻值的下一轨迹。也就是说,选择将向这里的序列TD、TC、TB、TA中的下一轨迹进展。(在其它一些实施例中,例如当轨迹收敛于低电压并且发散于更高电压时,可以按如与减少比对的增加电阻为序进行选择)。如果在步骤26中选择新轨迹并且因此选择波形,则操作返回至步骤21用于基于修改的编程脉冲形状另一次通过WAV过程。
返回到步骤25中,如果当前轨迹和编程波形视为正确,则操作继续步骤27。这里,控制器14基于电阻误差ΔR(并且如果需要则可能也基于延时)调整脉冲幅度V2,以移动更接近当前轨迹中的目标单元状态。操作然后返回至步骤21中用于使用修改的编程脉冲形状重新通过WAV过程。
上述过程迭代直至在步骤24中实现目标单元状态(或者直至如果需要则已经执行最大迭代次数)。通过相继迭代,在每个脉冲之后基于检测到的单元状态相继修改编程脉冲形状,从而实际单元状态收敛于所需目标状态。
通过使用唯一整形的编程脉冲波形以实现多个轨迹,上述过程提供一种用于PCM的高度地高效的多轨迹编程系统。该系统对于迭代编程而言优良,从而赋予每个电平的增加编程电压窗口以及智能电平分配(轨迹选择),而编程脉冲持续时间固定。脉冲整形也允许将不同基本编程度量有效用于异常高效操作。这些改进允许放宽迭代算法约束(例如电压分辨率、迭代次数)。另外,可以将仅单个控制调节器(上述VBL)用于编程控制来实现多轨迹编程,从而允许广泛与多种单元和阵列结构与一起应用而无论它们是否使用FET存取器件。
注意虽然图4示出了将右编程斜率用于编程,但是每个轨迹的两个斜率都是与上述系统一起的熔融斜率。这意味着可以使用两个斜率来执行双向编程。两个斜率可用于编程赋予用于各种电平的编程电压窗口的进一步扩大。
在编程系统的第二实施例中,通过变化VWL而不是VBL来执行脉冲整形。在这一实施例中,恒定幅度脉冲VBL由BL脉冲生成器15输出用于在编程脉冲窗口期间偏置单元。来自WL信号生成器16的信号VWL在编程窗口内变化,以在FET11的栅极产生用于电流模式编程的整形的WL脉冲。VWL脉冲因此有效地是这里的编程脉冲。编程操作在别的方面与第一实施例相似,而产生与不同轨迹对应的不同编程脉冲波形以实现多个轨迹。图8图示了这里的示例波形,该波形具有幅度为VG1的第一部分和幅度为VG2的第二部分,其中VG1一般高于VG2。幅度VG2分步可调以实现对应编程轨迹。具有不同宽度比值W1:W2的其它相似波形可以用来生成其它轨迹。在图9中示出了标注为TE至TH的四个这样的轨迹的例子。这针对具有如下部分宽度的图8的波形绘制测量的单元电阻比对VG2的对数:
TE:W1=50ns并且W2=450ns;
TF:W1=300ns并且W2=200ns;
TG:W1=350ns并且W2=150ns;
TH:W1=400ns并且W2=100ns。
标注为“电平0”至“电平3”的水平带指示针对4电平单元操作而限定的四个可编程状态,并且具有水平箭头的暗阴影带指示这一例子中的名义电平分配和编程窗口。由于可以如上文讨论的那样在两个编程斜率上实现迭代编程,所以这一例子将两个斜率(全U曲线)用于编程。因而如图中所示扩大名义编程窗口。
可以对描述的示例实施例进行许多改变和修改。编程系统当然可以运用数目除了s=4之外的可编程状态和不同数目的编程波形/轨迹。尽管已经描述异常高效脉冲整形方案,但是可以设想其它形式的编程脉冲波形以实施多个轨迹。在其它两部分波形中,一个或者两个部分的幅度可以不恒定。第二部分可以例如具有向下倾斜的分布图。针对给定的波形,可以变化第二部分的除了幅度之外的属性以实现编程轨迹。这里的例子将是例如通过调整这一部分的斜率来变化第二波形部分的持续时间(但是然后将当然失去固定脉冲宽度的益处)。可以在其它存储器架构中提供其它存取器件或者无存取器件。当通过如上述那样变化VBL和VWL之一来执行脉冲整形时,如果需要则其它信号脉冲(分别为VWL或者VBL)的恒定幅度可以针对不同轨迹而不同。也可以设想如下实施例,其中在编程窗口期间变化多个控制信号以实现用于多轨迹操作的脉冲整形。在上述实施例的一个修改中,例如可以变化VWL和VBL二者。另外,尽管一般优选迭代编程,但是描述的原理可以应用单脉冲编程。在这一情况下,编程控制器将简单地选择其对应轨迹包含目标状态的特定波形并且设置可变属性(例如上述V2或者VG2)以实现该轨迹上的所需位置并且因此实现目标状态。
将理解可以对描述的示例实施例进行许多其它改变和修改而未脱离本发明的范围。

Claims (13)

1.一种用于对具有多级可编程单元状态的相变存储器单元(10)编程的方法,所述方法包括:
施加至少一个控制信号以产生用于对所述单元(10)编程的编程脉冲;并且
在所述编程脉冲期间变化至少一个所述控制信号以根据待编程的所述单元状态对所述编程脉冲整形并且产生与用于对所述单元状态编程的相应编程轨迹对应的多个编程脉冲波形中的所选编程脉冲波形;
其中所选编程脉冲波形对应于包含待编程的所述单元状态的编程轨迹;
其中所述编程脉冲波形具有固定脉冲宽度,其中所述编程脉冲波形中的至少一些编程脉冲波形各自包括第一部分和第二部分,所述第一部分的幅度一般比所述第二部分的幅度更高,其中所述第一部分和第二部分的相对持续时间针对不同波形而不同。
2.根据权利要求1所述的方法,包括变化单个所述控制信号以对所述编程脉冲整形。
3.根据权利要求1或者2所述的方法,其中所述至少一个控制信号包括向所述单元施加的偏置电压信号。
4.根据权利要求3所述的方法,包括变化所述偏置电压信号以对所述编程脉冲整形。
5.根据权利要求1或者2所述的方法,其中:
所述单元(10)连接到存取器件(11),所述存取器件用于根据向所述存取器件施加的存取器件信号控制单元电流;并且
所述至少一个控制信号包括所述存取器件信号。
6.根据权利要求5所述的方法,包括变化所述存取器件信号以对所述编程脉冲整形。
7.根据权利要求1或者2所述的方法,包括:
选择所述编程脉冲波形;
通过在所述编程脉冲期间变化至少一个所述控制信号来产生具有所选波形的所述编程脉冲;
在所述编程脉冲之后检测所述单元状态;并且
根据所检测到的单元状态迭代地产生具有修改的脉冲形状的编程脉冲,并且再次检测所述单元状态,直至满足预先限定的编程标准。
8.根据权利要求1或者2所述的方法,其中所述编程脉冲具有预先限定的脉冲宽度。
9.根据权利要求1所述的方法,其中每个波形的所述第二部分的属性根据待编程的所述单元状态可变。
10.根据权利要求1或者9所述的方法,其中每个波形的所述第一部分具有第一恒定幅度并且每个波形的所述第二部分具有第二恒定幅度。
11.根据权利要求10所述的方法,其中每个波形的所述第二部分的所述幅度根据待编程的所述单元状态可变。
12.一种用于对具有多级可编程单元状态的相变存储器单元(10)编程的装置(3),所述装置包括:
信号生成器(12),用于供应至少一个控制信号以产生用于对所述单元(10)编程的编程脉冲;以及
控制器(14),用于控制所述信号生成器(12)以在所述编程脉冲期间变化至少一个所述控制信号,以根据待编程的所述单元状态对所述编程脉冲整形并且产生与用于对所述单元状态编程的相应编程轨迹对应的多个编程脉冲波形中的所选编程脉冲波形,其中所选编程脉冲波形对应于包含待编程的所述单元状态的编程轨迹;
其中所述编程脉冲波形具有固定脉冲宽度,其中所述编程脉冲波形中的至少一些编程脉冲波形各自包括第一部分和第二部分,所述第一部分的幅度一般比所述第二部分的幅度更高,其中所述第一部分和第二部分的相对持续时间针对不同波形而不同。
13.一种相变存储器器件(1),包括:
存储器(2),包括具有多级可编程单元状态的多个相变存储器单元(10);以及
读取/写入装置(3),用于读取和写入所述相变存储器单元中的数据,其中所述读取/写入装置包括根据权利要求12所述的用于对所述存储器单元(10)编程的装置。
CN201210444235.0A 2011-11-28 2012-11-08 用于对相变存储器单元编程的方法和装置 Active CN103137191B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP11190956 2011-11-28
EP11190956.0 2011-11-28

Publications (2)

Publication Number Publication Date
CN103137191A CN103137191A (zh) 2013-06-05
CN103137191B true CN103137191B (zh) 2016-06-08

Family

ID=48288120

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210444235.0A Active CN103137191B (zh) 2011-11-28 2012-11-08 用于对相变存储器单元编程的方法和装置

Country Status (4)

Country Link
US (1) US9070438B2 (zh)
JP (1) JP2013114737A (zh)
CN (1) CN103137191B (zh)
DE (1) DE102012220711A1 (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2502553A (en) * 2012-05-30 2013-12-04 Ibm Read measurements of resistive memory cells
CN103546662A (zh) * 2013-09-23 2014-01-29 浙江工业大学 一种网络监控系统中音视频同步方法
KR101780539B1 (ko) * 2015-01-08 2017-09-21 한경대학교 산학협력단 다치형 상변화 메모리의 쓰기 방법 및 시스템
JP2017030058A (ja) * 2015-07-29 2017-02-09 セイコーエプソン株式会社 ロボット、ロボット制御装置およびロボットシステム
US9666273B2 (en) 2015-06-18 2017-05-30 International Business Machines Corporation Determining a cell state of a resistive memory cell
US10134470B2 (en) 2015-11-04 2018-11-20 Micron Technology, Inc. Apparatuses and methods including memory and operation of same
US9978810B2 (en) 2015-11-04 2018-05-22 Micron Technology, Inc. Three-dimensional memory apparatuses and methods of use
US10446226B2 (en) 2016-08-08 2019-10-15 Micron Technology, Inc. Apparatuses including multi-level memory cells and methods of operation of same
US10157670B2 (en) * 2016-10-28 2018-12-18 Micron Technology, Inc. Apparatuses including memory cells and methods of operation of same
US10546632B2 (en) * 2017-12-14 2020-01-28 Micron Technology, Inc. Multi-level self-selecting memory device
US10381075B2 (en) 2017-12-14 2019-08-13 Micron Technology, Inc. Techniques to access a self-selecting memory device
US11347999B2 (en) * 2019-05-22 2022-05-31 International Business Machines Corporation Closed loop programming of phase-change memory
US11139025B2 (en) 2020-01-22 2021-10-05 International Business Machines Corporation Multi-level cell threshold voltage operation of one-selector-one-resistor structure included in a crossbar array

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101345083A (zh) * 2007-07-12 2009-01-14 三星电子株式会社 多级相变存储器器件和相关方法
CN101978427A (zh) * 2008-03-26 2011-02-16 美光科技公司 相变存储器

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8351251B2 (en) * 2009-08-27 2013-01-08 International Business Machines Corporation Multilevel programming of phase change memory
WO2011121491A1 (en) 2010-03-30 2011-10-06 International Business Machines Corporation Programming at least one multi-level phase change memory cell

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101345083A (zh) * 2007-07-12 2009-01-14 三星电子株式会社 多级相变存储器器件和相关方法
CN101978427A (zh) * 2008-03-26 2011-02-16 美光科技公司 相变存储器

Also Published As

Publication number Publication date
JP2013114737A (ja) 2013-06-10
CN103137191A (zh) 2013-06-05
US9070438B2 (en) 2015-06-30
US20130135924A1 (en) 2013-05-30
DE102012220711A1 (de) 2013-05-29

Similar Documents

Publication Publication Date Title
CN103137191B (zh) 用于对相变存储器单元编程的方法和装置
Cho et al. A 0.18-/spl mu/m 3.0-V 64-Mb nonvolatile phase-transition random access memory (PRAM)
CN1841557B (zh) 使用位专用参考电平来读存储器
CN1892889B (zh) 相变存储设备以及对其进行编程的方法
US8441847B2 (en) Programming multi-level phase change memory cells
EP3516659B1 (en) Adaptive memory cell write conditions
US20090161415A1 (en) Integrated circuit for setting a memory cell based on a reset current distribution
Braga et al. Voltage-driven partial-RESET multilevel programming in phase-change memories
US7787316B2 (en) Semiconductor memory device and write control method thereof
US9583189B2 (en) Memory device, operating and control method thereof
US9293198B2 (en) Programming of gated phase-change memory cells
CN104704568A (zh) 电阻可变存储器中的漂移加速
CN108028063A (zh) 交叉点存储器控制
CN103714852B (zh) 一种精确控制微纳尺寸相变材料非晶化率连续变化的方法
KR20120033899A (ko) 반도체 메모리 장치
KR20110118924A (ko) 반도체 메모리 장치 및 프로그래밍 전류펄스 생성방법
KR20120025046A (ko) 반도체 메모리 장치 및 프로그래밍 전류펄스 조절방법
KR20170031224A (ko) 데이터 저장 방법 및 상변화 메모리
US7710790B2 (en) Semiconductor memory device and write control method thereof
US9087574B2 (en) Memory apparatus with gated phase-change memory cells
KR100905169B1 (ko) 상 변화 메모리 장치의 동작방법
De Sandre et al. Program circuit for a phase change memory array with 2 MB/s write throughput for embedded applications
KR20130123905A (ko) 비휘발성 반도체 장치 및 테스트 방법
JP6972059B2 (ja) 抵抗変化型メモリ
US11557343B2 (en) Pulsing synaptic devices based on phase-change memory to increase the linearity in weight update

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