JPH0764861A - Multiprocessor system - Google Patents

Multiprocessor system

Info

Publication number
JPH0764861A
JPH0764861A JP5239143A JP23914393A JPH0764861A JP H0764861 A JPH0764861 A JP H0764861A JP 5239143 A JP5239143 A JP 5239143A JP 23914393 A JP23914393 A JP 23914393A JP H0764861 A JPH0764861 A JP H0764861A
Authority
JP
Japan
Prior art keywords
data
processor
processors
cache
response
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
JP5239143A
Other languages
Japanese (ja)
Inventor
Yoshiyuki Ejima
良之 江島
Eriko Matsushita
恵理子 松下
Yoshiyuki Yajima
良之 谷島
Nariaki Obara
成朗 小原
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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry Co 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 Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP5239143A priority Critical patent/JPH0764861A/en
Publication of JPH0764861A publication Critical patent/JPH0764861A/en
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

PURPOSE:To improve the maintainability of data and the processing capability. CONSTITUTION:When data as the access object exists in cache memories 70 and 71 of processors 0 and 1 themselves, each of processors 0 and 1 accesses this data and updates data in the case of write processing. Consequently, a system bus is not used at this time. When each of processors 0 and 1 issues a processing request to an input/output device 12, it is held till the completion of processing of the input/output device 12. During this period, a response- waiting signal is outputted to the other processor 1 or 0. Meanwhile, processors 0 and 1 monitor the response-waiting signals outputted from processors 1 and 0 of each others, and, when one processor 1 or 0 is set to the response-waiting state, the other refers to update bits of each entry on its own cache memory 70 or 71 and copies back updated entries to a shared memory 11.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、主記憶の写しを保持す
るキャッシュメモリを備えたマルチプロセッサシステム
に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a multiprocessor system having a cache memory for holding a copy of main memory.

【0002】[0002]

【従来の技術】従来、複数のプロセッサによりデータ処
理を並列して同時に行なえるようにしたマルチプロセッ
サシステムがある。図2は、従来のマルチプロセッサシ
ステムのブロック図である。図2に示すように、一般
に、マルチプロセッサシステムでは、複数のプロセッサ
20、21、22、2nが備えられており、これらが1
つの主記憶装置を共有している。この場合の主記憶装置
を共有メモリという。一方、各プロセッサには、キャッ
シュメモリ30、31が備えられており、これらのキャ
ッシュメモリ30、31には共有メモリ40に記憶され
たデータの一部の写しが保持される。そして、各プロセ
ッサ20、21は、それぞれ各自のキャッシュメモリ3
0、31に保持されたデータをリードしてデータ処理を
行ない、その結果、データの更新が必要なときはこれら
のキャッシュメモリ30、31に保持されたデータを更
新する。このようなキャッシュメモリ30、31上での
データの更新が行なわれると、更新後にキャッシュメモ
リ30、31に保持されているデータD0′、D1′は
これに対応する共有メモリ40に記憶されたデータD
0、D1と内容が異なることになる。
2. Description of the Related Art Conventionally, there is a multiprocessor system in which a plurality of processors can simultaneously perform data processing in parallel. FIG. 2 is a block diagram of a conventional multiprocessor system. As shown in FIG. 2, generally, a multiprocessor system is provided with a plurality of processors 20, 21, 22, 2n.
They share one main memory. The main storage device in this case is called a shared memory. On the other hand, each processor is provided with cache memories 30 and 31, and these cache memories 30 and 31 hold a copy of part of the data stored in the shared memory 40. Then, each processor 20, 21 has its own cache memory 3
The data held in 0 and 31 are read and data processing is performed. As a result, when the data needs to be updated, the data held in these cache memories 30 and 31 is updated. When the data is updated in the cache memories 30 and 31 as described above, the data D0 ′ and D1 ′ held in the cache memories 30 and 31 after the update are the data stored in the corresponding shared memory 40. D
The contents are different from 0 and D1.

