説明

画像処理装置、画像形成装置及びプログラム

【課題】ハードウェア処理とソフトウェア処理とにより実行するディスプレイリストの画像処理を高速化することである。
【解決手段】画像形成装置20は、解析処理部211と、ハードウェアアクセラレータ25と、解析処理部211により生成されたディスプレイリストのうち、ハードウェアアクセラレータ25によるハードウェア処理が可能な連続するディスプレイリストの個数及びその合計データサイズに基づいて、ハードウェア処理が可能なディスプレイリストに対するハードウェア処理がソフトウェア処理より処理時間が短いか否かを判定し、その判定結果に基づいて、前記ディスプレイリストをハードウェアアクセラレータ25にハードウェア処理させ、又は前記ディスプレイリストにソフトウェア処理を施して、プリント可能データを生成する描画処理部212と、を備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理装置、画像形成装置及びプログラムに関する。
【背景技術】
【0002】
従来、MFP(MultiFunction Peripheral)、プリンタ等の画像形成装置が知られている。図9及び図10を参照して、従来の画像形成装置20Aを説明する。図9に、画像形成装置20Aの機能構成を示す。図10に、画像形成装置20Aにおける画像形成時のデータの流れを示す。
【0003】
図9に示すように、従来のプリンタとしての画像形成装置20Aは、制御部21Aと、RAM(Random Access Memory)22と、HDD(Hard Disk Drive)23と、ROM(Read Only Memory)24Aと、入力I/F部26と、画像形成部27と、を備える。
【0004】
制御部21Aは、CPU(Central Processing Unit)を有し、画像形成装置20Aの各部を制御する。制御部21Aは、ROM24Aから読み出されて適宜RAM22に展開されたプログラムとの協働で、各種ソフトウェア処理を実行する。
【0005】
RAM22は、揮発性のメモリであり、各種プログラム、各種データを一時的に記憶するワークエリアを有する。HDD23は、磁気記録媒体を有し、画像データ等のデータを読み出し及び書き込み可能に記憶する記憶部である。ROM24Aは、読み出し専用のメモリであり、各種プログラム、各種データを記憶している。入力I/F部26は、PC(Personal Computer)等の外部入力装置から、通信ネットワークを介してプリントデータ等が入力される(受信する)通信部である。画像形成部27は、入力される画像信号に応じて用紙に画像形成(プリント)する電子写真方式、インクジェット方式等の画像形成部である。
【0006】
画像形成装置20Aは、ポストスクリプト等のPDL(Page Description Language:ページ記述言語)対応の画像形成装置である。図10に示すように、外部入力装置としてのPC10Aが通信ネットワークNを介して画像形成装置20Aに接続されている。また、画像形成装置20Aの制御部21Aは、解析処理部211A、描画処理部212Aとして機能する。ここで、PC10Aからプリント対象のファイルを画像形成装置20Aに画像形成させる流れを説明する。
【0007】
先ず、PC10Aは、プリンタドライバを使用して、ユーザにプリント指示された任意のファイルをページ記述言語に変換してプリントデータを作成し、通信ネットワークNを介して画像形成装置20Aに送信する。画像形成装置20Aは、PC10Aから送信されたプリントデータを入力I/F部26により受信する。入力I/F部26は、受信したプリントデータを逐次解析処理部211Aに出力する。解析処理部211Aは、入力されたプリントデータを言語解析(ページ解析)して中間言語のディスプレイリスト(以下、DL:Display Listと記述する)30を生成し、RAM22に格納する。そして、解析処理部211Aは、RAM22に格納したDL30が1ページ(プリント出力可能な単位)分貯まると、描画処理部212Aに処理を移す。
【0008】
描画処理部212Aは、RAM22からDL30を読み出し、このDL30をラスタライズしてプリント可能データ40を生成し、RAM22に格納する。そして、描画処理部212Aは、RAM22に格納されたプリント可能データ40が1ページ(プリント出力可能な単位)分貯まると、この1ページのプリント可能データ40をRAM22から読み出して画像形成部27に出力する。画像形成部27は、入力されたプリント可能データ40に応じて用紙にプリントし、プリント物として出力する。そして、描画処理部212Aは、プリント物が正常に出力された場合に、RAM22内の不要になったデータを削除する。
【0009】
近年、画像形成装置は、一層の低価格化が求められ、コストを重視した製品の開発が必須となっている。そのため、画像形成装置に搭載するCPUについてもコストを重視した安価なものが使用されるようになってきている。安価なCPUは、演算性能が低いため、それを補うためにプリント処理の一部を専用ハードウェア化して高速化を図るという構成が知られている。以下、このプリント処理の一部を専用ハードウェア化したものをハードウェアアクセラレータと記述する。
【0010】
また、ハードウェアアクセラレータとしての画像圧縮処理部を有する画像形成装置が知られている(例えば、特許文献1参照)。この画像形成装置のCPUは、画像圧縮/伸張時に、バスの使用状況から、画像圧縮処理部によるハードウェア処理とソフトウェア処理とのどちらの処理終了時刻が早いか予測する。そして、この画像形成装置のCPUは、予測結果に応じて、ハードウェア処理とソフトウェア処理とを切り替えることにより、処理の高速化を図っている。
【先行技術文献】
【特許文献】
【0011】
【特許文献1】特開平11−328376号公報
【発明の概要】
【発明が解決しようとする課題】
【0012】
しかし、全てのDLをハードウェアアクセラレータに処理させれば良いというわけではない。DLによっては、ソフトウェアで処理させた方が効率がいいものがある。ソフトウェアで処理させた方がよい特性のDLは、例えば、ラスタライズ時にハードウェアアクセラレータ内のローカルメモリに入りきらない巨大なデータが必要となるDLや、浮動小数点計算等の複雑な計算が必要なDLである。また、DLの連続性として、ハードウェア処理させるDLとソフトウェア処理させるDLとが並んでいると、ハードウェア処理とソフトウェア処理との切り替えに要するオーバーヘッド時間が発生する。また、DLのサイズとして、合計サイズ小さいDLを一回でハードウェア処理させるとオーバーヘッド時間が発生する分、効率がよくない。
【0013】
また、従来のハードウェア処理とソフトウェア処理とを切り替える画像形成装置では、使用するバスの状況からハードウェア処理とソフトウェア処理との処理終了時刻が早いか予測していた。このため、上記DLの特性、連続性、サイズを考慮できず、処理するDLの特性、連続性、サイズによっては、処理時間が長くなるおそれがあった。
【0014】
本発明の課題は、ハードウェア処理とソフトウェア処理とにより実行するディスプレイリストの画像処理を高速化することである。
【課題を解決するための手段】
【0015】
上記課題を解決するため、請求項1に記載の発明の画像処理装置は、
プリントデータを解析してディスプレイリストを生成する解析処理部と、
ディスプレイリストをラスタライズしてプリント可能データを生成するハードウェアアクセラレータと、
前記生成されたディスプレイリストのうち、前記ハードウェアアクセラレータによるハードウェア処理が可能な連続するディスプレイリストの個数及びその合計データサイズに基づいて、前記ハードウェア処理が可能なディスプレイリストに対する前記ハードウェア処理が、ラスタライズのソフトウェア処理よりも処理時間が短いか否かを判定し、その判定結果に基づいて、前記ディスプレイリストを前記ハードウェアアクセラレータにハードウェア処理させ、又は前記ディスプレイリストにソフトウェア処理を施して、プリント可能データを生成する描画処理部と、
を備える。
【0016】
請求項2に記載の発明は、請求項1に記載の画像処理装置において、
前記描画処理部は、前記解析処理部により生成されたディスプレイリストの特性に基づいて、当該ディスプレイリストに前記ハードウェア処理が可能か否かを判定する。
【0017】
請求項3に記載の発明は、請求項1又は2に記載の画像処理装置において、
前記描画処理部は、前記ハードウェア処理が可能なディスプレイリストに対する前記ハードウェア処理と、前記ソフトウェア処理と、の処理時間が短い方の判定において、前記ハードウェア処理が可能な連続するディスプレイリストの個数が、予め設定された第1設定値以上であるか、又は前記ハードウェア処理が可能な連続するディスプレイリストの合計データサイズが、予め設定された第2設定値以上であるかにより判定する。
【0018】
請求項4に記載の発明の画像形成装置は、
請求項1から3のいずれか一項に記載の画像処理装置と、
前記描画処理部により生成されたプリント可能データに応じて用紙に画像形成を行う画像形成部と、を備える。
【0019】
請求項5に記載の発明のプログラムは、
コンピュータを、
プリントデータを解析してディスプレイリストを生成する解析処理部、
ディスプレイリストをラスタライズしてプリント可能データを生成するハードウェアアクセラレータ、
前記生成されたディスプレイリストのうち、前記ハードウェアアクセラレータによるハードウェア処理が可能な連続するディスプレイリストの個数及びその合計データサイズに基づいて、前記ハードウェア処理が可能なディスプレイリストに対する前記ハードウェア処理が、ラスタライズのソフトウェア処理よりも処理時間が短いか否かを判定し、その判定結果に基づいて、前記ディスプレイリストを前記ハードウェアアクセラレータにハードウェア処理させ、又は前記ディスプレイリストにソフトウェア処理を施して、プリント可能データを生成する描画処理部、
として機能させる。
【発明の効果】
【0020】
本発明によれば、ハードウェア処理とソフトウェア処理とにより実行するディスプレイリストの画像処理を高速化できる。
【図面の簡単な説明】
【0021】
【図1】本発明に係る実施の形態の画像形成システムの構成を示す図である。
【図2】PCの機能構成を示すブロック図である。
【図3】実施の形態の画像形成装置の機能構成を示すブロック図である。
【図4】実施の形態の画像形成装置における画像形成時のデータの流れを示す図である。
【図5】描画処理を示すフローチャートである。
【図6】(a)は、第1のDL順例におけるDLの並び順を示す図である。(b)は、第1のDL順例におけるハードウェア処理、ソフトウェア処理及びオーバーヘッドを示す図である。
【図7】(a)は、第2のDL順例におけるDLの並び順を示す図である。(b)は、第2のDL順例におけるハードウェア処理、ソフトウェア処理及びオーバーヘッドを示す図である。
【図8】(a)は、第3のDL順例におけるDLの並び順を示す図である。(b)は、第3のDL順例におけるハードウェア処理、ソフトウェア処理及びオーバーヘッドを示す図である。
【図9】従来の画像形成装置の機能構成を示すブロック図である。
【図10】従来の画像形成装置における画像形成時のデータの流れを示す図である。
【発明を実施するための形態】
【0022】
添付図面を参照して本発明に係る実施の形態を詳細に説明する。なお、本発明は、図示例に限定されるものではない。
【0023】
先ず、図1〜図3を参照して、本実施の形態の装置構成を説明する。図1に、本実施の形態の画像形成システム1の構成を示す。図2に、PC10の機能構成を示す。図3に、画像形成装置20の機能構成を示す。
【0024】
図1に示すように、画像形成システム1は、PC10,10aと、画像形成装置20,20a,20bと、を備える。PC10,10a、画像形成装置20,20a,20bは、通信ネットワークNを介して通信可能に接続されている。
【0025】
PC10は、ユーザ操作に応じて、プリント対象のファイルからプリントデータを生成して画像形成装置20,20a,20bに送信する装置である。PC10は、画像形成装置20,20a,20bの外部入力装置として機能する。PC10aは、PC10と同様の装置である。
【0026】
画像形成装置20は、PDLに対応し、PC10,10aから受信されるプリントデータに応じて画像形成(プリント)を行うプリンタである。画像形成装置20a,20bは、画像形成装置20と同様の装置であるものとする。なお、画像形成装置20は、プリンタに限定されるものではなく、MFP等、他の画像形成装置としてもよい。
【0027】
通信ネットワークNは、イーサネット(登録商標)であるものとする。しかし、これに限定されるものではなく、通信ネットワークNは、FDDI(Fiber-Distributed Data Interface)、トークンリング等、他の通信ネットワークでもよい。
【0028】
また、画像形成システム1におけるPC、画像形成装置の台数は、図1の例に限定されるものではない。さらに、PCと、画像形成装置とは、ローカル接続されるものとしてもよい。
【0029】
図2を参照して、PC10の機能構成を説明する。PC10は、制御部11と、RAM12と、HDD13と、入力I/F部14と、出力I/F部15と、を備える。
【0030】
制御部11は、CPUを有し、PC10の各部を制御する。制御部11は、HDD13から読み出されて適宜RAM12に展開されたプログラムとの協働で、各種処理を実行する。
【0031】
RAM12は、揮発性のメモリであり、各種プログラム、各種データを一時的に記憶するワークエリアを有する。HDD13は、磁気記録媒体を有し、各種プログラム、各種データを読み出し及び書き込み可能に記憶する記憶部である。入力I/F部14は、PC10a、画像形成装置20等の外部入力装置から、通信ネットワークNを介して各種データが入力される(受信する)通信部である。出力I/F部15は、PC10a、画像形成装置20等の外部出力装置へ、通信ネットワークNを介して各種データを出力する(送信する)通信部である。
【0032】
図3を参照して、画像形成装置20の機能構成を説明する。画像形成装置20は、制御部21と、RAM22と、HDD23と、ROM24と、ハードウェアアクセラレータ25と、入力I/F部26と、画像形成部27と、を備える。
【0033】
なお、図3に示すように、制御部21と、RAM22と、HDD23と、ROM24と、ハードウェアアクセラレータ25と、入力I/F部26と、出力I/F部(図示略)とを、プリンタコントローラとしての画像処理装置20αとして構成してもよい。画像処理装置20αは、外部機器としての画像形成装置に接続され、生成したプリント可能データを出力I/F部により画像形成装置に送信して用紙に画像形成(プリント)させる。
【0034】
制御部21は、CPUを有し、画像形成装置20の各部を制御する。制御部21は、ROM24から読み出されて適宜RAM22に展開されたプログラムとの協働で、各種処理を実行する。具体的には、制御部11は、後述する解析処理プログラム241との協働で、解析処理部211として機能する。また、制御部11は、後述する描画処理プログラム242との協働で、描画処理部212として機能する。
【0035】
RAM22は、不揮発性のメモリであり、各種プログラム、各種データを一時的に記憶するワークエリアを有する。HDD23は、磁気記憶媒体を有し、画像データ、追加フォントデータ等のデータを読み出し及び書き込み可能な記憶部である。ROM24は、読み出し専用のメモリであり、各種プログラム、フォントデータ等の各種データを記憶している。具体的には、ROM24には、解析処理プログラム241と、描画処理プログラム242と、が記憶されている。
【0036】
ハードウェアアクセラレータ25は、DL(ディスプレイリスト)をラスタライズする処理を行う電子回路等のハードウェアである。ハードウェアアクセラレータ25は、ローカルRAM251を内蔵する。ハードウェアアクセラレータ25は、入力されるDLをローカルRAM251に格納してラスタライズする。ラスタライズ後のプリント可能データは、ローカルRAM251に展開される。
【0037】
入力I/F部26は、PC10等の外部入力装置から、通信ネットワークNを介して各種データが入力される(受信する)通信部である。画像形成部27は、入力される画像信号(プリント可能データ)に応じて用紙に画像形成(プリント)する電子写真方式、インクジェット方式等の画像形成部である。
【0038】
次に、図4〜図8を参照して、画像形成システム1の動作を説明する。ここでは、PC10と、画像形成装置20と、の処理を代表して説明するが、PC10a、画像形成装置20a,20bでも同様である。図4に、画像形成装置20における画像形成時のデータの流れを示す。
【0039】
先ず、図4に示すように、画像形成装置20の制御部21は、画像形成処理時に、解析処理部211、描画処理部212として機能する。画像形成システム1において、PC10で生成したプリントデータを、画像形成装置20でプリント出力する例を説明する。
【0040】
先ず、PC10は、プリンタドライバを使用して、ユーザにプリント指示された任意のファイルをページ記述言語に変換してプリントデータを作成し、通信ネットワークNを介して画像形成装置20に送信する。
【0041】
画像形成装置20は、PC10から送信されたプリントデータを入力I/F部26により受信する。入力I/F部26は、受信したプリントデータを逐次解析処理部211に出力する。解析処理部211は、入力されたプリントデータを言語解析(ページ解析)して中間言語のDL30を生成し、RAM22に格納する。そして、解析処理部211は、RAM22に格納したDL30が1ページ(プリント出力可能な単位)分貯まると、描画処理部212に処理を移す。
【0042】
描画処理部212は、RAM22からDL30を読み出し、このDL30を、ソフトウェア処理(以下、SW(SoftWare)処理と記述する)して、又はハードウェアアクセラレータ25によりハードウェア処理(以下、HW(HardWare)処理と記述する)させて、ラスタライズしてプリント可能データ40を生成し、RAM22に格納する。そして、描画処理部212は、RAM22に格納されたプリント可能データ40が1ページ(プリント出力可能な単位)分貯まると、この1ページのプリント可能データ40をRAM22から読み出して画像形成部27に出力する。画像形成部27は、入力されたプリント可能データ40に応じて用紙にプリントし、プリント物として出力する。そして、描画処理部212は、プリント物が正常に出力された場合に、RAM22内の不要になったデータを削除する。尚、描画処理部212は、DL30の描画処理をSW処理するかHW処理するかの判断を行う機能と、描画処理をSW処理として実行する機能との双方を含んだソフトウェアモジュールとして構成されてもよく、或いは両機能が別々のソフトウェアモジュールとして構成された形態であってもよい。
【0043】
次いで、図5を参照して、描画処理部212が実行する描画処理を詳細に説明する。図5に、描画処理のフローチャートを示す。描画処理は、描画処理部212により、1ページ(プリント出力可能な単位)分のDL30を描画する毎のタイミングで繰り返し実行される処理である。
【0044】
先ず、描画処理部212は、変数としてのHW処理可能DL数及びHW処理可能DL合計データサイズを初期化し、0に設定する(ステップS1)。HW処理可能DL数とは、HW処理可能で且つ連続するDL30の数を示す変数である。HW処理可能DL数は、後述するHW処理リストに含まれるDL30の総数である。HW処理可能DL合計データサイズとは、HW処理可能で且つ連続するDL30の合計データサイズを示す変数である。HW処理可能DL合計データサイズは、後述するHW処理リストに含まれるDL30の合計データサイズである。
【0045】
そして、描画処理部212は、次に処理するDL30を一つRAM22から読み出して取得する(ステップS2)。そして、描画処理部212は、ステップS2で取得したDL30(以下、取得DLと記述する)の特性に基づいて、取得DLがHW処理可能か(HW処理に向いているか)否かを判定する(ステップS3)。ステップS3では、具体的には、描画処理部212は、取得DLがラスタライズ時にローカルRAM251に格納できない大きなデータが必要であるか否か、取得DLが浮動小数点計算等の複雑な計算が必要であるか否かを判定する。描画処理部212は、取得DLについて大きなデータ又は複雑な計算が必要なものである場合に、HW処理可能あると判定し、大きなデータ又は複雑な計算が必要でない場合に、HW処理可能でないと判定する。
【0046】
取得DLがHW処理可能である場合(ステップS3;YES)、描画処理部212は、HW処理可能DL数を1つ増加する(ステップS4)。そして、描画処理部212は、HW処理可能DL合計データサイズを取得DLサイズ分増加する(ステップS5)。そして、描画処理部212は、HW処理リストに取得DLの識別情報を追加する(ステップS6)。HW処理リストは、HW処理実行を予定するDLの識別情報のリストである。
【0047】
そして、描画処理部212は、取得DLが1ページ(プリント出力可能な単位)の最後のDLであるか否かを判定する(ステップS7)。最後のDLでない場合(ステップS7;NO)、ステップS2に移行される。最後のDLである場合(ステップS7;YES)、描画処理部212は、HW処理可能DL数≧第1設定数、又はHW処理可能DL合計データサイズ≧第2設定数を満たすか否かを判定する(ステップS8)。
【0048】
HW処理可能DL数が少ないと、ハードウェアアクセラレータ25で処理するデータが少なく、すぐにSW処理に切り替える必要がでてくる。このため、HW処理/SW処理の切り替えオーバーヘッドが発生し、そこで処理に時間がかかってしまう、よって、ハードウェアアクセラレータ25で処理するメリットがでない。
【0049】
また、HW処理可能DL合計データサイズが小さいと、ハードウェアアクセラレータ25で処理するデータが小さく、HW処理可能DL数と同様に、ハードウェアアクセラレータ25で処理するメリットがでない。
【0050】
そのため、HW処理リストのDLに対するHW処理がSW処理よりも処理時間が短いか否かの判定を、ステップS8のHW処理可能DL数、HW処理可能DL合計データサイズのどちらかが、予め定められた設定値以上であるか否かで行っている。第1設定値及び第2設定値は、ハードウェアアクセラレータ25の性能や、制御部21のCPU性能によって最適値が変わってくる。第1設定値及び第2設定値により、画像形成装置20の製品(機種)毎のきめ細やかなチューニングが可能となる。
【0051】
HW処理可能DL数≧第1設定数、又は(/及び)HW処理可能DL合計データサイズ≧第2設定数である場合(ステップS8;YES)、描画処理部212は、HW処理リスト内のDLをRAM22から読み出してハードウェアアクセラレータ25にHW処理でラスタライズさせる(ステップS9)。ステップS9で、描画処理部212は、ハードウェアアクセラレータ25により生成されたプリント可能データ40をRAM22に格納する。
【0052】
HW処理可能DL数≧第1設定数、又はHW処理可能DL合計データサイズ≧第2設定数でない場合(ステップS8;NO)、描画処理部212は、HW処理リスト内のDLをRAM22から読み出してSW処理を施してラスタライズを行う(ステップS10)。ステップS10で、描画処理部212は、ラスタライズにより生成したプリント可能データ40をRAM22に格納する。
【0053】
そして、描画処理部212は、変数としてのHW処理可能DL数及びHW処理可能DL合計データサイズを初期化し、0に設定する(ステップS11)。そして、描画処理部212は、HW処理リストをクリアする(ステップS12)。そして、描画処理部212は、取得DLが1ページ(プリント出力可能な単位)の最後のDLであるか否かを判定する(ステップS13)。最後のDLでない場合(ステップS13;NO)、ステップS2に移行される。最後のDLである場合(ステップS13;YES)、描画処理が終了する。
【0054】
取得DLがHW処理可能でない場合(ステップS3;NO)、描画処理部212は、HW処理可能DL数≧第1設定数、又はHW処理可能DL合計データサイズ≧第2設定数を満たすか否かを判定する(ステップS14)。
【0055】
HW処理可能DL数≧第1設定数、又はHW処理可能DL合計データサイズ≧第2設定数である場合(ステップS14;YES)、描画処理部212は、HW処理リスト内のDLをRAM22から読み出してハードウェアアクセラレータ25にHW処理でラスタライズさせる(ステップS15)。ステップS15で、描画処理部212は、ハードウェアアクセラレータ25により生成されたプリント可能データ40をRAM22に格納する。
【0056】
HW処理可能DL数≧第1設定数、又はHW処理可能DL合計データサイズ≧第2設定数でない場合(ステップS14;NO)、描画処理部212は、HW処理リスト内のDLをRAM22から読み出してSW処理を施してラスタライズを行う(ステップS16)。ステップS16で、描画処理部212は、ラスタライズにより生成したプリント可能データ40をRAM22に格納する。
【0057】
そして、描画処理部212は、取得DLにSW処理を施してラスタライズを行い、生成したプリント可能データ40をRAM22に格納する(ステップS17)。そして、ステップS11に移行される。
【0058】
次に、図6〜図8を参照して、描画処理のステップS8,S14で用いた第1設定値及び第2設定値の設定例を説明する。図6(a)に、第1のDL順例におけるDLの並び順を示す。図6(b)に、第1のDL順例におけるHW処理、SW処理及びオーバーヘッドを示す。図7(a)に、第2のDL順例におけるDLの並び順を示す。図7(b)に、第2のDL順例におけるHW処理、SW処理及びオーバーヘッドを示す。図8(a)に、第3のDL順例におけるDLの並び順を示す。図8(b)に、第3のDL順例におけるHW処理、SW処理及びオーバーヘッドを示す。
【0059】
先ず、DLは、次表1に示す3つのデータタイプのDL31,DL32,DL33が存在するものとする。
【表1】

【0060】
DL31、DL32、DL33は、それぞれ、HW処理向きか否か、想定データサイズ、想定処理時間の情報を有する。HW処理向きか否かの情報は、DLについて描画処理のステップS3の判断材料となる情報である。想定データサイズの情報は、DLについて想定されるデータサイズである。想定処理時間の情報は、DLについて想定される処理時間であり、SW処理の実処理時間と、HW処理の、実処理時間+(描画処理部212とハードウェアアクセラレータ25との間のデータ転送時間)とである。例えば、DL31において、SW処理の実処理時間が100μsであり、HW処理の想定処理時間は、実処理時間1μs+データ転送時間19μs=20μsである。また、HW処理とSW処理との切替えのオーバーヘッド時間であるHW/SW切り替えオーバーヘッドが、1000μsであるものとする。
【0061】
図6(a)に示すように、HW処理向きのDL31と、HW処理向きでない(SW処理向きである)DL33と、が交互に1000個並んでいる第1のDL順例を考える。図6(b)に示すように、DL31にHW処理を実行し、DL33にSW処理を実行すると、HW/SW切り替えオーバーヘッドが処理毎に発生する。この合計処理時間は、SW処理時間20μs×DL数500+HW処理時間100μs×DL数500+オーバーヘッド時間1000μs×オーバーヘッド回数1000=1060msとなる。一方、DL31、DL33全てにSW処理を実行すると、HW/SW切り替えオーバーヘッドが発生しない。この合計処理時間は、SW処理時間100μs×DL数1000=100msとなる。このため、第1のDL順例では、SW処理のみの実行が、HW処理及びSW処理を切り替える実行よりも高速である。
【0062】
次いで、HW処理向きのDL31をHW処理させる条件としての第1設定値、第2設定値の設定例を説明する。図7(a)に示すように、HW処理向きのDL31がx(x:任意の自然数)個並び、次いでSW処理向きであるDL33が1個並んでいる第2のDL順例を考える。図7(b)に示すように、DL31にHW処理を実行し、DL33にSW処理を実行すると、HW/SW切り替えオーバーヘッドが2回発生する。一方、DL31及びDL33全てにSW処理を実行すると、HW/SW切り替えオーバーヘッドが発生しない。
【0063】
よって、HW処理を実行したほうが高速となる条件は、次式(1)となる。
SW処理時間×DL数≧HW処理時間×DL数+オーバーヘッド時間×オーバーヘッド回数 …(1)
式(1)に第2のDL順例の数値を当てはめると、
100μs×x≧20μs×x+1000μs×2
x≧25 …(1’)
となる。従って、第1設定値=25個となり、第2設定値=50Byte×25個=1250Byteとなる。x=5個とした場合の、DL31にHW処理を実行し、DL33にSW処理を実行する場合の合計処理時間と、DL31及びDL33にSW処理を実行する場合の合計処理時間とは、同じ2600μsになる。
【0064】
次いで、HW処理向きのDL32をHW処理させる条件としての第1設定値、第2設定値の設定例を説明する。図8(a)に示すように、HW処理向きのDL32がy(y:任意の自然数)個並び、次いでSW処理向きであるDL33が1個並んでいる第3のDL順例を考える。図8(b)に示すように、DL32にHW処理を実行し、DL33にSW処理を実行すると、HW/SW切り替えオーバーヘッドが2回発生する。一方、DL32及びDL33全てにSW処理を実行すると、HW/SW切り替えオーバーヘッドが発生しない。
【0065】
よって、全てSW処理を実行したほうが高速となる条件の式(1)に第3のDL順例の数値を当てはめると、
500μs×y≧100μs×y+1000μs×2
y≧5 …(1’’)
となる。従って、第1設定値=5個となり、第2設定値=300Byte×5個=1500Byteとなる。y=5個とした場合の、DL32にHW処理を実行し、DL33にSW処理を実行する場合の合計処理時間と、DL32及びDL33にSW処理を実行する場合の合計処理時間とは、同じ2600μsになる。
【0066】
以上、本実施の形態によれば、画像形成装置20は、解析処理部211と、ハードウェアアクセラレータ25と、描画処理部212と、を備える。描画処理部212は、解析処理部211により生成されたDLのうち、HW処理可能DL数及びHW処理可能合計DLデータサイズに基づいて、HW処理が可能な取得DLに対するHW処理と、SW処理との処理時間が短い方を判定する。そして、描画処理部212は、その判定結果に基づいて、HW処理と判定した場合に、取得DLをハードウェアアクセラレータ25にHW処理させ、SW処理と判定した場合に、取得DLにSW処理を施して、プリント可能データを生成する。このため、HW処理とSW処理とにより実行するDLのラスタライズの画像処理を高速化でき、画像形成処理も高速化できる。
【0067】
また、描画処理部212は、取得DLの特性に基づいて、HW処理が可能か否かを判定する。このため、HW処理が可能な(HW処理に向いている)取得DLをHW処理対象にでき、HW処理が可能でない(HW処理に向いていない)DLにHW処理を行って低速化することを防ぐことができる。
【0068】
また、描画処理部212は、HW処理が可能なDLに対するHW処理と、SW処理と、のどちらの処理時間が短いかの判定は、HW処理可能DL数が第1設定値以上であるか、又はHW処理可能合計DLデータサイズ数が第2設定値以上であるか、により判定する。このため、HW処理が可能なDLに対するHW処理と、SW処理と、のどちらの処理時間が短いかの判定を容易に行うことができる。また、描画処理プログラム242の第1設定値、第2設定値を変更することで、製品(機種)毎に適切な第1設定値、第2設定値を設定できる。
【0069】
以上の説明では、本発明に係るプログラムのコンピュータ読み取り可能な媒体としてROM24を使用した例を開示したが、この例に限定されない。
その他のコンピュータ読み取り可能な媒体として、フラッシュメモリ等の不揮発性メモリ、CD−ROM等の可搬型記録媒体を適用することが可能である。
また、本発明に係るプログラムのデータを通信回線を介して提供する媒体として、キャリアウエーブ(搬送波)も本発明に適用される。
【0070】
なお、上記実施の形態における記述は、本発明に係る好適な画像処理装置、画像形成装置及びプログラムの一例であり、これに限定されるものではない。
【0071】
上記実施の形態では、ハードウェアアクセラレータ25がローカルRAM251を内蔵する構成としたが、これに限定されるものではない。ハードウェアアクセラレータ25がRAM22又は他のメモリを用いて、取得DLのラスタライズを行う構成としてもよい。
【0072】
また、上記実施の形態では、HW処理可能DL数及びHW処理可能合計DLデータサイズの第1設定値及び第2設定値を出荷時に設定する構成としたが、これに限定されるものではない。例えば、描画処理では、HDD23に記憶されている第1設定値及び第2設定値を読み出して使用する構成とし、出荷後にも、画像形成装置20の操作部(図示略)又はPC10等の外部入力装置から、HDD23に記憶されている第1設定値及び第2設定値を変更可能な構成としてもよい。
【0073】
また、上記実施の形態では、ハードウェアアクセラレータ25によるHW処理中に、描画処理部212が処理を行わない構成としたが、これに限定されるものではない。例えば、ハードウェアアクセラレータ25によるHW処理中に、描画処理部212(制御部21)が、プリントデータのページ解析処理等、別のSW処理を行う構成としてもよい。この構成により、画像形成装置20全体の処理性能の向上が図れる。
【0074】
また、以上の実施の形態における画像形成装置20、画像形成システム1を構成する各部の細部構成及び細部動作に関して本発明の趣旨を逸脱することのない範囲で適宜変更可能である。
【符号の説明】
【0075】
1 画像形成システム
10,10a,10A PC
11 制御部
12 RAM
13 HDD
14 入力I/F部
15 出力I/F部
20,20a,20b,20A 画像形成装置
20α 画像処理装置
21,21A 制御部
211,211A 解析処理部
212,212A 描画処理部
22 RAM
23 HDD
24,24A ROM
241 解析処理プログラム
242 描画処理プログラム
25 ハードウェアアクセラレータ
251 ローカルRAM
26 入力I/F部
27 画像形成部
30,31,32,33 DL(ディスプレイリスト)
40 プリント可能データ
N 通信ネットワーク

【特許請求の範囲】
【請求項1】
プリントデータを解析してディスプレイリストを生成する解析処理部と、
ディスプレイリストをラスタライズしてプリント可能データを生成するハードウェアアクセラレータと、
前記生成されたディスプレイリストのうち、前記ハードウェアアクセラレータによるハードウェア処理が可能な連続するディスプレイリストの個数及びその合計データサイズに基づいて、前記ハードウェア処理が可能なディスプレイリストに対する前記ハードウェア処理が、ラスタライズのソフトウェア処理よりも処理時間が短いか否かを判定し、その判定結果に基づいて、前記ディスプレイリストを前記ハードウェアアクセラレータにハードウェア処理させ、又は前記ディスプレイリストにソフトウェア処理を施して、プリント可能データを生成する描画処理部と、
を備える画像処理装置。
【請求項2】
前記描画処理部は、前記解析処理部により生成されたディスプレイリストの特性に基づいて、当該ディスプレイリストに前記ハードウェア処理が可能か否かを判定する請求項1に記載の画像処理装置。
【請求項3】
前記描画処理部は、前記ハードウェア処理が可能なディスプレイリストに対する前記ハードウェア処理と、前記ソフトウェア処理と、の処理時間が短い方の判定において、前記ハードウェア処理が可能な連続するディスプレイリストの個数が、予め設定された第1設定値以上であり、又は前記ハードウェア処理が可能な連続するディスプレイリストの合計データサイズが、予め設定された第2設定値以上であるか否かにより判定する請求項1又は2に記載の画像処理装置。
【請求項4】
請求項1から3のいずれか一項に記載の画像処理装置と、
前記描画処理部により生成されたプリント可能データに応じて用紙に画像形成を行う画像形成部と、を備える画像形成装置。
【請求項5】
コンピュータを、
プリントデータを解析してディスプレイリストを生成する解析処理部、
ディスプレイリストをラスタライズしてプリント可能データを生成するハードウェアアクセラレータ、
前記生成されたディスプレイリストのうち、前記ハードウェアアクセラレータによるハードウェア処理が可能な連続するディスプレイリストの個数及びその合計データサイズに基づいて、前記ハードウェア処理が可能なディスプレイリストに対する前記ハードウェア処理が、ラスタライズのソフトウェア処理よりも処理時間が短いか否かを判定し、その判定結果に基づいて、前記ディスプレイリストを前記ハードウェアアクセラレータにハードウェア処理させ、又は前記ディスプレイリストにソフトウェア処理を施して、プリント可能データを生成する描画処理部、
として機能させるプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2011−165022(P2011−165022A)
【公開日】平成23年8月25日(2011.8.25)
【国際特許分類】
【出願番号】特願2010−28436(P2010−28436)
【出願日】平成22年2月12日(2010.2.12)
【出願人】(303000372)コニカミノルタビジネステクノロジーズ株式会社 (12,802)
【Fターム(参考)】