JPS63257051A - マルチコンピユ−タシステム - Google Patents

マルチコンピユ−タシステム

Info

Publication number
JPS63257051A
JPS63257051A JP62090756A JP9075687A JPS63257051A JP S63257051 A JPS63257051 A JP S63257051A JP 62090756 A JP62090756 A JP 62090756A JP 9075687 A JP9075687 A JP 9075687A JP S63257051 A JPS63257051 A JP S63257051A
Authority
JP
Japan
Prior art keywords
memory
access
shared memory
shared
bus
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
JP62090756A
Other languages
English (en)
Other versions
JPH054711B2 (ja
Inventor
Michio Morioka
道雄 森岡
Tadaaki Bando
忠秋 坂東
Yoshihiro Miyazaki
義弘 宮崎
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP62090756A priority Critical patent/JPS63257051A/ja
Publication of JPS63257051A publication Critical patent/JPS63257051A/ja
Publication of JPH054711B2 publication Critical patent/JPH054711B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)
  • Bus Control (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、複数の処理装置を用いた分散処理システムに
係り、特に、多数のプロセッサによって共有されるメモ
リを有するマルチコンピュータシステムに関する。
〔従来の技術〕
計算機制御の分野では、制御対象となるプロセス毎に計
算機(処理装置)を割り当て、これらを積み重ねること
によって、大規模なシステムを効率良く制御する分散処
理システムが主流となりつつある。多数のプロセッサに
よって構成される分散処理システムでは、プロセッサ単
体の処理能力だけでなく、プロセッサ間の通信、同期が
重要な要素となる。プロセッサ間の通信、同期の手段と
しては、計算機システム全体の情報を記憶する共有メモ
リを設け、全てのプロセッサから、参照可能とする共有
メモリ方式が知られている。共有メモリは、クリティカ
ルリソースに関するセマフオア管理、あるいは、システ
ム構成テーブル、プロセッサ間共有データの格納等に利
用され、マルチコンピュータシステムには不可欠なハー
ドウェアとなっている。
次に、マルチコンピュータシステムにおける共有メモリ
の利用形態について述べる。
第1の利用形態としては、制御対象となるプロセスの状
態を示すプロセス管理情報の記憶装置として利用される
場合である。プロセス制御を行なう計算機は、常に制御
対象プロセスの状態を監視し、プロセス内で発生したイ
ベントに対して、リアルタイムに処理を行なう必要があ
る。このため、プロセスの各所には、多数のセンサが設
けられ、ネットワークスを通じて計算機に接続される。
各センサからの情報は、計算機のダイレクトメモリアク
セスコントローラ(以下DMAコントローラと称す)に
よって、共有メモリに蓄積される。これによって共有メ
モリは、常にプロセス全体の状態を示す管理情報を格納
するメモリとなる。制御用計算機は、各センサの情報を
直接アクセスする必要はなく、共有メモリ内のプロセス
情報に従って、イベントの監視を行なうことが可能とな
り、リアルタイム性の向−Lを実現している。
第2の利用形態としては、クリティカルリソースの管理
テーブルとして利用される場合である。
マルチコンピュータシステムでは、複数のプロセッサに
よって共有される資源として、プリンタ。
ファイルサーバ等の入出力装置が設けられる。これらの
入出力装置は、複数のプロセッサから同時にアクセスす
る事は許されず、排他的な管理を行なう必要がある。こ
れを実現するために、全てのプロセッサから参照可能な
共有メモリ」二に、排他制御のためセマフォアを管理す
るテーブルが設けられる。各プロセッサは、入出力装置
の使用に先立って、共有メモリ上のセマフオアをチェッ
クし、入出力装置の利用状況を確認する。
第3の利用形態としては、複数の割算機によって構成さ
れる高信頼化システムに必要なシステム管理テーブルと
して共有メモリを用いる場合である。例えば、2重系の
高信頼化システムにおいて、一方のプロセッサが故障し
た場合、即座に故障に検出し、待機している第3のプロ
セッサをシステムに組込む必要がある。これを実現する
ためには、個々のプロセッサとは独立した記憶装置上に
、各プロセッサの状態を格納する管理テーブルを設けね
ばならない。この記憶装置として共有メモリが用いられ
る。システム管理者となったプロセッサは、共有メモリ
上の管理テーブルから、故障したプロセッサを検出し、
バックアップ用のプロセッサを起動する処理を行なう。
以上述べた様に、マルチコンピュータシステムにおいて
、共有メモリは重要な構成要素となっている。次には、
この共有メモリに特有な問題点について述べる。
第1の問題点としては、共有メモリのアクセス時間が大
きくなる事が挙げられる。共有メモリは、信頼性の面か
ら、個々のプロセッサとは独立した構成となる。このた
め、プロセッサから、共有メモリ本体までに、多くの構
成要素を経ること、或いは物理的な配線長が長くなって
いることである。
更に、多数のプロセッサからのアクセス競合に対して、
アービトレートの機能も必要となり、プロセッサ内に設
けられたローカルメモリに比較し、アクセス時間は、か
なり、大きくなる。この問題に対しては、共有メモリの
インタリーブ化、あるいは、共有メモリ用キャッジメモ
リ、アクセス競合の優先選択の高速化等の対策が必要と
なる。
第2の問題点としては、信頼性の確保が必要となる事で
ある。共有メモリには、システム全体を管理する情報が
格納されており、このため、共有メモリが故障すると、
全てのシステムが停止する原因となる。これを避けるた
め、共有メモリでは2重化、あるいはバックアップシス
テムなどの冗長系が適用され、信頼性の向上を図る必要
がある。
第3の問題点は1.本特許に係るものであるが共有メモ
リのアクセスに起因するプロセッサの処理能力低下であ
る。個々のプロセッサエレメントでは、共有メモリへの
ポートを入出力バスではなく、主メモリバス上に設ける
場合が多い。これは、プロセッサから共有メモリまでの
間に通過する構成要素を削減或いは配線長さを短くし、
高信頼化、及び高速化を図るためである。この様な構成
では、主メモリバス上に、アクセス時間が短く、容量の
小さなローカルメモリと、アクセス時間が長く、容量の
大きな共有メモリの2種類の記憶装置が存在する事にな
る。本構成において、プロセッサ、あるいは、入出力バ
ス上のDMAコントローラの一方が、共有メモリをアク
セスする場合、アクセスが終了するまで主メモリバスを
専有すると、他方は、その間、ローカルメモリへのアク
セスができず、システムとしての処理効率が大幅に低下
する。この問題に対し、従来の装置は、例えば、特開昭
58−50058に記載の様に、主メモリバスを時分割
に共有する方式が考えられている。すなわち、ローカル
メモリのアクセスでは、主メモリバスを専有し、起動及
び応答を行なう。一方、共有メモリへのアクセスの場合
は、起動を行った後、一旦主メモリバスを解放する。そ
して、共有メモリから、アクセス終了報告を受けると、
再び主メモリバスを専有して、応答の処理を行う。本方
式によれば、アクセス時間の長い共有メモリへのアクセ
スによって、主メモリバスが長時間専有される問題は解
消される。すなわち、プロセッサが共有メモリをアクセ
スしている間に、DMAコントローセからローカルメモ
リへのアクセスが可能となる。
〔発明が解決しようとする問題点〕
しかし、上記従来技術では、以下に示す問題点について
、配慮がなされていない。まず、第1の問題としては、
プロセッサ、及び、DMAコントローラから、同時期に
共有メモリアクセスが発生した場合に、主メモリバスが
、ロックされてしまう。このため、それ以後のアクセス
(例えば、他DMAコントローラからのローカルメモリ
アクセス)は、主メモリバスが使用できず、待たされる
ことになる。これは、入出力装置のオーバランを引起す
原因となり得る。
又、第2の問題では、前提として、ローカルメモリの一
部のデータを高速な、システムキャッシュに保持し、プ
ロセッサ、及びDMAからのアクセスを、処理するメモ
リシステム構成を考える。
本構成において、共有メモr)へアクセスが発生すると
、共有メモリへの起動が終了するまで、システムキャッ
シュ、及びローカルメモリはアクセスできない。特に、
複数のDMAコントローラによって、共有メモリへのデ
ータ格納が頻繁に行なわれる場合には、プロセッサから
システムキャッシュへのアクセスが妨げられ、プロセッ
サの処理能力が低下する。
本発明は、上述した従来技術の欠点に鑑みなされたもの
で、その目的は、共有メモリアクセスとローカルメモリ
アクセスが、主メモリバスを時分割に使用する構成にお
いて、プロセッサ、及び、DMAからの共有メモリアク
セスが競合した場合でも、主メモリバスがロックさ九る
ことなく、ローカルメモリのアクセスが可能となるマル
チコンピュータシステムを提供することにある。
本発明の他の目的は、ローカルメモリのデータをキャッ
シングするシステムキャッシュを有するシステムにおい
て、共有メモリへの起動のために、システムキャッシュ
のアクセスが妨げられないマルチコンピュータシステム
を提供することにある。
上記第1の目的は、共有メモリボートにおいて、シ共有
メモリへのアクセスを複数のエントリから成るバッファ
に蓄積する手段を設けることによって達成される。
又、上記第2の目的は、メモリ管理装置において、共有
メモリへのリード及びライ1へアクセスと、ローカルメ
モリへのライトアクセスを、複数の工ントリから成るバ
ッファに蓄積する手段と、該バッファに識別子を設け、
蓄積されているアクセスが、ローカルメモリを対象とす
るものか、共有メモリを対象とするものかを識別する手
段と、該識別子に従って、ローカルメモリ及び、共有メ
モリのアクセスを制御する手段と、共有メモリの起動及
び応答に先立って、主メモリバスの専有制御を行なう手
段を設けることによって達成される。
〔作用〕
共有メモリポートに設けられた複数のバッファは、演算
処理装置(以下プロセッサと略称する)あるいはDMA
から、同時期に共有メモリアクセスが発生した場合に、
これらをバッファリングする。これによって主メモリバ
スはロックされることなく、他DMAからのローカルメ
モリアクセスが可能となり、入出力装置のオーバランが
発生することはない。
又、メモリ管理装置内に設けられた多段バッファは、ロ
ーカルメモリへの書込みを複数個バッファリングして、
プロセッサのメモリ待時間を削減’(12) すると共に、共有メモリへのリード及びライトアクセス
を複数個バッファリングすることにより、共有メモリの
起動終了を待つことなく、他のアクセスの処理が可能と
なる。多段バッファに書込まれた共有メモリアクセスは
、主メモリバスが使用されていない期間を利用し、共有
メモリポー+−に対して起動される。
C実施例〕 以下、本発明の一実施例を図面により詳細に説明する。
第1図は、複数の基本処理装置から成るマルチコンピュ
ータシステムの構成を示したものである。プロセッサニ
レメンl−(PE)103゜1.04,105は、演算
処理を実行するユニットであって、共有メモリバス11
3を介して、共有メモリ(GMA、 B)  1oo、
 1o1に接続される。共有メモリ100,101は、