【0003】また、例えば、プロセッサ20のデータ処
理の途中でキャッシュメモリ30上に存在しないデータ
D2に対してアクセス要求が生じたときは、共有メモリ
40にあるアクセス対象のデータD2とキャッシュメモ
リ30にあるいずれかのデータとを入れ替える。この場
合、キャッシュメモリ30上の入れ替え対象となったデ
ータがこれに対応する共有メモリ40上のデータと内容
が同じであれば、全く同じデータが共有メモリ40上に
あるのであるから、単に共有メモリ40にあるアクセス
対象のデータD2をキャッシュメモリ30上の入れ替え
対象のデータ位置に転送し、キャッシュメモリ30上の
その位置にあったデータは捨ててしまってよい。ところ
が、キャッシュメモリ30上の入れ替え対象となったデ
ータがキャッシュメモリ30上で更新されており、これ
に対応する共有メモリ40上のデータと内容が異なって
いるときは、キャッシュメモリ30上の入れ替え対象の
データ位置にあるデータを共有メモリ40上の対応する
アドレスに書き戻す。例えば、データD0′をデータD
2と入れ替えるときは、データD0′を共有メモリ40
上のデータD0のアドレスに転送する。
Further, for example, when an access request is made to the data D2 that does not exist in the cache memory 30 during the data processing of the processor 20, the data D2 to be accessed in the shared memory 40 and the cache memory 30 are accessed. Replace with any one of the data. In this case, if the data to be replaced on the cache memory 30 has the same content as the corresponding data on the shared memory 40, the exact same data exists on the shared memory 40. The access target data D2 in 40 may be transferred to the replacement target data position in the cache memory 30, and the data in that position in the cache memory 30 may be discarded. However, when the data to be replaced in the cache memory 30 is updated in the cache memory 30 and the content is different from the corresponding data in the shared memory 40, the replacement target in the cache memory 30 is changed. The data at the data position is written back to the corresponding address on the shared memory 40. For example, data D0 '
2 is replaced with data D0 'in the shared memory 40
Transfer to the address of the upper data D0.

【0004】このように、共有メモリ40のデータで、
更新したデータをキャッシュメモリ30、31から共有
メモリ40に書き戻すことをコピーバックという。デー
タの入れ替え時にコピーバックが必要か否かを判定する
ため、キャッシュ制御部50、51はデータの転送単位
ごとに更新ビットを備えており、プロセッサ20、21
がキャッシュメモリ30、31上でデータの更新を行な
ったときはこの更新ビットをオンにするようにしてい
る。そして、キャッシュ制御部50、51がデータの入
れ替え時に更新フラグを参照し、オンであれば、コピー
バックを行なう。また、コピーバックは、データの入れ
替え時に限らず、それ以前に行なうようにすることもで
きる。例えば、バスに空きができたときに、キャッシュ
制御部50、51がキャッシュメモリ30、31の更新
ビットをすべて参照し、オンとなっているデータをすべ
て共有メモリ40にコピーバックする。このような動作
をキャッシュフラッシュという。
In this way, the data in the shared memory 40
Writing back the updated data from the cache memories 30 and 31 to the shared memory 40 is called copy back. In order to determine whether or not copy back is necessary when exchanging data, the cache control units 50 and 51 have update bits for each data transfer unit.
When the data is updated in the cache memories 30 and 31, this update bit is turned on. Then, the cache control units 50 and 51 refer to the update flag when exchanging data, and if it is ON, copy back is performed. Further, the copy back can be performed not only when the data is replaced, but also before that. For example, when the bus becomes available, the cache control units 50 and 51 refer to all the update bits of the cache memories 30 and 31, and copy back all the turned-on data to the shared memory 40. Such an operation is called cache flush.

【0005】[0005]

