(57)【要約】  高信頼化装置は、複数の再構成可能デバイスと、複数の再構成可能デバイスに共有される冗長再構成可能デバイスと、複数の再構成可能デバイスの１つである第１の再構成可能デバイスに第１の処理を再構成する際に、冗長再構成可能デバイスにも同一の第１の処理を再構成し、第１の再構成可能デバイスと冗長再構成可能デバイスとの入出力情報を比較することで故障を検出する比較制御手段とを有する。
2011034098.tif 000002
【特許請求の範囲】
【請求項１】
複数の再構成可能デバイスと、
前記複数の再構成可能デバイスに共有される冗長再構成可能デバイスと、
前記複数の再構成可能デバイスの１つである第１の再構成可能デバイスに第１の処理を再構成する際に、前記冗長再構成可能デバイスにも同一の第１の処理を再構成し、当該第１の再構成可能デバイスと当該冗長再構成可能デバイスとの入出力情報を比較することで故障を検出する比較制御手段とを有することを特徴とする高信頼化装置。
【請求項２】
請求項１に記載の高信頼化装置において、
前記比較制御手段は、前記第１の再構成可能デバイスに前記第１の処理を再構成した後に、前記第１の再構成可能デバイスとは別個の前記再構成可能デバイスである第２の再構成可能デバイスに第２の処理を再構築するとともに前記冗長再構成可能デバイスにも第２の処理を再構成し、当該第２の再構成可能デバイスと当該冗長再構成可能デバイスとの入出力情報を比較することで故障を検出することを特徴とする高信頼化装置。
【請求項３】
請求項１又は２に記載の高信頼化装置において、
前記比較制御手段は、前記複数の再構成可能デバイスの１つ及び前記冗長再構成可能デバイスに前記再構築した処理を異なる処理に変更して、再度前記複数の再構成可能デバイスの１つ及び前記冗長再構成可能デバイスに再構築することを特徴とする高信頼化装置。
【請求項４】
請求項１乃至３何れか１項に記載の高信頼化装置において、
前記比較制御手段は、前記第１の再構成可能デバイスに前記第１の処理を再構成し、前記第１の再構成可能デバイスとは別個の前記再構成可能デバイスである第２の再構成可能デバイスに第２の処理を再構築し、前記冗長再構成可能デバイスに第３の処理を再構築した後に、前記第１の再構成可能デバイスを解放し、当該第１の再構成可能デバイスのテストを行うことを特徴とする高信頼化装置。
【請求項５】
請求項４に記載の高信頼化装置において、
前記比較制御手段は、前記第１の再構成可能デバイスのテストが終了後に、当該第１の再構成可能デバイスに新たに処理を割り当て、その後に前記第２の再構成可能デバイスのテストを行うことを特徴とする高信頼化装置。
【請求項６】
再構成可能デバイスを１つ或いは複数有したサーバの群を、再構成可能ノード群として有しているデータセンタにおいて、
請求項１乃至５の何れか１項に記載の高信頼化装置における前記比較制御手段が、前記再構成ノード群の有している前記再構成可能デバイスの制御を行うことを特徴とするデータセンタ。
【請求項７】
複数の再構成可能デバイスと、前記複数の再構成可能デバイスに共有される冗長再構成可能デバイスと、を備えた装置における高信頼化方法において、
前記複数の再構成可能デバイスの１つである第１の再構成可能デバイスに第１の処理を再構成する際に、前記冗長再構成可能デバイスにも同一の第１の処理を再構成し、当該第１の再構成可能デバイスと当該冗長再構成可能デバイスとの入出力情報を比較することで故障を検出することを特徴とする高信頼化方法。
【請求項８】
請求項７に記載の高信頼化方法において、
前記第１の再構成可能デバイスに前記第１の処理を再構成した後に、前記第１の再構成可能デバイスとは別個の前記再構成可能デバイスである第２の再構成可能デバイスに第２の処理を再構築するとともに前記冗長再構成可能デバイスにも第２の処理を再構成し、当該第２の再構成可能デバイスと当該冗長再構成可能デバイスとの入出力情報を比較することで故障を検出することを特徴とする高信頼化方法。
【請求項９】
請求項７又は８に記載の高信頼化方法において、
前記複数の再構成可能デバイスの１つ及び前記冗長再構成可能デバイスに前記再構築した処理を異なる処理に変更して、再度前記複数の再構成可能デバイスの１つ及び前記冗長再構成可能デバイスに再構築することを特徴とする高信頼化方法。
【請求項１０】
請求項７乃至９何れか１項に記載の高信頼化方法において、
前記第１の再構成可能デバイスに前記第１の処理を再構成し、前記第１の再構成可能デバイスとは別個の前記再構成可能デバイスである第２の再構成可能デバイスに第２の処理を再構築し、前記冗長再構成可能デバイスに第３の処理を再構築した後に、前記第１の再構成可能デバイスを解放し、当該第１の再構成可能デバイスのテストを行うことを特徴とする高信頼化方法。
【請求項１１】
請求項１０に記載の高信頼化方法において、
前記第１の再構成可能デバイスのテストが終了後に、当該第１の再構成可能デバイスに新たに処理を割り当て、その後に前記第２の再構成可能デバイスのテストを行うことを特徴とする高信頼化方法。
【請求項１２】
高信頼化装置に組み込まれる高信頼化プログラムにおいて、
コンピュータを、
複数の再構成可能デバイスと、
前記複数の再構成可能デバイスに共有される冗長再構成可能デバイスと、
前記複数の再構成可能デバイスの１つである第１の再構成可能デバイスに第１の処理を再構成する際に、前記冗長再構成可能デバイスにも同一の第１の処理を再構成し、当該第１の再構成可能デバイスと当該冗長再構成可能デバイスとの入出力情報を比較することで故障を検出する比較制御手段とを有する高信頼化装置として機能させることを特徴とする高信頼化プログラム。
【請求項１３】
請求項１２に記載の高信頼化プログラムにおいて、
前記比較制御手段は、前記第１の再構成可能デバイスに前記第１の処理を再構成した後に、前記第１の再構成可能デバイスとは別個の前記再構成可能デバイスである第２の再構成可能デバイスに第２の処理を再構築するとともに前記冗長再構成可能デバイスにも第２の処理を再構成し、当該第２の再構成可能デバイスと当該冗長再構成可能デバイスとの入出力情報を比較することで故障を検出することを特徴とする高信頼化プログラム。
【請求項１４】
請求項１２又は１３に記載の高信頼化プログラムにおいて、
前記比較制御手段は、前記複数の再構成可能デバイスの１つ及び前記冗長再構成可能デバイスに前記再構築した処理を異なる処理に変更して、再度前記複数の再構成可能デバイスの１つ及び前記冗長再構成可能デバイスに再構築することを特徴とする高信頼化プログラム。
【請求項１５】
請求項１２乃至１４何れか１項に記載の高信頼化プログラムにおいて、
前記比較制御手段は、前記第１の再構成可能デバイスに前記第１の処理を再構成し、前記第１の再構成可能デバイスとは別個の前記再構成可能デバイスである第２の再構成可能デバイスに第２の処理を再構築し、前記冗長再構成可能デバイスに第３の処理を再構築した後に、前記第１の再構成可能デバイスを解放し、当該第１の再構成可能デバイスのテストを行うことを特徴とする高信頼化プログラム。
【請求項１６】
請求項１５に記載の高信頼化プログラムにおいて、
前記比較制御手段は、前記第１の再構成可能デバイスのテストが終了後に、当該第１の再構成可能デバイスに新たに処理を割り当て、その後に前記第２の再構成可能デバイスのテストを行うことを特徴とする高信頼化プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＦＰＧＡ（Field Programmable Gate Array）等の再構成可能デバイスを複数備える装置に関し、より詳細には、高信頼化する装置、高信頼化方法及び高信頼化プログラムに関する。
【背景技術】
【０００２】
ＦＰＧＡに代表される、与えられた構成情報によって自由にそのハードウェア構成を変化可能な再構成可能デバイスを複数備える装置において、再構成可能デバイスに発生する故障を検出するのは非常に難しい。その大きな理由は、再構成可能デバイス単体の面積効率が悪いため、従来の高信頼化技術を適用すると、コストが大きく増加してしまうことにある。【０００３】
図１６は、従来の高信頼化技術の構成を示す図である（特許文献１参照）。図１６に示す例では、２つのプロセッサ５１００と５２００が比較部５３００に接続される。すなわち、同一処理を２つのプロセッサ上で並行して実行し、そして、毎サイクル、その実行結果を比較することで、故障を検出する。【０００４】
また、特許文献２に記載されているような、テストデータを用いて構成可能集積回路のテストを行うという技術も存在する。この技術では、テストデータは、回路設定を再構成可能集積回路に施し動作させた際に所望の消費電力や動作速度が得られていることを確認するもので、許容消費電力の情報と、テストベクタ(入力ベクタと出力ベクタからなる)からなる。これによれば、回路設定が所望の動作速度を満たしていることは、所望のクロック周波数で再構成可能集積回路を動作させ、テストベクタを入力した際の出力ベクタの妥当性によって判断することが可能となる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００６−３０２２８９号公報
【特許文献２】特開２００８−００４７８８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、図１６に示した特許文献１に記載の方式は、以下の問題点を有している。【０００７】
それは、この技術を、複数の再構成可能デバイスを有する装置に適用すると、単体ですら面積の大きい再構成可能デバイスを全て二重化することになり、結果、コストが大きく増加してしまうという問題である。【０００８】
また、同様に特許文献２に記載されている技術も、単体の再構成可能デバイスのテスト方式としては有益であるが、複数の再構成可能デバイスの信頼性向上のための有益性を考慮した技術ではない。【０００９】
上述したように、再構成可能デバイスを複数備える装置において、低コストに再構成可能デバイスの故障を検出することは非常に困難であった。【００１０】
そこで、本発明は再構成可能デバイスを複数備える装置において、低コストに再構成可能デバイスの故障を検出することが可能な再構成可能デバイスの高信頼化装置、高信頼化方法及び高信頼化プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明の第１の観点によれば、複数の再構成可能デバイスと、前記複数の再構成可能デバイスに共有される冗長再構成可能デバイスと、前記複数の再構成可能デバイスの１つである第１の再構成可能デバイスに第１の処理を再構成する際に、前記冗長再構成可能デバイスにも同一の第１の処理を再構成し、当該第１の再構成可能デバイスと当該冗長再構成可能デバイスとの入出力情報を比較することで故障を検出する比較制御手段とを有することを特徴とする高信頼化装置が提供される。【００１２】
本発明の第２の観点によれば、再構成可能デバイスを１つ或いは複数有したサーバの群を、再構成可能ノード群として有しているデータセンタにおいて、上記の本発明の第１の観点における前記比較制御手段が、前記再構成ノード群の有している前記再構成可能デバイスの制御を行うことを特徴とするデータセンタが提供される。【００１３】
本発明の第３の観点によれば、複数の再構成可能デバイスと、前記複数の再構成可能デバイスに共有される冗長再構成可能デバイスと、を備えた装置における高信頼化方法において、前記複数の再構成可能デバイスの１つである第１の再構成可能デバイスに第１の処理を再構成する際に、前記冗長再構成可能デバイスにも同一の第１の処理を再構成し、当該第１の再構成可能デバイスと当該冗長再構成可能デバイスとの入出力情報を比較することで故障を検出することを特徴とする高信頼化方法が提供される。【００１４】
本発明の第４の観点によれば、高信頼化装置に組み込まれる高信頼化プログラムにおいて、コンピュータを、複数の再構成可能デバイスと、前記複数の再構成可能デバイスに共有される冗長再構成可能デバイスと、前記複数の再構成可能デバイスの１つである第１の再構成可能デバイスに第１の処理を再構成する際に、前記冗長再構成可能デバイスにも同一の第１の処理を再構成し、当該第１の再構成可能デバイスと当該冗長再構成可能デバイスとの入出力情報を比較することで故障を検出する比較制御手段とを有する高信頼化装置として機能させることを特徴とする高信頼化プログラムが提供される。
【発明の効果】
【００１５】
本発明によれば、再構成可能デバイスを複数備える装置を、低コストに高信頼化することが可能となる。
【図面の簡単な説明】
【００１６】
【図１】本発明の実施形態に係る高信頼化装置の基本的構成を表す図である。
【図２】図１に示す高信頼化装置において、計算Ａという処理を割り当てる場合の基本的動作を表す図である。
【図３】図２の動作状況を表す図である。
【図４】図１に示す高信頼化装置において、計算Ｂという処理を割り当てる場合の基本的動作を表す図である。
【図５】図４の動作状況を表す図である。
【図６】図１に示す高信頼化装置において、計算Ｃという処理を割り当てる場合の基本的動作を表す図である。
【図７】図６の動作状況を表す図である。
【図８】図１に示す高信頼化装置において、計算Ａという処理を割り当てる場合の基本的動作を表す図である。
【図９】図８の動作状況を表す図である。
【図１０】図１に示す高信頼化装置において、計算Ｂ、Ｃという処理を割り当て、計算Ａという処理を解放してテストを行う場合の基本的動作を表す図である。
【図１１】図１０の動作状況を表す図である。
【図１２】図１に示す高信頼化装置において、計算Ａという処理を割り当て、計算Ｂという処理を解放してテストを行う場合の基本的動作を表す図である。
【図１３】図１２の動作状況を表す図である。
【図１４】本発明の実施形態の一例であるデータセンタの構成を説明する図である。
【図１５】本発明の実施形態の一例である半導体集積回路の構成を説明する図である。
【図１６】本発明に関連する技術の構成を示す図である。
【発明を実施するための形態】
【００１７】
まず、本発明の実施形態の概略を説明する。本発明の実施形態は、概略、複数の再構成可能デバイスと、共有の再構成可能デバイス（冗長再構成可能デバイス）と、比較制御部とを有する装置である。比較制御部は、再構成可能デバイスに処理を再構成する再構成時に、共有の再構成可能デバイスに同一の処理を再構成し、両者の入出力情報を比較することで故障検出する。
【００１８】
次に、本発明の実施形態について図面を用いて詳細に説明する。
【００１９】
図１を参照すると、本発明は、その好ましい一実施の形態によれば、複数の再構成可能デバイスに冗長な再構成可能デバイスを設け、割当時に比較を行い、あるいは、解放時にテストを行う装置である。
【００２０】
図１は、本発明の実施形態である再構成可能デバイスを有する高信頼化装置１０００の構成を説明する図である。図１を参照すると、本高信頼化装置１０００は、複数の再構成可能デバイス２００−１〜−ｎを有し、さらに、比較制御部１００と、冗長再構成可能デバイス３００と、プロセッサ４００と、主記憶装置５００を有する。なお、図中では再構成可能デバイス（第１の再構成可能デバイス）２００−１、再構成可能デバイス（第２の再構成可能デバイス）２００−２及び再構成可能デバイス２００−ｎの３つを図示するが、本実施形態の再構成可能デバイス２００の数は３つに限定されるものではなく、任意の個数の再構成可能デバイスを有することが可能である。
【００２１】
ここで、再構成可能デバイス２００とは、ＦＰＧＡ（Field Programmable Gate Array）に代表される、与えられた構成情報によって自由にそのハードウェア構成を変化可能なデバイスのことを指すものとする。
【００２２】
また、冗長再構成可能デバイス３００は、再構成可能デバイス２００と同じ構成とする。また、本実施形態では冗長再構成可能デバイスの数が１つである場合について説明するが、これはあくまで例示である。無論、コストが見合う限りであれば、冗長数を増やしても構わない。
【００２３】
比較制御部１００は、再構成可能デバイス２００と冗長再構成可能デバイス３００との再構成を行う部分である。加えて、比較制御部１００は、再構成可能デバイス３００上での処理に必要な情報の入出力を制御することで、処理結果の比較を行う。また、比較制御部１００が、再構成可能デバイスのテストを行う機能を持っても良い。
【００２４】
また、プロセッサ４００は、ＣＰＵ（Central Processing Unit）に代表される演算処理装置である。そして、本実施形態をハードウェア及びソフトウェアの組合せとして実現する場合には、プロセッサ４００が、主記憶装置５００にアクセスし、主記憶装置５００に格納されている命令を実行することにより比較制御部１００を実現する。なお、図１の構成例はあくまで例示である。他にも、例えば図１４や図１５を用いて後述するように、本実施形態は多数の装置を用いたシステムとして、或いは一部をＳｏＣ（System-on-a-chip）のようなチップとして実現することもできる。
【００２５】
次に、図２乃至図１３を用いて、本実施形態に係る高信頼化装置１０００の動作の例を示す。なお、図２乃至図１３においては、説明の便宜上、再構成可能デバイス２００−ｎ、プロセッサ４００及び主記憶装置５００の図示を省略する。
【００２６】
図２及び図３は、図１に示す高信頼化装置１０００の動作の例を示す図である。図２において、矢印脇のＳと数字からなる符合は、ステップ番号を表している。この例では、計算Ａという処理（第１の処理）を再構成可能デバイス（第１の再構成可能デバイス）２００−１に割り当てる場合について説明する。
【００２７】
まず、比較制御部１００は、計算Ａという処理を再構成可能デバイス２００−１に再構成する。その際に、同じ処理を冗長再構成可能デバイス３００にも再構成する（ステップＳ１１）。
【００２８】
そして、比較制御部１００は、計算Ａに必要な入出力情報が再構成可能デバイス２００−１と冗長再構成可能デバイス３００に接続されるように制御する（ステップＳ１２）。
【００２９】
これにより、もし、この２つの再構成可能デバイス２００−１、３００の出力が異なる場合には、故障が検出されることになる。
【００３０】
図４及び図５は、図１に示す高信頼化装置１０００の動作及び状況変化の例を示す図である。図４において、矢印脇のＳと数字からなる符合は、ステップ番号を表している。この例では、計算Ｂという処理（第２の処理）を再構成可能デバイス（第２の再構成可能デバイス）２００−２に割り当てる場合について説明する。
【００３１】
まず、比較制御部１００は、計算Ｂという処理を再構成可能デバイス２００−２に再構成する。その際に、同じ処理を冗長再構成可能デバイス３００にも再構成する（ステップＳ２１）。
【００３２】
そして、比較制御部１００は、計算Ｂに必要な入出力情報が再構成可能デバイス２００−２と冗長再構成可能デバイス３００に接続されるように制御する（ステップＳ２２）。
【００３３】
これにより、もし、この２つの再構成可能デバイス２００−２、３００の出力が異なる場合には、故障が検出されることになる。
【００３４】
すなわち、図２と図４の動作を通じて、１つの冗長な再構成可能デバイスを用いるだけで、２つの再構成可能デバイス２００−１と再構成可能デバイス２００−２の故障の有無をチェックできることから、再構成可能デバイスの信頼性を向上することが可能となる。
【００３５】
図６及び図７は、図１に示す高信頼化装置１０００の動作及び状況変化の例を示す図である。図６において、矢印脇のＳと数字からなる符合は、ステップ番号を表している。この例では、計算Ｃという処理（第３の処理）を再構成可能デバイス２００−１に割り当てる場合について説明する。
【００３６】
まず、比較制御部１００は、計算Ｃという処理を再構成可能デバイス２００−１に再構成する。その際に、同じ処理を冗長再構成可能デバイス３００にも再構成する（ステップＳ３１）。
【００３７】
そして、比較制御部１００は、計算Ｃに必要な入出力情報が再構成可能デバイス２００−１と冗長再構成可能デバイス３００に接続されるように制御する（ステップＳ３２）。
【００３８】
これにより、もし、この２つの再構成可能デバイス２００−１、３００の出力が異なる場合には、故障が検出されることになる。
【００３９】
すなわち、図６及び図７は再構成可能デバイスの再構成を行う度に、故障検出することが可能であることを示している。
【００４０】
以上は、割当の場合について説明を行ったものの、以降では、解放の場合について説明を行う。
【００４１】
図８及び図９は、図１に示す高信頼化装置１０００の動作及び状況変化の例を示す図である。図８において、矢印脇のＳと数字からなる符合は、ステップ番号を表している。この例では、計算Ａという処理（第１の処理）を再構成可能デバイス２００−１に割り当てる場合について説明する。
【００４２】
比較制御部１００は、計算Ａという処理を再構成可能デバイス２００−１に再構成する（ステップＳ４１）。
【００４３】
図１０及び図１１は、図１に示す高信頼化装置１０００の動作及び状況変化の例を示す図である。図１０において、矢印脇のＳと数字からなる符合は、ステップ番号を表している。この例では、計算Ａという処理（第１の処理）を解放し、計算Ｂという処理（第２の処理）と計算Ｃという処理（第３の処理）を割り当てる場合について説明する。
【００４４】
まず、比較制御部１００は、計算Ｂという処理を再構成可能デバイス２００−２に再構成する（ステップＳ５１）。
【００４５】
同様に、比較制御部１００は、計算Ｃという処理を冗長再構成可能デバイス３００に再構成する（ステップＳ５２）。
【００４６】
そして、比較制御部１００は、再構成可能デバイス２００−１から計算Ａの処理を解放し、再構成可能デバイス２００−１のテストを行う。これにより、再構成可能デバイス２００−１の故障検出が可能である（ステップＳ５３）。
【００４７】
本来、計算Ｃの処理は、再構成可能デバイス２００−１に割り当てられなければならないが、冗長再構成可能デバイス３００があることにより、そこに計算Ｃを割り当てることで、計算Ａの処理の解放時に、再構成可能デバイス２００−１のテストを行うことが可能である。
【００４８】
図１２及び図１３は、図１に示す高信頼化装置１０００の動作及び状況変化の例を示す図である。図１２において、矢印脇のＳと数字からなる符合は、ステップ番号を表している。この例では、計算Ｂという処理（第２の処理）を解放し、計算Ａという処理（第１の処理）を割り当てる場合について説明する。
【００４９】
まず、比較制御部１００は、計算Ａという処理を、テストが終わった再構成可能デバイス２００−１に再構成する（ステップＳ６１）。
【００５０】
そして、比較制御部１００は、再構成可能デバイス２００−２から計算Ｂの処理を解放し、再構成可能デバイス２００−２のテストを行う。これにより、再構成可能デバイス２００−２の故障検出が可能である（ステップＳ６２）。
【００５１】
すなわち、解放時に当該再構成可能デバイスのテストを行うと、他の全ての再構成可能デバイスが利用されており、かつ、テスト中に新たな処理の割り当てを要求された場合、そのテストが終わるまで、その新たな処理の割り当てを行うことができない。つまり、処理を実施していない再構成可能デバイスが存在することとなるため、ユーザに公開しているピーク性能が実現できない。しかしながら、図１０、図１１と図１２、図１３の例のように、上記の状況においても、冗長再構成可能デバイスを活用することで、全ての再構成可能デバイスが利用されている状態を実質的に再現できる。そのためユーザに公開したピーク性能を提供しつつ、かつ、テストを実行することが可能である。
【００５２】
また、以上の実施形態においては、二重化によるテストによる故障検出について説明を行ったが、本発明は例えば、再構成可能デバイスの三重化による故障マスキングといった技術にも応用可能である。
【００５３】
図１４は、本発明を適用可能なシステムの構成を説明する図である。図１４におけるデータセンタは、計算ノード群２０００と通信ノード群３０００とを有し、さらに、再構成可能ノード群４０００を有する。
【００５４】
計算ノード群２０００は、サーバ２０００−１〜２０００−ｎを有する。サーバ２０００−１〜２０００−ｎは、要求に対する処理と応答を行う。
【００５５】
通信ノード群３０００は、ルータ３０００−１〜３０００−ｎを有する。ルータ３０００−１〜３０００−ｎは、サーバ２０００−１〜２０００−ｎ間と再構成可能ノード群４０００の接続に用いられる。
【００５６】
再構成可能ノード群４０００は、再構成可能ノード制御部４１００と、再構成可能サーバ４２００−１〜４２００−ｎから構成される。この再構成可能ノード群４０００は、計算ノード群２０００と通信ノード群３０００から共有される。
【００５７】
再構成可能サーバ４２００−１〜４２００−ｎは、再構成可能デバイスを１つないし複数有し、主に、計算ノード群２０００と通信ノード群３０００からの処理を加速するために利用される。
【００５８】
再構成可能ノード制御処理部４１００は、比較制御部１００に相当する。また、計算ノード群２０００と通信ノード群３０００の要求に応じて、再構成可能サーバ単位、再構成可能デバイス単位で、再構成可能デバイスの割当と解放を行う。ここで、再構成可能ノード制御部４１００は、再構成可能ノード群４０００に複数有していてもよい。
【００５９】
図１５は、再構成可能サーバ４２００−１〜４２００−ｎで利用される再構成可能半導体集積回路４３００の構成を示す図である。再構成可能半導体集積回路４３００は、例えばＳｏＣ（System-on-a-chip）として実現できる。
【００６０】
図１５を参照すると、再構成可能半導体集積回路４３００は、再構成可能デバイス４３１０−１〜４３１０−ｎから構成される。すなわち、再構成可能半導体集積回路４３００は、再構成可能デバイスからのみ構成される半導体集積回路であることを特徴とする。
【００６１】
ここで、冗長再構成可能デバイス４３１０−１〜４３１０−ｎは、再構成可能半導体集積回路４３００に設けてあってもよいし、あるいは、再構成可能半導体集積回路４３００を余計に再構成可能サーバ４２００−１〜４２００−ｎに有しても良い。無論、冗長再構成可能デバイスは複数あってもよい。
【００６２】
そして、冗長再構成可能デバイスを有する構成にて、半導体集積回路内の再構成可能デバイス同士で、あるいは、半導体集積回路間の再構成可能デバイス同士で、本実施例を適用することが可能である。
【００６３】
なお、再構成可能サーバ４２００−１〜４２００−ｎは、１つないし複数の再構成可能装備半導体集積回路４３００を利用する。
【００６４】
前記各実施形態では、複数の再構成可能デバイスを有する装置及び方法を例に説明したが、本実施形態は、かかる装置および方法に限定されるものではなく、任意の装置および方法に適用可能である。
【００６５】
以上、本発明を上記実施形態に即して説明したが、本発明は、上記実施形態の構成や動作にのみ限定されるものではなく、本発明の範囲内で当業者であればなしうることが可能な各種変形、修正を含むことはもちろんである。
【００６６】
更に、本発明の実施形態である高信頼化装置は、ハードウェアにより実現することもできるが、コンピュータをその高信頼化装置として機能させるためのプログラムをコンピュータがコンピュータ読み取り可能な記録媒体から読み込んで実行することによっても実現することができる。
【００６７】
また、本発明の実施形態による高信頼化方法は、ハードウェアにより実現することもできるが、コンピュータにその方法を実行させるためのプログラムをコンピュータがコンピュータ読み取り可能な記録媒体から読み込んで実行することによっても実現することができる。
【００６８】
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限定されない。
【００６９】
（付記１）複数の再構成可能デバイスと、前記複数の再構成可能デバイスに共有される冗長再構成可能デバイスと、前記複数の再構成可能デバイスの１つである第１の再構成可能デバイスに第１の処理を再構成する際に、前記冗長再構成可能デバイスにも同一の第１の処理を再構成し、当該第１の再構成可能デバイスと当該冗長再構成可能デバイスとの入出力情報を比較することで故障を検出する比較制御手段とを有することを特徴とする高信頼化装置。
【００７０】
（付記２）付記１に記載の高信頼化装置において、前記比較制御手段は、前記第１の再構成可能デバイスに前記第１の処理を再構成した後に、前記第１の再構成可能デバイスとは別個の前記再構成可能デバイスである第２の再構成可能デバイスに第２の処理を再構築するとともに前記冗長再構成可能デバイスにも第２の処理を再構成し、当該第２の再構成可能デバイスと当該冗長再構成可能デバイスとの入出力情報を比較することで故障を検出することを特徴とする高信頼化装置。
【００７１】
（付記３）付記１又は２に記載の高信頼化装置において、前記比較制御手段は、前記複数の再構成可能デバイスの１つ及び前記冗長再構成可能デバイスに前記再構築した処理を異なる処理に変更して、再度前記複数の再構成可能デバイスの１つ及び前記冗長再構成可能デバイスに再構築することを特徴とする高信頼化装置。
【００７２】
（付記４）付記１乃至３何れか１項に記載の高信頼化装置において、前記比較制御手段は、前記第１の再構成可能デバイスに前記第１の処理を再構成し、前記第１の再構成可能デバイスとは別個の前記再構成可能デバイスである第２の再構成可能デバイスに第２の処理を再構築し、前記冗長再構成可能デバイスに第３の処理を再構築した後に、前記第１の再構成可能デバイスを解放し、当該第１の再構成可能デバイスのテストを行うことを特徴とする高信頼化装置。
【００７３】
（付記５）付記４に記載の高信頼化装置において、前記比較制御手段は、前記第１の再構成可能デバイスのテストが終了後に、当該第１の再構成可能デバイスに新たに処理を割り当て、その後に前記第２の再構成可能デバイスのテストを行うことを特徴とする高信頼化装置。
【００７４】
（付記６）再構成可能デバイスを１つ或いは複数有したサーバの群を、再構成可能ノード群として有しているデータセンタにおいて、付記１乃至５の何れか１項に記載の高信頼化装置における前記比較制御手段が、前記再構成ノード群の有している前記再構成可能デバイスの制御を行うことを特徴とするデータセンタ。
【００７５】
（付記７）複数の再構成可能デバイスと、前記複数の再構成可能デバイスに共有される冗長再構成可能デバイスと、を備えた装置における高信頼化方法において、前記複数の再構成可能デバイスの１つである第１の再構成可能デバイスに第１の処理を再構成する際に、前記冗長再構成可能デバイスにも同一の第１の処理を再構成し、当該第１の再構成可能デバイスと当該冗長再構成可能デバイスとの入出力情報を比較することで故障を検出することを特徴とする高信頼化方法。
【００７６】
（付記８）付記７に記載の高信頼化方法において、前記第１の再構成可能デバイスに前記第１の処理を再構成した後に、前記第１の再構成可能デバイスとは別個の前記再構成可能デバイスである第２の再構成可能デバイスに第２の処理を再構築するとともに前記冗長再構成可能デバイスにも第２の処理を再構成し、当該第２の再構成可能デバイスと当該冗長再構成可能デバイスとの入出力情報を比較することで故障を検出することを特徴とする高信頼化方法。
【００７７】
（付記９）付記７又は８に記載の高信頼化方法において、前記複数の再構成可能デバイスの１つ及び前記冗長再構成可能デバイスに前記再構築した処理を異なる処理に変更して、再度前記複数の再構成可能デバイスの１つ及び前記冗長再構成可能デバイスに再構築することを特徴とする高信頼化方法。
【００７８】
（付記１０）付記７乃至９何れか１項に記載の高信頼化方法において、前記第１の再構成可能デバイスに前記第１の処理を再構成し、前記第１の再構成可能デバイスとは別個の前記再構成可能デバイスである第２の再構成可能デバイスに第２の処理を再構築し、前記冗長再構成可能デバイスに第３の処理を再構築した後に、前記第１の再構成可能デバイスを解放し、当該第１の再構成可能デバイスのテストを行うことを特徴とする高信頼化方法。
【００７９】
（付記１１）付記１０に記載の高信頼化方法において、前記第１の再構成可能デバイスのテストが終了後に、当該第１の再構成可能デバイスに新たに処理を割り当て、その後に前記第２の再構成可能デバイスのテストを行うことを特徴とする高信頼化方法。
【００８０】
（付記１２）高信頼化装置に組み込まれる高信頼化プログラムにおいて、コンピュータを、複数の再構成可能デバイスと、前記複数の再構成可能デバイスに共有される冗長再構成可能デバイスと、前記複数の再構成可能デバイスの１つである第１の再構成可能デバイスに第１の処理を再構成する際に、前記冗長再構成可能デバイスにも同一の第１の処理を再構成し、当該第１の再構成可能デバイスと当該冗長再構成可能デバイスとの入出力情報を比較することで故障を検出する比較制御手段とを有する高信頼化装置として機能させることを特徴とする高信頼化プログラム。
【００８１】
（付記１３）付記１２に記載の高信頼化プログラムにおいて、前記比較制御手段は、前記第１の再構成可能デバイスに前記第１の処理を再構成した後に、前記第１の再構成可能デバイスとは別個の前記再構成可能デバイスである第２の再構成可能デバイスに第２の処理を再構築するとともに前記冗長再構成可能デバイスにも第２の処理を再構成し、当該第２の再構成可能デバイスと当該冗長再構成可能デバイスとの入出力情報を比較することで故障を検出することを特徴とする高信頼化プログラム。
【００８２】
（付記１４）付記１２又は１３に記載の高信頼化プログラムにおいて、前記比較制御手段は、前記複数の再構成可能デバイスの１つ及び前記冗長再構成可能デバイスに前記再構築した処理を異なる処理に変更して、再度前記複数の再構成可能デバイスの１つ及び前記冗長再構成可能デバイスに再構築することを特徴とする高信頼化プログラム。
【００８３】
（付記１５）付記１２乃至１４何れか１項に記載の高信頼化プログラムにおいて、前記比較制御手段は、前記第１の再構成可能デバイスに前記第１の処理を再構成し、前記第１の再構成可能デバイスとは別個の前記再構成可能デバイスである第２の再構成可能デバイスに第２の処理を再構築し、前記冗長再構成可能デバイスに第３の処理を再構築した後に、前記第１の再構成可能デバイスを解放し、当該第１の再構成可能デバイスのテストを行うことを特徴とする高信頼化プログラム。
【００８４】
（付記１６）付記１５に記載の高信頼化プログラムにおいて、前記比較制御手段は、前記第１の再構成可能デバイスのテストが終了後に、当該第１の再構成可能デバイスに新たに処理を割り当て、その後に前記第２の再構成可能デバイスのテストを行うことを特徴とする高信頼化プログラム。
【００８５】
この出願は、２００９年９月１８日に出願された日本出願特願２００９−２１７０５１号を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【符号の説明】
【００８６】
１００  比較制御部
２００−１、２００−２、２００−ｎ  再構成可能デバイス
３００  冗長再構成可能デバイス
１０００  高信頼化装置
２０００  計算ノード群
２０００−１、２０００−２、２０００−ｎ  サーバ
３０００  通信ノード群
３０００−１、３０００−２、３０００−３、３０００−ｎ  ルータ
４０００  再構成可能ノード群
４１００  再構成可能ノード制御部
４２００−１、４２００−２、４２００−ｎ  再構成可能サーバ
４３００  再構成可能半導体集積回路
４３１０−１、４３１０−２、４３１０−ｎ  再構成可能デバイス
５１００、５２００  プロセッサ
５３００  比較部
【図１】
2011034098.tif 000003
【図２】
2011034098.tif 000004
【図３】
2011034098.tif 000005
【図４】
2011034098.tif 000006
【図５】
2011034098.tif 000007
【図６】
2011034098.tif 000008
【図７】
2011034098.tif 000009
【図８】
2011034098.tif 000010
【図９】
2011034098.tif 000011
【図１０】
2011034098.tif 000012
【図１１】
2011034098.tif 000013
【図１２】
2011034098.tif 000014
【図１３】
2011034098.tif 000015
【図１４】
2011034098.tif 000016
【図１５】
2011034098.tif 000017
【図１６】
2011034098.tif 000018
【国際調査報告】
2011034098.tif 000019
2011034098.tif 000020
2011034098.tif 000021