JP3285629B2 - 同期処理方法及び同期処理装置 - Google Patents
同期処理方法及び同期処理装置Info
- Publication number
- JP3285629B2 JP3285629B2 JP33850292A JP33850292A JP3285629B2 JP 3285629 B2 JP3285629 B2 JP 3285629B2 JP 33850292 A JP33850292 A JP 33850292A JP 33850292 A JP33850292 A JP 33850292A JP 3285629 B2 JP3285629 B2 JP 3285629B2
- Authority
- JP
- Japan
- Prior art keywords
- synchronization
- processing
- synchronous
- information
- 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.)
- Expired - Fee Related
Links
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
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
プロセス情報とを記憶する。即ち、同期サイドコントロ
ールレジスタ18には、2プロセスの場合は2プロセス
情報である”01”又は”10”が設定され、1プロセ
スの場合は1プロセス情報である”11”が設定され
る。このようにして、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の処理を同期しながら実行す
る。即ち、同期サイドコントロールレジスタ18に記憶
される2ビットのプロセス情報は、”X1”である場合
は11a,12a,14aのレジスタに設定可能であ
り、”1X”である場合は11b,12b,14bのレ
ジスタに設定可能である。このため、プロセス情報が”
11”である場合は、どちらのレジスタも使用され、1
プロセスが効率よく実行される。
サ内において、命令処理部でプログラムC2の演算C2
を行う(ステップ431)。そして、同期処理部で処理
の同期C2を行い(ステップ432)、データ転送部で
他のプロセッサに演算結果データの転送C2を行う(ス
テップ433)。さらに、次の処理に進みステップ43
4、435を行っていく。すなわち、1つのプロセッサ
により1プロセスの動作が行われる。
施例3において無駄になっていたレジスタ等も用いて処
理を実行するため、1つのプロセッサによる2プロセス
処理又は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
に接続する。このようにモード情報に基づいて同期放送
線を接続する同期受信部を切り換えることにより、1プ
ロセスを実行するか、2プロセスを実行するかを選択す
る。<実施例5の動作>図21は実施例5の同期放送線
の2プロセスモードのデータ形式を示す図である。図2
2は実施例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が送られ、一定時間を経過し
た後且つ同期状態情報a1を送信し終わる前に放送線2
3bから同期状態情報a2が送られてくる。すなわち、
ビットシリアルにより位相がずれて送られてくる。各々
のプロセッサの同期受信部15aでは、2つの放送線2
3a,23bの内のタイミングのあった同期状態情報に
より同期をとることができる。このため、例えば放送線
Aにおいて同期状態情報a1が送信されている間に同期
状態に変化があった場合、更新された情報は放送線Bに
よって同期状態情報a2として送信される。放送線Bに
よる同期状態情報a2は、放送線Aが同期状態情報a1
を送信した後に更新された同期状態情報を送信し始める
前に送り出される。このようにして、放送線Bが送信し
てから放送線Aが次に送信するまでの時間を短縮するこ
とが可能である。
おいて、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 (28)
- 【請求項1】 処理を実行する複数の処理手段の間で相
互に情報を転送し各々の処理手段が同期をとって処理を
実行する同期処理方法において、 複数のプログラムに対応して各々の処理手段に複数設け
られた記憶手段が、自己の処理手段が該記憶手段に対応
する処理を終了したときに同期待ち状態に至ったことを
示す同期状態情報を夫々に記憶する記憶ステップと、 前記各々の処理手段に設けられた制御手段が、複数の前
記各々の記憶手段に対して同期状態情報を記憶させると
共に同期状態情報を全ての処理手段に送出する送出ステ
ップと、 前記複数の記憶手段に対応して設けられた判定手段が、
他の全ての処理手段から同期状態情報を受信したか否か
を判定する判定ステップと、 複数の前記判定手段のいずれか1つがその判定手段に対
応する全ての前記記憶手段から同期状態情報を受信した
と判定した場合、全ての処理手段に対してその判定手段
に対応するプログラムの次の処理に移行させる移行ステ
ップとを含む同期処理方法。 - 【請求項2】 請求項1において、前記同期状態記憶ス
テップは、処理毎に同期状態情報”1”と同期状態情
報”0”とを交互に繰り返し記憶することを特徴とする
同期処理方法。 - 【請求項3】 請求項1において、前記同期判定ステッ
プは、同期状態情報を受信するとその同期状態情報をレ
ジスタに記憶する受信ステップを含むことを特徴とする
同期処理方法。 - 【請求項4】 請求項1において、複数の処理手段で複
数のプログラムを処理するためにプログラム毎に同期を
とるべき処理手段の組み合わせを示す同期組情報を記憶
する同期組記憶ステップを更に含み、前記同期判定ステ
ップは、受信した同期状態情報と同期組情報とを論理演
算してその同期組情報により示される全ての処理手段か
ら同期状態情報を受信したか否かを判定する論理演算ス
テップを含むことを特徴とする同期処理方法。 - 【請求項5】 請求項1において、複数の処理手段で複
数のプログラムを処理するためにプログラム毎に同期を
とるべき処理手段の組み合わせを示す同期組 情報を記憶
する同期組記憶ステップを更に含み、前記処理移行ステ
ップは、同期組情報により示される全ての処理手段から
同期状態情報を受信したか否かを示すための同期表示情
報を記憶する同期表示ステップを含むことを特徴とする
同期処理方法。 - 【請求項6】 請求項1において、前記同期判定ステッ
プは、各々の処理手段に情報を放送するための放送線に
おける情報のパリティエラーを検出するエラー検出ステ
ップを含むことを特徴とする同期処理方法。 - 【請求項7】 処理を実行する複数の処理手段と、複数
の処理手段の間で相互に情報を転送する通信手段とを備
え、各々の処理手段が同期をとって処理を実行する同期
処理装置において、複 数のプログラムに対応して設けられると共に自己の処
理手段が処理を終了したときに同期待ち状態に至ったこ
とを示す同期状態情報を夫々に記憶する複数の同期状態
記憶手段と、複 数の同期状態記憶手段の各々に対して同期状態情報を
記憶させると共に同期状態情報を全ての処理手段に送出
する記憶制御手段と、 前記複数の同期状態記憶手段に対応して設けられると共
に夫々が他の全ての処理手段から同期状態情報を受信し
たか否かを判定する複数の同期判定手段と、 複数の同期判定手段のいずれか1つの同期判定手段がそ
の同期判定手段に対応する全ての同期状態記憶手段から
同期状態情報を受信したと判定した場合、全ての処理手
段に対してその同期判定手段に対応するプログラムの次
の処理に移行させる処理移行手段とを、各々の処理手段
に有する同期処理装置。 - 【請求項8】 請求項7において、前記記憶制御手段
は、同期状態記憶手段に対して、処理毎に同期状態情
報”1”と同期状態情報”0”とを交互に繰り返しセッ
トすることを特徴とする同期処理装置。 - 【請求項9】 請求項7又は請求項8において、前記同
期状態記憶手段は、1ビット長のレジスタであることを
特徴とする同期処理装置。 - 【請求項10】 請求項7において、複数の処理手段で
複数のプログラムを処理するためにプログラム毎に同期
をとるべき処理手段の組み合わせを示す同期組情報を記
憶する同期組記憶手段を設けたことを特徴とする同期処
理装置。 - 【請求項11】 請求項7において、前記全ての処理手
段から送出されてくる同期状態情報を受信してこれらの
同期状態情報を同期判定手段に出力する同期受信部を設
けたことを特徴とする同期処理装置。 - 【請求項12】 請求項11において、前記同期受信部
は、複数の処理手段の数に対応したビット数のレジスタ
であり、このレジスタは同期状態情報を受信するとその
同期状態情報を複数の処理手段に対応付けたビット列に
記憶することを特徴とする同期処理装置。 - 【請求項13】 請求項10において、前記全ての処理
手段から送出されてくる同期状態情報を受信してこれら
の同期状態情報を同期判定手段に出力する同期受信部を
設け、同期判定手段は、前記同期受信部からの同期状態
情報と前記同期組記憶手段からの同期組情報とを論理演
算してその同期組情報により示される全ての処理手段か
ら同期状態情報を受信したか否かを判定する論理演算回
路を含むことを特徴とする同期処理装置。 - 【請求項14】 請求項10において、前記同期組記憶
手段は、複数の処理手段の数に対応したビット数のレジ
スタであり、このレジスタは複数の処理手段に対応付け
たビット列の内、同期組情報により示される同期をとる
べき全ての処理手段に対応するビット列に同期状態情
報”1”を記憶することを特徴とする同期処理装置。 - 【請求項15】 請求項10において、前記処理移行手
段は、同期判定手段が同期組情報により示される全ての
処理手段から同期状態情報を受信したか否かを示すため
の同期表示情報を記憶する同期表示レジスタを設けたこ
とを特徴とする同期処理装置。 - 【請求項16】 請求項10において、前記同期組記憶
手段は、該処理手段と同じ組に属する処理手段の数に対
応したビット数のレジスタであり、さらに、このレジス
タを各々の処理手段に割り付けるための制御レジスタを
設けたことを特徴とする同期処理装置。 - 【請求項17】 請求項16において、前記制御レジス
タは、1ビットのレジスタであり、2つのプログラムの
処理を実行するために制御情報”1”と”0”とにより
2組の同期をとるべき処理手段を割り付けることを特徴
とする同期処理装置。 - 【請求項18】 請求項11において、前記同期受信部
は、各々の処理手段に情報を放送するための放送線にお
ける情報のパリティエラーを検出するパリティエラー検
出部を設けたことを特徴とする同期処理装置。 - 【請求項19】 請求項11において、前記パリティエ
ラー検出部が1ビットエラーを検出したときには、処理
手段はプログラムの処理を中断せずに処理を続行するこ
とを特徴とする同期処理装置。 - 【請求項20】 請求項7において、前記複数の同期状
態記憶手段と複数の同期判定手段とに複数のプログラム
の同期処理又は1つのプログラムの同期処理のいずれか
を行わせるかを選択する選択手段を設けたことを特徴と
する同期処理装置。 - 【請求項21】 請求項20において、前記選択手段
は、前記記憶制御手段により制御されるレジスタである
ことを特徴とする同期処理装置。 - 【請求項22】 請求項7において、前記全ての処理手
段から送出されてくる同期状態情報を受信してこれらの
同期状態情報を複数の同期判定手段に出力する複数の同
期受信部を設けたことを特徴とする同期処理装置。 - 【請求項23】 請求項22において、前記複数の同期
受信部に対応して同期状態情報を送出するための複数の
同期放送線を設け、複数のプログラムを処理するときに
は各々の放送線を放送線に対応する同期受信部に接続
し、1つのプログラムを処理するときには各々の放送線
を1つの同期受信部に接続するモード回路を設けたこと
を特徴とする同期処理装置。 - 【請求項24】 請求項7において、前記記憶制御手段
は、同期状態記憶手段に対して、処理毎に同期状態情
報”1”と同期状態情報”0”とを交互に繰り返しセッ
トすることを特徴とする同期処理装置。 - 【請求項25】 請求項7において、前記同期状態記憶
手段は、1ビット長のレジスタであることを特徴とする
同期処理装置。 - 【請求項26】 請求項22において、前記同期受信部
は、複数の処理手段の数に対応したビット数のレジスタ
であり、このレジスタは同期状態情報を受信するとその
同期状態情報を複数の処理手段に対応付けたビット列に
記憶することを特徴とする同期処理装置。 - 【請求項27】 請求項10において、前記全ての処理
手段から送出されてくる同期状態情報を受信してこれら
の同期状態情報を複数の同期判定手段に出力する複数の
同期受信部を設け、前記同期判定手段は、前記同期受信
部からの同期状態情報と前記同期組記憶手段からの同期
組情報とを論理演算してその同期組情報により示される
全ての処理手段から同期状態情報を受信したか否かを判
定する論理演算回路を含むことを特徴とする同期処理装
置。 - 【請求項28】 請求項10において、前記処理移行手
段は、同期判定手段が同期組情報により示される全ての
処理手段から同期状態情報を受信したか否かを示すため
の同期表示情報を記憶する複数の同期表示レジスタを設
けたことを特徴とする同期処理装置。
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 JPH06187303A (ja) | 1994-07-08 |
JP3285629B2 true 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) |
Families Citing this family (17)
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 | 엘지전자 주식회사 | 이동통신교환기의 프로세서 재시동을 위한 프로그램 및데이터 적재방법 |
JP5273045B2 (ja) | 2007-06-20 | 2013-08-28 | 富士通株式会社 | バリア同期方法、装置、及びプロセッサ |
US9959572B2 (en) | 2009-12-10 | 2018-05-01 | Royal Bank Of Canada | Coordinated processing of data by networked computing resources |
US9940670B2 (en) | 2009-12-10 | 2018-04-10 | Royal Bank Of Canada | Synchronized processing of data by networked computing resources |
SG181616A1 (en) | 2009-12-10 | 2012-07-30 | 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 |
WO2012127534A1 (ja) * | 2011-03-23 | 2012-09-27 | 富士通株式会社 | バリア同期方法、バリア同期装置及び演算処理装置 |
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 Ltd | 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 EP EP93309957A patent/EP0602906B1/en not_active Expired - Lifetime
- 1993-12-10 DE DE69325246T patent/DE69325246T2/de not_active Expired - Fee Related
-
1996
- 1996-02-15 US US08/601,705 patent/US5634071A/en not_active Expired - Lifetime
Non-Patent Citations (1)
Title |
---|
松本尚,マルチプロセッサ上の同期機構とプロセッサスケジューリングに関する考察,情報処理学会研究報告,日本,社団法人情報処理学会,1989年11月20日,Vol.89,No.99(89−ARC−79−1) |
Also Published As
Publication number | Publication date |
---|---|
DE69325246T2 (de) | 1999-09-30 |
EP0602906B1 (en) | 1999-06-09 |
JPH06187303A (ja) | 1994-07-08 |
US5634071A (en) | 1997-05-27 |
EP0602906A1 (en) | 1994-06-22 |
DE69325246D1 (de) | 1999-07-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3285629B2 (ja) | 同期処理方法及び同期処理装置 | |
US5781775A (en) | Parallel process scheduling method in a parallel computer and a processing apparatus for a parallel computer | |
EP0208870B1 (en) | Vector data processor | |
EP0438021B1 (en) | Synchronization instruction for multiple processor network | |
EP0721164A2 (en) | Crossbar switch apparatus and protocol | |
US4692861A (en) | Microcomputer with interprocess communication | |
JP3429631B2 (ja) | 並列計算機システム | |
JP3526492B2 (ja) | 並列処理システム | |
EP0107447B1 (en) | Computer data distributor | |
JPH0318958A (ja) | マルチプロセッサシステム | |
JPH10116225A (ja) | アドレス変換回路及びマルチプロセッサシステム | |
JPS6280750A (ja) | システムバスのデ−タ転送装置 | |
KR20000052625A (ko) | 듀얼 클럭 시스템의 포스트 라이트 버퍼 | |
KR100250474B1 (ko) | 크로스바 라우팅 스위치의 전역 제어 장치 및 그 방법 | |
JPH0520783B2 (ja) | ||
JPS6129961A (ja) | デ−タ転送方式 | |
KR19990074894A (ko) | 시리얼 버스라인을 이용한 데이터 전송장치 및방법 | |
JP2001184340A (ja) | 情報処理装置及び複数ベクトルプロセッサ間の同期化方法 | |
JPS60252954A (ja) | プログラム制御回路 | |
JPS61100845A (ja) | メモリアクセス同期制御方式 | |
JPH09231188A (ja) | マルチクラスタ情報処理システム | |
JPS61174851A (ja) | バス制御方式 | |
JPS59138147A (ja) | デ−タ伝送装置 | |
EP0333306A2 (en) | Integrated and programmable processor for word-wise digital signal processing | |
JPH0685166B2 (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 |