JPH10312254A - シリアルプリンタ及びシリアルプリンタにおけるイメージバッファアクセス方法 - Google Patents

シリアルプリンタ及びシリアルプリンタにおけるイメージバッファアクセス方法

Info

Publication number
JPH10312254A
JPH10312254A JP9216630A JP21663097A JPH10312254A JP H10312254 A JPH10312254 A JP H10312254A JP 9216630 A JP9216630 A JP 9216630A JP 21663097 A JP21663097 A JP 21663097A JP H10312254 A JPH10312254 A JP H10312254A
Authority
JP
Japan
Prior art keywords
data
serial printer
image buffer
image data
pixel values
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.)
Granted
Application number
JP9216630A
Other languages
English (en)
Other versions
JP3533895B2 (ja
Inventor
Takashi Kato
隆 加藤
Yasuhiro Oshima
康裕 大島
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP21663097A priority Critical patent/JP3533895B2/ja
Priority to DE69836110T priority patent/DE69836110T2/de
Priority to EP98301778A priority patent/EP0871139B1/en
Priority to US09/041,749 priority patent/US6009245A/en
Publication of JPH10312254A publication Critical patent/JPH10312254A/ja
Application granted granted Critical
Publication of JP3533895B2 publication Critical patent/JP3533895B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/10Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers by matrix printers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K2215/00Arrangements for producing a permanent visual presentation of the output data
    • G06K2215/0002Handling the output data
    • G06K2215/0077Raster outputting to the print element(s)
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K2215/00Arrangements for producing a permanent visual presentation of the output data
    • G06K2215/0082Architecture adapted for a particular function
    • G06K2215/0094Colour printing

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Record Information Processing For Printing (AREA)
  • Dot-Matrix Printers And Others (AREA)

Abstract

(57)【要約】 【課題】 イメージデータの連続性を確保し、データを
一塊として転送できるようにすることにより、その分ア
ドレス計算やメモリへのアクセス回数を減らし、データ
転送のためのCPUの処理負担を軽減し、もって、スル
ープットを向上させること。 【解決手段】 C、M、Y、K4色のノズル列のデータ
はイメージバッファ31´内の同一のメモリ領域に格納
され、イメージバッファ31´内で、ある印字タイミン
グでC、M、Y、K4色それぞれのノズル列に転送され
るデータ群が、網かけの部分で示すように、連続したア
ドレスとなるように展開されている。転送プロセスにお
いては、ある印字タイミングで、1〜20の連続したア
ドレスとなるC、M、Y、K4色のノズル列の複数バイ
トのデータを一塊としてイメージバッファ31´から読
出し、同時に印刷ヘッド側へ転送する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、コンピュータシス
テムのターミナルプリンタやファクシミリ端末等として
用いられるシリアルプリンタに関し、特にイメージバッ
ファへのデータ格納方法を改良したシリアルプリンタに
関する。
【0002】
【従来の技術】従来、かかるシリアルプリンタにおいて
は、例えば、印字タイミング発生毎に割り込みを発生さ
せ、この割り込み処理のプログラムに従って、必要な分
のデータを、イメージデータを格納してあるバッファ
(イメージバッファ)から印刷ヘッド側へ転送してい
る。また、印刷ヘッドは、一般に、列方向(垂直方向)
に並んだ複数個のドット形成要素(例えば、インクジェ
ットノズル又はインパクトワイヤなど)を有し、ヘッド
が行方向(水平方向)に移動している間、各ピクセルの
位置で、そのドット形成要素のアレイが一斉に動作する
構造を備えている。
【0003】従って、印刷ヘッド側へのイメージデータ
の転送では、印刷ヘッドのドット形成要素列ごとにまと
めてデータを転送する処理が行われている。
【0004】図10は、シリアルプリンタにおける、イ
メージバッファでのデータの取扱いの様子を示す図であ
る。
【0005】このプリンタに入力されたソースデータ
は、データバッファ61と呼ばれるメモリエリアに一旦
蓄積される。ソースデータは種々の形式のイメージデー
タを含むことができるが、図10の例は、後述するイメ
ージバッファ67内の最終イメージデータ69の意味を
理解し易くするために、最終イメージデータ69と同様
のラスターグラフィックス形式のイメージデータ65が
ソースデータに含まれている場合を想定している。ここ
で、ソースイメージデータ65内に数字1、2、3、・
・・を付した各ブロックは、1バイトのデータ(つま
り、同じライン上で連続する8個のピクセル値のセッ
ト)を示している。各バイトに付した番号は、イメージ
をラスター方式でスキャンした順序を示している。つま
り、ラスター方式のスキャンは、イメージ内の最上の行
(水平ライン)からスタートして、この行上のピクセル
を左から右(又は逆方向へ)へ水平にスキャンし(図
中、1番バイトから10番バイト)、次に2番目の行へ
移って同様に水平スキャンし(同、11番バイトから2
0番バイト)、次にその下隣の行へ移る、という動作を
最下行まで繰り返すものである。
【0006】イメージングプロセス63において、デー
タバッファ61から読み込まれたソースデータ65に基
づいて、ラスターグラフィックス形式の最終イメージデ
ータ69が生成され、これがイメージバッファ67に書
込まれる。イメージングプロセス63において最終イメ
ージデータ69が生成される順序は、上述したラスター
スキャンの順序(つまり、図中のバイト番号の順序)で
あり、そして、そのバイトが書込まれるときにイメージ
バッファ67がアクセスされる順序は単純なアドレスの
順序である。従って、最終イメージデータ69がイメー
ジバッファ67に格納された様子は、図示のように、イ
メージバッファ67をアドレス順にアクセスすると、ラ
スタースキャン順(番号順)にバイトが読み出せるよう
なものである。
【0007】次に、転送プロセス111において、イメ
ージバッファ67から最終イメージデータ69のバイト
が読み出されて印刷ヘッドへ転送される。イメージバッ
ファ67からバイトが読出される順序は、印刷ヘッドの
副走査方向に並んだドット形成要素の順序であって、こ
れはラスタースキャンの順序とは一致しない。即ち、シ
リアルプリンタの一般的な印刷ヘッドは、副走査方向
(列方向)に並んだ複数個のドット形成要素(例えば、
インクジェットノズル又はインパクトワイヤなど)を有
し、ヘッドが主走査方向(行方向)に移動している間、
各ピクセルの位置で、そのドット形成要素のアレイが一
斉に動作する必要がある。従って、転送プロセス111
において、そのドット形成要素アレイに一斉に与えるべ
き複数のバイト、つまりイメージ上で列方向に並んだ複
数バイトが一塊として読み出される必要がある。
【0008】例えば、アレイのドット形成要素数を仮に
4個とすれば、図10において、1番、11番、21
番、31番の4バイトの塊がまず読み出され、次に2
番、12番、22番、32番バイトの塊が読み出され、
次に3番、13番、23番、33番の塊が読み出され
る、というような順序で読み出される。しかし、このよ
うに一塊として読み出されるべきバイトは、図示のよう
に、イメージバッファ67内の互いに離れたアドレスの
記憶場所に格納されている。
【0009】次に、シリアルのカラーインクジェットプ
リンタにおける、従来のイメージバッファへのデータの
格納及びその印刷ヘッド側への転送方法について説明す
る。
【0010】まず、前提として、かかるシリアルプリン
タにおけるカラーアジャストの問題について図11を参
照しつつ説明する。
【0011】図11(a)は、シリアルのカラーインク
ジェットプリンタにおけるインクを噴射する印刷ヘッド
の概略構造を示すものである。ここでは、印刷ヘッド5
4上にノズル列71,72,73,74の4本のノズル
列があるものとして説明する。各ノズル列71,72,
73,74には、それぞれ複数のノズル71a,72
a,73a,74aが配置されている。また、ノズル列
71,72,73,74は、設計上、それぞれ所定の距
離dだけ離間して配置されている。
【0012】例えば、図11(a)に示した印刷ヘッド
54を用いてカラー印刷を行う場合には、ノズル列7
1,72,73,74に、例えば、シアン(C)、マゼ
ンタ(M)、イエロー(Y)及びブラック(K)という
ように、それぞれ異なる色のインクを割り当て、C、
M、Y、Kを同一位置に付着させて色合成を行う。
【0013】即ち、図11(b)に示すように、印字へ
ッド54が位置(A)にある時点で、ノズル列71から
インクを噴射し、さらに印字へッド54が位置(B)に
来た時点で、ノズル列72からインクを噴射する。同様
に、印字へッド54が位置(C)にある時点で、ノズル
列73からインクを噴射し、さらに印字へッド54が位
置(D)に来た時点で、ノズル列74からインクを噴射
することで、印刷用紙55の印刷位置76に、それぞれ
異なる色のノズル列71,72,73,74のインクが
噴射され、C、M、Y、Kの4色が合成されて、カラー
印刷が可能となる。
【0014】このように、カラーインクジェットプリン
タの印刷へッドは、例えば、それぞれ複数個(図示の例
では5個)のノズルを含む、シアン(C)、マゼンタ
(M)、イエロー(Y)及びブラック(K)4色のイン
クジェットノズル列が、互いに所定の距離dだけ離間し
て配置された構造を有しており、上述したプログラムに
よるデータ転送ではそのノズル列ごとにまとめてデータ
を送る処理が行われる。
【0015】図12に、従来のシリアルのカラープリン
タにおけるイメージバッファへのデータの格納方法を示
す。
【0016】従来のシリアルのカラープリンタでは、イ
メージングプロセス63(図10参照)において、C、
M、Y、Kのイメージは、図12(a)に示すように、
メモリ上それぞれ独立に展開される。
【0017】従って、同図に示すように、イメージバッ
ファ67´は、C、M、Y、K4色の各ノズル列ごとの
メモリ領域に分けて構成されており、図12(b)に示
すように、C、M、Y、Kの各ノズル列毎にデータが格
納され、メモリ上ではノズル列ごとのデータの塊が列数
ある状態である。このため、図12(a)に示すよう
に、上述した横8ビット(1バイト)のデータは、C、
M、Y、Kのノズル列ごとに不連続に格納されている。
【0018】即ち、例えば、図11(b)に示した印刷
用紙55の同一の印刷位置76にドットを打つ又は打た
ないというピクセル値(1ビット)のセット(8ビッ
ト)に該当するデータ(1バイト)を、図12(a)に
示すように、網かけの部分で示したとすると、これら
C、M、Y、K4色の網かけの部分は、不連続となるよ
うに格納される。このため、図12(a)にd´,2d
´,3d´により示される、それぞれ1,2,3バイト
の部分には、イメージバッファ67´上ダミーのメモリ
値を持たせるようにしている。即ち、ダミーのイメージ
部分により、あたかもデータがあるようにし、図12
(a)に矢印で示す方向に動く際は、それぞれの先頭か
ら印刷ヘッド側へ転送することにより、結果的にタイミ
ングがずれることで、上述したカラー合成が可能とな
る。
【0019】尚、図12(a)において、d´は図11
に示したノズル列間の所定の距離dに対応するメモリ量
に相当し、メモリ上の実イメージ(印字)領域は図12
(a)に示す通りである。そして、前述した転送プロセ
ス111において、イメージバッファ67´のC、M、
Y、K各色のメモリ領域の中では、図12(b)に示す
ような順番で、データが取り出され、印刷ヘッド側へ転
送される。即ち、1つのノズル列に対応した各色ごとの
メモリ領域の中における列方向に並ぶ複数バイト(図示
の例では5バイト)が1セットとしてイメージバッファ
67´から読み出され、印刷ヘッド側へ転送される。こ
のように、ある印刷タイミングで縦一列のデータが印刷
ヘッド側へ転送される。
【0020】ここで、図13を参照して、従来のシリア
ルのカラープリンタにおけるイメージバッファ67´へ
のアクセス方法について、更に、具体的に説明する。
【0021】上記説明からも明らかなように、イメージ
ングプロセス63において、C、M、Y、Kそれぞれの
イメージは、独立にイメージ展開され、イメージバッフ
ァ67´のC、M、Y、K各色のメモリ領域67´C、
67´M、67´Y、67´Kにそれぞれのイメージデ
ータが、図13に示すような順番で格納される。そし
て、転送プロセス111において、ある印刷タイミング
で、C、M、Y、K各色のメモリ領域67´C、67´
M、67´Y、67´Kから、それぞれ5バイト分のデ
ータCa、Ma、Ya、Kaが、図13に示すように、
印刷ヘッド側へ転送される。
【0022】次の印刷タイミングで、続いて、5バイト
分のデータCb、Mb、Yb、Kbが印刷ヘッド側へ転
送され、以下同様に、第3の印刷タイミングで、Cc、
Mc、Yc、Kcが、第4の印刷タイミングで、Cd、
Md、Yd、Kdが印刷ヘッド側へ転送される。
【0023】図12(b)及び図13から明らかなよう
に、色毎に取り出す位置が変わるのは、上述したよう
に、印刷へッドのC、M、Y、K各色のインクジェット
ノズル列が、互いに所定の距離dだけ離間して並んでい
るからである(図11参照)。
【0024】図14に、かかる従来のシリアルのカラー
プリンタにおいて、プログラムにより印刷ヘッド側へデ
ータを転送する場合のフローを示す。
【0025】同図(a)〜(d)に示すように、C、
M、Y、K4色の各色ごとに独立してポインタ及びカウ
ンタを必要とし、ポインタの管理もプログラム上それぞ
れ独立して行われる。
【0026】
【発明が解決しようとする課題】最近の印字密度の細密
化によりイメージデータのデータ量が増加し、それとと
もに増大する転送時間をいかに短くするかが重要な課題
となっている。
【0027】図10に関して上述した従来技術では、転
送プロセス111において、ドット形成要素アレイに対
応した列方向に並ぶ複数バイトが一塊としてイメージバ
ッファ67から読み出されるが、それら列方向に並ぶ複
数バイトは、イメージバッファ67内の互いに離れたア
ドレスの記憶場所に格納されている。そのため、転送プ
ロセス111においては、各読み出し回において、それ
ら離れたアドレスがいちいち計算されなければならな
い。
【0028】転送プロセス111において、上述した複
数バイトがイメージバッファ67から印刷ヘッド側ヘ転
送される時期は、ヘッド走行中にドット形成要素アレイ
が各ピクセル位置に到達する時期に依存して決定される
必要がある。実際、この転送動作は、キャリッジ走行制
御系の発する周期的な信号をトリガとする割り込み処理
として実行される。このように、この転送動作は厳格に
制御された時期に実行される必要があるが、そこで上記
のような煩雑なアドレス計算を行うことは、CPUの処
理負担を大きくし、スループットの低下につながる。
【0029】また、カラーのシリアルプリンタに関して
述べた従来のイメージバッファへのデータの格納方法で
は、イメージバッファが、図12及び図13に示したよ
うに、C、M、Y、K4色の各色ごとのメモリ領域に分
けて構成されており、4色のイメージデータはC、M、
Y、Kのノズル列ごとに不連続に格納されているので、
図12(b)及び図13に示したように、転送プロセス
111において印刷ヘッド側へ転送するには、不連続な
アドレスを色数の分だけアクセスしなければならない。
更に、図14に示したように、C、M、Y、Kの各色ご
とに独立してポインタの管理を行う必要があるので、プ
ログラムにより転送する場合には、データ取り出しのポ
インタの管理が大変であった。
【0030】一方、データ転送を高速に行なうためにD
MAを使用する場合があるが、ノズル列は3列から多い
ものでは10列を越えるものもあり、例えば、C、M、
Y、Kの4つのノズル列毎にデータが不連続に格納され
ている場合、ヘッドのデータ転送のためには、少なくと
も4つのDMA転送回路(チャンネル)が必要となる。
【0031】しかしながら、比較的安価なCPUに内臓
されているDMAの転送回路(チャンネル)数は2本程
度であるため、DMA方式はヘッドのデータ転送のため
にはうまく活用されていないのが実情である。
【0032】従って、本発明の第1の目的は、シリアル
プリンタにおける印刷ヘッドのドット形成要素列に同一
の印字タイミングでセットされるイメージデータの連続
性を確保し、データを一塊として転送できるようにする
ことにより、その分アドレス計算やメモリへのアクセス
回数を減らし、データ転送のためのCPUの処理負担を
軽減し、もって、スループットを向上せしめることにあ
る。
【0033】また、本発明の第2の目的は、シリアルプ
リンタにおいて、イメージバッファから印刷ヘッド側ヘ
イメージデータを転送するプロセスにおけるアドレス計
算等を減らすことにより、この時期的制約の強いプロセ
スの処理時間を短縮し、もって、スループットの向上に
寄与することにある。
【0034】
【課題を解決するための手段】上記目的達成のため、本
発明に係るシリアルプリンタでは、印刷ヘッドの所定の
ドット形成要素列に同一の印字タイミングでセットされ
るイメージデータのピクセル値又はピクセル値群をイメ
ージバッファの連続するアドレスに格納するようにして
いる。
【0035】即ち、請求項1に係る発明では、少なくと
も1列のドット形成要素列から成る印刷ヘッドを有し、
イメージデータを生成してイメージバッファヘ格納する
イメージングプロセスと、前記イメージバッファからイ
メージデータを転送して所定のドット形成要素列にセッ
トする転送プロセスを実行し、前記印刷ヘッドを主走査
させつつ所定の印字タイミングに従って印刷を行うシリ
アルプリンタにおいて、前記所定のドット形成要素列に
同一の印字タイミングでセットされるイメージデータの
ピクセル値又はピクセル値群を前記イメージバッファの
連続するアドレスに格納することを特徴としている。
【0036】イメージバッファの連続するアドレスに、
ドット形成要素列に同一の印字タイミングでセットされ
るイメージデータのピクセル値又はピクセル値群を一塊
として格納するので、データをある印字タイミングでド
ット形成要素列に転送されるデータごとの塊とし、デー
タ転送におけるデータの連続性を生じさせることができ
る。
【0037】また、請求項2に係る発明では、イメージ
ングプロセスにおいて、所定のドット形成要素列に同一
の印字タイミングでセットされるイメージデータのピク
セル値又はピクセル値群をイメージバッファの連続する
アドレスに格納することを特徴としている。
【0038】これにより、転送プロセスでは、イメージ
バッファからアドレス順序に従って単純にピクセル値又
はピクセル値群を読み出して印刷ヘッドに転送すること
ができる。つまり、面倒なアドレス計算が転送プロセス
では不要となり、転送プロセスの処理時間が短くなる。
代りに、イメージングプロセスでアドレス計算が必要と
なるが、イメージングプロセスは転送プロセスのような
厳しい時間的制約下にはないため、総合的にはCPUの
処理負担が軽減する。また、イメージングプロセスは、
もともと処理が離散的で、転送プロセスほど連続アドレ
スである効果がない。これに対して、転送時は、メモリ
間転送だけなので、ブロック単位の転送に適していると
言える。
【0039】また、請求項3記載のシリアルプリンタで
は、イメージングプロセスにおいて、イメージデータの
ピクセル値又はピクセル値群がラスタスキャン順序で生
成され、順次に生成されたピクセル値又はピクセル値群
が、イメージバッファの、ドット形成要素の副走査方向
の個数に相当する値だけ離れたアドレスに格納されるこ
とを特徴としている。
【0040】このような格納を行うひとつの方法は、イ
メージングプロセスにおいて、イメージデータのピクセ
ル値又はピクセル値群をラスタスキャン順序で生成し、
そして、順次に生成した同一行のピクセル値又はピクセ
ル値群を、イメージバッファの、印刷ヘッドの列方向に
並ぶドット形成要素の個数に相当する値だけ離れたアド
レスに格納し、続いて生成した次の行のピクセル値又は
ピクセル値群を、前の行のピクセル値又はピクセル値群
のアドレスの次のアドレスに格納する方法である。つま
り、行方向に連続して並ぶピクセル値又はピクセル値群
は、イメージバッファのへッドのドット形成要素の個数
に相当する値だけ離れたアドレスに格納し、行方向に連
続して並ぶピクセル値又はピクセル値群はイメージバッ
ファの連続するアドレスに格納する方法である。
【0041】また、上記目的達成のため、本発明に係る
シリアルプリンタでは、イメージバッファにデータを格
納する時に離れたドット形成要素列に連続的にデータを
転送できるようにドット形成要素列ごとのデータの並び
を変えるようにする。具体的には、現在は各ドット形成
要素列毎にデータは格納され、メモリ上ではドット形成
要素列ごとのデータの塊が列数ある状態であるのを、あ
るドット形成要素列にあるタイミングで転送されるデー
タ群に、同じタイミングで別のドット形成要素列に転送
されるデータ群を続けて格納することにより、データを
ある印字タイミングでドット形成要素列に転送されるデ
ータごとの塊とし、データ転送におけるデータの連続性
を生じさせる。
【0042】即ち、請求項9記載の発明では、主走査方
向に互いに所定の間隔だけ離間した配置された複数のド
ット形成要素列から成る印刷ヘッドを有し、イメージデ
ータを生成してイメージバッファヘ格納するイメージン
グプロセスと、前記イメージバッファからイメージデー
タを転送して前記複数のドット形成要素列にセットする
転送プロセスを実行し、前記印刷ヘッドを主走査させつ
つ所定の印字タイミングに従って印刷を行うシリアルプ
リンタにおいて、前記複数のドット形成要素列のそれぞ
れに同一の印字タイミングでセットされるイメージデー
タのピクセル値又はピクセル値群をイメージバッファの
連続するアドレスに格納することを特徴としている。
【0043】これにより、ある印字タイミングでドット
形成要素列に転送されるデータを一塊として扱うことが
可能になり、データ転送におけるデータの連続性が得ら
れる。
【0044】従って、その分、アドレス計算が減りメモ
リへのアクセス回数も減るので、データ転送をDMA
(ハードウェア転送)で行う場合にも、割込み処理のプ
ログラム(ソフトウェア転送)により行う場合にも、デ
ータ転送のためのCPUの処理負担を軽減し、もって、
スループットを向上せしめることができる。
【0045】更に、請求項11記載の発明では、前記複
数のドット形成要素列に同一の印字タイミングでセット
されるイメージデータのピクセル値又はピクセル値群を
一塊としてアクセスできるよう前記イメージバッファ内
に前記所定の間隔を考慮したダミーデータを格納してい
くことを特徴としている。
【0046】これにより、データ転送のための処理が容
易になるだけでなく、プログラミングも容易になるとい
う効果が得られる。
【0047】
【発明の実施の形態】図1は、本発明の第1の実施形態
にかかる、コンピュータシステムのターミナルプリンタ
として用いられるシリアルプリンタの全体的な構成を示
す。
【0048】プリンタ21は、ホストコンピュータ23
からホストインタフェース25を介してソースデータを
受け取り、これをデータ(受信)バッファ27に一旦格
納する。ソースデータは、プリンタ21が理解する言語
で表現されたコマンドのストリームであるが、このコマ
ンドに、前述したような各種形式のいずれかでイメージ
を表現したデータが組込まれている。
【0049】プリンタ21のCPU29は、イメージン
グプロセス35、転送プロセス37、及びその他の公知
の種々のプロセスを多重に実行する。イメージングプロ
セス35は、データバッファ27から受信順にソースデ
ータを読み込み、これを解釈して最終的に、各ピクセル
にドットを打つか否かを示したバイナリ値の集合である
ラスターグラフィックス形式のイメージデータを生成
し、これをイメージバッファ31に書込む。転送プロセ
ス37は、イメージバッファ31内のイメージデータを
印刷ヘッド33側へ転送する。この転送処理は、印刷へ
ッド33を走行させるキャリッジ走行制御系(図示せ
ず)からの周期的な信号をトリガとした割り込み処理と
して実行される。
【0050】図2は、この実施形態で用いる印刷ヘッド
33の、ドット形成要素の配列を示す図である。
【0051】印刷ヘッド33は、列方向に並んだ5個の
ドット形成要素39を有する。印刷ヘッド33は用紙表
面に沿って行方向(水平方向)に走行し、その間、5個
のドット形成要素39は、各ピクセル位置に到達した時
に一斉に動作する(つまり、ドットを打つ又は打たな
い)。
【0052】尚、実際の印刷ヘッドは、例えば、32個
というように、図示のものより多数のドット形成要素を
有し、また、単純な一列配置だけでなく千鳥配置等、様
々な配置があり得るが、原理的には図示のものと同じで
あるから、当業者は、そうした他の配置形態の印刷ヘッ
ドにも本発明の原理が本実施形態と同様に適用できるこ
とを、容易に理解できる筈である。
【0053】図3は、この実施形態におけるイメージバ
ッファ31へのデータの書込みと読み出しの様子を示
す。
【0054】データバッファ27には、ソースデータ4
1が格納されている。ソースデータ41には各種形式で
イメージ表現したデータが含まれ得るが、後述のイメー
ジバッファ31内の最終的イメージデータの意味が容易
に理解できるよう、図10の場合と同様、ソースデータ
41に含まれるイメージデータがラスターグラフィック
ス形式のものである場合を例示している。このソースデ
ータ41中の番号1、2、3・・・を付したブロック
は、バイトデータ(同一行中で連続する8個のピクセル
値のセット)であり、そのバイト番号はラスタースキャ
ン順序を示している。
【0055】イメージングプロセス35は、データバッ
ファ27からソースデータ41を読み込み、これを解釈
して、ラスターグラフィックス形式の最終イメージデー
タ43を生成し、これをイメージバッファ31に書込
む。このとき、イメージングプロセス35は、最終イメ
ージデータ43のバイトを、ラスタースキャンの順序
(つまり、図示のバイト番号の順序)で生成する。
【0056】しかし、イメージングプロセス35は、こ
のラスタースキャン順に生成したバイトをイメージバッ
ファ31に書込むとき、従来のようにアドレス順序でイ
メージバッファ31をアクセスするのではなく、同一行
の前のバイトを書込んだアドレスに、印刷ヘッド33の
列方向に並んだドット形成要素39の個数(以下、印刷
へッド33の「高さ」という)を加算したアドレスをア
クセスする。
【0057】例えば、図示のように、1番バイトを最初
のアドレスに書込むと、次に、その最初のアドレスにへ
ッド高さである5を加算したアドレスに2番バイトを書
込み、次に、更に5を加算したアドレスに3番バイトを
書込む。このように、同一行に連続して並ぶ複数のバイ
トを、イメージバッファ31のヘッド高さ分だけ離れた
アドレスに格納していく。そして、1行分のバイトの格
納が終わると、次の行のバイトを、前の行のバイトの次
のアドレスに格納する。
【0058】例えば、1行目の1番から10番までのバ
イトの格納が終わると、次に、2行目の11番から20
番までバイトを1番から10番までバイトの次のアドレ
スにそれぞれ格納し、次に、3行目のバイトを2行目の
バイトの次のアドレスにそれぞれ格納する。こうして5
行目までのバイトの格納が終わると、イメージバッファ
31は図示の様な状態になり、連続するアドレスが完全
に埋まる。この後、イメージバッファ31の図示しない
次の空き領域に、6行目以降のバイトを上述と同様な方
法で格納していく。
【0059】図4は、この格納処理の流れを示すもの
で、イメージングプロセス35は、ソースデータからラ
スタスキャン順序で各バイトを生成する処理(ステップ
S1、S2)に加え、生成した各バイトを格納すべきア
ドレスを上記のようにして計算する処理も行う(ステッ
プS3)。そして、各バイトをその計算したアドレスに
書込む(ステップS4)。ページのイメージ内の各バン
ド毎に、以上の処理を同一バンド内の全バイトについて
繰り返す(ステップS5)。
【0060】このようなイメージデータ格納処理の結
果、イメージバッファ31の連続するアドレスには、図
3に示すように、イメージ上で列方向に並ぶ、ヘッド高
さに相当する5個のバイトが格納されることになる。例
えば、1番、11番、21番、31番、41番の5バイ
トセットが、最初の連続するアドレスに格納されてお
り、その次の連続するアドレスには、その5バイトセッ
トに行方向で隣接する次の5バイトセット(2番、12
番、22番、32番、42番)が格納され、更に次の連
続アドレスには、更に次の5バイトセット(3番、13
番、23番、33番、43番)が格納されている。要す
るに、図2に示した印刷へッド33がドットを形成する
順序で並んだバイトが、イメージバッファ31の連続す
るアドレスに格納されている。
【0061】転送プロセス37は、イメージバッファ3
1からイメージデータ43を読み出して印刷ヘッド33
側に転送する。このとき、転送プロセス37は、イメー
ジバッファ31をアドレス順序に従って単純にアドレス
していく。つまり、アドレスを単純に1つずつインクリ
メントしながら、連続する各アドレスから順番にバイト
を読出す。
【0062】従って、従来のように面倒なアドレス計算
は行わない。しかし、イメージバッファ31内のバイト
の並びが既にドット形成要素の並びに合っているため、
連続アドレスから読み出した5個のバイトのセット(例
えば、1番、11番、21番、31番、41番バイト)
を、単純に一斉に印刷ヘッド33側に送ることができ
る。
【0063】以上のように、転送プロセス37が行う転
送処理ては、面倒なアドレス計算が不要である。そのた
め、この転送処理の処理時間は従来より短くなる。
【0064】図5は、この転送処理とそれ以外のイメー
ジング処理を含む処理との実行タイミングを示したタイ
ムチャートである。図5で点線で示す従来技術での転送
処理時間に比較し、本実施形態での転送処理時間は実線
で示すように、アドレス計算の無い分だけ短い。従っ
て、その短い分だけ、CPU29は、転送処理以外の他
の処理に割り当てられる時間が長くなる。ただし、イメ
ージング処理では、従来技術では不要であったアドレス
計算が増えるため、その分だけ処理時間が長くなる。
【0065】しかし、このことは、従来の転送処理でア
ドレス計算を行うことと比較すると、CPU29の処理
負担としては小さい。何故なら、転送処理はキャリッジ
走行制御系からの周期的な割り込み信号に同期して厳格
な時期に実行されなければならないのに対し、イメージ
ング処理には、そのような厳しい時間的制約がないの
で、ある程度自由なスケジューリングが許されるからで
ある。
【0066】そのようなスケジューリングは、図示して
いないが、CPU内の1プロセスであるプロセススケジ
ューラが行っている。その結果、本実施形態によれば、
従来技術よりもCPUの負担が減り、スループットが向
上する。
【0067】尚、イメージングプロセスの実行スケジュ
ールを、転送プロセスの実行時期以外の時期の中で調節
するように、スケジューリングを行うことが望ましい。
【0068】次に、本発明の第2の実施形態に係るシリ
アルプリンタとそのイメージバッファへのアクセス方法
について説明する。
【0069】この第2の実施形態に係るシリアルプリン
タは、前述した従来例のカラーインクジェットプリンタ
と同様、印刷ヘッドが、互いに離間して配置され、所定
の印刷タイミングに従って同一位置にそれぞれシアン、
マゼンタ、イエロー及びブラックの4色それぞれのイン
ク滴によるドットを形成するための複数のインクジェッ
トノズル列を含んだ構造のカラーインクジェットプリン
タである。この第2の実施形態に係るプリンタも、コン
ピュータシステムのターミナルプリンタとして用いら
れ、全体的な構成は、図1に示した第1の実施形態に係
るシリアルプリンタと同様であるので、その説明は省略
する。
【0070】図6に、本実施形態のシリアルプリンタに
おけるイメージバッファへのデータの格納方法を示す。
【0071】同図(a),(b)に示すように、このシ
リアルのカラープリンタでは、前述したイメージングプ
ロセス35において、C、M、Y、K4色のノズル列の
データはイメージバッファ31´内の同一のメモリ領域
に格納されている。そして、このイメージバッファ31
´内で、ある印刷タイミングでC、M、Y、K4色それ
ぞれのノズル列に転送されるデータ群が、同図(a)に
網かけの部分で示すように、連続したアドレスとなるよ
うに展開されている。即ち、あるタイミングでC用のノ
ズル列に転送されるデータ群に、同じタイミングでM、
Y、K用の各ノズル列に転送されるデータ群が続けて格
納されている。
【0072】そして、前述した転送プロセス37におい
ては、ある印刷タイミングで、図6(b)に示すよう
に、1〜20の連続したアドレスとなるC、M、Y、K
4色のノズル列の複数バイト(図示の例ではC、M、
Y、K各5バイト、即ち20バイト)のデータを一塊と
してイメージバッファ31´から読出し、同時に印刷ヘ
ッド33側へ転送する。
【0073】このように、第2の実施形態では、複数の
ノズル列を有するシリアルプリンタにおいて、データを
ある印字タイミングで各ノズル列に転送されるデータご
との塊とし、データ転送におけるデータの連続性を生じ
させることを大きな特徴としている。
【0074】尚、図6(a)におけるd,2d,3d
は、図12(a)に関して述べたと同様の意味を持つメ
モリ部分であり、図6(b)に示すように、かかるダミ
ーのメモリ部分には、実データが格納されておらず(す
べて[0]のバイナリデータが格納されている)、ヌル
バッファとして定義されている。このヌルバッファ方式
を採用しないでも上述したデータの連続性を生じさせる
ことは可能であるが、ヌルバッファ方式を採用すること
により、以下の利点が得られる。
【0075】即ち、本実施形態は、複数のノズル列を有
するシリアルプリンタにおいて、イメージバッファに格
納されるデータをある印字タイミングで各ノズル列に転
送されるデータごとの塊とし、データ転送におけるデー
タの連続性を生じさせるものであるが、図6(a)に示
すように、イメージバッファの端部にダミーデータを格
納しておくことにより、イメージバッファのどこの領域
からも(ダミーデータも区別なく)ある印字タイミング
で各ノズル列に転送されるデータを一塊として転送し得
る。
【0076】更に、ヌルバッファ方式を採用することに
より、プログラミングの観点からいうと、余計な分岐が
不要になる等、プログラムの処理がより簡単になるとい
う利点もある。
【0077】尚、本実施形態において、印刷方向が変わ
る場合でも、データ(ダミーデータも含む)を、イメー
ジバッファに格納していく時には、図6(b)に示すよ
うに、CMYKそれぞれの実データ及びダミーデータ
を、この順番にイメージバッファの連続するアドレスに
格納していけば良い。しかし、双方向印刷において、同
じ順序でデータ(ダミーデータも含む)を格納したイメ
ージバッファを使うためには、印刷方向によって、イメ
ージバッファからのデータ(ダミーデータも含む)の取
出し方を正反対にする必要がある。
【0078】この場合、DMA転送でも、割込み処理に
よる転送でも、イメージバッファへのアクセスを正反対
にすることで足りるが、転送される印刷ヘッド側、即
ち、印字用ASIC内のヘッドデータレジスタは、どち
らの方向で送られても、データ(ダミーデータも含む)
を対応するノズル列に送り出せるような構成にしておく
必要がある。
【0079】例えば、印字用ASIC内のヘッドデータ
レジスタにおいて、ノズル列ごとに転送すべきアドレス
が異なる場合には、転送順序に依存しないが、CMYK
のノズル列で転送先アドレスを共通にする場合には、イ
メージバッファからのデータ(ダミーデータも含む)の
取出し方が反対になれば、ヘッドデータレジスタへの格
納も反対から行う。後者の場合には、例えば、印字用A
SIC内に切替えスイッチを設けて、ヘッドデータレジ
スタへの格納方向を転送前に切り替えるようにすれば良
い。
【0080】以下、図7を参照しつつ、本実施形態にお
けるイメージバッファへのデータの格納方法を具体的に
説明すると共に、イメージバッファから印刷ヘッド側へ
のデータの転送方法について説明する。
【0081】このような格納を行うひとつの方法は、ま
ず、Cのイメージデータのピクセル値又はピクセル値群
を、印刷ヘッドのCのノズル列における列方向に並ぶイ
ンクジェットノズルの個数に相当する個数だけイメージ
バッファ31´の連続するアドレスに格納し、続いて生
成されるCの次のイメージデータのピクセル値又はピク
セル値群は、Cのインクジェットノズルの個数に相当す
る個数を、イメージバッファ31´のインクジェットノ
ズルの個数×(ノズル列の個数−1)に相当する値だけ
離れたアドレスに格納する。
【0082】即ち、まず、Cのイメージデータの最初の
ピクセル値群であるバイトデータ1〜5を、Cのインク
ジェットノズルの個数である5個だけイメージバッファ
31´の連続するアドレス1〜5に格納し、続いて生成
されるCの次のイメージデータのピクセル値群であるバ
イトデータ6〜10を、Cのインクジェットノズルの個
数に相当する5個だけ、イメージバッファ31´の5
(インクジェットノズルの個数)×[4(CMYKのノ
ズル列の総数)−1]に相当する値15だけ離れたアド
レス、即ち、21〜25に格納する。同様の格納を、C
a、Cb、Cc、Cd(図示せず)の各5バイトのデー
タについて繰り返す。
【0083】一方、Cの次のインクジェットノズル列で
あるMのイメージデータのピクセル値又はピクセル値群
であるバイトデータ101〜105は、Mのインクジェ
ットノズルの個数である5個だけイメージバッファ31
´のCaが格納されたアドレス1〜5に続くアドレス6
〜10に格納し、続いて生成されるMの次のイメージデ
ータのピクセル値群であるバイトデータ106〜110
を、Mのインクジェットノズルの個数に相当する5個だ
け、イメージバッファ31´の5(インクジェットノズ
ルの個数)×[4(CMYKのノズル列の総数)−1]
に相当する値15だけ離れたアドレス、即ち、26〜3
0に格納する。同様の格納を、Ma、Mb、Mc、Md
(図示せず)の各5バイトのデータについて繰り返す。
【0084】更に、C、Mと同様に、Y、Kのイメージ
データのピクセル値又はピクセル値群も、上記同様の格
納を、Ya、Yb、Yc、Yd(図示せず)、Ka、K
b、Kc、Kd(図示せず)の各5バイトのデータにつ
いて繰り返すことにより格納していく。
【0085】イメージバッファ31´から印刷ヘッド3
3側へデータを転送する転送プロセス37においては、
まず、第1の印刷タイミングに従って、Ca、Ma、Y
a及びKaの各5バイト、全20バイトのデータを同時
に印刷ヘッド33側へ転送する。次に、第2の印刷タイ
ミングに従って、Cb、Mb、Yb及びKbの各5バイ
ト、全20バイトのデータを同時に印刷ヘッド33側へ
転送する。同様の転送動作が、第3、第4・・・・の印
刷タイミングごとに繰り返され、その都度、C、M、Y
及びKの各5バイト、全20バイトのデータが同時に転
送される。
【0086】尚、図7から明らかなように、この第2の
実施形態では、図12(b)との対照において本発明を
理解し易くするため、上述した第1の実施形態と異な
り、イメージングプロセスにおいてイメージデータのピ
クセル値又はピクセル値群がラスタスキャン順序で生成
されることは前提としていない。仮に、CMYKそれぞ
れのイメージデータがラスタスキャン順序で生成される
場合には、図7のイメージバッファ31´内のバイトデ
ータを表す数値は、例えば、最初のCaのピクセル値群
であるバイトデータ1〜5が、第1の実施形態に関して
図3を参照して説明したのと同様に、1,11,21,
31,41という数値に置き換えられる。
【0087】図8に、上記第2の実施形態を適用して、
転送プロセス37において、イメージデータを印刷ヘッ
ド33側へ、プログラムにより転送する場合とDMA転
送する場合の例を示す。
【0088】図示のシリアルプリンタは、プリンタコン
トローラ1とプリントエンジン2とから構成されてい
る。プリンタコントローラ1は、ホストコンピュータ3
からの印刷データ等を受信するインターフェース(以下
「I/F」という)4と、各種データの記憶等を行うR
AM5と、各種データ処理のためのルーチン等を記憶し
たROM6と、CPU7と、発振回路8と、後述するプ
リント(印刷)ヘッド11側へヘッドデータ等を送り出
すための印字用ASIC制御回路9と、ドットパターン
データ(ビットマップデータ)に展開された印字データ
及び駆動信号等をプリントエンジン2に送信するための
I/F10とを備えている。I/F4、RAM5、RO
M6、CPU7、印字用ASIC制御回路9、I/F1
0等は、バス11により相互に接続されている。
【0089】I/F4は、例えば、イメージデータから
成る印刷データをホストコンピュータ3から受信する。
RAM5は、受信(データ)バッファ5A,出力(イメ
ージ)バッファ5C及びワークメモリ(図示せず)等と
して利用されるものである。データバッファ5Aには、
I/F4が受信したホストコンピュータ3からのイメー
ジデータから成る印刷データが一時的に記憶される。イ
メージバッファ5Cには、階調データをデコードした後
のドットパターンデータが展開される。ROM6は、C
PU7等によって実行される各種制御プログラム等を記
憶している。
【0090】このプログラムには、図8に示すように、
主プログラム6aと、割り込み処理プログラム6bがあ
る。また、ROM6は、図示しないフォントデータ及び
グラフィック関数、各種手続き等も記憶している。印字
用ASIC制御回路9は、ヘッドドライバの制御部等を
構成するものであり、印刷データを印刷ヘッド12側に
送り出すためのレジスタ(ヘッドデータレジスタ)9a
を有している。
【0091】まず、CPU7は、ROM6内の主プログ
ラム6aに従って、第1及び第2の実施形態に関して上
述したイメージングプロセス35の処理を行う。即ち、
CPU7は、データバッファ5A内の印刷データを読み
出してRAM5のワークメモリに記憶する。
【0092】次に、CPU7は、ワークメモリから読み
出したデータを解析し、ROM6内のフォントデータ及
びグラフィック関数等を参照してドットパターンデータ
に展開する。この展開されたドットパターンデータは、
必要な装飾処理が行われた後、イメージバッファ5Cに
記憶される。また、CPU7は、イメージングプロセス
35の処理と多重に、上述した転送プロセス37の処理
を実行する。即ち、所定の印刷タイミング(印字トリ
ガ)に従って、割り込みが生じ、CPU7は、主プログ
ラム6aの実行を一時中止して割り込み処理プログラム
6bを実行する。
【0093】上記印刷タイミング(印字トリガ)に従っ
て、割り込み処理プログラム6b(ソフトウェア)によ
り、イメージバッファ5C内のデータは、上述したよう
に、連続したアドレスとなるC、M、Y、K4色のノズ
ル列の複数バイトのデータが一塊としてイメージバッフ
ァ5Cから読み出され、同時に、ヘッドデータレジスタ
9aに転送される。このヘッドデータレジスタ9aに一
時記憶されたデータは、I/F10を介して印刷ヘッド
12にシリアル伝送される。
【0094】プリントエンジン2は、印刷ヘッド12
と、キャリッジ機構13と、紙送り機構14とを備えて
いる。紙送り機構14は、紙送りモータ及び紙送りロー
ラ等からなり、記録紙等の印刷記憶媒体を順次送りだし
て副走査を行うものである。キャリッジ機構13は、印
刷ヘッド12を搭載するキャリッジと、該キャリッジを
タイミングベルト等を介して走行させるキャリッジモー
タ等からなり、印刷ヘッド12を主走査させるものであ
る。印刷ヘッド12は、副走査方向に、例えば32個等
の多数のノズルから成るC,M,Y,K用の4つのイン
クジェットノズル列12aを有し、所定のタイミングで
各ノズルからインク滴を吐出させる。
【0095】上述したように、ヘッドデータレジスタ9
aに一時記憶されたデータは、発振回路8からのクロッ
ク信号(CK)に同期して、I/F10を介して印刷ヘ
ッド12のシフトレジスタ12bにシリアル伝送され
る。このシリアル伝送された印刷データは、一旦ラッチ
回路12cによりラッチされ、図示しないレベルシフタ
等により昇圧されてスイッチ回路に与えられ、その作動
を制御する。
【0096】例えば、スイッチ回路に加わる印刷データ
が「1」であれば、スイッチ回路に接続された圧電振動
子に駆動信号が印加され、この駆動信号に応じて圧電振
動子が伸縮することにより、インクジェットノズル列1
2aの当該ノズルからインク滴が吐出される。反対に、
スイッチ回路に加わる印刷データが「0」であれば、圧
電振動子への駆動信号の供給が遮断され、インクジェッ
トノズル列12aの当該ノズルからはインク滴は吐出さ
れない。
【0097】図9に、図8に示したシリアルプリンタに
おいて、プログラム(ソフトウェア)により印刷ヘッド
側へデータを転送する場合のフローを示す。
【0098】即ち、プログラムにより転送する場合、
C、M、Y、K4色分のポインタをセットし(S9
1)、転送タイミング(印字トリガ)が発生した場合に
(S92)、C、M、Y、K4色分のカウンタがセット
される(S93)ようにする。続いて、上述したC、
M、Y、K4色のノズル列の複数バイトから成るデータ
が印刷ヘッド33側へ転送され、この転送中に、ポイン
タは更新され、カウンタの数値がカウントダウンされて
いく(S94)。そして、カウンタの数値が0になった
(S95)場合には、S92に戻って次の転送タイミン
グを待つ。
【0099】このように、図14に示した従来例では
C、M、Y、K4色のそれぞれにつき、独立してポイン
タの管理を必要としたのに対し、本実施形態のシリアル
プリンタでは、あるタイミングである色の、或いはある
ノズル列の転送が終了した時、ソースポインタは次に転
送すべき色の、或いはノズル列のデータ(アドレス)を
指しているので、従来色ごと、或いはノズル列ごとであ
ったポインタの管理が非常に簡単になる。即ち、必要と
するポインタの数が減り、その分ポインタのためのメモ
リアクセスが減るので、転送プロセス37における転送
時間を短縮することができる。
【0100】次に、転送プロセス37において、イメー
ジデータが印刷ヘッド12側へDMA転送される場合に
ついて、同様に、図8を用いて説明する。
【0101】図8に示したシリアルプリンタにおいて、
CPU7には、DMAコントローラ7aが内蔵されてい
る。このDMAコントローラ7aは、転送回路(チャン
ネル)を2本有するものとする。
【0102】データ転送は、まずDMA転送の起動から
始まる。上述した印刷タイミングの信号(印字トリガ)
がCPU7に入力されると、CPU7は、バス11の使
用権をDMAコントローラ7aに明け渡す。DMAコン
トローラ7aはイメージデータが格納されているイメー
ジバッファ5Cのアドレスから、上述したように、連続
したアドレスとなるC、M、Y、K4色のノズル列の複
数バイトのデータを一塊として、バス11を通してヘッ
ドデータレジスタ9aに入力してDMA転送が行なわれ
る。DMA転送は極めて短時間で行なわれ、この後CP
U7は直ちに他の処理に取りかかることができる。
【0103】DMA転送が終わった時、DMAコントロ
ーラ7aはトリガ信号を発振回路8に送る。発振回路8
は発振子により印刷ヘッド12のシフトレジスタ12b
の最高スピードに合わせた周波数のクロックを生成して
おり、DMA転送終了後、トリガ信号により起動をかけ
られ、各インクジェットノズル列12aのノズル数に相
当するビット数の分のクロックを出力する。このクロッ
クに同期してヘッドデータは、ヘッドデータレジスタ9
aからシリアルデータとなって印刷ヘッド12のシフト
レジスタ12bにシリアル転送される。以上の動作を横
8ビット(1バイト)のデータについて行なう。
【0104】このように、本発明の第2の実施形態によ
れば、ある印刷タイミングでCMYKのノズル列に転送
されるデータが、予めイメージバッファ5Cの連続した
アドレスに格納されているので、上述したDMA転送を
同一の転送回路(チャンネル)を介して実行することが
可能であり、最低1チャンネル(1本)の転送回路があ
れば、DMA転送を採用できる。
【0105】従って、上記DMAコントローラ7aのよ
うに、転送回路(チャンネル)の本数の少ない、CPU
内蔵のDMAコントローラを用いて、ヘッドのデータ転
送にDMAを使用することができ、今までプログラムで
行なって時間のかかっていた部分を高速に処理すること
ができるようになる。
【0106】以上、本発明を特定の実施形態について述
べたが、本発明はこれらに限られるものではなく、特許
請求の範囲に記載された発明の範囲内で、他の実施形態
についても適用される。
【0107】例えば、上記第2の実施形態は、CMYK
4色のノズル列を有するカラープリンタについて述べた
が、本発明の請求項9記載の発明は、カラープリンタに
限られるものではなく、離間して配置された複数のノズ
ル列を有するモノクロのプリンタにも適用し得る。
【0108】また、上記第1の実施形態はラスタグラフ
ィックス形式のイメージデータについて述べた、即ち、
イメージングプロセスにおいて、イメージデータのピク
セル値又はピクセル値群がラスタスキャン順序で生成さ
れ、このピクセル値又はピクセル値群を、ラスタスキャ
ン順序から印刷ヘッドが印刷する順序に並べ変える例に
ついて述べたが、本発明はこれに限られるものではな
く、特に、第2の実施形態に係る発明は、いわゆるビッ
トイメージコマンドでホストからデータが送られてくる
場合にも適用される。
【0109】尚、本発明がインクジェットプリンタのみ
ではなく、ドットインパクトプリンタ等、ドット形成要
素列を有する他のシリアルプリンタにも適用されるの
は、勿論である。
【0110】更に、上述した第2の実施形態に関連して
図8では、CPU内蔵のDMAコントローラを用いて、
ヘッドデータをDMA転送したが、DMAコントローラ
をCPUとは別体として有するプリンタに適用しても良
い。
【0111】
【発明の効果】以上説明したように、本発明によれば、
印刷ヘッドの所定のドット形成要素列に同一の印字タイ
ミングでセットされるイメージデータのピクセル値又は
ピクセル値群をイメージバッファの連続するアドレスに
格納したので、イメージデータの連続性を確保し、デー
タを一塊として転送できるようにすることにより、その
分アドレス計算やメモリへのアクセス回数を減らし、デ
ータ転送のためのCPUの処理負担を軽減し、もって、
スループットを向上させることが可能である。
【0112】また、以上のような連続するアドレスへの
格納をイメージングプロセスにおいて行うので、転送プ
ロセスにおけるアドレス計算等を減らすことにより、こ
の時期的制約の強いプロセスの処理時間を短縮し、もっ
て、スループットの向上に寄与し得る。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態に係るシリアルプリ
ンタの構成を示す機能ブロック図である。
【図2】本発明の第1の実施の形態のシリアルプリンタ
における印刷ヘッドの概略構造を示す図である。
【図3】本発明の第1の実施の形態におけるイメージバ
ッファへのデータの格納方法を説明するための図であ
る。
【図4】本発明の第1の実施の形態におけるイメージバ
ッファへのデータの格納方法を説明するためのフローチ
ャートである。
【図5】転送処理とその他のメイン処理を含む処理との
実行タイミングを示したタイミングチャートである。
【図6】本発明の第2の実施の形態におけるイメージバ
ッファへのデータの格納方法を説明するための図であ
り、(a)はその概念図、(b)はその連続したアドレ
スにCMYKのデータが格納されている状態を示す図で
ある。
【図7】本発明の第2の実施の形態におけるイメージバ
ッファへのデータの格納方法を具体的に説明すると共
に、イメージバッファから印刷ヘッド側へのデータの転
送方法をも説明するための図である。
【図8】本発明の第2の実施形態を適用して、転送プロ
セスにおいて、イメージデータを印刷ヘッド側へ、プロ
グラムにより転送する場合とDMA転送する場合の例を
示す図である。
【図9】本発明の第2の実施形態を適用して、転送プロ
セスにおいて、イメージデータを印刷ヘッド側へ、プロ
グラムにより転送する場合のフローチャートである。
【図10】従来のシリアルプリンタにおけるイメージバ
ッファへのデータの格納方法を説明するための図であ
る。
【図11】従来のカラーのシリアルプリンタにおける色
合成を説明するための図であり、(a)はその印刷ヘッ
ドの概略構造を示す図、(b)は所定の間隔dと色合成
の関係を示す図である。
【図12】従来のシリアルプリンタにおけるイメージバ
ッファへのデータの格納方法を説明するための図であ
り、(a)はその概念図、(b)はそのイメージバッフ
ァにCMYKのデータがそれぞれ独立して格納されてい
る状態を示す図である。
【図13】従来のシリアルプリンタにおけるイメージバ
ッファから印刷ヘッド側へのデータの転送方法を説明す
るための図である。
【図14】従来のシリアルプリンタにおいて、イメージ
データを印刷ヘッド側へ、プログラムにより転送する場
合のフローチャートであり、(a)はCのデータを転送
する場合のフローチャート、(b)はMのデータを転送
する場合のフローチャート、(c)はYのデータを転送
する場合のフローチャート、(d)はKのデータを転送
する場合のフローチャートである。
【符号の説明】
1 プリンタコントローラ 2 プリントエンジン 3 ホストコンピュータ 4 I/F 5 RAM 5A データ(受信)バッファ 5C イメージ(出力)バッファ 6 ROM 6a 主プログラム 6b 割り込み処理プログラム 7 CPU 7a DMAコントローラ 8 発振回路 9 印字用ASIC制御回路 9a ヘッドデータレジスタ 10 I/F 11 バス 21 シリアルプリンタ 23 ホストコンピュータ 25 ホストI/F 27 データバッファ 29 CPU 31 イメージバッファ 31´ イメージバッファ 33 印刷ヘッド 35 イメージングプロセス 37 転送プロセス 39 ドット形成要素 41 ソースデータ 43 最終イメージデータ

Claims (17)

    【特許請求の範囲】
  1. 【請求項1】 少なくとも1列のドット形成要素列から
    成る印刷ヘッドを有し、イメージデータを生成してイメ
    ージバッファヘ格納するイメージングプロセスと、前記
    イメージバッファからイメージデータを転送して所定の
    ドット形成要素列にセットする転送プロセスを実行し、
    前記印刷ヘッドを主走査させつつ所定の印字タイミング
    に従って印刷を行うシリアルプリンタにおいて、 前記所定のドット形成要素列に同一の印字タイミングで
    セットされるイメージデータのピクセル値又はピクセル
    値群を前記イメージバッファの連続するアドレスに格納
    することを特徴とするシリアルプリンタ。
  2. 【請求項2】 請求項1記載のシリアルプリンタにおい
    て、前記イメージングプロセスにおいて、前記所定のド
    ット形成要素列に同一の印字タイミングでセットされる
    イメージデータのピクセル値又はピクセル値群をイメー
    ジバッファの連続するアドレスに格納することを特徴と
    するシリアルプリンタ。
  3. 【請求項3】 請求項1及び2記載のシリアルプリンタ
    において、前記イメージングプロセスにおいて、イメー
    ジデータのピクセル値又はピクセル値群がラスタスキャ
    ン順序で生成され、順次に生成されたイメージデータの
    ピクセル値又はピクセル値群が、前記イメージバッファ
    の、前記ドット形成要素の副走査方向の個数に相当する
    値だけ離れたアドレスに格納されることを特徴とするシ
    リアルプリンタ。
  4. 【請求項4】 請求項1乃至3記載のシリアルプリンタ
    において、前記イメージングプロセスにおいて、行方向
    に連続して並ぶピクセル値又はピクセル値群が、前記イ
    メージバッファの、前記ドット形成要素の副走査方向の
    個数に相当する値だけ離れたアドレスに格納され、列方
    向に連続して並ぶピクセル値又はピクセル値群が、前記
    イメージバッファの連続するアドレスに格納されること
    を特徴とするシリアルプリンタ。
  5. 【請求項5】 請求項1乃至4記載のシリアルプリンタ
    において、前記イメージングプロセスにおいて、順次に
    生成した同一行のピクセル値又はピクセル値群が、前記
    ドット形成要素の副走査方向の個数に相当する値だけ離
    れたアドレスに格納され、続いて生成された次の行のピ
    クセル値又はピクセル値群が、前の行のピクセル値又は
    ピクセル値群のアドレスの次のアドレスに格納されるこ
    とを特徴とするシリアルプリンタ。
  6. 【請求項6】 請求項1乃至5記載のシリアルプリンタ
    において、前記転送プロセスにおいて、前記イメージバ
    ッファの連続するアドレスからアドレス順にイメージデ
    ータが読み出されることを特徴とするシリアルプリン
    タ。
  7. 【請求項7】 請求項1乃至6記載のシリアルプリンタ
    において、更に、前記イメージングプロセスが実行され
    るスケジュールを、前記転送プロセスが実行される時期
    以外の時期の中で調節するスケジューリング手段を備え
    たことを特徴とするシリアルプリンタ。
  8. 【請求項8】 少なくとも1列のドット形成要素列から
    成る印刷ヘッドを有し、イメージデータを生成してイメ
    ージバッファヘ格納するイメージング過程と、前記イメ
    ージバッファからイメージデータを転送して所定のドッ
    ト形成要素列にセットする転送過程とを実行し、前記印
    刷ヘッドを主走査させつつ所定の印字タイミングに従っ
    て印刷を行うシリアルプリンタにおけるイメージバッフ
    ァアクセス方法において、 前記所定のドット形成要素列に同一の印字タイミングで
    セットされるイメージデータのピクセル値又はピクセル
    値群を、前記イメージングプロセスにおいて、それらイ
    メージデータのピクセル値又はピクセル値群のアドレス
    が連続するように前記イメージバッファに格納すること
    を特徴とするシリアルプリンタにおけるイメージバッフ
    ァアクセス方法。
  9. 【請求項9】 主走査方向に互いに所定の間隔だけ離間
    した配置された複数のドット形成要素列から成る印刷ヘ
    ッドを有し、イメージデータを生成してイメージバッフ
    ァヘ格納するイメージングプロセスと、前記イメージバ
    ッファからイメージデータを転送して前記複数のドット
    形成要素列にセットする転送プロセスを実行し、前記印
    刷ヘッドを主走査させつつ所定の印字タイミングに従っ
    て印刷を行うシリアルプリンタにおいて、 前記複数のドット形成要素列のそれぞれに同一の印字タ
    イミングでセットされるイメージデータのピクセル値又
    はピクセル値群をイメージバッファの連続するアドレス
    に格納することを特徴とするシリアルプリンタ。
  10. 【請求項10】 請求項9記載のシリアルプリンタにお
    いて、前記イメージングプロセスにおいて、前記複数の
    ドット形成要素列のそれぞれに同一の印字タイミングで
    セットされるイメージデータのピクセル値又はピクセル
    値群をイメージバッファの連続するアドレスに格納する
    ことを特徴とするシリアルプリンタ。
  11. 【請求項11】 請求項9及び10記載のシリアルプリ
    ンタにおいて、 前記複数のドット形成要素列に同一の印字タイミングで
    セットされるイメージデータのピクセル値又はピクセル
    値群を一塊としてアクセスできるよう前記イメージバッ
    ファ内に前記所定の間隔を考慮したダミーデータを格納
    していくことを特徴とするシリアルプリンタ。
  12. 【請求項12】 請求項11記載のシリアルプリンタに
    おいて、 前記ダミーデータとは、非印字データであることを特徴
    とするシリアルプリンタ。
  13. 【請求項13】 請求項9乃至12記載のシリアルプリ
    ンタにおいて、 前記複数のドット形成要素列は列単位の群により構成さ
    れ、該列単位の群はそれぞれ異なる色を記録するための
    ものであることを特徴とするシリアルプリンタ。
  14. 【請求項14】 請求項9乃至12記載のシリアルプリ
    ンタにおいて、 前記複数のドット形成要素列は列単位の群により構成さ
    れ、該列単位の群は同一色を記録するためのものである
    ことを特徴とするシリアルプリンタ。
  15. 【請求項15】 請求項9乃至14記載のシリアルプリ
    ンタにおいて、 前記イメージデータのピクセル値又はピクセル値群が前
    記印刷ヘッドへ割込み処理のソフトウェアにより転送さ
    れることを特徴とするシリアルプリンタ。
  16. 【請求項16】 請求項9乃至15記載のシリアルプリ
    ンタにおいて、 前記イメージデータのピクセル値又はピクセル値群が前
    記印刷ヘッドへDMA転送されることを特徴とするシリ
    アルプリンタ。
  17. 【請求項17】 請求項16記載のシリアルプリンタに
    おいて、 前記DMA転送は、同一の転送回路(チャンネル)を介
    して実行されることを特徴とするシリアルプリンタ。
JP21663097A 1997-03-13 1997-08-11 シリアルプリンタ及びシリアルプリンタにおけるイメージバッファアクセス方法 Expired - Fee Related JP3533895B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP21663097A JP3533895B2 (ja) 1997-03-13 1997-08-11 シリアルプリンタ及びシリアルプリンタにおけるイメージバッファアクセス方法
DE69836110T DE69836110T2 (de) 1997-03-13 1998-03-11 Serieller Drucker und Bildpufferzugriffsverfahren für seriellen Drucker
EP98301778A EP0871139B1 (en) 1997-03-13 1998-03-11 Serial printer, and image buffer access method for serial printer
US09/041,749 US6009245A (en) 1997-03-13 1998-03-13 Serial printer, and image buffer access method for serial printer

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP5872997 1997-03-13
JP9-58729 1997-03-13
JP21663097A JP3533895B2 (ja) 1997-03-13 1997-08-11 シリアルプリンタ及びシリアルプリンタにおけるイメージバッファアクセス方法

Publications (2)

Publication Number Publication Date
JPH10312254A true JPH10312254A (ja) 1998-11-24
JP3533895B2 JP3533895B2 (ja) 2004-05-31

Family

ID=26399752

Family Applications (1)

Application Number Title Priority Date Filing Date
JP21663097A Expired - Fee Related JP3533895B2 (ja) 1997-03-13 1997-08-11 シリアルプリンタ及びシリアルプリンタにおけるイメージバッファアクセス方法

Country Status (4)

Country Link
US (1) US6009245A (ja)
EP (1) EP0871139B1 (ja)
JP (1) JP3533895B2 (ja)
DE (1) DE69836110T2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006264319A (ja) * 2005-02-22 2006-10-05 Fuji Photo Film Co Ltd 画像データ格納方法および制御装置並びにプログラム、フレームデータ作成方法および装置並びにプログラム、データ取得方法および装置、描画方法および装置
US7336380B2 (en) 2001-02-13 2008-02-26 Heidelberger Druckmaschinen Ag Raster generation system and method of processing raster data
CN107521226A (zh) * 2016-06-21 2017-12-29 北大方正集团有限公司 一种数据处理方法、装置及喷墨印刷机
CN109471602A (zh) * 2018-12-07 2019-03-15 森大(深圳)技术有限公司 打印数据拆分处理方法、装置及打印设备

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6339480B1 (en) * 1997-07-28 2002-01-15 Canon Kabushiki Kaisha Print driver for a color printer
US6298652B1 (en) * 1999-12-13 2001-10-09 Exxon Mobil Chemical Patents Inc. Method for utilizing gas reserves with low methane concentrations and high inert gas concentrations for fueling gas turbines
JP2002113905A (ja) * 2000-10-06 2002-04-16 Fuji Xerox Co Ltd 画像形成装置
US7679772B2 (en) * 2003-03-24 2010-03-16 Canon Kabushiki Kaisha Printing apparatus and printing data control method effecting distributed driving of printing elements
US6971075B2 (en) * 2003-07-25 2005-11-29 Destiny Technology Corporation Circuit design method to control access pointers of different memory
JP4556440B2 (ja) * 2004-02-12 2010-10-06 ブラザー工業株式会社 記録ヘッドの駆動装置及び記録装置
TW200642440A (en) * 2005-02-22 2006-12-01 Fuji Photo Film Co Ltd Image data storing method and control device and program, frame data generation method and its device and program, drawing method and device
JP5777584B2 (ja) * 2012-08-23 2015-09-09 京セラドキュメントソリューションズ株式会社 画像処理装置
US10635955B1 (en) 2019-05-31 2020-04-28 Kyocera Document Solutions Inc. Image forming method, apparatus, and program separating addresses for storing color tone data by shifting the relative address using an offset address

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58195358A (ja) * 1982-05-11 1983-11-14 Canon Inc 縦横変換装置
JPS58195359A (ja) * 1982-05-11 1983-11-14 Canon Inc 縦横変換装置
US4567570A (en) * 1983-02-16 1986-01-28 Exxon Research And Engineering Co. Electronic control system for a linearly slanted print head
US5511151A (en) * 1992-06-10 1996-04-23 Canon Information Systems, Inc. Method and apparatus for unwinding image data
JP3347527B2 (ja) * 1994-07-01 2002-11-20 キヤノン株式会社 プリンタ及びプリント方法
JPH09300735A (ja) * 1996-05-13 1997-11-25 Mitsubishi Electric Corp 印字制御装置

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7336380B2 (en) 2001-02-13 2008-02-26 Heidelberger Druckmaschinen Ag Raster generation system and method of processing raster data
JP2006264319A (ja) * 2005-02-22 2006-10-05 Fuji Photo Film Co Ltd 画像データ格納方法および制御装置並びにプログラム、フレームデータ作成方法および装置並びにプログラム、データ取得方法および装置、描画方法および装置
CN107521226A (zh) * 2016-06-21 2017-12-29 北大方正集团有限公司 一种数据处理方法、装置及喷墨印刷机
CN107521226B (zh) * 2016-06-21 2019-03-12 北大方正集团有限公司 一种数据处理方法、装置及喷墨印刷机
CN109471602A (zh) * 2018-12-07 2019-03-15 森大(深圳)技术有限公司 打印数据拆分处理方法、装置及打印设备
CN109471602B (zh) * 2018-12-07 2022-09-13 森大(深圳)技术有限公司 打印数据拆分处理方法、装置及打印设备

Also Published As

Publication number Publication date
JP3533895B2 (ja) 2004-05-31
EP0871139B1 (en) 2006-10-11
EP0871139A2 (en) 1998-10-14
DE69836110T2 (de) 2007-05-03
DE69836110D1 (de) 2006-11-23
US6009245A (en) 1999-12-28
EP0871139A3 (en) 2001-09-05

Similar Documents

Publication Publication Date Title
US7690744B2 (en) Printing apparatus for assigning data subjected to discharge by an abnormal nozzle in accordance with predetermined priorities
US6183055B1 (en) Multi-pass recording system using random mask
JP3458515B2 (ja) 印字制御方法
JP3533895B2 (ja) シリアルプリンタ及びシリアルプリンタにおけるイメージバッファアクセス方法
US5927871A (en) Printer having scroll print buffer and printing method
EP0646889B1 (en) Recording apparatus
JP2008023759A (ja) インクジェット記録装置およびその記録ヘッド回復処理方法ならびにコンピュータプログラム
EP0978799A2 (en) Data processing method, data processing apparatus and image printing apparatus
US20050248599A1 (en) Liquid ejecting apparatus and method of transferring image data
JP2007276353A (ja) インクジェット記録装置、インクジェット記録装置の記録制御方法、プログラム及び記憶媒体
US6793312B2 (en) Ink jet recording apparatus and method for controlling ink jet recording apparatus
US20060203022A1 (en) Printing system, printing method, and adjustment method
JP2001001570A (ja) 印刷装置、印刷方法、画像処理装置、画像処理方法、および記録媒体
JP2685446B2 (ja) 記録装置
JPH0958019A (ja) 画像形成装置
JP4007179B2 (ja) 画像処理装置と印刷装置とで分担して画像処理を行いながら印刷する印刷システム
JP5343504B2 (ja) インクジェット記録装置、画像形成システム、画像形成方法、及びプログラム
JP4038639B2 (ja) プリンタ及びそのイメージデータの転送方法
JP2002240370A (ja) 記録装置及び該記録装置におけるデータ変換方法
JP3225899B2 (ja) 画像形成方法および画像形成制御装置
JP3275936B2 (ja) ラスターグラフィックスシリアルプリンタ
JP2000238249A (ja) インクジェット記録装置
JP5194881B2 (ja) 画像処理装置、画像処理方法、画像処理プログラム
JPH0839836A (ja) 印刷装置
JP2007301742A (ja) インクジェット記録装置、データ処理方法、プログラム及び記憶媒体

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20031215

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040217

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040301

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080319

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090319

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090319

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100319

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100319

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110319

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120319

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120319

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130319

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140319

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees