JP5167952B2 - キャッシュメモリシステム - Google Patents
キャッシュメモリシステム Download PDFInfo
- Publication number
- JP5167952B2 JP5167952B2 JP2008136280A JP2008136280A JP5167952B2 JP 5167952 B2 JP5167952 B2 JP 5167952B2 JP 2008136280 A JP2008136280 A JP 2008136280A JP 2008136280 A JP2008136280 A JP 2008136280A JP 5167952 B2 JP5167952 B2 JP 5167952B2
- Authority
- JP
- Japan
- Prior art keywords
- hit
- power supply
- cache
- memory
- power
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Description
本発明はキャッシュメモリシステムに関し,特に低消費電力化が可能なキャッシュメモリシステムに関する。
キャッシュメモリは低速な主記憶装置の代わりにプロセッサにデータ(プログラムを含む)を供給する高速なメモリであり,図9はキャッシュメモリを含む計算機システムの構成例である。図中,80はチップ,81はチップ80内に設けられたプロセッサ,82はチップ80内に設けられた小容量であるが高速動作をするキャッシュメモリ,83は大容量であるが低速動作をする主記憶である。なお,この構成は1ウェイキャッシュの例である。
図9におけるメモリ動作には2パターン有る。プログラムが求められるデータがキャッシュメモリに存在する場合(ヒットとなる場合)と存在しない場合(ミスヒットとなる場合)である。ヒットする場合では,プロセッサ81からキャッシュメモリ82に対してアドレスと共にアクセスし(図9のa),キャッシュメモリ82を検索し,該当するデータがキャッシュメモリ82に格納されている,すなわちヒットするとそのデータが読み出されてプロセッサ81に出力される(図9のf)。キャッシュメモリ82に存在せずミスヒットする場合(図9のb)では,主記憶アドレスを主記憶83に供給して(図9のc),該当するデータの読出し(同d)が行われ,プロセッサ81に出力され,キャッシュメモリ82にフィル(fill) し, プロセッサ81に供給される。
このように,キャッシュメモリ82でヒットした場合は,処理速度は高速であり,キャッシュメモリ82でミスヒットして主記憶83にアクセスする場合は,処理速度は低速となる。そして,キャッシュメモリのヒット率はプロセッサの処理速度に大きく影響するものであり,高ヒット率が望ましい。もし,ミスヒットが多発してヒット率が低い状態になると,主記憶アクセスに伴うレイテンシ(遅延)によりプロセッサの処理速度が規制されてしまう。
一方,近年は大量データを高速処理するためプロセッサが使用するキャッシュメモリの容量が増大している。キャッシュメモリを増やすことで消費電力,特にリーク電流が増大する問題が生じている。リーク電流は,例えば,N型MOSトランジスタの場合,ゲート電圧を0Vにするとオフになるが,トランジスタでは完全に電流が零にならず,半導体の微細化に比例してオフリーク電流が急増してしまう。また,ゲート酸化膜をトンネル効果で突き抜けて電流が流れるというメカニズムによるゲートリークがあり,絶縁膜の厚みが減少すると極めて大きな電流となるという現象がある。
従って,キャッシュメモリの容量が増大して回路が微細化した場合に,電力消費を抑制することが望まれている。
従来のキャッシュメモリを備えたプロセッサの技術において,特定のステートにおいてキャッシュメモリは常時パワーオンであり,特別にディープ・パワー・ダウンテクノロジー(DPD:Deep Power Down technology) というキャッシュ電力オフモードを備える方法がある。そのDPDのモードはキャッシュメモリにより処理すべきデータが一定時間無い,アイドル状態になったことを検出した時だけキャッシュメモリ全体をパワーオフにするものである。しかし,パワーオフ対象がキャッシュメモリ全体であるため,システム復帰(次のパワーオンの時)に要する素子への充電時間(Wakeup time)が大きくなってしまい,プロセッサによる高速処理に適していない。
なお,不揮発性メモリを記憶媒体とする記憶装置の技術において,メモリの劣化を平均化してその寿命を延ばすために,メモリの消去時間と書き込み時間を測定して基準時間値と比較することによりメモリセルの劣化を診断して,劣化の進行が早いメモリをあまり使用せず,劣化の進行が遅いメモリの使用頻度を上げる制御をする技術が存在する(特許文献1参照)。
また,ディスクドライブを用いたストレージシステムの消費電力の低減を目的として,ストレージに接続された計算機からの指示に基づいて,ストレージシステムが提供する論理ボリュームを構成するディスクドライブの電源をオン/オフ制御する技術が提案されている(特許文献2参照)。
WO96/28826号公報
特開2005−157710号公報
上記キャッシュメモリを備えたプロセッサの技術においてパワーオフ対象がキャッシュメモリ全体であり,復帰のための時間が大きいためアイドル状態時に限られるという問題があり,上記特許文献1の技術は不揮発性メモリの劣化を平均化してその寿命を延ばす技術であり,キャッシュメモリの消費電力を低減するものではない。また,特許文献2の技術はディスクドライブの電源を頻繁にオン/オフ制御をするもので,ディスクドライブの劣化と故障の確率の増加を招き,消費電力を低減することはできない。
本発明はプロセッサに配置されたキャッシュメモリの低消費電力化を実現するキャッシュメモリシステムに関する。
この発明では,プロセッサと主記憶の間に設けたキャッシュメモリシステムのキャッシュメモリを複数の分割メモリに分割し,各分割メモリのそれぞれに個別に電源が供給されるメモリ本体である電源領域で構成し,分割メモリに対するプロセッサからのアクセス時のキャッシュヒットの結果が入力され,ヒット数を計数してヒット率を発生するキャッシュヒット計数部と,各電源領域への電源供給を制御する電源スイッチ制御部とを備える。電源スイッチ制御部は,各キャッシュヒット計数部からのヒット率を入力して,大きいヒット率を発生する分割メモリと小さいヒット率を発生する分割メモリを識別する手段と,大きいヒット率と小さいヒット率の差が予め設定された閾値を越えたという条件を満たすことを検出する判定手段を設け,その判定手段により条件を満たしたことを判定する出力が発生するとヒット率の低い電源領域への電源供給をオフに切替える制御手段を備えるよう構成する。
また,好ましくは,電源スイッチ制御部は,キャッシュヒット率の差が予め設定された閾値を越えた状態が予め設定した時間継続するという条件を満たすことを検出する判定手段とその判定手段による条件を満たしたことを判定する出力が発生すると制御手段は,ヒット率の低い電源領域への電源供給をオフに切替えるよう構成するものである。
更に,電源スイッチ制御部は,プロセッサにより電源スイッチの状態を強制的にオンまたはオフに切替える制御信号を発生する状態に設定される電源スイッチ強制設定部を備えるよう構成することで,キャッシュメモリの分割したメモリの電源領域の電源オン,オフの制御を無視するよう構成することができる。
上記したキャッシュヒット計数部の構成として,複数の縦続接続されたフリップフロップと,各フリップフロップの出力が並列に入力された計数部とで構成し,先頭のフリップフロップにキャッシュヒットの出力を入力し,順次後段にシフトされ,計数部は並列に入力する各フリップフロップから出力されたヒット状態の個数を計数するよう構成することができる。
また,好ましくは,分割メモリを構成する各電源領域の各エントリアドレスにデータを格納すると共に各エントリアドレスに対応したヒット履歴の格納部を設け,各ヒット履歴格納部は,プロセッサからの対応するエントリアドレスへのアクセス時のヒットの有無の履歴を格納し,各電源領域の各エントリラインの各ヒット履歴格納部の内容を判別する手段と,ヒット履歴の有・無に対応してエントリラインのデータを格納すべき電源領域を決めて,エントリラインのデータをヒット履歴に応じて入れ替える制御を行うことにより,ヒット率の高い分割メモリとヒット率の低い分割メモリとに分けることができ,ヒット率の低い分割メモリの電源領域への電源供給をオフにすることができる。
本発明によれば,ヒット率の低い分割メモリの電源領域に対する電源供給をオフにすることにより,キャッシュメモリの消費電力を低減することが可能となる。例えば,2つに分割した場合に,ある一方への電源供給をオフにすると,その電源領域での消費電力がゼロになる。
また,電源供給のオフは電源領域別に行われるため,必要キャッシュメモリに応じて適切にオフにすることができる。
ヒット率の低い状態が一定時間以上継続したことを条件にヒット率の低い電源領域への電源供給をオフし,結果として,安定した分割メモリの電源制御を実現することができる。
また,一旦電源供給をオフにした後,ヒット率が増加した分割メモリの電源領域への電源供給をオンに戻すことで,プロセッサに必要なデータを動的に適切に供給することができる。
更に,分割メモリの電源領域への電源供給を強制的にオンまたはオフに制御可能とすることで,消費電力の低減よりも高ヒット率実現が優先される場合には,キャッシュメモリの電源を強制オンさせることができる。また,プログラムが使用するキャッシュメモリ容量が既知である場合には不要なキャッシュメモリを予めオフにすることができる。
キャッシュメモリのエントリライン毎のヒット履歴の格納部を設け,そのヒット履歴を用いてデータを入れ替えることによりキャッシュメモリに格納したプログラムの構造や,キャッシュメモリの利用法に依存することなく,電力消費を低減することができる。
図1は発明に係るシステムの概略構成である。図中,1はキャッシュメモリ,10a,10bはキャッシュメモリを2つに分割した場合の周辺回路(アドレスデコーダ,キャッシュヒット判別回路等を含む)をそれぞれに含む第1の分割メモリと第2の分割メモリ,11aは第1の分割メモリ10aの中の電源が別に供給されるメモリ本体である第1の電源領域(PD1:Power Domainを表す) ,11bは第2の分割メモリ10bの中の電源が別に供給されるメモリ本体である第2の電源領域(PD2),12aは第1の分割メモリ10aからのキャッシュヒット結果を計数するキャッシュヒット計数部,12bは第2の分割メモリ10bからのキャッシュヒット結果を計数するキャッシュヒット計数部,13はキャッシュヒット計数部12a,12bの2つのヒット計数結果を判定して電源スイッチを制御する出力を発生する電源スイッチ制御部,14a,14bは第1の電源領域11aと第2の電源領域11bへの電源供給のオン,オフの切替えを行う第1と第2の電源スイッチ,2はプロセッサ,3は主記憶である。第1と第2の電源スイッチ14a,14bはそれぞれ分割されたキャッシュメモリの第1の電源領域11aと第2の電源領域11bへの電源供給をオン,オフ制御するが,第1の分割メモリ10aと第2の分割メモリ10bに含まれる周辺回路(アドレスデコーダやキャッシュヒット判別回路等)には常時電源が供給されている。
なお,図1の構成では,キャッシュメモリ1を2つの分割メモリ10a,10bに分割した例を示すが,2以上の複数個に分割できることはいうまでもない。
図1に示すキャッシュメモリを分割して動作する原理を図2により説明する。図2はキャッシュ容量に対するヒット率の変化を定性的に示した図である。キャッシュメモリの全体の容量が512B(バイト)の場合において,これを256Bずつ2つに分けて,第1の分割メモリ10aと第2の分割メモリ10bとで構成するものとする。キャッシュメモリにプログラムまたはデータを格納し,プロセッサ(図示省略)からのアクセスが発生した時に2つの領域に対するヒット率をとった場合,図2のA.に示すように,256Bでほぼ飽和し,さらにそのヒット検出の大部分が第1の電源領域(PD1)で検出された場合,256B以上のキャッシュ領域である第2の電源領域(PD2)に対してプロセッサからアクセスする可能性は極めて小さいことは明らかである。このように領域間でのヒット率の差が大きい場合は,図2のB.に示すように高いヒット率の第1の電源領域(PD1)だけ動作させ(電源をオンにし),低いヒット率の第2の電源領域(PD2)への電源をオフにしても問題がないことは明らかである。この原理に基づいて図1に示すような構成が得られる。
図1の説明に戻ると,プロセッサ2からキャッシュメモリ1へアドレスを含むアクセス(読出し又は書込み)が発生すると,キャッシュメモリ1の第1と第2の分割メモリ10a,10bにアドレスを含むアクセス信号が入力されアドレスデコードが実行される。この結果,アクセスが成功(ヒット)すると,ヒットした方のキャッシュヒット計数部12aまたは12bにヒット出力が入力して計数が行われる。ヒットしない場合は,主記憶3にアクセスすることになる。
キャッシュヒット計数部12aと12bからの計数値は,電源スイッチ制御部13へ入力されると,それぞれ単位時間に対するヒット率としてみなされ,両ヒット率の差が予め設定された閾値を越えると,低いヒット率である分割メモリ10aまたは10bへの電力供給を行う電源スイッチ14aまたは14bをオフに切替える。
図3は複数に分割したキャッシュメモリを構成する一つの分割メモリの実施例の構成を示す。図中,10aは第1の分割メモリ,11aは第1の電源領域(PD1),100はエントリ(Entry) アドレスデコーダ,101はタグ(Tag)RAM,102はキャッシュヒットを判別するタグアドレス比較器,103はワードデータセレクタ,15はプロセッサから供給されるアドレスを保持するアドレスレジスタである。
図3に示すキャッシュメモリは,ダイレクトマップ方式のキャッシュ構造を採用したもので,プロセッサからのアドレスがアドレスレジスタ15に設定されると,その上位に設定されたタグ(Tag で表すアドレスの上位ビット)と呼ばれる大項目のアドレスがタグアドレス比較器102の一方に入力され,アドレスレジスタ15の中のエントリ(Entry)と呼ばれる中項目のアドレスが第1の分割メモリ10aのエントリアドレスデコーダ100でデコードされ,デコーダにより発生したアドレスがタグRAM101に供給され,タグRAM(またはタグアレイ)101からプログラムタグが読出される。タグRAM101から読出されたプログラムタグがタグアドレス比較器102の他方に入力され,アドレスレジスタ15のタグと比較され,一致するとキャッシュヒット情報としてヒットを表す出力を発生して,キャッシュヒット計数部(図1の12a)に供給される。
また,第1の電源領域11aからエントリのアドレスにより読出されるラインデータは,この例ではデータ2A〜データ2Dの4ワードであり,ワードデータセレクタ103に並列に出力される。この時,アドレスレジスタ15の中のワードアドレス(wで表す)がワードデータセレクタ103に供給され,一つのワードデータが選択されて出力されるが,そのワードデータはヒットの出力が発生した時のみ有効なデータとしてプロセッサに出力される。
図4はキャッシュヒット計数部の実施例の構成を示す。図中,12はキャッシュヒット計数部(図1の12a,12b),120−1〜120−nは順次接続されて,先頭に入力されたビットをシフト形式で保持し終端から廃棄される複数のフリップフロップ,121は計数部である。キャッシュヒット計数部12はキャッシュメモリを分割した第1と第2の電源領域(図1の11a,11b)にそれぞれ対応するように設けられ,各電源領域からのヒット結果として,ヒットであれば“1”が入力され,ミスヒットであれば“0”が入力される。該ヒット結果は,先頭のフリップフロップ120−1に設定され,プロセッサからのキャッシュメモリへのアクセス毎に入力される。また,ヒット結果が先頭のフリップフロップ120−1に設定される毎に,それ以前に各フリップフロップに保持された状態がそれぞれ順番に次段のフリップフロップにシフトされる。
これにより,所定時間内の最新のキャッシュヒット情報がフリップフロップ120−1〜120−nに記憶される。このフリップフロップ120−1〜120−nに記憶されたキャッシュヒット情報を計数部121で計数し,単位時間当たりの総ヒット数,すなわちヒット率が得られる。なお,このキャッシュヒット計数部12は,キャッシュメモリの電源領域(PD)の一つに対して電源がオフに切替えられた後も,PDに対するアクセスがヒットしたか否かを検出する回路としての動作を継続している。
キャッシュヒット数の計数において,予め指定したフリップフロップ出力を指定し,例えば,1つ置きのフリップフロップの出力を指定して(間引いて)計数しても良い。これにより計数に要する演算量を減らすことができる。
図5は電源スイッチ制御部(図1の13)の第1の実施例の構成である。図中,13は電源スイッチ制御部,130はヒット率の高低を識別して出力するソート部,131は判定部,132は判定部131の判定出力に従って電源スイッチのオン,オフの制御を行うと共に電源オフとなる対象となるキャッシュメモリがデータキャッシュの場合に,その内容を主記憶(図1の3)に書き戻す制御を行う制御部である。
電源スイッチ制御部13に複数(図5の例では2つ)のキャッシュメモリの単位時間当たりのヒット率がキャッシュヒット計数部(図1の12a,12b及び図4参照)から入力すると,ソート部130で数値を識別して高いヒット率(Hmaxとする)と低いヒット率(Hminとする)及びその電源領域番号を対応する出力端子に出力する。判定部131は高いヒット率(max hit 率:Hmax)−低いヒット率(minimum hit 率:Hmin)の演算をし,その演算結果が予め設定された閾値を越えていると判定すると,低いヒット率である電源領域番号(PDmin)を含む判定結果を制御部132に出力する。制御部132は判定部131の判定結果を受け取ると,受け取った番号が指し示す電源領域の電源スイッチ(図1の14aまたは14b)をオフにする制御信号を発生する。なお,電源をオフにする対象となる電源領域がデータキャッシュ(書換え可能なデータを保持するキャッシュメモリ)であることを識別すると,その電源領域の電源をオフにする前に,主記憶(図1の3)に対して,当該電源領域のデータを書き戻す処理を行う。
判定部131の判定は,キャッシュメモリの一つの電源領域への電源をオフにした後も,引き続いて実行され,上記の判定部131における電源オフのための条件が成立しないと判定されると,その判定出力を制御部132に出力する。これにより制御部132は一旦電源オフにされた電源領域への電源を再びオンに復帰させる制御信号を電源スイッチに出力して,その電源領域をキャッシュメモリシステムに再び組み込む。
図6は電源スイッチ制御部の第2の実施例の構成である。図中,130はソート部,133は上記実施例1の判定部131とは異なる機能を備える判定部,134は上記実施例1の制御部132とは異なる機能を備えた制御部である。判定部133は上記実施例1(図5)のソート部130と同一機能のソート部を前段に備えており,該ソート部の結果を判定部133が受け取ると,高いヒット率(Hmax)−低いヒット率(Hmin)が予め設定された閾値を越えているかという上記実施例1の判定部131と同じ条件(これを条件1という)の成立と,条件1が一定時間以上継続するという条件(これを条件2という)の成立を観測し,条件2の判定結果を制御部134に出力する。制御部134は判定部133からの判定出力(ヒット率が低い電源領域番号を含む)を受け取ると,低いヒット率の電源領域番号を持つ電源領域の電源スイッチをオフに切替える。
この構成により,キャッシュメモリの中の一つの電源領域のヒット率が一時的に低下してその電源をオフに切替えたり,オフに切替えた後短時間でヒット率が回復して電源をオンに切替えたりするという,オン,オフの切替えを繰り返すことによるシステム不安定化の防止が可能となる。また,一旦,一つの電源領域への電源をオフに切替えた後,その後オフになった電源領域のヒット率が回復して,条件1が成立しない状態になった時において,その状態が一定時間継続した場合は,その電源領域への電源をオンに切替えることになる。
図7は電源スイッチ制御部の第3の実施例の構成である。図中,130〜132は上記の実施例1(図5)の同一符号の各部と同じであり説明を省略する。135は電源スイッチ強制設定部であり,制御部132からの制御を無効化して,プロセッサ(図1の2)からの制御により電源スイッチの状態が強制的に設定される。
電源スイッチ強制設定部135による電源スイッチが強制設定されるのは,上記図1に示すようにキャッシュメモリが第1の分割メモリ10aと第2の分割メモリ10bの2つに分割されている場合において,第1の分割メモリ10aだけを使用することが予め分かっているような時(例えば,プログラムのアクセス容量が決まっている時)であり,第2の分割メモリ10bへの電源を強制的にオフにするようプロセッサから設定することができる。また,第1と第2の分割メモリ10aと10bの電源のオン,オフの切替えをさせないようにしたい場合には,強制的に電源をオンに切替えるよう設定することができる。なお,電源スイッチ強制設定部135による強制設定はプロセッサからの制御により無効化でき,その場合は制御部132の制御による電源スイッチの制御が行われる。
図8はデータ入れ替えによるキャッシュメモリの低電力化のための構成を示す。図8のA.は時刻tにおける状態,B.は時刻t+1の状態を表し,B.にはキャッシュメモリ1の構成だけ示す。図中,1はキャッシュメモリ,10a,10bはそれぞれキャッシュメモリを分割した第1の分割メモリ,第2の分割メモリ,11a,11bは分割メモリ10a,10b内のメモリ本体である第1の電源領域(PD1で表す),第2の電源領域(PD2で表す),16−1,16−2はキャッシュメモリの第1の電源領域(PD1)と第2の電源領域(PD2)のそれぞれの各エントリライン(各エントリアドレスに格納された複数ワードからなるデータで構成)のデータに対応したヒット履歴の格納部であり,この例では各エントリアドレス(各エントリライン)に対応して1ビットで構成され,キャッシュメモリに格納した後にヒットが1度でもあると“1”にセットされ,ヒットが無いと“0”を維持する。17は履歴判別部,18は履歴判別部17の判別結果によりエントリラインのデータを第1の電源領域と第2の電源領域の間で入れ替えを行うエントリライン入れ替え部,2はプロセッサ,3は主記憶である。なお,図8のA.とB.のキャッシュメモリ1には図1の構成に示すキャッシュヒット計数部12a,12b,電源スイッチ制御部13,電源スイッチ14a,14bも備えているが図示省略されている。
時刻tにおいて,主記憶3からキャッシュメモリ1にデータが格納され,第1の分割メモリ10aの電源領域(PD1)11aにはエントリライン0,1,2,・・にData0(1hit:ヒット有を表す),Data1(0hit:ヒット無しを表す),・・・が格納され,ヒット履歴格納部16−1に各エントリラインに対応したヒットの有無に対応したビット情報が格納されている。同様に,第2の分割メモリ10bの電源領域(PD2)11bにはエントリライン0,1,・・にData256(1hit),Data257(0hit),・・・が格納され,ヒット履歴格納部16−2に各エントリラインに対応したヒット履歴を表すビット情報が格納されている。履歴判別部17は2つの分割メモリ10a,10bのヒット履歴格納部16−1,16−2を履歴判別部17で判別し,第1の電源領域11aにヒット履歴の有るエントリラインのデータを格納し,第2の電源領域11bにヒット履歴の無いエントリラインのデータを格納するよう,データの入れ替え制御をエントリライン入れ替え部18で実行する。
このエントリライン入れ替え部18の動作により,時刻t+1においては図8のB.に示すように第1の電源領域11aと第2の電源領域11bのエントリラインのデータが入れ替えられる。すなわち,第1の分割メモリ10aのエントリライン0,1,・・・にはヒット履歴有りを表す“1”のデータData0,Data256,・・・が順次格納され,第2の分割メモリ10bのエントリライン0,1,・・・にはヒット履歴無しを表す“0”のData1,Data257,・・・が順次格納された状態になる。
この図8の構成に依拠し,ヒット履歴のあるエントリラインのデータを第1の電源領域11aに,ヒット履歴のないエントリラインのデータを第2の電源領域11bに入れ替えることにより,入れ替え後には第2の電源領域11bのヒット率が大きく低下させることができるため,第2の電源領域11bへ電源を供給する電源スイッチをオフに切替え易くなり,キャッシュメモリの低電力化を積極的に実現することが可能となる。
なお,図8ではヒット履歴格納部16−1,16−2には各エントリラインに対応して1ビットの格納部を備えているが,複数ビットにより所定時間内のヒット数を計数するように構成することができ,履歴判別部17でヒット履歴格納部16−1,16−2の各計数値を用いて履歴判別部17で判別し,エントリライン入れ替え部18で入れ替えを行うようにする。
(付記1) プロセッサと主記憶の間に設けたキャッシュメモリシステムにおいて,キャッシュメモリを複数の分割メモリに分割し,各分割メモリのそれぞれに個別に電源が供給されるメモリ本体である電源領域で構成し,前記分割メモリに対するプロセッサからのアクセス時のキャッシュヒットの結果が入力され,ヒット数を計数してヒット率を発生するキャッシュヒット計数部と,各電源領域への電源供給を制御する電源スイッチ制御部とを設け,前記電源スイッチ制御部は,前記各キャッシュヒット計数部からのヒット率を入力して,大きいヒット率を発生する分割メモリと小さいヒット率を発生する分割メモリを識別する手段と,前記大きいヒット率と小さいヒット率の差が予め設定された閾値を越えたという条件を満たすことを検出する判定手段と,前記判定手段による条件を満たしたことを判定する出力が発生するとヒット率の低い電源領域への電源供給をオフに切替える制御手段を備えることを特徴とするキャッシュメモリシステム。
(付記2) 付記1において,前記電源スイッチ制御部は,前記キャッシュヒット率の差が予め設定された閾値を越えた状態が予め設定した時間継続するという条件を満たすことを検出する判定手段と,前記判定手段により条件を満たしたことを判定する出力が発生すると前記制御手段は,前記ヒット率の低い電源領域への電源供給をオフに切替えることを特徴とするキャッシュメモリシステム。
(付記3) 付記1または2の何れかにおいて,前記判定手段により条件を満たしたことが検出されて,前記制御手段によりヒット率の低い電源領域への電源供給をオフに切替えた後,前記判定手段が前記条件を満たさないことを検出すると,前記制御手段はオフに切替えられた電源領域への電源供給をオンに切替えることを特徴とするキャッシュメモリシステム。
(付記4) 付記1または2の何れかにおいて,前記電源スイッチ制御部は,プロセッサにより電源スイッチの状態を強制的にオンまたはオフに切替える制御信号を発生する状態に設定される電源スイッチ強制設定部を備えることを特徴とするキャッシュメモリシステム。
(付記5) 付記1乃至3の何れかにおいて,前記キャッシュヒット計数部は,複数の縦続接続されたフリップフロップと,各フリップフロップの出力が並列に入力された計数部とで構成し,先頭の前記フリップフロップにキャッシュヒットの出力を入力し,順次後段にシフトされ,前記計数部は並列に入力する各フリップフロップから出力されたヒット状態の個数を計数することを特徴とするキャッシュメモリシステム。
(付記6) 付記5において,前記キャッシュヒット計数部の計数部は,前記縦続接続されたフリップフロップの出力の中から所定個数毎の出力を選択してヒット状態を計数することを特徴とするキャッシュメモリシステム。
(付記7) 付記1乃至5の何れかにおいて,前記分割メモリを構成する各電源領域の各エントリアドレスにデータを格納すると共に各エントリアドレスに対応したヒット履歴の格納部を備え,前記各ヒット履歴格納部は,プロセッサからの対応するエントリアドレスへのアクセス時のヒットの有・無の履歴が格納され,前記各電源領域の各エントリラインの各ヒット履歴格納部の内容を判別する手段と,ヒット履歴の有・無に対応してエントリラインのデータを格納すべき電源領域を決めて,エントリラインのデータをヒット履歴に応じて入れ替える制御を行う手段を備えることを特徴とするキャッシュメモリシステム。
(付記8) 付記1乃至6の何れかにおいて,前記電源スイッチ制御部は,前記制御手段により電源供給をオフに切替える対象となる電源領域がデータを保持していることを検出すると,電源供給をオフにする前に当該電源領域のデータを主記憶に対して書き戻すことを特徴とするキャッシュメモリシステム。
1 キャッシュメモリ
10a 第1の分割メモリ
10b 第2の分割メモリ
11a 第1の電源領域(PD1)
11b 第2の電源領域(PD2)
12a,12b キャッシュヒット計数部
13 電源スイッチ制御部
14a 第1の電源スイッチ
14b 第2の電源スイッチ
2 プロセッサ
3 主記憶
10a 第1の分割メモリ
10b 第2の分割メモリ
11a 第1の電源領域(PD1)
11b 第2の電源領域(PD2)
12a,12b キャッシュヒット計数部
13 電源スイッチ制御部
14a 第1の電源スイッチ
14b 第2の電源スイッチ
2 プロセッサ
3 主記憶
Claims (5)
- プロセッサと主記憶の間に設けたキャッシュメモリシステムにおいて,
キャッシュメモリを複数の分割メモリに分割し,各分割メモリのそれぞれに個別に電源が供給されるメモリ本体である電源領域で構成し,
前記分割メモリに対するプロセッサからのアクセス時のキャッシュヒットの結果が入力され,ヒット数を計数してヒット率を発生するキャッシュヒット計数部と,各電源領域への電源供給を制御する電源スイッチ制御部とを設け,
前記電源スイッチ制御部は,前記各キャッシュヒット計数部からのヒット率を入力して,大きいヒット率を発生する分割メモリと小さいヒット率を発生する分割メモリを識別する手段と,前記大きいヒット率と小さいヒット率の差が予め設定された閾値を越えたという条件を満たすことを検出する判定手段と,前記判定手段による条件を満たしたことを判定する出力が発生するとヒット率の低い電源領域への電源供給をオフに切替える制御手段を備えることを特徴とするキャッシュメモリシステム。 - 請求項1において,
前記電源スイッチ制御部は,前記キャッシュヒット率の差が予め設定された閾値を越えた状態が予め設定した時間継続するという条件を満たすことを検出する判定手段と,前記判定手段により条件を満たしたことを判定する出力が発生すると前記制御手段は,前記ヒット率の低い電源領域への電源供給をオフに切替えることを特徴とするキャッシュメモリシステム。 - 請求項1または2の何れかにおいて,
前記電源スイッチ制御部は,プロセッサにより電源スイッチの状態を強制的にオンまたはオフに切替える制御信号を発生する状態に設定される電源スイッチ強制設定部を備えることを特徴とするキャッシュメモリシステム。 - 請求項1乃至3の何れかにおいて,
前記キャッシュヒット計数部は,複数の縦続接続されたフリップフロップと,各フリップフロップの出力が並列に入力された計数部とで構成し,
前記フリップフロップの先頭にキャッシュヒットの出力を入力し,順次後段にシフトされ,前記計数部は並列に入力する各フリップフロップから出力されたヒット状態の個数を計数することを特徴とするキャッシュメモリシステム。 - 請求項1乃至4の何れかにおいて,
前記分割メモリを構成する各電源領域の各エントリアドレスにデータを格納すると共に各エントリアドレスに対応したヒット履歴の格納部を備え,
前記各ヒット履歴格納部は,プロセッサからの対応するエントリアドレスへのアクセス時のヒットの有・無の履歴が格納され,
前記各電源領域の各エントリラインの各ヒット履歴格納部の内容を判別する手段と,ヒット履歴の有・無に対応してエントリラインのデータを格納すべき電源領域を決めて,エントリラインのデータをヒット履歴に応じて入れ替える制御を行う手段を備えることを特徴とするキャッシュメモリシステム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008136280A JP5167952B2 (ja) | 2008-05-26 | 2008-05-26 | キャッシュメモリシステム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008136280A JP5167952B2 (ja) | 2008-05-26 | 2008-05-26 | キャッシュメモリシステム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009282880A JP2009282880A (ja) | 2009-12-03 |
JP5167952B2 true JP5167952B2 (ja) | 2013-03-21 |
Family
ID=41453247
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008136280A Expired - Fee Related JP5167952B2 (ja) | 2008-05-26 | 2008-05-26 | キャッシュメモリシステム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5167952B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10599210B2 (en) | 2017-06-29 | 2020-03-24 | Samsung Electronics Co., Ltd. | Processor, computing device including the same and method of selecting low power mode of the same |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011112523A2 (en) | 2010-03-08 | 2011-09-15 | Hewlett-Packard Development Company, L.P. | Data storage apparatus and methods |
JP5484281B2 (ja) * | 2010-09-21 | 2014-05-07 | 三菱電機株式会社 | 情報処理システム |
JP5488709B2 (ja) | 2010-10-14 | 2014-05-14 | 富士通株式会社 | ストレージ制御装置における基準時間設定方法 |
JP5668858B2 (ja) * | 2011-08-23 | 2015-02-12 | 富士通株式会社 | 情報処理装置及びスケジューリング方法 |
JP5458132B2 (ja) * | 2012-03-13 | 2014-04-02 | 株式会社東芝 | キャッシュ装置 |
KR101423867B1 (ko) * | 2013-01-30 | 2014-07-29 | 재단법인 다차원 스마트 아이티 융합시스템 연구단 | L2 이상의 레벨 캐쉬 캐시를 관리하는 장치 및 방법 |
JP6116941B2 (ja) | 2013-02-28 | 2017-04-19 | 株式会社東芝 | 情報処理装置 |
JP6158154B2 (ja) | 2014-09-19 | 2017-07-05 | 株式会社東芝 | プロセッサシステム、メモリ制御回路およびメモリシステム |
GB2547939B (en) | 2016-03-04 | 2020-04-22 | Advanced Risc Mach Ltd | Cache power management |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08137749A (ja) * | 1994-11-08 | 1996-05-31 | Fujitsu Ltd | キャッシュメモリ装置 |
JPH0950401A (ja) * | 1995-08-09 | 1997-02-18 | Toshiba Corp | キャッシュメモリ及びそれを備えた情報処理装置 |
JP4057699B2 (ja) * | 1998-05-18 | 2008-03-05 | 沖電気工業株式会社 | 記憶システム |
JP3503480B2 (ja) * | 1998-07-24 | 2004-03-08 | 日本電気株式会社 | キャッシュメモリ制御方法及び装置 |
JP3351369B2 (ja) * | 1998-12-16 | 2002-11-25 | 日本電気株式会社 | キャッシュメモリ |
JP4364878B2 (ja) * | 2005-03-31 | 2009-11-18 | 株式会社半導体エネルギー研究所 | 演算処理装置 |
-
2008
- 2008-05-26 JP JP2008136280A patent/JP5167952B2/ja not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10599210B2 (en) | 2017-06-29 | 2020-03-24 | Samsung Electronics Co., Ltd. | Processor, computing device including the same and method of selecting low power mode of the same |
Also Published As
Publication number | Publication date |
---|---|
JP2009282880A (ja) | 2009-12-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5167952B2 (ja) | キャッシュメモリシステム | |
US11181964B2 (en) | Management of power state transitions of a memory sub-system | |
US10204039B2 (en) | Host controlled hybrid storage device | |
JP5681778B2 (ja) | プロセッサ、システムおよび方法 | |
EP3872641A2 (en) | Storage device and method of operating the storage device | |
JP3806131B2 (ja) | アドレス変換バッファの電力制御方法及びその装置 | |
US20110047316A1 (en) | Solid state memory device power optimization | |
US6633951B2 (en) | Method for reducing power consumption through dynamic memory storage inversion | |
CN101458668A (zh) | 缓存数据块的处理方法和硬盘 | |
TW201741813A (zh) | 記憶裝置之深度省電模式退出控制 | |
US10489237B2 (en) | Flushing data content in response to a power loss event to a processor | |
US11500555B2 (en) | Volatile memory to non-volatile memory interface for power management | |
US11619984B2 (en) | Efficient power management modes for multiple memory devices | |
JP4310544B2 (ja) | 低電力・高ライトレイテンシモードおよび高電力・低ライトレイテンシモードならびに/あるいは独立して選択可能なライトレイテンシを備える記憶装置および方法 | |
US8484418B2 (en) | Methods and apparatuses for idle-prioritized memory ranks | |
US9568987B2 (en) | Memory system, method of controlling memory system having volatile memory and nonvolatile memory, and controller | |
JP3895760B2 (ja) | アドレス変換バッファの電力制御方法及びその装置 | |
CN110727470B (zh) | 一种混合式非失性存储装置 | |
US10204054B2 (en) | Media cache cleaning | |
CN111857596B (zh) | Ssd低功耗实现方法、装置、计算机设备及存储介质 | |
US11966613B2 (en) | Selective device power state recovery method | |
WO2023039899A1 (zh) | 一种存储器件中数据存储的方法和一种存储器件 | |
KR101423867B1 (ko) | L2 이상의 레벨 캐쉬 캐시를 관리하는 장치 및 방법 | |
US20040024972A1 (en) | Predicting useless accesses |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110217 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20121119 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20121127 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20121210 |
|
LAPS | Cancellation because of no payment of annual fees |