JP3897047B2 - 情報処理装置および情報処理方法 - Google Patents

情報処理装置および情報処理方法 Download PDF

Info

Publication number
JP3897047B2
JP3897047B2 JP2005022403A JP2005022403A JP3897047B2 JP 3897047 B2 JP3897047 B2 JP 3897047B2 JP 2005022403 A JP2005022403 A JP 2005022403A JP 2005022403 A JP2005022403 A JP 2005022403A JP 3897047 B2 JP3897047 B2 JP 3897047B2
Authority
JP
Japan
Prior art keywords
status
information processing
equalization
data
cpu
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.)
Active
Application number
JP2005022403A
Other languages
English (en)
Other versions
JP2006209565A (ja
Inventor
篤 寺山
幸雄 馬庭
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.)
Yokogawa Electric Corp
Original Assignee
Yokogawa Electric Corp
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 Yokogawa Electric Corp filed Critical Yokogawa Electric Corp
Priority to JP2005022403A priority Critical patent/JP3897047B2/ja
Priority to EP06712470A priority patent/EP1857937A1/en
Priority to US11/883,392 priority patent/US20090106461A1/en
Priority to PCT/JP2006/301304 priority patent/WO2006080432A1/ja
Priority to CNA2006800037137A priority patent/CN101111824A/zh
Publication of JP2006209565A publication Critical patent/JP2006209565A/ja
Application granted granted Critical
Publication of JP3897047B2 publication Critical patent/JP3897047B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1675Temporal synchronisation or re-synchronisation of redundant processing components
    • G06F11/1683Temporal synchronisation or re-synchronisation of redundant processing components at instruction level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1629Error detection by comparing the output of redundant processing systems
    • G06F11/1633Error detection by comparing the output of redundant processing systems using mutual exchange of the output between the redundant processing components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3877Concurrent instruction execution, e.g. pipeline or look ahead using a slave processor, e.g. coprocessor
    • G06F9/3879Concurrent instruction execution, e.g. pipeline or look ahead using a slave processor, e.g. coprocessor for non-native instruction execution, e.g. executing a command; for Java instruction set
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0796Safety measures, i.e. ensuring safe condition in the event of error, e.g. for controlling element
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1629Error detection by comparing the output of redundant processing systems
    • G06F11/1637Error detection by comparing the output of redundant processing systems using additional compare functionality in one or some but not all of the redundant processing components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1629Error detection by comparing the output of redundant processing systems
    • G06F11/1654Error detection by comparing the output of redundant processing systems where the output of only one of the redundant processing components can drive the attached hardware, e.g. memory or I/O
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/88Monitoring involving counting

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Hardware Redundancy (AREA)
  • Multi Processors (AREA)

Description

