JPH10247182A - Multiprocessor system - Google Patents

Multiprocessor system

Info

Publication number
JPH10247182A
JPH10247182A JP4952497A JP4952497A JPH10247182A JP H10247182 A JPH10247182 A JP H10247182A JP 4952497 A JP4952497 A JP 4952497A JP 4952497 A JP4952497 A JP 4952497A JP H10247182 A JPH10247182 A JP H10247182A
Authority
JP
Japan
Prior art keywords
data
shared buffer
processor
processors
input
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
JP4952497A
Other languages
Japanese (ja)
Inventor
Yoshifumi 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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP4952497A priority Critical patent/JPH10247182A/en
Publication of JPH10247182A publication Critical patent/JPH10247182A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To provide a multiprocessor system which can improve the efficiency by reducing the load on a system bus and reducing the limit of the number of processors which can be mounted. SOLUTION: Processor groups 1 and 2 consists of processors 11, 12, 21 and 22, input/output processors 13 and 23 and common buffer parts 14 and 24 and the processors 11, 12, 21 and 22 and the input/output processors 13 and 23 are connected to a system bus 100 through the common buffer parts 14 and 24. The common buffer parts 14 and 24 can be accessed by the processors 11, 12, 21 and 22 and the input/output processors 13 and 23 freely in common and are a high-speed buffer mechanism for holding data stored in a storage device 3 and data for executing reading out of and writing in an external device. A request to access the data held by the common buffer parts 13 and 24 is controlled by a store-in system.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明はマルチプロセッサシ
ステムに関し、特に高並列プロセッサにおけるシステム
バスの負荷の軽減方法に関する。
[0001] 1. Field of the Invention [0002] The present invention relates to a multiprocessor system, and more particularly to a method for reducing a system bus load in a highly parallel processor.

【0002】[0002]

【従来の技術】従来、マルチプロセッサシステムにおい
ては、第9図に示すように、個々のプロセッサ41,4
2,51,52及び入出力処理装置6はシステムバス1
00を介して記憶装置3にアクセスするよう構成されて
いる。
2. Description of the Related Art Conventionally, in a multiprocessor system, as shown in FIG.
2, 51, 52 and the input / output processor 6 are connected to the system bus 1
00 to access the storage device 3.

【0003】プロセッサ41,42,51,52各々は
各プロセッサグループ4,5に夫々配設され、各プロセ
ッサグループ4,5毎に配設された共有バッファ43,
53を介してシステムバス100に接続されている。
Each of the processors 41, 42, 51, 52 is disposed in each of the processor groups 4, 5, and the shared buffers 43, 4 disposed in each of the processor groups 4, 5, respectively.
It is connected to the system bus 100 via 53.

【0004】上記のような共有バッファ43,53を有
するシステムにおいても、共有バッファ43,53を配
置した目的が記憶装置3のアクセス性能の向上を図るも
のであり、記憶装置3のキャッシュとして位置付けられ
ているので、システムバス100と記憶装置3との間に
共有バッファ43,53を介在させるような構成がとら
れている。
In the system having the shared buffers 43 and 53 as described above, the purpose of arranging the shared buffers 43 and 53 is to improve the access performance of the storage device 3 and is positioned as a cache of the storage device 3. Therefore, the configuration is such that the shared buffers 43 and 53 are interposed between the system bus 100 and the storage device 3.

【0005】[0005]

【発明が解決しようとする課題】上述した従来のマルチ
プロセッサシステムでは、各プロセッサから記憶装置へ
のメモリアクセスを行う毎にシステムバスが必ず使用さ
れるので、プロセッサ数が増えるにしたがってメモリア
クセスによるシステムバスの負荷が急激に増大してしま
う。
In the conventional multiprocessor system described above, a system bus is always used every time a memory access is performed from each processor to a storage device. The bus load suddenly increases.

【0006】また、各プロセッサからのデータフェッチ
処理においては記憶装置上に求めるデータがない場合、
入出力処理装置を介してその配下に実装されている磁気
ディスク装置等の二次記憶装置にアクセスすることにな
る。その場合、入出力処理装置によって二次記憶装置か
ら読出されたデータはシステムバスを介して一旦記憶装
置に保持され、メモリアクセス処理によって記憶装置か
ら要求元のプロセッサにシステムバスを介して転送され
る。
In the data fetch processing from each processor, if there is no data to be sought on the storage device,
The secondary storage device such as a magnetic disk device mounted thereunder is accessed via the input / output processing device. In that case, data read from the secondary storage device by the input / output processing device is temporarily held in the storage device via the system bus, and is transferred from the storage device to the requesting processor via the system bus by the memory access processing. .

【0007】したがって、システムバスへの負担が非常
に高いものとなるので、システムバスの負荷に伴う性能
の限界から効率的に実装可能なプロセッサ数が最大10
台程度に限られてしまうこととなる。
Therefore, the load on the system bus becomes very high, and the number of processors that can be efficiently mounted is up to 10 due to the performance limitation due to the load on the system bus.
It will be limited to a platform.

