JPH03250355A - マルチプロセッサシステムのプロセッサ間通信方法 - Google Patents

マルチプロセッサシステムのプロセッサ間通信方法

Info

Publication number
JPH03250355A
JPH03250355A JP4744890A JP4744890A JPH03250355A JP H03250355 A JPH03250355 A JP H03250355A JP 4744890 A JP4744890 A JP 4744890A JP 4744890 A JP4744890 A JP 4744890A JP H03250355 A JPH03250355 A JP H03250355A
Authority
JP
Japan
Prior art keywords
processor
processors
interrupt
message
inter
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
Application number
JP4744890A
Other languages
English (en)
Inventor
Atsushi Fujimoto
厚史 藤本
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co 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 Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP4744890A priority Critical patent/JPH03250355A/ja
Publication of JPH03250355A publication Critical patent/JPH03250355A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は複数のプロセッサ間でメツセージ交換を行うマ
ルチプロセッサシステムのプロセッサ間通信方法に関す
る。
〔従来の技術〕
第4図は、一般的なマルチプロセッサシステムの構成を
示す概略構成図である。同図において、プロセッサ(ロ
ーカルメモリを含む)PI〜Pnと共有メモリ41は、
システムバス42を介して接続されており、各プロセッ
サは、共有メモリ41にアクセスして他の任意のプロセ
ッサに割り込みを発生させることにより、プロセッサ間
通信を行うことができる。
従来のマルチプロセッサシステムには、第5図に示すよ
うに、共有メモリ41内に、プロセッサP1、P2、・
・・Pnにそれぞれ対応して固定領域41−1〜41−
nが割り付けされ、さらにそれらの固定領域には、自己
以外の各プロセッサ(すなわち、(n −1,)のプロ
セッサ)に対応して、各プロセッサからのメツセージか
書き込まれるメツセージ書き込み用固定領域か設けられ
ているものがある。なお第5図において、r Inte
rrupt(記号X−記号Y)Jは、プロセッサPXか
らプロセッサPYへの割り込みが発生することを示して
おり、例えば、図中矢印Aで示すr Interrup
t(?1)Jは、プロセッサP2からプロセッサP1へ
の割り込みが発生することを示している。また図中、各
固定領域内において斜線で示す升目以外の升目部分、例
えば矢印Bて示す升目部分は、メツセージ書き込ろ用固
定領域を示している。
上述したマルチプロセッサシステムにおいて、各プロセ
ッサが、共有メモリ41を使用してプロセッサ間通信を
行う場合、例えばプロセッサP2がプロセッサP1に対
して割り込みを発生させる場合は、プロセッサP1に対
応する固定領域411における自己用のメツセージ書き
込み用固定領域にメツセージを書き込んで割り込み(I
nterrupt(2−’1.))を発生させる。一方
プロセッサP1では、割り込み(Interrupt(
?1.))か発生すると、プロセッサP2に対応するメ
ツセージ書き込み用固定領域をアクセスして、割り込み
処理を実行する。
この場合、共有メモリ領域(メツセージ書き込み用固定
領域)のアドレスは通信する両者が予め認識している。
〔発明が解決しようとする課題〕
ところで上記従来のマルチプロセッサシステムでは、n
個のプロセッサを対等に動作させるには、メツセージ書
き込み用固定領域(共有メモリ内)及び割り込みの種類
を共に(nX(n−1,))個分設定しなければならず
、nが大きいときは、非常に多くの、かつ回路構成が複
雑な割り込み処理用のハードウェアが必要になってしま
う。さらに多くのハードウェアが必要となるので、その
構成要素である部品が増大しコストアップになってしま
うという欠点があった。
本発明は上記欠点を解消し、多くのプロセッサがある場
合であっても、単純化した回路構成で、かつ最小限のハ
ードウェア資源でプロセッサ開通信を行うことのできる
マルチプロセッサシステムのプロセッサ間通信方法を提
供することを目的とする。
〔課題を解決するための手段〕
本発明は、複数のプロセッサと、それらのプロセッサが
共通にアクセスできる共有メモリとを有するマルチプロ
セッサシステムにおいて、前記共有メモリには各プロセ
ッサに対応して自己以外の全てのプロセッサからの割り
込み要求に対してアクセスを許可するか否かの情報を与
える共通のメツセージ領域を設け、各プロセッサは、通
信相手のプロセッサに対応するメツセージ領域にアクセ
スを許可する情報が示されていた場合は、当該領域に所
定のメツセージを書込んで当該プロセッサに割り込みを
発生させるように構成したものである。
〔作用〕
本発明のプロセッサ間通信方法によれば、共有メモリに
は、n個のプロセッサに対応するn個の共通のメツセー
ジ領域(他の全てのプロセッサが割り込みを発生させる
ための領域)を設けている。
そして各プロセッサは、割り込み要求に際し、通信相手
のプロセッサに対応するメツセージ領域を参照し、アク
セスを許可する情報が示されていた場合は、当該領域に
自己の識別情報及びメツセージの書き込みを行い、また
自己のメツセージ領域を参照して割り込みか発生してい
た場合は当該割り込み処理を実行する。
従って、n個のプロセッサが存在する場合は、nに比例
する所定の構成要素から成る割り込み処理用のハードウ
ェアで良いことと−なり、多くのプロセッサがある場合
であっても、最小限のハードウェア資源でプロセッサ間
通信が可能となる。
〔実施例〕
以下、本発明に係るプロセッサ間通信方法の実施例を添
付図面を参照して説明する。
第1図は本発明に係るプロセッサ間通信方法を適用した
マルチプロセッサシステムの一実施例を示す構成図であ
る。同図において、第4図に示したマルチプロセッサシ
ステムにおける構成部分と同様の機能を果たす部分には
同一の符号を付している。
第1図において、共有メモリ10には、プロセッサP1
、P2、・・・ Pnにそれぞれ対応して、メツセージ
書き込み用固定領域(以下、固定領域という)10刊、
10−2、・=  10−nが割り付けされている。こ
れらの各固定領域は、上述したメツセージ領域の機能を
果し、対応する自己のプロセッサ以外の全てのプロセッ
サからの割り込み情報が書き込まれる。例えば、第1図
の固定領域10−1内に示されている[(2〜I+)→
1)」は、プロセッサP1以外の他の全てのプロセッサ
P2〜Pnからの割り込み情報が書き込まれることを示
している。また同様のことが、他の固定領域1o−2,
10−3、・・ ]0−nについてもいえる。ただし、
同図の固定領域10−2.10−3には、表現を簡単に
するためI” (1,−n)→2 J、r (1〜n)
−3Jと記載されているが、正確には「(1,3〜n戸
2」、「(1,2,4〜n)−3」である。
すなわち共有メモリ]0には、n個のプロセッサに対応
してn個の固定領域が割り付けされ、所定のプロセッサ
への通信には、そのプロセッサに対応する固定領域が使
用される。なお各固定領域(共有メモリの各エントリ)
には、対応するプロセッサへのアクセスを許可するか否
かのフラグ(セマフォフラグ)と割り込み元の識別情報
(ID)を含むものとする。
一方、割り込みも、n個のプロセッサに対応(つまり割
り込みをかけられる側のプロセッサに対応)しており、
そのプロセッサへの通信を行う場合の割り込みは全て同
一のものが使用される。
従って、固定領域および割り込み(1nterrupt
 )の種類も、n個のプロセッサに対応してn個だけ設