本発明は、互いに独立して同一処理を実行する複数の装置を備える情報処理装置および互いに独立して同一処理を実行する複数の装置を用いた情報処理方法に関し、とくに信頼性を向上させることができる情報処理装置および情報処理方法に関する。
情報処理の信頼性を向上させるため、CPUを二重化し、各CPUに同一の処理を実行させる場合がある。この場合、各CPUには、各CPUで処理対象となる同一の情報が与えられる。
特開平8−221290号公報
しかし、各CPUに同一情報を与えるためには、それぞれのCPUに対して同一の情報を入力するための回路構成が必要であるが、実装上、困難な場合がある。とくに、2つのCPUを互いに絶縁した状態で実装する場合には、一方のCPUに入力する情報をフォトカプラ等の絶縁手段を介して伝達する必要があり、実装上、あるいはコスト面の理由で実現困難な場合がある。
また、CPUの動作タイミングが一致していない場合や、CPUでの誤動作が発生した場合には、その異常を適切に検出する必要がある。
本発明の目的は、複数の装置により同一処理を実行する情報処理装置および情報処理方法に、高度の信頼性を付与することにある。
本発明の情報処理装置は、互いに独立して同一処理を二重に実行する第1の装置および第2の装置を備える情報処理装置において、前記第1の装置において前記情報処理装置の状態に関する第1のステータスを取得する第1のステータス取得手段と、前記第2の装置において前記情報処理装置の状態に関する前記第1のステータスとは異なる第2のステータスを取得する第2のステータス取得手段と、前記第1のステータス取得手段で取得された前記第1のステータスおよび前記第2のステータス取得手段で取得された前記第2のステータスを、前記第1の装置および前記第2の装置間で交換し合う交換手段と、前記第1のステータス取得手段で取得された前記第1のステータスおよび前記交換手段により得られた前記第2のステータスに基づいて、前記情報処理装置の状態を示す等値化ステータスを、所定のアルゴリズムを用いて前記第1の装置において作成する第1の等値化手段と、前記第2のステータス取得手段で取得された前記第2のステータスおよび前記交換手段により得られた前記第1のステータスに基づいて、前記情報処理装置の状態を示す前記等値化ステータスを、前記所定のアルゴリズムを用いて前記第2の装置において作成する第2の等値化手段と、前記第1の等値化手段および前記第2の等値化手段で作成された前記両等値化ステータスを照合して、前記両等値化ステータスが不一致であれば異常と判定する照合手段と、を備えることを特徴とする。
本発明の情報処理装置は、互いに独立して同一情報処理を二重に実行する第1の装置および第2の装置を備える情報処理装置において、前記第1の装置における情報処理を反映させた第1のデータを前記第1の装置において作成する第1のデータ作成手段と、前記第2の装置における情報処理を反映させた第2のデータを前記第2の装置において作成する第2のデータ作成手段と、前記第1のデータおよび前記第2のデータを照合し、両データが不一致であれば異常と判定する照合手段と、前記第1の装置において前記情報処理装置の状態に関する第1のステータスを取得する第1のステータス取得手段と、前記第2の装置において前記情報処理装置の状態に関する前記第1のステータスとは異なる第2のステータスを取得する第2のステータス取得手段と、前記第1のステータス取得手段で取得された前記第1のステータスおよび前記第2のステータス取得手段で取得された前記第2のステータスを、前記第1の装置および前記第2の装置間で交換し合う交換手段と、前記第1のステータス取得手段で取得された前記第1のステータスおよび前記交換手段により得られた前記第2のステータスに基づいて、前記情報処理装置の状態を示す等値化ステータスを、所定のアルゴリズムを用いて前記第1の装置において作成する第1の等値化手段と、前記第2のステータス取得手段で取得された前記第2のステータスおよび前記交換手段により得られた前記第1のステータスに基づいて、前記情報処理装置の状態を示す前記等値化ステータスを、前記所定のアルゴリズムを用いて前記第2の装置において作成する第2の等値化手段と、を備え、前記第1のデータ作成手段は、前記第1の装置における他の情報処理とともに前記第1の等値化手段で作成された前記等値化ステータスを反映させて、前記第1のデータを作成し、前記第2のデータ作成手段は、前記第2の装置における他の情報処理とともに前記第2の等値化手段で作成された前記等値化ステータスを反映させて、前記第2のデータを作成することを特徴とする。
前記第1のステータスは実装回路の診断情報であってもよい。
前記第1の装置および前記第2の装置を同期化する同期化手段を備えてもよい。
前記第1の装置および前記第2の装置は互いに電気的に絶縁されていてもよい。
前記第1の装置および前記第2の装置は、それぞれ個々のCPUとして構成されていてもよい。
本発明の情報処理方法は、互いに独立して同一処理を二重に実行する第1の装置および第2の装置を用いた情報処理方法において、前記第1の装置において前記情報処理装置の状態に関する第1のステータスを取得する第1のステータス取得ステップと、前記第2の装置において前記情報処理装置の状態に関する前記第1のステータスとは異なる第2のステータスを取得する第2のステータス取得ステップと、前記第1のステータス取得ステップで取得された前記第1のステータスおよび前記第2のステータス取得ステップで取得された前記第2のステータスを、前記第1の装置および前記第2の装置間で交換し合う交換ステップと、前記第1のステータス取得ステップで取得された前記第1のステータスおよび前記交換ステップにより得られた前記第2のステータスに基づいて、前記情報処理装置の状態を示す等値化ステータスを、所定のアルゴリズムを用いて前記第1の装置において作成する第1の等値化ステップと、前記第2のステータス取得ステップで取得された前記第2のステータスおよび前記交換ステップにより得られた前記第1のステータスに基づいて、前記情報処理装置の状態を示す前記等値化ステータスを、前記所定のアルゴリズムを用いて前記第2の装置において作成する第2の等値化ステップと、前記第1の等値化ステップおよび前記第2の等値化ステップで作成された前記両等値化ステータスを照合して、前記両等値化ステータスが不一致であれば異常と判定する照合ステップと、を備えることを特徴とする。
本発明の情報処理方法は、互いに独立して同一情報処理を二重に実行する第1の装置および第2の装置を備える情報処理方法において、前記第1の装置における情報処理を反映させた第1のデータを前記第1の装置において作成する第1のデータ作成ステップと、前記第2の装置における情報処理を反映させた第2のデータを前記第2の装置において作成する第2のデータ作成ステップと、前記第1のデータおよび前記第2のデータを照合し、両データが不一致であれば異常と判定する照合ステップと、前記第1の装置において前記情報処理装置の状態に関する第1のステータスを取得する第1のステータス取得ステップと、前記第2の装置において前記情報処理装置の状態に関する前記第1のステータスとは異なる第2のステータスを取得する第2のステータス取得ステップと、前記第1のステータス取得ステップで取得された前記第1のステータスおよび前記第2のステータス取得ステップで取得された前記第2のステータスを、前記第1の装置および前記第2の装置間で交換し合う交換ステップと、前記第1のステータス取得ステップで取得された前記第1のステータスおよび前記交換ステップにより得られた前記第2のステータスに基づいて、前記情報処理装置の状態を示す等値化ステータスを、所定のアルゴリズムを用いて前記第1の装置において作成する第1の等値化ステップと、前記第2のステータス取得ステップで取得された前記第2のステータスおよび前記交換ステップにより得られた前記第1のステータスに基づいて、前記情報処理装置の状態を示す前記等値化ステータスを、前記所定のアルゴリズムを用いて前記第2の装置において作成する第2の等値化ステップと、を備え、前記第1のデータ作成ステップは、前記第1の装置における他の情報処理とともに前記第1の等値化ステップで作成された前記等値化ステータスを反映させて、前記第1のデータを作成し、前記第2のデータ作成ステップは、前記第2の装置における他の情報処理とともに前記第2の等値化ステップで作成された前記等値化ステータスを反映させて、前記第2のデータを作成することを特徴とする。
本発明の情報処理装置および情報処理方法によれば、取得されたステータスに応じた共通のイベントを、第1の装置および第2の装置において発生させるので、第1の装置および第2の装置における処理を一致させることができる。
図1〜図3は本発明による情報処理装置を機能的に示すブロック図である。
図1において、ステータス取得手段101は、第1の装置においてステータスを取得する。イベント発生手段102は、取得されたステータスに応じた共通のイベントを、第1の装置および第2の装置において発生させる。
図2において、第1のステータス取得手段103は、第1の装置においてステータスを取得する。第2のステータス取得手段104は、第2の装置においてステータスを取得する。ステータス比較手段105は、第1のステータス取得手段103により取得されたステータスと、第2のステータス取得手段104により取得されたステータスとを比較する。ステータス選択手段106は、比較された両ステータスが異なる場合に第1のステータス取得手段103または第2のステータス取得手段104により取得されたステータスのいずれかを選択する。イベント発生手段102は、選択されたステータスに応じた共通のイベントを、第1の装置および第2の装置において発生させる。
図2において、ステータス送信手段107は、第1のステータス取得手段103により取得されたステータスを、第1の装置から第2の装置に向けて送信する。ステータス比較手段105は、ステータス送信手段107により送信されたステータスと、第2のステータス取得手段104により取得されたステータスとを、第2の装置において比較する。
図1および図2において、異常判定手段111は、イベント発生手段102によってイベントが発生した後の第1の装置および第2の装置の状態を比較し、比較された両装置の状態が異なる場合には異常と判定する。
図1および図2において、同期化手段112は、第1の装置および第2の装置の動作を同期化する。
図1および図2において、照合手段113は、第1の装置での処理により生成されたデータと、第2の装置での処理により生成されたデータとを照合する。ステータス取得手段101,103,104は照合手段113による照合結果を取得する。
また、図3において、第1の装置および第2の装置は、互いに絶縁されて実装される。
取得手段121は、第1の装置において、第1の装置に対して非絶縁状態で実装された実装部の診断情報を取得する。送信手段122は、取得手段121により取得された診断情報を、第1の装置から第2の装置に向けて送信する。処理実行手段123は、第2の装置において、送信手段122により送信された診断情報に基づく処理を実行する。
以下、図4〜図12を参照して、本発明による情報処理装置の実施例1〜4について説明する。
図4は実施例1の情報処理装置が適用される安全システムの構成を示すブロック図である。この安全システムはプラント制御システムの一部として構成されている。
図4に示すように、プラント制御システムは、プラント各部に配置された電磁弁やセンサ等のフィールド機器1,1,・・・を統合的に管理、制御するコントローラ2と、コントローラ2およびフィールド機器1の間に介装される入出力装置3,3,・・・と、を備える。入出力装置3,3,・・・は、ネットワーク4を介してコントローラ2に接続されている。また、フィールド機器1,1,・・・は、ターミナルボード5を介して入出力装置3に接続されている。
図4に示すように、入出力装置3にはフィールド機器1とコントローラ2との間のインターフェース処理を実行する入出力ユニット3a,3b,・・・が実装される。後述するように、これらの入出力ユニット3a,3b,・・・では、信頼性向上を目的として同一処理を二重に実行している。
図5は入出力ユニット3aの構成の一部を示すブロック図である。図5では、下流工程であるフィールド機器1の側から入力された入力値を加工して、上流工程であるコントローラ2の側に向けてPV値(プロセス値)を出力するユニットの例を示している。
図5に示すように、このユニットは、マスターCPU10と、スレーブCPU20とを備え、それぞれのCPU10およびCPU20が互いに独立して同一処理を実行する。また、CPU10およびCPU20は、それぞれその周囲に実装された実装部(周辺回路)の診断を実行する。
図5に示すように、フィールド機器1からの入力値は、入力部71および入力バッファ72を介してマスターCPU10に入力される。マスターCPU10の周囲の周辺回路74は診断回路75により診断される。また、入力バッファ72から出力された信号が診断回路75に入力され、信号の異常の有無が診断される。周辺回路74の異常の有無、および入力バッファ72から出力された信号の異常の有無は、診断回路75からの診断情報としてマスターCPU10に入力される。
同様に、フィールド機器1からの同一の入力値は入力部71および入力バッファ73を介してスレーブCPU20に入力される。スレーブCPU20の周囲の周辺回路76は診断回路77により診断される。また、入力バッファ73から出力された信号が診断回路77に入力され、信号の異常の有無が診断される。周辺回路76の異常の有無、および入力バッファ73から出力された信号の異常の有無は、診断回路77からの診断情報としてスレーブCPU20に入力される。
図5に示すように、マスターCPU10は、入力バッファ72を経由して入力された入力値に対する演算処理を実行し、コントローラ2の側である上流工程で処理可能な形式のPV値(プロセス値)に変換するPV値処理部11と、診断回路75からの診断情報を受けて異常の検出および判定を実行し、診断結果であるステータスを生成する診断部12とを備える。
また、マスターCPU10は、スレーブCPU20との間で、シリアル通信である非同期通信(UART)を実行するための通信ブロック13と、PV値およびステータスに、CRC(Cyclic Redundancy Check;巡回冗長検査)コードおよび更新カウンタを付加するコード生成部14とを備える。
また、スレーブCPU20は、入力バッファ73を経由して入力された入力値に対する演算処理を実行し、コントローラ2の側である上流工程で処理可能な形式のPV値(プロセス値)に変換するPV値処理部21と、診断回路77からの診断情報を受けて異常の検出および判定を実行し、診断結果であるステータスを生成する診断部22とを備える。
また、スレーブCPU20は、マスターCPU10との間で、シリアル通信である非同期通信(UART)を実行するための通信ブロック23と、PV値およびステータスに、CRC(Cyclic Redundancy Check;巡回冗長検査)コードおよび更新カウンタを付加するコード生成部24とを備える。
次に、本ユニットの動作について説明する。
マスターCPU10では、診断部12で生成されたステータスと、スレーブCPU20の診断部22で生成され、通信ブロック23および通信ブロック13による通信を介して取得されたステータスとを、等値化部15において、比較、等値化する。等値化はマスターCPU10で取り扱うステータスと、スレーブCPU20で取り扱うステータスとを同一にする処理である。等値化部15ではステータスのOR情報を生成する。すなわち、等値化部15では、いずれかのステータスが異常を示す場合、その異常を取り込んだステータスに変更し、コード生成部14に受け渡す。後述するように、スレーブCPU20でも同様の処理を行うことで、マスターCPU10およびスレーブCPU20で取り扱うステータスを共通化する。
PV値処理部11で生成されたPV値は、コード生成部14に与えられる。しかし、等値化部15での処理に基づきステータスの異常が検出された場合には、遮断部16によりコード生成部14へのPV値の入力が遮断される。
コード生成部14では、入力されたPV値および等値化部15で生成されたステータスに基づいてCRCコードを生成する。また、新たなPV値およびステータスが入力されるたびにカウント番号を更新し、CRCコードに付加したコードを生成する。コード生成部14では、このように生成したコードをPV値およびステータスに付加することで、PV値、ステータス、CRCコードおよびカウント番号からなるフレームを生成する。カウント番号は、PV値およびステータスの更新ごとにインクリメントされる。
コード生成部14で作成されたフレームと同様のフレームは、スレーブCPU20のコード生成部24で同様に生成され、通信ブロック23および通信ブロック13による通信を介して取得される。コード生成部14で作成されたフレームと、コード生成部24で作成されたフレームとは、比較部17において照合される。比較部17では、両フレームの不一致が検出されれば異常と判断する。後述するように、スレーブCPU20でも同様の処理を行うことで、マスターCPU10およびスレーブCPU20は、互いに相手方の処理結果を自らの処理結果と照合し、不一致であれば異常と判断している。マスターCPU10およびスレーブCPU20におけるすべての処理が正常であれば、比較部17における照合の結果、両フレームは一致することになる。
コード生成部14で生成されたフレームは、上流工程である出力部78に向けて出力される。しかし、比較部17において両フレームの不一致が検出され、異常と判断されれば、遮断部18によって、フレームの出力が遮断される。また、後述するように、スレーブCPU20の比較部27においてフレームの不一致が検出された場合には、フェイルセイフ部79において、フレームの出力が遮断される。
一方、スレーブCPU20では、診断部22で生成されたステータスと、マスターCPU10の診断部14で生成され、通信ブロック13および通信ブロック23による通信を介して取得されたステータスとを、等値化部25において、比較、等値化する。等値化部25ではステータスのOR情報を生成する。すなわち、等値化部25では、いずれかのステータスが異常を示す場合、その異常を取り込んだステータスに変更し、コード生成部24に受け渡す。
PV値処理部21で生成されたPV値は、コード生成部24に与えられる。しかし、等値化部25での処理に基づきステータスの異常が検出された場合には、遮断部26によりコード生成部24へのPV値の入力が遮断される。
コード生成部24では、入力されたPV値および等値化部25で生成されたステータスに基づいてCRCコードを生成する。また、新たなPV値およびステータスが入力されるたびにカウント番号を更新し、CRCコードに付加したコードを生成する。コード生成部24では、このように生成したコードをPV値およびステータスに付加することで、PV値、ステータス、CRCコードおよびカウント番号からなるフレームを生成する。カウント番号は、PV値およびステータスの更新ごとにインクリメントされる。
コード生成部24で作成されたフレームは、マスターCPU10のコード生成部14で同様に生成され通信ブロック13および通信ブロック23による通信を介して取得されたフレームと、比較部27において照合される。比較部27において両フレームの不一致が検出されれば異常と判断する。
比較部27においてフレームの不一致が検出された場合、比較部27から異常を示すフェイルセイフ信号が出力され、フェイルセイフ部79に与えられる。この場合、フェイルセイフ部79において、CPU10からのフレームの出力が遮断され、出力部78への新たなフレームの出力が阻止される。フェイスセイフ部79により出力を遮断する代わりに、CPU20からCPU10のリセット回路に向けてリセット信号を出力してもよい。この場合、リセット信号を受けたCPU10は強制的にリセットされ、出力部78への出力が阻止される。
出力部78への出力が阻止された場合、カウント番号の更新が停止するため、出力部78以降の後段の上流工程では、カウント番号を参照するだけで情報の出力が停止したことを認識できる。
図6は、上述したステータスの等値化処理およびフレームの比較処理の手順を示すフローチャートである。これらの処理はマスターCPU10およびスレーブCPU20においてそれぞれ実行される。
ステップS1〜ステップS7はステータスの等値化処理の手順を示している。
図6のステップS1では、診断部12または診断部22でステータスを生成し、通信ブロック13または通信ブロック23を介して、生成されたステータスを送信する。
ステップS2では、相手方CPUから送信されてきたステータスを、通信ブロック13または通信ブロック23を介して受信する。
ステップS3では、等値化部15または等値化部25において、自らが生成したステータスと、相手方CPUが生成したステータスとを比較する。ステップS4において、比較されたステータスが同一でないと判断した場合には、ステップS5においてステータスの等値化を実行する。ステップS4において、比較されたステータスが同一であると判断した場合には、ステップS5をスキップする。
上記のように、ステップS5では、ステータスの等値化処理においてステータスのOR情報を生成することで、いずれかのステータスの異常を等値化後のステータスに表現し、異常がCPUの動作に必ず反映されるような安全サイドのステータスを作成する。また、ステータスの等値化のアルゴリズムは、マスターCPU10とスレーブCPU20との間で同一であり、等値化の処理が正しく実行された場合に得られる等値化後のステータスは両CPU間で常に共通となる。
ステップS6では、等値化後のステータスが異常を示しているか否か判断し、判断が肯定されれば、ステップS7において、遮断部16または遮断部26によりコード生成部14またはコード生成部24へのPV値の入力が遮断される。ステップS7の処理が終了後、ステップS1へ戻る。
ステップS6の判断が否定されれば、ステップS7をスキップし、ステップS1へ戻る。以下、処理フェイズ単位で、ステップS1〜ステップS7の手順が繰り返される。
このように、本実施例では、処理フェイズ単位でステータスの等値化処理を実行し、両者のCPUにおいて同一ステータスを認識して、同一処理を実行する。すなわち、同一のイベントを実行する。
図6のステップS11〜ステップS15はフレームの比較処理の手順を示している。
図6のステップS11では、コード生成部14またはコード生成部24でPV値、ステータス、CRCコードおよびカウント番号からなるフレームを生成し、通信ブロック13または通信ブロック23を介して、生成されたステータスを送信する。
ステップS12では、相手方CPUから送信されてきたフレームを、通信ブロック13または通信ブロック23を介して受信する。
ステップS13では、比較部17または比較部27において、自らが生成したフレームと、相手方CPUが生成したフレームとを比較する。ステップS14において、比較されたフレームが同一でないと判断した場合には、ステップS15において遮断部18またはフェイルセイフ部79において、フレームの出力が遮断される。ステップS14の処理が終了後、ステップS11へ戻る。
ステップS14の判断が否定されれば、ステップS15をスキップし、ステップS11へ戻る。以下、処理フェイズ単位で、ステップS11〜ステップS15の手順が繰り返される。
このように、本実施例では、処理フェイズ単位でフレームを比較し、両フレームが異なる場合には異常と判断して所定の処理を実行する。本実施例では、両フレームが異なる場合には、両者のCPUにおいて、共通に異常を認識し、すなわち共通のステータスを選択し、出力部78へのフレームの出力を停止するという同一の処理、すなわち同一のイベントを実行する。
図7は、図6に示す処理による両CPUの状態遷移の様子を示す図である。
図7に示すように、ステータスの等値化により、両CPUにより同一のステータスが認識される。また、両CPUには同一の入力値が与えられる。したがって、両CPUでは、常に同一の状態から共通のイベントを実行することとなり、イベント実行後の状態も同一となる。
次に、マスターCPU10およびスレーブCPU20間の通信方法について説明する。上記のように、マスターCPU10およびスレーブCPU20ではリアルタイムにデータを交換し、データの照合を行っている。このため、両者のCPUにおける処理のタイミングがずれると、時間軸方向に異なる別々の処理結果を比較することになり、照合の不一致が発生する。このため、本実施例の装置では、両者のCPUが常に同じ動作を実行している必要がある。そこで、マスターCPU10の側から非同期通信(UART)を利用してタイミングフェイズトリガを送信し、スレーブCPU20が同期して同一のシーケンスで処理を実行できるよう制御している。
図8は通信処理のシーケンスを示す図である。図9は通信フレームの構成を示す図であり、図9(a)は個々の通信フレームの構成を、図9(b)は通信状態が正常な場合の動作を、それぞれ示す図である。
図8に示すように、マスターCPU10はスレーブCPU20に向けて、タイミングフェイズトリガ付きのコマンドを定周期で送信する。コマンドを受信したスレーブCPU20は、マスターCPU10に向けてレスポンスを返送する。このような処理の後、両者のCPUが同一の処理フェイズを実行することで、両者のCPUの処理を同期させる。
図9(a)に示すように、マスターCPU10は通信ブロック13を介してタイミングフェイズトリガ付きのコマンドを送信する。スレーブCPU20は通信ブロック23を介してコマンドを受信する。スレーブCPU20では、受信されたコマンドに表現されたフェイズ(シーケンス番号)と、期待されるフェイズ(シーケンス番号)、すなわち次に処理すべきフェイズ(図9(a)ではフェイズ1)とを比較し、両者が一致していれば通信状態が正常であると認識する。通信状態が正常であると認識した場合には、スレーブCPU20は通信ブロック23を介してマスターCPU10に当該フェイズ(図9(a)ではフェイズ1)を示す情報(シーケンス番号)を含んだレスポンスを返送する。マスターCPU10は、スレーブCPU20からのレスポンスを一定時間内に受信し、かつ受信されたレスポンスに表現されたフェイズ(シーケンス番号)が適正であれば、通信状態が正常であると認識する。
コマンドおよびレスポンスの送受信により通信状態を確認するコマンドトリガ期間の後、全二重化通信期間に移行する。全二重化通信期間では、マスターCPU10およびスレーブCPU20は、それぞれ同一フェイズ(図9(a)ではフェイズ1)の処理を実行し、マスターCPU10からスレーブCPU20に向けてデータMAが、スレーブCPU20からにマスターCPU10向けてデータSLが、並行して送信される。データMAおよびデータSLには、それぞれ上述した、等値化のために送受信されるステータス、および照合のために送受信されるフレーム(PV値、ステータス、CRCコードおよびカウント番号からなるフレーム)が含まれる。
図9(b)に示すように、このようなフェイズを順次繰り返すことで、マスターCPU10およびスレーブCPU20において同一処理が互いに同期して実行される。
以上説明したように、実施例1では、両CPUのデータを互いに照合する前段で、各CPUが取得したステータスを等値化している。このため、いずれかのCPUでステータスの異常が検知された場合には、ステータスの等値化によりステータスが異常であることの認識が両CPUで共有化される。したがって、ステータスの異常時に後段におけるデータ照合での不一致とはならず、ステータス異常と、データの照合不一致とを切り分けて認識可能となり、異常状態を正しく通知することが可能となる。また、実施例1では、マスターCPU10の診断部12が診断回路75からの診断情報を受けて異常の検出および判定を実行することで、診断結果であるステータスを生成し、これをスレーブCPU20に向けて送信している。同様に、スレーブCPU20の診断部22が診断回路77からの診断情報を受けて異常の検出および判定を実行することで、診断結果であるステータスを生成し、これをマスターCPU10に向けて送信している。このように、通信の対象となる情報は診断情報そのものではなく、異常に対する処理に必要な情報として集約されたステータスであるため、通信データ量を抑制することができ、通信の負担が軽減される。このようなステータスの等値化は、とくにCPUごとに独立した周辺回路を増やしてでもCPU間に共通回路部分を減らし、CPUを疎結合させる必要がある場合により有効である。また、一方のCPUだけでしか周辺回路の診断ができないような場合にも有効である。
実施例1では、両CPUでCRCコードを生成し、CRC付きのデータ(フレーム)で照合を実行するため、照合の信頼性が高まる。また、両CPUで照合の結果、いずれもデータが一致した場合に限り上流工程に情報を通知し、いずれか一方のCPUで異常が判定されれば、上流工程への情報の出力が確実に防止される。このため、上流工程に出力した情報の信頼性を高めることができる。すなわち、上流工程における検査でCRCコードが正常であれば、そのデータは入出力ユニット3a内部でCPU間照合された高信頼のデータであることを意味する。また、上流工程でもCRCコードの検査を行うことで、CPU内部においてCRC付きデータを取り扱う全工程について、異常の有無を改めて診断できることになる。
また、CPU間通信を用いてCRC付きのデータを送受信し、両CPUで照合しているので、別途、CPU間通信フレームのチェック、例えば、フレームサム、パリティー等のチェックを実行する必要がない。
実施例1では、CPU間通信のタイミングを利用してフェイズごとに処理の同期を取るようにしている。このため、同期化のための無駄な処理が不要で、同期化処理に起因するパフォーマンスの低下がない。すなわち、本来必須の通信内容に、フェイズを特定するシーケンス番号を挿入するだけで、余分な処理を要求しない。また、このような同期化により両CPUが常に同期して同一フェイズを実行するので、CPU間のデータ照合の精度を高めることができる。一方で、CPU外部の要因で発生する過渡的な状態変化に対しても、両CPUが同時に追従するため、突発的なデータ照合の不一致が発生しない。また、基本的にCPU20はCPU10から指定されたフェイズを実行する関係にあるので、フェイズの同期がずれても、容易に復帰可能である。
実施例1で示した等値化の処理、CRCコードの付加、データ照合のシーケンス等は、CPUのプラグラムにより容易に実現できる。また、CPU間通信は、CPUに標準的に実装されている非同期通信(UART)機能を用いて容易に実現できる。また、CPU間通信をシリアル通信とすることで、2つのCPUを互いに絶縁されたフィールド機器側と、コントローラ側に実装する場合でも、実装が容易である。
実施例2の情報処理装置は、マスターCPUと、スレーブCPUとが、互いに絶縁されて実装される例を示している。
図10は、実施例2の情報処理装置としての入出力ユニットの構成を示すブロック図である。
図4に示したようなプラント制御システムでは、通常、コントローラ2とフィールド機器1とが距離を置いて設置されている。したがって、地表を伝播するノイズや落雷の影響から逃れる目的で、コントローラ2およびフィールド機器1のグランドは互いに分離して設けられる。このため、コントローラ2の側と、各フィールド機器1との間は、電気的な絶縁状態を維持する必要がある。
図10に示す入出力ユニット3bでは、絶縁境界Lを介してマスターCPU10Aがコントローラ2側(上流側)に、スレーブCPU20Aがフィールド機器1側(下流側)に設けられている。下流側からのアナログ入力値は入力回路32を経て、AD変換部33においてデジタル信号に変換され、スレーブCPU20Aに入力される。診断部34には、スレーブCPU20Aとグランド電位を共通にする周辺回路35からの情報が与えられるとともに、入力回路32から出力された入力値が与えられる。診断部34では周辺回路35からの情報および入力回路32から出力された入力値に基づく診断情報をスレーブCPU20Aに与える。
一方、下流側からの入力値はフォトカプラ37を介してマスターCPU10Aにも入力される。アナログ入力値はフォトカプラ37において2値化される。マスターCPU10Aでは2値化された信号(デジタル信号)に基づく処理を実行する。
なお、入力値は複数チャンネル(例えば8チャンネル)で構成されており、入力回路32、AD変換部33およびフォトカプラ37は、チャンネル数に対応する数のユニットが用意されている。
マスターCPU10AおよびスレーブCPU20Aは、それぞれに設けられたCPU間通信ブロック11AおよびCPU間通信ブロック21Aを介してタイミングフェイズトリガ付きコマンド、およびコマンドに対するレスポンスを送受信する。これにより、互いに独立しつつ、同一処理を同期して実行する。また、マスターCPU10AおよびスレーブCPU20Aは、CPU間通信ブロック11AおよびCPU間通信ブロック21Aを介して互いのデータを送受信し合い、データの照合をそれぞれ行う。さらに、スレーブCPU20Aで得られた診断情報はマスターCPU10Aにも送信され、ステータスの等値化が実行される。
マスターCPU10Aでは、等値化されたステータスが異常を示すことなく、かつ、マスターCPU10AおよびスレーブCPU20Aのデータの照合の結果、両者が一致する場合に限って、上位通信ブロック12Aを介して上位ブロック38にデータを通知する。また、スレーブCPU20Aにおいてステータスの異常、またはマスターCPU10AおよびスレーブCPU20Aのデータの不一致が検知された場合には、リセット信号をマスターCPU10Aに送出する。この場合、マスターCPU10Aはリセット信号により強制的にリセット状態とされ、マスターCPU10Aから上位ブロック38へのデータの通知が阻止される。
このように、実施例2では、ステータスの等値化を行い、等値化後のステータスが異常を示す場合には、両者のCPUにおいて上位通信ブロック12Aへのデータの出力を停止する。すなわち、両者のCPUにおいて同一のイベントを実行する。これにより、異常の可能性がある場合に、上位ブロック38へのデータの出力を確実に阻止できる。
また、実施例2では、両者のCPUにおいて生成されたデータを比較し、データの不一致が検知された場合には、両者のCPUにおいて上位通信ブロック12Aへのデータの出力を停止する。すなわち、両者のCPUにおいて同一のイベントを実行する。これにより、異常の可能性がある場合に、上位ブロック38へのデータの出力を確実に阻止できる。
なお、CPU間の通信経路およびリセット信号の伝送ラインは、絶縁境界Lにおいて、フォトカプラ等によりマスターCPU10AおよびスレーブCPU20A間で絶縁されている。
また、図10に示すユニット3bでは、スレーブCPU20Aがフィールド機器1側に実装され、フィールド機器1側の周辺回路35からの情報や入力回路32は、スレーブCPU20Aと非絶縁状態で実装されている。このため、スレーブCPU20Aは、フィールド機器1側の周辺回路35からの情報や入力回路32を経由した入力値を、容易に取り込むことができ、詳細な診断を実行できる。また、CPU間通信は非同期通信(UART)等を用いることで、少ない本数の通信ラインによって実行可能であるため、絶縁状態を容易に維持することができる。このため、CPU間通信により診断情報であるステータスを両CPU間で等値化することで、スレーブCPU20Aでの詳細な診断結果をマスターCPU10Aにおいても有効に活用できる。
実施例3の情報処理装置は、フィールド機器1(図4)側からのアナログ信号をデジタル信号に変換し、2つのCPUが共通のデジタル信号を受けてコントローラ2(図4)側にデータを出力する入出力ユニットの例を示している。図11は、実施例3の情報処理装置としての入出力ユニットの構成を示すブロック図である。
図11に示す入出力ユニット3cは、互いに独立して同一処理を実行するマスターCPU10BおよびスレーブCPU20Bと、複数チャンネル(例えば8チャンネル)のアナログ信号を受け、1つの信号を選択するメインのマルチプレクサ41およびサブのマルチプレクサ42と、マルチプレクサ41からのアナログ信号を受ける入力増幅器43と、入力増幅器43から出力された信号をデジタル信号に変換してマスターCPU10BおよびスレーブCPU20Bに与えるAD変換器44とを備える。
メインのマルチプレクサ41およびサブのマルチプレクサ42の出力信号は、マスターCPU10BおよびスレーブCPU20Bでそれぞれ比較され、不一致の場合にはステータスの異常と判断する。またステータスはCPU間通信で交換され、ステータスの等値化が行われる。これにより、マルチプレクサ41の動作の健全性が診断される。また、入力増幅部43およびAD変換器44は全チャンネルに対し共通であるが、マルチプレクサ41を介して一定周期で入力増幅部43に基準電圧を入力し、AD変換器44の出力をマスターCPU10BおよびスレーブCPU20Bでそれぞれ確認することで、ステータスを監視している。この場合も、ステータスはCPU間通信で交換され、ステータスの等値化が行われる。
マスターCPU10BおよびスレーブCPU20Bは、それぞれに設けられたCPU間通信ブロック11BおよびCPU間通信ブロック21Bを介してタイミングフェイズトリガ付きコマンド、およびコマンドに対するレスポンスを送受信することで、互いに独立しつつ、同一処理を同期して実行する。また、マスターCPU10BおよびスレーブCPU20Bで得られたステータスはCPU間通信により交換され、ステータスの等値化が実行される。さらに、マスターCPU10BおよびスレーブCPU20Bは、CPU間通信ブロック11BおよびCPU間通信ブロック21Bを介して互いのデータを送受信し合い、データの照合を行う。
マスターCPU10Bでは、等値化されたステータスが異常を示すことなく、かつ、マスターCPU10BおよびスレーブCPU20Bのデータの照合の結果、両者が一致する場合に限って、通信ブロック12Bを介して上位ブロック45にデータを通知する。また、スレーブCPU20Bにおいてステータスの異常、またはマスターCPU10BおよびスレーブCPU20Bのデータの不一致が検知された場合には、リセット信号をマスターCPU10Bに送出する。この場合、マスターCPU10Bはリセット信号により強制的にリセット状態とされ、マスターCPU10Bから上位ブロック45へのデータの通知が阻止される。
このように、実施例3では、ステータスの等値化を行い、等値化後のステータスが異常を示す場合には、両者のCPUにおいて上位ブロック45へのデータの出力を禁止する。すなわち、両者のCPUにおいて同一のイベントを実行する。これにより、異常の可能性がある場合に、上位ブロック45へのデータの出力を確実に阻止できる。
また、実施例3では、両者のCPUにおいて生成されたデータを比較し、データの不一致が検知された場合には、両者のCPUにおいて上位ブロック45へのデータの出力を禁止する。すなわち、両者のCPUにおいて同一のイベントを実行する。これにより、異常の可能性がある場合に、上位ブロック45へのデータの出力を確実に阻止できる。
実施例4の情報処理装置は、コントローラ2(図4)側(上流側)から入力されたCRCコード付きのデータを、フィールド機器1(図4)側(下流側)に出力する入出力ユニットの例を示している。図12は、実施例4の情報処理装置としての入出力ユニットの構成の一部を示すブロック図である。
図12に示す入出力ユニットは、互いに独立して処理を実行するCPU50およびCPU60を備える。
CPU50は、入力部81を経由して入力されたデータに基づいてCRCコードの検査を実行するコード検査部51と、CPU60との間で通信を実行する通信ブロック52と、入力されたデータをフィールド機器1側で使用される形式に変換する設定値処理部53とを備える。
CPU60は、CPU50から転送されたデータに基づいてCRCコードの検査を実行するコード検査部61と、CPU60との間で通信を実行する通信ブロック62と、入力されたデータをフィールド機器1側で使用される形式に変換する設定値処理部63とを備える。
次に、図12に示す入出力ユニットの動作について説明する。
コントローラ2側からのデータは入力部81を介してCPU50に入力される。このデータは、フィールド機器1(例えば電磁弁)を特定する設定先と、設定先に設定されるべき設定値(例えば電磁弁の開度)と、設定値および設定先のデータに基づいて作成されたCRCコードとを含んでいる。
CPU50に入力されたデータはコード検査部51に与えられる。コード検査部51では、受け取った設定値および設定先のデータに基づいてCRCコードを作成する。そして、データとして受け取ったCRCコードと、コード検査部51で作成したCRCコードとを比較する。コード検査部51は、両者のCRCコードが不一致であれば異常と判断し、この場合には遮断部54においてデータを遮断する。
一方、CPU50に入力されたデータは通信ブロック52を介して送信される。送信されたデータは通信ブロック62を介してCPU60で受信される。
CPU60で受信されたデータはコード検査部61に与えられる。コード検査部61では、受け取った設定値および設定先のデータに基づいてCRCコードを作成する。そして、データとして受け取ったCRCコードと、コード検査部61で作成したCRCコードとを比較する。コード検査部61は、両者のCRCコードが不一致であれば異常と判断し、この場合には遮断部64においてデータを遮断する。
次に、CPU50のコード検査部51で作成されたCRCコードは通信ブロック52を介して送信される。送信されたCRCコードは通信ブロック62を介してCPU60で受信される。また、CPU50のコード検査部51で作成されたCRCコードは、比較部55において、CPU60から送信されてきたCRCコードと比較される。
比較部55は両者のCRCを比較した結果、両者のCRCコードが一致しなければ異常と判断する。この場合、遮断部56においてデータを遮断する。
CPU60では、コード検査部61で作成したCRCコードを、通信ブロック62を介して送信する。送信されたCRCコードは、通信ブロック52を介してCPU50で受信される。このCRCコードは、上記のように、比較部55においてコード検査部51で作成されたCRCコードと比較される。
また、CPU60のコード検査部61で作成されたCRCコードは、比較部65において、CPU50から送信されてきたCRCコードと比較される。
比較部65は両者のCRCを比較した結果、両者のCRCコードが一致しなければ異常と判断する。この場合、遮断部66においてデータを遮断する。
次に、CPU50では、入力部81から受け取ったデータが設定値処理部53に与えられる。しかし、上記のように、異常と判断された場合には、遮断部54あるいは遮断部56においてデータの受け渡しが阻止され、設定値処理部53での処理が停止される。
データが入力される場合、設定値処理部53では、設定値および設定先のデータをフィールド機器1側で使用される形式に変換する。
一方、CPU60では、CPU50から送信されてきたデータが設定値処理部63に与えられる。しかし、上記のように、異常と判断された場合には、遮断部64あるいは遮断部66においてデータの受け渡しが阻止され、設定値処理部63での処理が停止される。
データが入力される場合、設定値処理部63では、設定値および設定先のデータをフィールド機器1側で使用される形式に変換し、出力部82に向けて設定値および設定先のデータを出力する。
出力部82に出力された設定値および設定先のデータは、診断回路83を介してCPU60の比較部67に入力される。また、比較部67には、設定値処理部63から出力された設定値および設定先のデータが直接入力される。
比較部67では、設定値処理部63から出力された段階での設定値および設定先のデータと、診断回路83を経由した設定値および設定先のデータとを比較し、両者が不一致であれば異常と判断する。この場合には遮断部68において設定値および設定先のデータを遮断し、出力部82への設定値および設定先のデータの出力を阻止する。
また、CPU60から出力部82に出力された設定値および設定先のデータは、診断回路84を介してCPU50の比較部57に入力される。さらに、比較部57には、設定値処理部53から出力された設定値および設定先のデータが直接入力される。
比較部57では、設定値処理部53から出力された設定値および設定先のデータと、CPU60から出力された設定値および設定先のデータとを比較し、両者が不一致であれば異常と判断する。この場合にはフェイルセイフ回路85において設定値および設定先のデータを遮断し、CPU60から出力部82への設定値および設定先のデータの出力を阻止する。
このように、実施例4では、CPU60の側が出力部82へのデータ出力を実行しているが、CPU60では出力されたデータを自らトレースし、異常と判断した場合にはデータ出力を停止している。また、CPU50でも、CPU60により出力部82へ出力されたデータを同時にトレースし、異常と判断した場合にはCPU50の側からCPU60による出力を阻止している。このため、いずれかのCPUにより異常と判断した場合にはデータ出力が阻止されるため、誤ったデータが出力部82に出力されることを確実に防止できる。
以上のように、実施例4では、両者のCPUにおいて生成されたCRCコードを比較し、コードの不一致が検知された場合には、両者のCPUにおいてデータを遮断する。すなわち、両者のCPUにおいて同一のイベントを実行する。また、CPU60から出力部82へ出力されたデータと、CPU50で生成したデータとを比較し、データの不一致が検知された場合には、両者のCPUにおいてCPU60からのデータの出力を遮断する。すなわち、両者のCPUにおいて同一のイベントを実行する。これにより、異常の可能性がある場合に、出力部82へのデータの出力を確実に阻止できる。
本発明の適用範囲は上記実施形態に限定されることはない。また、本発明は、安全システムのみならず、各種情報を取り扱う情報処理システムに対し、広く適用することができる。
本発明による情報処理装置を機能的に示すブロック図であり(a)は一の発明を示すブロック図、(b)は他の一の発明を示すブロック図。 本発明による情報処理装置を機能的に示すブロック図であり(a)は一の発明を示すブロック図、(b)は他の一の発明を示すブロック図。 本発明による情報処理装置を機能的に示すブロック図であり(a)は一の発明を示すブロック図、(b)は他の一の発明を示すブロック図。 実施例1の情報処理装置が適用される安全システムの構成を示すブロック図。 第1実施例の情報処理装置の構成の一部を示すブロック図。 ステータスの等値化処理およびフレームの比較処理の手順を示すフローチャート。 両CPUの状態遷移の様子を示す図。 通信処理のシーケンスを示す図。 通信フレームの構成を示す図であり、(a)は個々の通信フレームの構成を、(b)は通信状態が正常な場合の動作を、それぞれ示す図。 実施例2の情報処理装置の構成を示すブロック図。 実施例3の情報処理装置の構成を示すブロック図。 実施例4の情報処理装置の構成の一部を示すブロック図。
符号の説明
101 ステータス取得手段
102 イベント発生手段
103 第1のステータス取得手段
104 第2のステータス取得手段
105 ステータス比較手段
106 ステータス選択手段
107 ステータス送信手段
111 異常判定手段
112 同期化手段
113 照合手段
121 取得手段
122 送信手段
123 処理実行手段

