第1及び第2のキャッシュを制御するための方法であって、前記第1のキャッシュにおいてキャッシュエントリを受け取ることと、受け取ったキャッシュエントリを手付かずに係る状態を有するものとして識別することと、前記キャッシュエントリの前記手付かずに係る状態を、前記キャッシュエントリの少なくとも一部に対する要求を受け取ることに応答して、アクセスに係るものへと更新することと、予め選択されたキャッシュライン交換アルゴリズムに従って前記キャッシュエントリを追い出すことと、追い出されたキャッシュエントリの前記第2のキャッシュにおける記憶を前記追い出されたキャッシュエントリの状態に従って制御することと、を備える方法。前記追い出されたキャッシュエントリの記憶を制御することは、アクセスに係る状態を有する前記追い出されたキャッシュエントリに応答して前記第2のキャッシュ内に前記追い出されたキャッシュエントリを記憶することを更に備える請求項1に記載の方法。前記追い出されたキャッシュエントリの記憶を制御することは、手付かずに係る状態を有する前記追い出されたキャッシュエントリに応答して前記追い出されたキャッシュエントリが前記第2のキャッシュ内に記憶されるのを阻むことを更に備える請求項1に記載の方法。前記追い出されたキャッシュエントリの記憶を制御することは、前記追い出されたキャッシュエントリを前記第2のキャッシュ内に記憶することと、手付かずに係る状態を有する前記追い出されたキャッシュエントリに応答して前記追い出されたキャッシュエントリを前記第2のキャッシュ内の最長未使用エントリであるとして識別することと、を更に備える請求項1に記載の方法。コアと、第1レベルキャッシュと、第2レベルキャッシュと、受け取ったキャッシュエントリを手付かずに係る状態を有するものとして識別することと、前記キャッシュエントリの状態を、前記キャッシュエントリの少なくとも一部に対する要求を前記コアから受け取ることに応答して、アクセスに係るものへと更新することと、予め選択されたキャッシュライン交換アルゴリズムに従って前記キャッシュエントリを追い出すことと、のために適合させられる第1レベルキャッシュ制御器と、追い出されたキャッシュエントリの前記第2のキャッシュにおける記憶を前記追い出されたキャッシュエントリの状態に従って制御するための第2レベルキャッシュ制御器と、を備えるマイクロプロセッサ。前記第2レベルキャッシュ制御器は、アクセスに係る状態を有する前記追い出されたキャッシュエントリに応答して前記第2のキャッシュ内に前記追い出されたキャッシュエントリを記憶することにより前記追い出されたキャッシュエントリの記憶を制御する請求項10に記載のマイクロプロセッサ。前記第2レベルキャッシュ制御器は、手付かずに係る状態を有する前記追い出されたキャッシュエントリに応答して前記追い出されたキャッシュエントリが前記第2のキャッシュ内に記憶されるのを阻むことにより前記追い出されたキャッシュエントリの記憶を制御する請求項10に記載のマイクロプロセッサ。前記第2レベルキャッシュ制御器は、前記追い出されたキャッシュエントリを前記第2のキャッシュ内に記憶することと、手付かずに係る状態を有する前記追い出されたキャッシュエントリに応答して前記追い出されたキャッシュエントリを前記第2のキャッシュ内の最長未使用エントリであるとして識別することと、により前記追い出されたキャッシュエントリの記憶を制御する請求項10に記載のマイクロプロセッサ。前記第1レベルキャッシュ制御器は、前記第1レベルキャッシュから追い出されるキャッシュエントリに応答して前記追い出されたキャッシュエントリの状態を前記第2レベルキャッシュ制御器へデリバーするように適合させられる請求項10に記載のマイクロプロセッサ。プリフェッチングに伴う1つの問題は、ソフトウェアプログラムが常にそれらが記憶された順序で実行されるとは限らないことである。実際、ソフトウェアプログラムをプログラム内の別のロケーションへと分岐させ又はジャンプさせる多くの命令が存在する。従って、プログラムがいつ別のロケーションへと分岐し又はジャンプすることになるのかを正確に予測することは、プリフェッチングの品質、及びその結果としてプロセッサがソフトウェアプログラムを実行し得る速度に大きく影響し得る。プロセッサのより連続的で迅速な動作を可能にするように予測を一応は強化する多くのメカニズムが提案されてきている。しかし、これらの予測は少なくとも共通の一点を有しており、即ちそれらは少なくとも時々は間違いであり、そしてプロセッサによって使用されない命令がプリフェッチされるということである。つまり、プリフェッチアルゴリズムは幾つかの応用に対しては有用であるが、他に対しては有効でないことが分かるであろう。プログラムの実行の間、プリフェッチされたコード又はデータが無矛盾で且つ正確にアクセスされないと、プリフェッチャは実際上プロセッサの性能を損なうことがある。浪費に係るプリフェッチは、予想される単一又は複数の命令でキャッシュを満たすメモリアクセスであって、アクセスされる前にキャッシュからエージアウトするメモリアクセスである。浪費に係るプリフェッチは、システム及びメモリの帯域を消費し、またプロセッサコアのプライベートキャッシュや共有チップ多重プロセッサCMPキャッシュを汚染する。最新のプリフェッチャは、高比率の浪費に係るプリフェッチを伴って高速でコード及びデータをプリフェッチするという点において、極めて積極的であり得る。開示される主題の幾つかの態様の基本的な理解を提供するために、開示される主題の簡略化された概要を以下に提示する。この概要は開示される主題の包括的な概説である。開示される主題の鍵となる若しくは臨界的な要素を特定すること又は開示される主題の範囲を表すことは意図されていない。その唯一の目的は、後で議論される更に詳細な説明への序として、幾つかの概念を単純化された形態で提示することである。開示される主題の1つの態様は、第1及び第2のキャッシュを制御するための方法において理解される。この方法は、第1のキャッシュにおいてキャッシュエントリを受け取ることと、そのキャッシュエントリを手付かずに係る状態を有するものとして識別することと、を備える。キャッシュエントリの状態は、キャッシュエントリの少なくとも一部に対する要求を受け取ることに応答して更新される。キャッシュエントリは、予め選択されたキャッシュライン交換アルゴリズムに従って追い出され、そして追い出されたキャッシュエントリは、追い出されたキャッシュエントリの状態に従ってより低レベルな第2のキャッシュ内に記憶される。開示される主題の別の態様は、メモリシステムにおいて理解される。このメモリシステムは、第1レベルキャッシュ、第1レベルキャッシュ制御器、第2レベルキャッシュ及び第2レベルキャッシュ制御器を備える。第1レベルキャッシュ制御器は、受け取ったキャッシュエントリを手付かずに係る状態を有するものとして識別することと、キャッシュエントリの状態を、キャッシュエントリの少なくとも一部に対する要求を受け取ることに応答して、アクセスに係るものへと更新することと、予め選択されたキャッシュライン交換アルゴリズムに従ってキャッシュエントリを追い出すことと、のために適合させられる。第2レベルキャッシュ制御器は、追い出されたキャッシュエントリの第2のキャッシュにおける記憶を、追い出されたキャッシュエントリの状態に従って制御することのために適合させられる。開示される主題の別の態様は、マイクロプロセッサにおいて理解される。このマイクロプロセッサは、コア、第1レベルキャッシュ、第1レベルキャッシュ制御器、第2レベルキャッシュ及び第2レベルキャッシュ制御器を備える。第1レベルキャッシュ制御器は、受け取ったキャッシュエントリを手付かずに係る状態を有するものとして識別することと、キャッシュエントリの状態を、キャッシュエントリの少なくとも一部に対する要求を受け取ることに応答して更新することと、予め選択されたキャッシュライン交換アルゴリズムに従ってキャッシュエントリを追い出すことと、のために適合させられる。第2レベルキャッシュ制御器は、追い出されたキャッシュエントリの第2のキャッシュにおける記憶を、追い出されたキャッシュエントリの状態に従って制御することのために適合させられる。開示される主題の1つ以上の具体的な実施形態が以下に説明される。開示される主題は、ここに含まれる実施形態及び図示に限定されるものではなく、むしろ特許請求の範囲内にある実施形態の一部や異なる実施形態の要素の組み合わせを含む実施形態の修正された形態を含むことが具体的に意図されている。任意のそのような実際の実装の開発においては、任意のエンジニアリング又は設計プロジェクトにおいて見られるように、システム関連及びビジネス関連の制約の遵守等の実装毎に変わり得る開発者の具体的な目標を達成するために、種々の実装固有の決定がなされ得ることが理解されるべきである。また、そのような開発努力は得てして複雑で且つ時間を費やすものであるが、この開示の利益を享受する当業者にとっては設計、製造及び製品化のルーチン的な業務であろうことが理解されるべきである。明示的に臨界的又は本質的であるものとして示されている場合を除き、本出願のいずれの内容も、開示される主題に対して臨界的又は本質的であると考えられることはない。次に添付の図面を参照して、開示される主題を説明する。説明のみを目的とし且つ開示される主題を当業者にとって周知である詳細で不明瞭にすることのないように、種々の構造、システム及びデバイスが図面に模式的に示されている。にもかかわらず、添付の図面は、開示される主題の例証的な例を記載し且つ説明するために含まれている。ここで用いられる語句は、関連分野を含めた当業者によるそれらの語句の理解と一致する意味を有するものして理解され且つ解釈されるべきである。ある用語又は句の特別の定義、即ち当業者によって理解される通常の且つ慣例的な意味とは異なる定義は、ここでのその用語又は句の一貫した使用によって暗示されることが意図されるわけではない。ある用語又は句が特別な意味、即ち当業者によって理解される以外の意味を有することが意図される限りにおいて、そのような特別な定義は、その用語又は句に対するその特別な定義を直接的且つ明白に提供する定義的な方法において明細書内に明示的に記載されることになる。次に、種々の図面を通して同様の参照番号が類似の要素に対応する図面を参照すると、特に図1を参照すると、外部メモリ105に結合されるマイクロプロセッサ100との関連において、開示される主題が説明されることになる。当業者であれば、これらの要素及び他の要素からコンピュータシステムが構成され得ることを認識するはずである。しかし、本発明を不明瞭にすることを避けるために、本発明の理解に有用である要素のみが含まれている。図1は複数のコア106~111からなる典型的な多重プロセッサシステムのためのメモリ階層を示している。各コアは専用のプライベートL2プロセッサキャッシュ112~117を有している。当業者であれば、図示される実施形態が6個のコア106~111及び6個のL2キャッシュ112~117を有するものとして示されている一方で、本発明の精神及び範囲から逸脱することなしに、より多くの又はより少ないコア及びキャッシュが用いられてよいことを理解するはずである。図示される例示的な実施形態においては、L3キャッシュ120がシステム要求インタフェース125を介して全てのプロセッサコア106~111によって共有される。図示される実施形態においては、L3キャッシュは最終レベルキャッシュLLCであるが、当業者であれば、本発明の精神及び範囲から逸脱することなしに、追加的なレベルのキャッシュが用いられてよいことを理解するはずである。コア106~111の各々は、その対応するL2キャッシュ112~117内にソフトウエア又は実行可能なコード及びデータのラインを記憶する能力を有する。各プロセッサコア106~111に付随するプリフェッチャユニット200図2参照も同様に、コア106~111による実行のために実際に必要になる前に転送バーXBAR130を介して外部メモリ105からデータ及びコードをリトリーブすると共にプリフェッチされたコード及びデータをL2キャッシュ112~117内に記憶する能力を有する。どのコード及びデータがメモリ105からプリフェッチされるべきかを決定するために種々の周知の方法が用いられてよいが、当業者であれば、本発明の精神及び範囲から逸脱することなしに、任意のプリフェッチ方法が用いられてよいことを理解するはずである。L2キャッシュの効率的な動作を確実にするためには、近い将来コア106~111により使用される可能性が最も高いデータ及びコードでL2キャッシュを満たしておくことが一般的には望ましい。1つのそのような方法は、予め選択されたアクセスされていない時間の間データ又はコードがキャッシュ内に記憶されていた時点でキャッシュ内に記憶されているデータ又はコードを交換することを伴う。このプロセスは一般にエージングアウトとして知られる。L2キャッシュ112~117内のあるラインがエージアウトすると、そのラインは取り除かれ、即ちトランザクションの一部としてL2キャッシュ112~117から追い出される。追い出されたラインは犠牲ラインと称されることがあり、それらは追い出されるときに通常全部は廃棄されず、多くの場合に本実施形態におけるL3キャッシュ120等の次のレベルのキャッシュ内にインストールされる。プロセッサからのメモリアクセスは概して2種類に分けられ、即ち、プログラムの実行に起因するものデマンドアクセスとプリフェッチャにより生成されるものプリフェッチとである。本装置の1つの実施形態においては、メモリのラインがプロセッサキャッシュ内に最初にインストールされるときに、プリフェッチとデマンドアクセスの間での区別がなされる。例えば、メモリのプリフェッチされたラインは、手付かずに係る属性、状態又はフラグと共にL2キャッシュ112~117内にインストールされる。ここで用いられる手付かずに係る属性、状態又はフラグの語句は、キャッシュブロック又はライン等のメモリの一部がプリフェッチされたが、プロセッサコア106~111のいずれによっても未だアクセスされておらず又は手を付けられていないことの表示を意味することが意図されている。プロセッサコア106~111が次いでL2キャッシュ112~117内のラインにアクセスすると、手付かずに係る属性はクリアされ、このことは、ラインがプロセッサコア106~111によってアクセスされたことを示す。しかし、ラインがL2キャッシュ112~117でエージアウトすると、L2キャッシュ112~117から追い出されつつある犠牲ラインと共に、手付かずに係る属性がSRI125を介してエクスポートされ又はデリバーされる。手付かずに係る属性は、L3キャッシュ120内のキャッシュ汚染を回避するようにL3キャッシュ120によって使用されるインストールポリシーを制御するために用いられ得る。例えば、セットされた手付かずに係る属性を有する犠牲ラインは、L3キャッシュ120内には全くインストールされないことがあり、あるいはそれらは、最長時間未使用LRUスロットとして識別されたL3キャッシュ120内のロケーション内にインストールされてよい。図示される実施形態においては、LRUスロットは、L3キャッシュに対する後続の記憶動作に応答してL3キャッシュから追い出されるべき次のキャッシュラインである。この実施形態においては、L2キャッシュ112~117から廃棄されたキャッシュラインは、廃棄されたL2キャッシュライン内にあるメモリロケーションにアクセスすることをコア106~111が決定する場合には、L3キャッシュ120内に少なくとも一時的に保持される。図3に示されるように、L2キャッシュ112~117内の各ライン300は、典型的には、アドレスADDRタグ305、アクセス状態フィールド310、LRUフィールド315及びデータ320を含む。随意的には、ECCコード325及び他の属性330を含んでいてよい。手付かずに係る属性335は、L2キャッシュ112~117内の種々のロケーション内に記憶され得る。例えば、手付かずに係る属性335は、図3に示されるようにスタンドアローン属性として記憶され得るし、あるいはアクセス状態フィールド310内で符号化されてよい。従来のマイクロプロセッサの動作の間、コードがプリフェッチされ且つキャッシュ内へと記憶される場合、その状態フィールドは典型的には共有S状態stateとして識別される。本発明の1つの実施形態においては、共有状態は、2つの状態、即ち1アクセスに係る共有S.Accessedと2手付かずに係る共有S.Untouchedとに置き換えられ得る。従って、本発明の1つの実施形態の動作の間、コードがプリフェッチされ且つキャッシュ112~117内へと記憶されるときに、プリフェッチされたキャッシュラインのアクセス状態フィールド310は、キャッシュラインが未だコア106~111によってアクセスされていないことを示すS.Untouchedとしてセットされてよい。続いて、図4のフローチャートに示されるように、コア106~111がコードを実行するに際して、そのコアはブロック405で特定のメモリアドレスに対するL2キャッシュ112~117へと要求を送ることになる。当該メモリアドレスがL2キャッシュ112~117内へと既にプリフェッチされている場合には、L2キャッシュ112~117は、ブロック410において、プリフェッチされたキャッシュラインへのヒットをADDRフィールド305に基づき検出することになる。ブロック412では、L2キャッシュにおけるミスがL3キャッシュ120へとデリバーされて、L3キャッシュ120は、要求されたメモリアドレスがL3キャッシュ120内に存在するかどうかを決定する。L2キャッシュ112~117におけるヒットの場合には、ブロック415において、L2キャッシュ112~117はアクセス状態フィールド310を調べ、そしてキャッシュラインがS.Untouchedとして識別されている場合には、キャッシュラインがコア106~111へ送られると共にL2キャッシュ112~117内のキャッシュラインが更新されて、アクセス状態フィールド310は、それが既にコア106~111によってアクセスされたことを示すS.Accessed状態を含むことになる。あるいはキャッシュラインがS.Accessedとして識別される場合には、ブロック425において、キャッシュラインがコア106~111へ送られると共に、L2キャッシュ112~117内のキャッシュラインは、その状態が既に前もってS.Accessedにセットされているので、更新されない。図5はコードのラインがエージアウトした追い出し動作の間にL2キャッシュ112~117からコードのラインを受け取ることに応答するL3キャッシュ120の動作のフローチャート表示を示している。本発明の1つの実施形態においては、L3キャッシュ120は、2種類の関連する追い出しをL2キャッシュ112~117から受け取ることができる。即ち、L3キャッシュ120は、アクセス状態フィールド310がS.Accessed又はS.Untouchedのいずれにセットされているかに応じて、異なって応答するように構成されていてよい。プロセスは、追い出されたキャッシュライン300のアクセス状態フィールド310をL3キャッシュ120が調べる決定ブロック505で始まる。アクセス状態フィールド310がS.Untouchedにセットされている場合には、制御はブロック510に渡され、ここでは追い出されたキャッシュライン300がコア106~111によってアクセスされなかったことをL3キャッシュ120が認識する。従って、図示される実施形態においては、手付かずに係る追い出されたキャッシュライン300は、ブロック510で廃棄され且つL3キャッシュ120内には記憶されない。一方、追い出されたキャッシュライン300のアクセス状態フィールド310がS.Accessedにセットされている場合には、制御はブロック515に渡され、ここでは追い出されたキャッシュライン300がコア106~111によってアクセスされたことをL3キャッシュ120が認識する。従って、図示される実施形態においては、アクセスに係る追い出されたキャッシュライン300は、L3キャッシュ120内に記憶され、この場合、必要に応じて迅速且つ効率的にリトリーブされ得る。図6におけるL3キャッシュ120の動作のフローチャート表示には、本発明の代替的な実施形態が示されている。本発明のこの実施形態においては、ブロック605に示されるように、L3キャッシュ120の動作は、追い出されたキャッシュライン300のアクセス状態フィールド310がS.Untouchedにセットされている場合に異なって応答するように変更されている。具体的には、L3キャッシュ120は、追い出されたキャッシュライン300を即座には廃棄せず、むしろ追い出されたキャッシュライン300を、そのアクセス状態フィールド310がS.Untouched状態を有しているにもかかわらず、L3キャッシュ120内に記憶する。また、L3キャッシュ120は、追い出されたキャッシュライン300を記憶し、そしてそれをLRUエントリとして識別する。このように、L3キャッシュ120は、L2キャッシュ112~117からの次の追い出されたライン等の別のキャッシュラインを受け取るまで、手付かずに係る追い出されたラインを一時的に記憶する。つまり、手付かずに係るキャッシュライン300は、既にLRUエントリとして識別されているので、L3キャッシュ120内の全キャッシュラインの最も低い優先度を有しており、そして置き換えられる次のキャッシュラインとなる。本発明は、コードとは対照的にデータがメモリからリトリーブされてL2キャッシュ112~117内に置かれる場合の応用にも見出し得る。従来のマイクロプロセッサの動作の間、データがフェッチされ且つキャッシュ内へと記憶される場合、その状態フィールドは典型的には排他的E状態stateとして識別される。本発明の1つの実施形態においては、排他的状態は、2つの状態、即ち1アクセスに係る排他的状態E.Accessedと2手付かずに係る排他的状態E.Untouchedとに置き換えられ得る。従って、本発明の1つの実施形態の動作の間、データがフェッチされ且つL2キャッシュ112~117内へと記憶されるとき、プリフェッチされたキャッシュラインのアクセス状態フィールド310は、キャッシュラインが未だコア106~111によってアクセスされていないことを示すE.Untouchedとしてセットされてよい。続いて、L2キャッシュ112~117及びL3キャッシュ120の後続の動作の間、図4~6において説明されたように、E.Untouched状態フィールドはS.Untouched状態フィールドと実質的に同一の方法で動作することになり、またE.Accessed状態フィールドはS.Accessed状態フィールドと実質的に同一の方法で動作することになる。当業者であれば、図4~6と共に説明された機能が本発明の精神及び範囲から逸脱することなしに種々の方法において提供され得ることを理解するはずである。例えば、当該機能は、ハードウエア、ソフトウエア、ファームウエア又はこれらの組み合わせを通して提供され得る。また、図4~6と共に説明された機能を提供することが可能なL2及びL3キャッシュのための制御器は、別々のスタンドアローンデバイスであってよく、L2及びL3キャッシュの両方を制御することが可能な単一のデバイスであってよく、又は図4~6に関して特定されるよりも多くの能力を有する大型デバイスの一部であってよい。幾つかの実施形態においては、半導体製品及び半導体デバイス等の超大規模集積回路VLSI回路並びに/又は他の種類の半導体デバイスを設計し及び製造するプロセスでは種々のハードウエア記述言語HDLが用いられてよいこともまた検討される。HDLの幾つかの例はVHDL及びVerilog/Verilog-XLであるが、記載されていない他のHDLフォーマットが用いられてもよい。1つの実施形態においては、GDSデータ、GDSIIデータ等を生成するためにHDLコード例えばレジスタ転送レベルRTLコード/データが用いられてよい。GDSIIデータは、例えば、記述的ファイルフォーマットであり、そして半導体製品又は半導体デバイスの三次元モデルを表すために種々の実施形態において用いられてよい。そのようなモデルは、半導体製品及び/又は半導体デバイスを作製するために半導体製造設備によって用いられてよい。GDSIIデータは、データベース又は他のプログラム記憶構造として記憶されてよい。このデータはコンピュータ可読記憶デバイス例えばデータ記憶ユニット、RAM、コンパクトディスク、DVD、ソリッドステート記憶装置等に記憶されてもよい。1つの実施形態においては、GDSIIデータ又は他の同様なデータは、本発明の種々の態様を具現化することが可能なデバイスを作製するために、製造設備を構成する例えばマスクワークの使用を通してように適合させられてよい。つまり、種々の実施形態においては、このGDSIIデータ又は他の同様なデータは、コンピュータ、プロセッサ又は制御器内にプログラムされてよく、これらは次いで、半導体製品及び半導体デバイスを作製するために、半導体製造設備又は製造工場の動作を全体的に又は部分的に制御してよい。例えば1つの実施形態においては、GDSIIデータ又は他の同様なデータを用いて本発明を含むシリコンウェハが作製されてよい。開示される主題は、ここでの教示の利益を享受する当業者には明らかな、異なるが均等な方法において修正されてよく且つ実施されてよく、従って上に開示される特定の実施形態は例示のみを目的としている。また、ここに示される構成又は設計の詳細に対しては、特許請求の範囲に記述される以外は、限定は意図されていない。従って、上に開示される特定の実施形態は変更又は修正されてよく、また全てのそのような変形は開示される主題の範囲及び精神内にあるとみなされることは明らかである。よって、ここに求められる保護は特許請求の範囲に記述されている。