定されることになる。
なお、第1図の図中矢印Aて示す点線内に囲まれた部分
のr Interrupt((2〜n)→1)」は、プ
ロセッサP]への他のプロセッサP2〜Pnからの割り
込みか発生することを示している。同様に、プロセッサ
P2に対するr Interrupt((1〜n)−2
)J 、−Pnに対するr Interrupt((1
〜n−1)=n) Jも、それぞれ該当するプロセッサ
P2、・・ Pnへの他のプロセッサ(PI、P3〜P
n) 、・・・ プロセッサ(PI〜P(n−1,))
からの割り込みが発生ずることを示している。
次に上記マルチプロセッサシステムのプロセッサ間通信
処理動作を第2図及び第3図を用いて説明する。
ここに、割り込みをかける側のプロセッサをプロセッサ
P1とし、また割り込みをかけられる側のプロセッサを
プロセッサP2とする。
最初に、割り込みをかける側のプロセッサの割り込み処
理について第2図を用いて説明する。
プロセッサP1は、プロセッサ間通信の要求元からの割
り込み処理要求を受は付け(ステップ20)、割り込み
をかけたい通信相手のプロセッサ(この例ではプロセッ
サP2)に対応する共有メモリ10の固定領域(この例
では固定領域1o−2(第1図参照))のセマフォフラ
グをテストアンドセット命令でアクセスして、通信相手
に割り込みをかける権利を確保する。
すなわち、プロセッサP1は、固定領域、1.0−2内
のセマフォフラグかオンか否かを判断しくステップ2]
)、オフの場合には割り込み許可であると認識(割り込
みをかける権利を確保てきたと認識)して、通信相手の
プロセッサに対応する固定領域すなわち固定領域10−
2に、自己のプロセッサ識別情報(ID)及び必要なメ
ツセージを書き込み(ステップ22)、通信相手のプロ
セッサP2に割り込みを発生させ(ステップ23)、そ
の後、次の割り込み処理要求に備えてリターンする。
なお、上記ステップ21において通信相手がビジィ−(
Busy)であった場合(セマフォフラグがオンの場合
)は、エラーコード(Busy)を設定して(ステップ
24)、その旨をプロセッサ間通信の要求元へ通知し、
リトライを促す。
続いて、割り込みをかけられる側のプロセッサの処理に
ついて第3図を用いて説明する。
割り込みをかけられる側のプロセッサとしてのプロセッ
サP2は、他のプロセッサがらの割り込みが発生(この
例ではプロセッサP1がらの割り込みが発生)した場合
は(ステップ30)、自己のプロセッサ内の図示しない
レジスタの値(例えば自己の現在の状態)を退避させ(
ステップ31)その後、自己のプロセッサに対応する固
定領域1.0−2(第1図参照)に書かれているプロセ
ッサID及びメツセージを読出し、さらにそれらの情報
に基づいてとこからの通信でとのような内容かを識別し
、該当する処理タスクに渡す(ステップ32)。
次にプロセッサP2は、自己のプロセッサに対する固定
領域10−2内のセマフォフラグをクリアにして(ステ
ップ33)、レジスタの値を復帰させ(ステップ34)
、さらに割り込み処理を終了して(ステップ35)、次
の割り込み要求に備えリターンする。
以上説明したように本実施例によれば、プロセッサの数
をnとした場合、ハードウェアの構成要素は、従来では
(nX(n−1))に比例する増分たったものが、nに
比例する増分てすむ。
すなわち、n個のプロセッサがお互いに対等な立場で任
意の相手と通信を行うマルチプロセッサシステムの場合
であっても、従来の如く、メツセージ書き込み用固定領
域及び割り込みの種類をそれぞれ(nX(n−1))個
にする必要はなく、メツセージ書き込み用固定領域及び
割り込みの種類は共にn個で良いので、割り込み処理用
のノへ−ドウェアの回路構成を単純化でき、また/%−
Fウェアの構成要素(部品)を最小限に抑制することか
できる。
従って、安価なマルチプロセッサシステムを提供するこ
とかできるとともに、最小限のハードウェア資源でプロ
セッサ間通信を行うことができる。
〔発明の効果〕
以上説明したように本発明によれば、共有メモリには、
n個のプロセッサに対応したn個のメソセージ領域を設
け、所定のプロセッサへの通信には、他の全てのプロセ
ッサは、所定のプロセッサに対応する共通のメツセージ
領域にアクセスするようにしたため、nに比例する構成
要素から成る割り込み処理用のハードウェアを設定すれ
ば良いこととなり、最小限のハードウェア資源でプロセ
ッサ間通信を行うことができる。
【図面の簡単な説明】
第1図は本発明に係るプロセッサ間通信方法を適用した
マルチプロセッサシステムの一実施例を示す構成図、第
2図および第3図は割り込み処理動作を示すフローチャ
ート、第4図は一般的なマルチプロセッサシステムの構
成を示す概略構成図、第5図は従来のマルチプロセッサ
システムの構成を示す構成図である。 P]、P2、Pn・・プロセッサ、10・共有メモリ、
10−1.10−2.10−3.10−n・・・メツセ
ージ書き込み用固定領域、42・・システムバス。 第4図 339−

Claims (1)

  1. 【特許請求の範囲】 複数のプロセッサと、それらのプロセッサが共通にアク
    セスできる共有メモリとを有するマルチプロセッサシス
    テムにおいて、 前記共有メモリには各プロセッサに対応して自己以外の
    全てのプロセッサからの割り込み要求に対してアクセス
    を許可するか否かの情報を与える共通のメッセージ領域
    を設け、各プロセッサは、通信相手のプロセッサに対応
    するメッセージ領域にアクセスを許可する情報が示され
    ていた場合は、当該領域に所定のメッセージを書込んで
    当該プロセッサに割り込みを発生させるようにしたこと
    を特徴とするマルチプロセッサシステムのプロセッサ間
    通信方法。
JP4744890A 1990-02-28 1990-02-28 マルチプロセッサシステムのプロセッサ間通信方法 Pending JPH03250355A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4744890A JPH03250355A (ja) 1990-02-28 1990-02-28 マルチプロセッサシステムのプロセッサ間通信方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4744890A JPH03250355A (ja) 1990-02-28 1990-02-28 マルチプロセッサシステムのプロセッサ間通信方法

Publications (1)

Publication Number Publication Date
JPH03250355A true JPH03250355A (ja) 1991-11-08

Family

ID=12775432

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4744890A Pending JPH03250355A (ja) 1990-02-28 1990-02-28 マルチプロセッサシステムのプロセッサ間通信方法

