JPH056333A - マルチプロセサシステム - Google Patents

マルチプロセサシステム

Info

Publication number
JPH056333A
JPH056333A JP15822991A JP15822991A JPH056333A JP H056333 A JPH056333 A JP H056333A JP 15822991 A JP15822991 A JP 15822991A JP 15822991 A JP15822991 A JP 15822991A JP H056333 A JPH056333 A JP H056333A
Authority
JP
Japan
Prior art keywords
bus
input
output
processor
communication
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.)
Withdrawn
Application number
JP15822991A
Other languages
English (en)
Inventor
Takashi Nakamura
敬 中村
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 JP15822991A priority Critical patent/JPH056333A/ja
Publication of JPH056333A publication Critical patent/JPH056333A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)
  • Bus Control (AREA)

Abstract

(57)【要約】 【目的】入出力処理やプロセサ間のデータ通信処理を行
うためのバスを効率的に利用できるようにしたマルチプ
ロセサシステムに関し,入出力に使用されるバスとプロ
セサ間のデータ通信に使用されるバスの負荷の総和を,
システムに実装されているバスの合計の能力でカバーで
きるようにすることを目的とする。 【構成】各プロセサ10と入出力用の装置15とを結ぶ共通
バス14と,各プロセサ10と共通バス14との間に介在し,
入出力用の装置15に対する転送制御とプロセサ間通信に
よるメッセージ送受信制御とを行うバスコントローラ13
と,入出力要求に対してバスコントローラ13に入出力の
指示を与える入出力処理部11と,プロセサ間通信要求に
対してバスコントローラ13にプロセサ間通信の指示を与
えるメッセージ通信処理部12とを備え,入出力処理に用
いるバスとプロセサ間通信に用いるバスとを共用するよ
うに構成する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は,入出力(I/O)処理
やプロセサ間のデータ通信処理を行うためのバスを効率
的に利用できるようにしたマルチプロセサシステムに関
するものである。
【0002】マルチプロセサシステムでは,各プロセサ
間でメッセージ通信を行うことが必要になるとともに,
各プロセサは,それぞれ入出力装置に対する入出力を行
うことが必要になる。このようなプロセサ間のメッセー
ジ通信および入出力に用いるバスを効率的に利用できる
技術が必要とされる。
【0003】
【従来の技術】図4は従来技術の例を示す。プロセサP
1,P2は,それぞれCPUとメモリとを備えた装置で
ある。入出力装置16は,各種の外部記憶装置やディス
プレイ/キーボードなどの装置である。アダプタ15
は,バス上の制御情報に従って,入出力装置16のデー
タ転送制御を行う。
【0004】従来のマルチプロセサシステムでは,プロ
セサP1,P2間のメッセージ通信処理に使用する通信
用バス50が設けられ,それとは別に,入出力処理に使
用するI/Oバス51が設けられていた。
【0005】
【発明が解決しようとする課題】図4に示すような従来
の方式では,全体では2本のバスがあるにもかかわら
ず,各々の要求に対して,バスは最大1本分の処理能力
しか出すことができない。すなわち,ある時点でI/O
バス51が空いていても,通信用バス50に100%以
上の要求があった場合,100%を超える分のメッセー
ジ通信要求については,処理が待たされることになり,
非効率的であるという問題がある。
【0006】本発明は上記問題点の解決を図り,入出力
に使用されるバスとプロセサ間のデータ通信に使用され
るバスの負荷の総和を,システムに実装されているバス
の合計の能力でカバーできるようにすることを目的とし
ている。すなわち,バスの最大能力を,入出力処理で使
用するバス能力とデータ通信で使用するバス能力とを足
した全バス能力まで可能とすることを目的とする。
【0007】
【課題を解決するための手段】図1は本発明の原理説明
図である。図1において,10−1,10−2はそれぞ
れCPUおよびメモリを備えたプロセサ,11はオペレ
ーティング・システムの核(以下,カーネルという)内
の入出力処理部,12はカーネル内のメッセージ通信処
理部,13−1,13−2はバスを制御するバスコント
ローラ,14−1,14−2は共通バス,15−1,1
5−2は入出力インタフェース用のアダプタ,16−1
ないし16−3はディスプレイ/キーボードや外部記憶
装置などの入出力装置を表す。
【0008】各プロセサ10−1,10−2のカーネル
で動作する入出力処理部11は,入出力装置16−1〜
16−3への入出力要求に対して,入出力装置のアドレ
ス情報や転送データ情報を,各々バスコントローラ13
−1,13−2に渡し,入出力を起動する。そして,入
出力が完了したときに,バスコントローラ13−1,1
3−2から割込み通知を受けて,入出力要求を出したプ
ログラムに完了通知を行う。
【0009】メッセージ通信処理部12は,プロセサ間
のデータ通信要求を受けると,バスコントローラ13−
1,13−2に対して,相手プロセサのアドレス,転送
データ情報などを渡して,データの送信要求を行う。ま
た,受信処理では,他プロセサからのデータ送信があっ
た場合に,バスコントローラ13−1,13−2から割
込み通知を受けて,データを受け取り,そのデータを要
求元のプログラムに渡す。
【0010】本発明では,以上の入出力制御およびプロ
セサ間のデータ通信制御におけるデータ転送には,同じ
共通バス14−1,14−2が用いられる。なお,図1
に示す例では,共通バスが2本(組)設けられている
が,1本でも3本以上でもよい。
【0011】バスコントローラ13−1,13−2は,
入出力要求の場合には,共通バス14−1,14−2の
いずれかを用い,指定されたアダプタ15−1,15−
2を介して入出力装置16−1〜16−3へのデータ転
送処理を行う。また,他プロセサへのデータ送信要求の
場合,同様に共通バス14−1,14−2のいずれかを
用い,相手プロセサに対してデータ転送を行う。
【0012】入出力装置16−1〜16−3へのデータ
転送が完了した場合,バスコントローラ13−1,13
−2は,入出力処理部11へ割り出しを発生させて,そ
の旨を通知する。また,他プロセサからのデータ転送要
求を受け付けた場合,メッセージ通信処理部12に対し
て割り出しを発生させて,受信したデータを通知する。
【0013】
【作用】本発明によれば,共通バス14−1,14−2
を,入出力処理のデータ転送に用いることができるとと
もに,プロセサ間のデータ転送に用いることができる。
このように,1本のバスを入出力処理とプロセサ間通信
に共通に用いることができるため,共通バスの本数に応
じて,複数の入出力処理と複数のプロセサ間通信とを同
時に行うことができ,入出力処理およびプロセサ間通信
を合わせたデータ転送の同時要求数が共通バスの本数以
下であれば,バスのビジーによって処理が待たされるこ
とはない。
【0014】
【実施例】図2は本発明の一実施例に係るバスコントロ
ーラの構成例,図3は本発明の一実施例に係るカーネル
とバスコントローラのインタフェースの例を示す。
【0015】図1に示すバスコントローラは,例えば図
2に示すバスコントローラ13のように構成されてい
る。プロセサ10は,中央処理装置(CPU)20と主
記憶装置21を備えており,この例では,主記憶装置2
1内にバスコントローラ13への制御情報を受け渡すた
めの領域である制御領域22が設けられるようになって
いる。なお,主記憶装置21上の制御領域22の代わり
に,ハードウェアの制御レジスタを設け,制御レジスタ
によって情報を受け渡すようにしてもよい。
【0016】バスコントローラ13において,入出力制
御に関係する部分は,割込み要求部26,IO発行部2
7,転送制御部28,IO転送バッファ29であり,メ
ッセージ制御に関係する部分は,送信制御部24,受信
制御部25,メッセージ送信バッファ30,メッセージ
受信バッファ31である。主記憶アクセス制御部23お
よび共通バスインタフェース制御部32は,入出力制御
とメッセージ制御の双方に関連している。
【0017】主記憶アクセス制御部23は,CPU20
で実行される図1の入出力処理部11およびメッセージ
通信処理部12からの要求によって,主記憶装置21の
アクセス制御を行うものである。主記憶アクセス制御部
23は,制御領域22の制御情報に基づき,主記憶装置
21内のバッファと,バスコントローラ13におけるI
O転送バッファ29,メッセージ送信バッファ30,メ
ッセージ受信バッファ31間のデータ転送を行う。
【0018】送信制御部24は,CPU20から起動さ
れたメッセージ送信の実行制御を行うものであり,受信
制御部25は,CPU20から起動されたメッセージ受
信の実行制御を行うものである。メッセージ送信バッフ
ァ30は,主記憶装置21の指定領域から読み出した送
信メッセージの格納用バッファであり,他プロセサへ送
出されるメッセージが格納される。メッセージ受信バッ
ファ31は,受信メッセージの格納用バッファであり,
共通バス14を介して自プロセサへ送出されたメッセー
ジが格納される。
【0019】割込み要求部26は,入出力装置のアダプ
タから共通バス14を介して発行されたCPU20への
割込み要求を保持する回路であって,入出力処理の完了
や入出力装置からのアテンション等を,割込みによって
CPU20に伝える。
【0020】IO発行部27は,CPU20から発行さ
れた入出力命令(I/O命令)を,共通バス14へ発行
するものである。転送制御部28は,アダプタから共通
バス14を介して発行された主記憶アクセスコマンドの
実行を制御する。
【0021】共通バスインタフェース制御部32は,共
通バス14へのデータの送信および受信を制御するもの
である。図2に示すバスコントローラ13は,従来のプ
ロセサ間通信用のバスを制御する回路の機能と,入出力
用のバスを制御する回路の機能とを併せ持つものであ
り,それらの機能を,主記憶アクセス制御部23および
共通バスインタフェース制御部32によって切り換えて
実現するようになっている。なお,図2に示すバスコン
トローラ13は,従来のプロセサ間通信用のバスを制御
する回路と,入出力用のバスを制御する回路の中で,共
通化できる部分を共通化し,共通化できない部分につい
ては個別に設けることにより,容易に実現できるので,
これらの各部についての詳細な説明は省略する。
【0022】次に,ソフトウェアのカーネルとハードウ
ェアのバスコントローラ13とのインタフェースの例
を,図3に従って説明する。図3の(A)は,入出力制
御に関するインタフェースを示している。
【0023】ハードウェアに要求を出すための制御領域
22が,例えば図2に示す主記憶装置21内の所定のア
ドレスに用意されている。この領域は,対象となる入出
力装置へのアクセス経路ごとに固定された領域として用
意され,その制御領域22の各エントリに対するアドレ
スは,使用するバス番号,アダプタのアドレス,入出力
装置のアドレスによって決まるようになっている。
【0024】すなわち,各制御領域アドレス40は,ア
ドレスの上位ビットを定める各エントリに共通な固定値
と,使用する共通バスごとに割り当てられているバス番
号と,アダプタのアドレスと,入出力装置のアドレス
(機番)とによって構成される。
【0025】入出力装置に入出力要求を行う場合には,
パラメタブロック41を用意し,その装置によって決ま
る制御領域アドレス40が指す領域に,そのパラメタブ
ロック41のアドレスをストアする。パラメタブロック
41は,周知のチャネルコマンドワード(CCW)のよ
うなもので,入出力要求を示すコマンドの種類,データ
入力または出力の対象となる入出力バッファ42のアド
レス,転送するデータのサイズなどの情報を持つ。
【0026】このパラメタブロック41はチェイニング
が可能であり,同一装置に対する複数の入出力要求を一
度に出すことも可能である。図3の(B)は,メッセー
ジ制御に関するインタフェースを示している。
【0027】メッセージ制御の場合,ハードウェアに要
求を出すための制御領域22は,共通バスごとに用意さ
れている。各バスに対応する制御領域アドレス40は,
アドレスの上位ビットを定める共通の固定値と,使用す
るバス番号とによって決まるようになっている。アドレ
スの下位ビットは0である。
【0028】メッセージ通信要求を出す場合には,ディ
スクリプタ43と呼ばれる領域を用意し,データ通信に
用いる共通バスによって決まる制御領域アドレス40が
指す領域に,そのディスクリプタ43のアドレスをスト
アする。
【0029】ディスクリプタ43の領域には,あらかじ
め相手先プロセサのアドレス,送るメッセージのサ
イズ,送るメッセージバッファのアドレス,その他
の制御情報,などの情報を設定しておく。このディスク
リプタ43の領域もチェイニングが可能であり,のそ
の他の制御情報の部分に,次のディスクリプタをチェイ
ンニングすることにより,別プロセサに対する要求も同
時に一つの共通バスに対して出すことができるようにな
っている。
【0030】図2に示すバスコントローラ13は,これ
らの2種類の要求を,共通バスインタフェース制御部3
2を介して,共通バス14により処理する。次に,ソフ
トウェアおよびハードウェアによる処理を,図1ないし
図3の例をもとに説明する。
【0031】(1) 入出力要求,完了までの処理 応用プログラム等からの入出力要求に対して,入出
力処理部11は,パラメタブロック41を作成し,その
アドレスを制御領域22の該当するエントリに設定す
る。
【0032】 バスコントローラ13を起動する。 バスコントローラ13は,制御領域22からポイン
トされるパラメタブロック41を参照し,図2に示すI
O発行部27によって共通バス14に対する入出力処理
を開始する。なお,共通バス14の使用に関する競合制
御等については,従来技術と同様に行う。
【0033】 バスコントローラ13は,入出力処理
が完了すると,割込み要求部26によって,CPU20
に入出力割込みを発生させる。入出力処理の結果は,専
用の制御レジスタまたは主記憶装置21上の特定領域に
設定される。
【0034】 CPU20への入出力割込みにより,
図1に示す入出力処理部11が起動され,入出力処理部
11は,要求元に入出力の処理結果を通知する。 (2) プロセサ間データ転送の送信処理 応用プログラムなどの他プロセサに対するメッセー
ジ通信要求に対して,メッセージ通信処理部12は,図
3の(B)に示すディスクリプタ43を,送信するバス
によって定まる制御領域22のエントリにキューイング
する。
【0035】 バスコントローラ13を起動する。 パスコントローラ13の送信制御部24は,制御領
域22からポイントされるディスクリプタ43に従っ
て,主記憶装置21のメッセージバッファからバスコン
トローラ13内のメッセージ送信バッファ30へデータ
を取り込み,共通バス14を用いることにより相手プロ
セサへのデータ送信を行う。
【0036】(3) プロセサ間データ転送の受信処理 他プロセサからのデータ受信処理では,まずバスコ
ントローラ13が他プロセサからのデータ受信を認識
し,受信制御部25により,CPU20に対して割込み
を発生させる。
【0037】 受信データは,共通バスインタフェー
ス制御部32を介してメッセージ受信バッファ31で受
け取り,さらに事前にメッセージ通信処理部12が指定
した主記憶装置21内のバッファに,受信データを転送
する。
【0038】 メッセージ通信処理部12は,割込み
によって起動されると,受信したデータをメッセージの
受け取り要求元へ通知する。以上のように,バスコント
ローラ13によって,同じ共通バス14を入出力処理用
とプロセサ間のデータ転送用の両方に使用することがで
きる。したがって,入出力負荷とプロセサ間のデータ転
送負荷を同じバスの能力で吸収することができることと
なり,バスの効率的な利用が可能になる。
【0039】
【発明の効果】以上説明したように,本発明によれば,
バスを共用することにより,入出力負荷とプロセサ間の
データ転送負荷を同じバスの能力で吸収することができ
ることになり,それぞれ専用にバスを使用する方式より
も,有効にバスを使用できるようになる。
【図面の簡単な説明】
【図1】本発明の原理説明図である。
【図2】本発明の一実施例に係るバスコントローラの構
成例を示す図である。
【図3】本発明の一実施例に係るカーネルとバスコント
ローラのインタフェースの例を示す図である。
【図4】従来技術の例を示す図である。
【符号の説明】
10−1,10−2 プロセサ 11 入出力処理部 12 メッセージ通信処理部 13−1,13−2 バスコントローラ 14−1,14−2 共通バス 15−1,15−2 アダプタ 16−1〜16−3 入出力装置