【発明が解決しようとする課題】しかしながら、上述し
た従来の技術には、次のような問題があった。即ち、上
述したシステムでは、コピーバックがなかなか行なわれ
ず、キャッシュメモリ30、31と共有メモリ40とで
対応するデータの内容が異なり、図3(a)に示すよう
にキャッシュメモリ30、31にのみ最新のデータが存
在する状態が長く続く場合がある。この場合、プロセッ
サ20、21の故障等の障害が発生すると、キャッシュ
メモリ30、31に存在する最新のデータが失われてし
まう。従って、データの保全性が低下するという問題が
あった。特に、前述したデータ入れ替え時にコピーバッ
クする方式では、データの入れ替えが必要な状態になら
ない限り、コピーバックが行なわれないので、この問題
は大きい。また、前述したキャッシュフラッシュにより
コピーバックを行なう方式でも、キャッシュフラッシュ
がなかなか生じない場合はこの問題がある。
However, the above-mentioned conventional technique has the following problems. That is, in the above-described system, the copy back is not easily performed, the contents of the corresponding data in the cache memories 30 and 31 and the shared memory 40 are different, and only the cache memories 30 and 31 are updated as shown in FIG. There is a case where the data of exists for a long time. In this case, if a failure such as a failure of the processor 20 or 21 occurs, the latest data existing in the cache memories 30 and 31 will be lost. Therefore, there is a problem that the integrity of data is deteriorated. In particular, in the above-described method of copying back at the time of exchanging data, this problem is great because the copy back is not performed unless the data needs to be exchanged. Further, even in the method of performing copy back by the cache flush described above, there is this problem when the cache flush hardly occurs.

【0006】また、図2に示すマルチプロセッサシステ
ムにおいて、例えば、あるプロセッサ20がコピーバッ
クを行なっている間は、そのプロセッサ20がバス及び
共有メモリ40を占有しているので、他のプロセッサ2
1等は共有メモリ40をアクセスすることができず、処
理が待たされるという問題があった。特に、前述したよ
うに、バスに空きができた都度キャッシュフラッシュを
生じさせるようにする方式では、コピーバックによるバ
ス及び共有メモリ40の使用頻度が高くなり、本来のデ
ータ処理に支障をきたすという問題がある。また、デー
タ入れ替え時にコピーバックを行なう方式でも、この時
に他のプロセッサ21等が共有メモリ40をアクセスし
ようとする場合、それが待たされるという問題がある。
本発明は、以上の点に着目してなされたもので、プロセ
ッサの障害によるキャッシュメモリ上の最新のデータの
消失のおそれを低減するとともに、コピーバックによる
データ処理待ち時間の発生を少なくするようにしたマル
チプロセッサシステムを提供することを目的とするもの
である。
In the multiprocessor system shown in FIG. 2, for example, while a certain processor 20 is performing copy back, that processor 20 occupies the bus and the shared memory 40, so that the other processors 2
The first and the like cannot access the shared memory 40, and there is a problem that the processing is delayed. In particular, as described above, in the method in which the cache flush is generated each time the bus becomes available, the frequency of use of the bus and the shared memory 40 by the copy back becomes high, which causes a problem in the original data processing. There is. Further, even in the method of performing copy back at the time of data exchange, if another processor 21 or the like tries to access the shared memory 40 at this time, there is a problem that it is kept waiting.
The present invention has been made paying attention to the above points, and reduces the risk of loss of the latest data on the cache memory due to a processor failure and reduces the occurrence of data processing wait time due to copyback. It is an object of the present invention to provide such a multiprocessor system.

【0007】[0007]

【課題を解決するための手段】本発明のマルチプロセッ
サシステムは、バスを介して複数のプロセッサが共有メ
モリをアクセスするものにおいて、前記各プロセッサ
は、入出力装置からの応答待ちを行なっているとき、応
答待機中信号を他のプロセッサに対して出力し、いずれ
かのプロセッサが自己のキャッシュメモリの内容を前記
共有メモリにコピーバックする際に、前記他のプロセッ
サの出力する応答待機中信号を監視して、他の全てのプ
ロセッサが応答待機中のとき、前記コピーバックを実行
することを特徴とするものである。
In the multiprocessor system of the present invention, when a plurality of processors access a shared memory via a bus, each processor waits for a response from an input / output device. , Outputs a response waiting signal to another processor, and monitors the response waiting signal output from the other processor when one processor copies back the contents of its own cache memory to the shared memory. Then, the copy back is executed when all the other processors are waiting for a response.

