相変化メモリ・セルをプログラミングするための方法、コンピュータ・プログラム、および装置、ならびに相変化メモリ・デバイス(相変化メモリ・セルのプログラミング)
【課題】s>2通りのプログラム可能セル状態を有する相変化メモリ・セルをプログラミングするための方法および装置を提供する。
【解決手段】少なくとも1つの制御信号VBLを印加して、セルをプログラミングするためのプログラミング・パルスを発生する。プログラミング・パルス中に少なくとも1つの前記制御信号VBLを変更して、プログラミングすべきセル状態に依存してプログラミング・パルスを整形し、前記セル状態をプログラミングするためのそれぞれのプログラミング軌道に対応する複数のプログラミング・パルス波形(波形A〜D)のうちの選択された1つを発生する。選択されたプログラミング・パルス波形は、プログラミングすべきセル状態を含むプログラミング軌道に対応する。
【解決手段】少なくとも1つの制御信号VBLを印加して、セルをプログラミングするためのプログラミング・パルスを発生する。プログラミング・パルス中に少なくとも1つの前記制御信号VBLを変更して、プログラミングすべきセル状態に依存してプログラミング・パルスを整形し、前記セル状態をプログラミングするためのそれぞれのプログラミング軌道に対応する複数のプログラミング・パルス波形(波形A〜D)のうちの選択された1つを発生する。選択されたプログラミング・パルス波形は、プログラミングすべきセル状態を含むプログラミング軌道に対応する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、一般に、相変化メモリに関し、詳細には、マルチレベル相変化メモリ・セルをプログラミングするための方法および装置に関する。
【背景技術】
【0002】
相変化メモリ(PCM)は、導電率が異なる状態間でGSTなどの特定のカルコゲニド化合物について可逆的に熱支援切り替えすることを活用する不揮発性ソリッドステート・メモリ技術である。PCMは、フラッシュ・メモリの代用およびストレージクラス・メモリのための候補技術と見なされている。読み取りおよび書き込みの短い待ち時間、高い耐久性、長い保持力、および優れたスケーラビリティなどの多くの魅力的な特徴に加えて、PCMは、メモリ技術において容量を増加し、コストを低減するための主要な要因であるマルチビット動作を提供する。マルチビット・ストレージまたはマルチレベル・ストレージは、通常、反復書き込み検証(WAV)方式により達成され、この方式は、典型的に大規模メモリ・アレイに見られるセル・プログラミング特性の変動性を補償することを目指している。
【0003】
マルチレベルPCMに書き込む場合、それぞれのPCMセルは、異なる電気特性を示すs>2通りの状態またはレベルのうちの任意の1つに設定することができる。マルチレベル動作について定義されたs通りのプログラム可能セル状態は、カルコゲニド材料におけるアモルファス相と結晶層の異なる比率に対応する。次に、これらは、セル状態メトリック、典型的には電気抵抗の異なる値に対応し、このメトリックはリードバック時のセル状態を検出するために測定される。特定のセル状態に合わせてPCMセルをプログラミングするために、そのセルにプログラミング・パルスを印加して、カルコゲニド材料を加熱し、冷却時に所望のセル状態を誘導する。このプログラミング・パルスは、PCM回路内で適切な制御信号を印加することによって発生することができる。たとえば、メモリ・セル・アレイのビット線(BL)でバイアス電圧信号を印加することによって、セルに電圧パルスを印加することができる(電圧モード・プログラミング)。このBL信号と、アレイのワード線(WL)内のアクセス・デバイスに印加された他の制御信号との組み合わせを介して、特定のセルに対処することができる。このようなアクセス・デバイスの性質次第で、アクセス・デバイスに印加された信号パルスを使用して、そのセル用のプログラミング・パルスを発生することもできる。たとえば、ワード線を介してFETのゲートに印加された電圧パルスがセル内でプログラミング電流パルスを発生するように、セルに接続されたFETを電圧制御の電流源として使用することができる(電流モード・プログラミング)。
【0004】
プログラミング・パルスの種々の属性を変更することにより、具体的には、パルス振幅またはパルス持続時間、あるいは、パルスの立ち下がりの持続時間を変更することにより、PCMセルをプログラミングする種々の方法が存在する。これらの種々のプログラミング方法は、Pantazi他による「Multi−level Phase−Change Memory Modeling and Experimental Characterization」(EPCOS 2009)およびNirschl他による「Write strategies for 2 and 4−bit Multi−level Phase−Change Memory」(IEDM 2007)に述べられている。いずれの場合も、特定のパルス属性が変更されると、アモルファス領域のサイズの変化が発生し、このため、セルの関連電気抵抗の変化が発生する。結果の抵抗対パルス属性の関数は、典型的に、「プログラミング軌道(programming trajectory)」または「プログラミング曲線(programming curve)」と呼ばれる。プログラミング軌道は、マルチレベル・プログラミングにおけるレベル割り振りのための使用可能空間、すなわち、マルチレベル動作について定義された異なるプログラム可能セル状態のための使用可能空間を定義する。
【0005】
プログラミング動作において単一プログラミング・パルスを使用することができ、そのプログラミング・パルスの可変属性は所望のセル状態を誘導するために適切に設定されている。より一般的にマルチレベルPCMに使用される反復(WAV)技法では、複数プログラミング・パルスのシーケンスが使用される。このシーケンス内の各パルスの後で(たとえば、セル抵抗を測定することにより)セル状態が検出される。次に、実際の測定セル状態と所望のターゲット・セル状態に基づいてシーケンス内の次のパルスのために可変パルス属性が適切に調整される。このようにして、プロセスはプログラミング軌道に沿って効果的に進行し、徐々にターゲット・セル状態に収束する。
【0006】
複数のプログラミング軌道を使用するプログラミング技法は、本出願人による国際特許出願である国際公開公報第WO2011/121491A1号およびPapandreou他による「Programming Algorithms for Multilevel Phase−Change Memory」(ISCAS 2011)に記載されている。この技法では、セル・ワード線内のFETアクセス・デバイスに印加されたゲート電圧VGのそれぞれの異なる値に対応して、複数のプログラミング軌道が使用可能である。所与の値のVGの場合、セル・ビット線のバイアス電圧パルスの振幅は、対応するプログラミング軌道においてセル状態にアクセスするために変動可能である。したがって、ここではビット線信号とワード線信号の共同制御により複数の軌道が実現され、これらの2つの信号はプログラミング制御のための2つのノブ(knob)を効果的に提供する。
【0007】
複数の軌道を使用するマルチレベル・プログラミングの利点は、PCMテスト・アレイからの実験データに基づいて実証されている。この技法により、たとえば、プログラミング軌道の急峻さおよびレベルあたりのプログラミング電圧ウィンドウの増加に基づいて、異なる軌道への効率的なレベル割り振りが可能になる。プログラミング中のフィードバック・ループに関する制約(たとえば、電圧分解能(voltage resolution))を緩和することができ、反復プログラミング中に高速収束が達成される。
【先行技術文献】
【特許文献】
【0008】
【特許文献1】国際特許出願公報第WO2011/121491A1号
【非特許文献】
【0009】
【非特許文献1】Pantazi他による「Multi−level Phase−Change Memory Modeling and Experimental Characterization」(EPCOS 2009)
【非特許文献2】Nirschl他による「Write strategies for 2 and 4−bit Multi−level Phase−Change Memory」(IEDM 2007)
【非特許文献3】Papandreou他による「Programming Algorithms for Multilevel Phase−Change Memory」(ISCAS 2011)
【発明の概要】
【発明が解決しようとする課題】
【0010】
PCMに関するマルチ軌道プログラミング技法の改善が非常に望ましくなるであろう。
【課題を解決するための手段】
【0011】
本発明の第1の態様の一実施形態は、s>2通りのプログラム可能セル状態を有する相変化メモリ・セルをプログラミングするための方法を提供する。この方法は、
少なくとも1つの制御信号を印加して、セルをプログラミングするためのプログラミング・パルスを発生することと、
プログラミング・パルス中に少なくとも1つの前記制御信号を変更して、プログラミングすべきセル状態に依存してプログラミング・パルスを整形し、前記セル状態をプログラミングするためのそれぞれのプログラミング軌道に対応する複数のプログラミング・パルス波形のうちの選択された1つを発生すること
を含み、
選択されたプログラミング・パルス波形は、プログラミングすべきセル状態を含むプログラミング軌道に対応する。
【0012】
本発明を実施する方法は、異なるプログラミング軌道がパルス整形によって実現される、PCMセルのマルチ軌道プログラミングを提供する。特に、プログラミング・パルスは、1つまたは複数の制御信号を印加することによって発生され、プログラミング・パルス中に少なくとも1つの制御信号を変更することによって整形することができる。このパルス整形は、ターゲット・セル状態に依存し、複数のプログラミング・パルス波形のうちの1つを有するパルスを発生する。これらのプログラミング・パルス波形はそれぞれの異なるプログラミング軌道に対応する。このため、ターゲット・セル状態を含むプログラミング軌道に対応する特定の波形が選択され、それに応じてプログラミング・パルスは適切な制御信号変動によって整形される。
【0013】
上記の技法は、マルチ軌道プログラミングのための様々な利点をもたらす単純かつ効率的なプログラミング・システムを提供する。パルス整形は、望ましい場合、1つの制御信号のみを変更することによって実現することができ、すなわち、プログラミング制御のために1つの制御ノブのみが必要である。これにより、(i)PCMセル設計または(ii)アクセス・デバイスまたは(iii)書き込み回路または(iv)アレイ・アーキテクチャが1つの制御ノブのみに備えている場合でも、複数のプログラミング軌道を実現することができる。この場合の典型的な例としては、ダイオードベースのPCMセルまたはクロスバー・メモリ・アレイを含む。したがって、多種多様なセル設計およびアレイ・アーキテクチャによってマルチ軌道プログラミングを実現することができる。また、異なるプログラミング軌道を実現するために異なる波形を使用することにより、異なる基本的なセル・プログラミング・メカニズムの効果的な活用が可能になる。特に、これらの波形は、静的電力依存、融解動力学、および結晶化力学などの特性の組み合わせを活用して、非常に効率的な動作を達成することができる。この利点およびその他の利点については以下により詳細に論ずる。
【0014】
セル用のプログラミング・パルスは、1つまたは複数の制御信号を印加することによって発生される。プログラミング・パルスを発生するために印加された制御信号(複数も可)は、たとえば、PCMアレイ内のビット線電圧として、セルに印加されたバイアス電圧信号を含むことができる。前述の通り、セルは、アクセス・デバイス、たとえば、FETを有することができ、それによりアクセス・デバイス信号、たとえば、ワード線信号として印加されたFETゲート電圧に依存してセル電流の制御が可能になる。この場合、プログラミング・パルスを発生するために印加された制御信号(複数も可)はアクセス・デバイス信号を含むことができる。
【0015】
プログラミング・パルスの整形は、一般に、プログラミング・パルス中に制御信号のうちの1つまたは複数を変更することによって実行することができる。しかし、単一制御信号のみ、たとえば、ビット線におけるバイアス電圧信号のみまたはワード線におけるアクセス・デバイス信号のみを変更することによってプログラミング・パルスの整形を達成できることは、好ましい諸実施形態によって活用される特定の利点である。パルス整形のために、このため、プログラミング制御のために、このようなバイアス電圧信号のみを変更する場合、結果のバイアス電圧パルス(たとえば、BLパルス)は、事実上、そのセル用のプログラミング・パルスになり、電圧モード・プログラミングのためにそのセルの両端で対応する電圧を発生する。パルス整形のためにアクセス・デバイス信号(たとえば、FETゲート電圧)のみを変更する場合、結果のアクセス・デバイス信号パルス(たとえば、WLパルス)は、事実上、そのセル用のプログラミング・パルスになり、電流モード・プログラミングのためにそのセル内で対応する電流パルスを発生する。しかし、プログラミング・パルス中にこのような信号を両方とも変更することによってプログラミング・パルスが整形されるという諸実施形態を想定することができる。この場合、プログラミング・パルスは、両方の制御信号の複合効果により、結果としてセルの両端で降下した電圧(または代わって、結果としてセルを通って流れる電流)と見なすことができる。
【0016】
様々なプログラミング・パルス波形に対応するプログラミング軌道の集合は共同で、マルチレベル動作について定義されたs通りのプログラム可能セル状態のうちのいずれか1つのプログラミングを可能にする。一般に、特定の軌道がs通りのプログラム可能状態のうちの2つ以上を含むことができるように、これらのセル状態のうちの任意の数は所与のプログラミング軌道を介してアクセス可能になる可能性がある。
【0017】
本発明を実施する方法は、単一パルス・プログラミング動作および反復プログラミング動作の両方で適用することができる。反復プログラミング方法は、前記プログラミング・パルス波形を選択するステップと、プログラミング・パルス中に少なくとも1つの前記制御信号を変更することにより選択された波形を有する前記プログラミング・パルスを発生するステップと、プログラミング・パルス後にセル状態を検出するステップと、検出されたセル状態に依存して、変更されたパルス波形を有するプログラミング・パルスを反復して発生し、事前定義プログラミング基準を満足するまで、もう一度、セル状態を検出するステップとを含むことができる。この場合、変更されたパルス波形は、プログラミング・パルス中の適切な制御信号変動により、以前のように得ることができる。反復プロセスの任意の所与のステップでは、変更されたパルスは先行パルスと同じ基本波形を有し、変更されたパルス波形を提供するために特定のパルス属性のみが変更されている可能性がある。しかし、パルス波形の変更は、反復プロセスのいくつかのステップで基本パルス波形の変化を伴う可能性がある。これは、たとえば、セル・プログラミング特性の変動のために、前に選択された波形に関するプログラミング軌道がターゲット・セル状態を含まないと判断された場合に発生する可能性がある。プロセスを終了するための事前定義プログラミング基準は、たとえば、検出されたセル状態とターゲット・セル状態との差、たとえば、検出された状態がターゲット抵抗レベルの所定の抵抗しきい値の範囲内であるかどうかに基づくか、あるいは待ち時間、たとえば、所定の数の反復が実行されたかどうかに基づくか、またはその両方に基づくものにすることができる。
【0018】
実現の簡潔性および効率のために、好ましい諸実施形態では、プログラミング・パルスは事前定義パルス幅を有し、その結果、パルス幅は固定され、パルス整形につれて変動することはない。特に好ましい諸実施形態では、プログラミング・パルス波形のうちの少なくともいくつか(および好ましくはすべて)はいずれも、第1および第2の部分を含み、第1の部分は一般に第2の部分より大きい振幅のものであり、波形が異なる場合、第1および第2の部分の相対持続時間は異なっている。これは、異なる基本的なセル・プログラミング・メカニズムを活用する適度に単純なシステムの基礎を提供するものである。各波形の第2の部分の属性は、好ましくは、プログラミングすべきセル状態に依存して変動可能である。したがって、特定のプログラミング軌道にアクセスするために特定の波形を選択することができ、前述の属性はその軌道内の異なるセル状態にアクセスするために変更される。非常に効率的な実現例では、各波形の第1の部分は第1の定振幅を有し、各波形の第2の部分は第2の定振幅を有する。第2の部分の振幅は、都合の良いことに、プログラミングすべきセル状態に依存して変動可能である。
【0019】
本発明の第2の態様の一実施形態は、s>2通りのプログラム可能セル状態を有する相変化メモリ・セルをプログラミングするための装置を提供する。この装置は、
少なくとも1つの制御信号を供給して、セルをプログラミングするためのプログラミング・パルスを発生するための信号発生器と、
プログラミング・パルス中に少なくとも1つの前記制御信号を変更して、プログラミングすべきセル状態に依存してプログラミング・パルスを整形し、前記セル状態をプログラミングするためのそれぞれのプログラミング軌道に対応する複数のプログラミング・パルス波形のうちの選択された1つを発生するように信号発生器を制御するためのコントローラとを含み、選択されたプログラミング・パルス波形は、プログラミングすべきセル状態を含むプログラミング軌道に対応する。
【0020】
また、本発明の第3の態様の一実施形態は、
s>2通りのプログラム可能セル状態を有する複数の相変化メモリ・セルを含むメモリと、
相変化メモリ・セル内のデータを読み取り、書き込むための読み取り/書き込み装置とを含み、この読み取り/書き込み装置が前記メモリ・セルをプログラミングするために本発明の第2の態様による装置を含む、相変化メモリ・デバイスも提供する。
【0021】
本発明の他の態様の一実施形態は、本発明の第1の態様による方法をコンピュータに実行させるためのプログラム・コード手段を含むコンピュータ・プログラムをさらに提供する。「コンピュータ」という用語は最も一般的な意味で使用され、コンピュータ・プログラムを実現するためのデータ処理能力を有する任意のデバイス、コンポーネント、またはシステムを含むことが理解されるであろう。その上、本発明を実施するコンピュータ・プログラムは、1つの独立プログラムを構成する場合もあれば、より大きいプログラムの1つの要素である場合もあり、たとえば、コンピュータにロードするためのディスクまたは電子伝送などのコンピュータ可読媒体に実施して、供給することができる。コンピュータ・プログラムのプログラム・コードは、直接または(a)他の言語、コード、または表記への変換、および(b)異なる物質的形式による複製のいずれか一方または両方の後、当該方法をコンピュータに実行させるための1組の命令を任意の言語、コード、または表記で表した任意の表現を含むことができる。
【0022】
一般に、本発明の一態様の一実施形態に関連して本明細書に複数の特徴が記載されているが、これに対応する特徴は本発明の他の態様の諸実施形態で提供することができる。
【0023】
次に、添付図面に関連して、一例として、本発明の好ましい諸実施形態について説明する。
【図面の簡単な説明】
【0024】
【図1】本発明を実施する相変化メモリ・デバイスの概略ブロック図である。
【図2】図1のデバイスの読み取り/書き込み装置のより詳細な図である。
【図3】本発明を実施する第1のプログラミング方法で使用される4つのプログラミング・パルス波形を示す図である。
【図4】図3の波形に対応する4つのプログラミング軌道を示す図である。
【図5】PCMセルに関する3つの基本的なセル・プログラミング・メカニズムの1つを示す図である。
【図6】PCMセルに関する3つの基本的なセル・プログラミング・メカニズムの1つを示す図である。
【図7】PCMセルに関する3つの基本的なセル・プログラミング・メカニズムの1つを示す図である。
【図8】図4のプログラミング軌道に関するセル・プログラミング・メカニズムの変動を示す図である。
【図9】図1のデバイスにおける反復プログラミング動作の諸ステップを示す図である。
【図10】本発明を実施する第2のプログラミング方法におけるアクセス・デバイス信号の変動によって発生されたプログラミング・パルス波形を示す図である。
【図11】第2の実施形態において異なるプログラミング・パルス波形に対応する4つのプログラミング軌道を示す図である。
【発明を実施するための形態】
【0025】
図1は、本発明を実施する相変化メモリ・デバイスの簡略図である。デバイス1は、複数のマルチレベルPCMセルからなる1つまたは複数の統合アレイにデータを保管するための相変化メモリ2を含む。同図には単一ブロックとして示されているが、一般に、メモリ2は、たとえば、単一チップまたはダイから、それぞれがストレージ・チップの複数パッケージを含む複数のストレージ・バンクに及ぶ、任意の所望の構成のPCMストレージ・ユニットを含むことができる。メモリ2に対するデータの読み取りおよび書き込みは読み取り/書き込み装置3によって実行される。装置3は、データ書き込み動作中にPCMセルをプログラミングし、読み取り動作中にセル状態(レベル検出)を検出するための回路を含む。これらの動作中に、読み取り/書き込み装置3は、メモリ・アンサンブル2内のワード線およびビット線のアレイに適切な制御信号を印加することにより、個々のPCMセルに対処することができる。このプロセスは、以下に詳述するものを除き、一般的に知られている方法で実行される。同図にはブロック4によって示されているように、デバイス1に入力されたユーザ・データは、典型的に、書き込みデータとして装置3に供給される前に、エラー訂正のためのコーディングなど、何らかの形の書き込み処理が行われる。同様に、装置3によって出力されたリードバック・データは、一般に、コードワード検出およびエラー訂正動作を実行して元の入力ユーザ・データを回復する読み取り処理モジュール5によって処理される。モジュール4および5によるこのような処理は、説明すべきプログラミング・システムとは無関係であり、本明細書でこれ以上論ずる必要はない。
【0026】
図2は、読み取り/書き込み装置3の主なコンポーネントを示すブロック図である。この回路は、セル上での読み取り/書き込み動作のために、関連のアクセス・デバイス11により、ビット線BLおよびワード線WLを介して、特定のPCMセル10に接続された状態で示されている。この例のアクセス・デバイス11は、そのゲートがワード線WLに接続されているFETである。装置3は、一般化した形で12に示されている制御信号発生器と、読み取り測定回路13と、コントローラ14とを含む。信号発生器12は、セル上で読み取り/書き込み動作を実行するためにセル・ビット線およびワード線を介して供給される制御信号を発生する。図示の一般化した形では、信号発生器12はBL信号発生器15とWL信号発生器16とを含む。BL信号発生器15は、動作時にセル・ビット線BLに供給されるビット線電圧信号VBLを発生する。WL信号発生器16は、動作時にセル・ワード線WLに供給されるワード線電圧信号VWLを発生する。読み取り測定回路13は、セルを通って流れる電流を測定するために読み取り動作中にセル10の両端に接続される。測定されたセル電流Ireadはコントローラ14に供給される。コントローラ14は装置3の動作を制御し、一般に、以下に詳述するセル・プログラミング方法を実現するための機能ならびに読み取り回路13からの測定値Ireadに基づく読み取り制御およびレベル検出のための機能を取り入れている。信号発生器12および読み取り回路13は、上記の機能を実行するために、任意の所望の方法で、好ましくは、ハードワイヤード論理回路を使用して、実現することができる。コントローラ14の機能は、一般に、ハードウェアまたはソフトウェアあるいはその組み合わせで実現することができる。適切な実現例は、本明細書の説明から当業者には明らかになるであろう。一例として、コントローラ14のプログラミング制御機能は、上記の機能を実行するためのソフトウェアによって構成されたプロセッサによって実現することができ、適切なソフトウェアは本明細書の説明から明らかになるであろう。
【0027】
デバイス1における書き込み動作は、そのs>2通りのプログラム可能セル状態のうちの1つにマルチレベル・セルをプログラミングすることを伴う。読み取り動作は、これらの状態またはレベルのうちのどれにセルが設定されているかを検出することを伴う。マルチレベル動作について定義された特定のプログラム可能セル状態は、読み取り検出に使用されるセル状態メトリックの所定の基準値または値の範囲によって定義することができる。所与のプログラミング動作では、プログラミングすべきセル状態、すなわち、ターゲット・セル状態は、測定セル状態メトリックが定義された範囲内で、たとえば、適切な基準値の定義されたしきい値の範囲内で、任意の値を有する状態として定義することができる。説明すべき例では、名目上それぞれのセル状態を表す4つの基準抵抗値の集合によって定義されるs=4通りのプログラム可能セル状態が存在する。特定のプログラム可能セル状態は、測定されたセル抵抗がその状態に関する基準抵抗値の所定のしきい値の範囲内である場合、プログラミング中に達成されたものと思われるかまたはリードバック時に検出されるものと思われる。
【0028】
デバイス1の読み取り動作および書き込み動作中に、コントローラ14は、当該動作のために印加すべき適切な制御信号VBLおよびVWLを発生するように信号発生器12を制御する。読み取り動作の場合、コントローラ14は、それぞれセル・ビット線およびワード線に定振幅読み取り電圧パルスを供給するようにBLおよびWL信号発生器15および16を制御する。BL読み取りパルスは、セル状態の変化が発生する可能性のある、しきい切り替え電圧未満の振幅を有する。次に、コントローラ14により、結果のセル電流Ireadから求められるセルの抵抗を上記の基準レベルと比較して、4通りのプログラム可能セル状態のうちのどれにセルが設定されているかを判断する。書き込み動作では、コントローラ14は、信号発生器12の制御を介して、適切な制御信号VBLおよびVWLを印加して、反復プログラミング動作において一連のプログラミング・パルスを発生する。それぞれのプログラミング・パルスは、コントローラ14で事前設定される固定パルス幅を有する。それぞれのプログラミング・パルス後に、上記の読み取り動作用としてセル抵抗が測定される。その後、測定セル状態に基づいて次のプログラミング・パルスの適切な形が決定され、それに応じてこのパルス用の制御信号が発生される。
【0029】
説明すべき反復プログラミング方式では、プログラミング・パルスの整形を介して実現される複数のプログラミング軌道を活用する。特に、コントローラ14は、プログラミング・パルス・ウィンドウ中に制御信号VBLおよびVWLのうちの少なくとも1つを変更するように信号発生器12を制御し、それにより結果のプログラミング・パルスを整形する。一般に、ビット線信号の変動によってセルの両端の電圧を変更し、ワード線信号VWLの変動によってセル電流を変更する。説明すべき第1の実施形態では、VWLはプログラミング・パルス中に一定に保持され、VBLを変更することによってパルス整形が実行される。特に、コントローラ14の制御下で、プログラミング・パルス・ウィンドウ中にセルにアクセスするためにWLパルス発生器16によって定振幅パルスが出力される。BL信号発生器15からの信号VBLは、電圧モード・プログラミングのためにビット線において整形された電圧パルスを発生するためにプログラム・ウィンドウにおいて変更される。したがって、VBLパルスは、事実上、第1の実施形態においてプログラミング・パルスになる。反復プログラミング動作のために一続きの固定幅プログラミング・パルスが発生され、それぞれのパルスはパルス幅におけるVBL信号レベルの変動によって整形される。このパルス整形は、プログラミングすべき特定のセル状態に依存し、それぞれがそれぞれのプログラミング軌道に対応する複数のプログラミング・パルス波形を発生する。この例では、4つの対応する波形を有する4通りのプログラミング軌道が存在する。
【0030】
図3は、この実施形態においてA〜Dと表示されている4つの基本プログラミング・パルス波形の概略図である。それぞれの波形は、振幅V1の第1の部分と、振幅V2の第2の部分とを有し、V1は一般にV2より大きい。波形が異なる場合、これらの第1および第2の部分の相対持続時間は異なっている。特に、第1の部分は幅W1のものであり、第2の部分は幅W2のものであり、W1:W2の比率は、一般に図示の通り、4つの波形において増加する。しかし、それぞれの場合に、波形の第2の部分の振幅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
A: W1=300nsおよびW2=20ns
【0031】
マルチレベル動作について定義された4つのプログラム可能セル状態は、図4に「レベル0」〜「レベル3」と表示された水平帯域によって示されている。各レベルは、そのレベルに関する基準抵抗値の定義されたしきい値の範囲内の測定セル状態を含む。軌道TDはレベル0のみの測定セル状態を含み、軌道TCはレベル0および1の測定セル状態を含み、軌道TBはレベル0〜2の測定セル状態を含み、軌道TAは4つのレベルすべての測定セル状態を含むことに留意されたい。反復プログラミング動作の場合、それぞれのプログラム可能レベルは、名目上、そのレベルを含む特定の軌道に割り振ることができる。以下に詳述するように、このような割り振りを使用して、反復プロセスに関する初期パラメータを選択することができる。一般に、レベルの数ならびに軌道の特定の形および分布次第で、それぞれの軌道に対して1つまたは複数のレベルを割り振ることができる。この例では、レベル0、1、2、および3が、名目上、軌道TD、TC、TB、およびTAにそれぞれ割り振られるものと想定している。一般にプログラミング軌道の右側傾斜を使用してプログラミングを実行する場合、濃い色つきの帯域および水平矢印は、公称レベル割り振りに基づいて各レベルに関する公称プログラミング電圧ウィンドウ(V2値の範囲)を示す。このため、特定のターゲット・セル状態および公称レベル割り振りに基づいて、特定のプログラミング・パルス波形を選択することができる。次に、この波形の振幅V2を調整して、軌道上の所望のポイントまで進行し、ターゲット・セル状態を達成することができる。
【0032】
マルチ軌道プログラミングに備えるだけでなく、異なるプログラミング・パルス波形A〜Dにより、異なる基本的なセル・プログラミング・メカニズムをプログラミング動作時に活用することができる。詳細には、これらの波形は、静的電力依存、融解動力学、および結晶化力学など、PCMに固有の特性の組み合わせを活用する。これらの特性またはメトリックは、プログラミング・プロセス中に種々のメカニズムを調整する。図5〜図7は、種々のプログラミング・メトリックに対するセル状態の依存関係を示している。図5は、固定幅および可変振幅の矩形プログラミング・パルスとして印加された電圧に対する測定セル状態のグラフを介して静的電力依存を示している。同図に矢印で示されているように静的電力を増加するにつれて、セル温度が上昇し、その結果、アモルファス・サイズが増加し、このため、セル抵抗が大きくなる。図6は、セル状態に対する融解動力学の影響を示している。これは、静的電力が異なる値のときにプログラミング・パルス幅につれてセル状態が変動することを示している。パルス幅の増加に対応して、特定の融解温度が維持される時間が長くなるほど、結果のアモルファス・サイズが大きくなり、このため、セル抵抗も大きくなる。図7は、セル状態に対する結晶化力学の影響を示している。これは、静的電力が異なる値のときにプログラミング・パルスの立ち下がりの持続時間につれてセル状態が変動することを示している。立ち下がりの長さの増加に対応して、結晶化温度が維持される時間が長くなるほど、結果のアモルファス・サイズが小さくなり、このため、セル抵抗も小さくなる。
【0033】
図3のプログラミング・パルス波形は、複数のプログラミング・ノブとして上記の基本的なメトリックを効果的に活用する。独特に整形されたパルス波形はこれらのノブと種々の重み付けを結合し、上記のように異なるプログラミング軌道を発生するために異なるパルス波形が使用される。図8の矢印は、図4のプログラミン軌道TA〜TDに対する3つの基本的なプログラミング・メトリックの変動を示している。矢印Iは、入力電力が高くなり、このため、アモルファス・サイズが大きくなることを示している。これは、プログラミング・パルス波形の第1の部分の幅W1の増加ならびに第2の部分の振幅V2の増加に続くものである。矢印IIは、融解相の持続時間が長くなり、その結果、アモルファス・サイズが増加することを示しており、これは幅W1の増加に対応するものである。矢印IIIは、結晶化温度での持続時間が長くなり、結晶化が良好になることを示し、プログラミング・パルス波形の第2の部分の幅W2の増加に対応する。
【0034】
この実施形態の反復プログラミング動作を通過するたびに、コントローラ14は、プログラミング・ウィンドウにおける制御信号VBLの適切な変動により、第2の波形部分について振幅V2を選択し、プログラミング・パルス波形A〜Dのうちの選択された1つを発生するようにBL信号発生器15を制御する。コントローラ14からの選択信号SW,V2は、4つの波形のうちのどれを発生すべきかと、V2の適切な値を示す。反復プログラミング動作の基本ステップは図9の流れ図に示されている。動作が始まると、コントローラ14は、まず、初期プログラミング・パルスに使用すべき特定の波形およびV2値を選択する。ステップ20に示されている、これらの初期パラメータの選択は、ターゲット・セル状態を含む軌道および適切なプログラミング・ウィンドウ内のV2値を選択する際の「最良推量(best guess)」を伴う。この選択は、その動作に関するターゲット・セル状態、異なる波形に関するプログラミング軌道、および図4に関連して論じた公称レベル割り振りに基づくものである。特に、所与のターゲット・レベル0、1、2、または3の場合、名目上そのレベルに割り振られた軌道に対応する波形が選択される。次に、その軌道用の(推定)プログラミング・ウィンドウ内で初期V2値が選択される。
【0035】
図9のステップ21および22は基本的な書き込み検証(WAV)プロセスを表している。ステップ21では、BL信号発生器16は、選択信号SW,V2に応じて整形されたプログラミング・パルスVBLを発生する。WL信号発生器16は定振幅パルスVWLを発生する。プログラミング・パルスの印加後、ステップ22で現行セル状態が検出される。特に、第1のプログラミング・パルスに続く読み取り測定サイクルでは、読み取り回路13からの測定セル電流Ireadに基づいてセルの抵抗がコントローラ14によって検出される。ステップ23では、コントローラ14は、当該レベルに関する基準抵抗値からの測定セル抵抗の偏差ΔRとして、検出されたセル状態とターゲット・セル状態との差を求める。(この場合、ΔRは測定セル電流Ireadとターゲット・セル状態に対応する基準電流値との差によって表すことができることに留意されたい。他の実施形態では、所与のセル電流ならびに電圧差として求められた検出されたセル状態とターゲット・セル状態との差について、セルの両端の電圧を測定することができる。)次に、判断ステップ24で、差ΔRが所定のしきい値と比較され、ターゲット・セル状態が達成されているかどうかを判断する。達成されている場合、プログラミングは成功しており、プロセスは終了する。達成されていない場合、動作は判断ステップ25に移行する。この場合、コントローラ14は、選択されたプログラミング軌道が現行動作のために正しいものであるかどうか、すなわち、ターゲット・セル状態にアクセスするために正しい(または最良の)軌道が選択されているかどうかを判断する。PCMセル特性の変動により、軌道およびプログラミング・ウィンドウは時間が変化し、セルごとに様々になる。このため、ステップ20で初めに選択された軌道は常に正しいかまたは最適なものではない可能性がある。たとえば、ステップ25の判断は、抵抗エラーのサイズΔRあるいは待ち時間またはその両方、たとえば、プログラミング動作の所定数の反復が実行されたが成功しなかったかどうかに基づくことができる。特に、現行軌道が正しくないという判断は、最小数の反復が実行されたが成功しなかったときまで、実際には行われない可能性がある。ステップ25でその軌道が正しくないと思われる場合、ステップ26でコントローラは、それに対応する軌道が結果的に成功する可能性が次に高いものとして、他のプログラミング・パルス波形を選択する。図4の軌道では、より低い抵抗値をサポートする次の軌道が選択される。すなわち、この場合、TD、TC、TB、TAというシーケンス内の次の軌道に選択が進行するであろう。(他の実施形態では、たとえば、軌道が低い電圧で収束し、高い電圧で発散する場合、この選択は、抵抗の減少とは対照的に、抵抗の増加の順に行うことができる。)ステップ26で新しい軌道、このため、波形が選択される場合、変更されたプログラミング・パルス波形に基づいてもう一度、WAVプロセスを通過するために、動作はステップ21に戻る。
【0036】
ステップ25に戻り、現行軌道およびプログラミング波形が正しいものであると思われる場合、動作はステップ27に移行する。この場合、コントローラ14は、抵抗エラーΔRに(おそらく、望ましい場合は待ち時間にも)基づいてパルス振幅V2を調整し、現行軌道内でターゲット・セル状態のより近くに移動する。次に、変更されたプログラミング・パルス波形で新たにWAVプロセスを通過するために、動作はステップ21に戻る。
【0037】
上記のプロセスは、ステップ24でターゲット・セル状態が達成されるまで(または、望ましい場合に、最大数の反復が実行されるまで)反復する。連続反復により、各パルス後に検出されたセル状態に基づいてプログラミング・パルス波形が連続的に変更され、その結果、実際のセル状態は所望のターゲット状態に収束する。
【0038】
複数の軌道を実現するために独特に整形されたプログラミング・パルス波形を使用することにより、上記のプロセスはPCMに関する非常に効率的なマルチ軌道プログラミング・システムを提供する。このシステムは、反復プログラミングのために優れたものであり、固定プログラミング・パルス持続時間でレベルあたりのプログラミング電圧ウィンドウの増加ならびに賢明なレベル割り振り(軌道選択)をもたらす。また、パルス整形により、並外れて効率的な動作のために種々の基本的なプログラミング・メトリックを効果的に活用することができる。この改善策により、反復アルゴリズム制約(たとえば、電圧分解能、反復数)を緩和することができる。その上、プログラミング制御のために単一制御ノブ(上記のVBL)のみを使用してマルチ軌道プログラミングを達成することができ、FETアクセス・デバイスを使用するかどうかにかかわらず、多種多様なセルおよびアレイ・アーキテクチャでの適用が可能になる。
【0039】
図4はプログラミングに右プログラミング傾斜を使用することを示しているが、それぞれの軌道の両方の傾斜は上記のシステムにより融解状の傾斜であることに留意されたい。これは、両方の傾斜を使用して双方向プログラミングを実行できることを意味する。プログラミングのために両方の傾斜が使用可能であることは、様々なレベルについてプログラミング電圧ウィンドウのさらなる拡張をもたらす。
【0040】
プログラミング・システムの第2の実施形態では、VBLの代わりにVWLを変更することにより、パルス整形が実行される。この実施形態では、プログラミング・パルス・ウィンドウ中にセルにバイアスをかけるためにBLパルス発生器15によって定振幅パルスVBLが出力される。WL信号発生器16からの信号VWLをプログラミング・ウィンドウにおいて変更し、電流モード・プログラミングのためにFET11のゲートで整形済みWLパルスを発生する。したがって、VWLパルスは、この場合、実質上、プログラミング・パルスになる。プログラミング動作は、他の点では第1の実施形態と同様であり、複数の軌道を実現するために異なる軌道に対応する異なるプログラミング・パルス波形が発生される。図10は、この場合、振幅VG1の第1の部分と振幅VG2の第2の部分を有し、VG1の方が一般にVG2より大きい、模範的な波形を示している。振幅VG2は対応するプログラミング軌道を実現するために段階的に調整可能である。異なる幅比率W1:W2を有するその他の同様の波形を使用して、他の軌道を発生することができる。TE〜THと表示されている4つのこのような軌道の一例は図11に示されている。これは、以下のように部分幅を有する図10の波形についてVG2に対する測定セル抵抗の対数をグラフ化している。
TE: W1=50nsおよびW2=450ns
TF: W1=300nsおよびW2=200ns
TG: W1=350nsおよびW2=150ns
TH: W1=400nsおよびW2=100ns
「レベル0」〜「レベル3」と表示された水平帯域は4レベル・セル動作について定義された4つのプログラム可能状態を示しており、濃い色つきの帯域および水平矢印は、この例の公称レベル割り振りおよびプログラミング・ウィンドウを示している。上述の通り、反復プログラミングは両方のプログラミング傾斜上に実現できるので、この例ではプログラミングに両方の傾斜(完全U曲線)を使用する。同図に示されているように、公称プログラミング・ウィンドウはそれに応じて拡大される。
【0041】
上記の模範的な諸実施形態に対し多くの変更および修正を行うことができる。当然のことながら、プログラミング・システムは、s=4通り以外のプログラム可能状態ならびに異なる数のプログラミング波形/軌道を使用することができる。並外れて効率的なパルス整形方式について説明してきたが、複数の軌道を実現するために他の形のプログラミング・パルス波形も想定することができる。他の2部分波形では、1つまたは両方の部分の振幅が一定ではない可能性がある。第2の部分は、たとえば、下向きに傾斜したプロファイルを有する可能性がある。所与の波形の場合、プログラミング軌道を実現するために第2の部分の振幅以外の属性を変更できるであろう。この場合の一例は、たとえば、この部分の傾斜を調整することにより第2の波形部分の持続時間を変更することになるであろう(ただし、その場合、固定パルス幅の恩恵は失われる可能性がある)。他のメモリ・アーキテクチャでは他のアクセス・デバイスが提供される場合もあれば、いかなるアクセス・デバイスも提供されない場合もある。上記のようにVBLおよびVWLのうちの一方を変更することによってパルス整形が実行される場合、もう一方の信号パルス(それぞれVWLまたはVBL)の定振幅は、望ましい場合、異なる軌道について異なるものにすることができる。また、マルチ軌道動作のためのパルス整形を実施するために、プログラミング・ウィンドウ中に2つ以上の制御信号が変更される実施形態も想定することができる。上記の諸実施形態の変更例では、たとえば、VWLとVBLの両方を変更できるであろう。また、一般に反復プログラミングが好ましいが、上記の原理は単一パルス・プログラミングに適用することもできる。この場合、プログラミング・コントローラは単純に、それに対応する軌道がターゲット状態を含む特定の波形を選択し、その軌道上で所望の位置、このため、ターゲット状態を達成するように可変属性(たとえば、上記のV2またはVG2)を設定することになる。
【0042】
本発明の範囲を逸脱せずに上記の模範的な諸実施形態に対し多くの他の変更および修正を行うことができることが認識されるであろう。
【符号の説明】
【0043】
1 相変化メモリ・デバイス
2 相変化メモリ
3 読み取り/書き込み装置
4 書き込み処理モジュール
5 読み取り処理モジュール
【技術分野】
【0001】
本発明は、一般に、相変化メモリに関し、詳細には、マルチレベル相変化メモリ・セルをプログラミングするための方法および装置に関する。
【背景技術】
【0002】
相変化メモリ(PCM)は、導電率が異なる状態間でGSTなどの特定のカルコゲニド化合物について可逆的に熱支援切り替えすることを活用する不揮発性ソリッドステート・メモリ技術である。PCMは、フラッシュ・メモリの代用およびストレージクラス・メモリのための候補技術と見なされている。読み取りおよび書き込みの短い待ち時間、高い耐久性、長い保持力、および優れたスケーラビリティなどの多くの魅力的な特徴に加えて、PCMは、メモリ技術において容量を増加し、コストを低減するための主要な要因であるマルチビット動作を提供する。マルチビット・ストレージまたはマルチレベル・ストレージは、通常、反復書き込み検証(WAV)方式により達成され、この方式は、典型的に大規模メモリ・アレイに見られるセル・プログラミング特性の変動性を補償することを目指している。
【0003】
マルチレベルPCMに書き込む場合、それぞれのPCMセルは、異なる電気特性を示すs>2通りの状態またはレベルのうちの任意の1つに設定することができる。マルチレベル動作について定義されたs通りのプログラム可能セル状態は、カルコゲニド材料におけるアモルファス相と結晶層の異なる比率に対応する。次に、これらは、セル状態メトリック、典型的には電気抵抗の異なる値に対応し、このメトリックはリードバック時のセル状態を検出するために測定される。特定のセル状態に合わせてPCMセルをプログラミングするために、そのセルにプログラミング・パルスを印加して、カルコゲニド材料を加熱し、冷却時に所望のセル状態を誘導する。このプログラミング・パルスは、PCM回路内で適切な制御信号を印加することによって発生することができる。たとえば、メモリ・セル・アレイのビット線(BL)でバイアス電圧信号を印加することによって、セルに電圧パルスを印加することができる(電圧モード・プログラミング)。このBL信号と、アレイのワード線(WL)内のアクセス・デバイスに印加された他の制御信号との組み合わせを介して、特定のセルに対処することができる。このようなアクセス・デバイスの性質次第で、アクセス・デバイスに印加された信号パルスを使用して、そのセル用のプログラミング・パルスを発生することもできる。たとえば、ワード線を介してFETのゲートに印加された電圧パルスがセル内でプログラミング電流パルスを発生するように、セルに接続されたFETを電圧制御の電流源として使用することができる(電流モード・プログラミング)。
【0004】
プログラミング・パルスの種々の属性を変更することにより、具体的には、パルス振幅またはパルス持続時間、あるいは、パルスの立ち下がりの持続時間を変更することにより、PCMセルをプログラミングする種々の方法が存在する。これらの種々のプログラミング方法は、Pantazi他による「Multi−level Phase−Change Memory Modeling and Experimental Characterization」(EPCOS 2009)およびNirschl他による「Write strategies for 2 and 4−bit Multi−level Phase−Change Memory」(IEDM 2007)に述べられている。いずれの場合も、特定のパルス属性が変更されると、アモルファス領域のサイズの変化が発生し、このため、セルの関連電気抵抗の変化が発生する。結果の抵抗対パルス属性の関数は、典型的に、「プログラミング軌道(programming trajectory)」または「プログラミング曲線(programming curve)」と呼ばれる。プログラミング軌道は、マルチレベル・プログラミングにおけるレベル割り振りのための使用可能空間、すなわち、マルチレベル動作について定義された異なるプログラム可能セル状態のための使用可能空間を定義する。
【0005】
プログラミング動作において単一プログラミング・パルスを使用することができ、そのプログラミング・パルスの可変属性は所望のセル状態を誘導するために適切に設定されている。より一般的にマルチレベルPCMに使用される反復(WAV)技法では、複数プログラミング・パルスのシーケンスが使用される。このシーケンス内の各パルスの後で(たとえば、セル抵抗を測定することにより)セル状態が検出される。次に、実際の測定セル状態と所望のターゲット・セル状態に基づいてシーケンス内の次のパルスのために可変パルス属性が適切に調整される。このようにして、プロセスはプログラミング軌道に沿って効果的に進行し、徐々にターゲット・セル状態に収束する。
【0006】
複数のプログラミング軌道を使用するプログラミング技法は、本出願人による国際特許出願である国際公開公報第WO2011/121491A1号およびPapandreou他による「Programming Algorithms for Multilevel Phase−Change Memory」(ISCAS 2011)に記載されている。この技法では、セル・ワード線内のFETアクセス・デバイスに印加されたゲート電圧VGのそれぞれの異なる値に対応して、複数のプログラミング軌道が使用可能である。所与の値のVGの場合、セル・ビット線のバイアス電圧パルスの振幅は、対応するプログラミング軌道においてセル状態にアクセスするために変動可能である。したがって、ここではビット線信号とワード線信号の共同制御により複数の軌道が実現され、これらの2つの信号はプログラミング制御のための2つのノブ(knob)を効果的に提供する。
【0007】
複数の軌道を使用するマルチレベル・プログラミングの利点は、PCMテスト・アレイからの実験データに基づいて実証されている。この技法により、たとえば、プログラミング軌道の急峻さおよびレベルあたりのプログラミング電圧ウィンドウの増加に基づいて、異なる軌道への効率的なレベル割り振りが可能になる。プログラミング中のフィードバック・ループに関する制約(たとえば、電圧分解能(voltage resolution))を緩和することができ、反復プログラミング中に高速収束が達成される。
【先行技術文献】
【特許文献】
【0008】
【特許文献1】国際特許出願公報第WO2011/121491A1号
【非特許文献】
【0009】
【非特許文献1】Pantazi他による「Multi−level Phase−Change Memory Modeling and Experimental Characterization」(EPCOS 2009)
【非特許文献2】Nirschl他による「Write strategies for 2 and 4−bit Multi−level Phase−Change Memory」(IEDM 2007)
【非特許文献3】Papandreou他による「Programming Algorithms for Multilevel Phase−Change Memory」(ISCAS 2011)
【発明の概要】
【発明が解決しようとする課題】
【0010】
PCMに関するマルチ軌道プログラミング技法の改善が非常に望ましくなるであろう。
【課題を解決するための手段】
【0011】
本発明の第1の態様の一実施形態は、s>2通りのプログラム可能セル状態を有する相変化メモリ・セルをプログラミングするための方法を提供する。この方法は、
少なくとも1つの制御信号を印加して、セルをプログラミングするためのプログラミング・パルスを発生することと、
プログラミング・パルス中に少なくとも1つの前記制御信号を変更して、プログラミングすべきセル状態に依存してプログラミング・パルスを整形し、前記セル状態をプログラミングするためのそれぞれのプログラミング軌道に対応する複数のプログラミング・パルス波形のうちの選択された1つを発生すること
を含み、
選択されたプログラミング・パルス波形は、プログラミングすべきセル状態を含むプログラミング軌道に対応する。
【0012】
本発明を実施する方法は、異なるプログラミング軌道がパルス整形によって実現される、PCMセルのマルチ軌道プログラミングを提供する。特に、プログラミング・パルスは、1つまたは複数の制御信号を印加することによって発生され、プログラミング・パルス中に少なくとも1つの制御信号を変更することによって整形することができる。このパルス整形は、ターゲット・セル状態に依存し、複数のプログラミング・パルス波形のうちの1つを有するパルスを発生する。これらのプログラミング・パルス波形はそれぞれの異なるプログラミング軌道に対応する。このため、ターゲット・セル状態を含むプログラミング軌道に対応する特定の波形が選択され、それに応じてプログラミング・パルスは適切な制御信号変動によって整形される。
【0013】
上記の技法は、マルチ軌道プログラミングのための様々な利点をもたらす単純かつ効率的なプログラミング・システムを提供する。パルス整形は、望ましい場合、1つの制御信号のみを変更することによって実現することができ、すなわち、プログラミング制御のために1つの制御ノブのみが必要である。これにより、(i)PCMセル設計または(ii)アクセス・デバイスまたは(iii)書き込み回路または(iv)アレイ・アーキテクチャが1つの制御ノブのみに備えている場合でも、複数のプログラミング軌道を実現することができる。この場合の典型的な例としては、ダイオードベースのPCMセルまたはクロスバー・メモリ・アレイを含む。したがって、多種多様なセル設計およびアレイ・アーキテクチャによってマルチ軌道プログラミングを実現することができる。また、異なるプログラミング軌道を実現するために異なる波形を使用することにより、異なる基本的なセル・プログラミング・メカニズムの効果的な活用が可能になる。特に、これらの波形は、静的電力依存、融解動力学、および結晶化力学などの特性の組み合わせを活用して、非常に効率的な動作を達成することができる。この利点およびその他の利点については以下により詳細に論ずる。
【0014】
セル用のプログラミング・パルスは、1つまたは複数の制御信号を印加することによって発生される。プログラミング・パルスを発生するために印加された制御信号(複数も可)は、たとえば、PCMアレイ内のビット線電圧として、セルに印加されたバイアス電圧信号を含むことができる。前述の通り、セルは、アクセス・デバイス、たとえば、FETを有することができ、それによりアクセス・デバイス信号、たとえば、ワード線信号として印加されたFETゲート電圧に依存してセル電流の制御が可能になる。この場合、プログラミング・パルスを発生するために印加された制御信号(複数も可)はアクセス・デバイス信号を含むことができる。
【0015】
プログラミング・パルスの整形は、一般に、プログラミング・パルス中に制御信号のうちの1つまたは複数を変更することによって実行することができる。しかし、単一制御信号のみ、たとえば、ビット線におけるバイアス電圧信号のみまたはワード線におけるアクセス・デバイス信号のみを変更することによってプログラミング・パルスの整形を達成できることは、好ましい諸実施形態によって活用される特定の利点である。パルス整形のために、このため、プログラミング制御のために、このようなバイアス電圧信号のみを変更する場合、結果のバイアス電圧パルス(たとえば、BLパルス)は、事実上、そのセル用のプログラミング・パルスになり、電圧モード・プログラミングのためにそのセルの両端で対応する電圧を発生する。パルス整形のためにアクセス・デバイス信号(たとえば、FETゲート電圧)のみを変更する場合、結果のアクセス・デバイス信号パルス(たとえば、WLパルス)は、事実上、そのセル用のプログラミング・パルスになり、電流モード・プログラミングのためにそのセル内で対応する電流パルスを発生する。しかし、プログラミング・パルス中にこのような信号を両方とも変更することによってプログラミング・パルスが整形されるという諸実施形態を想定することができる。この場合、プログラミング・パルスは、両方の制御信号の複合効果により、結果としてセルの両端で降下した電圧(または代わって、結果としてセルを通って流れる電流)と見なすことができる。
【0016】
様々なプログラミング・パルス波形に対応するプログラミング軌道の集合は共同で、マルチレベル動作について定義されたs通りのプログラム可能セル状態のうちのいずれか1つのプログラミングを可能にする。一般に、特定の軌道がs通りのプログラム可能状態のうちの2つ以上を含むことができるように、これらのセル状態のうちの任意の数は所与のプログラミング軌道を介してアクセス可能になる可能性がある。
【0017】
本発明を実施する方法は、単一パルス・プログラミング動作および反復プログラミング動作の両方で適用することができる。反復プログラミング方法は、前記プログラミング・パルス波形を選択するステップと、プログラミング・パルス中に少なくとも1つの前記制御信号を変更することにより選択された波形を有する前記プログラミング・パルスを発生するステップと、プログラミング・パルス後にセル状態を検出するステップと、検出されたセル状態に依存して、変更されたパルス波形を有するプログラミング・パルスを反復して発生し、事前定義プログラミング基準を満足するまで、もう一度、セル状態を検出するステップとを含むことができる。この場合、変更されたパルス波形は、プログラミング・パルス中の適切な制御信号変動により、以前のように得ることができる。反復プロセスの任意の所与のステップでは、変更されたパルスは先行パルスと同じ基本波形を有し、変更されたパルス波形を提供するために特定のパルス属性のみが変更されている可能性がある。しかし、パルス波形の変更は、反復プロセスのいくつかのステップで基本パルス波形の変化を伴う可能性がある。これは、たとえば、セル・プログラミング特性の変動のために、前に選択された波形に関するプログラミング軌道がターゲット・セル状態を含まないと判断された場合に発生する可能性がある。プロセスを終了するための事前定義プログラミング基準は、たとえば、検出されたセル状態とターゲット・セル状態との差、たとえば、検出された状態がターゲット抵抗レベルの所定の抵抗しきい値の範囲内であるかどうかに基づくか、あるいは待ち時間、たとえば、所定の数の反復が実行されたかどうかに基づくか、またはその両方に基づくものにすることができる。
【0018】
実現の簡潔性および効率のために、好ましい諸実施形態では、プログラミング・パルスは事前定義パルス幅を有し、その結果、パルス幅は固定され、パルス整形につれて変動することはない。特に好ましい諸実施形態では、プログラミング・パルス波形のうちの少なくともいくつか(および好ましくはすべて)はいずれも、第1および第2の部分を含み、第1の部分は一般に第2の部分より大きい振幅のものであり、波形が異なる場合、第1および第2の部分の相対持続時間は異なっている。これは、異なる基本的なセル・プログラミング・メカニズムを活用する適度に単純なシステムの基礎を提供するものである。各波形の第2の部分の属性は、好ましくは、プログラミングすべきセル状態に依存して変動可能である。したがって、特定のプログラミング軌道にアクセスするために特定の波形を選択することができ、前述の属性はその軌道内の異なるセル状態にアクセスするために変更される。非常に効率的な実現例では、各波形の第1の部分は第1の定振幅を有し、各波形の第2の部分は第2の定振幅を有する。第2の部分の振幅は、都合の良いことに、プログラミングすべきセル状態に依存して変動可能である。
【0019】
本発明の第2の態様の一実施形態は、s>2通りのプログラム可能セル状態を有する相変化メモリ・セルをプログラミングするための装置を提供する。この装置は、
少なくとも1つの制御信号を供給して、セルをプログラミングするためのプログラミング・パルスを発生するための信号発生器と、
プログラミング・パルス中に少なくとも1つの前記制御信号を変更して、プログラミングすべきセル状態に依存してプログラミング・パルスを整形し、前記セル状態をプログラミングするためのそれぞれのプログラミング軌道に対応する複数のプログラミング・パルス波形のうちの選択された1つを発生するように信号発生器を制御するためのコントローラとを含み、選択されたプログラミング・パルス波形は、プログラミングすべきセル状態を含むプログラミング軌道に対応する。
【0020】
また、本発明の第3の態様の一実施形態は、
s>2通りのプログラム可能セル状態を有する複数の相変化メモリ・セルを含むメモリと、
相変化メモリ・セル内のデータを読み取り、書き込むための読み取り/書き込み装置とを含み、この読み取り/書き込み装置が前記メモリ・セルをプログラミングするために本発明の第2の態様による装置を含む、相変化メモリ・デバイスも提供する。
【0021】
本発明の他の態様の一実施形態は、本発明の第1の態様による方法をコンピュータに実行させるためのプログラム・コード手段を含むコンピュータ・プログラムをさらに提供する。「コンピュータ」という用語は最も一般的な意味で使用され、コンピュータ・プログラムを実現するためのデータ処理能力を有する任意のデバイス、コンポーネント、またはシステムを含むことが理解されるであろう。その上、本発明を実施するコンピュータ・プログラムは、1つの独立プログラムを構成する場合もあれば、より大きいプログラムの1つの要素である場合もあり、たとえば、コンピュータにロードするためのディスクまたは電子伝送などのコンピュータ可読媒体に実施して、供給することができる。コンピュータ・プログラムのプログラム・コードは、直接または(a)他の言語、コード、または表記への変換、および(b)異なる物質的形式による複製のいずれか一方または両方の後、当該方法をコンピュータに実行させるための1組の命令を任意の言語、コード、または表記で表した任意の表現を含むことができる。
【0022】
一般に、本発明の一態様の一実施形態に関連して本明細書に複数の特徴が記載されているが、これに対応する特徴は本発明の他の態様の諸実施形態で提供することができる。
【0023】
次に、添付図面に関連して、一例として、本発明の好ましい諸実施形態について説明する。
【図面の簡単な説明】
【0024】
【図1】本発明を実施する相変化メモリ・デバイスの概略ブロック図である。
【図2】図1のデバイスの読み取り/書き込み装置のより詳細な図である。
【図3】本発明を実施する第1のプログラミング方法で使用される4つのプログラミング・パルス波形を示す図である。
【図4】図3の波形に対応する4つのプログラミング軌道を示す図である。
【図5】PCMセルに関する3つの基本的なセル・プログラミング・メカニズムの1つを示す図である。
【図6】PCMセルに関する3つの基本的なセル・プログラミング・メカニズムの1つを示す図である。
【図7】PCMセルに関する3つの基本的なセル・プログラミング・メカニズムの1つを示す図である。
【図8】図4のプログラミング軌道に関するセル・プログラミング・メカニズムの変動を示す図である。
【図9】図1のデバイスにおける反復プログラミング動作の諸ステップを示す図である。
【図10】本発明を実施する第2のプログラミング方法におけるアクセス・デバイス信号の変動によって発生されたプログラミング・パルス波形を示す図である。
【図11】第2の実施形態において異なるプログラミング・パルス波形に対応する4つのプログラミング軌道を示す図である。
【発明を実施するための形態】
【0025】
図1は、本発明を実施する相変化メモリ・デバイスの簡略図である。デバイス1は、複数のマルチレベルPCMセルからなる1つまたは複数の統合アレイにデータを保管するための相変化メモリ2を含む。同図には単一ブロックとして示されているが、一般に、メモリ2は、たとえば、単一チップまたはダイから、それぞれがストレージ・チップの複数パッケージを含む複数のストレージ・バンクに及ぶ、任意の所望の構成のPCMストレージ・ユニットを含むことができる。メモリ2に対するデータの読み取りおよび書き込みは読み取り/書き込み装置3によって実行される。装置3は、データ書き込み動作中にPCMセルをプログラミングし、読み取り動作中にセル状態(レベル検出)を検出するための回路を含む。これらの動作中に、読み取り/書き込み装置3は、メモリ・アンサンブル2内のワード線およびビット線のアレイに適切な制御信号を印加することにより、個々のPCMセルに対処することができる。このプロセスは、以下に詳述するものを除き、一般的に知られている方法で実行される。同図にはブロック4によって示されているように、デバイス1に入力されたユーザ・データは、典型的に、書き込みデータとして装置3に供給される前に、エラー訂正のためのコーディングなど、何らかの形の書き込み処理が行われる。同様に、装置3によって出力されたリードバック・データは、一般に、コードワード検出およびエラー訂正動作を実行して元の入力ユーザ・データを回復する読み取り処理モジュール5によって処理される。モジュール4および5によるこのような処理は、説明すべきプログラミング・システムとは無関係であり、本明細書でこれ以上論ずる必要はない。
【0026】
図2は、読み取り/書き込み装置3の主なコンポーネントを示すブロック図である。この回路は、セル上での読み取り/書き込み動作のために、関連のアクセス・デバイス11により、ビット線BLおよびワード線WLを介して、特定のPCMセル10に接続された状態で示されている。この例のアクセス・デバイス11は、そのゲートがワード線WLに接続されているFETである。装置3は、一般化した形で12に示されている制御信号発生器と、読み取り測定回路13と、コントローラ14とを含む。信号発生器12は、セル上で読み取り/書き込み動作を実行するためにセル・ビット線およびワード線を介して供給される制御信号を発生する。図示の一般化した形では、信号発生器12はBL信号発生器15とWL信号発生器16とを含む。BL信号発生器15は、動作時にセル・ビット線BLに供給されるビット線電圧信号VBLを発生する。WL信号発生器16は、動作時にセル・ワード線WLに供給されるワード線電圧信号VWLを発生する。読み取り測定回路13は、セルを通って流れる電流を測定するために読み取り動作中にセル10の両端に接続される。測定されたセル電流Ireadはコントローラ14に供給される。コントローラ14は装置3の動作を制御し、一般に、以下に詳述するセル・プログラミング方法を実現するための機能ならびに読み取り回路13からの測定値Ireadに基づく読み取り制御およびレベル検出のための機能を取り入れている。信号発生器12および読み取り回路13は、上記の機能を実行するために、任意の所望の方法で、好ましくは、ハードワイヤード論理回路を使用して、実現することができる。コントローラ14の機能は、一般に、ハードウェアまたはソフトウェアあるいはその組み合わせで実現することができる。適切な実現例は、本明細書の説明から当業者には明らかになるであろう。一例として、コントローラ14のプログラミング制御機能は、上記の機能を実行するためのソフトウェアによって構成されたプロセッサによって実現することができ、適切なソフトウェアは本明細書の説明から明らかになるであろう。
【0027】
デバイス1における書き込み動作は、そのs>2通りのプログラム可能セル状態のうちの1つにマルチレベル・セルをプログラミングすることを伴う。読み取り動作は、これらの状態またはレベルのうちのどれにセルが設定されているかを検出することを伴う。マルチレベル動作について定義された特定のプログラム可能セル状態は、読み取り検出に使用されるセル状態メトリックの所定の基準値または値の範囲によって定義することができる。所与のプログラミング動作では、プログラミングすべきセル状態、すなわち、ターゲット・セル状態は、測定セル状態メトリックが定義された範囲内で、たとえば、適切な基準値の定義されたしきい値の範囲内で、任意の値を有する状態として定義することができる。説明すべき例では、名目上それぞれのセル状態を表す4つの基準抵抗値の集合によって定義されるs=4通りのプログラム可能セル状態が存在する。特定のプログラム可能セル状態は、測定されたセル抵抗がその状態に関する基準抵抗値の所定のしきい値の範囲内である場合、プログラミング中に達成されたものと思われるかまたはリードバック時に検出されるものと思われる。
【0028】
デバイス1の読み取り動作および書き込み動作中に、コントローラ14は、当該動作のために印加すべき適切な制御信号VBLおよびVWLを発生するように信号発生器12を制御する。読み取り動作の場合、コントローラ14は、それぞれセル・ビット線およびワード線に定振幅読み取り電圧パルスを供給するようにBLおよびWL信号発生器15および16を制御する。BL読み取りパルスは、セル状態の変化が発生する可能性のある、しきい切り替え電圧未満の振幅を有する。次に、コントローラ14により、結果のセル電流Ireadから求められるセルの抵抗を上記の基準レベルと比較して、4通りのプログラム可能セル状態のうちのどれにセルが設定されているかを判断する。書き込み動作では、コントローラ14は、信号発生器12の制御を介して、適切な制御信号VBLおよびVWLを印加して、反復プログラミング動作において一連のプログラミング・パルスを発生する。それぞれのプログラミング・パルスは、コントローラ14で事前設定される固定パルス幅を有する。それぞれのプログラミング・パルス後に、上記の読み取り動作用としてセル抵抗が測定される。その後、測定セル状態に基づいて次のプログラミング・パルスの適切な形が決定され、それに応じてこのパルス用の制御信号が発生される。
【0029】
説明すべき反復プログラミング方式では、プログラミング・パルスの整形を介して実現される複数のプログラミング軌道を活用する。特に、コントローラ14は、プログラミング・パルス・ウィンドウ中に制御信号VBLおよびVWLのうちの少なくとも1つを変更するように信号発生器12を制御し、それにより結果のプログラミング・パルスを整形する。一般に、ビット線信号の変動によってセルの両端の電圧を変更し、ワード線信号VWLの変動によってセル電流を変更する。説明すべき第1の実施形態では、VWLはプログラミング・パルス中に一定に保持され、VBLを変更することによってパルス整形が実行される。特に、コントローラ14の制御下で、プログラミング・パルス・ウィンドウ中にセルにアクセスするためにWLパルス発生器16によって定振幅パルスが出力される。BL信号発生器15からの信号VBLは、電圧モード・プログラミングのためにビット線において整形された電圧パルスを発生するためにプログラム・ウィンドウにおいて変更される。したがって、VBLパルスは、事実上、第1の実施形態においてプログラミング・パルスになる。反復プログラミング動作のために一続きの固定幅プログラミング・パルスが発生され、それぞれのパルスはパルス幅におけるVBL信号レベルの変動によって整形される。このパルス整形は、プログラミングすべき特定のセル状態に依存し、それぞれがそれぞれのプログラミング軌道に対応する複数のプログラミング・パルス波形を発生する。この例では、4つの対応する波形を有する4通りのプログラミング軌道が存在する。
【0030】
図3は、この実施形態においてA〜Dと表示されている4つの基本プログラミング・パルス波形の概略図である。それぞれの波形は、振幅V1の第1の部分と、振幅V2の第2の部分とを有し、V1は一般にV2より大きい。波形が異なる場合、これらの第1および第2の部分の相対持続時間は異なっている。特に、第1の部分は幅W1のものであり、第2の部分は幅W2のものであり、W1:W2の比率は、一般に図示の通り、4つの波形において増加する。しかし、それぞれの場合に、波形の第2の部分の振幅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
A: W1=300nsおよびW2=20ns
【0031】
マルチレベル動作について定義された4つのプログラム可能セル状態は、図4に「レベル0」〜「レベル3」と表示された水平帯域によって示されている。各レベルは、そのレベルに関する基準抵抗値の定義されたしきい値の範囲内の測定セル状態を含む。軌道TDはレベル0のみの測定セル状態を含み、軌道TCはレベル0および1の測定セル状態を含み、軌道TBはレベル0〜2の測定セル状態を含み、軌道TAは4つのレベルすべての測定セル状態を含むことに留意されたい。反復プログラミング動作の場合、それぞれのプログラム可能レベルは、名目上、そのレベルを含む特定の軌道に割り振ることができる。以下に詳述するように、このような割り振りを使用して、反復プロセスに関する初期パラメータを選択することができる。一般に、レベルの数ならびに軌道の特定の形および分布次第で、それぞれの軌道に対して1つまたは複数のレベルを割り振ることができる。この例では、レベル0、1、2、および3が、名目上、軌道TD、TC、TB、およびTAにそれぞれ割り振られるものと想定している。一般にプログラミング軌道の右側傾斜を使用してプログラミングを実行する場合、濃い色つきの帯域および水平矢印は、公称レベル割り振りに基づいて各レベルに関する公称プログラミング電圧ウィンドウ(V2値の範囲)を示す。このため、特定のターゲット・セル状態および公称レベル割り振りに基づいて、特定のプログラミング・パルス波形を選択することができる。次に、この波形の振幅V2を調整して、軌道上の所望のポイントまで進行し、ターゲット・セル状態を達成することができる。
【0032】
マルチ軌道プログラミングに備えるだけでなく、異なるプログラミング・パルス波形A〜Dにより、異なる基本的なセル・プログラミング・メカニズムをプログラミング動作時に活用することができる。詳細には、これらの波形は、静的電力依存、融解動力学、および結晶化力学など、PCMに固有の特性の組み合わせを活用する。これらの特性またはメトリックは、プログラミング・プロセス中に種々のメカニズムを調整する。図5〜図7は、種々のプログラミング・メトリックに対するセル状態の依存関係を示している。図5は、固定幅および可変振幅の矩形プログラミング・パルスとして印加された電圧に対する測定セル状態のグラフを介して静的電力依存を示している。同図に矢印で示されているように静的電力を増加するにつれて、セル温度が上昇し、その結果、アモルファス・サイズが増加し、このため、セル抵抗が大きくなる。図6は、セル状態に対する融解動力学の影響を示している。これは、静的電力が異なる値のときにプログラミング・パルス幅につれてセル状態が変動することを示している。パルス幅の増加に対応して、特定の融解温度が維持される時間が長くなるほど、結果のアモルファス・サイズが大きくなり、このため、セル抵抗も大きくなる。図7は、セル状態に対する結晶化力学の影響を示している。これは、静的電力が異なる値のときにプログラミング・パルスの立ち下がりの持続時間につれてセル状態が変動することを示している。立ち下がりの長さの増加に対応して、結晶化温度が維持される時間が長くなるほど、結果のアモルファス・サイズが小さくなり、このため、セル抵抗も小さくなる。
【0033】
図3のプログラミング・パルス波形は、複数のプログラミング・ノブとして上記の基本的なメトリックを効果的に活用する。独特に整形されたパルス波形はこれらのノブと種々の重み付けを結合し、上記のように異なるプログラミング軌道を発生するために異なるパルス波形が使用される。図8の矢印は、図4のプログラミン軌道TA〜TDに対する3つの基本的なプログラミング・メトリックの変動を示している。矢印Iは、入力電力が高くなり、このため、アモルファス・サイズが大きくなることを示している。これは、プログラミング・パルス波形の第1の部分の幅W1の増加ならびに第2の部分の振幅V2の増加に続くものである。矢印IIは、融解相の持続時間が長くなり、その結果、アモルファス・サイズが増加することを示しており、これは幅W1の増加に対応するものである。矢印IIIは、結晶化温度での持続時間が長くなり、結晶化が良好になることを示し、プログラミング・パルス波形の第2の部分の幅W2の増加に対応する。
【0034】
この実施形態の反復プログラミング動作を通過するたびに、コントローラ14は、プログラミング・ウィンドウにおける制御信号VBLの適切な変動により、第2の波形部分について振幅V2を選択し、プログラミング・パルス波形A〜Dのうちの選択された1つを発生するようにBL信号発生器15を制御する。コントローラ14からの選択信号SW,V2は、4つの波形のうちのどれを発生すべきかと、V2の適切な値を示す。反復プログラミング動作の基本ステップは図9の流れ図に示されている。動作が始まると、コントローラ14は、まず、初期プログラミング・パルスに使用すべき特定の波形およびV2値を選択する。ステップ20に示されている、これらの初期パラメータの選択は、ターゲット・セル状態を含む軌道および適切なプログラミング・ウィンドウ内のV2値を選択する際の「最良推量(best guess)」を伴う。この選択は、その動作に関するターゲット・セル状態、異なる波形に関するプログラミング軌道、および図4に関連して論じた公称レベル割り振りに基づくものである。特に、所与のターゲット・レベル0、1、2、または3の場合、名目上そのレベルに割り振られた軌道に対応する波形が選択される。次に、その軌道用の(推定)プログラミング・ウィンドウ内で初期V2値が選択される。
【0035】
図9のステップ21および22は基本的な書き込み検証(WAV)プロセスを表している。ステップ21では、BL信号発生器16は、選択信号SW,V2に応じて整形されたプログラミング・パルスVBLを発生する。WL信号発生器16は定振幅パルスVWLを発生する。プログラミング・パルスの印加後、ステップ22で現行セル状態が検出される。特に、第1のプログラミング・パルスに続く読み取り測定サイクルでは、読み取り回路13からの測定セル電流Ireadに基づいてセルの抵抗がコントローラ14によって検出される。ステップ23では、コントローラ14は、当該レベルに関する基準抵抗値からの測定セル抵抗の偏差ΔRとして、検出されたセル状態とターゲット・セル状態との差を求める。(この場合、ΔRは測定セル電流Ireadとターゲット・セル状態に対応する基準電流値との差によって表すことができることに留意されたい。他の実施形態では、所与のセル電流ならびに電圧差として求められた検出されたセル状態とターゲット・セル状態との差について、セルの両端の電圧を測定することができる。)次に、判断ステップ24で、差ΔRが所定のしきい値と比較され、ターゲット・セル状態が達成されているかどうかを判断する。達成されている場合、プログラミングは成功しており、プロセスは終了する。達成されていない場合、動作は判断ステップ25に移行する。この場合、コントローラ14は、選択されたプログラミング軌道が現行動作のために正しいものであるかどうか、すなわち、ターゲット・セル状態にアクセスするために正しい(または最良の)軌道が選択されているかどうかを判断する。PCMセル特性の変動により、軌道およびプログラミング・ウィンドウは時間が変化し、セルごとに様々になる。このため、ステップ20で初めに選択された軌道は常に正しいかまたは最適なものではない可能性がある。たとえば、ステップ25の判断は、抵抗エラーのサイズΔRあるいは待ち時間またはその両方、たとえば、プログラミング動作の所定数の反復が実行されたが成功しなかったかどうかに基づくことができる。特に、現行軌道が正しくないという判断は、最小数の反復が実行されたが成功しなかったときまで、実際には行われない可能性がある。ステップ25でその軌道が正しくないと思われる場合、ステップ26でコントローラは、それに対応する軌道が結果的に成功する可能性が次に高いものとして、他のプログラミング・パルス波形を選択する。図4の軌道では、より低い抵抗値をサポートする次の軌道が選択される。すなわち、この場合、TD、TC、TB、TAというシーケンス内の次の軌道に選択が進行するであろう。(他の実施形態では、たとえば、軌道が低い電圧で収束し、高い電圧で発散する場合、この選択は、抵抗の減少とは対照的に、抵抗の増加の順に行うことができる。)ステップ26で新しい軌道、このため、波形が選択される場合、変更されたプログラミング・パルス波形に基づいてもう一度、WAVプロセスを通過するために、動作はステップ21に戻る。
【0036】
ステップ25に戻り、現行軌道およびプログラミング波形が正しいものであると思われる場合、動作はステップ27に移行する。この場合、コントローラ14は、抵抗エラーΔRに(おそらく、望ましい場合は待ち時間にも)基づいてパルス振幅V2を調整し、現行軌道内でターゲット・セル状態のより近くに移動する。次に、変更されたプログラミング・パルス波形で新たにWAVプロセスを通過するために、動作はステップ21に戻る。
【0037】
上記のプロセスは、ステップ24でターゲット・セル状態が達成されるまで(または、望ましい場合に、最大数の反復が実行されるまで)反復する。連続反復により、各パルス後に検出されたセル状態に基づいてプログラミング・パルス波形が連続的に変更され、その結果、実際のセル状態は所望のターゲット状態に収束する。
【0038】
複数の軌道を実現するために独特に整形されたプログラミング・パルス波形を使用することにより、上記のプロセスはPCMに関する非常に効率的なマルチ軌道プログラミング・システムを提供する。このシステムは、反復プログラミングのために優れたものであり、固定プログラミング・パルス持続時間でレベルあたりのプログラミング電圧ウィンドウの増加ならびに賢明なレベル割り振り(軌道選択)をもたらす。また、パルス整形により、並外れて効率的な動作のために種々の基本的なプログラミング・メトリックを効果的に活用することができる。この改善策により、反復アルゴリズム制約(たとえば、電圧分解能、反復数)を緩和することができる。その上、プログラミング制御のために単一制御ノブ(上記のVBL)のみを使用してマルチ軌道プログラミングを達成することができ、FETアクセス・デバイスを使用するかどうかにかかわらず、多種多様なセルおよびアレイ・アーキテクチャでの適用が可能になる。
【0039】
図4はプログラミングに右プログラミング傾斜を使用することを示しているが、それぞれの軌道の両方の傾斜は上記のシステムにより融解状の傾斜であることに留意されたい。これは、両方の傾斜を使用して双方向プログラミングを実行できることを意味する。プログラミングのために両方の傾斜が使用可能であることは、様々なレベルについてプログラミング電圧ウィンドウのさらなる拡張をもたらす。
【0040】
プログラミング・システムの第2の実施形態では、VBLの代わりにVWLを変更することにより、パルス整形が実行される。この実施形態では、プログラミング・パルス・ウィンドウ中にセルにバイアスをかけるためにBLパルス発生器15によって定振幅パルスVBLが出力される。WL信号発生器16からの信号VWLをプログラミング・ウィンドウにおいて変更し、電流モード・プログラミングのためにFET11のゲートで整形済みWLパルスを発生する。したがって、VWLパルスは、この場合、実質上、プログラミング・パルスになる。プログラミング動作は、他の点では第1の実施形態と同様であり、複数の軌道を実現するために異なる軌道に対応する異なるプログラミング・パルス波形が発生される。図10は、この場合、振幅VG1の第1の部分と振幅VG2の第2の部分を有し、VG1の方が一般にVG2より大きい、模範的な波形を示している。振幅VG2は対応するプログラミング軌道を実現するために段階的に調整可能である。異なる幅比率W1:W2を有するその他の同様の波形を使用して、他の軌道を発生することができる。TE〜THと表示されている4つのこのような軌道の一例は図11に示されている。これは、以下のように部分幅を有する図10の波形についてVG2に対する測定セル抵抗の対数をグラフ化している。
TE: W1=50nsおよびW2=450ns
TF: W1=300nsおよびW2=200ns
TG: W1=350nsおよびW2=150ns
TH: W1=400nsおよびW2=100ns
「レベル0」〜「レベル3」と表示された水平帯域は4レベル・セル動作について定義された4つのプログラム可能状態を示しており、濃い色つきの帯域および水平矢印は、この例の公称レベル割り振りおよびプログラミング・ウィンドウを示している。上述の通り、反復プログラミングは両方のプログラミング傾斜上に実現できるので、この例ではプログラミングに両方の傾斜(完全U曲線)を使用する。同図に示されているように、公称プログラミング・ウィンドウはそれに応じて拡大される。
【0041】
上記の模範的な諸実施形態に対し多くの変更および修正を行うことができる。当然のことながら、プログラミング・システムは、s=4通り以外のプログラム可能状態ならびに異なる数のプログラミング波形/軌道を使用することができる。並外れて効率的なパルス整形方式について説明してきたが、複数の軌道を実現するために他の形のプログラミング・パルス波形も想定することができる。他の2部分波形では、1つまたは両方の部分の振幅が一定ではない可能性がある。第2の部分は、たとえば、下向きに傾斜したプロファイルを有する可能性がある。所与の波形の場合、プログラミング軌道を実現するために第2の部分の振幅以外の属性を変更できるであろう。この場合の一例は、たとえば、この部分の傾斜を調整することにより第2の波形部分の持続時間を変更することになるであろう(ただし、その場合、固定パルス幅の恩恵は失われる可能性がある)。他のメモリ・アーキテクチャでは他のアクセス・デバイスが提供される場合もあれば、いかなるアクセス・デバイスも提供されない場合もある。上記のようにVBLおよびVWLのうちの一方を変更することによってパルス整形が実行される場合、もう一方の信号パルス(それぞれVWLまたはVBL)の定振幅は、望ましい場合、異なる軌道について異なるものにすることができる。また、マルチ軌道動作のためのパルス整形を実施するために、プログラミング・ウィンドウ中に2つ以上の制御信号が変更される実施形態も想定することができる。上記の諸実施形態の変更例では、たとえば、VWLとVBLの両方を変更できるであろう。また、一般に反復プログラミングが好ましいが、上記の原理は単一パルス・プログラミングに適用することもできる。この場合、プログラミング・コントローラは単純に、それに対応する軌道がターゲット状態を含む特定の波形を選択し、その軌道上で所望の位置、このため、ターゲット状態を達成するように可変属性(たとえば、上記のV2またはVG2)を設定することになる。
【0042】
本発明の範囲を逸脱せずに上記の模範的な諸実施形態に対し多くの他の変更および修正を行うことができることが認識されるであろう。
【符号の説明】
【0043】
1 相変化メモリ・デバイス
2 相変化メモリ
3 読み取り/書き込み装置
4 書き込み処理モジュール
5 読み取り処理モジュール
【特許請求の範囲】
【請求項1】
s>2通りのプログラム可能セル状態を有する相変化メモリ・セル(10)をプログラミングするための方法であって、前記方法が、
少なくとも1つの制御信号(VBL、VWL)を印加して、前記セル(10)をプログラミングするためのプログラミング・パルスを発生することと、
前記プログラミング・パルス中に少なくとも1つの前記制御信号(VBL、VWL)を変更して、プログラミングすべき前記セル状態に依存して前記プログラミング・パルスを整形し、前記セル状態をプログラミングするためのそれぞれのプログラミング軌道(TA、TB、TC、TD)に対応する複数のプログラミング・パルス波形のうちの選択された1つを発生すること
を含み、
前記選択されたプログラミング・パルス波形が、プログラミングすべき前記セル状態を含むプログラミング軌道に対応する、方法。
【請求項2】
単一の前記制御信号(VBL、VWL)を変更して、前記プログラミング・パルスを整形することを含む、請求項1記載の方法。
【請求項3】
前記少なくとも1つの制御信号が、前記セルに印加されたバイアス電圧信号(VBL)を含む、請求項1または請求項2記載の方法。
【請求項4】
前記バイアス電圧信号(VBL)を変更して、前記プログラミング・パルスを整形することを含む、請求項3記載の方法。
【請求項5】
前記セル(10)が、アクセス・デバイス(11)に印加されたアクセス・デバイス信号(VWL)に依存してセル電流を制御するために前記アクセス・デバイスに接続され、
前記少なくとも1つの制御信号が前記アクセス・デバイス信号(VWL)を含む、請求項1ないし4のいずれかに記載の方法。
【請求項6】
前記アクセス・デバイス信号(VWL)を変更して、前記プログラミング・パルスを整形することを含む、請求項5記載の方法。
【請求項7】
前記プログラミング・パルス波形を選択することと、
前記プログラミング・パルス中に少なくとも1つの前記制御信号(VBL、VWL)を変更することにより、前記選択された波形を有する前記プログラミング・パルスを発生することと、
前記プログラミング・パルス後に前記セル状態を検出することと、
前記検出されたセル状態に依存して、変更されたパルス波形を有するプログラミング・パルスを反復して発生し、事前定義プログラミング基準を満足するまで、もう一度、前記セル状態を検出すること
を含む、請求項1ないし6のいずれかに記載の方法。
【請求項8】
前記プログラミング・パルスが事前定義パルス幅を有する、請求項1ないし7のいずれかに記載の方法。
【請求項9】
前記プログラミング・パルス波形のうちの少なくともいくつかがいずれも、第1および第2の部分を含み、前記第1の部分が一般に前記第2の部分より大きい振幅のものであり、波形が異なる場合、前記第1および第2の部分の相対持続時間が異なっている、請求項1ないし8のいずれかに記載の方法。
【請求項10】
各波形の前記第2の部分の属性が、プログラミングすべき前記セル状態に依存して変動可能である、請求項9記載の方法。
【請求項11】
各波形の前記第1の部分が第1の定振幅を有し、各波形の前記第2の部分が第2の定振幅を有する、請求項9または請求項10記載の方法。
【請求項12】
各波形の前記第2の部分の前記振幅が、プログラミングすべき前記セル状態に依存して変動可能である、請求項11記載の方法。
【請求項13】
請求項1ないし12のいずれかに記載の方法をコンピュータに実行させるためのプログラム・コードを含む、コンピュータ・プログラム。
【請求項14】
s>2通りのプログラム可能セル状態を有する相変化メモリ・セル(10)をプログラミングするための装置(3)であって、前記装置が、
少なくとも1つの制御信号(VBL、VWL)を供給して、前記セル(10)をプログラミングするためのプログラミング・パルスを発生するための信号発生器(12)と、
前記プログラミング・パルス中に少なくとも1つの前記制御信号(VBL、VWL)を変更して、プログラミングすべき前記セル状態に依存して前記プログラミング・パルスを整形し、前記セル状態をプログラミングするためのそれぞれのプログラミング軌道(TA、TB、TC、TD)に対応する複数のプログラミング・パルス波形のうちの選択された1つを発生するように前記信号発生器(12)を制御するためのコントローラ(14)とを含み、前記選択されたプログラミング・パルス波形が、プログラミングすべき前記セル状態を含むプログラミング軌道に対応する、装置。
【請求項15】
s>2通りのプログラム可能セル状態を有する複数の相変化メモリ・セル(10)を含むメモリ(2)と、
前記相変化メモリ・セル内のデータを読み取り、書き込むための読み取り/書き込み装置(3)とを含み、前記読み取り/書き込み装置が前記メモリ・セル(10)をプログラミングするために請求項14記載の装置を含む、相変化メモリ・デバイス(1)。
【請求項1】
s>2通りのプログラム可能セル状態を有する相変化メモリ・セル(10)をプログラミングするための方法であって、前記方法が、
少なくとも1つの制御信号(VBL、VWL)を印加して、前記セル(10)をプログラミングするためのプログラミング・パルスを発生することと、
前記プログラミング・パルス中に少なくとも1つの前記制御信号(VBL、VWL)を変更して、プログラミングすべき前記セル状態に依存して前記プログラミング・パルスを整形し、前記セル状態をプログラミングするためのそれぞれのプログラミング軌道(TA、TB、TC、TD)に対応する複数のプログラミング・パルス波形のうちの選択された1つを発生すること
を含み、
前記選択されたプログラミング・パルス波形が、プログラミングすべき前記セル状態を含むプログラミング軌道に対応する、方法。
【請求項2】
単一の前記制御信号(VBL、VWL)を変更して、前記プログラミング・パルスを整形することを含む、請求項1記載の方法。
【請求項3】
前記少なくとも1つの制御信号が、前記セルに印加されたバイアス電圧信号(VBL)を含む、請求項1または請求項2記載の方法。
【請求項4】
前記バイアス電圧信号(VBL)を変更して、前記プログラミング・パルスを整形することを含む、請求項3記載の方法。
【請求項5】
前記セル(10)が、アクセス・デバイス(11)に印加されたアクセス・デバイス信号(VWL)に依存してセル電流を制御するために前記アクセス・デバイスに接続され、
前記少なくとも1つの制御信号が前記アクセス・デバイス信号(VWL)を含む、請求項1ないし4のいずれかに記載の方法。
【請求項6】
前記アクセス・デバイス信号(VWL)を変更して、前記プログラミング・パルスを整形することを含む、請求項5記載の方法。
【請求項7】
前記プログラミング・パルス波形を選択することと、
前記プログラミング・パルス中に少なくとも1つの前記制御信号(VBL、VWL)を変更することにより、前記選択された波形を有する前記プログラミング・パルスを発生することと、
前記プログラミング・パルス後に前記セル状態を検出することと、
前記検出されたセル状態に依存して、変更されたパルス波形を有するプログラミング・パルスを反復して発生し、事前定義プログラミング基準を満足するまで、もう一度、前記セル状態を検出すること
を含む、請求項1ないし6のいずれかに記載の方法。
【請求項8】
前記プログラミング・パルスが事前定義パルス幅を有する、請求項1ないし7のいずれかに記載の方法。
【請求項9】
前記プログラミング・パルス波形のうちの少なくともいくつかがいずれも、第1および第2の部分を含み、前記第1の部分が一般に前記第2の部分より大きい振幅のものであり、波形が異なる場合、前記第1および第2の部分の相対持続時間が異なっている、請求項1ないし8のいずれかに記載の方法。
【請求項10】
各波形の前記第2の部分の属性が、プログラミングすべき前記セル状態に依存して変動可能である、請求項9記載の方法。
【請求項11】
各波形の前記第1の部分が第1の定振幅を有し、各波形の前記第2の部分が第2の定振幅を有する、請求項9または請求項10記載の方法。
【請求項12】
各波形の前記第2の部分の前記振幅が、プログラミングすべき前記セル状態に依存して変動可能である、請求項11記載の方法。
【請求項13】
請求項1ないし12のいずれかに記載の方法をコンピュータに実行させるためのプログラム・コードを含む、コンピュータ・プログラム。
【請求項14】
s>2通りのプログラム可能セル状態を有する相変化メモリ・セル(10)をプログラミングするための装置(3)であって、前記装置が、
少なくとも1つの制御信号(VBL、VWL)を供給して、前記セル(10)をプログラミングするためのプログラミング・パルスを発生するための信号発生器(12)と、
前記プログラミング・パルス中に少なくとも1つの前記制御信号(VBL、VWL)を変更して、プログラミングすべき前記セル状態に依存して前記プログラミング・パルスを整形し、前記セル状態をプログラミングするためのそれぞれのプログラミング軌道(TA、TB、TC、TD)に対応する複数のプログラミング・パルス波形のうちの選択された1つを発生するように前記信号発生器(12)を制御するためのコントローラ(14)とを含み、前記選択されたプログラミング・パルス波形が、プログラミングすべき前記セル状態を含むプログラミング軌道に対応する、装置。
【請求項15】
s>2通りのプログラム可能セル状態を有する複数の相変化メモリ・セル(10)を含むメモリ(2)と、
前記相変化メモリ・セル内のデータを読み取り、書き込むための読み取り/書き込み装置(3)とを含み、前記読み取り/書き込み装置が前記メモリ・セル(10)をプログラミングするために請求項14記載の装置を含む、相変化メモリ・デバイス(1)。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【公開番号】特開2013−114737(P2013−114737A)
【公開日】平成25年6月10日(2013.6.10)
【国際特許分類】
【出願番号】特願2012−194327(P2012−194327)
【出願日】平成24年9月4日(2012.9.4)
【出願人】(390009531)インターナショナル・ビジネス・マシーンズ・コーポレーション (4,084)
【氏名又は名称原語表記】INTERNATIONAL BUSINESS MACHINES CORPORATION
【Fターム(参考)】
【公開日】平成25年6月10日(2013.6.10)
【国際特許分類】
【出願日】平成24年9月4日(2012.9.4)
【出願人】(390009531)インターナショナル・ビジネス・マシーンズ・コーポレーション (4,084)
【氏名又は名称原語表記】INTERNATIONAL BUSINESS MACHINES CORPORATION
【Fターム(参考)】
[ Back to top ]