Claims (1)

  1. 【特許請求の範囲】 【請求項1】 バスを介してプロセサ間通信を行う複数
    のプロセサ(10)からなるマルチプロセサシステムにおい
    て,各プロセサ(10)と入出力用の装置(15)とを結ぶ1ま
    たは複数の共通バス(14)と,各プロセサ(10)と上記共通
    バス(14)との間に介在し,入出力用の装置(15)に対する
    転送制御とプロセサ間通信によるメッセージ送受信制御
    とを行うバスコントローラ(13)と,入出力要求に対して
    上記バスコントローラ(13)に入出力の指示を与える入出
    力処理部(11)と,プロセサ間通信要求に対して上記バス
    コントローラ(13)にプロセサ間通信の指示を与えるメッ
    セージ通信処理部(12)とを備え,入出力処理に用いるバ
    スとプロセサ間通信に用いるバスとを共通にしたことを
    特徴とするマルチプロセサシステム。
JP15822991A 1991-06-28 1991-06-28 マルチプロセサシステム Withdrawn JPH056333A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP15822991A JPH056333A (ja) 1991-06-28 1991-06-28 マルチプロセサシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP15822991A JPH056333A (ja) 1991-06-28 1991-06-28 マルチプロセサシステム

Publications (1)

Publication Number Publication Date
JPH056333A true JPH056333A (ja) 1993-01-14

