(57)【特許請求の範囲】
【請求項１】
イニシエーターとターゲットとの間をＰＣＩバスにより接続したＰＣＩバス制御システムに於いて、
前記イニシエーター側に監視回路を設け、前記ターゲット側に救済回路を設け、前記ＰＣＩバスにより前記イニシエーターと前記監視回路と前記救済回路と前記ターゲットとの間を接続すると共に、前記イニシエーターと前記監視回路と前記救済回路との間を、コマンドとパリティとパリティエラーとを転送するローカルバスにより接続した構成を有し、
前記監視回路は、前記ＰＣＩバスに対するパリティチェック部と、前記ローカルバスにより転送するコマンドに対するパリティチェック部を含むと共に前記イニシエーターから前記ローカルバスを介して転送するコマンドのコマンドエラーを修正する制御部とを備え、
前記救済回路は、前記ＰＣＩバスにより転送するコマンドと、前記ローカルバスにより転送するコマンドとの正常な方を選択出力するコマンド選択部と、前記コマンド選択部からのコマンドと前記ＰＣＩバスにより転送されたアドレスとを含めてパリティチェックするパリティチェック部とを備えた
ことを特徴とするＰＣＩバス制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＰＣＩバスを介して転送するアドレスやコマンドの送信側及び受信側に於いて、エラーチェック並びにエラー修正を可能としたＰＣＩバス制御システムに関する。
【背景技術】
【０００２】
各種の制御装置に於いて、データやコマンド等を転送する為のＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）バスを有する制御システムが知られている。例えば、図５に示すように、各種の制御命令等を送出する側の制御部を、イニシエーター１００とし、その命令に従った制御処理を行う側の単一又は複数の被制御部を、ターゲット１０１，１０２，１０３として、ＰＣＩバス１１０により接続した構成に於いて、イニシエーター１００とターゲット１０１，１０２，１０３とを接続したＰＣＩバス１１０は、アドレスとデータとを時分割的に転送する３２ビット幅のＡＤ（Ａｄｄｒｅｓｓ／Ｄａｔａ）［３１：０］と、バスコマンド又はバイトイネーブルを転送する４ビット幅のＣ／ＢＥ（Ｂｕｓ  Ｃｏｍｍａｎｄ／Ｂｙｔｅ  Ｅｎａｂｌｅ）［３：０］と、１ビットのパリティビットを転送するＰＡＲ（Ｐａｒｉｔｙ）とを含むものであり、この場合のパリティビットは、３２ビット構成のＡＤと、４ビット構成のＣ／ＢＥとの３６ビットに対する偶パリティが適用されている。
【０００３】
図６は、前述のイニシエーター１００と、ターゲット１０１，１０２，１０３との間を接続したＰＣＩバスについての説明図であり、（Ａ）はバスコマンドの説明図、（Ｂ）はメモリリード時の説明図である。同図の（Ａ）に示すように、バスの動作として、メモリサイクルのリード，ライトと、コンフィギュレーションサイクルのリード，ライトとに対応して、４ビット構成のＣ／ＢＥが定められている。例えば、メモリサイクルのリードコマンドは、論理レベルのローレベルＬ（“０”）とハイレベルＨ（“１”）とを基に示すと、“Ｌ”“Ｈ”“Ｈ”“Ｌ”とし、又ライトコマンドは、“Ｌ”“Ｈ”“Ｈ”“Ｈ”とする。同図の（Ｂ）に於いて、ＣＬＫはクロックを示し、そのクロックＣＬＫの立上りタイミングＴ，Ｔ＋１，Ｔ＋２，・・・を基に各部の動作が行われ、例えば、アドレスフェーズでは、バスＡＤによりメモリアドレスが転送され、バスＣ／ＢＥによりメモリに対するリードコマンド（“Ｌ”“Ｈ”“Ｈ”“Ｌ”）が転送され、次のデータフェーズでは、バスＡＤによりメモリからのリードデータが転送され、バスＣ／ＢＥによりバイトイネーブルが転送される。
【０００４】
イニシエーター１００からＰＣＩバス１１０を介してターゲット１０１，１０２，１０３の何れかを指定するアドレスを送出した場合、パリティエラー検出ができなかったアドレスエラーにより、複数のターゲットが応答するエラーが発生すると、システムとしては正常な動作を継続できなくなり、その結果、システムダウンとなる。そこで、ＰＣＩバスにより転送するアドレスと、ターゲットの総てのアドレスを保持したメモリ内容とを照合する手段を設けて、アクセスアドレスのエラーの有無を検出することにより、アクセスアドレスの正常性を確認して、システムダウンとなることを低減する手段が提案されている（例えば、特許文献１参照）。又一方と他方とのＰＣＩデバイス間を、ＰＣＩブリッジを介して接続したシステムも知られており、その場合のＰＣＩブリッジの一方の側のパリティエラー等のエラーを他方の側に通知可能としたシステムが知られている（例えば、特許文献２参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００２−２１５５５７号公報
【特許文献２】特開２００４−２２０２２０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
イニシエーターとターゲットとをＰＣＩバスにより接続した制御システムに於いて、例えば、イニシエーターから、アドレスフェーズに於けるバスコマンドによりターゲットの制御を行う時に、ビット反転等による突発的なエラー発生によって、パリティエラーを検知すると、ターゲット側からイニシエーター側へシステムエラーを通知する。このシステムエラー通知により、正常制御処理を継続できないと判断して、システムダウンとするシステムが一般的である。このシステムダウンにより、複数のターゲットは、処理動作を行うことができなくなり、多数のユーザを収容する伝送システムに於いては、影響が大きくなる問題がある。又システムダウンを回避する手段として、上位の監視制御手段に通知して、管理ソフトウェアにより、救済処理の実行の有無の判断を行わせ、それに基づいて救済処理実行と判断した場合は、再送処理等による救済処理を実行するシステムも考えられているが、一般的には、再送が不可能な障害の場合、救済処理は困難である。又完全二重化や三重化等の構成として高信頼性化を図ることも可能ではあるが、システムコストが２倍、３倍となり、実用的ではない問題がある。又パリティは、３２ビット構成のアドレス等と、４ビット構成のコマンド等との合計３６ビットに対する偶パリティを適用したものであり、パリティエラー検出の場合、３２ビット構成のアドレス側か、４ビット構成のコマンド側かを判定することは不可能である。
【０００７】
本発明は、前述の従来例の問題点を解決することを目的とし、コマンドのエラーを検出して、コマンド異状によるシステムダウンを未然に防止し、システムの信頼性向上を図るものである。
【課題を解決するための手段】
【０００８】
本発明のＰＣＩバス制御システムは、イニシエーターとターゲットとの間をＰＣＩバスにより接続したＰＣＩバス制御システムであって、前記イニシエーター側に監視回路を設け、前記ターゲット側に救済回路を設け、ＰＣＩバスによりイニシエーターと監視回路と救済回路とターゲットとの間を接続すると共に、イニシエーターと監視回路と救済回路との間を、コマンドとパリティとパリティエラーとを転送するローカルバスにより接続した構成を有し、前記監視回路は、ＰＣＩバスに対するパリティチェック部と、ローカルバスにより転送するコマンドに対するパリティチェック部と、前記ローカルバスにより転送するコマンドに対するパリティチェック部を含むと共に前記イニシエーターから前記ローカルバスを介して転送するコマンドのコマンドエラーを修正する制御部とを備え、前記救済回路は、ＰＣＩバスにより転送するコマンドと、ローカルバスにより転送するコマンドとの正常な方を選択出力するコマンド選択部と、前記コマンド選択部からのコマンドと前記ＰＣＩバスにより転送されたアドレスとを含めてパリティチェックするパリティチェック部とを備えている。
【発明の効果】
【００１１】
本発明は、イニシエーター側からターゲット側に送出するコマンドについて、ＰＣＩバスの完全二重化ではなく、コマンド転送用とパリティビット転送用とパリティ異状通知用との少ない本数のローカルバスを設け、監視回路により、正常なコマンドを選択して送信し、ターゲット側の救済回路により、正常受信のコマンドを選択してターゲットに転送するものであるから、ＰＣＩバスの完全二重化の構成に比較して、コマンド転送用のローカルバスを設けたことによるシステムコストの増加は僅かで済み、且つ正常なコマンドを選択してターゲット側に送信できるから、コマンドエラーによるシステムダウンをほぼ確実に回避することが可能となる利点がある。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施例１の説明図である。
【図２】本発明の実施例１のイニシエーター側の監視回路の説明図である。
【図３】本発明の実施例１のターゲット側の救済回路の説明図である。
【図４】本発明の実施例１のフローチャートである。
【図５】従来例の説明図である。
【図６】従来例のＰＣＩバスの動作説明図で、（Ａ）はバスコマンドの説明図、（Ｂ）はメモリリード時の説明図である。
【発明を実施するための形態】
【００１３】
本発明のＰＣＩバス制御システムは、図１を参照して説明すると、イニシエーター１とターゲット２−１，２−２との間をＰＣＩバスにより接続したＰＣＩバス制御システムであって、イニシエーター１側に監視回路３を設け、ターゲット２−１，２−２側に救済回路４を設けて、ＰＣＩバス（ＡＤ，Ｃ／ＢＥ，ＰＡＲ，ＰＥＥＲ）により相互間を接続し、イニシエーター１と監視回路３との間及び監視回路３と救済回路４との間をコマンド（ＣＯＭＭ）とパリティ（ＰＡＲ［ＣＯＭＭ］）とパリティエラー（ＰＥＥＲ［ＣＯＭＭ］）とを転送するローカルバスにより接続し、監視回路３は、イニシエーター１からＰＣＩバスにより転送するデータについてのパリティチェック部と、ローカルバスにより転送するコマンドについてのパリティチェック部とを備え、救済回路４は、ＰＣＩバスにより転送されたコマンドとローカルバスにより転送されたコマンドとの正常な側を選択するコマンド選択部と、このコマンド選択部の選択出力とＰＣＩバスのアドレス又はデータとを含めてパリティチェックを行ってターゲット２−１，２−２に送出するパリティチェック部とを含む構成を備えている。
【実施例１】
【００１４】
図１は、本発明の実施例１の説明図であり、１はコマンド等を送出し、各種のデータ処理等を行って各部を制御するイニシエーター、２−１，２−２はデータを格納するメモリやデータ伝送制御等を行う被制御側のターゲット、３は監視回路、４は救済回路を示し、イニシエーター１側に監視回路３を設け、ターゲット２−１，２−２側に救済回路４を設け、ＰＣＩバス（ＡＤ，Ｃ／ＢＥ，ＰＡＲ，ＰＥＲＲ）によりイニシエーター１とターゲット２−１，２−２側とを接続した構成を備えており、アドレスとデータとを時分割的に転送する３２ビット幅のＡＤと、バスコマンドとバイトイネーブルとの何れかを転送する４ビット幅のＣ／ＢＥと、パリティビットを転送する１ビット幅のＰＡＲと、パリティエラー信号を転送する１ビット幅のＰＥＲＲとを含むＰＣＩバスにより接続し、又４ビット幅のＣ／ＢＥの中のコマンドＣＯＭＭと、そのコマンドに対するパリティを転送する１ビット幅のＰＡＲ［ＣＯＭＭ］と、コマンドのパリティエラーを通知する１ビット幅のＰＥＲＲ［ＣＯＭＭ］とを含むローカルバスにより、イニシエーター１と監視回路３と救済回路４との間を接続したシステム構成を有する。
【００１５】
イニシエーター１側の監視回路３は、ＰＣＩバスの３２ビット幅のＡＤと、４ビット幅のＣ／ＢＥと、１ビット幅のＰＡＲと、１ビット幅のＰＥＲＲとのＰＣＩバスにより転送するＡＤ，Ｃ／ＢＥとに対するパリティチェックを行うと共に、４ビット構成のＣ／ＢＥによるコマンドＣＯＭＭと、そのパリティＰＡＲ［ＣＯＭＭ］と、パリティエラー通知ビットＲＥＲＲ［ＣＯＭＭ］とのローカルバスにより転送するコマンドに対するパリティチェック等の機能を含むものであり、又ターゲット２−１，２−２側の救済回路４は、監視回路３を介してＰＣＩバスとローカルバスとにより転送されたコマンドの正常性をチェックし、正しいコマンドを選択して、ターゲット２−１，２−２へ転送する機能を含むものである。即ち、イニシエーター１側の監視回路３により、４ビット構成のコマンドＣＯＭＭに対するパリティチェックを行い、６本のローカルバスにより、パリティチェックを行ったコマンドを転送し、ターゲット２−１，２−２側の救済回路４により、再度、パリティチェックを行って、正しいコマンドを選択受信処理し、ビットエラー等によるシステムダウンを回避可能とするものである。
【００１６】
図２は、イニシエーター１側の監視回路３の説明図であり、図１と同一符号は同一部分を示し、５は信号監視部、６はパリティチェック部、７は制御部、８はパリティチェック部を示す。信号監視部５のパリティチェック部６は、イニシエーター１からターゲット側に送出する３２ビット幅のＡＤ［３１：０］と４ビット幅のＣ／ＢＥ［３：０］と１ビット幅のＰＡＲと１ビット幅のＰＥＥＲとを入力してパリティチェックを行い、ＡＤ［３１：０］とＣ／ＢＥ［３：０］との正常性を確認し、又パリティエラー通知ビットＰＥＲＲがパリティエラーなしを示していることを確認して、ターゲット側に送出する。又制御部７は、イニシエーター１からのコマンド送出時に正常なコマンドとして転送する処理を行う。又パリティチェック部８は、４ビット構成のコマンドＣＯＭＭ［３：０］と、パリティビットＰＡＲ［ＣＯＭＭ］と、パリティエラー通知ビットＰＥＲＲ［ＣＯＭＭ］とを入力する。その場合、Ｃ／ＢＥ［３：０］のコマンドＣＯＭＭ［３：０］についてのパリティチェックを行い、ターゲット側に送出するコマンドの正常性を確認する。パリティエラーを検出すると、正常なコマンドに置き換える処理を行って、パリティチェックを行い、それに基づいて、コマンドＣＯＭＭ［３：０］とパリティビットＰＡＲ［ＣＯＭＭ］とパリティエラー通知ビットＰＥＲＲ［ＣＯＭＭ］とを、ローカルバスによりターゲット側に送出する。その場合、制御部７は、図示を省略した制御テーブルを備え、イニシエーター１から、コマンドＣＯＭＭ［３：０］とパリティビットＰＡＲ［ＣＯＭＭ］とパリティエラー通知ビットＰＥＲＲ［ＣＯＭＭ］とを、通常処理のクロックよりも３〜４倍程度高速のクロックにより読出して、制御テーブルに書込み、その内容をパリティチェック部８によりチェックし、パリティエラーを検出した時に、正常なコマンドに置き換える処理を行うもので、このような処理によっても、信号監視部５を介して転送するコマンドに対する時間的な遅延が生じないように、高速クロックを利用するものである。
【００１７】
図３は、ターゲット側の救済回路の説明図であり、図１と同一符号は同一部分を示し、ターゲット２−１，２−２，２−３を含み、救済回路４の符号９は信号訂正部、符号１０はコマンド選択部（ＳＥＬ）、符号１１はパリティチェック部を示す。イニシエーター１側の監視回路３を介してＰＣＩバスにより転送された３２ビット幅のＡＤ［３１：０］と、４ビット幅のＣ／ＢＥ［３：０］と、パリティビットＰＡＲと、パリティエラー通知ビットＰＥＲＲとを救済回路４の信号訂正部９に入力し、又イニシエーター１側の監視回路３を介してローカルバスにより転送された４ビット幅のＣＯＭＭ［３：０］と、１ビットのパリティビットＰＡＲ［ＣＯＭＭ］と、１ビットのパリティエラー通知ビットＰＥＲＲ［ＣＯＭＭ］とを信号訂正部９のコマンド選択部１０へ入力する。この信号訂正部９のコマンド選択部１０は、監視回路３の信号監視部５を介してローカルバスにより転送された４ビット構成のＣ／ＢＥ［３：０］と、１ビット構成のパリティビットＰＡＲと、１ビット構成のパリティエラー通知ビットＰＥＲＲとを入力すると共に、制御部７のパリティチェック部８を介して転送されたＣＯＭＭ［３：０］と、パリティビットＰＡＲ［ＣＯＭＭ］と、パリティエラー通知ビットＰＥＲＲ［ＣＯＭＭ］とを入力する。信号訂正部９のコマンド選択部１０は、パリティエラーのない方のＣ／ＢＥ［３：０］を選択し、更に、パリティチェック部１１に於いてパリティチェックを行って、ターゲット２−１，２−２，２−３へ送信する。それにより、コマンドエラーによるターゲット２−１，２−２，２−３の誤動作を確実の防止することができる。
【００１８】
図４は、本発明の実施例の要部フローチャートであり、（Ａ）はイニシエーター側の処理、（Ｂ）はターゲット側の処理のそれぞれの要点を示すもので、（Ａ）の（ａ１）は、イニシエーター１から監視回路３の制御部７の制御テーブル（図示を省略）へ、ターゲットに対するコマンドＡを転送することを示し、制御部７のパリティチェック部８により、そのコマンドＡのパリティチェックを行い、パリティが偶数か否か判定し（ａ２）、奇数の場合は、ステップ（ａ１）へ戻って再処理を行い、又偶数を示す場合は、正常と判断して、コマンドＡを、ターゲット側の救済回路４へ転送する為に格納する（ａ３）。又イニシエーター１からターゲット側へ転送するコマンドＢ（３２ビット幅のＡＤ［３１：０］と４ビット幅のＣ／ＢＥ［３：０］と１ビット幅のＰＡＲと１ビット幅のＰＥＥＲ）とを監視回路３へ転送し（ａ４）、パリティチェック部６によりパリティチェックを行い、パリティが偶数か否かを判定し（ａ５）、偶数を示す場合は正常と判断して、そのコマンドＢを、ターゲット側へ転送する為に格納する（ａ６）。又ステップ（ａ５）に於いて、パリティが偶数でない場合、パリティエラー通知ビットＰＥＲＲにより通知する。
【００１９】
ターゲット側の処理（Ｂ）は、救済回路４の要部の処理を示し、監視回路３のパリティチェック部６を介して転送されたコマンドＢをコマンドＣに代入する（ｂ１）。又監視回路３のパリティチェック部６からのパリティエラー通知ビットＰＥＲＲによりパリティエラー通知を受信した場合は、コマンドＣにコマンドＡを代入する（ｂ２）。即ち、監視回路３の制御部７を介して転送されたコマンドＣにコマンドＡを代入する。そして、パリティチェック部１１により、コマンドＣに対するパリティチェックを行い（ｂ３）、偶パリティの場合は、そのコマンドＣを採用して（ｂ４）、ターゲットに転送する。又偶パリティでない場合、エラーと判断して、廃棄等により異常終了とする（ｂ５）。従って、イニシエーター１からターゲットに対するコマンドは、二重のチェックと、訂正処理とを行うことにより、大幅なコストアップを伴うことなく、ターゲットに対するコマンドの信頼性を向上し、システムダウンとなる可能性を殆ど完全に回避することが可能となる。
【符号の説明】
【００２０】
１  イニシエーター
２−１，２−２，２−３  ターゲット
３  監視回路
４  救済回路
５  信号監視部
６  パリティチェック部
７  制御部
８  パリティチェック部
９  信号訂正部
１０  コマンド選択部
１１  パリティチェック部
【図１】
0005680434.tif 000002
【図２】
0005680434.tif 000003
【図３】
0005680434.tif 000004
【図４】
0005680434.tif 000005
【図５】
0005680434.tif 000006
【図６】
0005680434.tif 000007