JPH0981525A - 並列処理システム - Google Patents

並列処理システム

Info

Publication number
JPH0981525A
JPH0981525A JP7240298A JP24029895A JPH0981525A JP H0981525 A JPH0981525 A JP H0981525A JP 7240298 A JP7240298 A JP 7240298A JP 24029895 A JP24029895 A JP 24029895A JP H0981525 A JPH0981525 A JP H0981525A
Authority
JP
Japan
Prior art keywords
processing
mask
information
signal lines
status information
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
JP7240298A
Other languages
English (en)
Other versions
JP3526492B2 (ja
Inventor
Tadao Amada
忠雄 天田
Kazue Kobayakawa
和重 小早川
Kenji Korekata
研二 是方
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP24029895A priority Critical patent/JP3526492B2/ja
Priority to US08/640,227 priority patent/US5809255A/en
Publication of JPH0981525A publication Critical patent/JPH0981525A/ja
Application granted granted Critical
Publication of JP3526492B2 publication Critical patent/JP3526492B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)

Abstract

(57)【要約】 【課題】 本発明は、複数台の処理装置により1つのプ
ログラムを分担して並列実行するもので、特にあるプロ
グラム処理から次のプログラム処理へ同期的に移行すべ
く同期対象の処理装置で同期信号を生成する同期機能を
有する並列処理システムに関し、その同期処理をパイプ
ライン処理的に実行できるようにし、ハードウエア量の
増加を抑えながら、同期処理の高速化をはかることを目
的とする。 【解決手段】 相互接続装置2と各処理装置1との間
に、各処理装置1の状態情報を相互接続装置2から全て
の処理装置1へ送信するための信号線3を複数本介設
し、送信回路2Bが、状態記憶部2Aの内容を所定位相
差で複数本の信号線3に順次送り出して各処理装置1へ
並列的に送信するように構成する。

Description

