JPH05324576A - Inter-processor synchronization control system - Google Patents

Inter-processor synchronization control system

Info

Publication number
JPH05324576A
JPH05324576A JP4156030A JP15603092A JPH05324576A JP H05324576 A JPH05324576 A JP H05324576A JP 4156030 A JP4156030 A JP 4156030A JP 15603092 A JP15603092 A JP 15603092A JP H05324576 A JPH05324576 A JP H05324576A
Authority
JP
Japan
Prior art keywords
register
synchronization control
processors
packet
stage
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.)
Granted
Application number
JP4156030A
Other languages
Japanese (ja)
Other versions
JP2976700B2 (en
Inventor
Noriyuki Ando
憲行 安藤
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 JP4156030A priority Critical patent/JP2976700B2/en
Publication of JPH05324576A publication Critical patent/JPH05324576A/en
Application granted granted Critical
Publication of JP2976700B2 publication Critical patent/JP2976700B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Abstract

PURPOSE:To reduce an overhead of synchronization control by providing a circuit for generating a synchronizing signal, and a selector for selecting plural pieces of synchronization control registers, in an exchange switch of a coupling network. CONSTITUTION:In a coupling network of a multistage constituted of exchange switches 00-03, 10-13, and 20-23 for coupling plural processors 0-7 and memories 100-107, Ack signal generating circuits (counters) 30-32 for showing a fact that a memory request passes through are provided in the exchange switches of each stage. Also, synchronization control registers 50-52 are distributed and arranges in each stage, and moreover, a register 60 for holding a PE number written in this register, and selectors 40-42 for selecting plural pieces of synchronization control registers are provided. Therefore, synchronization control required for transferring shared data between the processors can be executed at a high speed.

Description

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

【0001】[0001]

【産業上の利用分野】本願発明は、複数個の演算プロセ
ッサからなる演算処理装置、複数個のモジュールにイン
ターリーブされた記憶装置、演算処理装置と記憶装置を
接続する相互結合網、並びに演算プロセッサ相互間の同
期制御に用いる同期制御用レジスタより構成される情報
処理装置におけるプロセッサ間同期制御方式に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an arithmetic processing device comprising a plurality of arithmetic processors, a storage device interleaved with a plurality of modules, an interconnection network connecting the arithmetic processing devices and the storage devices, and arithmetic processor mutual interconnections. The present invention relates to an interprocessor synchronization control method in an information processing device that is configured by a synchronization control register used for synchronization control between processors.

【0002】[0002]

【従来の技術】複数個の演算プロセッサと、複数個のモ
ジュールにインターリーブされたメモリ、プロセッサと
メモリを接続する相互結合網、並びにプロセッサ間の同
期制御に用いる同期制御用レジスタより構成される密結
合マルチプロセッサ構成の並列計算機を図1にブロック
図で示す。この並列計算機において、プロセッサ間の共
有データの転送はメモリを介して行われる。このとき、
正しく共有データの受渡しを行うため、プロセッサ間の
同期制御に同期制御用レジスタが用いられる。
2. Description of the Related Art Tightly coupled circuits comprising a plurality of arithmetic processors, memories interleaved in a plurality of modules, an interconnection network connecting the processors to each other, and a synchronization control register used for synchronization control between the processors. FIG. 1 is a block diagram showing a parallel computer having a multiprocessor configuration. In this parallel computer, shared data is transferred between processors via a memory. At this time,
A synchronization control register is used for synchronization control between processors so that shared data can be delivered and received correctly.

【0003】同期制御用レジスタを用いた共有データの
受渡しは、次のように行われる。始めに同期制御用レジ
スタの内容をクリア(0値)にしておく。書き込み側プ
ロセッサは転送を行う共有データをメモリに書き込む
と、該プロセッサは同期制御レジスタのフラグをセット
(1値)する。読み込み側プロセッサはこの同期制御レ
ジスタがセットされたことを確認した後にメモリより共
有データを読み出す。これにより、書き込み側プロセッ
サの共有データの書き込みと、読み込み側プロセッサの
共有データの読み込みの順序性は保証され、正しく共有
データの転送を行うことができる。
Delivery of shared data using the synchronization control register is performed as follows. First, the content of the synchronization control register is cleared (0 value). When the writing processor writes the shared data to be transferred in the memory, the processor sets the flag of the synchronization control register (one value). The reading side processor reads the shared data from the memory after confirming that the synchronization control register has been set. As a result, the order of writing the shared data of the writing processor and the reading of the shared data of the reading processor is guaranteed, and the shared data can be transferred correctly.

【0004】このとき、書き込み側プロセッサにおいて
は、共有のデータの書き込みと、同期制御用レジスタ書
き込みの順序性を保証しておくことが必要になる。即
ち、共有データの書き込み終了したことを確認した後
に、同期制御用レジスタに書き込みを行う必要がある。
共有データの書き込み終了以前に同期制御用レジスタの
フラグをセットすれば、当然正しいデータ転送は行われ
ない。この共有データ書き込みと同期制御用レジスタ書
き込みの順序性保証の方法は、いくつか考えられる。
At this time, in the writing side processor, it is necessary to guarantee the order of writing the shared data and writing the synchronization control register. That is, it is necessary to write to the synchronization control register after confirming that the writing of the shared data has been completed.
If the flag of the synchronization control register is set before the end of writing the shared data, correct data transfer cannot be performed. There are several possible methods for guaranteeing the order of the shared data writing and the synchronization control register writing.

【0005】まず、順序性保証を満足する結合網を採用
すれば簡単に順序性保証は実現できる。ここで、順序性
保証を満足する結合網とは、プロセッサからのメモリア
クセス要求発行の時間的な順序関係を保証し、その順序
通りにメモリに対してアクセスを行う結合網である。こ
のような結合網として例えばバス結合がある。この場
合、書き込み側プロセッサは共有データ書き込み命令を
発行した後に同期制御用レジスタにフラグのセットを行
えばよい。即ち、同期制御用レジスタで保証された書き
込み命令と読み込み命令の順序性が、結合網で保持され
てメモリに対し発行されるので、正しいデータの転送が
可能になる。
First, the order guarantee can be easily realized by adopting a connection network satisfying the order guarantee. Here, the connection network that satisfies the order guarantee is a connection network that guarantees the temporal order relation of the memory access requests issued by the processors and accesses the memories in the order. An example of such a connection network is bus connection. In this case, the writing processor may set the flag in the synchronization control register after issuing the shared data write command. That is, since the order of the write command and the read command guaranteed by the synchronization control register is held in the connection network and issued to the memory, correct data transfer is possible.

【0006】しかし、バッファ付き多段結合網で、パケ
ット交換制御による調停制御を行う結合網では、メモリ
アクセスの順序性保証を満足しないため、順序性保証制
御の回路を追加する必要がある。この回路の一例とし
て、プロセッサと記憶装置間に共有データを書き込み完
了を返す信号線を設け、全てのメモリアクセスに対して
記憶装置はメモリアクセス完了を示すAck信号を、こ
の信号線を使ってプロセッサに返す。書き込み側プロセ
ッサはこれらの信号を受け取った後に同期制御用レジス
タのフラグセット命令を発行する。
[0006] However, in a multistage connection network with a buffer, which performs arbitration control by packet switching control, since the order guarantee of memory access is not satisfied, it is necessary to add a circuit for order guarantee control. As an example of this circuit, a signal line for writing shared data and returning completion is provided between the processor and the memory device, and the memory device responds to all memory accesses with an Ack signal indicating the completion of memory access. Return to. After receiving these signals, the writing processor issues a flag setting instruction for the synchronization control register.

【0007】[0007]

【発明が解決しようとする課題】プロセッサ台数が数十
台以上になると、順序性保証を満足する結合網を実現す
ることは、かなり困難になる。つまり、その制御が複雑
になり、結合網の実効スループットを落とす恐れがあ
る。この場合、パケット交換制御の多段結合網を採用す
ることが多い。
When the number of processors exceeds several tens, it becomes quite difficult to realize a connection network satisfying the order guarantee. That is, the control becomes complicated, and the effective throughput of the connection network may be reduced. In this case, a packet switching control multistage coupling network is often adopted.

【0008】しかし、多段結合網で前述した順序性保証
制御方法を用いた場合、同期制御用レジスタのフラグの
セット操作のTAT(ターンアランドタイム)が長くな
ってしまい、システムの性能劣化の原因になる。即ち、
共有メモリへの書き込み命令信号が記憶装置に到達し、
メモリアクセスが完了したことを示すAck信号が返っ
て来るまで、同期制御用レジスタのフラグセット命令発
行ができないため無駄な待ちが発生してしまう。
However, when the above-described sequence guarantee control method is used in a multi-stage connection network, the TAT (turn aland time) of the flag setting operation of the synchronization control register becomes long, which causes deterioration of system performance. Become. That is,
The write command signal to the shared memory reaches the storage device,
Until the Ack signal indicating that the memory access is completed is returned, it is impossible to issue the flag setting instruction of the synchronization control register, so that useless waiting occurs.

【0009】[0009]

【課題を解決するための手段】前述の課題を解決するた
めの本願の発明のプロセッサ間同期制御方式は、複数の
プロセッサとメモリを結合する、交換スイッチより構成
される多段の結合網において、各段の交換スイッチにメ
モリリクエストが通過したことを示すAck信号発生回
路を設け、同期制御用レジスタを各段に分散させて配置
し、また、このレジスタに書き込んだPE番号を保持す
るレジスタと、複数個ある同期制御用レジスタを選択す
るセレクタを持たせることにより、プロセッサ間で共有
データを転送するのに必要な同期制御を高速に行うこと
ができる手段を有する。
SUMMARY OF THE INVENTION An interprocessor synchronization control system of the invention of the present application for solving the above-mentioned problems is provided in a multistage connection network composed of exchange switches for connecting a plurality of processors and memories. An Ack signal generation circuit that indicates that a memory request has passed is provided in the exchange switch of the stage, the synchronization control registers are arranged in a distributed manner in each stage, and a register for holding the PE number written in this register and a plurality of registers are provided. By providing a selector that selects one of the synchronization control registers, a means is provided which can perform the synchronization control required for transferring shared data between the processors at high speed.

【0010】このとき多段結合網は次の条件を満足すれ
ば、ネットワークのトポロジーに関係無く本願発明を適
用できる。即ち、プロセッサとメモリモジュールを一意
に決めれば、結合網内のルートが唯一1ルートのみ決ま
り、交換スイッチ、パス上で前後のメモリリクエストパ
ケットの追越しが起こらない結合網ならば良い。
At this time, the present invention can be applied to the multistage connection network regardless of the topology of the network, provided that the following conditions are satisfied. That is, if the processor and the memory module are uniquely determined, only one route in the connection network is determined, and it is sufficient if the connection switch does not cause the memory request packets before and after it to overtake on the path.

【0011】複数個のプロセッサ間のメモリアクセスパ
ケットが、結合網内のある段以降からメモリまでの同一
のパスを使用すれば、その段以降のメモリアクセスの順
序性は保証される。従って、同期制御用レジスタのフラ
グのセットは、この段を全てのメモリアクセスパケット
が通過したことが確認できた時点で可能である。そこ
で、各段に同期制御用レジスタを各々分散させて配置し
(物理的には複数個のレジスタより構成されるが、論理
的には1つの同期制御用レジスタとして見える)、本レ
ジスタの書き込み側は、各段においてメモリリクエスト
パケットが通過したことを保証したときに各々別に書き
込みを行い、読み込み側は書き込みプロセッサ番号と読
み込みプロセッサ番号より、読み出すべき同期制御用レ
ジスタを選択して読み出すことにより、2つのプロセッ
サ間での同期制御を高速に行うことが可能になる。
If the memory access packet between a plurality of processors uses the same path from a certain stage in the connection network to the memory, the order of the memory access after that stage is guaranteed. Therefore, the flag of the synchronization control register can be set when it is confirmed that all the memory access packets have passed through this stage. Therefore, the synchronization control registers are distributed and arranged in each stage (they physically consist of a plurality of registers, but logically appear as one synchronization control register), and the write side of this register Performs writing separately when it is guaranteed that the memory request packet has passed in each stage, and the reading side selects and reads the synchronization control register to be read from the write processor number and the read processor number. It becomes possible to perform high-speed synchronous control between two processors.

【0012】[0012]

【実施例】以下、本願発明の一実施例を図2を参照して
説明する。実施例として相互結合網としてバッファ付き
の交換スイッチを用いたオメガ網を使い、8台のプロセ
ッサと8個にインターリーブされたメモリモジュールか
らなるマルチプロセッサ構成での同期方法について述べ
る。以下、同期制御用レジスタのことを通信レジスタと
呼ぶ。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of the present invention will be described below with reference to FIG. As an example, a description will be given of a synchronization method in a multiprocessor configuration including eight processors and eight interleaved memory modules, using an Omega network using an exchange switch with a buffer as an interconnection network. Hereinafter, the synchronization control register is referred to as a communication register.

【0013】図2では、8台のプロセッサ0、…、7
と、8個のモジュールにインターリーブされたメモリモ
ジュール100、…、107と、それらを結合するオメ
ガを示している。オメガ網は3段のステージで構成さ
れ、各段4個の2×2のバッファ付き交換スイッチが配
置される。初段の交換スイッチを00、…、03とし、
中段の交換スイッチを10、…、13、終段の交換スイ
ッチを20、…、23とする。オメガ網であるので、プ
ロセッサと交換スイッチ間、また、交換スイッチ間はシ
ャッフル式に結合される。交換スイッチ内での2個のパ
ケットの競合調停は各交換スイッチが行い、競合が発生
した場合、優先度の高いリクエストを通し、低いリクエ
ストは交換スイッチ内のバッファで待たされる。
In FIG. 2, eight processors 0, ...
, 107 interleaved with eight modules, and Omega connecting them. The Omega network is composed of three stages, and four 2 × 2 buffered exchange switches are arranged in each stage. Set the first-stage replacement switch to 00, ..., 03,
It is assumed that the middle-stage exchange switches are 10, ..., 13 and the final-stage exchange switches are 20, ..., 23. Since it is an Omega network, the processor and the exchange switch, and also the exchange switch are shuffle-coupled. Each switching switch arbitrates contention of two packets in the switching switch, and when a conflict occurs, a request with a high priority is passed and a request with a low priority is held in a buffer in the switching switch.

【0014】各段には各々カウンタ30、31、32と
セレクタ40、41、42、通信レジスタ部50、5
1、52を設ける。カウンタは各4個の交換スイッチと
接続される。セレクタの入力側はカウンタと通信レジス
タバスに接続され、カウンタからの信号と通信レジスタ
バスからの信号を選択する。
Counters 30, 31, 32, selectors 40, 41, 42, communication register sections 50, 5 are provided in each stage.
1, 52 are provided. The counter is connected to four exchange switches each. The input side of the selector is connected to the counter and the communication register bus, and selects the signal from the counter and the signal from the communication register bus.

【0015】また、各通信レジスタに対応して、この通
信レジスタに値を書き込んだPE番号を保持するPE番
号レジスタ部60がある。さらにデコーダ部61、通信
レジスタから読み出された値を選択する通信レジスタセ
レクタ部62がある。
Corresponding to each communication register, there is a PE number register section 60 for holding the PE number whose value is written in this communication register. Further, there are a decoder section 61 and a communication register selector section 62 for selecting a value read from the communication register.

【0016】通常のメモリアクセス命令(メモリ書き込
み命令、メモリ読み込み命令)パケットとして発行さ
れ、オメガ網内のメモリアクセスパスを通りメモリに到
達する。メモリはパケットのOPCODEに従いメモリ
アクセスを行う。
It is issued as a normal memory access command (memory write command, memory read command) packet and reaches the memory through the memory access path in the Omega network. The memory accesses the memory according to the OPCODE of the packet.

【0017】通信レジスタを操作する命令は次の通りで
ある。 (1)SCR(通信レジスタ書き込み) プロセッサは通信レジスタバスを用いて、各通信レジス
タ部50、…、52のCRアドレスが示す通信レジスタ
の内容を書き換える。合わせて、PE番号レジスタ部6
0のCRアドレスが示すPE番号レジスタに、自分のプ
ロセッサ番号を書き込む。また、各セレクタ40、…、
42に通信レジスタバスのWriteDATAを選択す
る選択信号がある。 (2)CSCR(順序保証付き通信レジスタ書き込み) プロセッサはメモリアクセスパスに対して、本命令パケ
ットを送出する。また、通信レジスタバスを用いて、P
E番号レジスタ部60のCRアドレスが示すPE番号レ
ジスタに、自分のプロセッサ番号を書き込み、各セレク
タ40、…、42に交換スイッチからの信号を選択する
選択信号を送る。初段の交換スイッチ00、…、03は
本CSCRパケットを受け取ると、2個の出力ポートに
対してCSCRパケットをブロードキャストする。ま
た、カウンタ30に対してもCSCRパケットを送出す
る。カウンタ30はCSCRパケットを受け取るとセレ
クタ40に送り、セレクタ40は通信レジスタ部50に
本CSCRパケットを送る。通信レジスタ部50はCS
CRパケット内のCRアドレスが示す通信レジスタの内
容をCSCRパケット内のデータの値に置き換える。中
段の2個の交換スイッチ10、…、13は各々本CSC
Rパケットを受け取ると、2個の出力ポートに対してC
SCRパケットをブロードキャストする。また、カウン
タ31に対してもCSCRパケットを送出する。カウン
タ31は2個の交換スイッチより各々CSCRパケット
を受け取るまで待つ。2個のCSCRパケットを受け取
るとこれをセレクタ41に送り、セレクタ41は通信レ
ジスタ部51に本CSCRパケットを送る。通信レジス
タ部51はCSCRパケット内のCRアドレスが示す通
信レジスタの内容をCSCRパケット内のデータの値に
書き換える。終段の4個の交換スイッチ20、…、23
は各々本CSCRパケットを受け取ると、カウンタ32
に対してCSCRパケットを送出する。カウンタ32は
4個の交換スイッチより各々CSCRパケットを受け取
るまで待つ。4個のCSCRパケットを受け取るとこれ
をセレクタ42に送り、セレクタ42は通信レジスタ部
52に本CSCRパケットを送る。通信レジスタ部52
はCSCRパケット内のCRアドレスが示す通信レジス
タの内容をCSCRパケット内データの値に書き換え
る。 (3)LCR(通信レジスタ読み込み) プロセッサは通信レジスタバスを用いて、各通信レジス
タ部50、…、52のCRアドレスが示す通信レジスタ
の内容を読み出す。合わせて、PE番号レジスタ部60
のCRアドレスが示すPE番号レジスタの内容を読み出
す。通信レジスタ部は複数個あるので、どの通信レジス
タ部の通信レジスタの内容を選択するかは、通信レジス
タセレクタ部62とデコーダ61で行う。デコーダ部6
1はPE番号レジスタ部60より読み出されたPE番号
と、自分のプロセッサ番号を比較し、通信レジスタセレ
クタ部62に選択番号を送る。通信レジスタセレクタ部
62は選択番号に従い、通信レジスタから読み出された
データを選択し、このデータをプロセッサに返す。ここ
で、選択信号は以下の通りになる。LCRを発行したプ
ロセッサ番号を(a1,a2,a3)とする。(a1,
a2,a3)はPE番号の2進数表現とし、aをaの補
数表現とする。PE番号レジスタ部より読み出されたP
E番号が(a1,a2,a3)ならば、通信レジスタ部
50を選択する選択信号を送出する。PE番号レジスタ
部より読み出されたPE番号が(a1,a2,a3)な
らば、通信レジスタ部51を選択する選択信号を送出す
る。PE番号レジスタ部より読み出されたPE番号が
(a1,a2,a3)ならば、通信レジスタ部52を選
択する選択信号を送出する。
The instructions for operating the communication register are as follows: (1) SCR (writing communication register) The processor uses the communication register bus to rewrite the contents of the communication register indicated by the CR address of each communication register section 50, ..., 52. In addition, PE number register unit 6
Write its own processor number in the PE number register indicated by the CR address of 0. Also, each selector 40, ...
42 has a selection signal for selecting WriteDATA of the communication register bus. (2) CSCR (Write Communication Register with Order Guarantee) The processor sends this command packet to the memory access path. Also, using the communication register bus, P
The processor number is written in the PE number register indicated by the CR address of the E number register unit 60, and a selection signal for selecting a signal from the exchange switch is sent to each selector 40, ..., 42. When the first-stage switching switches 00, ..., 03 receive this CSCR packet, they broadcast the CSCR packet to two output ports. Further, the CSCR packet is also sent to the counter 30. When the counter 30 receives the CSCR packet, it sends it to the selector 40, and the selector 40 sends the main CSCR packet to the communication register unit 50. Communication register unit 50 is CS
The contents of the communication register indicated by the CR address in the CR packet are replaced with the value of the data in the CSCR packet. The two exchange switches 10, ..., 13 in the middle stage are each a CSC.
When receiving R packet, C for 2 output ports
Broadcast the SCR packet. Further, the CSCR packet is also sent to the counter 31. The counter 31 waits until each CSCR packet is received from the two exchange switches. When two CSCR packets are received, they are sent to the selector 41, and the selector 41 sends the present CSCR packet to the communication register unit 51. The communication register unit 51 rewrites the contents of the communication register indicated by the CR address in the CSCR packet with the value of the data in the CSCR packet. The last four exchange switches 20, ..., 23
When each of the CSCR packets is received, the counter 32
To send a CSCR packet. The counter 32 waits until it receives a CSCR packet from each of the four switching switches. When the four CSCR packets are received, they are sent to the selector 42, and the selector 42 sends the present CSCR packet to the communication register unit 52. Communication register section 52
Rewrites the contents of the communication register indicated by the CR address in the CSCR packet with the value of the data in the CSCR packet. (3) LCR (reading communication register) The processor uses the communication register bus to read the contents of the communication register indicated by the CR address of each communication register unit 50, ..., 52. In addition, the PE number register unit 60
The content of the PE number register indicated by the CR address is read. Since there are a plurality of communication register sections, the communication register selector section 62 and the decoder 61 determine which communication register section to select the contents of the communication register section. Decoder section 6
1 compares the PE number read from the PE number register unit 60 with its own processor number and sends the selection number to the communication register selector unit 62. The communication register selector unit 62 selects the data read from the communication register according to the selection number and returns this data to the processor. Here, the selection signals are as follows. The processor number that issued the LCR is (a1, a2, a3). (A1,
a2, a3) are PE number binary representations, and a is a's complement representation. P read from the PE number register section
If the E number is (a1, a2, a3), a selection signal for selecting the communication register unit 50 is transmitted. If the PE number read from the PE number register section is (a1, a2, a3), a selection signal for selecting the communication register section 51 is sent. If the PE number read from the PE number register section is (a1, a2, a3), a selection signal for selecting the communication register section 52 is sent.

【0018】この構成において、2台のプロセッサ間の
共有データ転送は次のように行われる。始めに書き込み
側のプロセッサはSCR命令を用いて通信レジスタをク
リア(0値)する。このとき、3個の通信レジスタ部5
0、…、52の同一CRアドレスのCRレジスタの値が
クリアされることになる。
In this configuration, the shared data transfer between the two processors is performed as follows. First, the processor on the writing side clears (0 value) the communication register using the SCR instruction. At this time, the three communication register units 5
The value of the CR register having the same CR address of 0, ..., 52 is cleared.

【0019】書き込み側プロセッサがメモリに対しデー
タ書き込み命令を発行した後に、該プロセッサはCSC
R命令を発行する。このCSCR命令は通信レジスタに
フラグをセット(1値)にする命令である。読み込み側
のプロセッサはこの通信レジスタに対し、LCR命令に
よりフラグがセットされるまでチェックを行い、セット
されれば共有のデータの読み込み命令を発行する。
After the writing processor issues a data write command to the memory, the processor writes CSC.
Issue the R instruction. This CSCR instruction is an instruction to set a flag (one value) in the communication register. The processor on the reading side checks this communication register until the flag is set by the LCR instruction, and if it is set, issues a read instruction of shared data.

【0020】書き込み側のプロセッサ番号を(a1,a
2,a3)とする。読み込み側のプロセッサ番号が(a
1,a2,a3)であるならば、任意のメモリモジュー
ルに対して書き込み側のメモリリクエストパケットと読
み込み側のメモリリクエストパケットは初段の交換スイ
ッチ以降同一のパスを通るので、初段のスイッチ以降は
メモリアクセスの追い越しが起こらず順序性は保証され
る。この場合、CSCR,LCR命令規約によれば、通
信レジスタセレクト部62は通信レジスタ部50のデー
タを選択する。つまり、書き込み側のCSCRパケット
が初段の交換スイッチを通過した後にフラグのセットが
行われるため、順序性の保証は満足される。
The processor number on the writing side is (a1, a
2, a3). The processor number of the reading side is (a
1, a2, a3), the memory request packet on the write side and the memory request packet on the read side for the arbitrary memory module pass through the same path after the first-stage exchange switch. Access overtaking does not occur and the order is guaranteed. In this case, according to the CSCR and LCR instruction rules, the communication register select unit 62 selects the data in the communication register unit 50. That is, since the flag is set after the write-side CSCR packet has passed through the first-stage exchange switch, the guarantee of the order is satisfied.

【0021】読み込み側のプロセッサ番号が(a1,a
2,a3)であるならば、任意のメモリモジュールに対
して、書き込み側のメモリリクエストパケットと読み込
み側のメモリリクエストパケットは中段の交換スイッチ
以降同一のパスを通るので、中段のスイッチ以降はメモ
リアクセスの追い越しが起らず順序性は保証される。こ
の場合、通信レジスタとセレクト部62は通信レジスタ
部51のデータを選択する。つまり、書き込み側のCS
CRパケットが中段の2個の交換スイッチを通過した後
にフラグのセットが行われるため、順序性の保証は満足
される。
The processor number on the reading side is (a1, a
2, a3), since the memory request packet on the write side and the memory request packet on the read side pass through the same path after the middle-stage exchange switch for any memory module, memory access is performed after the middle-stage switch. Ordering is guaranteed without overtaking. In this case, the communication register / selection unit 62 selects the data in the communication register unit 51. In other words, CS on the writing side
Since the flag is set after the CR packet passes through the two exchange switches in the middle stage, the guarantee of ordering is satisfied.

【0022】読み込み側のプロセッサ番号が(a1,a
2,a3)であるならば、任意のメモリモジュールに対
して、書き込み側のメモリリクエストパケットと読み込
み側のメモリリクエストパケットは終段の交換スイッチ
まで別パスを通るので、終段の4個の交換スイッチを通
過したことを確認して通信レジスタのフラグのセットを
行わないと、順序性が保証されない。この場合、通信レ
ジスタとセレクト部62は通信レジスタ部52のデータ
を選択する。つまり、書き込み側のCSCRパケットが
3段目の4個の交換スイッチを通過した後にフラグのセ
ットが行われるため、順序性の保証は満足される。
The processor number on the reading side is (a1, a
2, a3), the memory request packet on the write side and the memory request packet on the read side pass through different paths to the final-stage exchange switch for any memory module. The order is not guaranteed unless the flag of the communication register is set after confirming that the switch has been passed. In this case, the communication register / selection unit 62 selects the data in the communication register unit 52. That is, since the flag is set after the write-side CSCR packet has passed through the four exchange switches in the third stage, the guarantee of the order is satisfied.

【0023】図3は通信レジスタ部のブロック図を示し
ている。通信レジスタ部は複数個のレジスタ00、…、
0nより構成される通信レジスタファイル0と通信レジ
スタ制御部1より構成される。WriteDATA10
0信号線は図2のセレクタ40、…、42の出力であ
り、ReadDATA101信号線は図2の通信レジス
タセレクタ部62の入力になる。
FIG. 3 shows a block diagram of the communication register section. The communication register unit includes a plurality of registers 00, ...
It is composed of a communication register file 0 composed of 0n and a communication register control unit 1. WriteDATA10
The 0 signal line is the output of the selectors 40, ..., 42 of FIG. 2, and the ReadDATA 101 signal line is the input of the communication register selector unit 62 of FIG.

【0024】OPCCODE102で示される命令が書
き込み命令ならば、CRアドレス102で示されるアド
レスの通信レジスタの値をWriteDATA100の
値に置き換える。OPCCODE102で示される命令
が読み出し命令ならば、CRアドレス102に示される
アドレスの通信レジスタの値をReadDATA101
の信号線に出力する。
If the instruction indicated by OPCCODE 102 is a write instruction, the value of the communication register at the address indicated by CR address 102 is replaced with the value of WriteDATA 100. If the instruction indicated by OPCCODE 102 is a read instruction, the value of the communication register at the address indicated by CR address 102 is changed to ReadDATA101.
To the signal line of.

【0025】図4はPE番号レジスタ部のブロック図を
示している。PE番号レジスタ部は複数個のPE番号レ
ジスタ00、…、0nより構成されるPE番号レジスタ
ファイル0とPE番号レジスタ制御部1より構成され
る。WritePE番号は図2の通信レジスタバス20
0のPE番号フィールドの信号線であり、ReadPE
番号101は図2のデコーダ61の入力になる。
FIG. 4 is a block diagram of the PE number register section. The PE number register unit comprises a PE number register file 0 composed of a plurality of PE number registers 00, ..., 0n and a PE number register control unit 1. The WritePE number is the communication register bus 20 of FIG.
0 PE number field signal line, ReadPE
The number 101 is an input to the decoder 61 in FIG.

【0026】OPCCODE102で示される命令が書
き込み命令ならば、CRアドレス102で示されるアド
レスのPE番号レジスタの値をWritePE番号10
0の値に置き換える。OPCCODE102で示される
命令が読み出し命令ならば、CRアドレス102で示さ
れるアドレスのPE番号レジスタの値をReadPE番
号101の信号線に出力する。
If the instruction indicated by OPCCODE 102 is a write instruction, the value of the PE number register at the address indicated by CR address 102 is set to WritePE number 10.
Replace with a value of 0. If the instruction indicated by OPCCODE 102 is a read instruction, the value of the PE number register at the address indicated by CR address 102 is output to the signal line of ReadPE number 101.

【0027】図5は交換スイッチのブロック図を示して
いる。交換スイッチは入力ポート#0、#1のリクエス
トパケットの調停を行うアービタと、アービタからのの
選択信号50よりルーティングを行う2×3交換スイッ
チ1より構成される。通常のメモリリクエストの場合は
2×2の交換スイッチとして機能し、パケットを希望す
る出力ポートにルーティングを行う。CSCRパケット
が入力すると、2個の出力ポートとセレクタへのポート
に対して該パケットをブロードキャストを行う機能を有
する。
FIG. 5 shows a block diagram of the exchange switch. The exchange switch is composed of an arbiter that arbitrates request packets of input ports # 0 and # 1, and a 2 × 3 exchange switch 1 that performs routing based on a selection signal 50 from the arbiter. In the case of a normal memory request, it functions as a 2 × 2 exchange switch and routes a packet to a desired output port. When a CSCR packet is input, it has a function of broadcasting the packet to two output ports and a port to the selector.

【0028】図6はCR操作命令のパケットを示してい
る。CR操作パケットは、OPCCODEフィールド0
0、10、CRアドレス02、12以外にCR命令を発
行したPE番号が入っている自PE番号フィールドから
構成される。(CR書き込みの場合はデータフィールド
03も含まれる)
FIG. 6 shows a CR operation command packet. The CR operation packet has OPCCODE field 0
In addition to 0, 10 and CR addresses 02, 12, it is composed of its own PE number field that contains the PE number that issued the CR command. (In case of CR writing, data field 03 is also included)

【0029】[0029]

【発明の効果】以上に述べたように、書き込み側プロセ
ッサによる同期制御レジスタのフラグのセットを、メモ
リからの書き込み完了を示すAck信号を記憶装置より
受け取ってから行うのに比較して、本願発明の同期制御
方式では、あるプロセッサ関係においてはメモリリクエ
ストパケットが、結合網のある段を通過した時点、即ち
メモリに到達する以前で可能になるので、同期制御のオ
ーバーヘッドはかなり低減可能になると考えられる。
As described above, the flag of the synchronization control register is set by the processor on the writing side after the Ack signal indicating the completion of writing from the memory is received from the storage device. In the synchronous control method of (1), in some processor relations, the memory request packet becomes possible at the time when it passes through a certain stage of the connection network, that is, before reaching the memory, so the overhead of the synchronous control can be considerably reduced. ..

【0030】特に将来においては、性能向上を得るため
多数台のプロセッサを多段結合で接続することが必須と
なると予測され、この時、多段結合の段数は増加し、メ
モリからAsk信号を返す方式ではオーバーヘッドが大
きくなり、性能向上のネックになることが考えられる。
このような場合において特に本方式は有効である。
Especially in the future, it is predicted that it is indispensable to connect a large number of processors in a multistage connection in order to improve the performance. At this time, the number of stages of the multistage connection is increased, and in the method of returning the Ask signal from the memory, It is possible that the overhead becomes large and becomes a bottleneck in performance improvement.
In such a case, this method is particularly effective.

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

【図1】一般的な密結合マルチプロセッサ構成の並列計
算機を示すブロック図。
FIG. 1 is a block diagram showing a parallel computer having a general tightly coupled multiprocessor configuration.

【図2】本願発明の一実施例を示すブロック図であり、
特に結合網にオメガ網を用いたマルチプロセッサ構成を
詳細に説明する構成図。
FIG. 2 is a block diagram showing an embodiment of the present invention,
In particular, a configuration diagram illustrating in detail a multiprocessor configuration using an omega network as a connection network.

【図3】通信レジスタ部を詳細に説明する構成図。FIG. 3 is a configuration diagram illustrating a communication register unit in detail.

【図4】PE番号レジスタ部を詳細に説明する構成図。FIG. 4 is a configuration diagram illustrating a PE number register unit in detail.

【図5】交換スイッチを詳細に説明する構成図。FIG. 5 is a configuration diagram illustrating a replacement switch in detail.

【図6】SCR,CSCR,LCRパケットを詳細に説
明する構成図。
FIG. 6 is a configuration diagram illustrating SCR, CSCR, and LCR packets in detail.

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

図1において、 0、…、n プロセッサ 20 相互結合網 30 同期制御用レジスタ装置 101、…、10n メモリモジュール 201 通信レジスタバス 図2において、 0、…、7 プロセッサ 00、…、23 バッファ付き2×2交換スイッチ 30、…、32 カウンタ 40、…、42 セレクタ 50、…、52 通信レジスタ部 60 PE番号レジスタ部 61 デコーダ 62 通信レジスタセレクタ部 100、…、107 メモリモジュール 200 通信レジスタバス 図3において、 0 通信レジスタファイル 1 通信レジスタ制御部 00、…、0n 通信レジスタ 100 WriteDATA信号線 101 ReadDATA信号線 102 OPCCODE,CRアドレス信号線 図4において、 0 PE番号レジスタファイル 1 PE番号レジスタ制御部 00、…、0n PE番号レジスタ 100 WritePE信号線 101 ReadPE信号線 102 OPCCODE,CRアドレス信号線 図5において、 0 アービタ 1 2×3スイツチ 00、01 アドレス、OPOCODE入力ポート 10、11 OPCODE出力ポート 20、21 データ入力ポート 30、31 データ出力ポート 40 アドレス、OPOCODE出力ポート(対カウ
ンタ) 41 データ出力ポート(対カウンタ) 50 選択信号 図6において、 00、10 OPCODEフィールド 01、11 自PE番号フィールド 02、12 CRアドレスフィールド 03 Writeデータフィールド
1, 0, ..., N processors 20 Mutual connection network 30 Synchronous control register device 101, ..., 10n Memory module 201 Communication register bus In FIG. 2, 0, ..., 7 processors 00, ..., 23 With buffer 2 × 2 exchange switch 30, ..., 32 counter 40, ..., 42 selector 50, ..., 52 communication register unit 60 PE number register unit 61 decoder 62 communication register selector unit 100, ..., 107 memory module 200 communication register bus In FIG. 0 communication register file 1 communication register control unit 00, ..., 0n communication register 100 WriteDATA signal line 101 ReadDATA signal line 102 OPCCODE, CR address signal line In FIG. 4, 0 PE number register file 1 PE number register Control part 00, ..., 0n PE number register 100 WritePE signal line 101 ReadPE signal line 102 OPCCODE, CR address signal line In FIG. 5, 0 arbiter 1 2 × 3 switch 00, 01 address, OPOCODE input port 10, 11 OPCODE output port 20, 21 Data input port 30, 31 Data output port 40 Address, OPOCODE output port (counter) 41 Data output port (counter) 50 Selection signal In FIG. 6, 00, 10 OPCODE field 01, 11 Own PE number field 02 , 12 CR address field 03 Write data field

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】 複数個の演算プロセッサからなる演算処
理装置、複数個のモジュールにインターリーブされた記
憶装置、前記演算処理装置と前記記憶装置とを相互に接
続する多段の相互結合網、及び前記演算プロセッサ相互
間の同期制御に用いる同期制御用レジスタより構成され
る情報処理装置において、接合網の交換スイッチに同期
信号を発生させる回路と、結合網の各段に分散させて配
置した同期制御用レジスタと、該とレジスタに書き込み
を行ったプロセッサ番号を保持するレジスタと、複数個
の同期制御用レジスタを選択するセレクタとを有するこ
とにより、複数個のプロセッサ間の共有データ転送にお
ける同期制御を高速に行うことを特徴とするプロセッサ
間同期制御方式。
1. An arithmetic processing device comprising a plurality of arithmetic processors, a storage device interleaved with a plurality of modules, a multi-stage interconnection network interconnecting the arithmetic processing device and the storage device, and the arithmetic operation. In an information processing device including a synchronous control register used for synchronous control between processors, a circuit for generating a synchronous signal in an exchange switch of a junction network, and a synchronous control register distributed and arranged in each stage of a coupling network And a register that holds the processor number that has written to the register and a selector that selects a plurality of synchronization control registers, thereby achieving high-speed synchronization control in shared data transfer between a plurality of processors. An interprocessor synchronization control method characterized by performing.
JP4156030A 1992-05-22 1992-05-22 Synchronous control method between processors Expired - Fee Related JP2976700B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4156030A JP2976700B2 (en) 1992-05-22 1992-05-22 Synchronous control method between processors

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4156030A JP2976700B2 (en) 1992-05-22 1992-05-22 Synchronous control method between processors

Publications (2)

Publication Number Publication Date
JPH05324576A true JPH05324576A (en) 1993-12-07
JP2976700B2 JP2976700B2 (en) 1999-11-10

Family

ID=15618783

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4156030A Expired - Fee Related JP2976700B2 (en) 1992-05-22 1992-05-22 Synchronous control method between processors

Country Status (1)

Country Link
JP (1) JP2976700B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017010364A (en) * 2015-06-24 2017-01-12 株式会社デンソー Data processing device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017010364A (en) * 2015-06-24 2017-01-12 株式会社デンソー Data processing device

Also Published As

Publication number Publication date
JP2976700B2 (en) 1999-11-10

Similar Documents

Publication Publication Date Title
US6874053B2 (en) Shared memory multiprocessor performing cache coherence control and node controller therefor
EP0198010B1 (en) Packet switched multiport memory nxm switch node and processing method
US5754792A (en) Switch circuit comprised of logically split switches for parallel transfer of messages and a parallel processor system using the same
EP0347929B1 (en) Parallel processor
JP2731742B2 (en) Parallel computer with cluster configuration
US5857111A (en) Return address adding mechanism for use in parallel processing system
US6571301B1 (en) Multi processor system and FIFO circuit
JP2644185B2 (en) Data processing device
JP2976700B2 (en) Synchronous control method between processors
JP3704367B2 (en) Switch circuit
JP2882304B2 (en) Multiprocessor system
JP2976254B2 (en) Information processing device
JP3982077B2 (en) Multiprocessor system
JPH1091589A (en) Inter-processor synchronization controller
JPH064401A (en) Memory access circuit
JP2003337805A (en) Multi-processor system and data transferring method
JPH07110798A (en) Parallel processing system
JP2001022711A (en) Method for controlling crossbar switch and parallel computer system
JPH09269937A (en) Method and device for transmitting packet in inter-processor communication
JPH05265979A (en) Parallel processor system and switch circuit therefor
JPH10105530A (en) Computer connector
JP3791463B2 (en) Arithmetic unit and data transfer system
JP2731738B2 (en) Multiprocessor system
JPH1091601A (en) Cluster connected parallel computer
JP2000132527A (en) Inter-processor communication controller

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19990810

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080910

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080910

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090910

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees