JP4653838B2 - 演算処理装置、演算処理装置の制御方法及び制御プログラム - Google Patents

演算処理装置、演算処理装置の制御方法及び制御プログラム Download PDF

Info

Publication number
JP4653838B2
JP4653838B2 JP2008502593A JP2008502593A JP4653838B2 JP 4653838 B2 JP4653838 B2 JP 4653838B2 JP 2008502593 A JP2008502593 A JP 2008502593A JP 2008502593 A JP2008502593 A JP 2008502593A JP 4653838 B2 JP4653838 B2 JP 4653838B2
Authority
JP
Japan
Prior art keywords
instruction
processing unit
arithmetic processing
unit
failure
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
JP2008502593A
Other languages
English (en)
Other versions
JPWO2007099606A1 (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.)
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
Publication of JPWO2007099606A1 publication Critical patent/JPWO2007099606A1/ja
Application granted granted Critical
Publication of JP4653838B2 publication Critical patent/JP4653838B2/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
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • 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/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0721Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU]
    • G06F11/0724Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU] in a multiprocessor or a multi-core unit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0804Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with main memory updating

Landscapes

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

Description

本発明は命令処理手順を同時に複数実行可能なプロセサにおける、エラー箇所の切り離し制御に関する。
現在のハイエンドプロセサの分野では、処理性能向上のために1つのプロセサ内に複数のコアを実装するマルチコアや、単一のコアで複数のスレッドを同時に実行可能なプロセサが現在主流になりつつある。
またハイエンドサーバは、停止することが許されない業務で使用されることが多く、もし故障が発生しても、早急に故障箇所を切り離して業務を再開することが必要とされている。
またハイエンドサーバでは、システム全体の制御、監視を専用に行うシステム制御装置を備えることが多く、プロセサ内にもシステム制御装置への割り込み信号、システム制御装置から制御可能なように、JTAGインタフェースを拡張したコマンド・インターフェース等を備えるものが増えている。
従来のエラー処理では、ハードウェアにエラーが生じると、このエラーの発生を高いレベルの割り込みによってソフトウェア(OS)に通知し、OSが通常の処理からエラー処理ルーチンへと切り替わる。該OSは、ハードウェアへのアクセスを繰り返して故障箇所を特定し、故障箇所示すフラグを残して以降この故障箇所を使用不可にするといった所謂切り離し処理(縮退処理)を行う。
従来のエラー処理では、故障したハードウェア自身がエラー処理ルーチンを実行するので、このエラー処理のために故障箇所を使用した場合、この処理自体がエラーを生じさせ、エラー処理を繰り返してソフトウェア・ループに陥ることになる。
このため、エラーの影響によって不具合が生じる範囲(影響範囲)をプロセサ自身が特定して縮退処理を行う装置では、プロセサ自身のエラーによって影響範囲の特定が困難になったり、縮退処理が困難になったりする可能性が少なくない。
特に、上述のような、マルチコア、マルチストランド構成のプロセサにおいて、一部のコアや一部のストランドにエラーが発生した場合にもプロセサ全体を停止したのでは、不合理であるので、影響箇所を精度良く特定して縮退処理が行えるようにすることが望まれていた。
上記課題を解決するため、本発明は以下の手段を備えた。
即ち、本発明のプロセサ制御装置は、プロセサを構成する複数のハードウェア資源の故障を示す通知を受けた場合に、予め定めた各ハードウェア資源の依存関係に基づき、該故障によって使用できないハードウェア資源の範囲を故障範囲として判定する故障範囲判定手段と、前記判定の結果に基づいて故障範囲のハードウェア資源の使用を停止させる使用停止手段とを備えた。
前記プロセサ制御装置は、前記故障範囲で示されたハードウェア資源の使用を停止させる際、故障範囲外の命令処理手順に影響を与えないように所定処理を行ったのちに当該ハードウェアを停止させる手段を備えても良い。
前記プロセサ制御装置は、前記故障範囲にライトバック方式のキャッシュを含む場合、前記所定処理として該キャッシュの内容を故障範囲外のキャッシュに書き出す処理を行っても良い。
前記ハードウェア資源がクロックに基づいて動作する場合、前記使用停止手段からの通知に応じて当該ハードウェア資源へのクロックを停止する手段を備えても良い。
前記プロセサ制御装置は、現在使用停止状態であるハードウェア資源を示す停止情報を保持する手段を備え、前記使用停止手段が、前記現在の停止情報と新たに受信した故障範囲とから新たに使用停止にするハードウェア資源を決定しても良い。
前記プロセサ制御装置は、前記ハードウェア資源としてのストランドを前記ハードウェア資源としてのコアが複数有し、該コアの一部が現在使用停止状態であり、前記故障範囲判定手段が該コアの他の全てのストランドを新たに故障範囲と判定した場合、前記使用停止手段が、前記現在の停止情報と該新たな故障範囲とに基づき、当該コアを停止させても良い。
前記故障範囲判定手段が、外部制御装置に故障範囲を通知し、前記使用停止手段が、該外部制御装置から故障範囲を受信しても良い。
前記使用停止手段が、起動処理時に前記外部制御装置から故障範囲を受信し、該故障範囲のハードウェア資源の使用を停止させても良い。
前記ハードウェア資源がキャッシュであり、故障によりキャッシュの内容の整合性がとれない場合、前記故障範囲判定部が、プロセサの全範囲を故障範囲と判定し、使用停止手段が全てのハードウェア資源を停止させても良い。
また、本発明のプロセサ制御方法は、プロセサ制御装置が、プロセサを構成する複数のハードウェア資源の故障を示す通知を受けた場合に、予め定めた各ハードウェア資源の依存関係に基づき、該故障によって使用できないハードウェア資源の範囲を故障範囲として判定するステップと、前記判定の結果に基づいて故障範囲のハードウェア資源の使用を停止させるステップとを実行する。
前記プロセサ制御方法において、前記故障範囲で示されたハードウェア資源の使用を停止させる際、故障範囲外の命令処理手順に影響を与えないように所定処理を行ったのちに当該ハードウェアを停止させても良い。
前記プロセサ制御方法において、前記故障範囲にライトバック方式のキャッシュを含む場合、前記所定処理として該キャッシュの内容を故障範囲外のキャッシュに書き出す処理を行っても良い。
前記プロセサ制御方法において、前記ハードウェア資源がクロックに基づいて動作する場合、前記ハードウェア資源の使用を停止する際、当該ハードウェア資源へのクロックを停止しても良い。
前記プロセサ制御方法において、前記プロセサ制御装置が、現在使用停止状態であるハードウェア資源を示す停止情報を保持する手段を備え、前記ハードウェア資源の使用を停止する際、現在の停止情報と新たに受信した故障範囲とから新たに使用停止にするハードウェア資源を決定しても良い。
前記プロセサ制御方法において、前記ハードウェア資源としてのストランドを前記ハードウェア資源としてのコアが複数有し、該コアの一部が現在使用停止状態であり、該コアの他の全てのストランドを新たに故障範囲と判定した場合、前記現在の停止情報と該新たな故障範囲とに基づき、当該コアを停止させても良い。
前記プロセサ制御方法において、前記故障範囲を判定した際、外部制御装置に故障範囲を通知し、前記ハードウェア資源の使用を停止する際、該外部制御装置から故障範囲を受信しても良い。
前記プロセサ制御方法において、前記プロセサ制御装置の起動処理時に前記外部制御装置から故障範囲を受信し、該故障範囲のハードウェア資源の使用を停止させても良い。
前記プロセサ制御方法において、前記ハードウェア資源がキャッシュであり、故障によりキャッシュの内容の整合性がとれない場合、全てのハードウェア資源を停止させても良い。
また、本発明は、上記プロセサ制御装置を備えたプロセサであっても良い。
また、本発明は、前記プロセサ制御方法をプロセサ制御装置に実行させるプログラムであって良い。
また、本発明の外部制御装置は、プロセサを構成する複数のハードウェア資源の故障を示す通知を受けた場合に、予め定めた各ハードウェア資源の依存関係に基づき、該故障によって使用できないハードウェア資源の範囲を故障範囲として判定する故障範囲判定手段と、前記判定の結果に基づいて故障範囲のハードウェア資源の使用を停止させる使用停止手段とを備えたプロセサ制御装置と接続した装置であって、前記故障範囲判定手段から故障範囲を受信する手段と、前記使用停止手段に使用停止要求として前記故障範囲を送信する手段を備えた。
前記外部制御装置は、前記故障範囲を記憶し、再起動時に前記使用停止手段へ前記使用停止要求として前記故障範囲を送信する手段を備えても良い。
本発明は、複数のハードウェア資源を備えるプロセサにおいて、故障したハードウェア資源の依存関係に応じた適切な範囲で切り離し制御を行うことを可能とする。
図1は、本発明に係るシステム全体の構成を示す図である。 故障範囲判定部のエラー入力と故障範囲出力の関係を示す図 使用停止判定部の使用停止入力と使用停止制御信号の関係を示す図 縮退処理のフローを示す図 縮退処理のフローを示す図 縮退処理のフローを示す図 POR/再起動処理フローを示す図 使用停止判定部のブロック図 クロック供給部における停止判定部の概略図
以下、図面を参照して本発明を実施するための最良の形態について説明する。以下の実施形態の構成は例示であり、本発明はこの実施形態の構成に限定されない。
§1.全体構成
本実施形態では、演算処理装置としての1つのプロセサが複数の命令処理部としてのコア部を有し、1コアあたり複数スレッドを同時に実行可能で、コアにライトバック方式のキャシュを装備し、コア内の命令実行部としてのストランドで共有する構成した例を示している。なお、図1では、プロセサ1を一つだけ示したが、本実施形態のシステムは、該プロセサ1を複数備えている。
図1は、本実施形態のシステム全体の構成を示す図である。
プロセサ1は、2つのコアC0,C1及び命令処理共有部としてのモジュール共通部20を備えている。このコアC0は、ストランド部C0S0,C0S1や、該コア内のストランド部C0S0,C0S1で共通に使用するキャッシュ11を備えている。同様に、コアC1は、各ストランドでそれぞれ専用に使用されるストランド部C1S0,C1S1や、該コア内のストランド部C1S0,C1S1で共通に使用するキャッシュ12を備えている。なお、該ストランド部C0S0,C0S1,C1S0,C1S1はプログラムカウ
ンタといったレジスタ等である。
更に、プロセサ1は、同一コア内のストランドで共用される、命令実行共有部としてのコア共通部18,19、プロセサ内の全ストランドで共用されるモジュール共通部20を備えている。
モジュール共通部20には、各ハードウェア資源から通知されるエラー入力から、ストランド単位で故障範囲を保持する故障範囲判定部(故障範囲判定手段)16と、ストランド単位で要求される使用停止要求から使用停止させるハードウェア領域を決定し、使用停止制御信号を出力する使用停止判定部(停止指示手段)17、コアC0,C1で共通に使用するキャッシュ13、各コアC0,C1との通信を介するインタフェース部14,15を備えている。
また、故障範囲判定部16と、使用停止判定部17は外部システム処理装置(外部制御装置に相当)2と接続される。
上記コアC0,C1、モジュール共通部20、ストランド部C0S0,C0S1,C1S0,C1S1、キャッシュ11,12,13、インタフェース部14,15、故障範囲判定部16、使用停止判定部17、コア共通部18,19等は、プロセサ1のハードウェア資源である。
故障範囲判定部16は、上記ハードウェア資源から故障を示す通知を受けた場合に、予め定めた各ハードウェア資源の依存関係に基づき、該故障によって使用できないハードウェア資源の範囲を故障範囲として判定する。この依存関係とは、「キャッシュ11が故障した場合、該キャッシュ11を利用しているストランド部C0S0,C0S1が使用できない。」「コア共通部19が故障した場合、コアC1が使用できない。」といったように、各ハードウェア資源と、このハードウェア資源が故障によって使用できなくなるハードウェア資源との対応関係である。
具体的には図2に示すように、本実施形態の故障範囲判定部は、各ハードウェア資源からのエラー入力があった場合に、故障範囲を示すビット列を出力する論理を有したレジスタである。
図2は、故障範囲判定部16のエラー入力と故障範囲出力の関係の一部を示す。故障範囲判定部16は、各ハードウェア資源からのエラー入力を受けて、例えばキャッシュ11,12,13からFatal_ERR、共通モジュール20からModule_ERR、コア共通部18からCore0_ERR、コア共通部19からCore1_ERR、といったエラー入力(故障入力)を受信する。なお、図2において、1は故障、0は正常を示し、−は1及び0を示している。また、故障範囲判定部16は、該エラー入力に応じて故障範囲出力"Fatal、C0S0_HW_ERR、C0S1_HW_ERR、C1S0_HW_ERR、C1S1_HW_ERR"を出力する。なお、図2において、C0S0_HW_ERRはストランドC0S0、C0S1_HW_ERRはストランドC0S1、C1S0_HW_ERRはストランドC1S0、C1S1_HW_ERRはストランドC1S1であり、1の場合使用停止、0の場合使用可を示す。ここで、C0S0_ERR、C0S1_ERR、C1S0_ERR、C1S1_ERRの場合はそれぞれストランドC0S0、C0S1、C1S0、C1S1からのエラー入力に従い、該入力が0であれば使用可又は1であれば使用停止であることを示している。
即ち、Fatal、C0S0_HW_ERR、C0S1_HW_ERR、C1S0_HW_ERR、C1S1_HW_ERRが全て使用可"0"の場合、ストランドC0S0、C0S1、C1S0、C1S1は、それぞれの入力C0S0_ERR、C0S1_ERR、C1S0_ERR、C1S1_ERRに従う。例えばストランドC0S0が故障した場合、入力C0S0_ERRが1とされ、出力C0S0_HW_ERRを1、その他の出力を0とし、ストランドC0S0のみを使用停止にする。ストランドC0S1、C1S0、C1S1についても同様に、それぞれ個別に使用停止とする。
また、コア共通部19が故障し、Core1_ERRが1その他が0という入力の場合、コア1のストランドC1S0,C1S1を共に使用停止とするためC1S0_ERR、C1S1_ERRを1とし、コア0のストランドC0S0,C0S1はそれぞれの入力C0S0_ERR、C0S1_ERRに従う。これにより、ストランドC1S0,C1S1が共通に使用するストランドコア共通部19が故障した場合、ストランドC1S0,C1S1の状態に関わらず、ストランドC1S0,C1S1を使用停止する。
同様にコア共通部18が故障し、Core0_ERRが1その他が0という入力の場合、コア0のストランドC0S0,C0S1を共に使用停止とするためC0S0_ERR、C0S1_ERRを1とし、コア1のストランドC1S0,C1S1はそれぞれの入力C1S0_ERR、C1S1_ERRに従う。
従って、コア共通部18,19が共に故障し、Core0_ERR,Core1_ERRが1という入力の場合、ストランドC0S0,C0S1,C1S0,C1S1を使用停止とする。
また、ストランドC0S0,C0S1,C1S0,C1S1が共通に使用する共通モジュール20が故障し、Module_ERRが1、Fatalが0という入力の場合、Core0_ERR,Core1_ERRに関わらず、ストランドC0S0,C0S1,C1S0,C1S1を使用停止"1"とする。
このように故障範囲で示されたハードウェア資源の使用を停止させる際、故障範囲外の命令処理手順に影響を与えないように所定処理を行ったのちに当該ハードウェアを停止させる。例えば、各ハードウェア資源からキャシュ・コヒーレントの維持が困難なエラー(故障)が発生したことを示すFatal_ERRが1となった場合には、出力"Fatal"を1とし、同プロセサ内の全てのハードウェア資源(本例では全てのストランド)を使用停止とする。外部システム制御装置2は、故障範囲判定部16の出力"Fatal"が"1"の場合には、システム全体の処理を一旦停止させ、故障が生じたプロセサ1を縮退してキャシュ・コヒーレントの維持が可能な状態としてシステムを再起動し、他のプロセッサの処理を再開する。なお、本実施形態ではFatal_ERRが1となったプロセサ全体を再起動時に使用停止とするため、故障範囲判定部16はFatal_ERRが1の場合、全てのStrandを"1"に強制しているが、強制せずに故障が生じたハードウェア資源を使用するストランドのみを使用停止にする実装も可能である。
なお、故障範囲判定部(故障範囲レジスター)16は、ビット単位に外部システム制御装置2からリセット可能にし、故障範囲レジスターの全ビットを論理和した出力に、外部システム制御装置から制御可能な割り込みマスクレジスタの出力を論理積した信号を外部システム制御装置の割り込みに使用する。これにより故障箇所を積算していく。
また、使用停止判定部(使用停止手段)17は、前記故障判定部16の判定の結果に基づいて故障範囲のハードウェア資源の使用を停止させる。本実施形態では、故障範囲判定部16が、故障範囲出力を外部システム処理装置2に通知し、外部システム処理装置2が使用停止判定部17に該故障範囲(使用停止要求)を通知する。
図3は、使用停止判定部の使用停止入力と使用停止制御信号の関係を示す。図3において、使用停止入力C0S0_STOP, C0S1_STOP, C1S0_STOP, C1S1_STOPは、それぞれストランドC0S0, C0S1, C1S0, C1S1の使用停止か否かを示す信号である。なお、0であれば使用可、1であれば使用停止を示す。また、使用停止制御信号C0S0_DG,C0S1_DG,C1S0_DG,C1S1_DG,Core0_DG,Core1_DGは、それぞれストランドC0S0, C0S1, C1S0, C1S1、コアCore0, Core1の使用停止か否かを示す信号である。なお、0であれば使用可、1であれば使用停止を示す。即ち、各ストランドは対応する使用停止制御信号"CxSx_DG"が"1"である場合には処理を停止する。
使用停止判定部17は、図6に示すように外部システム制御処理装置2からのストランド単位の使用停止要求を受け取る使用停止要求レジスター32と、現在のストランド単位の使用停止状態を保持する使用停止状態レジスター33を装備する。そして使用停止判定部17の使用停止判定回路が、使用停止要求レジスター33と使用停止状態レジスター32のビット毎の論理和をとった値を使用停止入力として図3のテーブルに従って使用停止制御信号を出力する。
次に、コア内の全ストランドが使用停止状態になっていないコアC0,C1において、該コアCxに対する使用停止制御信号"Corex_DG"が"1"となり、新規にコアCxの使用停止が指示された場合を示す。この場合には該コアCxのキャッシュ11or12の内容をメモリ(例えばキャッシュ13)へ強制的に書き戻すことを開始し、正常に書き戻しが完了した後、使用停止要求レジスター33と使用停止状態レジスター32のビット毎の論理和の値で使用停止状態レジスター32の内容を更新した後、モジュール共通部20のインタフェース部14,15で使用停止するコアCxに対するインタフェース信号を無効化する。
上記以外の場合は、使用停止要求レジスター33と使用停止状態レジスター32のビット毎の論理和の値で使用停止状態レジスター32の更新のみ行う。
また、外部システム処理装置2は、CPUやメモリ等を備えたシステム管理用の情報処理装置であり、温度監視や各プロセサのリセット、システムコンソールに関する処理を行う。
外部システム制御装置2は、使用停止要求を行った後、使用停止状態レジスター32の内容を読み出して確認することによって使用停止要求の正常終了を確認する。
また、外部システム制御装置2は、故障範囲レジスター16の内容を累積して記憶し、POR(Power On Reset)処理と再起動処理時に、各プロセサ1の故障範囲レジスター16に再設定される。
図4A〜4Cは、上記構成のシステムにおける縮退処理のフローチャートである。
同図に示すように、エラー(故障)が発生し、各ハードウェア資源がエラー報告を発すると、故障範囲判定部16は、該エラー報告から故障範囲を判定する(S1)。該故障範囲判定部16は、判定した故障範囲を故障範囲レジスタに保持し(S2)、外部システム制御装置2へ割り込みを行う(S3)。
外部システム制御装置2は、故障範囲レジスタを読み出し(S4)、装置内のメモリに該故障範囲を記憶する(S5)。そして外部システム制御装置2は、故障範囲のFatalが1か否かを判定し(S6)、Fatalが1であればシステム全体の停止処理を行い(S7)、再起動処理を行う(S8)。
一方、外部システム制御装置2は、Fatalが1でなければ使用停止要求を使用停止要求レジスタ33に書き込む(S9)。
使用停止判定部17は、この使用停止要求レジスタの内容と、使用停止状態レジスタの内容とから使用停止範囲を判定する(S19)。そして使用停止判定部17は、該使用停止範囲のストランドCxSxに対する使用停止制御信号を発行する(S11)。
また、使用停止判定部17は、使用停止範囲にコアCxが含まれているか否かを判定し、含まれていれば停止するコアCxのキャッシュ11or12の内容をメモリに書き戻させる(S13)。
書き戻し後、或いはステップ12で使用停止範囲にコアCxが含まれていなければ、使用停止判定部17は、使用停止状態レジスタの内容を使用停止判定回路31で判定した結果に更新する(S14)。
更に、使用停止状態レジスタの内容にコアCxの停止が含まれているか否かを判定し(S15)、含まれている場合には、当該コアCxが使用するインタフェイス14or15を閉塞(コアCxからの信号を無視)する(S16)。
該閉塞後或いはステップ15でコアCxの使用停止が含まれていなければ、外部システム制御装置2が、使用停止状態レジスタ32を読み出し(S17)、使用停止判定部17が使用停止にしたハードウェア資源の縮退が実施されているか否かを判定する(S18)。
該縮退が行われていれば、縮退処理を完了し(S19)、該縮退が行われていなければ、異常が発生したと認識し、所定の異常処理を行う(S20)。
また、図5は本システムの再起動処理のフローチャートである。
POR又は再起動処理の開始の指示を受けると(S21)、外部システム制御装置2は、使用停止要求レジスタ33をクリアし(S22)、装置内のメモリに記憶している故障範囲を使用停止状態レジスタ32に書き込む(S23)。
そして、使用停止判定部17は、この使用停止状態レジスタの32の内容に、ストランドの使用停止が存在するか否かを判定し、含まれていれば、このストランドに対する使用停止を指示する(S25)。
該指示後或いはステップ25でストランドの使用停止が存在しない場合、使用停止判定部17は、使用停止状態レジスタ32の内容に、コアの使用停止が存在するか否かを判定し(S26)、含まれていれば、このコアに対する使用停止とクロック抑止を指示する(S27)。
この停止指示後或いはステップ26でコアの使用停止が存在しなかった場合、システム1はクロックの供給等、POR又は再起動処理を実行する(S28)。
図7は、本システムにおけるクロック供給部の停止判定部の概略図である。図7に示すように、クロック供給部の停止判定部40は、Corex_DGを反転した信号とスタート信号との論理積がレジスタ41のセット端子に入力され、この値が1の場合に出力RUNを1とし、クロックを供給させる。
また、コアの停止が指示され、Corex_DGが1であれば、スタート信号に関わらずセット端子への入力が0となりクロックは停止させる。
これにより本システムは、PORシーケンス中のクロック開始時に、使用停止状態レジスタ32のコア内の全ストランドが使用停止状態である場合には、当該コアの使用停止を示しているため、当該コアに対するクロック停止信号を解除しないことによって使用停止コアのクロックを停止したままにする。
以上のように、本実施形態によれば、故障範囲を示す情報と、ハードウェア使用停止手段によって故障範囲に限定したコア、ストランド処理部のみを、他のコア、ストランド処理部に影響を与えないように使用停止することが可能になる。
また、プロセサ内部の故障範囲を通知する故障範囲判定手段と、ハードウェア資源の使用を停止させる使用停止手段とに外部システム処理装置2がアクセス可能としたことによって、プロセサのエラー状態に関係なく確実に影響範囲を特定し、確実に使用停止することが可能になる。

Claims (17)

  1. 命令を実行する演算処理装置において、
    命令を実行する複数の命令実行部と前記複数の命令実行部が共有する命令実行共有部とを含む命令処理部を複数有するとともに、前記複数の命令処理部が共有する命令処理共有部とを、ハードウェア資源として有する演算処理装置に対して、前記命令処理共有部の故障または前記演算処理装置に含まれる全ての命令処理部の故障を示す通知を受けた場合には前記演算処理装置の全範囲を、前記演算処理装置の一部の命令処理部に含まれる命令実行共有部の故障または一部の命令処理部に含まれる全ての命令実行部の故障を示す通知を受けた場合には前記演算処理装置内の一部の命令処理部を前記命令処理部内の一部の命令実行部の故障を示す通知を受けた場合には前記命令処理部内の一部の命令実行部を、前記故障によって使用できないハードウェア資源の範囲として判定する故障範囲判定手段と、
    前記判定の結果に基づいて故障範囲のハードウェア資源の使用の停止を指示する停止指示手段と、
    前記停止指示手段から前記使用の停止の指示を受けた前記故障範囲のハードウェア資源に対して、前記演算処理装置の次回の立ち上げ時に、クロックの供給を停止するクロック供給停止手段と、
    を備えたことを特徴とする演算処理装置。
  2. 前記演算処理装置において、
    前記故障範囲で示されたハードウェア資源の使用を停止させる際、故障範囲外の命令処理手順に影響を与えないように所定の処理を行ったのちに、前記ハードウェア資源を停止させる手段を備えた
    ことを特徴とする請求項1記載の演算処理装置。
  3. 前記演算処理装置において、
    前記故障範囲にライトバック方式のキャッシュメモリを含む場合、前記所定の処理として前記キャッシュメモリの内容を故障範囲外のキャッシュメモリに書き出す処理を行う
    ことを特徴とする請求項2記載の演算処理装置。
  4. 前記演算処理装置はさらに、
    使用停止状態であるハードウェア資源を示す停止情報を保持する停止情報保持手段を備え、
    前記停止指示手段が、前記停止情報保持手段に保持された停止情報と新たに受信した故障範囲とから新たに使用するハードウェア資源を決定することを特徴とする請求項1から3の何れか1項に記載の演算処理装置。
  5. 前記演算処理装置において、
    前記ハードウェア資源としての命令実行部を前記ハードウェア資源としての命令処理部が複数有し、前記命令処理部の一部の命令実行部が使用停止状態であり、前記故障範囲判定手段が前記命令処理部に含まれる前記使用停止状態の命令実行部以外の全ての命令実行部を新たに故障範囲と判定した場合、前記停止指示手段が、前記現在の停止情報と新たな故障範囲とに基づき、前記命令処理部を停止させる
    ことを特徴とする請求項4記載の演算処理装置。
  6. 前記演算処理装置は、外部制御装置に接続され、
    前記故障範囲判定手段が、前記外部制御装置に故障範囲を報告し、
    前記停止指示手段が、前記外部制御装置から故障範囲を受信する
    ことを特徴とする請求項1から5の何れか1項に記載の演算処理装置。
  7. 前記演算処理装置において、
    前記停止指示手段が、前記演算処理装置の起動処理時に前記外部制御装置から故障範囲を受信し、前記故障範囲のハードウェア資源の使用を停止させる
    ことを特徴とする請求項6記載の演算処理装置。
  8. 前記演算処理装置において、
    前記ハードウェア資源がキャッシュメモリであり、故障によりキャッシュメモリの内容の整合性がとれない場合、前記故障範囲判定手段が、前記演算処理装置の全範囲を故障範囲と判定し、停止指示手段が全てのハードウェア資源を停止させる
    ことを特徴とする請求項1から7の何れか1項に記載の演算処理装置。
  9. 前記演算処理装置の制御方法において、
    命令を実行する複数の命令実行部と前記複数の命令実行部が共有する命令実行共有部とを含む命令処理部を複数有するとともに、前記複数の命令処理部が共有する命令処理共有部とを、ハードウェア資源として有する演算処理装置に対して、前記命令処理共有部の故障または前記演算処理装置に含まれる全ての命令処理部の故障を示す通知を受けた場合には前記演算処理装置の全範囲を、前記演算処理装置の一部の命令処理部に含まれる命令実行共有部の故障または一部の命令処理部に含まれる全ての命令実行部の故障を示す通知を受けた場合には前記演算処理装置内の一部の命令処理部を前記命令処理部内の一部の命令実行部の故障を示す通知を受けた場合には前記命令処理部内の一部の命令実行部を、前記演算処理装置が有する故障範囲判定部が、前記故障によって使用できないハードウェア資源の範囲として判定するステップと、
    前記演算処理装置が有する停止指示部が、前記判定の結果に基づいて故障範囲のハードウェア資源の使用停止を指示するステップと、
    前記演算処理装置が有するクロック供給停止部が、前記停止指示ステップにより前記使用の停止の指示を受けた前記故障範囲のハードウェア資源に対して、前記演算処理装置の次回の立ち上げ時に、クロックの供給を停止するステップと、
    を有することを特徴とする演算処理装置の制御方法。
  10. 前記演算処理装置の制御方法において、
    前記故障範囲で示されたハードウェア資源の使用を停止させる際、故障範囲外の命令処理手順に影響を与えないように所定の処理を行ったのちに、前記ハードウェア資源を停止させる
    ことを特徴とする請求項9記載の演算処理装置の制御方法。
  11. 前記演算処理装置の制御方法において、
    前記故障範囲にライトバック方式のキャッシュメモリを含む場合、前記所定の処理として前記キャッシュメモリの内容を故障範囲外のキャッシュメモリに書き出す処理を行う
    ことを特徴とする請求項10に記載の演算処理装置の制御方法。
  12. 前記演算処理装置の制御方法において、
    前記演算処理装置はさらに、
    使用停止状態であるハードウェア資源を示す停止情報を保持する停止情報保持部を備え、
    前記停止指示部が、前記停止情報保持部に保持された停止情報と新たに受信した故障範囲とから新たに使用停止にするハードウェア資源を決定する
    ことを特徴とする請求項9から11の何れか1項に記載の演算処理装置の制御方法。
  13. 前記演算処理装置の制御方法において、
    前記ハードウェア資源としての命令実行部を前記ハードウェア資源としての命令処理部が複数有し、前記命令処理部の一部の命令実行部が使用停止状態であり、前記故障範囲判定部が前記命令処理部に含まれる前記使用停止状態の命令実行部以外の全ての命令実行部を新たに故障範囲と判定した場合、前記停止指示部が、前記現在の停止情報と新たな故障範囲とに基づき、前記命令処理部を停止させる
    ことを特徴とする請求項12記載の演算処理装置の制御方法。
  14. 前記演算処理装置の制御方法において、
    前記演算処理装置は、外部制御装置に接続され、前記故障範囲判定部が、前記外部制御装置に故障範囲を報告し、
    前記停止指示部が、前記ハードウェア資源の使用を停止する際、前記外部制御装置から故障範囲を受信する
    ことを特徴とする請求項9から13の何れか1項に記載の演算処理装置の制御方法。
  15. 前記演算処理装置の制御方法において、
    前記停止指示部が、前記演算処理装置の起動処理時に前記外部制御装置から故障範囲を受信し、前記故障範囲のハードウェア資源の使用を停止させる
    ことを特徴とする請求項14記載の演算処理装置の制御方法。
  16. 前記演算処理装置の制御方法において、
    前記ハードウェア資源がキャッシュメモリであり、故障によりキャッシュメモリの内容の整合性がとれない場合、前記故障範囲判定部が、前記演算処理装置の全範囲を故障範囲と判定し、停止指示部が全てのハードウェア資源を停止させる
    ことを特徴とする請求項9から15の何れか1項に記載の演算処理装置の制御方法。
  17. 命令を実行する演算処理装置の制御プログラムにおいて、
    命令を実行する複数の命令実行部と前記複数の命令実行部が共有する命令実行共有部とを含む命令処理部を複数有するとともに、前記複数の命令処理部が共有する命令処理共有部とを、ハードウェア資源として有する演算処理装置に対して、前記命令処理共有部の故障または前記演算処理装置に含まれる全ての命令処理部の故障を示す通知を受けた場合には前記演算処理装置の全範囲を、前記演算処理装置の一部の命令処理部に含まれる命令実行共有部の故障または一部の命令処理部に含まれる全ての命令実行部の故障を示す通知を受けた場合には前記演算処理装置内の一部の命令処理部を前記命令処理部内の一部の命令実行部の故障を示す通知を受けた場合には前記命令処理部内の一部の命令実行部を、前記故障によって使用できないハードウェア資源の範囲として判定するステップと、
    前記判定の結果に基づいて故障範囲のハードウェア資源の使用停止を指示するステップと、
    前記停止指示ステップにより前記使用の停止の指示を受けた前記故障範囲のハードウェア資源に対して、前記演算処理装置の次回の立ち上げ時に、クロックの供給を停止するステップと、
    を前記演算処理装置に実行させることを特徴とする演算処理装置の制御プログラム。
JP2008502593A 2006-02-28 2006-02-28 演算処理装置、演算処理装置の制御方法及び制御プログラム Expired - Fee Related JP4653838B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2006/303771 WO2007099606A1 (ja) 2006-02-28 2006-02-28 プロセサ制御方法

Publications (2)

Publication Number Publication Date
JPWO2007099606A1 JPWO2007099606A1 (ja) 2009-07-16
JP4653838B2 true JP4653838B2 (ja) 2011-03-16

Family

ID=38458730

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008502593A Expired - Fee Related JP4653838B2 (ja) 2006-02-28 2006-02-28 演算処理装置、演算処理装置の制御方法及び制御プログラム

Country Status (3)

Country Link
US (1) US8060778B2 (ja)
JP (1) JP4653838B2 (ja)
WO (1) WO2007099606A1 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5126393B2 (ja) 2011-06-29 2013-01-23 日本精工株式会社 車載電子制御装置
JP6074955B2 (ja) 2012-08-31 2017-02-08 富士通株式会社 情報処理装置および制御方法
US9043654B2 (en) * 2012-12-07 2015-05-26 International Business Machines Corporation Avoiding processing flaws in a computer processor triggered by a predetermined sequence of hardware events
US9304848B2 (en) * 2013-01-15 2016-04-05 International Business Machines Corporation Dynamic accessing of execution elements through modification of issue rules
WO2015072004A1 (ja) * 2013-11-15 2015-05-21 株式会社日立製作所 計算機、計算機制御方法、および計算機制御プログラム
JP2020181569A (ja) * 2019-04-23 2020-11-05 株式会社デンソー 電子制御装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01295338A (ja) * 1987-12-25 1989-11-29 Fujitsu Ltd 二重化システムの切離し表示フラグオン切換え制御方式
JPH0719211B2 (ja) * 1988-10-08 1995-03-06 日本電気株式会社 クロック制御方式
JPH10105527A (ja) * 1996-10-02 1998-04-24 Mitsubishi Electric Corp マルチプロセッサ計算機及びマルチプロセッサ計算機における障害復旧方法
JP2000322397A (ja) * 1999-05-14 2000-11-24 Nec Software Kobe Ltd 情報処理装置
JP2001175489A (ja) * 1999-12-15 2001-06-29 Fujitsu Ltd 異常検出時の動作モードを決定する装置および方法
JP2002229811A (ja) * 2001-02-05 2002-08-16 Nec Eng Ltd 論理分割システムの制御方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4453215A (en) * 1981-10-01 1984-06-05 Stratus Computer, Inc. Central processing apparatus for fault-tolerant computing
US5157667A (en) * 1990-04-30 1992-10-20 International Business Machines Corporation Methods and apparatus for performing fault isolation and failure analysis in link-connected systems
JPH0719211A (ja) 1993-06-29 1995-01-20 Azuma Kogyo Kk パイプ用連結装置
US6574752B1 (en) * 1999-07-15 2003-06-03 International Business Machines Corporation Method and system for error isolation during PCI bus configuration cycles
US20020184576A1 (en) * 2001-03-29 2002-12-05 International Business Machines Corporation Method and apparatus for isolating failing hardware in a PCI recoverable error
US6868479B1 (en) * 2002-03-28 2005-03-15 Emc Corporation Data storage system having redundant service processors
US7080288B2 (en) * 2003-04-28 2006-07-18 International Business Machines Corporation Method and apparatus for interface failure survivability using error correction

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01295338A (ja) * 1987-12-25 1989-11-29 Fujitsu Ltd 二重化システムの切離し表示フラグオン切換え制御方式
JPH0719211B2 (ja) * 1988-10-08 1995-03-06 日本電気株式会社 クロック制御方式
JPH10105527A (ja) * 1996-10-02 1998-04-24 Mitsubishi Electric Corp マルチプロセッサ計算機及びマルチプロセッサ計算機における障害復旧方法
JP2000322397A (ja) * 1999-05-14 2000-11-24 Nec Software Kobe Ltd 情報処理装置
JP2001175489A (ja) * 1999-12-15 2001-06-29 Fujitsu Ltd 異常検出時の動作モードを決定する装置および方法
JP2002229811A (ja) * 2001-02-05 2002-08-16 Nec Eng Ltd 論理分割システムの制御方法

Also Published As

Publication number Publication date
WO2007099606A1 (ja) 2007-09-07
JPWO2007099606A1 (ja) 2009-07-16
US20090049336A1 (en) 2009-02-19
US8060778B2 (en) 2011-11-15

Similar Documents

Publication Publication Date Title
US9335998B2 (en) Multi-core processor system, monitoring control method, and computer product
US7251746B2 (en) Autonomous fail-over to hot-spare processor using SMI
JP5413515B2 (ja) 仮想計算機のデータ複製方法、情報処理装置及びプログラム
US7007192B2 (en) Information processing system, and method and program for controlling the same
JP4653838B2 (ja) 演算処理装置、演算処理装置の制御方法及び制御プログラム
WO2009157178A1 (ja) 仮想計算機制御装置、仮想計算機制御プログラム及び仮想計算機制御回路
US8713262B2 (en) Managing a spinlock indicative of exclusive access to a system resource
CN107451019B (zh) 处理器核心中的自测试
WO2018095107A1 (zh) 一种bios程序的异常处理方法及装置
US9372702B2 (en) Non-disruptive code update of a single processor in a multi-processor computing system
US20150006978A1 (en) Processor system
US10379931B2 (en) Computer system
US20120226849A1 (en) Virtual computer system, area management method, and program
JPS62221732A (ja) 情報処理装置
JP5508354B2 (ja) モジュール、周波数制御方法、及び周波数制御プログラム
CN115576734B (zh) 一种多核异构日志存储方法和系统
JP2004302731A (ja) 情報処理装置および障害診断方法
US20180089012A1 (en) Information processing apparatus for analyzing hardware failure
JP2009157808A (ja) データ処理装置及びデータ処理装置におけるバスアクセス制御方法
CN107003898B (zh) 包括至少一个具有线程模式和事务模式的资源的设备及方法
US10540222B2 (en) Data access device and access error notification method
JP2021043725A (ja) 計算システム、計算方法及びプログラム
JP2000347758A (ja) 情報処理装置
JP2022107229A (ja) 情報処理装置、制御方法及び制御プログラム
TWI244031B (en) Booting switch method for computer system having multiple processors

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080924

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091006

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091207

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100518

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100716

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100817

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101012

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

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

R150 Certificate of patent or registration of utility model

Ref document number: 4653838

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

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees