(57)【要約】【課題】システムを構成する部位に障害が発生した場合において、システム全体の動作停止を招くことなく障害が発生した部位を停止させることが可能なシステムおよび障害処理方法を提供すること。【解決手段】システムを、システム全体を制御する制御手段と、制御手段とＰＣＩ  Ｅｘｐｒｅｓｓの通信規格で通信がなされるスイッチと、スイッチとＰＣＩ  Ｅｘｐｒｅｓｓの通信規格で通信がなされるデバイスと、スイッチと予め定められた通信規格で通信がなされ、かつデバイスの障害の有無を監視するとともに、障害が検知された場合に予め定められた通信規格による通信を介してスイッチを制御するための情報をスイッチに送信することにより、スイッチからＰＣＩ  Ｅｘｐｒｅｓｓの通信規格による通信を介して制御手段に障害に関する情報が転送されることを抑止する監視部と、を含むように構成した。【選択図】図４
2015225522.tif 000002
【特許請求の範囲】
【請求項１】
システム全体を制御する制御手段と、
前記制御手段とＰＣＩ  Ｅｘｐｒｅｓｓの通信規格で通信がなされるスイッチと、
前記スイッチとＰＣＩ  Ｅｘｐｒｅｓｓの通信規格で通信がなされるデバイスと、
前記スイッチと予め定められた通信規格で通信がなされ、かつ前記デバイスの障害の有無を監視するとともに、障害が検知された場合に前記予め定められた通信規格による通信を介して前記スイッチを制御するための情報を前記スイッチに送信することにより、前記スイッチからＰＣＩ  Ｅｘｐｒｅｓｓの通信規格による通信を介して前記制御手段に前記障害に関する情報が転送されることを抑止する監視部と、
を含むシステム。
【請求項２】
前記監視部と前記デバイスとは予め定められた信号を伝送する伝送路で接続され、
前記監視部は、前記予め定められた通信規格による通信を介して前記スイッチを制御するための情報を前記スイッチに送信した後前記伝送路を介して前記デバイスを停止させる信号を送信する
請求項１に記載のシステム。
【請求項３】
前記デバイスは、前記監視部が前記予め定められた通信規格による通信を介して前記スイッチを制御するための情報を前記スイッチに送信した後前記伝送路を介して前記デバイスを停止させる信号を送信する前に、予め定められたログ情報を収集しＰＣＩ  Ｅｘｐｒｅｓｓの通信規格による通信を介して前記制御手段に送信する
請求項１または請求項２に記載のシステム。
【請求項４】
前記スイッチを制御するための情報は、前記スイッチのレジスタ情報を記憶するＰＣＩ  Ｅｘｐｒｅｓｓで規格化されているコンフィグレーションレジスタに記憶されているＡＥＲレジスタのＵｎｃｏｒｒｅｃｔａｂｌｅ  Ｅｒｒｏｒ  ＭＡＳＫを有効にするための情報である
請求項１〜請求項３のいずれか１項に記載のシステム。
【請求項５】
前記予め定められた通信規格がＩ２Ｃの通信規格である
請求項１〜請求項４のいずれか１項に記載のシステム。
【請求項６】
前記デバイスは自己の温度を制御する温度制御部を備え、前記デバイスの障害が前記温度制御部の障害である
請求項１〜請求項５のいずれか１項に記載のシステム。
【請求項７】
スイッチとＰＣＩ  Ｅｘｐｒｅｓｓの通信規格で通信がなされるデバイスの障害の有無を監視するとともに前記スイッチと予め定められた通信規格で通信がなされる監視部により前記デバイスの障害を検知するステップと、
前記監視部が前記予め定められた通信規格による通信を介して前記スイッチを制御するための情報を前記スイッチに送信するステップと、
前記スイッチを制御するための情報により、前記スイッチからＰＣＩ  Ｅｘｐｒｅｓｓの通信規格による通信を介して、システム全体を制御する制御手段に前記障害に関する情報が転送されることを抑止するステップと、
を含む障害処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、システムおよび障害処理方法に関する。
【背景技術】
【０００２】
特許文献１には、少なくとも１つ以上のサーバを有するサーバシャーシと、PCIeスイッチが搭載されたIOスロット拡張装置とが、PCIeケーブルにて接続されている計算機システムにおいて、前記サーバは、演算部と、記憶部と、インタフェースとを有し、前記IOスロット拡張装置は、PCIeスイッチと、前記PCIeスイッチと接続されたIOスロット拡張装置コントローラと、前記PCIeスイッチと接続されたPCIカードスロットとを有し、前記PCIカードスロットには、HBA及びHBAポートを有するPCIカードが搭載され、前記HBAは、前記HBAポート毎に割り当てられた識別子を保持する識別子エリア有し、前記PCIeスイッチは、PCIeスイッチレジスタを有し、前記IOスロット拡張装置コントローラは、前記PCIカードスロットに搭載される前記PCIカードが有する前記HBAポートに割り当てた識別子を管理する割り当て識別子テーブルと、PCIeスイッチレジスタ更新制御部とを有し、前記PCIeスイッチレジスタ更新制御部は、前記IOスロット拡張装置の電源投入を受けて、前記IOスロット拡張装置コントローラが有する前記割り当て識別子テーブルを、前記PCIeスイッチレジスタの前記識別子格納エリアに複製し、前記インタフェースが有するHBA識別子更新制御部は、前記サーバの電源投入を受けて、前記PCIeケーブルを介して、前記PCIeスイッチレジスタの前記識別子格納エリアに複製された割り当て識別子テーブルを取得し、前記取得した割り当て識別子テーブルを、前記サーバの前記記憶部に保存し、前記記憶部に保存した割り当て識別子テーブルから、前記PCIカードスロットと前記PCIカード上のHBAポートとに対応した割り当て識別子を参照し、前記HBAの前記識別子エリアに記録されている識別子を、前記記憶部に保存した割り当て識別子テーブルから参照した割り当て識別子に更新することを特徴とする計算機システムが開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１２−１５０６２３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明の課題は、システムを構成する部位に障害が発生した場合において、システム全体の動作停止を招くことなく障害が発生した部位を停止させることが可能なシステムおよび障害処理方法を提供することである。
【課題を解決するための手段】
【０００５】
上記目的を達成するために、請求項１に記載のシステムは、システム全体を制御する制御手段と、前記制御手段とＰＣＩ  Ｅｘｐｒｅｓｓの通信規格で通信がなされるスイッチと、前記スイッチとＰＣＩ  Ｅｘｐｒｅｓｓの通信規格で通信がなされるデバイスと、前記スイッチと予め定められた通信規格で通信がなされ、かつ前記デバイスの障害の有無を監視するとともに、障害が検知された場合に前記予め定められた通信規格による通信を介して前記スイッチを制御するための情報を前記スイッチに送信することにより、前記スイッチからＰＣＩ  Ｅｘｐｒｅｓｓの通信規格による通信を介して前記制御手段に前記障害に関する情報が転送されることを抑止する監視部と、を含むものである。
【０００６】
また、請求項２に記載の発明は、請求項１に記載の発明において、前記監視部と前記デバイスとは予め定められた信号を伝送する伝送路で接続され、前記監視部は、前記予め定められた通信規格による通信を介して前記スイッチを制御するための情報を前記スイッチに送信した後前記伝送路を介して前記デバイスを停止させる信号を送信するものである。
【０００７】
また、請求項３に記載の発明は、請求項１または請求項２に記載の発明において、前記デバイスは、前記監視部が前記予め定められた通信規格による通信を介して前記スイッチを制御するための情報を前記スイッチに送信した後前記伝送路を介して前記デバイスを停止させる信号を送信する前に、予め定められたログ情報を収集しＰＣＩ  Ｅｘｐｒｅｓｓの通信規格による通信を介して前記制御手段に送信するものである。
【０００８】
また、請求項４に記載の発明は、請求項１〜請求項３のいずれか１項に記載の発明において、前記スイッチを制御するための情報は、前記スイッチのレジスタ情報を記憶するＰＣＩ  Ｅｘｐｒｅｓｓで規格化されているコンフィグレーションレジスタに記憶されているＡＥＲレジスタのＵｎｃｏｒｒｅｃｔａｂｌｅ  Ｅｒｒｏｒ  ＭＡＳＫを有効にするための情報であるものである。
【０００９】
また、請求項５に記載の発明は、請求項１〜請求項４のいずれか１項に記載の発明において、前記予め定められた通信規格がＩ２Ｃの通信規格であるものである。
【００１０】
また、請求項６に記載の発明は、請求項１〜請求項５のいずれか１項に記載の発明において、前記デバイスは自己の温度を制御する温度制御部を備え、前記デバイスの障害が前記温度制御部の障害であるものである。
【００１１】
一方、上記目的を達成するために、請求項７に記載の障害処理方法は、スイッチとＰＣＩ  Ｅｘｐｒｅｓｓの通信規格で通信がなされるデバイスの障害の有無を監視するとともに前記スイッチと予め定められた通信規格で通信がなされる監視部により前記デバイスの障害を検知するステップと、前記監視部が前記予め定められた通信規格による通信を介して前記スイッチを制御するための情報を前記スイッチに送信するステップと、前記スイッチを制御するための情報により、前記スイッチからＰＣＩ  Ｅｘｐｒｅｓｓの通信規格による通信を介して、システム全体を制御する制御手段に前記障害に関する情報が転送されることを抑止するステップと、を含むものである。
【発明の効果】
【００１２】
請求項１および請求項７に記載の発明によれば、システムを構成する部位に障害が発生した場合において、システム全体の動作停止を招くことなく障害が発生した部位が停止される、という効果が得られる。
【００１３】
請求項２に記載の発明によれば、監視部により、予め定められた通信規格による通信を介してスイッチを制御するための情報をスイッチに送信した後伝送路を介してデバイスを停止させない場合と比較して、障害の発生したデバイスがシステムから切り離される、という効果が得られる。
【００１４】
請求項３に記載の発明によれば、監視部が予め定められた通信規格による通信を介してスイッチを制御するための情報をスイッチに送信した後伝送路を介してデバイスを停止させる信号を送信する前に、デバイスが予め定められたログ情報を収集しＰＣＩ  Ｅｘｐｒｅｓｓの通信規格による通信を介して制御手段に送信しない場合と比較して、デバイスの停止前に制御手段により障害内容等のログ情報が取得される、という効果が得られる。
【００１５】
請求項４に記載の発明によれば、スイッチを制御するための情報をスイッチのレジスタ情報を記憶するＰＣＩ  Ｅｘｐｒｅｓｓで規格化されているコンフィグレーションレジスタに記憶されているＡＥＲレジスタのＵｎｃｏｒｒｅｃｔａｂｌｅ  Ｅｒｒｏｒ  ＭＡＳＫを有効にするための情報としない場合と比較して、より簡易にシステムダウンが抑止される、という効果が得られる。
【００１６】
請求項５に記載の発明によれば、予め定められた通信規格としてＩ２Ｃの通信規格を用いない場合と比較して、より汎用的な通信路を介してスイッチを制御するための情報がスイッチに送信される、という効果が得られる。
【００１７】
請求項６に記載の発明によれば、デバイスの障害をデバイス自身の温度制御部の障害としない場合と比較して、デバイスの過剰な温度上昇が抑止される、という効果が得られる。
【図面の簡単な説明】
【００１８】
【図１】実施の形態に係るコンピュータの構成の一例を示す概略構成図である。
【図２】実施の形態に係るアクセラレータ基板の構成の一例を示す概略構成図である。
【図３】従来技術に係るコンピュータの障害発生時の動作を説明するための図である。
【図４】実施の形態に係るコンピュータの障害処理方法の手順を説明するための図である。
【図５】実施の形態に係るコンピュータの障害発生時の動作を説明するための図である。
【図６】実施の形態に係るＰＣＩｅスイッチのコンフィグレーションレジスタ、ＡＥＲレジスタを説明するための図である。
【発明を実施するための形態】
【００１９】
以下、図面を参照して、本発明の実施の形態について詳細に説明する。以下の説明では、本発明に係るシステムを、画像形成装置等に付随して設けられる画像処理等を実行するコンピュータに適用した形態を例示して説明する。画像形成装置によって画像形成される画像は、通常画像形成装置のＣＰＵ（中央演算処理装置）で動作するソフトウエアで処理され、画像形成装置の画像形成部に供給される。
【００２０】
他方、高速の画像形成装置においては、ソフトウエアによる処理とは別に画像処理機能専用に特化したハードウエア（デバイス：以下、「デバイス」とは、例えばＡＳＩＣのような専用回路に限らず、そのような専用回路を搭載したプリント配線基板のことも「デバイス」と記すことがある。）を設けて、つまり専用のハードウエアを拡張して処理を加速化する場合がある。その場合、画像形成装置とは別に、画像処理のためのハードウエアを拡張したコンピュータを備える場合がある。以下に述べる本実施の形態に係るシステムの説明では、本発明をそのようなコンピュータに適用した形態を例示して説明する。
【００２１】
ハードウエアを拡張する手段としてはＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）等種々適用されるが、本実施の形態に係るコンピュータでは、ＰＣＩ  Ｅｘｐｒｅｓｓ（登録商標）（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ  Ｅｘｐｒｅｓｓ、以下「ＰＣＩｅ」と表記する場合がある）の通信規格によりハードウエアを拡張した形態を例示して説明する。つまり、本実施の形態に係るコンピュータでは、コンピュータの内部において該コンピュータを構成する各部位の少なくとも一部が、ＰＣＩｅの通信規格を介して接続されている。なお、本実施の形態におけるコンピュータとは、ハードウエアとオペレーティングシステム（以下、「ＯＳ」という場合がある）とを含む概念であり、ＯＳの制御の下で動作するハードウエアを意味する。
【００２２】
ここで、ＰＣＩｅの通信規格では、データの伝送を行なう機器の間が２．５Ｇｂｐｓ（ｂｉｔ  ｐｅｒ  ｓｅｃｏｎｄ）や５．０Ｇｂｐｓでデータ伝送可能な一対のシリアル伝送路によりポイントツーポイントで接続されており、データ通信網としてはルートコンプレックスを頂点とした木（ツリー）構造により構成されている。ＰＣＩｅの通信規格では、レーンを複数並列化することによりデバイス間でのデータ伝送の高速化が図られるようになっている。また、ＰＣＩｅの通信規格では、接続された各機器間のデータ伝送はパケットを用いて実行される。
【００２３】
図１は、本実施の形態に係るシステムとしてのコンピュータ１０の構成の一例を示す概略構成図である。図１に示すように、コンピュータ１０は、メインＣＰＵ１２、ＤＤＲ（Ｄｏｕｂｌｅ  Ｄａｔａ  Ｒａｔｅ）メモリ１４、ルートコンプレックス（図１では、「Ｒｏｏｔ  Ｃｏｍｐｌｅｘ」と表記）１６、アクセラレータ基板２０、２２を含んで構成されている。なお、コンピュータ１０には、図１に示す構成の他に画像形成装置と接続するための基板等も備えられているが、図示を省略している。
【００２４】
図１に示すように、本実施の形態に係るコンピュータ１０では、木構造の最上位に位置するルートコンプレックス１６に、装置全体の動作を司るメインＣＰＵ１２と、メインＣＰＵ１２の各種処理等において用いられるシステムメモリとしてのＤＤＲメモリ１４が接続されている。メインＣＰＵ１２には、コンピュータ１０の全体を統括して制御するＯＳが搭載されている。
【００２５】
また、ルートコンプレックス１６には、たとえば画像の圧縮、伸長等の画像処理機能を実現するために用いられるデバイスとしてのアクセラレータ基板２０、２２が接続されている。ルートコンプレックスとは、ＰＣＩｅの通信規格による通信路を介して接続されたＰＣＩｅ規格準拠の各デバイスのコンフィグレーション空間から各デバイスの設定情報を読み出し、各デバイスの各々へのアドレス空間の割り当ておよび当該各デバイスの各々へのデータの転送を制御する通信装置である。本実施の形態に係るコンピュータ１０のルートコンプレックス１６は、アクセラレータ基板２０、２２へのアドレス空間の割り当ておよびデータの転送、すなわちパケットの転送等を制御している。
【００２６】
図１に示すように、アクセラレータ基板２０は、ＰＣＩｅスイッチ（図１では、「ＰＣＩｅ  Ｓｗｉｔｃｈ」と表記）１８、およびＰＣＩｅスイッチ１８に接続されたＮ個のＤＲＰ（Ｄｙｎａｍｉｃａｌｌｙ  Ｒｅｃｏｎｆｉｇｕｒａｂｌｅ  Ｐｒｏｃｅｓｓｏｒ、
動的再構成可能なプロセッサ）２８−１〜ＤＲＰ２８−ＮおよびＤＤＲメモリ３０−１〜ＤＤＲメモリ３０−Ｎを含んで構成されている。なお、以下においては、ＤＲＰ２８−１〜ＤＲＰ−Ｎの各々を区別しない場合には「ＤＲＰ２８」と表記し、ＤＤＲメモリ３０−１〜ＤＤＲメモリ３０−Ｎの各々を区別しない場合には「ＤＤＲメモリ３０」と表記する。
【００２７】
ＰＣＩｅスイッチ１８は、２つ以上のポートを接続し、ポート間でのパケットのルーティングを行う通信装置である。つまり、ＰＣＩｅスイッチ１８は、ルートコンプレックス１６、ＤＲＰ２８の各々の間のデータの転送、すなわちパケットの転送を制御する。また、ＰＣＩｅスイッチ１８は、後述するように、自己の情報や状態を記憶するコンフィグレーションレジスタを備えている。
【００２８】
また、本実施の形態に係るＰＣＩｅスイッチ１８はＡＥＲ（Ａｄｖａｎｃｅｄ  Ｅｒｒｏｒ  Ｒｅｐｏｒｔｉｎｇ）機能を備え、たとえばコンピュータ１０内で障害が発生した場合には、当該障害に関する情報がＡＥＲレジスタに記録される。ＡＥＲレジスタとは、
ＰＣＩｅの通信規格のオプションとして規格化された３２ビットのレジスタであり、上記コンフィグレーションレジスタの一部を構成している。
【００２９】
ＤＲＰ２８は画像処理機能を実行するプロセッサであり、ＤＲＰ２８にはハードウエアとしての専用回路とともに、画像処理の制御等を実行するファームウエア（以下、「ＦＷ」という場合がある）が搭載されている。また、ＤＤＲメモリ３０は該ＦＷの実行等において用いられるメモリである。
【００３０】
アクセラレータ基板２２もアクセラレータ基板２０と同様にＰＣＩｅスイッチ２４を備え、該ＰＣＩｅスイッチ２４にも、ＤＲＰ等の画像処理機能を実行する部材（図示省略）が接続されている。なお、本実施の形態に係るコンピュータ１０では、２枚のアクセラレータ基板２０、２２がルートコンプレックス１６に接続された形態を例示して説明するが、これに限られず、アクセラレータ基板は、必要とされる画像処理の能力等に応じて３枚以上設けてもよい。
【００３１】
図２は、本実施の形態に係るアクセラレータ基板２０のより詳細な構成を示す構成図である。図２に示すように、アクセラレータ基板２０は、ＰＣＩｅスイッチ１８、ＤＲＰ２８−１、２８−２、ＣＰＬＤ（Ｃｏｍｐｌｅｘ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｌｏｇｉｃ  Ｄｅｖｉｃｅ）３２、ファン（図２では、「ＦＡＮ」と表記）３４、温度センサ（図２では、「ＴＥＭＰ」と表記）３６を含んで構成されている。なお、図２に示すアクセラレータ基板２０では、ＰＣＩｅスイッチ１８に２個のＤＲＰが接続された形態を例示しており、また、図１におけるＤＤＲメモリ１４、３０、ルートコンプレックス１６の図示を省略している。
【００３２】
図２に示すファン３４は、アクセラレータ基板２０上に実装されたＤＲＰ２８−１（以下、単に、「ＤＲＰ２８」と表記する）を冷却するためのファンであり、発熱体としてのＤＲＰ２８の温度上昇を抑制している。温度センサ３６は、ＤＲＰ２８に接してまたはＤＲＰ２８の周囲に配置されており、ＤＲＰ２８の温度を検出している。
【００３３】
ＣＰＬＤ３２は、主として、温度センサ３６により検出した温度に基づいてＤＲＰ２８の温度が予め定められた範囲に収まるようにファン３４を制御している。また、ＣＰＬＤ３２は、ファン３４の異常、つまりファン３４の動作停止等の障害の発生を監視している。つまり、ＣＰＬＤ３２は、ファン３４の動作を制御することによりＤＲＰ２８の温度を制御するとともに、ファン３４における障害の発生を監視する監視・制御部として機能している。
【００３４】
アクセラレータ基板２０では、メインＣＰＵ１２とＰＣＩｅスイッチ１８との間、ＰＣＩｅスイッチ１８とＤＲＰ２８との間がＰＣＩｅインタフェースを介して接続されている、つまりＰＣＩｅの通信路によって接続されている。また、ＤＲＰ２８とＣＰＬＤ３２との間、ＣＰＬＤ３２とファン３４との間、およびＣＰＬＤ３２と温度センサ３６との間は、ＣＭＯＳインタフェース、ＴＴＬインタフェース等のレベル（振幅）信号によるインタフェースを介して接続されている、つまりレベル信号を伝送する伝送路で接続されている。本実施の形態に係るアクセラレータ基板２０では、一例として、ＣＭＯＳインタフェースによる伝送路を採用している。
【００３５】
図２に示すように、本実施の形態に係るコンピュータ１０では、一般的なＰＣＩｅインタフェースのみを介する接続とは異なり、ＰＣＩｅスイッチ１８とＣＰＬＤ３２との間がＩ２Ｃ（Ｉｎｔｅｒ−Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）の通信規格による通信路で接続されている。したがって、ＰＣＩｅスイッチ１８とＣＰＬＤ３２との間において、
ＰＣＩｅインタフェースを介する通信および上記伝送路による信号伝送とは別の経路で通信がなされる。Ｉ２Ｃの通信規格による通信路の詳細に関しては後述する。
【００３６】
ところで、予め定められた通信規格によりハードウエアを拡張した場合において、何らかの方法によりハードウエア自身の重大な障害（たとえば、ハードウエアの過剰な温度上昇の恐れ等）を検知した場合、メインＣＰＵ等の上位システムに当該障害を通知した後当該ハードウエアを即座にリセット（停止）させたい場合も生ずる。しかしながら、従来技術に係るシステムにおいては、障害の発生したハードウエアを即座に停止させると、ＯＳがハングアップし、システムダウンが発生する場合があった。
【００３７】
上記のようなシステムダウンが発生する場合の一例を、図３を参照して説明する。図３は、従来技術に係るコンピュータ１０において障害が発生時した場合の動作を説明するための図である。
【００３８】
図３に示す従来技術に係るコンピュータ１０のアクセラレータ基板２０ａは、図２に示す本実施の形態に係るアクセラレータ基板２０におけるＩ２Ｃの通信規格による通信路を削除したものなので、同じ構成には同じ符号を付してその説明を省略する。また、以下では、発生した障害がファン３４の動作停止である場合を例示して説明する。なお、図３に示す［１］〜［５］は、以下に示すステップ［１］〜［５］の動作が発生する位置に対応している。
【００３９】
［１］：ＣＰＬＤ３２がファン３４の動作停止（以下、「Ｆａｎ−Ｆａｉｌ」という場合がある）を検知する。
［２］：ＣＰＬＤ３２がＤＲＰ２８にＦａｎ−Ｆａｉｌを通知する。
［３］：ＤＲＰ２８のＦＷがメインＣＰＵ１２に、つまり上位システムとしてのＯＳにＦａｎ−Ｆａｉｌを通知する。
［４］：ＣＰＬＤ３２がＤＲＰ２８をリセットする、すなわち動作を停止させる。ファン３４の動作が停止したのでＤＲＰ２８の温度制御が不能となり、ＤＲＰ２８の温度が異常に上昇する恐れがあるからである。
［５］：メインＣＰＵ１２が訂正不可能なエラー（以下、「Ｕｎｃｏｒｒｅｃｔａｂｌｅ  Ｅｒｒｏｒ」という場合がある）を内容とするパケットを受信することにより、ＯＳがハングアップする（メインＣＰＵ１２が停止し、システムダウンが発生する）。
【００４０】
ここで、ステップ［５］において、ＯＳがハングアップする理由について説明する。
【００４１】
ＤＲＰ２８とＰＣＩｅスイッチ１８との間では、通常ＰＣＩｅインタフェース上のパケットを送信、受信しながらお互いの存在を確認している。しかしながら、ＤＲＰ２８がリセットされるとＰＣＩｅインタフェース上のパケットの送信、受信が突然できなくなる（ＤＲＰ２８とＰＣＩｅスイッチ１８との間でリンク切れが発生する）ことにより、ＰＣＩｅスイッチ１８がダウンストリーム（下り）方向において不在を検知する、つまり、いわゆるＳｕｒｐｒｉｓｅ  Ｄｏｗｎ  Ｅｒｒｏｒを検知する。
【００４２】
ＰＣＩｅスイッチ１８がＳｕｒｐｒｉｓｅ  Ｄｏｗｎ  Ｅｒｒｏｒを検知すると、ＰＣＩｅスイッチ１８によってＵｎｃｏｒｒｅｃｔａｂｌｅ  Ｅｒｒｏｒを内容とするパケットがメインＣＰＵ１２に転送される。Ｕｎｃｏｒｒｅｃｔａｂｌｅ  Ｅｒｒｏｒは、発生したエラーがハードウエアにより訂正することができない場合に発生するエラーであり、
また処理方法も不明であるためＯＳがハングアップする。
【００４３】
以上のように、従来技術に係るアクセラレータ基板２０ａでは、障害が発生するとＯＳがハングアップする場合がある。ＯＳがハングアップするとコンピュータ１０の動作が停止するのみならず、コンピュータ１０内に接続されている各機器のログ（コンピュータ１０内の処理内容、発生した警告等の履歴）情報の収集もできなくなる。したがって、ＯＳがハングアップした原因等も明らかにすることができず、対処方法も不明となる。
【００４４】
そこで、本発明では、障害を検知したデバイスが、ＰＣＩｅの通信規格による通信路とは別の通信路であるＩ２Ｃの通信規格による通信路を介して当該障害に基づく情報をＰＣＩｅスイッチに送信し、当該障害に基づく情報によってＰＣＩｅスイッチのＡＥＲレジスタのＵｎｃｏｒｒｅｃｔａｂｌｅ  Ｅｒｒｏｒ  ＭＡＳＫを強制的に書き換えてＭＡＳＫを有効にするようにした。このことにより、ＰＣＩｅスイッチからＵｎｃｏｒｒｅｃｔａｂｌｅ  Ｅｒｒｏｒメッセージパケットが上位システムに転送されないので、ＯＳのハングアップあるいはシステムダウンが回避される。
【００４５】
つぎに、図４ないし図６を参照して、本実施の形態に係るシステムとしてのコンピュータ１０においてファン３４の動作停止の障害（Ｆａｎ−Ｆａｉｌ）が発生した場合の障害処理方法、およびコンピュータ１０の動作について説明する。
【００４６】
図４は、本実施の形態に係るコンピュータ１０においてＦａｎ−Ｆａｉｌが発生した場合の障害処理方法の手順を示しており、図５は、該障害処理方法の各ステップに対応する動作が発生するコンピュータ１０内の部位を示している。つまり、図５の［１］〜［５］は、図４に示すステップＳ１〜Ｓ５の各々に対応している。
【００４７】
図４および図５を参照して、ステップＳ１では、ＣＰＬＤ３２が、ＣＭＯＳインタフェースによる伝送路を介して、ファン３４のＦａｎ−Ｆａｉｌを検知する。
【００４８】
つぎのステップＳ２では、ＣＰＬＤ３２が、ＣＭＯＳインタフェースによる伝送路を介して、ＤＲＰ２８にＦａｎ−Ｆａｉｌを通知する。
【００４９】
つぎのステップＳ３では、ＣＰＬＤ３２がＩ２Ｃポートを介して、ＰＣＩｅスイッチ１８の対応するＡＥＲレジスタのＵｎｃｏｒｒｅｃｔａｂｌｅ  Ｅｒｒｏｒ  ＭＡＳＫレジスタを強制的に書き換えてＭＡＳＫを有効にする。具体的には、Ｕｎｃｏｒｒｅｃｔａｂｌｅ  Ｅｒｒｏｒ  ＭＡＳＫのＡＥＲレジスタ内のアドレス（たとえば、０ｘＦＢＣ）を指定して書き換え情報を送信し、Ｕｎｃｏｒｒｅｃｔａｂｌｅ  Ｅｒｒｏｒ  ＭＡＳＫに強制的にオールＦを書き込む。このことにより、ＰＣＩｅスイッチ１８によるＵｎｃｏｒｒｅｃｔａｂｌｅ  ＥｒｒｏｒメッセージパケットのメインＣＰＵ１２への転送が禁止される。
【００５０】
ここで、図６を参照して、ＡＥＲレジスタについてより詳細に説明する。図６は、本実施の形態に係るＰＣＩｅスイッチ１８の構成の一例を示す図である。
【００５１】
図６に示すように、ＰＣＩｅスイッチ１８は、複数（図６に示す例では３つ）のポートＰ１、Ｐ２、Ｐ３（以下、総称する場合は「ポートＰ」という）を備え、ポートごとにＰＣＩｅコンフィグレーションレジスタ（以下、単にコンフィグレーションレジスタという場合がある）Ｃ１、Ｃ２、Ｃ３（以下、総称する場合は「コンフィグレーションレジスタＣ」という）を備えている。また、上述したように、ＰＣＩｅスイッチ１８は、ＣＰＬＤ３２との通信を行うためのＩ２Ｃの通信規格のインタフェース４０を備えている。
【００５２】
複数のポートＰの各々は、障害が発生した場合に当該障害を検知して、コンフィグレーションレジスタＣに障害情報を記録する。より具体的には、コンフィグレーションレジスタＣの一部であるＡＥＲレジスタに障害情報を記録する。ここで、障害情報とは、障害の内容を示す情報であり、たとえば、ポートＰに接続されているデバイスとのリンク切れが発生した場合には、ＡＥＲレジスタにＳｕｒｐｒｉｓｅ  Ｄｏｗｎ  Ｅｒｒｏｒが記録される。また、複数のポートの各々は、訂正不可能なエラーに対応する障害を検知した場合には、Ｕｎｃｏｒｒｅｃｔａｂｌｅ  ＥｒｒｏｒメッセージパケットをメインＣＰＵ１２宛てに送信する。
【００５３】
再び図４および図５を参照し、つぎのステップＳ４では、ＤＲＰ２８のＦＷが、ＰＣＩｅインタフェースを介して、ＯＳにＦａｎ−Ｆａｉｌを通知する。
【００５４】
つぎのステップＳ５では、ＣＰＬＤ３２が、ＣＭＯＳインタフェースによる伝送路を介して、ＤＲＰ２８をリセットする、すなわち動作を停止させる。この際、ステップＳ３で、ＰＣＩｅスイッチ１８のＡＥＲレジスタのＵｎｃｏｒｒｅｃｔａｂｌｅ  Ｅｒｒｏｒ  ＭＡＳＫが有効にされているので、メインＣＰＵ１２にＵｎｃｏｒｒｅｃｔａｂｌｅ  Ｅｒｒｏｒメッセージパケットが転送されることはない。なお、本実施の形態に係るコンピュータ１０が通常に動作している状態では、Ｕｎｃｏｒｒｅｃｔａｂｌｅ  Ｅｒｒｏｒ  ＭＡＳＫは無効にされている、つまり、Ｕｎｃｏｒｒｅｃｔａｂｌｅ  ＥｒｒｏｒメッセージパケットがメインＣＰＵ１２宛てに送信される状態となっている。
【００５５】
以上の手順により、ＤＲＰ２８がシステムから切り離され、ファン３４の動作停止に起因するＤＲＰ２８の温度上昇が回避される。しかもＣＰＵ１２がＵｎｃｏｒｒｅｃｔａｂｌｅ  Ｅｒｒｏｒパケットを受信することがないので、ＯＳがハングアップする（システムがダウンする）こともない。
【００５６】
ここで、上記実施の形態では、ＤＲＰ２８をリセットする場合について説明したが、ＤＲＰ２８のリセットに加えてログ情報を収集するステップを加えてもよい。この場合、上記ステップＳ４とステップＳ５との間に、たとえば、「ＤＲＰ２８のＦＷが必要なログを収集し、上位システムとしてのメインＣＰＵ１２に送付する」というステップを加えればよい。
【００５７】
また、上記実施の形態では、ステップＳ３で、ＣＰＬＤ３２がＩ２Ｃポートを使って、ＰＣＩｅスイッチ１８の対応するＡＥＲレジスタのＵｎｃｏｒｒｅｃｔａｂｌｅ  Ｅｒｒｏｒ  ＭＡＳＫレジスタを強制的に書き換えてＭＡＳＫを有効にする形態を例示して説明したが、これに限られない。たとえば、メインＣＰＵ１２にＰＣＩｅスイッチ１８のレジスタ書き換え用のドライバをインストールしておき、メインＣＰＵ１２がＵｎｃｏｒｒｅｃｔａｂｌｅ  Ｅｒｒｏｒ  ＭＡＳＫレジスタを書き換えてもよい。この場合、メインＣＰＵ１２が書き換えを完了した後、あるいは加えてログ情報を収集した後、レジスタ書き換え、ログ情報収集が完了したことをＣＰＬＤ３２に通知し、ＣＰＬＤ３２はその後ＤＲＰ２８をリセットするようにすればよい。
【００５８】
なお、上記実施の形態では、本発明を画像処理等を実行するコンピュータにおいて、温度制御に関する障害が発生した場合の形態を例示して説明したが、これに限られず、他の機器における当該機器の重大な障害、たとえば画像形成装置のレーザによる描画部分のレーザ出力に異常が発生した場合の形態等に適用してもよい。
【００５９】
また、上記実施の形態では、ファン３４が動作を停止した場合を障害として検知する形態を例示して説明したが、これに限られず、たとえば温度センサ３６の温度が予め定められた閾値を越えたことを障害として検知する形態に適用してもよい。
【符号の説明】
【００６０】
１０    コンピュータ
１２    メインＣＰＵ
１４、３０  ＤＤＲメモリ
１６    ルートコンプレックス
２０、２０ａ、２２  アクセラレータ基板
１８、２４    ＰＣＩｅスイッチ
２８    ＤＲＰ
３２    ＣＰＬＤ
３４    ファン
３６    温度センサ
４０    Ｉ２Ｃインタフェース
Ｃ１、Ｃ２、Ｃ３  コンフィグレーションレジスタ
Ｐ１、Ｐ２、Ｐ３  ポート
【図１】
2015225522.tif 000003
【図２】
2015225522.tif 000004
【図３】
2015225522.tif 000005
【図４】
2015225522.tif 000006
【図５】
2015225522.tif 000007
【図６】
2015225522.tif 000008