JP3304081B2 - 印刷制御方法 - Google Patents
印刷制御方法Info
- Publication number
- JP3304081B2 JP3304081B2 JP2001238258A JP2001238258A JP3304081B2 JP 3304081 B2 JP3304081 B2 JP 3304081B2 JP 2001238258 A JP2001238258 A JP 2001238258A JP 2001238258 A JP2001238258 A JP 2001238258A JP 3304081 B2 JP3304081 B2 JP 3304081B2
- Authority
- JP
- Japan
- Prior art keywords
- page
- command
- task
- processing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Landscapes
- Accessory Devices And Overall Control Thereof (AREA)
- Record Information Processing For Printing (AREA)
Description
特に、レーザプリンタ、LED(発光ダイオード)プリ
ンタ、LCS(液晶シャッタ)プリンタ等のページプリ
ンタやシャトルプリンタを、マルチプロセッサを利用し
て高速印刷するための印刷制御方法に関する。
願平1−282747号に記載の印刷制御装置において
は、ホストコンピュータからの印刷コマンド列の受信
と、ページバッファへの描画と、描画済みページバッフ
ァについての印刷を並行処理することにより、印刷スル
ープットをプリンタ最高性能に迄高めていた。本プリン
タ最高性能は、ページ当りの描画時間が概ねページ当り
のプリンタメカニズム印刷時間(1ページの最短印刷時
間)以下なら、達成されていた。
御装置においては、1ページを複数個の領域に分割し、
各領域毎に専用の描画プロセッサを用意し、各々が各領
域を独立に描画することにより描画性能を向上させ、1
ページの印刷を高速化しようとしていた。この装置で
は、ページ当りの描画時間がページ当りのプリンタメカ
ニズム印刷時間を超えても、1ページのみの印刷(ファ
ーストプリント)なら、印刷性能を向上させることがで
きた。
御装置においては、1ページを複数個の領域に分割し、
各領域毎に文字描画プロセッサ、図形描画プロセッサの
いずれかを割り当て、各プロセッサが各領域を独立に描
画することにより描画性能を向上させ、1ページの印刷
を高速化しようとしていた。
御を行なう従来の技術として、特開平1−263051
号、特開平1−263055号、特開平2−63852
号、特開平2−108567号の各公報に記載のものが
ある。
8481号や特願平1−282747号においては、ペ
ージ当りの描画時間が、概ねページ当りのプリンタメカ
ニズム印刷時間を超えると、印刷スループットがプリン
タ最高性能より低下するという問題があった。
特開平1−263051号においては、1ページのみの
描画性能は高いが、描画と印刷を並行処理していないた
め、各ページの印刷内容が異なる複数ページからなる文
書を連続して印刷する際(以後、単に連続印刷と呼
ぶ)、プリンタ最高性能が得られないという問題があっ
た。
は、各ページが文字又は図形のみの場合、図形描画プロ
セッサ又は文字描画プロセッサが役に立たないため、描
画性能の向上が図れず、1ページの印刷も十分高速化で
きないという問題があった。
ずれの従来技術においても、印刷内容が異なる複数ペー
ジからなる文書を連続して印刷する際の、複数のプロセ
ッサが異なるページを並列描画する手法について何ら言
及されていないという問題があった。
て好適なマルチプロセッサ構成の印刷制御装置におい
て、文書を印刷する際の印刷性能を向上させることがで
きる印刷制御方法を提供することにある。
書でも、また高ドット密度かつ高速のプリンタを用いて
もプリンタ最高性能での印刷を行なうことができる印刷
制御方法および印刷制御装置を提供することにある。
法は、複数のプロセッサによりページバッファの描画処
理および印刷処理を行うものであって、一頁分のページ
バッファを複数の領域に分け、分けられたページバッフ
ァの各領域に描画処理を行うプロセッサを割り当て、割
り当てられた各プロセッサは、それぞれ、頁の印刷コマ
ンドを受け取り、実際の描画(実描画)を行うことな
く、前記複数の領域について、書式情報の引き継ぎを行
う処理(空描画)を実行し、該空描画により求められた
当該領域の書式情報にしたがって、前記印刷コマンド列
に基づき割り当てられた領域をクリッピングエリアとす
る実描画を実行するようにしたものである。なお、本明
細書において、描画属性パラメータとは、フォントの種
類およびサイズ、文字ピッチ、行ピッチ、反転、アンダ
ライン、イタリック、等各種の描画属性の他、紙サイ
ズ、印刷部数、印字方向(ポートレート/ランドスケー
プ)等の用紙制御情報も含むものとする。
とを有するマルチプロセッサ型印刷制御装置において
は、マスタプロセッサの制御のもとで、複数個のスレー
ブプロセッサが描画等の処理を並列処理することができ
るので、印刷制御装置における処理能力を向上させるこ
とができる。特に、空描画の採用により複数のプロセッ
サによる描画処理の並列実行が容易となった。
画集中処理方式、又は紙サイズ仮定型空描画集中処理方
式)を用いた印刷制御装置においては、描画管理タスク
が空描画を行ない、複数個の個別描画タスクが別プロセ
ッサ上で実描画を並列実行する。また、実描画により描
画の済んだ各ページバッファについての印刷処理を、上
記空描画とは並行的に、また実描画とは並列的に実行す
ることができる。なお、本明細書において、「並列」実
行とは、複数のプロセッサが同時に複数の処理を実行す
ることを意味し、「並行」実行とは、1つのプロセッサ
が複数の処理をパイプライン的に処理することを意味す
る。
数個の個別描画タスクが別プロセッサ上で実描画を並列
実行し、実描画により描画の済んだ各ページバッファに
ついての印刷処理を、実描画とは並列的に実行する。
散処理方式においては、実描画処理を並列実行している
ため、ページ当りの描画時間が、ページ当りのプリンタ
メカニズム印刷時間を超える場合でも、印刷スループッ
トとしてプリンタ最高性能を達成することができる。ま
た描画と印刷を並行処理しているため、各ページの印刷
内容が異なる複数ページからなる文書についての連続印
刷においても、プリンタ最高性能を達成することができ
る。また複数個のプロセッサとして汎用プロセッサを用
いることにより、各ページが文字又は図形のみの文書に
ついても描画性能を向上させ、印刷性能を向上させるこ
とができる。
処理方式のうち可変長ページバッファ制御のものを用い
る場合、紙サイズに応じて必要なサイズのページバッフ
ァだけを獲得するため、大きな紙サイズの印刷を少ない
ページバッファ総容量で実現することができる。さら
に、小さな紙サイズの印刷では多数のページバッファを
配置できるようになるため、一部描画負荷の大きいペー
ジの印刷が混在していても、平均印刷スループットを低
下することなく、プリンタエンジン最高性能での印刷を
実現することができる。
描画集中処理方式とは異なり、空描画を個別描画タスク
が行なっている。従って、前記空描画の負荷が小さい場
合、個別描画タスク数Mをスレーブプロセッサ総数Kま
たはK+1と等しくし、各個別描画タスクmを、いずれ
かのスレーブプロセッサ及びマスタプロセッサに割り当
てることで、印刷スループットを空描画集中処理方式よ
り向上させることができる。
もに、該制約コマンドに対応した印刷制御処理において
は前記空描画処理において、明瞭なページ区切りの検出
のみを行ない、前記描画属性パラメータの設定処理を行
なわないで済む。そのため、制約コマンドと制約コマン
ドに対応した印刷制御方式を設けることにより、空描画
集中処理方式及び空描画分散処理方式における空描画処
理を、制約コマンドの場合、簡単化し、高速することが
できる。
描画集中処理方式と空描画分散処理について示した効果
に加え、プロセッサ数にほぼ比例した描画性能の向上効
果も得ることができる。
においては、各1ページについての描画を複数個の領域
に分け、各領域について別プロセッサが並列実行する。
さらに、描画の済んだ各ページバッファについての印刷
処理を、上記描画とは並行的に実行する。
装置においては、連続印刷を高速実行するだけでなく、
1ページからなる文書や、ファーストプリントも高速印
刷することができる。
に、図2から図5に示すハードウェアの基本構成図を用
いて本実施例における印刷制御装置のハードウェアの基
本構成を説明する。
す。本図において印刷制御装置11は、マスタプロセッ
サモジュール100、スレーブプロセッサモジュール1
(110)、…、スレーブプロセッサモジュールk(本
図からは省略)、…、スレーブプロセッサモジュールK
(120)、システムバス調停部130、システムバス
12、共有メモリ141、ホスト通信コントローラ15
1−a、二次記憶装置161、ファイルコントローラ1
62−a、プリンタエンジンアダプタ部1(171−
a)とからなる。
スタプロセッサ(以後、MPUとも記す)101、内部
バス102、ローカルメモリ103、バスインターフェ
ース(以後I/Fとも記す)104とからなる。内部バ
ス102は、MPU101の各種入出力信号(アドレス
信号、データ信号、その他の制御信号)からなる。
と、バスI/F104は発生したアドレス信号に応じて
内部バス102上のアドレスをそのまま発生し、該内部
バス102上のローカルメモリ103との入出力を行っ
たり、システムバス12上のアドレスへ変換した後、シ
ステムバス12上の共有メモリ141や各種周辺コント
ローラとの入出力を行ったりする。
0)は、スレーブプロセッサ1(以後SPU1とも記
す)(111)、内部バス112、ローカルメモリ11
3、バスI/F114とからなる。内部バス112は、
SPU1(111)の各種入出力信号(アドレス信号、
データ信号、その他の制御信号)からなる。SPU1
(111)がアドレス信号を発生すると、バスI/F1
14は発生したアドレス信号に応じて内部バス112上
のアドレスをそのまま発生し、該内部バス112上のロ
ーカルメモリ113との入出力を行ったり、システムバ
ス12上のアドレスへ変換した後、システムバス12上
の共有メモリ141や各種周辺コントローラとの入出力
を行ったりする。
…、k、…、Kはスレーブプロセッサモジュール1(1
10)と同様に構成する。例えばスレーブプロセッサモ
ジュールK(120)はスレーブプロセッサK(以後S
PU Kとも記す)(121)、内部バス122、ロー
カルメモリ123、バスI/F124とからなり、各々
はスレーブプロセッサモジュール1(110)の場合と
同様に機能する。
ジュールつまりマスタプロセッサモジュール100、ス
レーブプロセッサモジュール1(110)、…、スレー
ブプロセッサモジュールK(120)が前記共有メモリ
141や各種周辺コントローラ、つまりホスト通信コン
トローラ151−aやファイルコントローラ162−a
やプリンタエンジンアダプタ部1(171−a)との間
で入出力を行うための各種入出力信号(アドレス信号、
データ信号、その他の制御信号)からなる。
12に対し、該システムバス12のマスタであるマスタ
プロセッサモジュール100、スレーブプロセッサモジ
ュール1(110)、…、スレーブプロセッサモジュー
ルk、…、スレーブプロセッサモジュールK(12
0)、ホスト通信コントローラ151−a、ファイルコ
ントローラ162−a、プリンタエンジンアダプタ部1
(171−a)等がシステムバスの使用権の要求信号を
有効にした時、どのマスタに該システムバスの使用権を
与えるかを決定する。使用権の決定方式としては、先着
順方式、集中制御優先度方式、デージーチェーン方式、
サイクリック方式等の中のいずれを用いても良い。
U1(111)、…、SPUk、…、SPUK(12
1)のすべてからアクセス可能なメモリである。共有メ
モリ141をマルチポートメモリで構成し、一つのポー
トをホスト通信コントローラ151−aやファイルコン
トローラ162−a等の周辺コントローラがアクセスす
るためのポートとし、別の一つのポートをマスタプロセ
ッサやスレーブプロセッサがアクセスするためのポート
としてもよい。
刷制御装置11がホストコンピュータ10と通信を行う
ためのコントローラであり、システムバス12の一つの
周辺コントローラである。
FとしてはSCSI(Small ComputerSystem Interfac
e)、RS232C、RS422、GP-IB(General Purpose Interface
Bus)、セントロニクス、HDLC(High -Level Data
Link Control)、ISDN(Integrated Services Deg
ital Network)、Ethernet等を用い、使用する
物理I/Fの種類に応じて本コントローラ151−aの
ハードウェア論理として適切なものを実装する。
書式データ、プログラム等を格納するために用い、シス
テムバス12の一つの周辺コントローラであるファイル
コントローラ162−aを介してシステムバス12に接
続される。
a)は、印刷制御装置11がプリンタエンジン部18と
入出力を行うためのコントローラであり、やはりシステ
ムバス12の一つの周辺コントローラである。
2)における各種信号について説明する。
ュールとシステムバスを接続するための入出力信号の集
まりであり、アドレス信号、データ信号、バス調停用信
号、MPU101の制御信号、共有メモリ141の制御
信号等からなる。
ジュール1とシステムバスを接続するための入出力信号
の集まりであり、アドレス信号、データ信号、バス調停
用信号、SPU1(101)の制御信号、共有メモリ1
41の制御信号等からなる。
Kも、スレーブプロセッサモジュール1と同様の信号線
を用いて、システムバスとの間で入出力信号の送受信を
行う。
バスを接続するための入出力信号の集まりであり、アド
レス信号、データ信号、共有メモリ141の制御信号等
からなる。
ラ151−aと共有メモリ141を接続するための入出
力信号の集まりであり、アドレス信号、データ信号、共
有メモリ141の制御信号等からなる。
ラ151−aとシステムバスを接続するための入出力信
号の集まりであり、バス調停用信号、ホスト通信コント
ローラの制御信号(MPUへの割込み信号を含む)等か
らなる。各SPUへの割込み信号をさらに該信号線12
−dに追加することもできる。
162−aと共有メモリ141を接続するための入出力
信号の集まりであり、アドレス信号、データ信号、共有
メモリ141の制御信号等からなる。
162−aとシステムバスを接続するための入出力信号
の集まりであり、バス調停用信号、ファイルコントロー
ラ制御信号(MPUへの割込み信号を含む)等からな
る。各SPUへの割込み信号をさらに該信号線12−g
に追加することもできる。
プタ部1(171−a)とシステムバスを接続するため
の入出力信号の集まりであり、バス調停用信号、プリン
タエンジンアダプタ部1の制御信号(MPUへの割込み
信号や各SPUへの割込み信号を含む)、アドレス信
号、データ信号、共有メモリ141の制御信号等からな
る。各SPUへの割込み信号を省略することもできる。
プタ部1(171−a)とプリンタエンジン部18を接
続するための入出力信号の集まりであり、プリンタエン
ジン部18が定める各種インターフェース信号からな
る。
す。本図は、図2におけるプリンタエンジンアダプタ部
1(171−a)をプリンタエンジンアダプタ部2(1
71−b)に置き換えたものである。プリンタエンジン
アダプタ部2(171−b)はシステムバス12に接続
される点は同じであるが、プリンタエンジン部18への
印刷データの読出しを、システムバス12でなく、新た
に設けたビデオバス1(13)を用いて行う。
ーフェースを信号線12−j、信号線12−k、信号線
12−lを用いてとる。
ュールとビデオバスを接続するための入出力信号の集ま
りであり、アドレス信号、データ信号、バス調停用信
号、MPU101の制御信号、プリンタエンジンアダプ
タ部2(171−b)内のメモリ(本図には示さず)を
アクセスするための制御信号等からなる。
ジュール1とビデオバス1(13)を接続するための入
出力信号の集まりであり、アドレス信号、データ信号、
バス調停用信号、SPU1(111)の制御信号、プリ
ンタエンジンアダプタ部2(171−b)内のメモリ
(本図には示さず)をアクセスするための制御信号等か
らなる。
Kも、スレーブプロセッサモジュール1と同様の信号線
を用いて、ビデオバス1(13)との間で入出力信号の
送受信を行う。
プタ部2(171−b)とビデオバス1(13)を接続
するための入出力信号の集まりであり、アドレス信号、
データ信号、バス調停用信号、プリンタエンジンアダプ
タ部2(171−b)の制御信号、MPUや各SPUへ
の割込み信号等からなる。
す。本図は、図2におけるホスト通信コントローラ15
1−aとファイルコントローラ162−aとを、それぞ
れホスト通信コントローラ151−bとファイルコント
ローラ162−bに置き換え、それらを共有メモリに直
接接続するのをやめ、システムバスのみに接続したもの
である。共有メモリ周りのインターフェースが図2の場
合とは異なるため、本図では共有メモリの参照番号とし
て142を用いる。
ムバス12を接続するための入出力信号の集まりであ
り、アドレス信号、データ信号、共有メモリ142の制
御信号等からなる。
ーラ151−bとシステムバス12を接続するための入
出力信号の集まりであり、アドレス信号、データ信号、
バス調停用信号、ホスト通信コントローラの制御信号
(MPUへの割込み信号を含む)、共有メモリ142の
制御信号等からなる。
ラ162−bとシステムバス12を接続するための入出
力信号の集まりであり、アドレス信号、データ信号、バ
ス調停用信号、ファイルコントローラ制御信号(MPU
への割込み信号を含む)、共有メモリ142の制御信号
等からなる。
に各SPUへの割込み信号を追加することもできる。
す。本図は、図3におけるホスト通信コントローラ15
1−aとファイルコントローラ162−aとを、それぞ
れホスト通信コントローラ151−bとファイルコント
ローラ162−bとに置き換え、それらを共有メモリに
直接接続するのをやめ、システムバスのみに接続したも
のである。図2を図4へ変更したのと、変更内容は同様
である。本図でも共有メモリの参照番号としては、14
2を用いる。
ードウェア構成をさらに詳しく説明する。図1では図3
において、マスタプロセッサモジュール100、各スレ
ーブプロセッサモジュール部に、タイマ106、11
6、126等;イメージ処理プロセッサ107、11
7、127等;文字、図形描画プロセッサ108、11
8、128等を追加した。さらに、操作パネル部19も
追加し、印刷制御装置11についての表示と入力とを行
えるようにした。
要素を追加することができる。
トウェア構成を説明する。本図に示すように、ソフトウ
ェアはモニタ部31とタスク処理部32とから構成され
る。モニタ部31は、カーネル部311、ホスト通信制
御部312、コマンドバッファ制御部313、ファイル
制御部314、ページバッファ制御部315、プリンタ
制御部316とコマンドバッファ部33とページバッフ
ァ部34とから構成される。
ムのメインルーチン、スーパバイザコール(SVCと略
す)制御のメインルーチン、タスク制御部、及びタイマ
制御部とからなる。
ュータ10と印刷制御装置11の間で各種コマンドの授
受を行う。例えば、ホストコンピュータ10から印刷コ
マンド列を受信したり、印刷制御装置11内で発生した
各種事象(エラー発生、頁印刷終了、文書印刷終了等)
をホストコンピュータ10へ報告したりする。
ドバッファ部33についての書き込みと読み出しを行う
際に用いる書き込みスタートポインタ、書き込みエンド
ポインタ、読み出しポインタ等の制御を行う。
スト通信制御部312が用いて、印刷コマンドをコマン
ドバッファ部33へ格納する。また同じくコマンドバッ
ファ制御部313を用いて、後述するタスク処理部32
内の描画タスク部321がコマンドバッファ部33の内
容を読み出し、処理する。
置161内の各ファイルを制御するための部分であり、
各ファイル内データのアクセスのための制御や、ファイ
ルを構成するファイル実体(複数個のブロックの集合)
の管理等を行う。タスク処理部内の各タスクは本ファイ
ル制御部314内のファイル制御用の各種SVC機能を
用いて、ファイルの制御を行う。
ジ構成のページバッファ部34についての空き管理(獲
得、解放の管理)を行う。本空き管理を用いることで、
ページバッファへの描画書き込みが必要になった時点
で、紙サイズに対応して定まる必要なだけのページバッ
ファを獲得し、描画内容の読み出しが終った時点で該ペ
ージバッファを解放することもできる。
ン部18とプリンタエンジンアダプタ部1(171−
a)又はプリンタエンジンアダプタ部2(171−b)
の空き管理や、プリンタエンジン部18との入出力の制
御を行う。
印刷タスク部322とその他のタスクの処理部323と
からなる。
210と、個別描画タスク1(3211)、個別描画タ
スク2(3212)、…、個別描画タスクM(321
3)とからなる。これらの各種描画タスク321、32
10、3211、…、3213は、本印刷制御装置11
に実装した複数個のプロセッサモジュール(100、1
10、120等)を用いて異なるプロセッサ間では並列
処理され、同一のプロセッサ内では並行処理される。こ
れらの各種描画タスク321、3210、3211、3
213の処理内容は、後で詳しく述べる。
221)、印刷タスク2(3222)、…、印刷タスク
N(3223)とからなる。各印刷タスクnは、各個別
描画タスクmが前記ページバッファ部34への描画を終
了した時点で、該個別描画タスクmにより起動される。
起動された各印刷タスクnは、描画の終了した各ページ
バッファ(紙面1ページ分)についての印刷処理を実行
する。本印刷処理は、前記プリンタ制御部316に対
し、プリンタ制御用の各種SVC命令を発行することに
より実行する。印刷タスクは別々のページについて並行
処理するため、複数個用意する。用意する印刷タスクの
合計数は、本装置内で同時に並行処理しうる印刷タスク
数の最大値とした。具体的には、任意の時点で、プリン
タエンジン部18の給紙部から排紙部までの間に存在し
うる最大紙数に対応し、この数はプリンタエンジン部1
8の仕様によって増減する。
容は、本発明の出願人が先に出願した特願昭63−15
8481号や特願平1−282747号の場合と、マル
チプロセッサを利用して前述のように並列処理する点以
外は、同様である。
ッファ部34は、モニタ部31にもタスク処理部32に
も属さないメモリ部分としてとらえてもよい。
は、前記図1又は図2〜図5のハードウェア構成図内の
各部分に次のように対応づけられる。
33とページバッファ部34を除く)のプログラムは、
MPU101用のローカルメモリ103に格納し、MP
U101にて実行する。
リ(141又は142)に配置する。さらに、コマンド
バッファ部33の全体又は一部を各ローカルメモリ(1
03、113、123等)に配置してもよい。
(141又は142)又は各ローカルメモリ(103、
113、123等)に配置する。
ムは、MPU101用のローカルメモリ103に格納
し、MPU101にて実行する。各SPU用のローカル
メモリ(113、123等)に格納し、各SPU(11
1、121等)にて実行してもよい。
2、…、個別描画タスクM用のプログラムは、各SPU
用のローカルメモリ(113、123等)又はMPU1
01用のローカルメモリ103に格納し、SPU(11
1、121等)又はMPU101にて実行する。
印刷タスクN用のプログラムは、MPU101用のロー
カルメモリ103に格納し、MPU101にて実行す
る。各SPU用のローカルメモリ(113、123等)
に格納し、各SPU(111、121等)にて実行する
こともできる。
PU101用のローカルメモリ103又は各SPU用の
ローカルメモリ(113、123等)に格納し、MPU
101又はSPU(111、121等)にて実行する。
おける一つの処理手順を説明する。以後、本処理手順を
紙サイズ確定型空描画集中処理方式と呼ぶ。
ータからホスト通信コントローラを介して印刷コマンド
列を受信し、前記共有メモリ(141又は142)内の
コマンドバッファ部に格納する。
10は、コマンドバッファ部内の印刷コマンド列に対
し、次の処理を行う。
1)。 (1−1)個別描画タスク番号mを0に初期化する(4
11)。 (1−2)ページ通し番号jを0に初期化する(41
2)。 (1−3)描画属性パラメータを初期化する(41
3)。 (2)以下の処理を無限に繰り返す(42)。 (2−1)パラメータを更新する(421)。 (2−1−1)個別描画タスク番号iを更新する(42
11)。 (2−1−2)ページ通し番号jを更新する(421
2)。 (2−2)1ページ分の空描画を行う(422)。つま
り、前記コマンドバッファ部内の印刷コマンド列を読出
し、解釈しながら、描画を伴わない描画属性パラメータ
の設定処理をページ区切りを検出するまで1ページ分行
う。これにより、次ページ先頭用のページ区切りアドレ
スと描画属性パラメータとを求める(422)。 (2−3)ページ通し番号jについての実描画を行うた
めの個別描画タスクm用に資源を獲得する(423)。 (2−3−1)個別描画タスクm用に空き状態のスレー
ブプロセッサを獲得する(4231)。 (2−3−2)個別描画タスクm用に空き状態のページ
バッファを獲得するつまり、個別描画タスクm用に獲得
したスレーブプロセッサがアクセス可能で、前記空描画
処理により確定した紙サイズ分の大きさを有する空き状
態のページバッファメモリを獲得する(4232)。 (2−4)個別描画タスクmを起動し、空描画を終了し
たページ(ページ通し番号j)についての前記獲得スレ
ーブプロセッサによる前記獲得ページバッファメモリへ
の実描画と呼ぶ処理を、第1ページついては初期値であ
る第1ページ先頭用のページ区切りアドレスと描画属性
パラメータを入力パラメータとし、また第2ページ以降
については既にマスタプロセッサが検出済みのページ先
頭用のページ区切りアドレスと描画属性パラメータを入
力パラメータとして起動する(424)。
スク3210により起動されたスレーブプロセッサk内
の個別描画タスクm(3212から3213)は、次の
処理を行う。 (1)1ページ分の実描画を行う。つまり、実描画とし
て描画属性パラメータの設定処理及び獲得したページバ
ッファへの描画をページ区切りを検出するまで行い、1
ページ分の描画を実行する(441)。 (2)該SPUkからMPUに、該実描画の終了を報告
するとともに、該描画済みページバッファについての印
刷処理を依頼する(442)。 (3)本報告と印刷処理の依頼が受理されたことを、M
PUからの連絡により知った後、処理を終了する。
の連絡や処理の依頼は、以下のように行う。 (1)各SPUkが、MPUへの情報送信処理部を用い
て、MPUへの連絡や処理の依頼を行う(451)。 (2)MPUが、SPUからの情報受信処理部を用い
て、前記連絡や処理の依頼を受信する(432)。 (3)MPUが、SPU依頼内容の実行部を用いて、連
絡の受信や処理の実行を行う(433)。 (4)MPUが、SPUへの情報送信処理部を用いて、
SPUlへ連絡の受信や処理の実行が終了したことを送
信する(431)。 (5)MPUが、SPUからの情報受信処理部を用い
て、前記連絡や処理の依頼が終了したことを知る(45
2)。
SPU間の連絡方法をさらに詳しく説明する。
に、割込み信号を相互に入力することにより、連絡を取
り合う。これらの各割込み信号は前記システムバス12
の中に含めるようにしたが、システムバス12とは独立
の信号線としてもよい。
に共有メモリ上に配置する。
た共有メモリ上の連絡情報を用いて、MPU(SPU
k)からSPU k(MPU)への連絡は以下のように
行う。(A)MPU(SPU k)の処理 (1)連絡用マクロ命令mtos(stom)をタスク又はモニタ
が発行する。 (2)MPU(SPU k)上のモニタがmtos(stom)を
実行する。
の連絡情報エリアに、連絡情報Iを記入する。
k(MPU)への割込み信号をアサートする。
(SPU k)からの連絡割込みであることを識別す
る。
PU(SPU k)からSPUk(MPU)への連絡情
報Iを読出し、その内容に応じた処理を行う。
に加え、各種処理(タスク起動、タスク終了、事象発生
待ち、資源空き待ち等のタスク制御を伴うことも可能)
を行うことができる。
信したMPUは、前記ページバッファ制御部315を用
いて、ページバッファの獲得と再獲得を行う(55
3)。
SPU依頼内容の実行部において、実描画終了ページの
更新と、報告元スレーブプロセッサの解放を行う(43
3)。 また印刷処理を依頼されたMPUは、同じくS
PU依頼内容の実行部において、該描画済みページバッ
ファについての印刷タスクを起動する(433)。
みページバッファからの読み出しの終了を、MPUがプ
リンタエンジンアダプタ部2(171−b)又はSPU
からの割込み信号により知ると、MPUがページバッフ
ァ制御部315を用いて、当該ページバッファを解放す
る。
刷タスク処理は、前記従来技術に示した方法を用いて並
行処理する。さらにMPUによる処理と各SPUによる
処理は前述のように並列処理する。
おけるもう一つの処理手順を説明する。以後、本処理手
順を紙サイズ仮定型空描画集中処理方式と呼ぶ。
スト通信コントローラを介して印刷コマンド列を受信
し、共有メモリ内のコマンドバッファ部に格納する。M
PU内の描画管理タスク3210は、コマンドバッファ
部内の印刷コマンド列に対し、次の処理を行う。
1)。 (1−1)個別描画タスク番号mを1に初期化する(5
11)。 (1−2)ページ通し番号jを1に初期化する(51
2)。 (1−3)描画属性パラメータを初期化する(51
3)。
を行うため、個別描画タスクi用に資源を獲得する(5
2)。 (2−1)個別描画タスクm用に空き状態のSPUを獲
得する(521)。 (2−2)個別描画タスクm用に空き状態のページバッ
ファを獲得する。つまり、個別描画タスクm用に獲得し
たSPUがアクセス可能な、初期値として仮定されてい
る紙サイズ分の大きさを有する空き状態のページバッフ
ァメモリを獲得する(522)。
通し番号1のページ(第1ページ)についての前記獲得
スレーブプロセッサによる前記獲得ページバッファメモ
リへの実描画と呼ぶ処理を、第1ページ先頭用のページ
区切りアドレスと描画属性パラメータを入力パラメータ
として起動する(53)。
4)。 (4−1)1ページ分の空描画を行う。つまり、前記コ
マンドバッファ部内の印刷コマンド列を読出し、解釈し
ながら、描画を伴わない描画属性パラメータの設定処理
をページ区切りを検出するまで1ページ分行う。これに
より、次ページ先頭用のページ区切りアドレスと描画属
性パラメータとを格納する(541)。 (4−2)パラメータを更新する(542)。 (4−2−1)個別描画タスク番号mを更新する(54
21)。 (4−2−2)ページ通し番号jを更新する(542
2)。 (4−3)ページ通し番号jについての実描画を行うた
めの個別描画タスクm用に資源を獲得する(543)。 (4−3−1)個別描画タスクm用に空き状態のSPU
を獲得する(5431)。 (4−3−2)個別描画タスクi用に空き状態のページ
バッファを獲得する。つまり、個別描画タスクi用に獲
得したSPUがアクセス可能な、前記空描画終了時点の
デフォルト紙サイズ分の大きさを有する、空き状態のペ
ージバッファメモリを獲得する(5432)。 (4−4)個別描画タスクmを起動し、空描画を終了し
た次のページ(ページ通し番号j)についての前記獲得
スレーブプロセッサによる前記獲得ページバッファメモ
リへの実描画と呼ぶ処理を、次頁先頭用のページ区切り
アドレスと描画属性パラメータを入力パラメータとして
起動する(544)。
0により起動されたスレーブプロセッサk内の個別描画
タスクm(3212から3213)は、次の処理を行
う。
り、実描画として描画属性パラメータの設定処理及び獲
得したページバッファへの描画をページ区切りを検出す
るまで行い、1ページ分の描画を実行する。
定処理において紙サイズの変更を検出すると、該変更紙
サイズについてのページバッファの再獲得をMPUに依
頼する(561)。
処理)からMPUに、該実描画の終了を報告するととも
に、該描画済みページバッファについての印刷処理を依
頼する(562)。
たことを、MPUからの連絡により知った後、処理を終
了する。
の連絡や処理の依頼は、MPUへの情報送信処理部(5
71)、MPUからの情報受信処理部(572)、SP
Uへの情報送信処理部(551)、SPUからの情報受
信処理部(552)、SPU依頼内容の実行部(55
3)を用いて、図7の場合と同様にして行う。
したMPUは、前記ページバッファ制御部315を用い
て、ページバッファの獲得と再獲得を行う。
は、SPU依頼内容の実行部において、実描画終了ペー
ジの更新と、報告元スレーブプロセッサの解放を行う
(553)。また印刷処理を依頼されたMPUは、同じ
くSPU依頼内容の実行部において、該描画済みページ
バッファについての印刷タスクを起動する(553)。
みページバッファからの読み出しの終了を、MPUがプ
リンタエンジンアダプタ部2(171−b)又はSPU
からの割込み信号により知ると、MPUが前記ページバ
ッファ制御部315を用いて、当該ページバッファを解
放する。
刷タスク処理は、前記従来技術に示した方法を用いて並
行処理する。さらに前記MPUによる処理と前記各SP
Uによる処理は前述のように並列処理する。
ァの獲得、解放方式として紙サイズに応じて、必要サイ
ズのページバッファを獲得、解放する可変長ページバッ
ファ制御方式を採用したが、紙サイズに依らず固定サイ
ズ(プリンタエンジンにて印刷可能な最大紙サイズ分の
大きさに対応)のページバッファを獲得、解放する固定
長ページバッファ制御方式を採用することもできる。こ
の場合、前記手順において、ページバッファの再獲得が
不要になる等、ページバッファの制御は簡単にできる
が、可変長ページバッファ制御方式ほどにはページバッ
ファメモリを有効活用することはできない。
ジンアダプタ部2(172)の構成の例を説明する。
は図9では、プリンタエンジンアダプタ部2(172)
をプリンタ制御用プロセッサ(PPUと略す)172
1、内部バス1722、ローカルメモリ1723、プリ
ンタメモリコントローラ1(1724、PMC1とも略
す)、バスI/F1725と1726とから構成され
る。このうち、PMC1(1724)は前記ローカルメ
モリ1723の内容(通常、後述する印刷中継バッファ
と呼ぶエリアの内容)のプリンタエンジン部18への読
み出し処理と前記ローカルメモリ1723の制御(DR
AMのリフレッシュ等)を行う。本読み出し処理のため
に、内蔵のDMA(Direct Memory Access)回路を設
け、該読み出し処理を前記プリンタ制御用プロセッサ1
721に負担をかけないで行うことが望ましい。本構成
の下で、マスタプロセッサモジュール100、各スレー
ブプロセッサモジュール(110等)内のローカルメモ
リ上に配置されているページバッファ部内の描画済みペ
ージバッファの内容を、各プロセッサモジュール用の内
部バスに接続されている各プロセッサモジュール内のマ
スタプロセッサ、スレーブプロセッサのいずれかのプロ
セッサ、又はDMA回路(109、119等)が、該内
部バスからビデオバス1(13)と呼ぶ前記システムバ
ス12とは別のバスにに送信の後、該ビデオバス1(1
3)から前記プリンタエンジンアダプタ部2(171−
b)内のローカルメモリ1723上に配置した印刷中継
バッファと呼ぶエリアに送信し、該印刷中継バッファ内
のデータを前記プリンタエンジン部18へ、プリンタエ
ンジンインターフェース(12−i−1と12−i−
2)に従って送信する。また、前記プリンタエンジンア
ダプタ部2(172)内の前記印刷中継バッファから前
記プリンタエンジン部18へのデータの読み出しを、プ
リンタエンジンアダプタ部2(171−b)内のPMC
に内蔵したDMA回路を用いて行ってもよい。
2(171−b)はプリンタ制御用プロセッサ(PPU
と略す)1721、内部バス1722、ローカルメモリ
1723、バスI/F1725とから構成される。
内にプリンタメモリコントローラ2(10A、11A
等、PMC2と略す)を設けてもよい。該PMC2は各
ローカルメモリ103、113等の内容(通常ページバ
ッファの内容)のプリンタエンジン部18への読み出し
処理と前記ローカルメモリ103、113等の制御(D
RAMのリフレッシュ等)を行う。本読み出し処理のた
めに、内蔵のDMA(Direct Memory Access)回路を設
け、該読み出し処理を各プロセッサモジュール内のMP
Uや各SPUに負担をかけないで行うこともできる。
ル、各スレーブプロセッサモジュール内のローカルメモ
リ(103、113等)上に配置されているページバッ
ファ部内の描画済みページバッファの内容を、各プロセ
ッサモジュール内のPMC2が各プロセッサモジュール
用の内部バスを介さず、ビデオバス2と呼ぶ前記システ
ムバスとは別のバスに送信の後、該ビデオバス2から前
記プリンタエンジン部へ、プリンタエンジンインターフ
ェースに従って送信する。
回路109、119等やPMC2(10A、11A等)
が前記データ転送を行う際、ページバッファの各ラスタ
の読み出し時に、ゼロクリアするモードとしないモード
を設けた。ゼロクリアするモードは通常の各ページを印
刷部数1枚ずつ印刷するシングルページコピーと呼ぶ印
刷において用いる。また、ゼロクリアしないモードは各
ページを印刷部数で2枚以上印刷するマルチページコピ
ーと呼ぶ印刷において用いる。
間が、ページ当りのプリンタメカニズム印刷時間を超え
る場合でも、印刷スループットとしてプリンタ最高性能
を達成することができる。
るコマンド受信、空描画、実描画、印刷等のタイミング
を示す。図示のように、MPUによる描画管理タスクの
処理と各SPUによる各個別描画タスク1、2、3等の
処理はプロセッサ毎に並列して実行されている。またM
PUにより処理されるコマンド受信、描画管理タスクの
処理、転送1、転送2、…、転送5等、印刷1、印刷
2、…、印刷5等は、並行(パイプライン処理)して実
行されている。
ンアダプタ部2(172)の構成として、前記図9を用
いた場合に対応する。このうち図11では、各プロセッ
サモジュール(100、110、120等)内のローカ
ルメモリ(103、113等)から前記プリンタエンジ
ンアダプタ部2(171−b)内の印刷中継バッファ
(ローカルメモリ1723内)へのデータ転送をDMA
回路(109、119等)が行う場合に相当する。ま
た、本図では前記ゼロクリアをハードウェア(該DMA
回路)を用いて行っている。
セッサモジュール用の内部バスに接続されている各プロ
セッサモジュール内のMPU、SPUのいずれかのプロ
セッサがソフトウェア処理を用いて行う場合に相当す
る。また、本図では前記ゼロクリアをソフトウェア(該
プロセッサ)を用いて行っている。
タエンジンアダプタ部2(171−b)内の印刷中継バ
ッファとして、少なくともページバッファ2ページ分
(1ページがプリンタエンジン部18にて印刷可能な最
大紙サイズ分の大きさを有する)を用意することによ
り、該印刷中継バッファへの書き込みと読み出しを並行
処理可能とした。なお、印刷中継バッファの容量を減ら
しても印刷処理を行うことができる。
大きい場合の例を示しているが、印刷制御装置の実現方
法に応じて、クリア時間、転送時間両者の大小関係は変
化する。しかし、両者の大小関係が変わっても、各処理
のタイミングは図12の場合と同様である。
部2(172)の構成として、前記図10を用いた場合
に対応する。
理を並列実行しているため、ページ当りの描画時間が、
ページ当りのプリンタメカニズム印刷時間を超える場合
でも、印刷スループットとしてプリンタ最高性能を達成
することができる。
め、各ページの印刷内容が異なる複数ページからなる文
書についての連続印刷においても、プリンタ最高性能を
達成することができる。
1、SPU2、…、SPUK)として汎用プロセッサを
用いているため、各ページが文字又は図形のみの文書に
ついても描画性能を向上し、印刷性能を向上させること
ができる。
詳細構成、ソフトウェア構成、プリンタエンジンアダプ
タ部2の構成は、前記第1実施例の場合と同じく、図1
〜図6、図9、図10に示したものを利用する。
処理手順を説明する。以後、本手順を空描画分散処理方
式と呼ぶ。
におけるもう一つの処理手順を説明する。初めにMPU
がホストコンピュータからホスト通信コントローラを介
して印刷コマンド列を受信し、前記共有メモリ内のコマ
ンドバッファ部に格納する。前記MPU内の前記描画管
理タスク3210は、前記コマンドバッファ部内の印刷
コマンド列に対し、次の処理を行う。
タスク1、2、…、M)を起動する(81)。個別描画
タスク数Mとしては通常次の二つの場合がある。
セッサ総数Kと同数とする。
る。
ずれかのスレーブプロセッサに割り当てる。(b)の場
合、各個別描画タスクmは、いずれかのスレーブプロセ
ッサ及びマスタプロセッサに割り当てる。以後本説明で
は、(a)の場合を想定して説明するが、(b)の場合
についても同様にして実現することができる。
2)。
0により起動されたSPU1内の個別描画タスク1(3
212)は、次の処理を無限に繰り返す(84)。
ージバッファの獲得をMPUに依頼する。つまり、個別
描画タスク1用に獲得したSPUがアクセス可能な、デ
フォルト紙サイズについてページバッファの獲得をMP
Uに依頼する(841)。
り、前記獲得ページバッファメモリへの実描画として描
画属性パラメータの設定処理及び描画をページ区切りを
検出するまで行い1ページ分の描画を行う。該実描画で
の描画属性パラメータの設定処理において紙サイズ変更
を検出すると、該変更紙サイズについてのページバッフ
ァ再獲得をマスタプロセッサに依頼する(842)。
描画の終了を報告するとともに、該描画済みページバッ
ファについての印刷処理を依頼する(843)。
5)を、M−1回繰り返す(844)。このM−1とい
う数は、他の個別描画タスクが実描画を担当するページ
数に相当する。 (4−1)1ページ分の空描画を行う。つまり、前記コ
マンドバッファ部内の印刷コマンド列を読出し、解釈し
ながら、描画を伴わない描画属性パラメータの設定処理
をページ区切りを検出するまで1ページ分行う(84
5)。どのページで描画属性パラメータが変更されるか
は不明なので、自己の担当しないページについてもすべ
て順次空描画を行っていく必要がある。
0により起動されたSPUk内の個別描画タスクm(3
213)は、次の処理を無限に繰り返す(86)。
2)を、m−1回繰り返す(861)。このm−1とい
う数は、個別描画タスクmが描画を担当するページまで
の他の個別描画タスクが担当するページ数に相当する。 (1−1)1ページ分の空描画を行う。つまり、前記コ
マンドバッファ部内の印刷コマンド列を読出し、解釈し
ながら、描画を伴わない描画属性パラメータの設定処理
をページ区切りを検出するまで1ページ分行う(86
2)。
ージバッファの獲得をMPUに依頼する。つまり、個別
描画タスクm用に獲得したSPUがアクセス可能な、デ
フォルト紙サイズについてページバッファの獲得手順を
MPUに依頼する(863)。
り、前記獲得ページバッファメモリへの実描画として描
画属性パラメータの設定処理及び描画をページ区切りを
検出するまで行い1ページ分の描画を行う。該実描画で
の描画属性パラメータの設定処理において紙サイズ変更
を検出すると、該変更紙サイズについてのページバッフ
ァ再獲得をマスタプロセッサに依頼する(864)。
描画の終了を報告するとともに、該描画済みページバッ
ファについての印刷処理を依頼する(865)。
M−m回繰り返す。このM−mという数は、Mページの
うち、該個別描画タスクmが描画を担当したページに続
き他の個別描画タスクが担当するページ数に相当する。
空描画(867)の処理内容は、862に示したのと同
じであり、同一のサブルーチンプログラムや関数として
もよい。
の連絡や処理の依頼は、MPUへの情報送信処理部(8
51、871)、MPUからの情報受信処理部(85
2、872)、SPUへの情報送信処理部(831)、
SPUからの情報受信処理部(832)、SPU依頼内
容の実行部(833)を用いて、図6や図11〜図13
に示した実施例1の場合と同様にして行う。
したMPUは、前記ページバッファ制御部315を用い
て、ページバッファの獲得と再獲得を行う。
SPU依頼内容の実行部において、実描画終了ページの
更新を行う(833)。
くSPU依頼内容の実行部において、該描画済みページ
バッファについての印刷タスクを起動する(833)。
みページバッファからの読み出しの終了を、MPUがプ
リンタエンジンアダプタ部2(171−b)又はSPU
からの割込み信号により知ると、該MPUが前記ページ
バッファ制御部315を用いて、当該ページバッファを
解放する。
ァの獲得、解放方式として紙サイズに応じて、必要サイ
ズのページバッファを獲得、解放する可変長ページバッ
ファ制御方式を採用したが、紙サイズに依らず固定サイ
ズ(プリンタエンジンにて印刷可能な最大紙サイズ分の
大きさに対応)のページバッファを獲得、解放する固定
長ページバッファ制御方式を採用することもできる。こ
の場合、前記手順において、ページバッファの再獲得が
不要になる等、ページバッファの制御は簡単にできる
が、可変長ページバッファ制御方式ほどにはページバッ
ファメモリを有効活用することはできない。
と印刷タスク処理は、前記従来技術に示した方法を用い
て並行処理する。さらに前記MPUによる処理と前記各
SPUによる処理はを前述のように並列処理する。
空描画、実描画、印刷等のタイミング図は、前記図1
1、図12、図13の場合と同様である。つまり、図示
のように、MPUによる描画管理タスクの処理と各SP
Uによる各個別描画タスク1、2、3等の処理は並列し
て実行されている。またMPUにより処理されるコマン
ド受信、描画管理タスクの処理、転送1、転送2、…、
転送5等、印刷1、印刷2、…、印刷5等は、並行して
実行されている。
10との対応も前記第1実施例の場合と同様である。
理を並列実行しているため、ページ当りの描画時間が、
ページ当りのプリンタメカニズム印刷時間を超える場合
でも、印刷スループットとしてプリンタ最高性能を達成
することができる。
ているため、各ページの印刷内容が異なる複数ページか
らなる文書についての連続印刷においても、プリンタ最
高性能を達成することができる。
1、SPU2、…、SPUK)として汎用プロセッサを
用いているため、各ページが文字又は図形のみの文書に
ついても描画性能を向上し、印刷性能を向上させること
ができる。
異なり、空描画を各個別描画タスクが行っている。従っ
て、前記空描画の負荷が小さい場合、個別描画タスク数
Mをスレーブプロセッサ総数K+1とし、各個別描画タ
スクmを、いずれかのスレーブプロセッサ及びマスタプ
ロセッサに割り当てることで、印刷スループットを第1
実施例の場合より向上させることができる。
施例のハ−ドウェアの基本構成、ハ−ドウェアの詳細構
成、ソフトウェア構成、プリンタエンジンアダプタ部2
の構成は、前記第1実施例の場合と同じく、図1〜図
6、図9、図10に示したものを利用する。
ジ区切りがなく、描画属性パラメ−タの引継ぎありのコ
マンド(以下、無制約コマンドと呼ぶ)がある。ここ
で、明瞭なペ−ジ区切りなしとは、ペ−ジ区切りを示す
コマンドがペ−ジ区切り位置になく、以下のような条件
が発生した時、印刷制御装置が暗黙的にペ−ジ区切りが
指示されたとみなすことである。
ついて一通りしか指定できない各種仕 様の変更が、あ
るペ−ジについての描画の途中で指示された。
コマンドとは、文字フォントの種類、文字行ピッチ、文
字列ピッチ、線幅、線種、紙サイズ、印刷部数、プリン
タ給紙部、プリンタ排紙部等の描画や印刷に関する各種
パラメ−タが、次頁に引き継がれるコマンドのことであ
る。
性パラメ−タの引継ぎありのコマンド、つまり無制約コ
マンドの代表としては、各プリンタメ−カが独自に定め
ているプリンタ制御用エスケ−プシ−ケンスがある。
合、前述の第1実施例及び第2実施例においては、前記
空描画処理の負荷が大きくなると、マルチプロセッサ方
式を用いても印刷性能の飛躍的な向上は望めない。
描画タスクによる空描画処理の処理量dは、 d=(M−1)・a+1 ここで、M:個別描画タスク数 a:空描画処理の負荷係数(描画処理時間に対する比
率) である。
すると空描画処理の処理量dはd=1.2〜1.8とな
る。
制約コマンドについては描画管理タスクが各ペ−ジにつ
いて、空描画処理負荷係数aだけの空描画を行う。
制約コマンドと呼ぶ印刷コマンドを定義することによ
り、上記問題点を解消する。ここで制約コマンドとは、
ペ−ジの区切りにペ−ジ区切りを示す改頁コマンドと呼
ぶコマンドを配置し(95、98)、各ペ−ジの先頭に
て各種描画属性パラメ−タが印刷コマンド仕様により初
期化されるか、又は各ペ−ジの先頭に各種描画属性パラ
メ−タを初期化するためのリセットコマンドB(93、
96)と呼ぶコマンドを配置し、第1ペ−ジ用のコマン
ドの前に、本文書の以後のすべてのペ−ジについて有効
となるすべての外字、書式、関数、辞書等からなる文書
全ペ−ジ有効パラメ−タを定義するためのコマンドを配
置し(92)、文書の先頭に前記描画属性パラメ−タ及
び文書全ペ−ジ有効パラメ−タを初期化するためのリセ
ットコマンドA(91)と呼ぶコマンドを配置し、前記
リセットコマンドBと改頁コマンドの間に各ペ−ジの描
画、印刷内容を指定するための各種描画属性パラメ−タ
の設定コマンドと各種描画コマンドの列を配置した(9
4、97)ものである。
の二つの方法がある。
新たに定義する。
マンドシ−ケンスを前記規約に従うようにする。
位印刷を行うため、Page Description Language(PD
Lと略す)と呼ばれる印刷コマンドが普及しつつある。
PDLとしては、Adobe社のPostScript、HP社のDD
L、ゼロックス社のInterpress等がある。これらのPD
Lは前記プリンタ制御用エスケープシーケンスに比べ、
処理量が大きいため、前記問題点は特に重大である。そ
のため、図16に示すように、PDLを制約コマンド化
すると、印刷性能を大きく向上することができる。この
制約を付けたPDLを、以下制約付きPDLと呼ぶこと
にする。
頭コメント部10A、文書全ページ有効パラメータ設定
部10B、第1ページ内容部10C、第2ページ内容部
10D、…、最終ページ内容部10E、文末コメント部
10Fとからなる。
10A1、文書名称10A2、作成日10A3、総ペー
ジ数10A4、使用フォント一覧10A5、文頭コメン
ト部の終了記述子10A6等からなる。なお、本例では
総ページ数10A4と使用フォント一覧10A5は、前
記文末コメント部10Fを参照するようにしてある。
は、前述の文書全ページ有効パラメータ92を設定する
部分である。
部10D、…、最終ページ内容部10Eは、前記各ペー
ジの描画、印刷内容を指定するための各種描画属性パラ
メータの設定コマンドと各種描画コマンドの列(94、
97)からなる。
開始記述子10F1、総ページ数10F2、使用フォン
ト一覧10F3等からなる。
C、第2ページ内容部10D、…、最終ページ内容部1
0Eの区切り、つまりページ区切りは、前記10C、1
0D、10E等のページ内容の記述と簡単に区別がつく
ようにし、該ページ区切りの検出を簡単にできるように
することが、前記空描画処理の負荷を軽減するために望
ましい。
るコマンドが使われている。本コマンドは、前ページに
ついてのページバッファへの描画内容と描画属性パラメ
ータをすべて次のページに引き継ぐ。従って、本印刷制
御装置では、copypageコマンドではページが更新されな
いものとみなして、処理を進める。
ド、無制約コマンドのホストコンピュータ10と印刷制
御装置とによる処理について説明する。
ことにより、印刷コマンド列を印刷制御装置11に送信
する。
ンピュータ10内の応用プログラムやプリンタドライバ
が直接生成し、印刷制御装置11に送信する。
コンピュータ10内の応用プログラムやプリンタドライ
バが一度作成し、同じくホストコンピュータ10が制約
コマンドへの変換部11Bを用いて、該無制約コマンド
11A2を制約コマンド11C2へ変換した後、印刷制
御装置11に送信する。
コンピュータ110内の応用プログラムやプリンタドラ
イバが作成し、印刷制御装置11にそのまま送信する
(11C3に相当)。
制約コマンドと無制約コマンドを区別するため、制約有
無指定コマンドを配置し(図18参照)、前記ホストコ
ンピュータが該印刷コマンド列を印刷制御装置に送信す
る。
刷コマンド列内に記述されている前記制約有無指定コマ
ンドを処理することにより、受信した印刷コマンド列が
制約コマンドと無制約コマンドのいずれであるか判別す
る(11D1)。
約コマンド対応印刷制御方式11E1を実行する(11
E1)。無制約コマンドならば、無制約コマンド対応印
刷制御方式を実行する(11E2)。
おいては、空描画処理として第1実施例又は第2実施例
に示した処理を行う。また、制約コマンド対応印刷制御
方式においては、空描画処理として明瞭なページ区切り
の検出のみを行うようにし、前記描画属性パラメータの
引継ぎ処理は行わないようにする。
個別描画タスクの処理手順としては、第1実施例におけ
る紙サイズ確定型空描画集中処理方式(図7)、紙サイ
ズ仮定型空描画集中処理方式(図8)、又は空描画分散
処理方式(図14)を用いるものとする。但し、制約コ
マンドにおいては、前述のように空描画を簡単化するも
のとする。
コマンド列の形式について、説明する。ホストコンピュ
ータ10は図18に示す形式の印刷コマンド列を作成
し、印刷制御装置11へ送信する。印刷プロトコル指定
コマンド12A1により、前述の各プリンタメーカ対応
プリン制御用エスケープシーケンス、PostScript等の各
種PDLの種別を指定する。本印刷プロトコル指定コマ
ンドは省略できない。
約コマンドと無制約コマンドの区別を付ける。また、制
約有無指定コマンド12A2より後に、文書の印刷内容
を示す印刷コマンド列12A3(以後、文書内容記述印
刷コマンド列と呼ぶ)を配置する。文書内容記述印刷コ
マンド列12A3の内容の一例としては、前記図15や
図16に示した印刷コマンド列がある。文書内容記述印
刷コマンド列12A3の中に片面/両面印刷指定コマン
ド12A4を付けることにより、片面印刷と両面印刷の
いずれかを指定する。制約有無指定コマンド及び片面/
両面印刷指定コマンドは省略すると、前指定値を用いる
こととする。前指定値がない場合、初期値とみなす。本
実施例では、初期値を無制約コマンドや片面印刷とした
が、制約コマンドや両面印刷とすることもできる。な
お、印刷プロトコル指定コマンド12A1と制約有無指
定指定コマンド12A2を合わせて印刷プロトコル指定
コマンド12A1としてもよい。
ド対応印刷制御方式を設けることにより、空描画集中処
理方式における描画管理タスクによる空描画処理、及び
空描画分散処理方式における個別描画タスクによる空描
画処理を、制約コマンドの場合、簡単化し、高速化を計
ることができる。
例及び第2実施例で得られた効果に加え、プロセッサ数
にほぼ比例した描画性能の向上効果も得ることができ
る。
用の印刷コマンド列を切り出した後、前記共有メモリか
ら、各個別描画タスクに対応するプロセッサモジュール
内のローカルメモリに転送し、その転送した印刷コマン
ド列について各個別描画タスクが処理を行うようにして
もよい。この場合、各個別描画タスクによる印刷コマン
ド列のアクセス時に、共有メモリの場合のようなアクセ
ス競合が発生しないという効果がある。但し、前記転送
時間が余分にかかる。
容易なページ区切りを設けることにより、ページ切り出
しをさらに高速化し、空描画の負荷をさらに減少するこ
ともできる。
Interface)におけるPrintコマンドを各ページ毎に別々
に発行する、 (2)前記制約付きPDLにて述べたように、ページ区
切りとして、前記10C、10D、10E等のページ内
容の記述と簡単に区別がつくような記述子を特別に設け
る。
プタ部2の構成は、前記第1実施例の場合と同じく、図
6、図9、図10に示したものを利用する。また、ハー
ドウェア構成としては図1〜図5に示したものを用いる
こともできるが、他の構成もとることができる。ハード
ウェア構成については、後述する。
ーストプリントと呼ばれる文書第1ページの印刷も高速
印刷するためのものである。
け、各領域について別々のプロセッサが個別描画タスク
処理として、各領域についての描画を行うことにより、
各1ページを高速描画する。
についての描画が終了すると、印刷タスクが、図6に示
したのと同様の方式で起動される。該印刷タスクは、前
記個別描画タスクと別プロセッサについては並列処理さ
れ、同一プロセッサについては並行処理されるので、複
数ページからなる文書でも高速印刷を実現することがで
きる。以上説明した第4実施例に示した処理方式をペー
ジ内並列処理方式と呼ぶ。
タ10からホスト通信コントローラ(151−aや15
1−b)を介して印刷コマンド列を受信し、共有メモリ
(141や142)内のコマンドバッファ部に格納す
る。
領域Kに分け、領域1用に空き状態の一つの部分ページ
バッファを獲得し、本領域1への描画を第1番目のスレ
ーブプロセッサSPU1(111)にページ内モード個
別描画タスク処理1と呼ぶ処理を起動することで指示
し、以下同様に各領域k用に空き状態の一つの部分ペー
ジバッファを獲得し、本領域kへの描画を第k番目のス
レーブプロセッサSPUkにページ内モード個別描画タ
スク処理kと呼ぶ処理を起動することで指示する。
の前記ページ内モード個別描画タスク処理kにおいて
は、領域kをクリッピングエリアとする描画属性パラメ
ータの設定処理及び描画処理をページ区切りを検出する
まで行い、1ページ分の処理が終ると、その旨MPUに
報告した後、本処理を終了する。
前記処理終了報告を受信すると、報告元の各SPUを解
放する。
の前記処理終了報告をすべての領域から受信すると、描
画を終了した該1ページについて印刷タスク(322
1、3222、3223等のいずれか)を起動する。
領域Kに対応する部分ページバッファの内容を、1ペー
ジを構成するために必要な順序で読出し、プリンタエン
ジン部18に出力する。
しの終了を、MPUがプリンタエンジンアダプタ部1、
プリンタエンジンアダプタ部2又は各SPUからの割込
み信号により知ると、該MPUが当該部分ページバッフ
ァを解放する。
外の処理と印刷処理を並行処理し、さらに前記マスタプ
ロセッサによる処理と前記各スレーブプロセッサによる
処理を並列処理するようにした。
を用いて説明する。
ス結合方式と呼ぶ。図2から図5の場合と基本的には同
じである。違いは、各プロセッサモジュール100、1
10、120等内のローカルメモリ103、113、1
23等を、前記領域1、領域2、…、領域Kに対応させ
うる部分ページバッファとして利用する点にある。ここ
で、部分ページバッファと部分を付けて呼んだ理由は、
各領域がページの一部分に対応するため、1ページ全体
からなるフルページバッファが必ずしも必要とならない
ためである。
2、…、領域Kを各々同図内の13A1、13A2、
…、13A3にて示したローカルメモリ上に配置してい
る。
こともできる。本構成を以後、マトリックススイッチ結
合方式と呼ぶ。本構成においては、複数個のスレーブプ
ロセッサと複数個の部分ページバッファを、任意のスレ
ーブプロセッサと任意の部分ページバッファをスイッチ
で結合することにより、該スレーブプロセッサが該部分
ページバッファをアクセスし、描画することができるよ
うな構成とした。
42、143に示した“abc”、“def”、“gh
i”といった描画が、各々部分ページバッファ1、2、
3上の領域1、2、3になされる。本図において、14
4は領域の区切りを示すための概念上の線であり、印刷
結果としては出力されない。
する。 (1)領域1、領域2、…、領域Kに対しアドレスの連
続した部分ページバッファの組みを割当てれば、従来の
読出し回路でよい。 (2)そうでない割当てを許す場合、回路を工夫するこ
とが必要である。
ファの組みを登録し、一つの部分ページバッファからの
読出しが終わると、次の部分ページバッファの先頭アド
レスへラスタ読出しアドレスを切替える機構が必要とな
る。
合、異なるローカルバス上の部分ページバッファの組み
を登録する。
の部分ページバッファの組みを登録する。
2に示す縦方向組合せをサポートした。図23の縦横方
向組合せもサポートすれば、部分ページバッファをさら
に効率良く使うことができる。
や、ファーストプリントも高速印刷することができる。
ドの区別等の文書の内容に応じて、ホストコンピュータ
や印刷制御装置が(a)前記ページ内並列処理方式と
(b)ページ別並列処理方式(ページ別に並列処理を行
う方式であり、前述の(b−1)空描画分散処理方式、
(b−2)紙サイズ確定型空描画集中処理方式、(b−
3)紙サイズ仮定型空描画集中処理方式のいずれか)の
一方を選択し、切替えて実行することができる。さら
に、前記文書内容に応じて、(b)のページ別並列処理
方式の中から、適切なもの((b−1)、(b−2)、
(b−3)のいずれか)をホストコンピュータや印刷制
御装置が選択し、切替えて実行することもできる。
施例は、図26に示す別形式のホストコンピュータ送信
コマンドに対応するためのものである。また、この実施
例では、後述する用紙に関連する制御情報については別
個に設けたロードコマンドで指定するようにし、その他
の描画属性パラメータ(文字ピッチ、行ピッチ、イタリ
ック、倍角、アンダーライン等)は描画・印刷内容指定
コマンドで指定するようにした。具体的には、フォント
ロードコマンド2612や書式ロードコマンド2613
や用紙制御情報ロードコマンド2614を、第1頁用の
描画・印刷内容指定コマンド262の前に受信すること
により、それぞれホストから受信したフォントと書式と
用紙制御用パラメータとを印刷制御装置11内に予め格
納する。それらのフォントと書式と用紙制御用パラメー
タは、第1頁以後の描画と印刷において利用される。但
し、用紙制御用パラメータは後続の任意の頁の前で変更
することができる。
3はそのサブコマンドとして、各種描画属性パラメータ
設定用サブコマンドと各種描画用サブコマンドの列を含
み、1頁分の文字、図形、イメージ等の描画・印刷内容
を指定する。本サブコマンドの中に、改頁を指定するサ
ブコマンドがあると、その後のサブコマンド列はないも
のとみなす。
は、そのサブコマンドとして、片面・両面印刷指定、給
紙部指定、排紙部指定、紙サイズ指定、印刷部数指定、
印字方向(ポートレート/ランドスケープ)指定のため
のサブコマンドの列を含み、これらの各種用紙制御用パ
ラメータの指定を行なう。
おいて、フォントロードコマンド2612と書式ロード
コマンド2613と用紙制御情報ロードコマンド261
4でそれぞれロードしたフォントと書式と用紙制御用パ
ラメータを利用し、第n頁以後では新たに指定されたフ
ォントロードコマンド2641と書式ロードコマンド2
642と用紙制御情報ロードコマンド2643でそれぞ
れロードしたフォントと書式と用紙制御用パラメータを
利用する。これら3種のロードコマンドのいずれかがな
い場合も許容される。
ドコマンドも処理するために、本実施例で採用したソフ
トウェア構成を、図27を用いて説明する。本構成で
は、図6におけるモニタ部31内のコマンドバッファ部
33に加えて、タスク処理部32内に編集コマンドバッ
ファ部331を設けた。本編集コマンドバッファ部33
1には、一頁ずつに区切り、各頁を制御情報部と、描
画、印刷内容指定コマンドとで構成する(図29参
照)。
するため、タスクとして以下のものを新設した。 ・コマンドタスク320 ・印刷管理タスク3220
種タスクの機能を図28に示す。
る。 (1−b)フォントロードコマンドおよび書式ロードコ
マンド用のコマンドタスクは、メモリやテーブルに必要
なデータを設定する。 (1−c)用紙制御情報ロードコマンド用のコマンドタ
スクは、本コマンドのサブコマンドとして指定された各
種用紙制御用パラメータを、用紙制御用パラメータテー
ブルに設定する。 (1−d)描画・印刷内容指定コマンド用のコマンドタ
スクでは、次の処理を行う。 (1−d−1)1頁分の制御情報部を作成する。具体的
には、用紙制御パラメータテーブルの内容から本ページ
用の用紙制御用パラメータをコピーし、編集コマンドバ
ッファ部331の各ページ先頭部の固定エリアに設定す
る(例えば図29の3311−1)。 (1−d−2)コマンドバッファ部33から編集コマン
ドバッファ部331へ、描画・印刷内容指定コマンドの
内容である各種描画属性パラメータ設定用サブコマンド
と各種描画用サブコマンドの列を移す。 (1−d−3)編集コマンドバッファ部331に1頁分
のデータが揃う度に、描画管理タスク(図29の321
0)へその旨、メッセージ(29M1)を送信すること
により連絡する。
ることにより起動される。 (2−b)必要に応じて、SPUおよびページバッファ
の獲得と解放を行う。 (2−c)メッセージがコマンドタスクからの1頁分の
データが揃ったことを示すもの(29M1)でああれ
ば、本ページについてSPUとページバッファとを獲得
し、その後、個別描画タスク(3211、3212…)
を起動する。 (2−d)SPUからの個別描画タスクの描画完了報告
を受信した場合、印刷管理タスク3220へ起動要求メ
ッセージ(29M2)を送付するとともに、編集コマン
ドバッファ管理テーブル(29C)の該当するページに
ついての編集コマンドバッファ状態を“描画完了状態”
とする。 (2−e)ページバッファ読みだし終了割込が発生する
と、本割込処理は、本ページの解放要求メッセージを本
描画管理タスク(3210)へ送信する。本メッセージ
を受けた描画管理タスクは、読出しの終わったページの
編集コマンドバッファ状態を空き状態とし、編集コマン
ドバッファを解放するとともに、読み出しの終わったペ
ージバッファ(29C1,29C2,…,29C3のい
ずれか)を解放する。
ァについての描画を行う。 (3−b)1頁分の描画が完了すると、その旨、描画管
理タスクへ報告する。
うための印刷タスクを選択し、起動する。
ドの処理方式を図29を参照しながら、説明する。
ルとして、図27のものに加え、次のものを設けた。 (1)フォントメモリ(29A1):明朝体、ゴシック
体等の各種フォントを格納するためのメモリ。ドットフ
ォントとアウトラインフォントを区分して格納。ドット
フォントはサイズ別に区分して格納。 (2)フォント属性メモリ(29A2):各フォントの
属性[フォント名称、ドットフォント/アウトラインフ
ォントの区別、ドットフォントのサイズ等]、及び文字
コードと各文字フォントアドレスの対応表等からなる。
書式メモリ(29B):書式を格納するためのメモリ。
例えば、書式IDと書式内容(文字、図形、イメージの
混在データ)との組として表現する。 (3)編集コマンドバッファ管理テーブル(29C):
編集コマンドバッファ部331を管理するためのテーブ
ル。各頁対応の編集コマンドバッファ状態(描画待ち、
描画中、描画完了、空き)と各頁対応の編集コマンドバ
ッファ読出しポインタ等からなる。
ンドの処理方式を説明する。
その内部バッファに、図26に示したいずれかのコマン
ドを受信する(291−1)。
込み処理を契機として、コマンドバッファ部33にコマ
ンドを格納する(291−2)。
ド格納を契機として、各コマンドに対応するコマンドタ
スク320が起動される(291−3)。コマンドタス
ク32は、次の処理を行う。フォントロードコマンドの
場合、本コマンドを実行することにより、ホストから受
信したフォントデータをフォントメモリ29A1とフォ
ント属性メモリ29A2へ設定する。書式ロードコマン
ドの場合、本コマンドを実行することにより、ホストか
ら受信した書式データを書式メモリ29Bへ設定する。
用紙制御情報ロードコマンドでは、本コマンドのサブコ
マンドにより指定された各種用紙制御用パラメータを、
それ用の用紙制御用パラメータテーブル(図29には図
示していない)に設定する。描画・印刷内容指定コマン
ドの場合、図28の(1−d)で説明したように、編集
コマンドバッファ部331に各頁用の制御情報部および
描画・印刷内容指定コマンドを格納し、1頁分の情報が
揃う度に描画管理タスク3210へメッセージ29M1
を送出する(292)。このコマンドタスク320によ
る各頁分の制御情報部3311の作成は、前述した集中
型の空描画方式に相当する。
頁分のデータがそろったことを、前述のメッセージ29
M1の受信により知った描画管理タスク3210は、図
28内の描画管理タスクの説明欄の(2−b)から(2
−c)に示した処理を行なう。つまり、SPUとページ
バッファとを獲得し、編集コマンドバッファ管理テーブ
ル29Cの当該ページの編集コマンドバッファ状態を
“描画待ち状態”とした後、獲得したSPU(SPUx
と仮定)とページバッファについて個別描画タスクを、
前述の実施例の場合と同様にして、起動する。
1,3212,3213等)は、1頁分の描画を完了す
ると、描画管理タスク3210に対し、終了報告を、前
述の実施例の場合と同様にして、行なう。
タスク(3211,3212,3213等)間の連絡方
法を、次のようにしてもよい。 MPU上に各SPUxとの連絡を行なうためのSPU
管理タスクxを設ける。つまり、3211,3212,
3213等の各個別描画タスクに対応し、SPU管理タ
スク3211A,3212A,3213A等を設ける。
そして各SPU管理タスクxが、各SPUxとMPUの
連絡をカーネル部311の一機能であるメッセージ送・
受信機能を用いながら、仲介する。 描画管理タスク3210は、前述の(4)において、
SPU上の個別描画タスクxを直接起動せず、SPU管
理タスクxを起動する。 SPU管理タスクxが、SPUxを起動し、本SPU
による個別描画タスクxの実行を指示する。 SPU上の個別描画タスクxは、1頁分の描画が完了
すると、その旨MPU上のSPU管理タスクxへ、前述
の実施例と同様のプロセッサ間の連絡方法を用いて、連
絡する。 上記連絡を受けたSPU管理タスクxは、描画管理タ
スク3210へその旨、前述のメッセージ送信機能を用
いて、連絡する。
画タスクxによる1頁分の描画の完了を知ると、印刷管
理タスクへ、起動要求メッセージ29M2を送信する。
した印刷管理タスクは、描画の完了したページバッファ
を印刷するための印刷タスクを選択した後、該印刷タス
ク(3221、3222、3223等のいずれか)を起
動する。
ージバッファについての印刷処理を、前述の実施例の場
合と同様にして、行なう。なお、本印刷管理タスクの機
能を、前記描画管理タスクの機能の一部分として実現す
ることもできる。
ロードした後、描画、印刷を進める場合についても、マ
ルチプロセッサを活用して、印刷スループットを向上す
ることができる。
33の内容を、頁毎に区分した編集コマンドバッファ部
331の内容に変換してから、従来の描画、印刷処理を
マルチプロセッサを利用して行なうことができるので、
前述の制約コマンドについても、無制約コマンドの場合
と同様に、印刷スループットを向上することができる。
とスレーブプロセッサには、図30に示した4項目のエ
ラー、すなわち、SPU例外、SPU無応答、MPU例
外、MPU無応答の各エラーが発生しうる。各エラー項
目について、(a)そのエラーを検出するプロセッサ
(エラー検出部)と、(b)そのエラー処理名称と、
(c)エラー処理の内容は、図に示すとおりである。な
お、エラー項目2および4のSPUからMPUへの無応
答や、MPUからSPUへの無応答は、図24、図25
で説明したプロセッサ間の正常時にある筈の連絡がない
場合のエラーである。
スタプロサッセやスレーブプロセッサにエラーが発生し
た場合でも、エラー発生プロセッサを除いた残りのプロ
セッサを用いて、印刷処理を支障なく続行することがで
きる。
の方法を用いることにより、印刷制御装置をホストコン
ピュータ10の一機能として実現することもできる。 (1)印刷制御装置をホストコンピュータ内の一つの印
刷制御アダプタ又は印刷制御ボードとして実現し、本ア
ダプタ又はボードにマルチプロセッサを実装するととも
に、本マルチプロセッサ部に前述のような機能を搭載す
る。 (2)印刷制御装置をホストコンピュータの主プロセッ
サによるソフトウェア処理として、実現する。この時、
本主プロセッサを、マルチプロセッサとして実現し、マ
ルチプロセッサ部に前述のような機能を搭載する。
は、マスタプロセッサの制御のもとで、複数個のスレー
ブプロセッサが描画等の処理を並列処理することができ
るので、印刷制御装置における処理能力を向上させるこ
とができる。特に、空描画を採用したので、複数のプロ
セッサによる並列描画処理が容易になる。
画集中処理方式、又は紙サイズ仮定型空描画集中処理方
式)を用いた印刷制御装置においては、描画管理タスク
が空描画を行ない、複数個の個別描画タスクが別プロセ
ッサ上で実描画を並列実行する。また、実描画により描
画の済んだ各ページバッファについての印刷処理を、上
記空描画とは並行的に、また実描画とは並列的に実行す
ることができる。
個の個別描画タスクが別プロセッサ上で実描画を並列実
行し、実描画により描画の済んだ各ページバッファにつ
いての印刷処理を、前記実描画とは並列的に実行でき
る。
散処理方式においては、実描画処理を並列実行している
ため、ページ当りの描画時間が、ページ当りのプリンタ
メカニズム印刷時間を超える場合でも、印刷スループッ
トとしてプリンタ最高性能を達成することができる。ま
た描画と印刷を前記並行処理しているため、各ページの
印刷内容が異なる複数ページからなる文書についての連
続印刷においても、プリンタ最高性能を達成することが
できる。また複数個のプロセッサとして汎用プロセッサ
を用いているため、各ページが文字又は図形のみの文書
についても描画性能をおよび印刷性能を向上させること
ができる。
処理方式のうち可変長ページバッファ制御のものを用い
る場合、紙サイズに応じて必要なサイズのページバッフ
ァだけを獲得するため、大きな紙サイズの印刷を少ない
ページバッファ総容量で実現することができる。さら
に、小さな紙サイズの印刷では多数のページバッファを
配置できるようになるため、一部描画負荷の大きいペー
ジの印刷が混在していても、平均印刷スループットを低
下させることなく、プリンタエンジン最高性能での印刷
を実現することができるという効果もある。
描画集中処理方式とは異なり、空描画を個別描画タスク
が行なっている。従って、前記空描画の負荷が小さい場
合、個別描画タスク数Mをスレーブプロセッサ総数K+
1とし、各個別描画タスクmを、いずれかのスレーブプ
ロセッサ及びマスタプロセッサに割り当てることで、印
刷スループットを空描画集中処理方式より向上させるこ
とができる。
もに、該制約コマンドに対応した印刷制御処理において
は前記空描画処理において、明瞭なページ区切りの検出
のみを行ない、前記描画属性パラメータの設定処理を行
なわないで済む。そのため、制約コマンドと制約コマン
ドに対応した印刷制御方式を設けることにより、空描画
集中処理方式及び空描画分散処理方式における空描画処
理を、制約コマンドの場合、簡単化し、高速することが
できる。
描画集中処理方式と空描画分散処理について示した効果
に加え、プロセッサ数にほぼ比例した描画性能の向上効
果も得ることができる。
においては、各1ページについての描画を複数個の領域
に分け、各領域について別プロセッサが並列実行する。
さらに、描画の済んだ各ページバッファについての印刷
処理を、上記描画とは並行的に実行する。
装置においては、連続印刷を高速実行するだけでなく、
1ページからなる文書や、ファーストプリントも高速印
刷することができる。
後、描画、印刷を進める方法も用いることにより、この
ような場合についてもマルチプロセッサを活用して、印
刷スループットを向上することができる。
した編集コマンドバッファ部の内容に変換してから、通
常の描画、印刷処理をマルチプロセッサを利用して行な
う方法を用いることにより、制約コマンドについても、
無制約コマンドの場合と同様の高い印刷スループットを
得る。
したことにより、マスタプロサッセやスレーブプロセッ
サにエラーが発生した場合でも、エラー発生プロセッサ
を除いた残りのプロセッサを用いて、印刷処理を支障な
く続行することができる。
することにより、好適な印刷処理を実現することができ
る。
ア構成を示す図である。
基本構成を示す図である。
基本構成を示す図である。
基本構成を示す図である。
基本構成を示す図である。
す図である。
描画集中処理方式の処理手順を説明するための図であ
る。
描画集中処理方式の処理手順を説明するための図であ
る。
エンジンアダプタ部2の構成を説明するための図であ
る。
タエンジンアダプタ部2の他の構成を説明するための図
である。
体の印刷手順を説明するための図である。
体の他の印刷手順を説明するための図である。
体の更に他の印刷手順を説明するための図である。
方式の処理手順を説明するための図である。
説明するための図である。
を説明するための図である。
無制約コマンドのホストコンピュータと印刷制御装置に
よる処理を説明するための図である。
ータ送信コマンドの形式を説明するための図である。
カルバス結合方式を説明するための図である。
イッチ結合方式を説明するための図である。
示す図である。
分割方法を説明するための図である。
他の分割方法を説明するための図である。
間の連絡方法を説明するための図である。
セッサ間の連絡情報を説明する為の図である。
ータ送信コマンドの形式を説明するための図である。
ソフトウェア構成を示す図である。
描画・印刷関係タスクの機能を説明するための図であ
る。
マンドの処理方式を説明するための図である。
様を説明するための図である。
…システムバス、13…ビデオバス1、100…マスタ
プロセッサモジュール、110…スレーブプロセッサモ
ジュール、120…スレーブプロセッサモジュール、1
30…システムバス調停部、1331…ビデオバス1調
停部、141…共有メモリ、171−b…プリンタエン
ジンアダプタ部2、19…操作パネル部、18…プリン
タエンジン部、101…マスタプロセッサ、103…ロ
ーカルメモリ、111…スレーブプロセッサ1、113
…ローカルメモリ、121…スレーブプロセッサK、1
23…ローカルメモリ、31…モニタ部、311…カー
ネル部、312…ホスト通信制御部、313…コマンド
バッファ制御部、314…ファイル制御部、315…ペ
ージバッファ制御部、316…プリンタ制御部、33…
コマンドバッファ部、34…ページバッファ部、32…
タスク処理部、321…描画タスク部、3210…描画
管理タスク、3211…個別描画タスク1、3212…
個別描画タスク2、3213…個別描画タスクM、32
2…印刷タスク部、3221…印刷タスク1、3222
…印刷タスク2、3223…印刷タスクN、323…そ
の他のタスクの処理部。
Claims (3)
- 【請求項1】複数のプロセッサによりページバッファの
描画処理および印刷処理を行う印刷制御方法であって、 一頁分のページバッファを複数の領域に分け、分けられ
たページバッファの各領域に描画処理を行うプロセッサ
を割り当て、 割り当てられた各プロセッサは、それぞれ、頁の印刷コ
マンドを受け取り、実際の描画(実描画)を行うことな
く、前記複数の領域について、書式情報の引き継ぎを行
う処理(空描画)を実行し、該空描画により求められた
当該領域の書式情報にしたがって、前記印刷コマンド列
に基づき割り当てられた領域をクリッピングエリアとす
る実描画を実行する、 ことを特徴とする印刷制御方法。 - 【請求項2】請求項1記載の印刷制御方法において、 前記分けられたページバッファの全ての領域の描画が終
了したとき、当該頁の印刷処理を起動し、頁を構成する
順序で、前記分けられたページバッファの各領域の内容
を印刷出力する、 ことを特徴とする印刷制御方法。 - 【請求項3】請求項2に記載の印刷制御方法において、 印刷出力の終了した領域の順に、ページバッファの該領
域を解放することを特徴とする印刷制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001238258A JP3304081B2 (ja) | 1991-08-06 | 2001-08-06 | 印刷制御方法 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3-196872 | 1991-08-06 | ||
JP19687291 | 1991-08-06 | ||
JP2001238258A JP3304081B2 (ja) | 1991-08-06 | 2001-08-06 | 印刷制御方法 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP19767199A Division JP3555748B2 (ja) | 1991-08-06 | 1999-07-12 | 印刷制御方法および印刷制御装置並びに印刷システム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002113908A JP2002113908A (ja) | 2002-04-16 |
JP3304081B2 true JP3304081B2 (ja) | 2002-07-22 |
Family
ID=26510036
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001238258A Expired - Fee Related JP3304081B2 (ja) | 1991-08-06 | 2001-08-06 | 印刷制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3304081B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8823983B2 (en) | 2011-08-31 | 2014-09-02 | Brother Kogyo Kabushiki Kaisha | Terminal device used to transmit image data for rapid printing |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5582302B2 (ja) * | 2010-10-26 | 2014-09-03 | 富士ゼロックス株式会社 | 画像処理装置、画像出力装置およびプログラム |
-
2001
- 2001-08-06 JP JP2001238258A patent/JP3304081B2/ja not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8823983B2 (en) | 2011-08-31 | 2014-09-02 | Brother Kogyo Kabushiki Kaisha | Terminal device used to transmit image data for rapid printing |
Also Published As
Publication number | Publication date |
---|---|
JP2002113908A (ja) | 2002-04-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5774638A (en) | Print controlling method and apparatus using a plurality of processors | |
US7280245B2 (en) | Data processing apparatus adaptable to plural environments and data processing method | |
JP3630943B2 (ja) | 情報処理装置および印刷制御方法および印刷制御システムおよび印刷制御プログラムを格納した記憶媒体 | |
US20040100656A1 (en) | Image processing device, image processing method, program, and computer readable recording medium on which the program is recorded | |
US20030002063A1 (en) | Printing control apparatus and printing control method capable of accurately printing embedded font | |
US20070070403A1 (en) | Information processing apparatus, information processing method, and program | |
JP3553985B2 (ja) | 印刷制御方法および印刷制御装置 | |
JP3007103B2 (ja) | 印刷制御装置 | |
US8503019B2 (en) | Print document conversion apparatus and computer readable medium | |
JP5031514B2 (ja) | データ処理装置およびデータ処理方法 | |
JP3797013B2 (ja) | 画像処理方法、印刷装置、画像処理システムおよび記録媒体 | |
JP4029391B2 (ja) | プリンタ | |
JP3304081B2 (ja) | 印刷制御方法 | |
JP3512403B2 (ja) | 印刷制御装置 | |
JP3555748B2 (ja) | 印刷制御方法および印刷制御装置並びに印刷システム | |
JP3304073B2 (ja) | 印刷制御方法および印刷制御装置並びに印刷システム | |
JP2816184B2 (ja) | 印刷制御装置 | |
JP3526255B2 (ja) | 情報処理装置および印刷制御方法および印刷制御システム及び記憶媒体 | |
JP3829798B2 (ja) | 画像形成装置およびプログラム | |
JP3173721B2 (ja) | プリンタ及びその動作方法 | |
US20100290083A1 (en) | Information processing apparatus, control method thereof and storage medium | |
JP2000015875A (ja) | 印刷装置及び印刷制御方法と記憶媒体 | |
JP2002007092A (ja) | 情報処理装置、印刷装置、印刷制御装置及び印刷システム | |
JP3174624B2 (ja) | プリンタ装置における印刷情報の管理方法及びプリンタ装置 | |
JPH10305631A (ja) | 印刷制御装置および方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R360 | Written notification for declining of transfer of rights |
Free format text: JAPANESE INTERMEDIATE CODE: R360 |
|
R371 | Transfer withdrawn |
Free format text: JAPANESE INTERMEDIATE CODE: R371 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090510 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090510 Year of fee payment: 7 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090510 Year of fee payment: 7 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100510 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110510 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120510 Year of fee payment: 10 |
|
LAPS | Cancellation because of no payment of annual fees |