【発明の詳細な説明】
【0001】(目次) 発明の属する技術分野 従来の技術(図18,図19) 発明が解決しようとする課題(図18) 課題を解決するための手段(図1) 発明の実施の形態(図2〜図17) 発明の効果
【0002】
【発明の属する技術分野】本発明は、複数台の処理装置
により1つのプログラムを分担して並列実行する並列処
理システムに関し、特に、あるプログラム処理から次の
プログラム処理へ同期的に移行すべく同期対象の処理装
置で同期信号を生成するバリア(barrier)同期機能を有
する並列処理システムに関する。
【0003】
【従来の技術】一般に、並列処理システムでは、複数の
処理装置〔以下、PE(Processor Element)と表記する
場合がある〕が1つのプログラムを分担して並列実行す
る構成を採り、このプログラム処理の終了を条件にして
次のプログラム処理へ移行している。
【0004】このような場合、各PEに分担されたプロ
グラムの終了時点を予測することが不可能であることか
ら、並列処理システムに、例えば特開平5−15117
3号公報に開示されるようなバリア同期機能をそなえる
ことが提案されている。バリア同期機能をそなえた並列
処理システムについて、図18を参照しながら説明す
る。
【0005】図18に示す並列処理システムでは、複数
台のPE100が、相互接続装置200により相互に通
信可能に接続されている。この相互接続装置200に
は、各PE100による並列処理時にPE100の相互
間におけるデータ通信を行なうための機能(図18中で
は図示せず)がそなえられるほか、バリア同期機能を実
現すべく、各PE100の状態情報を各PE100に通
知するための機能が、状態レジスタ201と状態情報送
信回路202とにより実現されている。
【0006】ここで、状態レジスタ201は、各PE1
00の状態情報を保持するためのもので、この状態レジ
スタ201には、各PE100から信号線110を通じ
て送信されてきた1ビットの状態信号が状態情報として
セットされるようになっている。また、状態情報送信回
路202は、状態レジスタ201に保持された各PE1
00の状態情報をシリアル化し、そのシリアルデータ
を、1組の放送信号線210を通じて全PE100へ放
送するものである。
【0007】なお、上記状態信号は、ここでは、例え
ば、各PE100に割り当てられた処理を完了した状態
では“1”、完了していない状態では“0”となるもの
とするが、逆に、上記状態信号として、処理を完了した
状態で“0”、完了していない状態で“1”となるもの
を用いてもよい。一方、各PE100は、バリア同期機
能を実現すべく、状態情報受信回路101,マスクレジ
スタ102および同期チェック回路103を有して構成
されている。
【0008】ここで、状態情報受信回路101は、放送
信号線210を通じて相互接続装置200から送信され
てきた各PE100の状態情報(シリアルデータ)を受
信するためのものである。また、マスクレジスタ102
は、この並列処理システムを構成する各PE100に対
応したビットを有して構成されており、例えば、同期対
象のPE100に対応するビットには“1”が予め設定
されるとともに、同期対象外のPE100に対応するビ
ットには“0”がマスク情報として予め設定されてい
る。
【0009】さらに、同期チェック回路103は、マス
クレジスタ102に保持されたマスク情報と状態情報受
信回路101で受信した各PE100の状態情報とに基
づいて、同期対象のPE100が割り当てられた処理を
完了したか否かをチェックし、同期対象のPE100が
全て処理を完了した場合に同期信号を生成するものであ
る。つまり、同期チェック回路103は、マスクレジス
タ102に保持されたマスク情報と状態情報受信回路1
01で受信した各PE100の状態情報とについて、対
応するビット(PE)どうしの論理積を算出し、その論
理積の結果が全て“1”になった場合に同期信号を生成
する。
【0010】上述のごとく構成された並列処理システム
の同期処理シーケンスを以下に説明する。 各PE100毎に、PE100内のCPU(図示省
略)等によりマスクレジスタ102に同期対象となるP
E100の情報をセットする。この情報により、どのP
E100が同期対象であるかを、各PE100で認識す
る。
【0011】各PE100におけるCPU等が、自P
Eに割り当てられた処理の状態に応じて状態信号(1ビ
ット信号)をセットする。前述した通り、その状態信号
としては、割当処理完了時に“1”が、未完了時に
“0”がセットされる。そして、その状態信号が、信号
線110を通じて相互接続装置200に通知され、状態
レジスタ201において、各PE100に対応するビッ
トに状態情報としてセットされる。
【0012】状態レジスタ201に保持された状態情
報は、適当周期毎に、相互接続装置200内の状態情報
送信回路202により、シリアル化され、放送信号線2
10を通じて全PE100へ放送される。 各PE100では、状態情報受信回路101により相
互接続装置200からの状態情報を受信すると、同期チ
ェック回路103において、まず、マスクレジスタ10
2に保持されたマスク情報と状態情報受信回路101で
受信した各PE100の状態情報とについて、対応する
ビット(PE)どうしの論理積を算出し、同期対象外の
PE100についての状態情報をマスクしてから、その
論理積結果に基づいて、同期チェックが行なわれる。
【0013】同期チェック回路103は、前記論理積
結果つまり同期対象となる全てのPE100の状態情報
が“1”(あるいは“0”)になったか否かを判定する
ことにより同期チェックを行なう。そして、同期チェッ
ク回路103は、同期対象のPE100の状態情報が全
て“1”になった場合、全ての同期対象のPE100が
割り当てられた処理を完了したものと判断し、バリア同
期信号を生成してCPU等に出力する。これにより、同
期対象のPE100は、次のプログラム処理へ同期的に
移行することができる。
【0014】このような動作により、図18に示す複数
台のPE100のうち例えば4台のPE01〜PE04
が同期対象になっている場合、例えば図19に示すよう
な同期処理が行なわれることになる。つまり、プログラ
ムAをPE01〜PE04に分担しそれぞれ処理A1
4として並列実行し、PE01〜PE04の全てでこ
のプログラムAについての処理A1 〜A4 が終了するの
を待つ。全ての処理A1 〜A4 が終了した時点(図19
中ではPE02による処理A2 を終了した時点)で、バ
リア同期信号が生成され、プログラムAの終了を実行条
件とする次のプログラムBの処理へ移行する。
【0015】このプログラムBも、前述と同様、4台の
PE01〜PE04により並列実行され、PE01〜P
E04で各処理A1 〜A4 を終了するとバリア同期信号
が生成され、次のプログラムCの処理へ移行する。この
プログラムCの処理も同様に実行される。
【0016】
【発明が解決しようとする課題】しかしながら、上述し
た従来の並列処理システムでは、相互接続装置200か
ら各PE100へ状態情報を送信するために1組の放送
信号線210をそなえ、この放送信号線210を通じそ
の状態情報をシリアル化して放送しているが、システム
を構成するPE100の台数が増大すると、状態情報の
量も増大してその送信時間が長くなり同期処理の効率が
低下してしまう。
【0017】そこで、状態情報を送信するための信号線
を増やすことも考えられるが、単純にその本数を増やし
ただけでは、各信号線毎に同期チェック回路103や論
理和回路などをそなえなければならず(例えば図4にて
後述)、各PE100内のハードウェア量が増加し、同
期処理に要する時間の長期化も招くことにもなる。ま
た、並列処理システムは、通常、そのモデル構成により
PE台数が変化するが、最大数のモデル構成に合わせて
上述のようなバリア同期処理のための部分を構成した場
合、少ないPE台数による並列処理時に同期処理の効率
が極めて悪くなるなどの課題もあった。
【0018】本発明は、このような課題に鑑み創案され
たもので、同期処理をパイプライン処理的に実行できる
ようにして、ハードウェア量の増加を抑えながら、同期
処理の高速化をはかった並列処理システムを提供するこ
とを目的とする。
【0019】
【課題を解決するための手段】図1は本発明の原理ブロ
ック図で、この図1において、1は複数台の処理装置、
2はこれらの処理装置1を相互に通信可能に接続する少
なくとも1台の相互接続装置であり、これらの処理装置
1および相互接続装置2により本発明の並列処理システ
ムが構成されている。
【0020】相互接続装置2は、各処理装置1の状態情
報を保持する状態記憶部2Aと、この状態記憶部2Aに
保持された各処理装置1の状態情報を全ての処理装置1
へ送信する送信回路2Bとをそなえて構成され、各処理
装置1は、相互接続装置2から送信されてきた各処理装
置1の状態情報に基づいて他の処理装置1の動作と同期
させながら、処理を行なうものである。
【0021】そして、本発明の並列処理システムでは、
相互接続装置2と各処理装置1との間に、各処理装置1
の状態情報を相互接続装置2から全ての処理装置1へ送
信するための信号線3が複数本介設され、送信回路2B
が、状態記憶部2Aの内容を所定位相差で複数本の信号
線3に順次送り出して各処理装置1へ並列的に送信する
ように構成されている(請求項1)。
【0022】なお、前記所定位相差を設定するための位
相差設定手段(請求項2)や、送信回路2Bにより状態
記憶部2Aから複数本の信号線3へ送り出すデータの転
送長を設定するための転送長設定手段(請求項3)をそ
なえてもよい。また、複数本の信号線3のうちでデータ
転送に使用する信号線3の本数を処理装置1の台数に応
じて設定するための信号線数設定手段をそなえてもよく
(請求項4)、その信号線数設定手段により設定された
使用信号線の本数に応じて前記所定位相差を設定するた
めの位相差設定手段をそなえ(請求項5)、この位相差
設定手段により、前記所定位相差を、〔転送長設定手段
により設定された転送長〕/〔信号線数設定手段により
設定された使用信号線の本数〕の倍数に設定するように
構成することもできる(請求項6)。
【0023】さらに、各信号線3を通じて送信回路2B
により送信される各処理装置1の状態情報を、複数のブ
ロックに分割し、各処理装置1が、ブロック毎に処理を
行なうように構成することもでき(請求項7)、この場
合、ブロックの分割単位長を設定するための単位長設定
手段をそなえてもよい(請求項8)。また、上述した請
求項1〜請求項6記載の並列処理システムにおいて、各
処理装置1に、自処理装置と同期すべき他処理装置に関
する情報をマスク情報として予め保持するマスク情報記
憶部と、このマスク情報記憶部に保持されたマスク情報
に基づいて複数の信号線3を通じて受信した各処理装置
1の状態情報のうち同期対象外の他処理装置についての
状態情報をマスクするマスク処理部とをそなえてもよい
(請求項9)。
【0024】同様に、請求項7や請求項8記載の並列処
理システムにおいて、各処理装置1に、マスク情報記憶
部およびマスク処理部をそなえてもよく(請求項1
0)、このとき、マスク情報記憶部を、前記マスク情報
の部分的読出可能な記憶素子により構成し、マスク処理
部が、前記ブロック毎に、当該ブロックに対応する部分
の前記マスク情報をマスク情報記憶部から部分的に読み
出してマスク処理を行なうように構成することができる
(請求項11)。
【0025】さらに、請求項9〜請求項11記載の並列
処理システムにおいて、各処理装置1に、複数本の信号
線3を通じて送信されてきた前記状態情報をそれぞれ一
時的に保持する複数の受信用記憶部と、これらの受信用
記憶部のうちの一つを適宜選択し選択した受信用記憶部
に保持されている前記状態情報をマスク処理部へ出力す
る選択回路とをそなえてもよい(請求項12)。
【0026】
【発明の実施の形態】以下、図面を参照して本発明の実
施形態を説明する。図2は本発明の一実施形態としての
並列処理システムを示すブロック図で、この図2に示す
ように、本実施形態の並列処理システムは、4台のPE
(プロセッサエレメント,処理装置)10を、1台の相
互接続装置20により相互に通信可能に接続して構成さ
れている。なお、図2では、1台のPE10のみ図示さ
れ、他の3台のPE10の図示は省略されているが、こ
れらの他PE10も図2に示すものと全く同様に構成さ
れている。
【0027】相互接続装置20には、各PE10による
並列処理時にPE10の相互間におけるデータ通信を行
なうための機能(図2中では図示せず)がそなえられる
ほか、バリア同期機能を実現すべく、各PE10の状態
情報(処理進行状態情報)を各PE10に通知するため
の機能が、状態レジスタ21および状態情報送信回路2
2により実現されている。
【0028】ここで、状態レジスタ21は、各PE10
の状態情報を保持するためのもので、この状態レジスタ
21には、各PE10から1ビットの信号線31を通じ
て送信されてきた1ビットの状態信号が、各PE10に
対応するビットに状態情報としてセットされるようにな
っている。この状態レジスタ21の詳細な構成について
は図5により後述する。なお、各PE10の状態信号
は、前述したものと同様に、例えば、各PE10に割り
当てられた処理を完了した状態では“1”、完了してい
ない状態では“0”となるものとするが、逆に、上記状
態信号として、処理を完了した状態で“0”、完了して
いない状態で“1”となるものを用いてもよい。
【0029】また、状態情報送信回路22は、状態レジ
スタ21に保持された各PE10の状態情報をシリアル
化し、そのシリアルデータを、全てのPE10へ放送す
るもので、具体的には図5に示すコントローラ25,セ
レクタ21B,シフト用信号線21C,出力用スイッチ
(状態情報送信回路)26−1,26−2,26−3等
を含んで構成されている。
【0030】そして、本実施形態では、相互接続装置2
0と各PE10との間に、各PE10の状態情報を相互
接続装置20から全てのPE10へ送信するための3組
(PE10の台数4よりも少ない組数)の放送信号線3
0−1,30−2,30−3が介設されており、状態情
報送信回路22が、状態レジスタ21の内容を所定位相
差で3組の放送信号線30−1,30−2,30−3に
順次送り出すことにより、各PE10へ並列的に放送す
るようになっている。
【0031】また、相互接続装置20内には、位相差設
定フリップフロップ(位相差設定手段)23および転送
長設定フリップフロップ(転送長設定手段)24がそな
えられている。これらのフリップフロップ23,24
は、各PE10にそなえてもよいし、PE10および相
互接続装置20の両方にそなえてもよい。なお、フリッ
プフロップは、以下、FFとして略記する場合がある。
【0032】位相差設定フリップフロップ23は、状態
レジスタ21の内容を3組の放送信号線30−1,30
−2,30−3へ順次送り出すタイミングとしての前記
所定位相差の値を設定するもので、この位相差設定FF
23の値を外部からのコマンド等何らかの手段により変
化させることにより、その位相差に応じた送信制御が、
後述するコントローラ25によって行なわれるようにな
っている。
【0033】転送長設定フリップフロップ24は、状態
情報送信回路22により状態レジスタ21から各放送信
号線30−1,30−2,30−3へ送り出すデータの
転送長の値を設定するもので、この転送長設定FF24
の値を外部からのコマンド等何らかの手段により変化さ
せることにより、その設定長に応じたデータの送信制御
がコントローラ25によって行なわれるようになってい
る。
【0034】一方、本実施形態の各PE10は、相互接
続装置20から3組の放送信号線30−1,30−2,
30−3を通じて所定位相差で順次送信されてくる状態
情報を受信し、その状態情報に基づいてバリア同期処理
をパイプライン処理的に実行して他のPE10の動作と
同期させながら処理を行なうもので、状態情報受信回路
11,マスクレジスタ12,マスク演算回路13,同期
処理部14,CPU15および状態信号フリップフロッ
プ16をそなえて構成されている。
【0035】ここで、状態情報受信回路11は、放送信
号線30−1〜30−3を通じて相互接続装置20から
送信されてきた各PE10の状態情報(シリアルデー
タ)を受信するためのものである。この状態情報受信回
路11は、各放送信号線30−1〜30−3に対応して
状態信号受信用フリップフロップ40−1,40−2,
40−3;ヘッダ検出回路41−1,41−2,41−
3;カウンタ42−1,42−2,42−3;状態信号
保持用フリップフロップ43−1,43−2,43−3
を有するとともに、選択回路44およびPE内転送長設
定フリップフロップ(単位長設定手段)45を有してい
る。
【0036】状態信号受信用FF(ST−FF,受信用
記憶部)40−1,40−2,40−3は、それぞれ、
放送信号線30−1〜30−3を通じてシリアル状態で
送信されてきた各PE10の状態情報を1ビットずつ順
次保持するものである。ヘッダ検出回路(HD)41−
1,41−2,41−3は、それぞれ、状態信号受信用
FF40−1,40−2,40−3に保持されるデータ
を参照することにより、転送データの先頭であるヘッダ
(図6〜図12,図14参照;例えば10ビット連続す
る“1”)を検出するものである。
【0037】カウンタ(CTR)42−1,42−2,
42−3は、それぞれ、状態信号受信用FF40−1,
40−2,40−3から状態信号保持用FF43−1,
43−2,43−3へ転送されるデータ数(ビット数)
を計数するものである。各カウンタ42−1,42−
2,42−3は、ヘッダ検出回路41−1,41−2,
41−3によりヘッダを検出した後に起動され、その計
数値がPE内転送長設定FF45に設定された値に達し
た時点で受信完了信号を出力し、状態信号保持用FF4
3−1,43−2,43−3に保持されている状態情報
を後段の選択回路44に転送している。
【0038】つまり、放送信号線30−1〜30−3を
通じてシリアル状態で送信されてきた各PE10の状態
情報は、PE内転送長設定FF45に設定されたビット
数ずつにブロック化されて、そのビット数分(分割単位
長)の状態情報が状態信号保持用FF43−1,43−
2,43−3に格納されるようになっている。その分割
単位長は、例えば1バイト,2バイト,3バイト,…と
いうようにPE内転送長設定FF45に設定されるもの
で、このPE内転送長設定FF45の値を外部からのコ
マンド等何らかの手段により変化させることにより、そ
の分割単位長に応じたブロック化が行なわれるようにな
っている。なお、各PE10の状態情報を1バイト毎に
ブロック分割した例を図13(b)や図14に示す。
【0039】このように3系統の状態情報をブロック分
割することにより、各PE10では、図11や図12に
示すように、その状態情報に基づく同期処理を分割単位
長毎にパイプライン処理することが可能になる。状態信
号保持用FF(HLDFF,受信用記憶部)43−1,
43−2,43−3は、前述した通り、それぞれ、放送
信号線30−1,30−2,30−3を通じてシリアル
状態で送信されてきた各PE10の状態情報を、順次、
複数ビット(例えば8ビット)分つまり前記分割単位長
の状態情報として一時的に格納し、パラレル状態にして
出力するものである。
【0040】選択回路44は、状態信号保持用FF43
−1,43−2,43−3のうちの一つを適宜選択し、
選択した状態信号保持用FF43−1,43−2,43
−3に保持されている複数ビットの状態情報を後段のマ
スク演算回路13へ出力するものである。また、マスク
レジスタ(マスク情報記憶部)12は、この並列処理シ
ステムを構成する各PE10に対応したビットを有して
構成され、例えば、同期対象のPE10に対応するビッ
トには“1”が予め設定されるとともに、同期対象外の
PE10に対応するビットには“0”がマスク情報とし
て予め設定されている。
【0041】マスク演算回路(マスク処理部)13は、
マスクレジスタ12に保持されたマスク情報に基づいて
状態情報受信回路11で受信した各PE10の状態情報
のうち同期対象外の他PE10についての状態情報をマ
スクするためのもので、具体的には、マスクレジスタ1
2に保持されたマスク情報と状態情報受信回路11で受
信した各PE10の状態情報とについて、対応するビッ
ト(PE)どうしの論理積を演算して出力するものであ
る。
【0042】同期処理部14は、同期対象のPE10が
割り当てられた処理を完了したか否かをチェックし、同
期対象のPE10が全て処理を完了した場合に同期信号
を生成するもので、マスク演算回路13からの出力が全
て“0”になったことを検出した場合に0同期信号を出
力するALL0検出回路14Aと、マスク演算回路13
からの出力が全て“1”になったことを検出した場合に
1同期信号を出力するALL1検出回路14Bとをそな
えて構成されている。
【0043】なお、各PE10の状態信号が処理完了時
に“1”になるものである場合にはALL1検出回路1
4Bの出力が同期信号として用いられ、各PE10の状
態信号が処理完了時に“0”になるものである場合には
ALL0検出回路14Aの出力が同期信号として用いら
れる。本実施形態では、各PE10の状態信号が処理完
了時に“1”になるものとし、ALL1検出回路14B
の出力を同期信号として用いている。
【0044】また、CPU15は、PE10としての処
理を実際に行なうもので、同期処理部14からの同期信
号を受けながら、他PE10の動作と同期させながら処
理を実行するものである。また、このCPU15は、自
PE10に割り当てられた処理を完了すると、その旨を
示す1ビットの状態信号(完了時に“1”)を状態信号
フリップフロップ16にセットする機能も有している。
状態信号FF16にセットされた状態信号は、相互接続
装置20に通知され、前述した通り状態レジスタ21の
自PE10に対応するビットに格納されるようになって
いる。
【0045】上述のごとく構成された本実施形態の並列
処理システムの基本的な動作を、図3に示すフローチャ
ート(ステップS1〜S14)に従って説明すると、ま
ず、複数台のPE10で並列的に実行すべきジョブの処
理が開始されると(ステップS1)、各PE10では、
CPU15が同期対象となるPE10に関する情報をマ
スクレジスタ12に設定してから(ステップS2)、C
PU15は、自PE10に割り当てられたジョブを実行
し(ステップS3)、割り当てられたジョブを終了した
ことを認識すると(ステップS4)、状態変更命令を出
力することにより、状態信号FF16にジョブ終了に対
応する値“1”を状態信号として設定する(ステップS
5)。
【0046】そして、相互接続装置20では、各PE1
0から送られてくる状態信号FF16の値を状態レジス
タ21に蓄え、状態信号送信回路22により、状態レジ
スタ21内の値(状態情報)を、放送信号線30−1〜
30−3を通じ全PE10に対して放送する(ステップ
S6)。このときの状態レジスタ21内の値の放送手法
については、図5〜図14にて後述する。
【0047】各PE10においては、相互接続装置20
から送られてくる状態情報〔以下、SR(State Registe
r)データと表記する場合がある〕を、各放送信号線30
−1〜30−3毎に状態情報受信用FF40−1〜40
−3により受信し(ステップS7)、ヘッダ検出回路4
1−1〜41−3により、SRデータを受信したか否か
つまりヘッダを受信したか否かを認識する(ステップS
8)。
【0048】SRデータを受信していないと認識した場
合には、ステップS7に戻る一方、SRデータを受信し
たことを認識した場合には、カウンタ42−1〜42−
3によりビット数を計数しながら、その計数値がPE内
転送長設定FF45に設定された値になるまで、状態信
号受信用FF40−1〜40−3に格納されるSRデー
タを1ビットずつ状態信号保持用FF43−1〜43−
3へ転送する(ステップS9,S10)。
【0049】各状態信号保持用FF43−1〜43−3
に所定ビット数(分割単位長)のSRデータが格納され
ると(ステップS10でYES判定の場合)、各SRデ
ータは、選択回路44に対して転送されると同時に、マ
スクレジスタ12からそのSRデータに対応するPE1
0についてのマスク情報が読み出される(ステップS1
1)。
【0050】そして、マスク演算回路13において、選
択回路44により選択・出力されたSRデータとマスク
レジスタ12からのマスク情報との論理積を算出するこ
とにより、同期対象外のPE10についてのSRデータ
をマスクしてから(ステップS12)、本実施形態で
は、同期処理部14のALL1検出回路14Bにより、
マスク演算回路13からのSRデータが全て“1”にな
っているか否か、つまり現在実行中の処理を同期対象の
全てのPE10で完了したかどうかを認識する(ステッ
プS13)。
【0051】SRデータが全て“1”になっていない場
合には、ステップS7に戻って同様の処理を繰り返し、
SRデータが全て“1”になるまで待機する。また、S
Rデータが全て“1”になった場合にはその旨を1同期
信号としてCPU15に報告し、CPU15は別のジョ
ブを実行する(ステップS14)。次に、上述した本実
施形態の並列処理システムについてのより詳細な構成や
動作(作用効果等も含む)を、図4〜図14を参照しな
がら説明する。
【0052】本実施形態の並列処理システムでは、相互
装置20から各PE10へ状態情報を送るための放送信
号線30−1〜30−3を複数組(ここでは3組)そな
え、各放送信号線30−1〜30−3に対して位相差を
付けて状態情報を送出することにより、後述のごとく、
各放送信号線30−1〜30−3毎にPE10内で同期
処理をパイプライン処理的に実現することができる。
【0053】パイプライン処理を行なわない場合のPE
構成を図4に示す。この図4では、状態情報を送信する
ための信号線の本数を単純に1本から3本に増やした時
の構成例で、図2に示す本実施形態のものと比較しても
明らかなように、図4に示すPE構成では、図2に示す
選択回路44に代えて一点鎖線で囲んだ部分の要素が必
要になる。
【0054】つまり、各信号線毎に、マスクレジスタ1
2,マスク演算回路13および同期処理部14が必要に
なるとともに、3つの同期処理部14からの同期信号の
論理和を算出するための2つのOR回路17が必要にな
る。本実施形態では、相互接続装置20からの転送速度
よりも各PE10内での処理速度の方が速いことに着目
し、各PE10内での同期処理をパイプライン処理化す
ることで、図4に示す一点鎖線領域内のハードウェアを
削減し、各PE10内のハードウェア量を削減しなが
ら、同期処理の高速化も実現している。
【0055】ところで、本実施形態における相互接続装
置20では、前述した通り、状態レジスタ21に保持さ
れた各PE10の状態情報をシリアル化し、そのシリア
ルデータが、位相差設定FF23に設定された値に応じ
た所定位相差を付与されながら、3組の放送信号線30
−1,30−2,30−3を通じて全てのPE10へ放
送される。
【0056】このようなデータ送信を可能にするための
状態レジスタ21および状態情報送信回路22の構成に
ついて、図5を参照しながらより詳細に説明する。な
お、以下に説明する例では、最大構成時に300台のP
E10(PE番号を00〜299 として記す)がそなえられ
るものとし、この図5に示す状態レジスタ21では、こ
れら300台のPE10の状態信号を、300個そなえ
られた各1ビットレジスタ21Aに保持できるようにな
っている。また、前述した通り、状態レジスタ21に保
持された状態情報は、3組の放送信号線30−1〜30
−3を通じて全てのPE10に放送されるものとする。
【0057】各1ビットレジスタ21Aには、対応する
PE10の状態信号、もしくは、隣接する1ビットレジ
スタ21Aの状態信号(PE番号の一つ大きなPEの状
態信号)のいずれか一方が、セレクタ21Bを介してセ
ットされるようになっている。つまり、各1ビットレジ
スタ21Aの入力側には、各PE10からの信号線31
と、隣接する1ビットレジスタ21Aの出力線としての
シフト用信号線21Cとがセレクタ21Bを介して接続
されている。そして、セレクタ21Bは、コントローラ
25により切替制御されるようになっている。
【0058】また、本実施形態では、300台のPE1
0についての状態情報を、3組の放送信号線30−1〜
30−3へ、位相差設定FF23に設定された所定位相
差をつけてそれぞれ出力するために、PE番号00,100,2
00のPE10の状態信号を保持する1ビットレジスタ2
1Aの出力線が、それぞれ出力用スイッチ26−1,2
6−2,26−3を介して放送信号線30−1,30−
2,30−3に接続されている。各出力用スイッチ26
−1〜26−3はコントローラ25によりオン/オフ制
御(ヘッダ制御)され、所定のヘッダ(HD)の後に続
けて状態レジスタ21内のデータ(状態情報)をSR
,SR,SRとして出力するようになっている。
【0059】図5に示す構成の状態レジスタ21では、
コントローラ25により各セレクタ21Bおよび出力用
スイッチ26−1〜26−3の状態を制御することで、
各PE10の状態信号を各1ビットレジスタ21Aに取
り込むか、または、状態レジスタ21の値を隣接する1
ビットレジスタ21Aに順次シフトさせながら3組の放
送信号線30−1〜30−3へシリアル状態でSR,
SR,SRとして出力・放送することができる。
【0060】コントローラ25は、カウンタ等により簡
易に構成できる。つまり、このコントローラ25は、状
態情報SR,SR,SRの送信を制御するための
カウンタ(図示せず)を有しており、例えば、位相差設
定FF23の設定値が“0”の場合には位相差無しで、
その設定値が“10”の場合には位相差を10として送
信を行なえるようになっている。
【0061】具体的には、各放送信号線30−1〜30
−3には、状態情報SR,SR,SRが図6に示
すようなタイミングで送出される。その位相差は、同期
処理部14での処理が衝突・干渉しないように(つまり
選択回路44に対して同時に2以上の状態情報保持用F
F43−1〜43−3のデータが出力されないように)
設定される。
【0062】本実施形態の並列処理システムが100台
のPE10を有して構成される場合、図7に示すように
位相差を設定することが効率上望ましい。即ち、状態情
報SR,SR,SRの送信位相差を100/3程
度(100/3程度のビット数のデータを転送するのに
要する時間)に設定する。このとき、状態レジスタ21
内のPE番号100 以上のレジスタ21Aには、PE番号
00〜99のPE10についての状態信号を重複して格納す
るか、もしくは、ダミー転送としてPE番号100 以上の
レジスタ21Aにおける情報は無視するものとする。た
だし、以下の説明では、前者、つまりPE番号00〜99の
PE10についての状態信号を重複して格納しているも
のとして説明する。
【0063】以上説明してきた通り、本実施形態の並列
処理システムでは、PE台数の変化に応じて、各放送信
号線30−1〜30−3への状態情報SR,SR,
SRの送信位相差を設定変更できることが極めて重要
な作用効果である。一方、本実施形態の並列処理システ
ムに、相互接続装置20から各PE10へ状態情報を送
るための信号線本数をPE10の台数に応じて設定する
ための信号線数設定機能をそなえることもできる。この
機能は、例えば、信号線数設定フリップフロップ(図示
せず)を相互接続装置20もしくは各PE10内にそな
えることにより実現され、この信号線数設定FFの値を
外部からのコマンド等何らかの手段により変化させるこ
とにより、その信号線数の信号線を用いてデータ転送を
行なうように制御することができる。
【0064】例えば、上述した並列処理システムにおい
てPE10が2台である場合には、2組の放送信号線し
か必要ないものと考えられる。つまり、図8に示すよう
に、2台のPE10についての状態情報を送信する際、
状態情報SRとSRとが衝突してしまう。このと
き、同期処理部14で処理が衝突しないようにデータ転
送間隔をあけようとすると、処理効率が悪くなってしま
う。
【0065】このような場合、上記信号線数設定機能に
より、データ転送に使用する信号線の本数を2と設定す
れば、例えば放送信号線30−1と30−2との2本を
使用して状態情報の転送が行なわれ、データ衝突を招く
ことなく、効率よい処理を行なうことが可能になる。な
お、上述のごとくPE10を2台とした場合、状態レジ
スタ21内のPE番号02以上のレジスタ21Aには、P
E番号00,01のPE10についての状態信号を重複して
格納するか、もしくは、ダミー転送としてPE番号02以
上のレジスタ21Aにおける情報は無視するものとす
る。また、状態情報SRとSRとの転送位相差は2
(2ビット分のデータを転送するのに要する時間)とす
る。
【0066】また、このとき、信号線数設定機能により
設定された使用信号線の本数に応じて、状態情報の転送
位相差を設定するための位相差設定機能をそなえること
により、各PE10内で同期処理を効率よくパイプライ
ン処理化することができる。例えば図8に示したケース
では、2回目以降のデータはSRとSRとで同じに
なるが、例えば図9に示すように、上記位相差設定機能
により位相差を1(1ビット分のデータを転送するのに
要する時間;ただし同期処理部14で処理の衝突が発生
しない間隔)に設定することで、SRとSRとの位
相がずれて効率のよい状態情報転送を実現することがで
きる。
【0067】さらに、このとき、上記位相差設定機能に
より、位相差を、〔転送長設定機能により設定された転
送長(転送長設定FF24に設定された値)〕/〔信号
線数設定機能により設定された使用信号線の本数〕の倍
数に設定する。例えば、信号線mと信号線m+1とによ
り、所定位相差をあけて相互接続装置20から各PE1
0へ状態情報が送信されるものとすると、信号線mによ
り転送されるPE10内の同期処理の結果(状態情報)
が、信号線m+1による状態情報転送に間に合えば、比
較的効率のよい同期処理を実現することができる。
【0068】また、信号線mと信号線m+1とによる転
送間隔が非常に短いと、信号線mによる同期処理と信号
線m+1による同期処理とが各PE10内のパイプライ
ン処理で干渉を起こす可能性がある。これら2つの状況
の中間的な値である、上述した転送長/信号線数の倍数
を位相差と設定することにより、比較的効率よいデータ
転送および同期処理を実現することが可能になる。
【0069】例えば図10に示すように、本実施形態の
並列処理システムが100台のPE10を有して構成さ
れる場合、図7でも示したように、状態情報SR,S
R,SRの送信位相差を100/3程度(100/
3程度のビット数のデータを転送するのに要する時間)
に設定する。このとき、状態情報SRのうち最後の1
00/3分のデータはSRの状態情報よりも新しく、
同様に、状態情報SRのうち最後の100/3分のデ
ータはSRの状態情報よりも新しい。つまり、所定位
相差で並列的に状態情報の送信を行なうことで、最新の
状態情報を同期処理に反映することが可能で、同期処理
を完了するまでの時間を短縮でき、効率のよい同期処理
が可能になる。
【0070】図2に示した本実施形態の並列処理システ
ムにおいて、ここまで説明してきた手法により、相互接
続装置20から各PE10へ状態情報を転送して同期処
理を行なう場合のタイミングチャートを、図11に示
す。図11中の〜は、それぞれ状態情報SR〜S
Rについての処理に係わるものであることを示してい
る。
【0071】ところで、本実施形態の並列処理システム
では、3組の放送信号線30−1〜30−3のうちの一
つに着目した時、カウンタ42−1〜42−3およびP
E内転送長設定FF45の機能により、各PE10で受
信する状態情報は幾つかのブロックに分割され、その単
位毎にパイプライン処理が行なわれる。図2に示した本
実施形態の並列処理システムにおいて、各PE10にお
いて状態情報SR〜SRを3つのブロックに分割し
て取り扱いながら同期処理を行なう場合のタイミングチ
ャートを、図12に示す。図12中の〜は、図11
と同様、それぞれ状態情報SR〜SRについての処
理に係わるものであることを示している。
【0072】このようなブロック化を行なうことで、各
PE10における状態情報保持用FF43−1〜43−
3のビット数を大幅に減らすことができ、ハードウェア
量を削減できるほか、図12に示すごとく、同期処理部
14の稼働率も向上しCPU15への同期チェック結果
の報告回数も増えることから、同期処理が早く終わる可
能性が高くなることは明確である。
【0073】また、そのブロックの長さは、前述したよ
うにPE内転送長設定FF45における設定値を変更す
ることにより調節することが可能である。通常、システ
ム最大構成時のPE台数が300台である場合、図13
(a)に示すように、必ず300台分の状態情報を送る
ことを前提としていたが、例えばPE内転送長設定FF
45(転送長設定FF24)に1バイトを設定すること
により、図13(b)に示すように1バイト単位のデー
タ転送が可能になる。
【0074】このような設定を可能にすることで、相互
接続装置20内で状態レジスタ21へ各PE10の状態
信号を重複して入力したり、ダミー転送を行なったりす
る必要がなくなる。また、相互接続装置20を、PE1
0の最大構成数よりも小さいものに対応して作れるもの
とすると(PE台数に応じて相互接続装置20が複数種
類存在する場合)、その最大構成数よりも小さい場合に
対応して用いられる相互接続装置20の状態レジスタ2
1のビット数を大幅に減らすことができる。
【0075】このようなブロック化の他の具体例を図1
4に示す。例えば32台のPE10の同期処理を行なう
場合を考える。簡単化のため相互接続装置20から1本
の信号線を用いて状態レジスタ21の値を送るものとす
る。1バイト毎にパリティ(P)を1ビット付け最後に
“0”を付加した10ビットのデータを一つの転送単位
とする。1本の信号線で送信するため、状態レジスタ2
1の転送が始まったことを示すために、10ビット
“1”を連続させたヘッダ(HD)と呼ぶデータ列を必
ず転送の先頭に付与する。このヘッダが、前述したヘッ
ダ検出回路41−1〜41−3により検出され、その検
出後に、カウンタ42−1〜42−3の機能によりデー
タのブロック化が行なわれる。
【0076】各PE10では、上述のヘッダを受信して
から状態情報を各HLDFF43−1〜43−3にセッ
トし始める。本来、32台のPE10の情報を受け取る
ためには32ビット分の受信用フリップフロップが必要
であるが、本実施形態では、1バイト分の状態情報を受
け取った時点で同期処理の次段へ転送を始める構成にす
ることにより、各HLDFF43−1〜43−3は、8
ビットのデータと1ビットのパリティとの9ビット分の
容量で済み、しかも、1バイト分のデータを受信する毎
に次段へ送るパイプライン構造とすることで、同期処理
時間を大幅に短縮することができる。
【0077】また、状態情報の1バイト受信を行なった
場合にその情報を次段に送る構成にすると、同期処理部
14の次段に、図15に示すように、1ビットレジスタ
18A−1〜18A−4,18B−1〜18B−4およ
びANDゲート19A,19Bからなる回路を追加する
だけで、他の部分(HLDFF等)のハードウェア量を
削減することができる。
【0078】ここでは、ALL0検出回路14Aに対応
して、その出力側に1ビットレジスタ18A−1〜18
A−4およびANDゲート19Aが追加されるととも
に、ALL1検出回路14Bに対応して、その出力側に
1ビットレジスタ18B−1〜18B−4およびAND
ゲート19Bがそなえられている。1ビットレジスタ1
8A−1,18B−1は、PE番号0〜7のPE10の
状態信号が全て“0”または“1”になった場合に
“1”を設定されるものであり、以下同様に、1ビット
レジスタ18A−2,18B−2は、PE番号8〜15
のPE10の状態信号が全て“0”または“1”になっ
た場合に“1”を設定されるものであり、1ビットレジ
スタ18A−3,18B−3は、PE番号16〜23の
PE10の状態信号が全て“0”または“1”になった
場合に“1”を設定されるものであり、1ビットレジス
タ18A−4,18B−4は、PE番号0〜7のPE1
0の状態信号が全て“0”または“1”になった場合に
“1”を設定されるものである。
【0079】そして、ANDゲート19Aは、1ビット
レジスタ18A−1〜18A−4の論理積を算出し、そ
の論理積結果を0同期信号としてCPU15に出力する
ものであり、ANDゲート19Bは、1ビットレジスタ
18B−1〜18B−4の論理積を算出し、その論理積
結果を1同期信号としてCPU15に出力するものであ
る。
【0080】ここで、同期処理を2バイト毎のパイプラ
イン処理により実行できるように構成し、並列処理シス
テムが8台のPE10のモデル構成を有する場合につい
て考えると、相互接続装置20から送られる状態情報の
値の有効範囲は8ビット(=1バイト)であり、2バイ
ト毎のパイプライン処理に固定されていると、同期処理
完了までの時間が長引くことになる。
【0081】本実施形態では、PE内転送長設定FF4
5(転送長設定FF24)の値を変更するだけで、同期
処理を2バイト毎から1バイト毎のパイプライン処理に
より実行することができ、2バイト分のデータを受信す
るまで後続の処理を待つ必要がなくなり、1バイト分の
データを受信すると同時に後続処理の実行が可能で、ダ
ミーサイクルがなくなり高速な処理を実現できる。
【0082】なお、本実施形態では、各PE10が、同
期対象となるPE10についての情報であるマスク情報
をマスクレジスタ12に予め保持しているが、上述のよ
うなパイプライン処理を行なう場合、全てのマスク情報
を読み出す必要はなく処理中のPE10についてのマス
ク情報のみ部分的に必要になる。従って、マスクレジス
タ12は、保持情報の一部分しか読み出せない記憶素子
(マスク情報の部分的読出可能な記憶素子)、例えばR
AMやレジスタファイル等で構成すればよい。
【0083】図16には、マスクレジスタ用RAM12
Aをそなえた場合の並列処理システムの構成例を示す。
マスクレジスタ用RAM12Aは、図17に示すよう
に、例えば1エントリ(または1アドレス)について1
6ビット分のデータを保存するRAMであり、“1”を
設定されたPEが同期対象であり、“0”を設定された
PEは同期対象外であるとする。図17のアドレス0の
例について説明すると、PE番号1,3,10,11,
13,15のPEが同期対象であり、それ以外のPEが
同期対象外である。また、アドレス1には、PE番号1
6〜31のPEについてのマスク情報が、アドレス2に
は、PE番号32〜47のPEについてのマスク情報が
格納される。
【0084】同期対象のPEについてのマスク情報を指
定するアドレス情報が、選択回路44からのデータに乗
っており(各カウンタ42−1〜42−3の計数値で認
識可能)、そのアドレス情報によってマスクレジスタ用
RAM12Aから対応するPEについてのマスク情報が
読み出され、マスク演算回路13へ与えられるようにな
っている。つまり、前述したブロック単位でマスク情報
をRAM12Aから部分的に読み出し、ある単位時間毎
にこれを繰り返すことにより、パイプラインでマスク処
理や以下の同期処理を行なうことができる。上述のごと
く、RAM12Aによりマスクレジスタ(マスク情報記
憶部)を構成することで、PE台数が増加してマスク情
報の量が増大した時に有利になる。
【0085】このように、本発明の一実施形態によれ
ば、状態レジスタ21の内容が、3組の放送信号線30
−1〜30−3を用い、状態情報送信回路22により所
定位相差で各PE10へ並列的に送信されるので、各P
E10において同期処理をパイプライン処理的に実行す
ることができ、最新の状態情報を用いて同期処理を行な
え、ハードウェア量の増加を抑えながら、同期処理を大
幅に高速化できる。
【0086】また、各種設定機能により状態情報の転送
等を行なう際の各種設定条件を変更できるので、モデル
構成によりPE台数が変化しても容易に対応することが
でき、スケーラブルな同期処理を実現できる。さらに、
各PE10において、3組の放送信号線30−1〜30
−3毎にFF40−1〜40−3,43−1〜43−3
をそなえ、選択回路44により各FF43−1〜43−
3の状態情報が適宜選択されてマスク演算回路13へ出
力されるので、各PE10と相互接続装置20との間に
介設される信号線本数を増やしても、増やした信号線の
ためのFFを増設するだけで対応することができ、各P
E10内のハードウェア量の増大や同期処理の長期化を
招くことがない。
【0087】なお、上述した実施形態では、信号線数が
3である場合や、PE10を種々の台数そなえた場合に
ついて説明しているが、本発明は、これらの数値に限定
されるものではない。
【0088】
【発明の効果】以上詳述したように、本発明の並列処理
システムによれば、状態記憶部の内容が、複数本の信号
線を用い、送信回路により所定位相差で各処理装置へ並
列的に送信されるので、各処理装置において同期処理を
パイプライン処理的に実行することができ、最新の状態
情報を用いて同期処理を行なえ、ハードウェア量の増加
を抑えながら、同期処理を大幅に高速化できる効果があ
る(請求項1)。
【0089】なお、位相差設定手段,転送長設定手段,
信号数設定手段,単位長設定手段により状態情報の転送
等を行なう際の各種設定条件を変更できるので、モデル
構成により処理装置台数が変化しても容易に対応するこ
とができ、スケーラブルな同期処理を実現できる効果も
ある(請求項2〜8)。また、各処理装置におけるマス
ク情報記憶部およびマスク処理部により、各処理装置の
状態情報のうち同期対象外の他処理装置についての状態
情報がマスクされるので、同期対象の処理装置について
の状態情報を用いて同期処理を行なうことができる(請
求項9〜11)。
【0090】さらに、各処理装置において、複数本の信
号線毎に受信用記憶部をそなえ、選択回路により各受信
用記憶部の状態情報が適宜選択されてマスク処理部へ出
力されるので、各処理装置と相互接続装置との間に介設
される信号線の本数を増やしても、増やした信号線のた
めの受信用記憶部を増設するだけで対応することがで
き、各処理装置内のハードウェア量の増大や同期処理の
長期化を招くことがない(請求項12)。
【図面の簡単な説明】
【図1】本発明の原理ブロック図である。
【図2】本発明の一実施形態としての並列処理システム
を示すブロック図である。
【図3】本実施形態の動作を説明するためのフローチャ
ートである。
【図4】本実施形態の作用効果を説明すべくパイプライ
ン処理を行なわない場合の処理装置(PE)の構成を示
すブロック図である。
【図5】本実施形態の相互接続装置における状態レジス
タおよび送信回路の詳細構成を示すブロック図である。
【図6】本実施形態の動作を説明するためのタイミング
チャートである。
【図7】本実施形態の動作を説明するためのタイミング
チャートである。
【図8】本実施形態の動作を説明するためのタイミング
チャートである。
【図9】本実施形態の動作を説明するためのタイミング
チャートである。
【図10】本実施形態の動作を説明するためのタイミン
グチャートである。
【図11】本実施形態の動作を説明するためのタイミン
グチャートである。
【図12】本実施形態の動作を説明するためのタイミン
グチャートである。
【図13】(a),(b)はそれぞれ従来技術および本
実施形態における状態情報の転送長を説明するための図
である。
【図14】本実施形態における状態情報の転送データ列
の具体例を示す図である。
【図15】本実施形態における処理装置の変形例を示す
ブロック図である。
【図16】本実施形態における処理装置の他の変形例を
示すブロック図である。
【図17】図16に示す処理装置の変形例におけるマス
クレジスタの構成を説明するための図である。
【図18】バリア同期機能を有する一般的な並列処理シ
ステムの構成を示すブロック図である。
【図19】一般的なバリア同期処理を説明するための図
である。
【符号の説明】
1 処理装置 2 相互接続装置 2A 状態レジスタ 2B 送信回路 3 信号線 10 PE(プロセッサエレメント,処理装置) 11 状態情報受信回路 12 マスクレジスタ(マスク情報記憶部) 12A マスクレジスタ用RAM(マスク情報記憶部) 13 マスク演算回路(マスク処理部) 14 同期処理部 14A ALL0検出回路 14B ALL1検出回路 15 CPU 16 状態信号フリップフロップ 17 OR回路 18A−1〜18A−4,18B−1〜18B−4 1
ビットレジスタ 19A,19B ANDゲート 20 相互接続装置 21 状態レジスタ(状態記憶部) 21A 1ビットレジスタ 21B セレクタ(状態情報送信回路) 21C シフト用信号線(状態情報送信回路) 22 状態情報送信回路 23 位相差設定フリップフロップ(位相差設定手段) 24 転送長設定フリップフロップ(転送長設定手段) 25 コントローラ(状態情報送信回路) 26−1,26−2,26−3 出力用スイッチ(状態
情報送信回路) 30−1,30−2,30−3 放送信号線 31 状態信号線 40−1,40−2,40−3 状態信号受信用フリッ
プフロップ(ST−FF,受信用記憶部) 41−1,41−2,41−3 ヘッダ検出回路(H
D) 42−1,42−2,42−3 カウンタ(CTR) 43−1,43−2,43−3 状態信号保持用フリッ
プフロップ(HLDFF,受信用記憶部) 44 選択回路 45 PE内転送長設定フリップフロップ(単位長設定
手段)

Claims (12)

    【特許請求の範囲】
  1. 【請求項1】 複数台の処理装置と、該複数台の処理装
    置を相互に通信可能に接続する少なくとも1台の相互接
    続装置とを有し、該相互接続装置が、各処理装置の状態
    情報を保持する状態記憶部と、該状態記憶部に保持され
    た前記の各処理装置の状態情報を該複数台の処理装置へ
    送信する送信回路とをそなえて構成され、前記の各処理
    装置が、該相互接続装置から送信されてきた前記の各処
    理装置の状態情報に基づいて他の処理装置の動作と同期
    させながら、処理を行なう並列処理システムにおいて、 該相互接続装置と前記の各処理装置との間に、前記の各
    処理装置の状態情報を該相互接続装置から該複数台の処
    理装置へ送信するための信号線が複数本介設され、 該送信回路が、該状態記憶部の内容を所定位相差で該複
    数本の信号線に順次送り出して前記の各処理装置へ並列
    的に送信することを特徴とする、並列処理システム。
  2. 【請求項2】 前記所定位相差を設定するための位相差
    設定手段がそなえられていることを特徴とする、請求項
    1記載の並列処理システム。
  3. 【請求項3】 該送信回路により該状態記憶部から該複
    数本の信号線へ送り出すデータの転送長を設定するため
    の転送長設定手段がそなえられていることを特徴とす
    る、請求項1記載の並列処理システム。
  4. 【請求項4】 該複数本の信号線のうちでデータ転送に
    使用する信号線の本数を、該処理装置の台数に応じて設
    定するための信号線数設定手段がそなえられていること
    を特徴とする、請求項3記載の並列処理システム。
  5. 【請求項5】 該信号線数設定手段により設定された使
    用信号線の本数に応じて、前記所定位相差を設定するた
    めの位相差設定手段がそなえられていることを特徴とす
    る、請求項4記載の並列処理システム。
  6. 【請求項6】 該位相差設定手段により、前記所定位相
    差が、〔該転送長設定手段により設定された転送長〕/
    〔該信号線数設定手段により設定された使用信号線の本
    数〕の倍数に設定されることを特徴とする、請求項5記
    載の並列処理システム。
  7. 【請求項7】 各信号線を通じて該送信回路により送信
    される前記の各処理装置の状態情報が、複数のブロック
    に分割され、前記の各処理装置が、該ブロック毎に処理
    を行なうことを特徴とする、請求項1記載の並列処理シ
    ステム。
  8. 【請求項8】 該ブロックの分割単位長を設定するため
    の単位長設定手段がそなえられていることを特徴とす
    る、請求項7記載の並列処理システム。
  9. 【請求項9】 前記の各処理装置に、 自処理装置と同期すべき他処理装置に関する情報をマス
    ク情報として予め保持するマスク情報記憶部と、 該マスク情報記憶部に保持されたマスク情報に基づい
    て、該複数の信号線を通じて受信した前記の各処理装置
    の状態情報のうち同期対象外の他処理装置についての状
    態情報をマスクするマスク処理部とがそなえられている
    ことを特徴とする、請求項1〜請求項6のいずれかに記
    載の並列処理システム。
  10. 【請求項10】 前記の各処理装置に、 自処理装置と同期すべき他処理装置に関する情報をマス
    ク情報として予め保持するマスク情報記憶部と、 該マスク情報記憶部に保持された前記マスク情報に基づ
    いて、該複数の信号線を通じて受信した前記の各処理装
    置の状態情報のうち同期対象外の他処理装置についての
    状態情報をマスクするマスク処理部とがそなえられてい
    ることを特徴とする、請求項7または請求項8に記載の
    並列処理システム。
  11. 【請求項11】 該マスク情報記憶部が、前記マスク情
    報の部分的読出可能な記憶素子により構成され、 該マスク処理部が、前記ブロック毎に、当該ブロックに
    対応する部分の前記マスク情報を該マスク情報記憶部か
    ら部分的に読み出してマスク処理を行なうことを特徴と
    する、請求項10記載の並列処理システム。
  12. 【請求項12】 前記の各処理装置に、 該複数本の信号線を通じて送信されてきた前記状態情報
    をそれぞれ一時的に保持する複数の受信用記憶部と、 該複数の受信用記憶部のうちの一つを適宜選択し、選択
    した受信用記憶部に保持されている前記状態情報を該マ
    スク処理部へ出力する選択回路とがそなえられているこ
    とを特徴とする、請求項9〜請求項11のいずれかに記
    載の並列処理システム。
