画像形成装置、画像形成装置の制御方法及び制御プログラム
【課題】複数の演算手段を有する画像形成装置において、複数のコマンドが入力された場合の処理を効率化すること。
【解決手段】複数のコアによって制御される画像形成装置において、印刷ジョブを取得し、出力すべき画像の情報を生成するために要する時間をコア数毎に予測し、1ページ分の画像の情報を生成するために要する時間が、1ページ分の画像形成出力に要する時間以下となるように、画像情報を生成するために動作するコア数を決定することを特徴とする。
【解決手段】複数のコアによって制御される画像形成装置において、印刷ジョブを取得し、出力すべき画像の情報を生成するために要する時間をコア数毎に予測し、1ページ分の画像の情報を生成するために要する時間が、1ページ分の画像形成出力に要する時間以下となるように、画像情報を生成するために動作するコア数を決定することを特徴とする。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像形成装置、画像形成装置の制御方法及び制御プログラムに関し、特に、画像形成出力を実行するための描画情報の生成処理を複数の演算手段によって実行可能な場合の画像処理に関する。
【背景技術】
【0002】
近年、情報の電子化が推進される傾向にあり、電子化された情報の出力に用いられるプリンタやファクシミリ及び書類の電子化に用いるスキャナ等の画像処理装置は欠かせない機器となっている。このような画像処理装置は、撮像機能、画像形成機能及び通信機能等を備えることにより、プリンタ、ファクシミリ、スキャナ、複写機として利用可能な複合機として構成されることが多い。
【0003】
このような画像処理装置のうち、電子化された情報の出力に用いるプリンタにおいては、入力された画像情報に基づいてプリントエンジンが画像形成出力を実行するための描画情報を生成する画像処理が行われる。この画像処理は、CPU(Central Processing Unit)等の演算手段がソフトウェアに従って動作することにより実行される。
【0004】
近年の情報処理機器の発展により複数の演算手段が含まれるマルチコアCPU等の演算手段が普及している。マルチコアCPUにおいては、複数のコアが夫々独立して動作するため、処理を並列化することにより、処理時間を短縮することが可能になる。従って、上記の画像処理もマルチコアCPUに対応させることにより、処理を効率化することが望まれている。マルチコアCPUの性能を効率的に発揮させるためには、実行すべき処理に対して割り当てるコア数を適切に判断する必要がある。
【0005】
画像形成装置におけるマルチコア環境を活用するための方法として、複数の処理手段が、PDLコマンドからデータを読み出して画像データを生成する処理及び生成された画像データを印刷手段に送信する処理を順次実行する方法が提案されている(例えば、特許文献1参照)。
【発明の概要】
【発明が解決しようとする課題】
【0006】
特許文献1に開示された方法の場合、一の印刷ジョブが入力された場合において、その印刷ジョブに係る画像データの生成処理及び画像データの送信処理を効率的に処理することはできるが、画像形成装置全体の処理についての効率性は考慮されていない。例えば、印刷ジョブが入力された場合において、その印刷ジョブに係る画像データの生成処理及び画像データの送信処理に割り当てるコアの数と、他の処理のために待機するコアの数とのバランスを判断するようなことは行われていない。即ち、入力された印刷ジョブに関する処理以外の処理が考慮されていない。
【0007】
従って、従来のマルチコア対応の技術においては、印刷ジョブの実行中に、他の印刷ジョブ等の他の命令が入力された場合、先に入力された印刷ジョブのために割り当てられているコアに余力があるにも関わらず、後に入力された命令に対するレスポンスが遅れてしまうことが考えられる。また、様々な機能を含む複合機の場合、印刷ジョブに限らず、スキャンや複写等の様々な命令が入力されることが考えられるが、上記と同様に、装置全体の処理の効率化が考慮されていない場合、印刷ジョブの実行中に入力されたスキャンや複写等の命令に対するレスポンスが遅くなってしまう。
【0008】
本発明は、上記実情を考慮してなされたものであり、複数の演算手段を有する画像形成装置において、複数のコマンドが入力された場合の処理を効率化することを目的とする。
【課題を解決するための手段】
【0009】
上記課題を解決するために、本発明の一態様は、画像形成出力を実行するための画像処理を複数の演算手段によって実行可能な画像形成装置であって、前記画像形成出力の実行命令を取得する実行命令取得部と、前記演算手段が、前記画像形成出力において出力すべき画像の情報を生成するために要する時間を、前記画像の情報を生成するために動作する演算手段の数毎に予測する描画情報生成時間予測部と、前記予測された時間及び前記画像形成出力を実行する画像形成部の出力速度に関する情報に基づき、前記画像形成出力において出力される1ページ分の画像の情報を生成するために要する時間が、前記画像形成部による1ページ分の画像形成出力に要する時間以下となるように、前記画像の情報を生成するために動作する演算手段の数を決定する演算手段数決定部と、前記決定された数の演算手段に、前記取得された実行命令に基づいて前記画像形成出力において出力すべき画像の情報を生成させる演算手段制御部とを含むことを特徴とする。
【0010】
ここで、前記演算手段数決定部は、前記画像形成出力において出力される1ページ分の画像の情報を生成するために要する時間が、前記画像形成部による1ページ分の画像形成出力に要する時間以下となる前記演算手段の数のうち、最も少ない数を前記画像の情報を生成するために動作する演算手段の数として決定することが好ましい。
【0011】
また、前記描画情報生成時間予測部は、前記画像形成出力において出力されるページ数に基づき、前記画像形成出力において出力すべき1ページ分の画像の情報を生成するために要する時間を、前記画像の情報を生成するために動作する演算手段の数毎に予測し、前記演算手段数決定部は、前記画像形成部が1ページ分の画像形成出力に要する時間の情報を予め記憶していることが好ましい。
【0012】
また、前記描画情報生成時間予測部は、前記実行命令の情報形式、前記出力すべき画像の彩色に関する情報、前記実行命令の情報量のうち少なくとも1つに基づき、前記出力すべき画像の情報を生成するために要する時間を予測することが好ましい。
【0013】
また、前記描画情報生成時間予測部は、前記実行命令の情報形式、前記出力すべき画像の彩色に関する情報、前記実行命令の情報量と、前記画像の情報を生成するために動作する演算手段の数毎の前記画像の情報を生成するために要する時間とが関連付けられた画像生成時間予測情報を参照して前記画像の情報を生成するために要する時間を予測することが好ましい。
【0014】
また、一の前記実行命令に係る画像形成出力の実行中において前記実行命令取得部が他の実行命令を取得した場合、前記描画情報生成時間予測部が、前記他の実行命令に係る画像形成出力において出力すべき画像の情報を生成するために要する時間を、前記画像の情報を生成するために動作する演算手段の数毎に予測し、前記演算手段決定部が、前記予測された時間に基づいて前記他の実行命令に係る画像形成出力において出力すべき画像の情報を生成するために動作する演算手段の数を決定することが好ましい。
【0015】
また、前記演算手段数決定部は、前記実行中の画像形成出力が完了するまでに前記他の実行命令に係る画像形成出力の1ページ目の画像の情報の生成が完了するように、演算手段の数を決定することが好ましい。
【0016】
また、前記演算手段数決定部は、前記他の実行命令に係る画像形成出力の2ページ目以降の画像情報の生成が、その前のページの画像形成出力が完了するまでに完了するように演算手段の数を決定することが好ましい。
【0017】
また、前記演算手段数決定部は、前記複数の演算手段の全てを前記画像形成出力において出力される1ページ目の画像の情報を生成するために動作する演算手段として決定し、前記画像形成出力において出力される2ページ目以降の画像の情報を生成するために動作する演算手段の数を、前記画像形成出力において出力される1ページ分の画像の情報を生成するために要する時間が、前記画像形成部による1ページ分の画像形成出力に要する時間以下となるように決定することが好ましい。
【0018】
また、本発明の他の態様は、画像形成出力を実行するための画像処理を複数の演算手段によって実行可能な画像形成装置の制御方法であって、実行命令取得部が、前記画像形成出力の実行命令を取得し、描画情報生成時間予測部が、前記演算手段が前記画像形成出力において出力すべき画像の情報を生成するために要する時間を、前記画像の情報を生成するために動作する演算手段の数毎に予測し、演算手段数決定部が、前記予測された時間及び前記画像形成出力を実行する画像形成部の出力速度に関する情報に基づき、前記画像形成出力において出力される1ページ分の画像の情報を生成するために要する時間が、前記画像形成部による1ページ分の画像形成出力に要する時間以下となるように、前記画像の情報を生成するために動作する演算手段の数を決定し、演算手段制御部が、前記決定された数の演算手段に、前記取得された実行命令に基づいて前記画像形成出力において出力すべき画像の情報を生成させることを特徴とする。
【0019】
また、本発明の更に他の態様は、画像形成出力を実行するための画像処理を複数の演算手段によって実行可能な画像形成装置の制御プログラムであって、前記画像形成出力の実行命令を取得するステップと、前記演算手段が前記画像形成出力において出力すべき画像の情報を生成するために要する時間を、前記画像の情報を生成するために動作する演算手段の数毎に予測するステップと、前記予測された時間及び前記画像形成出力を実行する画像形成部の出力速度に関する情報に基づき、前記画像形成出力において出力される1ページ分の画像の情報を生成するために要する時間が、前記画像形成部による1ページ分の画像形成出力に要する時間以下となるように、前記画像の情報を生成するために動作する演算手段の数を決定するステップと、前記決定された数の演算手段に、前記取得された実行命令に基づいて前記画像形成出力において出力すべき画像の情報を生成させるステップとを前記画像形成装置に実行させることを特徴とする。
【発明の効果】
【0020】
本発明によれば、複数の演算手段を有する画像形成装置において、複数のコマンドが入力された場合の処理を効率化することが可能となる。
【図面の簡単な説明】
【0021】
【図1】本発明の実施形態に係る画像形成装置の運用形態を示す図である。
【図2】本発明の実施形態に係る画像形成装置のハードウェア構成を示すブロック図である。
【図3】本発明の実施形態に係る画像形成装置の機能構成を示す図である。
【図4】本発明の比較例に係る描画情報の生成処理及び印刷出力処理のタイミングを示す図である。
【図5】本発明の実施形態に係る画像形成装置の動作を示すフローチャートである。
【図6】PDL種類と描画情報の生成処理の負荷との関係を示す図である。
【図7】本発明の実施形態に係る頁描画情報生成時間判断用テーブルに含まれる情報の例を示す図である。
【図8】本発明の実施形態に係る描画情報の生成処理及び印刷出力処理のタイミングを示す図である。
【図9】本発明の実施形態に係る描画情報の生成処理及び印刷出力処理のタイミングを示す図である。
【図10】本発明の実施形態に係る画像形成装置の動作を示すフローチャートである。
【図11】本発明の実施形態に係る画像形成装置の動作を示すフローチャートである。
【図12】本発明の実施形態に係る描画情報の生成処理及び印刷出力処理のタイミングを示す図である。
【図13】本発明の比較例に係る描画情報の生成処理及び印刷出力処理のタイミングを示す図である。
【発明を実施するための形態】
【0022】
実施の形態1.
以下、図面を参照して、本発明の実施形態を詳細に説明する。本実施形態においては、プリンタ、スキャナ、複写機等の機能を含む複合機(MFP:Multi Function Peripheral)としての画像形成装置を例として説明する。図1は、本実施の形態に係る情報処理装置としてのPC(Personal Computer)2及び画像形成装置1をふくむネットワークの接続状態を示す図である。図1に示すように、本実施形態に係るPC2は、LAN(Local Area Network)等のネットワークを介して画像形成装置1と接続されている。
【0023】
PC2は、ユーザが操作する情報処理端末であり、一般的な情報処理装置の構成を有する。画像形成装置1は、撮像機能、画像形成機能及び通信機能等を備えることにより、プリンタ、ファクシミリ、スキャナ、複写機として利用可能な複合機である。尚、図1においては、画像形成装置1及びPC2が、夫々1台設けられている場合を例としているが、夫々複数設けられていても良い。
【0024】
次に、本実施形態に係る画像形成装置1のハードウェア構成について説明する。図2は、本実施形態に係る画像形成装置1のハードウェア構成を示すブロック図である。図2に示すように、本実施形態に係る画像形成装置1は、一般的なサーバやPC等の情報処理端末と同様の構成に加えて、画像形成を実行するエンジンを有する。即ち、本実施形態に係る画像形成装置1は、CPU(Central Processing Unit)10、RAM(Random Access Memory)20、ROM(Read Only Memory)30、エンジン40、HDD(Hard Disk Drive)50及びI/F60がバス90を介して接続されている。また、I/F60にはLCD(Liquid Crystal Display)70及び操作部80が接続されている。
【0025】
CPU10は演算手段であり、画像形成装置1全体の動作を制御する。また、本実施形態に係るCPU10は、クアッドコアCPUであり、第1コア11、第2コア12、第3コア13及び第4コア14を含む。第1コア11、第2コア12、第3コア13及び第4コア14が夫々独立して動作することにより、並列処理が可能となり、処理時間を短縮することが可能となる。RAM20は、情報の高速な読み書きが可能な揮発性の記憶媒体であり、CPU10が情報を処理する際の作業領域として用いられる。ROM30は、読み出し専用の不揮発性記憶媒体であり、ファームウェア等のプログラムが格納されている。エンジン40は、画像形成装置1において実際に画像形成を実行する機構である。
【0026】
HDD50は、情報の読み書きが可能な不揮発性の記憶媒体であり、OS(Operating System)や各種の制御プログラム、アプリケーション・プログラム等が格納されている。I/F60は、バス90と各種のハードウェアやネットワーク等を接続し制御する。LCD70は、ユーザが画像形成装置1の状態を確認するための視覚的ユーザインタフェースである。操作部80は、キーボードやマウス等、ユーザが画像形成装置1に情報を入力するためのユーザインタフェースである。
【0027】
このようなハードウェア構成において、ROM30やHDD50若しくは図示しない光学ディスク等の記録媒体に格納されたプログラムがRAM20に読み出され、CPU10の制御に従って動作することにより、ソフトウェア制御部が構成される。このようにして構成されたソフトウェア制御部と、ハードウェアとの組み合わせによって、本実施形態に係る画像形成装置1の機能が実現される。
【0028】
次に、図3を参照して、本実施形態に係る画像形成装置1の機能構成について説明する。図3は、本実施形態に係る画像形成装置1の機能構成を示すブロック図である。図3に示すように、本実施形態に係る画像形成装置1は、コントローラ100、ADF(Auto Documennt Feeder:原稿自動搬送装置)110、スキャナユニット120、排紙トレイ130、ディスプレイパネル140、給紙テーブル150、プリントエンジン160、排紙トレイ170及びネットワークI/F180を有する。
【0029】
また、コントローラ100は、主制御部101、エンジン制御部102、入出力制御部103、画像処理部104及び操作表示制御部105を有する。図3に示すように、本実施形態に係る画像形成装置1は、スキャナユニット120、プリントエンジン160を有する複合機として構成されている。尚、図3においては、電気的接続を実線の矢印で示しており、用紙の流れを破線の矢印で示している。
【0030】
ディスプレイパネル140は、画像形成装置1の状態を視覚的に表示する出力インタフェースであると共に、タッチパネルとしてユーザが画像形成装置1を直接操作し若しくは画像形成装置1に対して情報を入力する際の入力インタフェース(操作部)でもある。ネットワークI/F180は、画像形成装置1がネットワークを介して他の機器と通信するためのインタフェースであり、Ethernet(登録商標)やUSB(Universal Serial Bus)インタフェースが用いられる。
【0031】
コントローラ100は、ソフトウェアとハードウェアとの組み合わせによって構成される。具体的には、ROM30や不揮発性メモリ並びにHDD50や光学ディスク等の不揮発性記録媒体に格納されたファームウェア等の制御プログラムが、RAM20等の揮発性メモリ(以下、メモリ)にロードされ、CPU10の制御に従って構成されるソフトウェア制御部と集積回路などのハードウェアとによってコントローラ100が構成される。コントローラ100は、画像形成装置1全体を制御する制御部として機能する。
【0032】
主制御部101は、コントローラ100に含まれる各部を制御する役割を担い、コントローラ100の各部に命令を与える。エンジン制御部102は、プリントエンジン160やスキャナユニット120等を制御若しくは駆動する駆動手段としての役割を担う。入出力制御部103は、ネットワークI/F180を介して入力される信号や命令を主制御部101に入力する。また、主制御部101は、入出力制御部103を制御し、ネットワークI/F180を介して他の機器にアクセスする。
【0033】
画像処理部104は、主制御部101の制御に従い、入力された印刷ジョブに含まれる印刷情報に基づいて描画情報を生成する。この描画情報とは、画像形成部であるプリントエンジン160が画像形成動作において形成すべき画像を描画するための情報である。また、印刷ジョブに含まれる印刷情報とは、PC等の情報処理装置にインストールされたプリンタドライバによって画像形成装置1が認識可能な形式に変換された情報であり、PDL(Page Description Language)によって記述された情報である。換言すると、上記印刷情報とは、画像形成装置1に画像形成出力を開始させる実行命令である。尚、本実施形態においては、ページ記述言語としてPDLを用いる場合を例とするが、他の言語であっても良い。
【0034】
本実施形態においては、画像処理部104による上記描画情報の生成処理を、マルチコアのCPU10の第1コア11、第2コア12、第3コア13及び第4コア14に好適に割り振ることが要旨となる。画像処理部104の機能については、後に詳述する。操作表示制御部105は、ディスプレイパネル140に情報表示を行い若しくはディスプレイパネル140を介して入力された情報を主制御部101に通知する。
【0035】
画像形成装置1がプリンタとして動作する場合は、まず、入出力制御部103がネットワークI/F180を介して印刷ジョブを受信する。入出力制御部103は、受信した印刷ジョブを主制御部101に転送する。主制御部101は、印刷ジョブを受信すると、画像処理部104を制御して、印刷ジョブに含まれる印刷情報に基づいて描画情報を生成させる。
【0036】
画像処理部104によって描画情報が生成されると、エンジン制御部102は、生成された描画情報に基づき、給紙テーブル150から搬送される用紙に対して画像形成を実行する。即ち、プリントエンジン160が画像形成部として機能する。プリントエンジン160の具体的態様としては、インクジェット方式による画像形成機構や電子写真方式による画像形成機構等を用いることが可能である。プリントエンジン160によって画像形成が施された文書は排紙トレイ170に排紙される。
【0037】
画像形成装置1がスキャナとして動作する場合は、ユーザによるディスプレイパネル140の操作若しくはネットワークI/F180を介して外部のクライアント用の情報処理端末等から入力されるスキャン実行指示に応じて、操作表示制御部105若しくは入出力制御部103が主制御部101にスキャン実行信号を転送する。主制御部101は、受信したスキャン実行信号に基づき、エンジン制御部102を制御する。
【0038】
エンジン制御部102は、ADF110を駆動し、ADF110にセットされた撮像対象原稿をスキャナユニット120に搬送する。また、エンジン制御部102は、スキャナユニット120を駆動し、ADF110から搬送される原稿を撮像する。また、ADF110に原稿がセットされておらず、スキャナユニット120に直接原稿がセットされた場合、スキャナユニット120は、エンジン制御部102の制御に従い、セットされた原稿を撮像する。即ち、スキャナユニット120が撮像部として動作する。
【0039】
撮像動作においては、スキャナユニット120に含まれるCCD等の撮像素子が原稿を光学的に走査し、光学情報に基づいて生成された撮像情報が生成される。エンジン制御部102は、スキャナユニット120が生成した撮像情報を画像処理部104に転送する。画像処理部104は、主制御部101の制御に従い、エンジン制御部102から受信した撮像情報に基づき画像情報を生成する。画像処理部104が生成した画像情報はHDD40等の画像形成装置1に装着された記憶媒体に保存される。即ち、スキャナユニット120、エンジン制御部102及び画像処理部104が連動して、原稿読み取り部として機能する。
【0040】
画像処理部1104によって生成された画像情報は、ユーザの指示に応じてそのままHDD40等に格納され若しくは入出力制御部103及びネットワークI/F180を介して外部の装置に送信される。即ち、スキャナユニット120及びエンジン制御部102が画像入力部として機能する。
【0041】
また、画像形成装置1が複写機として動作する場合は、エンジン制御部102がスキャナユニット120から受信した撮像情報若しくは画像処理部104が生成した画像情報に基づき、画像処理部104が描画情報を生成する。その描画情報に基づいてプリンタ動作の場合と同様に、エンジン制御部102がプリントエンジン160を駆動する。
【0042】
このような画像形成装置1において、本実施形態に係る要旨は、画像処理部104が描画情報を生成する際に、画像処理部104を構成するソフトウェァモジュールを制御するコアの数を判断することにある。以下、本実施形態に係る画像形成装置1の動作について説明する。
【0043】
上述したように、印刷ジョブが入力されてから印刷出力が完了するまでには、画像処理部104による描画データの生成処理及びプリントエンジン160による出力処理が必要である。ここで、プリントエンジン160による出力速度は、プリントエンジン160の性能、即ちPPM(Page Per Minute)によって定まる。換言すると、一の電子写真方式の画像形成装置において、プリントエンジン160が1ページの画像形成出力を実行するために要する時間(以降、頁出力時間とする)は不変である。
【0044】
これに対して、画像処理部104による描画データの生成処理に要する時間は、画像処理部104を構成するソフトウェァモジュールを制御するコアの数を増やすことにより、短縮することが可能である。即ち、画像処理部104が、1ページ分の描画情報を生成するために要する時間(以降、頁描画情報生成時間とする)は、画像処理部104を制御するコアの数を増やすことにより、短縮可能である。
【0045】
しかしながら、図4に示すように、頁描画情報生成時間を頁出力時間よりも短くしたとしても、頁出力時間がボトルネックとなり、画像形成出力が完了するまでの時間をそれ以上短縮することはできない。
【0046】
本実施形態においては、一の印刷ジョブにおいて画像処理部104に描画情報の生成処理を実行させるために画像処理部104を制御するためのコアを割り当てる際、頁描画情報生成時間が頁出力時間よりも短くなるコア数であって且つ可能な限り少ない数のコアを割り当てることにより、一の印刷ジョブが完了するまでの時間を短縮しながらも、他の命令にも対応可能なように待機するコアを確保する。これにより、画像形成装置1全体の処理を効率化することができる。
【0047】
上述したように、画像処理部104は、主制御部101の制御に従って描画情報の生成を実行する。即ち、本実施形態においては、主制御部101が、画像処理部104を制御するコア数の決定を行う。以下、本実施形態に係る画像形成装置1において印刷ジョブが入力された際の動作について説明する。
【0048】
図5は、本実施形態に係る画像形成装置1において、印刷ジョブが入力された際の動作を示すフローチャートである。図5に示すように、先ず、主制御部101が入出力制御部103から印刷ジョブを取得する(S501)。即ち、主制御部101が、画像形成出力の実行命令を取得する実行命令取得部として機能する。主制御部101は、印刷ジョブを取得すると、取得した印刷ジョブに含まれる情報に基づいて頁描画情報生成時間を予測する(S502)。即ち、主制御部101が、描画情報生成時間予測部として機能する。S502における処理について、以下に説明する。
【0049】
S502において、主制御部101は、PDLの種類、カラー若しくはモノクロの別、出力されるページ数に対するデータサイズの割合等の情報に基づいて、頁描画情報生成時間を予測する。図6は、他の条件が同一若しくは相当の内容である場合の、PDL種類に応じた処理負荷を示す図である。
【0050】
図6に示すように、PCL(Printer Command Language)、RPCS(Remote Procedure Call System)形式のPDLの処理負荷は比較的軽く、PDF(Portable Document Format)、XPS(XML Paper Specification)形式のPDLの処理負荷は比較的重い。従って、S502において頁描画情報生成時間を予測する場合、主制御部101は、印刷ジョブのデータサイズやページ数だけでなく、PDL種類をも加味して頁描画情報生成時間を予測する必要がある。
【0051】
このような前提において、本実施形態に係る主制御部101は、上述したPDLの種類、カラー若しくはモノクロの別、出力されるページ数に対するデータサイズの割合等の情報と、コア数毎の処理時間とが関連付けられたテーブル(以降、頁描画情報生成時間判断用テーブルとする)を参照することにより、頁描画情報生成時間を予測する。本実施形態に係る頁描画情報生成時間判断用テーブルに含まれる情報の例について、図7に示す。
【0052】
図7に示すように、本実施形態に係る頁描画情報生成時間判断用テーブルにおいては、“PDL種類”、“カラー/モノクロ”、“データサイズ/ジョブのページ数”の情報と、コアの数に応じた頁描画情報生成時間とが関連付けられて記憶されている。即ち、頁描画情報生成時間判断用テーブルは、画像生成時間予測情報として用いられる。尚、“カラー/モノクロ”はカラー若しくはモノクロの別、“データサイズ/ジョブのページ数”は、出力されるページ数に対するデータサイズの割合を夫々示している。
【0053】
図7に示すようなページ描画情報生成時間判断用テーブルは、例えば、夫々の条件、即ち、“PDL種類”、“カラー/モノクロ”、“データサイズ/ジョブのページ数”の各値における組み合わせについて、画像処理部104に描画情報を生成させて測定することにより生成することができる。主制御部101は、このようなテーブルを参照することによりテーブル中の一行を特定し、コア数毎のページ描画情報生成時間の予測値を取得する。これにより、S502の処理が完了する。
【0054】
尚、上記夫々の条件のうち、“データサイズ/ジョブのページ数”について、全ての値を予め測定しておくと情報量が膨大となり現実的ではないため、図7に示すように、“5Kbyte”、“10Kbyte”、“15Kbyte”のように所定間隔毎に測定する。そして、S502において、主制御部101は、入力された印刷ジョブにおける出力されるページ数に対するデータサイズの割合が、0〜5Kbyteの範囲内であれば、“5Kbyte”、5〜10Kbyteの範囲内であれば、“10Kbyte”、10〜15Kbyteの範囲内であれば“15Kbyte”であるものとして頁描画情報生成時間を判断する。
【0055】
頁描画情報生成時間を予測すると、主制御部101は、上述した頁出力時間を参照し、可能な限り少ないコア数であって、頁描画情報生成時間が頁出力時間よりも短くなるコア数を決定する(S503)。即ち、主制御部101が、演算手段数決定部として機能する。そして、主制御部101は、このように決定したコア数を、画像処理部104を制御するためのコアとして割り当てる。即ち、主制御部101が、演算手段制御部として機能する。そして、このように割り当てられたコアによって制御された画像処理部104により、描画情報の生成処理が実行される(S504)。
【0056】
画像処理部104は、印刷ジョブに含まれる各ページについて描画情報の生成処理を完了すると、エンジン制御部102に描画情報を送信する(S505)。画像処理部104から描画情報を受信したエンジン制御部102は、プリントエンジン160を制御し、印刷出力を実行する(S506)。S504〜S506の処理は、印刷ジョブに含まれる各ページの回数繰り返され、全てのページの印刷出力が実行されると、画像形成装置1は処理を終了する。
【0057】
次に、図5に示すような画像形成装置1の動作による効果について説明する。図8は、画像処理部104による描画情報の生成処理及びプリントエンジン160による印刷出力処理のタイミングを示す図である。上述したように、図5の処理により、頁描画情報生成時間が頁出力時間よりも短くなるようにコア数が決定される。これにより、図8に示すように、1ページ目の描画情報が生成されてプリントエンジン160が印刷出力を開始した後は、間が空くことなく、連続して印刷出力が実行されるため、プリントエンジン160のPPMが最大限に発揮され、印刷出力が完了するまでの時間を最短にすることができる。また、図4に示すように、描画情報の生成処理がのみが完了して印刷出力がボトルネックとなるような非効率な状態も生じない。
【0058】
図9は、一の印刷ジョブの実行中に他の印刷ジョブが入力された場合の、描画情報の生成処理及び印刷出力処理のタイミングを示す図である。図9に示すように、ジョブ1についての描画情報の生成処理中にジョブ2が入力された場合、図5において説明した動作と同様の動作が実行され、ジョブ1の描画情報の生成処理には割り当てられていないコアがジョブ2の描画情報の生成処理のために割り当てられる。そして、図9に示すように、ジョブ1の描画情報の生成処理と並行して、ジョブ2の描画情報の生成処理が実行される。
【0059】
一の印刷ジョブの実行中に他の印刷ジョブが入力された場合の動作について、図10を参照して説明する。図10は、一の印刷ジョブの実行中に他の印刷ジョブが入力された場合の動作を示すフローチャートである。図10に示すように、ジョブ2が入力されると(S1001)、図5のS502と同様に、主制御部101が、頁描画情報生成時間を予測し(S1002)、S503と同様にコア数を決定する(S1003)。
【0060】
コア数を決定すると、主制御部101は、決定したコア数が、現在待機中のコア数で足りるか否か判断する(S1004)。S1003の判断の結果、コア数が足りる場合(S1004/YES)、主制御部101は、決定したコア数をジョブ2の描画情報の生成処理を行う画像処理部104を制御するために割り当て(S1005)、処理を終了する。
【0061】
他方、コア数が足りない場合(S1004/NO)、主制御部101は、待機中のコアを全てジョブ2の描画情報の生成処理に割り当てる(S1006)。その後、ジョブ1についての描画情報の生成処理が完了し(S1007)、ジョブ1の描画情報の生成処理に割り当てられていたコアが待機状態となったら、主制御部101は、図9にも示すように、ジョブ1に割り当てられていたコアをジョブ2に再度割り当て(S1008)、処理を終了する。
【0062】
このような処理により、図9に示すように、ジョブ1についての印刷出力が完了した後、連続してジョブ2の印刷出力が実行されるため、プリントエンジン160のPPMが発揮され、印刷出力が完了するまでの時間を最短にすることができる。
【0063】
以上説明したように、本実施形態に係る画像形成装置1においては、印刷ジョブが入力された場合に、複数のコアを全て描画情報の生成処理に割り当てるのではなく、頁描画情報生成時間がプリントエンジン160の頁出力時間よりも短くなる最低限のコア数を決定して割り当てる。これにより、プリントエンジン160は、印刷出力を開始した後、間を空けることなく連続して印刷出力を実行することができるため、PPMが最大限に発揮される。
【0064】
また、最低限のコア数を割り当てるため、全てのコアを割り当てずとも頁描画情報生成時間が頁出力時間よりも短くなる場合、残りのコアは割り当てられずに待機状態となる。これにより、他の印刷ジョブが入力された場合に、実行中の描画情報の生成処理と並行して、新たに入力された印刷ジョブについて描画情報の生成処理を実行することができる。
【0065】
また、新たに印刷ジョブが入力された場合に限らず、操作表示制御部105によるディスプレイパネル140の制御処理や、入出力制御部103によるネットワークI/F180を介した通信処理並びに、スキャナユニット120によるスキャンによって入力される撮像情報の画像処理部104による画像処理等、他の処理を並行して実行することも可能であり、画像形成装置1全体の処理を効率化することができる。
【0066】
実施の形態2.
実施の形態1においては、図9、図10において説明したように、一の印刷ジョブの実行中に他の印刷ジョブが入力された場合、最初の印刷ジョブと同様に、頁描画情報生成時間と頁出力時間との関係に基づいてコア数を決定する例を説明した。本実施形態においては、他の印刷ジョブが入力された場合の他の態様について説明する。尚、実施の形態1と同様の符号を付す構成については、同一又は相当部を示すものとし、詳細な説明を省略する。
【0067】
図11は、本実施形態に係る画像形成装置において、一の印刷ジョブの実行中に他の印刷ジョブが入力された場合の動作を示すフローチャートである。図11に示すように、ジョブ2が入力されると(S1101)、主制御部101は、ジョブ1の印刷出力が全て完了するタイミングを計算する(S1102)。S1102において、主制御部101は、頁出力時間にジョブ1の頁数を乗じた時間をジョブ1の印刷出力時間として算出し、プリントエンジン160がジョブ1の印刷出力を開始したタイミングからジョブ1の印刷出力時間が経過したタイミングを、ジョブ1の印刷出力が全て完了するタイミングとして算出する。
【0068】
S1102の処理が完了すると、主制御部101は、図5のS502と同様に、ジョブ2について頁描画情報生成時間を予測する(S1103)。そして、主制御部101は、S1103において予測した頁描画情報生成時間に基づき、ジョブ2の1ページ目の描画情報の生成処理がS1102において算出したタイミングまでに完了するように、即ち、頁描画情報生成時間が、現在時刻からS1102において算出したタイミングまでの期間よりも短くなるように、画像処理部104を制御するコアの数を決定する(S1104)。
【0069】
S1104によりジョブ2の1ページ目の描画情報を生成するための画像処理部104を制御するコア数が決定されると、決定されたコア数が割り当てられ、ジョブ2の1ページ目の描画情報の生成及び送信が実行される(S1105)。ジョブ2の1ページ目について描画情報生成が完了すると、主制御部101は、まだ描画情報が生成されていない残ページが有るか否か判断する(S1106)。
【0070】
残ページが有る場合(S1106/YES)、既に描画情報を生成した前ページ(ここでは、1ページ目)の印刷完了タイミングを計算する(S1107)。S1107においては、S1102において計算したタイミングから頁出力時間が経過したタイミングを、前ページの印刷完了タイミングとして算出する。
【0071】
S1107の処理が完了すると、主制御部101は、次ページの描画情報の生成処理が、前ページの印刷完了タイミングまでに完了するように、即ち、前ページの印刷出力が完了した後、間を空けずに次ページの印刷出力を開始できるように、次ページの描画情報を生成するための画像処理部104を制御するコアの数を決定する(S1108)。そして、S1105と同様に、次ページについて描画情報の生成及び送信が実行される(S1109)。S1109の処理が完了すると、主制御部101は、S1106から処理を繰り返す。
【0072】
S1106〜S1109の処理を繰り返した結果、ジョブ2の全てのページについて描画情報の生成処理が完了し、残ページが無くなると(S1106/NO)、主制御部101は処理を終了する。
【0073】
図11の動作タイミングを図12に示す。本実施形態に係る画像形成装置1においても、図12に示すように、ジョブ1、ジョブ2の順番で連続して印刷出力が実行される。従って、プリントエンジン160のPPMが最大限に発揮され、印刷出力が完了するまでの時間を最短にすることができる。
【0074】
また、ジョブ2が入力された後、ジョブ1の印刷出力の完了までに長く時間がかかる場合、実施の形態1のように、ジョブ2に対しても頁出力時間と頁描画情報生成時間との比較によりコア数を決定すると、図13に示すように、ジョブ2について、描画情報の生成処理のみが複数ページ分完了して印刷出力が実行されず、非効率な動作となることが有り得る。
【0075】
これに対して、本実施形態の場合、ジョブ2の描画情報の生成に際しては、頁出力時間と頁描画情報生成時間との比較ではなく、印刷出力を開始することが可能となるタイミングまでに描画情報の生成が完了するように、コア数を決定する。これにより、図13に示すような非効率な動作が回避され、必要最低限のコア数による効率的な動作が実現される。
【0076】
尚、図11におけるS1102においては、ジョブ1の印刷出力の完了タイミングを計算する際、頁描画情報生成時間が頁出力時間よりも長い場合を想定していない。これは、頁描画情報生成時間が頁出力時間よりも長い場合というのは、割り当て可能なコアを全てジョブ1の描画情報の生成処理に割り当てても尚、頁描画情報生成時間が頁出力時間を上回る場合であり、そもそもジョブ2に対して割り当てるコアが残っていないため、考慮する必要がないからである。即ち、図11の処理は、ジョブ1の実行中にジョブ2が入力された場合において、割り当て可能な待機状態のコアが有る場合にのみ実行される。
【0077】
ジョブ1の実行中にジョブ2が入力された場合において、割り当て可能な待機状態のコアが1つである場合は、図11の処理を実行するまでもなく、その1つのコアをジョブ2の描画情報の生成処理に割り当てれば良いため、図11の処理は実行されない。即ち、図11の処理は、ジョブ1の実行中にジョブ2が入力された場合において、割り当て可能な待機状態のコアが2つ以上有る場合にのみ実行される。
【0078】
その他の実施形態.
上記実施形態においては、図5において説明したように、頁出力時間と頁描画情報生成時間との比較に基づいてコア数が決定される。これは、上述したように、頁描画情報生成時間は、プリントエンジン160のPPMが最大限に発揮される頁出力時間以下に短縮する必要が無いからである。しかしながら、1ページ目の印刷出力は、1ページ目の描画情報の生成処理が完了した後に実行されるため、1ページの描画情報の生成処理は可能な限り早く完了することが好ましい。
【0079】
従って、1ページ目の描画情報を生成する際の画像処理部104には全てのコアを割り当て、2ページ目以降の描画情報の生成に係る画像処理部104には、上記と同様に頁出力時間と頁描画情報生成時間との比較に基づいてコア数を決定して割り当てるようにしても良い。これにより、印刷ジョブが入力されてから1ページ目の印刷出力が開始されるまでの時間を短縮することができ、その結果、印刷出力が完了するタイミングを早めることができる。
【0080】
また、上記実施形態においては、印刷ジョブとして入力されたPDLに基づいて頁描画情報生成時間を予測する場合を例として説明した。しかしながら、PDLの状態では、頁描画情報生成時間として正確な値を予測することが困難である。ここで、入力されたPDL形式の印刷ジョブは、実際の描画情報の生成処理の前に、PDL解析によってディスプレイリストに変換される。このディスプレイリストの状態であれば、より正確な頁描画情報生成時間を予測することが可能である。従って、図5のS502における頁描画情報生成時間の予測処理は、入力された印刷ジョブに対してPDL解析を実行し、ディスプレイリストを生成した後に実行しても良い。
【符号の説明】
【0081】
1 画像形成装置、
2 PC、
10 CPU、
11 第1コア、
12 第2コア、
13 第3コア、
14 第4コア、
20 RAM、
30 ROM、
40 エンジン、
50 HDD、
60 I/F、
70 LCD、
80 操作部、
90 バス、
100 コントローラ、
101 主制御部、
102 エンジン制御部、
103 入出力制御部、
104 画像処理部、
105 操作表示制御部、
110 ADF、
120 スキャナユニット、
130 排紙トレイ、
140 ディスプレイパネル、
150 給紙テーブル、
160 プリントエンジン、
170 排紙トレイ、
180 ネットワークI/F
【先行技術文献】
【特許文献】
【0082】
【特許文献1】特開2007−73005号公報
【技術分野】
【0001】
本発明は、画像形成装置、画像形成装置の制御方法及び制御プログラムに関し、特に、画像形成出力を実行するための描画情報の生成処理を複数の演算手段によって実行可能な場合の画像処理に関する。
【背景技術】
【0002】
近年、情報の電子化が推進される傾向にあり、電子化された情報の出力に用いられるプリンタやファクシミリ及び書類の電子化に用いるスキャナ等の画像処理装置は欠かせない機器となっている。このような画像処理装置は、撮像機能、画像形成機能及び通信機能等を備えることにより、プリンタ、ファクシミリ、スキャナ、複写機として利用可能な複合機として構成されることが多い。
【0003】
このような画像処理装置のうち、電子化された情報の出力に用いるプリンタにおいては、入力された画像情報に基づいてプリントエンジンが画像形成出力を実行するための描画情報を生成する画像処理が行われる。この画像処理は、CPU(Central Processing Unit)等の演算手段がソフトウェアに従って動作することにより実行される。
【0004】
近年の情報処理機器の発展により複数の演算手段が含まれるマルチコアCPU等の演算手段が普及している。マルチコアCPUにおいては、複数のコアが夫々独立して動作するため、処理を並列化することにより、処理時間を短縮することが可能になる。従って、上記の画像処理もマルチコアCPUに対応させることにより、処理を効率化することが望まれている。マルチコアCPUの性能を効率的に発揮させるためには、実行すべき処理に対して割り当てるコア数を適切に判断する必要がある。
【0005】
画像形成装置におけるマルチコア環境を活用するための方法として、複数の処理手段が、PDLコマンドからデータを読み出して画像データを生成する処理及び生成された画像データを印刷手段に送信する処理を順次実行する方法が提案されている(例えば、特許文献1参照)。
【発明の概要】
【発明が解決しようとする課題】
【0006】
特許文献1に開示された方法の場合、一の印刷ジョブが入力された場合において、その印刷ジョブに係る画像データの生成処理及び画像データの送信処理を効率的に処理することはできるが、画像形成装置全体の処理についての効率性は考慮されていない。例えば、印刷ジョブが入力された場合において、その印刷ジョブに係る画像データの生成処理及び画像データの送信処理に割り当てるコアの数と、他の処理のために待機するコアの数とのバランスを判断するようなことは行われていない。即ち、入力された印刷ジョブに関する処理以外の処理が考慮されていない。
【0007】
従って、従来のマルチコア対応の技術においては、印刷ジョブの実行中に、他の印刷ジョブ等の他の命令が入力された場合、先に入力された印刷ジョブのために割り当てられているコアに余力があるにも関わらず、後に入力された命令に対するレスポンスが遅れてしまうことが考えられる。また、様々な機能を含む複合機の場合、印刷ジョブに限らず、スキャンや複写等の様々な命令が入力されることが考えられるが、上記と同様に、装置全体の処理の効率化が考慮されていない場合、印刷ジョブの実行中に入力されたスキャンや複写等の命令に対するレスポンスが遅くなってしまう。
【0008】
本発明は、上記実情を考慮してなされたものであり、複数の演算手段を有する画像形成装置において、複数のコマンドが入力された場合の処理を効率化することを目的とする。
【課題を解決するための手段】
【0009】
上記課題を解決するために、本発明の一態様は、画像形成出力を実行するための画像処理を複数の演算手段によって実行可能な画像形成装置であって、前記画像形成出力の実行命令を取得する実行命令取得部と、前記演算手段が、前記画像形成出力において出力すべき画像の情報を生成するために要する時間を、前記画像の情報を生成するために動作する演算手段の数毎に予測する描画情報生成時間予測部と、前記予測された時間及び前記画像形成出力を実行する画像形成部の出力速度に関する情報に基づき、前記画像形成出力において出力される1ページ分の画像の情報を生成するために要する時間が、前記画像形成部による1ページ分の画像形成出力に要する時間以下となるように、前記画像の情報を生成するために動作する演算手段の数を決定する演算手段数決定部と、前記決定された数の演算手段に、前記取得された実行命令に基づいて前記画像形成出力において出力すべき画像の情報を生成させる演算手段制御部とを含むことを特徴とする。
【0010】
ここで、前記演算手段数決定部は、前記画像形成出力において出力される1ページ分の画像の情報を生成するために要する時間が、前記画像形成部による1ページ分の画像形成出力に要する時間以下となる前記演算手段の数のうち、最も少ない数を前記画像の情報を生成するために動作する演算手段の数として決定することが好ましい。
【0011】
また、前記描画情報生成時間予測部は、前記画像形成出力において出力されるページ数に基づき、前記画像形成出力において出力すべき1ページ分の画像の情報を生成するために要する時間を、前記画像の情報を生成するために動作する演算手段の数毎に予測し、前記演算手段数決定部は、前記画像形成部が1ページ分の画像形成出力に要する時間の情報を予め記憶していることが好ましい。
【0012】
また、前記描画情報生成時間予測部は、前記実行命令の情報形式、前記出力すべき画像の彩色に関する情報、前記実行命令の情報量のうち少なくとも1つに基づき、前記出力すべき画像の情報を生成するために要する時間を予測することが好ましい。
【0013】
また、前記描画情報生成時間予測部は、前記実行命令の情報形式、前記出力すべき画像の彩色に関する情報、前記実行命令の情報量と、前記画像の情報を生成するために動作する演算手段の数毎の前記画像の情報を生成するために要する時間とが関連付けられた画像生成時間予測情報を参照して前記画像の情報を生成するために要する時間を予測することが好ましい。
【0014】
また、一の前記実行命令に係る画像形成出力の実行中において前記実行命令取得部が他の実行命令を取得した場合、前記描画情報生成時間予測部が、前記他の実行命令に係る画像形成出力において出力すべき画像の情報を生成するために要する時間を、前記画像の情報を生成するために動作する演算手段の数毎に予測し、前記演算手段決定部が、前記予測された時間に基づいて前記他の実行命令に係る画像形成出力において出力すべき画像の情報を生成するために動作する演算手段の数を決定することが好ましい。
【0015】
また、前記演算手段数決定部は、前記実行中の画像形成出力が完了するまでに前記他の実行命令に係る画像形成出力の1ページ目の画像の情報の生成が完了するように、演算手段の数を決定することが好ましい。
【0016】
また、前記演算手段数決定部は、前記他の実行命令に係る画像形成出力の2ページ目以降の画像情報の生成が、その前のページの画像形成出力が完了するまでに完了するように演算手段の数を決定することが好ましい。
【0017】
また、前記演算手段数決定部は、前記複数の演算手段の全てを前記画像形成出力において出力される1ページ目の画像の情報を生成するために動作する演算手段として決定し、前記画像形成出力において出力される2ページ目以降の画像の情報を生成するために動作する演算手段の数を、前記画像形成出力において出力される1ページ分の画像の情報を生成するために要する時間が、前記画像形成部による1ページ分の画像形成出力に要する時間以下となるように決定することが好ましい。
【0018】
また、本発明の他の態様は、画像形成出力を実行するための画像処理を複数の演算手段によって実行可能な画像形成装置の制御方法であって、実行命令取得部が、前記画像形成出力の実行命令を取得し、描画情報生成時間予測部が、前記演算手段が前記画像形成出力において出力すべき画像の情報を生成するために要する時間を、前記画像の情報を生成するために動作する演算手段の数毎に予測し、演算手段数決定部が、前記予測された時間及び前記画像形成出力を実行する画像形成部の出力速度に関する情報に基づき、前記画像形成出力において出力される1ページ分の画像の情報を生成するために要する時間が、前記画像形成部による1ページ分の画像形成出力に要する時間以下となるように、前記画像の情報を生成するために動作する演算手段の数を決定し、演算手段制御部が、前記決定された数の演算手段に、前記取得された実行命令に基づいて前記画像形成出力において出力すべき画像の情報を生成させることを特徴とする。
【0019】
また、本発明の更に他の態様は、画像形成出力を実行するための画像処理を複数の演算手段によって実行可能な画像形成装置の制御プログラムであって、前記画像形成出力の実行命令を取得するステップと、前記演算手段が前記画像形成出力において出力すべき画像の情報を生成するために要する時間を、前記画像の情報を生成するために動作する演算手段の数毎に予測するステップと、前記予測された時間及び前記画像形成出力を実行する画像形成部の出力速度に関する情報に基づき、前記画像形成出力において出力される1ページ分の画像の情報を生成するために要する時間が、前記画像形成部による1ページ分の画像形成出力に要する時間以下となるように、前記画像の情報を生成するために動作する演算手段の数を決定するステップと、前記決定された数の演算手段に、前記取得された実行命令に基づいて前記画像形成出力において出力すべき画像の情報を生成させるステップとを前記画像形成装置に実行させることを特徴とする。
【発明の効果】
【0020】
本発明によれば、複数の演算手段を有する画像形成装置において、複数のコマンドが入力された場合の処理を効率化することが可能となる。
【図面の簡単な説明】
【0021】
【図1】本発明の実施形態に係る画像形成装置の運用形態を示す図である。
【図2】本発明の実施形態に係る画像形成装置のハードウェア構成を示すブロック図である。
【図3】本発明の実施形態に係る画像形成装置の機能構成を示す図である。
【図4】本発明の比較例に係る描画情報の生成処理及び印刷出力処理のタイミングを示す図である。
【図5】本発明の実施形態に係る画像形成装置の動作を示すフローチャートである。
【図6】PDL種類と描画情報の生成処理の負荷との関係を示す図である。
【図7】本発明の実施形態に係る頁描画情報生成時間判断用テーブルに含まれる情報の例を示す図である。
【図8】本発明の実施形態に係る描画情報の生成処理及び印刷出力処理のタイミングを示す図である。
【図9】本発明の実施形態に係る描画情報の生成処理及び印刷出力処理のタイミングを示す図である。
【図10】本発明の実施形態に係る画像形成装置の動作を示すフローチャートである。
【図11】本発明の実施形態に係る画像形成装置の動作を示すフローチャートである。
【図12】本発明の実施形態に係る描画情報の生成処理及び印刷出力処理のタイミングを示す図である。
【図13】本発明の比較例に係る描画情報の生成処理及び印刷出力処理のタイミングを示す図である。
【発明を実施するための形態】
【0022】
実施の形態1.
以下、図面を参照して、本発明の実施形態を詳細に説明する。本実施形態においては、プリンタ、スキャナ、複写機等の機能を含む複合機(MFP:Multi Function Peripheral)としての画像形成装置を例として説明する。図1は、本実施の形態に係る情報処理装置としてのPC(Personal Computer)2及び画像形成装置1をふくむネットワークの接続状態を示す図である。図1に示すように、本実施形態に係るPC2は、LAN(Local Area Network)等のネットワークを介して画像形成装置1と接続されている。
【0023】
PC2は、ユーザが操作する情報処理端末であり、一般的な情報処理装置の構成を有する。画像形成装置1は、撮像機能、画像形成機能及び通信機能等を備えることにより、プリンタ、ファクシミリ、スキャナ、複写機として利用可能な複合機である。尚、図1においては、画像形成装置1及びPC2が、夫々1台設けられている場合を例としているが、夫々複数設けられていても良い。
【0024】
次に、本実施形態に係る画像形成装置1のハードウェア構成について説明する。図2は、本実施形態に係る画像形成装置1のハードウェア構成を示すブロック図である。図2に示すように、本実施形態に係る画像形成装置1は、一般的なサーバやPC等の情報処理端末と同様の構成に加えて、画像形成を実行するエンジンを有する。即ち、本実施形態に係る画像形成装置1は、CPU(Central Processing Unit)10、RAM(Random Access Memory)20、ROM(Read Only Memory)30、エンジン40、HDD(Hard Disk Drive)50及びI/F60がバス90を介して接続されている。また、I/F60にはLCD(Liquid Crystal Display)70及び操作部80が接続されている。
【0025】
CPU10は演算手段であり、画像形成装置1全体の動作を制御する。また、本実施形態に係るCPU10は、クアッドコアCPUであり、第1コア11、第2コア12、第3コア13及び第4コア14を含む。第1コア11、第2コア12、第3コア13及び第4コア14が夫々独立して動作することにより、並列処理が可能となり、処理時間を短縮することが可能となる。RAM20は、情報の高速な読み書きが可能な揮発性の記憶媒体であり、CPU10が情報を処理する際の作業領域として用いられる。ROM30は、読み出し専用の不揮発性記憶媒体であり、ファームウェア等のプログラムが格納されている。エンジン40は、画像形成装置1において実際に画像形成を実行する機構である。
【0026】
HDD50は、情報の読み書きが可能な不揮発性の記憶媒体であり、OS(Operating System)や各種の制御プログラム、アプリケーション・プログラム等が格納されている。I/F60は、バス90と各種のハードウェアやネットワーク等を接続し制御する。LCD70は、ユーザが画像形成装置1の状態を確認するための視覚的ユーザインタフェースである。操作部80は、キーボードやマウス等、ユーザが画像形成装置1に情報を入力するためのユーザインタフェースである。
【0027】
このようなハードウェア構成において、ROM30やHDD50若しくは図示しない光学ディスク等の記録媒体に格納されたプログラムがRAM20に読み出され、CPU10の制御に従って動作することにより、ソフトウェア制御部が構成される。このようにして構成されたソフトウェア制御部と、ハードウェアとの組み合わせによって、本実施形態に係る画像形成装置1の機能が実現される。
【0028】
次に、図3を参照して、本実施形態に係る画像形成装置1の機能構成について説明する。図3は、本実施形態に係る画像形成装置1の機能構成を示すブロック図である。図3に示すように、本実施形態に係る画像形成装置1は、コントローラ100、ADF(Auto Documennt Feeder:原稿自動搬送装置)110、スキャナユニット120、排紙トレイ130、ディスプレイパネル140、給紙テーブル150、プリントエンジン160、排紙トレイ170及びネットワークI/F180を有する。
【0029】
また、コントローラ100は、主制御部101、エンジン制御部102、入出力制御部103、画像処理部104及び操作表示制御部105を有する。図3に示すように、本実施形態に係る画像形成装置1は、スキャナユニット120、プリントエンジン160を有する複合機として構成されている。尚、図3においては、電気的接続を実線の矢印で示しており、用紙の流れを破線の矢印で示している。
【0030】
ディスプレイパネル140は、画像形成装置1の状態を視覚的に表示する出力インタフェースであると共に、タッチパネルとしてユーザが画像形成装置1を直接操作し若しくは画像形成装置1に対して情報を入力する際の入力インタフェース(操作部)でもある。ネットワークI/F180は、画像形成装置1がネットワークを介して他の機器と通信するためのインタフェースであり、Ethernet(登録商標)やUSB(Universal Serial Bus)インタフェースが用いられる。
【0031】
コントローラ100は、ソフトウェアとハードウェアとの組み合わせによって構成される。具体的には、ROM30や不揮発性メモリ並びにHDD50や光学ディスク等の不揮発性記録媒体に格納されたファームウェア等の制御プログラムが、RAM20等の揮発性メモリ(以下、メモリ)にロードされ、CPU10の制御に従って構成されるソフトウェア制御部と集積回路などのハードウェアとによってコントローラ100が構成される。コントローラ100は、画像形成装置1全体を制御する制御部として機能する。
【0032】
主制御部101は、コントローラ100に含まれる各部を制御する役割を担い、コントローラ100の各部に命令を与える。エンジン制御部102は、プリントエンジン160やスキャナユニット120等を制御若しくは駆動する駆動手段としての役割を担う。入出力制御部103は、ネットワークI/F180を介して入力される信号や命令を主制御部101に入力する。また、主制御部101は、入出力制御部103を制御し、ネットワークI/F180を介して他の機器にアクセスする。
【0033】
画像処理部104は、主制御部101の制御に従い、入力された印刷ジョブに含まれる印刷情報に基づいて描画情報を生成する。この描画情報とは、画像形成部であるプリントエンジン160が画像形成動作において形成すべき画像を描画するための情報である。また、印刷ジョブに含まれる印刷情報とは、PC等の情報処理装置にインストールされたプリンタドライバによって画像形成装置1が認識可能な形式に変換された情報であり、PDL(Page Description Language)によって記述された情報である。換言すると、上記印刷情報とは、画像形成装置1に画像形成出力を開始させる実行命令である。尚、本実施形態においては、ページ記述言語としてPDLを用いる場合を例とするが、他の言語であっても良い。
【0034】
本実施形態においては、画像処理部104による上記描画情報の生成処理を、マルチコアのCPU10の第1コア11、第2コア12、第3コア13及び第4コア14に好適に割り振ることが要旨となる。画像処理部104の機能については、後に詳述する。操作表示制御部105は、ディスプレイパネル140に情報表示を行い若しくはディスプレイパネル140を介して入力された情報を主制御部101に通知する。
【0035】
画像形成装置1がプリンタとして動作する場合は、まず、入出力制御部103がネットワークI/F180を介して印刷ジョブを受信する。入出力制御部103は、受信した印刷ジョブを主制御部101に転送する。主制御部101は、印刷ジョブを受信すると、画像処理部104を制御して、印刷ジョブに含まれる印刷情報に基づいて描画情報を生成させる。
【0036】
画像処理部104によって描画情報が生成されると、エンジン制御部102は、生成された描画情報に基づき、給紙テーブル150から搬送される用紙に対して画像形成を実行する。即ち、プリントエンジン160が画像形成部として機能する。プリントエンジン160の具体的態様としては、インクジェット方式による画像形成機構や電子写真方式による画像形成機構等を用いることが可能である。プリントエンジン160によって画像形成が施された文書は排紙トレイ170に排紙される。
【0037】
画像形成装置1がスキャナとして動作する場合は、ユーザによるディスプレイパネル140の操作若しくはネットワークI/F180を介して外部のクライアント用の情報処理端末等から入力されるスキャン実行指示に応じて、操作表示制御部105若しくは入出力制御部103が主制御部101にスキャン実行信号を転送する。主制御部101は、受信したスキャン実行信号に基づき、エンジン制御部102を制御する。
【0038】
エンジン制御部102は、ADF110を駆動し、ADF110にセットされた撮像対象原稿をスキャナユニット120に搬送する。また、エンジン制御部102は、スキャナユニット120を駆動し、ADF110から搬送される原稿を撮像する。また、ADF110に原稿がセットされておらず、スキャナユニット120に直接原稿がセットされた場合、スキャナユニット120は、エンジン制御部102の制御に従い、セットされた原稿を撮像する。即ち、スキャナユニット120が撮像部として動作する。
【0039】
撮像動作においては、スキャナユニット120に含まれるCCD等の撮像素子が原稿を光学的に走査し、光学情報に基づいて生成された撮像情報が生成される。エンジン制御部102は、スキャナユニット120が生成した撮像情報を画像処理部104に転送する。画像処理部104は、主制御部101の制御に従い、エンジン制御部102から受信した撮像情報に基づき画像情報を生成する。画像処理部104が生成した画像情報はHDD40等の画像形成装置1に装着された記憶媒体に保存される。即ち、スキャナユニット120、エンジン制御部102及び画像処理部104が連動して、原稿読み取り部として機能する。
【0040】
画像処理部1104によって生成された画像情報は、ユーザの指示に応じてそのままHDD40等に格納され若しくは入出力制御部103及びネットワークI/F180を介して外部の装置に送信される。即ち、スキャナユニット120及びエンジン制御部102が画像入力部として機能する。
【0041】
また、画像形成装置1が複写機として動作する場合は、エンジン制御部102がスキャナユニット120から受信した撮像情報若しくは画像処理部104が生成した画像情報に基づき、画像処理部104が描画情報を生成する。その描画情報に基づいてプリンタ動作の場合と同様に、エンジン制御部102がプリントエンジン160を駆動する。
【0042】
このような画像形成装置1において、本実施形態に係る要旨は、画像処理部104が描画情報を生成する際に、画像処理部104を構成するソフトウェァモジュールを制御するコアの数を判断することにある。以下、本実施形態に係る画像形成装置1の動作について説明する。
【0043】
上述したように、印刷ジョブが入力されてから印刷出力が完了するまでには、画像処理部104による描画データの生成処理及びプリントエンジン160による出力処理が必要である。ここで、プリントエンジン160による出力速度は、プリントエンジン160の性能、即ちPPM(Page Per Minute)によって定まる。換言すると、一の電子写真方式の画像形成装置において、プリントエンジン160が1ページの画像形成出力を実行するために要する時間(以降、頁出力時間とする)は不変である。
【0044】
これに対して、画像処理部104による描画データの生成処理に要する時間は、画像処理部104を構成するソフトウェァモジュールを制御するコアの数を増やすことにより、短縮することが可能である。即ち、画像処理部104が、1ページ分の描画情報を生成するために要する時間(以降、頁描画情報生成時間とする)は、画像処理部104を制御するコアの数を増やすことにより、短縮可能である。
【0045】
しかしながら、図4に示すように、頁描画情報生成時間を頁出力時間よりも短くしたとしても、頁出力時間がボトルネックとなり、画像形成出力が完了するまでの時間をそれ以上短縮することはできない。
【0046】
本実施形態においては、一の印刷ジョブにおいて画像処理部104に描画情報の生成処理を実行させるために画像処理部104を制御するためのコアを割り当てる際、頁描画情報生成時間が頁出力時間よりも短くなるコア数であって且つ可能な限り少ない数のコアを割り当てることにより、一の印刷ジョブが完了するまでの時間を短縮しながらも、他の命令にも対応可能なように待機するコアを確保する。これにより、画像形成装置1全体の処理を効率化することができる。
【0047】
上述したように、画像処理部104は、主制御部101の制御に従って描画情報の生成を実行する。即ち、本実施形態においては、主制御部101が、画像処理部104を制御するコア数の決定を行う。以下、本実施形態に係る画像形成装置1において印刷ジョブが入力された際の動作について説明する。
【0048】
図5は、本実施形態に係る画像形成装置1において、印刷ジョブが入力された際の動作を示すフローチャートである。図5に示すように、先ず、主制御部101が入出力制御部103から印刷ジョブを取得する(S501)。即ち、主制御部101が、画像形成出力の実行命令を取得する実行命令取得部として機能する。主制御部101は、印刷ジョブを取得すると、取得した印刷ジョブに含まれる情報に基づいて頁描画情報生成時間を予測する(S502)。即ち、主制御部101が、描画情報生成時間予測部として機能する。S502における処理について、以下に説明する。
【0049】
S502において、主制御部101は、PDLの種類、カラー若しくはモノクロの別、出力されるページ数に対するデータサイズの割合等の情報に基づいて、頁描画情報生成時間を予測する。図6は、他の条件が同一若しくは相当の内容である場合の、PDL種類に応じた処理負荷を示す図である。
【0050】
図6に示すように、PCL(Printer Command Language)、RPCS(Remote Procedure Call System)形式のPDLの処理負荷は比較的軽く、PDF(Portable Document Format)、XPS(XML Paper Specification)形式のPDLの処理負荷は比較的重い。従って、S502において頁描画情報生成時間を予測する場合、主制御部101は、印刷ジョブのデータサイズやページ数だけでなく、PDL種類をも加味して頁描画情報生成時間を予測する必要がある。
【0051】
このような前提において、本実施形態に係る主制御部101は、上述したPDLの種類、カラー若しくはモノクロの別、出力されるページ数に対するデータサイズの割合等の情報と、コア数毎の処理時間とが関連付けられたテーブル(以降、頁描画情報生成時間判断用テーブルとする)を参照することにより、頁描画情報生成時間を予測する。本実施形態に係る頁描画情報生成時間判断用テーブルに含まれる情報の例について、図7に示す。
【0052】
図7に示すように、本実施形態に係る頁描画情報生成時間判断用テーブルにおいては、“PDL種類”、“カラー/モノクロ”、“データサイズ/ジョブのページ数”の情報と、コアの数に応じた頁描画情報生成時間とが関連付けられて記憶されている。即ち、頁描画情報生成時間判断用テーブルは、画像生成時間予測情報として用いられる。尚、“カラー/モノクロ”はカラー若しくはモノクロの別、“データサイズ/ジョブのページ数”は、出力されるページ数に対するデータサイズの割合を夫々示している。
【0053】
図7に示すようなページ描画情報生成時間判断用テーブルは、例えば、夫々の条件、即ち、“PDL種類”、“カラー/モノクロ”、“データサイズ/ジョブのページ数”の各値における組み合わせについて、画像処理部104に描画情報を生成させて測定することにより生成することができる。主制御部101は、このようなテーブルを参照することによりテーブル中の一行を特定し、コア数毎のページ描画情報生成時間の予測値を取得する。これにより、S502の処理が完了する。
【0054】
尚、上記夫々の条件のうち、“データサイズ/ジョブのページ数”について、全ての値を予め測定しておくと情報量が膨大となり現実的ではないため、図7に示すように、“5Kbyte”、“10Kbyte”、“15Kbyte”のように所定間隔毎に測定する。そして、S502において、主制御部101は、入力された印刷ジョブにおける出力されるページ数に対するデータサイズの割合が、0〜5Kbyteの範囲内であれば、“5Kbyte”、5〜10Kbyteの範囲内であれば、“10Kbyte”、10〜15Kbyteの範囲内であれば“15Kbyte”であるものとして頁描画情報生成時間を判断する。
【0055】
頁描画情報生成時間を予測すると、主制御部101は、上述した頁出力時間を参照し、可能な限り少ないコア数であって、頁描画情報生成時間が頁出力時間よりも短くなるコア数を決定する(S503)。即ち、主制御部101が、演算手段数決定部として機能する。そして、主制御部101は、このように決定したコア数を、画像処理部104を制御するためのコアとして割り当てる。即ち、主制御部101が、演算手段制御部として機能する。そして、このように割り当てられたコアによって制御された画像処理部104により、描画情報の生成処理が実行される(S504)。
【0056】
画像処理部104は、印刷ジョブに含まれる各ページについて描画情報の生成処理を完了すると、エンジン制御部102に描画情報を送信する(S505)。画像処理部104から描画情報を受信したエンジン制御部102は、プリントエンジン160を制御し、印刷出力を実行する(S506)。S504〜S506の処理は、印刷ジョブに含まれる各ページの回数繰り返され、全てのページの印刷出力が実行されると、画像形成装置1は処理を終了する。
【0057】
次に、図5に示すような画像形成装置1の動作による効果について説明する。図8は、画像処理部104による描画情報の生成処理及びプリントエンジン160による印刷出力処理のタイミングを示す図である。上述したように、図5の処理により、頁描画情報生成時間が頁出力時間よりも短くなるようにコア数が決定される。これにより、図8に示すように、1ページ目の描画情報が生成されてプリントエンジン160が印刷出力を開始した後は、間が空くことなく、連続して印刷出力が実行されるため、プリントエンジン160のPPMが最大限に発揮され、印刷出力が完了するまでの時間を最短にすることができる。また、図4に示すように、描画情報の生成処理がのみが完了して印刷出力がボトルネックとなるような非効率な状態も生じない。
【0058】
図9は、一の印刷ジョブの実行中に他の印刷ジョブが入力された場合の、描画情報の生成処理及び印刷出力処理のタイミングを示す図である。図9に示すように、ジョブ1についての描画情報の生成処理中にジョブ2が入力された場合、図5において説明した動作と同様の動作が実行され、ジョブ1の描画情報の生成処理には割り当てられていないコアがジョブ2の描画情報の生成処理のために割り当てられる。そして、図9に示すように、ジョブ1の描画情報の生成処理と並行して、ジョブ2の描画情報の生成処理が実行される。
【0059】
一の印刷ジョブの実行中に他の印刷ジョブが入力された場合の動作について、図10を参照して説明する。図10は、一の印刷ジョブの実行中に他の印刷ジョブが入力された場合の動作を示すフローチャートである。図10に示すように、ジョブ2が入力されると(S1001)、図5のS502と同様に、主制御部101が、頁描画情報生成時間を予測し(S1002)、S503と同様にコア数を決定する(S1003)。
【0060】
コア数を決定すると、主制御部101は、決定したコア数が、現在待機中のコア数で足りるか否か判断する(S1004)。S1003の判断の結果、コア数が足りる場合(S1004/YES)、主制御部101は、決定したコア数をジョブ2の描画情報の生成処理を行う画像処理部104を制御するために割り当て(S1005)、処理を終了する。
【0061】
他方、コア数が足りない場合(S1004/NO)、主制御部101は、待機中のコアを全てジョブ2の描画情報の生成処理に割り当てる(S1006)。その後、ジョブ1についての描画情報の生成処理が完了し(S1007)、ジョブ1の描画情報の生成処理に割り当てられていたコアが待機状態となったら、主制御部101は、図9にも示すように、ジョブ1に割り当てられていたコアをジョブ2に再度割り当て(S1008)、処理を終了する。
【0062】
このような処理により、図9に示すように、ジョブ1についての印刷出力が完了した後、連続してジョブ2の印刷出力が実行されるため、プリントエンジン160のPPMが発揮され、印刷出力が完了するまでの時間を最短にすることができる。
【0063】
以上説明したように、本実施形態に係る画像形成装置1においては、印刷ジョブが入力された場合に、複数のコアを全て描画情報の生成処理に割り当てるのではなく、頁描画情報生成時間がプリントエンジン160の頁出力時間よりも短くなる最低限のコア数を決定して割り当てる。これにより、プリントエンジン160は、印刷出力を開始した後、間を空けることなく連続して印刷出力を実行することができるため、PPMが最大限に発揮される。
【0064】
また、最低限のコア数を割り当てるため、全てのコアを割り当てずとも頁描画情報生成時間が頁出力時間よりも短くなる場合、残りのコアは割り当てられずに待機状態となる。これにより、他の印刷ジョブが入力された場合に、実行中の描画情報の生成処理と並行して、新たに入力された印刷ジョブについて描画情報の生成処理を実行することができる。
【0065】
また、新たに印刷ジョブが入力された場合に限らず、操作表示制御部105によるディスプレイパネル140の制御処理や、入出力制御部103によるネットワークI/F180を介した通信処理並びに、スキャナユニット120によるスキャンによって入力される撮像情報の画像処理部104による画像処理等、他の処理を並行して実行することも可能であり、画像形成装置1全体の処理を効率化することができる。
【0066】
実施の形態2.
実施の形態1においては、図9、図10において説明したように、一の印刷ジョブの実行中に他の印刷ジョブが入力された場合、最初の印刷ジョブと同様に、頁描画情報生成時間と頁出力時間との関係に基づいてコア数を決定する例を説明した。本実施形態においては、他の印刷ジョブが入力された場合の他の態様について説明する。尚、実施の形態1と同様の符号を付す構成については、同一又は相当部を示すものとし、詳細な説明を省略する。
【0067】
図11は、本実施形態に係る画像形成装置において、一の印刷ジョブの実行中に他の印刷ジョブが入力された場合の動作を示すフローチャートである。図11に示すように、ジョブ2が入力されると(S1101)、主制御部101は、ジョブ1の印刷出力が全て完了するタイミングを計算する(S1102)。S1102において、主制御部101は、頁出力時間にジョブ1の頁数を乗じた時間をジョブ1の印刷出力時間として算出し、プリントエンジン160がジョブ1の印刷出力を開始したタイミングからジョブ1の印刷出力時間が経過したタイミングを、ジョブ1の印刷出力が全て完了するタイミングとして算出する。
【0068】
S1102の処理が完了すると、主制御部101は、図5のS502と同様に、ジョブ2について頁描画情報生成時間を予測する(S1103)。そして、主制御部101は、S1103において予測した頁描画情報生成時間に基づき、ジョブ2の1ページ目の描画情報の生成処理がS1102において算出したタイミングまでに完了するように、即ち、頁描画情報生成時間が、現在時刻からS1102において算出したタイミングまでの期間よりも短くなるように、画像処理部104を制御するコアの数を決定する(S1104)。
【0069】
S1104によりジョブ2の1ページ目の描画情報を生成するための画像処理部104を制御するコア数が決定されると、決定されたコア数が割り当てられ、ジョブ2の1ページ目の描画情報の生成及び送信が実行される(S1105)。ジョブ2の1ページ目について描画情報生成が完了すると、主制御部101は、まだ描画情報が生成されていない残ページが有るか否か判断する(S1106)。
【0070】
残ページが有る場合(S1106/YES)、既に描画情報を生成した前ページ(ここでは、1ページ目)の印刷完了タイミングを計算する(S1107)。S1107においては、S1102において計算したタイミングから頁出力時間が経過したタイミングを、前ページの印刷完了タイミングとして算出する。
【0071】
S1107の処理が完了すると、主制御部101は、次ページの描画情報の生成処理が、前ページの印刷完了タイミングまでに完了するように、即ち、前ページの印刷出力が完了した後、間を空けずに次ページの印刷出力を開始できるように、次ページの描画情報を生成するための画像処理部104を制御するコアの数を決定する(S1108)。そして、S1105と同様に、次ページについて描画情報の生成及び送信が実行される(S1109)。S1109の処理が完了すると、主制御部101は、S1106から処理を繰り返す。
【0072】
S1106〜S1109の処理を繰り返した結果、ジョブ2の全てのページについて描画情報の生成処理が完了し、残ページが無くなると(S1106/NO)、主制御部101は処理を終了する。
【0073】
図11の動作タイミングを図12に示す。本実施形態に係る画像形成装置1においても、図12に示すように、ジョブ1、ジョブ2の順番で連続して印刷出力が実行される。従って、プリントエンジン160のPPMが最大限に発揮され、印刷出力が完了するまでの時間を最短にすることができる。
【0074】
また、ジョブ2が入力された後、ジョブ1の印刷出力の完了までに長く時間がかかる場合、実施の形態1のように、ジョブ2に対しても頁出力時間と頁描画情報生成時間との比較によりコア数を決定すると、図13に示すように、ジョブ2について、描画情報の生成処理のみが複数ページ分完了して印刷出力が実行されず、非効率な動作となることが有り得る。
【0075】
これに対して、本実施形態の場合、ジョブ2の描画情報の生成に際しては、頁出力時間と頁描画情報生成時間との比較ではなく、印刷出力を開始することが可能となるタイミングまでに描画情報の生成が完了するように、コア数を決定する。これにより、図13に示すような非効率な動作が回避され、必要最低限のコア数による効率的な動作が実現される。
【0076】
尚、図11におけるS1102においては、ジョブ1の印刷出力の完了タイミングを計算する際、頁描画情報生成時間が頁出力時間よりも長い場合を想定していない。これは、頁描画情報生成時間が頁出力時間よりも長い場合というのは、割り当て可能なコアを全てジョブ1の描画情報の生成処理に割り当てても尚、頁描画情報生成時間が頁出力時間を上回る場合であり、そもそもジョブ2に対して割り当てるコアが残っていないため、考慮する必要がないからである。即ち、図11の処理は、ジョブ1の実行中にジョブ2が入力された場合において、割り当て可能な待機状態のコアが有る場合にのみ実行される。
【0077】
ジョブ1の実行中にジョブ2が入力された場合において、割り当て可能な待機状態のコアが1つである場合は、図11の処理を実行するまでもなく、その1つのコアをジョブ2の描画情報の生成処理に割り当てれば良いため、図11の処理は実行されない。即ち、図11の処理は、ジョブ1の実行中にジョブ2が入力された場合において、割り当て可能な待機状態のコアが2つ以上有る場合にのみ実行される。
【0078】
その他の実施形態.
上記実施形態においては、図5において説明したように、頁出力時間と頁描画情報生成時間との比較に基づいてコア数が決定される。これは、上述したように、頁描画情報生成時間は、プリントエンジン160のPPMが最大限に発揮される頁出力時間以下に短縮する必要が無いからである。しかしながら、1ページ目の印刷出力は、1ページ目の描画情報の生成処理が完了した後に実行されるため、1ページの描画情報の生成処理は可能な限り早く完了することが好ましい。
【0079】
従って、1ページ目の描画情報を生成する際の画像処理部104には全てのコアを割り当て、2ページ目以降の描画情報の生成に係る画像処理部104には、上記と同様に頁出力時間と頁描画情報生成時間との比較に基づいてコア数を決定して割り当てるようにしても良い。これにより、印刷ジョブが入力されてから1ページ目の印刷出力が開始されるまでの時間を短縮することができ、その結果、印刷出力が完了するタイミングを早めることができる。
【0080】
また、上記実施形態においては、印刷ジョブとして入力されたPDLに基づいて頁描画情報生成時間を予測する場合を例として説明した。しかしながら、PDLの状態では、頁描画情報生成時間として正確な値を予測することが困難である。ここで、入力されたPDL形式の印刷ジョブは、実際の描画情報の生成処理の前に、PDL解析によってディスプレイリストに変換される。このディスプレイリストの状態であれば、より正確な頁描画情報生成時間を予測することが可能である。従って、図5のS502における頁描画情報生成時間の予測処理は、入力された印刷ジョブに対してPDL解析を実行し、ディスプレイリストを生成した後に実行しても良い。
【符号の説明】
【0081】
1 画像形成装置、
2 PC、
10 CPU、
11 第1コア、
12 第2コア、
13 第3コア、
14 第4コア、
20 RAM、
30 ROM、
40 エンジン、
50 HDD、
60 I/F、
70 LCD、
80 操作部、
90 バス、
100 コントローラ、
101 主制御部、
102 エンジン制御部、
103 入出力制御部、
104 画像処理部、
105 操作表示制御部、
110 ADF、
120 スキャナユニット、
130 排紙トレイ、
140 ディスプレイパネル、
150 給紙テーブル、
160 プリントエンジン、
170 排紙トレイ、
180 ネットワークI/F
【先行技術文献】
【特許文献】
【0082】
【特許文献1】特開2007−73005号公報
【特許請求の範囲】
【請求項1】
画像形成出力を実行するための画像処理を複数の演算手段によって実行可能な画像形成装置であって、
前記画像形成出力の実行命令を取得する実行命令取得部と、
前記演算手段が、前記画像形成出力において出力すべき画像の情報を生成するために要する時間を、前記画像の情報を生成するために動作する演算手段の数毎に予測する描画情報生成時間予測部と、
前記予測された時間及び前記画像形成出力を実行する画像形成部の出力速度に関する情報に基づき、前記画像形成出力において出力される1ページ分の画像の情報を生成するために要する時間が、前記画像形成部による1ページ分の画像形成出力に要する時間以下となるように、前記画像の情報を生成するために動作する演算手段の数を決定する演算手段数決定部と、
前記決定された数の演算手段に、前記取得された実行命令に基づいて前記画像形成出力において出力すべき画像の情報を生成させる演算手段制御部とを含むことを特徴とする画像形成装置。
【請求項2】
前記演算手段数決定部は、前記画像形成出力において出力される1ページ分の画像の情報を生成するために要する時間が、前記画像形成部による1ページ分の画像形成出力に要する時間以下となる前記演算手段の数のうち、最も少ない数を前記画像の情報を生成するために動作する演算手段の数として決定することを特徴とする請求項1に記載の画像形成装置。
【請求項3】
前記描画情報生成時間予測部は、前記画像形成出力において出力されるページ数に基づき、前記画像形成出力において出力すべき1ページ分の画像の情報を生成するために要する時間を、前記画像の情報を生成するために動作する演算手段の数毎に予測し、
前記演算手段数決定部は、前記画像形成部が1ページ分の画像形成出力に要する時間の情報を予め記憶していることを特徴とする請求項1または2に記載の画像形成装置。
【請求項4】
前記描画情報生成時間予測部は、前記実行命令の情報形式、前記出力すべき画像の彩色に関する情報、前記実行命令の情報量のうち少なくとも1つに基づき、前記出力すべき画像の情報を生成するために要する時間を予測することを特徴とする請求項1乃至3いずれかに記載の画像形成装置。
【請求項5】
前記描画情報生成時間予測部は、前記実行命令の情報形式、前記出力すべき画像の彩色に関する情報、前記実行命令の情報量と、前記画像の情報を生成するために動作する演算手段の数毎の前記画像の情報を生成するために要する時間とが関連付けられた画像生成時間予測情報を参照して前記画像の情報を生成するために要する時間を予測することを特徴とする請求項4に記載の画像形成装置。
【請求項6】
一の前記実行命令に係る画像形成出力の実行中において前記実行命令取得部が他の実行命令を取得した場合、
前記描画情報生成時間予測部が、前記他の実行命令に係る画像形成出力において出力すべき画像の情報を生成するために要する時間を、前記画像の情報を生成するために動作する演算手段の数毎に予測し、
前記演算手段決定部が、前記予測された時間に基づいて前記他の実行命令に係る画像形成出力において出力すべき画像の情報を生成するために動作する演算手段の数を決定することを特徴とする請求項1乃至5いずれかに記載の画像形成装置。
【請求項7】
前記演算手段数決定部は、前記実行中の画像形成出力が完了するまでに前記他の実行命令に係る画像形成出力の1ページ目の画像の情報の生成が完了するように、演算手段の数を決定することを特徴とする請求項6に記載の画像形成装置。
【請求項8】
前記演算手段数決定部は、前記他の実行命令に係る画像形成出力の2ページ目以降の画像情報の生成が、その前のページの画像形成出力が完了するまでに完了するように演算手段の数を決定することを特徴とする請求項7に記載の画像形成装置。
【請求項9】
前記演算手段数決定部は、前記複数の演算手段の全てを前記画像形成出力において出力される1ページ目の画像の情報を生成するために動作する演算手段として決定し、前記画像形成出力において出力される2ページ目以降の画像の情報を生成するために動作する演算手段の数を、前記画像形成出力において出力される1ページ分の画像の情報を生成するために要する時間が、前記画像形成部による1ページ分の画像形成出力に要する時間以下となるように決定することを特徴とする請求項1乃至10いずれかに記載の画像形成装置。
【請求項10】
画像形成出力を実行するための画像処理を複数の演算手段によって実行可能な画像形成装置の制御方法であって、
実行命令取得部が、前記画像形成出力の実行命令を取得し、
描画情報生成時間予測部が、前記演算手段が前記画像形成出力において出力すべき画像の情報を生成するために要する時間を、前記画像の情報を生成するために動作する演算手段の数毎に予測し、
演算手段数決定部が、前記予測された時間及び前記画像形成出力を実行する画像形成部の出力速度に関する情報に基づき、前記画像形成出力において出力される1ページ分の画像の情報を生成するために要する時間が、前記画像形成部による1ページ分の画像形成出力に要する時間以下となるように、前記画像の情報を生成するために動作する演算手段の数を決定し、
演算手段制御部が、前記決定された数の演算手段に、前記取得された実行命令に基づいて前記画像形成出力において出力すべき画像の情報を生成させることを特徴とする画像形成装置の制御方法。
【請求項11】
画像形成出力を実行するための画像処理を複数の演算手段によって実行可能な画像形成装置の制御プログラムであって、
前記画像形成出力の実行命令を取得するステップと、
前記演算手段が前記画像形成出力において出力すべき画像の情報を生成するために要する時間を、前記画像の情報を生成するために動作する演算手段の数毎に予測するステップと、
前記予測された時間及び前記画像形成出力を実行する画像形成部の出力速度に関する情報に基づき、前記画像形成出力において出力される1ページ分の画像の情報を生成するために要する時間が、前記画像形成部による1ページ分の画像形成出力に要する時間以下となるように、前記画像の情報を生成するために動作する演算手段の数を決定するステップと、
前記決定された数の演算手段に、前記取得された実行命令に基づいて前記画像形成出力において出力すべき画像の情報を生成させるステップとを前記画像形成装置に実行させることを特徴とする画像形成装置の制御プログラム。
【請求項1】
画像形成出力を実行するための画像処理を複数の演算手段によって実行可能な画像形成装置であって、
前記画像形成出力の実行命令を取得する実行命令取得部と、
前記演算手段が、前記画像形成出力において出力すべき画像の情報を生成するために要する時間を、前記画像の情報を生成するために動作する演算手段の数毎に予測する描画情報生成時間予測部と、
前記予測された時間及び前記画像形成出力を実行する画像形成部の出力速度に関する情報に基づき、前記画像形成出力において出力される1ページ分の画像の情報を生成するために要する時間が、前記画像形成部による1ページ分の画像形成出力に要する時間以下となるように、前記画像の情報を生成するために動作する演算手段の数を決定する演算手段数決定部と、
前記決定された数の演算手段に、前記取得された実行命令に基づいて前記画像形成出力において出力すべき画像の情報を生成させる演算手段制御部とを含むことを特徴とする画像形成装置。
【請求項2】
前記演算手段数決定部は、前記画像形成出力において出力される1ページ分の画像の情報を生成するために要する時間が、前記画像形成部による1ページ分の画像形成出力に要する時間以下となる前記演算手段の数のうち、最も少ない数を前記画像の情報を生成するために動作する演算手段の数として決定することを特徴とする請求項1に記載の画像形成装置。
【請求項3】
前記描画情報生成時間予測部は、前記画像形成出力において出力されるページ数に基づき、前記画像形成出力において出力すべき1ページ分の画像の情報を生成するために要する時間を、前記画像の情報を生成するために動作する演算手段の数毎に予測し、
前記演算手段数決定部は、前記画像形成部が1ページ分の画像形成出力に要する時間の情報を予め記憶していることを特徴とする請求項1または2に記載の画像形成装置。
【請求項4】
前記描画情報生成時間予測部は、前記実行命令の情報形式、前記出力すべき画像の彩色に関する情報、前記実行命令の情報量のうち少なくとも1つに基づき、前記出力すべき画像の情報を生成するために要する時間を予測することを特徴とする請求項1乃至3いずれかに記載の画像形成装置。
【請求項5】
前記描画情報生成時間予測部は、前記実行命令の情報形式、前記出力すべき画像の彩色に関する情報、前記実行命令の情報量と、前記画像の情報を生成するために動作する演算手段の数毎の前記画像の情報を生成するために要する時間とが関連付けられた画像生成時間予測情報を参照して前記画像の情報を生成するために要する時間を予測することを特徴とする請求項4に記載の画像形成装置。
【請求項6】
一の前記実行命令に係る画像形成出力の実行中において前記実行命令取得部が他の実行命令を取得した場合、
前記描画情報生成時間予測部が、前記他の実行命令に係る画像形成出力において出力すべき画像の情報を生成するために要する時間を、前記画像の情報を生成するために動作する演算手段の数毎に予測し、
前記演算手段決定部が、前記予測された時間に基づいて前記他の実行命令に係る画像形成出力において出力すべき画像の情報を生成するために動作する演算手段の数を決定することを特徴とする請求項1乃至5いずれかに記載の画像形成装置。
【請求項7】
前記演算手段数決定部は、前記実行中の画像形成出力が完了するまでに前記他の実行命令に係る画像形成出力の1ページ目の画像の情報の生成が完了するように、演算手段の数を決定することを特徴とする請求項6に記載の画像形成装置。
【請求項8】
前記演算手段数決定部は、前記他の実行命令に係る画像形成出力の2ページ目以降の画像情報の生成が、その前のページの画像形成出力が完了するまでに完了するように演算手段の数を決定することを特徴とする請求項7に記載の画像形成装置。
【請求項9】
前記演算手段数決定部は、前記複数の演算手段の全てを前記画像形成出力において出力される1ページ目の画像の情報を生成するために動作する演算手段として決定し、前記画像形成出力において出力される2ページ目以降の画像の情報を生成するために動作する演算手段の数を、前記画像形成出力において出力される1ページ分の画像の情報を生成するために要する時間が、前記画像形成部による1ページ分の画像形成出力に要する時間以下となるように決定することを特徴とする請求項1乃至10いずれかに記載の画像形成装置。
【請求項10】
画像形成出力を実行するための画像処理を複数の演算手段によって実行可能な画像形成装置の制御方法であって、
実行命令取得部が、前記画像形成出力の実行命令を取得し、
描画情報生成時間予測部が、前記演算手段が前記画像形成出力において出力すべき画像の情報を生成するために要する時間を、前記画像の情報を生成するために動作する演算手段の数毎に予測し、
演算手段数決定部が、前記予測された時間及び前記画像形成出力を実行する画像形成部の出力速度に関する情報に基づき、前記画像形成出力において出力される1ページ分の画像の情報を生成するために要する時間が、前記画像形成部による1ページ分の画像形成出力に要する時間以下となるように、前記画像の情報を生成するために動作する演算手段の数を決定し、
演算手段制御部が、前記決定された数の演算手段に、前記取得された実行命令に基づいて前記画像形成出力において出力すべき画像の情報を生成させることを特徴とする画像形成装置の制御方法。
【請求項11】
画像形成出力を実行するための画像処理を複数の演算手段によって実行可能な画像形成装置の制御プログラムであって、
前記画像形成出力の実行命令を取得するステップと、
前記演算手段が前記画像形成出力において出力すべき画像の情報を生成するために要する時間を、前記画像の情報を生成するために動作する演算手段の数毎に予測するステップと、
前記予測された時間及び前記画像形成出力を実行する画像形成部の出力速度に関する情報に基づき、前記画像形成出力において出力される1ページ分の画像の情報を生成するために要する時間が、前記画像形成部による1ページ分の画像形成出力に要する時間以下となるように、前記画像の情報を生成するために動作する演算手段の数を決定するステップと、
前記決定された数の演算手段に、前記取得された実行命令に基づいて前記画像形成出力において出力すべき画像の情報を生成させるステップとを前記画像形成装置に実行させることを特徴とする画像形成装置の制御プログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【公開番号】特開2011−76043(P2011−76043A)
【公開日】平成23年4月14日(2011.4.14)
【国際特許分類】
【出願番号】特願2009−230490(P2009−230490)
【出願日】平成21年10月2日(2009.10.2)
【出願人】(000006747)株式会社リコー (37,907)
【Fターム(参考)】
【公開日】平成23年4月14日(2011.4.14)
【国際特許分類】
【出願日】平成21年10月2日(2009.10.2)
【出願人】(000006747)株式会社リコー (37,907)
【Fターム(参考)】
[ Back to top ]