Claims (8)

  1. 互いに独立して同一処理を二重に実行する第1の装置および第2の装置を備える情報処理装置において、
    前記第1の装置において前記情報処理装置の状態に関する第1のステータスを取得する第1のステータス取得手段と、
    前記第2の装置において前記情報処理装置の状態に関する前記第1のステータスとは異なる第2のステータスを取得する第2のステータス取得手段と、
    前記第1のステータス取得手段で取得された前記第1のステータスおよび前記第2のステータス取得手段で取得された前記第2のステータスを、前記第1の装置および前記第2の装置間で交換し合う交換手段と、
    前記第1のステータス取得手段で取得された前記第1のステータスおよび前記交換手段により得られた前記第2のステータスに基づいて、前記情報処理装置の状態を示す等値化ステータスを、所定のアルゴリズムを用いて前記第1の装置において作成する第1の等値化手段と、
    前記第2のステータス取得手段で取得された前記第2のステータスおよび前記交換手段により得られた前記第1のステータスに基づいて、前記情報処理装置の状態を示す前記等値化ステータスを、前記所定のアルゴリズムを用いて前記第2の装置において作成する第2の等値化手段と、
    前記第1の等値化手段および前記第2の等値化手段で作成された前記両等値化ステータスを照合して、前記両等値化ステータスが不一致であれば異常と判定する照合手段と、
    を備えることを特徴とする情報処理装置。
  2. 互いに独立して同一情報処理を二重に実行する第1の装置および第2の装置を備える情報処理装置において、
    前記第1の装置における情報処理を反映させた第1のデータを前記第1の装置において作成する第1のデータ作成手段と、
    前記第2の装置における情報処理を反映させた第2のデータを前記第2の装置において作成する第2のデータ作成手段と、
    前記第1のデータおよび前記第2のデータを照合し、両データが不一致であれば異常と判定する照合手段と、
    前記第1の装置において前記情報処理装置の状態に関する第1のステータスを取得する第1のステータス取得手段と、
    前記第2の装置において前記情報処理装置の状態に関する前記第1のステータスとは異なる第2のステータスを取得する第2のステータス取得手段と、
    前記第1のステータス取得手段で取得された前記第1のステータスおよび前記第2のステータス取得手段で取得された前記第2のステータスを、前記第1の装置および前記第2の装置間で交換し合う交換手段と、
    前記第1のステータス取得手段で取得された前記第1のステータスおよび前記交換手段により得られた前記第2のステータスに基づいて、前記情報処理装置の状態を示す等値化ステータスを、所定のアルゴリズムを用いて前記第1の装置において作成する第1の等値化手段と、
    前記第2のステータス取得手段で取得された前記第2のステータスおよび前記交換手段により得られた前記第1のステータスに基づいて、前記情報処理装置の状態を示す前記等値化ステータスを、前記所定のアルゴリズムを用いて前記第2の装置において作成する第2の等値化手段と、
    を備え、
    前記第1のデータ作成手段は、前記第1の装置における他の情報処理とともに前記第1の等値化手段で作成された前記等値化ステータスを反映させて、前記第1のデータを作成し、
    前記第2のデータ作成手段は、前記第2の装置における他の情報処理とともに前記第2の等値化手段で作成された前記等値化ステータスを反映させて、前記第2のデータを作成することを特徴とする情報処理装置。
  3. 前記第1のステータスは実装回路の診断情報であることを特徴とする請求項1または2に記載の情報処理装置。
  4. 前記第1の装置および前記第2の装置を同期化する同期化手段を備えることを特徴とする請求項1〜3のいずれか1項に記載の情報処理装置。
  5. 前記第1の装置および前記第2の装置は互いに電気的に絶縁されていることを特徴とする請求項1〜4のいずれか1項に記載の情報処理装置。
  6. 前記第1の装置および前記第2の装置は、それぞれ個々のCPUとして構成されていることを特徴とする請求項1〜5のいずれか1項に記載の情報処理装置。
  7. 互いに独立して同一処理を二重に実行する第1の装置および第2の装置を用いた情報処理方法において、
    前記第1の装置において前記情報処理装置の状態に関する第1のステータスを取得する第1のステータス取得ステップと、
    前記第2の装置において前記情報処理装置の状態に関する前記第1のステータスとは異なる第2のステータスを取得する第2のステータス取得ステップと、
    前記第1のステータス取得ステップで取得された前記第1のステータスおよび前記第2のステータス取得ステップで取得された前記第2のステータスを、前記第1の装置および前記第2の装置間で交換し合う交換ステップと、
    前記第1のステータス取得ステップで取得された前記第1のステータスおよび前記交換ステップにより得られた前記第2のステータスに基づいて、前記情報処理装置の状態を示す等値化ステータスを、所定のアルゴリズムを用いて前記第1の装置において作成する第1の等値化ステップと、
    前記第2のステータス取得ステップで取得された前記第2のステータスおよび前記交換ステップにより得られた前記第1のステータスに基づいて、前記情報処理装置の状態を示す前記等値化ステータスを、前記所定のアルゴリズムを用いて前記第2の装置において作成する第2の等値化ステップと、
    前記第1の等値化ステップおよび前記第2の等値化ステップで作成された前記両等値化ステータスを照合して、前記両等値化ステータスが不一致であれば異常と判定する照合ステップと、
    を備えることを特徴とする情報処理方法。
  8. 互いに独立して同一情報処理を二重に実行する第1の装置および第2の装置を備える情報処理方法において、
    前記第1の装置における情報処理を反映させた第1のデータを前記第1の装置において作成する第1のデータ作成ステップと、
    前記第2の装置における情報処理を反映させた第2のデータを前記第2の装置において作成する第2のデータ作成ステップと、
    前記第1のデータおよび前記第2のデータを照合し、両データが不一致であれば異常と判定する照合ステップと、
    前記第1の装置において前記情報処理装置の状態に関する第1のステータスを取得する第1のステータス取得ステップと、
    前記第2の装置において前記情報処理装置の状態に関する前記第1のステータスとは異なる第2のステータスを取得する第2のステータス取得ステップと、
    前記第1のステータス取得ステップで取得された前記第1のステータスおよび前記第2のステータス取得ステップで取得された前記第2のステータスを、前記第1の装置および前記第2の装置間で交換し合う交換ステップと、
    前記第1のステータス取得ステップで取得された前記第1のステータスおよび前記交換ステップにより得られた前記第2のステータスに基づいて、前記情報処理装置の状態を示す等値化ステータスを、所定のアルゴリズムを用いて前記第1の装置において作成する第1の等値化ステップと、
    前記第2のステータス取得ステップで取得された前記第2のステータスおよび前記交換ステップにより得られた前記第1のステータスに基づいて、前記情報処理装置の状態を示す前記等値化ステータスを、前記所定のアルゴリズムを用いて前記第2の装置において作成する第2の等値化ステップと、
    を備え、
    前記第1のデータ作成ステップは、前記第1の装置における他の情報処理とともに前記第1の等値化ステップで作成された前記等値化ステータスを反映させて、前記第1のデータを作成し、
    前記第2のデータ作成ステップは、前記第2の装置における他の情報処理とともに前記第2の等値化ステップで作成された前記等値化ステータスを反映させて、前記第2のデータを作成することを特徴とする情報処理方法。
JP2005022403A 2005-01-31 2005-01-31 情報処理装置および情報処理方法 Active JP3897047B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2005022403A JP3897047B2 (ja) 2005-01-31 2005-01-31 情報処理装置および情報処理方法
EP06712470A EP1857937A1 (en) 2005-01-31 2006-01-27 Information processing apparatus and information processing method
US11/883,392 US20090106461A1 (en) 2005-01-31 2006-01-27 Information Processing Apparatus and Information Processing Method
PCT/JP2006/301304 WO2006080432A1 (ja) 2005-01-31 2006-01-27 情報処理装置および情報処理方法
CNA2006800037137A CN101111824A (zh) 2005-01-31 2006-01-27 信息处理设备和信息处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005022403A JP3897047B2 (ja) 2005-01-31 2005-01-31 情報処理装置および情報処理方法

Publications (2)

Publication Number Publication Date
JP2006209565A JP2006209565A (ja) 2006-08-10
JP3897047B2 true JP3897047B2 (ja) 2007-03-22

Family

ID=36740456

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005022403A Active JP3897047B2 (ja) 2005-01-31 2005-01-31 情報処理装置および情報処理方法

Country Status (4)

Country Link
EP (1) EP1857937A1 (ja)
JP (1) JP3897047B2 (ja)
CN (1) CN101111824A (ja)
WO (1) WO2006080432A1 (ja)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4629793B2 (ja) * 2007-03-29 2011-02-09 富士通株式会社 情報処理装置、エラー処理方法
KR101179738B1 (ko) 2007-11-07 2012-09-04 미쓰비시덴키 가부시키가이샤 안전 제어 장치
JP5243113B2 (ja) * 2008-06-19 2013-07-24 株式会社日立製作所 演算処理装置多重化制御システム
JP5574627B2 (ja) * 2009-06-12 2014-08-20 三菱重工業株式会社 冗長化システム
JP5641181B2 (ja) * 2009-11-26 2014-12-17 横河電機株式会社 二重化処理装置
WO2011068177A1 (ja) * 2009-12-02 2011-06-09 日本電気株式会社 二重化計算システム及び二重化計算方法
JP5560113B2 (ja) * 2010-06-25 2014-07-23 株式会社日立製作所 計算機システム及び計算機の管理方法
JP5618687B2 (ja) * 2010-08-05 2014-11-05 日本信号株式会社 2重化演算装置
US9942107B2 (en) 2010-10-25 2018-04-10 Hitachi, Ltd. Computer system including plural computer nodes synchronized with each other
JP5617651B2 (ja) * 2011-01-18 2014-11-05 横河電機株式会社 通信装置及び制御装置
US8799707B2 (en) 2011-06-28 2014-08-05 Mitsubishi Heavy Industries, Ltd. Redundant system
JP6046888B2 (ja) * 2011-10-18 2016-12-21 日本信号株式会社 フェイルセーフマイコン
US9483055B2 (en) * 2012-12-28 2016-11-01 Irobot Corporation Autonomous coverage robot
US10783030B2 (en) * 2014-03-12 2020-09-22 Sensia Llc Network synchronization for master and slave devices
JP7073285B2 (ja) * 2019-01-09 2022-05-23 ルネサスエレクトロニクス株式会社 動作検証プログラム、動作同期方法及び異常検出装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58217056A (ja) * 1982-06-10 1983-12-16 Matsushita Electric Ind Co Ltd マルチプロセツサシステムのタスク制御方式
JPH02228740A (ja) * 1989-03-01 1990-09-11 Mitsubishi Electric Corp 二重系処理システム
JPH05274168A (ja) * 1992-03-27 1993-10-22 Sony Corp データ処理システム制御装置
JPH07281915A (ja) * 1994-04-08 1995-10-27 Mitsubishi Electric Corp 集積回路モジュール同期2重系情報処理装置
JP2003044103A (ja) * 2001-07-27 2003-02-14 Toshiba Corp ローカル制御システム

Also Published As

Publication number Publication date
JP2006209565A (ja) 2006-08-10
EP1857937A1 (en) 2007-11-21
CN101111824A (zh) 2008-01-23
WO2006080432A1 (ja) 2006-08-03

Similar Documents

Publication Publication Date Title
JP3897047B2 (ja) 情報処理装置および情報処理方法
JP3897046B2 (ja) 情報処理装置および情報処理方法
JP3965699B2 (ja) 情報処理装置および情報処理方法
JP3978617B2 (ja) 安全ユニットの入力装置
CN106716275B (zh) 控制和数据传输系统、网关模块、输入/输出模块和过程控制方法
US20080215913A1 (en) Information Processing System and Information Processing Method
KR101560497B1 (ko) 락스텝으로 이중화된 프로세서 코어들의 리셋 제어 방법 및 이를 이용하는 락스텝 시스템
CN105843088A (zh) 带有内部事件验证的传感器总线系统和单元
CN107229534A (zh) 混合双重双工故障操作模式和对任意数量的故障的概述
US6507760B1 (en) Numerical control unit with a spatially separated input device
US20090106461A1 (en) Information Processing Apparatus and Information Processing Method
CN103576572B (zh) 用于接收信息的电路设备和方法
JP4366652B2 (ja) 伝送器及びその二重化方法
JP2006178730A (ja) 安全信号i/f装置およびその二重化信号入力処理方法
JP2012235335A (ja) 装置間ケーブルの誤接続検出方法及び装置
JP3962956B6 (ja) 情報処理装置および情報処理方法
JP6059652B2 (ja) 信号保安用制御装置
JP5738498B1 (ja) 制御・監視信号伝送システムおよび制御・監視信号伝送システムに使用する子局ターミナル
JP6099187B2 (ja) バス同期2重系のコンピュータシステム
JP3627545B2 (ja) Cpuの異常検出方法
JP2008109325A (ja) 通信システム
JP6234388B2 (ja) 2重系制御装置
JP2008092523A (ja) データ転送装置及びデータ処理方法
JP2008283488A (ja) 検査システム、および検査システム用データ処理装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060508

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060623

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20061128

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20061211

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 3897047

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100105

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110105

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120105

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120105

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130105

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140105

Year of fee payment: 7