【0008】また、共有バッファは記憶装置でのデータ
の読出し及び書込み処理がプロセッサの処理能力に対し
て遅いため、それを補完する目的で使用されているが、
システムバスの負荷を軽減することまでは考慮されてい
ないので、共有バッファをシステム内に配設しても、該
共有バッファによってシステムバスの負荷を軽減するこ
とはできない。
The shared buffer is used for complementing the data reading and writing processing in the storage device because the processing is slower than the processing capability of the processor.
Since reduction of the load on the system bus is not considered, even if a shared buffer is provided in the system, the load on the system bus cannot be reduced by the shared buffer.

【0009】そこで、本発明の目的は上記の問題点を解
消し、システムバスの負荷を軽減することができ、実装
可能なプロセッサ数の制限を少なくして効率の向上を図
ることができるマルチプロセッサシステムを提供するこ
とにある。
Accordingly, an object of the present invention is to solve the above-mentioned problems, to reduce the load on the system bus, and to improve the efficiency by reducing the limit on the number of processors that can be mounted. It is to provide a system.

【0010】[0010]

【課題を解決するための手段】本発明によるマルチプロ
セッサシステムは、複数のプロセッサと、前記複数のプ
ロセッサ各々とシステムバスとの間に配設されかつ前記
複数のプロセッサ各々に入出力されるデータを保持する
共有バッファとを含むマルチプロセッサシステムであっ
て、前記共有バッファを介して前記システムバスに接続
されかつ外部装置と前記複数のプロセッサ各々との間の
入出力処理を制御する入出力処理装置を備えている。
According to the present invention, there is provided a multiprocessor system comprising: a plurality of processors; data provided between each of the plurality of processors and a system bus; and input / output to / from each of the plurality of processors. A shared buffer that holds an input / output processing device that is connected to the system bus via the shared buffer and controls input / output processing between an external device and each of the plurality of processors. Have.

【0011】本発明による他のマルチプロセッサシステ
ムは、上記の構成のほかに、前記複数のプロセッサ各々
のうち予め割当てられたプロセッサからなる複数のプロ
セッサグループを具備し、前記共有バッファを前記複数
のプロセッサグループ各々に配設している。
In another multiprocessor system according to the present invention, in addition to the above-described configuration, the multiprocessor system includes a plurality of processor groups each including a pre-assigned processor among the plurality of processors, and the shared buffer stores the plurality of processors. They are located in each group.

【0012】すなわち、本発明のマルチプロセッサシス
テムでは、ストアイン方式の共有バッファをプロセッサ
とシステムバスとの間に位置させている。これによっ
て、システムバスを介してアクセスする記憶装置へのア
クセス頻度を軽減することが可能となるので、マルチプ
ロセッサ構成をとった場合でもシステムバスに過大な負
荷をかけることなく、実装可能なプロセッサ数を増加さ
せることが可能となる。
That is, in the multiprocessor system of the present invention, the store-in type shared buffer is located between the processor and the system bus. This makes it possible to reduce the frequency of access to storage devices accessed via the system bus, so that even if a multi-processor configuration is used, the number of processors that can be mounted can be reduced without imposing an excessive load on the system bus. Can be increased.

【0013】また、各プロセッサグループに配置された
入出力処理装置を、共有バッファを介してシステムバス
に接続するよう構成することによって、入出力処理装置
はデータを一旦共有バッファに書込んだ時点で処理を終
了することができるので、全てのアクセス要求をシステ
ムバスを介して記憶装置まで送出する必要がなくなるの
で、システムバスへの負荷を軽減することが可能とな
る。
Further, by configuring the input / output processing devices arranged in each processor group to be connected to a system bus via a shared buffer, the input / output processing device can be configured to store data once the data is written to the shared buffer. Since the processing can be completed, it is not necessary to send all access requests to the storage device via the system bus, so that the load on the system bus can be reduced.

【0014】[0014]

【発明の実施の形態】次に、本発明の一実施例について
図面を参照して説明する。図1は本発明の一実施例の構
成を示すブロック図である。図において、プロセッサグ
ループ1,2は夫々プロセッサ11,12,21,22
と、入出力処理装置13,23と、共有バッファ部1
4,24とから構成され、プロセッサ11,12,2
1,22及び入出力処理装置13,23は共有バッファ
部14,24を介してシステムバス100に接続されて
いる。尚、システムバス100にはプロセッサグループ
1,2のほかに記憶装置3が接続されている。
Next, an embodiment of the present invention will be described with reference to the drawings. FIG. 1 is a block diagram showing the configuration of one embodiment of the present invention. In the figure, processor groups 1 and 2 are processors 11, 12, 21, and 22, respectively.
, I / O processing devices 13 and 23, and shared buffer unit 1
4, 24, and processors 11, 12, 2
1 and 22 and the input / output processing devices 13 and 23 are connected to the system bus 100 via the shared buffer units 14 and 24. The storage device 3 is connected to the system bus 100 in addition to the processor groups 1 and 2.

