(57)【要約】【課題】  印刷処理の高速化を図るのに好適なハードウェア機能可変印刷装置を提供する。【解決手段】  プリンタ２００は、中間印刷データの処理に必要なモジュールを判定し、ハードウェア回路２０のハードウェア領域を複数に区分し、その判定結果に基づいて、各区分領域ごとにモジュールの実行順序を規定した再構成スケジュールを作成する。そして、必要なリコンフィギュアラブルデータを記憶装置６２から読み出し、読み出したリコンフィギュアラブルデータおよび再構成スケジュールに基づいてハードウェア回路２０のハードウェア領域を再構成する。【選択図】  図１
2005202667.tif 000002
【特許請求の範囲】
【請求項１】
ハードウェア機能を動的に変更して印刷を行う装置であって、
書換可能なハードウェア領域を有する回路素子と、前記ハードウェア領域の再構成スケジュールを作成する再構成スケジュール作成手段と、印刷データ処理機能を実現する回路を構成可能な回路構成情報および前記再構成スケジュール作成手段で作成した再構成スケジュールに基づいて前記ハードウェア領域を再構成するハードウェア領域再構成手段とを備えることを特徴とするハードウェア機能可変印刷装置。
【請求項２】
ハードウェア機能を動的に変更して印刷を行う装置であって、
印刷データ処理機能を実現する回路を構成可能な回路構成情報を記憶する回路構成情報記憶手段と、書換可能なハードウェア領域を有する回路素子と、処理対象データを受信する処理対象データ受信手段と、前記処理対象データ受信手段で受信した処理対象データの処理に必要な前記印刷データ処理機能を判定する印刷データ処理機能判定手段と、前記印刷データ処理機能判定手段の判定結果に基づいて前記ハードウェア領域の再構成スケジュールを作成する再構成スケジュール作成手段と、前記ハードウェア領域を再構成するハードウェア領域再構成手段とを備え、
前記ハードウェア領域再構成手段は、前記印刷データ処理機能判定手段で判定した印刷データ処理機能に対応する回路構成情報を前記回路構成情報記憶手段から読み出し、読み出した回路構成情報および前記再構成スケジュール作成手段で作成した再構成スケジュールに基づいて前記ハードウェア領域を再構成するようになっていることを特徴とするハードウェア機能可変印刷装置。
【請求項３】
請求項２において、
前記再構成スケジュール作成手段は、前記印刷データ処理機能判定手段で判定した印刷データ処理機能の並列度を決定するようになっていることを特徴とするハードウェア機能可変印刷装置。
【請求項４】
請求項３において、
前記再構成スケジュール作成手段は、１つの前記処理対象データについて前記印刷データ処理機能判定手段で判定した複数の印刷データ処理機能のうち、前記印刷データ処理機能のデータ処理時間が最小のものを基本印刷データ処理機能とし、前記各印刷データ処理機能ごとに、当該印刷データ処理機能の並列度を、当該印刷データ処理機能のデータ処理時間を前記基本印刷データ処理機能のデータ処理時間で除した値に応じた並列数として決定するようになっていることを特徴とするハードウェア機能可変印刷装置。
【請求項５】
請求項４において、
前記再構成スケジュール作成手段は、前記各印刷データ処理機能ごとに、当該印刷データ処理機能の実現に必要なデータ容量に、当該印刷データ処理機能について決定した並列度を乗算し、それら乗算結果の総和が所定のデータ容量に満たないと判定したときは、前記複数の印刷データ処理機能のうち処理工程が前段のものから優先的にその並列度を上げるようになっていることを特徴とするハードウェア機能可変印刷装置。
【請求項６】
請求項２ないし５のいずれかにおいて、
前記再構成スケジュール作成手段は、前記処理対象データ受信手段で受信した複数の処理対象データのうち、前記印刷データ処理機能判定手段で判定した印刷データ処理機能が共通するもの同士については、処理順位が連続するように処理順序を変更するようになっていることを特徴とするハードウェア機能可変印刷装置。
【請求項７】
請求項２ないし６のいずれかにおいて、
さらに、前記印刷データ処理機能判定手段で判定した印刷データ処理機能に対応する回路構成情報が前記回路構成情報記憶手段に存在しないと判定したときは、当該回路構成情報を外部から取得する回路構成情報取得手段を備え、
前記ハードウェア領域再構成手段は、前記回路構成情報記憶手段の回路構成情報または前記回路構成情報取得手段で取得した回路構成情報に基づいて前記ハードウェア領域を再構成するようになっていることを特徴とするハードウェア機能可変印刷装置。
【請求項８】
請求項７において、
前記再構成スケジュール作成手段は、前記処理対象データ受信手段で受信した複数の処理対象データのうち、前記印刷データ処理機能判定手段で判定した印刷データ処理機能に対応する回路構成情報が前記回路構成情報記憶手段に存在しないものについては、処理順位が低くなるように処理順序を変更するようになっていることを特徴とするハードウェア機能可変印刷装置。
【請求項９】
請求項２ないし８のいずれかにおいて、
前記ハードウェア領域再構成手段は、前記ハードウェア領域を複数に区分したときの各区分領域ごとに前記印刷データ処理機能を実現する回路を構成し、前記印刷データ処理機能の処理が完了した区分領域については、新たな前記印刷データ処理機能を実現する回路を構成するようになっていることを特徴とするハードウェア機能可変印刷装置。
【請求項１０】
請求項２ないし９のいずれかにおいて、
さらに、前記回路構成情報の利用頻度を測定する利用頻度測定手段と、前記回路構成情報記憶手段の回路構成情報を管理する回路構成情報管理手段とを備え、
前記回路構成情報管理手段は、前記回路構成情報記憶手段の回路構成情報のうち前記利用頻度測定手段で測定した利用頻度が高いものを優先的に保持するようになっていることを特徴とするハードウェア機能可変印刷装置。
【請求項１１】
ハードウェア機能を動的に変更して印刷を行う装置であって、
書換可能なハードウェア領域を有する回路素子と、印刷データ処理機能を実現する回路を構成可能な回路構成情報に基づいて前記ハードウェア領域を再構成するハードウェア領域再構成手段と、処理対象データを受信する処理対象データ受信手段と、前記処理対象データ受信手段で受信した処理対象データの処理に必要な前記印刷データ処理機能を判定する印刷データ処理機能判定手段とを備え、
前記ハードウェア領域再構成手段は、前記印刷データ処理機能判定手段で判定した印刷データ処理機能に対応する回路構成情報に基づいて前記ハードウェア領域を再構成するようになっていることを特徴とするハードウェア機能可変印刷装置。
【請求項１２】
書換可能なハードウェア領域を有する回路素子を備える印刷装置のハードウェア機能を動的に変更するプログラムであって、
前記ハードウェア領域の再構成スケジュールを作成する再構成スケジュール作成手段、並びに印刷データ処理機能を実現する回路を構成可能な回路構成情報および前記再構成スケジュール作成手段で作成した再構成スケジュールに基づいて前記ハードウェア領域を再構成するハードウェア領域再構成手段として実現される処理をコンピュータに実行させるためのプログラムであることを特徴とするハードウェア機能変更プログラム。
【請求項１３】
印刷データ処理機能を実現する回路を構成可能な回路構成情報を記憶する回路構成情報記憶手段と、書換可能なハードウェア領域を有する回路素子とを備える印刷装置のハードウェア機能を動的に変更するプログラムであって、
処理対象データを受信する処理対象データ受信手段、前記処理対象データ受信手段で受信した処理対象データの処理に必要な前記印刷データ処理機能を判定する印刷データ処理機能判定手段、前記印刷データ処理機能判定手段の判定結果に基づいて前記ハードウェア領域の再構成スケジュールを作成する再構成スケジュール作成手段、および前記ハードウェア領域を再構成するハードウェア領域再構成手段として実現される処理をコンピュータに実行させるためのプログラムであり、
前記ハードウェア領域再構成手段は、前記印刷データ処理機能判定手段で判定した印刷データ処理機能に対応する回路構成情報を前記回路構成情報記憶手段から読み出し、読み出した回路構成情報および前記再構成スケジュール作成手段で作成した再構成スケジュールに基づいて前記ハードウェア領域を再構成するようになっていることを特徴とするハードウェア機能変更プログラム。
【請求項１４】
書換可能なハードウェア領域を有する回路素子を備える印刷装置のハードウェア機能を動的に変更するプログラムであって、
印刷データ処理機能を実現する回路を構成可能な回路構成情報に基づいて前記ハードウェア領域を再構成するハードウェア領域再構成手段、処理対象データを受信する処理対象データ受信手段、および前記処理対象データ受信手段で受信した処理対象データの処理に必要な前記印刷データ処理機能を判定する印刷データ処理機能判定手段として実現される処理をコンピュータに実行させるためのプログラムであり、
前記ハードウェア領域再構成手段は、前記印刷データ処理機能判定手段で判定した印刷データ処理機能に対応する回路構成情報に基づいて前記ハードウェア領域を再構成するようになっていることを特徴とするハードウェア機能変更プログラム。
【請求項１５】
書換可能なハードウェア領域を有する回路素子を備える印刷装置のハードウェア機能を動的に変更する方法であって、
前記ハードウェア領域の再構成スケジュールを作成する再構成スケジュール作成ステップと、印刷データ処理機能を実現する回路を構成可能な回路構成情報および前記再構成スケジュール作成ステップで作成した再構成スケジュールに基づいて前記ハードウェア領域を再構成するハードウェア領域再構成ステップとを含むことを特徴とするハードウェア機能変更方法。
【請求項１６】
印刷データ処理機能を実現する回路を構成可能な回路構成情報を記憶する回路構成情報記憶手段と、書換可能なハードウェア領域を有する回路素子とを備える印刷装置のハードウェア機能を動的に変更する方法であって、
処理対象データを受信する処理対象データ受信ステップと、前記処理対象データ受信ステップで受信した処理対象データの処理に必要な前記印刷データ処理機能を判定する印刷データ処理機能判定ステップと、前記印刷データ処理機能判定ステップの判定結果に基づいて前記ハードウェア領域の再構成スケジュールを作成する再構成スケジュール作成ステップと、前記ハードウェア領域を再構成するハードウェア領域再構成ステップとを含み、
前記ハードウェア領域再構成ステップは、前記印刷データ処理機能判定ステップで判定した印刷データ処理機能に対応する回路構成情報を前記回路構成情報記憶手段から読み出し、読み出した回路構成情報および前記再構成スケジュール作成ステップで作成した再構成スケジュールに基づいて前記ハードウェア領域を再構成することを特徴とするハードウェア機能変更方法。
【請求項１７】
書換可能なハードウェア領域を有する回路素子を備える印刷装置のハードウェア機能を動的に変更する方法であって、
印刷データ処理機能を実現する回路を構成可能な回路構成情報に基づいて前記ハードウェア領域を再構成するハードウェア領域再構成ステップと、処理対象データを受信する処理対象データ受信ステップと、前記処理対象データ受信ステップで受信した処理対象データの処理に必要な前記印刷データ処理機能を判定する印刷データ処理機能判定ステップとを含み、
前記ハードウェア領域再構成ステップは、前記印刷データ処理機能判定ステップで判定した印刷データ処理機能に対応する回路構成情報に基づいて前記ハードウェア領域を再構成することを特徴とするハードウェア機能変更方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ハードウェア機能を動的に変更して印刷を行う装置、並びにそれに適用されるプログラムおよび方法に係り、特に、印刷処理の高速化を図るのに好適なハードウェア機能可変印刷装置およびハードウェア機能変更プログラム、並びにハードウェア機能変更方法に関する。
【背景技術】
【０００２】
従来、デバイスの機能を動的に変更する技術としては、例えば、特許文献１，２に開示されている画像処理装置があった。
特許文献１記載の発明は、プロセッサアレイ部が画像処理を実行していないアイドルサイクルタイム中に、画像処理手順および画像処理のためのデータの転送をプロセスコントローラから受け、これらを一時記憶するホストバッファからプログラムＲＡＭおよびデータＲＡＭに画像処理手順および画像処理のためのデータを転送する転送制御部を画像処理プロセッサに設け、転送制御部は、ホストバッファからプログラムＲＡＭおよびデータＲＡＭへの転送を複数回に分割しておこなうよう転送制御する。
【０００３】
特許文献２記載の発明は、適用される画像処理機能を実行するために必要とされる回路モジュールとプログラムモジュールとの組合せを選択し、選択した回路モジュールの情報を含んでいる書換情報に基づいて、半導体素子の書換可能なハードウェア領域を再構成することによって回路モジュールを形成し、回路モジュールが形成された半導体素子において、選択されたプログラムモジュールを実行する。
【特許文献１】特開２００１−７６１２５号公報
【特許文献２】特開２００３−１５０９４９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
印刷においては、ホスト端末が作成した文書データまたは中間印刷データを、プリンタが印刷可能なラスターデータ（以下、単に印刷データという。）に変換するレンダリング処理を行う。レンダリング処理は、印刷の流れのなかでも最も負荷の大きい処理の一つであり、印刷処理全体の高速化においてはレンダリング処理の効率化が重要となる。
しかしながら、特許文献１記載の発明にあっては、プロセッサアレイ部が画像処理を実行していないアイドルサイクルタイム中にプログラムデータの転送を行うことで処理の高速化を図るようになっているため、特許文献１記載の発明をプリンタに適用した場合、プログラムデータの転送に要する時間を短縮することはできても、レンダリング処理に要する時間を短縮することはできない。
【０００５】
レンダリング処理の高速化を図る方法としては、特許文献２記載の発明のように、書換可能なハードウェア領域を有するハードウェア回路をプリンタに設け、ハードウェア領域を必要に応じて動的に再構成し、ハードウェア回路により文書データまたは中間印刷データを印刷データに変換する方法が知られている。確かに、レンダリング処理にだけ注目すれば、レンダリング処理をソフトウェアで行うよりもハードウェアで行った方が処理は高速である。しかしながら、ハードウェア領域を再構成するにはある程度の時間を要するため、例えば、複数のホスト端末から同時に印刷要求があったりしてハードウェア領域の再構成が頻繁に発生すると、個々のレンダリング処理時間は短くても、ハードウェア領域の再構成に時間を要し、結果として印刷処理全体の時間が増大する可能性がある。
【０００６】
そこで、本発明は、このような従来の技術の有する未解決の課題に着目してなされたものであって、印刷処理の高速化を図るのに好適なハードウェア機能可変印刷装置およびハードウェア機能変更プログラム、並びにハードウェア機能変更方法を提供することを目的としている。
【課題を解決するための手段】
【０００７】
〔発明１〕  上記目的を達成するために、発明１のハードウェア機能可変印刷装置は、
ハードウェア機能を動的に変更して印刷を行う装置であって、
書換可能なハードウェア領域を有する回路素子と、前記ハードウェア領域の再構成スケジュールを作成する再構成スケジュール作成手段と、印刷データ処理機能を実現する回路を構成可能な回路構成情報および前記再構成スケジュール作成手段で作成した再構成スケジュールに基づいて前記ハードウェア領域を再構成するハードウェア領域再構成手段とを備えることを特徴とする。
【０００８】
このような構成であれば、再構成スケジュール作成手段により、ハードウェア領域の再構成スケジュールが作成され、ハードウェア領域再構成手段により、回路構成情報および作成された再構成スケジュールに基づいてハードウェア領域が再構成される。ハードウェア領域は、印刷データ処理機能を実現する回路として再構成される。例えば、２つの処理対象データＡ，Ｂを処理する場合に、処理対象データＡの処理には印刷データ処理機能ａ、ｂが、処理対象データＢの処理には印刷データ処理機能ｃ、ｂがそれぞれ必要であるとする。印刷データ処理機能ａ〜ｃを実現する回路としてハードウェア領域を再構成するのに要する時間をそれぞれｔｗａ、ｔｗｂ、ｔｗｃとし、印刷データ処理機能ａ〜ｃを実現した回路で印刷データ処理に要する時間をそれぞれｔａ、ｔｂ、ｔｃとしたとき、再構成スケジュールを作成することなく処理対象データＡ，Ｂを単純に順次処理すれば、合計の所要時間は、ｔｗａ＋ｔａ＋ｔｗｂ＋ｔｂ＋ｔｗｃ＋ｔｃ＋ｔｗｂ＋ｔｂとなる。これに対し、ハードウェア領域を２つに区分し、第１区分領域では印刷データ処理機能ａ，ｃをその順で構成し、第２区分領域では印刷データ処理機能ｂを構成し、処理対象データＡ，Ｂを並列に処理するように再構成スケジュールを作成すれば、合計の所要時間はおよそ、ｔｗａ＋ｔａ＋ｔｗｃ＋ｔｃ（第１区分領域での所要時間）およびｔｗｂ＋ｔｂ＋ｔｂ（第２区分領域での所要時間）のうちいずれか長い方となる。
【０００９】
これにより、印刷データ処理を回路素子により行うので、ソフトウェアで行う場合に比して、印刷データ処理に要する時間を短縮することができる。また、再構成スケジュールを作成し、作成した再構成スケジュールに基づいてハードウェア領域を再構成するので、ハードウェア領域の再構成を効率的に行うことができる。例えば、ハードウェア領域の再構成に要する時間、印刷データ処理に要する時間または待ち時間を短縮することができる。したがって、従来に比して、印刷処理の高速化を図ることができるという効果が得られる。
【００１０】
ここで、回路構成情報は、利用可能な場所にあればどのようなものでも利用することができ、例えば、装置内に記憶しているものを利用してもよいし、外部から受信または取得したものを利用してもよい。以下、発明１１のハードウェア機能可変印刷装置、発明１２および２２のハードウェア機能変更プログラム、並びに発明２３および３３のハードウェア機能変更方法において同じである。
【００１１】
〔発明２〕  さらに、発明２のハードウェア機能可変印刷装置は、
ハードウェア機能を動的に変更して印刷を行う装置であって、
印刷データ処理機能を実現する回路を構成可能な回路構成情報を記憶する回路構成情報記憶手段と、書換可能なハードウェア領域を有する回路素子と、処理対象データを受信する処理対象データ受信手段と、前記処理対象データ受信手段で受信した処理対象データの処理に必要な前記印刷データ処理機能を判定する印刷データ処理機能判定手段と、前記印刷データ処理機能判定手段の判定結果に基づいて前記ハードウェア領域の再構成スケジュールを作成する再構成スケジュール作成手段と、前記ハードウェア領域を再構成するハードウェア領域再構成手段とを備え、
前記ハードウェア領域再構成手段は、前記印刷データ処理機能判定手段で判定した印刷データ処理機能に対応する回路構成情報を前記回路構成情報記憶手段から読み出し、読み出した回路構成情報および前記再構成スケジュール作成手段で作成した再構成スケジュールに基づいて前記ハードウェア領域を再構成するようになっていることを特徴とする。
【００１２】
このような構成であれば、処理対象データ受信手段により処理対象データを受信すると、印刷データ処理機能判定手段により、受信した処理対象データの処理に必要な印刷データ処理機能が判定される。次いで、再構成スケジュール作成手段により、印刷データ処理機能判定手段の判定結果に基づいてハードウェア領域の再構成スケジュールが作成される。そして、ハードウェア領域再構成手段により、判定された印刷データ処理機能に対応する回路構成情報が回路構成情報記憶手段から読み出され、読み出された回路構成情報および作成された再構成スケジュールに基づいてハードウェア領域が再構成される。ハードウェア領域は、印刷データ処理機能を実現する回路として再構成される。なお、再構成スケジュールの作成については、発明１のハードウェア機能可変印刷装置の例による。
【００１３】
これにより、印刷データ処理を回路素子により行うので、ソフトウェアで行う場合に比して、印刷データ処理に要する時間を短縮することができる。また、処理対象データの処理に必要な印刷データ処理機能を考慮して再構成スケジュールを作成し、作成した再構成スケジュールに基づいてハードウェア領域を再構成するので、ハードウェア領域の再構成を効率的に行うことができる。例えば、ハードウェア領域の再構成に要する時間、印刷データ処理に要する時間または待ち時間を短縮することができる。したがって、従来に比して、印刷処理の高速化を図ることができるという効果が得られる。
【００１４】
ここで、処理対象データは、文書データであってもよいし、中間印刷データ（一般的には、と中間言語呼ばれる。）であってもよい。文書データは、画像、文字、図形（ベクタグラフィックス）その他の編集要素を含むデータをいい、画像のみを含むものであれば画像データそのものをいい、文字のみを含むものであればテキストデータそのものをいい、ベクタグラフィックスのみを含むものであればベクタグラフィックスデータそのものをいう。以下、発明１１のハードウェア機能可変印刷装置、発明１３および２２のハードウェア機能変更プログラム、並びに発明２４および３３のハードウェア機能変更方法において同じである。
【００１５】
また、処理対象データは、ハードウェア領域再構成手段による再構成を行った後に回路素子でデータ処理されればよく、ハードウェア領域再構成手段による再構成の前に受信するようになっていてもよいし、ハードウェア領域再構成手段による再構成の後に受信するようになっていてもよい。以下、発明１１のハードウェア機能可変印刷装置、並びに発明１３および２２のハードウェア機能変更プログラムにおいて同じである。
【００１６】
また、回路構成情報記憶手段は、回路構成情報をあらゆる手段でかつあらゆる時期に記憶するものであり、回路構成情報をあらかじめ記憶してあるものであってもよいし、回路構成情報をあらかじめ記憶することなく、本装置の動作時に外部からの入力等によって回路構成情報を記憶するようになっていてもよい。以下、発明１３のハードウェア機能変更プログラム、および発明２４のハードウェア機能変更方法において同じである。
【００１７】
〔発明３〕  さらに、発明３のハードウェア機能可変印刷装置は、発明２のハードウェア機能可変印刷装置において、
前記再構成スケジュール作成手段は、前記印刷データ処理機能判定手段で判定した印刷データ処理機能の並列度を決定するようになっていることを特徴とする。
このような構成であれば、再構成スケジュール作成手段により、判定された印刷データ処理機能の並列度が決定され、ハードウェア領域再構成手段により、決定された並列度となるようにハードウェア領域が再構成される。
【００１８】
これにより、処理対象データの処理に必要な印刷データ処理機能を考慮して並列度が決定されるので、ハードウェア領域の再構成をさらに効率的に行うことができる。例えば、印刷データ処理に時間を要する印刷データ処理機能の並列度を高くすれば、印刷データ処理に要する時間を短縮することができる。したがって、印刷処理の高速化をさらに図ることができるという効果が得られる。
【００１９】
〔発明４〕  さらに、発明４のハードウェア機能可変印刷装置は、発明３のハードウェア機能可変印刷装置において、
前記再構成スケジュール作成手段は、１つの前記処理対象データについて前記印刷データ処理機能判定手段で判定した複数の印刷データ処理機能のうち、前記印刷データ処理機能のデータ処理時間が最小のものを基本印刷データ処理機能とし、前記各印刷データ処理機能ごとに、当該印刷データ処理機能の並列度を、当該印刷データ処理機能のデータ処理時間を前記基本印刷データ処理機能のデータ処理時間で除した値に応じた並列数として決定するようになっていることを特徴とする。
【００２０】
このような構成であれば、１つの処理対象データについて判定された複数の印刷データ処理機能については、再構成スケジュール作成手段により、各印刷データ処理機能ごとに、その印刷データ処理機能の並列度が、その印刷データ処理機能のデータ処理時間を基本印刷データ処理機能のデータ処理時間で除した値に応じた並列数として決定される。
これにより、１つの処理対象データについて判定された複数の印刷データ処理機能については、印刷データ処理に要する時間がいずれも基本印刷データ処理機能のデータ処理時間を基準に短縮されるので、印刷データ処理に要する時間をさらに短縮することができる。したがって、印刷処理の高速化をさらに図ることができるという効果が得られる。
【００２１】
〔発明５〕  さらに、発明５のハードウェア機能可変印刷装置は、発明４のハードウェア機能可変印刷装置において、
前記再構成スケジュール作成手段は、前記各印刷データ処理機能ごとに、当該印刷データ処理機能の実現に必要なデータ容量に、当該印刷データ処理機能について決定した並列度を乗算し、それら乗算結果の総和が所定のデータ容量に満たないと判定したときは、前記複数の印刷データ処理機能のうち処理工程が前段のものから優先的にその並列度を上げるようになっていることを特徴とする。
【００２２】
このような構成であれば、再構成スケジュール作成手段により、各印刷データ処理機能ごとに、その印刷データ処理機能の実現に必要なデータ容量に、その印刷データ処理機能について決定された並列度が乗算される。そして、それら乗算結果の総和が所定のデータ容量に満たないと判定されると、複数の印刷データ処理機能のうち処理工程が前段のものから優先的にその並列度が上がる。
これにより、ハードウェア領域のうち回路として使用されない領域を低減することができる。したがって、印刷処理の高速化をさらに図ることができるという効果が得られる。
【００２３】
〔発明６〕  さらに、発明６のハードウェア機能可変印刷装置は、発明２ないし５のいずれかのハードウェア機能可変印刷装置において、
前記再構成スケジュール作成手段は、前記処理対象データ受信手段で受信した複数の処理対象データのうち、前記印刷データ処理機能判定手段で判定した印刷データ処理機能が共通するもの同士については、処理順位が連続するように処理順序を変更するようになっていることを特徴とする。
【００２４】
このような構成であれば、再構成スケジュール作成手段により、受信した複数の処理対象データのうち印刷データ処理機能が共通するもの同士については、処理順位が連続するように処理順序が変更される。
これにより、印刷データ処理機能が共通する処理対象データが連続で処理されるので、ハードウェア領域を再構成する回数が低減する。したがって、ハードウェア領域の再構成に要する時間を短縮することができるので、印刷処理の高速化をさらに図ることができるという効果が得られる。
【００２５】
〔発明７〕  さらに、発明７のハードウェア機能可変印刷装置は、発明２ないし６のいずれかのハードウェア機能可変印刷装置において、
さらに、前記印刷データ処理機能判定手段で判定した印刷データ処理機能に対応する回路構成情報が前記回路構成情報記憶手段に存在しないと判定したときは、当該回路構成情報を外部から取得する回路構成情報取得手段を備え、
前記ハードウェア領域再構成手段は、前記回路構成情報記憶手段の回路構成情報または前記回路構成情報取得手段で取得した回路構成情報に基づいて前記ハードウェア領域を再構成するようになっていることを特徴とする。
【００２６】
このような構成であれば、回路構成情報取得手段により、印刷データ処理機能に対応する回路構成情報が回路構成情報記憶手段に存在しないと判定されると、その回路構成情報が外部から取得され、ハードウェア領域再構成手段により、取得された回路構成情報に基づいてハードウェア領域が再構成される。
これにより、印刷装置では新たな回路構成情報を利用することができるので、汎用性および柔軟性を向上することができるという効果が得られる。
【００２７】
〔発明８〕  さらに、発明８のハードウェア機能可変印刷装置は、発明７のハードウェア機能可変印刷装置において、
前記再構成スケジュール作成手段は、前記処理対象データ受信手段で受信した複数の処理対象データのうち、前記印刷データ処理機能判定手段で判定した印刷データ処理機能に対応する回路構成情報が前記回路構成情報記憶手段に存在しないものについては、処理順位が低くなるように処理順序を変更するようになっていることを特徴とする。
【００２８】
このような構成であれば、再構成スケジュール作成手段により、受信した複数の処理対象データのうち印刷データ処理機能に対応する回路構成情報が回路構成情報記憶手段に存在しないものについては、処理順位が低くなるように処理順序が変更される。
これにより、回路構成情報記憶手段に回路構成情報が存在しない処理対象データについては、処理が後回しにされ、処理の待ち時間を利用して外部から回路構成情報が取得されるので、印刷処理の高速化をさらに図ることができるという効果が得られる。
【００２９】
〔発明９〕  さらに、発明９のハードウェア機能可変印刷装置は、発明２ないし８のいずれかのハードウェア機能可変印刷装置において、
前記ハードウェア領域再構成手段は、前記ハードウェア領域を複数に区分したときの各区分領域ごとに前記印刷データ処理機能を実現する回路を構成し、前記印刷データ処理機能の処理が完了した区分領域については、新たな前記印刷データ処理機能を実現する回路を構成するようになっていることを特徴とする。
【００３０】
このような構成であれば、ハードウェア領域再構成手段により、各区分領域ごとに印刷データ処理機能を実現する回路が構成され、印刷データ処理機能の処理が完了した区分領域については、新たな印刷データ処理機能を実現する回路が構成される。
これにより、ハードウェア領域のうち回路として構成されない領域を低減するとともに、ハードウェア領域のうち回路として構成されている領域が駆動していない時間を低減することができる。したがって、印刷処理の高速化をさらに図ることができるという効果が得られる。
【００３１】
〔発明１０〕  さらに、発明１０のハードウェア機能可変印刷装置は、発明２ないし９のいずれかのハードウェア機能可変印刷装置において、
さらに、前記回路構成情報の利用頻度を測定する利用頻度測定手段と、前記回路構成情報記憶手段の回路構成情報を管理する回路構成情報管理手段とを備え、
前記回路構成情報管理手段は、前記回路構成情報記憶手段の回路構成情報のうち前記利用頻度測定手段で測定した利用頻度が高いものを優先的に保持するようになっていることを特徴とする。
【００３２】
このような構成であれば、利用頻度測定手段により、回路構成情報の利用頻度が測定される。そして、回路構成情報管理手段により、回路構成情報記憶手段の回路構成情報のうち利用頻度が高いものが優先的に保持される。
これにより、利用頻度が高い回路構成情報については、回路構成情報記憶手段に存在している可能性が高いので、外部から取得することなく、回路構成情報記憶手段から読み出して直ちに利用することができる。したがって、印刷処理の高速化をさらに図ることができるという効果が得られる。
【００３３】
〔発明１１〕  さらに、発明１１のハードウェア機能可変印刷装置は、
ハードウェア機能を動的に変更して印刷を行う装置であって、
書換可能なハードウェア領域を有する回路素子と、印刷データ処理機能を実現する回路を構成可能な回路構成情報に基づいて前記ハードウェア領域を再構成するハードウェア領域再構成手段と、処理対象データを受信する処理対象データ受信手段と、前記処理対象データ受信手段で受信した処理対象データの処理に必要な前記印刷データ処理機能を判定する印刷データ処理機能判定手段とを備え、
前記ハードウェア領域再構成手段は、前記印刷データ処理機能判定手段で判定した印刷データ処理機能に対応する回路構成情報に基づいて前記ハードウェア領域を再構成するようになっていることを特徴とする。
【００３４】
このような構成であれば、処理対象データ受信手段により処理対象データを受信すると、印刷データ処理機能判定手段により、受信した処理対象データの処理に必要な印刷データ処理機能が判定される。そして、ハードウェア領域再構成手段により、判定された印刷データ処理機能に対応する回路構成情報に基づいてハードウェア領域が再構成される。ハードウェア領域は、印刷データ処理機能を実現する回路として再構成される。
【００３５】
これにより、処理対象データの処理に必要な印刷データ処理機能が自律的に判定され、それに対応する回路構成情報に基づいてハードウェア領域が再構成されるので、処理対象データの形式にかかわらず比較的高速な印刷を行うことができる。したがって、従来に比して、印刷処理の高速化を図ることができるという効果が得られる。
【００３６】
〔発明１２〕  一方、上記目的を達成するために、発明１２のハードウェア機能変更プログラムは、
書換可能なハードウェア領域を有する回路素子を備える印刷装置のハードウェア機能を動的に変更するプログラムであって、
前記ハードウェア領域の再構成スケジュールを作成する再構成スケジュール作成手段、並びに印刷データ処理機能を実現する回路を構成可能な回路構成情報および前記再構成スケジュール作成手段で作成した再構成スケジュールに基づいて前記ハードウェア領域を再構成するハードウェア領域再構成手段として実現される処理をコンピュータに実行させるためのプログラムであることを特徴とする。
このような構成であれば、コンピュータによってプログラムが読み取られ、読み取られたプログラムに従ってコンピュータが処理を実行すると、発明１のハードウェア機能可変印刷装置と同等の作用および効果が得られる。
【００３７】
〔発明１３〕  さらに、発明１３のハードウェア機能変更プログラムは、
印刷データ処理機能を実現する回路を構成可能な回路構成情報を記憶する回路構成情報記憶手段と、書換可能なハードウェア領域を有する回路素子とを備える印刷装置のハードウェア機能を動的に変更するプログラムであって、
処理対象データを受信する処理対象データ受信手段、前記処理対象データ受信手段で受信した処理対象データの処理に必要な前記印刷データ処理機能を判定する印刷データ処理機能判定手段、前記印刷データ処理機能判定手段の判定結果に基づいて前記ハードウェア領域の再構成スケジュールを作成する再構成スケジュール作成手段、および前記ハードウェア領域を再構成するハードウェア領域再構成手段として実現される処理をコンピュータに実行させるためのプログラムであり、
前記ハードウェア領域再構成手段は、前記印刷データ処理機能判定手段で判定した印刷データ処理機能に対応する回路構成情報を前記回路構成情報記憶手段から読み出し、読み出した回路構成情報および前記再構成スケジュール作成手段で作成した再構成スケジュールに基づいて前記ハードウェア領域を再構成するようになっていることを特徴とする。
【００３８】
このような構成であれば、コンピュータによってプログラムが読み取られ、読み取られたプログラムに従ってコンピュータが処理を実行すると、発明２のハードウェア機能可変印刷装置と同等の作用および効果が得られる。
【００３９】
〔発明１４〕  さらに、発明１４のハードウェア機能変更プログラムは、発明１３のハードウェア機能変更プログラムにおいて、
前記再構成スケジュール作成手段は、前記印刷データ処理機能判定手段で判定した印刷データ処理機能の並列度を決定するようになっていることを特徴とする。
このような構成であれば、コンピュータによってプログラムが読み取られ、読み取られたプログラムに従ってコンピュータが処理を実行すると、発明３のハードウェア機能可変印刷装置と同等の作用および効果が得られる。
【００４０】
〔発明１５〕  さらに、発明１５のハードウェア機能変更プログラムは、発明１４のハードウェア機能変更プログラムにおいて、
前記再構成スケジュール作成手段は、１つの前記処理対象データについて前記印刷データ処理機能判定手段で判定した複数の印刷データ処理機能のうち、前記印刷データ処理機能のデータ処理時間が最小のものを基本印刷データ処理機能とし、前記各印刷データ処理機能ごとに、当該印刷データ処理機能の並列度を、当該印刷データ処理機能のデータ処理時間を前記基本印刷データ処理機能のデータ処理時間で除した値に応じた並列数として決定するようになっていることを特徴とする。
【００４１】
このような構成であれば、コンピュータによってプログラムが読み取られ、読み取られたプログラムに従ってコンピュータが処理を実行すると、発明４のハードウェア機能可変印刷装置と同等の作用および効果が得られる。
【００４２】
〔発明１６〕  さらに、発明１６のハードウェア機能変更プログラムは、発明１５のハードウェア機能変更プログラムにおいて、
前記再構成スケジュール作成手段は、前記各印刷データ処理機能ごとに、当該印刷データ処理機能の実現に必要なデータ容量に、当該印刷データ処理機能について決定した並列度を乗算し、それら乗算結果の総和が所定のデータ容量に満たないと判定したときは、前記複数の印刷データ処理機能のうち処理工程が前段のものから優先的にその並列度を上げるようになっていることを特徴とする。
【００４３】
このような構成であれば、コンピュータによってプログラムが読み取られ、読み取られたプログラムに従ってコンピュータが処理を実行すると、発明５のハードウェア機能可変印刷装置と同等の作用および効果が得られる。
【００４４】
〔発明１７〕  さらに、発明１７のハードウェア機能変更プログラムは、発明１３ないし１６のいずれかのハードウェア機能変更プログラムにおいて、
前記再構成スケジュール作成手段は、前記処理対象データ受信手段で受信した複数の処理対象データのうち、前記印刷データ処理機能判定手段で判定した印刷データ処理機能が共通するもの同士については、処理順位が連続するように処理順序を変更するようになっていることを特徴とする。
【００４５】
このような構成であれば、コンピュータによってプログラムが読み取られ、読み取られたプログラムに従ってコンピュータが処理を実行すると、発明６のハードウェア機能可変印刷装置と同等の作用および効果が得られる。
【００４６】
〔発明１８〕  さらに、発明１８のハードウェア機能変更プログラムは、発明１３ないし１７のいずれかのハードウェア機能変更プログラムにおいて、
さらに、前記印刷データ処理機能判定手段で判定した印刷データ処理機能に対応する回路構成情報が前記回路構成情報記憶手段に存在しないと判定したときは、当該回路構成情報を外部から取得する回路構成情報取得手段として実現される処理をコンピュータに実行させるためのプログラムを含み、
前記ハードウェア領域再構成手段は、前記回路構成情報記憶手段の回路構成情報または前記回路構成情報取得手段で取得した回路構成情報に基づいて前記ハードウェア領域を再構成するようになっていることを特徴とする。
【００４７】
このような構成であれば、コンピュータによってプログラムが読み取られ、読み取られたプログラムに従ってコンピュータが処理を実行すると、発明７のハードウェア機能可変印刷装置と同等の作用および効果が得られる。
【００４８】
〔発明１９〕  さらに、発明１９のハードウェア機能変更プログラムは、発明１８のハードウェア機能変更プログラムにおいて、
前記再構成スケジュール作成手段は、前記処理対象データ受信手段で受信した複数の処理対象データのうち、前記印刷データ処理機能判定手段で判定した印刷データ処理機能に対応する回路構成情報が前記回路構成情報記憶手段に存在しないものについては、処理順位が低くなるように処理順序を変更するようになっていることを特徴とする。
【００４９】
このような構成であれば、コンピュータによってプログラムが読み取られ、読み取られたプログラムに従ってコンピュータが処理を実行すると、発明８のハードウェア機能可変印刷装置と同等の作用および効果が得られる。
【００５０】
〔発明２０〕  さらに、発明２０のハードウェア機能変更プログラムは、発明１３ないし１９のいずれかのハードウェア機能変更プログラムにおいて、
前記ハードウェア領域再構成手段は、前記ハードウェア領域を複数に区分したときの各区分領域ごとに前記印刷データ処理機能を実現する回路を構成し、前記印刷データ処理機能の処理が完了した区分領域については、新たな前記印刷データ処理機能を実現する回路を構成するようになっていることを特徴とする。
【００５１】
このような構成であれば、コンピュータによってプログラムが読み取られ、読み取られたプログラムに従ってコンピュータが処理を実行すると、発明９のハードウェア機能可変印刷装置と同等の作用および効果が得られる。
【００５２】
〔発明２１〕  さらに、発明２１のハードウェア機能変更プログラムは、発明１３ないし２０のいずれかのハードウェア機能変更プログラムにおいて、
さらに、前記回路構成情報の利用頻度を測定する利用頻度測定手段、および前記回路構成情報記憶手段の回路構成情報を管理する回路構成情報管理手段として実現される処理をコンピュータに実行させるためのプログラムを含み、
前記回路構成情報管理手段は、前記回路構成情報記憶手段の回路構成情報のうち前記利用頻度測定手段で測定した利用頻度が低いものを優先的に削除するようになっていることを特徴とする。
【００５３】
このような構成であれば、コンピュータによってプログラムが読み取られ、読み取られたプログラムに従ってコンピュータが処理を実行すると、発明１０のハードウェア機能可変印刷装置と同等の作用および効果が得られる。
【００５４】
〔発明２２〕  さらに、発明２２のハードウェア機能変更プログラムは、
書換可能なハードウェア領域を有する回路素子を備える印刷装置のハードウェア機能を動的に変更するプログラムであって、
印刷データ処理機能を実現する回路を構成可能な回路構成情報に基づいて前記ハードウェア領域を再構成するハードウェア領域再構成手段、処理対象データを受信する処理対象データ受信手段、および前記処理対象データ受信手段で受信した処理対象データの処理に必要な前記印刷データ処理機能を判定する印刷データ処理機能判定手段として実現される処理をコンピュータに実行させるためのプログラムであり、
前記ハードウェア領域再構成手段は、前記印刷データ処理機能判定手段で判定した印刷データ処理機能に対応する回路構成情報に基づいて前記ハードウェア領域を再構成するようになっていることを特徴とする。
【００５５】
このような構成であれば、コンピュータによってプログラムが読み取られ、読み取られたプログラムに従ってコンピュータが処理を実行すると、発明１１のハードウェア機能可変印刷装置と同等の作用および効果が得られる。
【００５６】
〔発明２３〕  一方、上記目的を達成するために、発明２３のハードウェア機能変更方法は、
書換可能なハードウェア領域を有する回路素子を備える印刷装置のハードウェア機能を動的に変更する方法であって、
前記ハードウェア領域の再構成スケジュールを作成する再構成スケジュール作成ステップと、印刷データ処理機能を実現する回路を構成可能な回路構成情報および前記再構成スケジュール作成ステップで作成した再構成スケジュールに基づいて前記ハードウェア領域を再構成するハードウェア領域再構成ステップとを含むことを特徴とする。
これにより、発明１のハードウェア機能可変印刷装置と同等の効果が得られる。
【００５７】
〔発明２４〕  さらに、発明２４のハードウェア機能変更方法は、
印刷データ処理機能を実現する回路を構成可能な回路構成情報を記憶する回路構成情報記憶手段と、書換可能なハードウェア領域を有する回路素子とを備える印刷装置のハードウェア機能を動的に変更する方法であって、
処理対象データを受信する処理対象データ受信ステップと、前記処理対象データ受信ステップで受信した処理対象データの処理に必要な前記印刷データ処理機能を判定する印刷データ処理機能判定ステップと、前記印刷データ処理機能判定ステップの判定結果に基づいて前記ハードウェア領域の再構成スケジュールを作成する再構成スケジュール作成ステップと、前記ハードウェア領域を再構成するハードウェア領域再構成ステップとを含み、
前記ハードウェア領域再構成ステップは、前記印刷データ処理機能判定ステップで判定した印刷データ処理機能に対応する回路構成情報を前記回路構成情報記憶手段から読み出し、読み出した回路構成情報および前記再構成スケジュール作成ステップで作成した再構成スケジュールに基づいて前記ハードウェア領域を再構成することを特徴とする。
【００５８】
これにより、発明２のハードウェア機能可変印刷装置と同等の効果が得られる。
ここで、処理対象データは、ハードウェア領域再構成ステップで再構成を行った後に回路素子でデータ処理されればよく、ハードウェア領域再構成ステップで再構成を行う前に受信してもよいし、ハードウェア領域再構成ステップで再構成を行った後に受信してもよい。以下、発明３３のハードウェア機能変更方法において同じである。
【００５９】
〔発明２５〕  さらに、発明２５のハードウェア機能変更方法は、発明２４のハードウェア機能変更方法において、
前記再構成スケジュール作成ステップは、前記印刷データ処理機能判定ステップで判定した印刷データ処理機能の並列度を決定することを特徴とする。
これにより、発明３のハードウェア機能可変印刷装置と同等の効果が得られる。
【００６０】
〔発明２６〕  さらに、発明２６のハードウェア機能変更方法は、発明２５のハードウェア機能変更方法において、
前記再構成スケジュール作成ステップは、１つの前記処理対象データについて前記印刷データ処理機能判定ステップで判定した複数の印刷データ処理機能のうち、前記印刷データ処理機能のデータ処理時間が最小のものを基本印刷データ処理機能とし、前記各印刷データ処理機能ごとに、当該印刷データ処理機能の並列度を、当該印刷データ処理機能のデータ処理時間を前記基本印刷データ処理機能のデータ処理時間で除した値に応じた並列数として決定することを特徴とする。
これにより、発明４のハードウェア機能可変印刷装置と同等の効果が得られる。
【００６１】
〔発明２７〕  さらに、発明２７のハードウェア機能変更方法は、発明２６のハードウェア機能変更方法において、
前記再構成スケジュール作成ステップは、前記各印刷データ処理機能ごとに、当該印刷データ処理機能の実現に必要なデータ容量に、当該印刷データ処理機能について決定した並列度を乗算し、それら乗算結果の総和が所定のデータ容量に満たないと判定したときは、前記複数の印刷データ処理機能のうち処理工程が前段のものから優先的にその並列度を上げることを特徴とする。
これにより、発明５のハードウェア機能可変印刷装置と同等の効果が得られる。
【００６２】
〔発明２８〕  さらに、発明２８のハードウェア機能変更方法は、発明２４ないし２７のいずれかのハードウェア機能変更方法において、
前記再構成スケジュール作成ステップは、前記処理対象データ受信ステップで受信した複数の処理対象データのうち、前記印刷データ処理機能判定ステップで判定した印刷データ処理機能が共通するもの同士については、処理順位が連続するように処理順序を変更することを特徴とする。
これにより、発明６のハードウェア機能可変印刷装置と同等の効果が得られる。
【００６３】
〔発明２９〕  さらに、発明２９のハードウェア機能変更方法は、発明２４ないし２８のいずれかのハードウェア機能変更方法において、
さらに、前記印刷データ処理機能判定ステップで判定した印刷データ処理機能に対応する回路構成情報が前記回路構成情報記憶手段に存在しないと判定したときは、当該回路構成情報を外部から取得する回路構成情報取得ステップを含み、
前記ハードウェア領域再構成ステップは、前記回路構成情報記憶手段の回路構成情報または前記回路構成情報取得ステップで取得した回路構成情報に基づいて前記ハードウェア領域を再構成することを特徴とする。
これにより、発明７のハードウェア機能可変印刷装置と同等の効果が得られる。
【００６４】
〔発明３０〕  さらに、発明３０のハードウェア機能変更方法は、発明２９のハードウェア機能変更方法において、
前記再構成スケジュール作成ステップは、前記処理対象データ受信ステップで受信した複数の処理対象データのうち、前記印刷データ処理機能判定ステップで判定した印刷データ処理機能に対応する回路構成情報が前記回路構成情報記憶手段に存在しないものについては、処理順位が低くなるように処理順序を変更することを特徴とする。
これにより、発明８のハードウェア機能可変印刷装置と同等の効果が得られる。
【００６５】
〔発明３１〕  さらに、発明３１のハードウェア機能変更方法は、発明２４ないし３０のいずれかのハードウェア機能変更方法において、
前記ハードウェア領域再構成ステップは、前記ハードウェア領域を複数に区分したときの各区分領域ごとに前記印刷データ処理機能を実現する回路を構成し、前記印刷データ処理機能の処理が完了した区分領域については、新たな前記印刷データ処理機能を実現する回路を構成することを特徴とする。
これにより、発明９のハードウェア機能可変印刷装置と同等の効果が得られる。
【００６６】
〔発明３２〕  さらに、発明３２のハードウェア機能変更方法は、発明２４ないし３１のいずれかのハードウェア機能変更方法において、
さらに、前記回路構成情報の利用頻度を測定する利用頻度測定ステップと、前記回路構成情報記憶手段の回路構成情報を管理する回路構成情報管理ステップとを含み、
前記回路構成情報管理ステップは、前記回路構成情報記憶手段の回路構成情報のうち前記利用頻度測定ステップで測定した利用頻度が低いものを優先的に削除することを特徴とする。
これにより、発明１０のハードウェア機能可変印刷装置と同等の効果が得られる。
【００６７】
〔発明３３〕  さらに、発明３３のハードウェア機能変更方法は、
書換可能なハードウェア領域を有する回路素子を備える印刷装置のハードウェア機能を動的に変更する方法であって、
印刷データ処理機能を実現する回路を構成可能な回路構成情報に基づいて前記ハードウェア領域を再構成するハードウェア領域再構成ステップと、処理対象データを受信する処理対象データ受信ステップと、前記処理対象データ受信ステップで受信した処理対象データの処理に必要な前記印刷データ処理機能を判定する印刷データ処理機能判定ステップとを含み、
前記ハードウェア領域再構成ステップは、前記印刷データ処理機能判定ステップで判定した印刷データ処理機能に対応する回路構成情報に基づいて前記ハードウェア領域を再構成することを特徴とする。
【００６８】
これにより、発明１１のハードウェア機能可変印刷装置と同等の効果が得られる。
【発明を実施するための最良の形態】
【００６９】
以下、本発明の第１の実施の形態を図面を参照しながら説明する。図１ないし図１１は、本発明に係るハードウェア機能可変印刷装置およびハードウェア機能変更プログラム、並びにハードウェア機能変更方法の第１の実施の形態を示す図である。
本実施の形態は、本発明に係るハードウェア機能可変印刷装置およびハードウェア機能変更プログラム、並びにハードウェア機能変更方法を、図１に示すように、ホスト端末１００からの印刷要求に応じて、プリンタ２００のハードウェア機能を動的に変更して印刷を行う場合について適用したものである。
【００７０】
まず、本発明を適用するネットワークシステムの機能概要を図１を参照しながら説明する。
図１は、本発明を適用するネットワークシステムの機能概要を示す機能ブロック図である。
ネットワーク１９９には、図１に示すように、ユーザの利用に供する複数のホスト端末１００と、ホスト端末１００からの印刷要求に応じて印刷を行うプリンタ２００と、リコンフィギュアラブルデータを管理するリコンフィギュアラブルデータ管理端末３００とが接続されている。
【００７１】
ホスト端末１００は、文書データに基づいて中間印刷データを生成する印刷データ生成部１０と、印刷データ生成部１０で生成した中間印刷データを印刷要求に伴ってプリンタ２００に送信する中間印刷データ送信部１１とを有して構成されている。
プリンタ２００は、書換可能なハードウェア領域を有するハードウェア回路２０と、複数のリコンフィギュアラブルデータを記憶したリコンフィギュアラブルデータ記憶部２１と、中間印刷データ記憶部２２と、中間印刷データを受信する中間印刷データ受信部２３と、中間印刷データ受信部２３で受信した中間印刷データを中間印刷データ記憶部２２に登録する中間印刷データ登録部２４とを有して構成されている。
【００７２】
図２は、リコンフィギュアラブルデータの内容を示す図である。
リコンフィギュアラブルデータは、図２に示すように、中間印刷データをデータ処理するのに必要なモジュールを実現する回路をハードウェア回路２０のハードウェア領域において構成することができる。
図２の例では、プリンタ２００がカラープリンタである場合、例えば、カラー中間言語用レンダリングモジュールを実現する回路を構成可能なリコンフィギュアラブルデータが記憶されている。カラー中間言語用レンダリングモジュールは、カラー印刷用の中間言語で記述された中間印刷データに基づいてＲＧＢ各色ごとのＲＧＢレンダリングデータを生成する。また、例えば、ＲＧＢ→ＣＭＹＫ色変換モジュールを実現する回路を構成可能なリコンフィギュアラブルデータが記憶されている。ＲＧＢ→ＣＭＹＫ色変換モジュールは、ＲＧＢレンダリングデータに基づいてＣＭＹＫ各色ごとのＣＭＹＫレンダリングデータを生成する。
【００７３】
図１に戻り、プリンタ２００は、さらに、中間印刷データ記憶部２２の各中間印刷データごとにその中間印刷データの処理に必要なモジュールを判定するモジュール判定部２５と、モジュール判定部２５の判定結果に基づいてハードウェア回路２０のハードウェア領域の再構成スケジュールを作成する再構成スケジュール作成部２６と、ハードウェア回路２０のハードウェア領域を再構成するハードウェア領域再構成部２７と、ハードウェア回路２０でデータ処理した印刷データに基づいて印刷を行う印刷実行部２８とを有して構成されている。
【００７４】
ハードウェア領域再構成部２７は、モジュール判定部２５で判定したモジュールに対応するリコンフィギュアラブルデータをリコンフィギュアラブルデータ記憶部２１から読み出し、読み出したリコンフィギュアラブルデータおよび再構成スケジュール作成部２６で作成した再構成スケジュールに基づいてハードウェア回路２０のハードウェア領域を再構成するようになっている。
【００７５】
プリンタ２００は、さらに、リコンフィギュアラブルデータ管理端末３００からリコンフィギュアラブルデータを取得するリコンフィギュアラブルデータ取得部２９と、リコンフィギュアラブルデータの利用頻度を測定する利用頻度測定部３０と、リコンフィギュアラブルデータ記憶部２１のリコンフィギュアラブルデータを管理するリコンフィギュアラブルデータ管理部３１とを有して構成されている。
【００７６】
リコンフィギュアラブルデータ管理部３１は、利用頻度測定部３０の測定結果に基づいて、リコンフィギュアラブルデータ記憶部２１のリコンフィギュアラブルデータのうち利用頻度が高いものを優先的に保持するようになっている。
リコンフィギュアラブルデータ管理端末３００は、複数のリコンフィギュアラブルデータを記憶したリコンフィギュアラブルデータ記憶部４０と、プリンタ２００からの取得要求に応じてリコンフィギュアラブルデータ記憶部４０のリコンフィギュアラブルデータをプリンタ２００に提供するリコンフィギュアラブルデータ提供部４１とを有して構成されている。
【００７７】
次に、プリンタ２００の構成を図３ないし図８を参照しながら詳細に説明する。
図３は、プリンタ２００のハードウェア構成を示すブロック図である。
プリンタ２００は、図３に示すように、制御プログラムに基づいて演算およびシステム全体を制御するＣＰＵ５０と、所定領域にあらかじめＣＰＵ５０の制御プログラム等を格納しているＲＯＭ５２と、ＲＯＭ５２等から読み出したデータやＣＰＵ５０の演算過程で必要な演算結果を格納するためのＲＡＭ５４と、ハードウェア回路２０と、ハードウェア回路２０のハードウェア領域を書き換えるリコンフィギュア装置５６と、外部装置に対してデータの入出力を媒介するＩ／Ｆ５８とで構成されており、これらは、データを転送するための信号線であるバス５９で相互にかつデータ授受可能に接続されている。
【００７８】
Ｉ／Ｆ５８には、外部装置として、ヒューマンインターフェースとしてデータの入力が可能な操作パネル６０と、データやテーブル等をファイルとして格納する記憶装置６２と、インクジェットプリンタまたはレーザプリンタ等のプリンタ２００の形式に応じてその印刷に必要な機構からなる印刷機構６４と、ネットワーク１９９に接続するための信号線とが接続されている。
【００７９】
記憶装置６２は、リコンフィギュアラブルデータ記憶部２１および中間印刷データ記憶部２２として構成され、リコンフィギュアラブルデータおよび中間印刷データのほか、利用頻度登録テーブル４００を記憶している。
図４は、利用頻度登録テーブル４００のデータ構造を示す図である。
利用頻度登録テーブル４００には、図４に示すように、記憶装置６２に記憶されている各リコンフィギュアラブルデータごとに１つのレコードが登録されている。各レコードは、モジュール名を登録したフィールド４０２と、利用頻度を登録するフィールド４０４と、リコンフィギュアラブルデータのデータ容量を登録したフィールド４０６とを含んで構成されている。
【００８０】
図４の例では、第１段目のレコードには、モジュール名として「カラー中間言語用レンダリングモジュール」が、利用頻度として「２５０」が、データ容量として「５０KB」がそれぞれ登録されている。これは、カラー中間言語用レンダリングモジュールに対応するリコンフィギュアラブルデータの利用頻度が２５０回であり、データ容量が５０[KB]であることを示している。
【００８１】
ＣＰＵ５０は、マイクロプロセッシングユニット（ＭＰＵ）等からなり、ＲＯＭ５２の所定領域に格納されている所定のプログラムを起動させ、そのプログラムに従って、図５ないし図８のフローチャートに示す印刷要求受付処理、リコンフィギュアラブルデータ取得処理、印刷制御処理およびリコンフィギュアラブルデータ管理処理をそれぞれ時分割で実行するようになっている。
【００８２】
初めに、印刷要求受付処理を図５を参照しながら詳細に説明する。
図５は、印刷要求受付処理を示すフローチャートである。
印刷要求受付処理は、中間印刷データ受信部２３、中間印刷データ登録部２４、モジュール判定部２５および再構成スケジュール作成部２６として実現される処理であって、ＣＰＵ５０において実行されると、図５に示すように、まず、ステップＳ１００に移行するようになっている。
【００８３】
ステップＳ１００では、印刷要求を受信したか否かを判定し、印刷要求を受信したと判定したとき(Yes)は、ステップＳ１０２に移行するが、そうでないと判定したとき(No)は、印刷要求を受信するまでステップＳ１００で待機する。
ステップＳ１０２では、中間印刷データを受信し、ステップＳ１０４に移行して、受信した中間印刷データを記憶装置６２に登録し、ステップＳ１０６に移行して、受信した中間印刷データの処理に必要なモジュールを判定し、ステップＳ１０８に移行する。
【００８４】
ステップＳ１０８では、ハードウェア回路２０のハードウェア領域を複数に区分し、各区分領域ごとにモジュールの実行順序を規定した再構成スケジュールを作成する。例えば、２つの中間印刷データＡ，Ｂを処理する場合に、中間印刷データＡの処理にはモジュールａ、ｂが、中間印刷データＢの処理にはモジュールｃ、ｂがそれぞれ必要であるとする。モジュールａ〜ｃを実現する回路としてハードウェア領域を再構成するのに要する時間をそれぞれｔｗａ、ｔｗｂ、ｔｗｃとし、モジュールａ〜ｃを実現した回路で印刷データ処理に要する時間をそれぞれｔａ、ｔｂ、ｔｃとしたとき、再構成スケジュールを作成することなく中間印刷データＡ，Ｂを単純に順次処理すれば、合計の所要時間は、ｔｗａ＋ｔａ＋ｔｗｂ＋ｔｂ＋ｔｗｃ＋ｔｃ＋ｔｗｂ＋ｔｂとなる。これに対し、ハードウェア領域を２つに区分し、第１区分領域ではモジュールａ，ｃをその順で構成し、第２区分領域ではモジュールｂを構成し、中間印刷データＡ，Ｂを並列に処理するように再構成スケジュールを作成すれば、合計の所要時間はおよそ、ｔｗａ＋ｔａ＋ｔｗｃ＋ｔｃ（第１区分領域での所要時間）およびｔｗｂ＋ｔｂ＋ｔｂ（第２区分領域での所要時間）のうちいずれか長い方となる。これにより、ハードウェア領域の再構成に要する時間、印刷データ処理に要する時間または待ち時間を短縮することができる。
【００８５】
ステップＳ１０８の処理が終了すると、一連の処理を終了して元の処理に復帰させる。
次に、リコンフィギュアラブルデータ取得処理を図６を参照しながら詳細に説明する。
図６は、リコンフィギュアラブルデータ取得処理を示すフローチャートである。
リコンフィギュアラブルデータ取得処理は、リコンフィギュアラブルデータ取得部２９として実現される処理であって、ＣＰＵ５０において実行されると、図６に示すように、まず、ステップＳ２００に移行するようになっている。
【００８６】
ステップＳ２００では、ステップＳ１０６で判定したモジュールに対応するリコンフィギュアラブルデータが記憶装置６２に存在するか否かを判定し、必要なリコンフィギュアラブルデータが存在しないと判定したとき(No)は、ステップＳ２０２に移行するが、そうでないと判定したとき(Yes)は、ステップＳ２００で待機する。
ステップＳ２０２では、リコンフィギュアラブルデータ管理端末３００に取得要求を送信して必要なリコンフィギュアラブルデータをリコンフィギュアラブルデータ管理端末３００から取得し、ステップＳ２０４に移行して、取得したリコンフィギュアラブルデータを記憶装置６２に登録し、一連の処理を終了して元の処理に復帰させる。
【００８７】
次に、印刷制御処理を図７を参照しながら詳細に説明する。
図７は、印刷制御処理を示すフローチャートである。
印刷制御処理は、ハードウェア領域再構成部２７、印刷実行部２８および利用頻度測定部３０として実現される処理であって、ＣＰＵ５０において実行されると、図７に示すように、まず、ステップＳ３００に移行するようになっている。
【００８８】
ステップＳ３００では、未処理の中間印刷データが記憶装置６２に記憶されているか否かを判定し、中間印刷データが記憶されていると判定したとき(Yes)は、ステップＳ３０２に移行するが、そうでないと判定したとき(No)は、ステップＳ３００で待機する。
ステップＳ３０２では、処理対象となる中間印刷データの処理に必要なリコンフィギュアラブルデータが記憶装置６２に存在するか否かを判定し、必要なリコンフィギュアラブルデータが存在すると判定したとき(Yes)は、ステップＳ３０４に移行するが、そうでないと判定したとき(No)は、ステップＳ３０２で待機する。
【００８９】
ステップＳ３０４では、処理対象となる中間印刷データの処理に必要なリコンフィギュアラブルデータを記憶装置６２から読み出し、ステップＳ３０６に移行し、読み出したリコンフィギュアラブルデータおよび再構成スケジュールに基づいて、リコンフィギュア装置５６によりハードウェア回路２０のハードウェア領域を再構成し、ステップＳ３０８に移行して、利用頻度登録テーブル４００においてリコンフィギュアラブルデータの利用頻度を更新し、ステップＳ３１０に移行する。
【００９０】
ステップＳ３１０では、処理対象となる中間印刷データを記憶装置６２から読み出し、読み出した中間印刷データをハードウェア回路２０により印刷データに変換する印刷データ生成処理を実行し、ステップＳ３１２に移行して、ハードウェア回路２０でデータ処理した印刷データに基づいて印刷機構６４により印刷を行う印刷実行処理を実行し、ステップＳ３１４に移行する。
【００９１】
ステップＳ３１４では、ハードウェア回路２０のハードウェア領域のうちモジュールの処理が完了した区分領域（以下、未使用区分領域という。）が存在するか否かを判定し、未使用区分領域が存在すると判定したとき(Yes)は、ステップＳ３１６に移行する。
ステップＳ３１６では、未処理の中間印刷データが記憶装置６２に記憶されているか否かを判定し、中間印刷データが記憶されていると判定したとき(Yes)は、ステップＳ３０２に移行する。
【００９２】
一方、ステップＳ３１６で、未処理の中間印刷データが記憶装置６２に記憶されていないと判定したとき(No)は、一連の処理を終了して元の処理に復帰させる。
一方、ステップＳ３１４で、ハードウェア回路２０のハードウェア領域のうち未使用区分領域が存在しないと判定したとき(No)は、ステップＳ３１０に移行する。
次に、リコンフィギュアラブルデータ管理処理を図８を参照しながら詳細に説明する。
【００９３】
図８は、リコンフィギュアラブルデータ管理処理を示すフローチャートである。
リコンフィギュアラブルデータ管理処理は、リコンフィギュアラブルデータ管理部３１として実現される処理であって、ＣＰＵ５０において実行されると、図８に示すように、まず、ステップＳ４００に移行するようになっている。
ステップＳ４００では、記憶装置６２の使用容量が所定以上であるか否かを判定し、使用容量が所定以上であると判定したとき(Yes)は、ステップＳ４０２に移行するが、そうでないと判定したとき(No)は、使用容量が所定以上となるまでステップＳ４００で待機する。
【００９４】
ステップＳ４０２では、利用頻度登録テーブル４００を参照して、利用頻度が最も低いリコンフィギュアラブルデータを記憶装置６２のなかから検索し、ステップＳ４０４に移行して、検索により索出したリコンフィギュアラブルデータを削除し、一連の処理を終了して元の処理に復帰させる。
次に、本実施の形態の動作を図９ないし図１１を参照しながら説明する。
【００９５】
初めに、中間印刷データの形式が異なる複数のホスト端末１００から同時に印刷要求が送信された場合を説明する。
各ホスト端末１００では、ユーザからの印刷の要求が入力されると、文書データに基づいて中間印刷データが生成され、生成された中間印刷データが印刷要求に伴ってプリンタ２００に送信される。
【００９６】
プリンタ２００では、印刷要求を受信すると、ステップＳ１０２〜Ｓ１０６を経て、中間印刷データを受信し、受信した中間印刷データが記憶装置６２に登録され、受信した中間印刷データの処理に必要なモジュールが判定される。
図９は、モジュールの判定結果の例を示した図である。
中間印刷データを解析した結果、例えば、印刷ジョブＩＤ「0001」の中間印刷データは、図９に示すように、カラー中間言語で記述され、その処理に６つのモジュールが必要であると判定されている。
【００９７】
プリンタ２００では、必要なモジュールが判定されると、ステップＳ１０８を経て、その判定結果に基づいて、ハードウェア回路２０の各区分領域ごとにモジュールの実行順序を規定した再構成スケジュールが作成される。また、未処理の中間印刷データが記憶装置６２に登録されると、ステップＳ３０４，Ｓ３０６を経て、処理対象となる中間印刷データの処理に必要なリコンフィギュアラブルデータが記憶装置６２から読み出され、読み出されたリコンフィギュアラブルデータおよび再構成スケジュールに基づいて、リコンフィギュア装置５６によりハードウェア回路２０のハードウェア領域が再構成される。
【００９８】
図１０は、ハードウェア回路２０のハードウェア領域を再構成する手順を説明するための図である。
例えば、２つの中間印刷データＡ，Ｂを処理する場合に、中間印刷データＡの処理にはレンダリング処理Ａおよび二値化処理Ａの２つのモジュールが、中間印刷データＢの処理にはレンダリング処理Ｂおよび二値化処理Ｂの２つのモジュールがそれぞれ必要であるとする。この場合、まず、第１区分領域では、図１０（ａ）に示すように、レンダリング処理Ａのモジュールが構成される。そして、レンダリング処理Ａにより、中間印刷データＡに基づいてレンダリングデータＡが生成される。レンダリング処理Ａが完了すると、第１区分領域では、図１０（ｂ）に示すように、レンダリング処理Ｂのモジュールが構成される。そして、レンダリング処理Ｂにより、中間印刷データＢに基づいてレンダリングデータＢが生成される。
【００９９】
一方、第２区分領域では、図１０（ａ）に示すように、二値化処理Ａのモジュールが構成される。そして、二値化処理Ａにより、レンダリングデータＡに基づいて二値化データである印刷データＡが生成され、ステップＳ３１２を経て、生成された印刷データＡに基づいて印刷機構６４により印刷が行われる。二値化処理Ａが完了すると、第２区分領域では、図１０（ｃ）に示すように、二値化処理Ｂのモジュールが構成される。そして、二値化処理Ｂにより、レンダリングデータＢに基づいて二値化データである印刷データＢが生成され、ステップＳ３１２を経て、生成された印刷データＢに基づいて印刷機構６４により印刷が行われる。
【０１００】
このような再構成スケジュールを作成することにより、二値化処理Ａおよびレンダリング処理Ｂをハードウェア回路２０により並列で実行することができるので、印刷データ処理に要する時間を短縮することができる。
次に、プリンタ２００が必要なリコンフィギュアラブルデータを有しない場合を説明する。
【０１０１】
プリンタ２００では、必要なリコンフィギュアラブルデータが記憶装置６２に存在しないと、ステップＳ２０２を経て、リコンフィギュアラブルデータ管理端末３００に取得要求が送信される。
リコンフィギュアラブルデータ管理端末３００では、取得要求を受信すると、受信した取得要求に係るリコンフィギュアラブルデータがリコンフィギュアラブルデータ記憶部４０から読み出され、読み出されたリコンフィギュアラブルデータがプリンタ２００に提供される。
【０１０２】
プリンタ２００では、リコンフィギュアラブルデータを取得すると、ステップＳ２０４を経て、取得されたリコンフィギュアラブルデータが記憶装置６２に登録される。このように、必要なリコンフィギュアラブルデータが随時登録されていくが、記憶装置６２の記憶容量が有限であることから、記憶装置６２の使用容量が所定以上となると、ステップＳ４０２を経て、利用頻度登録テーブル４００が参照されて、利用頻度が最も低いリコンフィギュアラブルデータが記憶装置６２のなかから検索される。その結果、該当のリコンフィギュアラブルデータが索出されると、ステップＳ４０４を経て、索出されたリコンフィギュアラブルデータが削除される。
【０１０３】
図１１は、利用頻度登録テーブル４００のデータ構造を示す図である。
例えば、上限値を１９０[KB]に設定した場合は、図１１に示すように、利用頻度の高い順に上位４つのものの合計容量が１９０[KB]であるので、利用頻度の高い順に上位４つのリコンフィギュアラブルデータが保持され、残りのすべてのリコンフィギュアラブルデータが削除される。
【０１０４】
このようにして、本実施の形態では、プリンタ２００は、中間印刷データの処理に必要なモジュールを判定し、その判定結果に基づいてハードウェア回路２０のハードウェア領域の再構成スケジュールを作成し、必要なリコンフィギュアラブルデータを記憶装置６２から読み出し、読み出したリコンフィギュアラブルデータおよび再構成スケジュールに基づいてハードウェア回路２０のハードウェア領域を再構成するようになっている。
【０１０５】
これにより、印刷データ処理をハードウェア回路２０により行うので、ソフトウェアで行う場合に比して、印刷データ処理に要する時間を短縮することができる。また、中間印刷データの処理に必要なモジュールを考慮して再構成スケジュールを作成し、作成した再構成スケジュールに基づいてハードウェア回路２０のハードウェア領域を再構成するので、ハードウェア領域の再構成を効率的に行うことができる。例えば、ハードウェア領域の再構成に要する時間、印刷データ処理に要する時間または待ち時間を短縮することができる。したがって、従来に比して、印刷処理の高速化を図ることができる。
【０１０６】
さらに、本実施の形態では、プリンタ２００は、ハードウェア回路２０のハードウェア領域を複数に区分し、各区分領域ごとにモジュールを構成し、モジュールの処理が完了した区分領域については、新たなモジュールを構成するようになっている。
これにより、ハードウェア回路２０のハードウェア領域のうち回路として構成されない領域を低減するとともに、ハードウェア領域のうち回路として構成されている領域が駆動していない時間を低減することができる。したがって、印刷処理の高速化をさらに図ることができる。
【０１０７】
さらに、本実施の形態では、プリンタ２００は、必要なリコンフィギュアラブルデータが記憶装置６２に存在しないと判定したときは、そのリコンフィギュアラブルデータをリコンフィギュアラブルデータ管理端末３００から取得し、取得したリコンフィギュアラブルデータに基づいてハードウェア回路２０のハードウェア領域を再構成するようになっている。
【０１０８】
これにより、プリンタ２００では新たなリコンフィギュアラブルデータを利用することができるので、汎用性および柔軟性を向上することができる。
さらに、本実施の形態では、プリンタ２００は、リコンフィギュアラブルデータの利用頻度を測定し、その測定結果に基づいて記憶装置６２のリコンフィギュアラブルデータのうち利用頻度が高いものを優先的に保持するようになっている。
【０１０９】
これにより、利用頻度が高いリコンフィギュアラブルデータについては、記憶装置６２に存在している可能性が高いので、外部から取得することなく、記憶装置６２から読み出して直ちに利用することができる。したがって、印刷処理の高速化をさらに図ることができる。
上記第１の実施の形態において、ハードウェア回路２０は、発明１、２、１２、１３、２３または２４の回路素子に対応し、記憶装置６２は、発明２、７、１０、１３、１８、２１、２４、２９または３２の回路構成情報記憶手段に対応し、中間印刷データ受信部２３およびステップＳ１０２は、発明２または１３の処理対象データ受信手段に対応している。また、ステップＳ１０２は、発明２４の処理対象データ受信ステップに対応し、モジュール判定部２５およびステップＳ１０６は、発明２、７、１３または１８の印刷データ処理機能判定手段に対応し、ステップＳ１０６は、発明２４または２９の印刷データ処理機能判定ステップに対応している。
【０１１０】
また、上記第１の実施の形態において、再構成スケジュール作成部２６およびステップＳ１０８は、発明１、２、１２または１３の再構成スケジュール作成手段に対応し、ステップＳ１０８は、発明２３または２４の再構成スケジュール作成ステップに対応し、ハードウェア領域再構成部２７およびステップＳ３０４，Ｓ３０６は、発明１、２、７、９、１２、１３、１８または２０のハードウェア領域再構成手段に対応している。また、ステップＳ３０４，Ｓ３０６は、発明２３、２４、２９または３１のハードウェア領域再構成ステップに対応し、リコンフィギュアラブルデータ取得部２９およびステップＳ２００〜Ｓ２０４は、発明７または１８の回路構成情報取得手段に対応している。
【０１１１】
また、上記第１の実施の形態において、ステップＳ２００〜Ｓ２０４は、発明２９の回路構成情報取得ステップに対応し、利用頻度測定部３０およびステップＳ３０８は、発明１０または２１の利用頻度測定手段に対応し、ステップＳ３０８は、発明３２の利用頻度測定ステップに対応している。また、リコンフィギュアラブルデータ管理部３１およびステップＳ４００〜Ｓ４０４は、発明１０または２１の回路構成情報管理手段に対応し、ステップＳ４００〜Ｓ４０４は、発明３２の回路構成情報管理ステップに対応し、中間印刷データは、発明２、１３または２４の処理対象データに対応している。
【０１１２】
また、上記第１の実施の形態において、リコンフィギュアラブルデータは、発明１、２、７、１０、１２、１３、１８、２１、２３、２４、２９または３２の回路構成情報に対応している。
次に、本発明の第２の実施の形態を図面を参照しながら説明する。図１２ないし図１７は、本発明に係るハードウェア機能可変印刷装置およびハードウェア機能変更プログラム、並びにハードウェア機能変更方法の第２の実施の形態を示す図である。
【０１１３】
本実施の形態は、本発明に係るハードウェア機能可変印刷装置およびハードウェア機能変更プログラム、並びにハードウェア機能変更方法を、図１に示すように、ホスト端末１００からの印刷要求に応じて、プリンタ２００のハードウェア機能を動的に変更して印刷を行う場合について適用したものであり、上記第１の実施の形態と異なるのは、モジュールの並列数および実行順序を規定した再構成スケジュールを作成する点にある。
【０１１４】
まず、ステップＳ１０８の再構成スケジュール作成処理を図１２を参照しながら詳細に説明する。
図１２は、再構成スケジュール作成処理を示すフローチャートである。
再構成スケジュール作成処理は、再構成スケジュール作成部２６として実現される処理であって、ステップＳ１０８において実行されると、図１２に示すように、まず、ステップＳ５００に移行するようになっている。
【０１１５】
ステップＳ５００では、１つの中間印刷データについてステップＳ１０６で複数のモジュールが必要であると判定された場合は、それらモジュールのうちデータ処理時間が最小のものを基本モジュールとして検出する。データ処理時間は、例えば、各モジュールごとにあらかじめデータ処理時間を測定しておき、処理時間情報等として記憶しておけば容易に求めることができる。
【０１１６】
次いで、ステップＳ５０２に移行して、ステップＳ１０６で判定したモジュールの並列数を決定する。１つの中間印刷データについてステップＳ１０６で複数のモジュールが必要であると判定された場合は、各モジュールごとに、そのモジュールの並列数を、そのモジュールのデータ処理時間を基本モジュールのデータ処理時間で除した値に応じた並列数として決定する。例えば、基本モジュールのデータ処理時間が１００[ms]であり、対象モジュールのデータ処理時間が９００[ms]である場合、対象モジュールの並列数は、９００／１００＝９個となる。
【０１１７】
次いで、ステップＳ５０４に移行して、決定した並列数およびリコンフィギュアラブルデータのデータ容量に基づいて、モジュールを構成するのに必要なデータ容量を算出し、算出した必要データ容量とハードウェア回路２０のハードウェア領域のデータ容量を比較し、ハードウェア領域に十分な空き容量が存在するか否かを判定し、ハードウェア領域に十分な空き容量が存在すると判定したとき(Yes)は、ステップＳ５０６に移行する。
【０１１８】
ステップＳ５０６では、モジュールの並列数を増加させる。１つの中間印刷データについてステップＳ１０６で複数のモジュールが必要であると判定された場合は、それらモジュールのうち処理工程が前段のものから優先的にその並列数を増加させる。例えば、モジュールＡ，Ｂがあって、モジュールＡの処理が完了してからモジュールＢの処理を開始する関係にある場合は、まず、モジュールＡの並列数を増加させる。
【０１１９】
次いで、ステップＳ５０８に移行して、決定した並列数およびリコンフィギュアラブルデータのデータ容量に基づいて、モジュールを構成するのに必要なデータ容量を算出し、算出した必要データ容量がハードウェア回路２０のハードウェア領域のデータ容量を超過しているか否かを判定し、ハードウェア領域のデータ容量を超過していると判定したとき(Yes)は、ステップＳ５１０に移行して、ステップＳ５０６で並列数を増加させたモジュールの並列数を減少させ、ステップＳ５１２に移行する。
【０１２０】
ステップＳ５１２では、必要なモジュールが共通する中間印刷データ同士を記憶装置６２のなかから検索し、ステップＳ５１４に移行して、該当の中間印刷データを索出したか否かを判定し、該当の中間印刷データを索出したと判定したとき(Yes)は、ステップＳ５１６に移行して、索出した中間印刷データ同士については処理順位が連続するように処理順序を変更し、ステップＳ５１２に移行する。
【０１２１】
一方、ステップＳ５１４で、該当の中間印刷データを索出しないと判定したとき(No)は、ステップＳ５１８に移行して、必要なリコンフィギュアラブルデータが記憶装置６２に存在しない中間印刷データを記憶装置６２のなかから索出し、ステップＳ５２０に移行して、該当の中間印刷データを索出したか否かを判定し、該当の中間印刷データを索出したと判定したとき(Yes)は、ステップＳ５２２に移行する。
【０１２２】
ステップＳ５２２では、索出した中間印刷データの処理順位が所定回数（例えば、２回）以上変更されているか否かを判定し、処理順位が所定回数以上変更されていないと判定したとき(No)は、ステップＳ５２４に移行して、索出した中間印刷データの処理順位が低くなるように処理順序を変更し、一連の処理を終了して元の処理に復帰させる。
一方、ステップＳ５２２で、索出した中間印刷データの処理順位が所定回数以上変更されていると判定したとき(Yes)、およびステップＳ５２０で、該当の中間印刷データを索出しないと判定したとき(No)はいずれも、一連の処理を終了して元の処理に復帰させる。
【０１２３】
一方、ステップＳ５０８で、モジュールの構成に必要なデータ容量がハードウェア領域のデータ容量を超過していないと判定したとき(No)は、ステップＳ５０４に移行する。
一方、ステップＳ５０４で、ハードウェア領域に十分な空き容量が存在しないと判定したとき(No)は、ステップＳ５１２に移行する。
次に、本実施の形態の動作を図１３ないし図１７を参照しながら説明する。
【０１２４】
プリンタ２００では、印刷要求を受信すると、ステップＳ１０２〜Ｓ１０６を経て、中間印刷データを受信し、受信した中間印刷データが記憶装置６２に登録され、受信した中間印刷データの処理に必要なモジュールが判定される。
図１３は、モジュールの判定結果の例を示した図である。
中間印刷データを解析した結果、例えば、印刷ジョブＩＤ「0001」の中間印刷データは、図１３に示すように、カラー中間言語で記述され、その処理に３つのモジュールが必要であり、それらモジュールのうち２つが記憶装置６２に記憶されていると判定されている。また、印刷ジョブＩＤ「0002」の中間印刷データは、モノクロ中間言語で記述され、その処理に３つのモジュールが必要であり、それらモジュールのすべてが記憶装置６２に記憶されていると判定されている。
【０１２５】
プリンタ２００では、必要なモジュールが判定されると、ステップＳ１０８を経て、再構成スケジュール作成処理が実行される。再構成スケジュール作成処理では、ステップＳ５００〜Ｓ５１０を経て、１つの中間印刷データについて判定された各モジュールの並列数が決定される。
図１４は、モジュールの並列数を決定する手順を説明するための図である。
【０１２６】
まず、データ処理時間が最小のモジュールが基本モジュールとして検出される。図１４（ａ）の例は、１つの中間印刷データの処理にモジュールが６つ必要な場合であり、それぞれのデータ処理時間が９００[ms]、１２０[ms]、１００[ms]、１００[ms]、１００[ms]および１００[ms]となっている。この場合、データ処理時間が最小のモジュールが１００[mm]のモジュールなので、これが基本モジュールとして検出される。
【０１２７】
次いで、各モジュールごとに、そのモジュールの並列数が決定される。モジュールの並列数は、そのモジュールのデータ処理時間を基本モジュールのデータ処理時間で除した値として決定される。図１４（ａ）の例では、カラー中間言語用レンダリングモジュールのデータ処理時間が９００[ms]なので、その並列数は、９００／１００＝９個となる。計算の結果、小数点以下の端数が生じた場合、端数は切り上げる。他のモジュールについても同じ要領で決定すると、それぞれの並列数は、図１４（ｂ）に示すように、９個、２個、１個、１個、１個および１個となる。
【０１２８】
これを１セットとした場合、１セットの構成に必要なデータ容量は、各モジュールに対応するリコンフィギュアラブルデータのデータ容量が５０[KB]、４０[KB]、３０[KB]、３０[KB]、３０[KB]および３０[KB]であることから、５０×９＋４０×２＋３０×４＝６５０[KB]となる。ここで、ハードウェア回路２０のハードウェア領域のデータ容量が１０２４[KB]であるとすると、空き容量は、１０２４−６５０＝３７４[KB]であり、ハードウェア領域に十分な空き容量があることが分かる。しかしながら、もう１セットを構成するデータ容量まではないので、処理工程が前段のモジュールから優先的に並列数を増加させる。図１４（ａ）の例では、カラー中間言語用レンダリングモジュールが最も処理工程が前段なので、ハードウェア回路２０のハードウェア領域のデータ容量を超過しないように並列数を７個増加させ、その並列数を１６個にする。このとき、必要なデータ容量は、５０×１６＋４０×２＋３０×４＝１０００[KB]となる。したがって、最終的に、それらモジュールの並列数は、図１４（ｃ）に示すように、１６個、２個、１個、１個、１個および１個となる。
【０１２９】
そして、処理対象となる他の中間印刷データについても、同じ要領で各モジュールの並列数が決定される。その結果は、例えば、図１５に示すようになる。
図１５は、各中間印刷データについてモジュールの並列数を決定した結果を示す図である。
次いで、モジュールの並列数が決定されると、ステップＳ５１２〜Ｓ５１６を経て、記憶装置６２の中間印刷データのうちモジュールが共通するもの同士については、処理順位が連続するように処理順序が変更される。また、ステップＳ５１８〜Ｓ５２４を経て、記憶装置６２の中間印刷データのうち必要なリコンフィギュアラブルデータが記憶装置６２に存在しないものについては、処理順位が低くなるように処理順序が変更される。
【０１３０】
図１６は、図１３の処理順序を変更した結果を示す図である。
図１６の例では、印刷ジョブＩＤ「0002」の中間印刷データの処理順位が第１番目になっている。これは、必要なすべてのリコンフィギュアラブルデータが記憶装置６２に存在するため、優先的に処理できるからである。また、印刷ジョブＩＤ「0001」の中間印刷データの処理順位が第２番目になっている。これは、ＣＭＹＫ用二値化モジュールに対応するリコンフィギュアラブルデータが記憶装置６２に存在せず、取得に時間を要するために処理順位を下げ後回しにする。また、印刷ジョブＩＤ「0004」の中間印刷データの処理順位が第３番目になっている。これは、印刷ジョブＩＤ「0001」の中間印刷データとモジュールが共通しているため、処理順位を印刷ジョブＩＤ「0001」の中間印刷データの直後にする。また、印刷ジョブＩＤ「0003」の中間印刷データの処理順位が最下位になっている。これは、モノクロ中間言語用レンダリングモジュール（別機種対応用）に対応するリコンフィギュアラブルデータが記憶装置６２に存在せず、取得に時間を要するために処理順位を下げ後回しにする。
【０１３１】
処理順序を変更した結果、再構成スケジュールは、図１７に示すようになる。
図１７は、再構成スケジュールを示す図である。
プリンタ２００では、再構成スケジュールが作成されると、ステップＳ３０４，Ｓ３０６を経て、処理対象となる中間印刷データの処理に必要なリコンフィギュアラブルデータが記憶装置６２から読み出され、読み出されたリコンフィギュアラブルデータおよび再構成スケジュールに基づいて、リコンフィギュア装置５６によりハードウェア回路２０のハードウェア領域が再構成される。
【０１３２】
このようにして、本実施の形態では、プリンタ２００は、１つの中間印刷データについてステップＳ１０６で判定したモジュールの並列数を決定するようになっている。
これにより、中間印刷データの処理に必要なモジュールを考慮して並列数が決定されるので、ハードウェア回路２０のハードウェア領域の再構成をさらに効率的に行うことができる。例えば、印刷データ処理に時間を要するモジュールの並列数を高くすれば、印刷データ処理に要する時間を短縮することができる。したがって、印刷処理の高速化をさらに図ることができる。
【０１３３】
さらに、本実施の形態では、プリンタ２００は、１つの中間印刷データについて判定した複数のモジュールのうちデータ処理時間が最小のものを基本モジュールとして検出し、各モジュールごとに、そのモジュールの並列数を、そのモジュールのデータ処理時間を基本モジュールのデータ処理時間で除した値として決定するようになっている。
これにより、１つの中間印刷データについて判定された複数のモジュールについては、印刷データ処理に要する時間がいずれも基本モジュールのデータ処理時間を基準に短縮されるので、印刷データ処理に要する時間をさらに短縮することができる。したがって、印刷処理の高速化をさらに図ることができる。
【０１３４】
さらに、本実施の形態では、プリンタ２００は、各モジュールごとに、そのモジュールの構成に必要なハードウェア領域のデータ容量に、そのモジュールについて決定した並列数を乗算し、それら乗算結果の総和がハードウェア回路２０のハードウェア領域の総データ容量に満たないと判定したときは、複数のモジュールのうち処理工程が前段のものから優先的にその並列数を上げるようになっている。
【０１３５】
これにより、ハードウェア回路２０のハードウェア領域のうち回路として使用されない領域を低減することができる。したがって、印刷処理の高速化をさらに図ることができる。
さらに、本実施の形態では、プリンタ２００は、記憶装置６２の中間印刷データのうちモジュールが共通するもの同士については、処理順位が連続するように処理順序を変更するようになっている。
【０１３６】
これにより、モジュールが共通する中間印刷データが連続で処理されるので、ハードウェア回路２０のハードウェア領域を再構成する回数が低減する。したがって、ハードウェア領域の再構成に要する時間を短縮することができるので、印刷処理の高速化をさらに図ることができる。
さらに、本実施の形態では、プリンタ２００は、記憶装置６２の中間印刷データのうち必要なリコンフィギュアラブルデータが記憶装置６２に存在しないものについては、処理順位が低くなるように処理順序を変更するようになっている。
【０１３７】
これにより、記憶装置６２にリコンフィギュアラブルデータが存在しない中間印刷データについては、処理が後回しにされ、処理の待ち時間を利用して外部からリコンフィギュアラブルデータが取得されるので、印刷処理の高速化をさらに図ることができる。
さらに、本実施の形態では、プリンタ２００は、記憶装置６２の中間印刷データのうち必要なリコンフィギュアラブルデータが記憶装置６２に存在しないものについては、所定回数以上の処理順序の変更を禁止するようになっている。
【０１３８】
これにより、処理が後回しにされ続け、印刷が著しく遅れる可能性を低減することができる。
上記第２の実施の形態において、記憶装置６２は、発明８、１９または３０の回路構成情報記憶手段に対応し、中間印刷データ受信部２３およびステップＳ１０２は、発明６、８、１７または１９の処理対象データ受信手段に対応し、ステップＳ１０２は、発明２８または３０の処理対象データ受信ステップに対応している。また、モジュール判定部２５およびステップＳ１０６は、発明３、４、６、８、１４、１５、１７または１９の印刷データ処理機能判定手段に対応し、ステップＳ１０６は、発明２５、２６、２８または３０の印刷データ処理機能判定ステップに対応している。
【０１３９】
また、上記第２の実施の形態において、再構成スケジュール作成部２６およびステップＳ５００〜Ｓ５２４は、発明３ないし６、８、１４ないし１７または１９の再構成スケジュール作成手段に対応し、ステップＳ５００〜Ｓ５２４は、発明２５ないし２８または３０の再構成スケジュール作成ステップに対応している。また、中間印刷データは、発明４、６、８、１５、１７、１９、２６、２８または３０の処理対象データに対応し、リコンフィギュアラブルデータは、発明８、１９または３０の回路構成情報に対応している。
【０１４０】
なお、上記第１および第２の実施の形態において、プリンタ２００は、リコンフィギュアラブルデータの利用頻度を測定し、その測定結果に基づいて記憶装置６２のリコンフィギュアラブルデータのうち利用頻度が高いものを優先的に保持するように構成したが、記憶装置６２の使用容量が上限値に近く、かつ、記憶装置６２に既に記憶されているリコンフィギュアラブルデータの利用頻度が高い場合は、新たに取得されたリコンフィギュアラブルデータが優先的に削除されてしまう。そこで、利用頻度を適切に反映するため、各リコンフィギュアラブルデータごとに、現在を基準として過去数日間の利用頻度の平均値を算出し、その算出結果に基づいて記憶装置６２のリコンフィギュアラブルデータのうち利用頻度の平均値が高いものを優先的に保持すればよい。
【０１４１】
図１８は、リコンフィギュアラブルデータを管理する手順を説明するための図である。
まず、図１８（ａ）に示すように、記憶装置６２の各リコンフィギュアラブルデータごとに、現在を基準として過去５日間の利用頻度を記録しておく。このとき、連続した過去５日間ではなく、プリンタ２００に電源が投入された日で数えて過去５日間の利用頻度を記録するのが好ましい。次いで、図１８（ｂ）に示すように、各リコンフィギュアラブルデータごとに利用頻度の平均値を算出する。そして、例えば、上限値を３００[KB]に設定した場合は、図１８（ｃ）に示すように、利用頻度の平均値が高い順に上位４つのものの合計容量が３００[KB]であるので、利用頻度の平均値が高い順に上位４つのリコンフィギュアラブルデータが保持され、残りのすべてのリコンフィギュアラブルデータが削除される。
【０１４２】
また、上記第１および第２の実施の形態において、プリンタ２００は、再構成スケジュールを作成し、リコンフィギュアラブルデータおよび再構成スケジュールに基づいてハードウェア回路２０のハードウェア領域を再構成するように構成したが、これに限らず、中間印刷データの処理に必要なモジュールを判定し、判定したモジュールに対応するリコンフィギュアラブルデータに基づいてハードウェア回路２０のハードウェア領域を再構成するように構成することもできる。
【０１４３】
この場合において、ハードウェア回路２０は、発明１１、２２または３３の回路素子に対応し、中間印刷データは、発明１１、２２または３３の処理対象データに対応し、リコンフィギュアラブルデータは、発明１１、２２または３３の回路構成情報に対応している。
また、上記第２の実施の形態において、プリンタ２００は、記憶装置６２の中間印刷データのうちモジュールが共通するもの同士については、処理順位が連続するように処理順序を変更するように構成したが、この場合、いずれかの処理順位だけを変更するなどして処理順序の変更を最小限にし、できるだけ既存の処理順序（印刷要求を受信した順序）を変更しないようにするのが好ましい。
【０１４４】
また、上記第１および第２の実施の形態において、図５、図６、図７、図８および図１２のフローチャートに示す処理を実行するにあたってはいずれも、ＲＯＭ５２にあらかじめ格納されている制御プログラムを実行する場合について説明したが、これに限らず、これらの手順を示したプログラムが記憶された記憶媒体から、そのプログラムをＲＡＭ５４に読み込んで実行するようにしてもよい。
【０１４５】
ここで、記憶媒体とは、ＲＡＭ、ＲＯＭ等の半導体記憶媒体、ＦＤ、ＨＤ等の磁気記憶型記憶媒体、ＣＤ、ＣＤＶ、ＬＤ、ＤＶＤ等の光学的読取方式記憶媒体、ＭＯ等の磁気記憶型／光学的読取方式記憶媒体であって、電子的、磁気的、光学的等の読み取り方法のいかんにかかわらず、コンピュータで読み取り可能な記憶媒体であれば、あらゆる記憶媒体を含むものである。
【０１４６】
また、上記第１および第２の実施の形態においては、本発明に係るハードウェア機能可変印刷装置およびハードウェア機能変更プログラム、並びにハードウェア機能変更方法を、ホスト端末１００からの印刷要求に応じて、プリンタ２００のハードウェア機能を動的に変更して印刷を行う場合について適用したが、これに限らず、本発明の主旨を逸脱しない範囲で他の場合にも適用可能である。
【図面の簡単な説明】
【０１４７】
【図１】本発明を適用するネットワークシステムの機能概要を示す機能ブロック図である。
【図２】リコンフィギュアラブルデータの内容を示す図である。
【図３】プリンタ２００のハードウェア構成を示すブロック図である。
【図４】利用頻度登録テーブル４００のデータ構造を示す図である。
【図５】印刷要求受付処理を示すフローチャートである。
【図６】リコンフィギュアラブルデータ取得処理を示すフローチャートである。
【図７】印刷制御処理を示すフローチャートである。
【図８】リコンフィギュアラブルデータ管理処理を示すフローチャートである。
【図９】モジュールの判定結果の例を示した図である。
【図１０】ハードウェア回路２０のハードウェア領域を再構成する手順を説明するための図である。
【図１１】利用頻度登録テーブル４００のデータ構造を示す図である。
【図１２】再構成スケジュール作成処理を示すフローチャートである。
【図１３】モジュールの判定結果の例を示した図である。
【図１４】モジュールの並列数を決定する手順を説明するための図である。
【図１５】各中間印刷データについてモジュールの並列数を決定した結果を示す図である。
【図１６】図１３の処理順序を変更した結果を示す図である。
【図１７】再構成スケジュールを示す図である。
【図１８】図１３の処理順序を変更した結果を示す図である。
【符号の説明】
【０１４８】
１００…ホスト端末，  １０…印刷データ生成部，  １１…中間印刷データ送信部，  ２００…プリンタ，  ２０…ハードウェア回路，  ２１…リコンフィギュアラブルデータ記憶部，  ２２…中間印刷データ記憶部，  ２３…中間印刷データ受信部，  ２４…中間印刷データ登録部，  ２５…モジュール判定部，  ２６…再構成スケジュール作成部，  ２７…ハードウェア領域再構成部，  ２８…印刷実行部，  ２９…リコンフィギュアラブルデータ取得部，  ３０…利用頻度測定部，  ３１…リコンフィギュアラブルデータ管理部，  ３００…リコンフィギュアラブルデータ管理端末，  ４０…リコンフィギュアラブルデータ記憶部，  ４１…リコンフィギュアラブルデータ提供部，  ５０…ＣＰＵ，  ５２…ＲＯＭ，  ５４…ＲＡＭ，  ５６…リコンフィギュア装置，  ５８…Ｉ／Ｆ，  ６０…操作パネル，  ６２…記憶装置，  ６４…印刷機構，  ４００…利用頻度登録テーブル
【図１】
2005202667.tif 000003
【図２】
2005202667.tif 000004
【図３】
2005202667.tif 000005
【図４】
2005202667.tif 000006
【図５】
2005202667.tif 000007
【図６】
2005202667.tif 000008
【図７】
2005202667.tif 000009
【図８】
2005202667.tif 000010
【図９】
2005202667.tif 000011
【図１０】
2005202667.tif 000012
【図１１】
2005202667.tif 000013
【図１２】
2005202667.tif 000014
【図１３】
2005202667.tif 000015
【図１４】
2005202667.tif 000016
【図１５】
2005202667.tif 000017
【図１６】
2005202667.tif 000018
【図１７】
2005202667.tif 000019
【図１８】
2005202667.tif 000020