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

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

Info

Publication number
JPH0492938A
JPH0492938A JP2206849A JP20684990A JPH0492938A JP H0492938 A JPH0492938 A JP H0492938A JP 2206849 A JP2206849 A JP 2206849A JP 20684990 A JP20684990 A JP 20684990A JP H0492938 A JPH0492938 A JP H0492938A
Authority
JP
Japan
Prior art keywords
cache memory
memory
access
copy
cache
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
JP2206849A
Other languages
English (en)
Inventor
Takeshi Kitahara
北原 毅
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 JP2206849A priority Critical patent/JPH0492938A/ja
Publication of JPH0492938A publication Critical patent/JPH0492938A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔概要〕 複数のキャッシュメモリと少なくとも1つの共有メモリ
を備えたマルチプロセッサシステムに係わり、特に、ス
トア・スルー方式のキャッシュメモリとコピー・バック
方式のキャッシュメモリが混在している場合において各
キャッシュメモリ間を制御する技術に関し、 キャッシュメモリ内で書き換えた部分を消失させずに、
且つ、システム全体の性能低下を抑制することを目的と
し、 前記コピー・バック方式のキャッシュメモリはリプレー
ス方式で動作するものであって、且つ、当該キャッシュ
メモリが保有し既に書き換えられていて前記共有メモリ
に未だ反映されていない領域に対する他のキャッシュメ
モリからの該共有メモリへのアクセスを検出した場合に
該アクセスを一時中断させる手段と、当該アクセスがス
トア・スルー方式のキャッシュメモリまたはコピー・バ
ック方式のキャッシュメモリのいずれによって行われた
のかを判別する手段とを有し、該判別の結果に基づき、
前記アクセスを行ったキャッシュメモリがコピー・バッ
ク方式のキャッシュメモリであった場合には当該アクセ
スの対象である領域のデータを前記共有メモリに書き込
むことなく当該コピー・バック方式のキャッシュメモリ
へ転送し、前記アクセスを行ったキャッシュメモリがス
トア・スルー方式のキャッシュメモリであった場合には
当該アクセスの対象である領域のデータを前記共有メモ
リへ書き戻すように構成する。
〔産業上の利用分野〕
本発明は、複数のキャッシュメモリと少なくとも1つの
共有メモリを備えたマルチプロセッサシステムに係わり
、特に、ストア・スルー方式のキャッシュメモリとコピ
ー・バック方式のキャッシュメモリが混在している場合
において各キャッシュメモリ間を制御する技術に関する
〔従来の技術〕
キャッシュメモリ間でデータの整合性(コヒーレンジ)
を維持する方式として、ストア・スルー方式とコピー・
バック方式が知られている。
ストア・スルー方式では、キャッシュデータを書き換え
る毎に共有メモリの書き換えも行い、他のキャッシュメ
モリのデータは無効化する。そのため、この方式では常
にキャッシュデータと共有メモリのデータが一致し、ま
た、制御方式が簡単なため、設計が容易であるという利
点がある。しかしながら、いずれかのプロセッサが対応
するキャッシュメモリへの書き込み処理を行う毎にバス
・アクセスが生じるので、バス・トラヒックが増大する
という欠点がある。
これに対しコピー・バック方式では、キャッシュデータ
を書き込み時に「ヒツト」しても、そのデータを共有す
るメモリが他に無ければバス・アクセスは行わない、つ
まり、バス・アクセスの頻度がストア・スルー方式に比
して少なくなり、システム全体の性能が向上するという
利点がある。
しかしその反面、キャッシュ制御が複雑化するという欠
点をもっている。
そのため、コピー・バック方式のキャッシュメモリとス
トア・スルー方式のキャッシュメモリが混在しているシ
ステムにおいて各キャッシュメモリ間を制御する場合、
各方式の利点をそれぞれ最大限に活かすことができるよ
うな技術が要望されている。
第6図に従来のキャッシュメモリ制御方式の一例が示さ
れる0図示の例では、キャッシュメモリAがコピー・バ
ック方式のキャッシュメモリであるものとする。
■ 他のキャッシュメモリBが共有メモリCをアクセス
して1ブロツクデータのフェッチを開始する。
■ キャッシュメモリAは、キャッシュメモリBのアク
セス対象の領域を保有していて且つ当該領域が既に書き
換えられているが未だ共有メモリCに反映されていない
領域であることを検出し、キャッシュメモリBに対して
当該アクセスを一時中断させるための信号を送る。
■ キャッシュメモリAは、共有メモリCの代わりに、
キャッシュメモリBへ当該アクセスの対象である領域の
ブロックデータを転送する。この時、該ブロックデータ
の共有メモリCへの書き込みは行わない、その後、キャ
ッシュメモリAは当該領域のブロックをパージ(追放)
する。
〔発明が解決しようとする課題〕
上述した従来の方式では、キャッシュメモリBがキャッ
シュメモリAと同様のコピー・バック方式であれば問題
は生じない。
しかしながら、キャッシュメモリBがストア・スルー方
式のキャッシュメモリであった場合、キャッシュメモリ
A内で書き換えられたブロックはキャッシュメモリBに
のみ登録され、その後、当該ブロックはキャッシュメモ
リB内のブロック・リプレースによりクリアされてしま
う、この場合、キャッシュメモリA内で書き換えられた
部分が消失してしまう。
この不都合を解消するため、上記■の段階において当該
ブロックを共有メモリCにも同時に書き込む方式が考え
られる。ところがこの方式では、システムバスに接続さ
れるキャッシュメモリの全てがコピー・バック方式であ
った場合等に、コピー・バック方式が備えている利点(
バス・アクセスの頻度を減らす)を最大限に活かすこと
ができず、そのため、システム全体の性能が低下すると
いう問題が生じる。
本発明は、かかる従来技術における課題に鑑み創作され
たもので、キャッシュメモリ内で書き換えた部分を消失
させずに、且つ、システム全体の性能低下を抑制するこ
とができるキャッシュメモリ制御方式を提供することを
目的としている。
〔課題を解決するための手段〕
第1図(a) 、 (b)の原理図に示されるように、
本発明のキャッシュメモリ制御方式は、コピー・バック
方式(M1)とストア・スルー方式(阿2)が混在した
複数のキャッシュメモリと少なくとも1つの共有メモリ
口がシステムバスを介して接続されているマルチプロセ
ッサシステムにおいて、前記コピー・バック方式のキャ
ッシュメモリはリプレース方式で動作するものであって
、且つ、当該キャッシュメモリが保有し既に書き換えら
れていて前記共有メモリに未だ反映されていない領域に
対する他のキャッシュメモリからの該共有メモリへのア
クセスを検出した場合に該アクセスを一時中断させる手
段1と、当該アクセスがストア・スルー方式のキャッシ
ュメモリまたはコピー、バック方式のキャッシュメモリ
のいずれによって行われたのかを判別する手段2とを有
し、該判別の結果に基づき、前記アクセスを行ったキャ
ッシュメモリがコピー・バック方式のキャッシュメモリ
であった場合には当該アクセスの対象である領域のデー
タを前記共有メモリに書き込むことなく当該コピー・バ
ック方式のキャッシュメモリへ転送(3)シ、前記アク
セスを行ったキャッシュメモリがストア・スルー方式の
キャッシュメモリであった場合には当該アクセスの対象
である領域のデータを前記共有メモリへ書き戻す(4)
ようにしたことを特徴とする。
〔作用〕
成るキャッシュメモリが共有メモリに対してアクセスを
行った場合に、当該キャッシュメモリがストア・スルー
方式か、またはコピー・バック方式かに応じて、当該ア
クセスの対象である領域のデータの処理を適宜変えてい
る。
すなわち、当該アクセスがコピー・バック方式のキャッ
シュメモリによって行われた場合には、当該アクセスの
対象である領域のデータを前記共有メモリに書き込むこ
となく当該コピー・バック方式のキャッシュメモリへ転
送している。これによって、共有メモリへのシステムバ
ス上の無駄なアクセスが不要となり、システム全体の性
能低下を抑制することができる。
一方、当該アクセスがストア・スルー方式のキャッシュ
メモリによって行われた場合には、当該アクセスの対象
である領域のデータを共有メモリへ書き戻すようにして
いる。これによって、コピー・バック方式のキャッシュ
メモリ内で書き換えた部分は、消失させることなく無事
に共有メモリ内に保存することができる。
なお、本発明の他の構成上の特徴および作用の詳細につ
いては、添付図面を参照しつつ゛以下に記述される実施
例を用いて説明する。
〔実施例〕
第2図には本発明のキャッシュメモリ制御方式が適用さ
れる密結合マルチプロセッサシステムの構成が示される
本システムでは、コピー・バック方式のキャッシュメモ
リIAとストア・スルー方式のキャッシュメモリIBが
混在した複数のキャッシュメモリ(本実施例では図示の
簡単化のため各方式についてそれぞれ1個のみ図示)が
、システムバス4を介して少なくとも1つの共有メモリ
3(同様に簡単化のため1個のみ図示)に接続されてい
る。また、各キャッシュメモ1月A、1Bには、それぞ
れ対応するキャッシュメモリへのアドレス情報の供給や
データ読み出しおよび書き込み等の制御を行う中央処理
装置(CPU)2A、2Bが接続されている。
第3図にはコピー・バック方式のキャッシュメモ1月A
の内部構成が示される。図中、破線で囲まれた部分は本
発明の特徴をなす部分である。
同図において、31はタグ部(タグメモリ)であって、
アクセスデータの物理アドレスを記憶するアドレス部と
、2つの状態フラグ、すなわちアドレスとデータとの対
が有効であるか否かを指示する有効指示フラグ(V)と
データが書き換えられたか否かを指示する変更済指示フ
ラグ(M)、を有している。32はシステムバス4上の
アドレスを解読するデコーダ(DEC)、33はタグ部
31に登録されているアドレスとシステムバス4上のア
ドレスADDの一致/不一致を検出する比較回路、34
は該比較回路の出力と有効指示フラグおよび変更済指示
フラグに応答して一時中断信号INTを生成するアンド
ゲート、35はシステムバス4を介して送られてくる、
ストア・スルー方式かコピー・バック方式かを指示する
方式指示信号INDに応答するインバータ、36は該イ
ンバータの出力と一時中断信号INTに応答するアンド
ゲート、37は方式指示信号INDと一時中断信号IN
Tに応答するアンドゲート、そして38はアンドゲート
36,37の出力に応答して転送サイクルを形成する回
路を示す。
なお、比較回路33は、タグ部31のアドレスと外部ア
クセスアドレスADDが一致した時にその出力を“11
とし、それによってアンドゲート34を「有効」にする
。また、方式指示信号INDは、ストア・スルー方式を
指示する場合には“1”を呈し、コピー・バック方式を
指示する場合には“0”を呈する。また、アンドゲート
36の出力はキャッシュ間転送を起動させるための信号
として用いられ、−方、アンドゲート37の出力は共有
メモリ3へのコピー・バックを起動させるための信号と
して用いられる。
次に、第4図(a)〜(c)を参照しながらキャッシュ
メモリ制御形態について説明する。
〔第4図(a)参照〕 ■ キャッシュメモリIBは、自己がストア・スルー方
式であることを指示(第3図の方式指示信号IND参照
)して共有メモリ3をアクセスする。
■ キャッシュメモリIAは、キャッシュメモリIBが
ストア・スルー方式であることを識別すると共に、キャ
ッシュメモリIBに対してアクセスの一時中断を要求(
第3図の一時中断信号INT参照)する。
■ キャッシュメモリIAは、共有メモリ3に対して、
キャッシュメモリIBからのアクセスをキャンセルする
〔第4図(b)参照〕 ■ キャッシュメモリIAは、上記方式指示信号IND
により、上記アクセスを行ったキャッシュメモリがスト
ア・スルー方式のキャッシュメモリIBであることを検
出し、当該アクセスの対象である領域のデータ(ハツチ
ングで表示)を共有メモリ3へ書き戻す。
〔第4図(c)参照〕 ■ キャッシュメモリIBは、共有メモリ3をアクセス
して必要な部分をフェッチする。
なお、第4図(a)〜(c)には図示していないが、共
有メモリ3をアクセスするキャッシュメモリがコピー・
バック方式のキャッシュメモリであった場合には、従来
と同様に、当該アクセスの対象である領域のデータを共
有メモリ3に書き込むことなく当該コピー・バック方式
のキャッシュメモリへ転送する。
最後に、コピー・バック方式のキャッシュメモIJIA
が行う処理について、第5図のフローチャートを参照し
ながら説明する0図中、破線で囲まれた部分は本発明の
特徴をなす処理を表す。
まずステップ51では、外部からアクセスされた領域と
自己が保有しているブロックとの一致(YES)または
不一致(NO)を判定し、判定結果がYESの場合には
ステップ52に進み、判定結果がNOの場合にはステッ
プ51を繰り返す、ステップ52では、当該ブロックが
書き換えられている(YES)か否(NO)を判定し、
判定結果がYESの場合にはステップ53に進み、判定
結果がNOの場合にはこのフローは「エンド」となる、
ステップ53では、その外部アクセスを中断させるため
の信号(−時中断信号INT)をシステムバス4に送出
する。
ステップ54では、その外部アクセスがコピー・バック
方式のキャッシュメモリによって行われた(YES)か
否(NO)を判定し、判定結果がYESの場合にはステ
ップ55に進み、判定結果がNOの場合(すなわち、外
部アクセスがストア・スルー方式のキャッシュメモリに
よって行われた場合)にはステップ56に進む、ステッ
プ55では、共有メモリ3の代わりに、当該アクセスの
対象である領域のブロックデータをシステムバス4に送
出する。この後、ステップ57に進み、当該領域のブロ
ックをパージした後、このフローは「エンド」となる。
一方、ステップ56では、外部アクセスがストア・スル
ー方式のキャッシュメモリによって行われているので、
当該領域のブロックを共有メモリ3へ書き戻す、この後
、ステップ57に進み、上記と同様の処理が行われる。
このように本実施例のキャッシュメモリ制御方式によれ
ば、コピー・バック方式のキャッシュメモリIAが保有
し且つ既に書き換えられているが共有メモリ3に未だ反
映されていない領域に対して他のキャッシュメモリから
アクセスが有った場合に、該アクセスを一時中断させる
と共に、当該アクセスを行ったキャッシュメモリがスト
ア・スルー方式か、またはコピー・バック方式かに応じ
て、当該アクセスの対象である領域のデータの処理を上
述したよ4うに適宜変えている。
すなわち、当該アクセスの対象である領域のデータを当
該コピー・バック方式のキャッシュメモリIBへ転送す
ることにより、コピー・バック方式がもつ利点(無駄な
バス・アクセスを無くす)を最大限に活かすことができ
、ひいてはシステム全体の性能を高めることが可能とな
る。その一方では、当該アクセスの対象である領域のデ
ータを共有メモリ3へ書き戻すことにより、コピー・バ
ック方式のキャッシュメモリIA内で書き換えた部分を
消失させることなく無事に共有メモリ3内に保存するこ
とができる。
〔発明の効果〕
以上説明したように本発明によれば、コピー・バック方
式のキャッシュメモリとストア・スルー方式のキャッシ
ュメモリが混在したシステムにおいて各キャッシュメモ
リ間を制御する際に、キャッシュメモリ内で書き換えた
部分を消失させることなく、しかもシステム全体の性能
を高めることができる。
【図面の簡単な説明】
第1図(a)および(b)は本発明によるキャッシュメ
モリ制御方式の原理図、 第2図は本発明のキャッシュメモリ制御方式が適用され
る密結合マルチプロセッサシステムの構成を示すブロッ
ク図、 第3図は第2図におけるコピー・バック方式のキャッシ
ュメモリの内部構成を示す回路図、第4図(a)〜(C
)は第2図のシステムにおけるキャッシュメモリ制御形
態を時系列に示した図、第5図は第2図におけるコピー
・バック方式のキャッシュメモリが行う処理を表すフロ
ーチャート、 第6図は従来のキャッシュメモリ制御方式の問題点を説
明するための図、 である。 (符号の説明) Ml・・・コピー・バック方式のキャッシュメモリ、M
2・・・ストア・スルー方式のキャッシュメモリ、CM
・・・共有メモリ、 Pl・・・アクセスを一時中断させる処理、P2・・・
アクセスを行ったキャッシュメモリの方式を判別する処
理、 P3・・・当該コピー・バック方式のキャッシュメモリ
に該当データを転送する処理、 P4・・・共有メモリへ該当データを書き戻す処理。