【0015】プロセッサ11,12,21,22は処理
の単位であるタスクを実行する処理機構である。入出力
処理装置13,23は磁気ディスク装置等の外部装置
(図示せず)へのアクセス処理[以下、I/O(入出
力)処理とする]を制御するための装置である。
The processors 11, 12, 21, and 22 are processing mechanisms for executing tasks which are units of processing. The input / output processing devices 13 and 23 are devices for controlling an access process to an external device (not shown) such as a magnetic disk device (hereinafter referred to as an I / O (input / output) process).

【0016】記憶装置3はプロセッサ11,12,2
1,22によって使用されるデータ等を保持する記憶機
構である。システムバス100は共有バッファ部14,
24と記憶装置3とを接続するバスである。
The storage device 3 includes processors 11, 12, 2
This is a storage mechanism for holding data used by the storage devices 1 and 22. The system bus 100 is connected to the shared buffer unit 14,
24 is a bus connecting the storage device 3 and the storage device 3.

【0017】共有バッファ部14,24はプロセッサ1
1,12,21,22各々と入出力処理装置13,23
とが共通にアクセス自在となっており、記憶装置3に記
憶されたデータ又は外部装置に対する読出し/書込みの
データを保持するための高速バッファ機構である。尚、
共有バッファ部14,24に保持されたデータへのアク
セス要求はストアイン方式によって制御される。また、
ストアイン方式は特開昭63−244150号公報に記
載されたライトバック方式と同様の制御方法であり、そ
の制御方法については当該公報に詳述されている。
The shared buffer units 14 and 24 include the processor 1
1, 12, 21, 22 and the input / output processing units 13, 23
Are a common high-speed buffer mechanism for holding data stored in the storage device 3 or data read / written to / from an external device. still,
An access request to the data held in the shared buffer units 14 and 24 is controlled by a store-in method. Also,
The store-in method is a control method similar to the write-back method described in JP-A-63-244150, and the control method is described in detail in the publication.

【0018】図1においては、プロセッサグループ1,
2内のプロセッサ数を同数としているが、これは同数で
ある必要はなく、例えばプロセッサ1台のみのプロセッ
サグループ、あるいはプロセッサ3台からなるプロセッ
サグループ、もしくはプロセッサ5台からなるプロセッ
サグループであってもかまわない。いずれのプロセッサ
グループにおいてもプロセッサとそのプロセッサによっ
て共有可能な共有バッファ部とで構成されていればよ
い。
In FIG. 1, processor groups 1 and 2
Although the number of processors in 2 is the same, the number does not need to be the same. For example, a processor group of only one processor, a processor group of three processors, or a processor group of five processors I don't care. In any of the processor groups, it is sufficient that the processor group includes a processor and a shared buffer unit that can be shared by the processors.

【0019】また、プロセッサグループ1,2内に配置
された入出力処理装置13,23は各プロセッサグルー
プに配置される台数が一台である必要はなく、入出力処
理装置の数がプロセッサグループ毎に同数である必要も
ない。さらに、入出力処理装置は共有バッファ部を介し
てシステムバスに接続されることが必要であるが、共有
バッファ部にプロセッサが接続されていない場合でも当
該共有バッファ部に接続自在となっている。
The number of the input / output processing devices 13 and 23 arranged in the processor groups 1 and 2 does not need to be one in each processor group. Need not be the same. Further, the input / output processing device needs to be connected to the system bus via the shared buffer unit, and can be connected to the shared buffer unit even when the processor is not connected to the shared buffer unit.

【0020】図2は図1の共有バッファ部14の構成を
示すブロック図である。図において、共有バッファ部1
4は共有バッファ14aと、入出力制御部14bとから
構成されている。
FIG. 2 is a block diagram showing the configuration of the shared buffer unit 14 of FIG. In the figure, shared buffer unit 1
Reference numeral 4 includes a shared buffer 14a and an input / output control unit 14b.

【0021】入出力制御部14bはプロセッサ11,1
2と入出力処理装置13とシステムバス100とに夫々
接続され、プロセッサ11,12と入出力処理装置13
とシステムバス100とから入力される読出し/書込み
のコマンドに応じてアドレス一致検出や、他の共有バッ
ファ部24との間の一致制御[例えば、専用パス(図示
せず)やシステムバス100を用いた一部制御等]を行
う。
The input / output control unit 14b includes processors 11, 1
2, the input / output processor 13 and the system bus 100, respectively.
Address match detection according to a read / write command input from the system bus 100 and a match control between other shared buffer units 24 [for example, using a dedicated path (not shown) or the system bus 100]. Control, etc.).

【0022】この場合、入出力制御部14bは共有バッ
ファ14aに保持されたデータへのアクセス要求をスト
アイン方式によって制御する。尚、図示していないが、
共有バッファ部24も共有バッファ部14と同様の構成
となっており、共有バッファ部14と同様の制御を行
う。
In this case, the input / output control unit 14b controls an access request to the data held in the shared buffer 14a by a store-in method. Although not shown,
The shared buffer unit 24 has the same configuration as the shared buffer unit 14, and performs the same control as the shared buffer unit 14.

