JPH04133146A - キャッシュメモリ制御方式 - Google Patents

キャッシュメモリ制御方式

Info

Publication number
JPH04133146A
JPH04133146A JP2254083A JP25408390A JPH04133146A JP H04133146 A JPH04133146 A JP H04133146A JP 2254083 A JP2254083 A JP 2254083A JP 25408390 A JP25408390 A JP 25408390A JP H04133146 A JPH04133146 A JP H04133146A
Authority
JP
Japan
Prior art keywords
cache memory
memory
shared
cache
shared memory
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.)
Pending
Application number
JP2254083A
Other languages
English (en)
Inventor
Takeshi Kitahara
北原 毅
Masahito Mihashi
雅人 三橋
Hidenobu Ota
大田 秀信
Hisao Ise
尚生 伊勢
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2254083A priority Critical patent/JPH04133146A/ja
Publication of JPH04133146A publication Critical patent/JPH04133146A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔概 要〕 複数のコピーバック方式のキャッシュメモリと少なくと
も1つの共有メモリを備えたシステムにおけるキャッシ
ュメモリ制御方式に関し、バストラフインクを改善して
システム性能を向上することを目的とし、 複数のコピーバック方式のキャッシュメモリと、共有メ
モリと、該複数のキャッシュメモリおよび該共有メモリ
を接続するシステムバスとを備え、該各キャッシュメモ
リはそれぞれの内部エントリに有効表示フラグ、変更済
表示フラグ、共有表示フラグおよびアドレスを有してい
るシステムにおけるキャッシュメモリ制御方式であって
、演算装置からの書き込み要求の対象N域が共存未変更
の場合、書き込みデータを前記キャッシュメモリ内に書
き込むと共に、前記共有メモリにも書き込む手段と、前
記システムバス上の他のキャッシュメモリまたはI/O
デバイスの前記共有メモリへのアクセスを監視する手段
と、前記アクセスの対象領域が変更済領域であった場合
に該アクセスの中断を前記共有メモリに対して行う手段
と、前記変更済領域への他のアクセスを中断した後、当
該領域を共有メモリに書き戻す手段とを具備し、前記演
算装置からの要求データがキャッシュメモリ内に存在し
ない時の共有メモリへのリード要求を、他のキャッシュ
メモリから中断された後、当該他のキャッシュメモリか
らの共有メモリへの書き戻しデータをスチールすること
により実行し、前記共有メモリへのアクセス回数を削減
するように構成する。
〔産業上の利用分野〕
本発明は、キャッシュメモリ制御方式に関し、特に、複
数のコピーバック方式のキャッシュメモリと少なくとも
1つの共有メモリを備えたシステムにおけるキャッシュ
メモリ制御方式に関する。
近年、コンピュータの高速化の要求に伴って演算装置(
プロセッサ)の性能が向上すると共に、複数のプロセッ
サを使うマルチプロセッサシステムが利用されるように
なってきた。このとき、システム全体の性能を最大にす
る鍵として、各プロセッサが要求するバストラフィック
を最小にすることが要望されている。
〔従来の技術〕
近年、キャッシュメモリとしては、バスアクセスの頻度
がストアスル一方式に比して少ないコピーバック方式が
主流となりつつある。このコピーバック方式のキャッシ
ュメモリは、キャッシュデータを書き込み時に「ヒツト
」しても、そのデータを共有するメモリが他に無ければ
バスアクセスは行わない方式のもので、キャッシュデー
タを書き換える毎に共有メモリの書き換えも行い、他の
キャッシュメモリのデータは無効化するコピーバック方
式のキャッシュメモリよりもバスアクセスの頻度を減少
しシステム全体の性能を向上させるものである。
第5図は従来のキャッシュメモリ制御方式の一例を説明
するための図であり、キャッシュメモリ制御方式が適用
されるシステムは、複数のコピーバック方式のキャッシ
ュメモリMl、M2と、共有メモリCMと、これらのキ
ャッシュメモリMl、M2および共有メモリCMを接続
するシステムバスSBとを備えている。ここで、各キャ
ッシュメモリMl 、 M2は、それぞれの内部エント
リに有効表示フラグ■、変更済表示フラグM、共有表示
フラグSおよびアドレスを有している。
第5図(a)〜(c)に示されるように、従来のキャッ
シュメモリ制御方式は、キャッシュメモリM1が他のキ
ャッシュメモリM2 (或いは、I/Oデバイス)等か
らの共有メモリCMへのアクセスを監視して、アクセス
対象領域が変更済領域(V=1、M=1)である場合に
、共有メモリCMに対するアクセスを中断してキャッシ
ュメモリM1上の対応領域に書き戻し動作(コピーバッ
ク)を行い、その後、キャッシュメモリM2 (或いは
、 I/Oデバイス)等が書き換えられた共有メモリ側
に対してアクセスを行うようになっている。次に、この
従来のキャッシュメモリ制御方式を説明する。
まず、第5図(a)に示されるように、キャッシュメモ
リMl上に、共有メモリCM上のアドレスAを含む領域
が登録されており、且つ、該キャッシュメモリM1の領
域が既にCPUIからの書き込み処理により変更済領域
となっている状1!(V=1、M・1)のとき、CPU
2からの要求でキャッシュメモリM2を通して共有メモ
リ側上のアドレスAの領域へのアクセスが発生する場合
を考える(第5図(a)中、(1)参照)。
このとき、キャッシュメモリM1は、共有メモリCMに
対するアクセスを監視しており、02口2から共有メモ
リ側へのアクセスがキャッシュメモリ旧が持っているエ
ントリと同一領域であるかをチエツクする(第5図(b
)中、(2)参照)。
また、第5図(b)に示されるように、前記アクセスが
同一領域である場合には、キャッシュメモリM1の内容
を共有メモリCMに反映するために、参照符号(1)で
示したCPU2から共有メモリCMへのアクセスを中断
さセる(第5図(b)中、(3)参照)。さらに、CP
U2から共有メモリけへのアクセスを中断した後、キャ
ッシュメモリM1の内容をコピーバックして共有メモリ
CM上のエントリデータを書き換える(第5図(c)中
、(4)参照)。そして、第5図(c)に示されるよう
に、前記キャッシュメモリM1の内容のコピーバックが
終了した後に、CPU2が先刻中断されたアクセスを再
開して、更新された共有メモリCMの内容をアクセスす
る(第5図(c)中、(5)参照)。
〔発明が解決しようとする課題〕
第5図を参照して説明したように、従来のキャッシュメ
モリ制御方式においては、例えば、CPU2がアクセス
しようとする共有メモリCM内の領域がキャッシュメモ
リM1における変更済領域(V=1、Ll)である場合
、CPU2から共有メモリCMへのアクセスを中断した
後、キャッシュメモリM1の内容をコピーバックして共
有メモリCM上のエントリデータを書き換え、その後、
CPU2が先に中断されたアクセスを再開して、更新さ
れた共有メモリC?lの内容をアクセスするようになっ
ている。すなわち、従来のキャッシュメモリ制御方式は
、CPU2から共有メモリ側へのアクセスは、キャッシ
ュメモリM1の内容をコピーバックして共有メモリCM
上のエントリデータの書き換えが終了した後でなければ
行うことができない。
このように、第5図に示す従来のキャッシュメモリ制御
方式では、中断された要求が共有メモリのリード要求で
あった場合、書き戻す動作の終了後に、再度共有メモリ
に対してリードアクセスを行う必要があり、バストラフ
ィックの改善および性能向上の面で問題となっている。
本発明は、上述した従来のキャッシュメモリ制御方式が
有する課題に鑑み、パストラフィックの改善してシステ
ム性能を向上することを目的とする。
[課題を解決するための手段] 本発明によれば、複数のコピーバック方式のキャッシュ
メモリM1.M2.M3と、共有メモリCF’lと、該
複数のキャッシュメモリおよび該共有メモリを接続する
システムバスSBとを備え、該各キャッシュメモリはそ
れぞれの内部エントリに有効表示フラグV、変更済表示
フラグh、共有表示フラグSおよびアドレスを有してい
るシステムにおけるキャッシュメモリ制御方式であって
、演算装置CPt1l、CPU2゜CPU3からの書き
込み要求の対象領域が共有未変更(V=1.M・0、S
=1)の場合、書き込みデータを前記キャッシュメモリ
内に書き込むと共に、前記共有メモリにも書き込む手段
と、前記システムバス上の他のキャッシュメモリまたは
I/Oデバイスの前記共有メモリへのアクセスを監視す
る手段と、前記アクセスの対象領域が変更済領域(V=
1.M=1)であった場合に該アクセスの中断を前記共
有メモリに対して行う手段と、前記変更済領域への他の
アクセスを中断した後、当該領域を共有メモリに書き戻
す手段とを具備し、前記演算装置からの要求データがキ
ャッシュメモリ内に存在しない時の共有メモリへのリー
ド要求を、他のキャッシュメモリから中断された後、当
該他のキャッシュメモリからの共有メモリへの書き戻し
データをスチールすることにより実行し、前記共有メモ
リへのアクセス回数を削減するようにしたことを特徴と
するキャッシュメモリ制御方式が提供される。
〔作 用〕
本発明のキャッシュメモリ制御方式によれば、演算装置
CPUI 、 CPU2. CPU3からの書き込み要
求の対象領域が共有未変更(V=1 、 M=0、S=
1)の場合には、書き込みデータがキャッシュメモリ内
に書き込まれると共に、共有メモリにも書き込まれる。
システムバス上の他のキャッシュメモリまたはI/Oデ
バイスの共有メモリへのアクセスは監視され、アクセス
の対象領域が変更済領域(V=1、M・1)であった場
合には、該アクセスの中断が共有メモリに対して行われ
る。また、該変更済領域への他のアクセスが中断された
後、当該領域が共有メモリに書き戻される。そして、演
算装置からの要求データがキャッシュメモリ内に存在し
ない時の共有メモリへのリード要求が、他のキャッシュ
メモリから中断された後、当該他のキャッシュメモリか
らの共有メモリへの書き戻しデータをスチールすること
により取り込むようになっている。これにより、共有メ
モリへのアクセス回数を削減することができる。
すなわち、本発明のキャッシュメモリ制御方式によれば
、共有メモリに対するアクセスを中断したキャッシュメ
モリが、共有メモリに対して該当ブロックのデータを書
き戻す際に、アクセスを中断されたキャッシュメモリが
その書き戻しアクセスを監視してデータをスチールする
ようになっている。これによって、書き戻し終了後に再
度リードアクセスする必要が無く、パストラフィックを
改善してシステム性能を向上することができる。
〔実施例〕
以下、図面を参照して本発明に係るキャッシュメモリ制
御方式を詳述する。
第1図は本発明に係るキャッシュメモリ制御方式の原理
を説明するための図である。同図に示されるように、本
発明のキャッシュメモリ制御方式が適用されるシステム
は、複数のコピーパック方式のキャッシュメモリMLM
2と、共有メモリCMと、これらのキャッシュメモリM
l 、 ?I2および共有メモリCMを接続するシステ
ムバスSBとを備えている。
ここで、各キャッシュメモリMl、M2は、それぞれの
内部エントリに有効表示フラグV、変更済表示フラグM
、共有表示フラグSおよびアドレスを有している。
第1図(a)〜(c)に示されるように、本発明のキャ
ッシュメモリ制御方式は、キャッシュメモリM1が他の
キャッシュメモリM2 (或いは、I/Oデバイス)等
からの共有メモリCMへのアクセスを監視して、アクセ
ス対象領域が変更済領域(M、M=1)である場合に、
共有メモリ口に対するアクセスを中断してキャッシュメ
モリM1上の対応領域に書き戻し動作(コピーパック)
を行うようになっている。このとき、キャッシュメモリ
と2は、書き戻されるデータをスチールして該キャッシ
ュメモリ間内に取り込むようになっている。次に、この
本発明のキャッシュメモリ制御方式を図面を参照して説
明する。
まず、第1図(a)に示されるように、キャッシュメモ
リMl上に、共有メモリCM上のアドレスAを含む領域
が登録されており、且つ、該キャッシュメモリ肘の領域
が既にCPUIからの書き込み処理により変更済領域と
なっている状態(V=LM、1)のとき、CPU2から
の要求でキャッシュメモリM2を通して共有メモリCM
上のアドレスAの領域へのアクセスが発生する場合を考
える(第1図(a)中、(1)参照)。
このとき、キャッシュメモリ肘は共有メモリ側に対する
アクセスを監視しており、CPU2から共有メモリCM
へのアクセスがキャッシュメモリMlが持っているエン
トリと同一領域であるかをチエツクする(第1図(b)
中、(2)参照)。
また、第1図(b)に示されるように、前記アクセスが
同一領域である場合には、キャッシュメモリM1の内容
を共有メモリCMに反映するために、参照符号(1)で
示したCPt12から共有メモリCMへのアクセスを中
断させる(第1図(b)中、(3)参照)。さらに、C
PU2から共有メモリCMへのアクセスを中断した後、
キャッシュメモリM1の内容をコピーバックして共有メ
モリCM上のエントリデータを書き換える(第1図(c
)中、(4)参照)。以上の動作は、第5図に示す従来
のキャッシュメモリ制御方式と同様である。
そして、本発明のキャッシュメモリ制御方式では、゛第
1図(c)に示されるように、前記キャッシュメモリM
1が共有メモリCMに対してコピーバックを行なう際、
中断されたCPU2 (キャッシュメモリM2)側がそ
のライトアクセスをスチールしてデータを取り込むと共
に、キャッシュメモリM1によるリードアクセス中断要
求信号をラッチしたレジスタの内容をクリアしてリード
アクセスのリトライを行わないようになっている(第1
図(c)中、(5)′参照)。これにより、コピーパッ
ク動作終了までリードアクセスを中断することが無く、
共有メモリCMに対するアクセスを削減することができ
る。
ところで、キャッシュメモリのエントリ上に無い領域に
対して演算装置から書き込み要求がある場合、共有メモ
リ上から対象領域をリードしてキャッシュメモリに登録
してから、演算装置からの書き込みデータをキャッシュ
メモリ上のエントリにのみ反映する。そして、エントリ
状態を変更済(V=1、M=1)に設定するようなキャ
ッシュメモリを前述のデータスチール方式に使用する場
合を考えると、他のキャッシュメモリの書き戻しデータ
をスチールして登録する際、複数のキャッシュメモリが
同時にスチールを行うと、それぞれのキャッシュメモリ
上で当該エントリが変更済状J1!(V=1゜M−1)
に設定されてしまうことになる。すなわち、この領域に
対する演算装f (CPU)からのライトデータがキャ
ッシュメモリの外部へ反映されない状態が発生すること
になる。
第2図は本発明のキャッシュメモリ制御方式の一例を説
明するための図である。同図(a)において、キャッシ
ュメモリML キャッシュメモリM2およびキャッシュ
メモリ旧には、演算装置(CPUI 。
CPU2. CPU3)からの書き込み要求アドレス領
域に対するエントリが無く、また、該キャッシュメモリ
M1、M2、M3は、共有メモリCMから当該アドレス
領域をリードしてキャッシュメモリMl、M2.M3に
登録し、CPUからのライトデータを反映して、状態を
変更済(V=1.M=1)にするタイプのものであると
する。
これらのキャッシュメモリに対して、第1図を参照して
説明した本発明のキャッシュメモリ制御方式をそのまま
適用すると、CPU2およびCPU3からの共有メモリ
CMへのアクセスをキャッシュメモリM1が中断させ(
第2図(a)中、(1)参照)、キャッシュメモリ阿1
のエントリを共有メモリ側へコピーバッりする(第2図
(a)中、(2)参照)が、このアクセスをキャッシュ
メモリM2およびキャッシュメモリ旧がスチールして、
それぞれのキャッシュメモリ間開に登録することになる
(第2図(a)中、(3)参照)。
このとき、上述したタイプのキャッシュメモリでは、登
録後のエントリ状態が変更法(M、M=1)に設定され
る。すなわち、該領域に対するCPUからのライトデー
タがそれぞれのキャッシュメモリの中でのみ更新され、
共有メモリCMに反映されないことになってしまう(第
2図(a)中、(4)参照)。
さらに、この状態で別のキャッシュメモリから当該領域
へのアクセスが入ると、複数のキャッシュメモリからの
同一領域へのコピーバックによりライトデータが消失し
てしまう欠点もある。
そこで、第2図(b)に示されるように、本実施例では
、他のキャッシュメモリがコピーバックしているデータ
をスチールして登録する場合には、常に、変更清秋Jf
fi(V=1.M=1)ではなく共有未変更状J!!(
V=1.M=O,S・1)として登録エントリに対する
ライトデータを外部に反映させる(第2図(b)中、(
4)゛ 参照)ようになっている。これによって、複数
キャッシュの同時スチール動作時のデータネ−致状態を
回避することができる。
ところで、システムバスに接続された成るデノくイスが
コマンドを発行し、それに呼応する応答があるまで該コ
マンドを発行したデバイスがバスロックするハンドシェ
イクバス方式に対して、コマンドを発行した時点でバス
権を開放するスブリ・ントバス方式のものがある。この
スプリットバス方式を本発明のキャッシュメモリ制御方
式に採用した場合、共有メモリのリトライ要求信号発行
のためのバス権獲得が該キャッシュメモリのり一ドデー
タのスチールと時間的に前後する恐れがある。
例えば、該キャッシュメモリの共有メモリへのリードア
クセスが他のキャッシュメモリによって中断された時、
共有メモリが該キャッシュメモリに対してリトライ要求
応答を発行し、その応答のためのバス権獲得が他のキャ
ッシュメモリの共有メモリへの該アドレスのデータの書
き戻し後になった場合、該キャッシュメモリが書き戻し
データをスチールした後にリトライ要求応答を受信する
ことになる。そして、このリトライ要求に従って、該キ
ャッシュメモリがリトライ動作を起こすと、スチールし
たブロックに対して再度リードアクセスを行なうことに
なる。すなわち、共有メモリからのリトライ要求応答に
従って該共有メモリからデータを取り込むと、スチール
により該キャッシュメモリに取り込んだデータと同じデ
ータを再度アクセスすることになり、バスのトラフィッ
クを向上させることができない。
そこで、システムバスがスプリット方式のバスとして構
成されている場合、他のキャッシュメモリからの共有メ
モリへの書き戻しデータをスチールした時は、共有メモ
リからのリトライ要求を保持するレジスタをクリアして
同一のアクセスを共有メモリへ出力しないように構成す
る。
また、システムバスがスプリット方式のバスとして構成
されている場合、他のキャッシュメモリの共有メモリへ
の書き戻しデータをスチールした後、他のキャッシュメ
モリの中断指示に呼応する共有メモリからのリトライ要
求応答を受信した時でも、該リトライ要求応答を無視し
て、スチール後に再度同一アクセスを共有メモリに出力
しないように構成する。
さらに、各キャッシュメモリは、それぞれ演算装置に設
けられた内部キャッシュメモリとして構成することもで
きる。
このように、本発明のキャッシュメモリ制御方式によれ
ば、キャッシュメモリM1が共有メモリCMに対してコ
ピーバックを行なう際、中断されたCPU2側がそのラ
イトアクセスをスチールしてデータを取り込むと共に、
キャッシュメモリM1によるリードアクセス中断要求信
号をラッチしたレジスタの内容をクリアし、リードアク
セスのリトライを行わないようになっている。また、他
のキャッシュメモリがコピーバックしているデータをス
チールして登録する際には、変更清秋B(V=1.M=
1)ではなく共有未変更状態(V=1.M・0、S=1
)として設定し、登録エントリに対するライトデータを
外部に反映させることによって、複数キャッシュの同時
スチール動作時のデータ不一致状態を回避するようにな
っている。さらに、キャッシュメモリM2の共有メモリ
CMへのリードアクセスがキャッシュメモリM1によっ
て中断され、キャッシュメモリM1の書き戻しデータを
スチールしてリードした後に共有メモリCMからのリト
ライ要求信号をラッチした場合には、該リトライ要求信
号無視して、スチールしデータと同一アドレスのデータ
を再度取り込まないようにして、バスの無駄な使用を無
くすようになっている。
第3図は本発明を実現するキャッシュメモリの一構成例
を示す図である。同図において、参照符号31はタグ部
(タグメモリ)であって、アクセスデータの物理アドレ
スを記憶するアドレス部、エントリ部、および、3つの
状態フラグV、 M、 Sを備えている。この3つの状
態フラグV、 M、 Sは、アドレスとデータとの対が
有効であるか否かを示す有効表示フラグ■、データが書
き換えられたか否かを示す変更法表示フラグM、および
、当該キャッシュメモリ内のデータが他に共有されてい
るか否かを示す共有表示フラグSにより構成されている
参照符号32はデータ部を示し、33は旧T/MISS
処理によるV、?llピット制御部よび、ライトアドレ
ス出力、SフラグOFF制御を行う制御部を示す。この
制御部33には、CPUからのり一ド/ライト信号。
および、 CPUアドレスと保持されているアドレスと
を比較器(CMP)383で比較した出力並びに有効表
示フラグ■の論理積(ANDゲート373)が供給され
、システムバスSBへライトアドレスを送出すると共に
、各フラグV、M、Sの制御を行うようになっている。
外部アドレスは、比較器(CMP)381および比較器
(CMP)382に供給されている。比較器381は、
ANDゲート371および中断信号発生回路35と共に
、中断要求信号を発生するために使用され、外部アドレ
スとそのキャッシュメモリに保持されているアドレスが
一致し、それが有効であり(V=1) 、且つ。
そのキャッシュメモリに保持されているデータが書き換
えられている場合(変更済の場合:M=1)に中断信号
発生回路35から中断要求信号が出力されるようになっ
ている。すなわち、システムバスSB上の他のキャッシ
ュメモリまたはI/Oデバイスの共有メモリ口へのアク
セスを監視して、該アクセスの対象領域が変更済領域(
V=1.M・1)であった場合に、上記中断要求信号に
より該アクセスの中断を共有メモリCMに対して通知す
るようになっている。
また、比較器382は、ANDゲート372およびシー
ケンサ36と共に、他のキャッシュメモリからの共有メ
モリへの書き戻しデータのスチール処理に使用され、外
部アドレスとCPUからの要求データのアドレスが一致
し、且つ、ライト要求がある場合に、シーケンサ36か
らRAMへの書き込みパルスが出力されるようになって
いる。この書き込みパルスは、タグ部31のエントリお
よびデータ部33に供給されそれぞれアドレスおよびデ
ータが登録されるようになっている。これによって、C
PUからの要求データがキャッシュメモリ内に存在しな
い時の共有メモリへのリード要求が、他のキャッシュメ
モリから中断された後、当該能のキャッシュメモリから
の共有メモリへの書き戻しデータをスチールすることが
できるようになっている。
ここで、データ部32のバッファは、外部データバスに
繋がれ、例えば、4ワ一ド分のデータが1つのブロック
として登録されるようになっている。
また、比較器382の出力は、エントリ制御回路34に
も供給され、該エントリ制御回路34によりタグ部31
のエントリが制御されるようになっている。
第4図は本発明が適用されるキャッシュメモリの一例の
状態遷移図であり、第2図に示すキャッシュメモリ制御
方式における状態遷移図を示すものである。第4図にお
いて、状態Iはキャッシュメモリに保持されているデー
タ(対象となる領域)が無効(V・0)であることを示
し、状態Uはキャッシュメモリに保持されているデータ
が共有未変更(V=1.M・0、S=1)であることを
示し、そして、状態Mはキャッシュメモリに保持されて
いるデータが変更済(V=1、M=1)であることを示
している。同図中、■ばlブロックリードによる状tl
iIから状態Uへの遷移を示し、■は自分のライトアク
セスヒツト、ストアスルー、他のキャッシュをバッファ
インバリデートによる状態Uから状態Mへの遷移を示し
、■はリードモディファイドライト(ReadModi
fied Write)による状態Iから状態Mへの遷
移を示し、■は他のデバイスのリードアクセスに起因す
るコピーバックによる状態Mから状M1.Uへの遷移を
示し、また、■は他のデバイスのリードモディファイド
ライト或いはライトアクセスに起因するコピーバックに
よる状態Mから状態Iへの遷移を示している。
そして、第4図中、■はリードモディファイドライト時
に他のキャッシュメモリのコピーバックをスチールして
登録することによる状態Iから状IIUへの遷移を示し
ている。すなわち、CPUからの書き込み要求の対象領
域がキャッシュメモリ内に存在しない場合(状111:
V=0)、該キャッシュメモリは共有メモリから該対象
領域の1ブロックをリードして当該キャッシュメモリに
登録した後、ycpvからの書き込みデータを該キャッ
シュメモリ上にのみ書き込みそのブロックを変更済領域
に設定するが、他のキャッシュメモリの書き戻しデータ
をスチールして内部に登録する際は、共有未変更領域(
状態U:v・l、M=0,5=1)とすることにより複
数キャッシュの同時スチール時におけるデータ不一致状
態を回避するようになっている。
〔発明の効果〕
以上説明したように本発明によれば、キャッシュメモリ
のリード要求が他のキャッシュメモリから中断された後
、他のキャッシュメモリからの共有メモリへの書き戻し
データをスチールすることによって、パストラフィック
の改善およびシステム性能の向上を行うことができる。
【図面の簡単な説明】
第1図は本発明に係るキャッシュメモリ制御方式の原理
を説明するための図、 第2図は本発明のキャッシュメモリ制御方式の一例を説
明するための図、 第3図は本発明を実現するキャッシュメモリの一構成例
を示す図、 第4図は本発明が適用されるキャッシュメモリの一例の
状態遷移図、 第5図は従来のキャッシュメモリ制御方式の一例を説明
するための図である。 (符号の説明) CPU1、CPU2.CPU3・・・演算装置、M1、
M2、M3・・・キャッシュメモリ、CM・・・共有メ
モリ、 SB・・・システムバス、 ■・・・有効表示フラグ、 M・・・変更済表示フラグ、 S・・・共有表示フラグ。 (c) 第1図 無効 U: 共有未変更 変更法 1ブロックリード リードモディファイドライト 他のデバイスのリードアクセスによるコピーバンクO: ■: 本発明が適用されるキャッシュメモリの一例の状態遷移
図第4図

Claims (1)

  1. 【特許請求の範囲】 1、複数のコピーバック方式のキャッシュメモリ(M1
    、M2、M3)と、共有メモリ(CM)と、該複数のキ
    ャッシュメモリおよび該共有メモリを接続するシステム
    バス(SB)とを備え、該各キャッシュメモリはそれぞ
    れの内部エントリに有効表示フラグ(V)、変更済表示
    フラグ(M)、共有表示フラグ(S)およびアドレスを
    有しているシステムにおけるキャッシュメモリ制御方式
    であって、 演算装置(CPU1、CPU2、CPU3)からの書き
    込み要求の対象領域が共有未変更(V=1、M=0、S
    =1)の場合、書き込みデータを前記キャッシュメモリ
    内に書き込むと共に、前記共有メモリにも書き込む手段
    と、前記システムバス上の他のキャッシュメモリまたは
    I/Oデバイスの前記共有メモリへのアクセスを監視す
    る手段と、 前記アクセスの対象領域が変更済領域(V=1、M=1
    )であった場合に該アクセスの中断を前記共有メモリに
    対して行う手段と、 前記変更済領域への他のアクセスを中断した後、当該領
    域を共有メモリに書き戻す手段とを具備し、前記演算装
    置からの要求データがキャッシュメモリ内に存在しない
    時の共有メモリへのリード要求を、他のキャッシュメモ
    リから中断された後、当該他のキャッシュメモリからの
    共有メモリへの書き戻しデータをスチールすることによ
    り実行し、前記共有メモリへのアクセス回数を削減する
    ようにしたことを特徴とするキャッシュメモリ制御方式
    。 2、前記演算装置からの書き込み要求の対象領域が前記
    キャッシュメモリ内に存在しない場合、該キャッシュメ
    モリは前記共有メモリから該対象領域の1ブロックをリ
    ードして当該キャッシュメモリに登録した後、該演算装
    置からの書き込みデータを該キャッシュメモリ上にのみ
    書き込みそのブロックを変更済領域に設定するキャッシ
    ュメモリにおいて、他のキャッシュメモリの書き戻しデ
    ータをスチールして内部に登録する際は、共有未変更領
    域(V=1、M=0、S=1)とすることにより複数キ
    ャッシュの同時スチール時におけるデータ不一致状態を
    回避するようにした請求項1記載のキャッシュメモリ制
    御方式。 3、前記システムバスはスプリット方式のバスとして構
    成され、前記共有メモリは前記中断指示に対応してリト
    ライ要求を応答する手段を有し、前記キャッシュメモリ
    は前記共有メモリへのアクセスにおいて他のキャッシュ
    メモリからの中断指示に呼応する該共有メモリからのリ
    トライ要求を保持するレジスタを備え、該他のキャッシ
    ュメモリからの共有メモリへの書き戻しデータをスチー
    ルした時は該レジスタをクリアして同一のアクセスを共
    有メモリへ出力しないようにした請求項1記載のキャッ
    シュメモリ制御方式。 4、前記システムバスはスプリット方式のバスとして構
    成され、前記共有メモリは前記中断信号に対応してリト
    ライ要求を応答する手段を有し、前記キャッシュメモリ
    は中断されたアクセス領域に対する他のキャッシュメモ
    リの共有メモリへの書き戻しデータをスチールした後、
    前記共有メモリからの他のキャッシュメモリの中断指示
    に呼応するリトライ要求応答を受信した場合に該リトラ
    イ要求応答に無視する手段を備え、スチール後に再度同
    一アクセスを共有メモリに出力しないようにした請求項
    1記載のキャッシュメモリ制御方式。 5、前記複数のキャッシュメモリは、それぞれ演算装置
    に設けられた内部キャッシュメモリとして構成されてい
    る請求項1記載のキャッシュメモリ制御方式。
JP2254083A 1990-09-26 1990-09-26 キャッシュメモリ制御方式 Pending JPH04133146A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2254083A JPH04133146A (ja) 1990-09-26 1990-09-26 キャッシュメモリ制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2254083A JPH04133146A (ja) 1990-09-26 1990-09-26 キャッシュメモリ制御方式

Publications (1)

Publication Number Publication Date
JPH04133146A true JPH04133146A (ja) 1992-05-07

Family

ID=17259990

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2254083A Pending JPH04133146A (ja) 1990-09-26 1990-09-26 キャッシュメモリ制御方式

Country Status (1)

Country Link
JP (1) JPH04133146A (ja)

Similar Documents

Publication Publication Date Title
JP3067112B2 (ja) 遅延プッシュをコピー・バック・データ・キャッシュに再ロードする方法
US5155824A (en) System for transferring selected data words between main memory and cache with multiple data words and multiple dirty bits for each address
JP3737834B2 (ja) 2重化キャッシュ・スヌープ機構
US6014728A (en) Organization of an integrated cache unit for flexible usage in supporting multiprocessor operations
US5185878A (en) Programmable cache memory as well as system incorporating same and method of operating programmable cache memory
CA1306312C (en) Write-shared cache circuit for multiprocessor system
US6199144B1 (en) Method and apparatus for transferring data in a computer system
JP4613247B2 (ja) 演算処理装置、情報処理装置及び演算処理装置の制御方法
JPH06243035A (ja) コンピュータ・システムのためのクラスタ・アーキテクチャにおける一般化共用記憶
JPH02141845A (ja) マルチプロセッサシステムにおいて中央処理ユニットにより主メモリからデータブロックを読み取る方法
JPH07141299A (ja) コンピュータシステムを二重プロセッサシステムとして利用する装置及びその方法
US7051163B2 (en) Directory structure permitting efficient write-backs in a shared memory computer system
JPH1031625A (ja) マルチ・プロセッサ・システムにおける改良されたコピーバック性能のためのライトバック・バッファ
US5765195A (en) Method for distributing interprocessor interrupt requests via cache memory coherency mechanisms
WO1997004392A1 (en) Shared cache memory device
JPH0511337B2 (ja)
JPH03163640A (ja) マルチプロセッサシステムおよびそれに用いるキャッシュメモリ
JP2552704B2 (ja) データ処理装置
JPH04133146A (ja) キャッシュメモリ制御方式
JPH03230238A (ja) キャッシュメモリ制御方式
JPS63223846A (ja) キヤツシユ・メモリ−
JP3081635B2 (ja) キャッシュメモリの無効化処理装置および無効化制御方法
JPH04137052A (ja) キャッシュメモリ制御方式
JP3088293B2 (ja) キャッシュメモリの記憶一致制御装置及び記憶一致制御方法
JP3145479B2 (ja) マルチプロセッサシステムとそのキャッシュメモリ制御方法および装置