(57)【要約】【課題】データ中継装置の多重化に際して、システム全体を停止することなく、新しいデータ中継装置を組み込むことを課題とする。【解決手段】設定情報が未だ設定されていないデータ中継装置が新たに組み込まれた場合に、既存のデータ中継装置の設定情報を新たに組み込まれたデータ中継装置に反映し、リクエスト制御装置に対して、データ中継装置へのリクエストの送信を停止し、データ中継装置からリクエスト終了通知を受信した場合に、複数のデータ中継装置に対して、起動を開始するように指示し、リクエスト制御装置に対して、データ中継装置へのリクエストの送信を開始し、データ中継装置は、制御装置によってリクエストの送信およびリクエスト応答の受信が停止された後に、既に受信したリクエストにより実行される処理が終了すると、リクエスト終了通知を制御装置に送信する。【選択図】        図１
2008046878.tif 000002
【特許請求の範囲】
【請求項１】
共通の設定情報が設定された複数のデータ中継装置それぞれにリクエスト制御装置を接続するとともに、前記複数のデータ中継装置およびリクエスト制御装置に制御装置を接続して構成され、前記リクエスト制御装置の制御下にある各種装置から得られたリクエストを前記複数のデータ中継装置を介して前記リクエスト制御装置に送信するとともに、前記リクエストに対して前記各種装置から得られたリクエスト応答を前記複数のデータ中継装置を介して前記リクエスト制御装置に送信するデータ処理システムであって、
前記制御装置は、
前記設定情報が未だ設定されていないデータ中継装置が新たに組み込まれた場合に、既存のデータ中継装置から前記設定情報を取得し、前記新たに組み込まれたデータ中継装置に前記設定情報を反映する設定情報反映手段と、
前記設定情報反映手段によって設定情報が反映された場合に、前記リクエスト制御装置に対して、前記既存のデータ中継装置への前記リクエストの送信を停止する旨を指示する停止指示手段と、
前記既存のデータ中継装置から前記リクエストにより実行される処理が終了したことを示すリクエスト終了通知を受信した場合に、前記複数のデータ中継装置に対して、起動を開始するように指示する起動開始指示手段と、
前記起動開始指示手段によって起動開始が指示された場合に、前記リクエスト制御装置に対して、前記複数のデータ中継装置への前記リクエストの送信を開始する旨を指示する開始指示手段と、
前記データ中継装置は、
前記制御装置によって前記リクエストの送信および前記リクエスト応答の受信が停止指示された後に、既に受信したリクエストにより実行される処理が終了したか否かを判定し、当該処置が終了したと判定した場合に、前記リクエスト終了通知を前記制御装置に送信するリクエスト終了通知手段と、
を備えたことを特徴とするデータ処理システム。
【請求項２】
前記データ中継装置は、前記各種装置がアクセスするアドレスに応じて所定の動作を行うスヌープ回路を備え、前記設定情報として、当該スヌープ回路の動作条件であるスヌープ条件を決めるための設定情報を記憶するものであって、
前記設定情報反映手段は、前記既存のデータ中継装置から前記スヌープ条件を決めるための設定情報を取得し、前記新たに組み込まれたデータ中継装置に前記設定情報を反映することを特徴とする請求項１に記載のデータ処理システム。
【請求項３】
互いに共通の設定情報を記憶し情報処理装置内の転送データを中継する複数のデータ中継装置が接続される制御装置を有する情報処理装置において、
前記データ中継装置との間の通信を制御する通信制御手段と、
前記制御装置に新たなデータ中継装置が接続された際、すでに前記制御装置に接続されている既存のデータ中継装置より、前記既存のデータ中継装置に記憶されているデータ中継装置の設定情報を読み出すとともに、前記既存のデータ中継装置より読み出した前記設定情報を前記新たなデータ中継装置に書き込む設定情報反映手段と、
を備えたことを特徴とする情報処理装置。
【請求項４】
前記制御装置には、受信したリクエストに対応したリクエスト応答を行うとともに、前記複数のデータ中継装置に対してリクエストを送信し、前記データ中継装置からのリクエスト応答を受信するリクエスト制御装置がさらに接続され、
前記新たなデータ中継装置に前記設定情報が書き込まれた場合に、前記リクエスト制御装置に対して、前記複数のデータ中継装置へのリクエストの送信の停止を指示する停止指示手段を備えたことを特徴とする請求項３に記載の情報処理装置。
【請求項５】
制御装置に接続される複数のデータ中継装置を備える情報処理装置において、
前記データ中継装置は、
前記複数のデータ中継装置に共通の設定情報を記憶する記憶手段と、
前記制御装置との間の通信を制御する通信制御手段と、
前記制御装置からの指示に応じて、リクエストの送信を停止させる制御手段と、
前記制御手段からの指示の受信時点ですでに受信したリクエストが存在する場合、当該リクエストにより実行される処理の終了を判定し、当該処理が終了したと判定されたときに前記制御装置に対してリクエスト終了通知を送信する処理手段と、
を備えたことを特徴とする請求項３または４に記載の情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、共通の設定情報が設定された複数のデータ中継装置それぞれにリクエスト制御装置を接続するとともに、複数のデータ中継装置およびリクエスト制御装置に制御装置を接続して構成され、リクエスト制御装置の制御下にある各種装置から得られたリクエストを複数のデータ中継装置を介してリクエスト制御装置に送信するとともに、リクエストに対して各種装置から得られたリクエスト応答を複数のデータ中継装置を介してリクエスト制御装置に送信するデータ処理システムおよび情報処理装置に関する。
【背景技術】
【０００２】
従来より、各種システムに用いられる計算処理装置（例えば、サーバ、ワークステーション、パーソナルコンピュータなど）では、増加する処理データを高速に処理するためのマルチプロセッサ構成が多く用いられている。
【０００３】
そして、このようなマルチプロセッサ構成において、複数のＣＰＵと、主記憶と、Ｉ／Ｏデバイスとの間では、データ転送速度の高速化などの性能向上を実現するためのデータ中継装置（例えば、クロスバスイッチなど）を用いて接続されるのが一般的である。
【０００４】
また、このように計算処理装置の性能向上を図る一方で、システムダウンなどにより各種処理が中断することは、各種サービスを提供する企業にとっては膨大な損害となる恐れがあるため、例えば、クロスバスイッチが故障した場合に、システムをダウンさせることなく迅速に復旧させるなど、計算処理装置の信頼性を向上させる様々な技術が開示されている。
【０００５】
例えば、一般的には、クロスバスイッチを二重化することで、一つのクロスバスイッチが故障しても、もう片方のクロスバスイッチで継続してシステムを運用する技術が開示されている。
【０００６】
また、特許文献１（特開平１０−１４３４６５号公報）では、クロスバスイッチの入出力ポートを余分に備えさせ、入出力ポートが故障した場合に、故障した入出力ポートと余分の入出力ポートとを切り替えることで、システム全体の信頼性向上を図る技術が開示されている。
【０００７】
【特許文献１】特開平１０−１４３４６５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
ところで、上記した従来の技術では、片方のクロスバスイッチが故障しても、システム全体を停止せずに処理を行うことができるが、例えば、故障したクロスバスイッチに代えて新しいクロスバスイッチを組み込む場合には、システムを停止しなければならないという課題があった。
【０００９】
また、特許文献１では、クロスバスイッチの入出力ポートが故障した場合は、システム全体を停止する必要はないが、例えば、クロスバスイッチ本体が故障した場合は、上記と同様に、故障したクロスバスイッチに代えて新しいクロスバスイッチを組み込むために、システムを停止しなければならないという課題があった。
【００１０】
そこで、この発明は、上述した従来技術の課題を解決するためになされたものであり、データ中継装置の多重化に際して、システム全体を停止することなく、新しいデータ中継装置を組み込むことが可能であるデータ処理システムおよびデータ処理システム制御方法を提供することを目的とする。
【課題を解決するための手段】
【００１１】
上述した課題を解決し、目的を達成するため、請求項１に係る発明は、共通の設定情報が設定された複数のデータ中継装置それぞれにリクエスト制御装置を接続するとともに、前記複数のデータ中継装置およびリクエスト制御装置に制御装置を接続して構成され、前記リクエスト制御装置の制御下にある各種装置から得られたリクエストを前記複数のデータ中継装置を介して前記リクエスト制御装置に送信するとともに、前記リクエストに対して前記各種装置から得られたリクエスト応答を前記複数のデータ中継装置を介して前記リクエスト制御装置に送信するデータ処理システムであって、前記制御装置は、前記設定情報が未だ設定されていないデータ中継装置が新たに組み込まれた場合に、既存のデータ中継装置から前記設定情報を取得し、前記新たに組み込まれたデータ中継装置に前記設定情報を反映する設定情報反映手段と、前記設定情報反映手段によって設定情報が反映された場合に、前記リクエスト制御装置に対して、前記データ中継装置への前記リクエストの送信を停止する旨を指示する停止指示手段と、前記データ中継装置から前記リクエストにより実行される処理が終了したことを示すリクエスト終了通知を受信した場合に、前記複数のデータ中継装置に対して、起動を開始するように指示する起動開始指示手段と、前記起動開始指示手段によって起動開始が指示された場合に、前記リクエスト制御装置に対して、前記データ中継装置への前記リクエストの送信を開始する旨を指示する開始指示手段と、前記データ中継装置は、前記制御装置によって前記リクエストの送信および前記リクエスト応答の受信が停止指示された後に、既に受信したリクエストにより実行される処理が終了したか否かを判定し、当該処置が終了したと判定した場合に、前記リクエスト終了通知を前記制御装置に送信するリクエスト終了通知手段と、を備えたことを特徴とする。
【００１２】
また、請求項２に係る発明は、上記の発明において、前記データ中継装置は、前記各種装置がアクセスするアドレスに応じて所定の動作を行うスヌープ回路を備え、前記設定情報として、当該スヌープ回路の動作条件であるスヌープ条件を決めるための設定情報を記憶するものであって、前記設定情報反映手段は、前記既存のデータ中継装置から前記スヌープ条件を決めるための設定情報を取得し、前記新たに組み込まれたデータ中継装置に前記設定情報を反映することを特徴とする。
【００１３】
また、請求項３に係る発明は、互いに共通の設定情報を記憶し情報処理装置内の転送データを中継する複数のデータ中継装置が接続される制御装置を有する情報処理装置において、前記データ中継装置との間の通信を制御する通信制御手段と、前記制御装置に新たなデータ中継装置が接続された際、すでに前記制御装置に接続されている既存のデータ中継装置より、前記既存のデータ中継装置に記憶されているデータ中継装置の設定情報を読み出すとともに、前記既存のデータ中継装置より読み出した前記設定情報を前記新たなデータ中継装置に書き込む設定情報反映手段と、を備えたことを特徴とする。
【００１４】
また、請求項４に係る発明は、上記の発明において、前記制御装置には、受信したリクエストに対応したリクエスト応答を行うとともに、前記複数のデータ中継装置に対してリクエストを送信し、前記データ中継装置からのリクエスト応答を受信するリクエスト制御装置がさらに接続され、前記新たなデータ中継装置に前記設定情報が書き込まれた場合に、前記リクエスト制御装置に対して、前記複数のデータ中継装置へのリクエストの送信の停止を指示する停止指示手段を備えたことを特徴とする。
【００１５】
また、請求項５に係る発明は、上記の発明において、制御装置に接続される複数のデータ中継装置を備える情報処理装置において、前記データ中継装置は、前記複数のデータ中継装置に共通の設定情報を記憶する記憶手段と、前記制御装置との間の通信を制御する通信制御手段と、前記制御装置からの指示に応じて、リクエストの送信を停止させる制御手段と、前記制御手段からの指示の受信時点ですでに受信したリクエストが存在する場合、当該リクエストにより実行される処理の終了を判定し、当該処理が終了したと判定されたときに前記制御装置に対してリクエスト終了通知を送信する処理手段と、を備えたことを特徴とする。
【発明の効果】
【００１６】
請求項１または３〜５の発明によれば、制御装置は、設定情報が未だ設定されていないデータ中継装置が新たに組み込まれた場合に、既存のデータ中継装置から設定情報を取得し、新たに組み込まれたデータ中継装置に設定情報を反映し、設定情報が反映された場合に、リクエスト制御装置に対して、データ中継装置へのリクエストの送信を停止する旨を指示し、データ中継装置からリクエストにより実行される処理が終了したことを示すリクエスト終了通知を受信した場合に、複数のデータ中継装置に対して、起動を開始するように指示し、起動開始が指示された場合に、リクエスト制御装置に対して、データ中継装置へのリクエストの送信を開始する旨を指示し、データ中継装置は、制御装置によってリクエストの送信およびリクエスト応答の受信が停止指示された後に、既に受信したリクエストにより実行される処理が終了したか否かを判定し、当該処置が終了したと判定した場合に、リクエスト終了通知を制御装置に送信するので、データ中継装置の多重化に際して、システム全体を停止することなく、新しいデータ中継装置を組み込むことが可能である。
【００１７】
例えば、二重化したアドレスクロスバスイッチにおいて、片方が故障してもシステムを停止することなく、故障したアドレスクロスバスイッチに変えて、新しいアドレスクロスバスイッチを組み込むことが可能である。さらに、もともと一重化であったアドレスクロスバスイッチを、システムを停止させることなく二重化にすることが可能である。
【００１８】
また、請求項２の発明によれば、データ中継装置は、各種装置がアクセスするアドレスに応じて所定の動作を行うスヌープ回路を備え、設定情報として、当該スヌープ回路の動作条件であるスヌープ条件を決めるための設定情報を記憶するものであって、既存のデータ中継装置からスヌープ条件を決めるための設定情報を取得し、新たに組み込まれたデータ中継装置に設定情報を反映するので、より細かく処理分担されているデータ中継装置の多重化に際しても、システム全体を停止することなく、新しいデータ中継装置を組み込むことが可能である。例えば、より細かく処理分担されている二重化したアドレスクロスバスイッチにおいても、片方が故障してもシステムを停止することなく、新しいアドレスクロスバスイッチを組み込むことが可能である。
【発明を実施するための最良の形態】
【００１９】
以下に添付図面を参照して、この発明に係るデータ処理システムの実施例を詳細に説明する。なお、以下では、実施例１で用いる主要な用語（用語の説明）、実施例１に係るデータ処理システムの概要および特徴、データ処理システムの構成および処理の流れを順に説明し、最後に実施例１による効果を説明する。
【実施例１】
【００２０】
［用語の説明］
まず最初に、実施例１で用いる主要な用語を説明する。実施例１で用いる「アドレスクロスバスイッチ」とは、データ処理システム（情報処理装置）を構成する要素間におけるデータ転送を中継するものであり、特にノースブリッジ（NorthBridge）やサウスブリッジ（SouthBridge）の制御下にある各ＣＰＵから得られたリクエスト（例えば、データ書き込みや読み込みリクエストなど）をノースブリッジやサウスブリッジに送信するとともに、リクエストに対してノースブリッジやサウスブリッジから得られたリクエスト応答をノースブリッジやサウスブリッジに送信する制御装置である。なお、「アドレスクロスバスイッチ」は、特許請求の範囲に記載の「データ中継装置」に対応する。
【００２１】
具体的には、ノースブリッジからリクエストを受信すると、アドレスクロスバスイッチは、受信したリクエストをアービトレーションして全てのノースブリッジやサウスブリッジにブロードキャストで送信する。その後、送信したリクエストに対応したノースブリッジやサウスブリッジからのリクエスト応答（例えば、キャッシュ情報など）を受信すると、アドレスクロスバスイッチは、それぞれのノースブリッジやサウスブリッジから受信したリクエスト応答をマージして、ノースブリッジやサウスブリッジに、マージしたリクエスト応答を送信する。
【００２２】
また、本実施例で用いる「ノースブリッジ（NorthBridge）」とは、接続される各種装置（例えば、ＣＰＵやメモリなど）を制御しており、そのうちのＣＰＵからリクエストを受信して、リクエスト応答を送信する。具体的には、ＣＰＵからリクエストを受信して、受信した当該リクエストに応答できない場合に、ノースブリッジは、受信したリクエストをアドレスクロスバスイッチに送信し、また、受信した当該リクエストに応答できる場合には、ノースブリッジは、ＣＰＵから受信したリクエストに対するリクエスト応答を当該ＣＰＵに送信する。なお、「ノースブリッジ（NorthBridge）」は、特許請求の範囲に記載の「リクエスト制御装置」に対応する。
【００２３】
また、マージされたリクエスト応答を受信すると、ノースブリッジは、リクエスト送信元のＣＰＵを自身が管理している場合に、受信したリクエスト応答を当該ＣＰＵに送信し、リクエスト送信元のＣＰＵを自身が管理していない場合、当該リクエスト応答を破棄する。
【００２４】
また、アドレスクロスバスイッチからリクエストを受信すると、ノースブリッジは、リクエスト応答を当該アドレスクロスバスイッチに送信する。例えば、アドレスクロスバスイッチからリクエストを受信すると、ノースブリッジは、当該リクエストに応答すべき情報を自身が管理している場合に、キャッシュ情報をリクエスト応答としてアドレスクロスバスイッチに送信し、応答すべき情報を管理していない場合に、管理していない旨のメッセージをリクエスト応答としてアドレスクロスバスイッチに送信する。
【００２５】
また、本実施例で用いる「サウスブリッジ（SouthBridge）」とは、PCIBridgeなどを制御下におき、入出力インターフェースに関する各種情報を制御する制御装置である。具体的には、PCIBridgeなどからリクエストを受信して、リクエスト応答を送信する。また、アドレスクロスバスイッチからリクエストを受信すると、サウスブリッジは、リクエスト応答を当該アドレスクロスバスイッチに送信する。例えば、アドレスクロスバスイッチからリクエストを受信すると、サウスブリッジは、当該リクエストに応答すべき情報を自信が管理している場合に、キャッシュ情報をリクエスト応答としてアドレスクロスバスイッチに送信し、応答すべき情報を管理していない場合に、管理していない旨のメッセージをリクエスト応答としてアドレスクロスバスイッチに送信する。
【００２６】
また、マージされたリクエスト応答を受信すると、サウスブリッジは、リクエスト送信元のPCIBridgeを自身が管理している場合に、受信したリクエスト応答を当該PCIBridgeに送信し、自身が管理していない場合、当該リクエスト応答を破棄する。なお、「サウスブリッジ」は、ノースブリッジと同様に、特許請求の範囲に記載の「リクエスト制御装置」に対応する。
【００２７】
また、本実施例で用いる「スヌープ回路」とは、各種装置（例えば、CPU、メモリ、I/Oなど）がアクセスするアドレスに応じて所定の動作を行う回路である。具体的には、スヌープ回路は、設定情報に記憶される動作条件を示すスヌープ条件に基づいて、CPUやI/Oがアクセスするアドレスによりデータの読み出しや書き込みなどの動作を行う。なお、「スヌープ回路」は、特許請求の範囲に記載の「スヌープ回路」に対応する。
【００２８】
また、本実施例で用いる「設定情報」とは、各装置の接続情報などのレジストリ情報であり、複数のアドレスクロスバスイッチが存在する場合、全てのアドレスクロスバスイッチは、同じ設定情報を記憶する。具体的には、「設定情報」は、レジストリ情報としてＳＢ  ＳＮＯＯＰＥＲアーキレジスタ、オペレーションレジスタ（ＯＰＳＲ）、コンフィグレーションレジスタ（ＣＦＲ）、スヌープ条件などの情報である。なお、「設定情報」は、特許請求の範囲に記載の「設定情報」に対応する。
【００２９】
また、本実施例で用いる「ＭＭＢ（Managementbord）」とは、アドレスクロスバスイッチ、ノースブリッジ、サウスブリッジに対して各種制御を行う制御装置のことである。具体的には、アドレスクロスバスイッチが使用する接続ポートを物理的にオンラインにしたり、全てのノースブリッジやサウスブリッジに対してＭＴＬ（Ｍｏｒｉ−Ｍｕｔａ  Ｔｒａｎｓｃｅｉｖｅｒ  Ｌｏｇｉｃ）キャリブレーションを行って、ノースブリッジやサウスブリッジが正しく動作するかを判定する。なお、「ＭＭＢ」は、特許請求の範囲に記載の「制御装置」に対応する。
【００３０】
［データ処理システムの概要および特徴］
次に、図１を用いて、実施例１に係るデータ処理システムの概要および特徴を説明する。図１は、実施例１に係るデータ処理システムの概要と特徴を説明するための図である。
【００３１】
図１に示すように、実施例１に係るデータ処理システムは、複数のＣＰＵやメモリと接続される１乃至複数のノースブリッジと、複数のPCIBridgeと接続される１乃至複数のサウスブリッジと、ノースブリッジとサウスブリッジとのそれぞれと接続される複数のアドレスクロスバスイッチと、アドレスクロスバスイッチとノースブリッジとサウスブリッジとのそれぞれと接続されるＭＭＢ（Managementbord）とから構成される。
【００３２】
このような構成のもと、実施例１に係るデータ処理システムは、ノースブリッジ／サウスブリッジの制御下にある各種装置（ＣＰＵやメモリなど）から得られたリクエストを複数のアドレスクロスバスイッチを介してノースブリッジ／サウスブリッジに送信するとともに、リクエストに対して各種装置（ＣＰＵやメモリなど）から得られたリクエスト応答を複数のアドレスクロスバスイッチを介してノースブリッジ／サウスブリッジに送信することを概要とするものであり、特に、アドレスクロスバスイッチ（データ中継装置）の多重化に際して、システム全体を停止することなく、新しいアドレスクロスバスイッチを組み込むことが可能である点に主たる特徴がある。
【００３３】
この主たる特徴を具体的に説明すると、図１に示すように、ＭＭＢは、設定情報が未だ設定されていないアドレスクロスバスイッチが新たに組み込まれた場合に、既存のアドレスクロスバスイッチから設定情報を取得し、新たに組み込まれたアドレスクロスバスイッチに設定情報を反映する（図１の（１）参照）。具体的には、ＭＭＢは、既存のアドレスクロスバスイッチから設定情報（例えば、ＳＢ  ＳＮＯＯＰＥＲアーキレジスタ、ＯＰＳＲ、ＣＦＲ、スヌープ条件などのレジストリ情報）を取得し、新たに組み込まれたアドレスクロスバスイッチのレジストリに既存のアドレスクロスバスイッチのレジストリから取得した設定情報を反映する。
【００３４】
続いて、ＭＭＢは、新たなアドレスクロスバスイッチに設定情報が反映された場合に、ノースブリッジとサウスブリッジに対して既存のアドレスクロスバスイッチへのリクエストの送信を停止する旨を指示する（図１の（２）参照）。上記した例で具体的に説明すると、ＭＭＢは、ノースブリッジとサウスブリッジに対して、リクエスト停止コマンド（例えば、PSWC_STOP_LRA）を送信することで、ノースブリッジとサウスブリッジは、既存のアドレスクロスバスイッチへのリクエストの送信を停止し、停止した旨のメッセージを既存のアドレスクロスバスイッチに送信する。
【００３５】
そして、既存のアドレスクロスバスイッチは、ＭＭＢによってノースブリッジ／サウスブリッジによるリクエストの送信が停止指示された後に、ＭＭＢによりリクエストの送信が停止されるまでに既に受信していたリクエストにより実行される処理が終了したか否かを判定し、当該処理が終了したと判定した場合に、リクエスト終了通知をＭＭＢに送信する（図１の（３）参照）。上記した例で具体的に説明すると、ノースブリッジとサウスブリッジからのリクエスト送信が停止された旨のメッセージをＭＭＢから受信すると、既存のアドレスクロスバスイッチは、既に受信していたリクエストに対する応答処理を実施し、全ての応答処理が終了すると、処理が終了したことを示すリクエスト終了通知をＭＭＢに送信する。
【００３６】
続いて、ＭＭＢは、既存のアドレスクロスバスイッチからリクエスト終了通知を受信した場合に、既存のアドレスクロスバスイッチおよび新たなアドレスクロスバスイッチの両方のアドレスクロスバスイッチに対して、起動を開始する旨を指示する（図１の（４）参照）。上記した例で具体的に説明すると、ＭＭＢは、既存のアドレスクロスバスイッチからリクエスト終了通知を受信した場合に、両方のアドレスクロスバスイッチに対して起動コマンド（例えば、PSWC_START_LRA_START）を送信する。両方のアドレスクロスバスイッチは、ＭＭＢから受信した起動コマンドに対応して、起動処理を開始する。
【００３７】
そして、ＭＭＢは、アドレスクロスバスイッチに対して起動開始を指示した場合に、ノースブリッジとサウスブリッジに対して、両方のアドレスクロスバスイッチからのアドレスクロスバスイッチへのリクエストの送信を開始する旨を指示する（図１の（５）参照）。上記した例で具体的に説明すると、ＭＭＢは、両方のアドレスクロスバスイッチが起動を開始すると、ＭＭＢは、ノースブリッジとサウスブリッジに対してリクエスト送信開始コマンド（例えば、PSWC_START_LRA）を送信する。そして、ノースブリッジとサウスブリッジは、リクエスト送信開始コマンドの受信に応じて、両方のアドレスクロスバスイッチへリクエストを送信することを開始する。
【００３８】
このように、実施例１に係るデータ処理システムによれば、上記した主たる特徴のごとく、アドレスクロスバスイッチの多重化に際して、システム全体を停止することなく、新しいアドレスクロスバスイッチを組み込むことが可能である。
【００３９】
［データ処理システムの構成］
次に、図２、図３と図８を用いて、図１に示したデータ処理システムにおけるノースブリッジ１０と、サウスブリッジ２０と、既存アドレスクロスバスイッチ３０と、新規アドレスクロスバスイッチ４０と、ＭＭＢ５０との構成を説明する。図２は、実施例１に係るデータ処理システムの構成を示すブロック図であり、図３は、実施例１に係るデータ処理システムが送受信するパケットの構成例を示す図であり、図８は、データ処理システムの構成例を示す図である。
【００４０】
（１）ノースブリッジ１０の構成
図２に示すように、ノースブリッジ１０は、通信制御Ｉ／Ｆ部１１と、記憶部１２と、制御部１３とから構成されている。通信制御Ｉ／Ｆ部１１は、各種装置（ＣＰＵやメモリなど）、アドレスクロスバスイッチ３０、４０やＭＭＢ５０との間でやり取りする各種情報に関する通信を制御する。具体的に例を挙げれば、ＬＳＩなどを用いて物理的にアドレスクロスバスイッチ３０、アドレスクロスバスイッチ４０、ＭＭＢ５０との間を接続する。
【００４１】
記憶部１２は、制御部１３による各種処理に必要なデータおよびプログラムを格納する。具体的に例を挙げれば、通信制御Ｉ／Ｆ部１１により接続される各装置との接続情報を記憶しておき、記憶する接続情報に基づいて、後述するリクエスト処理部１４によりリクエストが送信される。
【００４２】
制御部１３は、制御プログラム、各種の処理手順などを規定したプログラムおよび所要データを格納するための内部メモリを有する他に、特に本発明に密接に関連するものとして、リクエスト処理部１４を備える。
【００４３】
リクエスト処理部１４は、接続される装置との間でリクエストの送受信およびリクエスト応答の送受信を行う。具体的に例を挙げれば、リクエスト処理部１４は、ＣＰＵからリクエストを受信して、受信した当該リクエストに応答できない場合に、受信したリクエストをアドレスクロスバスイッチに送信する。一方、受信した当該リクエストに応答できる場合には、リクエスト処理部１４は、ＣＰＵから受信したリクエストに対するリクエスト応答を当該ＣＰＵに送信する。
【００４４】
また、リクエスト処理部１４は、アドレスクロスバスイッチからマージされたリクエスト応答を受信すると、リクエスト送信元のＣＰＵをノースブリッジ１０が管理している場合に、受信したリクエスト応答を当該ＣＰＵに送信する。一方、リクエスト送信元のＣＰＵをノースブリッジ１０が管理していない場合、当該リクエスト応答を破棄する。
【００４５】
また、アドレスクロスバスイッチからリクエストを受信すると、リクエスト処理部１４は、受信したリクエスト応答に対応するリクエスト応答を当該アドレスクロスバスイッチに送信する。例えば、アドレスクロスバスイッチからリクエストを受信すると、リクエスト処理部１４は、当該リクエストに応答すべき情報をノースブリッジ１０が管理している場合に、キャッシュ情報をリクエスト応答としてアドレスクロスバスイッチに送信し、管理していない場合に、管理していない旨のメッセージをリクエスト応答として送信する。
【００４６】
（２）サウスブリッジ２０の構成
サウスブリッジ２０は、通信制御Ｉ／Ｆ部２１と、記憶部２２と、制御部２３とから構成されている。通信制御Ｉ／Ｆ部２１は、ノースブリッジ１０、アドレスクロスバスイッチ３０、アドレスクロスバスイッチ４０やＭＭＢ５０との間でやり取りする各種情報に関する通信を制御する。具体的に例を挙げれば、ＬＳＩなどを用いて物理的にノースブリッジ１０、アドレスクロスバスイッチ３０、アドレスクロスバスイッチ４０やＭＭＢ５０との間を接続する。
【００４７】
記憶部２２は、制御部２３による各種処理に必要なデータおよびプログラムを格納する。具体的に例を挙げれば、記憶部２２は、通信制御Ｉ／Ｆ部２１により接続される各装置との接続情報を記憶しておき、記憶部２２が記憶する情報に基づいて、後述するリクエスト処理部２４によりリクエスト応答が送信される。
【００４８】
制御部２３は、制御プログラム、各種の処理手順などを規定したプログラムおよび所要データを格納するための内部メモリを有する他に、特に本発明に密接に関連するものとして、リクエスト処理部２４を備える。
【００４９】
リクエスト処理部２４は、送受信するリクエストに関する各種処理を行う。具体的には、リクエスト処理部２４は、PCIBridgeなどから受信したリクエストをアドレスクロスバスイッチ３０に送信したり、リクエスト応答を当該アドレスクロスバスイッチ３０に送信したりする。例えば、PCIBridgeやアドレスクロスバスイッチ３０などからリクエストを受信すると、サウスブリッジ２０は、当該リクエストに応答すべき情報をサウスブリッジ２０が管理している場合に、キャッシュ情報をリクエスト応答としてアドレスクロスバスイッチ３０に送信し、リクエストに応答すべき情報をサウスブリッジ２０が管理していない場合に、リクエスト送信元のPCIBridgeを管理していない旨のメッセージをリクエスト応答としてアドレスクロスバスイッチ２０に向けて送信する。
【００５０】
また、リクエスト処理部２４は、マージされたリクエスト応答を受信すると、ノースブリッジは、リクエスト送信元のPCIBridgeをサウスブリッジ２０が管理している場合に、受信したリクエスト応答を当該PCIBridgeに送信し、管理していない場合、当該リクエスト応答を破棄する。
【００５１】
（３）既存のアドレスクロスバスイッチ３０の構成
図２に示すように、既存のアドレスクロスバスイッチ３０は、通信制御Ｉ／Ｆ部３１と、記憶部３２と、制御部３４とから構成される。通信制御Ｉ／Ｆ部３１は、ノースブリッジ１０、サウスブリッジ２０、新規アドレスクロスバスイッチ４０やＭＭＢ５０との間でやり取りする各種情報に関する通信を制御する。具体的に例を挙げれば、ＬＳＩなどを用いて物理的にノースブリッジ１０、サウスブリッジ２０、新規アドレスクロスバスイッチ４０やＭＭＢ５０との間を接続し、ノースブリッジ１０やサウスブリッジ２０からリクエストを受信したり、受信したリクエストに対する応答をノースブリッジ１０、サウスブリッジ２０に送信したりする。また、通信制御Ｉ／Ｆ部３１は、新規アドレスクロスバスイッチ４０と同期を取ったりする。
【００５２】
記憶部３２は、制御部３４による各種処理に必要なデータおよびプログラムを格納するとともに、特に本発明に密接に関連するものとしては、設定情報３３を記憶する。設定情報３３は、アドレスクロスバスイッチ３０と他の制御装置（例えば、ノースブリッジ１０やＭＭＢ５０など）との接続情報や後述するスヌープ回路の動作条件であるスヌープ条件などアドレスクロスバスイッチ３０を運用するのに必要な情報であり、記憶部３２は、これらの情報を記憶する。具体的には、記憶部３２は、設定情報３３としてＳＢ  ＳＮＯＯＰＥＲアーキレジスタ、ＯＰＳＲ（オペレーションレジスタ）、ＣＦＲ（コンフィグレーションレジスタ）、スヌープ条件などのレジストリ情報を記憶する。
【００５３】
制御部３４は、制御プログラム、各種の処理手順などを規定したプログラムおよび所要データを格納するための内部メモリを有する他に、特に本発明に密接に関連するものとして、リクエスト終了通知部３５を備える。
【００５４】
リクエスト終了通知部１５は、ＭＭＢ５０によってリクエストの送信が停止指示された後に、既に受信したリクエストにより実行される処理が終了したか否かを判定し、当該処理が終了したと判定した場合に、リクエスト終了通知をＭＭＢ５０に送信する。具体的には、リクエスト終了通知部３５は、ＭＭＢ５０によってリクエストの送信が停止指示された後に、既に受信したリクエストにより実行される処理が終了したか否かを判定し、当該処置が終了したと判定した場合に、つまり、データの読み出しや書き込みなどのメモリリクエストが空になった場合に、リクエスト終了通知をＭＭＢ５０に送信する。なお、リクエスト終了通知部３５は、特許請求の範囲に記載の「リクエスト終了通知手段」に対応する。
【００５５】
スヌープ回路３６は、各種装置がアクセスするメモリなどのアドレスに応じて所定の動作を行う。具体的には、記憶部３２に記憶された設定情報３３に含まれるスヌープ条件に基づいて、ＣＰＵなどがアクセスするアドレスに応じてデータの書き込みや読み込みなどの所定の動作を行う。
【００５６】
（４）新規のアドレスクロスバスイッチ４０の構成
新規のアドレスクロスバスイッチ４０は、通信制御Ｉ／Ｆ部４１と、記憶部４２と、制御部４３とから構成される。そして、新規のアドレスクロスバスイッチ４０の通信制御Ｉ／Ｆ部４１と、記憶部４２と、制御部４４と、スヌープ回路４６とは、既存のアドレスクロスバスイッチ３０の通信制御Ｉ／Ｆ部３１と、記憶部３２と、制御部３４と、スヌープ回路３６と同様の機能を有するので、ここでは、その詳細な説明は省略する。
【００５７】
（５）ＭＭＢ５０の構成
ＭＭＢ５０は、通信制御Ｉ／Ｆ部５１と、記憶部５２と、制御部５３とから構成される。通信制御Ｉ／Ｆ部５１は、ノースブリッジ１０、サウスブリッジ２０、既存のアドレスクロスバスイッチ３０や新規のアドレスクロスバスイッチ４０との間でやり取りする各種情報に関する通信を制御する。具体的には、通信制御Ｉ／Ｆ部５１は、ノースブリッジ１０、サウスブリッジ２０や両方のアドレスクロスバスイッチ３０、４０との間でやり取りする各種情報に関する通信を制御する。具体的に例を挙げれば、通信制御Ｉ／Ｆ部５１は、ＬＳＩを用いて物理的にノースブリッジ１０、サウスブリッジ２０や両方のアドレスクロスバスイッチと接続し、後述する停止指示部５５や開始指示部５７からノースブリッジ１０、サウスブリッジ２０や両方のアドレスクロスバスイッチ３０、４０に発行されるコマンドを送信したりする。
【００５８】
記憶部５２は、制御部５３による各種処理に必要なデータおよびプログラムを格納する。具体的に例を挙げれば、後述する停止指示部５５や開始指示部５７が送信（発行）するコマンドなどを記憶する。例えば、図３に示したように、『コード番号を示す「ＣＭＤＭ」、コマンド名を示す「リクエスト」、コマンドの送信先を示す「方向」、コマンドの詳細を示す「リクエストの詳細」』として「０００１０１、ＧＳＡ  ＳＴＡＲＴ、ＳＢ→ＡＸＢ、ＡＸＢのＳＢＳに対する初期化」などを記憶する。
【００５９】
制御部５３は、制御プログラム、各種の処理手順などを規定したプログラムおよび所要データを格納するための内部メモリを有する他に、特に本発明に密接に関連するものとして、設定情報反映部５４と、停止指示部５５と、起動開始指示部５６と、開始指示部５７とを備える。なお、設定情報反映部５４は、特許請求の範囲に記載の「設定情報反映手段」に対応し、停止指示部５５は同様に「停止指示手段」に対応し、起動開始指示部５６は「起動開始指示手段」に対応し、開始指示部５７は「開始指示手段」に対応する。
【００６０】
設定情報反映部５４は、設定情報が未だ設定されていないアドレスクロスバスイッチが新たに組み込まれた場合に、既存のアドレスクロスバスイッチから設定情報を取得し、新たに組み込まれたアドレスクロスバスイッチに設定情報を反映する。具体的に例を挙げれば、設定情報反映部５４は、設定情報３３（ＳＢ  ＳＮＯＯＰＥＲアーキレジスタ、ＯＰＳＲ、ＣＦＲ、スヌープ条件などのレジストリ情報）を、新規のアドレスクロスバスイッチ４０の設定情報４３に反映（コピー）する。
【００６１】
停止指示部５５は、設定情報反映部５４によって設定情報が反映された場合に、ノースブリッジ１０とサウスブリッジ２０に対して、既存のアドレスクロスバスイッチ３０へのリクエストの送信を停止する旨を指示する。具体的に例を挙げれば、ノースブリッジ１０とサウスブリッジ２０に対して停止コマンド（PSWC_STOP_LRA）を送信（発行）することで、ノースブリッジ１０は、既存のアドレスクロスバスイッチ３０へのリクエスト送信を停止する。そして、ノースブリッジ１０／サウスブリッジ２０によるリクエスト送信を停止すると、停止指示部５５は、リクエスト送信が停止したことを示す旨のメッセージ（信号など）を既存のアドレスクロスバスイッチ３０に通知する。
【００６２】
起動開始指示部５６は、ノースブリッジ１０とサウスブリッジ２０による既存のアドレスクロスバスイッチ３０へのリクエストの送信が停止されるまでに既に受信されていたリクエストにより実行される処理が終了したことを示すリクエスト終了通知を既存のアドレスクロスバスイッチ３０から受信した場合に、両方のアドレスクロスバスイッチ３０、４０に対して、起動を開始する旨を指示する。具体的に例を挙げれば、起動開始通知部５６は、図３に示すような、GSA_STARTコマンド（PSWC_GSA_START）を両方のアドレスクロスバスイッチ３０、４０に送信（発行）して、両方のアドレスクロスバスイッチ３０、４０のミラー動作を初期状態に遷移させる。つまり、PRIORITYやキューポインタをミラー動作の初期値に戻す。これにより、両方のアドレスクロスバスイッチ３０、４０は、起動を開始する。
【００６３】
開始指示部５７は、起動開始指示部５６によって起動開始が指示された場合に、ノースブリッジ１０に対してノースブリッジ１０とサウスブリッジ２０に対して、両方のアドレスクロスバスイッチ３０、４０へのリクエストの送信を開始する旨を指示する。具体的に例を挙げれば、開始指示部５７は、起動開始指示部５６によって起動開始が指示された場合に、開始指示部５７は、ノースブリッジ１０とサウスブリッジ２０に対して、送信開始コマンド（PSWC_START_LRA）を送信（発行）することで、ノースブリッジ１０とサウスブリッジ２０は、送信開始コマンドの受信に対応して両方のアドレスクロスバスイッチ３０、４０へのリクエスト送信を開始する。
【００６４】
なお、停止指示部５５は、リクエスト送信を停止する場合について説明したが、本発明はこれに限定されるものではなく、リクエスト送信とリクエスト応答やリクエスト応答の受信などを停止するようにしてもよい。具体的に例を挙げれば、停止指示部５５は、ノースブリッジ１０とサウスブリッジ２０に対して停止コマンド（PSWC_STOP_LRA）を送信（発行）することで、リクエスト送信とリクエスト応答やリクエスト応答の受信などを停止するようにしてもよい。この場合、開始指示部５７は、上記した送信開始コマンド（PSWC_START_LRA）とともに、受信開始コマンド（PSWC_START_AXB_MIRROR）を送信（発行）し、ノースブリッジ１０とサウスブリッジ２０は、送信開始コマンドの受信に対応して両方のアドレスクロスバスイッチ３０、４０へのリクエスト送信を開始するとともに、受信開始コマンドの受信に対応して両方のアドレスクロスバスイッチ３０、４０からのリクエスト応答の受信を開始する。
【００６５】
［データ処理システムによる処理］
次に、図４〜７を用いて、データ処理システムによる処理を説明する。図４〜図６は、実施例１に係るデータ処理システムの状態遷移を示す図であり、図７は、データ処理システムにおける処理の流れを示すフローチャートである。
【００６６】
まず始めに、データ処理システムの状態遷移について説明する。図４に示す状態では、アドレスクロスバスイッチ０（ＡＸＢ０）と、ノースブリッジ（ＮＢ０〜ＮＢ２）と、サウスビリッジ（ＳＢ０〜ＳＢ１）と、ＭＭＢが接続されている。ここで、ＡＸＢを二重化する場合について説明する。なお、ＮＢ０〜ＮＢ２は、図１と図２に示すノースブリッジ１０に対応し、ＳＢ０〜ＳＢ１は、サウスブリッジ２０に対応する。
【００６７】
そして、ＡＸＢ０と、ＮＢ０〜ＮＢ２と、ＳＢ０〜ＳＢ１と、ＭＭＢとは、それぞれが相互に通信可能に接続されている。また、ＳＢ＃０  Ｓｎｏｏｐｅｒは、ＳＢ０に接続されるＩＯ装置を制御する装置であり、ＳＢ＃１  Ｓｎｏｏｐｅｒは、ＳＢ１に接続されるＩＯ装置を制御する装置である。ＡＸＢ０は、ＳＢ０〜ＳＢ１に繋がるＩＯ装置の割付設定情報などをＳＢ  Ｓｎｏｏｐｅｒアーキレジに記憶し、ＳＢ＃０およびＳＢ＃１の代理として、ＳＢに送信されたリクエストなどに応答する。また、図４〜図７に示す「物理ＯＮ」は、ＡＸＢを組み込む場合に、物理的にＭＴＬインタフェースをキャリブレーションして接続可能にしたポート（接続インタフェース）を示し、「論理ＯＮ」は、物理ＯＮのポートにＡＸＢが組み込まれると、論理的に接続可能である状態のポートを示す。一方、「物理ＯＦＦ」は、ＡＸＢを組み込む場合に、物理的に接続不可能な状態であるポートを示し、「論理ＯＦＦ」は、論理的に接続不可能である状態のポートを示す。
【００６８】
このような状態から、図５に示すように、新しいアドレスクロスバスイッチ（ＡＸＢ１）がデータ処理システムに組み込まれる状況を想定する。設定情報が未だ設定されていない新しいＡＸＢ１がデータ処理システムに組み込まれて（図５の（１）参照）、物理的にオンラインにされると（図５の（２）参照）、ＭＭＢ５０は、既存のアドレスクロスバスイッチ（ＡＸＢ０）から設定情報を取得し、ＡＸＢ１に設定情報を反映する（図５の（３）参照）。続いて、ＭＭＢ５０の停止指示部５５は、ＮＢ０〜ＮＢ２に対して、ＡＸＢ０へのリクエストの送信を停止する旨を指示する（図５の（４）参照）。
【００６９】
そして、図６に示すように、ＡＸＢ０のリクエスト終了通知部３５は、ＭＭＢ５０によってリクエストの送信が停止指示された後に、既に受信したリクエストにより実行される処理が終了したか否かを判定し、当該処置が終了したと判定した場合に、リクエスト終了通知をＭＭＢ５０に送信する（図６の（１）参照）。そして、ＭＭＢ５０の起動開始指示部５６は、ＡＸＢ０からリクエストにより実行される処理が終了したことを示すリクエスト終了通知を受信した場合に、ＡＸＢ０とＡＸＢ１の両方に対して、起動を開始する旨を指示する（図６の（２））参照）。
【００７０】
その後、ＭＭＢ５０の開始指示部５７は、起動開始指示部５６によって起動開始が指示された場合に、ＮＢ０〜ＮＢ２とＳＢ０〜ＳＢ１に対して、ＡＸＢ０とＡＸＢ１の両方へのリクエストの送信を開始する旨を指示する（図６の（３）参照）。このようにして、システム全体を停止することなく、新しいアドレスクロスバスイッチを組み込むことが可能である。
【００７１】
次に、上記した状態遷移の流れをフローチャートで説明すると、図７に示すように、新規アドレスクロスバスイッチ（ＡＸＢ）４０が組み込まれて、利用者などにより発行された組み込みコマンドを受信すると（ステップＳ７０１肯定）、データ処理システムのＭＭＢ５０は、ＭＴＬキャリブレーションを開始する（ステップＳ７０２）。そして、ＭＭＢ５０は、ＭＴＬキャリブレーションが成功したか否かを確認する（ステップＳ７０３）。
【００７２】
ＭＴＬキャリブレーションの成功を確認すると（ステップＳ７０３肯定）、ＭＭＢ５０は、追加したＡＸＢ４０のミラー動作を初期状態に遷移させる（ステップＳ７０４）。そして、ＭＭＢ５０の設定情報反映部５４は、既存のＡＸＢ３０のＳＰ  ＳＮＯＯＰＥＲアーキレジスタとＯＰＳＲとＣＦＲとを、追加したＡＸＢ４０にコピーする（ステップＳ７０５）。
【００７３】
そして、ＭＭＢ５０の停止指示部５５は、ノースブリッジ１０に対して、既存のＡＸＢ３０へのリクエストの送信を停止する旨を指示する（ステップＳ７０６）。その後、既存のＡＸＢ３０のリクエスト終了通知部３５は、既に受信したリクエストにより実行される処理が終了したか否かを判定し、当該処理が終了したと判定する（ステップＳ７０７）。
【００７４】
既に受信したリクエストによる処理が終了すると（ステップＳ７０７肯定）、既存のＡＸＢ３０のリクエスト終了通知部１５は、リクエスト終了通知をＭＭＢ５０に送信し、リクエスト終了通知を受信したＭＭＢ５０の起動開始指示部５６は、両方のＡＸＢのミラー動作を初期状態に遷移させる（ステップＳ７０８）。
【００７５】
具体的には、ＭＭＢ５０の起動開始指示部５６は、GSA_STARTコマンド（PSWC_GSA_START）を両方のアドレスクロスバスイッチに送信（発行）することで、両方のＡＸＢは、起動を開始する。
【００７６】
その後、ＭＭＢ５０の開始指示部５７は、ノースブリッジ１０とサウスブリッジ２０に対して、両方のアドレスクロスバスイッチへのリクエストの送信を開始する旨を指示する（ステップＳ７０９）。
【００７７】
具体的には、ＭＭＢ５０の開始指示部５７は、送信開始コマンド（PSWC_START_LRA）を送信（発行）することで、ノースブリッジ１０とサウスブリッジ２０は、両方のアドレスクロスバスイッチへのリクエスト送信を開始する。
【００７８】
［実施例１による効果］
このように、実施例１によれば、制御装置（ＭＭＢ５０）は、設定情報が未だ設定されていないデータ中継装置（ＡＸＢ４０）が新たに組み込まれた場合に、既存のデータ中継装置（ＡＸＢ３０）から設定情報を取得し、新たに組み込まれたデータ中継装置（ＡＸＢ４０）に設定情報を反映し、設定情報が反映された場合に、リクエスト制御装置（ノースブリッジ１０とサウスブリッジ２０）に対して、データ中継装置（ＡＸＢ３０）へのリクエストの送信を停止する旨を指示し、データ中継装置（ＡＸＢ３０）からリクエストにより実行される処理が終了したことを示すリクエスト終了通知を受信した場合に、複数のデータ中継装置（ＡＸＢ３０とＡＸＢ４０）に対して、起動を開始するように指示し、起動開始が指示された場合に、リクエスト制御装置（ノースブリッジ１０とサウスブリッジ２０）に対して、データ中継装置（ＡＸＢ３０）へのリクエストの送信を開始する旨を指示しデータ中継装置（ＡＸＢ３０）は、制御装置（ＭＭＢ５０）によってリクエストの送信が停止指示された後に、既に受信したリクエストにより実行される処理が終了したか否かを判定し、当該処置が終了したと判定した場合に、リクエスト終了通知を制御装置（ＭＭＢ５０）に送信するので、データ中継装置の多重化に際して、システム全体を停止することなく、新しいデータ中継装置を組み込むことが可能である。
【００７９】
例えば、二重化したアドレスクロスバスイッチにおいて、片方が故障してもシステムを停止することなく、故障したアドレスクロスバスイッチに変えて、新しいアドレスクロスバスイッチを組み込むことが可能である。さらに、もともと一重化であったアドレスクロスバスイッチを、システムを停止させることなく二重化にすることが可能である。
【００８０】
また、実施例１によれば、データ中継装置（ＡＸＢ３０）は、各種装置（ＣＰＵなど）がアクセスするアドレスに応じて所定の動作を行うスヌープ回路を備え、設定情報として、当該スヌープ回路の動作条件であるスヌープ条件を決めるための設定情報を記憶するものであって、既存のデータ中継装置（ＡＸＢ３０）からスヌープ条件を決めるための設定情報を取得し、新たに組み込まれたデータ中継装置（ＡＸＢ４０）に設定情報を反映するので、より細かく処理分担されているデータ中継装置の多重化に際しても、システム全体を停止することなく、新しいデータ中継装置を組み込むことが可能である。例えば、より細かく処理分担されている二重化したアドレスクロスバスイッチにおいても、片方が故障してもシステムを停止することなく、新しいアドレスクロスバスイッチを組み込むことが可能である。
【００８１】
ここで、図８を用いて、上記したデータ処理システムシステムの構成例について、説明する。図８に示すように、このデータ処理システムは、ＡｄｄｒｅｓｓＸｂａｒ＃０とＡｄｄｒｅｓｓＸｂａｒ＃１と、複数のシステムボード（ＳＢ＃０など）と、複数のＩＯボード（ＩＯＢ＃０など）と、複数のＤａｔａＸｂａｒとで構成される。そして、それぞれのシステムボードは、ＮｏｒｔｈＢｒｉｄｇｅや複数のＣＰＵなどの主制御部、複数のメモリ（ＭｅｍＳｗｉｔｃｈ）などの主記憶部を搭載し、それぞれのＩＯボードは、外部装置との接続を制御するＬＡＮポート（ＬＡＮ）などを搭載する。そして、ＡｄｄｒｅｓｓＸｂａｒ＃０とＡｄｄｒｅｓｓＸｂａｒ＃１は、複数のシステムボードに搭載されるそれぞれのＮｏｒｔｈＢｒｉｄｇｅと接続し、また、複数のＩＯボードに搭載されるそれぞれのＳｏｕｔｈＢｒｉｄｇｅと接続する。そして、それぞれのＮｏｒｔｈＢｒｉｄｇｅは、Ｍｅｍｓｗｉｔｈを介して複数のＤａｔａＸｂａｒと接続し、また、それぞれのＳｏｕｔｈＢｒｉｄｇｅも同様に、複数のＤａｔａＸｂａｒと接続する。
【００８２】
このような構成において、ＭＭＢ５０は、設定情報が未だ設定されていないＡｄｄｒｅｓｓＸｂａｒが新たに組み込まれた場合に、既存のＡｄｄｒｅｓｓＸｂａｒから設定情報を取得し、新たに組み込まれたＡｄｄｒｅｓｓＸｂａｒに設定情報を反映し、設定情報が反映された場合に、ＮｏｒｔｈＢｒｉｄｇｅとのＳｏｕｔｈＢｒｉｄｇｅに対して、既存のＡｄｄｒｅｓｓＸｂａｒへのリクエストの送信を停止する旨を指示し、既存のＡｄｄｒｅｓｓＸｂａｒからリクエストにより実行される処理が終了したことを示すリクエスト終了通知を受信した場合に、既存のＡｄｄｒｅｓｓＸｂａｒと新たに組み込まれた既存のＡｄｄｒｅｓｓＸｂａｒとに対して、起動を開始するように指示し、起動開始が指示された場合に、ＮｏｒｔｈＢｒｉｄｇｅとのＳｏｕｔｈＢｒｉｄｇｅに対して、既存のＡｄｄｒｅｓｓＸｂａｒへのリクエストの送信を開始する旨を指示し、既存のＡｄｄｒｅｓｓＸｂａｒは、ＭＭＢによってリクエストの送信が停止指示された後に、既に受信したリクエストにより実行される処理が終了したか否かを判定し、当該処置が終了したと判定した場合に、リクエスト終了通知をＭＭＢに送信するので、ＡｄｄｒｅｓｓＸｂａｒの多重化に際して、システム全体を停止することなく、新しいＡｄｄｒｅｓｓＸｂａｒを組み込むことが可能である。
【実施例２】
【００８３】
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下に示すように、（１）スヌープ回路の有無、（２）処理順序、（３）システム構成等、（４）プログラム、にそれぞれ区分けして異なる実施例を説明する。
【００８４】
（１）スヌープ回路の有無
例えば、実施例１では、アドレスクロスバスイッチがスヌープ回路を備えている場合について説明したが、本発明はこれに限定されるものではなく、スヌープ回路を備えていなくてもよい。この場合、サウスブリッジからＩ／Ｏに関する設定情報取得して、新規のアドレスクロスバスイッチに反映することで、アドレスクロスバスイッチの運用に必要な設定情報を漏れなく反映させることが可能である。
【００８５】
（２）処理順序
また、実施例１では、新規のアドレスクロスバスイッチに設定情報を反映した後に、リクエストを停止する場合について説明したが、本発明はこれに限定されるものではなく、リクエストを停止した後に、新規のアドレスクロスバスイッチに設定情報を反映するようにしてもよく、既存と新規の両方のアドレスクロスバスイッチを起動する前までに、新規のアドレスクロスバスイッチに設定情報を反映すればよい。
【００８６】
（３）システム構成等
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合（例えば、起動開始通知部５６と開始指示部５７とを統合するなど）して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、ＣＰＵおよび当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【００８７】
また、本実施例において説明した各処理のうち、自動的におこなわれるものとして説明した処理（例えば、ＭＴＬキャリブレーションなど）の全部または一部を手動的におこなうこともでき、あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【００８８】
（４）プログラム
ところで、上記の実施例で説明した各種の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータシステムで実行することによって実現することができる。そこで、以下では、上記の実施例と同様の機能を有するプログラムを実行するコンピュータシステムの一例を説明する。
【００８９】
図９は、データ処理プログラムを実行するコンピュータシステム９０を示す図である。同図に示すように、コンピュータシステム９０は、ＲＡＭ９１と、ＨＤＤ９２と、ＲＯＭ９３と、ＣＰＵ９４とから構成される。ここで、ＲＯＭ９３には、上の実施例と同様の機能を発揮するプログラム、つまり、図９に示すように、設定情報反映プログラム９３ａ、停止指示プログラム９３ｂ、リクエスト終了通知プログラム９３ｃ、起動開始指示プログラム９３ｄ、開始指示プログラム９３ｅがあらかじめ記憶されている。
【００９０】
そして、ＣＰＵ９４には、これらのプログラム９３ａ〜９３ｅを読み出して実行することで、図９に示すように、設定情報反映プロセス９４ａ、停止指示プロセス９４ｂ、リクエスト終了通知プロセス９４ｃ、起動開始指示プロセス９４ｄ、開始指示プロセス９４ｅとなる。なお、設定情報反映プロセス９４ａは、図２に示した、設定情報反映部５４に対応し、同様に、停止指示プロセス９４ｂは、停止指示部５５に対応し、リクエスト終了通知プロセス９４ｃはリクエスト終了通知部３５に対応し、起動開始指示プロセス９４ｄは、起動開始指示部５６に対応し、開始指示プロセス９４ｅは、開始指示部５７に対応する。
【００９１】
また、ＨＤＤ９２の設定情報９２ａは、ＳＢ  ＳＮＯＯＰＥＲアーキレジスタ、オペレーションレジスタ（ＯＰＳＲ）、コンフィグレーションレジスタ（ＣＦＲ）、スヌープ条件などを記憶する。
【００９２】
ところで、上記したプログラム９３ａ〜９３ｅは、必ずしもＲＯＭ９３に記憶させておく必要はなく、例えば、コンピュータシステム９０に挿入されるフレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＭＯディスク、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」の他に、コンピュータシステム９０の内外に備えられるハードディスクドライブ（ＨＤＤ）などの「固定用の物理媒体」、さらに、公衆回線、インターネット、ＬＡＮ、ＷＡＮなどを介してコンピュータシステム９０に接続される「他のコンピュータシステム」に記憶させておき、コンピュータシステム９０がこれらからプログラムを読み出して実行するようにしてもよい。
【００９３】
すなわち、この他の実施例でいうプログラムは、上記した「可搬用の物理媒体」、「固定用の物理媒体」、「通信媒体」などの記録媒体に、コンピュータ読み取り可能に記録されるものであり、コンピュータシステム９０は、このような記録媒体からプログラムを読み出して実行することで上記した実施例と同様の機能を実現する。なお、この他の実施例でいうプログラムは、コンピュータシステム９０によって実行されることに限定されるものではなく、他のコンピュータシステムまたはサーバがプログラムを実行する場合や、これらが協働してプログラムを実行するような場合にも、本発明を同様に適用することができる。
【００９４】
（付記１）共通の設定情報が設定された複数のデータ中継装置それぞれにリクエスト制御装置を接続するとともに、前記複数のデータ中継装置およびリクエスト制御装置に制御装置を接続して構成され、前記リクエスト制御装置の制御下にある各種装置から得られたリクエストを前記複数のデータ中継装置を介して前記リクエスト制御装置に送信するとともに、前記リクエストに対して前記各種装置から得られたリクエスト応答を前記複数のデータ中継装置を介して前記リクエスト制御装置に送信するデータ処理システムであって、
前記制御装置は、
前記設定情報が未だ設定されていないデータ中継装置が新たに組み込まれた場合に、既存のデータ中継装置から前記設定情報を取得し、前記新たに組み込まれたデータ中継装置に前記設定情報を反映する設定情報反映手段と、
前記設定情報反映手段によって設定情報が反映された場合に、前記リクエスト制御装置に対して、前記既存のデータ中継装置への前記リクエストの送信を停止する旨を指示する停止指示手段と、
前記既存のデータ中継装置から前記リクエストにより実行される処理が終了したことを示すリクエスト終了通知を受信した場合に、前記複数のデータ中継装置に対して、起動を開始するように指示する起動開始指示手段と、
前記起動開始指示手段によって起動開始が指示された場合に、前記リクエスト制御装置に対して、前記複数のデータ中継装置への前記リクエストの送信を開始する旨を指示する開始指示手段と、
前記データ中継装置は、
前記制御装置によって前記リクエストの送信および前記リクエスト応答の受信が停止指示された後に、既に受信したリクエストにより実行される処理が終了したか否かを判定し、当該処置が終了したと判定した場合に、前記リクエスト終了通知を前記制御装置に送信するリクエスト終了通知手段と、
を備えたことを特徴とするデータ処理システム。
【００９５】
（付記２）前記データ中継装置は、前記各種装置がアクセスするアドレスに応じて所定の動作を行うスヌープ回路を備え、前記設定情報として、当該スヌープ回路の動作条件であるスヌープ条件を決めるための設定情報を記憶するものであって、
前記設定情報反映手段は、前記既存のデータ中継装置から前記スヌープ条件を決めるための設定情報を取得し、前記新たに組み込まれたデータ中継装置に前記設定情報を反映することを特徴とする付記１に記載のデータ処理システム。
【００９６】
（付記３）共通の設定情報が設定された複数のデータ中継装置それぞれにリクエスト制御装置を接続するとともに、前記複数のデータ中継装置およびリクエスト制御装置に制御装置を接続して構成され、前記リクエスト制御装置の制御下にある各種装置から得られたリクエストを前記複数のデータ中継装置を介して前記リクエスト制御装置に送信するとともに、前記リクエストに対して前記各種装置から得られたリクエスト応答を前記複数のデータ中継装置を介して前記リクエスト制御装置に送信することに適するデータ処理システム制御方法であって、
前記制御装置は、
前記設定情報が未だ設定されていないデータ中継装置が新たに組み込まれた場合に、既存のデータ中継装置から前記設定情報を取得し、前記新たに組み込まれたデータ中継装置に前記設定情報を反映する設定情報反映工程と、
前記設定情報反映工程によって設定情報が反映された場合に、前記リクエスト制御装置に対して、前記既存のデータ中継装置への前記リクエストの送信を停止する旨を指示する停止指示工程と、
前記既存のデータ中継装置から前記リクエストにより実行される処理が終了したことを示すリクエスト終了通知を受信した場合に、前記複数のデータ中継装置に対して、起動を開始するように指示する起動開始指示工程と、
前記起動開始指示工程によって起動開始が指示された場合に、前記リクエスト制御装置に対して、前記複数のデータ中継装置への前記リクエストの送信を開始する旨を指示する開始指示工程と、
前記データ中継装置は、
前記制御装置によって前記リクエストの送信および前記リクエスト応答の受信が停止指示された後に、既に受信したリクエストにより実行される処理が終了したか否かを判定し、当該処置が終了したと判定した場合に、前記リクエスト終了通知を前記制御装置に送信するリクエスト終了通知工程と、
を含んだことを特徴とするデータ処理システム制御方法。
【００９７】
（付記４）前記データ中継装置は、前記各種装置がアクセスするアドレスに応じて所定の動作を行うスヌープ回路を備え、前記設定情報として、当該スヌープ回路の動作条件であるスヌープ条件を決めるための設定情報を記憶するものであって、
前記設定情報反映工程は、前記既存のデータ中継装置から前記スヌープ条件を決めるための設定情報を取得し、前記新たに組み込まれたデータ中継装置に前記設定情報を反映することを特徴とする付記３に記載のデータ処理システム制御方法。
【００９８】
（付記５）互いに共通の設定情報を記憶し情報処理装置内の転送データを中継する複数のデータ中継装置が接続される制御装置を有する情報処理装置において、
前記データ中継装置との間の通信を制御する通信制御手段と、
前記制御装置に新たなデータ中継装置が接続された際、すでに前記制御装置に接続されている既存のデータ中継装置より、前記既存のデータ中継装置に記憶されているデータ中継装置の設定情報を読み出すとともに、前記既存のデータ中継装置より読み出した前記設定情報を前記新たなデータ中継装置に書き込む設定情報反映手段と、
を備えたことを特徴とする情報処理装置。
【００９９】
（付記６）前記制御装置には、受信したリクエストに対応したリクエスト応答を行うとともに、前記複数のデータ中継装置に対してリクエストを送信し、前記データ中継装置からのリクエスト応答を受信するリクエスト制御装置がさらに接続され、
前記新たなデータ中継装置に前記設定情報が書き込まれた場合に、前記リクエスト制御装置に対して、前記複数のデータ中継装置へのリクエストの送信の停止を指示する停止指示手段を備えたことを特徴とする付記５に記載の情報処理装置。
【０１００】
（付記７）制御装置に接続される複数のデータ中継装置を備える情報処理装置において、
前記データ中継装置は、
前記複数のデータ中継装置に共通の設定情報を記憶する記憶手段と、
前記制御装置との間の通信を制御する通信制御手段と、
前記制御装置からの指示に応じて、リクエストの送信を停止させる制御手段と、
前記制御手段からの指示の受信時点ですでに受信したリクエストが存在する場合、当該リクエストにより実行される処理の終了を判定し、当該処理が終了したと判定されたときに前記制御装置に対してリクエスト終了通知を送信する処理手段と、
を備えたことを特徴とする付記５または６に記載の情報処理装置。
【産業上の利用可能性】
【０１０１】
以上のように、本発明に係るデータ処理システムおよびデータ処理システム制御方法は、共通の設定情報が設定された複数のデータ中継装置それぞれにリクエスト制御装置を接続するとともに、複数のデータ中継装置およびリクエスト制御装置に制御装置を接続して構成され、リクエスト制御装置の制御下にある各種装置から得られたリクエストを複数のデータ中継装置を介してリクエスト制御装置に送信するとともに、リクエストに対して前記各種装置から得られたリクエスト応答を前記複数のデータ中継装置を介してリクエスト制御装置に送信することに有用であり、特に、データ中継装置の多重化に際して、システム全体を停止することなく、新しいデータ中継装置を組み込むことに適する。
【図面の簡単な説明】
【０１０２】
【図１】実施例１に係るデータ処理システムの概要と特徴を説明するための図である。
【図２】実施例１に係るデータ処理システムの構成を示すブロック図である。
【図３】実施例１に係るデータ処理システムが送受信するパケットの構成例を示す図である。
【図４】実施例１に係るデータ処理システムの状態遷移を示す図である。
【図５】実施例１に係るデータ処理システムの状態遷移を示す図である。
【図６】実施例１に係るデータ処理システムの状態遷移を示す図である。
【図７】実施例１に係るデータ処理システムにおける処理の流れを示すフローチャートである。
【図８】データ処理システムの構成例を示す図である。
【図９】データ処理プログラムを実行するコンピュータシステムの例を示す図である。
【符号の説明】
【０１０３】
１０  ノースブリッジ
１１  通信制御Ｉ／Ｆ部
１２  記憶部
１３  制御部
１４  リクエスト処理部
２０  サウスブリッジ
２１  通信制御Ｉ／Ｆ部
２２  記憶部
２３  制御部
２４  リクエスト処理部
３０  既存のアドレスクロスバスイッチ
３１  通信制御Ｉ／Ｆ部
３２  記憶部
３３  設定情報
３４  制御部
３５  リクエスト終了通知部
３６  スヌープ回路
４０  新規のアドレスクロスバスイッチ
４１  通信制御Ｉ／Ｆ部
４２  記憶部
４３  設定情報
４４  制御部
４６  スヌープ回路
５０  ＭＭＢ
５１  通信制御Ｉ／Ｆ部
５２  記憶部
５３  制御部
５４  設定情報反映部
５５  停止指示部
５６  起動開始指示部
５７  開始指示部
９０  コンピュータシステム
９１  ＲＡＭ
９２  ＨＤＤ
９２ａ  設定情報
９３  ＲＯＭ
９３ａ  設定情報反映プログラム
９３ｂ  停止指示プログラム
９３ｃ  リクエスト終了通知プログラム
９３ｄ  起動開始指示プログラム
９３ｅ  開始指示プログラム
９４  ＣＰＵ
９４ａ  設定情報反映プロセス
９４ｂ  停止指示プロセス
９４ｃ  リクエスト終了通知プロセス
９４ｄ  起動開始指示プロセス
９４ｅ  開始指示プロセス
【図１】
2008046878.tif 000003
【図２】
2008046878.tif 000004
【図３】
2008046878.tif 000005
【図４】
2008046878.tif 000006
【図５】
2008046878.tif 000007
【図６】
2008046878.tif 000008
【図７】
2008046878.tif 000009
【図８】
2008046878.tif 000010
【図９】
2008046878.tif 000011