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
Application number
JP4338502A
Other languages
English (en)
Other versions
JP3285629B2 (ja
Inventor
Masami Dewa
正実 出羽
Shigeru Nagasawa
茂 長沢
Masayuki Ikeda
正幸 池田
Haruhiko Ueno
治彦 上埜
Naoki Shinjo
直樹 新庄
Teruo Uchiumi
照雄 内海
Kazue Kobayakawa
和重 小早川
Kenichi Ishizaka
賢一 石坂
Moriyuki Takamura
守幸 高村
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 JP33850292A priority Critical patent/JP3285629B2/ja
Priority to DE69325246T priority patent/DE69325246T2/de
Priority to EP93309957A priority patent/EP0602906B1/en
Publication of JPH06187303A publication Critical patent/JPH06187303A/ja
Priority to US08/601,705 priority patent/US5634071A/en
Application granted granted Critical
Publication of JP3285629B2 publication Critical patent/JP3285629B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/45Exploiting coarse grain parallelism in compilation, i.e. parallelism between groups of instructions
    • G06F8/458Synchronisation, 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

(57)【要約】 【目的】複数の並列処理プログラムを効率良く実行でき
る同期処理方法及び同期処理装置を提供する。 【構成】複数の処理手段1、通信手段2を備え、同期組
記憶手段11がプログラム毎に同期をとるべき処理手段
の組み合わせを示す同期組情報を記憶し、同期状態記憶
手段12が処理終了時に同期待ち状態に至ったことを示
す同期状態情報を記憶し、記憶制御手段8aが同期状態
情報を他の全ての処理手段に送出する。同期判定手段1
3は同期組情報が示す全ての処理手段から同期状態情報
を受信したかを判定し、同期組情報が示す全ての処理手
段1の同期状態情報を受信した場合、処理移行手段8は
その同期組情報が示す全ての処理手段に対してその同期
組情報に対応するプログラムの次の処理に移行させる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、複数のプロセッサが同
期をとりながら処理を実行する同期処理方法及び同期処
理装置に関する。
【0002】
【従来の技術】近年、コンピュータシステムの高速化や
大容量化が要求されるに伴って、複数のプロセッサに処
理を分散させる分散処理技術が必要となってきた。
【0003】そこで、プロセッサを多数接続し、各プロ
セッサが処理を並列的に行なうマルチプロセッサシステ
ムが提供されている。このマルチプロセッサシステム
は、各プロセッサが通信手段を介して互いに通信を行
い、各プロセッサが並列に動作してプロセッサ全体であ
るまとまった処理を実行する。これによれば、1つの仕
事に対する処理の高速化を図ることができる。
【0004】また、マルチプロセッサシステムにおいて
は、並列処理を行う各々のプロセッサが複数のフェーズ
からなる処理を同期しながら実行しなければならない場
合がある。この同期処理は次の動作により行われる。ま
ず、処理を早く終了したプロセッサが同期待ち状態に到
達したことを検出する。次に、処理を早く終了したプロ
セッサは他の同期をとるべきプロセッサの処理が終了す
るのを待つ。すなわち、同期をとるべき他の全てのプロ
セッサが同期待ち状態に到達するのを待つ。そして、全
てのプロセッサが同期待ち状態に到達したことを検出し
たとき、全てのプロセッサが次の処理を行う。
【0005】このような同期処理は、各々のプロセッサ
に設けられた同期処理部で行われる。この同期処理部
は、同期状態レジスタ、同期受信部、同期検出部を有し
ている。
【0006】まず、処理を最も早く終了したプロセッサ
は自己の同期状態レジスタに、プロセッサが同期待ち状
態に到達したことを示す同期状態情報(例えば”1”)
をセットする。そして、通信手段を介して他の全てのプ
ロセッサにその同期状態情報を送出し、他の全てのプロ
セッサ内の同期受信部にその同期状態情報をセットす
る。次に処理を終了したプロセッサは、自己の同期状態
レジスタに同期状態情報をセットし、他の全てのプロセ
ッサにその同期状態情報を送出する。さらに、他の全て
のプロセッサ内の同期受信部にその同期状態情報をセッ
トする。
【0007】そして、最後に処理を終了したプロセッサ
が同期状態情報をセットし、他の全てのプロセッサ内の
同期受信部にその同期状態情報をセットする。ここで、
同期検出部が、同期受信部にセットされたプロセッサ数
分の同期状態情報を検出すると、全てのプロセッサは同
期したとみなして次の処理に移行する。
【0008】
【発明が解決しようとする課題】しかしながら、従来の
同期処理部は、1組の同期状態レジスタ、同期受信部、
同期検出部を設けていたため、1つのプロセッサで1つ
のプロセス(1つのプログラム)しか実行することがで
きなかった。また、従来の同期処理部では、複数のプロ
セッサの内、あるプログラムに同期すべきいくつかのプ
ロセッサを割り当てかつ別のプログラムに同期すべき残
りのプロセッサを割り当てることができなかった。この
ため、複数の並列処理プログラムを効率良く実行するこ
とができなかった。
【0009】本発明は、このような点に鑑みてなされた
もので、その目的とするところは、複数の並列処理プロ
グラムを効率良く実行することのできる同期処理方法及
び同期処理装置を提供することにある。
【0010】
【課題を解決するための手段】本発明は、上記課題を解
決し目的を達成するために下記の構成とした。図1は本
発明に係る同期処理装置の原理図である。図2は本発明
に係る同期処理方法の原理フローである。
【0011】図1に示すように同期処理装置は、処理を
実行する複数の処理手段1、複数の処理手段1の間で相
互に情報を転送する通信手段2を備え、各々の処理手段
1が同期をとって処理を実行する。各々の処理手段1
は、同期組記憶手段11、同期状態記憶手段12、記憶
制御手段8a、同期判定手段13、処理移行手段8を有
する。同期組記憶手段11は複数の処理手段1でいくつ
かのプログラムを処理するためにプログラム毎に同期を
とるべき処理手段の組み合わせを示す同期組情報を記憶
する。
【0012】同期状態記憶手段12は自己の処理手段が
処理を終了したときに同期待ち状態に至ったことを示す
同期状態情報を記憶する。記憶制御手段8aは同期状態
記憶手段12に同期状態情報を記憶させると共に同期状
態情報を他の全ての処理手段に送出する。
【0013】同期判定手段13は同期組記憶手段11に
記憶された同期組情報に基づき同期組情報により示され
る全ての処理手段から同期状態情報を受信したか否かを
判定する。
【0014】処理移行手段8は同期判定手段13が同期
組情報により示される全ての処理手段1から同期状態情
報を受信したと判定した場合、その同期組情報により示
される全ての処理手段に対してその同期組情報に対応す
るプログラムの次の処理に移行させる。
【0015】このような装置で実現される同期処理方法
は、複数の処理手段の間で相互に情報を転送することに
より各々の処理手段が同期をとって処理を実行する。同
期組記憶ステップ101は、複数の処理手段でいくつか
のプログラムを処理するためにプログラム毎に同期をと
るべき処理手段の組み合わせを示す同期組情報を記憶す
る。
【0016】同期状態記憶ステップ102は自己の処理
手段が処理を終了したときに同期待ち状態に至ったこと
を示す同期状態情報を記憶する。情報送出ステップ10
3は同期状態情報を他の全ての処理手段に送出する。
【0017】同期判定ステップ104は前記同期組情報
に基づき同期組情報により示される全ての処理手段から
同期状態情報を受信したか否かを判定する。処理移行ス
テップ105は、同期組情報により示される全ての処理
手段から同期状態情報が受信された場合、その同期組情
報により示される全ての処理手段に対してその同期組情
報に対応するプログラムの次の処理に移行させる。
【0018】ここで、より望ましくは以下のようにする
とよい。処理手段は、例えばプロセッサであり、通信手
段は例えばネットワークである。記憶制御手段8aは同
期状態記憶手段12に対して処理毎に同期状態情報”
1”と同期状態情報”0”とを交互に繰り返し記憶する
ようにする。同期状態記憶手段12は1ビット長のレジ
スタを用いるとよい。
【0019】記憶制御手段8aは同期組記憶手段11に
同期組情報を記憶させるようにする。また、記憶制御手
段8aと処理移行制御手段8とは複数の命令を実行する
命令処理部に設けてもよい。
【0020】全ての処理手段から送出されてくる同期状
態情報を受信してこれらの同期状態情報を同期判定手段
13に出力する同期受信部15を設けるようにする。同
期受信部15は、複数の処理手段の数に対応したビット
数のレジスタであってもよく、このレジスタは同期状態
情報を受信するとその同期状態情報を複数の処理手段に
対応付けたビット列に記憶するようにする。
【0021】同期判定手段13は同期受信部15からの
同期状態情報と同期組記憶手段11からの同期組情報と
を論理演算してその同期組情報により示される全ての処
理手段から同期状態情報を受信したか否かを判定する論
理演算回路を含むように構成する。
【0022】同期組記憶手段11は複数の処理手段の数
に対応したビット数のレジスタであり、このレジスタは
複数の処理手段に対応付けたビット列の内、同期組情報
により示される同期をとるべき全ての処理手段に対応す
るビット列に同期状態情報”1”を記憶するようにす
る。
【0023】処理移行手段8は同期判定手段13が同期
組情報により示される全ての処理手段から同期状態情報
を受信したか否かを示すための同期表示情報を記憶する
同期表示レジスタ14を設けるようにする。
【0024】同期組記憶手段11は、同期組情報により
示される全ての処理手段の数に対応したビット数のレジ
スタ16であり、さらに、このレジスタ16を各々の処
理手段1に割り付けるための制御レジスタ17を設ける
ようにする。
【0025】制御レジスタ17は1ビットのレジスタで
あり、2つのプログラムの処理を実行するために制御情
報”1”と”0”とにより2組の同期をとるべき処理手
段を割り付けるようにする。
【0026】同期受信部15は、各々の処理手段1に情
報を放送するための放送線における情報のパリティエラ
ーを検出するパリティエラー検出部20を設ける。パリ
ティエラー検出部20が1ビットエラーを検出したとき
には、処理手段1はプログラムの処理を中断せずに処理
を続行するようにする。なお、1ビットエラーを検出し
た後に更に1ビットエラーを検出した場合には、処理手
段を中断するようにする。
【0027】また、第2の発明の同期処理装置は以下の
ように構成される。各々の処理手段1は、複数の同期状
態記憶手段12、記憶制御手段8a、複数の同期判定手
段13、処理移行手段8を有する。複数の同期状態記憶
手段12は複数のプログラムに対応して設けられると共
に自己の処理手段が処理を終了したときに同期待ち状態
に至ったことを示す同期状態情報を夫々に記憶する。
【0028】記憶制御手段8aは複数の同期状態記憶手
段12の各々に対して同期状態情報を記憶させると共に
同期状態情報を全ての処理手段に送出する。複数の同期
判定手段13は前記複数の同期状態記憶手段12に対応
して設けられると共に夫々が他の全ての処理手段から同
期状態情報を受信したか否かを判定する。
【0029】処理移行手段8は複数の同期判定手段13
のいずれか1つの同期判定手段がその同期判定手段に対
応する全ての同期状態記憶手段12から同期状態情報を
受信したと判定した場合、全ての処理手段に対してその
同期判定手段13に対応するプログラムの次の処理に移
行させる。
【0030】また、第2の発明において、複数の同期状
態記憶手段12と複数の同期判定手段13とに複数のプ
ログラムの同期処理又は1つのプログラムの同期処理の
いずれかを行わせるかを選択する選択手段18を設ける
ようにする。
【0031】第2の発明において、前記選択手段18
は、記憶制御手段8aにより制御されるレジスタであっ
てもよい。第2の発明において、全ての処理手段から送
出されてくる同期状態情報を受信してこれらの同期状態
情報を複数の同期判定手段13に出力する複数の同期受
信部15を設けるようにする。
【0032】第2の発明において、複数の同期受信部1
5に対応して同期状態情報を送出するための複数の同期
放送線を設け、複数のプログラムを処理するときには各
々の放送線を放送線に対応する同期受信部に接続し、1
つのプログラムを処理するときには各々の放送線を1つ
の同期受信部に接続するモード回路19を設けるように
する。
【0033】
【作用】本発明によれば、複数の処理手段でいくつかの
プログラムを処理するためにプログラム毎に同期をとる
べき処理手段の組み合わせを示す同期組情報を記憶す
る。そして、自己の処理手段が処理を終了したときに同
期待ち状態に至ったことを示す同期状態情報を記憶し、
同期状態情報を他の全ての処理手段に送出する。
【0034】次に、同期組情報に基づき同期組情報によ
り示される全ての処理手段から同期状態情報を受信した
か否かを判定する。さらに、同期組情報により示される
全ての処理手段から同期状態情報が受信された場合、そ
の同期組情報により示される全ての処理手段に対してそ
の同期組情報に対応するプログラムの次の処理に移行さ
せる。
【0035】すなわち、同期組情報によりプログラム毎
の同期をとるべき処理手段の組み合わせが指定できるの
で、複数の処理手段でいくつかの複数ユーザの並列処理
プログラムを効率良く実行できる。
【0036】
【実施例】以下、本発明の具体的な実施例を説明する。
図3は本発明にかかる同期処理装置の実施例1を示す構
成ブロック図であり、図4はプロセッサの構成ブロック
図である。 <実施例1の構成>同期処理装置には、命令を実行する
複数のプロセッサ1−0〜1−nが設けられている。ま
た、同期処理装置には、この複数のプロセッサ1−0〜
1−nを相互に接続するとともに相互のプロセッサ1に
データ及び情報を送受信するネットワーク2が設けられ
ている。
【0037】ネットワーク2は、転送ネットワーク部2
1、同期放送部22を有している。転送ネットワーク部
21は、各々のプロセッサ1−0〜1−nに設けられた
データ転送部に転送する。同期放送部22は、各々のプ
ロセッサ1−0〜1−nの同期の状態を他のプロセッサ
の同期処理部10に放送する。
【0038】各々のプロセッサ1a〜1nは、図4に示
すように、主記憶装置7、命令処理部8、データ転送部
9、同期処理部10を有している。主記憶装置7は、複
数の命令からなるプログラムとデータとを記憶してい
る。命令処理部8は、主記憶装置7に接続され、主記憶
装置7のプログラムから命令を取り出してその命令を実
行する。
【0039】データ転送部9は、主記憶装置7、命令処
理部8、転送ネットワーク部21に接続され、主記憶装
置7と転送ネッワーク部21との間でデータの転送を行
う。図5は同期処理部10の構成ブロック図である。図
5において、同期処理部10は、命令処理部8、同期放
送部22に接続され、各々のプロセッサに対して同期処
理を行う。
【0040】この同期処理部10は、同期状態レジスタ
12、同期マスクレジスタ11、同期受信部15、同期
検出部13、同期表示レジスタ14を有している。同期
状態レジスタ12は、命令処理部8からアクセスされ、
他のプロセッサと同期をとるべき同期待ち状態に至った
ことを示す同期状態情報を記憶する1ビット長のレジス
タである。同期状態レジスタ12は、自己の処理を終了
することにより他のプロセッサと同期をとるべき状態に
達したときプログラムによって例えば同期状態情報”
1”を記憶する。
【0041】同期マスクレジスタ11は、命令処理部8
によりアクセスされ、同期組情報を記憶するnビット長
のレジスタである。ここで、nはプロセッサの台数であ
る。この同期マスクレジスタ11は、自己のプロセッサ
と同期をとるべき他のプロセッサに対しては例えば同期
組情報”1”を記憶し、自己のプロセッサと同期をとる
べきでない他のプロセッサに対しては同期組情報”0”
を記憶する。
【0042】同期受信部15は、同期放送部22に接続
され、同期放送部22から放送されてくる他のプロセッ
サ内の同期状態レジスタ12の同期状態情報を受信し、
この同期状態情報を保持するレジスタである。
【0043】同期マスクレジスタ11と同期受信部15
とには同期検出部13が接続される。この同期検出部1
3は、同期状態情報が全て”1”である状態と同期状態
情報が全て”0”である状態を検出する組合わせ回路で
ある。同期検出部13は、同期マスクレジスタ11の同
期組情報が”1”となっているプロセッサに対応する同
期状態情報が全て”1”であって、かつ同期表示レジス
タ14の情報が”0”である場合に同期表示レジスタ1
4にセット信号を送出する。
【0044】また、同期検出部13は、同期マスクレジ
スタ11の同期組情報が”1”となっているプロセッサ
に対応する同期状態情報が全て”0”であって、かつ同
期表示レジスタ14の情報が”1”である場合に同期表
示レジスタ14にリセット信号を送出する。
【0045】同期表示レジスタ14は、対象としている
全てのプロセッサの同期状態を表示する1ビット長のレ
ジスタであり、命令処理部8からアクセスされ、かつ同
期検出部13からもセット又はリセットされる。
【0046】図6は同期マスクレジスタの構成例を示す
図である。図6に示すようにビット列iがプロセッサi
に対応している。 <実施例1の動作>次に、このように構成された同期処
理装置により実現される同期処理方法を説明する。ここ
では、例えば、プログラムA,プログラムBの2つの異
なるユーザの並列プログラムが同期をとりながら実行さ
れる処理を以下に説明する。図7は2プログラムA,B
を動作した時の同期マスクレジスタの内容を示す図であ
る。図8はプログラムAの処理を示すフローである。
【0047】図7に示すようにプロセッサは例えばプロ
セッサ1−0〜1−7の8台とする。プログラムAはプ
ロセッサ1−0,1−1,1−3,1−4,1−5で実
行され、プログラムBはプロセッサ1−2,1−6,1
−7で実行されるものする。
【0048】まず、プログラムAでプロセッサ1−0,
1−1,1−3,1−4,1−5が同期をとって実行す
るに先立って、プロセッサ1−0,1−1,1−3,1
−4,1−5にそれぞれ有する同期マスクレジスタ11
に同期組情報として8ビットパターン”11011100”を設
定する(ステップ101)。
【0049】また、プログラムAでプロセッサ1−0,
1−1,1−3,1−4,1−5が同期をとって実行す
るに先立って、各々のプロセッサの同期状態レジスタ1
2の同期状態情報及び同期表示レジスタの14の情報
は、”0”に設定する。
【0050】次に、プロセッサ1−0,1−1,1−
3,1−4,1−5が処理kの実行を開始する(ステッ
プ102)。ここで、kは最初は1であるが、処理を繰
り返す場合には、値をインクリメントする。
【0051】プログラムAが実行されている各々のプロ
セッサ1−0,1−1,1−3,1−4,1−5は、プ
ログラムAにおいて、自己のプロセッサが処理を終了し
て、プロセッサ間で同期をとるべき状態に到達すると、
命令処理部8は同期状態レジスタ12の同期状態情報
に”1”を設定する(ステップ103)。
【0052】同期状態レジスタ12の同期状態情報”
1”は、命令処理部8の制御の下にネットワーク2上の
同期放送部22に送出され(ステップ104)、同期状
態情報”1”が同期放送部22から他の全てのプロセッ
サに放送される。各々のプロセッサの同期受信部15
は、全てのプロセッサの同期状態レジスタ12の同期状
態情報”1”を受信する。そして、同期検出部13は同
期受信部15の同期状態情報と同期マスクレジスタ11
の同期組情報との論理演算を行うことにより同期を検出
する(ステップ105)。ここで、同期が検出できない
場合には、同期状態情報の受信を待つ(ステップ10
6)。このとき、プログラムAを実行している各々のプ
ロセッサの命令処理部8は、既に同期状態レジスタ12
に”1”を設定しており、他のプロセッサとの同期で不
要な処理が残存している場合には、その処理を実行す
る。
【0053】そして、命令処理部8は同期表示レジスタ
14を監視し、同期表示レジスタ14の情報に1がセッ
トされているか否かを判断する(ステップ107)。こ
こで、同期表示レジスタ14の情報に1がセットされて
いない場合には、情報が1となるのを待つ(ステップ1
06)。
【0054】次に、同期組情報により示される全てのプ
ロセッサから同期情報を受信したときには同期表示レジ
スタ14の情報が”1”となるが、その動作を以下に説
明する。
【0055】図9は同期表示レジスタに”1”を設定す
るための同期検出部の構成ブロック図である。図8にお
いて、オア回路81−0〜81−(n−1)、ノット回
路82−0〜82−(n−1)、ノット回路83、アン
ド回路84が設けられる。
【0056】同期受信部15から出力されるプロセッサ
1−0〜1−n−1の同期状態情報が対応するオア回路
81−0〜81−(n−1)に入力される。例えば、オ
ア回路81−1には、同期受信部15からプロセッサ1
−1の同期状態情報が入力される。
【0057】同期マスクレジスタ11から出力されるビ
ット0〜ビットn−1までの同期組情報”11011100”が
対応するノット回路82−0〜82−(n−1)に入力
される。また、ノット回路83に表示レジスタ14から
の情報”0”が入力される。
【0058】そして、この実施例に示す8つのプロセッ
サでは、プロセッサ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である。
【0059】従って、プロセッサ1−0,1−1,1−
3,1−4,1−5の同期状態情報が全て”1”となっ
た場合には、全てのオア回路の出力は”1”となり、ア
ンド回路84の出力は”1”となるので、同期表示レジ
スタ14に”1”がセットされる。
【0060】次に、同期表示レジスタ14の情報が”
1”となると、命令処理部8はプログラムAに関連する
全てのプロセッサ1−0,1−1,1−3,1−4,1
−5が同期状態に到達したと認識して、引き続いて次の
処理k+1を続行する(ステップ108)。
【0061】次に、命令処理部8はプログラムAについ
て、プロセッサ間の同期をとるべき状態に到達すると、
同期状態レジスタ12に”0”をセットする(ステップ
109)。同期状態レジスタ12の同期状態情報”0”
はネットワーク2上の同期放送部22に送出され(ステ
ップ110)、同期状態情報”0”が同期放送部22か
ら他の全てのプロセッサに放送される。各々のプロセッ
サの同期受信部15は、全てのプロセッサの同期状態レ
ジスタ12の同期状態情報”0”を受信する。そして、
同期検出部13は同期受信部15の同期状態情報と同期
マスクレジスタ11の同期組情報との論理演算を行うこ
とにより同期を検出する(ステップ111)。ここで、
同期が検出できない場合には、同期状態情報の受信を待
つ(ステップ112)。このとき、プログラムAを実行
している各々のプロセッサの命令処理部8は、既に同期
状態レジスタ12に”0”を設定しており、他のプロセ
ッサとの同期で不要な処理が残存している場合には、そ
の処理を実行する。
【0062】そして、命令処理部8は同期表示レジスタ
14を監視し、同期表示レジスタ14の情報に0がセッ
トされているか否かを判断する(ステップ113)。こ
こで、同期表示レジスタ14の情報に0がセットされて
いない場合には、情報が0となるのを待つ(ステップ1
14)。
【0063】次に、同期組情報により示される全てのプ
ロセッサから同期情報を受信したときには同期表示レジ
スタ14の情報が”0”となるが、その動作を以下に説
明する。
【0064】図10は同期表示レジスタに”0”を設定
するための同期検出部の構成ブロック図である。図10
において、アンド回路85−0〜85−(n−1)、ノ
ット回路86、オア回路87、ノット回路88が設けら
れる。
【0065】同期受信部15から出力されるプロセッサ
1−0〜1−n−1の同期状態情報が対応するアンド回
路85−0〜85−(n−1)に入力される。同期マス
クレジスタ11から出力されるビット0〜ビットn−1
までの同期組情報”11011100”が対応するアンド回路8
5−0〜85−(n−1)に入力される。また、ノット
回路86に同期表示レジスタ14からの情報”1”が入
力される。
【0066】そして、この実施例に示す8つのプロセッ
サでは、プロセッサ1−0,1−1,1−3,1−4,
1−5の同期状態情報が全て”0”となった場合には、
オア回路87の出力は”1”となり、ノット回路88の
出力は”0”となるので、同期表示レジスタ14に”
0”がセットされる。
【0067】次に、同期表示レジスタ14の情報が”
0”となると、命令処理部8は、プログラムAに関連す
る全てのプロセッサ1−0,1−1,1−3,1−4,
1−5が同期状態に到達したと認識して、引続き次の処
理を進む。なお、このときに、このときに処理が全て終
了したか否かを判定する(ステップ114)。ここで、
処理が全て終了していない場合には、ステップ101に
戻り、ステップ101〜114までの処理を行う。
【0068】このようして、同期状態情報”1”による
同期と同期状態情報”0”による同期とを繰り返して並
列に処理を進めてゆく。一方、以上のプログラムAの動
作とは全く独立にプログラムBが割り付けられたプロセ
ッサ1−2,1−6,1−7における同期マスクレジス
タ12には同期組情報としてビットパターン”0010001
1”が設定されている。プログラムBも、図8に示す処
理フローに従って、プログラムAと同様に同期状態情
報”1”による同期と同期状態情報”0”による同期が
とられながら並列に処理が進められてゆく。このように
プログラムAとプログラムBとは全く独立に同期処理を
繰り返しながら効率的に処理を進めてゆくことができ
る。
【0069】このようにプログラム毎に、同期をとるべ
きプロセッサの組み合わせを示す同期組情報を記憶する
同期マスクレジスタを設けたので、プロセッサ台数より
も少ない複数ユーザの並列処理プログラムを効率良く実
行することができる。 <実施例2>次に、本発明の実施例2について説明す
る。実施例2が実施例1に対して特徴とするところは、
同期処理部の構成を変更した点にある。同期処理部以外
の構成は実施例1と同一構成であるので、実施例1に示
す部分と同一部分は同一符号を付し、その詳細は省略す
る。
【0070】図11は実施例2における同期処理部10
bの構成ブロック図である。図11において、同期マス
クレジスタ16は、命令処理部8からアクセスされ、プ
ロセッサの数の半分の数に対応したビット長のレジスタ
であり、当該プロセッサと同期すべきプロセッサを指定
する。実施例2では、例えばプロセッサの数が8である
ので、同期マスクレジスタ16の数は4ビット長のレジ
スタとする。
【0071】同期マスク制御レジスタ17は、命令処理
部からアクセスされる1ビット長のレジスタであり、同
期マスクレジスタ16をどのプロセッサに割り付けるか
を指定するための情報を記憶する。 <実施例2の動作>次に、このように構成された同期処
理装置により実現される同期処理方法について説明す
る。ここでは、プログラムA,プログラムBの2つの異
なるユーザの並列プログラムが同期をとりながら実行さ
れる処理を以下に説明する。図12は2プログラムA,
Bを動作した時の同期マスクレジスタの内容を示す図で
ある。図13はプログラムAの処理を示すフローであ
る。
【0072】図12に示すようにプロセッサは例えばプ
ロセッサ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で実行されるものとす
る。
【0073】まず、プログラムAでプロセッサ1−0,
1−1,1−2,1−3が同期をとった実行するに先立
って、プロセッサ1−0,1−1,1−2,1−3にそ
れぞれ有する同期マスクレジスタ16に同期組情報とし
てビットパターン”1110”を設定し、同期マスク制御レ
ジスタ17に”0”を設定する(ステップ201)。
【0074】同期マスク制御レジスタ17に”0”を設
定することにより、同期マスクレジスタ16の4ビット
がプロセッサ1−0,1−1,1−2,1−3に対応す
ることができる。
【0075】また、プログラムAでプロセッサ1−0,
1−1,1−2,1−3が同期をとって実行するに先立
って、各々のプロセッサの同期状態レジスタ12及び同
期表示レジスタ14の値は、いずれも”0”に設定す
る。
【0076】次に、プロセッサ1−0,1−1,1−
2,1−3が処理kの実行を開始する(ステップ20
2)。プログラムAが実行されている各々のプロセッサ
1−0,1−1,1−2,1−3は、プログラムA上で
同期をとるべき状態に到達すると、同期状態レジスタ1
2に”1”を設定する(ステップ203)。
【0077】同期状態レジスタ12の同期状態情報”
1”はネットワーク2上の同期放送部22に送出され
(ステップ204)、同期状態情報”1”が同期放送部
22から他の全てのプロセッサに放送される。各々のプ
ロセッサの同期受信部15は、全てのプロセッサの同期
状態レジスタ12の同期状態情報”1”を受信する。そ
して、同期検出部13は同期受信部15の同期状態情報
と同期マスクレジスタ16の同期組情報との論理演算を
行うことにより同期を検出する(ステップ205)。こ
こで、同期が検出できない場合には、同期状態情報の受
信を待つ(ステップ206)。このとき、プログラムA
を実行している各々のプロセッサの命令処理部8は、既
に同期状態レジスタ12に”1”を設定しており、他の
プロセッサとの同期で不要な処理が残存している場合に
は、その処理を実行する。
【0078】そして、命令処理部8は同期表示レジスタ
14を監視し、同期表示レジスタ14の情報に1がセッ
トされているか否かを判断する(ステップ207)。こ
こで、同期表示レジスタ14の情報に1がセットされて
いない場合には、情報が1となるのを待つ(ステップ2
06)。
【0079】次に、同期組情報により示される全てのプ
ロセッサから同期情報を受信したときには同期表示レジ
スタ14の情報が”1”となるが、その動作は図9に示
すものと同一である。
【0080】そして、この実施例に示す8つのプロセッ
サでは、プロセッサ1−0,1−1,1−2の同期状態
情報が全て”1”となった場合に同期表示レジスタ14
に”1”がセットされる。
【0081】同期表示レジスタ14の情報が”1”とな
ると、プログラムAに関連する全てのプロセッサ1−
0,1−1,1−2,1−3が同期状態に到達したと認
識する。ここでは、プロセッサ1−3に対応する同期マ
スクレジスタの同期組情報が”0”であるため、プロセ
ッサ1−3の同期に関係なく同期がとれたと認識する。
そして、引続き次の処理k+1を続行する(ステップ2
08)。
【0082】プログラムAはプロセッサ間の同期が必要
な時刻に到達すると、同期状態レジスタ12に”0”を
セットする(ステップ209)。同期状態レジスタ12
の同期状態情報”0”はネットワーク2上の同期放送部
22に送出され(ステップ210)、同期状態情報”
0”が同期放送部22から他の全てのプロセッサに放送
される。各々のプロセッサの同期受信部15は、全ての
プロセッサの同期状態レジスタ12の同期状態情報”
0”を受信する。そして、同期検出部13は同期受信部
15の同期状態情報と同期マスクレジスタ16の同期組
情報との論理演算を行うことにより同期を検出する(ス
テップ211)。ここで、同期が検出できない場合に
は、同期状態情報の受信を待つ(ステップ212)。こ
のとき、プログラムAを実行している各々のプロセッサ
の命令処理部8は、既に同期状態レジスタ12に”0”
を設定しており、他のプロセッサとの同期で不要な処理
が残存している場合には、その処理を実行する。
【0083】そして、命令処理部8は同期表示レジスタ
14を監視し、同期表示レジスタ14の情報に0がセッ
トされているか否かを判断する(ステップ213)。こ
こで、同期表示レジスタ14の情報に0がセットされて
いない場合には、情報が0となるのを待つ(ステップ2
12)。
【0084】次に、同期組情報により示される全てのプ
ロセッサから同期情報を受信したときには同期表示レジ
スタ14の情報が”0”となるが、その動作は図10に
示すものと同一である。
【0085】同期表示レジスタ14の値が”0”となる
と、プログラムAに関連する全てのプロセッサ1−0,
1−1,1−2,1−3が同期状態に到達したと認識し
て、引続き次の処理を進むわけであるが、このときに処
理が全て終了したか否かを判定する(ステップ21
4)。ここで、処理が全て終了していない場合には、ス
テップ201に戻り、ステップ201〜214までの処
理を行う。
【0086】このようして、同期状態情報”1”による
同期と同期状態情報”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”
による同期がとられながら並列に処理が進められてゆ
く。
【0087】このようにプログラムAとプログラムBと
は全く独立に同期処理を繰り返しながら効率的に処理を
進めてゆくことができる。このようにプロセッサ間で同
期を行う同期処理装置において、同期すべきプロセッサ
の組み合わせを指定するための同期マスクレジスタ16
を、プロセッサの台数よりも少なく設け、同期マスクレ
ジスタを同期マスク制御レジスタにより制御するので、
プロセッサ台数よりも少ない同期マスクレジスタにより
複数ユーザの並列処理プログラムを効率良く実行するこ
とができる。
【0088】また、2つ以上のプログラムを並列に実行
する場合には、次のようにすればよい。例えば図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
の処理を示すフローである。
【0089】実施例3における同期処理部10cは、同
期状態レジスタ、同期マスクレジスタ、同期受信部、同
期検出部、同期表示レジスタを2組設けた点にある。そ
して、一方の組をプログラムAの同期処理用とし、他方
の組をプログラムBの同期処理用としている。
【0090】図15において、同期状態レジスタ11
a、同期マスクレジスタ11a、同期受信部15a、同
期検出部13a、同期表示レジスタ14aは、プログラ
ムAの処理を同期をとって実行するために設けられてい
る。同期状態レジスタ11b、同期マスクレジスタ11
b、同期受信部15b、同期検出部13b、同期表示レ
ジスタ14bは、プログラムBの処理を同期をとって実
行するために設けられている。
【0091】また、実施例2に設けられるプロセッサの
数は、前記同期状態レジスタ等を2組設けることによ
り、実施例1で設けられたプロセッサの数の半分であ
る。 <実施例3の動作>次に、このように構成された同期処
理装置により実現される同期処理方法について説明す
る。実施例3では、プログラムA,プログラムBの2つ
の異なるユーザの並列プログラムが同期をとりながら実
行される処理を以下に説明する。プロセッサ1−0〜1
−3の4台とする。プログラムA及びBともにプロセッ
サ1−0,1−1,1−2,1−3で実行されるものと
する。
【0092】まず、プログラムAでプロセッサ1−0,
1−1,1−2,1−3が同期をとって実行するに先立
って、プロセッサ1−0,1−1,1−2,1−3にそ
れぞれ有する同期マスクレジスタ11aにビットパター
ン”1111”を設定する(ステップ301)。
【0093】また、プログラムAでプロセッサ1−0,
1−1,1−2,1−3が同期をとって実行するに先立
って、各々のプロセッサの同期状態レジスタ11a及び
同期表示レジスタ14aの値は、いずれも”0”に設定
する。
【0094】次に、プロセッサ1−0,1−1,1−
2,1−3が処理kの実行を開始する(ステップ30
2)。プログラムAが実行されている各々のプロセッサ
1−0,1−1,1−2,1−3は、プログラムA上で
同期をとるべき状態に到達すると、同期状態レジスタ1
2aに”1”を設定する(ステップ303)。
【0095】同期状態レジスタ12aの同期状態情報”
1”はネットワーク2上の同期放送部22に送出され
(ステップ304)、同期状態情報”1”が同期放送部
22から他の全てのプロセッサに放送される。各々のプ
ロセッサの同期受信部15aは、全てのプロセッサの同
期状態レジスタ12aの同期状態情報”1”を受信す
る。そして、同期検出部13aは同期受信部15aの同
期状態情報と同期マスクレジスタ11aの同期組情報と
の論理演算を行うことにより同期を検出する(ステップ
305。なお、同期が検出できない場合、同期状態情報
の受信待ちとなる(ステツプ306)。さらに同期表示
レジスタ14aの値が1にセットされているか否かを判
断する(ステップ307)。
【0096】なお、同期表示レジスタ14aに”1”を
設定するための同期検出部の構成は図9に示すものと同
一構成である。そして、この実施例に示す4つのプロセ
ッサでは、プロセッサ1−0,1−1,1−2,1−3
の同期状態情報が全て”1”となった場合に同期表示レ
ジスタ14aに”1”がセットされる。
【0097】同期表示レジスタ14aの値が”1”とな
ると、プログラムAに関連する全てのプロセッサ1−
0,1−1,1−2,1−3が同期状態に到達したと認
識する。引続き次の処理k+1を続行する(ステップ3
08)。
【0098】プログラムAはプロセッサ間の同期が必要
な時刻に到達すると、同期状態レジスタ12aに”0”
をセットする(ステップ309)。同期状態レジスタ1
2aの同期状態情報”0”はネットワーク2上の同期放
送部22に送出され(ステップ310)、同期状態情
報”0”が同期放送部22から他の全てのプロセッサに
放送される。各々のプロセッサの同期受信部15aは、
全てのプロセッサの同期状態レジスタ12aの同期状態
情報”0”を受信する。そして、同期検出部13aは同
期受信部15aの同期状態情報と同期マスクレジスタ1
1aの同期組情報との論理演算を行うことにより同期を
検出する(ステップ311)。
【0099】さらに同期表示レジスタ14aの値が0に
セットされているか判断する(ステップ313)。同期
表示レジスタ14aに”0”を設定するための同期検出
部の構成は図10に示すものと同一構成である。
【0100】同期表示レジスタ14aの値が”0”とな
ると、プログラムAに関連する全てのプロセッサ1−
0,1−1,1−2,1−3が同期状態に到達したと認
識して、引続き次の処理を進むわけであるが、このとき
に処理が全て終了したか否かを判定する(ステップ31
4)。ここで、処理が全て終了していない場合には、ス
テップ301に戻り、ステップ301〜314までの処
理を行う。
【0101】このようして、同期状態情報”1”による
同期と同期状態情報”0”による同期とを繰り返して並
列に処理を進めてゆく。一方、以上のプログラムAの動
作とは全く独立にプログラムBがプロセッサ1−0,1
−1,1−2,1−3における同期マスクレジスタ11
bにはビットパターン”1111”が設定され、プログラム
Bも、プログラムAと同様に同期状態情報”1”による
同期と同期状態情報”0”による同期がとられながら並
列に処理が進められてゆく。
【0102】このようにプロセッサ間で同期を行う同期
処理装置において、同期処理部に、同期状態レジスタ、
同期マスクレジスタ、同期表示レジスタ等を複数設ける
ことにより、複数ユーザの並列処理プログラムを少ない
プロセッサ数で効率良く実行することができる。 <実施例4>次に、本発明の実施例4について説明す
る。図17は実施例4の同期処理部の構成ブロック図で
ある。実施例3においては、複数のプロセスを実行でき
る構成となっている。
【0103】しかし、例えば1プロセスのみ実行する場
合には一方の1組のレジスタ等のみ用いることになり、
他方の1組のレジスタ等が無駄になっていた。そこで、
実施例4は複数のプロセスと1プロセスとを切り換える
ことにより並列処理プログラムを実行するものである。
【0104】図17において、実施例4の同期処理部1
0dは、同期状態レジスタ12a、同期マスクレジスタ
11a、同期受信部15a、同期検出部13a、同期表
示レジスタ14aを有している。また、同期処理部10
dは、同期状態レジスタ12b、同期マスクレジスタ1
1b、同期受信部15b、同期検出部13b、同期表示
レジスタ14bを有している。
【0105】同期サイドコントロールレジスタ18は命
令処理部8からアクセスされ、2ビット長のレジスタで
あり、1プロセッサについて2プロセス(2プログラ
ム)又は1プロセッサについて1プロセス(1プログラ
ム)のいずれかを指定するための2プロセス情報又は1
プロセス情報とを記憶する。
【0106】同期サイドコントロールレジスタ18は、
同期状態レジスタ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の処理を同期をとり
ながら実行する。
【0107】図18(a)に示すように1つのプロセッ
サ内において、命令処理部8でプログラムAの演算Aを
行う(ステップ401)。そして、同期処理部10dで
処理の同期Aを行い(ステップ402)、データ転送部
9で他のプロセッサに演算結果データの転送Aを行う
(ステップ403)。さらに、次の処理に進みステップ
404、405を行っていく。
【0108】また、命令処理部8が同期サイドコントロ
ールレジスタ18に”10”を設定すると、同期状態レ
ジスタ11b、同期マスクレジスタ11b、同期受信部
15b、同期検出部13b、同期表示レジスタ14bは
2プロセス情報”10”に基づきプログラムBの処理を
同期をとりながら実行する。
【0109】図18(b)に示すように1つのプロセッ
サ内において、命令処理部8でプログラムBの演算Bを
行う(ステップ411)。そして、同期処理部10dで
処理の同期Bを行い(ステップ411)、データ転送部
9で他のプロセッサに演算結果データの転送Bを行う
(ステップ413)。さらに、次の処理に進みステップ
414、415を行っていく。すなわち、1つのプロセ
ッサにより2プロセスの動作が行われる。
【0110】図19は1つのプロセッサによる1プロセ
ス処理を示すフローである。次に、1つのプログラムC
をプログラムC1,C2に分割しプログラムC1,C2
を並列に実行する場合について説明する。同期サイドコ
ントロールレジスタ18に1プロセス情報”11”を設
定すると、同期状態レジスタ11a、同期マスクレジス
タ11a、同期受信部15a、同期検出部13a、同期
表示レジスタ14aは1プロセス情報”11”に基づ
き、プログラムC1の処理を同期しながら実行する。
【0111】図19(a)に示すように1つのプロセッ
サ内において、命令処理部でプログラムC1の演算C1
を行う(ステップ421)。そして、同期処理部で処理
の同期C1を行い(ステップ422)、データ転送部で
他のプロセッサに演算結果データの転送C1を行う(ス
テップ423)。さらに、次の処理に進みステップ42
4、425を行っていく。
【0112】また、同期状態レジスタ11b、同期マス
クレジスタ11b、同期受信部15b、同期検出部13
b、同期表示レジスタ14bは1プロセス情報”11”
に基づき、プログラムC2の処理を同期しながら実行す
る。
【0113】図19(b)に示すように1つのプロセッ
サ内において、命令処理部でプログラムC2の演算C2
を行う(ステップ431)。そして、同期処理部で処理
の同期C2を行い(ステップ432)、データ転送部で
他のプロセッサに演算結果データの転送C2を行う(ス
テップ433)。さらに、次の処理に進みステップ43
4、435を行っていく。すなわち、1つのプロセッサ
により1プロセスの動作が行われる。
【0114】このように1つのプロセッサによる2プロ
セス処理又は1つのプロセッサによる1プロセス処理を
切り換えることにより、複数ユーザの並列処理プログラ
ムと1ユーザの並列処理プログラムを効率良く実行する
ことができる。
【0115】<実施例5>次に、本発明の実施例5につ
いて説明する。前記実施例3に示す同期処理装置は、各
々のプロセッサに複数の組のレジスタ等を設け、複数の
並列処理プログラムを実行する場合には各々のプロセッ
サの同期状態情報を放送する放送線がプロセス毎に設定
される。
【0116】しかし、1つのプロセスを実行する場合に
は1セット分の放送線しか使用されない。この場合に複
数の放送線を用いて1つのプロセスを同期をとって処理
すれば、処理の高速化が図れる。
【0117】実施例5は複数の放送線を用いて1つのプ
ロセスを同期をとって処理するものである。図20は実
施例5の同期処理部10eの構成ブロック図である。実
施例5の同期処理部10eは、実施例3の同期処理部1
0cと同様に2組のレジスタ等を設けている。また、同
期受信部15a,15bに対応して2つの放送線23
a,23bを設けている。
【0118】モード回路19は、命令処理部8、同期受
信部15a,15bに接続され、プロセッサ同期処理装
置の電源を投入した時に、命令処理部8から1モード情
報”0”又は2モード情報”1”が設定される1ビット
長のレジスタである。
【0119】モード回路19は、1モード情報”0”の
ときに同期放送線23a及び同期放送線23bを同期受
信部15aに接続する。また、モード回路19は、2モ
ード情報”1”のときに同期放送線23aを同期受信部
15aに接続し、同期放送線23bを同期受信部15b
に接続する。 <実施例5の動作>図21は実施例5の同期放送線の2
プロセスモードのデータ形式を示す図である。図22は
実施例5の同期放送線の1プロセスモードのデータ形式
を示す図である。
【0120】以上の構成の下に、2組の同期状態レジス
タ11a,11bを用いて2プロセスを並列処理する場
合について図20及び図21を参照して説明する。ま
ず、命令処理部8がモード回路19に2モード情報”
1”を設定する。すると、モード回路19は、同期放送
線23aを同期受信部15aに接続し、同期放送線23
bを同期受信部15bに接続する。
【0121】そして、図21に示すように、同期放送線
23aはヘッダを放送し、さらに同期状態レジスタ12
aの同期状態情報aを放送する。また、この動作と並列
に、同期放送線23bはヘッダを放送し、さらに同期状
態レジスタ12bの同期状態情報bを放送する。する
と、同期受信部15aは同期状態レジスタ12aの同期
状態情報aを受信し、同期受信部15bは同期状態レジ
スタ11bの同期状態情報bを受信する。
【0122】これにより、2プロセスを並列に実行する
ことができる。次に、一方の同期状態レジスタ12a等
を用いて1プロセスを処理する場合について図20及び
図22を参照して説明する。命令処理部8がモード回路
19に1モード情報”0”を設定すると、モード回路1
9は、同期放送線23a及び同期放送線23bを同期受
信部15aに接続する。
【0123】そして、2本の同期放送線23a,23b
は同期状態レジスタ12aの同期状態情報を放送する。
例えば、同期状態情報は図22に示すように、放送線2
3aから同期状態情報a1が送られ、一定時間を経過し
た後に放送線23bから同期状態情報a2が送られてく
る。すなわち、ビットシリアルにより位相がずれて送ら
れてくる。各々のプロセッサの同期受信部15aでは、
2つの放送線23a,23bの内のタイミングのあった
同期状態情報により同期をとることができる。
【0124】このように2プロセスを実行できる装置に
おいて、1プロセスモードと2プロセスモードとの2つ
のモードを設定できるモード回路19を設け、1プロセ
スのみを実行する場合には、モード回路19によって1
プロセスモードを設定する。
【0125】すなわち、1プロセス時には2つの放送線
23a,23bを用いて同期状態情報を転送するので、
高速に同期をとることができ、並列処理プログラムを効
率良く実行することができる。 <実施例6>次に、本発明の実施例6について説明す
る。同期放送線の同期状態情報はビットシリアルで転送
されるが、同期放送線において同期状態情報がノイズ等
の影響により1ビットパリティエラーを発生する場合が
ある。この場合には、パリティエラーを検出したプロセ
ッサがネットワーク2から切り離されるため、プログラ
ムの実行が中断する。このような軽微なエラーのために
プログラムの実行を中断すると、処理の実行が非効率と
なる。
【0126】実施例6は放送線に1ビットエラーが発生
した場合には、プログラムを中断せずに実行するもので
ある。図23は実施例6の同期処理部10fの構成ブロ
ック図である。図24に同期放送線のデータ形式を示
す。同期放送線は図24に示すようにヘッダ、プロセッ
サ1−0〜1−7までの同期状態情報、パリティPとシ
リアルにデータを送る。
【0127】同期受信部15は、同期放送部22から1
ビットシリアルで放送される各々のプロセッサの同期状
態レジスタ11の同期状態情報を受信するとともに8ビ
ット毎に1ビットのパリティPを受信し、それらの情報
を保持するレジスタである。
【0128】パリティエラー検出部20は、同期受信部
15で8ビット毎に受信した1ビットのパリティについ
てエラーがあるか否かをチェックする。図25はパリテ
ィエラー検出部20とその周辺部の構成ブロック図であ
る。 <実施例6の動作>図23及び図25を参照して実施例
6の動作を説明する。1ビット長のプリップフロップ3
1(FF)は、同期放送部22から同期放送線23を通
して1ビットシリアルで放送されてくる同期状態情報を
受信する。そして、次のタイミングで同期状態情報8ビ
ットと1ビットのパリティPを揃えてFF32にセット
し、パリティチェッカ34でパリティチェックを行う。
【0129】ここで、パリティチェッカ34でデータの
1ビットエラーを検出した場合には、FF35,36を
通して命令処理部8にシステムを中断しないことを示す
システム保持情報を命令処理部8に通知する。
【0130】一方、この時のデータが同期表示レジスタ
14の情報を変更してしまうようなデータである場合に
は、アンド回路39(AND)を通してシステムダウン
情報を命令処理部8に通知し、システムダウンとなる。
【0131】また、パリティチェッカ34でデータの1
ビットエラーを1度検出した後に、FF38で再度1ビ
ットエラーを検出した場合には、命令処理部8にシステ
ムダウン情報を報告し、システムダウンとなる。
【0132】このように放送線のデータにノイズ等の影
響により1ビットエラーが発生した場合に、プログラム
を中断せずに処理を実行することができ、並列処理プロ
グラムを効率的に実行することができる。
【0133】
【発明の効果】本発明によれば、同期組情報によりプロ
グラム毎の同期をとるべき処理手段の組み合わせが指定
できるので、複数の処理手段でいくつかの複数ユーザの
並列処理プログラムを効率良く実行できる。
【0134】また、1つの処理手段で複数のプログラム
を並列に処理でき、並列処理プログラムの高速処理を図
ることができる。
【図面の簡単な説明】
【図1】本発明に係る同期処理装置の原理図である。
【図2】本発明に係る同期処理方法の原理フローであ
る。
【図3】本発明にかかる同期処理装置の実施例1を示す
構成ブロック図である。
【図4】プロセッサの構成ブロック図である。
【図5】同期処理部の構成ブロック図である。
【図6】同期マスクレジスタの構成例を示す図である。
【図7】実施例1の2プログラムを動作した時の同期マ
スクレジスタの内容を示す図である。
【図8】実施例1のプログラムAの処理を示すフローで
ある。
【図9】同期表示レジスタに”1”を設定するための同
期検出部の構成ブロック図である。
【図10】同期表示レジスタに”0”を設定するための
同期検出部の構成ブロック図である。
【図11】実施例2の同期処理部の構成ブロック図であ
る。
【図12】実施例2の2プログラムを動作した時の同期
マスクレジスタと同期マスク制御レジスタの内容を示す
図である。
【図13】実施例2のプログラムAの処理を示すフロー
である。
【図14】3プログラムを動作した時の同期マスクレジ
スタと同期マスク制御レジスタの内容を示す図である。
【図15】実施例3の同期処理部の構成ブロック図であ
る。
【図16】実施例3のプログラムAの処理を示すフロー
である。
【図17】実施例4の同期処理部の構成ブロック図であ
る。
【図18】1つのプロセッサによる2プロセス処理を示
すフローである。
【図19】1つのプロセッサによる1プロセス処理を示
すフローである。
【図20】実施例5の同期処理部の構成ブロック図であ
る。
【図21】実施例5の同期放送線の2プロセスモードの
データ形式を示す図である。
【図22】実施例5の同期放送線の1プロセスモードの
データ形式を示す図である。
【図23】実施例6の同期処理部の構成ブロック図であ
る。
【図24】同期放送線のデータ形式を示す図である。
【図25】パリティエラー検出部とその周辺部の構成ブ
ロック図である。
【符号の説明】
1・・プロセッサ 2・・ネットワーク 7・・主記憶装置 8・・命令処理部 9・・データ転送部 10・・同期処理部 11・・同期マスクレジスタ 12・・同期状態レジスタ 13・・同期検検出部 14・・同期表示レジスタ 15・・同期受信部 17・・同期マスク制御レジスタ 18・・同期サイドコントロールレジスタ 19・・モード回路 20・・パリティエラー検出部 21・・転送ネットワーク部 22・・同期放送部 81,87・・オア回路 82,83,88・・ノット回路 84,85・・アンド回路
フロントページの続き (72)発明者 上埜 治彦 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 新庄 直樹 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 内海 照雄 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 小早川 和重 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 石坂 賢一 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 高村 守幸 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内

Claims (29)

    【特許請求の範囲】
  1. 【請求項1】 複数の処理手段の間で相互に情報を転送
    することにより各々の処理手段が同期をとって処理を実
    行する同期処理方法において、 複数の処理手段でいくつかのプログラムを処理するため
    にプログラム毎に同期をとるべき処理手段の組み合わせ
    を示す同期組情報を記憶する同期組記憶ステップ(10
    1)と、 自己の処理手段が処理を終了したときに同期待ち状態に
    至ったことを示す同期状態情報を記憶する同期状態記憶
    ステップ(102)と、 同期状態情報を他の全ての処理手段に送出する情報送出
    ステップ(103)と、 前記同期組情報に基づき同期組情報により示される全て
    の処理手段から同期状態情報を受信したか否かを判定す
    る同期判定ステップ(104)と、 同期組情報により示される全ての処理手段から同期状態
    情報が受信された場合、その同期組情報により示される
    全ての処理手段に対してその同期組情報に対応するプロ
    グラムの次の処理に移行させる処理移行ステップ(10
    5)とからなる同期処理方法。
  2. 【請求項2】 請求項1において、前記同期状態記憶ス
    テップ(102)は、処理毎に同期状態情報”1”と同
    期状態情報”0”とを交互に繰り返し記憶することを特
    徴とする同期処理方法。
  3. 【請求項3】 請求項1において、前記同期判定ステッ
    プ(104)は、同期状態情報を受信するとその同期状
    態情報をレジスタに記憶する受信ステップを含むことを
    特徴とする同期処理方法。
  4. 【請求項4】 請求項1において、前記同期判定ステッ
    プ(104)は、受信した同期状態情報と同期組情報と
    を論理演算してその同期組情報により示される全ての処
    理手段から同期状態情報を受信したか否かを判定する論
    理演算ステップを含むことを特徴とする同期処理方法。
  5. 【請求項5】 請求項1において、前記処理移行ステッ
    プ(105)は、同期組情報により示される全ての処理
    手段から同期状態情報を受信したか否かを示すための同
    期表示情報を記憶する同期表示ステップを含むことを特
    徴とする同期処理方法。
  6. 【請求項6】 請求項1において、前記同期判定ステッ
    プ(104)は、各々の処理手段(1)に情報を放送す
    るための放送線における情報のパリティエラーを検出す
    るエラー検出ステップを含むことを特徴とする同期処理
    方法。
  7. 【請求項7】 処理を実行する複数の処理手段(1)
    と、複数の処理手段(1)の間で相互に情報を転送する
    通信手段(2)とを備え、各々の処理手段(1)が同期
    をとって処理を実行する同期処理装置において、 各々の処理手段(1)は、複数の処理手段(1)でいく
    つかのプログラムを処理するためにプログラム毎に同期
    をとるべき処理手段の組み合わせを示す同期組情報を記
    憶する同期組記憶手段(11)と、 自己の処理手段が処理を終了したときに同期待ち状態に
    至ったことを示す同期状態情報を記憶する同期状態記憶
    手段(12)と、 同期状態記憶手段(12)に同期状態情報を記憶させる
    と共に同期状態情報を他の全ての処理手段に送出する記
    憶制御手段(8a)と、 同期組記憶手段(11)に記憶された同期組情報に基づ
    き同期組情報により示される全ての処理手段から同期状
    態情報を受信したか否かを判定する同期判定手段(1
    3)と、 同期判定手段(13)が同期組情報により示される全て
    の処理手段(1)から同期状態情報を受信したと判定し
    た場合、その同期組情報により示される全ての処理手段
    に対してその同期組情報に対応するプログラムの次の処
    理に移行させる処理移行手段(8)とを有する同期処理
    装置。
  8. 【請求項8】 請求項7において、前記記憶制御手段
    (8a)は、同期状態記憶手段(12)に対して、処理
    毎に同期状態情報”1”と同期状態情報”0”とを交互
    に繰り返しセットすることを特徴とする同期処理装置。
  9. 【請求項9】 請求項7又は請求項8において、前記同
    期状態記憶手段(12)は、1ビット長のレジスタであ
    ることを特徴とする同期処理装置。
  10. 【請求項10】 請求項7において、前記記憶制御手段
    (8a)は、同期組記憶手段(11)に同期組情報を記
    憶させることを特徴とする同期処理装置。
  11. 【請求項11】 請求項7において、前記全ての処理手
    段から送出されてくる同期状態情報を受信してこれらの
    同期状態情報を同期判定手段(13)に出力する同期受
    信部(15)を設けたことを特徴とする同期処理装置。
  12. 【請求項12】 請求項11において、前記同期受信部
    (15)は、複数の処理手段の数に対応したビット数の
    レジスタであり、このレジスタは同期状態情報を受信す
    るとその同期状態情報を複数の処理手段に対応付けたビ
    ット列に記憶することを特徴とする同期処理装置。
  13. 【請求項13】 請求項11において、同期判定手段
    (13)は、前記同期受信部(15)からの同期状態情
    報と前記同期組記憶手段(11)からの同期組情報とを
    論理演算してその同期組情報により示される全ての処理
    手段から同期状態情報を受信したか否かを判定する論理
    演算回路を含むことを特徴とする同期処理装置。
  14. 【請求項14】 請求項7において、前記同期組記憶手
    段(11)は、複数の処理手段の数に対応したビット数
    のレジスタであり、このレジスタは複数の処理手段に対
    応付けたビット列の内、同期組情報により示される同期
    をとるべき全ての処理手段に対応するビット列に同期状
    態情報”1”を記憶することを特徴とする同期処理装
    置。
  15. 【請求項15】 請求項7において、前記処理移行手段
    (8)は、同期判定手段(13)が同期組情報により示
    される全ての処理手段から同期状態情報を受信したか否
    かを示すための同期表示情報を記憶する同期表示レジス
    タ(14)を設けたことを特徴とする同期処理装置。
  16. 【請求項16】 請求項7において、前記同期組記憶手
    段(11)は、同期組情報により示される全ての処理手
    段の数に対応したビット数のレジスタ(16)であり、
    さらに、このレジスタ(16)を各々の処理手段(1)
    に割り付けるための制御レジスタ(17)を設けたこと
    を特徴とする同期処理装置。
  17. 【請求項17】 請求項16において、前記制御レジス
    タ(17)は、1ビットのレジスタであり、2つのプロ
    グラムの処理を実行するために制御情報”1”と”0”
    とにより2組の同期をとるべき処理手段を割り付けるこ
    とを特徴とする同期処理装置。
  18. 【請求項18】 請求項11において、前記同期受信部
    (15)は、各々の処理手段(1)に情報を放送するた
    めの放送線における情報のパリティエラーを検出するパ
    リティエラー検出部(20)を設けたことを特徴とする
    同期処理装置。
  19. 【請求項19】 請求項11において、前記パリティエ
    ラー検出部(20)が1ビットエラーを検出したときに
    は、処理手段(1)はプログラムの処理を中断せずに処
    理を続行することを特徴とする同期処理装置。
  20. 【請求項20】 処理を実行する複数の処理手段(1)
    と、複数の処理手段(1)の間で相互に情報を転送する
    通信手段(2)とを備え、各々の処理手段(1)が同期
    をとって処理を実行する同期処理装置において、 各々の処理手段(1)は、複数のプログラムに対応して
    設けられると共に自己の処理手段が処理を終了したとき
    に同期待ち状態に至ったことを示す同期状態情報を夫々
    に記憶する複数の同期状態記憶手段(12)と、 複数の同期状態記憶手段(12)の各々に対して同期状
    態情報を記憶させると共に同期状態情報を全ての処理手
    段に送出する記憶制御手段(8a)と、 前記複数の同期状態記憶手段(12)に対応して設けら
    れると共に夫々が他の全ての処理手段から同期状態情報
    を受信したか否かを判定する複数の同期判定手段(1
    3)と、 複数の同期判定手段(13)のいずれか1つの同期判定
    手段がその同期判定手段に対応する全ての同期状態記憶
    手段(12)から同期状態情報を受信したと判定した場
    合、全ての処理手段に対してその同期判定手段(13)
    に対応するプログラムの次の処理に移行させる処理移行
    手段(8)とを有する同期処理装置。
  21. 【請求項21】 請求項20において、前記複数の同期
    状態記憶手段(12)と複数の同期判定手段(13)と
    に複数のプログラムの同期処理又は1つのプログラムの
    同期処理のいずれかを行わせるかを選択する選択手段
    (18)を設けたことを特徴とする同期処理装置。
  22. 【請求項22】 請求項21において、前記選択手段
    (18)は、前記記憶制御手段(8a)により制御され
    るレジスタであることを特徴とする同期処理装置。
  23. 【請求項23】 請求項20において、前記全ての処理
    手段から送出されてくる同期状態情報を受信してこれら
    の同期状態情報を複数の同期判定手段(13)に出力す
    る複数の同期受信部(15)を設けたことを特徴とする
    同期処理装置。
  24. 【請求項24】 請求項23において、前記複数の同期
    受信部(15)に対応して同期状態情報を送出するため
    の複数の同期放送線を設け、 複数のプログラムを処理するときには各々の放送線を放
    送線に対応する同期受信部に接続し、1つのプログラム
    を処理するときには各々の放送線を1つの同期受信部に
    接続するモード回路(19)を設けたことを特徴とする
    同期処理装置。
  25. 【請求項25】 請求項20において、前記記憶制御手
    段(8a)は、同期状態記憶手段(12)に対して、処
    理毎に同期状態情報”1”と同期状態情報”0”とを交
    互に繰り返しセットすることを特徴とする同期処理装
    置。
  26. 【請求項26】 請求項20において、前記同期状態記
    憶手段(12)は、1ビット長のレジスタであることを
    特徴とする同期処理装置。
  27. 【請求項27】 請求項23において、前記同期受信部
    (15)は、複数の処理手段の数に対応したビット数の
    レジスタであり、このレジスタは同期状態情報を受信す
    るとその同期状態情報を複数の処理手段に対応付けたビ
    ット列に記憶することを特徴とする同期処理装置。
  28. 【請求項28】 請求項23において、同期判定手段
    (13)は、前記同期受信部(15)からの同期状態情
    報と前記同期組記憶手段(11)からの同期組情報とを
    論理演算してその同期組情報により示される全ての処理
    手段から同期状態情報を受信したか否かを判定する論理
    演算回路を含むことを特徴とする同期処理装置。
  29. 【請求項29】 請求項20において、前記処理移行手
    段(8)は、同期判定手段(13)が同期組情報により
    示される全ての処理手段から同期状態情報を受信したか
    否かを示すための同期表示情報を記憶する複数の同期表
    示レジスタ(14)を設けたことを特徴とする同期処理
    装置。
JP33850292A 1992-12-18 1992-12-18 同期処理方法及び同期処理装置 Expired - Fee Related JP3285629B2 (ja)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Cited By (1)

* Cited by examiner, † Cited by third party
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