【0023】図3は図1のプロセッサ11から記憶装置
3に対してデータ要求があった場合のメモリアクセス処
理によるデータの流れを示す図であり、図4は図1のプ
ロセッサ11から記憶装置3に対してデータの書込みが
発生した場合のデータの流れ及びそのデータを他のプロ
セッサグループ2のプロセッサ21,22が必要とした
場合のデータの流れを示す図である。
FIG. 3 is a diagram showing the flow of data in the memory access process when a data request is made from the processor 11 of FIG. 1 to the storage device 3, and FIG. 4 is a diagram showing the flow of data from the processor 11 of FIG. FIG. 7 is a diagram showing a data flow when data is written to a processor group, and a data flow when the processors 21 and 22 of another processor group 2 need the data.

【0024】図5はプロセッサ11から入出力処理装置
13へのI/O要求があった場合の入出力処理装置13
からのデータの流れを示す図である。これら図1〜図5
を用いて本発明の一実施例の動作について説明する。
FIG. 5 shows an input / output processor 13 when an I / O request is made from the processor 11 to the input / output processor 13.
FIG. 4 is a diagram showing a flow of data from a. These FIGS. 1 to 5
The operation of the embodiment of the present invention will be described with reference to FIG.

【0025】プロセッサ11から命令フェッチ又はオペ
ランドフェッチ等の要求によってメモリアクセスが発生
した場合、まず共有バッファ部14に該当データの存在
の有無をチェックし、該当データが無い場合にシステム
バス100を介して記憶装置3へのアクセスが図3のパ
スのように生じる。記憶装置3から読出されたデータ
は図3のパスを逆の順序で戻り、当該データか共有バ
ッファ部14に保持されると共に、要求元のプロセッサ
11に転送され、メモリアクセス処理が完了する。
When a memory access occurs due to a request such as an instruction fetch or an operand fetch from the processor 11, first, the presence or absence of the corresponding data is checked in the shared buffer unit 14. Access to the storage device 3 occurs as in the path in FIG. The data read from the storage device 3 returns in the order shown in FIG. 3 in the reverse order, and is stored in the shared buffer unit 14 and transferred to the requesting processor 11, thereby completing the memory access process.

【0026】このメモリアクセス処理で記憶装置3から
読出されたデータがプロセッサ11,12から要求され
ると、メモリアクセスが発行された場合にはそのデータ
が既に共有バッファ部14に保持されているため、共有
バッファ部14からデータを読出すことで、メモリアク
セス処理が完了する(図3パス)。この場合、システ
ムバス100を介しての記憶装置3へのメモリアクセス
は生じない。
When the data read from the storage device 3 is requested by the processors 11 and 12 in the memory access processing, when the memory access is issued, the data is already held in the shared buffer unit 14. By reading data from the shared buffer unit 14, the memory access processing is completed (pass in FIG. 3). In this case, no memory access to the storage device 3 via the system bus 100 occurs.

【0027】次に、プロセッサ11からデータの書込み
が生じた場合には、図4のパスに示すように、共有バ
ッファ部14に書込み対象のデータブロックが存在すれ
ば、その書込み対象エリアにプロセッサ11からのデー
タを書込み、データの書込み処理を終了する。
Next, when data is written from the processor 11, if a data block to be written exists in the shared buffer section 14 as shown in the path of FIG. Is written, and the data writing process ends.

【0028】しかしながら、共有バッファ部14に書込
み対象のデータブロックが存在しなければ、当該データ
ブロックを記憶装置3から一旦読出して共有バッファ部
14に保持した上で、プロセッサ1からの書込みデータ
をその書込み対象エリアに書込み、更新処理を行う。こ
れら一連の処理は共有バッファ部14,24が上述した
ようにストアイン方式のキャッシュ制御を採用した場合
に通常とられる処理手順から十分理解されるものであ
る。
However, if the data block to be written does not exist in the shared buffer unit 14, the data block is once read from the storage device 3 and held in the shared buffer unit 14, and then the write data from the processor 1 is stored in the shared buffer unit 14. Write and update processing to the write target area. These series of processes can be fully understood from the processing procedure usually taken when the shared buffer units 14 and 24 adopt the store-in cache control as described above.

【0029】また、上記のデータ書込み処理によって共
有バッファ部14へのデータ更新が発生した場合、共有
バッファ部24にも書込み対象のデータブロックが保持
されていれば、データの一致制御が行われる。この一致
制御としては共有バッファ部14,24間において書込
み監視用に配設された専用パス等やシステムバス100
によって書込みデータブロックのアドレスを監視するこ
と等によって対応するものとする。
When data is updated in the shared buffer unit 14 by the above-described data writing process, if the shared buffer unit 24 also holds a data block to be written, data matching control is performed. As the coincidence control, a dedicated path or the like provided for writing monitoring between the shared buffer units 14 and 24 or the system bus 100 is used.
And the like by monitoring the address of the write data block.

【0030】さらに、プロセッサ11によるデータの書
込みで更新されたデータブロックのデータをプロセッサ
21が要求した場合、図4のパスに示すように、共有
バッファ部14上にある更新後のデータブロックを記憶
装置3及び共有バッファ部24に転送して書込む。プロ
セッサ21は共有バッファ部24に書込まれたデータブ
ロックをアクセスして当該データを読出し、データ要求
の処理を終了する。
Further, when the processor 21 requests data of a data block updated by data writing by the processor 11, the updated data block stored in the shared buffer unit 14 is stored as shown in the path of FIG. The data is transferred to the device 3 and the shared buffer unit 24 for writing. The processor 21 accesses the data block written in the shared buffer unit 24 to read the data, and ends the data request processing.

【0031】次に、入出力処理装置13がプロセッサ1
1からのデータ要求によってI/O処理を行った場合、
入出力処理装置13からのデータは、図5のパスに示
すように、共有バッファ部14に一旦保持される。その
後、上述した図3のパスと同様にして、メモリアクセ
スの形式で共有バッファ部14にあるデータを読出し、
そのデータ要求の処理を終了する。
Next, the input / output processing device 13 is
When I / O processing is performed by a data request from
The data from the input / output processing device 13 is temporarily stored in the shared buffer unit 14, as shown by the path in FIG. Thereafter, data in the shared buffer unit 14 is read out in the form of memory access in the same manner as in the above-described path of FIG.
The processing of the data request ends.

【0032】したがって、従来、システムバス100を
介して行われていた入出力処理装置に対するI/O処理
においても、システムバス100を使用することなく、
そのI/O処理を完了することができる。
Therefore, in the I / O processing for the input / output processing device conventionally performed via the system bus 100, the I / O processing is performed without using the system bus 100.
The I / O processing can be completed.

【0033】また、入出力処理装置13がプロセッサ1
1からのデータ要求によって行ったI/O処理で読出さ
れ、共有バッファ部14に保持されたデータをプロセッ
サ21が要求した場合、図5のパスに示すように、共
有バッファ部14に保持されている該当データがシステ
ムバス100を介して記憶装置3及び共有バッファ部2
4に書込まれる。
The input / output processing device 13 is a processor 1
When the processor 21 requests the data read by the I / O processing performed in response to the data request from the processor 1 and held in the shared buffer unit 14, the data is held in the shared buffer unit 14 as shown by the path in FIG. Is stored in the storage device 3 and the shared buffer unit 2 via the system bus 100.
Written in 4.

【0034】プロセッサ21は共有バッファ部24への
データの書込みが完了すると、図2のパスと同様にし
て、メモリアクセスの形式で共有バッファ部24から該
当データを読出し、その処理を完了させる。
When the writing of data to the shared buffer unit 24 is completed, the processor 21 reads the data from the shared buffer unit 24 in the form of memory access in the same manner as in the path of FIG. 2, and completes the processing.

【0035】図6及び図7は本発明の一実施例によるメ
モリアクセス時の動作を示すフローチャートであり、図
8は本発明の一実施例によるI/Oリクエスト時の動作
を示すフローチャートである。これら図1〜図8を用い
て、本発明の一実施例によるメモリアクセス時の動作及
びI/Oリクエスト時の動作について説明する。
FIGS. 6 and 7 are flowcharts showing the operation at the time of memory access according to an embodiment of the present invention, and FIG. 8 is a flowchart showing the operation at the time of an I / O request according to an embodiment of the present invention. The operation at the time of memory access and the operation at the time of an I / O request according to an embodiment of the present invention will be described with reference to FIGS.

【0036】プロセッサ11から命令フェッチ又はオペ
ランドフェッチ等の要求によってメモリアクセスが発生
した場合、まず共有バッファ部14に該当データの存在
の有無をチェックし(図6ステップS1,S2)、該当
データがあれば、共有バッファ部14から要求元のプロ
セッサ11に該当データが送出される(図6ステップS
3)。この場合、共有バッファ部14の入出力制御部1
4bはプロセッサ11から記憶装置3へのメモリアクセ
ス要求を抑止する。
When a memory access occurs due to a request such as an instruction fetch or an operand fetch from the processor 11, first, the presence or absence of the corresponding data is checked in the shared buffer unit 14 (steps S1 and S2 in FIG. 6). For example, the corresponding data is sent from the shared buffer unit 14 to the requesting processor 11 (step S in FIG. 6).
3). In this case, the input / output control unit 1 of the shared buffer unit 14
4b suppresses a memory access request from the processor 11 to the storage device 3.

【0037】これに対し、該当データがなければ、プロ
セッサ11から記憶装置3へのアクセス要求が共有バッ
ファ部14の入出力制御部14b及びシステムバス10
0を通って記憶装置3に送られる(図3のパス参
照)。
On the other hand, if there is no corresponding data, an access request from the processor 11 to the storage device 3 is sent to the input / output control unit 14b of the shared buffer unit 14 and the system bus 10
0 to the storage device 3 (see the path in FIG. 3).

