JPH02184946A - キヤツシユ・バイパス装置 - Google Patents
キヤツシユ・バイパス装置Info
- Publication number
- JPH02184946A JPH02184946A JP1276179A JP27617989A JPH02184946A JP H02184946 A JPH02184946 A JP H02184946A JP 1276179 A JP1276179 A JP 1276179A JP 27617989 A JP27617989 A JP 27617989A JP H02184946 A JPH02184946 A JP H02184946A
- Authority
- JP
- Japan
- Prior art keywords
- cache
- data
- processor
- buffer
- storage
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/70—Masking faults in memories by using spares or by reconfiguring
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0844—Multiple simultaneous or quasi-simultaneous cache accessing
- G06F12/0846—Cache with multiple tag or data arrays being simultaneously accessible
- G06F12/0848—Partitioned cache, e.g. separate instruction and operand caches
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0844—Multiple simultaneous or quasi-simultaneous cache accessing
- G06F12/0855—Overlapped cache accessing, e.g. pipeline
- G06F12/0859—Overlapped cache accessing, e.g. pipeline with reload from main memory
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0888—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using selective caching, e.g. bypass
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
A、産業上の利用分野
本発明はキャッシュ及びより低速の記憶装置の間のデー
タの緩衝記憶、特にバッファからホストにデータを直接
に供給する装置及び方法に関する。
タの緩衝記憶、特にバッファからホストにデータを直接
に供給する装置及び方法に関する。
B、従来技術及びその問題点
極めて高速にデータをプロセッサに供給するため長期に
わたって記憶キャッシュが使用されている。データが供
給される速度、及びキャッシュの価格はどちらも上昇し
ているので、大きなキャッシュの取得は高価である0通
常、キャッシュはより低速のランダム・アクセス・メモ
リ例えば大容量主記憶装置とプロセッサの間に設置され
る。従来技術のシステムでは、小容量のバッファがキャ
ッシュと主記憶装置の間に設置されているものがある。
わたって記憶キャッシュが使用されている。データが供
給される速度、及びキャッシュの価格はどちらも上昇し
ているので、大きなキャッシュの取得は高価である0通
常、キャッシュはより低速のランダム・アクセス・メモ
リ例えば大容量主記憶装置とプロセッサの間に設置され
る。従来技術のシステムでは、小容量のバッファがキャ
ッシュと主記憶装置の間に設置されているものがある。
米国特許第4189770号及び同第3820078号
に開示されているように、データをキャッシュに書込む
と同時にプロセッサに供給するためにバッファが使用さ
れている。このように、プロセッサはデータがキャッシ
ュに書込まれるまで待たなくてもよい、この方法は、バ
ッファからキャッシュへのデータの書込みが終るまで、
キャッシュはそれ以上の記憶要求について引き続き動作
できないのが欠点である。
に開示されているように、データをキャッシュに書込む
と同時にプロセッサに供給するためにバッファが使用さ
れている。このように、プロセッサはデータがキャッシ
ュに書込まれるまで待たなくてもよい、この方法は、バ
ッファからキャッシュへのデータの書込みが終るまで、
キャッシュはそれ以上の記憶要求について引き続き動作
できないのが欠点である。
キャッシュに関連した他の問題は動作不能になるキャッ
シュの部分を含むことである。もし主記憶装置内の記憶
の範囲に対応するキャッシュの部分が故障すれば、キャ
ッシュはその記憶の範囲については動作しない、このよ
うな場合、米国特許第3800292号、同第4464
717号及び同第3820078号並びに”キャッシュ
再構成(cache Reconfiguration
)、I8M T、DB Vol、23.No、9゜19
81年2月に開示されているように、キャッシュの故障
部分は除外され使用されない、該IBM TDBでは、
キャッシュの予備の部分が写像され故障した部分を置き
換えることができる。しかしながら、使用可能な予備の
部分がなくなれば、該キャッシュは使用できない。
シュの部分を含むことである。もし主記憶装置内の記憶
の範囲に対応するキャッシュの部分が故障すれば、キャ
ッシュはその記憶の範囲については動作しない、このよ
うな場合、米国特許第3800292号、同第4464
717号及び同第3820078号並びに”キャッシュ
再構成(cache Reconfiguration
)、I8M T、DB Vol、23.No、9゜19
81年2月に開示されているように、キャッシュの故障
部分は除外され使用されない、該IBM TDBでは、
キャッシュの予備の部分が写像され故障した部分を置き
換えることができる。しかしながら、使用可能な予備の
部分がなくなれば、該キャッシュは使用できない。
C1発明の概要
キャッシュ及びより低速の記憶装置の間でバッファが用
いられる。プロセッサがデータを要求すると、キャッシ
ュが検査され、データが既にキャッシュにあるかどうか
を調べる。もしないならば、データの要求はより低速の
記憶装置に送られる。
いられる。プロセッサがデータを要求すると、キャッシ
ュが検査され、データが既にキャッシュにあるかどうか
を調べる。もしないならば、データの要求はより低速の
記憶装置に送られる。
バッファはより低速の記憶装置からデータを受取り、デ
ータを要求したプロセッサに供給する。もしプロセッサ
からの別個の記憶要求についてキャッシュが動作中でな
ければ、バッファはデータをキャッシュに供給して記憶
させる。前記要求からキャッシュが解放されると、バッ
ファからキャッシュにデータが書込まれる。
ータを要求したプロセッサに供給する。もしプロセッサ
からの別個の記憶要求についてキャッシュが動作中でな
ければ、バッファはデータをキャッシュに供給して記憶
させる。前記要求からキャッシュが解放されると、バッ
ファからキャッシュにデータが書込まれる。
後続の要求に対応するデータをバッファが保持していれ
ば、バッファは前記データを供給することができる。こ
れは、もし同じデータの要求が生じ、バッファが該デー
タをまだキャッシュに書込んでいなければ起こるかも知
れない、また、何らかの理由で、より低速の領域からの
データを保持できるキャッシュの領域がもし動作不能で
あれば紀きることもある。このように、バッファはミニ
キャッシュとして動作する。
ば、バッファは前記データを供給することができる。こ
れは、もし同じデータの要求が生じ、バッファが該デー
タをまだキャッシュに書込んでいなければ起こるかも知
れない、また、何らかの理由で、より低速の領域からの
データを保持できるキャッシュの領域がもし動作不能で
あれば紀きることもある。このように、バッファはミニ
キャッシュとして動作する。
本発明は従来技術に比し幾つかの利点を有する。
最初に5より低速の記憶装置からバッファが受取ったデ
ータは直ちにキャッシュに書込む必要がないから、キャ
ッシュはプロセッサからの他の読取り又は書込み要求に
自由にサービスすることができる。データはキャッシュ
が前記能の要求から解放されているときにキャッシュに
書込まれる。これは最適のサービスをプロセッサに提供
するようにキャッシュを解放する。
ータは直ちにキャッシュに書込む必要がないから、キャ
ッシュはプロセッサからの他の読取り又は書込み要求に
自由にサービスすることができる。データはキャッシュ
が前記能の要求から解放されているときにキャッシュに
書込まれる。これは最適のサービスをプロセッサに提供
するようにキャッシュを解放する。
まだキャッシュに書込まれていないデータについてバッ
ファは異なるミニキャッシュとしても動作する。1つの
良好な実施例では、バッファは完全な1ぺ−ジのデータ
を保持するのに十分な大きさである。要求されたデータ
を供給した後、バッファはより低速の記憶装置からの完
全な1ページのデータを含む、このデータはキャッシュ
への書込みを待っている。この期間中、キャッシュ及び
バッファ双方からの更に切迫した要求が満たされる。デ
ータの書込みは遅延されるが、最新(mostrece
ntly used)のデータのページはまだバッファ
から入手可能である。該ページはたぶん更に要求される
データを含む見込みのあるページである。
ファは異なるミニキャッシュとしても動作する。1つの
良好な実施例では、バッファは完全な1ぺ−ジのデータ
を保持するのに十分な大きさである。要求されたデータ
を供給した後、バッファはより低速の記憶装置からの完
全な1ページのデータを含む、このデータはキャッシュ
への書込みを待っている。この期間中、キャッシュ及び
バッファ双方からの更に切迫した要求が満たされる。デ
ータの書込みは遅延されるが、最新(mostrece
ntly used)のデータのページはまだバッファ
から入手可能である。該ページはたぶん更に要求される
データを含む見込みのあるページである。
本発明のもう1つの利点はキャッシュからデータを読取
る際に誤りが起きる時に生じる。キャッシュ・ディレク
トリは有効なデータを供給していないキャッシュの部分
を追跡する。より低速の記憶装置の部分に対応するキャ
ッシュの全ての部分がもし動作不能であれば、バッファ
は当該部分についてキャッシュに類似の性能を提供する
。システムへの唯一の影響は、良好な実施例でバッファ
はキャッシュ部分よりも小さく、従って完全に動作する
キャッシュが提供する性能を満たさないことである。そ
れでもなおバッファはキャッシュが修理されるまで貴重
な′正常′動作を提供する。
る際に誤りが起きる時に生じる。キャッシュ・ディレク
トリは有効なデータを供給していないキャッシュの部分
を追跡する。より低速の記憶装置の部分に対応するキャ
ッシュの全ての部分がもし動作不能であれば、バッファ
は当該部分についてキャッシュに類似の性能を提供する
。システムへの唯一の影響は、良好な実施例でバッファ
はキャッシュ部分よりも小さく、従って完全に動作する
キャッシュが提供する性能を満たさないことである。そ
れでもなおバッファはキャッシュが修理されるまで貴重
な′正常′動作を提供する。
D、実施例
第1図は多重レベル記憶階層システム10を示す、CP
U (中央演算処理装置(単にプロセッサとも呼ぶ))
12は複数のバスによってデータ、アドレス及び命令を
送受する。Iバス14は命令キャッシュ16とプロセッ
サ12の間の命令の転送に用いられる。 EA (有効
アドレス)バス18は命令及びデータのアドレスの伝達
に用いられる。
U (中央演算処理装置(単にプロセッサとも呼ぶ))
12は複数のバスによってデータ、アドレス及び命令を
送受する。Iバス14は命令キャッシュ16とプロセッ
サ12の間の命令の転送に用いられる。 EA (有効
アドレス)バス18は命令及びデータのアドレスの伝達
に用いられる。
C(コマンド)バス19は、参照番号21で示すエレメ
ントを含むデータ・キャッシュ機構への記憶コマンドの
伝達に用いられる。D(データ)バス20はデータ・キ
ャッシュ22.インページ・バッファ24及びデータ記
憶バッファ26に結合される。データ記憶バッファ26
.インページ・バッファ24及び命令キャッシュ16は
全て記憶バス30を介してメモリ28に結合される。
CHD/ADDR(コマンド/アドレス)バス31はデ
ータDLAT34及び命令DLAT38 (DLATは
ルックアサイド変換機構の略号)からメモリ28へのコ
マンド及びアドレスの伝達に用いられる。
ントを含むデータ・キャッシュ機構への記憶コマンドの
伝達に用いられる。D(データ)バス20はデータ・キ
ャッシュ22.インページ・バッファ24及びデータ記
憶バッファ26に結合される。データ記憶バッファ26
.インページ・バッファ24及び命令キャッシュ16は
全て記憶バス30を介してメモリ28に結合される。
CHD/ADDR(コマンド/アドレス)バス31はデ
ータDLAT34及び命令DLAT38 (DLATは
ルックアサイド変換機構の略号)からメモリ28へのコ
マンド及びアドレスの伝達に用いられる。
ユニ・プロセッサとして動作する場合にはメモリ28は
典型的な主記憶装置に対応し、キャッシュに用いられる
メモリよりもかなり低速である。
典型的な主記憶装置に対応し、キャッシュに用いられる
メモリよりもかなり低速である。
もし情報がキャッシュ内にあれば、キャッシュ内のデー
タ及び命令はずっと速くプロセッサ12に供給される。
タ及び命令はずっと速くプロセッサ12に供給される。
この条件はデータ・キャッシュ22についてはデータ・
ディレクトリ32及びデータDLAT34によって判定
される。命令キャッシュ16については命令ディレクト
リ36及び命令DLAT38が判定する。
ディレクトリ32及びデータDLAT34によって判定
される。命令キャッシュ16については命令ディレクト
リ36及び命令DLAT38が判定する。
多重プロセッサとして動作する場合には、もう1つのキ
ャッシュ40が設置され、同様に構成されたプロセッサ
によって共用される。2番目のキャッシュは更に容量の
大きい主記憶装置、メモリ42に結合される。記憶バス
30を介したメモリ28又はキャッシュ40の間のイン
タフェース(後述)は殆ど同じである。
ャッシュ40が設置され、同様に構成されたプロセッサ
によって共用される。2番目のキャッシュは更に容量の
大きい主記憶装置、メモリ42に結合される。記憶バス
30を介したメモリ28又はキャッシュ40の間のイン
タフェース(後述)は殆ど同じである。
動作で、プロセッサ12は命令キャッシュ16から命令
を取出す、命令は■バス14によりプロセッサ12に渡
される。命令を復号した後、プロセッサ12はCバス1
9を介して記憶コマンドをデータ・キャッシュ機構21
に送る。同時に、プロセッサ12はEAババス8により
記憶アドレスをデータ・キャッシュ機構21に送り出す
、記憶コマンド及びアドレスを受取ると、データ・キャ
ッシュ機構21はデータDLAT34及びデータ・ディ
レクトリ32を通じて探索し、要求されたデータがデー
タ・キャッシュ22にあるかどうかを判定する。もしキ
ャッシュ・ヒツトがあれば、一般にオペランド(命令は
オペランドで動作する)と呼ばれるデータがDバス20
によりプロセッサ12に返送される。キャッシュ・ミス
の場合、データは主記憶装置28又は第2レベルのキャ
ッシュ40から得られる。更に、主記憶装置28の参照
は主記憶装置28、又はメモリ42に関連した第2レベ
ルのキャッシュ40を意味するものとみなされる。
を取出す、命令は■バス14によりプロセッサ12に渡
される。命令を復号した後、プロセッサ12はCバス1
9を介して記憶コマンドをデータ・キャッシュ機構21
に送る。同時に、プロセッサ12はEAババス8により
記憶アドレスをデータ・キャッシュ機構21に送り出す
、記憶コマンド及びアドレスを受取ると、データ・キャ
ッシュ機構21はデータDLAT34及びデータ・ディ
レクトリ32を通じて探索し、要求されたデータがデー
タ・キャッシュ22にあるかどうかを判定する。もしキ
ャッシュ・ヒツトがあれば、一般にオペランド(命令は
オペランドで動作する)と呼ばれるデータがDバス20
によりプロセッサ12に返送される。キャッシュ・ミス
の場合、データは主記憶装置28又は第2レベルのキャ
ッシュ40から得られる。更に、主記憶装置28の参照
は主記憶装置28、又はメモリ42に関連した第2レベ
ルのキャッシュ40を意味するものとみなされる。
1つの実施例では、64バイトのデータのライン(ペー
ジとも呼ばれる)はメモリ28から記憶バス30を介し
てデータ・キャッシュ機構21に返送される。良好な実
施例では1ページのデータが転送される。なぜなら次に
要求されるデータも多分同じページに含まれるからであ
る。データのインページを完成するには8転送を要する
。最初の転送はプロセッサ12が要求したダブルワード
(8,8ビツト・バイト)を含む、データ・キャッシュ
機構21は最初のデータ転送を受取ると直ちに、受取っ
たデータをDバス20を介してプロセッサ12に返送す
る。同時に、データはインページ・バッファ24にも書
込まれる。事実、インページ・データの残りは最初にイ
ンページ・バッファ24に書込まれる。プロセッサ12
はデータを受取ると直ちに、次の記憶コマンドをデータ
・キャッシュ機構21に送り始める。データ・キャッシ
ュ機構21は次の記憶要求を処理する。なぜなら、キャ
ッシュ22は該インページとは関連づけられていないか
らである。インページ・バッファ24からのデータは、
データ・キャッシュ機構21がそれ以上処理すべき記憶
要求がないときだけ、キャッシュ22に書き戻される。
ジとも呼ばれる)はメモリ28から記憶バス30を介し
てデータ・キャッシュ機構21に返送される。良好な実
施例では1ページのデータが転送される。なぜなら次に
要求されるデータも多分同じページに含まれるからであ
る。データのインページを完成するには8転送を要する
。最初の転送はプロセッサ12が要求したダブルワード
(8,8ビツト・バイト)を含む、データ・キャッシュ
機構21は最初のデータ転送を受取ると直ちに、受取っ
たデータをDバス20を介してプロセッサ12に返送す
る。同時に、データはインページ・バッファ24にも書
込まれる。事実、インページ・データの残りは最初にイ
ンページ・バッファ24に書込まれる。プロセッサ12
はデータを受取ると直ちに、次の記憶コマンドをデータ
・キャッシュ機構21に送り始める。データ・キャッシ
ュ機構21は次の記憶要求を処理する。なぜなら、キャ
ッシュ22は該インページとは関連づけられていないか
らである。インページ・バッファ24からのデータは、
データ・キャッシュ機構21がそれ以上処理すべき記憶
要求がないときだけ、キャッシュ22に書き戻される。
記憶動作の場合には、プロセッサ12は記憶されるデー
タをDパス20を介してデータ・キャッシュ機構21に
送る。この場合も、データ・ディレクトリ32及び変換
機構(データDLAT)34はキャッシュ・ヒツト又は
キャッシュ・ミスを探し、もし該当ページがキャッシュ
にあれば、データはキャッシュ22及び記憶バッファ2
6に記憶される。もしそれがキャッシュ・ミスであれば
、記憶データは記憶バッファにだけ記憶される。どちら
の場合にも、記憶バス30が空いている限り、データは
記憶バッファ26からメモリ28に書込まれる。これは
記憶バス30はデータ又は命令のどちらのキャッシュ・
インページ動作にも関連づけられていないことを意味す
る。
タをDパス20を介してデータ・キャッシュ機構21に
送る。この場合も、データ・ディレクトリ32及び変換
機構(データDLAT)34はキャッシュ・ヒツト又は
キャッシュ・ミスを探し、もし該当ページがキャッシュ
にあれば、データはキャッシュ22及び記憶バッファ2
6に記憶される。もしそれがキャッシュ・ミスであれば
、記憶データは記憶バッファにだけ記憶される。どちら
の場合にも、記憶バス30が空いている限り、データは
記憶バッファ26からメモリ28に書込まれる。これは
記憶バス30はデータ又は命令のどちらのキャッシュ・
インページ動作にも関連づけられていないことを意味す
る。
記憶動作が開始されると、記憶アドレスは参照番号46
で示す命令キャッシュ機構に関連した命令記憶バッファ
44にも書込まれる。これは記憶動作後に取出される全
ての後続する命令とインターロックさせるのに用いられ
る。記憶バッファ44内の命令取出しアドレスと記憶ア
ドレスを比較し、もし一致すれば、命令キャッシュ16
にある命令は変更されている。そのとき、該命令は破棄
され、新しい命令がメモリ28から取出される。
で示す命令キャッシュ機構に関連した命令記憶バッファ
44にも書込まれる。これは記憶動作後に取出される全
ての後続する命令とインターロックさせるのに用いられ
る。記憶バッファ44内の命令取出しアドレスと記憶ア
ドレスを比較し、もし一致すれば、命令キャッシュ16
にある命令は変更されている。そのとき、該命令は破棄
され、新しい命令がメモリ28から取出される。
データ・キャッシュ機構21の場合のように。
命令変換機構(命令DLAT) 38及びディレクトリ
36は並行して命令キャッシュ16でヒツト又はミスを
探索される。もしキャッシュ・ヒツトがあれば、命令バ
ス14によって命令がプロセッサ12に渡される。もし
キャッシュ・ミスがあれば、メモリ28からのインペー
ジが生ずる。64バイトの命令は記憶バス30によって
命令キャッシュ16にインページされる。最初のインペ
ージの転送はプロセッサ12が要求した命令を含む、そ
して命令は順次にプロセッサ12に渡される。
36は並行して命令キャッシュ16でヒツト又はミスを
探索される。もしキャッシュ・ヒツトがあれば、命令バ
ス14によって命令がプロセッサ12に渡される。もし
キャッシュ・ミスがあれば、メモリ28からのインペー
ジが生ずる。64バイトの命令は記憶バス30によって
命令キャッシュ16にインページされる。最初のインペ
ージの転送はプロセッサ12が要求した命令を含む、そ
して命令は順次にプロセッサ12に渡される。
1つの実施例ではデータ・キャッシュ22及び命令キャ
ッシュ16は同一である。それらの論理的なレイアウト
を第2図に示す、データ・キャッシュ22は16にバイ
トの命令から成る。命令キャッシュ16も16にバイト
の命令から成る。それらは干渉なしに相互に同時にア・
クセスすることができる。各々のキャッシュはスロット
当り64ページを有する4つのスロットに分割される。
ッシュ16は同一である。それらの論理的なレイアウト
を第2図に示す、データ・キャッシュ22は16にバイ
トの命令から成る。命令キャッシュ16も16にバイト
の命令から成る。それらは干渉なしに相互に同時にア・
クセスすることができる。各々のキャッシュはスロット
当り64ページを有する4つのスロットに分割される。
各ページは64バイト(8ダブルワード)のデータ又は
命令を含む、更に、データ・キャッシュ22は64バイ
トの完全なページ(キャッシュ・ラインとも呼ばれる)
を保持するインページ・バッファ24も含む。
命令を含む、更に、データ・キャッシュ22は64バイ
トの完全なページ(キャッシュ・ラインとも呼ばれる)
を保持するインページ・バッファ24も含む。
各キャッシュは対応するディレクトリを通じてアクセス
される。データ・ディレクトリ32はデータ・キャッシ
ュ22に対応し命令ディレクトリ36は命令キャッシュ
16に対応する。ディレクトリは第3図に示すように4
つのスロットに分割される。スロット当り64の合同ク
ラスがある。
される。データ・ディレクトリ32はデータ・キャッシ
ュ22に対応し命令ディレクトリ36は命令キャッシュ
16に対応する。ディレクトリは第3図に示すように4
つのスロットに分割される。スロット当り64の合同ク
ラスがある。
各合同クラスの各スロットはキャッシュ内のデータのペ
ージのアドレスを識別する。ディレクトリ内の各スロッ
トの内容は合同クラス毎に絶対アドレス・ビット4−1
9を含む、変換機構(34又は38)はEAババス8の
ビット 1−19を絶対アドレス・ビット4−19に写
像する。 EAババス8のビット20−31は常に絶対
アドレス・ビット 20−31に等しい、変換機構(3
4又は38)がどのように動作するかは後で説明する。
ージのアドレスを識別する。ディレクトリ内の各スロッ
トの内容は合同クラス毎に絶対アドレス・ビット4−1
9を含む、変換機構(34又は38)はEAババス8の
ビット 1−19を絶対アドレス・ビット4−19に写
像する。 EAババス8のビット20−31は常に絶対
アドレス・ビット 20−31に等しい、変換機構(3
4又は38)がどのように動作するかは後で説明する。
記憶袋M28は絶対アドレスビット4−28によっての
みアドレス指定される。絶対アドレス・ビット29−3
1は記憶装置28のアドレス指定には使用されない、な
ぜなら記憶装置28は8バイト毎にまとめてアドレス指
定されるからである。絶対アドレスのビット4は記憶装
置28をアドレス指定する最上位ビットであるから、デ
ィレクトリは記憶装置28の256Hバイトまでサポー
トすることができる0合同クラス毎に4セツトの状況ビ
ットもあり、各セットの2つの状況ビットは対応するス
ロットに関連する。状況ビットの各セットは無効(I)
ビット及び不良(B)ビットを含む。
みアドレス指定される。絶対アドレス・ビット29−3
1は記憶装置28のアドレス指定には使用されない、な
ぜなら記憶装置28は8バイト毎にまとめてアドレス指
定されるからである。絶対アドレスのビット4は記憶装
置28をアドレス指定する最上位ビットであるから、デ
ィレクトリは記憶装置28の256Hバイトまでサポー
トすることができる0合同クラス毎に4セツトの状況ビ
ットもあり、各セットの2つの状況ビットは対応するス
ロットに関連する。状況ビットの各セットは無効(I)
ビット及び不良(B)ビットを含む。
■ビットはキャッシュ・ラインの妥当性を表わす。
データ又は命令をプロセッサ12に返送できるのは当該
ラインのエビットがオフのときだけである。
ラインのエビットがオフのときだけである。
Bビットはキャッシュ・ラインの有用性を表わすのに使
用される。もしBビットが1にセットされれば、当該ペ
ージの物理位置を決めた回路が不良であり且つ当該ペー
ジは、キャッシュ又はディレクトリ・アレイのどちらに
あっても、もはや使用できないことを表わす。
用される。もしBビットが1にセットされれば、当該ペ
ージの物理位置を決めた回路が不良であり且つ当該ペー
ジは、キャッシュ又はディレクトリ・アレイのどちらに
あっても、もはや使用できないことを表わす。
電源オンの時、全てのBビットは最初はオフにセットさ
れる。データ・キャッシュ又はそのディレクトリのどち
らかでパリティ検査誤りが検出されると、ハードウェア
割込みが第1図のサポート・プロセッサ48に故障を知
らせる。サポート・プロセッサはLAN49によりサポ
ート・バス・アダプタ50を介してシステム10に結合
される。
れる。データ・キャッシュ又はそのディレクトリのどち
らかでパリティ検査誤りが検出されると、ハードウェア
割込みが第1図のサポート・プロセッサ48に故障を知
らせる。サポート・プロセッサはLAN49によりサポ
ート・バス・アダプタ50を介してシステム10に結合
される。
システム10とアダプタ50の間は共用のDMA(直接
記憶アクセス)接続が使用される。サポート・プロセッ
サ48は回復マイクロコードを呼出して影響を受けたキ
ャッシュ・ラインを決定し、第4図に示すように故障し
ているキャッシュ・ラインのBビットをオンにセットす
る。主記憶装置は常にキャッシュ・ページのバックアッ
プ・コピーを有するから、’ BAD’の標識を付され
たときのキャッシュ・ラインの喪失はシステム動作の完
全性には影響しない、失われたキャッシュ・ラインを主
記憶装置28から回復することによりシステムは動作を
続行することができる。サポート・プロセッサ48に境
界値が維持され、削除されたキャッシュ・ラインの数が
多すぎないかどうかを判定する。サービス延期要求はこ
のような場合に出される。電源オンの時、全てのエビッ
トも最初に1にセットされる。64バイトのページ全体
のデータ・キャッシュ機構21への書込みが終ると。
記憶アクセス)接続が使用される。サポート・プロセッ
サ48は回復マイクロコードを呼出して影響を受けたキ
ャッシュ・ラインを決定し、第4図に示すように故障し
ているキャッシュ・ラインのBビットをオンにセットす
る。主記憶装置は常にキャッシュ・ページのバックアッ
プ・コピーを有するから、’ BAD’の標識を付され
たときのキャッシュ・ラインの喪失はシステム動作の完
全性には影響しない、失われたキャッシュ・ラインを主
記憶装置28から回復することによりシステムは動作を
続行することができる。サポート・プロセッサ48に境
界値が維持され、削除されたキャッシュ・ラインの数が
多すぎないかどうかを判定する。サービス延期要求はこ
のような場合に出される。電源オンの時、全てのエビッ
トも最初に1にセットされる。64バイトのページ全体
のデータ・キャッシュ機構21への書込みが終ると。
対応するキャッシュ・ページはIビットがOにセットさ
れる。これはキャッシュ・ページが有効であることを表
わす。
れる。これはキャッシュ・ページが有効であることを表
わす。
システムのデータフローの詳細を第5図に示す。
第5図に示す参照番号は第1図の場合と一致する。
プロセッサ12が取出し動作を開始すると、記憶アドレ
スはEAババス8に現われる。 EAババス8はアドレ
ス・ビット 1−31を有する31ビット幅である。デ
ータ・キャッシュ機構21がアドレスを受取ると直ちに
、ビット 14−19は変換機構34のアドレス指定に
用いられ、ビット 20−25はディレクトリ32の合
同クラスのアドレス指定に使用され、ビット26−28
はキャッシュのアドレス指定に使用される。ビット 2
9−31はアドレス指定された22のキャッシュ・ライ
ンのダブルワードのバイトを識別する。変換機構、ディ
レクトリ及びキャッシュのアクセスは全て並行して行な
われる。変換機構の出力は比較機構60でEAババス8
のアドレス・ビット 1−13と比較するのに使用され
る。
スはEAババス8に現われる。 EAババス8はアドレ
ス・ビット 1−31を有する31ビット幅である。デ
ータ・キャッシュ機構21がアドレスを受取ると直ちに
、ビット 14−19は変換機構34のアドレス指定に
用いられ、ビット 20−25はディレクトリ32の合
同クラスのアドレス指定に使用され、ビット26−28
はキャッシュのアドレス指定に使用される。ビット 2
9−31はアドレス指定された22のキャッシュ・ライ
ンのダブルワードのバイトを識別する。変換機構、ディ
レクトリ及びキャッシュのアクセスは全て並行して行な
われる。変換機構の出力は比較機構60でEAババス8
のアドレス・ビット 1−13と比較するのに使用され
る。
変換機構34はアソシアティビティ・クラス当り64ペ
ージを有する両方向のアソシアティブにより設計される
。変換機構34の各ページは4にバイトのデータから成
る。2つのアソシアティビティ・クラスのどの出力がE
Aババスアドレス・ビット1−13と一致しても、その
対応する絶対アドレス、ビット4−19はディレクトリ
32からの参照された合同クラスの4つのスロットにあ
る内容(絶対アドレス・ビット4−19)との比較に用
いられる。
ージを有する両方向のアソシアティブにより設計される
。変換機構34の各ページは4にバイトのデータから成
る。2つのアソシアティビティ・クラスのどの出力がE
Aババスアドレス・ビット1−13と一致しても、その
対応する絶対アドレス、ビット4−19はディレクトリ
32からの参照された合同クラスの4つのスロットにあ
る内容(絶対アドレス・ビット4−19)との比較に用
いられる。
ディレクトリのスロット内の4つのセットのアドレスの
1つが変換機構34からの絶対アドレスともし一致すれ
ば、スロット・ヒツトが生成される。
1つが変換機構34からの絶対アドレスともし一致すれ
ば、スロット・ヒツトが生成される。
同時に、キャッシュ出力からの4つのセットのデータ(
スロット当り8バイト)は全てラッチされる。そして一
致したスロットのデータは61で選択され、データ・バ
ス20を介してプロセッサ12に返送される1合計して
5計算機サイクルがプロセッサ12内の局所記憶の更新
に使用され、取出しデータは第6図のタイミング図に示
すように命令復号から始まる。
スロット当り8バイト)は全てラッチされる。そして一
致したスロットのデータは61で選択され、データ・バ
ス20を介してプロセッサ12に返送される1合計して
5計算機サイクルがプロセッサ12内の局所記憶の更新
に使用され、取出しデータは第6図のタイミング図に示
すように命令復号から始まる。
第6図はキャッシュ・ヒツト、換言すれば、要求された
データがキャッシュ内にある場合のタイミング図である
。実行される活動は図の左欄に、サイクル番号は図の上
部に表示されている。プロセッサ12は先ずサイクル1
で命令を復号しオペランド又はデータを識別する。命令
復号から生ずる記憶コマンドはサイクル2でCバス19
に乗せられ、サイクル3でCバスREGIにラッチされ
る。
データがキャッシュ内にある場合のタイミング図である
。実行される活動は図の左欄に、サイクル番号は図の上
部に表示されている。プロセッサ12は先ずサイクル1
で命令を復号しオペランド又はデータを識別する。命令
復号から生ずる記憶コマンドはサイクル2でCバス19
に乗せられ、サイクル3でCバスREGIにラッチされ
る。
バスREGIは変換機構34、ディレクトリ32及びキ
ャッシュ22に配設される。サイクル2で、記憶アドレ
スが生成され、EAババス8に現われる、サイクル3で
、変換機構34、ディレクトリ32及びキャッシュ22
は該アドレスによりアクセス中である。データはサイク
ル4でデータ・バス20に現われ、サイクル5でプロセ
ッサ12によりデータ・レジスタから受取られラッチさ
れる。
ャッシュ22に配設される。サイクル2で、記憶アドレ
スが生成され、EAババス8に現われる、サイクル3で
、変換機構34、ディレクトリ32及びキャッシュ22
は該アドレスによりアクセス中である。データはサイク
ル4でデータ・バス20に現われ、サイクル5でプロセ
ッサ12によりデータ・レジスタから受取られラッチさ
れる。
、ぐ 、5
変換機構34からの絶対アドレスがディレクトリ32の
参照された合同クラスからのどの1つのスロットとも一
致しない場合、又はもし一致したスロットはあるが、一
致したスロットのエビットないしはBビットのどちらか
がオンであれば、キャッシュ・ミスは比較機構/制御袋
w60により生成される。所望のデータの開始アドレス
を含むインページ要求が変換機構34によりCMD/A
DDRバス31を介して記憶装置28に送られる。記憶
装置28はそのアクセスを制御する適切な制御回路を含
み、64バイトのデータのライン即ちページをデータ・
キャッシュ機構21に戻すことによりインページ要求に
応答する。記憶装置28内の実際のページ境界にかかわ
らず、要求されたデータが最初に戻され、そしてページ
の残りが送られ。
参照された合同クラスからのどの1つのスロットとも一
致しない場合、又はもし一致したスロットはあるが、一
致したスロットのエビットないしはBビットのどちらか
がオンであれば、キャッシュ・ミスは比較機構/制御袋
w60により生成される。所望のデータの開始アドレス
を含むインページ要求が変換機構34によりCMD/A
DDRバス31を介して記憶装置28に送られる。記憶
装置28はそのアクセスを制御する適切な制御回路を含
み、64バイトのデータのライン即ちページをデータ・
キャッシュ機構21に戻すことによりインページ要求に
応答する。記憶装置28内の実際のページ境界にかかわ
らず、要求されたデータが最初に戻され、そしてページ
の残りが送られ。
続いて要求されたデータまでのページが開始される、デ
ータ・キャッシュ機構21は最低使用頻度(least
recently used)に基づいて動作し、4
つのスロットのうちのどの1つがキャッシュ・ラインを
記憶するかを決定する。記憶装置28とデータ・キャッ
シュ機構21の間の記憶バス30が唯一の8バイト幅で
あるから、インページを終了するためには8つの転送即
ちサイクルが必要である。
ータ・キャッシュ機構21は最低使用頻度(least
recently used)に基づいて動作し、4
つのスロットのうちのどの1つがキャッシュ・ラインを
記憶するかを決定する。記憶装置28とデータ・キャッ
シュ機構21の間の記憶バス30が唯一の8バイト幅で
あるから、インページを終了するためには8つの転送即
ちサイクルが必要である。
記憶装置28からデータ・キャッシュ機構21へのデー
タの最初の転送は常にプロセッサ12が要求したデータ
を含む、データ・キャッシュ機構21はデータの最初の
転送を受取ると直ちに、データ・バス20を介してデー
タをプロセッサ12に返送する。
タの最初の転送は常にプロセッサ12が要求したデータ
を含む、データ・キャッシュ機構21はデータの最初の
転送を受取ると直ちに、データ・バス20を介してデー
タをプロセッサ12に返送する。
第7図はキャッシュ・ミスのタイミング図を示す、タイ
ミングはサイクル4までは第6図のタイミングと同様で
ある。サイクル4でデータがデータ・バス20に現われ
る代りに、インページ要求が行なわれる。サイクル12
で、データの最初の8バイト、 nvoが記憶装置28
から記憶バス30に現われ、後続するサイクルに連続8
バイトの一団となって現われる。サイクル13で、Dv
Oは第5図のインページ・レジスタ62に書込まれ、サ
イクル14で、インページ・バッファ24に書込まれる
。サイクル14で、 DWOはデータ・バス20にも現
われ、前と同様にプロセッサ12が受取る。クワド・ワ
ード(Ov)がインページ・バッファ24からキャッシ
ュ22に一度に1つずつ書き戻される。
ミングはサイクル4までは第6図のタイミングと同様で
ある。サイクル4でデータがデータ・バス20に現われ
る代りに、インページ要求が行なわれる。サイクル12
で、データの最初の8バイト、 nvoが記憶装置28
から記憶バス30に現われ、後続するサイクルに連続8
バイトの一団となって現われる。サイクル13で、Dv
Oは第5図のインページ・レジスタ62に書込まれ、サ
イクル14で、インページ・バッファ24に書込まれる
。サイクル14で、 DWOはデータ・バス20にも現
われ、前と同様にプロセッサ12が受取る。クワド・ワ
ード(Ov)がインページ・バッファ24からキャッシ
ュ22に一度に1つずつ書き戻される。
8バイトのデータがプロセッサ12に返送されると、残
りのデータをインページする動作がまだ続いていても、
データ・キャッシュ機構21は次の記憶要求の処理を始
めることができる。キャッシュ22は1つのポート・ア
レイで構成されている。よって、インページ・データを
記憶し且つ同時に次の記憶要求を処理することはできな
い、全てのインページ・データは最初にインページ・バ
ッファ24に書込まれるから、それ以上の記憶要求はな
い、即ちキャッシュがそれ以上使用中にならない限り、
該データはそこに留まることができる。そしてインペー
ジ・バッファからのインページ・データはキャッシュに
書き戻される。インページ・データがキャッシュに書き
戻される前に同じページに対して別の取出し要求がもし
あれば。
りのデータをインページする動作がまだ続いていても、
データ・キャッシュ機構21は次の記憶要求の処理を始
めることができる。キャッシュ22は1つのポート・ア
レイで構成されている。よって、インページ・データを
記憶し且つ同時に次の記憶要求を処理することはできな
い、全てのインページ・データは最初にインページ・バ
ッファ24に書込まれるから、それ以上の記憶要求はな
い、即ちキャッシュがそれ以上使用中にならない限り、
該データはそこに留まることができる。そしてインペー
ジ・バッファからのインページ・データはキャッシュに
書き戻される。インページ・データがキャッシュに書き
戻される前に同じページに対して別の取出し要求がもし
あれば。
要求されたデータはインページ・バッファからアクセス
され、直ちにプロセッサに返送される。インページ・バ
ッファ制御ブロック64は要求されたデータの絶対アド
レス・ビット4−28を含み。
され、直ちにプロセッサに返送される。インページ・バ
ッファ制御ブロック64は要求されたデータの絶対アド
レス・ビット4−28を含み。
比較機構/制御装置60によりインページ・バッファ2
4内のデータの状況及び識別を決定するのに使用される
。比較機構/制御装置60はインページ・バッファ制御
ブロック64からの絶対アドレス・ビット4−28を選
択された変換機構34の出力からの絶対アドレス・ビッ
ト4−19及びEAババス8のビット20−28と比較
し、要求されたデータがインページ・バッファ24にあ
るかどうかを判定する。
4内のデータの状況及び識別を決定するのに使用される
。比較機構/制御装置60はインページ・バッファ制御
ブロック64からの絶対アドレス・ビット4−28を選
択された変換機構34の出力からの絶対アドレス・ビッ
ト4−19及びEAババス8のビット20−28と比較
し、要求されたデータがインページ・バッファ24にあ
るかどうかを判定する。
インページ・バッファ制御ブロック64にはインページ
・バッファ24の無効ビットもある。もしインページ・
バッファ24からの全てのデータがまだキャッシュ22
に書き戻されていなければ、無効ビットはOにセットさ
れる。全てのデータがインページ・バッファ24からキ
ャッシュ22に書き戻された後、無効ビットは1にセッ
トされる。
・バッファ24の無効ビットもある。もしインページ・
バッファ24からの全てのデータがまだキャッシュ22
に書き戻されていなければ、無効ビットはOにセットさ
れる。全てのデータがインページ・バッファ24からキ
ャッシュ22に書き戻された後、無効ビットは1にセッ
トされる。
インページ・バッファ24からのデータをプロセッサ1
2に返送できるのは無効ビットがOのときだけである。
2に返送できるのは無効ビットがOのときだけである。
もしプロセッサ12の要求が同じページ−なおインペー
ジ動作中であるが、まだインページ・バッファにはない
−に属するならば、プロセッサは該データがインページ
・バッファに書込まれるまで待つ、そしてインページ・
バッファは比較機構/制御装置60によって選択され、
要求されたデータを供給する。インページ・バッファ及
びその制御の詳細は第9図及び第10図に関連して後で
説明する。最後に、インページ・バッファからの全ての
データがキャッシュの選択されたスロットに書き戻され
ると、ディレクトリ32は変換機構34からの絶対アド
レスにより更新される。更新されたスロットの■ビット
は、もし既にOであればそのままである。■ビットは、
もしまだOでなければ0にセットされる。 LRUペー
ジ置換ルーチンは、1に等しいBビットを持つスロット
は選択しない。
ジ動作中であるが、まだインページ・バッファにはない
−に属するならば、プロセッサは該データがインページ
・バッファに書込まれるまで待つ、そしてインページ・
バッファは比較機構/制御装置60によって選択され、
要求されたデータを供給する。インページ・バッファ及
びその制御の詳細は第9図及び第10図に関連して後で
説明する。最後に、インページ・バッファからの全ての
データがキャッシュの選択されたスロットに書き戻され
ると、ディレクトリ32は変換機構34からの絶対アド
レスにより更新される。更新されたスロットの■ビット
は、もし既にOであればそのままである。■ビットは、
もしまだOでなければ0にセットされる。 LRUペー
ジ置換ルーチンは、1に等しいBビットを持つスロット
は選択しない。
第8図は取出しA及び取出しBの2つの連続する取出し
動作を示すタイミング図である。取出しAはキャッシュ
・ミスを生成し取出しBはキャッシュ・ヒツトを生成す
る。取出しBは既にキャッシュのスロットにあるデータ
か、又は取出しAのために検索されたページに含まれた
データであるかも知れない、取出しBはサイクル14で
開始される。サイクル15で、プロセッサ12内の局所
記憶は取出しAに対応するデータにより更新され。
動作を示すタイミング図である。取出しAはキャッシュ
・ミスを生成し取出しBはキャッシュ・ヒツトを生成す
る。取出しBは既にキャッシュのスロットにあるデータ
か、又は取出しAのために検索されたページに含まれた
データであるかも知れない、取出しBはサイクル14で
開始される。サイクル15で、プロセッサ12内の局所
記憶は取出しAに対応するデータにより更新され。
サイクル16で、取出しBに対応するデータにより更新
される0本発明のインページ・バッファなしには、取出
しBはサイクル24まで開始することさえできず、1サ
イクル後にディレクトリが取出しAに関して更新され、
局所記憶はサイクル26までは更新されない、インペー
ジ・バッファにより10サイクルの性能の利得が得られ
る。
される0本発明のインページ・バッファなしには、取出
しBはサイクル24まで開始することさえできず、1サ
イクル後にディレクトリが取出しAに関して更新され、
局所記憶はサイクル26までは更新されない、インペー
ジ・バッファにより10サイクルの性能の利得が得られ
る。
合同クラスの4つのスロットが全て正の不良Bビットを
含む場合にはそれ以上の性能の利得が得られる0通常、
当該合同クラスの読取り要求毎にキャッシュ・ミスが生
成されているであろう、しかしながら、改良されたイン
ページ・バッファにより、最初のミスに続いて、記憶装
置28に対し取出し要求が出される。そしてインページ
・データはインページ・バッファ24にだけ書込まれる
。
含む場合にはそれ以上の性能の利得が得られる0通常、
当該合同クラスの読取り要求毎にキャッシュ・ミスが生
成されているであろう、しかしながら、改良されたイン
ページ・バッファにより、最初のミスに続いて、記憶装
置28に対し取出し要求が出される。そしてインページ
・データはインページ・バッファ24にだけ書込まれる
。
インページ・データはキャッシュには書き戻されない、
もし同じライン即ちページが後の要求で参照中であれば
、プロセッサ12はインページ・バッファ24から直ち
に該データを取得可能である。
もし同じライン即ちページが後の要求で参照中であれば
、プロセッサ12はインページ・バッファ24から直ち
に該データを取得可能である。
もしキャッシュ全体が不良ならば、インページ・バッフ
ァはミニキャッシュのように動作し、もしインページ・
バッファに要求されたデータが常駐していれば、該要求
されたデータをプロセッサ12に直接供給する。
ァはミニキャッシュのように動作し、もしインページ・
バッファに要求されたデータが常駐していれば、該要求
されたデータをプロセッサ12に直接供給する。
記憶動作はデータ・キャッシュ又はそのディレクトリ内
の破局的な誤りによる影響は受けない。
の破局的な誤りによる影響は受けない。
全てのプロセッサ開始の記憶動作で、記憶データは記憶
バッファに記憶され、キャッシュを完全にバイパスする
。もし記憶動作がインページ・バッファ内の同じライン
をアクセスすれば、即ち変換機構34の出力の絶対アド
レス・ビット4−19及びEAババス8のビット20−
25がインページ・バッファ制御ブロック64からの絶
対アドレス・ビット4−25に一致すれば、インページ
・バッファ制御ブロック64内のインページ・バッファ
24の無効ビットは1にセットされる。結局、変更され
たラインは記憶装置28にフラッシュされる。もし当該
ラインが再びアクセスされれば、記憶装置28からのイ
ンページ動作が起こり、要求されたラインはインページ
・バッファに記憶される。
バッファに記憶され、キャッシュを完全にバイパスする
。もし記憶動作がインページ・バッファ内の同じライン
をアクセスすれば、即ち変換機構34の出力の絶対アド
レス・ビット4−19及びEAババス8のビット20−
25がインページ・バッファ制御ブロック64からの絶
対アドレス・ビット4−25に一致すれば、インページ
・バッファ制御ブロック64内のインページ・バッファ
24の無効ビットは1にセットされる。結局、変更され
たラインは記憶装置28にフラッシュされる。もし当該
ラインが再びアクセスされれば、記憶装置28からのイ
ンページ動作が起こり、要求されたラインはインページ
・バッファに記憶される。
インページ・バッファ制御は後続の記憶要求の処理を延
期させないように設計される。8バイトのデータがプロ
セッサに送られた後、データ・キャッシュ機構21は、
同時にインページ・データの残りを受取る間に、もう1
つの記憶要求の処理に使用可能である。インページ・バ
ッファは全てのデータがキャッシュ・アレイに書込まれ
るまで該データを含む、インページ・バッファからの7
レイの書込みは他の記憶要求がないときにだけ許可され
る。データがデータ・キャッシュに書込まれる前に同じ
ページに対するもう1つの取出し要求がもしあれば、該
データはインページ・バッファ自身からアクセスされる
。ちなみにインページ・バッファは別のスロットとみな
すことができる。
期させないように設計される。8バイトのデータがプロ
セッサに送られた後、データ・キャッシュ機構21は、
同時にインページ・データの残りを受取る間に、もう1
つの記憶要求の処理に使用可能である。インページ・バ
ッファは全てのデータがキャッシュ・アレイに書込まれ
るまで該データを含む、インページ・バッファからの7
レイの書込みは他の記憶要求がないときにだけ許可され
る。データがデータ・キャッシュに書込まれる前に同じ
ページに対するもう1つの取出し要求がもしあれば、該
データはインページ・バッファ自身からアクセスされる
。ちなみにインページ・バッファは別のスロットとみな
すことができる。
第9図はデータ・キャッシュ機構21の詳細なブロック
図を示す、この場合も、参照番号は第1図と一致する。
図を示す、この場合も、参照番号は第1図と一致する。
記憶取出し要求を復号すると、同じタイム・スロットで
スロット・レジスタ82及びインページ・バッファ・レ
ジスタ84にデータがラッチされる。ラッチDC5)l
(0:3) 86及びDIBG88はレジスタ82及び
84のどちらがプロセッサ12にデータを供給するかを
決定するのに使用される。もしラッチの1つだけが活動
状態なら、適切なレジスタが選択される。もし記憶要求
がキャッシュ・ミスなら、64バイトのインページ要求
が記憶装置28に送られる。64バイトのデータは最初
、要求された8バイトのデータで始まる8バイトを記憶
バスに一度に戻される。データはインページ・レジスタ
62にラッチされ、プロセッサ12に送られ、インペー
ジ・バッファ24に記憶される。そして64バイトの残
りがインページ・バッファに記憶されつつある間に次の
記憶コマンドが処理される。
スロット・レジスタ82及びインページ・バッファ・レ
ジスタ84にデータがラッチされる。ラッチDC5)l
(0:3) 86及びDIBG88はレジスタ82及び
84のどちらがプロセッサ12にデータを供給するかを
決定するのに使用される。もしラッチの1つだけが活動
状態なら、適切なレジスタが選択される。もし記憶要求
がキャッシュ・ミスなら、64バイトのインページ要求
が記憶装置28に送られる。64バイトのデータは最初
、要求された8バイトのデータで始まる8バイトを記憶
バスに一度に戻される。データはインページ・レジスタ
62にラッチされ、プロセッサ12に送られ、インペー
ジ・バッファ24に記憶される。そして64バイトの残
りがインページ・バッファに記憶されつつある間に次の
記憶コマンドが処理される。
記憶要求が復号されつつある間は、インページ・バッフ
ァからのデータはキャッシュ22に記憶されない、もし
インページ・バッファの取出し要求がヒツトであれば、
DIBGラッチ88は活動状態となり、インページ・バ
ッファ・レジスタ84からのデータを選択し、プロセッ
サ12に返送する。
ァからのデータはキャッシュ22に記憶されない、もし
インページ・バッファの取出し要求がヒツトであれば、
DIBGラッチ88は活動状態となり、インページ・バ
ッファ・レジスタ84からのデータを選択し、プロセッ
サ12に返送する。
もしインページ・バッファの書込み動作がヒツトであれ
ば、インページ・バッファからのデータをキャッシュ・
アレイに書き戻してから該書込み動作を実行できる。も
しもう1つの取出し要求がキャッシュ・ミスを生じるな
ら、インページ・バッファ内のデータでキャッシュ・ア
レイが更新されてから、要求された取出しミスのデータ
が記憶バス30を介して到着する。もしインページされ
つつある取出し要求があり且つ記憶バッファにアドレス
指定されたラインのエントリもあるならば、インページ
されたデータでキャッシュ・アレイが直ちに更新され且
つ記憶バッファの合併が起こる。
ば、インページ・バッファからのデータをキャッシュ・
アレイに書き戻してから該書込み動作を実行できる。も
しもう1つの取出し要求がキャッシュ・ミスを生じるな
ら、インページ・バッファ内のデータでキャッシュ・ア
レイが更新されてから、要求された取出しミスのデータ
が記憶バス30を介して到着する。もしインページされ
つつある取出し要求があり且つ記憶バッファにアドレス
指定されたラインのエントリもあるならば、インページ
されたデータでキャッシュ・アレイが直ちに更新され且
つ記憶バッファの合併が起こる。
この動作の詳細は米国特許出願第291805号(19
88年12月29日出[)に記載されている。
88年12月29日出[)に記載されている。
前記3つの状態はキャッシュ・アレイが直ちに更新を要
するケースに過ぎない、他の場合には。
するケースに過ぎない、他の場合には。
空きサイクルが得られるまでデータはインページ・バッ
ファに留まる。1つの空きサイクルで16バイトのデー
タがインページ・バッファからキャッシュ・アレイに転
送される。完全なラインは4サイクルで転送される。デ
ータをインページ・バッファからキャッシュ・アレイに
転送する最悪のケースはそれ以上の記憶要求がないとき
である。
ファに留まる。1つの空きサイクルで16バイトのデー
タがインページ・バッファからキャッシュ・アレイに転
送される。完全なラインは4サイクルで転送される。デ
ータをインページ・バッファからキャッシュ・アレイに
転送する最悪のケースはそれ以上の記憶要求がないとき
である。
そのケースでは5データは8バイト幅の記憶バスを介し
て8サイクルでキャッシュ・アレイに送ることができる
。
て8サイクルでキャッシュ・アレイに送ることができる
。
・ぺ−ぐ゛・バ・
第10図(インページ・バッファとキャッシュの間の相
互接続を示す)及び第11図(インページ・バッファの
論理的なレイアウトを示す)によりインページ・バッフ
ァの動作を詳細に説明する。
互接続を示す)及び第11図(インページ・バッファの
論理的なレイアウトを示す)によりインページ・バッフ
ァの動作を詳細に説明する。
インページ・バッファ24は8つのダブルワード・レジ
スタ及び、各レジスタをアドレス指定しデータを多重化
するために使用されるロジックを含む、そのサイズは記
憶装置28から転送されるページ・サイズと互換性を持
つように選択される。
スタ及び、各レジスタをアドレス指定しデータを多重化
するために使用されるロジックを含む、そのサイズは記
憶装置28から転送されるページ・サイズと互換性を持
つように選択される。
以下の実施例では、バッファは2ペ一ジ以上を保持する
ことができる。この実施例で、インページ・バッファ制
御ブロック64はこれらのページのアドレスの各々を追
跡しなければならない。
ことができる。この実施例で、インページ・バッファ制
御ブロック64はこれらのページのアドレスの各々を追
跡しなければならない。
第10図で、もしインページ・バッファにデータがあれ
ばそれを検索するために、前記アドレスがインページ・
バッファをアドレス指定するのに使用される。このアド
レスはキャッシュ・ミスがあるかどうかを判定するため
にも使用される。インページ・バッファからキャッシュ
にデータを転送するのに16バイト幅のバスが使用され
る。取出し動作からのデータがインページ・バッファに
あるとき、プロセッサ12にデータを転送するのに8バ
イト幅のデータ・バスが使用される。全ての取出し及び
記憶要求は、前記要求の信号が活動状態のサイクルで、
データがキャッシュに書込まれるのを阻止する。インペ
ージ・バッファからのデータがキャッシュに書き戻され
るのを阻止するのにキャッシュ不書込み信号が用いられ
る。参照された合同クラスの全ての4つの不良ビットが
オンであることをディレクトリ32が表わすとき。
ばそれを検索するために、前記アドレスがインページ・
バッファをアドレス指定するのに使用される。このアド
レスはキャッシュ・ミスがあるかどうかを判定するため
にも使用される。インページ・バッファからキャッシュ
にデータを転送するのに16バイト幅のバスが使用され
る。取出し動作からのデータがインページ・バッファに
あるとき、プロセッサ12にデータを転送するのに8バ
イト幅のデータ・バスが使用される。全ての取出し及び
記憶要求は、前記要求の信号が活動状態のサイクルで、
データがキャッシュに書込まれるのを阻止する。インペ
ージ・バッファからのデータがキャッシュに書き戻され
るのを阻止するのにキャッシュ不書込み信号が用いられ
る。参照された合同クラスの全ての4つの不良ビットが
オンであることをディレクトリ32が表わすとき。
キャッシュ不書込み信号は活動状態である。書込み中の
データのアドレスをキャッシュ・アレイに通知するのに
インページ・アドレスが使用される。
データのアドレスをキャッシュ・アレイに通知するのに
インページ・アドレスが使用される。
取出し動作中、比較機構/制御装置によってセットされ
且つ5つの異なるダブルワード間で選択するのに使用さ
れる5つのラッチがある。これらのラッチはDC3H(
0:3) (4つの異なるスロットを表わす)及びD
IBG (要求され取出されたデータがインページ・バ
ッファにあるときに用いられる)である、もしデータが
キャッシュ又はインページ・バッファにあれば、取出し
動作中、これらのうちの1つだけが活動状態である。も
しミスがあれば、5つのラッチは全てOになる。もし4
つのスロットが全て不良であり、且つインベージ・バッ
ファがミニキャッシュとして使用中であるならば。
且つ5つの異なるダブルワード間で選択するのに使用さ
れる5つのラッチがある。これらのラッチはDC3H(
0:3) (4つの異なるスロットを表わす)及びD
IBG (要求され取出されたデータがインページ・バ
ッファにあるときに用いられる)である、もしデータが
キャッシュ又はインページ・バッファにあれば、取出し
動作中、これらのうちの1つだけが活動状態である。も
しミスがあれば、5つのラッチは全てOになる。もし4
つのスロットが全て不良であり、且つインベージ・バッ
ファがミニキャッシュとして使用中であるならば。
第1のサイクルでDIBGラッチはミスを表わすOにセ
ットされ、第2のサイクルでDC511ラッチは全ての
スロットが不良であることを表わす1にセットされる。
ットされ、第2のサイクルでDC511ラッチは全ての
スロットが不良であることを表わす1にセットされる。
インベージ動作の間に、ダブルワード毎に次々と、イン
ページ・バッファにデータが書込まれる。
ページ・バッファにデータが書込まれる。
記憶装置からの最初のダブルワードはプロセッサが要求
したものであり、インページ・レジスタにラッチされる
1次のサイクルで、最初のダブルワードが正しいダブル
ワード、・レジスタにラッチされると同時に、後続のダ
ブルワードがインページ・レジスタにラッチされる。正
しいレジスタは、第12図でアドレッシング・ポインタ
から生成されるSV、L−人一〇〜5EL−八一7とし
て示されたアドレス選択ラインにより決定さ扛る。アド
レッシング・ポインタはアドレス(プロセッサはこのア
ドレスからデータを要求する)の値に初期設定される。
したものであり、インページ・レジスタにラッチされる
1次のサイクルで、最初のダブルワードが正しいダブル
ワード、・レジスタにラッチされると同時に、後続のダ
ブルワードがインページ・レジスタにラッチされる。正
しいレジスタは、第12図でアドレッシング・ポインタ
から生成されるSV、L−人一〇〜5EL−八一7とし
て示されたアドレス選択ラインにより決定さ扛る。アド
レッシング・ポインタはアドレス(プロセッサはこのア
ドレスからデータを要求する)の値に初期設定される。
データを受取ると、ポインタは次にラッチされるダブル
ワードに!l!1整される。有効なインページ・データ
がある限り、ポインタはダブルワードが選択される所与
のアドレスにあり、残りは全てそれら自身にフィードバ
ックされる。
ワードに!l!1整される。有効なインページ・データ
がある限り、ポインタはダブルワードが選択される所与
のアドレスにあり、残りは全てそれら自身にフィードバ
ックされる。
第11図のインページ・バッファ24は8つのグループ
のレジスタから成り、各グループは8バイトのデータを
構成する。これらのレジスタはインページ・レジスタか
ら正しい順序でデータをロードされるので、正しいアド
レス位置と一致する。
のレジスタから成り、各グループは8バイトのデータを
構成する。これらのレジスタはインページ・レジスタか
ら正しい順序でデータをロードされるので、正しいアド
レス位置と一致する。
次に、それ以上の記憶要求がないとき、データ及びアド
レスはキャッシュに送られ、データはキャッシュ・アレ
イに記憶される。プロセッサ12に返送される予定のデ
ータを保持するのに使用さ九る8バイトの出力レジスタ
102もある。
レスはキャッシュに送られ、データはキャッシュ・アレ
イに記憶される。プロセッサ12に返送される予定のデ
ータを保持するのに使用さ九る8バイトの出力レジスタ
102もある。
データは3つの方法でインページ・バッファからアクセ
スできる。第1の方法はインページ・バッファからプロ
セッサへの直接アクセスである。
スできる。第1の方法はインページ・バッファからプロ
セッサへの直接アクセスである。
これは最初のダブルワードについてだけ可能である。第
2の方法はインページに続く全ての取出しで行なわれ、
キャッシュ及びインページ・バッファはどちらも取出し
のアドレスでアクセスされる。
2の方法はインページに続く全ての取出しで行なわれ、
キャッシュ及びインページ・バッファはどちらも取出し
のアドレスでアクセスされる。
もし取出しのアドレスがインページ・バッファで一致す
れば、当該ダブルワードはプロセッサに返送される。デ
ータがアクセスされる第3の方法は、データ・キャッシ
ュに送られる所与のグツド・ワード(quad wor
d)をアクセスする2つのビット・ポインタによって行
なわれる。これはデータ・キャッシュがまだ記憶要求に
サービスしていないときにだけ起こることがある。第1
3図はグツド・ワード選択を示す。
れば、当該ダブルワードはプロセッサに返送される。デ
ータがアクセスされる第3の方法は、データ・キャッシ
ュに送られる所与のグツド・ワード(quad wor
d)をアクセスする2つのビット・ポインタによって行
なわれる。これはデータ・キャッシュがまだ記憶要求に
サービスしていないときにだけ起こることがある。第1
3図はグツド・ワード選択を示す。
インページ・バッファ24は8つのダブルワード・レジ
スタ及びロジックと共に示される。ロジックはインペー
ジ・レジスタから適切なダブルワード・レジスタへ、及
び適切なダブルワード・レジスタから出力レジスタ八、
又は適切なグツド・ワードからキャッシュへのデータの
流れを制御する。インページ・バッファ・ロジック内の
3ビツト・ポインタはキャッシュに送る特定のダブルワ
ードを示すのに使用される。入力レジ7.タロ2は記憶
装置から送ら才したデータをラッチし、それをインペー
ジ・バッファに渡す、入力レジスタは要求されたダブル
ワードを適切なプロセッサに送るのにも使用される。出
力レジスタ102はデータを。
スタ及びロジックと共に示される。ロジックはインペー
ジ・レジスタから適切なダブルワード・レジスタへ、及
び適切なダブルワード・レジスタから出力レジスタ八、
又は適切なグツド・ワードからキャッシュへのデータの
流れを制御する。インページ・バッファ・ロジック内の
3ビツト・ポインタはキャッシュに送る特定のダブルワ
ードを示すのに使用される。入力レジ7.タロ2は記憶
装置から送ら才したデータをラッチし、それをインペー
ジ・バッファに渡す、入力レジスタは要求されたダブル
ワードを適切なプロセッサに送るのにも使用される。出
力レジスタ102はデータを。
それを適切なプロセッサに返送する前に、保持するのに
使用される。もし取出し要求のデータがインページ・バ
ッファにあれば、出力レジスタに取込まれる正しいダブ
ルワードを選択するのに該アドレスが使用される。
使用される。もし取出し要求のデータがインページ・バ
ッファにあれば、出力レジスタに取込まれる正しいダブ
ルワードを選択するのに該アドレスが使用される。
E1発明の効果
」二連のごとく、本発明の構成によればプロセッサによ
るデータ処理において効率のよいデータ転送が可能にな
る。
るデータ処理において効率のよいデータ転送が可能にな
る。
第1図は本発明に従ってへソファを組込む多重レベル記
憶サブシステムのブロック図である。 第2図は第1図のサブシステムでのデータ・キャッシュ
の論理的なレイアウトを表わす図である。 第3図は第2図のデータ・キャッシュのデータ・ディレ
クトリの論理的なレイアラ1−を表わす図である。 第4図は第3図のデータ・ディレクトリで不良ビットの
設定を示す流れ図である。 第5図は第1図のサブシステムのキャッシュ及びバッフ
ァ関連のデータフローを示す図である。 第6図はキャッシュ・ヒツトのタイミング図である。 第7図はキャッシュ・ミスのタイミング図である。 第8図はキャッシュ・ヒツトが続くキャッシュ・ミスの
タイミング図である。 第9図は第1図のデータ・キャッシュ及びバッファのブ
ロック図である。 第10図はバッファとデータ・キャッシュの間の接続を
示す図である。 第11図はバッファの論理的なレイアウト図である。 第12図はバッファにデータをローディングするブロッ
ク図である。 第13図はバッファからキャッシュへのローディングの
ブロック図である。 10・・・・多重レベル記憶階層システム、12・・・
・CPU、16・・・・命令キャッシュ、21・・・・
データ・キャッシュ機構、22・・・・データ・キャッ
シュ、24・・・・インページ・バッファ、26・・・
・データ記憶バッファ、28・・・・メモリ、32・・
・・データ・ディレクトリ、34・・・・データDLA
T、36・・・・命令ディレクトリ、38・・・・命令
DLAT、40・・・・キャッシュ、42・・・・メモ
リ、44・・・・命令記憶バッファ、46・・・・命令
キャッシュ機構、48・・・・サポート・プロセッサ、
50・・・・サポート・バス・アダプタ、60・・・・
比較機構、62・・・・インページ・レジスタ、64・
・・・インページ・バッファ制御フロック、82・・・
・スロット・レジスタ、84・・・・インページ・バッ
ファ、レジスタ、86・・・・DC5H(0:3) 、
88・・・・DIBG、102・・・・出力レジスタ
。 第1図 第3図 薯6凹 第9図 第10図 $13図 第11図
憶サブシステムのブロック図である。 第2図は第1図のサブシステムでのデータ・キャッシュ
の論理的なレイアウトを表わす図である。 第3図は第2図のデータ・キャッシュのデータ・ディレ
クトリの論理的なレイアラ1−を表わす図である。 第4図は第3図のデータ・ディレクトリで不良ビットの
設定を示す流れ図である。 第5図は第1図のサブシステムのキャッシュ及びバッフ
ァ関連のデータフローを示す図である。 第6図はキャッシュ・ヒツトのタイミング図である。 第7図はキャッシュ・ミスのタイミング図である。 第8図はキャッシュ・ヒツトが続くキャッシュ・ミスの
タイミング図である。 第9図は第1図のデータ・キャッシュ及びバッファのブ
ロック図である。 第10図はバッファとデータ・キャッシュの間の接続を
示す図である。 第11図はバッファの論理的なレイアウト図である。 第12図はバッファにデータをローディングするブロッ
ク図である。 第13図はバッファからキャッシュへのローディングの
ブロック図である。 10・・・・多重レベル記憶階層システム、12・・・
・CPU、16・・・・命令キャッシュ、21・・・・
データ・キャッシュ機構、22・・・・データ・キャッ
シュ、24・・・・インページ・バッファ、26・・・
・データ記憶バッファ、28・・・・メモリ、32・・
・・データ・ディレクトリ、34・・・・データDLA
T、36・・・・命令ディレクトリ、38・・・・命令
DLAT、40・・・・キャッシュ、42・・・・メモ
リ、44・・・・命令記憶バッファ、46・・・・命令
キャッシュ機構、48・・・・サポート・プロセッサ、
50・・・・サポート・バス・アダプタ、60・・・・
比較機構、62・・・・インページ・レジスタ、64・
・・・インページ・バッファ制御フロック、82・・・
・スロット・レジスタ、84・・・・インページ・バッ
ファ、レジスタ、86・・・・DC5H(0:3) 、
88・・・・DIBG、102・・・・出力レジスタ
。 第1図 第3図 薯6凹 第9図 第10図 $13図 第11図
Claims (4)
- (1)キャッシュ・バイパス装置であって、データを記
憶する記憶装置; 記憶装置アドレスに対応するアドレスを持つ記憶読取り
及び書込み要求を生成するプロセッサ;前記記憶装置と
プロセッサの間に結合され、該記憶装置のデータに対す
る速いアクセスを提供するキャッシュ; プロセッサに結合され、プロセッサから記憶要求を受取
り、読取要求に対応するデータがキャッシュに記憶され
ているかどうかを判定し且つそのように記憶されたデー
タをプロセッサに提供する前記キャッシュを制御する制
御装置; 前記記憶装置とキャッシュの間に結合され、記憶装置か
らキャッシュに送られたデータを一時的に記憶するバッ
ファ手段; データをバッファ手段からプロセッサに転送する手段; データをバッファ手段からキャッシュに転送する手段;
及び それ以上の記憶要求がもし未定ならバッファ手段からキ
ャッシュへのデータの転送を禁止する手段を 含むキャッシュ・バイパス装置。 - (2)多重プロセッサ・システム内にキャッシュ・バイ
パス能力を持つシステムであって、 データ記憶バッファ; データ・キャッシュ; データ・キャッシュ内のデータを追跡し置き換えるデー
タ・キャッシュ制御装置; 前記データ・キャッシュに結合されたインページ・バッ
ファ; 命令記憶バッファ; 前記データ・キャッシュと無関係に動作可能な命令キャ
ッシュ; 命令キャッシュ内の命令を追跡し置き換える命令キャッ
シュ制御装置;及び 前記インページ・バッファ、データ記憶バッファ及び命
令キャッシュに結合された記憶バスを含む第1レベルの
キャッシュ; を少なくとも1つのプロセッサが持つ多重プロセッサを
含み; 前記多重プロセッサは各記憶バスに結合された記憶装置
も持ち、前記記憶装置は多重プロセッサによって共用さ
れ、各インページ・バッファはプロセッサのデータ・キ
ャッシュからは入手できないデータを該記憶装置から受
取り、前記データを前記プロセッサに直接に供給する キャッシュ・バイパス装置。 - (3)キャッシュ・バイパス装置であって、情報を記憶
する記憶装置; 記憶装置アドレスに対応するアドレスを持つ読取り要求
を生成するプロセッサ; 前記記憶装置とプロセッサの間に結合され、前記キャッ
シュに記憶されている記憶装置情報の速いアクセスを提
供するキャッシュ; プロセッサに結合され、プロセッサから読取要求を受取
り、読取要求に対応する情報がキャッシュに記憶されて
いるかどうかを判定し、そのように記憶された情報をプ
ロセッサに供給する前記キャッシュを制御する制御装置
; 前記記憶装置とキャッシュの間に結合され、記憶装置と
キャッシュの間の情報を緩衝記憶するためプロセッサに
直接結合され、要求された情報がキャッシュから入手で
きない場合にはそこに記憶された情報を直接プロセッサ
に供給するバッファ手段 を含むキャッシュ・バイパス装置。 - (4)記憶装置とプロセッサの間にキャッシュを持ち、
前記記憶装置とキャッシュの間にデータ・バッファを持
つシステムで前記記憶装置からプロセッサにデータを転
送する方法であって、 (a)データの要求をプロセッサにより生成し、(b)
要求されたデータについてキャッシュ内を検査し、 (c)要求されたデータについてバッファ内を検査し、 (d)もしデータがキャッシュに記憶されていれば要求
されたデータをキャッシュから供給し、(e)もしデー
タがキャッシュから入手できなければ要求されたデータ
をバッファから供給するステップを含むデータ転送方法
。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US29188888A | 1988-12-29 | 1988-12-29 | |
| US291888 | 1988-12-29 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH02184946A true JPH02184946A (ja) | 1990-07-19 |
| JPH0580018B2 JPH0580018B2 (ja) | 1993-11-05 |
Family
ID=23122294
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP1276179A Granted JPH02184946A (ja) | 1988-12-29 | 1989-10-25 | キヤツシユ・バイパス装置 |
Country Status (2)
| Country | Link |
|---|---|
| EP (1) | EP0375864A3 (ja) |
| JP (1) | JPH02184946A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH04270431A (ja) * | 1990-03-27 | 1992-09-25 | Digital Equip Corp <Dec> | データ 処理装置のメモリ システム |
Families Citing this family (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5293603A (en) * | 1991-06-04 | 1994-03-08 | Intel Corporation | Cache subsystem for microprocessor based computer system with synchronous and asynchronous data path |
| US5404484A (en) * | 1992-09-16 | 1995-04-04 | Hewlett-Packard Company | Cache system for reducing memory latency times |
| JP3409866B2 (ja) * | 1992-09-18 | 2003-05-26 | 株式会社日立製作所 | 並列計算機 |
| JPH06222990A (ja) * | 1992-10-16 | 1994-08-12 | Fujitsu Ltd | データ処理装置 |
| EP0607669A1 (en) * | 1993-01-21 | 1994-07-27 | Advanced Micro Devices, Inc. | Data caching system and method |
| GB2293670A (en) * | 1994-08-31 | 1996-04-03 | Hewlett Packard Co | Instruction cache |
| AUPN661995A0 (en) | 1995-11-16 | 1995-12-07 | Memtec America Corporation | Electrochemical cell 2 |
| US6863801B2 (en) | 1995-11-16 | 2005-03-08 | Lifescan, Inc. | Electrochemical cell |
| US6728823B1 (en) | 2000-02-18 | 2004-04-27 | Hewlett-Packard Development Company, L.P. | Cache connection with bypassing feature |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US3820078A (en) * | 1972-10-05 | 1974-06-25 | Honeywell Inf Systems | Multi-level storage system having a buffer store with variable mapping modes |
| US3938097A (en) * | 1974-04-01 | 1976-02-10 | Xerox Corporation | Memory and buffer arrangement for digital computers |
| JPS51127626A (en) * | 1975-04-30 | 1976-11-06 | Hitachi Ltd | Information processor |
| US4881163A (en) * | 1986-09-19 | 1989-11-14 | Amdahl Corporation | Computer system architecture employing cache data line move-out queue buffer |
-
1989
- 1989-10-19 EP EP19890119381 patent/EP0375864A3/en not_active Ceased
- 1989-10-25 JP JP1276179A patent/JPH02184946A/ja active Granted
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH04270431A (ja) * | 1990-03-27 | 1992-09-25 | Digital Equip Corp <Dec> | データ 処理装置のメモリ システム |
Also Published As
| Publication number | Publication date |
|---|---|
| EP0375864A3 (en) | 1991-03-20 |
| JPH0580018B2 (ja) | 1993-11-05 |
| EP0375864A2 (en) | 1990-07-04 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5201041A (en) | Cache bypass apparatus | |
| JP3067112B2 (ja) | 遅延プッシュをコピー・バック・データ・キャッシュに再ロードする方法 | |
| US5996048A (en) | Inclusion vector architecture for a level two cache | |
| US6415364B1 (en) | High-speed memory storage unit for a multiprocessor system having integrated directory and data storage subsystems | |
| US5249284A (en) | Method and system for maintaining data coherency between main and cache memories | |
| US9208084B2 (en) | Extended main memory hierarchy having flash memory for page fault handling | |
| US5155824A (en) | System for transferring selected data words between main memory and cache with multiple data words and multiple dirty bits for each address | |
| US5809280A (en) | Adaptive ahead FIFO with LRU replacement | |
| US7032074B2 (en) | Method and mechanism to use a cache to translate from a virtual bus to a physical bus | |
| US5903911A (en) | Cache-based computer system employing memory control circuit and method for write allocation and data prefetch | |
| US6047357A (en) | High speed method for maintaining cache coherency in a multi-level, set associative cache hierarchy | |
| US6192458B1 (en) | High performance cache directory addressing scheme for variable cache sizes utilizing associativity | |
| JPH0321934B2 (ja) | ||
| US5809562A (en) | Cache array select logic allowing cache array size to differ from physical page size | |
| KR100273907B1 (ko) | 컴퓨터에 의해 사용되는 캐쉬내의 결함을 제거하기 위한 방법 | |
| JPS5821353B2 (ja) | チヤネル対メモリ書込み装置 | |
| GB2296353A (en) | Cache memory system with reduced request-blocking | |
| JPH0345407B2 (ja) | ||
| CA2127081A1 (en) | Processor interface chip for dual-microprocessor processor system | |
| JPH0342745A (ja) | 複数キャッシュ・メモリ・アクセス方法 | |
| US5269009A (en) | Processor system with improved memory transfer means | |
| US5590310A (en) | Method and structure for data integrity in a multiple level cache system | |
| EP0365117B1 (en) | Data-processing apparatus including a cache memory | |
| JPH09237223A (ja) | バスブリッジを用いたコンピュータシステム | |
| JPH10320280A (ja) | キャッシュに値を格納する方法及びコンピュータ・システム |