(57)【要約】【課題】不揮発性記憶素子の書き込みのスループットの大幅な低下を引き起こさずに、書き込み終了からベリファイ読み出しまでのインターバルを確保する。【解決手段】情報を書き換えるストレスが印加され、印加後に書き換え後の期待値情報に特性が安定するまでの時間として第１の時間を有するセルと、複数のセルを時系列に連続して書き込む複数の第１のシーケンスと、連続した書き込み後、複数のセルを時系列に連続してベリファイする複数の第２のシーケンスと、複数の第１のシーケンスと複数の第２のシーケンスとが一つのセットとして時系列に連続して複数のセットを繰り返す時、複数のセルのそれぞれが第１のシーケンスによるストレス印加が終了してから、ストレス印加された複数のセルのそれぞれに対して第２のシーケンスが開始されるまでの時間を、複数のセットのすべてにおいてそれぞれ第１の時間以上とする。【選択図】図６
2011181134.tif 000002
【特許請求の範囲】
【請求項１】
情報を書き換えるストレスが印加され、前記印加後に書き換え後の期待値情報に特性が安定するまでの時間として第１の時間を有するセルと、
複数の前記セルを時系列に連続して書き込む複数の第１のシーケンスと、
前記連続した書き込み後、前記複数のセルを時系列に連続してベリファイする複数の第２のシーケンスと、
前記複数の第１のシーケンスと前記複数の第２のシーケンスとが一つのセットとして時系列に連続して複数の前記セットを繰り返す時、前記複数のセルのそれぞれが前記第１のシーケンスによるストレスの印加が終了してから、前記ストレス印加された複数のセルのそれぞれに対して前記第２のシーケンスが開始されるまでの時間を、前記複数のセットのすべてにおいてそれぞれ前記第１の時間以上とする、不揮発性半導体装置の制御方法。
【請求項２】
第１の数の前記複数のセルを一つの単位として一つのフェーズが定義され、
前記第２のシーケンスは、前記時系列に連続する第２の数の複数の前記フェーズで構成する、請求項１の不揮発性半導体装置の制御方法。
【請求項３】
すべての前記複数のセットに対応する複数の前記第２のシーケンスがそれぞれ含む前記第２の数の複数のフェーズは、互いに同一の数である、請求項２の不揮発性半導体装置の制御方法。
【請求項４】
前記すべての複数のセットに対応する複数の第２のシーケンスがそれぞれ含む前記時系列に連続する前記第２の数の複数のフェーズがそれぞれ示すアドレスの順序は、同一のアドレス順序である、請求項３の不揮発性半導体装置の制御方法。
【請求項５】
前記第１のシーケンスは、前記時系列に連続する前記第２の数の複数の前記フェーズで構成し、
すべての前記複数のセットに対応する複数の前記第１のシーケンスがそれぞれ含む前記第２の数の複数のフェーズは、互いに同一の数である、請求項３または４の不揮発性半導体装置の制御方法。
【請求項６】
前記すべての複数のセットに対応する複数の第１のシーケンスがそれぞれ含む前記時系列に連続する前記第２の数の複数のフェーズがそれぞれ示すアドレスの順序は、同一のアドレス順序である、請求項５の不揮発性半導体装置の制御方法。
【請求項７】
前の前記セットの前記ベリファイの結果によらず、前記前のセットの第１のシーケンスが含む前記第２の数の複数のフェーズと、次の前記セットの第１のシーケンスが含む前記第２の数の複数のフェーズは、互いに同一の数である請求項５または６の不揮発性半導体装置の制御方法。
【請求項８】
前記前のセットのベリファイの結果がパスであった前記フェーズに対応する前記次のセットの第１のシーケンスが含む前記フェーズをマスクし、関連する前記複数のセルに前記情報を書き換えるストレスを印加しない、請求項７の不揮発性半導体装置の制御方法。
【請求項９】
前の前記セットにおける前記第１のシーケンスは、前記時系列に連続する前記第２の数の複数の前記フェーズで構成し、
次の前記セットにおける前記第１のシーケンスは、前記前のセットのベリファイの結果によって、前記時系列に連続する前記第２の数よりも少ない第３の数の複数の前記フェーズで構成し、
前記次のセットにおける前記第２のシーケンスは、前記前のセットのベリファイの結果がパスであったによらず前記時系列に連続する前記第２の数の複数の前記フェーズで構成し、且つ、前記前のセットのベリファイがパスであった複数の前記フェーズを前記時系列に連続する複数のフェーズの前部に設定し、前記前のセットのベリファイがフェイルであり前記第３の数の複数のフェーズを前記時系列に連続する複数のフェーズの後部に設定する、請求項２の不揮発性半導体装置の制御方法。
【請求項１０】
前記次のセットの前記第２のシーケンスにおける前記前部の連続する複数のフェーズのうち最初に前記ベリファイされる前記フェーズのアドレスは、前記前のセットの第１のシーケンスに含まれる最後に書き込まれた前記フェーズのアドレスを基準に、前記第３の数の複数のフェーズが前記時系列に示すアドレスの遷移方向に沿ってカウントされたアドレスである、請求項９の不揮発性半導体装置の制御方法。
【請求項１１】
前記前部である連続する複数のフェーズがそれぞれ示す複数のアドレスは、前記カウントされたアドレスを基準に、前記遷移方向に沿って順次カウントされた複数のアドレスである、請求項１０の不揮発性半導体装置の制御方法。
【請求項１２】
前記順次カウントされた複数のアドレスから、前のセットのベリファイがフェイルであった前記第３の数の複数のフェーズが示す複数のアドレスを除外する、請求項１１の不揮発性半導体装置の制御方法。
【請求項１３】
前記後部である連続する複数のフェーズがそれぞれ示す複数のアドレスは、前記前のセットの第１のシーケンスに含まれる前記第３の数の複数のフェーズがそれぞれ示す複数のアドレスと同一であり、且つそれらアドレスの遷移方向も同一である、請求項１０の不揮発性半導体装置の制御方法。
【請求項１４】
前記ベリファイは、アンプを活性化して前記セルを読み出し、前記読み出したデータを期待値と比較するステップを含み、
前記前部の連続する複数のフェーズにおいて、前記アンプを非活性にし、前記比較結果によらずベリファイ結果をパスとする、請求項９乃至１２のいずれか一項の不揮発性半導体装置の制御方法。
【請求項１５】
更に、前記比較動作を非活性にし、ベリファイ結果をパスとする、請求項１３の不揮発性半導体装置の制御方法。
【請求項１６】
前記次のセットの前記第２のシーケンスにおける前記前部の連続する複数のフェーズのうち最初に前記ベリファイされる前記フェーズのアドレスは、前記アドレスを管理するカウンタの初期化アドレスである、請求項９の不揮発性半導体装置の制御方法。
【請求項１７】
前記前部である連続する複数のフェーズがそれぞれ示す複数のアドレスは、前記初期化アドレスを基準に、所定の遷移方向に沿って順次カウントされた複数のアドレスである、請求項１５の不揮発性半導体装置の制御方法。
【請求項１８】
前記順次カウントされた複数のアドレスから、前のセットのベリファイがフェイルであった前記第３の数の複数のフェーズが示す複数のアドレスを除外する、請求項１６の不揮発性半導体装置の制御方法。
【請求項１９】
前記後部である連続する複数のフェーズがそれぞれ示す複数のアドレスは、前記前のセットの第１のシーケンスに含まれる前記第３の数の複数のフェーズがそれぞれ示す複数のアドレスと同一であり、且つそれらアドレスの遷移方向も同一である、請求項１５の不揮発性半導体装置の制御方法。
【請求項２０】
前記ベリファイは、アンプを活性化して前記セルを読み出し、前記読み出したデータを期待値と比較するステップを含み、
前記前部の連続する複数のフェーズにおいて、前記アンプを非活性にし、前記比較結果によらずベリファイ結果をパスとする、請求項９、１５乃至１８のいずれか一項の不揮発性半導体装置の制御方法。
【請求項２１】
更に、前記比較動作を非活性にし、ベリファイ結果をパスとする、請求項１９の不揮発性半導体装置の制御方法。
【請求項２２】
前記第１の時間は、前記一つのセルに書き込むストレスの印加の時間よりも長い、請求項１乃至２０のいずれか一項の不揮発性半導体装置の制御方法。
【請求項２３】
前記第１の時間は、前記ストレスの印加の時間の１０倍以上の時間である、請求項１乃至２１のいずれか一項の不揮発性半導体装置の制御方法。
【請求項２４】
前記セルは、相変化によって情報を記憶する素子である、請求項１乃至２３のいずれか一項の記載の不揮発性半導体装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体装置の制御方法に関し、特に、相変化素子等の不揮発性素子を備えた半導体装置及び制御方法に関する。
【背景技術】
【０００２】
相変化メモリ（Ｐｈａｓｅ  Ｃｈａｎｇｅ  Ｍｅｍｏｒｙ）のセルに用いられる相変化素子（Ｐｈａｓｅ  Ｃｈａｎｇｅ  Ｅｌｅｍｅｎｔ：「ＰＣＥ」と略記される）は、カルコゲナイト（例えばＧｅ２Ｓｂ２Ｔｅ５）等の相変化材料からなり、書き込み時の電流、電圧およびそのパルス形状を制御することによって、抵抗値を任意に変化させることができる。一般的に２値記憶素子の場合、セルが高抵抗となる書き込みやその状態を「リセット」と呼び、データ「０」が割り当てられる。逆に、セルが低抵抗となる書き込みやその状態を「セット」と呼び、データ「１」が割り当てられる。ＰＣＥを例えば融点以上の温度に上げて比較的早い速度で冷却すると高抵抗のアモルファス（リセット状態）になる。また、ＰＣＥを例えば結晶化温度以上、融点温度以下の温度に比較的長い時間保持し比較的遅い速度で冷却すると低抵抗の結晶化状態（セット状態）になる。
【０００３】
ＰＣＥはセット状態とリセット状態の間の抵抗比が大きいため、他の抵抗変化型のメモリに比べデータを読み出しやすいというメリットがある。
【０００４】
しかしながら、ＰＣＥでは、リセットの書き込み直後から数１０ｎｓまでのセル抵抗値（過渡的な（ｔｒａｎｓｉｅｎｔ）抵抗値）は、それ以降の時間が経過した際のセル抵抗値（定常抵抗値）に比べ、極端に低くなってしまうという問題点が指摘されている（例えば非特許文献１参照）。なお、非特許文献１のＦｉｇｕｒｅ  ５には、リセットパルス後の最初の３０ｎｓで閾値ＶＴが約０．５Ｖから０．７Ｖに上昇した後飽和することが示されており、Ｆｉｇｕｒｅ  １０には、抵抗Ｒの測定結果とＶＴ−Ｒの相関等に基づく１００ｎｓ以下での外挿カーブが示されている。
【０００５】
このため、セルにデータを書き込んだ後、当該セルからデータを読み出しパス／フェイルを判定するベリファイ動作等において、セルへのデータ書き込み終了後から数１０ｎｓまでの比較的早いタイミングで同一セルから情報を読み出す場合、定常抵抗値よりも極めて低い過渡的抵抗値を読み出してしまう可能性がある。
【０００６】
またＰＣＥのデータ書き込みは電流印加によるジュール熱の発生によって行われるため、書き込み直後から数１０ｎｓの時間範囲では、ＰＣＥの温度は読み出し可能な範囲にまで十分に下がっていない可能性がある。これにより、セット状態、リセット状態共に書き込み直後の抵抗値が不安定になるという可能性がある。
【０００７】
先行技術文献サーチでサーチされた特許文献１には、相変化メモリセルからの読み出しデータを保持し及び外部から入力される書き込みデータをラッチするリードデータラッチと、書き込み開始までの所定サイクルの間メモリセルへの書き込みデータを保持するライトデータラッチと、リードデータラッチの出力のライトデータラッチへの転送の有無を制御する転送スイッチと、ライトデータラッチに保持されているデータとリードデータラッチのデータとが一致するか否か判定する比較回路と、比較回路の出力をラッチするライトフラグラッチを備え、書き込み要求が存在しており、比較回路の比較結果が不一致を示す場合にのみ書き込みが実行され、必要なビットにのみ書き込みが実行され、相変化メモリ等の比較的長い書き込み時間を隠蔽してランダムな書き込みを実現することができるようにした構成が開示されている。
【０００８】
また特許文献２には、プログラム動作要求に応答してＮ個の単位プログラムブロックを含む書き込みデータブロックをプログラムする段階と、読み出し動作要求に応答してＭ（ＭはＮより小さい）個の単位プログラムブロックをプログラムした後に、前記プログラム動作をサスペンドする段階と、前記要求された読み出し動作を行う段階と、前記書き込みデータブロックのプログラミングをレジュームし、（Ｎ−Ｍ）個の残りの単位プログラムブロックをプログラムする段階とを含む相変化メモリ装置の動作方法が開示されている。
【０００９】
さらに特許文献３には、短い動作サイクル時間で、相変化メモリの安定動作を可能とし、高集積な高速不揮発性メモリとして、ライトドライバＷＤ内にラッチを設け、相変化素子の高抵抗化は、カラムサイクル毎にライトイネーブル信号により行い、低抵抗化は、プリチャージコマンドが入力された後にプリチャージ信号を非活性化すると同時に行い、それにより、カラムサイクル時間を延ばすことなく、相変化抵抗を低抵抗化するメモリセルへの書き込み時間と、相変化抵抗を高抵抗化する書き込み動作から該メモリセルへの読み出し動作までの期間を長くすることができ、安定な書き込み動作を可能とした不揮発性メモリが開示されている。
【００１０】
そして特許文献４には、アドレス領域内のメモリセルに書き込み処理を実行し、複数アドレスのベリファイ動作を一括して行なう一括ベリファイ処理を実行し、一括ベリファイ処理と書き込み処理とを繰り返し、各アドレスに未書き込みメモリセルを含むか否かを検出する検出手段を備え、一括ベリファイ処理の少なくとも一部において１回以上前のベリファイ処理で未書き込みメモリセルを含まないと判定されたアドレスの少なくとも一部を除外して、ベリファイ処理を実行することで、一括ベリファイ処理の所要時間を短縮化し、バッファ書き込みを高速化できる半導体記憶装置が開示されている。しかしながら、特許文献１乃至４には、上記非特許文献１で指摘された問題点の認識、該問題点を解決するための手段はいっさい開示されていない。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特開２００８−１５９１７８号公報
【特許文献２】特開２００７−２５０１７１号公報
【特許文献３】特開２００５−１５８１９９号公報
【特許文献４】特開２００７−１８８５５２号公報
【非特許文献】
【００１２】
【非特許文献１】D.Ielmini, A.L.Lacaita, D. Mantegazza, F.Pellizzer, and A. Pirovano “Assessment of threshold switching dynamics in phase-change chalcogenide memories”, Electron Devices Meeting, 2005. IEDM Technical Digest. IEEE International Volume , Issue , 5-5 Dec. 2005   Page(s):877-880
【発明の概要】
【発明が解決しようとする課題】
【００１３】
以下に発明者による関連技術の分析を与える。
【００１４】
前述したように、セルの抵抗値の違いをデータ記憶に用いる相変化メモリでは、高抵抗書き込み時において、書き込み直後のセル抵抗値が一定時間経過後の抵抗値に対して極端に低くなることが指摘されている。このため、相変化メモリにおいて、セルデータの読み出しは、書き込み終了後、一定期間経過後に行うことが望ましい。
【００１５】
しかしながら、セルデータの読み出しを書き込み終了後一定期間経過後に行った場合、セルへのデータ書き込みとその後のセルデータの読み出しと判定を行うベリファイ動作の総時間の短縮を図ることは困難である（これについては比較例として後に詳述される）。
【課題を解決するための手段】
【００１６】
本発明は、上記課題の少なくとも１つの解決を図るため概略以下のような方法を提供する。本発明の１つの側面（アスペクト）によれば、不揮発性半導体装置は、情報を書き換えるストレスが印加され、印加後に書き換え後の期待値情報に特性が安定するまでの時間として第１の時間を有するセルと、複数のセルを時系列に連続して書き込む複数の第１のシーケンスと、連続した書き込み後、複数のセルを時系列に連続してベリファイする複数の第２のシーケンスと、複数の第１のシーケンスと複数の第２のシーケンスとが一つのセットとして時系列に連続して複数のセットを繰り返す時、複数のセルのそれぞれが第１のシーケンスによるストレス印加が終了してから、ストレス印加された複数のセルのそれぞれに対して第２のシーケンスが開始されるまでの時間を、複数のセットのすべてにおいてそれぞれ第１の時間以上とする、不揮発性半導体装置の制御方法が提供される。
【発明の効果】
【００１７】
本発明によれば、ストレス印加後に書き換え後の期待値情報に特性が安定するまでの時間として第１の時間を有するセルにおいても、ベリファイの精度の向上を図るとともに、書き込みシーケンスの総時間を短縮し、ベリファイに要する時間を短縮することができる。
【図面の簡単な説明】
【００１８】
【図１】本発明の半導体記憶装置の構成を示す図である。
【図２】図１のメモリアレイの構成を示す図である。
【図３】図１のメモリアレイの構成を示す図である。
【図４】比較例１の相変化メモリの書き込みシーケンスを説明する関連図である。
【図５】ベリファイ読み出し前にインターバルを設けた比較例２の書き込みシーケンスを説明する図である。
【図６】本発明の第１の実施形態の書き込みシーケンスを説明する図である。
【図７】本発明の第２の実施形態の書き込みシーケンスを説明する図である。
【図８】本発明の第３の実施形態の書き込みシーケンスを説明する図である。
【発明を実施するための形態】
【００１９】
本発明の課題を解決する技術思想（コンセプト）の代表的な一例は、以下に示される。但し、本願の請求内容はこの技術思想に限られず、本願の請求項に記載の内容であることは言うまでもない。
【００２０】
本発明によれば、記憶情報の書き換え後に期待値（書き込み元データ）との検証が必要なセル（図２の１０１−１）において、前記セルは、前記書き換えに伴うストレス印加後から第１の時間経過後に前記期待値への情報の遷移が完了するセルであり、複数の前記セルの書き換えを時系列的に順次行い、その後に前記順次書き換えられた複数のセルの順序でそれぞれ対応する複数の期待値と比較するベリファイを行うシーケンス制御を有し、よって、前記複数のセルのそれぞれのセルが、前記ストレス印加後からベリファイを行うまでの期間を、前記第１の時間よりも長くした、不揮発性半導体装置の制御方法が提供される。以下、添付図面を参照しながら、本発明の好ましい実施の形態について詳細に説明する。
【００２１】
本発明においては、コマンド入力からの一連のデータ書き込み動作の際、メモリセルへのデータ書き込みとベリファイ読み出しを複数回に時分割して（フェーズに分けて）行う不揮発性メモリを備えた半導体装置において、書き込み、読み出しシーケンスを工夫することにより、無動作期間を極力作ることなく、セルへの書き込み終了からベリファイ読み出しが開始されるまでの一定期間（前記第１の時間より長い）をそれぞれ複数のセルにおいて確保している。
【００２２】
ＰＣＥを用いたメモリにおいて、一連の書き込み動作にて例えば数Ｋｂｙｔｅ（キロバイト、１Ｋ＝１０２４、１ｂｙｔｅ＝８ビット））に及ぶ複数のデータを対応する複数のセル（１０２４×８の数倍個のセル）に書き込む場合、セルへのデータ書き込みを複数回に時分割することを示す複数フェーズ（時分割の１単位）に分けて行うことがある。すなわち、１フェーズ内では、当該フェーズに対応するビット数分の複数のセルにデータが同時に書き込まれる。これにより、同時に書き込むビット数を減らすことができ、一度に消費する電流量を緩和できる。
【００２３】
以下の実施形態にて、本発明が適用される装置構成、アレイ構成ならびに上記動作の詳細を示す。
【００２４】
図１は、本発明の一実施形態の半導体装置の構成例を示す図である。図１を参照すると、この半導体装置は、入力回路としてコマンド（チップイネーブル／ＣＥ、コマンドラッチイネーブルＣＬＥ、アドレスラッチイネーブルＡＬＥ、ライトイネーブル／ＷＥ、リードイネーブル／ＲＥ、／ＷＰ）が入力されるコマンドディテクタ１１１を備えている。
【００２５】
コマンドラッチイネーブルＣＬＥはコマンドをデバイス内部のコマンドレジスタ１１４への取り込みをコントロールするための信号であり、／ＷＥの立ち上がり、立下り時にＨｉｇｈレベルとすることによりＩ／Ｏ端子上のデータがコマンドとしてコマンドレジタ１１４に取り込まれる。
【００２６】
アドレスラッチイネーブルＡＬＥは、アドレス信号、データ信号をデバイス内部のアドレスレジスタ１１６、データレジスタ１０６への取り込みをコントロールするための信号であり、／ＷＥの立ち上がり、立下り時にＡＬＥをＨｉｇｈレベルとすることによりＩ／Ｏ端子上のデータがアドレスデータとしてアドレスレジスタ１１６に取り込まれ、またＡＬＥをＬｏｗレベルとすることによりＩ／Ｏ端子上のデータが入力データとしてデータレジスタ１０６に取り込まれる。
【００２７】
チップイネーブル／ＣＥはデバイス選択信号であり、例えばリード状態でＨｉｇｈとするとスタンバイモードとなる。ライトイネーブル／ＷＥは、ＩＯ端子からのデータをデバイス内部に取り込むための書き込み信号である。リードイネーブル／ＲＥはデータを出力（シリアル出力）させる信号である。Ｉ／Ｏ１〜８はアドレス、コマンド、データを入出力するポートである。ライトプロテクト／ＷＰは、書き込み、消去動作を禁止しデータを保護するための制御信号である。通常は／ＷＰ＝Ｈｉｇｈとし、電源投入遮断時等に、／ＷＰ＝Ｌｏｗとする。ＲＹ／ＢＹは、デバイスの内部状態を外部に通知する信号であり、オープンドレイン構成のｎＭＯＳトランジスタ１２１のドレイン出力とされる。プログラム・消去・リード動作時等の動作実行中、ｎＭＯＳトランジスタ１２１のゲートはＨｉｇｈ電位とされ、ターンオン（導通）し、ＲＹ／ＢＹ＝Ｌｏｗ（Ｂｕｓｙ）とされ、動作が完了すると、ｎＭＯＳトランジスタ１２１のゲートはＬｏｗ電位とされ、ＲＹ／ＢＹは電源電位にプルアップされ、ＲＹ／ＢＹ＝Ｈｉｇｈ（Ｒｅａｄｙ）とされる。
【００２８】
入出力回路として、コマンド、アドレス、データ（Ｉ／Ｏ：１〜８）が入出力されるＩ／Ｏコントロール１１２を備えている。
【００２９】
コマンドレジスタ１１４はＩ／Ｏコントロール１１２から出力された命令コマンド情報を制御ロジック１１３に入力する。
【００３０】
アドレスレジスタ１１６はＩ／Ｏコントロール１１２から出力されたアドレス情報を、Ｒｏｗ（ロウ）アドレスバッファ１１７およびＣｏｌｕｍｎアドレスバッファ１１８に入力する。なお、図１の半導体装置には、アドレス端子がないため、例えばアドレス信号（＞８ビット）は８ビット単位で複数サイクルに時分割して入力される。
【００３１】
制御ロジック１１３は、コマンドディテクタ１１１、コマンドレジスタ１１４からの出力を入力とし、各種制御信号をアレイ周辺の各回路に出力する。Ｒｏｗアドレスバッファ１１７はアドレスレジスタ１１６より出力されたＲｏｗアドレスをＲｏｗデコーダ１０２に出力する。Ｒｏｗデコーダ１０２は、Ｒｏｗアドレスに対応してメモリセルアレイ１０１内のワード線（不図示）を選択する。Ｃｏｌｕｍｎアドレスバッファ１１８は、Ｉ／Ｏコントロール１１２より出力されたＣｏｌｕｍｎスタートアドレスをカラムデコーダ１０７に出力する。
【００３２】
図１に示した半導体装置は、全Ｃｏｌｕｍｎアドレス数と同数のデータレジスタ１０６（例えば数Ｋｂｙｔｅの容量）を備えている。データレジスタ１０６には、メモリセルアレイ１０１と対応したＣｏｌｕｍｎアドレスが割り付けられている。１度の書き込み動作において、例えばＣｏｌｕｍｎスタートアドレスに０番地（原点）が選択され、全Ｃｏｌｕｍｎアドレス数に対応するデータ（ｂｙｔｅ単位）がシリアル入力された場合、データレジスタ１０６において、データの入力順に、Ｃｏｌｕｍｎアドレスの０番地から順次対応したデータがデータレジスタ１０６の該当番地に書き込まれる。
【００３３】
データレジスタ１０６に保持されたデータは、Ｉ／Ｏ１〜Ｉ／Ｏ８よりコントロール１１２に入力されるコマンド入力（書き込みコマンド）をトリガーとして、制御ロジック１１３の制御のもと、メモリセルアレイ１０１に書き込まれる。
【００３４】
一方、Ｃｏｌｕｍｎスタートアドレスに、原点以外のアドレスが入力された場合は、データレジスタ１０６に対して、データ入力順に、データレジスタ１０６内の当該Ｃｏｌｕｍｎスタートアドレスからアドレス順に、順次データの書き込みがなされる。この際、Ｃｏｌｕｍｎの最終アドレスに対応するデータまで、Ｉ／Ｏコントロール１１２にデータが入力されなかった場合は、データが入力された最後のＣｏｌｕｍｎアドレスまで書き込みを行う。その後、Ｉ／Ｏ１〜Ｉ／Ｏ８よりコントロール１１２に入力されるコマンド入力をトリガーとして、制御ロジック１１３の制御のもと、データレジスタ１０６に保持されたデータはメモリセルアレイに書き込まれる。
【００３５】
データレジスタ１０６に書き込まれたデータは、ライトアンプ１０４を介して対応するメモリセルアレイ１０６のＣｏｌｕｍｎアドレスのビット線に出力され、選択されたワード線と該ビット線の交点のセルにデータが書き込まれる。書き込みデータの値（０／１）に応じて、セルのＰＣＥは、高抵抗のリセット状態、又は低抵抗のセット状態に書き込まれる。
【００３６】
この際、書き込みデータは数ｋＢｙｔｅ（キロバイト）に及ぶため、データ書き込みを複数回に時分割して、すなわち、複数フェーズに分けて行う。時分割は、Ｃｏｌｕｍｎアドレスを複数に分割し、分割されたアドレス単位ごとに、メモリセルアレイ１０１への書き込みを行う。これにより、同時に書き込まれるセルの数を減らすことができる。
【００３７】
例えば、複数回に時分割して行う書き込みのうち最初に書き込むデータ群をフェーズ１（Ｐｈａｓｅ１）とし、順に、フェーズ２（Ｐｈａｓｅ２）、フェーズ３（Ｐｈａｓｅ３）、・・・と、時分割状態を割り当てる。この時分割制御は、Ｐｈａｓｅコントロール１１９で行う。Ｐｈａｓｅカウンタ１２０は、アクセス対象のフェーズを制御するためのカウンタであり、フェーズの値１からを順に繰り上げていく。例えばＣｏｌｕｍｎアドレスがＮ、１つのフェーズで同時に書き込むセル数（選択Ｃｏｌｕｍｎの本数）をＭとし、フェーズの個数をＫとすると、Ｎ＝Ｍ×Ｋの関係が成り立つ。よって、Ｐｈａｓｅカウンタ１２０は、コラムの上位アドレスに相当する。
【００３８】
メモリセルアレイ１０１からのデータ読み出し時においても、データ書き込みと同様にして、時分割制御を行う。
【００３９】
時分割制御は、Ｐｈａｓｅコントロール１１９によって、センスアンプ１０３、Ｃｏｌｕｍｎデコーダ１０７等の各回路を制御することによって行う。
【００４０】
セルデータの読み出し動作の場合、時分割に読み出した情報を、データレジスタ１０６に順次保存して行き、読み出しデータを全てデータレジスタ１０６に保存した後に、Ｉ／Ｏコントロール１１２から入力される出力コマンドをトリガーとして、制御ロジック１１３の制御のもと、Ｉ／Ｏコントロール１１２を介して、ＩＯ１〜ＩＯ８に読み出しデータを出力する。
【００４１】
なお、ステータスレジスタ１１５は、書き込みのパス、フェイル等のステータス情報が、制御ロジック１１３より設定され、このステータス情報は、書き込み動作の完了時等に、Ｉ／Ｏコントロール１１２からＩ／Ｏ１〜Ｉ／Ｏ８に出力される。
【００４２】
また、ＲＹ／ＢＹは、メモリセルアレイ１０１へのデータ書き込み期間およびメモリセルアレイ１０１からのデータ読み出し期間中、低インピーダンスとなり（ｎＭＯＳトランジスタ１２１は導通）、この間のコマンド入力は無効となる。動作完了後、オープンドレインのｎＭＯＳトランジスタ１２１は非導通となり、ＲＹ／ＢＹは半導体装置の外付けロード回路等によりＨｉｇｈ電位にプルアップされる。
【００４３】
図１を参照すると、本実施形態の半導体装置は、判定レジスタ１０５を具備している。判定レジスタ１０５は、Ｃｏｌｕｍｎアドレス数と同数のデータを保持することができ、メモリセルアレイ１０１内のＣｏｌｕｍｎアドレスと対応したアドレス割付がなされている。判定レジスタ１０５は、Ｃｏｌｕｍｎアドレス数分のセルのパス／フェイル情報を保持する。
【００４４】
図２は、図１の本実施形態のメモリセルアレイ（メモリアレイ）とその周辺回路の構成例を示す図である。図２に示すように、メモリセルアレイ１０１と、メモリセルアレイ１０１内の選択ワード線１００−３を駆動するワード線ドライバ１０８と、Ｒｏｗデコーダ１０２と、メモリセルアレイ１０１内のビット線１００−２を選択するビット線セレクタ１０９と、センスアンプ１０３と、ライトアンプ１０４を備えている。ビット線１００−２とワード線１００−３の交差部に、ＰＣＥ（不図示）を含むセル１００−１を備えている。セル１００−１の内部構成は例えば特許文献２、３等が参照される。ＭＯＳ型のセル１００−１は、例えばゲート電極がワード線に接続されたｎＭＯＳトランジスタと、相変化抵抗としてビット線と当該ｎＭＯＳトランジスタのドレイン電極との間に接続されたＰＣＥを備えている。
【００４５】
ライトアンプ１０４およびセンスアンプ１０３は、データレジスタ１０６および判定レジスタ１０５との間でデータの転送を行う。データ書き込み時のライトアンプ１０４によるライトパルスの生成等については、特許文献１乃至３等の記載が参照される。
【００４６】
Ｒｏｗデコーダ１０２はＲｏｗアドレスにて選ばれたＸアドレスをデコードし、ワード線ドライバ１０８によって選択されたワード線１００−３を活性化する。
【００４７】
Ｃｏｌｕｍｎデコーダ１０７は、ｐｈａｓｅコントロール１１９によって制御され、各Ｃｏｌｕｍｎアドレスに対応したビット線１００−２を、フェーズ群ごとに選択する。
【００４８】
図２の構成では、一例として、３ビットのセル１００−１にて１フェーズを構成し、３ビット単位で同時書き込み、読み出しが行われる。
【００４９】
フェーズの変更は、Ｐｈａｓｅコントロール１１９からの制御によりＣｏｌｕｍｎデコーダ１０７からの情報（選択Ｃｏｌｕｍｎ）を受けるビット線セレクタ１０９でセンスアンプ１０３／ライトアンプ１０４に接続する複数のビット線１００−２を切り替えることにより行う。図１のＰｈａｓｅカウンタ１２０のカウント値（＝フェーズ番号に対応）を受けるＰｈａｓｅコントロール１１９が、当該選択されたフェーズに対応するＣｏｌｕｍｎアドレスをＣｏｌｕｍｎデコーダ１０７に供給し、Ｃｏｌｕｍｎデコーダ１０７が選択フェーズに対応するＣｏｌｕｍｎのビット線を選択するようにビット線セレクタ１０９を制御する。
【００５０】
本実施形態において、同時書き込み、読み出し動作するセル数は、センスアンプ１０３、ライトアンプ１０４の数と基本的に等しくなる。図２の例では、センスアンプ１０３が３個、ライトアンプ１０４が３個あり、同時書き込み、同時読み出し動作するセル数は３個である。同時書き込み、同時読み出し動作するセル数が３の場合、ビット線総数Ｎ、フェーズの数Ｋ（第１乃至第Ｋフェーズ）は、３×Ｋ＝Ｎの関係を満たす。
【００５１】
なお、図２には、簡略化のために３セルでの同時書き込みの例が示されているが、図１の装置構成では、データの入出力はバイト単位となるため、実際には少なくとも８セルの同時書き込みとなる。フェーズ群の数および同時書き込み数の数は任意に設定可能となる。
【００５２】
本実施形態においては、図３に示すように、図２のメモリセルアレイ１０１を複数のサブメモリアレイ１０１Ｓに細分化してもよい。特に制限されないが、図３に示す例では、図２のメモリセルアレイ１０１は、２×３＝６個のサブアレイ１０１Ｓに分割され、各サブアレイに対応して、Ｒｏｗデコーダ１０２、ワード線ドライバ１０８、Ｃｏｌｕｍｎデコーダ１０７、ビット線セレクタ１０９、センスアンプ１０３、ライトアンプ１０４を備え、データレジスタ１０６、判定レジスタ１０５は、各サブアレイ列の２つのセンスアンプ１０３、２つのライトアンプ１０４に接続される。
【００５３】
図３の構成の場合、サブアレイ単位で書き込みと読み出しを同時に行うことが可能であり、１フェーズ当りの同時書き込み数、読み出し数は６（＝サブアレイの個数＝センスアンプの個数＝ライトアンプの個数）となる。すなわち、上段の３つのサブアレイからそれぞれ１つのセル、下段の３つのサブアレイからそれぞれ１つのセルが同時に選択される。図３の構成において、上段の３つのサブアレイ分の全Ｃｏｌｕｍｎアドレス数と、下段の３つのサブアレイ分の全Ｃｏｌｕｍｎアドレス数の和と同数のデータレジスタ１０６を備えている。判定レジスタ１０５も、上段の３つのサブアレイ分の全Ｃｏｌｕｍｎアドレス数、下段の３つのサブアレイ分の全Ｃｏｌｕｍｎアドレス数の和と同数のセル情報（パス／フェイル）を保持する。
【００５４】
本実施形態では、同時書き込み動作及び同時読み出し動作するセル数は、センスアンプ１０３、ライトアンプ１０４の数と等しいが、それらは必ず同数である必要は無く、同時に書き込み、読み出し動作するセル数に比べ、センスアンプ数、ライトアンプ数がそれぞれ同数か同数以上存在していればよい。たとえば、図示していないが、ビット線セレクタの一部のスイッチの制御にＲｏｗアドレスが割り当てたれた場合等に相当する。
【００５５】
相変化メモリにおいて時分割（フェーズ単位）でデータの書き込みを行う場合、ベリファイ動作はフェーズ単位で書き込み、読み出しが繰り返えされることになる。このため、データ書き込みの終了からデータ読み出しの開始までの時間は極めて短く、上記のように、定常状態の抵抗値とは異なる抵抗値を読み出てしまう可能性がある。
【００５６】
以下では、まず比較例について図４、図５を参照して説明する。いずれの比較例も本発明の手法と異なる。
【００５７】
＜比較例１＞
図４には、比較例１として、
１つのセルへの書き込み時間を２００ｎｓ、
書き込みから読み出しへの切り替え時間を２０ｎｓ、
読み出し時間を２００ｎｓ、
フェーズ切り替え時間を２０ｎｓ、
フェーズ分割数を６４
とした場合における、フェーズ単位でのベリファイ動作のシーケンスが示されている。尚、書き込みから読み出しへの切り替え時間は制御ロジック１１３及び制御ロジックから制御される複数の回路に関連する時間、フェーズ切り替え時間はフェーズコントロール１１９及びフェーズコントロールから制御される複数の回路に関連する時間、読み出し時間は判定レジスタ１０５による判定時間を含む。
【００５８】
図４の「フェーズ」は書き込み、読み出し時の同時動作のデータ単位を示している。図４において、フェーズの読み出しから書き込みへの矢線の「ｖｅｒｉｆｙ  ｆａｉｌ」は、当該フェーズの読み出しシーケンスで読み出したセルデータが当該セルへの書き込みデータ（期待値）と相違しており、該セルがフェイル（ベリファイ・フェイル）であるため、再書き込みを行うことを表している。
【００５９】
図４の場合、同一フェーズにおける書き込みから読み出しまでの時間が２０ｎｓと短く、セル抵抗が過渡状態（ｔｒａｎｓｉｅｎｔ  ｓｔａｔｅ）となっているため、安定したベリファイ動作を行えない可能性がある。
【００６０】
＜比較例２＞
図５の比較例２の場合、書き込みから読み出しへの切り替え時間を増加（例えば１ｕｓ）することで、比較例１の上記問題を回避している。すなわち、
１つのセルへの書き込み時間を２００ｎｓ、
書き込みから読み出しへの切り替え時間を１ｕｓ、
読み出し時間を２００ｎｓ、
フェーズ切り替え時間を２０ｎｓ、
フェーズ分割数を６４
としている。
【００６１】
しかしながら、比較例２では、書き込みから読み出しへの切り替え時間をセル抵抗が過渡抵抗値である過渡状態から定常抵抗値へ脱するまでの時間に対応させて増加したことにより、安定したベリファイ動作を実現できるものの書き込みのスループットが大幅に低下するという問題がある。
【００６２】
ここで、ベリファイ動作は、例えば、図１のライトアンプ１０４における書き込みデータと、センスアンプ１０３における読み出しデータを判定レジスタ１０５により比較することで行われ、フェイルが検出された場合、当該セルへの再書き込みが行われ、フェーズ内の全てのセルがパスするまで、再書き込み、読み出しのループを繰り返す。
【００６３】
書き込みデータは、データレジスタ１０６からライトアンプ１０４に、フェーズごとに転送される。
【００６４】
１つのフェーズ内（例えばフェーズ０）でパスしたセルについては、同一フェーズにおいてベリファイフェイルしたセルによってルーチンが繰り返されるが、その繰り返しルーチンでは前記パスしたセルへの書き込みおよび読み出しはマスクされる。マスクとは、例えばライトアンプ１０４を非活性とし、当該セルへの書き込みの為のストレス印加を行わない（リセット電流またはセット電流を流さない）制御を行う。
【００６５】
システムによっては、同一フェーズにて、予め定められた規定回数ベリファイしても、フェーズ内の全てのセルがパスしなかった場合は、制御ロジック１１３およびステータスレジスタ１１５（図１参照）を通して、外部コマンドをトリガーとして、ステータスレジスタ１１５で保持される書き込み失敗のステータス情報を、Ｉ／Ｏ１〜Ｉ／Ｏ８（図１参照）より、外部に出力する。
【００６６】
＜実施例１＞
図６は、図１乃至図３を参照して説明した本発明の実施例１の動作を説明する図である。本実施例では、セル抵抗が過渡抵抗値である過渡状態から定常抵抗値へ脱するまでの時間に対応させるも、書き込のスループットの大幅な低下を引き起こさずに、書き込み終了からベリファイ読み出しまでのインターバルを確保している。図６には、本実施例におけるベリファイ動作を含む書き込みシーケンスが模式的に示されている。以下の値に特に制限されるものではないが、図６では、
書き込み時間＝２１０ｎｓ／フェーズ（フェーズ切り替え時間を含む）、
読み出し時間＝２１０ｎｓ／フェーズ（フェーズ切り替え時間を含む）、
フェーズ数＝６４、
書き込みと読み出しの切り替え時間＝２０ｎｓ、
としている。
【００６７】
フェーズ０〜６３の書き込み、読み込みは、マスクの有無に関わらず、２１０ｎｓ×６４＝１３．４４ｕｓとなる。
【００６８】
本実施例では、ベリファイ動作（第１ベリファイ動作）として、
まず、フェーズ０〜６３の順（昇順）に、各フェーズの複数セルへのデータの書き込みを行い、
その後、フェーズ０〜６３の順（昇順）に、各フェーズの複数セルからデータの読み出し（ベリファイ読み出し）を行う。
【００６９】
なお、フェーズ６３〜０の順にデータの書き込みを行い、その後、フェーズ６３〜０の順（降順）にデータの読み出しを行ってもよい。
【００７０】
ベリファイ読み出しのシーケンスで取得されたフェーズ内の各セルにおけるパス／フェイル情報は判定レジスタ１０５で保持される。
【００７１】
次のベリファイ動作（第２ベリファイ動作）では、判定レジスタ１０５のデータをライトアンプ１０４に読み出し、フェイルとなるセルが存在するフェーズについてのみ、データレジスタから読み出した書き込みデータを用いて再書き込みを行い、それ以外のフェーズ（フェイルセルが存在せず、パスしたフェーズ）では、全ての書き込みをマスクする。
【００７２】
また、フェイルしたセルが存在するフェーズにおいても、当該フェーズの中のパスしたセルに対しては書き込みをマスクする（書き込みは行わない）。
【００７３】
該当フェーズが再書き込みを行うものであるか否かの判定は、例えば判定レジスタ１０５の当該フェーズに属するセルの情報（パス／フェイル情報）の全ての論理和情報を取ることで判断する。１つのフェーズで８個のセルのデータを同時に読み出し、各セルのパス／フェイルの判定結果を判定レジスタ１０５に保存する構成の場合、該８個のセルが全てパス（フェイル情報＝０）の場合、これら８個セル情報の論理和は０となる。該８個のセルのうち一つのセルでもフェイルした場合（該当フェイルセルのフェイル情報１）、該８個のセルのセル情報の論理和は１となり、当該フェーズがフェイル、すなわち再書き込みが必要なフェーズであることが分かる。
【００７４】
この際、書き込みを行わない（フェーズに属するセルが全てパスし、再書き込みがマスクされた）フェーズも、書き込み時間を詰めず（ルーチンをスキップせずに）に、本来それに掛かる必要な時間だけ待機する。図６の第２ベリファイ動作におけるフェーズ単位の時分割書き込みシーケンスにおいて書き込みがマスクされるフェーズ０、２、・・・６１、６３にも２１０ｎｓが割当てられており、各フェーズで２１０ｎｓ待機することになる。この理由は、仮に再書き込みのフェーズが一つのみ（フェーズ０のみ）となった場合、フェーズ１〜６３の書き込み動作に掛かる時間をスキップしてフェーズ０の読み出しに移行すると、比較例１の様にセル抵抗が過渡抵抗値である過渡状態から定常抵抗値へ脱するまでの時間を確保できないからである。
【００７５】
第２ベリファイ動作以降、セルからのデータの読み出し（ベリファイ読み出し）は、マスクの有無に関わらず、全フェーズにて行う。この際、前回のベリファイ動作でパスしたセルおよびフェーズは再度読み出すことになるため、抵抗値を再度チェックすることになり、不安定なビットの抽出が容易となる。ただし、この抵抗値の再チェックは必ず必要という訳ではなく、読み出し時の消費電力削減を目的として、パスしたセルおよびフェーズに対する読み出しをマスクしてもよい。この場合対応する判定回路はインヒビットまたは入力データに係わらず出力をパススルーに制御する。読み出しをマスクしたフェーズも、読み出し時間分を詰めずに、待機しておく。実施例１では読み出しをマスクしたフェーズにも、２１０ｎｓが割当てられており、当該フェーズで２１０ｎｓの時間待機する。この理由は、仮に再書き込みのフェーズが一つのみ（フェーズ６３のみ）となった場合、フェーズ０〜６２の読み出し動作に掛かる時間をスキップしてフェーズ６３の読み出しに移行すると、比較例１の様にセル抵抗が過渡抵抗値である過渡状態から定常抵抗値へ脱するまでの時間を確保できないからである。
【００７６】
書き込みのマスクおよび読み出しのマスクの制御は、判定レジスタ１０５の情報を、ライトアンプ１０４、センスアンプ１０３に転送することにより行う。書き込みマスクが設定されたライトアンプ１０４は活性化されず、書き込みパルスを出力しない。読み出しマスクが設定されたセンスアンプ１０４は活性化されず、読み出しデータを出力しないこととしても良い。この場合、判定レジスタ１０５は、非活性化されたセンスアンプに対応する判定レジスタの出力を、その実際の比較結果によらずパスとする。更に、対応する比較自身を非活性化（マスク）してもよい。
【００７７】
実施例１のシーケンスを用いることにより、例えば図６の例では、同一セルにて書き込み終了から読み出し開始までの間には、常に、１３．２５ｕｓのタイム・インターバル（時間区間）を設けることができる。図６の第１ベリファイ動作において、例えばフェーズ０のセルへのデータ書き込みの終了時間と、フェーズ０のセルの読み出し開始時間との間には、（１３．４４ｕｓ−２１０ｎｓ）＋２０ｎｓ＝１３．２５ｕｓの時間間隔が設けられており、フェーズ１についても、同様にして、セルへのデータ書き込みの終了時間と、フェーズ０のセルの読み出し開始時間との間には、（１３．４４ｕｓ−２１０ｎｓ×２）＋２０ｎｓ＋２１０ｎｓ＝１３．２５ｕｓの時間間隔が設けられている。第１ベリファイ動作の他のフェーズ２〜６３、及び他のベリファイ動作についても同様とされる。
【００７８】
このベリファイ動作を全てのフェーズがパスするまで繰り返す。
【００７９】
なお、ベリファイ動作をＮ回（規定回数）行い、フェーズ内の全てのセルがパスしなかった場合には、制御ロジック１１３およびステータスレジスタ１１５を通して、コマンドの入力をトリガーとして、書き込み失敗のステータス情報をＩ／Ｏ１〜Ｉ／Ｏ８より外部に出力する。
【００８０】
また応用として(図示していないが)、ライト時の電流を削減するために、ライト時のみ上記に定義したフェーズの動作を更に時分割して動作させてもよい。例えば、ライト時の上記各フェーズを２分割した場合(各フェーズの同時書き込み数を１/２とし、２度動作させた場合)、ライトシーケンス期間は２倍に増加するが、ライト時のピーク電流は半減する。また、ビット線コントロール回路を工夫することによりライトアンプ数を１/２とすることができる。同様に読み出しシーケンスにおける各フェーズ動作のみを更に時分割してもよい。
【００８１】
＜実施例２＞
次に実施例２について説明する。前記実施例１では、第２ベリファイ動作以降のベリファイ動作における書き込みの際、パスしたフェーズも時間を詰めずに待機するため、必ず全てのフェーズの時間が必要であった。これに対して、実施例２ではセル抵抗が過渡抵抗値である過渡状態から定常抵抗値へ脱するまでの時間を確保しつつ、更なる時間短縮を行う方法を開示する。
【００８２】
実施例２では、読み出しのフェーズの順序の制御方法を工夫することによって再書き込みのフェーズを削減し、再書き込みセルを基準にして実施例１と比べてもインターバルを削減することなく、書き込み動作スループットを向上する。図７は、実施例２における、ベリファイ動作を説明する図である。
【００８３】
第１ベリファイ動作は、前記実施例１と同様に、全フェーズに対し順に書き込みを行い、その後、ベリファイ読み出しを行う。
【００８４】
この際、読み出しによって、フェイルビットの存在が確認されたフェーズは、フェイルフェーズとして、当該フェーズに対応させてフェイル情報を判定レジスタ１０５に保存する。
【００８５】
次の第２のベリファイ動作では、第１のベリファイ動作の結果、判定レジスタ１０５に保存された情報を読み出し、第１ベリファイ動作でフェイルと判定されたフェーズのみ順（例えば昇順）に、再書き込みを行う。
【００８６】
当該フェーズが、再書き込みを行うフェーズであるか否かの判定は、例えば、判定レジスタ１０５内の当該フェーズに属するセルの情報（例えばパス＝０、フェイル＝１）の全ての論理和を取ることで判断する。当該フェーズに属するセルの情報の論理和が１のとき、当該フェーズは再書き込み要と判定され、当該フェーズに属するセルの情報の論理和が１のとき、当該フェーズは再書き込み不要（書き込みマスク）と判定される。このとき、前回のベリファイ動作（第１ベリファイ動作）でパスしたフェーズには、待ち時間を設けない。すなわち、実施例２では、書き込みがマスクされるフェーズには時間２１０ｎｓの待機を行わず（この分、時間を詰める。つまりサブルーチンをスキップする）、次に書き込みが必要な次のフェーズへの書き込みが行われる。
【００８７】
第２ベリファイ動作の読み出しシーケンスでは、第２ベリファイ動作の書き込みシーケンスで最後に書き込んだフェーズの次のフェーズから、且つ、判定レジスタ１０５の情報を参照しながら、第２ベリファイ動作で書き込まなかったフェーズ（書き込みマスク対象のフェーズ）のみを順（例えば昇順）に読み出しを開始していく。
【００８８】
このように、第２ベリファイ動作の読み出しシーケンスにおいて、第２ベリファイ動作の書き込みシーケンスで最後に書き込んだフェーズ（図７ではフェーズ６２）の次のフェーズ（図７ではフェーズ６３）から、読み出しを開始することで、読み出しシーケンス開始時に、Ｐｈａｓｅカウンタ１２０（図１参照）のカウント値を０に強制リセットする必要はない。
【００８９】
第２ベリファイ動作の読み出しシーケンスにおいて、フェーズ６３読み出し後、書き込まなかったフェーズの最若番の値０に戻り、フェーズ２、４、・・・、６１と昇順に読み出しが行われる。なお、Ｐｈａｓｅカウンタ１２０はカウント値が６３（フェーズ６３に対応）に達すると、次に０からのアップカウントを開始する。第２のベリファイ動作の読み出しシーケンスにおいて、当該フェーズが、第２のベリファイ動作の書き込みシーケンスで書き込まなかったフェーズであるか否かの判定は、判定レジスタ１０５内に保持される当該フェーズに対応するセル情報に基づき行われる（パスのフェーズは書き込みがマスクされる）。
【００９０】
実施例２において、第２ベリファイ動作の書き込みシーケンスで書き込まなかったフェーズ（図７の例では、０、２、４、・・・６１、６３）は、いずれも第１ベリファイ動作をパスしたフェーズではあるが、前記実施例１と同様に、第２ベリファイ動作の読み出しシーケンスで再度読み出す。これにより、当該フェーズのセルへの書き込みデータの再確認を行うことが可能である。ただし、前記実施例１と同様に、この抵抗値の再チェックは必ず必要という訳ではなく、読み出し時の消費電力削減を目的として、パスしたセルおよびフェーズに対する読み出しをマスクしてもよい。読み出しをマスクしたフェーズも、読み出し時間分を詰めずに、待機しておく。
【００９１】
書き込なかったフェーズの読み出しが終了すると、次に、判定レジスタ１０５を参照しながら、第２ベリファイ動作で書き込まれたフェーズ（図７では、フェーズ１、３、・・・６２）を順（昇順）に読み出していく。
【００９２】
実施例２によれば、このように読み出しの順番を工夫することにより、図７に示すように、書き込み終了から読み出しまでに、常に１３．２５ｕｓ（＝１３．４４ｕｓ−２１０ｎｓ＋２０ｎｓ）のインターバルを設けることができる。
【００９３】
このベリファイ動作を全てのフェーズがパスするまで繰り返す。
【００９４】
これにより、前記実施例１と異なり書き込みがマスクされたフェーズの待機時間を削減しつつ、前記実施例１と同様に書き込みから読み出しまでの間に十分なインターバルを設けることができる。すなわち、前記実施例１では、ベリファイ動作の書き込みにおいて、書き込みがマスクされる各フェーズにおいて２１０ｎｓの待機を行っていたが、本実施例では、ベリファイ動作の書き込み時間は、（書き込みが必要なフェーズの数）×２１０ｎｓとされ、書き込みがマスクされるフェーズの個数×２１０ｎｓ分の待機時間が圧縮（削減）される。これによっても、本実施例においては、書き込みと読み出しの切り替え時間＝２０ｎｓと読み出し時間＝１３．４４ｕｓは、前記実施例１と同様とされる。
【００９５】
図７に示すように、第１のベリファイ動作において、フェーズ０の書き込み終了と読み出し開始時間との間には、（１３．４４ｕｓ−２１０ｎｓ）＋２０ｎｓ＝１３．２５ｕｓの時間間隔が設けられており、他のフェーズも同様である。
【００９６】
第２のベリファイ動作において、フェーズ１の再書き込み終了と読み出し開始時間との間にも、１３．２５ｕｓの時間間隔が設けられている。図７の第１ベリファイ動作の書き込みシーケンスで再書き込みされたフェーズの個数をｎ個（１≦ｎ≦６４）とすると、読み出しシーケンスにおいてフェーズ１の前に読み出しが行われる、書き込まれなかったフェーズの個数は６４−ｎである。したがって、第２のベリファイ動作において、フェーズ１の再書き込み終了と読み出し開始時間までの時間間隔は、
（ｎ−１）×２１０ｎｓ＋２０ｎｓ＋（６４−ｎ）×２１０ｎｓ
＝（６４−１）×２１０ｎｓ＋２０ｎｓ
＝（１３．４４ｕｓ−２１０ｎｓ）＋２０ｎ＝１３．２５ｕｓ
となる。他のフェーズの再書き込み終了と読み出し開始時間までの時間間隔も同様に、１３．２５ｕｓとなる。
【００９７】
なお、ベリファイ動作をＮ回（規定回数）行い、フェーズ内の全てのセルがパスしなかった場合は、制御ロジック１１３およびステータスレジスタ１１５を通して、外部コマンドをトリガーとして、書き込み失敗のステータス情報をＩ／Ｏ１〜Ｉ／Ｏ８より外部に出力するようにしてもよい。
【００９８】
また応用として(図示していないが)、ライト時の電流を削減するために、ライト時のみ上記に定義したフェーズの動作を更に時分割して動作させてもよい。例えばライト時の上記各フェーズを２分割した場合(各フェーズの同時書き込み数を１/２とし、２度動作させた場合)、ライトシーケンス期間は２倍に増加するがライト時のピーク電流は半減する。また、ビット線コントロール回路を工夫することによりライトアンプ数を１/２とすることができる。同様に読み出しシーケンスにおける各フェーズ動作のみを更に時分割してもよい。
【００９９】
＜実施例３＞
前記実施例２では、第２ベリファイ動作以降において、書き込みシーケンスによる再書き込みの後の読み出しシーケンスにおいて、最後に書き込んだフェーズの次のフェーズから読み出している。実施例３では、これとは別の手法を提供する。図８は、実施例３を説明する図である。
【０１００】
図８に示すように、ベリファイ動作において、書き込みシーケンスで書き込まれなかったフェーズを、例えば、フェーズアドレスの若番順に読み出してもよい。図８に示す例では、第２のベリファイ動作、第Ｎのベリファイ動作において、最後に書き込んだフェーズ（図８ではフェーズ６２）の後の読み出し動作では、書き込みシーケンスで書き込まれなかったフェーズのうち、最後に書き込んだフェーズの次のフェーズ（フェーズ６２の次のフェーズ６３）ではなく、フェーズ０から順に読み出している。したがって、図１のＰｈａｓｅカウンタ１２０のカウント値が現在の６２から０に強制リセットされる。言い換えれば、Ｐｈａｓｅカウンタ１２０の初期化アドレス（所定のアドレス）から順に、ベリファイ動作を実行する。
【０１０１】
この実施例３においても、前記実施例２と同様に、書き込み終了から読み出しまでに、常に１３．２５ｕｓ（＝１３．４４ｕｓ−２１０ｎｓ＋２０ｎｓ）のインターバルを設けることができる。このベリファイ動作を全てのフェーズがパスするまで繰り返す。なお、ベリファイ動作をＮ回（規定回数）行い、フェーズ内の全てのセルがパスしなかった場合は、制御ロジック１１３およびステータスレジスタ１１５を通して、外部コマンドをトリガーとして、書き込み失敗のステータス情報をＩ／Ｏ１〜Ｉ／Ｏ８より外部に出力する。
【０１０２】
上記実施例によれば、セル抵抗が過渡抵抗値である過渡状態から定常抵抗値へ脱するまでの時間を確保しつつ、書き込みのスループットの大幅な低下を引き起こさずに、書き込み終了からベリファイ読み出しまでのインターバルを確保することができる。
【０１０３】
本発明の技術思想は、様々な半導体装置に適用することができる。例えば、例えば、それぞれが相変化メモリ素子を含むＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、ＭＣＵ（Ｍｉｃｒｏ  Ｃｏｎｔｒｏｌ  Ｕｎｉｔ）、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）、ＡＳＳＰ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｓｔａｎｄａｒｄ  Ｃｉｒｃｕｉｔ）、メモリ（Ｍｅｍｏｒｙ）等の不揮発性半導体装置の制御方法全般に、本発明を適用することができる。このような本発明が適用された半導体装置の製品形態としては、例えば、ＳＯＣ（システムオンチップ）、ＭＣＰ（マルチチップパッケージ）やＰＯＰ（パッケージオンパッケージ）などが挙げられる。これらの任意の製品形態、パッケージ形態を有する不揮発性半導体装置に対して本発明を適用することができる。
【０１０４】
なお、上記の複数の特許文献、非特許文献の各開示を、本書に引用をもって繰り込むものとする。本発明の全開示（請求の範囲を含む）の枠内において、さらにその基本的技術思想に基づいて、実施例ないし実施例の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素の多様な組み合わせないし選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。
【符号の説明】
【０１０５】
１００−１  セル
１００−２  ビット線
１００−３  ワード線
１０１  メモリセルアレイ
１０１Ｓ  サブメモリアレイ
１０２  Ｒｏｗ（ロウ）デコーダ
１０３  センスアンプ（ＳＡ）
１０４  ライトアンプ（ＷＡ）
１０５  判定レジスタ
１０６  データレジスタ
１０７  Ｃｏｌｕｍｎ（カラム）デコーダ
１０８  ワード線ドライバ
１０９  ビット線セレクタ
１１１  コマンドディテクタ
１１２  Ｉ／Ｏコントロール
１１３  制御ロジック
１１４  コマンドレジスタ
１１５  ステータスレジスタ
１１６  アドレスレジスタ
１１７  Ｒｏｗ（ロウ）アドレスバッファ
１１８  Ｃｏｌｕｍｎ（カラム）アドレスバッファ
１１９  Ｐｈａｓｅ（フェーズ）コントロール
１２０  Ｐｈａｓｅ（フェーズ）カウンタ
１２１  ｎＭＯＳトランジスタ
【図１】
2011181134.tif 000003
【図２】
2011181134.tif 000004
【図３】
2011181134.tif 000005
【図４】
2011181134.tif 000006
【図５】
2011181134.tif 000007
【図６】
2011181134.tif 000008
【図７】
2011181134.tif 000009
【図８】
2011181134.tif 000010
【手続補正書】
【提出日】平成23年2月25日(2011.2.25)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
情報を書き換えるストレスが印加され、前記印加後に書き換え後の期待値情報に特性が安定するまでの時間としてそれぞれが第１の時間を有する複数のセルを有する不揮発性半導体装置の制御方法であって、
複数の前記セルを時系列に連続して書き込む複数の第１のシーケンスと、
前記連続した書き込み後、前記複数のセルを時系列に連続してベリファイする複数の第２のシーケンスと、
を有し、
前記複数の第１のシーケンスと前記複数の第２のシーケンスとが一つのセットとして時系列に連続して複数の前記セットを繰り返す時、前記複数のセルのそれぞれのセルに対して前記第１のシーケンスによる前記ストレスの印加が終了してから、前記ストレス印加された複数のセルの前記それぞれのセルに対して前記第２のシーケンスのベリファイが開始されるまでの時間を、前記複数のセットのすべてにおいてそれぞれ前記第１の時間以上とする、不揮発性半導体装置の制御方法。
【請求項２】
第１の数の前記複数のセルを一つの単位として一つのフェーズが定義され、
前記第２のシーケンスは、前記時系列に連続する第２の数の複数の前記フェーズで構成する、請求項１の不揮発性半導体装置の制御方法。
【請求項３】
すべての前記複数のセットに対応する複数の前記第２のシーケンスがそれぞれ含む前記第２の数の複数のフェーズは、互いに同一の数である、請求項２の不揮発性半導体装置の制御方法。
【請求項４】
前記すべての複数のセットに対応する複数の第２のシーケンスがそれぞれ含む前記時系列に連続する前記第２の数の複数のフェーズがそれぞれ示すアドレスの順序は、同一のアドレス順序である、請求項３の不揮発性半導体装置の制御方法。
【請求項５】
前記第１のシーケンスは、前記時系列に連続する前記第２の数の複数の前記フェーズで構成し、
すべての前記複数のセットに対応する複数の前記第１のシーケンスがそれぞれ含む前記第２の数の複数のフェーズは、互いに同一の数である、請求項３または４の不揮発性半導体装置の制御方法。
【請求項６】
前記すべての複数のセットに対応する複数の第１のシーケンスがそれぞれ含む前記時系列に連続する前記第２の数の複数のフェーズがそれぞれ示すアドレスの順序は、同一のアドレス順序である、請求項５の不揮発性半導体装置の制御方法。
【請求項７】
前の前記セットの前記ベリファイの結果によらず、前記前のセットの第１のシーケンスが含む前記第２の数の複数のフェーズと、次の前記セットの第１のシーケンスが含む前記第２の数の複数のフェーズは、互いに同一の数である請求項５または６の不揮発性半導体装置の制御方法。
【請求項８】
前記前のセットのベリファイの結果がパスであった前記フェーズに対応する前記次のセットの第１のシーケンスが含む前記フェーズをマスクし、関連する前記複数のセルに前記情報を書き換えるストレスを印加しない、請求項７の不揮発性半導体装置の制御方法。
【請求項９】
前の前記セットにおける前記第１のシーケンスは、前記時系列に連続する前記第２の数の複数の前記フェーズで構成し、
次の前記セットにおける前記第１のシーケンスは、前記前のセットのベリファイの結果によって、前記時系列に連続する前記第２の数よりも少ない第３の数の複数の前記フェーズで構成し、
前記次のセットにおける前記第２のシーケンスは、前記前のセットのベリファイの結果がパスであるかフェイルであるかによらず前記時系列に連続する前記第２の数の複数の前記フェーズで構成し、且つ、前記前のセットのベリファイがパスであった複数の前記フェーズを前記時系列に連続する複数のフェーズの前部に設定し、前記前のセットのベリファイがフェイルであり前記第３の数の複数のフェーズを前記時系列に連続する複数のフェーズの後部に設定する、請求項２の不揮発性半導体装置の制御方法。
【請求項１０】
前記次のセットの前記第２のシーケンスにおける前記前部の連続する複数のフェーズのうち最初に前記ベリファイされる前記フェーズのアドレスは、前記前のセットの第１のシーケンスに含まれる最後に書き込まれた前記フェーズのアドレスを基準に、前記第３の数の複数のフェーズが前記時系列に示すアドレスの遷移方向に沿ってカウントされたアドレスである、請求項９の不揮発性半導体装置の制御方法。
【請求項１１】
前記前部である連続する複数のフェーズがそれぞれ示す複数のアドレスは、前記カウントされたアドレスを基準に、前記遷移方向に沿って順次カウントされた複数のアドレスである、請求項１０の不揮発性半導体装置の制御方法。
【請求項１２】
前記順次カウントされた複数のアドレスから、前のセットのベリファイがフェイルであった前記第３の数の複数のフェーズが示す複数のアドレスを除外する、請求項１１の不揮発性半導体装置の制御方法。
【請求項１３】
前記後部である連続する複数のフェーズがそれぞれ示す複数のアドレスは、前記前のセットの第１のシーケンスに含まれる前記第３の数の複数のフェーズがそれぞれ示す複数のアドレスと同一であり、且つそれらアドレスの遷移方向も同一である、請求項１０の不揮発性半導体装置の制御方法。
【請求項１４】
前記ベリファイは、アンプを活性化して前記セルを読み出し、前記読み出したデータを期待値と比較するステップを含み、
前記前部の連続する複数のフェーズにおいて、前記アンプを非活性にし、前記比較結果によらずベリファイ結果をパスとする、請求項９乃至１２のいずれか一項の不揮発性半導体装置の制御方法。
【請求項１５】
更に、前記読み出したデータを期待値と比較する動作を非活性にし、ベリファイ結果をパスとする、請求項１４の不揮発性半導体装置の制御方法。
【請求項１６】
前記次のセットの前記第２のシーケンスにおける前記前部の連続する複数のフェーズのうち最初に前記ベリファイされる前記フェーズのアドレスは、前記アドレスを管理するカウンタの初期化アドレスである、請求項９の不揮発性半導体装置の制御方法。
【請求項１７】
前記前部である連続する複数のフェーズがそれぞれ示す複数のアドレスは、前記初期化アドレスを基準に、所定の遷移方向に沿って順次カウントされた複数のアドレスである、請求項１６の不揮発性半導体装置の制御方法。
【請求項１８】
前記順次カウントされた複数のアドレスから、前のセットのベリファイがフェイルであった前記第３の数の複数のフェーズが示す複数のアドレスを除外する、請求項１７の不揮発性半導体装置の制御方法。
【請求項１９】
前記後部である連続する複数のフェーズがそれぞれ示す複数のアドレスは、前記前のセットの第１のシーケンスに含まれる前記第３の数の複数のフェーズがそれぞれ示す複数のアドレスと同一であり、且つそれらアドレスの遷移方向も同一である、請求項１５の不揮発性半導体装置の制御方法。
【請求項２０】
前記ベリファイは、アンプを活性化して前記セルを読み出し、前記読み出したデータを期待値と比較するステップを含み、
前記前部の連続する複数のフェーズにおいて、前記アンプを非活性にし、前記比較結果によらずベリファイ結果をパスとする、請求項９、１５乃至１８のいずれか一項の不揮発性半導体装置の制御方法。
【請求項２１】
更に、前記読み出したデータを期待値と比較する動作を非活性にし、ベリファイ結果をパスとする、請求項２０の不揮発性半導体装置の制御方法。
【請求項２２】
前記第１の時間は、前記一つのセルに書き込むストレスの印加の時間よりも長い、請求項１乃至２１のいずれか一項の不揮発性半導体装置の制御方法。
【請求項２３】
前記第１の時間は、前記ストレスの印加の時間の１０倍以上の時間である、請求項１乃至２１のいずれか一項の不揮発性半導体装置の制御方法。
【請求項２４】
前記セルは、相変化によって情報を記憶する素子である、請求項１乃至２３のいずれか一項の記載の不揮発性半導体装置の制御方法。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体装置の制御方法に関し、特に、相変化素子等の不揮発性記憶素子を備えた半導体装置及び制御方法に関する。
【背景技術】
【０００２】
相変化メモリ（Ｐｈａｓｅ  Ｃｈａｎｇｅ  Ｍｅｍｏｒｙ）のセルに用いられる相変化素子（Ｐｈａｓｅ  Ｃｈａｎｇｅ  Ｅｌｅｍｅｎｔ：「ＰＣＥ」と略記される）は、カルコゲナイト（例えばＧｅ２Ｓｂ２Ｔｅ５）等の相変化材料からなり、書き込み時の電流、電圧およびそのパルス形状を制御することによって、抵抗値を任意に変化させることができる。一般的に２値記憶素子の場合、セルが高抵抗となる書き込みやその状態を「リセット」と呼び、データ「０」が割り当てられる。逆に、セルが低抵抗となる書き込みやその状態を「セット」と呼び、データ「１」が割り当てられる。ＰＣＥを例えば融点以上の温度に上げて比較的早い速度で冷却すると高抵抗のアモルファス（リセット状態）になる。また、ＰＣＥを例えば結晶化温度以上、融点温度以下の温度に比較的長い時間保持し比較的遅い速度で冷却すると低抵抗の結晶化状態（セット状態）になる。
【０００３】
ＰＣＥはセット状態とリセット状態の間の抵抗比が大きいため、他の抵抗変化型のメモリに比べデータを読み出しやすいというメリットがある。
【０００４】
しかしながら、ＰＣＥでは、リセットの書き込み直後から数１０ｎｓまでのセル抵抗値（過渡的な（ｔｒａｎｓｉｅｎｔ）抵抗値）は、それ以降の時間が経過した際のセル抵抗値（定常抵抗値）に比べ、極端に低くなってしまうという問題点が指摘されている（例えば非特許文献１参照）。なお、非特許文献１のＦｉｇｕｒｅ  ５には、リセットパルス後の最初の３０ｎｓで閾値ＶＴが約０．５Ｖから０．７Ｖに上昇した後飽和することが示されており、Ｆｉｇｕｒｅ  １０には、抵抗Ｒの測定結果とＶＴ−Ｒの相関等に基づく１００ｎｓ以下での外挿カーブが示されている。
【０００５】
このため、セルにデータを書き込んだ後、当該セルからデータを読み出しパス／フェイルを判定するベリファイ動作等において、セルへのデータ書き込み終了後から数１０ｎｓまでの比較的早いタイミングで同一セルからデータを読み出す場合、定常抵抗値よりも極めて低い過渡的抵抗値を読み出してしまう可能性がある。
【０００６】
またＰＣＥのデータ書き込みは電流印加によるジュール熱の発生によって行われるため、書き込み直後から数１０ｎｓの時間範囲では、ＰＣＥの温度は読み出し可能な範囲にまで十分に下がっていない可能性がある。これにより、セット状態、リセット状態共に書き込み直後の抵抗値が不安定になるという可能性がある。
【０００７】
先行技術文献サーチでサーチされた特許文献１には、相変化メモリセルからの読み出しデータを保持し及び外部から入力される書き込みデータをラッチするリードデータラッチと、書き込み開始までの所定サイクルの間メモリセルへの書き込みデータを保持するライトデータラッチと、リードデータラッチの出力のライトデータラッチへの転送の有無を制御する転送スイッチと、ライトデータラッチに保持されているデータとリードデータラッチのデータとが一致するか否か判定する比較回路と、比較回路の出力をラッチするライトフラグラッチを備え、書き込み要求が存在しており、比較回路の比較結果が不一致を示す場合にのみ書き込みが実行され、必要なビットにのみ書き込みが実行され、相変化メモリ等の比較的長い書き込み時間を隠蔽してランダムな書き込みを実現することができるようにした構成が開示されている。
【０００８】
また特許文献２には、プログラム動作要求に応答してＮ個の単位プログラムブロックを含む書き込みデータブロックをプログラムする段階と、読み出し動作要求に応答してＭ（ＭはＮより小さい）個の単位プログラムブロックをプログラムした後に、前記プログラム動作をサスペンドする段階と、前記要求された読み出し動作を行う段階と、前記書き込みデータブロックのプログラミングをレジュームし、（Ｎ−Ｍ）個の残りの単位プログラムブロックをプログラムする段階とを含む相変化メモリ装置の動作方法が開示されている。
【０００９】
さらに特許文献３には、短い動作サイクル時間で、相変化メモリの安定動作を可能とし、高集積な高速不揮発性メモリとして、ライトドライバＷＤ内にラッチを設け、相変化素子の高抵抗化は、カラムサイクル毎にライトイネーブル信号により行い、低抵抗化は、プリチャージコマンドが入力された後にプリチャージ信号を非活性化すると同時に行い、それにより、カラムサイクル時間を延ばすことなく、相変化抵抗を低抵抗化するメモリセルへの書き込み時間と、相変化抵抗を高抵抗化する書き込み動作から該メモリセルへの読み出し動作までの期間を長くすることができ、安定な書き込み動作を可能とした不揮発性メモリが開示されている。
【００１０】
そして特許文献４には、アドレス領域内のメモリセルに書き込み処理を実行し、複数アドレスのベリファイ動作を一括して行なう一括ベリファイ処理を実行し、一括ベリファイ処理と書き込み処理とを繰り返し、各アドレスに未書き込みメモリセルを含むか否かを検出する検出手段を備え、一括ベリファイ処理の少なくとも一部において１回以上前のベリファイ処理で未書き込みメモリセルを含まないと判定されたアドレスの少なくとも一部を除外して、ベリファイ処理を実行することで、一括ベリファイ処理の所要時間を短縮化し、バッファ書き込みを高速化できる半導体記憶装置が開示されている。しかしながら、特許文献１乃至４には、上記非特許文献１で指摘された問題点の認識、該問題点を解決するための手段はいっさい開示されていない。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特開２００８−１５９１７８号公報
【特許文献２】特開２００７−２５０１７１号公報
【特許文献３】特開２００５−１５８１９９号公報
【特許文献４】特開２００７−１８８５５２号公報
【非特許文献】
【００１２】
【非特許文献１】D.Ielmini, A.L.Lacaita, D. Mantegazza, F.Pellizzer, and A. Pirovano “Assessment of threshold switching dynamics in phase-change chalcogenide memories”, Electron Devices Meeting, 2005. IEDM Technical Digest. IEEE International Volume , Issue , 5-5 Dec. 2005   Page(s):877-880
【発明の概要】
【発明が解決しようとする課題】
【００１３】
以下に発明者による関連技術の分析を与える。
【００１４】
前述したように、セルの抵抗値の違いをデータ記憶に用いる相変化メモリでは、高抵抗書き込み時において、書き込み直後のセル抵抗値が一定時間経過後の抵抗値に対して極端に低くなることが指摘されている。このため、相変化メモリにおいて、セルデータの読み出しは、書き込み終了後、一定期間経過後に行うことが望ましい。
【００１５】
しかしながら、セルデータの読み出しを書き込み終了後一定期間経過後に行った場合、セルへのデータ書き込みと、その後のセルデータの読み出しと判定を行うベリファイ動作の総時間の短縮を図ることは困難である（これについては比較例として後に詳述される）。
【課題を解決するための手段】
【００１６】
本発明は、上記課題の少なくとも１つの解決を図るため概略以下のような方法を提供する。本発明の１つの側面（アスペクト）によれば、不揮発性半導体装置は、情報を書き換えるストレスが印加され、印加後に書き換え後の期待値情報に特性が安定するまでの時間として第１の時間を有するセルと、複数のセルを時系列に連続して書き込む複数の第１のシーケンスと、連続した書き込み後、複数のセルを時系列に連続してベリファイする複数の第２のシーケンスと、複数の第１のシーケンスと複数の第２のシーケンスとが一つのセットとして時系列に連続して複数のセットを繰り返す時、複数のセルのそれぞれが第１のシーケンスによるストレス印加が終了してから、ストレス印加された複数のセルのそれぞれに対して第２のシーケンスが開始されるまでの時間を、複数のセットのすべてにおいてそれぞれ第１の時間以上とする、不揮発性半導体装置の制御方法が提供される。
【発明の効果】
【００１７】
本発明によれば、ストレス印加後に書き換え後の期待値情報に特性が安定するまでの時間として第１の時間を有するセルにおいても、ベリファイ動作の精度の向上を図るとともに、書き込みシーケンスの総時間を短縮し、ベリファイ動作に要する時間を短縮することができる。
【図面の簡単な説明】
【００１８】
【図１】本発明の半導体記憶装置の構成を示す図である。
【図２】図１のメモリアレイの構成を示す図である。
【図３】図１のメモリアレイの構成を示す図である。
【図４】比較例１の相変化メモリの書き込みシーケンスを説明する関連図である。
【図５】ベリファイ読み出し前にインターバルを設けた比較例２の書き込みシーケンスを説明する図である。
【図６】本発明の第１の実施形態の書き込みシーケンスを説明する図である。
【図７】本発明の第２の実施形態の書き込みシーケンスを説明する図である。
【図８】本発明の第３の実施形態の書き込みシーケンスを説明する図である。
【発明を実施するための形態】
【００１９】
本発明の課題を解決する技術思想（コンセプト）の代表的な一例は、以下に示される。但し、本願の請求内容はこの技術思想に限られず、本願の請求項に記載の内容であることは言うまでもない。
【００２０】
本発明によれば、記憶情報の書き換え後に期待値（書き込み元データ）との検証が必要なセル（図２の１０１−１）において、前記セルは、前記書き換えに伴うストレス印加後から第１の時間経過後に前記期待値への情報の遷移が完了するセルであり、複数の前記セルの書き換えを時系列的に順次行い、その後に前記順次書き換えられた複数のセルの順序でそれぞれ対応する複数の期待値と比較するベリファイを行うシーケンス制御を有し、よって、前記複数のセルのそれぞれのセルが、前記ストレス印加後からベリファイを行うまでの期間を、前記第１の時間よりも長くした、不揮発性半導体装置の制御方法が提供される。以下、添付図面を参照しながら、本発明の好ましい実施の形態について詳細に説明する。
【００２１】
本発明においては、コマンド入力からの一連のデータ書き込み動作の際、メモリセルへのデータ書き込みとベリファイ読み出しを複数回に時分割して（フェーズに分けて）行う不揮発性メモリを備えた半導体装置において、書き込み、読み出しシーケンスを工夫することにより、無動作期間を極力作ることなく、セルへの書き込み終了からベリファイ読み出しが開始されるまでの一定期間（前記第１の時間より長い）をそれぞれ複数のセルにおいて確保している。
【００２２】
ＰＣＥを用いたメモリにおいて、一連の書き込み動作にて例えば数Ｋｂｙｔｅ（キロバイト、１Ｋ＝１０２４、１ｂｙｔｅ＝８ビット））に及ぶ複数のデータを対応する複数のセル（１０２４×８の数倍個のセル）に書き込む場合、セルへのデータ書き込みを複数回に時分割することを示す複数フェーズ（時分割の１単位）に分けて行うことがある。すなわち、１フェーズ内では、当該フェーズに対応するビット数分の複数のセルにデータが同時に書き込まれる。これにより、同時に書き込むビット数を減らすことができ、一度に消費する電流量を緩和できる。
【００２３】
以下の実施形態にて、本発明が適用される装置構成、アレイ構成ならびに上記動作の詳細を示す。
【００２４】
図１は、本発明の一実施形態の半導体装置の構成例を示す図である。図１を参照すると、この半導体装置は、入力回路としてコマンド（チップイネーブル／ＣＥ、コマンドラッチイネーブルＣＬＥ、アドレスラッチイネーブルＡＬＥ、ライトイネーブル／ＷＥ、リードイネーブル／ＲＥ、ライトプロテクト／ＷＰ）が入力されるコマンドディテクタ１１１を備えている。
【００２５】
コマンドラッチイネーブルＣＬＥはコマンドをデバイス内部のコマンドレジスタ１１４への取り込みをコントロールするための信号であり、ライトネーブル／ＷＥの立ち上がり、立下り時にＨｉｇｈレベルとすることによりＩ／Ｏ端子上のデータがコマンドとしてコマンドレジタ１１４に取り込まれる。
【００２６】
アドレスラッチイネーブルＡＬＥは、アドレス信号、データ信号をデバイス内部のアドレスレジスタ１１６、データレジスタ１０６への取り込みをコントロールするための信号であり、／ＷＥの立ち上がり、立下り時にＡＬＥをＨｉｇｈレベルとすることによりＩ／Ｏ端子上のデータがアドレスデータとしてアドレスレジスタ１１６に取り込まれ、またＡＬＥをＬｏｗレベルとすることによりＩ／Ｏ端子上のデータが入力データとしてデータレジスタ１０６に取り込まれる。
【００２７】
チップイネーブル／ＣＥはデバイス選択信号であり、例えばリード状態でＨｉｇｈとするとスタンバイモードとなる。ライトイネーブル／ＷＥは、Ｉ／Ｏ端子からのデータをデバイス内部に取り込むための書き込み信号である。リードイネーブル／ＲＥはデータを出力（シリアル出力）させる信号である。Ｉ／Ｏ１〜８はアドレス、コマンド、データを入出力するポートである。ライトプロテクト／ＷＰは、書き込み、消去動作を禁止しデータを保護するための制御信号である。通常は／ＷＰ＝Ｈｉｇｈとし、電源投入遮断時等に、／ＷＰ＝Ｌｏｗとする。ＲＹ／ＢＹは、デバイスの内部状態を外部に通知する信号であり、オープンドレイン構成のｎＭＯＳトランジスタ１２１のドレイン出力とされる。プログラム・消去・リード動作時等の動作実行中、ｎＭＯＳトランジスタ１２１のゲートはＨｉｇｈ電位とされ、ターンオン（導通）し、ＲＹ／ＢＹ＝Ｌｏｗ（Ｂｕｓｙ）とされ、動作が完了すると、ｎＭＯＳトランジスタ１２１のゲートはＬｏｗ電位とされ、ＲＹ／ＢＹは電源電位にプルアップされ、ＲＹ／ＢＹ＝Ｈｉｇｈ（Ｒｅａｄｙ）とされる。
【００２８】
入出力回路として、コマンド、アドレス、データ（Ｉ／Ｏ：１〜８）が入出力されるＩ／Ｏコントロール１１２を備えている。
【００２９】
コマンドレジスタ１１４はＩ／Ｏコントロール１１２から出力された命令コマンド情報を制御ロジック１１３に入力する。
【００３０】
アドレスレジスタ１１６はＩ／Ｏコントロール１１２から出力されたアドレス情報を、Ｒｏｗ（ロウ）アドレスバッファ１１７およびＣｏｌｕｍｎアドレスバッファ１１８に入力する。なお、図１の半導体装置には、アドレス端子がないため、例えばアドレス信号（＞８ビット）は８ビット単位で複数サイクルに時分割して入力される。
【００３１】
制御ロジック１１３は、コマンドディテクタ１１１、コマンドレジスタ１１４からの出力を入力とし、各種制御信号をアレイ周辺の各回路に出力する。Ｒｏｗアドレスバッファ１１７はアドレスレジスタ１１６より出力されたＲｏｗアドレスをＲｏｗデコーダ１０２に出力する。Ｒｏｗデコーダ１０２は、Ｒｏｗアドレスに対応してメモリセルアレイ１０１内のワード線（不図示）を選択する。Ｃｏｌｕｍｎアドレスバッファ１１８は、Ｉ／Ｏコントロール１１２より出力されたＣｏｌｕｍｎスタートアドレスをカラムデコーダ１０７に出力する。
【００３２】
図１に示した半導体装置は、全Ｃｏｌｕｍｎアドレス数と同数のデータレジスタ１０６（例えば数Ｋｂｙｔｅｓ（キロバイト）の容量）を備えている。データレジスタ１０６には、メモリセルアレイ１０１と対応したＣｏｌｕｍｎアドレスが割り付けられている。１度の書き込み動作において、例えばＣｏｌｕｍｎスタートアドレスに０番地（原点）が選択され、全Ｃｏｌｕｍｎアドレス数に対応するデータ（ｂｙｔｅ単位）がシリアル入力された場合、データレジスタ１０６において、データの入力順に、Ｃｏｌｕｍｎアドレスの０番地から順次対応したデータがデータレジスタ１０６の該当番地に書き込まれる。
【００３３】
データレジスタ１０６に保持されたデータは、Ｉ／Ｏ１〜Ｉ／Ｏ８よりコントロール１１２に入力されるコマンド入力（書き込みコマンド）をトリガーとして、制御ロジック１１３の制御のもと、メモリセルアレイ１０１に書き込まれる。
【００３４】
一方、Ｃｏｌｕｍｎスタートアドレスに、原点以外のアドレスが入力された場合は、データレジスタ１０６に対して、データ入力順に、データレジスタ１０６内の当該Ｃｏｌｕｍｎスタートアドレスからアドレス順に、順次データの書き込みがなされる。この際、Ｃｏｌｕｍｎの最終アドレスに対応するデータまで、Ｉ／Ｏコントロール１１２にデータが入力されなかった場合は、データが入力された最後のＣｏｌｕｍｎアドレスまで書き込みを行う。その後、Ｉ／Ｏ１〜Ｉ／Ｏ８よりコントロール１１２に入力されるコマンド入力をトリガーとして、制御ロジック１１３の制御のもと、データレジスタ１０６に保持されたデータはメモリセルアレイに書き込まれる。
【００３５】
データレジスタ１０６に書き込まれたデータは、ライトアンプ１０４を介して対応するメモリセルアレイ１０６のＣｏｌｕｍｎアドレスのビット線に出力され、選択されたワード線と該ビット線の交点のセルにデータが書き込まれる。書き込みデータの値（０／１）に応じて、セルのＰＣＥは、高抵抗のリセット状態、又は低抵抗のセット状態に書き込まれる。
【００３６】
この際、書き込みデータは数ｋＢｙｔｅｓに及ぶため、データ書き込みを複数回に時分割して、すなわち、複数フェーズに分けて行う。時分割は、Ｃｏｌｕｍｎアドレスを複数に分割し、分割されたアドレス単位ごとに、メモリセルアレイ１０１への書き込みを行う。これにより、同時に書き込まれるセルの数を減らすことができる。
【００３７】
例えば、複数回に時分割して行う書き込みのうち最初に書き込むデータ群をフェーズ１（Ｐｈａｓｅ１）とし、順に、フェーズ２（Ｐｈａｓｅ２）、フェーズ３（Ｐｈａｓｅ３）、・・・と、時分割状態を割り当てる。この時分割制御は、Ｐｈａｓｅコントロール１１９で行う。Ｐｈａｓｅカウンタ１２０は、アクセス対象のフェーズを制御するためのカウンタであり、フェーズの値１からを順に繰り上げていく。例えばＣｏｌｕｍｎアドレスがＮ、１つのフェーズで同時に書き込むセル数（選択Ｃｏｌｕｍｎの本数）をＭとし、フェーズの個数をＫとすると、Ｎ＝Ｍ×Ｋの関係が成り立つ。よって、Ｐｈａｓｅカウンタ１２０は、コラムの上位アドレスに相当する。
【００３８】
メモリセルアレイ１０１からのデータ読み出し時においても、データ書き込みと同様にして、時分割制御を行う。
【００３９】
時分割制御は、Ｐｈａｓｅコントロール１１９によって、センスアンプ１０３、Ｃｏｌｕｍｎデコーダ１０７等の各回路を制御することによって行う。
【００４０】
セルデータの読み出し動作の場合、時分割に読み出した情報を、データレジスタ１０６に順次保存して行き、読み出しデータを全てデータレジスタ１０６に保存した後に、Ｉ／Ｏコントロール１１２から入力される出力コマンドをトリガーとして、制御ロジック１１３の制御のもと、Ｉ／Ｏコントロール１１２を介して、Ｉ／Ｏ１〜Ｉ／Ｏ８に読み出しデータを出力する。
【００４１】
なお、ステータスレジスタ１１５は、書き込みのパス、フェイル等のステータス情報が、制御ロジック１１３より設定され、このステータス情報は、書き込み動作の完了時等に、Ｉ／Ｏコントロール１１２からＩ／Ｏ１〜Ｉ／Ｏ８に出力される。
【００４２】
また、ＲＹ／ＢＹは、メモリセルアレイ１０１へのデータ書き込み期間およびメモリセルアレイ１０１からのデータ読み出し期間中、低インピーダンスとなり（ｎＭＯＳトランジスタ１２１は導通）、この間のコマンド入力は無効となる。動作完了後、オープンドレインのｎＭＯＳトランジスタ１２１は非導通となり、ＲＹ／ＢＹは半導体装置の外付けロード回路等によりＨｉｇｈ電位にプルアップされる。
【００４３】
図１を参照すると、本実施形態の半導体装置は、判定レジスタ１０５を具備している。判定レジスタ１０５は、Ｃｏｌｕｍｎアドレス数と同数のデータを保持することができ、メモリセルアレイ１０１内のＣｏｌｕｍｎアドレスと対応したアドレス割付がなされている。判定レジスタ１０５は、Ｃｏｌｕｍｎアドレス数分のセルのパス／フェイル情報を保持する。
【００４４】
図２は、図１の本実施形態のメモリセルアレイ（メモリアレイ）とその周辺回路の構成例を示す図である。図２に示すように、メモリセルアレイ１０１と、メモリセルアレイ１０１内の選択ワード線１００−３を駆動するワード線ドライバ１０８と、Ｒｏｗデコーダ１０２と、メモリセルアレイ１０１内のビット線１００−２を選択するビット線セレクタ１０９と、センスアンプ１０３と、ライトアンプ１０４を備えている。ビット線１００−２とワード線１００−３の交差部に、ＰＣＥ（不図示）を含むセル１００−１を備えている。セル１００−１の内部構成は例えば特許文献２、３等が参照される。ＭＯＳ型のセル１００−１は、例えばゲート電極がワード線に接続されたｎＭＯＳトランジスタと、相変化抵抗としてビット線と当該ｎＭＯＳトランジスタのドレイン電極との間に接続されたＰＣＥを備えている。
【００４５】
ライトアンプ１０４およびセンスアンプ１０３は、データレジスタ１０６および判定レジスタ１０５との間でデータの転送を行う。データ書き込み時のライトアンプ１０４によるライトパルスの生成等については、特許文献１乃至３等の記載が参照される。
【００４６】
Ｒｏｗデコーダ１０２はＲｏｗアドレスにて選ばれたＸアドレスをデコードし、ワード線ドライバ１０８によって選択されたワード線１００−３を活性化する。
【００４７】
Ｃｏｌｕｍｎデコーダ１０７は、ｐｈａｓｅコントロール１１９によって制御され、各Ｃｏｌｕｍｎアドレスに対応したビット線１００−２を、フェーズ群ごとに選択する。
【００４８】
図２の構成では、一例として、３ビットのセル１００−１にて１フェーズを構成し、３ビット単位で同時書き込み、読み出しが行われる。
【００４９】
フェーズの変更は、Ｐｈａｓｅコントロール１１９からの制御によりＣｏｌｕｍｎデコーダ１０７からの情報（選択Ｃｏｌｕｍｎ）を受けるビット線セレクタ１０９でセンスアンプ１０３／ライトアンプ１０４に接続する複数のビット線１００−２を切り替えることにより行う。図１のＰｈａｓｅカウンタ１２０のカウント値（＝フェーズ番号に対応）を受けるＰｈａｓｅコントロール１１９が、当該選択されたフェーズに対応するＣｏｌｕｍｎアドレスをＣｏｌｕｍｎデコーダ１０７に供給し、Ｃｏｌｕｍｎデコーダ１０７が選択フェーズに対応するＣｏｌｕｍｎのビット線を選択するようにビット線セレクタ１０９を制御する。
【００５０】
本実施形態において、同時書き込み、読み出し動作するセル数は、センスアンプ１０３、ライトアンプ１０４の数と基本的に等しくなる。図２の例では、センスアンプ１０３が３個、ライトアンプ１０４が３個あり、同時書き込み、同時読み出し動作するセル数は３個である。同時書き込み、同時読み出し動作するセル数が３の場合、ビット線総数Ｎ、フェーズの数Ｋ（第１乃至第Ｋフェーズ）は、３×Ｋ＝Ｎの関係を満たす。
【００５１】
なお、図２には、簡略化のために３セルでの同時書き込みの例が示されているが、図１の装置構成では、データの入出力はバイト単位となるため、実際には少なくとも８セルの同時書き込みとなる。フェーズ群の数および同時書き込み数の数は任意に設定可能となる。
【００５２】
本実施形態においては、図３に示すように、図２のメモリセルアレイ１０１を複数のサブメモリアレイ１０１Ｓに細分化してもよい。特に制限されないが、図３に示す例では、図２のメモリセルアレイ１０１は、２×３＝６個のサブアレイ１０１Ｓに分割され、各サブアレイに対応して、Ｒｏｗデコーダ１０２、ワード線ドライバ１０８、Ｃｏｌｕｍｎデコーダ１０７、ビット線セレクタ１０９、センスアンプ１０３、ライトアンプ１０４を備え、データレジスタ１０６、判定レジスタ１０５は、各サブアレイ列の２つのセンスアンプ１０３、２つのライトアンプ１０４に接続される。
【００５３】
図３の構成の場合、サブアレイ単位で書き込みと読み出しを同時に行うことが可能であり、１フェーズ当りの同時書き込み数、読み出し数は６（＝サブアレイの個数＝センスアンプの個数＝ライトアンプの個数）となる。すなわち、上段の３つのサブアレイからそれぞれ１つのセル、下段の３つのサブアレイからそれぞれ１つのセルが同時に選択される。図３の構成において、上段の３つのサブアレイ分の全Ｃｏｌｕｍｎアドレス数と、下段の３つのサブアレイ分の全Ｃｏｌｕｍｎアドレス数の和と同数のデータレジスタ１０６を備えている。判定レジスタ１０５も、上段の３つのサブアレイ分の全Ｃｏｌｕｍｎアドレス数、下段の３つのサブアレイ分の全Ｃｏｌｕｍｎアドレス数の和と同数のセル情報（パス／フェイル）を保持する。
【００５４】
本実施形態では、同時書き込み動作及び同時読み出し動作するセル数は、センスアンプ１０３、ライトアンプ１０４の数と等しいが、それらは必ず同数である必要は無く、同時に書き込み、読み出し動作するセル数に比べ、センスアンプ数、ライトアンプ数がそれぞれ同数か同数以上存在していればよい。たとえば、図示していないが、ビット線セレクタの一部のスイッチの制御にＲｏｗアドレスが割り当てられた場合等に相当する。
【００５５】
相変化メモリにおいて時分割（フェーズ単位）でデータの書き込みを行う場合、ベリファイ動作はフェーズ単位で書き込み、読み出しが繰り返えされることになる。このため、データ書き込みの終了からデータ読み出しの開始までの時間は極めて短く、上記のように、定常状態の抵抗値とは異なる抵抗値を読み出てしまう可能性がある。
【００５６】
以下では、まず比較例について図４、図５を参照して説明する。いずれの比較例も本発明の手法と異なる。
【００５７】
＜比較例１＞
図４には、比較例１として、
１つのセルへの書き込み時間を２００ｎｓ、
書き込みから読み出しへの切り替え時間を２０ｎｓ、
読み出し時間を２００ｎｓ、
フェーズ切り替え時間を２０ｎｓ、
フェーズ分割数を６４
とした場合における、フェーズ単位でのベリファイ動作のシーケンスが示されている。尚、書き込みから読み出しへの切り替え時間は制御ロジック１１３及び制御ロジックから制御される複数の回路に関連する時間、フェーズ切り替え時間はフェーズコントロール１１９及びフェーズコントロールから制御される複数の回路に関連する時間、読み出し時間は判定レジスタ１０５による判定時間を含む。
【００５８】
図４の「フェーズ」は書き込み、読み出し時の同時動作のデータ単位を示している。図４において、フェーズの読み出しから書き込みへの矢線の「ｖｅｒｉｆｙ  ｆａｉｌ」は、当該フェーズの読み出しシーケンスで読み出したセルデータの全てまたは一部が当該セルへの書き込みデータ（期待値）と相違しており、該セルがフェイル（ベリファイ・フェイル）であるため、再書き込みを行うことを表している。
【００５９】
図４の場合、同一フェーズにおける書き込み終了から読み出し開始までの時間が２０ｎｓと短く、読み出し開始時においてセル抵抗が過渡状態（ｔｒａｎｓｉｅｎｔ  ｓｔａｔｅ）となっているため、安定したベリファイ動作を行えない可能性がある。
【００６０】
＜比較例２＞
図５の比較例２の場合、書き込み終了から読み出し開始への切り替え時間を増加（例えば１ｕｓ）することで、比較例１の上記問題を回避している。すなわち、
１つのセルへの書き込み時間を２００ｎｓ、
書き込みから読み出しへの切り替え時間を１ｕｓ、
読み出し時間を２００ｎｓ、
フェーズ切り替え時間を２０ｎｓ、
フェーズ分割数を６４
としている。
【００６１】
しかしながら、比較例２では、書き込みから読み出しへの切り替え時間をセル抵抗が過渡抵抗値である過渡状態から定常抵抗値へ脱するまでの時間に対応させて増加したことにより、安定したベリファイ動作を実現できるものの書き込みのスループットが大幅に低下するという問題がある。
【００６２】
ここで、ベリファイ動作は、例えば、図１のライトアンプ１０４における書き込みデータと、センスアンプ１０３における読み出しデータを判定レジスタ１０５により比較することで行われ、フェイルが検出された場合、当該セルへの再書き込みが行われ、フェーズ内の全てのセルがパスするまで、再書き込み、読み出しのループを繰り返す。
【００６３】
書き込みデータは、データレジスタ１０６からライトアンプ１０４に、フェーズごとに転送される。
【００６４】
１つのフェーズ内（例えばフェーズ０）でパスしたセルについては、同一フェーズにおいてベリファイフェイルしたセルによってルーチンが繰り返されるが、その繰り返しルーチンでは前記パスしたセルへの書き込みおよび読み出しはマスクされる。マスクとは、例えばライトアンプ１０４を非活性とし、当該セルへの書き込みの為のストレス印加を行わない（リセット電流またはセット電流を流さない）制御を行う。
【００６５】
システムによっては、同一フェーズにて、予め定められた規定回数ベリファイしても、フェーズ内の全てのセルがパスしなかった場合は、制御ロジック１１３およびステータスレジスタ１１５（図１参照）を通して、外部コマンドをトリガーとして、ステータスレジスタ１１５で保持される書き込み失敗のステータス情報を、Ｉ／Ｏ１〜Ｉ／Ｏ８（図１参照）より、外部に出力する。
【００６６】
＜実施例１＞
図６は、図１乃至図３を参照して説明した本発明の実施例１の動作を説明する図である。本実施例では、セル抵抗が過渡抵抗値である過渡状態から定常抵抗値へ脱するまでの時間に対応させるも、書き込みのスループットの大幅な低下を引き起こさずに、書き込み終了からベリファイ読み出しまでのインターバルを確保している。図６には、本実施例におけるベリファイ動作を含む書き込みシーケンスが模式的に示されている。以下の値に特に制限されるものではないが、図６では、
書き込み時間＝２１０ｎｓ／フェーズ（フェーズ切り替え時間を含む）、
読み出し時間＝２１０ｎｓ／フェーズ（フェーズ切り替え時間を含む）、
フェーズ数＝６４、
書き込みと読み出しの切り替え時間＝２０ｎｓ、
としている。
【００６７】
フェーズ０〜６３の書き込み、読み込みは、マスクの有無に関わらず、２１０ｎｓ×６４＝１３．４４ｕｓとなる。
【００６８】
本実施例では、ベリファイ動作（第１ベリファイ動作）として、
まず、フェーズ０〜６３の順（昇順）に、各フェーズの複数セルへのデータの書き込みを行い、
その後、フェーズ０〜６３の順（昇順）に、各フェーズの複数セルからデータの読み出し（ベリファイ読み出し）を行う。
【００６９】
なお、フェーズ６３〜０の順にデータの書き込みを行い、その後、フェーズ６３〜０の順（降順）にデータの読み出しを行ってもよい。
【００７０】
ベリファイ読み出しのシーケンスで取得されたフェーズ内の各セルにおけるパス／フェイル情報は判定レジスタ１０５で保持される。
【００７１】
次のベリファイ動作（第２ベリファイ動作）では、判定レジスタ１０５のデータをライトアンプ１０４に読み出し、フェイルとなるセルが存在するフェーズについてのみ、データレジスタから読み出した書き込みデータを用いて再書き込みを行い、それ以外のフェーズ（フェイルセルが存在せず、パスしたフェーズ）では、全ての書き込みをマスクする。
【００７２】
また、フェイルしたセルが存在するフェーズにおいても、当該フェーズの中のパスしたセルに対しては書き込みをマスクする（書き込みは行わない）。
【００７３】
該当フェーズが再書き込みを行うものであるか否かの判定は、例えば判定レジスタ１０５の当該フェーズに属するセルの情報（パス／フェイル情報）の全ての論理和情報を取ることで判断する。１つのフェーズで８個のセルのデータを同時に読み出し、各セルのパス／フェイルの判定結果を判定レジスタ１０５に保存する構成の場合、該８個のセルが全てパス（フェイル情報＝０）の場合、これら８個セル情報の論理和は０となる。該８個のセルのうち一つのセルでもフェイルした場合（該当フェイルセルのフェイル情報１）、該８個のセルのセル情報の論理和は１となり、当該フェーズがフェイル、すなわち再書き込みが必要なフェーズであることが分かる。
【００７４】
この際、書き込みを行わない（フェーズに属するセルが全てパスし、再書き込みがマスクされた）フェーズも、書き込み時間を詰めず（ルーチンをスキップせずに）に、本来それに掛かる必要な時間だけ待機する。図６の第２ベリファイ動作におけるフェーズ単位の時分割書き込みシーケンスにおいて書き込みがマスクされるフェーズ０、２、・・・６１、６３にも２１０ｎｓが割当てられており、各フェーズで２１０ｎｓ待機することになる。この理由は、仮に再書き込みのフェーズが一つのみ（フェーズ０のみ）となった場合、フェーズ１〜６３の書き込み動作に掛かる時間をスキップしてフェーズ０の読み出しに移行すると、比較例１の様にセル抵抗が過渡抵抗値である過渡状態から定常抵抗値へ脱するまでの時間を確保できないからである。
【００７５】
第２ベリファイ動作以降、セルからのデータの読み出し（ベリファイ読み出し）は、マスクの有無に関わらず、全フェーズにて行う。この際、前回のベリファイ動作でパスしたセルおよびフェーズは再度読み出すことになるため、抵抗値を再度チェックすることになり、不安定なビットの抽出が容易となる。ただし、この抵抗値の再チェックは必ず必要という訳ではなく、読み出し時の消費電力削減を目的として、パスしたセルおよびフェーズに対する読み出しをマスクしてもよい。この場合対応する判定回路はインヒビットまたは入力データに係わらず出力をパススルーに制御する。読み出しをマスクしたフェーズも、読み出し時間分を詰めずに、待機しておく。実施例１では読み出しをマスクしたフェーズにも、２１０ｎｓが割当てられており、当該フェーズで２１０ｎｓの時間待機する。この理由は、仮に再書き込みのフェーズが一つのみ（フェーズ６３のみ）となった場合、フェーズ０〜６２の読み出し動作に掛かる時間をスキップしてフェーズ６３の読み出しに移行すると、比較例１の様にセル抵抗が過渡抵抗値である過渡状態から定常抵抗値へ脱するまでの時間を確保できないからである。
【００７６】
書き込みのマスクおよび読み出しのマスクの制御は、判定レジスタ１０５の情報を、ライトアンプ１０４、センスアンプ１０３に転送することにより行う。書き込みマスクが設定されたライトアンプ１０４は活性化されず、書き込みパルスを出力しない。読み出しマスクが設定されたセンスアンプ１０４は活性化されず、読み出しデータを出力しないこととしても良い。この場合、判定レジスタ１０５は、非活性化されたセンスアンプに対応する判定レジスタの出力を、その実際の比較結果によらずパスとする。更に、対応する比較自身を非活性化（マスク）してもよい。
【００７７】
実施例１のシーケンスを用いることにより、例えば図６の例では、同一セルにて書き込み終了から読み出し開始までの間には、常に、１３．２５ｕｓのタイム・インターバル（時間区間）を設けることができる。図６の第１ベリファイ動作において、例えばフェーズ０のセルへのデータ書き込みの終了時間と、フェーズ０のセルの読み出し開始時間との間には、（１３．４４ｕｓ−２１０ｎｓ）＋２０ｎｓ＝１３．２５ｕｓの時間間隔が設けられており、フェーズ１についても、同様にして、セルへのデータ書き込みの終了時間と、フェーズ０のセルの読み出し開始時間との間には、（１３．４４ｕｓ−２１０ｎｓ×２）＋２０ｎｓ＋２１０ｎｓ＝１３．２５ｕｓの時間間隔が設けられている。第１ベリファイ動作の他のフェーズ２〜６３、及び他のベリファイ動作についても同様とされる。
【００７８】
このベリファイ動作を全てのフェーズがパスするまで繰り返す。
【００７９】
なお、ベリファイ動作をＮ回（規定回数）行い、フェーズ内の全てのセルがパスしなかった場合には、制御ロジック１１３およびステータスレジスタ１１５を通して、コマンドの入力をトリガーとして、書き込み失敗のステータス情報をＩ／Ｏ１〜Ｉ／Ｏ８より外部に出力する。
【００８０】
また応用として(図示していないが)、ライト時の電流を削減するために、ライト時のみ上記に定義したフェーズの動作を更に時分割して動作させてもよい。例えば、ライト時の上記各フェーズを２分割した場合(各フェーズの同時書き込みセル数を１/２とし、２度動作させた場合)、ライトシーケンス期間は２倍に増加するが、ライト時のピーク電流は半減する。また、ビット線コントロール回路を工夫することによりライトアンプ数を１/２とすることができる。同様に読み出しシーケンスにおける各フェーズ動作のみを更に時分割してもよい。
【００８１】
＜実施例２＞
次に実施例２について説明する。前記実施例１では、第２ベリファイ動作以降のベリファイ動作における書き込みの際、パスしたフェーズも時間を詰めずに待機するため、必ず全てのフェーズの時間が必要であった。これに対して、実施例２ではセル抵抗が過渡抵抗値である過渡状態から定常抵抗値へ脱するまでの時間を確保しつつ、更なる時間短縮を行う方法を開示する。
【００８２】
実施例２では、読み出しのフェーズの順序の制御方法を工夫することによって再書き込みのフェーズを削減し、再書き込みセルを基準にして実施例１と比べてもインターバルを削減することなく、書き込み動作スループットを向上する。図７は、実施例２における、ベリファイ動作を説明する図である。
【００８３】
第１ベリファイ動作は、前記実施例１と同様に、全フェーズに対し順に書き込みを行い、その後、ベリファイ読み出しを行う。
【００８４】
この際、読み出しによって、フェイルビットの存在が確認されたフェーズは、フェイルフェーズとして、当該フェーズに対応させてフェイル情報を判定レジスタ１０５に保存する。
【００８５】
次の第２のベリファイ動作では、第１のベリファイ動作の結果、判定レジスタ１０５に保存された情報を読み出し、第１ベリファイ動作でフェイルと判定されたフェーズのみ順（例えば昇順）に、再書き込みを行う。
【００８６】
当該フェーズが、再書き込みを行うフェーズであるか否かの判定は、例えば、判定レジスタ１０５内の当該フェーズに属するセルの情報（例えばパス＝０、フェイル＝１）の全ての論理和を取ることで判断する。当該フェーズに属するセルの情報の論理和が１のとき、当該フェーズは再書き込み要と判定され、当該フェーズに属するセルの情報の論理和が０のとき、当該フェーズは再書き込み不要（書き込みマスク）と判定される。このとき、前回のベリファイ動作（第１ベリファイ動作）でパスしたフェーズには、待ち時間を設けない。すなわち、実施例２では、書き込みがマスクされるフェーズには時間２１０ｎｓの待機を行わず（この分、時間を詰める。つまりサブルーチンをスキップする）、次に書き込みが必要な次のフェーズへの書き込みが行われる。
【００８７】
第２ベリファイ動作の読み出しシーケンスでは、第２ベリファイ動作の書き込みシーケンスで最後に書き込んだフェーズの次のフェーズから、且つ、判定レジスタ１０５の情報を参照しながら、第２ベリファイ動作で書き込まなかったフェーズ（書き込みマスク対象のフェーズ）のみを順（例えば昇順）に読み出しを開始していく。
【００８８】
このように、第２ベリファイ動作の読み出しシーケンスにおいて、第２ベリファイ動作の書き込みシーケンスで最後に書き込んだフェーズ（図７ではフェーズ６２）の次のフェーズ（図７ではフェーズ６３）から、読み出しを開始することで、読み出しシーケンス開始時に、Ｐｈａｓｅカウンタ１２０（図１参照）のカウント値を０に強制リセットする必要はない。
【００８９】
第２ベリファイ動作の読み出しシーケンスにおいて、フェーズ６３読み出し後、書き込まなかったフェーズの最若番の値０に戻り、フェーズ２、４、・・・、６１と昇順に読み出しが行われる。なお、Ｐｈａｓｅカウンタ１２０はカウント値が６３（フェーズ６３に対応）に達すると、次に０からのアップカウントを開始する。第２のベリファイ動作の読み出しシーケンスにおいて、当該フェーズが、第２のベリファイ動作の書き込みシーケンスで書き込まなかったフェーズであるか否かの判定は、判定レジスタ１０５内に保持される当該フェーズに対応するセル情報に基づき行われる（第１のベリファイ動作のパスのフェーズは書き込みがマスクされる）。
【００９０】
実施例２において、第２ベリファイ動作の書き込みシーケンスで書き込まなかったフェーズ（図７の例では、０、２、４、・・・６１、６３）は、いずれも第１ベリファイ動作をパスしたフェーズではあるが、前記実施例１と同様に、第２ベリファイ動作の読み出しシーケンスで再度読み出す。これにより、当該フェーズのセルへの書き込みデータの再確認を行うことが可能である。ただし、前記実施例１と同様に、この抵抗値の再チェックは必ず必要という訳ではなく、読み出し時の消費電力削減を目的として、パスしたセルおよびフェーズに対する読み出しをマスクしてもよい。読み出しをマスクしたフェーズも、読み出し時間分を詰めずに、待機しておく。
【００９１】
書き込なかったフェーズの読み出しが終了すると、次に、判定レジスタ１０５を参照しながら、第２ベリファイ動作で書き込まれたフェーズ（図７では、フェーズ１、３、・・・６２）を順（昇順）に読み出していく。
【００９２】
実施例２によれば、このように読み出しの順番を工夫することにより、図７に示すように、書き込み終了から読み出し開始までに、常に１３．２５ｕｓ（＝１３．４４ｕｓ−２１０ｎｓ＋２０ｎｓ）のインターバルを設けることができる。
【００９３】
このベリファイ動作を全てのフェーズがパスするまで繰り返す。
【００９４】
これにより、前記実施例１と異なり書き込みがマスクされたフェーズの待機時間を削減しつつ、前記実施例１と同様に書き込み終了から読み出し開始までの間に十分なインターバルを設けることができる。すなわち、前記実施例１では、ベリファイ動作の書き込みにおいて、書き込みがマスクされる各フェーズにおいて２１０ｎｓの待機を行っていたが、本実施例では、ベリファイ動作の書き込み時間は、（書き込みが必要なフェーズの数）×２１０ｎｓとされ、(書き込みがマスクされるフェーズの個数)×２１０ｎｓ分の待機時間が圧縮（削減）される。これによっても、本実施例においては、書き込みと読み出しの切り替え時間＝２０ｎｓと読み出し時間＝１３．４４ｕｓは、前記実施例１と同様とされる。
【００９５】
図７に示すように、第１のベリファイ動作において、フェーズ０の書き込み終了と読み出し開始時間との間には、（１３．４４ｕｓ−２１０ｎｓ）＋２０ｎｓ＝１３．２５ｕｓの時間間隔が設けられており、他のフェーズも同様である。
【００９６】
第２のベリファイ動作において、フェーズ１の再書き込み終了と読み出し開始時間との間にも、１３．２５ｕｓの時間間隔が設けられている。図７の第１ベリファイ動作の書き込みシーケンスで再書き込みされたフェーズの個数をｎ個（１≦ｎ≦６４）とすると、読み出しシーケンスにおいてフェーズ１の前に読み出しが行われる、書き込まれなかったフェーズの個数は６４−ｎである。したがって、第２のベリファイ動作において、フェーズ１の再書き込み終了と読み出し開始時間までの時間間隔は、
（ｎ−１）×２１０ｎｓ＋２０ｎｓ＋（６４−ｎ）×２１０ｎｓ
＝（６４−１）×２１０ｎｓ＋２０ｎｓ
＝（１３．４４ｕｓ−２１０ｎｓ）＋２０ｎ＝１３．２５ｕｓ
となる。他のフェーズの再書き込み終了と読み出し開始時間までの時間間隔も同様に、１３．２５ｕｓとなる。
【００９７】
なお、ベリファイ動作をＮ回（規定回数）行い、同一フェーズ内の全てのセルがパスしなかった場合は、制御ロジック１１３およびステータスレジスタ１１５を通して、外部コマンドをトリガーとして、書き込み失敗のステータス情報をＩ／Ｏ１〜Ｉ／Ｏ８より外部に出力するようにしてもよい。
【００９８】
また応用として(図示していないが)、ライト時の電流を削減するために、ライト時のみ上記に定義したフェーズの動作を更に時分割して動作させてもよい。例えばライト時の上記各フェーズを２分割した場合(各フェーズの同時書き込み数を１/２とし、２度動作させた場合)、ライトシーケンス期間は２倍に増加するがライト時のピーク電流は半減する。また、ビット線コントロール回路を工夫することによりライトアンプ数を１/２とすることができる。同様に読み出しシーケンスにおける各フェーズ動作のみを更に時分割してもよい。
【００９９】
＜実施例３＞
前記実施例２では、第２ベリファイ動作以降において、書き込みシーケンスによる再書き込みの後の読み出しシーケンスにおいて、最後に書き込んだフェーズの次のフェーズから読み出している。実施例３では、これとは別の手法を提供する。図８は、実施例３を説明する図である。
【０１００】
図８に示すように、ベリファイ動作において、書き込みシーケンスで書き込まれなかったフェーズを、例えば、フェーズアドレスの若番順に読み出してもよい。図８に示す例では、第２のベリファイ動作、第Ｎのベリファイ動作において、最後に書き込んだフェーズ（図８ではフェーズ６２）の後の読み出し動作では、書き込みシーケンスで書き込まれなかったフェーズのうち、最後に書き込んだフェーズの次のフェーズ（フェーズ６２の次のフェーズ６３）ではなく、フェーズ０から順に読み出している。したがって、図１のＰｈａｓｅカウンタ１２０のカウント値が現在の６２から０に強制リセットされる。言い換えれば、Ｐｈａｓｅカウンタ１２０の初期化アドレス（所定のアドレス）から順に、ベリファイ動作を実行する。
【０１０１】
この実施例３においても、前記実施例２と同様に、書き込み終了から読み出しまでに、常に１３．２５ｕｓ（＝１３．４４ｕｓ−２１０ｎｓ＋２０ｎｓ）のインターバルを設けることができる。このベリファイ動作を全てのフェーズがパスするまで繰り返す。なお、ベリファイ動作をＮ回（規定回数）行い、フェーズ内の全てのセルがパスしなかった場合は、制御ロジック１１３およびステータスレジスタ１１５を通して、外部コマンドをトリガーとして、書き込み失敗のステータス情報をＩ／Ｏ１〜Ｉ／Ｏ８より外部に出力する。
【０１０２】
上記実施例によれば、セル抵抗が過渡抵抗値である過渡状態から定常抵抗値へ脱するまでの時間を確保しつつ、書き込みのスループットの大幅な低下を引き起こさずに、書き込み終了からベリファイ読み出し開始までのインターバルを確保することができる。
【０１０３】
本発明の技術思想は、様々な半導体装置に適用することができる。例えば、例えば、それぞれが相変化メモリ素子を含むＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、ＭＣＵ（Ｍｉｃｒｏ  Ｃｏｎｔｒｏｌ  Ｕｎｉｔ）、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）、ＡＳＳＰ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｓｔａｎｄａｒｄ  Ｐｒｏｄｕｃｔ）、メモリ（Ｍｅｍｏｒｙ）等の不揮発性半導体装置の制御方法全般に、本発明を適用することができる。このような本発明が適用された半導体装置の製品形態としては、例えば、ＳＯＣ（システムオンチップ）、ＭＣＰ（マルチチップパッケージ）やＰＯＰ（パッケージオンパッケージ）などが挙げられる。これらの任意の製品形態、パッケージ形態を有する不揮発性半導体装置に対して本発明を適用することができる。
【０１０４】
なお、上記の複数の特許文献、非特許文献の各開示を、本書に引用をもって繰り込むものとする。本発明の全開示（請求の範囲を含む）の枠内において、さらにその基本的技術思想に基づいて、実施例ないし実施例の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素の多様な組み合わせないし選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。
【符号の説明】
【０１０５】
１００−１  セル
１００−２  ビット線
１００−３  ワード線
１０１  メモリセルアレイ
１０１Ｓ  サブメモリアレイ
１０２  Ｒｏｗ（ロウ）デコーダ
１０３  センスアンプ（ＳＡ）
１０４  ライトアンプ（ＷＡ）
１０５  判定レジスタ
１０６  データレジスタ
１０７  Ｃｏｌｕｍｎ（カラム）デコーダ
１０８  ワード線ドライバ
１０９  ビット線セレクタ
１１１  コマンドディテクタ
１１２  Ｉ／Ｏコントロール
１１３  制御ロジック
１１４  コマンドレジスタ
１１５  ステータスレジスタ
１１６  アドレスレジスタ
１１７  Ｒｏｗ（ロウ）アドレスバッファ
１１８  Ｃｏｌｕｍｎ（カラム）アドレスバッファ
１１９  Ｐｈａｓｅ（フェーズ）コントロール
１２０  Ｐｈａｓｅ（フェーズ）カウンタ
１２１  ｎＭＯＳトランジスタ