JPH0290259A - マルチプロセッサシステム - Google Patents
マルチプロセッサシステムInfo
- Publication number
- JPH0290259A JPH0290259A JP63241386A JP24138688A JPH0290259A JP H0290259 A JPH0290259 A JP H0290259A JP 63241386 A JP63241386 A JP 63241386A JP 24138688 A JP24138688 A JP 24138688A JP H0290259 A JPH0290259 A JP H0290259A
- Authority
- JP
- Japan
- Prior art keywords
- data
- intermediate buffer
- buffer memory
- memory
- block
- 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
Links
- 239000000872 buffer Substances 0.000 claims abstract description 110
- 230000015654 memory Effects 0.000 claims description 83
- 238000000034 method Methods 0.000 claims description 23
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 24
- 229910003090 WSe2 Inorganic materials 0.000 description 11
- 230000004044 response Effects 0.000 description 4
- 239000013256 coordination polymer Substances 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/167—Interprocessor communication using a common memory, e.g. mailbox
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/084—Multiuser, multiprocessor or multiprocessing cache systems with a shared cache
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Multi Processors (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は、多階層の記憶構造をとるマルチプロセッサシ
ステムに関し、詳しくは、主記憶と2階層以上のバッフ
ァ記憶とより成る多階層の記憶構造をとり、各層の記憶
制御を行って、複数プロセッサにより処理を実行するマ
ルチプロセッサシステムにおいて、各階層の複数個のバ
ッファ記憶に同一アドレスのデータが入った場合のバッ
ファ記憶間のデータの排他制御を効率的に行うマルチプ
ロセッサシステムに関するものである。
ステムに関し、詳しくは、主記憶と2階層以上のバッフ
ァ記憶とより成る多階層の記憶構造をとり、各層の記憶
制御を行って、複数プロセッサにより処理を実行するマ
ルチプロセッサシステムにおいて、各階層の複数個のバ
ッファ記憶に同一アドレスのデータが入った場合のバッ
ファ記憶間のデータの排他制御を効率的に行うマルチプ
ロセッサシステムに関するものである。
従来、データ処理システムにおいて、処理速度と処理能
力を高めるために、多階層の記憶構造をとるマルチプロ
セッサシステムの技術が用いられる。
力を高めるために、多階層の記憶構造をとるマルチプロ
セッサシステムの技術が用いられる。
第6図は、多階層記憶構造をとるマルチプロセッサシス
テムの一例を示すブロック図である。
テムの一例を示すブロック図である。
なお、以下に参照する全回において、同一要素のものは
同一符号を付け、その繰り返しの説明は省略する。
同一符号を付け、その繰り返しの説明は省略する。
このマルチプロセッサシステムは、第6図に示すように
、その記憶構成が主記憶(以下MSと略称する)61と
、記憶制御装置(以下SCと略する)62内の中間バッ
ファ記憶(以下WSと略称する)66と、中央処理装置
(以下CPUと略称する)63aおよび63b内のバッ
ファ記憶(以下BSと略称する)64aおよび64bと
の3階層構造をとるものとなっている。また、ここでは
、5C62のWSe2が入出力制御を行う入出力処理装
置(以下CHと略称する)65に接続される構成となっ
ている。これらのMS61.WSe2、B564aとの
間の記憶制御が行われ、CPU63aがMS61からの
データおよびプログラムを読み出し、データ処理を行う
。
、その記憶構成が主記憶(以下MSと略称する)61と
、記憶制御装置(以下SCと略する)62内の中間バッ
ファ記憶(以下WSと略称する)66と、中央処理装置
(以下CPUと略称する)63aおよび63b内のバッ
ファ記憶(以下BSと略称する)64aおよび64bと
の3階層構造をとるものとなっている。また、ここでは
、5C62のWSe2が入出力制御を行う入出力処理装
置(以下CHと略称する)65に接続される構成となっ
ている。これらのMS61.WSe2、B564aとの
間の記憶制御が行われ、CPU63aがMS61からの
データおよびプログラムを読み出し、データ処理を行う
。
このようなマルチプロセッサシステムにおいては、WS
e2からB 564a 、 B 564b ヘの転送は
ブロック単位に行われ、また、MS61からWSe2へ
の転送は1個または複数個(n個)のブロックを単位と
する所謂ライン単位に行われる。ここでは、図示するよ
うに、1ライン単位(A)が、4個のブロック琳位(a
o、al、a2.a3)より構成される場合を示してい
る。今、CPU63aがブロックaO内のデータを読出
そうとした時、このブロックaOがCPU63a内のB
564aに存在しない場合、5C62内のWSe2をア
クセスして、ブロックao’1Bs64aへ取込む。こ
の際、W S 66上にブロックaOを含むラインAが
存在しない場合、5C62はMS61をアクセスし、M
S61からラインAを読出してWSe2へ取込むと同時
に、B564aへも転送する。
e2からB 564a 、 B 564b ヘの転送は
ブロック単位に行われ、また、MS61からWSe2へ
の転送は1個または複数個(n個)のブロックを単位と
する所謂ライン単位に行われる。ここでは、図示するよ
うに、1ライン単位(A)が、4個のブロック琳位(a
o、al、a2.a3)より構成される場合を示してい
る。今、CPU63aがブロックaO内のデータを読出
そうとした時、このブロックaOがCPU63a内のB
564aに存在しない場合、5C62内のWSe2をア
クセスして、ブロックao’1Bs64aへ取込む。こ
の際、W S 66上にブロックaOを含むラインAが
存在しない場合、5C62はMS61をアクセスし、M
S61からラインAを読出してWSe2へ取込むと同時
に、B564aへも転送する。
同様にして、例えばCPU63bがブロックaO内のデ
ータを読み出そうとし、該ブロックaOがB564bに
存在しない場合には、WSe2よりブロックaOを取込
む。この場合、第6図に示すように、B564aにブロ
ックaOが登録されていると、ブロックaOはB564
aとB564bの両方に同時に存在することになる。
ータを読み出そうとし、該ブロックaOがB564bに
存在しない場合には、WSe2よりブロックaOを取込
む。この場合、第6図に示すように、B564aにブロ
ックaOが登録されていると、ブロックaOはB564
aとB564bの両方に同時に存在することになる。
このような多階層の記憶構造をとるシステムにおいて、
各々のバッファ記憶にデータを書込むストア方式は、B
564aおよびB564bに対しては。
各々のバッファ記憶にデータを書込むストア方式は、B
564aおよびB564bに対しては。
その制御の容易さからストアスル一方式(書込みをバッ
ファ記憶と同時に主記憶にも行う方式)を採用し、また
、主記憶よりの中間のバッファ記憶であるWSe2に対
しては、MS61のスループット軽減のためにストアイ
ン方式(書込を中間バッファ記憶だけに行い、リプレー
スの際に主記憶に戻す方式)を採用することが多い、第
6図に示したシステムにおいても、B564aおよびB
564bはストアスル一方式をとり、WSe2はストア
イン方式をとっている。
ファ記憶と同時に主記憶にも行う方式)を採用し、また
、主記憶よりの中間のバッファ記憶であるWSe2に対
しては、MS61のスループット軽減のためにストアイ
ン方式(書込を中間バッファ記憶だけに行い、リプレー
スの際に主記憶に戻す方式)を採用することが多い、第
6図に示したシステムにおいても、B564aおよびB
564bはストアスル一方式をとり、WSe2はストア
イン方式をとっている。
この場合、前述したように、B564aおよびBS 6
4 bには同時にそれぞれ同一ブロックのデータが登録
されることがある。例えば、ブロックaOがB564a
およびB564bに同時に存在する状態で、CPU63
aがB564aのブロックaO内のデータを書換えた場
合、B564a内のブロックaOは更新されるが、同一
のデータ内容でなければならないB564b内のブロッ
クaOは更新されない。
4 bには同時にそれぞれ同一ブロックのデータが登録
されることがある。例えば、ブロックaOがB564a
およびB564bに同時に存在する状態で、CPU63
aがB564aのブロックaO内のデータを書換えた場
合、B564a内のブロックaOは更新されるが、同一
のデータ内容でなければならないB564b内のブロッ
クaOは更新されない。
このため、各バッファ記憶の間でデータの不一致が生ず
る。
る。
また、ブロックaOがB564aおよびB564bの両
方に登録されている状態で、CH65が入出力処理を行
うことにより5C62のWSe6内のブロックaOのデ
ータを書換え変更した場合にも、B564aおよびB5
64b内のブロックaOは更新されないため、W S
66内のブロックaO1BS64aおよびB564b内
のブロックaOとでは、データの不一致が生ずる。
方に登録されている状態で、CH65が入出力処理を行
うことにより5C62のWSe6内のブロックaOのデ
ータを書換え変更した場合にも、B564aおよびB5
64b内のブロックaOは更新されないため、W S
66内のブロックaO1BS64aおよびB564b内
のブロックaOとでは、データの不一致が生ずる。
これに対しては、バッファ記憶の間のこのようなデータ
の不一致を解消するため、データが更新されなかったバ
ッファ記憶の該当ブロックを無効化する処理が行われる
。
の不一致を解消するため、データが更新されなかったバ
ッファ記憶の該当ブロックを無効化する処理が行われる
。
第7図は、マルチプロセッサシステムにおけるバッファ
記憶のブロック無効化処理の一例を説明する図である。
記憶のブロック無効化処理の一例を説明する図である。
第7図において、67a、67bはバッファ記憶に格納
されてるデータの主記憶アドレスを格納しているBSデ
ィレクトリ(バッファ・アドレス・アレイ:BAA)で
あり、B564aおよびB564bに対応して設けられ
ている。このBSディレクトリ(以下BAAと略称する
)67aはB5134aに格納されているデータのディ
レクトリであり、BAA67bはB564bに格納され
ているデータのディレクトリである。BAA67aおよ
びBAA67bは複数のエントリからなり、各々のエン
トリはB564aおよびB564bのブロックと1対1
に対応している。その1つのエントリは、第8図に示す
ように、バッファ記憶の対応するブロックが主記憶アド
レスの何番地に相当するアドレスデータであるかを示す
アドレス(ADH)部68と、そのエントリの有効性を
示す有効ビット(Vビット)部69より構成されている
。
されてるデータの主記憶アドレスを格納しているBSデ
ィレクトリ(バッファ・アドレス・アレイ:BAA)で
あり、B564aおよびB564bに対応して設けられ
ている。このBSディレクトリ(以下BAAと略称する
)67aはB5134aに格納されているデータのディ
レクトリであり、BAA67bはB564bに格納され
ているデータのディレクトリである。BAA67aおよ
びBAA67bは複数のエントリからなり、各々のエン
トリはB564aおよびB564bのブロックと1対1
に対応している。その1つのエントリは、第8図に示す
ように、バッファ記憶の対応するブロックが主記憶アド
レスの何番地に相当するアドレスデータであるかを示す
アドレス(ADH)部68と、そのエントリの有効性を
示す有効ビット(Vビット)部69より構成されている
。
再び、第7図を参照する。ここでは、無効化処理の制御
を行うために、CPU63a、CPU63b。
を行うために、CPU63a、CPU63b。
CH65の間を結ぶインタフェース?1.72.73が
用いられる。各インタフェース?1.72.73は、そ
れぞれCPU63a、CPU63b、CH65がストア
を行うことを示す信号と、そのストアアドレスを各CP
Uへ伝える信号パスである。
用いられる。各インタフェース?1.72.73は、そ
れぞれCPU63a、CPU63b、CH65がストア
を行うことを示す信号と、そのストアアドレスを各CP
Uへ伝える信号パスである。
B564aおよびB564bにブロックaOが共に存在
する場合、BAA137aおよびBAA67bの該当エ
ントリのアドレス部68には、ブロックaOに対するM
S61上の主記憶アドレスADRaOが登録され、その
エントリの有効ビット部69のVビットは“l”となっ
て、該ブロックのデータが有効であることを示している
。ここで、CPU63aがB564aのブロックaO内
のデータを書換える場合、インタフェース71を介して
CPU63bにブロックaOを書換える旨を連絡する。
する場合、BAA137aおよびBAA67bの該当エ
ントリのアドレス部68には、ブロックaOに対するM
S61上の主記憶アドレスADRaOが登録され、その
エントリの有効ビット部69のVビットは“l”となっ
て、該ブロックのデータが有効であることを示している
。ここで、CPU63aがB564aのブロックaO内
のデータを書換える場合、インタフェース71を介して
CPU63bにブロックaOを書換える旨を連絡する。
これによりCPU63bはBAA67bを検索し、イン
タフェース71によって送られてきたCPU63aのス
トアアドレスADRaOがBAA67bに登録されてい
ることが分かると、そのエントリの無効化処理(Vビッ
トを0とする処理)を行う、もし、BAA6?bにアド
レスADRaOが登録されていなければ何もしない、C
PU63bがストアを行う場合も同様である。又、CH
65がWSe2にストアを行う場合は、CPU63aお
よびCPU63bの両方にインタフェース73によって
ストアアドレスを送る。CPU63aおよびCPU63
bの無効化処理は、上述と同様である。
タフェース71によって送られてきたCPU63aのス
トアアドレスADRaOがBAA67bに登録されてい
ることが分かると、そのエントリの無効化処理(Vビッ
トを0とする処理)を行う、もし、BAA6?bにアド
レスADRaOが登録されていなければ何もしない、C
PU63bがストアを行う場合も同様である。又、CH
65がWSe2にストアを行う場合は、CPU63aお
よびCPU63bの両方にインタフェース73によって
ストアアドレスを送る。CPU63aおよびCPU63
bの無効化処理は、上述と同様である。
第9図は、マルチプロセッサシステムにおけるバッファ
記憶のブロック無効化処理の他の一例を説明する図であ
る。この無効化処理の他側においては、更に、バッファ
記憶のディレクトリであるバッファ・アドレス・アレイ
(BAA)の写しを記憶制御装置(SC)にフロント・
アドレス・アレイ(FAA)として設けて、バッファ記
憶の一致制御を行う、すなわち、第9図に示すように、
5C62内に、更に、BAA67aのコピーであるFA
A77aと、BAA67bのコピーであるFAA?7b
とが設けられる。FAA?7aおよびFAA?7bの構
成は、BAA67aおよびBAA67bと同じであり、
バッファ記憶にデータのブロックが登録され、BAAに
アドレスデータが登録された時、対応するFAAにも同
じアドレスデータが登録される。
記憶のブロック無効化処理の他の一例を説明する図であ
る。この無効化処理の他側においては、更に、バッファ
記憶のディレクトリであるバッファ・アドレス・アレイ
(BAA)の写しを記憶制御装置(SC)にフロント・
アドレス・アレイ(FAA)として設けて、バッファ記
憶の一致制御を行う、すなわち、第9図に示すように、
5C62内に、更に、BAA67aのコピーであるFA
A77aと、BAA67bのコピーであるFAA?7b
とが設けられる。FAA?7aおよびFAA?7bの構
成は、BAA67aおよびBAA67bと同じであり、
バッファ記憶にデータのブロックが登録され、BAAに
アドレスデータが登録された時、対応するFAAにも同
じアドレスデータが登録される。
例えば、B564aおよびB564b上に同時にブロッ
クaOが存在する場合、そのブロックアドレスADRa
OはBAA67aおよびBAA67bに登録されており
、更にFAA77aおよびFAA?7bにも登録されて
いる。この時、CPU63aがB564aのブロックa
O内のデータを書換えようとする場合、BSはストアス
ル一方式でデータが登録されるので、ストアリクエスト
がCPU63aよりインタフェース74を介して5C6
2へ発せられる。
クaOが存在する場合、そのブロックアドレスADRa
OはBAA67aおよびBAA67bに登録されており
、更にFAA77aおよびFAA?7bにも登録されて
いる。この時、CPU63aがB564aのブロックa
O内のデータを書換えようとする場合、BSはストアス
ル一方式でデータが登録されるので、ストアリクエスト
がCPU63aよりインタフェース74を介して5C6
2へ発せられる。
5C62は、WS66上のブロックaO内の要求データ
を書換えると共に、FAA?7bを検索し、B564b
上に該ブロックが存在しないか調べる。この場合、FA
A?7bにもブロックaOのアドレスADRaOが登録
されているので、5C62はFAA?7bの該エントリ
を無効化する。また、同時に。
を書換えると共に、FAA?7bを検索し、B564b
上に該ブロックが存在しないか調べる。この場合、FA
A?7bにもブロックaOのアドレスADRaOが登録
されているので、5C62はFAA?7bの該エントリ
を無効化する。また、同時に。
インタフェース75を介してBAA67bの該当エント
リの無効化をCPU63bへ要求する。これにより、C
PU63bはBAA67bの該当エントリを無効化する
。
リの無効化をCPU63bへ要求する。これにより、C
PU63bはBAA67bの該当エントリを無効化する
。
CPU63bがストアを行う場合も、同様にして、5C
62はFAA77aを検索し、もし、そのブロックアド
レスが登録されていれば該エントリを無効化すると共に
、インタフェース74を介してCPU63aにBAA1
37aの該当エントリの無効化を要求する。CH65が
ストアする場合には、5C62はFAA77aおよびF
AA?7b両方を検索して、そのブロックアドレスが登
録されていれば該エントリを無効化する。
62はFAA77aを検索し、もし、そのブロックアド
レスが登録されていれば該エントリを無効化すると共に
、インタフェース74を介してCPU63aにBAA1
37aの該当エントリの無効化を要求する。CH65が
ストアする場合には、5C62はFAA77aおよびF
AA?7b両方を検索して、そのブロックアドレスが登
録されていれば該エントリを無効化する。
また、5C62はFAA??aおよびFAA77bのデ
ィレクトリのほかに、WSe6のディレクトリであるW
AA76を有している。WAA76の各エントリは、第
10図に示すように、そのエントリの有効性を示す有効
ビット(Vビット)部78.そのエントリに対応するW
Se2のラインの主記憶アドレスを示すアドレス(A
D H)部79.およびそのうインがWSe2に取込ま
れてから該ラインの書換えが行われたことを示す書換有
無ビット(Cビット)部80から構成されている。中間
バッファ記憶は前述したようにストアイン方式で登録さ
れるため、H566においてラインのリプレースが発生
したときに、5C62はWSe2より追出されるライン
をMS61に書き戻す必要があるか否かをCビン8部8
0のビット値により決める・ ところで、データ処理システムを構成する場合、近年の
著しいデータ処理量の増加に耐え得るシステム、または
1種々の利用形態に耐え得るシステムを構築するために
、データ処理システムの構成には拡張性を持たせること
所望される。
ィレクトリのほかに、WSe6のディレクトリであるW
AA76を有している。WAA76の各エントリは、第
10図に示すように、そのエントリの有効性を示す有効
ビット(Vビット)部78.そのエントリに対応するW
Se2のラインの主記憶アドレスを示すアドレス(A
D H)部79.およびそのうインがWSe2に取込ま
れてから該ラインの書換えが行われたことを示す書換有
無ビット(Cビット)部80から構成されている。中間
バッファ記憶は前述したようにストアイン方式で登録さ
れるため、H566においてラインのリプレースが発生
したときに、5C62はWSe2より追出されるライン
をMS61に書き戻す必要があるか否かをCビン8部8
0のビット値により決める・ ところで、データ処理システムを構成する場合、近年の
著しいデータ処理量の増加に耐え得るシステム、または
1種々の利用形態に耐え得るシステムを構築するために
、データ処理システムの構成には拡張性を持たせること
所望される。
第11図は、第6図のマルチプロセッサシステムを更に
拡張したマルチプロセッサシステムの一例を示すブロッ
ク図である。ここでの拡張マルチプロセッサシステムは
、第6図に示したマルチプロセッサシステムのシステム
構成に、更に2台の中央処理装置と1台の入出力処理装
置を更に加えて、4台の中央処理装置(CP U63a
、 CP U63b、CPU63c、CPU63d)
と2台の人出カ処理装置(65a 、 65b )によ
りシステムを構成している例である。第6図のマルチプ
ロセッサシステムに比べると、2倍の台数の中央処理装
置(CPU)および入出力処理装置(CH)が接続され
たデータ処理システムとなっている。
拡張したマルチプロセッサシステムの一例を示すブロッ
ク図である。ここでの拡張マルチプロセッサシステムは
、第6図に示したマルチプロセッサシステムのシステム
構成に、更に2台の中央処理装置と1台の入出力処理装
置を更に加えて、4台の中央処理装置(CP U63a
、 CP U63b、CPU63c、CPU63d)
と2台の人出カ処理装置(65a 、 65b )によ
りシステムを構成している例である。第6図のマルチプ
ロセッサシステムに比べると、2倍の台数の中央処理装
置(CPU)および入出力処理装置(CH)が接続され
たデータ処理システムとなっている。
ところで、第11図に示すようなシステム構成のマルチ
プロセッサシステムとして、システムを拡張する場合に
は、次のような問題が解決されていなければならない、
すなわち、第11図のマルチプロセッサシステムにおい
ては、記憶制御装置(SC62)は、4台のCPUおよ
び2台のCHがらのリクエストを受は付は処理する必要
があるので、計6台からのリクエスト処理が可能なスル
ートップを有していなければならない。そのため、この
拡張マルチプロセッサシステムの記憶制御装置は、内部
制御論理の高速化が必要とされ、制御論理装置が複雑と
なり、ハードウェアの論理素子の量が増加し、更に高速
なメモリ素子を必要とする。また更に、各々のリクエス
ト発行元のCPU63a、CPU63b、CPU63c
、CPU63d、CH65a 、 CH65bからのリ
クエストに対するヒツト率を、第6図のシステムと同程
度に保つには、中間バッファ記憶容量を、第6図のシス
テムの中間バッファ記憶に比して、2倍以上のWS容量
とすることが必要となってくる。また、CPU63a。
プロセッサシステムとして、システムを拡張する場合に
は、次のような問題が解決されていなければならない、
すなわち、第11図のマルチプロセッサシステムにおい
ては、記憶制御装置(SC62)は、4台のCPUおよ
び2台のCHがらのリクエストを受は付は処理する必要
があるので、計6台からのリクエスト処理が可能なスル
ートップを有していなければならない。そのため、この
拡張マルチプロセッサシステムの記憶制御装置は、内部
制御論理の高速化が必要とされ、制御論理装置が複雑と
なり、ハードウェアの論理素子の量が増加し、更に高速
なメモリ素子を必要とする。また更に、各々のリクエス
ト発行元のCPU63a、CPU63b、CPU63c
、CPU63d、CH65a 、 CH65bからのリ
クエストに対するヒツト率を、第6図のシステムと同程
度に保つには、中間バッファ記憶容量を、第6図のシス
テムの中間バッファ記憶に比して、2倍以上のWS容量
とすることが必要となってくる。また、CPU63a。
CPU63b、CPU63c、CPU63d、CH65
a。
a。
CH65bと5C62との接続ケーブル本数も多くなり
、5C62はそれだけの個数のケーブル接続口を用意し
ておく必要がある。
、5C62はそれだけの個数のケーブル接続口を用意し
ておく必要がある。
このように、第11図に示したようなマルチプロセッサ
システムの構成をとって、システム構成を拡張するには
、制御論理は複雑でないが、ハードウェア上の性能面で
の種々の制約条件を受ける。
システムの構成をとって、システム構成を拡張するには
、制御論理は複雑でないが、ハードウェア上の性能面で
の種々の制約条件を受ける。
これに対しては、例えば、記憶制御装置を更に別に設け
る構成として、マルチプロセッサシステムを構築するこ
とができる。この例を説明する。
る構成として、マルチプロセッサシステムを構築するこ
とができる。この例を説明する。
第12図は、記憶制御装置を2台設けたマルチプロセッ
サシステムの構成の一例を示すブロック図である。第1
2図のマルチプロセッサシステムは、2台の記憶制御装
置(62a 、 62b )と、4台の中央処理装置(
CPU63a、CPU63b、CPU63c 、 CP
U63d )と、2台の入出力処理装置(65a 、
65b )とによりデータ処理システムが構成されて
いる例である。このようなシステム構成においては、図
示されるように、各々の制御記憶装置(SC62a、5
C62b)に対しては、共に接続されるCPU、CHの
台数は第6図に示すシステム構成例と同じである。この
ため、第12図のシステムにおける5C62aおよび5
C62bに要求されるスループットは、第1図の5C6
2のそれとほぼ同じで良いことになり、第11図のシス
テム構成例のようなハードウェア面での性能上の制約条
件の問題点は生じない。
サシステムの構成の一例を示すブロック図である。第1
2図のマルチプロセッサシステムは、2台の記憶制御装
置(62a 、 62b )と、4台の中央処理装置(
CPU63a、CPU63b、CPU63c 、 CP
U63d )と、2台の入出力処理装置(65a 、
65b )とによりデータ処理システムが構成されて
いる例である。このようなシステム構成においては、図
示されるように、各々の制御記憶装置(SC62a、5
C62b)に対しては、共に接続されるCPU、CHの
台数は第6図に示すシステム構成例と同じである。この
ため、第12図のシステムにおける5C62aおよび5
C62bに要求されるスループットは、第1図の5C6
2のそれとほぼ同じで良いことになり、第11図のシス
テム構成例のようなハードウェア面での性能上の制約条
件の問題点は生じない。
しかし、第12図に示すようなシステム構成では、各々
のCPU内のBSのデータ一致制御をBS 64 aお
よびB564bに加えて、B564cおよびB564d
についても行う必要がある。その上、2台とした5C6
2aおよび5C62bにおけるW S 66aおよびW
S 66 bについても行う必要がある。
のCPU内のBSのデータ一致制御をBS 64 aお
よびB564bに加えて、B564cおよびB564d
についても行う必要がある。その上、2台とした5C6
2aおよび5C62bにおけるW S 66aおよびW
S 66 bについても行う必要がある。
例えば、ブロックaOのデータがWSおよびBSに登録
されていない場合、CPU63aがブロックaO内のデ
ータに対して読出し要求を5C62aへ発行すると、ブ
ロックaOを含むラインAがWS66aに登録されると
共に、B564aにブロックaOが登録される。この状
態で、CPU63cがやはりブロックaO内のデータの
読出し要求を5C62bに対して発行すると、W S
66 bにもラインAが登録され、B564cにもブロ
ックaOが登録される。この状態で、更にCPU63b
およびCPU63dが、やはりブロックaO内のデータ
読出し要求を5C62aおよび5C62bへそれぞれ発
行すると、B564bおよびB564dにもブロックa
Oが登録される。この結果、WS66aおよびWS66
bには共にラインAが登録され、かつB564a、B5
64b 、 B 564c 、およびB564dの全て
にブロックaOが同時に登録されている状態となる。
されていない場合、CPU63aがブロックaO内のデ
ータに対して読出し要求を5C62aへ発行すると、ブ
ロックaOを含むラインAがWS66aに登録されると
共に、B564aにブロックaOが登録される。この状
態で、CPU63cがやはりブロックaO内のデータの
読出し要求を5C62bに対して発行すると、W S
66 bにもラインAが登録され、B564cにもブロ
ックaOが登録される。この状態で、更にCPU63b
およびCPU63dが、やはりブロックaO内のデータ
読出し要求を5C62aおよび5C62bへそれぞれ発
行すると、B564bおよびB564dにもブロックa
Oが登録される。この結果、WS66aおよびWS66
bには共にラインAが登録され、かつB564a、B5
64b 、 B 564c 、およびB564dの全て
にブロックaOが同時に登録されている状態となる。
この状態で、CPU63aがブロックaO内のデータを
書換えると、B564a内のブロックaOとWS66a
内のラインA内の該データが書換えらる処理が行われる
。しかし、B 564b 、 B 564c 。
書換えると、B564a内のブロックaOとWS66a
内のラインA内の該データが書換えらる処理が行われる
。しかし、B 564b 、 B 564c 。
およびB564d内のブロックaOの該データとWS
66 b内のラインA内のブロックaOの該データは書
換えられない。このため、BSのデータ一致制御により
、B 564b 、 B 564c 、およびB564
d内のブロックaOの無効化と、WSのデーター致制御
によるWS66bのラインAの無効化を行う必要がある
。
66 b内のラインA内のブロックaOの該データは書
換えられない。このため、BSのデータ一致制御により
、B 564b 、 B 564c 、およびB564
d内のブロックaOの無効化と、WSのデーター致制御
によるWS66bのラインAの無効化を行う必要がある
。
このような無効化処理を行うために、第13図に示すよ
うに、WAAのエントリは、登録する内容を拡張して、
Vピット部943.ADR部97.およびCピット部9
8に、更に、EXXシフ899を設ける構成とする。こ
のEXXシフ899には、無効化処理の排他制御を行う
ため、次のような意味を持たせる。すなわち、EXビッ
トが“1”のラインは、WSについては自SC内のWS
にのみ存在し。
うに、WAAのエントリは、登録する内容を拡張して、
Vピット部943.ADR部97.およびCピット部9
8に、更に、EXXシフ899を設ける構成とする。こ
のEXXシフ899には、無効化処理の排他制御を行う
ため、次のような意味を持たせる。すなわち、EXビッ
トが“1”のラインは、WSについては自SC内のWS
にのみ存在し。
他SC内のWSには存在しないことを意味し、BSにつ
いては、自SCに接続されるCPU内のBSには存在し
うるが、自SC以外の他SCに接続されるCPU内のB
Sには存在しないことを意味する。
いては、自SCに接続されるCPU内のBSには存在し
うるが、自SC以外の他SCに接続されるCPU内のB
Sには存在しないことを意味する。
これにより、CPUがバッファ記憶内のあるブロックの
データを書き換えるとき、該CPUに接続されるSCは
自己のWSに対するWAAを検索することにより、該ブ
ロックを含むラインが自SC以外の他SCのWSに存在
しないことが直ちに分かり、存在しない場合、他SCを
起動しないですむ。
データを書き換えるとき、該CPUに接続されるSCは
自己のWSに対するWAAを検索することにより、該ブ
ロックを含むラインが自SC以外の他SCのWSに存在
しないことが直ちに分かり、存在しない場合、他SCを
起動しないですむ。
このようなマルチプロセッサシステムにおける動作を、
第14図を参照して具体的に説明する。
第14図を参照して具体的に説明する。
第14図において、MS61に2台の5C62aおよび
5C62b、が接続され、更に、5C62aにはCP
U63a 、 CP U63b 、およびCH65aが
、5C62bにはCP U63c 、 CP U63d
、およびCH65bがそれぞれ接続される。CPU6
3aはB564aとそのディレクトリのBAA67aを
有し、同様に、CPU63bはB564bとそのディレ
クトリのBAA67bを有する。5C62aは、WS6
6aと、そのディレクトリWAA76aと、更に、BA
A67aおよびBAA67bのそれぞれの写しであるF
AA77aおよびFAA77bを有する。5C62b、
CPU63c、およびCPU63dの側においても、同
様にそれぞれ中間バッファ記憶、バッファ記憶、それら
のディレクトリ、およびディレクトリの写しを有する構
成となっている。BAA67a、BAA67b、BAA
67c、BAA67dの各エントリの登録内容は、第8
図に示したエントリと同様に、有効ビット部およびアド
レス部から構成されている。
5C62b、が接続され、更に、5C62aにはCP
U63a 、 CP U63b 、およびCH65aが
、5C62bにはCP U63c 、 CP U63d
、およびCH65bがそれぞれ接続される。CPU6
3aはB564aとそのディレクトリのBAA67aを
有し、同様に、CPU63bはB564bとそのディレ
クトリのBAA67bを有する。5C62aは、WS6
6aと、そのディレクトリWAA76aと、更に、BA
A67aおよびBAA67bのそれぞれの写しであるF
AA77aおよびFAA77bを有する。5C62b、
CPU63c、およびCPU63dの側においても、同
様にそれぞれ中間バッファ記憶、バッファ記憶、それら
のディレクトリ、およびディレクトリの写しを有する構
成となっている。BAA67a、BAA67b、BAA
67c、BAA67dの各エントリの登録内容は、第8
図に示したエントリと同様に、有効ビット部およびアド
レス部から構成されている。
また、WAA76aおよびWAA76bの各エントリの
登録内容は、ここでは、第13図に示すように、有効ビ
ット(Vビット)部96.アドレス(ADR)部97.
書換有無ビット(Cビット)部98.およびEXXシフ
899から構成されている。
登録内容は、ここでは、第13図に示すように、有効ビ
ット(Vビット)部96.アドレス(ADR)部97.
書換有無ビット(Cビット)部98.およびEXXシフ
899から構成されている。
CPU63aからインタフェース74を介して、ライン
AのブロックaO内のデータに対する書込み要求を5C
62aが受取ると、5C62aはWAA76aを検索す
る。
AのブロックaO内のデータに対する書込み要求を5C
62aが受取ると、5C62aはWAA76aを検索す
る。
先ず、WAA76aにラインAが登録されているケース
から説明する。この場合、該書込み要求はWS66a上
で処理され、W 366 a上のラインAのブロックa
O内のデータを書換える。更に、B564bに対するデ
ータ一致制御のため、5C62aはFAA?7bを検索
し、該ブロックが登録されていれば、FAA77bの該
当エントリを無効化するとともに、CPU63bに対し
てインタフェース75によりBAA67bの該当ブロッ
クの無効化要求を発する。FAA?7bに該当ラインが
登録されていなければ何もしない。
から説明する。この場合、該書込み要求はWS66a上
で処理され、W 366 a上のラインAのブロックa
O内のデータを書換える。更に、B564bに対するデ
ータ一致制御のため、5C62aはFAA?7bを検索
し、該ブロックが登録されていれば、FAA77bの該
当エントリを無効化するとともに、CPU63bに対し
てインタフェース75によりBAA67bの該当ブロッ
クの無効化要求を発する。FAA?7bに該当ラインが
登録されていなければ何もしない。
WS66b 、 B 564c 、およびB564dに
対するデータ一致制御は、FAA76aのラインAの#
J、録されているエントリのEXビットの値によって変
わる。先ず、EXビットが111 IPの場合は、ライ
ンAがW S 66 bにも、B564cおよびB56
4dにも存在しないので、5C62aはインタフェース
91を起動しない、EXビットが0”の場合は、ライン
AがWS66bに、又、ラインA内のブロック(ao、
ao、a2.a3とする)がB564cおよびB564
dに存在する可能性があるので、5C62aはインタフ
ェース91を起動して5C62bヘデータ一致制御を要
求する。この要求により、5C62aはインタフェース
91を起動して5C62bヘデータ一致制御を要求する
。この要求により、5C62bはWAA76bを検索し
、ラインAが登録されていれば、このエントリを無効化
する。また、FAA?7cおよびFAA?7dにライて
は、ラインA内の全ブロックについて(ここではブロッ
クaO1al、a2.a3について)検索し、登録され
ているブロックがあれば該当エントリを無効にするとと
もに、CPU63cおよびCPU63dに対してそれぞ
れインタフェース94およびインタフェース95により
該ブロックの無効化要求を発行する。これにより、 W
S66b 、 B 564c 、およびB564d上に
ラインAのデータは無効化され、存在しなくなるので、
5C62aはWAA76a内のラインAの登録されてい
るエントリのEXビットを“1”にセットしなおす。
対するデータ一致制御は、FAA76aのラインAの#
J、録されているエントリのEXビットの値によって変
わる。先ず、EXビットが111 IPの場合は、ライ
ンAがW S 66 bにも、B564cおよびB56
4dにも存在しないので、5C62aはインタフェース
91を起動しない、EXビットが0”の場合は、ライン
AがWS66bに、又、ラインA内のブロック(ao、
ao、a2.a3とする)がB564cおよびB564
dに存在する可能性があるので、5C62aはインタフ
ェース91を起動して5C62bヘデータ一致制御を要
求する。この要求により、5C62aはインタフェース
91を起動して5C62bヘデータ一致制御を要求する
。この要求により、5C62bはWAA76bを検索し
、ラインAが登録されていれば、このエントリを無効化
する。また、FAA?7cおよびFAA?7dにライて
は、ラインA内の全ブロックについて(ここではブロッ
クaO1al、a2.a3について)検索し、登録され
ているブロックがあれば該当エントリを無効にするとと
もに、CPU63cおよびCPU63dに対してそれぞ
れインタフェース94およびインタフェース95により
該ブロックの無効化要求を発行する。これにより、 W
S66b 、 B 564c 、およびB564d上に
ラインAのデータは無効化され、存在しなくなるので、
5C62aはWAA76a内のラインAの登録されてい
るエントリのEXビットを“1”にセットしなおす。
次にWAA76aにラインAが登録されていない場合を
説明する。この場合、5C62aはインタフェース91
により、5C62bに対してデータ一致制御の要求を送
出して、該W S 66 aへの書込み要求処理を中断
する。5C62bはWAA76bを検索し、その結果を
、つまりWAA76bに登録されていないことの結果を
、あるいは登録されていた時は該当エントリのCビット
の値を、インタフェース91により5C62aへ連絡し
、WAA7Gb上の該当ラインを無効にする。また、5
C62bはFAA77cおよびFAA?7dを検索し、
登録されていれば、B564cおよびB564dの無効
化要求を、それぞれCPU63cおよびCPU63dに
発する。
説明する。この場合、5C62aはインタフェース91
により、5C62bに対してデータ一致制御の要求を送
出して、該W S 66 aへの書込み要求処理を中断
する。5C62bはWAA76bを検索し、その結果を
、つまりWAA76bに登録されていないことの結果を
、あるいは登録されていた時は該当エントリのCビット
の値を、インタフェース91により5C62aへ連絡し
、WAA7Gb上の該当ラインを無効にする。また、5
C62bはFAA77cおよびFAA?7dを検索し、
登録されていれば、B564cおよびB564dの無効
化要求を、それぞれCPU63cおよびCPU63dに
発する。
5C62aはインタフェース91による5C62bのW
AA76bの検索結果の連絡を受取ると、MS61より
ラインAを読出し、WS66aへ書込み、CPU63a
からの書込要求を処理し、ラインAのエントリをW A
A 76 aに登録する。この時、前述したようにW
S66b 、 B 564cおよびB564dからはラ
インAが追出されているので、WAA76aにはEXビ
ットを′1″として登録する。
AA76bの検索結果の連絡を受取ると、MS61より
ラインAを読出し、WS66aへ書込み、CPU63a
からの書込要求を処理し、ラインAのエントリをW A
A 76 aに登録する。この時、前述したようにW
S66b 、 B 564cおよびB564dからはラ
インAが追出されているので、WAA76aにはEXビ
ットを′1″として登録する。
なお、いずれの場合も、WAA76aのラインAの登録
されているエントリのCビットが1′″にセットされる
。更に、読出し要求に対してもEXビットをセットされ
る場合がある。すなわち、ラインA内のデータを読出し
た後、そのデータを書換える可能性のある場合、ライン
Aを読出した時にあらかじめEXビットがセットされる
。
されているエントリのCビットが1′″にセットされる
。更に、読出し要求に対してもEXビットをセットされ
る場合がある。すなわち、ラインA内のデータを読出し
た後、そのデータを書換える可能性のある場合、ライン
Aを読出した時にあらかじめEXビットがセットされる
。
次に、CPUあるいはCHからのラインAに対するEX
セットの読出し要求が来た場合のSCの動作を説明する
。
セットの読出し要求が来た場合のSCの動作を説明する
。
第14図において、CPU133aがラインAのデータ
に対するEXビットをセットする読出し要求を発行した
場合、該データがB564a上にあれば、該要求はB5
64aにより処理されるので、WAA76aのEXビッ
トはセットされない。もし、B564aに該データが存
在しなければ、EXセットの読出し要求が、5C62a
に対して発せられる。もし、ラインAがWAA76aに
登録されている場合は、W866aを読出すことにより
5C62a内で処理されるので、やはりEXビットはセ
ットされない。しかし、ラインAがW S 66 a上
に存在しない場合、インタフェース91により5C62
bに対して該ラインがW S 66 b上にて書換えら
れて存在するか否かが間合せられる。この際、5C62
bはWAA76bの検索を行うと共に、FAA??cお
よびFAA??dを検索し、ラインAがいづれにも存在
しない場合は、インタフェース92によりEXビットの
セット可を連絡する。この場合には、5C62aはライ
ンAのデータをMS61から読み出し、WS66aに格
納し、ラインAのエントリをWAA76aに登録する際
にEXビットを“1″にセットする。
に対するEXビットをセットする読出し要求を発行した
場合、該データがB564a上にあれば、該要求はB5
64aにより処理されるので、WAA76aのEXビッ
トはセットされない。もし、B564aに該データが存
在しなければ、EXセットの読出し要求が、5C62a
に対して発せられる。もし、ラインAがWAA76aに
登録されている場合は、W866aを読出すことにより
5C62a内で処理されるので、やはりEXビットはセ
ットされない。しかし、ラインAがW S 66 a上
に存在しない場合、インタフェース91により5C62
bに対して該ラインがW S 66 b上にて書換えら
れて存在するか否かが間合せられる。この際、5C62
bはWAA76bの検索を行うと共に、FAA??cお
よびFAA??dを検索し、ラインAがいづれにも存在
しない場合は、インタフェース92によりEXビットの
セット可を連絡する。この場合には、5C62aはライ
ンAのデータをMS61から読み出し、WS66aに格
納し、ラインAのエントリをWAA76aに登録する際
にEXビットを“1″にセットする。
このような拡張マルチプロセッサシステムに関するバッ
ファ記憶の間の排他制御の技術については、特開昭60
−138653号公報に記載されている。
ファ記憶の間の排他制御の技術については、特開昭60
−138653号公報に記載されている。
このような、マルチプロセッサシステムにおける多階層
のバッファ記憶の排他制御を行う場合において、ストア
処理を実行する時、自SCのEXビットが“0”の場合
は、他SCのWAAに該当ラインが存在するか検索し、
存在すればこのエントリを無効にするとともに、該ライ
ン内の全ブロックについて、他SCに接続されているB
Sに該ブロックが存在するか検索し、存在すればそれら
のブロックを無効化してしまう。この方法は、ストア処
理が1ラインの領域に連続して実施される場合は効率が
良いが、1ラインのうち1ブロック分しかストア処理を
行なわない場合においては。
のバッファ記憶の排他制御を行う場合において、ストア
処理を実行する時、自SCのEXビットが“0”の場合
は、他SCのWAAに該当ラインが存在するか検索し、
存在すればこのエントリを無効にするとともに、該ライ
ン内の全ブロックについて、他SCに接続されているB
Sに該ブロックが存在するか検索し、存在すればそれら
のブロックを無効化してしまう。この方法は、ストア処
理が1ラインの領域に連続して実施される場合は効率が
良いが、1ラインのうち1ブロック分しかストア処理を
行なわない場合においては。
BSに取込んでいる残りブロックは本来は無効化する必
要がないのに、無条件に無効化がなされてしまうことに
なり、N I B R(Not In Buffer
strage Ratio ; B Sにアクセス対象
ブロックが存在しない確率)が高くなるという問題があ
る。
要がないのに、無条件に無効化がなされてしまうことに
なり、N I B R(Not In Buffer
strage Ratio ; B Sにアクセス対象
ブロックが存在しない確率)が高くなるという問題があ
る。
本発明は、上記問題点を解決するためになされたもので
ある。
ある。
本発明の目的は、マルチプロセッサシステムのバッファ
記憶の間を排他制御を行う場合に、NIBRを高くしな
いことにある。
記憶の間を排他制御を行う場合に、NIBRを高くしな
いことにある。
また1本発明の他の目的は、BSのブロックの複数倍の
大きさをラインサイズとするWSを有する少なくととも
25C構成とするマルチプロセッサシステムシステムお
いて、WS間のデータ一致制御時に他SC側のBSのデ
ータ無効化処理についてはライン単位でなくブロック単
位で行うことを可能とすることにある。
大きさをラインサイズとするWSを有する少なくととも
25C構成とするマルチプロセッサシステムシステムお
いて、WS間のデータ一致制御時に他SC側のBSのデ
ータ無効化処理についてはライン単位でなくブロック単
位で行うことを可能とすることにある。
本発明の前記ならびにその他の目的と新規な特徴は1本
明細書の記述及び添付図面によって明らかになるであろ
う。
明細書の記述及び添付図面によって明らかになるであろ
う。
上記目的を達成するため、本発明においては、MSと、
MS上のデータの写しを格納する複数のWSと、WSに
対応して少なくとも1つ存在し。
MS上のデータの写しを格納する複数のWSと、WSに
対応して少なくとも1つ存在し。
各々のWS上のデータの写しを格納する複数のBSと、
各々のWSおよびBSに対応して当該WSおよびBSに
格納されているデータの主記憶アドレスを登録するBA
Aとを有し、WSのデータ登録単位がBSのデータ登録
単位の複数倍とする多階層の記憶構造をとり、BSを各
CPU単位で専用する構成とされたマルチプロセッサシ
ステムにおいて、自CPU対応の当該WSに格納されて
いる主記憶アドレスのデータが他CPU対応のWSおよ
びそれに接続されているBSに格納されているか否かを
示す複数個の特定ビットを当該WSのWAA対応に設け
、WSのデータを書き換える際。
各々のWSおよびBSに対応して当該WSおよびBSに
格納されているデータの主記憶アドレスを登録するBA
Aとを有し、WSのデータ登録単位がBSのデータ登録
単位の複数倍とする多階層の記憶構造をとり、BSを各
CPU単位で専用する構成とされたマルチプロセッサシ
ステムにおいて、自CPU対応の当該WSに格納されて
いる主記憶アドレスのデータが他CPU対応のWSおよ
びそれに接続されているBSに格納されているか否かを
示す複数個の特定ビットを当該WSのWAA対応に設け
、WSのデータを書き換える際。
当該WSのWAAを検索し、該当ディレクトリのエント
リの複数個の特定ビットの値によって、他CPU対応の
WSおよびそれに接続されているBSデータを無効化す
る処理の要否を判定する制御手段を有することを特徴と
する。
リの複数個の特定ビットの値によって、他CPU対応の
WSおよびそれに接続されているBSデータを無効化す
る処理の要否を判定する制御手段を有することを特徴と
する。
また、自CPU対応の当該WSに格納されている主記憶
アドレスのデータが他CPU対応のWSおよびそれに接
続されているBSに格納されているか否かを示す特定ビ
ットを、WS間のデーター致を管理する第1特定ビット
と、WSと他系WSに接続されている88間のデータ一
致を管理する第2特定ビットとに分離して、当該WSの
WAAのエントリの一部、あるい該エントリと対応づけ
られるメモリアレイ情報として設け、該特定ビットの値
によるWSのデータを書き換える際のWS間の一致制御
と、WSと他系の88間の一致制御とを独立して行う制
御手段を有することを特徴とする。
アドレスのデータが他CPU対応のWSおよびそれに接
続されているBSに格納されているか否かを示す特定ビ
ットを、WS間のデーター致を管理する第1特定ビット
と、WSと他系WSに接続されている88間のデータ一
致を管理する第2特定ビットとに分離して、当該WSの
WAAのエントリの一部、あるい該エントリと対応づけ
られるメモリアレイ情報として設け、該特定ビットの値
によるWSのデータを書き換える際のWS間の一致制御
と、WSと他系の88間の一致制御とを独立して行う制
御手段を有することを特徴とする。
前記手段によれば、マルチプロセッサシステムにおいて
、自CPU対応の当該WSに格納されている主記憶アド
レスのデータが他CPU対応のWSおよびそれに接続さ
れているBSに格納されているか否かを示す特定ビット
を複数個とし、この複数個の特定ビットを当該WSのW
AA対応に設ける。そして、WSのデータを書き換える
際、当該WSのWAAを検索し、該当ディレクトリのエ
ントリの複数個の特定ビットの値によって、他CPU対
応のWSおよびそれに接続されているBSデータを無効
化する処理の要否を判定する。
、自CPU対応の当該WSに格納されている主記憶アド
レスのデータが他CPU対応のWSおよびそれに接続さ
れているBSに格納されているか否かを示す特定ビット
を複数個とし、この複数個の特定ビットを当該WSのW
AA対応に設ける。そして、WSのデータを書き換える
際、当該WSのWAAを検索し、該当ディレクトリのエ
ントリの複数個の特定ビットの値によって、他CPU対
応のWSおよびそれに接続されているBSデータを無効
化する処理の要否を判定する。
また、複数個として設ける特定ビットを、WS間のデー
タ一致を管理するEXビットと、WSと他系WSに接続
されているBS間のデータ一致を管理するEXビットを
分離して設け、WAAのエントリの一部、あるいはWA
Aのエントリと対応づけられるメモリアレイ情報として
持ち、各々の特定ビットを参照して、WS間の一致制御
と、WSと他系88間の一致制御とを独立して行う。
タ一致を管理するEXビットと、WSと他系WSに接続
されているBS間のデータ一致を管理するEXビットを
分離して設け、WAAのエントリの一部、あるいはWA
Aのエントリと対応づけられるメモリアレイ情報として
持ち、各々の特定ビットを参照して、WS間の一致制御
と、WSと他系88間の一致制御とを独立して行う。
すなわち、WS間の一致制御を行う特定ビットのWS用
EXビットを、例えば、EXLビットとし、BSブロッ
ク対応の特定ビットを、例えば、EXOビット〜EX3
ピットとして、WSにストアする時、WAAの該当エン
トリのEXLビットが“1”の場合、他WSに同一デー
タは存在しないから自WSにのみストアする処理制御を
行う。
EXビットを、例えば、EXLビットとし、BSブロッ
ク対応の特定ビットを、例えば、EXOビット〜EX3
ピットとして、WSにストアする時、WAAの該当エン
トリのEXLビットが“1”の場合、他WSに同一デー
タは存在しないから自WSにのみストアする処理制御を
行う。
また、ストアアドレスのブロック対応のEXiビット(
i=o〜3)が111”のときは、該当ブロックは他系
のBSには存在しないから、他系BSに対してブロック
キャンセル要求を出ない、また、EXiビットが0”な
ら、WSのストア動作と共に、他系BSに対してブロッ
クキャンセル要求を出す、自WAAに該当エントリが存
在しない場合、または存在してもEXLビットが“O”
の場合は、他系WAAを検索し、該WAAにエントリが
存在すれば、それを無効化し、自WAA、WSにEXL
ビットは“1″として新エントリを登録する。この時、
他系BSのブロックはブロックO〜ブロック3に相当す
る全ブロックが無効化されずに、自WSへのストアアド
レスに対応するブロックのみ無効化され、EXiビット
(i =ストアアドレスのブロック番号)を“1”とし
て、自WAAに登録される。
i=o〜3)が111”のときは、該当ブロックは他系
のBSには存在しないから、他系BSに対してブロック
キャンセル要求を出ない、また、EXiビットが0”な
ら、WSのストア動作と共に、他系BSに対してブロッ
クキャンセル要求を出す、自WAAに該当エントリが存
在しない場合、または存在してもEXLビットが“O”
の場合は、他系WAAを検索し、該WAAにエントリが
存在すれば、それを無効化し、自WAA、WSにEXL
ビットは“1″として新エントリを登録する。この時、
他系BSのブロックはブロックO〜ブロック3に相当す
る全ブロックが無効化されずに、自WSへのストアアド
レスに対応するブロックのみ無効化され、EXiビット
(i =ストアアドレスのブロック番号)を“1”とし
て、自WAAに登録される。
これにより、WS間のデータ一致制御を行う場合、他S
C側のBSのデータ無効化処理についてはライン単位で
なくブロック単位で行うことができる。すなわち、スト
ア動作に伴なうWSおよびBS上のデータ無効化処理を
行う場合、WSはライン単位にWAAu録時に相手WS
の無効化を実行するが、その時、他系にSCに接続され
ているBSのブロック無効化は該当ストアアドレスを含
むブロックに対してのみ行い、未だデータが変更されて
いない該ライン内の残りブロックについてはデータを残
すことができる。したがって、ライン内の全ブロックに
対してストアリクエストが発行されない限り、BSのヒ
ツト率が低下するのを防止できる。
C側のBSのデータ無効化処理についてはライン単位で
なくブロック単位で行うことができる。すなわち、スト
ア動作に伴なうWSおよびBS上のデータ無効化処理を
行う場合、WSはライン単位にWAAu録時に相手WS
の無効化を実行するが、その時、他系にSCに接続され
ているBSのブロック無効化は該当ストアアドレスを含
むブロックに対してのみ行い、未だデータが変更されて
いない該ライン内の残りブロックについてはデータを残
すことができる。したがって、ライン内の全ブロックに
対してストアリクエストが発行されない限り、BSのヒ
ツト率が低下するのを防止できる。
以下、本発明の一実施例を図面を用いて具体的に説明す
る。
る。
第1図は1本発明の一実施例にかかるマルチプロセッサ
システムの要部の全体の構成を示すブロック図である。
システムの要部の全体の構成を示すブロック図である。
また、第2図は1本発明の一実施例にかかる中間バッフ
ァ記憶のディレクトリのエントリの構成の一例を説明す
る図である。
ァ記憶のディレクトリのエントリの構成の一例を説明す
る図である。
第1図において、MS61には2台の5C62aおよび
5C62bが接続され、更に、5C62aにはCP U
63a 、 CP U63b 、およびCH65aが、
5C62bにはCPU63c、CPU63d、およびC
H65bがそれぞれ接続される。CPU63aはB56
4aとそのディレクトリのBAA57aを有し、同様に
、cpU63bはB564bとそのディレクトリのBA
A67bを有する。5C62aは、WS66aと、その
ディレクトリWAA76aと、更に、BAA67aおよ
びBAA57bのそれぞれの写しであるFAA??aお
よびFAA??bを有する。5C62b、CPU63c
、およびCPU63dの側においても、同様にそれぞれ
中間バッファ記憶、バッファ記憶、それらのディレクト
リ、およびディレクトリの写しを有する構成となってい
る。BAA67a、BAA67b、BAA67c、BA
A67dの各エントリの登録内容は、有効ビット部およ
びアドレス部から構成されている(第8図参照)。また
、WAA76aおよびWAA76bの各エントリの登録
内容は、有効ビット部、アドレス部、書換有無ビット部
、バッファ記憶の間の排他制御を行う複数個の特定ビッ
トを登録する特定ビット部から構成されている。
5C62bが接続され、更に、5C62aにはCP U
63a 、 CP U63b 、およびCH65aが、
5C62bにはCPU63c、CPU63d、およびC
H65bがそれぞれ接続される。CPU63aはB56
4aとそのディレクトリのBAA57aを有し、同様に
、cpU63bはB564bとそのディレクトリのBA
A67bを有する。5C62aは、WS66aと、その
ディレクトリWAA76aと、更に、BAA67aおよ
びBAA57bのそれぞれの写しであるFAA??aお
よびFAA??bを有する。5C62b、CPU63c
、およびCPU63dの側においても、同様にそれぞれ
中間バッファ記憶、バッファ記憶、それらのディレクト
リ、およびディレクトリの写しを有する構成となってい
る。BAA67a、BAA67b、BAA67c、BA
A67dの各エントリの登録内容は、有効ビット部およ
びアドレス部から構成されている(第8図参照)。また
、WAA76aおよびWAA76bの各エントリの登録
内容は、有効ビット部、アドレス部、書換有無ビット部
、バッファ記憶の間の排他制御を行う複数個の特定ビッ
トを登録する特定ビット部から構成されている。
このように、第1図のマルチプロセッサシステムのシス
テム構成は第12図で説明したものと同じであるが、W
AA?6a、76bの各エントリの内容は、第2図に示
すように構成されているものを用いる。ここで特徴的な
ことは、バッファ記憶の間の排他制御を行う特定ビット
を、複数個の特定ビットで構成している点である。第2
図に示すように、エントリ20に登録する複数個の特定
ビット部は、EXLビット21と、各ブロック対応のE
XOビット22.EXIビット23.EX2ビット24
゜EX3ビット25から構成されている。EXLビット
21はWSのラインデータがWS間で排他状態にあるこ
とを示すビットである。EXLビット21が“1”のと
き、他SCのWSには同一ラインデータは存在しないこ
とを保証する。EXOビット22゜EXIビット23.
EX2ビット24.EX3ビット25は、それぞれWS
のエントリ20のラインデータを構成するBSブロック
の番号対応の制御ビットとなっている。この複数個設け
られた各々のEXOビット22.EXIビット23.E
X2ビット24゜EX3ビット25が“1”のときは、
各々ブロック毎に、他SCのWSに接続されている全て
のBSに同一ブロックデータが存在しないことを保証す
る。
テム構成は第12図で説明したものと同じであるが、W
AA?6a、76bの各エントリの内容は、第2図に示
すように構成されているものを用いる。ここで特徴的な
ことは、バッファ記憶の間の排他制御を行う特定ビット
を、複数個の特定ビットで構成している点である。第2
図に示すように、エントリ20に登録する複数個の特定
ビット部は、EXLビット21と、各ブロック対応のE
XOビット22.EXIビット23.EX2ビット24
゜EX3ビット25から構成されている。EXLビット
21はWSのラインデータがWS間で排他状態にあるこ
とを示すビットである。EXLビット21が“1”のと
き、他SCのWSには同一ラインデータは存在しないこ
とを保証する。EXOビット22゜EXIビット23.
EX2ビット24.EX3ビット25は、それぞれWS
のエントリ20のラインデータを構成するBSブロック
の番号対応の制御ビットとなっている。この複数個設け
られた各々のEXOビット22.EXIビット23.E
X2ビット24゜EX3ビット25が“1”のときは、
各々ブロック毎に、他SCのWSに接続されている全て
のBSに同一ブロックデータが存在しないことを保証す
る。
次に、第3図、第4図によりWSのヒツト判定動作と、
排他制御を行うためのWS、BSの相互照会動作につい
て説明する。
排他制御を行うためのWS、BSの相互照会動作につい
て説明する。
第3図は、リクエストアドレスとWAAのエントリの比
較を行うヒツト判定回路の一例を示すブロック図である
。第3図において、20はWAAのエントリ、30はリ
クエストアドレス、30aはリクエストアドレスのエン
トリアドレス情報、30bはWSライン内のブロック番
号を示す2ビット情報である。また、31は2ビットの
デコーダ、32はエントリアドレス比較回路、33〜3
7はANDゲート、38はORゲート、39〜40はA
NDゲート、41はインバータ、42〜43はANDゲ
ート、44はORゲートである。ここでは、エントリア
ドレスの比較を、エントリアドレス比較回路32により
行い、比較結果と共に、各々WSライン内のブロック番
号のデコード出力によるEXO−EX3ビットの出力と
の論理により、各々の状態を判定して出力する。
較を行うヒツト判定回路の一例を示すブロック図である
。第3図において、20はWAAのエントリ、30はリ
クエストアドレス、30aはリクエストアドレスのエン
トリアドレス情報、30bはWSライン内のブロック番
号を示す2ビット情報である。また、31は2ビットの
デコーダ、32はエントリアドレス比較回路、33〜3
7はANDゲート、38はORゲート、39〜40はA
NDゲート、41はインバータ、42〜43はANDゲ
ート、44はORゲートである。ここでは、エントリア
ドレスの比較を、エントリアドレス比較回路32により
行い、比較結果と共に、各々WSライン内のブロック番
号のデコード出力によるEXO−EX3ビットの出力と
の論理により、各々の状態を判定して出力する。
すなわち、ここで、ORゲート44.インバータ41゜
ANDゲート42.ANDゲート43からのそれぞれの
出力結果の信号A、B、C,Dは1次の第1表に示すよ
うな各々の状態であることを示す。
ANDゲート42.ANDゲート43からのそれぞれの
出力結果の信号A、B、C,Dは1次の第1表に示すよ
うな各々の状態であることを示す。
(この頁以下余白)
第1表
第4図は、記憶制御装置における中間バッファ記憶のヒ
ツト制御および排他制御を行う制御回路の要部を示す回
路図である。第4図においては、40−構成のWAAに
おける制御回路の例を示している。
ツト制御および排他制御を行う制御回路の要部を示す回
路図である。第4図においては、40−構成のWAAに
おける制御回路の例を示している。
第4図を参照して、各々のロー毎のヒツト判定回路(第
3図)からの信号A、B、C,Dの出力を統合して、S
Cとしてのヒツト判定、排他制御を行う場合の動作を説
明する。第4図において、45a 、 45b 、 4
5c 、 45dはそれぞれロ一番号Oのヒツト判定回
路、ロ一番号1のヒツト判定回路。
3図)からの信号A、B、C,Dの出力を統合して、S
Cとしてのヒツト判定、排他制御を行う場合の動作を説
明する。第4図において、45a 、 45b 、 4
5c 、 45dはそれぞれロ一番号Oのヒツト判定回
路、ロ一番号1のヒツト判定回路。
ロ一番号2のヒツト判定回路、ロ一番号3のヒツト判定
回路である。各々のヒツト判定回路の出力A、B、C,
Dのロー毎の出力がそれぞれAO〜A3.BO〜B3.
Co−C5,Do−D3に対応する。また、46a 〜
46d 、 47.48.50.54.55はORゲー
ト、49.51〜53はANDゲートである。
回路である。各々のヒツト判定回路の出力A、B、C,
Dのロー毎の出力がそれぞれAO〜A3.BO〜B3.
Co−C5,Do−D3に対応する。また、46a 〜
46d 、 47.48.50.54.55はORゲー
ト、49.51〜53はANDゲートである。
56は4ビットエンコーダ、57はセレクタである。
59は所望ラインがWSに存在しない時、ラインを置換
するローを決定する置換ローを決定する置換論理(以下
WRAと略称する)がらの信号であり。
するローを決定する置換ローを決定する置換論理(以下
WRAと略称する)がらの信号であり。
2ビットのロー情報である。58はwSのロ一番号レジ
スタ(2ビット)である、以下、制御回路の各々の論理
ゲートにより論理がとられて出力される出力ゲートの論
理出力I、 II、 II、 IV、 V、 VIにつ
いて、第2a表、第2b表、および第2c表により説明
する。
スタ(2ビット)である、以下、制御回路の各々の論理
ゲートにより論理がとられて出力される出力ゲートの論
理出力I、 II、 II、 IV、 V、 VIにつ
いて、第2a表、第2b表、および第2c表により説明
する。
(この頁以下余白)
第2a表
第2b表
第2c表
上記BSに対するブロックキャンセル処理では、5C6
2aから5C62b側の系のB564cおよびB564
dをブロックキャンセルする場合、FAA77Cおよび
FAA?7dを用いて、B A A6? cおよびBA
A67dに該当エントリが存在するか否かを検索し、存
在する場合のみ、BAA67cおよびBAA67dへ該
当エントリの無効化要求を発行する。
2aから5C62b側の系のB564cおよびB564
dをブロックキャンセルする場合、FAA77Cおよび
FAA?7dを用いて、B A A6? cおよびBA
A67dに該当エントリが存在するか否かを検索し、存
在する場合のみ、BAA67cおよびBAA67dへ該
当エントリの無効化要求を発行する。
また、EXX要求色フェッチリクエストとは、フェッチ
したブロック又はラインにその後ストアをする確率が大
きいリクエストのことである。
したブロック又はラインにその後ストアをする確率が大
きいリクエストのことである。
第5図は、リクエストアドレスとWAAのニジトリの比
較を行うヒツト判定回路の他の例を示す回路図である。
較を行うヒツト判定回路の他の例を示す回路図である。
第5図のヒツト判定回路は、第3図のヒツト判定回路と
基本的には同じ構成であるが、WAAのエントリに登録
される特定ビットとして、WS用EXビットのWXLビ
ットを設けていないエントリに対応するものである。す
なわち、WS用EXビットのWXLビットからの信号に
替えて、ブロック対応の特定ビットEXOビット〜EX
3ビットからの信号の論理和信号を用いるようにしてい
る。このため、特にORゲート60が設けられ、ここか
らの信号出力を使用するようにしている。このようなヒ
ツト判定回路を用いる場合において、EXLビットを持
つ場合と異なるのは。
基本的には同じ構成であるが、WAAのエントリに登録
される特定ビットとして、WS用EXビットのWXLビ
ットを設けていないエントリに対応するものである。す
なわち、WS用EXビットのWXLビットからの信号に
替えて、ブロック対応の特定ビットEXOビット〜EX
3ビットからの信号の論理和信号を用いるようにしてい
る。このため、特にORゲート60が設けられ、ここか
らの信号出力を使用するようにしている。このようなヒ
ツト判定回路を用いる場合において、EXLビットを持
つ場合と異なるのは。
EXX要求色フェッチリクエストの処理で、アクセスア
ドレスに対応するブロックiのEXiをストア処理でな
いにもかかわらず、′1”にしなければならない点であ
る。
ドレスに対応するブロックiのEXiをストア処理でな
いにもかかわらず、′1”にしなければならない点であ
る。
以上、説明したように1本実施例による要部をまとめる
と1次のようになる。
と1次のようになる。
(1)ストアリクエストに対するWS間の一致制御は、
ライン単位で実施するが、BSのデータはブロック単位
に管理するため、該ブロックが更新されない限り、他系
のBSのデータは無効とされず残っている二とになる。
ライン単位で実施するが、BSのデータはブロック単位
に管理するため、該ブロックが更新されない限り、他系
のBSのデータは無効とされず残っている二とになる。
従って、他系BSのNIBRが高くなるのを防止できる
。
。
(2)EXX要求色フェッチリクエストに対するWS間
の一致制御においても、相手WSのエントリを無効化し
ても、他系BSはストアリクエストが発行されるまで無
効化されないので他系BSのNIBRを小さくできる。
の一致制御においても、相手WSのエントリを無効化し
ても、他系BSはストアリクエストが発行されるまで無
効化されないので他系BSのNIBRを小さくできる。
また1以上に説明した実施例においては、多階層の記憶
構造は3階層の場合を説明しているが、4階層以上の記
憶構造を有するシステムにも1本発明は適用することが
できる。また、C:PU、 CH,WSの構成数も、容
易に拡張可能である。
構造は3階層の場合を説明しているが、4階層以上の記
憶構造を有するシステムにも1本発明は適用することが
できる。また、C:PU、 CH,WSの構成数も、容
易に拡張可能である。
以上、本発明を実施例にもとづき具体的に説明したが1
本発明は、前記実施例に限定されるものではなく、その
要旨を逸脱しない範囲において種々変更可能であること
は言うまでもない。
本発明は、前記実施例に限定されるものではなく、その
要旨を逸脱しない範囲において種々変更可能であること
は言うまでもない。
以上、説明したように、本発明によれば、主記憶(MS
)と、複数の中間バッファ(WS)及びバッファ記憶(
B S)から構成されるマルチプロセッサシステムにお
いて、ストア動作に伴なうWSおよびBS上のデータ無
効化に関し、WSはライン単位にWAA登録時に相手W
Sの無効化を実行するが、その時、他系にSCに接続さ
れているBSのブロック無効化は該当ストアアドレスを
含むブロックのみ実行し、未だデータが変更されていな
い該ライン内の残りブロックについてはデータを残すこ
とができる。このため、ライン内の全ブロックに対して
ストアリクエストが発行されない限り、BSのヒツト率
が低下するのを防止できる。
)と、複数の中間バッファ(WS)及びバッファ記憶(
B S)から構成されるマルチプロセッサシステムにお
いて、ストア動作に伴なうWSおよびBS上のデータ無
効化に関し、WSはライン単位にWAA登録時に相手W
Sの無効化を実行するが、その時、他系にSCに接続さ
れているBSのブロック無効化は該当ストアアドレスを
含むブロックのみ実行し、未だデータが変更されていな
い該ライン内の残りブロックについてはデータを残すこ
とができる。このため、ライン内の全ブロックに対して
ストアリクエストが発行されない限り、BSのヒツト率
が低下するのを防止できる。
第1図は、本発明の一実施例にかかるマルチプロセッサ
システムの要部の全体の構成を示すブロック図、 第2図は1本発明の一実施例にかかる中間バッファ記憶
のディレクトリのエントリの構成の一例を説明する図、 第3図は、リクエストアドレスとWAAのエントリの比
較を行うヒツト判定回路の一例を示すブロック図、 第4図は、記憶制御装置における中間バッファ記憶のヒ
ツト制御および排他制御を行う制御回路の要部を示す回
路図、 第5図は、リクエストアドレスとWAAのエントリの比
較を行うヒツト判定回路の他の例を示す回路図、 第6図は、多階層記憶構造をとるマルチプロセッサシス
テムの一例を示すブロック図、第7図は、マルチプロセ
ッサシステムにおけるバッファ記憶のブロック無効化処
理の一例を説明する図、 第8図は、バッファ記憶のディレクトリのエントリの構
成の一例を示す図。 第9図は、マルチプロセッサシステムにおけるバッファ
記憶のブロック無効化処理の他の一例を説明する図。 第10図は、中間バッファ記憶のディレクトリのエント
リの構成の一例を示す図、 第11図は、第6図のマルチプロセッサシステムを更に
拡張したマルチプロセッサシステムの一例を示すブロッ
ク図、 第12図は、記憶制御装置を2台設けたマルチプロセッ
サシステムの構成を示すブロック図。 第13図は、中間バッファ記憶のディレクトリのエント
リの構成の他の一例を示す図。 第14図は、第12図のマルチプロセッサシステムにお
けるバッファ記憶のブロック無効化処理の一例を説明す
る図である。 図中、61・・・主記憶、62.62a 、 62b・
・・記憶制御装置、 63a 、 63b 、 63c
、 63d −演算処理装置。 66、66a 、 66b−−−中間バッファ記憶、6
4a 、 64b。 64c 、 64d ・=バッファ記憶、 67a 、
67b 、 6?c 。 67d−・・ディレクトリ(B AA) 、?7a 、
??b 、 ?7c 、 77d−−−ディレクトリ
(FAA) 、76a、76b・・・ディレクトリ(W
AA)。 算2回
システムの要部の全体の構成を示すブロック図、 第2図は1本発明の一実施例にかかる中間バッファ記憶
のディレクトリのエントリの構成の一例を説明する図、 第3図は、リクエストアドレスとWAAのエントリの比
較を行うヒツト判定回路の一例を示すブロック図、 第4図は、記憶制御装置における中間バッファ記憶のヒ
ツト制御および排他制御を行う制御回路の要部を示す回
路図、 第5図は、リクエストアドレスとWAAのエントリの比
較を行うヒツト判定回路の他の例を示す回路図、 第6図は、多階層記憶構造をとるマルチプロセッサシス
テムの一例を示すブロック図、第7図は、マルチプロセ
ッサシステムにおけるバッファ記憶のブロック無効化処
理の一例を説明する図、 第8図は、バッファ記憶のディレクトリのエントリの構
成の一例を示す図。 第9図は、マルチプロセッサシステムにおけるバッファ
記憶のブロック無効化処理の他の一例を説明する図。 第10図は、中間バッファ記憶のディレクトリのエント
リの構成の一例を示す図、 第11図は、第6図のマルチプロセッサシステムを更に
拡張したマルチプロセッサシステムの一例を示すブロッ
ク図、 第12図は、記憶制御装置を2台設けたマルチプロセッ
サシステムの構成を示すブロック図。 第13図は、中間バッファ記憶のディレクトリのエント
リの構成の他の一例を示す図。 第14図は、第12図のマルチプロセッサシステムにお
けるバッファ記憶のブロック無効化処理の一例を説明す
る図である。 図中、61・・・主記憶、62.62a 、 62b・
・・記憶制御装置、 63a 、 63b 、 63c
、 63d −演算処理装置。 66、66a 、 66b−−−中間バッファ記憶、6
4a 、 64b。 64c 、 64d ・=バッファ記憶、 67a 、
67b 、 6?c 。 67d−・・ディレクトリ(B AA) 、?7a 、
??b 、 ?7c 、 77d−−−ディレクトリ
(FAA) 、76a、76b・・・ディレクトリ(W
AA)。 算2回
Claims (1)
- 【特許請求の範囲】 1、主記憶と、主記憶上のデータの写しを格納する複数
の中間バッファ記憶と、中間バッファ記憶に対応して少
なくとも1つ存在し、各々の中間バッファ記憶上のデー
タの写しを格納する複数のバッファ記憶と、各々の中間
バッファ記憶およびバッファ記憶に対応して当該中間バ
ッファ記憶およびバッファ記憶に格納されているデータ
の主記憶アドレスを登録するディレクトリとを有し、中
間バッファ記憶のデータ登録単位がバッファ記憶のデー
タ登録単位の複数倍とする多階層の記憶構造をとり、バ
ッファ記憶を各プロセッサ単位で専用する構成とされた
マルチプロセッサシステムにおいて、自プロセッサ対応
の当該中間バッファ記憶に格納されている主記憶アドレ
スのデータが他プロセッサ対応の中間バッファ記憶およ
びそれに接続されているバッファ記憶に格納されている
か否かを示す複数個の特定ビットを当該中間バッファ記
憶のディレクトリ対応に設け、中間バッファ記憶のデー
タを書き換える際、当該中間バッファ記憶のディレクト
リを検索し、該当ディレクトリのエントリの複数個の特
定ビットの値によって、他プロセッサ対応の中間バッフ
ァ記憶およびそれに接続されているバッファ記憶のデー
タを無効化する処理の要否を判定する制御手段を有する
ことを特徴とするマルチプロセッサシステム。 2、中間バッファ記憶のディレクトリ対応に設ける複数
個の特定ビットは、他プロセッサ対応の中間バッファ記
憶に対して1個と、自プロセッサ対応のバッファ記憶の
ブロック単位またはその複数倍毎にn個との合計n+1
個のビットであることを特徴とする請求項1に記載のマ
ルチプロセッサシステム。 3、中間バッファ記憶のディレクトリ対応に設ける複数
個の特定ビットは、自プロセッサ対応のバッファ記憶の
ブロック単位またはその複数倍毎にn個のビットを設け
、他プロセッサ対応の中間バッファ記憶に対する特定ビ
ットの信号を、バッファ記憶に対して設ける前記n個の
特定ビットの論理和信号とすることを特徴とする請求項
1に記載のマルチプロセッサシステム。 4、中間バッファ記憶のデータを書き換える際、他プロ
セッサ対応の中間バッファ記憶のデータを無効化するた
めの処理を、中間バッファ記憶に対する1個の特定ビッ
トまたはバッファ記憶に対するn個の特定ビットの論理
和の値によっ実行することを特徴とする請求項1に記載
のマルチプロセッサシステム。 5、中間バッファ記憶のデータを書き換える際、他プロ
セッサ対応の中間バッファ記憶に接続されているバッフ
ァ記憶のデータを無効化するための処理を、該当中間バ
ッファ記憶のディレクトリのバッファ記憶のブロック対
応の特定ビットの値によって実行することを特徴とする
請求項1に記載のマルチプロセッサシステム。 6、主記憶と、主記憶上のデータの写しを格納する複数
の中間バッファ記憶と、中間バッファ記憶に対応して少
なくとも1つ存在し、各々の中間バッファ記憶上のデー
タの写しを格納する複数のバッファ記憶と、各々の中間
バッファ記憶およびバッファ記憶に対応して当該中間バ
ッファ記憶およびバッファ記憶に格納されているデータ
の主記憶アドレスを登録するディレクトリとを有し、中
間バッファ記憶のデータ登録単位がバッファ記憶のデー
タ登録単位の複数倍とする多階層の記憶構造をとり、バ
ッファ記憶を各プロセッサ単位で専用する構成とされた
マルチプロセッサシステムにおいて、自プロセッサ対応
の当該中間バッファ記憶に格納されている主記憶アドレ
スのデータが他プロセッサ対応の中間バッファ記憶およ
びそれに接続されているバッファ記憶に格納されている
か否かを示す特定ビットを、中間バッファ記憶間のデー
タ一致を管理する第1特定ビットと、中間バッファ記憶
と他系中間バッファ記憶に接続されているバッファ記憶
間のデータ一致を管理する第2特定ビットとに分離して
、当該中間バッファ記憶のディレクトリのエントリの一
部、あるいは該エントリと対応づけられるメモリアレイ
情報として設け、該特定ビットの値による中間バッファ
記憶のデータを書き換える際の中間バッファ記憶間の一
致制御と、中間バッファ記憶と他系バッファ記憶間の一
致制御とを独立して行う制御手段を有することを特徴と
するマルチプロセッサシステム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63241386A JPH0290259A (ja) | 1988-09-27 | 1988-09-27 | マルチプロセッサシステム |
GB8921803A GB2223868B (en) | 1988-09-27 | 1989-09-27 | A multiprocessor system. |
DE19893932227 DE3932227A1 (de) | 1988-09-27 | 1989-09-27 | Multiprozessorsystem |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63241386A JPH0290259A (ja) | 1988-09-27 | 1988-09-27 | マルチプロセッサシステム |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH0290259A true JPH0290259A (ja) | 1990-03-29 |
Family
ID=17073514
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP63241386A Pending JPH0290259A (ja) | 1988-09-27 | 1988-09-27 | マルチプロセッサシステム |
Country Status (3)
Country | Link |
---|---|
JP (1) | JPH0290259A (ja) |
DE (1) | DE3932227A1 (ja) |
GB (1) | GB2223868B (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0468804A2 (en) * | 1990-07-27 | 1992-01-29 | Fujitsu Limited | Hierarchical memory control system |
JPH04227552A (ja) * | 1990-04-05 | 1992-08-17 | Internatl Business Mach Corp <Ibm> | ストアスルーキャッシュ管理システム |
JP2005044342A (ja) * | 2003-07-22 | 2005-02-17 | Samsung Electronics Co Ltd | マルチプロセッサシステム及びマルチプロセッサシステムのキャッシュ一貫性維持方法 |
WO2007094046A1 (ja) * | 2006-02-14 | 2007-08-23 | Fujitsu Limited | コヒーレンシ維持装置およびコヒーレンシ維持方法 |
DE102015103887A1 (de) | 2014-03-24 | 2015-09-24 | Fanuc Corp. | Laserbearbeitungsvorrichtung mit einer Funktion zur Überwachung der Ausbreitung eines Laserstrahls |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2256512B (en) * | 1991-06-04 | 1995-03-15 | Intel Corp | Second level cache controller unit and system |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS60138653A (ja) * | 1983-12-27 | 1985-07-23 | Hitachi Ltd | 階層記憶制御方式 |
US4797814A (en) * | 1986-05-01 | 1989-01-10 | International Business Machines Corporation | Variable address mode cache |
-
1988
- 1988-09-27 JP JP63241386A patent/JPH0290259A/ja active Pending
-
1989
- 1989-09-27 DE DE19893932227 patent/DE3932227A1/de not_active Ceased
- 1989-09-27 GB GB8921803A patent/GB2223868B/en not_active Expired - Fee Related
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04227552A (ja) * | 1990-04-05 | 1992-08-17 | Internatl Business Mach Corp <Ibm> | ストアスルーキャッシュ管理システム |
EP0468804A2 (en) * | 1990-07-27 | 1992-01-29 | Fujitsu Limited | Hierarchical memory control system |
EP0468804A3 (en) * | 1990-07-27 | 1995-02-15 | Fujitsu Ltd | Hierarchical memory control system |
JP2005044342A (ja) * | 2003-07-22 | 2005-02-17 | Samsung Electronics Co Ltd | マルチプロセッサシステム及びマルチプロセッサシステムのキャッシュ一貫性維持方法 |
WO2007094046A1 (ja) * | 2006-02-14 | 2007-08-23 | Fujitsu Limited | コヒーレンシ維持装置およびコヒーレンシ維持方法 |
US7958318B2 (en) | 2006-02-14 | 2011-06-07 | Fujitsu Limited | Coherency maintaining device and coherency maintaining method |
DE102015103887A1 (de) | 2014-03-24 | 2015-09-24 | Fanuc Corp. | Laserbearbeitungsvorrichtung mit einer Funktion zur Überwachung der Ausbreitung eines Laserstrahls |
Also Published As
Publication number | Publication date |
---|---|
GB2223868B (en) | 1993-01-20 |
GB8921803D0 (en) | 1989-11-08 |
GB2223868A (en) | 1990-04-18 |
DE3932227A1 (de) | 1990-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5752260A (en) | High-speed, multiple-port, interleaved cache with arbitration of multiple access addresses | |
US5091851A (en) | Fast multiple-word accesses from a multi-way set-associative cache memory | |
US5559986A (en) | Interleaved cache for multiple accesses per clock cycle in a microprocessor | |
US5640534A (en) | Method and system for concurrent access in a data cache array utilizing multiple match line selection paths | |
US6192458B1 (en) | High performance cache directory addressing scheme for variable cache sizes utilizing associativity | |
US5696937A (en) | Cache controller utilizing a state machine for controlling invalidations in a network with dual system busses | |
JPH03142644A (ja) | キャッシュメモリ制御方法とこのキャッシュメモリ制御方法を用いたプロセッサおよび情報処理装置 | |
JPH0576060B2 (ja) | ||
US5668972A (en) | Method and system for efficient miss sequence cache line allocation utilizing an allocation control cell state to enable a selected match line | |
JPS63195752A (ja) | キヤツシユメモリ− | |
JPS629942B2 (ja) | ||
EP0303661A1 (en) | CENTRAL UNIT FOR DIGITAL DATA PROCESSING SYSTEM, WITH WRITING BUFFER MANAGEMENT TECHNOLOGY. | |
KR960006499B1 (ko) | 멀티포트 캐시메모리(multi-port cache memory)를 가지는 멀티프로세서 시스템(multi-processor system) | |
US5761714A (en) | Single-cycle multi-accessible interleaved cache | |
US5530835A (en) | Computer memory data merging technique for computers with write-back caches | |
US4658356A (en) | Control system for updating a change bit | |
US5890221A (en) | Method and system for offset miss sequence handling in a data cache array having multiple content addressable field per cache line utilizing an MRU bit | |
US5420997A (en) | Memory having concurrent read and writing from different addresses | |
JPH0290259A (ja) | マルチプロセッサシステム | |
JPS5832427B2 (ja) | 多重情報処理システム | |
JPS644214B2 (ja) | ||
JPS6329297B2 (ja) | ||
JPH0387948A (ja) | マルチプロセッサシステム | |
EP0304587B1 (en) | Interruptible cache loading | |
JP2963257B2 (ja) | 処理装置 |