Family

ID=15667103

Family Applications (1)

Application Number Title Priority Date Filing Date
JP15822991A Withdrawn JPH056333A (ja) 1991-06-28 1991-06-28 マルチプロセサシステム

Country Status (1)

Country Link
JP (1) JPH056333A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6421086B1 (en) 1997-06-23 2002-07-16 Mitsubishi Denki Kabushiki Kaisha Image pickup apparatus
US7165133B2 (en) 2003-04-24 2007-01-16 Nec Corporation Multiprocessor system having shared buses, prioritized arbitration, and clock synchronization circuitry
JP2008293524A (ja) * 2008-07-18 2008-12-04 Nec Corp マルチプロセサシステム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6421086B1 (en) 1997-06-23 2002-07-16 Mitsubishi Denki Kabushiki Kaisha Image pickup apparatus
US7165133B2 (en) 2003-04-24 2007-01-16 Nec Corporation Multiprocessor system having shared buses, prioritized arbitration, and clock synchronization circuitry
JP2008293524A (ja) * 2008-07-18 2008-12-04 Nec Corp マルチプロセサシステム

Similar Documents

Publication Publication Date Title
US6711643B2 (en) Method and apparatus for interrupt redirection for arm processors
US4485438A (en) High transfer rate between multi-processor units
JPH0772889B2 (ja) 情報処理システム
JPH04246745A (ja) 情報処理装置及びその方法
US5507032A (en) Multiprocessor I/O request control system forming device drive queue and processor interrupt queue from rows and cells of I/O request table and interrupt request table
JP2001333137A (ja) 自主動作通信制御装置及び自主動作通信制御方法
US6701388B1 (en) Apparatus and method for the exchange of signal groups between a plurality of components in a digital signal processor having a direct memory access controller
US7254667B2 (en) Data transfer between an external data source and a memory associated with a data processor
JPH056333A (ja) マルチプロセサシステム
JP2618223B2 (ja) シングルチツプマイクロコンピユータ
JP3110024B2 (ja) メモリ制御システム
JPH09218859A (ja) マルチプロセッサ制御システム
JPH064401A (ja) メモリアクセス回路
JP2705955B2 (ja) 並列情報処理装置
JPH1185673A (ja) 共有バスの制御方法とその装置
JPS6240565A (ja) メモリ制御方式
JPH0535507A (ja) 中央処理装置
JPS61136159A (ja) シングルチツプマイクロコンピユ−タ
EP1193606B1 (en) Apparatus and method for a host port interface unit in a digital signal processing unit
JP2504528B2 (ja) 主記憶制御装置間バス制御方式
JPS6143369A (ja) マルチプロセツサシステム
JP2000330866A (ja) メモリ制御方法およびメモリ制御システム
JPH04302352A (ja) マルチプロセッサシステム
JPH06314231A (ja) 共用メモリアクセス制御方法
JPH05265967A (ja) マルチプロセッサシステムのデータ通信方法

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 19980903