(57)【要約】【課題】それぞれ複数種類の回路構成のいずれかに再構成可能な複数の回路構成部を有する画像処理装置において、複数の画素データにおけるある属性の画素データの出現頻度、及びある属性から他の属性に切り替えられる切替回数に応じて最適な種類の回路構成を固定して、切替時間に係るオーバーヘッドを低減する画像処理装置を提供する。【解決手段】本画像処理装置は、回路動作中に論理回路を再構成可能な複数の回路構成面を有するロジック回路と、各論理回路に切り替えるための切替時間を予め記憶した記憶部とを備え、実行する画像処理に応じてロジック回路を再構成する。また、本画像処理装置は、処理する順に画像データにおける画素ごとの属性を解析し、解析した属性ごとに対応する論理回路へ切り替える総切替時間を処理する順序を考慮して求め、当該総切替時間に基づいて、固定する回路構成面へ構成する論理回路を決定する。【選択図】図１２
2010257342.tif 000002
【特許請求の範囲】
【請求項１】
それぞれ複数種類の回路構成のいずれかに再構成可能な複数の回路構成部を有する画像処理手段と、
前記複数の回路構成部の回路構成を前記複数種類の回路構成のいずれかに切り替えるための切替時間を前記種類ごとに予め記憶した記憶手段と、
前記画像処理手段により処理されるべき画像データに含まれる複数の画素データの属性が複数種類の属性のいずれであるかを解析する解析手段と、
前記解析手段による解析結果に基づいて、前記複数の画素データにおける第１属性の画素データの出現頻度、及び前記複数の画素データを前記画像処理手段により処理する際に画素データの属性が前記第１属性から他の属性に切り替えられる切替回数を導出する導出手段と、
前記記憶手段に記憶された前記第１属性に対応する第１種類の回路構成に切り替えるための切替時間と、前記導出手段により導出された前記切替回数とに基づいて、前記複数の画素データを前記画像処理手段により画像処理する際に前記第１種類の回路構成に切り替えるために要する総切替時間を算出する算出手段と、
前記算出手段により算出された前記総切替時間に基づいて、前記画像データを前記画像処理手段にて処理する際に前記複数の回路構成部の少なくともいずれかを前記第１種類の回路構成に固定するか否かを決定する決定手段と、
前記決定手段による決定に基づいて、前記複数の回路構成部を再構成させるよう前記画像処理手段を制御する制御手段と、
を備えることを特徴とする画像処理装置。
【請求項２】
前記導出手段は、前記解析手段による解析結果に基づいて、前記複数の画素データにおける第２属性の画像データの出現頻度、及び前記複数の画素データを前記画像処理手段により処理する際の画素データの属性が前記第２属性から他の属性に切り替えられる切替回数を導出し、
前記算出手段は、前記記憶手段に記憶された前記第２属性に対応する第２種類の回路構成に切り替えるための切替時間と、前記導出手段により導出された前記第２属性に切り替えられる切替回数に基づいて、前記複数の画素データを前記画像処理手段により画像処理する際に前記第２種類の回路構成に切り替えるために要する総切替時間を算出し、
前記決定手段は、前記第１属性に対応する総切替時間が前記第２属性に対応する総切替時間より長い場合に、前記複数の回路構成部の少なくともいずれかを前記第１種類の回路構成に固定すると決定することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記決定手段により決定された前記固定する回路構成部を除く他の回路構成部を、前記画像データを画像処理する際に出現する属性の順に、前記回路構成部の回路構成を再構成することを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
前記決定手段は、前記複数の回路構成部に含まれる２以上の回路構成部の回路構成を前記第１種類の回路構成に固定すると決定することを特徴とする請求項１乃至３の何れか１項に記載の画像処理装置。
【請求項５】
前記制御手段は、前記複数の回路構成部のいずれかを前記第１種類の回路構成に固定すると前記決定手段が決定した場合に、前記複数の回路構成部のいずれかに前記第１種類の回路構成が存在するか否かを判定し、前記第１種類の回路構成が存在しないと判定した場合に、前記複数の回路構成部のいずれかを前記第１種類の回路構成に再構成させるよう前記画像処理手段を制御することを特徴とする請求項１乃至４の何れか１項に記載の画像処理装置。
【請求項６】
前記制御手段は、前記複数の回路構成部のいずれかを前記第１種類の回路構成に再構成させる場合に、現在構成されている回路構成の中から、再び必要となる可能性が最も低い回路構成が構成されている回路構成部を切替対象の回路構成部とするよう制御することを特徴とする請求項１乃至５の何れか１項に記載の画像処理装置。
【請求項７】
それぞれ複数種類の回路構成のいずれかに再構成可能な複数の回路構成部を有する画像処理手段と、前記複数の回路構成部の回路構成を前記複数種類の回路構成のいずれかに切り替えるための切替時間を前記種類ごとに予め記憶した記憶手段とを備える画像処理装置における制御方法であって、
解析手段が、前記画像処理手段により処理されるべき画像データに含まれる複数の画素データの属性が複数種類の属性のいずれであるかを解析する解析ステップと、
導出手段が、前記解析ステップによる解析結果に基づいて、前記複数の画素データにおける第１属性の画素データの出現頻度、及び前記複数の画素データを前記画像処理手段により処理する際に画素データの属性が前記第１属性から他の属性に切り替えられる切替回数を導出する導出ステップと、
算出手段が、前記記憶手段に記憶された前記第１属性に対応する第１種類の回路構成に切り替えるための切替時間と、前記導出ステップにて導出された前記切替回数とに基づいて、前記複数の画素データを前記画像処理手段により画像処理する際に前記第１種類の回路構成に切り替えるために要する総切替時間を算出する算出ステップと、
決定手段が、前記算出ステップにより算出された前記総切替時間に基づいて、前記画像データを前記画像処理手段にて処理する際に前記複数の回路構成部の少なくともいずれかを前記第１種類の回路構成に固定するか否かを決定する決定ステップと、
制御手段が、前記決定ステップによる決定に基づいて、前記複数の回路構成部を再構成させるよう前記画像処理手段を制御する制御ステップと
を実行することを特徴とする画像処理装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動作中に再構成可能なロジック回路を用いた画像処理装置、及びその制御方法に関するものである。
【背景技術】
【０００２】
従来、回路動作中に論理回路を再構成可能なロジック回路として、ＦＰＧＡ（Ｆｉｅｌｄ Ｐｒｏｇｒａｍｍａｂｌｅ Ｇａｔｅ Ａｒｒａｙ）やＣＰＬＤ（Ｃｏｍｐｌｅｘ Ｐｒｏｇｒａｍｍａｂｌｅ Ｌｏｇｉｃ Ｄｅｖｉｃｅ）が知られている。また、近年では、システム動作中に、より動的に論理回路の再構成が実行可能な、リコンフィギュラブルプロセッサ（Ｒｅｃｏｎｆｉｇｕｒａｂｌｅ  Ｐｒｏｃｅｓｓｏｒ）が実用化されつつある。
【０００３】
このような再構成可能なロジック回路で、特にリコンフィギュラブルプロセッサを用いた従来技術が提案されている。例えば、特許文献１では、複数の画像処理を実行可能な処理部と、入力された画像を構成するそれぞれの画素に対して行う画像処理内容を示す属性情報に従って処理部を制御する制御部とを備える装置が提案されている。これにより、注目画素に対応する属性情報に応じた画像処理に関して、それぞれの専用のハードウェア全てを備えることなく、回路規模、消費電力等の増大を回避しつつ所望の画像処理を行うことができる。
【０００４】
また、特許文献２では、機能の変更が可能な複数の論理回路を備えたリコンフィギュラブル回路と、論理回路の機能を設定する設定部とを備える装置が提案されている。なお、当該設定部は、複数の論理回路のうち少なくとも一部の機能を、所定期間の間の出現頻度が高い同一の機能に設定することで、機能の切替処理に伴う電力消費を削減している。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００６−２８５７９２号公報
【特許文献２】特開２００６−０６５７８６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、従来技術においては以下に記載する問題がある。リコンフィギュラブルプロセッサは、ＰＥ（Ｐｒｏｃｅｓｓｏｒ Ｅｌｅｍｅｎｔ）と呼ばれる基本演算機能を有する多機能素子から構成される複数の回路構成面を備える。リコンフィギュラブルプロセッサの回路構成情報（コンフィギュレーションデータ）は、ＰＥを基本単位として構成される。そのため、論理ゲート単位で構成されるＦＰＧＡやＣＰＬＤのコンフィギュレーションデータと比較してデータ量が小さく、ＦＰＧＡやＣＰＬＤに比較してより短時間で回路の再構成ができる。
【０００７】
しかし、リコンフィギュラブルプロセッサにおいて回路構成を変更するには、回路構成の切替トリガ検出、回路動作停止、コンフィギュレーション切替、回路動作再開、といった複数の手順を経て行われるため一定の時間を要する。そのため、特許文献１に記載の技術のように、処理すべき画像データを構成する画素の属性情報に応じて処理回路を切替ながら画像処理を行う場合、属性情報が頻繁に切り替わるとコンフィギュレーションデータの切替回数が増大してしまう。その結果、コンフィグレーションデータの切替に伴う時間的オーバーヘッドが増大し、トータルの処理時間が遅くなるという問題が生じる。
【０００８】
一方、上述したように、特許文献２では、コンフィギュレーションデータを頻繁に切り替える際に生じる時間的オーバーヘッドを低減する手法が提案されている。特許文献２のように、処理される画像データ内で出現頻度が高い特定の属性に対応する処理回路機能を、複数ある回路構成面の１つに固定することで、該当する属性に係るコンフィギュレーションデータの切替に要する時間的オーバーヘッドを有効に低減できる。
【０００９】
しかし、プリンタ等の画像処理のように所定の順序で画像データを走査し画像処理を行う場合、画像データを構成する画素の属性情報の頻度が同じであっても走査方向に対する属性情報の分布によって、コンフィギュレーションデータの切替回数が異なる。コンフィギュレーションデータは実現する回路機能及び回路規模によってデータ量が異なり、それに応じてコンフィギュレーション切替に要する時間も増減する。つまり、属性の出現頻度が高いが走査方向に連続して出現する場合、コンフィギュレーション切替回数と切替に要する総時間とは減少する場合がある。一方、属性の出現頻度は低いが走査方向に対して断続的に出現する場合、コンフィギュレーション切替回数と切替に要する総時間とは増加する場合がある。更には、属性の出現頻度が等しい場合においても、処理内容が異なればコンフィギュレーション切替に要する総時間が異なる場合がある。即ち、属性の出現頻度のみでは、処理される画像データ内で出現頻度が高いような属性に対応する処理回路機能を最適に固定することが困難であった。
【００１０】
本発明は、上述の問題に鑑みて成されたものであり、それぞれ複数種類の回路構成のいずれかに再構成可能な複数の回路構成部を有する画像処理手段を備える画像処理装置において、複数の画素データにおけるある属性の画素データの出現頻度、及び画素データの属性がある属性から他の属性に切り替えられる切替回数に応じて最適な種類の回路構成を固定して、切替時間に係るオーバーヘッドを低減する画像処理装置を提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明は、例えば、画像処理装置として実現できる。画像処理装置は、それぞれ複数種類の回路構成のいずれかに再構成可能な複数の回路構成部を有する画像処理手段と、複数の回路構成部の回路構成を複数種類の回路構成のいずれかに切り替えるための切替時間を種類ごとに予め記憶した記憶手段と、画像処理手段により処理されるべき画像データに含まれる複数の画素データの属性が複数種類の属性のいずれであるかを解析する解析手段と、解析手段による解析結果に基づいて、複数の画素データにおける第１属性の画素データの出現頻度、及び複数の画素データを画像処理手段により処理する際に画素データの属性が第１属性から他の属性に切り替えられる切替回数を導出する導出手段と、記憶手段に記憶された第１属性に対応する第１種類の回路構成に切り替えるための切替時間と、導出手段により導出された切替回数とに基づいて、複数の画素データを画像処理手段により画像処理する際に第１種類の回路構成に切り替えるために要する総切替時間を算出する算出手段と、算出手段により算出された総切替時間に基づいて、画像データを画像処理手段にて処理する際に複数の回路構成部の少なくともいずれかを第１種類の回路構成に固定するか否かを決定する決定手段と、決定手段による決定に基づいて、複数の回路構成部を再構成させるよう画像処理手段を制御する制御手段と、を備えることを特徴とする。
【発明の効果】
【００１２】
本発明によれば、それぞれ複数種類の回路構成のいずれかに再構成可能な複数の回路構成部を有する画像処理手段を備える画像処理装置において、複数の画素データにおけるある属性の画素データの出現頻度、及び画素データの属性がある属性から他の属性に切り替えられる切替回数に応じて最適な種類の回路構成を固定して、切替時間に係るオーバーヘッドを低減する画像処理装置を提供することができる。
【図面の簡単な説明】
【００１３】
【図１】第１の実施形態に係る画像処理システム１００の一例を示すブロック図である。
【図２】第１の実施形態に係る画像処理装置３においてスキャナ１から画像データを受信した際の処理手順を示すフローチャートである。
【図３】第１の実施形態に係る画像処理装置３においてホストコンピュータ２からＰＤＬデータを受信した際の処理処理を示すフローチャートである。
【図４】第１の実施形態に係る画像解析部３８の処理手順を示すフローチャートである。
【図５】第１の実施形態に係る印字処理の処理手順を示すフローチャートである。
【図６】第１の実施形態に係る中間データのフォーマットの一例を示す図である。
【図７】第１の実施形態に係る画像処理部３７の構成例を示すブロック図である。
【図８】第１の実施形態に係る１ページ分の中間データの一例を示す図である。
【図９】第１の実施形態に係る画像解析処理の処理手順を示すフローチャートである。
【図１０】第１の実施形態に係る解析処理の１ページ分の中間データ８０１に対する解析結果を示す図である。
【図１１】第１の実施形態に係る中間データ８０１における画素の属性に対応する処理回路の回路構成情報のデータ量を示す図である。
【図１２】第１の実施形態に係る再構成可能な画像処理部３０３の処理手順を示すフローチャートである。
【図１３】第２の実施形態に係る中間データの１ページ分の一例を示す図である。
【図１４】第２の実施形態に係る解析処理の１ページ分の中間データ１３０１に対する解析結果を示す図である。
【図１５】第２の実施形態に係る再構成可能な画像処理部３０３の処理手順を示すフローチャートである。
【発明を実施するための形態】
【００１４】
以下に本発明の一実施形態を示す。以下で説明される個別の実施形態は、本発明の上位概念、中位概念及び下位概念など種々の概念を理解するために役立つであろう。また、本発明の技術的範囲は、特許請求の範囲によって確定されるのであって、以下の個別の実施形態によって限定されるわけではない。
【００１５】
＜第１の実施形態＞
＜画像処理システム＞
以下では、図１乃至図１１を参照して、第１の実施形態について説明する。図１は、第１の実施形態に係る画像処理システム１００の一例を示すブロック図である。画像処理システム１００は、スキャナ１、ホストコンピュータ２、画像処理装置３、記憶装置４及び印字エンジン部５を含んで構成される。
【００１６】
スキャナ１は、紙などの記録媒体上に記録された情報（画像、文字など）を読み取り、読み取った結果を画像データとして出力する。出力した画像のデータは画像処理装置３に入力される。ホストコンピュータ２は、一般のＰＣ（パーソナルコンピュータ）やＷＳ（ワークステーション）などのコンピュータである。ホストコンピュータ２で作成された画像や文書は、ＰＤＬデータとして画像処理装置３に入力される。なお、本実施形態では画像処理装置３にデータを入力する装置として、スキャナ１とホストコンピュータ２とを一例としているが、これ以外の装置であってもよく、例えば複合機やファクシミリ装置などから送出されたデータを画像処理装置３に入力してもよい。
【００１７】
このように画像処理装置３は、スキャナ１やホストコンピュータ２から送出されたデータを受信することができる。つまり、画像処理装置３は、スキャナ１及びホストコンピュータ２と相互にデータ通信が行えるように接続されている。しかし、当該接続については、特に限定しない。また、画像処理装置３は、スキャナ１やホストコンピュータ２から受けたデータに基づいて各種の画像処理を施し、画像処理済みのデータを出力する。なお、画像処理装置３の構成、及び画像処理装置３が行う処理の詳細については後述する。記憶装置４は、画像処理装置３から出力された画像処理済みデータ、及び、処理中途の中間データを記憶する。印字エンジン部５は、画像処理装置３から出力された画像処理済みのデータに基づいて、紙などの記憶媒体上に印字処理を行う。
【００１８】
次に、画像処理装置３の構成について説明する。画像処理装置３は、スキャナ入力処理ブロック３１、ホストＩ／Ｆ部３２、ＰＤＬ処理部３３、ＣＰＵ３４、ＲＡＭ３５、ＲＯＭ３６、画像処理部３７、画像解析部３８、ストレージコントローラ部３９、及びエンジンＩ／Ｆ部４０を備える。
【００１９】
スキャナ入力処理ブロック３１は、スキャナ１から送出された画像データを受信し、受信した画像データに対して各種の色処理を行う。ホストＩ／Ｆ部３２は、ホストコンピュータ２から送出されたＰＤＬデータを受けるためのインタフェースとして機能するものである。なお、ホストＩ／Ｆ部３２は、画像処理装置３とホストコンピュータ２とを繋ぐネットワークに応じて異なり、例えば、イーサネット（登録商標）やシリアルインタフェース、又は、パラレルインタフェース等で構成される。ＰＤＬ処理部３３は、ホストＩ／Ｆ部３２が受信したＰＤＬデータを展開する。
【００２０】
ＣＰＵ３４は、ＲＡＭ３５やＲＯＭ３６に格納されているプログラムやデータを用いて画像処理装置３全体の制御を行うとともに、画像処理装置３が行う後述の各処理を実行する。ＲＡＭ３５は、スキャナ入力処理ブロック３１やホストＩ／Ｆ部３２を介してスキャナ１やホストコンピュータ２から受信したデータを一時的に記憶するための領域を備えるとともに、ＣＰＵ３４が各種の処理を実行する際に用いるワーク領域を備える。ＲＯＭ３６には、ＣＰＵ３４が各処理を実行するためのプログラムやデータ、画像処理装置３の設定データ等が格納されている。
【００２１】
画像処理部３７は、論理回路を再構成可能なロジック回路から構成され、スキャナ１やホストコンピュータ２から送出されたデータから成る画像に対する画像処理を行う。画像処理部３７が行う処理の詳細については後述する。画像解析部３８は、記憶装置４に保存された画像データを解析し、画素の属性情報、及び、属性情報の分布を取得する。画像解析部３８が行う処理の詳細については後述する。
【００２２】
ストレージコントローラ部３９は、本画像処理装置３による画像処理済みデータを記憶装置４に記録する処理を制御する。エンジンＩ／Ｆ部４０は、画像処理装置３による画像処理済みデータを印字エンジン部５に送出するための一連の処理を行う。４１は上述の各部を繋ぐ画像処理装置３の内部バスである。
【００２３】
＜スキャナ入力＞
次に、図２を参照して、スキャナ１から画像処理装置３にデータを送出した場合に、画像処理装置３が行う処理について説明する。図２は、第１の実施形態に係る画像処理装置３においてスキャナ１から画像データを受信した際の処理手順を示すフローチャートである。以下で説明する処理は、ＣＰＵ３４によって統括的に制御される。
【００２４】
スキャナ入力処理ブロック３１を介して、スキャナ１から送出された画像データの受信をＣＰＵ３４が検知すると、図２に示すフローチャートに従った処理が開始される。まず、ステップＳ１００において、ＣＰＵ３４は、スキャナ１から送出された画像データを一時的にＲＡＭ３５へ格納する。続いて、ステップＳ１０１に進み、ＣＰＵ３４は、当該画像データに対して各種の色処理を行う。スキャナ入力処理ブロック３１とＲＡＭ３５との間のデータ転送は、スキャナ入力処理ブロック３１が有するデータ転送部で行ってもよく、ＣＰＵ３４が行ってもよい。
【００２５】
ステップＳ１０１において、ＣＰＵ３４は、さらに、色処理後の画像データを構成する各画素の属性情報を生成する。生成する属性情報としては、スキャナ入力の文字やスキャナ入力の写真等がある。その後、ステップＳ１０２に進み、ＣＰＵ３４は、生成した属性情報と色処理後の画像データとを中間データとして記憶装置４にストレージコントローラ部３９を介して送出する。この中間データは、画素単位で対応付け可能な状態でホストコンピュータ２から送信された画像データに応じて１ページ以上のデータとして記憶装置４に保存される。
【００２６】
＜ＰＤＬ入力＞
次に、図３を参照して、ホストコンピュータ２から画像処理装置３にデータを送出した場合に、画像処理装置３が行う処理について説明する。図３は、第１の実施形態に係る画像処理装置３においてホストコンピュータ２からＰＤＬデータを受信した際の処理処理を示すフローチャートである。以下で説明する処理は、ＣＰＵ３４によって統括的に制御される。
【００２７】
ホストＩ／Ｆ部３２を介して、ホストコンピュータ２から送出されたＰＤＬデータの受信をＣＰＵ３４が検知すると、図３に示すフローチャートに従った処理が開始される。まず、ステップＳ２０１において、ＣＰＵ３４は、受信したＰＤＬデータを一時的にＲＡＭ３５に格納する。次に、ステップＳ２０２へ進み、ＣＰＵ３４は、当該ＰＤＬデータを展開可能なＤｉｓｐｌａｙ  Ｌｉｓｔに展開し、ＰＤＬデータが有する画像情報とそれに対応する属性情報を生成し、Ｄｉｓｐｌａｙ  Ｌｉｓｔに格納する。生成する属性情報としては、ＰＤＬ入力の文字、ＰＤＬ入力の写真、等がある。
【００２８】
次に、ステップＳ２０３において、ＣＰＵ３４は、展開したＤｉｓｐｌａｙ  Ｌｉｓｔを一時的にＲＡＭ３５に格納する。続いて、ステップＳ２０４において、ＣＰＵ３４は、格納したＤｉｓｐｌａｙ  Ｌｉｓｔに基づいて中間データを生成する。中間データでは、Ｄｉｓｐｌａｙ  Ｌｉｓｔが有する画像情報とそれに対応する属性情報とが、画素単位で対応付け可能な状態である。さらに、ステップＳ２０５において、ＣＰＵ３４は、生成した中間データをストレージコントローラ部３９を介して記憶装置４に格納する。ここでは、ホストコンピュータ２から送信された画像データに応じて１ページ以上のデータとして、記憶装置４に保存される。
【００２９】
＜画像解析＞
次に、図４を参照して、記憶装置４に保存された中間データの属性解析を行う画像解析部３８の処理について説明する。図４は、第１の実施形態に係る画像解析部３８の処理手順を示すフローチャートである。
【００３０】
まず、ステップＳ３０１において、画像解析部３８は、記憶装置４に保存されている中間データをＲＡＭ３５に読み出し、読み出した中間データの画素毎に付与される属性情報を解析し、例えば、属性の出現頻度、切替順序、切替回数をページ単位で取得する。ステップＳ３０１の詳細については後述する。ステップＳ３０２において、画像解析部３８は、全ページの解析が終了したか否かを判定し、終了した場合にステップＳ３０３に進む。終了していない場合は、ステップＳ３０１をページ数回だけ繰り返し、全ページ分の解析が終了したらステップＳ３０３へ進む。ステップＳ３０３において、画像解析部３８は、ステップＳ３０１で取得した属性の出現頻度、切替順序、及び切替回数の各情報を画像処理部３７へ通知するとともに、画像解析の終了をＣＰＵ３４へ通知する。
【００３１】
＜印字処理＞
次に、図５を参照して、記憶装置４に保存された中間データに従った印字処理について説明する。図５は、第１の実施形態に係る印字処理の処理手順を示すフローチャートである。以下で説明する処理は、ＣＰＵ３４によって統括的に制御される。
【００３２】
まず、ステップＳ４０１において、ＣＰＵ３４は、ステップＳ３０３における画像解析部３８からの終了通知を受信すると、記憶装置４に保存されている中間データのＲＡＭ３５から画像処理部３７への読み出しを印字命令として指示する。画像処理部３７は、画像処理の前処理を行った後に中間データを読み出し、印字出力用の画像処理を施して印字データへ変換する。ステップＳ４０１おける処理の詳細については後述する。続いて、ステップＳ４０２において、ＣＰＵ３４は、変換した印字データを印字エンジン部５に出力する。印字エンジン部５は、印字データに従って印字処理を実行する。
【００３３】
図２乃至図５を参照して説明した各処理により、画像処理装置３は、スキャナ１、ホストコンピュータ２の何れから受けたデータであっても、これを中間データに変換して保持する。さらに、画像処理装置３は、この中間データに対して画像処理を施し、その結果を印字エンジン部５に出力することで印字処理を実行する。なお、上述の説明では、中間データを一時的に記憶装置４に保存する例を説明したが、生成した中間データを記憶装置４に保存することなく、直接階調変換などの画像処理を施し、その結果を印字エンジン部５に出力してもよい。
【００３４】
＜中間データ＞
次に、図６を参照して、中間データのフォーマットについて説明する。図６は、第１の実施形態に係る中間データのフォーマットの一例を示す図である。上述したように、中間データは、画像を構成する各画素のデータと、各画素の属性情報とを含む。より具体的には、図６に示すように、中間データは、画素のＹＭＣＫデータと、画素の属性情報とを含む。図６では属性情報のデータ長を４ビット、Ｙ、Ｍ、Ｃ、Ｋそれぞれのデータ長を８ビットとしているが、これに限定するものではない。また、画素のデータの色空間はＹＭＣＫとしているが、これに限定されるものでは無く他の色空間であってもよい。
【００３５】
＜画像処理部の構成＞
次ぐに、図７を参照して、画像処理部３７について説明する。図７は、第１の実施形態に係る画像処理部３７の構成例を示すブロック図である。画像処理部３７は、データＩ／Ｆ３０１、データ分離部３０２、及び再構成可能な画像処理部３０３を備える。また、再構成可能な画像処理部３０３は、複数の回路構成面（回路構成部）を有する再構成可能なロジック回路３００１と、回路再構成情報を格納する再構成情報記憶部３００２と、回路再構成情報を読み出し回路構成の変更を制御する再構成情報制御部３００３とを備える。再構成可能なロジック回路３００１は、複数の回路構成面として、面Ａ３０１０、面Ｂ３０１１、面Ｃ３０１２、及び、面Ｄ３０１３の４面を有し、その中の一面を有効化して画像処理行うことができる。また、ロジック回路３００１は、回路動作中に各回路構成面に構成した論理回路を複数種類の回路構成のいずれかに変更することができる。なお、本実施形態に係る画像処理装置は、複数の回路構成面において、構成する論理回路を固定する回路構成面と、再構成可能な回路構成面とに分けて使用する。
【００３６】
画像処理部３７に入力された中間データは、データ分離部３０２において画素データと属性情報とに分離される。分離された属性情報は再構成情報制御部３００３に入力される。再構成情報制御部３００３は属性情報に応じて再構成可能なロジック回路３００１の有効化すべき回路構成面を指示する。一方、分離された画素データは再構成可能なロジック回路３００１に入力され、先に指示された回路構成面に構成された画像処理が行われる。再構成可能なロジック回路３００１が有する何れの回路構成面Ａ〜Ｄにも所望の回路が構成されていない場合は、再構成情報記憶部３００２から、所望の再構成情報を再構成可能なロジック回路３００１の何れか回路構成面へ読み込み、読み込んだ後に画像処理が行われる。
【００３７】
＜画像解析部／画像処理部の動作＞
次に、図８乃至図１２を参照して、画像解析部３８及び画像処理部３７の動作について説明する。図８は、第１の実施形態に係る１ページ分の中間データの一例を示す図である。図８に示すように、１ページ分の中間データ８０１は、縦４画素、横４画素の画素数１６となる。また、各画素のフォーマットは、図６を用いて説明したように、画素のデータと属性情報とから構成される。例えば、８０２で示される画素は、画素のデータと、属性情報として属性２を示すデータを有する。
【００３８】
図９を参照して、中間データ８０１に対する画像解析部３８における画像解析処理について説明する。図９は、第１の実施形態に係る画像解析処理の処理手順を示すフローチャートである。なお、以下で説明するフローチャートは、図３のステップＳ３０１の詳細処理となる。
【００３９】
まず、ステップＳ９０１において、画像解析部３８は、最初の解析画素として解析対象となる画像データの走査原点にある画像をセットする。以下では、解析対象の画素を注目画素と称する。例えば、中間データ８０１の左上頂点から縦１画素目、横１画素目の画素を最初の注目画素としてセットする。この注目画素は、所定の順序で画像処理を行う場合に、当該所定の順序に合わせて設定される。
【００４０】
次に、ステップＳ９０２において、画像解析部３８は、注目画素の属性情報をデコードし属性情報を取得する。例えば、中間データ８０１の縦１画素目、横１画素目の画素属性として属性１（例えば、第１属性又は第２属性）が取得される。続いて、ステップＳ９０３において、画像解析部３８は、走査原点画素ではなく、かつ、ステップＳ９０２で取得した注目画素の属性情報が前画素と異なる属性であるか否かを判定する。ここで、前画素とは、解析処理において現在の注目画素より前の注目画素のことを示す。判定結果が真の場合は、ステップＳ９０４へ進み、画像解析部３８は、前回の何れの属性情報から今回の何れの属性情報へ切り替わったかを示す属性切替情報を取得し、ステップＳ９０５に進む。一方、ステップＳ９０３で判定結果が偽の場合は、ステップＳ９０５へ進む。例えば、先に解析した画素が走査原点である場合は、ステップＳ９０３で偽と判定されステップＳ９０５へ進む。
【００４１】
次に、ステップＳ９０５において、画像解析部３８は、次に解析する画素が残っているか否かについて真偽を判定する。ここで、判定結果が真の場合は、ステップＳ９０６へ進み、画像解析部３８は、次の注目画素として、走査方向順で次に位置する画素をセットし、処理をステップＳ９０２に戻す。例えば、現在の注目画素が走査原点である場合は、中間データ８０１の左上頂点から縦１画素目、横２画素目の画素を次の注目画素としてセットし、ステップＳ９０２へ戻り、上述の処理を継続する。
【００４２】
一方、ステップＳ９０５で判定結果が偽の場合は、中間データに対する属性取得が終了したものとみなし、ステップＳ９０７へ進む。ステップＳ９０７において、画像解析部３８は、取得した中間データが有する属性毎の総数と中間データの画素総数とを用いて、取得した属性の出現数を総画素数で除算することで属性毎に属性頻度を算出する。ここで、総画素数は中間データが有するヘッダ情報から取得するものとする。例えば、属性１の出現総数は２であり、総画素数は１６であることから、属性頻度は百分率表記で１３％となる。
【００４３】
図１０は、第１の実施形態に係る解析処理の１ページ分の中間データ８０１に対する解析結果を示す図である。図１０に示す解析結果は、画像解析部３８が中間データ８０１を解析して、導出した内容を示す。属性種類１００１で示される列は、１ページ分の中間データ内で取得した属性の種類を示す。ここでは、属性１から属性６の６種類の属性（例えば、第１属性及び第２属性を含む。）が取得されたことを示している。出現数１００２で示される列は、１ページ分の中間データ内で取得した各属性の数を示す。ここでは、属性１、属性２、属性３、及び、属性６がそれぞれ２個、属性４、及び、属性５がそれぞれ４個取得されたことを示す。出現頻度１００３で示される列は、１ページ分の中間データ内で取得した各属性の出現頻度を示す。出現頻度は、属性毎に、出現数１００２を総画素数１６で除算したものの百分率であり、属性１、属性２、属性３、及び、属性６がそれぞれ１３％、属性４、及び、属性５がそれぞれ２５％であることを示す。属性切替１００４で表される列は、１ページ分の中間データにおいて走査順に他の属性から切替わった順序を示す。ここで示される値は、１以上の数値が切替わりの順序を示す。値０は、当該属性への切替わりが無かったことを示し、走査原点の属性は、値が０となる。具体的には、中間データ８０１を走査順に解析する場合において、１回目の画素切替は、縦１画素、横２画素に位置する属性１を示す画素から、縦１画素、横３画素に位置する属性２の画素において生じる。中間データ８０１の属性解析において、属性２への属性切替はこの１回のみであるから、属性２に該当する属性切替値１００５は、１となる。更に、属性３への属性切替は２回目の画素切替のみであるから、属性３に該当する属性切替値は２となる。また、属性４への属性切替は、縦２画素、横３画素に位置する属性４の３回目の画素切替と、縦４画素、横３画素に位置する属性４の７回目の画素切替の２回となるため、属性４の属性切替値は３、７となる。つまり、属性切替値は、当該属性において切替が発生する順番を示している。以下同様に、他の属性の属性切替値も決定される。記憶装置４に記憶される中間データが複数ページ分ある場合は、図４で示される処理フローに沿ってページ毎に上述した解析結果が作成される。
【００４４】
次に、図１１及び図１２を参照して、中間データ８０１に対する画像処理部３７内の再構成可能な画像処理部３０３の詳細な処理について説明する。図１１は、第１の実施形態に係る中間データ８０１における画素の属性に対応する処理回路の回路構成情報のデータ量を示す図である。属性種類１１０１で示される列は、再構成情報記憶部３００２に格納された各属性の種類を示す。ここでは、属性１から属性６の６種類の属性があるものとする。再構成情報データ量１１０２で示される列は、各属性に対応する回路再構成情報のデータ量をＫＢ（キロバイト）単位で示したものである。ここで、属性の種類としては種々のものが適用可能であるが、例えば、属性１は文字属性であるとする。この場合、文字属性に対応する回路再構成情報に基づいて回路構成面を再構成すると、再構成された回路構成面に文字属性の画素を入力することで文字属性に適した画像処理を回路構成面に実行させることができる。また、属性２が網点属性であり、属性３が写真属性であり、属性４が図形属性であり、属性５が下地属性であり、属性６が表属性であるものとする。そして、各属性に対応する回路再構成情報に基づいて回路構成面（第１種類や第２種類の回路構成）を再構成することにより、再構成された回路構成面に各属性の画素を入力することで各属性に適した画像処理を回路構成面に実行させることができる。
【００４５】
ここで、属性１、２、３、６から他の属性に切り替えられる切替回数は１であり、属性４、５から他の属性に切り替えられる切替回数は２である。
【００４６】
図１２は、第１の実施形態に係る再構成可能な画像処理部３０３の処理手順を示すフローチャートである。なお、以下で説明する処理は、図３のステップＳ４０１の処理の詳細となる。
【００４７】
まず、ステップＳ１２０１において、画像処理部３０３は、図１１に示す回路構成情報のデータ量に応じて再構成可能な回路切替時間を算出する。回路切替時間は、回路構成情報のデータ量に比例する。そのため、属性１から属性６の回路切替時間は、順に、１０ｔ、１５ｔ、２０ｔ、１０ｔ、５ｔ及び１０ｔとなる。ここで、ｔは任意の単位時間を示すものとする。
【００４８】
次に、ステップＳ１２０２において、画像処理部３０３は、画像解析部３８から取得した解析結果及び上述の回路切替時間を元に再構成可能なロジック回路３００１の回路構成面（第１種類の回路構成）に固定する回路情報を決定する。決定手法としては、各属性の回路切替時間に切替回数を乗算することで各属性の総切替時間を算出し、予め定められた回路固定面数分だけ、総切替時間の降順に属性を抽出する。具体的には、属性１から属性６の総切替時間は、順に、０、１５ｔ、２０ｔ、２０ｔ、１０ｔ、１０ｔとなる。その結果、予め定められた回路固定面を２以上の回路構成面Ａ３０１０、及び、回路構成面Ｂ３０１１とすると、回路構成面に固定すべき属性は、総切替時間の長い属性３及び属性４に決定される。
【００４９】
次に、ステップＳ１２０３において、画像処理部３０３は、再構成可能なロジック回路の回路構成面を初期化する。固定回路面にはステップＳ１２０２で決定した固定すべき属性に対応する回路構成情報をロードし、残りの回路構成面には属性切替１００４に関して小さい値を含む属性に対応する回路構成情報をロードする。具体的には、固定すべき回路構成情報として、属性３、及び、属性４に対応する回路構成情報を、面Ａ３０１０、及び、面Ｂ３０１１にロードする。一方、面Ｃ３０１２、及び、面Ｄ３０１３には、属性１、及び、属性２に対応する回路構成情報をロードする。よって初期化後には、面Ａ３０１０に属性３、面Ｂ３０１１に属性４、面Ｃ３０１２に属性１、面Ｄ３０１３に属性２の回路が構成される。
【００５０】
次に、ステップＳ１２０４において、画像処理部３０３は、記憶装置４に保存された中間データの受信を開始する。続いて、ステップＳ１２０５において、再構成情報制御部３００３は、受信した属性情報の解析を行い、受信した画素の属性を取得する。さらに、ステップＳ１２０６において、画像処理部３０３は、受信した属性に対応する処理回路が回路構成面に存在するか否かについて真偽を判定する。
【００５１】
判定結果が真の場合は、ステップＳ１２０８に進み、画像処理部３０３は、所望の画像処理を行い、ステップＳ１２０９に進む。一方、判定結果が偽の場合は、ステップＳ１２０７に進み、画像処理部３０３は、回路構成切替を行う。回路構成切替時はデータ受信不可となるため、再構成情報制御部３００３がデータＩ／Ｆ３０１に対して、データ入力停止信号をアサートするよう指示し、データ入力を停止させた後、再構成情報記憶部３００２から所望の回路構成情報をロードする。ここで、切替対象となる回路構成面としては、現在構成されている再構成可能な回路構成面の論理回路の中から、再び必要となる可能性が最も低い論理回路が構成されている回路構成面が選択される。具体的には、図８の中間データ８０１に関して最初の回路切替が生じるのは、縦３画素、横１画素に位置する属性５を有する画素に対する処理を行う場合である。また、切替可能な面は、面Ｃ３０１２、及び、面Ｄ３０１３であり、何れの面に構成された回路の属性も処理終了まで切替わることがないため、ここでは面Ｃ３０１２を切替面とする。ステップＳ１２０７の処理が終了すると、ステップＳ１２０８に進み、画像処理部３０３は、所望の画像処理を行い、ステップＳ１２０９に進む。
【００５２】
ステップＳ１２０９において、画像処理部３０３は、現在処理する画素が中間データを構成する最終画素か否かについて真偽を判定する。判定結果が真の場合は画像処理を終了し、ＣＰＵ３４に対して終了通知を行う。一方、判定結果が偽の場合は、ステップＳ１２０５に戻り、上述した手順に応じた画像処理を行う。
【００５３】
上述したように、中間データ８０１を処理した場合、回路切替は、縦３画素、横１画素に位置する属性５の処理と、縦３画素、横３画素に位置する属性６の処理とを行う場合の計２回発生し、総切替時間は、５ｔ＋１０ｔ＝１５ｔとなる。一方、属性の出現頻度のみを優先し中間データ８０１を処理した場合について以下に説明する。
【００５４】
この場合、固定すべき回路情報に対応する属性は、属性４及び属性５となり、残りの回路に構成すべき回路情報に対応する属性を、属性１及び属性２とする。この場合、回路切替は、縦２画素、横１画素に位置する属性３の処理と、縦３画素、横３画素に位置する属性６の処理とを行う場合の計２回発生し、総切替時間は、２０ｔ＋１０ｔ＝３０ｔとなる。このように、本実施形態によれば、回路切替時間に係るオーバーヘッドと、データ処理に掛かる時間とを低減とすることができる。
【００５５】
以上説明したように、本実施形態に係る画像処理装置は、動作中に論理回路を再構成可能な複数の回路構成面を有するロジック回路と、各論理回路に切り替えるための切替時間を記憶する記憶部とを備え、実行する画像処理に応じてロジック回路を再構成する。また、本画像処理装置は、ロジック回路において所定の順序で処理される画像データに含まれる画素ごとの属性を解析し、解析された属性ごとに、属性の出現頻度、所定の順序において属性が切り替わる切替順序及び切替回数を導出する。さらに、本画像処理装置は、切替時間と切替回数とを属性ごとに乗算して、所定の順序で処理する際の属性ごとの総切替時間を算出する。この総切替時間を用いて、本画像処理装置は、画像処理を開始する前に予め構成する各回路構成面の論理回路を決定するとともに、固定する回路構成面と再構成可能な回路構成面とを決定し、実行する画像処理に応じて論理回路を切り替える。なお、本画像処理装置は、固定する回路構成面の論理回路を決定する際に、総切替時間の降順に属性を選択し、当該属性における画像処理を実行するための論理回路を決定する。このように、本画像処理装置は、画像処理対象となる画像データの各画素の属性を解析し、その出現頻度、切替順序、切替回数を考慮した総切替時間を算出して、固定する回路構成面に構成する論理回路を決定する。つまり、本画像処理装置は、所定の順序で処理される場合の画像データにとって最小となる切替時間で処理を実行することができる。
【００５６】
なお、本発明は上記実施形態に限らず様々な変形が可能となる。例えば、本画像処理装置は、画像処理に応じて再構成可能な回路構成面に構成された論理回路を切り替える場合に、再び必要となる可能性が最も低い論理回路が構成されている回路構成面を切替対象の回路構成面として選択する。これにより、本画像処理装置は、当該画像データを処理する中で可能な限り論理回路の切替回数を低減することができ、切替に要するオーバヘッドを低減することができる。
【００５７】
また、上記実施形態では、画像データに対する画像処理を行う画像処理装置を一例に説明した。しかし、本発明は、データを処理する情報処理装置であれば適用できる。この場合、情報処理装置は、処理する画像データにおける画素単位ごとの属性を解析する代わりに、処理するデータにおける所定単位ごとの属性を解析することで実現できる。
【００５８】
＜第２の実施形態＞
以下では、図１３乃至図１５を参照して、第２の実施形態について説明する。本実施形態では、上述した第１の実施形態の再構成可能な画像処理部３０３における処理において、再構成可能なロジック回路３００１における回路固定面数を好適に決定することで、回路再構成に掛かる切替時間を低減することを特徴とする。なお、第１の実施形態と同様の構成、及び、技術については、説明を省略する。
【００５９】
図１３は、第２の実施形態に係る中間データの１ページ分の一例を示す図である。ここで示される１ページ分の中間データ１３０１は、縦５画素、横４画素で画素数２０から構成されており、各画素のフォーマットは、図６を参照して説明したように、画素のデータと属性情報とから構成される。例えば、１３０２に示される画素は、画素のデータと、属性情報として属性１を示す情報を有する。なお、各属性の回路再構成情報のデータ量は、図１１で示したものと同一とする。
【００６０】
図１４は、第２の実施形態に係る解析処理の１ページ分の中間データ１３０１に対する解析結果を示す図である。属性種類１４０１で示される列は、１ページ分の中間データ内で取得した属性の種類を示す。ここでは、属性１から属性６の６種類の属性が取得されたことを示している。出現数１４０２で示される列は、１ページ分の中間データ内で取得した各属性の数を示す。ここでは、属性１が８個、属性２が４個、属性３、属性４、属性５、及び、属性６がそれぞれ２個、取得されたことを示す。出現頻度１４０３で示される列は、１ページ分の中間データ内で取得した各属性の出現頻度を示す。出現頻度は、属性毎に、出現数１４０２を総画素数２０で除算したものの百分率であり、属性１が４０％、属性２が２０％、属性３、属性４、属性５、及び、属性６がそれぞれ１０％であることを示す。属性切替１４０４で表される列は、１ページ分の中間データにおいて走査順にどの属性へ切替わったかを示す。ここで示される値は、１以上の数値が切替わりの順序を示す。値０は、当該属性への切替わりが無かったことを示し、走査原点の属性は、値０を含む。具体的には、中間データ１３０１を走査順に属性解析行う場合において、１回目の画素切替は、縦１画素、横４画素に位置する属性１を示す画素から、縦２画素、横１画素に位置する属性２の画素において生じる。中間データ１３０１の属性解析における属性２への属性切替は、更に以下の３つがある。１つ目は、縦３画素、横２画素に位置する属性１を示す画素から、縦３画素、横３画素に位置する属性２の画素への６回目の切替である。２つ目は、縦４画素、横２画素に位置する属性３を示す画素から、縦４画素、横３画素に位置する属性２の画素への１０回目の切替である。３つ目が、縦４画素、横４画素に位置する属性４を示す画素から、縦５画素、横１画素に位置する属性２の画素への１２回目の切替である。よって、属性２に該当する属性切替値１４０５は、１、６、１０及び１２となる。以下同様に、他の属性の属性切替値も決定される。
【００６１】
次に、図１５を参照して、中間データ１３０１に対する再構成可能な画像処理部３０３の処理について説明する。図１５は、第２の実施形態に係る再構成可能な画像処理部３０３の処理手順を示すフローチャートである。なお、以下で説明する処理は、図３のステップＳ４０１の処理の詳細となる。
【００６２】
まず、ステップＳ１５０１において、画像処理部３０３は、図１１に示す回路構成情報のデータ量に応じて再構成可能な回路切替時間を算出する。ここでは、回路切替時間は、回路構成情報のデータ量に比例する。そのため、属性１から属性６の回路切替時間は、順に、１０ｔ、１５ｔ、２０ｔ、１０ｔ、５ｔ及び１０ｔとなる。ここで、ｔは任意な単位時間を示すものとする。
【００６３】
次に、ステップＳ１５０２において、画像処理部３０３は、画像解析部３８から取得した解析結果及び上述の回路切替時間を元に再構成可能なロジック回路３００１の回路構成面で固定する回路構成面数、及び、固定する回路情報を決定する。決定手法としては、まず、各属性の回路切替時間に切替回数を乗じることで得られる属性ごとの総切替時間を算出する。次に、回路固定面数を０、１乃至N−１とした分だけ総切替時間の降順に属性を抽出し、固定する属性とする。ここで、Nは再構成可能なロジック回路３００１が備える回路構成面数である。そして、回路固定面数別に総切替時間を算出し、総切替時間が最も少ない回路固定面数を決定する。
【００６４】
具体的には、まず、中間データ１３０１における属性１から属性６の総切替時間は、順に、３０ｔ、６０ｔ、４０ｔ、３０ｔ、１５ｔ、２０ｔとなる。次に、回路固定面数を０、１、２、及び、３とした場合の総切替時間について説明する。以降の説明において、処理開始前に予め回路構成面に設定する回路は、走査順に処理する属性である属性１、属性２、属性３、及び属性４に対応するものとする。また、回路切替時に切り替える回路構成面は、回路固定面以外で、かつ、次の切替が最も起きない属性に対応する回路が構成されている面とする。
【００６５】
まず、回路固定面数が０、即ち、全ての面をロックしない場合について説明する。１回目の画素切替は、縦２画素、横３画素に位置する属性４を示す画素から縦２画素、横４画素に位置する属性５の画素において発生し、属性１に対応する回路情報が設定されている回路構成面上に属性５に対応する回路が時間５ｔで設定される。２回目の画素切替は、縦２画素、横４画素に位置する属性５を示す画素から縦３画素、横１画素に位置する属性１への画素において発生し、属性２に対応する回路情報が設定されている回路構成面上に属性１に対応する回路が時間１０ｔで設定される。３回目の画素切替は、縦３画素、横２画素に位置する属性１を示す画素から縦３画素、横３画素に位置する属性２の画素において発生し、属性３に対応する回路情報が設定されている回路構成面上に属性２に対応する回路が時間１５ｔで設定される。４回目の画素切替は、縦３画素、横３画素に位置する属性２を示す画素から縦３画素、横４画素に位置する属性６の画素において発生し、属性４に対応する回路情報が設定されている回路構成面上に属性６に対応する回路が時間１０ｔで設定される。５回目の画素切替は、縦４画素、横３画素に位置する属性２を示す画素から縦４画素、横４画素に位置する属性４の画素において発生し、属性１に対応する回路情報が設定されている回路構成面上に属性４に対応する回路が時間１０ｔで設定される。６回目の画素切替は、縦４画素、横４画素に位置する属性４を示す画素から縦５画素、横１画素に位置する属性２の画素において発生し、属性１に対応する回路情報が設定されている回路構成面上に属性２に対応する回路が時間１５ｔで設定される。７回目の画素切替は、縦５画素、横１画素に位置する属性２を示す画素から縦５画素、横２画素に位置する属性５の画素において発生し、属性６に対応する回路情報が設定されている回路構成面上に属性５に対応する回路が時間５ｔで設定される。８回目の画素切替は、縦５画素、横２画素に位置する属性５を示す画素から縦５画素、横３画素に位置する属性１の画素において発生し、属性３に対応する回路情報が設定されている回路構成面上に属性１に対応する回路が時間１０ｔで設定される。９回目の画素切替は、縦５画素、横３画素に位置する属性１を示す画素から縦５画素、横４画素に位置する属性６の画素において発生し、属性２に対応する回路情報が設定されている回路構成面上に属性６に対応する回路が時間１０ｔで設定される。よって、回路固定面数が０の場合における総切替時間は、５ｔ＋１０ｔ＋１５ｔ＋１０ｔ＋１０ｔ＋１５ｔ＋５ｔ＋１０ｔ＋１０ｔ＝９０ｔとなる。
【００６６】
次に、回路固定面数が１の場合について説明する。ここで、先に算出した総切替時間が６０ｔで最も大きい属性２に対応する回路を固定する。１回目の画素切替は、縦２画素、横３画素に位置する属性４を示す画素から縦２画素、横４画素に位置する属性５の画素において発生し、属性１に対応する回路情報が設定されている回路構成面上に属性５に対応する回路が時間５ｔで設定される。２回目の画素切替は、縦２画素、横４画素に位置する属性５を示す画素から縦３画素、横１画素に位置する属性１の画素において発生し、属性３に対応する回路情報が設定されている回路構成面上に属性１に対応する回路が時間１０ｔで設定される。３回目の画素切替は、縦３画素、横４画素に位置する属性６を示す画素から縦４画素、横１画素に位置する属性１の画素において発生し、属性４に対応する回路情報が設定されている回路構成面上に属性６に対応する回路が時間１０ｔで設定される。４回目の画素切替は、縦４画素、横１画素に位置する属性１を示す画素から縦４画素、横２画素に位置する属性３の画素において発生し、属性５に対応する回路情報が設定されている回路構成面上に属性３に対応する回路が時間２０ｔで設定される。５回目の画素切替は、縦４画素、横３画素に位置する属性２を示す画素から縦４画素、横４画素に位置する属性４の画素において発生し、属性６に対応する回路情報が設定されている回路構成面上に属性４に対応する回路が時間１０ｔで設定される。６回目の画素切替は、縦５画素、横１画素に位置する属性２を示す画素から縦５画素、横２画素に位置する属性５の画素において発生し、属性１に対応する回路情報が設定されている回路構成面上に属性５に対応する回路が時間５ｔで設定される。７回目の画素切替は、縦５画素、横２画素に位置する属性５を示す画素から縦５画素、横３画素に位置する属性１の画素において発生し、属性３に対応する回路情報が設定されている回路構成面上に属性１に対応する回路が時間１０ｔで設定される。８回目の画素切替は、縦５画素、横３画素に位置する属性１を示す画素から縦５画素、横４画素に位置する属性６の画素において発生し、属性４に対応する回路情報が設定されている回路構成面上に属性６に対応する回路が時間１０ｔで設定される。よって、回路固定面数が１の場合における総切替時間は、５ｔ＋１０ｔ＋１０ｔ＋２０ｔ＋１０ｔ＋５ｔ＋１０ｔ＋１０ｔ＝８０ｔとなる。
【００６７】
以下同様に、回路固定面数が２の場合は、属性２及び属性３に対応する回路を固定し、総切替時間は５０ｔとなる。回路構成面数が３の場合は、属性２、属性３、及び、総切替時間が３番目に大きい属性１と４の内、属性出現頻度の大きい属性１を固定し、総切替時間は４０ｔとなる。したがって、ステップＳ１５０２において、画像処理部３０３は、画像処理に要する時間が最小となるように、回路固定面数を３に決定し、回路構成面に固定すべき属性を属性１、属性２及び属性３と決定する。
【００６８】
次に、ステップＳ１５０３において、画像処理部３０３は、再構成可能なロジック回路の回路構成面を初期化する。固定回路面にはステップＳ１５０２で決定した固定すべき属性に対応する回路構成情報をロードし、残りの回路構成面には属性切替１４０４で小さい値を含む属性に対応する回路構成情報をロードする。具体的には、回路固定面を、回路構成面Ａ３０１０、回路構成面Ｂ３０１１、及び、回路構成面Ｃ３０１２の３面とし、属性１、２、及び、属性３に対応する回路構成情報を各面にロードする。一方、回路構成面Ｄ３０１３には属性４に対応する回路構成情報をロードする。よって初期化後には、面Ａ３０１０に属性１、面Ｂ３０１１に属性２、面Ｃ３０１２に属性３、面Ｄ３０１３に属性４の回路が構成される。
【００６９】
次に、ステップＳ１５０４において、画像処理部３０３は、記憶装置４に保存された中間データの受信を開始し、ステップＳ１５０５へ進む。ステップＳ１５０５において、再構成情報制御部３００３は、受信した属性情報の解析を行い、受信した画素の属性を取得する。次のステップＳ１５０６において、画像処理部３０３は、受信した属性に対応する処理回路が回路構成面に存在するか否かについて真偽を判定する。判定結果が真の場合は、ステップＳ１５０８に進み、画像処理部３０３は、所望の画像処理を行い、ステップＳ１５０９に進み。一方、判定結果が偽の場合は、ステップＳ１５０７へ進み、画像処理部３０３は、回路構成切替を行う。回路構成切替時はデータ受信不可となるため、再構成情報制御部３００３がデータＩ／Ｆ３０１に対して、データ入力停止信号をアサートするよう指示してデータ入力を停止させた後、再構成情報記憶部３００２から所望の回路構成情報をロードする。ここで、切り替える回路構成面は、回路固定面以外で、かつ、次の切替が最も起きない属性に対応する回路が構成されている面とする。具体的には、中間データ１３０１において最初の回路切替が生じるのは、縦２画素、横４画素に位置する属性５を有する画素に対する処理を行う場合である。また、切替可能な面は、面Ｄ３０１３となる。その後、ステップＳ１５０８に進み、画像処理部３０３は、所望の画像処理を行い、ステップＳ１５０９に進み。
【００７０】
ステップＳ１５０９において、画像処理部３０３は、現在処理している画素が中間データを構成する最終画素か否かについて真偽を判定する。判定結果が真の場合は画像処理を終了し、ＣＰＵ３４に対して終了通知を行う。一方、判定結果が偽の場合は、ステップＳ１５０５へ戻り、上述した手順に応じた画像処理を行う。
【００７１】
上述したように、中間データ１３０１を処理した場合において、回路固定面数３と好適に決定し、総切替時間は４０ｔなる。この結果、他の如何なる回路固定数よりも回路切替時間に係るオーバーヘッドと、データ処理に掛かる時間とを低減することができる。
【００７２】
以上説明したように、本実施形態に係る画像処理装置は、第１の実施形態の構成及び動作に加えて、さらに、固定する回路構成面の固定面数を総切替時間に基づき決定する。これにより、本画像処理装置は、より最適な切替時間で画像処理を実行することができる。なお、第１及び第２の実施形態は、様々な変形が可能である。例えば、第１の実施形態における予め定められた回路固定面数は２面に限定されるものではなく、回路構成面に応じて適宜増減してもよい。また、再構成可能なロジック回路が有する回路構成面数は、各実施形態で示した４面に限定されるものではなく、適宜増減してもよい。また、例えば、中間データの縦の数、横の数、及び、画素総数は、各実施形態で示した大きさに限定されるものではなく、スキャナ１及びホストコンピュータ２から入力されるデータに応じて適宜増減してもよい。また、各実施形態における画像処理装置を構成する各部の細部構成、及び細部動作に関しても、本発明の主旨を逸脱することの無い範囲で適便変更可能である。
【図１】
2010257342.tif 000003
【図２】
2010257342.tif 000004
【図３】
2010257342.tif 000005
【図４】
2010257342.tif 000006
【図５】
2010257342.tif 000007
【図６】
2010257342.tif 000008
【図７】
2010257342.tif 000009
【図８】
2010257342.tif 000010
【図９】
2010257342.tif 000011
【図１０】
2010257342.tif 000012
【図１１】
2010257342.tif 000013
【図１２】
2010257342.tif 000014
【図１３】
2010257342.tif 000015
【図１４】
2010257342.tif 000016
【図１５】
2010257342.tif 000017