(57)【要約】不揮発記憶またはメモリ資源から情報を読み出すステップを含む方法が開示されている。該情報は閾値または閾値を計算できる情報である。該情報は、システムメモリがさらされていると認識された動作環境に特に合わせてある。本方法は、メモリが動作するレ―トを制御するために、メモリコントローラに前記閾値を使用させるステップをさらに含む。該レートは、システムメモリ動作環境にさらされている時に前記システムメモリが機能不全を起こすレートよりも低い。
2006524373.tif 000002
【特許請求の範囲】
【請求項１】
ａ）システムメモリの動作環境に合わせた、閾値または閾値を計算できる情報を不揮発記憶またはメモリ資源から読み出すステップと、
ｂ）前記動作環境にさらされている時に前記システムメモリが機能不全を起こすレートよりも低いレートに、前記メモリが動作するレ―トを制御するために、メモリコントローラに前記閾値を使用させるステップと、を有することを特徴とする方法。
【請求項２】
請求項１に記載の方法であって、
前記動作環境は少なくとも部分的に温度および負荷により決まることを特徴とする方法。
【請求項３】
請求項２に記載の方法であって、
前記温度は前記システムメモリのケース温度であることを特徴とする方法。
【請求項４】
請求項２に記載の方法であって、
前記温度は前記システムメモリの環境温度であることを特徴とする方法。
【請求項５】
請求項２に記載の方法であって、
前記温度は前記システムメモリの接合温度であることを特徴とする方法。
【請求項６】
請求項２に記載の方法であって、
前記負荷は少なくとも部分的に前記メモリコントローラによりとられるトラフィック統計により決まることを特徴とする方法。
【請求項７】
請求項２に記載の方法であって、
前記負荷は少なくとも部分的に前記システムメモリの読み出しおよび書き込み動作により決まることを特徴とする方法。
【請求項８】
請求項７に記載の方法であって、
前記負荷は少なくとも部分的に前記システムメモリの読み出し／書き込み割合により決まることを特徴とする方法。
【請求項９】
請求項２に記載の方法であって、
前記負荷は少なくとも部分的に前記システムメモリのページヒット、ページエンプティ、ページミスにより決まることを特徴とする方法。
【請求項１０】
請求項９に記載の方法であって、
前記負荷は少なくとも部分的に前記システムメモリのページヒット、ページエンプティ、ページミスの割合により決まることを特徴とする方法。
【請求項１１】
請求項１に記載の方法であって、
前記不揮発記憶またはメモリ資源はＢＩＯＳメモリ領域であることを特徴とする方法。
【請求項１２】
請求項１に記載の方法であって、
前記不揮発記憶またはメモリ資源はＳＰＤメモリ領域であることを特徴とする方法。
【請求項１３】
請求項１２に記載の方法であって、
前記ＳＰＤは複数の異なる負荷および温度の各々に特に合わせた閾値を有するように構成されることを特徴とする方法。
【請求項１４】
請求項１２に記載の方法であって、
前記ＳＰＤは複数の異なる負荷の各々の直線を記述するポイントのペアを有するように構成されていることを特徴とする方法。
【請求項１５】
請求項１４に記載の方法であって、
前記直線は最大許容帯域幅対温度を特徴づける直線であることを特徴とする方法。
【請求項１６】
請求項１４に記載の方法であって、
前記直線は最大許容帯域幅対パワーを特徴づける直線であることを特徴とする方法。
【請求項１７】
請求項１２に記載の方法であって、
前記ＳＰＤは前記直線が１つの共通ポイントを有するものとしてモデル化されているため、１本の直線当たり２つより少ないポイントを用いて複数の直線を表すように構成されていることを特徴とする方法。
【請求項１８】
請求項１に記載の方法であって、
システムメモリ部品のケースまたは接合温度の検出感度を部品機能に組み込み、前記検出感度をシステムまたはプロセッサのサプライヤに送ることを特徴とする方法。
【請求項１９】
請求項１８に記載の方法であって、
前記組み込むステップはテストと測定を組み込むステップをさらに有することを特徴とする方法。
【請求項２０】
コンピューティングシステムであって、
ａ）システムメモリと、
ｂ）システムメモリがさらされていると認識している動作環境に合わせた、閾値または閾値を計算できる情報を有する不揮発記憶またはメモリ資源と、
ｃ）前記動作環境にさらされている時に前記システムメモリが機能不全を起こすレートよりも低いレートに、前記メモリが動作するレ―トを制御するために、メモリコントローラに前記閾値を使用するメモリコントローラと、を有することを特徴とするコンピューティングシステム。
【請求項２１】
請求項２０に記載の装置であって、
前記動作環境は少なくとも部分的に温度および負荷により決まることを特徴とする装置。
【請求項２２】
請求項２１に記載の装置であって、
前記温度は前記システムメモリのケース温度であることを特徴とする装置。
【請求項２３】
請求項２１に記載の装置であって、
前記温度は前記システムメモリの環境温度であることを特徴とする装置。
【請求項２４】
請求項２１に記載の装置であって、
前記負荷は少なくとも部分的に前記メモリコントローラによりとられるトラフィック統計により決まることを特徴とする装置。
【請求項２５】
請求項２１に記載の装置であって、
前記負荷は少なくとも部分的に前記システムメモリの読み出しおよび書き込み動作により決まることを特徴とする装置。
【請求項２６】
請求項２５に記載の装置であって、
前記負荷は少なくとも部分的に前記システムメモリの読み出し／書き込み割合により決まることを特徴とする装置。
【請求項２７】
請求項２１に記載の装置であって、
前記負荷は少なくとも部分的に前記システムメモリのページヒット、ページエンプティ、ページミスにより決まることを特徴とする装置。
【請求項２８】
請求項２７に記載の装置であって、
前記負荷は少なくとも部分的に前記システムメモリのページヒット、ページエンプティ、ページミスの割合により決まることを特徴とする装置。
【請求項２９】
請求項２０に記載の装置であって、
前記不揮発記憶またはメモリ資源はＢＩＯＳメモリ領域であることを特徴とする装置。
【請求項３０】
請求項２０に記載の装置であって、
前記不揮発記憶またはメモリ資源はＳＰＤメモリ領域であることを特徴とする装置。
【請求項３１】
請求項３０に記載の装置であって、
前記ＳＰＤは複数の異なる負荷および温度の各々に特に合わせた閾値を有するように構成されることを特徴とする装置。
【請求項３２】
請求項３０に記載の装置であって、
前記ＳＰＤは複数の異なる負荷の各々の直線を記述するポイントのペアを有するように構成されていることを特徴とする装置。
【請求項３３】
請求項３２に記載の装置であって、
前記直線は最大許容帯域幅対温度を特徴づける直線であることを特徴とする装置。
【請求項３４】
請求項３２に記載の装置であって、
前記直線は最大許容帯域幅対パワーを特徴づける直線であることを特徴とする装置。
【請求項３５】
請求項３０に記載の装置であって、
前記ＳＰＤは前記直線が１つの共通ポイントを有するものとしてモデル化されているため、１本の直線当たり２つより少ないポイントを用いて複数の直線を表すように構成されていることを特徴とする装置。
【請求項３６】
命令シーケンスを記憶した機械読み取り可能媒体であって、前記命令シーケンスは少なくとも１つのプロセッサにより実行された時、前記少なくとも１つのプロセッサに、
ａ）システムメモリの動作環境に合わせた、閾値または閾値を計算できる情報を不揮発記憶またはメモリ資源から読み出させるステップと、
ｂ）前記動作環境にさらされている時に前記システムメモリが機能不全を起こすレートよりも低いレートに、前記メモリが動作するレ―トを制御するために、メモリコントローラに前記閾値を使用させるステップと、を有する方法を実行させることを特徴とする媒体。
【請求項３７】
請求項３６に記載の機械読み取り可能媒体であって、
前記動作環境は少なくとも部分的に温度および負荷により決まることを特徴とする媒体。
【請求項３８】
請求項３７に記載の機械読み取り可能媒体であって、
前記温度は前記システムメモリのケース温度であることを特徴とする媒体。
【請求項３９】
請求項３７に記載の機械読み取り可能媒体であって、
前記温度は前記システムメモリの環境温度であることを特徴とする媒体。
【請求項４０】
請求項３７に記載の機械読み取り可能媒体であって、
前記温度は前記システムメモリの接合温度であることを特徴とする媒体。
【請求項４１】
請求項３７に記載の機械読み取り可能媒体であって、
前記負荷は少なくとも部分的に前記メモリコントローラによりとられるトラフィック統計により決まることを特徴とする媒体。
【請求項４２】
請求項３７に記載の機械読み取り可能媒体であって、
前記負荷は少なくとも部分的に前記システムメモリの読み出しおよび書き込み動作により決まることを特徴とする媒体。
【請求項４３】
請求項４２に記載の機械読み取り可能媒体であって、
前記負荷は少なくとも部分的に前記システムメモリの読み出し／書き込み割合により決まることを特徴とする媒体。
【請求項４４】
請求項３７に記載の機械読み取り可能媒体であって、
前記負荷は少なくとも部分的に前記システムメモリのページヒット、ページエンプティ、ページミスにより決まることを特徴とする媒体。
【請求項４５】
請求項４４に記載の機械読み取り可能媒体であって、
前記負荷は少なくとも部分的に前記システムメモリのページヒット、ページエンプティ、ページミスの割合により決まることを特徴とする媒体。
【請求項４６】
請求項３６に記載の機械読み取り可能媒体であって、
前記不揮発記憶またはメモリ資源はＢＩＯＳメモリ領域であることを特徴とする媒体。
【請求項４７】
請求項３６に記載の機械読み取り可能媒体であって、
前記不揮発記憶またはメモリ資源はＳＰＤメモリ領域であることを特徴とする媒体。
【請求項４８】
請求項４７に記載の機械読み取り可能媒体であって、
前記ＳＰＤは複数の異なる負荷および温度の各々に特に合わせた閾値を有するように構成されることを特徴とする媒体。
【請求項４９】
請求項４７に記載の機械読み取り可能媒体であって、
前記ＳＰＤは複数の異なる負荷の各々の直線を記述するポイントのペアを有するように構成されていることを特徴とする媒体。
【請求項５０】
請求項４９に記載の機械読み取り可能媒体であって、
前記直線は最大許容帯域幅対温度を特徴づける直線であることを特徴とする媒体。
【請求項５１】
請求項４９に記載の機械読み取り可能媒体であって、
前記直線は最大許容帯域幅対パワーを特徴づける直線であることを特徴とする媒体。
【請求項５２】
請求項４７に記載の機械読み取り可能媒体であって、
前記ＳＰＤは前記直線が１つの共通ポイントを有するものとしてモデル化されているため、１本の直線当たり２つより少ないポイントを用いて複数の直線を表すように構成されていることを特徴とする媒体。
【請求項５３】
ａ）システムメモリの動作環境に合わせた、閾値または閾値を計算できる情報をＳＰＤメモリ領域から読み出すステップと、
ｂ）前記動作環境にさらされている時に前記システムメモリが機能不全を起こすレートよりも低いレートに、前記メモリが動作するレ―トを制御するために、メモリコントローラに前記閾値を使用させるステップと、を有する方法。
【請求項５４】
請求項５３に記載の方法であって、
前記動作環境は少なくとも部分的に温度および負荷により決まることを特徴とする方法。
【請求項５５】
請求項５４に記載の方法であって、
前記温度は前記システムメモリのケース温度であることを特徴とする方法。
【請求項５６】
請求項５４に記載の方法であって、
前記温度は前記システムメモリの環境温度であることを特徴とする方法。
【請求項５７】
請求項５４に記載の方法であって、
前記温度は前記システムメモリの接合温度であることを特徴とする方法。
【請求項５８】
請求項５４に記載の方法であって、
前記負荷は少なくとも部分的に前記メモリコントローラによりとられるトラフィック統計により決まることを特徴とする方法。
【請求項５９】
請求項５４に記載の方法であって、
前記負荷は少なくとも部分的に前記システムメモリの読み出しおよび書き込み動作により決まることを特徴とする方法。
【請求項６０】
請求項５２に記載の方法であって、
前記負荷は少なくとも部分的に前記システムメモリの読み出し／書き込み割合により決まることを特徴とする方法。
【請求項６１】
請求項５４に記載の方法であって、
前記負荷は少なくとも部分的に前記システムメモリのページヒット、ページエンプティ、ページミスにより決まることを特徴とする方法。
【請求項６２】
請求項６１に記載の方法であって、
前記負荷は少なくとも部分的に前記システムメモリのページヒット、ページエンプティ、ページミスの割合により決まることを特徴とする方法。
【請求項６３】
ａ）コンピューティングシステムのシステムメモリがセルフリフレッシュモードで動作している時に前記コンピューティングシステムが機能不全を起こすこと無しに動作すると期待される時間分を示す不揮発記憶またはメモリ資源から情報を読み出すステップと、
ｂ）前記時間分が前記コンピューティングシステムに設定された目標時間分よりも短いとき、前記システムメモリにセルフリフレッシュモードで動作させるステップと、を有することを特徴とする方法。
【請求項６４】
請求項６３に記載の方法であって、
前記目標時間分はスタンバイモード期間であることを特徴とする方法。
【請求項６５】
請求項６３に記載の方法であって、
前記時間分が前記目標時間分より長いとき、前記システムメモリをスタンバイモードにするステップをさらに有することを特徴とする方法。
【請求項６６】
請求項５３に記載の方法であって、
前記時間分が前記目標時間分より長いとき、前記システムメモリを不適格とするステップをさらに有することを特徴とする方法。
【請求項６７】
請求項６３に記載の方法であって、
前記時間分が前記目標時間分より長いとき、前記システムメモリの内容をハードディスクドライブに格納するステップをさらに有することを特徴とする方法。
【請求項６８】
ａ）コンピューティングシステムのシステムメモリがセルフリフレッシュモードで動作している時に前記コンピューティングシステムが機能不全を起こすこと無しに動作すると期待される時間分を示す不揮発記憶またはメモリ資源から情報を読み出すステップと、
ｂ）前記システムメモリが前記セルフリフレッシュモードで動作している時、前記時間分を前記システムメモリのパワーに変換するステップと、
ｃ）前記パワーが前記システムメモリに割り当てられたパワー以内であるとき、前記システムメモリをセルフリフレッシュモードで動作させるステップと、を有することを特徴とする方法。
【請求項６９】
請求項６８に記載の方法であって、
前記時間分が前記目標時間分より長いとき、前記システムメモリをスタンバイモードにするステップをさらに有することを特徴とする方法。
【請求項７０】
請求項６８に記載の方法であって、
前記時間分が前記目標時間分より長いとき、前記システムメモリを不適格とするステップをさらに有することを特徴とする方法。
【請求項７１】
請求項６８に記載の方法であって、
前記時間分が前記目標時間分より長いとき、前記システムメモリの内容をハードディスクドライブに格納するステップをさらに有することを特徴とする方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピューティングシステムの最適化に関し、特に、システムメモリの使用を設定、レポート、調節する方法と装置に関する。
【背景技術】
【０００２】
コンピューティングシステムはシステムメモリを含む。システムメモリは、一般にメモリ資源として見ることができる。ａ）コンピューティングシステムの異なる構成要素はそのシステムメモリからデータを取得し、また、ｂ）コンピューティングシステムの異なる構成要素はそのシステムメモリにデータを格納する。図１は、システムメモリ１０６とメモリコントローラ１０１を含むコンピューティングシステムの一部を示す概略図である。コンピューティングシステムの異なる構成要素がシステムメモリの資源をほぼ同時に呼び出すことは多いので（例えば、コンピューティングシステムの複数の異なる構成要素が短い時間内にシステムメモリ資源を呼び出そうと「突然」決めることがある）、メモリコントローラ１０１はシステムメモリ１０６により異なる構成要素に対応する順序とタイミングを管理しなければならない。
【０００３】
図１は、典型的なアプリケーションに対する見識を提供するためのものである。留意すべきことは、メモリコントローラ１０１はいろいろなシステムメモリの実施形態を管理するように構成されていることである。そのシステムメモリの実施形態は、１）少なくとも１つのプロセッサ（例えば、プロセッサフロントサイドバス１０８を介して）、２）グラフィックスコントローラ（例えば、グラフィックスコントローラインターフェイス１０９を介して）、３）コンピューティングシステム全体の様々な周辺構成要素（例えば、システムバスインターフェイス１１０（例えば、ＰＣＩバスインターフェイス）を介して）により構成されている。システムメモリ１０６はいくつかの異なる半導体メモリチップにより構成され、簡単のためアドレスバス１０４とデータバス１０５を有すると考える。アドレスバス１０４上で対応するアドレス値を提示することにより、メモリセルにアクセスする。メモリセルとの間で読み書きするデータはデータバス１０５上に現れる。
【０００４】
メモリコントローラは、システムメモリ１０６にかかるストレスまたは使用を平均化する能力を備えている。例えば、図１から分かるように、メモリコントローラ１０１は閾値を格納する閾値レジスタ１０２を含む。閾値を使用して、システムメモリ１０６がいろいろ動作（例えば、読み出し、書き込み、起動等のいろいろなアクセス）するレートを制御し、そうすることにより、システムメモリ１０６にかかる使用やストレスを制御する。メモリコントローラ１０１は、閾値に応じて、動作がシステムメモリ１０６に課されるレートを落とし、システムメモリ１０６に課される使用がシステムメモリ１０６にストレスをかけすぎないようにする。
【０００５】
単純化した例として、図２は、異なる閾値に応じて、異なる読み出しと書き込みのレートがシステムメモリに適用されるかの例を示している。上の図２０１は、第１の閾値による読み出しと書き込み（それぞれ「Ｒ」と「Ｗ」で示す）がシステムメモリに適用される最大レートを示す。下の図２０２は、第２の閾値による読み出しと書き込みがシステムメモリに適用される最大レートを示す。上の図２０１は下の図２０２と比較して（ほぼ同じ時間で）より多くの読み出しと書き込みを明らかに示しており、第１の閾値は第２の閾値より読み出しと書き込みの最大レートが高くできる。単純化するため、両方の図２０１と２０２では、読み出しと書き込みが交互に起こるとしていることに留意せよ。実際には、読み出しが続いたり、書き込みが続いたりすることも多い。
【０００６】
コンピューティングシステムにより使用される閾値（または閾値を計算可能な情報）は、電気的消去可能プログラマブルROM（EEPROM）等の不揮発メモリ領域に格納される。例えば、閾値をコンピューティングシステムのBIOSメモリ領域１０７またはシリアルプレゼンスディテクと（SPD）メモリ領域１１４内に格納してもよい。BIOSメモリ領域１０７は、コンピューティングシステムの起動フェーズの早い時期に使用される命令を格納する。SPDメモリ領域１１４は、システムメモリ１０６の説明および／または特徴を示す情報を格納する。
【発明の詳細な説明】
【０００７】
自分の閾値を変更できるコンピューティングシステム
システムメモリが影響を受ける動作環境がどのようなものであっても好適な閾値を取得または導出するのに十分な情報をコンピューティングシステム内に含んでいると有用である。そのようなコンピューティングシステムは、唯一の閾値ではなく、複数の閾値を使用できるようになっている。その結果、システムメモリの動作環境の検出された変化に応じて、閾値を他の閾値に置き換えることができる。
【０００８】
例えば、システムメモリの半導体チップの周りの環境温度が上がると、閾値が変更され、システムメモリの最大許容動作レートを引き下げる（これにより、半導体チップの内部の「接合」温度を限界レベル以下に保つ。限界レベルより高いと故障の確率が大幅に大きくなる）。同様に、システムメモリの半導体チップの環境温度が下がると、閾値が変更され、システムメモリの最大許容動作レートを高くする（これにより、システムメモリが、新しい、より低い環境温度において理論的な最大持続可能性能により近い状態で動作することができる）。
【０００９】
図３は、複数の閾値を用いることができるコンピューティングシステムにより実行可能な方法を示している。図３の方法によれば、システムメモリの動作環境の特徴を抽出する（ステップ３０１）。いろいろな動作環境の実施形態については、以下、図５を参照してより詳細に説明する。一般に、「動作環境」とは、システムメモリが置かれている少なくとも１つの条件（例えば、温度、読み出し／書き込みの割合等）を表し、メモリの使用に関する制限（例えば、システムメモリにいろいろな動作をさせる最大レートを制限することによる）を決定することができる。システムメモリの動作環境の特徴を明らかにすると（ステップ３０１）、システムメモリの動作環境に基づき閾値を取得または導出する（ステップ３０２）。閾値を一旦取得または導出すると、システムメモリが動作するレートを制限するために使用される（ステップ３０３）。
【００１０】
図４は、図３の方法の一部をより詳細に示す図である。具体的に、図４は、システムメモリの環境温度及びシステムメモリの負荷を含む動作環境に応じて取得または導出（ステップ４０２）される閾値を示している。システムメモリの負荷は、メモリデバイスがそれに対応するコンピューティングシステムにより使用される、その使用のされ方を表す。それゆえ、負荷には以下の少なくとも１つを含む。１）システムメモリへのアクセスの読み出し／書き込み比率（例えば、いくつか例を挙げると、読み出し７５％と書き込み２５％、読み出し５０％と書き込み５０％、読み出し２５％と書き込み７５％）；２）ページヒット／ページエンプティ／ページミスの割合（例えば、１つの例として、５０％ページヒット／２５％ページエンプティ／２５％ページミス）；３）バースト長；および４）メモリデバイスがいる具体的な「スタンバイ」モード。これらの態様を次に詳しく説明する。
【００１１】
読み出しと書き込みの割合は、読み出し動作によるメモリアクセスの割合と書き込み動作によるメモリアクセスの割合を反映している。読み出しと書き込みの割合は、コンピューティングシステムがどのように使用されているかを反映しているとも言える。例えば、コンピューティングシステムを使用してネットワークから情報をシステムメモリにダウンロードしている時、書き込みの割合が読み出しの割合よりも高いと考えられる。例えば、コンピューティングシステムを使用してシステムメモリから情報をネットワークにアップロードしている時、読み出しの割合が書き込みの割合よりも高いと考えられる。一般的に、システムメモリがデータを読み込んでいるか書き込んでいるかにより、システムメモリ回路の異なる領域が利用される。そのため、システムメモリが特定タイプの動作（読み出しまたは書き込み）を重点的に使用されるとき、システムメモリのパワー損失はその重点的に使用する動作に関連した回路によるパワー損失をより多く反映していると言える。
【００１２】
ページヒット／ページエンプティ／ページミスは、ブレークダウンすると：１）データの読み出しまたは書き込みが成功したメモリページアクセス（すなわち、ページ「ヒット」）；２）メモリページへの空アクセス（例えば、メモリコントローラが効率を高くするため新しいページに意図的に移る時、そのアクセスパターンはページエンプティアクセスと呼ばれる。）；３）メモリページミスアクセス（メモリコントローラが既存のページに所望のデータを見つけられないとき、そのページを閉じて、新しいページを起動しなければならない。）「ミス」レートが高い場合、「オーバーヘッド」が高くなる。すなわち、デバイスのパワー消費は、所定の情報スループットに対して高くなる。
【００１３】
バースト長は、システムメモリとの間でバースト読み出しおよび／またはバースト書き込みを実行するために消費されるクロックサイクル数を表す。バースト読み出しおよび／またはバースト書き込みは、「隣接する」アドレスを有するメモリセルからの一連の動作をするために、アドレスバスの上位ビットは固定し、下位ビットを連続的にカウントすることにより、メモリの動作効率を高める方法である。一般的に、バースト長が長いとメモリの効率は高くなる。その結果、バースト長が長ければ長いほど、複数のより短いバーストシーケンスにより達成される同回数の動作と比較して、パワー損失はより小さくなる。
【００１４】
トラフィックの統計を追跡できるメモリコントローラは、システムメモリの負荷の状態のいろいろな側面を常に更新することができる。例えば、読み出し／書き込みの割合とページヒット／ページエンプティ／ページミスの統計を追跡するように構成されたメモリコントローラは、システムメモリの負荷のこれらの側面を継続的に追跡することができる。ここで、現在の負荷状態を反映するデータ（メモリコントローラにより追跡される）と、システムメモリ周辺の現在の環境温度を反映するデータを組み合わせて「ルックアップ」パラメータとして使用し、そのルックアップパラメータが表す特定の既存の負荷／温度条件に合った閾値をフェッチしてもよい。
【００１５】
そのようにすることにより、メモリコントローラによりシステムメモリに適用できる最大動作ストレスを、動作不良の重大なリスク無しに現在の条件下でシステムメモリが処理できる最善のところに限定する。例えば、環境温度が突然上昇したり、負荷が突然大きくなったりしたとき、閾値を低くする。環境温度が突然低下したり、負荷が突然小さくなったりしたとき、閾値を高くする。
【００１６】
図５は、Ｎ通りの異なる負荷とＭ通りの異なる環境温度までの組み合わせに対する閾値を表すルックアップテーブルを示す。
特定タイプのメモリデバイスに対してのみ当てはまる特殊でユニークな負荷があることに注意せよ。そのため、コンピューティングシステムで実施されるルックアップテーブルが業界で受け入れられ標準となっている方法に合致するとき、あるコンピューティングシステムの負荷の列の一部は「空白」としておいてもよい。その理由は、その負荷の列はそのコンピューティングシステムが利用するメモリデバイスに適用されないからである。
【００１７】
一実施形態において、コンピューティングシステムのBIOSメモリ領域を用いて、システムメモリがどのような動作環境にあってもその動作環境に合った閾値を提供するルックアップテーブル情報を（例えば、図５に示したように）格納する。他の一実施形態において、コンピューティングシステムのSPDメモリ領域を用いて、システムメモリがどのような動作環境にあってもその動作環境に合った閾値を提供するルックアップテーブル情報を（例えば、図５に示したように）格納する。図６は、BIOSメモリ領域６０７またはSPDメモリ領域６１４がそのように構成されたコンピューティングシステムを示す。
【００１８】
図６によると、BIOSメモリ領域６０７またはSPDメモリ領域６１４は、現在の動作環境を表すルックアップパラメータ入力６１２を有している（例えば、読み出しアドレスとして構成されている）。ルックアップパラメータ入力６１２に応じて、システムメモリ６０６に適用される動作レートを制御するために使用する閾値がメモリ領域から（例えば、読み出し動作を介して）提供される。多くのアプリケーションにおいて、BIOSメモリ領域６０７またはSPDメモリ領域６１４のいずれかを用いて閾値に関する情報を格納することが予想される。そのように、ルックアップパラメータ６１２は、これらの領域の１つだけに適用される。
【００１９】
上で説明したように、動作環境は負荷とシステムメモリ６０６の周囲の環境温度の組み合わせとして表される。このように、例えば、環境温度はシステムメモリ６０６の近くにある温度センサ６０８によりモニターされる。負荷は、システムメモリ６０６が使用されているそのやり方を表す内容の少なくとも１つのトラフィック統計レジスタ６０９によりモニターされる。ルックアップパラメータ入力６１２は、これらから作られる。BIOS６０７メモリ領域またはSPDメモリ領域６１４（または他のメモリまたは記憶領域）で有効にルックアップを行い、新しい閾値を提供する。新しい閾値は閾値レジスタ６０２にロードされ、最適ではなくなった前の閾値に置き換わる。
【００２０】
図６は、異なるコンピューティングシステムの構成要素により、異なる方法でルックアップパラメータ入力６１２が作られることも示している。一アプローチによれば、メモリコントローラ６０１がルックアップパラメータ６１２を生成する組み込み制御機能６１０を含む。組み込み制御機能６１２は、ルックアップパラメータ６１２の構成に関するソフトウェアルーチンを実行する組み込みプロセッサまたはマイクロコントローラとして実施されてもよい。代替的に、または組み合わせて、専用ロジックを用いてメモリコントローラの組み込み制御機能６１０を実施してもよい。
【００２１】
他のやり方によれば、コンピューティングシステムのプロセッサ６１１を用いてルックアップパラメータ６１２を構成する。ここで、プロセッサ６１１は、メモリコントローラのトラフィック統計レジスタ６０９の内容を受け取り（例えば、フロントサイドバス６１３を通して送られる）、温度センサ６１１から環境温度を受け取る。さらに別の実施形態において、入力ルックアップパラメータ６１２の構成は、プロセッサ６１１とメモリコントローラ６０１との間で分けられる。及び／または、プロセッサ６１１とメモリコントローラ６０１以外のインテリジェントな構成要素により受け持たれてもよい。とにかく、入力ルックアップパラメータ６１２を作る機能は、１）適当な時間間隔をあけて新しいルックアップパラメータを繰り返し構成してもよく、及び／または、２）システムメモリの動作環境の急激な大幅な変化に応じて、新しいルックアップパラメータを生成してもよい。
【００２２】
ルックアップテーブルの使用は、コンピューティングシステムの動作中に新しい閾値を「取得」する１つの方法であることに留意せよ。他の実施形態において、以下により詳しく説明するように、既存の閾値テーブルを参照して取得するのではなく、特定の計量から適当な閾値を動的に計算（すなわち「導出」）してもよい。さらにまた、当業者には明らかなことだが、新しい閾値を取得または導出するのに十分な詳細を記憶するために使用するリソースは、BIOSメモリ領域６０７、SPDメモリ領域６１４、またはその他コンピューティングシステム資源（例えば、他の不揮発メモリまたは記憶資源）等である。
【００２３】
適当な閾値を決定する方法
コンピューティングシステムにより新しい閾値がルックアップされるか計算されるかにかかわらず、ある動作環境においてあるタイプのメモリに「何の」閾値が適当であるかについて、理解しておくべきである。いろいろな例において、コンピューティングシステムがシステムメモリに提示する可能な動作環境を、システムメモリを実施（例えば、製造、生産プロセス、パッキングアプローチ等）するために使用するそのタイプのメモリと関係づけておき、そのタイプのメモリに対して適当な閾値を設定できるようにする必要がある。ここで、メモリ生産者は、必要なすべての閾値を自分では提供しないとき、適当な閾値を設定する必要がある者に一定の情報を入手可能としておくものと期待される。
【００２４】
例えば、上で説明した実施形態と一貫して、プロセッサ生産者及び／またはコンピューティングシステム生産者は、コンピューティングシステムのBIOS内に格納される情報の編集の責任を有していると考えられている。そのため、コンピューティングシステムのBIOSその他に閾値情報を表として格納しておく場合、メモリのサプライヤとプロセッサ／コンピューティングシステムの生産者の間で関係を構築し、適当な閾値をリストするか、導出するのに十分な情報がプロセッサ／コンピューティングシステムの生産者に利用可能となるようにする。以下、これらのやり方を説明する。
【００２５】
図７ａないし７ｃは、システムメモリが置かれている動作環境の観測された変化を考慮して内部メモリの制御閾値を修正することができるコンピューティングシステムの最適化を構成するために、適当な当事者にコア能力を与える、実際的な関係を示す。図７ａは、コンピューティングシステムの最大許容デバイスパワーと環境温度の関係を示す。図７ａに示した関係は、コンピューティングシステムの環境温度が高くなると、メモリデバイスにより消費される電力パワーを下げ、メモリデバイスが動作不良を起こすことを防止しなければならない。
【００２６】
ここで、コンピューティングシステムの設計者／生産者が、図７ａを理解する最もよい立場にいると思われる。システムメモリ上のエアフローと、コンピューティングシステムで使用するシステムメモリデバイスのタイプを決定するのは、コンピューティングシステム設計プロセスの一部をになう設計者である。システム設計者により組み込まれるシステムメモリデバイスのタイプは、パッケージタイプと最大許容接合温度により特徴づけられる。接合温度がデバイスのパワー損失と関係するので、コンピューティングシステムの設計者は、これらの特徴（エアフロー、メモリパッケージタイプ、最大接合温度）から、設計する（した）システムの「最大許容デバイスパワー対環境温度」の関係（一例を図７ａに示した）を知ることができる。
【００２７】
図７ｂは、問題となっているコンピューティングシステムの設計者により選択されたメモリデバイスの帯域幅（ＢＷ）とメモリデバイスパワーの間の関係を示す。さらにまた、図７ｂに示した関係は、メモリデバイスに課されている負荷に関するものであると理解することもできる。図７ｂは、負荷（例えば、読み出し／書き込み割合、ページヒット／ページエンプティ／ページミス、バースト長さ、タイミング条件等）が一定のアプリケーションにおいて、メモリデバイスの動作レート（すなわち「帯域幅」（ＢＷ））が高ければ高いほど、より大きなパワーをメモリデバイスが消費することを示している。負荷は、メモリが実行するいろいろなタイプの動作に関してメモリの使用を特徴づけるが、帯域幅／閾値項はそのタイプの動作が適用されるレートに対応することに留意せよ。究極的には、与えられた電源電圧と与えられた負荷に応じて半導体デバイスにより消費されるパワー量は、その半導体デバイスの電気的設計とその半導体デバイスの生産に使用した生産プロセスにより決まる。そのため、メモリデバイスのサプライヤが図７ｂに示した関係を求めるのに最適な位置にいると期待される。 
メモリデバイスサプライヤは、この関係を理論的、実験的、または理論と実験の組み合わせにより求めることができる。
【００２８】
図７ｃは、図７ａと７ｂを組み合わせて「デバイスパワー」の変数を消去したものである。この結果は、「最大持続帯域幅（BWM）」をコンピューティングシステムの環境温度に関係づけている。図７ｃの相関は、例えば、次のものから得られる：１）第１の式で、図７ａに示した関係を数学的に記述する、（すなわち、第１の式は、許容デバイスパワーと環境温度の関係を示している。）；
２）第２の式で、図７ｂに示した関係を数学的に記述する、（すなわち、第２の式は、デバイスの帯域幅を負荷に対するデバイスパワーと関係づける式である。）３）両式を組み合わせて、デバイスパワーを変数として有しない第３の式を求める。初めに、上記の数学的プロセスは、直線近似以外の挙動モデルにも適用できることに留意せよ。（そのため、図７ａないし７ｃには直線で示したが、適宜、直線以外の挙動モデルを使用してもよい。）
組み合わせの結果として、図７ｃの帯域幅パラメータは「最大持続帯域幅」（BWMAX）と解釈されることに留意せよ。その理由は、図７ａの関係は「最大持続デバイスパワー」を表しているからである。言い換えると、最大持続デバイスパワーとなる帯域幅は、図７ｃの縦軸により表される。図７ｃの表示は非常に有用である。その理由は、図７ｂに示した負荷について、コンピューティングシステム内の環境温度に合わせた、所定の負荷をかけてもそのコンピューティングシステムのシステムメモリが最大持続デバイスパワーを超えない、コンピューティングシステムのメモリコントローラ用の閾値を生成するために使用できるからである。このように、例として、図７ｃの関係の離散的なポイントをテーブルとして、図５に示したルックアップ値の列を作る。図５に示した完全なルックアップテーブルを作るために、図７ｂに示したように、Ｎ個の関係を求めるようにメモリサプライヤに頼むこともできる。すなわち、各負荷に対して「帯域幅対パワー」の関係を図５のルックアップテーブルに記録する。
【００２９】
再び図７ａと７ｃを参照して、「環境温度」以外の熱パラメータも相関パラメータとして使用できることに留意することは重要である。例えば、少数の実施形態を挙げると、図７ａと７ｃの各々の相関スキームにおいて、デバイスのケース温度を「横」軸として使用することができる。デバイスのケース温度はどのメモリパッケージについても環境温度から容易に計算することができる。よって、実際に、測定した環境温度をデバイスケース温度に変換することは容易である。そのため、スキームの一部として、環境温度をモニターしても、実際の数学的相関スキームは、環境温度ではなくデバイスケース温度に基づいていてもよい。同様に、環境温度ではなくケース温度をコンピューティングシステムにより動的にモニターしてもよい。それゆえ、メモリデバイスのケース温度または接合温度パラメータを、不揮発記憶またはSPD等のメモリ領域に格納することもできる。例えば、メモリサプライヤは、自分の部品が動作不良モードを呈する温度を特定し、このパラメータをSPDに格納してもよい。システムは、この値を読み込み、上記の閾値を調節し、そのデバイスから付加的性能を引き出すことができる。温度パラメータのサブセットとして、最大ケース温度と最大接合温度があり、メモリサプライヤは自分の部品についてこれらを保証する。
【００３０】
実施方法
Ｎ通りの負荷の各々について「帯域幅対パワー」の関係（図７ｂ）をメモリサプライヤからコンピューティングシステムの設計者／生産者に渡すやり方は、実施形態ごとに変わってもよい。一般的に、関係情報は、どのような方法でシステム設計者／生産者に「送る」こともできる。さらにまた、関係情報をシステム設計者／生産者に提示する形式も実施形態ごとに変化してよい。一般的に、関係情報はシステム設計者／生産者がその関係を理解できる方法であれば、どのような方法によって表してもよい。
【００３１】
コンピューティングシステムを構成してＮ通りの負荷の各々に対して「BWMAX対環境温度」情報（図７ｃ）を取得するやり方も、実施形態ごとに変わってよい。基本的な実施形態において、この情報は、生産情報の一部としてコンピューティングシステム（例えば、BIOSメモリ領域６０７またはSPDメモリ領域６１４内）に単純に格納される。例えば、図５を再び参照して、Ｎ通りの「BWMAX対環境温度」の関係の各々から（すなわち、各負荷に対して１つの関係）Ｍ通りのデータポイントを選択し、コンピューティングシステムのBIOS、SPD、その他のメモリまたは記憶領域内に構成してもよい。
【００３２】
別の実施形態において、負荷ごとにＭ通りの選択データを格納するのではなく、「BWMAX対環境温度」の関係の各々を表すのに十分な情報を、コンピューティングシステムのBIOS、SPD、またはその他のメモリまたは記憶領域内に格納する。例えば、図７ｃは直線であり、直線を決定するには２つの点（例えば、直線上の２つの点、または１つの点とその直線の傾き）だけが分かればよいことに留意して、BIOSメモリ領域、SPDメモリ領域、その他のメモリまたは記憶領域内に負荷ごとに２つの点を格納する。これらから、コンピューティングシステムは既存の動作環境について適当な閾値を計算することができる。
【００３３】
図６も上記のシステムの構成要素を示している。例えば、BIOSまたはSPDメモリ領域６０７、６１４は、閾値または「閾値ベースの」情報のいずれかを提供するように示した。ここで、閾値ベースの情報は、閾値そのものではなく、閾値を計算することができる情報であればなんでもよい。直線を表す２つの点をBIOSまたはSPDから読み出せることを示した前出の実施形態において、BIOSまたはSPDの出力は、閾値ではなく、閾値ベースの情報に対応している。図６は、閾値ベースの情報は、上記の制御機能６１０により処理され、実際の閾値となる。
【００３４】
さらに別の実施形態によると、制御機能６１０は、環境温度及び／または統計情報から得られた入力ルックアップパラメータを決定し、BIOSまたはSPDのメモリ領域から正しい閾値ベースの情報を抽出するように設計し、そのルックアップパラメータ情報を再利用して、その閾値ベースの情報から適当な閾値を計算してもよいことに留意せよ。同様に、プロセッサ６１１は、閾値ベースの情報から閾値を計算し、それをメモリコントローラに送ってもよい。
【００３５】
今まで説明した上記の実施形態から、「BWMAX対環境温度」の関係情報（例えば、図７ｃの情報）をBIOSまたはSPDメモリ領域６０７、６１４に格納する。しかし、少なくとも実施形態の一ファミリーによれば、システムメモリの「帯域幅対パワー」情報をBIOSまたはSPDメモリ領域６０７、６１４に格納する。この情報はまだ閾値ベースの情報に対応することに留意せよ。「帯域幅対パワー」情報をBIOSまたはSPDメモリ領域６０７、６１４に格納した場合、コンピューティングシステムがデバイスパワー変数を消去して適当な閾値を計算しなければならない。（例えば、図７ｃの生成に関して最初に上で説明したように。）
【００３６】
ここで、閾値ベースの情報に関してすぐ上で説明したのと同じ計算方法を用いることができる。ただし、例外として、「デバイスパワー最大対環境温度」情報（例えば、図７ａの情報）を閾値ベース情報に含めなければならない。再び、２つの点を用いて、所定の負荷に対してこの関係を特徴づける直線を表すことができる。それゆえ、各負荷に対してBIOSまたはSPDに格納された適当な４つの点のうち：最初の２つの点は「デバイスパワー最大対環境温度」情報（例えば、図７ａの情報）を表し、次の２つの点は「帯域幅対パワー」情報（例えば、図７ｂの情報）を表す。「デバイスパワー最大対環境温度」情報（例えば、図７ａの情報）の格納に関して、この情報はシステムメモリデバイスの最大許容接合温度またはケース温度を含んでもよいことに留意せよ。環境温度が上昇すると、接合温度が上昇するという効果がある。ベンダーが異なると、接合温度の許容誤差も異なる。接合温度に対するメモリベンダーの敏感さに比例して、持続可能帯域幅にも影響がある。ベンダーは、ここに設立したメカニズムを通じて、許容接合温度またはケース温度を報告することもできる。例えば、これらの温度パラメータのいずれかはSPDに格納される。接合温度とケース温度の間には決まった関係、すなわち接合・ケース熱抵抗がある。この抵抗はパッケージによって異なるが、それはパッケージング技術と性能が異なるからである。「帯域幅対パワー」情報の格納に関して、負荷ごとに格納されている２つの値には次のものが含まれる：１）第１の所定のデバイスパワーにおける第１の帯域幅；及び２）第２の所定のデバイスパワーにおける第２の帯域幅。第２の実施形態によると、負荷ごとに与えられる２つの値は次のものを含んでいる：１）第１の所定のデバイスパワーにおける第１の帯域幅；及び３）当てはまる直線の傾き。ここで、「所定の」という用語を用いたが、メモリデバイスサプライヤと、与えられた帯域幅がどのくらいのデバイスパワーに対応するかに関して数学的組み合わせアプローチを実行／設計する者との間に一定の理解が存在することを意味している。所定の理解により、メモリサプライヤはパワーの値を報告することなく、帯域幅の値のみを報告すればよいが、その理由は、数学的な組み合わせを実行する者には与えられた各帯域幅に対するパワーを「理解」しているからである。
【００３７】
さらに別の実施形態において、ここに示したスキームに「参加」するメモリデバイスについて、所定のパワーを選択し、いかなる負荷に対しても、いかなるメモリサプライヤからのいかなるタイプのメモリについても、その所定のパワーが「帯域幅対パワー」カーブと交わるようにする。そうすることにより、一般産業にわたるメモリ特徴付けスキームを設立し、コンピューティングシステムが「参加」しているメモリデバイスの閾値を成功裏に調整することができる。いかなる所定パワーも、参加している少なくとも１つのメモリデバイスについて、交わることを保証できない場合、さらに「所定の」パワーを一般産業にわたるスキームにより利用される「所定の」パワーのファミリーに追加することを想定している。「所定の」パワーを適当に（例えば、参照番号により）識別することにより、帯域幅のファミリーに各参加メモリデバイスを入れることができると想定している。
【００３８】
図８に示した、コンピューティングシステムのBIOS、SPDまたは他のメモリまたは記憶資源内の帯域幅対デバイスパワー情報の記憶に関連する他の実施形態において、１つのメモリデバイスの複数の「帯域幅対パワー」関係（例えば、すべての「帯域幅対パワー」関係）が共通ポイントを有するモデル化され、平均的に、「帯域幅対パワー」関係を値のペアが格納されていなくても負荷に対して決定することを可能とする。図８に示したモデル化アプローチによれば、４つの負荷（Ａ、Ｂ、Ｃ及びベースライン）が各々共通ポイント８０１としてモデル化される。図８において各「ｘ」は、コンピューティングシステムに格納されたデータに対応する。
【００３９】
「ｘ」の８０２、８０３、８０４、８０５について、対応するデータ値は、明示的な帯域幅の値（例えば、「ｘ」８０２、８０３、８０４、８０５に対してそれぞれ帯域幅値８０７、８０６、８０８、８０９）として、または対応する直線の傾きとして格納される。「ベースライン負荷」関係は、SPDに格納された情報により完全に決まることに留意せよ。２つのポイント（８０１、８０２）が格納されているからである。しかし、負荷Ａ、Ｂ、Ｃは、ベースライン負荷のポイント８０１をこれらの負荷に使用し、負荷ごとにもう１つのポイントを使えば、完全に知ることができる。（すなわち、負荷Ａに対してポイント８０３、負荷Ｂに対してポイント８０４、負荷Ｃに対してポイント８０５）
【００４０】
そのように、５つのSPD値が格納され、４つの負荷を表す。格納されたSPD値の比率は２．０よりも１．０に近い。ポイント８０２ないし８０５の各々は、パワーレベルPRについて「所定」のものであると見ることができる。ポイント８０１のパワーレベルを所定のものとして、４つの負荷の各々について適当に組み合わせて、４つの負荷の各々について「BWMAX対環境温度」情報を提供する。さらに別の実施形態において、「端点」８０１は「最大帯域幅」および「最大デバイスパワー」により特定される（図８ではポイント８１０と８１１により表される）。データポイント８０２ないし８０５のいずれもSPDにおいて傾斜値と「置き換え」られる。各負荷について、８０１の傾斜、すなわち８１０を８１１で除算した値をSPDに格納することもできる。ここで、８１０はポイント８０１に対する帯域幅であり、８１１はポイント８０１に対するパワーである。
【００４１】
ここで分析的に求めた測定基準は、テストと測定を通じて求めてもよい。環境、負荷、パワーバジェットについての仮定は、メモリをテストするテスト入力条件としてとらえることができる。ここで説明したように、所定のテスト基準を用いて得られた帯域幅は、システムインテグレータに報告することができる。各メモリユニットを測定すれば、部品の価値についての不確定性を取り除くことができるが、分析的方法では１つのクラスのデバイスについてすべてのパラメータについて最悪値を仮定する。パワーと歩留まりを司るパラメータはすべて確率分布関数になるので、分析的ケースは最悪の場合のパラメータを説明しなければならない。最悪の場合の値よりも低いデバイスについて、本システムは付加的な性能的余裕を利用することができる。テストと測定により、メモリ部品の生産者はデバイスの分布グラフを正確に描くことができるであろう。
【００４２】
システムがセルフリフレッシュシステムメモリで動作すべきかどうかの決定
図９ａと９ｂは、コンピューティングシステムのシステムメモリの動作に関して機能不全を避ける方法を示している。図９ａの方法の場合、「時間分（time duration）」パラメータは、BIOSメモリ領域やSPDメモリ領域等の不揮発性資源に格納され、コンピューティングシステムがセルフリフレッシュモードでシステムメモリを動作させることができるかどうかを判断する（９０２）ために使用される。具体的に、格納された時間分パラメータにより、コンピューティングシステムがそのシステムメモリをセルフリフレッシュモードで動作させつつ正しくに動作する時間の程度を示す。とりわけ、システムメモリのセルフリフレッシュモードは十分なレベルのパワーを消費し、バッテリー駆動のコンピューティングシステムが正しく動作する時間の長さに影響を与える。そのように、格納された時間分パラメータは、バッテリー駆動のシステムに取って特に有用であると期待される。その理由は、バッテリーの電圧が、コンピューティングシステムが機能不全を起こし始めるポイントに下がる前に、コンピューティングシステムが、そのシステムメモリをセルフリフレッシュモードで動作させて、バッテリー駆動でどのくらい長い時間動作できると見込めるか反映しているからである。
【００４３】
図９ａに示した方法によると、メモリやSPDメモリ領域とうの記憶資源から時間分パラメータを読み出した（ステップ９０１）後、コンピューティングシステムはその時間分パラメータをそのコンピューティングシステムのために設定された「目標」期間と比較する。さらに別の実施形態において、「目標」期間は、そのコンピューティングシステムのオペレ―ティングシステム（OS）が「スタンバイモード期間」として認識している時間分に対応する。格納された期間が「目標」期間以上であるとき、モード期間を時間分パラメータに設定する（ステップ９０３）。ここで、モード期間を用いて、機能不全が起こる前に残された時間を追跡する。
【００４４】
モード期間を読み出した時間分パラメータ９０３と等しく設定することにより、コンピューティングシステムは、システムメモリが機能不全を起こさずにコンピューティングシステム内で、セルフリフレッシュモードで動作できる時間の長さを正しく追跡する。格納された期間が「目標」期間以上でないとき、そのシステムメモリに取ってセルフリフレッシュモードは適当ではないと判断され、別のシステムモードに切り替えられる（ステップ９０４）。例えば、システムメモリをスタンバイモードにしてもよいし、「不適格」としてもよい（例えば、使用不可であると正式に認識される）し、システムメモリの内容をハードディスクドライブ等の不揮発記憶デバイスに格納してもよい。
【００４５】
１つの方法によれば、固定のパワーバジェットの下でセルフリフレッシュモードを確実に持続できる期間を計量する。パワーバジェットは標準的な携帯型コンピュータのバッテリーの充電キャパシティを表す。バッテリー容量は変化するので、この情報を数学的に伝えると便利であろう。利用可能な充電量をパワー消費の線形関数としてモデル化してもよい。この直線の２つのポイントが与えられると、他のポイントはすべて容易に決定論的に計算可能である。これらの２つのポイントを任意に選択して、有意の線形データまたは区分的線形データを保証する。利用可能な充電量は、リフレッシュレートが高くなったりまたはその他の動作が多くなったりすると、より早く減少する。リフレッシュレートが高くなるにつれ、消費パワーは比例的に増大する。複数の傾斜直線でいろいろなリフレッシュレートを表すことができる。
【００４６】
図１０に示したように、複数のパワーポイントを特定して、時間軸に沿った対応したポイントを取得してもよい。一実施形態において、動作中のユニットの信頼性は需要可能な電圧低下により判断する。電圧低下が大きくデバイスが故障してしまう場合、そのようなイベントが起きた時間をポイント（ｔ）として取り出す。曲線のファミリーを作り、複数のリフレッシュレートを解決する。次の式は考慮される変数を示している。
【００４７】
P=Δt*ΔV*I                      式１
At=P/ΔV*I                      式２
単純化するため、定電流源を仮定した。上の式で、利用可能パワー「Ｐ」は任意に選択することができる。ΔＶは、理想的状態からデバイスが故障する状態までの電圧低下を表す。デバイスが故障する状態は、VthresholdΔtと呼び、グラフからT3b-T3aとして得られる。T3bは傾斜を表し、以下の式３に示したように、パワーバジェットの関数として理想的な電圧と一定の電流で計算される
T3b=PBudget/Videal*Iccs              式３
これらの変数が一旦決まると、消費パワーを表す直線を構成するのは容易である。利用可能なパワーバジェットと所定のVthresholdに応じて、時間軸上の対応する値を不揮発記憶またはメモリ資源（例えば、BIOSメモリ領域またはSPDメモリ領域）にプログラムし、または他の首尾一貫した手段を用いてホストシステムに送る。あるいは、比率を示す傾斜だけをプログラムしてもよい。
【００４８】
図９ｂは、時間ではなくパワーを比較の基礎として使用（ステップ９０７）していることを除いて、同様の方法である。図９ｂに示した方法によると、図９ａに関して上で説明した時間分パラメータを似た時間分パラメータを不揮発記憶またはメモリ資源（BIOSまたはSPDメモリ領域等）に格納する。時間分パラメータをメモリまたは記憶資源から読み出した（ステップ９０５）後、コンピューティングシステムは、セルフリフレッシュモードにあるシステムメモリの消費パワーレベルにその時間分パラメータを変換する（ステップ９０６）。（例えば、システム時間分をシステム消費パワーに変換し、システムメモリ以外のシステム部品に帰属させることができる消費パワーの寄与分を取り除く。）そして、セルフリフレッシュモードにおいてシステムメモリに割り当てられた「設計」消費パワーとその消費パワーレベルを比較する。
【００４９】
パワーパラメータが割り当てパワー以内（すなわち、以下）であるとき、システムメモリをセルフリフレッシュモードで動作させる（ステップ９０８）。パワーパラメータが割り当てパワー以内でない場合、システムメモリにはセルフリフレッシュモードで動作は適当ではないと判断され、別のシステムモードを使用する（ステップ９０９）。例えば、システムメモリをスタンバイモードにしてもよいし、「不適格」としてもよいし（例えば、使用不可であると正式に認める）、システムメモリの内容をハードディスク等の不揮発記憶デバイスに格納してもよい。
【００５０】
本出願の別のところで説明した方法と同様に、図９ａと９ｂに関して上で説明した方法のいずれかをソフトウェアとしてコンピューティングシステムのプロセッサにより実行してもよいし、専用ハードウェア（例えば、ロジック）で実行してもよい、ソフトウェアと専用ハードウェアを組み合わせて実行してもよい。ソフトウェアで実行される実施に関して、機能を実行する命令は機械読み取り可能な媒体に格納してもよい。
【００５１】
機械読み取り可能な媒体には、機械（例えば、コンピュータ）により読み取り可能な形体で情報を格納または送信するいかなるメカニズムも含まれる。例えば、機械読み取り可能媒体には、ROM、RAM、磁気ディスク記憶媒体、光記憶媒体、フラッシュメモリデバイス、電気的・光学的・音響的またはその他の形式の伝送信号（例えば、搬送波、赤外信号、デジタル信号等）を含む。
上記の明細書において、具体的な例としての実施形態を参照して本発明を説明した。しかし、添付した請求項に記載した本発明のより広い精神と範囲から逸脱することなく、いろいろな修正や変更を加えることができることは明らかである。従って、本明細書と図面は、限定ではなく例示として考えなければならない。
【図面の簡単な説明】
【００５２】
本発明を、添付した図面において、限定ではなく例示により示す。
【図１】先行技術のコンピューティングシステムの一部を示す図である。
【図２】コンピューティングシステムのシステムメモリが動作する異なるレートの例を示す図である。
【図３】コンピューティングシステムの一連の動作にわたってメモリコントローラの閾値が調節される方法を示すフローチャートである。
【図４】図３の方法の一部の、より詳細な実施形態を示す図である。
【図５】一連の動作にわたってメモリコントローラの閾値を調節するために使用できるルックアップテーブルの一実施形態を示す図である。
【図６】一連の動作にわたってメモリコントローラの閾値を調節するために使用されるコンピューティングシステムの一部の一実施形態を示す図である。
【図７】図７ａないし７ｃは、デバイスパワー、帯域幅、環境温度の間の関係を示す図である。
【図８】パワー消費をモデル化する方法を示す図である。
【図９ａ】コンピューティングシステムのシステムメモリの動作に関する機能不全を防止する方法を示す図である。
【図９ｂ】コンピューティングシステムのシステムメモリの動作に関する機能不全を防止する方法を示す図である。
【図１０】コンピュータシステムのバッテリーパワーが消費されるいろいろなレートをシステムメモリのセルフリフレッシュレートの関数として示す図である。
【図１】
2006524373.tif 000003
【図２】
2006524373.tif 000004
【図３】
2006524373.tif 000005
【図４】
2006524373.tif 000006
【図５】
2006524373.tif 000007
【図６】
2006524373.tif 000008
【図７】
2006524373.tif 000009
【図８】
2006524373.tif 000010
【図９ａ】
2006524373.tif 000011
【図９ｂ】
2006524373.tif 000012
【図１０】
2006524373.tif 000013
【国際調査報告】
2006524373.tif 000014
2006524373.tif 000015
2006524373.tif 000016
2006524373.tif 000017