JPH1011319A - マルチプロセッサシステムの保守方法 - Google Patents

マルチプロセッサシステムの保守方法

Info

Publication number
JPH1011319A
JPH1011319A JP8163986A JP16398696A JPH1011319A JP H1011319 A JPH1011319 A JP H1011319A JP 8163986 A JP8163986 A JP 8163986A JP 16398696 A JP16398696 A JP 16398696A JP H1011319 A JPH1011319 A JP H1011319A
Authority
JP
Japan
Prior art keywords
test
test data
access port
memory
board
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
JP8163986A
Other languages
English (en)
Inventor
Ryuichi Hattori
隆一 服部
Yukihiro Seki
行広 関
Yasuhiro Hida
庸博 飛田
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 JP8163986A priority Critical patent/JPH1011319A/ja
Publication of JPH1011319A publication Critical patent/JPH1011319A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

(57)【要約】 【課題】 マルチプロセッサ方式を採用したPCサーバ
において、プロセッサの故障あるいは障害をシステムを
停止させることなく検出する。 【解決手段】 各プロセッサボード及びメモリ等のサブ
システム毎にバウンダリスキャンメカニズムを採用した
テストバスを設け、サービスプロセッサに設けたテスト
バスコントローラから定期的に故障診断を行う。さら
に、スペアCPUボードをホットスタンバイさせ、障害
の発生したCPUボードをホットスワップする。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、複数のプロセッサ
で構成されたマルチプロセッサシステムの保守方法に係
り、特に、システム動作中に障害発生を検出する保守方
法に関するものである。
【0002】
【従来の技術】近年、パーソナルコンピュータやワーク
ステーションの高性能化が進み、プロセッサを複数個搭
載して演算処理性能を向上させるマルチプロセッサ方式
や、大容量かつ高性能な2次記憶装置等を備えたパーソ
ナルコンピュータサーバ、あるいはワークステーション
サーバと呼ばれる高性能システムが一般化しつつある。
このようなパーソナルコンピュータサーバ、ワークステ
ーションサーバを採用したクライアント・サーバシステ
ムは、従来のパーソナルコンピュータ、ワークステーシ
ョンは適用されていなかった企業の基幹業務等に広く採
用されるようになってきている。
【0003】このような基幹業務をクライアント・サー
バシステムで担う場合には、システム全体の高信頼化を
図るため、サーバ装置の高信頼化及び保守性が重要な課
題となってきている。
【0004】ところで、このような高信頼性を要求され
るサーバ装置の保守方法としては、定期的あるいは必要
に応じて装置の通常動作を停止して故障診断プログラム
を実行させ、障害発生の有無をソフトウエアで検出する
方法が一般に知られている。故障診断プログラムを実行
した結果、障害のあることがわかれば、装置の運用を停
止して障害発生部位の修理あるいは交換を行う。
【0005】また、この故障検出をハードウエアレベ
ル、特にLSI単体及びプリント基板単位で実現する方
法としては、IEEE P1149.1規格として標準
化されているバウンダリ・スキャン技術が知られてい
る。
【0006】バウンダリ・スキャンは、プリント基板上
に存在するICやLSIをテストバスで接続し、ICや
LSIをボード上に搭載したままでテストバスを通じて
スキャンデータを流し、その結果から各IC,LSIの
障害発生の有無、障害内容の解析を行うことができるよ
うにした規格である。
【0007】バウンダリスキャン技術については、日経
BP社発行の日経エレクトロニクスNo.488号(1998年12
月11日発行)の314ページから320ページ、No.490
号(1990年1月8日発行)の301ページから307ペー
ジ、およびNo.492号(1990年2月5日発行)の245ペー
ジから251ページに記載されている。
【0008】さらに、近年のパーソナルコンピュータサ
ーバにおいては、サーバ装置内部に温度センサを設ける
などして、サーバ装置の稼働状況や信頼性に関する情報
を定期的に収集し、ユーザインターフェースを通じてサ
ーバシステムの管理者に通知するマネージャ機能を有す
るものが登場してきた。このマネージャ機能によって、
サーバ装置の管理者は障害の発生とその発生部位を特定
し易くなるなど、サーバ装置の保守性向上が図られてい
る。また、このマネージャ機能を利用してサーバ装置の
遠隔保守を行うシステムも登場してきている。
【0009】さらに、システム全体の信頼性を向上する
ための方法として、サーバ装置を2重化したり、バック
アップサーバを設けるなどの冗長化を図る方法も採用さ
れている。サーバ装置を2重に持つことで、1つのサー
バ装置が保守作業を行っている間でも、ユーザはバック
アップサーバからサービスを受けることが出来るので、
システムの運用性が向上する。
【0010】
【発明が解決しようとする問題点】上記従来技術におい
ては、以下に述べるような問題点があった。
【0011】すなわち、上記の従来の保守方法では、障
害発生の有無を調べるために定期的にサーバ装置の通常
動作を停止する必要があり、またサーバ装置の信頼性を
向上するためには、故障発生の有無を調べる診断プログ
ラムをより頻繁に実行させることが必要になる。そのた
め、故障診断プログラムを頻繁に実行すればするほど、
プログラム実行期間中にユーザがサーバ装置からサービ
スを受けられなくなる機会が多くなるという問題があ
る。
【0012】また、サーバ装置の保守作業期間中もサー
ビスを継続して行うために、サーバ装置を2重化した
り、バックアップサーバ装置を設置するなどの方法を採
用した場合には、サーバ装置を複数台導入する必要があ
り、システム全体のコストが高くなるという問題があ
る。
【0013】さらに、マルチプロセッサシステムにおい
ては、一部のプロセッサに障害が発生した場合に、障害
の発生したプロセッサを交換するためには、プロセッサ
を構成するCPUまたはCPUボードを物理的に交換す
る必要があり、通常は、必ずシステムとしての動作を停
止して電源を切断した後にCPUまたはCPUボードの
交換作業を行う必要がある。このため、プロセッサの保
守作業期間中はサーバ装置としての運用を行うことがで
きず、クライアント・サーバシステムのユーザはサーバ
装置からサービスを受けられないという問題もある。
【0014】さらに、全てのCPUを同一のシステムバ
スあるいはマルチプロセッサバスに接続しているマルチ
プロセッサシステムにおいては、障害の発生したプロセ
ッサを搭載したままでは同一バスに接続している他のC
PUの動作に悪影響を与え、システムとしての信頼性が
低下する可能性がある。このため、物理的にCPUまた
はCPUボードをシステムバスまたはマルチプロセッサ
バスから切り離す、あるいは交換する必要があり、前記
マネージャ機能などを用いた遠隔保守方法では保守作業
に対応できないという問題点もある。
【0015】本発明の目的は、マルチプロセッサシステ
ムのシステムとしての動作を停止せずに、各プロセッサ
毎に障害発生の有無を検出し、ユーザに対するサービス
が低下するのを防止することができるマルチプロセッサ
システムの保守方法を提供することにある。
【0016】本発明の他の目的は、マルチプロセッサシ
ステムを構成する任意のプロセッサに障害が発生した場
合に、システムとしての動作を停止することなく障害の
発生したプロセッサをシステムから切り離し、交換等の
保守作業を行うことができるマルチプロセッサシステム
の保守方法を提供することにある。
【0017】本発明のさらに他の目的は、マルチプロセ
ッサシステムを構成する任意のプロセッサに障害が発生
した場合に、障害の発生したプロセッサを速やかにシス
テム装置から切り離し、代替プロセッサをシステム装置
に組み込み、システム性能の低下を防止することができ
るマルチプロセッサシステムの保守方法を提供すること
にある。
【0018】
【課題を解決するための手段】本発明は上記目的を達成
するために、LSI内部の故障診断を行うためのテスト
信号を入力するテストアクセスポートを有する複数のC
PUおよびメモリ等の周辺装置とを有するマルチプロセ
ッサシステムにおいて、前記CPUおよび周辺装置の故
障診断を行うためのテストデ−タを格納したテストデ−
タメモリと、前記CPUおよび周辺装置のアクセスポー
トを通じて前記テストデ−タメモリから読み出したテス
トデ−タを入力するアクセスポートコントローラとをマ
ルチプロセッサシステム内に設け、前記テストデ−タメ
モリからテストデ−タを予め設定した時間間隔で定期的
に読出し、該テストデ−タを前記アクセスポートを通じ
て複数のCPUおよびその周辺装置に入力することによ
り、これら複数のCPUおよび周辺装置の内部論理をス
キャンし、そのスキャン結果のデ−タに基づいて前記複
数のCPUおよびその周辺装置の故障診断を行うことを
主要な特徴とする。
【0019】ここで、アクセスポートコントローラの代
えて、マルチプロセッサシステム上で動作するオペレー
ティングシステムにより前記テストデ−タメモリからテ
ストデ−タを予め設定した時間間隔で定期的に読出し、
該テストデ−タを前記アクセスポートを通じて複数のC
PUおよびその周辺装置に入力することにより、これら
複数のCPUおよび周辺装置の内部論理をスキャンし、
そのスキャン結果のデ−タに基づいて前記複数のCPU
およびその周辺装置の故障診断を行うように構成するこ
とができる。
【0020】また、前記アクセスポートコントローラ
に、診断対象を選択設定する選択レジスタと、故障診断
動作のモードを選択するテストモードレジスタとを設
け、これらのレジスタに対し、マルチプロセッサシステ
ムで動作するオペレーティングシステムから設定された
診断対象と故障診断動作のモードに従って診断対象の選
択とテストデ−タの入出力を行うことを特徴とする。
【0021】さらに、複数のCPUのうちいずれかのC
PUに、前記スキャン結果のデ−タに基づく故障診断処
理を行わせることを特徴とする。
【0022】また、テストデ−タメモリに格納するテス
トデータは、マルチプロセッサシステムの主メモリから
ダウンロードすることを特徴とする。
【0023】また、前記アクセスポートは、IEEE1
149.1標準規格によって定められたバウンダリスキ
ャンテスト方法に準拠したものであり、前記複数のCP
Uおよび周辺装置の各アクセスポートをチェーン状に接
続しておき、故障診断のためのテストデ−タはチェーン
接続の最前段のアクセスポートに入力することを特徴と
する。
【0024】さらに、前記アクセスポートは、IEEE
1149.1標準規格によって定められたバウンダリス
キャンテスト方法に準拠したものであり、前記複数のC
PUおよび周辺装置の各アクセスポートを前記アクセス
ポートコントローラのテストデ−タ出力端子および入力
端子に並列に接続しておき、アクセスポートコントロー
ラから出力する選択信号によって前記複数のCPUおよ
び周辺装置のうちいずれかを診断対象に選択した後、前
記テストデ−タをアクセスポートコントローラから出力
し、選択した診断対象から出力されるスキャン結果のデ
−タに基づき、選択した診断対象のみの故障診断を行う
ことを特徴とする。
【0025】さらにまた、LSI内部の故障診断を行う
ためのテスト信号を入力するテストアクセスポートを有
する複数のCPUボードと、前記複数のCPUボードの
それぞれをシステムバスに接続し、かつ固有の物理位置
情報が設定された複数のコネクタを有するマルチプロセ
ッサシステムにおいて、通常時はシステム動作を行わな
いスペアCPUボードと、このスペアCPUボードを前
記システムバスに接続するスペアコネクタと、前記CP
Uボードの故障診断を行うためのテストデ−タを格納し
たテストデ−タメモリと、前記CPUボードのアクセス
ポートを通じて前記テストデ−タメモリから読み出した
テストデ−タを入力するアクセスポートコントローラと
をマルチプロセッサシステム内に設け、前記テストデ−
タメモリからテストデ−タを予め設定した時間間隔で定
期的に読出し、該テストデ−タを前記アクセスポートを
通じて複数のCPUボードに入力することにより、これ
ら複数のCPUボードの内部論理をスキャンし、そのス
キャン結果のデ−タに基づいて前記複数のCPUボード
の故障診断を行い、いずれかのCPUボードの障害を検
出したならば、この障害CPUボードをシステムバスに
接続するコネクタに設定されていた物理位置情報を前記
スペアコネクタの物理位置情報として設定し、障害が検
出されたCPUボードをシステムバスから切離し、障害
が検出されたCPUボードの動作をスペアCPUボード
に代行させることを特徴とする。
【0026】そして、前記テストデ−タを読み出すため
の時間間隔の値は、オペレーティングシステムが設定す
ることを特徴とする。
【0027】なお、スキャン結果のデータを解析したエ
ラー情報を格納するためのロギングメモリをマルチプロ
セッサシステム内に設けるようにしてもよい。
【0028】また、ロギングメモリに格納したエラー情
報をオペレーティングシステムのユーザインターフェー
ス上に表示するようにしてもよい。
【0029】
【発明の実施の形態】以下、本発明の実施の形態を図面
により詳細に説明する。
【0030】第1の実施の形態 図1は、本発明を適用したマルチプロセッサシステムの
第1の実施の形態を示すシステム構成図である。
【0031】図1において、CPUボード(#1)10
1、CPUボード(#2)102及びCPUボード(#
n)103は、それぞれコネクタ(#1)104,コネク
タ(#2)105及びコネクタ(#n)106を通じてシ
ステムバス107に接続され、n個のプロセッサを有す
るマルチプロセッサシステムを構成している。
【0032】各プロセッサボード、すなわちCPUボー
ド(#1)101〜(#n)103には、上記コネクタ
(#1)104〜(#n)106を通じてプロセッサボー
ドの故障診断をハードウエアで行うためのテスト用の信
号TDI,TCK,TMS,TDOが接続されている。
【0033】システムバス107には、メモリボード1
09と、I/Oバスブリッジ110が接続されており、
さらにI/Oバスブリッジ110を介してI/Oバス1
08にはI/Oボード112とサービスプロセッサ11
3が接続されている。
【0034】I/Oボード112は、シリアル/パラレ
ルデータ通信ポート及びFD(フロッピィディスク装
置)/HDD(ハードディスク装置)等の補助記憶装置
とのインタフェースや、BIOS(基本入出力を行うた
めのプログラム)やファームウエアなど、通常のパーソ
ナルコンピュータあるいはワークステーションとして動
作するために不可欠なI/Oサブシステムを備えるもの
である。
【0035】上記I/Oボード112及びI/Oサブシ
ステムの構成については、一般に知られているパーソナ
ルコンピュータまたはワークステーションとしての機能
を保持していればよく、本発明の本質には関係ないの
で、ここではその詳細な説明は省略する。一般的な業界
標準仕様のパーソナルコンピュータが備えるI/Oサブ
システムについては、例えば米国"Prentice Hall"社発
行の"The 80x86 IBM PC & COMPATIBLE COMPUTERS" VO
LUME II:Design and Interfacing of the IBM PC,P
S and Compatibles(1995年発行)"の"Chapter
4:I/O Designand the 8255 Chip"(89ページ
から121ページまで)に記載されている。 一方、サ
ービスプロセッサ113は、各CPUボード(#1)1
01〜(#n)103、メモリボード109及びI/O
ボード112に上記のテスト用の信号TDI,TCK,
TMS,TDOを接続し、これらの信号を制御して各ボ
ード及びサブシステム毎に故障診断を行う機能を備えて
いる。
【0036】上記のテスト用の信号TDI,TCK,T
MS,TDOは、故障診断のためのテストバスを構成す
るものである。
【0037】なお、サービスプロセッサ113は、後述
の実施形態にて説明するように、マルチプロセッサシス
テム上で動作するオペレーティングシステム(OS)に
組み込まれたデバイスドライバから制御してもよいし、
サービスプロセッサ113内にCPUを搭載し、そのC
PUを用いて制御を行ってもよい。
【0038】図2は、CPUボード(#1)101〜(#
n)103の内部構成について、CPUボード(#n)
103の内部構成を代表して示したブロック構成図であ
る。CPUボード(#n)103は、CPU201およ
びキャッシュメモリ202と、バスI/F(インターフ
ェース)203とを内部に備え、これらはCPUバス2
04を介して互いに接続され、さらにバスI/F203
を介してコネクタ106へ接続されている。
【0039】図2に示すCPUボード(#n)103に
は、コネクタ106を通じてCPU201,キャッシュ
メモリ202及びバスI/F204の故障診断をハード
ウエアで行うためのテストバスの信号が接続されてい
る。このテストバスの信号は、IEEE(米国電気電子
技術者協会)の標準規格であるIEEE1149.1 Bo
undary Scan(以下、バウンダリスキャンと略記)に
よって規格化されている信号TDI,TCK,TMS,
TDOで構成されている。
【0040】このうち、TDI110はバウンダリスキ
ャンメカニズムで使用するスキャンデータをボード内へ
取り込むテスト・データ入力信号、TCK111はCP
U201やキャッシュメモリ202等のバウンダリスキ
ャンに対応したICやLSIがバウンダリスキャンメカ
ニズムにもとづいて内部回路をスキャンニングするため
の動作クロックであるテスト・クロック入力信号であ
る。
【0041】TD0105は、上記テスト・データ入力
信号TDI110を通じてCPUボード(#n)103
に入力したテストデータを出力するテスト・データ出力
信号であり、TMS106はバウンダリスキャン規格で
規定されたハードウエアのテストや上記IC及びLSI
内部でスキャンデータのスキャンパス等を設定したりす
るなどの動作モードを選択するテスト・モード選択信号
である。
【0042】テスト・モード選択信号TMS106及び
テスト・クロック入力信号TCK111は各CPUボー
ドやメモリボード等に共通に入力する信号であるため、
それぞれバッファ108及び109を介してボード上の
各IC及びLSIへ供給している。
【0043】図2に示すCPUボード(#n)103に
おいて、コネクタ106から入力したテスト・データ入
力信号TDI110は、まず、CPU201のテスト・
データ入力ピンへ入力され、CPU201の内部を経由
してテスト・データ出力ピンからテスト・データ出力信
号TDO112となってバスI/F203のテスト・デ
ータ入力ピン(TDIの入力ピン)へ入力されている。
【0044】さらに、バスI/F203のテスト・デー
タ出力信号TDOはキャッシュメモリ202のテスト・
データ入力(TDI)ピンへ接続され、最後にキャッシ
ュ202のテスト・データ出力(TDO)ピンから、C
PUボード(#n)のテスト・データ出力信号TDO1
05としてコネクタ106へ出力されている。
【0045】このように、バウンダリスキャンメカニズ
ムでは、テスト対象となるICまたはLSIのテスト・
データ入力ピン(TDI入力ピン)とテスト・データ出
力ピン(TDO出力ピン)とをチェーン状に接続し、ボ
ードまたはテストを行うサブシステム単位でテストデー
タをスキャン可能なチェーンを構成する。
【0046】バウンダリスキャンメカニズムを用いて、
図2に示すCPUボード(#n)103をテスト単位と
して、ハードウエア故障診断を行う場合には、まずコネ
クタ106を通じてテストを行うためのクロック信号T
CK111を入力し、また規格で定められたテストモー
ドの選択を行うためのモード選択信号TMS106を入
力する。
【0047】その後、テスト・データ入力信号TDIを
入力する。すると、テスト・データ入力信号TDIは、
CPU201→バスI/F203→キャッシュメモリ2
02→コネクタ106のTDO出力ピンの経路を通り、
CPUボード(#n)103のテスト・データ出力信号
105として出力される。
【0048】このCPUボード(#n)103のバウン
ダリスキャン後のテスト・データ出力信号105を解析
し、故障診断を行う。
【0049】このバウンダリスキャンメカニズムを用い
たハードウエア故障診断では、上記テスト・モード選択
信号TMS106を通じてテストモードを適切に選択し
てやることにより、図2に示すCPUボード(#n)1
03全体の故障診断を行うこともできるし、CPU20
1やキャッシュメモリ202またはバスI/F203単
体の故障診断をも行うこともできる。
【0050】例えば、バスI/F203のみの故障診断
を行う場合には、テスト・モード選択信号TMS106
に適切なコマンド信号を入力し、CPU201とキャッ
シュメモリ202はTDI入力ピンから取り込んだテス
ト・データ入力信号TDIをそのままTDO出力ピンか
ら出力するようにしてやればよい。
【0051】このようなバウンダリスキャンは業界標準
規格としてICやLSIに広く採用されており、例えば
米国Intel社のPentium(R)マイクロプロセッサでも内
部論理のテスト機能として採用している。Pentiumプロ
セッサが採用しているバウンダリスキャンメカニズムに
ついては、米国Intel Corporation発行の「Pentium
(TM) Family User's Manual Volume 1:Data Book」
(1994年発行 ISBN1-55512-225-6)の
11-1ページから11-14ページに記載されている。
【0052】また、バウンダリスキャンメカニズムの標
準仕様やテスト・モード選択信号で選択可能なスキャン
モード、バウンダリスキャンメカニズムを採用するIC
やLSIが実行可能な内部テストコマンドについては、
米国IEEEが発行している「Standard Test Port a
nd Boundary-Scan Architecture,IEEE Std 11
49.1-1990」(1994年発行 ISBN 1-559
37-350-4)に記載されているので、詳細な説明は
省略する。
【0053】次に、図1におけるメモリボード109の
構成について、図3の詳細構成ブロック図を用いて説明
する。
【0054】図3において、メモリボード109は、メ
モリモジュール301、アドレスバッファ302、メモ
リコントローラ303およびデ−タバスバッファ304
バスインタフェース(バスI/F)306とから成り、
メモリコントローラ303はアドレスバッファ302お
よびアドレスバス309a,309bをメモリモジュー
ル301と接続され、さらにデ−タバスバッファ304
はメモリデ−タバス308を通じてメモリモジュール3
01と接続されている。
【0055】また、バスI/F306はメモリボード内
部バス305を通じてメモリコントローラ303および
デ−タバスバッファ304に接続されている。
【0056】メモリコントローラ303、データバスバ
ッファ304及びバスI/F306は、それぞれバウン
ダリスキャンメカニズムに対応しており、図2において
説明したのと同様に、コネクタ115を通じてバウンダ
リスキャン用の信号TDI,TCK,TMS,TDOが
入出力されるようになっている。
【0057】すなわち、スキャンデータであるテスト・
データ入力信号TDIは、図2に示したCPUボードを
用いて説明したのと同様に、コネクタ115のTDI入
力ピンに入力された後、メモリコントローラ-303、
バスI/F306、データバスバッファ304の経路で
メモリボード109のテスト・データ出力信号TDO3
17としてコネクタ115へと出力される。
【0058】図3において、メモリモジュール301
は、メモリ制御バス307を介してメモリコントローラ
303によって制御され、メモリアドレスバス309
a,309bおよびメモリアドレスバッファ302を介
してアクセスアドレスデ−タを取り込み、メモリデータ
バス308を介してデータバスバッファ304からデー
タの入出力を行う。
【0059】なお、メモリモジュール301としてバウ
ンダリスキャンメカニズムに対応したメモリモジュール
を採用した場合には、そのメモリモジュール301にも
前記バウンダリスキャン用の信号を接続してやればよ
い。
【0060】すなわち、図4に示すように、バウンダリ
スキャンメカニズムによる故障解析をサポートしている
メモリモジュール301を採用した場合には、メモリモ
ジュール301にもテスト・クロック信号TCK31
1、テスト・モード選択信号TMS315を入力し、さ
らにテストデータをスキャンするためのテスト・デ−タ
入力信号TDI310,テスト・デ−タ出力信号TDO
の信号パスをチェーン状に接続すればよい。
【0061】なお、図3および図4におけるバウンダリ
スキャン用の各信号の機能は図2と同一であるので、こ
こでは説明を省略する。また、メモリモジュール301
の詳細な制御方法についても本発明の本質とは関係がな
いのでここでは省略する。
【0062】次に、図1におけるI/Oボード112の
詳細構成を図5を用いて説明する。
【0063】I/Oボード112は、図5に示すよう
に、I/Oバス504に接続されたI/O制御LSIa
501およびI/O制御LSIb502と、I/Oバス
504からI/Oバスバッファ506を介した低速I/
Oバス505に接続された低速I/O制御LSIc50
3とから成っている。
【0064】図2に示したCPUボード103と図3に
示したメモリボード109で説明したのと同様に、各I
/O制御LSI501,502,503はバウンダリス
キャンメカニズムをサポートしており、コネクタ116
のTDIピンから入力されたテスト・データ入力信号T
DI510を、I/O制御LSI501→503→50
2の順にチェーン接続し、テスト・データ出力信号TD
O515としてコネクタ116のTDOピンへ出力する
ように構成されている。
【0065】ここで、テスト・クロック信号TCKはコ
ネクタ116のTCKピンから入力され、バッファ51
1を介して各I/O制御LSI501,502,503
へ供給されている。また、テスト・モード選択信号TM
Sもコネクタ116のTMSピンから入力され、バッフ
ァ512を介して各I/O制御LSI501,502,
503へと供給されている。
【0066】図5に示すバウンダリスキャン信号の動作
については、図2および図3に示した実施例と同様であ
るのでここでは詳細な説明を省略する。
【0067】次に、図1のサービスプロセッサ113の
詳細構成を図6を用いて説明する。
【0068】図6において、サービスプロセッサ113
は、テストアクセスポート602、テストCLK生成部
604、スキャンテストメモリ605、スキャンメモリ
制御部606、テストアクセスポート制御部607、イ
ンターバル・タイマ610、I/OバスI/F611、
ロギングメモリ制御部640、ロギングデ−タメモリ6
41、バッテリ642とを備えている。
【0069】インターバル・タイマ610は、タイマ設
定レジスタ609とタイマ制御レジスタ608とから構
成され、また、テストアクセスポート制御部607はテ
ストバス選択レジスタ651とテストモードレジスタ6
50とから構成されている。
【0070】テストカード内部バス612は、I/Oバ
スI/F611を介してI/Oバスコネクタ601と接
続されている。インターバル・タイマ610はタイマ設
定レジスタ609とタイマ制御レジスタ608とを有
し、テストカード内部バス612に接続されており、信
号TDI等から成るテストバスを通じて各CPUボード
101〜103、メモリボード109等のハードウエア
による故障診断を行う時間インターバルを設定する。
【0071】上記2つのレジスタ608,609は、図
1に示したマルチプロセッサシステム上で動作するオペ
レーティングシステムが設定してもよいし、マルチプロ
セッサシステムの起動時にBIOSなどが初期化しても
よい。
【0072】テストアクセスポート制御部607は、テ
ストバス選択レジスタ651とテストモード選択レジス
タ650とを有し、テスト・アクセス・ポート602を
制御してテストバスコネクタ600を通じてテストバス
の各バウンダリスキャン信号を制御している。
【0073】テストアクセスポート制御部607は、テ
ストバス選択レジスタ651に設定されたバス番号情報
に基づいて、故障診断を行うサブシステムまたはCPU
ボードに接続するテストモード選択信号を制御する。例
えば、テストバス選択レジスタ651にCPUボード
(#1)101をテストする値が設定された場合、テス
トアクセスポート制御部607は、テストアクセスポー
ト602を制御してCPUボード(#1)101につな
がるテスト・モード選択信号である「TMS−CPU
1」626をアクティブにする。
【0074】テストアクセスポート602は、テストC
LK生成部604が生成したクロック信号631で動作
し、このクロック信号631をテストバスクロック信号
TCK628としてバッファ614を介して図1に示す
全てのCPUボードへ入力している。
【0075】テスト・モード選択信号は各CPUボー
ド、メモリボード毎に独立しており、「TMS−CPU
1」626は図1に示すCPUボード(#1)101
へ、「TMS−CPU2」625は図1のCPUボード
(#2)102へ、「TMS−CPUn」624は図1
のCPUボード(#n)103へ、「TMS−Mem」6
23は図1のメモリボード109へ、「TMS−I/
O」622は図1のI/Oボード112へそれぞれ入力
されている。
【0076】テストアクセスポート制御部607は、テ
ストモードレジスタ650に設定されたテスト機能情報
に基づいてテスト・アクセス・ポート602を制御し、
上記説明した各テストモード選択信号を通じて前記テス
ト機能を実行するためのコマンド信号を送出する。
【0077】また、テストアクセスポート制御部607
は、インターバルタイマ610からのタイマ到達信号6
30を動作のトリガとして、テスト・アクセス・ポート
602を起動してテストバスを通じたCPUボード等の
故障診断制御を行う。
【0078】図6におけるスキャンテストメモリ605
は、通常は、テスト・アクセス・ポート602とテスト
アクセスポート制御部607によって制御され、テスト
バスを通じてスキャンデータ(TDI,TDO)の送出
および受信を行う。
【0079】テストデータは、クロック信号631によ
ってテストバスの各信号と同期をとりながら、テストに
使用するスキャンデータをバッファ615を介してテス
トバスコネクタ600のテストデータ出力ピン(TD
O)627から送出される。
【0080】テストデータ出力ピン(TDO)627
は、図1におけるテスト・データ入力信号120として
コネクタ(#1)104を介してCPUボード(#1)
101のテストデータ入力(TDI)ピンへと接続され
ている。
【0081】また、図1に示すI/Oボード112のテ
ストデータ出力(TDO)ピンからI/Oボードコネク
タ116を介してテストデータ出力信号TDO127が
テストバスコネクタ600のテストデータ入力(TD
I)ピン620に入力され、スキャンテストメモリ60
5内に格納されるようになっている。
【0082】スキャンメモリ制御部606は、テストカ
ード内部バス612からI/OバスI/F611を介し
て図1に示すI/Oバス108を通じて、スキャンテス
トメモリ605へテストデータを格納したり、スキャン
後の収集データを読み出したりする際にスキャンテスト
メモリ605を制御する。
【0083】スキャンテストメモリ605に格納された
テストバスからの収集データは、テストアクセスポート
制御部607が読み出して故障解析を行ってもよいし、
図1の実施例に示すメモリボード109内に読み出し
て、任意のCPUボードが故障解析を行うようにしても
よい。
【0084】また、上記述べたように、テストデータを
I/Oバス108を通じてシステムのメモリからダウン
ロードすることも可能であるので、テストバスを用いた
故障解析を行うCPUボードあるいはメモリボード、I
/Oボード毎に最適なテストデータを使用して故障解析
を行うことができる。
【0085】さらに、図6において、ロギングメモリ制
御部640はバッテリ642にバックアップされた不揮
発性のロギングデータメモリ641へのテストカード内
部バス612を通じたデータの読み出し/書き込みを制
御する。
【0086】ロギングデータメモリ641には、テスト
アクセスポート602が前記スキャンテストメモリ60
5に格納された収集データを解析した結果の故障解析結
果を格納してもよいし、メモリボード109上に読み出
した収集データをオペレーティングシステムが故障解析
した結果の故障解析情報を格納してもよい。
【0087】このように、バッテリ642でアックアッ
プされた不揮発性のロギングデ−タメモリ641に故障
解析情報を格納することで、オペレーティングシステム
のダウンなどによるシステムダウンの際にも故障解析情
報が失われることなく、的確に故障原因の解明を行うこ
とができる。
【0088】従って、以上のように構成されたマルチプ
ロセッサシステムにあっては、バウンダリスキャンに基
づくテスト・デ−タ入力信号TDIをインターバルタイ
マ610で設定された時間間隔で定期的にサービスプロ
セッサ113から出力し、テスト対象のCPUボード1
01〜103およびメモリボード109、I/Oボード
112に順次入力し、最終段のI/Oボード112から
出力されるテスト・デ−タ出力信号TDOをサービスプ
ロセッサ113のスキャンテストメモリ605に収集格
納し、テストアクセスポート制御部607または任意の
CPUボード(101〜103のいずれか)で故障解析
を行うことにより、マルチプロセッサシステム自体の動
作を停止させることなく、システムを構成するCPUボ
ード101〜103やメモリボード109の故障診断を
行い、障害を早期に検出し、オペレーティングシステム
の誤動作やシステムダウンを防ぐことができる。
【0089】また、故障診断のためのハードウエア手段
にバウンダリスキャン方式を採用したことにより、オペ
レーティングシステムのシステムダウンを引き起こさな
いような軽微な障害についてもシステムダウン以前に予
防的に検出することができる。
【0090】また、明確な原因が不明のままシステムの
動作が不安定になった場合にも、オペレーティングシス
テムを動作させたまま、バウンダリスキャンにて故障診
断を行うことができるので、動作不安定要因の的確な調
査を行うことができる。
【0091】従って、マルチプロセッサ方式のサーバ装
置を構成した場合、通常のサービス機能を維持したまま
故障解析を行うことになるため、ユーザに対するサービ
スが低下することはない。同時に、予防的に定期的に故
障診断を行っているため、高い信頼性を維持することが
できる。
【0092】なお、テストアクセスポート制御部607
がスキャンテストメモリ605におけるテストデ−タの
読出し、書き込みを制御しているが、オペレーティング
システムによってテストデ−タの読出し、書き込みを制
御するようにしてもよい。
【0093】第2の実施の形態 図7に本発明の第2の実施の形態を示す。
【0094】図7に示す第2の実施形態では、図1に示
した第1の実施形態において、各CPUボードおよびメ
モリボード間をチェーン状に接続していたスキャンデー
タのバスをチェーン状ではなく、並列に接続する方式を
採用したものである。
【0095】詳しくは、サービスプロセッサ113と各
CPUボード101〜103,メモリボード109,I
/Oボード112との間で入出力する信号TDI140
およびTDO141を並列に接続し、テスト・モード選
択信号「TMS−CPU1」122〜「TMS−I/
O」128によってテスト対象を個別に選択し、各ボー
ドを単体単位で個別に故障解析を行うようにしたもので
ある。
【0096】なお、各CPUボードやメモリボードの構
成は図1に示した第1の実施形態と同様であるので、こ
こでは詳細な説明を省略する。
【0097】従って、この実施の形態によれば、各CP
Uボードやメモリボードを単体単位で個別に故障解析を
行うことができる。特に、単体単位で故障解析を行える
ことからサービスプロセッサ113の負担が軽減するう
え、詳細な解析が可能になるという特有の効果がある。
【0098】第3の実施の形態 図8を用いて、障害の発生したCPUボードを代替する
ためのスペアCPUボードを備えた、本発明の第3の実
施形態について説明する。
【0099】図8に示すマルチプロセッサシステムは、
CPUボード(#1)151〜(#n)152の他に、ス
ペアCPUボード(#x)153を備え、各CPUボー
ド(#1)151,(#n)152を装着するスロット
(#1)161,(#n)162は、マルチプロセッサシ
ステムの複数のプロセッサを識別するためのID情報に
利用するためのスロット物理位置に関するスロット位置
情報GIDを有していることに特徴がある。
【0100】図9に、CPUボード(#n)152の詳
細構成を示す。スロット(#n)162は、固有のスロ
ット#n位置情報164を有しており、このスロット位
置情報164はバスI/F203に接続され、マルチプ
ロセッサシステムの各CPUボード151,(#n)1
52を識別するためのID情報として使用される。
【0101】なお、図9の他の部分の構成については、
図2を用いて説明したCPUボードと同様であるので、
ここでは詳細な説明を省略する。
【0102】図10に、スペアCPUボード(#x)1
53の構成を示す。図10において、スペアCPUスロ
ット(#x)163は固有のスロット位置情報を持た
ず、スロット位置情報レジスタ154に設定した任意の
スロット番号をスロット位置情報として参照することに
より、スペアCPUスロット(#x)163のスロット
位置情報を認識するようになっている。
【0103】スロット位置情報レジスタ154には、オ
ペレーティングシステムから任意のスロット位置情報が
設定可能である。
【0104】このような構成によれば、例えば、CPU
ボード(#n)152に障害が発生した場合に、その障
害の発生したCPUボード(#n)152をシステムバ
ス107から電気的に切り離し、スロット位置情報レジ
スタ154に、切り離したCPUボード(#n)152
のスロット位置情報と同一のスロット位置情報をオペレ
ーティングシステムから設定する。すると、スペアCP
Uボード(#x)153は自分がCPUボード(#n)
であると認識し、動作するようになる。すなわち、スペ
アCPUボードド(#x)153がCPUボード(#
n)152に代わって動作するようになる。
【0105】この場合、障害が発生したCPUボード
(#n)152をシステムバス107から電気的に切り
離す方法としては、各CPUボード毎に切離しレジスタ
を設け、この切離しレジスタに切離しコマンドをシステ
ムバス107を通じて設定し、バスI/F203とシス
テムバス107との接続部分をハイインピーダンスにす
る方法を用いることができる。
【0106】また、障害が発生したCPUボード(#
n)152をシステムバス107から電気的に切り離し
た際には、スキャンデ−タの経路が中断するため、CP
Uボード(#n)152のTDI入力ピンとTDO出力
ピンとを短絡し、スキャンデ−タの経路を確保する。T
DI入力ピンとTDO出力ピンとを短絡する方法は、C
PUボード(#n)152をスロット(#n)162から
引き抜いた時に自動的に閉じる接点を設けておき、この
接点で短絡する方法が最も簡単である。この他、スロッ
ト位置情報レジスタ154に、切り離したCPUボード
(#n)152のスロット位置情報と同一のスロット位
置情報をオペレーティングシステムから設定することに
よって閉じる接点を設けておき、この接点で短絡する方
法を用いてもよい。
【0107】これによって、障害発生に伴って、CPU
ボードをホットスワップする際に、オペレーティングシ
ステムはホットスワップの前後でCPUのID情報の違
いを意識する必要がないため、オペレーティングシステ
ムへの負担を最小限に押さえることができるという効果
がある。
【0108】なお、図8に示す実施形態のバウンダリー
スキャンメカニズムに関する機能については、図1を用
いて説明した第1の実施形態および図7を用いて説明し
た第2の実施形態と同様であるので、ここでは詳細な説
明を省略する。
【0109】上記述べたような、複数のプロセッサボー
ドがプロセッサスロットに装着され、かつスロットの物
理位置情報をCPUのID情報として利用しているシス
テムの例としては、米国Corollary社のマルチプロセッ
サバスC-BusIIが知られている。C-BusII仕様の詳細につ
いては、米国Corollary社発行の「C-BusII Specificatio
n Revision2.0」(1993年4月26日発行)3ペー
ジから22ページに記載されている。
【0110】次に、上記第3の実施形態で説明したマル
チプロセッサシステムで動作するオペレーティングシス
テムの構成について図11のブロック図を用いて説明す
る。
【0111】図11において、オペレーティングシステ
ム800は、ユーザモードで動作するアプリケーション
やサブシステムと、カーネルモードで動作する各マネー
ジャやデバイスドライバ類、及び個々のハードウエアの
違いを吸収するハードウエア仮想化層(HAL)817
とからなる。
【0112】ユーザモードで動作するアプリケーション
には、ログオンプロセス801やセキュリティサブシス
テム804、Win32クライアント802やWin32サブ
システム805、そして図8に示す実施例のサービスプ
ロセッサを制御するSVPマネージャ803がある。
【0113】また、カーネルモードで動作するものとし
ては、仮想メモリマネージャ811やプロセスマネージ
ャ812、カーネル813及びファイルシステム816
やデバイスドライバ815に加えて、図11における前
記サービスプロセッサ113を制御するためのSVPド
ライバ814がある。
【0114】前記SVPマネージャ-803とSVPド
ライバ-814がハードウエア層のサービスプロセッサ
113(図11においては、SVPボードと略記)を制
御する。
【0115】また、図11に示すスロット位置情報レジ
スタ154に設定するスロット位置情報は、SVPドラ
イバ814が設定してもよいし、ハードウエア仮想化層
(HAL)817が設定してもよい。また、SVPドラ
イバ814は図6において説明したロギングデータメモ
リ641に格納された故障解析情報を読み出して、ユー
ザモードのSVPマネージャ803を通じてユーザイン
ターフェースに表示する。
【0116】図11に示すオペレーティングシステム8
00の他の部分については、一般に知られているパーソ
ナルコンピュータ用OSとしての機能を備えていればよ
いので、ここでは詳細な説明を省略する。また、マルチ
プロセッサ方式を採用したパーソナルコンピュータ上で
動作する一般的なオペレーティングシステムの例として
は、例えば米国Microsoft社の"Windows NT“オペレーテ
ィングシステム等が知られている。Microsoft社のWindo
ws NTオペレーティングシステムの詳細については、米
国Microsoft Press社の「INSIDE WINDOWS NT(TM)」(1
993年発行)やその日本語翻訳書である、株式会社ア
スキー社の「INSIDE WINODWS NT(TM)」(1993年4
月1日発行 ISBN4-7561-0277-8)37ペー
ジから70ページに記載されている。
【0117】上記述べたように、オペレーティングシス
テム800に組み込んだデバイスドライバ815やマネ
ージャソフトを用いて行うことにより、ネットワークや
電話回線を用いてオペレーティングシステムにアクセス
することにより、CPUボード等の交換作業を遠隔制御
にて行うことが可能になる。
【0118】続いて、図12、図13、図14及び図1
5に示すフローチャートを用いて、第3の実施形態にお
けるオペレーティングシステム800の動作について説
明する。
【0119】まず、図12を用いて動作の概略を説明す
る。
【0120】オペレーティングシステム(以下、OSと
略記)800は、起動時に各CPUボードやメモリボー
ド等のハードウエアの初期化を行う(ステップ70
1)。
【0121】次に、OS800に組み込まれたSVPド
ライバ814が起動され、サービスプロセッサ113の
装着有無の検出と、タイマ設定レジスタ609やテスト
モードレジスタ650等の設定をする初期化作業を行う
(ステップ702)。この際、テスト内容によっては、
サービスプロセッサ113上のスキャンテストメモリ6
05にテストデータをダウンロードしてもよい。
【0122】サービスプロセッサ113の初期化作業が
終了すると、サービスプロセッサ(SVP)マネージャ
803を起動する。この際、サービスプロセッサ113
上のロギングデータメモリ641に故障解析情報が格納
されている場合には、前記オペレーティングシステム8
00のSVPドライバ814が故障解析情報を読み出
し、SVPマネージャ803がユーザインターフェース
を通じて表示する。
【0123】続いて、サービスプロセッサ113は、ス
テップ702の初期化作業において設定された各レジス
タの情報などにもとづいて、テストバスを用いたシステ
ムの各CPUボードやメモリボードの故障・障害診断を
行う(ステップ704)。
【0124】サービスプロセッサ113の動作について
は、前記したので、ここでは詳細な説明を省略する。
【0125】各CPUボードやメモリボードをスキャン
した結果、障害発生を検出した場合には(ステップ70
5)、SVPドライバ814を通じてオペレーティング
システム800に障害発生を通知する(ステップ70
6)。
【0126】障害発生時の通知方法は割り込みを用いて
もよいし、SVPドライバ814がサービスプロセッサ
113のロギングデータメモリ641またはロギングメ
モリ制御部640をポーリングして、障害発生の有無を
検出してもよい。
【0127】OS800は、障害の検出された部位に応
じて、ハードウエア仮想化層(HAL)817を用いて障
害対策処理を行う(ステップ707)。OS800は、
サービスプロセッサ113のロギングデータメモリ64
1から故障解析情報を読み出し、発生した障害に応じて
処理を行う。障害発生部位がCPUボードであれば、当
該CPUボードを停止する処理を行い、図11に示すス
ペアCPUボード(#x)153を起動する処理を行
う。
【0128】障害発生部位が、メモリボードやI/Oサ
ブシステムであれば、代替処理が出来ないので、SVP
マネージャ803を通じてユーザインターフェースに障
害情報を表示する(ステップ708)。メモリボードの
障害やディスクコントローラに障害が発生した場合など
には、システムが正常な動作を続けることが出来なくな
る可能性があるため、OS800のシャットダウンが必
要かどうかの判定を行う(ステップ709)。
【0129】OS800によるシステムシャットダウン
処理(ステップ710)では、障害発生の内容やシャッ
トダウン要因等の保守作業に有用となる情報をロギング
データメモリ641へ格納してからシャットダウンを行
う。これによって、システム再起動後の障害解析をより
効果的に行うことができる。
【0130】次に、図13に示すフローチャートを用い
て、サービスプロセッサ113の初期化処理及びSVP
マネージャ803の起動処理の詳細について説明する。
【0131】まず、OS800がSVPドライバ214
を起動すると、SVPドライバ814はハードウエアに
サービスプロセッサ113が組み込まれているかどうか
の検出を行う(ステップ720)。
【0132】続いてテストバスを用いた障害検出を行う
時間間隔を設定するためにタイマ制御レジスタ608及
びタイマ設定レジスタ609を設定する(ステップ72
1)。
【0133】その後、テストアクセスポート制御部60
7とテストアクセスポート602を初期化する(ステッ
プ722)。
【0134】OS800はSVPドライバ814による
初期化作業が終了すると、SVPマネージャ803を起
動する(ステップ723)。SVPマネージャ-803
は、SVPドライバ814またはハードウエア仮想化層
(HAL)817を通じてサービスプロセッサ113上の
ロギングデータメモリ641に格納されている障害情報
や故障解析情報を読み出し、ユーザインターフェースを
通じて出力する(ステップ724)。
【0135】続いて、SVPドライバ814はテストバ
ス選択レジスタ651及びテストモードレジスタ650
を設定し(ステップ725)、スキャンデータメモリ制
御部606を通じて、選択したテストバス及びテストモ
ードに必要なスキャンデータを設定する(ステップ72
6)。この際、システム上のメモリからスキャンテスト
に必要なスキャンデータをスキャンテストメモリ605
へダウンロードしてもよい。
【0136】この後、インターバルタイマ610に故障
診断のための時間間隔を設定する(ステップ727)。
【0137】次に、図14を用いて、図12に述べた上
記サービスプロセッサによる各サブシステム毎の故障・
障害診断について説明する。
【0138】上記した初期化作業において設定したイン
ターバルタイマ610のカウントアップを開始し(ステ
ップ731)、設定値に到達しているかどうかを判定し
(ステップ732)、設定値に達していたならば、上記
初期化作業で設定したテストバス選択レジスタ651、
テストモードレジスタ650の設定値に基づいて、テス
トアクセスポート602を通じてテストバスにコマンド
を発行する(ステップ733)。
【0139】さらに、スキャンテストメモリ605から
テストデータ出力(TDO)627を通じてスキャンデー
タを送出する(ステップ733)。送出したスキャンデ
ータは、チェーン状に接続したスキャンデ−タパスを通
って各CPUボード、メモリボード、I/Oボードに入
力され、テストバスコマンドに基づいてバウンダリスキ
ャン動作が行なわれ、スキャンデータ入力(TDI)62
0を通じてスキャンテストメモリ605へと格納される
(ステップ735)。
【0140】その後、テストアクセスポート制御部60
7がスキャンデータを解析して故障診断を行う(ステッ
プ736)。
【0141】スキャンデータを用いた故障解析動作は、
上記スキャンデータをスキャンテストメモリ605から
システムの主メモリへ読み出して任意のCPUボードが
ソフトウエアで行ってもよい。
【0142】故障診断を任意のCPUボードで行うこと
により、サービスプロセッサ113の構成を簡素化でき
るという効果がある。また、スキャンデータとその解析
アルゴリズムを外部から読み込むことで容易に変更でき
るため、例えばCPUボードを交換して機能強化を図っ
た場合などでも、スキャンデータの変更で故障診断機能
をサポートすることができる。
【0143】さらに、図15に示すフローチャートを用
いて、OSによる障害対策処理及びSVPマネージャに
よるシステム情報の更新処理の詳細を説明する。
【0144】まず、OS800へ障害発生発生が通知さ
れると、OS800はSVPドライバ814またはハー
ドウエア仮想化層(HAL)817を用いてサービスプロ
セッサ(SVP)113のロギングデータメモリ641か
ら障害情報あるいは故障解析情報を読み出す(ステップ
741)。
【0145】続いて、エラー発生箇所の識別を行い、C
PUボードでのエラー発生とCPUボード以外でのエラ
ー発生に大別する(ステップ742)。エラーが発生し
たのがCPUボードである場合には、ハードウエア仮想
化層(HAL)817を参照し、現在動作中のCPUボード
数が1つであるかどうかを確認する(ステップ74
3)。もし、1つである場合には、SVPマネージャ8
03を通じてユーザインターフェースに障害情報を表示
する(ステップ748)。
【0146】複数のCPUボードで動作している場合に
は、OS800のプロセスマネージャ812、仮想メモ
リマネージャ811を用いて障害発生の発生したCPU
ボードへのプロセス割付けを停止しする等の停止処理を
行う(ステップ744)。
【0147】さらに、マルチプロセッサシステムにおい
ては、複数のCPUボード及びキャッシュメモリでデー
タを共有しているため、それらのデータ間で矛盾が生じ
ないように、キャッシュコヒーレンシ維持動作を行う
(ステップ745)。
【0148】キャッシュコヒーレンシ維持動作は、各C
PUボードが持つソフトウエア命令を利用してもよい
し、ハードウエア機能を用いて強制的に行ってもよい。
【0149】そして、システムにスペアCPUボード
(#x)153が備わっている場合には、そのスペアC
PUボード(#x)153を代替CPUボードとして使
用する代替処理を行う(ステップ746)。
【0150】また、障害発生箇所がCPUボード以外で
ある場合には、障害情報から障害の発生した部位(メモ
リボードまたはI/Oボードなど)を特定し(ステップ
747)、SVPマネージャ814を通じてユーザイン
ターフェースにエラー情報を出力する(ステップ74
8)。
【0151】最後に、上記障害対策処理によって変更に
なったシステム構成に関する情報をSVPマネージャ8
03上のシステム構成情報に反映する(ステップ74
9)。
【0152】第4の実施の形態 次に、上記第3の実施形態におけるスロット位置情報レ
ジスタ154を、サービスプロセッサ113内に設けた
場合の第4の実施形態について図16を用いて説明す
る。
【0153】図16において、サービスプロセッサ11
3内に設けたスペアCPUスロット位置情報レジスタ6
43は、コネクタ647を通じて図8に示すスロット位
置情報信号線155に接続されており、スペアCPUボ
ード(#X)153のスロット位置情報として使用され
る。
【0154】スペアCPUスロット位置情報レジスタ6
43は、図12を用いて説明したシステム動作のフロー
チャートにおいて、SVPドライバ814によるサービ
スプロセッサ113の初期化処理(ステップ702)に
おいて初期化してもよいし、オペレーティングシステム
800によるハードウエアの初期化処理(ステップ70
1)において初期化してもよい。
【0155】なお、図16のサービスプロセッサ113
では、スキャンメモリ制御部606に代わってエラー検
出部645が設けられ、このエラー検出部645がスキ
ャンテストメモリ605のスキャンデ−タの読出しおよ
び書き込みを制御し、さらに障害診断を行う。
【0156】第5の実施の形態 次に、サービスプロセッサ113の他の実施形態につい
て図17を用いて説明する。
【0157】図17に示すサービスプロセッサ113
は、テストアクセスポート制御部607の代替手段とし
て、サービスプロセッサ全体を制御するSVP制御CP
U644を設けたものである。
【0158】このSVP制御CPU644は、テストカ
ード内部バス612を通じてフラッシュROM645に
格納されたプログラムをRAM646上に読み出し、そ
のプログラムに基づいてサービスプロセッサ113の動
作を制御する。
【0159】フラッシュRPM645は書き換えが可能
であるため、CPUボードの更新などによりシステム構
成が変更された場合でも、サービスプロセッサ113の
テスト機能を柔軟に変更することができるという利点が
ある。
【0160】
【発明の効果】以上説明したように、本発明によれば、
各プロセッサまたはプロセッサを含むサブシステム毎に
ハードウエア手段にて故障診断を定期的に行うことが出
来るので、システム都しての動作を停止させることな
く、プロセッサに発生した障害を早期に検出し、オペレ
ーティングシステムの誤動作やシステムダウンを防ぐこ
とができる。
【0161】また、故障診断のためのハードウエア手段
にバウンダリスキャン方式を採用したことにより、オペ
レーティングシステムのシステムダウンを引き起こさな
いような軽微な障害についても予防的に障害を検出する
ことができる。
【0162】また、明確な原因が不明のままシステムの
動作が不安定になった場合にも、オペレーティングシス
テムを動作させたままバウンダリスキャンにて故障診断
を行うことができるので、動作不安定要因の的確な調査
を行うことができる。
【0163】従って、マルチプロセッサ方式のサーバ装
置を構成した場合、通常のサービス機能を維持したまま
故障診断を行うことになるため、ユーザに対するサービ
スが低下することはない。同時に、予防的に定期的に故
障診断を行っているため、高い信頼性を維持することが
できる。
【0164】また、故障したプロセッサまたはプロセッ
サを含むサブシステムをシステムバスまたはマルチプロ
セッサバスから電気的に切り離し、代替プロセッサを起
動する作業をオペレーティングシステムから制御できる
ので、プロセッサに障害が発生した際の保守作業を遠隔
制御によって行うことができ、代替プロセッサを起動す
ることにより、システムの性能の低下を防止できるとい
う効果がある。
【図面の簡単な説明】
【図1】本発明を適用したマルチプロセッサシステムの
第1の実施形態を示すシステム構成図である。
【図2】図1におけるCPUボードの詳細構成を示すブ
ロック図である。
【図3】図1におけるメモリボードの詳細構成を示すブ
ロック図である。
【図4】図1におけるメモリボードの他の構成例を示す
ブロック図である。
【図5】図1におけるI/Oボードの詳細構成を示すブ
ロック図である。
【図6】図1におけるサービスプロセッサの詳細構成を
示すブロック図である。
【図7】本発明を適用したマルチプロセッサシステムの
第2の実施形態を示すシステム構成図である。
【図8】本発明を適用したマルチプロセッサシステムの
第3の実施形態を示すシステム構成図である。
【図9】図8におけるCPUボードの詳細構成を示すブ
ロック図である。
【図10】図8におけるスペアCPUボードの詳細構成
を示すブロック図である。
【図11】第3の実施形態におけるオペレーティングシ
ステムの構成を示すブロック図である。
【図12】第3の実施形態におけるオペレーティングシ
ステム(OS)の動作を表すフローチャートである。
【図13】サービスプロセッサの初期化処理を表すフロ
ーチャートである。
【図14】サービスプロセッサの故障診断処理を表すフ
ローチャートである。
【図15】オペレーティングシステムによる障害対策処
理を表すフローチャートである。
【図16】本発明の第4の実施形態におけるサービスプ
ロセッサの構成を示すブロック図である。
【図17】本発明の第5の実施形態におけるサービスプ
ロセッサの構成を示すブロック図である。
【符号の説明】
101…CPUボード#1、102…CPUボード#2,
103…CPUボード#n、107…システムバス、1
08…I/Oバス、109…メモリボード、112…I
/Oボード、113…サービスプロセッサ、120…テ
スト・データ入力信号(TDI)、121…テスト・クロッ
ク信号(TCK)、127…テスト・データ出力信号(TD
O)、153…スペアCPUボード#X、154…スロット
位置情報レジスタ、201…CPU、202…キャッシ
ュメモリ、203…バスI/F、204…CPUバス、
210…テスト・データ入力信号(TDI)、211…テス
ト・クロック信号(TCK)、215…テスト・データ出力
信号(TDO)、216…テスト・モード選択信号(TMS)、
301…メモリモジュール、602…テスト・アクセス
・ポート、605…スキャンテストメモリ、606…ス
キャンメモリ制御部、607…テストアクセスポート制
御部、608…タイマ制御レジスタ、609…タイマ設
定レジスタ、610…インターバル・タイマ、612…
テストカード内部バス、640…ロギングメモリ制御
部、641…ロギングデータメモリ、643…スペアC
PUスロット位置情報レジスタ。

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】 LSI内部の故障診断を行うためのテス
    ト信号を入力するテストアクセスポートを有する複数の
    CPUおよびメモリ等の周辺装置とを有するマルチプロ
    セッサシステムの保守方法であって、 前記CPUおよび周辺装置の故障診断を行うためのテス
    トデ−タを格納したテストデ−タメモリと、前記CPU
    および周辺装置のアクセスポートを通じて前記テストデ
    −タメモリから読み出したテストデ−タを入力するアク
    セスポートコントローラとをマルチプロセッサシステム
    内に設け、前記テストデ−タメモリからテストデ−タを
    予め設定した時間間隔で定期的に読出し、該テストデ−
    タを前記アクセスポートを通じて複数のCPUおよびそ
    の周辺装置に入力することにより、これら複数のCPU
    および周辺装置の内部論理をスキャンし、そのスキャン
    結果のデ−タに基づいて前記複数のCPUおよびその周
    辺装置の故障診断を行うことを特徴とするマルチプロセ
    ッサシステムの保守方法。
  2. 【請求項2】 前記アクセスポートコントローラは、診
    断対象を選択設定する選択レジスタと、故障診断動作の
    モードを選択するテストモードレジスタとを有し、これ
    らのレジスタに対し、マルチプロセッサシステムで動作
    するオペレーティングシステムから設定された診断対象
    と故障診断動作のモードに従って診断対象の選択とテス
    トデ−タの入出力を行うことを特徴とする請求項1記載
    のマルチプロセッサシステムの保守方法。
  3. 【請求項3】 LSI内部の故障診断を行うためのテス
    ト信号を入力するテストアクセスポートを有する複数の
    CPUおよびメモリ等の周辺装置とを有するマルチプロ
    セッサシステムの保守方法であって、 前記CPUおよび周辺装置の故障診断を行うためのテス
    トデ−タを格納したテストデ−タメモリをマルチプロセ
    ッサシステム内に設け、マルチプロセッサシステム上で
    動作するオペレーティングシステムにより前記テストデ
    −タメモリからテストデ−タを予め設定した時間間隔で
    定期的に読出し、該テストデ−タを前記アクセスポート
    を通じて複数のCPUおよびその周辺装置に入力するこ
    とにより、これら複数のCPUおよび周辺装置の内部論
    理をスキャンし、そのスキャン結果のデ−タに基づいて
    前記複数のCPUおよびその周辺装置の故障診断を行う
    ことを特徴とするマルチプロセッサシステムの保守方
    法。
  4. 【請求項4】 前記複数のCPUのうちいずれかのCP
    Uに、前記スキャン結果のデ−タに基づく故障診断処理
    を行わせることを特徴とする請求項1ないし3記載のい
    ずれかのマルチプロセッサシステムの保守方法。
  5. 【請求項5】 前記テストデ−タメモリに格納するテス
    トデータは、マルチプロセッサシステムの主メモリから
    ダウンロードすることを特徴とする請求項1ないし4記
    載のいずれかのマルチプロセッサシステムの保守方法。
  6. 【請求項6】 前記アクセスポートは、IEEE114
    9.1標準規格によって定められたバウンダリスキャン
    テスト方法に準拠したものであり、前記複数のCPUお
    よび周辺装置の各アクセスポートをチェーン状に接続し
    ておき、故障診断のためのテストデ−タはチェーン接続
    の最前段のアクセスポートに入力することを特徴とする
    請求項1ないし5記載のいずれかのマルチプロセッッサ
    システムの保守方法。
  7. 【請求項7】 前記アクセスポートは、IEEE114
    9.1標準規格によって定められたバウンダリスキャン
    テスト方法に準拠したものであり、前記複数のCPUお
    よび周辺装置の各アクセスポートを前記アクセスポート
    コントローラのテストデ−タ出力端子および入力端子に
    並列に接続しておき、アクセスポートコントローラから
    出力する選択信号によって前記複数のCPUおよび周辺
    装置のうちいずれかを診断対象に選択した後、前記テス
    トデ−タをアクセスポートコントローラから出力し、選
    択した診断対象から出力されるスキャン結果のデ−タに
    基づき、選択した診断対象のみの故障診断を行うことを
    特徴とする請求項1,2,5,6,7記載のいずれかの
    マルチプロセッッサシステムの保守方法。
  8. 【請求項8】 LSI内部の故障診断を行うためのテス
    ト信号を入力するテストアクセスポートを有する複数の
    CPUボードと、前記複数のCPUボードのそれぞれを
    システムバスに接続し、かつ固有の物理位置情報が設定
    された複数のコネクタを有するマルチプロセッサシステ
    ムの保守方法であって、 通常時はシステム動作を行わないスペアCPUボード
    と、このスペアCPUボードを前記システムバスに接続
    するスペアコネクタと、前記CPUボードの故障診断を
    行うためのテストデ−タを格納したテストデ−タメモリ
    と、前記CPUボードのアクセスポートを通じて前記テ
    ストデ−タメモリから読み出したテストデ−タを入力す
    るアクセスポートコントローラとをマルチプロセッサシ
    ステム内に設け、前記テストデ−タメモリからテストデ
    −タを予め設定した時間間隔で定期的に読出し、該テス
    トデ−タを前記アクセスポートを通じて複数のCPUボ
    ードに入力することにより、これら複数のCPUボード
    の内部論理をスキャンし、そのスキャン結果のデ−タに
    基づいて前記複数のCPUボードの故障診断を行い、い
    ずれかのCPUボードの障害を検出したならば、この障
    害CPUボードをシステムバスに接続するコネクタに設
    定されていた物理位置情報を前記スペアコネクタの物理
    位置情報として設定し、障害が検出されたCPUボード
    をシステムバスから切離し、障害が検出されたCPUボ
    ードの動作をスペアCPUボードに代行させることを特
    徴とするマルチプロセッサシステムの保守方法。
  9. 【請求項9】 前記テストデ−タを読み出すための時間
    間隔の値は、オペレーティングシステムが設定すること
    を特徴とする請求項1ないし8記載のいずれかのマルチ
    プロセッサシステムの保守方法。
JP8163986A 1996-06-25 1996-06-25 マルチプロセッサシステムの保守方法 Pending JPH1011319A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8163986A JPH1011319A (ja) 1996-06-25 1996-06-25 マルチプロセッサシステムの保守方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8163986A JPH1011319A (ja) 1996-06-25 1996-06-25 マルチプロセッサシステムの保守方法

Publications (1)

Publication Number Publication Date
JPH1011319A true JPH1011319A (ja) 1998-01-16

Family

ID=15784592

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8163986A Pending JPH1011319A (ja) 1996-06-25 1996-06-25 マルチプロセッサシステムの保守方法

Country Status (1)

Country Link
JP (1) JPH1011319A (ja)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004145866A (ja) * 2002-10-03 2004-05-20 I-O Data Device Inc ハードディスク管理装置
JP2008003652A (ja) * 2006-06-20 2008-01-10 Hitachi Ltd 回路基板の診断方法、回路基板およびcpuユニット
JP2009003775A (ja) * 2007-06-22 2009-01-08 Toshiba Corp 制御装置
JP2009087327A (ja) * 2007-08-14 2009-04-23 Kofukin Seimitsu Kogyo (Shenzhen) Yugenkoshi グラフィックカードのテスト方法
US7574581B2 (en) 2003-04-28 2009-08-11 International Business Machines Corporation Cross-chip communication mechanism in distributed node topology to access free-running scan registers in clock-controlled components
JP2009205362A (ja) * 2008-02-27 2009-09-10 Nec Corp コンピュータ装置、コンピュータ装置の運用継続方法及びプログラム
JP2009289234A (ja) * 2008-06-02 2009-12-10 Fujitsu Ltd 情報処理装置、エラー通知プログラム、エラー通知方法
WO2011070638A1 (ja) 2009-12-07 2011-06-16 富士通株式会社 情報システム
CN102187318A (zh) * 2008-10-16 2011-09-14 罗伯特·博世有限公司 用于在具有至少两个计算机芯的计算单元中对计算机芯进行测试的方法和装置
JP2012247978A (ja) * 2011-05-27 2012-12-13 Toyota Motor Corp 制御装置及び制御方法
JPWO2012172682A1 (ja) * 2011-06-17 2015-02-23 富士通株式会社 演算処理装置及び演算処理装置の制御方法
EP2930524A1 (en) 2014-04-11 2015-10-14 Renesas Electronics Corporation Semiconductor device, diagnostic test, and diagnostic test circuit
JP2018163539A (ja) * 2017-03-27 2018-10-18 日本電気株式会社 自己診断方法および自己診断プログラム

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004145866A (ja) * 2002-10-03 2004-05-20 I-O Data Device Inc ハードディスク管理装置
US7574581B2 (en) 2003-04-28 2009-08-11 International Business Machines Corporation Cross-chip communication mechanism in distributed node topology to access free-running scan registers in clock-controlled components
JP2008003652A (ja) * 2006-06-20 2008-01-10 Hitachi Ltd 回路基板の診断方法、回路基板およびcpuユニット
US7870428B2 (en) 2006-06-20 2011-01-11 Hitachi, Ltd. Method of diagnosing circuit board, circuit board, and CPU unit
JP2009003775A (ja) * 2007-06-22 2009-01-08 Toshiba Corp 制御装置
JP2009087327A (ja) * 2007-08-14 2009-04-23 Kofukin Seimitsu Kogyo (Shenzhen) Yugenkoshi グラフィックカードのテスト方法
JP2009205362A (ja) * 2008-02-27 2009-09-10 Nec Corp コンピュータ装置、コンピュータ装置の運用継続方法及びプログラム
JP2009289234A (ja) * 2008-06-02 2009-12-10 Fujitsu Ltd 情報処理装置、エラー通知プログラム、エラー通知方法
JP2012506081A (ja) * 2008-10-16 2012-03-08 ローベルト ボッシュ ゲゼルシャフト ミット ベシュレンクテル ハフツング 少なくとも2つのプロセッサコアを有する演算ユニットにおいてプロセッサコアを検査する方法及び装置
CN102187318A (zh) * 2008-10-16 2011-09-14 罗伯特·博世有限公司 用于在具有至少两个计算机芯的计算单元中对计算机芯进行测试的方法和装置
US9740584B2 (en) 2008-10-16 2017-08-22 Robert Bosch Gmbh Method and device for testing a computer core in a processor having at least two computer cores
WO2011070638A1 (ja) 2009-12-07 2011-06-16 富士通株式会社 情報システム
US8738829B2 (en) 2009-12-07 2014-05-27 Fujitsu Limited Information system for replacing failed I/O board with standby I/O board
JP2012247978A (ja) * 2011-05-27 2012-12-13 Toyota Motor Corp 制御装置及び制御方法
JPWO2012172682A1 (ja) * 2011-06-17 2015-02-23 富士通株式会社 演算処理装置及び演算処理装置の制御方法
EP2930524A1 (en) 2014-04-11 2015-10-14 Renesas Electronics Corporation Semiconductor device, diagnostic test, and diagnostic test circuit
JP2015206785A (ja) * 2014-04-11 2015-11-19 ルネサスエレクトロニクス株式会社 半導体装置、診断テスト方法及び診断テスト回路
US9810738B2 (en) 2014-04-11 2017-11-07 Renesas Electronics Corporation Semiconductor device, diagnostic test, and diagnostic test circuit
EP3264117A1 (en) 2014-04-11 2018-01-03 Renesas Electronics Corporation Semiconductor device, diagnostic test, and diagnostic test circuit
US10520549B2 (en) 2014-04-11 2019-12-31 Renesas Electronics Corporation Semiconductor device, diagnostic test, and diagnostic test circuit
JP2018163539A (ja) * 2017-03-27 2018-10-18 日本電気株式会社 自己診断方法および自己診断プログラム

Similar Documents

Publication Publication Date Title
US6282596B1 (en) Method and system for hot-plugging a processor into a data processing system
US6122756A (en) High availability computer system and methods related thereto
US7676694B2 (en) Managing system components
US6463550B1 (en) Computer system implementing fault detection and isolation using unique identification codes stored in non-volatile memory
US9405650B2 (en) Peripheral component health monitoring apparatus
US7478299B2 (en) Processor fault isolation
US5764882A (en) Multiprocessor system capable of isolating failure processor based on initial diagnosis result
US6134579A (en) Semaphore in system I/O space
US6158015A (en) Apparatus for swapping, adding or removing a processor in an operating computer system
CN100375960C (zh) 用于调试输入/输出故障的方法和系统
JPH1011319A (ja) マルチプロセッサシステムの保守方法
US6725396B2 (en) Identifying field replaceable units responsible for faults detected with processor timeouts utilizing IPL boot progress indicator status
US10762029B2 (en) Electronic apparatus and detection method using the same
US6108732A (en) Method for swapping, adding or removing a processor in an operating computer system
US6732298B1 (en) Nonmaskable interrupt workaround for a single exception interrupt handler processor
US6976191B2 (en) Method and apparatus for analyzing hardware errors in a logical partitioned data processing system
US8032791B2 (en) Diagnosis of and response to failure at reset in a data processing system
US20160179626A1 (en) Computer system, adaptable hibernation control module and control method thereof
TWI410792B (zh) 用於自動識別組件之方法、資料處理系統及電腦程式產品
KR100188170B1 (ko) 회로소자 상태의 진단 장치 및 그 방법, 디지탈 프로세서 시스템
US11494289B2 (en) Automatic framework to create QA test pass
US6934888B2 (en) Method and apparatus for enhancing input/output error analysis in hardware sub-systems
US8010838B2 (en) Hardware recovery responsive to concurrent maintenance
US7650530B2 (en) Initializing a processing system to ensure fail-safe boot when faulty PCI adapters are present
US7302690B2 (en) Method and apparatus for transparently sharing an exception vector between firmware and an operating system

Legal Events

Date Code Title Description
EXPY Cancellation because of completion of term