プロセッサエレメント(以下、PEと略す)1’O’3
,1’04゜105の共有データを格納する記憶装置で
あって、一般に、半導体素子で構成される。共有メモリ
には、システム全体の管理情報、あるいは、PE間の同
期をとるためのセマフオア等、システムにとって重要な
情報が格納される。このため、第1図に示す様に、共有
メモリA100.共有メモリB101と2重化の構成を
採っている。共有メモリバスコントローラ(GMBC)
102は、各PEからの共有メモリアクセス要求を受付
け、優先選択を行って、当該PEに、共有メモリの使用
許可を与えるものである。又各PEの入出力装置として
は、固定ファイル111’DMAコン1〜ローラ112
などがあり、入出力バス117を介して、PE103の
入出カバスインタフエース110に接続される。又、入
出力バス117には、ネットワークアダプタ(図示せず
)も接続される。DMAコントローラ112は、制御対
象プロセス内に設けられたネットワークから、プロセス
の情報を収集し、共有メモリ100,101あるいは、
PE内のローカルメモリ106に格納する。本願明細書
ではプロセッサエレメント103.入出力バス117、
固定ファイル111 、 DMA112を1つの基本処
理装置と呼んでいる。
次にPE103の内部構成について説明する。
演算処理装置109は、命令解読ユニット、演算ロジッ
ク、及びレジスタ群を有し、レジスタ情報の演算、ある
いは、ローカルメモリ106.共有メモリ100,10
1の情報に対して、演算を行なう。入出カバスインタフ
エース110は、入出力ハス117に接゛続されるDM
Aコントローラ112からのローカルメモリ、共有メモ
リへのアクセスを受付け、入出力内部バス116、及び
メモリ管理ユニツI−108を介して、所望のメモリ装
置へアクセスを行なう。メモリ管理ユニット108は、
演算処理装置109、及び、入出カバスインタフエース
110からのメモリアクセスを受付け、これらの優先選
択を行なうとともに、主メモリバス114を介して、ロ
ーカルメモリ106のアクセス制御を行ない又、主メモ
リバス114゜共有メモリポート117を介して、共有
メモリ100.101のアクセス制御を行なう。
次に、第2図を用いてメモリ管理ユニット108の詳細
に関して説明を加える。主な構成要素としく15) ては、アドレス変換バッファ304.キャッシュメモリ
334.アドレスストアバッファ322゜データストア
バッファ33.アドレス変換コン1−ローラ305.キ
ャッシュメモリコントローラ310、メモリバスコント
ローラ309.共有メモリコントローラ308.DMA
起動系コン1〜ローラ306.DMAデータ転送系コン
トローラ307を挙げる事ができる。
アドレス変換バッファ304は、基本処理装置109が
保持するメモリアドレスレジスタ301から、アドレス
バス350を介して転送されて来る論理アドレスを、対
応するメモリの物理アドレス388に変換する機能を持
ち、ローカルメモリ106上に蓄積されたアドレス変更
テーブルの一部をバッファリングするものである。キャ
ッシュメモリ334は、ローカルメモリ106のデータ
の一部のコピーを保持し、アドレス変更バッファ304
から、アドレスセレクタ347.物理アドレスレジスタ
348を介して転送される演算処理装置109からの物
理アドレス、あるいは、人出カバスインタフエース11
0から、外部入力バス358、外部入力レジスタ342
.アドレスセレクタ347.物理アドレスレジスタ34
8を介して転送されるDMAコントローラからの物理ア
ドレスを受付け、該物理アドレスに対応するデータが、
キャッシュメモリ334内に存在すれば、ローカルメモ
リ10.6をアクセスする事なく、キャッシュリードデ
ータバス361.リードデータセレクタ311、を介し
て、基本処理装置内のり−ドデータレジスタ303、あ
るいは、外部出力レジスタ343ヘデータを転送するも
のである。アドレスストアバッファ322及び、データ
ストアバッファ333は、演算処理装置109、及び、
入出カバスインタフエース110から発生する。
ローカルメモリへの書込みアクセス、及び共有メモリへ
の読出し、書込みアクセスを、ファーストイン、ファー
ストアウトのアリゴリズムに従って複数のエントリーに
バッファリンクするものである。該バッファには、ゲッ
トポインタ339.リリースポインタ340が付属して
おり、ゲットボインタ339は、受付けたアクセスを格
納すべきエントリを示し、リリースポインタ340は、
次に起動すべきエントリを示す。
次にアドレス変換コントローラ305の機能について説
明する。第1の機能としては、演算処理装置109、及
び、入出カバスインタフエース110からのアクセスを
調停する機能を有する。
すなわち、演算処理装置109からのアクセス要求35
2、及びDMA起動コントローラ306゜からのアクセ
ス要求371を受けて、処理されるべきアクセスを選択
し、演算処理装置109に対しては、応答信号353に
より、又、DMAコントローラ306に対しては、応答
信号372により、アクセスが受付けられた事を報告す
る。更に、選択結果に従って、アドレスセレクタ347
.ライトデータセレクタ349を制御し、選択されたア
クセスのアドレスを、物理アドレスレジスタ348、又
、ライトデータを、ライ1ヘデータレジスタ346にセ
ットし、キャッシュメモリコン1ヘローラ310に対し
て、起動を行う。第2の機能としでは、ローカルメモリ
106に格納されるアドレス変換テーブルをアクセスし
て、論理アドレスをローカルメモリ上の物理アドレスに
変換する機能である。アドレス変換バッファ304は、
アドレス変換テーブルの一部しか保持しておらず、要求
された論理アドレスに対応したアドレス変換情報が存在
しない、場合がある。これはアドレス変換バッファのミ
スヒツトと呼ばれ、ミスヒツト信号387によって、ア
ドレス変換コントローラ305に報告される。アドレス
変換コントローラ305は該報告を受は取ると、ローカ
ルメモリ10”6をアクセスして、要求された論理アド
レスに対応したアドレス変換情報を読出し、アドレス変
換バッファ304に格納する。
キャッシュメモリコントローラ310の機能としては、
アドレス変換コントローラ305からのアクセス要求3
78を受付け、応答信号373を返送するとともに、ア
クセスの種類に応じて、以下の処理を行なう。すなわち
、ローカルメモリ106への読出し要求であれば、キャ
ッシュメモす334の検索、あるいは、キャッシャメモ
リ334に所望のデータが存在しない場合は、メモリコ
ントローラ309を介して、ローカルメモリ106のデ
ータを読出す。又、ローカルメモリ106への書込み要
求であれば、要求アクセスのアドレス、及びデータを、
それぞれ、アドレスストアバッファ322.データスト
アバッファ333にセットする。又、共有メモリの読出
し、あるいは書込みアクセスであれば、該アクセスのア
ドレス及び、データを、アドレスストアバッファ322
゜データストアバッファ333に格納する。この時、共
有メモリのアクセスを示す識別子、あるいは、共有メモ
リのアクセスファンクション情報も同時に、アドレスス
トアバッファ322に格納する。
メモリコン1−ローラ309は、キャッシュメモリコン
トローラ310からのローカルメモリ読出し要求390
、あるいはストアバッファからの、ローカルメモリ書込
み要求及び共有メモリ読出し。
書込み要求391を受付け、各アクセスの調停を行なう
とともに、メモリアドレスレジスタ335゜メモリデー
タレジスタ336の内容を用いてローカルメモリ106
に関する起動、及びデータ受取り、共有メモリポート1
07に対する起動の処理を行なう。
共有メモリコントローラ308は、共有メモリポート1
07からのメモリバス専有要求368を受けて、メモリ
管′理ユニット108内の各コントローラに動作停止を
要求し、動作停止を確認した後、共有メモリポート10
7から、メモリバス114、メモリリードデータレジス
タ341を介して、アクセス元へ、データを転送する機
能を有する。
DMA起動系コントローラ306は、入出カバスインタ
フエース110からの起動要求を受付け、アドレス変換
コントローラ、305に対して、起動を行なう。又、D
M’A転送系コントローラ307は、キャッシュメモリ
コントローラ310からのアクラス終了報告を受けて、
入出カバスインタフエース110へのデータの転送を制
御する。
次に、アドレスストアバッファ332.データストアバ
ッファ333に関し、第3図を用いて、更に詳細な説明
を加える。データストアバッファ333は、■エントリ
が32ビツトで、8エン1−りから成り、8個までのメ
モリアクセスをバッファリング可能となっている。又、
アドレスストアバッファ322は、アクセスアドレスを
保持するアドレスフィールド4.05(ADR)の他に
、以下に示すフィールドを有する。
(1)共有メモリアクセス識別子401ストアバツフア
に蓄積された各エントリについて、ローカルメモリ10
6を対象としたアクセスか、共有メモリ107を対象と
したアクセスかを区別する。
(2)共有メモリアクセス種402 共有メモリへのアクセスを保持するエントリに関して、
読出しか、書込みかを区別する。
(3)共有メモリアクセスサイズ403共有メモリへの
書込み、及び読出しアクセスを保持するエントリに関し
て、アクセスデータサイズが、8バイトであるか、4バ
イトである□かを示す。
(4)アクセスサイズ404 0−カルメモリ、及び共有メモリへの書込みアクセスを
保持するエントリに関して、4バイトデータの内、書込
むべきバイト位置を示す。
(5)共有メモリアクセスファンクション(0)406
共有メモリへの′アクセスを保持するエントリに関して
、アクセス元が、基本処理装置か、DMAコントローラ
かを示す。
(6)共有メモリアクセスファンクション(1)407
共有メモリへのアクセスを保持するエントリに関して、
共有メモリ内のメモリ空間に対するアクセスであるか、
レジスタ空間に対するアクセスであるかを区別する。
アドレスストアバッファ322.データストアバッファ
333は、読出し口が2つあり、それぞれリリースポイ
ンタ340の内容及び、リリースポインタ340の内容
に加算器409によって、1を加算した結果によって指
定される。これによって、ストアバッファ内の起動すべ
きエントリ及び、それに続くエントリが常に読出される
。ゲットポインタ339と、リリースポインタ340を
、比較器410で比較した結果、不一致であれば、スト
アバッファ322,333内に処理すべきアクセスが存
在する事を示し、メモリコントローラ309が起動され
る。メモリコントローラ309は、リリースポインタ3
40の指定するエントりの共有メモリアクセス識別情報
435から、該エントリが、ローカルメモリ106を対
象とするものか、共有メモリを対象とするものか識別す
る。
ローカルメモリ106へ対するアクセスであれば、アク
セス情報選択信号431によってセレクタ414を選択
し、且つ、アクセスレジスタセット信号432を用いて
、ライトアクセス指定信号430の情報を、アクセス種
指定レジスタ416にセットする。又、4バイトアクセ
スか、8バイトアクセスかを示すアクセスサイズレジス
タA417には、以下の3つの条件をアドレスゲート4
13で検出し、セレクタ415を介して情報をセラ1−
する。
条件(1):処理対象となるエントリが、共有メモリに
対するものではない。
条件(2):リリースポインタ340によって指定され
たアドレス440と、リリースポインタに1を加算した
内容によって読出されたアドレス441を比較器412
によって比較した結果、両者が連続する8バイト領域へ
の書込みアクセスである。
条件(3):リリースポインタ34.0によって指定さ
れたサイズ情報439と、リリースポインタに1を加算
した内容によって読出されたサイズ情報438を比較器
411で比較した結果1両者とも、書込サイズが4バイ
トである。
又、4バイト内の書込バイト位置を示すサイズレジスタ
8418.アドレスレジスタ419、及び書込みデータ
レジスタ422には、それぞれ、リリースポインタ34
0によって指定された、サイズ情報439.アドレス情
報440、及び、書込みデータ情報444が、アクセス
レジスタセット信号432によってセットされる。以上
の処理によって、メモリバス114に、アクセス情報が
オンバスされた後、メモリコントローラ309は、ロー
カルメモリ起動信号450により、ローカルメモリ10
6を起動する。
又、メモリコントローラ309が起動され、リリースポ
インタ340の指定するエントリの共有メモリアクセス
識別情報435から、該エントリが、共有メモリを対象
とするアクセスであることを識別すると、アクセス情報
選択信号431により、セレクタ4.14,415を制
御し、リリースポインタによって読出された、共有メモ
リアクセス種436.共有メモリアクセスサイズ437
を、それぞれ、アクセス種指定レジスタ416.アクセ
スサイズ指定レジスタAにセットする。又、4バイト内
の書込バイト位置を示すサイズレジスタB418.アド
レスレジスタ419.共有メモリアクセスファンクショ
ンレジスタ420,421゜書込データレジスタ422
には、それぞれ、リリースポインタ340によって指定
されたサイズ情報439.アドレス情報440.共有メ
モリアクセスファンクション情報44.2,443、及
び、書込みデータ情報444が、アクセスレジスタセッ
ト信号432によってセットされる。以上の処理によっ
て、共有メモリアクセス情報がオンバスされた後、メモ
リコントローラ309は、共有メモリ起動信号434に
よって共有メモリポート107を起動する。。
次に第2図を用いて、ローカルメモリ、及び共有メモリ
のアクセス手順を説明する。
演算処理装置109がらのアクセスでは、演算処理装置
内のメモリアドレスレジスタ301、及びメモリライト
レジスタ302の内容が、それぞれ、アドレスバス35
o、ライトデータバス351を介して、メモリ管理装置
108に転送されると同時に、起動信号352によって
アドレス変換コントローラ305が起動される。一方、
入出カバスインタフエース110がらのアクセスでは、
アドレス及び書込みデータが、外部久方バス358を介
して、外部入力レジスタ342にセラI−されると共に
、起動信号356によって、DMA起動系コントローラ
306が起動される。更に、DMA起動系コントローラ
は、起動信号371により、アドレス変換コントローラ
305を起動する。アドレス変換コントローラ305は
、基本処理装置、及び、DMA起動系コントローラ30
6からのアクセスを受付け、両者の優先選択を行なう。
優先度はDMA起動系からの要求が高く設定される。
基本処理装置109からのアクセス要求が受付けられた
場合、アドレス変換コントローラ305は、セレクタ3
47,348を制御し、アドレス変換バッファの出力3
88、及び、演算処理装置からのライ1−データ351
を、それぞれ、物理アドレスレジスタ348.ライ1−
データレジスタ346にセットする。この時、応答信号
353によって、演算処理装置109にアクセスを受付
けた事を報告する。一方、DMA起動系コントローラ3
06からのアクセス要求が受付けられた場合、アドレス
変換コントローラ305は、セレクタ347゜349を
制御し、外部入力レジスタ342の内容を、内部バス3
69を介して、物理アドレスレジスタ348.ライ1〜
データレジスタ346にセットする。この時、応答信号
372によって、DMA起動系コントローラ306にア
クセスを受付けた事を報告する。DMA起動コントロー
ラ306は該報告を受けると、入出カバスインタフエー
ス110に、アクセスが受付けられた事を報告する。
上記の処理が終了、した後、アドレス変換コントローラ
305は、キャッシュメモリコントローラ310に対し
て、起動信号378を送る。キャッシュメモリコントロ
ーラ310が起動された後は、アクセスの種類によって
、処理手順が異なる。以下、各アクセスの種類毎に、処
理手順を示す。
(1)ローカルメモリに対する読出しアクセスの処理手
順 キャッシュコン1−ローラ310は、物理アドレスレジ
スタ348の内容に基づいてキャッシュメモリ334を
アクセスし、所望のデータが存在すれば、キャッシュリ
ードデータバス361.セレクタ311を介して、演算
処理装置内のり−ドデータレジスタ303、あるいは、
外部出力レジスり343にデータを転送するとともに、
アクセス終了信号355,383により、各アクセス元
に終了報告を行なう。DMA転送系コントローラ307
は、アクセス終了報告を受けると、外部出力レジスタ3
43の内容を外部出力バス359を介して、入出カバス
インタフエース110に転送すると共に、アクセス終了
報告360を送る。一方、キャッシュメモリ334内に
所望のデータが存在しなければ、起動信号390によっ
て、メモリコントローラ309を起動する。メモリコン
トローラ309は、ストアバッファ322,333に処
理すべきデータがあれば、それらを処理した後、セレク
タ337を制御して、物理アドレスレジスタ348の内
容を、メモリアドレスレジスタ335にセットするとと
もに、起動信号364を用いて、ローカルメモリ106
を起動する。その後、ローカルメモリ106からのアク
セス終了報告365があるまでメモリバス114を専有
する。
ローカルメモリ106から応答があると、メモリバス上
のデータを、メモリリードレジスタ341に取込むとと
もに、キャッシュメモリコントローラ310に対して、
終了報告を行なう。キャッシュメモリコン1〜ローラ3
10は、各アクセス元に、メモリリードレジスタ341
の内容を転送するとともに、アクセスの終了を報告する
(2)ローカルメモリに対する書込みアクセスの処理手
順。
キャッシュメモリコントローラ310は、物理アドレス
レジスタ348の内容、及び、書込データレジスタ34
6の内容を、ゲットポインタ339の情報に従って、そ
れぞれ、アドレスストアバッファ322.データストア
バッファ333にセットする。この時1.同時にゲット
ポインタ339の内容をインクリメントするとともに、
アクセス元に対して終了報告を行なう。ストアバッファ
322゜333にアクセス情報がセットされると、起動
信号391によって、メモリコントローラ309が起動
される。メモリコントローラ309は、セレクタ337
を制御し、リリースポインタ340の情報に基づいて、
アドレスストアバッファ332゜データストアバッファ
333の内容を、それぞれメモリアドレスレジスタ33
5.メモリライトデータレジスタ336にセットする事
により、アクセス情報をメモリバス114にオンバスす
る。その後、メモリコントローラ309は、起動信号3
64により、ローカルメモリ106を起動し、リリース
ポインタ340をインクリメントして、処理を終了する
(3)共有メモリに対するアクセス処理手順。
キャッシュコントローラ310は、書込み、読出しに係
わらず、物理アドレスレジスタ348の内容、及び書込
データレジスタ346の内容をゲットポインタ339の
情報に従って、それぞれ、アドレスストアバッファ32
2.データストアバッファ333にセットする。この時
、前述した共有メモリアクセスに付随する付加情報(図
示せず)もアドレスストアバッファにセットする。メモ
リコントローラ309は、ストアバッファからの起動信
号391によって起動され、前記と同様にして、アクセ
ス情報をメモリバス114にオンバスする。その後、メ
モリコン1−ローラ309は、起動信号364により、
共有メモリポート107を起動する。共有メモリポー1
−107は、起動を受付けると、即座に応答信号395
により、アクセスが受付けられた事をメモリコントロー
ラ309に報告する。その後、共有メモリポート107
は、共有メモリに対して、起動処理を行なうが、その間
、メモリコントローラ309、及び、メモリバス114
は解放されており、他のアクセスを処理することが可能
となる。
共有メモリのアクセスが終了すると、共有メモリポート
107は、バス専有要求367を共有メモリコントロー
ラ308に転送する。共有メモリコントローラ308は
、動作停止要求381によ  ゛す、キャッシュメモリ
コントローラ310及び、DMA転送系コントローラ3
07に動作停止を要求する。キャッシュコントローラ及
び、DAM転送コントローラは、現在実行中の処理が終
了するのを待って、共有メモリのデータ待状態へ遷移し
、共有メモリコントローラ308に動作を停止した事を
報告する。次に、共有メモリコントローラは、メモリバ
ス114を専有し、共有メモリポー1〜107に対して
、データ転送要求367を送り、共有メモリポート10
7からの、応答368を受けて、メモリバス上のデータ
を、メモリリードデータレジスタ341に取り込み、キ
ャッシュコントローラ310に終了報告380を送る。
キャッシュコントローラ310は、前述と同様にして、
メモリリードデータレジスタ341の情報を、アクセス
元へ転送するとともに、アクセス終了報告を行って、処
理を終了する。
次に、上記アクセス手順に従って、ローカルメモリ、及
び共有メモリをアクセスする場合の、メモリバス転送タ
イミングを第4図を参照して説明する。501,503
,505は、メモリコン1〜ローラが、主メモリバスを
専有して、ローカルメモリの起動及びデータ受取りを行
っているサイクルである。一方、共有メモリへのアクセ
スでは、メモリバスを専有して、起動を行なうサイクル
502の後、一旦メモリバスを解放する。その後、共有
メモリのアクセスが終了するのを待って、データ転送の
ために、応答サイクル504として、メモリバスを使用
している。
次に、第5図を用いて、共有メモリポート107の内部
構成を説明する。アドレスバッファ601゜データバッ
ファ602、及び、アクセスファンクションバッファ6
03は、主メモリバス上のアドレス612.データ61
3.アクセスファンクション614を取り込むバッファ
であり、ファーストイン、ファーストアウトのアルゴリ
ズムに従って、複数のエントリにバッファリングするも
のである。ここでアクセスファンクション614の内容
としては、リード/ライ1へ種別、アクセスサイズ、及
びアクセス元を示す情報が含まれる。又、該バッファに
は、ゲットポインタ604.リリースポインタ605が
付属しており、ゲットポインタ604は、受付けたアク
セスを格納すべきエントリを示し、リリースポインタは
、共有メモリへ転送すべきエントリを示す。アクセス受
付コントローラ607は、メモリ管理装置108より、
共有メモリアクセス要求615を受付けると、制御信号
630により、アドレス612.データ613゜アクセ
スファンクション614をそれぞれバッファ601,6
02,603に取込み、ゲットポインタ604を更新す
る。その後、応答信号616により、アクセスを受付け
た事をメモリ管理装置108に報告する。共有メモリア
クセスコントローラ608は、ゲットポインタ604と
、リリースポインタ605の内容を比較する比較器60
6より、バッファ内に処理すべき情報が存在する事を検
出すると、リリースポインタ605の示すアクセス情報
を、共有メモリへのアドレスバス623゜データバス6
24.アクセスファンクションバス625にオンバスし
、信号626により、共有メモリを起動する。共有メモ
リのアクセスが終了すると、共有メモリアクセスコント
ローラ608は、アクセス終了応答627を受け、リー
ドデータレジスタ610.リターンコードレジスタ61
1に、それぞれ、共有メモリからのリードデータ628
゜リターンコード629をセットする。ここで、すター
ンコード629は、共有メモリアクセス中に発生したエ
ラーの詳細を示すものである。更にこの時、アクセスフ
ァンクションバッファ603の情報の内、アクセス元を
示す情報を、アクセス元レジスタ609にセットする。
その後データ転送予告信号617により、メモリ管理装
置108に、共有メモリのアクセスが終了した事を報告
する。
そして、メモリ管理装置108から、データ転送要求6
18があれば、制御信8640により、主メモリバス上
に、リードデータ621.リターンコード622.アク
セス情報620をオンバスし、データ転送終了報告61
9を行なう。
〔発明の効果〕
本発明によれば、共有メモリのアクセスと、ローカルメ
モリのアクセスが主メモリバスを時分割に使用するマル
チコンピュータシステムにおいて、プロセッサ、及び、
DMAからの共有メモリアクセスが競合した場合でも、
主メモリバスがロックされることなく、他DMAからロ
ーカルメモリのアクセスが可能となる。これによって、
入出刃部置のオーバランを避けることができる。
更に、本発明によれば、共有メモリへのリード及びライ
トアクセスを、メモリ管理装置内で複数個バッファリン
グすることにより、共有メモリへの起動終了を待つこと
なく、プロセッサは、他の処理を実行する事が可能とな
る。
【図面の簡単な説明】
第1図は、本発明が適用されるマルチコンピュータシス
テムの概略図、第2図は、本発明に用いられるメモリ管
理装置の一実施例内部構成図、第3図は、ストアバッフ
ァ周辺の詳細構成図、第4図は、メモリバス転送サイク
ルの説明用図面、第5図は、共有メモリポートの内部構
成図である。

