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

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

Info

Publication number
JP3962956B6
JP3962956B6 JP2005016675A JP2005016675A JP3962956B6 JP 3962956 B6 JP3962956 B6 JP 3962956B6 JP 2005016675 A JP2005016675 A JP 2005016675A JP 2005016675 A JP2005016675 A JP 2005016675A JP 3962956 B6 JP3962956 B6 JP 3962956B6
Authority
JP
Japan
Prior art keywords
abnormality
reset
information processing
cpu
unit
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
JP2005016675A
Other languages
English (en)
Other versions
JP2006209197A (ja
JP3962956B2 (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
Filing date
Publication date
Application filed by Yokogawa Electric Corp filed Critical Yokogawa Electric Corp
Priority to JP2005016675A priority Critical patent/JP3962956B6/ja
Priority to PCT/JP2006/300710 priority patent/WO2006080227A1/ja
Priority to EP06711956A priority patent/EP1843247A1/en
Priority to US11/883,006 priority patent/US20080215913A1/en
Priority to CNA2006800032025A priority patent/CN101107597A/zh
Publication of JP2006209197A publication Critical patent/JP2006209197A/ja
Application granted granted Critical
Publication of JP3962956B2 publication Critical patent/JP3962956B2/ja
Publication of JP3962956B6 publication Critical patent/JP3962956B6/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、互いに独立して処理を実行する複数の装置を備える情報処理装置および情報処理方法に関し、とくに信頼性を向上させることができる情報処理装置および情報処理方法に関する。
プラントに配置されたフィールド機器を管理、制御するプラント制御システムが知られている。また、このようなプラントでは、プラントの安全を図るための安全システムが導入される。安全システムは、フィールド機器に異常が認められた場合に、警報を通知するとともに必要な措置を実行するシステムであり、プラント制御システムの一部として、あるいは、プラント制御システムとは独立して設けられる。
特願平08−006673号公報
安全システムには、その意図する機能から極めて高度の信頼性を要求される。例えば、異常が発生したにも関わらずシステムが安全だと認識し、あるいは、誤った情報を通知するような事態は極力回避しなければならない。また、異常の可能性が示される場合には安全サイドの処理を選択する必要がある。
本発明の目的は、高度の信頼性を確保しうる情報処理装置および情報処理方法を提供することにある。
本発明の情報処理装置は、同一処理を二重に実行する第1の装置および第2の装置を備える情報処理装置において、前記第1の装置および前記第2の装置間でデータを照合し、データが不一致の場合に異常と判定する照合手段と、前記第2の装置の動作異常を前記照合手段と独立して検出する異常検出手段と、前記異常検出手段により前記第2の装置の動作異常が検出された場合に、前記第1の装置および前記第2の装置をリセットするリセット手段と、を備え、前記第1の装置は所定の情報処理を実行する装置として機能し、前記第2の装置は異常検出のための装置として機能し、前記照合手段は前記第1の装置に設けられ、該照合手段により異常と判定された場合には、前記リセット手段により前記第1の装置および前記第2の装置をリセットすることを特徴とする。
前記異常検出手段は、前記第2の装置の動作を監視するウォッチドッグ・タイマであってもよい。
前記第1の装置および前記第2の装置は、それぞれ個々のCPUとして構成されていてもよい。
本発明の情報処理方法は、同一処理を二重に実行する第1の装置および第2の装置を備える情報処理方法において、前記第1の装置および前記第2の装置間でデータを照合し、データが不一致の場合に異常と判定するステップと、前記第2の装置の動作異常を前記データの照合と独立して検出するステップと、前記動作異常を検出するステップにより前記第2の装置の動作異常が検出された場合に、前記第1の装置および前記第2の装置をリセットするステップと、を備え、前記第1の装置は所定の情報処理を実行する装置として機能し、前記第2の装置は異常検出のための装置として機能し、前記異常と判定するステップは、前記第1の装置において実行され、該異常と判定するステップにより異常と判定された場合には、前記第1の装置および前記第2の装置をリセットすることを特徴とする。
本発明の情報処理装置および情報処理方法によれば、一の装置における異常が検出された場合に、他の装置をリセットするので、当該他の装置自身の診断に頼ることなく、当該他の装置をリセットできる。
図1は本発明による情報処理装置を機能的に示すブロック図である。
図1(a)において、第1の装置および第2の装置は、同一処理を二重に実行する。異常検出手段101は、第1の装置における異常を検出する。第2の装置リセット手段102は、異常検出手段101により異常が検出された場合に、第2の装置をリセットする。
また、第1の装置リセット手段103は、異常検出手段101により異常が検出された場合に、第1の装置をリセットする。
図1(b)において、第1の装置および第2の装置は、同一処理を二重に実行する。照合手段111は、第1の装置および第2の装置で生成されたデータを照合し、データが不一致であれば異常と判定する。リセット手段112は、照合手段111により異常と判定された場合に、第2の装置をリセットする。
図1(c)において、第1の装置および第2の装置は、同一処理を二重に実行する。第2装置リセット手段121は、第2の装置の異常を検出した場合に、第2の装置をリセットする。異常認識手段122は、第1の装置において第2の装置の異常を認識する。通知手段123は、異常認識手段122により認識された第2の装置の異常を通知する。
第1の装置リセット手段124は、第2の装置において第1の装置の異常を検出した場合に、第1の装置をリセットする。
以下、図2〜図 を参照して、本発明による情報処理装置の実施例1〜4について説明する。
図2は実施例1の情報処理装置が適用される安全システムの構成を示すブロック図である。この安全システムはプラント制御システムの一部として構成されている。
図2に示すように、プラント制御システムは、プラント各部に配置された電磁弁やセンサ等のフィールド機器1,1,・・・を統合的に管理、制御するコントローラ2と、コントローラ2およびフィールド機器1の間に介装される入出力装置3,3,・・・と、を備える。入出力装置3,3,・・・は、ネットワーク4を介してコントローラ2に接続されている。また、フィールド機器1,1,・・・は、ターミナルボード5を介して入出力装置3に接続されている。
図2に示すように、入出力装置3にはフィールド機器1とコントローラ2との間のインターフェース処理を実行する入出力ユニット3a,3b,・・・が実装される。後述するように、これらの入出力ユニット3a,3b,・・・では、信頼性向上を目的として同一処理を二重に実行している。
図3は入出力ユニット3aの構成の一部を示すブロック図である。図3では、フィールド機器1の側から入力された入力値を加工して、上位システム(コントローラ2側システム)に向けてデータを出力するユニットの例を示している。
図3に示すように、このユニットは、第1のシステム10および第2のシステム20を備える。第1のシステム10および第2のシステム20には、それぞれ、別々の動作クロックにより動作するマスターCPU11およびスレーブCPU21が設けられている。マスターCPU11およびスレーブCPU21は、互いに独立して同一処理を実行する。また、第1のシステム10および第2のシステム20には、それぞれ周辺回路12および周辺回路22が実装されている。
図3に示すように、フィールド機器1からの入力値は、マスターCPU11に入力される。マスターCPU11では入力値に基づく演算処理を実行し、上位システムで使用可能なデータ形式のデータを生成する。マスターCPU11が上位システムとの間の通信を担当し、マスターCPU11で生成されたデータが上位システムに向けて出力される。
マスターCPU11およびスレーブCPU21は、互いに非同期通信(UART)により通信を実行する。マスターCPU11およびスレーブCPU21は、非同期通信により所定の処理フェイズごとにコマンドおよびレスポンスを交換することで、互いに動作の同期を取っている。
また、非同期通信により、フィールド機器1からの入力値はスレーブCPU21に送信され、スレーブCPU21ではマスターCPU11と同一の演算処理を実行する。
さらに、マスターCPU11およびスレーブCPU21間で、互いの処理により生成されたデータを交換し、それぞれのCPUにおいてこれらのデータを照合している。そして、データの不一致が検知された場合には、いずれかの処理に異常が発生したものとして、後述する処理を実行する。なお、データの照合については、実施例5においても詳述する。
図3に示すように、第1のシステム10には、マスターCPU11を監視するウォッチドッグ・タイマ(WDT)14が、第2のシステム20には、スレーブCPU21を監視するウォッチドッグ・タイマ(WDT)24が、それぞれ設けられている。
図4は図3に示すユニットにおけるリセットの手順を示すブロック図である。
図3および図4に示すように、ウォッチドッグ・タイマ14は、マスターCPU11からのタイマクリア信号の受信間隔を計時し、タイマクリア信号が一定時間受信されない場合、すなわちマスターCPU11の動作異常が検出された場合には、マスターCPU11および周辺回路12をリセットする。また、このユニットでは、ウォッチドッグ・タイマ14によりマスターCPU11の動作異常が検出された場合、ウォッチドッグ・タイマ14から出力されるリセット信号R1が第2のシステム20のウォッチドッグ・タイマ24に与えられる。このため、ウォッチドッグ・タイマ24の制御によりスレーブCPU21および周辺回路22がリセットされる。
ウォッチドッグ・タイマ24は、スレーブCPU21からのタイマクリア信号の受信間隔を計時し、タイマクリア信号が一定時間受信されない場合、すなわちスレーブCPU21の動作異常が検出された場合には、スレーブCPU21および周辺回路22をリセットする。また、ウォッチドッグ・タイマ24によりスレーブCPU21の動作異常が検出された場合、ウォッチドッグ・タイマ24から出力されるリセット信号R2が第1のシステム10のウォッチドッグ・タイマ14に与えられる。このため、ウォッチドッグ・タイマ14の制御によりマスターCPU11および周辺回路12がリセットされる。
このように、ウォッチドッグ・タイマ14あるいはウォッチドッグ・タイマ24によりいずれかのCPUにおける異常が検出された場合には、自らのシステム(第1のシステムまたは第2のシステム)のみならず、他方のシステムについてもリセットされ、システム全体がリセットされることになる。
さらに、マスターCPU11において異常を検出した場合、マスターCPU11からウォッチドッグ・タイマ24に向けてKILL信号K1を出力する。この場合、ウォッチドッグ・タイマ24の制御によりスレーブCPU21および周辺回路22がリセットされる。すなわち、第2のシステム20がリセットされた状態となる。また、ウォッチドッグ・タイマ24から出力されるリセット信号R2により、第1のシステム10自身もリセットされた状態となる。ここで、マスターCPU11により検出される異常には、CPU間の非同期通信の異常や、上述した両CPUで生成されたデータが不一致であることで検出される処理の異常が含まれる。ここで検出される異常は、第1のシステム10に原因がある異常に限定されず、第2のシステム20に原因がある場合も含まれる。
スレーブCPU21において異常を検出した場合、スレーブCPU21からウォッチドッグ・タイマ14に向けてKILL信号K2を出力する。この場合、ウォッチドッグ・タイマ14の制御によりマスターCPU11および周辺回路12がリセットされる。すなわち、第1のシステム10がリセットされた状態となる。また、ウォッチドッグ・タイマ14から出力されるリセット信号R1により、第2のシステム20自身もリセットされた状態となる。ここで、スレーブCPU21により検出される異常には、CPU間の非同期通信の異常や、上述した両CPUで生成されたデータが不一致であることで検出される処理の異常が含まれる。ここで検出される異常は、第2のシステム20に原因がある異常に限定されず、第1のシステム10に原因がある場合も含まれる。
このように、いずれかのCPUにおいて何らかの異常が検出された場合には、相手方のシステム(第1のシステムまたは第2のシステム)をリセットする。この手順によるリセットは、ウォッチドッグ・タイマ14あるいはウォッチドッグ・タイマ24により異常が検出されない場合に、有効に機能する。
リセット解除後、異常が検出されない場合には、第1のシステム10および第2のシステム20が同時に正常復帰する。
以上のように、実施例1では、いずれかのシステム10,20における異常が検出された場合には、システム全体がリセットされ、上位システムに誤った情報が出力されるおそれはないので、システム全体として的確なフェイルセイフを実行できる。また、システム全体がリセットされた状態からリセット解除するので、リセット解除後の正常な初期化が実現できる。
一般に、異常が発生したCPU自身が、自らの異常を正しく検出できる保証はない。しかし、実施例1では、CPUが互いに相手方のCPUの異常を検出し、相手方のCPUをリセットしている。このため、異常が発生したCPU自身の診断に頼ることなく、異常の発生を確実に検出できる。したがって、フェイル時における処理の信頼性を向上させることができる。
さらに、2つのシステムが相互に異常を検出し合う構成を採ることにより、異常検出のための特別の構成を追加することなく、低コストで異常検出の精度を大幅に高めることができる。また、CPU間の通信に非同期通信(UART)を用いているので、CPU間の絶縁が必要な場合でも、低コストで装置を構成できる。
図5は実施例2の情報処理装置が適用される入出力ユニットの構成の一部を示すブロック図である。実施例1と同様、実施例2では、フィールド機器1の側から入力された入力値を加工して、上位システム(コントローラ2側システム)に向けてデータを出力するユニットの例を示している。
実施例2では、実施例1におけるKILL信号K1およびリセット信号R2を省略した例を示している。
このような構成は、マスター側システムである第1のシステム10で、スレーブ側システムである第2のシステム20の異常を検出した時に、システム全体をリセットせず、上位システムに第2のシステム20の異常を通知できれば充分であると考えられる場合に適用される。
実施例2では、第2のシステム20で異常が発生しウォッチドッグ・タイマ24が異常を検出した場合、第2のシステム20のみがリセットされ、第1のシステム10はリセットされない。このため、第1のシステム10を用いた処理を継続でき、上位システムに対する通知も可能となる。この場合、マスターCPU10では、CPU間の非同期通信によるデータの照合の結果、両CPU間のデータの不一致が発生することとなり、マスターCPU10においてスレーブCPU20の異常を認識することができる。また、データ照合以外の方法でスレーブCPU20の異常を認識できるようにしてもよい。非同期通信を用いてスレーブCPU20の異常を認識してもよいし、非同期通信以外の経路を介してスレーブCPU20が異常である旨の情報を取得してもよい。
実施例2においても、第1のシステム10に異常が発生した場合には、ウォッチドッグ・タイマ14による異常検出、あるいは第2のシステム20による異常検出は有効に機能し、この場合には第1のシステム10も含め、システム全体がリセットされ、上位システムに誤った情報が出力されるおそれはない。したがって、実施例1と同様、システム全体として的確なフェイルセイフを実行できる。
図6は実施例3の情報処理装置が適用される入出力ユニットの構成の一部を示すブロック図である。実施例3では、上位システム(コントローラ2側システム)からの情報を加工して、フィールド機器1の側に向けてデータを出力するユニットの例を示している。
図6に示すように、このユニットは、第1のシステム10Aおよび第2のシステム20Aを備える。第1のシステム10Aおよび第2のシステム20Aには、それぞれ、別々の動作クロックにより動作するマスターCPU11AおよびスレーブCPU21Aが設けられている。マスターCPU11AおよびスレーブCPU21Aは、互いに独立して同一処理を実行する。また、第1のシステム10Aおよび第2のシステム20Aには、それぞれ周辺回路12Aおよび周辺回路22Aが実装されている。
図6に示すように、マスターCPU11Aが上位システムとの間の通信を担当し、コントローラ2側からの情報はマスターCPU11Aに入力される。マスターCPU11Aでは、コントローラ2側からの情報に基づく演算処理を実行し、フィールド機器1で使用可能なデータ形式のデータを生成する。
マスターCPU11AおよびスレーブCPU21Aは、互いに非同期通信(UART)により通信を実行する。マスターCPU11AおよびスレーブCPU21Aは、非同期通信により所定の処理フェイズごとにコマンドおよびレスポンスを交換することで、互いに動作の同期を取っている。
また、非同期通信により、コントローラ2側からの情報はスレーブCPU21Aに送信され、スレーブCPU21AではマスターCPU11Aと同一の演算処理を実行する。
さらに、マスターCPU11AおよびスレーブCPU21A間で、互いの処理により生成されたデータを交換し、それぞれのCPUにおいてこれらを照合している。そして、データの不一致が検知された場合には、いずれかの処理に異常が発生したものとして、後述する処理を実行する。
図6に示すように、第1のシステム10Aには、マスターCPU11Aを監視するウォッチドッグ・タイマ(WDT)14Aが、第2のシステム20Aには、スレーブCPU21Aを監視するウォッチドッグ・タイマ(WDT)24Aが、それぞれ設けられている。
図6に示すように、ウォッチドッグ・タイマ14Aは、マスターCPU11Aの動作異常が検出された場合に、マスターCPU11Aおよび周辺回路12Aをリセットする。また、ウォッチドッグ・タイマ14AによりマスターCPU11Aの動作異常が検出された場合、ウォッチドッグ・タイマ14Aから出力されるリセット信号R1が第2のシステム20Aのウォッチドッグ・タイマ24Aに与えられる。このため、ウォッチドッグ・タイマ24Aの制御によりスレーブCPU21Aおよび周辺回路22Aがリセットされる。
ウォッチドッグ・タイマ24Aは、スレーブCPU21Aの動作異常が検出された場合に、スレーブCPU21Aおよび周辺回路22Aをリセットする。また、ウォッチドッグ・タイマ24AによりスレーブCPU21Aの動作異常が検出された場合、ウォッチドッグ・タイマ24Aから出力されるリセット信号R2が第1のシステム10Aのウォッチドッグ・タイマ14Aに与えられる。このため、ウォッチドッグ・タイマ14Aの制御によりマスターCPU11Aおよび周辺回路12Aがリセットされる。
このように、ウォッチドッグ・タイマ14Aあるいはウォッチドッグ・タイマ24AによりいずれかのCPUにおける異常が検出された場合には、システム全体がリセットされる。
さらに、マスターCPU11Aにおいて異常を検出した場合、マスターCPU11Aからウォッチドッグ・タイマ24Aに向けてKILL信号K1を出力する。この場合、ウォッチドッグ・タイマ24Aの制御により第2のシステム20Aがリセットされた状態となる。また、ウォッチドッグ・タイマ24Aから出力されるリセット信号R2により、第1のシステム10自身もリセットされた状態となる。
スレーブCPU21Aにおいて異常を検出した場合、スレーブCPU21Aからウォッチドッグ・タイマ14Aに向けてKILL信号K2を出力する。この場合、ウォッチドッグ・タイマ14Aの制御により第1のシステム10Aがリセットされた状態となる。また、ウォッチドッグ・タイマ14Aから出力されるリセット信号R1により、第2のシステム20A自身もリセットされた状態となる。
以上のように、実施例3では、実施例1と同様、いずれかのシステム10A,20Aにおける異常が検出された場合には、システム全体がリセットされ、フィールド機器1側に誤ったデータが出力されるおそれはないので、システム全体として的確なフェイルセイフを実行できる。また、システム全体がリセットされた状態からリセット解除するので、リセット解除後の正常な初期化が実現できる。
実施例3において、KILL信号K1およびリセット信号R2を省略することもできる。
このような構成は、マスター側システムである第1のシステム10Aで、スレーブ側システムである第2のシステム20Aの異常検出時に、システム全体をリセットせず、上位システムに第2のシステム20Aの異常を通知するとともに、フィールド機器1側へのデータ出力を遮断できれば充分であると考えられる場合に適用される。
この場合、第2のシステム20Aで異常が発生しウォッチドッグ・タイマ24Aが異常を検出した場合、第2のシステム20Aのみがリセットされ、第1のシステム10Aはリセットされない。このため、第1のシステム10Aを用いた処理を継続でき、上位システムに対する通知も可能となる。この場合、マスターCPU10Aの処理によりフィールド機器1側へのデータ出力をオフし、データの出力を阻止する。
このような構成においても、第1のシステム10Aに異常が発生した場合には、ウォッチドッグ・タイマ14Aによる異常検出、あるいは第2のシステム20Aによる異常検出は有効に機能し、この場合には第1のシステム10Aも含め、システム全体がリセットされ、フィールド機器1側に誤ったデータが与えられるおそれはない。したがって、システム全体として的確なフェイルセイフを実行できる。
図7は、実施例4の情報処理装置におけるリセットの手順を示すブロック図である。
実施例4の情報処理装置は、それぞれCPUを備える第1〜第3のシステムにより構成される。
図7に示すように、第1のシステム30はマスターCPU31およびウォッチドッグ・タイマ34を備える。また、第2のシステム40はスレーブCPU41およびウォッチドッグ・タイマ44を、第3のシステム50はスレーブCPU51およびウォッチドッグ・タイマ54を、それぞれ備える。
実施例4では、第1のシステム30のウォッチドッグ・タイマ34からはリセット信号R1が出力され、リセット信号R1により第2のシステム40および第3のシステム50がリセットされる。第2のシステム40のウォッチドッグ・タイマ44からはリセット信号R2が出力され、リセット信号R2により第1のシステム30がリセットされる。第3のシステム50のウォッチドッグ・タイマ54からはリセット信号R3が出力され、リセット信号R3により第1のシステム30がリセットされる。
また、第1のシステム30のマスターCPU31からはKILL信号K1が出力され、KILL信号K1により第2のシステム40および第3のシステム50がリセットされる。第2のシステム40のスレーブCPU41からはKILL信号K2が出力され、KILL信号K2により第1のシステム30がリセットされる。第3のシステム50のスレーブCPU51からはKILL信号K3が出力され、KILL信号K3により第1のシステム30がリセットされる。
実施例4では、第1のシステム30と第2のシステム40、および第1のシステム30と第3のシステム50が、それぞれ相互に異常を監視し合うことで、異常の発生を確実に検出している。このように、マスターCPUと各スレーブCPU間で相互に監視する構成を採用することにより、スレーブCPU間での通信を行うことなく、すべてのシステムにおける異常を的確に検出できる。したがって、通信の複雑化に伴う実装上の困難を回避できる。
なお、情報処理装置に要求される特質に応じて、適宜、リセット信号あるいはKILL信号によるリセットの経路を省略し、あるいは、リセット機能を他の方法で代替してもよい。
図8は実施例5の情報処理装置が適用される入出力ユニットの構成の一部を示すブロック図である。本実施例では、下流工程であるフィールド機器1の側から入力された入力値を加工して、上流工程であるコントローラ2の側に向けてPV値(プロセス値)を出力するユニットの例を示している。
図8に示すように、入出力ユニットは、マスターCPU10Bと、スレーブCPU20Bとを備え、それぞれのCPU10BおよびCPU20Bが互いに独立して同一処理を実行する。また、CPU10BおよびCPU20Bは、それぞれその周囲に実装された周辺回路の診断を実行する。
図8に示すように、フィールド機器1からの入力値は、入力部71および入力バッファ72を介してマスターCPU10Bに入力される。マスターCPU10Bの周囲の周辺回路74は診断回路75により診断される。また、入力バッファ72から出力された信号が診断回路75に入力され、信号の異常の有無が診断される。周辺回路74の異常の有無、および入力バッファ72から出力された信号の異常の有無は、診断回路75からの診断情報としてマスターCPU10Bに入力される。
同様に、フィールド機器1からの同一の入力値は入力部71および入力バッファ73を介してスレーブCPU20Bに入力される。スレーブCPU20Bの周囲の周辺回路76は診断回路77により診断される。また、入力バッファ73から出力された信号が診断回路77に入力され、信号の異常の有無が診断される。周辺回路76の異常の有無、および入力バッファ73から出力された信号の異常の有無は、診断回路77からの診断情報としてスレーブCPU20Bに入力される。
図8に示すように、マスターCPU10Bは、入力バッファ72を経由して入力された入力値に対する演算処理を実行し、コントローラ2の側である上流工程で処理可能な形式のPV値(プロセス値)に変換するPV値処理部11Bと、診断回路75からの診断情報を受けて異常の検出および判定を実行し、診断結果であるステータスを生成する診断部12Bとを備える。
また、マスターCPU10Bは、スレーブCPU20Bとの間で通信を実行するための通信ブロック13Bと、PV値およびステータスに、CRC(Cyclic Redundancy Check;巡回冗長検査)コードおよび更新カウンタを付加するコード生成部14Bとを備える。
また、スレーブCPU20Bは、入力バッファ73を経由して入力された入力値に対する演算処理を実行し、コントローラ2の側である上流工程で処理可能な形式のPV値(プロセス値)に変換するPV値処理部21と、診断回路77からの診断情報を受けて異常の検出および判定を実行し、診断結果であるステータスを生成する診断部22Bとを備える。
また、スレーブCPU20Bは、マスターCPU10Bとの間で通信を実行するための通信ブロック23Bと、PV値およびステータスに、CRC(Cyclic Redundancy Check;巡回冗長検査)コードおよび更新カウンタを付加するコード生成部24Bとを備える。
次に、本ユニットの動作について説明する。
マスターCPU10Bでは、診断部12Bで生成されたステータスと、スレーブCPU20の診断部24Bで生成され、通信ブロック23Bおよび通信ブロック13Bによる通信を介して取得されたステータスとを、等値化部15Bにおいて、比較、等値化する。等値化はマスターCPU10Bで取り扱うステータスと、スレーブCPU20Bで取り扱うステータスとを同一にする処理である。等値化部15BではステータスのOR情報を生成する。すなわち、等値化部15Bでは、いずれかのステータスが異常を示す場合、その異常を取り込んだステータスに変更し、コード生成部14Bに受け渡す。後述するように、スレーブCPU20Bでも同様の処理を行うことで、マスターCPU10BおよびスレーブCPU20Bで取り扱うステータスを共通化する。
PV値処理部11Bで生成されたPV値は、コード生成部14Bに与えられる。しかし、等値化部15Bでの処理に基づきステータスの異常が検出された場合には、遮断部16Bによりコード生成部14BへのPV値の入力が遮断される。
コード生成部14Bでは、入力されたPV値および等値化部15Bで生成されたステータスに基づいてCRCコードを生成する。また、新たなPV値およびステータスが入力されるたびにカウント番号を更新し、CRCコードに付加したコードを生成する。コード生成部14Bでは、このように生成したコードをPV値およびステータスに付加することで、PV値、ステータス、CRCコードおよびカウント番号からなるフレームを生成する。カウント番号は、PV値およびステータスの更新ごとにインクリメントされる。
コード生成部14Bで作成されたフレームと同様のフレームは、スレーブCPU20Bのコード生成部24Bで同様に生成され、通信ブロック23Bおよび通信ブロック13Bによる通信を介して取得される。コード生成部14Bで作成されたフレームと、コード生成部24Bで作成されたフレームとは、比較部17Bにおいて照合される。比較部17Bでは、両フレームの不一致が検出されれば異常と判断する。後述するように、スレーブCPU20Bでも同様の処理を行うことで、マスターCPU10BおよびスレーブCPU20Bは、互いに相手方の処理結果を自らの処理結果と照合し、不一致であれば異常と判断している。マスターCPU10BおよびスレーブCPU20Bにおけるすべての処理が正常であれば、比較部17Bにおける照合の結果、両フレームは一致することになる。
コード生成部14Bで生成されたフレームは、上流工程である出力部78に向けて出力される。しかし、比較部17Bにおいて両フレームの不一致が検出され、異常と判断されれば、遮断部18Bによって、フレームの出力が遮断される。また、後述するように、スレーブCPU20Bの比較部27Bにおいてフレームの不一致が検出された場合には、KILL信号Kにより、フレームの出力が阻止される。
一方、スレーブCPU20Bでは、診断部22Bで生成されたステータスと、マスターCPU10の診断部14Bで生成され、通信ブロック13Bおよび通信ブロック23Bによる通信を介して取得されたステータスとを、等値化部25Bにおいて、比較、等値化する。等値化部25BではステータスのOR情報を生成する。すなわち、等値化部25Bでは、いずれかのステータスが異常を示す場合、その異常を取り込んだステータスに変更し、コード生成部24Bに受け渡す。
PV値処理部21で生成されたPV値は、コード生成部24Bに与えられる。しかし、等値化部25Bでの処理に基づきステータスの異常が検出された場合には、遮断部26Bによりコード生成部24BへのPV値の入力が遮断される。
コード生成部24Bでは、入力されたPV値および等値化部25Bで生成されたステータスに基づいてCRCコードを生成する。また、新たなPV値およびステータスが入力されるたびにカウント番号を更新し、CRCコードに付加したコードを生成する。コード生成部24Bでは、このように生成したコードをPV値およびステータスに付加することで、PV値、ステータス、CRCコードおよびカウント番号からなるフレームを生成する。カウント番号は、PV値およびステータスの更新ごとにインクリメントされる。
コード生成部24Bで作成されたフレームは、マスターCPU10Bのコード生成部14Bで同様に生成され通信ブロック13Bおよび通信ブロック23Bによる通信を介して取得されたフレームと、比較部27Bにおいて照合される。比較部27Bにおいて両フレームの不一致が検出されれば異常と判断する。
比較部27Bにおいてフレームの不一致が検出された場合、比較部27BからKILL信号Kが出力され、マスターCPU10Bに与えられる。この場合、マスターCPU10BはKILL信号Kによって強制リセットされ、出力部78への新たなフレームの出力が阻止される。このため、誤りのあるデータが出力部78に向けて出力されることを防止できる。
なお、出力部78への出力が阻止された場合、カウント番号の更新が停止するため、出力部78以降の後段の上流工程では、カウント番号を参照するだけで情報の出力が停止したことを認識できる。
以上のように、実施例5では、比較部27Bにおいてフレームの不一致が検出された場合、比較部27Bから出力されるKILL信号Kにより、マスターCPU10Bが強制的にリセットされる。実施例5では、マスターCPU10Bの処理に異常がある場合には、比較部27Bにおいてフレームの不一致が検出される。このため、マスターCPU10Bの異常時には、KILL信号KによってマスターCPU10Bがリセットされることとなり、上位システムに誤った情報が出力されるおそれはない。したがって、システム全体として的確なフェイルセイフを実行できる。
本発明の適用範囲は上記実施形態に限定されることはない。また、本発明は、安全システムのみならず、各種情報を取り扱う情報処理システムに対し、広く適用することができる。
本発明による情報処理装置を機能的に示すブロック図であり(a)は一の発明を示すブロック図、(b)は他の一の発明を示すブロック図、(c)は他の一の発明を示すブロック図。 実施例1の情報処理装置が適用される安全システムの構成を示すブロック図。 実施例1の情報処理装置の構成の一部を示すブロック図。 実施例1の情報処理装置におけるリセットの手順を示すブロック図 実施例2の情報処理装置の構成の一部を示すブロック図。 実施例3の情報処理装置の構成の一部を示すブロック図。 実施例4の情報処理装置におけるリセットの手順を示すブロック図。 実施例5の情報処理装置の構成の一部を示すブロック図。
符号の説明
101 異常検出手段
102 第2の装置リセット手段
103 第1の装置リセット手段
111 照合手段
112 リセット手段
121 第2装置リセット手段
122 異常認識手段
123 通知手段
124 第1の装置リセット手段

Claims (4)

  1. 同一処理を二重に実行する第1の装置および第2の装置を備える情報処理装置において、
    前記第1の装置および前記第2の装置間でデータを照合し、データが不一致の場合に異常と判定する照合手段と、
    前記第2の装置の動作異常を前記照合手段と独立して検出する異常検出手段と、
    前記異常検出手段により前記第2の装置の動作異常が検出された場合に、前記第1の装置および前記第2の装置をリセットするリセット手段と、
    を備え、
    前記第1の装置は所定の情報処理を実行する装置として機能し、前記第2の装置は異常検出のための装置として機能し
    前記照合手段は前記第1の装置に設けられ、該照合手段により異常と判定された場合には、前記リセット手段により前記第1の装置および前記第2の装置をリセットすることを特徴とする情報処理装置。
  2. 前記異常検出手段は、前記第2の装置の動作を監視するウォッチドッグ・タイマであることを特徴とする請求項に記載の情報処理装置。
  3. 前記第1の装置および前記第2の装置は、それぞれ個々のCPUとして構成されていることを特徴とする請求項1または2に記載の情報処理装置。
  4. 同一処理を二重に実行する第1の装置および第2の装置を備える情報処理方法において、
    前記第1の装置および前記第2の装置間でデータを照合し、データが不一致の場合に異常と判定するステップと、
    前記第2の装置の動作異常を前記データの照合と独立して検出するステップと、
    前記動作異常を検出するステップにより前記第2の装置の動作異常が検出された場合に、前記第1の装置および前記第2の装置をリセットするステップと、
    を備え、
    前記第1の装置は所定の情報処理を実行する装置として機能し、前記第2の装置は異常検出のための装置として機能し
    前記異常と判定するステップは、前記第1の装置において実行され、該異常と判定するステップにより異常と判定された場合には、前記第1の装置および前記第2の装置をリセットすることを特徴とする情報処理方法。
JP2005016675A 2005-01-25 2005-01-25 情報処理装置および情報処理方法 Active JP3962956B6 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2005016675A JP3962956B6 (ja) 2005-01-25 情報処理装置および情報処理方法
PCT/JP2006/300710 WO2006080227A1 (ja) 2005-01-25 2006-01-19 情報処理装置および情報処理方法
EP06711956A EP1843247A1 (en) 2005-01-25 2006-01-19 Information processing system and information processing method
US11/883,006 US20080215913A1 (en) 2005-01-25 2006-01-19 Information Processing System and Information Processing Method
CNA2006800032025A CN101107597A (zh) 2005-01-25 2006-01-19 信息处理装置及信息处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005016675A JP3962956B6 (ja) 2005-01-25 情報処理装置および情報処理方法

Publications (3)

Publication Number Publication Date
JP2006209197A JP2006209197A (ja) 2006-08-10
JP3962956B2 JP3962956B2 (ja) 2007-08-22
JP3962956B6 true JP3962956B6 (ja) 2007-11-28

Family

ID=

Similar Documents

Publication Publication Date Title
JP3897046B2 (ja) 情報処理装置および情報処理方法
US20080215913A1 (en) Information Processing System and Information Processing Method
JP3897047B2 (ja) 情報処理装置および情報処理方法
JP3965699B2 (ja) 情報処理装置および情報処理方法
CN104977907B (zh) 容错性失效保护系统和方法
CN102375409B (zh) 冗余化控制系统及其运算数据的传送方法
KR101560497B1 (ko) 락스텝으로 이중화된 프로세서 코어들의 리셋 제어 방법 및 이를 이용하는 락스텝 시스템
JP2007226389A (ja) 時刻同期異常検出装置および時刻同期異常検出方法
KR102213676B1 (ko) 산술 연산 감시 기능을 구비하는 오토사 시스템용 단말 장치 및 오토사 시스템의 산술 연산 감시 방법
KR101594453B1 (ko) 채널 고장 진단 장치 및 그 진단 방법
JP3962956B6 (ja) 情報処理装置および情報処理方法
JP2010165136A (ja) 冗長化制御装置
KR101448013B1 (ko) 항공기용 다중 컴퓨터의 고장 허용 장치 및 방법
JP4954249B2 (ja) 電子端末装置及び電子連動装置
US20090106461A1 (en) Information Processing Apparatus and Information Processing Method
JP4432354B2 (ja) ウオッチドッグタイマ回路の状態監視方式
US7260741B2 (en) Method and system to detect software faults
US20120307650A1 (en) Multiplex system
CN112698982B (zh) 一种工业现场总线调度方法及装置
JP2014011591A (ja) 伝送装置、伝送システム、及びその自己診断方法
JP2006276957A (ja) 安全システム
KR101366775B1 (ko) 컴퓨터 시스템의 고장방지 장치
JP6234388B2 (ja) 2重系制御装置
JP2015118495A (ja) 信号保安用制御装置
JP2005250524A (ja) コンピュータシステム