(57)【特許請求の範囲】
【請求項１】
複数のメモリセルを有するメモリアレイと、
前記メモリアレイに接続され、制御信号に応答して書き込み操作を行うように構成されたメモリアクセス回路と、
前記メモリアクセス回路に接続され、少なくとも部分的には、前記メモリアクセス回路によって行われた書き込み操作の数に応じた一連の書き込みパラメータを適用するように構成され、前記一連の書き込みパラメータに応じて前記複数のメモリセルに書き込み操作を行うために、前記メモリアクセス回路に制御信号を提供するようにさらに構成された制御ロジックと、
複数の書き込みサイクルビンを定義するパラメータテーブル
を備え、
前記パラメータテーブルは、前記複数の書き込みサイクルビンの各々について、書き込み操作の最小数、および、書き込み操作の最大数を含み、
第１の書き込みサイクルビンを定義する第１の範囲は、少なくとも部分的に、第２の書き込みサイクルビンを定義する第２の範囲と重複する
装置。
【請求項２】
前記制御ロジックは、一連の書き込みパラメータを選択するために、前記メモリアクセス回路によって行われた書き込み操作の数を、前記複数の書き込みサイクルビンと比較するように構成される
請求項１に記載の装置。
【請求項３】
前記パラメータテーブルは、前記メモリアレイ中に格納される
請求項１に記載の装置。
【請求項４】
前記複数のメモリセルは、１つ以上の相変化メモリセルを含む
請求項１に記載の装置。
【請求項５】
前記メモリアレイ中の前記メモリアクセス回路によって行われた書き込み操作の数を格
納するように構成された書き込みカウント回路を、さらに備える
請求項１に記載の装置。
【請求項６】
前記複数のメモリセルは、３次元クロスポイントアレイ中に配置される
請求項１に記載の装置。
【請求項７】
前記一連の書き込みパラメータは、プログラミング電圧振幅、パルス継続時間、パルス形状、前縁、および、後縁の少なくとも１つを含む
請求項１に記載の装置。
【請求項８】
前記制御ロジックは、メモリ装置用の一連の書き込みパラメータを確立するためのコマンドの受信に応答して、一連の書き込みパラメータを適用するように、さらに構成される
請求項１に記載の装置。
【請求項９】
複数のメモリセルを含み、一連の書き込みパラメータに基づいて、前記複数のメモリセルに情報を格納するように構成されたメモリ装置を含み、
前記メモリ装置の前記複数のメモリセルのサブセットに格納されたパラメータテーブルをさらに含み、前記パラメータテーブルは、前記一連の書き込みパラメータに対応する一連の書き込みサイクルビンを格納するように構成され、
前記パラメータテーブルは、前記書き込みサイクルビンの各々について、書き込み操作の最小数、および、書き込み操作の最大数を含み、
第１の書き込みサイクルビンを定義する第１の範囲は、少なくとも部分的に、第２の書き込みサイクルビンを定義する第２の範囲と重複する
装置。
【請求項１０】
前記メモリ装置によって行われた書き込み操作の数を格納するように構成された書き込みカウント回路を、さらに備える
請求項９に記載の装置。
【請求項１１】
前記メモリ装置によって行われた書き込み操作の数と、一連のビンに基づいて、一連の書き込み操作パラメータが選択される
請求項１０に記載の装置。
【請求項１２】
一連の書き込みパラメータに基づいて、複数のメモリセルにデータを格納するように構成されたメモリアクセス回路と、
前記複数のメモリセルの一部に格納されたパラメータテーブルと、
前記メモリアクセス回路に接続された制御ロジック
を含み、
前記パラメータテーブルは、複数の一連の書き込みパラメータに対応する複数の書き込みサイクルビンを含み、
前記制御ロジックは、メモリアクセス回路によって行われる書き込み操作の数に基づいて、少なくとも２つの書き込みサイクルビンを決定し、決定された書き込みサイクルビンに基づいた複数の一連の書き込みパラメータから、前記一連の書き込みパラメータを適用するように、構成され、
前記書き込みサイクルビンの各々は、書き込み操作の最小数、および、書き込み操作の最大数を有する書き込み操作の範囲により定義され、
第１の書き込みサイクルビンを定義する第１の範囲は、少なくとも部分的に、第２の書き込みサイクルビンを定義する第２の範囲と重複する
装置。
【請求項１３】
前記第１の範囲は、少なくとも１桁分、前記第２の範囲と重複する
請求項１２に記載の装置。
【請求項１４】
前記制御ロジックに接続され、前記複数のメモリセルによって行われた書き込み操作の数を格納するように構成された書き込みカウント回路を、さらに備える
請求項１２に記載の装置。
【請求項１５】
前記一連の書き込みパラメータは、プログラミング電圧振幅、パルス継続時間、パルス形状、前縁、および、後縁の少なくとも１つを含む
請求項１２に記載の装置。
【請求項１６】
メモリ装置で行われた書き込み操作の数を特定することと、
少なくとも一部は、前記メモリ装置で行われた書き込み操作の数に基づいて、書き込みパラメータを調整することと、
調整された書き込みパラメータを、書き込みコマンドに応答する複数のメモリセルに書き込み操作を行うために適用すること
を含み、
少なくとも一部は、前記メモリ装置で行われた前記書き込み操作の数に基づいて、書き込みパラメータを調整することは、
適用可能な書き込みサイクルビンを決定するために、制御ロジックによって、前記書き込み操作の数を複数の書き込みサイクルビンと比較することと、
少なくとも一部は前記適用可能な書き込みサイクルビンに基づいて、一連の適用可能な書き込みパラメータを特定することと、
前記特定された一連の適用可能な書き込みパラメータに従って、前記書き込みパラメータを調整する
ことを含み、
前記複数の書き込みサイクルビンは、書き込み操作の最小数、および、書き込み操作の最大数を有する書き込み操作の範囲により定義され、
第１の書き込みサイクルビンの第１の範囲は、第２の書き込みサイクルビンの第２の範囲と重複する
方法。
【請求項１７】
前記調整された書き込みパラメータに従って、前記複数のメモリセルに、少なくとも１つの書き込み操作を実行すること
をさらに含む請求項１６に記載の方法。
【請求項１８】
前記メモリ装置への電源の投入もしくは切断に応答して、前記書き込み操作の数を特定する
請求項１６に記載の方法。
【請求項１９】
前記書き込み操作の数は、周期的に更新される
請求項１６に記載の方法。
【請求項２０】
前記複数の書き込みサイクルビンの各々は、異なる一連の書き込みパラメータに関連付けられている
請求項１６に記載の方法。
【請求項２１】
前記書き込み操作の範囲の各々は、隣接する書き込み操作の範囲と重複する
請求項１６に記載の方法。
【請求項２２】
前記書き込みパラメータを調整することは、メモリ装置用の一連の書き込みパラメータを確立するためのコマンドの受信への応答である
請求項１６に記載の方法。
【請求項２３】
制御ロジックによって、メモリ装置のための一連の書き込みパラメータを確立するためのコマンドを受信することと、
前記制御ロジックによって、前記メモリ装置によって行われた書き込み操作の現在の数を受信することと、
前記制御ロジックによって、複数の書き込みサイクルビンを定義するパラメータテーブルを受信することと、
適用可能な書き込みサイクルビンを決定するために、前記制御ロジックによって、書き込み操作の現在の数と前記複数の書き込みサイクルビンを比較することと、
少なくとも部分的に、適用可能な書き込みサイクルビンに基づいて、前記一連の書き込みパラメータを前記メモリ装置に提供すること
を含み、
前記複数の書き込みサイクルビンの各々は、書き込み操作の最小数、および、書き込み操作の最大数を有する書き込み操作の範囲により定義され、
第１の書き込みサイクルビンの第１の範囲は、第２の書き込みサイクルビンの第２の範囲と重複する
方法。
【請求項２４】
前記パラメータテーブルを、レジスタ、キャッシュメモリ、もしくは、ランダムアクセスメモリの少なくとも１つに格納すること
をさらに含む、請求項２３に記載の方法。
【請求項２５】
前記一連の書き込みパラメータに従って、少なくとも１つの書き込み操作を実行すること
をさらに含む、請求項２３に記載の方法。
【請求項２６】
前記制御ロジックによって、更新された書き込み操作の数が周期的に受信されること
をさらに含む、請求項２３に記載の方法。
【請求項２７】
前記一連の書き込みパラメータを確立するためのコマンドは、更新された書き込み操作の数の受信とともに受信される
請求項２６に記載の方法。
【請求項２８】
前記書き込み操作の現在の数と前記複数の書き込みサイクルビンを比較することは、
前記書き込み操作の現在の数よりも小さい書き込みサイクルの最小数、および、前記書き込み操作の現在の数よりも大きい書き込みサイクルの最大数を有する書き込みサイクルビンを決定することを含む
請求項２３に記載の方法。
【請求項２９】
前記一連の書き込みパラメータは、プログラミング電圧、パルス形状、前縁、後縁、および、パルス継続時間の少なくとも１つを含む
請求項２３に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
（本文中に技術分野に該当する記載なし）
【背景技術】
【０００２】
不揮発性メモリ装置は、情報を取得するために読み出され得るし、情報を格納するために書き込まれ得る。１つのタイプの不揮発性メモリ装置は、相変化メモリであり、相変化メモリは３次元（３Ｄ）クロスポイント構造に配置され得る。相変化メモリ中では、個々のメモリセルは、ある相から他の相に選択的に変換されることが可能な物質から生成される。例えば、物質は、メモリセルに書き込み電圧を加えることにより、アモルファス状態から結晶状態に変換され得る。異なる状態は、異なる電気的性質を有し、物質に電圧をかけると物質の現在の状態に基づいて異なる電流がセル内を伝導することにより、感知され得る。従って、物質の状態を設定するために書き込み電圧を選択的にメモリセルに適用することは、後でセルに感知電圧（sensing voltage）をかけることにより読み出し可能なデータのビットを格納するメカニズムを提供する。不揮発性メモリ装置には、装置から電源が取り外されても情報を格納し続けられるという利点があるが、このような装置には典型的に、限定された書き込み耐久性と保持力の問題がある。すなわち、読み出し操作および書き込み操作のためにメモリセルへのアクセスが繰り返されると、装置の構成要素やメモリセルにストレスを与える。その結果、メモリ装置は装置の寿命にわたって物理変化や劣化を受け得る。
【発明の概要】
【０００３】
本発明のある態様は、複数のメモリセルを有するメモリアレイ、前記メモリアレイに接続され、制御信号に応答して書き込み操作を行うように構成されたメモリアクセス回路、および、前記メモリアクセス回路に接続された制御ロジックを含む装置である。前記制御ロジックは、少なくとも部分的には、前記メモリアクセス回路によって行われた書き込み操作の数に応じた一連の書き込みパラメータを適用するように構成される。前記制御ロジックは、さらに、前記一連の書き込みパラメータに応じて前記複数のメモリセルに書き込み操作を行うために、前記メモリアクセス回路に制御信号を提供するように構成される。
【０００４】
他の態様では、装置は、複数のメモリセルを含むメモリ装置を含む。前記メモリ装置は、一連の書き込みパラメータに基づいて、前記複数のメモリセルに情報を格納するように構成される。前記メモリ装置は、パラメータテーブルをさらに含み、パラメータテーブルは前記メモリ装置の前記複数のメモリセルのサブセットに格納される。前記パラメータテーブルは、前記一連の書き込みパラメータに対応する一連の書き込みサイクルビン（write cycle bin）を格納するように構成される。
【０００５】
他の態様では、装置は、一連の書き込みパラメータに基づいて、複数のメモリセルにデータを格納するように構成されたメモリアクセス回路を含む。前記装置は、前記複数のメモリセルの一部に格納されたパラメータテーブルをさらに含む。前記パラメータテーブルは、複数の一連の書き込みパラメータに対応する複数の書き込みサイクルビンを含む。前記装置は、前記メモリアクセス回路に接続された制御ロジックをさらに含む。前記制御ロジックは、メモリアクセス回路によって行われる書き込み操作の数に基づいて、少なくとも１つの書き込みサイクルビンを決定し、決定された書き込みサイクルビンに基づいた複数の一連の書き込みパラメータから、一連の書き込みパラメータを適用するように、構成される。
【０００６】
他の態様では、方法は、メモリ装置で行われた書き込み操作の数を特定することと、少なくとも一部は、前記メモリ装置で行われた書き込み操作の数に基づいて、書き込みパラメータを調整することを含む。調整された書き込みパラメータは、書き込みコマンドに応答する複数のメモリセルに書き込み操作を行うために適用される。
【０００７】
他の態様では、方法は、制御ロジックによってメモリ装置のための一連の書き込みパラメータを確立するためのコマンドを受信することと、前記制御ロジックによって、前記メモリ装置によって行われた書き込み操作の現在の数を受信することと、前記制御ロジックによって、複数の書き込みサイクルビンを定義するパラメータテーブルを受信すること、を含む。書き込み操作の現在の数は、適用可能な書き込みサイクルビンを決定するために、前記制御ロジックによって、複数の書き込みサイクルビンと比較される。一連の書き込みパラメータは、少なくとも部分的に、適用可能な書き込みサイクルビンに基づいて、前記メモリ装置に提供される。
【図面の簡単な説明】
【０００８】
【図１Ａ】本発明の実施形態に従った、メモリシステムの機能ブロック図である。
【図１Ｂ】本発明の実施形態に従った、メモリ装置の機能ブロック図である。
【図２】本発明の実施形態に従った、３次元（３Ｄ）クロスポイントメモリアレイの一部の図である。
【図３】本発明の実施形態に従った、書き込みカウントに基づいて書き込みパラメータを設定する方法のフローチャートである。
【図４】本発明の実施形態に従った、パラメータテーブルの例である。
【図５】本発明の実施形態に従った、書き込みカウントに基づいて適用可能なビン数を更新する方法のフローチャートである。
【発明を実施するための形態】
【０００９】
＜詳細な説明＞
本発明の実施形態の十分な理解を提供するために、以下に、ある詳細事項が説明される。しかしながら、本発明の実施形態は、これらの特定の詳細事項がなくても実施されることができることは、当業者に明らかであろう。さらに、本明細書に記述された本発明の特定の実施形態は、例示として提供されるものであり、これらの特定の実施形態に本発明の範囲を限定するために用いられるべきではない。他の例においては、既知の回路、制御信号、タイミングプロトコルおよびソフトウェア操作は、本発明を不必要に不明瞭にすることを回避するために、詳細には示されていない。
【００１０】
本明細書に記載されている実施形態は、多くのメモリシステムが書き込みの耐久性が限定されていて、そのため、繰り返しアクセスを通して時間とともに劣化することを認めている。メモリ装置中のセルの物理的な劣化を補償するために、様々な物理パラメータが装置の老朽化に基づいて、書き込み操作の失敗率を減らすために整調され調整され得る。従って、装置の物理的劣化に原因となる書き込みパラメータを選択的に調整するために、装置の老朽化を追跡するメカニズムが必要である。書き込みパラメータは、例えば、書き込み操作の間にワード線、および／または、ビット線を通してメモリセルにかけられる電圧のような書き込み電圧を含むことができる。他の内部パラメータも同様に調整され得る。例示的なパラメータは、パルス波形、前縁（leading edge）、後縁（trailing edge）、継続時間などを含むが、これらに限定されない。一般に、書き込みパラメータは、書き込み操作に成功する確率を改善するためにセルの老朽化に合わせて調整されうるメモリ装置の任意の設定可能な設定を含み得る。本明細書に開示されているのは、装置で行われた書き込み操作の数に基づいて装置の老朽化を追跡し、装置の老朽化と書き込み操作の範囲によって定義される一連のビンに基づいて書き込みパラメータを調整するための様々な装置及び方法である。ビンは、書き込み操作の数の範囲で特定される。任意の時点で、そのメモリ装置で行われた書き込み操作の数に基づいて、装置は1つ以上のビンに適合しうる。例えば、１つのビンは、０から１０００回の書き込み操作の範囲により定義されうる。書き込み操作は、プログラミング操作、消去操作、または、これらの両方を含みうる。
【００１１】
図１Ａは、本発明の実施形態に従ったメモリシステム（たいてい１００で指定される）のブロック図である。メモリシステム１００は、メモリ装置１０４に接続されたプロセッサ１０２を含む。プロセッサ１０２は、メモリ装置１０４に命令を送信するように構成された任意の種類の制御回路でありうる。様々な実施形態では、プロセッサは、１つ以上のマイクロプロセッサ、特定用途向け集積回路、もしくは、他の種類の制御回路でありうる。メモリ装置１０４は、メモリ操作のための様々な回路を含む。図１Ｂに関して後で詳しく説明するように、メモリ装置１０４は、入力／出力（Ｉ／Ｏ）制御回路、制御ロジック、および、複数のメモリセルを含むメモリアレイを含み得る。コマンド、アドレス情報、および、書き込みデータは、Ｉ／Ｏバス１２８を介して送信される一連の連続した入力／出力（Ｉ／Ｏ）として、メモリ装置１０４に提供され得る。同様に、読み出しデータは、Ｉ／Ｏバス１２８を介してメモリ装置１０４から提供され得る。
【００１２】
プロセッサ１０２は、さらに、書き込みカウント回路１０６に接続されうる。書き込みカウント回路１０６は、レジスタ、キャッシュ、もしくは、メモリ装置１０４によって行われた書き込み操作の数を格納するように構成された任意の他の種類の一時的なメモリでありうる。他の実施形態では、書き込みカウント回路１０６は、メモリ装置１０４から電源が除去されたときに、メモリ装置１０４によって行われた書き込み操作の数を格納するように構成された不揮発性メモリでありうる。書き込みカウント回路１０６は、メモリ装置１０４によって行われた書き込み操作の現在の数に対応する値を格納するように構成され得る。書き込みカウント回路１０６は、メモリ装置１０４によって行われた書き込み操作の現在の数を決定するために、書き込みサイクルビンの設定操作の間に、プロセッサ１０２にアクセスされ得る。後にさらに詳しく説明するように、書き込みサイクルビンの設定操作の間に、書き込み操作に成功する確率を改善するための、メモリ装置１０４内の書き込みパラメータの調整を行うため、書き込みカウント回路１０６に格納された値が使用され得る。さらに、プロセッサ１０２は、書き込みカウント回路１０６に格納された書き込み操作の数がメモリ装置１０４によって行われた書き込み操作の実際の数と一致することを確実にするために、周期的に書き込みカウント回路１０６に格納された値を更新しうる。ほかの実施形態では、書き込みカウント回路１０６は、メモリ装置１０４中に位置しうる。このような実施形態では、メモリ装置１０４は、メモリ装置１０４によって行われた書き込み操作の数を追跡し得るし、さらに、行われた書き込み操作の現在の数をメモリ装置１０４中のカウント回路１０６に格納しうる。メモリ装置は、メモリ装置１０４によって行われた書き込み操作の数を決定するために、メモリ装置１０４に局所的に格納された値にアクセスできる。
【００１３】
図１Ｂは、本発明の実施形態に従った、メモリ装置１０４を含む装置である。メモリ装置１０４は、データを格納するように構成された複数のメモリセルを有するメモリアレイ１６０を含む。メモリセルはアレイ中で、様々な信号線、ワード線（ＷＬ）、および／または、ビット線（ＢＬ）を用いてアクセスされ得る。メモリセルは、ＮＡＮＤフラッシュセルもしくはＮＯＲフラッシュセル、相変化メモリセルのような不揮発性メモリセルであり得るし、また、任意の種類のメモリセルであり得る。メモリアレイ１６０のメモリセルは、メモリアレイ構造中に配列され得る。例えば、１つの実施形態では、メモリセルは３Ｄクロスポイント構造に配列される。他の実施形態では、例えば、特に、シングルレベルクロスポイント構造などの他のメモリアレイ構造が使用され得る。メモリセルは、１ビットのデータを格納するように構成されたシングルレベルセルであり得る。メモリセルは、１ビットよりも多くのデータを格納するように構成されたマルチレベルセルであってもよい。
【００１４】
データストロボ信号ＤＱＳが、データストロボバス（図示せず）を介して送信され得る。ＤＱＳ信号は、メモリ装置１０４にデータを転送するとき、または、メモリ装置１０４からデータを転送するときのタイミング情報を提供するために使用され得る。Ｉ／Ｏバス１２８は、データ信号、アドレス情報信号、および、他の信号を、Ｉ／Ｏバス１２８と、内部データバス１２２、内部アドレスバス１２４、および／または、内部コマンドバス１２６との間で転送するＩ／Ｏ制御回路１２０に接続される。内部アドレスバス１２４は、Ｉ／Ｏ制御回路１２０によってアドレス情報を提供され得る。内部アドレスバス１２４は、ブロック−行アドレス信号を行デコーダ１４０に提供しうるし、列アドレス信号を列デコーダ１５０に提供しうる。行デコーダ１４０と列デコーダ１５０は、例えば、読み出し操作や書き込み操作などのメモリ操作のための、メモリセルのブロックを選択するため使用され得る。行デコーダ１４０、および／または、列デコーダ１５０は、メモリアレイ１６０中の１つ以上の信号線に対して、バイアス信号を提供するように構成された１つ以上の信号線ドライバを含み得る。Ｉ／Ｏ制御回路１２０は、状態レジスタ１３４に状態レジスタバス１３２を通して接続される。状態レジスタ１３４に格納された状態ビットは、メモリ装置１０４に与えられた状態読み出しコマンドに応答して、Ｉ／Ｏ制御回路１２０によって提供され得る。状態ビットは、メモリとその操作についての様々な状況のステータス状態を示すための個々の値を有しうる。
【００１５】
メモリ装置１０４は、メモリ装置１０４の操作を制御するために、外部からか、コマンドバス１２６を通って多数の制御信号１３８を受信する制御ロジック１１０も含む。制御信号１３８は、任意の適切なインタフェースプロトコルによって実装され得る。例えば、制御信号１３８は、ダイナミックランダムアクセスメモリとフラッシュメモリ（例えばＮＡＮＤフラッシュ）に共通するように、ピンベースであってもよく、また、オペコードベースであってもよい。制御信号１３８の例は、クロック信号、読み出し／書き込み信号、クロックイネーブル信号などを含む。コマンドレジスタ１３６は、Ｉ／Ｏ制御回路１２０によって受信された情報を格納するためと、制御ロジック１１０に情報を提供するために、内部コマンドバス１２６に接続される。制御ロジック１１０は、例えば、ステータス状態の変更に伴ってステータスビットを更新するために、状態レジスタバス１３２を通して状態レジスタ１３４にさらにアクセスしてもよい。制御ロジック１１０が、内部制御信号をメモリ装置１０４の様々な回路に提供するように構成され得る。例えば、メモリアクセスコマンド（例えば、ｒｅａｄ、ｗｒｉｔｅ）の受信に応答して、制御ロジック１１０は、様々なメモリアクセス回路を制御するための内部制御信号を、メモリアクセス操作を実行するために提供しうる。特に、制御ロジックは、書き込み操作がメモリアレイ１６０に行われている間に使用される書き込み電圧などの１つ以上の書き込みパラメータを、書き込みカウント回路１０６に格納された値と複数の書き込みサイクルビン（後述）に基づいて設定するように構成され得る。制御ロジック１１０は、メモリアレイ１６０への摩耗平準化操作（wear levelling operation）を実行するように、さらに構成されてもよい。摩耗平準化操作は、いくつかのメモリセルが他のメモリセルに比べて著しく多く書き込みされないことを確実にするために、メモリアレイ１６０に格納されているデータを再分配することができる。制御ロジック１１０は、静的な摩耗平準化もしくは動的な摩耗平準化を用いることができる。メモリアクセス操作の間には、様々なメモリアクセス回路が使用される。様々なメモリアクセス回路には、一般的には、行デコーダおよび列デコーダ、チャージポンプ回路、信号線ドライバ、データレジスタおよびキャッシュレジスタ、Ｉ／Ｏ回路などの回路も、その他の回路も、含まれ得る。
【００１６】
制御ロジック１１０にアクセスされ得るパラメータテーブル１６２は、メモリアレイ１６０に格納され得る。パラメータテーブル１６２は、メモリアレイ１６０に行われた書き込み操作の数に基づいて１つ以上の書き込みパラメータを調整するために使用され得る書き込みサイクルビン情報を含む。書き込みサイクルビン情報は、１つ以上の書き込み操作の範囲を含み、個々の範囲は書き込みサイクルビンを定義する。例えば、１つのビンは、０から１０，０００の書き込み操作の範囲により定義され得る。２番目のビンは、１，０００から１００，０００の書き込み操作の範囲により定義され得るし、追加のビンについても同様である。パラメータテーブル１６２中の個々のビンは、１つ以上の書き込みパラメータと関連しうる。書き込みパラメータは、書き込み操作を実行するためにメモリ装置１０４によって使用される設定（例えば、書き込み電圧、パルス継続時間、前縁、後縁、パルス波形など）を定義しうる。書き込み操作の現在の数は、書き込みカウント回路１０６に格納され得る（図１Ａ）し、適用可能なビンを決定して適用可能な書き込みパラメータを特定するために、パラメータテーブル１６２中の１つ以上のビンと比較され得る。様々な実施形態において、パラメータテーブル１６２は、メモリアレイ１６０の専用の部分に格納され得る。別の実施形態では、パラメータテーブル１６２は、メモリ装置、別の記憶装置、メモリ装置、レジスタ、または、制御ロジック１１０によって利用可能な他の装置に含まれた別のメモリ領域に格納され得る。パラメータテーブルについては、図４に関して後でさらに詳しく説明する。
【００１７】
データＩ／Ｏ回路１７０は、制御ロジック１１０から受信した信号に基づいて、Ｉ／Ｏ制御回路１２０とメモリアレイ１６０の間のデータ転送を容易にするように構成された１つ以上の回路を含む。様々な実施形態では、データＩ／Ｏ回路１７０は、レジスタ、バッファ、および、メモリアレイ１６０とＩ／Ｏ制御回路１２０の間のデータ転送を管理するための他の回路の１つ以上を含み得る。例えば、書き込み操作の間に、Ｉ／Ｏ制御回路１２０は書き込まれるデータをＩ／Ｏバス１２８を介して受信し、そのデータをデータＩ／Ｏ回路１７０に内部データバス１２２を介して提供する。データＩ／Ｏ回路１７０は、制御ロジック１１０によって提供された制御信号に基づいて、データをメモリアレイ１６０に（行デコーダ１４０と列デコーダ１５０によって特定された位置に）書き込む。読み出し操作の間、データＩ／Ｏ回路は、制御ロジック１１０によって提供された制御信号に基づいて、メモリアレイ１６０から（行デコーダ１４０と列デコーダ１５０によって特定された位置の）データを読み出す。データＩ／Ｏ回路は、内部データバス１２２を介して、読み出したデータをＩ／Ｏ制御回路に提供する。Ｉ／Ｏ制御回路１２０は、その後、読み出したデータを、Ｉ／Ｏバス１２８に提供する。
【００１８】
図２は、本発明の実施形態に従った、３Ｄクロスポイントメモリアレイ（たいてい２００で指定される）の一部の図である。様々な実施形態では、メモリアレイ２００は、図１Ｂのメモリアレイ１６０として実装され得る。メモリアレイ２００は、第１の数のワード線２０２Ａ、２０２Ｂ、・・・、２０２Ｎ（集合的にワード線２０２と称される）と、第１の数のビット線２０６Ａ、２０６Ｂ、・・・、２０６Ｎ（集合的にビット線２０６と称される）を含む。図２に示すように、複数のワード線２０２は、互いに平行に配置され得る。複数のビット線２０６は、互いに平行で、複数のワード線２０２と直行するように配置され得る。ワード線２０２とビット線２０６は、銅、タングステン、チタン、アルミニウムなどの導電性材料から生成され得る。ワード線とビット線の層もしくはデッキは、３Ｄ格子構造を作るために積層され得る。図２に示すように、３Ｄ構造を形成するために、ワード線２０２の層がビット線の層と交互になっている。
【００１９】
メモリアレイ２００は、複数のメモリセル２０４を含む。ある実施形態では、メモリセル２０４は、相変化メモリセルであってもよい。個々のメモリセル２０４は、ワード線（例えば、ワード線２０２Ａ）とビット線（例えば、ビット線２０６Ａ）に接続される。個々のメモリセルが３Ｄクロスポイントアレイ中の１本のワード線と１本のビット線に接続されることにより、個々のメモリセル２０４は、例えば、メモリアドレスにより、ワード線とビット線を特定することで個別にアクセス可能である。メモリセル２０４のサブセットは、パラメータテーブル１６２（図１Ｂ）などのパラメータテーブルを格納するために指定され得る。他の実施形態では、パラメータテーブル１６２は、離れた複数のレジスタに格納され得る。パラメータテーブルは、書き込み操作の範囲で定義された複数のビンと、メモリアレイ２００で行われた書き込み操作に関連する複数のパラメータを含む。パラメータテーブルは制御ロジック（例えば、制御ロジック１１０）によってアクセスされ得る。これにより、メモリアレイ２００中のメモリセル２０４に書き込みを行うために使用される１つ以上の書き込みパラメータが設定され得る。
【００２０】
図３は、本発明の実施形態に従った、書き込みカウントに基づいて書き込みパラメータを設定する方法３００のフローチャートである。操作３０２において、制御ロジック１１０は、現在の書き込みカウントを受信し、パラメータテーブル１６２の内容を読み込むために、パラメータテーブル１６２にアクセスする。様々な実施形態では、制御ロジック１１０に、プロセッサによって、書き込みカウント回路１０６に格納された現在の書き込みカウントが提供される。例えば、プロセッサは、書き込みカウント回路１０６にアクセスして、書き込みカウント回路１０６に格納されている値を、制御ロジック１１０（Ｉ／Ｏバス１２８を介して）、Ｉ／Ｏ制御回路１２０、および、コマンドバス１２６に送信してもよい。制御ロジック１１０は、メモリアレイ１６０にアクセスして、パラメータテーブル１６２の内容（１つ以上の書き込みサイクルビンと個々のビンに関連した書き込みパラメータ）を読み込んでもよい。図１に関連して前述したとおり、パラメータテーブル１６２はメモリアレイ１６０に格納されてもよい。いくつかの実施形態では、パラメータテーブル１６２は、メモリアレイの専用のサブセクションに格納されてもよく、また、メモリアレイ１６０から離れたレジスタ中に格納されてもよい。いくつかの実施形態では、制御ロジック１１０は、書き込みサイクルビンの設定操作を行うためにパラメータテーブル１６２の内容を読み込んでもよい。他の実施形態では、パラメータテーブル１６２の内容は、後の書き込みサイクルビンの設定操作での参照用に、レジスタ、キャッシュメモリ、もしくはランダムアクセスメモリなどの記憶装置中に格納されてもよい。前述したように、いくつかの実施形態では、書き込みカウント回路１０６は、メモリ装置１０４中に位置していてもよく、制御ロジック１１０に接続されてもよい。このような実施形態では、制御ロジック１１０は、メモリ装置１０４によって行われた現在の書き込み操作の数を決定するために、直接、書き込みカウント回路１０６にアクセスする。これにより、プロセッサ１０２は、書き込みサイクルビンの設定操作の間に、制御ロジック１１０に現在の書き込みカウント値を転送する必要がなくなる。
【００２１】
操作３０４では、制御ロジック１１０は、パラメータテーブル１６２と現在の書き込みカウント値に基づいて、操作３０６で受信されるように、適用可能な書き込みサイクルビンを決定する。前述したように、パラメータテーブル１６２は、たいていは、メモリアレイ１６０によって行われた書き込み操作の数に基づいて、いくつかの書き込みサイクルビンが定義される。制御ロジック１１０は、どのビン（またはどの複数のビン）に現在の書き込みカウントが入るかを決定するために、現在の書き込みカウント（書き込みカウント回路１０６に格納され、操作３０６で受信されるように）を、パラメータテーブル１６２中の書き込みサイクルビンと比較する。例えば、現在の書き込みカウントが１０，５６０の書き込み操作であるとする。パラメータテーブル１６２は、０〜１０，０００回の書き込み操作の範囲を有する第１のビンと、１，０００〜１００，０００回の書き込み操作の範囲を有する第２のビンを含み得る。このような実施形態では、制御ロジック１１０は、現在の書き込みカウント（１０，５６０）は、１，０００〜１００，０００の間であるが、０〜１０，０００の間ではないと決定する。従って、制御ロジック１１０は、第２のビンが適用可能なビンであり、第１のビンは適用可能なビンではないと決定する。
【００２２】
これから、本発明の実施形態に従った、パラメータテーブル４００の例が示されている図４を参照する。様々な実施形態では、パラメータテーブル４００は、図１の実施形態のパラメータテーブル１６２のように実装され得る。パラメータテーブル４００は、たいてい、複数のビン４０２、最大（ｍａｘ）書き込みカウント４０４、および、最小（ｍｉｎ）書き込みカウント４０６を含む。図４の実施形態では、パラメータテーブル４００は、ビン０、ビン１、ビン２、および、ビン３の４つのビンを有する。ビン０、ビン１、ビン２、および、ビン３の各々は、関連付けられた最大書き込みカウント４０４と最小書き込みカウント４０６を有する。最大書き込みカウント４０４と最小書き込みカウント４０６は、個々のビンの大きさ（すなわち、個々のビンが適用される書き込みカウントの範囲）を定義する。例えば、ビン０は、０回の書き込み操作の最小書き込みカウント４０４（すなわち、書き込みが行われたことがないメモリアレイ）と、１０，０００回の書き込み操作の最大書き込みカウント４０６を有する。従って、もし、操作３０４で制御ロジック１１０が、書き込み回数は０〜１０，０００の間の値を有すると決定すると、制御ロジック１１０は、ビン０を適用可能なビンとして特定する。図４には４つのビンが示されているが、当業者は、任意の数のビンが使用され得ることを理解できる。
【００２３】
ビンの範囲は、互いに重複しうる（例えば、１０または１００の倍数により）。例えば、パラメータテーブル４００のビン１は、１，０００〜１００，０００の書き込み操作の範囲を有し、この範囲は、ビン０と１０の倍数で重複する。この重複した範囲は、摩耗平準化スキームの許容範囲内で、特定のブロックについて実行され得た実際の書き込み操作の数のばらつきを許容する。例えば、書き込みカウント回路１０６は、１，０００書き込み操作を格納しうる。この書き込みカウントは、ビン０とビン１の両方に当てはまる。しかし、摩耗平準化スキームのために、いくつかのブロックは、１０００回未満だけ書き込みがされているが、他のブロックは２，０００回以上書き込みが行われているかもしれない。ビン範囲の重複は、セル間の書き込み操作を完全に平均化できない可能性のある摩耗平準化を許容するが、全てのセルが所定の範囲内で書き込みされることを確実にする（例えば、他のセルの１００倍以上書き込みされるセルがない）。いくつかの実施形態では、制御ロジック１１０は、一度、メモリ装置１０４中の全てのブロックに、より高いビンの最小数の回数分の書き込みがされると、より高いビンのみを特定する。例えば、制御ロジック１１０は、全てのセルに少なくとも１，０００回の書き込みがされると、ビン１のみを適用可能なビンとして認識する。
【００２４】
再度、図３に戻ると、操作３０６では、制御ロジック１１０は、適用可能な書き込みパラメータを特定する。前述のように、パラメータテーブル１６２に定義づけられている個々の書き込みサイクルビンは、書き込み電圧などの一連の書き込みパラメータに関連付けられている。制御ロジック１１０は、操作３０６で決定された適用可能な書き込みサイクルビンに基づいて、適用可能な書き込みパラメータを特定する。例えば、制御ロジック１１０がビン１（図４を参照）は適用可能なビンであると決定すると、制御ロジック１１０は、操作３０８において、ビン１に関連付けられた書き込みパラメータを特定する。個々のビンに関連付けられた書き込みパラメータは、メモリ装置１０４中に格納され得るし、適用可能なビンの決定に応じてアクセスされ得る。適用可能な書き込みパラメータは、書き込み操作の間に適用される特定の設定を含み得る。特定の設定は、他のパラメータのうち、特定のプログラミング電圧（すなわち、振幅）、パルス継続時間、前縁、後縁を含み得る。これらのパラメータを、個々に、または、セルの老朽化と組み合わせで調整することで、書き込み操作の成功確率が改善しうる。
【００２５】
操作３０８では、メモリ装置は書き込みサイクルビン設定コマンドを受信する。制御ロジック１１０は、例えば、プロセッサ１０２により提供され、制御ロジック１１０で受信されるコマンドに応答して、書き込みサイクルビンを設定するための操作を実行し得る。様々な実施形態では、書き込みサイクルビン設定コマンドは、プロセッサ１０２、メモリコントローラユニット、統合されたメモリコントローラ、もしくは、他の装置から受信される。他の実施形態では、書き込みサイクルビン設定するためのコマンドは、メモリ装置１０４の電源投入操作の一部として、また、電源投入操作に応答して、起動されてもよい。さらに他の実施形態では、書き込みサイクルビン設定するためのコマンドは、書き込みサイクルビンがメモリアレイ１６０によって行われた書き込み操作の現在の数に一致することを確実にするために、周期的に提供され得る。
【００２６】
操作３１０では、制御ロジック１１０は、メモリ装置１０４用の特定された書き込みパラメータを適用する。制御ロジック１１０は、適用可能なメモリサイクルビンが変更されない限り、また、適用可能なメモリサイクルビンが変更されるまで、メモリ装置１０４によって行われる、今後の全ての書き込み操作に対して、特定された書き込みパラメータを適用する。ひとたび、適用可能な書き込みパラメータが特定されると、制御ロジック１１０は、データＩ／Ｏ回路１７０を介して書き込み操作が行われる際に、特定された適用可能な書き込みパラメータを適用し得る。書き込み操作が受信されると（例えば、Ｉ／Ｏ制御回路１２０により）、制御ロジック１１０は、特定された書き込みパラメータを用いて、メモリアレイ１６０で書き込み操作を行う。ある実施形態では、プログラミング電圧が増大され得る（例えば、振幅が大きくなる）。他の実施形態では、パルス継続時間が長くなり得る。さらに他の実施形態では、パルスの形状が調整され得る。他の実施形態では、前述の書き込みパラメータに加えて、または、前述の書き込みパラメータの代わりに、他の書き込みパラメータが調整される。メモリアレイ１６０のセルが老朽化するに従って、書き込みパラメータは、書き込み操作に失敗する可能性を小さくするために、さらに調整され得る。
【００２７】
図５は、本発明の実施形態に従った、書き込みカウントに基づいて適用可能なビン数を更新する方法５００のフローチャートである。操作５０２では、制御ロジック１１０は、書き込みカウント回路１０６に格納された書き込みサイクルカウントを更新する。書き込みカウント回路１０６は、例えば、最後に書き込みカウントが更新されてからの時間（例えば、クロックサイクルによって測定される）、および／または、最後に書き込みカウントが更新されてからメモリ装置１０４によって行われた書き込み操作の数（例えば、書き込みカウントは、メモリ装置１０４によって１，０００回の書き込み操作が行われるごとに更新される）に基づいて、更新され得る。いくつかの実施形態では、メモリ装置１０４は、メモリ装置１０４によって行われた現在の書き込み操作のカウント数を保持し、メモリ装置への電源投入に際して、メモリ装置１０４の外部の書き込みカウント回路１０６を更新してもよい。他の実施形態では、書き込みカウントは、周期的（例えば、１日に１回）に更新され得る。いくつかの実施形態では、書き込みカウントは、個々の書き込み操作が行われた後に更新される。さらに他の実施形態では、書き込みカウント回路１０６は、不揮発性であって、書き込みカウントは、メモリ装置１０４の電源を切る操作の一部として更新され得る。このような実施形態では、更新された書き込みカウントは、メモリ装置１０４に電源が投入されたときにすぐに入手可能である。書き込みカウント回路１０６に格納された書き込みカウントを周期的に更新することによって、メモリ装置１０４は、どの書き込みパラメータをメモリアレイ１６０に適用するかを決定するために使用する書き込み操作の数が、行われた書き込み操作の実際の数と一致することを確実にする。
【００２８】
判定ブロック５０４では、制御ロジック１１０は、書き込みサイクルビンを更新するかを決定する。様々な実施形態では、制御ロジック１１０は、プロセッサ１０２から受信したコマンドに基づいて、書き込みサイクルビンを更新するかを決定してもよい。他の実施形態では、制御ロジック１１０は、メモリ装置１０４に電源が投入されたことに応答して、書き込みサイクルビンを更新すると決定してもよい。さらに他の実施形態では、制御ロジック１１０は、周期的な信号に応答して、書き込みサイクルビンを更新すると決定してもよい。周期的な信号は、例えば、クロック信号に基づいていてもよい。クロック信号は、制御ロジック１１０に一定間隔で書き込みサイクルビンを更新することを促す。制御ロジック１１０が書き込みサイクルビンを更新しないと決定した場合（判定ブロック５０４、ＮＯ分岐）、制御ロジック１１０は、操作５０２で、書き込みサイクルカウントを周期的に更新し続ける。
【００２９】
その代わりに、制御ロジック１１０が書き込みサイクルビンを更新すると決定した場合（判定ブロック５０４、ＹＥＳ分岐）、制御ロジック１１０は、適用可能なビンを操作５０６で決定する。操作３０４（図３）に関して前述したように、メモリ装置１０４の制御ロジック１１０は、パラメータテーブル１６２にアクセスでき、パラメータテーブル１６２の内容を、レジスタやキャッシュなどのメモリに格納できる。格納されたパラメータテーブル１６２は、操作５０６において、メモリアレイ１６０用のビン情報を更新するためにアクセスされ得る。操作では、制御ロジック１１０は、書き込みカウント回路１０６に格納された更新された書き込みカウントにアクセスし、書き込みカウントをパラメータテーブル１６２中に定義されたビンと比較する。パラメータテーブル１６２によって定義されたビン範囲に基づいて、制御ロジック１１０は、更新された書き込みカウントに合っている１つ以上のビンを決定する。操作５０６において、制御ロジック１１０が１つ以上の適用可能なビンを特定した場合、制御ロジック１１０は、メモリアレイ１６０のブロックへの書き込みカウントに基づいて、メモリ装置１０４に適用する１つのビンを選択する。例えば、制御ロジック１１０は、メモリアレイ１６０の個々のブロックが、少なくとも、より高いビン番号の最小書き込みカウントと同じ回数だけ書き込みをされているかを判定する。個々のブロックが、少なくとも、より高いビン番号の最小書き込みカウントと同じ回数だけ書き込みをされている場合、より高いビンが適用可能なビンとして特定される。少なくとも１つのブロックが、より高いビン番号の最小書き込みカウントと同じ回数だけ書き込みをされていない場合、より低いビン番号が、適用可能なビンとして特定される。
【００３０】
操作５０８では、制御ロジック１１０は、適用可能なビンに基づいて、メモリ装置１０４への更新された書き込みパラメータを特定する。この操作は、図３の操作３０６と同様の方法で行われ得る。特に、制御ロジック１１０は、パラメータテーブル１６２を参照することによってか、適用可能なパラメータが格納されている他のメモリ位置を参照することによって、適用可能なビンに関連付けられた書き込みパラメータを決定する。操作５１０では、制御ロジック１１０は、更新後の特定された書き込みパラメータ（操作５０８で決定された）に従って、メモリ装置１０４に書き込みパラメータを適用する。書き込みパラメータは、操作３１０に関して前述したように、調整され得る。いくつかの実施形態では、（例えば、更新された書き込みカウントが前に特定されたのと同じビンに入る場合）書き込みパラメータは同じ値のままであり得る。他の実施形態では、書き込みパラメータは、メモリアレイ１６０によって行われる今後の書き込み操作のために調整され得る。書き込み操作が行われるときにメモリアレイ１６０によって使用される書き込みパラメータを定期的に更新することにより、制御ロジック１１０は、書き込み操作に失敗する危険性を減少させ、メモリ装置１０４が正確にデータを格納する能力を向上する。
【図１Ａ】
0006716693.tif 000002
【図１Ｂ】
0006716693.tif 000003
【図２】
0006716693.tif 000004
【図３】
0006716693.tif 000005
【図４】
0006716693.tif 000006
【図５】
0006716693.tif 000007