Claims (1)

  1. 【特許請求の範囲】 1、命令を解読し、データの処理を行なう演算処理装置
    と、入出力装置とメモリ間のデータ転送を行なうDMA
    装置と、該演算処理装置と、DMA装置に接続され、メ
    モリアクセスを管理するメモリ管理装置と、該メモリ管
    理装置に主メモリバスを介して接続されたローカルメモ
    リと、該主メモリバスに接続された共有メモリポートか
    ら構成された複数個の基本処理装置と、各基本処理装置
    の共有メモリポートにメモリバスを介して接続された共
    有メモリからなるマルチコンピュータシステムにおいて
    、該共有メモリポートは、該演算処理装置と該DMA装
    置から発生された共有メモリへのアクセスを蓄積する複
    数のエントリからなるバッファ手段を有することを特徴
    とするマルチコンピュータシステム。 ム。 2、命令を解読し、データの処理を行なう演算処理装置
    と、入出力装置とメモリ間のデータ転送を行なうDMA
    装置と、該演算処理装置と、DMA装置に接続され、メ
    モリアクセスを管理するメモリ管理装置と、該メモリ管
    理装置に主メモリバスを介して接続されたローカルメモ
    リと、該主メモリバスに接続された共有メモリポートか
    ら構成された複数個の基本処理装置と、各基本処理装置
    の共有メモリポートにメモリバスを介して接続された共
    有メモリからなるマルチコンピュータシステムにおいて
    、該メモリ管理装置は、共有メモリへのリード及びライ
    トアクセスと、ローカルメモリへのライトアクセスを蓄
    積する複数のエントリからなるバッファ手段を有するこ
    とを特徴とするマルチコンピュータシステム。 3、特許請求の範囲第2項記載のバッファ手段は、蓄積
    されているアクセスが、共有メモリを対象とするものか
    、ローカルメモリを対象とするものかを識別する識別子
    を各エントリ毎に設けたことを特徴とするマルチコンピ
    ュータシステム。 4、特許請求の範囲第2項記載のメモリ管理装置は共有
    メモリへのリード及びライトアクセスとローカルメモリ
    へのライトアクセスを蓄積する複数のエントリから成り
    、蓄積されているアクセスが、共有メモリを対象とする
    ものか、ローカルメモリを対象とするものかを識別する
    識別子を各エントリ毎に設けたバッファ手段を有し、該
    識別子の内容に応じて、共有メモリに対して起動及び応
    答を行うか、ローカルメモリに対して起動及び応答を行
    うかを決定するようにしたことを特徴とするマルチコン
    ピュータシステム。
JP62090756A 1987-04-15 1987-04-15 マルチコンピユ−タシステム Granted JPS63257051A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62090756A JPS63257051A (ja) 1987-04-15 1987-04-15 マルチコンピユ−タシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62090756A JPS63257051A (ja) 1987-04-15 1987-04-15 マルチコンピユ−タシステム

Publications (2)

Publication Number Publication Date
JPS63257051A true JPS63257051A (ja) 1988-10-24
JPH054711B2 JPH054711B2 (ja) 1993-01-20

Family

ID=14007449

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62090756A Granted JPS63257051A (ja) 1987-04-15 1987-04-15 マルチコンピユ−タシステム

Country Status (1)

Country Link
JP (1) JPS63257051A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003050787A (ja) * 2001-08-06 2003-02-21 Nec Corp マルチプロセッサ制御システム

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS567161A (en) * 1979-06-28 1981-01-24 Hitachi Ltd Memory interface device
JPS61166671A (ja) * 1985-01-19 1986-07-28 Panafacom Ltd 複合プロセツサ制御方式

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS567161A (en) * 1979-06-28 1981-01-24 Hitachi Ltd Memory interface device
JPS61166671A (ja) * 1985-01-19 1986-07-28 Panafacom Ltd 複合プロセツサ制御方式

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003050787A (ja) * 2001-08-06 2003-02-21 Nec Corp マルチプロセッサ制御システム

Also Published As

Publication number Publication date
JPH054711B2 (ja) 1993-01-20

Similar Documents

Publication Publication Date Title
US4481572A (en) Multiconfigural computers utilizing a time-shared bus
US5060144A (en) Locking control with validity status indication for a multi-host processor system that utilizes a record lock processor and a cache memory for each host processor
US5682551A (en) System for checking the acceptance of I/O request to an interface using software visible instruction which provides a status signal and performs operations in response thereto
JP2641819B2 (ja) キャッシュ・コントローラ並びにフォールト・トレラント・コンピュータ及びそのデータ転送方式
US20080109570A1 (en) System and method for remote direct memory access without page locking by the operating system
JPH04233653A (ja) 速度差が大きい協同プロセッサ間のメッセージ・キュー処理
JPH04306748A (ja) 情報処理装置
JPH06103155A (ja) 共有メモリ制御方法及び共有メモリ制御装置
JP3027843B2 (ja) バススヌ−プ方法
US7143206B2 (en) Method for controlling data transfer unit having channel control unit, storage device control unit, and DMA processor
JP3195489B2 (ja) 外部記憶制御装置およびバス切り替え制御方法
CN116107697B (zh) 一种不同操作系统之间互相通信的方法及系统
EP0514697A2 (en) Split instruction paging method
WO2008057833A2 (en) System and method for remote direct memory access without page locking by the operating system
US7916146B1 (en) Halt context switching method and system
JP2001282631A (ja) 書き込みデータの破壊を制限する方法及びシステムとpciバス・システム
JPS63257051A (ja) マルチコンピユ−タシステム
JPH08314854A (ja) データ転送システムおよびこれに関連する装置
JP3141948B2 (ja) 計算機システム
US10067720B2 (en) Synchronous input/output virtualization
JPH0353657B2 (ja)
JPH10283302A (ja) 複数のプロセッサに接続されたバスにデータを供給する方法およびシステム
JP2922342B2 (ja) 割込み制御装置
JP2723388B2 (ja) プロセッサモジュールの内部バス制御方法及び情処理装置
JP3237569B2 (ja) メモリアクセス制御装置