JP24029895A 1995-09-19 1995-09-19 並列処理システム Expired - Fee Related JP3526492B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP24029895A JP3526492B2 (ja) 1995-09-19 1995-09-19 並列処理システム
US08/640,227 US5809255A (en) 1995-09-19 1996-04-30 Parallel processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP24029895A JP3526492B2 (ja) 1995-09-19 1995-09-19 並列処理システム

Publications (2)

Publication Number Publication Date
JPH0981525A true JPH0981525A (ja) 1997-03-28
JP3526492B2 JP3526492B2 (ja) 2004-05-17

Family

ID=17057394

Family Applications (1)

Application Number Title Priority Date Filing Date
JP24029895A Expired - Fee Related JP3526492B2 (ja) 1995-09-19 1995-09-19 並列処理システム

Country Status (2)

Country Link
US (1) US5809255A (ja)
JP (1) JP3526492B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006046482A1 (ja) * 2004-10-27 2006-05-04 Matsushita Electric Industrial Co., Ltd. マルチプロセッサシステム、同期制御装置及び同期制御方法
JP2012529706A (ja) * 2009-06-10 2012-11-22 ザ・ボーイング・カンパニー 共有項ベースの分散型タスクの実行

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19536518C2 (de) * 1995-09-29 1998-07-09 Siemens Ag Verfahren zur Aufrechterhaltung des mikrosynchronen Betriebs von gedoppelten informationsverarbeitenden Einheiten
US7324220B1 (en) 2001-07-09 2008-01-29 Lexmark International, Inc. Print performance under the windows® operating system
CN104714902B (zh) * 2013-12-12 2018-08-14 华为技术有限公司 一种信号处理方法及装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0778750B2 (ja) * 1985-12-24 1995-08-23 日本電気株式会社 高信頼性コンピュータ方式
US4918686A (en) * 1987-07-27 1990-04-17 Hitachi, Ltd. Data transfer network suitable for use in a parallel computer
US4965717A (en) * 1988-12-09 1990-10-23 Tandem Computers Incorporated Multiple processor system having shared memory with private-write capability
JP2552784B2 (ja) * 1991-11-28 1996-11-13 富士通株式会社 並列データ処理制御方式
JPH06290079A (ja) * 1993-03-30 1994-10-18 Hitachi Ltd 情報処理システム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006046482A1 (ja) * 2004-10-27 2006-05-04 Matsushita Electric Industrial Co., Ltd. マルチプロセッサシステム、同期制御装置及び同期制御方法
JP2012529706A (ja) * 2009-06-10 2012-11-22 ザ・ボーイング・カンパニー 共有項ベースの分散型タスクの実行

