(57)【特許請求の範囲】
【請求項１】
メモリ・デバイスのランクでリフレッシュ動作を実行するための方法であって、
メモリ動作の完了に応答して、リフレッシュ・バックログ数が第１の所定の値より大きいか否かを判定するステップと、
前記リフレッシュ・バックログ数が前記第１の所定の値より大きいという判定において、できるだけ早くリフレッシュ動作を実行するステップと、
前記リフレッシュ・バックログ数が前記第１の所定の値より大きくないという判定において、前記リフレッシュ・バックログ数が第２の所定の値より小さいか否かを判定するステップと、
前記リフレッシュ・バックログ数が前記第２の所定の値より小さくないという判定において、前記リフレッシュ・バックログ数が第３の所定の値より小さく、かつメモリ・デバイスの前記ランクがパワー・ダウン状態にあるか否かを判定するステップと、
前記リフレッシュ・バックログ数が前記第３の所定の値より小さく、かつメモリ・デバイスの前記ランクがパワー・ダウン状態にあるという判定において、リフレッシュ動作が最大遅延時間後に実行されることになるようにアイドル数閾値を最大値に設定するステップと、
前記リフレッシュ・バックログ数が前記第３の所定の値より小さくないか、またはメモリ・デバイスの前記ランクがパワー・ダウン状態にないという判定において、リフレッシュ動作がしかるべく実行されることになるようにアイドル遅延関数の勾配に基づいて前記アイドル数閾値を設定するステップと
を含む方法。
【請求項２】
前記第１の所定の値が７である、請求項１に記載の方法。
【請求項３】
前記第２の所定の値が３である、請求項１に記載の方法。
【請求項４】
前記第３の所定の値が５である、請求項１に記載の方法。
【請求項５】
前記アイドル数閾値が前記リフレッシュ・バックログ数に負に比例する、請求項１に記載の方法。
【請求項６】
前記リフレッシュ・バックログ数が前記第２の所定の値より小さいという判定において、前記アイドル数閾値を前記最大値に設定するステップをさらに含む、請求項１に記載の方法。
【請求項７】
リフレッシュ動作を実行するためのコンピュータ・プログラムを記録したコンピュータ可読記録媒体であって、
メモリ動作の完了に応答して、リフレッシュ・バックログ数が第１の所定の値より大きいか否かを判定するためのプログラム・コードと、
前記リフレッシュ・バックログ数が前記第１の所定の値より大きいという判定において、できるだけ早くリフレッシュ動作を実行するためのプログラム・コードと、
前記リフレッシュ・バックログ数が前記第１の所定の値より大きくないという判定において、前記リフレッシュ・バックログ数が第２の所定の値より小さいか否かを判定するためのプログラム・コードと、
前記リフレッシュ・バックログ数が前記第２の所定の値より小さくないという判定において、前記リフレッシュ・バックログ数が第３の所定の値より小さく、かつメモリ・デバイスのランクがパワー・ダウン状態にあるか否かを判定するためのプログラム・コードと、
前記リフレッシュ・バックログ数が前記第３の所定の値より小さく、かつメモリ・デバイスの前記ランクがパワー・ダウン状態にあるという判定において、リフレッシュ動作が最大遅延時間後に実行されることになるようにアイドル数閾値を最大値に設定するためのプログラム・コードと、
前記リフレッシュ・バックログ数が前記第３の所定の値より小さくないか、またはメモリ・デバイスの前記ランクがパワー・ダウン状態にないという判定において、リフレッシュ動作がしかるべく実行されることになるようにアイドル遅延関数の勾配に基づいて前記アイドル数閾値を設定するためのプログラム・コードと
を記録したコンピュータ可読記録媒体。
【請求項８】
前記第１の所定の値が７である、請求項７に記載のコンピュータ可読記録媒体。
【請求項９】
前記第２の所定の値が３である、請求項７に記載のコンピュータ可読記録媒体。
【請求項１０】
前記第３の所定の値が５である、請求項７に記載のコンピュータ可読記録媒体。
【請求項１１】
前記アイドル数閾値が前記リフレッシュ・バックログ数に負に比例する、請求項７に記載のコンピュータ可読記録媒体。
【請求項１２】
前記リフレッシュ・バックログ数が前記第２の所定の値より小さいという判定において、前記アイドル数閾値を前記最大値に設定するためのプログラム・コードをさらに含む、請求項７に記載のコンピュータ可読記録媒体。
【請求項１３】
リフレッシュ動作を実行するための装置であって、
メモリ動作の完了に応答して、リフレッシュ・バックログ数が第１の所定の値より大きいか否かを判定するためのコンパレータと、
前記リフレッシュ・バックログ数が前記第１の所定の値より大きいという判定において、できるだけ早くリフレッシュ動作を実行し、
前記リフレッシュ・バックログ数が前記第１の所定の値より大きくないという判定において、前記リフレッシュ・バックログ数が第２の所定の値より小さいか否かを判定し、
前記リフレッシュ・バックログ数が前記第２の所定の値より小さくないという判定において、前記リフレッシュ・バックログ数が第３の所定の値より小さく、かつメモリ・デバイスのランクがパワー・ダウン状態にあるか否かを判定し、
前記リフレッシュ・バックログ数が前記第３の所定の値より小さく、かつメモリ・デバイスの前記ランクがパワー・ダウン状態にあるという判定において、リフレッシュ動作が最大遅延時間後に実行されることになるようにアイドル数閾値を最大値に設定し、
前記リフレッシュ・バックログ数が前記第３の所定の値より小さくないか、またはメモリ・デバイスの前記ランクがパワー・ダウン状態にないという判定において、リフレッシュ動作がしかるべく実行されることになるようにアイドル遅延関数の勾配に基づいて前記アイドル数閾値を設定する
ためのメモリ・コントローラと
を備える装置。
【請求項１４】
前記第１の所定の値が７である、請求項１３に記載の装置。
【請求項１５】
前記第２の所定の値が３である、請求項１３に記載の装置。
【請求項１６】
前記第３の所定の値が５である、請求項１３に記載の装置。
【請求項１７】
前記アイドル数閾値が前記リフレッシュ・バックログ数に負に比例する、請求項１３に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、一般に、メモリ・リフレッシュ動作に関し、詳細には、高密度メモリにおけるメモリ・リフレッシュ動作をスケジュールするための方法に関する。
【背景技術】
【０００２】
ダイナミック・ランダム・アクセスメモリ（ＤＲＡＭ）は、様々な用途において広く利用されている。典型的なＤＲＡＭは複数のブロックのメモリ・セルを有し、各メモリ・セルはコンデンサおよびアクセス・トランジスタを含む。コンデンサは、メモリ・セルに記憶されているデータの値に関連した電荷を蓄積し、アクセス・トランジスタは、メモリ・セルから読み出すまたはメモリ・セルに書き込むために、コンデンサをビットラインに選択的に結合する。
【０００３】
様々な漏洩経路のため、メモリ・セルのコンデンサの中に蓄積されている電荷は、通常、数十ミリ秒未満で消失する。メモリ・セルに記憶されているデータの完全性を維持するために、メモリ・セルは、蓄積されている電荷が消失する機会を持つ前に、メモリ・セル内のデータを読み出すこと、および読み出されたデータをメモリ・セルに再書込みすることにより、定期的にリフレッシュされる必要がある。
【０００４】
ＪＥＤＥＣ規格によれば、ＤＲＡＭデバイスは、次にリフレッシュされるべきＤＲＡＭデバイスのセグメントを指定する内部カウンタを維持し、メモリ・コントローラは、ＤＲＡＭデバイスにアドレスなしのリフレッシュ・コマンドを出す。リフレッシュ動作と密接に関連する２つの主要なＪＥＤＥＣパラメータは、ｔＲＥＦＩおよびｔＲＦＣである。パラメータｔＲＥＦＩは、リフレッシュ・コマンドがＤＲＡＭデバイスに送信されなければならない間隔を指定し、パラメータｔＲＦＣは、ＤＲＡＭデバイス・インターフェースが各リフレッシュ動作によって拘束されている時間の量を指定する。
【０００５】
ほとんどの通常のメモリ・コントローラは、（リフレッシュ・タイマに指令する）ｔＲＥＦＩが終了するときはいつでも、単にリフレッシュ動作を送信するだけである。これは、読取り動作または書込み動作あるいはその両方が非常に長い時間の間遅延される必要がないように、各リフレッシュ動作が迅速に完了されることが可能である、より古いコンピュータ・システムには十分である。しかし、４ギガビットＤＲＡＭチップおよび１６ギガビットＤＲＡＭチップなどの高密度ＤＲＡＭチップでは、リフレッシュ動作は、一般に、完了するのにかなりの時間がかかる。正味効果は、読取り動作または書込み動作あるいはその両方がリフレッシュ動作に対応するために頻繁に止められることを必要とされる場合、有効メモリ待ち時間が無視できないほど増加することである。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
したがって、高密度メモリにおいてリフレッシュ動作を実行するための改善された方法および装置を提供することが望ましい。
【課題を解決するための手段】
【０００７】
本開示の好ましい実施形態によれば、メモリ・デバイスのメモリ動作の完了に応答して、リフレッシュ・バックログ数値が第１の所定の値より大きいか否かの判定が行われる。リフレッシュ・バックログ数値が、第１の所定の値より大きい場合は、リフレッシュ動作はできるだけ早く行われる。リフレッシュ・バックログ数値が第１の所定の値より大きくない場合は、リフレッシュ・バックログ数値が第２の所定の値より小さいか否かの別の判定が行われる。リフレッシュ・バックログ数値が第２の所定の値より小さくない場合は、リフレッシュ・バックログ数値が第３の所定の値より小さく、かつメモリ・デバイスのランクがパワー・ダウン状態にあるか否かの別の判定が行われる。リフレッシュ・バックログ数値が第３の所定の値より小さく、かつメモリ・デバイスのランクがパワー・ダウン状態にある場合は、リフレッシュ動作が最大遅延時間後に行われるようにアイドル数閾値が最大値に設定される。リフレッシュ・バックログ数値が、第３の所定の値より小さくないか、またはメモリ・デバイスのランクがパワー・ダウン状態にない場合は、アイドル数閾値は、リフレッシュ動作がしかるべく行われるように、アイドル遅延関数の勾配に基づいて設定される。
【０００８】
本開示のすべての特徴および利点は、以下の詳細な明細書において明らかになろう。
【０００９】
本開示自体、ならびに使用の好ましいモード、さらなる目的、およびそれらの利点は、添付の図面と併せて読まれると、例示的実施形態の以下の詳細な説明を参照することにより最もよく理解されよう。
【図面の簡単な説明】
【００１０】
【図１】本発明の好ましい実施形態が実施されることが可能であるダイナミック・ランダムアクセス・メモリを有する電子システムのブロック図である。
【図２】本発明の好ましい実施形態によるアイドル遅延関数の特性を示す図である。
【図３】本発明の一実施形態による、図２からのアイドル遅延関数を実行するためのハードウェア構造を示す図である。
【図４】本発明の一実施形態による、図２からのアイドル遅延関数を実行するためのハードウェア構造を示す図である。
【図５】本発明の好ましい実施形態による、リフレッシュ動作を実行するための方法のハイレベル論理流れ図である。
【発明を実施するための形態】
【００１１】
次に、図面および具体的には図１を参照すると、本発明の好ましい実施形態が実施され得るダイナミック・ランダム・アクセス・メモリ（ＤＲＡＭ）デバイスを有する電子システムのブロック図が示されている。図示されているように、システム１０は、バス１７を介してＤＲＡＭデバイス１１に結合されているプロセッサ１５を含む。ＤＲＡＭデバイス１１は、一連のメモリ・セル２０、行デコーダおよびドライバ１２、センス増幅器１６、ならびに列デコーダおよびマルチプレクサ１４を含む。ＤＲＡＭデバイス１１はまた、制御回路２８およびリフレッシュ・コントローラ２６を含む。制御回路２８は、バス１７を介してプロセッサ１５から制御信号を受信した後に、対応する内部制御信号をＤＲＡＭデバイス１１の中の様々な回路に提供して、読取り動作、書込み動作、リフレッシュ動作、またはアイドル動作を実行する。制御回路２８はまた、リフレッシュ・コントローラ２６からリフレッシュ要求を受信する。
【００１２】
メモリ・セル２０は、行ごとのリフレッシュ処理でリフレッシュされることが可能である、すなわち、行２１の所与の１つの中のすべてのメモリ・セルが同時にリフレッシュされる。リフレッシュ・コントローラ２６が何時およびメモリ・セル２０のどれがリフレッシュされる必要があるかを判定し、制御回路２８がリフレッシュ・コントローラ２６によって供給されるリフレッシュ・アドレスを使用して一度に行２１のそれぞれをリフレッシュする。
【００１３】
従来のメモリ・コントローラは、一般に、リフレッシュ・ペナルティ（すなわち、読取り動作または書込み動作あるいはその両方とのコンフリクト）は、あるにしてもごくまれにしか問題にならないので、リフレッシュ動作のスケジューリングにほとんど注意を払わなかった。したがって、多くの従来のメモリ・コントローラは、前述のように、ｔＲＥＦＩ間隔が終了するとすぐ単にリフレッシュ動作が送信されるように強制するだけの最も簡単なリフレッシュ・スケジューリング・アルゴリズムを使用する傾向がある。この手法は、必要とされる制御論理ハードウェアが簡単なので、非常に一般的である。リフレッシュ時間はメモリの密度が高くなるにつれて増大するので、リフレッシュ・ペナルティがシステム設計者にとっては問題になっており、高密度メモリにおけるリフレッシュ動作を処理するために、より高度なリフレッシュ・スケジューリング・アルゴリズムが望ましい。
【００１４】
第１のメモリ動作の完了後の時間が増大するにつれて、第２のメモリ動作（読取りまたは書込みなど）を受信する確率が減少することが観察されている。したがって、リフレッシュ・コマンドを出す前の遅延の挿入は、リフレッシュ動作の実行が新しいメモリ動作の差し迫った実行と衝突する可能性を低減することができる。したがって、メモリ・ランクのすべてのバンク・キューが空になった後に、本発明のリフレッシュ・スケジューリング機構がリフレッシュ・コマンドを出す前にアイドル遅延を挿入する。それとは対照的に、従来のリフレッシュ・スケジューリング機構は、メモリ・ランクのためのすべてのバンク・キューが空になるとすぐ、リフレッシュ・コマンドを出す。
【００１５】
本質的に、アイドル遅延の挿入は、リフレッシュ動作の優先度をさらに下げる。アイドル遅延は、リフレッシュ・バックログ数（またはリフレッシュ遅延数）の関数として表されることが可能である。アイドル遅延関数と呼ばれてよいこの関数の一般的形態が図２に例示されている。アイドル遅延関数は、相異なる３つの領域、すなわち、低優先度領域、比例領域および高優先度領域を有する。アイドル遅延関数の３つの領域のそれぞれは、ワークロード特性に応じて動的に調整されることが可能である。アイドル遅延関数の３つの領域は、以下のように説明される。
【００１６】
電子システム内の多くのワークロードは、特有のアイドル遅延期間を有し、その期間中にｔＲＦＣ間隔の中でメモリ・コマンドを受信する確率は非常に低い。したがって、アイドル遅延関数は、低優先度領域によって表されるこの期間中は、最大アイドル遅延値に設定される。
【００１７】
比例領域は、リフレッシュ・バックログ数が所定の値（図２では、例えば３）に接近する時間フレームを表し、その後、リフレッシュ・コントローラは、より積極的なやり方でリフレッシュ・コマンドを出すプロセスを考慮し始める必要がある。比例領域中のアイドル遅延関数の勾配は、すべての遅延リフレッシュ動作の全範囲を利用するために動的に調整されることが可能である。
【００１８】
遅延リフレッシュ要求の数（すなわち、リフレッシュ・バックログ数）が最大値（図２では、例えば７）に接近するにつれて、リフレッシュ動作は、もはや遅延されることができず、１つの追加のｔＲＥＦＩ間隔以内に出されなければならない。この観点から、高優先度領域は２つのフェーズを有し、両方ともゼロのアイドル遅延を有する。本実施形態によれば、７のリフレッシュ・バックログ数において、リフレッシュ・コントローラは、バンク・キューが空になるとすぐリフレッシュ・コマンドを送信することができる。さらに、８のリフレッシュ遅延数において、リフレッシュ・コマンドは、他のいずれのメモリ・コマンドよりも前に、ＤＲＡＭバス・パラメータが許可するとすぐ、出される。
【００１９】
アイドル遅延関数の最適の特性はワークロード依存である場合があるので、図２に示されているアイドル遅延関数を構成するために、パラメータのセットが定義される必要がある。これらのパラメータは、表Ｉに記載されている。
【００２０】
【表１】
0005705379.tif 000002
最大遅延パラメータおよび比例勾配パラメータは、ワークロード基準をプロファイルする２つのハードウェア構造によって決定されてよい。
【００２１】
比例領域の目的は、延期スペクトルにおけるリフレッシュ動作の分布を動的に中心におくことである。これは延期ピボット点全体にわたるリフレッシュ動作の相対頻度を追跡することにより達成され得る。この延期ピボット点は、目標平均リフレッシュ実行点である。本実施形態では、延期範囲の中点を反映する４の延期数が利用される。
【００２２】
本実施形態に関して不必要に高優先度を強要するのを防止するのに有効であったので、高優先度ピボット点（比例領域から高優先度領域への移行部）は、７遅延リフレッシュ数で固定されてよい。
【００２３】
図２からのアイドル遅延関数を実行するためのハードウェア構造は、基本的静的制御機構と、最大遅延パラメータ、比例勾配パラメータおよび高優先度ピボット点パラメータを動的に調整するためのハードウェアとに分けられてよい。基本的静的制御機構では、各メモリ・ランクは、１０ビット・アイドル・カウンタを必要とする。さらに、最大遅延パラメータ、比例勾配パラメータおよび高優先度ピボット点パラメータは、それぞれ１０ビット・レジスタ、７ビット・レジスタおよび３ビット・レジスタを必要とする。最大遅延パラメータを動的に調整するためのハードウェアは、２０ビット幅、１０ビット入力アキュムレータおよび１０ビット・カウンタの追加を必要とする。比例勾配期間を生成するためのハードウェアは、２つの１６ビット・高／低カウンタ、１６ビット積分アキュムレータ、および７ビット２入力アキュムレータを含む。前述のハードウェア・コンポーネントすべてのサイズは、メモリ・コントローラまたはリフレッシュ・コントローラのサイズに比べれば無視してよいほど小さい。
【００２４】
次に、図３および図４を参照すると、図２からのアイドル遅延関数を実行するためのハードウェア構造が図示されている。図示されているように、この構造は、低カウンタ３１および高カウンタ３２を含み、各カウンタは、それぞれ高優先度ピボット点の低サイドおよび高サイドに位置する動作の頻度を含む。低カウンタ３１および高カウンタ３２のどちらか１つがオーバフローした場合は、すべての関連カウンタ内の値は、各レジスタを１つだけ右にシフトすることにより半分に分けられる。この方式はプロファイリング間隔全体にわたって動作し、各プロファイリング間隔の終わりに調整が行われる。各調整間隔において、論理は低カウンタ３１および高カウンタ３２の値を減算する。この値は、次に続く間隔のための比例勾配パラメータを更新するために比例積分カウンタ３３に適用される。各調整間隔後に低カウンタ３１および高カウンタ３２を再設定するための回路は、図３および図４には示されていない。
【００２５】
本実施形態では、低カウンタ３１、高カウンタ３２、および積分カウンタ３３は、１６ビット幅である。プロファイリング構造は、かなり少量の低カウンタ３１および高カウンタ３２更新論理状態を有し、急速に安定するので、１２８Ｋメモリ・クロックの比較的短い調整間隔が利用される。７ビットレジスタ３４は、図２からのアイドル遅延関数の比例領域の勾配を表す比例勾配値（延期されたステップごとの遅延サイクルの減少の単位）を生成するために利用される。積分カウンタ３３のｗ（ｐ）重み付け関数（weighing function）およびｗ（ｉ）重み付け関数は、値を最大５ビット値に切り捨てる（１１個までの先行ゼロをシフト・オフする）ことにより遂行され得る簡単な２のべき乗除法を利用する。
【００２６】
ＪＥＤＥＣ規格によれば、低電力状態をサポートするＤＲＡＭデバイスは、ＤＲＡＭデバイスが現在アクセスされていないときは、メモリ電力を通常の「アイドル状態」を超えて下げるために利用され得る。どの低電力状態が使用されるべきかは、電力とウェーク・アップ時間との間のトレード・オフに依存し、本発明には関係がない。アイドル状態と低電力状態との間の移行は、「Ｅｎｔｅｒ  Ｐｏｗｅｒ−ｄｏｗｎ」コマンドおよび「Ｅｘｉｔ  Ｐｏｗｅｒ−ｄｏｗｎ」コマンドを出すことにより制御される。読出しコマンド、書込みコマンドまたはリフレッシュ・コマンドは、ＤＲＡＭデバイスがアイドル状態にない限り、ＤＲＡＭデバイスに出されることができない。したがって、読出しコマンド、書込みコマンドまたはリフレッシュ・コマンドが出される必要があるときにＤＲＡＭデバイスが低電力状態にある場合は、まずＥｘｉｔ  Ｐｏｗｅｒ−ｄｏｗｎコマンドが出されなければならない。
【００２７】
メモリ・コントローラ・スケジューラは、適所でメモリ電力管理ポリシに応じて、ＤＲＡＭデバイスの特定のランクを、（ｉ．）その特定のランクを目標とする読出し／書込みコマンドを出した直後にパワー・ダウンすることができる、（ｉｉ．）読出し／書込みコマンドに続く多少の最小アイドル期間の後にパワー・ダウンすることができる、または（ｉｉｉ．）決してパワー・ダウンしなくてもよい。したがって、リフレッシュ・アイドル遅延時間が切れたとき、ＤＲＡＭデバイスの目標ランクは、すでにパワー・アップされている場合もあり、またはまだパワー・アップされていない場合もある。
【００２８】
Ｅｎｔｅｒ  Ｐｏｗｅｒ−ｄｏｗｎコマンドおよびＥｘｉｔ  Ｐｏｗｅｒ−ｄｏｗｎコマンドを出すことも電力を消費するので、一般に、電力状態移行の回数を最小にすることが望ましい。したがって、ＤＲＡＭデバイスのランクのパワー・アップをできる限り遅らせることは、電力節約の観点から有益である。したがって、ＤＲＡＭデバイスの目標ランクがパワー・ダウン状態にある場合は、リフレッシュ動作をもはや絶対に遅らせることができなくなるか、またはＤＲＡＭデバイスの目標ランクが何か他のコマンド（書込みコマンドなど）のためにパワー・アップされるまで、リフレッシュ動作をさらに遅延させることが好ましい。
【００２９】
リフレッシュ・アイドル遅延時間が切れ、かつＤＲＡＭデバイスの目標ランクがすでにパワー・アップされている（すなわち、アイドル状態にある）場合は、リフレッシュ・コマンドが出されることになる。リフレッシュ・アイドル遅延時間が切れ、かつＤＲＡＭデバイスの目標ランクがパワー・ダウン状態にある場合は、リフレッシュ・コマンドは、リフレッシュ・バックログ数に応じて延期されるべきである。
【００３０】
リフレッシュ・バックログがプログラム可能な所定の閾値に達した後は、メモリ・コントローラは１つまたは複数のリフレッシュ・コマンドを出すためにＤＲＡＭデバイスのランクをパワー・アップし始めることになる。この所定の閾値を超えた場合は、ＤＲＡＭデバイスの目標ランクがパワー・アップされることになり、リフレッシュ待ち時間が切れるとすぐリフレッシュ・コマンドが出されるべきである。
【００３１】
リフレッシュ・コマンドが最終的に出されたときに、ＤＲＡＭデバイスの同じランクにアクセスするのを待っている読出しコマンドがない場合は、バックログを低い値まで排出するために、２つ以上のリフレッシュ・コマンドを出すことが望ましい。
【００３２】
次に図５を参照すると、本発明の好ましい実施形態による、リフレッシュ動作を実行するための方法の高レベル論理流れ図が例示されている。ブロック４０から開始して、プロセスは、ブロック４１に示されているように、読出し動作または書込み動作などのメモリ動作が行われるのを待つ。メモリ動作が行われるのを待っている間、アイドル数値がアイドル数閾値に等しい場合は、ブロック４６に示されているように、リフレッシュ動作ができるだけ早く実行されることになるか、またはリフレッシュ・バックログ数がインクリメントされた場合は、ブロック４２に示されているように、リフレッシュ・バックログ数が７より大きいか否かの判定が行われる。同様に、メモリ動作が行われて終了した後は、プロセスはブロック４２に進む。
【００３３】
リフレッシュ・バックログ数が７より大きい場合は、ブロック４６に示されているように、リフレッシュ動作ができるだけ早く実行されるように、アイドル数閾値がゼロに（またはゼロの近くに）設定される。これは、図２の高優先度領域に対応する。次いで、プロセスはブロック４１に戻る。
【００３４】
しかし、リフレッシュ・バックログ数が７より大きくない場合は、ブロック４３に示されているように、リフレッシュ・バックログ数が３より小さいか否かの別の判定が行われる。リフレッシュ・バックログ数が３より小さい場合は、ブロック４４に示されているように、最大アイドル数閾値の時間が経過した後にリフレッシュ動作が（すなわち、ブロック４６において）実行されるように、アイドル数閾値が最大値に設定される。これは、図２の低優先度領域に対応する。現在のサーバ・グレードＤＲＡＭデバイスの最大アイドル数閾値は、現在７．８マイクロ秒である指定されたリフレッシュ間隔（ｔＲＥＦＩ）に依存し、デバイス密度に依存しない。次いで、プロセスはブロック４１に戻る。
【００３５】
そうでなければ、リフレッシュ・バックログ数が３より小さくない場合は、ブロック４７に示されているように、リフレッシュ・バックログ数が５より小さく、かつメモリ・デバイスのランクがパワー・ダウン状態にあるか否かの判定が行われる。リフレッシュ・バックログ数が５より小さく、かつメモリ・デバイスのランクがパワー・ダウン状態にある場合は、最大アイドル数閾値の時間が経過した後にリフレッシュ動作が（すなわち、ブロック４６において）実行されるように、ブロック４４に示されているように、アイドル数閾値が最大値に設定される。しかし、リフレッシュ・バックログ数が５より小さくないか、またはメモリ・デバイスのランクがパワー・ダウン状態にない場合は、アイドル数閾値は、ブロック４５に示されているように、アイドル遅延関数の勾配によって設定される。アイドル遅延関数の勾配は、図４からのハードウェア構造によって決定され、その値は、所望のリフレッシュ・アグレッシブネスおよび負荷要求によって調整されることが可能である。例えば、アイドル数閾値は、リフレッシュ・バックログ数が増大するにつれて直線的に減少する。これは、図２の比例領域に対応する。次いで、プロセスはブロック４１に戻る。
【００３６】
前述のように、本開示は、高密度メモリにおいてリフレッシュ動作を実行するための方法および装置を提供する。
【００３７】
本発明の例示的実施形態は、ハードウェアに関連して説明されてきたが、本発明の例示的実施形態のソフトウェア態様は、様々な形態でプログラム製品として販売されることが可能であり、本発明の例示的実施形態は、販売を実際に実行するために使用される媒体の特定のタイプに関係なく等しく適用されることを当業者は理解するであろう。媒体のタイプの例は、サム・ドライブ、フロッピー（Ｒ）・ディスク、ハード・ドライブ、ＣＤ  ＲＯＭ、ＤＶＤなどの記録可能タイプ媒体、ならびにデジタル通信リンクおよびアナログ通信リンクなどの伝送タイプ媒体を含む。
【００３８】
本開示は、好ましい実施形態に関連して具体的に図示され説明されてきたが、本開示の趣旨および範囲から逸脱することなく、形態および詳細の様々な変更がそこにおいて行われてよいことが当業者によって理解されよう。
【図１】
0005705379.tif 000003
【図２】
0005705379.tif 000004
【図３】
0005705379.tif 000005
【図４】
0005705379.tif 000006
【図５】
0005705379.tif 000007