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

マルチプロセッサシステム

Info

Publication number
JP2001034587A
JP2001034587A JP11203754A JP20375499A JP2001034587A JP 2001034587 A JP2001034587 A JP 2001034587A JP 11203754 A JP11203754 A JP 11203754A JP 20375499 A JP20375499 A JP 20375499A JP 2001034587 A JP2001034587 A JP 2001034587A
Authority
JP
Japan
Prior art keywords
memory
failure
nodes
communication
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.)
Granted
Application number
JP11203754A
Other languages
English (en)
Other versions
JP3374910B2 (ja
Inventor
Tadashige Kadoi
忠茂 門井
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP20375499A priority Critical patent/JP3374910B2/ja
Publication of JP2001034587A publication Critical patent/JP2001034587A/ja
Application granted granted Critical
Publication of JP3374910B2 publication Critical patent/JP3374910B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Abstract

(57)【要約】 【課題】 メモリへのアクセスがノード固有メモリ空間
及びノード間通信用メモリ空間のいずれへのアクセスで
あるかを容易に判別するとともに、メモリへのアクセス
時に発生した障害がノード固有メモリ空間及びノード間
通信用メモリ空間のいずれで発生した障害であるかを容
易に、かつ迅速に判別する。 【解決手段】 メモリコントローラ116−1において
は、メモリ113−1へのアクセス時に、通信ドライバ
115−1にて発行されたトランザクションに通信空間
アクセスフラグがセットされていることを確認した場合
にノード間通信用メモリ空間へのアクセスであると判断
されるとともに、トランザクションが保持され、メモリ
113−1へのアクセス時に障害が発生した時に、保持
されたトランザクションに通信空間アクセスフラグがセ
ットされていることを確認した場合に、ノード間通信用
メモリ空間に障害が発生したと判別される。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、複数のプロセッサ
及びメモリからなる複数のノードを有するマルチプロセ
ッサシステムに関し、特に、複数のノードのそれぞれ
が、内部に設けられたメモリを用いて互いにノード間通
信を行うマルチプロセッサシステムに関する。
【0002】
【従来の技術】近年、CPU等のプロセッサが複数設け
られたマルチプロセッサシステムにおいては、所定の単
位でシステムが分割され、分割されたシステム(以下、
ノードと称する)のそれぞれが、独立したマルチプロセ
ッサシステムとして運用可能なように構成されている。
【0003】このようなマルチプロセッサシステムにお
いては、ノードのそれぞれが、システムバスに複数のプ
ロセッサ及びメモリが接続されており、複数のプロセッ
サのそれぞれがメモリを共有することにより、ノードの
それぞれが独立したクラスタシステムとしても運用可能
である。
【0004】更に、ノードのそれぞれの内部に設けられ
たメモリにおいては、その一部が他のノードとの間の通
信用として使用されるノード間通信用メモリ空間として
定義されており、このノード間通信用メモリ空間を用い
て、マルチプロセッサシステムにおける共通のプラット
フォーム内で、他のノードとの間で互いに通信が行われ
る。このような機能は、筐体内クラスタ機能と称され
る。
【0005】なお、ノードのそれぞれの内部に設けられ
たメモリにおいては、ノード間通信用メモリ空間と定義
された以外の部分が、同じノード内に設けられたプロセ
ッサが共有するためのノード固有メモリ空間と定義され
る。
【0006】筐体内クラスタ機能を有する一般的なマル
チプロセッサシステムにおいては、ノード間通信がプロ
トコルを用いて行われており、論理プロトコル層にはV
IA(Virtual Interconnect Architecture)等の通信
ドライバが用いられ、物理リンク層にEtherやFC
(ファイバーチャネル)等が用いられる。
【0007】なお、メモリにおけるノード間通信用メモ
リ空間は、上述した物理リンク層に相当するものであ
る。
【0008】
【発明が解決しようとする課題】従来、ノード間通信用
メモリ空間にアクセスする場合、ノード固有メモリ空間
にアクセスする場合と同様に、メモリの内部に設けられ
たアドレスデコード回路を用いてアドレスがそのままデ
コードされていた。
【0009】しかしながら、アドレスをそのままデコー
ドする場合、アドレスのデコードに多大な時間が消費さ
れたり、アドレスデコード回路の構成が複雑なものとな
り、ゲート量の増加やハードウェアのコストアップを招
いてしまうという問題点があった。
【0010】また、メモリへのアクセス時に障害が発生
した場合、ノード間通信用メモリ空間で発生した障害と
ノード固有メモリ空間で発生した障害とでプロセッサの
障害処理が異なるため、障害が発生したメモリ空間を特
定する必要があるが、プロセッサにおいては、ノード間
通信用メモリ空間で発生した障害とノード固有メモリ空
間で発生した障害との見え方が同じであるため、障害が
発生したメモリ空間のアドレスを直接判断する必要があ
り、これにより、障害処理が複雑なものになってしまう
という問題点があった。
【0011】また、メモリへのアクセス時に障害が発生
した場合、正常に動作しているノードに対して、障害が
発生したメモリが設けられたノードへのアクセスの抑止
や障害が発生したメモリが設けられたノードの切り離し
等を通知する必要があるが、障害が発生したメモリ空間
の判別が遅れると、正常なノードに障害が伝播される可
能性が高くなり、システムダウン等が発生してしまうと
いう問題点があった。
【0012】このため、メモリへのアクセス時に障害が
発生した場合に、この障害がノード固有メモリ空間にお
ける障害及びノード間通信用メモリ空間における障害の
いずれであるかを容易に判別することができるマルチプ
ロセッサシステムが望まれていた。
【0013】本発明は、上述したような従来の技術が有
する問題点に鑑みてなされたものであって、メモリへの
アクセスが、ノード固有メモリ空間へのアクセス及びノ
ード間通信用メモリ空間へのアクセスのいずれであるか
を容易に判別することができるマルチプロセッサシステ
ムを提供することを目的とする。
【0014】また、他の目的は、メモリへのアクセス時
に障害が発生した場合に、この障害がノード固有メモリ
空間における障害及びノード間通信用メモリ空間におけ
る障害のいずれであるかを容易に、かつ迅速に判別する
ことができるマルチプロセッサシステムを提供すること
にある。
【0015】
【課題を解決するための手段】上記目的を達成するため
に本発明は、複数のプロセッサと、該複数のプロセッサ
のそれぞれによってデータが記憶されるメモリとを具備
するセルからなる複数のノードと、該複数のノードのい
ずれかにて前記メモリに障害が発生した場合に該複数の
ノードのそれぞれに対して障害時に処理内容を通知する
サービスプロセッサとを有し、前記複数のノードのそれ
ぞれが、前記メモリにおけるメモリ空間の一部をノード
間通信用メモリ空間と設定し、前記メモリにおける前記
ノード間通信用メモリ空間にアクセスして互いにノード
間通信を行うマルチプロセッサシステムにおいて、前記
複数のノードのそれぞれは、前記ノード間通信用メモリ
空間へのアクセス時に、通信空間アクセスフラグをセッ
トしたトランザクションを発行する通信ドライバと、前
記メモリへのアクセス時に前記通信空間アクセスフラグ
を検出した場合に、前記メモリへのアクセスが前記ノー
ド間通信用メモリ空間へのアクセスであると判断するメ
モリアクセス制御部とを有することを特徴とする。
【0016】また、前記メモリアクセス制御部は、前記
通信ドライバにて発行されたトランザクションを保持す
るとともに、前記メモリへのアクセス時に発生した障害
を検出し、保持された前記トランザクションに前記通信
空間アクセスフラグがセットされていることを検出した
場合に、前記メモリへのアクセス時に発生した障害が前
記ノード間通信用メモリ空間における障害であると判断
することを特徴とする。
【0017】また、前記メモリアクセス制御部は、前記
ノード間通信用メモリ空間において障害が発生したと判
断した場合に、前記サービスプロセッサが前記複数のノ
ードのそれぞれに対して障害時の処理内容を通知するた
めの割り込み信号を生成して前記サービスプロセッサに
対して出力し、前記サービスプロセッサは、前記割り込
み信号が入力されると、該割り込み信号により障害の情
報を採取し、該障害の情報に基づく処理内容を、前記複
数のノードのそれぞれの内部に設けられた複数のプロセ
ッサに対して通知することを特徴とする。
【0018】また、前記サービスプロセッサは、前記複
数のノードのそれぞれの内部に設けられた複数のプロセ
ッサに対して、ブロードキャスト割り込みを発生して前
記処理内容を通知することを特徴とする。
【0019】また、前記複数のノードのそれぞれは、前
記セルを複数個有し、該複数のセルのうち、いずれかの
セルを分離させることを特徴とする。
【0020】また、前記メモリアクセス制御部は、前記
通信ドライバにて発行されたトランザクションを保持す
るトランザクション保持回路と、前記メモリへのアクセ
ス時に発生する障害の検出を行うメモリパリティチェッ
ク回路と、前記トランザクション保持回路に保持された
トランザクションに前記通信空間アクセスフラグがセッ
トされているか検出するとともに、前記メモリパリティ
チェック回路にて障害が検出された場合に、前記メモリ
に発生した障害が前記ノード間通信用メモリ空間におけ
る障害であると判断する障害判断部と、前記障害判断部
において前記ノード間通信用メモリ空間に障害が発生し
たと判断された場合に、前記割り込み信号を生成して前
記サービスプロセッサに対して出力するメモリ障害割り
込みラッチ回路とを有することを特徴とする。
【0021】また、複数のプロセッサと、該複数のプロ
セッサのそれぞれによってデータが記憶されるメモリと
を具備するセルからなる複数のノードと、該複数のノー
ドのいずれかにて前記メモリに障害が発生した場合に該
複数のノードのそれぞれに対して障害時に処理内容を通
知するサービスプロセッサとを有し、前記複数のノード
のそれぞれが、前記メモリにおけるメモリ空間の一部を
ノード間通信用メモリ空間と設定し、該ノード間通信用
メモリ空間にアクセスして互いにノード間通信を行うマ
ルチプロセッサシステムにおいて、前記複数のノードの
それぞれは、前記メモリにおけるノード間通信用メモリ
空間のアドレスが予め固定されており、前記メモリへの
アクセス時に前記メモリにおけるアドレスを特定し、該
アドレスに基づいて、前記メモリへのアクセスが前記ノ
ード間通信用メモリ空間へのアクセスであるかを判別す
るメモリアクセス制御部を有することを特徴とする。
【0022】また、前記メモリアクセス制御部は、前記
メモリへのアクセス時に発生した障害を検出するととも
に、前記メモリにおける障害が発生した場所のアドレス
を特定し、該アドレスに基づいて、前記メモリへのアク
セス時に発生した障害が前記ノード間通信用メモリ空間
の障害であるかを判別することを特徴とする。
【0023】また、前記メモリアクセス制御部は、前記
ノード間通信用メモリ空間において障害が発生したと判
断した場合に、前記サービスプロセッサが前記複数のノ
ードのそれぞれに対して障害時の処理内容を通知するた
めの割り込み信号を生成して前記サービスプロセッサに
対して出力し、前記サービスプロセッサは、前記割り込
み信号が入力されると、該割り込み信号により障害の情
報を採取し、該障害の情報に基づく処理内容を、前記複
数のノードのそれぞれの内部に設けられた複数のプロセ
ッサに対して通知することを特徴とする。
【0024】また、前記サービスプロセッサは、前記複
数のノードのそれぞれの内部に設けられた複数のプロセ
ッサに対して、ブロードキャスト割り込みを発生して前
記処理内容を通知することを特徴とする。
【0025】また、前記複数のノードのそれぞれは、前
記セルを複数個有し、該複数のセルのうち、いずれかの
セルを分離させることを特徴とする。
【0026】(作用)上記のように構成された本発明にお
いては、ノードの内部に設けられたメモリにおけるノー
ド間通信用メモリ空間へのアクセス時に、通信ドライバ
において、通信空間アクセスフラグがセットされたトラ
ンザクションが発行され、メモリアクセス制御部におい
て、通信空間アクセスフラグが検出された場合に、ノー
ド間通信用メモリ空間へのアクセスであると判断され
る。
【0027】また、メモリアクセス制御部においては、
通信ドライバにて発行されたトランザクションが保持さ
れるとともに、メモリへのアクセス時に発生した障害が
検出され、保持されたトランザクションに通信空間アク
セスフラグが検出された場合に、メモリへのアクセス時
に発生した障害がノード間通信用メモリ空間の障害であ
ると判断される。
【0028】
【発明の実施の形態】以下に、本発明の実施の形態につ
いて図面を参照して説明する。
【0029】図1は、本発明のマルチプロセッサシステ
ムの実施の一形態を示す図である。図1に示すように本
形態においては、複数のセル11−1〜11−nのそれ
ぞれからなるノード(Node)1−1〜1−nと、ノ
ード1−1〜1−nのそれぞれの間で行われる通信用の
通信路を設定制御するクロスバースイッチ12と、ノー
ド1−1〜1−nのいずれかにて障害が発生した場合に
ノード1−1〜1−nのそれぞれに対して処理内容を通
知するサービスプロセッサ(診断プロセッサ)13とか
ら構成されており、ノード1−1〜1−nのそれぞれ
が、内部で通信を行うクラスタ機能を有するとともに、
ノード1−1〜1−nのそれぞれの間で互いに通信を行
う筐体内クラスタ機能を有している。
【0030】ノード1−1においては、プロセッサ(P
roc)111−1,112−1と、ノード間で行われ
る通信用のメモリ空間(以下、ノード間通信用メモリ空
間と称する)及びノード内で行われる通信用のメモリ空
間(以下、ノード固有メモリ空間と称する)を具備し、
これらのメモリ空間にてデータのリード及びライトが行
われるメモリ(M)113−1と、メモリ113−1に
おけるノード間通信用メモリ空間へのアクセス時に通信
空間アクセスフラグがセットされたトランザクションを
発行する通信ドライバ(D)115−1と、通信ドライ
バ115−1にて発行された通信空間アクセスフラグを
含むトランザクションを保持し、メモリ113−1への
アクセスが行われる場合に、この通信空間アクセスフラ
グに基づいてメモリ113−1へのアクセスがノード間
通信用メモリ空間へのアクセスであるかを判別するとと
もに、メモリ113−1へのアクセス時に障害が発生し
た場合に、この通信空間アクセスフラグに基づいてメモ
リ113−1へのアクセス時に発生した障害がノード間
通信用メモリ空間における障害であるかを判別するメモ
リアクセス制御部であるメモリコントローラ116−1
と、データの入出力制御を行うI/O(Input Output)
コントローラ114−1とがシステムバス117−1を
介して接続されており、メモリコントローラ116−1
においては、メモリ113−1へのアクセス時に発生し
た障害がノード間通信用メモリ空間における障害である
と判断された場合、サービスプロセッサ13における障
害時の処理内容を決定するための割り込み信号が生成さ
れてサービスプロセッサ13に対して出力される。
【0031】また、ノード1−2〜1−nのそれぞれに
おいては、プロセッサ111−2〜111−n、プロセ
ッサ112−2〜112−nと、メモリ113−2〜1
13−nと、メモリコントローラ116−2〜116−
nと、I/Oコントローラ114−2〜114−nと、
通信ドライバ115−2〜115−nとがシステムバス
117−2〜117−nを介してそれぞれ接続されてお
り、ノード1−2〜1−nのそれぞれに設けられた各部
は、ノード1−1内に設けられた各部と同一機能を有し
ている。
【0032】ノード1−1〜1−nのそれぞれにおいて
は、メモリ113−1〜113−nにおけるノード間通
信用メモリ空間を用いて、通信ドライバ115−1〜1
15−nのそれぞれを介してノード間で互いに通信が行
われ、ノード固有メモリ空間を用いて、内部における通
信が行われる。
【0033】サービスプロセッサ13は、ノード1−1
〜1−nのそれぞれの内部に設けられたプロセッサ11
1−1〜111−n,112−1〜112−n及びメモ
リコントローラ116−1〜116−nと接続されてい
る。サービスプロセッサ13とプロセッサ111−1〜
111−n,112−1〜112−n及びメモリコント
ローラ116−1〜116−nとの接続方法としては、
I/Oコントローラ114−1〜114−nまたは通信
ドライバ115−1〜115−nを介して互いに接続さ
れる方法や、互いに直接接続される方法があるが、本形
態においては、どちらの接続方法で構成してもよい。
【0034】なお、サービスプロセッサ13は、通常、
システム全体のマネージメントを行うものであり、その
機能の一部として、ノード1−1〜1−nのそれぞれに
対する障害時の処理内容の通知を行っている。
【0035】ノード1−1〜1−nのそれぞれにおいて
は、説明を容易にするために2つのプロセッサが設けら
れた構成にしているが、実際には、更に多くのプロセッ
サが設けられたノードも存在しているものとする。
【0036】通信ドライバ115−1〜115−nのそ
れぞれにおいては、メモリ113−1〜113−nの全
てにおけるノード間通信用メモリ空間のアドレスが認識
されている。このようなアドレスを通信ドライバ115
−1〜115−nのそれぞれに認識させる方法として
は、サービスプロセッサ13において、ノード1−1〜
1−nのそれぞれの組み合わせを、システムを立ち上げ
る前に通信ドライバ115−1〜115−nのそれぞれ
に設定しておく方法が挙げられる。
【0037】メモリコントローラ116−1〜116−
nのそれぞれにおいては、メモリ113−1〜113−
nのそれぞれにおけるメモリ空間のアドレスをデコード
するアドレスデコード回路(不図示)と、メモリ113
−1〜113−nのそれぞれにて障害が発生した場合
に、サービスプロセッサ13にて障害処理を行わせるた
めの割り込み信号を生成して出力する割り込み信号生成
回路(不図示)とが設けられている。
【0038】本形態においては、ノード1−1〜1−n
のそれぞれが1つのセルで構成されているが、例えば、
ノード1−1〜1−nのそれぞれを複数のセルで構成
し、セルの一部を筐体内クラスタから分離させることも
できる。これにより、ノード1−1〜1−nのそれぞれ
を独立したクラスタシステムとして運用させることが可
能になる。
【0039】図2は、図1に示したノード1−1〜1−
nのそれぞれの内部に設けられたメモリ113−1〜1
13−nにおけるメモリ空間割り当てイメージを示す図
である。
【0040】図2においては、メモリ113−1〜11
3−nのそれぞれにおけるノード固有メモリ空間が21
−1〜21−nであり、メモリ113−1〜113−n
のそれぞれにおけるノード通信用メモリ空間が22−1
〜22−nである。
【0041】また、図2における論理アドレス空間イメ
ージは、ノード1−1〜1−nの全ノードにおけるメモ
リ全体のメモリ空間割り当てイメージを示している。
【0042】図2に示すように、メモリ113−1〜1
13−nのそれぞれにおけるノード間通信用メモリ空間
は、ノード1−1〜1−nのそれぞれがノード固有メモ
リ空間として使用しない領域に割り当てられる。
【0043】以下に、上記のように構成されたマルチプ
ロセッサシステムにおけるノード間通信動作について説
明する。なお、ここでは、ノード1−1,1−2の間で
互いにノード間通信を行うものとして、ノード1−1内
に設けられたプロセッサ111−1によって、ノード1
−2内に設けられたメモリ113−2へのアクセスが行
われる場合のノード間通信動作について説明する。
【0044】ノード1−1内に設けられたプロセッサ1
11−1から、ノード1−2内に設けられたメモリ11
3−2に対するアクセスが行われると、クロスバースイ
ッチ12が切り替わり、ノード1−1内に設けられた通
信ドライバ115−1とノード1−2内に設けられた通
信ドライバ115−2とが接続されて通信路が設定され
る。
【0045】通信ドライバ115−1においては、メモ
リ113−1〜113−nの全てのメモリにおけるノー
ド間通信用メモリ空間のアドレスが認識されているた
め、ノード間通信を行う通信路が設定されると、メモリ
113−2におけるノード間通信用メモリ空間のアドレ
スが指定され、指定されたアドレスが通信ドライバ11
5−2に対して転送される。
【0046】メモリ113−2におけるノード間通信用
メモリ空間のアドレスが通信ドライバ115−1から通
信ドライバ115−2に転送されると、通信ドライバ1
15−2において、通信空間アクセスフラグがセットさ
れたトランザクションが発行される。
【0047】図3は、通信空間アクセスフラグがセット
されたトランザクションのイメージの一例を示す図であ
る。
【0048】図3に示すように、ノードのそれぞれの間
で通信が行われる場合、通信ドライバ115−2におい
て、ビットの一部に通信空間アクセスフラグがセットさ
れたトランザクションが発行される。なお、通信ドライ
バ115−2にて発行されるトランザクションには、通
信ドライバ115−1から転送されたアドレス情報が含
まれる。
【0049】次に、メモリコントローラ116−2の内
部に設けられた割り込み信号生成回路においては、通信
ドライバ115−2にて発行されたトランザクションが
保持され、保持されたトランザクションに通信空間アク
セスフラグがセットされているかどうか確認される。
【0050】ここで、メモリコントローラ116−2の
内部に設けられた割り込み信号生成回路においては、ト
ランザクションに通信空間アクセスフラグがセットされ
ていると確認された場合、メモリ113−2に対するア
クセスがノード間通信用メモリ空間へのアクセスである
と判断される。
【0051】次に、メモリコントローラ116−2の内
部に設けられたアドレスデコード回路において、通信ド
ライバ115−1から通信ドライバ115−2に転送さ
れたメモリ113−2におけるノード間通信用メモリ空
間のアドレスがデコードされる。
【0052】その後、メモリ113−2において、メモ
リコントローラ116−2内に設けられたアドレスデコ
ード回路にてデコードされたアドレスに、ノード1−1
内に設けられたプロセッサ111−1によってデータの
リード及びライトが行われる。
【0053】なお、ノード1−1〜1−nのうち、どの
ノードがノード間通信を行う場合も、上記同様のノード
間通信動作が行われるものとする。
【0054】上述したように、通信ドライバにおいて
は、メモリにおけるノード間通信用メモリ空間へのアク
セス時に通信空間アクセスフラグがセットされたトラン
ザクションが発行され、メモリコントローラにおいて
は、通信ドライバにて発行されたトランザクションに通
信空間アクセスフラグがセットされているか確認され
る。
【0055】このため、メモリへのアクセスが行われる
場合、メモリコントローラにおいては、トランザクショ
ンに通信空間アクセスフラグがセットされているかを確
認するのみで、メモリへのアクセスが、ノード固有メモ
リ空間へのアクセス及びノード間通信用メモリ空間への
アクセスのいずれであるかが判別されることになる。
【0056】また、メモリコントローラにおいては、通
信ドライバにて発行されたトランザクションが保持され
ており、これにより、メモリへのアクセス時に障害が発
生した場合においても、メモリコントローラにて保持さ
れたトランザクションに通信空間アクセスフラグがセッ
トされているかを確認することのみで、メモリへのアク
セス時に発生した障害が、ノード固有メモリ空間におけ
る障害及びノード間通信用メモリ空間における障害のい
ずれであるかが判別される。
【0057】また、メモリコントローラの内部に設けら
れたアドレスデコード回路においては、ノード間通信用
メモリ空間におけるアドレスをデコードする場合に、メ
モリに対するアクセスがノード間通信用メモリ空間への
アクセスであると判断された後に、アドレスをデコード
すれば良いため、ハードウェア量を削減することが可能
になるとともに、ゲート量の削減及びアドレスデコード
時間の短縮によりトランザクションのルーティング処理
を高速化することが可能になる。
【0058】以下に、ノード内に設けられたメモリへの
アクセス時に障害が発生した場合の障害処理動作につい
て詳細に説明する。
【0059】図4は、図1に示したノード1−1内に設
けられたメモリ113−1へのアクセス時に障害が発生
した場合の障害処理動作を説明するための図である。こ
こでは、ノード1−1内に設けられたメモリ113−1
へのアクセス時にパリティエラー等の障害が発生した場
合の障害処理動作について説明するが、ノード1−2〜
1−nのいずれかの内部に設けられたメモリにパリティ
エラー等の障害が発生した場合にも同様の障害処理動作
が行われるものとする。
【0060】なお、図4に示したマルチプロセッサシス
テムの構成は、図1に示したマルチプロセッサシステム
の構成と同一構成である。
【0061】メモリ113−1へのアクセス時にパリテ
ィエラー等の障害が発生すると、メモリコントローラ1
16−1の内部に設けられた割り込み信号生成回路にお
いて、この障害が検出される。
【0062】メモリコントローラ116−1の内部に設
けられた割り込み信号生成回路においては、メモリ11
3−1へのアクセスがノード間通信用メモリ空間へのア
クセスである場合、通信ドライバ115−1にて発行さ
れた通信空間アクセスフラグを含むトランザクションが
保持されている。
【0063】このため、メモリコントローラ116−1
の内部に設けられた割り込み信号生成回路においては、
メモリ113−1における障害を検出すると、通信空間
アクセスフラグがセットされているか検出され、通信空
間アクセスフラグが検出された場合に、メモリ113−
1におけるノード間通信用メモリ空間に障害が発生した
と判断される。
【0064】メモリコントローラ116−1の内部に設
けられた割り込み信号生成回路においては、メモリ11
3−1におけるノード間通信用メモリ空間に障害が発生
したと判断されると、サービスプロセッサ13に障害処
理を行わせるための割り込み信号が生成され、生成され
た割り込み信号がサービスプロセッサ13に対して出力
される。
【0065】サービスプロセッサ13においては、メモ
リコントローラ116−1から出力された割り込み信号
が入力されると、入力された割り込み信号に基づいて障
害情報が採取され、ノード1−1内に設けられたプロセ
ッサ111−1,112−1に対して障害個所の切り離
し等の障害処理が通知される。
【0066】なお、サービスプロセッサ13において
は、メモリ113−1にて発生した障害が重障害である
場合、ノード1−1以外のノードの内部に設けられたプ
ロセッサに対し、ノード1−1へのアクセスの抑止や、
ノード1−1の切り離し等が通知される。
【0067】以下に、図1に示したメモリコントローラ
116−1〜116−nのそれぞれの内部に設けられた
割り込み信号生成回路について詳細に説明する。
【0068】図5は、図1に示したメモリコントローラ
116−1の内部に設けられた割り込み信号生成回路の
一構成例を示す図である。なお、メモリコントローラ1
16−2〜116−nのそれぞれの内部に設けられた割
り込み信号生成回路も同様の構成及び動作が行われるも
のとする。
【0069】本構成例は図5に示すように、通信ドライ
バ115−1にて発行されたトランザクションを保持す
るトランザクション保持回路51と、パリティエラー等
の障害の検出を行うメモリパリティチェック回路52
と、トランザクション保持回路51に保持されたトラン
ザクションにセットされた通信空間アクセスフラグ及び
メモリパリティチェック回路52における障害の検出結
果に基づいてノード間通信用メモリ空間における障害が
発生したか判別する障害判断部53と、障害判断部53
にてノード間通信用メモリ空間に障害が発生したと判断
された場合に割り込み信号を生成してサービスプロセッ
サ13に対して出力するメモリ障害割り込みラッチ回路
54と、障害判断部53にてノード間通信用メモリ空間
に障害が発生したと判断された場合に、プロセッサ11
1−1,112−1及びサービスプロセッサ13のう
ち、メモリ113−1におけるノード固有メモリ空間を
用いてデータのリード及びライトが行われているプロセ
ッサに対してノード固有メモリ空間におけるデータのリ
ード及びライトが可能である旨を通知するための信号を
生成して出力する障害ステータスレジスタ55とから構
成されている。
【0070】以下に、上記のように構成された割り込み
信号生成回路の動作について説明する。ここでは、メモ
リ113−1へのアクセス時にパリティエラーが発生し
たものとして、割り込み信号生成回路の動作について説
明する。
【0071】トランザクション保持回路51において
は、メモリ113−1へのアクセスがノード間通信用メ
モリ空間へのアクセスである場合、通信ドライバ115
−1にて発行された通信空間アクセスフラグを含むトラ
ンザクションが保持される。
【0072】メモリ113−1へのアクセス時にパリテ
ィエラーが発生すると、メモリパリティチェック回路5
2において、メモリ113−1におけるパリティエラー
が検出され、該検出結果が障害判断部53に通知され
る。
【0073】メモリパリティチェック回路52からパリ
ティエラーの検出が通知されると、障害判断部53にお
いては、トランザクション保持回路51に保持されたト
ランザクションに通信空間アクセスフラグがセットされ
ているかが検出される。
【0074】障害判断部53においては、トランザクシ
ョン保持回路51にて保持されたトランザクションに通
信空間アクセスフラグのビットがセットされていること
が検出された場合、メモリ113−1へのアクセス時の
障害がノード間通信用メモリ空間の障害であると判断さ
れ、該判断結果がメモリ障害割り込みラッチ回路54及
び障害ステータスレジスタ55に対して通知される。
【0075】メモリ障害割り込みラッチ回路54におい
ては、障害判断部53からメモリ113−1へのアクセ
ス時に発生した障害がノード間通信用メモリ空間の障害
であると通知されると、割り込み信号が生成され、生成
された割り込み信号がサービスプロセッサ13に対して
出力される。
【0076】また、障害ステータスレジスタ55におい
ては、障害判断部53からメモリ113−1へのアクセ
ス時に発生した障害がノード間通信用メモリ空間の障害
であると通知されると、プロセッサ111−1,112
−1及びサービスプロセッサ13のうち、ノード固有メ
モリ空間におけるデータのリード及びライトが行われて
いるプロセッサに対してメモリ113−1におけるノー
ド固有メモリ空間を用いてデータのリード及びライトが
可能である旨を通知するための信号が生成されて出力さ
れる。
【0077】一方、障害判断部53において通信空間ア
クセスフラグのビットがセットされていないと確認され
た場合、プロセッサ111−1,111−2において
は、ノード固有メモリ空間における障害として処理が行
われ、特に、2ビットエラーであればシステムダウン等
の処理が行われる。
【0078】以下に、ノード間通信を行っているノード
内に設けられたメモリにおけるノード間通信用メモリ空
間へのアクセス時に障害が発生した場合に、サービスプ
ロセッサ13における障害処理としてブロードキャスト
を行う場合の障害処理動作について説明する。
【0079】図6は、図1に示したノード1−1内に設
けられたメモリ113−1におけるノード間通信用メモ
リ空間へのアクセス時に障害が発生した場合に、サービ
スプロセッサ13における障害処理としてブロードキャ
ストを行う場合の障害処理動作を説明するための図であ
る。
【0080】ここでは、メモリ113−1におけるノー
ド間通信用メモリ空間へのアクセス時に障害が発生した
ことにより、メモリコントローラ116−1にて割り込
み信号が生成され、メモリコントローラ116−1にて
生成された割り込み信号がサービスプロセッサ13に入
力されたものとして、その後の障害処理動作について説
明する。
【0081】なお、ノード1−2〜1−nのいずれかに
設けられたメモリにおけるノード間通信用メモリ空間へ
のアクセス時に障害が発生した場合にも同様の障害処理
動作が行われるものとする。
【0082】また、図6に示したマルチプロセッサシス
テムは、図1に示したマルチプロセッサシステムの構成
と同一構成である。
【0083】図6に示すように、サービスプロセッサ1
3においては、割り込み信号が入力されると、ノード1
−1以外の全てのノードに対してブロードキャストが行
われ、障害が発生したメモリ113−1におけるノード
間通信用メモリ空間への以後のアクセスが迅速に抑止さ
れる。
【0084】これにより、メモリ113−1におけるノ
ード間通信用メモリ空間にて発生した障害が、ノード1
−1から他のノードへ伝播されることが最小限に抑止さ
れる。
【0085】(他の実施の形態)以下に、他の実施の形
態について図1を参照して説明する。
【0086】本形態においては、ノード1−1〜1−n
のそれぞれが、メモリ113−1〜113−nにおける
ノード間通信用メモリ空間のアドレスを予め固定した状
態でノード間で互いに通信が行われる。
【0087】本形態においては、例えば、ノード1−1
に設けられたメモリ113−1へのアクセス時に障害が
発生した場合、メモリコントローラ116−1内に設け
られた割り込み信号生成回路においては、メモリ113
−1における障害が発生した場所のアドレスが特定さ
れ、特定されたアドレスに基づいて、メモリ113−1
に発生した障害がノード間通信用メモリ空間に発生した
障害であるか判別される。
【0088】なお、本形態においては、メモリ113−
1に発生した障害がノード間通信用メモリ空間における
障害であると判断された後の障害処理動作は、図1〜図
6を用いて説明した実施の形態と同様であるため、詳細
な説明は割愛する。
【0089】上述したように本形態においては、図1〜
図6を用いて説明した実施の形態に比較して、通信ドラ
イバにおいて通信空間アクセスフラグがセットされたト
ランザクションを発行させることなく、障害を発生した
メモリ空間が、ノード固有メモリ空間及びノード間通信
用メモリ空間のいずれであるか判別されるという利点を
有しているが、一方では、障害処理時の処理時間が長く
なってしまうという欠点を有している。
【0090】
【発明の効果】以上説明したように本発明においては、
ノードの内部に設けられたメモリにおけるノード間通信
用メモリ空間へのアクセス時に、通信ドライバにおい
て、通信空間アクセスフラグがセットされたトランザク
ションが発行され、メモリアクセス制御部において、通
信空間アクセスフラグが検出された場合にノード間通信
用メモリ空間へのアクセスであると判断される。
【0091】このため、メモリへのアクセスがノード間
通信用メモリ空間へのアクセス及びノード固有メモリ空
間へのアクセスのいずれであるかを容易に判別すること
ができ、これにより、アドレスデコード回路のハードウ
ェア量の低減を図ることができるとともに、ゲート量の
削減やデコード時間の短縮が可能となり、トランザクシ
ョンのルーティング処理の高速化を図ることができる。
【0092】また、メモリアクセス制御部においては、
通信ドライバにて発行されたトランザクションが保持さ
れるとともに、メモリへのアクセス時に発生した障害が
検出され、保持されたトランザクションに通信空間アク
セスフラグがセットされていることが検出された場合
に、メモリへのアクセス時に発生した障害がノード間通
信用メモリ空間の障害であると判断される。
【0093】このため、メモリへのアクセス時に発生し
た障害がノード固有メモリ空間及びノード間通信用メモ
リ空間のいずれにおいて発生した障害であるかを容易
に、かつ迅速に判別することができ、これにより、ソフ
トウェアによる障害処理のオーバーヘッドを軽減するこ
とができる。
【0094】また、サービスプロセッサにおいては、障
害発生時の処理内容が全てのノードに対してブロードキ
ャストして通知するように構成されているため、障害が
発生したノードへのアクセスの抑止や、障害が発生した
ノードの切り離し等が迅速に通知され、これにより、正
常なノードへの障害の伝播を未然に防止することができ
る。
【図面の簡単な説明】
【図1】本発明のマルチプロセッサシステムの実施の一
形態を示す図である。
【図2】図1に示したメモリのそれぞれのメモリ空間割
り当てイメージを示す図である。
【図3】通信空間アクセスフラグがセットされたトラン
ザクションのイメージの一例を示す図である。
【図4】図1に示したメモリにおけるノード間通信用メ
モリ空間へのアクセス時に障害が発生した場合の障害処
理動作を説明するための図である。
【図5】図1に示したメモリコントローラのそれぞれの
内部に設けられた割り込み信号生成回路の一構成例を示
す図である。
【図6】図1に示したメモリにおけるノード間通信用メ
モリ空間へのアクセス時に障害が発生した場合の、他の
障害処理動作を説明するための図である。
【符号の説明】
1−1〜1−n ノード 11−1〜11−n セル 12 クロスバースイッチ 13 サービスプロセッサ 111−1〜111−n プロセッサ 112−1〜112−n プロセッサ 113−1〜113−n メモリ 114−1〜114−n I/Oコントローラ 115−1〜115−n 通信ドライバ 116−1〜116−n メモリコントローラ 117−1〜117−n システムバス 51 トランザクション保持回路 52 メモリパリティチェック回路 53 障害判断部 54 メモリ障害割り込みラッチ回路 55 障害ステータスレジスタ

Claims (11)

    【特許請求の範囲】
  1. 【請求項1】 複数のプロセッサと、該複数のプロセッ
    サのそれぞれによってデータが記憶されるメモリとを具
    備するセルからなる複数のノードと、該複数のノードの
    いずれかにて前記メモリに障害が発生した場合に該複数
    のノードのそれぞれに対して障害時に処理内容を通知す
    るサービスプロセッサとを有し、前記複数のノードのそ
    れぞれが、前記メモリにおけるメモリ空間の一部をノー
    ド間通信用メモリ空間と設定し、前記メモリにおける前
    記ノード間通信用メモリ空間にアクセスして互いにノー
    ド間通信を行うマルチプロセッサシステムにおいて、 前記複数のノードのそれぞれは、 前記ノード間通信用メモリ空間へのアクセス時に、通信
    空間アクセスフラグをセットしたトランザクションを発
    行する通信ドライバと、 前記メモリへのアクセス時に、前記通信空間アクセスフ
    ラグを検出した場合に、前記メモリへのアクセスが前記
    ノード間通信用メモリ空間へのアクセスであると判断す
    るメモリアクセス制御部とを有することを特徴とするマ
    ルチプロセッサシステム。
  2. 【請求項2】 請求項1に記載のマルチプロセッサシス
    テムにおいて、 前記メモリアクセス制御部は、前記通信ドライバにて発
    行されたトランザクションを保持するとともに、前記メ
    モリへのアクセス時に発生した障害を検出し、保持され
    た前記トランザクションに前記通信空間アクセスフラグ
    がセットされていることを検出した場合に、前記メモリ
    へのアクセス時に発生した障害が前記ノード間通信用メ
    モリ空間における障害であると判断することを特徴とす
    るマルチプロセッサシステム。
  3. 【請求項3】 請求項2に記載のマルチプロセッサシス
    テムにおいて、 前記メモリアクセス制御部は、前記ノード間通信用メモ
    リ空間において障害が発生したと判断した場合に、前記
    サービスプロセッサが前記複数のノードのそれぞれに対
    して障害時の処理内容を通知するための割り込み信号を
    生成して前記サービスプロセッサに対して出力し、 前記サービスプロセッサは、前記割り込み信号が入力さ
    れると、該割り込み信号により障害の情報を採取し、該
    障害の情報に基づく処理内容を、前記複数のノードのそ
    れぞれの内部に設けられた複数のプロセッサに対して通
    知することを特徴とするマルチプロセッサシステム。
  4. 【請求項4】 請求項3に記載のマルチプロセッサシス
    テムにおいて、 前記サービスプロセッサは、前記複数のノードのそれぞ
    れの内部に設けられた複数のプロセッサに対して、ブロ
    ードキャスト割り込みを発生して前記処理内容を通知す
    ることを特徴とするマルチプロセッサシステム。
  5. 【請求項5】 請求項1乃至4のいずれか1項に記載の
    マルチプロセッサシステムにおいて、 前記複数のノードのそれぞれは、前記セルを複数個有
    し、該複数のセルのうち、いずれかのセルを分離させる
    ことを特徴とするマルチプロセッサシステム。
  6. 【請求項6】 請求項3乃至5のいずれか1項に記載の
    マルチプロセッサシステムにおいて、 前記メモリアクセス制御部は、 前記通信ドライバにて発行されたトランザクションを保
    持するトランザクション保持回路と、 前記メモリへのアクセス時に発生する障害の検出を行う
    メモリパリティチェック回路と、 前記トランザクション保持回路に保持されたトランザク
    ションに前記通信空間アクセスフラグがセットされてい
    るか検出するとともに、前記メモリパリティチェック回
    路にて障害が検出された場合に、前記メモリに発生した
    障害が前記ノード間通信用メモリ空間における障害であ
    ると判断する障害判断部と、 前記障害判断部において前記ノード間通信用メモリ空間
    に障害が発生したと判断された場合に、前記割り込み信
    号を生成して前記サービスプロセッサに対して出力する
    メモリ障害割り込みラッチ回路とを有することを特徴と
    するマルチプロセッサシステム。
  7. 【請求項7】 複数のプロセッサと、該複数のプロセッ
    サのそれぞれによってデータが記憶されるメモリとを具
    備するセルからなる複数のノードと、該複数のノードの
    いずれかにて前記メモリに障害が発生した場合に該複数
    のノードのそれぞれに対して障害時に処理内容を通知す
    るサービスプロセッサとを有し、前記複数のノードのそ
    れぞれが、前記メモリにおけるメモリ空間の一部をノー
    ド間通信用メモリ空間と設定し、該ノード間通信用メモ
    リ空間にアクセスして互いにノード間通信を行うマルチ
    プロセッサシステムにおいて、 前記複数のノードのそれぞれは、 前記メモリにおけるノード間通信用メモリ空間のアドレ
    スが予め固定されており、 前記メモリへのアクセス時に前記メモリにおけるアドレ
    スを特定し、該アドレスに基づいて、前記メモリへのア
    クセスが前記ノード間通信用メモリ空間へのアクセスで
    あるかを判別するメモリアクセス制御部を有することを
    特徴とするマルチプロセッサシステム。
  8. 【請求項8】 請求項7に記載のマルチプロセッサシス
    テムにおいて、 前記メモリアクセス制御部は、前記メモリへのアクセス
    時に発生した障害を検出するとともに、前記メモリにお
    ける障害が発生した場所のアドレスを特定し、該アドレ
    スに基づいて、前記メモリへのアクセス時に発生した障
    害が前記ノード間通信用メモリ空間の障害であるかを判
    別することを特徴とするマルチプロセッサシステム。
  9. 【請求項9】 請求項8に記載のマルチプロセッサシス
    テムにおいて、 前記メモリアクセス制御部は、前記ノード間通信用メモ
    リ空間において障害が発生したと判断した場合に、前記
    サービスプロセッサが前記複数のノードのそれぞれに対
    して障害時の処理内容を通知するための割り込み信号を
    生成して前記サービスプロセッサに対して出力し、 前記サービスプロセッサは、前記割り込み信号が入力さ
    れると、該割り込み信号により障害の情報を採取し、該
    障害の情報に基づく処理内容を、前記複数のノードのそ
    れぞれの内部に設けられた複数のプロセッサに対して通
    知することを特徴とするマルチプロセッサシステム。
  10. 【請求項10】 請求項9に記載のマルチプロセッサシ
    ステムにおいて、 前記サービスプロセッサは、前記複数のノードのそれぞ
    れの内部に設けられた複数のプロセッサに対して、ブロ
    ードキャスト割り込みを発生して前記処理内容を通知す
    ることを特徴とするマルチプロセッサシステム。
  11. 【請求項11】 請求項7乃至10のいずれか1項に記
    載のマルチプロセッサシステムにおいて、 前記複数のノードのそれぞれは、前記セルを複数個有
    し、該複数のセルのうち、いずれかのセルを分離させる
    ことを特徴とするマルチプロセッサシステム。
JP20375499A 1999-07-16 1999-07-16 マルチプロセッサシステム Expired - Fee Related JP3374910B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP20375499A JP3374910B2 (ja) 1999-07-16 1999-07-16 マルチプロセッサシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP20375499A JP3374910B2 (ja) 1999-07-16 1999-07-16 マルチプロセッサシステム

Publications (2)

Publication Number Publication Date
JP2001034587A true JP2001034587A (ja) 2001-02-09
JP3374910B2 JP3374910B2 (ja) 2003-02-10

Family

ID=16479295

Family Applications (1)

Application Number Title Priority Date Filing Date
JP20375499A Expired - Fee Related JP3374910B2 (ja) 1999-07-16 1999-07-16 マルチプロセッサシステム

Country Status (1)

Country Link
JP (1) JP3374910B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003256147A (ja) * 2002-02-28 2003-09-10 Hitachi Ltd クラスタ型ディスクアレイ装置およびクラスタ型ディスクアレイ装置の運用方法
US7171590B2 (en) * 2002-07-29 2007-01-30 Nec Corporation Multi-processor system that identifies a failed node based on status information received from service processors in a partition
US7921188B2 (en) 2001-08-16 2011-04-05 Newisys, Inc. Computer system partitioning using data transfer routing mechanism
JP2012173927A (ja) * 2011-02-21 2012-09-10 Nec Corp 電子装置、集積装置、情報処理システム、および、処理方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7921188B2 (en) 2001-08-16 2011-04-05 Newisys, Inc. Computer system partitioning using data transfer routing mechanism
JP2003256147A (ja) * 2002-02-28 2003-09-10 Hitachi Ltd クラスタ型ディスクアレイ装置およびクラスタ型ディスクアレイ装置の運用方法
US7171590B2 (en) * 2002-07-29 2007-01-30 Nec Corporation Multi-processor system that identifies a failed node based on status information received from service processors in a partition
JP2012173927A (ja) * 2011-02-21 2012-09-10 Nec Corp 電子装置、集積装置、情報処理システム、および、処理方法

Also Published As

Publication number Publication date
JP3374910B2 (ja) 2003-02-10

Similar Documents

Publication Publication Date Title
JP3866426B2 (ja) クラスタ計算機におけるメモリ障害処理方法及びクラスタ計算機
US6826123B1 (en) Global recovery for time of day synchronization
US7668923B2 (en) Master-slave adapter
US6536000B1 (en) Communication error reporting mechanism in a multiprocessing computer system
US20050081080A1 (en) Error recovery for data processing systems transferring message packets through communications adapters
US20050091383A1 (en) Efficient zero copy transfer of messages between nodes in a data processing system
JPH11232237A (ja) クロスバースイッチを有する情報処理装置およびクロスバースイッチ制御方法
JP2003506788A (ja) 冗長システム・コントローラを試験する診断ケージ・モード
EP1701267B1 (en) Address snoop method and multi-processor system
US20050080869A1 (en) Transferring message packets from a first node to a plurality of nodes in broadcast fashion via direct memory to memory transfer
US20050080920A1 (en) Interpartition control facility for processing commands that effectuate direct memory to memory information transfer
US7978693B2 (en) Integrated circuit and method for packet switching control
US6671792B1 (en) Share masks and alias for directory coherency
US20050080945A1 (en) Transferring message packets from data continued in disparate areas of source memory via preloading
US7043603B2 (en) Storage device control unit and method of controlling the same
EP3788493B1 (en) Data processing network with flow compaction for streaming data transfer
US20060212749A1 (en) Failure communication method
US20050078708A1 (en) Formatting packet headers in a communications adapter
WO2006071714A1 (en) Multiple cell computer systems and methods
US11714755B2 (en) System and method for scalable hardware-coherent memory nodes
JP2001034587A (ja) マルチプロセッサシステム
US20050165974A1 (en) Computer apparatus and computer system
US7069362B2 (en) Topology for shared memory computer system
US6510471B1 (en) Method for choosing device among plurality of devices based on coherncy status of device's data and if device supports higher-performance transactions
JP2001007893A (ja) 情報処理システム及びそれに用いる障害処理方式

Legal Events

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