【0038】この場合、記憶装置3に最新のデータがあ
れば(図6ステップS4)、記憶装置3から読出された
データが図3のパスを逆の順序で戻り、当該データが
共有バッファ14aに保持されると共に、要求元のプロ
セッサ11に転送され(図6ステップS5)、メモリア
クセス処理が完了する。
In this case, if the latest data is stored in the storage device 3 (step S4 in FIG. 6), the data read from the storage device 3 returns in the reverse order of the path in FIG. 3, and the data is stored in the shared buffer 14a. It is held and transferred to the requesting processor 11 (step S5 in FIG. 6), and the memory access processing is completed.

【0039】一方、記憶装置3に最新のデータがなけれ
ば(図6ステップS4)、最新のデータを保持する共有
バッファ(例えば、他グループの共有バッファ部24)
から当該データを読出して記憶装置3及び自グループの
共有バッファ部14に転送すると共にプロセッサ11に
転送され、メモリアクセス処理が完了する(図6ステッ
プS6)。
On the other hand, if there is no latest data in the storage device 3 (step S4 in FIG. 6), a shared buffer holding the latest data (for example, the shared buffer unit 24 of another group).
The data is read from the storage device 3 and transferred to the storage device 3 and the shared buffer unit 14 of the own group, and is also transferred to the processor 11 to complete the memory access processing (step S6 in FIG. 6).

【0040】プロセッサ11からデータの書込みが生じ
た場合には、共有バッファ部14に書込み対象のデータ
ブロックが存在しなければ(図6ステップS1,図7ス
テップS7)、当該データブロックを記憶装置3から一
旦読出して共有バッファ部14に保持した上で(図7ス
テップS8)、その書込み対象エリアにプロセッサ11
からのデータを書込む(図7ステップS9)。
When data is written from the processor 11 and there is no data block to be written in the shared buffer unit 14 (step S1 in FIG. 6, step S7 in FIG. 7), the data block is stored in the storage device 3. Once and read out from the shared buffer unit 14 (step S8 in FIG. 7), the processor 11
Is written (step S9 in FIG. 7).

【0041】また、共有バッファ部14に書込み対象の
データブロックが存在すれば(図7ステップS7)、そ
の書込み対象エリアにプロセッサ11からのデータを書
込む(図7ステップS9)。
If a data block to be written exists in the shared buffer section 14 (step S7 in FIG. 7), the data from the processor 11 is written into the write target area (step S9 in FIG. 7).

【0042】このデータの書込み処理が終了した後に、
共有バッファ部14の入出力制御部14bはその書込み
データアドレスを他のグループの共有バッファ部24及
び記憶装置3に転送する(図7ステップS10)。その
後に、入出力制御部14bは共有バッファ部24及び記
憶装置3に当該データブロックを無効化(例えば、Vビ
ットをクリア)する(図7ステップS11)。
After the data writing process is completed,
The input / output control unit 14b of the shared buffer unit 14 transfers the write data address to the shared buffer unit 24 and the storage device 3 of another group (Step S10 in FIG. 7). Thereafter, the input / output control unit 14b invalidates the data block in the shared buffer unit 24 and the storage device 3 (for example, clears the V bit) (Step S11 in FIG. 7).

【0043】プロセッサ11はI/Oリクエストが生じ
た場合、I/Oリクエスト対象の入出力処理装置にデー
タ要求を送出する(図8ステップS21)。
When an I / O request is generated, the processor 11 sends a data request to the input / output processing device targeted for the I / O request (step S21 in FIG. 8).

【0044】入出力処理装置がプロセッサ11からのデ
ータ要求によってI/O処理を行った場合、入出力処理
装置からのデータはそのグループの共有バッファ部1
4,24に一旦保持される(図8ステップS22)。共
有バッファ部14は要求元のプロセッサ11が自グルー
プに属しているので(図8ステップS23)、共有バッ
ファ14aに保持したデータを読出してプロセッサ11
に転送する(図8ステップS24)。
When the input / output processing device performs an I / O process in response to a data request from the processor 11, data from the input / output processing device is transferred to the shared buffer unit 1 of the group.
4 and 24 (step S22 in FIG. 8). Since the request source processor 11 belongs to its own group (step S23 in FIG. 8), the shared buffer unit 14 reads out the data held in the shared buffer 14a, and
(Step S24 in FIG. 8).

【0045】一方、他グループの共有バッファ部24は
要求元のプロセッサ11が自グループに属していないの
で(図8ステップS23)、保持したデータを読出して
記憶装置3及び他グループの共有バッファ部14に転送
すると共に、当該データを要求元のプロセッサ11に転
送することで、データ要求の処理が完了する(図8ステ
ップS25)。
On the other hand, since the requesting processor 11 does not belong to its own group (step S23 in FIG. 8), the shared buffer unit 24 of the other group reads out the held data and reads the storage device 3 and the shared buffer unit 14 of the other group. And the data is transferred to the requesting processor 11, thereby completing the data request process (step S25 in FIG. 8).

