複数のウェイを有するデータキャッシュメモリと、前記データキャッシュメモリと結合され、ロード命令または保存命令に応じて、前記データキャッシュメモリの前記複数のウェイの一部のみへのアクセスを促す論理回路とを備える、装置。前記論理回路が前記データキャッシュメモリの前記複数のウェイの一部のみへのアクセスを促すとは、前記データキャッシュメモリの仮想アドレスのアドレスビットに少なくとも部分的に基づいて、前記データキャッシュメモリの前記複数のウェイの一部のみへのアクセスを促すことである、請求項1に記載の装置。前記データキャッシュメモリは、データアレイを有し、前記論理回路はさらに、前記データアレイの連続したキャッシュメモリヒットの数がしきい値を超えるかどうか決定する、請求項1に記載の装置。前記データキャッシュメモリは、前記複数のウェイを含むタグアレイを有し、前記論理回路はさらに、前記データアレイの前記連続したキャッシュメモリヒットの数が前記しきい値を超えたとの決定に応じて、前記タグアレイの前記複数のウェイの一部のみへのアクセスを促す、請求項3に記載の装置。1以上のフィルバッファをさらに備え、前記論理回路はさらに、前記データアレイの前記連続したキャッシュメモリヒットの数が前記しきい値を超えたとの決定に応じて、前記1以上のフィルバッファと関連付けられた論理回路をディスエーブルする、請求項3に記載の装置。前記論理回路はさらに、前記データアレイのキャッシュメモリミスがあるかどうかを決定し、前記データアレイのキャッシュメモリミスがあるとの決定に応じて前記1以上のフィルバッファに関連付けられた前記論理回路をイネーブルする、請求項5に記載の装置。前記論理回路はさらに、前記ロード命令または前記保存命令に関連付けられた仮想アドレスが、他の仮想アドレスにマッピングされた物理アドレスのインデックスとなるかどうかを決定し、前記ロード命令または前記保存命令に関連付けられた前記仮想アドレスが、前記他の仮想アドレスにマッピングされた前記物理アドレスのインデックスとなるとの決定に応じて、前記データキャッシュメモリの前記複数のウェイの全てのウェイへのアクセスを促す、請求項4に記載の装置。レベル1L1ノンブロッキングキャッシュメモリと、前記L1ノンブロッキングキャッシュメモリに結合された論理回路とを備え、前記論理回路が、前記L1ノンブロッキングキャッシュメモリのキャッシュメモリヒットの連続したクロックの数がしきい値を超えるかどうかを決定し、前記L1ノンブロッキングキャッシュメモリの前記キャッシュメモリヒットの連続したクロックの数が前記しきい値を超えたとの決定に応じて、複数のフィルバッファへのアクセスを無効にする、装置。前記論理回路はさらに、前記L1ノンブロッキングキャッシュメモリのキャッシュメモリミスがあるかどうかを決定し、前記L1ノンブロッキングキャッシュメモリのキャッシュメモリミスがあるとの決定に応じて前記複数のフィルバッファへの前記アクセスを有効にする、請求項8に記載の装置。前記L1ノンブロッキングキャッシュメモリは、Nウェイデータアレイを有するNウェイセットアソシエイティブキャッシュメモリであり、前記Nウェイデータアレイが、2以上のグループに分割され、前記論理回路はさらに、前記Nウェイセットアソシエイティブキャッシュメモリにアクセスすることを要求するロードリクエストまたは保存リクエストを受信し、前記受信したロードリクエストまたは保存リクエストに応じて前記Nウェイデータアレイの前記2以上のグループのうち1グループのみへのアクセスを可能とする、請求項8に記載の装置。前記論理回路が前記Nウェイデータアレイの前記2以上のグループのうち1グループのみへのアクセスを可能とするとは、前記L1ノンブロッキングキャッシュメモリの仮想アドレスのアドレスビットに少なくとも部分的に基づいて前記Nウェイデータアレイの前記2以上のグループのうち1グループのみへのアクセスを可能とすることである、請求項10に記載の装置。前記Nウェイデータアレイの各グループは、イネーブル信号を有し、前記論理回路が前記Nウェイデータアレイの前記2以上のグループのうち1グループのみへのアクセスを可能とするとは、前記Nウェイデータアレイの各グループの各イネーブル信号に少なくとも部分的に基づいて前記Nウェイデータアレイの前記2以上のグループのうち1グループのみへのアクセスを可能とすることである、請求項10に記載の装置。前記NウェイセットアソシエイティブキャッシュメモリはさらにNウェイタグアレイを有し、前記Nウェイタグアレイが前記2以上のグループに分割され、前記論理回路はさらに、前記L1ノンブロッキングキャッシュメモリの前記キャッシュメモリヒットの連続したクロックの数が前記しきい値を超えたとの決定に応じて、前記受信されたロードリクエストおよび保存リクエストに応じて、前記Nウェイタグアレイの前記2以上のグループのうち1グループのみへのアクセスを可能とする、請求項10に記載の装置。アウトオブオーダープロセッサである、請求項8に記載の装置。複数のウェイを有するセットアソシエイティブキャッシュメモリにアクセスすることを要求するロード命令または保存命令を受信する段階と、前記受信されたロード命令または保存命令に応じて前記セットアソシエイティブキャッシュメモリの前記複数のウェイの一部のみへのアクセスを促す段階とを備える、方法。前記セットアソシエイティブキャッシュメモリのキャッシュメモリヒットの連続したクロックの数がしきい値を超えるかどうかを決定する段階をさらに備える、請求項15に記載の方法。前記セットアソシエイティブキャッシュメモリの前記キャッシュメモリヒットの連続したクロックの数が前記しきい値を超えたとの決定に応じて、複数のフィルバッファへのアクセスを無効にする段階をさらに備える、請求項16に記載の方法。前記セットアソシエイティブキャッシュメモリのキャッシュメモリミスがあるかどうかを決定する段階と、前記セットアソシエイティブキャッシュメモリのキャッシュメモリミスがあるとの決定に応じて、前記複数のフィルバッファへの前記アクセスを有効にする段階をさらに備える、請求項17に記載の方法。前記セットアソシエイティブキャッシュメモリは、前記複数のウェイを含むデータアレイを有し、前記データアレイは、2以上のグループに分割され、前記セットアソシエイティブキャッシュメモリの前記複数のウェイの一部のみへのアクセスを促す段階は、前記データアレイの前記2以上のグループのうち1グループのみへのアクセスを可能とする段階を有する、請求項15に記載の方法。前記セットアソシエイティブキャッシュメモリの前記複数のウェイの一部のみへのアクセスを促す段階は、前記セットアソシエイティブキャッシュメモリの仮想アドレスのアドレスビットに少なくとも部分的に基づいて前記セットアソシエイティブキャッシュメモリの前記複数のウェイの一部のみへのアクセスを促す段階を有する、請求項15に記載の方法。レベル1キャッシュメモリは、プロセッサによって頻繁にアクセスされ、またそのサイズとセットアソシエイティブ構成は、プロセッサの性能に影響を及ぼす。例えば、レベル1キャッシュメモリは、32キロバイトのサイズおよび8ウェイセットアソシエイティブ構成を有し得、1キャッシュメモリラインあたり64バイトのデータを記憶できる。ロードリクエストに対応するべくレベル1キャッシュメモリにアクセスするには、キャッシュメモリのセットの8ウェイ全てを読み取り、必要なデータを得るウェイを決定しなければならない。添付の図面を参照し、本明細書に説明される本願発明の実施形態を例示するが、本願発明はこれら実施形態に限定されるものではない。説明を簡潔および明確にするべく、図中に示す要素は、縮尺通りに描かれているとは限らない。例えば、明確に示すべく、いくつかの要素の寸法は他の要素と比し、大きく描かれていることもある。さらに、適切であると考えられる場合には、対応する、または類似する要素を示す際に、異なる図面間で、同じ参照符号を繰り返して用いる。本明細書で本願発明の一実施形態または実施形態について言及するが、その実施形態に関連して説明される特定の特徴、構造または特色が、本願発明の少なくとも一実施形態に含まれることを意味する。よって、本明細書のいくつかの箇所において一実施形態においてと言うことがあるが、それらすべてが同一の実施形態を指すものとは限らない。本願発明の実施形態は、メモリデバイスの消費電力を減らす方法およびシステムを提供する。本願発明の一実施形態では、メモリデバイスは、Nウェイセットアソシエイティブレベル1L1キャッシュメモリである。ここで、Nは1以上の整数である。論理回路がデータキャッシュメモリと結合され、ロード命令または保存命令に応じて、NウェイセットアソシエイティブL1キャッシュメモリのNウェイの一部のみへのアクセスを促す。本願発明の一実施形態では、ロードリクエストまたは保存リクエストのそれぞれに応じて、NウェイセットアソシエイティブL1キャッシュメモリにアクセスするウェイの数を減らすことにより、NウェイセットアソシエイティブL1キャッシュメモリの必要電力を減らす。例えば、本願発明の一実施形態では、メモリデバイスは、8ウェイセットアソシエイティブL1キャッシュメモリであり、4つのアクセスウェイを有するアレイをそれぞれ含む、2つのグループアレイグループへと分割される。ロード命令または保存命令が受信されると、2つのアレイグループのうち1グループのみ、つまり8ウェイセットアソシエイティブL1キャッシュメモリの8ウェイのうちの4ウェイのみがアクセスされる。本願発明の一実施形態では、2つのアレイグループのいずれを選択するかは、8ウェイセットアソシエイティブL1キャッシュメモリの仮想アドレスのアドレスビットに基づいて決定される。本願発明の一実施形態では、NウェイセットアソシエイティブL1キャッシュメモリは、プロセッサ上でアウトオブオーダー命令を実行することを可能とする1以上のフィルバッファを有する。つまり、NウェイセットアソシエイティブL1キャッシュメモリは、ノンブロッキングキャッシュメモリである。本願発明の一実施形態では、キャッシュメモリへのアクセスにNウェイセットアソシエイティブL1キャッシュメモリのデータアレイのみが必要であると予測される場合には、フィルバッファへのアクセスは、無効にされるか、ディスエーブルされる。本願発明の一実施形態では、フィルバッファに関連付けられた論理回路が無効にされるので、NウェイセットアソシエイティブL1キャッシュメモリの消費電力が減る。メモリデバイスは、キャッシュメモリ、キャッシュデータアレイ、キャッシュタグアレイなどを含むが、これらに限定されない。図1は、本願発明の一実施形態に係る処理ユニット105のブロック図100を示す。本願発明の一実施形態では、処理ユニット105は、命令フェッチ/発行ユニット110、バスコントローラ120、実行ユニット130およびL1データキャッシュメモリ140を有する。処理ユニット105のバスコントローラ120は、システムインタフェース150と結合され、主記憶装置、レベル2キャッシュメモリ、チップセットなどを含むがこれらに限定されない他のコンポーネントに接続される。命令フェッチ/発行ユニット110は、システムインタフェース150を介しバスコントローラ120を通じて、または他の任意の外部バスを通じて、外部メモリまたは主記憶装置から命令をフェッチする。フェッチされた命令は、命令キャッシュメモリ115に保存される。本願発明の一実施形態では、バスコントローラ120は、処理ユニット105内でのキャッシュのコヒーレンシー転送を管理する。実行ユニット130は、命令フェッチ/発行ユニット110がフェッチした命令を受信および実行し、加算、減算、論理積、整数乗算、メモリ動作などを含むがこれらに限定されない算術および論理演算を行う。本願発明の一実施形態では、実行ユニット130は、処理ユニット105内でのロード動作および保存動作を含むがこれらに限定されないメモリアクセス動作を実行する、メモリ実行ユニット135を有する。メモリ実行ユニット135は、スケジューラからロード命令および保存命令を受信し、ロード動作および保存動作を実行し、メモリアクセス動作を完了する。本願発明の一実施形態では、メモリ実行ユニット135は、L1データキャッシュメモリ140に結合される。L1データキャッシュメモリ140は、L1データアレイ142、L1タグアレイ144およびフィルバッファ146を有する。L1データキャッシュメモリ140は、トランスレーションルックアサイドバッファTLBなどの他のコンポーネントを有する。これら他のコンポーネントは、説明を明確にするべく図1には示さない。本願発明の一実施形態では、L1データキャッシュメモリ140は、フィルバッファ146のアクセスを制御し、メモリアクセス動作をL1データアレイ142およびL1タグアレイ144のキャッシュウェイの一部のみに制限する論理回路を有する。図2は、本願発明の一実施形態に係るメモリ実行ユニット135およびL1データキャッシュメモリ140のブロック図200を示す。説明を明確にすべく、図1を参照し、図2について説明する。本願発明の一実施形態では、L1データキャッシュメモリ140は、8ウェイセットアソシエイティブL1キャッシュメモリである。本願発明の一実施形態では、L1データキャッシュメモリ140のL1データアレイ142およびL1タグアレイ144は、2つの部分またはグループへと分けられる。L1データアレイ142は、4ウェイL1データアレイ[3‐0]220と4ウェイL1データアレイ[7‐4]225とに分割される。L1ウェイ3-0読取イネーブル信号202およびL1ウェイ7-4読取イネーブル信号204は、それぞれ、4ウェイL1データアレイ[3‐0]220および4ウェイL1データアレイ[7‐4]225のアクセスまたは有効状態を制御する。例えば、本願発明の一実施形態では、4ウェイL1データアレイ[3‐0]220のみのアクセスが可能であるか、要求されている場合、L1ウェイ3-0読取イネーブル信号202がアサートされ、4ウェイL1データアレイ[3‐0]220をイネーブルし、L1ウェイ7-4読取イネーブル信号204をデアサートし、4ウェイL1データアレイ[7‐4]225をディスエーブルする。set_select信号206は、4ウェイL1データアレイ[3‐0]220および4ウェイL1データアレイ[7‐4]225と結合され、所望される、または求められるアクセス先のセットを選択する。例えば、本願発明の一実施形態では、L1データキャッシュメモリ140は、32キロバイト、64セットのキャッシュメモリであり、各セットは、8ウェイのキャッシュアクセスを有する。ロード命令または保存命令を行うべく、set_select信号206を用いて所望されるセットが選択され、8ウェイマルチプレクサMUX260が、読取データ262として所望されるセットのいずれかのウェイを選択する。8ウェイマルチプレクサ260の制御信号は、ウェイヒットベクトル[7‐0]270によって生成される。本願発明の一実施形態では、ウェイヒットベクトル[7‐0]270は、読取データ262として、L1データキャッシュメモリ140の8ウェイのいずれを選択するかを表す8ビットを有する。本願発明の一実施形態では、ウェイヒットベクトル[7‐0]270は、L1タグアレイ144、L1タグコンパレータ240およびANDゲートブロック250から生成される。L1タグアレイ144は、4ウェイL1タグアレイ[3‐0]230と4ウェイL1タグアレイ[7‐4]235とに分割される。set_select信号206は4ウェイL1タグアレイ[3‐0]230および4ウェイL1タグアレイ[7‐4]235に結合され、所望される、または求められるアクセス先のセットを選択する。4ウェイL1タグアレイ[3‐0]230および4ウェイL1タグアレイ[7‐4]235は、それぞれ、L1タグコンパレータ240の4ウェイL1タグコンパレータ[3‐0]242および4ウェイL1タグコンパレータ[7‐4]244に結合される。L1タグコンパレータ240は、4ウェイL1タグアレイ[3‐0]230および4ウェイL1タグアレイ[7‐4]235のうち選択されたセットのウェイのタグアドレスと、ロード命令または保存命令の物理アドレス246とを比較する。一致するアドレスが見つかった場合、L1タグコンパレータ240の各タグコンパレータは、ANDゲートブロック250に対して論理1信号を生成する。一致するアドレスが見つからなかった場合、L1タグコンパレータ240の各タグコンパレータは、ANDゲートブロック250に対して論理0信号を生成する。4ウェイL1タグコンパレータ[3‐0]242は、各ウェイ3‐0に対し信号を生成し、各信号は、ANDゲートブロック250の各ANDゲートに結合される。同様に、4ウェイL1タグコンパレータ[7‐4]244は、各ウェイ7-4に対し信号を生成し、各信号は、ANDゲートブロック250の各ANDゲートに結合される。4ウェイL1タグコンパレータ[3‐0]242に結合された各ANDゲートは、ORゲート210の出力と結合される。ORゲート210の出力は、フィルバッファブロック信号208およびL1ウェイ3-0読取イネーブル信号202によって駆動される。同様に、4ウェイL1タグコンパレータ[7‐4]244と結合された各ANDゲートは、ORゲート212の出力と結合される。ORゲート212の出力は、フィルバッファブロック信号208およびL1ウェイ7-4読取イネーブル信号204によって駆動される。フィルバッファブロック信号208は、L1タグアレイ144の制御をL1ウェイ3-0読取イネーブル信号202およびL1ウェイ7-4読取イネーブル信号204によって決定するかどうか選択する。ORゲート210、212の出力は、それぞれ、4ウェイL1タグアレイ[3‐0]230および4ウェイL1タグアレイ[7‐4]235と結合され、それらの動作をイネーブルするかディスエーブルする。例えば、本願発明の一実施形態では、フィルバッファブロック信号208がアサートされるか、論理1に設定されると、ORゲート210、212の出力がアサート論理1され、4ウェイL1タグアレイ[3‐0]230および4ウェイL1タグアレイ[7‐4]235の両方をイネーブルする。フィルバッファブロック信号208が論理1に設定されると、L1ウェイ3-0読取イネーブル信号202およびL1ウェイ7-4読取イネーブル信号204は、4ウェイL1タグアレイ[3‐0]230および4ウェイL1タグアレイ[7‐4]235の動作に影響を及ぼさない。この理由は、ORゲート210、212の出力が、フィルバッファブロック信号208によって論理1に設定されているからである。同様に、ANDゲートブロック250のANDゲートは、フィルバッファブロック信号208が論理1に設定されているとき、L1ウェイ3-0読取イネーブル信号202およびL1ウェイ7-4読取イネーブル信号204の影響を受けない。フィルバッファブロック信号208がデアサートされるか、論理0に設定されているとき、4ウェイL1タグアレイ[3‐0]230および4ウェイL1タグアレイ[7‐4]235の制御は、それぞれ、L1ウェイ3-0読取イネーブル信号202およびL1ウェイ7-4読取イネーブル信号204によって決定される。この理由は、フィルバッファブロック信号208が論理0に設定されているとき、ORゲート210、212の出力は、4ウェイL1タグアレイ[3‐0]230および4ウェイL1タグアレイ[7‐4]235の状態のみに依存するからである。例えば、本願発明の一実施形態では、ウェイ3‐0がイネーブルされ、ウェイ7‐4がディスエーブルされるとき、L1ウェイ3-0読取イネーブル信号202およびL1ウェイ7-4読取イネーブル信号204は、それぞれ、論理1および論理0に設定される。4ウェイL1データアレイ[3‐0]220は、L1ウェイ3-0読取イネーブル信号202によって有効にされる。L1ウェイ3-0読取イネーブル信号202は、ORゲート210の出力を論理1に設定し、4ウェイL1タグアレイ[3‐0]230がイネーブルされる。4ウェイL1タグコンパレータ[3‐0]242に結合されたANDゲートは、ORゲート210の出力が論理1に設定されているので、イネーブルされる。L1ウェイ7-4読取イネーブル信号204が論理0に設定されると、4ウェイL1データアレイ[7‐4]225がディスエーブルされる。L1ウェイ7-4読取イネーブル信号204およびフィルバッファブロック信号208の両方が論理0に設定されると、ORゲート212の出力は論理0に設定される。ORゲート212の出力が論理0に設定されるので、4ウェイL1タグアレイ[7‐4]235がディスエーブルされ、4ウェイL1タグコンパレータ[7‐4]244に結合されたANDゲートがディスエーブルされる。ウェイヒットベクトル[7‐0]270は、ORゲート[3‐0]280とORゲート[7‐4]282とに結合される。ORゲート[3‐0]280の4つの入力は、ウェイヒットベクトル[7‐0]270のウェイ3-0に結合される。同様に、ORゲート[7‐4]282の4つの入力は、ウェイヒットベクトル[7‐0]270のウェイ7‐4に結合される。ANDゲート290は、ORゲート[3‐0]280の出力とL1ウェイ3-0読取イネーブル信号202とに結合される。ANDゲート292は、ORゲート[7‐4]282の出力とL1ウェイ7-4読取イネーブル信号204とに結合される。ANDゲート290、292の出力の両方がORゲート294と結合され、L1キャッシュヒット/ミス信号296を生成する。L1キャッシュヒット/ミス信号296は、L1データキャッシュメモリ140のキャッシュメモリヒットまたはキャッシュメモリミスがあったかどうかを示す。本願発明の一実施形態では、L1データキャッシュメモリ140のL1データアレイ142およびL1タグアレイ144は、キャッシュアクセスのウェイを減らして消費電力を減らしつつも、処理ユニット105の性能を維持する。図2におけるL1データキャッシュメモリ140の図示は、L1データキャッシュメモリ140の構成を限定するものではない。本願発明の他の実施形態では、本願発明によって得られる効果に影響を与えることなく、データおよびタグアレイの異なる構造および構成を用いる。例えば、本願発明の他の実施形態では、各データアレイおよびタグアレイを2つ以上に分割し、別個の制御信号を生成することにより、当該データアレイまたはグループアレイのどの分割部分またはグループをロード動作または保存動作に用いるかを選択する。当業者であれば、L1データキャッシュメモリ140の異なる構成をサポートすべく論理回路をいかに修正すべきかを容易に理解されるはずなので、本明細書では説明を省略する。図3は、本願発明の一実施形態に係る、仮想アドレス310の物理アドレス330へのマッピング300を示す。本願発明の一実施形態では、仮想的な、または線形のアドレス310は、ページオフセット312および仮想ページ番号314を有する。ページオフセット312は仮想アドレス310の最初の12のアドレスビット[11:0]より構成されており、仮想アドレス310が物理アドレス330に変換されるとき、変換されない。本願発明の一実施形態では、仮想アドレス310の6アドレスビット[11:6]をセットアドレスとして用いる。6アドレスビットによって、64のセットを選択することが出来る。本願発明の一実施形態では、仮想アドレス310のアドレスビット[11:6]に基づいてset_select信号206が生成される。本願発明の一実施形態では、仮想ページ番号314を変換論理回路320によって変換し、物理ページ番号334を得る。変換論理回路320は、TLB内のルックアップテーブルを含むが、これに限定されるわけではない。本願発明の一実施形態では、仮想アドレス310のアドレスビット[12]に基づいて、L1ウェイ3-0読取イネーブル信号202およびL1ウェイ7-4読取イネーブル信号204が生成される。例えば、本願発明の一実施形態では、アドレスビット[12]がアサートされたとき、L1ウェイ3-0読取イネーブル信号202がアサートされ、かつ、L1ウェイ7-4読取イネーブル信号204がデアサートされる。アドレスビット[12]がデアサートされたとき、L1ウェイ3-0読取イネーブル信号202がデアサートされ、かつ、L1ウェイ7-4読取イネーブル信号204がアサートされる。アドレスビット[12]はキャッシュメモリのアクセスの前に設定され、L1データキャッシュメモリ140のどの4ウェイにアクセスするかを決定する。当業者であれば、L1ウェイ3-0読取イネーブル信号202およびL1ウェイ7-4読取イネーブル信号204を生成する他の方法を、本願発明によって得られる効果に影響を与えることなく用いることが可能であることを容易に理解されるはずなので、それらの他の方法の説明は本明細書では省略する。本願発明の一実施形態では、仮想アドレス310の他のビットを用いて、L1ウェイ3-0読取イネーブル信号202およびL1ウェイ7-4読取イネーブル信号204を生成する。本願発明の他の実施形態では、他のレジスタの他のビットを用いて、L1ウェイ3-0読取イネーブル信号202およびL1ウェイ7-4読取イネーブル信号204を生成する。本願発明の他の実施形態では、仮想アドレス310および物理アドレス330は、32ビット以上を有する。図4は、本願発明の一実施形態に係る、エイリアシングイベントの処理のフローチャート400を示す。仮想的にインデックスが付けられたキャッシュメモリでは、キャッシュメモリの位置を特定するビット数は、ページサイズよりも大きく、1以上のビットがエイリアスされ得る。例えば、本願発明の一実施形態では、エイリアスされたビットの値に基づいて、キャッシュメモリの2つの異なる位置で同一の物理ページが参照される。よって、L1データキャッシュメモリ140の2つの異なるキャッシュメモリラインが、同じ物理メモリの異なるバージョンのデータを保持することもあり得る。フローチャート400は、本願発明の一実施形態に係る、エイリアシングイベントの処理の方法を示す。工程410において、保存リクエストまたはロードリクエストが受信される。工程420で、L1データキャッシュメモリ140に保存リクエストまたはロードリクエストの真ヒットイベントがあるかどうか確認する。本願発明の一実施形態では、保存リクエストまたはロードリクエストのメモリロケーションが、L1データキャッシュメモリ140の選択された4ウェイのうち1ウェイにキャッシュされる場合、真ヒットイベントが発生する。例えば、本願発明の一実施形態では、処理ユニット105が仮想アドレスXで保存リクエストを受信する。メモリ実行ユニット135が仮想アドレスXのアドレスビット[12]を確認し、L1データキャッシュメモリ140のウェイ3‐0にアクセスするか、ウェイ7‐4にアクセスするかを決定する。アドレスビット[12]がウェイ3‐0を選択したとすると、4ウェイL1タグアレイ[3‐0]242のタグアレイの1つの仮想アドレスXに合致する場合、L1タグコンパレータ[3‐0]242がL1ヒット信号、つまり真ヒットを生成する。工程420に真ヒットイベントがあった場合、フロー400は終了する。工程420に真ヒットイベントがなかった場合、フロー400の工程430に進み、L1データキャッシュメモリ140の保存リクエストまたはロードリクエストに真ミスイベントがあるかどうか確認する。本願発明の一実施形態では、保存リクエストまたはロードリクエストのメモリロケーションがL1データキャッシュメモリ140の8ウェイ全てにキャッシュされない場合、真ミスイベントが発生する。例えば、本願発明の一実施形態では、処理ユニット105が仮想アドレスYでロードリクエストを受信する。メモリ実行ユニット135は、仮想アドレスYのアドレスビット[12]を確認し、L1データキャッシュメモリ140のウェイ3-0にアクセスするか、ウェイ7-4にアクセスするかを決定する。L1タグコンパレータ240は、4ウェイL1タグアレイ[3‐0]242または4ウェイL1タグアレイ[7‐4]244のどちらかのタグアレイのいずれも仮想アドレスYに合致しない場合、L1ミス信号、つまり真ミスを生成する。工程430に真ミスイベントがあった場合、フロー400は終了する。工程430に真ミスイベントがなかった場合、フロー400の工程440に進み、L1データキャッシュメモリ140の保存リクエストまたはロードリクエストに偽ヒットイベントがあるかどうか確認する。本願発明の一実施形態では、L1タグコンパレータ240がヒットを生成するが、アドレスビット[12]がデータアレイの誤ったグループを選択した場合、偽ヒットイベントが発生する。例えば、本願発明の一実施形態では、処理ユニット105が仮想アドレスZでロードリクエストを受信する。メモリ実行ユニット135は、仮想アドレスZのアドレスビット[12]を確認し、L1データキャッシュメモリ140のウェイ3-0にアクセスするか、ウェイ7-4にアクセスするかを決定する。アドレスビット[12]がウェイ3‐0を選択したとすると、4ウェイL1データアレイ[3‐0]220が選択される。しかし、エイリアシングによって、L1タグコンパレータ240がロードリクエストの物理アドレスを比較するとき、ヒット信号つまり偽ヒットが、4ウェイL1タグコンパレータ[3‐0]242ではなく4ウェイL1タグコンパレータ[7‐4]244によって生成される。工程440で偽ヒットイベントがない場合、フロー400は終了する。工程440で偽ヒットイベントがあった場合、フロー400の工程450に進み、保存リクエストまたはロードリクエストを繰り返し、L1データアレイ142の全てのウェイをイネーブルするか有効にし、フロー400は終了する。図5は、本願発明の一実施形態に係る、キャッシュメモリの消費電力を減らす方法のフローチャート500を示す。説明を明確にするべく、図2を参照して、図5について説明する。フロー500の工程510において、L1データキャッシュメモリ140の連続したキャッシュメモリヒットの数を決定する。本願発明の一実施形態では、処理ユニット105は、連続したキャッシュメモリヒットの数を予測する論理回路を有する。本願発明の他の実施形態では、工程510において、L1データキャッシュメモリ140のキャッシュメモリヒットの連続したクロックの数を決定する。フロー500の工程520において、ヒットの数、またはヒットのクロックサイクルの数がしきい値を超えているかどうか確認する。本願発明の一実施形態では、しきい値は、L1データキャッシュメモリ140のキャッシュヒットの128のクロックに設定する。超えていなければ、フロー500の工程510に戻る。超えていれば、本願発明の一実施形態では、フロー500の工程530に進み、フィルバッファ146に関連付けられた論理回路を無効にする。本願発明の他の実施形態では、工程530において、フィルバッファ146へのアクセスを制限する。本願発明の一実施形態では、フィルバッファ146に関連付けられた論理回路が無効にされると、フィルバッファ146に関連付けられた論理回路の入力クロックは停止されるか、ディスエーブルされる。本願発明の一実施形態では、フィルバッファ146およびL1データキャッシュメモリ140は、同じキャッシュラインを同時に保持または保存しない。つまり、フィルバッファ146およびL1データキャッシュメモリ140のいずれかが、1つのロード動作または保存動作に応じてアクセスされる。処理ユニット105の論理回路が、全てのロード動作および保存動作がL1データキャッシュメモリ140でヒットする、または見つかる期間があると予測した場合、必要なキャッシュラインがL1データキャッシュメモリ140にあるので、フィルバッファルックアップは必要ではない。工程530において、フィルバッファ146の無効状態を検出し、フィルバッファに関連付けられた論理回路を無効にする。フィルバッファ146に関連付けられた論理回路が無効にされていると、各メモリアクセス上の処理ユニット105が消費する電力は減るか、または最小となる。フロー500の工程540において、L1タグアレイ144のアクセスウェイの数を減らす。例えば、本願発明の一実施形態では、L1タグアレイ144の8ウェイのうち4つのウェイのみがロード動作または保存動作においてアクセスされる。本願発明の一実施形態では、工程540において、フィルバッファブロック信号208をデアサートし、L1ウェイ3-0読取イネーブル信号202およびL1ウェイ7-4読取イネーブル信号204によるL1タグアレイ144の有効状態を制御する。フロー500の工程550において、キャッシュミスがあるかどうか確認する。キャッシュミスがない場合、フロー500の工程550に戻る。キャッシュミスがある場合、フロー500の工程560に進み、フィルバッファ146に関連付けられた論理回路を有効にする。工程560において、フィルバッファ146に関連付けられた論路回路が無効にされた後、L1データキャッシュメモリ140の最初のキャッシュメモリミスを検出する。最初のミスによってフィルバッファ146に関連付けられた論理回路を有効することに不利益が生じることもあるが、L1データキャッシュメモリ140のキャッシュヒットの長いシーケンスの後に、フィルバッファ146がブロックされているので、処理ユニット105の性能への影響は、最小限で済む。工程570において、L1タグアレイ144の全てのウェイへのアクセスがイネーブルされ、フロー500は終了する。本願発明の一実施形態では、L1ウェイ3-0読取イネーブル信号202およびL1ウェイ7-4読取イネーブル信号204がL1タグアレイ144の有効状態を制御することを防ぐべく、フィルバッファブロック信号208がアサートされ、L1タグアレイ144の全てのウェイが、ロード動作または保存動作毎に確認される。図6は、本願発明の一実施形態に係る、本明細書に開示される方法を実施するシステム600を示す。システム600は、デスクトップコンピュータ、ラップトップコンピュータ、ネットブック、ノートパソコン、携帯端末PDA、サーバ、ワークステーション、携帯電話、モバイルコンピュータデバイス、インターネッアプライアンスまたは他の形態のコンピュータデバイスを含むが、これらに限定されない。他の実施形態では、本明細書に開示される方法を実施するのに用いられるシステム600は、システムオンチップSOCのシステムである。プロセッサ610は、システム600の命令を実行するプロセッシングコア612を有する。プロセッシングコア612は、命令をフェッチするプリフェッチ論理回路、命令を復号化する復号化論理回路、命令を実行する実行論理回路などを含むが、これらに限定されない。プロセッサ610は、システム600の命令および/またはデータをキャッシュするキャッシュメモリ616有する。本願発明の他の実施形態では、キャッシュメモリ616は、レベル1、レベル2およびレベル3キャッシュメモリ、またはプロセッサ610内の他の構成のキャッシュメモリを含むが、これらに限定されない。メモリコントロールハブMCH614は、プロセッサ610によるメモリ630へのアクセス、およびメモリ630との通信を可能にする機能を実行する。メモリ630は、揮発性メモリ632および/または不揮発性メモリ634を含む。揮発性メモリ632は、同期ダイナミックランダムアクセスメモリSDRAM、ダイナミックランダムアクセスメモリDRAM、RAMBUSダイナミックランダムアクセスメモリRDRAM、および/または他の形態のランダムアクセスメモリデバイスを含むが、これらに限定されない。不揮発性メモリ634は、NAND型フラッシュメモリ、相変化メモリ、PCM、読取専用メモリROM、電気的に消去可能なプログラム可能読取専用メモリEEPROM、または他の形態の不揮発性メモリデバイスを含むが、これらに限定されない。メモリ630は、プロセッサ610に実行される情報および命令を保存する。メモリ630は、プロセッサ610が命令を実行する間に、一時的変数または他の中間情報も保存する。チップセット620は、ポイントツーポイントPtPインタフェース617、622を介し、プロセッサ610と接続する。チップセット620は、プロセッサ610が、システム600内の他のモジュールと接続することを可能にする。本願発明の一実施形態では、インタフェース617、622は、Intel登録商標QuickPathInterconnectQPIなどのPtP通信プロトコルに準拠して動作する。チップセット620は、液晶表示装置LCD、ブラウン管CRT表示装置、または他の形態の視覚表示装置を含むがこれらに限定されない、表示装置640と接続する。さらにチップセット620は、各種のモジュール674、660、662、664、666と相互接続する、1以上のバス650、655と接続する。バス速度または通信プロトコルが一致しない場合、バス650、655は、バスブリッジ672を介して互いに接続されてもよい。チップセット620は、不揮発性メモリ660、大容量記憶装置662、キーボード/マウス664およびネットワークインタフェース666と結合しており、また結合先はこれらに限定されない。大容量記憶装置662は、半導体ドライブ、ハードディスクドライブ、ユニバーサルシリアルバスフラッシュメモリドライブ、または他の形態のコンピュータデータ記憶媒体を含むが、これらに限定されない。ネットワークインタフェース666は任意の形態の周知のネットワークインタフェース標準を用いて実装される。それらネットワークインタフェース標準には、イーサネット登録商標インタフェース、ユニバーサルシリアルバスUSBインタフェース、ペリフェラルコンポーネントインターコネクトPCIExpressインタフェース、ワイヤレスインタフェース、および/または他の適した形態のインタフェースが含まれるが、これらに限定されない。ワイヤレスインタフェースは、IEEE802.11標準およびその関連した標準、HomePlugAVHPAV、UltraWideBandUWB、Bluetooth登録商標、WiMax、または他の形態の無線通信プロトコルに準拠して動作するが、これらに限定されない。図6のモジュールは、システム600内の独立したブロックとして示されているが、これらのブロックのうちいくつかによって実行される機能は、1つの半導体回路内で統合されていてもよく、若しくは、2以上の独立した集積回路を用いて実行されてもよい。例えば、キャッシュメモリ616は、プロセッサ610内の独立したブロックとして示されているが、キャッシュメモリ616は、それぞれ、プロセッサコア612に組み込まれていてもよい。本願発明の他の実施形態では、システム600は、1以上のプロセッサ/プロセッシングコアを含む。本明細書で開示される方法は、ハードウェア、ソフトウェア、ファームウェア、またはこれらの組み合わせによって実行することが出来る。開示される主題の実施形態の例を説明したが、当業者であれば、開示される主題を実行する多くの他の方法を代替的に用いることが可能であることを容易に理解するであろう。上記の説明では、開示される主題の様々な態様が説明された。説明を目的とし、主題が完全に理解されるように、特定の数字、システムおよび構成を明記した。しかし、本開示を読んだ当業者には、これらの詳細事項を用いることなく主題を実施することが可能であることが明白であろう。他の例においては、開示される主題を曖昧にすることがないよう、周知の特徴、コンポーネントまたはモジュールについては省略して、単純化して、組み合わせて、または分割して説明した。本明細書で実行することが出来るとは、装置、システム、プロトコルなどが、デバイスまたはシステムに電力が供給されていないときに、所望される機能を提供すべく動作できる、または動作できるように構成されていることを意味する。開示される主題の様々な実施形態は、ハードウェア、ファームウェア、ソフトウェアまたはこれらの組み合わせによって実行することが出来る。また開示される主題の様々な実施形態は、命令、機能、手順、データ構造、論理回路、アプリケーションプログラム、設計表現、または設計のシミュレーション、エミュレーションおよび製作のフォーマットなどのプログラムコードを参照すること、若しくはプログラムコードに関連させることによって説明されてもよい。これらのプログラムコードが機械によってアクセスされると、当該機械は、タスクを実行し、抽象データ型または低水準言語のハードウェアのコンテクストを定義づけ、または結果をもたらす。図中に示した技術は、汎用のコンピュータまたはコンピュータデバイスなどの1以上のコンピュータデバイス上に保存され、これらのコンピュータデバイス上で実行されるコードおよびデータを用いて実施することが出来る。そのようなコンピュータデバイスは、コードおよびデータの保存および内部で、若しくは、他のコンピュータデバイスとのネットワーク上での通信を、機械可読記憶媒体例えば、磁気ディスク、光学ディスク、ランダムアクセスメモリメモリ、読取専用メモリ、フラッシュメモリデバイス、相変化メモリおよび機械可読通信媒体例えば、搬送波、赤外線信号、デジタル信号などの電気、光、音響、または他の形態の伝搬信号などの機械可読媒体を用いて行う。例示的な実施形態を参照し、開示される主題を説明してきたが、これらの説明は、主題を限定するものとして解釈されることを意図されていない。例示的な実施形態の様々な変形例、および主題の他の実施形態は、当業者にとって明白であり、かつ、開示される主題の態様に含まれる。