以下に添付図面を参照して、本発明に係る印刷システムの実施形態を詳細に説明する。先ず、理解を容易とするために、各実施形態による印刷システムが適用されるプロダクションプリンティングについて、概略的に説明する。プロダクションプリンティングでは、短時間に大量の印刷を行うことを基本的な考え方としている。そのために、プロダクションプリンティングでは、印刷の高速化を図ると共に、ジョブ管理や印刷データの管理などを効率的に行うために、印刷データの作成から印刷物の分配までの管理を行うワークフローのシステムを構築する。
各実施形態による印刷システムは、プロダクションプリンティングのワークフローにおける、印刷を実行する部分に関わるもので、RIP(Raster Image Processor)処理と、RIP処理により得られたビットマップデータの印刷とを別の装置で行う。RIP処理は、印刷処理の中でも最も処理時間を要し、RIP処理を行う装置と、印刷処理を行う装置とを分離することで、印刷の高速化が可能となる。
(各実施形態に適用可能な印刷システムの概要)
図1は、本発明の各実施形態に適用可能な印刷システムの一例の構成を示す。この印刷システムは、上位装置10と、画像形成装置としてのプリンタ装置13とが、複数のデータ線11と、制御線12とで接続されて構成される。ホスト装置5は、例えばコンピュータであって、印刷画像データと、印刷設定情報とを含む印刷ジョブデータを生成する。
印刷ジョブデータは、例えばページ記述言語(PDL)によるデータ(以下、PDLデータと呼ぶ)を含む。このPDLデータを解釈することで、印刷を行うビットマップイメージからなる印刷画像データと、印刷の際のページ情報、レイアウト情報、印刷部数を示す情報など、印刷の設定に関わる印刷設定情報とが生成される。
上位装置10は、ホスト装置5から供給される印刷ジョブデータに従ってRIP処理を行い、印刷画像データである各色毎のビットマップデータを作成する。それと共に、上位装置10は、当該印刷ジョブデータやホスト装置5からの情報などに基づき、印刷動作を制御するための制御情報を作成する。
上位装置10で作成された各色毎の印刷画像データは、複数のデータ線11をそれぞれ介してプリンタ装置13の図示されないプリンタエンジン部に供給される。また、上位装置10とプリンタコントローラ14との間で、制御線12を介して、印刷を制御するための制御情報の送受信が行われる。プリンタコントローラ14は、この制御情報の送受信に基づきプリンタエンジン部を制御して印刷媒体に対する画像形成を行い、印刷ジョブに従った印刷を実行する。なお、この制御情報の具体的な例については、図12−1〜図12−3を用いて後述する。
印刷方式は特に限定されないが、各実施形態では、印刷媒体として印刷用紙を用い、インクジェット方式により印刷用紙に対して印刷画像を形成する。これに限らず、各実施形態を、トナーを用いて印刷用紙に対して印刷画像を形成する印刷装置にも適用可能である。また、印刷用紙は、切断可能なミシン目が所定間隔で打たれた連続紙である連帳紙(連続帳票)を用いるものとする。プロダクションプリンティングでは、印刷用紙としてこの連帳紙を用いることが多い。勿論、これに限らず、A4サイズ、B4サイズなど、サイズが固定的とされたカット紙を印刷用紙として用いてもよい。なお、連帳紙において、ページは、例えば所定間隔で打たれたミシン目で挟まれる領域をいうものとする。
なお、各実施形態による印刷システムが印刷対象とする印刷媒体は、紙の印刷用紙に限定されない。すなわち、各実施形態に適用される印刷方式により印刷が可能で、且つ、ロールとして提供可能な印刷媒体であれば、他の印刷媒体を用いてもよい。例えば、プラスチックフィルムや布などを印刷媒体として用いてもよい。
(上位装置)
図2−1は、上位装置10の一例の構成を示す。バス100に対してCPU(Central Processing Unit)101、ROM(Read Only Memory)102、RAM(Random Access Memory)103、ハードディスクドライブ(HDD)104が接続される。バス100に対して、さらに、外部I/F110、制御情報用I/F111および印刷画像データ用I/F112が接続される。バス100に接続されたこれら各部は、バス100を介して互いに通信可能とされている。
ROM102およびHDD104は、CPU101が動作するためのプログラムが予め格納される。RAM103は、CPU101のワークメモリとして用いられる。すなわち、CPU101は、ROM102およびHDD104に格納されるプログラムに従い、RAM103をワークメモリとして用いて、この上位装置10の全体の動作を制御する。
外部I/F110は、例えばTCP/IP(Transmission Control Protocol/Internet Protocol)に対応し、ホスト装置5との通信を制御する。制御情報用I/F111は、制御情報の通信を制御する。また、印刷画像データ用I/F112は、印刷画像データの通信を制御するもので、複数のチャネルを有する。例えば、上位装置10において作成された、色Y(Yellow)、C(Cyan)、M(Magenta)およびK(Black)による各色の印刷画像データは、これら複数のチャネルからそれぞれ出力される。印刷画像データ用I/F112は、高速な転送速度が要求されるため、例えばPCI Express(Peripheral Component Interconnect Bus Express)が用いられる。制御情報用I/F111の方式は特に限定されないが、ここでは、印刷画像データ用I/F112と同様に、PCI Expressを用いるものとする。
このような構成において、ホスト装置5から送信された印刷ジョブデータが、上位装置10の外部I/F110に受信され、CPU101を介してHDD104に格納される。CPU101は、HDD104から読み出した印刷ジョブデータに基づきRIP処理を行い、各色のビットマップデータを生成してRAM103にそれぞれ書き出す。例えば、CPU101は、RIP処理によりPDL(Page Description Language)データをレンダリングして各色のビットマップデータを生成してRAM103に書き出す。CPU101は、RAM103に書き出された各色のビットマップデータを圧縮符号化してHDD104に一旦格納する。
CPU101は、例えばプリンタ装置13において印刷動作が開始される際に、HDD104から圧縮符号化された各色のビットマップデータを読み出して圧縮符号を復号し、伸張された各色のビットマップデータをRAM103にそれぞれ書き込む。そして、CPU101は、RAM103からこれら各色のビットマップデータを読み出して、各色の印刷画像データとして印刷画像データ用I/F112の各チャネルからそれぞれ出力させ、プリンタ装置13に対して供給する。また、CPU101は、印刷動作の進行などに応じて、印刷を制御するための制御情報の送受信を、プリンタ装置13との間で制御情報用I/F111を介して行う。
図2−2は、上位装置10の機能を説明するための一例の機能ブロック図である。上位装置10は、インターフェイス(I/F)120、123および125、RIP部121、記憶部122、ならびに、制御部124を含む。インターフェイス120、123および125は、それぞれ図2−1における外部I/F110、印刷画像データ用I/F112および制御情報用I/F111に対応する。RIP部121および制御部124は、図2−1におけるCPU101上で動作するプログラムにより構成される。また、記憶部122は、図2−1におけるRAM103またはHDD104のうち少なくとも一方に対応する。
ホスト装置5でPDLデータを含む印刷ジョブデータが作成され、上位装置10に対して送信される。この印刷ジョブデータは、インターフェイス120に受信されてRIP部121に供給される。RIP部121は、供給された印刷ジョブデータに含まれるPDLデータに基づきレンダリングを行い、Y、C、M、K各色のビットマップデータによる印刷画像データを生成する。RIP部121は、生成したY、C、M、K各色の印刷画像データを、記憶部122に順次格納する。
制御部124は、インターフェイス125を介してプリンタ装置13のプリンタコントローラ14と通信を行う。例えば、制御部124は、ホスト装置5からインターフェイス120を介して供給された印刷ジョブデータに基づき、プリンタ装置13における印刷を制御するための制御情報を生成する。この制御情報は、制御部124からインターフェイス125を介してプリンタコントローラ14に送信される。
インターフェイス123は、記憶部122に記憶されるY、C、M、K各色の印刷画像データにそれぞれ独立してアクセスできるようになっている。また、インターフェイス123は、Y、C、M、K各色に対応する複数のデータ線11を介してプリンタ装置13に接続され、この複数のデータ線11を介して、プリンタ装置13との間でY、C、M、K各色の印刷画像データ転送に関する制御情報のやりとりや、Y、C、M、K各色の印刷画像データの転送を行う。
(プリンタ装置)
図3−1は、各実施形態に適用可能なプリンタ装置13の基本的な構成の例を示す。プリンタ装置13は、プリンタコントローラ14およびプリンタエンジン15を有する。プリンタコントローラ14は、制御線12が接続され、上位装置10との間で制御線12を介して制御情報の送受信を行って印刷動作の制御を行う。プリンタエンジン15は、複数のデータ線11a、11b、11cおよび11dがそれぞれ接続され、プリンタコントローラ14の制御に従い、これらデータ線11a、11b、11cおよび11dをそれぞれ介して上位装置10から転送された各色の印刷画像データによる印刷処理を行う。
プリンタコントローラ14およびプリンタエンジン15について、より詳細に説明する。プリンタコントローラ14は、制御情報送受信部20、制御信号送受信部21、用紙搬送制御部22、制御部23および識別情報取得部24を有する。
制御情報送受信部20は、上位装置10との間で、印刷を制御するための制御情報の送受信を制御線12を介して行う。制御信号送受信部21は、後述するデータ転送制御部30a、30b、30cおよび30dのそれぞれと、エンジンI/F制御線40a、40b、40cおよび40dにより接続される。制御信号送受信部21は、各データ転送制御部30a、30b、30cおよび30dとの間で、それぞれ個別に制御信号の送受信を行う。用紙搬送制御部22は、後述する搬送制御部51と搬送制御線41により接続され、搬送制御部51との間で用紙搬送を制御するための制御信号の送受信を行う。
制御部23は、例えばCPU、ROMおよびRAMを有し、ROMに予め記憶されるプログラムに従い、RAMをワークメモリとして用いてプリンタコントローラ14の各部の制御を行う。また、制御部23は、上位装置10から送信され制御情報送受信部20により受信された制御情報を解釈して、制御信号送受信部21や用紙搬送制御部22に渡す。
なお、制御情報送受信部20、制御信号送受信部21および用紙搬送制御部22は、制御部23に制御されるハードウェアとして構成してもよいし、制御部23上で動作されるプログラムのモジュールとして構成してもよい。
図3−2は、プリンタコントローラ14の一例のハードウェア構成を示す。プリンタコントローラ14は、CPU321、インターフェイス(I/F)322、RAM323およびROM324を有し、これらCPU321、インターフェイス322、RAM323およびROM324が互いに通信可能にバス320に接続される。バス320には、図示されない通信I/Fを介して制御線12も接続される。CPU321は、ROM324に格納されるプログラムに従いRAM323をワークメモリとして用いて動作し、プリンタ装置13の全体の動作を制御する。インターフェイス322には、ハードウェア的に構成されたロジック回路が含まれ、プリンタコントローラ14と、データ転送制御部30a、30b、30cおよび30d、搬送制御部51、ならびに、識別部52との通信を制御する。
このような構成において、例えば、図3−1における制御信号送受信部21および用紙搬送制御部22の機能は、I/F322により実現される。制御部23の機能は、CPU321上で動作するプログラムにより実現される。また、制御情報送受信部20の機能は、図示されない通信I/Fおよびバス320により実現される。
図3−1の説明に戻り、プリンタエンジン15は、同一の構成による複数のデータ転送制御部30a、30b、30cおよび30dを有すると共に、印刷画像データに基づく画像を用紙に出力し画像形成を行う画像出力部50を有する。
また、プリンタエンジン15は、プリンタコントローラ14が当該プリンタエンジン15を識別するための識別情報を出力するための識別部52をさらに有する。識別部52は、例えばディップスイッチを備え、ユーザにより、当該プリンタエンジン15を識別するための識別情報が設定される。プリンタコントローラ14において、識別情報取得部24は、信号線53を介して、識別部52から当該識別情報を取得する。
データ転送制御部30a、30b、30cおよび30dは、それぞれデータ線11a、11b、11cおよび11dが接続される。また、データ転送制御部30a、30b、30cおよび30dは、それぞれメモリ31a、31b、31cおよび31dを含み、上位装置10から、データ線11a、11b、11cおよび11dを介して転送された各色の印刷画像データを、それぞれメモリ31a、31b、31cおよび31dに格納する。
これらメモリ31a、31b、31cおよび31dは、例えば同一のメモリ容量と、アドレス構成とを有する。また、メモリ31a、31b、31cおよび31dのそれぞれは、好ましくは少なくとも3ページ分の印刷画像データを格納可能な容量を有する。3ページ分の印刷画像データは、例えば、上位装置10から転送中のページの印刷画像データと、現在出力中のページの印刷画像データと、次のページの印刷画像データとに対応する。これに限らず、メモリ31a、31b、31cおよび31dのそれぞれは、2ページ分以下の印刷画像データを格納可能であってもよい。
なお、各メモリ31a、31b、31cおよび31dは、プリンタコントローラ14により、入力ポインタおよび出力ポインタで一括して管理される。入力ポインタは、各メモリ31a、31b、31cおよび31dに対して画像データを転送する場合の先頭のアドレスを示す。出力ポインタは、各メモリ31a、31b、31cおよび31dから画像データを出力する際の先頭アドレスを示す。これら入力ポインタおよび出力ポインタによる各メモリ31a、31b、31cおよび31dの一括管理の詳細については、後述する。
さらに、データ転送制御部30a、30b、30cおよび30dは、それぞれエンジン制御線40a、40b、40cおよび40dによりプリンタコントローラ14と接続される。プリンタコントローラ14は、これらエンジン制御線40a、40b、40cおよび40dを介して、各データ転送制御部30a、30b、30cおよび30dとの間でそれぞれ個別に制御信号の送受信を行うことができる。より詳細には、エンジン制御線40a、40b、40cおよび40dは、それぞれプリンタコントローラ14内の制御信号送受信部21に接続され、制御部23とデータ転送制御部30a、30b、30cおよび30dとの間で、エンジン制御線40a、40b、40cおよび40d、ならびに、制御信号送受信部21を介して通信が行われる。
また、プリンタコントローラ14と、印刷用紙の搬送を制御する搬送制御部51とが搬送制御線41で接続され、プリンタコントローラ14と搬送制御部51との間で通信が行われる。より詳細には、搬送制御部51と、プリンタコントローラ14内の用紙搬送制御部22とが搬送制御線41で接続され、搬送制御部51と、プリンタコントローラ14内の用紙搬送制御部22との間で通信が行われる。
図4−1は、データ転送制御部30aの一例の構成を概略的に示す。なお、データ転送制御部30a、30b、30cおよび30dは、共通の構成が適用されるので、図4−1では、データ転送制御部30a、30b、30cおよび30dを代表してデータ転送制御部30aの構成を示す。
データ転送制御部30aは、メモリ31aおよびロジック回路32aを含む。ロジック回路32aに対して、エンジンI/F制御線40aおよびデータ線11aが接続される。ロジック回路32aは、制御信号送受信部21からエンジンI/F制御線40aを介して受け取った制御信号に従い、上位装置10からデータ線11aを介して転送された印刷画像データをメモリ31aに対して格納する。同様に、ロジック回路32aは、制御信号送受信部21からエンジンI/F制御線40aを介して受け取った制御信号に従い、メモリ31aから印刷画像データを読み出して、出力線33aを介して後述する画像出力部50に供給する。
なお、論理回路などの組み合わせによりハードウェア的に構成されたロジック回路32aによる制御は、プログラムに対する割り込みにより処理を分岐させる、CPUを用いた制御に対してより高速な処理が可能であるという利点がある。ロジック回路32aは、例えば、エンジンI/F制御線40aを介して受け取った、ビット列による制御信号に対して論理判定を行い、実行する処理を決定する。これに限らず、ロジック回路32aと同等の機能を、CPUを用いてソフトウェア的に実現してもよい。
データ転送制御部30a、30b、30cおよび30dからそれぞれ出力された各色の印刷画像データは、画像出力部50に供給される。画像出力部50は、各色の印刷画像データによる印刷を実行する。なお、各実施形態では、印刷画像データによる印刷を、ヘッドに設けられたノズルからインクを射出して印刷を行う、インクジェット方式により行う。勿論、印刷方式はインクジェット方式に限られず、例えばレーザプリンタ方式などを用いてもよい。
図4−2は、データ転送制御部30aの一例の構成をより詳細に示す。なお、図4−2において、上述した図4−1と共通する部分には同一の符号を付して、詳細な説明を省略する。データ転送制御部30aは、メモリ31a、メモリコントローラ132a、データ転送DMA(Direct Memory Access)133aおよび134a、ならびに、データ転送制御部コントローラ135aを有する。これらのうち、メモリコントローラ132a、データ転送DMA(Direct Memory Access)133aおよび134a、ならびに、データ転送制御部コントローラ135aが、図4−1におけるロジック回路32aに含まれる。
メモリコントローラ132aは、メモリ31aに対するアクセスを制御する。データ転送DMA133aは、上位装置10から印刷画像データを受信し、メモリコントローラ132aを介してメモリに書き込む。データ転送DMA134aは、メモリコントローラ132aを介してメモリ31aからデータを読み出し、出力線33aを介して画像出力部50に転送する。データ転送制御部コントローラ135aは、プリンタコントローラ14内の制御信号送受信部21からエンジンI/F制御線40aを介して送信される制御情報を受信し、受信した制御情報に従いデータ転送DMA133aおよび134aを制御する。
例えば、制御信号送受信部21から送信されたデータ転送の開始要求が、エンジンI/F制御線40aを介してデータ転送制御部コントローラ135aに受信されると、データ転送制御部コントローラ135aは、この要求に従い、データ転送DMA133aに対してデータ転送の開始を指示する。データ転送DMA133aは、この指示に従い、データ転送要求をデータ線11aを介して上位装置10に送信する。この要求に従い上位装置10から送信されたデータは、例えばデータ転送DMA133aに受信され、メモリコントローラ132aを介して、メモリ31aの所定のアドレスに書き込まれる。
また、制御信号送受信部21から送信された印刷指示が、エンジンI/F制御線40aを介してデータ転送制御部コントローラ135aに受信されると、データ転送制御部コントローラ135aは、データ転送DMA134aに対して、メモリ31aからのデータ読み出しを指示する。データ転送DMA134aは、この指示に応じて、メモリコントローラ132aを介してメモリ31aからデータを読み出す。そして、データ転送DMA134aは、読み出したデータを、出力線33aを介して画像出力部50に転送する。
図5は、画像出力部50の一例の構成を示す。画像出力部50は、出力制御部55と、色Y、C、MおよびK各色のヘッド56a、56b、56cおよび56dとを含む。なお、各色とヘッド56a、56b、56cおよび56dとの関係は、この例に限られない。出力制御部55は、各データ転送制御部30a、30b、30cおよび30dそれぞれの印刷画像データが出力される各出力線33a、33b、33cおよび33dと、ヘッド56a、56b、56cおよび56dとの接続を制御する。すなわち、出力制御部55は、各ヘッド56a、56b、56cおよび56dに対して、それぞれ各出力線33a、33b、33cおよび33dから1を選択して接続するように経路を設定することができる。
例えば、出力制御部55は、各出力線33a、33b、33cおよび33dと、各ヘッド56a、56b、56cおよび56dとを、1対1に接続するように設定できる。また例えば、出力線33aに対して、各ヘッド56a、56b、56cおよび56dを接続する、というように、出力線33a、33b、33cおよび33dと、ヘッド56a、56b、56cおよび56dとを、1対多に接続するように設定できる。
各出力線33a、33b、33cおよび33dと各ヘッド56a、56b、56cおよび56dとを接続する経路は、例えばディップスイッチなどを用いてユーザ操作により設定することができる。これに限らず、当該経路を、制御信号送受信部21からの制御信号により設定してもよい。
図6は、画像出力部50における各ヘッド56a、56b、56cおよび56dの一例の構成を示す。例えばヘッド56aを例にとると、所定ピッチでインクを吐出可能に並べられた多数のノズルからなるノズル列61を2列含むノズルブロック60が、印刷用紙201の幅方向に対して千鳥状に配置されている。各ノズルブロック60は、ノズル列61の端部が印刷用紙201の進行方向に対して互いに重複するように、ヘッド56aに配置される。他のヘッド56b、56cおよび56dも、ヘッド56aと同様の構成とされる。
また、図6の例では、それぞれ色C、M、YおよびKに対応する各ヘッド56a、56b、56cおよび56dが、印刷用紙201の進行方向に対し、ヘッド56a、56b、56c、56dの順に並べられている。したがって、印刷用紙201に対して、色C、M、Y、Kの順に印刷が行われることになる。
上述したように、各実施形態によるプリンタ装置13では、上位装置10からの印刷画像データの転送と、当該印刷画像データによる印刷を制御する制御信号の上位装置10とプリンタ装置13との間の送受信とが、異なる経路を介して行われる。また、上位装置10から、各色の印刷画像データがそれぞれ異なるデータ線11a、11b、11cおよび11dを介して転送されると共に、これらデータ線11a、11b、11cおよび11dを介して転送された各色の印刷画像データが、互いに独立して制御され、共通の構成を持つデータ転送制御部30a、30b、30cおよび30dにそれぞれ供給される。さらに、画像出力部50において、各データ転送制御部30a、30b、30cおよび30dの出力と各色のヘッド56a、56b、56cおよび56dとの接続経路をユーザ操作などにより設定可能とされている。
したがって、各実施形態によるプリンタ装置13は、印刷画像データの色数(Y、C、MおよびKの4色、または、K色のみ、など)や、画像出力部50において用いるヘッド数に応じて、プリンタエンジン15の構成を容易に変更することが可能である。このとき、プリンタエンジン15に対して、各データ転送制御部30a、30b、30cおよび30dのうち、要求される構成に応じて必要とされるものだけを設けるようにできる。
例えば、色Y、C、MおよびKの4色でフルカラーの印刷を行いたい場合は、プリンタエンジン15に対してデータ転送制御部30a、30b、30cおよび30dを全て設け、出力制御部55において、データ転送制御部30a、30b、30cおよび30dの各出力を、それぞれヘッド56a、56b、56cおよび56dに接続すればよい。
また例えば、色Kの1色で印刷を行う場合において、装置コスト優先として、それぞれ1のデータ転送制御部30aおよびヘッド56aのみを設け、出力制御部55においてデータ転送制御部30aの出力をヘッド56aに接続することができる。さらに例えば、色Kの1色で印刷を行う場合において、印刷速度優先として、1のデータ転送制御部30aと4のヘッド56a、56b、56cおよび56dとを設け、出力制御部55においてデータ転送制御部30aの出力をヘッド56a、56b、56cおよび56dにそれぞれ接続することができる。この場合、同一色を複数回、重ねて印刷することになるため、例えば、各ヘッド56a、56b、56cおよび56dでのインクの噴出時間を通常の1/4とし、印刷用紙の搬送速度を通常の4倍として高速印刷を行うことが考えられる。
(印刷用紙の搬送系)
搬送制御部51は、搬送制御線41を介してプリンタコントローラ14と通信を行い、画像出力部50により印刷画像データに基づく画像が形成される用紙の搬送を制御する。図7は、各実施形態に適用可能な、用紙の搬送系を含めたプリンタ装置200の一例の構造を概略的に示す。既に述べたように、各実施形態では、プリンタ装置200は、印刷用紙として連帳紙を用いる。
印刷用紙201は、印刷用紙補給部210から電源操作ボックス220を介して第1搬送部230に供給される。なお、ここでは、印刷用紙補給部210がプリンタコントローラ14を含むものとする。印刷用紙201は、第1搬送部230において、複数のローラなどを介して搬送されて、ステーション250aおよび250bを介して第2搬送部260に供給される。第2搬送部260は、上述した搬送制御部51を有し、供給された印刷用紙201の搬送制御を行う。例えば、印刷用紙201は、第2搬送部260に設けられる搬送駆動ローラで印刷方向(用紙送り方向)に駆動されると共に、第1搬送部230において印刷方向に対して逆方向の負荷を若干量与えられて、弛みがないようにされる。
第1搬送部230の出力側に位置センサ241が設けられ、基準位置に対する印刷用紙201の位置合わせが行われる。例えば、印刷用紙201が所定間隔にミシン目が入れられた連帳紙であれば、ミシン目と基準位置とが合致するように、位置合わせが行われる。また、用紙の幅方向の位置合わせは、各ヘッド56a、56b、56cおよび56dにおいて、ノズル列61の各ノズルに対するラインの画像データの割り当てを調整することで行うことができる。
ステーション250aおよび250bは、それぞれ上述したプリンタエンジン15に対応するもので、データ転送制御部30a〜30dと画像出力部50とを有し、印刷用紙201に対して印刷を行う。ステーション250aおよび250bは、プリンタ装置200において増設が可能なようになっている。図7は、プリンタ装置200に対して2台のステーション250aおよび250bが接続された例である。各ステーション250aおよび250bは、それぞれ図示されない識別部が出力する識別情報により、プリンタコントローラ14に識別される。
ここで、基準位置と、ステーション250aおよびステーション250bそれぞれとの間の位置関係は、固定的である必要がある。一方、ステーション250aおよび250bを増設可能な構成とする場合、ステーション250aおよび250bは、それぞれ、プリンタ装置200に対して独立した構成であることが好ましい。
一例として、連結具を用いて、基準位置がある第1搬送部230と、ステーション250aと、ステーション250bとを連結することが考えられる。図8は、第1搬送部230およびステーション250a、ならびに、ステーション250aおよびステーション250bを、それぞれ連結具280aおよび280bを用いて連結した例を示す。連結具280aや連結具280bは、例えばボルト/ナットといった接合用部品にて、ステーション250aやステーション250b、第1搬送部230に対して取り付けられる。これにより、基準位置と、ステーション250aおよびステーション250bそれぞれとの間の位置関係を固定させることができる。
なお、上述の例に限らず、ラッチ構造などを利用した連結具を用いて第1搬送部230と、ステーション250aと、ステーション250bとを互いに連結することで、基準位置と、ステーション250aおよびステーション250bそれぞれとの間の位置関係を固定してもよい。
ステーション250aおよび250b、ならびに、第2搬送部260は、第1搬送部210と所定のケーブルで接続され(図示しない)、エンジン制御線40a〜40dによる通信や、搬送制御線41による通信がこのケーブルを介して行われる。また、ステーション250aおよび250bは、当該ケーブルおよび第1搬送部210を介して図示されない上位装置10と接続され、データ線11a〜11dによる各色の画像データの転送などが行われる。
印刷後の印刷用紙201は、第2搬送部260から排出されて、裁断部270に供給される。印刷後の印刷用紙201は、裁断部270によりミシン目に従い裁断され各ページを分離される。
ここで、プリンタ装置200は、ページが連続した連帳紙である印刷用紙201に印刷を行うため、ステーション250aおよび250bにおける印刷用紙201への印刷後、当該印刷用紙201が第2搬送部260から排出されるまでの経路にも、印刷用紙201が絶えず存在することになる。
なお、第1搬送部230、ステーション250aおよび250b、ならびに、第2搬送部260からなる構成をもう一組用意して、前側の第2搬送部260から排出された印刷後の印刷用紙201を表裏反転して後側の第1搬送部230に供給することで、印刷用紙201に対する両面印刷が可能となる。
(各実施形態に適用可能な印刷処理の詳細)
次に、各実施形態に適用可能な印刷処理について、より詳細に説明する。図9は、上位装置10とプリンタ装置13のプリンタコントローラ14との間で、制御線12を介して送受信される制御情報の一例を示す。なお、図9において、上位装置10をDFE(Digital Front End Processor)、プリンタコントローラ14をPCTLとして示している。制御情報は、大まかには、(1)ジョブ(JOB)情報と、(2)プリンタ状態および印刷プロセスを示す情報と、(3)印刷条件を示す情報と、(4)接続を示す情報とが含まれる。
(1)のジョブ情報は、ジョブ(JOB)開始とジョブ終了とを通知する。ジョブ開始は、上位装置10からプリンタコントローラ14に対するジョブ開始の通知と、当該通知に対するプリンタ装置13から上位装置10への応答が含まれる。また、ジョブ開始には、このジョブ開始で通知される印刷を行う画像データに関する情報が含まれる。ジョブ終了は、上位装置10からプリンタコントローラ14に対する、ジョブ開始により要求した全印刷プロセスの終了の通知と、当該通知に対するプリンタコントローラ14から上位装置10への応答が含まれる。これらジョブ開始およびジョブ終了における応答の際に、ジョブを識別するためのジョブ識別子(JOBID)がプリンタコントローラ14から上位装置10に対して送信される。
(2)のプリンタ状態および印刷プロセスを示す情報には、印刷プロセス受け付け開始と、プリンタ情報の要求および通知と、印刷プロセス開始と、印刷プロセス要求と、データ転送完了と、データ受信完了と、印刷プロセス完了と、プロセス状態報告と、SC(Service Control)通知と、エラー発生および解除とを通知する。
印刷プロセス受け付け開始は、プリンタコントローラ14が印刷プロセスの受け付けが可能となったことをプリンタ装置13から上位装置10に対して通知する。プリンタ情報の要求および通知は、上位装置10からプリンタコントローラ14に対する必要なプリンタ情報の要求と、当該要求に対するプリンタコントローラ14から上位装置10に対する応答とが含まれる。
印刷プロセス開始は、印刷画像データの準備が完了した旨の上位装置10からプリンタコントローラ14に対する通知と、当該通知に対するプリンタ装置13から上位装置10に対する応答を含む。印刷画像データの準備完了通知は、印刷画像データの出力順およびページ(プロセス)単位に行われる。ページは、一連の印刷動作で印刷が行われる印刷単位であるといえる。
印刷プロセス要求は、プリンタコントローラ14から上位装置10に対する印刷プロセスの通知と、当該通知に対する上位装置10からプリンタコントローラ14に対する応答とが含まれる。プリンタコントローラ14は、この印刷プロセス要求により、印刷を行う色Y、C、MおよびKをそれぞれ示す色情報(Yellow, Cyan, Magenta or Black)、プロセス識別番号processIDおよびプレーン識別番号を上位装置10に対して通知する。なお、プレーンは、1ページに印刷される各色の印刷画像データによる画像それぞれに対応するものとする。プリンタコントローラ14は、プレーン単位およびエンジンすなわちデータ転送制御部30a、30b、30cおよび30dの要求順に従い、これらの情報を通知する。すなわち、ビットマップデータからなる印刷画像データは、プリンタエンジン15側から上位装置10に取りに行くことになる。
データ転送完了は、上位装置10からプリンタコントローラ14に対して要求されたプレーンの印刷画像データの転送完了が通知される。データ受信完了は、プリンタコントローラ14から上位装置10に対して、要求したプレーンの印刷画像データの受信完了が通知される。印刷プロセス完了は、上位装置10からプリンタコントローラ14に対して、全ページ(プロセス)の印刷要求の完了が通知される。プロセス状態報告は、プリンタコントローラ14から上位装置10に対して、ページ(プロセス)の印刷状態が通知される。このとき、プリンタコントローラ14は、プリンタエンジン15から給紙、排紙および印刷開始に関する情報を取得し、取得したこれらの情報を当該通知に付加して上位装置10に送信する。
SC通知は、上位装置10からプリンタコントローラ14に対してプリンタ装置13の障害情報の取得が要求されると共に、当該要求に対して取得された障害情報がプリンタコントローラ14から上位装置10に対して通知される。エラー発生および解除は、上位装置10側でのエラー発生および当該エラーの解除が上位装置10からプリンタコントローラ14に対して通知される。
(3)の印刷条件を示す情報は、印刷条件の設定、すなわち、上位装置10からプリンタコントローラ14に対する印刷条件の通知と、当該通知に対するプリンタコントローラ14の応答とを含む。印刷条件の例としては、印刷形態、印刷種別、給排紙情報、印刷面順、印刷用紙サイズ、印刷データサイズ、解像度および階調、ならびに、色情報などを含む。
印刷形態は、例えば印刷用紙201に対して両面印刷および片面印刷のうち何れを行うかを示す。印刷種別は、印刷画像データが存在しておりそれを印刷するのか、印刷画像データが存在しておらず白紙ページとするのかを示す。給排紙情報は、印刷用紙201の給紙元および排紙先のスタッカなどの識別情報を示す。印刷面順は、印刷用紙201に対して表面から裏面へと印刷するのか、裏面から表面へと印刷するのかを示す。印刷用紙サイズは、例えば印刷用紙201として連帳紙を用いる場合、印刷を行うページの印刷用紙201の搬送方向の長さを示す。印刷データサイズは、印刷画像データのデータサイズを示す。すなわち、印刷データサイズは、1ページ分の印刷画像データのサイズを示す。解像度および階調は、印刷画像データを印刷用紙201に印刷する際の解像度および階調を示す。また、色情報は、例えば印刷を色Y、C、MおよびK各色を用いたフルカラーで行うのか、色Kのみを用いた単色で行うかを示す。
(4)の接続を示す情報は、登録および解除を含み、上位装置10およびプリンタコントローラ14のそれぞれで、互いの情報の登録および登録された情報の解除を行う。
(印刷シーケンス)
次に、各実施形態に適用可能な印刷処理について説明する。図10は、各実施形態に適用可能な印刷処理を概念的に示す一例のシーケンス図である。ここでは、プリンタ装置13は、例えばステーション250aおよび250bのうちステーション250aのみを備え(すなわち1のプリンタエンジン15を有し)、色Y、C、MおよびKの各色を用いたフルカラー印刷を行うものとする。プリンタコントローラ14は、上位装置10から制御情報として印刷用紙201に関する情報を受信したら(SEQ100)、受信した情報に基づき搬送制御部51に対して用紙送り長を設定する(SEQ110)。用紙送り長は、例えば搬送方向における1ページのサイズである。
プリンタコントローラ14は、上位装置10から1ページ目(ページ#1)のジョブ開始を示す制御情報を受信したら(SEQ101)、受信した制御情報と、SEQ100で受信した用紙情報とに基づき後述する転送管理テーブルを作成し、作成した転送管理テーブルに従いデータ転送制御部30a、30b、30cおよび30dのそれぞれに対して、1ページ目を示すページ識別子と、色C、Y、MおよびK各色についてページ識別子で示されるページのデータ転送を開始するように要求する(SEQ110a、110b、110cおよび110d)。データ転送制御部30aは、この要求に従い、データ線11aを介して上位装置10に対して色Yの1ページ目の印刷画像データを要求し、この要求に応じて上位装置10から転送された色Yの1ページ目の印刷画像データをメモリ31aに格納する。
各データ転送制御部30b、30cおよび30dについても同様に、SEQ110b、110cおよび110dの要求に従い、データ線11b、11cおよび11dを介して上位装置10に対して各色C、MおよびKの1ページ目の印刷画像データをそれぞれ要求する。各データ転送制御部30b、30cおよび30dは、この要求に応じて上位装置10から転送された各色C、MおよびKの1ページ目の印刷画像データを、それぞれメモリ31b、31cおよび31dに格納する。
一方、この図10の例では、プリンタコントローラ14から各データ転送制御部30a、30b、30cおよび30dに対して1ページ目のデータ転送が要求されている間に、プリンタコントローラ14は、上位装置10から送信された次の2ページ目のジョブ開始を示す制御情報を受信する(SEQ102)。プリンタコントローラ14は、受信された制御情報に基づき後述する転送管理テーブルを作成し、例えばRAM323に保持する。
各データ転送制御部30a、30b、30cおよび30dは、上位装置10からの各色の1ページ目の印刷画像データの転送が終了したら、それぞれ、その旨をプリンタコントローラ14に通知する(SEQ111a、111b、111cおよび111d)。プリンタコントローラ14は、当該通知にそれぞれ応答して、データ転送制御部30a、30b、30cおよび30dに対してそれぞれ2ページ目(ページ#2)のデータ転送を開始するように要求する(SEQ112a、112b、112cおよび112d)。
この要求に応じて、各データ転送制御部30a、30b、30cおよび30dは、上位装置10に対して各色の2ページ目の印刷画像データをそれぞれ要求し、この要求に応じて上位装置10から転送された各色の2ページ目の印刷画像データを、それぞれメモリ31a、31b、31cおよび31dに格納する。
なお、各データ転送制御部30a、30b、30cおよび30dは、転送された印刷画像データのデータ量に基づきデータ転送の終了を知ることができる。1ページ分の印刷画像のデータ量を示す情報は、例えば各データ転送制御部30a、30b、30cおよび30dに対するデータ転送開始時に、上位装置10が印刷画像データの先頭などに付加して送信する。また、印刷画像データを所定単位毎に転送する場合に、上位装置10が、1ページの最後の印刷画像データの転送単位に対して1ページ分の転送終了を示す終了情報を付加するようにしてもよい。さらに、上位装置10が、1ページ分の印刷画像データの転送直後などに、1ページ分の印刷画像データの転送終了を示す情報を印刷画像データとは別途に、各データ転送制御部30a、30b、30cおよび30dに対して送信することもできる。
一方、プリンタコントローラ14は、各データ転送制御部30a、30b、30cおよび30dの全てから1ページ目のデータ転送終了の通知を受信したら、搬送制御部51に対して用紙搬送開始を要求する(SEQ113)。搬送制御部51は、この要求に応じて印刷用紙201の所定速度での搬送を開始する。また、プリンタコントローラ14は、搬送制御部51に対して用紙搬送開始の要求を行うと共に、各データ転送制御部30a、30b、30cおよび30dに対して、1ページ目の印刷の開始を指示する(SEQ114)。
搬送制御部51は、例えば印刷用紙201が所定位置に到達したら、印刷可能状態である旨をプリンタコントローラ14に対して通知する(SEQ117)。プリンタコントローラ14は、この搬送制御部51からの印刷可能状態報告に応じて、各データ転送制御部30a、30b、30cおよび30dに対して印刷の先頭位置を指示する(SEQ118)。
各データ転送制御部30a、30b、30cおよび30dは、印刷先頭指示に応じて印刷を開始する。この例では、印刷用紙201の搬送方向に沿って各色Y、C、MおよびKのヘッドがヘッド56a、56b、56c、56dの順に並べられているものとする。この場合、印刷用紙201における1ページ目の印刷の先頭位置がヘッド56aによる印刷位置に達したら、先ずデータ転送制御部30aにおいて、メモリ31aからの1ページ目の印刷画像データの読み出しが開始される。メモリ31aから読み出された色Yの印刷画像データは、画像出力部50に転送される。そして、印刷画像データが出力制御部55を介してヘッド56aに供給され、印刷用紙201に対する印刷が行われる(SEQ119a)。色Yの1ページ目の印刷が終了すると、その旨がプリンタコントローラ14に対して通知される(SEQ120a)。
続けて、印刷用紙201における1ページ目の印刷の先頭位置がヘッド56bによる印刷位置に達したら、データ転送制御部30bにおいて、メモリ31bからの1ページ目の印刷画像データの読み出しが開始される。メモリ31bから読み出された色Cの印刷画像データは、画像出力部50に転送される。そして、出力制御部55を介してヘッド56bに供給され、印刷用紙201に対する印刷が開始される(SEQ119b)。色Cの1ページ目の印刷が終了したら、その旨がプリンタコントローラ14に対して通知される(SEQ120b)。
以下同様にして、色MおよびKの印刷が順次開始され(SEQ119c、119d)、印刷が終了したら、その旨がプリンタコントローラ14に対して通知される(SEQ120cおよび120d)。
一方、上述のSEQ112a〜112dで開始された2ページ目の各色の印刷画像データの転送が終了すると、各データ転送制御部30a、30b、30cおよび30dは、その旨をプリンタコントローラ14に対して通知する(SEQ115)。プリンタコントローラ14は、このデータ転送完了の通知に応じて、各データ転送制御部30a、30b、30cおよび30dに対して、2ページ目の印刷の開始をそれぞれ指示する(SEQ116)。
各データ転送制御部30a、30b、30cおよび30dは、1ページ目の印刷の終了後に、それぞれ2ページ目の印刷を開始する。例えば、データ転送制御部30aは、1ページ目の印刷が完了(SEQ120a)した後、印刷用紙201における2ページ目の印刷の先頭位置がヘッド56aによる印刷位置に達したら、メモリ31aから2ページ目の色Yの印刷画像データを読み出して画像出力部50に供給し、印刷用紙201に対する印刷を開始する(SEQ121a)。色Yの印刷が終了したら、その旨がプリンタコントローラ14に対して通知される(SEQ122a)。
各データ転送制御部30b、30cおよび30dにおいても、同様にして、2ページ目の先頭位置がヘッド56b、56cおよび56dによる印刷位置に達したら、メモリ31b、31cおよび31dから各色の印刷画像データを読み出し、印刷用紙201に対する印刷を開始する(SEQ121b〜121d)。各色の印刷が終了したら、その旨がプリンタコントローラ14に対してそれぞれ通知される(SEQ122b〜122d)。
プリンタコントローラ14は、2ページ目の色Kの印刷終了通知をデータ転送制御部30dから受け取ると、印刷ジョブによる最終ページの印刷が終了したとして、搬送制御部51に対して印刷用紙201の搬送の停止を要求する(SEQ123)。搬送制御部51は、この要求に応じて印刷用紙201の搬送を停止させ、その旨をプリンタコントローラ14に対して報告する(SEQ124)。これにより、一連の印刷処理が終了する。
(印刷処理の詳細)
次に、各実施形態に適用可能な印刷処理について、より具体的に説明する。各実施形態では、各データ転送制御部30a〜30dは、プリンタコントローラ14の制御に従い、印刷を制御するための制御情報を上位装置10から取得する。また、各データ転送制御部30a〜30dは、プリンタコントローラ14の制御に従い、上位装置10から転送された各色の印刷画像データを、それぞれメモリ31a〜31dに格納する。
各実施形態に適用可能な印刷画像データのデータ転送処理について、図11−1〜図11−4のフローチャートを用いて説明する。なお、以下において、データ線11a、11b、11cおよび11dは、それぞれ色Y、色C、色Mおよび色Kの印刷画像データが転送され、データ転送制御部30a、30b、30cおよび30dは、それぞれ色Y、色C、色Mおよび色Kの印刷画像データの転送を制御するものとする。
図11−1は、データ転送に係る上位装置10における処理の例を示すフローチャートである。上位装置10は、ホスト装置5からのジョブデータを受信すると、ステップS100で、ジョブ開始を示す制御情報をプリンタコントローラ14に対して制御線12を介して送信する。そして、当該制御信号に応答してプリンタコントローラ14から送信される、印刷プロセス受け付けを示す制御信号を待機する(ステップS101)。
上位装置10は、プリンタコントローラ14からの印刷プロセス受け付けを示す制御信号を受信すると、ステップS102で、ジョブデータに示される印刷条件を示す制御情報を、プリンタコントローラ14に対して制御線12を介して送信し、次のステップS103で、ページ番号をnとして、nページ目の印刷プロセス開始の制御信号をプリンタコントローラ14に対して制御線12を介して送信する。このステップS103からステップS112までの処理は、ページ単位の処理となる。
ステップS104〜ステップS110の処理は、Y、C、M、K各色について実行される処理となる。以下、色Yに関する処理を中心に説明する。上位装置10は、ステップS104で、プリンタコントローラ14からの、例えば色Yの印刷画像データの要求を待機する。上位装置10は、プリンタコントローラ14から制御線12を介して送信されたデータ要求を受信すると、ステップS105で、受け取ったデータ要求に対する応答をプリンタコントローラ14に返す。そして、次のステップS106で、データ転送制御部30aからデータ線11aを介して送信されるデータ転送要求を待機する。
上位装置10は、データ転送制御部30aからのデータ転送要求をデータ線11aを介して受信すると、ステップS107で、データ転送制御部30aに対する色Yの印刷画像データの転送を開始する。色Yの印刷画像データは、データ線11aを介してデータ転送制御部30aに転送される。このとき、上位装置10は、転送する色Yの印刷画像データに対して、当該印刷画像データのサイズを示す情報を付加する。
上位装置10は、ステップS108で、色Yの1ページ分のデータ転送が終了するのを待機する。図2−2を参照し、上位装置10は、例えば、制御部124が記憶部122およびインターフェイス123を監視し、Y、C、M、K各色について、1ページ分のデータ量の転送が行われたか否かをそれぞれ判定する。色Yの1ページ分のデータ転送が終了したと判定された場合、処理はステップS109に移行され、1ページ分のデータ転送が終了したことを示すデータ転送終了通知が制御線12を介してプリンタコントローラ14に対して送信される。そして、上位装置10は、次のステップS110で、プリンタコントローラ14からの色Yについてのデータ受信完了通知を待機する。
上位装置10は、ステップS111で、Y、C、M、Kの全色について、データ受信完了通知を受信したか否かを判定する。若し、受信していないと判定した場合、処理をステップS104に戻し、次の色について処理を実行する。
なお、図11−1では、ステップS104〜ステップS110の処理がY、C、M、K各色について順次実行されるように説明したが、これはこの例に限定されない。例えば、ステップS104〜ステップS110の処理を、Y、C、M、K各色について並列的に実行することも可能である。この場合、ステップS111は、Y、C、M、K各色の処理におけるステップS110でのデータ受信完了通知を待機することになる。
上位装置10は、ステップS111で、Y、C、M、Kの全色についてデータ受信完了通知を受信したと判定したら、処理をステップS112に移行させ、次のページの印刷処理を行うか否かを判定する。印刷を行うページ数は、ホスト装置5から受信した印刷ジョブデータから取得することができる。若し、次ページの印刷処理があると判定された場合、ページ番号n=n+1とされて処理がステップS103に戻される。
一方、印刷ジョブデータに示される全ページ分のデータ転送が終了したと判定された場合、処理がステップS113に移行され、上位装置10は、プリンタコントローラ14からの全ページの排紙報告が待機される。上位装置10は、プリンタコントローラ14からの全ページの排紙報告を受信した場合、処理をステップS114に移行させ、プリンタコントローラ14に対して、制御線12を介して全ての印刷ジョブが終了した旨を示すジョブ終了通知を送信する。
図11−2は、データ転送に係るプリンタコントローラ14における処理の例を示すフローチャートである。プリンタコントローラ14は、ステップS120で、制御線12を介して上位装置10から送信されるジョブ開始を示す制御情報を待機する。プリンタコントローラ14は、この制御情報を受信したら、次のステップS121で、上位装置10に対して、制御線12を介して応答を返す。さらに、プリンタコントローラ14は、このステップS121で、上位装置10に対して、制御線12を介して印刷プロセス受け付け開始を示す制御情報を送信する。そして、次のステップS122で、上位装置10から制御線12を介して送信された印刷条件を示す制御情報を受信する。プリンタコントローラ14は、受信した制御情報に基づき図21を用いて後述する転送管理テーブルを作成し、保持する。
次のステップS123で、プリンタコントローラ14は、上位装置10から制御線12を介して送信される、nページ目の印刷プロセス開始を示す制御信号を受信したか否かを判定する。若し、受信していないと判定されたら、処理をステップS130に移行させ、上位装置10から制御線12を介してジョブ終了通知を受信したか否かを判定する。若し、ジョブ終了通知を受信していないと判定したら、処理をステップS123に戻す。一方、ステップS130でジョブ終了通知を受信したと判定したら、一連の印刷処理が終了される。
プリンタコントローラ14は、ステップS123で、上位装置10から制御線12を介して送信された印刷プロセス開始を示す制御信号を受信したと判定したら、処理をステップS124に移行させる。以下のステップS124〜ステップS128の処理は、Y、C、M、K各色の処理となる。ここでは、色Yの印刷画像データの転送処理について説明する。
ステップS124で、プリンタコントローラ14は、上位装置10に対して、制御線12を介して印刷画像データを要求し、次のステップS125で、この要求に対する上位装置10からの応答を待機する。プリンタコントローラ14は、上位装置10からの応答を受信したら、次のステップS126で、データ転送制御部30aに対して、エンジンI/F制御線40aを介してデータ転送の開始を要求する。
このとき、プリンタコントローラ14は、保持している転送管理テーブルから、少なくとも、印刷を行うページ(nページ目)を示すページ識別子PBIDと、印刷画像データの転送元のアドレスを示す転送元アドレスとを抽出する。そして、プリンタコントローラ14は、抽出されたこれらページ識別子PBIDと転送元アドレスとを、データ転送の開始を要求するデータ転送開始要求に付加して、例えばデータ転送制御部30aに送信する。
次のステップS127で、プリンタコントローラ14は、上位装置10からのデータ転送終了通知と、データ転送制御部30aからのデータ転送終了通知とを待機する。プリンタコントローラ14は、これら上位装置10およびデータ転送制御部30aからそれぞれ制御線12およびエンジンI/F制御線40aを介してデータ転送終了通知を受信したら、処理をステップS128に移行させ、色Yについてのデータ受信完了通知を、上位装置10に対して制御線12を介して送信する。
プリンタコントローラ14は、ステップS129で、Y、C、M、Kの全色のデータ転送が終了したか否かを判定する。若し、終了していないと判定した場合、処理をステップS124に戻し、次の色について処理を実行する。一方、プリンタコントローラ14は、ステップS129でY、C、M、Kの全色のデータ転送が終了したと判定した場合、ページ番号n=n+1として処理をステップS123に戻す。
なお、図11−2では、ステップS124〜ステップS128の処理がY、C、M、K各色について順次実行されるように説明したが、これはこの例に限定されない。例えば、ステップS124〜ステップS128の処理を、Y、C、M、K各色について並列的に実行することも可能である。この場合、ステップS129は、Y、C、M、K各色の処理におけるステップS128でのデータ受信完了通知を待機することになる。
なお、プリンタコントローラ14は、データ転送制御部30a〜30dに対して、各エンジンI/F制御線40a〜40dを介して印刷指示を送信する。この印刷指示により、各データ転送制御部30a〜30dにおいてメモリ31a〜31dから印刷画像データが読み出され、印刷用紙に対する印刷画像データの印刷が実行される。
なお、プリンタコントローラ14から各データ転送制御部30a〜30dに対して送信される印刷指示は、例えば図9を用いて説明した制御情報のうち、印刷条件の設定の情報といった、印刷を行うために必要な情報によるテーブルとして作成することができる。プリンタコントローラ14は、こうして作成したテーブルを、各データ転送制御部30a〜30dに対して送信する。
図11−3は、このプリンタコントローラ14が印刷指示を行う際の一例の処理を示すフローチャートである。なお、このフローチャートの実行に先立って、プリンタコントローラ14が搬送制御部51に対して、既に印刷準備指示を送信しているものとする。
プリンタコントローラ14は、ステップS140で、上位装置10からジョブ終了通知が送信されたか否かを判定する。若し、送信されたと判定したら、一連の処理を終了する。上位装置10からジョブ終了通知が送信されていないと判定した場合、処理をステップS141に移行させる。
ステップS141では、プリンタコントローラ14は、Y、C、M、K各色について少なくとも1ページ分の印刷画像データの転送終了を待機する。プリンタコントローラ14は、1ページ分の印刷画像データの転送が終了したと判定したら、処理をステップS142に移行させ、搬送制御部51からの印刷準備完了を示す応答の受信が待機される。プリンタコントローラ14は、搬送制御部51から送信された印刷準備完了を示す応答を、搬送制御線41を介して受信すると、次にステップS143において、各データ転送制御部30a〜30dに対して、nページ目の印刷を指示する印刷指示を、エンジンI/F制御線40a〜40dを介して送信する。
図11−4は、データ転送に係る各データ転送制御部30a〜30dにおける処理の例を示すフローチャートである。ここでは、説明のため、色Y、データ転送制御部30aでの処理について説明する。データ転送制御部30aは、ステップS150で、プリンタコントローラ14からエンジンI/F制御線40aを介して送信されるデータ転送開始要求を待機する。
データ転送制御部30aは、データ転送開始要求を受信すると、次のステップS151で、上位装置10に対して、色Yの印刷画像データの転送を要求するデータ転送要求を、データ線11aを介して送信する。このデータ転送要求に応じて上位装置10からデータ線11aを介して転送される、色Yの印刷画像データを、データ転送制御部30aが受信する(ステップS152)。データ転送制御部30aは、データ転送DMA133aを制御して、受信した色Yの印刷画像データをメモリ31aの所定の領域に格納する(ステップS153)。
データ転送制御部30aは、ステップS154で、上位装置10からの色Yの印刷画像データの転送が終了したか否かを判定する。データ転送制御部30aは、例えば、転送される印刷画像データに付加されるサイズ情報に基づき、印刷画像データの転送が終了したか否かを判定することができる。若し、印刷画像データの転送が終了していないと判定した場合は、処理をステップS152に戻し、データの受信およびメモリ31aへの格納を継続する。一方、印刷画像データの転送が終了したと判定したら、処理をステップS155に移行させ、プリンタコントローラ14に対して、エンジンI/F制御線40aを介してデータ転送終了通知を送信する。そして、処理がステップS150に戻される。
図12−1〜図12−3は、上述した図11−1〜図11−4に示した各フローチャートに従って実行される、各実施形態に適用可能な印刷処理をより具体的に示す一例のシーケンス図である。なお、図12−1〜図12−3において、符号A〜Fは、異なる図面間で対応する符号に処理が移行することを示す。また、以下では、プリンタ装置13は、例えばステーション250aおよび250bのうちステーション250aのみを備え(すなわち1のプリンタエンジン15を有し)、印刷ジョブは、全2ページの印刷を行うものであるとする。
図12−1を参照し、先ず、上位装置10からプリンタコントローラ14に対して制御線12を介してジョブ開始の制御情報が送信される(SEQ200)。プリンタコントローラ14は、この制御情報に対して、ジョブ識別子jobID=1を応答する制御情報を、制御線12を介して上位装置10に送信する(SEQ201)。それと共に、プリンタコントローラ14は、ジョブの開始に伴いジョブを実行するためのリソースを獲得する。そして、プリンタコントローラ14は、上位装置10に対して、印刷プロセス受け付け開始を示す制御情報を制御線12を介して送信する(SEQ202)。
次に、上位装置10は、プリンタコントローラ14に対して、印刷条件を設定する制御情報を制御線12を介して送信する(SEQ203)。プリンタコントローラ14に対して設定される印刷条件は、図9を用いて説明したように、印刷形態、印刷種別、給排紙情報、印刷面順、印刷用紙サイズ、印刷画像データのデータサイズ、解像度および階調、ならびに、色情報が含まれる。また、印刷を行うページ数の情報も、印刷条件に含ませることができる。この制御情報がプリンタコントローラ14に受信されると、受信した制御情報に含まれる各種の印刷条件が、例えばプリンタコントローラ14のレジスタなどに書き込まれ、印刷条件が設定される。
次に、上位装置10は、1ページ目の印刷プロセス開始の制御情報を、制御線12を介してプリンタコントローラ14に送信する(SEQ204)。この制御情報は、当該プロセスを識別するためのプロセス識別番号processID=1と、1ページ目を構成する画像を示す画像識別番号imageID=1とを含む。プリンタコントローラ14は、この印刷プロセス開始に対する応答である印刷プロセス開始の制御情報を上位装置10に返す(SEQ205)。
次に、プリンタコントローラ14は、上位装置10に対して、印刷プロセス要求の制御情報を送信し、印刷画像データを要求する。この印刷プロセス要求は、色Y、C、MおよびKの各色について、プリンタエンジン15における色の並び順に従って、順次行われる。この例では、印刷用紙201の搬送方向に沿って各色Y、C、MおよびKのヘッドがヘッド56a、56b、56c、56dの順に並べられているものとする。
先ず、プリンタコントローラ14は、色Yの印刷画像データを要求する印刷プロセス要求の制御情報を、上位装置10に対して制御線12を介して送信する(SEQ206)。この制御情報は、プロセスを指定するプロセス識別番号processID=1と、色Yを指定する色情報Yellowとが含まれる。上位装置10は、この制御情報に対する応答として、画像識別番号imageID=1を含む制御情報をプリンタコントローラ14に返す(SEQ207)。プリンタコントローラ14は、この制御情報を受信すると、色Yに対応するデータ転送制御部30aに対して印刷画像データの転送を開始するよう要求する(SEQ208)。このとき、プリンタコントローラ14は、例えば、転送の開始を要求する印刷画像データのデータサイズを、この要求と共にデータ転送制御部30aに送信する。
データ転送制御部30aは、この要求を受けて、データ線11aを介して上位装置10に対して色Yのプレーンの印刷画像データを要求し(SEQ209A)、この要求に応じて、上位装置10からデータ転送制御部30aに対して、色Yの印刷画像データが転送される(SEQ209)。転送された印刷画像データは、データ転送制御部30aのメモリ31aにおける、1ページ目の印刷画像データのために割り当てられた領域に格納される。
以下、他の各色C、MおよびKについても、上述のSEQ206、SEQ207、SEQ208、SEQ209AおよびSEQ209と同様の処理が繰り返され、各色の印刷画像データが上位装置10から各データ線11b、11cおよび11dを介してデータ転送制御部30b、30cおよび30dにそれぞれ転送され、メモリ31b、31cおよび31dそれぞれの、1ページ目の印刷画像データのために割り当てられた領域に格納される(SEQ210〜SEQ221)。
また、上位装置10は、1のプレーンの印刷画像データの転送が終了すると、データ転送完了の制御情報をプリンタコントローラ14に対して送信する。プリンタコントローラ14は、この制御情報に応じて、印刷画像データの受信完了の制御情報を上位装置10に送信する。
例えば、上位装置10は、色Yのプレーンの印刷画像データの転送が終了すると、画像識別番号imageID=1と色情報Yellowとを含むデータ転送完了の制御情報をプリンタコントローラ14に対して送信する(SEQ222)。一方、データ転送制御部30aは、上位装置10からデータ線11aを介しての印刷画像データの転送が終了すると、その旨示す通知をプリンタコントローラ14に対して送信する(SEQ223)。プリンタコントローラ14は、この通知に応じて、画像識別番号imageID=1と、色情報Yellowとを含むデータ受信完了の制御情報を上位装置10に対して送信する(SEQ224)。
以下、他の各色C、MおよびKについても、各印刷画像データの転送終了に伴い上述のSEQ222〜SEQ224と同様の処理が繰り返され、上位装置10に対してデータ受信完了の制御情報が送信される(SEQ225〜SEQ233)。
プリンタコントローラ14は、SEQ233で、1ページ目の最後の印刷画像データ(すなわち色Kの印刷画像データ)についてのデータ受信完了の制御情報を上位装置10に送信した後に、搬送制御部51に対して印刷の準備を指示する。搬送制御部51は、この指示に従い印刷用紙201の印刷位置への搬送を開始する。
説明は図12−2に移り、1ページ目の各色の印刷画像データの転送が完了すると、上位装置10は、2ページ目の印刷プロセス開始の制御情報を、制御線12を介してプリンタコントローラ14に送信する(SEQ234)。この制御情報は、当該2ページ目のプロセスを識別するプロセス識別番号processID=2と、2ページ目を構成する画像を示す画像識別番号imageID=2とを含む。プリンタコントローラ14は、この印刷プロセス開始に対する応答である印刷プロセス開始の制御情報を上位装置10に返す(SEQ235)。
例えば全2ページの印刷を行う場合には、このSEQ234およびSEQ235の処理で印刷プロセス開始要求が完了することになる。そのため、上位装置10は、SEQ235で2ページ目の印刷プロセス開始要求に対する応答を受け取ると、SEQ236で、ジョブ識別子jobID=1が指定されたプロセス開始要求完了の制御情報を、プリンタコントローラ14に対して送信する。
次に、上述したSEQ206〜SEQ221と同様にして、プリンタコントローラ14は、上位装置10に対して印刷プロセス要求の制御情報を送信し、印刷画像データを要求する。この印刷プロセス要求は、色Y、C、MおよびKの各色について、プリンタエンジン15における色の並び順に従って、順次行われる。
先ず、プリンタコントローラ14は、色Yの印刷画像データを要求する印刷プロセス要求の制御情報を、上位装置10に対して制御線12を介して送信する(SEQ237)。この制御情報は、プロセスを指定するプロセス識別番号processID=2と、色Yを指定する色情報Yellowとが含まれる。上位装置10は、この制御情報に対する応答として、画像識別番号imageID=2を含む制御情報をプリンタコントローラ14に返す(SEQ238)。プリンタコントローラ14は、この制御情報を受信すると、色Yに対応するデータ転送制御部30aに対して印刷画像データの転送を開始するよう要求する(SEQ239)。
データ転送制御部30aは、この要求を受けて、データ線11aを介して上位装置10に対して色Yのプレーンの印刷画像データを要求し(SEQ240A)、この要求に応じて、上位装置10からデータ転送制御部30aに対して、色Yの印刷画像データが転送される(SEQ240)。転送された印刷画像データは、データ転送制御部30aのメモリ31aにおける2ページ目の印刷画像データのために割り当てられた領域に格納される。
以下、他の各色C、MおよびKについても、上述のSEQ237、SEQ238、SEQ239、SEQ240AおよびSEQ240と同様の処理が繰り返され、各色の印刷画像データが上位装置10から各データ線11b、11cおよび11dを介してデータ転送制御部30b、30cおよび30dにそれぞれ転送され、メモリ31b、31cおよび31dそれぞれの2ページ目の印刷画像データのために割り当てられた領域に格納される(SEQ244〜SEQ251、SEQ255〜SEQ258)。
また、上述と同様に、上位装置10は、1のプレーンの印刷画像データの転送終了毎に、データ転送完了の制御情報をプリンタコントローラ14に対して送信する。プリンタコントローラ14は、この制御情報に応答して、印刷画像データの受信完了の制御情報を上位装置10に送信する。
図12−2の例では、上位装置10は、SEQ240で転送された色Yの印刷画像データの転送が終了されると、データ転送完了の制御情報をプリンタコントローラ14に対して送信する(SEQ252)。データ転送制御部30aは、上位装置10からデータ線11aを介しての印刷画像データの転送が終了すると、その旨示す通知をプリンタコントローラ14に対して送信する(SEQ253)。プリンタコントローラ14は、この通知に応答して、画像識別番号imageID=2と、色情報Yellowとを含むデータ受信完了の制御情報を上位装置10に対して送信する(SEQ254)。
以下、他の各色C、MおよびKについても、各印刷画像データの転送終了に伴い上述のSEQ252〜SEQ254と同様の処理が行われ、上位装置10に対してデータ受信完了の制御情報が送信される(SEQ259〜SEQ267)。
なお、図12−2の例では、上述したSEQ234の直前における搬送制御部51に対する印刷準備の指示に対する、搬送制御部51からの印刷準備が完了した旨の応答が、SEQ240の直後に、搬送制御部51からプリンタコントローラ14に対して通知されている。プリンタコントローラ14は、この通知を受信すると、それぞれプロセス識別番号processID=1およびプロセス識別番号processID=2とした、印刷プロセス開始の2の制御情報を、上位装置10に対して送信する(SEQ241、SEQ243)。これにより、上位装置10に対して、1ページ目および2ページ目の印刷が可能となった旨が通知される。
また、SEQ241の時点で、1ページ目の各色の印刷画像データのデータ転送制御部30a、30b、30cおよび30dへの転送が完了している。そのため、プリンタコントローラ14は、各データ転送制御部30a、30b、30cおよび30dに対して、1ページ目の印刷を行う印刷指示をそれぞれ通知する(SEQ242)。この印刷指示は、例えば各データ転送制御部30a、30b,30cおよび30dにおいて、メモリ31a,31b,31cおよび31dにそれぞれ格納されるなどにより保持される。この印刷指示に従った実際の印刷動作は、後続するページの印刷動作などとタイミングを合わせて実行される。
さらに、図12−2の例では、プリンタコントローラ14において、SEQ241およびSEQ243の印刷プロセス開始の制御情報の送信により、2番目に転送が開始される色Cのプレーンの印刷画像データの上位装置10に対する要求が遅延している(SEQ244参照)。そして、この遅延に伴い、最初に転送が開始された色Yのプレーンの印刷画像データの転送が、色Kのプレーンの印刷画像データの転送が開始される前に完了してしまっている(SEQ253参照)。さらにまた、色Yのプレーンの印刷画像データの転送完了の通知処理(SEQ253)の後に、色Kのプレーンの印刷画像データの転送が開始されている(SEQ257、SEQ258)。
図12−1に示す1ページ目のデータ転送処理では、各色の印刷画像データの転送が各色の順序で行われ、印刷画像データの転送が終了した後に、データ転送の終了処理が各色の順序で行われている。これに対して、図12−2に示す2ページ目のデータ転送処理では、各色の印刷画像データの転送が終了しないうちに、データ転送の終了処理が開始してしまっている。
上述のように、各色Y、C、MおよびKのデータ転送を制御するデータ転送制御部30a、30b、30cおよび30dがそれぞれ独立した構成とされ、プリンタコントローラ14は、各データ転送制御部30a、30b、30cおよび30dとそれぞれ独立して通信を行うことができ、また、各データ転送制御部30a、30b、30cおよび30dは、それぞれ独立して処理を実行する。そのため、このように、各データ転送制御部30a、30b、30cおよび30dによる一連の処理の途中に他の処理が割り込んできても、それぞれの処理を変更する必要が無い。
SEQ267で、プリンタコントローラ14が上位装置10に対して色Kのプレーンの印刷画像データの転送が完了したことを通知すると、プリンタコントローラ14は、各データ転送制御部30a、30b、30cおよび30dに対して2ページ目の印刷を行う印刷指示をそれぞれ通知する(SEQ268)。
説明は図12−3に移り、プリンタエンジン15においてSEQ242の印刷指示に従い1ページ目の印刷が実行され、印刷用紙201の給紙が開始される。プリンタエンジン15は、この1ページ目の給紙開始をプリンタコントローラ14に対して通知する(SEQ269)。プリンタコントローラ14は、この通知を受信すると、上位装置10に対して、プロセス識別番号processID=1として、1ページ目の給紙が開始されたことを示す制御情報を送信する(SEQ270)。それと共に、プリンタコントローラ14は、データ転送制御部30a、30b、30cおよび30dに対して、互いに同期して印刷を実行するよう、印刷指示を送信する。この印刷指示に従い、データ転送制御部30a、30b、30cおよび30dは、各メモリ31a、31b、31cおよび31dから各色Y、C、MおよびKの印刷画像データをそれぞれ読み出し、印刷用紙201に対する1ページ目の各プレーンの印刷を順次行う。
同様に、プリンタエンジン15は、1ページ目の印刷が完了し、2ページ目の印刷に移行すると、2ページ目の給紙開始をプリンタコントローラ14に通知する(SEQ271)。プリンタコントローラ14は、この通知を受信すると、上位装置10に対して、プロセス識別番号processID=2として、2ページ目の給紙が開始されたことを示す制御情報を送信する(SEQ272)と共に、データ転送制御部30a、30b、30cおよび30dに対して、互いに同期して印刷を実行するよう、印刷指示を送信する。この印刷指示に従い、データ転送制御部30a、30b、30cおよび30dは、各メモリ31a、31b、31cおよび31dから各色Y、C、MおよびKの印刷画像データをそれぞれ読み出し、印刷用紙201に対する2ページ目の各プレーンの印刷を順次行う。
また、プリンタエンジン15は、1ページ目の各色の印刷が終了し印刷用紙201の1ページ目が排紙されると、その旨をプリンタコントローラ14に通知する(SEQ273)。プリンタコントローラ14は、この通知を受信すると、上位装置10に対して、プロセス識別番号processID=1として、1ページ目の印刷用紙201が排紙されたことを示す制御情報を送信する(SEQ274)。同様に、プリンタエンジン15は、2ページ目の各色の印刷が終了し、印刷用紙201の2ページ目が排紙されると、その旨をプリンタコントローラ14に通知し(SEQ275)、プリンタコントローラ14は、この通知に応じてプロセス識別番号processID=2として2ページ目の印刷用紙201が排紙されたことを示す制御情報を上位装置10に対して送信する(SEQ276)。
上位装置10は、プリンタコントローラ14から、例えばSEQ203で印刷条件の設定の制御情報に含まれる、印刷ページ数を示す情報に対応する排紙報告を受信したら、SEQ200で開始を通知したジョブによる印刷が終了したとして、ジョブ識別番号jobID=1としたジョブ終了の制御情報をプリンタコントローラ14に対して送信する(SEQ277)。プリンタコントローラ14は、この制御情報を受信すると、ジョブ識別番号jobID=1として、応答の制御情報を上位装置10に送信する(SEQ278)。これにより、一連の印刷処理が終了する。
上述したように、印刷画像データの上位装置10からの転送タイミングの制御や、上位装置10との間の制御情報のやりとりなど、従来、各色のデータ転送制御部がそれぞれ行っていた機能を、プリンタコントローラ14が一括して行うようにしている。また、各色に対応するデータ転送制御部(データ転送制御部30a〜30d)は、印刷画像データを受信および読み出しのみを行うようにしている。そのため、印刷画像データの転送処理を高速化することができる。
また、各色Y、C、MおよびKのデータ転送を制御するデータ転送制御部30a、30b、30cおよび30dがそれぞれ独立した構成とされている。それと共に、プリンタコントローラ14と各データ転送制御部30a、30b、30cおよび30dとがエンジンI/F制御線40a、40b、40cおよび40dでそれぞれ接続され、プリンタコントローラ14と各データ転送制御部30a、30b、30cおよび30dとの間の通信は、データ転送制御部30a、30b、30cおよび30dそれぞれで独立して行われる。また、各データ転送制御部30a、30b、30cおよび30dは、それぞれ独立して処理を実行する。
そのため、上述の例えばSEQ237〜SEQ266のように、各データ転送制御部30a、30b、30cおよび30dによる一連の処理の途中に他の処理が割り込んできても、それぞれの処理を変更する必要が無い。また、各データ転送制御部30a、30b、30cおよび30dの処理が独立しているため、データ転送制御部30a、30b、30cおよび30dの追加や削除を容易に行うことができ、システム構成の様々なバリエーションを共通の構成で提供することができる。
(データ転送処理の別の例)
次に、上述したデータ転送処理の別の例について説明する。上述では、各色の印刷画像データの転送処理に際して、上位装置10は、各色のデータ転送制御部30a〜30dから各データ線11a〜11dを介して送信されたデータ転送要求に応じて、各色の印刷画像データを転送していた。これに対して、本例では、データ転送制御部30a〜30dから上位装置10に対してデータ転送要求を送信しない。上位装置10は、プリンタコントローラ14からのデータ要求に応答した後、直接的に、データ転送制御部30a〜30dに対してデータ線11a〜11dを介して各色の印刷画像データを転送する。
データ転送処理の別の例による印刷画像データのデータ転送処理について、図13−1および図13−2のフローチャートを用いて説明する。図13−1は、本例による、データ転送に係る上位装置10における処理の例を示すフローチャートである。なお、図13−1において、上述した図11−1と共通する処理には同一の符号を付し、詳細な説明を省略する。
図13−1のフローチャートに示されるように、上位装置10の処理は、ステップS100のジョブ開始を示す制御情報の送信から、ステップS105の、プリンタコントローラ14からのデータ要求に対する応答をプリンタコントローラ14に返すまでの処理は、図11−1で説明した処理と同一であるので、ここでの説明を省略する。
本例では、上位装置10は、ステップS105でプリンタコントローラ14からのデータ要求に対する応答をプリンタコントローラ14に制御線12を介して送信した後、処理をステップS160に移行させる。ステップS160で、上位装置10は、例えば色Yの印刷画像データを、データ線11aを介してデータ転送制御部30aに送信し、データ転送制御部30a内のメモリ31aに格納する。このとき、上位装置10は、例えば、送信する印刷画像データに対してメモリ31aのアドレス情報を付加してデータ転送制御部30aに送信する。データ転送制御部30aは、印刷画像データに付加されたアドレス情報に従い、当該印刷画像データをメモリ31aに格納する。
上位装置10は、ステップS160による印刷画像データの転送処理を、所定量、例えば1ページ分の印刷画像データの転送が終了するまで行う。上位装置10は、ステップS108で、印刷画像データの転送が終了したと判定したら、ステップS109でデータ転送終了通知をプリンタコントローラ14に対して制御線12を介して送信し、ステップS110で、この通知に対するプリンタコントローラ14からの応答を待機する。以降は、上述した図11−1で説明した処理と同一であるので、ここでの説明を省略する。
本例において、プリンタコントローラ14におけるデータ転送処理および印刷指示処理は、図11−2および図11−3を用いて説明した処理と何ら変わるところが無いので、ここでの説明は省略する。
図13−2は、本例による、データ転送に係るデータ転送制御部30aにおける処理の別の例を示すフローチャートである。なお、図13−2において、上述した図11−4と共通する処理には同一の符号を付し、詳細な説明を省略する。
ステップS150で、データ転送制御部30aは、プリンタコントローラ14からエンジンI/F制御線40aを介して送信されるデータ転送開始要求を待機する。データ転送制御部30aは、プリンタコントローラ14からのデータ転送開始要求を受信すると、処理をステップS161に移行させ、上位装置10からデータ線11aを介して転送される色Yの印刷画像データを受信する。そして、データ転送制御部30aは、当該印刷画像データに付加されるアドレス情報に従い、当該印刷画像データをメモリ31aに格納する。
データ転送制御部30aは、ステップS154で、上位装置10からの色Yの印刷画像データの転送が終了したか否かを判定する。データ転送制御部30aは、例えば、上位装置10が転送する印刷画像データに付加したサイズ情報に基づき、印刷画像データの転送が終了したか否かを判定する。上位装置10が印刷画像データ転送の終了時に、その旨示す情報をデータ転送制御部30aに送信してもよい。若し、印刷画像データの転送が終了していないと判定した場合は、処理をステップS161に戻し、データの受信およびメモリ31aへの格納を継続する。
一方、印刷画像データの転送が終了したと判定したら、処理をステップS155に移行させ、プリンタコントローラ14に対して、エンジンI/F制御線40aを介してデータ転送終了通知を送信する。そして、処理がステップS150に戻される。
このように、データ転送制御部30a〜30dから上位装置10に対してデータ転送要求を送信せずに、上位装置10がプリンタコントローラ14からのデータ要求に応答した後、直接的に、データ転送制御部30a〜30dに対してデータ線11a〜11dを介して各色の印刷画像データを転送する方式を用いることも可能である。
(メモリの一括管理)
次に、上述した、入力ポインタおよび出力ポインタによる各メモリ31a、31b、31cおよび31dの一括管理について説明する。各実施形態において、各データ転送制御部30a〜30dがそれぞれ有するメモリ31a〜31dの管理を、プリンタコントローラ14側で一元的に行う。なお、以下では、印刷画像データがC、M、Y、K各色で同一サイズのビットマップデータによって、上位装置10からプリンタ装置13に供給されるものとして説明する。
本発明の各実施形態では、図14に例示されるように、プリンタコントローラ14において、各メモリ31a〜31dそれぞれのメモリ空間と同一のメモリ空間を持つ仮想的なメモリ60(以下、仮想メモリ60と呼ぶ)を定義する。プリンタコントローラ14は、上位装置10から転送された印刷画像データを各メモリ31a〜31dに対して書き込む先頭位置(入力ポインタと呼ぶ)と、メモリ31a〜31dから印刷画像データを読み出す際の先頭位置(出力ポインタと呼ぶ)とを、それぞれ仮想メモリ60上で管理する。
プリンタコントローラ14は、各メモリ31a〜31dに対して書き込みを行う際には、入力ポインタが示すアドレスを各データ転送制御部30a〜30dにそれぞれ渡す。各データ転送制御部30a〜30dは、プリンタコントローラ14から渡されたこの入力ポインタが示すアドレスを先頭アドレスとして、データの書き込みを開始する。同様に、プリンタコントローラ14は、各メモリ31a〜31dからデータの読み出しを行う際には、出力ポインタが示すアドレスを各データ転送制御部30a〜30dにそれぞれ渡す。各データ転送制御部30a〜30dは、プリンタコントローラ14から渡されたこの出力ポインタが示すアドレスを先頭アドレスとして、各メモリ31a〜31dからのデータの読み出しを開始する。
プリンタコントローラ14は、入力ポインタを、1ページ分の書き込みが終了したら1ページ分アドレスを移動させて更新する。同様に、出力ポインタを、1ページ分の読み出しが終了したら1ページ分アドレスを移動させて更新する。各メモリ31a〜31dの書き込み開始位置および読み出し開始位置がプリンタコントローラ14側で一元的に管理されるため、ページ単位での各メモリ31a〜31dの記憶領域の確保および解放が容易となる。
仮想メモリ60は、例えば、各メモリ31a〜31dのメモリ空間を示す情報であるアドレスマップとして構成される。図15は、仮想メモリ60のより具体的な例を示す。一例として、図15(a)に示されるように、実メモリである各メモリ31a〜31dは、それぞれ、利用可能な領域の先頭位置を示すTopアドレスが「0000h」、利用可能な領域の終端位置を示すBottomアドレスが「FFFFh」であるものとする。アドレスは、TopアドレスからBottomアドレスの方向に向けて、所定単位毎に増加される。なお、アドレス表記において「h」は、直前の文字列が16進表記の数値であることを示す。
仮想メモリ60のTopアドレスおよびBottomアドレスは、それぞれ、各メモリ31a〜31dのTopアドレスおよびBottomアドレスと同一の、「0000h」および「FFFFh」に設定される。また、実メモリである各メモリ31a〜31dそれぞれの入力ポインタ(IN)および出力ポインタ(OUT)は、仮想メモリ60上の入力ポインタおよび出力ポインタと同じアドレスとして管理される。図15(a)の例では、出力ポインタがアドレス「3000h」、入力ポインタがアドレス「A000h」とされている。
図15(b)は、仮想メモリ60の実体となるアドレスマップ60aの例を示す。アドレスマップ60aは、例えば、TopアドレスおよびBottomアドレスと、ある時点での出力ポインタおよび入力ポインタそれぞれのアドレスとによる、アドレスの集合体として構成される。また、図15(b)の例では、データを書き込む書き込みアドレス(write)が、アドレスマップ60aにさらに含められている。
入力ポインタおよび出力ポインタのアドレスは、それぞれ、1ページ分の書き込みの終了時、ならびに、1ページ分の読み出しの終了時に、1ページ分のアドレスが増加されて更新される。また、書き込みアドレスは、各メモリ30a〜30dに対するデータの書き込み時に、データの書き込み単位毎に増加され、各メモリ30a〜30dに対するデータの書き込み位置が示される。これら入力ポインタ、出力ポインタおよび書き込みアドレスは、更新された結果、値がBottomアドレスを超える場合、Topアドレスから巡回的にアドレスが設定される。
このアドレスマップ60aは、例えばプリンタコントローラ14内の制御部23において構築される。より具体的には、例えばCPU321によりRAM323上に各値を記憶させることで構築される。TopアドレスおよびBottomアドレスは、例えば予めROM324に記憶しておくことができる。また、プリンタ装置13の起動時の初期化処理時などに、制御部23が制御信号送受信部21を介して各データ転送制御部30a〜30dと通信を行い、各メモリ31a〜31dのTopアドレスおよびBottomアドレスを取得して、アドレスマップ60aを生成することもできる。これに限らず、プリンタコントローラ14が有するRAM323上に実際にメモリ空間を確保して、仮想メモリ60を構築してもよい。
図16を用いて、仮想メモリ60上での入力ポインタおよび出力ポインタの制御について説明する。なお、図16では、図の上側から下側に向けてアドレスが増加するものとする。図16(a)に例示されるように、仮想メモリ60では、初期状態において、入力ポインタおよび出力ポインタが共にアドレスP0を示している。
例えば図10のSEQ101において、上位装置10からプリンタコントローラ14に対して1ページ目のデータ転送が要求されると、各メモリ31a〜31dに対し、仮想メモリ60上の入力ポインタが示すアドレスP0から、当該1ページ目の印刷画像データが書き込まれる。1ページ目の全色の印刷画像データの転送が終了されたと判定されたら、プリンタコントローラ14は、仮想メモリ60の入力ポインタをアドレスP0から1ページ分移動させてアドレスP1として入力ポインタの更新を行い、次の1ページ分の印刷画像データを転送する転送先のアドレスを指定する。図10の例では、SEQ111dで1ページ目の色Kの印刷画像データの転送終了がプリンタコントローラ14に通知されると、プリンタコントローラ14は、1ページ目の全色の印刷画像データの転送が終了したと判定する。
なお、ここでは、1ページ目の全色の印刷画像データの転送が終了した場合に、入力ポインタの更新を行うように説明したが、これはこの例に限定されない。例えば、1ページ目の各色の印刷画像データの転送終了毎に、それぞれ入力ポインタの更新を行ってもよい。
2ページ目の印刷画像データは、仮想メモリ60上の入力ポインタが示すアドレスP1を転送先アドレスとして、各メモリ31a〜31dに対して書き込まれる。そして、例えば図10のSEQ115において、2ページ目の全色の印刷画像データの転送が終了し、且つ次のページのデータ転送が要求されている場合、プリンタコントローラ14は、入力ポインタをさらにアドレスP1から1ページ分移動させてアドレスP2として、入力ポインタの更新を行い、次の1ページ分の印刷画像データの転送先アドレスを指定する(図16(b)参照)。
また、1ページ目の全色の印刷が終了すると、図16(c)に例示されるように、プリンタコントローラ14は、出力ポインタの位置をアドレスP0から1ページ分移動させてアドレスP1として、出力ポインタの更新を行い、次の印刷開始位置を2ページ目の先頭に指定する。図10の例では、SEQ120dにおいて、1ページ目の色Kの印刷が終了すると、プリンタコントローラ14は、当該1ページ目の全色の印刷が終了したと判定する。
なお、ここでは、1ページ目の全色の印刷が終了した場合に、出力ポインタの更新を行うように説明したが、これはこの例に限定されない。例えば、1ページの各色の印刷画像による印刷が終了する毎に、それぞれ出力ポインタの更新を行ってもよい。
1ページ分の全色の印刷が終了すると、出力ポインタの移動と共に、プリンタコントローラ14は、各データ転送制御部30a〜30dに対し、各メモリ31a〜31dの印刷が終了した印刷画像データが書き込まれている領域をゼロクリアするように指示を出す。この指示に従い、各データ転送制御部30a〜30dは、各メモリ31a〜31dの印刷が終了した領域(例えば1ページ目、仮想メモリ60上でアドレスP0〜P1として指定される領域)を値「0」で埋め尽くし、当該領域のゼロクリアを実行する。このように、各メモリ31a〜31dにおける印刷が終了した領域をゼロクリアすることで、後続する印刷における誤印刷を防ぐことができる。
上述では、各メモリ31a〜31dに対してゼロクリアする領域を、印刷が終了した印刷画像データが書き込まれた領域としているが、これはこの例に限定されない。例えば、各メモリ31a〜31dに対してゼロクリアする領域を、排紙が終了した印刷画像データが書き込まれた領域とすれば、各データ転送制御部30a〜30dのメモリ31a〜31dそれぞれには、排紙される前のデータが保存されることになる。したがって、例えば印刷用紙201のジャムなどの発生などによりページの再印刷が必要になっても、上位装置10からの印刷画像データの再送信を不要とすることができる。
また、上述では、各メモリ31a〜31dのゼロクリアを1ページ分の印刷が終了した時点としているが、これはこの例に限定されない。すなわち、各メモリ31a〜31dのゼロクリアは、これから印刷を行うページの印刷画像データが上位装置10から転送され各メモリ31a〜31dに書き込まれるまでの間に実行されればよい。この場合、出力ポインタは、1ページ分の印刷が終了した時点で予め移動させておいてもよいし、ゼロクリアを行う時点で移動させてもよい。また、ゼロクリアは、各メモリ31a〜31dで略同時に行ってもよいし、メモリ31a〜31dのうち印刷画像データが転送されるメモリから順次行ってもよい。
次に2ページ目のデータ転送が終了すると、プリンタコントローラ14は、図16(d)に例示されるように、仮想メモリ60上の入力ポインタの位置をアドレスP2から1ページ分移動させてアドレスP3として、入力ポインタの更新を行い、3ページ目のデータの転送先アドレスを指定する。
このように、各実施形態では、1ページ分のデータ転送の終了時に、仮想メモリ60上で印刷画像データの転送先アドレスを示す入力ポインタを移動させ、各色の1ページ分の印刷の終了時に、仮想メモリ60上で印刷画像データの読み出しの開始位置のアドレスを示す出力ポインタを移動させるようにしている。そして、メモリ31a〜31dに対する印刷画像データの書き込みおよび読み出しを、仮想メモリ60上の入力ポインタおよび出力ポインタが示すアドレスに従い行っている。そのため、プリンタコントローラ14は、各メモリ31a〜31dの状態を容易に把握することが可能となり、それに伴い、1ページの印刷において、全色の印刷が終了したか否かを容易に判定することができる。
なお、1ページの画像データの書き込みおよび読み出しは、同じタイミング(速度)で発生するとは限らない。すなわち、高速で印刷を行おうとする場合、印刷画像データをバッファリングしておくことで連続印刷を保証しようとすることが多い。そのため、印刷画像データの各メモリ30a〜30dに対するアクセスは、読み出しの速度よりも書き込みの速度の方が速くできるように制御することが好ましい。この場合、各メモリ30a〜30dには、1ページ分以上の印刷画像データが格納されることになり、入力ポインタと出力ポインタとのアドレスの差分は、1ページ分以上のページサイズとなる。
また、入力ポインタと出力ポインタとのアドレスの差分は、上位装置10における印刷画像データの展開速度(RIP処理の速度)に影響される。すなわち、印刷画像データの展開速度は、印刷画像データの内容に依存するので、入力ポインタの変化速度は、印刷画像データの内容に依存することになる。一方、出力ポインタの変化速度は、画像出力部50における印刷速度(各ヘッド56a〜56dへのデータの出力速度)に依存し、一定となる。なお、各メモリ30a〜30dに対する印刷画像データの書き込み速度が画像出力部50における印刷速度よりも遅い場合は、入力ポインタと出力ポインタとのアドレスの差分が0となる。
(第1の実施形態)
次に、本発明の第1の実施形態について説明する。図17−1および図17−2は、本第1の実施形態によるプリンタ装置13の一例の構成を示す。本第1の実施形態では、プリンタ装置13は、それぞれプリンタエンジン15に対応する複数のステーション16を接続することが可能である。なお、以下では、複数のステーション16を区別する必要がある場合には、ステーション161、162、…のように、添字を付して記述する。
図17−1の例では、プリンタ装置13は、4台のステーション161、162、163および164を備える。すなわち、各ステーション161、162、163および164は、それぞれ、C、M、Y、K各色に対応して、データ転送制御部30a、30b、30cおよび30d、ならびに、メモリ31a、31b、31cおよび31d(図示しない)を備えると共に、出力制御部55、ならびに、ヘッド56a、56b、56cおよび56dを備える。
各ステーション161〜164は、互いの位置関係、ならびに、上述した第1搬送部230および第2搬送部260との位置関係が固定的となるように設置する。一例として、図8を用いて説明したように、連結具を用いて、各ステーション161〜164、ならびに、第1搬送部230および第2搬送部260を連結し、互いの位置関係を固定的とする。
図17−1の例では、プリンタ装置13が4台のステーション161〜164を備えているが、これはこの例に限定されず、プリンタ装置13が備えるステーション16が1台であってもよいし、2台、3台であってもよい。プリンタ装置13が5台以上のステーション16を備えることもできる。
ステーション161、162、163および164は、各ステーション161、162、163および164を識別するためのステーション識別情報を出力する識別部52をそれぞれ有する。各識別部52は、例えばディップスイッチを備え、ユーザの設定に応じたステーション識別情報を出力する。プリンタコントローラ14’は、これら各ステーション161、162、163および164の識別部52からそれぞれ出力されたステーション識別情報に基づき、各ステーション161、162、163および164を識別することができる。
なお、詳細は後述するが、各ステーション161、162、163および164による印刷の順序や、上位装置10に対するデータ転送要求の順序がステーション識別情報に従い決められる。そのため、各ステーション161、162、163および164において、各識別部52に対して、ステーション識別情報を、用紙送り方向の手前側(第1搬送部230側)から順に、値「1」、「2」、「3」、「4」のように、値「1」から順次増加する値を設定するように定めるとよい。このようにステーション識別情報を設定することで、プリンタコントローラ14’は、各ステーション161、162、163および164のプリンタ装置13上での位置を特定することができる。
図17−2は、図17−1に対応する、4台のステーション161、162、163および164を備えるプリンタ装置13におけるプリンタコントローラ14’の例を示す。プリンタコントローラ14’は、バス320にCPU321、RAM323およびROM324が接続される。それと共に、バス320に対して、ステーション161〜164がそれぞれ有する各データ転送制御部30a〜30dと通信を行うためのエンジン制御線40a〜40d、ならびに、ステーション161〜164がそれぞれ有する識別部52を全て接続可能に構成されたインターフェイス322’が接続される。
これに限らず、プリンタコントローラ14’は、ステーション16が有する各データ転送制御部30a、30b、30cおよび30dと通信を行うためのエンジン制御線40a、40b、40cおよび40dが接続されるインターフェイス22を、プリンタ装置13が有するステーション16の数に応じて複数、備えるようにできる。
各ステーション161、162、163および164は、それぞれデータ線11a、11b、11cおよび11dで上位装置10と接続される。上位装置10は、ステーション161、162、163および164のそれぞれから各データ線11a、11b、11cおよび11dを介して送信された要求に応じて、例えばRAM103にそれぞれ領域を分けて格納されるC、M、Y、K各色の画像データを、ステーション161、162、163および164に対して送信する。
ここで、PCI Express規格によれば、メモリ上のアドレスを直接的に指定してメモリからデータを読み出すことができるため、上位装置10側では、RAM103からの画像データの読み出しに関し、下位側装置(プリンタ装置13)の構成を意識する必要が無い。したがって、印刷画像データ用I/F112に対するアクセス回線数が増加する場合には、図18に一例が示されるように、印刷画像データ用I/F1121、1122、…のように、PCI Express規格に準じたインターフェイスをバス100に対して追加して接続していけばよい。より具体的には、画像データ用I/F112を、例えばPCI Expressによる通信を行うための、上位装置10に対する拡張ボードとして構成し、プリンタ装置13におけるステーション16の数に応じてこの拡張ボードを上位装置10に追加して、PCI Expressのポートを増やす。
(印刷画像データの読み出し制御)
次に、本第1の実施形態による印刷制御方法について説明する。本第1の実施形態では、同色の印刷画像データに関し、ステーション16毎に、ステーション数mに応じてラスタ単位(ライン単位)で間引いて読み出す。ここで、ラスタは、例えば1ページの印刷画像において水平方向の1行(画素単位)を示し、ラインは、メモリ上におけるラスタのビットマップデータを示すものとする。したがって、1ページ分の印刷画像データがラスタで連続してメモリに格納されている場合、ラスタとラインは同義となる。
一例として、図17−1のように、プリンタ装置13が4台のステーション161、162、163および164を持つ場合、C、M、Y、K各色の印刷画像データそれぞれについて、nが0以上の整数として、ステーション161が(4n+1)ライン目、ステーション162が(4n+2)ライン目、ステーション163が(4n+3)ライン目、ステーション164が(4n+4)ライン目を、それぞれ上位装置10に対して要求する。
上述したように、上位装置10において、RAM103に対し、色毎に異なる領域に印刷画像データが格納される。これに限らず、上位装置10において色数分のメモリを設け、各色の印刷画像データをそれぞれ格納してもよい。各ステーション161〜164は、上位装置10に対して、バウンダリ調整サイズを含むラスタ単位でアドレスを指定して、各色の印刷画像データをライン毎に読み出すことができる。なお、バウンダリ調整サイズは、印刷画像データのサイズを所定単位(例えばバイト単位)で揃えるために用いるデータのサイズである。
図19は、RAM103の一例の構成を示す。図19において、行方向では左から右に向けてアドレスが増加し、さらに、列方向では上から下に向けてアドレスが増加するものとする。また、1行が1ラインに対応するものとする。
一例として、RAM103のアドレス「0000h」〜アドレス「FFFFh」の範囲のアドレス空間を、アドレス「4000h」、アドレス「8000h」およびアドレス「C000h」で4分割する。アドレス「0000h」を先頭アドレスとし、アドレス「3FFFh」までの範囲を色Cの領域103Cとする。同様に、アドレス「4000h」を先頭アドレスとしてアドレス「7FFFh」までの範囲を色Mの領域103Mとし、アドレス「8000h」を先頭アドレスとして「BFFFh」までの範囲を色Yの領域103Yとし、アドレス「C000h」を先頭アドレスとしてアドレス「FFFFh」までの範囲を色Kの領域103Kとする。
なお、各領域103C、103M、103Yおよび103Kは、それぞれ複数ページ分の印刷画像データを格納可能とされているものとする。
このようなアドレス構成に対して、各色の領域103C、103M、103Yおよび103Kそれぞれにおいて、先頭アドレスから、1行毎すなわちライン毎(ラスタ毎)に印刷画像データが読み出される。プリンタ装置13が4台のステーション161、162、163および164を持つこの例では、nを0以上の整数とした場合、各色の領域103C〜103Kにおいて、例えば(4n+1)ライン目がステーション161からの要求に応じて読み出される。同様に、(4n+2)ライン目がステーション162からの要求に応じて読み出され、(4n+3)ライン目がステーション163からの要求に応じて読み出され、(4n+4)ライン目がステーション164からの要求に応じて読み出される。
図20−1は、実際に印刷される画像と、印刷画像データとの関係の例を示す。図20−1(a)に例示されるように、図の左方向に向けて搬送される印刷用紙201に対して、「く」の字型の図形が色Cを用いて印刷画像として印刷されるものとする。すなわち、用紙搬送方向先頭側から、色Cのラインがライン301C1、301C2、ライン301C3、…と、印刷画像におけるラスタ順に順次印刷されていく。
図20−1(b)は、各ステーション161〜164の、色Cに対応するデータ転送制御部30aにおけるメモリ31aに印刷画像データが格納された様子を模式的に示す。ここで、各ステーション161〜164それぞれにおけるデータ転送制御部30aが有するメモリ31aを、それぞれメモリ31a1、メモリ31a2、メモリ31a3およびメモリ31a4とする。
例えばステーション161において、データ転送制御部30a1は、上位装置10に対して、色Cのラスタをステーション数mに応じて間引きして、ライン301C1、301C5、…、301C(4n+1)(図示しない)の印刷画像データを要求する。その結果、メモリ31a1には、色Cの1ライン目、5ライン目、…、(4n+1)ライン目のライン301C1、301C5、…、3014n+1(図示しない)の印刷画像データが順次格納される。
ステーション162、163および164でも同様である。例えば、ステーション162において、データ転送制御部30a2は、上位装置10に対して、色Cのラスタをステーション数mに応じて間引きして、ライン301C2、301C6、…、301C(4n+2)(図示しない)の印刷画像データを要求する。その結果、例えばメモリ31a2には、色Cの2ライン目、6ライン目、…、(4n+2)ライン目のライン301C2、301C6、…、3014n+2(図示しない)の印刷画像データが順次格納される。
なお、図20−1(b)では、説明のため各ラインが間隔を開けて示されているが、実際には、各メモリ31a1、31a2、31a3および31a4では、ラインの印刷画像データが詰めて格納される。例えば、図20−2に例示されるように、メモリ31a1に対して、ライン301C1、301C5、…、301C(4n+1)(図示しない)の印刷画像データが先頭から順次詰め込まれて格納される。メモリ31a2、31a3および31a4についても同様に、各ラインの印刷画像データが先頭から順次詰め込まれて格納される。
印刷は、印刷画像データの要求時と逆順に行われる。すなわち、各ステーション161、162、163および164の並び順に従い、各データ転送制御部30a1、30a2、30a3および30a4は、対応するメモリ31a1、31a2、31a3および31a4から、それぞれ1ラインずつ印刷画像データを読み出して、順次印刷していく。
なお、プリンタコントローラ14’は、例えばプリンタ装置13の電源投入時の初期化処理時に、各ステーション161〜164が有する識別部52から識別情報をそれぞれ取得し、識別情報から接続されているステーション数mを判定する。プリンタコントローラ14’は、このステーション数mに基づき、ステーション161〜164それぞれの各データ転送制御部30a〜30dを制御して、上述のようなデータ要求および印刷を実現する。
このように、本第1の実施形態では、各ステーション161〜164の各データ転送制御部30a〜30dは、上位装置10に対して、ステーション数mに応じてライン単位で間引きして印刷画像データを要求している。そのため、各ステーション161、162、163および164において、各データ線11a、11b、11cおよび11dを介して転送される印刷画像データの量が削減され、より高速なデータ転送が可能となる。それと共に、各ステーション161〜164それぞれの各データ転送制御部30a〜30dが扱う印刷画像データのデータ量が少なくなり、印刷画像データ処理が容易となる。
本第1の実施形態では、さらに、プリンタ装置13が持つステーション数mに応じて、印刷用紙201の搬送速度を変更する。プリンタコントローラ14’は、各ステーション161〜164が有する識別部52それぞれから取得した識別情報により判定したステーション数mに基づき、搬送制御部51に対してステーション数mに応じた搬送速度Vmを設定する。より具体的には、プリンタコントローラ14’は、ステーション数mの増加に応じて搬送速度Vmを大きくする。一例として、ステーション数mが「1」の場合の搬送速度V1を基準とし、搬送速度Vm=m×V1とする。
すなわち、上述したように、本第1の実施形態では、各色の印刷画像データを、ステーション数mに応じてライン単位で間引いて印刷するため、ステーション数mが増えると、各ステーション161〜16mの印刷間隔が長くなる。したがって、ステーション数mに応じて搬送速度Vmを大きくすることができ、より高速印刷が可能となる。
なお、プリンタ装置13が複数のステーション161、162、…を備えている場合であっても、印刷処理は、例えば上述の図10、図11−1〜図11−4、図12−1〜図12−3を用いて説明したステーション数mが1の場合の印刷処理と、基本的には変わらない。すなわち、プリンタ装置13が複数のステーション161、162、…を備えている場合、データ転送制御部30a〜30dの数がステーション数mに応じて増加し、そのためのプリンタコントローラ14’とステーション161、162…それぞれのデータ転送制御部30a〜30dとの間の通信が増加するのみで、各処理は、ステーション数mが1の場合と変わらない。
(転送管理テーブル)
次に、本第1の実施形態による転送管理テーブルについて説明する。この転送管理テーブルは、複数のステーション161、162、…それぞれにおける、データ転送制御部30a〜30dによるデータ転送処理や、画像出力部50での印刷処理を管理するために用いられる。プリンタコントローラ14’は、上位装置10から送信された印刷ジョブ、用紙情報などに基づきこの転送管理テーブルを作成し、RAM23上に保持する。それと共に、プリンタコントローラ14’は、複数のステーション161、162、…それぞれにおける各データ転送制御部30a〜30dに対してデータ転送の開始要求や印刷指示などを行う際に、転送管理テーブルの情報のうち必要な情報を、複数のステーション161、162、…それぞれにおける各データ転送制御部30a〜30dのレジスタに書き込む。
複数のステーション161、162、…において、各データ転送制御部30a〜30dは、このレジスタに書き込まれた転送管理テーブルの情報に従い、上位装置10に対する印刷印刷画像データの転送要求や、画像出力部50に対する印刷指示を出す。なお、転送管理テーブルには、ページを識別するページ識別子が含まれ、複数のステーション161、162、…それぞれにおいて、各データ転送制御部30a〜30dは、このページ識別子に基づき転送管理テーブルの情報を選択し、データ転送および印刷処理を実行する。
図21は、本第1の実施形態に適用される転送管理テーブルの一例を示す。転送管理テーブルは、C、M、Y、K各色に共通の情報と、各色毎の情報とを含む。また、各色共通の情報および各色毎の情報は、それぞれ、上位装置10からの印刷画像データの転送のために用いるデータ転送用の情報と、画像出力部50に対する印刷指示に関する情報である印刷用の情報とを含む。なお、転送管理テーブルに含まれる各情報は、テーブル形式で管理されるのに限られず、他のデータ管理形式で管理されるようにしてもよい。
本第1の実施形態による各色共通の情報について説明する。各色共通の情報において、データ転送用および印刷用以外の情報として、PBIDと、ステーション16の順序を示すステーション番号と、1ページ当たりのデータ数とが含まれる。PBIDは、印刷ページを識別するためのページ識別子であり、当該転送管理テーブルは、このPBIDにより識別される。ステーション番号は、上述したように、ステーション16が有する識別部52に設定されたステーション識別情報の値であって、用紙送り方向の手前側から値が「1」、「2」、「3」、…と値「1」から順次増加される。ここでは、プリンタ装置13が4台のステーション161、162、163および164を備え、ステーション番号は、値「1」〜値「4」の各値を取る。1ページ当たりのデータ数は、PBIDで識別されるページに用いられる色数であり、例えばモノクロの場合は値が「1」、フルカラーの場合は値が「4」とされる。
本第1の実施形態に適用される各色共通の情報におけるデータ転送用の情報は、データ格納先アドレス、1ラスタデータ転送サイズ、アドレス更新値および更新回数を含む。データ格納先アドレスは、上述した入力ポインタが示すアドレスである。したがって、入力ポインタが更新される度に、データ格納先アドレスも更新される。
1ラスタデータ転送サイズは、各ステーション161〜164のデータ転送制御部30a〜30dの要求により転送される、1ラスタ(1ライン)分の印刷画像データのデータサイズを示す。1ラスタデータ転送サイズは、バウンダリ調整サイズを含む。
アドレス更新値は、上位装置10に対して1のラスタ印刷画像データを要求する際に指定する際の、前回1ラスタ印刷画像データを指定した際のアドレスに対するアドレスの増加分であって、アドレスがデータサイズに従い指定される場合、1ラスタデータ転送サイズにステーション数mを乗じた値とされる。ステーション数mが4のこの例では、アドレス更新値=1ラスタデータ転送サイズ×4として算出される。更新回数は、1ページ内においてアドレス更新値によるアドレスの更新を何回行うかを示し、1ページ分の印刷画像データサイズ(バウンダリ調整サイズ含む)をステーション数mで除した値が用いられる。ステーション数mが4のこの例では、更新回数=1ページ分の印刷画像データサイズ÷4とされる。
本第1の実施形態に適用される各色共通の情報における印刷用の情報について説明する。印刷用の情報は、印刷を行う印刷画像データの情報として解像度および階調を含み、印刷対象に関する情報として用紙送り長、用紙幅、印刷面(表/裏)、印刷不可領域(上/下/左/右)および画像情報を含む。画像情報は、ビットマップ印刷位置Xおよびビットマップ印刷位置Y、ならびに、X方向有効サイズおよびY方向有効サイズを含む。
印刷を行う印刷画像データの情報において、解像度は、主走査および副走査方向それぞれの印刷解像度を示す。また、階調は、1画素当たりのビット数を示す。
印刷対象に関する情報について、図22(a)および図22(b)を用いて説明する。図22(a)は、印刷用紙201に対するページ領域202の一例を示す。図22(b)は、印刷画像データによる有効な印刷領域204の一例を示す。用紙送り長は、印刷用紙201の送り方向における1ページ分の長さをドット数で示し、用紙幅は、印刷用紙201の幅方向の長さをドット数で示す。印刷面は、当該ページが印刷用紙201の表面および裏面の何れに印刷されるかを示す。
印刷不可領域上、下、左、右は、印刷を禁止する印刷不可領域203を、ページ領域202の上端(用紙送り方向の先頭)、下端(用紙送り方向の後端)、左端(用紙幅方向の用紙送り方向に向けて左端)、右端(用紙幅方向の用紙送り方向に向けて右端)それぞれからのドット数で示す。
画像情報のうち、ビットマップ印刷位置XおよびYは、ページ領域202の左上(用紙送り方向の先頭、且つ、用紙幅方向の左端)を原点とした場合の、印刷開始位置のアドレス(座標)をドット数で示す。また、画像情報のうち、X方向有効サイズは、X方向(用紙幅方向)のバウンダリ調整領域205を含まないサイズをドット数で示す。バウンダリ調整領域205は、1ラスタデータのデータサイズが所定単位(例えばバイト単位)以下の端数を含む場合に、データサイズを所定単位に揃えるために設けられる。また、Y方向有効サイズがY方向(用紙送り方向)のサイズをドット数で示す。すなわち、X方向有効サイズは、1のラスタデータにより印刷される有効なサイズを示し、Y方向有効サイズは、X方向有効サイズで印刷されるラスタ数(ライン数)を示す。
すなわち、ビットマップ印刷位置XおよびYを左上とし、X方向有効サイズおよびY方向有効サイズで示される領域が、印刷領域204となる。また、印刷領域204のうち、印刷不可領域203と重なる領域は、印刷されないことになる。
ここで、本第1の実施形態においては、ステーション161、162、…それぞれでデータ転送元アドレスが1ラスタデータ転送サイズ分ずつ異なるため、ビットマップ印刷位置Yも、データ転送元アドレスに対応してステーション毎に異ならせる必要がある。すなわち、ステーション番号「1」では、上位装置10から指定された印刷位置が用いられる。以下、ステーション番号が1ずつ大きくなるに連れ、ビットマップ印刷位置Yが1ドットずつずらされる。具体的には、ステーション番号「2」、「3」および「4」では、上位装置10から指定された印刷位置に対して、Y方向にそれぞれ1ドット、2ドットおよび3ドットずらされた位置が、それぞれビットマップ印刷位置Yとされる。
本第1の実施形態による各色毎の情報について説明する。各色毎の情報において、データ転送用および印刷用以外の情報として、C、M、Y、K各色のうち何れの印刷色に関する情報が記述されるかを示すColor識別子が含まれる。各色毎の情報は、構成が共通するので、以下では、Color識別子が「シアン」の情報について説明する。転送管理テーブルには、各色毎の情報がC、M、Y、K各色についてそれぞれ含まれる。
本第1の実施形態に適用される各色毎の情報におけるデータ転送用の情報は、データ転送元アドレス、データ転送要否および転送済みフラグを含む。転送済みフラグは、ステーション番号で示されるステーション16における、Color識別子で識別される色の1ページ分の印刷画像データの転送が完了したか否かを示す。転送完了で、値を「ON」とする。例えば、プリンタコントローラ14’が、図9のSEQ111aで、ステーション161のデータ転送制御部30aから1ページ分の印刷画像データの転送終了の通知を受けると、当該ステーション161のデータ転送制御部30aに対応する転送管理テーブルの転送済みフラグをONとする。
データ転送元アドレスは、上位装置10においてPBIDで示されるページの印刷画像データが格納されるアドレスを示す。データ転送元アドレスは、例えばラスタ(ライン)単位で印刷画像データを指定する。上述したように、本第1の実施形態では、プリンタ装置13が複数のステーション161、162、…を備える場合、各ステーション161、162、…は、同一色の印刷画像データに対してラスタ順に順次転送を要求するため、ステーション161、162、…毎にデータ転送元アドレスが1ラスタずつ異なることになる。そのため、データ転送元アドレスは、ステーション161、162、…毎に1ラスタデータ転送サイズ分ずつアドレスをずらしていく必要がある。
具体的には、プリンタ装置13が4台のステーション161、162、163および164を備えるこの例では、用紙送り方向に対して最も手前のステーション(最も先に印刷が行われるステーション)を示すステーション番号「1」で、1ページのビットマップデータの先頭のラスタのアドレスが指定される。次のステーション番号「2」については、1ページのビットマップデータの先頭のラスタに対して1ラスタデータ転送サイズを加えたアドレスが指定され、ステーション番号「3」については、1ページのビットマップデータの先頭のラスタに対して、1ラスタデータ転送サイズの2倍のサイズを加えたアドレスが指定される。同様に、ステーション番号「4」については、1ページのビットマップデータの先頭のラスタに対して、1ラスタデータ転送サイズの3倍のサイズを加えたアドレスが指定される。
なお、データ転送元アドレスにおける値「α」は、例えばページ単位のオフセットを示す。一例として、上位装置10のRAM103における色Cの領域103Cに2ページ分の印刷画像データが格納され、ページ識別子PBIDが2ページ目を示している場合、ステーション161は、領域103Cの2ページ目のビットマップデータの先頭ラスタのアドレスを指定する必要がある。この場合、値「α」として、1ページのデータ転送サイズ分のアドレスを与えることで、領域103Cにおいて2ページ目のビットマップデータの先頭ラスタのアドレスを指定することができる。
データ転送要否は、当該印刷色の印刷画像データの転送の要否を示す。例えば、白紙すなわち印刷を行わない場合は、C、M、Y、Kの全色について、データ転送要否を「否」とする。また、Color(Cyan、Magenta、Yellow、Black)で指示される色以外は、データ転送要否を「否」に設定する。
本第1の実施形態に適用される各色毎の情報における印刷用の情報は、印刷要否を含む。印刷要否は、当該印刷色の印刷画像データの印刷の要否を示す。例えば、白紙すなわち印刷を行わない場合は、C、M、Y、Kの全色について、印刷要否を「否」とする。また、Color識別子で指示される色以外は、印刷要否を「否」に設定する。
(印刷制御処理)
次に、本第1の実施形態における印刷制御処理について、図23〜図26のフローチャートを用いて説明する。図23は、プリンタ装置13における、電源投入時などに行われる一例の初期化処理を示すフローチャートである。なお、ここでは、プリンタ装置13は、ステーション16を4台まで、接続可能とされているものとする。
例えばプリンタ装置13の電源の投入などで初期化処理が開始されると、ステップS200で、プリンタコントローラ14’は、信号線53を介して識別部52と通信を行い、ステーション識別情報を取得する。そして、取得されたステーション識別情報に基づき、プリンタ装置13に対して接続されているステーション16の数mと、ステーション16の位置とを判定する。そして、次のステップS201で、プリンタコントローラ14’は、ステップS200で取得されたステーション識別情報が示すステーション16に対して、初期状態などを設定する。
処理はステップS202に移行され、プリンタコントローラ14’は、ステーション数mに応じた搬送速度Vmを搬送制御部51に対して設定する。すなわち、プリンタコントローラ14’は、ステップS202でステーション数mが「1」であるか否かを判定し、「1」であると判定したら、処理をステップS203に移行させ、搬送速度Vmを搬送速度V1に設定する。
一方、ステップS202でステーション数mが1ではないと判定したら、プリンタコントローラ14’は、処理をステップS204に移行させ、ステーション数mが「2」であるか否かを判定する。若し、ステーション数mが「2」であると判定したら、プリンタコントローラ14’は、処理をステップS205に移行させ、搬送速度Vmを、例えば搬送速度V1の2倍の速度である搬送速度V2に設定する。
一方、ステップS204でステーション数mが2ではないと判定したら、プリンタコントローラ14’は、処理をステップS206に移行させ、ステーション数mが「3」であるか否かを判定する。若し、ステーション数mが「3」であると判定したら、プリンタコントローラ14’は、処理をステップS207に移行させ、搬送速度Vmを、例えば搬送速度V1の3倍の速度である搬送速度V3に設定する。一方、ステップS206でステーション数mが「3」ではないと判定したら、ステーション数mが「4」であると判断でき、処理をステップS208に移行させて、搬送速度Vmを、例えば搬送速度V1の4倍の速度である搬送速度V4に設定する。
ステップS203、ステップS205、ステップS207またはステップS208で搬送制御部51に対する搬送速度の設定が終了したら、処理はステップS209に移行される。ステップS209で、プリンタコントローラ14’は、ページを識別するページ識別子であるPBIDの値を「0」に初期化する。そして、図23のフローチャートによる一連の処理が終了される。なお、ここでは、搬送速度Vmをステーション数mが1の場合の搬送速度V1を基準に、ステーション数mの倍数としているが、これはこの例に限定されない。
図24は、印刷を行う印刷画像データの転送処理を示す一例のフローチャートである。なお、以下では、プリンタ装置13が4台のステーション161、162、163および164を備えているものとする。
このフローチャートによる処理は、上位装置10における印刷画像データの転送準備の完了をきっかけに起動される。例えば、プリンタコントローラ14’は、図10のシーケンスチャートにおけるSEQ101やSEQ102で上位装置10から印刷ジョブを受信すると、ステップS220で、転送管理テーブルを作成する。転送管理テーブルは、各ステーション161、162、163および164のデータ転送制御部30a、30b、30cおよび30dそれぞれについて作成される。このとき、図21を用いて説明したように、データ転送元アドレスおよびビットマップ印刷位置Yが、ステーション識別情報に基づき各ステーション161、162、163および164毎に決められる。また、各ステーション161、162、163および164の転送管理テーブルには、自分のステーションを示すステーション識別情報がそれぞれ含まれる。
次のステップS221で、プリンタコントローラ14’は、PBIDの値を「1」だけ増加させてPBIDを更新する。そして、次のステップS222で、各ステーション161、162、163および164のデータ転送制御部30a、30b、30cおよび30dそれぞれに対し、印刷画像データ転送開始を要求する。このとき、プリンタコントローラ14’は、ステップS221で更新される前のPBIDに対して印刷画像データの転送開始要求を行う。
図25は、印刷処理の一例のフローチャートを示す。このフローチャートによる処理は、プリンタコントローラ14’に対するデータ転送終了の通知をきっかけに起動される。データ転送終了の通知を受信すると、プリンタコントローラ14’は、ステップS230で、受信したデータ転送終了通知の送信元となるデータ転送制御部に対応する転送管理テーブルにおける転送済みフラグをONにセットする。
次に、ステップS231で、対応するPBIDがデータ転送終了が通知された印刷画像データと同一の、全ての印刷画像データの転送が終了したか否かが判定される。例えば、プリンタコントローラ14’は、データ転送終了が通知された印刷画像データに対応する転送管理テーブルのPBIDに基づき、同一のPBIDを持つ全ての転送管理テーブルにおける転送済みフラグを調べ、当該転送済みフラグが全てONにセットされていれば、当該全ての印刷画像データの転送が終了したと判定する。若し、まだ転送されていない印刷画像データが存在すると判定した場合には、この図25のフローチャートの処理を抜け、次のデータ転送終了の通知を待機する。
一方、プリンタコントローラ14’は、当該全ての印刷画像データの転送が終了したと判定したら、処理をステップS232に移行させ、現在が印刷可能な状態であるか否かを判定する。現在が印刷可能な状態であるか否かは、印刷用紙201が所定速度で搬送されているか否かで以て判定する。例えばプリンタコントローラ14’は、搬送制御部51から搬送制御線41に対して出力される制御信号が所定の状態になっていれば、印刷用紙201が所定速度で搬送され現在が印刷可能な状態であると判定する。
ステップS232で、現在が印刷可能な状態であると判定したら、プリンタコントローラ14’は、処理をステップS233に移行させる。ステップS233で、プリンタコントローラ14’は、各ステーション161〜164のデータ転送制御部30a〜30dそれぞれに対して、ステップS231で転送が終了したと判定された印刷画像データによる印刷を指示する。印刷を指示したら、この図25のフローチャートの処理を抜け、次のデータ転送終了の通知を待機する。
一方、ステップS232で、現在が印刷可能な状態ではないと判定したら、プリンタコントローラ14’は、処理をステップS234に移行させ、現在が印刷用紙201の搬送中であるか否かを判定する。すなわち、このステップS234では、現在が、印刷用紙201の搬送が行われていない状態であるか、あるいは、印刷用紙201が搬送されているが搬送速度が所定速度になっていない状態であるかが判定される。この判定は、搬送制御部51が搬送制御線41に対して出力する制御信号に基づき行われる。
若し、ステップS234で、印刷用紙201が搬送されていると判定したら、処理は図25のフローチャートを抜け、ステップS231で転送が終了したと判定された印刷画像データによる印刷を待ち状態とする。搬送速度が所定速度になったら、搬送制御部51は、例えば図10のSEQ117に示したように、印刷可能状態報告をプリンタコントローラ14’に対して送信する。プリンタコントローラ14’は、この印刷可能状態報告を受信したら、図26のフローチャートのステップS240に示されるように、各ステーション161〜164のデータ転送制御部30a〜30dそれぞれに対して、印刷待ちとされている印刷画像データによる印刷を指示する。
一方、ステップS234で印刷用紙201が搬送されていないと判定したら、プリンタコントローラ14’は、処理をステップS235に移行させ、搬送制御部51に対して搬送を開始するよう指示を出す。このとき、プリンタコントローラ14’は、上述の図23のフローチャートにおけるステップS203、ステップS205、ステップS207またはステップS208で設定された搬送速度Vmを搬送制御部51に対して設定する。搬送制御部51は、搬送速度が設定された搬送速度Vmになるように、搬送速度の加減速を行う。
(第2の実施形態)
次に、本発明の第2の実施形態について説明する。本第2の実施形態は、上述した第1の実施形態において、印刷画像データがC、M、Y、K各色で異なるサイズのビットマップデータによって、上位装置10からプリンタ装置13に転送される場合の例である。なお、以下において、上述した第1の実施形態と異なる部分を中心に説明する。また、以下では、プリンタ装置13が1台のステーション16のみを備えるものとして説明する。
図27を用いて、各色で異なるサイズのビットマップデータを転送する場合の例について説明する。例えば、図27(a)に例示されるように、1ページの印刷領域75内に色Cを用いて印刷される画像70と、色Mを用いて印刷される画像71と、色Yを用いて印刷される画像72と、色Kを用いて印刷される画像73とが配置されている場合について考える。なお、これら画像70〜73は、互いに大きさが異なるものとする。
この場合、例えば色Cの印刷画像データとして、画像70を含む最小限の矩形領域の印刷画像データを上位装置10側で作成し、データ転送制御部30aに対して転送する。他の色M、Y、Kについても同様に、それぞれ画像71、72および73を含む最小限の矩形領域の印刷画像データを上位装置10側で作成し、データ転送制御部30b、30cおよび30dにそれぞれ転送する。これにより、各色毎に1ページ全域分の印刷画像データを転送する場合に比べて、データ転送量を削減することができる。
さらにこの場合において、各色の画像70〜73をそれぞれ含む最小限の矩形領域の各印刷画像データの所定位置への配置を、メモリ31a〜31d上で行う第1の方法と、印刷の際に行う第2の方法とがある。なお、以下では、「各色の画像70〜73をそれぞれ含む最小限の矩形領域の各印刷画像データ」を、適宜、「各色の画像70〜73それぞれの印刷画像データ」などと記述する。
第1の方法は、図27(b)に例示されるように、各画像70〜73それぞれの印刷画像データを、当該各画像70〜73の印刷位置に対応するメモリ31a〜31dのアドレスに書き込む。なお、図27(b)では、説明のため、メモリ31a〜31dにおける1ページ分の記憶領域のみを示している。この第1の方法によれば、メモリ31a〜31dは、1ページ分の領域が共通であるため、プリンタコントローラ14側では、メモリ31a〜31dに共通の1の仮想メモリ60を用意すればよい。
この第1の方法において、転送管理テーブルに対して、各画像70〜73それぞれの印刷画像データをメモリ31a〜31dに対して書き込む際のアドレス情報を記述する。また、上述したように、メモリ31a〜31dは、各色の1ページ分の印刷が終了し出力ポインタが更新された後、印刷が終了した領域がゼロクリアされる。そのため、各データ転送制御部30a〜30dは、各画像70〜73それぞれの印刷画像データをメモリ31a〜31dの指定アドレスに対して上書きするだけでよい。
第2の方法は、図27(c)に例示されるように、各画像70〜73それぞれの印刷画像データを、そのままメモリ31a〜31dにそれぞれ書き込む。そして、各メモリ31a〜31dから読み出された各画像70〜73それぞれの印刷画像データを、当該各画像70〜73それぞれの所定の配置位置に対して印刷する。この第2の方法によれば、メモリ31a〜31dのページ当たりの消費量を削減することができる。
一方、この第2の方法によれば、各画像70〜73それぞれの印刷画像データのサイズが互いに異なる可能性があるので、転送管理テーブルに対して各色の転送情報および印刷情報をそれぞれ記述する必要がある。この場合、例えば、図13(b)に示されるアドレスマップ60aにおいて、入力ポインタ(IN)、出力ポインタ(OUT)および書き込みアドレス(write)の組を、(INa、OUTa、writea)、(INb、OUTb、writeb)、…のように、メモリ31a〜31dそれぞれについて設けることが考えられる。それと共に、転送管理テーブルに対して各色の転送情報および印刷情報をそれぞれ記述する必要がある。
図27(c)を用いて、第2の方法についてより具体的に説明する。例えば色Cの画像70に関し、画像70を含む最小限の矩形領域の印刷画像データ70aが、印刷領域75の印刷アドレス70bで示される位置に印刷される。同様に、色M、YおよびKそれぞれの画像71、72および73に関し、画像71、72および73をそれぞれ含む最小限の矩形領域の印刷画像データ71a、72aおよび73aが、印刷領域75の印刷アドレス71b、72bおよび73bで示される位置に印刷される。したがって、転送管理テーブルの情報として、各印刷画像データ70a〜73aについて、それぞれデータサイズと共に印刷アドレス71b〜73bを示す情報を保持している必要がある。
(第2の実施形態による転送管理テーブルの例)
図28は、本第2の実施形態に適用される転送管理テーブルの一例を示す。この図28の例では、プリンタ装置13がステーション16を4台まで備えることができるものとしている。なお、以下において、図21を用いて説明した、第1の実施形態による転送管理テーブルと共通する項目については、詳細な説明を省略する。この第2の実施形態による転送管理テーブルについても、上述の第1の実施形態による転送管理テーブルと同様に、各色に共通の情報と、各色毎の情報とを含む。ここで、第1の実施形態による転送管理テーブルと、第2の実施形態による転送管理テーブルとでは、各色に共通の情報および各色毎の情報で含まれる情報が異なる。
本第2の実施形態による各色共通の情報について説明する。図28に例示されるように、第2の実施形態による転送管理テーブルでは、各色に共通の情報は、PBID、ステーション番号および1ページ当たりのデータ数を含むと共に、印刷用の情報として、解像度、階調、用紙送り長、用紙幅および印刷面を含む。また、各色で転送される印刷画像データのサイズが異なるため、各色に共通の情報は、データ転送用の情報を含まない。
本第2の実施形態による各色毎の情報について説明する。各色毎の情報において、Color識別子が含まれると共に、データ転送用の情報と、印刷用の情報とが含まれる。本第2の実施形態に適用される各色毎の情報におけるデータ転送用の情報は、データ転送要否、転送済みフラグ、データ転送元アドレス、データ格納先アドレス、1ラスタデータ転送サイズ、アドレス更新値および更新回数を含む。
これらのうち、転送済みフラグは、プリンタコントローラ14’が、ステーション番号で示されるステーション16から、当該色の印刷画像データの転送終了通知を受信したら、ONとされる。プリンタコントローラ14は、この転送済みフラグがONとなった色について、対応する仮想メモリ60の入力ポインタを更新することができる。また、データ転送元アドレスは、図21を用いて説明した第1の実施形態による転送管理テーブルの場合と同様に、ステーション番号が示す値により異なるものとなる。
本第2の実施形態に適用される各色毎の情報における印刷用の情報は、印刷要否、印刷不可領域上、下、左および右、ならびに、画像情報を含む。また、画像情報は、ビットマップ印刷位置XおよびY、ならびに、Y方向有効サイズおよびX方向有効サイズを含む。ビットマップ印刷位置Yは、図21を用いて説明した第1の実施形態による転送管理テーブルの場合と同様に、ステーション番号が示す値により異なるものとなる。
本第2の実施形態において、上述した第1の方法による、各画像70〜73それぞれの印刷画像データのメモリ31a〜31d上への配置を行うためのアドレス指定や、第2の方法による、各画像70〜73それぞれの印刷画像データの印刷アドレスの指定は、例えば、転送管理テーブルに、各色毎の印刷用の情報として記述されるビットマップ印刷位置XおよびYにより行うことができる。
本第2の実施形態において、仮想メモリ60における入力ポインタおよび出力ポインタの管理方法や、上位装置10からのデータ受信時の処理、印刷画像データの転送終了時の処理、印刷終了時の処理などは、上述した第1の実施形態と共通であるので、ここでの説明を省略する。
(他の実施形態)
上述した第1および第2の実施形態では、上位装置10の画像データ用I/F112がPCI Expressに対応し、プリンタ装置13側で上位装置10のRAM103のアドレスを直接的に指定することでRAM103からデータを読み出すことができるようにされていた。すなわち、第1および第2の実施形態では、プリンタ装置13側の各データ転送制御部30a〜30dがDMAC(Direct Memory Access Controller)的な役目を担っていたといえる。
これはこの例に限られず、上位装置10に対して各データ線11a、11b、11cおよび11dに対応してDMACを設けるようにもできる。すなわち、図29に例示されるように、上位装置10に対し、RAM103に対するアクセスを制御するDMAC120a、120b、120cおよび120dを設ける。そして、これらDMAC120a、120b、120cおよび120dに対してデータ線11a、11b、11cおよび11dをそれぞれ接続する。各データ転送制御部30a、30b、30cおよび30dは、上位装置10に対する画像データの要求を、各DMAC120a、120b、120cおよび120dに対して行うことになる。
なお、図29において、本例を説明するために必要な部分のみを記述してあり、その他の構成は省略されている。また、図29は、プリンタ装置13が1台のステーション16を備えている場合の例であり、プリンタ装置13が複数のステーション161、162、…を備えている場合は、上位装置10に対して、ステーション数mに応じたDMACを設ける必要がある。
この方法によれば、プリンタ装置13側ではRAM103のアドレスを指定する必要が無いため、画像データの転送要求の処理が容易になる。一方、プリンタ装置13側でRAM103のアドレス指定を行わないために、ライン単位での間引き処理を行うためには、各DMAC120a、120b、120cおよび120dが転送管理テーブルをそれぞれ持っている必要がある。そのため、上位装置10側でプリンタ装置13が備えるステーション数mを意識する必要が生じ、不利である。
また、上述の各実施形態では、上位装置10からの画像データの転送を、複数のステーション161、162、…それぞれで、ステーション数mに応じてライン単位で間引きして行っているが、これはこの例に限定されない。
例えば、1ページをステーション数mに応じてブロックに分割し、各ステーション161、162、…への画像データの転送をブロック毎に行うことが考えられる。1ページの分割方法は、用紙幅方向、用紙搬送方向、マトリクス状など様々に考えられる。さらにまた、1ページ目はステーション161、2ページはステーション162、というように、ステーション161、162、…毎にページを振り分けることも考えられる。
さらに、上述では、各ステーション161、162、…でC、M、Y、K各色の印刷を行っているが、これはこの例に限られない。すなわち、ステーション161では色Cのみ、ステーション162では色Mのみ、というように、各ステーション161、162、…が単色の印刷を行うようにしてもよい。
さらにまた、上述したライン間引き、ブロック分割、ページ振り分け、ならびに、ステーション16毎に単色印刷のうち幾つかの方法を併用することも考えられる。
なお、上述の第1の実施形態および第2の実施形態では、印刷に用いる色が、色C、M、Y、Kの所謂プロセスカラーであるとして説明したが、これはこの例に限定されない。例えば、R(赤色)、G(緑色)およびB(青色)や、金色、銀色、白色などの所謂特色を印刷に用いる場合でも、第1の実施形態および第2の実施形態をそのまま適用することができる。また、色数も4色に限らず、5色以上、または、3色以下を用いた印刷にも、第1の実施形態および第2の実施形態は、そのまま適用できる。