Claims (1)

  1. 【特許請求の範囲】 1、コピー・バック方式(M1)とストア・スルー方式
    (M2)が混在した複数のキャッシュメモリと少なくと
    も1つの共有メモリ(CM)がシステムバスを介して、
    接続されているマルチプロセッサシステムにおいて、 前記コピー・バック方式のキャッシュメモリはリプレー
    ス方式で動作するものであって、且つ、当該キャッシュ
    メモリが保有し既に書き換えられていて前記共有メモリ
    に未だ反映されていない領域に対する他のキャッシュメ
    モリからの該共有メモリへのアクセスを検出した場合に
    該アクセスを一時中断させる手段(P1)と、 当該アクセスがストア・スルー方式のキャッシュメモリ
    またはコピー・バック方式のキャッシュメモリのいずれ
    によって行われたのかを判別する手段(P2)とを有し
    、 該判別の結果に基づき、前記アクセスを行ったキャッシ
    ュメモリがコピー・バック方式のキャッシュメモリであ
    った場合には当該アクセスの対象である領域のデータを
    前記共有メモリに書き込むことなく当該コピー・バック
    方式のキャッシュメモリへ転送(P3)し、 前記アクセスを行ったキャッシュメモリがストア・スル
    ー方式のキャッシュメモリであった場合には当該アクセ
    スの対象である領域のデータを前記共有メモリへ書き戻
    す(P4)ようにしたことを特徴とするキャッシュメモ
    リ制御方式。 2、前記複数のキャッシュメモリの各個は、前記共有メ
    モリにアクセスする際に自己がストア・スルー方式かコ
    ピー・バック方式かを指示する情報を前記システムバス
    に送出することを特徴とする請求項1に記載のキャッシ
    ュメモリ制御方式。