Also Published As

Publication number Publication date
JP3526492B2 (ja) 2004-05-17
US5809255A (en) 1998-09-15

Similar Documents

Publication Publication Date Title
US5367636A (en) Hypercube processor network in which the processor indentification numbers of two processors connected to each other through port number n, vary only in the nth bit
EP0242882B1 (en) Storage control method and apparatus
EP0721164A2 (en) Crossbar switch apparatus and protocol
JPH06223042A (ja) マルチプロセッサ・システムにおいて割込みを管理するための装置及び方法
JPH06295336A (ja) ビデオ表示装置
EP1468372B1 (en) Asynchronous crossbar with deterministic or arbitrated control
JP3285629B2 (ja) 同期処理方法及び同期処理装置
US7222346B2 (en) System and method for the management of a multiple-resource architecture
US20060004980A1 (en) Address creator and arithmetic circuit
US6457121B1 (en) Method and apparatus for reordering data in X86 ordering
EP0295646A3 (en) Arithmetic operation processing apparatus of the parallel processing type and compiler which is used in this apparatus
JP3526492B2 (ja) 並列処理システム
EP1205840B1 (en) Stall control in a processor with multiple pipelines
EP1083487A2 (en) Configuration bus reconfigurable/reprogrammable interface for expanded direct memory access processor
EP0820007B1 (en) Pipelined computer
JP2003337807A (ja) クロスバの高速化方法及びクロスバの高速化方式
US20090319762A1 (en) Dynamic reconfigurable circuit and data transmission control method
JPS59148952A (ja) 優先順位回路
JP2944111B2 (ja) リクエスト制御方法及び記憶制御装置
JP2708172B2 (ja) 並列処理方法
US11940940B2 (en) External exchange connectivity
JPH07262142A (ja) 並列処理制御方式
EP0323080A2 (en) Multiprocessor memory access control system
US8060729B1 (en) Software based data flows addressing hardware block based processing requirements
JP2900581B2 (ja) 命令制御パイプライン構造

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040107

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040210

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040216

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20080227

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20090227

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20090227

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20100227

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees