(57)【要約】      （修正有）【課題】高度の信頼性を確保しうる情報処理装置および情報処理方法を提供する。【解決手段】送信手段１０１は、第２の装置における処理により生成されたデータを、第２の装置から第１の装置に向けて送信する。データ照合手段１０２は、送信手段により送信されたデータと、第１の装置における処理により生成されたデータとを、第１の装置において照合し、両データが一致しない場合に異常と判定する。このように、第１の装置における処理により生成されたデータと、第２の装置における処理により生成されたデータとを照合し、これらが一致しない場合に異常と判定するので、確実に異常を検出することができる。データ照合手段１０２の照合により異常と判定された場合に、処理停止手段１０３により第１の装置による処理を停止してもよい。また、データの送受信のタイミングを利用して、第１の装置および第２の装置の処理を同期させてもよい。【選択図】図１
2006209523.tif 000002
【特許請求の範囲】
【請求項１】
互いに独立して同一処理を二重に実行する第１の装置および第２の装置を備える情報処理装置において、
前記第２の装置における処理により生成されたデータを、前記第２の装置から前記第１の装置に向けて送信する送信手段と、
前記送信手段により送信された前記データと、前記第１の装置における処理により生成されたデータとを、前記第１の装置において照合し、前記両データが一致しない場合に異常と判定するデータ照合手段と、
を備えることを特徴とする情報処理装置。
【請求項２】
前記データ照合手段の照合により異常と判定された場合に、前記第１の装置による処理を停止する処理停止手段を備えることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記送信手段は、前記第２の装置に設けられていることを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
互いに独立して同一処理を二重に実行する第１の装置および第２の装置を備える情報処理装置において、
前記第１の装置における処理により生成されたデータを、前記第１の装置から前記第２の装置に向けて送信する送信手段と、
前記送信手段により送信された前記データと、前記第２の装置における処理により生成されたデータとを、前記第２の装置において照合し、前記両データが一致しない場合に異常と判定するデータ照合手段と、
を備えることを特徴とする情報処理装置。
【請求項５】
前記データ照合手段の照合により異常と判定された場合に、前記第１の装置による処理を停止する処理停止手段を備えることを特徴とする請求項４に記載の情報処理装置。
【請求項６】
前記送信手段は、前記第１の装置に設けられていることを特徴とする請求項４または５に記載の情報処理装置。
【請求項７】
前記送信手段により送信される前記データの送受信のタイミングを利用して、前記第１の装置および前記第２の装置の処理を同期させる同期手段を備えることを特徴とする請求項１〜６のいずれか１項に記載の情報処理装置。
【請求項８】
前記同期手段は、前記第１の装置または前記第２の装置に設けられていることを特徴とする請求項７に記載の情報処理装置。
【請求項９】
互いに独立して同一処理を同期して二重に実行する第１の装置および第２の装置を備える情報処理装置において、
前記第１の装置における処理により生成されたデータおよび前記第２の装置における処理により生成されたデータをリアルタイムに取得する取得手段と、
前記取得手段により取得された前記両データを照合し、前記両データが一致しない場合に異常と判定するデータ照合手段と、
を備えることを特徴とする情報処理装置。
【請求項１０】
前記データ照合手段の照合により異常と判定された場合に、前記第１の装置による処理を停止する処理停止手段を備えることを特徴とする請求項９に記載の情報処理装置。
【請求項１１】
互いに独立して同一処理を二重に実行する第１の装置および第２の装置を備える情報処理装置において、
前記第１の装置における処理により生成したデータに基づき誤り検出用コードを生成する第１のコード生成手段と、
前記第２の装置における処理により生成したデータに基づき誤り検出用コードを生成する第２のコード生成手段と、
前記第１のコード生成手段および前記第２のコード生成手段によりそれぞれ生成された誤り検出用コードを照合し、前記両誤り検出用コードが一致しない場合に異常と判定するコード照合手段と、
を備えることを特徴とする情報処理装置。
【請求項１２】
前記コード照合手段の照合により異常と判定された場合に、前記第１の装置による処理を停止する処理停止手段を備えることを特徴とする請求項１１に記載の情報処理装置。
【請求項１３】
前記第１のコード生成手段は前記第１の装置に、前記第２のコード生成手段は前記第２の装置に、それぞれ設けられていることを特徴とする請求項１１または１２に記載の情報処理装置。
【請求項１４】
前記コード照合手段は、前記第１の装置または前記第２の装置に設けられていることを特徴とする請求項１１〜１３のいずれか１項に記載の情報処理装置。
【請求項１５】
誤り検出用コード付きデータに対して互いに独立して同一処理を二重に実行する第１の装置および第２の装置を備える情報処理装置において、
前記第１の装置が受け取った前記誤り検出用コード付きデータの異常の有無を、当該誤り検出用コードを用いて検査する第１の検査手段と、
前記第２の装置が受け取った前記誤り検出用コード付きデータの異常の有無を、当該誤り検出用コードを用いて検査する第２の検査手段と、
前記第１の検査手段および前記第２の検査手段において用いた前記誤り検出用コードを照合するコード照合手段と、
前記第１の検査手段または前記第２の検査手段による検査結果が異常を示す場合、または、前記コード照合手段での照合により前記コードが一致しない場合には、装置の異常と判定する判定手段と、
を備えることを特徴とする情報処理装置。
【請求項１６】
前記判定手段により異常と判定された場合に、前記第１の装置による処理を停止する処理停止手段を備えることを特徴とする請求項１５に記載の情報処理装置。
【請求項１７】
前記第１の検査手段は前記第１の装置に、前記第２の検査手段は前記第２の装置に、それぞれ設けられていることを特徴とする請求項１５または１６に記載の情報処理装置。
【請求項１８】
前記コード照合手段は、前記第１の装置または前記第２の装置に設けられていることを特徴とする請求項１５〜１７のいずれか１項に記載の情報処理装置。
【請求項１９】
互いに独立して同一処理を二重に実行する第１の装置および第２の装置を備える情報処理装置において、
前記第１の装置および前記第２の装置における処理により生成されたデータを照合するデータ照合手段と、
前記第１の装置における処理により生成されたデータにカウント番号を付加するカウント手段と、
データ照合手段の照合により前記両データが一致しない場合に前記カウント手段によるカウント番号の付加を停止させるカウント停止手段と、
前記カウント手段により付加されたカウント番号に基づいて装置の異常を判定する判定手段と、
を備えることを特徴とする情報処理装置。
【請求項２０】
前記判定手段により異常と判定された場合に、前記第１の装置による処理、または前記第２の装置による処理を停止する処理停止手段を備えることを特徴とする請求項１９に記載の情報処理装置。
【請求項２１】
前記第１の装置および前記第２の装置は、それぞれ個々の半導体デバイスとして構成されていることを特徴とする請求項１〜２０のいずれか１項に記載の情報処理装置。
【請求項２２】
前記第１の装置および前記第２の装置は、それぞれ個々のＣＰＵとして構成されていることを特徴とする請求項１〜２０のいずれか１項に記載の情報処理装置。
【請求項２３】
前記第１の装置および前記第２の装置は、互いに絶縁状態で実装されることを特徴とする請求項１〜２２のいずれか１項に記載の情報処理装置。
【請求項２４】
互いに独立して同一処理を二重に実行する第１の装置および第２の装置を用いた情報処理方法において、
前記第２の装置における処理により生成されたデータを、前記第２の装置から前記第１の装置に向けて送信するステップと、
前記送信するステップにより送信された前記データと、前記第１の装置における処理により生成されたデータとを、前記第１の装置において照合し、前記両データが一致しない場合に異常と判定するステップと、
を備えることを特徴とする情報処理方法。
【請求項２５】
互いに独立して同一処理を二重に実行する第１の装置および第２の装置を用いた情報処理方法において、
前記第１の装置における処理により生成されたデータを、前記第１の装置から前記第２の装置に向けて送信するステップと、
前記送信するステップにより送信された前記データと、前記第２の装置における処理により生成されたデータとを、前記第２の装置において照合し、前記両データが一致しない場合に異常と判定するステップと、
を備えることを特徴とする情報処理方法。
【請求項２６】
前記送信するステップにより送信される前記データの送受信のタイミングを利用して、前記第１の装置および前記第２の装置の処理を同期させるステップを備えることを特徴とする請求項２４または２５に記載の情報処理方法。
【請求項２７】
互いに独立して同一処理を同期して二重に実行する第１の装置および第２の装置を用いた情報処理方法において、
前記第１の装置における処理により生成されたデータおよび前記第２の装置における処理により生成されたデータをリアルタイムに取得するステップと、
前記取得するステップにより取得された前記両データを照合し、前記両データが一致しない場合に異常と判定するステップと、
を備えることを特徴とする情報処理方法。
【請求項２８】
互いに独立して同一処理を二重に実行する第１の装置および第２の装置を用いた情報処理方法において、
前記第１の装置における処理により生成したデータに基づき誤り検出用コードを生成する第１のコード生成ステップと、
前記第２の装置における処理により生成したデータに基づき誤り検出用コードを生成する第２のコード生成ステップと、
前記第１のコード生成ステップおよび前記第２のコード生成ステップによりそれぞれ生成された誤り検出用コードを照合し、前記両誤り検出用コードが一致しない場合に異常と判定するステップと、
を備えることを特徴とする情報処理方法。
【請求項２９】
誤り検出用コード付きデータに対して互いに独立して同一処理を二重に実行する第１の装置および第２の装置を用いた情報処理方法において、
前記第１の装置が受け取った前記誤り検出用コード付きデータの異常の有無を、当該誤り検出用コードを用いて検査する第１の検査ステップと、
前記第２の装置が受け取った前記誤り検出用コード付きデータの異常の有無を、当該誤り検出用コードを用いて検査する第２の検査ステップと、
前記第１の検査手段および前記第２の検査手段において用いた前記誤り検出用コードを照合するコード照合ステップと、
前記第１の検査ステップまたは前記第２の検査ステップによる検査結果が異常を示す場合、または、前記コード照合ステップでの照合により前記コードが一致しない場合には、装置の異常と判定するステップと、
を備えることを特徴とする情報処理方法。
【請求項３０】
互いに独立して同一処理を二重に実行する第１の装置および第２の装置を用いた情報処理方法において、
前記第１の装置および前記第２の装置における処理により生成されたデータを照合するステップと、
前記第１の装置における処理により生成されたデータにカウント番号を付加するステップと、
データを照合するステップの照合により前記両データが一致しない場合に前記カウント番号を付加するステップによるカウント番号の付加を停止させるステップと、
前記カウント番号を付加するステップにより付加されたカウント番号に基づいて装置の異常を判定するステップと、
を備えることを特徴とする情報処理方法。
【請求項３１】
前記第１の装置および前記第２の装置は、それぞれ個々の半導体デバイスとして構成されていることを特徴とする請求項２４〜３０のいずれか１項に記載の情報処理方法。
【請求項３２】
前記第１の装置および前記第２の装置は、それぞれ個々のＣＰＵとして構成されていることを特徴とする請求項２４〜３０のいずれか１項に記載の情報処理方法。
【請求項３３】
前記第１の装置および前記第２の装置は、互いに絶縁状態で実装されることを特徴とする請求項２４〜３２のいずれか１項に記載の情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、互いに独立して処理を実行する複数の装置を備える情報処理装置および情報処理方法に関し、とくに信頼性を向上させることができる情報処理装置および情報処理方法に関する。
【背景技術】
【０００２】
プラントに配置されたフィールド機器を管理、制御するプラント制御システムが知られている。また、このようなプラントでは、プラントの安全を図るための安全システムが導入される。安全システムは、フィールド機器に異常が認められた場合に、警報を通知するとともに必要な措置を実行するシステムであり、プラント制御システムの一部として、あるいは、プラント制御システムとは独立して設けられる。
【特許文献１】特開２０００−３４７７０６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
安全システムには、その意図する機能から極めて高度の信頼性を要求される。例えば、異常が発生したにも関わらずシステムが安全だと認識し、あるいは、誤った情報を通知するような事態は極力回避しなければならない。また、異常が明らかには認識できないが、異常の可能性が示される場合には安全サイドの処理を選択する必要がある。
【０００４】
本発明の目的は、高度の信頼性を確保しうる情報処理装置および情報処理方法を提供することにある。
【課題を解決するための手段】
【０００５】
本発明の情報処理装置は、互いに独立して同一処理を二重に実行する第１の装置および第２の装置を備える情報処理装置において、前記第２の装置における処理により生成されたデータを、前記第２の装置から前記第１の装置に向けて送信する送信手段と、前記送信手段により送信された前記データと、前記第１の装置における処理により生成されたデータとを、前記第１の装置において照合し、前記両データが一致しない場合に異常と判定するデータ照合手段と、を備えることを特徴とする。
この情報処理装置によれば、第１の装置における処理により生成されたデータと、第２の装置における処理により生成されたデータとを照合し、これらが一致しない場合に異常と判定するので、確実に異常を検出することができる。各装置における処理は、演算処理に限定されず、データを受信あるいは送信する処理、データを出力する処理、データを転送する処理、データを格納する処理等、すべての処理を含む。
【０００６】
前記データ照合手段の照合により異常と判定された場合に、前記第１の装置による処理を停止する処理停止手段を備えてもよい。
この場合には、異常の場合に第１の装置による処理が停止される。処理を停止する方法は限定されない。例えば、処理の中間や出力段階で信号を遮断してもよいし、第１の装置をリセットして動作を停止してもよい。
【０００７】
前記送信手段は、前記第２の装置に設けられていてもよい。
【０００８】
本発明の情報処理装置は、互いに独立して同一処理を二重に実行する第１の装置および第２の装置を備える情報処理装置において、前記第１の装置における処理により生成されたデータを、前記第１の装置から前記第２の装置に向けて送信する送信手段と、前記送信手段により送信された前記データと、前記第２の装置における処理により生成されたデータとを、前記第２の装置において照合し、前記両データが一致しない場合に異常と判定するデータ照合手段と、を備えることを特徴とする。
この情報処理装置によれば、第１の装置における処理により生成されたデータと、第２の装置における処理により生成されたデータとを照合し、これらが一致しない場合に異常と判定するので、確実に異常を検出することができる。各装置における処理は、演算処理に限定されず、データを受信あるいは送信する処理、データを出力する処理、データを転送する処理、データを格納する処理等、すべての処理を含む。
【０００９】
前記データ照合手段の照合により異常と判定された場合に、前記第１の装置による処理を停止する処理停止手段を備えてもよい。
この場合には、異常の場合に第１の装置による処理が停止される。処理を停止する方法は限定されない。例えば、処理の中間や出力段階で信号を遮断してもよいし、第１の装置をリセットして動作を停止してもよい。
【００１０】
前記送信手段は、前記第１の装置に設けられていてもよい。
前記送信手段により送信される前記データの送受信のタイミングを利用して、前記第１の装置および前記第２の装置の処理を同期させる同期手段を備えてもよい。
この場合には、第１の装置および第２の装置の処理を同期させるので、データの照合を正しく実行できる。また、データの送受信のタイミングを利用して第１の装置および第２の装置の処理を同期させるので、同期のために必要な待ち時間を短縮でき、処理効率の低下を防げる。
【００１１】
前記同期手段は、前記第１の装置または前記第２の装置に設けられていてもよい。
【００１２】
本発明の情報処理装置は、互いに独立して同一処理を同期して二重に実行する第１の装置および第２の装置を備える情報処理装置において、前記第１の装置における処理により生成されたデータおよび前記第２の装置における処理により生成されたデータをリアルタイムに取得する取得手段と、前記取得手段により取得された前記両データを照合し、前記両データが一致しない場合に異常と判定するデータ照合手段と、を備えることを特徴とする。
この情報処理装置によれば、第１の装置における処理により生成されたデータと、第２の装置における処理により生成されたデータとを照合し、これらが一致しない場合に異常と判定するので、確実に異常を検出することができる。各装置における処理は、演算処理に限定されず、データを受信あるいは送信する処理、データを出力する処理、データを転送する処理、データを格納する処理等、すべての処理を含む。
【００１３】
前記データ照合手段の照合により異常と判定された場合に、前記第１の装置による処理を停止する処理停止手段を備えてもよい。
【００１４】
本発明の情報処理装置は、互いに独立して同一処理を二重に実行する第１の装置および第２の装置を備える情報処理装置において、前記第１の装置における処理により生成したデータに基づき誤り検出用コードを生成する第１のコード生成手段と、前記第２の装置における処理により生成したデータに基づき誤り検出用コードを生成する第２のコード生成手段と、前記第１のコード生成手段および前記第２のコード生成手段によりそれぞれ生成された誤り検出用コードを照合し、前記両誤り検出用コードが一致しない場合に異常と判定するコード照合手段と、を備えることを特徴とする。
この情報処理装置によれば、第１の装置における処理により生成したデータに基づき生成された誤り検出用コードと、第２の装置における処理により生成したデータに基づき生成された誤り検出用コードとを照合し、これらが一致しない場合に異常と判定するので、確実に異常を検出することができる。各装置における処理は、演算処理に限定されず、データを受信あるいは送信する処理、データを出力する処理、データを転送する処理、データを格納する処理等、すべての処理を含む。
【００１５】
前記コード照合手段の照合により異常と判定された場合に、前記第１の装置による処理を停止する処理停止手段を備えてもよい。
この場合には、異常の場合に第１の装置による処理が停止される。処理を停止する方法は限定されない。例えば、処理の中間や出力段階で信号を遮断してもよいし、第１の装置をリセットして動作を停止してもよい。
【００１６】
前記第１のコード生成手段は前記第１の装置に、前記第２のコード生成手段は前記第２の装置に、それぞれ設けられていてもよい。
【００１７】
前記コード照合手段は、前記第１の装置または前記第２の装置に設けられていてもよい。
【００１８】
本発明の情報処理装置は、誤り検出用コード付きデータに対して互いに独立して同一処理を二重に実行する第１の装置および第２の装置を備える情報処理装置において、前記第１の装置が受け取った前記誤り検出用コード付きデータの異常の有無を、当該誤り検出用コードを用いて検査する第１の検査手段と、前記第２の装置が受け取った前記誤り検出用コード付きデータの異常の有無を、当該誤り検出用コードを用いて検査する第２の検査手段と、前記第１の検査手段および前記第２の検査手段において用いた前記誤り検出用コードを照合するコード照合手段と、前記第１の検査手段または前記第２の検査手段による検査結果が異常を示す場合、または、前記コード照合手段での照合により前記コードが一致しない場合には、装置の異常と判定する判定手段と、を備えることを特徴とする。
この場合には、第１の検査手段または第２の検査手段による検査結果が異常を示す場合、およびコード照合手段での照合によりコードが一致しない場合には異常と判定するので、確実に異常を検出することができる。各装置における処理は、演算処理に限定されず、データを受信あるいは送信する処理、データを出力する処理、データを転送する処理、データを格納する処理等、すべての処理を含む。
なお、第１の検査手段は第１の装置が受け取った誤り検出用コード付きデータに基づき誤り検出用コードを生成し、受け取った誤り検出用コードと作成された誤り検出用コードとを比較することで異常の有無を検査する。第２の検査手段は第２の装置が受け取った誤り検出用コード付きデータに基づき誤り検出用コードを生成し、受け取った誤り検出用コードと作成された誤り検出用コードとを比較することで異常の有無を検査する。
「前記第１の検査手段および前記第２の検査手段において用いた前記誤り検出用コード」は、第１の検査手段あるいは第２の検査手段が生成した誤り検出用コード、および第１の検査手段あるいは第２の検査手段が受け取った誤り検出用コードの両者を含む。
【００１９】
前記判定手段により異常と判定された場合に、前記第１の装置による処理を停止する処理停止手段を備えてもよい。
この場合には、異常の場合に第１の装置による処理が停止される。処理を停止する方法は限定されない。例えば、処理の中間や出力段階で信号を遮断してもよいし、第１の装置をリセットして動作を停止してもよい。
【００２０】
前記第１の検査手段は前記第１の装置に、前記第２の検査手段は前記第２の装置に、それぞれ設けられていてもよい。
【００２１】
前記コード照合手段は、前記第１の装置または前記第２の装置に設けられていてもよい。
【００２２】
本発明の情報処理装置は、互いに独立して同一処理を二重に実行する第１の装置および第２の装置を備える情報処理装置において、前記第１の装置および前記第２の装置における処理により生成されたデータを照合するデータ照合手段と、前記第１の装置における処理により生成されたデータにカウント番号を付加するカウント手段と、データ照合手段の照合により前記両データが一致しない場合に前記カウント手段によるカウント番号の付加を停止させるカウント停止手段と、前記カウント手段により付加されたカウント番号に基づいて装置の異常を判定する判定手段と、を備えることを特徴とする。
この場合には、判定手段は、カウント手段により付加されたカウント番号に基づいて装置の異常を判定するので、第１の装置における処理により生成されたデータ以外のデータを参照することなく異常を検出できる。
【００２３】
前記判定手段により異常と判定された場合に、前記第１の装置による処理、または前記第２の装置による処理を停止する処理停止手段を備えてもよい。
この場合には、異常の場合に第１の装置による処理または第２の装置による処理が停止される。処理を停止する方法は限定されない。例えば、処理の中間や出力段階で信号を遮断してもよいし、第１の装置または第２の装置をリセットして動作を停止してもよい。
【００２４】
前記第１の装置および前記第２の装置は、それぞれ個々の半導体デバイスとして構成されていてもよい。
【００２５】
前記第１の装置および前記第２の装置は、それぞれ個々のＣＰＵとして構成されていてもよい。
【００２６】
前記第１の装置および前記第２の装置は、互いに絶縁状態で実装されてもよい。
【００２７】
本発明の情報処理方法は、互いに独立して同一処理を二重に実行する第１の装置および第２の装置を用いた情報処理方法において、前記第２の装置における処理により生成されたデータを、前記第２の装置から前記第１の装置に向けて送信するステップと、前記送信するステップにより送信された前記データと、前記第１の装置における処理により生成されたデータとを、前記第１の装置において照合し、前記両データが一致しない場合に異常と判定するステップと、を備えることを特徴とする。
この情報処理方法によれば、第１の装置における処理により生成されたデータと、第２の装置における処理により生成されたデータとを照合し、これらが一致しない場合に異常と判定するので、確実に異常を検出することができる。各装置における処理は、演算処理に限定されず、データを受信あるいは送信する処理、データを出力する処理、データを転送する処理、データを格納する処理等、すべての処理を含む。
【００２８】
本発明の情報処理方法は、互いに独立して同一処理を二重に実行する第１の装置および第２の装置を用いた情報処理方法において、前記第１の装置における処理により生成されたデータを、前記第１の装置から前記第２の装置に向けて送信するステップと、前記送信するステップにより送信された前記データと、前記第２の装置における処理により生成されたデータとを、前記第２の装置において照合し、前記両データが一致しない場合に異常と判定するステップと、を備えることを特徴とする。
この情報処理方法によれば、第１の装置における処理により生成されたデータと、第２の装置における処理により生成されたデータとを照合し、これらが一致しない場合に異常と判定するので、確実に異常を検出することができる。各装置における処理は、演算処理に限定されず、データを受信あるいは送信する処理、データを出力する処理、データを転送する処理、データを格納する処理等、すべての処理を含む。
【００２９】
前記送信するステップにより送信される前記データの送受信のタイミングを利用して、前記第１の装置および前記第２の装置の処理を同期させるステップを備えてもよい。
この場合には、第１の装置および第２の装置の処理を同期させるので、データの照合を正しく実行できる。また、データの送受信のタイミングを利用して第１の装置および第２の装置の処理を同期させるので、同期のために必要な待ち時間を短縮でき、処理効率の低下を防げる。
【００３０】
本発明の情報処理方法は、互いに独立して同一処理を同期して二重に実行する第１の装置および第２の装置を用いた情報処理方法において、前記第１の装置における処理により生成されたデータおよび前記第２の装置における処理により生成されたデータをリアルタイムに取得するステップと、前記取得するステップにより取得された前記両データを照合し、前記両データが一致しない場合に異常と判定するステップと、を備えることを特徴とする。
この情報処理方法によれば、第１の装置における処理により生成されたデータと、第２の装置における処理により生成されたデータとを照合し、これらが一致しない場合に異常と判定するので、確実に異常を検出することができる。各装置における処理は、演算処理に限定されず、データを受信あるいは送信する処理、データを出力する処理、データを転送する処理、データを格納する処理等、すべての処理を含む。
【００３１】
本発明の情報処理方法は、互いに独立して同一処理を二重に実行する第１の装置および第２の装置を用いた情報処理方法において、前記第１の装置における処理により生成したデータに基づき誤り検出用コードを生成する第１のコード生成ステップと、前記第２の装置における処理により生成したデータに基づき誤り検出用コードを生成する第２のコード生成ステップと、前記第１のコード生成ステップおよび前記第２のコード生成ステップによりそれぞれ生成された誤り検出用コードを照合し、前記両誤り検出用コードが一致しない場合に異常と判定するステップと、を備えることを特徴とする。
この情報処理方法によれば、第１の装置における処理により生成したデータに基づき生成された誤り検出用コードと、第２の装置における処理により生成したデータに基づき生成された誤り検出用コードとを照合し、これらが一致しない場合に異常と判定するので、確実に異常を検出することができる。各装置における処理は、演算処理に限定されず、データを受信あるいは送信する処理、データを出力する処理、データを転送する処理、データを格納する処理等、すべての処理を含む。
【００３２】
本発明の情報処理方法は、誤り検出用コード付きデータに対して互いに独立して同一処理を二重に実行する第１の装置および第２の装置を用いた情報処理方法において、前記第１の装置が受け取った前記誤り検出用コード付きデータの異常の有無を、当該誤り検出用コードを用いて検査する第１の検査ステップと、前記第２の装置が受け取った前記誤り検出用コード付きデータの異常の有無を、当該誤り検出用コードを用いて検査する第２の検査ステップと、前記第１の検査手段および前記第２の検査手段において用いた前記誤り検出用コードを照合するコード照合ステップと、前記第１の検査ステップまたは前記第２の検査ステップによる検査結果が異常を示す場合、または、前記コード照合ステップでの照合により前記コードが一致しない場合には、装置の異常と判定するステップと、を備えることを特徴とする。
この場合には、第１の検査ステップまたは第２の検査ステップによる検査結果が異常を示す場合、およびコード照合ステップでの照合によりコードが一致しない場合には異常と判定するので、確実に異常を検出することができる。各装置における処理は、演算処理に限定されず、データを受信あるいは送信する処理、データを出力する処理、データを転送する処理、データを格納する処理等、すべての処理を含む。
【００３３】
本発明の情報処理方法は、互いに独立して同一処理を二重に実行する第１の装置および第２の装置を用いた情報処理方法において、前記第１の装置および前記第２の装置における処理により生成されたデータを照合するステップと、前記第１の装置における処理により生成されたデータにカウント番号を付加するステップと、データを照合するステップの照合により前記両データが一致しない場合に前記カウント番号を付加するステップによるカウント番号の付加を停止させるステップと、前記カウント番号を付加するステップにより付加されたカウント番号に基づいて装置の異常を判定するステップと、を備えることを特徴とする。
この場合には、判定するステップでは、カウント番号を付加するステップにより付加されたカウント番号に基づいて装置の異常を判定するので、第１の装置における処理により生成されたデータ以外のデータを参照することなく異常を検出できる。各装置における処理は、演算処理に限定されず、データを受信あるいは送信する処理、データを出力する処理、データを転送する処理、データを格納する処理等、すべての処理を含む。
【００３４】
前記第１の装置および前記第２の装置は、それぞれ個々の半導体デバイスとして構成されていてもよい。
【００３５】
前記第１の装置および前記第２の装置は、それぞれ個々のＣＰＵとして構成されていてもよい。
【００３６】
前記第１の装置および前記第２の装置は、互いに絶縁状態で実装されていてもよい。
【発明の効果】
【００３７】
本発明の情報処理装置および情報処理方法によれば、第１の装置における処理により生成されたデータと、第２の装置における処理により生成されたデータとを照合し、これらが一致しない場合に異常と判定するので、確実に異常を検出することができる。
【発明を実施するための最良の形態】
【００３８】
図１〜図３は本発明による情報処理装置を機能的に示すブロック図である。
【００３９】
図１（ａ）において、送信手段１０１は、第２の装置における処理により生成されたデータを、第２の装置から第１の装置に向けて送信する。データ照合手段１０２は、送信手段１０１により送信されたデータと、第１の装置における処理により生成されたデータとを、第１の装置において照合し、両データが一致しない場合に異常と判定する。
【００４０】
処理停止手段１０３は、データ照合手段１０２の照合により異常と判定された場合に、第１の装置による処理を停止する。
【００４１】
同期手段１０４は、送信手段１０１により送信されるデータの送受信のタイミングを利用して、第１の装置および第２の装置の処理を同期させる。
【００４２】
図１（ｂ）において、送信手段１０１は、第１の装置における処理により生成されたデータを、第１の装置から第２の装置に向けて送信する。データ照合手段１０２は、送信手段１０１により送信されたデータと、第２の装置における処理により生成されたデータとを、第２の装置において照合し、両データが一致しない場合に異常と判定する。
【００４３】
処理停止手段１０３は、データ照合手段１０２の照合により異常と判定された場合に、第１の装置による処理を停止する。
【００４４】
同期手段１０４は、送信手段１０１により送信されるデータの送受信のタイミングを利用して、第１の装置および第２の装置の処理を同期させる。
【００４５】
図２（ａ）において、取得手段１０５は、第１の装置における処理により生成されたデータおよび第２の装置における処理により生成されたデータをリアルタイムに取得する。データ照合手段１０２は、取得手段１０５により取得された両データを照合し、両データが一致しない場合に異常と判定する。
【００４６】
処理停止手段１０３は、データ照合手段１０２の照合により異常と判定された場合に、第１の装置による処理を停止する。
【００４７】
図２（ｂ）において、第１のコード生成手段１０６は、第１の装置における処理により生成したデータに基づき誤り検出用コードを生成する。第２のコード生成手段１０７は、第２の装置における処理により生成したデータに基づき誤り検出用コードを生成する。コード照合手段１０８は、第１のコード生成手段１０６および第２のコード生成手段１０７によりそれぞれ生成された誤り検出用コードを照合し、両誤り検出用コードが一致しない場合に異常と判定する。
【００４８】
処理停止手段１０９は、コード照合手段１０８の照合により異常と判定された場合に、第１の装置による処理を停止する。
【００４９】
図３（ａ）において、第１の検査手段１１１は、第１の装置が受け取った誤り検出用コード付きデータの異常の有無を、当該誤り検出用コードを用いて検査する。第２の検査手段１１２は、第２の装置が受け取った誤り検出用コード付きデータの異常の有無を、当該誤り検出用コードを用いて検査する。コード照合手段１１３は、第１の検査手段１１１および第２の検査手段１１２において用いた誤り検出用コードを照合する。判定手段１１４は、第１の検査手段１１１または第２の検査手段１１２による検査結果が異常を示す場合、または、コード照合手段１１３での照合によりコードが一致しない場合には、装置の異常と判定する。
【００５０】
処理停止手段１１５は、判定手段１１４により異常と判定された場合に、第１の装置による処理を停止する。
【００５１】
図３（ｂ）において、データ照合手段１１６は、第１の装置および第２の装置における処理により生成されたデータを照合する。カウント手段１１７は、第１の装置における処理により生成されたデータにカウント番号を付加する。カウント停止手段１１８は、データ照合手段１１６の照合により両データが一致しない場合にカウント手段１１７によるカウント番号の付加を停止させる。判定手段１１９は、カウント手段１１７により付加されたカウント番号に基づいて装置の異常を判定する。
【００５２】
処理停止手段１２０は、判定手段１１９により異常と判定された場合に、第１の装置による処理、または第２の装置による処理を停止する。
【００５３】
以下、図４〜図１０を参照して、本発明による情報処理装置の実施例１〜４について説明する。
【実施例１】
【００５４】
図４は実施例１の情報処理装置が適用される安全システムの構成を示すブロック図である。この安全システムはプラント制御システムの一部として構成されている。
【００５５】
図４に示すように、プラント制御システムは、プラント各部に配置された電磁弁やセンサ等のフィールド機器１，１，・・・を統合的に管理、制御するコントローラ２と、コントローラ２およびフィールド機器１の間に介装される入出力装置３，３，・・・と、を備える。入出力装置３，３，・・・は、ネットワーク４を介してコントローラ２に接続されている。また、フィールド機器１，１，・・・は、ターミナルボード５を介して入出力装置３に接続されている。
【００５６】
図４に示すように、入出力装置３にはフィールド機器１とコントローラ１との間のインターフェース処理を実行する入出力ユニット３ａ，３ｂ，・・・が実装される。後述するように、これらの入出力ユニット３ａ，３ｂ，・・・では、信頼性向上を目的として同一処理を二重に実行している。
【００５７】
図５は入出力ユニット３ａの構成の一部を示すブロック図である。図５では、下流工程であるフィールド機器１の側から入力された入力値を加工して、上流工程であるコントローラ２の側に向けてＰＶ値（プロセス値）を出力するユニットの例を示している。
【００５８】
図５に示すように、このユニットは、マスターＣＰＵ１０と、スレーブＣＰＵ２０とを備え、それぞれのＣＰＵ１０およびＣＰＵ２０が互いに独立して同一処理を実行する。また、ＣＰＵ１０およびＣＰＵ２０は、それぞれその周囲に実装された周辺回路の診断を実行する。
【００５９】
図５に示すように、フィールド機器１からの入力値は、入力部７１および入力バッファ７２を介してマスターＣＰＵ１０に入力される。マスターＣＰＵ１０の周囲の周辺回路７４は診断回路７５により診断される。また、入力バッファ７２から出力された信号が診断回路７５に入力され、信号の異常の有無が診断される。周辺回路７４の異常の有無、および入力バッファ７２から出力された信号の異常の有無は、診断回路７５からの診断情報としてマスターＣＰＵ１０に入力される。
【００６０】
同様に、フィールド機器１からの同一の入力値は入力部７１および入力バッファ７３を介してスレーブＣＰＵ２０に入力される。スレーブＣＰＵ２０の周囲の周辺回路７６は診断回路７７により診断される。また、入力バッファ７３から出力された信号が診断回路７７に入力され、信号の異常の有無が診断される。周辺回路７６の異常の有無、および入力バッファ７３から出力された信号の異常の有無は、診断回路７７からの診断情報としてスレーブＣＰＵ２０に入力される。
【００６１】
図５に示すように、マスターＣＰＵ１０は、入力バッファ７２を経由して入力された入力値に対する演算処理を実行し、コントローラ２の側である上流工程で処理可能な形式のＰＶ値（プロセス値）に変換するＰＶ値処理部１１と、診断回路７５からの診断情報を受けて異常の検出および判定を実行し、診断結果であるステータスを生成する診断部１２とを備える。
【００６２】
また、マスターＣＰＵ１０は、スレーブＣＰＵ２０との間で通信を実行するための通信ブロック１３と、ＰＶ値およびステータスに、ＣＲＣ（Cyclic Redundancy Check；巡回冗長検査）コードおよび更新カウンタを付加するコード生成部１４とを備える。
【００６３】
また、スレーブＣＰＵ２０は、入力バッファ７３を経由して入力された入力値に対する演算処理を実行し、コントローラ２の側である上流工程で処理可能な形式のＰＶ値（プロセス値）に変換するＰＶ値処理部２１と、診断回路７７からの診断情報を受けて異常の検出および判定を実行し、診断結果であるステータスを生成する診断部２２とを備える。
【００６４】
また、スレーブＣＰＵ２０は、マスターＣＰＵ１０との間で通信を実行するための通信ブロック２３と、ＰＶ値およびステータスに、ＣＲＣ（Cyclic Redundancy Check；巡回冗長検査）コードおよび更新カウンタを付加するコード生成部２４とを備える。
【００６５】
次に、本ユニットの動作について説明する。
【００６６】
マスターＣＰＵ１０では、診断部１２で生成されたステータスと、スレーブＣＰＵ２０の診断部２４で生成され、通信ブロック２３および通信ブロック１３による通信を介して取得されたステータスとを、等値化部１５において、比較、等値化する。等値化はマスターＣＰＵ１０で取り扱うステータスと、スレーブＣＰＵ２０で取り扱うステータスとを同一にする処理である。等値化部１５ではステータスのＯＲ情報を生成する。すなわち、等値化部１５では、いずれかのステータスが異常を示す場合、その異常を取り込んだステータスに変更し、コード生成部１４に受け渡す。後述するように、スレーブＣＰＵ２０でも同様の処理を行うことで、マスターＣＰＵ１０およびスレーブＣＰＵ２０で取り扱うステータスを共通化する。
【００６７】
ＰＶ値処理部１１で生成されたＰＶ値は、コード生成部１４に与えられる。しかし、等値化部１５での処理に基づきステータスの異常が検出された場合には、遮断部１６によりコード生成部１４へのＰＶ値の入力が遮断される。
【００６８】
コード生成部１４では、入力されたＰＶ値および等値化部１５で生成されたステータスに基づいてＣＲＣコードを生成する。また、新たなＰＶ値およびステータスが入力されるたびにカウント番号を更新し、ＣＲＣコードに付加したコードを生成する。コード生成部１４では、このように生成したコードをＰＶ値およびステータスに付加することで、ＰＶ値、ステータス、ＣＲＣコードおよびカウント番号からなるフレームを生成する。カウント番号は、ＰＶ値およびステータスの更新ごとにインクリメントされる。
【００６９】
コード生成部１４で作成されたフレームと同様のフレームは、スレーブＣＰＵ２０のコード生成部２４で同様に生成され、通信ブロック２３および通信ブロック１３による通信を介して取得される。コード生成部１４で作成されたフレームと、コード生成部２４で作成されたフレームとは、比較部１７において照合される。比較部１７では、両フレームの不一致が検出されれば異常と判断する。後述するように、スレーブＣＰＵ２０でも同様の処理を行うことで、マスターＣＰＵ１０およびスレーブＣＰＵ２０は、互いに相手方の処理結果を自らの処理結果と照合し、不一致であれば異常と判断している。マスターＣＰＵ１０およびスレーブＣＰＵ２０におけるすべての処理が正常であれば、比較部１７における照合の結果、両フレームは一致することになる。
【００７０】
コード生成部１４で生成されたフレームは、上流工程である出力部７８に向けて出力される。しかし、比較部１７において両フレームの不一致が検出され、異常と判断されれば、遮断部１８によって、フレームの出力が遮断される。また、後述するように、スレーブＣＰＵ２０の比較部２７においてフレームの不一致が検出された場合には、フェイルセイフ部７９において、フレームの出力が遮断される。
【００７１】
一方、スレーブＣＰＵ２０では、診断部２２で生成されたステータスと、マスターＣＰＵ１０の診断部１４で生成され、通信ブロック１３および通信ブロック２３による通信を介して取得されたステータスとを、等値化部２５において、比較、等値化する。等値化部２５ではステータスのＯＲ情報を生成する。すなわち、等値化部２５では、いずれかのステータスが異常を示す場合、その異常を取り込んだステータスに変更し、コード生成部２４に受け渡す。
【００７２】
ＰＶ値処理部２１で生成されたＰＶ値は、コード生成部２４に与えられる。しかし、等値化部２５での処理に基づきステータスの異常が検出された場合には、遮断部２６によりコード生成部２４へのＰＶ値の入力が遮断される。
【００７３】
コード生成部２４では、入力されたＰＶ値および等値化部２５で生成されたステータスに基づいてＣＲＣコードを生成する。また、新たなＰＶ値およびステータスが入力されるたびにカウント番号を更新し、ＣＲＣコードに付加したコードを生成する。コード生成部２４では、このように生成したコードをＰＶ値およびステータスに付加することで、ＰＶ値、ステータス、ＣＲＣコードおよびカウント番号からなるフレームを生成する。カウント番号は、ＰＶ値およびステータスの更新ごとにインクリメントされる。
【００７４】
コード生成部２４で作成されたフレームは、マスターＣＰＵ１０のコード生成部１４で同様に生成され通信ブロック１３および通信ブロック２３による通信を介して取得されたフレームと、比較部２７において照合される。比較部２７において両フレームの不一致が検出されれば異常と判断する。
【００７５】
比較部２７においてフレームの不一致が検出された場合、比較部２７から異常を示すフェイルセイフ信号が出力され、フェイルセイフ部７９に与えられる。この場合、フェイルセイフ部７９において、ＣＰＵ１０からのフレームの出力が遮断され、出力部７８への新たなフレームの出力が阻止される。フェイスセイフ部７９により出力を遮断する代わりに、ＣＰＵ２０からＣＰＵ１０のリセット回路に向けてリセット信号を出力してもよい。この場合、リセット信号を受けたＣＰＵ１０は強制的にリセットされ、出力部７８への出力が阻止される。
【００７６】
出力部７８への出力が阻止された場合、カウント番号の更新が停止するため、出力部７８以降の後段の上流工程では、カウント番号を参照するだけで情報の出力が停止したことを認識できる。
【００７７】
次に、マスターＣＰＵ１０およびスレーブＣＰＵ２０間の通信方法について説明する。上記のように、マスターＣＰＵ１０およびスレーブＣＰＵ２０ではリアルタイムにデータを交換し、データの照合を行っている。このため、両者のＣＰＵにおける処理のタイミングがずれると、時間軸方向に異なる別々の処理結果を比較することになり、照合の不一致が発生する。このため、本実施例の装置では、両者のＣＰＵが常に同じ動作を実行している必要がある。そこで、マスターＣＰＵ１０の側から非同期通信（ＵＡＲＴ）を利用してタイミングフェイズトリガを送信し、スレーブＣＰＵ２０が同期して同一のシーケンスで処理を実行できるよう制御している。
【００７８】
図６は通信処理のシーケンスを示す図である。図７は通信フレームの構成を示す図であり、図７（ａ）は個々の通信フレームの構成を、図７（ｂ）は通信状態が正常な場合の動作を、それぞれ示す図である。
【００７９】
図６に示すように、マスターＣＰＵ１０はスレーブＣＰＵ２０に向けて、タイミングフェイズトリガ付きのコマンドを定周期で送信する。コマンドを受信したスレーブＣＰＵ２０は、マスターＣＰＵ１０に向けてレスポンスを返送する。このような処理の後、両者のＣＰＵが同一のフェイズを実行することで、両者のＣＰＵの処理を同期させる。
【００８０】
図７（ａ）に示すように、マスターＣＰＵ１０は通信ブロック１３を介してタイミングフェイズトリガ付きのコマンドを送信する。スレーブＣＰＵ２０は通信ブロック２３を介してコマンドを受信する。スレーブＣＰＵ２０では、受信されたコマンドに表現されたフェイズ（シーケンス番号）と、期待されるフェイズ（シーケンス番号）、すなわち次に処理すべきフェイズ（図７（ａ）ではフェイズ１）とを比較し、両者が一致していれば通信状態が正常であると認識する。通信状態が正常であると認識した場合には、スレーブＣＰＵ２０は通信ブロック２３を介してマスターＣＰＵ１０に当該フェイズ（図７（ａ）ではフェイズ１）を示す情報（シーケンス番号）を含んだレスポンスを返送する。マスターＣＰＵ１０は、スレーブＣＰＵ２０からのレスポンスを一定時間内に受信し、かつ受信されたレスポンスに表現されたフェイズ（シーケンス番号）が適正であれば、通信状態が正常であると認識する。
【００８１】
コマンドおよびレスポンスの送受信により通信状態を確認するコマンドトリガ期間の後、全二重化通信期間に移行する。全二重化通信期間では、マスターＣＰＵ１０およびスレーブＣＰＵ２０は、それぞれ同一フェイズ（図７（ａ）ではフェイズ１）の処理を実行し、マスターＣＰＵ１０からスレーブＣＰＵ２０に向けてデータＭＡが、スレーブＣＰＵ２０からにマスターＣＰＵ１０向けてデータＳＬが、並行して送信される。データＭＡおよびデータＳＬには、それぞれ上述した、等値化のために送受信されるステータス、および照合のために送受信されるフレーム（ＰＶ値、ステータス、ＣＲＣコードおよびカウント番号からなるフレーム）が含まれる。
【００８２】
図７（ｂ）に示すように、このようなフェイズを順次繰り返すことで、マスターＣＰＵ１０およびスレーブＣＰＵ２０において同一処理が互いに同期して実行される。
【００８３】
以上説明したように、実施例１では、両ＣＰＵでＣＲＣコードを生成し、ＣＲＣ付きのデータ（フレーム）で照合を実行するため、照合の信頼性が高まる。また、両ＣＰＵで照合の結果、いずれもデータが一致した場合に限り上流工程に情報を通知し、いずれか一方のＣＰＵで異常が判定されれば、上流工程への情報の出力が確実に防止される。このため、上流工程に出力した情報の信頼性を高めることができる。すなわち、上流工程における検査でＣＲＣコードが正常であれば、そのデータは入出力ユニット３ａ内部でＣＰＵ間照合された高信頼のデータであることを意味する。また、上流工程でもＣＲＣコードの検査を行うことで、ＣＰＵ内部においてＣＲＣ付きデータを取り扱う全工程について、異常の有無を改めて診断できることになる。
【００８４】
また、ＣＰＵ間通信を用いてＣＲＣ付きのデータを送受信し、両ＣＰＵで照合しているので、別途、ＣＰＵ間通信フレームのチェック、例えば、フレームサム、パリティー等のチェックを実行する必要がない。
【００８５】
実施例１では、ＣＰＵ間通信のタイミングを利用してフェイズごとに処理の同期を取るようにしている。このため、同期化のための無駄な処理が不要で、同期化処理に起因するパフォーマンスの低下がない。すなわち、本来必須の通信内容に、フェイズを特定するシーケンス番号を挿入するだけで、余分な処理を要求しない。また、このような同期化により両ＣＰＵが常に同期して同一フェイズを実行するので、ＣＰＵ間のデータ照合の精度を高めることができる。一方で、ＣＰＵ外部の要因で発生する過渡的な状態変化に対しても、両ＣＰＵが同時に追従するため、突発的なデータ照合の不一致が発生しない。また、基本的にＣＰＵ２０はＣＰＵ１０から指定されたフェイズを実行する関係にあるので、フェイズの同期がずれても、容易に復帰可能である。
【００８６】
実施例１では、両ＣＰＵのデータを互いに照合する前段で、各ＣＰＵが生成したステータスを等値化している。このため、いずれかのＣＰＵでステータスの異常が検知された場合には、ステータスの等値化によりステータスが異常であることの認識が両ＣＰＵで共有化される。このため、ステータスの異常時に後段におけるデータ照合不一致とはならず、ステータス異常と、データの照合不一致とを切り分けて認識可能となる。このため、異常状態を正しく通知することが可能となる。このようなステータスの等値化は、とくにＣＰＵごとに独立した周辺回路を増やしてでもＣＰＵ間に共通回路部分を減らし、ＣＰＵを疎結合させる必要がある場合により有効である。また、一方のＣＰＵだけでしか周辺回路の診断ができないような場合にも有効である。
【００８７】
実施例１で示した等値化の処理、ＣＲＣコードの付加、データ照合のシーケンス等は、ＣＰＵのプラグラムにより容易に実現できる。また、ＣＰＵ間通信は、ＣＰＵに標準的に実装されている非同期通信（ＵＡＲＴ）機能を用いて容易に実現できる。また、ＣＰＵ間通信をシリアル通信とすることで、２つのＣＰＵを互いに絶縁されたフィールド機器側と、コントローラ側に実装する場合でも、実装が容易である。
【実施例２】
【００８８】
実施例２の情報処理装置は、マスターＣＰＵと、スレーブＣＰＵとが、互いに絶縁されて実装される例を示している。
【００８９】
図８は、実施例２の情報処理装置としての入出力ユニットの構成を示すブロック図である。
【００９０】
図４に示したようなプラント制御システムでは、通常、コントローラ２とフィールド機器１とが距離を置いて設置されている。したがって、地表を伝播するノイズや落雷の影響から逃れる目的で、コントローラ２およびフィールド機器１のグランドは互いに分離して設けられる。このため、コントローラ２の側と、各フィールド機器１との間は、電気的な絶縁状態を維持する必要がある。
【００９１】
図８に示す入出力ユニット３ｂでは、絶縁境界Ｌを介してマスターＣＰＵ１０Ａがコントローラ２側（上流側）に、スレーブＣＰＵ２０Ａがフィールド機器１側（下流側）に設けられている。下流側からのアナログ入力値は入力回路３２を経て、ＡＤ変換部３３においてデジタル信号に変換され、スレーブＣＰＵ２０Ａに入力される。診断部３４には、スレーブＣＰＵ２０Ａとグランド電位を共通にする周辺回路３５からの情報が与えられるとともに、入力回路３２から出力された入力値が与えられる。診断部３４では周辺回路３５からの情報および入力回路３２から出力された入力値に基づく診断情報をスレーブＣＰＵ２０Ａに与える。
【００９２】
一方、下流側からの入力値はフォトカプラ３７を介してマスターＣＰＵ１０Ａにも入力される。アナログ入力値はフォトカプラ３７において２値化される。マスターＣＰＵ１０Ａでは２値化された信号（デジタル信号）に基づく処理を実行する。
【００９３】
なお、入力値は複数チャンネル（例えば８チャンネル）で構成されており、入力回路３２、ＡＤ変換部３３およびフォトカプラ３７は、チャンネル数に対応する数のユニットが用意されている。
【００９４】
マスターＣＰＵ１０ＡおよびスレーブＣＰＵ２０Ａは、それぞれに設けられたＣＰＵ間通信ブロック１１ＡおよびＣＰＵ間通信ブロック２１Ａを介してタイミングフェイズトリガ付きコマンド、およびコマンドに対するレスポンスを送受信する。これにより、互いに独立しつつ、同一処理を同期して実行する。また、マスターＣＰＵ１０ＡおよびスレーブＣＰＵ２０Ａは、ＣＰＵ間通信ブロック１１ＡおよびＣＰＵ間通信ブロック２１Ａを介して互いのデータを送受信し合い、データの照合をそれぞれ行う。さらに、スレーブＣＰＵ２０Ａで得られた診断情報はマスターＣＰＵ１０Ａにも送信され、ステータスの等値化が実行される。
【００９５】
マスターＣＰＵ１０Ａでは、等値化されたステータスが異常を示すことなく、かつ、マスターＣＰＵ１０ＡおよびスレーブＣＰＵ２０Ａのデータの照合の結果、両者が一致する場合に限って、上位通信ブロック１２Ａを介して上位ブロック３８にデータを通知する。また、スレーブＣＰＵ２０ＡにおいてマスターＣＰＵ１０ＡおよびスレーブＣＰＵ２０Ａのデータの不一致が検知された場合には、リセット信号をマスターＣＰＵ１０Ａに送出する。この場合、マスターＣＰＵ１０Ａはリセット信号により強制的にリセット状態とされ、マスターＣＰＵ１０Ａから上位ブロック３８へのデータの通知が阻止される。なお、ＣＰＵ間の通信経路およびリセット信号の伝送ラインは、絶縁境界Ｌにおいて、フォトカプラ等によりマスターＣＰＵ１０ＡおよびスレーブＣＰＵ２０Ａ間で絶縁されている。
【００９６】
図８に示すユニット３ｂでは、スレーブＣＰＵ２０Ａがフィールド機器１側に実装されているので、フィールド機器１側に実装された周辺回路３５からの情報や入力回路３２を経由した入力値を容易に取り込むことができ、詳細な診断を実行できる。また、ＣＰＵ間通信は非同期通信（ＵＡＲＴ）等を用いることで、少ない本数の通信ラインによって実行可能であるため、絶縁状態を容易に維持することができる。このため、ＣＰＵ間通信により診断情報であるステータスを両ＣＰＵ間で等値化することで、スレーブＣＰＵ２０Ａでの詳細な診断結果をマスターＣＰＵ１０Ａにおいても有効に活用できる。
【実施例３】
【００９７】
実施例３の情報処理装置は、フィールド機器１（図４）側からのアナログ信号をデジタル信号に変換し、２つのＣＰＵが共通のデジタル信号を受けてコントローラ２（図４）側にデータを出力する入出力ユニットの例を示している。図９は、実施例３の情報処理装置としての入出力ユニットの構成を示すブロック図である。
【００９８】
図９に示す入出力ユニット３ｃは、互いに独立して同一処理を実行するマスターＣＰＵ１０ＢおよびスレーブＣＰＵ２０Ｂと、複数チャンネル（例えば８チャンネル）のアナログ信号を受け、１つの信号を選択するメインのマルチプレクサ４１およびサブのマルチプレクサ４２と、マルチプレクサ４１からのアナログ信号を受ける入力増幅器４３と、入力増幅器４３から出力された信号をデジタル信号に変換してマスターＣＰＵ１０ＢおよびスレーブＣＰＵ２０Ｂに与えるＡＤ変換器４４とを備える。
【００９９】
メインのマルチプレクサ４１およびサブのマルチプレクサ４２の出力信号は、マスターＣＰＵ１０ＢおよびスレーブＣＰＵ２０Ｂでそれぞれ比較され、不一致の場合にはステータスの異常と判断する。またステータスはＣＰＵ間通信で交換され、ステータスの等値化が行われる。これにより、マルチプレクサ４１の動作の健全性が診断される。また、入力増幅部４３およびＡＤ変換器４４は全チャンネルに対し共通であるが、マルチプレクサ４１を介して一定周期で入力増幅部４３に基準電圧を入力し、ＡＤ変換器４４の出力をマスターＣＰＵ１０ＢおよびスレーブＣＰＵ２０Ｂでそれぞれ確認することで、ステータスを監視している。この場合も、ステータスはＣＰＵ間通信で交換され、ステータスの等値化が行われる。
【０１００】
マスターＣＰＵ１０ＢおよびスレーブＣＰＵ２０Ｂは、それぞれに設けられたＣＰＵ間通信ブロック１１ＢおよびＣＰＵ間通信ブロック２１Ｂを介してタイミングフェイズトリガ付きコマンド、およびコマンドに対するレスポンスを送受信することで、互いに独立しつつ、同一処理を同期して実行する。また、マスターＣＰＵ１０ＢおよびスレーブＣＰＵ２０Ｂで得られたステータスはＣＰＵ間通信により交換され、ステータスの等値化が実行される。さらに、マスターＣＰＵ１０ＢおよびスレーブＣＰＵ２０Ｂは、ＣＰＵ間通信ブロック１１ＢおよびＣＰＵ間通信ブロック２１Ｂを介して互いのデータを送受信し合い、データの照合を行う。
【０１０１】
マスターＣＰＵ１０Ｂでは、等値化されたステータスが異常を示すことなく、かつ、マスターＣＰＵ１０ＢおよびスレーブＣＰＵ２０Ｂのデータの照合の結果、両者が一致する場合に限って、通信ブロック１２Ｂを介して上位ブロック４５にデータを通知する。また、スレーブＣＰＵ２０ＢにおいてマスターＣＰＵ１０ＢおよびスレーブＣＰＵ２０Ｂのデータの不一致が検知された場合には、リセット信号をマスターＣＰＵ１０Ｂに送出する。この場合、マスターＣＰＵ１０Ｂはリセット信号により強制的にリセット状態とされ、マスターＣＰＵ１０Ｂから上位ブロック４５へのデータの通知が阻止される。
【実施例４】
【０１０２】
実施例４の情報処理装置は、コントローラ２（図４）側（上流側）から入力されたＣＲＣコード付きのデータを、フィールド機器１（図４）側（下流側）に出力する入出力ユニットの例を示している。図１０は、実施例４の情報処理装置としての入出力ユニットの構成の一部を示すブロック図である。
【０１０３】
図１０に示す入出力ユニットは、互いに独立して処理を実行するＣＰＵ５０およびＣＰＵ６０を備える。
【０１０４】
ＣＰＵ５０は、入力部８１を経由して入力されたデータに基づいてＣＲＣコードの検査を実行するコード検査部５１と、ＣＰＵ６０との間で通信を実行する通信ブロック５２と、入力されたデータをフィールド機器１側で使用される形式に変換する設定値処理部５３とを備える。
【０１０５】
ＣＰＵ６０は、ＣＰＵ５０から転送されたデータに基づいてＣＲＣコードの検査を実行するコード検査部６１と、ＣＰＵ６０との間で通信を実行する通信ブロック６２と、入力されたデータをフィールド機器１側で使用される形式に変換する設定値処理部６３とを備える。
【０１０６】
次に、図１０に示す入出力ユニットの動作について説明する。
【０１０７】
コントローラ２側からのデータは入力部８１を介してＣＰＵ５０に入力される。このデータは、フィールド機器１（例えば電磁弁）を特定する設定先と、設定先に設定されるべき設定値（例えば電磁弁の開度）と、設定値および設定先のデータに基づいて作成されたＣＲＣコードとを含んでいる。
【０１０８】
ＣＰＵ５０に入力されたデータはコード検査部５１に与えられる。コード検査部５１では、受け取った設定値および設定先のデータに基づいてＣＲＣコードを作成する。そして、データとして受け取ったＣＲＣコードと、コード検査部５１で作成したＣＲＣコードとを比較する。コード検査部５１は、両者のＣＲＣコードが不一致であれば異常と判断し、この場合には遮断部５４においてデータを遮断する。
【０１０９】
一方、ＣＰＵ５０に入力されたデータは通信ブロック５２を介して送信される。送信されたデータは通信ブロック６２を介してＣＰＵ６０で受信される。
【０１１０】
ＣＰＵ６０で受信されたデータはコード検査部６１に与えられる。コード検査部６１では、受け取った設定値および設定先のデータに基づいてＣＲＣコードを作成する。そして、データとして受け取ったＣＲＣコードと、コード検査部６１で作成したＣＲＣコードとを比較する。コード検査部６１は、両者のＣＲＣコードが不一致であれば異常と判断し、この場合には遮断部６４においてデータを遮断する。
【０１１１】
次に、ＣＰＵ５０のコード検査部５１で作成されたＣＲＣコードは通信ブロック５２を介して送信される。送信されたＣＲＣコードは通信ブロック６２を介してＣＰＵ６０で受信される。また、ＣＰＵ５０のコード検査部５１で作成されたＣＲＣコードは、比較部５５において、ＣＰＵ６０から送信されてきたＣＲＣコードと比較される。
【０１１２】
比較部５５は両者のＣＲＣを比較した結果、両者のＣＲＣコードが一致しなければ異常と判断する。この場合、遮断部５６においてデータを遮断する。
【０１１３】
ＣＰＵ６０では、コード検査部６１で作成したＣＲＣコードを、通信ブロック６２を介して送信する。送信されたＣＲＣコードは、通信ブロック５２を介してＣＰＵ５０で受信される。このＣＲＣコードは、上記のように、比較部５５においてコード検査部５１で作成されたＣＲＣコードと比較される。
【０１１４】
また、ＣＰＵ６０のコード検査部６１で作成されたＣＲＣコードは、比較部６５において、ＣＰＵ５０から送信されてきたＣＲＣコードと比較される。
【０１１５】
比較部６５は両者のＣＲＣを比較した結果、両者のＣＲＣコードが一致しなければ異常と判断する。この場合、遮断部６６においてデータを遮断する。
【０１１６】
次に、ＣＰＵ５０では、入力部８１から受け取ったデータが設定値処理部５３に与えられる。しかし、上記のように、異常と判断された場合には、遮断部５４あるいは遮断部５６においてデータの受け渡しが阻止され、設定値処理部５３での処理が停止される。
【０１１７】
データが入力される場合、設定値処理部５３では、設定値および設定先のデータをフィールド機器１側で使用される形式に変換する。
【０１１８】
一方、ＣＰＵ６０では、ＣＰＵ５０から送信されてきたデータが設定値処理部６３に与えられる。しかし、上記のように、異常と判断された場合には、遮断部６４あるいは遮断部６６においてデータの受け渡しが阻止され、設定値処理部６３での処理が停止される。
【０１１９】
データが入力される場合、設定値処理部６３では、設定値および設定先のデータをフィールド機器１側で使用される形式に変換し、出力部８２に向けて設定値および設定先のデータを出力する。
【０１２０】
出力部８２に出力された設定値および設定先のデータは、診断回路８３を介してＣＰＵ６０の比較部６７に入力される。また、比較部６７には、設定値処理部６３から出力された設定値および設定先のデータが直接入力される。
【０１２１】
比較部６７では、設定値処理部６３から出力された段階での設定値および設定先のデータと、診断回路８３を経由した設定値および設定先のデータとを比較し、両者が不一致であれば異常と判断する。この場合には遮断部６８において設定値および設定先のデータを遮断し、出力部８２への設定値および設定先のデータの出力を阻止する。
【０１２２】
また、ＣＰＵ６０から出力部８２に出力された設定値および設定先のデータは、診断回路８４を介してＣＰＵ５０の比較部５７に入力される。さらに、比較部５７には、設定値処理部５３から出力された設定値および設定先のデータが直接入力される。
【０１２３】
比較部５７では、設定値処理部５３から出力された設定値および設定先のデータと、ＣＰＵ６０から出力された設定値および設定先のデータとを比較し、両者が不一致であれば異常と判断する。この場合にはフェイルセイフ回路８５において設定値および設定先のデータを遮断し、ＣＰＵ６０から出力部８２への設定値および設定先のデータの出力を阻止する。
【０１２４】
このように、実施例４では、ＣＰＵ６０の側が出力部８２へのデータ出力を実行しているが、ＣＰＵ６０では出力されたデータを自らトレースし、異常と判断した場合にはデータ出力を停止している。また、ＣＰＵ５０でも、ＣＰＵ６０により出力部８２へ出力されたデータを同時にトレースし、異常と判断した場合にはＣＰＵ５０の側からＣＰＵ６０による出力を阻止している。このため、いずれかのＣＰＵにより異常と判断した場合にはデータ出力が阻止されるため、誤ったデータが出力部８２に出力されることを確実に防止できる。
【０１２５】
本発明の適用範囲は上記実施形態に限定されることはない。また、本発明は、安全システムのみならず、各種情報を取り扱う情報処理システムに対し、広く適用することができる。
【図面の簡単な説明】
【０１２６】
【図１】本発明による情報処理装置を機能的に示すブロック図であり（ａ）は一の発明を示すブロック図、（ｂ）は他の一の発明を示すブロック図。
【図２】本発明による情報処理装置を機能的に示すブロック図であり（ａ）は一の発明を示すブロック図、（ｂ）は他の一の発明を示すブロック図。
【図３】本発明による情報処理装置を機能的に示すブロック図であり（ａ）は一の発明を示すブロック図、（ｂ）は他の一の発明を示すブロック図。
【図４】実施例１の情報処理装置が適用される安全システムの構成を示すブロック図。
【図５】第１実施例の情報処理装置の構成の一部を示すブロック図。
【図６】通信処理のシーケンスを示す図。
【図７】通信フレームの構成を示す図であり、（ａ）は個々の通信フレームの構成を、（ｂ）は通信状態が正常な場合の動作を、それぞれ示す図。
【図８】実施例２の情報処理装置の構成を示すブロック図。
【図９】実施例３の情報処理装置の構成を示すブロック図。
【図１０】実施例４の情報処理装置の構成の一部を示すブロック図。
【符号の説明】
【０１２７】
１０１  送信手段
１０２  データ照合手段
１０３  処理停止手段
１０４  同期手段
１０５  取得手段
１０６  第１のコード生成手段
１０７  第２のコード生成手段
１０８  コード照合手段
１０９  処理停止手段
１１１  第１の検査手段
１１２  第２の検査手段
１１３  コード照合手段
１１４  判定手段
１１５  処理停止手段
１１６  データ照合手段
１１７  カウント手段
１１８  カウント停止手段
１１９  判定手段
１２０  処理停止手段
【図１】
2006209523.tif 000003
【図２】
2006209523.tif 000004
【図３】
2006209523.tif 000005
【図４】
2006209523.tif 000006
【図５】
2006209523.tif 000007
【図６】
2006209523.tif 000008
【図７】
2006209523.tif 000009
【図８】
2006209523.tif 000010
【図９】
2006209523.tif 000011
【図１０】
2006209523.tif 000012