【0046】このように、プロセッサ11,12,2
1,22及び入出力処理装置13,23を共有バッファ
部14,24を介してシステムバス100に接続すると
いう構成をとることによって、特にI/O処理において
要求元のプロセッサ11,12,21,22にデータが
転送されるまでに、従来はシステムバス100を2回使
用しているのに対し、その頻度を同一の共有バッファ部
14,24に接続されているプロセッサ11,12,2
1,22からのI/O処理要求であれば、ゼロに抑える
ことが可能である。
As described above, the processors 11, 12, 2
1 and 22, and the input / output processing units 13 and 23 are connected to the system bus 100 via the shared buffer units 14 and 24, so that the processors 11, 12, 21 and 21, Conventionally, the system bus 100 is used twice before the data is transferred to the shared buffer unit 22, but the frequency is changed to the processors 11, 12, 2 connected to the same shared buffer units 14, 24.
If it is an I / O processing request from the I / O processing unit 1 or 22, it can be suppressed to zero.

【0047】また、複数のプロセッサ11,12,2
1,22によってバッファが共有される共有バッファ方
式を使用しているので、プロセッサ個々にセカンドキャ
ッシュを備えたシステムに比べてもメモリアクセスを軽
減させることが可能となり、システムバス100への負
荷の軽減を図ることができる。
Further, a plurality of processors 11, 12, 2
Since the shared buffer system in which the buffers are shared by the processors 1 and 22 is used, the memory access can be reduced as compared with a system having a second cache for each processor, and the load on the system bus 100 is reduced. Can be achieved.

【0048】したがって、システムバス100の使用率
を削減することができるので、システムバス100の負
荷が軽減され、システムバス100の性能を同等の他の
システムに比べて向上させることができ、より多くのプ
ロセッサを接続することができるので、大規模構成の高
並列システムを実現することができる。
Therefore, since the usage rate of the system bus 100 can be reduced, the load on the system bus 100 can be reduced, and the performance of the system bus 100 can be improved as compared with other equivalent systems. Can be connected, so that a highly parallel system with a large-scale configuration can be realized.

【0049】[0049]

【発明の効果】以上説明したように本発明によれば、複
数のプロセッサと、複数のプロセッサ各々とシステムバ
スとの間に配設されかつ複数のプロセッサ各々に入出力
されるデータを保持する共有バッファとを含むマルチプ
ロセッサシステムにおいて、共有バッファを介してシス
テムバスに接続されかつ外部装置と複数のプロセッサ各
々との間の入出力処理を制御する入出力処理装置を備え
ることによって、システムバスの負荷を軽減することが
でき、実装可能なプロセッサ数の制限を少なくして効率
の向上を図ることができるという効果がある。
As described above, according to the present invention, a plurality of processors, and a shared processor disposed between each of the plurality of processors and a system bus and holding data input / output to / from each of the plurality of processors. In a multiprocessor system including a buffer, a load on the system bus is provided by providing an input / output processing device connected to the system bus via a shared buffer and controlling input / output processing between an external device and each of the plurality of processors. And the efficiency can be improved by reducing the limit on the number of processors that can be mounted.

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

【図1】本発明の一実施例の構成を示すブロック図であ
る。
FIG. 1 is a block diagram showing the configuration of an embodiment of the present invention.

【図2】図1の共有バッファ部の構成を示すブロック図
である。
FIG. 2 is a block diagram illustrating a configuration of a shared buffer unit of FIG. 1;

【図3】図1のプロセッサから記憶装置に対してデータ
要求があった場合のメモリアクセス処理によるデータの
流れを示す図である。
FIG. 3 is a diagram showing a data flow by a memory access process when a data request is made from the processor of FIG. 1 to a storage device.

【図4】図1のプロセッサから記憶装置に対してデータ
の書込みが発生した場合のデータの流れ及びそのデータ
を他のプロセッサグループのプロセッサが必要とした場
合のデータの流れを示す図である。
FIG. 4 is a diagram showing a data flow when data is written from the processor of FIG. 1 to the storage device and a data flow when the data is needed by a processor of another processor group.

【図5】図1のプロセッサから入出力処理装置へのI/
O要求があった場合の入出力処理装置からのデータの流
れを示す図である。
FIG. 5 shows an I / O from the processor of FIG. 1 to an input / output processing device;
FIG. 9 is a diagram showing a flow of data from the input / output processing device when an O request is made.

【図6】本発明の一実施例によるメモリアクセス時の動
作を示すフローチャートである。
FIG. 6 is a flowchart showing an operation at the time of memory access according to an embodiment of the present invention.

【図7】本発明の一実施例によるメモリアクセス時の動
作を示すフローチャートである。
FIG. 7 is a flowchart showing an operation at the time of memory access according to an embodiment of the present invention.

