(57)【要約】【課題】編集・描画処理の時間を短縮し、印字間隔も空けることなく、連続印刷を可能にする。【解決手段】プリンタドライバは印刷データの各頁をバンド領域単位に分割し、分割した印刷データのバンド領域の区切りをプリンタが検出できるように、各バンド領域の終端にバンド終端マークを挿入する。プリンタは印刷データの先頭頁をＣＰＵ１に渡し、印刷データのバンド１のバンド終端マークを検出し、バンド終端マークの位置情報をディスパッチャに通知し、バンド１に対して編集処理および描画処理を実施する。一方、ディスパッチャはバンド２からの印刷データをＣＰＵ２に渡し、ＣＰＵ２はバンド２の終端に挿入されているバンド終端マークを検出し、バンド終端マークの位置情報をディスパッチャに通知し、バンド２に対して編集処理および描画処理を実施する。上記の処理を繰り返すことで、分割した印刷データを各ＣＰＵに分配していく。【選択図】図１
2005275563.tif 000002
【特許請求の範囲】
【請求項１】
画像から印刷データを生成する印刷データ生成手段と、
前記印刷データ生成手段で生成した印刷データを分割する印刷データ分割手段と、
前記印刷データ分割手段で分割した印刷データの分割領域の区切りを検出するための終端情報を挿入する終端情報挿入手段と、
前記印刷データの編集・描画処理を実施する複数の処理手段と、
前記印刷データに挿入された終端情報から前記分割領域を検出する前記処理手段に従属の終端情報検出手段と、
前記終端情報検出手段で検出した印刷データの複数の分割領域の編集・描画処理を前記複数の処理手段に並列して実施させる分配制御手段と、
前記複数の処理手段で編集・描画処理した印刷データを印字処理する印字処理手段と
を具備することを特徴とする印刷処理装置。
【請求項２】
前記分配制御手段は、
前記印刷データを第１の処理手段に従属の第１の終端情報検出手段に転送し、
前記第１の終端情報検出手段は、
前記印刷データに挿入された終端情報から前記分割領域を検出し、
前記第１の処理手段は、
前記第１の終端情報が検出した分割領域のみに対して編集・描画処理を実施する
ことを特徴とする請求項１記載の印刷処理装置。
【請求項３】
前記分配制御手段は、
前記印刷データを第１の処理手段に従属の第１の終端情報検出手段と、第２の処理手段に従属の第２の終端情報検出手段とに転送し、
前記第１の処理手段が前記印刷データに対して編集・描画処理を実施するとともに、前記第２の終端情報検出手段が該印刷データに挿入された終端情報から前記分割領域を検出し、
前記第１の処理手段は前記第２の終端情報検出手段が検出した分割領域のみに対して編集・描画処理を実施する
ことを特徴とする請求項１記載の印刷処理装置。
【請求項４】
前記分配制御手段は、
前記第２の終端情報検出手段が検出した分割領域以降の印刷データを第３の処理手段に従属の第３の終端情報検出手段に転送し、
前記第２の処理手段が前記印刷データに対して編集・描画処理を実施するとともに、前記第３の終端情報検出手段は該印刷データに挿入された終端情報から前記分割領域を検出し、
前記第２の処理手段は前記第３の終端情報検出手段が検出した分割領域のみに対して編集・描画処理を実施する
ことを特徴とする請求項２記載の印刷処理装置。
【請求項５】
印刷指示装置により分割され、該分割された分割領域の区切りを検出するための終端情報が挿入された印刷データを受け付けて印刷処理する印刷処理装置において、
前記印刷データの編集・描画処理を実施する複数の処理手段と、
前記印刷データに挿入された終端情報から前記分割領域を検出する前記処理手段に従属の終端情報検出手段と、
前記終端情報検出手段で検出した印刷データの複数の分割領域の編集・描画処理を前記複数の処理手段に並列して実施させる分配制御手段と、
前記複数の処理手段で編集・描画処理した印刷データを印字処理する印字処理手段と
を具備することを特徴とする印刷処理装置。
【請求項６】
前記分配制御手段は、
前記印刷データを第１の処理手段に従属の第１の終端情報検出手段に転送し、
前記第１の終端情報検出手段は、
前記印刷データに挿入された終端情報から前記分割領域を検出し、
前記第１の処理手段は、
前記第１の終端情報が検出した分割領域のみに対して編集・描画処理を実施する
ことを特徴とする請求項５記載の印刷処理装置。
【請求項７】
前記分配制御手段は、
前記印刷データを第１の処理手段に従属の第１の終端情報検出手段と、第２の処理手段に従属の第２の終端情報検出手段とに転送し、
前記第１の処理手段が前記印刷データに対して編集・描画処理を実施するとともに、前記第２の終端情報検出手段が該印刷データに挿入された終端情報から前記分割領域を検出し、
前記第１の処理手段は前記第２の終端情報検出手段が検出した分割領域のみに対して編集・描画処理を実施する
ことを特徴とする請求項５記載の印刷処理装置。
【請求項８】
前記分配制御手段は、
前記第２の終端情報検出手段が検出した分割領域以降の印刷データを第３の処理手段に従属の第３の終端情報検出手段に転送し、
前記第２の処理手段が前記印刷データに対して編集・描画処理を実施するとともに、前記第３の終端情報検出手段は該印刷データに挿入された終端情報から前記分割領域を検出し、
前記第２の処理手段は前記第３の終端情報検出手段が検出した分割領域のみに対して編集・描画処理を実施する
ことを特徴とする請求項６記載の印刷処理装置。
【請求項９】
分散印刷処理を行うことが可能な印刷処理装置と接続する印刷指示装置において、
画像から印刷データを生成する印刷データ生成手段と、
前記印刷データ生成手段で生成した印刷データを分割する印刷データ分割手段と、
前記印刷データ分割手段で分割した印刷データの分割領域の区切りを検出するための終端情報を挿入する終端情報挿入手段と
を具備することを特徴とする印刷指示装置。
【請求項１０】
分散印刷処理を行うことが可能な印刷処理装置と接続する情報処理装置に格納されるプリンタドライバにおいて、
画像から印刷データを生成する処理と、
該生成した印刷データを分割する処理と、
該分割した印刷データの分割領域の区切りを検出するための終端情報を挿入する処理と
をコンピュータに動作させることを特徴とするプリンタドライバ。
【請求項１１】
印刷指示装置が生成した印刷データを印刷処理装置が印刷処理する印刷処理システムにおいて、
前記印刷指示装置は、
画像から印刷データを生成する印刷データ生成手段と、
前記印刷データ生成手段で生成した印刷データを分割する印刷データ分割手段と、
前記印刷データ分割手段で分割した印刷データの分割領域の区切りを検出するための終端情報を挿入する終端情報挿入手段と
を具備し、
前記印刷処理装置は、
前記印刷データの編集・描画処理を実施する複数の処理手段と、
前記印刷データに挿入された終端情報から前記分割領域を検出する前記処理手段に従属の終端情報検出手段と、
前記終端情報検出手段で検出した印刷データの複数の分割領域の編集・描画処理を前記複数の処理手段に並列して実施させる分配制御手段と、
前記複数の処理手段で編集・描画処理した印刷データを印字処理する印字処理手段と
を具備することを特徴とする印刷処理システム。
【請求項１２】
画像から印刷データを印刷データ生成手段により生成し、
該生成した印刷データを印刷データ分割手段により分割し、
該分割した印刷データの分割領域の区切りを検出するための終端情報を終端情報挿入手段により挿入し、
前記印刷データに挿入された終端情報から前記分割領域を終端情報検出手段により検出し、
該検出した印刷データの複数の分割領域の編集・描画処理を前記複数の処理手段に並列して分配制御手段により実施させ、
該編集・描画処理した印刷データを印字処理手段により印字処理する
ことを特徴とする印刷処理装置の並列処理方法。
【請求項１３】
前記分配制御手段は、
前記印刷データを第１の処理手段に従属の第１の終端情報検出手段に転送し、
前記第１の終端情報検出手段は、
前記印刷データに挿入された終端情報から前記分割領域を検出し、
前記第１の処理手段は、
前記第１の終端情報が検出した分割領域のみに対して編集・描画処理を実施する
ことを特徴とする請求項１２記載の印刷処理装置の並列処理方法。
【請求項１４】
前記分配制御手段は、
前記印刷データを第１の処理手段に従属の第１の終端情報検出手段と、第２の処理手段に従属の第２の終端情報検出手段とに転送し、
前記第１の処理手段が前記印刷データに対して編集・描画処理を実施するとともに、前記第２の終端情報検出手段が該印刷データに挿入された終端情報から前記分割領域を検出し、
前記第１の処理手段は前記第２の終端情報検出手段が検出した分割領域のみに対して編集・描画処理を実施する
ことを特徴とする請求項１２記載の印刷処理装置の並列処理方法。
【請求項１５】
前記分配制御手段は、
前記第２の終端情報検出手段が検出した分割領域以降の印刷データを第３の処理手段に従属の第３の終端情報検出手段に転送し、
前記第２の処理手段が前記印刷データに対して編集・描画処理を実施するとともに、前記第３の終端情報検出手段は該印刷データに挿入された終端情報から前記分割領域を検出し、
前記第２の処理手段は前記第３の終端情報検出手段が検出した分割領域のみに対して編集・描画処理を実施する
ことを特徴とする請求項１４記載の印刷処理装置の並列処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷処理装置、印刷指示装置、プリンタドライバ、印刷処理システム、および印刷処理装置の並列処理方法に関し、特に、印刷データを複数のＣＰＵで並列処理する印刷処理装置、印刷指示装置、プリンタドライバ、印刷処理システム、および印刷処理装置の並列処理方法に関する。
【背景技術】
【０００２】
従来、ホストＰＣ（Personal Computer）からの印刷コマンド列を受信したプリンタは、受信した印刷コマンド列のページバッファへの描画、描画完了のページバッファに対する印刷処理を並行に処理して印刷スループットを高めるために、マルチプロセッサを利用し、複数頁にわたる印刷コマンドをコマンドバッファに格納し、コマンドに従って複数のプロセッサにより異なる頁の描画処理及び印刷処理を行う技術がある。
【０００３】
例えば、プリンタドライバが生成する頁単位の頁記述言語印刷データを、実装する複数のＣＰＵに対して頁単位で頁記述言語データ解析および描画処理を分散し、頁単位の該処理を並列に実行することで連続印刷性能を高めるマルチプロセッサプリンタにおけるプリントシステムがある（例えば、特許文献１参照。）。
【０００４】
図４は、従来技術における頁単位処理分割のマルチプロセッサ制御タイムチャートの一例を示す図である。なお、４個のＣＰＵ［Central Processing Unit］（ＣＰＵ１、ＣＰＵ２、ＣＰＵ３、ＣＰＵ４）で頁単位処理分割を行うこととする。
【０００５】
図４に示すように、１頁目の印刷データの受信が開始すると、ＣＰＵ１は１頁目の印刷データの編集・描画処理を開始する。そして、１頁目の印刷データの受信が終了すると、２頁目の印刷データの受信が開始し、ＣＰＵ２が２頁目の印刷データの編集・描画処理を開始し、以後、ＣＰＵ３が３頁目の印刷データの編集・描画処理を行い、ＣＰＵ４が４頁目の印刷データの編集・描画処理を行い、５頁以降の印刷データについても同様な処理が行われる。
【０００６】
ここで、ＣＰＵ１が１頁目の印刷データの編集・描画処理を終了すると、１頁目の印刷データの印字を開始し、ＣＰＵ２が２頁目の印刷データの編集・描画処理を終了すると、２頁目の印刷データの印字を開始し、ＣＰＵ３が３頁目の印刷データの編集・描画処理を終了すると、３頁目の印刷データの印字を開始し、４頁以降の印刷データについても同様な処理が行われる。
【０００７】
しかし、図４に示すように、ＣＰＵ２による２頁目の印刷データの編集・描画処理が長引いたため、１頁目の印字処理終了から２頁目の印字処理開始までの印字間隔が空いてしまい、更に、ＣＰＵ３による３頁目の印刷データの編集・描画処理が長引いたため、２頁目の印字処理終了から３頁目の印字処理開始までの印字間隔も空いてしまうため、連続印字処理を行うことができなくなり、印刷性能を高めることができないという問題が発生している。
【０００８】
そこで、上記問題を解決するための技術としてマルチプロセッサ構成で、始めに頁記述言語を１つのＣＰＵが解析し、描画実行単位であるバンド単位に処理分割して描画を並列処理させるマルチプロセッサ・ベース・プリンタ用の組込みディスプレイ・リスト・インタプリタがある（例えば、特許文献２参照。）。
【特許文献１】特開２００２−７３３０３号公報
【特許文献２】特開平１０−９７３９４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかし、特許文献２の技術では、１頁の頁記述言語解析処理時間が長引くと、処理速度を向上することは困難であるという問題がある。
【００１０】
そこで、本発明は、上記問題を解決することで、編集・描画処理の時間を短縮し、印字間隔も空けることなく、連続印刷を可能にする印刷処理装置、印刷指示装置、プリンタドライバ、印刷処理システム、および印刷処理装置の並列処理方法を提供することを目的とする。
【課題を解決するための手段】
【００１１】
上記目的を達成するため、請求項１の発明は、画像から印刷データを生成する印刷データ生成手段と、前記印刷データ生成手段で生成した印刷データを分割する印刷データ分割手段と、前記印刷データ分割手段で分割した印刷データの分割領域の区切りを検出するための終端情報を挿入する終端情報挿入手段と、前記印刷データの編集・描画処理を実施する複数の処理手段と、前記印刷データに挿入された終端情報から前記分割領域を検出する前記処理手段に従属の終端情報検出手段と、前記終端情報検出手段で検出した印刷データの複数の分割領域の編集・描画処理を前記複数の処理手段に並列して実施させる分配制御手段と、前記複数の処理手段で編集・描画処理した印刷データを印字処理する印字処理手段とを具備することを特徴とする。
【００１２】
また、請求項２の発明は、請求項１の発明において、前記分配制御手段は、前記印刷データを第１の処理手段に従属の第１の終端情報検出手段に転送し、前記第１の終端情報検出手段は、前記印刷データに挿入された終端情報から前記分割領域を検出し、前記第１の処理手段は、前記第１の終端情報が検出した分割領域のみに対して編集・描画処理を実施することを特徴とする。
【００１３】
また、請求項３の発明は、請求項１の発明において、前記分配制御手段は、前記印刷データを第１の処理手段に従属の第１の終端情報検出手段と、第２の処理手段に従属の第２の終端情報検出手段とに転送し、前記第１の処理手段が前記印刷データに対して編集・描画処理を実施するとともに、前記第２の終端情報検出手段が該印刷データに挿入された終端情報から前記分割領域を検出し、前記第１の処理手段は前記第２の終端情報検出手段が検出した分割領域のみに対して編集・描画処理を実施することを特徴とする。
【００１４】
また、請求項４の発明は、請求項２の発明において、前記分配制御手段は、前記第２の終端情報検出手段が検出した分割領域以降の印刷データを第３の処理手段に従属の第３の終端情報検出手段に転送し、前記第２の処理手段が前記印刷データに対して編集・描画処理を実施するとともに、前記第３の終端情報検出手段は該印刷データに挿入された終端情報から前記分割領域を検出し、前記第２の処理手段は前記第３の終端情報検出手段が検出した分割領域のみに対して編集・描画処理を実施することを特徴とする。
【００１５】
また、請求項５の発明は、印刷指示装置により分割され、該分割された分割領域の区切りを検出するための終端情報が挿入された印刷データを受け付けて印刷処理する印刷処理装置において、前記印刷データの編集・描画処理を実施する複数の処理手段と、前記印刷データに挿入された終端情報から前記分割領域を検出する前記処理手段に従属の終端情報検出手段と、前記終端情報検出手段で検出した印刷データの複数の分割領域の編集・描画処理を前記複数の処理手段に並列して実施させる分配制御手段と、前記複数の処理手段で編集・描画処理した印刷データを印字処理する印字処理手段とを具備することを特徴とする。
【００１６】
また、請求項６の発明は、請求項５の発明において、前記分配制御手段は、前記印刷データを第１の処理手段に従属の第１の終端情報検出手段に転送し、前記第１の終端情報検出手段は、前記印刷データに挿入された終端情報から前記分割領域を検出し、前記第１の処理手段は、前記第１の終端情報が検出した分割領域のみに対して編集・描画処理を実施することを特徴とする。
【００１７】
また、請求項７の発明は、請求項５の発明において、前記分配制御手段は、前記印刷データを第１の処理手段に従属の第１の終端情報検出手段と、第２の処理手段に従属の第２の終端情報検出手段とに転送し、前記第１の処理手段が前記印刷データに対して編集・描画処理を実施するとともに、前記第２の終端情報検出手段が該印刷データに挿入された終端情報から前記分割領域を検出し、前記第１の処理手段は前記第２の終端情報検出手段が検出した分割領域のみに対して編集・描画処理を実施することを特徴とする。
【００１８】
また、請求項８の発明は、
前記分配制御手段は、請求項６の発明において、前記第２の終端情報検出手段が検出した分割領域以降の印刷データを第３の処理手段に従属の第３の終端情報検出手段に転送し、前記第２の処理手段が前記印刷データに対して編集・描画処理を実施するとともに、前記第３の終端情報検出手段は該印刷データに挿入された終端情報から前記分割領域を検出し、前記第２の処理手段は前記第３の終端情報検出手段が検出した分割領域のみに対して編集・描画処理を実施することを特徴とする。
【００１９】
また、請求項９の発明は、分散印刷処理を行うことが可能な印刷処理装置と接続する印刷指示装置において、画像から印刷データを生成する印刷データ生成手段と、前記印刷データ生成手段で生成した印刷データを分割する印刷データ分割手段と、前記印刷データ分割手段で分割した印刷データの分割領域の区切りを検出するための終端情報を挿入する終端情報挿入手段とを具備することを特徴とする。
【００２０】
また、請求項１０の発明は、分散印刷処理を行うことが可能な印刷処理装置と接続する情報処理装置に格納されるプリンタドライバにおいて、画像から印刷データを生成する処理と、該生成した印刷データを分割する処理と、該分割した印刷データの分割領域の区切りを検出するための終端情報を挿入する処理とをコンピュータに動作させることを特徴とする。
【００２１】
また、請求項１１の発明は、印刷指示装置が生成した印刷データを印刷処理装置が印刷処理する印刷処理システムにおいて、前記印刷指示装置は、画像から印刷データを生成する印刷データ生成手段と、前記印刷データ生成手段で生成した印刷データを分割する印刷データ分割手段と、前記印刷データ分割手段で分割した印刷データの分割領域の区切りを検出するための終端情報を挿入する終端情報挿入手段とを具備し、前記印刷処理装置は、前記印刷データの編集・描画処理を実施する複数の処理手段と、前記印刷データに挿入された終端情報から前記分割領域を検出する前記処理手段に従属の終端情報検出手段と、前記終端情報検出手段で検出した印刷データの複数の分割領域の編集・描画処理を前記複数の処理手段に並列して実施させる分配制御手段と、前記複数の処理手段で編集・描画処理した印刷データを印字処理する印字処理手段とを具備することを特徴とする。
【００２２】
また、請求項１２の発明は、画像から印刷データを印刷データ生成手段により生成し、該生成した印刷データを印刷データ分割手段により分割し、該分割した印刷データの分割領域の区切りを検出するための終端情報を終端情報挿入手段により挿入し、前記印刷データに挿入された終端情報から前記分割領域を終端情報検出手段により検出し、該検出した印刷データの複数の分割領域の編集・描画処理を前記複数の処理手段に並列して分配制御手段により実施させ、該編集・描画処理した印刷データを印字処理手段により印字処理することを特徴とする印刷処理装置。
【００２３】
また、請求項１３の発明は、請求項１２の発明において、前記分配制御手段は、前記印刷データを第１の処理手段に従属の第１の終端情報検出手段に転送し、前記第１の終端情報検出手段は、前記印刷データに挿入された終端情報から前記分割領域を検出し、前記第１の処理手段は、前記第１の終端情報が検出した分割領域のみに対して編集・描画処理を実施することを特徴とする。
【００２４】
また、請求項１４の発明は、請求項１２の発明において、前記分配制御手段は、前記印刷データを第１の処理手段に従属の第１の終端情報検出手段と、第２の処理手段に従属の第２の終端情報検出手段とに転送し、前記第１の処理手段が前記印刷データに対して編集・描画処理を実施するとともに、前記第２の終端情報検出手段が該印刷データに挿入された終端情報から前記分割領域を検出し、前記第１の処理手段は前記第２の終端情報検出手段が検出した分割領域のみに対して編集・描画処理を実施することを特徴とする。
【００２５】
また、請求項１５の発明は、請求項１４の発明において、前記分配制御手段は、前記第２の終端情報検出手段が検出した分割領域以降の印刷データを第３の処理手段に従属の第３の終端情報検出手段に転送し、前記第２の処理手段が前記印刷データに対して編集・描画処理を実施するとともに、前記第３の終端情報検出手段は該印刷データに挿入された終端情報から前記分割領域を検出し、前記第２の処理手段は前記第３の終端情報検出手段が検出した分割領域のみに対して編集・描画処理を実施することを特徴とする。
【発明の効果】
【００２６】
本発明によれば、ＰＣから印刷データを受信した直後に編集・描画処理を開始できるとともに、１頁の編集・描画時間が短縮され、印刷性能が向上するという効果を奏する。
【発明を実施するための最良の形態】
【００２７】
以下、本発明の実施の形態について添付図面を参照して詳細に説明する。
【００２８】
本発明の実施の形態として、本発明に係るプリンタと本発明に係るプリンタドライバがインストールされたＰＣ（Personal Computer）とが接続する構成を一例にして詳細に説明する。なお、当該プリンタとＰＣとの接続は特に限定はしないため、ネットワーク接続でも良いし、ローカル接続でも良い。
【００２９】
図１は、本発明に係るプリンタ１およびＰＣ２にインストールされた本発明に係るプリンタドライバ３の機能的な構成を示すブロック図である。
【００３０】
ＰＣ２にインストールされたプリンタドライバ３の機能的な構成について詳細に説明する。
【００３１】
図１に示すように、プリンタドライバ３は、印刷データ生成部４、印刷データ分割部５、バンド終端マーク挿入部６、印刷データ送信部７から構成されている。
【００３２】
印刷データ生成部４は、ＰＣ２のアプリケーション８から受け付けた文書等のデータから印刷データを生成する処理を行う。なお、印刷データ生成部４で生成する印刷データはデータを頁記述言語（ＰＤＬ：Page Description Language）に変換したものである。
【００３３】
印刷データ分割部５は、印刷データ生成部４で生成した印刷データの各頁をバンド領域単位に分割する処理を行う。また、バンド間にまたがる書式・属性情報を、各バンドに関連付けるため分割したデータに付加する。
【００３４】
バンド終端マーク挿入部６は、印刷データ分割部５で分割したバンド領域の区切りをプリンタが検出できるように、バンド領域の終端にバンド終端マークを挿入する処理を行う。
【００３５】
印刷データ送信部７は、印刷データをプリンタに送信する処理を行う。
【００３６】
プリンタ１の機能的な構成について詳細に説明する。
【００３７】
図１に示すように、プリンタ１は、印刷データ受信部９、ディスパッチャ１０、複数のＣＰＵ（ＣＰＵ１：１１１、ＣＰＵ２：１１２、…、ＣＰＵｎ：１１ｎ）、複数のバッファメモリ（バッファメモリ１：１２１、バッファメモリ２：１２２、…、バッファメモリｎ：１２ｎ）、印字処理部１３から構成されている。
【００３８】
印刷データ受信部９は、ＰＣ２から送信された印刷データを受信する処理を行う。
【００３９】
ディスパッチャ１０は、印刷データ受信部９が受信した印刷データを１頁毎にＣＰＵ１〜ＣＰＵｎに分配する処理を行い、ＣＰＵ１〜ＣＰＵｎが１頁分の印刷データの編集・描画処理を終了すると、印字処理部１３に当該１頁分の画像データの印字処理を指示する。
【００４０】
ＣＰＵ（Central Processing Unit）：１１１、１１２、〜、１１ｎは、その機能として、プリンタドライバ３が印刷データのバンド領域の終端に挿入したバンド終端マークを検出する機能のバンド終端マーク検出手段（１４１、１４２、〜、１４ｎ）、印刷データの編集処理および描画処理を行う機能の編集・描画処理部（１５１、１５２、〜、１５ｎ）を有する。
【００４１】
バッファメモリ（１２１、１２２、〜、１２ｎ）は、各ＣＰＵが処理した画像データを格納する。なお、ＣＰＵ１：１１１が処理した画像データをバッファメモリ１：１２１が格納し、ＣＰＵ２：１１２が処理した画像データをバッファメモリ２：１２２が格納し、ＣＰＵｎ：１１ｎが処理した画像データをバッファメモリｎ：１２ｎが格納する。
【００４２】
印字処理部１３は、各バッファメモリから画像データを処理された順番通りに読み出し、読み出した画像データを用紙上に形成する印字処理を行う。
【００４３】
次に、アプリケーション９から印刷指示を受け付けた際に、プリンタドライバ３が行う機能的な処理について図１を参照して説明する。
【００４４】
プリンタドライバ３はアプリケーション９から印刷指示を受け付けると、プリンタドライバ３の印刷データ生成部４は印刷指示内容（文書等のデータ）から印刷データを生成し、生成した印刷データを印刷データ分割部５に渡し、印刷データ分割部５は印刷データを受け取ると、受け取った印刷データの各頁をバンド領域単位に分割し、分割した印刷データをバンド終端マーク挿入部６に渡し、バンド終端マーク挿入部６は印刷データを受け取ると、受け取った印刷データのバンド領域の区切りをプリンタ１が検出できるように、各バンド領域の終端にバンド終端マークを挿入する。
【００４５】
バンド終端マーク挿入部６は、印刷データの分割および分割した各印刷データへのバンド終端マークの挿入を終了すると、印刷データを印刷データ送信部７に渡し、印刷データ送信部７は印刷データを受け取ると、受け取った印刷データをプリンタ１に送信する。
【００４６】
次に、ＰＣ２から印刷データを受信した際に、プリンタ１が行う第１の機能的な処理について図１を参照して説明する。
【００４７】
印刷データ受信部９はＰＣ２からの印刷データを受信すると、受信した印刷データをディスパッチャ１０に渡し、ディスパッチャ１０は印刷データを受け取ると、受け取った印刷データにおける先頭頁（つまり、１頁目）の印刷データをＣＰＵ１：１１１に渡し、ＣＰＵ１：１１１のバンド終端マーク検出部１４１は印刷データを受け取ると、受け取った印刷データの先頭バンド領域（以後、バンド１とする）を解析し、バンド１の終端に挿入されているバンド終端マークを検出すると、検出したバンド終端マークの位置情報をディスパッチャ１０に通知するとともに、印刷データのバンド１（つまり、印刷データの先頭からバンド終端マークが挿入されていた位置までの領域）を編集・描画処理部１５１に渡し、編集・描画処理部１５１は印刷データのバンド１を受け取ると、受け取った印刷データのバンド１に対して編集処理および描画処理を実施し、実施した画像データをバッファメモリ１：１２１に格納する。
【００４８】
一方、ディスパッチャ１０はＣＰＵ１：１１１からのバンド１の終端マークの位置情報の通知を受け付けると、受け付けたバンド１の終端マークの位置情報から次の印刷データをＣＰＵ２：１１２に渡し、ＣＰＵ２：１１２のバンド終端マーク検出部１４２はバンド１の終端マークの位置情報から次の印刷データを受け取ると、受け取ったバンド１の終端マークの位置情報から次の印刷データの先頭バンド領域（つまり、バンド２）を解析し、バンド２の終端に挿入されているバンド終端マークを検出すると、検出したバンド終端マークの位置情報をディスパッチャ１０に通知するとともに、印刷データのバンド２（つまり、印刷データの先頭からバンド終端マークが挿入されていた位置までの領域）を編集・描画処理部１５２に渡し、編集・描画処理部１５２は印刷データのバンド２を受け取ると、受け取った印刷データのバンド２に対して編集処理および描画処理を実施し、実施した画像データをバッファメモリ２：１２２に格納する。
【００４９】
すなわち、上記の処理を繰り返すことで、分割した印刷データを各ＣＰＵに分配していく。
【００５０】
ここで、ＣＰＵｎ：１１ｎがディスパッチャから１０のバンド（ｎ−１）の終端マークの位置情報から次の印刷データを受け取ると、受け取ったバンド（ｎ−１）の終端マークの位置情報から次の印刷データの先頭バンド領域（つまり、バンドｎ）を解析し、印刷データの終端（つまり、１頁目の印刷データの終了）を検出すると、印刷データの終端を検出した旨をディスパッチャ１０に通知するとともに、印刷データのバンドｎ（つまり、残りの印刷データ）を編集・描画処理部１５ｎに渡し、編集・描画処理部は印刷データのバンドｎを受け取ると、受け取った印刷データのバンドｎに対して編集処理および描画処理を実施し、実施した画像データをバッファメモリｎ：１２ｎに格納する。
【００５１】
そして、ディスパッチャ１０はＣＰＵｎ：１１ｎからの印刷データの終端検出の通知を受け付けると、バッファメモリ１：１２１〜バッファメモリｎ：１２ｎに格納している画像データの印字の開始指示とともに、画像データを生成した順番の情報を印字処理部に通知し、印字処理部１３は印字の開始指示および順番の情報の通知を受け付けると、受け付けた順番の情報（上記実施では、バッファメモリ１：１２１→バッファメモリ２：１２２→…→バッファメモリｎ：１２ｎの順）に従って、バッファメモリから画像データを読み出し、１頁目の画像データの印字処理を行う。
【００５２】
引き続き、ディスパッチ１０ャは次頁（つまり、２頁目）の印刷データをＣＰＵ１：１１１に渡し、上記の処理を印刷データの最終端（つまり、最終頁の終端）まで繰り返す。
【００５３】
図２は、プリンタが行う第１の機能的な処理のマルチプロセッサ制御タイムチャートの一例を示す図である。なお、４個のＣＰＵ（ＣＰＵ１、ＣＰＵ２、ＣＰＵ３、ＣＰＵ４）で第１の機能的な処理を行うこととする。
【００５４】
ディスパッチャは１頁目の印刷データの受信を開始すると、ＣＰＵ１に１頁目のバンド１を転送し、ＣＰＵ１は１頁目のバンド１を解析し、バンド終端マークを検出すると、バンド１の終端マークの位置情報をディスパッチャに通知し、１頁目のバンド１の編集・描画処理を開始する。
【００５５】
ディスパッチャはＣＰＵ１からのバンド１の終端マークの位置情報の通知を受け付けると、ＣＰＵ２に１頁目のバンド２を転送し、ＣＰＵ２は１頁目のバンド２を解析し、バンド終端マークを検出すると、バンド２の終端マークの位置情報をディスパッチャに通知し、１頁目のバンド２の編集・描画処理を開始する。
【００５６】
ディスパッチャはＣＰＵ２からのバンド２の終端マークの位置情報の通知を受け付けると、ＣＰＵ３に１頁目のバンド３を転送し、ＣＰＵ３は１頁目のバンド３を解析し、バンド終端マークを検出すると、バンド３の終端マークの位置情報をディスパッチャに通知し、１頁目のバンド３の編集・描画処理を開始する。
【００５７】
ディスパッチャはＣＰＵ３からのバンド３の終端マークの位置情報の通知を受け付けると、ＣＰＵ４に１頁目のバンド４を転送し、ＣＰＵ４は１頁目のバンド４を解析し、１頁目の終端を検出すると、１頁目の印刷データの終端を検出した旨をディスパッチャに通知し、１頁目のバンド４の編集・描画処理を開始する。
【００５８】
ディスパッチャはＣＰＵ４からの１頁目の印刷データの終端を検出した通知を受け付けると、ＣＰＵ１、ＣＰＵ２、ＣＰＵ３、ＣＰＵ４が処理した１頁目の画像データを印字開始を指示する。
【００５９】
そして、２頁以降の印刷データについても同様の処理を繰り返す。
【００６０】
従って、図２に示す第１の機能的な処理のマルチプロセッサ制御タイムチャートは、図４に示す従来技術における頁単位処理分割のマルチプロセッサ制御タイムチャートと較べて、印字間隔が短縮されるため、連続印刷性能を高めている。
【００６１】
次に、ＰＣ２から印刷データを受信した際に、プリンタ１が行う第２の機能的な処理について図１を参照して説明する。
【００６２】
印刷データ受信部９はＰＣ２からの印刷データを受信すると、受信した印刷データをディスパッチャ１０に渡し、ディスパッチャ１０は印刷データを受け取ると、受け取った印刷データにおける先頭頁（つまり、１頁目）の印刷データをＣＰＵ１：１１１およびＣＰＵ２：１１２に転送する。
【００６３】
ＣＰＵ１：１１１のバンド終端マーク検出部１４１は印刷データを受け取ると、受け取った印刷データを編集・描画処理部１５１に渡し、編集・描画処理部１５１は印刷データを受け取ると、受け取った印刷データに対する編集処理および描画処理の実施を開始する。
【００６４】
一方、ＣＰＵ２：１１２のバンド終端マーク検出部１４２は印刷データを受け取ると、受け取った印刷データの先頭バンド領域（以後、バンド１とする）を解析し、バンド１の終端に挿入されているバンド終端マークを検出すると、検出したバンド終端マークの位置情報をディスパッチャ１０に通知する。
【００６５】
ディスパッチャ１０はＣＰＵ２：１１２からのバンド１の終端マークの位置情報の通知を受け付けると、受け付けたバンド１の終端マークの位置情報から次の印刷データ（つまり、バンド２）のＣＰＵ１：１１１への転送を停止することを認識し、当該印刷データのＣＰＵ３（図示せず）への転送を開始する。
【００６６】
ディスパッチャ１０からの印刷データの転送が停止された時点で、ＣＰＵ１：１１１の編集・描画処理部１４１は編集処理および描画処理の実施を停止し、停止前までに処理した画像データ（つまり、バンド１の画像データ）をバッファメモリ１：１２１に格納する。
【００６７】
一方、ディスパッチャ１０にバンド１のバンド終端マークの位置情報を通知したＣＰＵ２：１１２は、バンド１の終端マークの位置情報から次の印刷データを編集・描画処理部１４２に渡し、編集・描画処理部１４２は当該印刷データを受け取ると、受け取った当該印刷データに対する編集処理および描画処理の実施を開始する。
【００６８】
一方、ＣＰＵ３のバンド終端マーク検出部はバンド１の終端マークの位置情報から次の印刷データを受け取ると、受け取った当該印刷データの先頭バンド領域（以後、バンド２とする）を解析し、バンド２の終端に挿入されているバンド終端マークを検出すると、検出したバンド終端マークの位置情報をディスパッチャ１０に通知する。
【００６９】
ディスパッチャはＣＰＵ３からのバンド２の終端マークの位置情報の通知を受け付けると、受け付けたバンド２の終端マークの位置情報から次の印刷データ（つまり、バンド３）のＣＰＵ２：１１２への転送を停止することを認識し、当該印刷データのＣＰＵ４（図示せず）への転送を開始する。
【００７０】
ディスパッチャ１０からの印刷データの転送が停止された時点で、ＣＰＵ２：１１２の編集・描画処理部１５２は編集処理および描画処理の実施を停止し、停止前までに処理した画像データ（つまり、バンド２の画像データ）をバッファメモリ２：１２２に格納する。
【００７１】
一方、ディスパッチャ１０にバンド２のバンド終端マークの位置情報を通知したＣＰＵ３は、バンド２の終端マークの位置情報から次の印刷データを編集・描画処理部に渡し、編集・描画処理部は当該印刷データを受け取ると、受け取った当該印刷データに対する編集処理および描画処理の実施を開始する。
【００７２】
すなわち、上記の処理を繰り返すことで、分割した印刷データを各ＣＰＵに分配していく。
【００７３】
そして、ＣＰＵｎ：１１ｎが印刷データの終端（つまり、１頁目の印刷データの終了）を検出すると、印刷データの終端を検出した旨をディスパッチャ１０に通知するとともに、印刷データのバンドｎ（つまり、残りの印刷データ）を編集・描画処理部１５ｎに渡し、編集・描画処理部１５ｎは印刷データのバンドｎを受け取ると、受け取った印刷データのバンドｎに対して編集処理および描画処理を実施し、実施した画像データをバッファメモリｎ：１２ｎに格納する。
【００７４】
そして、ディスパッチャ１０はＣＰＵｎ：１１ｎからの印刷データの終端検出の通知を受け付けると、バッファメモリ１：１２１〜バッファメモリｎ：１２ｎに格納している画像データの印字の開始指示とともに、画像データを生成した順番の情報を印字処理部１３に通知し、印字処理部１３は印字の開始指示および順番の情報の通知を受け付けると、受け付けた順番の情報（上記実施では、バッファメモリ１：１２１→バッファメモリ２：１２２→…→バッファメモリｎ：１２ｎの順）に従って、バッファメモリから画像データを読み出し、１頁目の画像データの印字処理を行う。
【００７５】
引き続き、ディスパッチャ１０は次頁（つまり、２頁目）の印刷データをＣＰＵ１：１１１に渡し、上記の処理を印刷データの最終端（つまり、最終頁の終端）まで繰り返す。
【００７６】
図３は、プリンタが行う第２の機能的な処理のマルチプロセッサ制御タイムチャートの一例を示す図である。なお、４個のＣＰＵ（ＣＰＵ１、ＣＰＵ２、ＣＰＵ３、ＣＰＵ４）で第１の機能的な処理を行うこととする。
【００７７】
ディスパッチャは１頁目の印刷データの受信を開始すると、ＣＰＵ１およびＣＰＵ２に１頁目のバンド１を転送し、ＣＰＵ１は１頁目のバンド１の編集・描画処理を開始し、ＣＰＵ２は１頁目のバンド１を解析し、バンド終端マークを検出すると、バンド１の終端マークの位置情報をディスパッチャに通知する。
【００７８】
ディスパッチャはＣＰＵ２からのバンド１の終端マークの位置情報の通知を受け付けると、１頁目のバンド２のＣＰＵ１への転送を停止することを認識し、ＣＰＵ１はディスパッチャから印刷データの転送が停止された時点で編集・描画処理を停止する。
【００７９】
そして、ディスパッチャは１頁目のバンド２のＣＰＵ３への転送を開始し、ＣＰＵ２は１頁目のバンド２の編集・描画処理を開始し、ＣＰＵ３は１頁目のバンド２を解析し、バンド終端マークを検出すると、バンド２の終端マークの位置情報をディスパッチャに通知する。
【００８０】
ディスパッチャはＣＰＵ３からのバンド２の終端マークの位置情報の通知を受け付けると、１頁目のバンド３のＣＰＵ２への転送を停止することを認識し、ＣＰＵ２はディスパッチャから印刷データの転送が停止された時点で編集・描画処理を停止する。
【００８１】
そして、ディスパッチャは１頁目のバンド３のＣＰＵ４への転送を開始し、ＣＰＵ３は１頁目のバンド３の編集・描画処理を開始し、ＣＰＵ４は１頁目のバンド３を解析し、バンド終端マークを検出すると、バンド３の終端マークの位置情報をディスパッチャに通知する。
【００８２】
ディスパッチャはＣＰＵ４からのバンド３の終端マークの位置情報の通知を受け付けると、１頁目のバンド４のＣＰＵ３への転送を停止することを認識し、ＣＰＵ３はディスパッチャから印刷データの転送が停止された時点で編集・描画処理を停止する。
【００８３】
そして、ＣＰＵ４は１頁目のバンド４の編集・描画処理を開始し、１頁目の終端を検出すると、１頁目の印刷データの終端を検出した旨をディスパッチャに通知し、１頁目のバンド４の編集・描画処理を停止する。
【００８４】
ディスパッチャはＣＰＵ４からの１頁目の印刷データの終端を検出した通知を受け付けると、ＣＰＵ１、ＣＰＵ２、ＣＰＵ３、ＣＰＵ４が処理した１頁目の画像データを印字開始を指示する。
【００８５】
そして、２頁以降の印刷データについても同様の処理を繰り返す。
【００８６】
従って、図３に示す第２の機能的な処理のマルチプロセッサ制御タイムチャートは、図４に示す従来技術における頁単位処理分割のマルチプロセッサ制御タイムチャートと較べて、印字間隔が短縮されるため、連続印刷性能を高めている。
【００８７】
なお、上記実施例で説明したような、印刷データのＣＰＵへの転送順序をＣＰＵ１→ＣＰＵ２→…のように昇順にする構成に限定する必要はなく、どのような順序で転送しても良い。例えば、処理中ではないＣＰＵに印刷データを転送する構成でも適用可能である。
【００８８】
また、上記実施例で説明したような、プリンタが有するＣＰＵの個数に合わせて印刷データを分割する構成に限定する必要はなく、ＣＰＵの個数＞印刷データの分割数でも良いし、ＣＰＵの個数＜印刷データの分割数でも良い。
【００８９】
また、本発明に係るプリンタが本発明に係るプリンタドライバを包含するものであっても良いし、本発明に係るプリンタドライバと同様な機能を持つ印刷指示装置をプリンタに接続する構成でも適用可能である。
【図面の簡単な説明】
【００９０】
【図１】本発明に係るプリンタ１およびＰＣ２にインストールされた本発明に係るプリンタドライバ３の機能的な構成を示すブロック図である。
【図２】プリンタが行う第１の機能的な処理のマルチプロセッサ制御タイムチャートの一例を示す図である。
【図３】プリンタが行う第２の機能的な処理のマルチプロセッサ制御タイムチャートの一例を示す図である。
【図４】従来技術における頁単位処理分割のマルチプロセッサ制御タイムチャートの一例を示す図である。
【符号の説明】
【００９１】
１    プリンタ
２    ＰＣ
３    プリンタドライバ
４    印刷データ生成部
５    印刷データ分割部
６    バンド終端マーク挿入部
７    印刷データ送信部
８    アプリケーション
９    印刷データ受信部
１０    ディスパッチャ
１１１、１１２、１１３    ＣＰＵ
１２１、１２２、１２３    バッファメモリ
１３１    印字処理部
１４１、１４２、１４３    バンド終端マーク検出部
１５１、１５２、１５３    編集・描画処理部
【図１】
2005275563.tif 000003
【図２】
2005275563.tif 000004
【図３】
2005275563.tif 000005
【図４】
2005275563.tif 000006