JP2206849A 1990-08-06 1990-08-06 キャッシュメモリ制御方式 Pending JPH0492938A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2206849A JPH0492938A (ja) 1990-08-06 1990-08-06 キャッシュメモリ制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2206849A JPH0492938A (ja) 1990-08-06 1990-08-06 キャッシュメモリ制御方式

Publications (1)

Publication Number Publication Date
JPH0492938A true JPH0492938A (ja) 1992-03-25

Family

ID=16530072

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2206849A Pending JPH0492938A (ja) 1990-08-06 1990-08-06 キャッシュメモリ制御方式

Country Status (1)

Country Link
JP (1) JPH0492938A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11409656B2 (en) 2020-07-09 2022-08-09 Fujitsu Limited Semiconductor device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11409656B2 (en) 2020-07-09 2022-08-09 Fujitsu Limited Semiconductor device

Similar Documents

Publication Publication Date Title
JPH10254772A (ja) キャッシュ・メモリ階層内で利用するキャッシュ・コヒーレンシ機構を実施するための方法およびシステム
JP2003108439A (ja) プロセッサ・システム
JPH0467242A (ja) プロセッサおよびそのキャッシュメモリ制御方法
US5978871A (en) Method of layering cache and architectural specific functions for operation splitting
JPH0492938A (ja) キャッシュメモリ制御方式
JP3013631B2 (ja) キャッシュメモリ同期方法
JPH04123151A (ja) システムバス
JPH03172943A (ja) キャッシュメモリ制御方式
JPH08137748A (ja) コピーバックキャッシュを有するコンピュータ及びコピーバックキャッシュ制御方法
JPH03230238A (ja) キャッシュメモリ制御方式
JP3081635B2 (ja) キャッシュメモリの無効化処理装置および無効化制御方法
JPH01266643A (ja) キャッシュ制御方式
JPH0195344A (ja) キャッシュ・メモリー
JPH0492937A (ja) キャッシュメモリ制御方式
JPH0535697A (ja) マルチプロセツサシステム
JPH0498338A (ja) キャッシュメモリ同時書き換え制御方式
JP3219422B2 (ja) キャッシュメモリ制御方式
JPH06208507A (ja) キャッシュメモリシステム
JPH04296950A (ja) キャッシュメモリ装置
JPH06231048A (ja) コンピュータシステムおよびキャッシュメモリ制御装置
JP2002024086A (ja) マイクロコンピュータ、コンピュータシステムおよび命令コード更新方法
JPH0498352A (ja) バッファ無効化制御方式
JPH01118944A (ja) キャッシュメモリ制御装置
JPH0498339A (ja) バッファ無効化制御方式
JP2000259495A (ja) キャッシュメモリ制御方法及びマルチプロセッサシステム