JPH0883214A - キャッシュメモリ制御方法 - Google Patents

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

Info

Publication number
JPH0883214A
JPH0883214A JP6218397A JP21839794A JPH0883214A JP H0883214 A JPH0883214 A JP H0883214A JP 6218397 A JP6218397 A JP 6218397A JP 21839794 A JP21839794 A JP 21839794A JP H0883214 A JPH0883214 A JP H0883214A
Authority
JP
Japan
Prior art keywords
data
cache
memory
address
cache 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
JP6218397A
Other languages
English (en)
Inventor
Shoji Kume
正二 久米
Hiroo Fujiwara
啓雄 藤原
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP6218397A priority Critical patent/JPH0883214A/ja
Publication of JPH0883214A publication Critical patent/JPH0883214A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】 【目的】 参照したキャッシュに異なったアドレスの変
更済み有効データが存在したとき、キャッシュから共有
メモリへのコピーバックとキャッシュ外からのデータ転
送とのデータリプレースの性能を向上させる。 【構成】 CPUからキャッシュメモリ1へのデータ参
照があると、比較回路6でアドレスアレイ2内のアドレ
スと一致チェックする。ヒットせず、キャッシュメモリ
1に、他のアドレスの変更済み有効データが存在したと
き、コピーバック要求が遅延レジスタ9にキューイング
され、エンコーダ11はデータ転送要求を出力する。転
送要求を受け取った他のCPUは自分のキャッシュをチ
ェックし、共有メモリはメモリ参照を開始する。次い
で、キューイングされているコピーバック要求が出力さ
れ、コピーバックデータを共有メモリに転送する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、コピーバック方式を採
る複数のキャッシュメモリと一つの共有メモリがシステ
ムバスを介して接続され、各プロセッサ用のキャッシュ
がバスの監視機構を持つマルチプロセッサシステムにお
けるキャッシュメモリ制御方法に関し、特に参照したキ
ャッシュメモリに他アドレスの変更済み有効データが存
在し、キャッシュメモリから共有メモリへのコピーバッ
クとキャッシュ外からのデータの転送が要求されたとき
のデータリプレースの性能を向上させたキャッシュメモ
リ制御方法に関する。
【0002】
【従来の技術】情報処理装置においては、一般にメモリ
アクセスを高速に行うために、小容量、高速アクセスの
キャッシュメモリを備えている。このキャッシュメモリ
は一定または任意の大きさのブロックに分割され、主記
憶装置のデータの一部を保持している。このキャッシュ
メモリに対してアドレスアレイがあり、キャッシュメモ
リのブロックが保持するデータの主記憶装置上の実アド
レスを登録している。
【0003】また、更新されたブロックを主記憶装置に
書き込む方式として、当該ブロックが置き換えの対象と
なった時に、主記憶装置に書き戻すコピーバック方式
(あるいはストアイン方式、ライトバック方式ともい
う)がある。
【0004】上記したコピーバック方式を採る複数のキ
ャッシュメモリと一つの共有メモリがシステムバスを介
して接続され、それぞれのプロセッサキャッシュがバス
の監視機構を持つマルチプロセッサシステムのシステム
バスとしては、例えば、IEEE Micro Aug.198
4に記載されたIEEE Futurebusなどがある。ま
た、マルチキャッシュにおけるキャッシュメモリの一致
制御としては、電子情報通信学会、コンピュータ研究会
並列計算機講習会 Feb.1988に記載されたSymmetr
yのプロトコル、あるいはACM Trans.on Computer
Systems Vol.4 No.4(Nov.1986)に記載さ
れたイリノイプロトコルなどがある。
【0005】図2は、マルチプロセッサシステムを示
す。このシステムは、複数のプロセッサ21、22と、
各プロセッサがプロセッサバスを介して、コピーバック
方式のキャッシュメモリおよびメモリコントローラ2
3、24に接続され、さらに、キャッシュメモリと一つ
の共有メモリ26がシステムバス25を介して接続され
た構成を採る。また、メモリコントローラにはバスの監
視機構が設けられ、共有メモリの書替要求を監視し、そ
のコピーがキャッシュメモリにあれば、キャッシュ内の
そのデータを無効にする。
【0006】図2のマルチプロセッサシステムにおい
て、参照したキャッシュメモリに他アドレスの変更済み
の有効データが存在し、キャッシュメモリから共有メモ
リへのコピーバックとキャッシュ外からのデータの転送
が要求されたときの、従来のデータリプレース方式を説
明する。図5(a)、(b)、(c)は、従来のキャッ
シュ制御動作を説明する図であり、図6は、従来のキャ
ッシュ制御動作のタイムチャートである。
【0007】図5(a)、(b)、(c)、図6におい
て、CPUAでデータBの参照要求が発生し、参照した
自キャッシュメモリ31にデータが存在せず、ヒットし
なかったとする。そして、参照したキャッシュメモリ3
1が一杯で、キャッシュメモリ31に異なったアドレス
の変更済み有効データAが存在した場合(これは、アド
レスアレイの有効フラグと変更済みフラグを参照するこ
とにより分かる)、このデータAが置き換えの対象とな
り、まずデータAを共有メモリ33にコピーバックす
る。CPUAはシステムバスにコピーバック要求を出
し、続いてデータA(コピーバックデータ)を共有メモ
リ33に転送する(図5の(a))。
【0008】次いで、CPUAはデータBの転送要求
をシステムバスに発行する。システムバスにデータBの
転送要求が発行されると、CPUBは自キャッシュメ
モリ32のキャッシュチェックを行ない、共有メモリ3
3はメモリ参照動作を開始する(図5の(b))。CP
UBにデータBが存在した場合は、CPUBからCPU
Aに対して、キャッシュ−キャッシュ間でデータを転送
し、共有メモリ33にデータBが存在した場合は、共
有メモリ33からCPUAに対してデータBを転送する
(図5の(c))。
【0009】
【発明が解決しようとする課題】上記したように、参照
したキャッシュメモリに、異なったアドレスの変更済み
有効データが存在した場合、キャッシュメモリから共有
メモリへコピーバックし、キャッシュ外(他のキャッシ
ュメモリまたは共有メモリ)からデータ転送しなければ
ならない。しかしながら、キャッシュ外からのデータ転
送は、他プロセッサのキャッシュチェックのために、ま
た一般にアクセス速度の遅い共有メモリの参照のために
時間がかかり、この結果、キャッシュ外からのデータ転
送によってマルチプロセッサシステムの性能が低下する
という問題があった。
【0010】本発明の目的は、参照したキャッシュに異
なったアドレスの変更済み有効データが存在したとき、
キャッシュから共有メモリへのコピーバックとキャッシ
ュ外からのデータ転送とのデータリプレースの性能を向
上させたキャッシュメモリ制御方法を提供することにあ
る。
【0011】
【課題を解決するための手段】前記目的を達成するため
に、本発明では、複数のプロセッサと、一つの共有メモ
リと、該共有メモリの一部のデータが記憶されコピーバ
ック方式を採る各プロセッサ用の複数のキャッシュメモ
リと、各エントリにアドレス、データが存在することを
示す有効フラグ、データが書き替えられたことを示す変
更済みフラグが登録された各プロセッサ用の複数のアド
レスアレイと、該複数のキャッシュメモリと該共有メモ
リとを接続するシステムバスと、前記各キャッシュメモ
リに設けられたバス監視手段とを備え、第1のプロセッ
サから自キャッシュメモリに対してデータ参照要求があ
ると、自アドレスアレイを参照して当該アドレスが登録
されていれば自キャッシュメモリをアクセスし、当該ア
ドレスが登録されずキャッシュミスし、該自キャッシュ
メモリに他アドレスの変更済み有効データが存在したと
き、該自キャッシュメモリから前記共有メモリに該変更
済み有効データをコピーバックし、前記自キャッシュメ
モリ外からデータ転送を行うマルチプロセッサシステム
におけるキャッシュメモリ制御方法において、前記第1
のプロセッサは前記システムバスに対して前記データ転
送の要求を発行し、次いで前記コピーバックの要求を発
行してコピーバックデータの転送を行なうことを特徴と
している。
【0012】また、データ転送要求は、キャッシュ参照
時に生成される信号を基に発行され、コピーバック要求
は、該信号を所定時間だけ遅延した信号を基に発行され
ることを特徴としている。
【0013】
【作用】あるプロセッサが参照したキャッシュに異なっ
たアドレスの変更済み有効データが存在したとき、コピ
ーバック要求を遅延レジスタにキューイングして、まず
システムバスへのデータ転送要求を発行する。データ転
送要求を受け取った他プロセッサは、自分のキャッシュ
メモリのチェックを開始し、共有メモリはメモリ参照を
開始する。次に、要求発行プロセッサは、異なったアド
レスの変更済み有効データのコピーバック要求を発行
し、データを共有メモリに転送してコピーバックする。
コピーバックが終了した後、先に発行されたデータ転送
要求による他プロセッサのキャッシュチェックが終了す
ると、要求されたデータが他プロセッサまたは共有メモ
リからシステムバスを介して、要求発行プロセッサに転
送される。
【0014】
【実施例】以下、本発明の一実施例を図面を用いて具体
的に説明する。本発明のキャッシュメモリ制御方法は、
図2に示すマルチプロセッサシステムに適用される。図
1は、本発明の実施例の構成であり、図2のキャッシュ
メモリおよびメモリコントローラの詳細構成を示す。
【0015】図1において、1はキャッシュメモリ、2
は各エントリにアドレスと、キャッシュの状態を表す情
報としてデータが存在することを示す有効フラグ3と、
データが書き替えられたことを示す変更済みフラグ4と
が登録されているアドレスアレイ、5はCPU(プロセ
ッサ)からのアドレス、6はキャッシュメモリにデータ
が存在するか否かをチェックするための比較回路、7は
システムバスに発行する要求を決定するデコーダ、8は
デコーダの出力、9はデコーダの出力8を1バスサイク
ル遅延する遅延レジスタ、10は遅延レジスタの出力、
11はデコーダの出力8と遅延レジスタ10の出力を符
号化するトランザクションエンコーダ、13はシステム
バス、14はシステムバスの制御権を取ったことを示す
信号、15、16はアンドゲート、12、17はドライ
バ、18はレシーバである。
【0016】CPUからキャッシュメモリに対してデー
タの参照要求があると、データが入っているキャッシュ
メモリ1とアドレスアレイ2が参照される。アドレスア
レイ2には、アドレスとキャッシュメモリ1の状態を表
わす情報としてデータが存在することを示す有効フラグ
3とデータが書き替えられたことを示す変更済みフラグ
4が登録されていて、アドレスアレイ2から読み出され
たアドレスとCPUからのアドレス5とが比較回路6で
比較され、キャッシュメモリ1に必要なデータがあるか
否かがチェックされる。
【0017】この比較結果と、有効フラグ3、変更済み
フラグ4によって、発行トランザクションデコーダ7
は、システムバス13上に発行する要求を決定する。プ
ロセッサがシステムバス13の制御権を得る信号14を
受け取ると、各要求はトランザクションエンコーダ11
でコード化され、アドレスと共にシステムバス13上に
発行される。データ転送が必要な場合はキャッシュメモ
リとシステムバス間でデータのやり取りを行なう。
【0018】図3(a)、(b)、(c)は、本発明の
キャッシュ制御動作を説明する図であり、図4は、本発
明のキャッシュ制御動作のタイムチャートである。以
下、図3、4を用いて本発明の動作を説明する。CPU
Aから自キャッシュメモリに対してデータBの参照要求
があり、上記した比較の結果、ヒットしないとき、比較
回路6から不一致の信号が出力されて発行トランザクシ
ョンデコーダ7に入力される。また、アドレスアレイ2
内の他のアドレスで、その有効フラグ3がセットされ
(“1”)、また変更済フラグ4がセット(“1”)さ
れているデータAが存在したとき、そのフラグ3、4も
発行トランザクションデコーダ7に入力される。発行ト
ランザクションデコーダ7は、これら入力された信号を
デコードしてコピーバック要求とデータ転送要求のため
の信号8を出力する。信号8は、一方はそのままトラン
ザクションエンコーダ11に入力され、他方は遅延レジ
スタ9にキューイングされる。
【0019】信号8はトランザクションエンコーダ11
で符号化されて、データ転送要求となる。すなわち、C
PUAがバスの制御権を得ると、その信号14とアドレ
スサイクルでアンドゲート15がオンとなって、ドライ
バ12がイネーブルとなって、システムバス上13に、
データ転送要求が先のフェッチアドレスとともに発行さ
れる(図3(a)の)。このデータ転送要求によっ
て、CPUBは自キャッシュメモリのキャッシュチェッ
クを行い、また共有メモリはメモリの参照を行う。
【0020】次いで、遅延レジスタ9にキューイングさ
れている信号8が、次のアドレスサイクルで信号10と
して出力され、トランザクションエンコーダ11でコー
ド化され、CPUAがバスの制御権を得ているので、ア
ンドゲート15がオンであり従って、ドライバ12がイ
ネーブルであるので、コピーバック要求となってシステ
ムバス13に出力される(図3(b)の)。続いて、
データサイクルでアンドゲート16がオンとなり、ドラ
イバ17がイネーブルとなるので、キャッシュメモリ1
内の置き換え対象となるデータAを読み出して、システ
ムバス13を介して共有メモリにコピーバックする(図
3(b)の)。
【0021】この間に、先に発行されたデータ転送要求
によって、他のCPUBは自キャッシュメモリをチェ
ックし、また共有メモリはデータの参照を行なってい
る。コピーバックが終了し、他CPUBの自キャッシュ
メモリのチェック、共有メモリのデータ参照が終了し、
他CPUBのキャッシュメモリにデータBが存在する場
合は、キャッシュメモリ−キャッシュメモリ間のデータ
転送が行なわれ、他CPUBのキャッシュメモリにデー
タBが存在しない場合は、共有メモリからCPUAのキ
ャッシュメモリにデータBが転送される(図3(c)の
)。
【0022】
【発明の効果】以上、説明したように、本発明によれ
ば、参照したキャッシュメモリに、他アドレスの変更済
み有効データが存在し、キャッシュメモリから共有メモ
リへコピーバックとキャッシュ外からのデータの転送が
要求されたとき、まずシステムバスへのデータ転送要求
を発行し、次いでコピーバックの要求とコピーバックデ
ータの転送を行っているので、他プロセッサのデータ転
送要求に伴うキャッシュチェック時間のオーバヘッド、
共有メモリでのメモリアクセス時間のオーバヘッドを軽
減することができる。
【図面の簡単な説明】
【図1】本発明の実施例の構成を示す。
【図2】本発明のキャッシュメモリ制御方法が適用され
るマルチプロセッサシステムを示す。
【図3】(a)、(b)、(c)は本発明のキャッシュ
制御動作を説明する図である。
【図4】本発明のキャッシュ制御動作のタイムチャート
である。
【図5】(a)、(b)、(c)は従来のキャッシュ制
御動作を説明する図である。
【図6】従来のキャッシュ制御動作のタイムチャートで
ある。
【符号の説明】
1 キャッシュメモリ 2 アドレスアレイ 3 有効フラグ 4 変更済みフラグ 5 CPUからのアドレス 6 比較回路 7 発行トランザクションデコーダ 8 デコード出力 9 遅延レジスタ 10 遅延レジスタの出力 11 トランザクションエンコーダ 12、17 ドライバ 13 システムバス 14 システムバスの制御権を取ったことを示す信号 15、16 アンドゲート 18 レシーバ

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 複数のプロセッサと、一つの共有メモリ
    と、該共有メモリの一部のデータが記憶されコピーバッ
    ク方式を採る各プロセッサ用の複数のキャッシュメモリ
    と、各エントリにアドレス、データが存在することを示
    す有効フラグ、データが書き替えられたことを示す変更
    済みフラグが登録された各プロセッサ用の複数のアドレ
    スアレイと、該複数のキャッシュメモリと該共有メモリ
    とを接続するシステムバスと、前記各キャッシュメモリ
    に設けられたバス監視手段とを備え、第1のプロセッサ
    から自キャッシュメモリに対してデータ参照要求がある
    と、自アドレスアレイを参照して当該アドレスが登録さ
    れていれば自キャッシュメモリをアクセスし、当該アド
    レスが登録されずキャッシュミスし、該自キャッシュメ
    モリに他アドレスの変更済み有効データが存在したと
    き、該自キャッシュメモリから前記共有メモリに該変更
    済み有効データをコピーバックし、前記自キャッシュメ
    モリ外からデータ転送を行うマルチプロセッサシステム
    におけるキャッシュメモリ制御方法において、前記第1
    のプロセッサは前記システムバスに対して前記データ転
    送の要求を発行し、次いで前記コピーバックの要求を発
    行してコピーバックデータの転送を行なうことを特徴と
    するキャッシュメモリ制御方法。
  2. 【請求項2】 前記データ転送要求は、前記キャッシュ
    参照時に生成される信号を基に発行され、前記コピーバ
    ック要求は、該信号を所定時間だけ遅延した信号を基に
    発行されることを特徴とする請求項1記載のキャッシュ
    メモリ制御方法。
JP6218397A 1994-09-13 1994-09-13 キャッシュメモリ制御方法 Pending JPH0883214A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6218397A JPH0883214A (ja) 1994-09-13 1994-09-13 キャッシュメモリ制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6218397A JPH0883214A (ja) 1994-09-13 1994-09-13 キャッシュメモリ制御方法

Publications (1)

Publication Number Publication Date
JPH0883214A true JPH0883214A (ja) 1996-03-26

Family

ID=16719275

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6218397A Pending JPH0883214A (ja) 1994-09-13 1994-09-13 キャッシュメモリ制御方法

Country Status (1)

Country Link
JP (1) JPH0883214A (ja)

Similar Documents

Publication Publication Date Title
EP0349123B1 (en) Multi-processor computer systems having shared memory and private cache memories
US5426765A (en) Multiprocessor cache abitration
US6564306B2 (en) Apparatus and method for performing speculative cache directory tag updates
JPH11506852A (ja) 多数のバスマスタと共用レベル2キャッシュとを備える多レベルキャッシュシステムでのキャッシュスヌーピングオーバーヘッドの低減
US5850534A (en) Method and apparatus for reducing cache snooping overhead in a multilevel cache system
JPH1031625A (ja) マルチ・プロセッサ・システムにおける改良されたコピーバック性能のためのライトバック・バッファ
US5263144A (en) Method and apparatus for sharing data between processors in a computer system
WO2006012047A1 (en) Direct processor cache access within a system having a coherent multi-processor protocol
US6345320B1 (en) DMA address buffer and cache-memory control system
US5678025A (en) Cache coherency maintenance of non-cache supporting buses
JPH06222992A (ja) キャッシュシステムおよびキャッシュコントローラを制御するための方法
CN113900968B (zh) 多副本非原子写的存储序同步操作实现方法与实现装置
JPH06318174A (ja) キャッシュ・メモリ・システム及び主メモリに記憶されているデータのサブセットをキャッシュする方法
US6973541B1 (en) System and method for initializing memory within a data processing system
JPH10501914A (ja) 共用キャッシュ・メモリ装置
JPH04336641A (ja) 処理システムにおける使用のためのデータキャッシュおよび方法
US20050144398A1 (en) Decoupling request for ownership tag reads from data read operations
JP3187446B2 (ja) キャッシュメモリ制御装置
JPH0883214A (ja) キャッシュメモリ制御方法
US7519778B2 (en) System and method for cache coherence
US6397304B1 (en) Method and apparatus for improving system performance in multiprocessor systems
JP3340047B2 (ja) マルチプロセッサシステムおよび複製タグの制御方法
JP2003216596A (ja) マルチプロセッサシステム及びノード装置
JP3145479B2 (ja) マルチプロセッサシステムとそのキャッシュメモリ制御方法および装置
JP3088293B2 (ja) キャッシュメモリの記憶一致制御装置及び記憶一致制御方法

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees