JP4911372B2 - Cpu再リセットを伴うcpu再初期化時におけるタイムアウト防止方法、その装置及びそのプログラム - Google Patents

Cpu再リセットを伴うcpu再初期化時におけるタイムアウト防止方法、その装置及びそのプログラム Download PDF

Info

Publication number
JP4911372B2
JP4911372B2 JP2009232457A JP2009232457A JP4911372B2 JP 4911372 B2 JP4911372 B2 JP 4911372B2 JP 2009232457 A JP2009232457 A JP 2009232457A JP 2009232457 A JP2009232457 A JP 2009232457A JP 4911372 B2 JP4911372 B2 JP 4911372B2
Authority
JP
Japan
Prior art keywords
interrupt
transaction
cpu
state
timeout
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.)
Expired - Fee Related
Application number
JP2009232457A
Other languages
English (en)
Other versions
JP2011081544A (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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2009232457A priority Critical patent/JP4911372B2/ja
Priority to US12/898,315 priority patent/US8392642B2/en
Publication of JP2011081544A publication Critical patent/JP2011081544A/ja
Application granted granted Critical
Publication of JP4911372B2 publication Critical patent/JP4911372B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/24Handling requests for interconnection or transfer for access to input/output bus using interrupt

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Hardware Redundancy (AREA)
  • Debugging And Monitoring (AREA)

Description

本発明はCPU再リセットを伴うCPU再初期化時に発生しうるタイムアウトの防止に関する。
現在、演算結果の信頼性を高める技術として演算処理装置を搭載したモジュール等を複数用意し、それぞれに同じ演算処理を行わせ、その演算結果を用いるということが一般的に行われている。
このような技術の一例として、特許文献1にフォルトトレラントコンピュータ装置を用いた技術が記載されている。特許文献1に記載の技術では、フォルトトレラントコンピュータ装置は、複数のコンピューティングモジュール100、200を備えて構成され、各コンピューティングモジュール100、200はそれぞれクロック同期して同じ命令列を処理し、各コンピューティングモジュールの処理結果を比較し、1個のコンピューティングモジュールで故障が発生しても、残りのコンピューティングモジュールにより処理を継続することができる。
また、このように複数の演算結果を利用する技術の一つとして、CLL(Core Level Lockstep)という技術が用いられている。
ここで、CLLは、2つのコアが同じ処理を実行し計算結果を比較し信頼性を高める技術である。2つのコアが同じ処理を実行し計算結果を比較している状態を「Lockstep mode」と呼ぶ。Lockstep mode中に計算結果不一致が発生した場合は、復帰不可障害としてCPUの故障を指摘する。また、Lockstep mode中は計算結果不一致障害のほかに、各コアで障害が起きる可能性がある。そして、各コアで復帰可能障害が発生したときには、一時的にLockstep modeが解除され(この解除のことを「LoL(Loss of Lockstep)」ということもある。)、計算結果の比較ができない状態である「Non−Lockstep Mode」となってしまう。
Non−Lockstep Modeになった時、BIOSは、再度プロセッサの状態をLockstep modeにする必要がある。この動作を「LoL Recovery」と呼ぶ。LoL Recoveryには、CPUの再リセットが必要であり、一時的にBIOSでは、CPU−IO間のトランザクション(以下、トランザクションを適宜「Txn」と表記する。また、CPU−IO間のトランザクションを「IO Txn」と表記する。)を停止する処理が必要とされる。これは、CPUの再リセット中に、IOからLoLしたプロセッサに割り込みが挙がってきた場合の割り込みのロストするのを防止するためである。
そして、このようにCPU−IO間のトランザクションを停止することにより割り込みがロストするという事態を防止することができる。
なお、IOからプロセッサへの割り込みに関する技術としては、例えば特許文献2の第2頁左下から7行目から〜第3頁右下から9行目について記載がある。
特開2004−46599号公報 特開平3−102430号公報
しかしながら、上述したようなCPU−IO間のトランザクションを停止するという技術には以下のような問題があった。
それは、IO Txn停止時間が長いと、PCI Expressカードにおいて、Completion Timeoutが発生してしまい、システム障害に至る可能性があるという問題である。この点について、以下で詳細に述べる。
CLLは、2つのコアが同じ処理を実行し計算結果を比較し信頼性を高める技術であり、各コアで障害が発生した場合、Lockstep Modeに再入するためには、CPUリセットを行う必要がある。上述したように一般的なCPUリセット部では、CPUリセット中のIO割り込みのロストを防ぐため、IO Txn停止を行うが、このIO Txn停止時間が長くなると、PCI ExpressカードがCompletion Timeoutになってしまうという問題がある。このCompletion Timeoutは、PCI Expressの仕様上default 50msと規定されている。GEN1世代の多くのPCI Expressカードでは、Completion Timeout時間の変更ができない。そのため、Completion Timeoutを防ぐにはIO Txn停止時間が50ms超えないようにする必要があった。
図4に一般的なLoL Recoveryフローを示す。CPUリセット(B603)前に、現状態を保存するためコンテキストセーブ(B602)を実施し、CPUリセット後CPUリセット前の状態に復帰するため、コンテキストリストア(B604)を行う。B602とB604の間にIOからの割り込みがあがると、割り込みをロストしてしまうため、IOトランザクション停止(B601)とIOトランザクション開始(B605)を行っている。B2からB6までの処理時間が50msを超えており、PCI Expressカードのdefault Completion Timeoutになってしまうという問題があった。
そこで、本発明はCPU再リセットを伴うCPU再初期化時に発生しうるタイムアウトを防止することが可能なCPU再リセットを伴うCPU再初期化時におけるタイムアウト防止方法、その装置及びそのプログラムを提供することを目的とする。
本発明の第1の観点によれば、CPU再リセットを伴うCPU再初期化時におけるタイムアウトを防止するためのタイムアウト防止装置において、前記CPUの再リセットが必要となった際に、前記CPUのレジスタ状態を保存するコンテキスト保存手段と、IOトランザクションの停止を行うIOトランザクション停止手段と、前記CPUのリセット処理を行うCPUリセット手段と、前記コンテキスト保存手段が保存した前記CPUのレジスタ状態に基づいてコンテキストリストアを行うコンテキスト復帰手段と、前記IOトランザクション停止手段が停止させたIOトランザクションを再開させるIOトランザクション開始手段と、を備え、前記レジスタ状態の保存をした後に第1のIOトランザクションの停止を行い、前記CPUリセット処理を行った後に第1のIOトランザクションの開始を行い、当該第1のIOトランザクションの開始をした後に第2のIOトランザクションの停止を行い、前記コンテキストリストアを行った後に第2のIOトランザクションの開始を行うことを特徴とするタイムアウト防止装置が提供される。
本発明の第2の観点によれば、CPU再リセットを伴うCPU再初期化時におけるタイムアウトを防止するためのタイムアウト防止装置が行うタイムアウト防止方法において、前記タイムアウト防止装置が備えるコンテキスト保存手段が、前記CPUの再リセットが必要となった際に、前記CPUのレジスタ状態を保存するコンテキスト保存ステップと、前記タイムアウト防止装置が備えるIOトランザクション停止手段が、第1のIOトランザクションの停止を行う第1のIOトランザクション停止ステップと、前記タイムアウト防止装置が備えるCPUリセット手段が、前記CPUのリセット処理を行うCPUリセットステップと、前記タイムアウト防止装置が備えるIOトランザクション開始手段が、前記第1のIOトランザクション停止ステップにおいて停止させた前記IOトランザクションの開始を行う第1のIOトランザクション開始ステップと、前記IOトランザクション停止手段が、第2のIOトランザクションの停止を行う第2のIOトランザクション停止ステップと、前記タイムアウト防止装置が備えるコンテキスト復帰手段が、前記コンテキスト保存ステップにおいて保存した前記CPUのレジスタ状態に基づいてコンテキストリストアを行うコンテキスト復帰ステップと、前記IOトランザクション開始手段が、前記第2のIOトランザクション停止ステップにおいて停止させた前記IOトランザクションの開始を行う第2のIOトランザクション開始ステップと、を備えることを特徴とするタイムアウト防止方法が提供される。
本発明の第3の観点によれば、CPU再リセットを伴うCPU再初期化時におけるタイムアウトを防止するためのタイムアウト防止プログラムにおいて、前記CPUの再リセットが必要となった際に、前記CPUのレジスタ状態を保存するコンテキスト保存手段と、IOトランザクションの停止を行うIOトランザクション停止手段と、前記CPUのリセット処理を行うCPUリセット手段と、前記コンテキスト保存手段が保存した前記CPUのレジスタ状態に基づいてコンテキストリストアを行うコンテキスト復帰手段と、前記IOトランザクション停止手段が停止させたIOトランザクションを再開させるIOトランザクション開始手段と、を備え、前記レジスタ状態の保存をした後に第1のIOトランザクションの停止を行い、前記CPUリセット処理を行った後に第1のIOトランザクションの開始を行い、当該第1のIOトランザクションの開始をした後に第2のIOトランザクションの停止を行い、前記コンテキストリストアを行った後に第2のIOトランザクションの開始を行うタイムアウト防止装置としてコンピュータを機能させることを特徴とするタイムアウト防止プログラム提供される。
本発明によれば、IO Txn停止区間を分割することからIOタイムアウトをすることのないCPUリセットを実現することが可能となる。
本発明の実施形態の基本的構成を表す図である。 本発明の実施形態の基本的動作を表す図である。 本発明の実施形態の実装例の基本的構成を表す図である。 本発明と関連する発明の動作について示す図である。
まず、本発明の実施形態の概略を説明する。CLLなどのCPUが提供する拡張機能がCPU内部エラー等によって、Disableとなった場合において、再度機能をEnableにするためにはCPUの再リセットが必要である。本発明の実施形態は、概略、CPU再リセットに伴うCPU再初期化におけるIO停止を分割することにより、IOタイムアウトさせる事無く、拡張機能をEnableにするというものである。
次に、本発明の実施形態について図面を用いて詳細に説明する。
図1を参照すると、本実施形態は、BIOS(Basic Input/Output System)100と記憶装置200を含む。
BIOS100は、コンテキスト保存部101と、IO Txn停止部102と、IO割り込み保存部103と、CPUリセット部104と、コンテキスト復帰部105と、IO Txn開始部106と、IO割り込み再送部107を含む。
コンテキスト保存部101は、プロセッサのレジスタの状態をコンテキスト記憶部201に保存する部分である。IO Txn停止部102は、IO Txnの停止処理を行う部分である。IO割り込み保存部103は、CPUリセットフロー中のIO割り込み状態をIO割り込み記憶部202に保存する部分である。CPUリセット部104は、CPUの内部リセット処理を行う部分である。コンテキスト復帰部105は、コンテキスト記憶部201に記憶されているプロセッサのレジスタの状態を読み取り、コンテキストリストアを行う部分である。IO Txn開始部106は、IO Txnの開始処理を行う部分である。IO割り込み再送部107は、IO割り込み記憶部202に保存されているCPUリセットフロー中のIO割り込み状態を再送する部分である。
また、記憶装置200は、コンテキスト記憶部201とIO割り込み記憶部202を有している。
コンテキスト記憶部201は、プロセッサのレジスタの状態を記録する部分である。一方、IO割り込み記憶部202は、CPUリセットフロー中のIO割り込み状態を保存する部分である。
次に、図1のブロック図及び図2のフローチャートを参照して本実施形態の動作について詳細に説明する。
BIOS100は、LoLが発生したことを受け、LoL Recoveryを開始する。
まず、コンテキスト保存部101が、プロセッサ(CPU)のレジスタ状態をコンテキスト記憶部201に保存する(ステップA501)。
IO Txn停止部102が第一回目のIO Txn停止を行う。図2中では第1のIOトランザクション停止と表記する(ステップA502)。
次に、IO割り込み保存部103が、IO割り込み記憶部202に、IO割り込み状態を保存する(ステップA503)。
ステップA503における保存によりIO割り込み記憶部202がIO割り込み状態を記録した後に、CPUリセット部104が、CPUリセットを行う(ステップA504)。
IO Txn開始部106が、IO Txnを開始する。図2中では第1のIOトランザクション開始と表記する(ステップA505)。
IO Txn停止部102が再度IO Txn停止を行う。図2中では第2のIOトランザクション停止と表記する(ステップA506)。
次に、IO割り込み保存部103が、IO割り込み記憶部202に、IO割り込み状態を保存する(ステップA507)。
コンテキスト復帰部105が、コンテキスト記憶部201が記録しているプロセッサのレジスタ状態に基づいてコンテキストリストアを行う。(ステップA508)。
IO Txn開始部105が、IO Txnを開始する。図2中では第1のIOトランザクション開始と表記する(ステップA509)。
IO割り込み保存部103が、IO割り込み記憶部202に、IO割り込み状態を保存する(ステップA510)。
IO割り込み再送部107が、ロストした割り込みの再送を行う。ここで、再送を行う割り込みは、
(ステップA503で記憶した割り込み状態)or(ステップA507で記憶した割り込み状態)xor(ステップA510で記憶した割り込み状態)
である。(ステップA511)。
すなわち、ステップA503又はステップA507で記憶したIO割り込み状態に含まれるIO割り込みであって、ステップA510で記憶したIO割り込み状態に含まれていないIO割り込みについてはロストしたものとして再送を行う。一方ステップA503又はステップA507で記憶したIO割り込み状態に含まれるIO割り込みであって、ステップA510で記憶したIO割り込み状態にも含まれている割り込みについては未だロストしていないため再送は行わない。
以上説明した本発明の実施形態は、以下のような効果を奏する。
第1の効果は、IOタイムアウトをすることなく、CPUリセットできる点である。
上述したように、一般的な手法では、図4に示すように、IO Txnを停止したまま、コンテキストセーブ、CPUリセット、コンテキストリストアを行っており、IOトランザクション停止区間が長い。しかし、本実施形態ではIO Txn停止区間を分割していることからIOタイムアウトをすることなく、CPUリセットできる。
第2の効果は、割り込みロストを防ぐことができる点である。
その理由はCPUリセットフローの途中でIO割り込みの状態を記憶し、割り込み再送をすることで、IO無停止区間に発生した割り込みをCPU再初期化によって割り込み状態が初期化されても、割り込み再送のための処理を組み込むからである。
次に、図3を参照して、本実施形態の実装例を説明する。本実装例は、BIOS100及び記憶装置200に加えて、CPU300及びIOデバイス群400を有する。更にCPU300は、第1のコア310及び第2のコア320を有する。
そして、第1のコア310及び第2のコア320が同じ処理を実行しCLLを実現する。一方、IOデバイス群400からはIO割り込みが行われる。
なお、BIOS100及び記憶装置200の動作は、図1及び図2を用いて上述した通りである。また、BIOS100及び記憶装置200内部の構成は図1における構成と同様であるので各部分の説明及び図示は省略する。
なお、本発明の実施形態であるCPU再リセットを伴うCPU再初期化時におけるタイムアウト防止装置は、ハードウェアにより実現することもできるが、コンピュータをそのCPU再リセットを伴うCPU再初期化時におけるタイムアウト防止装置として機能させるためのプログラムをコンピュータがコンピュータ読み取り可能な記録媒体から読み込んで実行することによっても実現することができる。
また、本発明の実施形態によるCPU再リセットを伴うCPU再初期化時におけるタイムアウト防止方法は、ハードウェアにより実現することもできるが、コンピュータにその方法を実行させるためのプログラムをコンピュータがコンピュータ読み取り可能な記録媒体から読み込んで実行することによっても実現することができる。
また、上述した実施形態は、本発明の好適な実施形態ではあるが、上記実施形態のみに本発明の範囲を限定するものではなく、本発明の要旨を逸脱しない範囲において種々の変更を施した形態での実施が可能である。
100 BIOS
101 コンテキスト保存部
102 IO Txn停止部
103 IO割り込み保存部
104 CPUリセット部
105 コンテキスト復帰部
106 IO Txn開始部
107 IO割り込み再送部
200 記憶装置
201 コンテキスト記憶部
202 IO割り込み記憶部
300 CPU
310 第1のコア
320 第2のコア
400 IOデバイス群

Claims (12)

  1. CPU再リセットを伴うCPU再初期化時におけるタイムアウトを防止するためのタイムアウト防止装置において、
    前記CPUの再リセットが必要となった際に、前記CPUのレジスタ状態を保存するコンテキスト保存手段と、
    IOトランザクションの停止を行うIOトランザクション停止手段と、
    前記CPUのリセット処理を行うCPUリセット手段と、
    前記コンテキスト保存手段が保存した前記CPUのレジスタ状態に基づいてコンテキストリストアを行うコンテキスト復帰手段と、
    前記IOトランザクション停止手段が停止させたIOトランザクションを再開させるIOトランザクション開始手段と、
    を備え、
    前記レジスタ状態の保存をした後に第1のIOトランザクションの停止を行い、前記CPUリセット処理を行った後に第1のIOトランザクションの開始を行い、当該第1のIOトランザクションの開始をした後に第2のIOトランザクションの停止を行い、前記コンテキストリストアを行った後に第2のIOトランザクションの開始を行うことを特徴とするタイムアウト防止装置。
  2. 請求項1に記載のタイムアウト防止装置において、
    前記CPUに対してのIO割り込み状態を保存するIO割り込み保存手段と、
    前記IO割り込み保存手段が保存したIO割り込みを前記CPUに対して再送するIO割り込み再送手段と、を更に備え、
    前記IO割り込み保存手段は、前記IOトランザクションが停止されていない間に発生したIO割り込みを保存することを特徴とするタイムアウト防止装置。
  3. 請求項2に記載のタイムアウト防止装置において、
    前記IO割り込み保存手段は、
    前記第1のIOトランザクションの停止後のIO割り込み状態である第1のIO割り込み状態を保存し、
    前記第2のIOトランザクションの停止後のIO割り込み状態である第2のIO割り込み状態を保存し、
    前記第2のIOトランザクションの開始を行った後のIO割り込み状態である第3のIO割り込み状態を保存し、
    前記IO割り込み再送手段は、前記第1のIO割り込み状態又は第2のIO割り込み状態に含まれるIO割り込みであって、第3のIO割り込み状態に含まれていない割り込みについてのみ再送を行うことを特徴とするタイムアウト防止装置。
  4. 請求項1乃至3の何れか1項に記載のタイムアウト防止装置において、
    前記CPUが有する複数のコアにおいてCLL(Core Level Lockstep)が実現されており、前記CPUの再リセットは、Non−Lockstep ModeからLockstep modeへと移行するためのLoL Recoveryに伴うものであることを特徴とするタイムアウト防止装置。
  5. CPU再リセットを伴うCPU再初期化時におけるタイムアウトを防止するためのタイムアウト防止装置が行うタイムアウト防止方法において、
    前記タイムアウト防止装置が備えるコンテキスト保存手段が、前記CPUの再リセットが必要となった際に、前記CPUのレジスタ状態を保存するコンテキスト保存ステップと、
    前記タイムアウト防止装置が備えるIOトランザクション停止手段が、第1のIOトランザクションの停止を行う第1のIOトランザクション停止ステップと、
    前記タイムアウト防止装置が備えるCPUリセット手段が、前記CPUのリセット処理を行うCPUリセットステップと、
    前記タイムアウト防止装置が備えるIOトランザクション開始手段が、前記第1のIOトランザクション停止ステップにおいて停止させた前記IOトランザクションの開始を行う第1のIOトランザクション開始ステップと、
    前記IOトランザクション停止手段が、第2のIOトランザクションの停止を行う第2のIOトランザクション停止ステップと、
    前記タイムアウト防止装置が備えるコンテキスト復帰手段が、前記コンテキスト保存ステップにおいて保存した前記CPUのレジスタ状態に基づいてコンテキストリストアを行うコンテキスト復帰ステップと、
    前記IOトランザクション開始手段が、前記第2のIOトランザクション停止ステップにおいて停止させた前記IOトランザクションの開始を行う第2のIOトランザクション開始ステップと、
    を備えることを特徴とするタイムアウト防止方法。
  6. 請求項5に記載のタイムアウト防止方法において、
    前記タイムアウト防止装置が備えるIO割り込み保存手段が、前記CPUに対してのIO割り込み状態を保存するIO割り込み保存ステップと、
    前記タイムアウト防止装置が備えるIO割り込み再送手段が、前記IO割り込み保存ステップにおいて保存されたIO割り込みを前記CPUに対して再送するIO割り込み再送ステップと、を更に備え、
    前記IO割り込み保存手段は前記IO割り込み保存ステップにおいては、前記IOトランザクションが停止されていない間に発生したIO割り込みを保存することを特徴とするタイムアウト防止方法。
  7. 請求項6に記載のタイムアウト防止方法において、
    前記IO割り込み保存手段が、前記IO割り込み保存ステップとして、
    前記第1のIOトランザクションの停止後のIO割り込み状態である第1のIO割り込み状態を保存する第1のIO割り込み保存ステップと、
    前記第2のIOトランザクションの停止後のIO割り込み状態である第2のIO割り込み状態を保存する第のIO割り込み保存ステップと、
    前記第2のIOトランザクションの開始を行った後のIO割り込み状態である第3のIO割り込み状態を保存する第3のIO割り込み保存ステップと、を行い
    前記IO割り込み再送手段は前記IO割り込み再送ステップにおいては、前記第1のIO割り込み状態又は第2のIO割り込み状態に含まれるIO割り込みであって、第3のIO割り込み状態に含まれていない割り込みについてのみ再送を行うことを特徴とするタイムアウト防止方法。
  8. 請求項5乃至7の何れか1項に記載のタイムアウト防止方法において、
    前記CPUが有する複数のコアにおいてCLL(Core Level Lockstep)が実現されており、前記CPUの再リセットは、Non−Lockstep ModeからLockstep modeへと移行するためのLoL Recoveryに伴うものであることを特徴とするタイムアウト防止方法。
  9. CPU再リセットを伴うCPU再初期化時におけるタイムアウトを防止するためのタイムアウト防止プログラムにおいて、
    前記CPUの再リセットが必要となった際に、前記CPUのレジスタ状態を保存するコンテキスト保存手段と、
    IOトランザクションの停止を行うIOトランザクション停止手段と、
    前記CPUのリセット処理を行うCPUリセット手段と、
    前記コンテキスト保存手段が保存した前記CPUのレジスタ状態に基づいてコンテキストリストアを行うコンテキスト復帰手段と、
    前記IOトランザクション停止手段が停止させたIOトランザクションを再開させるIOトランザクション開始手段と、
    を備え、
    前記レジスタ状態の保存をした後に第1のIOトランザクションの停止を行い、前記CPUリセット処理を行った後に第1のIOトランザクションの開始を行い、当該第1のIOトランザクションの開始をした後に第2のIOトランザクションの停止を行い、前記コンテキストリストアを行った後に第2のIOトランザクションの開始を行うタイムアウト防止装置としてコンピュータを機能させることを特徴とするタイムアウト防止プログラム。
  10. 請求項9に記載のタイムアウト防止プログラムにおいて、
    前記タイムアウト防止装置は、
    前記CPUに対してのIO割り込み状態を保存するIO割り込み保存手段と、
    前記IO割り込み保存手段が保存したIO割り込みを前記CPUに対して再送するIO割り込み再送手段と、を更に備え、
    前記IO割り込み保存手段は、前記IOトランザクションが停止されていない間に発生したIO割り込みを保存することを特徴とするタイムアウト防止プログラム。
  11. 請求項10に記載のタイムアウト防止プログラムにおいて、
    前記IO割り込み保存手段は、
    前記第1のIOトランザクションの停止後のIO割り込み状態である第1のIO割り込み状態を保存し、
    前記第2のIOトランザクションの停止後のIO割り込み状態である第2のIO割り込み状態を保存し、
    前記第2のIOトランザクションの開始を行った後のIO割り込み状態である第3のIO割り込み状態を保存し、
    前記IO割り込み再送手段は、前記第1のIO割り込み状態又は第2のIO割り込み状態に含まれるIO割り込みであって、第3のIO割り込み状態に含まれていない割り込みについてのみ再送を行うことを特徴とするタイムアウト防止プログラム。
  12. 請求項9乃至11の何れか1項に記載のタイムアウト防止プログラムにおいて、
    前記CPUが有する複数のコアにおいてCLL(Core Level Lockstep)が実現されており、前記CPUの再リセットは、Non−Lockstep ModeからLockstep modeへと移行するためのLoL Recoveryに伴うものであることを特徴とするタイムアウト防止プログラム。
JP2009232457A 2009-10-06 2009-10-06 Cpu再リセットを伴うcpu再初期化時におけるタイムアウト防止方法、その装置及びそのプログラム Expired - Fee Related JP4911372B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2009232457A JP4911372B2 (ja) 2009-10-06 2009-10-06 Cpu再リセットを伴うcpu再初期化時におけるタイムアウト防止方法、その装置及びそのプログラム
US12/898,315 US8392642B2 (en) 2009-10-06 2010-10-05 Timeout preventing device, a timeout preventing method and a program thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009232457A JP4911372B2 (ja) 2009-10-06 2009-10-06 Cpu再リセットを伴うcpu再初期化時におけるタイムアウト防止方法、その装置及びそのプログラム

Publications (2)

Publication Number Publication Date
JP2011081544A JP2011081544A (ja) 2011-04-21
JP4911372B2 true JP4911372B2 (ja) 2012-04-04

Family

ID=43824045

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009232457A Expired - Fee Related JP4911372B2 (ja) 2009-10-06 2009-10-06 Cpu再リセットを伴うcpu再初期化時におけるタイムアウト防止方法、その装置及びそのプログラム

Country Status (2)

Country Link
US (1) US8392642B2 (ja)
JP (1) JP4911372B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5682829B2 (ja) * 2011-09-01 2015-03-11 日本電気株式会社 情報処理装置
US8880860B2 (en) * 2011-12-02 2014-11-04 Qualcomm Incorporated Methods and apparatus for saving conditions prior to a reset for post reset evaluation
US9483185B2 (en) * 2014-12-16 2016-11-01 Intel Corporation Gradual context saving in a data storage device
CN111538539B (zh) 2020-04-23 2022-07-22 苏州浪潮智能科技有限公司 存储系统启动方法、装置及计算机可读存储介质

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01239567A (ja) * 1988-03-22 1989-09-25 Fujitsu Ltd 画像形成装置
JPH03102430A (ja) * 1989-09-14 1991-04-26 Nippon Telegr & Teleph Corp <Ntt> 割り込み制御方式
KR980010717A (ko) * 1996-07-24 1998-04-30 김광호 정전기에 의한 시스템 오동작 방지방법
EP1172732A4 (en) * 1999-02-24 2009-08-19 Hitachi Ltd COMPUTER SYSTEM AND METHOD FOR MANAGING DISTURBANCES AFFECTING A COMPUTER SYSTEM
DE19983975B3 (de) * 1999-08-30 2006-05-18 Mitsubishi Denki K.K. Programmierbares Steuersystem und Rücksetz-Steuerverfahren für das programmierbare Steuersystem
JP2004046599A (ja) * 2002-07-12 2004-02-12 Nec Corp フォルトトレラントコンピュータ装置、その再同期化方法及び再同期化プログラム
US7055060B2 (en) * 2002-12-19 2006-05-30 Intel Corporation On-die mechanism for high-reliability processor
US7711869B1 (en) * 2007-12-20 2010-05-04 Emc Corporation Method for communicating plural signals generated at a source to a remote destination through a single wire

Also Published As

Publication number Publication date
US8392642B2 (en) 2013-03-05
JP2011081544A (ja) 2011-04-21
US20110082959A1 (en) 2011-04-07

Similar Documents

Publication Publication Date Title
US10585743B2 (en) Multiple reset modes for a PCI host bridge
US9092349B2 (en) Storage of codeword portions
US7631244B2 (en) Soft error correction method, memory control apparatus and memory system
JP4911372B2 (ja) Cpu再リセットを伴うcpu再初期化時におけるタイムアウト防止方法、その装置及びそのプログラム
JP2008165449A (ja) エラー訂正コード生成方法、およびメモリ制御装置
CN109558277B (zh) 微控制器及其控制方法
US7966536B2 (en) Method and apparatus for automatic scan completion in the event of a system checkstop
JP6247816B2 (ja) 高完全性処理を提供する方法
JP2003015900A (ja) 追走型多重化システム、及び追走により信頼性を高めるデータ処理方法
WO2016145798A1 (zh) 一种嵌入式系统的应用程序的升级方法及升级装置
JP2021072074A (ja) 半導体装置および半導体装置の制御方法
JP2011095837A (ja) フェールセーフシステム
JP4985599B2 (ja) Dma転送制御システム
JPH1196006A (ja) 情報処理装置
US10922180B2 (en) Handling uncorrected memory errors inside a kernel text section through instruction block emulation
JP4976817B2 (ja) プログラム処理装置及びプログラム処理方法
US20150199228A1 (en) Conditional branch programming technique
US9081723B2 (en) Data processing device
JP2008192108A (ja) 二重化情報処理システム
JP2812037B2 (ja) 業務処理プログラムの再起動制御方式
JP6275098B2 (ja) 制御装置およびレジスタの故障復帰方法
JP2011141756A (ja) Cpu故障検出方法およびcpu故障検出装置
CN117289591A (zh) 一种基于fpga的可信芯片冗余控制方法及系统
JP2004102702A (ja) 半導体装置の設計検証方法
TW200926192A (en) Method for checking and correcting errors of data

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111006

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111129

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120104

R150 Certificate of patent or registration of utility model

Ref document number: 4911372

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20150127

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees