JP3112280B2 - 計算機システム - Google Patents

計算機システム

Info

Publication number
JP3112280B2
JP3112280B2 JP02248204A JP24820490A JP3112280B2 JP 3112280 B2 JP3112280 B2 JP 3112280B2 JP 02248204 A JP02248204 A JP 02248204A JP 24820490 A JP24820490 A JP 24820490A JP 3112280 B2 JP3112280 B2 JP 3112280B2
Authority
JP
Japan
Prior art keywords
shared memory
unit
module
memory module
computer system
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.)
Expired - Fee Related
Application number
JP02248204A
Other languages
English (en)
Other versions
JPH04125750A (ja
Inventor
克彦 塩屋
敏男 小川
章 河部本
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
Priority to JP02248204A priority Critical patent/JP3112280B2/ja
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to DE69131840T priority patent/DE69131840T2/de
Priority to DE69129960T priority patent/DE69129960T2/de
Priority to EP91308453A priority patent/EP0476962B1/en
Priority to EP97113654A priority patent/EP0809185B1/en
Publication of JPH04125750A publication Critical patent/JPH04125750A/ja
Priority to US08/426,186 priority patent/US5963976A/en
Priority to US08/954,594 priority patent/US5890218A/en
Application granted granted Critical
Publication of JP3112280B2 publication Critical patent/JP3112280B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • Hardware Redundancy (AREA)
  • Memory System (AREA)

Description

【発明の詳細な説明】
[概要] 複数のプロセッサモジュールと共有メモリモジュール
がシステムバスを介して接続されたマルチプロセッサシ
ステムの計算機システムに関し、 運用中の二重化構成の変更を可能にすると共に二重化
アクセスに伴うソフトウェアの負担を軽減することを目
的とし、 プロセッサの物理アドレスでアクセス可能な共有メモ
リ空間を複数の部分共有メモリ空間に分割し、分割した
部分共有メモリ空間毎に共有メモリジュールとの関係を
定義する構成定義によって二重化の有無を指定し、この
構成定義はプロセッサのソフトウェアにより任意に設定
できることから運用中に二重化の指定と解除ができるよ
うに構成する。またソフトウェアによる1回の書込み指
示に対し二重化の構成定義が判別された場合には、ハー
ドウェアが指定されたIDの共有メモリモジュールに1回
目の書込みを行ない、続いて最初のIDの特定ビットを反
転することで二重化ペアとなっている他の共有メモリモ
ジュールへの2回目の書込を自動的に行うように構成す
る。 [産業上の利用分野] 本発明は、複数のプロセッサモジュールと共有メモリ
モジュールがシステムバスを介して接続されたマルチプ
ロセッサシステムの計算機システムに関する。 フォールトトレラントシステムの共有メモリには二重
化が必須である。しかし、ハードウェアにより固定的に
共有メモリの二重化構成が指定されており、柔軟性の高
い二重化の構成制御ができない。また二重化メモリのア
クセスにあっては、ソフトウェアが二重化アクセスであ
ることを意識してアクセスを監視しており、二重化書込
み時によるソフトウェアの処理負担が大きい。従って、
運用中に二重化構成が変更でき、且つ二重化アクセスの
ソフトウェア負担を軽減できるような二重化方式が望ま
れる。 [従来の技術] 従来のマルチプロセッサシステムは、複数のプロセッ
サモジュールと複数の共有メモリモジュールが、情報転
送のためのシステムバスを介して接続され、マルチプロ
セッサシステムして知られた計算機システムを構築して
いる。 このような従来のマルチプロセッサシステムにあって
は、各プロセッサモジュールの中央処理ユニットに必要
な命令及びデータは共有メモリモジュールに格納されて
おり、各プロセッサモジュールは共有メモリモジュール
を頻繁にアクセスするTCMP(Tightly Coupled Malti Pr
ocesser)システムを構成している。 またマルチプロセッサシステムを、運用中にシステム
の一部に故障が生じても停止することなくシステムの動
作を続けることのできるフォールトトレラントシステム
とするためには、共有メモリの二重化は必須である。 従来の共有メモリの二重化構成は、ハードウェアで決
定されており、ソフトウェアに基づくプロセッサの書込
み指示に対し、二重化構成が指定された共有メモリのペ
アに対し同じデータを書込む二重化書込みを行い、いず
れか一方のメモリ異常に直ちに対応できるようにしてい
る。 [発明が解決しようとする課題] ところで、フォールトトレラントシステムにおける共
有メモリの二重化は、全てのメモリ領域を二重化する必
要はなく、必要に応じて特定のメモリ領域のみを二重化
するだけで十分である。 しかし、従来の二重化方式にあっては、ハードウェア
によって二重化する共有メモリを固定的に指定していた
ため、システムの運用に伴って二重化を必要とするメモ
リ領域が増加したり変った場合には、システムを停止し
てハードウェアによる二重化構成の変更を行わなければ
ならず、二重化構成の柔軟性に欠ける問題があった。 また従来の二重化方式にあっては、二重化メモリのア
クセス時に、二重化アクセスであることをソフトウェア
が意識して例えば二重化された共有メモリに対する2回
のデータ書込が終了するまでアクセス状態を監視してお
り、二重化アクセスに伴うソフトウェアの負担が増大
し、システム性能を低下させる要因の1つとなってい
る。 本発明は、このような従来の問題点に鑑みてなされた
もので、運用中の二重化構成の変更を可能にすると共に
二重化アクセスに伴うソフトウェアの負担を軽減するフ
ォールトトレラントの計算機システムを提供することを
目的とする。 [課題を解決するための手段] 第1図は本発明の原理説明図である。 第1A図に示すように、本発明は、少なくともメインメ
モリ20、中央処理ユニット18及びシステムバス16への接
続ユニット22を備えた複数の処理モジュール(プロセッ
サモジュール)10と、少なくとも共有メモリユニット26
及びシステムバス16への接続ユニット28を備えた複数の
共有メモリモジュール12とを備えた計算機システムを対
象とする。 このような計算機システムにつき本発明は、第1B図に
示すように、処理モジュール10の物理アドレスでアクセ
ス可能な共有メモリ空間100を複数の部分共有メモリ空
間200に分割し、分割された部分共有メモリ空間200毎に
共有メモリモジュール12の二重化構成の有無を定義し、
更に、二重化構成が定義された共有メモリモジュール12
のユニットIDに対し、このユニットIDの特定のビットを
反転したユニットIDをもつ他の共有メモリモジュール12
を、二重化されたメモリペアとして指定し、 ソフトウェアに基づく中央処理ユニット18の1回の書
込み指示に対し二重化構成を判定した場合には、接続ユ
ニット22のハードウェアが、まずメモリペアのうち指定
されたユニットIDを有する共有メモリモジュール12に一
回目の書込みを行い、次にメモリペアのうち指定された
ユニットIDの特定ビットを反転したユニットIDを有する
他の共有メモリモジュール12に2回目の書込みを行うこ
とを特徴とする。 例えば、二重化構成が定義された共有メモリモジュー
ル12のユニットIDに対し、このユニットIDの最下位ビッ
トを反転したユニットIDをもつ他の共有メモリモジュー
ル12を、二重化されるメモリペアとして指定する。 また二重化アクセスは、ソフトウェアに基づく中央処
理ユニット18の1回の書込み指示に対し二重化構成を判
定した場合には、接続ユニット22のハードウェアが、ま
ず指定されたユニットIDを有する共有メモリモジュール
12に1回目の書込みを行い、次に指定されたユニットID
の特定のビットを反転したユニットIDを有する他の共有
メモリモジュール12に2回目の書込みを行うことを特徴
とする。 更に処理モジュール10の接続ユニット22は、共有メモ
リモジュール12の二重化構成の有無を指定する構成定義
レジスタ44を備え、中央処理ユニット18からの書込指示
を受けた際に構成定義レジスタ44を参照して二重化書込
みアクセスを実行する。 この二重化構成の有無を指定する構成定義レジスタ44
は、ソフトウェアに基づき中央処理ユニット18の指示で
運用中に変更することができる。 読出アクセスでは、処理モジュール10の接続ユニット
22が、二重化構成が指定された共有メモリモジュール12
のペアに対する読出指示を中央処理ユニット18から受け
た際には、中央処理ユニット18の読出し指示で発行され
たユニットIDをもつ片方の共有メモリモジュール12の読
出アクセスのみを実行する。 システムバス16による具体的な転送処理は、第1C図に
示すように、処理モジュール10の接続ユニット22が、ア
クセス対象となった共有メモリモジュール12を示す相手
先IDコード(DID)、発信元を示す発信元IDコード(SI
D)、アクセスの種類を示すオペランド、及びアクセス
データ容量(BCT)で構成される起動転送コマンド(S
C)を作成し、該起動転送コマンド(SC)を相手先共有
メモリモジュール12のアクセスアドレス(A)と共に前
記システムバス16に送信する。 これに対し共有メモリモジュール12の接続ユニット28
は、システムバス16を監視して起動転送コマンド(SC)
の相手先IDコードと自己のユニットIDとの一致を判別し
た時に起動転送コマンド(SC)の受信動作を行ってオペ
ランドに基づくアクセスを実行する。 更に、処理モジュール10の物理アドレスで直接アクセ
ス可能な共有メモリ空間100に加え、物理アドレスを越
える拡張共有メモリ空間を共有メモリモジュール12の増
設で形成し、処理モジュール10の接続ユニット22は、二
重化構成の指定に対し二重化書込みを実行するハードウ
ェアとして、中央処理ユニット18の物理アドレスにより
共有メモリ空間を直接アクセスするプログラムモードア
ドレス制御手段と;共有メモリモジュール12の選択情
報、物理アドレス及びデータ転送長の指定に基づき、物
理アドレスで直接アクセス可能な共有メモリ空間100及
び拡張共有メモリ空間をアクセスするDMAモードアクセ
ス制御手段34を備える。 一方、共有メモリモジュール12へのアクセス時に、何
等かの異常が検出された場合には、異常の詳細を通知す
る終結コードと共に異常が発生した共有メモリモジュー
ル12のユニットIDを処理モジュール10のソフトウェアに
通知する。 特に二重化アクセスにあっては、異常の詳細を通知す
る終結コードと共に異常が発生した共有メモリモジュー
ル12のユニットIDの最下位ビットのみを処理モジュール
10のソフトウェアに通知する。 即ち、二重化されたメモリペアのユニットIDは必ず偶
数番号のIDと奇数番号のIDが付与されているため、最も
下位のビットのみを通知すれば二重化ペアのどちらが異
常かがわかる。 更に、処理モジュール12のソフトウェアが二重化アク
セスの異常終結を示す通知を受けた際には、接続ユニッ
ト22に設けている構成定義レジスタ44の内容変更による
二重化解除、再書込みの指示、読出対象とする共有メモ
リモジュール12の切換え等のリカバリ処理を行う。 更に、第1A図の計算機システムを、単一の処理モジュ
ール10と、処理モジュール10の物理アドレスでアクセス
可能な共有メモリ空間を割付けた複数の共有メモリユニ
ット12で構成してもよい。 またシステムバス16を複数設け、システムバス16の数
に対応して処理モジュール10の接続ユニット22及び共有
メモリモジュール12の接続ユニット28を複数設けるよう
にする。 [作用] このような構成を備えた本発明の計算機システムによ
れば次の作用が得られる。 まず共有メモリ空間は、複数の共有メモリモジュール
によって構成されるが、共有メモリ空間を複数個の部分
共有メモリ空間に分割し、この分割された部分共有メモ
リ空間ごとに、共有メモリモジュールとの関係を定義す
る構成定義によって、二重化構成の有無の指定、さらに
は共有メモリ領域の存在の有無が指定できる。 この二重化の構成定義は、ソフトウェアによって任意
に設定でき、運用中においての共有メモリモジュールの
追加/削除あるいは一重/二重化の設定の変更が可能と
なる。 また二重化が指定できるのは、ユニットIDの特定のビ
ットのみが反転し、ほかのビットは同一のIDを有する共
有メモリモジュールのペアに限るという制限を設けるこ
とにより、ハードウェア主導による二重化書き込みが容
易に達成できる。 即ち、二重化構成が指定された共有メモリモジュール
への書込みアクセスに対しては、ソフトウェアの1回の
書込み指示で、ハードウェアがまず指定されたユニット
IDを有する共有メモリモジュールに書き込みを行い、次
に最初のユニットIDの特定のビットを反転し、二重化の
ペアとなる他方の共有メモリモジュールに対して書込み
を行う。このためソフトウェアは二重化アクセスを意識
することがなく、ソフトウェアの処理負担を軽減してシ
ステム性能を向上できる。
【実施例】
[装置の構成] 第2図は本発明の計算機システムが適用されるマルチ
プロセッサシステムの一部を示したシステム構成図であ
る。 第2図において、マルチプロセッサシステムは、複数
個のプロセッサモジュール(PM)10と、複数個の共有メ
モリモジュール(SSM)12を有し、各プロセッサモジュ
ール10と各共有メモリモジュール12は、スプリットバス
である共有システムバス(SS−BUS)16に接続ユニット
(SSBC−P)22を通して接続される。共有システムバス
16は共有システムバスハンドラ(SSBH)14により制御さ
れ、共有システムバス16のアービトレーションは共有シ
ステムバスハンドラ14が集中管理する。 #0〜#2のプロセッサモジュール10には、それぞれ
ユニットIDとして、 PM#0;UID=1000000 PM#1;UID=1000001 PM#2;UID=1000010 が付けられ、また#0〜#2の共有メモリモジュール12
には、それぞれユニットIDとして SSM#0;UID=0000000 SSM#1;UID=0000001 SSM#2;UID=0000010 が付けられる。 各々のプロセッサモジュール10および共有メモリモジ
ュール12は、フォールトトレラントを目的として二重化
した#0及び#1の共有システムバス16により制御され
ているが、より多くの共有システムバス16に接続しても
良い。 第3図は第2図に示したプロセッサモジュール10の実
施例構成図である。 第3図において、プロセッサモジュール10内には、中
央処理ユニット(μP)18、ローカルなメインメモリユ
ニット(LSU)20、および2本の共有システムバス16に
対する2つの接続ユニット(SSBC−P)22が内部バス24
を介して設けられる。 このプロセッサモジュール10内には、中央処理ユニッ
ト18及びメインメモリ20上で動作するソフトウェア(O
S)が走行し、第2図に示した各プロセッサモジュール1
0内のソフトウェアは、相互に協調して一連の動作を行
う分散OSを構成する。またプロセッサモジュール10内の
中央処理ユニット18は、自己のプロセッサモジュール10
内のメインメモリ20からのみ命令コードをフェッチする
ようにしている。 第4図は第2図に示した共有メモリモジュール12の実
施例構成図である。 第4図において、共有メモリモジュール12内には、共
有メモリユニット(SSU)24及び2本の共有システムバ
ス16に対する2つの接続ユニット(SSBC−S)28が内部
バス30を介して設けられる。共有メモリユニット26には
第2図に示した複数のプロセッサモジュール10で共有化
が必要なデータが格納される。 第5図は第3図のプロセッサモジュール10に設けた接
続ユニット(SSBC−P)22の実施例構成図である。 第5図において、接続ユニット22は共有システムバス
16を介して第2図の共有メモリモジュール12に対し、 プログラムモード DMAモード の2モードによるアクセスを行なう。接続ユニット22
は、これら2つのアクセスモードに対応してプログラム
モード・アクセス制御回路32及びDMAモード・アクセス
制御回路34、共有システムバス16との送受信回路36及び
バッファとして機能するデュアルポートRAM38によって
構成される。ここでプログラムモード・アクセス制御回
路32には、アドレスデコーダ40、タイミング制御回路4
2、構成定義レジスタ44が設けられ、またDMAモード・ア
クセス制御回路34には、アドレス発生器46、タイミング
制御回路48及びDMA制御レジスタ50が設けられる。 第6図は第4図に示した共有メモリモジュール12に設
けた接続ユニット(SSBC−S)28の実施例構成図であ
る。 第6図において、接続ユニット28には、内部バス30を
制御する内部バス制御回路74、アドレス発生器70及びタ
イミング制御回路72を備えたDMA制御回路52、第4図の
ように共有メモリモジュール12に複数の接続ユニット28
が搭載された場合に内部バス30のアービトレーションを
行う内部バスアビータ回路54、共有システムバス16に対
する送受信回路56、及びバッファ機能を有するデュアル
ポートRAM58によって構成される。 第3,4図に示したプロセッサモジュール10と共有メモ
リモジュール12間を共有システムバス16を介して接続す
るユニット22,28は、一回のアクセスを起動転送、応答
転送に分離して行うスプリット転送方式を採用してい
る。 このスプリット転送方式のバス制御においては、各モ
ジュールごとにユニットIDを割り付け、ユニットIDをバ
ス上のモジュール識別子とする。 第7図に接続ユニット22,28で使用する起動転送コマ
ンドSCと搭載転送コマンドECの例を示す。 第7図の起動転送コマンドSCにおいて、DID(Destina
tion ID)は受信先モジュールのユニットIDであり、SID
(Source ID)は送信元モジュールユニットIDである。
またオペランドはアクセス種類を示す。アクセス種類と
しては、共有メモリモジュール12に対するメモリアクセ
スの他に、共有メモリモジュール12や他のプロセッサモ
ジュール10に対するホルト指示、或いはリセット指示な
どの制御レジスタのアクセス等がある。更にBCT(Byte
Count)は、共有メモリモジュール12のアクセスにおけ
るデータ容量を示す。 一方、応答転送コマンドECにおけるDID、SIDは起動転
送コマンドSCと同じであるが、終結コードはアクセス先
における終結状態、即ち正常終結と異常終結をコード化
したものである。 第8図は共有システムバス16によりプロセッサモジュ
ール10から共有メモリモジュール12にデータを転送して
書込む書込アクセス(ストアアクセス)の動作説明図で
ある。 まずアクセス元のプロセッサモジュール10は、起動転
送コマンドSCを作成する。即ち、自己のユニットIDを示
すSID、アクセス先の共有メモリモジュール12のユニッ
トIDを示すDID、メモリ書込アクセスを示すオペラン
ド、アクセス容量を示すBCTによって転送起動コマンドS
Cを作成する。共有システムバス16上には転送起動コマ
ンドSCに続いて、アクセス先の共有メモリモジュール12
上のアクセスアドレスA及び書込むべきデータDを送信
する。 受信側の共有メモリモジュール12は共有システムバス
16上を監視し、起動転送コマンドSCに含まれる受信先を
示すDIDと自己のユニットIDを比較し、両者一致した場
合に受信動作を行う。受信動作を行った共有メモリモジ
ュール12は、共有メモリモジュール12内に設けた共有メ
モリユニット26(第4図参照)に書込アクセスを行い、
書込アクセスの終結コードを含め、転送方向が起動転送
と応答転送では逆のためDIDとSIDを交換した応答転送コ
マンドECを作成してアクセス元のプロセッサモジュール
10に対して送信する。 アクセス元のプロセッサモジュール10は、共有システ
ムバス16上を監視し、応答転送コマンドEC中の相手先を
示すDIDが自己のユニットIDと一致した場合に受信動作
を行い、1回のアクセスを終了する。 この起動転送コマンドSCの送信終了後から応答転送コ
マンドECの送信の開始までの間の空き時間については、
他のアクセスにおける起動転送コマンドSCあるいは応答
転送コマンドECの転送に共有システムバス16を使用して
も良い。 第9図は共有メモリモジュール12からプロセッサモジ
ュール10にデータを読出す読出アクセス(フェッチアク
セス)の動作説明図である。 まずアクセス元のプロセッサモジュール10は、起動転
送コマンドSCを作成する。即ち、自己のユニットIDを示
すSID、アクセス先の共有メモリモジュール12のユニッ
トIDを示すDID、メモリ読出アクセスのオペランド、ア
クセス容量を示すBCTによって転送起動コマンドSCを作
成する。共有システムバス16上には転送起動コマンドSC
に続いて、アクセス先の共有メモリモジュール12上のア
クセスアドレスAを送信する。 受信側の共有メモリモジュール12は共有システムバス
16上を監視し、転送コマンドSCに含まれる受信先を示す
DIDと自己のユニットIDを比較し、一致した場合に受信
動作を行う。受信動作を行った共有メモリモジュール12
は、共有メモリモジュール12内の共有メモリユニット26
(第4図参照)に読出アクセスを行い、読出アクセスの
終結コードを含め、転送方向が起動転送と応答転送では
逆のためDIDとSIDを交換した応答転送コマンドEC及び読
出データDをアクセス元のプロセッサモジュール10に対
して送信する。 アクセス元のプロセッサモジュール10は、共有システ
ムバス16上を監視し、応答転送コマンドEC中の相手先を
示すDIDが自己のユニットIDと一致した場合に受信動作
を行い、1回の読出アクセスが終了する。 この読出アクセスには、プログラムモードとDMAモー
ドの2モードがあるが、いずれのアクセスにおいても共
有システムバス16での動作は同じである。 [アドレス空間] 第10図に本発明の実施例におけるアドレス空間のマッ
プ説明図を示す。 第10図において、各プロセッサモジュール10の物理ア
ドレス空間は共有メモリモジュール空間(以下「SSU空
間」という)と、プロセッサモジュール固有空間(以下
「PM固有空間」という)に大別される。 PM固有空間は各プロセッサモジュール10のハードウェ
アリソース固有の空間であり、各プロセッサモジュール
10ごとに存在し、システムにおけるプロセッサモジュー
ル10の搭載台数分の多重アドレス空間となる。この実施
例ではPM固有空間を2GBとしている。 一方、SSU空間は、全てのプロセッサモジュール10に
共通な空間である。即ち、SSU空間は複数の共有メモリ
モジュール12によって構成され、システム搭載プロセッ
サモジュール12から見て共通の空間となり、しかもプロ
セッサモジュール10の物理アドレスによって直接アクセ
スすることができる。従って、SSU空間には、全てのプ
ロセッサモジュール10で共通に必要なデータのみが格納
される。 この実施例では2GBのSSU空間を例にとっており、SSU
空間は右側に取出して示すように更に256MB単位の8つ
の部分SSU空間#0〜#7に分割される。この部分SSU空
間#0〜#7の1つ1つが本発明の共有メモリモジュー
ル12で構成される。 更に、各プロセッサモジュール10のPM固有空間はLSU
空間と制御空間に分けられる。PM固有空間の一部である
LSU空間には、各プロセッサモジュール10が必要とする
オペランド、各プロセッサモジュール10固有のデータが
格納される。このLSU空間の存在により各プロセッサモ
ジュール10は共有メモリモジュール12で構成されるSSU
空間に対するアクセス回数を削減することができる。 また中央処理ユニット18によるアクセスドレスがLSU
空間を指している場合には、そのプロセッサモジュール
10内での閉じたアクセスとなる。 一方、中央処理ユニット18によるアクセスドレス(物
理アドレス)がSSU空間を指している場合には、プロセ
ッサモジュール10の接続ユニット22がSSU空間アクセス
であることを認識し、該当する共有メモリモジュール12
に対し共有システムバス16を介してアクセスを行う。 このように、SSU空間及びLSU空間がプロセッサモジュ
ール10上の物理アドレス空間にマッピングされているこ
とにより、ソフトウェアは空間切り替え等を行う必要な
しに、SSU空間及びLSU空間のアクセスが可能となる。 複数の共有メモリモジュール12で構成されるSSU空間
へのアクセス法としては、第10図のようにSSU空間が各
プロセッサモジュール10の物理アドレス空間に直接マッ
プされていることから、 ソフトウェアに基づく中央処理ユニット18の命令によ
り物理アドレスで直接アクセスするプログラムモード
と、 アクセスすべき共有メモリモジュール12を選択し、ア
クセスアドレスと転送長を指定してプロセッサモジュー
ル10と共用メモリモジュール12間のデータ転送を起動す
るDMAモード、 の2種類のアクセスモードがある。 この2種類のアクセスモードによって、アクセス可能
なSSU空間は異なる。この実施例においては、プログラ
ムモードによってアクセス可能なSSU空間は、各プロセ
ッサモジュール10の物理アドレス空間に直接マップされ
た2GBのみである。しかし、DMAモードにおいてはアクセ
ス先の共有メモリモジュール12をユニットIDで指定する
ことにより、さらに大きなSSU空間、即ち拡張SSU空間に
対するアクセスが可能である。 DMAモードアクセスでは、第8,9図に示した起動転送コ
マンドSC中のDIDによってアクセス先の共有メモリモジ
ュール10のユニットIDを指定し、続くアドレスAで共有
メモリモジュール10内のアドレスを指定する。従って、
理論上は、 拡張SSU空間容量=2n (但し、nは中央処理ユニット18のアドレスビット幅に
ユニットIDのビット幅) となる拡張SSU空間に対してアクセス可能となる。即
ち、拡張SSU空間は、ユニットIDを識別子として区別さ
れる多重空間となる。 第11図はプロセッサモジュール10の物理アドレス空間
にマッピングされたSSU空間と、DMAモードでのみアクセ
ス可能な拡張SSU空間を示したマップ説明図である。 第11図において、拡張SSU空間を構成する複数の共有
メモリモジュール12のユニットIDのビット数は7ビット
であり、0000000〜0111111の64個のユニットIDを共有メ
モリモジュール12に割り当てる。 ここでユニットIDの内の0000000〜0000111までの8個
のユニットIDは、プログラムモード及びDMAモードの両
方によるアクセスが可能であり、更に後述する二重化共
有メモリを構成する共有メモリモジュール12の構成定義
用に使用するため、物理アドレス空間の2GBに割り当て
る。また残りの56個のユニットIDを4GB単位に割り付け
る。その結果、合計226GBの拡張SSU空間に対してDMAモ
ードによるアクセスが可能である。 勿論、ユニットIDは第11図の8つのユニットIDに限定
されず、全二重化の共有メモリ空間(拡張でない2GBの
空間)16個の共有メモリモジュール12を使って例えば00
00000〜0001111で作ることも可能である。 また、第11図に限定されず、更にユニットIDのビット
数の増加、あるいはユニットIDの共有メモリモジュール
12に対する割り当て率の増加によって、DMAモードアク
セスによる拡張SSU空間は拡大可能である。 物理アドレスでアクセスできる本発明のSSU空間は、
複数の共有メモリモジュール12によって構成されるが、
SSU空間分の全てのメモリを実装する必要はなく、未実
装領域があってもかまわない。また、フォールトトレラ
ントを目的としてSSU空間の一部分を二重構成とするこ
とが可能である。 これらの未実装領域や二重構成は、第10図のプロセッ
サモジュール10のSSU空間に示すように、プロセッサモ
ジュール10のSSU空間を複数個の部分SSU空間に分割し、
その分割された部分SSU空間ごとに共有メモリモジュー
ル12との関係、即ち、第11図に示した拡張SSU空間を構
成するユニットID=0000000〜0000111をもつ共有メモリ
モジュール12との関係を定義する構成制御によって実現
される。 第10図の実施例では、2GBのSSU空間を256単位に8空
間に分割し、それぞれの分割された部分SSU空間#0〜
#7ごとに共有メモリモジュール12との対応関係を示す
構成定義をしている。 この共有メモリモジュール12の構成定義は、各プロセ
ッサモジュール10に搭載された第5図に示した接続ユニ
ット22内の構成定義レジスタ44を操作することにより実
現される。この構成定義レジスタ44は、第12図に示す第
1制御レジスタ60と第13図に示す第2制御レジスタ62−
1,62−2で構成される。 第12図の第1制御レジスタ60は、第10図のように256M
B単位に8分割されたSSU空間に対応する共有メモリモジ
ュール12の存在の有無、即ち共有メモリモジュール12が
実装されているか、未実装であるかを指定する。この実
施例では第12図は第1制御レジスタ60のビット1で示す
I0,I1,I2,I4,I7に対応した部分SSU空間#0,#1,#2,#
4,#7の5つが実装されており、ビット0で示すI3,I5,
16に対応した部分SSU空間#3,#5,#6の3つが未実装
であることを示している。 第13図に示す第2制御レジスタ62−1,2は、第1制御
レジスタ60において実装が指定された部分SSU空間にど
の共有メモリモジュール12が対応するか、一重/二重構
成の指定、及び二重構成が指定された場合のアクセス順
序を指定している。 この実施例では、部分SSU空間#0,#1,#2,#4,#7
に対するビットD0,D1,D2,D4,D7のみ有効であり、対応す
る共有メモリモジュール12の構成及びアクセス形態を指
定している。即ち、ビットD0,D1,D7は0であり、部分SS
U空間#0,#1,#7が一重構成であることを指定してい
る。この一重構成の部分SSU空間#0,#1,#7に対して
アクセスが行われた場合、ユニットID=0,1,7で指定さ
れた共有メモリモジュール12に対するアクセスを行う。 一方、ビットD2,D4は1となって二重構成を指定して
いる。この二重構成の部分SSU空間#2,#4に対しアク
セスが行われると、ユニットID2,ユニットID4で指定さ
れた片方の共有メモリモジュール12から読出を行う。 これに対し二重構成の共有メモリモジュール12への書
き込みは、1回目は第2制御レジスタ62−1,2のユニッ
トIDで指定された共有メモリジュール12に対して書き込
みを行った後、2回目は最初のユニットIDの特定ビッ
ト、例えば最下位ビットを反転したユニットIDをもつ他
の共有メモリモジュール12に対して書き込みを行う。 この第2制御レジスタ62−1,2で二重構成を指定でき
る共有メモリモジュール12のペアは、例えば ユニットID=0000100 ユニットID=0000101 のように最下位ビットのみが反転しているユニットIDを
有する共有メモリモジュール12となる。 第13図の実施例では、部分SSU空間#2と#4の2つ
がビットD2,D4=1により二重構成の指定を受けてお
り、部分SSU空間#2については、 [部分SSU空間] [ユニットID] #2 0000010 #3 0000011 となるペアが設定され、また部分SSU空間#4について
は、 [部分SSU空間] [ユニットID] #4 0000100 #5 0000101 となるペアが設定される。 第14図は、第12,13図の制御レジスタの指定に基づく
共有メモリモジュール12の実装状態及び構成定義を示し
た説明図である。 第14図において、プロセッサモジュール10のSSU空間
#0〜#7に対応して8つの共用メモリモジュール12が
設けられるが、SSU空間#6に対応した共用メモリモジ
ュールは未実装である。またSSU空間#3と#5につい
ては、二重構成によりSSU空間#2と#4の共有メモリ
モジュール12に対し二重化されるため、SSU空間#3,#
5に対応する共有メモリモジュール12は存在しないこと
になる。残りの#0,#1,#7のSSU空間については一重
構成であることから1対1に共用メモリモジュール12が
対応している。 このようにプロセッサモジュール10の物理アドレスで
アクセスできるSSU空間を分割して構成定義を行うこと
により、システム運用中においても、分割されたSSU空
間単位に共用メモリモジュールの有効/無効あるいは、
一重/二重構成の指定が可能となる。 この実施例にあっては、ソフトウェアに基づき中央処
理ユニット18の命令により物理アドレス空間で直接SSU
空間をアクセスするプログラムモードにおいては、32ビ
ットのSSU空間アドレスのビットb0〜b3の4ビットが共
有メモリモジュール12の選択子として機能し、残りビッ
トb4〜b31の28ビットが共有メモリモジュール12内のア
ドレスとして機能する。 共有メモリモジュール12に搭載されるメモリ容量が25
6MBを越える場合、共有メモリモジュール12を選択する
選択子の意味に変わりはないが、共有メモリモジュール
12の内部アドレスは、共有メモリモジュール12に搭載さ
れるメモリ容量に対応させる。例えばメモリ容量が2倍
の512MBの場合、アドレス情報のビットb3〜b31の29ビッ
トが共有メモリモジュール12の内部アドレスの指定に使
用される。また1GBの場合は、ビットb2〜b31の30ビット
が共有メモリモジュール12の内部アドレスの指定に使用
され、さらに2GBまで拡張された場合は、31ビットすべ
てが共有メモリモジュール12の内アドレスに使用され
る。このように共有メモリモジュール12のメモリ容量が
256MBを越える場合には、共用メモリモジュールを選択
する選択子のビット数が減少することから、256MB単位
に分割された複数の部分SSU空間に対して実装容量に対
応した同一のユニットIDを指定することになる。 [アクセスモード] 本発明のおいて、プログラムモードによるアクセスは
第15A,15B図のフローチャートに示す手順となる。 第15A図おいて、まずステップS1(以下「ステップ」
は省略)でソフトウェアが中央処理ユニット18の命令と
してSSU空間をアドレッシングするアクセスを行うと、S
2に進んで接続ユニット22は中央処理ユニット18からの
アドレスビットb0〜b3の4ビットと共有メモリモジュー
ル12の構成定義を行う第2制御レジスタ62−1,2の内容
から、どのユニットIDを持つ共有メモリモジュール12が
アドレッシングされたSSU空間を有するかを判断する。
更に第1制御レジスタ60の内容から指定された共有メモ
リモジュール12が未実装か否かを判定し、未実装であれ
ばS4に進んで異常終了とする。 S3で実装が判別されるとS5に進んで接続ユニット22は
中央処理ユニット18に対してリトライ信号を返し、中央
処理ユニット18をウェイト状態とする。 次にS6に進んで中央処理ユニット18からの命令が共有
メモリモジュール12からデータを読出すフェッチ命令
か、共有メモリモジュール12にデータを書込むストア命
令かを判別する。 中央処理ユニット18の命令がフェッチ命令であれば、
S7に進んで第2制御レジスタ62−1,2の内容から相手先
の共用メモリモジュールのユニットIDをDIDとして起動
転送コマンドSCを作成し、S8で共有システムバス16のバ
ス権を獲得した後に、起動転送コマンドSC及びアドレス
Aを共有システムバス16に送信する。 一方、S3でストア命令が判別されるとS14に進んで、
同様に第2制御レジスタ62−1,2の内容から相手先の共
用メモリモジュールのユニットIDをDIDとして起動転送
コマンドSCを作成し、S14で共有システムバス16のバス
権を獲得した後に、起動転送コマンドSC、アドレスA、
更に書込用のデータDを共有システムバス16に送信す
る。 これに対して共用メモリモジュール12側にあっては、
第15B図のフローチャートに示すように、接続ユニット2
8がS1で共有システムバス16を監視し、S2で起動転送コ
マンド中のDIDと自己のユニットIDとの一致を判別する
と、S3に進んで内蔵したデュアルポートRAM56に受信デ
ータを書き込む。 続いてS4でフェッチ命令かストア命令かを判別する。 S4でフェッチ命令が判別された場合には、S5で接続ユ
ニット28は内部バス30に対するバス権を獲得した後に、
内部バス制御回路64の制御のもとにデェアルポートRAM5
6と共有メモリユニット26の間でデータ転送を行う。S5
で共有メモリモジュール12内でのデータ転送終了後、接
続ユニット28はアクセス元のプロセッサモジュール10に
対し応答を行う。 即ち、S6に進んで終結コードを含んだ応答転送コマン
ドECを作成し、続いてS7で共有システムバス16に対する
バス権を獲得し、最終的にS8で応答転送コマンドEC、読
出されたデータDを共有システムバス16に送信する。 一方、S4でストア命令が判別された場合には、S9で接
続ユニット28は内部バス30に対するバス権を獲得した後
に、内部バス制御回路64の制御のもとにデュアルポート
RAM56と共有メモリユニット26との間のデータ転送によ
りデータ書込を行う。S9で共有メモリモジュール12内で
のデータ転送(データ書込)が終了すると、接続ユニッ
ト28はアクセス元のプロセッサモジュール10に対し応答
を行う。 即ち、S10に進んで終結コードを含んだ応答転送コマ
ンドECを作成し、続いてS11で共有システムバス16に対
するバス権を獲得し、最終的にS12で応答転送コマンドE
Cを共有システムバス16に送信する。 再び第15A図のプロセッサモジュール10側を説明する
と、プロセッサモジュール10の接続ユニット22は、S9又
はS16に示すように共有システムバス16を監視してお
り、応答転送コマンドECのDIDと自己のユニットIDとの
一致をS10,S17で判別すると、フェッチ命令の際にはS11
に進んで応答転送コマンドECとデータDを受信し、スト
ア命令の場合はS18に進んで応答転送コマンドECを受信
する。 続いてS12,S20に示すように、中央処理ユニット18に
対し発行しているリトライ信号を取下げ、中央処理ユニ
ット18のウェイト状態を解除する。そしてフェッチ命令
であればS13で中央処理ユニット18に内部バス24の終結
信号DCを受信したデータDと共に返し、またストア命令
であれば20で中央処理ユニット18に内部バス24の終結信
号DCを返す。 以上でプログラムモードによる1アクセスが終了す
る。 尚、第15A図のS19及びS22〜S28の二重書込処理につい
ては後の説明で明らかにする。 次に第16A,16B図のフローチャートを参照して本発明
におけるDMAモードによるアクセスを説明する。 DMAモードによるアクセスに際して中央処理ユニット1
8は、まずS1で予めプロセッサモジュール10のメインメ
モリ20上に第17図に示す相手先の共用メモリモジュール
12のユニットID、アクセスアドレス、転送長等の制御内
容を含んだディスクリプタを配置する。 即ち、第17図のディスクリプタにおいて、BCT(Byte
Count)は転送バイト数を指定し、バッファアドレスBUF
Aはメンインメモリ20上に置かれるデータバッファの先
頭物理アドレスを指定し、DIDはアクセス対象となる共
有メモリモジュール12のユニットIDを指定する。更にSS
UAはアクセス対象となった共有メモリモジュール12内の
相対アドレス(DIDで指定された共有メモリモジュール1
2内の内部アドレス)を指定するするもので、プログラ
ムモードにおけるSSU空間の物理アドレスとは異なる。 S1でディスクリプタを配置した後、S2に進んで接続ユ
ニット22に設けたDMAモード制御回路34内のDMA制御レジ
スタ50に転送方向、共有メモリモジュール12への二重化
書き込み指定、メインメモリ20上のディスクリプタのア
ドレス等の制御指示を行い、DMAモードアクセスを起動
する。 S2でDMAモードアクセスが起動されると、接続ユニッ
ト22がプロセッサモジュール10の内部バス24のバス権を
獲得してバスマスタとなり、DMA制御回路34の制御もと
にメインメモリ20を直接アクセスし、メインメモリ20上
のディスクリプタを読み出し、メインメモリ20から接続
ユニット22内のデュアルポートRAM38へのデータ転送を
行う。 接続ユニット22内のデュアルポートRAM38へのデータ
転送終了後、S4でデータの転送方向を判別する。共有メ
モリモジュール12からメインメモリ20へ読出データを転
送する転送方向(以下「(SSU→LSU)方向」という)で
あればS5に進んで送受信回路36で第7図に示した共有メ
モリモジュール12のユニットID、転送長を含んだ起動転
送コマンドSCを作成する。一方、メインメモリ20から共
有メモリモジュール12へ書込データを転送する転送方向
(以下「(SUS→LSU)方向」という)であればS13に進
んで送受信回路36で同様に転送起動コマンドSCを作成す
る。 続いてS6,S14に進んで送受信回路36は共有システムバ
ス16のバス権を獲得する。 転送方向が(SSU→LSU)方向の場合にはS6からS7に進
み、起動転送コマンドSC、アドレスAを共有システムバ
ス16に送信する。また(LSU→SSU)方向の場合にはS15
からS16に進み、起動転送コマンドSC、アドレスA及び
データDを共有システムバス16に送信する。 一方、共有メモリモジュール12側の接続ユニット28
は、第16B図のS1で共有システムバス16を監視してお
り、起動転送コマンドSC中のDIDと自己のユニットIDと
一致をS2で判別するとS3に進み、接続ユニット28内のデ
ュアルポートRAM56に受信データを書込む。 次にS4で転送方向が(LSU→SSU)方向か(SSU→LSU)
方向から判別し、(LSU→SSU)方向であればS5に進み、
また(SSU→LSU)であればS9に進む。S5,S9では、接続
ユニット28に設けたDMA制御回路52の内部バス制御回路6
4が内部バス30のバス権を獲得し、デュアルポートRAM56
と共有メモリユニット26との間でデータ転送を行い、S5
では共有メモリユニット26からのデータ読出を行い、ま
たS9では共有メモリユニット26に対するデータ書込を行
う。 S5又はS9でDMAによるメモリアクセスが終了すると、S
6,S10で第7図に示した終結コードを含んだ応答転送コ
マンドECを作成し、S7,S11で共有システムバス16のバス
権利を獲得してS8,S12に進む。即ち、(LSU→SSU)方向
となるS8では、応答転送コマンドECに読出したデータD
を付加して共有システムバス16に送信する。また(SSU
→LSU)となるS12では応答転送コマンドECを共有システ
ムバス16に送信する。 再び第16A図のプロセッサモジュール10側を説明する
と、プロセッサモジュール10の接続ユニット22は、S8又
はS17に示すように共有システムバス16を監視してお
り、応答転送コマンドのDIDと自己のユニットIDとの一
致をS9,S18で判別すると、S10,S19に進んで受信動作を
行い、受信データを接続ユニット22内のデュアルポート
RAM38に格納する。 続いて(SSU→LSU)方向の場合にはS11に進んで内部
バス24のバス権を獲得し、DMA制御によりデュアルポー
トRAM38の受信データDをメインメモリ20に転送し、最
終的にS12でDMA制御レジスタ50に終結コードをセット
し、中央処理ユニット18に割込み上げて終了を通知す
る。 また(LSU→SSU)方向の場合にはS20を介してS21に進
み、DMA制御レジスタ50に終結コードをセットし、中央
処理ユニット18に割込みを上げて終了を通知する。 以上でDMAモードによる1アクセスが終了する。 尚、第16A図のS20及びS22〜S27の二重書込処理につい
ては後の説明で明らかにする。 [二重化アクセス] 本発明のSSU空間を構成する複数の共有メモリモジュ
ール12は、フォールトトレラントを目的として二重化す
ることが可能である。二重化された共有メモリモジュー
ル12をアクセスした際の書込動作は、二重化された両方
の共有メモリモジュール12に行われ、一方、読出動作は
片方の共有メモリモジュール12より行われる。 二重化された共有メモリモジュール12の書込みは、ソ
フトウェアに基づく中央処理ユニット18からの1回のア
クセス指示で、接続ユニット22のハードウェア制御によ
って二重化された共有メモリモジュール12へのアクセス
が実行される。このハードウェア制御による二重化され
た共有メモリモジュール12への書込アクセスは、ハード
ウェア制御上、同時に行われるのではなく、まず片方の
共有メモリモジュール12へ書き込みを行い、その動作が
完了すれば、もう一方の共有メモリモジュール12へ書き
込み動作に入る。具体的な二重化アクセス方法は、プロ
グラムモードとDMAモードのアクセスによって異なる。 プログラムモードの二重化アクセス方法は第15A図のS
19,S22〜S28の処理となる。 即ち、1回目のストアアクセスについては一重構成の
場合と同じに処理され、S18で1回目の共有メモリモジ
ュール12に対する書込アクセスが終了して正常終了を示
す応答確認コマンドECを受領すると、S19に進んで共有
メモリモジュール12の構成を定義している第13図に示し
た第2制御レジスタ62−1,2を参照する。 第2制御レジスタ62−1,2には、共有メモリモジュー
ル12の二重構成の指定、二重構成を指定した時の読出し
側の共有メモリモジュールのユニットID、更に先に書込
む共有メモリモジュールのユニットIDが指定されてい
る。 第2制御レジスタ62−1,2を参照した時に、アクセス
アドレスに対応する共有メモリモジュール12が一重構成
の指定であれば、S20に進んで接続ユニット22はアクセ
ス対象となった共有メモリモジュール12に対する1回の
書込アクセスで終了する。 これに対し二重構成が指定されていた場合にはS22に
進み、既にアクセスが終了した第2制御レジスタ62−1,
2で最初に指定された共有メモリモジュール12のユニッ
トIDの最下位ビットを反転したユニットIDをDIDとする
ストア用の転送起動コマンドSCを作成する。次にS23で
共有システムバス16のバス権を獲得して起動転送コマン
ドSC、アドレスA及び1回目と同じデータDを共有シス
テムバス16に送信し、二重化された他方の共有メモリモ
ジュール12に対してアクセスを行う。 この2回目のアクセスに対しても1回目と同様、第15
B図のS1〜S4,S9〜S12の処理が共有メモリモジュール12
側で行なわれ、最終的に終結コードを含む応答転送コマ
ンドECを共有システムバス16に送信してくる。 そこで第15A図のS24で共有メモリモジュール12からの
転送データを監視し、S25でDIDと自己のユニットIDの一
致を判別するとS26で応答転送コマンドECの受信動作を
行い、S12,S13の場合と同様にして二重構成の共有メモ
リモジュールに対する一連のストアアクセスを終了す
る。 このように第2制御レジスタ62−1,2によって共有メ
モリモジュール12の構成定義を行っておけば、ソフトウ
ェアに基づき中央処理ユニット18がプログラムモードで
共有メモリモジュール12の物理アドレスをアクセスした
際(SSU空間のアクセス)に、プロセッサモジュール10
側の接続ユニット22がハードウェア制御によって共有メ
モリユニット12が一重構成か二重構成か判断し、二重構
成であれば、1回目のアクセス終了で自動的にユニット
IDを変えて2回目のアクセスを行うことができる。 またアクセスアドレスに対応する第2制御レジスタ62
−1,2で指定された共有メモリモジュール12の構成定義
が二重構成であっても、二重化された片方の共有メモリ
モジュール12が障害によりアクセスが不可能となる場合
があり得る。このような一時的に縮退運転を行わざるを
得ない状況においては、アクセス終了で得られた応答確
認コマンドECの異常終結コードを判別した際に、第2制
御レジスタ62−1,2の動作モードを二重化モードから一
重化モードへ変更することによって対応可能となる。 更に二重化モードのアクセス時に、共有メモリモジュ
ール12へのアクセスが異常終結した場合は、異常が検出
された共有メモリモジュール12のユニットIDと、第2制
御レジスタ62−1,2の内容によるアクセス順序と合わせ
て、二重化されている2つの共有メモリモジュールの内
容の等価性の有無の判定も可能である。特に、プログラ
ムモードにおいては、基本的にアクセスの成功,失敗が
ワード単位で認識できるので、二重化された共有メモリ
モジュール12間でデータ等価性が失われた場合も、不一
致が生じたワードとアクセスに失敗した共有メモリモジ
ュール12側を考慮してリカバリ処理を行えば良い。 次にDMAモードの二重化アクセス方法は第16A図のS20,
S22〜S27の処理となる。 即ち、データの転送方向が(LSU→SSU)方向となる1
回目のDMAアクセスについては一重構成の場合と同じに
処理され、S19で1回目の共有メモリモジュール12に対
する書込アクセスが終了して正常終了を示す応答確認コ
マンドECを受領すると、S20に進んで二重化書込みの有
無を判定する。 DMAモードのアクセスは、目的とする共有メモリモジ
ュール12を選択し、共有メモリモジュール12上のアクセ
スアドレスと転送長を指定して起動するが、その転送方
向、共有メモリモジュール12への書込み時の一重/二重
構成の指定等の動作モードは、起動する単位で接続ユニ
ット22のDMA制御レジスタ50で指定されている。 このためS20では共有メモリモジュール12の構成を定
義しているDMA制御レジスタ50を参照して二重化書込み
の有無を判定する。 DMA制御レジスタ50を参照した時に、アクセスアドレ
スに対応する共有メモリモジュール12が一重構成の指定
であれば、S21に進んで接続ユニット22はアクセス対象
となった共有メモリモジュール12に対する1回の書込ア
クセスで終了する。 これに対し二重構成が指定されていた場合にはS22に
進み、既にアクセスが終了したDMA制御レジスタ50で最
初に指定された共有メモリモジュール12のユニットIDの
最下位ビットを反転したユニットIDをDIDとする書込用
の転送起動コマンドSCを作成する。次にS23で共用シス
テムバス16のバス権を獲得して起動転送コマンドSC、ア
ドレスA及び1回目と同じデータDを共有システムバス
16に送信し、二重化された他方の共有メモリモジュール
12に対してDMAアクセスによる書込みを行う。 この2回目のDMAアクセスに対しても1回目と同様、
第16B図のS1〜S4,S9〜S12の処理が共有メモリモジュー
ル12側で行なわれ、最終的に終結コードを含む応答転送
コマンドECを共有システムバス16に送信してくる。 そこで第16A図のS24で共有メモリモジュール12からの
転送データを監視し、S25でDIDと自己のユニットIDの一
致を判別するとS26で応答転送コマンドECの受信動作を
行い、S11,S12の場合と同様にしてS26,S27を経て二重構
成の共有メモリモジュール12に対するDMAアクセスによ
る書込みを終了する。 このようにDMAモードにおいても、プログラムモード
における二重化書き込み同様、動作モードを指定してお
けば、ハードウェアによる二重化書込みが自動的に行わ
れる。 また二重化された共有メモリモジュール12のDMAアク
セス中に異常終結した場合、アクセス中のユニットID
と、1回目のアクセス時に指定された共有メモリモジュ
ール12のユニットIDの最下位ビットによるアクセス順序
と合わせて、二重化された2つの共有メモリモジュール
12間のデータの等化性の有無も判定可能である。 尚、第2図の実施例は複数のプロセッサモジュール10
を示しているが、プロセッサモジュール10を1台とした
システム構成でもよい。
【発明の効果】
以上説明したように本発明によれば、システムの運用
中に二重化構成を変更することができ、共用メモリ空間
の二重化が必要なメモリ領域に対応した柔軟性の高い二
重化構成を可能にししてフォールトトレラント性能を引
き上げることができる。 またソフトウェアの書込み指示に対しハードウェアが
自動的に2回の二重化書込動作を実行するため、二重化
アクセスをソフトウェアで意識させる必要がなく、ソフ
トウェアの処理負担を軽減してシステム性能を向上でき
る。
【図面の簡単な説明】
第1A,1B,1C図は本発明の原理説明図; 第2図は本発明のマルチプロセッサシステム構成図; 第3図は本発明のプロセッサモジュール構成図; 第4図は本発明の共有メモリモジュール構成図; 第5図は本発明のプロセッサモジュール内蔵の接続ユニ
ット構成図; 第6図は本発明の共有メモリモジュール内蔵の接続ユニ
ット構成図; 第7図は本発明のシステムバス上の転送コマンド説明
図; 第8図は本発明の書込転送動作説明図; 第9図は本発明の読出転送動作説明図; 第10図は本発明のアドレス空間マップ説明図; 第11図は本発明の拡張SSU空間説明図; 第12図は本発明の第1制御レジスタによるSSM構成定義
の説明図; 第13図は本発明の第2制御レジスタによるSSM構成定義
の説明図; 第14図は第12,13図の構成定義に対応する共有メモリモ
ジュールの実装説明図; 第15A,15B図は本発明のプログラムモードアクセスのフ
ローャート; 第16a,16B図は本発明のDMAモードアクセスのフローチャ
ート; 第17図は本発明のDMAモードアクセスで用いるディスク
リプタ説明図である。 図中、 10:プロセッサモジュール(処理モジュール、PM) 12:共有メモリモジュール(SSM) 14:共有システムバスハンドラ(SSBH) 16:共有システムバス(SS−BUS) 18:中央処理ユニット(μP) 20:メインメモリ(LSU) 22:接続ユニット(SSBC−P;PM側) 24:内部バス(PM側) 26:共有メモリユニット(SSU) 28:接続ユニット(SSBC−M;SSM側) 30:内部バス(SSM側) 32:プログラムモード。アクセス制御回路 34:DMAモード・アクセス制御回路 36,58:送受信回路 38,56:デュアルポートRAM(バッファ) 40:アドレスデコーダ 42,48,72:タイミング制御回路 44:構成定義レジスタ 46,70:アドレス発生器 50:DMA制御レジスタ 52:DMA制御回路 54:内部バスアービタ 74:内部バス制御回路
───────────────────────────────────────────────────── フロントページの続き (72)発明者 河部本 章 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (56)参考文献 特開 昭61−133453(JP,A) 特開 昭57−162200(JP,A) 特開 昭63−149748(JP,A) 特開 昭62−103756(JP,A) 特開 平2−166535(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06F 13/10 G06F 12/16

Claims (12)

    (57)【特許請求の範囲】
  1. 【請求項1】少なくともメインメモリ、中央処理ユニッ
    ト及びシステムバスへの接続ユニットを備えた複数の処
    理モジュールと、少なくとも共有メモリユニット及び前
    記システムバスへの接続ユニットを備えた複数の共有メ
    モリモジュールを有する計算機システムに於いて、 前記処理モジュールの物理アドレスでアクセス可能な共
    有メモリ空間を複数の部分共有メモリ空間に分割し、該
    部分共有メモリ空間毎に前記共有メモリモジュールの二
    重化構成の有無を定義し、 二重化構成が定義された共有メモリモジュールのユニッ
    トIDに対し、該ユニットIDの特定のビットを反転したユ
    ニットIDをもつ他の共有メモリモジュールを、二重化さ
    れたメモリペアとして指定し、 ソフトウェアに基づく前記中央処理ユニットの1回の書
    き込み指示に対し二重化構成を判定した場合には、前記
    接続ユニットのハードウェアが、まず前記メモリペアの
    うち指定されたユニットIDを有する共有メモリモジュー
    ルに一回目の書込みを行い、次に前記メモリペアのうち
    指定されたユニットIDの特定ビットを反転したユニット
    IDを有する他の共有メモリモジュールに2回目の書込み
    を行うことを特徴とする計算機システム。
  2. 【請求項2】請求項1記載の計算機システムに於いて、 二重化構成が定義された共有メモリモジュールのユニッ
    トIDに対し、該ユニットIDの最下位ビットを反転したユ
    ニットIDをもつ他の共有メモリモジュールを、二重化さ
    れるメモリペアとして指定したことを特徴とする計算機
    システム。
  3. 【請求項3】請求項1記載の計算機システムに於いて、 前記処理モジュールの接続ユニットは、前記共有メモリ
    モジュールの二重化構成の有無を指定する構成定義レジ
    スタを備え、前記中央処理ユニットからの書込指示を受
    けた際に該構成定義レジスタを参照して二重化書込みア
    クセスを実行することを特徴とする計算機システム。
  4. 【請求項4】請求項1記載の計算機システムに於いて、 前記構成定義レジスタの二重化構成をソフトウェアに基
    づき前記中央処理ユニットの指示で変更可能としたこと
    を特徴とする計算機システム。
  5. 【請求項5】請求項1記載の計算機システムに於いて、 前記処理モジュールの接続ユニットが、二重化構成が指
    定された共有メモリモジュールのペアに対する読出指示
    を前記中央処理ユニットから受けた際には、該中央処理
    ユニットの読出指示で発行されたユニットIDをもつ共有
    メモリモジュールの読出アクセスのみを実行することを
    特徴とする計算機システム。
  6. 【請求項6】請求項1記載の計算機システムに於いて、 前記処理モジュールの接続ユニットは、アクセス対象と
    なった共有メモリモジュールを示す相手先IDコード、発
    信元を示す発信元IDコード、アクセスの種類を示すオペ
    ランド、及びアクセスデータ容量で構成される起動転送
    コマンドを作成し、該起動転送コマンドを相手先共有メ
    モリモジュールのアクセスアドレスと共に前記システム
    バスに送信し、 前記共有メモリモジュールの接続ユニットは、前記シス
    テムバスを監視して前記起動転送コマンドの相手先IDコ
    ードと自己のユニットIDとの一致を判別した時に該起動
    転送コマンドの受信動作を行ってオペランドに基づくア
    クセスを実行することを特徴とする計算機システム。
  7. 【請求項7】請求項1記載の計算機システムに於いて、 前記モジュールの物理アドレスで直接アクセス可能な前
    記共有メモリ空間に加え、前記物理アドレスを越える拡
    張共有メモリ空間を前記共有メモリモジュールの増設で
    形成し、 前記処理モジュールの接続ユニットは、二重化構成の指
    定に対し二重化書込みを実行するハードウェアとして、 前記中央処理ユニットの物理アドレスにより前記共有メ
    モリ空間を直接アクセスするプログラムモードアドレス
    制御手段と; 前記共有メモリモジュールの選択情報、物理アドレス及
    びデータ転送長の指定に基づき、前記物理アドレスで直
    接アクセス可能な共有メモリ空間及び前記拡張共有メモ
    リ空間をアクセスするDMAモードアクセス制御手段と; を備えたことを特徴とする計算機システム。
  8. 【請求項8】請求項1記載の計算機システムにおいて、 前記共有メモリモジュールへのアクセス時に、何らかの
    異常が検出された場合には、異常の詳細を通知する終結
    コードと共に異常が発生した共有メモリモジュールのユ
    ニットIDを前記処理モジュールのソフトウェアに通知す
    ることを特徴とする計算機システム。
  9. 【請求項9】請求項8記載の計算機システムに於いて、 異常の詳細を通知する終結コードと共に異常が発生した
    共有メモリモジュールのユニットIDの最下位ビットのみ
    を前記処理モジュールのソフトウェアに通知することを
    特徴とする計算機システム。
  10. 【請求項10】請求項8記載の計算機システムに於い
    て、 前記処理モジュールのソフトウェアが二重化アクセスの
    異常終結を示す通知を受けた際には、前記接続ユニット
    に設けている構成定義レジスタの内容を変更による二重
    化解除、再書込みの指示、読出対象とする共有メモリモ
    ジュールの切換え等のリカバリ処理を行うことを特徴と
    する計算機システム。
  11. 【請求項11】請求項1記載の計算機システムに於い
    て、 前記計算機システムを、単一の処理モジュールと該処理
    モジュールの物理アドレスでアクセス可能な共有メモリ
    空間を割付けた複数の共有メモリユニットで構成したこ
    とを特徴とする計算機システム。
  12. 【請求項12】請求項1記載の計算機システムに於い
    て、 前記システムバスを複数設け、該システムバスに数に対
    応して前記処理モジュールの接続ユニット及び前記共有
    メモリモジュールの接続ユニットを複数設けたことを特
    徴とする計算機システム。
JP02248204A 1990-09-18 1990-09-18 計算機システム Expired - Fee Related JP3112280B2 (ja)

Priority Applications (7)

Application Number Priority Date Filing Date Title
JP02248204A JP3112280B2 (ja) 1990-09-18 1990-09-18 計算機システム
DE69129960T DE69129960T2 (de) 1990-09-18 1991-09-17 System zur Gestaltung eines geteilten Speichers
EP91308453A EP0476962B1 (en) 1990-09-18 1991-09-17 System for configuring a shared storage
EP97113654A EP0809185B1 (en) 1990-09-18 1991-09-17 A shared storage duplicating method
DE69131840T DE69131840T2 (de) 1990-09-18 1991-09-17 Verfahren zur Vervielfältigung eines geteilten Speichers
US08/426,186 US5963976A (en) 1990-09-18 1995-04-21 System for configuring a duplex shared storage
US08/954,594 US5890218A (en) 1990-09-18 1997-10-20 System for allocating and accessing shared storage using program mode and DMA mode

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP02248204A JP3112280B2 (ja) 1990-09-18 1990-09-18 計算機システム

Publications (2)

Publication Number Publication Date
JPH04125750A JPH04125750A (ja) 1992-04-27
JP3112280B2 true JP3112280B2 (ja) 2000-11-27

Family

ID=17174743

Family Applications (1)

Application Number Title Priority Date Filing Date
JP02248204A Expired - Fee Related JP3112280B2 (ja) 1990-09-18 1990-09-18 計算機システム

Country Status (1)

Country Link
JP (1) JP3112280B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20240046720A1 (en) * 2020-11-24 2024-02-08 Autonetworks Technologies, Ltd. Vehicle-mounted information processing apparatus and vehicle-mounted information processing method

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57162200A (en) * 1981-03-31 1982-10-05 Nec Corp Doubling system for memory device
JPS61133453A (ja) * 1984-11-30 1986-06-20 Nec Corp メモリ制御装置
JPH0625987B2 (ja) * 1985-10-31 1994-04-06 株式会社東芝 複合計算機システム

Also Published As

Publication number Publication date
JPH04125750A (ja) 1992-04-27

Similar Documents

Publication Publication Date Title
US5511224A (en) Configurable network using dual system busses with common protocol compatible for store-through and non-store-through cache memories
US5963976A (en) System for configuring a duplex shared storage
US5668943A (en) Virtual shared disks with application transparent recovery
US5495570A (en) Mirrored memory multi-processor system
KR100261378B1 (ko) 어댑터들이상이한호스트컴퓨터에존재하는어레이에대한주콘트롤러및보조콘트롤러로서작용하도록함으로써복수의저장어레이를공유하기위한시스템및방법
EP0514075A2 (en) Fault tolerant processing section with dynamically reconfigurable voting
US5809533A (en) Dual bus system with multiple processors having data coherency maintenance
JPH03232045A (ja) Dmaデータ転送のためのプロトコル
WO2003030006A9 (en) Controller data sharing using a modular dma architecture
US4646237A (en) Data handling system for handling data transfers between a cache memory and a main memory
JPH09146842A (ja) 記憶サブシステム
WO1992005490A1 (en) Exclusive control method for shared memory
JP2001043026A (ja) 系間情報通信システム
US6108755A (en) Asynchronous access system to a shared storage
JP2979771B2 (ja) 情報処理装置及びそのバス制御方法
JP3112280B2 (ja) 計算機システム
JP3246736B2 (ja) 計算機システム
JP3141948B2 (ja) 計算機システム
JPS59165287A (ja) 情報処理システム
JP2906197B2 (ja) 二重化バス装置
JP2001243209A (ja) 分散共有メモリシステム及び分散共有メモリシステム制御方法
JPS638500B2 (ja)
JP2909160B2 (ja) 複合計算機システム
JP2511542B2 (ja) 情報処理システム
JP3595131B2 (ja) プラント制御システム

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees