JP2012008812A - 情報処理装置、及び情報処理装置の自己診断方法 - Google Patents

情報処理装置、及び情報処理装置の自己診断方法 Download PDF

Info

Publication number
JP2012008812A
JP2012008812A JP2010144264A JP2010144264A JP2012008812A JP 2012008812 A JP2012008812 A JP 2012008812A JP 2010144264 A JP2010144264 A JP 2010144264A JP 2010144264 A JP2010144264 A JP 2010144264A JP 2012008812 A JP2012008812 A JP 2012008812A
Authority
JP
Japan
Prior art keywords
encoding
arithmetic processing
information processing
processing apparatus
self
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.)
Granted
Application number
JP2010144264A
Other languages
English (en)
Other versions
JP5545067B2 (ja
Inventor
Koji Nishida
廣治 西田
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.)
Fuji Electric Co Ltd
Original Assignee
Fuji Electric Co Ltd
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 Fuji Electric Co Ltd filed Critical Fuji Electric Co Ltd
Priority to JP2010144264A priority Critical patent/JP5545067B2/ja
Publication of JP2012008812A publication Critical patent/JP2012008812A/ja
Application granted granted Critical
Publication of JP5545067B2 publication Critical patent/JP5545067B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】自己診断のためのデータ伝送量やデータ比較量の低減と、信頼性の維持を両立させた情報処理装置、及びその自己診断方法を提供すること。
【解決手段】通信接続された複数の演算処理手段を備え、該複数の演算処理手段が同一の演算処理を同期して実行可能な情報処理装置であって、複数の符号化手法から、エラー確率が設定値未満である一の符号化手法を選択する符号化手法選択手段と、前記複数の演算処理手段が同一の演算処理を同期して実行する際に、前記複数の演算処理手段による演算処理結果を含む情報を、前記符号化手法選択手段によって選択された符号化手法によって符号化する符号化手段と、前記複数の符号化手段によって符号化された情報を比較して、前記複数の演算処理手段が正常に作動しているかどうかを判定する判定手段と、を備える情報処理装置。
【選択図】図1

Description

