(57)【要約】【課題】本発明は、相互に通信を行なう複数のモジュールを有する信号処理装置における不良モジュールを検出する不良モジュール検出方法に関し、不良モジュールを容易に検出する。【解決手段】通信障害の発生を監視して、通信障害が発生する度に、今回の通信に関与したモジュールの通信障害発生数を加算することにより、モジュールごとの通信障害発生数を計数する計数ステップと、計数ステップで得られたモジュールごとの計数値に基づいて不良モジュールを検出する検出ステップとを有する。【選択図】        図３
2008003646.tif 000002
【特許請求の範囲】
【請求項１】
相互に通信を行なう複数のモジュールを有する信号処理装置における不良モジュールを検出する不良モジュール検出方法において、
通信障害の発生を監視して、通信障害が発生した際に、今回の通信に関与したモジュールの通信障害発生数をモジュールごとに計数する計数ステップと、
前記計数ステップで得られたモジュールごとの計数値に基づいて不良モジュールを検出する検出ステップとを有することを特徴とする不良モジュール検出方法。
【請求項２】
前記信号処理装置が、前記複数のモジュール相互間で通信を行なうための通信路を複数備えたものであって、
前記計数ステップが、通信障害発生数を、モジュールごと、かつ、通信路ごとに計数するステップであることを特徴とする請求項１記載の不良モジュール検出方法。
【請求項３】
前記検出ステップが、通信不良発生数が所定数を越えるモジュールの使用を停止させた上で前記信号処理装置の稼動を続行させ、該モジュールの使用停止後の通信障害発生数が所定数を下回ることをもって、該モジュールを不良モジュールとして検出するステップであることを特徴とするものであることを特徴とする請求項１記載の不良モジュール検出方法。
【請求項４】
前記計数ステップが、モジュールごとの通信障害発生の計数値を、繰り返し発生する所定のタイミングごとにクリアして、新たに計数を開始するものであることを特徴とする請求項１記載の不良モジュール検出方法。
【請求項５】
相互に通信を行なう複数のモジュールを有する信号処理装置において、
通信障害の発生を監視して、通信障害発生に応じて、通信に関与したモジュールの通信障害発生数をモジュールごとに計数する計数部と、
前記計数部で得られたモジュールごとの計数値に基づいて不良モジュールを検出する検出部とを備えたことを特徴とする信号処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、相互に通信を行なう複数のモジュールを有する信号処理装置、およびその信号処理装置における不良モジュールを検出する不良モジュール検出方法に関する。
【背景技術】
【０００２】
例えば通信の分野において信号の伝送を担う信号伝送装置等には、相互に通信を行なう複数のプロセッサモジュールを備えたＦＴ（フォールトトレラント：耐故障に優れている）機能を有するマルチプロセッサシステムが搭載されている。
【０００３】
図１は、ＦＴ機能を有するマルチプロセッサシステムの一例を示す図である。
【０００４】
この図１に示すマルチプロセッサシステム１０には、複数（ここではｎ＋１個）のプロセッサモジュール（ＰＭ）１１＿０，１１＿１，…，１１＿ｎと、二重化されたシステム制御モジュール（ＳＣＭ）１２＿０，１２＿１と、二重化された共用メモリモジュール（ＳＳＭ）１３＿０，１３＿１と、二重化されたシステムバス１４＿０，１４＿１と、二重化されたメンテナンスバス１５＿０，１５＿１と、二重化された通信アダプタ１６＿０，１６＿１を備えている。
【０００５】
複数のＰＭ１１＿０，１１＿１，…，１１＿ｎは、システムバス１４＿０，１４＿１を介して相互に通信を行ないながら、このマルチプロセッサシステム１０における信号処理を分担して実行する。このマルチプロセッサシステム１０における信号処理の内容は、如何なる内容であってもよく、ここでは、その信号処理の内容には触れないものとする。二重化されたＳＣＭ１２＿０，１２＿１は、ＰＭ間通信の監視やこのマルチプロセッサシステム１０の全体の制御を担っている。これらのＳＣＭ１２＿０，１２＿１は、相互に連絡をとりながら各メンテナンスバス１５＿０，１５＿１を介してこのマルチプロセッサシステム１０の各部の制御を行なっている。
【０００６】
また、二重化されたＳＳＭ１３＿０，１３＿１は、一方のマスタＳＳＭ１３＿０への書き込みがもう一方のスレーブＳＳＭ１３＿１にも記録され、データを二重化して保存するものである。ただしマスタＳＳＭ１３＿０が故障したときは、ソフトウェア制御により、もう一方のスレーブＳＳＭ１３＿１がマスタＳＳＭとなり業務を継続する。
【０００７】
さらに、二重化された通信アダプタ１６＿０，１６＿１は、上位のホスト（図示せず）との間の通信を担っている。
【０００８】
この図１に示すようなマルチプロセッサシステム１０の場合、各要素が二重化あるいは多重化されているため、故障に対する耐性に優れている。
【０００９】
しかしながら、図１に示すようなマルチプロセッサシステム１０においては、あるＰＭが例えば他のＰＭに対してアクセスしてタイムアウトやパリティエラーが発生しても故障箇所を特定するのが困難であるという問題がある。
【００１０】
このため従来は、故障情報を記録しておいてその故障情報から被疑箇所を推定し、推定した部品を保守部品と交換するなどにより被疑箇所を切り分けたり、専用のテストプログラムを実行させて切り分けるなどの手法を用いていたが、推定に誤りがあって故障から回復させることができず、さらに別の箇所について保守部品を交換する必要を生じるなど非効率的である。また、故障が間欠的なものであると、専用のテストプログラムを実行させるためにシステムの電源を一旦切断すると二度と再現しなくなり、推定で被疑部品を交換せざるを得ず、極めて不確実な対応が採られることになる。
【００１１】
特許文献１には、バスを監視してバス上の信号値を記録する履歴記憶手段を設けることが提案されており、特許文献２には、バス監視機構を設けエラーを検出した場合にエラー情報を送出することが提案されている。
【００１２】
しかしながら履歴情報が残っていたりエラー情報の通知を受けても、上記のとおり、例えば送信側と受信側のどちらが不良なのか切り分けが難しいなど、故障箇所の特定は困難である。
【特許文献１】特開平７−２３０４３２号公報
【特許文献２】特開昭５７−１６８３１８号公報
【発明の開示】
【発明が解決しようとする課題】
【００１３】
本発明は、上記事情に鑑み、相互に通信を行なう複数のモジュールを有する信号処理装置において不良モジュールを容易に検出する不良モジュール検出方法、および、不良モジュールを容易に検出する手段を有する信号処理装置を提供することを目的とする。
【課題を解決するための手段】
【００１４】
上記目的を達成する本発明の信号処理装置は、相互に通信を行なう複数のモジュールを有する信号処理装置における不良モジュールを検出する不良モジュール検出方法において、
通信障害の発生を監視して、通信障害が発生した際に、今回の通信に関与したモジュールの通信障害発生数をモジュールごとに計数する計数ステップと、
計数ステップで得られたモジュールごとの計数値に基づいて不良モジュールを検出する検出ステップとを有することを特徴とする。
【００１５】
本発明の不良モジュール検出方法は、障害が発生した通信に関与したモジュールの通信障害発生数を各モジュールごとに計数しておいて、その計数値に基づいて不良モジュールを検出するものであり、不良モジュールを容易に切り分けることができる。
【００１６】
ここで、本発明の不良モジュール検出方法において、上記信号処理装置が、複数のモジュール相互間で通信を行なうための通信路を複数備えたものであって、
上記計数ステップが、通信障害発生数を、モジュールごと、かつ、通信路ごとに計数するステップであってもよい。
【００１７】
こうすることにより、不良モジュールを一層明確に切り分けることができる。
【００１８】
さらに、本発明の不良モジュール検出方法において、上記検出ステップは、通信不良発生数が所定数を越えるモジュールの使用を停止させた上で信号処理装置の稼動を続行させ、そのモジュールの使用停止後の通信障害発生数が所定数を下回ることをもって、そのモジュールを不良モジュールとするものであることが好ましい。
【００１９】
具体的には、例えばこのような手法を採用することにより、不良モジュールを容易かつ確実に検出することができる。
【００２０】
さらに、本発明の不良モジュール検出方法において、上記計数ステップが、モジュールごとの通信障害発生の計数値を、繰り返し発生する所定のタイミングごとにクリアして、新たに計数を開始するものであることが好ましい。
【００２１】
このようにして計数を繰り返すことで、不良の発生状況の把握が一層容易となる。
【００２２】
また、上記目的を達成する本発明の信号処理装置は、相互に通信を行なう複数のモジュールを有する信号処理装置において、
通信障害の発生を監視して、通信障害発生に応じて、通信に関与したモジュールの通信障害発生数をモジュールごとに計数する計数部と、
上記計数部で得られたモジュールごとの計数値に基づいて不良モジュールを検出する検出部とを有することを特徴とする。
【００２３】
尚、本発明の信号処理装置には、上記の本発明の不良モジュール検出方法の各種態様を実施する構成を有する各種態様の信号処理装置の全てが含まれる。
【発明の効果】
【００２４】
以上のとおり、本発明によれば、不良モジュールを容易に検出することができる。
【発明を実施するための最良の形態】
【００２５】
以下、本発明の実施形態について説明する。
【００２６】
ここでは、図１を、そのまま、本発明の信号処理装置の一実施形態としてのマルチプロセッサシステムとして流用して説明する。
【００２７】
この図１は、基本的には、前述したとおりであるが、一部補足しておく。複数のＰＭ１１＿０，１１＿１，…，１１＿ｎは、ホルトさせて再起動することにより信号処理を分担しない待機状態となり、さらに、このシステムから切り離すことにより、物理的にはそこに存在するもののこのシステムからは一切見えない状態とすることができる。待機状態にあるＰＭは、このシステムの信号処理を分担する現用のＰＭに復帰することができる。
【００２８】
またＳＣＭ１２＿０，１２＿１は、マスタ／スレーブの二重化で構成され、予測制御等のシステム制御機能とバス制御機能とを持ち、マスタＳＣＭ１２−０が故障したときはスレーブＳＣＭ１２−１がマスタＳＣＭとなって業務を継続する。また、ＳＣＭ１２＿０，１２＿１は、ＰＭ１１＿０，１１＿１，…，１１＿ｎにアクセスしたりＳＣＭ相互間でアクセスするための専用のメンテナンスバス１５＿０，１５＿１を有する。
【００２９】
図２は、各ＰＭの各システムバスごとの通信障害発生回数を記録したテーブルの一例を示す図である。
【００３０】
このテーブルは、ＳＳＭ１３＿０，１３＿１内に領域が用意されている。
【００３１】
ＳＣＭ１２＿０，１２＿１は、ＰＭ間通信を監視し、通信の異常を認識したら、メンテナンスバス１５＿０，１５＿１を介して、図２に示すテーブル中の、発信元のＰＭと受信先のＰＭの、今回の通信において使用したシステムバス側の欄に、それぞれ１を加算することにより、そのテーブルを更新する。またＰＭ１１＿０，１１＿１，…，１１＿ｎも、他のＰＭとの通信の失敗時に、図２のテーブル中の自ＰＭと受信先のＰＭの、今回の通信に使用したシステムバス側の欄に、両系のシステムバス１４＿０，１４＿１を使用して１を加算する。
【００３２】
ＳＣＭ１２＿０，１２＿１は、図２に示すテーブルの内容を一定時間Ｔｍｓごとにチェックし、図２のテーブルの内容を、ＳＳＭ内のログエリアに格納し、異常の回数が規定回数（ｍ回）以上のＰＭがあった場合には、そのＰＭをホルト／再起動する。そうすると、当該ＰＭは、再起動後は待機ＰＭとなり、それまで待機ＰＭとなっていたＰＭが現用ＰＭに復帰して業務が継続される。
【００３３】
ホルトの対象となるＰＭが同時に複数台あった場合は、最若番のＰＭをホルト／再起動する。当該ＰＭを再起動後、ＳＣＭは図２のテーブルを０クリアする。
【００３４】
ＳＣＭは、上記のＰＭのホルト／再起動後の図２のテーブルの内容のチェック時、異常の回数が規定以上となっているホルト対象のＰＭがない場合は、前回のホルト／再起動したＰＭが障害要因と判断してシステムから切り離す（再びホルト／再起動させない）。あるＰＭをホルト／再起動したにもかかわらず、まだ異常の回数が規定以上のＰＭがあった場合（システムバスの故障が復旧していない場合）は、図２のテーブルでホルトの対象となる別のＰＭのホルト／再起動を行なう。
【００３５】
図２のテーブルのチェックにより全てのＰＭに対してホルト／再起動しても、異常の回数が規定以上発生する場合は、ＳＣＭ自身が障害要因と判断する。ログ領域のログを参照し、異常発生回数の多いシステムバスに接続されたＳＣＭをシステムより切り離し、上位のホストに向けて、切り離した被疑部品と保守部品との交換をオペレータに指示するための通知を行なう。
【００３６】
図３は、ＳＣＭで実行される、上記の処理を示したフローチャートである。
【００３７】
ＰＭ間通信がチェックされ（ステップＳ１）、異常の有無が検出される（ステップＳ２）。通信異常が検出されると、図２に示す、ＳＳＭ内のテーブルの、送信側ＰＭ、受信側ＰＭの双方であって、今回の通信に使用したシステムバスに対応する欄の数値が１ずつ加算される（ステップＳ３）。
【００３８】
上記のステップＳ１〜Ｓ３を繰り返し、規定時間Ｔｍｓが経過すると（ステップＳ４）、図２に示す、ＳＳＭ内のＰＭ通信結果を示すテーブルがチェックされる（ステップＳ５）。ここでは、そのテーブルの内容がＳＣＭ内のログエリア内に格納され（ステップＳ６）、ＳＳＭ内のＰＭ間通信結果（図２のテーブル）が０クリアされた上で（ステップＳ７）、ステップＳ５でのチェック効果に基づいて以下の処理がなされる。
【００３９】
すなわち異常発生回数が規定回数以上のＰＭの存在が判定され（ステップＳ８）、異常発生回数が規定回数以上のＰＭが今回は存在しないときは、過去において異常発生回数が多かったことから既に、ホルト／再起動により待機ＰＭとなっているＰＭが存在するか否かが判定され（ステップＳ９）、過去のホルト／再起動により待機ＰＭとなっているＰＭが存在するときはそのＰＭがシステムより切り離され（ステップＳ１０）、上位のホストに向けてそのＰＭをシステムより切り離したことが通知される（ステップＳ１４）。ステップＳ９において過去にホルト／再起動されたＰＭが存在しないと判定されたときは、ステップＳ１に戻りＰＭ間通信チェックが続行される。
【００４０】
ステップＳ８において、異常発生回数が規定回数以上のＰＭが存在すると判定されると、既に、異常発生回数が規定回数以上のＰＭのうちの全てのＰＭを一旦ホルト／再起動させたかどうか、すなわち、未だ待機状態に移行していない現用のままのＰＭが存在しないかどうかが判定され（ステップＳ１１）、未だ待機状態になっていないＰＭをホルト／再起動により待機ＰＭとし（ステップＳ１２）、その旨がホストに報告され（ステップＳ１４）、ＰＭ間通信チェックに戻る。ステップＳ１１で、既に全てのＰＭが一旦は待機ＰＭとなっていた場合、すなわち、どのＰＭを待機ＰＭに移行させても通信異常の発生が収束しなかったときは、今度は、異常回数の多いシステムバスに接続されたＳＣＭがホルトされ（ステップＳ１３）、その旨ホストに報告される（ステップＳ１４）。
【００４１】
上記の実施形態を実施する前の、図１に示すような従来のシステムの場合、例えば、バス障害が発生したとき、障害が発生したバスを閉塞して使用出来ないようにすることで、システムとしてはもう一方のバスを使用して運用を維持することが出来る。しかしながら、以降の故障による影響の拡大を回避するためには故障箇所の特定と故障部品の交換が必要であるため、運用終了後等に改めて専用のテストプログラム等を使用して故障箇所の切り分けを実施する必要があった。
【００４２】
また、故障が間欠の場合、システムの電源をオフ／オンすることで発生しなくなる可能性が高く、切り分けのために一旦システムの電源をオフしてしまうと二度と再現しないことが殆どであった。従って、残っているロギング情報から、推定により被疑部品を特定して交換するなど、不確実な対処をせざるを得ない場合があった。
【００４３】
これに対し、上記の実施形態によると、障害が発生した時点でシステムを停止させることなく、被疑部品の切り分けと自動復旧の確率が向上するというメリットがある。
【００４４】
尚、本発明は、マルチプロセッサモジュールを通信に利用したシステムのみに適用されるものではなく、分野を問わず適用することができる。
【図面の簡単な説明】
【００４５】
【図１】ＦＴ機能を有するマルチプロセッサシステムの一例を示す図である。
【図２】各ＰＭの各システムバスごとの通信障害発生回数を記録したテーブルの一例を示す図である。
【図３】ＳＣＭで実行されるフローチャートである。
【符号の説明】
【００４６】
１０    マルチプロセッサシステム
１１＿０，１１＿１，…，１１＿ｎ    プロセッサモジュール（ＰＭ）
１２＿０，１２＿１    システム制御モジュール（ＳＣＭ）
１３＿０，１３＿１    共用メモリモジュール（ＳＳＭ）
１４＿０，１４＿１    システムバス
１５＿０，１５＿１    メンテナンスバス
１６＿０，１６＿１    通信アダプタ
【図１】
2008003646.tif 000003
【図２】
2008003646.tif 000004
【図３】
2008003646.tif 000005