(57)【要約】【課題】動的部分再構成が可能な回路により画像処理を行う画像処理装置において、回路を再構成した後に画像処理をより早く開始できるようにする技術を提供する。【解決手段】画像処理装置は、一部の回路構成を動的に再構成可能な動的再構成部１３１の一部に設けられる、画像処理を行う画像処理部１３２Ａ（１３２Ｂ，１３２Ｃ）の再構成を制御する。画像処理装置は、画像処理部１３２Ａ（１３２Ｂ，１３２Ｃ）を、画像処理のためのパラメータを保持するパラメータ保持部３２０Ａ（３２０Ｂ，３２０Ｃ）と、パラメータ保持部によって保持されるパラメータに従って画像データに対して画像処理を行う画像データ処理部３１０Ａ（３１０Ｂ，３１０Ｃ）とに分割し、パラメータ保持部を再構成した後に画像データ処理部を再構成するよう制御するとともに、パラメータ保持部の再構成が完了すると、画像処理のためのパラメータをパラメータ保持部に対して設定する。【選択図】図３
2015169945.tif 000002
【特許請求の範囲】
【請求項１】
一部の回路構成を動的に再構成可能な再構成可能回路と、
前記再構成可能回路の一部に設けられる、画像処理を行う処理回路の再構成を制御する制御手段であって、再構成すべき前記処理回路を、前記画像処理のために設定されるパラメータを保持するパラメータ保持部と、前記パラメータ保持部によって保持されるパラメータに従って画像データに対して前記画像処理を行うデータ処理部とに分割し、前記パラメータ保持部を再構成した後に前記データ処理部を再構成するよう制御する、前記制御手段と、
前記パラメータ保持部の再構成が完了すると、前記画像処理のためのパラメータを前記パラメータ保持部に対して設定する設定手段と
を備えることを特徴とする画像処理装置。
【請求項２】
前記設定手段は、前記パラメータ保持部の再構成が完了した後に、前記データ処理部の再構成と並行して、前記画像処理のためのパラメータを前記パラメータ保持部に対して設定することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記パラメータ保持部を再構成するための第１の回路構成情報と、前記データ処理部を再構成するための第２の回路構成情報とが個別に格納された記憶手段を更に備え、
前記制御手段は、前記記憶手段に格納された前記第１の回路構成情報と前記第２の回路構成情報とをそれぞれ用いて前記パラメータ保持部と前記データ処理部とを再構成するよう制御する
ことを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
前記記憶手段には、前記画像処理装置が実行可能な複数の画像処理のそれぞれに対応して、前記第１の回路構成情報と前記第２の回路構成情報とが格納されており、
前記制御手段は、前記記憶手段に格納された、前記処理回路が実行すべき画像処理に対応する前記第１の回路構成情報と前記第２の回路構成情報とをそれぞれ用いて前記パラメータ保持部と前記データ処理部とを再構成するよう制御する
ことを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記制御手段は、前記再構成可能回路に対する、前記画像処理装置におけるジョブの実行に必要な画像処理をそれぞれ行う複数の処理回路の再構成を制御する際に、前記複数の処理回路に対応する複数のパラメータ保持部を再構成した後に、前記複数の処理回路に対応する複数のデータ処理部を再構成する
ことを特徴とする請求項１から４のいずれか１項に記載の画像処理装置。
【請求項６】
前記設定手段は、前記複数のパラメータ保持部の再構成が完了した後に、前記複数のデータ処理部の再構成と並行して、各データ処理部における画像処理のためのパラメータを、各データ処理部に対応するパラメータ保持部に対して順に設定する
ことを特徴とする請求項５に記載の画像処理装置。
【請求項７】
前記制御手段による制御に従って前記再構成可能回路を再構成する再構成手段を更に備え、
前記再構成手段は、前記再構成可能回路における前記パラメータ保持部の再構成が完了すると、前記パラメータ保持部の再構成が完了したことを示す通知を前記設定手段に対して行い、
前記設定手段は、前記再構成手段からの前記通知に応じて、前記パラメータ保持部に対するパラメータの設定を開始する
ことを特徴とする請求項１から６のいずれか１項に記載の画像処理装置。
【請求項８】
前記設定手段は、前記再構成可能回路に対する、前記画像処理装置におけるジョブの実行に必要な画像処理をそれぞれ行う複数の処理回路の再構成が前記再構成手段によって行われる場合、前記複数の処理回路に対応する複数のパラメータ保持部の全てについて、前記再構成手段から前記通知を受けたことに応じて、前記複数のパラメータ保持部に対するパラメータの設定を開始する
ことを特徴とする請求項７に記載の画像処理装置。
【請求項９】
一部の回路構成を動的に再構成可能な再構成可能回路を備える画像処理装置の制御方法であって、
前記再構成可能回路の一部に設けられる、画像処理を行う処理回路の再構成を制御する制御工程であって、再構成すべき前記処理回路を、前記画像処理のために設定されるパラメータを保持するパラメータ保持部と、前記パラメータ保持部によって保持されるパラメータに従って画像データに対して前記画像処理を行うデータ処理部とに分割し、前記パラメータ保持部を再構成した後に前記データ処理部を再構成するよう制御する、前記制御工程と、
前記パラメータ保持部の再構成が完了すると、前記画像処理のためのパラメータを前記パラメータ保持部に対して設定する設定工程と
を含むことを特徴とする画像処理装置の制御方法。
【請求項１０】
請求項１から８のいずれか１項に記載の画像処理装置としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置及びその制御方法、並びにプログラムに関するものである。
【背景技術】
【０００２】
論理回路の構成を変更可能なＰＬＤ（Programmable Logic Device）やＦＰＧＡ（Field Programmable Gate Array）等の再構成可能回路が良く知られている。一般的に、ＰＬＤやＦＰＧＡの論理回路の変更は、起動時に、ＲＯＭ等の不揮発性メモリに格納された回路構成情報を、ＰＬＤやＦＰＧＡ内部の揮発性メモリであるコンフィギュレーションメモリへ書き込むことで実現される。また、コンフィギュレーションメモリの情報は電源遮断時にクリアされるため、電源投入時に、再度、ＲＯＭに記憶している回路構成情報をコンフィギュレーションメモリに書き込む必要がある。このように、電源が供給されている状態で、一度だけＰＬＤやＦＰＧＡの論理回路を構成する方法を静的再構成という。これに対して、論理回路が動作中に、その論理回路の構成を動的に変更できるＦＰＧＡ等が開発されており、このように動的に論理回路を変更する方法を動的再構成という。
【０００３】
またＦＰＧＡには、ＦＰＧＡのチップ全体の回路構成でなく、特定の領域の回路構成だけを書き換えることが可能なものがあり、このような書き換えを部分再構成という。特に、動作中の回路の動作を停止させずに、それ以外の他の回路構成を変更することを動的部分再構成という。動的部分再構成では、動的再構成時に、コンフィギュレーションメモリ全体を書き換えるのではなく、コンフィギュレーションメモリの一部の領域のみを書き換えることで、ＦＰＧＡの論理回路を部分的に再構成することができる。このような動的部分再構成を用いることで、例えばＦＰＧＡのある領域に、時分割で複数の論理回路を切り替えて実装できる。この結果、少ないハードウェアリソースで、用途に合わせた様々な機能を、ハードウェアによる高速の演算性能を保ったままで柔軟に実現できる。
【０００４】
このような動的に回路構成を変更（書き換え）可能なＦＰＧＡでは、一般に、回路構成の書き換えに要する時間は長く、その時間はコンフィギュレーションメモリに書き込まれる回路構成情報のサイズに比例する。そのため、従来から、回路構成の書き換えに要する時間を低減するための技術が提案されている。例えば特許文献１には、再構成可能回路上で、データ処理を順に実行するパイプラインを構成する複数の部分回路を再構成する際に、パイプラインの先頭の部分回路から順に再構成し、再構成された部分回路から順に起動していく技術が提案されている。これにより、再構成可能回路上で同時に再構成可能な回路をまとめて再構成して起動する方式よりも、データ処理の高速化を実現している。
【０００５】
また、ＭＦＰ（Multi Function Printer）等の画像処理装置は、実行可能な複数の処理（コピージョブ、プリントジョブ、ＳＥＮＤジョブ等）のうちでユーザからの要求に応じて選択した画像処理を実行する。各画像処理は、ハードウェアまたはソフトウェアにより実現される。一般に、各画像処理の実現に必要となる、ハードウェアの論理回路による動作及び処理内容は、当該論理回路に対して与えられるパラメータによって設定される。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１１−１８６９８１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
パイプライン構成で複数の部分回路を動的に再構成可能な再構成可能回路を備える画像処理装置において、当該複数の部分回路をそれぞれ個別の画像処理を実行する回路（画像処理部）として再構成する場合、以下のような課題がある。このような画像処理装置では、複数の画像処理部のそれぞれについて、画像処理部の再構成が完了した後に、当該画像処理部の動作及び処理内容を決定するパラメータを当該画像処理部に対して設定する必要がある。このため、画像処理部の再構成及び起動が完了したとしても、パラメータの設定が完了するまでは、画像処理を開始することができない。したがって、このような画像処理装置において、画像処理部を再構成した後の画像処理の開始タイミングをより早めるためには、画像処理部に対するパラメータ設定に要する時間を短くすることが必要である。
【０００８】
本発明は、上述の問題に鑑みてなされたものである。本発明は、動的部分再構成が可能な回路により画像処理を行う画像処理装置において、回路を再構成した後に画像処理をより早く開始できるようにする技術を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明は、例えば、画像処理装置として実現できる。本発明の一態様に係る画像処理装置は、一部の回路構成を動的に再構成可能な再構成可能回路と、前記再構成可能回路の一部に設けられる、画像処理を行う処理回路の再構成を制御する制御手段であって、再構成すべき前記処理回路を、前記画像処理のために設定されるパラメータを保持するパラメータ保持部と、前記パラメータ保持部によって保持されるパラメータに従って画像データに対して前記画像処理を行うデータ処理部とに分割し、前記パラメータ保持部を再構成した後に前記データ処理部を再構成するよう制御する、前記制御手段と、前記パラメータ保持部の再構成が完了すると、前記画像処理のためのパラメータを前記パラメータ保持部に対して設定する設定手段とを備えることを特徴とする。
【発明の効果】
【００１０】
本発明によれば、動的部分再構成が可能な回路により画像処理を行う画像処理装置において、回路を再構成した後に画像処理をより早く開始できるようになる。
【図面の簡単な説明】
【００１１】
【図１】一実施形態に係る画像処理装置の構成例を示す図。
【図２】一実施形態に係る画像処理装置で実行可能なジョブと、各ジョブで必要となる画像処理機能との関係の一例を示す図。
【図３】一実施形態に係る動的再構成部に設けられる画像処理部の論理回路構成例を示す図。
【図４】一実施形態に係るＲＯＭに格納されるコンフィギュレーションデータの一例を示す図。
【図５】一実施形態に係る動的再構成部を用いてジョブを実行する際の処理手順を示すフローチャート。
【図６】一実施形態に係る動的再構成部の再構成の手順を示すフローチャート。
【図７】一実施形態に係る動的再構成部を用いたコピージョブの実行手順を示すフローチャート。
【図８】一実施形態に係る動的再構成部の再構成とパラメータ設定のタイミングの一例を示すタイミングチャート。
【発明を実施するための形態】
【００１２】
以下、本発明を実施するための形態について図面を用いて説明する。なお、以下の実施形態は特許請求の範囲に係る発明を限定するものでなく、また実施形態で説明されている特徴の組み合わせの全てが発明の解決手段に必須のものとは限らない。
【００１３】
＜画像処理装置の構成＞
図１は、本発明の実施形態に係る画像処理装置１００の構成例を示すブロック図である。なお、本実施形態では、画像処理装置１００が、スキャナ部及びプリンタ部を有する複合機（多機能処理装置）である場合を例に説明する。
【００１４】
画像処理装置１００は、画像処理装置１００を使用するユーザが各種の操作を行うための操作部１０３と、原稿の画像情報を読み取るスキャナ部１０９と、画像データに基づいて用紙に画像を印刷するプリンタ部１０７とを有する。スキャナ部１０９は、スキャナ部１０９を制御するＣＰＵ（不図示）や原稿の読取を行うための照明ランプや走査ミラー（いずれも不図示）等を有する。プリンタ部１０７は、当該プリンタ部１０７の制御を行うＣＰＵ（不図示）や、画像の形成（印刷）や定着を行うための感光体ドラムや定着器（いずれも不図示）等を有する。
【００１５】
また、画像処理装置１００は、画像処理装置１００の制御を行うコントローラとして、動的再構成部を備えるＦＰＧＡ１４０を有する。この例では、ＦＰＧＡ１４０が、画像処理装置１００の動作を統括的に制御するＣＰＵ１０１を備える。このＣＰＵ１０１が、ＦＰＧＡ１４０や、再構成を制御するコンフィグコントローラ１３０等を制御するためのプログラムを実行する。尚、ＦＰＧＡ１４０がＣＰＵ１０１を備えていることはあくまで一例にすぎず、ＦＰＧＡ１４０の外部にＣＰＵを設けてもよい。
【００１６】
また、画像処理装置１００は、ＲＯＭ１０４及びＲＡＭ１１１を有する。ＲＯＭには、ＣＰＵ１０１が実行するブートプログラム、及び、動的再構成部１３１を構成する（コンフィギュレーションする）ための回路構成情報（コンフィギュレーションデータ）が格納されている。ＲＡＭ１１１は、ＣＰＵ１０１が動作するためのシステムワークメモリであり、かつ画像データを一時記憶するための画像メモリでもある。ＣＰＵ１０１は、ＲＯＭ１０４に格納された回路構成情報をＲＡＭ１１１に複製し格納するとともに、ＲＡＭ１１１から回路構成情報を高速に読み出すことができる。
【００１７】
ＦＰＧＡ１４０は、ＣＰＵ１０１、ネットワークインタフェース（ネットワークＩ／Ｆ）１０２、プリンタＩ／Ｆ１０６、スキャナＩ／Ｆ１０８、メモリコントローラ１１０、ＲＯＭ Ｉ／Ｆ１１２、操作部Ｉ／Ｆ１１３、コンフィグコントローラ１３０、動的再構成部１３１、システムバス１２０、及び画像バス１２１を備える。ＣＰＵ１０１、ネットワークＩ／Ｆ１０２、操作部１０３、ＲＯＭ Ｉ／Ｆ１１２、コンフィグコントローラ１３０、及び動的再構成部１３１の各画像処理部１３２Ａ，１３２Ｂ，１３２Ｃは、システムバス１２０を介して相互に接続される。また、動的再構成部１３１の各画像処理部１３２Ａ，１３２Ｂ，１３２Ｃ、スキャナＩ／Ｆ１０８、及びプリンタＩ／Ｆ１０６は、画像バス１２１を介して相互に接続される。画像バス１２１は、処理される画像データを転送するために用いられる。なお、メモリコントローラ１１０は、システムバス１２０及び画像バス１２１の両方に接続される。
【００１８】
動的再構成部１３１は、回路構成（コンフィギュレーション）を動的に再構成可能（書き換え可能）であり、かつ、一部の回路構成を書き換え可能な再構成可能回路である。即ち、動的再構成部１３１の一部の回路が動作している間に、その回路が占める部分とは重ならない別の部分に別の回路を再構成することができる。動的再構成部１３１は、各種画像処理を行うための論理回路を部分的に再構成できる画像処理部１３２Ａ，１３２Ｂ，１３２Ｃを有する。なお、本実施形態では動的再構成部１３１に構成される画像処理部の数が３つの場合を示しているが、画像処理部の数は３つに限定されるものではない。コンフィグコントローラ１３０は、動的再構成部１３１の回路構成（コンフィギュレーション）を制御し、ＣＰＵ１０１による制御に従って動的再構成部１３１を再構成する。なお、各画像処理部１３２Ａ，１３２Ｂ，１３２Ｃは、動的再構成部１３１（再構成可能回路）の一部に設けられる、画像処理を行う処理回路の一例である。
【００１９】
ＣＰＵ１０１は、画像処理装置１００の動作を統括的に制御する。また、ＣＰＵ１０１は、ネットワークＩ／Ｆ１０２を介して、ネットワーク上の汎用コンピュータ（不図示）と通信（送受信）を行う。ＲＯＭ Ｉ／Ｆ１１２は、ＲＯＭ１０４へのアクセス（ＲＯＭ１０４へのデータの書き込み及びＲＯＭ１０４からのデータの読み出し）を制御する。また、ＣＰＵ１０１は、動的再構成部１３１内に構成された各画像処理部１３２Ａ，１３２Ｂ，１３２Ｃに対するパラメータ設定を、システムバス１２０を介して行う。
【００２０】
操作部Ｉ／Ｆ１１３は、システムバス１２０と操作部１０３との間のインタフェースとして機能する。スキャナＩ／Ｆ１０８は、スキャナ部１０９から画像データが入力される。プリンタＩ／Ｆ１０６は、プリンタ部１０７へ画像データを出力する。メモリコントローラ１１０は、ＲＡＭ１１１へのデータの書き込み、ＲＡＭ１１１からのデータの読み出しを制御する。メモリコントローラ１１０は、システムバス１２０及び画像バス１２１に接続されている。メモリコントローラ１１０は、画像バス１２１に接続されたバスマスタからのＲＡＭ１１１へのアクセスと、システムバス１２０に接続されたバスマスタからのＲＡＭ１１１へのアクセスとを排他的に切り替える。
【００２１】
＜ジョブと画像処理機能との関係＞
図２は、画像処理装置１００で実行可能なジョブと、各ジョブで必要となる画像処理機能との関係の一例を示す図である。画像処理装置１００は、コピージョブ、プリントジョブ及びＳＥＮＤジョブを実行可能である。図２では、コピージョブ、プリントジョブ及びＳＥＮＤジョブのそれぞれで必要となる画像処理機能（即ち、各ジョブで実行される処理）と、その実行順序とを示している。コピージョブは、スキャナ部１０９で原稿を読み取って複写するためのジョブである。プリントジョブは、ネットワーク上のＰＣ等のプリンタドライバから送信された印刷データに基づいてプリンタ部１０７により印刷を行うためのジョブである。ＳＥＮＤジョブは、スキャナ部１０９で原稿を読み取って得られた画像データを外部のファイルサーバまたはメールアドレス宛に送信するためのジョブである。
【００２２】
コピージョブでは、最初に画像処理順１として、スキャナ部１０９から入力された画像データに対しスキャナ用の補正処理を行うスキャン画像処理を実行する。次に画像処理順２として、その画像データに対して回転処理、変倍処理、トリミング処理等を行う画像編集処理を実行する。最後に画像処理順３として、プリンタ部１０７で出力（印刷）される画像データに対して補正、解像度変換等を行うプリント画像処理を実行する。
【００２３】
プリントジョブでは、画像処理順１として、ネットワークＩ／Ｆ１０２を介して受信したプリントジョブに含まれるページ記述言語（ＰＤＬ：Print Description Language）コードをビットマップイメージに展開するラスタイメージプロセッサ（ＲＩＰ）処理を実行する。更に、画像処理順２として画像編集処理を、画像処理順３としてプリント画像処理を順に実行する。また、ＳＥＮＤジョブでは、画像処理順１としてスキャン画像処理を、画像処理順２として画像編集処理を順に実行する。最後に画像処理順３として、ネットワークへ画像データを送信するための高圧縮処理等を行うＳＥＮＤ画像処理を実行する。
【００２４】
本実施形態では、図２に示すように、画像処理順１に対応する画像処理機能を画像処理部１３２Ａに、画像処理順２に対応する画像処理機能を画像処理部１３２Ｂに、画像処理順３に対応する画像処理機能を画像処理部１３２Ｃに、それぞれ実装するものとする。即ち、画像処理部１３２Ａ，１３２Ｂ，１３２Ｃには、画像処理装置１００で実行されるジョブに応じて、図２に示す画像処理順１、２及び３に対応する画像処理を実行するための回路が構成される。
【００２５】
なお、図２に示すジョブは一例にすぎず、画像処理装置１００が処理可能なジョブは図２に示すものに限定されるわけではない。また、画像処理の単位に関しても、図２に示すものに限定されるわけではなく、各ジョブに含まれている処理を、より細かい処理に分割することも可能である。
【００２６】
＜画像処理部の構成＞
図３は、動的再構成部１３１に設けられる画像処理部１３２Ａ，１３２Ｂ，１３２Ｃの論理回路構成例を示す図である。画像処理部１３２Ａ，１３２Ｂ，１３２Ｃはそれぞれ、図２に示されるような各画像処理を実行するための論理回路として、画像データ処理部及びパラメータ保持部を有するように構成される。本実施形態では、画像処理部１３２Ａは、画像データ処理部３１０Ａ及びパラメータ保持部３２０Ａを有するように構成される。また、画像処理部１３２Ｂは、画像データ処理部３１０Ｂ及びパラメータ保持部３２０Ｂを有するように構成され、画像処理部１３２Ｃは、画像データ処理部３１０Ｃ及びパラメータ保持部３２０Ｃを有するように構成される。
【００２７】
画像データ処理部３１０Ａは、画像バス１２１に接続されており、画像バス１２１を介して受信される画像データに対する画像処理を行う。パラメータ保持部３２０Ａは、システムバス１２０に接続されており、画像データ処理部３１０Ａの動作及び処理内容を決定するためのパラメータを保持する。パラメータ保持部３２０Ａが保持するパラメータは、画像処理のために設定されるパラメータの一例であり、システムバス１２０を介してＣＰＵ１０１によって設定される。ＣＰＵ１０１は、画像データ処理部３１０Ａの動作及び処理内容を示すパラメータ値をパラメータ保持部３２０Ａに格納することによって、パラメータ保持部３２０Ａに対するパラメータの設定を行う。画像データ処理部３１０Ａは、パラメータ保持部３２０Ａによって保持されるパラメータに従って画像データに対して画像処理を行う。
【００２８】
パラメータ保持部３２０Ａは、保持しているパラメータ値を画像データ処理部３１０Ａに渡す。また、画像データ処理部３１０Ａは、画像データ処理部３１０Ａの状態を示すステータス値をパラメータ保持部３２０Ａに渡す。画像データ処理部３１０Ａは、パラメータ保持部３２０Ａから渡されるパラメータ値に従って、画像データに対する画像処理を行う。
【００２９】
なお、画像処理部１３２Ｂ（画像データ処理部３１０Ｂ及びパラメータ保持部３２０Ｂ）と画像処理部１３２Ｃ（画像データ処理部３１０Ｃ及びパラメータ保持部３２０Ｃ）については、画像処理部１３２Ａと同様に動作する。
【００３０】
＜コンフィギュレーションデータ＞
図４は、ＲＯＭ１０４に格納されるコンフィギュレーションデータの一例を示す図である。上述のように、各画像処理部１３２Ａ，１３２Ｂ，１３２Ｃは、画像データ処理部及びパラメータ保持部の２つの論理回路を有するように構成される。ＲＯＭ１０４には、図２に示される各画像処理機能を実現する（画像処理を実行する）論理回路を各画像処理部１３２Ａ，１３２Ｂ，１３２Ｃに構成するためのコンフィギュレーションデータ４０１〜４１０が格納されている。
【００３１】
図４では、コンフィギュレーションデータ４０１，４０３，４０５，４０７は、パラメータ保持部３２０Ａ，３２０Ｂ，３２０Ｃを再構成するためのデータ（第１の回路構成情報）である。また、コンフィギュレーションデータ４０２，４０４，４０６，４０８は、画像データ処理部３１０Ａ，３１０Ｂ，３１０Ｃを再構成するためのデータ（第２の回路構成情報）である。このように、ＲＯＭ１０４には、画像データ処理部及びパラメータ保持部の２つの論理回路のコンフィギュレーションデータが個別に格納されている。また、画像処理装置１００が実行可能な複数の画像処理（図２）のそれぞれに対応して、パラメータ保持部用のコンフィギュレーションデータと、画像データ処理部用のコンフィギュレーションデータとが格納されている。
【００３２】
例えば、コンフィギュレーションデータ４０１は、スキャン画像処理に対応する画像データ処理部のコンフィギュレーションデータである。また、コンフィギュレーションデータ４０２は、スキャン画像処理に対応するパラメータ保持部のコンフィギュレーションデータである。また、コンフィギュレーションデータ４０７は、画像編集処理に対応する画像データ処理部のコンフィギュレーションデータであり、コンフィギュレーションデータ４０８は、画像編集処理に対応するパラメータ保持部のコンフィギュレーションデータである。
【００３３】
画像処理部１３２Ａ，１３２Ｂ，１３２Ｃは、動的再構成部１３１においてそれぞれ個別に（部分的に）再構成が可能である。しかし、画像処理部単位で再構成を行う場合、画像処理のために必要となるパラメータをパラメータ保持部３２０Ａ，３２０Ｂ，３２０Ｃに対して設定可能となるのは、パラメータ設定の対象となる画像処理部全体の再構成が完了した後となる。
【００３４】
これに対して、本実施形態では、各画像処理部１３２Ａ，１３２Ｂ，１３２Ｃの再構成の際に、より早いタイミングにパラメータ設定を行うことを可能にすることで、画像処理部の再構成後により早く画像処理を開始できるようにする。具体的には、ＣＰＵ１０１は、再構成すべき画像処理部を、図３に示すようにパラメータ保持部と画像データ処理部とに分割し、パラメータ保持部を再構成した後に画像データ処理部を再構成するよう、コンフィグコントローラ１３０を制御する。即ち、ＣＰＵ１０１は、画像処理部の再構成を、当該画像処理部全体をまとめて行うのではなく、パラメータ保持部と画像データ処理部とに分けて行うことで、パラメータ保持部の再構成を先に完了させる。これにより、画像データ処理部（即ち、画像処理部全体）の再構成の完了前に、先に再構成が完了したパラメータ保持部に対してパラメータ設定が可能になる。なお、パラメータ保持部に対するパラメータ設定は、パラメータ保持部の再構成が完了した後に、データ処理部の再構成と並行して実行できる。
【００３５】
また、本実施形態では、画像処理装置１００で実行されるジョブに応じて、必要な画像処理（スキャン画像処理、プリント画像処理、ＲＩＰ処理、画像編集処理、ＳＥＮＤ画像処理）が実行可能となるよう、図２に示すように複数の画像処理部１３２Ａ，１３２Ｂ，１３２Ｃを再構成する。この場合、ＣＰＵ１０１は、複数の画像処理部１３２Ａ，１３２Ｂ，１３２Ｃに対応する複数のパラメータ保持部３２０Ａ，３２０Ｂ，３２０Ｃを再構成した後に、複数の画像データ処理部３１０Ａ，３１０Ｂ，３１０Ｃを再構成する。これにより、画像処理装置１００におけるジョブの実行時に、画像データ処理部３１０Ａ，３１０Ｂ，３１０Ｃの再構成の完了前にパラメータ保持部３２０Ａ，３２０Ｂ，３２０Ｃに対するパラメータの設定を開始できる。その結果、各画像データ処理部３１０Ａ，３１０Ｂ，３１０Ｃにおける画像処理をより早く開始することが可能になる。
【００３６】
＜画像処理部の再構成手順＞
図５は、本実施形態に係る画像処理装置１００において動的再構成部１３１を用いてジョブを実行する際の処理手順を示すフローチャートである。なお、本フローチャートに示す各処理は、ＣＰＵ１０１がＲＯＭ１０４等に予め格納された制御プログラムをＲＡＭ１１１に読み出して実行することによって実現される。以下では、実行されるジョブがコピージョブである場合を例として説明する。
【００３７】
Ｓ５０１で、ＣＰＵ１０１は、操作部１０３から受信した情報、ネットワークＩ／Ｆ１０２を介して受信した情報等に基づいて、ジョブの実行要求が生じたか否かを判定し、実行要求が生じるとＳ５０２に処理を進める。ここでは、操作部１０３を介してユーザがコピーの実行指示を行った場合、ＣＰＵ１０１は、コピージョブの実行要求が生じたと判定する。
【００３８】
次に、Ｓ５０２で、ＣＰＵ１０１は、パラメータ保持部３２０Ａ，３２０Ｂ，３３０Ｃの順に、実行するジョブに必要な各画像処理（図２）用にパラメータ保持部を再構成するよう、コンフィグコントローラ１３０に要求する。具体的には、ＣＰＵ１０１は、実行するジョブに必要な各画像処理（図２）に対応するコンフィギュレーションデータに関する情報を含む再構成要求を、システムバス１２０を介してコンフィグコントローラ１３０に送信する。コピージョブの場合、まずＣＰＵ１０１は、スキャン画像処理に対応するパラメータ保持部のコンフィギュレーションデータ４０１を用いてパラメータ保持部３２０Ａを再構成するよう、コンフィグコントローラ１３０に要求する。その後Ｓ５０３で、ＣＰＵ１０１は、コンフィグコントローラ１３０から再構成完了通知を受信するまで待機し、再構成完了通知を受信するとＳ５０４に処理を進める。
【００３９】
（コンフィグコントローラ１３０の処理）
ここで、図６は、ＣＰＵ１０１からの要求に応じてコンフィグコントローラ１３０によって実行される、動的再構成部１３１の再構成の手順を示すフローチャートである。Ｓ６０１で、コンフィグコントローラ１３０は、動的再構成部１３１の再構成要求を受信するまで待機し、再構成要求を受信すると、処理をＳ６０２に進める。Ｓ６０２で、コンフィグコントローラ１３０は、ＣＰＵ１０１からの再構成要求に従って、ＲＯＭ１０４に格納されたコンフィギュレーションデータを読み出して、動的再構成部１３１の再構成対象の領域への書き込みを行う。このようにして、コンフィグコントローラ１３０は、動的再構成部１３１の対象領域の再構成を行う。
【００４０】
その後、Ｓ６０３で、コンフィグコントローラ１３０は、動的再構成部１３１の対象領域の再構成が完了するまで待機する。対象領域の再構成が完了すると、コンフィグコントローラ１３０は、Ｓ６０４で、再構成要求に従った再構成が完了したことを示す通知（再構成完了通知）を、システムバス１２０を介してＣＰＵ１０１に送信し、処理をＳ６０１に戻す。その後、コンフィグコントローラ１３０は、次の再構成要求をＣＰＵ１０１から受信するまでＳ６０１で待機状態となる。
【００４１】
コピージョブの場合、コンフィグコントローラ１３０は、パラメータ保持部３２０Ａの再構成要求を受信すると、当該再構成要求に従って、スキャン画像処理に対応するパラメータ保持部のコンフィギュレーションデータ４０１をＲＯＭ１０４から読み出す。更に、コンフィグコントローラ１３０は、読み出したコンフィギュレーションデータ４０１をパラメータ保持部３２０Ａに書き込むことで、パラメータ保持部３２０Ａを再構成する。パラメータ保持部３２０Ａの再構成が完了すると、パラメータ保持部３２０Ａの再構成が完了したことを示す通知をＣＰＵ１０１に送信する。
【００４２】
再び説明を図５のフローチャートに戻し、ＣＰＵ１０１は、Ｓ５０３で再構成完了通知をコンフィグコントローラ１３０から受信すると、処理をＳ５０４に進める。Ｓ５０４で、ＣＰＵ１０１は、全てのパラメータ保持部３２０Ａ，３２０Ｂ，３２０Ｃの再構成が完了したか否かを判定し、完了していないと判定した場合にはＳ５０２に処理を戻し、次のパラメータ保持部の再構成を行う。コピージョブの場合、Ｓ５０２〜Ｓ５０４で、パラメータ保持部３２０Ａに続いて、画像編集処理に対応するパラメータ保持部のコンフィギュレーションデータ４０７を用いてパラメータ保持部３２０Ｂの再構成が行われる。更に、パラメータ保持部３２０Ｂに続いて、プリント画像処理に対応するパラメータ保持部のコンフィギュレーションデータ４０３を用いてパラメータ保持部３２０Ｃの再構成が行われる。Ｓ５０４で、ＣＰＵ１０１は、全てのパラメータ保持部３２０Ａ，３２０Ｂ，３２０Ｃの再構成が完了したと判定した場合、処理をＳ５０５に進める。
【００４３】
次に、Ｓ５０５で、ＣＰＵ１０１は、システムバス１２０を介して、パラメータ保持部３２０Ａ，３２０Ｂ，３２０Ｃに対する、ジョブの実行に必要なパラメータの設定を開始する。更にＳ５０６で、ＣＰＵ１０１は、画像データ処理部３１０Ａ，３１０Ｂ，３１０Ｃの順に、実行するジョブに必要な各画像処理（図２）用に画像データ処理部を再構成するよう、コンフィグコントローラ１３０に要求する。なお、パラメータ保持部３２０Ａ，３２０Ｂ，３２０Ｃに対するパラメータの設定は、Ｓ５０６〜Ｓ５０８における画像データ処理部３１０Ａ，３１０Ｂ，３１０Ｃの再構成と並行して行われる。
【００４４】
Ｓ５０６では、ＣＰＵ１０１は、実行するジョブに必要な各画像処理（図２）に対応するコンフィギュレーションデータに関する情報を含む再構成要求を、システムバス１２０を介してコンフィグコントローラ１３０に送信する。コピージョブの場合、まずＣＰＵ１０１は、スキャン画像処理に対応する画像データ処理部のコンフィギュレーションデータ４０２を用いて画像データ処理部３１０Ａを再構成するよう、コンフィグコントローラ１３０に要求する。その後Ｓ５０７で、ＣＰＵ１０１は、コンフィグコントローラ１３０から再構成完了通知を受信するまで待機し、再構成完了通知を受信するとＳ５０８に処理を進める。
【００４５】
コンフィグコントローラ１３０による画像データ処理部３１０Ａの再構成は、図６に示す手順に従って実行される。コピージョブの場合、コンフィグコントローラ１３０は、画像データ処理部３１０Ａの再構成要求を受信すると、当該再構成要求に従って、スキャン画像処理に対応する画像データ処理部のコンフィギュレーションデータ４０２をＲＯＭ１０４から読み出す。更に、コンフィグコントローラ１３０は、読み出したコンフィギュレーションデータ４０２を画像データ処理部３１０Ａに書き込むことで、画像データ処理部３１０Ａを再構成する。画像データ処理部３１０Ａの再構成が完了すると、画像データ処理部３１０Ａの再構成が完了したことを示す通知をＣＰＵ１０１に送信する。
【００４６】
次に、ＣＰＵ１０１は、Ｓ５０７で再構成完了通知をコンフィグコントローラ１３０から受信すると、次にＳ５０８で、ＣＰＵ１０１は、全ての画像データ処理部３１０Ａ，３１０Ｂ，３１０Ｃの再構成が完了したか否かを判定し、完了していないと判定した場合にはＳ５０６に処理を戻し、次の画像データ処理部の再構成を行う。コピージョブの場合、Ｓ５０６〜Ｓ５０８で、画像データ処理部３１０Ａに続いて、画像編集処理に対応する画像データ処理部のコンフィギュレーションデータ４０８を用いて画像データ処理部３１０Ｂの再構成が行われる。更に、画像データ処理部３１０Ｂに続いて、プリント画像処理に対応する画像データ処理部のコンフィギュレーションデータ４０４を用いて画像データ処理部３１０Ｃの再構成が行われる。Ｓ５８４で、ＣＰＵ１０１は、全ての画像データ処理部３１０Ａ，３１０Ｂ，３１０Ｃの再構成が完了したと判定した場合、処理をＳ５０９に進める。
【００４７】
Ｓ５０９で、ＣＰＵ１０１は、Ｓ５０６〜Ｓ５０８における画像データ処理部３１０Ａ，３１０Ｂ，３１０Ｃの再構成と並行して実行していた、パラメータ保持部３２０Ａ，３２０Ｂ，３２０Ｃに対するパラメータ設定が完了したか否かを判定する。ＣＰＵ１０１は、全てのパラメータ保持部３２０Ａ，３２０Ｂ，３２０Ｃに対するパラメータ設定が完了していると判定した場合、処理をＳ５１０に進める。一方、ＣＰＵ１０１は、パラメータ設定が完了していないと判定した場合には、当該設定が完了するまで待機する。
【００４８】
Ｓ５１０で、ＣＰＵ１０１は、ジョブ（ここではコピージョブ）の実行に必要な画像処理用に再構成された動的再構成部１３１を用いてジョブを実行する。図７は、Ｓ５１０におけるジョブ（コピージョブ）の実行手順を示すフローチャートである。まず、Ｓ７０１で、ＣＰＵ１０１は、スキャナ部１０９に対して原稿の読取開始を指示する。スキャナ部１０９で原稿を読み取って得られた画像データは、スキャナＩ／Ｆ１０８を介して入力されるとともに、画像バス１２１及びメモリコントローラ１１０を介してＲＡＭ１１１に格納される。
【００４９】
その後、Ｓ７０２で、ＣＰＵ１０１は、画像処理部１３２Ａによるスキャン画像処理を開始可能か否かを判定し、開始可能と判定すると処理をＳ７０３に進める。ここでは、ＣＰＵ１０１は、画像処理部１３２Ａによるスキャン画像処理を行うために必要な所定量の画像データがＲＡＭ１１１に格納された場合、スキャン画像処理を開始可能と判定する。Ｓ７０３で、ＣＰＵ１０１は、スキャン画像処理の開始指示を画像処理部１３２Ａに送信することで、ＲＡＭ１１１に格納された画像データに対するスキャン画像処理を画像処理部１３２Ａに実行させる。画像処理部１３２Ａは、ＣＰＵ１０１からの指示に従って、ＲＡＭ１１１に格納された画像データを読み出して、スキャン画像処理を行った後、画像処理後の画像データを再びＲＡＭ１１１に格納する。
【００５０】
次に、Ｓ７０４で、ＣＰＵ１０１は、画像処理部１３２Ｂによる画像編集処理を開始可能か否かを判定し、開始可能と判定すると処理をＳ７０５に進める。ここでは、ＣＰＵ１０１は、画像処理部１３２Ｂによる画像編集処理を行うために必要な所定量の、画像処理部１３２Ａによって画像処理が行われた画像データがＲＡＭ１１１に格納された場合、画像編集処理を開始可能と判定する。Ｓ７０５で、ＣＰＵ１０１は、画像編集処理の開始指示を画像処理部１３２Ｂに送信することで、ＲＡＭ１１１に格納された画像データに対する画像編集処理を画像処理部１３２Ｂに実行させる。画像処理部１３２Ｂは、ＣＰＵ１０１からの指示に従って、ＲＡＭ１１１に格納された画像データを読み出して、画像編集処理を行った後、画像処理後の画像データを再びＲＡＭ１１１に格納する。
【００５１】
次に、Ｓ７０６で、ＣＰＵ１０１は、画像処理部１３２Ｃによるプリント画像処理を開始可能か否かを判定し、開始可能と判定すると処理をＳ７０７に進める。ここでは、ＣＰＵ１０１は、画像処理部１３２Ｃによるプリント画像処理を行うために必要な所定量の、画像処理部１３２Ｂによって画像処理が行われた画像データがＲＡＭ１１１に格納された場合、プリント画像処理を開始可能と判定する。Ｓ７０７で、ＣＰＵ１０１は、プリント画像処理の開始指示を画像処理部１３２Ｃに送信することで、ＲＡＭ１１１に格納された画像データに対するプリント画像処理を画像処理部１３２Ｃに実行させる。画像処理部１３２Ｃは、ＣＰＵ１０１からの指示に従って、ＲＡＭ１１１に格納された画像データを読み出して、プリント画像処理を行った後、画像処理後の画像データを再びＲＡＭ１１１に格納する。
【００５２】
次に、Ｓ７０８で、ＣＰＵ１０１は、プリンタ部１０７による画像データに基づく印刷を開始可能か否かを判定し、開始可能と判定すると処理をＳ７０９に進める。ここでは、ＣＰＵ１０１は、プリンタ部１０７による印刷を行うために必要な所定量の、画像処理部１３２Ｃによって画像処理が行われた画像データがＲＡＭ１１１に格納された場合、プリントを開始可能と判定する。Ｓ７０９で、ＣＰＵ１０１は、プリンタＩ／Ｆ１０６を介してプリンタ部１０７に対して印刷開始指示を送信し、プリンタ部１０７へ、ＲＡＭ１１１に格納された画像データの転送を開始する。
【００５３】
その後、Ｓ７１０で、ＣＰＵ１０１は、プリンタ部１０７による印刷が完了したか否かを判定し、完了したと判定すると処理をＳ７１１に進める。Ｓ７１１で、ＣＰＵ１０１は、コピー対象の全ての原稿のコピーが完了したか否かを判定する。ＣＰＵ１０１は、コピー対象の原稿が残っている場合には、次の原稿についてのコピーを開始するために、処理をＳ７０１に戻す一方、全ての原稿のコピーが完了したと判定すると、コピージョブの実行を終了する。
【００５４】
このように、本実施形態では、ＣＰＵ１０１は、動的再構成部１３１（画像処理部１３２Ａ，１３２Ｂ，１３２Ｃ）の再構成を行う場合、画像処理部単位で再構成を順に実行するのではなく、各画像処理部のパラメータ保持部の再構成を先行して行う。更に、ＣＰＵ１０１は、各画像処理部のパラメータ保持部の再構成が完了した後に、各画像処理部の画像データ処理部の再構成を行う。これにより、画像処理部単位で再構成を順に実行する場合と比較して、パラメータ保持部に対するパラメータの設定をより早く開始することが可能になる。その結果、動的再構成部１３１による画像処理をより早く開始することが可能になる。例えば、全ての画像処理部１３２Ａ，１３２Ｂ，１３２Ｃの再構成が完了した後に、パラメータ保持部に対するパラメータの設定を行うよりも早いタイミングに、動的再構成部１３１による画像処理を開始できる。
【００５５】
また、ＣＰＵ１０１は、図５に示したように、各画像処理部のパラメータ保持部に対するパラメータの設定を、各画像処理部の画像データ処理部の再構成を並行して実行してもよい。これにより、パラメータ保持部に対するパラメータの設定をより早く完了させることができ、動的再構成部１３１による画像処理の開始タイミングを更に早めることが可能になる。
【００５６】
＜各画像処理部の再構成とパラメータ設定のタイミングの例＞
図８は、動的再構成部１３１の再構成とパラメータ設定のタイミングの一例を示すタイミングチャートである。なお、図８では、画像処理部１３２Ａ，１３２Ｂ，１３２Ｃをそれぞれ画像処理部Ａ，Ｂ，Ｃとして示している。図８（Ａ）及び（Ｃ）は、画像処理部Ａ，Ｂ，Ｃ（画像処理部１３２Ａ，１３２Ｂ，１３２Ｃ）をまとめて再構成する場合を比較例として示している。図８（Ｂ）及び（Ｄ）は、本実施形態のように、画像処理部Ａ，Ｂ，Ｃを、パラメータ保持部Ａ，Ｂ，Ｃ（パラメータ保持部３２０Ａ，３２０Ｂ，３２０Ｃ）と、画像データ処理部Ａ，Ｂ，Ｃ（画像データ処理部３１０Ａ，３１０Ｂ，３１０Ｃ）とに分割して再構成する場合を示している。また、図８では、パラメータ設定部Ａ，Ｂ，Ｃの回路規模は画像データ処理部Ａ，Ｂ，Ｃの回路規模より小さい場合を示しており、それ故に、画像データ処理部Ａ，Ｂ，Ｃの再構成よりもパラメータ設定部Ａ，Ｂ，Ｃの再構成の方が所要時間が短い。
【００５７】
図８（Ａ）に示す比較例では、動的再構成部１３１の画像処理部Ａ，Ｂ，Ｃをまとめて再構成する。この再構成の所要時間は、画像処理部Ａ，Ｂ，Ｃの回路規模、即ち、画像処理部Ａ，Ｂ，Ｃのコンフィギュレーションデータ（回路構成情報）のデータ量にほぼ比例する。本比較例では、画像処理部Ａ，Ｂ，Ｃ全ての再構成が完了すると、画像処理部Ａ，Ｂ，Ｃに対するパラメータ設定を行い、画像処理を開始する。ここで、画像処理部Ａ，Ｂ，Ｃの再構成の所要時間をＴｒ、画像処理部Ａ，Ｂ，Ｃのパラメータ設定の所要時間をＴｓとすると、動的再構成部１３１の再構成を開始してから画像処理が開始されるまでにＴｒ＋Ｔｓの時間を要する。
【００５８】
一方、本実施形態では、図８（Ｂ）に示すように、画像処理部Ａ，Ｂ，Ｃのパラメータ保持部の再構成を最初に行う（所要時間をＴｒｐ）。パラメータ保持部Ａ，Ｂ，Ｃの再構成が完了すると、画像処理部Ａ，Ｂ，Ｃに対するパラメータ設定が可能となる。このため、画像データ処理部Ａ，Ｂ，Ｃの再構成と並行して、パラメータ保持部Ａ，Ｂ，Ｃに対するパラメータ設定が行われる。なお、図８（Ａ）及び（Ｂ）の例では、画像データ処理部Ａ，Ｂ，Ｃの再構成の所要時間Ｔｒｄよりも、パラメータ保持部Ａ，Ｂ，Ｃに対するパラメータ設定の所要時間Ｔｓの方が短い場合を示している。
【００５９】
上述のように、動的再構成部１３１の再構成の所要時間は、再構成の対象となる領域の回路規模（コンフィギュレーションデータのデータ量）にほぼ比例する。このため、パラメータ保持部の再構成の所要時間Ｔｒｐと画像データ処理部の再構成の所要時間Ｔｒｄとの合計は、画像処理部全体の再構成の所要時間Ｔｒとほぼ等しい。したがって、本実施形態では、図８（Ａ）に示す比較例よりも、画像処理部に対するパラメータ設定の所要時間Ｔｓに相当する時間だけ、動的再構成部１３１の再構成後の画像処理の開始タイミングを早めることができる。更には、画像処理の完了までの所要時間も同じ時間だけ早めることができる。
【００６０】
また、図８（Ｃ）及び（Ｄ）の例では、画像データ処理部Ａ，Ｂ，Ｃの再構成の所要時間Ｔｒｄよりも、パラメータ保持部Ａ，Ｂ，Ｃに対するパラメータ設定の所要時間Ｔｓの方が長い場合を示している。この場合、本実施形態では、図８（Ｃ）に示すように、動的再構成部１３１の再構成を開始してから画像処理が開始されるまでにＴｒｐ＋Ｔｓの時間を要する。それでも、図８（Ｃ）に示す比較例と比べて、動的再構成部１３１の再構成後の画像処理の開始タイミングを早めることができる。
【００６１】
なお、上述の実施形態では、画像処理部Ａ，Ｂ，Ｃのパラメータ保持部の全ての再構成が完了してから各パラメータ保持部に対するパラメータ設定を行う例を説明してきた。しかし、各パラメータ保持部の再構成の完了に応じて、再構成が完了したパラメータ保持部から順にパラメータ設定を開始してもよい。
【００６２】
上述の実施形態によれば、動的部分再構成が可能な回路（画像処理部）により画像処理を行う画像処理装置において、画像処理部をパラメータ設定部と画像データ処理部とに分割し、パラメータ設定部の再構成を画像データ処理部の再構成より先に行う。更に、画像処理部全体の再構成が完了した後にパラメータ設定を行う場合よりも早いタイミングに画像処理部（パラメータ設定部）に対するパラメータ設定を行う。これにより、画像処理部の再構成後により早く画像処理を開始することが可能となる。
【００６３】
［その他の実施形態］
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワークまたは各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
2015169945.tif 000003
【図２】
2015169945.tif 000004
【図３】
2015169945.tif 000005
【図４】
2015169945.tif 000006
【図５】
2015169945.tif 000007
【図６】
2015169945.tif 000008
【図７】
2015169945.tif 000009
【図８】
2015169945.tif 000010