(57)【要約】【課題】  記録ヘッドが傾いて取り付けられた場合に、記録画像の傾きを軽減する。【解決手段】  主走査方向と異なる方向に複数の記録素子で構成された記録素子列を複数のブロックで構成した記録ヘッドを用いて記録装置。主走査方向についてのタイミング信号を生成する信号生成手段と、記録データを保持する第１バッファと、第１バッファから読み出したデータを記録ヘッドへ転送する前に保持する第２バッファと、第２バッファに対して、２×ｍカラム分を１つの格納単位とし、格納を行う先頭のアドレスの更新単位をｍカラムとする制御を行うことで、前記第１バッファから読み出したデータを格納する格納手段と、複数のブロックについてブロック単位で１カラム単位で、第２バッファから読み出す読出手段と備える。【選択図】  図１
2008049491.tif 000002
【特許請求の範囲】
【請求項１】
主走査方向と異なる方向に複数の記録素子で構成された記録素子列を複数のブロックで構成した記録ヘッドを用いて記録を行う記録装置であって、
前記主走査方向についてのタイミング信号を生成する信号生成手段と、
記録データを保持する第１バッファと、
前記第１バッファから読み出したデータを前記記録ヘッドへ転送する前に保持する第２バッファと、
前記第１バッファから読み出した２×ｍカラム分のデータを１つの格納単位で前記第２バッファに格納処理を行い、その格納処理における先頭のアドレスの更新をｍカラム単位で行う格納手段と、
前記第２バッファからブロック毎に読み出す読出手段とを備え、
前記読出手段は、前記記録素子列の傾きに関する情報と前記信号生成手段が生成するタイミング信号に基づき、読み出すブロックから１カラム単位で読み出しを行うタイミング信号を選択する選択手段を備えることを特徴とする記録装置。
【請求項２】
前記第２バッファは、５×ｍカラム分のデータを格納可能であることを特徴とする記録装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は複数の記録素子が所定方向に配置された記録素子列を複数有する記録ヘッドを、記録素子の配列方向と交差する方向に走査させて記録を行う記録装置における記録データの処理に関するものである。
【背景技術】
【０００２】
シリアルスキャン方式の記録装置は、主走査方向と直行する方向に記録素子（例えばインクを吐出するノズルとする）を配置したノズル列を有する記録ヘッド用いて記録を行う。記録ヘッドを走査しながら印字を行い、副走査方向（主走査方向と直行する方向）に記録媒体を搬送し、この走査と搬送を繰り返して画像を形成する。
【０００３】
通常、記録ヘッドはキャリッジホルダー（以下キャリッジ）と呼ばれる記録ヘッドを保持する部材に固定されている。固定を行う際、記録ヘッド上のノズル列が主走査方向に対して垂直に配置されるように位置決めがなされており、走査しながらインクを吐出した時に被記録媒体上に正確にドットを配置することができる。しかし、実際には製造上の公差と取り付け状態による誤差要因に起因して、ノズル列は主走査方向に対して垂直な状態にはならないことが多く発生する。さらに、記録ヘッドの取り付け誤差によるノズルの傾き量は、ユーザーが記録ヘッドを着脱するたびに異なり、一様に決まるものではない。
【０００４】
このようなノズル列の傾きは、印字時の罫線ずれ、色ずれを発生させ、画像品位を低下させる原因となっている。また、近年のノズル列の長尺化、高解像度化、ノズル列の複数化によって、罫線ずれは一層顕著に現れるため、ノズル列の傾きを補正する手段が必要不可欠である。
【０００５】
従来の技術としては、印字ヘッドの傾き量に応じて所定個数の発熱ドット群に分割するとともに、各発熱ドット群毎に印字タイミングをずらすことによってヘッドの傾きを補正することを実現している。ヘッドの傾き量Ｄが印字ドット単位でＮドット＜Ｄ≦（Ｎ＋１）ドットの範囲内にある場合、複数の発熱ドットを（Ｎ＋１）個の発熱ドット群に分割する。そして、最初に印字を行う第１番目のドット群から順に発熱ドット群毎に１ドットずつ印字タイミングをずらして印字を行うものである（特許文献１）。
【０００６】
印字のタイミングをずらして印字を行う技術としては、１カラム（１画素）に相当するパルス信号の周期内で複数のセグメント（ブロック）に分けて印字を行う方法がある。（特許文献２）
【特許文献１】特開平１１−４２８０３号公報
【特許文献２】特開平７−１３７２４０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
上述した特許文献１の技術においては、イメージバッファ上の印字方向に１ドット単位でずらした印字データを展開（格納）しておき、補正用のオフセットドットデータを付加する。この処理を行うことで、印字タイミングをずらして印字ヘッドの傾きを補正することを実現していた。
【０００８】
しかし、この方法では、イメージバッファ上に１ドット単位でずらしてデータを格納する必要がある。この方法では、印字ヘッドの長尺化やカラー化によるノズル列の複数化によってデータ量が増加した場合、データ処理の為の負荷が大きくなってしまうという問題点を有している。
【０００９】
又、特許文献２のようなタイミング制御では、分割駆動のタイミング調整は、あくまでも１画素の範囲内でしかできず、１画素を越える期間でのタイミング調整を行うことが出来ない。
【課題を解決するための手段】
【００１０】
上述の課題を解決し、目的を達成するために、本発明の記録装置は、主走査方向と異なる方向に複数の記録素子で構成された記録素子列を複数のブロックで構成した記録ヘッドを用いて記録を行う記録装置であって、前記主走査方向についてのタイミング信号を生成する信号生成手段と、記録データを保持する第１バッファと、前記第１バッファから読み出したデータを前記記録ヘッドへ転送する前に保持する第２バッファと、前記第１バッファから読み出した２×ｍカラム分のデータを１つの格納単位で前記第２バッファに格納処理を行い、その格納処理における先頭のアドレスの更新をｍカラム単位で行う格納手段と、
前記第２バッファからブロック毎に読み出す読出手段とを備え、前記読出手段は、前記記録素子列の傾きに関する情報と前記信号生成手段が生成するタイミング信号に基づき、読み出すブロックから１カラム単位で読み出しを行うタイミング信号を選択する選択手段を備える。
【発明の効果】
【００１１】
以上説明したように、本発明によれば、記録素子についての駆動タイミング信号はノズル列毎に１本とし、この信号を入力することでブロック単位で遅延信号を内部で生成する構成をとることで、タイミングの制御する回路の構成がシンプルになる。
【００１２】
又、テンポラリバッファへの書き込みは、記録ヘッドの傾きに依存せずに実行でき、テンポラリバッファからの読み出しを行う場合にのみ、記録ヘッドの傾きを考慮すれば良いので、シンプルな制御回路で実現できる。
【発明を実施するための最良の形態】
【００１３】
以下に、本発明に係る実施の形態について添付図面を参照して詳細に説明する。
【００１４】
以下、図面を参照して本発明を詳細に述べる。図１は、本発明の記録装置の概略構成例を示すブロック図である。
【００１５】
図中１０１はＣＰＵ、１０２はＣＰＵ１０１が実行する制御プログラム及びその他のテーブルデータ等を格納しておくＲＯＭである。１０３はホスト装置（不示図）からインターフェース１０４を介して受信したデータを格納する受信バッファ及び印字データを格納する印字バッファ等の領域として用いられるＲＡＭである。１０５は、キャリッジの位置情報を検出するエンコーダである。
【００１６】
１０６はＡＳＩＣ形態の記録装置の制御部である。この制御部１０６はインターフェース１０４を介してホスト装置とデータの送受信を行うインターフェース制御回路１０７を含む。又、この制御部１０６は、エンコーダ１０５からキャリッジの位置情報を検出してデータ生成タイミング及びヒートタイミングのトリガ信号を生成する位置情報生成手段（位置情報生成部）１０８を含む。この制御部１０６は、データ生成制御手段１１０からの要求によって生成された印字データをテンポラリバッファ１１２への書き込みを行う。
【００１７】
また、制御部１０６は、後述のヘッド制御手段１１４からの要求によりテンポラリバッファ１１２から印字データの読み出しを行うテンポラリバッファ制御手段（テンポラリバッファ制御部）１１１を含む。また、制御部１０６は、位置情報生成手段１０８からのヒートタイミング信号をもとに印字ヘッド１１５に対して実際の印字データの転送およびインク吐出制御を行うヘッド制御手段（ヘッド制御部）１１４を含む。
【００１８】
また、制御部１０６は、印字ヘッド１１５を搭載したキャリジを走査させるキャリッジモータ１１６および被記録媒体の給排紙を行う搬送モータ１１７の駆動を制御する駆動制御手段（モータ制御部）１１３を含む。
【００１９】
次に、本実施例の記録装置におけるプリンタ動作について説明する。インターフェース１０４を介してホスト装置（不示図）から画像データ等を受信すると、ＡＳＩＣ１０６内のインターフェース制御回路１０７からＲＡＭ１０３内に割り当てられた受信バッファに受信データが一旦格納される。
【００２０】
受信バッファに格納された受信データはコマンド解析が行われ、実際の画像データはプリントモードに合わせてプリントデータ処理が行われてＲＡＭ１０３に割り当てられた印字バッファ（記録バッファ）に蓄えられる。印字バッファの容量は例えば１走査分のデータ量、あるいは１走査分＋αのデータ量である。印字バッファに必要量のデータが蓄えられたところで駆動制御手段１１３によってキャリッジモータ１１６を駆動して記録ヘッド（印字ヘッド）の走査を開始する。
【００２１】
位置情報生成手段１０８はエンコーダ１０５により位置情報を検出して、データ生成タイミングの制御信号となるデータウィンドウ信号及びヘッド駆動のタイミング信号となるヒートウィンドウ信号を出力する。
【００２２】
データ生成制御手段１１０はデータウィンドウ信号をもとに印字バッファから画像データを読み出して所定の処理（例えばＨＶ変換）を行った後、テンポラリバッファ制御手段１１１を介してテンポラリバッファ１１２への書き込みを行う。
【００２３】
ヘッド制御手段１１４はヒートウィンドウ信号に基づいて所定のタイミングでテンポラリバッファ制御手段１１１に格納されている実際の印字データ（記録データ）を読み出して印字ヘッド１１５に印字データを転送する。
【００２４】
またヘッド制御手段１１４は、印字ヘッドの駆動信号を生成して印字ヘッド１１５に出力する。テンポラリバッファ１１２はリングで構成され、書き込み側と読み出し側のアドレスが重複しない様に、テンポラリバッファ制御手段１１１がアドレスに管理を行う。
【００２５】
印字ヘッド１１５は、ヘッド制御手段１１４によりデータが転送され、駆動信号が与えられることによってインクの吐出動作が行われて被記録媒体に画像を形成する。印字ヘッド１１５の走査および被記録媒体の搬送は、駆動制御手段１１３によってキャリッジモータ１１６および搬送モータ１１７を駆動することによってなされる。
【００２６】
次に印字ヘッドの傾きを補正して印字する方法について述べる。
【００２７】
図２は、記録装置に搭載される印字ヘッドの一例であり、複数のノズル列から構成される印字ヘッドである。図中２０１はＢｋ用印字ヘッド、２０２はカラー様印字ヘッドであり、ユーザーが容易に着脱可能な構成となっている。
【００２８】
図３に示すようにカラー用印字ヘッド２０２が傾いた状態で装着された場合、印字ヘッド上に配置されたノズル列は、例えば図４は１２８ノズルのうち、上端部３２ノズルと下端部９６ノズルが１画素ずれた状態となる。つまり、図３に示すようにノズル列が傾いた状態に相当する。
【００２９】
図５は、図４に示す状態でインクを吐出した時に印字ドットの着弾位置を表した図である。Ｃ＿ＨＴ＿ＷＩＮは、シアンのノズル列に対するヒートウィンドウ信号であり、印字ヘッドに対するヘッド制御を許可することを表す信号である。ＨＥＡＴ＿ＴＲＧ信号はデータ生成およびヘッド制御におけるトリガ信号であり、図５では印字ヘッド走査中に印字ヘッドを駆動してインクを吐出するタイミングを表す信号である。
【００３０】
従って、図５においては、Ｃ＿ＨＴ＿ＷＩＮ信号が出力されている間のＨＥＡＴ＿ＴＲＧ信号が出力されるタイミングｔ＝ｔ０、ｔ１、ｔ２・・・で全てのノズルは同時にインクを吐出する。そのため、印字ヘッドの傾きの影響によって実際に紙面上に形成される画素は１画素ずれた状態となる。すなわち、図５の黒く塗りつぶしたドットは、ｔ＝ｔ０のタイミングでインクを吐出したものであり、上端部３２ノズルのドットは印字ヘッドの走査方向に対してＸ＝Ｘ０の位置より手前に、下端部９６ノズルのドットはＸ＝Ｘ０の位置に着弾する。
【００３１】
次に、白抜きのドットは、ｔ＝ｔ１のタイミングでインクを吐出したものであり、上端部３２ノズルのドットはＸ＝Ｘ０の位置に、下端部９６ノズルはＸ＝Ｘ１の位置にずれて紙面上（被記録媒体上）に着弾する。
【００３２】
このように、図４の様に傾いている印字ヘッドにおいては、紙面上に形成される画像も傾いた画像となってしまう。
【００３３】
ここで、本実施例においては、ノズル列の傾きを補正するために図６に示すように、図３の状態に対して１２８ノズルを３２ノズル毎に４ブロックに分ける。そして、Ｃ＿ＢＬＫ０のブロックである上端部３２ノズルとＣ＿ＢＬＫ１〜Ｃ＿ＢＬＫ３のブロックである下端部９６ノズルが１画素ずれた状態に設定している。
【００３４】
ノズル列の傾きの基準は、Ｃ＿ＢＬＫ０である。そして、Ｃ＿ＢＬＫ１〜Ｃ＿ＢＬＫ３のブロックは、Ｃ＿ＢＬＫ０に合わせて補正する。
【００３５】
具体的には、印字ヘッドの走査方向（矢印で示す）を（＋）とし、走査方向と逆向きを（−）とする。
【００３６】
例えば、Ｃ＿ＢＬＫ１をＣ＿ＢＬＫ０に合わせる為に、（＋）方向に調整する場合には、Ｃ＿ＢＬＫ１のウィンドウ信号の出力タイミングをＣ＿ＢＬＫ０のウィンドウ信号（基準信号）の出力タイミングに対して遅らせる。また、逆にＣ＿ＢＬＫ１をＣ＿ＢＬＫ０に合わせる為に、（−）方向に調整する場合には、Ｃ＿ＢＬＫ１のウィンドウ信号の出力タイミングをＣ＿ＢＬＫ０のウィンドウ信号（基準信号）の出力タイミングに対して早める。例えば、図４に示す印字ヘッドの場合、Ｃ＿ＢＬＫ１をＣ＿ＢＬＫ０に合わせる為に、（−）方向に調整。
【００３７】
図７は、上述した図６において、傾き補正を行いインクを吐出した時の印字ドットの着弾位置を表した図である。
【００３８】
１２８ノズルを３２ノズル毎に４ブロック分割した内の下部９６ノズルのみＣ＿ＨＴ＿ＷＩＮのタイミングで吐出を行う。一方、上部３２ノズルに対しては、１ＨＥＡＴ＿ＴＲＧ分の遅延（Ｄｅｌａｙ）を持たせた、Ｃ＿ＨＴ＿ＷＩＮ＿Ｄｅｌａｙ１のタイミングで吐出を開始する。このような制御を行うことで、図７の様に真直ぐな線に着弾することが出来る。つまり、上部３２ノズルは、ｔ＝ｔ１のタイミングで黒く塗り潰したドットの吐出を行い、ｔ＝ｔ２のタイミングで白抜きのドットの吐出を行う。
【００３９】
一方、下部９６ノズルに対してはは、ｔ＝ｔ０のタイミングで黒く塗り潰したドットの吐出を行い、ｔ＝ｔ１のタイミングで白抜きのドットの吐出を行う。
【００４０】
図１１は、位置情報生成手段１０８を説明するブロック図である。位置カウンタ制御１１０１はエンコーダからの信号を入力して位置カウンタ１１０２を制御する。この位置カウンタ制御回路１１０１には、信号を処理するためのフィルタ回路、印字モードに応じて入力したエンコーダの信号を逓倍する逓倍回路を備えている。
【００４１】
ヒートウィンドウレジスタ１１０３は、ノズル列に対するヒートウィンドウ信号をイネーブル（許可）にする位置情報を設定するレジスタである。また、このヒートウィンドウレジスタ１１０３はヒートウィンドウ信号のディセーブル（禁止）にする位置情報も設定する。これらのヒートウィンドウ信号についての位置情報は、ノズル列ごとに設定される。
【００４２】
データウィンドウレジスタ１１０４は、ノズル列に対するヒデータウィンドウ信号をイネーブル（許可）にする位置情報を設定するレジスタである。また、このデータウィンドウレジスタ１１０４はヒデータウィンドウ信号のディセーブル（禁止）にする位置情報も設定する。これらのデータウィンドウ信号についての位置情報は、ノズル列ごとに設定される。
【００４３】
ウインドウ制御回路１１０５は、エンコーダー１０５からの信号により、キャリッジの位置を検出する。キャリッジの位置と位置情報が設定されたレジスタの値が一致した時点で、データウインドウ及びヒートウインドウのアサート／ネゲートを行い、ＤＴ＿ＷＩＮ、ＨＴ＿ＷＩＮ信号の出力を行う。又、ヒートを行う基準信号であるＨＥＡＴ＿ＴＲＧも、ウインドウ制御回路１１０５により生成されている。
【００４４】
図１０は本実施例におけるデータ生成タイミングと印字制御タイミングの関係を表す図である。図の様にＤＴ＿ＷＩＮから１６ＨＥＡＴ＿ＴＲＧおくれた位置でＨＴ＿ＷＩＮは、許可（開処理：ローレベルからハイレベルへ切替）と禁止（閉処理：ハイレベルからローレベルへ切替）を行う。これは、本実施例が、１６カラム分の印字データの縦横変換を行ってから、テンポラリバッファにライトを行うプリンタシステムに関するためである。
【００４５】
Ｃ＿ＤＴ＿ＷＩＮはシアンのノズル列のデータウィンドウ信号であり、データ生成を行うことを許可することを表す信号である。
データ生成制御手段１１０はＣ＿ＤＴ＿ＷＩＮがイネーブルになった時のＨＥＡＴ＿ＴＲＧ信号をトリガとしてデータ生成を開始する。ここで、本実施例のテンポラリバッファ１１２は、各ノズル列に対して８カラム分（主走査方向に８画素分）のデータを保持できる容量を１バンクとして５バンク構成となっている。
【００４６】
つまり４０カラム分のデータを保持できるテンポラリバッファとなっている、
データ生成制御手段１１０は１６カラム毎にデータ生成を行い、ＣＤＴ＿ＷＩＮがイネーブルになると１６カラム分のデータ生成を行う。その後データ生成制御手段１１０は、テンポラリバッファ制御手段１１１を介してテンポラリバッファ１１２へ印字データの書き込みを行う。
【００４７】
次に、図９を用いて、ノズル列間のタイミング調整を含めた説明をする。図９（ａ）は、カラー印字用ヘッド２０２において、印字ヘッドが傾いていない状態を示している。シアンのノズル列に対する所定の基準位置からの距離をｄｃ、マゼンタのノズル列に対する距離をｄｍ、イエローのノズル列に対する距離をｄｙとする。
【００４８】
基準位置からの距離、ｄｃ、ｄｍ、ｄｙをずらして印字タイミングを生成することで、シアン、マゼンタ、イエローのインク同一の位置に記録する制御をおこなっている。
【００４９】
次に（ｂ）はヘッドの傾きを考慮した場合のタイミング制御である。例えば図９の（ｂ）に示すように印字ヘッドの傾きによって各ノズル列３２ノズル列がずれている場合を考える。この場合、シアンのＣ＿ＢＬＫ０のブロックに対する基準位置からの距離はｄｃ＋ｐｃ、Ｃ＿ＢＬＫ１〜３のブロックに対してはｄｃとなる。同様にマゼンタはＭ＿ＢＬＫ０のブロックに対する基準位置からの距離はｄｍ＋ｐｍ、Ｍ＿ＢＬＫ１〜３のブロックに対してはｄｍとなる。また、イエローはＹ＿ＢＬＫ０のブロックに対する基準位置からの距離はｄｙ＋ｐｙ、Ｙ＿ＢＬＫ１〜３のブロックに対してはｄｙとなる。
【００５０】
ここで、ｄｃ、ｄｍ、ｄｙはヘッドの傾き情報から得られる補正値である。
【００５１】
各ヒートウィンドウ信号はそれぞれ対応するブロックが所定の位置に達したタイミングでイネーブル（許可状態）となる。このため、シアンのノズル列が主走査方向に移動を開始して基準位置からｄｃの位置達した時、Ｃ＿ＢＬＫ１から３のヒートウインドウＣ＿ＨＴ＿ＷＩＮＤＯＷ１〜３をイネーブルとする。その後印字ヘッドがｐｃ画素分移動した位置ｄｃ＋ｐｃに達した時にＣ＿ＨＴ＿ＷＩＮＤＯＷ０をイネーブルにする。
【００５２】
同様にマゼンタのノズル列が主走査方向に移動を開始して基準位置からｄｍの位置達した時、Ｍ＿ＢＬＫ１から３のヒートウインドウＭ＿ＨＴ＿ＷＩＮＤＯＷ１〜３をイネーブルとする。その後印字ヘッドがｐｍ画素分移動した位置ｄｍ＋ｐｍに達した時にＭ＿ＨＴ＿ＷＩＮＤＯＷ０をイネーブルにする。
【００５３】
同様にイエローのノズル列が主走査方向に移動を開始して基準位置からｄｙの位置達した時、Ｙ＿ＢＬＫ１から３のヒートウインドウＹ＿ＨＴ＿ＷＩＮＤＯＷ１〜３をイネーブルとする。その後印字ヘッドがｐｙ画素分移動した位置ｄｙ＋ｐｙに達した時にＹ＿ＨＴ＿ＷＩＮＤＯＷ０をイネーブルにする。
【００５４】
なお、データウィンドウ信号は最初のヒートがイネーブルになる１６画素前のタイミング（位置）でイネーブルとする。つまり、シアンのデータウィンドウはｄｃ−１６の位置、マゼンタのデータウィンドウはｄｍ−１６の位置、イエローのデータウィンドウはｄｙ−１６の位置でイネーブルとなる。
【００５５】
次に図１２及び図１３を参照しながらテンポラリバッファへの書き込み制御の説明を行う。ここで、斜線のマスがデータ生成制御手段１１０によって生成されテンポラリバッファに書き込まれた印字データである。
【００５６】
まず、最初の書き込みタイミングで、テンポラリバッファのＢａｎｋ０とＢａｎｋ１の１６カラム分（２バンク分）に印字データを書き込む。次に１６カラム後のタイミングで、Ｂａｎｋ２とＢａｎｋ３に印字データを書き込む。次に１６カラム後のタイミングでＢａｎｋ４とＢａｎｋ０に印字データを書き込む。
【００５７】
このように、１６カラム毎のタイミングで２つのＢａｎｋにまたがって１６カラム分の印字データの書き込みが行われる。書き込まれるＢａｎｋは、０と１−＞２と３−＞４と０−＞１と２−＞３と４−＞０と１・・・とリング制御が行われる。
【００５８】
次にテンポラリバッファからの読み出しについて説明する。ＤＴ＿ＷＩＮがアサートされてから、１６ＨＥＡＤ＿ＴＲＧ後にＨＴ＿ＷＩＮがアサートされテンポラリバッファからの読み出しが開始される。ヘッドの傾きが図６の場合、ＢＬＫ１〜３の１ＨＥＡＴ＿ＴＲＧ後にＢＬＫ０のデータリードを開始する制御を行う。
【００５９】
図１２の（ｂ）では、リード１カラム目はＢＬＫ１〜３までのデータリードが行われ、読み出したデータが記録ヘッドに転送される。この時、ＢＬＫ０の部分の印字データに対しては、ＮＵＬＬデータを送信することとなる。次のＨＥＡＤ＿ＴＲＧのタイミングでＢＬＫ１〜３までは、２カラム目のデータをリードし、ＢＬＫ１は、１カラム目のデータのリードを行う。順に繰り返して、リード１６カラム目では、ＢＬＫ１〜３までは、１６カラム目のデータをリードし、ＢＬＫ１は、１５カラム目のデータのリードを行う。図１２の（ｃ）・・・（ｄ）・・・（ｅ）の様に、ＢＬＫ１〜３までのデータとＢＬＫ１のデータは常に１カラム分ずれてリードが行われる。
【００６０】
次に、ヘッドの傾きがさらに大きい場合の例を図１３で説明を行う。図１３では、ＢＬＫ３がＢＬＫ２に対して２カラム、ＢＬＫ２がＢＬＫ１に対して２カラム、ＢＬＫ１がＢＬＫ０に対して２カラム傾いているヘッドに対する、データの読み出し遷移を表している。
【００６１】
データ読み出し１カラム目では、ＢＬＫ３のみが読み出され、ＢＬＫ０〜２に対しては、ＮＵＬＬデータとして記録ヘッドにデータが転送される。データ読み出し３カラム目では、ＢＬＫ３は３カラム目のデータ、ＢＬＫ２は１カラム目のデータ、ＢＬＫ０〜１は、ＮＵＬＬデータとして記録ヘッドに転送される。次にリード１６カラム目では、ＢＬＫ３は１６カラム目のデータ、ＢＬＫ２では、１４カラム目のデータ、ＢＬＫ１では、１２カラム目のデータ、ＢＬＫ０では、１０カラム目のデータが読み出され、記録ヘッドに転送される。（ｃ）・・・（ｄ）・・・（ｅ）の様に、ＢＬＫ３〜０までリードカラムのオフセットは常に一定のまま、読み出しが行われていく。
【００６２】
図１４は、テンポラリバッファの制御手段１１１のブロック構成を示す図である。
【００６３】
遅延信号生成手段（Ｄｅｌａｙウィンドウ生成手段）１４０１は、位置情報生成手段１０８からのＨＴ＿ＷＩＮにＨＥＡＴ＿ＴＲＧ単位で遅延信号（Ｄｅｌａｙ信号）を生成する手段である。ヘッド傾き情報格納手段１４０２はヘッド傾きに応じて、各ノズル列に対する補正量を設定するレジスタである。
【００６４】
ヘッドの傾き量は、特定の傾き検出パターン（不示図）を印刷し、そのパターンからユーザーが傾き量を検出したり、光学センサーを用いて傾き量を自動で検出してもよい。ユーザー或いは、光学センサーで検出したヘッド傾き量は、ＥＥＰＲＯＭ形態の不揮発性メモリ１０９に保持される。
【００６５】
ＣＰＵ１０１は、不揮発性メモリ１０９に記録されたヘッド傾き量をヘッド傾き情報格納手段３０２に設定を行う。
【００６６】
バッファライト制御手段１４０３はＤＴ＿ＷＩＮのタイミングで発生するデータ制御手段１１０からのバッファライト要求の信号により、テンポラリバッファ１１２へのデータ書き込みを制御する手段である。又、バッファリード制御手段１４０４はＨＴ＿ＷＩＮのタイミングで発生するバッファリード要求の信号によりテンポラリバッファ１１２からのデータ読み出しを制御する手段である。
【００６７】
バッファリードとバッファライトはＨＥＡＴ＿ＴＲＧのタイミングで発生する為、リードとライトが同時にリクエストを出す場合が存在する。その為、バッファリード／ライト調停手段１４０５がテンポラリバッファ１１２に対するリードとライトタイミング調停を行っている。
【００６８】
次に、図８を用いて、テンポラリバッファ制御手段１１１における、Ｄｅｌａｙウインドウ生成手段１４０１の動作について説明する。
【００６９】
図８の（ａ）に示すように、ウインドウ制御手段１１０５から出力された、ＨＴ＿ＷＩＮは、Ｄｅｌａｙウィンドウ手段１４０１により、ＨＥＡＤ＿ＴＲＧ単位で遅延させた信号、ＨＴ＿ＷＩＮ＿Ｄｅｌａｙ１〜８を生成する。次に、ヘッド傾き情報手段３０２に保持された値を用いて、ＢＬＫ毎に使用するＨＴ＿ＷＩＮ＿Ｄｅｌａｙ信号の選択が行われる。
【００７０】
ヘッド傾き情報について、ＢＬＫ０がＢＬＫ１〜３よりも１カラム遅らせる設定であった場合を説明する。図８の（ｂ）に示すように、ＢＬＫ１〜ＢＬＫ３用のＨＴ＿ＷＩＮＤＯＷ〔３：１〕は、Ｄｅｌａｙの行われていない、ＨＴ＿ＷＩＮが選択される。ＢＬＫ０用のＨＴ＿ＷＩＮＤＯＷ０には、１ＨＥＡＤ＿ＴＲＧのＤｅｌａｙが行われたＨＴ＿ＷＩＮ＿Ｄｅｌａｙ１が選択される。シアン、マゼンタ、イエロー全て同様に、ＢＬＫ１〜３用とＢＬＫ０用は、１ＨＥＡＤ＿ＴＲＧズレたＨＴ＿ＷＩＮＤＯＷとなる。
【００７１】
シアン、マゼンタ、イエロー  でＨＴ＿ＷＩＮの入力タイミングが異なるので、ＨＴ＿ＷＩＮ＿Ｄｅｌａｙ信号は、シアン、マゼンタ、イエロー分生成される。その為、図８では、シアン、マゼンタ、イエローの各ノズル列の傾きは同じになっているが、各色毎に傾きが異なっていてもよい。例えば、マゼンタのノズル列の傾きは、上端部３２ノズルと下端部９６ノズルが３画素ずれた状態であっても構わない。
【００７２】
Ｄｅｌａｙウインドウ生成手段１４０１によって生成したＨＴ＿ＷＩＮＤＯＷのタイミングに応じて、色毎に、ＢＬＫ毎に、テンポラリバッファからのデータリードが行われる。これによりヘッドの傾きに応じて、テンポラリバッファからのデータリード（データの読み出し）を行い、記録ヘッドの傾きを補正した画像を記録することが可能となる。
【００７３】
以上、本発明について説明したが、上述した値に限定するものではない。例えば、記録ヘッドのブロック数について、４に限定するものではなく、８あるいは１６でも構わない。また、テンポラリバッファの１バンクあたりのカラム数も８に限定するものではなく、１６あるいは３２でも構わない。
【図面の簡単な説明】
【００７４】
【図１】実施形態にけるプリンタの制御回路の概略構成を示すブロック図
【図２】記録ヘッドの構成図
【図３】傾いて装着された場合の記録ヘッドの図
【図４】カラーヘッド部分の簡略図
【図５】補正なしの状態で印字した場合の着弾結果を示す図
【図６】カラーヘッド部分を３２ノズル毎のＢＬＫに振り分けた図
【図７】傾き補正を行った場合の着弾結果を示す図
【図８】ＨＴ＿ＷＩＮ信号を遅延させた時のタイミング図
【図９】カラー間の距離オフセットを補正する方法を示す図
【図１０】ＤＴ＿ＷＩＮとＨＴ＿ＷＩＮのタイミング関係を示す図
【図１１】位置情報生成手段の構成を示すブロック図
【図１２】テンポラリバッファのリード及びライト動作の遷移図１
【図１３】テンポラリバッファのリード及びライト動作の遷移図２
【図１４】テンポラリバッファの制御手段の構成を示すブロック図
【図１】
2008049491.tif 000003
【図２】
2008049491.tif 000004
【図３】
2008049491.tif 000005
【図４】
2008049491.tif 000006
【図５】
2008049491.tif 000007
【図６】
2008049491.tif 000008
【図７】
2008049491.tif 000009
【図８】
2008049491.tif 000010
【図９】
2008049491.tif 000011
【図１０】
2008049491.tif 000012
【図１１】
2008049491.tif 000013
【図１２】
2008049491.tif 000014
【図１３】
2008049491.tif 000015
【図１４】
2008049491.tif 000016