説明

キャッシュメモリにおける漏洩電力の低減方法及び装置

【課題】キャッシュメモリにおける漏洩電力を低減する方法及び装置を提供する。
【解決手段】キャッシュメモリ300は、各キャッシュラインと関連する2ビット飽和カウンタ320−nと、Nビットグローバルカウンタ310を含む。さらに、各キャッシュラインは、主メモリの特定のブロックがキャッシュラインに現在格納されていることを示すタグと、格納されているデータが有効か否かを示す有効ビットとを含む。カウンタ320における状態遷移を最小にすることにより動作電力消費を最小にするために、いつも1ビットだけが状態変化するようにグレイコーディングを用いる。さらに、カウンタ320を簡単にし、トランジスタカウントを最小にするために、カウンタ320は、非同期的に実行することができる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、一般にキャッシュメモリデバイスに関し、特に、このようなキャッシュメモリにおける漏洩電力を低減する方法及び装置に関する。
[従来の技術及び発明が解決しようとする課題]
【0002】
キャッシュメモリは、多くの外部メモリのメモリアクセス回数を減少させる。図1は、従来のキャッシュメモリ構成を示し、キャッシュメモリ120は、1つまたはそれ以上のプロセッサ110と1つの主メモリ130間に挿入されている。一般に、主メモリ130は、キャッシュメモリ120と比べた場合比較的大きく遅い。キャッシュメモリ120は、主メモリ130の一部のコピーを含んでいる。プロセッサ110が、メモリのエリアを読み取ろうとする場合、そのメモリの内容がすでにキャッシュメモリ120内にあるかどうかを確認するチェックが行なわれる。メモリ内容が、キャッシュメモリ120内にある場合(キャッシュ“ヒット”)、その内容は、プロセッサ110に直接渡される。しかしながら、メモリ内容がキャッシュメモリ内にない場合は(キャッシュ“ミス”)、典型的には、ある決まった数のワードからなる主メモリ130のブロックが、キャッシュメモリ120内に読み込まれ、その後、プロセッサ110に渡される。
【0003】
キャッシュメモリ120は、CMOS技術を用いて実行されることがある。しかしながら、CMOSデバイスにおいて低電力及び高性能を達成するために、CMOSデバイスの駆動電源電圧(Vdd)を減少させる傾向が増えている。性能を維持するために、駆動電源電圧の減少は、スレショールド電圧(Vth)の減少を必要とし、これは、漏洩電力消費を指数関数的に増加させる。チップトランジスタ数が増え続け、給電したトランジスタはいずれも、そのスイッチング作業に関係なく漏洩するので、漏洩電力は、チップの全電力消費において重大な要因になっていると予想される。チップで消費される漏洩電力は、3つのプロセッサ世代内のチップの動作電力に匹敵し得ると評価されている。
【0004】
漏洩電力を低減する解決法の1つは、未使用デバイスへの給電を止めることである。エム・ディー・パウエル(M.D.Powell)等の“ゲートされたVdd:ディープ−サブミクロン キャッシュメモリにおける漏洩を低減するための回路技術”,ACM/IEEE ローパワー エレクトロニクス アンド デザインに関する国際シンポジウム(ISLPED)(2000)や、シ−ヒュン ヤン(Se−Hyun Yang)等の“ディープ−サブミクロン高性能Iキャッシュにおける漏洩を低減するための集積回路/構成方法”,ACM/IEEE高性能コンピュータ構成(HPCA)に関する国際シンポジウム(2000年1月)は、命令キャッシュの大ブロックへの給電を切ることによりスタティックランダムアクセスメモリ(SRAM)における電力漏洩を低減するための、それぞれ、動的に再サイズ化できる命令(DRI)キャッシュ及びゲート化されたVdd回路−レベル技術と呼ばれる微小構成技術を提案している。
【0005】
エム・ディー・パウエル等及びシ−ヒュン ヤン等に開示されている技術は、命令キャッシュの漏洩電力を低減しているが、命令及びデータキャッシュメモリの両方における漏洩電力を低減するための方法及び装置の必要性が存在する。さらに、個々のキャッシュラインの電力を除去できるキャッシュメモリにおける漏洩電力を低減する方法及び装置の必要性も存在する。
【発明の開示】
【課題を解決するための手段】
【0006】
一般に、キャッシュメモリにおける漏洩電力を低減する方法及び装置が開示される。本発明は、キャッシュラインが将来アクセスされそうであると思われるある期間の間非能動になっているこれらのキャッシュラインから電力を除去する。減退間隔と呼ばれる予め定められた時間間隔の間アクセスされなかったキャッシュラインから電力を除去するキャッシュ減退技術が使用される。ここに開示されるキャッシュ減退技術は、キャッシュメモリにおける漏洩電力消費を低減し、したがって、電力消費が低減されたキャッシュメモリをもたらす。本発明のキャッシュライン粒状度は、漏洩電力のかなりの減少を可能にすると同時に、キャッシュの性能のほとんどを保つ。本発明のキャッシュ減退技術は、データ及び命令キャッシュの両方に、またセット結合キャッシュに、さらにマルチレベル キャッシュ階層に首尾良く適用することができる。
【0007】
減退間隔は、対応するキャッシュラインがアクセスされるたびにリセットされるタイマを用いて維持される。減退間隔は、それぞれ、性能を増大させるかまたは電力を節約するのに望ましいように増加または減少することができるように、減退間隔の動的調整を可能にするために変更することができる。減退間隔タイマが、指定された減退間隔を越えると、キャッシュラインへの電力は除去される。キャッシュラインへの電力が除去されると、データフィールドの内容と、タグフィールドは、劣化する(多分論理値を失う)ことが許され、キャッシュラインと関連する有効ビットがリセットされる。キャッシュラインが本発明により給電停止された後でアクセスされると、(有効ビットがリセットされているので)キャッシュミスを招き、キャッシュラインは再び給電され、データは、メモリ階層の次のレベルから得られる。
【0008】
本発明のより完全な理解ばかりでなく、本発明のさらなる特徴及び利点は、以下の詳細な説明及び図面の参照により得られる。
【発明を実施するための最良の形態】
【0009】
図2は、図1の従来のキャッシュメモリ120の構造をより詳細に示す。図2に示されるように、キャッシュメモリ120は、Kワード各々のCキャッシュラインからなる。キャッシュメモリ120のライン数は、一般に、主メモリ130におけるブロック数よりかなり少ない。いつでも、主メモリ130のブロックの一部は、キャッシュメモリ120のライン中に存する。キャッシュメモリ120における個々のラインは、主メモリ130の特定のブロックに対して専用とすることができない。したがって、図2に示されるように、各キャッシュラインは、主メモリ130の特定のブロックが現在キャッシュ120の格納されていることを示すタグを含む。さらに、各キャッシュラインは、格納されているデータが有効か否かを示す有効ビットも含む。
【0010】
本発明は、減退間隔と呼ばれる予め定められた時間間隔の間アクセスされなかったキャッシュラインから電力を除去するキャッシュ減退技術を提供する。減退間隔は、それぞれ、性能を増大させるかまたは電力を節約するのに望ましいように増加または減少することができるように、減退間隔の動的調整を可能にするために可変することができる。
【0011】
ここで説明されるキャッシュ減退技術は、キャッシュにおける漏洩電力消費を低減する。減退間隔以内にアクセスされなかったキャッシュラインへの電力は切られる。本発明により給電が停止されたキャッシュラインが、その後アクセスされると、キャッシュミスを招き、ラインは給電され、データは、メモリ階層の次のレベルから呼び出される。本発明は、当業者には明らかなように、メモリ階層のどのレベルでも使用できることが注目される。このキャッシュライン粒状度を用いて電力を制御することにより、本発明は、漏洩電力のかなりの減少を達成すると同時に、キャッシュの性能のほとんどを保つ。減退キャッシュは、等しいミス率のキャッシュよりかなり小さい有効給電サイズを持つことができる。かけがえとして、小さなキャッシュの有効給電サイズを有する減退キャッシュは、より良く実行する。
【0012】
さらに、減退キャッシュの全性能は、電力消費が論点ではない場合の厳しいアプリケーションに利用可能である。減退キャッシュのこのフレキシビリティは、バッテリ給電式コンピュータに特に有効である。本発明のキャッシュ減退技術は、データ及び命令キャッシュの両方に首尾良く適用可能である。CPUの近づく世代における漏洩電力の需要性の増大と、オンチップメモリのサイズの増大に伴って、キャッシュ減退は、漏洩電力消費を低減する有効な構造ツールとすることができる。
【0013】
前に示されているように、エム・ディー・パウエル等には、命令キャッシュの部分を給電停止し、キャッシュを再サイズ化して、漏洩電力をかなり低減する技術が開示されている。本発明は、より細かい粒状度(キャッシュライン粒状度)を伴うが再サイズ化しないデータキャッシュの部分から電力を除去する。本発明は、多くのキャッシュフレームが、不十分に使用され、したがって、性能に影響を与えることなくオフにすることができるという事実に頼っている。一般に、本発明は、将来アクセスされそうであると思われる、指定された減退間隔の間アクセスされなかったキャッシュラインへの給電を停止することを企てる。
【0014】
同じキャッシュラインへのほとんどの連続するアクセスは、時間的に接近した間隔(時間位置)にあるので、ある時間の間アクセスされなかったキャッシュラインは、さらにアクセスされないか、または、非常に遠い将来にアクセスされるだろういくつかのキャッシュラインの1つとなるかのどちらかである。したがって、本発明は、キャッシュラインが減退間隔以内にアクセスされる限りは、キャッシュラインへの電力を維持する。さらに以下に説明されるように、各キャッシュラインへの最後のアクセスからの減退間隔の経過は、デジタルまたはアナログ的実施例を用いて検出することができる。
【0015】
本発明は、キャッシュライン減退が、キャッシュのミス率を増すだろうということを認める。換言すれば、いくつかのラインは、アクセスされる前、本発明により給電がオフにされる。しかしながら、減退キャッシュのミス率は、そのサイズが減退キャッシュの平均給電サイズと合っているより小さいキャッシュよりさらに小さい。減退キャッシュを見る他の方法は、漏洩電力効率見通しからであり、この場合、減退キャッシュの平均給電サイズは、等しいミス率のキャッシュより小さい。
【0016】
デジタル的実施例
キャッシュラインアクセスの新しさは、キャッシュラインへの各アクセス時にクリアされ、決まった時間間隔で周期的にインクリメントされるデジタルカウンタで表わすことができる。カウンタは、指定されたカウントに達すると、飽和し、対応するキャッシュラインへの電力(または接地)を除去する。
【0017】
減退間隔は、数万または数10万サイクルのオーダーとなる傾向があることが観測されている。したがって、妥当な減退間隔に必要なサイクル数は、カウンタがサイクルをカウントすることをできなくさせる(必要なカウンタビットが多すぎる)。したがって、必要なビット数は、かなり粗いレベルで、例えば数千サイクル毎に、カウンタが“チックする”ことにより減らすことができる。グローバルサイクルカウンタを用いて、より小さいキャッシュラインカウンタのチックを提供することができる。キャッシュライン当たりの2ビットカウンタは、4つの量子化カウンタレベルで十分な分解能を提供するというシミュレーションが示された。例えば、キャッシュラインが、最も最近のアクセスに続いて10,000クロックサイクルの間給電停止されるべきである場合、4つの量子化カウンタレベルは各々、2,500サイクルに対応する。
【0018】
図3は、本発明によるキャッシュメモリ300のデジタル的実施例を示す。図3に示されるように、キャッシュメモリ300は、各キャッシュラインと関連する2ビット飽和カウンタ320−n(以後、ひとまとめにしてカウンタ320と呼ぶ)と、Nビットグローバルカウンタ310を含む。さらに、各キャッシュラインは、主メモリ130の特定のブロックがキャッシュラインに現在格納されていることを示すタグと、格納されているデータが有効か否かを示す有効ビットとを含む。電力を節約するために、グローバルカウンタ310は、例えばバイナリ リップル カウンタとして実行することができる。追加のラッチ(図示しない)は、グローバルカウンタ310と比較される最大カウント値を保持している。グローバルカウンタ310は、最大値に達するとリセットされ、1クロックサイクルT信号が、グローバルタイム信号分配ライン330上に発生する。最大カウントラッチ(図示しない)は切り換わらず、動作電力消費の一因とならない。一般に、小数のキャッシュラインカウンタを用いた平均に基づき、サイクル毎に切り換わることが予想されるビットはごく少ない。
【0019】
カウンタ320における状態遷移を最小にすることにより動作電力消費を最小にするために、本発明の模範的なデジタル的実施例は、いつも1ビットだけが状態変化するようにグレイコーディングを用いる。さらに、カウンタ320を簡単にし、トランジスタカウントを最小にするために、カウンタ320は、非同期的に実行することができる。さらなる変形では、カウンタ310,320は、シフトレジスタとして実行することができる。図4は、模範的なデジタル的実施例において各キャッシュラインに必要な回路400を示す。各キャッシュラインは、図5に示す状態マシンを実行する回路を含む。
【0020】
図5は、2つの入力(WRD及びT)を有するグレイコードカウンタ320を飽和させる模範的な2ビット(S0,S1)の状態線図を提供する。Tは、その期間を外部的に調整して異なるプログラムに適する異なる減退間隔を提供することができる行儀の良いデジタル信号である。第2の状態マシン入力は、キャッシュラインアクセス信号WRDであり、この信号は、アドレスから復号され、キャッシュメモリ300以内の特定の列を選択するのに使用されるのと同じ信号(例えば、WORD−LINE信号)である。図5に示されるように、状態遷移は、2つの入力信号T及びWRDの変化を非同時に生じる。T及びWRDは、行儀の良い信号なので、準安定性問題はない。ただ1つの出力は、キャッシュラインスイッチ状態PowerOFF(POOFF)となる。キャッシュラインは、リセットされ、キャッシュラインがアクセスされるたびに状態00に戻る。
【0021】
キャッシュラインへの電力がオフされると(状態10)、キャッシュ減退は、キャッシュラインと関連するデータ及び対応するタグフィールドを電源から切断する。キャッシュラインからの電力の除去は、キャッシュ回路の休止と重大な関係を有する。詳細には、給電が停止されたキャッシュラインへの最初のアクセスは、
1.キャッシュミスとなり、(なぜなら、データ及びタグが電力なしに改悪されるかもしれないので)
2.対応するカウンタ320−iをリセットし、キャッシュラインの電力を回復させ(すなわち、図4による減退メカニズムを再スタートさせ)、
3.電力が回復した後、キャッシュライン回路が安定するまでの時間の間、遅延されるべきである(主メモリへの固有のアクセスタイムは、多くの状況において十分な遅延とすべきである)。
【0022】
これらの必要条件を満足するために、本発明は、図6に示されるように、キャッシュラインの有効ビットを減退メカニズムの一部として使用する。図6は、本発明によるキャッシュライン電力制御を示す。第一に、図6に示される回路は、有効ビットが(カウンタと同様に)常に給電されていることを保証する。第二に、図6に示される回路は、減退メカニズムで0(無効)にリセットされるように、有効ビットのリセット能力を提供する。PowerOFF信号は、有効ビットをクリアする。したがって、給電が停止されたキャッシュラインへの最初のアクセスは、常に、タグの内容にかかわらずミスとなる。より低いメモリ階層からこのミスを満足するのが、有効ビットを回復する唯一の方法なので、再び給電されたキャッシュラインは、安定させるのに十分な時間がある。さらに、その間に多分改悪されているデータを読みとることができる、(このキャッシュラインへの)他のアクセスはない。
【0023】
デジタル的実施例は、オペレーティングシステム(OS)によって、またはグローバルサイクルカウンタ310を介する何か他のハードウェアランタイム監視システムによって、ランタイムで制御することができる。OSまたは他のシステムは、グローバルカウンタ310の期間(Tperiod)をセットして、コンピュータシステムの実行するアプリケーションの要求及び電力消費必要条件とにしたがう望ましい減退間隔を発生させることができる。減退間隔を調整するために、プロファイリング及び/またはランタイム監視を用いることができる。また、減退間隔が、各キャッシュラインに関して個別に調整される場合は、適応方式を使用することもできる。各キャッシュラインの外来の減退ミスを監視することにより、減退間隔は、誤りを繰り返さないように調整することができる。したがって、アプリケーション毎を基本として減退間隔を設定する必要なしに、良好な性能が可能となる。
【0024】
アナログ的実施例
キャッシュラインアクセスの新しいものは、かけがえとして、図7に示されるようにコンデンサ710の充放電のような事象を用いて実行することができる。したがって、キャッシュラインがアクセスされるたびに、コンデンサは接地される。キャッシュラインがしばしばアクセスされる普通のケースでは、コンデンサは放電される。時間がたつと、コンデンサは、Vddに接続された抵抗720を介して充電される。充電が、十分に高いレベルに達すると、電圧コンパレータ730は、この充電を検出し、PowerOFF信号を発生し、対応するキャッシュライン(データビット及びタグビット)から電源を切断する。
【0025】
RC時定数は変更できない(コンデンサ及び抵抗の作成されたサイズによって決定される)が、電圧コンパレータ630のバイアスを調整して、異なるプログラムの時間的アクセスパターンに適応させることができる。アナログ的実施例は、本質的にノイズに敏感であり、また処理技術にも敏感であり、デジタル回路の合図で非同期的に状態変化することができる。電圧コンパレータを同期的にサンプリングする方法は、準安定性を避けるために使用することができる。
【0026】
本発明のアナログ的実施例は、ダイナミックランダムアクセスメモリ(DRAM)技術に特に適しており、ここでは、データは、以下に説明されるようにコンデンサへの電荷として格納される。DRAM実施例では、格納されたデータ電荷は、自然に減退し、充電しなければならない。データの有効性は、対応する格納されたデータ電荷より早く減退する有効ビットで保証される。したがって、有効ビットの減退は、本発明による減退カウンタに対応させることができる。
【0027】
スタティック及びダイナミックランダムアクセスメモリハイブリッド
本発明のキャッシュ減退技術は、ここの開示に基づいて当業者に明らかになるように、スタティック及びダイナミックメモリ構成の両方を含むハイブリッドメモリ技術に適用することができる。ハイブリッドメモリへの本発明の適用は、接地へのパスのない4トランジスタメモリセルを使用する減退キャッシュを用いて示される。
【0028】
従来のSRAM回路が、ディープ−サブミクロン技術においてキャッシュのデザインに使用された場合、静的な電力消費は明白な関心事となる。エム・ディー・パウエル(M.D.Powell)等の“ゲートされたVdd:ディープ−サブミクロン キャッシュメモリにおける漏洩を低減するための回路技術”,ACM/IEEE ローパワー エレクトロニクス アンド デザインに関する国際シンポジウム(ISLPED)(2000)に説明されているもののような、SRAMベースのキャッシュメモリを伴うアプリケーションにおいてこの電力消費を低減する試みは、個々のキャッシュラインの接地への(電源電圧からの)電流路をゲートする(または、切る)回路設計技術を用いている。これらの技術は、接地への電流をある程度止めるのに有効であるが、各キャッシュラインへの電流路をゲートするのに必要な追加の周辺回路から生じる領域ー性能トレードオフを有する。
【0029】
しかし、文献に見られないが、キャッシュ設計において明白な電力利点を持つと思われる方法は、ケー・スタイン(K.Stein)等の“単一トランジスタメモリセル用記憶アレイ及びセンス/リフレッシュ回路”,IEEE Journal of Solid State Circuits,Vol.SC−7,NO.5,336−340(October 1972)に説明されているもののような、マルチトランジスタDRAMセルの使用である。この種のDRAMセル、特にセル当たり4個のトランジスタを用いるDRAMセル(4T−DRAM)は、接地への(電源電圧からの)パスを持っておらず、したがって、接地への電流路をゲートする追加回路を必要としない。4T−DRAMのセルサイズは、4個のトランジスタを必要とするだけなので、SRAMセルより小さい。また、接地へのパスのない4T−DRAMセルは、上述のように、多少DRAMメモリセルのデータ減退をまねる電子的な電荷減退を有する。4T−DRAMセルは、電源電圧及び接地に接続されたSRAMメモリセルと同様に、それらをオフに“切り換える”必要性なしに、時間がたつと自然に減退する。その点で、それらは、DRAMセルと同様にふるまう。
【0030】
したがって、本発明の他の態様によれば、キャッシュ減退メカニズムは、ここに説明されているSRAM減退メカニズムと同様な4T−DRAMキャッシュについて開示される。この減退メカニズムは、メモリセルの値が、(これはこのデザインでは不必要なので、キャッシュラインのメモリセルを“オフに切り換える”よりむしろ)それらの固有の減退のため信頼できなくなる時を示すのに用いられる。
【0031】
キャッシュラインの4T−DRAMセルは、キャッシュラインが書き込まれた時の論理値(0及び1)を保持するように充電される。これらのセルは、時間がたつと減退して、電荷を失う。セルは、アクセスされるたびに、正しい論理値に自動的に充電される。しかしながら、何もアクセスがなく、長時間経過すると、メモリセルは、信頼できなくなるポイントまで減退し、相当なエラーなしに正しい論理値を回復することができない。アクセスされたセルがまだ信頼できる安全期間を確立することができる。(ミリ秒のオーダーの)この期間の正確な値は、メモリセルを製造するのに用いられる集積回路(IC)処理の特性に依存する。
【0032】
この場合の減退メカニズムの目的は、最後のアクセス後の安全期間の終わりに信号を出すことである。この場合の最大減退間隔は、安全期間に等しくなる。SRAMキャッシュと同様の有効ビットを用いて、キャッシュラインが無効と思われることを示すことができる。有効ビットは、メモリセルの残部で減退すべきでなく、常に信頼できるものであるべきである。有効ビットは、標準的な6トランジスタSRAMセルとして製造されるか、または、その信頼性を保証するために定期的にリフレッシュされる。(上記のSRAMキャッシュ減退に説明されたように有限状態マシンとして実行される)キャッシュライン毎の減退カウンタは、キャッシュラインへの最後のアクセスの時から時間をカウントする。安全期間の終わりに、減退カウンタは、有効ビットをリセットして、データが無効であることを示す。
【0033】
4T−DRAMのメモリセルは、(DRAMメモリセルと同様に)特定の速度で放電するので、安全期間の終わりよりどんなに早くキャッシュラインを“減退させ”、無効にしても恩恵はない。安全期間は、(数100MHzのプロセッサクロックに対して数10万サイクルに翻訳するミリ秒のオーダーで)大きいので、局部キャッシュライン減退カウンタは、非常に粗粒に(すなわち、非常に低い分解能に)することができる。グローバルカウンタは、安全期間の半分の期間でチックする。1ビット局部カウンタは、図10に示される有限状態マシンを実行する。次のクローバルチックパルスに関するキャッシュラインへの最後のアクセスは分からないので、減退間隔は、半分の安全期間から全安全期間までの範囲となる。平均では、1ビット減退カウンタの減退間隔は、安全期間の3/4となる。
【0034】
図9は、4トランジスタを含む模範的な4T−DRAMメモリセル(ビット)を示す。WRDは、セルにアクセスする時に使用されるワードラインである。B及びB−BARは、セルの値を読み書きするビットラインである。4T−DRAMメモリセルは、普通の6トランジスタSRAMメモリセルに直接取って代わる。図10は、図9の4T−DRAMキャッシュラインを減退させるために使用される1ビット局部キャッシュラインカウンタの状態線図を示す。
【0035】
ライト−バックキャッシュ実施例
ライト−バックキャッシュ構成を使用するプロセッサは、主メモリの対応する位置を更新することなく新しい値でキャッシュを更新することができる。したがって、キャッシュラインの減退間隔が達せられると、キャッシュラインは、修正されたデータが主メモリの適当な位置に書き込まれるまで、本発明にしたがって給電停止されない。したがって、図8に示されるように、有効ビット、タグ及びデータのフィールドを持つことに加えて、キャッシュ800の各キャッシュラインは、所定のキャッシュラインに格納されている値が、タグで確認されるように、主メモリの適当な位置に戻って書き込まれる必要がある場合を示す“ダーティビット”識別子を任意に維持する。ダーティビットは、キャッシュが、主メモリの対応する位置を更新することなく新しい値で更新されるたびに、プロセッサで設定される。
【0036】
他の変形では、グローバルサイクルカウンタ310より供給されるグローバルタイム信号Tは、あるキャッシュラインカウンタから他のキャッシュラインカウンタへ(または、あるカウンタ群から他のカウンタ群へ)縦続接続して、ライトーバックキャッシュ実施例における“ダーティ”キャッシュラインの“ライティングバック”を分配するができる。したがって、所定のキャッシュライン(または、キャッシュライン群)は、もし必要ならば、グローバルタイム信号Tを次のキャッシュライン(または、キャッシュライン群)へ渡す前に、主メモリに戻って書き込む。このように、グローバルタイム信号Tの分配の縦続接続は、グローバルカウンタ310からの1カウントと関連する減退を広げる。
【0037】
本発明の減退回路に起因して消費されるさらなる動作電力は、その負荷静電容量及びトランジスタスイッチング作用の結果に比例する。ここで説明されるデジタル的実施例に関して、110以下のトランジスタは、平均してサイクル毎に切り換わる。減退回路全体は、非常に少数のトランジスタ、すなわち、グローバルカウンタ用の数100プラス局部キャッシュラインカウンタ毎に30以下のトランジスタを含む。全局部カウンタは、Tパルス毎に値を変更する。しかしながら、これは、(グローバルカウンタの期間に等しい)非常に粗い間隔で起こる。とはいえ、キャッシュラインへのアクセスにより局部カウンタをリセットするのは、心配の原因にならない。キャッシュラインが激しくアクセスされる場合は、カウンタは、その初期値から変わる機会がないので、それをリセットするのは、どんな動作電力も消費しない(カウンタのトランジスタはどれも切り換わらない)。電力が消費されるケースは、グローバルカウンタの少なくとも1期間の間休止されたキャッシュラインへのアクセスである。本発明で使用される2ビットカウンタ全部にわたって、平均でサイクル当たり1ビット以下の遷移が存在することが観測されている。したがって、減退回路の動作電力消費は、多分数100万のトランジスタを含むチップの他の部分で消費される動作電力と比べた場合無視できる。
【0038】
マルチレベルキャッシュ階層におけるキャッシュ減退
多くのシステムは、比較的小さくて早いレベル1(L1)キャッシュと、1以上のレベルのだんだん大きくて遅くなるキャッシュ、レベル2(L2)、レベル3(L3),...レベルN(LN)とからなるマルチレベルキャッシュ階層を用いている。典型的には、階層中でより遅い、より大きいキャッシュは、さらに離れているさらに少ないアクセスに会う(なぜなら、プロセッサのアクセスの流れは、高い方のレベルにおけるヒットでフィルタされるからである)。各レベルの減退間隔は、それに応じたサイズにされるべきである(すなわち、より大きい低レベルキャッシュにはより大きい減退間隔とする。)減退間隔は、チック信号(T)期間の適切な選択によるサイズにされる。
【0039】
キャッシュ階層へのマルチレベル包含は、高い方のレベルのキャッシュ(例えば、L1)の内容が、そのすぐ下のレベルのキャッシュ(例えば、L2)の内容の小セットであることを保証する。マルチレベル包含は、多くのデザインで実施されている。マルチレベル包含を実施していないキャッシュ階層では、キャッシュラインは、異なるレベルのキャッシュにおい徹個別的に減退させることができる。例えば、L2中のデータは、L1中の存在と無関係に減退させることができる。マルチレベル包含が実施されているキャッシュ階層では、減退メカニズムは包含を保つように修正されなければならない。
【0040】
典型的に、マルチレベル包含が実施されているキャッシュ階層では、あらゆるキャッシュライン(L1を除く全レベル)における包含ビットは、キャッシュラインデータがさらに上のレベルに存在しているか否かを示す。階層レベル中の異なるサイズのキャッシュラインの場合には、複数の包含ビットを使用して、さらに上のレベルに存在する、キャッシュラインの正確な部分を示すことができる。例えば、L1ラインサイズが32バイトでありかつL2ラインサイズが128バイトである場合は、L2キャッシュライン中の4個の包含ビットが、データ包含を正確に表わすために用いられる。本発明の減退メカニズムは、包含ビットが、さらに上のレベル中の同じデータの存在を示している場合に、そのデータフィールドだけが減退するのを許され、タグフィールドは許されないように修正される。タグフィールドは、給電オンされたままであり、したがって、さらに上のレベルに存在するデータのプレースホルダを保存する。マルチレベル包含は、タグのみのために維持される。より高いレベル中に存在しないキャッシュラインの減退は、正常に進行する。給電オンされているタグのみを有するキャッシュラインへのアクセスは、ミスとなる。マルチレベル包含を保存する他の解決法は、より高いレベルでも減退された場合のみ、キャッシュラインの減退を許すことである。より高いレベルに存在しないキャッシュラインの減退は、正常に進行する。
【0041】
ここに図示され、説明された実施例及び変形は、本発明の原理の単なる例示であり、種々の修正が本発明の範囲及び精神から逸脱することなく当業者により実行され得ることが理解されるべきである。
【図面の簡単な説明】
【0042】
【図1】従来のキャッシュ構成を示す図である。
【図2】図1の従来のキャッシュメモリの構造をより詳細に示す図である。
【図3】本発明によるキャッシュメモリのデジタル的実施例を示す図である。
【図4】図3の模範的なデジタル的実施例における各キャッシュライン用の模範的回路を示す図である。
【図5】図3及び図4の模範的2ビットカウンタの状態線図である。
【図6】本発明のキャッシュライン電力制御態様を示すブロック図である。
【図7】本発明によるキャッシュメモリ用の減退カウンタのアナログ的実施例を示す図である。
【図8】本発明による他のキャッシュメモリの構造を示す図である。
【図9】接地へのパスを備えていない4トランジスタハイブリッドSRAM/DRAMメモリセルを示す図である。
【図10】減退4T−DRAMキャッシュラインに使用される1ビットカウンタの状態線図を示す図である。

【特許請求の範囲】
【請求項1】
主メモリからの値を記憶する複数のキャッシュラインと、
該複数のキャッシュラインの各々と関連するタイマとを含み、
該キャッシュラインは各々、1つ以上のダイナミックランダムアクセスメモリ(DRAM)セルを含み、
該DRAMセルは各々、該キャッシュラインがアクセスされるたびにリフレッシュされ、
該DRAMセルは各々、安全期間の間該値を確実に記憶し、
該タイマの各々は、該安全期間後に該キャッシュラインと関連する有効ビットをリセットする信号を制御するキャッシュメモリ。
【請求項2】
キャッシュメモリにおける漏洩電力を低減する方法であって、該キャッシュメモリは、主メモリからの値を記憶する複数のキャッシュラインを有し、該キャッシュラインは各々、1つ以上のダイナミックランダムアクセスメモリ(DRAM)セルを含み、該DRAMセルは各々、安全期間の間該値を確実に記憶する方法において、
該対応するキャッシュラインがアクセスされるたびに、該DRAMセルをリフレッシュするステップと、
該キャッシュラインの各々のために備えられたタイマを使って時間を設定するステップと、
該キャッシュラインがアクセスされるたびに、該タイマをリセットするステップと、
該タイマに基づいて、該安全期間後に該キャッシュラインと関連する有効ビットをリセットするステップとを含む方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2007−317213(P2007−317213A)
【公開日】平成19年12月6日(2007.12.6)
【国際特許分類】
【出願番号】特願2007−181585(P2007−181585)
【出願日】平成19年7月11日(2007.7.11)
【分割の表示】特願2001−327071(P2001−327071)の分割
【原出願日】平成13年10月25日(2001.10.25)
【出願人】(301030605)アギア システムズ ガーディアン コーポレーション (15)
【氏名又は名称原語表記】Agere Systems Guardian Corporation 
【Fターム(参考)】