(57)【要約】【課題】ハードウェア及びソフトウェアによって描画処理可能な画像形成装置において、画像形成出力の生産性を保ちつつ消費電力の低減を図ること。【解決手段】ディスプレイリストの生成に応じて、画像形成出力するべき画像の内容を示す判断情報を取得し、プリントエンジン１６０のＰＰＭに応じて定められたＨＡ判断条件情報と、取得した判断情報に基づいて判断される描画処理の処理量とに基づいて、ハードウェアアクセラレータ２３０による描画処理の実行要否を判断するハードウェア描画処理制御部２１２を含むことを特徴とする。【選択図】図４
2013052615.tif 000002
【特許請求の範囲】
【請求項１】
画像形成出力を実行するための画像処理をハードウェア及びソフトウェアによって実行可能な画像形成装置であって、
ページ記述言語に基づいて得られた描画命令に基づき、描画すべき図形毎に情報がまとめられた図形情報を生成する図形情報生成部と、
画像形成部が画像形成出力を実行するための描画情報を、前記生成された図形情報に基づいて生成する描画処理をソフトウェア処理によって実行する描画情報生成部と、
前記描画処理をハードウェアとして実行する描画情報生成回路と、
前記描画情報生成回路による前描画処理の実行を制御する描画処理制御部とを含み、
前記描画処理制御部は、
前記図形情報の生成に応じて、画像形成出力するべき画像の内容を示す出力内容情報を取得し、
画像形成出力を実行する画像形成部が単位時間当たりに画像形成出力可能な枚数に応じて定められた基準値と、前記取得した出力内容情報に基づいて判断される前記描画処理の処理量とに基づいて、前記描画情報生成回路による前記描画処理の実行要否を判断することを特徴とする画像形成装置。
【請求項２】
前記描画処理制御部は、前記出力内容情報に基づいて求めた前記描画すべき図形の面積が、前記基準値として予め定められた閾値を超えている場合に、前記描画情報生成回路による前記描画処理が必要であると判断することを特徴とする請求項１に記載の画像形成装置。
【請求項３】
前記描画処理制御部は、前記出力内容情報として前記図形情報の情報量を取得し、前記取得した情報量が前記基準値として予め定められた閾値を超えている場合に、前記描画情報生成回路による前記描画処理が必要であると判断することを特徴とする請求項１または２に記載の画像形成装置。
【請求項４】
前記描画処理制御部は、前記取得した出力内容情報に基づき、描画すべき図形の種類毎に定められた重み値を用いて描画処理の処理負荷に関する値を計算し、その計算結果と前記基準値として予め定められた閾値との比較結果に基づいて前記描画情報生成回路による前記描画処理の実行要否を判断することを特徴とする請求項１乃至３いずれか１項に記載の画像形成装置。
【請求項５】
前記描画処理制御部は、前記出力内容情報に基づいて求めた前記描画すべき図形の面積及び前記図形情報の情報量の夫々について描画すべき図形の種類毎に定められた重み値を用いて描画処理の処理負荷に関する値を計算することを特徴とする請求項４に記載の画像形成装置。
【請求項６】
前記描画処理制御部は、前記出力内容情報に基づき、画像形成出力において用いられる色数を判断し、前記基準値として予め定められた色数を超えている場合に、前記描画情報生成回路による前記描画処理が必要であると判断することを特徴とする請求項１乃至５いずれか１項に記載の画像形成装置。
【請求項７】
前記描画情報生成回路は、並列して動作可能な複数の描画処理手段を含み、
前記描画処理制御部は、動作させる前記描画処理手段の数に応じて複数定められた前記基準値と、前記取得した出力内容情報に基づいて判断される前記描画処理の処理量とに基づいて、前記描画情報生成回路において動作させる前記描画処理手段の数を判断することを特徴とする請求項１乃至６いずれか１項に記載の画像形成装置。
【請求項８】
画像形成出力を実行するための画像処理をハードウェアとして実行する描画情報生成回路及びソフトウェア処理によって実行する描画情報生成部とを含む画像形成装置において画像形成出力を実行するための描画情報の生成を制御する描画処理制御プログラムであって、
ページ記述言語に基づいて得られた描画命令に基づき、描画すべき図形毎に情報がまとめられた図形情報を生成するステップと、
前記図形情報の生成に応じて、画像形成出力するべき画像の内容を示す出力内容情報を取得するステップと、
画像形成出力を実行する画像形成部が単位時間当たりに画像形成出力可能な枚数に応じて定められた基準値と、前記取得した出力内容情報に基づいて判断される前記描画処理の処理量とに基づいて、前記描画情報生成回路による前記描画処理の実行要否を判断するステップとを画像形成装置に実行させることを特徴とする描画処理制御プログラム。
【請求項９】
画像形成出力を実行するための画像処理をハードウェアとして実行する描画情報生成回路及びソフトウェア処理によって実行する描画情報生成部とを含む画像形成装置において画像形成出力を実行するための描画情報の生成を制御する描画処理制御方法であって、
ページ記述言語に基づいて得られた描画命令に基づき、描画すべき図形毎に情報がまとめられた図形情報を生成し、
前記図形情報の生成に応じて、画像形成出力するべき画像の内容を示す出力内容情報を取得し、
画像形成出力を実行する画像形成部が単位時間当たりに画像形成出力可能な枚数に応じて定められた基準値と、前記取得した出力内容情報に基づいて判断される前記描画処理の処理量とに基づいて、前記描画情報生成回路による前記描画処理の実行要否を判断することを特徴とする描画処理制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置、描画処理制御プログラム及び描画処理制御方法に関し、特に、画像形成装置における画像処理の制御に関する。
【背景技術】
【０００２】
近年、情報の電子化が推進される傾向にあり、電子化された情報の出力に用いられるプリンタやファクシミリ及び書類の電子化に用いるスキャナ等の画像処理装置は欠かせない機器となっている。このような画像処理装置は、撮像機能、画像形成機能及び通信機能等を備えることにより、プリンタ、ファクシミリ、スキャナ、複写機として利用可能な複合機として構成されることが多い。
【０００３】
このような画像処理装置のうち、電子化された情報の出力に用いるプリンタにおいては、入力された画像情報に基づいてプリントエンジンが画像形成出力を実行するための描画情報を生成する画像処理（以降、描画処理とする）が行われる。この画像処理は、専用のハードウェアによって実行される他、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）等の演算手段がソフトウェアに従って動作することにより実行される。
【０００４】
他方、装置の運用制御においては、可能な限り消費電力を低減した制御が望まれる。例えば、画像形成装置の消費電力を一定以下に保つため、装置の環境を測定し、その測定結果に従って描画処理を実行する前の中間言語の変更する方法が提案されている（例えば、特許文献１参照）。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上述したようなハードウェア及びソフトウェアによって描画処理可能な画像形成装置においては、一般的に、描画処理に要する時間を可能な限り短縮するため、ハードウェアとソフトウェアとの処理の並列度を向上し、ハードウェアとソフトウェアとのいずれか一方に待機時間が発生しないように制御することが一般的である。
【０００６】
しかしながら、画像形成装置において画像形成出力を実行する画像形成部であるプリントエンジンには、単位時間あたりに出力可能な枚数に限界がある。これは、例えば、ＰＰＭ（Ｐａｇｅ  Ｐｒｅ  Ｍｉｎｕｔｅ）として定められている。そして、このＰＰＭを超えて描画処理を高速化することにより、プリントエンジンがあるページの画像形成出力を実行中に次のページ以降の描画情報についての描画処理が完了したとしても、生成された描画情報はプリントエンジンが実行中の画像形成出力を完了するまで記憶媒体に保持されて待機することとなる。
【０００７】
このような状態は、プリントエンジンに最大限のＰＰＭを発揮させた状態ではあるが、不必要に描画処理が高速化された状態でもある。そして、描画処理の高速化のために描画処理を実行するハードウェアによって消費される電力は、無駄な消費電力ということになる。
【０００８】
従って、描画処理の処理負荷が低く、ソフトウェアによる描画処理によってプリントエンジンのＰＰＭを発揮させることが可能であるならば、ハードウェアには描画処理を実行させずに電力供給を停止し、省電力化を図ることが好ましい。即ち、描画処理の高速化のみを考慮するのではなく、必要な描画処理の速度を考慮した上で、ハードウェアとソフトウェアとの処理の分散割合を最適化することが望まれる。
【０００９】
これに対して、特許文献１に開示された技術においては、消費電力の低減は考慮されているが、プリントエンジンのＰＰＭを発揮させ、画像形成出力の生産性を保つという観点は考慮されていない。
【００１０】
本発明は、上記実情を考慮してなされたものであり、ハードウェア及びソフトウェアによって描画処理可能な画像形成装置において、画像形成出力の生産性を保ちつつ消費電力の低減を図ることを目的とする。
【課題を解決するための手段】
【００１１】
上記課題を解決するために、本発明の一態様は、画像形成出力を実行するための画像処理をハードウェア及びソフトウェアによって実行可能な画像形成装置であって、ページ記述言語に基づいて得られた描画命令に基づき、描画すべき図形毎に情報がまとめられた図形情報を生成する図形情報生成部と、画像形成部が画像形成出力を実行するための描画情報を、前記生成された図形情報に基づいて生成する描画処理をソフトウェア処理によって実行する描画情報生成部と、前記描画処理をハードウェアとして実行する描画情報生成回路と、前記描画情報生成回路による前描画処理の実行を制御する描画処理制御部とを含み、前記描画処理制御部は、前記図形情報の生成に応じて、画像形成出力するべき画像の内容を示す出力内容情報を取得し、画像形成出力を実行する画像形成部が単位時間当たりに画像形成出力可能な枚数に応じて定められた基準値と、前記取得した出力内容情報に基づいて判断される前記描画処理の処理量とに基づいて、前記描画情報生成回路による前記描画処理の実行要否を判断することを特徴とする。
【００１２】
また、本発明の他の態様は、画像形成出力を実行するための画像処理をハードウェアとして実行する描画情報生成回路及びソフトウェア処理によって実行する描画情報生成部とを含む画像形成装置において画像形成出力を実行するための描画情報の生成を制御する描画処理制御プログラムであって、ページ記述言語に基づいて得られた描画命令に基づき、描画すべき図形毎に情報がまとめられた図形情報を生成するステップと、前記図形情報の生成に応じて、画像形成出力するべき画像の内容を示す出力内容情報を取得するステップと、画像形成出力を実行する画像形成部が単位時間当たりに画像形成出力可能な枚数に応じて定められた基準値と、前記取得した出力内容情報に基づいて判断される前記描画処理の処理量とに基づいて、前記描画情報生成回路による前記描画処理の実行要否を判断するステップとを画像形成装置に実行させることを特徴とする。
【００１３】
また、本発明の更に他の態様は、画像形成出力を実行するための画像処理をハードウェアとして実行する描画情報生成回路及びソフトウェア処理によって実行する描画情報生成部とを含む画像形成装置において画像形成出力を実行するための描画情報の生成を制御する描画処理制御方法であって、ページ記述言語に基づいて得られた描画命令に基づき、描画すべき図形毎に情報がまとめられた図形情報を生成し、前記図形情報の生成に応じて、画像形成出力するべき画像の内容を示す出力内容情報を取得し、画像形成出力を実行する画像形成部が単位時間当たりに画像形成出力可能な枚数に応じて定められた基準値と、前記取得した出力内容情報に基づいて判断される前記描画処理の処理量とに基づいて、前記描画情報生成回路による前記描画処理の実行要否を判断することを特徴とする。
【発明の効果】
【００１４】
本発明によれば、ハードウェア及びソフトウェアによって描画処理可能な画像形成装置において、画像形成出力の生産性を保ちつつ消費電力の低減を図ることができる。
【図面の簡単な説明】
【００１５】
【図１】本発明の実施形態に係る画像形成装置のハードウェア構成を示すブロック図である。
【図２】本発明の実施形態に係る画像形成装置の機能構成を示す図である。
【図３】本発明の実施形態に係る画像処理部に含まれる機能を示す図である。
【図４】本発明の実施形態に係る描画コアモジュール及びハードウェアアクセラレータの機能構成を示す図である。
【図５】本発明の実施形態に係るハードウェア描画処理制御部の動作を示すフローチャートである。
【図６】本発明の実施形態に係る判断情報の例を示す図である。
【図７】本発明の実施形態に係るＨＡ判断条件情報の例を示す図である。
【図８】本発明の実施形態及び比較例におけるプリントエンジンの生産性と描画処理時間との関係を示す図である。
【図９】本発明の実施形態に係る描画処理の順序を示す図である。
【図１０】本発明の他の実施形態に係るＨＡ判断条件情報の例を示す図である。
【図１１】本発明の他の実施形態に係るＨＡ判断条件情報の例を示す図である。
【図１２】本発明の他の実施形態に係るＨＡ判断動作を示すフローチャートである。
【図１３】本発明の他の実施形態に係る描画コアモジュール及びハードウェアアクセラレータの機能構成を示す図である。
【図１４】本発明の他の実施形態に係るＨＡ判断条件情報の例を示す図である。
【図１５】本発明の他の実施形態に係るＨＡ判断条件情報の例を示す図である。
【図１６】本発明の他の実施形態に係るＨＡ判断動作を示すフローチャートである。
【発明を実施するための形態】
【００１６】
実施の形態１．
以下、図面を参照して、本発明の実施形態を詳細に説明する。本実施形態においては、プリンタ、スキャナ、複写機等の機能を含む複合機（ＭＦＰ：Ｍｕｌｔｉ  Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）としての画像形成装置を例として説明する。
【００１７】
図１は、本実施形態に係る画像形成装置１のハードウェア構成を示すブロック図である。図１に示すように、本実施形態に係る画像形成装置１は、一般的なサーバやＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）等の情報処理端末と同様の構成に加えて、画像形成出力に係るエンジンを有する。即ち、本実施形態に係る画像形成装置１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１０、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２０、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）３０、エンジン４０、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）５０及びＩ／Ｆ６０がバス９０を介して接続されている。また、Ｉ／Ｆ６０にはＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）７０及び操作部８０が接続されている。
【００１８】
ＣＰＵ１０は演算装置であり、画像形成装置１全体の動作を制御する。ＲＡＭ２０は、情報の高速な読み書きが可能な揮発性の記憶媒体であり、ＣＰＵ１０が情報を処理する際の作業領域として用いられる。ＲＯＭ３０は、読み出し専用の不揮発性記憶媒体であり、ファームウェア等のプログラムが格納されている。エンジン４０は、画像形成装置１において実際に画像形成を実行する機構である。エンジン４０には、画像形成出力を実行するためのプリントエンジンや、原稿を読み取るためのスキャナユニットの他、プリントエンジンが画像形成出力を実行するための画像情報を生成するハードウェアアクセラレータが含まれる。
【００１９】
ＨＤＤ５０は、情報の読み書きが可能な不揮発性の記憶媒体であり、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）や各種の制御プログラム、アプリケーション・プログラム等が格納されている。Ｉ／Ｆ６０は、バス９０と各種のハードウェアやネットワーク等を接続し制御する。ＬＣＤ７０は、ユーザが画像形成装置１の状態を確認するための視覚的ユーザインタフェースである。操作部８０は、キーボードやマウス等、ユーザが画像形成装置１に情報を入力するためのユーザインタフェースである。
【００２０】
このようなハードウェア構成において、ＲＯＭ３０やＨＤＤ５０若しくは図示しない光学ディスク等の記録媒体に格納されたプログラムがＲＡＭ２０に読み出され、ＣＰＵ１０がそれらのプログラムに従って演算を行うことによりソフトウェア制御部が構成される。このようにして構成されたソフトウェア制御部と、ハードウェアとの組み合わせによって、本実施形態に係る画像形成装置１の機能を実現する機能ブロックが構成される。
【００２１】
次に、図２を参照して、本実施形態に係る画像形成装置１の機能構成について説明する。図２は、本実施形態に係る画像形成装置１の機能構成を示すブロック図である。図２に示すように、本実施形態に係る画像形成装置１は、コントローラ１００、ＡＤＦ（Ａｕｔｏ  Ｄｏｃｕｍｅｎｎｔ  Ｆｅｅｄｅｒ：原稿自動搬送装置）１１０、スキャナユニット１２０、排紙トレイ１３０、ディスプレイパネル１４０、給紙テーブル１５０、プリントエンジン１６０、排紙トレイ１７０及びネットワークＩ／Ｆ１８０を有する。
【００２２】
また、コントローラ１００は、主制御部１０１、エンジン制御部１０２、入出力制御部１０３、画像処理部１０４及び操作表示制御部１０５を有する。図２に示すように、本実施形態に係る画像形成装置１は、スキャナユニット１２０、プリントエンジン１６０を有する複合機として構成されている。尚、図２においては、電気的接続を実線の矢印で示しており、用紙の流れを破線の矢印で示している。
【００２３】
ディスプレイパネル１４０は、画像形成装置１の状態を視覚的に表示する出力インタフェースであると共に、タッチパネルとしてユーザが画像形成装置１を直接操作し若しくは画像形成装置１に対して情報を入力する際の入力インタフェース（操作部）でもある。ネットワークＩ／Ｆ１８０は、画像形成装置１がネットワークを介して他の機器と通信するためのインタフェースであり、Ｅｔｈｅｒｎｅｔ（登録商標）やＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）インタフェースが用いられる。
【００２４】
コントローラ１００は、ソフトウェアとハードウェアとの組み合わせによって構成される。具体的には、ＲＯＭ３０や不揮発性メモリ並びにＨＤＤ５０や光学ディスク等の不揮発性記録媒体に格納されたファームウェア等の制御プログラムが、ＲＡＭ２０等の揮発性メモリ（以下、メモリ）にロードされ、ＣＰＵ１０がそれらのプログラムに従って演算を行うことにより構成されるソフトウェア制御部と、集積回路などのハードウェアとによってコントローラ１００が構成される。コントローラ１００は、画像形成装置１全体を制御する制御部として機能する。
【００２５】
主制御部１０１は、コントローラ１００に含まれる各部を制御する役割を担い、コントローラ１００の各部に命令を与える。エンジン制御部１０２は、プリントエンジン１６０やスキャナユニット１２０等を制御若しくは駆動する駆動手段としての役割を担う。入出力制御部１０３は、ネットワークＩ／Ｆ１８０を介して入力される信号や命令を主制御部１０１に入力する。また、主制御部１０１は、入出力制御部１０３を制御し、ネットワークＩ／Ｆ１８０を介して他の機器にアクセスする。
【００２６】
画像処理部１０４は、主制御部１０１の制御に従い、入力された印刷ジョブに含まれる印刷情報に基づいて描画情報を生成する。この描画情報とは、画像形成部であるプリントエンジン１６０が画像形成動作において形成すべき画像を描画するための情報である。また、印刷ジョブに含まれる印刷情報とは、ＰＣ等の情報処理装置にインストールされたプリンタドライバによって画像形成装置１が認識可能な形式に変換された情報であり、本実施形態においては、ＰＤＬ（Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）によって記述された情報である。換言すると、上記印刷情報とは、画像形成出力すべきページの情報が記述されたページ情報である。尚、本実施形態においては、ページ記述言語としてＰＤＬを用いる場合を例とするが、他の言語であっても良い。
【００２７】
画像処理部１０４は、上述したようなハードウェアアクセラレータと、ＣＰＵ２０がプログラムに従って演算を行うことにより構成されるソフトウェアとによって実現される。このようにハード及びソフトを並列で動作させることにより、上述した描画情報の生成を高効率で短期間に完了することができる。
【００２８】
他方、プリントエンジン１６０の生産性、即ちＰＰＭ（Ｐａｇｅ  Ｐｅｒ  Ｍｉｎｕｔｅ）以上に描画情報の生成を早くしても無意味である。そして、描画情報の生成に要する時間は、夫々のページを構成する画像の内容によって変わるため、一定ではない。そのような事情に鑑み、出力するべき画像の内容に応じてハードウェアアクセラレータの使用を切り替えることが本実施形態に係る要旨である。画像処理部１０４の機能については、後に詳述する。操作表示制御部１０５は、ディスプレイパネル１４０に情報表示を行い若しくはディスプレイパネル１４０を介して入力された情報を主制御部１０１に通知する。
【００２９】
画像形成装置１がプリンタとして動作する場合は、まず、入出力制御部１０３がネットワークＩ／Ｆ１８０を介して印刷ジョブを受信する。入出力制御部１０３は、受信した印刷ジョブを主制御部１０１に転送する。主制御部１０１は、印刷ジョブを受信すると、画像処理部１０４を制御して、印刷ジョブに含まれる印刷情報に基づいて描画情報を生成させる。
【００３０】
画像処理部１０４によって描画情報が生成されると、エンジン制御部１０２は、生成された描画情報に基づき、給紙テーブル１５０から搬送される用紙に対して画像形成を実行する。即ち、プリントエンジン１６０が画像形成部として機能する。プリントエンジン１６０の具体的態様としては、インクジェット方式による画像形成機構や電子写真方式による画像形成機構等を用いることが可能である。プリントエンジン１６０によって画像形成が施された文書は排紙トレイ１７０に排紙される。
【００３１】
画像形成装置１がスキャナとして動作する場合は、ユーザによるディスプレイパネル１４０の操作若しくはネットワークＩ／Ｆ１８０を介して外部のクライアント用の情報処理端末等から入力されるスキャン実行指示に応じて、操作表示制御部１０５若しくは入出力制御部１０３が主制御部１０１にスキャン実行信号を転送する。主制御部１０１は、受信したスキャン実行信号に基づき、エンジン制御部１０２を制御する。
【００３２】
エンジン制御部１０２は、ＡＤＦ１１０を駆動し、ＡＤＦ１１０にセットされた撮像対象原稿をスキャナユニット１２０に搬送する。また、エンジン制御部１０２は、スキャナユニット１２０を駆動し、ＡＤＦ１１０から搬送される原稿を撮像する。また、ＡＤＦ１１０に原稿がセットされておらず、スキャナユニット１２０に直接原稿がセットされた場合、スキャナユニット１２０は、エンジン制御部１０２の制御に従い、セットされた原稿を撮像する。即ち、スキャナユニット１２０が撮像部として動作する。
【００３３】
撮像動作においては、スキャナユニット１２０に含まれるＣＣＤ等の撮像素子が原稿を光学的に走査し、光学情報に基づいて生成された撮像情報が生成される。エンジン制御部１０２は、スキャナユニット１２０が生成した撮像情報を画像処理部１０４に転送する。画像処理部１０４は、主制御部１０１の制御に従い、エンジン制御部１０２から受信した撮像情報に基づき画像情報を生成する。画像処理部１０４が生成した画像情報はＨＤＤ４０等の画像形成装置１に装着された記憶媒体に保存される。
【００３４】
画像処理部１０４によって生成された画像情報は、ユーザの指示に応じてそのままＨＤＤ４０等に格納され若しくは入出力制御部１０３及びネットワークＩ／Ｆ１８０を介して外部の装置に送信される。即ち、スキャナユニット１２０及びエンジン制御部１０２が画像入力部として機能する。
【００３５】
また、画像形成装置１が複写機として動作する場合は、エンジン制御部１０２がスキャナユニット１２０から受信した撮像情報若しくは画像処理部１０４が生成した画像情報に基づき、画像処理部１０４が描画情報を生成する。その描画情報に基づいてプリンタ動作の場合と同様に、エンジン制御部１０２がプリントエンジン１６０を駆動する。
【００３６】
次に、本実施形態に係る画像処理部１０４の詳細について説明する。図３は、本実施形態に係る画像処理部１０４に含まれる機能を示すブロック図である。図３に示すように、本実施形態に係る画像処理部１０４は、ＰＤＬ解析部２１０、描画コアモジュール２２０を含み、ソフトウェア・プログラムに従ってＣＰＵ１０が演算を行うことにより構成されるＰＤＬアプリケーション２００と、集積回路によって構成されるハードウェアアクセラレータ２３０とを含む。
【００３７】
ＰＤＬ解析部２１０は、ＰＤＬで記述された印刷情報を取得し、描画コアモジュール２２０が処理可能な形式に変換する。この変換された形式の情報が、ＰＤＬアプリケーション２００において描画命令として処理される。
【００３８】
描画コアモジュール２２０は、ＰＤＬ解析部２１０によって変換された描画命令に基づき、プリントエンジン１６０が画像形成出力を実行するための描画情報を生成する処理（以降、描画処理とする）を実行する。この描画情報は、画像形成出力するべき画像を構成する各画素の情報、即ちビットマップ情報である。また、描画コアモジュール２２０は、ハードウェアアクセラレータ２３０を制御するための機能も含む。ハードウェアアクセラレータ２３０は、描画コアモジュール２２０が実行する描画処理の一部を実行するハードウェアである。
【００３９】
図４は、本実施形態に係る描画コアモジュール２２０及びハードウェアアクセラレータ２３０の機能構成を示すブロック図である。図４に示すように、描画コアモジュール２２０は、描画コアモジュールＩ／Ｆ２２１、ＤＬ（Ｄｉｓｐｌａｙ  Ｌｉｓｔ）処理部２２２、ハードウェア描画処理制御部２２３、中間データ記憶部２２４、描画処理部２２５及びバンドメモリ２２６を含む。
【００４０】
描画コアモジュールＩ／Ｆ２２１は、ＰＤＬ解析部２１０によって変換された描画命令をＰＤＬ解析部２１０から取得し、ＤＬ処理部２２２に入力する。ＤＬ処理部２２２は、描画コアモジュール２２１から取得した描画命令に基づき、画像形成出力するべき各ページにおいて描画されるべきオブジェクトの情報が記述されたディスプレイリストを生成し、中間データ記憶部２２４に格納する。
【００４１】
本実施形態において、ＤＬ処理部２２２は、１ページを副走査方向に複数段に分割した“バンド”と呼ばれる夫々の分割領域毎にディスプレイリストを生成し、中間データ記憶部２２４に格納する。
【００４２】
上記ディスプレイリストとは、換言すると、描画すべき図形毎に描画コマンドの情報がまとめられた図形情報である。即ち、ＤＬ処理部２２２は、図形情報生成部として機能する。ハードウェア描画処理制御部２２３は、ハードウェアアクセラレータ２３０の制御を行う描画処理制御部である。ハードウェア描画処理制御部２２３は、ハードウェアアクセラレータ２３０を制御するための情報を保持している。ハードウェア描画処理制御部２２３によるハードウェアアクセラレータの制御が本実施形態に係る要旨の１つである。図４に示すように、ハードウェアアクセラレータ２３０は、ハードウェア描画処理部２３１を含む。
【００４３】
ハードウェア描画処理部２３１は、ハードウェア描画処理制御部２２３の制御に従い、中間データ記憶部２２４に格納された中間データに基づいて描画処理を実行する。即ち、ハードウェアアクセラレータ２３０が、描画情報生成回路として機能する。尚、本実施形態に係るハードウェアアクセラレータ２３０は、ハードウェア描画処理制御部２２３の制御に従って描画処理を実行する場合にのみハードウェア描画処理部２３１へ電力を供給し、それ以外の間は電力供給を停止する。このような機能により、画像形成装置１の消費電力を低減することができる。
【００４４】
中間データ記憶部２２４は、ＤＬ処理部２２２によって描画命令から変換されたディスプレイリストを記憶する記憶領域であり、ＲＡＭ２０において確保された記憶領域である。また、ハードウェア描画処理部２３１及び描画処理部２２５による描画処理の途中のデータを一次的に格納するための記憶領域としても用いられる。
【００４５】
描画処理部２２５は、描画コアモジュール２２０の機能、即ち、ソフトウェア・プログラムに従って演算を行うＣＰＵ１０によって構成されるソフトウェア制御部として描画処理を実現する描画情報生成部である。描画処理部２２５は、ＤＬ処理部２２２によって生成されて中間データ記憶部２２４に格納されたディスプレイリストに基づき、描画処理を実行する。
【００４６】
上述したように、ディスプレイリストは、バンド毎に中間データ記憶部２２４に記憶される。従って、ハードウェア描画処理部２３１及び描画処理部２２５は、バンド毎に描画処理を実行する。バンドメモリ２２６は、上述したように、ハードウェア描画処理部２２３及び描画処理部２２５によって生成された描画情報をバンド毎に記憶する記憶媒体である。バンドメモリ２２６は、ＲＡＭ２０において確保された記憶領域である。
【００４７】
次に、本実施系形態に係るハードウェア描画処理制御部２２３の動作について説明する。図５は、本実施形態に係る描画コアモジュール２２０の動作を示すフローチャートである。図５に示すように、まずはＤＬ処理部２２２が、描画コアモジュールＩ／Ｆ２２１に入力された描画命令に基づいてディスプレイリストを生成して出力するＤＬ処理を行う（Ｓ５０１）。
【００４８】
Ｓ５０１の処理において、ＤＬ処理部２２２は、ハードウェア描画処理制御部２２３が後述する判断に要する情報（以降、判断情報とする）を抽出してハードウェア描画処理制御部２２３に出力する。この判断情報は、画像形成出力するべき画像の内容を示す出力内容情報である。ＤＬ処理部２２２から出力されたディスプレイリストは、中間データ記憶部２２４に入力されて格納される。
【００４９】
ＤＬ処理部２２２から１ページ分のディスプレイリストが出力されると（Ｓ５０２／ＹＥＳ）、それに伴い、１ページ分のディスプレイリストから抽出された判断情報もハードウェア描画処理制御部２２３に入力され、これによりハードウェア描画処理制御部２２３が判断情報を取得する。ハードウェア描画処理制御部２２３は、ＤＬ処理部２２２から取得した判断情報に基づいてハードウェアアクセラレータに描画処理を実行させるか否かの判断（以降、ＨＡ判断とする）を行う（Ｓ５０３）。
【００５０】
ハードウェア描画処理制御部２２３は、Ｓ５０３の判断の結果に応じてハードウェアアクセラレータ２３０を制御すると共に、判断結果をＤＬ処理部２２２に通知する。この判断結果の通知には、ハードウェアアクセラレータ２３０に描画処理を実行させること及びハードウェアアクセラレータ２３０に描画処理を実行させる部分の通知も含まれる。
【００５１】
ここで、描画処理を実行させる部分とは、即ちバンドを意味する。これにより、ＤＬ処理部２２２は、描画処理部２２５に描画処理を実行させる必要のないバンド、即ち、中間データ記憶部２２４に格納されたディスプレイリストのうち、描画処理部２２５に処理させる必要のないディスプレイリストを認識することができる。
【００５２】
ＤＬ処理部２２２は、ハードウェア描画処理制御部２２３からの通知に従い、描画処理部２２５に描画処理を実行させる。これにより、ハードウェアアクセラレータ２３０及び描画処理部２２５が、指定されたディスプレイリストを中間データ記憶部２２４から読み出して描画処理を実行する（Ｓ５０４）。
【００５３】
次に、図５のＳ５０３における判断（以降、ＨＡ判断とする）の詳細について説明する。図６は、ＤＬ処理部２２２によって抽出されてハードウェア描画処理制御部２２３に入力される判断情報の例を示す図である。“ｓｅｔｃｏｌｏｒ・・・”は、描画コマンドにおいてカラーを指定する関数であり、カッコ内の引数によって、ＲＧＢ（Ｒｅｄ，Ｇｒｅｅｎ，Ｂｌｕｅ）各色の色が指定される。また、“ｒｅｃｔａｎｇｌｅ・・・”は、矩形の描画を指定する関数であり、カッコ内の引数によって、矩形を描画する位置が指定される。
【００５４】
尚、本実施形態においては、図６に示すように、ディスプレイリストから抽出された情報を判断情報として用いる場合を例とするが、ディスプレイリストそのものを判断情報としてハードウェア描画処理制御部２２３に入力しても良い。
【００５５】
図７は、ＨＡ判断のためにハードウェア描画処理制御部２２３が保持している情報（以降、ＨＡ判断条件情報とする）を示す図である。図７に示すように、本実施形態に係るＨＡ判断条件情報においては、判断情報から判明する画像形成出力対象の画像の内容における判断対象の項目を示す“判断項目”と、ハードウェアアクセラレータ２３０を使用する場合に満たされる場合の条件を示す“ＨＡ使用”と、ハードウェアアクセラレータ２３０を使用しない場合の条件を示す“ＨＡ不使用”とが、夫々の項目の番号である“Ｎｏ．”と関連付けられて格納されている。
【００５６】
図７の例において、ハードウェア描画処理制御部２２３は、“カラー／モノクロ”、“描画面積”、“描画コマンドデータサイズ”の３項目について、１ページ分の判断情報に基づいてハードウェアアクセラレータ２３０に描画処理を実行させるか否かを判断する。
【００５７】
“カラー／モノクロ”の項目は、その名の通り、画像形成出力対象の画像がカラーであるかモノクロであるかを判断する項目である。この項目は、図６に示す“ｓｅｔｃｏｌｏｒ”コマンドによって判断することができる。
【００５８】
カラーの場合、一般的に、上述したＲＧＢについて描画処理が必要となる他、ＲＧＢ形式で描画された情報をＣＭＹＫ（Ｃｙａｎ，Ｍａｇｅｎｔａ，Ｙｅｌｌｏｗ，ｂｌａｃＫ）形式に変換する処理が必要となるため、一色のモノクロよりも描画処理の処理量が多くなる。そのため、ハードウェア描画処理部２２５は、画像形成出力対象の画像がカラー画像であれば、ハードウェアアクセラレータ２３０の使用を判断する。
【００５９】
“描画面積”の項目は、ディスプレイリストに含まれる描画コマンドによって描画されるオブジェクトの総面積を予め定められた閾値Ｓ０と比較することにより、ハードウェアアクセラレータ２３０の使用を判断する項目である。この項目は、図６に示す“ｒｅｃｔａｎｇｌｅ”コマンドの場合、引数として示される描画範囲に基づいて計算することができる。
【００６０】
描画されるオブジェクトの総面積が広ければ、生成するべき画素情報も多く、処理量も増える。そのため、ハードウェア描画処理制御部２２３は、ディスプレイリストに含まれる描画コマンドによって描画されるオブジェクトの総面積が、閾値Ｓ０以上であれば、ハードウェアアクセラレータ２３０の使用を判断する。
【００６１】
“描画コマンドデータサイズ”の項目は、ディスプレイリストに含まれる描画コマンド自体のデータサイズ、即ち図形情報の情報量を予め定められた閾値Ｄ０と比較することにより、ハードウェアアクセラレータ２３０の使用を判断する項目である。この項目は、ＤＬ処理部２２２が、ハードウェア描画処理制御部２２３に入力する判断情報として、描画コマンドの自体のデータサイズを含めることにより判断することができる。
【００６２】
描画コマンドのデータサイズが大きければ、その分描画処理において実行するべき処理量も多い。そのため、ハードウェア描画処理制御部２２３は、ディスプレイリストに含まれる描画コマンドによって描画されるオブジェクトの総面積が、閾値Ｓ０以上であれば、ハードウェアアクセラレータ２３０の使用を判断する。
【００６３】
尚、図７においては、夫々の“判断項目”毎に“ＨＡ使用”、“ＨＡ不使用”の条件が関連付けられているが、最低限、ハードウェアアクセラレータ２３０の使用要否を判断するための条件が関連付けられていれば良い。例えば、“カラー／モノクロ”であれば、ハードウェアアクセラレータ２３０を使用する条件として“カラー”という値が関連付けられていれば、ハードウェア描画処理制御部２２３は、判断情報に基づいてハードウェアアクセラレータ２３０の使用要否を判断することができる。
【００６４】
ここで、図７に示す閾値Ｓ０、Ｄ０の設定方法について説明する。閾値Ｓ０、Ｄ０は、プリントエンジン１６０の画像形成出力性能が最大限に発揮されるような各ページの描画処理時間を実現するために設定される閾値である。図８（ａ）〜（ｃ）は、プリントエンジン１６０の画像形成出力性能と描画処理に要する時間との関係を示す図である。
【００６５】
プリントエンジン１６０の画像形成出力性能を示す数値としてＰＰＭ（Ｐａｇｅ  Ｐｅｒ  Ｍｉｎｕｔｅｓ）、即ち、１分間に出力可能なページ枚数がある。そして、ＰＰＭの逆数を計算すると、プリントエンジン１６０が１ページの画像形成出力を行うために要する時間を計算することができる。尚、ＰＰＭの逆数の場合、単位は分であり、ＰＰＭの逆数を６０倍することによって秒単位の数値を求めることができる。
【００６６】
図８（ａ）〜（ｃ）は、プリントエンジン１６０のＰＰＭの逆数、即ち、画像形成出力の生産性と、１ページ分の描画処理に要する時間との関係を示す図である。尚、図８（ａ）〜（ｃ）においては、図示の簡略化のために夫々の例毎に描画処理に要する時間を同一にして示しているが、実際には、各ページの内容によって描画処理に要する時間は異なる。
【００６７】
図８（ａ）は、生産性と描画処理時間とのバランスが取れている場合、即ち、プリントエンジン１６０が１枚の画像形成出力を実行する間に１ページ分の描画処理が完了し、プリントエンジン１６０において待ち時間が発生することなく次のページの画像形成出力をプリントエンジン１６０が開始することが出来る場合の例である。
【００６８】
これに対して、図８（ｂ）は、描画処理時間が長く、プリントエンジン１６０の性能が発揮されていない場合を示す図である。図８（ｂ）の場合、描画処理に要する時間が、プリントエンジン１６０が１枚の画像形成出力に要する時間よりも長い。そのため、プリントエンジン１６０が画像形成出力を実行するペースに描画処理のペースが追いつかず、プリントエンジン１６０側において待ち時間が発生してしまうことになる。その結果、プリントエンジン１６０は、最大のＰＰＭを発揮することができない。
【００６９】
また、図８（ｃ）は、描画処理時間が必要以上に短縮されている場合を示す図である。図８（ｃ）の場合、プリントエンジン１６０が１枚の画像形成出力に要する時間よりも描画処理に要する時間が短い。そのため、プリントエンジン１６０の生産性は十分発揮されているが、描画処理によって生成された描画情報は、プリントエンジン１６０が前ページの画像形成出力を完了するまで、バンドメモリ２２６に格納された状態で待機することになる。
【００７０】
このような状態は、ハードウェアアクセラレータ２３０を動作させず、描画処理部２２５のみで描画処理を実行した場合であれば、プリントエンジン１６０の生産性は発揮されているため、バンドメモリ２２６において情報を保持するための容量が必要となる以外は問題にはならない。
【００７１】
他方、ハードウェアアクセラレータ２３０にも描画処理を実行させた上で図８（ｃ）に示すような状態が発生している場合、ハードウェアアクセラレータ２３０を動作させて必要以上に描画処理を高速化していることになる。そのため、ハードウェアアクセラレータ２３０を動作させるために無駄な電力が消費されていることとなる。
【００７２】
従って、図７に示す閾値Ｓ０、Ｄ０は、図８（ａ）に示すようなプリントエンジン１６０の生産性と１ページ当たりの描画処理時間との関係が実現されるように設定される。即ち、閾値Ｓ０、Ｄ０や、上述した“カラー／モノクロ”の項目における“カラー”という値は、プリントエンジン１６０のＰＰＭに応じて定められた基準値である。換言すると、図７に示す閾値Ｓ０、Ｄ０は、プリントエンジン１６０が１枚の画像形成出力を完了するのに要する時間で、１ページ分の描画処理が完了するように、描画面積、描画コマンドデータサイズ夫々に対して設定される。
【００７３】
そして、そのようにして設定された閾値Ｓ０、Ｄ０に基づいてハードウェアアクセラレータ２３０の動作要否を判断することにより、描画処理部２２５のみで描画処理を行うと図８（ｂ）に示すように、描画処理の完了に要する時間がプリントエンジン１６０のＰＰＭに追いつかなくなってしまう場合にのみ、ハードウェアアクセラレータ２３０を動作させることが可能となる。その結果、画像形成出力の生産性を保ちつつ、且つ必要以上に描画処理が高速化されて消費電力の増大を招くようなことを回避することができる。
【００７４】
以上説明したように、本実施形態に係る描画コアモジュール２２０においては、画像形成出力対象の画像の内容に基づいてハードウェアアクセラレータ２３０の動作要否を判断するため、ハードウェア及びソフトウェアによって描画処理可能な画像形成装置において、画像形成出力の生産性を保ちつつ消費電力の低減を図ることができる。
【００７５】
尚、上記実施形態においては、ＤＬ処理部２２２がディスプレイリストを生成して中間データ記憶部２２４に格納し、その際に抽出された判断情報に基づいてハードウェア描画処理制御部２２３がＨＡ判断を行い、その判断結果に基づいて制御されたハードウェア描画処理部２３１が中間データ記憶部２２４からディスプレイリストを取得して描画処理を実行する場合を例として説明した。
【００７６】
しかしながら、ハードウェア描画処理部２３１によっては、ディスプレイリストから描画情報を生成する処理のうち、一部の処理のみに対応したものもある。例えば、ディスプレイリストに基づく描画処理の前半部分を描画コアモジュール２２０側で実行し、後半部分をハードウェアアクセラレータ２３０と描画処理部２２５とで分担する態様がある。
【００７７】
そのような場合、中間データ記憶部２２４に格納される前の処理として、ディスプレイリストの生成に加えて描画処理の前半部分が実行される。即ち、ＤＬ処理部２２２が、ディスプレイリストの処理のみではなく、描画処理の前半部分までも実行した結果のデータを中間データとして中間データ記憶部２２４に格納する中間データ処理部として機能する。
【００７８】
図９は、本実施形態に係る描画処理の流れ及び処理の前半部分と後半部分との境目の例を示す図である。図９に示す描画処理の流れは、イメージオブジェクトを含むバンドの描画処理の流れである。図９に示すように、本実施形態に係る描画処理は、“入力”、“フォーマット変換”、“カラーマッチング”、“ＢＧ（Ｂａｃｋ  Ｇｒｏｕｎｄ）／ＵＣＲ（Ｕｎｄｅｒ  Ｃｏｌｏｒ  Ｒｅｍｏｖａｌ）”、“γ変換”、“少値化（ディザリング）”、“バンドメモリへの描画”という処理を含む。
【００７９】
そして、図９においては、カラーマッチング処理までを前半部分として中間データ記憶部２２４への格納前に行い、それ以降の処理をハードウェアアクセラレータ２３０または描画処理部２２５によって行う。このような場合であっても、ハードウェア描画処理制御部２２３が、ハードウェアアクセラレータ２３０を動作させるか否かについて、上記と同様に判断することにより、上述したような効果を得ることが可能となる。
【００８０】
また、ＤＬ処理部２２２がディスプレイリストを生成して中間データ記憶部２２４に一度格納した上で、描画処理部２２５が描画処理の前半部分を実行し、その処理結果のデータを再度中間データ記憶部２２４に格納し、以降の処理をハードウェアアクセラレータ２３０と描画処理部２２５とで分担することも可能である。そのような場合であっても、本実施形態を適用することにより、上記と同様の効果を得ることが可能である。
【００８１】
また、上記実施形態においては、図７に示す“判断項目”の“カラー／モノクロ”の判断において、フルカラーであることを前提として説明した。しかしながら、画像形成出力のカラーにはフルカラーに限らず、２色の場合等もあり、色数が多いほど処理量も多くなる。従って、判断項目を“カラー／モノクロ”ではなく“色数”とし、色数に閾値を設けるようにしても良い。これにより、より様々な条件に対応して判断を行うことが可能となる。
【００８２】
尚、そのような観点によれば、図７の“カラー／モノクロ”の判断項目は色数を考慮していないため、色数に対して“２色”という閾値が設定されていることに等しい。
【００８３】
実施の形態２．
本実施形態においては、図７において説明した態様とは異なる態様によるＨＡ判断の内容について説明する。図１０は、本実施形態に係るハードウェア描画処理制御部２２３が保持しているＨＡ判断条件情報を示す図である。図１０に示すように、本実施形態に係るＨＡ判断条件情報においては、ディスプレイリストに含まれる描画コマンドと、夫々のコマンド毎に設定された“データサイズ係数”及び“描画面積係数”とが、夫々のコマンドの番号である“Ｎｏ．”と関連付けられて格納されている。
【００８４】
例えば、図１０に“Ｉｍａｇｅ”として示すイメージ描画コマンドの場合、色処理とバンドメモリ２２６へのデータの格納のいずれも処理負荷が高いが、“Ｔｅｘｔ”で示す文字描画コマンドの色処理は、一般的に使用される色数が少なく、図９に示す“カラーマッチング”、“ＢＧ／ＵＣＲ”、“γ変換”の処理量が少ないため、処理負荷が低い。
【００８５】
従って、本実施形態に係るハードウェア描画処理制御部２２３は、図１０に示すように、描画コマンドデータサイズ及び描画面積夫々について描画コマンド毎に設定された重み値である“データサイズ係数”及び“描画面積係数”を用いて、以下の式（１）により描画コマンドを処理するための処理負荷Ｒを計算する。
2013052615.tif 000003
【００８６】
ここで、式（１）における“Ｄ”は、描画コマンドデータサイズであり、“Ｓ”は描画面積である。描画コマンドデータサイズＤ及び描画面積Ｓは、実施の形態１と同様の方法により取得可能である。また、“Ｔ１”、“Ｔ２”は、図１０から取得される“データサイズ係数”及び“描画面積係数”である。そして式（１）におけるシグマは、１ページ分の描画コマンドについて値を合計することを示す。
【００８７】
更に、本実施形態に係るハードウェア描画処理制御部２２３は、ＨＡ判断条件情報として、図１１に示すようなテーブルを保持している。図１１に示すテーブルは、描画コアモジュール２２０、即ち、ハードウェアアクセラレータ２３０を動作させずに描画処理を実行する場合の描画処理性能を示すテーブルであり、上述した式（１）によって求められる値に対応する“処理負荷Ｒ”と、夫々の処理負荷Ｒにおいて描画処理に要する“処理時間ｔ”とが関連付けられたテーブルである。
【００８８】
図１１に示すようなテーブルは、例えば画像形成装置１の出荷前において、様々な条件において描画処理を実行させ、その実行に要した時間を測定して格納することにより生成することができる。また、同一の条件において測定された値を外部から入力してハードウェア描画処理制御部２２３に記憶させても良い。本実施形態に係るハードウェア描画処理制御部２２３は、上記式（１）によって処理負荷Ｒを算出すると、図１１に示すテーブルを参照し、算出した処理負荷Ｒに対応する処理時間ｔを求める。
【００８９】
尚、算出した処理負荷Ｒと一致する値がテーブルに格納されていない場合、ハードウェア描画処理制御部２２３は、テーブルに格納されている２つのＲの値に夫々関連付けられたｔの値に基づき、近似曲線や直線近似によって、算出されたＲに対応するｔの値を求める。そのようにして求めたｔと、プリントエンジン１６０の生産性とを比較することにより、ハードウェアアクセラレータ２３０の使用要否を判断することができる。
【００９０】
図１２を参照して、本実施形態に係るハードウェア描画処理制御部２２３によるＨＡ判断動作について説明する。本実施形態においては、図１２の動作が、図５のＳ５０３におけるハードウェア描画処理制御部２２３の処理である。図１２に示すように、ハードウェア描画処理制御部２２３は、ＨＡ判断動作を開始すると、上記式（１）によってＲを算出する（Ｓ１２０１）。
【００９１】
ハードウェア描画処理制御部２２３は、１ページ分の描画コマンドについてＲの算出処理を繰り返して算出結果を合計し（Ｓ１２０２／ＮＯ）、１ページ分のＲの算出を完了すると（Ｓ１２０２／ＹＥＳ）、算出したＲの値に基づいて図１１に示すテーブルからｔを取得する（Ｓ１２０３）。
【００９２】
そして、ハードウェア描画処理制御部２２３は、取得したｔとプリントエンジン１６０のＰＰＭの逆数とを比較する（Ｓ１２０４）。即ち、ＰＰＭの逆数を閾値として用いる。尚、ＰＰＭの逆数の単位は（分）であるため、ｔの値の単位が（秒）であれば、ハードウェア描画処理制御部２２３は、ＰＰＭの逆数を６０倍して単位を合わせた上で比較を行う。Ｓ１２０４の比較の結果、ｔがＰＰＭの逆数よりも小さければ（Ｓ１２０４／ＹＥＳ）、ハードウェア描画処理制御部２２３は、ハードウェアアクセラレータ２３０の動作は不要であると判断し（Ｓ１２０５）、処理を終了する。
【００９３】
他方、Ｓ１２０４の比較の結果、ｔがＰＰＭの逆数以上であれば（Ｓ１２０４／ＮＯ）、ハードウェア描画処理制御部２２３は、ハードウェアアクセラレータ２３０の動作が必要であると判断し（Ｓ１２０６）、処理を終了する。このような処理により、本実施形態に係るＨＡ動作が完了する。
【００９４】
このように、本実施形態においては、プリントエンジン１６０のＰＰＭに応じて定められた基準値として、ＰＰＭの逆数、即ち、プリントエンジン１６０が１ページ分の画像形成出力を実行するために要する時間を用いる。これにより、ＰＰＭを発揮させるために満たされるべき描画処理時間を判断することが可能となる。
【００９５】
以上、説明したように、本実施形態に係る描画コアモジュール２２０においては、描画コマンド毎に設定された重み値に基づいて描画コマンド毎の処理負荷を計算し、その計算結果に応じて定まる処理時間とプリントエンジン１６０の生産性とを比較することにより、ハードウェアアクセラレータ２３０の動作の要否を判断する。これにより、より高精度にハードウェアアクセラレータ２３０の動作の要否を判断することができる。
【００９６】
尚、本実施形態においては、図１１に示すようなテーブルを用いることにより、上記式（１）によって求めた処理負荷Ｒを処理時間ｔに変換した上で、プリントエンジン１６０の逆数と比較する場合を例とした。しかしながら、プリントエンジン１６０の逆数を処理負荷に変換した値を、ハードウェア描画処理制御部２２３が閾値として保持しておくことにより、上記と同様の効果を得ることが可能である。また、この場合、図１１に示すようなテーブルではなく閾値を記憶しておけば良いため、記憶しておくべき情報量を削減することができる。
【００９７】
実施の形態３．
本実施形態においては、ハードウェア描画処理部２３１が複数設けられている場合について説明する。図１３は、本実施形態に係る描画コアモジュール２２０及びハードウェアアクセラレータ２３０の機能構成を示すブロック図である。図１３に示すように、本実施形態に係るハードウェアアクセラレータ２３０は、ハードウェア描画処理部２３１ａ及びハードウェア描画処理部２３１ｂとして、２つのハードウェア描画処理部を含む。この２つのハードウェア描画処理部は、並列して異なる描画処理を実行することが可能であり、それにより、単位時間当たりの描画処理の効率を向上することができる。
【００９８】
ハードウェア描画処理部２３１ａ及びハードウェア描画処理部２３１ｂ夫々は、実施の形態１において説明したハードウェア描画処理部２３１と同一の機能を有する。即ち、ハードウェア描画処理部２３１ａ及びハードウェア描画処理部２３１ｂは、夫々ハードウェア描画処理制御部２２３の制御に従い、中間データ記憶部２２４に格納されているディスプレイリストに基づいて描画処理を実行してバンドメモリ２２６に描画情報を格納する。
【００９９】
本実施形態においても、ハードウェア描画処理制御部２２３は、プリントエンジン１６０のＰＰＭが発揮されるようにハードウェアアクセラレータ２３０を制御する。以下、実施の形態１の態様による制御と実施の形態２の態様による制御との夫々の場合において、本実施形態に係るハードウェア描画処理制御部２２３の機能について説明する。
【０１００】
図１４は、実施の形態１の態様による制御を行う場合にハードウェア描画処理制御部２２３が保持しているＨＡ判断条件情報の例を示す図であり、実施の形態１の図７において説明した情報に相当する。
【０１０１】
図１４に示すように、本実施形態に係るＨＡ判断条件情報においては、図７において説明した“判断項目”に対して、ハードウェア描画処理部２３１を２つ使用する場合の条件を示す“ＨＡ使用２”と、ハードウェア描画処理部２３１を１つ使用する場合の条件を示す“ＨＡ使用１”と、ハードウェアアクセラレータ２３０を使用しない場合の条件を示す“ＨＡ不使用”とが、夫々の項目の番号である“Ｎｏ．”と関連付けられて格納されている。
【０１０２】
図１４に示すようなＨＡ判断条件情報を用いて、実施の形態１と同様の処理により判断を行うことにより、本実施形態に係るハードウェア描画処理制御部２２３は、ＤＬ処理部２２２から入力された判断情報に基づき、ハードウェアアクセラレータ２３０に含まれる２つのハードウェア描画処理部をいくつまで動作させるかを判断することが可能となる。
【０１０３】
図１５は、実施の形態２の態様による制御を行う場合にハードウェア描画処理制御部２２３が保持しているＨＡ判断条件情報の例を示す図であり、実施の形態２の図１１において説明した情報に相当する。図１５に示すテーブルにおいては、図１１の“処理時間ｔ”に相当する“ＣＰＵのみ処理時間ｔ１”に加えて、ハードウェア描画処理部を１つだけ動作させて描画処理を実行した場合に描画処理に要する時間を示す“ＣＰＵ＋ＨＡ処理時間ｔ２”が、夫々の処理負荷Ｒに関連付けられている。
【０１０４】
本実施形態に係るハードウェア描画処理制御部２２３は、このようなテーブルを用いて、実施の形態２において説明した式（１）により算出した処理負荷Ｒに対応する処理時間ｔ１、ｔ２を求め、夫々の値とプリントエンジン１６０のＰＰＭの逆数とを比較する。これにより、ハードウェアアクセラレータ２３０を動作させるか否かに加えて、ハードウェアアクセラレータ２３０を動作させる場合には、何個のハードウェア描画処理部を動作させるかを判断することが可能となる。
【０１０５】
図１６は、本実施形態に係るハードウェア描画処理制御部２２３が、実施の形態２の態様による制御を行う場合のＨＡ判断動作を示すフローチャートである。図１６に示すように、ハードウェア描画処理制御部２２３は、Ｓ１６０１、Ｓ１６０２において、図１２のＳ１２０２までと同様の処理を実行する。１ページ分のＲの算出を完了すると（Ｓ１６０２／ＹＥＳ）、ハードウェア描画処理制御部２２３は、算出したＲの値に基づいて図１５に示すテーブルからｔ１、ｔ２を取得する（Ｓ１６０３）。
【０１０６】
ｔ１、ｔ２の値を取得すると、ハードウェア描画処理制御部２２３は、まず、ｔ１の値とプリントエンジン１６０の逆数とを比較する（Ｓ１６０４）。Ｓ１６０４の比較の結果、ｔ１がＰＰＭの逆数よりも小さければ（Ｓ１６０４／ＹＥＳ）、ハードウェア描画処理制御部２２３は、ハードウェアアクセラレータ２３０の動作は不要であると判断し（Ｓ１６０５）、処理を終了する。
【０１０７】
他方、Ｓ１６０４の比較の結果、ｔ１がＰＰＭの逆数以上であれば（Ｓ１６０４／ＮＯ）、次に、ハードウェア描画処理制御部２２３は、ｔ２の値とプリントエンジン１６０の逆数とを比較する（Ｓ１６０６）。Ｓ１６０４の比較の結果、ｔ２がＰＰＭの逆数よりも小さければ（Ｓ１６０６／ＹＥＳ）、ハードウェア描画処理制御部２２３は、ハードウェア描画処理部を１つだけ使用することを判断し（Ｓ１６０７）、処理を終了する。
【０１０８】
Ｓ１６０６の比較の結果、ｔ２がＰＰＭの逆数以上であれば（Ｓ１６０６／ＮＯ）、ハードウェア描画処理制御部２２３は、ハードウェアアクセラレータ２３０に含まれる２つのハードウェア描画処理部の両方の動作が必要であると判断し（Ｓ１６０８）、処理を終了する。このような処理により、本実施形態に係るＨＡ動作が完了する。
【０１０９】
尚、本実施形態においては、ハードウェアアクセラレータ２３０がハードウェア描画処理部２３１ａ、２３１ｂの２つのハードウェア描画処理部を含む場合を例として説明したが、ハードウェア描画処理部が３つ以上であっても、同様に適用することが可能である。その場合、図１４の態様であれば、ハードウェア描画処理部の個数分の条件が、夫々の“判断項目”に対応して設定されていれば、ハードウェア描画処理制御部２２３は、ＤＬ処理部２２２から入力された判断情報に基づいて、使用するハードウェア描画処理部の数を判断することが可能である。
【０１１０】
また、図１５の態様であれば、図１５に示す“ＣＰＵのみ処理時間ｔ１”、“ＣＰＵ＋ＨＡ処理時間ｔ２”に続いて、動作させるハードウェア描画処理部の個数を１つずつ増やしていき、ハードウェアアクセラレータ２３０に含まれるハードウェア描画処理部の個数よりも１つ少ない個数のハードウェア描画処理部を動作させた場合まで、処理負荷Ｒに関連付けて格納しておく。そして、図１６のＳ１６０４、Ｓ１６０６の判断を増やしていくことにより、ハードウェアアクセラレータ２３０に含まれるハードウェア描画処理部が３つ以上であっても、図１５、図１６の態様と同様に適用することが可能である。
【０１１１】
以上、説明したように、本実施形態に係る画像処理部１０４の構成によれば、ハードウェアアクセラレータ２３０が複数のハードウェア描画処理部を含む場合であっても、画像形成出力の生産性を保ちつつ消費電力の低減を図ることができる。
【符号の説明】
【０１１２】
１  画像形成装置
１０  ＣＰＵ
２０  ＲＡＭ
３０  ＲＯＭ
４０  エンジン
５０  ＨＤＤ
６０  Ｉ／Ｆ
７０  ＬＣＤ
８０  操作部
９０  バス
１００  コントローラ
１０１  主制御部
１０２  エンジン制御部
１０３  入出力制御部
１０４  画像処理部
１０５  操作表示制御部
１１０  ＡＤＦ
１２０  スキャナユニット
１３０  排紙トレイ
１４０  ディスプレイパネル
１５０  給紙テーブル
１６０  プリントエンジン
１７０  排紙トレイ
１８０  ネットワークＩ／Ｆ
２００  ＰＤＬアプリケーション
２１０  ＰＤＬ解析部
２２０  描画コアモジュール
２２１  描画コアモジュールＩ／Ｆ
２２２  ＤＬ処理部
２２３  ハードウェア描画処理制御部
２２４  中間データ記憶部
２２５  描画処理部
２２６  バンドメモリ
２３０  ハードウェアアクセラレータ
２３１、２３１ａ、２３１ｂ  ハードウェア描画処理部
【先行技術文献】
【特許文献】
【０１１３】
【特許文献１】特開２００８−１８６２９９号公報
【図１】
2013052615.tif 000004
【図２】
2013052615.tif 000005
【図３】
2013052615.tif 000006
【図４】
2013052615.tif 000007
【図５】
2013052615.tif 000008
【図６】
2013052615.tif 000009
【図７】
2013052615.tif 000010
【図８】
2013052615.tif 000011
【図９】
2013052615.tif 000012
【図１０】
2013052615.tif 000013
【図１１】
2013052615.tif 000014
【図１２】
2013052615.tif 000015
【図１３】
2013052615.tif 000016
【図１４】
2013052615.tif 000017
【図１５】
2013052615.tif 000018
【図１６】
2013052615.tif 000019