【0008】[0008]

【作用】本発明のマルチプロセッサシステムにおいて
は、各プロセッサが次のようにデータ処理を行なう。各
プロセッサは、自分のキャッシュメモリにアクセス対象
であるデータが存在するときは、自分のキャッシュメモ
リ上のデータのみをアクセスし、ライト処理のときはそ
のデータを更新する。従って、この場合、システムバス
は使用されない。また、各プロセッサは、入出力装置に
対して処理要求を出すと、入出力装置の処理が完了する
まで待機中となる。この間、他のすべてのプロセッサに
対し、応答待機中信号を出力する。一方、各プロセッサ
は、他のプロセッサが出力する応答待機中信号を監視
し、他のすべてのプロセッサが応答待機中となったと
き、キャッシュメモリ上の各エントリの更新ビットを参
照し、更新されたエントリを共有メモリにコピーバック
する。
In the multiprocessor system of the present invention, each processor processes data as follows. Each processor accesses only the data in its own cache memory when there is data to be accessed in its own cache memory, and updates that data in the write processing. Therefore, in this case, the system bus is not used. When each processor issues a processing request to the input / output device, it waits until the processing of the input / output device is completed. During this period, a response waiting signal is output to all the other processors. On the other hand, each processor monitors the response waiting signal output from the other processor, and when all the other processors are in the response waiting state, they are updated by referring to the update bit of each entry in the cache memory. Copy back the entry to shared memory.

【0009】[0009]

【実施例】以下、本発明の実施例を図面を参照して詳細
に説明する。図1は、本発明のマルチプロセッサシステ
ムの一実施例のブロック図である。システムバス10に
は、複数のプロセッサ0、1、2、n、共有メモリ1
1、及び入出力装置12が接続されている。
Embodiments of the present invention will now be described in detail with reference to the drawings. FIG. 1 is a block diagram of an embodiment of the multiprocessor system of the present invention. The system bus 10 includes a plurality of processors 0, 1, 2, n and a shared memory 1.
1, and the input / output device 12 are connected.

【0010】各プロセッサ0、1、2、nは、図2に示
す従来のものと同様にコピーバック方式のキャッシュ制
御部60、61を備えている。各キャッシュ制御部6
0、61には、それらのプロセッサが入出力装置12か
らの応答待ちで動作していないことを示す応答待機中信
号を出力する信号出力部80、81を備えている。入出
力装置12は、ディスク装置、ディスプレイ装置、プリ
ンタ装置等であり、各プロセッサの要求に応じて動作す
る。このような入出力装置12は、各プロセッサに比較
して非常に動作が遅いため、各プロセッサは、入出力装
置12への処理要求後その処理が完了するまで待機する
ことになる。この待機中においてはプロセッサの処理は
休止しており、このような状態にあることを他のプロセ
ッサに知らせるため、応答待機中信号を出力する。
Each of the processors 0, 1, 2, n is provided with copy-back type cache control units 60, 61 as in the prior art shown in FIG. Each cache control unit 6
The signal output units 0 and 61 are provided with signal output units 80 and 81 for outputting a response waiting signal indicating that the processors are not operating in response to the response from the input / output device 12. The input / output device 12 is a disk device, a display device, a printer device, or the like, and operates according to a request from each processor. Since such an input / output device 12 operates much slower than each processor, each processor waits after the processing request to the input / output device 12 until its processing is completed. During this waiting, the processing of the processor is paused, and a response waiting signal is output to notify other processors of such a state.

