JP2016170521A - 正常なプロセッサの抽出方法及びプログラム、情報処理装置 - Google Patents

正常なプロセッサの抽出方法及びプログラム、情報処理装置 Download PDF

Info

Publication number
JP2016170521A
JP2016170521A JP2015048630A JP2015048630A JP2016170521A JP 2016170521 A JP2016170521 A JP 2016170521A JP 2015048630 A JP2015048630 A JP 2015048630A JP 2015048630 A JP2015048630 A JP 2015048630A JP 2016170521 A JP2016170521 A JP 2016170521A
Authority
JP
Japan
Prior art keywords
cpu
processors
processor
operation information
processing
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.)
Pending
Application number
JP2015048630A
Other languages
English (en)
Inventor
幸喜 藤本
Koki Fujimoto
幸喜 藤本
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2015048630A priority Critical patent/JP2016170521A/ja
Priority to US15/064,747 priority patent/US9977720B2/en
Publication of JP2016170521A publication Critical patent/JP2016170521A/ja
Pending legal-status Critical Current

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/18Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits
    • G06F11/183Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits by voting, the voting not being performed by the redundant components
    • G06F11/184Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits by voting, the voting not being performed by the redundant components where the redundant components implement processing functionality
    • 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/1695Error detection or correction of the data by redundancy in hardware which are operating with time diversity

Landscapes

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

Abstract

【課題】稼働する複数のプロセッサの中から正常なプロセッサを抽出する方法、プログラム及び情報処理装置を提供する。
【解決手段】抽出方法は、複数のプロセッサのそれぞれに対して同じ処理を実行させ、複数のプロセッサのそれぞれの処理における、データの書き込みアドレス、書き込まれるデータの値、データの読み込みアドレス、読み込まれたデータなどの動作情報の中に、プロセッサ間で一致しない動作情報が含まれる場合に、多数を占める動作情報が得られた1以上のプロセッサを正常なプロセッサとして抽出する。
【選択図】図1

Description

本発明は、冗長化技術に関する。
可用性とは、障害に対する耐性のことである。特にプラント制御や航空機制御に利用されるコンピュータシステムなど、瞬断が許容されないコンピュータシステムにおいては、コンピュータシステムの可用性を高め運用が継続的に行われるようにするため様々な対策が行われる。
コンピュータシステムの可用性を高める技術として、プロセッサやサーバなどを冗長化する技術が知られている。例えば或る文献は、以下のような技術を開示する。具体的には、複数の演算処理装置の各々が、演算処理によって自己の状態を判定し、自己の状態を表す状態データを所定の周期で複数の判定部に送信する。各判定部は、状態データに基づき正常な演算処理装置の選択を行い、選択結果を制御部に通知する。制御部は、各判定部から受信した選択結果から、多数決論理に基づき正常な演算処理装置を抽出する。
この技術は、まず演算処理装置自体が自己の状態を判定し、次に各判定部が正常な演算処理装置の選択を行い、さらに制御部が多数決論理に基づき正常な演算処理装置を抽出する技術である。従って、最終的に正常な演算処理装置を抽出するまでに時間がかかる場合があり、この点については検討がなされていない。
特開2013−239034号公報
従って、本発明の目的は、1つの側面では、稼働する複数のプロセッサの中から正常なプロセッサを抽出することである。
本発明の1つの態様では、複数のプロセッサのそれぞれに対して同じ処理を実行させ、複数のプロセッサのそれぞれの処理における動作情報の中に、プロセッサ間で一致しない動作情報が含まれる場合に、多数を占める動作情報が得られた1以上のプロセッサを正常なプロセッサとして抽出する処理を含む。
1つの側面では、稼働する複数のプロセッサの中から正常なプロセッサを抽出できるようになる。
図1は、情報処理装置の構成図である。 図2は、稼働CPUの動作及び運用CPUの切替について説明するための図である。 図3は、稼働CPUの動作及び運用CPUの切替について説明するための図である。 図4は、稼働CPUの動作及び運用CPUの切替について説明するための図である。 図5は、アドレス比較部が実行する処理について説明するための図である。 図6は、データ値比較部が実行する処理について説明するための図である。 図7は、選択制御部が実行する処理について説明するための図である。 図8は、選択制御部が実行する処理について説明するための図である。 図9は、運用管理部が実行する処理について説明するための図である。 図10は、管理テーブルに格納されるデータの一例を示す図である。 図11は、管理テーブルに格納されるデータの一例を示す図である。 図12は、運用管理部が実行する処理について説明するための図である。 図13は、運用CPUの切替に要する時間について説明するための図である。 図14は、運用CPUの切替に要する時間について説明するための図である。
[実施の形態1]
図1に、本実施の形態における情報処理装置1の構成図を示す。情報処理装置1は、制御部10と、ワークデータ格納部11と、センサデータ格納部12と、操作データ格納部13とを有する。制御部10は、CPU(Central Processing Unit)部14と、セレクタ部15と、管理部16と、記憶部a1乃至an(nは3以上の自然数)と、記憶部b1乃至bnと、記憶部cとを有する。CPU部14は、複数のCPUであるCPU1乃至nを有する。管理部16は、同期制御部161と、運用管理部162と、決定部163と、管理テーブル格納部164とを有する。決定部163は、アドレス比較部1631と、データ値比較部1632と、選択制御部1633とを有する。
図1において、「WD」は書き込まれるデータ値を表し、「RD」は読み出されたデータ値を表し、「D」はデータ値を表し、「A」はアドレスを表す。「D」が付されたバスはデータバスであり、「A」が付されたバスはアドレスバスである。
ワークデータ格納部11は、例えばメモリである。ワークデータ格納部11は、セレクタ部15及び記憶部cに接続される。ワークデータ格納部11には、CPU1乃至nが実行するプログラム、及びCPU1乃至nがプログラムを実行中に使用するデータ等が格納される。
センサデータ格納部12は、例えばメモリ又はレジスタである。センサデータ格納部12は、セレクタ部15及び記憶部cに接続される。センサデータ格納部12には、例えば、温度センサ或いは高度センサなどによって測定されたデータ(以下、センサデータと呼ぶ)が格納される。
操作データ格納部13は、例えばメモリ又はレジスタである。操作データ格納部13は、セレクタ部15及び記憶部cに接続される。操作データ格納部13には、例えばコマンド等が格納される。
セレクタ部15は、ワークデータ格納部11と、センサデータ格納部12と、操作データ格納部13と、管理部16と、記憶部a1乃至anと、記憶部b1乃至bnとに接続される。セレクタ部15は、選択制御部1633からのCPU選択信号に従い、ワークデータ格納部11、センサデータ格納部12、及び操作データ格納部13に接続されるCPUを切り替える。図1の例では、CPU選択信号により選択されたCPUはCPU1である。なお、図面を見やすくするため、図1においてはCPU選択信号を「選択信号」と表している。
記憶部a1乃至anは、例えばレジスタである。記憶部a1乃至anは、CPUから出力されたアドレスを記憶する。記憶部b1乃至bnは、例えばレジスタである。記憶部b1乃至bnは、CPUから出力されたデータ値(ここでは、書き込まれるデータ値)を記憶する。記憶部cは、例えばレジスタである。記憶部cは、ワークデータ格納部11から読み出されたデータ値、センサデータ格納部12から読み出されたデータ値、及び操作データ格納部13から読み出されたデータ値が格納される。記憶部cに格納されたデータ値は、CPU1乃至nによって読み出される。このように、記憶部cを設けることで、CPU1乃至nが同じ値に基づいてその後の処理を実行するようになるので、多数決判断の信頼性を高めることができる。
CPU1乃至nは、同じプログラムを実行する複数のCPUである。CPU1乃至nの処理は同期されており、同時並行で処理を実行するが、後述のように、非運用CPUが運用CPUの処理から所定時間遅れて処理を行うようにしてもよい。CPU1乃至nのうち一部のCPUは停止していることもある。以下では、稼働しているCPUを稼働CPUと呼び、稼働しておらず停止しているCPUを非稼働CPUと呼ぶ。稼働CPUのうち、セレクタ部15によってワークデータ格納部11、センサデータ格納部12、及び操作データ格納部13に接続されるCPUを運用CPUと呼ぶ。稼働CPUのうち、運用CPUが実行するプログラムと同じプログラムを実行するが、ワークデータ格納部11、センサデータ格納部12、及び操作データ格納部13に接続されていないCPUを非運用CPUと呼ぶ。本実施の形態においては、稼働CPUのうち1つのCPUが運用CPUであり、残りのCPUが非運用CPUである。
なお、最低でも稼働CPUが3つあれば多数決を行うことができるので、稼働CPUの数を3に保つように制御することで省電力化を図ってもよい。また、非稼働CPUの数は0以上であればよい。
同期制御部161は、運用管理部162から受け取った、運用状況に関する情報及び稼働状況に関する情報に従い、CPU1乃至nの動作タイミング及び稼働を同期制御信号によって制御する。同期制御部161は、同期の状況に関する情報を運用管理部162に出力する。同期制御信号は、例えば、リセット解除のための信号又はバスアクセスの応答を遅延させるための信号等である。なお、図面を見やすくするため、図1においては同期制御信号を「制御信号」と表している。
運用管理部162は、同期制御部161から受け取った、同期状況に関する情報と、決定部163から受け取った、選択状況に関する情報とに基づき、管理テーブル格納部164に格納されるデータを管理する。運用管理部162は、運用状況に関する情報及び稼働状況に関する情報を、決定部163及び同期制御部161に出力する。
アドレス比較部1631は、記憶部a1乃至anに格納されたアドレスをコピーして取得する。アドレス比較部1631は、取得した複数のアドレスを比較し、比較結果を選択制御部1633に出力する。
データ値比較部1632は、記憶部b1乃至bnに格納されたデータ値(ここでは、書き込まれるデータ値)をコピーして取得する。データ値比較部1632は、取得した複数のデータ値を比較し、比較結果を選択制御部1633に出力する。
選択制御部1633は、アドレス比較部1631から受け取った比較結果及びデータ値比較部1632から受け取った比較結果と、運用管理部162から受け取った、運用状況に関する情報及び稼働状況に関する情報とに基づき、運用CPUを選択する処理を実行する。選択制御部1633は、運用CPUの選択結果に基づき、セレクタ部15に出力するCPU選択信号を変更する。
次に、図2乃至図4を用いて、本実施の形態における稼働CPUの動作及び運用CPUの切替について説明する。
図2の例においては、CPU1乃至nは稼働CPUである。CPU1は運用CPUであり、CPU2乃至nは非運用CPUである。CPU1が、アドレスがaであり且つデータ値がbである書き込み(バスアクセス1)を行う場合、CPU2乃至nもバスアクセス1を実行する。同様に、CPU1が、アドレスがcであり且つデータ値がdである読み込み(バスアクセス2)を行う場合、CPU2乃至nもバスアクセス2を実行する。以上のような動作が繰り返し行われる。
書き込みのアクセスが行われるフェーズにおいては、記憶部a1乃至anに格納される書き込みのアドレスと、記憶部b1乃至bnに格納されているデータ値とに基づき、CPUに異常が発生したか判定される。例えばバスアクセス4のフェーズにおいて、CPU3のアドレスが「gg」であり、その他のCPUのアドレスが「g」である場合、CPU3は少数派なので、CPU3に異常が発生したと判定される。また、たとえアドレスの相違が検出されなかったとしても、CPU3のデータ値が「hh」であり、その他のCPUのデータ値が「h」である場合、CPU3は少数派なので、CPU3に異常が発生したと判定される。このように、アドレスの相違が検出された場合又はデータ値の相違が検出された場合、CPUに異常が発生したと判定される。
一方、読み込みのアクセスが行われるフェーズにおいては、CPUからはデータ値が出力されないので、記憶部a1乃至anに格納される読み込みのアドレスに基づき、CPUに異常が発生したか判定される。例えばバスアクセス2のフェーズにおいて、CPU3のアドレスが「cc」であり、その他のCPUのアドレスが「c」である場合、CPU3は少数派なので、CPU3に異常が発生したと判定される。
図3に、バスアクセス3のフェーズにおいてCPU2に異常が発生した場合におけるCPU1乃至nの動作を示す。図3の例においては、CPU1が運用CPUであり、CPU1以外のCPUが非運用CPUである。CPU2のアドレスは「e」ではないが、CPU2以外のアドレスは「e」であるとする。このような場合には、多数決により、CPU2に異常が発生したと判定される。但し、CPU2は運用CPUではないので、運用CPUの切替は不要であり、CPU1が運用CPUのままである。この例においては、CPU2は異常の発生後停止され、非稼働CPUになる。そして、例えば異常が解消された後、バスアクセスφが行われるフェーズから非運用CPUに戻る。
図4に、バスアクセス3のフェーズにおいて、運用CPUであるCPU1に異常が発生した場合における動作を示す。図4の例においては、CPU1のアドレスは「e」ではないが、CPU1以外のアドレスは「e」であるとする。このような場合には、多数決により、CPU1に異常が発生したと判定される。ここで、CPU1は運用CPUから非稼働CPUに切り替わり、CPU2は稼働CPUから運用CPUに切り替わる。そして、例えば異常が解消された後、CPU1は、バスアクセスφが行われるフェーズから非運用CPUに戻る。
次に、図5乃至図14を用いて、情報処理装置1の動作をより詳細に説明する。第1に、アドレス比較部1631が実行する処理について説明する。本処理は、運用CPUが動作を開始後、例えば所定時間が経過する度に行われる。或いは、運用CPUが動作を開始後、運用CPUが動作を停止するまで継続的に行われてもよい。
まず、アドレス比較部1631は、稼働CPU(すなわち、多数決の対象となるCPU)の番号を選択制御部1633から取得する(図5:ステップS1)。
アドレス比較部1631は、稼働CPUから出力されたアドレスを比較する(ステップS3)。具体的には、記憶部a1乃至anのうち稼働CPUに接続された記憶部から取得されたアドレスが比較される。
アドレス比較部1631は、アドレスの相違が検出された(すなわち、全アドレスが同一であるわけではない)か判断する(ステップS5)。例えば、稼働CPUから出力されたアドレスが、アドレス「g」、アドレス「g」、及びアドレス「gg」である場合には、アドレスの相違が検出されたと判断される。アドレス「g」、アドレス「g」、及びアドレス「g」である場合には、アドレスの相違が検出されないと判断される。
アドレスの相違が検出されない場合(ステップS5:Noルート)、アドレス比較部1631は、アドレスの相違が検出されないことを示す比較結果を、選択制御部1633に出力する(ステップS7)。そして処理を終了する。
一方、アドレスの相違が検出された場合(ステップS5:Yesルート)、アドレス比較部1631は、アドレスに基づき、稼働CPUを多数派グループと少数派グループとに分類する(ステップS9)。例えば、CPU1のアドレスが「g」、CPU2のアドレスが「g」、CPU3のアドレスが「g」、CPU4のアドレスが「gg」、CPU5のアドレスが「gg」であったとする。このような場合、CPU1乃至3は多数派グループに属する稼働CPUであり、CPU4及び5は少数派グループに属する稼働CPUである。
アドレス比較部1631は、アドレスの相違が検出されたことを示す比較結果及び少数派グループに属する稼働CPUの番号を、選択制御部1633及び運用管理部162に出力する(ステップS11)。そして処理を終了する。
以上のような処理を実行すれば、異常な動作をしている可能性があるCPU(ここでは、少数派グループに属する稼働CPU)を検出できるようになる。なお、読み込み時及び書き込み時の両方においてアドレスはCPUから出力されるので、読み込み時及び書き込み時の両方において多数決を行うことができる。
第2に、データ値比較部1632が実行する処理について説明する。本処理は、運用CPUが動作を開始後、例えば所定時間が経過する度に行われる。或いは、運用CPUが動作を開始後、運用CPUが動作を停止するまで継続的に行われてもよい。
まず、データ値比較部1632は、稼働CPU(すなわち、多数決の対象となるCPU)の番号を選択制御部1633から取得する(図6:ステップS21)。
データ値比較部1632は、バスアクセスが書き込みに該当するか判断する(ステップS23)。バスアクセスが書き込みに該当するか否かは、データ値の内容あるいはCPUに具備される書込み制御信号の状態によって判断することができる。読み込みの際のデータ値はCPUから出力されるわけではないので、本実施の形態においては、バスアクセスが書き込みに該当する場合にのみ比較が行われる。バスアクセスが読み込みに該当する場合(ステップS23:Noルート)、ステップS25の処理に移行する。
バスアクセスが書き込みに該当する場合(ステップS23:Yesルート)、データ値比較部1632は、稼働CPUから出力されたデータ値を比較する(ステップS24)。具体的には、記憶部b1乃至bnのうち稼働CPUに接続された記憶部から取得されたデータ値が比較される。
データ値比較部1632は、データ値の相違が検出された(すなわち、全データ値が同一であるわけではない)か判断する(ステップS27)。例えば、稼働CPUから出力されたデータ値が、データ値「h」、データ値「h」、及びデータ値「hh」である場合には、データ値の相違が検出されたと判断される。データ値「h」、データ値「h」、及びデータ値「h」である場合には、データ値の相違が検出されないと判断される。
データ値の相違が検出されない場合(ステップS27:Noルート)、データ値比較部1632は、データ値の相違が検出されないことを示す比較結果を、選択制御部1633に出力する(ステップS25)。そして処理を終了する。
一方、データ値の相違が検出された場合(ステップS27:Yesルート)、データ値比較部1632は、データ値に基づき、稼働CPUを多数派グループと少数派グループとに分類する(ステップS29)。例えば、CPU1のデータ値が「h」、CPU2のデータ値が「h」、CPU3のデータ値が「h」、CPU4のデータ値が「h」、CPU5のデータ値が「hh」であったとする。このような場合、CPU1乃至4は多数派グループに属する稼働CPUであり、CPU5は少数派グループに属する稼働CPUである。
データ値比較部1632は、データ値の相違が検出されたことを示す比較結果及び少数派グループに属する稼働CPUの番号を、選択制御部1633及び運用管理部162に出力する(ステップS31)。そして処理を終了する。
以上のような処理を実行すれば、異常な動作をしている可能性があるCPU(ここでは、少数派グループに属する稼働CPU)を検出できるようになる。
第3に、選択制御部1633が実行する処理について説明する。本処理は、運用CPUが動作を開始後、例えば所定時間が経過する度に行われる。或いは、運用CPUが動作を開始後、運用CPUが動作を停止するまで継続的に行われてもよい。
まず、選択制御部1633は、運用CPUの番号、稼働CPUの番号、及び切替の優先順位を運用管理部162から取得する(図7:ステップS41)。
選択制御部1633は、ステップS41において取得した稼働CPU(すなわち、多数決の対象となるCPU)の番号をアドレス比較部1631及びデータ値比較部1632に出力する(ステップS43)。
選択制御部1633は、アドレス比較部1631から、比較結果と、ステップS5において相違が検出された場合には少数派グループに属する稼働CPUの番号とを取得する(ステップS45)。
選択制御部1633は、ステップS45において取得した比較結果が、アドレスの相違が検出されたことを示しているか判断する(ステップS47)。ステップS45において取得した比較結果が、アドレスの相違が検出されたことを示していない場合(ステップS47:Noルート)、処理は端子Aを介して図8のステップS55に移行する。
ステップS45において取得した比較結果が、アドレスの相違が検出されたことを示している場合(ステップS47:Yesルート)、選択制御部1633は、運用CPUが少数派グループに含まれるか判断する(ステップS49)。ステップS49においては、ステップS45において取得した稼働CPUの番号の中に、運用CPUの番号が含まれているか判断される。
運用CPUが少数派グループに含まれない場合(ステップS49:Noルート)、処理は端子Aを介して図8のステップS55に移行する。運用CPUが少数派グループに含まれる場合(ステップS49:Yesルート)、選択制御部1633は、多数派グループに属する非運用CPU(すなわち、稼働CPUのうち少数派グループに属するCPU以外のCPU)の中から、新規の運用CPU(すなわち、切替後に運用CPUになるCPU)の番号を選択し、CPU選択信号を変更する(ステップS51)。ステップS51においては、新規の運用CPUがワークデータ格納部11、センサデータ格納部12、及び操作データ格納部13に接続されるようにCPU選択信号が変更され、セレクタ部15は、CPU選択信号に従いバスの切替を実行する。なお、ステップS51においては、ステップS41において取得した切替の優先順位に基づき運用CPUが選択される。
選択制御部1633は、新規の運用CPUの番号を運用管理部162に出力する(ステップS53)。処理は端子Bを介して終了する。
図8の説明に移行し、データ値比較部1632から、比較結果と、ステップS27において相違が検出された場合には少数派グループに属する稼働CPUの番号とを取得する(ステップS55)。
選択制御部1633は、ステップS55において取得した比較結果が、データ値の相違が検出されたことを示しているか判断する(ステップS57)。ステップS55において取得した比較結果が、データ値の相違が検出されたことを示していない場合(ステップS57:Noルート)、処理は終了する。
ステップS55において取得した比較結果が、データ値の相違が検出されたことを示している場合(ステップS57:Yesルート)、選択制御部1633は、運用CPUが少数派グループに含まれるか判断する(ステップS59)。ステップS59においては、ステップS55において取得した稼働CPUの番号の中に、運用CPUの番号が含まれているか判断される。
運用CPUが少数派グループに含まれない場合(ステップS59:Noルート)、処理は終了する。運用CPUが少数派グループに含まれる場合(ステップS59:Yesルート)、選択制御部1633は、多数派グループに属する非運用CPU(すなわち、稼働CPUのうち少数派グループに属するCPU以外のCPU)の中から、新規の運用CPU(すなわち、切替後に運用CPUになるCPU)の番号を選択し、CPU選択信号を変更する(ステップS61)。ステップS61においては、新規の運用CPUがワークデータ格納部11、センサデータ格納部12、及び操作データ格納部13に接続されるように、CPU選択信号が変更され、セレクタ部15は、CPU選択信号に従いバスの切替を実行する。なお、ステップS61においては、ステップS41において取得した切替の優先順位に基づき運用CPUが選択される。
選択制御部1633は、新規の運用CPUの番号を運用管理部162に出力する(ステップS63)。そして処理を終了する。
以上のようにすれば、CPUの異常により誤った制御を行ってしまうことを抑制できるようになる。また、新規の運用CPUを、既に稼働中のCPUである非運用CPUの中から選択するので、切替にかかる時間を大幅に短縮しつつ運用を継続できるようになる。
第4に、運用管理部162が実行する処理について説明する。本処理は、例えば電源投入後に行われる。
まず、運用管理部162は、管理テーブル格納部164に格納された管理テーブルからデータを読み込む(図9:ステップS71)。
図10に、管理テーブル格納部164に格納される管理テーブルの一例を示す。図10の例では、CPUの番号と、運用CPUであるか否かを表す情報(以下、運用情報と呼ぶ)と、稼働CPUであるか否かを表す情報(以下、稼働情報と呼ぶ)と、故障中であるか否かを表す情報(以下、故障情報と呼ぶ)と、切替の優先順位を表す情報とが格納される。運用情報が「1」である場合、CPUは運用CPUであり、運用情報が「0」である場合、CPUは非運用CPUである。稼働情報が「1」である場合、CPUは稼働CPUであり、稼働情報が「0」である場合、CPUは非稼働CPUである。故障情報が「1」である場合、CPUは故障中であり、故障情報が「0」である場合、CPUは故障中ではない。切替の優先順位が「0」である場合、CPUは切替の対象ではない。例えば、現在運用CPUであるCPUは、切替によって次回また運用CPUになることはないので、「0」が設定される。
図11に、CPU1が故障し運用CPUがCPU1からCPU2に切り替わった場合における管理テーブルの一例を示す。図11の例においては、CPU1について、運用情報が「1」から「0」に変わっており、故障表す情報が「0」から「1」に変わっている。また、故障によりCPU1は停止されたため、稼働情報が「1」から「0」に変わっている。CPU2については、運用情報が「0」から「1」に変わっている。また、CPU1の故障により稼働CPUの数が減ったため、CPU4が稼働CPUに切り替えられる。そのため、CPU4については、稼働情報が「0」から「1」に変わっている。そして、切替の優先順位も更新されている。
図9の説明に戻り、運用管理部162は、運用CPUの番号、稼働CPUの番号、及び切替の優先順位を決定部163に出力する(ステップS73)。
運用管理部162は、アドレス比較部1631から、アドレスの相違が検出されたことを示す比較結果を取得したか判断する(ステップS75)。アドレスの相違が検出されたことを示す比較結果をアドレス比較部1631から取得していない場合(ステップS75:Noルート)、処理は端子Cを介して図12のステップS87に移行する。
一方、アドレスの相違が検出されたことを示す比較結果をアドレス比較部1631から取得した場合(ステップS75:Yesルート)、運用管理部162は、アドレス比較部1631から取得した少数派グループに属する稼働CPUの番号を読み出し、新規の運用CPUの番号を選択制御部1633から取得する(ステップS77)。ステップS77において読み出される稼働CPUの番号は、比較結果と共に既に取得し、所定の記憶装置(例えばメインメモリ或いはレジスタ)に格納されたものである。
運用管理部162は、少数派グループに属するCPUを非稼働CPUに切り替え(すなわち、稼働情報を「0」に設定し)、新規に運用CPUになるCPUを非運用CPUから運用CPUに切り替え(すなわち、運用情報を「1」に設定し)、運用CPUであったCPUを非運用CPUに切り替える(すなわち、運用情報を「0」に設定する)ように管理テーブルを更新する(ステップS79)。運用CPUであったCPUが少数派グループに属する場合には、非稼働CPUに切り替えられる。ここで、運用管理部162は運用状況に関する情報及び稼働状況に関する情報を同期制御部161に出力し、これに応じ、同期制御部161はCPU1乃至nの動作タイミング及び稼働を制御する。
運用管理部162は、管理テーブルに格納されている、故障情報及び切替の優先順位を更新する(ステップS81)。具体的には、少数派グループに属するCPUについて、故障情報を「1」に設定し、少数派グループに属するCPUの優先順位を「0」に設定する。処理は端子Dを介して図12のステップS83に移行する。
図12の説明に移行し、運用管理部162は、管理テーブル格納部164に格納された管理テーブルからデータを読み込む(ステップS83)。
運用管理部162は、運用CPUの番号、稼働CPUの番号、及び切替の優先順位を決定部163に出力する(ステップS85)。
運用管理部162は、データ値比較部1632から、データ値の相違が検出されたことを示す比較結果を取得したか判断する(ステップS87)。データ値の相違が検出されたことを示す比較結果をデータ値比較部1632から取得していない場合(ステップS87:Noルート)、ステップS95の処理に移行する。
一方、データ値の相違が検出されたことを示す比較結果をデータ値比較部1632から取得した場合(ステップS87:Yesルート)、運用管理部162は、データ値比較部1632から取得した少数派グループに属する稼働CPUの番号を読み出し、新規の運用CPUの番号を選択制御部1633から取得する(ステップS89)。ステップS89において読み出される稼働CPUの番号は、比較結果と共に既に取得し、所定の記憶装置(例えばメインメモリ或いはレジスタ)に格納されたものである。
運用管理部162は、少数派グループに属するCPUを非稼働CPUに切り替え(すなわち、稼働情報を「0」に設定し)、新規に運用CPUになるCPUを非運用CPUから運用CPUに切り替え(すなわち、運用情報を「1」に設定し)、運用CPUであったCPUを非運用CPUに切り替える(すなわち、運用情報を「0」に設定する)ように管理テーブルを更新する(ステップS91)。運用CPUであったCPUが少数派グループに属する場合には、非稼働CPUに切り替えられる。ここで、運用管理部162は、運用状況に関する情報及び稼働状況に関する情報を同期制御部161に出力し、これに応じ、同期制御部161はCPU1乃至nの動作タイミング及び稼働を制御する。
運用管理部162は、管理テーブルに格納されている、故障情報及び切替の優先順位を更新する(ステップS93)。具体的には、少数派グループに属するCPUについて、故障情報を「1」に設定し、少数派グループに属するCPUの優先順位を「0」に設定する。
運用管理部162は、CPUの冗長化を終了するか判断する(ステップS95)。CPUの冗長化を終了しない場合(ステップS95:Noルート)、処理は端子Eを介して図9のステップS71の処理に戻る。一方、CPUの冗長化を終了する場合(ステップS95:Yesルート)、処理を終了する。
以上のような処理を実行すれば、CPU1乃至nの運用状況及び稼働状況を適切に管理できるようになる。
次に、図13及び図14を用いて、運用CPUの切替に要する時間について説明する。図13及び図14においては、運用CPUが実行する処理と、非運用CPUが実行する処理と、運用CPUに異常が発生するタイミングと、CPUの切替を行うタイミングとが示されている。横軸は時間を表す。(1)は、ワークデータ格納部11に関係する処理であることを表す。(2)は、センサデータ格納部12に関係する処理であることを表す。(3)は、操作データ格納部13に関係する処理であることを表す。(4)は、CPU間通信を表す。各処理は1クロックの時間で行われるものとする。
図13は、本実施の形態の方法を用いた場合の例を示す図である。この例においては、色付けされた長方形の図形の部分におけるいずれかのタイミングにおいて、運用CPUの異常及びCPUの切替が発生する。本実施の形態においては、運用CPUと非運用CPUとが同じ処理を並行して行っている。具体的には、センサデータ格納部12からデータを読み出すための命令をワークデータ格納部11から読み出す処理(処理1)と、読み出された命令に従いセンサデータ格納部12からデータを読み出す処理(処理2)と、ワークデータ格納部11からデータ処理命令を読み出す処理(処理3)と、読み出したデータ処理命令に従いワークデータ格納部11に格納されたデータに対して実行する処理(処理4)と、ワークデータ格納部11から書き込み命令を読み出す処理(処理5)と、読み出した書き込み命令に従い操作データ格納部13に書き込みを行う処理(処理6)とが並行して行われている。また、CPU間通信も発生しない。従って、色付けされた長方形の図形の部分におけるいずれのタイミングにおいて、運用CPUを切り替えたとしても、運用が停止する時間帯が生じることが無い。
図14は、本実施の形態の方法を用いない場合の例を示す図である。この例においては、色付けされた長方形の図形の部分におけるいずれかのタイミングにおいて、運用CPUの異常が発生する。異常の発生が検出されると、CPUの切替を行うために等値化(すなわち、CPUの状態を同じにすること)が行われる。具体的には、運用CPUが、非運用CPUを等値化するための等値化データを送信するための命令をワークデータ格納部11から読み出す処理(処理U)と、等値化データを非運用CPUに送信する処理(処理V)とを実行する。そして、非運用CPUは、等値化データを運用CPUから受信する処理(処理W)と、等値化データの正当性を確認するための命令をワークデータ格納部11から読み出す処理(処理X)と、読み出した命令に従い等値化データの正当性を確認する処理(処理Y)とを実行する。この時点で運用CPUが切り替わり、新規の運用CPUは、ワークデータ格納部11からデータ処理命令を読み出す処理(処理3)を開始する。このように、異常の発生を検出してから等値化を行うような方法では、即時の切替を行うことはできない。そして、元の運用CPUが操作データ格納部13に書き込みを行う処理(処理6)が終わった後、新規の運用CPUが操作データ格納部13に書き込みを行う処理(処理6)が完了するまでの間は新たな処理が行われず、実質的に処理が遅延することになる。実際には、各処理には数クロックの時間を要することが普通であるので、遅延時間はさらに長くなる。
[実施の形態2]
第1の実施の形態においては、少数派グループに属するCPUを非稼働CPUに切り替える(すなわち、停止させる)。しかし、CPUのハードウエア自体に異常は無かったとしても、ノイズによる一時的なバスエラーが原因で多数派グループのアドレス等と異なるアドレス等が検出される場合もある。
そこで、アドレス又はデータ値の相違が検出されたCPUをすぐに停止させるのではなく、まずは非運用CPUに切り替えるようにしてもよい。そして、所定時間内又は所定回数のバスアクセスを実行するまでの間に、そのCPUが一定の回数以上連続して多数派グループに属するようになった場合には、そのまま非運用CPUとして動作を継続させてもよい。一方で、所定時間内又は所定回数のバスアクセスを実行するまでの間に、そのCPUが多数派グループに属するようにならない場合には、そのCPUを停止させてもよい。
以上本発明の一実施の形態を説明したが、本発明はこれに限定されるものではない。例えば、上で説明した情報処理装置1の機能ブロック構成は実際のプログラムモジュール構成に一致しない場合もある。
また、上で説明した各テーブルの構成は一例であって、上記のような構成でなければならないわけではない。さらに、処理フローにおいても、処理結果が変わらなければ処理の順番を入れ替えることも可能である。さらに、並列に実行させるようにしても良い。
なお、上では複数のCPU1乃至nを利用する例を示したが、複数のCPUコアであっても本実施の形態を適用することができる。
また、ハードウエアの制約上、運用CPUと非運用CPUとが同時並行で処理を実行するのが難しいような場合には、非運用CPUは運用CPUより時間αだけ遅れて同じ動作を行ってもよい。αは、1クロックに要する時間に0以上の整数を掛けた時間である。
なお、例えばデータ値が「g」であるCPUの数が2であり、データ値が「f」であるCPUの数が2であるというような場合には、多数決によって多数派及び少数派を決定することはできない。このような場合には、データ値の相違が検出されないものとして取り扱ってもよい。
なお、上で述べた例では、情報を取得する側が情報を提供する側から能動的に情報を取得しているが、情報を提供する側が情報を取得する側に対して所定のタイミングで情報を提供してもよい。すなわち、アドレス比較部1631、データ値比較部1632、選択制御部1633、及び運用管理部162が情報を取得するタイミングは任意であり、上で述べた例におけるタイミングに限られるわけではない。
なお、運用CPUを選択する際には、多数決判断についての過去の履歴に基づき、故障の実績がないCPUを選択するようにしてもよい。
なお、運用CPUの切替が行われた場合には、情報処理装置1の管理者にその旨を通知するためのデータを出力してもよい。
以上述べた本発明の実施の形態をまとめると、以下のようになる。
本実施の形態に係る正常なプロセッサの抽出方法は、(A)複数のプロセッサのそれぞれに対して同じ処理を実行させ、(B)複数のプロセッサのそれぞれの処理における動作情報の中に、プロセッサ間で一致しない動作情報が含まれる場合に、多数を占める動作情報が得られた1以上のプロセッサを正常なプロセッサとして抽出する処理を含む。
このようにすれば、複数のプロセッサの中から正常なプロセッサを抽出することができるようになる。また、複数のプロセッサのそれぞれが同じ処理を実行しており、等値化のための処理が不要になるので、プロセッサの切替を高速で行えるようになる。
また、上で述べた動作情報が、複数のプロセッサのそれぞれの処理における、データの書き込みアドレス、書き込まれるデータの値、データの読み込みアドレス、及び読み込まれたデータの値の少なくともいずれかを含んでもよい。
また、本抽出方法は、(C)動作情報を、複数のプロセッサのそれぞれに接続するバスを通過するデータをキャプチャして取得する処理をさらに含んでもよい。このようにすれば、動作情報を容易に取得できるようになる。
また、本抽出方法は、(D)複数のプロセッサのうち予め定められた1の第1プロセッサ(例えば、実施の形態における運用CPU)が、多数を占める動作情報が得られた1以上のプロセッサに含まれない場合、多数を占める動作情報が得られた1以上のプロセッサの中から、新たな第1プロセッサを選択する処理をさらに含んでもよい。このようにすれば、第1プロセッサが故障している可能性がある場合に対処できるようになる。
また、複数のプロセッサのそれぞれに対して同じ処理を実行させる処理において、(a1)複数のプロセッサのうち第1プロセッサ以外のプロセッサの処理を、第1プロセッサの処理より所定時間遅らせて実行させてもよい。例えばハードウエアの制約から、第1プロセッサと第1プロセッサ以外のプロセッサとに同じ処理を同時に行わせることが難しい場合がある。そこで、上で述べたようにすれば、そのような場合にも対処できるようになる。
また、本抽出方法は、(E)多数を占める動作情報が得られた1以上のプロセッサ以外のプロセッサについて、所定時間以上又は所定回数以上多数を占める動作情報が得られない場合に、当該プロセッサを停止する処理をさらに含んでもよい。所定時間以上又は所定回数以上多数を占める動作情報が得られない場合には、プロセッサが故障している可能性がある。そこで、上で述べたようにすれば、故障している可能性があるプロセッサを処理の対象から外すことができるようになる。
また、本抽出方法は、(F)第1プロセッサを、元の第1プロセッサから新たな第1プロセッサに切り替えるためのバス接続を行う処理をさらに含んでもよい。このようにすれば、第1プロセッサが故障している状態が生じることを防げるようになる。
また、新たな第1プロセッサを選択する処理において、(d1)多数を占める動作情報が得られた1以上のプロセッサの中から、優先順位に基づき新たな第1プロセッサを選択してもよい。このようにすれば、適切な第1プロセッサを選択できるようになる。
なお、上記方法による処理をプロセッサに行わせるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブルディスク、CD−ROM、光磁気ディスク、半導体メモリ、ハードディスク等のコンピュータ読み取り可能な記憶媒体又は記憶装置に格納される。尚、中間的な処理結果はメインメモリ等の記憶装置に一時保管される。
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)
コンピュータが、
複数のプロセッサのそれぞれに対して同じ処理を実行させ、
前記複数のプロセッサのそれぞれの前記処理における動作情報の中に、プロセッサ間で一致しない動作情報が含まれる場合に、多数を占める動作情報が得られた1以上のプロセッサを正常なプロセッサとして抽出する、
処理を実行する、正常なプロセッサの抽出方法。
(付記2)
前記動作情報が、前記複数のプロセッサのそれぞれの前記処理における、データの書き込みアドレス、書き込まれるデータの値、データの読み込みアドレス、及び読み込まれたデータの値の少なくともいずれかを含む
付記1記載の正常なプロセッサの抽出方法。
(付記3)
前記コンピュータが、
前記動作情報を、前記複数のプロセッサのそれぞれに接続するバスを通過するデータをキャプチャして取得する、
処理をさらに実行する付記1又は2記載の正常なプロセッサの抽出方法。
(付記4)
前記コンピュータが、
前記複数のプロセッサのうち予め定められた1の第1プロセッサが、前記多数を占める動作情報が得られた1以上のプロセッサに含まれない場合、前記多数を占める動作情報が得られた1以上のプロセッサの中から、新たな前記第1プロセッサを選択する、
処理をさらに実行する付記1乃至3のいずれか1つ記載の正常なプロセッサの抽出方法。
(付記5)
前記複数のプロセッサのそれぞれに対して同じ処理を実行させる処理において、
前記複数のプロセッサのうち前記第1プロセッサ以外のプロセッサの前記処理を、前記第1プロセッサの前記処理より所定時間遅らせて実行させる、
付記4記載の正常なプロセッサの抽出方法。
(付記6)
前記コンピュータが、
前記多数を占める動作情報が得られた1以上のプロセッサ以外のプロセッサについて、所定時間以上又は所定回数以上前記多数を占める動作情報が得られない場合に、当該プロセッサを停止する
処理をさらに実行する付記1記載の正常なプロセッサの抽出方法。
(付記7)
前記コンピュータが、
前記第1プロセッサを、元の前記第1プロセッサから新たな前記第1プロセッサに切り替えるためのバス接続を行う、
処理をさらに実行する付記4又は5記載の正常なプロセッサの抽出方法。
(付記8)
新たな前記第1プロセッサを選択する処理において、
前記多数を占める動作情報が得られた1以上のプロセッサの中から、優先順位に基づき新たな前記第1プロセッサを選択する、
付記4乃至5のいずれか1つ記載の正常なプロセッサの抽出方法。
(付記9)
コンピュータに、
複数のプロセッサのそれぞれに対して同じ処理を実行させ、
前記複数のプロセッサのそれぞれの前記処理における動作情報の中に、プロセッサ間で一致しない動作情報が含まれる場合に、多数を占める動作情報が得られた1以上のプロセッサを正常なプロセッサとして抽出する、
処理を実行させる、正常なプロセッサの抽出プログラム。
(付記10)
複数のプロセッサのそれぞれに対して同じ処理を実行させる実行制御部と、
前記複数のプロセッサのそれぞれの前記処理における動作情報の中に、プロセッサ間で一致しない動作情報が含まれる場合に、多数を占める動作情報が得られた1以上のプロセッサを正常なプロセッサとして抽出する抽出部と、
を有する情報処理装置。
(付記11)
前記多数を占める動作情報が得られた1以上のプロセッサは、同じ動作情報が得られたプロセッサが同じグループに属するように前記複数のプロセッサを分類した場合に最もプロセッサの数が多いグループに属する1以上のプロセッサである、
付記1記載の正常なプロセッサの抽出方法。
1 情報処理装置 10 制御部
11 ワークデータ格納部 12 センサデータ格納部
13 操作データ格納部 14 CPU部
15 セレクタ部 16 管理部
161 同期制御部 162 運用管理部
163 決定部 1631 アドレス比較部
1632 データ値比較部 1633 選択制御部
a1,a2,an,b1,b2,bn,c 記憶部

Claims (8)

  1. コンピュータが、
    複数のプロセッサのそれぞれに対して同じ処理を実行させ、
    前記複数のプロセッサのそれぞれの前記処理における動作情報の中に、プロセッサ間で一致しない動作情報が含まれる場合に、多数を占める動作情報が得られた1以上のプロセッサを正常なプロセッサとして抽出する、
    処理を実行する、正常なプロセッサの抽出方法。
  2. 前記動作情報が、前記複数のプロセッサのそれぞれの前記処理における、データの書き込みアドレス、書き込まれるデータの値、データの読み込みアドレス、及び読み込まれたデータの値の少なくともいずれかを含む
    請求項1記載の正常なプロセッサの抽出方法。
  3. 前記コンピュータが、
    前記動作情報を、前記複数のプロセッサのそれぞれに接続するバスを通過するデータをキャプチャして取得する、
    処理をさらに実行する請求項1又は2記載の正常なプロセッサの抽出方法。
  4. 前記コンピュータが、
    前記複数のプロセッサのうち予め定められた1の第1プロセッサが、前記多数を占める動作情報が得られた1以上のプロセッサに含まれない場合、前記多数を占める動作情報が得られた1以上のプロセッサの中から、新たな前記第1プロセッサを選択する、
    処理をさらに実行する請求項1乃至3のいずれか1つ記載の正常なプロセッサの抽出方法。
  5. 前記複数のプロセッサのそれぞれに対して同じ処理を実行させる処理において、
    前記複数のプロセッサのうち前記第1プロセッサ以外のプロセッサの前記処理を、前記第1プロセッサの前記処理より所定時間遅らせて実行させる、
    請求項4記載の正常なプロセッサの抽出方法。
  6. 前記コンピュータが、
    前記多数を占める動作情報が得られた1以上のプロセッサ以外のプロセッサについて、所定時間以上又は所定回数以上前記多数を占める動作情報が得られない場合に、当該プロセッサを停止する
    処理をさらに実行する請求項1記載の正常なプロセッサの抽出方法。
  7. コンピュータに、
    複数のプロセッサのそれぞれに対して同じ処理を実行させ、
    前記複数のプロセッサのそれぞれの前記処理における動作情報の中に、プロセッサ間で一致しない動作情報が含まれる場合に、多数を占める動作情報が得られた1以上のプロセッサを正常なプロセッサとして抽出する、
    処理を実行させる、正常なプロセッサの抽出プログラム。
  8. 複数のプロセッサのそれぞれに対して同じ処理を実行させる実行制御部と、
    前記複数のプロセッサのそれぞれの前記処理における動作情報の中に、プロセッサ間で一致しない動作情報が含まれる場合に、多数を占める動作情報が得られた1以上のプロセッサを正常なプロセッサとして抽出する抽出部と、
    を有する情報処理装置。
JP2015048630A 2015-03-11 2015-03-11 正常なプロセッサの抽出方法及びプログラム、情報処理装置 Pending JP2016170521A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2015048630A JP2016170521A (ja) 2015-03-11 2015-03-11 正常なプロセッサの抽出方法及びプログラム、情報処理装置
US15/064,747 US9977720B2 (en) 2015-03-11 2016-03-09 Method, information processing apparatus, and computer readable medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015048630A JP2016170521A (ja) 2015-03-11 2015-03-11 正常なプロセッサの抽出方法及びプログラム、情報処理装置

Publications (1)

Publication Number Publication Date
JP2016170521A true JP2016170521A (ja) 2016-09-23

Family

ID=56886677

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015048630A Pending JP2016170521A (ja) 2015-03-11 2015-03-11 正常なプロセッサの抽出方法及びプログラム、情報処理装置

Country Status (2)

Country Link
US (1) US9977720B2 (ja)
JP (1) JP2016170521A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102017119510A1 (de) 2016-09-01 2018-03-01 Mazda Motor Corporation Motor mit homogener Kompressionszündung

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11645178B2 (en) * 2018-07-27 2023-05-09 MIPS Tech, LLC Fail-safe semi-autonomous or autonomous vehicle processor array redundancy which permits an agent to perform a function based on comparing valid output from sets of redundant processors

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63175937A (ja) * 1987-01-16 1988-07-20 Nippon Telegr & Teleph Corp <Ntt> 障害回復方式
JPH03192425A (ja) * 1989-12-22 1991-08-22 Hitachi Ltd デイスク駆動装置
JPH06259270A (ja) * 1993-03-04 1994-09-16 Hitachi Ltd プロセッサ異常判定回路
JPH07175765A (ja) * 1993-10-25 1995-07-14 Mitsubishi Electric Corp 計算機の障害回復方法
US20080244305A1 (en) * 2007-03-30 2008-10-02 Texas Instruments Deutschland, Gmbh Delayed lock-step cpu compare
JP2014081853A (ja) * 2012-10-18 2014-05-08 Renesas Electronics Corp 半導体装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2799104B2 (ja) 1992-06-11 1998-09-17 株式会社日立製作所 プログラマブルコントローラの二重化切替装置
JP4154853B2 (ja) 2000-11-13 2008-09-24 富士電機機器制御株式会社 制御データを等値化する冗長化プログラマブルコントローラ及び等値化方法。
US6931576B2 (en) * 2002-01-07 2005-08-16 Sun Microsystems, Inc. Data integrity device providing heightened error protection in a data processing system
JP3910967B2 (ja) 2004-03-12 2007-04-25 東芝ソリューション株式会社 2重化システム及び多重化制御方法
US7933966B2 (en) * 2005-04-26 2011-04-26 Hewlett-Packard Development Company, L.P. Method and system of copying a memory area between processor elements for lock-step execution
JP4874873B2 (ja) 2007-06-06 2012-02-15 株式会社東芝 ディジタル制御装置
US8516355B2 (en) * 2011-02-16 2013-08-20 Invensys Systems, Inc. System and method for fault tolerant computing using generic hardware
JP2013239034A (ja) 2012-05-15 2013-11-28 Mitsubishi Electric Corp 系切替制御装置及び二重化システム

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63175937A (ja) * 1987-01-16 1988-07-20 Nippon Telegr & Teleph Corp <Ntt> 障害回復方式
JPH03192425A (ja) * 1989-12-22 1991-08-22 Hitachi Ltd デイスク駆動装置
JPH06259270A (ja) * 1993-03-04 1994-09-16 Hitachi Ltd プロセッサ異常判定回路
JPH07175765A (ja) * 1993-10-25 1995-07-14 Mitsubishi Electric Corp 計算機の障害回復方法
US20080244305A1 (en) * 2007-03-30 2008-10-02 Texas Instruments Deutschland, Gmbh Delayed lock-step cpu compare
JP2014081853A (ja) * 2012-10-18 2014-05-08 Renesas Electronics Corp 半導体装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102017119510A1 (de) 2016-09-01 2018-03-01 Mazda Motor Corporation Motor mit homogener Kompressionszündung

Also Published As

Publication number Publication date
US20160266985A1 (en) 2016-09-15
US9977720B2 (en) 2018-05-22

Similar Documents

Publication Publication Date Title
US11687391B2 (en) Serializing machine check exceptions for predictive failure analysis
US7698594B2 (en) Reconfigurable processor and reconfiguration method executed by the reconfigurable processor
US10114356B2 (en) Method and apparatus for controlling a physical unit in an automation system
CN103164316A (zh) 硬件监视器
US10360115B2 (en) Monitoring device, fault-tolerant system, and control method
JP2016170521A (ja) 正常なプロセッサの抽出方法及びプログラム、情報処理装置
CN115766405A (zh) 一种故障处理方法、装置、设备和存储介质
JP2011154459A (ja) コンピュータシステムのプログラム異常動作検出装置
CN110673793B (zh) 存储设备节点事件管理方法、系统及电子设备和存储介质
JP5440673B1 (ja) プログラマブルロジックデバイス、情報処理装置、被疑箇所指摘方法およびプログラム
US20060195849A1 (en) Method for synchronizing events, particularly for processors of fault-tolerant systems
JP5335150B2 (ja) 計算機装置及びプログラム
JP5696492B2 (ja) 故障検出装置、故障検出方法、及び、故障検出プログラム
US9639438B2 (en) Methods and systems of managing an interconnection
JP5832408B2 (ja) 仮想計算機システム及びその制御方法
CN116737396B (zh) 服务器可维护性配置方法、装置、电子设备和存储介质
JP6819061B2 (ja) 情報処理装置、プロセス切り替え方法及びプログラム
JP6645467B2 (ja) マイクロコンピュータ
JP2014235503A (ja) 情報処理装置、情報処理システム、ハードディスク障害検知方法、サービス継続方法、ハードディスク障害検知プログラム、サービス継続プログラム
JP6430994B2 (ja) メモリモジュール制御装置、メモリモジュール制御方法及びプログラム
JP6326898B2 (ja) ストレージ装置、ストレージシステムおよびデータ配置方法
JP2021189988A (ja) 電子制御装置及び電子制御装置の制御方法
JP2012159910A (ja) 情報処理装置並びに情報処理装置の管理方法及び管理プログラム
JP2015141589A (ja) サーバ装置、サーバシステムおよび障害対策方法
JP2013219478A (ja) 情報処理装置および情報処理方法およびプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180115

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180824

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180828

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181026

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20181127

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20190604