【図8】本発明の一実施例によるI/Oリクエスト時の
動作を示すフローチャートである。
FIG. 8 is a flowchart showing an operation at the time of an I / O request according to one embodiment of the present invention.

【図9】従来例の構成を示すブロック図である。FIG. 9 is a block diagram showing a configuration of a conventional example.

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

1,2 プロセッサグループ 3 記憶装置 11,12,21,22 プロセッサ 13,23 入出力処理装置 14,24 共有バッファ部 14a 共有バッファ 14b 入出力制御部 100 システムバス 1, 2 processor group 3 storage device 11, 12, 21, 22 processor 13, 23 input / output processing device 14, 24 shared buffer unit 14a shared buffer 14b input / output control unit 100 system bus

Claims (4)

【特許請求の範囲】[Claims] 【請求項1】 複数のプロセッサと、前記複数のプロセ
ッサ各々とシステムバスとの間に配設されかつ前記複数
のプロセッサ各々に入出力されるデータを保持する共有
バッファとを含むマルチプロセッサシステムであって、
前記共有バッファを介して前記システムバスに接続され
かつ外部装置と前記複数のプロセッサ各々との間の入出
力処理を制御する入出力処理装置を有することを特徴と
するマルチプロセッサシステム。
1. A multiprocessor system comprising: a plurality of processors; and a shared buffer disposed between each of the plurality of processors and a system bus and holding data input to and output from each of the plurality of processors. hand,
A multiprocessor system, comprising: an input / output processing device connected to the system bus via the shared buffer and controlling input / output processing between an external device and each of the plurality of processors.
【請求項2】 前記複数のプロセッサ各々のうち予め割
当てられたプロセッサからなる複数のプロセッサグルー
プを含み、前記共有バッファを前記複数のプロセッサグ
ループ各々に配設したことを特徴とする請求項1記載の
マルチプロセッサシステム。
2. The apparatus according to claim 1, further comprising: a plurality of processor groups each including a pre-assigned processor among the plurality of processors, wherein the shared buffer is arranged in each of the plurality of processor groups. Multiprocessor system.
【請求項3】 前記入出力処理装置を前記複数のプロセ
ッサグループ毎に配設された前記共有バッファに接続自
在としたことを特徴とする請求項2記載のマルチプロセ
ッサシステム。
3. The multiprocessor system according to claim 2, wherein said input / output processing device is connectable to said shared buffers provided for each of said plurality of processor groups.
【請求項4】 前記共有バッファに保持されたデータへ
のアクセス要求をストアイン方式によって制御するよう
にしたことを特徴とする請求項1から請求項3のいずれ
か記載のマルチプロセッサシステム。
4. The multiprocessor system according to claim 1, wherein an access request to data held in said shared buffer is controlled by a store-in method.
JP4952497A 1997-03-05 1997-03-05 Multiprocessor system Pending JPH10247182A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4952497A JPH10247182A (en) 1997-03-05 1997-03-05 Multiprocessor system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4952497A JPH10247182A (en) 1997-03-05 1997-03-05 Multiprocessor system

Publications (1)

Publication Number Publication Date
JPH10247182A true JPH10247182A (en) 1998-09-14

Family

ID=12833540

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4952497A Pending JPH10247182A (en) 1997-03-05 1997-03-05 Multiprocessor system

Country Status (1)

Country Link
JP (1) JPH10247182A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180110437A (en) * 2017-03-29 2018-10-10 삼성전자주식회사 Tethering method and electronic device implementing the same

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180110437A (en) * 2017-03-29 2018-10-10 삼성전자주식회사 Tethering method and electronic device implementing the same

Similar Documents

Publication Publication Date Title
US4951193A (en) Parallel computer with distributed shared memories and distributed task activating circuits
US5729714A (en) Shared memory access method and apparatus with address translation
JPH0219945A (en) Main memory controller
KR101639943B1 (en) Shared memory control method for facilitating shared memory of general purpose graphic processor as cache and general purpose graphic processor using same
JP2004054916A (en) Method of executing hardware support communication between processors
JPH01269142A (en) Buffer memory control system
JPH0282330A (en) Move out system
JPH01213732A (en) Extended storage system
JPH10247182A (en) Multiprocessor system
JP2000227895A (en) Device and method for transferring image data
JPH04291642A (en) Cache control system
JPH03154139A (en) Cache memory
JPH06324999A (en) Multiprocessor system
JPH056333A (en) Multi-processor system
JP2551613B2 (en) Data processing device
JPS6267648A (en) Processing system for exclusive control instruction
JPH01223545A (en) Buffer memory
JPH0285943A (en) Data processor
JPH10320278A (en) Memory controller and computer system
JP2002259209A (en) Arithmetic processing system
JPS61221845A (en) Producing system for invalidated address of buffer memory
JPS6349257B2 (en)
JPH058459B2 (en)
JPH05334185A (en) Three-hierarchcial memory system
JPH05233443A (en) Multiprocessor system