"同一内容のコンフィギュレーションデータがそれぞれ格納されている複数の領域を有する不揮発性メモリと、コンフィギュレーションデータの読み出し先として指定されている不揮発性メモリの指定領域から、コンフィギュレーションデータを読み出してコンフィギュレーションするFPGAとを備えるFPGA装置のコンフィギュレーション制御回路であって、前記FPGAのコンフィギュレーションの開始からの経過時間を監視するタイマと、前記タイマの設定時間が満了した際に、コンフィギュレーションの完了を示す信号を前記FPGAが出力しているか否かに基づいて、前記FPGAコンフィギュレーションが成功したか否かを判定する判定部と、前記判定部により、コンフィギュレーションが失敗したと判定された際に、前記不揮発性メモリの指定領域を他の領域に切り替える切替部と、前記FPGAが前記切替部により切り替えられた前記不揮発性メモリの領域からコンフィギュレーションデータを読み出してコンフィギュレーションするためのトリガを前記FPGAに与える制御部と、を具備することを特徴とするコンフィギュレーション制御回路。前記不揮発性メモリの複数の領域に、同一内容のエンベデットプロセッサプログラムがそれぞれさらに格納され、前記FPGAは、FPGAのコンフィギュレーション完了後に前記不揮発性メモリの指定領域に格納されているエンベデットプロセッサプログラムを読み出して起動を開始するエンベデットプロセッサを備え、前記タイマは、前記エンベデットプロセッサの起動開始からの経過時間をさらに監視し、前記タイマの設定時間が満了した際に、前記エンベデットプロセッサの起動完了を示す信号を前記FPGAが出力しているか否かに基づいて、前記判定部は、前記エンベデットプロセッサの起動が成功したか否かをさらに判定し、前記エンベデットプロセッサの起動が失敗したと判定された際に、前記切替部は、前記不揮発性メモリの指定領域を切り替え、前記制御部は、前記FPGAが前記切替部により切り替えられた前記不揮発性メモリの指定領域から別のコンフィギュレーションデータを読み出してコンフィギュレーションするためのトリガを前記FPGAに与える、ことを特徴とする請求項1に記載のコンフィギュレーション制御回路。前記制御部は、コンフィギュレーションに失敗したコンフィギュレーションデータを、コンフィギュレーションに成功した別のコンフィギュレーションデータに書き換えることにより、前記不揮発性メモリに格納されているデータを修復する、ことを特徴とする請求項1に記載のコンフィギュレーション制御回路。前記制御部は、エンベデットプロセッサの起動に失敗したエンベデットプロセッサプログラムを、エンベデットプロセッサの起動に成功したエンベデットプロセッサプログラムに書き換えることにより、前記不揮発性メモリに格納されているデータを修復する、ことを特徴とする請求項2に記載のコンフィギュレーション制御回路。FPGAと、請求項1乃至4の何れか1項に記載のコンフィギュレーション制御回路と、を備えるFPGA装置。同一内容のコンフィギュレーションデータがそれぞれ格納されている複数の不揮発性メモリの領域のうち、コンフィギュレーションデータの読み出し先として指定されている不揮発性メモリの指定領域から、コンフィギュレーションデータを読み出してコンフィギュレーションするFPGAのコンフィギュレーション方法であって、コンフィギュレーション開始からの経過時間を計測し、前記経過時間が設定時間を超えた際に、コンフィギュレーションの完了を示す信号を前記FPGAが出力しているか否かに基づいて、前記FPGAのコンフィギュレーションが成功したか否かを判定し、コンフィギュレーションが失敗したと判定された際に、前記不揮発性メモリの指定領域を他の領域に切り替え、指定を切り替えた後の不揮発性メモリの指定領域からコンフィギュレーションデータを読み出してコンフィギュレーションするためのトリガを前記FPGAに与える、ことを特徴とするコンフィギュレーション方法。同一内容のコンフィギュレーションデータがそれぞれ格納されている複数の領域を有する不揮発性メモリと、コンフィギュレーションデータの読み出し先として指定している前記不揮発性メモリの指定領域から、コンフィギュレーションデータを読み出してコンフィギュレーションするFPGAとを備えるFPGA装置のコンフィギュレーションデータ更新方法であって、前記FPGA装置の電源がON又はリセットされた後最初の読み出し先として指定される前記不揮発性メモリの指定領域に格納されているコンフィギュレーションデータを更新データに書き換え、前記FPGAのコンフィギュレーションを起動し、前記FPGAのコンフィギュレーション開始からの経過時間を計測し、前記経過時間が設定時間を超えた際に、コンフィギュレーションの完了を示す信号を前記FPGAが出力しているか否かに基づいて、前記FPGAのコンフィギュレーションが成功したか否かを判定し、更新データによるコンフィギュレーションが失敗したと判定された際に、前記不揮発性メモリの指定領域を他の領域に切り替え、指定を切り替えた後の前記不揮発性メモリの指定領域から更新前のコンフィギュレーションデータを読み出してコンフィギュレーションするためのトリガを前記FPGAに与える、ことを特徴とするコンフィギュレーションデータ更新方法。前記更新データによるコンフィギュレーションが成功した際に、前記不揮発性メモリに格納されている更新前のコンフィギュレーションデータを更新データに書き換える、ことを特徴とする請求項7に記載のコンフィギュレーションデータ更新方法。特許文献1乃至4に提案されている方法では、メモリからのコンフィギュレーションデータの読み出しとFPGAへのデータ転送の制御を担う制御部が、コンフィギュレーションデータをFPGAに設定する。このため、FPGAがコンフィギュレーションデータの読み出し先として指定するFROMの領域に格納されているコンフィギュレーションデータを、FPGAが直接読み出してコンフィギュレーションを実施する必要がある装置では、上記いずれの方法も採用することができない。また、コンフィギュレーションデータを適宜更新する場合あるが、従来のFPGAにおいては、更新データに誤りが合った場合には、復旧が困難となる場合があった。本発明は、上記実情に鑑みてなされたものであり、メモリ領域に格納されているコンフィギュレーションデータを直接読み出してコンフィギュレーションを実施するFPGA装置において、コンフィギュレーションを高い信頼性をもって行うことができるコンフィギュレーション制御回路及び方法を提供すること目的とする。また、さらに、メモリ領域に格納されているコンフィギュレーションデータを直接読み出してコンフィギュレーションを実施するFPGA装置のコンフィギュレーションデータの更新を高い信頼性をもって確実に行えるコンフィギュレーションデータ更新方法を提供することを目的とする。上記目的を達成するため、本発明の第1の観点に係るコンフィギュレーション制御回路は、同一内容のコンフィギュレーションデータがそれぞれ格納されている複数の領域を有する不揮発性メモリと、コンフィギュレーションデータの読み出し先として指定されている不揮発性メモリの指定領域から、コンフィギュレーションデータを読み出してコンフィギュレーションするFPGAとを備えるFPGA装置のコンフィギュレーション制御回路であって、前記FPGAのコンフィギュレーションの開始からの経過時間を監視するタイマと、前記タイマの設定時間が満了した際に、コンフィギュレーションの完了を示す信号を前記FPGAが出力しているか否かに基づいて、前記FPGAコンフィギュレーションが成功したか否かを判定する判定部と、前記判定部により、コンフィギュレーションが失敗したと判定された際に、前記不揮発性メモリの指定領域を他の領域に切り替える切替部と、前記FPGAが前記切替部により切り替えられた前記不揮発性メモリの領域からコンフィギュレーションデータを読み出してコンフィギュレーションするためのトリガを前記FPGAに与える制御部と、を具備することを特徴とする。また、本発明の第2の観点に係るFPGA装置は、FPGAと、この発明に係るコンフィギュレーション制御回路と、を備える。また、本発明の第3の観点に係るコンフィギュレーション方法は、同一内容のコンフィギュレーションデータがそれぞれ格納されている複数の不揮発性メモリの領域のうち、コンフィギュレーションデータの読み出し先として指定されている不揮発性メモリの指定領域から、コンフィギュレーションデータを読み出してコンフィギュレーションするFPGAのコンフィギュレーション方法であって、コンフィギュレーション開始からの経過時間を計測し、前記経過時間が設定時間を超えた際に、コンフィギュレーションの完了を示す信号を前記FPGAが出力しているか否かに基づいて、前記FPGAのコンフィギュレーションが成功したか否かを判定し、コンフィギュレーションが失敗したと判定された際に、前記不揮発性メモリの指定領域を他の領域に切り替え、指定を切り替えた後の不揮発性メモリの指定領域からコンフィギュレーションデータを読み出してコンフィギュレーションするためのトリガを前記FPGAに与える、ことを特徴とする。また、本発明の第4の観点に係るコンフィギュレーションデータ更新方法は、同一内容のコンフィギュレーションデータがそれぞれ格納されている複数の領域を有する不揮発性メモリと、コンフィギュレーションデータの読み出し先として指定している前記不揮発性メモリの指定領域から、コンフィギュレーションデータを読み出してコンフィギュレーションするFPGAとを備えるFPGA装置のコンフィギュレーションデータ更新方法であって、前記FPGA装置の電源がON又はリセットされた後最初の読み出し先として指定される前記不揮発性メモリの指定領域に格納されているコンフィギュレーションデータを更新データに書き換え、前記FPGAのコンフィギュレーションを起動し、前記FPGAのコンフィギュレーション開始からの経過時間を計測し、前記経過時間が設定時間を超えた際に、コンフィギュレーションの完了を示す信号を前記FPGAが出力しているか否かに基づいて、前記FPGAのコンフィギュレーションが成功したか否かを判定し、更新データによるコンフィギュレーションが失敗したと判定された際に、前記不揮発性メモリの指定領域を他の領域に切り替え、指定を切り替えた後の前記不揮発性メモリの指定領域から更新前のコンフィギュレーションデータを読み出してコンフィギュレーションするためのトリガを前記FPGAに与える、ことを特徴とする。本発明によれば、同じ内容のコンフィギュレーションデータを複数個格納し、FPGAがコンフィギュレーションに失敗したと判定された際に、FPGAが別のコンフィギュレーションデータを読み出してリコンフィギュレーションするようにした。こうすることで、FPGAの信頼性を向上させることができる。また、本発明によれば、コンフィギュレーションが失敗したと判定された際に、FPGAがコンフィギュレーションデータの読み出し先として指定する域を切り替え、FPGAが切り替え後の指定領域に格納されている別のコンフィギュレーションデータを読み出せる構成とした。こうすることで、上記特許文献1乃至4にて提案されている方法が適用できない、FPGAが読み出し先として指定する不揮発性メモリの領域に格納されているコンフィギュレーションデータを、FPGAが直接読み出してコンフィギュレーションする必要がある装置に適用することができる。また、本発明のコンフィギュレーションデータ更新方法によれば、コンフィギュレーションデータの更新時に、電源がON又はリセットされた後最初の読み出し先として指定する領域に格納されているコンフィギュレーションデータを更新データに書き換えるようにした。こうすることで、仮に更新データの不具合のために、更新データによるコンフィギュレーションに失敗したとしても、別の領域に格納されている更新前のコンフィギュレーションデータにより、FPGAはコンフィギュレーションできる。この結果、専用端末をFPGAに接続する事無く更新作業を続ける事が可能となり、コンフィギュレーションデータの更新時における、作業効率とFPGAの信頼性を向上させることができる。本発明の実施形態について、図面を参照して詳細に説明する。実施形態図1に示すように、本実施形態のFPGAを搭載する装置以下、FPGA装置は、FPGA01、電源監視部08、FROM09、クロック源10及びコンフィギュレーション制御部11例えば、コンフィギュレーション制御回路から構成されている。FPGAFieldProgrammableGateArray01は、コンフィギュレーション機能部02とプログラマブル回路03とから構成されている。コンフィギュレーション機能部02は、FPGA01に予め具備されている機能部であり、プログラマブル回路03、FROM09及び信号制御部14と接続されている。プログラマブル回路03は、インターフェースI/O04を備えるユーザ回路05と、エンベディトプロセッサ06と、から構成されている。ユーザ回路05とエンベディトプロセッサ06は内部バス07で接続されている。ユーザ回路05は、ユーザが作成したコンフィギュレーションデータに基づき任意の機能を設定できる回路である。ユーザ回路05は、コンフィギュレーション機能部02がPROG信号S2を受信したのをトリガとして、インターフェースI/O04を介してFROM09の指定された領域に格納されているコンフィギュレーションデータを読み出してコンフィギュレーションを実施する。エンベデットプロセッサ06は、FPGA01のプログラマブル回路03にCPUコアと周辺回路を組み込むことにより実現するプロセッサである。エンベデットプロセッサ06は、FPGA01のコンフィギュレーション完了後に、ユーザ回路05のインターフェースI/O04を介してFROM09の指定されている領域に格納されているエンベデットプロセッサプログラムIPLやOSを含むを読み出して動作する。なお、本実施形態においては、プログラマブル回路03は、エンベデットプロセッサ06を実装する構成としたが、ユーザ回路05のみを備える構成でもよい。FPGA01は、コンフィギュレーションデータを書き換えることにより、ハード機能を変更することが可能な集積回路である。FPGA01は、揮発性であるため、起動の度にユーザ回路05をコンフィギュレーションする必要がある。複数のコンフィギュレーションモードが用意されているが、本実施形態のようにFPGA01にCPUコアを組み込みエンベデットプロセッサ06、装置の制御をFPGA01のみが担う場合は、FPGA01がコンフィギュレーションデータの読み出し先として指定するFROM09の領域一般には、FROM09の先頭アドレスに格納されているコンフィギュレーションデータを、FPGA01が直接読み出してコンフィギュレーションを実施するモードが使用される。電源監視部08は、装置の電源ON、OFF、又は、リセットの制御を行う。また、信号制御部14と接続され、FPGA01や周辺デバイスの所定のシーケンスに従って起動タイミングを計り一般には、入力電源電圧が安定後に、信号制御部14に対して、起動信号S1を出力する。FROM09は、不揮発メモリである。本実施形態では、FROM09は、同じ内容のコンフィギュレーションデータと同じ内容のエンベデットプロセッサプログラムが一組ずつ格納される複数の領域を有している。また、FROM09は、信号制御部14とアドレス線で接続され、FPGA01がコンフィギュレーションに失敗した際に、信号制御部14が面選択信号S7以下、SEL信号S7の設定値FROM09の指定領域の最上位ビットの論理を順次切り替えることで、FPGA01がコンフィギュレーションデータの読み出し先として指定するFROM09の領域が切り替えられる。電源ON又はリセット時におけるSEL信号S7の初期設定値は、本実施形態では、0とし、コンフィギュレーション及びエンベデットプロセッサの起動が失敗する度に、1加算される。コンフィギュレーション制御部11は、タイマ12と、カウンタ13を備える信号制御部14と、から構成されている。タイマ12は、クロック源10に同期して動作するカウンタで、FPGA01のコンフィギュレーションの完了とエンベデットプロセッサ06の正常起動を監視するためのものである。タイマ12の設定値は、FPGA01のコンフィギュレーションとエンベデットプロセッサ06の起動に要する時間よりも長くそれぞれ設定する。カウンタ13は、信号制御部14が電源ON又はリセット後のコンフィギュレーションの回数を管理するためのカウンタである。電源ON又はリセット時における、初期設定値を1とし、FPGA01のコンフィギュレーション又はエンベデットプロセッサ06の起動が失敗する度に、1加算される。つまり、カウンタ値がk-1の時にコンフィギュレーション又はエンベデットプロセッサ06の起動に失敗した際は、信号制御部14により、SEL信号S7の設定値はk-1からkに切り替えられることになる。信号制御部14は、FPGA01、電源監視部08、FROM09及びタイマ12と接続され、PROG信号S2、スタート信号S3、SEL信号S7等を制御する。また、信号制御部14は、コンフィギュレーションの完了とエンベデットプロセッサ06の正常起動を判定する。また、信号制御部14は、コンフィギュレーション又はエンベデットプロセッサ06の起動に失敗した際に、FPGA01がコンフィギュレーションデータの読み出し先として指定するFROM09の領域を切り替える。次に、図2、3を参照して、FROM09について詳細に説明する。上述のように、FROM09には、同一のコンフィギュレーションデータとエンベデットプロセッサプログラムとの組がn組記憶されている。図2,3は、n=2,即ち、2組のコンフィギュレーションデータとエンベデットプロセッサプログラムとがFROM09に記憶されている場合の例である。図3は、この場合の、FROM09に格納されているコンフィギュレーションデータ及びエンベデットプロセッサプログラムのメモリマップのイメージである。ただし、FROM09の容量を128Kバイトとしている。図2に示すように、FROM09の最上位ビットビット17は信号制御部14に、下位ビットビット16~0はFPGA01に接続されている。この場合、FPGA01が使用するデータの格納領域は、0x0_0000~0x0_FFFFと0x1_0000~0x1_FFFFとなる。そして、SEL信号S7の設定値が0の場合は、FPGA01はFROM09の最上位ビットが0の領域0x0_0000~0x0_FFFFのデータを使用し、信号制御部14がSEL信号S7の設定値を1に切り替えた場合は、FPGA01はFROM09の最上位ビットが1の領域0x1_0000~0x1_FFFFのデータを使用する。コンフィギュレーションデータは、この2つの領域の各先頭部分アドレス0x0_0000~0x0_AFFFと0x1_0000~0x1_AFFFに格納される。このように、信号制御部14とFROM09とを接続するアドレス線で制御できるデータのビット数がmビットの場合は、FROM09に格納できるコンフィギュレーションデータは最大で2m個となる。必ずしも、FROM09に、最大個数のコンフィギュレーションデータ等を格納する必要はなく、例えば、最大個数が8個m=3の場合に、コンフィギュレーションデータを5個だけ格納するようにしても構わない。次に、図1を参照して、電源ON又はリセットされた後の流れに沿って各信号について説明する。起動信号S1は、電源ON又はリセットされた後に、電源監視部08から信号制御部14に対して出力される信号である。PROG信号S2は、FPGA01がコンフィギュレーションをスタートするトリガとなる信号で、信号制御部14が、起動信号S1の受信をトリガとして、コンフィギュレーション機能部02に対して出力する。コンフィギュレーション機能部02のPROG信号S2の受信をトリガとして、FPGA01は内部メモリ不図示を初期化し、コンフィギュレーションをスタートする。また、PROG信号S2は、コンフィギュレーション又はエンベデットプロセッサ06の起動が失敗した際にも、コンフィギュレーションの回数kが所定回数nFROM09に格納されているコンフィギュレーションデータの個数未満の場合は、FPGA01にリコンフィギュレーションするためのトリガを与えるため、信号制御部14からコンフィギュレーション機能部02に対して出力される。スタート信号S3は、起動信号S1の受信をトリガとして、信号制御部14が、タイマ12をスタートさせるために、タイマ12に対して出力する信号である。また、信号制御部14は、FPGA01のコンフィギュレーションが完了した際にも、エンベデットプロセッサ06の起動を監視するために、タイマ12に対して、スタート信号S3を出力する。INIT信号S4aは、FPGA01の内部メモリ不図示の初期化が完了した際に、コンフィギュレーション機能部02から信号制御部14に対して出力される信号である。INIT信号S4bは、FPGA01のコンフィギュレーションが失敗した際に、CRCエラーを通知するため、コンフィギュレーション機能部02から信号制御部14に対して出力される信号である。なお、FPGAの中には、CRCエラーを別信号で通知するものも存在するが、その場合は、該別信号をINIT信号S4bの代わりに用いる。満了信号S5は、タイマ12の設定時間が満了した際に、タイマ12から信号制御部14に対して、出力される信号である。DONE信号S6は、FPGA01のコンフィギュレーションが完了した際に、コンフィギュレーション機能部02から信号制御部14に対して出力される信号である。信号制御部14は、タイマ12から満了信号S5を受信した時点で、INIT信号S4aと、DONE信号S6を受信していれば、FPGA01のコンフィギュレーションは完了したと判定し、それ以外は、コンフィギュレーションに失敗したと判定する。SEL信号S7は、FPGA01のコンフィギュレーション又はエンベデットプロセッサ06の起動に失敗した際に、コンフィギュレーションの回数kが所定回数n未満の場合に、信号制御部14がFROM09に対して出力する信号である。信号制御部14がSEL信号S7の設定値を切り替えることで、FPGA01がコンフィギュレーションデータの読み出し先として指定するFROM09の領域が切り替えられる。起動完了通知S8は、エンベデットプロセッサ06の正常起動を判定するための信号である。あらかじめFPGA01のユーザ回路05に機能として用意され、本実施形態では、初期設定は0とし、エンベデットプロセッサ06が正常起動した場合には、起動完了通知S6の設定を1にする。信号制御部14は、タイマ12から満了信号S5を受信した時点で、起動完了通知S8の設定が1であれば、エンベデットプロセッサ06が正常起動したと判定し、設定が0の場合は、起動に失敗したと判定する。異常通知S9は、コンフィギュレーション又はエンベデットプロセッサ06の起動に失敗した際に、コンフィギュレーションの回数kが所定回数nに達している場合に、信号制御部14が上位装置不図示に対して、FPGA01の異常を知らせるために出力する信号である。次に、図4を参照して、図1~図3を参照して説明した本実施形態の処理手順について詳細に説明する。この場合、FROM12に格納されているコンフィギュレーションデータの個数kは2となる。装置の電源をON又はリセットすると、カウンタ13のカウント値、SEL信号S7及び起動完了通知S8が初期化されるステップS01。電源監視部08は、所定のシーケンスに従って起動タイミングを計り、信号制御部14に起動信号S1を出力するステップS02。そして、信号制御部14は、起動信号S1を受信すると、コンフィギュレーション機能部02に対して、PROG信号S2を出力すると共に、タイマ12をスタートさせるステップS03。コンフィギュレーション機能部02がPROG信号S2を受信するのをトリガとして、FPGA01は、コンフィギュレーション機能部02内の内部メモリ不図示を初期化し、FROM09の指定領域0x0_0000に格納されているコンフィギュレーションデータを読み出して、この内部メモリに記憶し、記憶したコンフィグレーションデータに基づいて、コンフィギュレーションをスタートするステップS04。タイマ12の設定時間が満了した時点でステップS05、信号制御部14は、FPGA01のコンフィギュレーションが完了したか否かを判定するステップS06。FPGA01のコンフィギュレーションが完了している場合にはステップS08;YES、エンベデットプロセッサ06は、FROM09の指定領域0x0_1000に格納されているエンベデットプロセッサプログラムを読み出して起動をスタートすると共に、信号制御部14は、タイマ12をスタートさせるステップS07。タイマ12の設定時間が満了した時点でステップS08、信号制御部14は、エンベデットプロセッサ06が正常起動したか否かを判定するステップS09。起動完了通知S8の設定が1であればステップS09;YES、エンベデットプロセッサ06は正常起動となる。一方、タイマ12の設定時間が満了した時点でステップS05又はS08、FPGA01のコンフィギュレーションが失敗した場合ステップS06;NO、又は、起動完了通知S8の設定が1でない場合にはステップS09;NO、信号制御部14は、カウンタ13により、コンフィギュレーションの回数が2回未満であるか否かを判定するステップS21。コンフィギュレーションの回数はまだ1回目なのでステップS21;YES、信号制御部14は、カウンタ13のカウント数を1加算しステップS22、SEL信号S7の設定値を1に切り替えステップS23、ステップS03に戻る。次に、信号制御部14は、コンフィギュレーション機能部02に対して、PROG信号S2を出力すると共に、タイマ12をスタートさせるステップS03。コンフィギュレーション機能部02がPROG信号S2を受信するのをトリガとして、FPGA01は内部メモリ不図示を初期化して、FROM09の切り替え後の指定領域0x1_0000に格納されているコンフィギュレーションデータを読み出してコンフィギュレーションするステップS04。そして、タイマ12の設定時間が満了した時点でステップS05、信号制御部14は、FPGA01のコンフィギュレーションが完了したか否かを判定するステップS06。FPGA01のコンフィギュレーションが完了している場合にはステップS06;YES、エンベデットプロセッサ06は、FROM09の切り替え後の指定領域0x1_1000に格納されているエンベデットプロセッサプログラムを読み出して起動をスタートすると共に、信号制御部14は、タイマ12をスタートさせるステップS07。タイマ12の設定時間が満了した時点でステップS08、信号制御部14は、エンベデットプロセッサ06が正常起動したか否かを判定するステップS09。起動完了通知S8の設定が1であればステップS09;YES、エンベデットプロセッサ06は正常起動となる。一方、タイマ12の設定時間が満了した時点でステップS05又はS08、FPGA01のコンフィギュレーションが失敗した場合ステップS06;NO、又は、起動完了通知S8の設定が1でない場合にはステップS09;NO、信号制御部14は、カウンタ13により、コンフィギュレーションの回数が2回未満であるか否かを判定するステップS21。今回はコンフィギュレーションの回数が2回目なのでステップS21;NO、信号制御部14は、上位装置不図示に対して、異常通知S9を出力しステップS31、処理を終了する。上記実施形態によれば、FROM09に同じ内容のコンフィギュレーションデータが複数個格納し、FPGA01は、コンフィギュレーションに失敗した場合、FROM09に格納されている別のコンフィギュレーションデータにより、リコンフィギュレーションする。こうすることで、FPGA01の信頼性を高めることができる。同様に、FROM09に同じ内容のエンベデットプロセッサプログラムを複数個さらに格納し、エンベデットプロセッサ06が起動に失敗した場合には、FROM09に格納されている別のエンベデットプロセッサプログラムにより、エンベデットプロセッサ06が再度起動する構成とした。こうすることで、エンベデットプロセッサ06を備えるFPGA01の信頼性を高めることができる。また、上記実施形態によれば、FPGA01のコンフィギュレーションが失敗した際に、FPGA01がコンフィギュレーションデータの読み出し先として指定するFROM09の指定領域を切り替え、FPGA01が切り替え後の指定領域に格納されている別のコンフィギュレーションデータを読み出せる構成とした。こうすることで、上記特許文献1乃至4にて提案されている方法が適用できない、FPGA01が読み出し先として指定するFROM09の領域に格納されているコンフィギュレーションデータを、FPGA01が直接読み出してコンフィギュレーションする必要がある装置に適用することができる。また、上記実施形態によれば、カウンタ13を設け、コンフィギュレーションの回数kが所定回数nに達した場合にはステップS21;NO、信号制御部14は、上位装置不図示に対して、異常通知S9を出力し処理を終了する構成とした。こうすることで、FROM09に格納されている全てのコンフィギュレーションデータが破壊されている場合に、FPGA01のリコンフィギュレーションがループすることを防止することができる。また、リコンフィギュレーションにより、FPGA01がコンフィギュレーションに成功した際にも、異常通知S9を出力するようにしてもよい。こうすることで、FROM09に格納されている全てのコンフィギュレーションデータが破壊される前に、破壊されたデータを修復する等の適切な対応を行うことができることから、さらに信頼性を高めることが可能となる。なお、上記実施形態の処理手順の説明では、図3を例にしたので、FROM09に格納されるコンフィギュレーションデータ等の個数は2個の構成とした。しかし、前述したように、信号制御部14とFROM09とを接続するアドレス線で制御できるデータのビット数を増やすことで、バックアップとしてFROM09に格納できるコンフィギュレーションデータの個数を増やすことが可能となる。こうすることで、さらに信頼性を高めることができる。例えば、図5のようにアドレス線を2ビットにした場合には、コンフィギュレーションデータ及びエンベデットプロセッサプログラムを4個ずつFROM09に格納できる図6参照。また、上記実施形態において、タイマ12の設定時間満了後に、コンフィギュレーションが成功したか否かを判定し、コンフィギュレーションが失敗した場合に、ステップS21に進む構成としたが、CRCエラーがINIT信号S4bにより信号制御部14に通知された時点で、ステップS21に進む構成としてもよい。こうすることで、より早い段階でリコンフィギュレーションを開始することが可能となる。上記実施形態において、タイマ12の設定値は、コンフィギュレーション制御部11の回路に対するハード設定等により、外部から変更できるようにしてもよい。こうすることで、ユーザが書き換えるデータに応じ、タイマ12の設定値を調整することが可能となる。FROM09は、不揮発性メモリであれば、他種のメモリでもよい。また、上記実施形態において、コンフィギュレーション制御部11にFROM09の破壊されたデータを自動で修復する機能を持たせてもよい。例えば、図6を参照して、4回目のコンフィギュレーションで、エンベデットプロセッサの起動まで成功した場合に、FROM09の0x0_0000、0x1_0000、0x2_0000にそれぞれ格納されているコンフィギュレーションデータを、エラーの無い0x3_0000に格納されているコンフィギュレーションデータで書き換える。同様に、FROM09の0x0_1000、0x1_1000、0x2_1000にそれぞれ格納されているエンベデットプロセッサプログラムを、エラーの無い0x3_1000に格納されているエンベデットプロセッサプログラムで書き換える。こうすることで、最上位ビットの数が同じ領域に格納されているコンフィギュレーションデータ及びエンベデットプロセッサプログラムが少なくとも1組正常であれば、自動的にエラーのある全てのコンフィギュレーションデータ及びエンベデットプロセッサプログラムを修復できる。この結果、FPGA01の信頼性をさらに高めることができる。なお、自動修復機能は、コンフィギュレーションデータにより実現させるようにしてもよい。上記自動修復機能を用いることで、コンフィギュレーションが失敗した際に、コンフィギュレーションの回数kが所定回数nに達している場合においても、エンベデットプロセッサ06の起動まで導ける可能性が生じる。例えば、図6を参照して、1回目と3回目と4回目はコンフィギュレーションに失敗し、2回目はコンフィギュレーションに成功したが、エンベデットプロセッサ06の起動に失敗した場合に、エラーのない0x1_0000に格納されているコンフィギュレーションデータで、0x0_0000、0x2_0000、0x3_0000に格納されているコンフィギュレーションデータを書き換える。そして、電源をリセットさせる。こうすることで、0x0_1000、0x2_1000、0x3_1000にそれぞれ格納されているエンベデットプロセッサプログラムのいずれかが正常であれば、エンベデットプロセッサ06の起動まで導くことが可能となる。また、本発明を用いることで、コンフィギュレーションデータ更新時における、FPGA01の信頼性を高めることが可能となる。例えば、コンフィギュレーションデータの更新を行う際に、コンフィギュレーションデータの更新データで、FROM09の初期指定領域電源がON又はリセットされた後に、FPGA01が最初に読み出すコンフィギュレーションデータが格納されているFROM09の領域。例えば、図3では、0x0_0000領域。に格納されているコンフィギュレーションデータを更新する。電源をON又はリセットすると、上記実施形態のフローに基づいて、FPGA01は最初に該更新データを読み出してコンフィギュレーションを行う。更新データに何らかの不具合があったために、更新データによるコンフィギュレーションに失敗した場合には、上記実施形態のフローに基づいて、更新前のコンフィギュレーションデータによりFPGA01はリコンフィギュレーションを行うことができる。一方、更新データによるコンフィギュレーションが成功した場合には、FROM09の他の領域に格納されている更新前のコンフィギュレーションデータを更新データに書き換える。こうすることで、更新データの不具合のために、FPGA01が更新データによるコンフィギュレーションに失敗したとしても、FROM09の別の領域に格納されている更新前のコンフィギュレーションデータにより、FPGA01はリコンフィギュレーションできる。この結果、専用端末不図示をFPGA01に接続する事無く更新作業を続ける事が可能となり、コンフィギュレーションデータの更新時における、作業効率とFPGA01の信頼性を一層向上させることができる。なお、上記実施形態及び図面の一部又は全部は、以下の付記のようにも記載されうるが、以下に限定されるわけではない。本発明の要旨を変更しない範囲で実施形態及び図面に変更を加えることができるのはもちろんである。付記1同一内容のコンフィギュレーションデータがそれぞれ格納されている複数の領域を有する不揮発性メモリと、コンフィギュレーションデータの読み出し先として指定されている不揮発性メモリの指定領域から、コンフィギュレーションデータを読み出してコンフィギュレーションするFPGAとを備えるFPGA装置のコンフィギュレーション制御回路であって、前記FPGAのコンフィギュレーションの開始からの経過時間を監視するタイマと、前記タイマの設定時間が満了した際に、コンフィギュレーションの完了を示す信号を前記FPGAが出力しているか否かに基づいて、前記FPGAコンフィギュレーションが成功したか否かを判定する判定部と、前記判定部により、コンフィギュレーションが失敗したと判定された際に、前記不揮発性メモリの指定領域を他の領域に切り替える切替部と、前記FPGAが前記切替部により切り替えられた前記不揮発性メモリの領域からコンフィギュレーションデータを読み出してコンフィギュレーションするためのトリガを前記FPGAに与える制御部と、を具備することを特徴とするコンフィギュレーション制御回路。付記2前記不揮発性メモリの複数の領域に、同一内容のエンベデットプロセッサプログラムがそれぞれさらに格納され、前記FPGAは、FPGAのコンフィギュレーション完了後に前記不揮発性メモリの指定領域に格納されているエンベデットプロセッサプログラムを読み出して起動を開始するエンベデットプロセッサを備え、前記タイマは、前記エンベデットプロセッサの起動開始からの経過時間をさらに監視し、前記タイマの設定時間が満了した際に、前記エンベデットプロセッサの起動完了を示す信号を前記FPGAが出力しているか否かに基づいて、前記判定部は、前記エンベデットプロセッサの起動が成功したか否かをさらに判定し、前記エンベデットプロセッサの起動が失敗したと判定された際に、前記切替部は、前記不揮発性メモリの指定領域を切り替え、前記制御部は、前記FPGAが前記切替部により切り替えられた前記不揮発性メモリの指定領域から別のコンフィギュレーションデータを読み出してコンフィギュレーションするためのトリガを前記FPGAに与える、ことを特徴とする付記1に記載のコンフィギュレーション制御回路。付記3前記制御部は、コンフィギュレーションに失敗したコンフィギュレーションデータを、コンフィギュレーションに成功した別のコンフィギュレーションデータに書き換えることにより、前記不揮発性メモリに格納されているデータを修復する、ことを特徴とする付記1に記載のコンフィギュレーション制御回路。付記4前記制御部は、エンベデットプロセッサの起動に失敗したエンベデットプロセッサプログラムを、起動に成功したエンベデットプロセッサプログラムに書き換えることにより、前記不揮発性メモリに格納されているデータを修復する、ことを特徴とする付記2に記載のコンフィギュレーション制御回路。付記5FPGAと、付記1乃至4の何れか1項に記載のコンフィギュレーション制御回路と、を備えるFPGA装置。付記6同一内容のコンフィギュレーションデータがそれぞれ格納されている複数の不揮発性メモリの領域のうち、コンフィギュレーションデータの読み出し先として指定されている不揮発性メモリの指定領域から、コンフィギュレーションデータを読み出してコンフィギュレーションするFPGAのコンフィギュレーション方法であって、コンフィギュレーション開始からの経過時間を計測し、前記経過時間が設定時間を超えた際に、コンフィギュレーションの完了を示す信号を前記FPGAが出力しているか否かに基づいて、前記FPGAのコンフィギュレーションが成功したか否かを判定し、コンフィギュレーションが失敗したと判定された際に、前記不揮発性メモリの指定領域を他の領域に切り替え、指定を切り替えた後の不揮発性メモリの指定領域からコンフィギュレーションデータを読み出してコンフィギュレーションするためのトリガを前記FPGAに与える、ことを特徴とするコンフィギュレーション方法。付記7同一内容のコンフィギュレーションデータがそれぞれ格納されている複数の領域を有する不揮発性メモリと、コンフィギュレーションデータの読み出し先として指定している前記不揮発性メモリの指定領域から、コンフィギュレーションデータを読み出してコンフィギュレーションするFPGAとを備えるFPGA装置のコンフィギュレーションデータ更新方法であって、前記FPGA装置の電源がON又はリセットされた後最初の読み出し先として指定される前記不揮発性メモリの指定領域に格納されているコンフィギュレーションデータを更新データに書き換え、前記FPGAのコンフィギュレーションを起動し、前記FPGAのコンフィギュレーション開始からの経過時間を計測し、前記経過時間が設定時間を超えた際に、コンフィギュレーションの完了を示す信号を前記FPGAが出力しているか否かに基づいて、前記FPGAのコンフィギュレーションが成功したか否かを判定し、更新データによるコンフィギュレーションが失敗したと判定された際に、前記不揮発性メモリの指定領域を他の領域に切り替え、指定を切り替えた後の前記不揮発性メモリの指定領域から更新前のコンフィギュレーションデータを読み出してコンフィギュレーションするためのトリガを前記FPGAに与える、ことを特徴とするコンフィギュレーションデータ更新方法。付記8前記更新データによるコンフィギュレーションが成功した際に、前記不揮発性メモリに格納されている更新前のコンフィギュレーションデータを更新データに書き換える、ことを特徴とする付記7に記載のコンフィギュレーションデータ更新方法。"