【0011】また、各キャッシュ制御部60、61に
は、他のプロセッサの応答待機中信号を監視するための
信号入力部90、91が設けられている。即ち、この信
号入力部90、91には、他のすべてのプロセッサから
の応答待機中信号が入力される。例えば、プロセッサ0
の信号入力部90には、プロセッサ1の信号出力部81
の信号が入力される他、プロセッサ2からプロセッサn
までの図示しない信号出力部の信号が入力される。同様
に、プロセッサ1の信号入力部91には、プロセッサ0
の信号出力部80の信号が入力される他、プロセッサ2
からプロセッサnまでの図示しない信号出力部の信号が
入力される。また、他のプロセッサ2からプロセッサn
までの図示しない信号入力部に入力される信号について
も同様である。キャッシュ制御部60、61は、他のプ
ロセッサの応答待機中信号の出力状態に応じてコピーバ
ックのタイミングを決定する。
Further, each cache control unit 60, 61 is provided with a signal input unit 90, 91 for monitoring a response waiting signal of another processor. That is, response waiting signals from all other processors are input to the signal input units 90 and 91. For example, processor 0
The signal output unit 81 of the processor 1 is connected to the signal input unit 90 of
Signal from the processor 2 to the processor n
Signals from the signal output unit (not shown) are input. Similarly, the signal input unit 91 of the processor 1 includes the processor 0
The signal of the signal output unit 80 of
Signals from a signal output unit (not shown) from the processor to the processor n are input. In addition, other processors 2 to n
The same applies to signals input to the signal input unit (not shown). The cache control units 60 and 61 determine the timing of copyback according to the output state of the response waiting signal of the other processor.

【0012】図4に、本発明に係るキャッシュ制御部の
詳細な構成を示す。他のすべてのプロセッサから出力さ
れる信号は、AND回路41に入力される。AND回路
41の出力は、データ制御部42に入力される。データ
制御部42はAND回路41を介してすべての応答待機
中信号が“1”であることを検出すると、起動信号を出
力し、カウンタ43を起動させる。カウンタ43は、切
替器44及びLRU制御回路45を介してキャッシュメ
モリ46もしくは47の各エントリをアクセスする。キ
ャッシュメモリ46、47は、2ウェイセットアソシア
ティブ方式となっており、各ウェイは共有メモリ11の
各所定の領域のエントリのみをそれぞれ格納するように
なっている。また、図示しないキャッシュ管理テーブル
等にエントリごとに更新ビットが設けられており、デー
タ制御部42はこれらの更新ビットを参照して当該更新
ビットがオンになっているエントリをコピーバックデー
タとしてキャッシュメモリ46、47から取り出す。そ
して、データ制御部42はこのデータをシステムバス1
0を介して共有メモリ11にコピーバックする。
FIG. 4 shows a detailed configuration of the cache control unit according to the present invention. The signals output from all the other processors are input to the AND circuit 41. The output of the AND circuit 41 is input to the data control unit 42. When the data control unit 42 detects via the AND circuit 41 that all the response waiting signals are “1”, it outputs the activation signal and activates the counter 43. The counter 43 accesses each entry of the cache memory 46 or 47 via the switch 44 and the LRU control circuit 45. The cache memories 46 and 47 are of a two-way set associative type, and each way stores only the entry of each predetermined area of the shared memory 11. Further, an update bit is provided for each entry in a cache management table or the like (not shown), and the data control unit 42 refers to these update bits and uses the entries whose update bits are turned on as copyback data in the cache memory. Take out from 46 and 47. Then, the data control unit 42 sends this data to the system bus 1
Copy back to shared memory 11 via 0.

【0013】次に、上述したマルチプロセッサシステム
の動作を説明する。以下においては、簡単のために、プ
ロセッサ0とプロセッサ1のみが動作する場合について
説明する。プロセッサ0においてキャッシュメモリ70
上に存在しないデータに対するアクセス要求が発生した
場合、キャッシュメモリ70上の最も古く参照されたエ
ントリと共有メモリ11上のアクセス対象のデータを含
むエントリとを入れ替える必要がある。この際、その最
も古く参照されたエントリの更新ビットがオンになって
いるときは、そのエントリをコピーバックする必要があ
る。
Next, the operation of the above multiprocessor system will be described. In the following, for simplification, a case where only the processor 0 and the processor 1 operate will be described. Cache memory 70 in processor 0
When an access request is made for data that does not exist above, it is necessary to replace the oldest referenced entry in the cache memory 70 with the entry containing the data to be accessed in the shared memory 11. At this time, if the update bit of the oldest referenced entry is on, it is necessary to copy back that entry.

【0014】一方、プロセッサ1が処理中であるとき
は、当該プロセッサ1の信号出力部81が出力する応答
待機中信号が“0”になっている。従って、プロセッサ
0の信号入力部90は信号“0”を入力し、コピーバッ
クを抑える。その後、プロセッサ1が入出力装置12に
対して処理要求を出し、当該入出力装置12に対する処
理完了待ちとなると、応答待機中信号を“1”にする。
この信号は、プロセッサ0の信号入力部90に入力され
る。これにより、キャッシュ制御部60は、最も古く参
照されたエントリをキャッシュメモリ70から共有メモ
リ11の対応するアドレスに転送する。そして、キャッ
シュメモリ70上のそのエントリがあった位置にアクセ
ス対象であるデータを含むエントリを共有メモリ11か
ら転送する。
On the other hand, when the processor 1 is under processing, the response waiting signal output from the signal output unit 81 of the processor 1 is "0". Therefore, the signal input unit 90 of the processor 0 inputs the signal "0" and suppresses copyback. After that, when the processor 1 issues a processing request to the input / output device 12 and waits for completion of processing for the input / output device 12, the response waiting signal is set to "1".
This signal is input to the signal input unit 90 of the processor 0. As a result, the cache control unit 60 transfers the oldest referenced entry from the cache memory 70 to the corresponding address in the shared memory 11. Then, the entry including the data to be accessed is transferred from the shared memory 11 to the position where the entry is on the cache memory 70.

【0015】また、プロセッサ0のアクセス対象である
データを含むエントリがキャッシュメモリ70上に存在
する場合でも、プロセッサ1から応答待機中信号“1”
が出力されたときは、プロセッサ0はキャッシュメモリ
70上の更新データをコピーバックする。即ち、プロセ
ッサ0は応答待機中信号“1”を入力したとき、キャッ
シュメモリ70上の更新ビットがオンのエントリをコピ
ーバックする。そして、各エントリをコピーバックする
毎に、そのエントリの更新ビットをオフにする。これに
より、図3に示すようなプロセッサの障害によりキャッ
シュメモリ70上のデータがすべて消失した場合にも、
図3(b)に示すようにコピーバックの後であればプロ
セッサ0はアクセス対象であるデータを含むエントリを
共有メモリ11からキャッシュメモリ70に転送するだ
けでよい。従って、データの回復のための特別な措置を
採る必要はない。
Further, even when an entry containing data to be accessed by the processor 0 exists in the cache memory 70, the response waiting signal "1" is output from the processor 1.
Is output, the processor 0 copies back the updated data in the cache memory 70. That is, when the processor 0 inputs the response waiting signal “1”, the processor 0 copies back the entry whose update bit is on in the cache memory 70. Then, each time an entry is copied back, the update bit for that entry is turned off. As a result, even if all the data in the cache memory 70 is lost due to a processor failure as shown in FIG.
After the copy back as shown in FIG. 3B, the processor 0 only has to transfer the entry including the data to be accessed from the shared memory 11 to the cache memory 70. Therefore, no special measures need to be taken for data recovery.

【0016】この結果、プロセッサ0、1の動作は、図
5に示すようになる。即ち、プロセッサ0、1は、いず
れも他のプロセッサが入出力装置12の動作完了に対す
る待機中の間においてのみ、コピーバックを行なう。従
って、コピーバックにより他のプロセッサのデータ処理
を妨げることがない。更に、3つ以上のプロセッサが動
作する場合にも、各プロセッサは、他のすべてのプロセ
ッサから応答待機中信号“1”が出力されている場合
に、キャッシュメモリ上の更新データを含むエントリを
すべてコピーバックする。従って、コピーバックが比較
的早期に行なわれ、また、それがデータ処理を妨げるこ
とがない。
As a result, the operations of the processors 0 and 1 are as shown in FIG. That is, each of the processors 0 and 1 performs copy back only while the other processor is waiting for the completion of the operation of the input / output device 12. Therefore, copy back does not interfere with the data processing of other processors. Further, even when three or more processors operate, each of the processors has all the entries including the update data in the cache memory when the response waiting signal “1” is output from all the other processors. Copy back. Therefore, copy back is performed relatively early and it does not interfere with data processing.

【0017】尚、上述した実施例においては、キャッシ
ュ制御部が2ウェイセットアソシアティブ方式の場合に
ついて説明したが、本発明はこれに限定されるものでは
なく、一般のNウェイセットアソシアティブ方式、フル
アソシアティブ方式、ダイレクトマッピング方式の場合
にも同様であることは勿論である。また、エントリの入
れ替えアルゴリズムとしてLRUに限らず、FIFO
(First In First Out)等の他のアルゴリズムを使用し
てもよく、また、ランダムでもよい。
In the above-described embodiment, the case where the cache control unit is the 2-way set associative system has been described. However, the present invention is not limited to this, and the general N-way set associative system and the full associative system are used. It goes without saying that the same applies to the method and the direct mapping method. Also, the entry replacement algorithm is not limited to LRU, but FIFO
Other algorithms such as (First In First Out) may be used or may be random.

【0018】[0018]

【発明の効果】以上説明したように、本発明のマルチプ
ロセッサシステムによれば、各プロセッサが出力する応
答待機中信号を出力し、各プロセッサが他のプロセッサ
の応答待機中信号を検出してコピーバックするようにた
ので、コピーバックが早期に行なわれ、最新のデータが
キャッシュメモリにしか存在しない状態の期間を短縮す
ることができ、プロセッサの障害によるデータの消失の
確率を低くすることができ、データの保全性の低下を防
止することができる。また、各プロセッサは他のプロセ
ッサが処理を休止している間にコピーバックを行なうの
で、コピーバックにより他のプロセッサのデータ処理が
待たされることを防止することができ、コピーバックに
よるデータ処理能力の低下を防止することができる。
As described above, according to the multiprocessor system of the present invention, the response waiting signal output by each processor is output, and each processor detects the response waiting signal of another processor and copies it. Since it is backed up, copyback is performed early, the period of time when the latest data exists only in the cache memory can be shortened, and the probability of data loss due to processor failure can be reduced. , It is possible to prevent deterioration of data integrity. Further, since each processor performs copy back while the other processor suspends processing, it is possible to prevent waiting for data processing of the other processor due to copy back, and to improve the data processing capability of the copy back. The decrease can be prevented.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明のマルチプロセッサシステムの一実施例
のブロック図である。
FIG. 1 is a block diagram of an embodiment of a multiprocessor system of the present invention.

【図2】従来のマルチプロセッサシステムのブロック図
である。
FIG. 2 is a block diagram of a conventional multiprocessor system.

【図3】従来及び本発明のコピーバックタイミングの説
明図である。
FIG. 3 is an explanatory diagram of copyback timing according to the related art and the present invention.

【図4】本発明に係るキャッシュ制御部の詳細な構成を
示すブロック図である。
FIG. 4 is a block diagram showing a detailed configuration of a cache control unit according to the present invention.

【図5】本発明のシステムの動作を説明するタイムチャ
ートである。
FIG. 5 is a time chart explaining the operation of the system of the present invention.

【符号の説明】[Explanation of symbols]

