JPH06187303A - 同期処理方法及び同期処理装置 - Google Patents
同期処理方法及び同期処理装置Info
- Publication number
- JPH06187303A JPH06187303A JP4338502A JP33850292A JPH06187303A JP H06187303 A JPH06187303 A JP H06187303A JP 4338502 A JP4338502 A JP 4338502A JP 33850292 A JP33850292 A JP 33850292A JP H06187303 A JPH06187303 A JP H06187303A
- Authority
- JP
- Japan
- Prior art keywords
- synchronization
- processing
- information
- synchronous
- register
- 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
Links
- 230000001360 synchronised effect Effects 0.000 title claims abstract description 236
- 238000000034 method Methods 0.000 title claims abstract description 112
- 238000003860 storage Methods 0.000 claims abstract description 61
- 238000003672 processing method Methods 0.000 claims abstract description 15
- 238000004891 communication Methods 0.000 claims abstract description 7
- 238000001514 detection method Methods 0.000 claims description 29
- 230000007704 transition Effects 0.000 claims description 10
- 230000014759 maintenance of location Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 33
- 230000002093 peripheral effect Effects 0.000 description 2
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/45—Exploiting coarse grain parallelism in compilation, i.e. parallelism between groups of instructions
- G06F8/458—Synchronisation, e.g. post-wait, barriers, locks
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
Abstract
る同期処理方法及び同期処理装置を提供する。 【構成】複数の処理手段1、通信手段2を備え、同期組
記憶手段11がプログラム毎に同期をとるべき処理手段
の組み合わせを示す同期組情報を記憶し、同期状態記憶
手段12が処理終了時に同期待ち状態に至ったことを示
す同期状態情報を記憶し、記憶制御手段8aが同期状態
情報を他の全ての処理手段に送出する。同期判定手段1
3は同期組情報が示す全ての処理手段から同期状態情報
を受信したかを判定し、同期組情報が示す全ての処理手
段1の同期状態情報を受信した場合、処理移行手段8は
その同期組情報が示す全ての処理手段に対してその同期
組情報に対応するプログラムの次の処理に移行させる。
Description
期をとりながら処理を実行する同期処理方法及び同期処
理装置に関する。
大容量化が要求されるに伴って、複数のプロセッサに処
理を分散させる分散処理技術が必要となってきた。
セッサが処理を並列的に行なうマルチプロセッサシステ
ムが提供されている。このマルチプロセッサシステム
は、各プロセッサが通信手段を介して互いに通信を行
い、各プロセッサが並列に動作してプロセッサ全体であ
るまとまった処理を実行する。これによれば、1つの仕
事に対する処理の高速化を図ることができる。
は、並列処理を行う各々のプロセッサが複数のフェーズ
からなる処理を同期しながら実行しなければならない場
合がある。この同期処理は次の動作により行われる。ま
ず、処理を早く終了したプロセッサが同期待ち状態に到
達したことを検出する。次に、処理を早く終了したプロ
セッサは他の同期をとるべきプロセッサの処理が終了す
るのを待つ。すなわち、同期をとるべき他の全てのプロ
セッサが同期待ち状態に到達するのを待つ。そして、全
てのプロセッサが同期待ち状態に到達したことを検出し
たとき、全てのプロセッサが次の処理を行う。
に設けられた同期処理部で行われる。この同期処理部
は、同期状態レジスタ、同期受信部、同期検出部を有し
ている。
は自己の同期状態レジスタに、プロセッサが同期待ち状
態に到達したことを示す同期状態情報(例えば”1”)
をセットする。そして、通信手段を介して他の全てのプ
ロセッサにその同期状態情報を送出し、他の全てのプロ
セッサ内の同期受信部にその同期状態情報をセットす
る。次に処理を終了したプロセッサは、自己の同期状態
レジスタに同期状態情報をセットし、他の全てのプロセ
ッサにその同期状態情報を送出する。さらに、他の全て
のプロセッサ内の同期受信部にその同期状態情報をセッ
トする。
が同期状態情報をセットし、他の全てのプロセッサ内の
同期受信部にその同期状態情報をセットする。ここで、
同期検出部が、同期受信部にセットされたプロセッサ数
分の同期状態情報を検出すると、全てのプロセッサは同
期したとみなして次の処理に移行する。
同期処理部は、1組の同期状態レジスタ、同期受信部、
同期検出部を設けていたため、1つのプロセッサで1つ
のプロセス(1つのプログラム)しか実行することがで
きなかった。また、従来の同期処理部では、複数のプロ
セッサの内、あるプログラムに同期すべきいくつかのプ
ロセッサを割り当てかつ別のプログラムに同期すべき残
りのプロセッサを割り当てることができなかった。この
ため、複数の並列処理プログラムを効率良く実行するこ
とができなかった。
もので、その目的とするところは、複数の並列処理プロ
グラムを効率良く実行することのできる同期処理方法及
び同期処理装置を提供することにある。
決し目的を達成するために下記の構成とした。図1は本
発明に係る同期処理装置の原理図である。図2は本発明
に係る同期処理方法の原理フローである。
実行する複数の処理手段1、複数の処理手段1の間で相
互に情報を転送する通信手段2を備え、各々の処理手段
1が同期をとって処理を実行する。各々の処理手段1
は、同期組記憶手段11、同期状態記憶手段12、記憶
制御手段8a、同期判定手段13、処理移行手段8を有
する。同期組記憶手段11は複数の処理手段1でいくつ
かのプログラムを処理するためにプログラム毎に同期を
とるべき処理手段の組み合わせを示す同期組情報を記憶
する。
処理を終了したときに同期待ち状態に至ったことを示す
同期状態情報を記憶する。記憶制御手段8aは同期状態
記憶手段12に同期状態情報を記憶させると共に同期状
態情報を他の全ての処理手段に送出する。
記憶された同期組情報に基づき同期組情報により示され
る全ての処理手段から同期状態情報を受信したか否かを
判定する。
組情報により示される全ての処理手段1から同期状態情
報を受信したと判定した場合、その同期組情報により示
される全ての処理手段に対してその同期組情報に対応す
るプログラムの次の処理に移行させる。
は、複数の処理手段の間で相互に情報を転送することに
より各々の処理手段が同期をとって処理を実行する。同
期組記憶ステップ101は、複数の処理手段でいくつか
のプログラムを処理するためにプログラム毎に同期をと
るべき処理手段の組み合わせを示す同期組情報を記憶す
る。
手段が処理を終了したときに同期待ち状態に至ったこと
を示す同期状態情報を記憶する。情報送出ステップ10
3は同期状態情報を他の全ての処理手段に送出する。
に基づき同期組情報により示される全ての処理手段から
同期状態情報を受信したか否かを判定する。処理移行ス
テップ105は、同期組情報により示される全ての処理
手段から同期状態情報が受信された場合、その同期組情
報により示される全ての処理手段に対してその同期組情
報に対応するプログラムの次の処理に移行させる。
とよい。処理手段は、例えばプロセッサであり、通信手
段は例えばネットワークである。記憶制御手段8aは同
期状態記憶手段12に対して処理毎に同期状態情報”
1”と同期状態情報”0”とを交互に繰り返し記憶する
ようにする。同期状態記憶手段12は1ビット長のレジ
スタを用いるとよい。
同期組情報を記憶させるようにする。また、記憶制御手
段8aと処理移行制御手段8とは複数の命令を実行する
命令処理部に設けてもよい。
態情報を受信してこれらの同期状態情報を同期判定手段
13に出力する同期受信部15を設けるようにする。同
期受信部15は、複数の処理手段の数に対応したビット
数のレジスタであってもよく、このレジスタは同期状態
情報を受信するとその同期状態情報を複数の処理手段に
対応付けたビット列に記憶するようにする。
同期状態情報と同期組記憶手段11からの同期組情報と
を論理演算してその同期組情報により示される全ての処
理手段から同期状態情報を受信したか否かを判定する論
理演算回路を含むように構成する。
に対応したビット数のレジスタであり、このレジスタは
複数の処理手段に対応付けたビット列の内、同期組情報
により示される同期をとるべき全ての処理手段に対応す
るビット列に同期状態情報”1”を記憶するようにす
る。
組情報により示される全ての処理手段から同期状態情報
を受信したか否かを示すための同期表示情報を記憶する
同期表示レジスタ14を設けるようにする。
示される全ての処理手段の数に対応したビット数のレジ
スタ16であり、さらに、このレジスタ16を各々の処
理手段1に割り付けるための制御レジスタ17を設ける
ようにする。
あり、2つのプログラムの処理を実行するために制御情
報”1”と”0”とにより2組の同期をとるべき処理手
段を割り付けるようにする。
報を放送するための放送線における情報のパリティエラ
ーを検出するパリティエラー検出部20を設ける。パリ
ティエラー検出部20が1ビットエラーを検出したとき
には、処理手段1はプログラムの処理を中断せずに処理
を続行するようにする。なお、1ビットエラーを検出し
た後に更に1ビットエラーを検出した場合には、処理手
段を中断するようにする。
ように構成される。各々の処理手段1は、複数の同期状
態記憶手段12、記憶制御手段8a、複数の同期判定手
段13、処理移行手段8を有する。複数の同期状態記憶
手段12は複数のプログラムに対応して設けられると共
に自己の処理手段が処理を終了したときに同期待ち状態
に至ったことを示す同期状態情報を夫々に記憶する。
段12の各々に対して同期状態情報を記憶させると共に
同期状態情報を全ての処理手段に送出する。複数の同期
判定手段13は前記複数の同期状態記憶手段12に対応
して設けられると共に夫々が他の全ての処理手段から同
期状態情報を受信したか否かを判定する。
のいずれか1つの同期判定手段がその同期判定手段に対
応する全ての同期状態記憶手段12から同期状態情報を
受信したと判定した場合、全ての処理手段に対してその
同期判定手段13に対応するプログラムの次の処理に移
行させる。
態記憶手段12と複数の同期判定手段13とに複数のプ
ログラムの同期処理又は1つのプログラムの同期処理の
いずれかを行わせるかを選択する選択手段18を設ける
ようにする。
は、記憶制御手段8aにより制御されるレジスタであっ
てもよい。第2の発明において、全ての処理手段から送
出されてくる同期状態情報を受信してこれらの同期状態
情報を複数の同期判定手段13に出力する複数の同期受
信部15を設けるようにする。
5に対応して同期状態情報を送出するための複数の同期
放送線を設け、複数のプログラムを処理するときには各
々の放送線を放送線に対応する同期受信部に接続し、1
つのプログラムを処理するときには各々の放送線を1つ
の同期受信部に接続するモード回路19を設けるように
する。
プログラムを処理するためにプログラム毎に同期をとる
べき処理手段の組み合わせを示す同期組情報を記憶す
る。そして、自己の処理手段が処理を終了したときに同
期待ち状態に至ったことを示す同期状態情報を記憶し、
同期状態情報を他の全ての処理手段に送出する。
り示される全ての処理手段から同期状態情報を受信した
か否かを判定する。さらに、同期組情報により示される
全ての処理手段から同期状態情報が受信された場合、そ
の同期組情報により示される全ての処理手段に対してそ
の同期組情報に対応するプログラムの次の処理に移行さ
せる。
の同期をとるべき処理手段の組み合わせが指定できるの
で、複数の処理手段でいくつかの複数ユーザの並列処理
プログラムを効率良く実行できる。
図3は本発明にかかる同期処理装置の実施例1を示す構
成ブロック図であり、図4はプロセッサの構成ブロック
図である。 <実施例1の構成>同期処理装置には、命令を実行する
複数のプロセッサ1−0〜1−nが設けられている。ま
た、同期処理装置には、この複数のプロセッサ1−0〜
1−nを相互に接続するとともに相互のプロセッサ1に
データ及び情報を送受信するネットワーク2が設けられ
ている。
1、同期放送部22を有している。転送ネットワーク部
21は、各々のプロセッサ1−0〜1−nに設けられた
データ転送部に転送する。同期放送部22は、各々のプ
ロセッサ1−0〜1−nの同期の状態を他のプロセッサ
の同期処理部10に放送する。
すように、主記憶装置7、命令処理部8、データ転送部
9、同期処理部10を有している。主記憶装置7は、複
数の命令からなるプログラムとデータとを記憶してい
る。命令処理部8は、主記憶装置7に接続され、主記憶
装置7のプログラムから命令を取り出してその命令を実
行する。
理部8、転送ネットワーク部21に接続され、主記憶装
置7と転送ネッワーク部21との間でデータの転送を行
う。図5は同期処理部10の構成ブロック図である。図
5において、同期処理部10は、命令処理部8、同期放
送部22に接続され、各々のプロセッサに対して同期処
理を行う。
12、同期マスクレジスタ11、同期受信部15、同期
検出部13、同期表示レジスタ14を有している。同期
状態レジスタ12は、命令処理部8からアクセスされ、
他のプロセッサと同期をとるべき同期待ち状態に至った
ことを示す同期状態情報を記憶する1ビット長のレジス
タである。同期状態レジスタ12は、自己の処理を終了
することにより他のプロセッサと同期をとるべき状態に
達したときプログラムによって例えば同期状態情報”
1”を記憶する。
によりアクセスされ、同期組情報を記憶するnビット長
のレジスタである。ここで、nはプロセッサの台数であ
る。この同期マスクレジスタ11は、自己のプロセッサ
と同期をとるべき他のプロセッサに対しては例えば同期
組情報”1”を記憶し、自己のプロセッサと同期をとる
べきでない他のプロセッサに対しては同期組情報”0”
を記憶する。
され、同期放送部22から放送されてくる他のプロセッ
サ内の同期状態レジスタ12の同期状態情報を受信し、
この同期状態情報を保持するレジスタである。
とには同期検出部13が接続される。この同期検出部1
3は、同期状態情報が全て”1”である状態と同期状態
情報が全て”0”である状態を検出する組合わせ回路で
ある。同期検出部13は、同期マスクレジスタ11の同
期組情報が”1”となっているプロセッサに対応する同
期状態情報が全て”1”であって、かつ同期表示レジス
タ14の情報が”0”である場合に同期表示レジスタ1
4にセット信号を送出する。
スタ11の同期組情報が”1”となっているプロセッサ
に対応する同期状態情報が全て”0”であって、かつ同
期表示レジスタ14の情報が”1”である場合に同期表
示レジスタ14にリセット信号を送出する。
全てのプロセッサの同期状態を表示する1ビット長のレ
ジスタであり、命令処理部8からアクセスされ、かつ同
期検出部13からもセット又はリセットされる。
図である。図6に示すようにビット列iがプロセッサi
に対応している。 <実施例1の動作>次に、このように構成された同期処
理装置により実現される同期処理方法を説明する。ここ
では、例えば、プログラムA,プログラムBの2つの異
なるユーザの並列プログラムが同期をとりながら実行さ
れる処理を以下に説明する。図7は2プログラムA,B
を動作した時の同期マスクレジスタの内容を示す図であ
る。図8はプログラムAの処理を示すフローである。
セッサ1−0〜1−7の8台とする。プログラムAはプ
ロセッサ1−0,1−1,1−3,1−4,1−5で実
行され、プログラムBはプロセッサ1−2,1−6,1
−7で実行されるものする。
1−1,1−3,1−4,1−5が同期をとって実行す
るに先立って、プロセッサ1−0,1−1,1−3,1
−4,1−5にそれぞれ有する同期マスクレジスタ11
に同期組情報として8ビットパターン”11011100”を設
定する(ステップ101)。
1−1,1−3,1−4,1−5が同期をとって実行す
るに先立って、各々のプロセッサの同期状態レジスタ1
2の同期状態情報及び同期表示レジスタの14の情報
は、”0”に設定する。
3,1−4,1−5が処理kの実行を開始する(ステッ
プ102)。ここで、kは最初は1であるが、処理を繰
り返す場合には、値をインクリメントする。
セッサ1−0,1−1,1−3,1−4,1−5は、プ
ログラムAにおいて、自己のプロセッサが処理を終了し
て、プロセッサ間で同期をとるべき状態に到達すると、
命令処理部8は同期状態レジスタ12の同期状態情報
に”1”を設定する(ステップ103)。
1”は、命令処理部8の制御の下にネットワーク2上の
同期放送部22に送出され(ステップ104)、同期状
態情報”1”が同期放送部22から他の全てのプロセッ
サに放送される。各々のプロセッサの同期受信部15
は、全てのプロセッサの同期状態レジスタ12の同期状
態情報”1”を受信する。そして、同期検出部13は同
期受信部15の同期状態情報と同期マスクレジスタ11
の同期組情報との論理演算を行うことにより同期を検出
する(ステップ105)。ここで、同期が検出できない
場合には、同期状態情報の受信を待つ(ステップ10
6)。このとき、プログラムAを実行している各々のプ
ロセッサの命令処理部8は、既に同期状態レジスタ12
に”1”を設定しており、他のプロセッサとの同期で不
要な処理が残存している場合には、その処理を実行す
る。
14を監視し、同期表示レジスタ14の情報に1がセッ
トされているか否かを判断する(ステップ107)。こ
こで、同期表示レジスタ14の情報に1がセットされて
いない場合には、情報が1となるのを待つ(ステップ1
06)。
ロセッサから同期情報を受信したときには同期表示レジ
スタ14の情報が”1”となるが、その動作を以下に説
明する。
るための同期検出部の構成ブロック図である。図8にお
いて、オア回路81−0〜81−(n−1)、ノット回
路82−0〜82−(n−1)、ノット回路83、アン
ド回路84が設けられる。
1−0〜1−n−1の同期状態情報が対応するオア回路
81−0〜81−(n−1)に入力される。例えば、オ
ア回路81−1には、同期受信部15からプロセッサ1
−1の同期状態情報が入力される。
ット0〜ビットn−1までの同期組情報”11011100”が
対応するノット回路82−0〜82−(n−1)に入力
される。また、ノット回路83に表示レジスタ14から
の情報”0”が入力される。
サでは、プロセッサ1−0,1−1,1−3,1−4,
1−5の同期状態情報が全て”1”となった場合に(他
のプロセッサの状態とは無関係)同期表示レジスタ14
に”1”がセットされる。例えば、同期受信部15から
のプロセッサ1−0の同期状態情報が”1”でマスクレ
ジスタ11の同期組情報が”1”のときにはオア回路8
1−0の出力は1であり、また、同期受信部15からの
プロセッサ1−2の同期状態情報が”0”であっても同
期マスクレジスタ11の同期組情報が”0”のときに
は、オア回路81−2の出力は1である。
3,1−4,1−5の同期状態情報が全て”1”となっ
た場合には、全てのオア回路の出力は”1”となり、ア
ンド回路84の出力は”1”となるので、同期表示レジ
スタ14に”1”がセットされる。
1”となると、命令処理部8はプログラムAに関連する
全てのプロセッサ1−0,1−1,1−3,1−4,1
−5が同期状態に到達したと認識して、引き続いて次の
処理k+1を続行する(ステップ108)。
て、プロセッサ間の同期をとるべき状態に到達すると、
同期状態レジスタ12に”0”をセットする(ステップ
109)。同期状態レジスタ12の同期状態情報”0”
はネットワーク2上の同期放送部22に送出され(ステ
ップ110)、同期状態情報”0”が同期放送部22か
ら他の全てのプロセッサに放送される。各々のプロセッ
サの同期受信部15は、全てのプロセッサの同期状態レ
ジスタ12の同期状態情報”0”を受信する。そして、
同期検出部13は同期受信部15の同期状態情報と同期
マスクレジスタ11の同期組情報との論理演算を行うこ
とにより同期を検出する(ステップ111)。ここで、
同期が検出できない場合には、同期状態情報の受信を待
つ(ステップ112)。このとき、プログラムAを実行
している各々のプロセッサの命令処理部8は、既に同期
状態レジスタ12に”0”を設定しており、他のプロセ
ッサとの同期で不要な処理が残存している場合には、そ
の処理を実行する。
14を監視し、同期表示レジスタ14の情報に0がセッ
トされているか否かを判断する(ステップ113)。こ
こで、同期表示レジスタ14の情報に0がセットされて
いない場合には、情報が0となるのを待つ(ステップ1
14)。
ロセッサから同期情報を受信したときには同期表示レジ
スタ14の情報が”0”となるが、その動作を以下に説
明する。
するための同期検出部の構成ブロック図である。図10
において、アンド回路85−0〜85−(n−1)、ノ
ット回路86、オア回路87、ノット回路88が設けら
れる。
1−0〜1−n−1の同期状態情報が対応するアンド回
路85−0〜85−(n−1)に入力される。同期マス
クレジスタ11から出力されるビット0〜ビットn−1
までの同期組情報”11011100”が対応するアンド回路8
5−0〜85−(n−1)に入力される。また、ノット
回路86に同期表示レジスタ14からの情報”1”が入
力される。
サでは、プロセッサ1−0,1−1,1−3,1−4,
1−5の同期状態情報が全て”0”となった場合には、
オア回路87の出力は”1”となり、ノット回路88の
出力は”0”となるので、同期表示レジスタ14に”
0”がセットされる。
0”となると、命令処理部8は、プログラムAに関連す
る全てのプロセッサ1−0,1−1,1−3,1−4,
1−5が同期状態に到達したと認識して、引続き次の処
理を進む。なお、このときに、このときに処理が全て終
了したか否かを判定する(ステップ114)。ここで、
処理が全て終了していない場合には、ステップ101に
戻り、ステップ101〜114までの処理を行う。
同期と同期状態情報”0”による同期とを繰り返して並
列に処理を進めてゆく。一方、以上のプログラムAの動
作とは全く独立にプログラムBが割り付けられたプロセ
ッサ1−2,1−6,1−7における同期マスクレジス
タ12には同期組情報としてビットパターン”0010001
1”が設定されている。プログラムBも、図8に示す処
理フローに従って、プログラムAと同様に同期状態情
報”1”による同期と同期状態情報”0”による同期が
とられながら並列に処理が進められてゆく。このように
プログラムAとプログラムBとは全く独立に同期処理を
繰り返しながら効率的に処理を進めてゆくことができ
る。
きプロセッサの組み合わせを示す同期組情報を記憶する
同期マスクレジスタを設けたので、プロセッサ台数より
も少ない複数ユーザの並列処理プログラムを効率良く実
行することができる。 <実施例2>次に、本発明の実施例2について説明す
る。実施例2が実施例1に対して特徴とするところは、
同期処理部の構成を変更した点にある。同期処理部以外
の構成は実施例1と同一構成であるので、実施例1に示
す部分と同一部分は同一符号を付し、その詳細は省略す
る。
bの構成ブロック図である。図11において、同期マス
クレジスタ16は、命令処理部8からアクセスされ、プ
ロセッサの数の半分の数に対応したビット長のレジスタ
であり、当該プロセッサと同期すべきプロセッサを指定
する。実施例2では、例えばプロセッサの数が8である
ので、同期マスクレジスタ16の数は4ビット長のレジ
スタとする。
部からアクセスされる1ビット長のレジスタであり、同
期マスクレジスタ16をどのプロセッサに割り付けるか
を指定するための情報を記憶する。 <実施例2の動作>次に、このように構成された同期処
理装置により実現される同期処理方法について説明す
る。ここでは、プログラムA,プログラムBの2つの異
なるユーザの並列プログラムが同期をとりながら実行さ
れる処理を以下に説明する。図12は2プログラムA,
Bを動作した時の同期マスクレジスタの内容を示す図で
ある。図13はプログラムAの処理を示すフローであ
る。
ロセッサ1−0〜1−7の8台とする。プログラムAは
プロセッサ1−0,1−1,1−2,1−3の内、同期
組情報"1110"によりプロセッサ1−0,1−1,1−2
で実行され、プログラムBはプロセッサ1−4,1−
5,1−6,1−7の内、同期組情報"0111"によりプロ
セッサ1−5,1−6,1−7で実行されるものとす
る。
1−1,1−2,1−3が同期をとった実行するに先立
って、プロセッサ1−0,1−1,1−2,1−3にそ
れぞれ有する同期マスクレジスタ16に同期組情報とし
てビットパターン”1110”を設定し、同期マスク制御レ
ジスタ17に”0”を設定する(ステップ201)。
定することにより、同期マスクレジスタ16の4ビット
がプロセッサ1−0,1−1,1−2,1−3に対応す
ることができる。
1−1,1−2,1−3が同期をとって実行するに先立
って、各々のプロセッサの同期状態レジスタ12及び同
期表示レジスタ14の値は、いずれも”0”に設定す
る。
2,1−3が処理kの実行を開始する(ステップ20
2)。プログラムAが実行されている各々のプロセッサ
1−0,1−1,1−2,1−3は、プログラムA上で
同期をとるべき状態に到達すると、同期状態レジスタ1
2に”1”を設定する(ステップ203)。
1”はネットワーク2上の同期放送部22に送出され
(ステップ204)、同期状態情報”1”が同期放送部
22から他の全てのプロセッサに放送される。各々のプ
ロセッサの同期受信部15は、全てのプロセッサの同期
状態レジスタ12の同期状態情報”1”を受信する。そ
して、同期検出部13は同期受信部15の同期状態情報
と同期マスクレジスタ16の同期組情報との論理演算を
行うことにより同期を検出する(ステップ205)。こ
こで、同期が検出できない場合には、同期状態情報の受
信を待つ(ステップ206)。このとき、プログラムA
を実行している各々のプロセッサの命令処理部8は、既
に同期状態レジスタ12に”1”を設定しており、他の
プロセッサとの同期で不要な処理が残存している場合に
は、その処理を実行する。
14を監視し、同期表示レジスタ14の情報に1がセッ
トされているか否かを判断する(ステップ207)。こ
こで、同期表示レジスタ14の情報に1がセットされて
いない場合には、情報が1となるのを待つ(ステップ2
06)。
ロセッサから同期情報を受信したときには同期表示レジ
スタ14の情報が”1”となるが、その動作は図9に示
すものと同一である。
サでは、プロセッサ1−0,1−1,1−2の同期状態
情報が全て”1”となった場合に同期表示レジスタ14
に”1”がセットされる。
ると、プログラムAに関連する全てのプロセッサ1−
0,1−1,1−2,1−3が同期状態に到達したと認
識する。ここでは、プロセッサ1−3に対応する同期マ
スクレジスタの同期組情報が”0”であるため、プロセ
ッサ1−3の同期に関係なく同期がとれたと認識する。
そして、引続き次の処理k+1を続行する(ステップ2
08)。
な時刻に到達すると、同期状態レジスタ12に”0”を
セットする(ステップ209)。同期状態レジスタ12
の同期状態情報”0”はネットワーク2上の同期放送部
22に送出され(ステップ210)、同期状態情報”
0”が同期放送部22から他の全てのプロセッサに放送
される。各々のプロセッサの同期受信部15は、全ての
プロセッサの同期状態レジスタ12の同期状態情報”
0”を受信する。そして、同期検出部13は同期受信部
15の同期状態情報と同期マスクレジスタ16の同期組
情報との論理演算を行うことにより同期を検出する(ス
テップ211)。ここで、同期が検出できない場合に
は、同期状態情報の受信を待つ(ステップ212)。こ
のとき、プログラムAを実行している各々のプロセッサ
の命令処理部8は、既に同期状態レジスタ12に”0”
を設定しており、他のプロセッサとの同期で不要な処理
が残存している場合には、その処理を実行する。
14を監視し、同期表示レジスタ14の情報に0がセッ
トされているか否かを判断する(ステップ213)。こ
こで、同期表示レジスタ14の情報に0がセットされて
いない場合には、情報が0となるのを待つ(ステップ2
12)。
ロセッサから同期情報を受信したときには同期表示レジ
スタ14の情報が”0”となるが、その動作は図10に
示すものと同一である。
と、プログラムAに関連する全てのプロセッサ1−0,
1−1,1−2,1−3が同期状態に到達したと認識し
て、引続き次の処理を進むわけであるが、このときに処
理が全て終了したか否かを判定する(ステップ21
4)。ここで、処理が全て終了していない場合には、ス
テップ201に戻り、ステップ201〜214までの処
理を行う。
同期と同期状態情報”0”による同期とを繰り返して並
列に処理を進めてゆく。一方、以上のプログラムAの動
作とは全く独立にプログラムBが割り付けられたプロセ
ッサ1−4,1−5,1−6,1−7における同期マス
クレジスタ16には同期組情報”0111”が設定され、同
期マスク制御レジスタ17にはビットパターン”1”が
設定されている。同期マスク制御レジスタ17に”1”
を設定することにより、同期マスクレジスタ16の4ビ
ットがプロセッサ1−4,1−5,1−6,1−7に対
応することができる。プログラムBも、プログラムAと
同様に同期フラグ”1”による同期と同期フラグ”0”
による同期がとられながら並列に処理が進められてゆ
く。
は全く独立に同期処理を繰り返しながら効率的に処理を
進めてゆくことができる。このようにプロセッサ間で同
期を行う同期処理装置において、同期すべきプロセッサ
の組み合わせを指定するための同期マスクレジスタ16
を、プロセッサの台数よりも少なく設け、同期マスクレ
ジスタを同期マスク制御レジスタにより制御するので、
プロセッサ台数よりも少ない同期マスクレジスタにより
複数ユーザの並列処理プログラムを効率良く実行するこ
とができる。
する場合には、次のようにすればよい。例えば図14に
示すように3つのプログラムを並列処理する場合には、
同期マスク制御レジスタに2ビット長レジスタを用
い、"00","01","10"の2ビット情報を記憶する。同期マ
スク制御レジスタはプロセッサ1−0〜1−3の同期マ
スクレジスタに"00"を割り付け、プロセッサ1−4〜1
−7の同期マスクレジスタに"01"を割り付け、プロセッ
サ1−8〜1−11の同期マスクレジスタに"10"を割り
付ける。これにより、3つのプログラムを並列に実行す
ることができる。 <実施例3>図15は実施例3の同期処理部10cの構
成ブロック図である。図16は実施例3のプログラムA
の処理を示すフローである。
期状態レジスタ、同期マスクレジスタ、同期受信部、同
期検出部、同期表示レジスタを2組設けた点にある。そ
して、一方の組をプログラムAの同期処理用とし、他方
の組をプログラムBの同期処理用としている。
a、同期マスクレジスタ11a、同期受信部15a、同
期検出部13a、同期表示レジスタ14aは、プログラ
ムAの処理を同期をとって実行するために設けられてい
る。同期状態レジスタ11b、同期マスクレジスタ11
b、同期受信部15b、同期検出部13b、同期表示レ
ジスタ14bは、プログラムBの処理を同期をとって実
行するために設けられている。
数は、前記同期状態レジスタ等を2組設けることによ
り、実施例1で設けられたプロセッサの数の半分であ
る。 <実施例3の動作>次に、このように構成された同期処
理装置により実現される同期処理方法について説明す
る。実施例3では、プログラムA,プログラムBの2つ
の異なるユーザの並列プログラムが同期をとりながら実
行される処理を以下に説明する。プロセッサ1−0〜1
−3の4台とする。プログラムA及びBともにプロセッ
サ1−0,1−1,1−2,1−3で実行されるものと
する。
1−1,1−2,1−3が同期をとって実行するに先立
って、プロセッサ1−0,1−1,1−2,1−3にそ
れぞれ有する同期マスクレジスタ11aにビットパター
ン”1111”を設定する(ステップ301)。
1−1,1−2,1−3が同期をとって実行するに先立
って、各々のプロセッサの同期状態レジスタ11a及び
同期表示レジスタ14aの値は、いずれも”0”に設定
する。
2,1−3が処理kの実行を開始する(ステップ30
2)。プログラムAが実行されている各々のプロセッサ
1−0,1−1,1−2,1−3は、プログラムA上で
同期をとるべき状態に到達すると、同期状態レジスタ1
2aに”1”を設定する(ステップ303)。
1”はネットワーク2上の同期放送部22に送出され
(ステップ304)、同期状態情報”1”が同期放送部
22から他の全てのプロセッサに放送される。各々のプ
ロセッサの同期受信部15aは、全てのプロセッサの同
期状態レジスタ12aの同期状態情報”1”を受信す
る。そして、同期検出部13aは同期受信部15aの同
期状態情報と同期マスクレジスタ11aの同期組情報と
の論理演算を行うことにより同期を検出する(ステップ
305。なお、同期が検出できない場合、同期状態情報
の受信待ちとなる(ステツプ306)。さらに同期表示
レジスタ14aの値が1にセットされているか否かを判
断する(ステップ307)。
設定するための同期検出部の構成は図9に示すものと同
一構成である。そして、この実施例に示す4つのプロセ
ッサでは、プロセッサ1−0,1−1,1−2,1−3
の同期状態情報が全て”1”となった場合に同期表示レ
ジスタ14aに”1”がセットされる。
ると、プログラムAに関連する全てのプロセッサ1−
0,1−1,1−2,1−3が同期状態に到達したと認
識する。引続き次の処理k+1を続行する(ステップ3
08)。
な時刻に到達すると、同期状態レジスタ12aに”0”
をセットする(ステップ309)。同期状態レジスタ1
2aの同期状態情報”0”はネットワーク2上の同期放
送部22に送出され(ステップ310)、同期状態情
報”0”が同期放送部22から他の全てのプロセッサに
放送される。各々のプロセッサの同期受信部15aは、
全てのプロセッサの同期状態レジスタ12aの同期状態
情報”0”を受信する。そして、同期検出部13aは同
期受信部15aの同期状態情報と同期マスクレジスタ1
1aの同期組情報との論理演算を行うことにより同期を
検出する(ステップ311)。
セットされているか判断する(ステップ313)。同期
表示レジスタ14aに”0”を設定するための同期検出
部の構成は図10に示すものと同一構成である。
ると、プログラムAに関連する全てのプロセッサ1−
0,1−1,1−2,1−3が同期状態に到達したと認
識して、引続き次の処理を進むわけであるが、このとき
に処理が全て終了したか否かを判定する(ステップ31
4)。ここで、処理が全て終了していない場合には、ス
テップ301に戻り、ステップ301〜314までの処
理を行う。
同期と同期状態情報”0”による同期とを繰り返して並
列に処理を進めてゆく。一方、以上のプログラムAの動
作とは全く独立にプログラムBがプロセッサ1−0,1
−1,1−2,1−3における同期マスクレジスタ11
bにはビットパターン”1111”が設定され、プログラム
Bも、プログラムAと同様に同期状態情報”1”による
同期と同期状態情報”0”による同期がとられながら並
列に処理が進められてゆく。
処理装置において、同期処理部に、同期状態レジスタ、
同期マスクレジスタ、同期表示レジスタ等を複数設ける
ことにより、複数ユーザの並列処理プログラムを少ない
プロセッサ数で効率良く実行することができる。 <実施例4>次に、本発明の実施例4について説明す
る。図17は実施例4の同期処理部の構成ブロック図で
ある。実施例3においては、複数のプロセスを実行でき
る構成となっている。
合には一方の1組のレジスタ等のみ用いることになり、
他方の1組のレジスタ等が無駄になっていた。そこで、
実施例4は複数のプロセスと1プロセスとを切り換える
ことにより並列処理プログラムを実行するものである。
0dは、同期状態レジスタ12a、同期マスクレジスタ
11a、同期受信部15a、同期検出部13a、同期表
示レジスタ14aを有している。また、同期処理部10
dは、同期状態レジスタ12b、同期マスクレジスタ1
1b、同期受信部15b、同期検出部13b、同期表示
レジスタ14bを有している。
令処理部8からアクセスされ、2ビット長のレジスタで
あり、1プロセッサについて2プロセス(2プログラ
ム)又は1プロセッサについて1プロセス(1プログラ
ム)のいずれかを指定するための2プロセス情報又は1
プロセス情報とを記憶する。
同期状態レジスタ12a,12b、同期マスクレジスタ
11a,11b、同期受信部15a,15b、同期検出
部13a,13b、同期表示レジスタ14a,14bに
2プロセス情報又は1プロセス情報を与える。 <実施例4の動作>図18は1つのプロセッサによる2
プロセス処理を示すフローである。図17に示すように
プログラムAおよびBを並列に実行するときに、命令処
理部8が同期サイドコントロールレジスタ18に2プロ
セス情報”01”を設定すると、同期状態レジスタ11
a、同期マスクレジスタ11a、同期受信部15a、同
期検出部13a、同期表示レジスタ14aは2プロセス
情報”01”に基づきプログラムAの処理を同期をとり
ながら実行する。
サ内において、命令処理部8でプログラムAの演算Aを
行う(ステップ401)。そして、同期処理部10dで
処理の同期Aを行い(ステップ402)、データ転送部
9で他のプロセッサに演算結果データの転送Aを行う
(ステップ403)。さらに、次の処理に進みステップ
404、405を行っていく。
ールレジスタ18に”10”を設定すると、同期状態レ
ジスタ11b、同期マスクレジスタ11b、同期受信部
15b、同期検出部13b、同期表示レジスタ14bは
2プロセス情報”10”に基づきプログラムBの処理を
同期をとりながら実行する。
サ内において、命令処理部8でプログラムBの演算Bを
行う(ステップ411)。そして、同期処理部10dで
処理の同期Bを行い(ステップ411)、データ転送部
9で他のプロセッサに演算結果データの転送Bを行う
(ステップ413)。さらに、次の処理に進みステップ
414、415を行っていく。すなわち、1つのプロセ
ッサにより2プロセスの動作が行われる。
ス処理を示すフローである。次に、1つのプログラムC
をプログラムC1,C2に分割しプログラムC1,C2
を並列に実行する場合について説明する。同期サイドコ
ントロールレジスタ18に1プロセス情報”11”を設
定すると、同期状態レジスタ11a、同期マスクレジス
タ11a、同期受信部15a、同期検出部13a、同期
表示レジスタ14aは1プロセス情報”11”に基づ
き、プログラムC1の処理を同期しながら実行する。
サ内において、命令処理部でプログラムC1の演算C1
を行う(ステップ421)。そして、同期処理部で処理
の同期C1を行い(ステップ422)、データ転送部で
他のプロセッサに演算結果データの転送C1を行う(ス
テップ423)。さらに、次の処理に進みステップ42
4、425を行っていく。
クレジスタ11b、同期受信部15b、同期検出部13
b、同期表示レジスタ14bは1プロセス情報”11”
に基づき、プログラムC2の処理を同期しながら実行す
る。
サ内において、命令処理部でプログラムC2の演算C2
を行う(ステップ431)。そして、同期処理部で処理
の同期C2を行い(ステップ432)、データ転送部で
他のプロセッサに演算結果データの転送C2を行う(ス
テップ433)。さらに、次の処理に進みステップ43
4、435を行っていく。すなわち、1つのプロセッサ
により1プロセスの動作が行われる。
セス処理又は1つのプロセッサによる1プロセス処理を
切り換えることにより、複数ユーザの並列処理プログラ
ムと1ユーザの並列処理プログラムを効率良く実行する
ことができる。
いて説明する。前記実施例3に示す同期処理装置は、各
々のプロセッサに複数の組のレジスタ等を設け、複数の
並列処理プログラムを実行する場合には各々のプロセッ
サの同期状態情報を放送する放送線がプロセス毎に設定
される。
は1セット分の放送線しか使用されない。この場合に複
数の放送線を用いて1つのプロセスを同期をとって処理
すれば、処理の高速化が図れる。
ロセスを同期をとって処理するものである。図20は実
施例5の同期処理部10eの構成ブロック図である。実
施例5の同期処理部10eは、実施例3の同期処理部1
0cと同様に2組のレジスタ等を設けている。また、同
期受信部15a,15bに対応して2つの放送線23
a,23bを設けている。
信部15a,15bに接続され、プロセッサ同期処理装
置の電源を投入した時に、命令処理部8から1モード情
報”0”又は2モード情報”1”が設定される1ビット
長のレジスタである。
ときに同期放送線23a及び同期放送線23bを同期受
信部15aに接続する。また、モード回路19は、2モ
ード情報”1”のときに同期放送線23aを同期受信部
15aに接続し、同期放送線23bを同期受信部15b
に接続する。 <実施例5の動作>図21は実施例5の同期放送線の2
プロセスモードのデータ形式を示す図である。図22は
実施例5の同期放送線の1プロセスモードのデータ形式
を示す図である。
タ11a,11bを用いて2プロセスを並列処理する場
合について図20及び図21を参照して説明する。ま
ず、命令処理部8がモード回路19に2モード情報”
1”を設定する。すると、モード回路19は、同期放送
線23aを同期受信部15aに接続し、同期放送線23
bを同期受信部15bに接続する。
23aはヘッダを放送し、さらに同期状態レジスタ12
aの同期状態情報aを放送する。また、この動作と並列
に、同期放送線23bはヘッダを放送し、さらに同期状
態レジスタ12bの同期状態情報bを放送する。する
と、同期受信部15aは同期状態レジスタ12aの同期
状態情報aを受信し、同期受信部15bは同期状態レジ
スタ11bの同期状態情報bを受信する。
ことができる。次に、一方の同期状態レジスタ12a等
を用いて1プロセスを処理する場合について図20及び
図22を参照して説明する。命令処理部8がモード回路
19に1モード情報”0”を設定すると、モード回路1
9は、同期放送線23a及び同期放送線23bを同期受
信部15aに接続する。
は同期状態レジスタ12aの同期状態情報を放送する。
例えば、同期状態情報は図22に示すように、放送線2
3aから同期状態情報a1が送られ、一定時間を経過し
た後に放送線23bから同期状態情報a2が送られてく
る。すなわち、ビットシリアルにより位相がずれて送ら
れてくる。各々のプロセッサの同期受信部15aでは、
2つの放送線23a,23bの内のタイミングのあった
同期状態情報により同期をとることができる。
おいて、1プロセスモードと2プロセスモードとの2つ
のモードを設定できるモード回路19を設け、1プロセ
スのみを実行する場合には、モード回路19によって1
プロセスモードを設定する。
23a,23bを用いて同期状態情報を転送するので、
高速に同期をとることができ、並列処理プログラムを効
率良く実行することができる。 <実施例6>次に、本発明の実施例6について説明す
る。同期放送線の同期状態情報はビットシリアルで転送
されるが、同期放送線において同期状態情報がノイズ等
の影響により1ビットパリティエラーを発生する場合が
ある。この場合には、パリティエラーを検出したプロセ
ッサがネットワーク2から切り離されるため、プログラ
ムの実行が中断する。このような軽微なエラーのために
プログラムの実行を中断すると、処理の実行が非効率と
なる。
した場合には、プログラムを中断せずに実行するもので
ある。図23は実施例6の同期処理部10fの構成ブロ
ック図である。図24に同期放送線のデータ形式を示
す。同期放送線は図24に示すようにヘッダ、プロセッ
サ1−0〜1−7までの同期状態情報、パリティPとシ
リアルにデータを送る。
ビットシリアルで放送される各々のプロセッサの同期状
態レジスタ11の同期状態情報を受信するとともに8ビ
ット毎に1ビットのパリティPを受信し、それらの情報
を保持するレジスタである。
15で8ビット毎に受信した1ビットのパリティについ
てエラーがあるか否かをチェックする。図25はパリテ
ィエラー検出部20とその周辺部の構成ブロック図であ
る。 <実施例6の動作>図23及び図25を参照して実施例
6の動作を説明する。1ビット長のプリップフロップ3
1(FF)は、同期放送部22から同期放送線23を通
して1ビットシリアルで放送されてくる同期状態情報を
受信する。そして、次のタイミングで同期状態情報8ビ
ットと1ビットのパリティPを揃えてFF32にセット
し、パリティチェッカ34でパリティチェックを行う。
1ビットエラーを検出した場合には、FF35,36を
通して命令処理部8にシステムを中断しないことを示す
システム保持情報を命令処理部8に通知する。
14の情報を変更してしまうようなデータである場合に
は、アンド回路39(AND)を通してシステムダウン
情報を命令処理部8に通知し、システムダウンとなる。
ビットエラーを1度検出した後に、FF38で再度1ビ
ットエラーを検出した場合には、命令処理部8にシステ
ムダウン情報を報告し、システムダウンとなる。
響により1ビットエラーが発生した場合に、プログラム
を中断せずに処理を実行することができ、並列処理プロ
グラムを効率的に実行することができる。
グラム毎の同期をとるべき処理手段の組み合わせが指定
できるので、複数の処理手段でいくつかの複数ユーザの
並列処理プログラムを効率良く実行できる。
を並列に処理でき、並列処理プログラムの高速処理を図
ることができる。
る。
構成ブロック図である。
スクレジスタの内容を示す図である。
ある。
期検出部の構成ブロック図である。
同期検出部の構成ブロック図である。
る。
マスクレジスタと同期マスク制御レジスタの内容を示す
図である。
である。
スタと同期マスク制御レジスタの内容を示す図である。
る。
である。
る。
すフローである。
すフローである。
る。
データ形式を示す図である。
データ形式を示す図である。
る。
ロック図である。
Claims (29)
- 【請求項1】 複数の処理手段の間で相互に情報を転送
することにより各々の処理手段が同期をとって処理を実
行する同期処理方法において、 複数の処理手段でいくつかのプログラムを処理するため
にプログラム毎に同期をとるべき処理手段の組み合わせ
を示す同期組情報を記憶する同期組記憶ステップ(10
1)と、 自己の処理手段が処理を終了したときに同期待ち状態に
至ったことを示す同期状態情報を記憶する同期状態記憶
ステップ(102)と、 同期状態情報を他の全ての処理手段に送出する情報送出
ステップ(103)と、 前記同期組情報に基づき同期組情報により示される全て
の処理手段から同期状態情報を受信したか否かを判定す
る同期判定ステップ(104)と、 同期組情報により示される全ての処理手段から同期状態
情報が受信された場合、その同期組情報により示される
全ての処理手段に対してその同期組情報に対応するプロ
グラムの次の処理に移行させる処理移行ステップ(10
5)とからなる同期処理方法。 - 【請求項2】 請求項1において、前記同期状態記憶ス
テップ(102)は、処理毎に同期状態情報”1”と同
期状態情報”0”とを交互に繰り返し記憶することを特
徴とする同期処理方法。 - 【請求項3】 請求項1において、前記同期判定ステッ
プ(104)は、同期状態情報を受信するとその同期状
態情報をレジスタに記憶する受信ステップを含むことを
特徴とする同期処理方法。 - 【請求項4】 請求項1において、前記同期判定ステッ
プ(104)は、受信した同期状態情報と同期組情報と
を論理演算してその同期組情報により示される全ての処
理手段から同期状態情報を受信したか否かを判定する論
理演算ステップを含むことを特徴とする同期処理方法。 - 【請求項5】 請求項1において、前記処理移行ステッ
プ(105)は、同期組情報により示される全ての処理
手段から同期状態情報を受信したか否かを示すための同
期表示情報を記憶する同期表示ステップを含むことを特
徴とする同期処理方法。 - 【請求項6】 請求項1において、前記同期判定ステッ
プ(104)は、各々の処理手段(1)に情報を放送す
るための放送線における情報のパリティエラーを検出す
るエラー検出ステップを含むことを特徴とする同期処理
方法。 - 【請求項7】 処理を実行する複数の処理手段(1)
と、複数の処理手段(1)の間で相互に情報を転送する
通信手段(2)とを備え、各々の処理手段(1)が同期
をとって処理を実行する同期処理装置において、 各々の処理手段(1)は、複数の処理手段(1)でいく
つかのプログラムを処理するためにプログラム毎に同期
をとるべき処理手段の組み合わせを示す同期組情報を記
憶する同期組記憶手段(11)と、 自己の処理手段が処理を終了したときに同期待ち状態に
至ったことを示す同期状態情報を記憶する同期状態記憶
手段(12)と、 同期状態記憶手段(12)に同期状態情報を記憶させる
と共に同期状態情報を他の全ての処理手段に送出する記
憶制御手段(8a)と、 同期組記憶手段(11)に記憶された同期組情報に基づ
き同期組情報により示される全ての処理手段から同期状
態情報を受信したか否かを判定する同期判定手段(1
3)と、 同期判定手段(13)が同期組情報により示される全て
の処理手段(1)から同期状態情報を受信したと判定し
た場合、その同期組情報により示される全ての処理手段
に対してその同期組情報に対応するプログラムの次の処
理に移行させる処理移行手段(8)とを有する同期処理
装置。 - 【請求項8】 請求項7において、前記記憶制御手段
(8a)は、同期状態記憶手段(12)に対して、処理
毎に同期状態情報”1”と同期状態情報”0”とを交互
に繰り返しセットすることを特徴とする同期処理装置。 - 【請求項9】 請求項7又は請求項8において、前記同
期状態記憶手段(12)は、1ビット長のレジスタであ
ることを特徴とする同期処理装置。 - 【請求項10】 請求項7において、前記記憶制御手段
(8a)は、同期組記憶手段(11)に同期組情報を記
憶させることを特徴とする同期処理装置。 - 【請求項11】 請求項7において、前記全ての処理手
段から送出されてくる同期状態情報を受信してこれらの
同期状態情報を同期判定手段(13)に出力する同期受
信部(15)を設けたことを特徴とする同期処理装置。 - 【請求項12】 請求項11において、前記同期受信部
(15)は、複数の処理手段の数に対応したビット数の
レジスタであり、このレジスタは同期状態情報を受信す
るとその同期状態情報を複数の処理手段に対応付けたビ
ット列に記憶することを特徴とする同期処理装置。 - 【請求項13】 請求項11において、同期判定手段
(13)は、前記同期受信部(15)からの同期状態情
報と前記同期組記憶手段(11)からの同期組情報とを
論理演算してその同期組情報により示される全ての処理
手段から同期状態情報を受信したか否かを判定する論理
演算回路を含むことを特徴とする同期処理装置。 - 【請求項14】 請求項7において、前記同期組記憶手
段(11)は、複数の処理手段の数に対応したビット数
のレジスタであり、このレジスタは複数の処理手段に対
応付けたビット列の内、同期組情報により示される同期
をとるべき全ての処理手段に対応するビット列に同期状
態情報”1”を記憶することを特徴とする同期処理装
置。 - 【請求項15】 請求項7において、前記処理移行手段
(8)は、同期判定手段(13)が同期組情報により示
される全ての処理手段から同期状態情報を受信したか否
かを示すための同期表示情報を記憶する同期表示レジス
タ(14)を設けたことを特徴とする同期処理装置。 - 【請求項16】 請求項7において、前記同期組記憶手
段(11)は、同期組情報により示される全ての処理手
段の数に対応したビット数のレジスタ(16)であり、
さらに、このレジスタ(16)を各々の処理手段(1)
に割り付けるための制御レジスタ(17)を設けたこと
を特徴とする同期処理装置。 - 【請求項17】 請求項16において、前記制御レジス
タ(17)は、1ビットのレジスタであり、2つのプロ
グラムの処理を実行するために制御情報”1”と”0”
とにより2組の同期をとるべき処理手段を割り付けるこ
とを特徴とする同期処理装置。 - 【請求項18】 請求項11において、前記同期受信部
(15)は、各々の処理手段(1)に情報を放送するた
めの放送線における情報のパリティエラーを検出するパ
リティエラー検出部(20)を設けたことを特徴とする
同期処理装置。 - 【請求項19】 請求項11において、前記パリティエ
ラー検出部(20)が1ビットエラーを検出したときに
は、処理手段(1)はプログラムの処理を中断せずに処
理を続行することを特徴とする同期処理装置。 - 【請求項20】 処理を実行する複数の処理手段(1)
と、複数の処理手段(1)の間で相互に情報を転送する
通信手段(2)とを備え、各々の処理手段(1)が同期
をとって処理を実行する同期処理装置において、 各々の処理手段(1)は、複数のプログラムに対応して
設けられると共に自己の処理手段が処理を終了したとき
に同期待ち状態に至ったことを示す同期状態情報を夫々
に記憶する複数の同期状態記憶手段(12)と、 複数の同期状態記憶手段(12)の各々に対して同期状
態情報を記憶させると共に同期状態情報を全ての処理手
段に送出する記憶制御手段(8a)と、 前記複数の同期状態記憶手段(12)に対応して設けら
れると共に夫々が他の全ての処理手段から同期状態情報
を受信したか否かを判定する複数の同期判定手段(1
3)と、 複数の同期判定手段(13)のいずれか1つの同期判定
手段がその同期判定手段に対応する全ての同期状態記憶
手段(12)から同期状態情報を受信したと判定した場
合、全ての処理手段に対してその同期判定手段(13)
に対応するプログラムの次の処理に移行させる処理移行
手段(8)とを有する同期処理装置。 - 【請求項21】 請求項20において、前記複数の同期
状態記憶手段(12)と複数の同期判定手段(13)と
に複数のプログラムの同期処理又は1つのプログラムの
同期処理のいずれかを行わせるかを選択する選択手段
(18)を設けたことを特徴とする同期処理装置。 - 【請求項22】 請求項21において、前記選択手段
(18)は、前記記憶制御手段(8a)により制御され
るレジスタであることを特徴とする同期処理装置。 - 【請求項23】 請求項20において、前記全ての処理
手段から送出されてくる同期状態情報を受信してこれら
の同期状態情報を複数の同期判定手段(13)に出力す
る複数の同期受信部(15)を設けたことを特徴とする
同期処理装置。 - 【請求項24】 請求項23において、前記複数の同期
受信部(15)に対応して同期状態情報を送出するため
の複数の同期放送線を設け、 複数のプログラムを処理するときには各々の放送線を放
送線に対応する同期受信部に接続し、1つのプログラム
を処理するときには各々の放送線を1つの同期受信部に
接続するモード回路(19)を設けたことを特徴とする
同期処理装置。 - 【請求項25】 請求項20において、前記記憶制御手
段(8a)は、同期状態記憶手段(12)に対して、処
理毎に同期状態情報”1”と同期状態情報”0”とを交
互に繰り返しセットすることを特徴とする同期処理装
置。 - 【請求項26】 請求項20において、前記同期状態記
憶手段(12)は、1ビット長のレジスタであることを
特徴とする同期処理装置。 - 【請求項27】 請求項23において、前記同期受信部
(15)は、複数の処理手段の数に対応したビット数の
レジスタであり、このレジスタは同期状態情報を受信す
るとその同期状態情報を複数の処理手段に対応付けたビ
ット列に記憶することを特徴とする同期処理装置。 - 【請求項28】 請求項23において、同期判定手段
(13)は、前記同期受信部(15)からの同期状態情
報と前記同期組記憶手段(11)からの同期組情報とを
論理演算してその同期組情報により示される全ての処理
手段から同期状態情報を受信したか否かを判定する論理
演算回路を含むことを特徴とする同期処理装置。 - 【請求項29】 請求項20において、前記処理移行手
段(8)は、同期判定手段(13)が同期組情報により
示される全ての処理手段から同期状態情報を受信したか
否かを示すための同期表示情報を記憶する複数の同期表
示レジスタ(14)を設けたことを特徴とする同期処理
装置。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP33850292A JP3285629B2 (ja) | 1992-12-18 | 1992-12-18 | 同期処理方法及び同期処理装置 |
DE69325246T DE69325246T2 (de) | 1992-12-18 | 1993-12-10 | Synchrone Vorrichtung und Verfahren für mehrere Prozessoren zur parallelen Ausführung mehrerer Programme |
EP93309957A EP0602906B1 (en) | 1992-12-18 | 1993-12-10 | Synchronous processing method and apparatus for a plurality of processors executing a plurality of programs in parallel |
US08/601,705 US5634071A (en) | 1992-12-18 | 1996-02-15 | Synchronous processing method and apparatus for a plurality of processors executing a plurality of programs in parallel |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP33850292A JP3285629B2 (ja) | 1992-12-18 | 1992-12-18 | 同期処理方法及び同期処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH06187303A true JPH06187303A (ja) | 1994-07-08 |
JP3285629B2 JP3285629B2 (ja) | 2002-05-27 |
Family
ID=18318765
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP33850292A Expired - Fee Related JP3285629B2 (ja) | 1992-12-18 | 1992-12-18 | 同期処理方法及び同期処理装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US5634071A (ja) |
EP (1) | EP0602906B1 (ja) |
JP (1) | JP3285629B2 (ja) |
DE (1) | DE69325246T2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7971029B2 (en) | 2007-06-20 | 2011-06-28 | Fujitsu Limited | Barrier synchronization method, device, and multi-core processor |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2552784B2 (ja) * | 1991-11-28 | 1996-11-13 | 富士通株式会社 | 並列データ処理制御方式 |
JO1812B1 (en) † | 1993-10-15 | 1995-07-05 | ساسول كيميكال اندستريز ليمتد | Porous granules of ammonium nitrate |
GB9606833D0 (en) * | 1996-03-30 | 1996-06-05 | Int Computers Ltd | Multi-processor system |
US5958019A (en) * | 1996-07-01 | 1999-09-28 | Sun Microsystems, Inc. | Multiprocessing system configured to perform synchronization operations |
US6067610A (en) * | 1996-07-29 | 2000-05-23 | Motorola, Inc. | Method and data processor for synchronizing multiple masters using multi-bit synchronization indicators |
US6029204A (en) * | 1997-03-13 | 2000-02-22 | International Business Machines Corporation | Precise synchronization mechanism for SMP system buses using tagged snoop operations to avoid retries |
US6314495B1 (en) * | 1998-01-07 | 2001-11-06 | International Business Machines Corporation | Method and apparatus for executing multiply-initiated, multiply-sourced variable delay system bus operations |
CN1070625C (zh) * | 1998-01-15 | 2001-09-05 | 英业达股份有限公司 | 一种网络对打应用程序中的同步控制方法 |
JP2000132529A (ja) * | 1998-10-23 | 2000-05-12 | Sony Corp | 並列処理装置、並列処理方法および記録媒体 |
KR100394827B1 (ko) * | 1999-12-22 | 2003-08-21 | 엘지전자 주식회사 | 이동통신교환기의 프로세서 재시동을 위한 프로그램 및데이터 적재방법 |
US9940670B2 (en) | 2009-12-10 | 2018-04-10 | Royal Bank Of Canada | Synchronized processing of data by networked computing resources |
EP2510451B1 (en) | 2009-12-10 | 2019-08-28 | Royal Bank Of Canada | Synchronized processing of data by networked computing resources |
US10057333B2 (en) | 2009-12-10 | 2018-08-21 | Royal Bank Of Canada | Coordinated processing of data by networked computing resources |
US9979589B2 (en) | 2009-12-10 | 2018-05-22 | Royal Bank Of Canada | Coordinated processing of data by networked computing resources |
US9959572B2 (en) | 2009-12-10 | 2018-05-01 | Royal Bank Of Canada | Coordinated processing of data by networked computing resources |
JPWO2012127534A1 (ja) * | 2011-03-23 | 2014-07-24 | 富士通株式会社 | バリア同期方法、バリア同期装置及び演算処理装置 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5243698A (en) * | 1982-11-26 | 1993-09-07 | Inmos Limited | Microcomputer |
JPS6345670A (ja) * | 1986-08-13 | 1988-02-26 | Hitachi Ltd | プロセツサ間同期装置 |
JP2594979B2 (ja) * | 1987-10-23 | 1997-03-26 | 株式会社日立製作所 | マルチプロセツサシステム |
JPH0630094B2 (ja) * | 1989-03-13 | 1994-04-20 | インターナショナル・ビジネス・マシーンズ・コーポレイション | マルチプロセツサ・システム |
GB9019025D0 (en) * | 1990-08-31 | 1990-10-17 | Ncr Co | Work station having multiprocessing capability |
DE69130630T2 (de) * | 1990-09-14 | 1999-09-09 | Hitachi | Synchrones Verfahren und Gerät für Prozessoren |
-
1992
- 1992-12-18 JP JP33850292A patent/JP3285629B2/ja not_active Expired - Fee Related
-
1993
- 1993-12-10 DE DE69325246T patent/DE69325246T2/de not_active Expired - Fee Related
- 1993-12-10 EP EP93309957A patent/EP0602906B1/en not_active Expired - Lifetime
-
1996
- 1996-02-15 US US08/601,705 patent/US5634071A/en not_active Expired - Lifetime
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7971029B2 (en) | 2007-06-20 | 2011-06-28 | Fujitsu Limited | Barrier synchronization method, device, and multi-core processor |
Also Published As
Publication number | Publication date |
---|---|
US5634071A (en) | 1997-05-27 |
EP0602906B1 (en) | 1999-06-09 |
JP3285629B2 (ja) | 2002-05-27 |
DE69325246D1 (de) | 1999-07-15 |
EP0602906A1 (en) | 1994-06-22 |
DE69325246T2 (de) | 1999-09-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH06187303A (ja) | 同期処理方法及び同期処理装置 | |
US5765009A (en) | Barrier synchronization system in parallel data processing | |
EP0208870B1 (en) | Vector data processor | |
WO1993002414A3 (en) | Data processing system with synchronization coprocessor for multiple threads | |
JPH09297746A (ja) | プロセッサ間通信方法及びそれに用いるプロセッサ | |
US5922063A (en) | Automatic hardware message header generator | |
JP3526492B2 (ja) | 並列処理システム | |
EP0107447B1 (en) | Computer data distributor | |
JPH11212927A (ja) | 競合調停方法 | |
EP0262782B1 (en) | Multi-node data processing system | |
JPH10116225A (ja) | アドレス変換回路及びマルチプロセッサシステム | |
JP2853655B2 (ja) | 演算装置間同期方式 | |
JP4514916B2 (ja) | バスシステム | |
KR100250474B1 (ko) | 크로스바 라우팅 스위치의 전역 제어 장치 및 그 방법 | |
JPH06332852A (ja) | データ転送システム | |
JP2000222280A (ja) | 二重クロック・システム用の後置書込みバッファ | |
JP2001184340A (ja) | 情報処理装置及び複数ベクトルプロセッサ間の同期化方法 | |
JPH022178B2 (ja) | ||
Makhaniok et al. | Hardware synchronization of massively parallel processes in distributed systems | |
JPS6280750A (ja) | システムバスのデ−タ転送装置 | |
JPS61174851A (ja) | バス制御方式 | |
JP2000295283A (ja) | データ転送方法およびデータ転送制御回路 | |
JPS59138147A (ja) | デ−タ伝送装置 | |
JP2007048092A (ja) | 同期判定装置及び同期判定方法及びプログラム | |
JPS62296261A (ja) | デ−タ転送システム |
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: 20020219 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080308 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090308 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100308 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100308 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110308 Year of fee payment: 9 |
|
LAPS | Cancellation because of no payment of annual fees |