(57)【要約】【課題】動的部分再構成が可能な回路により画像処理を行う画像処理装置において、ジョブの実行が指示されてから処理を開始するまでの時間をより短くする技術を提供する。【解決手段】画像処理装置１００は、一部の回路構成を動的に再構成可能な再構成可能回路として、動的再構成部１３１を備える。ＲＯＭ１０４には、それぞれ異なるジョブに対応する、動的再構成部１３１を再構成するための複数の回路構成データ（コンフィグデータ）が予め格納される。画像処理装置１００にユーザがログインすると、ＣＰＵ１０１は、ＲＯＭ１０４に格納された複数のコンフィグデータのうちで、当該ユーザによって実行が指示される可能性が最も高いジョブに対応するコンフィグデータを決定し、決定したコンフィグデータをＲＯＭ１０４から読み出して動的再構成部１３１を再構成するよう、コンフィグコントローラ１３０を制御する。【選択図】図１
2015198405.tif 000002
【特許請求の範囲】
【請求項１】
画像処理装置であって、
一部の回路構成を動的に再構成可能な再構成可能回路と、
前記一部の回路構成を再構成するための複数の回路構成データであって、それぞれ異なるジョブに対応する前記複数の回路構成データが予め格納された第１の記憶手段と、
ユーザが前記画像処理装置にログインすると、当該ユーザについての前記複数の回路構成データの使用履歴に基づいて、前記複数の回路構成データのうちで、当該ユーザによって実行が指示される可能性が最も高いジョブに対応する第１の回路構成データを決定する決定手段と、
前記決定手段によって決定された前記第１の回路構成データを前記第１の記憶手段から読み出して前記再構成可能回路を再構成するよう制御する制御手段と
を備えることを特徴とする画像処理装置。
【請求項２】
前記制御手段は、前記ログインしたユーザによってジョブの実行が指示される前に、前記決定手段によって決定された前記第１の回路構成データを前記第１の記憶手段から読み出して前記再構成可能回路を再構成するよう制御する
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記ログインしたユーザからジョブの実行指示を受け付ける指示手段、を更に備え、
前記制御手段は、前記実行指示に対応するジョブを、前記第１の回路構成データを用いて前記再構成可能回路に構成されている回路構成で実行可能でなければ、当該ジョブを実行するための回路構成に対応する回路構成データを前記第１の記憶手段から読み出して前記再構成可能回路を再構成するよう制御する
ことを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
前記決定手段は、前記複数の回路構成データのうちで、前記ログインしたユーザによる使用頻度が最も高い回路構成データを、前記第１の回路構成データに決定する
ことを特徴とする請求項１から３のいずれか１項に記載の画像処理装置。
【請求項５】
前記ログインしたユーザからジョブの実行指示を受け付ける指示手段と、
格納されているデータを前記第１の記憶手段よりも高速に読み出し可能な第２の記憶手段と、を更に備え、
前記決定手段は、前記第１の回路構成データと、前記ログインしたユーザによって実行が指示される可能性が２番目に高いジョブを実行するための回路構成に対応する第２の回路構成データとを決定し、前記第１の記憶手段に格納されている前記第２の回路構成データの複製データを前記第２の記憶手段に格納し、
前記制御手段は、前記実行指示に対応するジョブを、前記第１の回路構成データを用いて前記再構成可能回路に構成されている回路構成で実行可能でない場合、当該ジョブを実行するための回路構成に対応する回路構成データが前記第２の記憶手段に格納されているときは前記第２の記憶手段から、当該回路構成データが前記第２の記憶手段に格納されていないときは前記第１の記憶手段から、当該回路構成データを読み出して前記再構成可能回路を再構成するよう制御する
ことを特徴とする請求項１または２に記載の画像処理装置。
【請求項６】
前記決定手段は、前記複数の回路構成データのうちで、前記ログインしたユーザによる使用頻度が最も高い及び２番目に高い回路構成データを、前記第１及び第２の回路構成データにそれぞれ決定する
ことを特徴とする請求項５に記載の画像処理装置。
【請求項７】
前記制御手段は、前記決定手段によって決定された前記第１の回路構成データに対応する回路構成が既に前記再構成可能回路に構成されていれば、前記第１の回路構成データによる前記再構成可能回路の再構成を実行せずに、前記ログインしたユーザによってジョブの実行が指示されるまで待機する
ことを特徴とする請求項１から６のいずれか１項に記載の画像処理装置。
【請求項８】
前記制御手段は、前記ログインしたユーザによる、前記複数の回路構成データのそれぞれの使用頻度の総和が所定の閾値よりを下回っていれば、前記第１の回路構成データによる前記再構成可能回路の再構成を実行せずに、前記ログインしたユーザによってジョブの実行が指示されるまで待機する
ことを特徴とする請求項１から７のいずれか１項に記載の画像処理装置。
【請求項９】
前記決定手段は、前記第１の回路構成データと、前記ログインしたユーザによって実行が指示される可能性が２番目に高いジョブを実行するための回路構成に対応する第２の回路構成データとを決定し、
前記制御手段は、
前記ログインしたユーザによる前記第１及び第２の回路構成データの使用頻度の差分が所定の閾値を下回っていれば、前記第１及び第２の回路構成データのうちで、回路規模の大きい回路構成に対応する回路構成データによって前記再構成可能回路を再構成するよう制御する
ことを特徴とする請求項１から７のいずれか１項に記載の画像処理装置。
【請求項１０】
画像処理装置であって、
一部の回路構成を動的に再構成可能な再構成可能回路と、
前記一部の回路構成を再構成するための複数の回路構成データであって、それぞれ異なるジョブに対応する前記複数の回路構成データが予め格納された記憶手段と、
ユーザが前記画像処理装置にログインすると、当該ユーザが指示したジョブの実行による、前記画像処理装置における経費の使用履歴に基づいて、前記記憶手段に格納されている前記複数の回路構成データの一部の使用を制限する制限手段と、
前記複数の回路構成データのうちで、前記制限手段によって使用が制限されていない回路構成データを前記記憶手段から読み出して前記再構成可能回路を再構成するよう制御する制御手段と
を備えることを特徴とする画像処理装置。
【請求項１１】
前記制限手段は、前記ログインしたユーザによる前記画像処理装置における使用経費が所定の閾値より上回っていれば、相対的に使用経費が大きくなる回路構成データの使用を制限することを特徴とする請求項１０に記載の画像処理装置。
【請求項１２】
一部の回路構成を動的に再構成可能な再構成可能回路と、前記一部の回路構成を再構成するための複数の回路構成データであって、それぞれ異なるジョブに対応する前記複数の回路構成データが予め格納された記憶手段と、を備える画像処理装置の制御方法であって、
ユーザが前記画像処理装置にログインすると、当該ユーザについての前記複数の回路構成データの使用履歴に基づいて、前記複数の回路構成データのうちで、当該ユーザによって実行が指示される可能性が最も高いジョブに対応する第１の回路構成データを決定する決定工程と、
前記決定工程で決定された前記第１の回路構成データを前記第１の記憶手段から読み出して前記再構成可能回路を再構成するよう制御する制御工程と
を含むことを特徴とする画像処理装置の制御方法。
【請求項１３】
一部の回路構成を動的に再構成可能な再構成可能回路と、前記一部の回路構成を再構成するための複数の回路構成データであって、それぞれ異なるジョブに対応する前記複数の回路構成データが予め格納された記憶手段と、を備える画像処理装置の制御方法であって、
ユーザが前記画像処理装置にログインすると、当該ユーザが指示したジョブの実行による、前記画像処理装置における経費の使用履歴に基づいて、前記記憶手段に格納されている前記複数の回路構成データの一部の使用を制限する制限工程と、
前記複数の回路構成データのうちで、前記制限工程で使用が制限されていない回路構成データを前記記憶手段から読み出して前記再構成可能回路を再構成するよう制御する制御工程と
を含むことを特徴とする画像処理装置の制御方法。
【請求項１４】
請求項１から１１のいずれか１項に記載の画像処理装置としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置及びその制御方法、並びにプログラムに関するものである。
【背景技術】
【０００２】
論理回路の構成を変更可能なＰＬＤ（Programmable Logic Device）やＦＰＧＡ（Field Programmable Gate Array）等の再構成可能回路が良く知られている。一般的に、ＰＬＤやＦＰＧＡの論理回路の変更は、起動時に、ＲＯＭ等の不揮発性メモリに格納された回路構成情報（回路構成データ）を、ＰＬＤやＦＰＧＡ内部の揮発性メモリであるコンフィギュレーションメモリへ書き込むことで実現される。また、コンフィギュレーションメモリの情報は電源遮断時にクリアされるため、電源投入時に、再度、ＲＯＭに記憶している回路構成情報をコンフィギュレーションメモリに書き込む必要がある。このように、電源が供給されている状態で、一度だけＰＬＤやＦＰＧＡの論理回路を構成する方法を静的再構成という。これに対して、論理回路が動作中に、その論理回路の構成を動的に変更できるＦＰＧＡ等が開発されており、このように動的に論理回路を変更する方法を動的再構成という。
【０００３】
またＦＰＧＡには、ＦＰＧＡのチップ全体の回路構成でなく、特定の領域の回路構成だけを書き換えることが可能なものがあり、このような書き換えを部分再構成という。特に、動作中の回路の動作を停止させずに、それ以外の他の回路構成を変更することを動的部分再構成という。動的部分再構成では、動的再構成時に、コンフィギュレーションメモリ全体を書き換えるのではなく、コンフィギュレーションメモリの一部の領域のみを書き換えることで、ＦＰＧＡの論理回路を部分的に再構成することができる。このような動的部分再構成を用いることで、例えばＦＰＧＡのある領域に、時分割で複数の論理回路を切り替えて実装できる。この結果、少ないハードウェアリソースで、用途に合わせた様々な機能を、ハードウェアによる高速の演算性能を保ったままで柔軟に実現できる。
【０００４】
このような動的に回路構成を変更（書き換え）可能なＦＰＧＡでは、一般に、回路構成の書き換えに要する時間は長く、その時間はコンフィギュレーションメモリに書き込まれる回路構成情報のサイズに比例する。そのため、従来から、回路構成の書き換えに要する時間を低減するための技術が提案されている。
【０００５】
例えば、特許文献１には、処理すべき画像の画像特徴を判定し、その画像特徴に対応する回路構成を再構成可能回路上に再構成する技術が開示されている。特許文献１では、回路構成の使用履歴に基づいて、使用される可能性がより高い回路構成を予測し、予測した回路構成に対応する回路構成データを予め回路構成メモリにロードしておく。更に、処理すべき画像について判定された画像特徴に対応する回路構成を再構成するための回路構成データが回路構成メモリにロードされていれば、その回路構成データを用いて再構成可能回路を再構成する。これにより、処理すべき画像の画像特徴を判定した後にその画像特徴に対応する回路構成を再構成可能回路上に再構成する場合よりも、処理の高速化を図っている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１２−２３４３３７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ＭＦＰ（Multi Function Printer）等の画像処理装置は、実行可能な複数の処理（コピージョブ、プリントジョブ、ＳＥＮＤジョブ等）のうちでユーザからの要求に応じて選択した画像処理を実行する。このような画像処理装置に特許文献１に記載のような技術を適用した場合、再構成可能回路の回路構成を、必要な画像処理に対応する回路構成に再構成するタイミングは、処理すべき画像の特徴を判定した後となる。即ち、使用する回路構成データが、回路構成の使用履歴に基づいてメモリに予めロードされていたとしても、再構成可能回路の再構成が行われるタイミングは、ジョブの実行が指示された後である。
【０００８】
しかし、上述のような画像処理装置において、ジョブの実行完了までのユーザの待ち時間をより短くするためには、ユーザによってジョブの実行が指示されてから、より早いタイミングに処理を開始できることが必要となる。
【０００９】
本発明は、上述の問題に鑑みてなされたものである。本発明は、動的部分再構成が可能な回路により画像処理を行う画像処理装置において、ジョブの実行が指示されてから処理を開始するまでの時間をより短くする技術を提供することを目的としている。
【課題を解決するための手段】
【００１０】
本発明は、例えば、画像処理装置として実現できる。本発明の一態様に係る画像処理装置は、一部の回路構成を動的に再構成可能な再構成可能回路と、前記一部の回路構成を再構成するための複数の回路構成データであって、それぞれ異なるジョブに対応する前記複数の回路構成データが予め格納された第１の記憶手段と、ユーザが前記画像処理装置にログインすると、当該ユーザについての前記複数の回路構成データの使用履歴に基づいて、前記複数の回路構成データのうちで、当該ユーザによって実行が指示される可能性が最も高いジョブに対応する第１の回路構成データを決定する決定手段と、前記決定手段によって決定された前記第１の回路構成データを前記第１の記憶手段から読み出して前記再構成可能回路を再構成するよう制御する制御手段とを備えることを特徴とする。
【００１１】
本発明の他の一態様に係る画像処理装置は、一部の回路構成を動的に再構成可能な再構成可能回路と、前記一部の回路構成を再構成するための複数の回路構成データであって、それぞれ異なるジョブに対応する前記複数の回路構成データが予め格納された記憶手段と、ユーザが前記画像処理装置にログインすると、当該ユーザが指示したジョブの実行による、前記画像処理装置における経費の使用履歴に基づいて、前記記憶手段に格納されている前記複数の回路構成データの一部の使用を制限する制限手段と、前記複数の回路構成データのうちで、前記制限手段によって使用が制限されていない回路構成データを前記記憶手段から読み出して前記再構成可能回路を再構成するよう制御する制御手段とを備えることを特徴とする。
【発明の効果】
【００１２】
本発明によれば、動的部分再構成が可能な回路により画像処理を行う画像処理装置において、ジョブの実行が指示されてから処理を開始するまでの時間をより短くすることが可能になる。
【図面の簡単な説明】
【００１３】
【図１】画像処理装置の構成例を示す図。
【図２】画像処理装置において動的再構成部の再構成のために用いられるデータベースの一例を示す図。
【図３】画像処理装置で実行可能なジョブで必要となる画像処理機能を実現するための画像処理部の回路構成例を示す図。
【図４】動的再構成部を用いてジョブを実行する手順を示すフローチャート。
【図５】第１の実施形態に係る、Ｓ１０４、Ｓ１０５及びＳ１１６における動的再構成部の再構成の手順を示すフローチャート。
【図６】操作部に表示される操作画面の一例を示す図。
【図７】第２の実施形態に係る、Ｓ１０４における動的再構成部の再構成の手順を示すフローチャート。
【図８】第３の実施形態に係る、Ｓ１０４における動的再構成部の再構成の手順を示すフローチャート。
【図９】第４の実施形態に係る、Ｓ１０４における動的再構成部の再構成の手順を示すフローチャート。
【発明を実施するための形態】
【００１４】
以下、本発明を実施するための形態について図面を用いて説明する。なお、以下の実施形態は特許請求の範囲に係る発明を限定するものでなく、また実施形態で説明されている特徴の組み合わせの全てが発明の解決手段に必須のものとは限らない。
【００１５】
［第１の実施形態］
＜画像処理装置の構成＞
図１は、第１の実施形態に係る画像処理装置１００の構成例を示すブロック図である。なお、本実施形態では、画像処理装置１００が、スキャナ部及びプリンタ部を有する複合機（多機能処理装置）である場合を例に説明する。
【００１６】
画像処理装置１００は、画像処理装置１００を使用するユーザが各種の操作を行うための操作部１０３と、原稿の画像情報を読み取るスキャナ部１０９と、画像データに基づいて用紙に画像を印刷するプリンタ部１０７とを有する。スキャナ部１０９は、スキャナ部１０９を制御するＣＰＵ（不図示）や原稿の読取を行うための照明ランプや走査ミラー（いずれも不図示）等を有する。プリンタ部１０７は、当該プリンタ部１０７の制御を行うＣＰＵ（不図示）や、画像の形成（印刷）や定着を行うための感光体ドラムや定着器（いずれも不図示）等を有する。
【００１７】
また、画像処理装置１００は、画像処理装置１００の制御を行うコントローラとして、動的再構成部を備えるＦＰＧＡ１４０を有する。この例では、ＦＰＧＡ１４０が、画像処理装置１００の動作を統括的に制御するＣＰＵ１０１を備える。このＣＰＵ１０１が、ＦＰＧＡ１４０や、再構成を制御するコンフィグコントローラ１３０等を制御するためのプログラムを実行する。尚、ＦＰＧＡ１４０がＣＰＵ１０１を備えていることはあくまで一例にすぎず、ＦＰＧＡ１４０の外部にＣＰＵを設けてもよい。
【００１８】
また、画像処理装置１００は、ＲＯＭ１０４及びＲＡＭ１１１を有する。ＲＯＭ１０４には、ＣＰＵ１０１が実行するブートプログラム、及び、動的再構成部１３１を構成する（コンフィギュレーションする）ための回路構成データ（コンフィギュレーションデータ）が格納されている。ＲＡＭ１１１は、ＣＰＵ１０１が動作するためのシステムワークメモリであり、かつ画像データを一時記憶するための画像メモリでもある。ＣＰＵ１０１は、ＲＯＭ１０４に格納された回路構成データの複製データをＲＡＭ１１１に格納するとともに、ＲＡＭ１１１から回路構成データを高速に読み出すことができる。
【００１９】
ＦＰＧＡ１４０は、ＣＰＵ１０１、ネットワークインタフェース（ネットワークＩ／Ｆ）１０２、プリンタＩ／Ｆ１０６、スキャナＩ／Ｆ１０８、メモリコントローラ１１０、ＲＯＭ Ｉ／Ｆ１１２、操作部Ｉ／Ｆ１１３、コンフィグコントローラ１３０、動的再構成部１３１、システムバス１２０、及び画像バス１２１を備える。ＣＰＵ１０１、ネットワークＩ／Ｆ１０２、操作部１０３、ＲＯＭ Ｉ／Ｆ１１２、コンフィグコントローラ１３０、及び動的再構成部１３１の各画像処理部１３２Ａ，１３２Ｂ，１３２Ｃは、システムバス１２０を介して相互に接続される。また、動的再構成部１３１の各画像処理部１３２Ａ，１３２Ｂ，１３２Ｃ、スキャナＩ／Ｆ１０８、及びプリンタＩ／Ｆ１０６は、画像バス１２１を介して相互に接続される。画像バス１２１は、処理される画像データを転送するために用いられる。なお、メモリコントローラ１１０は、システムバス１２０及び画像バス１２１の両方に接続される。
【００２０】
動的再構成部１３１は、回路構成（コンフィギュレーション）を動的に再構成可能（書き換え可能）であり、かつ、一部の回路構成を書き換え可能な再構成可能回路である。即ち、動的再構成部１３１の一部の回路が動作している間に、その回路が占める部分とは重ならない別の部分に別の回路を再構成することができる。動的再構成部１３１は、各種画像処理を行うための論理回路を部分的に再構成できる画像処理部１３２Ａ，１３２Ｂ，１３２Ｃを有する。なお、本実施形態では動的再構成部１３１に構成される画像処理部の数が３つの場合を示しているが、画像処理部の数は３つに限定されるものではない。コンフィグコントローラ１３０は、動的再構成部１３１の回路構成を制御し、ＣＰＵ１０１による制御に従って動的再構成部１３１を再構成する。なお、各画像処理部１３２Ａ，１３２Ｂ，１３２Ｃは、動的再構成部１３１（再構成可能回路）の一部に設けられる、画像処理を行う処理回路の一例である。
【００２１】
ＣＰＵ１０１は、画像処理装置１００の動作を統括的に制御する。また、ＣＰＵ１０１は、ネットワークＩ／Ｆ１０２を介して、ネットワーク上の汎用コンピュータ（不図示）と通信（送受信）を行う。ＲＯＭ Ｉ／Ｆ１１２は、ＲＯＭ１０４へのアクセス（ＲＯＭ１０４へのデータの書き込み及びＲＯＭ１０４からのデータの読み出し）を制御する。また、ＣＰＵ１０１は、動的再構成部１３１内に構成された各画像処理部１３２Ａ，１３２Ｂ，１３２Ｃに対するパラメータ設定を、システムバス１２０を介して行う。
【００２２】
操作部Ｉ／Ｆ１１３は、システムバス１２０と操作部１０３との間のインタフェースとして機能する。スキャナＩ／Ｆ１０８は、スキャナ部１０９から画像データが入力される。プリンタＩ／Ｆ１０６は、プリンタ部１０７へ画像データを出力する。メモリコントローラ１１０は、ＲＡＭ１１１へのデータの書き込み、ＲＡＭ１１１からのデータの読み出しを制御する。メモリコントローラ１１０は、システムバス１２０及び画像バス１２１に接続されている。メモリコントローラ１１０は、画像バス１２１に接続されたバスマスタからのＲＡＭ１１１へのアクセスと、システムバス１２０に接続されたバスマスタからのＲＡＭ１１１へのアクセスとを排他的に切り替える。
【００２３】
画像処理装置１００は、操作部１０３に接続された認証部１１５を更に有する。認証部１１５は、ユーザが画像処理装置１００に対してログインする際に、設定情報及び認証情報等の必要な情報を入力するために用いられる。例えば、ＲＦＩＤが用いられる場合、認証部１１５は、ＲＦＩＤ内に保持されているそれらの情報を読み取るためのＲＦＩＤリーダで構成される。ＣＰＵ１０１は、操作部１０３または認証部１１５を介して入力された設定情報及び認証情報等を、操作部Ｉ／Ｆ１１３及びシステムバス１２０を介して取得する。また、ＣＰＵ１０１は、ユーザが画像処理装置１００にログインする際に、取得した認証情報に基づいて当該ユーザの認証を行う。
【００２４】
＜使用履歴データベース＞
図２（Ａ）は、画像処理装置１００を使用するユーザごとの、回路構成データ（コンフィギュレーションデータ）の使用履歴に関する情報を格納した使用履歴データベースの一例を示す図である。画像処理装置１００は、ユーザごとのコンフィグデータの使用履歴に関する情報（履歴情報）を、図２（Ａ）に示すような使用履歴データベース（ＤＢ）２００として保持する。画像処理装置１００は、各ユーザの識別情報として、ユーザＩＤを使用し、各コンフィギュレーションデータ（以下、「コンフィグデータ」と省略して表記する。）の識別情報としてコンフィギュレーションデータＩＤ（以下、「コンフィグＩＤ」と省略して表記する。）を使用する。
【００２５】
画像処理装置１００は、ユーザごとのコンフィグデータの使用履歴として、各ユーザのユーザＩＤに対応付けて、各ユーザが使用したコンフィグデータのコンフィグＩＤ及び累積使用回数を保持する。図２（Ａ）に示すように、使用履歴ＤＢ２００は、ユーザＩＤフィールド２０１、コンフィグＩＤフィールド２０２、及び累積使用回数フィールド２０３を含む。ユーザＩＤフィールド２０１には、ユーザＩＤが格納される。コンフィグＩＤフィールド２０２及び累積使用回数フィールド２０３には、各ユーザＩＤに対応付けられている、コンフィグデータのコンフィグＩＤ及び累積使用回数がそれぞれ格納される。
【００２６】
ユーザＩＤフィールド２０１に格納されるユーザＩＤは、ユーザごとに割り当てられる。コンフィグＩＤフィールド２０２に格納されるコンフィグＩＤは、ＲＯＭ１０５に格納されたコンフィグデータごとに割り当てられる。コンフィグデータは、ＲＯＭ１０４に格納されており、コンフィグコントローラ１３０によって、動的再構成部１３１内の画像処理部１３２Ａ，１３２Ｂ，１３２Ｃのいずれかを再構成するために用いられる。なお、本実施形態では、コンフィグデータは、画像処理装置１００が実行する各ジョブで必要となる画像処理を実行可能な論理回路（例えば、図３（Ａ）に示す画像処理回路３０１〜３０３）を一括して再構成するためのデータ単位でＲＯＭ１０４に格納されている。
【００２７】
なお、ＲＯＭ１０４に格納されるコンフィグデータのデータ単位は、上記の例に限らず、より小さいデータ単位であってもよい。例えば、後述する図３（Ａ）〜（Ｅ）に示す画像処理回路３０１〜３１０のそれぞれに対応するコンフィグデータがＲＯＭ１０４に格納され、各コンフィグデータに対してコンフィグＩＤが割り当てられてもよい。本実施形態は、このような場合にも同様に適用できる。
【００２８】
累積使用回数フィールド２０３に格納される累積使用回数は、各コンフィグＩＤに対応するコンフィグデータが、各ユーザＩＤに対応するユーザによって画像処理装置１００においてこれまでに使用された回数を示す。なお、累積使用回数は、画像処理装置１００においてユーザＩＤが作成されてからのコンフィグデータの使用回数に相当し、所定のユーザ操作等によって０にリセットされない限り、コンフィグデータが使用されるごとにインクリメントされ続ける。使用履歴ＤＢ２００に格納される累積使用回数は、ユーザごとの、ＲＯＭ１０４に格納された各コンフィグデータの使用頻度を表す。
【００２９】
使用履歴ＤＢ２００は、ＨＤＤ１０６内に格納されており、所定のユーザ操作等によって消去されない限り、画像処理装置１００が電源ＯＦＦの状態になった場合にもＨＤＤ１０６から消去されることがない。使用履歴ＤＢ２００は、各コンフィグデータの累積使用回数（使用頻度）を、ユーザＩＤ及びコンフィグＩＤと関連付けて保持し続けることにより、各コンフィグデータの使用頻度をユーザごとのコンフィグデータの使用履歴に関する情報（履歴情報）として保持し続けうる。
【００３０】
＜画像処理部の再構成例＞
図３（Ａ）〜（Ｅ）は、画像処理装置１００で実行可能なジョブで必要となる画像処理機能を実現するための画像処理部１３２の回路構成例を示す図である。図３（Ａ）〜（Ｅ）はそれぞれ、カラーコピージョブ、ＳＥＮＤジョブ、カラープリントジョブ、モノクロコピージョブ、及びモノクロプリントジョブに対応する回路構成例を示している。なお、（カラーまたはモノクロ）コピージョブは、スキャナ部１０９で原稿を読み取って複写するためのジョブである。（カラーまたはモノクロ）プリントジョブは、ネットワーク上のＰＣ等のプリンタドライバから受信された印刷データに基づいてプリンタ部１０７により印刷を行うためのジョブである。ＳＥＮＤジョブは、スキャナ部１０９で原稿を読み取って得られた画像データを、ネットワーク上の所望の場所（外部のファイルサーバ、メールサーバ等）に送信するためのジョブである。
【００３１】
図３（Ａ）〜（Ｅ）に示す画像処理部１３２は、画像処理部１３２Ａ，１３２Ｂ，１３２Ｃのいずれかに対応する回路構成単位である。画像処理部１３２は、図３（Ａ）〜（Ｅ）に示す各回路構成に対応する論理回路を有するように、ＲＯＭ１０４に格納されたコンフィグデータを用いて構成される。ＲＯＭ１０４には、動的再構成部１３１（画像処理部１３２）を再構成するための複数のコンフィグデータ（回路構成データ）が予め格納されている。各コンフィグデータは、各ジョブで必要となる、以下で説明する画像処理機能を実現する（画像処理を実行可能な）論理回路を画像処理部１３２に実装するためのデータである。ＲＯＭ１０４に格納された複数のコンフィグデータは、それぞれ異なるジョブに対応しており、画像処理部１３２を、図３（Ａ）〜（Ｅ）に示すようなそれぞれ異なるジョブを実行可能な回路構成に再構成するためのデータである。なお、コンフィグデータを用いた再構成により画像処理部１３２に実装される各画像処理回路３０１〜３１０は、画像バス１２１を介して画像データを転送可能である。
【００３２】
（カラーコピージョブ）
図３（Ａ）に示すように、カラーコピージョブに対応する画像処理部１３２は、６００ｄｐｉカラースキャナ画像処理回路３０１、６００ｄｐｉカラー画像処理回路３０２、及び１２００ｄｐｉカラープリンタ画像処理回路３０３で構成される。
６００ｄｐｉカラースキャナ画像処理回路３０１は、フィルタ処理、色変換処理等の画像処理を行う複数の画像処理回路で構成される。６００ｄｐｉカラースキャナ画像処理回路３０１内の最後段には、画像バス１２１上の帯域を確保するために、スキャナ画像処理後の画像データに対してＪＰＥＧロスレス圧縮を行うＪＰＥＧロスレス圧縮回路が配置される。これにより、スキャナ画像処理後の画像データは、ＪＰＥＧロスレス圧縮により圧縮された状態で転送可能である。
６００ｄｐｉカラー画像処理回路３０２は、圧縮された画像データを伸長し、元の画像データに変換した後に、当該画像データに対して各種のカラー画像処理を行う。６００ｄｐｉカラー画像処理回路３０２は、例えば、回転処理、地紋付加処理等の画像処理を行う複数の画像処理回路で構成される。６００ｄｐｉカラー画像処理回路３０２内の最後段には、画像バス１２１上の帯域を確保するために、カラー画像処理後の画像データに対してＪＰＥＧロスレス圧縮を行うＪＰＥＧロスレス圧縮回路が配置される。これにより、カラー画像処理後の画像データは、ＪＰＥＧロスレス圧縮により圧縮された状態で転送可能である。
１２００ｄｐｉカラープリンタ画像処理回路３０３は、圧縮された画像データを伸長し、元の画像データに変換した後に、当該画像データに対して各種のプリンタ用画像処理を行う。１２００ｄｐｉカラープリンタ画像処理回路３０３は、解像度変換処理、出力ガンマ変換処理等の画像処理を行う複数の画像処理回路で構成される。
【００３３】
画像処理装置１００がカラーコピージョブを実行する場合、スキャナ部１０９で原稿を読み取って得られた画像データは、スキャナＩ／Ｆ１０８を介してＲＡＭ１１１に格納される。当該画像データは、ＲＡＭ１１１から６００ｄｐｉカラースキャナ画像処理回路３０１に転送され、スキャナ用画像処理が行われた後、ＲＡＭ１１１に再び格納される。当該画像データは、次に、ＲＡＭ１１１から６００ｄｐｉカラー画像処理回路３０２に転送され、様々なカラー画像処理が行われた後、ＲＡＭ１１１に再び格納される。当該画像データは、最後に、ＲＡＭ１１１から１２００ｄｐｉカラープリンタ画像処理回路３０３に転送され、解像度変換等のプリンタ用画像処理が行われた後、プリンタＩ／Ｆ１０６を介してプリンタ部１０７に転送される。プリンタ部１０７は、転送されてきた画像データに基づいて用紙に画像を印刷する。
【００３４】
（ＳＥＮＤジョブ）
図３（Ｂ）に示すように、ＳＥＮＤジョブに対応する画像処理部１３２は、３００ｄｐｉスキャナ画像処理回路３０４、及びＳＥＮＤ用画像処理回路３０５で構成される。
３００ｄｐｉスキャナ画像処理回路３０４は、フィルタ処理や色変換処理等の複数の画像処理回路で構成される。３００ｄｐｉスキャナ画像処理回路３０４は、更に、画像データを３００ｄｐｉで出力するための解像度変換回路と、画像バス１２１上の帯域を確保するために、スキャナ画像処理後の画像データに対してＪＰＥＧ圧縮を行うＪＰＥＧ圧縮回路とを含む。これにより、スキャナ画像処理後の画像データは、ＪＰＥＧ圧縮により圧縮された状態で転送可能である。
ＳＥＮＤ用画像処理回路３０５は、圧縮された画像データを伸長し、元画像データに変換した後に、当該画像データに対して３００ｄｐｉ解像度用の各種の画像処理を行う。ＳＥＮＤ用画像処理回路３０５は、例えば、文字領域と画像領域とを判定する領域判定回路、及びそれぞれの判定結果に応じたフィルタ処理を行う回路等の複数の画像処理回路で構成される。ＳＥＮＤ用画像処理回路３０５内の最終段には、画像バス１２１上の帯域を確保するために、ＳＥＮＤ用画像処理後の画像データに対してＪＰＥＧ圧縮を行うＪＰＥＧ圧縮回路が配置される。これにより、ＳＥＮＤ用画像処理後の画像データは、ＪＰＥＧ圧縮により圧縮された状態で転送可能である。
【００３５】
画像処理装置１００がＳＥＮＤジョブを実行する場合、スキャナ部１０９で原稿を読み取って得られた画像データは、スキャナＩ／Ｆ１０８を介してＲＡＭ１１１に格納される。当該画像データは、ＲＡＭ１１１から３００ｄｐｉスキャナ画像処理回路３０４に転送され、スキャナ用画像処理が行われた後、ＲＡＭ１１１に再び格納される。当該画像データは、次に、ＲＡＭ１１１からＳＥＮＤ用画像処理回路３０５に転送され、ＳＥＮＤ用画像処理が行われた後に、ＲＡＭ１１１に再び格納される。当該画像データは、最後に、ＲＡＭ１１１からネットワークＩ／Ｆ１０２を介してネットワーク上に転送される。
【００３６】
（カラープリントジョブ）
図３（Ｃ）に示すように、カラープリントジョブに対応する画像処理部１３２は、カラーＲＩＰ処理回路３０６、及び１２００ｄｐｉカラープリンタ画像処理回路３０３で構成される。
カラーＲＩＰ処理回路３０６は、受信したカラー印刷データをカラーラスタ画像データに変換するためのＲＩＰ（Raster Image Processor）回路で構成される。カラーＲＩＰ処理回路３０６内の最後段には、画像バス１２１上の帯域を確保するためにＪＰＥＧロスレス圧縮回路が配置される。これにより、カラーラスタ画像データは、ＪＰＥＧロスレス圧縮により圧縮された状態で転送可能である。
１２００ｄｐｉカラープリンタ画像処理回路３０３は、図３（Ａ）に示すものと同様である。
【００３７】
画像処理装置１００がカラープリントジョブを実行する場合、ネットワークから受信された印刷データは、ネットワークＩ／Ｆ１０２を介してＲＡＭ１１１に格納される。当該画像データは、ＲＡＭ１１１からカラーＲＩＰ処理回路３０６に転送され、ラスタ画像データに変換され、当該ラスタ画像データはＲＡＭ１１１に再び格納される。当該画像データは、その後、ＲＡＭ１１１から１２００ｄｐｉカラープリンタ画像処理回路３０３に転送され、プリンタ用画像処理が行われた後、プリンタＩ／Ｆ１０６を介してプリンタ部１０７に転送される。プリンタ部１０７は、転送されてきた画像データに基づいて用紙に画像を印刷する。
【００３８】
（モノクロコピージョブ）
図３（Ｄ）に示すように、モノクロコピージョブに対応する画像処理部１３２は、６００ｄｐｉモノクロスキャナ画像処理回路３０７、６００ｄｐｉモノクロ画像処理回路３０８、及び１２００ｄｐｉモノクロプリンタ画像処理回路３０９で構成される。
６００ｄｐｉモノクロ画像処理回路３０７は、モノクロフィルタ処理、ＭＴＦ補正等の画像処理を行う複数の画像処理回路で構成される。６００ｄｐｉモノクロ画像処理回路３０７内の最後段には、画像バス１２１上の帯域を確保するために、ＪＢＩＧ圧縮回路が配置される。これにより、スキャナ画像処理後の画像データは、ＪＢＩＧ圧縮により圧縮された状態で転送可能である。
６００ｄｐｉモノクロ画像処理回路３０８は、圧縮された画像データを伸長し、元の画像データに変換した後に、当該画像データに対して各種のモノクロ画像処理を行う。６００ｄｐｉモノクロ画像処理回路３０８は、例えば、濃度変換等の画像処理を行う複数のモノクロ画像処理回路で構成されている。６００ｄｐｉモノクロ画像処理回路３０８内の最後段には、画像バス１２１上の帯域を確保するために、ＪＢＩＧ圧縮回路が配置される。これにより、モノクロ画像処理後の画像データは、ＪＢＩＧ圧縮により圧縮された状態で転送可能である。
１２００ｄｐｉモノクロプリンタ画像処理回路３０９は、圧縮された画像データを伸長し、元の画像データに変換した後に、当該画像データに対して各種のプリンタ用画像処理を行う。１２００ｄｐｉモノクロプリンタ画像処理回路３０９は、例えば、解像度変換処理、出力濃度変換処理等の画像処理を行う複数の画像処理回路で構成される。
【００３９】
画像処理装置１００がモノクロコピージョブを実行する場合、スキャナ部１０９で原稿を読み取って得られた画像データは、スキャナＩ／Ｆ１０８を介してＲＡＭ１１１に格納される。当該画像データは、ＲＡＭ１１１から６００ｄｐｉモノクロスキャナ画像処理回路３０７に転送され、スキャナ用画像処理が行われた後、ＲＡＭ１１１に再び格納される。当該画像データは、次に、ＲＡＭ１１１から６００ｄｐｉモノクロ画像処理回路３０８に転送され、カラー／モノクロ変換等の画像処理が行われた後、ＲＡＭ１１１に再び格納される。当該画像データは、最後に、ＲＡＭ１１１から１２００ｄｐｉモノクロプリンタ画像処理回路３０９に転送され、プリンタ用画像処理が行われた後、プリンタＩ／Ｆ１０６を介してプリンタ部１０７に転送される。プリンタ部１０７は、転送されてきた画像データに基づいて用紙に画像を印刷する。
【００４０】
（モノクロプリントジョブ）
図３（Ｅ）に示すように、モノクロプリントジョブに対応する画像処理部１３２は、モノクロＲＩＰ処理回路３１０、及び１２００ｄｐｉモノクロプリンタ画像処理回路３０９で構成される。
モノクロＲＩＰ処理回路３１０は、受信したモノクロ印刷データをモノクロラスタ画像データに変換するためのＲＩＰ回路で構成される。モノクロＲＩＰ処理回路３１０の最後段には、画像バス１２１上の帯域を確保するためにＪＢＩＧ圧縮回路が配置される。これにより、モノクロラスタ画像データは、ＪＢＩＧ圧縮により圧縮された状態で転送可能である。
１２００ｄｐｉモノクロプリンタ画像処理回路３０９は、図３（Ｄ）に示すものと同様である。
【００４１】
画像処理装置１００がモノクロプリントジョブを実行する場合、ネットワークから受信された印刷データは、ネットワークＩ／Ｆ１０２を介してＲＡＭ１１１に格納される。当該画像データは、ＲＡＭ１１１からモノクロＲＩＰ処理回路３１０に転送され、ラスタ画像データに変換され、当該ラスタ画像データはＲＡＭ１１１に再び格納される。当該画像データは、その後、ＲＡＭ１１１から１２００ｄｐｉモノクロプリンタ画像処理回路３０９に転送され、プリンタ用画像処理が行われた後、プリンタＩ／Ｆ１０６を介してプリンタ部１０７に転送される。プリンタ部１０７は、転送されてきた画像データに基づいて用紙に画像を印刷する。
【００４２】
上述のように、図３（Ａ）〜図３（Ｅ）に示す画像処理回路３０１〜３１０は、それぞれ複数の画像処理回路で構成されうる。各画像処理回路が複数の画像処理回路で構成される場合、上述した複数の画像処理回路についての組み合わせは一例にすぎず、要求される機能に合わせて任意に変更可能である。
【００４３】
本実施形態の画像処理装置１００は、ジョブの実行がユーザによって指示されてから処理を開始するまでの時間をより短くするために、以下のような処理を実行する。まず、ユーザが画像処理装置１００にログインすると、ＣＰＵ１０１は、当該ユーザについての、ＲＯＭ１０４に格納された複数のコンフィグデータの使用履歴に基づいて、動的再構成部１３１（画像処理部１３２）の再構成に用いるコンフィグデータを決定する。具体的には、ＣＰＵ１０１は、複数のコンフィグデータのうちで、当該ユーザによって実行が指示される可能性が最も高いジョブに対応するコンフィグデータ（第１の回路構成データ）を決定する。更に、ＣＰＵ１０１は、決定したコンフィグデータをＲＯＭ１０４から読み出して動的再構成部１３１を再構成するよう、コンフィグコントローラ１３０を制御する。
【００４４】
本実施形態では、ＲＯＭ１０４に格納されて複数のコンフィグデータについての、ログインしたユーザによって実行される可能性を、当該ユーザによる使用頻度に基づいて判定する例について説明する。具体的には、ＣＰＵ１０１は、ＲＯＭ１０４に格納されて複数のコンフィグデータのうちで、ログインしたユーザによる使用頻度が最も高いコンフィグデータを、動的再構成部１３１の再構成のために用いるコンフィグデータとして決定する。なお、以下では、コンフィグデータの使用頻度として、上述した使用履歴ＤＢ２００に保持される累積使用回数を用いている。
【００４５】
本実施形態では、ユーザのログインに応じて、ユーザによって実行が指示される可能性が最も高いジョブに対応するコンフィグデータによって動的再構成部１３１を再構成する。これにより、ユーザからジョブの実行指示を受け付けてから動的再構成部１３１の再構成を行う場合よりも、ジョブに従った処理を開始するまでの時間を短くできる可能性を高めることが可能である。これは、ユーザのログインに応じて再構成された動的再構成部１３１の回路構成で、ユーザが実際に実行指示を行ったジョブを実行可能であれば、ジョブに従った処理を迅速に開始することができるためである。
【００４６】
このため、ログインしたユーザによってジョブの実行が指示される前に、決定したコンフィグデータによって動的再構成部１３１を再構成しておくことで、ジョブに従った処理を開始するまでの時間を短くできる可能性をより確実に高めることが可能である。
【００４７】
＜動的再構成部を用いたジョブの実行手順＞
図４は、本実施形態に係る画像処理装置１００で、動的再構成部１３１を用いてジョブを実行する手順を示すフローチャートである。なお、本フローチャートに示す各処理は、ＣＰＵ１０１がＲＯＭ１０４等に予め格納された制御プログラムをＲＡＭ１１１に読み出して実行することによって実現される。
【００４８】
Ｓ１０１で、ＣＰＵ１０１は、画像処理装置１００にユーザがログインしたか否かを判定する。画像処理装置１００に対するユーザのログインは、上述のように、認証部１１５を介して入力された認証情報に基づいて行われる。ＣＰＵ１０１は、ユーザの認証に成功すると、当該ユーザが画像処理装置１００を操作可能な状態とする。これにより、ユーザは、画像処理装置１００にログインした状態となる。Ｓ１０１で、ＣＰＵ１０１は、ユーザが画像処理装置１００にログインしたと判定した段階で、処理をＳ１０２に進める。
【００４９】
Ｓ１０２で、ＣＰＵ１０１は、ユーザ認証に用いた認証情報等から、ユーザＩＤ情報を取得する。ＣＰＵ１０１は、例えばユーザ認証にＲＦＩＤを用いた場合、認証部１１５でＲＦＩＤから読み取ったユーザＩＤ情報を取得する。その後Ｓ１０３で、ＣＰＵ１０１は、Ｓ１０２で取得したユーザＩＤ情報に対応するユーザ（即ち、ログインしたユーザ）の、コンフィグデータの使用履歴に関する情報（履歴情報）が、画像処理装置１００内に存在するか否かを判定する。履歴情報の有無は、ＨＤＤ１０６内に格納された使用履歴ＤＢ２００のユーザＩＤフィールド２０１を参照することによって判定可能である。
【００５０】
Ｓ１０３で、ＣＰＵ１０１は、履歴情報が存在すると判定した場合にはＳ１０４へ、履歴情報が存在しないと判定した場合にはＳ１０５へ、処理を進める。履歴情報がしない場合、履歴情報を使用した動的再構成１３１の再構成を行うことはできないため、Ｓ１０５では、ユーザによる機能（ジョブ）の選択に従って、必要に応じて動的再構成部１３１の再構成が行われる。
【００５１】
（履歴情報を使用する場合の回路再構成）
Ｓ１０４で、ＣＰＵ１０１は、図５（Ａ）に示す手順に従って、ＨＤＤ１０６内に格納された使用履歴ＤＢ２００に保持されている履歴情報を使用して動的再構成部１３１の回路構成を必要に応じて再構成する。具体的には、まずＳ１１１で、ＣＰＵ１０１は、Ｓ１０２で取得したユーザＩＤ情報を用いて使用履歴ＤＢ２００を参照する。更に、Ｓ１１２で、ＣＰＵ１０１は、使用しているユーザＩＤ情報に対応するユーザによる使用頻度が最も高いコンフィグデータを決定する。使用頻度が最も高いコンフィグデータは、ログインしたユーザによって実行が指示される可能性が最も高いジョブに対応するコンフィグデータ（第１の回路構成データ）に相当する。
【００５２】
ここで、ＣＰＵ１０１は、ユーザＩＤに対応付けて使用履歴ＤＢ２００に格納されているコンフィグＩＤ及び累積使用回数を参照して、最も累積使用回数が高いコンフィグＩＤに対応するコンフィグデータを、使用頻度が最も高いコンフィグデータに決定する。例えば、ログインしたユーザのユーザＩＤが「１」である場合、使用履歴ＤＢ２００から、累積使用回数が「８５」であるコンフィグＩＤ「２」に対応するコンフィグデータが、使用頻度が最も高いコンフィグデータに決定される。
【００５３】
次にＳ１１３で、ＣＰＵ１０１は、Ｓ１１２で決定されたコンフィグデータによって再構成された画像処理回路が、動的再構成部１３１内に既に存在しているか否か判定する。本実施形態では、ＣＰＵ１０１は、動的再構成部１３１の回路構成の再構成履歴に関する情報をＨＤＤ１０６内に格納しているものとする。ＣＰＵ１０１は、ＨＤＤ１０６内のそのような情報を参照することによって、Ｓ１１３の判定を行うことが可能である。
【００５４】
Ｓ１１３で、ＣＰＵ１０１は、Ｓ１１２で決定されたコンフィグデータによって再構成された画像処理回路が、動的再構成部１３１内に存在していない判定した場合には、Ｓ１１４に処理を進める。一方、ＣＰＵ１０１は、Ｓ１１２で決定されたコンフィグデータによって再構成された画像処理回路が、動的再構成部１３１内に既に存在していると判定した場合には、Ｓ１１４の処理を実行することなく処理をＳ１１５に進める。これは、Ｓ１１２で決定されたコンフィグデータによって再構成された画像処理回路が既に存在していれば、同じコンフィグデータによる再構成を繰り返す必要はないためである。このように、ＣＰＵ１０１は、Ｓ１１２で決定されたコンフィグデータに対応する回路構成が既に動的再構成部１３１に構成されていれば、当該コンフィグデータによる再構成を実行せずに、ユーザによってジョブの実行が指示されるまで待機する。
【００５５】
Ｓ１１４で、ＣＰＵ１０１は、Ｓ１１２で決定されたコンフィグデータによる動的再構成部１３１の回路再構成を、コンフィグコントローラ１３０に対して指示する。ＣＰＵ１０１は、動的再構成部１３１内の画像処理部１３２Ａ，１３２Ｂ，１３２Ｃのいずれかを、決定されたコンフィグデータによる再構成の対象領域として指定する。なお、ＣＰＵ１０１は、画像処理部１３２Ａ，１３２Ｂ，１３２Ｃのうちで、動作中ではない画像処理部を、再構成対象の領域として指定すればよい。
【００５６】
Ｓ１１４では、ＣＰＵ１０１は、コンフィグコントローラ１３０に対して、Ｓ１１２で決定されたコンフィグデータに対応するコンフィグＩＤを通知するとともに、当該コンフィグＩＤに基づく動的再構成部１３１の再構成を指示する。コンフィグコントローラ１３０は、ＣＰＵ１０１から通知されたコンフィグＩＤに対応するコンフィグデータをＲＯＭ１０５から読み出して、動的再構成部１３１の再構成対象の領域への書き込みを行う。このようにして、コンフィグコントローラ１３０は、動的再構成部１３１の対象領域の再構成を行う。
【００５７】
例えば、コンフィグコントローラ１３０は、ＣＰＵ１０１から通知されたコンフィグＩＤが「２」である場合、コンフィグＩＤ「２」に対応するコンフィグデータをＲＯＭ１０５から読み出す。ここで、コンフィグＩＤ「２」に対応するコンフィグデータが、ＳＥＮＤジョブで必要となる画像処理を実行可能な論理回路に対応するデータであるものとする。この場合、当該コンフィグデータによる画像処理部１３２の再構成により、図３（Ｂ）に示す画像処理回路が画像処理部１３２に実装される結果となる。
【００５８】
次に、Ｓ１１５で、ＣＰＵ１０１は、動的再構成部１３１に既に存在していたか（再構成されていたか）または動的再構成部１３１にＳ１１４で再構成された回路が、実行予定のジョブで使用されるか否かを判定する。この判定は、当該回路が、ユーザの所望のジョブで使用する回路であるか否か（即ち、ユーザにとって所望の回路であるか否か）を判定することに等しい。本実施形態では、ＣＰＵ１０１は、操作部１０３を用いたユーザの操作内容に基づいて、Ｓ１１５の判定を行う。ＣＰＵ１０１は、図６（Ａ）〜（Ｃ）に示すような操作画面を操作部１０３に表示することで、操作部１０３を介して、ログインしたユーザからジョブの実行指示を受け付ける。
【００５９】
ここで、図６（Ａ）〜（Ｃ）は、操作部１０３に表示される操作画面の一例である。図６（Ａ）は、機能選択画面６００を示しており、当該画面には、カラーコピー機能、モノクロコピー機能、セキュアプリント機能及びＳＥＮＤ機能を選択するためのボタン６０１〜６０４が含まれる。ボタン６０１〜６０４は、画像処理装置１００が有する機能のうちで使用する機能（即ち、画像処理装置１００が実行すべきジョブ）をユーザが選択するために用いられる。操作部１０３に表示された機能選択画面６００上で、例えばボタン６０１がユーザによって押下された場合、操作部１０３の表示画面は、図６（Ｂ）に示すカラーコピー機能画面６１０に切り替わる。また、ボタン６０４がユーザによって押下された場合、操作部１０３の表示画面は、図６（Ｃ）に示すＳＥＮＤ機能画面６２０に切り替わる。カラーコピー機能画面６１０またはＳＥＮＤ機能画面６２０のような、各機能に対応する機能画面の表示中に、操作部１０３に設けられたキャンセルボタン（図示せず）がユーザによって押下されると、表示画面が機能選択画面６００に戻る。なお、このようなキャンセルボタンは、各機能に対応する機能画面内に設けられてもよい。
【００６０】
Ｓ１１３またはＳ１１４からＳ１１５に移行すると、ＣＰＵ１０１は、Ｓ１１２で決定されたコンフィグデータに対応する機能画面を操作部１０３に表示する。即ち、ＣＰＵ１０１は、当該コンフィグデータによってＳ１１４で動的再構成部１３１に再構成された（または既に存在していた）回路を使用するジョブに対応する機能画面を操作部１０３に表示する。例えば、Ｓ１１２で決定されたコンフィグデータがカラーコピージョブに対応する場合、ＣＰＵ１０１は、図６（Ｂ）に示すカラーコピー機能画面６１０を操作部１０３に自動的に表示する。このように、Ｓ１１５で、ＣＰＵ１０１は、Ｓ１１２で決定されたコンフィグデータを用いて動的再構成部１３１に既に構成されている回路構成に対応するジョブを実行を指示するための機能画面を操作部１０３に表示する。
【００６１】
操作部１０３に表示された機能画面を用いてユーザがジョブの実行を指示した場合には、動的再構成部１３１に再構成されている回路が、ユーザの所望のジョブで使用する回路であると判定できる。即ち、Ｓ１１２で決定されたコンフィグデータを用いて動的再構成部１３１に構成されている回路構成で、実行指示に対応するジョブを実行可能であると判定できる。この場合、ＣＰＵ１０１は、動的再構成部１３１に再構成されている回路が、実行予定のジョブで使用されると判定し、図５（Ａ）に示すＳ１０４における処理を終了し、処理をＳ１０６に進める。
【００６２】
一方で、操作部１０３に機能画面が表示されている状態でユーザがキャンセルボタンを押下した場合には、動的再構成部１３１に実装されている回路が、ユーザの所望のジョブで使用する回路ではないと判定できる。即ち、Ｓ１１２で決定されたコンフィグデータを用いて動的再構成部１３１に構成されている回路構成で、実行指示に対応するジョブは実行可能ではないと判定できる。この場合、ＣＰＵ１０１は、動的再構成部１３１に再構成されている回路が、実行予定のジョブで使用されないと判定し、処理をＳ１１５からＳ１１６に進める。なお、キャンセルボタンの押下に応じて、ＣＰＵ１０１は、操作部１０３に機能選択画面６００（図６（Ａ））を表示して、ユーザによる機能（ジョブ）の選択を受け付ける（図５（Ｂ）のＳ１２１）。
【００６３】
機能選択画面６００を用いてユーザによって所望の機能（ジョブ）が選択されると、選択されたジョブで必要となる画像処理回路を、必要に応じて動的再構成部１３１に再構成する必要がある。このため、Ｓ１１６で、ＣＰＵ１０１は、機能選択画面６００を用いて選択された機能（ジョブ）で必要となる画像処理を実行可能な回路を、必要に応じて、履歴情報を使用せずに動的再構成部１３１に再構成する。即ち、ＣＰＵ１０１は、必要に応じて、ジョブを実行するための回路構成に対応するコンフィグデータをＲＯＭ１０４から読み出して動的再構成部１３１を再構成するよう、コンフィグコントローラ１３０を制御する。なお、Ｓ１１６の処理は、後述するＳ１０５（図５（Ｂ））と同様に実行される。Ｓ１１６の処理が完了すると、ＣＰＵ１０１は、図５（Ａ）に示すＳ１０４における処理を終了し、処理をＳ１０６に進める。
【００６４】
（履歴情報を使用しない場合の回路再構成）
Ｓ１０５またはＳ１１６で、ＣＰＵ１０１は、図５（Ｂ）に示す手順に従って、履歴情報を使用せずに動的再構成部１３１の回路構成を必要に応じて再構成する。具体的には、まずＳ１２１で、ＣＰＵ１０１は、操作部１０３に機能選択画面６００（図６（Ａ））を表示して、ユーザによる機能（ジョブ）の選択を受け付ける。ユーザによる機能の選択（即ち、ジョブの実行指示）を受け付けると、Ｓ１２２で、ＣＰＵ１０１は、選択された機能に対応するコンフィグデータを、使用すべきコンフィグデータに決定する。
【００６５】
次にＳ１２３で、ＣＰＵ１０１は、Ｓ１１３と同様に、Ｓ１２２で決定されたコンフィグデータによって再構成された画像処理回路が、動的再構成部１３１内に既に存在しているか否か判定する。ＣＰＵ１０１は、Ｓ１２２で決定されたコンフィグデータによって再構成された画像処理回路が、動的再構成部１３１内に既に存在していると判定した場合には、Ｓ１２４の処理を実行することなく、処理をＳ１０６に進める。一方、ＣＰＵ１０１は、Ｓ１２２で決定されたコンフィグデータによって再構成された画像処理回路が、動的再構成部１３１内に存在していない判定した場合には、Ｓ１２４に処理を進める。
【００６６】
Ｓ１２４で、ＣＰＵ１０１は、Ｓ１１４と同様に、Ｓ１２２で決定されたコンフィグデータによって動的再構成部１３１の回路再構成を、コンフィグコントローラ１３０に対して指示する。これにより、コンフィグコントローラ１３０は、Ｓ１２２で決定されたコンフィグデータによって、動的再構成部１３１の対象領域（画像処理部１３２Ａ，１３２Ｂ，１３２Ｃのいずれか）の再構成を行う。その後、ＣＰＵ１０１は、処理をＳ１０６に進める。
【００６７】
（ジョブの実行）
上述のように、ジョブで必要となる回路が動的再構成部１３１に再構成（実装）された状態となると、Ｓ１０６で、ＣＰＵ１０１は、当該回路を用いてジョブを実行する。ジョブの実行が完了すると、Ｓ１０７で、ＣＰＵ１０１は、使用履歴ＤＢ２００を更新する。具体的には、画像処理装置１００を使用中のユーザのユーザＩＤと、Ｓ１０６で用いた回路に対応するコンフィグデータのコンフィグＩＤとに基づいて、使用履歴ＤＢ２００内の、ユーザＩＤ及びコンフィグＩＤに対応付けられた累積使用回数を１増加させる。即ち、即ち、ＣＰＵ１０１は、ユーザＩＤに対応するユーザによる、使用したコンフィグデータの累積使用回数を１増加させる。その後、ＣＰＵ１０１は、処理を終了する。
【００６８】
以上説明したように、本実施形態の画像処理装置１００は、画像処理装置１００にユーザがログインすると、当該ユーザについての履歴情報に基づいて、最も使用頻度が高いコンフィグデータを自動的に決定する。更に、画像処理装置１００は、決定したコンフィグデータによって動的再構成部１３１の部分再構成（画像処理部１３２の再構成）を行う。これにより、ユーザによって実行が指示されるジョブで使用される可能性が最も高い画像処理回路を、ジョブの実行指示に先立って動的再構成部１３１に構成（実装）することができる。その結果、ユーザのログイン後に、ジョブの実行に伴って画像処理を開始するタイミングがより早まる可能性を高められる。
【００６９】
なお、上述の実施形態は種々の変更が可能である。例えば、Ｓ１０３で、画像処理装置１００にログインしたユーザについての履歴情報が存在していても、使用されたことがある全コンフィグデータの累積使用回数の総和が所定の閾値を下回っている場合には、処理をＳ１０５に進めてもよい。これにより、ＣＰＵ１０１は、ジョブの実行指示に先立ってコンフィグデータによる動的再構成部１３１の再構成を実行せずに、ログインしたユーザによってジョブの実行が指示されるまで待機する。累積使用回数の総和が少ない場合、特定のコンフィグデータの使用頻度が高いと判定するために十分な使用回数が得られていない可能性があり、実行予定のジョブで使用される回路に対応するコンフィグデータを適切に決定できない可能性がある。適切なコンフィグデータを決定できないことで、ユーザのログイン後に画像処理を開始するタイミングが遅くなることを避けるために、上述のような処理を行ってもよい。
【００７０】
上述の実施形態のように、決定されたコンフィグデータによる再構成が既に行われている場合には当該コンフィグデータによる再構成を繰り返すことを避けてもよい。これにより、動的再構成部１３１の再構成に要する時間を省くことができ、ユーザのログイン後に画像処理を開始するタイミングをより早めることが可能になる。
【００７１】
［第２の実施形態］
第１の実施形態では、ＲＯＭ１０４に格納されたコンフィグデータのうち、画像処理装置１００にログインしたユーザによる使用頻度が最も高いコンフィグデータを用いて、動的再構成部１３１の回路再構成を制御している。第２の実施形態では、ログインしたユーザによる使用頻度が最も高いコンフィグデータだけでなく、使用頻度が２番目に高いコンフィグデータも用いて、動的再構成部１３１の回路再構成を制御する例について説明する。なお、説明の簡略化のため、第１の実施形態と同様の構成及び制御については説明を省略する。
【００７２】
本実施形態では、図４のＳ１０４で、ＣＰＵ１０１は、図７に示す手順に従って、ＨＤＤ１０６内に格納された使用履歴ＤＢ２００に保持されている履歴情報を使用して動的再構成部１３１の回路構成を必要に応じて再構成する。Ｓ１１１〜Ｓ１１４は、第１の実施形態（図５（Ａ））と同様である。
【００７３】
Ｓ１１４で、最も使用頻度が高いコンフィグデータによる動的再構成部１３１の再構成が完了すると、ＣＰＵ１０１は、Ｓ２１１に処理を進める。Ｓ２１１で、ＣＰＵ１０１は、ログインしたユーザによる使用頻度が２番目に高いコンフィグデータを決定する。使用される可能性が２番目に高いコンフィグデータは、ログインしたユーザによって実行が指示される可能性が２番目に高いジョブを実行するための回路構成に対応するコンフィグデータ（第２の回路構成データ）に相当する。例えば、ログインしたユーザのユーザＩＤが「１」である場合、使用履歴ＤＢ２００から、累積使用回数が「４１」であるコンフィグＩＤ「３」に対応するコンフィグデータが、使用頻度が２番目に高いコンフィグデータに決定される。このように、本実施形態では、ＣＰＵ１０１は、ログインしたユーザによる使用頻度が最も高いコンフィグデータに加えて、使用頻度が２番目に高いコンフィグデータを決定する（Ｓ１１２及びＳ２１１）。
【００７４】
次に、Ｓ２１２で、ＣＰＵ１０１は、Ｓ２１１決定されたコンフィグデータの複製データを、格納されているデータをＲＯＭ１０４よりも高速に読み出し可能なＲＡＭ１１１に格納する。その後、処理をＳ１１５に進める。Ｓ１１５は、ＣＰＵ１０１は、第１の実施形態（図５（Ａ））と同様に、動的再構成部１３１に既に存在していたか（再構成されていたか）または動的再構成部１３１にＳ１１４で再構成された回路が、実行予定のジョブで使用されるか否かを判定する。ＣＰＵ１０１は、動的再構成部１３１に構成されている回路が実行予定のジョブで使用されると判定した場合、処理をＳ１０６に進め、使用されないと判定した場合、処理をＳ２１３に進める。
【００７５】
Ｓ２１３〜Ｓ２１５で、ＣＰＵ１０１は、第１の実施形態におけるＳ１２１〜Ｓ１２３（図５（Ｂ））と同様の処理を行う。Ｓ２１５で、ＣＰＵ１０１は、Ｓ１１３及びＳ２１３と同様に、Ｓ２１４で決定されたコンフィグデータによって再構成された画像処理回路が、動的再構成部１３１内に既に存在しているか否か判定する。ＣＰＵ１０１は、Ｓ２１４で決定されたコンフィグデータによって再構成された画像処理回路が、動的再構成部１３１内に既に存在していると判定した場合には、Ｓ２１６〜Ｓ２１８の処理を実行することなく、処理をＳ１０６に進める。一方、ＣＰＵ１０１は、Ｓ２１４で決定されたコンフィグデータによって再構成された画像処理回路が、動的再構成部１３１内に存在していない判定した場合には、Ｓ２１６に処理を進める。
【００７６】
Ｓ２１６で、ＣＰＵ１０１は、Ｓ２１４で決定されたコンフィグデータ（即ち、ユーザからの実行指示に対応するジョブを実行するための回路構成に対応するコンフィグデータ）がＲＡＭ１１１に格納されているか否かを判定する。ＣＰＵ１０１は、Ｓ２１４で決定されたコンフィグデータが格納されていると判定した場合には、処理をＳ２１７に進める。この場合、Ｓ２１７で、ＣＰＵ１０１は、ＲＡＭ１１１に格納されている、Ｓ２１４で決定されたコンフィグデータによる動的再構成部１３１の回路再構成を、コンフィグコントローラ１３０に対して指示する。即ち、ＣＰＵ１０１は、ＲＡＭ１１１に格納されたコンフィグデータを読み出して動的再構成部１３１を再構成するよう、コンフィグコントローラ１３０を制御する。ＲＡＭ１１１からは、ＲＯＭ１０４からコンフィグデータを読み出す場合よりも高速にコンフィグデータを読み出すことが可能である。このため、Ｓ２１７では、コンフィグコントローラ１３０は、動的再構成部１３１の再構成をより迅速に実行することが可能である。
【００７７】
一方、Ｓ２１６で、ＣＰＵ１０１は、Ｓ２１４で決定されたコンフィグデータが格納されていないと判定した場合、処理をＳ２１８に進める。この場合、Ｓ２１８で、ＣＰＵ１０１は、Ｓ１２４と同様、ＲＯＭ１０４に格納されている、Ｓ２１４で決定されたコンフィグデータによる動的再構成部１３１の回路再構成を、コンフィグコントローラ１３０に対して指示する。
【００７８】
Ｓ２１７またはＳ２１８の処理が完了すると、ＣＰＵ１０１は、Ｓ１０６（図４）に処理を進める。Ｓ１０６及びＳ１０７は、第１の実施形態と同様である。
【００７９】
このように本実施形態では、ログインしたユーザによるジョブの実行指示に先立って動的再構成部１３１に再構成した回路構成で、実行指示に対応するジョブを実行可能でない場合に、ジョブの実行に伴って画像処理を開始するタイミングことを狙いとしている。具体的には、そのような場合に備えて、使用頻度が２番目に高いコンフィグデータをＲＡＭ１１１に予め格納しておく。使用頻度が２番目に高いコンフィグデータによって、ログインしたユーザによる実行指示に対応するジョブを実行可能な回路構成を動的再構成部１３１に再構成できれば、ＲＯＭ１０４からコンフィグデータを読み出す場合よりも高速に再構成を完了できる。したがって、ユーザのログイン後に、ジョブの実行に伴って画像処理を開始するタイミングがより早まる可能性を高められる。
【００８０】
なお、本実施形態では、ログインしたユーザによる使用頻度が２番目に高いコンフィグデータをＲＡＭ１１１に予め格納する例を説明している。しかし、ＲＡＭ１１１の記憶容量等の制限に応じて、より多くのコンフィグデータを予めＲＡＭ１１１に格納してもよい。即ち、ログインしたユーザによって実行が指示される可能性が高い順（当該ユーザによる使用頻度が高い順）に、各ジョブに対応するコンフィグデータをＲＡＭ１１１に格納してもよい。これにより、ジョブの実行に伴って画像処理を開始するタイミングが早まる可能性をより高めることが可能である。
【００８１】
［第３の実施形態］
第２の実施形態では、ログインしたユーザによる使用頻度が最も高いコンフィグデータだけでなく、使用頻度が２番目に高いコンフィグデータも用いて、動的再構成部１３１の回路再構成を制御している。第３の実施形態では、第１及び第２の実施形態の変形例として、使用頻度が最も高い及び２番目に高いと判定された、２つのコンフィグデータの使用頻度が同程度である場合の制御例について説明する。なお、説明の簡略化のため、第１及び第２の実施形態と同様の構成及び制御については説明を省略する。
【００８２】
本実施形態では、図４のＳ１０４で、ＣＰＵ１０１は、図８に示す手順に従って、ＨＤＤ１０６内に格納された使用履歴ＤＢ２００に保持されている履歴情報を使用して動的再構成部１３１の回路構成を必要に応じて再構成する。Ｓ１１１は、第１の実施形態（図５（Ａ））と同様である。次に、Ｓ３１１で、ＣＰＵ１０１は、使用しているユーザＩＤ情報に対応するユーザによる使用頻度が最も高いコンフィグデータ及び２番目に高いコンフィグデータを特定する。更に、ＣＰＵ１０１は、それらのコンフィグデータの使用頻度の差分を求め、得られた差分値が所定の閾値を下回っているか否かを判定する。本実施形態では、使用履歴ＤＢ２００内で、ログインユーザのユーザＩＤに対応付けられている、最も大きい及び２番目に大きい累積使用回数の差分を計算することによって、この差分値を得ることができる。
【００８３】
Ｓ３１１で、ＣＰＵ１０１は、得られた差分が所定の閾値を下回っていると判定した場合には、処理をＳ１１２に進める。この場合、Ｓ１１２以降の処理は、第１の実施形態（図５（Ａ））と同様である。一方、ＣＰＵ１０１は、得られた差分が所定の閾値を下回っていないと判定した場合には、処理をＳ３１２進める。
【００８４】
Ｓ３１２で、ＣＰＵ１０１は、ログインしたユーザによる使用頻度が１番目及び２番目に高いコンフィグデータについての回路規模を比較する。本実施形態では、図２（Ｂ）に示すような回路規模ＤＢ２１０が、ＲＯＭ１０４に予め格納されている。回路規模ＤＢ２１０には、各コンフィグデータのコンフィグＩＤに対応付けて、各コンフィグデータによって動的再構成部１３１を再構成した場合に実現される回路の回路規模（ゲート数）が格納されている。図２（Ａ）及び図２（Ｂ）に示す例では、ユーザＩＤ「１」のユーザについての、使用頻度が１番目及び２番目に高いコンフィグデータのコンフィグＩＤとして、「２」及び「３」が特定される。また、コンフィグＩＤ「２」に対応する回路規模として５０万ゲート、コンフィグＩＤ「３」に対応する回路規模として１７０万ゲートが特定される。
【００８５】
Ｓ３１３で、ＣＰＵ１０１は、特定した２つの回路規模の比較の結果として、より大きい回路規模に対応するコンフィグデータを、ユーザによってジョブの実行が指示される前の、動的再構成部１３１の再構成に用いるコンフィグデータに決定する。その後、処理をＳ１１３に進める。上記の例では、コンフィグＩＤ「３」のコンフィグデータが、動的再構成部１３１の再構成に用いるコンフィグデータに決定される。即ち、使用頻度が最も高いコンフィグデータに代えて、使用頻度が２番目に高いコンフィグデータが、動的再構成部１３１の再構成に用いるコンフィグデータに決定される。Ｓ１１３以降の処理は、第１の実施形態（図５（Ａ））と同様である。
【００８６】
このように本実施形態では、ログインしたユーザによる使用頻度が１番目及び２番目に高いコンフィグデータについて、使用頻度の差分が少ない場合に、それらのコンフィグデータによって実現される回路の回路規模を比較する。更に、より大きい回路規模に対応するコンフィグデータを、ジョブの実行指示に先立って動的再構成部１３１を再構成するために用いる。これにより、ジョブの実行指示に先立って動的再構成部１３１に再構成した回路構成で実行指示に対応するジョブを実行可能でない場合に、当該ジョブの実行開始時には回路規模の小さい回路を動的再構成部１３１に再構成する可能性が高くなる。したがって、本実施形態によれば、このような場合に、ジョブの実行に伴って画像処理を開始するタイミングが早まる可能性を高めることが可能である。
【００８７】
なお、本実施形態では、各コンフィグデータによって動的再構成部１３１を再構成した場合に実現される回路の回路規模の比較を行う例を説明している。しかし、回路規模の比較に代えて、例えば、コンフィグデータ自体のデータサイズの比較を用いてもよい。また、また、Ｓ３１１で求める差分値は、使用頻度（累積使用回数）の差分値ではなく、例えば、使用頻度（累積使用回数）の割合の差分値であってもよい。このような変形例によっても、本実施形態と同様の効果を得ることが可能である。
【００８８】
なお、本実施形態の変形例として、図８のＳ１１６に代えて、第２の実施形態におけるＳ２１３〜Ｓ２１８（図７）の処理が実行されてもよい。即ち、本実施形態と第２の実施形態とを組み合わせることも可能である。
【００８９】
［第４の実施形態］
第４の実施形態では、画像処理装置１００において、コンフィグデータの使用履歴に代えて、ログインしたユーザによる経費の使用履歴に基づいて、動的再構成部１３１の再構成を制御する例について説明する。なお、説明の簡略化のため、第１の実施形態と同様の構成及び制御については説明を省略する。
【００９０】
本実施形態では、図４のＳ１０４で、ＣＰＵ１０１は、図９に示す手順に従って、動的再構成部１３１の回路構成を再構成する。本実施形態では、Ｓ１０３で、ＣＰＵ１０１は、Ｓ１０２で取得したユーザＩＤ情報に対応するユーザ（即ち、ログインしたユーザ）の、経費の使用履歴に関する情報（履歴情報）が、画像処理装置１００内に存在するか否かを判定する。本実施形態では、ＣＰＵ１０１は、図２（Ｃ）に示すような、経費についての使用履歴ＤＢ２２０を用いる。なお、使用履歴ＤＢ２２０は、ＨＤＤ１０６内に予め格納されている。
【００９１】
Ｓ１０２で、ＣＰＵ１０１は、使用履歴ＤＢ２２０内に、ログインしたユーザの履歴情報が存在する場合には、処理をＳ１０４に進め、図９に示す手順に従った処理を実行する。まず、Ｓ４１１で、ＣＰＵ１０１は、Ｓ１０２で取得したユーザＩＤ情報を用いて使用履歴ＤＢ２２０を参照する。更に、Ｓ４１２で、ＣＰＵ１０１は、使用履歴ＤＢ２２０の参照結果に基づいて、ログインしたユーザについての累積使用経費を確定する。図２（Ｃ）に示す例では、例えばユーザＩＤ「１」のユーザがログインしている場合、累積使用経費は１２５５円と確定される。
【００９２】
使用履歴ＤＢ２２０には、各ユーザのユーザＩＤ（フィールド２２１）に対応付けて、各ユーザの累積使用経費（フィールド２２２）が格納されている。なお、使用履歴ＤＢ２２０は、例えば、所定の日時にリセットされる。例えば、毎月１日の午前５：００にリセットされる場合、各月の累積使用経費が使用履歴ＤＢ２２０に保持されることになる。また、画像処理装置１００でジョブが実行されるごとに（Ｓ１０６）、例えば、カラーコピー時には５０円／枚、モノクロコピー時には１０円／枚、カラープリント時には１０円／枚、モノクロプリント時には５円／枚のように、所定の値が累積使用経費に加算される（Ｓ１０７）。以下では、説明の簡略化のため、プリンタ部１０７を用いる機能（ジョブ）についてのみ説明する。
【００９３】
本実施形態では、ＣＰＵ１０１は、経費の使用履歴に基づいて、ＲＯＭ１０４に格納されている複数のコンフィグデータの一部の使用を制限する。更に、ＣＰＵ１０１は、使用が制限されていないコンフィグデータのいずれかをＲＯＭ１０４から読み出して動的再構成部１３１を再構成するよう、コンフィグコントローラ１３０を制御する。
【００９４】
具体的には、Ｓ４１３で、ＣＰＵ１０１は、確定した累積使用経費が所定の閾値を上回るか否かを判定する。ＣＰＵ１０１は、累積使用経費が所定の閾値を上回ると判定した場合にはＳ４１４へ処理を進め、累積使用経費が所定の閾値を上回らないと判定した場合にはＳ４１７へ処理を進める。Ｓ４１７及びＳ４１８の処理は、第１の実施形態で説明したＳ１２１及びＳ１２４とそれぞれ同様の処理によって実行される。即ち、Ｓ４１８では、Ｓ４１７でユーザによって選択されるジョブに対応するコンフィグデータを用いた動的再構成部１３１の再構成が行われる。
【００９５】
Ｓ４１４〜Ｓ４１６では、ＣＰＵ１０１は、相対的に使用経費が大きくなるコンフィグデータの使用を制限するための処理を実行する。具体的には、Ｓ４１４で、ＣＰＵ１０１は、ログインしたユーザのプリントジョブが画像処理装置１００に存在するか否かを判定する。例えば、画像処理装置１００に対するログイン後に印刷処理を行うセキュアプリントに関するプリントジョブを、ログイン前にユーザが画像処理装置１００に入力していた場合、当該プリントジョブはＨＤＤ１０６内にスプールされた状態にある。このような場合、ＣＰＵ１０１は、ログインしたユーザのプリントジョブが画像処理装置１００に存在すると判定する。ＣＰＵ１０１は、ログインしたユーザのプリントジョブが画像処理装置１００に存在すると判定した場合には処理をＳ４１５に進め、存在しないと判定した場合にはＳ４１６に処理を進める。
【００９６】
Ｓ４１５で、ＣＰＵ１０１は、モノクロプリント用のコンフィグデータによって動的再構成部１３１の回路再構成を、コンフィグコントローラ１３０に対して指示する。一方、Ｓ４１６では、ＣＰＵ１０１は、モノクロコピー用のコンフィグデータによって動的再構成部１３１の回路再構成を、コンフィグコントローラ１３０に対して指示する。Ｓ４１５またはＳ４１６は、カラープリント及びカラーコピー機能に対応するコンフィグデータの使用が制限され、モノクロプリントまたはモノクロコピー機能に対応するコンフィグデータの使用によって動的再構成部１３１の再構成が行われる例を示している。
【００９７】
Ｓ４１５、Ｓ４１６またはＳ４１８における動的再構成部１３１の再構成が完了すると、ＣＰＵ１０１は処理をＳ１０６に進め、動的再構成部１３１を用いてジョブを実行する。更に、Ｓ１０７で、ＣＰＵ１０１は、上述のように、使用履歴ＤＢ２２０を更新する。
【００９８】
以上説明したように、本実施形態によれば、ログインしたユーザによる経費の使用履歴に基づいて、動的再構成部１３１の再構成を制御する。具体的には、ログインしたユーザによる使用経費（累積使用経費）が所定の閾値を上回ると、相対的に使用経費が大きくなるコンフィグデータの使用を制限する。これにより、画像形成装置１００における使用経費を適切に制御できるとともに、使用経費が際限なく増大するようなことを防止できる。
【００９９】
［その他の実施形態］
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワークまたは各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【符号の説明】
【０１００】
１００：画像処理装置、１３１：動的再構成部、１３２（１３２Ａ，１３２Ｂ，１３２Ｃ）：画像処理部、１０１：ＣＰＵ、１０４：ＲＯＭ、１１１：ＲＡＭ、１４０：ＦＰＧＡ
【図１】
2015198405.tif 000003
【図２】
2015198405.tif 000004
【図３】
2015198405.tif 000005
【図４】
2015198405.tif 000006
【図５】
2015198405.tif 000007
【図６】
2015198405.tif 000008
【図７】
2015198405.tif 000009
【図８】
2015198405.tif 000010
【図９】
2015198405.tif 000011