JPH0644261B2 - マルチプロセッサシステムにおけるキャッシュ制御方式 - Google Patents

マルチプロセッサシステムにおけるキャッシュ制御方式

Info

Publication number
JPH0644261B2
JPH0644261B2 JP62285521A JP28552187A JPH0644261B2 JP H0644261 B2 JPH0644261 B2 JP H0644261B2 JP 62285521 A JP62285521 A JP 62285521A JP 28552187 A JP28552187 A JP 28552187A JP H0644261 B2 JPH0644261 B2 JP H0644261B2
Authority
JP
Japan
Prior art keywords
memory
cache
data
cache memory
access
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.)
Expired - Fee Related
Application number
JP62285521A
Other languages
English (en)
Other versions
JPH01128156A (ja
Inventor
一泰 野々村
敬人 野田
裕士 神阪
憲一 阿保
康智 桜井
雄志 村田
正善 武居
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 JP62285521A priority Critical patent/JPH0644261B2/ja
Publication of JPH01128156A publication Critical patent/JPH01128156A/ja
Publication of JPH0644261B2 publication Critical patent/JPH0644261B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】 〔概 要〕 それぞれがキャッシュメモリを有する複数のプロセッサ
によってアクセスされる主記憶装置を有するマルチプロ
セッサシステムにおける主記憶装置とキャッシュメモリ
間のデータの一致を保つためのキャッシュ制御方式に関
し、 CPUを停止させることなく、またデータの書換えによ
る誤処理が生じないようにしたマルチプロセッサシステ
ムにおけるキャッシュ制御方式を得ることを目的とし、 それぞれのプロセッサは、自己のキャッシュメモリに格
納されているデータについて他のプロセッサから主記憶
装置への書込みが行われたことを監視手段が検出したと
きには、メモリアクセス制御回路から処理装置へのメモ
リアクセス許可信号の送出を抑止するとともに、キャッ
シュメモリに格納されているデータの更新あるいは無効
化を上記処理装置のキャッシュアクセスサイクル期間が
経過した後に行うように構成する。
〔産業上の利用分野〕
それぞれがキャッシュメモリを有する複数のプロセッサ
によってアクセスされる主記憶装置を有するマルチプロ
セッサシステムにおける、主記憶装置とキャッシュメモ
リ間のデータの一致を保つためのキャッシュ制御方式に
関する。
〔従来の技術〕
それぞれのプロセッサがキャッシュメモリを有するマル
チプロセッサシステムにおいては、あるプロセッサのキ
ャッシュメモリが保持している主記憶装置のデータを他
のプロセッサが書替えるとキャッシュメモリがストアし
ているデータと主記憶装置がストアしているデータとが
相違してしまい、誤った処理結果を得ることになる。
第3図は従来のキャッシュ制御方式の例を示すもので、
キャッシュメモリのアドレス制御に関係する部分のみを
図示してある。なお説明を簡単にするために、この従来
例では主記憶装置の格納アドレスに対応してキャッシュ
メモリ上の格納アドレスが定められるダイレクトマッピ
ング方式を採用しているものとして説明する。
主記憶装置1が接続されているアドレスバス2にはそれ
ぞれが図示しないキャッシュメモリを備える処理装置
(以下、CPU、という)5を含むプロセッサ31,32,
……3が接続されており、これらプロセッサ31,32,
……3は処理に必要なデータをブロック単位で主記憶
装置1から取込み、CPU5での処理に使用すると同時
にキャッシュメモリにこの取込んだデータを格納してお
いて、次にこのデータが処理に必要な場合には主記憶装
置1にアクセスすることなく、このキャッシュメモリに
格納されているデータを使用して処理を行う。
このようなキャッシュ制御を行うためにこれらプロセッ
サ31,32,……3にはメモリアクセス制御回路6が設
けられており、図示を省略したが、CPU5から処理に
必要なデータが要求されたときにはそのデータが格納さ
れている主記憶装置1のアドレスをCPU用タグメモリ
7に供給し、アクセスすべきデータを格納している主記
憶装置1のアドレスのデータが自己のプロセッサ3
キャッシュメモリに有効な状態で格納されているか否か
をチェックする。
なお、CPU用タグメモリ7の有効ビット7は、キャ
ッシュメモリに格納されているデータが有効であるか否
かを示すために、キャッシュメモリが格納しているデー
タに対応する主記憶装置のアドレスと対応して設けられ
るビットである。
これによって必要なデータがキャッシュメモリに格納さ
れていることが認識されれば、このプロセッサ3は主
記憶装置1にアクセスすることなくこのキャッシュメモ
リに格納されているデータを用いて処理を実行する。
しかしながら、必要なデータが上記のようにキャッシュ
メモリに格納されていない場合あるいは格納されていて
も有効でない場合には、アドレス送出用のトライステー
トバッファ8から主記憶装置1に対して必要なデータを
読出すためのアドレスを送出し、これによって主記憶装
置1から読出されたデータをキャッシュメモリに書込
み、また、このアドレスをセレクタ10を介してCPU
用タグメモリ7に書込む。なお、上記のトライステート
バッファ8は、アドレス送出時以外の状態では出力側が
高いインピーダンスを呈するのでアドレスバスからのデ
ータの取込みには支障を生じない。
監視用タグメモリ11は、他のプロセッサ32,……3
が主記憶装置1に書込みを行ったとき、この書込まれた
主記憶装置のアドレスに格納されているデータが自己の
キャッシュメモリに格納されているか否かを監視するた
めのものであり、他のプロセッサ例えば3が主記憶装
置1のあるアドレスに書込みを行うためにアドレスバス
上に第4図(a)で示すアドレスデータを送出すると、自
己のプロセッサ3のキャッシュメモリが保持している
データのアドレスであるか否かをこの監視手段Wの監視
用タグメモリ11に格納されているアドレスと上記デー
タバス上のアドレスとを比較器13によって比較する。
この書込みが行われる主記憶装置1のアドレスと自己の
キャッシュメモリが格納しているデータの主記憶装置に
おける格納アドレスとが一致しているときには、キャッ
シュメモリが記憶しているデータが書換えられたことを
示すために比較器13の出力を“1”とする。
さらにキャッシュメモリに格納されているデータが有効
である場合には、上記監視用タグメモリ11の対応する
アドレスの有効ビット11は“1”となっており、ま
た主記憶装置へのアクセスモードが書込みであるか読出
しであるかを検出するデコーダ12の出力も書込みであ
れば“1”が出力される。
この状態でCPU5から第4図(b)の期間#3に示すよ
うにアクセス要求信号がアクセス制御回路16に送られ
ると、このアクセス制御回路16からは第4図(c)に示
す“1”レベルのタイミング信号TGが出力され、NA
ND回路15からは第4図(d)に示すような“0”レベ
ルのヒット信号が出力される。
このNAND回路15からの“0”レベルのヒット信号
によってCPU5のシステムクロックを供給するアンド
回路17は遮断されて、第4図(e)の期間#3に示すよ
うに、このCPU5にはクロックが供給されなくなって
動作を停止し、これによって次の期間#4にクロックが
到来してこのCPU期間#5に処理を再開するまでメモ
リアクセス要求信号を送出することができなくなり、キ
ャッシュメモリに格納されている他のプロセッサによっ
て書換えられる以前のデータを使用して処理が行われる
のを阻止する。
なお、メモリアクセス制御回路16からのメモリアクセ
ス許可信号は第4図(f)に示すように図示の期間#1〜
#7中出力されているものであり、したがってCPU5
からメモリアクセス要求信号が出力されれば第4図(h)
にI,IIで示すようにメモリアクセスを行うキャッシュ
サイクルに入ることができる。また、この第4図(b)に
Iで示したアクセス要求信号およびこのアクセス要求信
号による同図(h)にIで示したキャッシュサイクルは、
ヒット信号が出力される以前のメモリアクセス要求によ
るものである。
同時にこのNAND回路14からの“0”レベルにある
ヒット信号は、前記セレクタ10を“0”側に切替え、
アドレスレジスタ9からの書込みが行われたアドレスを
CPU用タグメモリ7のアドレスとして供給して監視用
タグメモリ11とともに、この書込みが行われたアドレ
スのデータが無効であることを示すために、第4図(i)
に示すように、このアドレスに対応するCPU用タグメ
モリ7および監視用タグメモリ11の有効ビット71,1
を“0”にリセットする。
〔発明が解決しようとする問題点〕
上記したような従来技術においては、当該プロセッサ、
例えば3のキャッシュメモリに格納されているデータ
を他のプロセッサ、例えば3が主記憶装置にアクセス
して書換えたときにこのプロセッサ3のCPU5がこ
のデータを読込むためにアクセスすると、このCPUへ
のクロックの供給が停止されてこのCPUの処理が中断
してしまう。
したがって、マルチプロセッサシステムを構成するプロ
セッサの数が増加して主記憶装置の各プロセッサの共通
記憶領域に書込みを行う頻度が高くなると、システムの
性能が大幅に低下するという問題点がある。
さらに、上記のように他のプロセッサ、例えば3が主
記憶装置に格納されているデータの書換えを行ったとき
に、書換え前のデータをキャッシュメモリに格納してい
るプロセッサ、例えば3のCPUがこのキャッシュメ
モリにアクセスして当該データを既に読出そうとしてい
る場合もあり、その制御が複雑・困難になるという点も
問題であった。
本発明は、CPUを停止させることなく、またデータの
書換えによる誤処理が生じないようにしたマルチプロセ
ッサシステムにおけるキャッシュ制御方式を得ることを
目的とするものである。
〔問題点を解決するための手段〕 第1図の原理的実施例に示すように、主記憶装置1とそ
れぞれがキャッシュメモリを有する複数のプロセッサ3
1,32,……3とが共通のバス2によって接続されてい
るマルチプロセッサシステムにおいて、 上記それぞれのプロセッサには、他のプロセッサが上記
主記憶装置に対する書込みを監視する監視手段Wと、キ
ャッシュメモリへのアクセスを制御するアクセス制御回
路6と、キャッシュメモリへのアクセスに先立ってアク
セス要求信号をこのメモリアクセス制御回路に送出しま
たこのメモリアクセス制御回路からのアクセス許可信号
が受信されたときにキャッシュメモリにアクセスするよ
うにした処理装置5とを設け、 自己のキャッシュメモリに格納されているデータについ
て他のプロセッサから上記主記憶装置への書込みが行わ
れたことを上記監視手段が検出したときには、上記メモ
リアクセス制御回路から処理装置へのアクセス許可信号
の送出を抑止するとともに、キャッシュメモリに格納さ
れているデータの更新あるいは無効化を上記処理装置の
キャッシュアクセスサイクル期間が経過した後に行うよ
うにした。
〔作 用〕
本発明によれば、自己のキャッシュメモリに格納されて
いるデータについて他のプロセッサから上記主記憶装置
への書込みが行われたことを上記監視手段が検出したと
きには上記メモリアクセス制御回路から処理装置へのア
クセス許可信号の送出を抑止するようにしたので、上記
の書込みが行われた新しいデータに更新されていないキ
ャッシュメモリのデータを使用する結果となるメモリア
クセスを防止することができる。
また、キャッシュメモリに格納されているデータの更新
あるいは無効化を上記処理装置のキャッシュアクセスサ
イクル期間が経過した後に行うようにしたことによっ
て、既にメモリアクセスを開始している場合にはキャッ
シュメモリの更新あるいは無効化を行うことなくそのメ
モリアクセスを終了させ、このメモリアクセスが終了し
た後にこの更新あるいは無効化を行うことによってメモ
リアクセスの制御を簡易化することができる。
〔実施例〕
第1図の原理的実施例においては、先に説明した第3図
の従来例の構成要素に対応する構成要素には同一の符号
を付してある。なお、メモリアクセス制御回路6は後に
第2図の波形図によって説明するような波形の信号を出
力するように構成してある点で第3図のメモリアクセス
制御回路16と相違しており、また監視手段Wのアンド
回路14は上記従来例のアンド回路15に相当するもの
であるが、メモリアクセス制御回路からの信号が入力さ
れていない点で第3図の構成要素と相違している。
監視手段Wは、他のプロセッサ32,……3が主記憶装
置1に書込みを行ったとき、この書込まれた主記憶装置
のアドレスに格納されているデータが自己のキャッシュ
メモリに格納されているか否かを監視するものであり、
他のプロセッサ例えば3が主記憶装置1のあるアドレ
スに書込みを行うためにアドレスバス上に第2図(a)で
示すアドレスデータを送出すると、自己のプロセッサ3
のキャッシュメモリが保持しているデータのアドレス
であるか否かを確認するため、この監視手段Wの監視用
タグメモリ11に格納されているアドレス、すなわち自
己のキャッシュメモリに格納されているデータの主記憶
装置における格納アドレスと上記データバス上のアドレ
スとを比較器13によって比較する。
この書込みが行われる主記憶装置1のアドレスと自己の
キャッシュメモリが格納しているデータの主記憶装置に
おける格納アドレスとが一致しているときには、キャッ
シュメモリが記憶しているデータが書換えられたことを
示すために比較器13の出力を“1”とする。
さらにキャッシュメモリに格納されているデータが有効
である場合には、上記監視用タグメモリ11の対応する
アドレスの有効ビット11は“1”となっており、ま
た主記憶装置へのアクセスモードが書込みであるか読出
しであるかを検出するデコーダ12の出力も書込みであ
れば“1”が出力されるから、この監視手段Wの出力で
あるアンド回路14からの第2図(b)に示すヒット出力
も“1”になる。
ここで、CPU5からメモリアクセス要求信号がメモリ
アクセス制御回路6に供給されれば、このメモリアクセ
ス制御回路からは第2図(c)に示す第1のタイミング信
号TG1が#1〜#2の期間出力され、上記ヒット出力
とこの第1のタイミング信号とによってNAND回路2
1から“0”レベルの出力が送出されてアンド回路23
を遮断状態とし、CPU5からのメモリアクセス要求信
号に応答してメモリアクセス制御回路6から送出される
第2図(h)に示す要求許可信号がメモリアクセス許可信
号としてCPU5に供給されるのをこのアンド回路22
によって阻止する。
したがって、この#1〜#2の期間にCPU5から送出
されたメモリアクセス要求信号によってはメモリアクセ
ス許可信号が返送されず、もし上記ヒット信号が監視手
段Wから送出される以前にメモリアクセスが許可されて
いれば、第2図(i)にIで示すキャッシュサイクルにお
いて既に許可されている上記メモリアクセスのみが行わ
れる。
上記の#1〜#2の期間が経過した#3の期間において
は、メモリアクセス制御回路6からは第2図(e)に示す
第2のタイミング信号TG2が送出され、この#3の期
間中も“1”レベルを維持している監視手段Wからの
“1”信号とによってNAND回路23から第2図(f)
に示すような“0”レベルの無効化信号を発生し、主記
憶装置1の書換えが行われたアドレスに対応するCPU
用タグメモリ7および監視用タグメモリ11が格納して
いる主記憶装置のアドレスの有効ビットを第2図(g)に
示すように“0”にして、このアドレスのデータが書込
まれているキャッシュメモリのデータが無効であること
を表示させる。
同時にこの無効化信号はセレクタ9を“0”側に切換
え、主記憶装置1の書換えを行った他のプロセッサ3
がアドレスバス上に送出した主記憶装置1の書換え部分
のアドレスをCPU用タグメモリ7に書込み、同時に図
示しないデータバス上の他のプロセッサ3が送出した
データによってキャッシュメモリの内容を書換える。
この#3の期間においては、第1のタイミング信号TG
1は第2図(c)に示すように“0”レベルになってお
り、監視手段Wからのヒット信号が依然として“1”レ
ベルにあることからNAND回路21の出力を“1”レ
ベルとしてアンド回路22を導通状態にするため、CP
U5からのメモリアクセス要求信号に応答したメモリア
クセス制御回路6からの第2図(h)に示す要求許可信号
をこのアンド回路22からメモリアクセス許可信号とし
てCPU5に供給し、これによってこのCPUはメモリ
へのアクセスが可能となり、第2図(i)にIIで示すキャ
ッシュサイクルが実行される。
なお、第2図(i)にIで示したキャッシュサイクルは、
同図(b)に示すヒット信号が出力される以前のメモリア
クセス要求信号によって行われたキャッシュサイクルで
ある。
〔発明の効果〕
本発明によれば、キャッシュメモリに格納されているデ
ータを他のプロセッサが書換えたときにもCPUが停止
することがないのでメモリアクセス以外の処理は連続し
て実行することができ、マルチプロセッサシステムの効
率を著しく高めることができるという格別の効果が達成
される。
【図面の簡単な説明】
第1図は本発明の原理的実施例を示す図、 第2図はその動作を説明するためのタイムチャート、 第3図は従来のディジタル信号処理プロセッサを示す
図、 第4図はその動作を説明するためのタイムチャートであ
る。 1は主記憶装置、2は共通バス、31,32,……3はそ
れぞれキャッシュメモリを有するプロセッサ、5は処理
装置(CPU)、6はメモリアクセス制御回路、Wは監
視手段である。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 阿保 憲一 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 桜井 康智 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 村田 雄志 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 武居 正善 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】主記憶装置(1)とそれぞれがキャッシュ
    メモリを有する複数のプロセッサ(31,32,……3
    とが共通のバス(2)によって接続されているマルチプ
    ロセッサシステムにおいて、 上記それぞれのプロセッサは、他のプロセッサが上記主
    記憶装置に対する書込みを監視する監視手段(W)と、
    キャッシュメモリへのアクセスを制御するメモリアクセ
    ス制御回路(6)と、キャッシュメモリへのアクセスに
    先立ってメモリアクセス要求信号をこのメモリアクセス
    制御回路に送出するとともにこのメモリアクセス制御回
    路からのメモリアクセス許可信号が受信されたときにキ
    ャッシュメモリにアクセスするようにした処理装置
    (5)とを備え、 自己のキャッシュメモリに格納されているデータについ
    て他のプロセッサから上記主記憶装置への書込みが行わ
    れたことを上記監視手段が検出したときには、上記メモ
    リアクセス制御回路から処理装置へのメモリアクセス許
    可信号の送出を抑止するとともに、キャッシュメモリに
    格納されているデータの更新あるいは無効化を上記処理
    装置のキャッシュアクセスサイクル期間が経過した後に
    行うようにしたことを特徴とするマルチプロセッサシス
    テムにおけるキャッシュ制御方式。
JP62285521A 1987-11-13 1987-11-13 マルチプロセッサシステムにおけるキャッシュ制御方式 Expired - Fee Related JPH0644261B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62285521A JPH0644261B2 (ja) 1987-11-13 1987-11-13 マルチプロセッサシステムにおけるキャッシュ制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62285521A JPH0644261B2 (ja) 1987-11-13 1987-11-13 マルチプロセッサシステムにおけるキャッシュ制御方式

Publications (2)

Publication Number Publication Date
JPH01128156A JPH01128156A (ja) 1989-05-19
JPH0644261B2 true JPH0644261B2 (ja) 1994-06-08

Family

ID=17692606

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62285521A Expired - Fee Related JPH0644261B2 (ja) 1987-11-13 1987-11-13 マルチプロセッサシステムにおけるキャッシュ制御方式

Country Status (1)

Country Link
JP (1) JPH0644261B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2511146B2 (ja) * 1989-07-07 1996-06-26 富士通株式会社 デ―タ処理装置
JP2641819B2 (ja) * 1990-11-05 1997-08-20 三菱電機株式会社 キャッシュ・コントローラ並びにフォールト・トレラント・コンピュータ及びそのデータ転送方式
US6247143B1 (en) * 1998-06-30 2001-06-12 Sun Microsystems, Inc. I/O handling for a multiprocessor computer system

Also Published As

Publication number Publication date
JPH01128156A (ja) 1989-05-19

Similar Documents

Publication Publication Date Title
JP3289661B2 (ja) キャッシュメモリシステム
US6079030A (en) Memory state recovering apparatus
CA2127081A1 (en) Processor interface chip for dual-microprocessor processor system
JP3236287B2 (ja) マルチプロセッサシステム
US5737568A (en) Method and apparatus to control cache memory in multiprocessor system utilizing a shared memory
JPH04336641A (ja) 処理システムにおける使用のためのデータキャッシュおよび方法
JPH0644261B2 (ja) マルチプロセッサシステムにおけるキャッシュ制御方式
US5012410A (en) Data processor with instruction cache memory
JP3733604B2 (ja) キャッシュメモリ
JP3187446B2 (ja) キャッシュメモリ制御装置
JPH06309231A (ja) キャッシュメモリ制御方法
JPH06187239A (ja) 多階層キャッシュメモリにおけるデータ一致制御方式
JP3219422B2 (ja) キャッシュメモリ制御方式
JP2703255B2 (ja) キャッシュメモリ書込み装置
JP2588547B2 (ja) マルチcpuシステム
JPH0553912A (ja) キヤツシユメモリの制御方法
JP2791319B2 (ja) データ処理装置
JPH11161545A (ja) 密結合マルチプロセッサシステムの制御方法、密結合マルチプロセッサシステム及びその記録媒体
JPH05265916A (ja) データ処理装置
JPH0497459A (ja) キャッシュ一致処理方式
JPH06309229A (ja) データ処理装置
JPH058459B2 (ja)
JPH11272551A (ja) キャッシュメモリのフラッシュ制御方式およびキャッシュメモリ
JPH06187230A (ja) メモリ監視制御方法
JPH0721133A (ja) 情報処理装置

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees