(57)【特許請求の範囲】
【請求項１】
組み込みソフトウェアで動作するデバイスと、モード設定にもとづいて前記デバイスへの入力の通信インタフェースの変換を行う変換部と、を含む周辺装置と、
前記デバイスへの前記組み込みソフトウェアの更新時、第１の通信インタフェースで出力された前記組み込みソフトウェアに対し、前記変換部を変換モードに設定して前記第１の通信インタフェースから第２の通信インタフェースへの変換を実行させ、前記デバイスに対して前記第２の通信インタフェースで前記組み込みソフトウェアの更新を行い、前記組み込みソフトウェアの非更新時、前記変換部を非変換モードに設定して前記第１の通信インタフェースから前記第２の通信インタフェースへの変換を停止させ、前記デバイスに対する前記組み込みソフトウェアの更新を停止する制御部を含む情報処理装置と、
を有する情報処理システム。
【請求項２】
前記デバイスは、拡張バスを有する中継コネクタを介して前記情報処理装置と前記周辺装置との通信を中継制御する中継デバイスであり、前記制御部は、前記変換部の通信インタフェース変換にもとづいて、前記中継デバイスの前記組み込みソフトウェアの更新を行う、
請求項１記載の情報処理システム。
【請求項３】
前記周辺装置は、
手動スイッチをさらに備え、
前記中継デバイスを前記組み込みソフトウェアの更新可能状態または更新停止状態に設定する状態設定信号を前記制御部から前記中継デバイスに向けて出力する第１の経路と、前記状態設定信号を前記手動スイッチで生成して前記手動スイッチから前記中継デバイスに向けて出力する第２の経路との２系統を備える、
請求項２記載の情報処理システム。
【請求項４】
前記制御部は、
前記第１の経路を通じて送信した前記状態設定信号にもとづき前記中継デバイスを前記更新可能状態に設定した場合、前記変換部を前記変換モードに設定し、前記制御部から出力される前記第１の通信インタフェースの前記組み込みソフトウェアを前記第２の通信インタフェースに変換させ、
前記第１の経路を通じて送信した前記状態設定信号にもとづき前記中継デバイスを前記更新停止状態に設定した場合、前記変換部を前記非変換モードに設定し、前記第１の通信インタフェースから前記第２の通信インタフェースへの変換を停止させる、
請求項３記載の情報処理システム。
【請求項５】
前記周辺装置は、外部から送信される前記第１の通信インタフェースを接続するコネクタをさらに備え、
前記制御部は、
前記第２の経路を通じて送信した前記状態設定信号にもとづき前記中継デバイスを前記更新可能状態に設定した場合、前記変換部を前記変換モードに設定し、前記コネクタを通じて外部入力される前記第１の通信インタフェースの前記組み込みソフトウェアを前記第２の通信インタフェースに変換させ、
前記第２の経路を通じて送信した前記状態設定信号にもとづき前記中継デバイスを前記更新停止状態に設定した場合、前記変換部を前記非変換モードに設定し、前記第１の通信インタフェースから前記第２の通信インタフェースへの変換を停止させる、
請求項３記載の情報処理システム。
【請求項６】
前記変換部は、前記第１の通信インタフェースから前記第２の通信インタフェースへの変換として、汎用シリアルバス通信インタフェースを汎用非同期シリアルバス通信インタフェースに変換する、
請求項２記載の情報処理システム。
【請求項７】
前記デバイスは、電源の供給制御を行う電源供給デバイスであり、前記制御部は、前記変換部の通信インタフェース変換にもとづいて、前記電源供給デバイスの前記組み込みソフトウェアの更新を行う、
請求項１記載の情報処理システム。
【請求項８】
前記周辺装置は、前記変換部と前記電源供給デバイスとを前記第２の通信インタフェースで接続する第１のスイッチング状態と、前記制御部と前記電源供給デバイスとを前記第２の通信インタフェースで接続する第２のスイッチング状態との切替えを行うスイッチ部をさらに備え、
前記変換部は、
前記制御部によって前記変換モードに設定された場合、
前記電源供給デバイスを前記組み込みソフトウェアの更新可能状態に設定して、前記制御部から出力される前記第１の通信インタフェースの前記組み込みソフトウェアの前記第２の通信インタフェースへの変換を実行し、かつ前記スイッチ部を前記第１のスイッチング状態に設定して、前記スイッチ部を介して前記第２の通信インタフェースで出力された前記組み込みソフトウェアを前記電源供給デバイスに出力し、
前記制御部によって前記非変換モードに設定された場合、
前記電源供給デバイスを前記組み込みソフトウェアの更新停止状態に設定して、前記第１の通信インタフェースから前記第２の通信インタフェースへの変換を停止し、かつ前記スイッチ部を前記第２のスイッチング状態に設定して、前記スイッチ部を介した前記第２の通信インタフェースによる前記制御部と前記電源供給デバイスとの通信を実行させる、
請求項７記載の情報処理システム。
【請求項９】
前記変換部は、前記第１の通信インタフェースから前記第２の通信インタフェースへの変換として、汎用シリアルバス通信インタフェースを同期シリアルバス通信インタフェースに変換する、
請求項７記載の情報処理システム。
【請求項１０】
組み込みソフトウェアで動作するデバイスと、モード設定にもとづいて前記デバイスへの入力の通信インタフェースの変換を行う変換部とを含む周辺装置に接続され、前記デバイスへの前記組み込みソフトウェアの更新時、第１の通信インタフェースで出力された前記組み込みソフトウェアに対し、前記変換部を変換モードに設定して前記第１の通信インタフェースから第２の通信インタフェースへの変換を実行させ、前記デバイスに対して前記第２の通信インタフェースで前記組み込みソフトウェアの更新を行い、前記組み込みソフトウェアの非更新時、前記変換部を非変換モードに設定して前記第１の通信インタフェースから前記第２の通信インタフェースへの変換を停止させ、前記デバイスに対する前記組み込みソフトウェアの更新を停止する制御部、
を有する情報処理装置。
【請求項１１】
コンピュータに、
組み込みソフトウェアで動作するデバイスへの前記組み込みソフトウェアの更新時、第１の通信インタフェースで出力された前記組み込みソフトウェアに対し、モード設定にもとづいて前記デバイスへの入力の通信インタフェースの変換を行う変換部を変換モードに設定して前記第１の通信インタフェースから第２の通信インタフェースへの変換を実行させて、前記デバイスに対して前記第２の通信インタフェースで前記組み込みソフトウェアの更新を行い、
前記組み込みソフトウェアの非更新時、前記変換部を非変換モードに設定して前記第１の通信インタフェースから前記第２の通信インタフェースへの変換を停止させて、前記デバイスに対する前記組み込みソフトウェアの更新を停止する、
処理を実行させるプログラム。
【請求項１２】
コンピュータに、
組み込みソフトウェアで動作するデバイスへの前記組み込みソフトウェアの更新時、前記組み込みソフトウェアを出力する出力部からのモード設定にもとづいて前記デバイスへの入力の通信インタフェースの変換を行う変換モードが設定された場合、第１の通信インタフェースで出力された前記組み込みソフトウェアを第２の通信インタフェースに変換し、前記デバイスに対して前記第２の通信インタフェースで前記組み込みソフトウェアの更新を行い、
前記組み込みソフトウェアの非更新時、前記出力部から非変換モードが設定された場合、前記第１の通信インタフェースから前記第２の通信インタフェースへの変換を停止して、前記デバイスに対する前記組み込みソフトウェアの更新を停止する、
処理を実行させるプログラム。
【請求項１３】
前記処理は、
前記変換モードが設定された場合、
前記デバイスを前記組み込みソフトウェアの更新可能状態に設定して、前記第１の通信インタフェースを前記第２の通信インタフェースに変換し、かつ前記コンピュータと前記デバイスとの間に配置されるスイッチ部を制御して、前記コンピュータと前記デバイスとを前記第２の通信インタフェースで接続する第１のスイッチング状態に設定し、
前記スイッチ部を介して前記デバイスに対して前記第２の通信インタフェースで出力された前記組み込みソフトウェアの更新を行い、
前記非変換モードが設定された場合、
前記デバイスを前記組み込みソフトウェアの更新停止状態に設定して、前記第１の通信インタフェースから前記第２の通信インタフェースへの変換を停止し、かつ前記スイッチ部を制御して前記出力部と前記デバイスとを前記第２の通信インタフェースで接続する第２のスイッチング状態に設定し、
前記デバイスに対する前記組み込みソフトウェアの更新を停止し、前記スイッチ部を介した前記第２の通信インタフェースによる前記出力部と前記デバイスとの通信を実行させる、
請求項１２記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システム、情報処理装置およびプログラムに関する。
【背景技術】
【０００２】
ホストＰＣ（Personal Computer）とコプロセッサ（co-processor）間の通信を、ＰＣＩｅ（Peripheral Component Interconnect Express：登録商標）等の拡張バスを用いて行う情報処理システムが開発されている。
【０００３】
このような情報処理システムには、組み込みソフトウェアであるファームウェアがインストールされている各種のデバイスが備えられている。例えば、ＰＣＩｅによる中継制御を行うＰＣＩｅブリッジコントローラや、電源供給制御を行う電源制御部等のデバイスがある。これらデバイスはファームウェアにもとづく制御を実行する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１９−１０１９００号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ファームウェアは、通常、機能の追加や不具合の修正のために更新（アップデート）される。ファームウェアが更新される場合、専用の外部インタフェースを設けて外部機器からファームウェアを書替えることが一般的に行われるが、この場合、ファームウェアの更新作業が煩雑になりやすい。
【０００６】
これに対し、ホストＰＣが汎用インタフェース（例えば、ＵＳＢ（Universal Serial Bus））を使用して、対象デバイスにアクセスしてファームウェアを更新する方法がある。この場合、従来では、汎用インタフェースのポートからファームウェアをいつでも更新できるようにポートが常にオン状態になっている。
【０００７】
しかし、常時オン状態のポートが存在すると、例えば、ファームウェアの更新が実施されていない期間では、そのポートは他からのアクセスが可能な状態になるため、セキュリティホールになってしまうという問題がある。
【０００８】
１つの側面では、本発明は、セキュリティホールの発生を防止してファームウェアの更新が可能な情報処理システム、情報処理装置およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記課題を解決するために、情報処理システムが提供される。情報処理システムは、組み込みソフトウェアで動作するデバイスと、モード設定にもとづいてデバイスへの入力の通信インタフェースの変換を行う変換部と、を含む周辺装置と、デバイスへの組み込みソフトウェアの更新時、第１の通信インタフェースで出力された組み込みソフトウェアに対し、変換部を変換モードに設定して第１の通信インタフェースから第２の通信インタフェースへの変換を実行させ、デバイスに対して第２の通信インタフェースで組み込みソフトウェアの更新を行い、組み込みソフトウェアの非更新時、変換部を非変換モードに設定して第１の通信インタフェースから第２の通信インタフェースへの変換を停止させ、デバイスに対する組み込みソフトウェアの更新を停止する制御部を含む情報処理装置とを有する。
【００１０】
また、上記課題を解決するために、上記情報処理システムと同様の制御を実行する情報処理装置が提供される。
さらに、コンピュータに上記情報処理システムと同様の制御を実行させるプログラムが提供される。
【発明の効果】
【００１１】
１側面によれば、セキュリティホールの発生を防止してファームウェアの更新を行うことが可能になる。
【図面の簡単な説明】
【００１２】
【図１】第１の実施の形態の情報処理システムの一例を説明するための図である。
【図２】第２の実施の形態の情報処理システムの構成の一例を示す図である。
【図３】情報処理システムのエッジコンピューティングの適用例を示す図である。
【図４】ホストＰＣのハードウェア構成の一例を示す図である。
【図５】ＰＣＩｅブリッジコントローラのファームウェア更新の動作例を説明するための図である。
【図６】ＰＣＩｅブリッジコントローラのファームウェア更新の動作例を説明するための図である。
【図７】電源制御部のファームウェア更新の動作例を説明するための図である。
【図８】ＰＣＩｅブリッジコントローラのファームウェア更新の動作シーケンスの一例を示す図である。
【図９】電源制御部のファームウェア更新の動作シーケンスの一例を示す図である。
【図１０】電源制御部のファームウェア更新の動作シーケンスの一例を示す図である。
【発明を実施するための形態】
【００１３】
以下、本実施の形態について図面を参照して説明する。
［第１の実施の形態］
図１は第１の実施の形態の情報処理システムの一例を説明するための図である。情報処理システム１−１は、情報処理装置１と周辺装置２を備える。情報処理装置１は、制御部１ａを含む。周辺装置２は、変換部２ａと、組み込みソフトウェアで動作するデバイス２ｂとを含む。
【００１４】
変換部２ａは、制御部１ａからのモード設定にもとづいてデバイス２ｂへの入力の通信インタフェースの変換を行う。なお、変換部２ａは、情報処理装置１側に配置されていてもよく、また、制御部１ａが変換部２ａの機能を共有してもよい。
【００１５】
制御部１ａは、デバイス２ｂへの組み込みソフトウェアの更新時、第１の通信インタフェースで出力された組み込みソフトウェアに対し、変換部２ａを変換モードに設定して、変換部２ａに第１の通信インタフェースから第２の通信インタフェースへの変換を実行させる。そして、制御部１ａは、デバイス２ｂに第２の通信インタフェースで組み込みソフトウェアの更新を行う。
【００１６】
また、制御部１ａは、デバイス２ｂへの組み込みソフトウェアの非更新時、変換部２ａを非変換モードに設定して、変換部２ａにおける第１の通信インタフェースから第２の通信インタフェースへの変換を停止させ、デバイス２ｂに対する組み込みソフトウェアの更新を停止する。
【００１７】
制御部１ａの動作フローについて説明する。
〔ステップＳ１〕制御部１ａは、変換部２ａを変換モードに設定する。
〔ステップＳ２〕制御部１ａは、第１の通信インタフェースで出力された組み込みソフトウェアを出力する。
〔ステップＳ３〕変換部２ａは、第１の通信インタフェースから第２の通信インタフェースへの変換を実行する。
〔ステップＳ４〕デバイス２ｂに対して、第２の通信インタフェースで組み込みソフトウェアの更新（書替え）が行われる。
【００１８】
〔ステップＳ５〕制御部１ａは、変換部２ａを非変換モードに設定する。
〔ステップＳ６〕変換部２ａは、第１の通信インタフェースから第２の通信インタフェースへの変換を停止する。デバイス２ｂへの組み込みソフトウェアの更新が停止される。
【００１９】
なお、制御部１ａが非変換モードを変換部２ａに設定した場合、制御部１ａは、組み込みソフトウェアの出力も通常は停止するが、制御部１ａから組み込みソフトウェアが出力されたとしても、変換部２ａの通信インタフェース変換は停止されている。よって、デバイス２ｂに対して組み込みソフトウェアの更新は停止される。
【００２０】
このように、情報処理システム１−１では、デバイス２ｂへの組み込みソフトウェアの更新時、制御部１ａは、変換部２ａを変換モードに設定して第１の通信インタフェースから第２の通信インタフェースへの変換を実行させて第２の通信インタフェースで組み込みソフトウェアの更新を行う。
【００２１】
また、組み込みソフトウェアの非更新時、制御部１ａは、変換部２ａを非変換モードに設定して第１の通信インタフェースから第２の通信インタフェースへの変換を停止させて組み込みソフトウェアの更新を停止する。
【００２２】
これにより、組み込みソフトウェアの更新時のみ、通信インタフェースが変換されて組み込みソフトウェアが更新されるので、従来のような常時オン状態のポートが存在しなくなる。このため、他からの不要なアクセスが可能になる脆弱性の存在を無くすことができる。よって、セキュリティホールの発生が防止され、脆弱性のリスクが低減された組み込みソフトウェアの更新を行うことが可能になる。
【００２３】
［第２の実施の形態］
次に第２の実施の形態として、拡張バスの一例であるＰＣＩｅを用いた情報処理システムについて説明する。なお、以降では、組み込みソフトウェアをファームウェアと表記する。
【００２４】
図２は第２の実施の形態の情報処理システムの構成の一例を示す図である。情報処理システム１−２は、ＰＣＩｅコネクタ２０ａを介して接続されるマザーボードＢｄ１とブリッジボードＢｄ２とを備える。マザーボードＢｄ１は、図１の情報処理装置１に対応し、ブリッジボードＢｄ２は、図１の周辺装置２に対応する。
【００２５】
マザーボードＢｄ１には、ホストＰＣ１０が搭載され、ホストＰＣ１０は、制御部１１を含む。ブリッジボードＢｄ２には、ＰＣＩｅブリッジコントローラ２０、ＰＣＩｅコネクタ２０ａ、電源制御部３０、インタフェース変換ＩＣ（Integrated Circuit）４１、４２、スイッチＩＣ５、コプロセッサ群６、コネクタＣＮ、スイッチｓｗ１、ｓｗ２および抵抗Ｒ１、Ｒ２が搭載される。
【００２６】
制御部１１は、プロセッサ（コンピュータ）で実現され、図１の制御部１ａの機能を有し、ホストＰＣ１０の動作およびシステム運用の主機能を担う。ＰＣＩｅブリッジコントローラ２０は、拡張バスを有する中継コネクタであるＰＣＩｅコネクタ２０ａを介して、マザーボードＢｄ１とブリッジボードＢｄ２との通信を中継制御する中継デバイスである。
【００２７】
また、ＰＣＩｅブリッジコントローラ２０は、複数のコプロセッサ６−１、・・・、６−ｎを含むコプロセッサ群６をブリッジ接続し、ホストＰＣ１０とコプロセッサ群６間の通信、およびコプロセッサ６−１、・・・、６−ｎ間の通信を中継する。なお、ＰＣＩｅブリッジコントローラ２０は、ファームウェアにもとづいて動作し、制御部１１によるファームウェア更新制御によってファームウェアの更新が行われる。
【００２８】
電源制御部３０は、システム内の各構成デバイスに対して電源の供給制御を行う電源供給デバイスである。電源制御部３０は、ファームウェアにもとづいて動作し、制御部１１によるファームウェア更新制御によってファームウェアの更新が行われる。
【００２９】
インタフェース変換ＩＣ４１、４２は、制御部１１からのモード設定にもとづいて、通信インタフェースの変換を行うＩＣであり、図１の変換部２ａの機能を実現する。インタフェース変換ＩＣ４１は、第１の通信インタフェースから第２の通信インタフェースへの変換として、汎用シリアルバス通信インタフェースを汎用非同期シリアルバス通信インタフェースに変換する。具体的には、ＵＳＢからＵＡＲＴ（Universal Asynchronous Receiver Transmitter）への通信インタフェース変換を行う（ＵＡＲＴからＵＳＢへの変換も可能である）。
【００３０】
インタフェース変換ＩＣ４２は、プロセッサ（コンピュータ）を含み、制御部１１からのモード設定にもとづき、第１の通信インタフェースから第２の通信インタフェースへの変換を行う。
第１の通信インタフェースから第２の通信インタフェースへの変換としては、汎用シリアルバス通信インタフェースを同期シリアルバス通信インタフェースに変換する。具体的には、インタフェース変換ＩＣ４２は、ＵＳＢからＩ２Ｃ（Inter-Integrated Circuit：Ｉ２Ｃは登録商標）への通信インタフェース変換を行うＩＣである（Ｉ２ＣからＵＳＢへの変換も可能である）。また、インタフェース変換ＩＣ４２は、スイッチＩＣ５のスイッチング制御を行う（図７、９、１０で後述）。
【００３１】
コプロセッサ６−１、・・・、６−ｎは、ＡＩ（Artificial Intelligence）推論処理や画像処理等の並列演算処理を行う演算プロセッサであり、例えば、ＧＰＵ（Graphics Processing Unit）やＦＰＧＡ（Field Programmable Gate Array）等が採用される。なお、コプロセッサ６−１、・・・、６−ｎは、ＣＰＵと、ＧＰＵ等の他の演算プロセッサとの組み合わせであってもよい。
【００３２】
コネクタＣＮは、外部から送信される第１の通信インタフェースを接続するコネクタである。具体的には、コネクタＣＮは、ＵＳＢインタフェースの信号を出力する外部機器（保守端末等）と接続する。
【００３３】
スイッチｓｗ１、ｓｗ２は、ユーザにより操作される手動スイッチである。スイッチｓｗ１の一端は、抵抗Ｒ１を介して３．３Ｖの電源に接続され、スイッチｓｗ１の他端は、抵抗Ｒ２の一端と、制御部１ａから出力される信号MODEが流れるラインとに接続される。抵抗Ｒ２の他端はＧＮＤに接続される。スイッチｓｗ２の一端はＧＮＤに接続され、スイッチｓｗ２の他端は、制御部１ａから出力される信号RST1が流れるラインに接続される。
【００３４】
システム内を流れる各信号およびデータについて説明する。信号MODEおよび信号RST1の２つの信号は、ＰＣＩｅブリッジコントローラ２０に対して、ファームウェアを更新可能状態または更新停止状態（更新不可状態）に設定するための状態設定信号である。
【００３５】
また、信号MODEおよび信号RST1がＰＣＩｅブリッジコントローラ２０に流れる経路は２系統ある。図２において、１つ目の経路ｒ１（第１の経路）は、制御部１１からＰＣＩｅブリッジコントローラ２０に向かって流れる経路である。２つ目の経路ｒ２（第２の経路）は、スイッチｓｗ１、ｓｗ２が操作されて、スイッチｓｗ１、ｓｗ２からＰＣＩｅブリッジコントローラ２０に向かって流れる経路である。
【００３６】
経路ｒ１のとき、ＰＣＩｅブリッジコントローラ２０は、制御部１１によって、ファームウェアが更新可能状態または更新停止状態に設定される。経路ｒ２のとき、ＰＣＩｅブリッジコントローラ２０は、スイッチｓｗ１、ｓｗ２によって、ファームウェアが更新可能状態または更新停止状態に設定される。
【００３７】
このように、信号MODEおよび信号RST1を含む状態設定信号が流れる２系統の経路を備えることにより、ＰＣＩｅブリッジコントローラ２０は、ホストＰＣ１０からだけでなく、コネクタＣＮに接続される外部機器からもファームウェアの更新が可能になる（ホストＰＣ１０からのファームウェア更新は図５で、外部機器からのファームウェア更新は図６で後述）。
【００３８】
信号ON／OFF1は、制御部１１からインタフェース変換ＩＣ４１に向かって出力されるモード設定のための信号であり、インタフェース変換ＩＣ４１の通信インタフェース変換機能を変換モードまたは非変換モードに設定する。
【００３９】
信号ON／OFF2は、制御部１１からインタフェース変換ＩＣ４２に向かって出力されるモード設定のための信号であり、インタフェース変換ＩＣ４２の通信インタフェース変換機能を変換モードまたは非変換モードに設定する。
【００４０】
信号BOOTおよび信号RST2の２つの信号は、インタフェース変換ＩＣ４２から電源制御部３０に向かって出力され、電源制御部３０に対して、ファームウェアを更新可能状態または更新停止状態に設定するための状態設定信号である。
【００４１】
信号SEL_SWは、インタフェース変換ＩＣ４２からスイッチＩＣ５に向かって出力され、スイッチＩＣ５のスイッチング状態を切替える信号である。例えば、信号SEL_SWがＨレベルのとき、スイッチＩＣ５は、インタフェース変換ＩＣ４２と電源制御部３０とをＩ２Ｃの通信インタフェースで接続する第１のスイッチング状態になる。
また、信号SEL_SWがＬレベルのとき、スイッチＩＣ５は、制御部１１と電源制御部３０とをＩ２Ｃの通信インタフェースで接続する第２のスイッチング状態になる。
【００４２】
一方、制御部１１は、ＰＣＩｅブリッジコントローラ２０のファームウェア更新時、ＵＳＢ２．０１の通信インタフェースでＰＣＩｅブリッジコントローラ２０のファームウェアのデータをインタフェース変換ＩＣ４１に出力する。
インタフェース変換ＩＣ４１は、ＵＳＢをＵＡＲＴに変換して、ＵＡＲＴの通信インタフェースのファームウェアをＰＣＩｅブリッジコントローラ２０に送信する。
【００４３】
制御部１１は、電源制御部３０のファームウェア更新時、ＵＳＢ２．０２の通信インタフェースで電源制御部３０のファームウェアのデータをインタフェース変換ＩＣ４２に出力する。
インタフェース変換ＩＣ４２は、ＵＳＢをＩ２Ｃに変換して、Ｉ２Ｃの通信インタフェースのファームウェアを、スイッチＩＣ５を介して電源制御部３０に送信する。電源制御部３０は、通常運用時には、所定デバイスに電源を供給する。また、電源制御部３０は、通常運用時には、電源供給以外に制御部１１とＩ２Ｃインタフェースでデータ通信が可能である。
【００４４】
なお、外部機器から出力されるＵＳＢ２．０ １の通信インタフェースを有するＰＣＩｅブリッジコントローラ２０のファームウェアのデータは、コネクタＣＮを介してインタフェース変換ＩＣ４１に入力される。
【００４５】
＜エッジコンピューティングの適用＞
図３は情報処理システムのエッジコンピューティングの適用例を示す図である。図２で上述したホストＰＣ１０をエッジサーバとみなして、情報処理システム１−２をエッジコンピューティングに適用することができる。
【００４６】
エッジコンピューティングシステムｓｙ１は、情報処理システム１−２、専用ネットワークＮ１（インターネット等）およびクラウドネットワークＮ２を備える。情報処理システム１−２内のホストＰＣ１０は専用ネットワークＮ１に接続され、専用ネットワークＮ１はクラウドネットワークＮ２に接続される。
【００４７】
ホストＰＣ１０は、ＰＣＩｅブリッジコントローラ２０を介して、コプロセッサ６ー１、・・・、６−ｎで分散処理されたデータを集約して、専用ネットワークＮ１を介してクラウドネットワークＮ２へ送信する。
【００４８】
このような構成によって、クラウド側のリソースを節約してエッジ側での処理が可能になる。これにより、クラウドネットワークＮ２を介した応答時間が低減するためリアルタイム性を確保できる。
【００４９】
また、ホストＰＣ１０上でデータを処理して結果をクラウドネットワークＮ２へ送信するので、データの秘匿性を確保できる。さらに、ホストＰＣ１０上でデータを処理して必要なデータのみをクラウドネットワークＮ２へ送信することで、通信量を削減できる。
【００５０】
＜ハードウェア構成＞
図４はホストＰＣのハードウェア構成の一例を示す図である。ホストＰＣ１０は、制御部１１の機能を有するプロセッサ（コンピュータ）１００によって全体制御されている。
【００５１】
プロセッサ１００には、バス１０３を介して、メモリ１０１および複数の周辺機器が接続されている。プロセッサ１００は、マルチプロセッサであってもよい。プロセッサ１００は、例えば、ＣＰＵ（Central Processing Unit）、ＭＰＵ（Micro Processing Unit）、ＤＳＰ（Digital Signal Processor）、ＡＳＩＣ（Application Specific Integrated Circuit）、またはＰＬＤ（Programmable Logic Device）である。またプロセッサ１００は、ＣＰＵ、ＭＰＵ、ＤＳＰ、ＡＳＩＣ、ＰＬＤのうちの２以上の要素の組み合わせであってもよい。
【００５２】
メモリ１０１は、ホストＰＣ１０の記憶部に相当し、例えば、主記憶装置として使用される。メモリ１０１には、プロセッサ１００に実行させるＯＳ（Operating System）のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、メモリ１０１には、プロセッサ１００による処理に要する各種データが格納される。
【００５３】
また、メモリ１０１は、ホストＰＣ１０の補助記憶装置としても使用され、ＯＳのプログラム、アプリケーションプログラム、および各種データが格納される。メモリ１０１は、補助記憶装置として、フラッシュメモリやＳＳＤ（Solid State Drive）等の半導体記憶装置やＨＤＤ（Hard Disk Drive）等の磁気記録媒体を含んでもよい。
【００５４】
バス１０３に接続されている周辺機器としては、入出力インタフェース１０２およびネットワークインタフェース１０４がある。入出力インタフェース１０２は、プロセッサ１００からの命令にしたがってホストＰＣ１０の状態を表示する表示装置として機能するモニタ（例えば、ＬＥＤ（Light Emitting Diode）やＬＣＤ（Liquid Crystal Display）等）が接続できる。
【００５５】
さらに、入出力インタフェース１０２は、キーボードやマウス等の情報入力装置を接続可能であって、情報入力装置から送られてくる信号をプロセッサ１００に送信する。さらにまた、入出力インタフェース１０２は、周辺機器を接続するための通信インタフェースとしても機能する。
【００５６】
例えば、入出力インタフェース１０２は、レーザ光等を利用して、光ディスクに記録されたデータの読み取りを行う光学ドライブ装置を接続することができる。光ディスクには、Ｂｌｕ−ｒａｙＤｉｓｃ（登録商標）、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＣＤ−Ｒ（Recordable）／ＲＷ（Rewritable）等がある。
【００５７】
また、入出力インタフェース１０２は、メモリ装置やメモリリーダライタを接続することができる。メモリ装置は、入出力インタフェース１０２との通信機能を搭載した記録媒体である。メモリリーダライタは、メモリカードへのデータの書き込み、またはメモリカードからのデータの読み出しを行う装置である。メモリカードは、カード型の記録媒体である。
【００５８】
ネットワークインタフェース１０４は、ネットワークと接続してネットワークインタフェース制御を行い、例えば、ＮＩＣ（Network Interface Card）、無線ＬＡＮ（Local Area Network）カード等を使用することもできる。ネットワークインタフェース１０４で受信されたデータは、メモリ１０１やプロセッサ１００に出力される。
【００５９】
以上のようなハードウェア構成によって、ホストＰＣ１０の処理機能を実現することができる。なお、インタフェース変換ＩＣ４２もコンピュータを備えて、図４に示した同様のハードウェアにより実現することができる。
【００６０】
一方、ホストＰＣ１０は、プロセッサ１００がそれぞれ所定のプログラムを実行することで本発明の処理を行うことができる。ホストＰＣ１０は、例えば、コンピュータで読み取り可能な記録媒体に記録されたプログラムを実行することにより、本発明の処理機能を実現する。ホストＰＣ１０に実行させる処理内容を記述したプログラムは、様々な記録媒体に記録しておくことができる。
【００６１】
例えば、ホストＰＣ１０に実行させるプログラムを補助記憶装置に格納しておくことができる。プロセッサ１００は、補助記憶装置内のプログラムの少なくとも一部を主記憶装置にロードし、プログラムを実行する。
【００６２】
また、光ディスク、メモリ装置、メモリカード等の可搬型記録媒体に記録しておくこともできる。可搬型記録媒体に格納されたプログラムは、例えば、プロセッサ１００からの制御により、補助記憶装置にインストールされた後、実行可能となる。またプロセッサ１００が、可搬型記録媒体から直接プログラムを読み出して実行することもできる。
【００６３】
＜ＰＣＩｅブリッジコントローラのファームウェア更新＞
次にＰＣＩｅブリッジコントローラ２０のファームウェアを更新する場合について説明する。ＰＣＩｅブリッジコントローラ２０のファームウェア更新では、制御部１１から出力されたファームウェアで更新する場合と、コネクタＣＮに接続された外部機器から出力されたファームウェアで更新する場合とがあり、それぞれ図５、図６で説明する。
【００６４】
図５はＰＣＩｅブリッジコントローラのファームウェア更新の動作例を説明するための図である。制御部１１から出力されたファームウェアで更新する場合を示している。
〔ステップＳ１１〕制御部１１は、所定レベルとして例えば、Ｈレベルの信号MODEを出力する。信号MODEは、経路ｒ１を通じてＰＣＩｅブリッジコントローラ２０に送信される。
〔ステップＳ１２〕制御部１１は、所定レベルとして例えば、Ｌレベルの信号RST1を出力する。信号RST1は、経路ｒ１を通じてＰＣＩｅブリッジコントローラ２０に送信される。
【００６５】
ステップＳ１１、Ｓ１２において、ＰＣＩｅブリッジコントローラ２０のファームウェアを更新する場合、信号MODEはＨレベルにし、その後にＬレベルの信号RST1によってＰＣＩｅブリッジコントローラ２０をリセットする。これにより、ＰＣＩｅブリッジコントローラ２０は、ファームウェア更新可能状態になる。
【００６６】
〔ステップＳ１３〕制御部１１は、信号ON／OFF1を例えば、Ｈレベルにし、インタフェース変換ＩＣ４１をオンにして変換モードに設定する。インタフェース変換ＩＣ４１は、通信インタフェース変換を駆動する。
【００６７】
〔ステップＳ１４〕制御部１１は、ファームウェアの更新データを出力する。具体的に制御部１１は、ＵＳＢインタフェース（例えば、ＵＳＢ２．０１）を有する更新データをインタフェース変換ＩＣ４１に送信する。
【００６８】
〔ステップＳ１５〕インタフェース変換ＩＣ４１は、ＵＳＢインタフェースのファームウェア更新データをＵＡＲＴインタフェースに変換し、ＵＡＲＴインタフェースのファームウェア更新データをＰＣＩｅブリッジコントローラ２０に送信する。これにより、ＰＣＩｅブリッジコントローラ２０のファームウェア更新が行われる。
【００６９】
〔ステップＳ１６〕制御部１１は、ファームウェアの更新終了時、信号ON／OFF1を例えば、Ｌレベルにし、インタフェース変換ＩＣ４１をオフにして非変換モードに設定する。インタフェース変換ＩＣ４１は、通信インタフェース変換を停止する。
【００７０】
〔ステップＳ１７〕制御部１１は、所定レベルとして例えば、Ｌレベルの信号MODEを出力する。信号MODEは、経路ｒ１を通じてＰＣＩｅブリッジコントローラ２０に送信される。
〔ステップＳ１８〕制御部１１は、所定レベルとして例えば、Ｌレベルの信号RST1を出力する。信号RST1は、経路ｒ１を通じてＰＣＩｅブリッジコントローラ２０に送信される。
【００７１】
ステップＳ１７、Ｓ１８において、ＰＣＩｅブリッジコントローラ２０のファームウェア更新を停止する場合（通常運用モードにする場合）、制御部１１が、信号MODEをＬレベルにし、その後にＬレベルの信号RST1によってＰＣＩｅブリッジコントローラ２０をリセットする。これにより、ＰＣＩｅブリッジコントローラ２０は、ファームウェア更新が停止になって通常運用状態（通常の中継制御状態）になる。
【００７２】
このように、制御部１１は、経路ｒ１を通じて出力した状態設定信号（信号MODEおよび信号RST1）にもとづき、ＰＣＩｅブリッジコントローラ２０をファームウェア更新可能状態に設定する。そして、インタフェース変換ＩＣ４１の通信インタフェース変換を駆動して、ＵＳＢインタフェースをＵＡＲＴインタフェースに変換させて、ＵＡＲＴインタフェースでＰＣＩｅブリッジコントローラ２０に対してファームウェアの更新を行う。
【００７３】
また、制御部１１は、経路ｒ１を通じて出力した状態設定信号にもとづき、ＰＣＩｅブリッジコントローラ２０をファームウェア更新停止状態に設定する。そして、インタフェース変換ＩＣ４１の通信インタフェース変換を停止して、ＰＣＩｅブリッジコントローラ２０に対するファームウェアの更新を停止する。
【００７４】
このような動作によって、ＰＣＩｅブリッジコントローラ２０のファームウェアの更新時のみ、通信インタフェースがＵＳＢからＵＡＲＴに変換されてファームウェアが更新される。
このため、従来存在していたようなファームウェアを出力させるための常時オン状態のポートといった脆弱性の存在を無くすことができる。よって、セキュリティホールの発生を防止して、ＰＣＩｅブリッジコントローラ２０のファームウェアの更新を安全に効率よく行うことが可能になる。
【００７５】
図６はＰＣＩｅブリッジコントローラのファームウェア更新の動作例を説明するための図である。コネクタＣＮに接続された外部機器から出力されたファームウェアで更新する場合を示している。
〔ステップＳ２０〕コネクタＣＮに外部機器が接続される。
【００７６】
〔ステップＳ２１〕スイッチｓｗ１がオンされることにより、スイッチｓｗ１は、Ｈレベルの信号MODEを出力する。信号MODEは、経路ｒ２を通じてＰＣＩｅブリッジコントローラ２０に送信される。
【００７７】
〔ステップＳ２２〕スイッチｓｗ２がオンされることにより、スイッチｓｗ２は、Ｌレベルの信号RST1を出力する。信号RST1は、経路ｒ２を通じてＰＣＩｅブリッジコントローラ２０に送信される。
【００７８】
ステップＳ２１、Ｓ２２において、ＰＣＩｅブリッジコントローラ２０のファームウェアを更新する場合、スイッチｓｗ１、ｓｗ２の操作によって、信号MODEはＨレベルにし、その後にＬレベルの信号RST1によってＰＣＩｅブリッジコントローラ２０をリセットする。これにより、ＰＣＩｅブリッジコントローラ２０は、ファームウェア更新可能状態になる。
【００７９】
〔ステップＳ２３〕制御部１１は、信号ON／OFF1を例えば、Ｈレベルにし、インタフェース変換ＩＣ４１をオンにして変換モードに設定する。これにより、インタフェース変換ＩＣ４１は、通信インタフェース変換を駆動する。
【００８０】
〔ステップＳ２４〕コネクタＣＮは、接続された外部機器から出力されるファームウェアの更新データをインタフェース変換ＩＣ４１に送信する。すなわち、コネクタＣＮは、外部機器から出力されるＵＳＢインタフェース（例えば、ＵＳＢ２．０１）を有する更新データをインタフェース変換ＩＣ４１に送信する。
【００８１】
〔ステップＳ２５〕インタフェース変換ＩＣ４１は、ＵＳＢインタフェースのファームウェア更新データをＵＡＲＴインタフェースに変換し、ＵＡＲＴインタフェースのファームウェア更新データをＰＣＩｅブリッジコントローラ２０に送信する。これにより、ＰＣＩｅブリッジコントローラ２０のファームウェア更新が行われる。
【００８２】
〔ステップＳ２６〕制御部１１は、ファームウェアの更新終了時、信号ON／OFF1を例えば、Ｌレベルにし、インタフェース変換ＩＣ４１をオフにして非変換モードに設定する。インタフェース変換ＩＣ４１は、通信インタフェース変換を停止する。
【００８３】
〔ステップＳ２７〕ファームウェアの更新後、スイッチｓｗ１がオフされることにより、スイッチｓｗ１は、Ｌレベルの信号MODEを出力する。信号MODEは、経路ｒ２を通じてＰＣＩｅブリッジコントローラ２０に送信される。
【００８４】
〔ステップＳ２８〕スイッチｓｗ２がオンされることにより、スイッチｓｗ２は、Ｌレベルの信号RST1を出力する。信号RST1は、経路ｒ２を通じてＰＣＩｅブリッジコントローラ２０に送信される。
【００８５】
ステップＳ２７、Ｓ２８において、ＰＣＩｅブリッジコントローラ２０のファームウェア更新を停止する場合（通常運用モードにする場合）、スイッチｓｗ１がオフして、信号MODEはＬレベルにし、その後にスイッチｓｗ２をオンしてＬレベルの信号RST1によってＰＣＩｅブリッジコントローラ２０をリセットする。これにより、ＰＣＩｅブリッジコントローラ２０は、ファームウェア更新が停止になって通常運用状態になる。
【００８６】
このように、ＰＣＩｅブリッジコントローラ２０は、ホストＰＣ１０からだけでなく、外部機器からによってもファームウェアの更新が可能な機構が備えられている。このため、ホストＰＣ１０を介さずに、ＰＣＩｅブリッジコントローラ２０のファームウェア更新を行うことが可能になる。
【００８７】
また、外部機器からファームウェアを更新する場合でも、ＰＣＩｅブリッジコントローラ２０のファームウェアの更新時のみ、通信インタフェースがＵＳＢからＵＡＲＴに変換されてファームウェアが更新される。
このため、ファームウェアを出力させるための常時オン状態のポートのような脆弱性の存在を無くすことができるので、セキュリティホールの発生を防止して、ＰＣＩｅブリッジコントローラ２０のファームウェアの更新を安全に効率よく行うことが可能になる。
【００８８】
＜電源制御部のファームウェア更新＞
次に電源制御部３０のファームウェアを更新する場合について説明する。図７は電源制御部のファームウェア更新の動作例を説明するための図である。
【００８９】
〔ステップＳ３１〕制御部１１は、信号ON／OFF2を例えば、Ｈレベルにし、インタフェース変換ＩＣ４２をオンにして変換モードに設定する。インタフェース変換ＩＣ４２は、通信インタフェース変換を駆動する。
【００９０】
〔ステップＳ３２〕インタフェース変換ＩＣ４２は、信号SEL_SWを例えば、Ｈレベルにして、スイッチＩＣ５をファームウェア更新側にスイッチングする（第１のスイッチング状態）。すなわち、信号SEL_SWがＨレベルに設定されることで、スイッチＩＣ５の端子ａと端子ｃが内部接続される。
【００９１】
〔ステップＳ３３〕インタフェース変換ＩＣ４２は、所定レベルとして例えば、Ｈレベルの信号BOOTを電源制御部３０に送信する。
〔ステップＳ３４〕インタフェース変換ＩＣ４２は、所定レベルとして例えば、Ｌレベルの信号RST2を電源制御部３０に送信する。
【００９２】
ステップＳ３３、Ｓ３４において、電源制御部３０のファームウェアを更新する場合、信号BOOTはＨレベルにし、その後にＬレベルの信号RST2によって電源制御部３０をリセットする。これにより、電源制御部３０は、ファームウェア更新可能状態になる。
【００９３】
〔ステップＳ３５〕制御部１１（組み込みソフトウェアを出力する出力部に相当）は、ファームウェアの更新データを出力する。すなわち、制御部１１は、ＵＳＢインタフェース（例えば、ＵＳＢ２．０２）を有する更新データをインタフェース変換ＩＣ４２に送信する。
【００９４】
〔ステップＳ３６〕インタフェース変換ＩＣ４２は、ＵＳＢインタフェースのファームウェア更新データをＩ２Ｃインタフェースに変換し、Ｉ２Ｃインタフェースのファームウェア更新データをスイッチＩＣ５に送信する。
【００９５】
〔ステップＳ３７〕Ｉ２Ｃのファームウェア更新データは、スイッチＩＣ５から電源制御部３０に送信されて、電源制御部３０に対してファームウェア更新が行われる。
〔ステップＳ３８〕ファームウェアの更新終了時、制御部１１は、信号ON／OFF2を例えば、Ｌレベルにし、インタフェース変換ＩＣ４２をオフにして非変換モードに設定する。インタフェース変換ＩＣ４２は、通信インタフェース変換を停止する。
【００９６】
〔ステップＳ３９〕インタフェース変換ＩＣ４２は、所定レベルとして例えば、Ｌレベルの信号BOOTを出力する。
〔ステップＳ４０〕インタフェース変換ＩＣ４２は、所定レベルとして例えば、Ｌレベルの信号RST2を出力する。
【００９７】
ステップＳ３９、Ｓ４０において、電源制御部３０のファームウェア更新を停止する場合（通常運用モードにする場合）、インタフェース変換ＩＣ４２が、信号BOOTはＬレベルにし、その後にＬレベルの信号RST2によって電源制御部３０をリセットする。これにより、電源制御部３０はファームウェアの更新が停止される。
【００９８】
〔ステップＳ４１〕インタフェース変換ＩＣ４２は、信号SEL_SWを例えば、ＬレベルにしてスイッチＩＣ５を通常運用側にスイッチングする（第２のスイッチング状態）。すなわち、信号SEL_SWがＬレベルに設定されることで、スイッチＩＣ５の端子ｂと端子ｃが内部接続される。
〔ステップＳ４２〕制御部１１と電源制御部３０間で、スイッチＩＣ５を介して、Ｉ２Ｃの通信インタフェースにおけるデータ通信が行われる。
【００９９】
このように、インタフェース変換ＩＣ４２は、制御部１１から変換モードが設定されると、通信インタフェース変換を駆動して、ＵＳＢインタフェースをＩ２Ｃインタフェースに変換する。さらに、インタフェース変換ＩＣ４２は、スイッチＩＣ５を制御して、インタフェース変換ＩＣ４２と電源制御部３０とをＩ２Ｃインタフェースで接続する第１のスイッチング状態に設定して、Ｉ２Ｃインタフェースで電源制御部３０に対してファームウェアの更新を行う。
【０１００】
また、インタフェース変換ＩＣ４２は、制御部１１から非変換モードが設定されると、通信インタフェース変換を停止して、電源制御部３０に対するファームウェアの更新を停止する。さらに、スイッチＩＣ５を制御して、制御部１１と電源制御部３０とをＩ２Ｃインタフェースで接続する第２のスイッチング状態に設定して、スイッチＩＣ５を介したＩ２Ｃインタフェースによる制御部１１と電源制御部３０の通信を実行させる。
【０１０１】
このような動作によって、電源制御部３０のファームウェアの更新時のみ、通信インタフェースがＵＳＢからＩ２Ｃに変換されてファームウェアが更新される。このため、ファームウェアを出力させるための常時オン状態のポートのような脆弱性の存在を無くすことができるので、セキュリティホールの発生を防止して、電源制御部３０のファームウェアの更新を安全に効率よく行うことが可能になる。
【０１０２】
また、インタフェース変換ＩＣ４２にもプロセッサ（コンピュータ）が備えられて、電源制御部３０のファームウェア更新制御の一部の機能を持たせることで制御部１１の負荷を軽減することができ、さらに、ファームウェア更新以外では、制御部１１と電源制御部３０間でデータ通信を実行させることが可能になる。
【０１０３】
＜ファームウェア更新シーケンス＞
次に図５に示したＰＣＩｅブリッジコントローラ２０のファームウェア更新と、図７に示した電源制御部３０のファームウェア更新とについて、コプロセッサ群６の制御も含めてシーケンス図を用いて説明する。
【０１０４】
図８はＰＣＩｅブリッジコントローラのファームウェア更新の動作シーケンスの一例を示す図である。
〔ステップＳ５０〕制御部１１は、ユーザからのＰＣＩｅブリッジコントローラ２０のファームウェア更新指示を受信する。
【０１０５】
〔ステップＳ５１〕制御部１１は、ＰＣＩｅブリッジコントローラ２０を通じて、コプロセッサ群６に対してデータ転送停止要求を送信する。
〔ステップＳ５２〕コプロセッサ群６は、データ転送を停止し、データ転送を停止したことを制御部１１に応答する。
【０１０６】
〔ステップＳ５３〕制御部１１は、電源制御部３０に対して、コプロセッサ群６の電源オフ要求を行う。
〔ステップＳ５４〕電源制御部３０は、コプロセッサ群６の電源供給をオフする。
【０１０７】
〔ステップＳ５５〕制御部１１は、状態設定信号である信号MODEおよび信号RST1にもとづいて、ＰＣＩｅブリッジコントローラ２０をファームウェア更新可能状態にする。すなわち、制御部１１は、Ｈレベルの信号MODEをＰＣＩｅブリッジコントローラ２０に送信し、さらにＬレベルの信号RST1によりＰＣＩｅブリッジコントローラ２０をリセットして、ＰＣＩｅブリッジコントローラ２０をファームウェア更新可能状態に設定する。
【０１０８】
〔ステップＳ５６〕制御部１１は、信号ON／OFF1をオンしてインタフェース変換ＩＣ４１を変換モードに設定し、通信インタフェース変換を駆動させる。
〔ステップＳ５７〕制御部１１は、ＵＳＢインタフェースを有する更新対象のファームウェアをインタフェース変換ＩＣ４１に送信する。
【０１０９】
〔ステップＳ５８〕インタフェース変換ＩＣ４１は、ＵＳＢインタフェースをＵＡＲＴインタフェースに変換し、ＵＡＲＴインタフェースを有するファームウェアをＰＣＩｅブリッジコントローラ２０に送信して、ＰＣＩｅブリッジコントローラ２０のファームウェアを更新する。
【０１１０】
〔ステップＳ５９〕制御部１１は、ＰＣＩｅブリッジコントローラ２０に対するファームウェアの更新完了を認識すると、信号ON／OFF1をオフしてインタフェース変換ＩＣ４１を非変換モードに設定し、インタフェース変換ＩＣ４１の通信インタフェース変換を停止させる。
【０１１１】
〔ステップＳ６０〕制御部１１は、状態設定信号である信号MODEおよび信号RST1にもとづいて、ＰＣＩｅブリッジコントローラ２０をファームウェア更新停止状態にする。すなわち、制御部１１は、Ｌレベルの信号MODEをＰＣＩｅブリッジコントローラ２０に送信し、さらにＬレベルの信号RST1によりＰＣＩｅブリッジコントローラ２０をリセットして、ＰＣＩｅブリッジコントローラ２０をファームウェア更新停止状態に設定する。
【０１１２】
〔ステップＳ６１〕制御部１１は、電源制御部３０に対して、コプロセッサ群６の電源オン要求を行う。
〔ステップＳ６２〕電源制御部３０は、コプロセッサ群６の電源供給をオンする。
〔ステップＳ６３〕制御部１１は、ＰＣＩｅブリッジコントローラ２０のファームウェアの更新が完了したことを外部通知する。
このように、ＰＣＩｅブリッジコントローラ２０のファームウェア更新時、コプロセッサ群６の電源供給を一旦停止させてから行うことにより、コプロセッサ群６の演算処理に支障を与えることのないファームウェア更新が可能になる。
【０１１３】
図９、図１０は電源制御部のファームウェア更新の動作シーケンスの一例を示す図である。
〔ステップＳ７０〕制御部１１は、ユーザからの電源制御部３０のファームウェア更新指示を受信する。
【０１１４】
〔ステップＳ７１〕制御部１１は、電源制御部３０を通じて、コプロセッサ群６に対してデータ転送停止要求を送信する。
〔ステップＳ７２〕コプロセッサ群６は、データ転送を停止し、データ転送を停止したことを制御部１１に応答する。
【０１１５】
〔ステップＳ７３〕制御部１１は、電源制御部３０に対して、コプロセッサ群６の電源オフ要求を行う。
〔ステップＳ７４〕電源制御部３０は、コプロセッサ群６の電源供給をオフする。
【０１１６】
〔ステップＳ７５〕制御部１１は、信号ON／OFF2をオンしてインタフェース変換ＩＣ４２を変換モードに設定し、通信インタフェース変換を駆動させる。
〔ステップＳ７６〕インタフェース変換ＩＣ４２は、スイッチＩＣ５に送信する信号SEL_SWをＨレベルにして、インタフェース変換ＩＣ４２と電源制御部３０をＩ２Ｃインタフェースで接続する第１のスイッチング状態にする。
【０１１７】
〔ステップＳ７７〕インタフェース変換ＩＣ４２は、状態設定信号である信号BOOTおよび信号RST2にもとづいて、電源制御部３０をファームウェア更新可能状態にする。すなわち、インタフェース変換ＩＣ４２は、Ｈレベルの信号MODEを電源制御部３０に送信し、さらにＬレベルの信号RST2により電源制御部３０をリセットして、電源制御部３０をファームウェア更新可能状態に設定する。
【０１１８】
〔ステップＳ７８〕制御部１１は、ＵＳＢインタフェースを有する更新対象のファームウェアをインタフェース変換ＩＣ４２に送信する。
〔ステップＳ７９〕インタフェース変換ＩＣ４２は、ＵＳＢインタフェースをＩ２Ｃインタフェースに変換し、Ｉ２Ｃインタフェースを有するファームウェアを、スイッチＩＣ５を介して電源制御部３０に送信して、電源制御部３０のファームウェアを更新する。
【０１１９】
〔ステップＳ８０〕制御部１１は、電源制御部３０に対するファームウェアの更新完了を認識すると、信号ON／OFF2をオフしてインタフェース変換ＩＣ４２を非変換モードに設定し、インタフェース変換ＩＣ４２の通信インタフェース変換を停止させる。
【０１２０】
〔ステップＳ８１〕インタフェース変換ＩＣ４２は、スイッチＩＣ５に送信する信号SEL_SWをＬレベルにして、制御部１１と電源制御部３０をＩ２Ｃインタフェースで接続する第２のスイッチング状態にする。
【０１２１】
〔ステップＳ８２〕インタフェース変換ＩＣ４２は、状態設定信号である信号BOOTおよび信号RST2にもとづいて、電源制御部３０をファームウェア更新停止状態にする。すなわち、インタフェース変換ＩＣ４２は、Ｌレベルの信号BOOTを電源制御部３０に送信し、さらにＬレベルの信号RST2により電源制御部３０をリセットして、電源制御部３０をファームウェア更新停止状態に設定する。
【０１２２】
〔ステップＳ８３〕制御部１１は、電源制御部３０に対して、コプロセッサ群６の電源オン要求を行う。
〔ステップＳ８４〕電源制御部３０は、コプロセッサ群６の電源供給をオンする。
【０１２３】
〔ステップＳ８５〕制御部１１は、電源制御部３０のファームウェアの更新が完了したことを外部通知する。
〔ステップＳ８６〕制御部１１と電源制御部３０との間で、スイッチＩＣ５を介して、Ｉ２Ｃインタフェースのデータ通信が可能になる。
【０１２４】
このように、電源制御部３０のファームウェア更新時、コプロセッサ群６の電源供給を一旦停止させてから行うことにより、コプロセッサ群６の演算処理に支障を与えることのないファームウェア更新が可能になる。
なお、上記の例では、電源制御部３０のファームウェア更新時にコプロセッサ群６への電源供給を停止しているが、コプロセッサ群６に電源を供給されている状態で電源制御部３０のファームウェア更新が可能な場合は、コプロセッサ群６への電源供給停止シーケンスは省略してもよい。
【０１２５】
上記で説明した本発明の情報処理システム１−１、１−２の処理機能は、コンピュータによって実現することができる。この場合、情報処理システム１−１、１−２が有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。
【０１２６】
処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記憶装置、光ディスク、光磁気記録媒体、半導体メモリ等がある。磁気記憶装置には、ハードディスク装置（ＨＤＤ）、フレキシブルディスク（ＦＤ）、磁気テープ等がある。光ディスクには、ＣＤ−ＲＯＭ／ＲＷ等がある。光磁気記録媒体には、ＭＯ（Magneto Optical disk）等がある。
【０１２７】
プログラムを流通させる場合、例えば、そのプログラムが記録されたＣＤ−ＲＯＭ等の可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【０１２８】
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。
【０１２９】
また、コンピュータは、ネットワークを介して接続されたサーバコンピュータからプログラムが転送される毎に、逐次、受け取ったプログラムに従った処理を実行することもできる。また、上記の処理機能の少なくとも一部を、ＤＳＰ、ＡＳＩＣ、ＰＬＤ等の電子回路で実現することもできる。
【０１３０】
以上、実施の形態を例示したが、実施の形態で示した各部の構成は同様の機能を有する他のものに置換することができる。また、他の任意の構成物や工程が付加されてもよい。さらに、前述した実施の形態のうちの任意の２以上の構成（特徴）を組み合わせたものであってもよい。
【符号の説明】
【０１３１】
１−１  情報処理システム
１  情報処理装置
１ａ  制御部
２  周辺装置
２ａ  変換部
２ｂ  デバイス
【要約】
【課題】セキュリティホールの発生を防止してファームウェアの更新を行う。
【解決手段】情報処理装置１は、制御部１ａを含む。周辺装置２は、変換部２ａとデバイス２ｂを含む。変換部２ａは、モード設定にもとづいてデバイス２ｂへの入力の通信インタフェースの変換を行う。制御部１ａは、デバイス２ｂへの組み込みソフトウェアの更新時、第１の通信インタフェースで出力された組み込みソフトウェアに対し、変換部２ａを変換モードに設定して、第１の通信インタフェースから第２の通信インタフェースへの変換を実行させ、第２の通信インタフェースで組み込みソフトウェアの更新を行う。また、制御部１ａは、組み込みソフトウェアの非更新時、変換部２ａを非変換モードに設定して、第１の通信インタフェースから第２の通信インタフェースへの変換を停止させ、組み込みソフトウェアの更新を停止する。
【選択図】図１【図１】
0006669980.tif 000002
【図２】
0006669980.tif 000003
【図３】
0006669980.tif 000004
【図４】
0006669980.tif 000005
【図５】
0006669980.tif 000006
【図６】
0006669980.tif 000007
【図７】
0006669980.tif 000008
【図８】
0006669980.tif 000009
【図９】
0006669980.tif 000010
【図１０】
0006669980.tif 000011