(57)【要約】【課題】動的部分再構成部を有する画像処理装置において、回路を再構成して処理を切り替える際に、処理の開始を早くできるようにする。【解決手段】内部の回路構成を動的かつ部分的に再構成可能な動的部分再構成部と、前記動的部分再構成部の回路構成の再構成を制御する再構成制御手段とを備える画像処理装置であって、前記動的部分再構成部に構成される１または複数の処理回路はそれぞれ、データ処理部と、前記データ処理部による処理に用いられるパラメータを保持するパラメータ保持部とを含んで構成され、前記パラメータ保持部は、前記データ処理部による処理における設定に応じたパラメータに対応する回路構成が定義され、前記再構成制御手段は、前記データ処理部による処理における設定の変更に応じて前記パラメータ保持部の回路構成のみを再構成する。【選択図】  図１
2015149025.tif 000002
【特許請求の範囲】
【請求項１】
画像処理装置であって、
内部の回路構成を動的かつ部分的に再構成可能な動的部分再構成部と、
前記動的部分再構成部の回路構成の再構成を制御する再構成制御手段と、
を備え、
前記動的部分再構成部に構成される１または複数の処理回路はそれぞれ、データ処理部と、前記データ処理部による処理に用いられるパラメータを保持するパラメータ保持部とを含んで構成され、
前記パラメータ保持部は、前記データ処理部による処理における設定に応じたパラメータに対応する回路構成が定義され、
前記再構成制御手段は、前記データ処理部による処理における設定の変更に応じて前記パラメータ保持部の回路構成のみを再構成することを特徴とする画像処理装置。
【請求項２】
前記パラメータ保持部に保持されているパラメータが前記データ処理部の処理に共通した固定値である場合、前記再構成制御手段は、当該固定値に関するパラメータ保持部の再構成は行わないことを特徴とすることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記動的部分再構成部に構成される１または複数の処理回路に対して設定を行う設定手段を更に有することを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
前記設定手段は、前記パラメータ保持部に対し、前記データ処理部にて用いられるパラメータの設定を行うことを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記パラメータ保持部に保持されているデータが前記データ処理部による処理に共通した固定値である場合、前記設定手段は、当該固定値に関するパラメータ保持部に対する設定を行わないことを特徴とする請求項３または４に記載の画像処理装置。
【請求項６】
前記データ処理部の再構成が必要か否かを判定する判定手段を更に有し、
前記判定手段にて前記データ処理部の再構成が必要であると判定された場合に、前記再構成制御手段は、当該データ処理部の再構成を行うことを特徴とする請求項１乃至５のいずれか一項に記載の画像処理装置。
【請求項７】
前記判定手段は、すでに構成されているデータ処理部にて実行可能な処理とは異なる処理が要求された場合に、当該データ処理部の再構成が必要であると判定することを特徴とする請求項６に記載の画像処理装置。
【請求項８】
内部の回路構成を動的かつ部分的に再構成可能な動的部分再構成部を備える画像処理装置の制御方法であって、
前記動的部分再構成部の回路構成の再構成を制御する再構成制御工程を有し、
前記動的部分再構成部に構成される１または複数の処理回路はそれぞれ、データ処理部と、前記データ処理部による処理に用いられるパラメータを保持するパラメータ保持部とを含んで構成され、
前記パラメータ保持部は、前記データ処理部による処理における設定に応じたパラメータに対応する回路構成が定義され、
前記再構成制御工程において、前記データ処理部よる処理における設定の変更に応じて前記パラメータ保持部の回路構成のみを再構成することを特徴とする画像処理装置の制御方法。
【請求項９】
内部の回路構成を動的かつ部分的に再構成可能な動的部分再構成部を備えるコンピュータを、
前記動的部分再構成部の回路構成の再構成を制御する再構成制御手段として機能させ、
前記動的部分再構成部に構成される１または複数の処理回路はそれぞれ、データ処理部と、前記データ処理部による処理に用いられるパラメータを保持するパラメータ保持部とを含んで構成され、
前記パラメータ保持部は、前記データ処理部による処理における設定に応じたパラメータに対応する回路構成が定義され、
前記再構成制御手段は、前記データ処理部による処理における設定の変更に応じて前記パラメータ保持部の回路構成のみを再構成することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置およびその制御方法、並びにプログラムに関する。
【背景技術】
【０００２】
内部の論理回路構成を変更可能なＰＬＤ（Ｐｒｏｇｒａｍｍａｂｌｅ  Ｌｏｇｉｃ  Ｄｅｖｉｃｅ）やＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）などの再構成可能回路が良く知られている。一般的に、ＰＬＤやＦＰＧＡは起動時にＲＯＭ等の不揮発性メモリへ格納された論理回路構成情報を内部の揮発性メモリであるコンフィギュレーションメモリへ書き込み、内部論理ブロックの機能を切り替えることで実現される。また、コンフィギュレーションメモリ内の情報は電源切断時にクリアされるため、電源投入時には再度、論理回路構成情報をコンフィギュレーションメモリに書き込むことで再構成を行う必要がある。このように、一度だけハードウェアリソースの構成を行う方法を「静的再構成」という。一方、回路が動作中に論理回路構成を変更することが可能なものも開発されてきており、動作中に論理回路を変更する方法を「動的再構成」という。
【０００３】
また、ＦＰＧＡには、チップ全体ではなく特定の領域だけを書き換えることが可能なものがあり、このような書き換えを「部分再構成」という。特に、動作中の他の回路を停止しない状態で部分再構成を行うことを「動的部分再構成」という。動的部分再構成では、再構成時にコンフィギュレーションメモリ全体を書き換えるのではなく、コンフィギュレーションメモリ領域の一部のみを書き換えることで、ＦＰＧＡ内部の論理ブロックの部分的な再構成を実現することが可能となる。このような動的部分再構成技術を用いることで、一つの領域に複数の回路を切り替えて実装することが可能となるため、ハードウェアリソースの多重化を行い論理ブロックで実現する機能を変更することができる。その結果、少ないハードウェアリソースで用途に合わせた様々な機能をハードウェアによる高い演算性能を保ったままで柔軟に実現することが可能となる。
【０００４】
ただし、動作中に回路構成を変更できるといっても、回路構成の変更（書き換え）に要する時間は長く、その時間はコンフィギュレーションメモリに書き込む論理回路構成情報のサイズに比例する。そのため、従来から、回路構成の書き換え時間を低減するための技術が提案されている。従来の書き換え時間を低減するための技術として、パイプライン構成の処理において、パイプラインの先頭の部分回路から順に再構成可能回路上に再構成し、再構成された部分回路から順に起動していく方法がある（例えば、特許文献１参照）。これにより、再構成可能な回路上に同時に再構成可能な回路をまとめて再構成して起動する方式よりも、データ処理を高速化することができる。また、所定の機能を実現するための回路を複数持ち、動作状態に応じて選択するような手法も開示されている（例えば、特許文献２参照）。
【０００５】
一方、ＭＦＰ（Ｍｕｌｔｉ  Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）等の画像処理装置は、ユーザからの要求に応じた複数の処理（カラーコピージョブ、モノクロコピージョブ、プリントジョブ、ＳＥＮＤジョブ等）を選択可能である。各処理に応じた画像処理は、ハードウェアまたはソフトウェアにより実現される。一般に、ハードウェアで構成される論理回路は、汎用性を上げるために処理回路とパラメータ保持回路とから構成され、パラメータ保持回路に設定されるパラメータ係数を変更することで、用途に合わせた必要な動作および処理内容を実現される。また、パラメータ係数の設定はＣＰＵにより行われることが多い。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１１−１８６９８１号公報
【特許文献２】特開２００７−１７９３５８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１に示される方式によると、パイプライン構成の画像処理部の順番に応じて再構成する順番を制御している。しかし、画像処理装置における画像処理部に対して動的部分再構成の技術を用いたシステムを構成した場合、画像処理部の回路構成の書き換え後にパラメータの設定を行う必要がある。そのため、処理を切り替えるたびに部分再構成時間に加えて、パラメータを設定する時間が掛かってしまうといった課題がある。
【０００８】
また、特許文献２に示される方式によると、選択された論理回路を再構成するため、論理回路が大規模である場合や、再構成する論理回路が多い場合に、再構成に時間が掛かってしまうといった課題がある。
【０００９】
本発明は、このような問題を鑑み、動的部分再構成が可能な画像処理装置において、パラメータを変更して処理を切り替える際に、後続の処理の開始を早くすることを目的とする。
【課題を解決するための手段】
【００１０】
上記課題を解決するために本願発明は以下の構成を有する。すなわち、画像処理装置であって、内部の回路構成を動的かつ部分的に再構成可能な動的部分再構成部と、前記動的部分再構成部の回路構成の再構成を制御する再構成制御手段とを備え、前記動的部分再構成部に構成される１または複数の処理回路はそれぞれ、データ処理部と、前記データ処理部による処理に用いられるパラメータを保持するパラメータ保持部とを含んで構成され、前記パラメータ保持部は、前記データ処理部による処理における設定に応じたパラメータに対応する回路構成が定義され、前記再構成制御手段は、前記データ処理部による処理における設定の変更に応じて前記パラメータ保持部の回路構成のみを再構成する。
【発明の効果】
【００１１】
本発明によれば、動的部分再構成が可能な画僧処理装置において、パラメータ設定に掛かる時間を短縮し、後続の処理の開始を早くすることが可能となる。
【図面の簡単な説明】
【００１２】
【図１】本実施形態に係る画像処理装置の構成の一例を示す図。
【図２】本実施形態に係る動的部分再構成部に構成される画像処理部の論理回路構成を示す図。
【図３】本実施形態に係るコンフィギュレーションデータの構成例を示す図。
【図４】本実施形態に係る画像処理装置の機能および実行される画像処理の例を示す図。
【図５】本実施形態に係る画像処理のパラメータ値を示す図。
【図６】本実施形態に係るコピージョブ時のＣＰＵ制御およびデータ処理部の再構成制御を示すフローチャート。
【図７】本実施形態に係るコピージョブ時のＣＰＵ制御およびパラメータ保持部の再構成制御を示すフローチャート。
【図８】本実施形態に係るコピージョブ時の画像処理に係るＣＰＵ制御を示すフローチャート。
【図９】本実施形態に係る画像処理部の再構成とパラメータ設定の時間的な遷移の概念を示すタイムチャート。
【発明を実施するための形態】
【００１３】
以下、本発明を実施するための形態について図面を用いて説明する。
【００１４】
［画像処理装置の構成］
図１は、本発明の実施形態に係る画像処理装置の構成例を説明するための図である。本実施形態の画像処理装置１００は、操作部１０３、スキャナ部１０９、及びプリンタ部１０７を有する。操作部１０３は、画像処理装置１００を使用するユーザが各種の操作を行うためのユーザインタフェースである。スキャナ部１０９は、操作部１０３からの指示に従い画像情報を読み取る。スキャナ部１０９は、スキャナ部１０９を制御するＣＰＵ（不図示）や原稿読取を行うための照明ランプ（不図示）や走査ミラー（不図示）などを有する。プリンタ部１０７は、画像データを用紙に印刷する。プリンタ部１０７は、プリンタ部１０７の制御を行うＣＰＵ（不図示）や画像形成や定着を行うための感光体ドラム（不図示）や定着器（不図示）を有する。
【００１５】
また、画像処理装置１００は、画像処理装置１００の制御を行うコントローラとして、ＦＰＧＡ１４０を有する。図１に示す例では、ＦＰＧＡ１４０が画像処理装置１００の動作を統括的に制御するＣＰＵ１０１を備える。ＣＰＵ１０１がＦＰＧＡ１４０や再構成を制御するコンフィグコントローラ１３０などの、画像処理装置１００の各ユニットを制御するための制御ソフトウェアを実行する。なお、ＦＰＧＡ１４０がＣＰＵ１０１を備えていることはあくまで一例にすぎず、ＦＰＧＡ１４０の外部にＣＰＵが設けられていてもよい。
【００１６】
画像処理装置１００は、記憶部として、ＲＯＭ１０４およびＲＡＭ１１１を有する。ＲＯＭ１０４には、ＣＰＵ１０１が実行するブートプログラム、および、ＦＰＧＡ１４０をコンフィギュレーションするための論理回路構成情報（コンフィグレーションデータ）が格納されている。ＲＡＭ１１１は、例えば、ＣＰＵ１０１が動作するためのシステムワークメモリ、画像データを一時記憶するための画像メモリ、およびＲＯＭ１０４に格納された論理回路構成情報を複製して格納し高速に読み出すためのメモリとして機能する。
【００１７】
ＦＰＧＡ１４０は、動的部分再構成部１３１と、動的部分再構成部１３１の回路構成（コンフィギュレーション）を制御するコンフィグコントローラ１３０とを有する。動的部分再構成部１３１は、動的書き換え可能であり、かつ、部分書き換え可能なものである。すなわち、動的部分再構成部１３１の一部の回路が動作している間に、その回路が占める部分とは重ならない別の部分に、別の回路を再構成することができる。動的部分再構成部１３１は、各種画像処理を行うための論理回路が部分的に再構成できる画像処理部Ａ１３２、画像処理部Ｂ１３３、および画像処理部Ｃ１３４を有する。
【００１８】
なお、本実施形態では動的部分再構成部１３１に構成される画像処理部の数が３つの場合を例に挙げて説明しているが、画像処理部の数は３つに限定されるものではなく、例えば、これ以上の数を備えていてもよい。また、ＦＰＧＡ１４０は、スキャナ部１０９から画像データが入力されるスキャナＩ／Ｆ１０８と、プリンタ部１０７へ画像データを出力するプリンタＩ／Ｆ１０６とを有する。動的部分再構成部１３１の画像処理部Ａ１３２、画像処理部Ｂ１３３、画像処理部Ｃ１３４、スキャナＩ／Ｆ１０８、及びプリンタＩ／Ｆ１０６はそれぞれ、処理される画像データを転送するための画像バス１２１に接続される。
【００１９】
また、ＦＰＧＡ１４０は、ネットワークＩ／Ｆ１０２を介し、ネットワーク（不図示）に接続され、ネットワーク上の汎用コンピュータ（不図示）と通信（データの送受信）を行う。また、ＦＰＧＡ１４０は、ＲＯＭ  Ｉ／Ｆ１１２を有する。ＲＯＭ  Ｉ／Ｆ１１２は、ＲＯＭ１０４への書き込み、読み出し動作を制御する。ＦＰＧＡ１４０において、ＣＰＵ１０１、ネットワークＩ／Ｆ１０２、操作部１０３、ＲＯＭ  Ｉ／Ｆ１１２、コンフィグコントローラ１３０、および動的部分再構成部１３１は、システムバス１２０介して相互に接続される。
【００２０】
ＣＰＵ１０１は、動的部分再構成部１３１内にコンフィギュレーションされた各画像処理部（画像処理部Ａ１３２、Ｂ１３３、Ｃ１３４）と、スキャナＩ／Ｆ１０８、プリンタＩ／Ｆ１０６のパラメータ設定を、システムバス１２０を介して行う。更に、ＦＰＧＡ１４０は、メモリコントローラ１１０を有する。メモリコントローラ１１０は、ＲＡＭ１１１への書き込み、読み出し動作を制御する。メモリコントローラ１１０は、システムバス１２０および画像バス１２１に接続される。メモリコントローラ１１０は、画像バス１２１に接続されたバスマスタからのＲＡＭ１１１へのアクセスと、システムバス１２０に接続されたバスマスタからのＲＡＭ１１１へのアクセスとを、排他的に切り替える。
【００２１】
［画像処理回路の構成例］
次に、図２〜図５を用いて、本実施形態の画像処理装置における動的部分再構成部１３１に構成される画像処理機能の再構成の例を説明する。
【００２２】
図２は、動的部分再構成部１３１に含まれる再構成可能な各画像処理部の論理回路構成を示す。画像処理部Ａ１３２は、データ処理部Ａ３２１と、パラメータ保持部Ａ３２２とから構成される。データ処理部Ａ３２１は、画像バス１２１に接続され、画像データに対する画像処理を行う。パラメータ保持部Ａ３２２は、システムバス１２０に接続され、ＣＰＵ１０１により設定されるデータ処理部Ａ３２１の動作や処理内容を決定するパラメータ係数を保持する。パラメータ保持部Ａ３２２は、内部に保持するデータ処理部Ａ３２１の動作や処理内容を示すパラメータ値をデータ処理部Ａ３２１に渡すように構成される。また、画像処理部Ｂ１３３および画像処理部Ｃ１３４に関しても、画像処理部Ａ１３２と同様の構成である。
【００２３】
図３は、ＲＯＭ１０４に格納される各画像処理機能に対応して定義されたコンフィギュレーションデータを示す。各画像処理機能は、データ処理部とパラメータ保持部の２つの論理回路により実現されるため、各論理回路に対応したコンフィギュレーションデータが用意される。
【００２４】
コンフィギュレーションデータ４００、４１０、４２０は、スキャン画像処理、コピー用画像処理、プリント画像処理のそれぞれに対応するデータ処理部のコンフィグレーションデータである。また、コンフィギュレーションデータ４０１、４１１、４１２、４２１、４２２はそれぞれ、スキャン画像処理、コピー用画像処理（カラー／モノクロ）、プリント画像処理（カラー／モノクロ）に対応するパラメータ保持部のコンフィギュレーションデータである。
【００２５】
パラメータ保持部は、ジョブおよび処理機能毎にパラメータ値が共通する固定となるものに関しては、ＣＰＵ１０１により設定する構成ではなく、ジョブおよび処理機能毎の固定値のパラメータを保持する構成となる。ただし、スキャナ部１０９やプリンタ部１０７に関しては、ＬＥＤ光量変動などのデバイス経年変化や温度条件などの動作中の使用状況により、読み取り画像や印刷画像にばらつきが出てしまう。したがって、動作させる状況に応じてパラメータ値を変更することで対応してもよい。このようなデバイス特性に合わせた画像処理部に関しては、従来のＣＰＵ１０１により設定可能なパラメータ保持部を構成する。
【００２６】
図４は、画像処理装置で実行可能なカラーコピージョブとモノクロコピージョブ実行時の画像処理部Ａ１３２、Ｂ１３３、Ｃ１３４におけるデータ処理部とパラメータ保持部に構成される内容を説明するための表である。
【００２７】
画像処理部Ａ１３２の機能として、スキャナ部１０９のデバイス特性によるスキャナ画像のばらつきを補正するテーブル変換処理等が挙げられる。同様に、画像処理部Ｂ１３３の機能として、フィルタ処理やＲＧＢデータをＣＭＹＫデータへ変換する色変換処理等のコピー用画像処理が挙げられる。同様に、画像処理部Ｃ１３４の機能として、入力画像データを所定の閾値と比較することによりＮ値化を行うハーフトーン処理等が挙げられる。これらの画像処理部は、例えば、カラーコピーやモノクロコピー等のジョブ毎にパラメータ値を変更することでジョブ毎に最適な処理結果を得ることが可能となる。
【００２８】
コピージョブの場合、画像処理部Ａ１３２、Ｂ１３３、Ｃ１３４を順に処理することで実行される。なお、本実施形態ではカラーコピーおよびモノクロコピーを例に説明しているが、画像処理装置１００が処理することができるジョブは、これに限定されるものではない。また、画像処理の単位に関しても、図４に示すものに限定するものではなく、各画像処理に含まれている処理を、更に細かい粒度に分割して構成してもよい。
【００２９】
本実施形態において、画像処理部Ａ１３２のスキャン画像処理は、ＣＰＵ１０１によるパラメータ設定を行い、画像処理部Ｂ１３３および画像処理部Ｃ１３４は、ジョブによりパラメータ値が固定となる場合を例に挙げて説明する。
【００３０】
図５は、コピージョブにおけるフィルタ処理用の係数およびパラメータ値を示す。本実施形態では、５ｘ５のマトリクスフィルタを例に挙げて説明する。図５に示すマトリクスフィルタは９個の係数（ｃ０〜ｃ８）を持ち、図５（ａ）に示すように配置される。ここで、係数ｃ０は注目画素に対応する係数であり、注目画素を中心に周囲２４画素の画素値に対して図５（ａ）に示される係数値のたたみ込み演算を行うものとする。また、図５（ｂ）は、カラーコピージョブおよびモノクロコピージョブにおける各係数値を示す。本実施形態では、カラースキャン時にはパラメータ値５０１に示すフィルタ係数を用いてフィルタ処理を行い、モノクロスキャン時にはパラメータ値５０２に示すフィルタ係数を用いてフィルタ処理を行う。この場合、パラメータ保持部Ｂ３３２に構成される回路は、ＣＰＵ１０１からパラメータ設定を行うための回路やＣＰＵ１０１から設定されたパラメータ値を保持する論理回路を構成する必要はない。つまり、パラメータ保持部Ｂ３３２に構成される回路は、図５（ｂ）に示される固定値としてのフィルタ係数値（ｃ０〜ｃ８）のみを出力する論理回路であればよい。
【００３１】
［再構成制御フロー］
本実施形態に係る画像処理装置の動的部分再構成部１３１の再構成の手順の一例を図６〜図８のフローチャートに示す。なお、本フローチャートはコピージョブ時のものであり、各手順はＣＰＵ１０１により実行される。したがって、ジョブの種類が異なる場合には、以下に示すフローは、そのジョブの種類に応じて修正される。また、本実施形態において、上述したように、画像処理部Ａ１３２に構成されるスキャン画像処理のパラメータ保持部はＣＰＵ１０１によるパラメータ設定を行う構成とする。一方、画像処理部Ｂ１３３、Ｃ１３４に構成されるコピー用画像処理およびプリント画像処理のパラメータ保持部は固定値のパラメータを持つ構成とする。なお、図６〜図８において、破線は処理主体間のデータの送受信を示す。
【００３２】
まず、図６を用いて、コピージョブ時における、データ処理部Ａ３２１、Ｂ３３１、Ｃ３４１の再構成完了までのフローについて説明する。Ｓ６００にて、ＣＰＵ１０１は、操作部１０３からのコピージョブ実行要求があるか否かを判定し、コピージョブ要求を受けた場合（Ｓ６００にてＹＥＳ）、Ｓ６０１に進む。Ｓ６０１にて、ＣＰＵ１０１は、コピージョブに必要な画像処理機能を構成する論理回路のデータ処理部の再構成が必要か否かを判定する。本実施形態でのコピージョブの前にすでにコピージョブが実行されており、コピージョブ用の論理回路がデータ処理部Ａ３２１、Ｂ３３１、Ｃ３４１にすでに構成されている場合、再構成は不要と判定される（Ｓ６０１にてＮＯ）。この場合、ＣＰＵ１０１は、データ処理部の再構成処理を完了し、図７に示すＳ６０５に進む。一方、データ処理部Ａ、Ｂ、Ｃにコピージョブ用の論理回路が構成されていない場合は（Ｓ６０１にてＹＥＳ）、Ｓ６０２に進む。
【００３３】
Ｓ６０２にて、ＣＰＵ１０１は、コピージョブに必要な画像処理機能を構成する論理回路のデータ処理部の再構成を行うために、データ処理部Ａ３２１のコンフィギュレーションデータ４００の情報を要求と共にコンフィグコントローラ１３０に通知する。この通知に起因して、コンフィグコントローラ１３０によるデータ処理部の再構成処理が開始される。
【００３４】
Ｓ６３０にて、コンフィグコントローラ１３０は、ＣＰＵ１０１からデータ処理部の再構成要求（Ｓ６０２）があるまで待機し、データ処理部に対する再構成要求を受け付けると（Ｓ６３０にてＹＥＳ）、Ｓ６３１へ進む。Ｓ６３１にて、コンフィグコントローラ１３０は、ＣＰＵ１０１からの通知に従い、ＲＯＭ１０４に格納されたスキャン画像処理のデータ処理部Ａのコンフィギュレーションデータ４００を読み出し、データ処理部Ａ３２１への書き込みを行う。
【００３５】
Ｓ６３２にて、コンフィグコントローラ１３０は、データ処理部Ａ３２１の再構成が完了するまで待機し、完了すると（Ｓ６３２にてＹＥＳ）、Ｓ６３３に進む。Ｓ６３３にて、コンフィグコントローラ１３０は、ＣＰＵ１０１に対してデータ処理部の再構成が完了したことを通知する。これにより、コンフィグコントローラ１３０側のデータ処理部の再構成に係る処理は完了する。
【００３６】
Ｓ６０３にて、ＣＰＵ１０１は、コンフィグコントローラ１３０からの再構成完了の通知を受け付けたか否かを判定する。再構成完了通知があるまで待機し、再構成完了通知を受け付けると（Ｓ６０３にてＹＥＳ）、Ｓ６０４へ進む。Ｓ６０４にて、ＣＰＵ１０１は、全てのデータ処理部に対する再構成が完了したかを判定する。全ての再構築が完了していない場合は（Ｓ６０４にてＮＯ）Ｓ６０２へ進み、データ処理部の再構築を繰り返す。全ての再構築が完了した場合は（Ｓ６０４にてＹＥＳ）、図７のフローチャートに示すＳ６０５へ進む。
【００３７】
本例では、データ処理部Ａ３２１の再構築の後、データ処理部Ｂ３３１およびデータ処理部Ｃ３４１の再構成を行うために、ＣＰＵ１０１およびコンフィグコントローラ１３０は、Ｓ６０２〜Ｓ６０４およびＳ６３０〜Ｓ６３３の処理を繰り返す。この場合、ＲＯＭ１０４に格納されたコピー用画像処理を行うためのデータ処理部Ｂ３３１のコンフィギュレーションデータ４１０とプリント画像処理を行うためのデータ処理部Ｃ３４１のコンフィグレーションデータ４２０を用いて再構成が行われる。
【００３８】
次に、図７を用いて、コピージョブ時における、パラメータ保持部Ａ３２２、Ｂ３３２、Ｃ３４２の再構成完了までのフローについて説明する。Ｓ６０５にて、ＣＰＵ１０１は、パラメータ保持部に保持されるパラメータ値がジョブの種類毎に固定されるもの（固定値）か否かを判定する。パラメータ値がジョブ毎に固定値でなく、ＣＰＵ１０１によるパラメータ保持部への設定が必要な場合（Ｓ６０５にてＮＯ）Ｓ６０７に進む。一方、ジョブの種類によりパラメータ値が固定される場合（Ｓ６０５にてＹＥＳ）Ｓ６０６に進む。
【００３９】
Ｓ６０６にて、ＣＰＵ１０１は、コピージョブがカラーコピージョブかモノクロコピージョブかを判定する。カラーコピージョブの場合は（Ｓ６０６にてＹＥＳ）、Ｓ６０８に進み、モノクロコピージョブの場合は（Ｓ６０６にてＮＯ）、Ｓ６０９に進む。
【００４０】
Ｓ６０７にて、ＣＰＵ１０１は、パラメータ保持部Ａ３２２に、スキャン画像処理のパラメータ保持部の論理回路を構成させる。この際、ＣＰＵ１０１は、ＲＯＭ１０４に格納されているパラメータ保持部のコンフィギュレーションデータ４０１の情報を要求と共にコンフィグコントローラ１３０に通知する。この通知に起因して、コンフィグコントローラ１３０によるパラメータ保持部の再構成処理が開始される。
【００４１】
Ｓ６０８にて、ＣＰＵ１０１は、パラメータ保持部Ｂ３３２、Ｃ３４２にカラーコピー用画像処理のパラメータ値を保持するパラメータ保持部を構成させる。この際、ＣＰＵ１０１は、ＲＯＭ１０４に格納されているコンフィギュレーションデータ４１１、４２１の情報を要求と共にコンフィグコントローラ１３０に通知する。この通知に起因して、コンフィグコントローラ１３０によるパラメータ保持部の再構成が開始される。
【００４２】
Ｓ６０９にて、ＣＰＵ１０１は、パラメータ保持部Ｂ３３２、Ｃ３４２にモノクロコピー用画像処理のパラメータ値を保持するパラメータ保持部を構成させる。この際、ＣＰＵ１０１は、ＲＯＭ１０４に格納されているコンフィギュレーションデータ４１２、４２２の情報を要求と共にコンフィグコントローラ１３０に通知する。この通知に起因して、コンフィグコントローラ１３０によるパラメータ保持部の再構成が開始される。
【００４３】
Ｓ６４０にて、コンフィグコントローラ１３０は、ＣＰＵ１０１からパラメータ保持部の再構成要求（Ｓ６０７〜Ｓ６０９）があるまで待機し、パラメータ保持部に対する再構成要求を受け付けると（Ｓ６４０にてＹＥＳ）Ｓ６４１へ進む。Ｓ６４１にて、コンフィグコントローラ１３０は、ＣＰＵ１０１からの通知に従い、ＲＯＭ１０４に格納されたパラメータ保持部のコンフィギュレーションデータ（４０１、４１１、４１２、４２１、４２２）を読み出し、パラメータ保持部への書き込みを行う。
【００４４】
Ｓ６４２にて、コンフィグコントローラ１３０は、パラメータ保持部の再構成が完了するまで待機し、完了すると（Ｓ６４２にてＹＥＳ）、Ｓ６４３に進む。Ｓ６４３にて、コンフィグコントローラ１３０は、ＣＰＵ１０１に対してパラメータ保持部の再構成が完了したことを通知する。
【００４５】
Ｓ６１０にて、ＣＰＵ１０１は、コンフィグコントローラ１３０からの再構成完了の通知を受け付けたか否かを判定する。再構成完了通知があるまで待機し、再構成完了通知を受け付けた場合（Ｓ６１０にてＹＥＳ）Ｓ６１１へ進む。Ｓ６１１にて、ＣＰＵ１０１は、全てのパラメータ保持部に対する再構成が完了したか否かを判定する。全てのパラメータ保持部の再構築が完了していない場合は（Ｓ６１１にてＮＯ）Ｓ６０５へ進み、再構築を繰り返す。全ての再構築が完了した場合は（Ｓ６１１にてＹＥＳ）Ｓ６１２に進む。
【００４６】
Ｓ６１２にて、ＣＰＵ１０１は、再構成が完了し、パラメータ設定が必要なパラメータ保持部に対して、ジョブに応じたパラメータ値の設定を開始する。Ｓ６１３にて、ＣＰＵ１０１は、パラメータ設定が必要なパラメータ保持部に対して、全てのパラメータ値設定が完了したか否かを判定する。パラメータ設定値設定が完了していない場合は（Ｓ６１３にてＮＯ）待機し、パラメータ設定が完了した場合は（Ｓ６１３にてＹＥＳ）図８のフローチャートに示すＳ６１４に進む。
【００４７】
次に、図８を用いて、コピージョブ時における、コピー動作のフローについて説明する。Ｓ６１４にて、ＣＰＵ１０１は、スキャナ部１０９に対して原稿読み込み開始の指示を行う。スキャナ部１０９で読みとられた原稿画像は、スキャナＩ／Ｆ１０８から取り込まれ、画像バス１２１およびメモリコントローラ１１０を介してＲＡＭ１１１に格納される。
【００４８】
Ｓ６１５にて、ＣＰＵ１０１は、Ｓ６１４にて取りこまれた画像データが、画像処理部Ａ１３２に構成されたスキャン画像処理を行うために必要な所定量よりも取りこまれたか否かを判定する。スキャン画像処理を行うために必要な画像データが取り込まれた場合（Ｓ６１５にてＹＥＳ）、Ｓ６１６に進む。Ｓ６１６にて、ＣＰＵ１０１は、スキャン画像処理開始の指示を画像処理部Ａ１３２に対して行う。画像処理部Ａ１３２は、ＣＰＵ１０１の指示に従って、ＲＡＭ１１１に格納された画像データを読み出し、パラメータ保持部Ａ３２２のパラメータ値を用いてスキャン画像処理を行う。その後、画像処理部Ａ１３２は、画像処理後の画像データをＲＡＭ１１１に格納する。
【００４９】
Ｓ６１７にて、ＣＰＵ１０１は、Ｓ６１６にて画像処理部Ａ１３２により処理された画像データに関し、画像処理部Ｂ１３３に構成されたコピー用画像処理を行うために必要な所定量が存在するか否かを判定する。コピー用画像処理を行うために必要な画像データが存在する場合（Ｓ６１７にてＹＥＳ）、Ｓ６１８に進む。Ｓ６１８にて、ＣＰＵ１０１は、コピー用画像処理開始の指示を画像処理部Ｂ１３３に対して行う。画像処理部Ｂ１３３は、ＣＰＵ１０１の指示に従って、ＲＡＭ１１１に格納された画像データを読み出し、パラメータ保持部Ｂ３３２のパラメータ値を用いてコピー用画像処理を行う。その後、画像処理部Ｂ１３３は、画像処理後の画像データをＲＡＭ１１１に格納する。
【００５０】
Ｓ６１９にて、ＣＰＵ１０１は、Ｓ６１８にて画像処理部Ｂ１３３により処理された画像データに関し、画像処理部Ｃ１３４に構成されたプリント画像処理を行うために必要な所定量が存在するか否かを判定する。プリント画像処理を行うために必要な画像データが存在する場合（Ｓ６１９にてＹＥＳ）、Ｓ６２０に進む。Ｓ６２０にて、ＣＰＵ１０１は、プリント画像処理開始の指示を画像処理部Ｃ１３４に対して行う。画像処理部Ｃ１３４は、ＣＰＵ１０１の指示に従って、ＲＡＭ１１１に格納された画像データを読み出し、パラメータ保持部Ｃ３４２のパラメータ値を用いてプリント画像処理を行う。その後、画像処理部Ｃ１３４は、画像処理後の画像データをＲＡＭ１１１に格納する。
【００５１】
Ｓ６２１にて、ＣＰＵ１０１は、Ｓ６２０にて画像処理部Ｃ１３４により処理された画像データに関し、プリンタ部１０７での印刷を開始するために必要な所定量が存在し、プリンタ部１０７が印刷可能状態であるか否かを判定する。プリンタ部１０７が印刷可能である場合（Ｓ６２１にてＹＥＳ）、Ｓ６２２へ進む。
【００５２】
Ｓ６２２にて、ＣＰＵ１０１は、プリンタＩ／Ｆ１０６およびプリンタ部１０７に対して印刷開始の指示を行い、ＲＡＭ１１１に格納された画像データの転送を開始する。Ｓ６２３にて、ＣＰＵ１０１は、プリンタ部１０７での印刷が完了したか否かを判定する。印刷が完了すると（Ｓ６２３にてＹＥＳ）、Ｓ６２４へ進む。Ｓ６２４にて、ＣＰＵ１０１は、スキャナ部１０９で読みとる原稿が全て完了したか否かを判定する。次にコピーする原稿がある場合（Ｓ６２４にてＮＯ）Ｓ６１４へ戻り、コピー処理を繰り返す。全ての原稿に対するコピー処理が完了した場合（Ｓ６２４にてＹＥＳ）、本処理フローを完了する。
【００５３】
以上、動的部分再構成部１３１のパラメータ保持部Ｂ３３２、Ｃ３４２に対して再構成を行う場合、選択されたジョブや機能に対応するコンフィギュレーションデータを用いてパラメータ保持部の再構成を行う。ここで、パラメータ保持部の構成をジョブや機能毎に固定化されたパラメータ値を持つコンフィギュレーションデータが、複数保持される。この構成により、ＣＰＵ１０１によるパラメータ設定が不要となるため、画像処理の開始を早めることが可能となる。このことを、図９を参照して説明する。
【００５４】
［処理時間の比較説明］
図９は、動的部分再構成部１３１の状態およびＣＰＵ１０１による画像処理部Ａ、Ｂ、Ｃに対するパラメータ設定の時間的な遷移の概念を表すタイムチャートである。図９では、横軸に時間の経過を示す。図９（ａ）は、従来の画像処理部の再構成後にＣＰＵ１０１によるパラメータ設定を行う場合のタイムチャートである。図９（ｂ）は、本実施形態に係るパラメータ値を固定にしたパラメータ保持部を用いて再構成する方法のタイムチャートである。
【００５５】
図９（ａ）に示すように、従来方式では、はじめに動的部分再構成部１３１の画像処理部Ａ、Ｂ、Ｃの再構成を行う。この再構成に要する時間は、画像処理部Ａ、Ｂ、Ｃの回路規模、言い換えれば画像処理部Ａ、Ｂ、Ｃの回路情報のデータ量にほぼ比例する。そして、画像処理部Ａ、Ｂ、Ｃ全部の再構成が完了すると、画像処理部Ａ、Ｂ、Ｃに対するパラメータ設定が行われる。その後、画像処理を開始する。
【００５６】
ここで、画像処理部Ａ１３２、Ｂ１３３、Ｃ１３４のデータ処理部Ａ３２１、Ｂ３３１、Ｃ３４１に対する再構成に掛かる時間をＴｒｄ（ａ）とする。また、パラメータ保持部Ａ３２２、Ｂ３３２、Ｃ３４２の再構成に掛かる時間をそれぞれＴｒｐＡ（ａ）、ＴｒｐＢ（ａ）、ＴｒｐＣ（ａ）とする。また、画像処理部Ａ１３２、Ｂ１３３、Ｃ１３４のパラメータ設定に掛かる時間をＴｓ（ａ）とする。この場合において、従来の方式では、画像処理を開始するまでに、Ｔｒｄ（ａ）＋ＴｒｐＡ（ａ）＋ＴｒｐＢ（ａ）＋ＴｒｐＣ（ａ）＋Ｔｓ（ａ）の時間を要することとなる。
【００５７】
一方、本実施形態の方式では、図９（ｂ）に示すように、はじめにデータ処理部の再構成を行う。データ処理部の再構成に掛かる時間をＴｒｄ（ｂ）とする。Ｔｒｄ（ｂ）に掛かる時間は、上記のＴｒｄ（ａ）と同じである。次に、パラメータ保持部の再構成において、パラメータ保持部Ａ３２２、Ｂ３３２、Ｃ３４２それぞれに掛かる時間をそれぞれＴｒｐＡ（ｂ）、ＴｒｐＢ（ｂ）、ＴｒｐＣ（ｂ）とする。本実施形態では、パラメータ保持部Ａは、ＣＰＵ１０１によるパラメータ設定を行う回路を再構成するため、ＴｒｐＡ（ｂ）は、図９（ａ）のパラメータ保持部Ａの再構成に掛かる時間ＴｒｐＡ（ａ）と同じである。パラメータ保持部Ｂ、Ｃに関しては、ＣＰＵ１０１によるパラメータ設定を行う構成ではなくパラメータ値がすでに保持された回路構成である。そのため、ＣＰＵ１０１から設定するためのインターフェース回路および設定値を保持するための回路は必要なく、固定値のみを保持する回路構成となる。その結果、構成される回路のデータ量が少なくなる。前述の通り、再構成に要する時間は回路規模（回路情報）のデータ量にほぼ比例する。したがって、ＴｒｐＢ（ｂ）、ＴｒｐＣ（ｂ）の再構成に掛かる時間は、それぞれＴｒｐＢ（ａ）、ＴｒｐＣ（ａ）よりも短くなる（ＴｒｐＢ（ｂ）＜ＴｒｐＢ（ａ）、ＴｒｐＣ（ｂ）＜ＴｒｐＣ（ａ））。
【００５８】
また、本実施形態でのＣＰＵ１０１によるパラメータ設定に掛かる時間をＴｓ（ｂ）とする。パラメータ保持部Ｂ３３２、Ｃ３４２に関しては、パラメータ値がすでに保持された回路をパラメータ保持部に構成しているため、ＣＰＵ１０１によるパラメータ設定は必要ない。そのため、Ｔｓ（ｂ）に掛かる時間はパラメータ保持部Ａ３２２に関する時間だけとなり、図９（ａ）のＴｓ（ａ）に比べて短時間でパラメータ設定が完了することができる（Ｔｓ（ｂ）＜Ｔｓ（ａ））。その結果、画像処理の開始を従来に比較して早く始めることが可能となる。
【００５９】
本実施形態においては、画像処理部Ａ、Ｂ、Ｃのデータ処理部の再構成が完了した後にパラメータ保持部の再構成を行い、全ての回路の再構成が完了してからパラメータ設定を行うフローを例として説明した。しかし、データ処理部およびパラメータ保持部の再構成の順番をこれに制限するものではない。また、ＣＰＵ１０１によるパラメータ設定に関しても、対象のパラメータ保持部の再構成が完了した時点で開始しても構わない。
【００６０】
以上、本願発明により、動的部分再構成部を有する画像処理装置において、ＣＰＵによるパラメータ設定の時間を短縮し、画像処理の開始を早くすることが可能となる。
【００６１】
＜その他の実施形態＞
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施例の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
2015149025.tif 000003
【図２】
2015149025.tif 000004
【図３】
2015149025.tif 000005
【図４】
2015149025.tif 000006
【図５】
2015149025.tif 000007
【図６】
2015149025.tif 000008
【図７】
2015149025.tif 000009
【図８】
2015149025.tif 000010
【図９】
2015149025.tif 000011