(57)【要約】      （修正有）【課題】  描画展開する際にデスティネーションのＤＭＡの回数を減らすことにより、描画処理を高速化する。【解決手段】  メモリ上の印字領域に対するアクセスを、印字時の座標（Ｘ，Ｙ）に変換し、各座標（Ｘ，Ｙ）のｍｉｎ値と比較し、小さければｍｉｎ値を更新し、大きければｍａｘ値を更新する。このように、デスティネーション領域で既にイメージデータを格納しているところ以外はＤＭＡによるメモリアクセスを発生しない様にすることにより、メモリからのデータ読み出し処理を減らしイメージデータへの展開速度を向上させる。【選択図】  図８
2006192728.tif 000002
【特許請求の範囲】
【請求項１】
印刷情報を解析する入力情報解析手段と、該入力情報解析手段の解析をもとに前述印刷情報をビットマップイメージデータに変換するラスタライズ手段とを備えた印刷装置において、
前述ラスタライズ手段が必要とするデータのメモリアクセスを抑制する手段を特徴とする印刷装置。
【請求項２】
前述ラスタライズにより展開されたビットマップイメージの格納領域を座標により判断する手段を特徴とする請求工１の印刷装置。
【請求項３】
前述ビットマップイメージの格納領域を座標で記憶する記憶手段を特徴とする印刷装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ホストコンピュータなどのデータ供給源から描画元データを受信し、紙などの媒体に印字出力することのできる画像出力制御方法および印刷装置に関するものである。
【背景技術】
【０００２】
一般に文書作成印字システム等の文書処理、印字装置の概要は、図１の様に構成されており、図中左から出力文書を組版等加工する処理装置であるホストコンピュータ１０１と、ホストコンピュータで加工された出力情報データを紙などの媒体に定着印字するプリンタ１０２を接続し、構成している。具体的にはユーザがホストコンピュータ１０１上にて出力すべき画像を編集し、編集が終了された時点でプリンタ１０２が受け付けられる出力画像用データに変換し、そのデータをプリンタ１０２へ送出、プリンタ１０２は入力されるデータに従い、紙面に印字を実現する。
【０００３】
図１中プリンタコントローラが行う処理を、図２のブロック図及び図３のフローチャートの各例を用いて具体的に説明する。
【０００４】
図２はプリンタコントローラ内の様子を示したブロック図の例で、２０１はホストコンピュータなどのデータ供給源からのデータを受信したり、ステータスのやりとりなどを行うインタフェース部、２０２はプリンタ装置全体を制御／データ処理を行う制御部、２０３はプリンタコントローラ内に備わる主記憶装置であるＤＲＡＭをコントロールするメモリコントローラ、２０４は主記憶であるメモリでこの場合ＤＲＡＭを例に挙げている。２０５はイメージデータを発生させるラスライズ部、２０６はプリンタコントローラが印字時に描画データをプリンタエンジン２０８に送出するために備え付けられているＤＭＡ、２０７はＤＭＡ２０６経由で出力されるイメージデータをプリンタエンジン２０８に送出するエンジンインタフェース、２０８はエンジンインタフェース２０７より出力されたイメージデータを紙などの媒体に定着し、印字を実現するプリンタエンジンである。
【０００５】
図３は図２のブロック図で示したプリンタコントローラの動作例を示したフローチャートであり、その流れを示せば以下の通りである。
【０００６】
先ず、ホストコンピュータなどのデータ供給源より描画元データ（具体的にはプリンタ機器に備わる固有のコードデータであったり、昨今はＰＤＬと称され、プリンタ機器に対する描画言語であったりする）を受信し（ステップＳ３０１）、受信されたデータをＤＲＡＭ２０４内に格納する（ステップＳ３０２）。一般にインタフェースの通信速度とそのデータ処理との速度差を吸収するために、受信バッファと称されるＤＲＡＭ２０４内に備わるメモリ領域に一旦バッファリングを行う等するが、これがその動作に当たる。
【０００７】
次に格納されたデータを解析しイメージ描画の準備を行う（ステップＳ３０３）。処理可能な中間描画データにデータの変換作業を行う。
【０００８】
次にイメージ描画を行う（ステップＳ３０４）。レンダリングが終了したならば、ＤＭＡ２０６、並びにプリンタインタフェース２０７を印字可能状態にセットアップし、プリンタエンジン２０８に起動を掛け（ステップＳ３０５）、既にステップ３０４にてビットイメージ生成がバンドメモリ領域に対して施されているバンド印字を行う（ステップＳ３０６）。
【０００９】
メモリ内のイメージデータの印字を終了する。
【００１０】
さらに、図２の２０５ラスタライズ部におけるイメージデータ展開の詳細を図４の模式図と図５のブロック図を用いて説明する。
【００１１】
図4はイメージ展開処理の工程を模式的に示した図であって、イメージ展開処理の要素としては、各種描画データの幾何的な情報、すなわちどの部分が描画対象化を示す「０」、「１」の信号を1ビットで表現可能なソース情報４０１と、該ソース情報４０１に対してどのようなパターンで周期的に塗るかを示すパターン情報４０２と、イメージデータを格納するメモリ領域にあらかじめ展開されているイメージデータを示すデスティネーション情報４０３と、論理描画情報４０４（ＳＥＴ、ＯＲ、ＸＯＲ、ＢＬＥＮＤ、Ｅｔｃ）の4要素があり、図中、４０５がイメージ展開されたデータである。
【００１２】
図５はラスタライズ部２０５を詳細に示したブロック図であって、構成としては、ソースデータを展開するソースデータコントローラ５０１と、ソースデータ展開のためのデータをメモリから読み出すためのソースデータＤＭＡ５０２と、パターンデータを展開し蓄えるためのパターンデータコントローラ５０３と、パターンデータ展開のためのデータをメモリから読み出すためのパターンデータＤＭＡ５０４と、デスティネーションデータを蓄えるデスティネーションコントローラ５０５と、デスティネーションデータをメモリから読み出すためのデスティネーションデータＤＭＡ５０６と、各データを元に論理演算を行うビットプロセッサ５０７と、該ビットプロセッサ５０７で展開されたイメージデータをメモリに書き戻すための、デスティネーションデータライトバックＤＭＡ５０８である。
【００１３】
動作としては、ソースデータコントローラ５０１とパターンデータコントローラ５０３と、デスティネーションデータコントローラ５０５のそれぞれにデータが蓄えられた時点で、ビットプロセッサ５０７により、イメージ展開されデスティネーションライトバックＤＭＡにより、メモリのイメージデータとして格納される。
【００１４】
又、別の従来例としては、例えば特許文献１と特許文献２をあげることが出来る。
【特許文献１】特開２００１−１０９５９６号公報
【特許文献２】特開平１０−０４００２９号公報
【発明の開示】
【発明が解決しようとする課題】
【００１５】
しかしながら、ハードウェアの処理できる単位はプリミティブであるがために、複雑な図形を印字するためにはそのプリミティブな描画単位が膨大な数となる。このため各処理に必要なデータ量も多くなり、メモリからのデータ読み出しにも膨大な時間がかかってしまい、印字速度の低下を招いてしまう。
【００１６】
本発明は上記問題を解決するためになされたもので、メモリからのデータ読み出し処理を減らしイメージデータへの展開速度を向上させることを可能とする印刷装置を提供することを目的とする。
【課題を解決するための手段】
【００１７】
印刷情報を解析する入力情報解析手段と、該入力情報解析手段の解析をもとに前述印刷情報をビットマップイメージデータに変換するラスタライズ手段とを備えた印刷装置において、前述ラスタライズ手段が必要とするデータのメモリアクセスを抑制する手段をそなえる。
【００１８】
前述ラスタライズにより展開されたビットマップイメージの格納領域を座標により判断する手段を備える。
【００１９】
前述ビットマップイメージの格納領域を座標で記憶する記憶手段を備える。
【発明の効果】
【００２０】
以上説明したように、メモリからのデータ読み出し処理を減らしイメージデータへの展開速度を向上させることを可能し印刷装置の印字速度の向上が実現できる。
【発明を実施するための最良の形態】
【００２１】
（第一の実施例）
図６は本実施形態のラスタライズ部の構成を示した図である。構成としては、ソースデータを展開するソースデータコントローラ５０１と、ソースデータ展開のためのデータをメモリから読み出すためのソースデータＤＭＡ５０２と、パターンデータを展開し蓄えるためのパターンデータコントローラ５０３と、パターンデータ展開のためのデータをメモリから読み出すためのパターンデータＤＭＡ５０４と、デスティネーションデータを蓄えるデスティネーションコントローラ５０５と、描画イメージデータを格納した座標を記憶し、デスティネーションデータの読み出しを抑制するデスティネーションポジションコントローラ６０１と、デスティネーションデータをメモリから読み出すためのデスティネーションデータＤＭＡ５０６と、各データを元に論理演算を行うビットプロセッサ５０７と、該ビットプロセッサ５０７で展開されたイメージデータをメモリに書き戻すための、デスティネーションデータライトバックＤＭＡ５０８である。
【００２２】
ラスタライズ動作としては、図２のホストインターフェース２０１を介して受信した印刷データを制御部２０２で解析し、中間データとし、メモリコントローラ２０３を介してメモリ２０４に格納する。さらに制御部２０２で中間データの解析を行い、ラスタライズ部２０５にイメージ展開に必要な情報を設定する。該情報を元にラスタライズ部はソースデータコントローラ５０１がソースデータＤＭＡを介して、ソースデータ展開に必要なデータをメモリから読み出し、ソースデータを蓄え、パターンデータコントローラもソースデータコントローラ系の処理と同様にパターンデータを蓄える。同時にデスティネーションデータコントローラ５０５もデスティネーションデータの読み出しを行うが、その際に、デスティネーションポジションコントローラ６０１が、すでにイメージデータの書き込みが行われているメモリ領域かの判断を行い。デスティネーションデータＤＭＡに対して読み出し要求を行う。ソースデータ、パターンデータ、デスティネーションデータの準備がそろった時点でビットプロセッサ５０７によりイメージデータに展開し、デスティネーションライトバックＤＭＡ５０８によりメモリに格納する。
【００２３】
デスティネーションポジションコントローラ６０１の動作を図７を用いて示す。
【００２４】
図７はデスティネーションポジションコントローラ６０１の動作を示す模式図である。模式図は、イメージデータとして、７０２四角ＩＭＧ_aと７０５「Ａ」ＩＭＧ_ｂを展開すること示したものである。本実施例ではイメージデータはＩＭＧ_ｂをイメージ展開したのちに７０２ＩＭＧ_ｂを展開する順番である。
【００２５】
デスティネーションポジションコントローラ６０１は、描画幅（W）、描画高さ（ｈ）、描画スタートアドレス７０１を制御部２０２より設定され、始めのイメージ展開である７０２ＩＭＧ_ｂを展開する際に、デスティネーションポジションコントローラ６０１では、デスティネーション領域に対し初めてのアクセスであるので、メモリへの読み出し動作を行わず、デスティネーションデータコントローラ５０５に対して「０」データを渡す。その際にデスティネーションデータコントローラ５０５から読み出し要求のあったアドレス情報を描画幅（Ｗ）、描画高さ（ｈ）、描画スタートアドレスを元に、座標（Ｘ，Ｙ）の最大値と最小値を計算し、７０３（Ｘｍｉｎ１，Ｙｍｉｎ１）、７０４（Ｘｍａｘ１、Ｙｍａｘ１）として格納する。次いで、７０５ＩＭＧ_ｂを転載する際には、格納された７０３（Ｘｍｉｎ１，Ｙｍｉｎ１）、７０４（Ｘｍａｘ１、Ｙｍａｘ１）をもとに、アクセスが始めての領域かどうかの判断を行い、重なり部分である７０８ＤＳＴ０の読み出し要求をデスティネーションデータＤＭＡ５０６に要求し、デスティネーションデータコントローラ５０５に送信する。７０８ＤＳＴ０以外の領域に関しては、デスティネーションデータコントローラ５０５に対し「０」を返す。さらに、ここで展開された領域７０６（Ｘｍｉｎ１，Ｙｍｉｎ１）、７０７（Ｘｍａｘ１、Ｙｍａｘ１）より、既展開領域を更新する。
【００２６】
さらに、ラスタライズ部の動作をフローチャート図８を用いて詳細に説明する。
【００２７】
図８は、ラスタライズ部の処理動作の詳細を示したフローチャートである。ラスタライズ部は、デスティネーション読み出し要求が発生すると、Ｓ８０１で読み出しアドレスを座標（Ｘ，Ｙ）に変換する。Ｓ８０２で該変換されたＹ座標が、記憶されたＹｍｉｎよりも大きいか判断し小さい場合には、Ｓ８０３でＹｍｉｎを更新しＳ８０７でＦｌａｇに「１」をセットする。Ｓ８０２でＹｍｉｎより大きい場合には、Ｓ８０４で該Ｙ座標がＹｍａｘより小さいかを判断し大きい場合にはＳ８０５でＹｍａｘを更新しＳ８０７でＦｌａｇを「１」にセットする。Ｓ８０４の判断でＹｍａｘより小さい場合には、Ｓ８０８でＦｌａｇに「０」をセットする。
【００２８】
次いで、Ｓ８０９で該Ｘ座標がＸｍｉｎより大きいかを判断し、小さい場合にはＳ８１０でＸｍｉｎを更新し、Ｓ８１３でデスティネーションデータの「Ｚｅｒｏ」を格納する。また、Ｓ８０９の判断でＸｍｉｎより小さい場合には、Ｓ８１１で該Ｘ座標がＸｍａｘより小さいかを判断し、Ｘｍａｘより大きい場合には、Ｓ８１２でＸｍａｘを更新し、Ｓ８１３でデスティネーションデータの「Ｚｅｒｏ」を格納する。Ｓ８１１で該Ｘ座標がＸｍａｘより小さい場合には、Ｓ８１４でＦｌａｇが「１」であるかを判断し、１である場合にはＳ８１３でデスティネーションデータの「Ｚｅｒｏ」を格納する。Ｓ８１４でＦｌａｇが「０」の場合には、Ｓ８１５でデスティネーションデータＤＭＡに対しＤＭＡの要求を行い、デスティネーションデータＤＭＡで読み出されたデータを格納する。
【００２９】
このように、デスティネーション領域で既にイメージデータを格納しているところ以外はＤＭＡによるメモリアクセスを発生しないことで、メモリからのデータ読み出し処理を減らしイメージデータへの展開速度を向上させることを可能とする。
【図面の簡単な説明】
【００３０】
【図１】印刷装置の構成図
【図２】従来例での印刷装置のコントローラブロック図
【図３】従来例での印刷処理のフローチャート
【図４】従来例でのラスタライズ模式図
【図５】従来例でのラスタライズ部の詳細ブロック図
【図６】本発明でのラスタライズ部の詳細ブロック図
【図７】本発明でのデスティネーション座標の模式図
【図８】本発明でのデスティネーションデータ読み出しフローチャート
【符号の説明】
【００３１】
１０１  ホストコンピュータ
１０２  プリンタ
２０１  ホストインターフェース
２０２  制御部
２０３  メモリコントローラ
２０４  ＤＲＡＭ（メモリ）
２０５  ラスタライズ部
２０６  ＤＭＡ
２０７  エンジンインタフェース
２０８  エンジン
４０１  ソースデータ
４０２  パターンデータ
４０３  デスティネーションデータ
４０４  論理演算
４０５  イメージデータ
５０１  ソースデータコントローラ
５０２  ソースデータＤＭＡ
５０３  パターンデータコントローラ
５０４  パターンデータＤＭＡ
５０５  デスティネーションデータコントローラ
５０６  デスティネーションデータＤＭＡ
５０７  ビットプロセッサ
５０８  デスティネーションデータライトバックＤＭＡ
６０１  デスティネーションポジションコントローラ
【図１】
2006192728.tif 000003
【図２】
2006192728.tif 000004
【図３】
2006192728.tif 000005
【図４】
2006192728.tif 000006
【図５】
2006192728.tif 000007
【図６】
2006192728.tif 000008
【図７】
2006192728.tif 000009
【図８】
2006192728.tif 000010