(57)【特許請求の範囲】
【請求項１】
計算処理装置を制御する情報処理装置において、
前記計算処理装置との間のデータ転送を制御する制御情報の送受信を指示する命令を生成する第１処理部と、前記第１処理部からの命令に応じて前記計算処理装置との間で前記制御情報の送受信をパケット単位で行う第１データ転送部とを備えた第１制御部と、
前記制御情報の送受信を指示する命令を生成する第２処理部と、前記第２処理部からの命令に応じて前記計算処理装置との間で前記制御情報の送受信をパケット単位で行う第２データ転送部とを備えた第２制御部とを備え、
前記第１および第２制御部の各々は、前記計算処理装置との間のデータ転送を制御するための制御レジスタと、前記計算処理装置との間のデータ転送の状態を示す状態レジスタと、前記第１および第２制御部の間で互いの動作状態を受け渡しかつ格納する二重化制御レジスタとを含み、
前記第１データ転送部は、前記計算処理装置との間の前記データ転送のための前記第１データ転送部に対する設定情報を前記制御レジスタに設定する際は、前記制御レジスタに設定した前記設定情報および前記状態レジスタに格納されている前記データ転送の状態を示す状態情報を、前記パケット単位の送受信の都度、前記第２データ転送部に通知し、
前記第１データ転送部は、前記第１制御部の故障を検出した場合、前記第１制御部の故障状態を前記二重化制御レジスタに書き込んで前記第２制御部に通知し、
前記第２データ転送部は、前記二重化制御レジスタにより前記第１制御部の故障を通知された時は通知された前記第１データ転送部の最新の前記設定情報および前記状態情報に基づいて、前記計算処理装置との間の前記制御情報の送受信を前記パケット単位で引き継いで行うことにより、前記計算処理装置との間のデータ転送を続行する
ことを特徴とする情報処理装置。
【請求項２】
請求項１に記載の情報処理装置において、
前記第１データ転送部は前記計算処理装置と、情報転送路を介して前記制御情報の送受信を行い、
前記第１データ転送部が前記情報転送路の故障を検出した場合、前記第２処理部は前記第１処理部が実行する命令の生成を引き継ぎ、
前記第２処理部が、前記第１処理部から引き継いで生成した命令に応じて、前記第２データ転送部が前記計算処理装置とデータの送受信を行う
ことを特徴とする情報処理装置。
【請求項３】
請求項１に記載の情報処理装置において、
前記計算処理装置は、前記第１データ転送部から前記命令又は前記制御情報を受信した場合に、前記第１データ転送部に前記命令又は前記制御情報を受信したことを示す応答を返信すると共に、前記第２データ転送部に前記命令又は前記制御情報を受信したことを示す応答を返信する
ことを特徴とする情報処理装置。
【請求項４】
計算処理装置を制御するシステム制御装置と、第１処理部と第１転送部を備えた第１制御部と、第２制御部を有する情報処理装置の制御方法において、
前記第１および第２制御部の各々は、前記計算処理装置との間のデータ転送を制御するための制御レジスタと、前記計算処理装置との間のデータ転送の状態を示す状態レジスタと、前記第１および第２制御部の間で互いの動作状態を受け渡しかつ格納する二重化制御レジスタとを含み、
前記第１処理部が、前記計算処理装置との間のデータ転送を制御する制御情報の送受信を指示する命令を生成し、
前記第１データ転送部が前記第１処理部からの命令に応じて前記計算処理装置との前記制御情報の送受信をパケット単位で開始し、
前記第１データ転送部は、前記計算処理装置との間の前記データ転送のための前記第１データ転送部に対する設定情報を前記制御レジスタに設定する際は、前記制御レジスタに設定した前記設定情報および前記状態レジスタに格納されている前記データ転送の状態を示す状態情報を、前記パケット単位の送受信の都度、前記第２制御部が備える第２データ転送部に通知し、
前記第１データ転送部は、前記第１制御部の故障を検出した場合、前記第１制御部の故障状態を前記二重化制御レジスタに書き込んで前記第２制御部に通知し、
前記第２データ転送部は、通知された前記第１データ転送部の最新の前記設定情報および前記状態情報に基づいて、前記計算処理装置との間の前記制御情報の送受信を前記パケット単位で引き継いで行うことにより、前記計算処理装置との間のデータ転送を続行する
ことを特徴とする情報処理装置の制御方法。
【請求項５】
計算処理装置と、
前記計算処理装置との間のデータ転送を制御する制御情報の送受信を指示する命令を生成する第１処理部と、前記第１処理部からの命令に応じて前記計算処理装置との間で前記制御情報の送受信をパケット単位で行う第１データ転送部とを備えた第１制御部と、
前記制御情報の送受信を指示する命令を生成する第２処理部と、前記第２処理部からの命令に応じて前記計算処理装置との間で前記制御情報の送受信をパケット単位で行う第２データ転送部とを備えた第２制御部とを備える情報処理装置であって、
前記第１および第２制御部の各々は、前記計算処理装置との間のデータ転送を制御するための制御レジスタと、前記計算処理装置との間のデータ転送の状態を示す状態レジスタと、前記第１および第２制御部の間で互いの動作状態を受け渡しかつ格納する二重化制御レジスタとを含み、
前記第１データ転送部は、前記計算処理装置との間の前記データ転送のための前記第１データ転送部に対する設定情報を前記制御レジスタに設定する際は、前記制御レジスタに設定した前記設定情報および前記状態レジスタに格納されている前記データ転送の状態を示す状態情報を、前記パケット単位の送受信の都度、前記第２データ転送部に通知し、
前記第１データ転送部は、前記第１制御部の故障を検出した場合、前記第１制御部の故障状態を前記二重化制御レジスタに書き込んで前記第２制御部に通知し、
前記第２データ転送部は、前記二重化制御レジスタにより前記第１制御部の故障を通知された時は、通知された前記第１のデータ転送部の最新の前記設定情報および前記状態情報に基づいて、前記計算処理装置との間の前記制御情報の送受信を前記パケット単位で引き継いで行うことにより、前記計算処理装置との間のデータ転送を続行する
ことを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、計算機ハードウェアを制御するシステム制御ボードを冗長構成している情報処理装置に関する。
【背景技術】
【０００２】
計算機ハードウェアを制御するシステム制御装置として機能するシステム制御ボードを冗長構成している情報処理装置がある。このような情報処理装置は例えば多用途に使用可能なサーバなどであり、システム制御ボードを冗長化することによって、高信頼化を実現しているシステムである。【０００３】
この情報処理システムにおいて、１つのシステム制御ボードは、情報処理装置内の、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ：中央処理装置）とメモリ（記憶装置）とを有し演算処理を行うシステムボード、システムボード間のデータ転送を行うクロスバボード、及びＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）やネットワーク等のＩ／Ｏ制御を行うＩ／Ｏボード等の計算機ハードウェアコンポーネントの制御、及び計算機ハードウェアコンポーネントの管理、監視を行う。そして、情報処理装置の制御をしている動作状態のシステム制御ボードが故障した場合に備えて、他の制御ボードは待機状態になっている。【０００４】
しかしながら、システムボード、クロスバボード及びＩ／Ｏボード等の計算機ハードウェアコンポーネントと、動作状態の制御ボードが搭載しているＤＭＡ（Ｄｙｎａｍｉｃ  Ｍｅｍｏｒｙ  Ａｃｃｅｓｓ）マスタ（ＤＭＡ制御部）がデータ転送している間に、サーバがシステム制御ボードの切り替えを行うと、以下の問題が生じる。システム制御ボードの切り替えとともに待機状態から動作状態になったシステム制御ボード上にあるＤＭＡマスタは、切り替えとともに動作状態から待機状態になったシステム制御ボード上にあるＤＭＡマスタと状態が異なる。【０００５】
そのため待機状態から動作状態になったシステム制御ボードは、動作状態から待機状態になったシステム制御ボードにおける動作状態をそのまま引き継ぐことができないといった問題がある。【０００６】
制御機構を冗長化した情報処理システムに関連する技術として以下の文献がある。
【特許文献１】特開２００２−０４９５０２号公報
【発明の開示】
【０００７】
（発明が解決しようとする課題）
本発明に係る情報処理装置は、冗長化したシステム制御装置を切り替える場合、システム制御装置が実行する制御処理を効率よく移行することを目的とする。
（課題を解決するための手段）
【０００８】
本実施例に係る情報処理装置の一側面によれば、計算処理装置を制御する情報処理装置において、前記計算処理装置との間のデータ転送を制御する制御情報の送受信を指示する命令を生成する第１処理部と、前記第１処理部からの命令に応じて前記計算処理装置との間で前記制御情報の送受信をパケット単位で行う第１データ転送部とを備えた第１制御部と、前記制御情報の送受信を指示する命令を生成する第２処理部と、前記第２処理部からの命令に応じて前記計算処理装置との間で前記制御情報の送受信をパケット単位で行う第２データ転送部とを備えた第２制御部とを備え、前記第１および第２制御部の各々は、前記計算処理装置との間のデータ転送を制御するための制御レジスタと、前記計算処理装置との間のデータ転送の状態を示す状態レジスタと、前記第１および第２制御部の間で互いの動作状態を受け渡しかつ格納する二重化制御レジスタとを含み、前記第１データ転送部は、前記計算処理装置との間の前記データ転送のための前記第１データ転送部に対する設定情報を前記制御レジスタに設定する際は、前記制御レジスタに設定した前記設定情報および前記状態レジスタに格納されている前記データ転送の状態を示す状態情報を、前記パケット単位の送受信の都度、前記第２データ転送部に通知し、前記第１データ転送部は、前記第１制御部の故障を検出した場合、前記第１制御部の故障状態を前記二重化制御レジスタに書き込んで前記第２制御部に通知し、前記第２データ転送部は、前記二重化制御レジスタにより前記第１制御部の故障を通知された時は通知された前記第１データ転送部の最新の前記設定情報および前記状態情報に基づいて、前記計算処理装置との間の前記制御情報の送受信を前記パケット単位で引き継いで行うことにより、前記計算処理装置との間のデータ転送を続行することを特徴とする。
（発明の効果）
【０００９】
本発明に係る情報処理装置は、冗長化したシステム制御ボード内におけるＤＭＡ制御部間のステータスを反映することによって、冗長化したシステム制御ボードを切り替える場合、システム制御ボードが実行する制御処理を効率よく移行することができる。
【図面の簡単な説明】
【００１０】
【図１】本実施例に係る情報処理装置１００のハードブロック図である。
【図２】本実施例に係る制御デバイス２０１とターゲット制御デバイス２０２の接続形態である。
【図３】本実施例に係る制御デバイス３０１とターゲット制御デバイス３０２、３０３の接続形態である。
【図４】本実施例に係る制御デバイス４０１とターゲット制御デバイス４０２、４０３の接続形態である。
【図５】本実施例に係るコマンドパケット５００の構成図である。
【図６】本実施例に係るＡｃｋパケット６００の構成図である。
【図７】本実施例に係る制御ボード１０１と計算機ハードウェアコンポーネント１０３との間のパケット送受信シーケンス図である。
【図８】本実施例に係る制御ボード１０１と計算機ハードウェアコンポーネント１０３との間のパケット送受信シーケンス図である。
【図９】本実施例に係る制御デバイス１０５のハード構成図である。
【図１０】本実施例に係る制御デバイス１０５と制御デバイス１０８の接続形態を示す図である。
【図１１】本実施例に係る制御デバイス１０５と制御デバイス１０８との間で送受信するパケット１１００の構成図である。
【図１２】本実例に係る制御デバイス１０５と制御デバイス１０８の同期シーケンス図である。
【図１３】本実施例に係る制御デバイス１０５と制御デバイス１０８の応答シーケンス図である。
【図１４】本実施例に係る情報処理装置１００のライトシーケンス図である。
【図１５】本実施例に係る情報処理装置１００のリードシーケンス図である。
【符号の説明】
【００１１】
１００…情報処理装置
１０１…制御ボード
１０２…制御ボード
１０３…計算機ハードウェアコンポーネント
１０４…プロセッサ
１０５…制御デバイス
１０６…メモリ
１０７…プロセッサ
１０８…制御デバイス
１０９…メモリ
１１０…ターゲット制御デバイス
９０１…ローカルバス制御部
９０２…データサイズレジスタ
９０３…ターゲットアドレスレジスタ
９０４…メモリアドレスレジスタ
９０５…ステータスレジスタ
９０６…終了ステータスレジスタ
９０７…エラーステータスレジスタ
９０８…二重化制御レジスタ
９０９…ＤＭＡ制御部
９１０…通信インタフェース
【発明を実施するための最良の形態】
【００１２】
［１．情報処理装置１００の概要］
まず図１を用いて本実施例に係る情報処理装置１００の概要について説明する。情報処理装置１００は、例えば多用途に使用可能なサーバであり、高信頼性を実現する装置である。【００１３】
図１は本実施例に係る情報処理装置１００のハードブロック図である。情報処理装置１００はシステム制御装置として機能する複数の制御ボード１０１、１０２、及び計算機ハードウェアコンポーネント１０３を備える。本実施例に係る情報処理装置１００は、制御ボード１０１と制御ボード１０２が冗長構成となっており、制御ボード１０１、１０２によって、制御機構が二重化されている。以下、情報処理装置１００の各ユニット、つまり制御ボード１０１、１０２、及び計算機ハードウェアコンポーネント１０３について説明する。
［１．１．制御ボード１０１、１０２］【００１４】
制御ボード１０１、１０２は、情報処理装置１００の動作を統括的に制御するユニットである。本実施例では、制御ボード１０１が現用（アクティブ状態）であり、計算機ハードウェアコンポーネント１０３を制御している。一方、制御ボード１０２は制御ボード１０１の予備用として、待機状態で制御ボード１０１の故障に備えている。制御ボード１０１の動作状態とは、制御ボード１０１が計算機ハードウェアコンポーネント１０３を制御している状態である。ここで計算機ハードウェアコンポーネント１０３は、システムボード、クロスバボード、Ｉ／Ｏボード等の、情報処理装置内に設けられた情報処理を行うユニットである。また、計算機ハードウェアコンポーネント１０３は、制御ボード１０１から受信する指示に基づいて、制御ボード１０１が管理などに必要なデータを制御ボード１０１との間で送受信している。計算機ハードウェアコンポーネント１０３が制御ボード１０１から受信する指示は、情報処理装置１００の監視、制御に関する指示である。【００１５】
制御ボード１０２の待機状態とは、制御ボード１０２が計算機ハードウェアコンポーネント１０３を制御していない状態である。制御ボード１０１が故障した場合に、待機状態にある制御ボード１０２は動作状態に切り替えられ、制御ボード１０１が実行していた制御処理を引き継ぐ。ここで、制御ボード１０１が計算機ハードウェアコンポーネント１０３に対して行う制御は、計算機ハードウェアコンポーネント１０３の電源のＯＮ／ＯＦＦ、計算機ハードウェアコンポーネント１０３の一つであるシステムボードに搭載されたＣＰＵ等の温度監視、電気的接続の有効／無効の管理などである。【００１６】
制御ボード１０１はプロセッサ１０４、制御デバイス１０５、メモリ１０６を有している。制御ボード１０１はこれらのユニットを用いて、計算機ハードウェアコンポーネント１０３の制御を行う。同様にして制御ボード１０１と冗長構成される制御ボード１０２も、プロセッサ１０７、制御デバイス１０８、メモリ１０９を有している。制御ボード１０１が故障した場合には、制御ボード１０２はこれらのユニットを用いて、計算機ハードウェアコンポーネント１０３の制御を行う。【００１７】
以下、制御ボード１０１、１０２が有する各ユニットについて説明する。
［１．１．１．プロセッサ１０４、１０７］【００１８】
プロセッサ１０４は、制御デバイス１０５に対してターゲット制御デバイス１１０との間でのデータ転送を指示する。ここで、プロセッサ１０４は、アプリケーション等を実行するシステムボード上のＣＰＵとは異なり、以下に説明するように情報処理装置のシステム制御を行うものである。プロセッサ１０４は、制御デバイス１０５が行うデータ転送の開始指示、およびデータ転送開始指示に伴う制御デバイス１０５の設定を指示する。またプロセッサ１０４は、メモリ１０６に格納するデータの解析などを行って、計算機ハードウェアコンポーネント１０３の管理、監視などを行う。例えばプロセッサ１０４は、メモリ１０６から計算機ハードウェアコンポーネント１０３が搭載するＬＳＩの温度情報を参照して、ＬＳＩの温度監視を行う。またプロセッサ１０４は、メモリ１０６から計算機ハードウェアコンポーネント１０３が搭載するＬＳＩの電圧情報を参照して、ＬＳＩの電圧監視を行う。情報処理装置１００が運用する制御ボードを制御ボード１０１から制御ボード１０２に切り替える場合、プロセッサ１０４は、制御ボード１０１に搭載されるメモリ１０６に格納しているデータを読み出して、制御ボード１０２が搭載するメモリ１０９に転送する。【００１９】
また制御ボード１０１に搭載されたプロセッサ１０４は、プロセッサ１０４の制御デバイス１０５に対して処理要求を送信すると共に、制御ボード１０２に搭載されたプロセッサ１０７に対して処理要求を通知する。ここでいう処理要求は、プロセッサ１０４から制御デバイス１０５への指示のことである。プロセッサ１０４は随時、プロセッサ１０４の制御デバイス１０５に対する処理要求を、待機状態にある制御ボード１０２に搭載されているプロセッサ１０７に通知することにより、情報処理装置１００は制御ボード１０１から制御ボード１０２への切り替えを可能としている。
［１．１．２．制御デバイス１０５、１０８］【００２０】
制御デバイス１０５は、プロセッサ１０４の指示に応じて、計算機ハードウェアコンポーネント１０３と通信（データ転送）を行う。より具体的には制御デバイス１０５は、プロセッサ１０４の指示に応じて、システムボード等の計算機ハードウェアコンポーネント１０３内に搭載されたＣＰＵ等のターゲット制御デバイス１１０とデータ転送を行う。また制御デバイス１０５がプロセッサ１０４から指示を受けると、制御デバイス１０５は制御デバイス１０８に対して、プロセッサ１０４からの設定指示、処理開始の指示を回送する。制御デバイス１０８は、制御デバイス１０４と同じステータスを保つことができる。【００２１】
制御デバイス１０５、１０８はＤＭＡ（Ｄｉｒｅｃｔ  Ｍｅｍｏｒｙ  Ａｃｃｅｓｓ）転送における、データ転送元であるメモリとデータ転送先であるＤＭＡスレーブとの間におけるＤＭＡ転送を制御する、ＤＭＡマスタの機能を有するデバイスである。つまり制御デバイス１０５は、ＤＭＡスレーブであるターゲット制御デバイス１１０とメモリ１０６との間でプロセッサ１０４を介さずにＤＭＡ転送を行う。同様にして、制御デバイス１０８は、ＤＭＡスレーブであるターゲット制御デバイス１１０とメモリ１０９との間でデータ転送を行う場合、プロセッサ１０７を介さずにＤＭＡ転送を行う。制御デバイス１０５が計算機ハードウェアコンポーネント１０３にデータを転送し、その応答を計算機ハードウェアコンポーネント１０３から受信すると、制御デバイス１０８も計算機ハードウェアコンポーネント１０３からの応答を受信する。待機状態の制御デバイス１０８は、計算機ハードウェアコンポーネント１０３に対しては、データの転送は行わない。【００２２】
以下、図９を用いて制御デバイス１０５について詳細に説明する。制御デバイス１０８も図９に示す制御デバイス１０５と同様の構成である。【００２３】
図９は、本実施例に係る制御デバイス１０５のハード構成図である。制御デバイス１０５は、ローカルバス制御部９０１、データサイズレジスタ９０２、ターゲットアドレスレジスタ９０３、メモリアドレスレジスタ９０４、ステータスレジスタ９０５、終了ステータスレジスタ９０６、エラーステータスレジスタ９０７、二重化制御レジスタ９０８、ＤＭＡ制御部９０９、及び通信インタフェース９１０を備える。ローカルバス制御部９０１は、データサイズレジスタ９０２、ターゲットアドレスレジスタ９０３、メモリアドレスレジスタ９０４、ステータスレジスタ９０５、終了ステータスレジスタ９０６、エラーステータスレジスタ９０７、二重化制御レジスタ９０８、ＤＭＡ制御部９０９、及び通信インタフェース９１０と接続している。またＤＭＡ制御部９０９は、データサイズレジスタ９０２、ターゲットアドレスレジスタ９０３、メモリアドレスレジスタ９０４、ステータスレジスタ９０５、終了ステータスレジスタ９０６、エラーステータスレジスタ９０７と接続している。【００２４】
ローカルバス制御部９０１は、プロセッサ１０４、メモリ１０６と接続している。なお図９においてプロセッサ１０４、メモリ１０６は図示していない。またローカルバス制御部９０１は、通信インタフェース９１０を介して、プロセッサ１０４から受信した処理要求、つまり各レジスタの設定指示、処理開始の指示などを、制御デバイス１０８に送信する。より具体的には、ローカルバス制御部９０１は、プロセッサ１０４から受信した処理要求を、制御デバイス１０８が有する通信インタフェース）に通信インタフェース９１０を介して送信する。通信インタフェース９１０は、制御デバイス１０８の通信インタフェースと接続している。本実施例では通信インタフェース９１０と制御デバイス１０８の通信インタフェースの接続形態はＩ２Ｃ（Ｉｎｔｅｒ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）バスやＪＴＡＧ（Ｊｏｉｎｔ  Ｔｅｓｔ  Ａｒｃｈｉｔｅｃｔｕｒｅ  Ｇｒｏｕｐ）等のシリアルラインで接続される形態であり、データの送信ラインとデータの受信ラインで接続している。【００２５】
データサイズレジスタ９０２は、制御デバイス１０５がターゲット制御デバイス１１０に転送するデータのサイズを保持するレジスタである。ライトシーケンスにおいて、制御デバイス１０５が、プロセッサ１０４より、メモリ１０６に格納してあるデータを計算機ハードウェアコンポーネントへ転送する指示を受けると、データサイズレジスタ９０２に転送データのサイズをセットする。【００２６】
また制御デバイス１０５が、リードシーケンスにおいて、プロセッサ１０４より、計算機ハードウェアコンポーネント１０３からメモリ１０６へ格納するデータを転送する指示を受けると、データサイズレジスタ９０２に転送データのサイズをセットする。制御デバイス１０５がＤＭＡ転送を実行すると、データサイズレジスタ９０２にセットされたデータサイズが、転送完了したデータのサイズ分だけ減算されていく。ＤＭＡ制御部９０９がデータサイズレジスタ９０２にセットしたデータサイズを減算する。ＤＭＡ制御部９０９がデータサイズレジスタ９０２にセットしたデータサイズを減算し、ゼロになった時点にＤＭＡ転送を停止する。【００２７】
ターゲットアドレスレジスタ９０３は、制御デバイス１０５がデータを転送する先の計算機ハードウェアコンポーネント１０３に搭載されたＡＳＩＣ１１１、１１２などの電子部品のアドレスを保持するレジスタである。ローカルバス制御部９０１が、ターゲットアドレスレジスタ９０３にアドレスをセットする。ＤＭＡ制御部９０９は、ターゲットアドレスレジスタ９０３に保持するアドレスをコマンドパケットに含めて、ターゲット制御デバイス１１０に送信する。コマンドパケットは、制御デバイス１０５がターゲット制御デバイス１１０へ送信する命令を含むパケットであり、制御デバイス１０５が、ターゲット制御デバイス１１０に対してデータ転送を開始することを通知するパケットである。【００２８】
メモリアドレスレジスタ９０４は、メモリ１０６のアドレスをセットするレジスタである。メモリアドレスレジスタ９０４にセットされるメモリ１０６のアドレスは、制御デバイス１０５がＤＭＡ転送によりデータを書く込む先のメモリ１０６のアドレス、またはＤＭＡ転送によりデータを読み出す先のメモリ１０６のアドレスである。【００２９】
ステータスレジスタ９０５は、制御デバイス１０５が実行するＤＭＡ転送のステータスを保持するレジスタである。ステータスレジスタ９０５に保持するステータスは、制御デバイス１０５がターゲットにアクセスしていることを示すアクセス実行中のステータス、制御デバイス１０５がターゲット制御デバイス１１０に発行したコマンド内容が無効になったことを示す実行中止ステータス、または制御デバイス１０５が実行するアクセスがどのくらい進んでいるかを示す進行状況ステータスである。進行状況ステータスは複数種類あり、制御デバイス１０５が実行するアクセスが進んだ割合に応じて、割り当てられた進行状況コードによって実行しているアクセスの進行状況が区別される。【００３０】
終了ステータスレジスタ９０６は、制御デバイス１０５が実行するＤＭＡ転送の終了時を示すステータスを保持するレジスタである。終了ステータスレジスタ９０６が保持するステータスは、ＤＭＡ転送が正常に終了したことを示す正常終了ステータス、またはＤＭＡ転送でエラーが発生して終了したことを示すエラー終了ステータスである。【００３１】
エラーステータスレジスタ９０７は、ＤＭＡ転送がエラー終了した場合に、どのようなエラーで終了したかを示すステータスを保持するレジスタである。エラーステータスレジスタ９０７が保持するステータスは、ターゲットが受信したパケットに問題があることを示すＮａｃｋ（Ｎｅｇａｔｉｖｅ  ａｃｋｎｏｗｌｅｄｇｅｍｅｎｔ）パケットを制御デバイス１０５がターゲットから受信したことを示すＮａｃｋ受信ステータス、ターゲットから所定時間内に制御デバイス１０５に対する応答がなくタイムアウトになったことを示すタイムアウトステータス、またはローカルバス制御部９０１が転送データにパリティエラーを検出したことを示すパリティエラーステータスである。【００３２】
二重化制御レジスタ９０８は、制御ボード１０１が動作状態、また待機状態を示す稼動ステータス情報を保持するレジスタで、他方の制御ボード１０２に搭載されている制御デバイス１０８が動作状態であることを示すステータス信号を制御デバイス１０８から受信可能である。以下、動作状態を示す稼動ステータス情報をアクティブ情報、待機状態を示す稼動ステータス情報をスタンバイ情報と呼ぶ。そして二重化制御レジスタ９０８が保持する情報により、制御デバイス１０５は制御ボード１０１の状態、つまり動作状態、または待機状態を制御する。【００３３】
二重化制御レジスタ９０８は保持している制御デバイス１０５のステータス情報をアクティブ情報からスタンバイ情報に変えると、制御デバイス１０５の二重化制御レジスタ９０８は、制御デバイス１０８へ、ステータス情報に対応するステータス信号を送信する。制御デバイス１０８が搭載する二重化制御レジスタは、制御デバイス１０５の二重化制御レジスタ９０８からステータス信号を受信すると、保持しているスタンバイ情報をアクティブ情報に変える。また二重化制御レジスタ９０８が制御デバイス１０８からステータス信号を受信した場合、二重化制御レジスタ９０８は保持していたスタンバイ情報をアクティブ情報に変える。【００３４】
また二重化制御レジスタ９０８は、制御デバイス１０８が搭載する二重化制御レジスタから強制カット信号を受信する機能を有し、また制御デバイス１０８が搭載する二重化制御レジスタへ強制カット信号を送信する機能を有している。強制カット信号は、ＤＭＡ制御部９０９から制御デバイス１０８のＤＭＡ制御部へのデータ送信を強制的に停止する信号、または制御デバイス１０８のＤＭＡ制御部からＤＭＡ制御部９０９へのデータ送信を強制的に停止する信号である。また本実施例では二重化制御レジスタ９０８は、制御ボード１０２が搭載するＬＥＤ（図示せず）を点灯させるＬＥＤ点灯信号を制御ボード１０２へ送信する機能を有している。【００３５】
同様に、制御デバイス１０８が搭載する二重化制御レジスタは、制御ボード１０１が搭載するＬＥＤ（図示せず）を点灯させるＬＥＤ点灯信号を制御ボード１０１へ送信する機能を有している。本実施例において、制御ボードのＬＥＤの点灯は、制御ボードが動作状態にあることを示す。これにより情報処理装置１００のユーザ、管理者は、制御ボード１０１または制御ボード１０２のどちらの制御ボードが動作状態にあるかを容易に認識することができる。【００３６】
ＤＭＡ制御部９０９は、メモリ１０６からターゲット制御デバイスへのデータ送信（ＤＭＡ転送）、ターゲット制御デバイスからメモリ１０６へのデータ受信（ＤＭＡ転送）を行うユニットである。【００３７】
またＤＭＡ制御部９０９は、データサイズレジスタ９０２にセットしたデータサイズの減算、ターゲットアドレスレジスタ９０３に保持するアドレスの読み出し、メモリアドレスレジスタ９０４に保持するアドレスの読み出しを行う。さらにＤＭＡ制御部９０９はステータスレジスタ９０５、終了ステータスレジスタ９０６、及びエラーステータスレジスタ９０７それぞれに対してステータス情報を送信する。またＤＭＡ制御部９０９は、故障検出回路（不図示）を有する。故障検出回路は、データ転送路の断線等、データ転送路の故障を検出すると、故障検出フラグをセットする。そしてＤＭＡ制御部９０９は、故障検出フラグの値を故障検出信号としてローカルバス制御部９０１に送る。ローカルバス制御部９０１は、故障検出信号をプロセッサ１０４に送り、プロセッサ１０５が二重化制御レジスタ９０８に保持するステータス情報をアクティブ情報からスタンバイ情報に変えることを指示する。二重化制御レジスタ９０８は、保持するステータス情報をアクティブ情報からスタンバイ情報に変える。二重化制御レジスタ９０８は制御デバイス１０８へ、変更したステータス情報を示すステータス信号を送信する。制御デバイス１０８が搭載する二重化制御レジスタは、制御デバイス１０５の二重化制御レジスタ９０８からステータス信号を受信すると、保持していたステータス情報をスタンバイ情報からアクティブ情報に変える。なお情報処理装置１００は、故障検出回路が検出するデータ転送路の故障以外にも、搭載するソフトウェアの実行不良などのエラーが発生した場合にも制御ボード１０２を動作状態に切り替える。【００３８】
制御デバイス１０５が搭載する通信インタフェース９１０は、制御デバイス１０８が搭載する通信インタフェースとシリアルラインで接続されている。制御ボード１０１が動作状態である場合、通信インタフェース９１０は制御デバイス１０５が行っている処理に関する情報を、制御デバイス１０８が搭載する通信インタフェースへ通知する。同様に、制御ボード１０２が動作状態である場合、制御デバイス１０８が搭載する通信インタフェースは、制御デバイス１０８が行っている処理に関する情報を、通信インタフェース９１０へ通知する。通信インタフェース９１０が通知する制御デバイス１０５が行っている処理に関する情報とは、図９の例では制御デバイス１０５が実行するＤＭＡ転送における各レジスタ９０２〜９０７に保持する情報である。【００３９】
本実施例に係る情報処理装置１００は、制御デバイス１０５と制御デバイス１０８との間に通信パスを有する。そして制御デバイス１０５は、制御デバイス１０５がプロセッサ１０４からの処理要求に応じて、実行するデータ転送（ライト／リード処理）の状況（ステータス）を、制御デバイス１０８に通知する。【００４０】
これにより、制御デバイス１０８のステータスを制御デバイス１０５が実行している処理状態に更新することができる。そのため、制御ボード１０１を動作状態から待機状態へ、制御ボード１０２を待機状態から動作状態へそれぞれ切り替えた場合でも、制御デバイス１０５が実行していた処理を効率よくスムーズに制御デバイス１０８に引き継ぐことができる。
［１．１．３．メモリ１０６、１０９］【００４１】
メモリ１０６は、制御デバイス１０５がターゲット制御デバイス１１０からリードするデータ、制御デバイス１０５がターゲット制御デバイス１１０にライトするデータを格納する記憶部である。メモリ１０９は、制御デバイス１０８がターゲット制御デバイス１１０からリードするデータ、制御デバイス１０８がターゲット制御デバイス１１０にライトするデータを格納する記憶部である。
［１．２．計算機ハードウェアコンポーネント１０３］【００４２】
上述したように計算機ハードウェアコンポーネント１０３は、ターゲット制御デバイス１１０を有している。ターゲット制御デバイス１１０は制御デバイス１０５、１０８と接続している。ターゲット制御デバイス１１０は、ＡＳＩＣ１１１、１１２などのカスタムＬＳＩと接続している。【００４３】
ターゲット制御デバイス１１０はＤＭＡマスタの機能を有し、計算機ハードウェアコンポーネント１０３に搭載するＣＰＵを介さず、制御デバイス１０５、１０８との間でのＤＭＡ転送を行う。
［１．３．制御デバイス１０５とターゲット制御デバイス１１０の接続形態］【００４４】
図２は制御デバイス１０５とターゲット制御デバイス１１０の接続形態を示す図である。図３は制御デバイス３０１とターゲット制御デバイス３０２、３０３の接続形態を示す図である。図４は制御デバイス４０１とターゲット制御デバイス４０２、４０３の接続形態を示す図である。図３、図４は１つの制御デバイスと複数のターゲット制御デバイスを接続する形態を示す図でもある。【００４５】
本実施例では図２に示すように、制御デバイス１０５はターゲット制御デバイス１１０とＩ２Ｃ等のシリアルラインで接続されている。制御デバイス１０５と制御デバイス１１０はシリアルラインで接続することによって、情報処理装置１００は、データ送受信を高速に行うことができる。制御デバイス１０５と制御デバイス１１０はシリアルラインで接続することにより、制御デバイス１０５と制御デバイス１１０がパラレルラインで接続するよりも信号線の数を少なくして制御デバイス１０５、１１０間を接続することができる。【００４６】
図５は本実施例に係るコマンドパケット５００の構成図である。リードデータパケット、及びライトデータパケットもコマンドパケット５００と同様な構成になっている。【００４７】
コマンドパケット５００は、制御デバイス１０５がターゲットへ命令を送信するパケットであり、データ転送を例に取れば、制御デバイス１０５がターゲット制御デバイス１１０を介して、ターゲットに対してデータ転送を開始することを通知するパケットである。より具体的には、コマンドパケット５００は、ＤＭＡ制御部９０９がターゲット制御デバイス１１０のＤＭＡ制御部に対して、データ転送を開始することを通知するパケットである。【００４８】
コマンドパケット５００はＳＯＰ（Ｓｔａｒｔ  Ｏｆ  Ｐａｃｋｅｔ）５０１、ヘッダ５０２、データ５０３、ＣＲＣ（Ｃｙｃｌｉｃ  Ｒｅｄｕｎｄａｎｃｙ  Ｃｈｅｃｋ：巡回冗長検査）５０４、及びＥＯＰ（Ｅｎｄ  ｏｆ  Ｐａｃｋｅｔ）５０５より構成される。ＳＯＰ５０１は、パケットの先頭位置を示す情報である。ヘッダ５０２は、データ５０３の内容が属する種類を示す情報であり、コマンドパケットであることを識別する情報を含む。データ５０３は、コマンドパケット５００で通知される命令の内容を示す情報である。ＣＲＣ５０４は、ヘッダ５０２、及びデータ５０３のエラーをチェックするための情報である。ＣＲＣは、ビット列を多項式の係数に見立て、あらかじめ定めた生成多項式で割り切れるように、余りを付加してデータを転送し、受信側で割り切れなかったら誤りがあると判断するエラーチェックである。ＥＯＰ５０５は、パケットの終端位置を示す情報である。ライトデータ、リードデータの場合、データ５０３がそれぞれライトデータ、リードデータの内容を示す情報である。またヘッダ５０２を参照して、パケットを受信した制御デバイスはそのパケットがライトデータかリードデータかを識別する。【００４９】
図６は本実施例に係るＡｃｋ（Ａｃｋｎｏｗｌｅｄｇｅｍｅｎｔ）パケット６００の構成図である。ＮａｃｋパケットもＡｃｋパケット６００と同等の構成である。【００５０】
Ａｃｋパケット６００は、ターゲットと制御デバイス１０５、１０８との間で、受信したパケットに対する応答確認のために、一方から他方へ返信するパケットである。例えば、コマンドパケット５００を受信したターゲットがターゲット制御デバイス１１０のＤＭＡ制御部を介して、制御デバイス１０５のＤＭＡ制御部９０９、及び制御デバイス１０８のＤＭＡ制御部に返信するパケットである。そしてＡｃｋパケット６００は、ターゲット、あるいは制御デバイス１０５、１０８が、相手から送信されたパケットを正常に受信したことを示す応答パケットである。【００５１】
図６に示すようにＡｃｋパケット６００は、ＳＯＰ６０１、ヘッダ６０２、ＣＲＣ６０３、及びＥＯＰ６０４から構成されている。ＳＯＰ６０１はパケットの先頭位置を示す情報である。ヘッダ６０２はパケットがＡｃｋパケットであることを示す情報を含む。ＣＲＣ６０３は、ヘッダ６０２のエラーをチェックするための情報である。ＥＯＰ６０４はパケットの終端位置を示す情報である。【００５２】
Ｎａｃｋパケットも、ターゲットと制御デバイス１０５、１０８との間で、受信したパケットに対する応答確認のために、一方から他方へ返信するパケットである。Ｎａｃｋパケットは、例えばコマンドパケット５００を受信したターゲットが、ターゲット制御デバイス１１０のＤＭＡ制御部を介して、制御デバイス１０５のＤＭＡ制御部９０９、及び制御デバイス１０８のＤＭＡ制御部に返信するパケットであり、ターゲットがエラーのあるパケットを受信したことを示す応答パケットである。Ｎａｃｋパケットも、Ａｃｋパケットと同様にＳＯＰ、ヘッダ、ＣＲＣ、及びＥＯＰから構成されている。【００５３】
図７、及び図８は本実施例に係る制御ボード１０１（制御デバイス１０５）と計算機ハードウェアコンポーネント１０３（ターゲット制御デバイス１１０）との間のパケット送受信シーケンスである。図７は、制御ボード１０１が計算機ハードウェアコンポーネント１０３へデータを書き込むライトシーケンスである。図８は、制御ボード１０１が計算機ハードウェアコンポーネント１０３からデータを読み出すリードシーケンスである。【００５４】
まず図７に記載のライトシーケンスについて説明する。制御ボード１０１は、計算機ハードウェアコンポーネント１０３に対して、命令となるコマンドパケットを送信する（ステップＳ７０１）。計算機ハードウェアコンポーネント１０３は、制御ボード１０１に対して、コマンドパケットへの応答としてＡｃｋパケットを返信する（ステップＳ７０２）。制御ボード１０１がＡｃｋパケットを受信すると、制御ボード１０１はライトデータ（ライトパケット）を計算機ハードウェアコンポーネント１０３に送信する（ステップＳ７０３）。計算機ハードウェアコンポーネント１０３は、制御ボード１０１に対して、ライトデータへの応答としてＡｃｋパケットを返信する（ステップＳ７０４）。制御ボード１０１は更に、ライトデータを計算機ハードウェアコンポーネント１０３に送信する（ステップＳ７０５）。計算機ハードウェアコンポーネント１０３は、制御ボード１０１に対して、ライトデータへの応答としてＡｃｋパケットを返信する（ステップＳ７０６）。【００５５】
次に図８に記載のリードシーケンスについて説明する。【００５６】
制御ボード１０１は、計算機ハードウェアコンポーネント１０３に対して、コマンドパケットを送信する（ステップＳ８０１）。計算機ハードウェアコンポーネント１０３は、制御ボード１０１に対して、コマンドパケットに対する応答としてのＡｃｋパケットを返信する（ステップＳ８０２）。そして計算機ハードウェアコンポーネント１０３は、リードデータ（リードパケット）を制御ボード１０１に送信する（ステップＳ８０３）。制御ボード１０１は、計算機ハードウェアコンポーネント１０３に対して、リードデータへの応答としてＡｃｋパケットを返信する（ステップＳ８０４）。計算機ハードウェアコンポーネント１０３は更に、リードデータを制御ボード１０１に送信する（ステップＳ８０５）。制御ボード１０１は、計算機ハードウェアコンポーネント１０３に対して、リードデータへの応答としてＡｃｋパケットを返信する（ステップＳ８０６）。【００５７】
図７に記載のライトシーケンス、及び図８に記載のリードシーケンスにおいて、計算機ハードウェアコンポーネント１０３は制御ボード１０２に対しても、Ａｃｋパケットを送信する。【００５８】
図７に記載のライトシーケンス、及び図８に記載のリードシーケンスにおいて、計算機ハードウェアコンポーネント１０３が受信したパケット（ライトパケット、リードパケット）にエラーがあると判別する場合には、計算機ハードウェアコンポーネント１０３は制御ボード１０１へ、エラーを検出した旨の応答としてＮａｃｋパケットを返信している。
［１．４．制御デバイス間の接続形態］【００５９】
図１０は本実施例に係る制御デバイス１０５と制御デバイス１０８の接続形態を示す図である。制御デバイス１０５と制御デバイス１０８とは、送信を行う単方向のシリアルラインと受信を行うシリアルラインとの１組のシリアルラインで接続している。制御デバイス１０５と制御デバイス１０８は、シリアルラインで接続することによって、データ送受信をすることができ、互いの状態を効率的に共有することができる。【００６０】
図１１は、本実施例に係る制御デバイス１０５と制御デバイス１０８との間で送受信するパケット１１００の構成図である。【００６１】
パケット１１００はＳＯＰ１１０１、ヘッダ１１０２、アドレス１１０３、ライトデータ１１０４、ＣＲＣ１１０５、及びＥＯＰ１１０６より構成される。ＳＯＰ１１０１は、パケットの先頭位置を示す情報である。ヘッダ１１０２は、ライトデータ１１０４の内容が属する種類を示す情報を含む。アドレス１１０３は、相手先、つまり制御デバイス１０５、若しくは制御デバイス１０８を示すアドレスの情報である。ライトデータ１１０４は、パケット１１００の内容を示す情報である。ＣＲＣ１１０５は、ライトデータ１１０４のエラーをチェックするための情報である。ＥＯＰ１１０６は、パケットの終端位置を示す情報である。【００６２】
図１２は、本実例に係る制御デバイス１０５と制御デバイス１０８との同期シーケンス図である。同期シーケンスとは、制御デバイス１０５と制御デバイス１０８とのＤＭＡ転送の処理状態を同じ状態にする迄の一連の流れをいう。処理状態は、制御デバイス１０５、１０８が搭載する各レジスタの保持するＤＭＡ転送処理に関する情報をいう。各レジスタが保持する情報の詳細については、［１．１．２．制御デバイス１０５、１０８］における各レジスタの説明箇所に記載する。【００６３】
図１２に記載の同期シーケンスは、制御ボード１０１が動作状態にあり、制御デバイス１０５が制御デバイス１０８対して、制御デバイス１０５のステータスを通知して同期するシーケンス図である。制御ボード１０２が動作状態の場合は、図１２に記載の同期シーケンスと同様に制御デバイス１０８が制御デバイス１０５対して、制御デバイス１０８のステータスを通知して同期を取る。【００６４】
プロセッサ１０４が制御デバイス１０５に対して、データの書き込み、又は読み出しを指示すると（ステップＳ１２０１）、制御デバイス１０５は制御デバイス１０８に対して、データの書き込み又は読み出しを命令するコマンドパケットを送信し、続いてデータパケットを送信する（ステップＳ１２０２）。そして制御デバイス１０８は、制御デバイス１０５から受信したパケットのライトデータを用いて、制御デバイス１０８が搭載する各レジスタの保持するデータを更新し、制御デバイス１０５のステータスを反映する（ステップＳ１２０３）。【００６５】
図１３は、本実施例に係る制御デバイス１０５と制御デバイス１０８の応答シーケンス図である。応答シーケンスは、計算機ハードウェアコンポーネント１０３から制御デバイス１０５、１０８へ、制御デバイスから受信したコマンドパケットに対するデータパケットを送信し、制御デバイス１０５、１０８がそのパケットにＡｃｋパケットにより応答するシーケンスである。【００６６】
計算機ハードウェアコンポーネント１０３が制御デバイス１０５にパケット（リードデータなど）を送信する（Ｓ１３０１）とともに、制御デバイス１０８にパケット（リードデータなど）を送信する（Ｓ１３０２）。計算機ハードウェアコンポーネント１０３からのパケットを受信すると、制御デバイス１０５は計算機ハードウェアコンポーネント１０３へＡｃｋパケットを返信する（ステップＳ１３０３）。一方、コマンドの発行元ではない制御デバイス１０８は、計算機ハードウェアコンポーネント１０３へＡｃｋパケットを返信しない。【００６７】
ここで制御ボード１０１が動作状態であり、制御ボード１０２が待機状態である。
［２．ライトシーケンス］【００６８】
次に情報処理装置１００の具体的な動作シーケンスについて説明する。
図１４は本実施例に係る情報処理装置１００のライト処理のシーケンス図である。ライト処理は、制御ボード１０１が計算機ハードウェアコンポーネント１０３のターゲットにデータを書き込む処理である。情報処理装置１００がデータのライト処理を実行するにあたって、プロセッサ１０４がメモリ１０６にライトデータを準備する（ステップＳ１４０１）。より具体的にはステップＳ１４０１において、プロセッサ１０４はメモリ１０６に保持するデータのうち、計算機ハードウェアコンポーネント１０３に書き込むデータを指定する。そしてプロセッサ１０４は、制御ボード１０２に搭載されたプロセッサ１０７にライトデータを送信し（ステップＳ１４０２）、プロセッサ１０７を介して、待機状態のメモリ１０９にライトデータを格納する（Ｓ１４０３）。【００６９】
そしてプロセッサ１０４は、制御デバイス１０５に対して、パケットを送信して制御デバイス１０５内の各レジスタの設定を指示し（ステップＳ１４０４）、ライト処理の開始を指示する（ステップＳ１４０５）。制御デバイス１０５は、制御デバイス１０５内の各レジスタの設定を制御デバイス１０８内の各レジスタ内に反映する（ステップＳ１４０６）。制御デバイス１０５は、プロセッサ１０４からあったコマンドパケットによる設定指示に基づき、ＤＭＡ転送の開始指示のコマンドパケットを制御デバイス１０８へ回送する（ステップＳ１４０７）。【００７０】
制御デバイス１０５は、ステータスレジスタ９０５に保持する進行状況ステータスを「ライトコマンド開始」とする。そして制御デバイス１０５は、ターゲット制御デバイス１１０に対して、コマンドパケットを送信する（ステップＳ１４０８）。ターゲット制御デバイス１１０は、制御デバイス１０８へコマンドパケットに対する応答としてＡｃｋパケットを返信する（ステップＳ１４０９）。合わせて、ターゲット制御デバイス１１０は、制御デバイス１０５へＡｃｋパケットを送信する（ステップＳ１４１０）。
【００７１】
制御デバイス１０５はコマンドパケットに対する応答としてターゲット制御デバイス１１０からＡｃｋパケットを受信すると、ステータスレジスタ９０５の進行状況ステータスを「コマンド送信済」とする。そして制御デバイス１０５は、メモリ１０６からライトデータを読み出し（ステップＳ１４１１）、ライトパケットをターゲット制御デバイス１１０に送信する（ステップＳ１４１２）。ターゲット制御デバイス１１０は、ライトパケットに対する応答としてＡｃｋパケットを制御デバイス１０８に返信する（ステップＳ１４１３）とともに、Ａｃｋパケットを制御デバイス１０５にも送信する（ステップＳ１４１４）。同様にして引き続き、制御デバイス１０５は、メモリ１０６からライトデータを読み出し（ステップＳ１４１５）、ライトパケットをターゲット制御デバイス１１０に送信する（ステップＳ１４１６）。ターゲット制御デバイス１１０は、ライトパケットに対する応答としてＡｃｋパケットを制御デバイス１０８、１０５に返信する（ステップＳ１４１７、１４１８）。制御デバイス１０５は、ライトデータをすべてターゲット制御デバイス１１０に書き込み完了すると、制御デバイス１０５はＤＭＡ終了通知をプロセッサ１０４に送信する（ステップＳ１４１９）。
［３．リードシーケンス］
【００７２】
図１５は本実施例に係る情報処理装置１００のリード処理のシーケンス図である。リード処理は、制御ボード１０１が計算機ハードウェアコンポーネント１０３のターゲットからデータを読み出す処理である。【００７３】
情報処理装置１００がデータのリード処理を実行するにあたって、プロセッサ１０４は、制御デバイス１０５に対して、パケットを送信して制御デバイス１０５内の各レジスタの設定を指示し（ステップＳ１５０１）、さらにパケットを送信してリード処理の開始を指示する（ステップＳ１５０２）。制御デバイス１０５は、プロセッサ１０４からあった設定指示、開始指示のコマンドパケットを制御デバイス１０８へ回送する（ステップＳ１５０３、１５０４）。制御デバイス１０８は、制御デバイス１０５のステータスを反映する。【００７４】
制御デバイス１０５は、ステータスレジスタ９０５に保持する進行状況ステータスを「リードコマンド開始」とする。そして制御デバイス１０５は、ターゲット制御デバイス１１０に対して、命令としてのコマンドパケットを送信する（ステップＳ１５０５）。ターゲット制御デバイス１１０は、制御デバイス１０８、１０５へコマンドパケットに対する応答としてのＡｃｋパケットを返信する（ステップＳ１５０６、Ｓ１５０７）。制御デバイス１０５はＡｃｋパケットを受信すると、ステータスレジスタ９０５の進行状況ステータスを「コマンド送信済」とする。
【００７５】
そして制御デバイス１０５は、計算機ハードウェアコンポーネント１０３のターゲットからリードデータを読み出し（ステップＳ１５０９）、メモリ１０６にリードデータを格納する（ステップＳ１５１１）。また制御デバイス１０８も計算機ハードウェアコンポーネント１０３のターゲットからリードデータを読み出し（ステップＳ１５０８）、メモリ１０９にリードデータを格納する（ステップＳ１５１０）。制御デバイス１０５は、ステータスレジスタ９０５の進行状況ステータスを「データ受信済」とし、データサイズレジスタ９０２にセットしたデータサイズを受信したリードデータ分だけ減算して更新する。同様にして制御デバイス１０８も、制御デバイス１０８が搭載するステータスレジスタの進行状況ステータスを「データ受信済」とし、制御デバイス１０８が搭載するデータサイズレジスタにセットしたデータサイズを受信したリードデータ分だけ減算して更新する。そして制御デバイス１０５は、コマンドパケットに対する応答としてのＡｃｋパケットを計算機ハードウェアコンポーネント１０３に返信する（ステップＳ１５１２）。同様にして制御デバイス１０５は、計算機ハードウェアコンポーネント１０３のターゲットからリードデータを読み出し（ステップＳ１５１４）、メモリ１０６にリードデータを格納する（ステップＳ１５１６）。また制御デバイス１０８も計算機ハードウェアコンポーネント１０３のターゲットからリードデータを読み出し（ステップＳ１５１３）、メモリ１０９にリードデータを格納する（ステップＳ１５１５）。制御デバイス１０５は、ステータスレジスタ９０５の進行状況ステータスを「データ受信済」とし、データサイズレジスタ９０２にセットしたデータサイズを受信したリードデータ分だけさらに減算して更新する。同様にして制御デバイス１０８も、制御デバイス１０８が搭載するステータスレジスタの進行状況ステータスを「データ受信済」とし、制御デバイス１０８が搭載するデータサイズレジスタにセットしたデータサイズを受信したリードデータ分だけさらに減算して更新する。そして制御デバイス１０５は、Ａｃｋパケットを計算機ハードウェアコンポーネント１０３に返信する（ステップＳ１５１７）。制御デバイス１０５は、リードデータをすべてターゲット制御デバイス１１０から読み出し完了したことにより、データサイズレジスタ９０２がゼロになった時点で、制御デバイス１０５はＤＭＡ終了通知をプロセッサ１０４に送信する（ステップＳ１５１８）。【００７６】
なお情報処理装置１００は制御ボード１０１、１０２以外にも、制御ボードを搭載してもよく、より多くの制御ボードを搭載することによって、情報処理装置１００の通信障害に対する信頼性を増すことができる。【００７７】
また本実施例において、情報処理装置１００は１つの計算機ハードウェアコンポーネント１０３のみ搭載しているが、より多くのシステムボード等の計算機ハードウェアコンポーネントを搭載してもよく、より多くの計算機ハードウェアコンポーネントを搭載することによって、情報処理装置１００の計算処理能力を向上することができる。
【産業上の利用可能性】
【００７８】
本発明による情報処理装置は、冗長化した制御ボードを切り替える場合、制御ボードが実行する制御処理を効率よく移行するものである。そして本発明による情報処理装置は、搭載する冗長構成した制御ボードを切り替える上で極めて有用である。
【図１】
0005516569.tif 000002
【図２】
0005516569.tif 000003
【図３】
0005516569.tif 000004
【図４】
0005516569.tif 000005
【図５】
0005516569.tif 000006
【図６】
0005516569.tif 000007
【図７】
0005516569.tif 000008
【図８】
0005516569.tif 000009
【図９】
0005516569.tif 000010
【図１０】
0005516569.tif 000011
【図１１】
0005516569.tif 000012
【図１２】
0005516569.tif 000013
【図１３】
0005516569.tif 000014
【図１４】
0005516569.tif 000015
【図１５】
0005516569.tif 000016