本発明は、CPU(Central Processing Unit)等の演算処理手段を複数有し、この複数の演算処理手段によって同一の演算処理を冗長的に実行可能な情報処理装置、及びその自己診断方法に関する。
近年、CPU等の演算処理手段を複数有する情報処理装置(コンピュータ)が広く用いられている。この種の情報処理装置では、異なる内容の処理を複数の演算処理手段によって並行して実行することも可能であるが、同一の処理を複数の演算処理手段が冗長的に実行し、その演算処理結果を比較することによりいずれかの演算処理手段が故障状態に陥ったことを検出し、演算処理結果の信頼性を高めることもできる。
特に、プラント等の施設や車両・船舶・航空機等の移動体を制御する制御装置として用いられる場合に、演算処理結果の信頼性に対する要求が高くなるため、このような冗長的処理の必要性が高いものとなっている。また、このような演算処理結果の信頼性に対する要求は、コンピュータの用途が拡大しつつある昨今では、一般的な家庭用のパーソナルコンピュータにおいても同様に生じるものである。
複数の演算処理手段による演算処理結果を比較する技術として、以下のものが開示されている。
特許文献1には、複数のマイクロプロセッサを同期運転させ、各マイクロプロセッサのバス出力を符号圧縮し、圧縮データ同士を比較することによって動作不一致の故障を検出する故障検出装置について記載されている。
特許文献2には、複数のCPUが同一の処理を行い、各CPUの出力データにチェックコードを付加してメモリに出力し、メモリに出力された複数の出力データのうちチェックコードが一致したものを抽出し、抽出した出力データ全体について比較照合を行ってCPU出力の誤りを検出する照合システムについて記載されている。
これらの文献に記載された技術は、比較照合データの量、又は転送量を低減することを目的の一つとしている。
特開平5−324391号公報 特開2010−9327号公報
しかしながら、上記従来の特許文献1に記載の装置では、圧縮データ同士を比較することにより、比較照合を誤る可能性が生じる。
符号化したデータにおいて比較照合を誤る可能性については、例えばインターネットにおける「フリー百科事典『ウィキペディア(Wikipedia):ハッシュ関数』」等で指摘されている。ハッシュ関数とは、データを符号化する手法の一つであるが、上記インターネットサイトでは、同じハッシュ値を与える二つの入力値を求めることが困難となる可能性について指摘している。
このような現象は、符号化された後のデータのビット数(符号化ビット数)が小さい場合に生じ易いものとなる。圧縮データについても同様に、データを圧縮すればするほど元データの相違点が埋没してしまい、故障を見過ごす可能性が高くなってしまう。上記特許文献1では、このような課題が存在するにも拘わらず、どこまで圧縮を行うかについての考慮がなされていない。
また、上記特許文献2に記載のシステムでは、CPUからメモリに出力するデータ量自体は低減されず、CPUからメモリへの伝送負荷や伝送時間を低減することはできない。更に、チェックコードが一致したものを抽出した後は、出力データ全体について比較照合を行うため、比較照合データの量を低減できる訳ではない。
本発明はこのような課題を解決するためのものであり、自己診断のためのデータ伝送量やデータ比較量の低減と、信頼性の維持を両立させた情報処理装置、及びその自己診断方法を提供することを、主たる目的とする。
上記目的を達成するための本発明の第1の態様は、
通信接続された複数の演算処理手段を備え、該複数の演算処理手段が同一の演算処理を同期して実行可能な情報処理装置であって、
複数の符号化手法から、エラー確率が設定値未満である一の符号化手法を選択する符号化手法選択手段と、
前記複数の演算処理手段が同一の演算処理を同期して実行する際に、前記複数の演算処理手段による演算処理結果を含む情報を、前記符号化手法選択手段によって選択された符号化手法によって符号化する符号化手段と、
前記複数の符号化手段によって符号化された情報を比較して、前記複数の演算処理手段が正常に作動しているかどうかを判定する判定手段と、
を備える情報処理装置である。
この本発明の第1の態様によれば、複数の符号化手法から、エラー確率が設定値未満である一の符号化手法を選択する符号化手法選択手段を備え、複数の演算処理手段が同一の演算処理を同期して実行する際に、複数の演算処理手段による演算処理結果を含む情報を符号化手法選択手段によって選択された符号化手法によって符号化するため、自己診断のためのデータ伝送量やデータ比較量の低減と、信頼性の維持を両立させることができる。
本発明の第1の態様において、
前記符号化手法選択手段は、前記エラー確率が設定値未満である符号化手法のうち、最も符号化ビット数が小さい符号化手法を選択する手段であるものとしてよい。
こうすれば、自己診断のためのデータ伝送量やデータ比較量を、信頼性が維持される範囲内で、最低限に留めることができる。
また、本発明の第1の態様において、
前記設定値は、例えば、パラメータとして設定されたCPU要求安全度に符号エラー比率を乗算し、更に前記判定手段による時間あたりの比較回数を乗算した値として算出される。
また、本発明の第1の態様において、
前記符号化手法選択手段は、前記設定値の対数値に基づいて最小符号化ビット数を算出し、符号化ビット数が前記算出した最小符号化ビット数を超える符号化手法を選択することにより、エラー確率が設定値未満である符号化手法を選択する手段であるものとしてよい。
本発明の第2の態様は、
通信接続された複数の演算処理手段を備え、該複数の演算処理手段が同一の演算処理を同期して実行可能な情報処理装置の自己診断方法であって、
複数の符号化手法から、エラー確率が設定値未満である一の符号化手法を選択する符号化手法選択ステップと、
前記複数の演算処理手段が同一の演算処理を同期して実行する際に、前記複数の演算処理手段による演算処理結果を含む情報を、前記符号化手法選択手段によって選択された符号化手法によって符号化する符号化ステップと、
前記符号化ステップにおいて符号化された情報を比較して、前記複数の演算処理手段が正常に作動しているかどうかを判定する判定ステップと、
を備える情報処理装置の自己診断方法である。
本発明の第2の態様によれば、複数の符号化手法から、エラー確率が設定値未満である一の符号化手法を選択する符号化手法選択ステップを備え、複数の演算処理手段が同一の演算処理を同期して実行する際に、複数の演算処理手段による演算処理結果を含む情報を、符号化手法選択ステップにおいて選択された符号化手法によって符号化するため、自己診断のためのデータ伝送量やデータ比較量の低減と、信頼性の維持を両立させることができる。
本発明の第2の態様において、
前記符号化手法選択ステップにおいて、前記エラー確率が設定値未満である符号化手法のうち、最も符号化ビット数が小さい符号化手法を選択することを特徴とするものとしてよい。
こうすれば、自己診断のためのデータ伝送量やデータ比較量を、信頼性が維持される範囲内で、最低限に留めることができる。
また、本発明の第2の態様において、
前記設定値を、パラメータとして設定されたCPU要求安全度に符号エラー比率を乗算し、更に前記判定手段による時間あたりの比較回数を乗算した値として算出する設定値算出ステップを更に備えるものとしてよい。
また、本発明の第2の態様において、
前記符号化手法選択ステップにおいて、前記設定値の対数値に基づいて最小符号化ビット数を算出し、該算出した最小符号化ビット数よりも符号化ビット数が大きい符号化手法を選択することにより、エラー確率が設定値未満である符号化手法を選択することを特徴とするものとしてよい。
本発明によれば、自己診断のためのデータ伝送量やデータ比較量の低減と、信頼性の維持を両立させた情報処理装置、及びその自己診断方法を提供することができる。
本発明の一実施例に係る情報処理装置1のシステム構成例である。 符号エラー確率テーブル20#A、20#Bを示す図である。 管理テーブル30#A、30#Bを示す図である。 各機能ブロックによって繰り返し実行される処理の順序等を示すタイムチャートである。 符号化手法選択部25#A、25#Bにより実行される符号化手法選択処理の流れを示すフローチャートである。 CPU演算データ収集処理部35#A、35#Bにより実行されるCPU演算データ収集処理の流れを示すフローチャートである。 CPU演算データ収集処理部35#A、35#Bにより演算データ格納部15#A、15#Bから読み込まれ、連続データとして管理されるデータを模式的に示す図である。 符号化処理部40#A、40#Bにより実行される符号化処理の流れを示すフローチャートである。 伝送処理部45#A、45#Bにより実行される伝送処理の流れを示すフローチャートである。 比較・判定処理部55#A、55#Bにより実行される比較・判定処理の流れを示すフローチャートである。
以下、本発明を実施するための形態について、添付図面を参照しながら実施例を挙げて説明する。
以下、図面を参照し、本発明の一実施例に係る情報処理装置、及びその自己診断方法について説明する。本発明の情報処理装置は、例えばマルチ・プロセッサ装置やマルチコア・プロセッサ等、複数の演算処理手段を備えるコンピュータを基本構成とする。
複数の演算処理手段は、同一の演算処理を同期して実行することが可能となっている。そして、本発明の情報処理装置では、演算結果を含むデータを符号化して送信し合い、符号化データを比較することによって演算処理手段の故障を検出可能となっている。以下、係る故障検出を「自己診断」と称する。
[基本構成]
図1は、本発明の一実施例に係る情報処理装置1のシステム構成例である。情報処理装置1は、CPU#Aと、CPU#Bと、を備える。CPU#A及びCPU#Bには同一のクロック信号が供給されており、同一の演算処理を同期して実行可能となっている。クロック信号の発生装置はいずれかのCPUに属していてもよい。また、CPU#AとCPU#Bは通信接続されているが、有線・無線の別、シリアル通信・多重バスの別、周波数帯域、変調方式等の通信態様について特段の制限は存在しない。
CPU#Aは、演算処理部10#Aと、演算データ格納部15#Aと、符号エラー確率テーブル20#Aと、符号化手法選択部25#Aと、管理テーブル30#Aと、CPU演算データ収集処理部35#Aと、符号化処理部40#Aと、伝送処理部45#Aと、符号化データ格納部50#Aと、比較・判定処理部55#Aと、を備える。
同様に、CPU#Bは、演算処理部10#Bと、演算データ格納部15#Bと、符号エラー確率テーブル20#Bと、符号化手法選択部25#Bと、管理テーブル30#Bと、CPU演算データ収集処理部35#Bと、符号化処理部40#Bと、伝送処理部45#Bと、符号化データ格納部50#Bと、比較・判定処理部55#Bと、を備える。
なお、同一の数字が付された機能ブロックは、いずれのCPUに属するかを示す「#A」、「#B」の別に拘わらず、基本的に同じ機能を有している。
CPU#A、#Bが有する機能ブロックのうち、演算データ格納部15#A、15#B、符号化エラーテーブル20#A、20#B、管理テーブル30#A、30#B、及び符号化データ格納部50#A、50#Bは、図示しないRAM(Random Access Memory)やフラッシュメモリ、レジスタ等に構築された記憶領域である。
演算処理部10#A、10#Bは、例えばALU(Arithmetic Logic Unit)やFPGA(Field Programmable Gate Array)等を含む。演算処理部10#A、10#Bは、図示しないOS(Operating System)の制御によってプログラムメモリからフェッチされる命令に従い、各種演算処理を実行する。この命令は、情報処理装置1が本来実行すべきタスクのための命令であり、自己診断に係る命令とは異なる。前述のように、演算処理部10#A、10#Bは、同一の演算処理を同期して実行する。
ここで、同一の演算処理とは、ダイバーシティ(多様化)を考慮し、入力と出力の関係は同じであるが、アルゴリズム、プログラム言語、コンパイラ、コンパイラのパラメータ等が異なる演算処理も含まれる。
演算処理部10#A、10#Bの演算対象値や演算パラメータ、演算結果(以下、これらを必要に応じて入力状態、ステータスデータ、出力状態と称する)は、演算データ格納部15#A、15#Bに格納される。
[符号化手法選択のためのパラメータ]
符号エラー確率テーブル20#A、20#Bは、要求符号エラー確率テーブルと、符号化演算関数エラー確率テーブルとを含む。図2は、符号エラー確率テーブル20#A、20#Bを示す図である。
要求符号エラー確率テーブルには、CPU要求安全度と、符号エラー比率と、一秒あたりの比較回数とが格納される。これらのパラメータは、要求符号エラー確率(元データが一致しないにも拘わらず、符号化によって同一データとなり、故障を見過ごす確率の要求値)を算出するためのパラメータ群である。なお、この要求符号エラー確率が、特許請求の範囲における「設定値」に相当する。
各パラメータは、例えば情報処理装置1の起動時にEEPROM(Electrically Erasable and Programmable Read Only Memory)やROM(Read Only Memory)等から読み込まれて要求符号エラー確率テーブルに格納される。なお、符号エラー確率テーブル20#A、20#B自体がEEPROMやROM上の記憶領域であっても構わない。
また、要求符号エラー確率テーブルに格納されるパラメータは、ユーザーによって変更可能としてよい。
図2の例では、CPU要求安全度は10のマイナス8乗と例示しているが、係る数値はCPUシステムの安全度水準における「SIL(Safety Integrity Level)3」に対応している。この数値は要求される安全度水準が比較的高い例であり、要求される安全度水準が低い場合には、より大きい値(例えば10のマイナス6乗など)が設定されてもよい。要求される安全度水準が高い場合とは、例えばプラント等の施設や移動体等の制御装置として用いられる場合であり、要求される安全度水準が低い場合とは、例えば家庭用のパーソナルコンピュータやゲーム機として用いられる場合である。また、原子力プラント等を制御する制御装置として用いられる場合、更に要求される安全度水準を高くしてもよい(CPU要求安全度の値はより小さい値となる)。このように、本実施例の情報処理装置1では、用途に応じた値に要求される安全度水準を設定することができるため、後述する符号化処理の際に最適な符号化手法を選択することができる。
なお、CPUシステムの安全度水準については、例えば「IEC61508 FUNCTIONAL SAFETY OF ELECTRICAL/ELECTRONIC/PROGRAMMABLE ELECTRONIC SAFETY-RELATED SYSTEMS」に記載されている。
符号エラー比率とは、符号化により照合エラーが発生する確率の、CPU要求安全度に示す割合である。また、一秒あたりの比較回数とは、符号化データを比較する一秒あたりの回数である。
一方、符号化演算関数エラー確率テーブルは、本実施例の情報処理装置1が選択し得る符号化演算関数と、それぞれの符号化後のビット数(以下、「符号化ビット数」と称する)、想定されるエラー確率を規定している。図2に示すように、各符号化演算関数を選択した場合に想定されるエラー確率は、2の(マイナス符号化ビット数)乗となる。係る点については、例えば「Val Henson, Richard Henderson, ”Guidelines for Using Compare-by-hash”, Originally Appeared in HotOS 2003(2003)」に記載されている。
本実施例では、符号化演算関数として、HMAC(Keyed-Hashing for Message Authentication code)、MD4、SHA1(Secure Hash Algorithm1)を選択できるものとした。これらは、いずれもハッシュ関数を利用した演算関数である。このように符号化演算関数エラー確率テーブルに登録される符号化演算関数は、符号化ビット数や演算速度、使用メモリ量等を考慮して選択される。
なお、いずれかの符号化演算関数を選択することが、特許請求の範囲における「符号化手法を選択する」ことに相当する。
[符号化手法の選択]
符号化手法選択部25#A、25#Bは、それぞれ、符号エラー確率テーブル20#A、20#Bに格納されたパラメータに基づいて符号化演算関数エラー確率テーブルから最適な符号化演算関数を選択し、選択した符号化演算関数を管理テーブル30#A、30#Bの符号化演算関数テーブルに格納する。以下、その選択手法について説明する。
符号化手法選択部25#A、25#Bは、次式(1)に基づいて最小符号化ビット数を算出する。そして、最小符号化ビット数を超える符号化ビット数を有する符号化演算関数のうち、最も符号化ビット数が小さい符号化演算関数を選択する。なお、次式(1)において、「Log」は例えば常用対数である。
(最小符号化ビット数)=−Log(要求符号エラー確率)÷Log2
=−Log{(CPU要求安全度)×(符号エラー比率)}÷{(一秒あたりの比較回数)×3600}÷Log2 …(1)
これによって、想定されるエラー確率が要求符号エラー確率未満である符号化演算関数のうち、最も符号化ビット数が小さい符号化演算関数が選択されることになる(図2、及び次式(2)、(3)参照)。式(3)は上式(1)の変形である。図2や式(2)、(3)から判るように、符号化ビット数が最小符号化ビット数を超える場合、想定されるエラー確率は要求符号エラー確率よりも小さくなるからである。
(想定されるエラー確率)=2^{−(符号化ビット数)} …(2)
(要求符号エラー確率)=2^{−(最小符号化ビット数)} …(3)
このように、要求されるエラー確率を満たす(想定されるエラー確率が要求符号化エラー確率よりも小さい)符号化演算関数を選択することによって、演算処理の信頼性が確保される。更に、要求されるエラー確率を満たす符号化演算関数の中で、符号化ビット数が最小のものを選択することによって、後述するCPU間のデータ伝送量やデータ比較量を最小限に留めることができる。
なお、上式(1)に図2の値を当てはめると、最小符号化ビット数は次式(4)のように算出される。
(最小符号化ビット数)=−Log{(10^−8)×(10^−3)÷(10×3600)}÷Log2
≒16÷0.3
≒54 …(4)
この場合、符号化ビット数が54ビットを超える符号化演算関数を選択すれば、想定されるエラー確率が要求符号化エラー確率よりも小さくなる。図2の例では、いずれの符号化演算関数も符号化ビット数が54ビットを超えているため、符号化ビット数が最小のHMACを選択することになる。
[演算データ収集〜符号化〜比較・判定処理]
CPU演算データ収集処理部35#A、35#Bは、管理テーブル30#A、30#Bに従って、演算データ格納部15#A、15#Bに格納された演算処理部10#A、10#Bの入力状態、ステータスデータ、出力状態を収集し、符号化処理部40#A、40#Bに出力する(間に受け渡し用の記憶手段を挟んでよい)。
図3は、管理テーブル30#A、30#Bを示す図である。図示するように、管理テーブル30#A、30#Bには、演算処理部10#A、10#Bの入力状態、ステータスデータ、出力状態が格納される演算データ格納部15#A、15#Bのアドレス及びデータバイト数が規定されたCPU演算データ収集テーブルと、符号化手法選択部25#A、25#Bにより選択された符号化演算関数(又はその識別子)が格納される符号化演算関数テーブルとが含まれる。
符号化処理部40#A、40#Bは、管理テーブル30#A、30#Bの符号化演算関数テーブルに格納された符号化演算関数を用いて、演算処理部10#A、10#Bの入力状態、ステータスデータ、出力状態を符号化する。符号化されたデータ(以下、符号化データと称する)は、符号化データ格納部50#A、50#Bに格納される他、伝送処理部45#A、45#Bに出力される。符号化関数を用いた符号化処理の詳細については、種々の文献が公知となっているため、説明を省略する。
伝送処理部45#A、45#Bは、例えば安全通信規格であるIEC61784-3やIEC622
80等の要件に従って、他方のCPUに符号化データを送信する。また、伝送処理部45#A、45#Bは、他方のCPUから受信した符号化データを符号化データ格納部50#A、50#Bに格納する。なお、通信データの誤り率を考慮し、CRC等の安全コードを必要に応じて付加する。
比較・判定処理部55#A、55#Bは、符号化データ格納部50#A、50#Bに格納された自CPUによる符号化データと、他方のCPUから受信した符号化データを比較し、いずれかのCPU或いはその周辺機器が故障状態にあるか否かを判定する。本実施例では二つのCPUによって処理を行っているため、故障CPUの特定は困難であり、故障を検出した場合は双方のCPUをリセット又は停止することとなるが、三つ以上のCPUを備える場合は多数決等の処理を行うことにより、故障CPUの特定まで行うことが可能となる。
[タイムチャート]
図4は、上記説明した各機能ブロックによって繰り返し実行される処理の順序等を示すタイムチャートである。本図は、横軸に時間をとっている。図示するように、まず、CPU#A、#Bは、演算処理部10#A、10#Bによって入力、演算、出力処理を同期して実行する。係る処理は、情報処理装置1が本来のタスクとして実行するものである(制御装置として用いられる場合、制御演算等)。
次に、CPU演算データ収集処理部35#A、35#BがCPU演算データ収集処理を行い(図中、(a))、符号化処理部40#A、40#Bが符号化処理を行い(図中、(b))、伝送処理部45#A、45#Bが伝送処理を行い(図中、(c))、最後に比較・判定処理部55#A、55#Bが、比較・判定処理を行う(図中、(d))。
これらが終了すると、再度、演算処理部10#A、10#Bによる入力、演算、出力処理が開始され、一定の処理周期(例えば100[ms]程度)をもって繰り返し、入力、演算、出力処理〜比較・判定処理が実行される。この処理周期は、例えばカウントレジスタ70がクロック信号の立ち上がりをカウントすることによって制御される。
[自己診断に係る処理フロー]
以下、各機能ブロックにより実行される処理の流れについて説明する。
図5は、符号化手法選択部25#A、25#Bにより実行される符号化手法選択処理の流れを示すフローチャートである。本フローは、情報処理装置1の起動時、又は符号エラー確率テーブル20#A、20#Bの要求符号エラー確率テーブルに格納されたパラメータが変更された時に開始される。なお、要求符号エラー確率テーブルに格納されたパラメータが変更されたことは、変更が行われた際にソフトウエア割り込みによって通知されるように設計されてもよいし、符号化手法選択部25#A、25#Bが適切な周期でポーリングを行って検知してもよい。
まず、符号化手法選択部25#A、25#Bは、要求符号エラー確率テーブルに格納されたパラメータを読み込む(S100)。
次に、前述のように最小符号化ビット数を算出し(S102)、符号化ビット数が最小符号化ビット数を超える符号化演算関数のうち、最も符号化ビット数が小さい符号化演算関数を選択する(S104)。
そして、選択した符号化演算関数を管理テーブル30#A、30#Bの符号化演算関数テーブルに格納する(S106)。
図6は、CPU演算データ収集処理部35#A、35#Bにより実行されるCPU演算データ収集処理の流れを示すフローチャートである。本フローは、前述したタイムチャートで説明したように、演算処理部10#A、10#Bによる入力、演算、出力処理が終了したタイミングで開始される。
まず、CPU演算データ収集処理部35#A、35#Bは、管理テーブル30#A、30#BのCPU演算データ収集テーブルから、演算データ格納部15#A、15#Bのアドレス及びデータバイト数を読み込む(S200)。
そして、演算データ格納部15#A、15#Bに格納された演算処理部10#A、10#Bの入力状態、ステータスデータ、出力状態を読み込んで、連続データとして管理する(S202)。管理されたデータは、前述のように、符号化処理部40#A、40#Bに出力されることになる。
図7は、CPU演算データ収集処理部35#A、35#Bにより演算データ格納部15#A、15#Bから読み込まれ、連続データとして管理されるデータを模式的に示す図である。このような連続データに対して符号化処理を行うことにより、符号化処理に要する時間の短縮を図ることができる。
図8は、符号化処理部40#A、40#Bにより実行される符号化処理の流れを示すフローチャートである。本フローは、CPU演算データ収集処理部35#A、35#BによるCPU演算データ収集処理が終了したタイミングで開始される。
まず、符号化処理部40#A、40#Bは、管理テーブル30#A、30#Bの符号化演算関数テーブルから符号化演算関数を読み込む(S300)。
次に、読み込んだ符号化演算関数を用いて、CPU演算データ収集処理部35#A、35#Bから入力された連続データを符号化する(S302)。
そして、符号化データを他のCPUに送信するように伝送処理部45#A、45#Bに指示し(S304)、符号化データ格納部50#A、50#Bに格納する(S306)。
図9は、伝送処理部45#A、45#Bにより実行される伝送処理の流れを示すフローチャートである。本フローは、符号化処理部40#A、40#Bによる符号化処理が終了したタイミングで開始される。
まず、伝送処理部45#A、45#Bは、自CPUで符号化した符号化データから伝送仕様に合致する伝文を作成し、他のCPUに送信する(S400)。
次に、他方のCPUから符号化データを受信する(S402)。そして、受信した符号化データを符号化データ格納部50#A、50#Bに格納する(S404)。この際に、伝文や伝送において異常が検知された場合には、異常データを符号化データ格納部50#A、50#Bに格納する。
なお、図9のフローでは一律、送信→受信の順としたが、実際には、一方のCPUでは送信→受信の順で、他方のCPUでは受信→送信の順で処理が行われることになる。
図10は、比較・判定処理部55#A、55#Bにより実行される比較・判定処理の流れを示すフローチャートである。本フローは、伝送処理部45#A、45#Bによる伝送処理が終了したタイミングで開始される。
まず、比較・判定処理部55#A、55#Bは、符号化データ格納部50#A、50#Bに格納された、自CPUによる符号化データと、他方のCPUから受信した符号化データを読み込む(S500)。
次に、読み込んだ符号化データを比較し、これらが一致しているか否かを判定する(S502)。符号化データが一致している場合は、何も処理を行わずに本フローを終了する。
一方、符号化データが一致していない場合は、前回から連続して不一致と判定されたか否かを判定する(S504)。
前回から連続して不一致と判定されなかった場合は、CPU軽故障処理を行い、不一致発生を示すフラグ等を符号化データ格納部50#A、50#B等に書き込む(S506)。ここで、CPU軽故障処理とは、CPUのリセット等、各パラメータの再ダウンロード等を含む。係る処理は、ソフトエラー等の一過性の故障に対するものである。すなわち、単発的に符号化データが不一致と判定された場合には、ソフトウエア上のエラー処理に留め、情報処理装置1が行っているタスクを継続する。
前回から連続して不一致と判定された場合は、CPU重故障処理を行い、符号化データ格納部50#A、50#B等に書き込んだ不一致発生を示すフラグ等を消去する(S508)。ここで、CPU重故障処理とは、情報処理装置のシャットダウン、その後の管理者権限以外のアクセス禁止等を含む。係る処理は、伝送路の断線、ICの故障、ROMデータの破損、CPU自体の故障等、修復困難な故障に対するものである。すなわち、連続して符号化データが不一致と判定された場合には、安全面を考慮して、情報処理装置1が行っているタスクを停止する。このような段階的なエラー処理を行うことにより、故障の程度に応じた適切な処理を行うことができる。
以上説明した本実施例の情報処理装置1によれば、想定されるエラー確率が要求符号化エラー確率よりも小さい符号化演算関数を選択することにより、演算処理の信頼性が確保され、要求されるエラー確率を満たす符号化演算関数の中で符号化ビット数が最小のものを選択することにより、CPU間のデータ伝送量やデータ比較量を最小限に留めることができる。
この結果、自己診断のためのデータ伝送量やデータ比較量の低減と、信頼性の維持を両立させることができる。
自己診断のためのデータ伝送量を低減すると、例えばCPU間の通信にRS232Cによるシリアル通信等、安価で低速度の通信路を採用した場合に、通信時間がネックとなるシステムの性能低下を防止することができる。
また、本実施例の情報処理装置1によれば、段階的なエラー処理を行うことにより、故障の程度に応じた適切な処理を行うことができる。
以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
例えば、実施例では情報処理装置1が二個のCPUを備えるものとしたが、三個以上のCPUを備えるものとしてもよい。この場合、多数決によって故障CPUを特定することができる。
また、自己診断に係る監視専用のCPU(情報処理装置1が三個以上のCPUを備える場合)や論理回路等を設けてもよい。
本発明は、コンピュータ、及びその周辺機器の製造業等に利用可能である。
1 情報処理装置
10#A、10#B 演算処理部
15#A、15#B 演算データ格納部
20#A、20#B 符号エラー確率テーブル
25#A、25#B 符号化手法選択部
30#A、30#B 管理テーブル
35#A、35#B CPU演算データ収集処理部
40#A、40#B 符号化処理部
45#A、45#B 伝送処理部
50#A、50#B 符号化データ格納部
55#A、55#B 比較・判定処理部
70 カウントレジスタ
#A、#B CPU

Claims (8)

  1. 通信接続された複数の演算処理手段を備え、該複数の演算処理手段が同一の演算処理を同期して実行可能な情報処理装置であって、
    複数の符号化手法から、エラー確率が設定値未満である一の符号化手法を選択する符号化手法選択手段と、
    前記複数の演算処理手段が同一の演算処理を同期して実行する際に、前記複数の演算処理手段による演算処理結果を含む情報を、前記符号化手法選択手段によって選択された符号化手法によって符号化する符号化手段と、
    前記複数の符号化手段によって符号化された情報を比較して、前記複数の演算処理手段が正常に作動しているかどうかを判定する判定手段と、
    を備える情報処理装置。
  2. 請求項1に記載の情報処理装置であって、
    前記符号化手法選択手段は、前記エラー確率が設定値未満である符号化手法のうち、最も符号化ビット数が小さい符号化手法を選択する手段である、
    情報処理装置。
  3. 請求項1又は2に記載の情報処理装置であって、
    前記設定値は、パラメータとして設定されたCPU要求安全度に符号エラー比率を乗算し、更に前記判定手段による時間あたりの比較回数を乗算した値として算出される、
    情報処理装置。
  4. 請求項1ないし3のいずれか1項に記載の情報処理装置であって、
    前記符号化手法選択手段は、前記設定値の対数値に基づいて最小符号化ビット数を算出し、符号化ビット数が前記算出した最小符号化ビット数を超える符号化手法を選択することにより、エラー確率が設定値未満である符号化手法を選択する手段である、
    情報処理装置。
  5. 通信接続された複数の演算処理手段を備え、該複数の演算処理手段が同一の演算処理を同期して実行可能な情報処理装置の自己診断方法であって、
    複数の符号化手法から、エラー確率が設定値未満である一の符号化手法を選択する符号化手法選択ステップと、
    前記複数の演算処理手段が同一の演算処理を同期して実行する際に、前記複数の演算処理手段による演算処理結果を含む情報を、前記符号化手法選択ステップにおいて選択された符号化手法によって符号化する符号化ステップと、
    前記符号化ステップにおいて符号化された情報を比較して、前記複数の演算処理手段が正常に作動しているかどうかを判定する判定ステップと、
    を備える情報処理装置の自己診断方法。
  6. 請求項5に記載の情報処理装置の自己診断方法であって、
    前記符号化手法選択ステップにおいて、前記エラー確率が設定値未満である符号化手法のうち、最も符号化ビット数が小さい符号化手法を選択することを特徴とする、
    情報処理装置の自己診断方法。
  7. 請求項5又は6に記載の情報処理装置の自己診断方法であって、
    前記設定値を、パラメータとして設定されたCPU要求安全度に符号エラー比率を乗算し、更に前記判定手段による時間あたりの比較回数を乗算した値として算出する設定値算出ステップを更に備える、
    情報処理装置の自己診断方法。
  8. 請求項5ないし7のいずれか1項に記載の情報処理装置の自己診断方法であって、
    前記符号化手法選択ステップにおいて、前記設定値の対数値に基づいて最小符号化ビット数を算出し、該算出した最小符号化ビット数よりも符号化ビット数が大きい符号化手法を選択することにより、エラー確率が設定値未満である符号化手法を選択することを特徴とする、
    情報処理装置の自己診断方法。
JP2010144264A 2010-06-24 2010-06-24 情報処理装置、及び情報処理装置の自己診断方法 Active JP5545067B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010144264A JP5545067B2 (ja) 2010-06-24 2010-06-24 情報処理装置、及び情報処理装置の自己診断方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010144264A JP5545067B2 (ja) 2010-06-24 2010-06-24 情報処理装置、及び情報処理装置の自己診断方法

Publications (2)

Publication Number Publication Date
JP2012008812A true JP2012008812A (ja) 2012-01-12
JP5545067B2 JP5545067B2 (ja) 2014-07-09

Family

ID=45539272

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010144264A Active JP5545067B2 (ja) 2010-06-24 2010-06-24 情報処理装置、及び情報処理装置の自己診断方法

Country Status (1)

Country Link
JP (1) JP5545067B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014081853A (ja) * 2012-10-18 2014-05-08 Renesas Electronics Corp 半導体装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05324391A (ja) * 1991-12-16 1993-12-07 Kyosan Electric Mfg Co Ltd 故障検出装置、故障検出方法およびバス比較器
JP2010009327A (ja) * 2008-06-27 2010-01-14 Hitachi Ltd 照合システム
JP2010047102A (ja) * 2008-08-21 2010-03-04 Hitachi Ltd 多重系電子連動装置
JP2010165324A (ja) * 2009-01-19 2010-07-29 Makoto Goto ファイル格納システム及びサーバ装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05324391A (ja) * 1991-12-16 1993-12-07 Kyosan Electric Mfg Co Ltd 故障検出装置、故障検出方法およびバス比較器
JP2010009327A (ja) * 2008-06-27 2010-01-14 Hitachi Ltd 照合システム
JP2010047102A (ja) * 2008-08-21 2010-03-04 Hitachi Ltd 多重系電子連動装置
JP2010165324A (ja) * 2009-01-19 2010-07-29 Makoto Goto ファイル格納システム及びサーバ装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
JPN6014007703; 窓の杜 - 【REVIEW】複数ファイルのハッシュ値を全6種類のハッシュ関数で一括算出「MultiHasher」 , 20110525, 窓の杜Webサイト, 株式会社Impress Watch, 窓の杜編集 *
JPN6014007704; 池田 博康: '符号化によるマイクロプロセッサのエラー検知手法と評価' (旧)産業安全研究所研究報告(RR) RR-95-3, 1996, pp. 23-30, 独立行政法人労働安全衛生総合研究所 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014081853A (ja) * 2012-10-18 2014-05-08 Renesas Electronics Corp 半導体装置

Also Published As

Publication number Publication date
JP5545067B2 (ja) 2014-07-09

Similar Documents

Publication Publication Date Title
CN106775716B (zh) 一种基于度量机制的可信plc启动方法
KR102034348B1 (ko) 보안 감시
CN109831487B (zh) 分片文件验证方法及终端设备
EP3022653B1 (en) Fault detection apparatus and method
US8793533B2 (en) Method and device for performing failsafe hardware-independent floating-point arithmetic
CN108108262B (zh) 具有检查所选择的存储器访问的硬件检查单元的集成电路
CN111880740A (zh) 数据处理方法、装置、计算机系统及可读存储介质
EP3542276A1 (en) Flow control in remote direct memory access data communications with mirroring of ring buffers
CN102971515A (zh) 汽车用数据异常判定装置
CN112380046A (zh) 计算结果校验方法、系统、装置、设备及存储介质
CN107193249B (zh) 程序开发辅助装置以及程序开发辅助方法
JP5545067B2 (ja) 情報処理装置、及び情報処理装置の自己診断方法
JP2017199052A (ja) レジスタ異常検出装置
CN113178842A (zh) 继电保护定值监测方法、装置、继电保护设备和存储介质
JP2013175118A (ja) 制御装置、及びそのメモリ故障検出方法、その自己診断方法
CN112395129A (zh) 存储校验方法、装置、计算芯片、计算机设备及存储介质
CN109002317B (zh) 一种pcba固件升级方法及系统、pcba
CN116010158A (zh) 配置寄存器的校验装置、校验系统和芯片设备
CN112925546B (zh) 一种防止车载ecu刷新出错的多级校验方法及系统
US10114685B2 (en) System and method for error detection of executed program code employing compressed instruction signatures
CN104052726A (zh) 访问控制方法和采用访问控制方法的移动终端
WO2018010084A1 (zh) 应用于数字集成电路的esd检测装置、集成电路及方法
CN111506330A (zh) 一种程序更新方法、装置、星务计算机及存储介质
CN115473717B (zh) 基于互质幂余的储能系统时序数据校验方法
CN116931825A (zh) 运行存储单元以及执行具有存储器检查的应用程序的方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120713

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140131

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140225

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140317

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: 20140415

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140428

R150 Certificate of patent or registration of utility model

Ref document number: 5545067

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250