(57)【特許請求の範囲】
【請求項１】
不揮発性メモリであって、前記不揮発性メモリ内の温度を測定する温度センサと、前記不揮発性メモリが或る期間にわたって閾値温度を超えたことを示す１ビット以上のビットからなる温度警報を記憶するレジスタと、を含む不揮発性メモリと、
前記不揮発性メモリが閾値温度を超える温度で動作する時間の第１レベルの粒度を記憶する第１のカウンタと、
前記不揮発性メモリが前記閾値温度を超える温度で動作する時間の第２レベルの粒度を記憶する第２のカウンタであって、該第２のカウンタは、前記第１のカウンタが前記第２レベルの粒度の単位に達する毎に、前記第１のカウンタによってインクリメントされる、第２のカウンタと、
前記第１のカウンタ又は前記第２のカウンタに重み付けファクタを与える少なくとも１つのステップモジュールであって、前記重み付けファクタは、動作温度の各上昇レベルでの乗数である、少なくとも１つのステップモジュールと、
前記温度警報がアクティブであるか否かの判断をし、前記温度警報がアクティブであるという前記判断に応じて、前記不揮発性メモリの少なくとも一部分をリフレッシュするコントローラと、
を備えることを特徴とする装置。
【請求項２】
請求項１に記載の装置であって、前記温度警報は、前記リフレッシュに対する緊急度の複数のレベルのうちの一つを示すことを特徴とする装置。
【請求項３】
請求項１に記載の装置であって、前記不揮発性メモリの少なくとも一部分のリフレッシュは、所定レベルの粒度で実行されることを特徴とする装置。
【請求項４】
請求項３に記載の装置であって、前記所定レベルの粒度は、ユーザによって設定されることを特徴とする装置。
【請求項５】
請求項３に記載の装置であって、前記レジスタは、前記不揮発性メモリの複数の部分の各々がリフレッシュを必要とするか否かを示すことを特徴とする装置。
【請求項６】
請求項１に記載の装置であって、前記不揮発性メモリは、前記不揮発性メモリの一部分がリフレッシュを受けてよいか否かを示すリフレッシュマスクレジスタをさらに含むことを特徴とする装置。
【請求項７】
請求項１に記載の装置であって、前記温度が前記閾値温度を超える時間の総計が２つを超えるレベルの粒度で追跡されることを特徴とする装置。
【請求項８】
請求項１に記載の装置であって、前記コントローラが前記不揮発性メモリの少なくとも一部分をリフレッシュする割合が、前記閾値温度を超える温度の上昇に対応して増加することを特徴とする装置。
【請求項９】
請求項１に記載の装置であって、前記温度警報は、前記温度が閾値温度を超える期間にわたる前記温度の積分が閾値を超えるときに設定されることを特徴とする装置。
【請求項１０】
請求項９に記載の装置であって、前記不揮発性メモリは、前記温度が前記閾値温度を超えた複数の期間にわたる前記温度の前記積分の合計を維持し、前記温度警報は前記積分の合計が前記閾値を超えたときに設定されることを特徴とする装置。
【請求項１１】
不揮発性メモリ内の温度を測定することと、
前記不揮発性メモリ内のレジスタに、前記不揮発性メモリが或る期間にわたって閾値温度を超えたことを示す１ビット以上のビットからなる温度警報を記憶することと、
前記不揮発性メモリが前記閾値温度を超える温度で動作する時間の第１レベルの粒度の値を記憶することと、
前記第１レベルの粒度の前記値が第２レベルの粒度の単位に達する毎に、前記不揮発性メモリが前記閾値温度を超える温度で動作する時間の前記第２レベルの粒度の値をインクリメントすることと、
前記第２レベルの粒度の前記値を記憶することと、
時間の前記第１レベルの粒度又は時間の前記第２レベルの粒度に重み付けファクタを与えることであって、前記重み付けファクタは、動作温度の各上昇レベルでの乗数である、ことと、
コントローラによって、前記温度警報がアクティブであるか否かの判断をすることと、
前記温度警報がアクティブであるという前記判断に応じて、前記不揮発性メモリの少なくとも一部分をリフレッシュすることと、
を含むことを特徴とする方法。
【請求項１２】
請求項１１に記載の方法であって、前記温度警報は、前記リフレッシュに対する緊急度の複数のレベルのうちの一つを示すことを特徴とする方法。
【請求項１３】
請求項１１に記載の方法であって、前記不揮発性メモリの少なくとも一部分のリフレッシュは、所定レベルの粒度で実行されることを特徴とする方法。
【請求項１４】
請求項１３に記載の方法であって、前記所定レベルの粒度は、ユーザによって設定されることを特徴とする方法。
【請求項１５】
請求項１３に記載の方法であって、前記不揮発性メモリ内のレジスタに、前記不揮発性メモリの複数の部分の各々がリフレッシュを必要とするか否かを示すリフレッシュステータスを記憶すること、をさらに含むことを特徴とする方法。
【請求項１６】
請求項１１に記載の方法であって、前記不揮発性メモリのレジスタに、前記不揮発性メモリの一部分がリフレッシュを受けてよいか否かを示すリフレッシュマスクレジスタを記憶すること、をさらに含むことを特徴とする方法。
【請求項１７】
請求項１１に記載の方法であって、前記温度が前記閾値温度を超える時間の総計が２つを超えるレベルの粒度で追跡されることを特徴とする方法。
【請求項１８】
請求項１１に記載の方法であって、前記温度が閾値温度を超える期間にわたる前記温度の積分が閾値を超えるときに前記温度警報をアクティブに設定すること、をさらに含むことを特徴とする方法。
【請求項１９】
請求項１８に記載の方法であって、
前記不揮発性メモリに、前記温度が前記閾値温度を超えた複数の期間にわたる前記温度の前記積分の合計を記憶することと、
前記積分の合計が前記閾値を超えたときに前記温度警報をアクティブに設定することと、
をさらに含むことを特徴とする方法。
【請求項２０】
メモリ劣化を示す参照メモリセルと、前記参照メモリセル内の温度を測定する温度センサと、を含む不揮発性メモリと、
前記参照メモリセルが閾値温度を超える温度で動作する時間の第１レベルの粒度を記憶する第１のカウンタと、
前記参照メモリセルが前記閾値温度を超える温度で動作する時間の第２レベルの粒度を記憶する第２のカウンタであって、該第２のカウンタは、前記第１のカウンタが前記第２レベルの粒度の単位に達する毎に、前記第１のカウンタによってインクリメントされる、第２のカウンタと、
前記第１のカウンタ又は前記第２のカウンタに重み付けファクタを与える少なくとも１つのステップモジュールであって、前記重み付けファクタは、動作温度の各上昇レベルでの乗数である、少なくとも１つのステップモジュールと、
前記参照メモリセルが劣化したか否かの判断をし、前記参照メモリセルが劣化したという前記判断に応じて、前記不揮発性メモリの少なくとも一部分をリフレッシュするコントローラと、
を備えることを特徴とする装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、概して、コンピュータおよび遠隔通信装置のような特定用途向けの電子装置に関する。特に、これらの実施形態は、不揮発性メモリの動作温度範囲を広げるための製品、システム、および方法に関する。
【背景技術】
【０００２】
不揮発性メモリ（“ＮＶＭ”）は、コンピュータ、ビデオゲーム操作卓、遠隔通信装置等を含む多数の電子装置において使用される。動作温度は、ＮＶＭの品質および信頼性に強い影響を与える。例えば、ＮＶＭに対する動作温度は、−２５℃から８５℃の範囲に制限され、ＮＶＭの品質および信頼性特性は１０年間にわたる８５℃での動作に基づいて定められる。
【０００３】
ＮＶＭを使用する装置、例えば携帯電話は、全地球測位およびマッピング、ビデオのストリーミング、ビデオゲーム等のような特徴を含むことによって、それらの性能に対する要求を増してきてる。これらの特徴をサポートするために、ベンダーは、装置の“秒あたり命令”性能およびクロック周波数を増加させている。この結果、装置の内部温度がまた上昇し、メモリ接合温度の対応する上昇も生じさせる。さらに、パッケージオンパッケージ（“ＰＯＰ”）、マルチチップパッケージ（“ＭＣＰ”）、およびトゥルーシリコンバイア（Ｔｒｕｅ−Ｓｉｌｉｃｏｎ−Ｖｉａ）（“ＴＳＶ”）のようなパッケージソリューションも、熱結合を上昇させる。さらに、相変化メモリ（“ＰＣＭ”）技術は、熱的に駆動され、そのために、温度変化により敏感である。
【図面の簡単な説明】
【０００４】
本発明の実施形態は、例示の方法で図示されており、そして、添付の描かれた図において限定を与えるものではない。これらにおいて、同様の参照は類似の構成要素を示している。これらの図において、
【０００５】
【図１】本発明の実施形態が実施される例示的な装置のブロック図である。
【図２】本発明の実施形態による、不揮発性メモリのリフレッシュを発生させるためのモジュールを含むハイレベルのブロック図である。
【図３】本発明の他の実施形態による、不揮発性メモリのリフレッシュを発生させるためのモジュールを含むハイレベルのブロック図である。
【図４】本発明のさらに他の実施形態による、不揮発性メモリのリフレッシュを発生させるためのモジュールを含むハイレベルのブロック図である。
【図５】時間に対する不揮発性メモリの例示的な温度のグラフ表現である。
【図６】本発明の実施形態による、不揮発性メモリのリフレッシュをホストと同期させるために使用されるリフレッシュレジスタに対する例示的な値を示す表である。
【図７】本発明の実施形態による、時間に対する不揮発性メモリの例示的な温度および対応するリフレッシュレジスタ値のグラフ表現である。
【発明を実施するための最良の形態】
【０００６】
不揮発性メモリ（“ＮＶＭ”）内の温度を測定し、温度が或る期間に閾値温度を超えたときに少なくともＮＶＭの或る一部をリフレッシュするための方法および装置が記載されている。ＮＶＭをリフレッシュすることは、高温で動作するときにＮＶＭ内に記憶されたデータの安定性を保証する。本発明の実施形態は、ＤＲＡＭ仕様の温度に対して厳しい要求、アプリケーションからの増加する要求、および無線システムの要求に沿うＮＶＭ技術の動作温度範囲を拡張する。一つの実施形態として、リフレッシュ動作は、（もし必要ならば）消去およびプログラミングパルスが続くベリファイまたは読出し動作、あるいは書込み動作を備える。
【０００７】
特に他に言及がないならば、以下の記述から明らかなように、明細書を通して、“処理すること”、“コンピューティング”、“計算すること”、“決定すること”などの用語を使用する記述は、コンピュータ、コンピューティングシステム、または同様の電子計算装置の動作または処理について述べることを理解されたい。これらは、そのコンピューティングシステムのレジスタおよび／またはメモリ内の、電子的というような物理量として表現されるデータを操作および／または変換して、コンピューティングシステムのメモリ、レジスタ、または他のこのような情報記憶装置、送信または表示装置内の物理量として同様に表現される他のデータにするものである。
【０００８】
図１は、本発明の実施形態が実施される例示的な装置のブロック図である。メモリ１００は、一つ以上の異なるタイプのメモリを含んでよい。一つの実施形態として、メモリ１００は、揮発性メモリ１０５およびＮＶＭ１１０を含む。代わりの実施形態として、メモリ１００は、ＮＶＭ１１０のみを含む。
【０００９】
一つの実施形態として、ＮＶＭ１１０は、相変化ランダムアクセスメモリ（“ＰＲＡＭ”または“ＰＣＲＡＭ”）、オボニックユニファイドメモリ（“ＯＵＭ”）、またはカルコゲン化合物ランダムアクセスメモリ（“Ｃ−ＲＡＭ”）とも呼ばれる相変化メモリ（“ＰＣＭ”）である。代わりの実施形態として、ＮＶＭ１１０は、磁気抵抗型ランダムアクセスメモリ（“ＭＲＡＭ”）、強誘電性ランダムアクセスメモリ（ＦＲＡＭ）、フラッシュメモリ、消去可能プログラム可能リードオンリーメモリ（“ＥＰＲＯＭ”）、電気的消去可能プログラム可能リードオンリーメモリ（“ＥＥＰＲＯＭ”）、または他の不揮発性メモリである。
【００１０】
揮発性メモリ１０５およびＮＶＭ１１０は、メモリコントローラ１１５または一つ以上のプロセッサコア１２５の上部にメモリコンポーネント１００を配置して、基板上での設置面積を削減するためにスタッキングプロセスにおいて結合され、分離してパッケージ化され、あるいはマルチチップパッケージ内に配置されてよい。一つの実施形態として、メモリ１００は、パッケージ−オン−パッケージ１２０スタッキングテクニックを用いて、メモリコントローラ１１５と統合される。
【００１１】
メモリコントローラ１１５は、メモリ１００に関する、読出し要求、書込み要求、およびメモリリフレッシュを含む基本機能を扱う。一つの実施形態として、メモリコントローラ１１５およびプロセッサコア１２５は、同一パッケージ（プロセッサ１３０）の一部であり、または、メモリコントローラ１１５はプロセッサコア１２５内に統合される。換言すれば、プロセッサコア１２５は、メモリコントローラ１１５として機能する。代わりの実施形態として、メモリコントローラ１１５およびプロセッサコア１２５は、分離してパッケージ化される。他の実施形態として、一つ以上のプロセッサコア１２５は、ＮＶＭ１１０とともに一体化される（図示しない）。さらに他の実施形態として、プロセッサ１３０は、一つ以上のプロセッサコア１２５無しのメモリコントローラ１１５を含む。
【００１２】
一つの実施形態として、プロセッサコア１２５は入力／出力モジュール１３５に接続される。入力／出力モジュール１３５は、データを装置におよび／または装置から転送する役割を果たす。一つの実施形態として、入力／出力モジュール１３５は、移動体通信装置のための、無線周波数（“ＲＦ”）トランシーバのような無線トランシーバを含む。然るが故に、その装置は、携帯電話装置または、例えばＩＥＥＥ  ８０２．１１仕様に基づいて無線ローカルエリアネットワーク（ＷＬＡＮ）の基礎をなすテクノロジーを提供するワイヤレスフィデリティ（Ｗｉ−Ｆｉ）、ＩＥＥＥ  ８０２．１６−２００５に基づくＷｉＭａｘおよび移動体ＷｉＭａｘ、ワイドバンドコードディビジョンマルチプレクス（ＷＣＤＭＡ）、および移動体通信ネットワークのためのグローバルシステム（ＧＳＭ）として動作してよい。しかしながら、本発明は、これらのネットワークのみにおいて動作することに限定されるものではない。一つの実施形態として、入力／出力モジュール１３５は、例えば、外部またはリムーバブルメモリ等の他の装置と通信するための有線接続を提供する。
【００１３】
一つの実施形態として、メモリ１００は、装置の動作中にメモリコントローラ１１５（またはプロセッサ１３０）によって実行される命令を記憶する。一つの実施形態として、メモリ１００は、メッセージが送信されるべきときのための条件のようなユーザデータまたは送信される実際のデータを記憶する。例えば、メモリ１００に記憶された命令は、無線通信を実行し、装置のためのセキュリティ機能性、カレンダー処理、電子メール、インターネット閲覧等のようなユーザ機能性を提供する。
【００１４】
図２は、本発明の実施形態による、ＮＶＭ１１０のリフレッシュを発生させるためのモジュールを含むハイレベルのブロック図である。温度センサ２００は、ＮＶＭ１１０内の接合点温度（例えば、メモリのシリコン温度）を測定する。瞬時温度は、スタンバイ電流、ＣＭＯＳデバイスの飽和電流等のような電気的パラメータに影響を及ぼす。時間が経過すると、接合点温度は、メモリセルの記憶力に強い影響を及ぼす。
【００１５】
一つの実施形態として、少なくともＮＶＭ１１０の一部は、ＮＶＭ１１０の温度が或る期間において閾値温度を超えたときに、リフレッシュされる。一つの実施形態として、上記閾値温度および上記期間は、メモリコントローラ１１５またはメモリ１００が製造されたときに設定される。一つの実施形態として、上記閾値温度および上記期間は、プログラム可能であり、システムメーカまたは中間業者のいずれか、またはエンドユーザによって設定されるようにすることができる。
【００１６】
一つの実施形態として、温度センサ２００は、ＮＶＭ１１０内に実装されている。もしＮＶＭ１１０の温度が閾値温度を超えると、タイマ２０５が、上記閾値温度を超えて経過した時間の総計の追跡が開始される。一つの実施形態として、タイマ２０５はシステムクロックを使用する。代わりの実施形態として、タイマ２０５は、システムクロックからは分離されたクロック、フェーズロックトループ（位相同期）、または他の知られているリファレンス信号を使用する。
【００１７】
温度が閾値温度を超える時間の総計は、２レベルの粒度（ｇｒａｎｕｌａｒｉｔｙ）で追跡される。例えば、第１および第２レベルの粒度は、それぞれ、分単位および１０分単位、分単位および時間単位、時間単位および日単位、日単位および週単位等での時間の総計を追跡できる。一つの実施形態として、第１レベルの粒度は、揮発性メモリ１０５に記憶される揮発性カウンタ２１０内で追跡され、第２レベルの粒度は、ＮＶＭ１１０に記憶される不揮発性カウンタ２１５内で追跡される。もし揮発性メモリ１０５内での、例えば電力の損失、シャットダウンなどの情報の損失を生じさせるようなイベント、揮発性カウンタ２１０に記憶されたより重要ではないレベルの粒度が失われたとしても、より重要なレベルの粒度が不揮発性カウンタ２１５に記憶されて残る。
【００１８】
揮発性カウンタ２１０は、タイマ２０５が第１レベルの粒度の追加されてゆく単位に到達する各時間ごとにインクリメントされる。タイマ２０５は、温度センサ２００がＮＶＭ１１０の瞬時接合温度が閾値温度より低く落ちたことを検出したときに停止する。それにもかかわらず、上記カウンタは、進行する計数を維持し、タイマ２０５は、ＮＶＭ１１０の瞬時接合温度が閾値温度よりも再び高くなるときはいつでも、再スタートするだろう。
【００１９】
不揮発性カウンタ２１５は、揮発性カウンタ２１０が第２レベルの粒度の単位に到達する各時間ごとにインクリメントされる。最終的に、不揮発性カウンタ２１５が閾値時間期間に達したときに、ＮＶＭ１１０の少なくとも一部のリフレッシュ２２０がトリガされる。一つの実施形態として、リフレッシュ２２０は、メモリコントローラ１１５に送られるトリガ信号である。その信号はＮＶＭ１１０のリフレッシュを順次実行する。代わりの実施形態として、リフレッシュ２２０は、ＮＶＭ１１０内に記憶されるレジスタ値の設定をもたらす。上記システム（メモリコントローラ１１５またはプロセッサ１３０、例えばソフトウェアまたはファームウェアからの実行される命令）は、レジスタ値を周期的に監視し、もしそのレジスタ値がリフレッシュをトリガするように設定されると、リフレッシュを実行する（以下にさらに説明される）。
【００２０】
さらに、瞬時接合温度は、ソフトウェアまたはメモリコントローラ１１５によってアクセス可能でシステムにメモリの高温レベルについて通知するためのレジスタ値を設定するのに使用することができる。それからそのシステムは、高温での動作に応答して、いくつかの重要なタイミングのレートを下げる状態になる。
【００２１】
図３は、本発明の他の実施形態による、不揮発性メモリのリフレッシュを発生させるためのモジュールを含むハイレベルのブロック図である。図２に示される実施形態と同様に、温度センサ３００がタイマ３０５のトリガをかけ、閾値温度を超えてＮＶＭ１１０が費やす時間の総計が、揮発性カウンタ３１５および不揮発性カウンタ３２５内の２レベルの粒度で追跡される。閾値総計時間に到達すると、リフレッシュ３３０がトリガされる。しかしながら、この代わりの実施形態では、ステップモジュール３１０および３２０が追加されている。ステップモジュール３１０および３２０は、温度がより高温（またはより危機的な）レベルに達したときに、リフレッシュ動作の頻度を増加させるために使用される。
【００２２】
ステップモジュール３１０および３２０は、カウンタ３１５および３２５のうちの一つまたは両方に、重み付け効果を与える。その結果として、複数の閾値温度を設定することができる。動作温度の各上昇レベルにおいて、ステップモジュール３１０および３２０のうちの一つまたは両方は、計数値に対する乗算器として動作し、または別な方法では、揮発性カウンタ３１５の計数のトリガをかけるときのタイマ３０５の計数、あるいは、不揮発性カウンタ３２５の計数のトリガをかけるときの揮発性カウンタ３１５の計数を増加させる。代わりに、ステップモジュール３１０および３２０のうちの一つまたは両方は、それぞれ、カウンタ３１５および３２５のためのトリガレベルを制御するように動作する。動作温度の上昇したレベルに達すると、第１および第２レベルの粒度のための閾値レベルが減少させられる。
【００２３】
代わりの実施形態として、メモリコントローラ１１５またはプロセッサ１３０は、高温にさらされることによる参照メモリセルの劣化を監視し、ＮＶＭ１１０の少なくとも一部をいつリフレッシュするかを決定する。その参照セルは、全てのメモリアレイセルの最悪のケースを示している。換言するならば、高い動作温度のために劣化する最初のメモリセル群内にあるだろう。一つの実施形態として、参照メモリセルは、記憶されている値が閾値レベルと交差したときに劣化したと決定される。
【００２４】
例えば、メモリセルを通過する電荷のレベル（例えば、測定された電圧、抵抗および電圧等）が、読出し時に、監視される。２つの記憶状態、“１”および“０”を有するデバイスにおいては、電荷がだいたい５０パーセント閾値より上になったときに、それは値１を有する。電荷が５０パーセント閾値より下になったときに、その値は０である。一つの実施形態として、参照メモリセルは、一貫した値を維持するように設定され、参照メモリセル閾値は、通常の状態変化閾値よりも敏感になるように設定される。例えば、上述の例では、５０パーセント閾値が通常である。参照セルに記憶された一貫値に依存して４０パーセントまたは６０パーセント参照セル閾値がより敏感となる。よって、もし参照メモリセルの値が参照セル閾値と交差したと決定されたら、リフレッシュが、ＮＶＭ１１０が劣化することまたはより劣化することを防止するために、開始されるべきである。
【００２５】
一つの実施形態として、閾値レベルは、製造時にまたはユーザによってプログラムされること等により設定される。上述した例はメモリの２状態のみを含んでいるが、参照セルおよびＮＶＭ１１０は、メモリの３状態以上を記憶し、多状態間を区別するための多閾値を含むことができる。
【００２６】
図４は、本発明のさらに他の実施形態による、ＮＶＭ１１０のリフレッシュを発生させるためのモジュールを含むハイレベルのブロック図である。図２および図３に示される実施形態と同様に、温度センサ４００がＮＶＭ１１０内の接合温度を測定する。もしＮＶＭ１１０の温度が閾値温度を超えると、タイマ４０５が閾値温度より高い温度のときに費やされる時間の追跡が開始される。もし温度が閾値温度より低い温度に落ちたら、タイマ４０５が時間の追跡を停止する。トリガロジック４１０は、温度センサ４００によって測定された瞬時温度をタイマ４０５によって測定された関連する時間または計数値と累積的に結びつけることにより、接合温度の積分（累算）を計算する。もし、接合温度の積分が積分閾値を超えたら、トリガロジック４１０が、ＮＶＭ１１０の少なくとも一部のリフレッシュをトリガする。従って、閾値温度より高い温度で費やされる時間と閾値温度よりも高い温度の総計の両方が、ＮＶＭ１１０のリフレッシュの頻度における要素として与えられる。
【００２７】
一つの実施形態として、もし接合温度の積分値が積分閾値を超えなければ、その積分値はＮＶＭ１１０内に記憶される。ＮＶＭ１１０の温度が次に閾値温度を超えたときに、先の積分温度が現在の積分温度と合計されて、ＮＶＭ１１０のリフレッシュをいつトリガするかを決定する。
【００２８】
一つの実施形態として、温度センサ４００、タイマ４０５、およびトリガロジック４１０は、ＮＶＭ１１０内に実装される。代わりに、タイマ４０５およびトリガロジック４１０のうちの一つまたは両方がメモリコントローラ１１５（またはプロセッサ１３０）内に実装される。
【００２９】
一つの実施形態として、システムはさらに、トリガロジックの使用無しに、メモリ仕様およびシステム状態に基づいて、リフレッシュ動作を開始させる。例えば、メモリは、閾値温度を超えることが無かったにもかかわらず一週間に一度、あるいは、その装置の年数に基づいて定期的に、リフレッシュされてよい。
【００３０】
図５は、時間に対する不揮発性メモリの例示的な温度のグラフ表現である。図２および図５を参照したとき、タイマ２０５は閾値温度Ｔｃ１より高い温度で費やされる時間の総計ｔ１．１、ｔ２．１、およびｔ３．１を追跡する。ＮＶＭ１１０の少なくとも一部のリフレッシュ２２０が、不揮発性カウンタ２１５がｔ１．１、ｔ２．１、およびｔ３．１の追跡内における閾値期間に達したときに、トリガされる。
【００３１】
図３および図５を参照したとき、タイマ３０５は閾値温度Ｔｃ１より高い温度で費やされる時間の総計、ｔ１．１、ｔ２．１、およびｔ３．１を追跡する。一つの実施形態として、ステップモジュール３１０および３２０のうちの一つまたは両方が、温度が時間ｔ１、ｔ２、およびｔ３の間に第２の閾値温度Ｔｃ２を超えたときに、タイマ３０５の計数値に対して、乗算する、または別の方法では増加させるように作動する。代わりに、上述したように、ステップモジュール３１０および３２０は、粒度またはリフレッシュトリガ閾値を下げるように作動することができる。図５は、２つの閾値温度の例を示しているが、本発明の実施形態は、リフレッシュの頻度に影響を及ぼす任意の数の閾値温度を有してよい。
【００３２】
図４および図５を参照したとき、温度カーブより下の影付けされた領域は、接合温度の積分値を示している。上述したように、接合温度の積分の累積値はＮＶＭ１１０内に記憶されてよく、その合計が閾値を超えたときにリフレッシュがトリガされる。
【００３３】
図６は、本発明の実施形態による、ＮＶＭ１１０のリフレッシュをホスト（例えばメモリコントローラ１１５またはプロセッサ１３０）と同期させるために使用されるリフレッシュレジスタに対する例示的な値を示す表である。リフレッシュレジスタは、リフレッシュ動作についての情報を含む。トリガイベントビット、ＲＲ．０は、ＮＶＭ１１０がリフレッシュを受けることになっているときに設定される。一つの実施形態として、図２または図３を参照すると記載されているように、ＮＶＭ１１０のモジュールは、トリガイベントビットページリフレッシュを設定して、リフレッシュをメモリコントローラ１１５（またはプロセッサ１３０）と同期させる。ページリフレッシュアクティブビット、ＲＲ．１は、リフレッシュ中における読出しおよび書込み要求を管理するために設定される。代わりに、ページリフレッシュビットは、物理ピンを使ってメモリコントローラ１１５に送信されてもよいだろう。さらに、リフレッシュページアドレスが、リフレッシュを受けているＮＶＭ１１０の領域を指し示してリフレッシュ中の読出し要求を管理するために、追加のビットＲＲ．２−ＲＲ．１５に設定されてよい。図６のリフレッシュレジスタは例示であり、代わりの実施形態においては、より多くのまたはより少ないビットを含んでよく、追加の機能を含んでよく、あるいは、記載された機能を異なる順番で含んでもよい。
【００３４】
図７は、時間に対する不揮発性メモリの例示的な温度および対応するリフレッシュレジスタ値のグラフ表現である。例えば、図２および図６を参照したとき、不揮発性カウンタ２１５が閾値期間に達したときにＮＶＭ１１０の少なくとも一部のリフレッシュがトリガされる。そのトリガイベントは、ＲＲ．０をゼロに設定して、システムがリフレッシュを開始すべきであることを指し示す。リフレッシュが実行されている間、ＲＲ．１が設定されてＮＶＭ１１０のパーティションがビジーであることを示し、そしてＲＲ．２−１５が設定されてＮＶＭ１１０のどのページがリフレッシュを受けているかを示す。一つの実施形態として、各ＲＲ．２−１５ビットは、パーティションと関連付けることができる。パーティションは、共通のプログラム、読出し、および消去回路を共有するページのグループである。
【００３５】
図６を参照して述べられたように、温度警報ビット（またはビット群）は、ＮＶＭ１１０内のレジスタに設定されるようにすることができる。システムは、ＮＶＭ１１０のリフレッシュに対する必要性を決定するために、定期的にそのレジスタにポーリングすることができる。一つの実施形態として、メモリコントローラ１１５は、温度警報がアクティブであってＮＶＭのリフレッシュを開始することを決定したことに応じて、割込みメッセージを生成する。代わりに、ホストは、ＮＶＭ１１０のリフレッシュを開始するより前に、現在の動作または動作群が完了するまで待機する。さらに、ホストは、追加の温度ストレスがメモリ仕様によって許容される範囲内である場合には、与えられたリフレッシュ動作を延期させることができる。一つの実施形態として、リフレッシュレジスタは、温度警報に対する緊急度レベルを含む。
下記の表１は、インアクティブ状態および３つの緊急度のレベルを含む温度警報のための例示的な値を示す。
【００３６】
【表１】
0005470608.tif 000002
【００３７】
一つの実施形態として、メモリコントローラ１１５またはプロセッサ１３０（例えばソフトウェアまたはファームウェアからの命令に従って）は、温度警報の緊急度のレベルに基づいて、割込みのための必要性に優先順位を付ける。例えば、もし温度警報が低緊急度に設定されたら、メモリコントローラ１１５は、ＮＶＭ１１０のリフレッシュを開始する前に、現在の動作または動作群が完了するまで待機する。もし、温度警報が中緊急度に設定され、かつ現在の動作または動作群が高い優先順位であったなら、メモリコントローラ１１５は、ＮＶＭ１１０のリフレッシュを開始する前に、現在の動作または動作群が完了するまで待機する。もし温度警報が中緊急度に設定され、かつ現在の動作または動作群が低い優先順位であったなら、メモリコントローラ１１５は、温度警報がアクティブであってＮＶＭのリフレッシュを開始することを決定するのに応じて、割込みメッセージを生成する。もし温度警報が高緊急度に設定されたなら、メモリコントローラ１１５は、温度警報がアクティブであってＮＶＭのリフレッシュを開始することを決定するのに応じて、割込みメッセージを生成する。
【００３８】
一つの実施形態として、温度警報の緊急度の変化するレベルは、それによって現在の温度または或る期間にわたる温度が閾値温度を超える総計に従って設定される。一つの実施形態として、緊急度のレベルは、温度が閾値期間を超えて閾値温度より高い状態のままとなる時間の総計に対応して増加させられてよい。一つの実施形態として、緊急度のレベルは、積分温度が閾値積分値を超える総計に対応して増加させられてよい。一つの実施形態として、より高い緊急度のレベルは、ＮＶＭ１１０の高優先順位部分に関連する。例えば、緊急度のレベルは、製造時、プログラミング時、またはユーザによって設定されて、ＮＶＭ１１０内に記憶されている幾つかのデータまたはコードに対してより大きな保護を与える。一つの実施形態として、緊急度のレベルは、ＮＶＭ１１０の年数または使用状態とともに増加する。
【００３９】
一つの実施形態として、リフレッシュ動作のための粒度のレベルは、製造時、プログラミング時、またはユーザによって設定される。例えば、リフレッシュ粒度は３レベルを有する。：全パーティション（リフレッシュはメモリ全体で実行される）、パーティションごと（一回に一パーティションがリフレッシュされる）、またはパーティションのリージョンごと（一回に一リージョンがリフレッシュされる）。ＮＶＭ１１０のリフレッシュのパーティションまたはリージョンへの配分は、緊急度の変化するレベルに対して（上述した）、またはリフレッシュが起こらないようにするためのメモリの部分のマスキングに対して（さらに下記で考察する）、柔軟性を可能にする。
【００４０】
さらに、リフレッシュ動作は、例えば読出しまたは書込みの要求に応じて、一時停止させられ、そして再開させられることができる。リフレッシュ動作のための粒度のレベルは、リフレッシュ動作を一時停止しそして再開するのに必要な頻度に強い影響を与える。
【００４１】
一つの実施形態として、ＮＶＭ１１０は、リージョンサイズ設定レジスタを記憶し、リージョンのサイズは、製造時、プログラミング時、またはユーザによって設定される。下記の表２は、例示的なリージョンサイズ設定レジスタ値を示す。
【００４２】
【表２】
0005470608.tif 000003
【００４３】
一つの実施形態として、ＮＶＭ１１０のリフレッシュが各パーティションまたは各リージョンに対する分離されたリフレッシュ動作に分割されるとき、リフレッシュステータスレジスタがＮＶＭ１１０に記憶されて、ＮＶＭ１１０のどの部分がリフレッシュ動作を必要として、どの部分がリフレッシュが必要でないかを追跡する。従って、もしメモリの部分がリフレッシュが起こらないようにマスクされ（下記で述べる）、またはもしＮＶＭ１１０の一つ以上の部分のリフレッシュのプロセスが割り込まれたら、メモリコントローラ１１５は、ＮＶＭ１１０のどの部分をリフレッシュするかを決定することができる。ＮＶＭ１１０の一部分がひとたびリフレッシュを受けたら、対応するリフレッシュステータスが更新される。下記の表３は、例示的なリフレッシュステータスレジスタを示す。
【００４４】
【表３】
0005470608.tif 000004
【００４５】
一つの実施形態として、ＮＶＭ１１０の一つ以上の部分が、リフレッシュ動作を起こらないようにするために（または可能とするために）、マスクされる。例えば、もしＮＶＭ１１０の或る部分が空で、未使用で、または無効データを含んでいるならば、リフレッシュを実行するために必要とされる時間および資源が、他の動作のために、良好に節約される。さらに、もし書込み要求がＮＶＭ１１０の或るリージョンに絶えず命令されているならば、リフレッシュに対する必要性は、次の書込み要求の実行によってたぶん不要にされる。一つの実施形態として、パーティションまたはリージョンのマスクステータスは、各パーティションまたはリージョンの内容の状態に従って、メモリコントローラ１１５によって設定される。代わりの実施形態として、パーティションまたはリージョンのマスクステータスは、製造時、プログラミング時、またはユーザによって設定される。下記の表４は、例示的なマスクステータスレジスタを示す。
【００４６】
【表４】
0005470608.tif 000005
【００４７】
記載された方法は、当業者が、適切に構成されたコンピュータ、移動体電話、コンシューマ電子装置、およびメモリカード（例えば、機械的読取り可能記憶メディアからの命令を実行するプロセッサまたはコントローラ）上の論理ブロックで表現される動作を実行する対応する命令を含むプログラムを開発することを可能にさせる。コンピュータ実行可能命令は、コンピュータプログラミング言語によって記述されてよく、あるいは、ファームウェアロジックまたはハードウェア回路に具現化されてもよい。“機械読取り可能記憶メディア”という言葉は、プロセッサまたはコントローラによってアクセス可能な任意のタイプの揮発性または不揮発性記憶装置を含む。それは、搬送波のための機械読取り可能伝送メディアとは異なることが意図されている。
【００４８】
前述した明細書において、本発明は、それについての特定の例示的な実施形態に関連して記載されてきた。本発明のより広い精神および範囲から逸脱することなく、それに対して様々な変形を行ってよいことは明らかであろう。本発明の記載されている一つの実施形態としては、ホスト装置はパーソナルコンピュータであるが、本発明の他の実施形態は、ホスト装置として、移動体電話、パーソナルデジタルアシスタント、デジタルオーディオ／ビデオプレーヤ、デジタルカメラ、ゲーム操作卓等を実施してよい。明細書および図面は、従って、限定的な意味というよりは、実例的な意味とみなされるべきである。
【図１】
0005470608.tif 000006
【図２】
0005470608.tif 000007
【図３】
0005470608.tif 000008
【図４】
0005470608.tif 000009
【図５】
0005470608.tif 000010
【図６】
0005470608.tif 000011
【図７】
0005470608.tif 000012