(57)【特許請求の範囲】
【請求項１】
データ処理装置であって、
（ｉ）処理クロック周期中に、記憶するための出力データワードを発生する中央処理装置と、
（ｉｉ）前記処理クロック周期中に前記出力データワードを記憶する単一サイクル記憶動作を実行するキャッシュメモリであって、複数のキャッシュ記憶ラインを有し、各キャッシュ記憶ラインは関連する無効ラインフラグを持ち、且つ、発生された複数の出力データワードを記憶するための前記キャッシュメモリと、
（ｉｉｉ）前記中央処理装置および前記キャッシュメモリとは別の、出力データワードの記憶が所与の処理モードで無効かどうか判断するようにしたメモリ管理手段であって、キャッシュヒットが発生したか否かに拘らず、前記処理クロック周期中の前記出力データワードの前記キャッシュメモリへの記憶が無効記憶動作であったか否かを示す無効記憶信号を、前記処理クロック周期に続く次のクロック周期において、発生する前記メモリ管理手段と、
（ｉｖ）前記無効記憶信号に応答して、前記無効記憶動作が行われたキャッシュ記憶ラインに関連する無効ラインフラグをセットするフラグセット手段とを有し、
該フラグセット手段は、
前記次のクロック周期中で用いるために、前記処理クロックサイクル中に記憶動作が行われた前記キャッシュ記憶ラインの１本を識別するデータを記憶するアドレスレジスタと、
前記次のクロック周期中に、無効記憶動作を示す前記無効記憶信号によってイネーブルされ、前記アドレスレジスタによって識別された前記無効ラインフラグの１つを前記無効記憶動作を示す値にセットする手段と
を含むことを特徴とする、データ処理装置。
【請求項２】
前記メモリ管理手段は、前記中央処理装置によって発生された仮想アドレスのマッピングを行い、前記出力データワードを物理アドレスに記憶することを特徴とする、請求項１のデータ処理装置。
【請求項３】
前記メモリ管理手段は、前記出力データワードを前記キャッシュメモリに記憶するのが適切であるかどうかを指示するため、出力データワードを前記キャッシュメモリに有効に記憶することができる物理アドレスを示す第１のルックアップテーブルを含むことを特徴とする、請求項１のデータ処理装置。
【請求項４】
前記中央処理装置は、複数の処理モードで動作可能であり、
前記メモリ管理手段は、前記中央処理装置が所与の処理モードで動作している時に、前記出力データワードを前記処理モードによって記憶するのが適切であるかどうかを指示するため、出力データワードを有効に記憶することができる物理アドレスを示す第２のルックアップテーブルを含むことを特徴とする、請求項１のデータ処理装置。
【請求項５】
前記中央処理装置は、複数の処理モードで動作可能であり、
前記メモリ管理手段は、前記キャッシュメモリ内に出力データワードを記憶することができる物理アドレスを示す第１のルックアップテーブルと、当該出力データワードを有効に記憶することができる物理アドレスを示す第２のルックアップテーブルを含み、当該データワードを前記キャッシュメモリに記憶するのが適切であるかどうかを示す出力と、当該データワードを前記処理モードによって記憶するのが適切であるかどうかを示す出力を論理的に結合して前記無効記憶信号を生成するＯＲゲートを含むことを特徴とする、請求項１のデータ処理装置。
【請求項６】
集積回路から成ることを特徴とする、請求項１のデータ処理装置。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、データ処理装置および方法に関し、更に特定すれば、本発明は、キャッシュ記憶を利用した、データ処理装置および方法に関するものである。
【０００２】
【従来の技術】
高速キャッシュ記憶部を有するデータ処理システムを備え、システム全体の性能を向上させることは公知である。キャッシュ記憶部は、アクセス速度のために記憶容量を利用し、比較的小さな容量で高速データリードおよびライト能力をもたらすものである。キャッシュ記憶部の容量が比較的小さいと、システムがリードまたはライトを行おうとする、特定のデータワードがキャッシュ内に存在しないという事態が時として生じる。このため、他の記憶システムへのアクセス速度は、低下せざるを得ない。
【０００３】
キャッシュ記憶部へのライトおよびリード動作の制御は、通常キャッシュタグユニットによって行われ、現在キャッシュ記憶部に記憶されているデータワードのデータアドレスを、このキャッシュタグユニットに記憶する。アクセスされるデータのアドレスを、キャッシュタグユニット内に記憶されているアドレスと比較し、一致（「ヒット」）が生じれば、主キャッシュ記憶部へのアクセスが可能となる。
【０００４】
データ処理システムの全体としてのパフォーマンスを判定する際、キャッシュアクセス動作を行うのに要する時間が、非常に重要となる場合が多いことは認められよう。多くの場合、システムパフォーマンスを制限する要因の１つは、キャッシュアクセス時間である。
【０００５】
このようなシステム内で、複雑化をもたらす要因の１つは、マルチタスクおよびオブジェクト指向型プログラム方法の使用が増加したことである。これらの方法では、特定のデータを変更する能力を、特定のプロセッシングスレッドまたはオブジェクトに限定することが、データの保全性のために重要となっている。このような状況では、無効記憶動作、例えば、特定のプロセッシングスレッドまたはオブジェクトがライトアクセスをすべきでないデータワードに関連する記憶動作を処理することができる、ライト記憶動作制御機構を設けることが重要である。
【０００６】
アドバンスト・リスク・マシン・リミテッド(Advanced RISC Machines Limited)社製造のＡＲＭ６００のようなデータ処理システムにおいては、集積回路の一部として、ハードウエアメモリ管理ユニット（ＭＭＵ）を設けることが知られている。このＭＭＵ（またはメモリ管理手段）は、システム内の記憶部の異なる部分に許可されたアクセスを制御するものである。ＭＭＵは、中央処理装置（ＣＰＵ）やキャッシュとは異なり、キャッシュタグユニットの機能のように、キャッシュヒットが生じたか否かを判定するのではなく、アクセス許可を制御する機能を果たす。このようなハードウエアに基づく手法は、十分に高速な動作を有し、キャッシュ記憶部への高速クリティカルパスにおける、標準ＤＲＡＭまたはハードディスク駆動装置のような記憶媒体への記憶動作のパフォーマンスには影響を与えないが、特定の記憶動作が無効であるか否かを示す信号をＭＭＵが返送するのに要する時間が、システムパフォーマンスを制約する要因となる。
【０００７】
更に具体的に述べると、中央処理装置（ＣＰＵ）とキャッシュメモリとを設け、ＣＰＵが発生する出力データワードを、ＣＰＵがそれを生成したのと同じクロック期間内に、キャッシュメモリに記憶させるようにすること、即ち単一サイクル記憶動作は可能である。しかしながら、特定の記憶動作が無効であるか否かを示すＭＭＵの機構は、単一サイクル内の十分早い時期にその結果を返送し、必要であればライト動作を中止できるようにすることはできない。したがって、各キャッシュ記憶動作に２サイクルを使用しなければならない、即ち、アクセスが有効であることがわかるまで、ライトサイクルが開始されないのである。各キャッシュ記憶動作に２クロックサイクルかけるようにすることは、簡素かつ信頼性の高い解決法の１つであるが、この手法はシステムパフォーマンスに重大な影響を及ぼす。
【０００８】
他の手法は、出力データワードを記憶しようとするアドレスの発行を、その記憶動作が無効であるか否かについてＭＭＵが行うチェックが間に合うように、ＣＰＵがクロックサイクル内の十分早い時期に行い、そのアドレスを発行するのと同一クロックサイクル中に発生する特定のデータライトを中止できるようにするという試みであろう。しかしながら、高速プロセッサにおいては、データアドレスを生成する機構は、既にその最大能力附近で動作しているので、このような手法を実現可能にする程早くデータアドレスを生成することは実用的でない。更に、仮にデータアドレスをより早く生成できたとしても、キャッシュ記憶の問題に対処するためにクロック周期を不必要に長いまま保持しておくよりも、クロック周期を短縮し、プロセッサ動作全体においてこれを利用しようとする可能性が最も高いであろう。
【０００９】
更に他の手法は、ＣＰＵとキャッシュメモリとの間にライトバッファを追加することであろう。このような手法は、ＣＰＵがライト要求を発行しその直後に同一メモリ位置からのリードが要求された場合に、キャッシュメモリではなく、ライトバッファがリード要求に対して必要とされるデータを保持することになり、更に、この状況を検出および回避、または補償することが、ロジックに要求されることになろう。この場合に必要とされるロジックは比較的複雑であり、このような複雑なロジックを、パフォーマンスが最も重要なＣＰＵからキャッシュメモリまでの経路に導入することは不都合であろう。
【００１０】
更にまた他の手法は、１クロック周期内で無効な記憶動作を行わせておいて、次の処理クロックサイクル中にＭＭＵからその記憶動作が無効であったという結果が分った時に、この無効データをキャッシュから追い出す動作を開始するものであろう。これを達成するには、キャッシュ内のデータのワード毎に「ダーティ」ビットを設けることによって、当該データワードが無効であったか否かを示せばよいであろう。したがって、ある特定の出力データワードに対する記憶動作をキャッシュに対して行い、次にＭＭＵが生成する信号に応答して、そのデータワードが無効と承認されたなら、無効としてマークすることができる。この手法による重大な問題は、キャッシュ内のデータワード毎に「ダーティ」ビットを設けることによって、キャッシュの物理サイズを増大させてしまうという不利益を被ることである。
【００１１】
【発明が解決しようとする課題】
本発明の目的は、上述の不利益を受けることなく、高速キャッシュアクセスを可能にすることである。
【００１２】
一観点から見た場合本発明はデータ処理装置を提供し、該装置は、
（ｉ）処理クロック周期中に、記憶するための出力データワードを発生する中央処理装置と、
（ｉｉ）前記処理クロック周期中に前記出力データワードを記憶することにより、単一サイクル記憶動作を実行するキャッシュメモリであって、複数のキャッシュ記憶ラインを有し、各キャッシュ記憶ラインは関連する無効ラインフラグを有すると共に複数の前記出力データワードを記憶可能である、前記キャッシュメモリと、
（ｉｉｉ）前記中央処理装置および前記キャッシュメモリとは異なり、前記処理クロック周期に続く次のクロック周期において、キャッシュヒットが発生したか否かとは独立して、前記処理クロック周期中の前記出力データワードの前記キャッシュメモリへの記憶が無効記憶動作であったか否かを示す、無効記憶信号を発生するメモリ管理手段と、
（ｉｖ）前記無効記憶信号に応答して、前記無効記憶動作が行われたキャッシュ記憶ラインに関連する無効ラインフラグをセットするフラッグセット手段と、から成るものである。
【００１３】
本発明は、無効ラインフラグを設け、各々キャッシュメモリ内のキャッシュ記憶ラインの複数のデータワードを無効として扱うべきか否かを指示する。このようにして、あるキャッシュ記憶ライン内の１つの出力ワードが無効記憶動作の対象である場合、このキャッシュライン全体を無効としてマークする。表面上、このような手法は、絶対的に必要以上のデータワードを無効としてマークしキャッシュ内で使用不能にするので、これらがアクセスされるべき時には、速度が遅い非キャッシュ動作を行わなければならない点で、不都合と思われるかもしれない。しかしながら、驚くべきことに、無効記憶動作が１回起こると、後続の動作ではいずれの場合でも、当該キャッシュ記憶ライン全体および多くの他の周囲のキャッシュ記憶ラインを、異なるデータと交換しなければならない、或いは交換する原因となる可能性が高いことが、実際に発見された。したがって、１つのデータワードではなく複数のデータワードを無効にしても、実際のパフォーマンス損失は比較的少なく、１クロック周期を出力データの発生とキャッシュメモリ内への記憶とに用いることができ、しかもライトバッファをキャッシュに備えなければならない複雑性、即ち各データワードに「ダーティ」ビットを設けるサイズ面の不利を回避することができる、システムを提供することが可能となる。
【００１４】
複数の出力データワードを記憶するためのキャッシュ記憶ラインは、典型的に回路構造内のラインとして配されるが、必ずしもこうしなければならない訳ではないことは認められよう。キャッシュ記憶ラインという用語は、何等かの方法で共に集合化或いは関連付けされた１組の記憶素子を意味すると考えることができる。更に、単一の無効ラインフラグを用いて無効記憶動作をマークすることの利点として、この無効ラインフラグは典型的に既にキャッシュメモリシステムに設けられており、当該システム内の他の記憶素子内から有効データが特定のキャッシュラインに記憶されたことを示すために、ある段階において用いられていることも認められよう。したがって、無効ラインフラグは、キャッシュの初期化とキャッシュ内の無効記憶動作のマーク付けという、２つの目的のために有効に用いることができる。
【００１５】
無効記憶信号を発生することに加えて、メモリ管理手段は、前記中央処理装置によって発生された前記出力データワードを物理アドレスに記憶するための仮想アドレスをマッピングする作用を行うこともできるという別の利点がある。
【００１６】
無効記憶信号を発生する機能を設けるためには、前記メモリ管理手段は、出力データワードを有効に前記キャッシュメモリに記憶することができる物理アドレスを指示する、キャッシュ記憶ルックアップテーブルを含むことが好ましい。
【００１７】
このようなキャッシュ記憶ルックアップテーブルは、有効なキャッシュ記憶動作が行われる物理アドレス（例えば、表示スクリーンマッピングアドレス）か否かを示す、便利な方法を提供するものであるが、このルックアップテーブルの動作が、処理クロック周期内に無効記憶信号を生成可能にするだけの、十分な速度を有していないという問題を伴うものではない。したがって、このような実施例は、次のクロック周期中に無効記憶動作を指示する機能が非常に有用となるものである。
【００１８】
同様に、本発明の好適実施例は、前記中央処理装置が複数の処理モードで動作可能となるものであり、
前記メモリ管理手段は、前記中央処理装置がある所与の処理モードで動作中に、出力データワードが有効に記憶できる物理アドレスを指示するモードルックアップテーブルを含む。
【００１９】
前記複数の処理モードは、例えば、マルチタスクシステムにおける様々なプロセッシングスレッドの形であっても良い、或いはオブジェクト指向プログラムにおける様々なオブジェクトの実行という形であっても良い。
【００２０】
無効記憶処理を生じ得る様々な状況に対処するためには、ＯＲゲートを設けて、前記キャッシュ記憶ルックアップテーブルと前記モードルックアップテーブルとの出力を論理的に組み合わせ、前記無効記憶信号を生成することが有利である。
【００２１】
本発明が動作する高速処理環境において、無効記憶信号が発生される時点までには既に次の処理動作に移行しているので、無効記憶処理が行われたキャッシュ記憶ラインは、その時にはアドレスバス上にはもはや存在しないことは、認められよう。
【００２２】
これに対処するためには、前記フラグセット手段は、
前記次のクロック周期中に用いられ、前記処理クロックサイクル中に記憶動作が行われた、前記キャッシュ記憶ラインの１本を識別するデータを記憶するアドレスレジスタと、
前記次のクロック周期中に、無効記憶動作を示す前記無効記憶信号によってイネーブルされ、前記アドレスレジスタによって識別された前記無効ラインフラグの１つをセットする手段と、
を含む。
【００２３】
本発明は個別の回路構成物として実施できることは認められようが、本発明を集積回路として実施することが有利であろう。これは、中央処理装置と同一集積回路上にキャッシュメモリを設けることにより、これら２構成物間に十分高速なデータ路を形成する際、特に言えることである。
【００２４】
別の観点から見た場合本発明はデータ処理方法を提供し、該方法は、
（ｉ）処理クロック周期中に、記憶するための出力データワードを発生するステップと、
（ｉｉ）前記処理クロック周期中に前記出力データワードをキャッシュメモリに記憶することにより、単一サイクル記憶動作を実行し、前記キャッシュメモリは複数のキャッシュ記憶ラインを有し、各キャッシュ記憶ラインが関連する無効ラインフラグを有し、複数の前記出力データワードを記憶可能とするステップと、
（ｉｉｉ）前記処理クロック周期に続く次のクロック周期において、キャッシュヒットが発生したか否かとは独立して、前記処理クロック周期中の前記出力データワードの前記キャッシュメモリへの記憶が無効記憶動作であったか否かを示す、無効記憶信号を発生するステップと、
（ｉｖ）前記無効記憶信号に応答して、前記無効記憶動作が行われたキャッシュ記憶ラインに関連する無効ラインフラグをセットするステップと、
から成るものである。
【００２５】
本発明の上述のおよびその他の目的、特徴および利点は、以下の例示実施例の詳細な説明を、添付図面に関連付けて読むことにより明白となろう。
【００２６】
【実施例】
図１は、ＣＰＵ４、ＭＭＵ６、キャッシュメモリ８および出力バッファ１０を有する集積回路２を示す。複数の内部バスが、集積回路２の要素を連結する。ＭＭＵ６はＣＰＵ４やキャッシュメモリ８とは異なる機能回路要素であるが、それでも集積回路２の一部として製造されることは認められよう。
【００２７】
内部データバスは以下の信号を搬送する。
【００２８】
Ｄａｔａ−キャッシュメモリ８またはバッファ１０を通じて集積回路２の外部に記憶するためにＣＰＵ４から出力される３２ビット出力（Ｄｏｕｔ）、或いはキャッシュメモリ８またはバッファ１０を通じて集積回路２の外部から復元してＣＰＵ４に入力される３２ビット入力（Ｄｉｎ）データワード。
【００２９】
ＶＡｄｄ−ＣＰＵ４によって処理されるデータワードの仮想データアドレス。
【００３０】
ＰＡｄｄ−ＭＭＵ６によって仮想データアドレスがマッピングされる物理データアドレス。
【００３１】
Ｐ−ＣＰＵ４がライトアクセスを行おうとしているデータアドレスが、動作中のＣＰＵ４の処理モードで使用可能であるかを示す、（次のクロックサイクルに）ＭＭＵ６によって生成されＣＰＵ４に供給される信号。
【００３２】
Ｂ−バッファ１０に送られた出力データワードが、実際にバッファリング可能であるか否かを示す、（次のクロックサイクルにおいて）ＭＭＵ６によって生成され、バッファ１０に供給される信号。
【００３３】
ＩＢ−無効バッファ記憶動作が生じたのでバッファ１０はそのデータを追い出さなければならないことを示す、（次のクロックサイクルにおいて）ＭＭＵ６によって生成されバッファ１０に供給される信号。
【００３４】
Ｃ−キャッシュメモリ８に記憶されているデータワードが適切に記憶されたのか否かを示す、（次のクロックサイクルにおいて）ＭＭＵ６によって生成されＣＰＵ４に供給される信号。
【００３５】
ＩＣ−無効キャッシュ記憶動作が生じたのでキャッシュメモリ８はそのデータを追い出さなければならないことを示す、（次のクロックサイクルにおいて）ＭＭＵ６によって生成されキャッシュメモリ８に供給される信号。
【００３６】
動作中、ＣＰＵ４は、出力データワードＤｏｕｔとそのデータワードを記憶すべき仮想アドレスＶＡｄｄとを生成する。次に、ＭＭＵ６は仮想アドレスＶＡｄｄを物理アドレスＰＡｄｄに変換し、この物理アドレスＰＡｄｄ上でルックアップ動作を行い、そのアドレスがバッファリング可能で、キャッシュ可能であるか、そしてＣＰＵ４が与えられた処理モードでそれにアクセスすべきか否かを判断する。物理アドレスＰＡｄｄは、出力データワードＤｏｕｔおよび仮想アドレスＰＡｄｄが生成されるのと同一クロックサイクルにおいて生成される。その記憶処理に関するＭＭＵ６からの他の信号は、次のクロックサイクルにおいて生成される。
【００３７】
キャッシュメモリ８（命令およびデータキャッシュ−ＩＤＣａｃｈｅ）は、物理アドレスＰＡｄｄおよび出力データワードＤｏｕｔを、それらがＣＰＵ４によって発生されたのと同一クロックサイクルで受け取り、当該物理アドレスＰＡｄｄに対するキャッシュヒットが検出されたなら、出力データワードをキャッシュ内に記憶する。
【００３８】
ＭＭＵ６が、当該キャッシュ記憶動作を無効記憶動作と判断した場合、これを示す信号ＩＣを生成し、次のクロックサイクルにおいてこれをキャッシュメモリ８に供給する。信号ＩＣは、無効記憶信号である。また、ＭＭＵ６は、このような無効記憶動作の発生時に、物理アドレスＰＡｄｄを再度キャッシュメモリ８に供給する。
【００３９】
キャッシュメモリ８は、物理アドレスＰＡｄｄによって示される１本または複数本のキャッシュライン（後に説明する）をアクセスし、それらのキャッシュラインに無効記憶フラグをセットすることによって、信号ＩＣに応答する。
【００４０】
場合によっては、MMＵ６によって生成された物理アドレスＰＡｄｄが、出力データＤｏｕｔをバッファ１０にバッファすべきであることを示すことがある。メモリ管理ユニット６が、次のクロックサイクル中に、このバッファリング動作が無効であったことを検出した場合、続いてその無効バッファ記憶信号ＩＢが確定され、バッファデータがバッファ１０から追い出される。
【００４１】
図２は、キャッシュメモリ８をより詳細に描いた概略図である。キャッシュメモリ８は、キャッシュヒットを検出する機能を果たす、４つのキャッシュタグユニット１４を含む。物理アドレスＰＡｄｄの第５ないし第１０ビットＡ［１０：５］を用いて、各キャッシュタグユニット１４中のタグライン１５を選択する。このタグライン１５の内容を、物理アドレスＰＡｄｄの第１１ないし第３１ビットＡ［３１：１１］と比較し、ヒットキャッシュを示すアドレスの一致が生じたか否かを判定する。
【００４２】
キャッシュヒットが生じていれば、これを、「ヒット」ラインを通じて、４つのキャッシュランダムアクセスメモリ（ＲＡＭ）１６の対応するバンクに知らせる。キャッシュＲＡＭ１６の適切な１つを作動させて、物理アドレスＰＡｄｄの第５ないし第１０ビットＡ［５：１０］を再び用いて、そのキャッシュＲＡＭ内の６４本のキャッシュライン１７の内１本をアドレスし選択する。キャッシュライン１７全体の内容はマルチプレクサ１８に並列に接続されており、これを用いて、物理アドレスＰＡｄｄの第２ないし第４ビットＡ［４：２］にしたがって、キャッシュライン１７に記憶されている８個のデータワードの内適切なデータワードを選択し、ライト動作を行う。
【００４３】
各出力データワードは、４バイトのデータを含む３２ビットのデータワードＤ［３１：０］である。アドレスすべき特定のバイトは、第０および第１ビットＡ［０：１］によって示される。
【００４４】
キャッシュメモリ８は、キャッシュヒットを検出するためのキャッシュタグユニット１４内のアドレスルックアップと、マルチプレクサ１８を通じた適切なキャッシュライン１７の選択およびキャッシュＲＡＭ１６内への書き込みが、単一クロック周期内に生じるように、設計されている。
【００４５】
キャッシュメモリ８からのデータの読み取り、およびキャッシュメモリ８へのデータの書き込みは、対称的な動作である。キャッシュタグユニット１４によって同じようにキャッシュヒットが検出され、異なるのはマルチプレクサ１８を介したキャッシュＲＡＭへの或いはキャッシュＲＡＭからのデータフローの方向のみである。
【００４６】
無効記憶動作が発生した状況では、これは次のクロック周期までに検出され、無効記憶信号ＩＣがＭＭＵ６によって確定される。無効記憶動作が生じた物理アドレスＰＡｄｄは、キャッシュメモリ８に再度供給される。したがって、同一キャッシュタグライン１５が物理アドレスＰＡｄｄの第５ないし第１０ビットＡ［１０：５］によって選択されると共に、これらに対する無効ラインフラグが無効記憶信号ＩＣによってセットされる。この追い出し処理の動作を高速化するために、４つのキャッシュタグユニット１４のキャッシュタグライン１５の内、第５ないし第１０ビットＡ［５：１０］と一致するもの全ての無効記憶フラグがセットされる。第１１ないし第３１ビットＡ［１１：３１］がデコードされるまで待つことによって、適切なキャッシュタグライン１５の１つの無効記憶フラグのみをセットすることも可能であるが、こうするには１クロックサイクル余分に必要となる。実際上、４つのキャッシュタグラインを一度に全て無効化することに不都合はほとんどない。
【００４７】
図３は、無効記憶信号ＩＣの発生を担うＭＭＵ６の一部を示す。出力データワードがキャッシュメモリ８に記憶するのに適切であるか、或いはその特定の処理モードによって記憶するのに適切であるか、をそれぞれ示す信号ＣおよびＰが、ＯＲゲート２０によってＯＲされる。ゲート２０の出力はラッチ２２によってラッチされると共に、フォールトアドレスレジスタ（ＦＡＲ）２４に供給される。ＦＡＲ２４は、ゲート２０の出力をライトイネーブル信号として扱い、無効記憶動作が発生したとして示された出力データワードの物理アドレスを記憶する。次のクロックサイクルにおいて、ラッチ２２内にラッチされた信号は、無効記憶信号ＩＣとして作用すると共に、ＦＡＲ２４へのリードイネーブル信号として作用し、先の物理アドレスＰＡｄｄを再度キャッシュメモリ８に供給し、前述のように追い出しを行う。
【００４８】
以上添付図面を参照しながら本発明の例示的実施例を詳細に説明したが、本発明はこれらの実施例そのものに限定される訳ではなく、添付の特許請求の範囲に規定された本発明の範囲および精神から逸脱することなく、種々の変更および改造が当業者によって行われ得ることは理解されよう。
【図面の簡単な説明】
【図１】集積回路のレイアウトおよび相互接続を概略的に示す図。
【図２】図１の回路のキャッシュメモリを概略的に示す図。
【図３】図１の回路のメモリ管理ユニットの一部を概略的に示す図。
【符号の説明】
２    集積回路
４    ＣＰＵ
６    ＭＭＵ
８    キャッシュメモリ
１０    出力バッファ
１４    キャッシュタグユニット
１５    タグライン
１６    キャッシュランダムアクセスメモリ
１７    キャッシュライン
２０    ゲート
２２    ラッチ
【図１】
0003971807.tif 000002
【図２】
0003971807.tif 000003
【図３】
0003971807.tif 000004