(57)【要約】【課題】  専用インタフェースによって収集されたデータを用いて、障害、すなわち異常状態からの復旧を自動的に行い、安定した通信を可能とする。【解決手段】  データ転送装置１が、自装置内で通信プロトコルを制御する回路の制御状態を監視して、該状態のデータを収集する手段３と、収集された状態データに基づいてデータ転送の異常状態を検出する手段４とを備える。【選択図】図１
2005333255.tif 000002
【特許請求の範囲】
【請求項１】
通信相手装置との間でデータ転送を行う装置であって、
自装置内で通信プロトコルを制御する回路の制御状態を監視して、該状態のデータを収集するデータ収集手段と、
該収集された状態データに基づいて、データ転送の異常状態を検出する異常状態検出手段とを備えることを特徴とするデータ転送装置。
【請求項２】
前記データ収集手段が、前記収集したデータを記憶する状態データ記憶手段をさらに備えることを特徴とする請求項１記載のデータ転送装置。
【請求項３】
前記データ収集手段が、前記異常状態検出手段からのアドレス指定の入力に対応して、前記状態データ記憶手段上で指定されたアドレスの状態データを該異常状態検出手段に与えると共に、
該データ収集手段が、該アドレス指定の入力信号から雑音成分を除去する雑音除去手段をさらに備えることを特徴とする請求項２記載のデータ転送装置。
【請求項４】
前記異常状態検出手段が、前記データ収集手段によって収集されたデータに対応して異常状態への対処方法を記憶する対処方法記憶手段をさらに備えることを特徴とする請求項１記載のデータ転送装置。
【請求項５】
前記異常状態への対処方法の決定、および該対処方法の実行に対する制御を行うソフトウェア手段をさらに備えることを特徴とする請求項４記載のデータ転送装置。
【請求項６】
前記異常状態検出手段によって異常状態が検出されたとき、あらかじめ準備されている復帰試行手順に従って、順次復帰試行を実行する復帰試行手段をさらに備えることを特徴とする請求項１記載のデータ転送装置。
【請求項７】
前記復帰試行手段によって前記復帰試行手順のすべてが実行された後に異常状態が解消されないとき、前記相手装置との通信を切断する通信切断手段をさらに備えることを特徴とする請求項６記載のデータ転送装置。
【請求項８】
通信相手装置との間で行われるデータ転送の異常状態を検出する方法であって、
自装置内で通信プロトコルを制御する回路の制御状態を監視して、該状態のデータを収集し、
該収集された状態データに基づいて、データ転送の異常状態を検出することを特徴とするデータ転送異常状態検出方法。
【請求項９】
通信相手装置との間でデータ転送を行う装置内でデータ転送の異常状態を検出する計算機によって使用されるプログラムであって、
自装置内で通信プロトコルを制御する回路の制御状態を監視して、該状態のデータを収集する手順と、
該状態データに基づいて、データ転送の異常状態を検出する手順とを計算機に実行させるためのプログラム。
【請求項１０】
通信相手装置との間でデータ転送を行う装置内でデータ転送の異常状態を検出する計算機によって使用される記憶媒体であって、
自装置内で通信プロトコルを制御する回路の制御状態を監視して、該状態のデータを収集するステップと、
該状態データに基づいて、データ転送の異常状態を検出するステップとを計算機に実行させるためのプログラムを格納した計算機読出し可能可搬型記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はデータ通信システムに係り、さらに詳しくは例えばディジタルバスによって複数の機器が接続されたシステムにおいて、装置内部、相手装置、あるいはバスなどに障害が発生した場合に障害、すなわち異常状態を検出するための専用インタフェースを備え、異常状態を検出して必要な対策を実行することができるデータ転送装置、およびそのようなデータ転送における異常状態の検出方法に関する。
【背景技術】
【０００２】
情報処理装置の間でデータを伝達したり共有する場合に、情報処理装置の間で相互にデータの受け渡しが行われるが、この場合何らかのインタフェースを採用してデータ受け渡しを実現することになる。
【０００３】
例えばパーソナルコンピュータの分野ではＩＥＥＥ１３９４、ＵＳＢ、ハードディスクなどを接続するためのインタフェースであるアドバンスド・テクノロジー・アタッチメント（ＡＴＡ）、パソコンなどにおけるバスの規格としてのペリフェラル・コンポーネント・インターコネクト（ＰＣＩ）のようなインタフェースの規格が標準的に採用されており、それぞれの規格に適合する装置の間では規格に基づいて相互通信が実現されている。
【０００４】
一般に通信システムにおいて、相手装置が安定に動作している場合においても、自装置は高温やノイズなどの悪い環境の下で使用されることも想定される。当然逆のケースもある。通信システムにおいて要求される性能としては、転送スピード、転送効率などの他に装置の安定動作が重要である。特に重要なデータを転送する装置、あるいは過酷な条件において使用される装置に対しては、安定動作の必要性が大きい。
【０００５】
このような通信システムにおける安全性や故障検出などについて、次のような従来技術がある。
【特許文献１】特開平１０−２２４３８４号公報  「ディジタルバス故障検出装置」
【特許文献２】特開２０００−３５８０４０号公報  「通信網および通信装置」
【特許文献３】特開２００１−７７８８１号公報  「パケット通信ネットワークシステム」
【特許文献４】特開２００２−３００１７６号公報  「データ通信装置、データ通信方法、データ通信方法のプログラム及びデータ通信方法のプログラムを記録した記録媒体」
【０００６】
特許文献１には、ディジタルバスを通じて送られてくる映像信号や制御信号を読み取り、読み取った信号からデータの有無を検出し、データの無いときはＬＥＤを点灯させることによって、ディジタルバスの故障を容易に認識できる故障検出装置が開示されている。
【０００７】
特許文献２には、ノード間のリンクを切断するスイッチ手段を設け、正常な接続関係を維持できないノードが存在するときには、故障箇所を迂回するルートをすみやかに形成する通信装置が開示されている。
【０００８】
特許文献３には、例えば移動機端末の異常状態が検出された場合に、基地局からのリセット要求データを検出してリセットを行うことによって自動的に、かつ通信を切断することなく復旧を行うことができるネットワークシステムが開示されている。
【０００９】
特許文献４には、静電気などによる外乱ノイズが混入した場合でも、バスに対する論理的な接続の切断を検出することによって、バスに対する論理的な接続の処理を実行する安定なデータ通信のための技術が開示されている。
【００１０】
しかしながらこのような従来技術においても、データ転送システムが異常動作を起こしたとき、それを自動的に復旧させることは多くの場合に困難であるという問題点があった。特に高速動作で複雑なプロトコルを要求される通信においては、ノイズの混入、瞬時電圧低下のような外部的な要因で誤動作が起こって通信が停止し、復旧が困難となることがあった。
【００１１】
ＩＥＥＥ１３９４、ＵＳＢのような規格化された通信プロトコルが用いられる場合にも、接続相手側の通信装置の動作によっては想定外の状態に陥り、通信できなくなるという問題が起こっている。このような汎用バスにおいては相手装置との間でのデータ転送は保証されるべきであるが、現実には接続機器相互間の相性問題も発生している。
【００１２】
ＩＥＥＥ１３９４の規格では、陥った状況に対応して自動的にバスリセットを実行し、復帰を試みることもできるが、その実行条件は限定的であり、充分ではない。さらに頻繁にバスリセットが起こる状況下では、データ転送効率が著しく低下することになる。
【００１３】
またＩＥＥＥ１３９４規格では、障害検出のために、標準インタフェースによって通信プロトコルを制御するプロトコルコントローラ内部のレジスタのリードを行うことも可能であるが、そのような動作を行うと、通常動作としてのデータ受信や割込み表示が阻害されることになる。また標準インタフェース機能を構成する回路自身がスタックした場合には、レジスタリードを行うことも不可能となる。
【発明の開示】
【発明が解決しようとする課題】
【００１４】
本発明の課題は、上述の問題点に鑑み、通信プロトコルを制御する回路の制御状態を監視する専用のインタフェースを設け、その専用インタフェースによって収集されたデータを用いて異常状態の検出、および異常状態からの復帰を可能とすることによって、異常状態からの復旧を自動的に行い、安定した通信を可能とすることである。
【課題を解決するための手段】
【００１５】
本発明において通信相手装置との間でのデータ転送を行うデータ転送装置は少なくともデータ収集手段と異常状態検出手段とを備える。
データ収集手段は、例えばプロトコルコントローラＩＣの内部に備えられるインタフェース制御部であり、自装置内で通信プロトコルを制御する回路の制御状態を監視して該状態のデータを収集するものである。
【００１６】
異常状態検出手段は、例えば制御用ＩＣの内部のインタフェース制御部と判定回路部とによって構成され、データ収集手段によって収集された状態データに基づいて、自装置の異常状態を検出するものである。
【００１７】
次に本発明においてデータ転送の異常状態を検出する計算機によって使用されるプログラムは、自装置内の通信プロトコルを制御する回路の制御状態を監視して該状態のデータを収集する手順と、該状態データに基づいてデータ転送の異常状態を検出する手順とを計算機に実行させるものであり、またこのプログラムを格納した計算機読出し可能可搬型記憶媒体が用いられる。
【００１８】
次に本発明のデータ転送異常状態検出方法においては、自装置内で通信プロトコルを制御する回路の制御状態を監視して、該状態のデータを収集し、該状態データに基づいてデータ転送の異常状態を検出する方法が用いられる。
【００１９】
以上のように、本発明においては例えばプロトコルコントローラＩＣの内部の状態データのモニタによってデータ転送の異常状態が検出され、検出された異常状態に対応する対処方法が実行される。
【発明の効果】
【００２０】
本発明によれば、データ転送の異常状態を検出するための専用インタフェースを備えて、異常状態検出とそれに対応する対処方法を実行することによって、通信規格に対応する標準インタフェースの動作を妨げることなく、データ転送を安定的に行うことが可能となり、データ転送装置の実用性の向上に寄与するところが大きい。
【発明を実施するための最良の形態】
【００２１】
図１は本発明におけるデータ転送システムの原理構成ブロック図である。同図において、データ転送装置１は通信相手装置２との間でのデータ転送を行うものであり、すくなくともデータ収集手段３と異常状態検出手段４とを備える。
【００２２】
データ収集手段３は、例えばプロトコルコントローラＩＣの内部に備えられるインタフェース制御部であり、自装置内で通信プロトコルを制御する回路の制御状態を監視して該状態のデータを収集するものである。
【００２３】
異常状態検出手段４は、例えば制御用ＩＣの内部のインタフェース制御部と判定回路部とによって構成され、データ収集手段３によって収集された状態データに基づいて、自装置の異常状態を検出するものである。
【００２４】
本発明においては、データ収集手段３が収集したデータを記憶する状態データ記憶手段、例えばマッピングブロックを備えることもでき、状態データ記憶手段は異常状態検出手段からのアドレスの指定に対応して状態データ記憶手段上で指定されたアドレスの状態データを異常状態検出手段４に与えると共に、データ収集手段がそのアドレス指定の入力信号から雑音成分を除去する雑音除去手段、例えばノイズ除去回路を備えることもできる。
【００２５】
また本発明においては、異常状態検出手段４がデータ収集手段３によって収集されたデータに対応する異常状態への対処方法を記憶する対処方法記憶手段、例えば状態判定テーブルをさらに備えることもできる。
【００２６】
この異常状態への対処方法の決定、およびその対処方法の実行に対する制御を行うソフトウェア手段をさらに備えることも、また異常状態検出手段４によって異常状態が検出されたとき、あらかじめ準備されている復帰試行手順に従って、順次復帰試行を実行する復帰試行手段、例えば制御ソフトウェアやデータベースに格納されているプログラムをさらに備えることもできる。
【００２７】
さらにこの復帰試行手段による復帰試行手順のすべてが実行された後に異常状態が解消されないとき、相手装置との通信を切断する通信切断手段をさらに備えることもでき、またこの通信切断状態を外部に通知する切断状態通知手段、例えばディスプレイ装置をさらに備えることもできる。
【００２８】
次に本発明において、データ収集手段３と異常状態検出手段４とはそれぞれ異なる半導体集積回路に備えられることも、あるいは１つの半導体集積回路内に備えられることもできる。
【００２９】
次に本発明においてデータ転送の異常状態を検出する計算機によって使用されるプログラムは、自装置内の通信プロトコルを制御する回路の制御状態を監視して該状態のデータを収集する手順と、該状態データに基づいてデータ転送の異常状態を検出する手順とを計算機に実行させるものであり、またこのプログラムを格納した計算機読出し可能可搬型記憶媒体が用いられる。
【００３０】
次に本発明のデータ転送異常状態検出方法においては、自装置内で通信プロトコルを制御する回路の制御状態を監視して、該状態のデータを収集し、該状態データに基づいてデータ転送の異常状態を検出する方法が用いられる。
【００３１】
この方法において、収集されたデータが格納されるレジスタの内容に基づいて異常状態の検出を行うことも、またこのレジスタのアドレスを指定する信号から雑音が除去された信号に基づいて、そのレジスタの内容を読み出して異常状態の検出を行うことも、さらに異常状態が検出されたとき、収集されたデータに対応して異常状態への対処方法が格納されたテーブルを参照して異常状態への対処方法を決定することもできる。
【００３２】
以上のように本発明によれば、例えば通信プロトコルを制御するＬＳＩの内部の状態データのモニタによってデータ転送の異常状態が検出され、その異常状態に対応する対処方法を実行することによって安定な通信が可能となる。異常状態、すなわち通信障害の原因は多種多様であるが、電気的特性の不一致、故障、ノイズ、温度などの条件によって異常状態の解消が不可能である場合を除き、通信再開を目指して異常状態に対応する対処方法が実行される。
【００３３】
図２は本発明におけるデータ転送装置の異常検出方法が用いられるデータ転送システムの全体構成ブロック図である。同図において本発明が対象とするデータ転送装置１０は、相手装置１１との間で、例えば通信ケーブル１２によって接続される。なおこの接続が無線によって行われても良いことは当然である。
【００３４】
データ転送装置１０の内部には、通信プロトコルの制御を行うプロトコルコントローラＩＣ１５、データ転送装置１０の全体を制御するための制御用ＩＣ１６、制御のためのソフトウェア１７、およびディスプレイ装置１８を備えている。
【００３５】
本実施形態においては、プロトコルコントローラＩＣ１５と制御用ＩＣ１６のそれぞれの内部に、通信プロトコルを制御する回路の制御状態を監視して、その制御状態のデータを収集する部分と、その状態データに基づいて装置の異常状態を検出し、必要に応じて対策を実行する部分とが分離して備えられるが、点線で示すように、プロトコルコントローラＩＣ１５と制御用ＩＣ１６とを１つのＩＣによって構成することによって、これらデータ収集を行う部分と、異常状態の検出とそれに対する対策の実行を行う部分を１つのＩＣの中に備えることも当然可能である。
【００３６】
図３は、図２におけるプロトコルコントローラＩＣ１５と制御用ＩＣ１６の構成、および両者の接続関係の説明図である。同図においてまずプロトコルコントローラＩＣ１５の内部には、例えばＩＥＥＥ１３９４バスにおける標準インタフェースに加えて、通信プロトコルを制御する回路などの制御状態を監視して、その状態のデータを収集するためのインタフェース制御部２１が備えられる
制御用ＩＣ１６の内部には、プロトコルコントローラＩＣ１５側のインタフェース制御部２１に接続され、共に誤動作検出専用インタフェースを構成するインタフェース制御部２２、インタフェース制御部２２から出力されるデータに基づいて自装置の異常状態を判定する判定回路部２３、判定回路部２３の出力に対応して異常状態に対する対策を実行する対策実行部２４を備えており、対策実行部２４は後述するように、例えばプロトコルコントローラＩＣ１５に対して必要に応じてリセットを行う。なお判定回路部２３は、インタフェース制御部２２から与えられるデータ、すなわち制御状態のデータに対応して異常状態の種類などを判定するための状態判定テーブル２５を備えている。
【００３７】
図４は図３のプロトコルコントローラＩＣ１５の内部で状態データの収集を行うマッピングブロック３０、およびシリアルＩ／Ｆ制御部３１を含むモニタ回路の構成図である。同図において、マッピングブロック３０とシリアルＩ／Ｆ制御部３１とが図３のインタフェース制御部２１に相当する。
【００３８】
図４のモニタ回路において、例えば図２の相手装置１１側からのバイアス信号を検出するためのバイアスコンパレータ２７、相手装置１１側との接続状態（コネクト信号）を検出するためのコネクトコンパレータ２８、後述するように各種の状態遷移マシンに対応するステートマシンを構成するＦ／Ｆ群などの回路素子２９などから、マッピングブロック３０に各種の制御状態データが集められる。
【００３９】
シリアルＩ／Ｆ制御部３１は、図３の制御用ＩＣ１６内のインタフェース制御部２２からの制御信号の入力に対応して、マッピングブロック３０のデータを読み取り、それをインタフェース制御部２２に対して返すものである。
【００４０】
図５はシリアルＩ／Ｆ制御部３１の詳細構成を示す。制御用ＩＣ１６のインタフェース制御部２２側からは、制御信号としてクロック信号ＳＣＫＩＮ、マッピングブロック３０における表示マップのレジスタアドレスを与える信号ＳＩＮ、および信号ＳＩＮがアドレスであることを示すアドレスイネーブル信号ＳＡＥがシリアルＩ／Ｆ制御部３１に与えられる。
【００４１】
図５においてシリアルＩ／Ｆ制御部３１は、入力クロック信号ＳＣＫＩＮ入力から、また入力信号ＳＩＮとＳＡＥとのそれぞれからノイズを除去するノイズ除去回路３７、これらのノイズ除去結果の信号に対応して、マッピングブロック３０に対して１１ビット幅のレジスタアドレスを与えるシリアル−パラレル変換器３５、マッピングブロック３０から読み出されたレジスタデータ８ビットをシリアル信号に変換して、信号ＳＯＵＴとして制御用ＩＣ１６のインタフェース制御部２２に返すパラレル−シリアル変換器３６、プロトコルコントローラＩＣ１５側のクロックであり、制御用ＩＣ１６側から与えられるクロックＳＣＫＩＮと同期していないＲｅｇＣＬＫと、アドレスイネーブル信号ＳＡＥとを同期させて、パラレル−シリアル変換器３６のデータロード端子（ＬＤ）に与える同期化回路３９によって構成されている。
【００４２】
図６は図５のシリアルＩ／Ｆ制御部の動作を示すタイミングチャートである。同図において、制御信号としてのＳＡＥがＨの区間において入力クロックＳＣＫＩＮの、例えば立ち下がりのエッジに同期して、入力信号ＳＩＮとしてのマッピングブロック３０に対するレジスタアドレス１１ビットが次々と与えられ、そのアドレス１１ビットがシリアル−パラレル変換器３５によって１１ビット幅のレジスタアドレスに変換され、マッピングブロック３０に与えられる。
【００４３】
図６のタイミングチャートの後半において、マッピングブロック３０からレジスタデータ８ビットが読み出され、そのデータはパラレル−シリアル変換器３６によってシリアル信号に変換され、クロック信号ＳＣＫＩＮの、例えば立ち上がりエッジに同期して、１ビットずつ信号ＳＯＵＴとして制御用ＩＣ１６側のインタフェース制御部２２に対して出力される。このときパラレル−シリアル変換器３６に対するパラレル信号のロードでは、制御信号の内のアドレスイネーブル信号ＳＡＥが同期化回路３９によってＲｅｇＣＬＫと同期化されて、変換器３６のデータロード端子ＬＤに与えられることによってデータの取り込みが行われる。
【００４４】
図７は図４におけるマッピングブロック３０の内容としてのマップの具体例である。同図において０から７、実際には１１ビットのレジスタアドレスに対応して８ビットのレジスタデータがそれぞれ格納されている。ここでレジスタアドレス０には前述のバイアス信号、およびコネクト信号の状態を表すフラグや、受信状態（ＲＸ）にあるか、送信状態（ＴＸ）にあるかを示すフラグなどが格納され、レジスタアドレス１以降には後述するような各種のステートマシンに対応するデータが格納されている。
【００４５】
図８は図５の同期化回路３９の詳細構成図である。同図において同期化回路３９は、３段のＤフリップフロップ４１、４２、４３とＡＮＤゲート４４によって構成されている。同図において１段目のデータフリップフロップ４１によって、図３の制御用ＩＣ１６の内部のインタフェース制御部２２から出力される制御信号の１つであるアドレスイネーブル信号（ＳＡＥ）の立下りがレジスタクロック（ＲｅｇＣＬＫ）の、例えば立ち上がりエッジで検出され、その１クロック後に２段目のデータフリップフロップ４２のNot Ｑ（図中ではＱバー）出力がＨとなり、またこの時点で３段目のデータフリップフロップ４３のＱ出力はＨとなっており、その結果ＡＮＤゲート４４の出力はＨとなり、図５のパラレル−シリアル変換器３６のデータロード端子ＬＤへの入力がＨとなり、データ入力（ＤＩ）端子に与えられる８ビットパラレルデータとしてのレジスタデータがパラレル−シリアル変換器３６に取り込まれる。
【００４６】
図９、図１０は、図５におけるノイズ除去回路の構成図である。図９は入力信号からノイズを除去する除去回路３７の構成を示す。この除去回路３７は、特に図５のパラレル−シリアル変換器３６の出力信号としてのＳＯＵＴ、すなわち図６において信号ＳＡＥがＬとなった後に出力される８ビットのそれぞれのデータが、クロックＳＣＫＩＮの立ち上がりエッジに同期して出力されることから、このクロックの立ち上がりエッジに影響を与えるノイズとしての正方向パルスおよび、負方向パルスを入力クロック信号ＳＣＫＩＮから除去するものである。
【００４７】
すなわちＯＲゲート４４の一方の入力には入力信号がそのまま与えられるが、他方の入力端子に対してはディレイ素子４５が複数段接続され、入力信号が複数段のディレイ素子を介して入力されることによって、一定時間より短いパルス幅の負方向パルスがＯＲゲート４４の出力から除去されることになる。同様にＡＮＤゲート４６の一方の入力には、ＯＲゲート４４の出力信号がそのまま与えられるが、他方の入力端子に対してはディレイ素子４７が複数段接続されることから、一定時間より短いパルス幅の正方向パルスがＡＮＤゲート４６の出力から除去される事になる。ディレイ素子４５、４７の段数は除去すべきパルスの幅に応じて調整される。
【００４８】
図１０は、ノイズ除去回路３７の異なる構成例である。同図において、入力信号を複数段のディレイ素子４８を介して出力することによって、一定時間より短いパルス幅の両極性のパルス、すなわち正方向パルスと負方向パルスとの両方が除去される。ディレイ素子４８が理想的な遅延素子である場合には、出力信号は入力信号よりある一定時間だけ遅れるだけであるが、実際の遅延素子４８を通過することにより入力パルスの立ち上がり速度と立ち下り速度が小さくなり、波形がなまることによって、複数段のディレイ素子４８を通過した後には、パルス性はほとんど除去され、単に入力信号のレベルがわずかに変化する程度となり、ノイズとしての影響は除去される。
【００４９】
本実施形態では、前述のように図３の状態判定テーブル２５の内容によって、プロトコルコントローラＩＣ１５側から送られたデータを用いて障害（異常）状態の判定が行われるが、この判定と障害状態に対する対策決定の処理を実施例１として、図１１から図１４を用いて説明する。
【００５０】
図１１は実施例１における障害（異常状態）検出処理のフローチャートである。実施例１においては、図７で説明したマッピングブロック内の表示マップから、レジスタアドレスに対応してレジスタデータの内容が読み出され、障害の検出処理が行われる。まずステップＳ１でアドレス２のステートマシンＡのデータが読み出され、ステップＳ２でアドレス４のステートマシンＣのデータが読み出される。
【００５１】
図１２、および図１３は、このステートマシンＡとステートマシンＣにおける状態遷移の説明図である。ステートマシンＡでは、図１２に示されるようにステートａからステートｂ、ステートｃの順序で状態遷移が行われ、ステートｃが完了状態を示す。
【００５２】
図１３のステートマシンＣでは、基本的にはステートａ、ステートｂ、ステートａ、ステートｂ．．の順序で状態遷移が行われる。図１２のステートマシンＡとの間の関係としてはステートマシンＡが完了状態、すなわちステートｃの状態に達した後にステートマシンＣが動作するものと定義されているとすると、ステートマシンＡが完了状態となっていないときにステートＣのステートマシンが動作している場合には、何らかの異常状態が生じているものと判定される。
【００５３】
図１４は、このような異常状態を検出するために、図３の制御用ＩＣ１６の判定回路部２３に備えられる状態判定テーブル２５の格納内容の例である。同図のテーブルの第１行目に、状態０としてステートマシンＡが完了していない状態（ｎｏｔ  Ｃｏｍｐｌｅｔｅ）であるときにステートマシンＣが動作状態（Ａｃｔｉｖｅ）となっている状態は異常状態であり、その状態に対する処置としてハードリセットが行われるべきことが格納されている。
【００５４】
図１１のステップＳ３で、すでに読み出されたデータの内容が状態判定テーブル２５と照合され、ステップＳ４でエラー、すなわち障害と判定されたか否かによって、判定された場合にはステップＳ５でハードリセットなどの対策が確定され、ステップＳ６でその対策が実行されて、再びステップＳ１に戻り、状態データの監視が行われる。ステップＳ４で状態判定テーブルの内容によってエラーと判定されない場合にも、ステップＳ１に戻り、状態データの監視が行われる。ここで状態判定テーブル２５の内容によってエラーと判定されない場合にも、完全に正常状態と判定することは必ずしもできないのは当然である。
【００５５】
なおここでは、図１２のステートマシンＡと、図１３のステートマシンＣにおける状態の組合せによって異常状態を検出するものとしたが、同様の方法は、例えばステートマシンの状態の組合せにおいて物理リンクインタフェースのステートマシンが受信であり、ＩＥＥＥ１３９４バスを管理するステートマシンが送信であるような場合には、設計上有り得ないステートの組合せとなり、例えば物理リンク標準インタフェースのスタックと判断され、リセットが実行される。
【００５６】
図１５はＩＥＥＥ１３９４規格におけるポートステートマシン上でのＰ５スタック問題に対応する障害検出処理としての実施例２における処理のフローチャートである。この障害はケーブルの抜き差しを行った場合に、互いに相手側の装置を認識できない障害状態である。相手装置との間で相手側のバイアス電圧が検出できない状況となり、ケーブルが接続されていても通信が不可能となる。図１５はＰ５スタック問題検出処理のフローチャートである。
【００５７】
図１５において処理が開始されると、まずステップＳ１０でポートステートマシンの状態がＰ５のステートであるか否かが判定され、Ｐ５ステートである場合には、ステップＳ１１で相手装置とのコネクションがあるか否かが、例えば図４におけるコンパレータ２８の出力に対応して判定される。コネクションがある場合には、ステップＳ１２で図４のバイアスコンパレータ２７の出力によって相手装置からのバイアス電圧があるか否かが判定され、ない場合にはステップＳ１３でＰ５スタック問題と判定され、ステップＳ１４でリセット（ソフトウェアリセット、またはハードウェアリセット）が対策として実行されてスタートに戻ることになる。なおステップＳ１０、Ｓ１１、およびＳ１２における判定結果がＮｏである場合にも処理はスタートに戻る。
【００５８】
次に本実施形態では障害（異常）状態が検出されたとき、あらかじめ準備されている復帰試行手順にしたがって順次復帰試行を実行するものとする。図１６は、そのような復帰試行手順として通信速度を低下させる、実施例３としての復帰試行手順の処理フローチャートである。例えば粗悪ケーブルの使用によるデータの劣化、通信スピード信号の誤検出、ノイズの影響、ＰＬＬの精度不足など、外的な要因で通信が阻害されている場合には、リセットによる復帰を果たしても同じような障害に陥る可能性が高い。このような状況を改善するためには、通信速度などの条件を変えることが適切である。例えば相手装置側にパケットを送信しても、そのパケットに対応するレスポンスとしてのパケットを受信することができない場合などには、図１６のフローチャートの手順に従って復帰試行を繰り返すことによって問題が解消する可能性がある。このように相手側からのレスポンスを必要とするパケットとしては、ＩＥＥＥ１３９４規格におけるピングパケット、リモートアクセスパケット、およびリードリクエストパケットなどがある。
【００５９】
図１６において処理が開始されると、まずステップＳ２０でＳ４００、すなわち４００ＭＨｚの転送速度でパケットが送信され、ステップＳ２１でレスポンスが確認され、正しいレスポンスが得られた場合には、ステップＳ２２で問題なしと判定される。
【００６０】
ステップＳ２１でレスポンスが確認されない場合には、ステップＳ２３でＳ２００、すなわち２００ＭＨｚの転送速度でパケットが送信され、ステップＳ２４でレスポンスの確認が行われ、正しく確認が行われた場合にはステップＳ２５でＳ４００でのパケット転送が禁止される。
【００６１】
ステップＳ２４でレスポンスが確認できない場合には、ステップＳ２６でＳ１００、すなわち１００ＭＨｚの転送速度でパケット送信が行われ、ステップＳ２７でレスポンスの確認が行われ、確認された場合には、ステップＳ２８でＳ４００、およびＳ２００でのパケット転送が禁止される。ステップＳ２７でレスポンスが確認できない場合には、ステップＳ２９で通信継続が断念される。
【００６２】
図１６のステップＳ２７でレスポンスが確認できない場合には通信継続が断念されるが、このような場合には図３の制御用ＩＣ１６が自装置内のプロトコルコントローラＩＣ１５の動作を電源ＯＦＦ、あるいは継続的リセットによって停止させる。
【００６３】
図１７は、このように異常状態から抜けられないデータ転送装置が自装置をネットワークから切断する実施例４の説明図である。ＩＥＥＥ１３９４規格では、バスに複数のデータ転送装置が接続可能であるが、異常状態から抜けられないデータ転送装置は全体の通信を阻害する可能性がある。自装置をネットワークから切断することによって、ネットワークに残された他のデータ転送装置の間での通信を復帰させることが可能となる。
【００６４】
図１７において、異常状態から抜けられないデータ転送装置Ａは、自装置をネットワークから切断することによってネットワークに残されるデータ転送装置、すなわち装置Ｃ、Ｄ、Ｅ、Ｆ、およびＧが接続されたネットワークによって正常な通信が再開される。
【００６５】
このような場合、装置Ａにおける制御用ＩＣ１６がユーザや上位のシステムに対し、アラームを発生することによって、例えばユーザに対してさらなる対策の実行が促される。このようなアラームとしては、ＬＥＤ表示や、図２のディスプレイ装置１８におけるメッセージ表示などが可能であり、ユーザは、例えばケーブルの交換、他の装置の点検、ノイズ対策や温度対策などを取ることによって装置Ａの使用再開を図ることができる。
【００６６】
以上のように本発明によれば、ノイズなどの外的要因や個別の通信装置の不具合などの通信障害を検出して装置を復帰させ、通信を安定的に継続することが可能となる。ノイズなどに起因する一時的な障害でなく、相手装置の故障などのために異常状態が解消しない場合には、異常が検出されたポートを無効化したりすることも可能である。このような場合には、異常状態の発生した通信装置をネットワークから排除することによって、残された装置の間の通信を復旧させることも可能となる。
【００６７】
例えば自動車のエンジン周辺など、通信装置が高温でノイズにさらされるような環境において使用される場合、通信の破綻も懸念されるが、通信システム自身で対策を実行することが可能となる。また例えば論理的なある条件で論理的な不具合、すなわちバグによるスタックが起こった場合にもリカバリィが可能となる。
【００６８】
将来的な問題としては、未知の接続相手との間で発生する問題点に対応してハードウェアでの対策が必要となる場合でも、内部に適切なモニタ機能を持たせることによって、原因特定と対策実行をファームウェアのレベルで行うことも考えられる。
【００６９】
以上において本発明のデータ転送装置および転送異常状態検出方法についてその詳細を説明したが、このデータ転送装置は当然一般的なコンピュータをその基本的要素として構成することが可能である。図１８はそのようなコンピュータ、すなわちハードウェア環境の構成ブロック図である。
【００７０】
図１８においてコンピュータシステムは中央処理装置（ＣＰＵ）６０、リードオンリメモリ（ＲＯＭ）６１、ランダムアクセスメモリ（ＲＡＭ）６２、通信インタフェース６３、記憶装置６４、入出力装置６５、可搬型記憶媒体の読取り装置６６、およびこれらの全てが接続されたバス６７によって構成されている。
【００７１】
記憶装置６４としてはハードディスク、磁気ディスクなど様々な形式の記憶装置を使用することができ、このような記憶装置６４、またはＲＯＭ６１に図１１、図１５、図１６などのフローチャートに示されたプログラムや、本発明の特許請求の範囲の請求項９のプログラムなどが格納され、そのようなプログラムがＣＰＵ６０によって実行されることにより、本実施形態におけるデータ転送装置自体の障害検出や相手装置との間のデータ転送異常状態の検出などが可能となる。
【００７２】
このようなプログラムは、プログラム提供者６８からネットワーク６９、および通信インタフェース６３を介して、例えば記憶装置６４に格納されることも、また市販され、流通している可搬型記憶媒体７０に格納され、読取り装置６６にセットされて、ＣＰＵ６０によって実行されることも可能である。可搬型記憶媒体７０としてはＣＤ−ＲＯＭ、フレキシブルディスク、光ディスク、光磁気ディスク、ＤＶＤなど様々な形式の記憶媒体を使用することができ、このような記憶媒体に格納されたプログラムが読取り装置６６によって読取られることにより、本実施形態におけるデータ転送装置の障害検出などが可能となる。
【００７３】
（付記１）  通信相手装置との間でデータ転送を行う装置であって、
自装置内で通信プロトコルを制御する回路の制御状態を監視して、該状態のデータを収集するデータ収集手段と、
該収集された状態データに基づいて、データ転送の異常状態を検出する異常状態検出手段とを備えることを特徴とするデータ転送装置。
【００７４】
（付記２）  前記データ収集手段が、前記収集したデータを記憶する状態データ記憶手段をさらに備えることを特徴とする付記１記載のデータ転送装置。
（付記３）  前記データ収集手段が、前記異常状態検出手段からのアドレス指定の入力に対応して、前記状態データ記憶手段上で指定されたアドレスの状態データを該異常状態検出手段に与えると共に、
該データ収集手段が、該アドレス指定の入力信号から雑音成分を除去する雑音除去手段をさらに備えることを特徴とする付記２記載のデータ転送装置。
【００７５】
（付記４）  前記異常状態検出手段が、前記データ収集手段によって収集されたデータに対応して異常状態への対処方法を記憶する対処方法記憶手段をさらに備えることを特徴とする付記１記載のデータ転送装置。
【００７６】
（付記５）  前記異常状態への対処方法の決定、および該対処方法の実行に対する制御を行うソフトウェア手段をさらに備えることを特徴とする付記４記載のデータ転送装置。
（付記６）  前記異常状態検出手段によって異常状態が検出されたとき、あらかじめ準備されている復帰試行手順に従って、順次復帰試行を実行する復帰試行手段をさらに備えることを特徴とする付記１記載のデータ転送装置。
【００７７】
（付記７）  前記復帰試行手段によって前記復帰試行手順のすべてが実行された後に異常状態が解消されないとき、前記相手装置との通信を切断する通信切断手段をさらに備えることを特徴とする付記６記載のデータ転送装置。
【００７８】
（付記８）  前記通信相手装置との通信切断状態を外部に通知する切断状態通知手段をさらに備えることを特徴とする付記７記載のデータ転送装置。
（付記９）  前記データ転送装置において、
前記データ収集手段と前記異常状態検出手段とが、それぞれ異なる半導体集積回路に備えられることを特徴とする付記１記載のデータ転送装置。
【００７９】
（付記１０）  通信相手装置との間でデータ転送を行う装置内でデータ転送の異常状態を検出する計算機によって使用されるプログラムであって、
自装置内で通信プロトコルを制御する回路の制御状態を監視して、該状態のデータを収集する手順と、
該状態データに基づいて、データ転送の異常状態を検出する手順とを計算機に実行させるためのプログラム。
【００８０】
（付記１１）  通信相手装置との間でデータ転送を行う装置内でデータ転送の異常状態を検出する計算機によって使用される記憶媒体であって、
自装置内で通信プロトコルを制御する回路の制御状態を監視して、該状態のデータを収集するステップと、
該状態データに基づいて、データ転送の異常状態を検出するステップとを計算機に実行させるためのプログラムを格納した計算機読出し可能可搬型記憶媒体。
【００８１】
（付記１２）  通信相手装置との間で行われるデータ転送の異常状態を検出する方法であって、
自装置内で通信プロトコルを制御する回路の制御状態を監視して、該状態のデータを収集し、
該収集された状態データに基づいて、データ転送の異常状態を検出することを特徴とするデータ転送異常状態検出方法。
【００８２】
（付記１３）  前記異常状態の検出において、前記収集されたデータが格納されるレジスタの内容に基づいて異常状態の検出を行うことを特徴とする付記１２記載のデータ転送異常状態検出方法。
【００８３】
（付記１４）  前記異常状態の検出において、前記レジスタのアドレスを指定する信号から雑音が除去された信号に基づいて、該レジスタの内容を読み出し、異常状態の検出を行うことを特徴とする付記１３記載のデータ転送異常状態検出方法。
【００８４】
（付記１５）  前記異常状態が検出されたとき、前記収集されたデータに対応して、該異常状態への対処方法が格納されたテーブルを参照して、異常状態への対処方法を決定することを特徴とする付記１２記載のデータ転送異常状態検出方法。
【図面の簡単な説明】
【００８５】
【図１】本発明におけるデータ転送システムの原理構成ブロック図である。
【図２】本実施形態におけるデータ転送装置の構成を示すブロック図である。
【図３】図２におけるプロトコルコントローラＩＣと制御用ＩＣとの構成を示すブロック図である。
【図４】プロトコルコントローラＩＣ内部で状態データの収集を行うモニタ回路の説明図である。
【図５】図４におけるシリアルインタフェース制御部の詳細構成を示すブロック図である。
【図６】図５の回路の動作を説明するタイミングチャートである。
【図７】図４におけるマッピングブロックの表示マップの説明図である。
【図８】図５における同期化回路の詳細構成を示す図である。
【図９】図５におけるノイズ除去回路の構成例を示す図である。
【図１０】図５におけるノイズ除去回路の異なる構成例を示す図である。
【図１１】実施例１における処理のフローチャートである。
【図１２】図１１の処理に関係するステートマシンＡの状態遷移図である。
【図１３】図１１の処理に関係するステートマシンＣの状態遷移図である。
【図１４】図１１の処理で用いられる状態判定テーブルの格納内容の例である。
【図１５】実施例２における処理のフローチャートである。
【図１６】実施例３における処理のフローチャートである。
【図１７】実施例４におけるネットワークの切断を説明する図である。
【図１８】本発明を実現するためのプログラムのコンピュータへのローディングを説明する図である。
【符号の説明】
【００８６】
１、１０  データ転送装置
２、１１  相手装置
３  データ収集手段
４  異常状態検出手段
１５  プロトコルコントローラＩＣ
１６  制御用ＩＣ
１７  制御ソフトウェア
１８  ディスプレイ装置
２１、２２  インタフェース制御部
２３  判定回路部
２４  対策実行部
２５  状態判定テーブル
２７、２８  コンパレータ
２９、４１、４２、４３  フリップフロップ
３０  マッピングブロック
３１  シリアルインタフェース制御部
３５  シリアル−パラレル変換器
３６  パラレル−シリアル変換器
３７  ノイズ除去回路
３９  同期化回路
４４  ＯＲゲート
４６  ＡＮＤゲート
４５、４７、４８  ディレイ素子
６０  ＣＰＵ
６１  リードオンリメモリ（ＲＯＭ）
６２  ランダムアクセスメモリ（ＲＡＭ）
６３  通信インタフェース
６４  記憶装置
６５  入出力装置
６６  読み取り装置
６７  バス
６８  プログラム提供者
６９  ネットワーク
７０  可搬型記憶媒体
【図１】
2005333255.tif 000003
【図２】
2005333255.tif 000004
【図３】
2005333255.tif 000005
【図５】
2005333255.tif 000006
【図６】
2005333255.tif 000007
【図７】
2005333255.tif 000008
【図８】
2005333255.tif 000009
【図９】
2005333255.tif 000010
【図１０】
2005333255.tif 000011
【図１１】
2005333255.tif 000012
【図１２】
2005333255.tif 000013
【図１３】
2005333255.tif 000014
【図１４】
2005333255.tif 000015
【図１５】
2005333255.tif 000016
【図１６】
2005333255.tif 000017
【図１８】
2005333255.tif 000018
【図４】
2005333255.tif 000019
【図１７】
2005333255.tif 000020