0、1、2、n プロセッサ 10 システムバス 11 共有メモリ 12 入出力装置 60、61 キャッシュ制御部 70、71 キャッシュメモリ 80、81 信号出力部 90、91 信号入力部 0, 1, 2, n processor 10 system bus 11 shared memory 12 input / output device 60, 61 cache control unit 70, 71 cache memory 80, 81 signal output unit 90, 91 signal input unit

フロントページの続き (72)発明者 小原 成朗 東京都港区虎ノ門1丁目7番12号 沖電気 工業株式会社内Front page continuation (72) Inventor Shigeo Ohara 1-7-12 Toranomon, Minato-ku, Tokyo Oki Electric Industry Co., Ltd.

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】 バスを介して複数のプロセッサが共有メ
モリをアクセスするものにおいて、 前記各プロセッサは、入出力装置からの応答待ちを行な
っているとき、応答待機中信号を他のプロセッサに対し
て出力し、 いずれかのプロセッサが自己のキャッシュメモリの内容
を前記共有メモリにコピーバックする際に、前記他のプ
ロセッサの出力する応答待機中信号を監視して、 他の全てのプロセッサが応答待機中のとき、前記コピー
バックを実行することを特徴とするマルチプロセッサシ
ステム。
1. A processor in which a plurality of processors access a shared memory via a bus, wherein each processor sends a response waiting signal to another processor while waiting for a response from an input / output device. When one of the processors copies the contents of its own cache memory back to the shared memory, it monitors the response waiting signal output by the other processor, and all other processors are waiting for the response. A multiprocessor system, wherein the copyback is executed at the time of.
JP5239143A 1993-08-31 1993-08-31 Multiprocessor system Pending JPH0764861A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5239143A JPH0764861A (en) 1993-08-31 1993-08-31 Multiprocessor system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5239143A JPH0764861A (en) 1993-08-31 1993-08-31 Multiprocessor system

Publications (1)

Publication Number Publication Date
JPH0764861A true JPH0764861A (en) 1995-03-10

Family

ID=17040403

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5239143A Pending JPH0764861A (en) 1993-08-31 1993-08-31 Multiprocessor system

Country Status (1)

Country Link
JP (1) JPH0764861A (en)

Similar Documents

Publication Publication Date Title
US12001345B2 (en) Victim cache that supports draining write-miss entries
US5155824A (en) System for transferring selected data words between main memory and cache with multiple data words and multiple dirty bits for each address
JP3067112B2 (en) How to reload lazy push into copy back data cache
KR100190350B1 (en) High-performance frame buffer and cache memory system and method
JP2004533079A (en) Method and apparatus for facilitating speculative storage in a multiprocessor system
CA2289402C (en) Method and system for efficiently handling operations in a data processing system
JPH09114665A (en) Method for transfer of command and data between storage device and auxiliary processor and information-processing system
JPH1031625A (en) Write back buffer for improved copy back performance in multiprocessor system
EP1703405B1 (en) Information processing device and data control method in information processing device
JP3236287B2 (en) Multiprocessor system
KR20060102565A (en) System and method for canceling write back operation during simultaneous snoop push or snoop kill operation in write back caches
KR100322223B1 (en) Memory controller with oueue and snoop tables
JPH05324468A (en) Hierarchical cache memory
JPH10105461A (en) Improved device and method for snooping processor and look-aside cache
JPH0764861A (en) Multiprocessor system
US5907853A (en) Method and apparatus for maintaining duplicate cache tags with selectable width
JP3162459B2 (en) Data processing device
JPH0744459A (en) Cache control method and cache controller
JPH08297642A (en) Shared memory type multiprocessor system
JPH0793215A (en) Semiconductor memory
JPH0535697A (en) Multi processor system
KR20000015263A (en) Cache consistency maintaining method
KR940011050B1 (en) Cache memory unit and controlling method thereof
JPH04245350A (en) Cache equalizing system
JPH05282207A (en) Cache memory invalidating control system