(57)【要約】【課題】複数のプロセッサの処理負荷を監視して複数のプロセッサ間でダイナミックに処理分担を変更するようになした画像形成装置を提供する。【解決手段】画像形成装置１０は、画像データの処理を分担して行う複数のプロセッサ１６、１８と制御情報を記憶する制御情報テーブル２４と制御部２０と印刷機構部３０とから構成されている。画像データの処理はＲＩＰ処理、ＵＣＲ処理、圧縮処理のプロセスで行われ、各プロセッサは各プロセスを処理可能に構成されており通常は前記プロセスの少なくとも１つのプロセスをそれぞれ分担して処理する。制御情報テーブルは、各プロセッサが処理するプロセスの処理状況を記憶し、この処理状況に基づいて制御部は各プロセッサへの処理割り当てを制御し、各プロセッサの処理負荷に応じて各プロセッサの処理分担を変更する。【選択図】      図１
2004326307.tif 000002
【特許請求の範囲】
【請求項１】
画像データを印刷する処理を複数のプロセッサによって画像処理を分担して処理するように構成された画像形成装置において、
画像データを受信し印刷するプロセスを複数のプロセスに分割し、前記複数のプロセスを処理可能に構成されており通常は前記複数のプロセスの少なくとも１つのプロセスをそれぞれ分担して処理するように構成された複数のプロセッサと、
前記各々のプロセッサが処理するプロセスの処理状況を記憶する制御情報テーブルと、
前記制御情報テーブルに記憶された処理状況に基づいて、前記各プロセッサへの処理割り当てを制御する制御部とを備え、
前記各プロセッサの処理負荷に応じて各プロセッサの処理分担を変更するようになしたことを特徴とする画像形成装置。
【請求項２】
前記画像データはカラー画像データであり、前記複数のプロセスは少なくとも、画像データをビットマップイメージに展開処理するＲＩＰ処理プロセスと、
前記ビットマップイメージに展開されたデータから下色除去を含むカラー変換処理を行うＵＣＲ処理プロセスと、前記ＵＣＲ処理されたデータを圧縮する圧縮処理プロセスとに分割したことを特徴とする請求項１に記載の画像形成装置。
【請求項３】
前記画像データは、複数のデータ領域に分割され、該分割されたデータ毎にＲＩＰ処理プロセスを一方のプロセッサで処理し、該一方のプロセッサでＲＩＰ処理されたビットマップイメージに展開されたデータを他方のプロセッサでＵＣＲ処理および圧縮処理することを特徴とする請求項２に記載の画像形成装置。
【請求項４】
前記制御情報テーブルは、前記分割された画像データ毎に、かつ、前記分割されたプロセス毎に、該当する部分の処理を分担しているプロセッサとその処理進行状態を記憶するように構成したことを特徴とする請求項３に記載の画像形成装置。
【請求項５】
前記制御部は、前記一方のプロセッサが分担したプロセスの処理が終了し、他のプロセッサが分担したプロセスの処理が終了していない場合に、前記処理を終了したプロセッサに、次の画像データをＲＩＰ処理を分担するようなしたことを特徴とする請求項４に記載の画像形成装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、カラープリンタや複合印刷装置等のカラー画像を印刷する画像形成装置に関するものであり、特に、画像データを印刷する処理を複数のプロセッサによって画像処理を分担して行うように構成された画像形成装置において、各プロセッサの処理負荷を監視して各プロッサ間で動的にその処理分担を変更するようになした画像形成装置に関するものである。
【０００２】
【従来の技術】
近年、ドキュメントのほとんどはパーソナルコンピュータなど情報処理装置により処理され、プリンタを用いて出力されている。したがって、大量の書類を高速で印刷するためにプリンタの印刷速度を向上することが常に要求されている。また、パーソナルコンピュータにおいてカラー画像の処理が容易に行われるようになっており、カラー表示を含んだ文書量が増大している。
【０００３】
このため、カラー印刷ができる様々な種類のプリンタが開発され、一般的に使用されるようになっている。そして、カラープリンタに対しても印刷速度を向上する要求が常にある。その一方で、高速なカラープリンタを低コストで供給可能にする要求も常に存在する。
【０００４】
印刷速度の速いカラープリンタとして、ページ印刷できるカラーレーザープリンタが知られており、近年、プリント用のエンジン（印刷機構）の速度は大幅に向上している。しかしながら、パーソナルコンピュータで処理されるカラー画像の解像度も大幅に向上されており、パーソナルコンピュータから印刷するために送信されるカラー画像のデータ量は膨大となっている。さらに、パーソナルコンピュータからプリンタに送信される言語は様々であり、プリンタは膨大なデータをそれぞれの言語に従って処理する必要がある。また、印刷品質を向上させるため、様々な処理技術が採用されている。
【０００５】
従って、パーソナルコンピュータから印刷データを受信した後、印刷機構で印刷可能な２値化されたデータに変換するまでの処理過程が複雑になってきている。このため、従来にも増してこの処理を短縮することがカラープリンタの高速化のために重要な課題となり、カラープリンタの処理を高速化するために種々の試みがなされている。
【０００６】
例えば、下記の特許文献１には、シアン、マゼンタ、イエロー、ブラックの各々の色に対応する独立したマイクロプロセッサシステムにより画像生成制御を行うことで、カラー印刷の高速化を実現可能とした印刷装置が開示されている。この印刷装置は、複数色毎に設けられ特定色の画像データを各々生成する複数のＣＰＵと、特定色の画像データを各々蓄積する複数のメモリと、各メモリの管理を行う複数のシステムＡＳＩＣと、各システムＡＳＩＣから供給された画像データをビデオ信号として各々出力する複数のビデオ出力コントローラと、各ビデオ出力コントローラから出力されたビデオ信号に基づき各々画像生成を行う画像生成部とを具備するものである。
【０００７】
また、下記の特許文献２には、少なくとも２つのＣＰＵにより、印刷データを受信してから２値化されたデータを印刷機構が出力するまでの処理を並列処理し、カラープリンタをさらに高速化を図った印刷装置が開示されている。この印刷装置は、印刷データを受信する処理および印刷データを中間コードに変換して出力する処理までを制御する第１のＣＰＵと、中間コードから描画データを生成する処理、色変換する処理および２値化する処理を制御する第２のＣＰＵを設けている。プリンタにおけるデータ処理は段階的に進んでいくので、中間コードなどのいずれかの段階のデータで複数のＣＰＵの間で処理を引き継ぐことにより、ＣＰＵ間の通信機能を設けたり、協調制御用のＯＳを開発することなく、２つのＣＰＵにより並行処理するようになしたものである。
【０００８】
【特許文献１】
特開２０００−３５１２３９号公報（図１）
【特許文献２】
特開２０００−１９８２４０号公報（図１）
【０００９】
【発明が解決しようとする課題】
しかしながら、上記特許文献１および特許文献２に開示された印刷装置は、いずれも画像データを処理する複数のＣＰＵにより、色毎にあるいは、一連の画像処理の中の部分的な処理を分担して実行させることによって処理速度を高速化した印刷装置であり、各ＣＰＵの処理分担が固定的に定められたものである。従って、各ＣＰＵは分担する処理のために専用にカスタマイズされたものである必要があり、汎用のＣＰＵを使用することが困難であるという問題点があり、あるいは印刷装置のハードウェアの各要素を各ＣＰＵに割り当てられた処理分担に応じてハードウェア区画に区分することが必要になり、これにより印刷装置の構成にも制約が生じる等の問題点があった。
【００１０】
本願の発明者は前記の問題点を解消すべく種々検討を重ねた結果、複数のＣＰＵに画像データ処理を分担させ、各プロセッサの処理負荷を監視して各プロセッサ間でダイナミックに処理分担を変更するようになすことによって前記の問題点を解消し得ることを見出し、本発明を完成するに至ったものである。すなわち、本発明は前記の問題点を解消することを課題とし、画像データを印刷する処理を複数のプロセッサによって分担して処理するように構成された画像形成装置において、各プロセッサの処理負荷を監視して各プロセッサ間で動的（ダイナミック）にその処理分担を変更するようになした画像形成装置を提供することを目的とする。
【００１１】
【課題を解決するための手段】
本発明の前記目的は、以下の構成により達成することができる。すなわち、本発明に係る画像形成装置は、画像データを印刷する処理を複数のプロセッサによって画像処理を分担して処理するように構成された画像形成装置において、
画像データを受信し印刷するプロセスを複数のプロセスに分割し、前記複数のプロセスを処理可能に構成されており通常は前記複数のプロセスの少なくとも１つのプロセスをそれぞれ分担して処理するように構成された複数のプロセッサと、
前記各々のプロセッサが処理するプロセスの処理状況を記憶する制御情報テーブルと、
前記制御情報テーブルに記憶された処理状況に基づいて、前記各プロセッサへの処理割り当てを制御する制御部とを備え、
前記各プロセッサの処理負荷に応じて各プロセッサの処理分担を変更するようになしたことを特徴とする。
【００１２】
斯かる構成によれば、制御部が複数のプロセッサの処理負荷の状況に応じて動的に処理分担を変更して画像データの処理を行うため、効率良く画像データの並列処理を実行することができる。
【００１３】
また、本発明の他の態様によれば、画像データはカラー画像データであり、前記複数のプロセスは少なくとも、画像データをビットマップイメージに展開処理するＲＩＰ処理プロセスと、ビットマップイメージに展開されたデータから下色除去を含むカラー変換処理を行うＵＣＲ処理プロセスと、ＵＣＲ処理されたデータを圧縮する圧縮処理プロセスとに分割したことを特徴とする。
【００１４】
更に、本発明の他の態様によれば、画像データは、複数のデータ領域に分割され、該分割されたデータ毎にＲＩＰ処理プロセスを一方のプロセッサで処理し、該一方のプロセッサでＲＩＰ処理されたビットマップイメージに展開されたデータを他方のプロセッサでＵＣＲ処理および圧縮処理することを特徴とする。
【００１５】
また、本発明の更に他の態様によれば、制御情報テーブルは、前記分割された画像データ毎に、かつ、前記分割されたプロセス毎に、該当する部分の処理を分担しているプロセッサとその処理進行状態を記憶するように構成したことを特徴とする。
【００１６】
また、更に、本発明の他の態様によれば、制御部は、前記一方のプロセッサが分担したプロセスの処理が終了し、他のプロセッサが分担したプロセスの処理が終了していない場合に、前記処理を終了したプロセッサに、次の画像データをＲＩＰ処理を分担するようなしたことを特徴とする。
【００１７】
これらの態様によっても前記と同様に、制御部が複数のプロセッサの処理負荷の状況に応じて動的に処理分担を変更して画像データの処理を行うため、効率良く画像データの並列処理を実行することができる。
【００１８】
【発明の実施の形態】
以下、本発明に係る画像形成装置について、添付の図面を参照して詳細に説明する。図１は本発明に係る画像形成装置の構成を示す概略ブロック図であり、本発明に係る画像形成装置１０は、クライアントＰＣ等からの画像データを受信する受信バッファ１２と、受信バッファ１２に受信した画像データをディスプレイリストに変換するディスプレイリスト変換部１４と、ディスプレイリスト変換部１４で中間データに変換された画像データ（ディスプレイリストデータ）を処理する第１のプロセッサ（ＣＰＵ１）１６と第２のプロセッサ（ＣＰＵ２）１８と、印刷機構部３０とを備えて構成されている。
【００１９】
第１のプロセッサ１６、第２のプロセッサ１８は、ディスプレイリスト変換部１４で画像データを変換して作成されたディスプレイリストデータを処理して１ページ毎の２値化されたデータとして印刷機構部３０に送出して印刷を行う。画像データがカラー画像データの場合、第１のプロセッサ１６、第２のプロセッサ１８による処理は、ディスプレイリストデータをビットマップイメージのデータに展開するＲＩＰ処理プロセスと、ＲＩＰ処理プロセスにより展開されたビットマップイメージデータから下色除去（Ｕｎｄｅｒｃｏｌｏｒ  Ｒｅｍｏｖａｌ）を含む色変換を行うＵＣＲ処理プロセスと、ＵＣＲ処理プロセスによって色変換されたデータを再び圧縮する圧縮処理プロセスとからなり、この一連のレンダリング処理によって作成された圧縮画像データは、伸長処理されて印刷機構部３０に送られ、印刷される。
【００２０】
第１のプロセッサ１６、第２のプロセッサ１８は、それぞれ、前記のＲＩＰ処理プロセス、ＵＣＲ処理プロセス、圧縮処理プロセスを処理する機能を有しているが、通常は第１のプロセッサ１６がＲＩＰ処理プロセスを分担し、第２のプロセッサ１８が第１のプロセッサ１６でＲＩＰ処理したデータを引き継いで、ＵＣＲ処理プロセス、圧縮処理プロセスを実行するように構成され、２つのプロセッサ１６、１８により処理を分担して並列処理するようなされている。
【００２１】
画像データは受信バッファ１２で受信した後、または、ディスプレイリスト変換部１４でディスプレイリストに変換された後に適宜の大きさに分割され、分割されたデータの単位毎に第１のプロセッサ１６でＲＩＰ処理され、第２のプロセッサ１８に引き継がれてＵＣＲ処理、圧縮処理される。すなわち、第１のプロセッサ１６と第２のプロセッサ１８は、分割されたデータ単位でパイプライン的に並列処理を進める。このようにして２つのプロセッサ１６と１８によって処理された画像データが１ページ分揃うと、印刷機構部３０に送られ、印刷が行われる。分割の単位は、例えば、１ページ分の画像データを複数のデータに分割してもよく、複数ページの画像データを１ページ分ずつのデータに分割してもよい。
【００２２】
第１のプロセッサ１６と第２のプロセッサ１８の処理を制御するために、画像形成装置１０には制御部２０と２つのプロセッサ１６、１８により共有される記憶装置であるＳＤＲＡＭ２２が設けられている。ＳＤＲＡＭ２２には制御情報ＴＢ（制御情報テーブル）２４とデータバッファ２６とページバッファ２８とが設けられている。制御情報テーブル２４は図２を参照して後述するが、制御部２０が２つのプロセッサ１６と１８のそれぞれの処理状況を監視するためのものであり、各プロセッサ１６、１８が処理する画像データと各処理プロセス（ＲＩＰ処理プロセス、ＵＣＲ処理プロセス、圧縮処理プロセス）のどの処理プロセスを実行し、その処理が完了したかを監視するためのフラグ情報が制御部２０によって書換えられていくものである。
【００２３】
データバッファ２６は、一方のプロセッサが処理した結果のデータをバッファするものであり、一連の処理プロセスが未完了の場合このデータを他方のプロセッサが引き継ぐことができる。ページバッファ２８は何れかのプロセッサにより一連の処理プロセスが完了したデータをバッファするものであり、分割された画像データのそれぞれについて一連の処理プロセスが完了するとこのページバッファ２８にバッファされ、１ページ分の画像データが揃うと印刷機構部３０に送られ、印刷処理が行われる。
【００２４】
図２は、制御情報テーブル２４の構成を示す図であり、制御部２０はこの制御情報テーブル２４のフラグを書換えながら、２つのプロセッサ１６、１８における処理を制御する。制御情報テーブル２４は図２に示すように、処理すべき画像データを分割した各々の分割画像データのデータＩＤが縦方向に記憶され、横方向には第１のプロセッサ１６と第２のプロセッサ１８におけるそれぞれのＲＩＰ処理プロセス、ＵＣＲ処理プロセス、圧縮処理プロセスの処理状況を記憶するフィールドが設けられている。
【００２５】
例えば、図２に示す状態は、分割画像データＤ１１について、第１のプロセッサ１６でＲＩＰ処理プロセスが実行され（処理フィールドが「ｏｎ」）、その処理が完了（完了フィールドが「１」）しており、その処理結果のデータが第２のプロセッサ１８に引き継がれ、第２のプロセッサ１８においてＵＣＲ処理プロセスが実行され、その処理が完了し引き続き圧縮処理プロセスが行われており、その処理が未完了（処理継続中）であることを示している。一方、この時点で第１のプロセッサ１６は分割画像データＤ１２のＲＩＰ処理プロセスを実行中であることを示している。処理結果のデータの引き継ぎは前述したようにデータバッファ２６を介して行われ、一連の処理プロセスが完了したデータはページバッファ２８に記憶される。
【００２６】
従って、制御部２０は、この制御情報テーブル２４の各フィールドのフラグを書換えながら、２つのプロセッサ１６、１８における並列処理を制御することができる。通常は前述したように、第１のプロセッサ１６がＲＩＰ処理プロセスを分担し、第２のプロセッサ１８がＵＣＲ処理プロセスと圧縮処理プロセスを分担して動作している。図３はある分割データＤｍｎについてみた時の通常状態の処理手順を示すフローチャートである。
【００２７】
ステップＳ１で第１のプロセッサ１６がＲＩＰ処理プロセスを実行し、この処理の完了フラグが「１」にセットされると、ステップＳ２で第２のプロセッサ１８がデータを引き継ぎ、ＵＣＲ処理プロセスを実行し、その処理が完了するとステップＳ３で第２のプロセッサ１８が引き続き圧縮処理プロセスを実行する。この間に図示していないが、第１のプロセッサ１６は次の分割データのＲＩＰ処理プロセスを実行する。
【００２８】
何らかの原因で２つのプロセッサ１６、１８の何れか一方の処理負荷が大きくなり、一方のプロセッサが実行中の処理プロセスを完了した時点で他のプロセッサの処理が完了していない場合、制御部２０は一方のプロセッサに通常分担しない処理プロセスの実行を割り当て、動的に２つのプロセッサ１６、１８が分担する処理プロセスを変更する制御を行う。
【００２９】
図４はこの場合の制御情報テーブル２４の内容を示す図である。すなわち、図４に示すように、分割データＤ１１については通常の処理分担で処理を行い、第２のプロセッサ１８の圧縮処理プロセスが完了した時点で、第１のプロセッサ１６が分割データＤ１２のＲＩＰ処理プロセスを実行しており、この処理負荷が大きくなり、未だ完了していない状態であると、制御部２０は第２のプロセッサ１８に次の分割データＤ１３のＲＩＰ処理プロセスを実行させるように制御する。
【００３０】
第２のプロセッサ１８がこのＲＩＰ処理プロセスを完了してもなお第１のプロセッサ１６における分割データＤ１２のＲＩＰ処理プロセスが未完了である場合、第２のプロセッサ１８は分割データＤ１３のＲＩＰ処理プロセスに続きＵＣＲ処理プロセスを実行する。この後は、例えば、このＵＣＲ処理プロセスが完了しない時点で、第１のプロセッサ１６において分割データＤ１２のＲＩＰ処理プロセスが完了すると、第１のプロセッサ１６でデータＤ１２のＵＣＲ処理プロセス、圧縮処理プロセスを実行させることもできる。
【００３１】
図５は上記の場合の処理を示すフローチャートである。第２のプロセッサ１８の圧縮処理プロセスが完了した時点で、ステップＳ５に示すように第１のプロセッサ１６が分割データＤ１２のＲＩＰ処理プロセスを実行しており、この処理負荷が大きくなり、未だ完了していない状態であると、制御部２０は第２のプロセッサ１８に次の分割データＤ１３のＲＩＰ処理プロセスを実行させるように制御する。
【００３２】
第２のプロセッサ１８がこのＲＩＰ処理プロセスを完了してもなお第１のプロセッサ１６における分割データＤ１２のＲＩＰ処理プロセスが未完了である場合、ステップＳ６で第２のプロセッサ１８は分割データＤ１３のＲＩＰ処理プロセスに続きＵＣＲ処理プロセスを実行し、ステップＳ７で圧縮処理プロセスを実行する。
【００３３】
２つのプロセッサ１６と１８の処理分担の変更は、例えば、一方のプロセッサが分担した処理プロセスを完了してから一定の時間、他方のプロセッサが分担している処理プロセスが完了しない場合に行うように構成すれば、２つのプロセッサ間で僅かに処理負荷のバランスが崩れた状態では通常の処理分担を継続し、バランスが一定以上崩れた状態で処理分担を変更するように制御することができる。
【００３４】
【発明の効果】
以上、詳細に説明したように本発明に係る画像形成装置によれば、画像データを印刷する処理を複数のプロセッサによって画像処理を分担して処理するように構成された画像形成装置において、各プロセッサの処理負荷を監視して各プロセッサ間でダイナミックに処理分担を変更するようになした画像形成装置を提供することができ、画像データ処理の効率を向上することができる。
【図面の簡単な説明】
【図１】本発明に係る画像形成装置の構成を示すブロック図である。
【図２】通常の処理状態における制御情報テーブルの構成およびその内容の一例を示す図である。
【図３】通常の処理状態における処理手順を示すフローチャートである。
【図４】処理分担の変更が生じる場合の制御情報テーブルの内容を示す図である。
【図５】処理分担の変更が生じる場合の処理手順を示すフローチャートである。
【符号の説明】
１０…画像形成装置
１２…受信バッファ
１４…ディスプレイリスト変換部
１６…第１のプロセッサ（ＣＰＵ１）
１８…第２のプロセッサ（ＣＰＵ２）
２０…制御部
２２…ＳＤＲＡＭ
２４…制御情報テーブル
２６…データバッファ
２８…ページバッファ
３０…印刷機構部
【図１】
2004326307.tif 000003
【図２】
2004326307.tif 000004
【図３】
2004326307.tif 000005
【図４】
2004326307.tif 000006
【図５】
2004326307.tif 000007