(57)【特許請求の範囲】
【請求項１】
第１のデバイスと、
前記第１のデバイスと通信し、前記第１のデバイスからデータを受け取るインタフェース部と、前記第１のデバイスから前記インタフェース部を介して受け取るデータに基づいて、回路の構成を変えることのできるロジック部とを有する第２のデバイスと、前記第２のデバイスに電力を供給する電源と、
前記インタフェース部が前記第１のデバイスとの通信を確立するために必要な情報を記憶する記憶手段と、を有する画像処理装置であって、
前記第２のデバイスは、
前記電源から電力が供給された後、前記記憶手段に記憶された前記情報に基づいて、前記第２のデバイスの識別情報を前記第２のデバイスの前記インタフェース部に設定する設定手段を有し、
前記第１のデバイスは、
前記設定手段による前記インタフェース部の設定の後に、前記設定手段により設定された前記第２のデバイスの識別情報を前記インタフェース部から取得し、前記第２のデバイスを通信先として検出する検出手段と、
前記ロジック部の構成を変えるための前記データを前記検出手段により検出された前記第２のデバイスに送信する送信手段と、を有することを特徴とする画像処理装置。 
【請求項２】
前記第２のデバイスは、前記送信手段により送信された前記データに基づいて、前記ロジック部の構成を変える再構成手段をさらに有し、
前記設定手段は、第１の電力状態で、前記第２のデバイスの前記インタフェース部へ前記第２のデバイスの識別情報の設定を実行し、
前記再構成手段は、前記電源が供給する電力が前記第１の電力状態よりも大きい第２の電力状態で前記ロジック部の構成を変える処理を実行することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記インタフェース部は、ＰＣＩｅであることを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
前記第２のデバイスは、ＦＰＧＡであることを特徴とする請求項１または３のいずれか一項に記載の画像処理装置。
【請求項５】
前記第２のデバイスは、
前記設定手段による前記インタフェース部の設定が完了したことを前記第１のデバイスに通知する通知手段をさらに有し、
前記第１のデバイスは、前記通知手段による通知を受け付けた後に、前記第２のデバイスの識別情報の取得を行うことを特徴とする請求項１乃至４のいずれか一項に記載の画像処理装置。
【請求項６】
前記検出手段は、前記第１のデバイスのブート処理が開始された後、前記インタフェース部から前記第２のデバイスの識別情報を取得することを特徴とする請求項５に記載の画像処理装置。
【請求項７】
前記第１のデバイスは、前記通知手段による通知の後、前記ブート処理を開始することを特徴とする請求項６に記載の画像処理装置。
【請求項８】
第１のデバイスと、
前記第１のデバイスと通信し、前記第１のデバイスからデータを受け取るインタフェース部と、前記第１のデバイスから前記インタフェース部を介して受け取るデータに基づいて回路の構成を変えるロジック部とを有する第２のデバイスと、
前記第２のデバイスに電力を供給する電源と、
を有する画像処理装置の制御方法であって、
前記第２のデバイスは、
前記電源から電源が供給された後に、前記第２のデバイスの識別情報を前記インタフェース部に設定する設定工程を有し、
前記第１のデバイスは、
前記設定工程における、前記第２のデバイスの識別情報の設定が完了した後、前記インタフェース部から前記第２のデバイスの識別情報を取得し、前記第２のデバイスを通信先として検出する検出工程と、
前記第２のデバイスのロジック部の構成を変えるための前記データを前記検出工程において検出された前記第２のデバイスに送信する送信工程と、を有することを特徴とする画像処理装置の制御方法。
【請求項９】
前記送信工程において送信された、前記データを受け取って前記第２のデバイスの前記ロジック部を再構成する再構成工程をさらに有し、
前記再構成工程は、前記設定工程よりも前記電源から供給される電力が大きい電力状態で実行されることを特徴とする請求項８に記載の画像処理装置の制御方法。
【請求項１０】
前記インタフェース部は、ＰＣＩｅであることを特徴とする請求項８または９に記載の画像処理装置の制御方法。
【請求項１１】
前記第２のデバイスは、ＦＰＧＡであることを特徴とする請求項８乃至１０のいずれか一項に記載の画像処理装置の制御方法。
【請求項１２】
請求項８乃至１１のいずれか1項に記載の画像処理装置の制御方法をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理装置の制御方法、及びプログラムに関するものである。
【背景技術】
【０００２】
従来、製造後に購入者や設計者が構成を設定できる集積回路が情報処理装置に搭載され、要求されるジョブに対して動的に処理する論理コンフィグを再構成（コンフィグレーション）しながら画像処理等を実行する。ここで、集積回路の一例としてＦＰＧＡ（ＦＩＥＬＤ  ＰＲＯＧＲＡＭＭＡＢＬＥ  ＧＡＴＥ  ＡＲＲＡＹ）がある。このようなＦＰＧＡに対して、コンフィグレーション完了後に確実にアクセスできるようにするため、ＦＰＧＡコンフィグレーション制御を行うＰＬＤ（ＰＲＯＧＲＡＭＭＡＢＬＥ  ＬＯＧＩＣ  ＤＥＶＩＣＥ）と、マイコンとの間を制御線で接続する技術がある。
これによれば、前記制御線によって、ＰＬＤがマイコンに対し、ＦＰＧＡコンフィグレーション完了の通知を行うことで、マイコンがＦＰＧＡにアクセス可能となるタイミングを把握することができる。これによって、コンフィグレーション装置システムの安定・高速な立ち上がりとシステム性能向上を図ることができる（例えば、特許文献１参照）。
【０００３】
この技術は、例えばＦＰＧＡがＰＣＩｅなどのバスを介してホストＣＰＵと接続され、ホストＣＰＵからＦＰＧＡをＰＣＩｅデバイスとして認識する場合にも応用できる。すなわち、エンドポイントとなるＰＣＩｅ制御部を含むＦＰＧＡのコンフィグレーションが完了したことを、ホストＣＰＵに通知し、ホストＣＰＵがその通知後に、ＰＣＩｅデバイス探索を行うことで、ホストＣＰＵは確実にＦＰＧＡをＰＣＩｅデバイスとして検知できる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００３−１５７７７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ここで、情報処理装置が電源投入されてからのブートアップ時間は、短時間化されることが望まれている。
ＦＰＧＡの全ロジックをコンフィグレーションするには、数百ｍｓ程度の時間がかかるため、これをシステムブートアップのシーケンスの中でおこなわず、処理を後回しにする方法がある。
例えば、ブートアップ処理後のアイドル時や、ＦＰＧＡ機能を実行する直前にコンフィグレーションすることで、システム全体のブートアップ時間を短縮化できる。
しかし、ＦＰＧＡをＰＣＩｅデバイスとして認識させて使用するシステムにおいては、少なくともＦＰＧＡのＰＣＩｅ制御部は、ホストＣＰＵがＰＣＩｅデバイス探索を行う前にコンフィグレーション完了している必要がある。
ホストＣＰＵのＰＣＩｅデバイス探索は、一般的にＢＩＯＳなどのブートアップ時におこなわれるため、上記のようにブートアップ後にＦＰＧＡ全体をコンフィグレーションするような方法では、ＦＰＧＡをＰＣＩｅデバイスとしてホストＣＰＵから認識させることはできない。
【０００６】
本発明は、上記の課題を解決するためになされたもので、本発明の目的は、システムブートアップ時間を短縮化しながら、ブートアップ時にホストＣＰＵがＦＰＧＡをＰＣＩｅデバイスとして認識することができる仕組みを提供することである。
【課題を解決するための手段】
【０００７】
上記目的を達成する本発明の画像処理装置は以下に示す構成を備える。
第１のデバイスと、前記第１のデバイスと通信し、前記第１のデバイスからデータを受け取るインタフェース部と、前記第１のデバイスから前記インタフェース部を介して受け取るデータに基づいて、回路の構成を変えることのできるロジック部とを有する第２のデバイスと、前記第２のデバイスに電力を供給する電源と、前記インタフェース部が前記第１のデバイスとの通信を確立するために必要な情報を記憶する記憶手段と、を有する画像処理装置であって、前記第２のデバイスは、前記電源から電力が供給された後、前記記憶手段に記憶された前記情報に基づいて、前記第２のデバイスの識別情報を前記第２のデバイスの前記インタフェース部に設定する設定手段を有し、前記第１のデバイスは、前記設定手段による前記インタフェース部の設定の後に、前記設定手段により設定された前記第２のデバイスの識別情報を前記インタフェース部から取得し、前記第２のデバイスを通信先として検出する検出手段と、前記ロジック部の構成を変えるための前記データを前記検出手段により検出された前記第２のデバイスに送信する送信手段と、を有することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、システムブートアップ時間を短縮化しながら、ブートアップ時にホストとなる第１のデバイスが第２のデバイスを認識することができる。
【図面の簡単な説明】
【０００９】
【図１】情報処理装置の構成を説明するブロック図である。
【図２】情報処理装置の制御方法を説明するフローチャートである。
【図３】情報処理装置の電力供給状態を説明する図である。
【図４】情報処理装置の構成を説明するブロック図である。
【図５】情報処理装置の各ブロックへの電力供給状態を示す図である。
【図６】情報処理装置の制御方法を説明するフローチャートである。
【発明を実施するための形態】
【００１０】
次に本発明を実施するための最良の形態について図面を参照して説明する。
＜システム構成の説明＞
〔第１実施形態〕
図１は、本実施形態を示す情報処理装置の構成を説明するブロック図である。なお、情報処理装置が実行する機能の一例として、画像処理機能、プリント機能、スキャナ機能、データ送信機能等が含まれる。なお、画像処理装置、画像形成装置、複合画像形成装置を含む情報処理装置は、図示しないホストコンピュータからジョブを受信して、画像処理機能、プリント機能、スキャナ機能、データ送信機能に基づくデータ処理を行う。また、以下の説明では、ＣＰＵを備えるホスト１００を第１のデバイスとし、ＰＣＩｅデバイスとしてのＦＰＧＡ（ＦＩＥＬＤ  ＰＲＯＧＲＡＭＭＡＢＬＥ  ＧＡＴＥ  ＡＲＲＹ）を第２のデバイスとして第１のデバイスと、第２のデバイスとのブート処理を供給する電力のタイミングとともに詳述する。
【００１１】
図１において、ホスト１００は、ＲＯＭ１０１、ＣＰＵ１０２、ＲＡＭ１０３、ＰＣＩｅ制御部１０４、ＨＤＤ１０６から構成される。ＲＯＭ１０１は、ブートプログラム（ＢＩＯＳ）やＯＳ、アプリケーションプログラムを含み、電力制御部１０５がホスト１００に対して電力供給すると、ＣＰＵ１０２はＲＯＭ１０１からブートプログラムを読み出して動作開始する。ここで、ＰＣＩｅ制御部１０４は、後述するＦＰＧＡ１１０のＰＣＩｅ制御部１１２と所定の通信を確立することで、特定の論理情報をＰＣＩｅ制御部１１２に送信することができる。特定の論理情報は、後述するユーザロジック部１１１に書き込む論理コンフィグに対応しており、これによって、ＦＰＧＡ１１０で実行するジョブの処理に従い、ＦＰＧＡ１１０は動的に再構成される。
ＲＡＭ１０３は、ＣＰＵ１０２がプログラム実行する際のデータや、ＨＤＤ１０６から読み出したデータを一時的に格納する。ＨＤＤ１０６は、ＣＰＵ１０２で動作するプログラム上で処理するデータを格納する。不揮発性メモリであるＨＤＤ１０６は、ＦＰＧＡ１１０に書き込むべき論理コンフィグデータを記憶している。
ＰＣＩｅ制御部１０４は、ＰＣＩｅバス１２０を介して、ＦＰＧＡ１１０のＰＣＩｅ制御部１１２と接続され、ＦＰＧＡ１１０とデータの授受を行う。ＰＣＩｅ制御部１０４は、電力制御部１０５によってホスト１００に電力供給されると、ＣＰＵ１０２が介入することなく、リンクトレーニングによる物理的接続確認が可能な状態になる。電力制御部１０５は、電力供給部１３０から供給されたＤＣ電力を、適切な電圧に変換してホスト１００に供給する。
【００１２】
ＦＰＧＡ１１０は、ユーザロジック部１１１、ＰＣＩｅ制御部１１２、コンフィグレーション部１１３から構成される。ユーザロジック部１１１は、コンフィグレーション部１１３によって、書き替え可能な回路部であって、複数の領域に分割された記憶領域が確保されている。そして、後述する制御に従いＰＣＩｅ制御部１０４が論理コンフィグデータをＰＣＩｅ制御部１１２が受信することに応じて、各記憶領域に論理コンフィグデータを書き込むことで、要求されるジョブに対応するプログラマブルな論理回路が構成される。
ＰＣＩｅ制御部１１２は、ＰＣＩｅバス１２０を介して、ホスト１００のＰＣＩｅ制御部１０４と接続され、ホスト１００とデータの授受を行う。ここで、ＰＣＩｅ制御部１１２がＦＰＧＡ１１０のハードマクロである場合は、リンクトレーニングによる物理的接続確認が可能な状態になるためには、コンフィグレーション部１１３によって、ＰＣＩｅ制御部１１２の初期設定が完了する必要がある。
【００１３】
コンフィグレーション部１１３は、電力制御部１１５から電力が供給されると、ＲＯＭ１１４に格納された情報にしたがって、ユーザロジック部１１１やＰＣＩｅ制御部１１２のコンフィグレーション、初期設定を行う。また、コンフィグレーション部１１３は、ＰＣＩｅ制御部１１２を介してホスト１００から送信されてくる情報にしたがって、ユーザロジック部１１１のコンフィグレーション、初期設定を行うこともできる。
ただし、このコンフィグレーション方法を実行するためには、ＰＣＩｅ制御部１１２がコンフィグレーション、初期設定完了し、ホスト１００のＣＰＵ１０２からＦＰＧＡ１１０がＰＣＩｅデバイスとして検知（認識）されている必要がある。
【００１４】
このコンフィグレーション部１１３で行うコンフィグレーション処理の内容は、ＦＰＧＡ１１０の消費電力と、コンフィグレーション時間に大きく影響する。すなわち、例えば、コンフィグレーション部１１３で行う処理がＰＣＩｅ制御部１１２の初期設定のみであれば、消費電力は小さく、コンフィグレーション時間も短くて済む。
しかし、ユーザロジック部１１１のコンフィグレーションや初期設定を行う場合、一般的にユーザロジック部がＦＰＧＡ１１０の大部分を占めるため、そのコンフィグレーション（ＲＡＭの書き換え）には大きい消費電力と長いコンフィグレーション時間がかかる。
【００１５】
また、コンフィグレーション部１１３は、ＲＯＭ１１４から読み込んだ情報を基にコンフィグレーション完了した時に、ホスト１００側の電力制御部１０５にその旨を信号線１２１によって通知する。ホスト１００側の電力制御部１０５は、その信号線１２１によって、ＦＰＧＡ１１０のＲＯＭ１１４からのコンフィグレーションが完了した後に、ホスト１００に電力供給するように構成されている。
【００１６】
ＲＯＭ１１４は、本実施形態においては、ＰＣＩｅ制御部１１２の初期設定情報のみを格納しているものとする（以下、インタフェース情報と記載する）。さらに、ユーザロジック部１１１のコンフィグレーション情報と初期設定情報は、ホスト１００側のＨＤＤ１０６に格納されているものとする（以下、コア情報と記載する）。電力制御部１１５は、電力供給部１３０から供給されたＤＣ電力を、適切な電圧に変換してＦＰＧＡ１１０に供給する。
【００１７】
図２は、本実施形態を示す情報処理装置の制御方法を説明するフローチャートである。本例は、図１に示したＦＰＧＡ１１０のコンフィグレーションフローの一例である。なお、図２の（ａ）に示す一部のステップは、ＣＰＵ１０２がＲＯＭ１０１に記憶される制御プログラムを実行することで実現される。
まず、不図示のシステム電源がＯＮされると、ＦＰＧＡ１１０側の電力制御部１１５が、ＦＰＧＡ１１０に電力供給を開始する（Ｓ２２１）。すると、コンフィグレーション部１１３は、ＲＯＭ１１４からインタフェース情報を読み出し（Ｓ２２２）、ＰＣＩｅ制御部１１２に対して初期設定を行う（Ｓ２２３）。そして、コンフィグレーション部１１３は、ＰＣＩｅ制御部１１２に対する初期設定が完了すると、コンフィグレーションが完了した旨をホスト１００の電力制御部１０５に信号線１２１を用いて通知する（Ｓ２２４）。この時点で、ＰＣＩｅ制御部１１２は、リンクトレーニングによる物理的接続確認が可能な状態になる。
【００１８】
一方、コンフィグレーション部１１３から通知を受けたホスト１００の電力制御部１０５は、ホスト１００に電力供給を開始する（Ｓ２０１）。すると、前述したように、ＰＣＩｅ制御部１０４は、ＣＰＵ１０２が介入することなく、リンクトレーニングによる物理的接続確認が可能な状態に初期化される（Ｓ２０２）。すると、ＰＣＩｅ制御部１１２とＰＣＩｅ制御部１０４は、お互いにリンクトレーニングを行い、物理的接続を確立する（Ｓ２１０）。
【００１９】
その後、ＣＰＵ１０２は、ＲＯＭ１０１からＢＩＯＳを読み出し、ホスト１００のブートを開始する。その処理の中で、ＣＰＵ１０２は、ＰＣＩｅ制御部１０４を介して、ＰＣＩｅバス１２０の先に接続されているデバイスを探索しに行く（Ｓ２０４）。Ｓ２１０で、お互いのリンクトレーニングが正常に完了していたとＰＣＩｅ制御部１１２が判断した場合、ＦＰＧＡ１１０側のＰＣＩｅ制御部１１２は、ホスト１００側のＰＣＩｅ制御部１０４のリクエストに応答することで、ホスト１００側では、ＰＣＩｅデバイスとして検出される（Ｓ２２５）。
例えば、ホスト１００からのベンダＩＤ、デバイスＩＤの送信要求に対して、ＰＣＩｅ制御部１１２は、Ｓ２２３で初期設定されたベンダＩＤ、デバイスＩＤをホスト１００に送信する。以上のフローによって、ホスト１００は、ＦＰＧＡ１１０を、ＰＣＩｅデバイスとして正しく認識することができる。
【００２０】
ホスト１００のＣＰＵ１０２は、ＦＰＧＡ１１０をＰＣＩｅデバイスとして認識すると、次に、ＨＤＤ１０６に格納されたコア情報を読み出す（Ｓ２０５）。そして、読み出したコア情報を、ＰＣＩｅ制御部１０４とＰＣＩｅバス１２０を介して、ＦＰＧＡ１１０のＰＣＩｅ制御部１１２に転送する（Ｓ２０６）。
このようにしてＰＣＩｅ制御部１０４からＰＣＩｅ制御部１１２に転送されたコア情報は、そのままコンフィグレーション部１１３に転送され、コンフィグレーション部１１３はそのコア情報を基に、ユーザロジック部１１１のコンフィグレーションと初期設定を行う（Ｓ２２６）。
この時、ＰＣＩｅ制御部１１２に対するコンフィグレーションや初期設定はおこなわれないように構成されており、ＰＣＩｅ制御部１１２はＰＣＩｅ制御部１０４のリンクを切断することなく、ホスト１００からユーザロジック部１１１の書き換えが可能である。
【００２１】
上記実施形態によれば、システムのブートアップ時には、ＲＯＭ１０１に含まれるインタフェース情報によって、ＰＣＩｅ制御部１１２の初期設定のみを行うようにすることで、短時間でコンフィグレーション完了することができる。
また、上記実施形態によれば、ＣＰＵ１０２によるＰＣＩｅデバイス探索より前に、ＦＰＧＡ１１０のＰＣＩｅ制御部１１２とホスト１００のＰＣＩｅ制御部１０４がリンクトレーニング完了できる。
これによって、ホスト１００のＣＰＵ１０２で実行されるＰＣＩｅデバイスの探索処理時に、確実にＦＰＧＡ１１０をＰＣＩｅデバイスとして検出することができる。
さらに、ホスト１００によるＦＰＧＡ１１０のＰＣＩｅデバイス検出後に、コア情報によるコンフィグレーションを行うことで、ホスト１００とＦＰＧＡ１１０のＰＣＩｅバス１２０の接続を断つことなくユーザロジック部１１１を目的の回路構成に書き換えることができる。
【００２２】
〔第２実施形態〕
第１実施形態において、ＦＰＧＡ１１０は、図３に示すような３つの電力状態を持っている。
図３において、第１の電力状態は、電力制御部１１５がＦＰＧＡ１１０に電力供給していない電源ＯＦＦ状態４００である。この時、ＦＰＧＡ１１０の消費電力はゼロである。第２の電力状態は、電力制御部１１５からＦＰＧＡ１１０に電力供給され、ＰＣＩｅ制御部１１２とコンフィグレーション部１１３のみ動作可能であり、ユーザロジック部１１１にはクロック供給されない低消費電力状態４０１である。
第３の電力状態は、電力制御部１１５からＦＰＧＡ１１０に電力供給され、ＰＣＩｅ制御部１１２とコンフィグレーション部１１３に加えて、ユーザロジック部１１１も動作可能な通常状態４０２である。この時、ＦＰＧＡ１１０の動作時消費電力は大きくなる。
【００２３】
これらの電力状態は、図３の矢印で示したような状態遷移を行う。例えば、図２に示したＦＰＧＡ処理におけるＳ２２０のシーケンスにおいて、Ｓ２２１の直前までは電源ＯＦＦ状態４００である。Ｓ２２１で電源供給されると、低消費電力状態４０１に遷移する（４１０）。Ｓ２２１からＳ２２６の直前までは低消費電力状態４０１である。
【００２４】
Ｓ２２６で、ユーザロジック部のコンフィグレーションが実行されると、通常状態４０２に遷移する（４１３）。Ｓ２２６以降は通常状態４０２である。また、図２のフローチャートには記載されていないが、通常状態４０２の状態で電力供給部１３０からの電力供給が遮断されると、電源ＯＦＦ状態４００に遷移する（４１４）。さらに、通常状態４０２から低消費電力状態４０１への遷移（４１２）と、低消費電力状態４０１から電源ＯＦＦ状態４００への遷移（４１１）も存在する。
【００２５】
電力制御部１１５は、より詳細には、電力供給部１３０から供給された電圧を、ＦＰＧＡ１１０が使用する複数の電圧に変換するＤＣＤＣコンバータを有している。
前述の第３の電力状態においては、ＦＰＧＡ１１０の動作時消費電力は大きく、電力供給部１３０から低電圧で電力供給すると、電圧ドロップによる影響を大きく受ける。
一方、前述の第２の電力状態においては、ＦＰＧＡ１１０は低消費電力状態で動作しており、電力供給部１３０から高電圧で電力供給すると、電力制御部１１５のＤＣＤＣコンバータでの変換効率、すなわち電力効率が落ちる。
【００２６】
そこで、第２実施形態においては、上記の課題を解決するために、図４に示すように、電力供給部１３０から電力制御部１１５に供給する電圧系統を、高電力容量を持つ高電圧系統と、低電力容量を持つ低電圧系統の２系統にする。
そして、これらの電源系統を、図３に示した各電力状態に応じて、切り替えながら供給することで、通常状態４０２における電圧ドロップを軽減し、低消費電力状態４０１における電力効率を向上することができる。以下、第２実施形態の構成について詳述する。
【００２７】
図４は、本実施形態を示す情報処理装置の構成を説明するブロック図である。ここでは、図１に示した第１実施形態の構成との差分について説明する。
図４において、電力制御部１３０から電力制御部１１５に対しては、低電圧系統３０１と高電圧系統３０２の２系統が供給されている。ホスト１００は、電力供給部１３０を制御するための制御線３０３を有し、ＣＰＵ１０２などから電力供給部１３０を制御することで、ＦＰＧＡ１１０に供給する電力状態を切替制御することができる。
【００２８】
図５は、図４に示した情報処理装置の各ブロックへの電力供給状態を示す図である。以下、図４の各ブロックへの電力状態の遷移について図３に示した各電力状態と対比して説明する。
図５の（ａ）、（ｂ）、（ｃ）は、それぞれ、電力状態が電源ＯＦＦ状態４００、低消費電力状態４０１、通常状態４０２の時の動作可能ブロックを示している。なお、斜線部は動作していないブロックを示している。
電源ＯＦＦ状態４００に相当する図５の（ａ）に示す電力供給状態では、情報処理装置１５０の内部ブロックはすべて通電が切れており、情報処理装置が動作していない状態である。
【００２９】
また、低消費電力状態４０１に相当する図５の（ｂ）に示す電力供給状態では、ＦＰＧＡ１１０のユーザロジック部１１１のみ動作不可であり、それ以外のブロックは動作可能である。通常状態４０２に相当する図５の（ｃ）に示す電力供給状態では、情報処理装置１５０が含むすべてのブロックが動作可能である。
【００３０】
図６は、本実施形態を示す情報処理装置の制御方法を説明するフローチャートである。本例は、図１に示したＦＰＧＡ１１０のコンフィグレーションフローの一例である。なお、図６の（ａ）に示す一部のステップは、ＣＰＵ１０２がＲＯＭ１０１に記憶される制御プログラムを実行することで実現される。また、図６の（ｂ）に示す各ステップは、ＦＰＧＡ１１０がＲＯＭ１１４に記憶されるプログラムを実行することで実現される。ここでは、図２の（ａ）、（ｂ）との差分について説明する。
【００３１】
低電圧供給ステップに対応するＳ６０１では、電力供給部１３０から電力制御部１１５に低電圧系統を供給する。ＦＰＧＡ１１０は、電力制御部１１５から低電圧系統が供給されると、ＲＯＭ１０１からインタフェース情報の読み出しを開始し（Ｓ２２２）、以降、Ｓ２２５まで図２と同様のフローで、ホスト１００はＰＣＩｅデバイスとしてＦＰＧＡ１１０を検知する。
その後、ホスト１００は、ＦＰＧＡ１１０での処理が必要になった段階で、ＦＰＧＡ書き換え処理を開始する（Ｓ６０２）。
【００３２】
この処理の中で、ホスト１００のＣＰＵ１０２は、制御線３０３を介して、電力供給部１３０に高電圧系統３０２の供給を指示し、電力供給部１３０は、その指示に応じて、電力制御部１１５に高電圧系統３０２を供給する（Ｓ６０３）。電力制御部１１５は、高電圧系統３０２が供給されると、既に供給されている低電圧系統３０１に優先して、高電圧系統３０２の入力電圧をＤＣＤＣコンバータで変換した電圧をＦＰＧＡ１１０に供給するようになる。
【００３３】
以降は、第１実施形態と同様に、ホスト１００はＨＤＤ１０６からコア情報を読み出し、ＦＰＧＡ１１０のＰＣＩｅ制御部１１２に転送する。そして、ＦＰＧＡ１１０は、転送されたコア情報にしたがって、供給された高電力容量を持つ高電圧系統３０２の電力によって、ユーザロジック部１１１を目的の回路に書き換える。
【００３４】
第２実施形態によれば、電力供給部１３０と電力制御部１１５の入出力電圧において、ＦＰＧＡ１１０の通常状態４０２における電圧ドロップを軽減し、低消費電力状態４０１における電力効率を向上することができる。また、高電力容量を有する高電圧系統３０２が入力されてからユーザロジック部１１１のコンフィグレーションを行うことで、低電力容量の電源系統から過剰な電流を引くことがなくなる。
【００３５】
本発明の各工程は、ネットワーク又は各種記憶媒体を介して取得したソフトウエア（プログラム）をパソコン（コンピュータ）等の処理装置（ＣＰＵ、プロセッサ）にて実行することでも実現できる。
【００３６】
本発明は上記実施形態に限定されるものではなく、本発明の趣旨に基づき種々の変形（各実施形態の有機的な組合せを含む）が可能であり、それらを本発明の範囲から除外するものではない。
【符号の説明】
【００３７】
１００  ホスト
１１０  ＦＰＧＡ
【図１】
0006504764.tif 000002
【図２】
0006504764.tif 000003
【図３】
0006504764.tif 000004
【図４】
0006504764.tif 000005
【図５】
0006504764.tif 000006
【図６】
0006504764.tif 000007