Country Status (1)

Country Link
JP (1) JPH03250355A (ja)

Similar Documents

Publication Publication Date Title
JPH05242060A (ja) マルチプロセッサ及びデータ同一化方法
JPH02288927A (ja) 共有メモリ管理方式
JP3169624B2 (ja) プロセッサ間通信方法およびそのための並列プロセッサ
JPS588018B2 (ja) 多重プロセッサシステム
William C. mmp-A multi-mini-processor
EP0437928B1 (en) Memory management in a multi-processor system
JPH02257249A (ja) 情報処理システム
JPS5936836A (ja) 割込み制御装置
JP2929631B2 (ja) プロセッサ間通信装置
KR20010036590A (ko) 인터럽트 및 폴링 방식 겸용으로 메모리를 엑세스하는 장치 및 그 방법
JPS63305450A (ja) プロセツサ間通信方式
JPH0328934A (ja) 共有資源のデッドロック防止方法
JPS5815815B2 (ja) 共通情報管理方式
JPH01154272A (ja) マルチプロセッサ装置
JPS63158660A (ja) マルチプロセツサバス制御方式
JPH0214741B2 (ja)
JPH03252856A (ja) プログラムの処理方式
JPS605368A (ja) 通信制御処理装置
EP0139727A1 (en) Multi-computer computer architecture
JPH04305746A (ja) キャッシュメモリ制御装置
JPS5995661A (ja) 記憶システム
JPH04106627A (ja) 情報処理装置
JPH04326453A (ja) マルチプロセッサシステム
JPS626329A (ja) デ−タ転送回路
JPH01243146A (ja) 共用メモリアクセス方式