JPH0346052A - プロセツサ間通信方法 - Google Patents
プロセツサ間通信方法Info
- Publication number
- JPH0346052A JPH0346052A JP18031389A JP18031389A JPH0346052A JP H0346052 A JPH0346052 A JP H0346052A JP 18031389 A JP18031389 A JP 18031389A JP 18031389 A JP18031389 A JP 18031389A JP H0346052 A JPH0346052 A JP H0346052A
- Authority
- JP
- Japan
- Prior art keywords
- processor
- message
- area
- storage area
- message storage
- 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.)
- Pending
Links
- 238000004891 communication Methods 0.000 title claims abstract description 30
- 238000000034 method Methods 0.000 title claims description 15
- 230000005540 biological transmission Effects 0.000 claims abstract description 26
- 238000005516 engineering process Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 241000282373 Panthera pardus Species 0.000 description 1
Landscapes
- Multi Processors (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は、疎結合マルチプロセッサ計算機システムにお
ける通信方法に係わり、特に通信のための割り込み命令
削減によるプロセッサ通信の高速化に関する。
ける通信方法に係わり、特に通信のための割り込み命令
削減によるプロセッサ通信の高速化に関する。
複数のプロセッサが、プロセッサの命令により直接アク
セスできる記憶装置を共有する計算機システムにおける
プロセッサ間通信方法の従来技術には、(中断)特許部
受付番号−3187037がある。
セスできる記憶装置を共有する計算機システムにおける
プロセッサ間通信方法の従来技術には、(中断)特許部
受付番号−3187037がある。
当該従来技術は、上記記憶装置に通信用バッファを各プ
ロセッサ毎に設けることにより、処理の高速化、及びメ
モリオーバヘッドの削減を図っている。
ロセッサ毎に設けることにより、処理の高速化、及びメ
モリオーバヘッドの削減を図っている。
上記従来技術においては、前記メツセージ格納域を各プ
ロセッサに一つずつしか用意しないため、メツセージを
送信する度に1割り込み命令を発する必要があり、プロ
セッサ間通信を頻繁に行う処理においては、この割り込
み命令が、処理能力向上の妨げとなる問題点がある。
ロセッサに一つずつしか用意しないため、メツセージを
送信する度に1割り込み命令を発する必要があり、プロ
セッサ間通信を頻繁に行う処理においては、この割り込
み命令が、処理能力向上の妨げとなる問題点がある。
本発明の目的は、この割り込み命令を発行する回数を削
減することにより、処理能力の向上を図ることにある。
減することにより、処理能力の向上を図ることにある。
上記問題点は、以下の通信バッファアクセス方法と割り
込み方法をとることにより解決される。
込み方法をとることにより解決される。
各プロセッサに対応して1通信バッファと当該バッファ
の管理テーブルを共有する記憶装置上に設ける。
の管理テーブルを共有する記憶装置上に設ける。
当該通信バッファには、複数のメツセージ格納域と、各
メツセージ格納域に対応した受信プロセッサ記録域を設
けておく。
メツセージ格納域に対応した受信プロセッサ記録域を設
けておく。
当該管理テーブルには、送信回数記録域と受信回数記録
域を設ける。
域を設ける。
送信時には、当該通信バッファのメツセージ格納域に順
次メツセージ内容を書き込むと共に、受信プロセッサ記
録域には、送信先プロセッサに対応するフラグをオンと
した情報を書き込んでいく。
次メツセージ内容を書き込むと共に、受信プロセッサ記
録域には、送信先プロセッサに対応するフラグをオンと
した情報を書き込んでいく。
この書込みの度に、当該管理テーブル内に送信回数記録
域を更新する。当該メツセージ格納域の全てに情報を書
き込んだ時点で、当該受信プロセッサ記録域の内容の論
理和をとる。この論理和によって得られた送信先プロセ
ッサに対し、同時に割り込みを発生させ、プロセッサ番
号を通知する命令を実行する。
域を更新する。当該メツセージ格納域の全てに情報を書
き込んだ時点で、当該受信プロセッサ記録域の内容の論
理和をとる。この論理和によって得られた送信先プロセ
ッサに対し、同時に割り込みを発生させ、プロセッサ番
号を通知する命令を実行する。
受信時には、当該送信回数記録域の情報から、受信開始
をするメツセージ記録域を探索する。当該メツセージ格
納域に対応する受信プロセッサ記録域において、自プロ
セッサに対するフラグがオンの場合には、メツセージを
得、当該メツセージ格納域に対応する受信プロセッサ記
録域内の自プヤ窄ツサに対応するフラグをオフとする。
をするメツセージ記録域を探索する。当該メツセージ格
納域に対応する受信プロセッサ記録域において、自プロ
セッサに対するフラグがオンの場合には、メツセージを
得、当該メツセージ格納域に対応する受信プロセッサ記
録域内の自プヤ窄ツサに対応するフラグをオフとする。
当該受信プロセッサ記録域内が全てオフとなったならば
、上記受信回数記録域を更新する。上記に示した受信時
の操作を、全てのメツセージ格納域に対して順次実行し
ていく。全てのメツセージ格納域に対して上記の処理を
実行した時点で、上記送信回数記録域と上記受信回数記
録域の値を比較し、等しい場合には、送信プロセッサに
対して、全ての情報を受信した旨を通知するために、割
り込みを発生させる。
、上記受信回数記録域を更新する。上記に示した受信時
の操作を、全てのメツセージ格納域に対して順次実行し
ていく。全てのメツセージ格納域に対して上記の処理を
実行した時点で、上記送信回数記録域と上記受信回数記
録域の値を比較し、等しい場合には、送信プロセッサに
対して、全ての情報を受信した旨を通知するために、割
り込みを発生させる。
メツセージ送受信のための割り込み命令を、複数のメツ
セージに対して一括して行なうために、割り込み命令を
発行する回数を削減することができる。これにより、各
プロセッサが割り込みに対する処理のオーバヘッドを削
減することができるため、処理能力の向上を図れる。
セージに対して一括して行なうために、割り込み命令を
発行する回数を削減することができる。これにより、各
プロセッサが割り込みに対する処理のオーバヘッドを削
減することができるため、処理能力の向上を図れる。
以下1本発明の一実施例を第1図から第6図に第1図は
、本実施例におけるシステム構成を示す、第1図におい
て、プロセッサa200aからプロセッサn200nが
、記憶制御装置300を介して、記憶装置400を共有
している。さらに。
、本実施例におけるシステム構成を示す、第1図におい
て、プロセッサa200aからプロセッサn200nが
、記憶制御装置300を介して、記憶装置400を共有
している。さらに。
また、各プロセッサは1割り込み制御装置100に接続
されており、相互に割り込みを発生することが可能であ
る。記憶装置4・00には、各プロセッサに対応して1
通信バッファ410と管理テーブル420を設ける1通
信バッファは、複数のメツセージ格納域413と各メツ
セージ格納域に対応した受信プロセッサ記憶域412と
からなる。
されており、相互に割り込みを発生することが可能であ
る。記憶装置4・00には、各プロセッサに対応して1
通信バッファ410と管理テーブル420を設ける1通
信バッファは、複数のメツセージ格納域413と各メツ
セージ格納域に対応した受信プロセッサ記憶域412と
からなる。
管理テーブル420は、各プロセッサに対応して設けら
れる。管理テーブル番主、送信回数記録域421と、受
信回数記録域422と、メッセージ格納域数記録域42
3とからなる。送信回数記録ロセツサが送信したメツセ
ージを、受信プロセッサが受信したメツセージ数を記録
する。さらに。
れる。管理テーブル番主、送信回数記録域421と、受
信回数記録域422と、メッセージ格納域数記録域42
3とからなる。送信回数記録ロセツサが送信したメツセ
ージを、受信プロセッサが受信したメツセージ数を記録
する。さらに。
メツセージ格納数記録域には、対応する通信バッファ内
のメツセージ格納域数を記録する。
のメツセージ格納域数を記録する。
プロセッサ間通信は、以下の操作をすることで達成され
る。
る。
送信プロセッサは、上記メツセージ格納域412にメツ
セージ内容を記録すると共に受信プロセッサ記録域41
1に受信プロセッサを指定する処理を、送信プロセッサ
に対応する通信バッファ410の全メツセージ格納域及
び全受信プロセッサ記録域に対して実行する。
セージ内容を記録すると共に受信プロセッサ記録域41
1に受信プロセッサを指定する処理を、送信プロセッサ
に対応する通信バッファ410の全メツセージ格納域及
び全受信プロセッサ記録域に対して実行する。
上記処理の終了後、上記の全受信プロセッサ記録域の和
集合をとる。この結果が、送信先プロセッサとなり、当
該送信先プロセッサに対し、割り込み制御装置からの割
り込みを発生させ、受信プロセッサが、自プロセッサに
対するメツセージを読み込むことで実現される。
集合をとる。この結果が、送信先プロセッサとなり、当
該送信先プロセッサに対し、割り込み制御装置からの割
り込みを発生させ、受信プロセッサが、自プロセッサに
対するメツセージを読み込むことで実現される。
(2)第2図の説明
第2図は、プロセッサが実行する命令である。
511は命令コードであり、512と513は汎用レジ
スタによる指定であることを示す。
スタによる指定であることを示す。
(3)第3図の説明
第3図は、割り込みを発生させる命令である。
5IGNAL命令521では、At (522)、A2
(523)共に汎用レジスタを用いて指定する。52
2は機能コードを示し、523は送信先プロセッサを示
す。
(523)共に汎用レジスタを用いて指定する。52
2は機能コードを示し、523は送信先プロセッサを示
す。
522は、プロセッサ間で通信を行なう時基本的な情報
の受は渡しに用いる。また、523は。
の受は渡しに用いる。また、523は。
送信先プロセッサをビットマツプで表現し、1つ以上の
複数のプロセッサに対し、任意に割り込みを発生させ、
送信元プロセッサのアドレスと機能コードを、送信先プ
ロセッサに通知できるものとする。
複数のプロセッサに対し、任意に割り込みを発生させ、
送信元プロセッサのアドレスと機能コードを、送信先プ
ロセッサに通知できるものとする。
(4)第4図の説明
第4図は、送信時の処理フローである。
まず、611で、送信プロセッサに対応する送信回数記
録域421と受信回数記録域422の値の差が、メッセ
ージ格納域数記録域423と等しいかを調べる6等しい
場合は、既に送信したメツセージを受信プロセッサが、
まだ受信していないために、メツセージの書込み先が無
いことを意味する、したがって、6エ2でWAITL/
、書込み先ができるのを待つ。
録域421と受信回数記録域422の値の差が、メッセ
ージ格納域数記録域423と等しいかを調べる6等しい
場合は、既に送信したメツセージを受信プロセッサが、
まだ受信していないために、メツセージの書込み先が無
いことを意味する、したがって、6エ2でWAITL/
、書込み先ができるのを待つ。
613では、上記送信回数から、メツセージの出力光で
あるメツセージ格納域を求め、メツセージを書き込む。
あるメツセージ格納域を求め、メツセージを書き込む。
当該メツセージ格納域は、送信プロセッサに対応する通
信バッファにおいて、mod (送信回数、メツセージ
格納域数)+1式(1) 番目のメツセージ格納域である。ここで、mod(a、
b)は、aをbで割った余りを意味する。
信バッファにおいて、mod (送信回数、メツセージ
格納域数)+1式(1) 番目のメツセージ格納域である。ここで、mod(a、
b)は、aをbで割った余りを意味する。
614では、上記メツセージ格納域に対応する受信プロ
セッサ記録域に、ビットマツプで記した送信先プロセッ
サを登録し、614で送信回数記録域421を更新する
。
セッサ記録域に、ビットマツプで記した送信先プロセッ
サを登録し、614で送信回数記録域421を更新する
。
616では、メツセージを送信するために、送信先プロ
セッサに対し割り込み命令を発するか否かを判断する0
割り込み命令に発行条件は、上記送信回数記録域421
と上記受信回数記録域422の値の差が上記メッセージ
格納域数記録域423と等しくなった場合である。
セッサに対し割り込み命令を発するか否かを判断する0
割り込み命令に発行条件は、上記送信回数記録域421
と上記受信回数記録域422の値の差が上記メッセージ
格納域数記録域423と等しくなった場合である。
617の判断で、割り込み命令を発行することになった
場合には、自プロセッサに対応する全ての受信プロセッ
サ記録域に対して論理和をとる。
場合には、自プロセッサに対応する全ての受信プロセッ
サ記録域に対して論理和をとる。
この論理和の結果が、割り込み命令発行先のプロセッサ
を意味し、618において当該結果を用いて割り込み命
令を発行する。
を意味し、618において当該結果を用いて割り込み命
令を発行する。
(5)第5図の説明
第5図は、受信時の処理フローである。
まず、割り込み命令を受けた受信プロセッサは、当該命
令により実行プロセッサの番号を通信される。このため
、621で送信元プロセッサに対応する管理テーブル4
20を得る。当該管理テーブルより、前回の通信時にど
のメツセージ格納域まで使用したかを、当該管理テーブ
ル420の受信回数記録域422より得ることができる
。
令により実行プロセッサの番号を通信される。このため
、621で送信元プロセッサに対応する管理テーブル4
20を得る。当該管理テーブルより、前回の通信時にど
のメツセージ格納域まで使用したかを、当該管理テーブ
ル420の受信回数記録域422より得ることができる
。
622では、次に読み込もうとするメッセージツセージ
番号として退避する。
番号として退避する。
623では、退避したメツセージ番号に対応する、メツ
セージ格納域に記されたメツセージを自プロセッサが読
み込んでよいか否かを、上記メツセージ格納域に対応す
る受信プロセッサ記録域内の自プロセッサに対応するフ
ラグがオンかオフかで判断する。
セージ格納域に記されたメツセージを自プロセッサが読
み込んでよいか否かを、上記メツセージ格納域に対応す
る受信プロセッサ記録域内の自プロセッサに対応するフ
ラグがオンかオフかで判断する。
当該フラグがオフの場合には、628へ分岐し、当該フ
ラグがオンの場合には、624でメツセージを読み込み
、625で、当該フラグをオフとする。626では、上
記受信プロセッサ記録域がOとなっているか否かを判断
する。当該受信プロセッサ記録域がOの場合には、全て
の受信プロセッサが、上記メツセージ格納域内のメツセ
ージを読み込んだことを意味するので、627で受信回
数記録域422の値を更新する。
ラグがオンの場合には、624でメツセージを読み込み
、625で、当該フラグをオフとする。626では、上
記受信プロセッサ記録域がOとなっているか否かを判断
する。当該受信プロセッサ記録域がOの場合には、全て
の受信プロセッサが、上記メツセージ格納域内のメツセ
ージを読み込んだことを意味するので、627で受信回
数記録域422の値を更新する。
628では、622で退避したブロック番号に1を加え
る。ただし、当該ブロック番号において。
る。ただし、当該ブロック番号において。
メッセージ格納域数記録域423と等しくなった場合に
は、当該ブロック番号を1とする。
は、当該ブロック番号を1とする。
そして、629では、式(1)より求めた値とメツセー
ジ番号とを比較する。等しくない場合には、まだ、上記
通信バッファ410内に、自プロセッサへのメツセージ
が残っている可能性があるため、623へ戻る。
ジ番号とを比較する。等しくない場合には、まだ、上記
通信バッファ410内に、自プロセッサへのメツセージ
が残っている可能性があるため、623へ戻る。
62Aでは、送信回数記録域421と受信回数記録域4
22との値を比較する1等しい場合には、送信プロセッ
サが送信したメツセージを全て受信プロセッサが読み込
んだこと・を意味し、612でWA I T L、てい
る可能性がある。そこで、62Bで1機能コードに61
2に対するPO5Tである旨のコードを指定して、割り
込み命令を発行する。
22との値を比較する1等しい場合には、送信プロセッ
サが送信したメツセージを全て受信プロセッサが読み込
んだこと・を意味し、612でWA I T L、てい
る可能性がある。そこで、62Bで1機能コードに61
2に対するPO5Tである旨のコードを指定して、割り
込み命令を発行する。
本発明によれば、プロセッサ間通信時に必要な割り込み
命令の発行回数を削減することができる。
命令の発行回数を削減することができる。
これにより、各プロセッサは、割り込み命令に対する処
理を行なう回数を削減でき、CPUを有第1図は本発明
の一実施例であるシステム構成図、第2rj!Iはプロ
セッサが実行する命令のフォーマット、第3図は割り込
み命令のフォーマット、第4図は送信時の処理フロー、
第5図は、受信時の処理フローをそれぞれ示す。
理を行なう回数を削減でき、CPUを有第1図は本発明
の一実施例であるシステム構成図、第2rj!Iはプロ
セッサが実行する命令のフォーマット、第3図は割り込
み命令のフォーマット、第4図は送信時の処理フロー、
第5図は、受信時の処理フローをそれぞれ示す。
100・・・割り込み制御装置、200・・・プロセッ
サ、300・・・記憶制御装置、400・・・記憶装置
、410・・・通信バッファ、420・・・通信用管理
テーブル。
サ、300・・・記憶制御装置、400・・・記憶装置
、410・・・通信バッファ、420・・・通信用管理
テーブル。
豹
図
Claims (1)
- 【特許請求の範囲】 1、複数のプロセッサが、各プロセッサからの命令によ
り直接アクセス可能な記憶装置を共有する計算機システ
ムにおいて、 複数のプロセッサに同時に割り込みを発生させ、送信元
のプロセッサ番号を通知する命令を有し、 上記記憶装置にプロセッサごとに複数のメッセージ格納
域を有する通信バッファを設け、当該メッセージ格納域
を介して、プロセッサ間で通信を行うことを特徴とする
プロセッサ間通信方法。 2、上記記憶装置にプロセッサごとに各プロセッサごと
の上記メッセージ格納域を記したメッセージ格納域数記
録域を有する通信管理テーブルを設け、 送信プロセッサが、受信プロセッサにメッセージを送信
する際には、当該送信プロセッサのメッセージ格納域の
先頭から順次メッセージを書き込み、最終のメッセージ
格納域への書き込み後は、先頭のメッセージ格納域へ書
き込み。 受信プロセッサが、メッセージを受信する際には、上記
送信プロセッサのメッセージ格納域の先頭から順次メッ
セージを読み込み、最終のメッセージ格納域からのメッ
セージ読み込み後は、当該メッセージ格納域の先頭から
メッセージを読み込むことを特徴とした特許請求範囲第
1項記載のプロセッサ間通信方法。 3、上記通信用バッファ内の上記メッセージ格納域に対
応した受信プロセッサ記録域を上記記憶装置上に設け、
上記管理テーブルに送信回数記録域と受信回数記録域を
上記記録装置上に設け、送信時には、受信プロセッサを
特定するための情報を当該受信プロセッサ記録域に格納
し、当該送信プロセッサがメッセージを送信した延べ回
数を当該送信回数記録域に格納し、 受信時には、メッセージ読み込み後、受信プロセッサが
メッセージを読み込んだ旨を上記受信プロセッサ記録域
に示し、 上記送信プロセッサが指定した受信プロセッサが全てメ
ッセージを受信した時点で、上記受信回数記録域を更新
することを特徴とする特許請求範囲第1項もしくは第2
項記載のプロセッサ間通信方法。 4、上記送信時に、メッセージ送信後に、上記送信回数
記録域と上記受信回数記録域の値の差が、上記メッセー
ジ格納域数記録域の値と等しくなつた場合に、当該送信
プロセッサに対応する全ての受信プロセッサ記録域の論
理和をとり、当該論理和の結果に対応するプロセッサに
対して、メッセージ通信のための割り込み命令を発し、
さらに、送信プロセッサがメッセージを送信しようとし
た際に、上記送信回数記録域と上記受信回数記録域の値
の差が、上記メッセージ格納域数記録域の値と等しい場
合に、持ちメッセージ送信の待ち状態とし、 上記受信時に、メッセージ読み込み後、上記送信回数記
録域と上記受信回数記録域の値が等しくなつた場合で、
上記送信プロセッサがメッセージ送信待ちの場合には、
送信プロセッサに割り込み命令を発することを特徴とす
る特許請求範囲第1項、第2項又は第3項記載のプロセ
ッサ間通信方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP18031389A JPH0346052A (ja) | 1989-07-14 | 1989-07-14 | プロセツサ間通信方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP18031389A JPH0346052A (ja) | 1989-07-14 | 1989-07-14 | プロセツサ間通信方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH0346052A true JPH0346052A (ja) | 1991-02-27 |
Family
ID=16081030
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP18031389A Pending JPH0346052A (ja) | 1989-07-14 | 1989-07-14 | プロセツサ間通信方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0346052A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7613197B2 (en) | 2005-04-20 | 2009-11-03 | Nec Electronics Corporation | Multi-processor system and message transferring method in the same |
-
1989
- 1989-07-14 JP JP18031389A patent/JPH0346052A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7613197B2 (en) | 2005-04-20 | 2009-11-03 | Nec Electronics Corporation | Multi-processor system and message transferring method in the same |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH05508037A (ja) | 端末装置とユーザプログラムとの間のデータ通信を実現するための装置および方法 | |
JPH02230455A (ja) | 外部記憶装置の割込み制御方式 | |
JPH0346052A (ja) | プロセツサ間通信方法 | |
JP2539436B2 (ja) | プロセツサ間通信方式 | |
JPS583177A (ja) | デ−タ処理方式 | |
JP2903525B2 (ja) | ジョブ管理方式 | |
JP2818541B2 (ja) | ログファイル書き込み方式およびログファイル書き込み方法 | |
JPS6228865A (ja) | マルチプロセツサ・システム | |
JP2787107B2 (ja) | バッファ制御方式及び装置 | |
JPH02118841A (ja) | 入力待ち行列管理方式 | |
JPS62194558A (ja) | ジヤ−ナルレコ−ドの書込み制御方式 | |
CN118626143A (zh) | 基于bmt的内存数据交换控制方法和系统 | |
CN114153383A (zh) | 一种车辆自动驾驶系统的数据压缩存储方法及装置 | |
JPH03219357A (ja) | プログラム実行管理方式 | |
JPH087731B2 (ja) | 通信処理方式 | |
JPH02123453A (ja) | ネットワーク・システムのデータ転送方式 | |
JPS6143369A (ja) | マルチプロセツサシステム | |
JPS61101864A (ja) | プログラム制御方式 | |
JPH0192863A (ja) | プロセッサ間メッセージ送受信制御方式 | |
JPH0644190A (ja) | マルチプロセッサ方式 | |
JPS60169946A (ja) | タスク制御方式 | |
JPH0136130B2 (ja) | ||
JPS61153770A (ja) | 画像処理装置 | |
JPS6069766A (ja) | プロセツサ間通信方式 | |
JPS6364151A (ja) | メツセ−ジ出力方式 |