(57)【特許請求の範囲】
【請求項１】
処理対象となる画像データを予め定めた処理単位ごとに区分けしてブロックを作成し、当該ブロックの各々についての画像特徴を判定する画像特徴判定手段と、
前記画像特徴判定手段で判定した画像特徴に基づいて、処理対象のブロックのための回路構成データを選択する構成選択手段と、
過去に処理された複数のブロックについて、どの前記ブロックに対してどの前記回路構成データが選択されたかの対応付けを表す実績データを管理する実績管理手段と、
前記実績管理手段で管理した実績データに基づいて、今後処理対象となるブロックのために選択される可能性が高い回路構成データを、予め用意されている複数の回路構成データの中から予測し再構成可能プロセッサの回路構成メモリにロードするロード手段と、
前記処理対象のブロックについて前記構成選択手段が選択した回路構成データが前記回路構成メモリの中に既にロードされていれば、前記再構成可能回路の回路構成を当該回路構成データに応じて再構成し、前記処理対象のブロックについて前記構成選択手段が選択した回路構成データが前記回路構成メモリの中にロードされていなければ、当該回路構成データを前記回路構成メモリにロードした後、前記再構成可能回路の回路構成を当該回路構成データに応じて再構成するよう制御する制御手段と、
を備え、
前記ロード手段は、前記画像特徴判定手段による画像特徴の判定がなされる前のブロックを前記予測の対象とし、当該予測の対象となるブロックと既に処理されたブロックとの、前記処理対象となる画像データにおける位置関係に基づいて、前記選択される可能性の高い回路構成データを予測することを特徴とする画像データ処理装置。
【請求項２】
前記ロード手段は、前記画像データ内のブロックのうち前記処理対象のブロックより前に処理された各ブロックについての前記構成選択手段による回路構成データの選択結果を集計して回路構成データごとの選択頻度を求め、選択頻度が多い回路構成データから順に、前記処理対象のブロックのために選択される可能性が高いと判定する、ことを特徴とする請求項１に記載の画像データ処理装置。
【請求項３】
前記ロード手段は、前記画像データのうちあらかじめ定められた数のブロックについての前記選択結果の集計を完了するごとに、前記回路構成データごとの選択回数の集計結果を初期化する、ことを特徴とする請求項２に記載の画像データ処理装置。
【請求項４】
前記ロード手段は、前記処理対象のブロックの直前の、少なくとも１ライン分の各ブロックについての前記構成選択手段による回路構成データの選択結果を記憶しており、記憶している各ブロックについての前記選択結果のうち、前記処理対象のブロックに位置的に近接する各ブロックについての前記選択結果に係る回路構成データを、前記処理対象のブロックのために選択される可能性が高い回路構成データとして前記回路構成メモリにロードする、
ことを特徴とする請求項１に記載の画像データ処理装置。
【請求項５】
コンピュータを、
処理対象となる画像データを予め定めた処理単位ごとに区分けしてブロックを作成し、当該ブロックの各々についての画像特徴を判定する画像特徴判定手段、
前記画像特徴判定手段で判定した画像特徴に基づいて、処理対象のブロックのための回路構成データを選択する構成選択手段、
過去に処理された複数のブロックについて、どの前記ブロックに対してどの前記回路構成データが選択されたかの対応付けを表す実績データを管理する実績管理手段、
前記実績管理手段で管理した実績データに基づいて、今後処理対象となるブロックのために選択される可能性が高い回路構成データを、予め用意されている複数の回路構成データの中から予測し再構成可能プロセッサの回路構成メモリにロードするロード手段、
前記処理対象のブロックについて前記構成選択手段が選択した回路構成データが前記回路構成メモリの中に既にロードされていれば、前記再構成可能回路の回路構成を当該回路構成データに応じて再構成し、前記処理対象のブロックについて前記構成選択手段が選択した回路構成データが前記回路構成メモリの中にロードされていなければ、当該回路構成データを前記回路構成メモリにロードした後、前記再構成可能回路の回路構成を当該回路構成データに応じて再構成するよう制御する制御手段、
として機能させるためのプログラムであって、
前記ロード手段は、前記画像特徴判定手段による画像特徴の判定がなされる前のブロックを前記予測の対象とし、当該予測の対象となるブロックと既に処理されたブロックとの、前記処理対象となる画像データにおける位置関係に基づいて、前記選択される可能性の高い回路構成データを予測することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像データ処理装置及びプログラムに関する。
【背景技術】
【０００２】
特許文献１に開示される装置は、入力データ特性判定部、回路構成制御部、回路構成情報格納部、再構成可能な符号化処理部を備え、前記入力データ特性判定部は、入力データの部分領域ごとにデータ特性を判定し、前記回路構成制御部は、前記データ特性に応じて、前記回路構成情報格納部中の回路構成情報により、前記再構成可能な符号化処理部内部の回路構成を変更する。
【０００３】
特許文献２に開示される装置は、画像処理すべき画像データより画像特徴とその画像特徴を有する領域とを判定する画像特徴判定回路と、回路データをリコンフィギュラブル回路に設定するリコンフィギュラブル回路制御部と、処理の実行を制御する制御手段とを備えている。リコンフィギュラブル回路制御部は、画像特徴判定回路によって判定された画像特徴に応じた回路データをリコンフィギュラブル回路に設定し、制御手段は、リコンフィギュラブル回路制御部で設定された回路データに基づいて再構成されたリコンフィギュラブル回路による前記判定された領域の画像データに対する画像処理の実行を制御する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−０３３１６１号公報
【特許文献２】特開２００８−２４２８５０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明は、処理すべき画像の画像特徴を判定した後にその画像特徴に対応する回路構成を再構成可能回路上に再構成する方式よりも、処理の高速化を図ることを目的とする。
【課題を解決するための手段】
【０００６】
請求項１に係る発明は、処理対象となる画像データを予め定めた処理単位ごとに区分けしてブロックを作成し、当該ブロックの各々についての画像特徴を判定する画像特徴判定手段と、前記画像特徴判定手段で判定した画像特徴に基づいて、処理対象のブロックのための回路構成データを選択する構成選択手段と、過去に処理された複数のブロックについて、どの前記ブロックに対してどの前記回路構成データが選択されたかの対応付けを表す実績データを管理する実績管理手段と、前記実績管理手段で管理した実績データに基づいて、今後処理対象となるブロックのために選択される可能性が高い回路構成データを、予め用意されている複数の回路構成データの中から予測し再構成可能プロセッサの回路構成メモリにロードするロード手段と、前記処理対象のブロックについて前記構成選択手段が選択した回路構成データが前記回路構成メモリの中に既にロードされていれば、前記再構成可能回路の回路構成を当該回路構成データに応じて再構成し、前記処理対象のブロックについて前記構成選択手段が選択した回路構成データが前記回路構成メモリの中にロードされていなければ、当該回路構成データを前記回路構成メモリにロードした後、前記再構成可能回路の回路構成を当該回路構成データに応じて再構成するよう制御する制御手段と、を備え、前記ロード手段は、前記画像特徴判定手段による画像特徴の判定がなされる前のブロックを前記予測の対象とし、当該予測の対象となるブロックと既に処理されたブロックとの、前記処理対象となる画像データにおける位置関係に基づいて、前記選択される可能性の高い回路構成データを予測することを特徴とする画像データ処理装置である。
【０００７】
請求項２に係る発明は、前記ロード手段は、前記画像データ内のブロックのうち前記処理対象のブロックより前に処理された各ブロックについての前記構成選択手段による回路構成データの選択結果を集計して回路構成データごとの選択頻度を求め、選択頻度が多い回路構成データから順に、前記処理対象のブロックのために選択される可能性が高いと判定する、ことを特徴とする請求項１に記載の画像データ処理装置である。
【０００８】
請求項３に係る発明は、前記ロード手段は、前記画像データのうちあらかじめ定められた数のブロックについての前記選択結果の集計を完了するごとに、前記回路構成データごとの選択回数の集計結果を初期化する、ことを特徴とする請求項２に記載の画像データ処理装置である。
【０００９】
請求項４に係る発明は、前記ロード手段は、前記処理対象のブロックの直前の、少なくとも１ライン分の各ブロックについての前記構成選択手段による回路構成データの選択結果を記憶しており、記憶している各ブロックについての前記選択結果のうち、前記処理対象のブロックに位置的に近接する各ブロックについての前記選択結果に係る回路構成データを、前記処理対象のブロックのために選択される可能性が高い回路構成データとして前記回路構成メモリにロードする、ことを特徴とする請求項１に記載の画像データ処理装置である。
【００１０】
請求項５に係る発明は、コンピュータを、処理対象となる画像データを予め定めた処理単位ごとに区分けしてブロックを作成し、当該ブロックの各々についての画像特徴を判定する画像特徴判定手段、前記画像特徴判定手段で判定した画像特徴に基づいて、処理対象のブロックのための回路構成データを選択する構成選択手段、過去に処理された複数のブロックについて、どの前記ブロックに対してどの前記回路構成データが選択されたかの対応付けを表す実績データを管理する実績管理手段、前記実績管理手段で管理した実績データに基づいて、今後処理対象となるブロックのために選択される可能性が高い回路構成データを、予め用意されている複数の回路構成データの中から予測し再構成可能プロセッサの回路構成メモリにロードするロード手段、前記処理対象のブロックについて前記構成選択手段が選択した回路構成データが前記回路構成メモリの中に既にロードされていれば、前記再構成可能回路の回路構成を当該回路構成データに応じて再構成し、前記処理対象のブロックについて前記構成選択手段が選択した回路構成データが前記回路構成メモリの中にロードされていなければ、当該回路構成データを前記回路構成メモリにロードした後、前記再構成可能回路の回路構成を当該回路構成データに応じて再構成するよう制御する制御手段、として機能させるためのプログラムであって、前記ロード手段は、前記画像特徴判定手段による画像特徴の判定がなされる前のブロックを前記予測の対象とし、当該予測の対象となるブロックと既に処理されたブロックとの、前記処理対象となる画像データにおける位置関係に基づいて、前記選択される可能性の高い回路構成データを予測することを特徴とするプログラムである。
【発明の効果】
【００１１】
請求項１又は５に係る発明によれば、処理すべき画像の画像特徴を判定した後にその画像特徴に対応する回路構成を再構成可能回路上に再構成する方式よりも、処理の高速化を図ることができる。
【００１２】
請求項２に係る発明によれば、現在の処理対象の処理単位よりも前に処理された各処理単位での選択頻度から、当該処理対象の処理単位に用いられる可能性が高い回路構成データを判定することができる。
【００１３】
請求項３に係る発明によれば、回路構成データの選択頻度の集計結果に、現在の処理対象とは離れた部分が影響を与えることを防止できる。
【００１４】
請求項２に係る発明によれば、現在の処理対象の処理単位に対して位置的に近い各処理単位での選択結果から、当該処理対象の処理単位に用いられる可能性が高い回路構成データを判定することができる。
【図面の簡単な説明】
【００１５】
【図１】実施形態の装置のハードウエア構成の一例を示す図である。
【図２】実施形態の装置の内部構成の一例を示す図である。
【図３】再構成実績管理部内の実績データの一例を示す図である。
【図４】構成メモリ管理部内のデータの一例を示す図である。
【図５】実施形態の処理手順の一例を示すフローチャートである。
【図６】実施形態の装置の内部構成の別の一例を示す図である。
【図７】変形例における再構成実績管理部内の実績データの一例を示す図である。
【図８】変形例の処理手順の一例を示すフローチャートである。
【発明を実施するための形態】
【００１６】
本実施形態の画像データ処理装置では、例えば印刷対象の画像などといった画像データに対する画像データ圧縮その他の画像処理を、ＤＲＰ（Dynamic Reconfigurable Processor:動的再構成可能プロセッサ）を用いて実行する。
【００１７】
図１に、実施形態の画像データ処理装置のハードウエア構成の一例を示す。この例では、画像データ処理装置は、ＤＲＰ１０により構成されている。
【００１８】
ＤＲＰ１０は、内部の論理回路の構成を動的（例えば１クロックの間）に変更（再構成）可能なプロセッサである。ＤＲＰ１０の一例としては、例えば特開２００９−３７６５号公報に紹介されているＤＡＰ・ＤＮＡアーキテクチャのプロセッサがあるが、もちろんこれに限定されるものではない。ＤＲＰ１０は、再構成可能回路部１２、再構成制御部１４及び構成メモリ１６を備える。
【００１９】
再構成可能回路部１２は、多数の論理回路要素を備えており、それら各論理回路要素の機能パラメータや論理回路要素同士の接続関係を動的に再構成（リコンフィギュレーション）可能となっている。再構成可能回路部１２としては、例えば、特開２００９−３７６５号公報に紹介されているＤＮＡなど、様々な既存の又はこれから開発される回路を用いることができる。例えば、ＤＮＡは、ＰＥ（プロセッサエレメント）と呼ぶ論理回路要素を多数備えるアレイであり、それらＰＥ間の接続構成を構成（コンフィギュレーション）データに従って高速（例えば１クロックの間）に組み替え可能となっている。
【００２０】
再構成制御部１４は、再構成可能回路部１２を含むＤＲＰ１０全体の動作制御を行う機能モジュールであり、例えば、汎用のプロセッサにて制御のためのプログラムを実行することにより実現される。再構成可能回路部１２内の論理回路要素の接続関係を制御することで、再構成可能回路部１２上にデータ処理のための回路を再構成する。また、再構成制御部１４は、再構成可能回路部１２上に再構成された回路に対してホストシステム（ＤＲＰ１０に対して処理を依頼する上位のシステム）からの指示に応じて入力データを供給したり、その回路からの出力データをホストシステムに返したりする制御を行う。なお、特開２００９−３７６５号公報で紹介されたＤＡＰ・ＤＮＡアーキテクチャをこの実施形態に採用した場合、再構成制御部１４はＤＡＰと呼ばれる汎用プロセッサコアで制御プログラムを実行することにより実現される（但し、これは一例に過ぎない）。
【００２１】
再構成可能回路部１２内の回路の再構成は、構成（コンフィギュレーション）メモリ１６に記憶された構成（コンフィギュレーション）データに従って行われる。構成データは、再構成可能回路部１２の回路構成を規定するデータである。構成メモリ１６には、複数の構成データが記憶される。構成メモリ１６内の複数の構成データのうち１つが選択されてアクティブ状態となると、その構成データが規定する回路構成が再構成可能回路部１２内に再構成されることになる。構成メモリ１６に記憶可能な構成データの数は限られており、例えば図２の例では３つである（但し、これはあくまで一例に過ぎない）。ＤＲＰ１０は、ホストシステムからの指示に応じて、構成メモリ１６に新たな構成データを追加したり、構成メモリ１６内の構成データを他の構成データに置き換えたり、削除したりする機能を備える。
【００２２】
再構成可能回路部１２及び再構成制御部１４は、共有バス１８を介して、ランダム・アクセス・メモリなどの高速アクセス可能なメモリ２０に接続されている。メモリ２０は、再構成制御部１４及び再構成可能回路部１２の作業領域として用いられる記憶装置であり、例えば、複数の構成データ２２や、ホストシステムから供給された処理対象の画像データ２４などを記憶している。メモリ２０内に記憶される構成データ２２の数は、構成メモリ１６内に記憶できる数よりも多い。構成メモリ１６には、メモリ２０内に記憶された構成データ２２のうちから選ばれた限られた数の構成データがロードされる。なお、図示例では、メモリ２０はＤＲＰ内に内蔵されているが、これはあくまで一例に過ぎず、再構成制御部１４及び再構成可能回路部１２がＤＲＰ１０の外部のメモリにアクセスする構成であってもよい。
【００２３】
本実施形態では、処理対象の画像データをあらかじめ定められたサイズのブロックごとに分け、それら各ブロックをラスター走査順にＤＲＰ１０にて画像処理する。ブロックは、例えば数画素×数画素程度のサイズの画素の集まりである。ここでは、画像データに対してある１つの画像処理（例えば圧縮符号化）を行うこと想定する。１つの画像処理でも、画像内のブロックごとに画像の性質（特徴）が異なるので、ブロックごとにそのブロックの画像の特徴に合わせて処理内容を変える。例えば、圧縮符号化の場合、文字と判定されたブロックにはファクシミリ等で用いられるＧ４圧縮を用い、写真画像と判定されたブロックにはＪＰＥＧ圧縮を用いるなどという処理の使い分けを行うのである。実施形態の装置では、ＤＲＰ１０内部の回路構成を各ブロックの画像の特徴に合わせて切り替えることで、個々のブロックの画像特徴に適応した画像処理を実現する。ここで、画像特徴の種類を細分しそれぞれに応じた処理を行うようにすると、そのための回路構成（構成データ）の種類が構成メモリ１６内に記憶可能な数を超えてしまう。このため、使用する可能性のあるすべての構成データをメモリ２０内に持たせておき、その中から必要なものを随時構成メモリ１６にロードすることになる。
【００２４】
ここで、本実施形態では、過去の実績に基づき必要となる構成データをいわば予測し、その予測に基づいて、あるブロックの処理の際に必要となる可能性の高い構成データを構成メモリ１６上に、事前に、すなわちそのブロックの画像特徴を判定する前にロードする。このように、本実施形態では、予測に基づく事前のロードにより、各ブロックを処理する時点で構成メモリ１６内に必要となる可能性の高い構成データが常に揃っているよう、構成メモリ１６を保守するのである。このような事前のロードのことを、以下では「プリロード」と呼ぶ。プリロードは、他のブロックがＤＲＰ１０上で処理されている間に行われるので、プリロードに要する時間は実質上隠蔽される。予測が外れた場合正しい構成データを改めてロードするための時間が余計にかかるものの、予測の的中率がある程度以上あれば、プリロードによるロード時間の隠蔽により、トータルのロード時間の短縮が見込まれる。
【００２５】
このプリロードのための制御を担う部分を、図１ではプリロード制御部３０Ａ又は３０Ｂで示した破線のブロックで示している。それら両者を破線のブロックで示したのは、それら両者のうち一方があればよいからである。すなわち、本実施形態の装置構成としては、プリロード制御部３０Ａを再構成制御部１４内に持つ構成と、プリロード制御部３０Ｂを再構成可能回路部１２内に持つ構成の２つが考えられる。
【００２６】
図２に、プリロード制御部３０Ａを再構成制御部１４内に持つ場合の、ＤＲＰ１０の内部構成の例を示す。
【００２７】
図２の例では、再構成可能回路部１２内には、データ入力部４２、画像特徴判定部４４、割込発生部４６、データ出力部４８及び画像処理部５０が再構成されている。これら各機能モジュール４２〜５０は、再構成可能回路部１２内の回路要素の組合せにより実現されている。図２に示した再構成可能回路部１２の内部構成は、構成メモリ１６内に記憶された複数の構成データ２２のうちの１つに基づき構成されたものである。ここでは、構成メモリ１６内の複数の構成データ２２の各々は、例えば、同じ画像処理（例えば圧縮処理）についての、画像特徴の種類ごとに対応する回路構成をそれぞれ規定するものとする。図２に示した再構成可能回路部１２内の回路構成は、それら複数の画像特徴の種類のうちの１つの種類「特徴Ｄ」に対応するものであり、構成データＤにより規定されているものである。このうち、データ入力部４２、画像特徴判定部４４、割込発生部４６、及びデータ出力部４８は、画像特徴の種類に依存しない共通の回路であり、画像処理部５０のみが個々の画像特徴ごとの固有の回路となっている。なお、構成メモリ１６内には、ある特定の画像処理（例えば画像圧縮）のための画像特徴ごとの複数の構成データ２２に加え、他の１以上の画像処理（例えば色空間変換）のための構成データが記憶されていてもよい。
【００２８】
図２に示した再構成可能回路部１２内の回路構成のうち、データ入力部４２は、メモリ２０から処理対象の画像データ２４の入力を受け付ける機能モジュールである。この画像の入力は、あらかじめ定めたサイズ（例えばｍ画素×ｎ画素。ｍ、ｎは自然数）のブロック単位で行われる。画像特徴判定部４４は、データ入力部４２から画像のブロックを受け取り、そのブロックの画像特徴を判定する。すなわち、画像特徴判定部４４は、複数の構成データ２２の各々に対応する画像特徴の中から、そのブロックの画像が最も当てはまる画像特徴を判定する。判定結果の画像特徴を示すデータが、割込発生部４６に渡される。割込発生部４６は、画像特徴判定部４４から受け取った判定結果データを再構成制御部１４に通知する。また、割込発生部４６は、１つ前のブロックについての画像特徴の判定結果を保持しており、これと、画像特徴判定部４４から今回受け取った判定結果とを比較し、両者が異なっている場合は、再構成制御部１４に対し、割込信号（再構成命令）を発する（両者が同一の場合は割込信号は発しない）。
【００２９】
画像処理部５０は、特定の画像特徴（図示例では構成データＤに対応する特徴Ｄ）のための画像処理のための回路構成である。画像処理部５０は、データ入力部４２から入力された処理対象の画像のブロックを、画像特徴判定部４４を介して受け取り、このブロックのデータをその回路構成により処理する。画像処理部５０の処理結果のデータは、データ出力部４８から共有バス１８を介してメモリ２０に書き込まれる。
【００３０】
次に再構成制御部１４の内部の機能構成の例を説明する。図２に示すように、再構成制御部１４は、指示部１５とプリロード制御部３０Ａとを備える。
【００３１】
指示部１５は、構成メモリ１６に対して、構成データのロード指示や再構成可能回路部１２の再構成の指示を行う機能モジュールである。
【００３２】
指示部１５は、再構成可能回路部１２の割込発生部４６から再構成命令を受けた場合、例えば構成メモリ管理部３４を参照して、再構成すべき回路構成の構成データが構成メモリ１６内にあるかどうかを判定する。ここで、再構成すべき回路構成が何であるかは、再構成命令のデータ内に示されていてもよい。また、割込発生部４６から通知される画像特徴の判定結果から、再構成すべき回路構成を特定してもよい。そして、再構成すべき回路構成の構成データが構成メモリ１６内にあれば、その構成データをアクティブ状態にする（すなわち回路構成をその構成データのものへと再構成する）ように構成メモリ１６に指示する。また、再構成すべき回路構成の構成データが構成メモリ１６内になければ、その構成データをロードし、ロードしたその構成データをアクティブ状態にするよう構成メモリ１６に指示する。なお、以上に説明した再構成命令を受けた場合の指示部１５の動作は、従来の再構成制御部が行う動作と同様のものである。
【００３３】
また、指示部１５は、プリロード制御部３０Ａから構成データのプリ（事前）ロード指示を受けると、構成メモリ１６に対して、その構成データをメモリ２０からロードするよう指示する。
【００３４】
プリロード制御部３０Ａは、再構成実績管理部３２Ａ、構成メモリ管理部３４、及びプリロード判定部３６Ａを有する。
【００３５】
再構成実績管理部３２Ａは、処理対象の画像データ２４内の各ブロックについての画像特徴判定部４４の判定結果の実績、すなわち各ブロックの処理のためにどの構成データが用いられたのかを表す実績データを記憶する。再構成実績管理部３２Ａは、再構成可能回路部１２内の割込発生部４６から受け取った画像特徴の判定結果に応じて、その実績データを更新する。
【００３６】
図３に、実績データのデータ内容の一例を示す。図３の実績データは、複数の構成データ２２の各々について、当該構成データが使用された頻度と、その頻度のそれら複数の構成データ２２内での順位と、の情報を含んでいる。頻度は、画像データを順に処理していく過程で累積されていく。
【００３７】
構成メモリ管理部３４は、構成メモリ１６にどの構成データが記憶されているかを記憶する。構成メモリ管理部３４は、例えば、指示部１５が構成メモリ１６に対して送ったロードの指示から、構成メモリ管理部３４内のデータを更新すればよい。
【００３８】
図４に、構成メモリ管理部３４のデータ内容の一例を示す。この例では、構成メモリ１６内の構成データ用の各格納領域の番号（「メモリ番号」と呼ぶ）に対応づけて、その格納領域に格納されている構成データの識別情報が登録されている。
【００３９】
プリロード判定部３６Ａは、再構成実績管理部３２Ａ内のデータに基づき、構成メモリ１６に対してプリロードする構成データを判定する。指示部１５は、プリロード判定部３６Ａが判定した構成データを構成メモリ１６にロードする。
【００４０】
次に、図５を参照して、図２のＤＲＰ１０が実行する処理の手順の一例を説明する。この手順では、まず処理対象の画像データ２４についての画像処理の実行を開始する際、初期化処理を実行する（Ｓ１０）。初期化処理では、再構成制御部１４の指示部１５が、複数の構成データ２２のうち初期値として指定されている構成データを構成メモリ１６にロードする。この初期ロードにより、構成メモリ１６内の各格納領域にそれぞれ構成データが格納されることになる。そして、ロードした構成データのうちあらかじめ定められたものに従って、再構成可能回路部１２を再構成する。また、初期化処理では、再構成実績管理部３２Ａ内の実績データをリセットする。すなわち、各構成データについての頻度をすべて０にし、順位をすべて空値（ヌル）にする。この初期化処理は、例えば画像データのあらかじめ定められた単位ごと（例えば１ページごと）に行う。
【００４１】
初期化（Ｓ１０）の後、再構成制御部１４は、再構成可能回路部１２に対して処理対象の画像データ２４の処理開始を指示する。すると、再構成可能回路部１２内に構成されているデータ入力部４２が、メモリ２０から処理対象の画像データ２４の先頭のブロックを入力する（Ｓ１２）。すると、画像特徴判定部４４が、そのブロックがいずれの画像特徴に該当するのか（言い換えればそのブロックを処理すべき回路構成を表す構成データはどれか）を判定する（Ｓ１４）。この判定の結果は、例えば割込発生部４６を介して、再構成制御部１４側に通知される。割込発生部４６は、直前のブロックについての画像特徴の判定結果と、画像特徴判定部４４から今回受け取った判定結果とを比較する（Ｓ１６）。ここで、最初のブロックについては、直前のブロックの判定結果として、現在アクティブになっている構成データに対応する画像特徴がセットされているようにすればよい（この場合Ｓ１６の判定結果は肯定、すなわち「同じ」）。
【００４２】
Ｓ１６で直前のブロックの判定結果と今回のブロックの判定結果が同じであった場合は、Ｓ２２に進み、画像処理部５０に今回のブロックのデータを供給して画像処理を行わせる。そして、処理対象の画像データ２４に未処理のブロックが残っていれば（Ｓ２４）、Ｓ１２に戻ってデータ入力部４２が次のブロックの入力を受け付ける。
【００４３】
Ｓ１６で、直前のブロックの判定結果と今回のブロックの判定結果が異なっていた場合、割込発生部４６は、今回の判定結果に対応する回路構成に再構成するよう、再構成制御部１４に再構成命令を送る。再構成命令を受けた再構成制御部１４では、指示部１５が、構成メモリ管理部３４を参照して、今回の判定結果に対応する構成データが構成メモリ１６内にあるかどうかを判定する（Ｓ１８）。あれば、指示部１５は、その再構成命令に対応する構成データをアクティブにするよう構成メモリ１６に指示する（Ｓ２０）。これにより、再構成可能回路部１２内の回路構成が、例えば１クロック（数ナノ秒オーダーの時間）の間に、今回のブロックの画像特徴に対応した画像処理部５０を有するものへと変化する。そして、画像処理部５０に今回のブロックのデータを供給して画像処理を行わせ（Ｓ２２）、処理対象の画像データ２４に未処理のブロックが残っていれば（Ｓ２４）、Ｓ１２に戻ってデータ入力部４２が次のブロックの入力を受け付ける。
【００４４】
Ｓ１８で今回の判定結果に対応する構成データが構成メモリ１６内にないと判定した場合、これは後述するプリロード制御（Ｓ３２〜Ｓ３８）による、過去の実績に基づく予測に従ったプリロードが外れたことを意味する。この場合、指示部１５は、再構成実績管理部３２Ａ及び構成メモリ管理部３４を参照して、構成メモリ１６内の構成データのうち頻度の順位が最下位に該当するものを求める。そして、構成メモリ１６内のその最下位の構成データの格納領域に、今回の判定結果に対応する構成データをロードする（Ｓ２６）。すなわち、構成メモリ１６内には、基本的には、再構成実績管理部３２Ａ内の実績データに示される頻度の上位から順に、あらかじめ定められた数（すなわち構成メモリ１６内の構成データの格納可能数。図示例では３個）の構成データが保持されているが、そのうちの最下位の構成データを、今回処理すべきブロックの特徴に応じた構成データに置き換えるのである。そして、指示部１５は、その新たにロードした構成データをアクティブにするよう構成メモリ１６に指示する（Ｓ２８）。これにより、再構成可能回路部１２内の回路構成が、今回のブロックの画像特徴に対応した画像処理部５０を有するものへと変化する。そして、画像処理部５０に今回のブロックのデータを供給して画像処理を行わせ（Ｓ２２）、処理対象の画像データ２４に未処理のブロックが残っていれば（Ｓ２４）、Ｓ１２に戻ってデータ入力部４２が次のブロックの入力を受け付ける。再構成可能回路部１２の回路構成を、現在の構成から構成メモリ１６内に既にある別の構成データの構成に切り替えるのには１クロック程度（例えば数ナノ秒）の時間しか要さないのに対し、予測が外れたときのＳ２６での構成データのロードには数マイクロ秒程度の時間を要する。また、Ｓ２６で、今回のブロックに対応する構成データを構成メモリ１６内に登録した後、指示部１５は、構成メモリ管理部３４内に記憶したデータのうち、頻度が最下位の構成データの識別情報を、今回新たにロードした構成データの識別情報に置き換える（Ｓ３０）。
【００４５】
以上のようなＳ１０〜Ｓ３０の処理を、１つの画像データ（例えば１ページの画像）の先頭のブロックから末尾のブロックまで、ラスター走査順に繰り返す。
【００４６】
また、Ｓ１４の判定の後、判定結果を受け取った再構成実績管理部３２Ａは、実績データ（図３参照）のうち、当該判定結果の構成データの頻度を更新（例えば１増加）し（Ｓ３２）、その頻度の更新に伴って各構成データの頻度の順位を更新する（いわば、頻度の順にソートする）（Ｓ３４）。そして、プリロード判定部３６Ａは、この順位の更新により、実績データのうちの上位のあらかじめ定められた数（すなわち構成メモリ１６内の構成データの格納数。図示例では３）の構成データの順位が、順位更新の前と比べて変化したかどうかを判定する（Ｓ３６）。この結果、変化があれば、その変化により上位のあらかじめ定められた数の中に新たに入った構成データを、構成メモリ１６内の頻度が最下位の構成データに置き換えるべくロード（プリロード）する（Ｓ３８）。なお、Ｓ３６の判定を行った時点で、再構成可能回路部１２の回路構成が構成メモリ１６内の最下位の構成データに基づき再構成されており、且つその回路構成がブロックの画像データを画像処理している場合には、Ｓ３８のプリロードの処理は、その画像処理が終了するのを待って実行すればよい。Ｓ３６で、実績データの上位の順に変更がない場合は、Ｓ３８の処理は行わない。
【００４７】
このようにＳ３２〜Ｓ３８の流れにより、構成メモリ１６内には、過去に使用された頻度の高い順に、あらかじめ定められた数の構成データが格納されることになる。過去に多く使用されたものほど、この次のブロックに使用される可能性も高いと言える。したがって、Ｓ３２〜Ｓ３８は、構成データ群のうち、次のブロックに使用される可能性が上位のものを構成メモリ１６にあらかじめロード（プリロード）する処理と言える。このＳ３２〜Ｓ３８の処理は、Ｓ１４の後、特にＳ２２で再構成可能回路部１２が画像データのブロックを画像処理している間に、その画像処理と並列的に行う。これにより、Ｓ３２〜Ｓ３８の処理に要する時間のうちの少なくとも一部分（最も好適な例では、その時間全部）が、Ｓ１４の判定から当該ブロックの画像処理の完了までの時間の中に隠蔽されることになる。
【００４８】
また、１つの変形例として、Ｓ３４の後、再構成実績管理部３２Ａ内の全構成データの頻度の合計があらかじめ定めた閾値に到達したかどうかを判定し（Ｓ４０）、到達した場合には再構成実績管理部３２Ａ内の実績データを初期化してもよい（Ｓ４２）。初期化では、例えば、すべての構成データの頻度を０に設定すればよい。Ｓ４０の閾値は、例えば処理対象である１ページの画像データのうちの、あらかじめ定めた行数分のブロック数としてもよい。すなわち、この例では、１ページの画像データを画像処理する中で、あらかじめ定めた行数ごとに実績データをリセットするのである。これは、１ページ内の例えば、上部、中程、下部などといった部分ごとに、その部分内に含まれる主たる画像内容の種類（例えばテキスト、写真、図形など）が互いに異なる場合があるためである。例えば、テキストが多い部分を処理している間は実績データ内のテキストに対応するいくつかの構成データの頻度が多くなるが、その次の部分が写真の多い部分であると、前のテキストが多い部分の頻度が当該次の部分に影響すると、プリロードの的中率（すなわち、Ｓ１８の判定結果が「肯定」になる率）が低下する。そこで、この例では、１ページを複数の部分に区切って、Ｓ４０〜Ｓ４２にて部分ごとに実績データの頻度をリセットすることで、ある部分の画像内容の傾向が他の部分のプリロード制御に影響を与えないようにした。
【００４９】
なお、図５では、Ｓ４０〜Ｓ４２の流れをＳ３６〜Ｓ３８の流れと並列に示したが、例えばＳ４０〜Ｓ４２の処理をＳ３６よりも先に実行してもよく、またこの場合においてＳ４２の初期化を行った場合にはＳ３６及びＳ３８の処理を行わないようにしてもよい。なお、Ｓ４０〜Ｓ４２の処理も、Ｓ２２の画像処理と並列的に実行する。
【００５０】
以上に説明した図２〜図５の例は、プリロード制御部３０Ａを再構成制御部１４内に設けた例であった。次に、図６を参照して、プリロード制御部３０Ａと同様の機能を備えるプリロード制御部３０Ｂを、再構成可能回路部１２内に構成する例を説明する。なお、図６において、既に説明した図２に示した要素と同様の要素については、同一の符号を付し、重複説明は省略する。
【００５１】
図６の例では、再構成可能回路部１２内に、プリロード制御部３０Ｂの回路が構成されている。プリロード制御部３０Ｂ内には、再構成実績管理部３２Ｂ、構成メモリ管理部３４、及びプリロード判定部３６Ｂの回路構成が含まれる。これら各要素３２Ｂ〜３６Ｂの機能は、図２のプリロード制御部３０Ａ内の各要素３２Ａ〜３６Ａと同様でよい。すなわち、再構成実績管理部３２Ｂは、各構成データの使用頻度及び頻度順位を示す実績データを保持しており、画像特徴判定部４４の判定結果に応じて内部の実績データにおける各構成データの頻度や順位を更新する。また、構成メモリ管理部３４は、構成メモリ１６内に格納された各構成データの識別情報を保持している（図４参照）。構成メモリ管理部３４は、プリロード判定部３６Ｂの判定結果、及び割込発生部４６による割込の指示から、構成メモリ１６内の構成データの組合せに変更があると判断される場合に、その変更に合わせて、保持している構成データの識別情報の組合せを更新する。
【００５２】
プリロード判定部３６Ｂは、画像特徴判定部４４の判定結果に応じて、再構成実績管理部３２Ｂの実績データ内の上位のあらかじめ定めた数（構成メモリ１６内の構成データの格納数分）の構成データの組合せに変化が生じた場合、その変化により新たに上位に加わった構成データを、構成メモリ１６内の最下位の構成データに置き換えるよう、再構成制御部１４に対してプリロード命令を発する。再構成制御部１４の指示部１５は、そのプリロード命令に応じて、その新たに上位に加入した構成データを構成メモリ１６内にプリロードする。このプリロードに応じて、構成メモリ管理部３４内のデータが構成メモリ１６内の記憶データを反映するように更新される。また、割込発生部４６は、あるブロックについての画像特徴判定部４４の判定結果が、１つ前のブロックについての判定結果と異なる場合は、再構成制御部１４に対して、今回の判定結果に対応する構成データへの再構成を命令する。この命令に応じ、指示部１５は、今回の判定結果に対応する構成データが構成メモリ１６内にある場合には、その構成データをアクティブ状態にする指示を構成メモリ１６に発し、ない場合には、その構成データを構成メモリ１６内の頻度が最下位のものの格納領域にロードし、ロードした構成データをアクティブ状態にする指示を発する。
【００５３】
なお、メモリ２０内の複数の構成データ２２の各々は、データ入力部４２、画像特徴判定部４４、割込発生部４６、データ出力部４８及び画像処理部５０の他に、プリロード制御部３０Ｂの回路構成を規定するデータも含んでいる。
【００５４】
図６の構成のＤＲＰ１０の処理手順は、図５に例示した手順と同様でよい。
【００５５】
次に、図７及び図８を参照して、過去の実績に基づくプリロード制御の別の例を説明する。
【００５６】
大まかに言えば、図７及び図８の変形例では、処理対象のブロックについて画像特徴を判定する前に、処理対象のブロックの画像上での近傍の各ブロックで用いられた構成データ群が構成メモリ１６内に既に保持されているようにする。１つの例では、ページの画像内で処理対象のブロックの１ライン（行）上のブロックのうち、処理対象のブロックの直上及び斜め上の各ブロックに用いられた構成データを構成メモリ１６にプリロードしておく。あるブロックの画像の性質は、近傍のブロックの画像の性質に似通っている可能性が高いので、処理対象のブロックの近傍のブロック群で用いられた構成データが、処理対象のブロックでも用いられる可能性は高い。この例では、ラスター走査順に進む処理の中で、過去に処理したブロックで用いられた構成データの種類を記憶しておき、そのうち現在の処理対象のブロックに位置的に近いブロックのために用いた構成データを、その処理対象ブロックで用いられる可能性が高い構成データとしてプリロードするのである。
【００５７】
この例では、再構成実績管理部３２Ａ又は３２Ｂに保持する実績データが、図３の例とは異なり、図７に示すようなものとなる。すなわち、図７に例示する実績データは、処理対象のブロックの直前の１ライン（主走査方向の１ライン）分の各ブロックの処理に用いた各構成データの識別情報を有している。なお、ここでいう「ライン」は、ブロックがラスター走査の主走査方向に沿って並んだものである。すなわち、ラインの高さは、ブロックの高さに等しい。図７における「ブロック番号」は、ラスター走査の主走査方向に沿ったブロック位置を示す番号であり、末尾の番号Ｎは１ライン当たりのブロック数である。図７の実績データは、処理対象ブロックの直前１ライン分の情報を保持しているので、ページの画像における処理対象ブロックの直上のブロックやその近傍のブロックに用いられた構成データが実績データから求められる。この変形例では、このように求めた近傍のブロックで用いられた構成データを、構成メモリ１６にプリロードする。
【００５８】
図７及び図８の変形例のＤＲＰ１０の構成は、図２又は図６に例示したものと同様でよい。この変形例の処理手順の一例を、図８を参照しつつ説明する。なお、以下では、図２の装置構成（プリロード制御部３０Ａが再構成制御部１４にある構成）の場合の手順を説明するが、図６に示す装置構成（プリロード制御部３０Ｂが再構成可能回路部１２内にある構成）の場合もほぼ同じ内容の処理でよい。
【００５９】
図８の手順のうち、Ｓ１０〜Ｓ２４の処理は、図５の手順の場合と同様である。図８の例では、Ｓ１８で今回のブロックのための構成データが構成メモリ１６内にないと判定された場合、構成メモリ１６内の構成データのうち、当該構成データに対応するブロックの画像内での位置が次の処理対象のブロックから最も遠いものを、次の処理対象のブロックに対応する構成データに置き換える（Ｓ２６ａ）。処理対象のブロックに近いブロックほど処理対象に似ている可能性が高いので、次のブロックから位置的に最も遠いブロックは、次のブロックに対する似ている可能性が他よりも相対的に低い。そこで、次のブロックを考慮して、Ｓ２６ａの処理を行うのである。なお、図８の処理では、現在の処理対象のブロックのライン内での順番（ライン内での位置）を表す順番カウンタを管理している。このため、再構成実績管理部３２Ａに記憶された処理対象ブロックの直前１行の各ブロックの構成データの識別情報のうち、そのカウンタが示す番号と同じブロック番号の構成データは、処理対象ブロックの直上のブロックで用いられた構成データを示す。構成メモリ１６内の構成データのうち、対応するブロックの番号が例えばこの直上のブロックの番号から最も離れたものを、Ｓ２６ａでの置き換え対象とすればよい。Ｓ２６ａのロードの後は、図５の手順と同様Ｓ２８で再構成を行ってＳ２２に進み、またＳ３０にて構成メモリ管理部３４を更新する。
【００６０】
また、図８の処理では、Ｓ１４の後、プリロード判定部３６Ｂは、再構成実績管理部３２Ｂ内の実績データ（図７参照）のなかで、次の順番、すなわち「順番カウンタ＋１」の順番に対応する構成データが構成メモリ１６内にあるかどうかを、構成メモリ管理部３４を参照して判定する（Ｓ５０）。次の順番に対応する構成データが構成メモリ１６内に無ければ、その構成データを構成メモリ１６にプリロードするよう指示部１５に指示する（Ｓ５２）。プリロード先は、Ｓ２６ａのロード先と同様、構成メモリ１６内の構成データのうち、対応するブロックの画像内での位置が次の処理対象のブロックから最も遠いものとすればよい。このプリロードに合わせて、構成メモリ管理部３４のデータ内容も更新する。このプリロードの後Ｓ５４に進む。Ｓ５０で次の順番に対応する構成データが構成メモリ１６内にあると判定した場合は、Ｓ５２は実行せずにＳ５４に進む。
【００６１】
Ｓ５４では、順番カウンタが示すブロック位置が主走査方向の１ラインの末尾（すなわち番号の最大値Ｎ）に達したかどうかを判定し、達していなければ番号カウンタの値を１増加させる（Ｓ５８）。達していれば、順番カウンタの示す値を１にリセットする（Ｓ５６）。
【００６２】
また、再構成実績管理部３２Ａは、Ｓ１４の後、保持している実績データの更新を行う。この更新処理では、保持している直前１ライン分の実績データのうち最も古いもの、すなわち現在の処理対象のブロックと同じ順番に対応する構成データの識別番号を、Ｓ１４の判定結果に対応するものに置き換える（Ｓ６０）。
【００６３】
図８の手順でも、Ｓ５０〜Ｓ６０の処理は、再構成可能回路部１２にて処理対象ブロックの画像処理を行っている間に実行する。
【００６４】
図８の手順では、構成メモリ１６内には、処理対象のブロックの直上のブロックとその近傍のブロックに対応する構成データが保持されており、処理対象のブロックの特徴がそれら保持されている構成データに適合する可能性は高い。
【００６５】
この変形例では、処理対象のブロックに対して位置的に近いブロックの構成データが構成メモリ１６内に保持されていればよい。位置的に近いブロックは、上に例示されたものに限らない。例えば、一例として、処理対象ブロックと同じライン内で１つ前のブロックの構成データを構成メモリ１６内に残すようにしてもよい。また、処理対象ブロックの直上のブロックで用いられる構成データと、処理対象ブロックの直上のラインのうち、その直上ブロックよりも順番が後のブロックで用いられる構成データとが構成メモリ１６内にプリロードされるようにしてもよい。
【００６６】
また、再構成実績管理部３２Ａに保持させる過去の構成データの使用実績は、１ライン分に限るわけではなく、もっと多くてもよい。
【００６７】
本実施形態では、処理対象の画像に応じて、図５及び図８の手順のうちの一方を選択して用いるようにしてもよい。例えば、テキストのみの画像を処理する場合には図８の手順を用い、テキスト以外の画像（例えば写真）が含まれる場合には図５の手順を用いるようにしてもよい。処理対象の画像がテキストのみか、そうでないかは、ＤＲＰ１０にその画像の処理を依頼する上位システムが、例えば、その画像を表すページ記述言語のデータを解析して求めてもよいし、ユーザが入力してもよい。
【００６８】
また、以上に例示したプリロード制御部３０Ａ又は３０Ｂの機能は、ＤＲＰ１０を制御する上位装置に、例えばソフトウエアとして実装してもよい。
【符号の説明】
【００６９】
１０  ＤＲＰ、１２  再構成可能回路部、１４  再構成制御部、１５  指示部、１６  構成メモリ、１８  共有バス、２０  メモリ、２２  構成データ、２４  処理対象の画像データ、３０Ａ  プリロード制御部、３０Ｂ  プリロード制御部、３２Ａ  再構成実績管理部、３２Ｂ  再構成実績管理部、３４  構成メモリ管理部、３６Ａ  プリロード判定部、３６Ｂ  プリロード判定部、４２  データ入力部、４４  画像特徴判定部、４６  割込発生部、４８  データ出力部、５０  画像処理部。
【図１】
0005786434.tif 000002
【図２】
0005786434.tif 000003
【図３】
0005786434.tif 000004
【図４】
0005786434.tif 000005
【図５】
0005786434.tif 000006
【図６】
0005786434.tif 000007
【図７】
0005786434.tif 000008
【図８】
0005786434.tif 000009