(57)【特許請求の範囲】
【請求項１】
回路構成を動的に再構成可能であって再構成された回路構成によりデータ処理を実行する再構成可能回路と、
設定されたロード情報に基づいて再構成データを再構成メモリにロードするロード処理部と、
前記再構成可能回路からの要求に応じて、再構成メモリにロードされた再構成データで前記回路構成を再構成する再構成処理部と、
前記要求を無効にして再構成を禁止しつつ前記ロード処理部に対するロード情報の設定処理を実行し、当該設定処理を終了してから前記要求を有効にして再構成を許可する制御部と、
を有する、
ことを特徴とするデータ処理装置。
【請求項２】
請求項１に記載のデータ処理装置において、
前記制御部は、前記設定処理において、前記再構成可能回路が実行しているデータ処理の処理時間を予測し、予測した当該データ処理の処理時間内に前記ロード処理部に対するロード情報の設定を完了できるか否かを判断し、完了できる場合に当該ロード情報を前記ロード処理部に設定する、
ことを特徴とするデータ処理装置。
【請求項３】
請求項２に記載のデータ処理装置において、
前記制御部は、前記ロード情報を設定してから、さらに、前記予測したデータ処理の処理時間内に次のロード情報の設定を完了できるか否かを判断し、完了できる場合に当該次のロード情報を前記ロード処理部に設定する、
ことを特徴とするデータ処理装置。
【請求項４】
請求項１から３のいずれか１項に記載のデータ処理装置において、
前記制御部は、前記設定処理において、前記再構成可能回路が実行しているデータ処理の処理時間を予測し、予測した当該データ処理の処理時間内に前記ロード処理部に対するロード情報の設定を完了できるか否かを判断し、完了できない場合に当該ロード情報を前記ロード処理部に設定せずに前記設定処理を終了し、前記再構成可能回路からの要求を有効にして再構成を許可する、
ことを特徴とするデータ処理装置。
【請求項５】
回路構成を動的に再構成可能な再構成可能回路と、
ロード情報に基づいて再構成データを再構成メモリにロードするローダと、
前記再構成可能回路からの要求に応じて、再構成メモリにロードされた再構成データで前記回路構成を再構成する再構成コントローラと、
を備えた動的再構成装置の制御に係るデータ処理プログラムであって、
コンピュータに、
前記再構成可能回路からの要求を無効にして前記再構成コントローラによる再構成を禁止しつつ前記ローダに対するロード情報の設定処理を実行し、当該設定処理を終了してから前記要求を有効にして前記再構成を許可する制御機能、
を実現させる、
ことを特徴とするデータ処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ処理装置及びデータ処理プログラムに関する。
【背景技術】
【０００２】
近年になり、内部に備える回路構成を動的に再構成できる再構成可能デバイス（動的再構成デバイス）が開発され、再構成可能デバイスを利用したデータ処理装置も提案されている。
【０００３】
例えば、特許文献１には、動的再構成回路を含む動的再構成デバイス１０７と、動的再構成回路の構成を変更するための設定情報（コンフィグ）を格納しておく外部コンフィグメモリ１１１と、外部コンフィグメモリ１１１の内容を動的再構成デバイス１０７へ転送するためのコンフィグ制御部１０５と、外部コンフィグメモリ１１１内のコンフィグの使用履歴や使用優先度等を管理するコンフィグ管理部１０３を備え、優先度や使用頻度の高いコンフィグを優先的に動的再構成デバイス１０７に転送しておき、外部コンフィグメモリ１１１からコンフィグを読み込んで使用する頻度を少なくし、動的再構成デバイス１０７における処理速度を向上させたデータ処理装置が記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−２０７１３６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明は、ロード処理部に対するロード情報の設定処理中における再構成を抑えることを目的とする。
【課題を解決するための手段】
【０００６】
請求項１に係る発明は、回路構成を動的に再構成可能であって再構成された回路構成によりデータ処理を実行する再構成可能回路と、設定されたロード情報に基づいて再構成データを再構成メモリにロードするロード処理部と、前記再構成可能回路からの要求に応じて、再構成メモリにロードされた再構成データで前記回路構成を再構成する再構成処理部と、前記要求を無効にして再構成を禁止しつつ前記ロード処理部に対するロード情報の設定処理を実行し、当該設定処理を終了してから前記要求を有効にして再構成を許可する制御部と、を有することを特徴とするデータ処理装置である。
【０００７】
請求項２に係る発明は、請求項１に記載のデータ処理装置において、前記制御部は、前記設定処理において、前記再構成可能回路が実行しているデータ処理の処理時間を予測し、予測した当該データ処理の処理時間内に前記ロード処理部に対するロード情報の設定を完了できるか否かを判断し、完了できる場合に当該ロード情報を前記ロード処理部に設定する、ことを特徴とするデータ処理装置である。
【０００８】
請求項３に係る発明は、請求項２に記載のデータ処理装置において、前記制御部は、前記ロード情報を設定してから、さらに、前記予測したデータ処理の処理時間内に次のロード情報の設定を完了できるか否かを判断し、完了できる場合に当該次のロード情報を前記ロード処理部に設定する、ことを特徴とするデータ処理装置である。
【０００９】
請求項４に係る発明は、請求項１から３のいずれか１項に記載のデータ処理装置において、前記制御部は、前記設定処理において、前記再構成可能回路が実行しているデータ処理の処理時間を予測し、予測した当該データ処理の処理時間内に前記ロード処理部に対するロード情報の設定を完了できるか否かを判断し、完了できない場合に当該ロード情報を前記ロード処理部に設定せずに前記設定処理を終了し、前記再構成可能回路からの要求を有効にして再構成を許可する、ことを特徴とするデータ処理装置である。
【００１０】
請求項５に係る発明は、回路構成を動的に再構成可能な再構成可能回路と、ロード情報に基づいて再構成データを再構成メモリにロードするローダと、前記再構成可能回路からの要求に応じて、再構成メモリにロードされた再構成データで前記回路構成を再構成する再構成コントローラと、を備えた動的再構成装置の制御に係るデータ処理プログラムであって、コンピュータに、前記再構成可能回路からの要求を無効にして前記再構成コントローラによる再構成を禁止しつつ前記ローダに対するロード情報の設定処理を実行し、当該設定処理を終了してから前記要求を有効にして前記再構成を許可する制御機能、を実現させる、ことを特徴とするデータ処理プログラムである。
【発明の効果】
【００１１】
請求項１に係る発明によれば、ロード処理部に対するロード情報の設定処理中における再構成が抑えられる。
【００１２】
請求項２に係る発明によれば、再構成可能回路が実行しているデータ処理の処理時間内にロード処理部に対するロード情報の設定が完了する。
【００１３】
請求項３に係る発明によれば、再構成可能回路が実行しているデータ処理の処理時間内にロード処理部に対して複数のロード情報が設定される。
【００１４】
請求項４に係る発明によれば、再構成可能回路が実行しているデータ処理の処理時間内に設定を完了できないにもかかわらずロード情報を設定する場合に比べて、再構成の禁止による再構成可能回路の待機時間が短縮する。
【００１５】
請求項５に係る発明によれば、ローダに対するロード情報の設定処理中における再構成コントローラによる再構成を抑える制御に係るデータ処理プログラムが提供される。
【図面の簡単な説明】
【００１６】
【図１】本発明の実施において好適なデータ処理装置を示す図である。
【図２】図１のデータ処理装置における再構成に係る処理の概略図である。
【図３】図１のデータ処理装置による再構成のタイミングチャートである。
【図４】図１のデータ処理装置による再構成のスケジューリングを有する処理を示すタイミングチャートである。
【図５】制御プロセッサ７０が実行する制御処理を示すフローチャートである。
【図６】制御プロセッサ７０が実行する設定処理を示すフローチャートである。
【図７】セルフレジスタＳＲの設定状態の具体例を示す図である。
【図８】データ処理の処理時間に関する比較結果を示す図である。
【発明を実施するための形態】
【００１７】
図１は、本発明の実施において好適なデータ処理装置の構成図である。図１のデータ処理装置（本データ処理装置）は、再構成可能回路１０と再構成メモリ２０とＤＲＡＭ３０とセルフローダ４０と自律再構成コントローラ５０と割り込み制御部６０と制御プロセッサ７０を備えており、処理対象となるデータに対してそのデータに必要なデータ処理を実行する。
【００１８】
本データ処理装置は、例えばＤＲＰ（Dynamic Reconfigurable Processor：動的再構成可能プロセッサ）などにより実現される。例えば、本データ処理装置をＤＲＰで実現する場合には、図１がＤＲＰ内における機能ブロック図となる。
【００１９】
再構成可能回路１０は、その内部の論理回路構成を動的に、すなわち当該回路の動作中に再構成が可能な回路であり、例えば多数の回路要素（ＰＥ：プロセッサエレメント）を備えた回路構成部を備えている。そして、それら回路要素間の接続構成が再構成データ（コンフィギュレーションデータ）に従って比較的高速に再構成可能（組み替え可能）となっており、再構成された回路構成部がデータ処理回路として機能する。
【００２０】
再構成可能回路１０内の回路構成部は、再構成メモリ２０に記憶された再構成データに基づいて再構成（リコンフィギュレーション）される。再構成メモリ２０には、１つ以上の再構成データが記憶可能である。図１に示す具体例では、再構成メモリ２０に３つの再構成データが記憶されている。
【００２１】
本データ処理装置において利用される多数の再構成データは、ＤＲＡＭ３０に記憶されており、ＤＲＡＭ３０に記憶された再構成データが、セルフローダ４０により、再構成メモリ２０にロードされる。
【００２２】
セルフローダ４０は、セルフレジスタを備えており、セルフレジスタに設定されたロードに必要な情報（ロード情報）に基づいて、ＤＲＡＭ３０に記憶された再構成データを再構成メモリ２０にロードする。
【００２３】
自律再構成コントローラ５０は、再構成可能回路１０からの要求、つまり再構成を要求する割り込み信号に応じて、再構成メモリ２０にロードされた再構成データで再構成可能回路１０の回路構成部を再構成する。再構成可能回路１０から出力される割り込み信号は割り込み制御部６０を介して自律再構成コントローラ５０に送られる。
【００２４】
制御プロセッサ７０は、本データ処理装置内を集中的に制御する。制御プロセッサ７０は、例えば演算機能等を実現するハードウェアとその動作を規定するソフトウェア（制御プログラム）によって構成され、ハードウェアとソフトウェアとの協働により、本データ処理装置に関する制御を実現する。
【００２５】
なお、制御プロセッサ７０の機能がコンピュータにより実現されてもよい。その場合には、制御プロセッサ７０の機能に対応したデータ処理プログラム（制御プログラム）が、例えば、ディスクやメモリなどのコンピュータが読み取り可能な記憶媒体に記憶され、その記憶媒体を介してコンピュータに提供される。もちろん、インターネット等の電気通信回線を介して当該プログラムがコンピュータに提供されてもよい。そして、コンピュータが備えるＣＰＵやメモリ等のハードウェア資源と、提供された当該プログラム（ソフトウェア）との協働により、制御プロセッサ７０と同じ機能が実現される。さらに、例えば、セルフローダ４０と自律再構成コントローラ５０と割り込み制御部６０の機能の一部または全てに対応したプログラムにより、当該機能の一部または全てをコンピュータで実現してもよい。
【００２６】
本データ処理装置によって処理されるデータの好適な具体例は画像データであり、例えばコンピュータなどの外部の装置から本データ処理装置に画像データが提供され、図示しないデータバス等を介して再構成可能回路１０に送られる。また、本データ処理装置が、画像読み取り機能（スキャン機能）等を備えた画像処理装置内に組み込まれ、その機能を介して紙などの媒体から得られた画像データを再構成可能回路１０が処理してもよい。さらに、処理後の画像データに対応した画像が紙などに印刷されてもよいし、処理後の画像データが外部の装置に提供されてもよい。
【００２７】
なお、画像データは、本データ処理装置において処理が可能な好適な具体例の一つに過ぎず、本データ処理装置が画像データ以外のデータを処理してもよいことは言うまでもない。例えば、本データ処理装置が、情報処理装置、情報処理端末、オーディオ・ビジュアル機器やその他の家電機器、車両等に搭載され、様々なデータ処理や制御等に利用されてもよい。
【００２８】
本データ処理装置の概要は以上のとおりである。次に、本データ処理装置により実行される処理等について詳述する。なお、図１に示した構成（部分）については、以下の説明において図１の符号を利用する。
【００２９】
図２は、本データ処理装置における再構成に係る処理の概略図である。本データ処理装置は、データの処理に必要なデータ処理回路を再構成可能回路１０内に再構成し、再構成されたデータ処理回路により、そのデータに対してデータ処理を実行する。図２のタイミングチャートには、本データ処理装置における再構成に係る処理の概要が示されている。
【００３０】
図２に示すタイミングチャートでは、まず、データ処理が開始される前の初期設定として、制御プロセッサ７０がセルフレジスタＳＲの設定とパラメータＰの変更と割り込みレジスタＩＲの設定を行う。
【００３１】
セルフレジスタＳＲは、セルフローダ４０が備えるレジスタであり、セルフレジスタＳＲには、セルフローダ４０がＤＲＡＭ３０から再構成メモリ２０へ再構成データをロードするのに必要な情報（ロード情報）が設定される。セルフローダ４０は、例えば８つのセルフレジスタＳＲ♯０〜７を備えており、各セルフレジスタＳＲごとにそのセルフレジスタＳＲに対応した再構成データのロード情報が設定される。再構成データのロード情報には、例えば、その再構成データのアドレスやその再構成データのデータサイズやその再構成データをロードする順番等の情報が含まれる。図２に示す具体例においては、８つのセルフレジスタＳＲ♯０〜７のうち、初期設定において、３つのセルフレジスタＳＲ♯０〜２の各々にロード情報が設定される。
【００３２】
なお、セルフレジスタＳＲの個数は８つ以外の複数個であってもよい。また、初期設定されるセルフレジスタＳＲの個数も３つに限定されない。但し、例えば再構成メモリ２０にロードが可能な再構成データの個数と同じ個数のセルフレジスタＳＲを初期設定することが望ましい。
【００３３】
パラメータＰは、再構成データによって実現されるデータ処理回路が処理対象とするデータに関する情報であり、例えば、処理対象となるデータのアドレスやそのデータのサイズなどがパラメータＰとして設定される。なお、パラメータＰは、セルフレジスタＳＲに設定される各再構成データごとに設定される。例えば、初期設定において、セルフレジスタＳＲ♯０〜２の各々に、再構成データ♯０〜２のロード情報が設定されると、再構成データ♯０〜２の各々に対応したパラメータＰ♯０〜２が設定される。
【００３４】
割り込みレジスタＩＲは、割り込み制御部６０が備えるレジスタであり、割り込みレジスタＩＲには、再構成可能回路１０から出力される割り込み信号に対するマスク設定（割り込み禁止）とマスク解除（割り込み許可）が登録される。なお、割り込みレジスタＩＲにも、セルフレジスタＳＲに設定される各再構成データごとにマスクの登録が行われる。例えば、初期設定において、セルフレジスタＳＲ♯０〜２の各々に、再構成データ♯０〜２のロード情報が設定されると、再構成データ♯０〜２の各々に対応した割り込みレジスタＩＲ♯０〜２に対して、マスク設定（割り込み禁止）が設定される。これにより、再構成データ♯０〜２の各々に対応した回路構成から次の回路構成への再構成が一時的に禁止される。
【００３５】
制御プロセッサ７０は、初期設定において、セルフレジスタＳＲの設定とパラメータＰの変更と割り込みレジスタＩＲの設定を完了すると、再構成可能回路１０によるデータ処理の実行開始を指示する。
【００３６】
データ処理の実行開始が指示されると、セルフローダ４０は、セルフレジスタＳＲに設定されたロード情報に従って、ＤＲＡＭ３０から再構成メモリ２０へ再構成データをロードする。図２に示す具体例においては、初期設定において、３つのセルフレジスタＳＲ♯０〜２にロード情報が設定されているため、セルフローダ４０は、セルフレジスタＳＲ♯０〜２の順に各ロード情報に従ってロード♯０〜２を実行し、これにより、再構成メモリ２０内に３つの再構成データ♯０〜２が次々にロードされる。なお、再構成メモリ２０にロードが可能な再構成データの個数だけセルフレジスタＳＲにロード情報が初期設定されていれば、セルフローダ４０は、初期設定された全ての再構成データを次々に再構成メモリ２０にロードしてもよい。
【００３７】
セルフローダ４０によりロード♯０が実行され、再構成メモリ２０内に再構成データ♯０がロードされると、再構成可能回路１０の回路構成部が再構成データ♯０のデータ処理回路♯０に再構成され、データ処理回路♯０によりデータ処理♯０が実行される。
【００３８】
再構成可能回路１０は、データ処理回路♯０によるデータ処理♯０を終了すると、再構成を要求する割り込み信号を出力する。再構成可能回路１０から出力される割り込み信号は、割り込み制御部６０を介して、自律再構成コントローラ５０へ送られる。但し、初期設定において、再構成データ♯０に対応した割り込みレジスタＩＲ♯０について、マスク設定（割り込み禁止）が成されているため、再構成データ♯０に対応したデータ処理♯０の終了に伴う割り込み信号がマスク処理され、自律再構成コントローラ５０へ割り込み信号が送られず、再構成が一時的に禁止される。
【００３９】
制御プロセッサ７０は、データ処理♯０の終了に伴う割り込みが禁止された期間、つまり、図２に示す♯０割込禁止の期間において、セルフレジスタＳＲの設定とパラメータＰの変更と割り込みレジスタＩＲの設定を行う。
【００４０】
つまり、制御プロセッサ７０は、初期設定において既に設定した再構成データ♯０〜２に続く再構成データ♯３について、再構成データ♯３のロード情報をセルフレジスタＳＲ♯３に設定し、再構成データ♯３のパラメータＰ♯３を設定し、再構成データ♯３のマスク設定（割り込み禁止）を割り込みレジスタＩＲ♯３に登録する。
【００４１】
そして、再構成データ♯３に関するセルフレジスタＳＲの設定とパラメータＰの変更と割り込みレジスタＩＲの設定が終了すると、制御プロセッサ７０は、再構成データ♯０に関する割り込みレジスタＩＲ♯０のマスクを解除する。これにより、再構成データ♯０に対応したデータ処理♯０の終了に伴う割り込み信号のマスクが解除される。
【００４２】
データ処理♯０の終了に伴う割り込み信号のマスクが解除された後に、再構成可能回路１０から割り込み信号が出力されると、つまり、図２に示す♯０割込許可の期間において再構成可能回路１０から再構成を要求する割り込み信号が出力されると、その割り込み信号は、割り込み制御部６０を介して自律再構成コントローラ５０へ送られる。
【００４３】
割り込み信号が送られると、自律再構成コントローラ５０は、再構成可能回路１０からの要求に応じて、再構成メモリ２０にロードされた再構成データ♯１で、再構成可能回路１０の回路構成部を再構成する。これにより、再構成可能回路１０の回路構成部が再構成データ♯１に対応したデータ処理回路♯１に再構成され、データ処理回路♯１によりデータ処理♯１が実行される。
【００４４】
また、再構成可能回路１０の回路構成部がデータ処理回路♯１に再構成されると、セルフローダ４０は、再構成メモリ２０の再構成データ♯０が格納されていた領域、つまりデータ処理♯０の終了に伴って設定可能となった領域に、ＤＲＡＭ３０から再構成データ♯３をロードする。
【００４５】
再構成可能回路１０の回路構成部がデータ処理回路♯１に再構成され、データ処理回路♯１によりデータ処理♯１が実行されるものの、初期設定において、再構成データ♯１に対応した割り込みレジスタＩＲ♯１について、マスク設定（割り込み禁止）されているため、再構成データ♯１に対応したデータ処理♯１の終了に伴う割り込み信号がマスク処理され、自律再構成コントローラ５０へ割り込み信号が送られず、再構成が一時的に禁止される。
【００４６】
制御プロセッサ７０は、データ処理♯１の終了に伴う割り込みが禁止された期間、つまり、図２に示す♯１割込禁止の期間において、セルフレジスタＳＲの設定とパラメータＰの変更と割り込みレジスタＩＲの設定を行う。
【００４７】
つまり、制御プロセッサ７０は、既に設定した再構成データ♯３に続く再構成データ♯４について、再構成データ♯４のロード情報をセルフレジスタＳＲ♯４に設定し、再構成データ♯４のパラメータＰ♯４を設定し、再構成データ♯４のマスク設定（割り込み禁止）を割り込みレジスタＩＲ♯４に登録する。
【００４８】
そして、再構成データ♯４に関するセルフレジスタＳＲの設定とパラメータＰの変更と割り込みレジスタＩＲの設定が終了すると、制御プロセッサ７０は、再構成データ♯１に関する割り込みレジスタＩＲ♯１のマスクを解除する。これにより、再構成データ♯１に対応したデータ処理♯１の終了に伴う割り込み信号のマスクが解除される。
【００４９】
データ処理♯１の終了に伴う割り込み信号のマスクが解除された後に、再構成可能回路１０から割り込み信号が出力されると、つまり、図２に示す♯１割込許可の期間において再構成可能回路１０から再構成を要求する割り込み信号が出力されると、その割り込み信号は、割り込み制御部６０を介して自律再構成コントローラ５０へ送られる。割り込み信号が送られると、自律再構成コントローラ５０は、再構成可能回路１０からの要求に応じて、再構成可能回路１０の回路構成部を再構成する。
【００５０】
図示省略するものの、データ処理♯１の後には、再構成データ♯２，３，４，・・・に対応したデータ処理♯２，３，４，・・・が次々に実行される。また、各データ処理の終了に伴う割り込み信号がマスク設定され、再構成を禁止しつつ、各データ処理の実行中に制御プロセッサ７０がセルフレジスタＳＲの設定とパラメータＰの変更と割り込みレジスタＩＲの設定を行う。
【００５１】
図３は、本データ処理装置による再構成（動的自律再構成）のタイミングチャートである。まず、データ処理が開始される前の初期設定として、制御プロセッサ７０が、セルフレジスタＳＲ♯０〜２の設定と、パラメータＰ♯０〜２の変更と、割り込みレジスタＩＲ♯０〜２の設定を行う。なお、割り込みレジスタＩＲ♯０〜２の設定においては、各レジスタ（ＩＲ♯０〜２）ごとに、割り込みマスク♯０〜２の設定が行われる。初期設定を終えると、制御プロセッサ７０は、データ処理の開始を指示する。
【００５２】
データ処理の開始が指示されると、セルフローダ４０は、セルフレジスタＳＲ♯０〜２の各々に設定されたロード情報に基づいて、ＤＲＡＭ３０から再構成メモリ２０へ、再構成データ♯０〜２を順にロードする。
【００５３】
再構成メモリ２０内に再構成データ♯０がロードされると、再構成可能回路１０の回路構成部が再構成データ♯０に対応したデータ処理回路♯０に再構成され、データ処理回路♯０によりデータ処理♯０が実行される。データ処理♯０が開始されると、再構成可能回路１０は、その開始を示す処理開始信号を出力する。処理開始信号は、割り込み制御部６０を介して制御プロセッサ７０へ送られる。
【００５４】
処理開始信号を受信した制御プロセッサ７０は、初期設定において既に設定した再構成データ♯０〜２に続く再構成データ♯３に関する情報を設定する。つまり、制御プロセッサ７０は、再構成データ♯３のロード情報をセルフレジスタＳＲ♯３に設定し、再構成データ♯３のパラメータＰ♯３を設定し、割り込みレジスタＩＲ♯３に割り込みマスク♯３を設定する。そして、再構成データ♯３に関する情報の設定を終了すると、制御プロセッサ７０は、割り込みレジスタＩＲ♯０の割り込みマスク♯０を解除する。
【００５５】
再構成可能回路１０は、データ処理♯０を終了すると、その終了を示す割り込み信号を割り込み制御部６０へ出力する。割り込み制御部６０は、データ処理♯０に対応した割り込みマスク♯０が設定されている期間において、データ処理♯０の割り込み信号が自律再構成コントローラ５０へ出力されないように、その割り込み信号をマスク処理する。データ処理♯０に対応した割り込みマスク♯０が解除されていれば、割り込み制御部６０は、データ処理♯０の割り込み信号を自律再構成コントローラ５０へ出力する。
【００５６】
図３に示す具体例においては、再構成可能回路１０からデータ処理♯０の割り込み信号１が出力された時点で割り込みマスク♯０が解除されているため、割り込み信号１がマスク処理されずに割り込み制御部６０から自律再構成コントローラ５０へ送られる。
【００５７】
データ処理♯０の割り込み信号１を受信した自律再構成コントローラ５０は、再構成メモリ２０にロードされている再構成データ♯１で、再構成可能回路１０の回路構成部を再構成データ♯１に対応したデータ処理回路♯１に再構成する。そして、再構成されたデータ処理回路♯１によりデータ処理♯１が実行される。データ処理♯１が開始されると、再構成可能回路１０は、その開始を示す処理開始信号を出力する。処理開始信号は、割り込み制御部６０を介して制御プロセッサ７０へ送られる。
【００５８】
処理開始信号を受信した制御プロセッサ７０は、既に設定した再構成データ♯３に続く再構成データ♯４に関する情報を設定する。つまり、制御プロセッサ７０は、再構成データ♯４のロード情報をセルフレジスタＳＲ♯４に設定し、再構成データ♯４のパラメータＰ♯４を設定し、割り込みレジスタＩＲ♯４に割り込みマスク♯４を設定する。そして、再構成データ♯４に関する情報の設定を終了すると、制御プロセッサ７０は、割り込みレジスタＩＲ♯１の割り込みマスク♯１を解除する。
【００５９】
再構成可能回路１０は、データ処理♯１を終了すると、その終了を示す割り込み信号を割り込み制御部６０へ出力する。割り込み制御部６０は、データ処理♯１に対応した割り込みマスク♯１が設定されている期間において、データ処理♯１の割り込み信号が自律再構成コントローラ５０へ出力されないように、その割り込み信号をマスク処理する。データ処理♯１に対応した割り込みマスク♯１が解除されていれば、割り込み制御部６０は、データ処理♯１の割り込み信号を自律再構成コントローラ５０へ出力する。
【００６０】
図３に示す具体例においては、再構成可能回路１０からデータ処理♯１に関する１回目の割り込み信号１と２回目の割り込み信号２が出力された時点で、割り込みマスク♯１が設定されているため、割り込み信号１と割り込み信号２がマスク処理される。データ処理♯１に関する３回目の割り込み信号３が出力された時点においては、割り込みマスク♯１が解除されているため、割り込み信号３がマスク処理されずに割り込み制御部６０から自律再構成コントローラ５０へ送られる。
【００６１】
こうして、図３において図示省略するものの、再構成データ♯２以降のデータに基づく再構成とデータ処理が次々に実行される。
【００６２】
図３に示す処理によれば、例えば、制御プロセッサ７０がセルフローダ４０のセルフレジスタＳＲの設定やパラメータＰの変更を実行している期間において、再構成可能回路１０からの割り込み信号がマスク処理されているため、セルフレジスタＳＲの設定中やパラメータＰの変更中における再構成が回避される。そのため、例えば、複数のデータ処理を実行するにあたって、各データ処理の実行中に後のデータ処理に関するセルフレジスタＳＲの設定やパラメータＰの変更を行うことができる。これにより、例えば、複数のデータ処理を実行する前の初期設定において、全てのデータ処理に関するセルフレジスタＳＲの設定やパラメータＰの変更を行う場合に比べて、データ処理の順序の変更やパラメータＰの変更等への対応が柔軟になる。
【００６３】
また、図３に示す処理によれば、例えば、セルフレジスタＳＲに個数の制限（例えば８個）があったしても、ロード情報が利用された後に再び設定可能となったセルフレジスタＳＲを巡回的に利用できるため、セルフレジスタＳＲの個数に制限されずに、複数回に亘って（理論上は無制限に）再構成を継続することができる。
【００６４】
図４は、本データ処理装置による再構成のスケジューリングを有する処理を示すタイミングチャートである。図３を利用して説明したように、データ処理が開始される前の初期設定として、制御プロセッサ７０が、セルフレジスタＳＲ♯０〜２の設定と、パラメータＰ♯０〜２の変更と、割り込みレジスタＩＲ♯０〜２の設定を行う。初期設定を終えると、制御プロセッサ７０は、データ処理の開始を指示する。図４のタイミングチャートは、制御プロセッサ７０がデータ処理の開始を指示した後の処理を示している。
【００６５】
データ処理の開始が指示されると、セルフローダ４０は、セルフレジスタＳＲ♯０〜２の各々に設定されたロード情報に基づいて、ＤＲＡＭ３０から再構成メモリ２０へ、再構成データ♯０〜２を順にロードする。
【００６６】
再構成メモリ２０内に再構成データ♯０がロードされると、再構成可能回路１０の回路構成部が再構成データ♯０に対応したデータ処理回路♯０に再構成され、データ処理回路♯０によりデータ処理♯０が実行される。データ処理♯０が開始されると、再構成可能回路１０は、その開始を示す処理開始信号を出力する。処理開始信号は、割り込み制御部６０を介して制御プロセッサ７０へ送られる。
【００６７】
データ処理♯０に関する処理開始信号を受信した制御プロセッサ７０は、データ処理♯０の処理時間を予測し、その処理時間内に再構成データ♯３に関する情報を設定完了できるか否かを判断する。制御プロセッサ７０は、設定を完了できると判断すると、再構成データ♯３のロード情報をセルフレジスタＳＲ♯３に設定し、再構成データ♯３のパラメータＰ♯３を設定し、割り込みレジスタＩＲ♯３に割り込みマスク♯３を設定する。
【００６８】
再構成データ♯３に関する情報の設定を終了すると、制御プロセッサ７０は、データ処理♯０の処理時間内に、再構成データ♯４に関する情報を設定完了できるか否かを判断する。制御プロセッサ７０は、設定を完了できると判断すると、再構成データ♯４のロード情報をセルフレジスタＳＲ♯４に設定し、再構成データ♯４のパラメータＰ♯４を設定し、割り込みレジスタＩＲ♯４に割り込みマスク♯４を設定する。
【００６９】
再構成データ♯４に関する情報の設定を終了すると、制御プロセッサ７０は、データ処理♯０の処理時間内に、再構成データ♯５に関する情報を設定完了できるか否かを判断する。制御プロセッサ７０は、設定を完了できないと判断すると、再構成データ♯５に関する情報を設定せずに、設定処理を一旦終了して、割り込みレジスタＩＲ♯０の割り込みマスク♯０を解除する。
【００７０】
このように、図４に示す処理においては、データ処理の処理時間内に再構成データに関する情報を設定完了できると判断した場合に、その再構成データに関する情報を設定（セルフレジスタＳＲの設定等）するため、データ処理の処理時間内にその設定を完了することができる。また、データ処理の処理時間内に設定できると判断した場合には、複数の再構成データに関する情報（例えばセルフレジスタＳＲ♯３，♯４等）を設定することができる。
【００７１】
再構成可能回路１０は、データ処理♯０を終了すると、その終了を示す割り込み信号を割り込み制御部６０へ出力する。割り込み制御部６０は、データ処理♯０に対応した割り込みマスク♯０が設定されている期間において、データ処理♯０の割り込み信号が自律再構成コントローラ５０へ出力されないように、その割り込み信号をマスク処理する。データ処理♯０に対応した割り込みマスク♯０が解除されていれば、割り込み制御部６０は、データ処理♯０の割り込み信号を自律再構成コントローラ５０へ出力する。
【００７２】
図４に示す具体例においては、再構成可能回路１０からデータ処理♯０の割り込み信号が出力された時点で割り込みマスク♯０が解除されているため、割り込み信号がマスク処理されずに割り込み制御部６０から自律再構成コントローラ５０へ送られる。
【００７３】
データ処理♯０の割り込み信号を受信した自律再構成コントローラ５０は、再構成メモリ２０にロードされている再構成データ♯１で、再構成可能回路１０の回路構成部を再構成データ♯１に対応したデータ処理回路♯１に再構成する。そして、再構成されたデータ処理回路♯１によりデータ処理♯１が実行される。データ処理♯１が開始されると、再構成可能回路１０は、その開始を示す処理開始信号を出力する。処理開始信号は、割り込み制御部６０を介して制御プロセッサ７０へ送られる。
【００７４】
データ処理♯１に関する処理開始信号を受信した制御プロセッサ７０は、データ処理♯１の処理時間を予測し、その処理時間内に再構成データ♯５に関する情報を設定完了できるか否かを判断する。制御プロセッサ７０は、設定完了できないと判断すると、再構成データ♯５に関する情報を設定せずに、設定処理を一旦終了して、割り込みレジスタＩＲ♯１の割り込みマスク♯１を解除する。
【００７５】
データ処理♯１を終了すると、再構成可能回路１０は、その終了を示す割り込み信号を割り込み制御部６０へ出力する。図４に示す具体例においては、再構成可能回路１０からデータ処理♯１の割り込み信号が出力された時点で割り込みマスク♯１が解除されているため、割り込み信号がマスク処理されずに割り込み制御部６０から自律再構成コントローラ５０へ送られ、直ちに次の再構成が実行される。
【００７６】
このように、図４に示す処理においては、データ処理の処理時間内に再構成データに関するロード情報等の設定を完了できない判断した場合に、その再構成データに関する設定せずに設定処理を一旦終了し、割り込みマスクが解除されて再構成が許可される。そのため、データ処理の処理時間内にロード情報等の設定を完了できないにもかかわらずロード情報等を設定する場合に比べて、再構成の禁止による再構成可能回路１０の待機時間が短縮する。
【００７７】
図５は、制御プロセッサ７０が実行する制御処理（制御プログラムによって実現される処理）を示すフローチャートである。制御プロセッサ７０は、例えば演算機能等を実現するハードウェアとその動作を規定するソフトウェア（制御プログラム）によって構成され、ハードウェアとソフトウェアとの協働により、図５のフローチャートに示す制御処理を実行する。以下、図５のフローチャートの各ステップにおける処理について説明する。
【００７８】
制御プロセッサ７０は、初期設定として、セルフレジスタＳＲ♯０〜２の設定と、パラメータＰ♯０〜２の変更と、割り込みマスク♯０〜２の設定を行う（Ｓ５０１）。初期設定を終えると、制御プロセッサ７０は、データ処理の開始を指示する（Ｓ５０２）。
【００７９】
データ処理の開始が指示されると、セルフローダ４０が再構成データをロードし、再構成可能回路１０の回路構成部が再構成されてデータ処理が開始される。データ処理が開始されると、再構成可能回路１０はその開始を示す処理開始信号を出力する（図３，図４参照）。
【００８０】
制御プロセッサ７０は、処理開始信号が出力されたことを確認すると（Ｓ５０３）、再構成データに関する設定処理を実行する（Ｓ５０４）。
【００８１】
図６は、制御プロセッサ７０が実行する設定処理（図５のＳ５０４における処理）を示すフローチャートである。
【００８２】
設定処理において、制御プロセッサ７０は、まず、セルフレジスタＳＲの設定状態を確認する（Ｓ６０１）。つまり、制御プロセッサ７０は、設定を完了したセルフレジスタＳＲの番号（♯Ｘ）と、現在実行中のセルフレジスタＳＲの番号（♯Ｙ）を確認し、さらに変数ｉを１に初期化する。
【００８３】
図７は、セルフレジスタＳＲの設定状態の具体例を示す図である。図７に示す具体例において、セルフレジスタＳＲの個数は８（ＳＲ♯０〜７）であり、再構成メモリ２０にロードが可能な再構成データの個数は３である。
【００８４】
図７に示す具体例では、セルフレジスタＳＲ♯３が現在実行中である。つまり、セルフレジスタＳＲ♯３に設定されたロード情報に対応した再構成データが再構成メモリ２０にロードされており、その再構成データによって再構成可能回路１０が再構成されている。
【００８５】
また、セルフレジスタＳＲ♯４，５は設定完了している。つまり、セルフレジスタＳＲ♯４，５の各々にはロード情報が既に設定されており、そのロード情報に対応した再構成データが再構成メモリ２０にロード中（ロード途中またはロード完了）である。
【００８６】
そして、その他のセルフレジスタＳＲ♯０〜２，６，７は設定可能となっている。つまり、セルフレジスタＳＲ♯０〜２，６，７の各々には、ロード情報が設定されていない又は既に利用されたロード情報が設定されており、新たなロード情報を設定することができる状態となっている。
【００８７】
図７に示す設定状態であれば、設定を完了したセルフレジスタＳＲの番号（♯Ｘ）は♯５（Ｘ＝５）であり、現在実行中のセルフレジスタＳＲの番号（♯Ｙ）は♯３（Ｙ＝３）となる。
【００８８】
ちなみに、セルフレジスタＳＲ♯３に対応した再構成データに係るデータ処理が終了すると、次に、セルフレジスタＳＲ♯４に対応した再構成データにより再構成可能回路１０が再構成され、セルフレジスタＳＲ♯４が現在実行中となり、セルフレジスタＳＲ♯３が設定可能となる。さらに、セルフレジスタＳＲ♯４に対応した再構成データに係るデータ処理が終了すると、次に、セルフレジスタＳＲ♯５に対応した再構成データにより再構成可能回路１０が再構成され、セルフレジスタＳＲ♯５が現在実行中となり、セルフレジスタＳＲ♯４が設定可能となる。また、設定可能なセルフレジスタＳＲには、次々に新たなロード情報が設定される。したがって、セルフレジスタＳＲに個数の制限（例えば８個）があるものの、ロード情報が利用された後に再び設定可能となったセルフレジスタＳＲを巡回的に利用できるため、セルフレジスタＳＲの個数に制限されずに、複数回に亘って（理論上は無制限に）再構成を継続することができる。
【００８９】
図６に戻り、セルフレジスタＳＲの設定状態を確認すると、制御プロセッサ７０は、設定マージンの有無を確認する（Ｓ６０２）。設定マージンは、後に予測処理時間Ａを算出する際に利用される安全係数Ｃを決定する数値であり、例えば、設定完了しているセルフレジスタＳＲの個数が設定マージンとされる。例えば、図７に示す設定状態であれば、設定完了しているセルフレジスタＳＲの個数が２であり、設定マージンが２となる。
【００９０】
図６のＳ６０２において設定マージンが確認され、設定マージンが無い（設定マージンが０）場合には、制御プロセッサ７０は、セルフレジスタＳＲに対して、再構成データ♯Ｘ＋１に関する設定処理を実行する（Ｓ６０３）。設定マージンが無ければ、設定完了しているセルフレジスタＳＲ♯Ｘが無いため、例えば、現在実行中のセルフレジスタＳＲの番号♯Ｙを♯Ｘとし、次のセルフレジスタＳＲ♯Ｘ＋１（Ｘ＝Ｙ）に再構成データ♯Ｘ＋１に関する設定処理を実行する。再構成データ♯Ｘ＋１に関する設定処理とは、再構成データ♯Ｘ＋１のロード情報をセルフレジスタＳＲ♯Ｘ＋１に設定し、再構成データ♯Ｘ＋１のパラメータＰ♯Ｘ＋１を設定し、割り込みレジスタＩＲ♯Ｘ＋１に割り込みマスク♯Ｘ＋１を設定することである。
【００９１】
再構成データ♯Ｘ＋１に関する設定処理を実行すると、制御プロセッサ７０は、再構成可能回路１０から割り込み信号が出力されているか否かを確認する（Ｓ６０４）。割り込み信号が出力されていれば、つまり、再構成可能回路１０が再構成を要求していれば、図６に示す設定処理が終了し、図５のＳ５０５に進んで、その割り込み信号に関するマスクが解除される。これにより、再構成可能回路１０の再構成が許可される。
【００９２】
図６のＳ６０４において、割り込み信号が出力されていなければ、制御プロセッサ７０は、再構成可能回路１０が現在実行しているデータ処理の処理時間を予測する（Ｓ６０５）。つまり、制御プロセッサ７０は、次式に基づいて、予測処理時間Ａを算出する。
【００９３】
[数１]
予測処理時間Ａ（clk）＝出力データ（byte）×回路性能（clk/byte）×安全係数Ｃ
【００９４】
出力データとは、現在実行しているデータ処理の対象となっているデータの大きさ（byte）であり、回路性能とは、データ処理を現在実行している回路が１バイト（byte）のデータを処理する時間（clk）である。
【００９５】
安全係数Ｃは、設定マージンに応じて、つまり、設定完了しているセルフレジスタＳＲの個数に応じて設定される係数であり、設定マージンが多いほど、安全係数Ｃを小さくして、予測処理時間Ａを短く見積もる。具体的には、例えば、設定マージンが４であれば安全係数Ｃを０．６とし、設定マージンが３であれば安全係数Ｃを０．７とし、設定マージンが２であれば安全係数Ｃを０．８とし、設定マージンが１であれば安全係数Ｃを０．９とし、設定マージンが０であれば安全係数Ｃを１．０とする。
【００９６】
安全係数Ｃを利用することにより、例えば、設定マージンが比較的大きく、設定完了しているセルフレジスタＳＲの個数が比較的多い場合に、安全係数Ｃが小さくなり予測処理時間Ａが比較的短く見積もられ、後に説明する再構成データ♯Ｘ＋ｉに関する設定処理（Ｓ６１０）が無理に行われない。一方、例えば、設定マージンが比較的小さく、設定完了しているセルフレジスタＳＲの個数が比較的少ない場合には、安全係数Ｃが大きくなり予測処理時間Ａが比較的長く見積もられ、再構成データ♯Ｘ＋ｉに関する設定処理（Ｓ６１０）が、再構成可能回路１０によるデータ処理の処理時間内において、可能な限り多く行われる。
【００９７】
予測処理時間Ａを算出すると、制御プロセッサ７０は、算出した予測処理時間Ａに基づいて、残り処理時間を予測する（Ｓ６０６）。つまり、制御プロセッサ７０は、予測処理時間Ａから設定時間Ｂ（Ｘ＋１）を減算して、予測処理時間Ａを残り処理時間Ａに修正する。設定時間（Ｘ＋１）は、Ｓ６０３において再構成データ♯Ｘ＋１に関する設定に要した時間である。
【００９８】
続いて、制御プロセッサ７０は、変数ｉを１だけ増加させてから、さらに、残り処理時間を予測する（Ｓ６０８）。つまり、制御プロセッサ７０は、Ｓ６０６で得られた残り処理時間Ａから設定時間Ｂ（Ｘ＋ｉ）を減算して、つまり設定時間Ｂ（Ｘ＋２）を減算して残り処理時間Ａを修正する。設定時間Ｂ（Ｘ＋ｉ）は、次に設定を予定している再構成データ♯Ｘ＋ｉに関する設定に要する時間である。
【００９９】
そして、制御プロセッサ７０は、Ｓ６０８で得られた残り処理時間Ａに基づいて、設定処理を続行するか否かを判断する（Ｓ６０９）。制御プロセッサ７０は、Ｓ６０８で得られた残り処理時間Ａが負であれば（Ａ＜０）設定処理を続行しないと判断し、Ｓ６０８で得られた残り処理時間Ａが負でなければ（Ａ≧０）設定処理を続行すると判断する。
【０１００】
なお、制御プロセッサ７０は、Ｓ６０８で得られた残り処理時間Ａの値にかかわらず、再構成可能回路１０から割り込み信号が出力されている場合には設定処理を続行しないと判断し、設定可能なセルフレジスタＳＲが無くなった場合（つまりＸ＋ｉ＝Ｙの場合）にも設定処理を続行しないと判断する。設定処理を続行しない場合には、図６に示す設定処理が終了し、図５のＳ５０５に進む。
【０１０１】
一方、設定処理を続行する場合には、制御プロセッサ７０は、セルフレジスタＳＲに対して、再構成データ♯Ｘ＋ｉに関する設定処理を実行する（Ｓ６１０）。再構成データ♯Ｘ＋ｉに関する設定処理とは、再構成データ♯Ｘ＋ｉのロード情報をセルフレジスタＳＲ♯Ｘ＋ｉに設定し、再構成データ♯Ｘ＋ｉのパラメータＰ♯Ｘ＋ｉを設定し、割り込みレジスタＩＲ♯Ｘ＋ｉに割り込みマスク♯Ｘ＋ｉを設定することである。
【０１０２】
続いて、制御プロセッサ７０は、変数ｉを１だけ増加させてから、Ｓ６０８に戻り、さらに、残り処理時間を予測する。つまり、制御プロセッサ７０は、前回のＳ６０８で得られた残り処理時間Ａから設定時間Ｂ（Ｘ＋ｉ）を減算して残り処理時間Ａを修正する。設定時間Ｂ（Ｘ＋ｉ）は、次に設定を予定している再構成データ♯Ｘ＋ｉに関する設定に要する時間である。さらに、制御プロセッサ７０は、Ｓ６０９において、設定処理を続行するか否かを判断する。こうして、Ｓ６０９において、設定処理を続行しないと判断するまで、制御プロセッサ７０は、Ｓ６１０の再構成データ♯Ｘ＋ｉに関する設定を繰り返し実行し再構成可能回路１０が現在実行しているデータ処理の処理時間内に可能な限り、複数の再構成データに関する複数の設定を行う。
【０１０３】
Ｓ６０２に戻り、設定マージンが確認され、設定マージンがある（設定マージンが１以上）場合には、制御プロセッサ７０は、再構成可能回路１０が現在実行しているデータ処理の処理時間を予測する（Ｓ６０７）。つまり、制御プロセッサ７０は、Ｓ６０５でも利用した数１式に基づいて、予測処理時間Ａを算出する。
【０１０４】
さらに、制御プロセッサ７０は、算出した予測処理時間Ａに基づいて、残り処理時間を予測する（Ｓ６０８）。つまり、制御プロセッサ７０は、予測処理時間Ａから設定時間Ｂ（Ｘ＋ｉ）を減算して予測処理時間Ａを残り処理時間Ａに修正する。設定時間Ｂ（Ｘ＋ｉ）は、次に設定を予定している再構成データ♯Ｘ＋ｉに関する設定に要する時間である。
【０１０５】
そして、制御プロセッサ７０は、既に説明したＳ６０９以降の処理を実行する。つまりＳ６０９において、設定処理を続行しないと判断するまで、制御プロセッサ７０は、Ｓ６１０の再構成データ♯Ｘ＋ｉに関する設定を繰り返し実行し再構成可能回路１０が現在実行しているデータ処理の処理時間内に可能な限り、複数の再構成データに関する複数の設定を行う。
【０１０６】
図５に戻り、Ｓ５０４における設定処理（図６参照）が終了すると、制御プロセッサ７０は、再構成可能回路１０が現在実行しているデータ処理に関する割り込みマスクを解除する（Ｓ５０５）。これにより、再構成可能回路１０の再構成が許可され、再構成可能回路１０から割り込み信号が出力されると、自律再構成コントローラ５０により再構成可能回路１０の回路構成部が再構成され、次のデータ処理が実行可能な状態となる。
【０１０７】
そして、制御プロセッサ７０は、処理対象となるデータの最終データまでデータ処理が完了したか否かを確認し（Ｓ５０６）、完了していなければ、Ｓ５０３以降の処理を再び実行する。一方、処理対象となるデータの最終データまでデータ処理が完了していれば、図５に示す制御処理が終了する。
【０１０８】
図８は、データ処理の処理時間に関する比較結果を示す図である。図８には、本データ処理装置において動的自律再構成（図３参照）を行った場合の処理時間に関するシミュレーション結果のグラフ、スケジューリングを伴う動的自律再構成（図４〜６参照）を行った場合の処理時間に関するシミュレーション結果のグラフが図示されている。
【０１０９】
なお、比較例は、動的自律再構成を行わずに、制御プロセッサによる再構成制御を行った場合の処理時間に関する実測値のグラフである。制御プロセッサによる再構成制御とは、セルフローダ４０と自律再構成コントローラ５０を利用せずに、制御プロセッサ７０が、再構成データのロードと再構成可能回路１０の再構成を行う制御である。
【０１１０】
各グラフにおいて、「再構成可能回路」は、再構成可能回路１０の処理時間であり、「制御プロセッサ」は、制御プロセッサ７０の処理時間であり、「その他」は、再構成可能回路１０と制御プロセッサ７０による処理以外の処理時間である。各グラフにおいて「再構成可能回路」と「制御プロセッサ」と「その他」の加算が合計の処理時間となる。
【０１１１】
比較例、動的自律再構成、スケジューリングを伴う動的自律再構成の３つのグラフの全てにおいて、処理対象データとデータ処理は共通である。したがって、再構成可能回路１０の処理時間（実働時間）は、３つのグラフで同じ値となっている。
【０１１２】
これに対し、制御プロセッサ７０の処理時間については、３つのグラフにおいて顕著な相違が見られる。つまり、制御プロセッサによる再構成制御では、再構成可能回路１０の回路構成を変更する度に、制御プロセッサ７０が再構成の処理を行うため、制御プロセッサ７０の処理時間が比較的大きくなる。
【０１１３】
一方、動的自律再構成では、自律再構成コントローラ５０が再構成の処理を行うため、制御プロセッサによる再構成制御に比べて、制御プロセッサ７０の処理時間が大幅に（図８の例ではほぼ半分に）減少する。
【０１１４】
動的自律再構成においては、セルフレジスタＳＲの設定と、パラメータＰの変更と、割り込みレジスタＩＲの設定を行う必要があるものの、セルフレジスタＳＲの設定と割り込みレジスタＩＲの設定を合わせても１μｓ（マイクロ秒）以下と僅かであり、パラメータＰの変更も１０μｓ程度であり、合計の処理時間（例えば数十秒）との比較においては極めて小さいものとなる。特に、スケジューリングを伴う動的自律再構成であれば、再構成可能回路１０の処理時間内に、セルフレジスタ等の設定（セルフレジスタＳＲの設定と、パラメータＰの変更と、割り込みレジスタＩＲの設定）を行うため、セルフレジスタ等の設定に伴う処理時間の増大が抑制され、合計の処理時間がさらに短縮される。
【０１１５】
以上、本発明の好適な実施形態を説明したが、上述した実施形態は、あらゆる点で単なる例示にすぎず、本発明の範囲を限定するものではない。本発明は、その本質を逸脱しない範囲で各種の変形形態を包含する。
【符号の説明】
【０１１６】
１０  再構成可能回路、２０  再構成メモリ、３０  ＤＲＡＭ、４０  セルフローダ、５０  自律再構成コントローラ、６０  割り込み制御部、７０  制御プロセッサ。
【図１】
0005971214.tif 000002
【図２】
0005971214.tif 000003
【図３】
0005971214.tif 000004
【図４】
0005971214.tif 000005
【図５】
0005971214.tif 000006
【図６】
0005971214.tif 000007
【図７】
0005971214.tif 000008
【図８】
0005971214.tif 000009