JP4455295B2 - 記録装置、及び、記録装置のデータ処理方法 - Google Patents

記録装置、及び、記録装置のデータ処理方法 Download PDF

Info

Publication number
JP4455295B2
JP4455295B2 JP2004341685A JP2004341685A JP4455295B2 JP 4455295 B2 JP4455295 B2 JP 4455295B2 JP 2004341685 A JP2004341685 A JP 2004341685A JP 2004341685 A JP2004341685 A JP 2004341685A JP 4455295 B2 JP4455295 B2 JP 4455295B2
Authority
JP
Japan
Prior art keywords
data
recording
block
stored
address
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
Application number
JP2004341685A
Other languages
English (en)
Other versions
JP2005193651A (ja
JP2005193651A5 (ja
Inventor
暢浩 石坂
壮平 田中
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2004341685A priority Critical patent/JP4455295B2/ja
Priority to US11/000,236 priority patent/US7198418B2/en
Priority to CNB2004100988296A priority patent/CN1326695C/zh
Publication of JP2005193651A publication Critical patent/JP2005193651A/ja
Publication of JP2005193651A5 publication Critical patent/JP2005193651A5/ja
Priority to US11/679,288 priority patent/US7528984B2/en
Application granted granted Critical
Publication of JP4455295B2 publication Critical patent/JP4455295B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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
    • G06K15/102Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers by matrix printers using ink jet print heads
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/46Colour picture communication systems
    • H04N1/50Picture reproducers
    • H04N1/504Reproducing the colour component signals line-sequentially

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Record Information Processing For Printing (AREA)
  • Ink Jet (AREA)
  • Fax Reproducing Arrangements (AREA)

Description

本発明は記録装置、及び、記録装置のデータ処理方法に関し、より詳細には、複数の記録素子が所定方向に配列された記録素子列を複数有する記録ヘッドを、記録素子の配列方向と交差する方向に走査させて記録を行う記録装置における、記録データの処理に関するものである。
例えばワードプロセッサ、パーソナルコンピュータ、ファクシミリ等に於ける情報出力装置として、所望される文字や画像等の情報を用紙やフィルム等シート状の記録媒体に記録を行うプリンタが広く使用されている。
プリンタの記録方式としては様々な方式が知られているが、用紙等の記録媒体に非接触記録が可能である、カラー化が容易である、静粛性に富む、等の理由でインクジェット方式が近年特に注目されており、又その構成としては、所望される記録情報に応じてインクを吐出する記録ヘッドを搭載したキャリッジを用紙等の記録媒体の搬送方向と交差する方向に往復走査させながら記録を行なう、シリアル記録方式が安価で小型化が容易などの点から一般的に広く用いられている。
従来、記録ヘッドを搭載したキャリッジを記録媒体上で走査させて記録を行うために、記録ヘッドの走査方向の記録領域を複数の領域に分割し、分割された領域単位の記録データを格納するバッファを有する記録装置(印刷装置)が知られている。
このような記録装置では、分割された領域単位の記録データをバッファに格納する際に、色毎にデータの格納領域を切替える情報と格納可能なバッファ残量及び書き込みアドレス更新量の比較の結果とに基づき、領域単位の記録データの書き込みアドレス情報を、色毎に制御する書き込み制御部を備えている(特許文献1)。
また、バッファに格納された記録データを読み出すための読み出しアドレス情報を色毎に制御する読み出し制御部と、読み出しアドレス情報に基づいて読み出された記録データに従い、分割された領域単位の記録データを生成する記録データ生成手段とを備えている。
このように構成された従来の記録装置にホストコンピュータから転送される記録データに対しては、ホストコンピュータ(プリンタドライバ)によって、走査方向(ラスタ方向)における位置の調整(レジスト調整)を施されている(特許文献2)。
特開2003−305896号公報 特開2003−305895号公報
しかしながら、記録装置に転送する記録データは記録・非記録を表す1ビット(2値)で表現されるのが一般的であるが、通常ホストコンピュータのデータ処理単位は16ビットや32ビットに設定されている。
このため、ホストコンピュータで記録データのような1ビットのデータを処理するのは効率が悪く、処理に時間がかかってしまう。
近年は記録装置の解像度が向上しており、ホストコンピュータから記録装置へ転送する記録データの量も増大している。このため記録データの量が増大すると、ホストコンピュータでの記録データの生成に時間がかかり、記録を指示してから記録装置で記録が実行されるまでの実効的な速度が低下することとなる。
以上のような理由で、ホストコンピュータ(プリンタドライバ)が記録装置へ転送する記録データを生成するのに要する時間や、記録を指示してから記録が実行されるまでの時間を短縮することが課題となっていた。
本発明は以上のような状況に鑑みてなされたものであり、ホストコンピュータにおける記録データの生成処理を高速化させることを目的とする。
本発明に係る記録装置は、複数の記録素子が配列された記録素子列を複数有する記録ヘッドを、前記配列方向と交差する走査方向に走査させて記録を行う記録装置であって、
前記記録ヘッドによる一走査の記録を行う場合に前記記録素子列に対応するデータが前記走査方向に複数のブロックに分割された複数のブロックデータと、前記記録素子列と基準となる記録素子列との相対位置を表すレジスト調整値情報と、ブロックデータに含まれるラスタ数及びブロック幅の情報とを、接続されたホスト機器から受信する受信手段と、
前記分割された複数のブロックデータそれぞれのブロック幅とラスタ数に基づくアドレス長を単位として、前記複数のブロックデータそれぞれが纏めて格納される領域が定められ、前記領域のそれぞれは前記記録素子列に対応するデータ毎に纏めて格納されるように定められている記録バッファと、
前記受信手段により受信した前記レジスト調整値情報に基づいて、前記記録バッファ上のアドレスを指定して前記ブロックデータを書き込むように制御する書込み制御手段とを備え、
前記書込み制御手段は、前記ブロックデータのうち、第1のラスタに対応する第1のデータを、前記記録バッファ上のアクセス先頭位置から前記レジスト調整値情報が表す前記相対位置分ずれた開始アドレスを指定し、前記ブロックデータの格納される領域と前記走査方向に後続するブロックデータが格納される領域に格納し、
前記ブロックデータのうち、前記第1のラスタに後続する第2のラスタに対応する第2のデータを、前記アクセス先頭位置の次のアドレスから前記レジスト調整値情報が表す前記相対位置分ずれた開始アドレスを指定し、前記ブロックデータの格納される領域と前記走査方向に後続するブロックデータが格納される領域に格納することを特徴とする。
本発明によれば、従来ホスト機器で行われていた記録素子列間の相対距離に関連したレジスト調整処理が記録装置側で実行されるので、ホスト機器での記録データの生成処理が簡略化され、記録が指示されてから実際に記録が行われるまでの時間を短縮することが可能となる。
以下に、図面を参照して、本発明の好適な実施の形態を例示的に詳しく説明する。ただし、以下の実施の形態に記載されている構成要素はあくまで例示であり、本発明の範囲をそれらのみに限定する趣旨のものではない。
なお、この明細書において、「記録」(「プリント」という場合もある)とは、文字、図形等有意の情報を形成する場合のみならず、有意無意を問わず、また人間が視覚で知覚し得るように顕在化したものであるか否かを問わず、広く記録媒体上に画像、模様、パターン等を形成する、または媒体の加工を行う場合も表すものとする。
また、「記録媒体」とは、一般的な記録装置で用いられる紙のみならず、広く、布、プラスチック・フィルム、金属板、ガラス、セラミックス、木材、皮革等、インクを受容可能なものも表すものとする。
さらに、「インク」(「液体」と言う場合もある)とは、上記「記録(プリント)」の定義と同様広く解釈されるべきもので、記録媒体上に付与されることによって、画像、模様、パターン等の形成または記録媒体の加工、或いはインクの処理(例えば記録媒体に付与されるインク中の色剤の凝固または不溶化)に供され得る液体を表すものとする。
またさらに、「ノズル」とは、特にことわらない限り吐出口ないしこれに連通する液路およびインク吐出に利用されるエネルギーを発生する素子を総括して言うものとする。
以下、本発明をインクジェット記録装置(印刷装置)に適用した一実施形態について具体的に説明する。
<記録装置の概略構成>
図1は、本実施形態のインクジェット記録装置の概略構成を示すカバーを外した状態の斜視図である。
図1において、キャリッジ101は記録ヘッド(不図示)とカートリッジ110を搭載し、ガイド軸102に沿って走行可能である。なお、本実施形態では、記録ヘッドは、インクジェット方式の記録ヘッドである。また、103はシャーシであり、メインシャーシ103aと左右の側面板103b及び103cから構成される。108はキャリッジの駆動源であるキャリッジモータであり、109はキャリッジに接続されキャリッジモータ108によって駆動されるベルト、130は記録ヘッド吐出面の清掃や吸引動作行う回復系ユニット、140はキャリッジ101に搭載された発光素子及び受光素子と共にキャリッジの位置及び速度を算出するCRエンコーダを構成するスケールである。
記録媒体としての記録紙は、給紙ローラ(不図示)によって装置本体内に送り込まれ、紙送りローラ105とピンチローラ(不図示)、紙押え板(不図示)によって狭持され、記録ヘッドの記録領域へと搬送され記録が行われる。
インクカートリッジ110は、イエロー、マゼンタ、シアンの3色のインクを収容したカラーインクカートリッジと、ブラックインクを収容したブラックインクカートリッジの2種類で、それぞれ別々にカートリッジガイド7に挿入され、記録ヘッドと接続される。
本実施形態のインクジェット記録装置は、ホストコンピュータと接続され、ホストコンピュータ(プリンタドライバ)から記録データの供給を受けて記録を行う。また、本実施形態の記録装置は、記録ヘッドを搭載したキャリッジを記録媒体上で走査させて記録を行うために、記録ヘッドの走査方向の記録領域を複数の領域に分割し、分割された領域単位で画像を記録(印刷)する。
その場合、本実施形態のインクジェット記録装置では、ホストコンピュータ側では、ビット単位のデータ処理により走査方向における記録データ位置の調整(レジスト調整)は行わず、この記録データのレジスト調整は、後述する図2の記録装置側の記録バッファリング構造制御回路8で行う。そのため、ホストコンピュータでの記録データの生成が高速化され、実効的な記録速度の高速化を図ることが可能となる。
<記録制御部の構成>
図2は、本発明にかかる記録装置の記録制御部の構成を示すブロック図である。同図に於いて、1はインターフェース信号線S1を介してホストコンピュータ(不図示)から転送されてくるデータを受信し、その受信したデータの中から、記録装置の動作に必要なデータ及び記録データを抽出して一旦蓄えるインターフェース制御部(コントローラ)であり、インターフェースコントローラ1で抽出されたデータは信号線S2を介して受信バッファ2に格納される。
受信バッファ2はSRAMもしくはDRAM等の記憶装置(メモリ)で構成され、この受信バッファに蓄えられるデータは図3A及び3Bで示すような構造のものとなる。
図3Aの(a)において受信バッファのデータ構造が示されるように、左から順に「コマンド」(201)、「データ長」(202)、「設定データ」(203)のデータが格納され、これに続いて「コマンド」(204)、「データ長」(205)、「設定データ」(206)のデータが格納されている。これは時系列順に転送されてきたデータが、受信バッファの連続したアドレスに格納されることを示し、ここで示す設定データ206は、例えば給紙の実行や紙送り量の設定、使用する記録ヘッド数等を示す情報であり、この設定データで定められた情報が全て揃って初めて記録装置で記録が可能となる。この後に、記録の対象となる記録データ(209、212)が受信バッファ2に格納される。
この記録データ(209、212)は、記録ヘッドが記録媒体上を1度の走査で記録する際に必要とされるデータ量を、それより少ないデータ量としてブロック単位に分割したデータであり、そのブロック単位で記録データを区切り、順次第1ブロックデータ(209)、第2ブロックデータ(212)、…として格納される。
図3Aの(b)はブロック単位に分割された記録データのデータ構造を詳細に示す図であり、同図で示すように、複数の色のデータ(213〜214)が各々圧縮されたデータとして順次格納される。この圧縮TAG、圧縮データは「色変えコード」(216、217、218)で区切られる。
例えば、シアン、イエロー、マゼンタ、それと黒の4色の記録データを想定した場合、各色毎に縦64ノズルを1列としたノズル列が走査方向に2列ずつ配列する記録ヘッドを用いると、各ノズル列単位のデータが1つの色の記録データを構成することになるのでノズル2列が4色分、すなわち、圧縮された第1色から第8色の記録データが一つのブロックデータ内に記録データとして格納される。このノズル列の各ノズルは、記録媒体の搬送方向に並んでいる。例えば、第1色と第2色がシアンに対応する記録データ、第3色と第4色はマゼンタに対応する記録データ、第5色と第6色はイエローに対応する記録データ、第7色と第8色は黒に対応する記録データとなる。
図4は記録データを保持する記録バッファのデータ構造を示す図である。例えば1回の走査で最大約8インチの走査方向の長さを記録する場合、1つのブロックデータが走査方向に約1インチの記録ができるサイズとすると、トータル8ブロックの記録データを記録すれば、1走査分の画像が完成することになる。第1ブロックから第8ブロックは記録ヘッドの走査方向に配置され、各ブロックデータには、第1色のデータから第8色のデータが格納される。各ブロック内に格納される各色の記録データの長さは記録ヘッドのノズル数に対応するものである。
説明を図2に戻し、各制御ブロックの説明を続ける。受信バッファ2に格納されるデータのうち、記録装置の制御用の設定値である「コマンド」、「データ長」、「設定データ」は、インターフェースコントローラ1から信号線S902を介してCPU9により読み出され、図中にある各部制御回路(7、8)に設定される(S903、S907)。CPU9は読み出したデータ(図3A(a)の201〜208に相当するデータ)を解釈し、その結果に従って記録装置の全体的な記録制御を統括する。一方、CPU9は記録データの処理に関してはデータ解凍ブロック55を起動して処理を実行させるものとする。
データ解凍ブロック55は受信バッファ2から、図3(b)で示されるように「圧縮TAG」と「データ(圧縮データ)」及び「色変えコード」の3種類のデータを読み出し、これらのデータに基づきデータの展開制御を実行する。本実施形態ではデータの圧縮/解凍方法としてPackBits圧縮を用いたので、圧縮TAGが8ビットで00hから7Fhまでの値の場合、非連続なデータが1から128個データ領域に有るとして処理し、圧縮TAGが8ビットでFFhから81hまでの値の場合、次の1バイトデータを連続した2から128個のデータに解凍する処理を行う。なお、データの読出し処理において、80hを読み出した場合は色変えコードとして処理する。解凍したデータを信号線S4aを介して、画像変換ブロック54に送る。この画像変換ブロックにてHV変換がなされ、信号線S4bを介してHV変換されたデータが記録バッファ4に格納される。
記録バッファ4には解凍された記録データが図4に示すデータ構造で格納される。記録バッファ4の先頭アドレスには第1ブロックの第1色のデータの先頭データが書き込まれ、その後に続くデータは、アドレスを適宜変更しながら順次書き込まれる。記録バッファのアドレスに一つの色のデータとして格納できる領域は、最初にCPU9が読み込んだ設定データで決定され、その値以上のデータは書き込めないので記録データを圧縮する際には、その設定データに従ったデータサイズの制限が加えられることになる。色変えコードを検出した後のデータは第2色のデータの先頭番地から順次書き込まれる。このアドレスデータの制御は後に説明する記録バッファリング制御構造回路8が実行することになる。
この書き込みを第1ブロックの第1色のデータから第8色のデータまで繰り返し、第8色のデータの書き込みを終えて色変えコードを検知すると、第1ブロックのデータが全て書き込み終えたことになる。データ解凍ブロック55はデータの展開動作を終了し、CPU9に対しブロック1個分のデータの展開が完成したことを割込み(S906)で伝え、CPU9からの次のデータ展開の起動を待つ。
記録バッファ4上に複数ブロックの記録データが揃った段階で、CPU9は記録動作を開始すべくキャリッジモータ(図1の108)を動作させ、記録ヘッド6を搭載したキャリッジを走査させながら、記録データをキャリッジエンコーダ(CRエンコーダ)10に同期して転送し、記録することで紙面上(記録媒体に)に画像を完成させることができる。記録ヘッド6が主走査方向に走査した後、搬送手段が記録媒体を副走査方向に搬送する。こうして、記録ヘッドの走査と、記録媒体の搬送を繰り返し行って、1ページ分の画像の記録を行う。
記録データ生成ブロック5は、記録バッファ4上に有る記録データの各ブロック構造を、CPU9から指定された値に従って、CRエンコーダ10に同期したタイミングで信号線S5を介して読み出し、記録ヘッド6が記録できるデータ構造に変換しながら信号線S6に出力していく。この記録データ生成ブロック5は後で述べる記録バッファ内のブロック幅(ブロックの長さを示す。)の情報、ブロックの各色の高さ(各色のデータの「ラスター数」という。)についての情報を保持する。
尚、記録バッファ4から読み出されたデータ領域は次の記録データを蓄えるために、零クリアされる。
<受信バッファの書き込み、読み込み制御>
以上説明したように受信バッファ2には、インターフェースコントローラ1がデータを書き込み、データ解凍ブロック55が記録データのみを読み出すが、その書き込みアドレスと読み出しアドレスを制御しているのが受信バッファリング構造制御回路7である。受信バッファリング構造制御回路7は受信バッファ2の先頭アドレスと最終アドレス、それと書き込みアドレスと読み出しアドレスの管理を行っている。
受信バッファリング構造制御回路7はインターフェースコントローラ1から受信する書き込み要求信号(S701)を受け付け毎に1アドレスずつ加算し、これを書き込みアドレスの情報として受信バッファ2に出力する(S702)。そして、受信バッファリング構造制御回路7は受信バッファ2の最終アドレスに達した場合に書き込みアドレスを受信バッファ2の先頭のアドレスに戻す制御を行う。
また、書き込みアドレスが読み出しアドレスに到達(一致)した場合、受信バッファ2がデータでいっぱいになり、次のデータを書き込めない旨をインターフェースコントローラ1に信号線S703を介して通信する。
このとき同時にCPU9に対しても信号線S904の割込み信号により、受信バッファ2はデータの書き込みができない状態であることを知らせる。受信バッファ2の構造はCPU9が信号線S903のバスを用いて内部のレジスタに書き込むことで設定することができる。
読み出しアドレスは、CPU9が受信バッファリング構造制御回路7の中に有るデータリード用レジスタを介して直接に受信バッファ2の中のデータを読み出す場合と、データ解凍ブロック55がデータ読み出し要求信号線S705を介して要求した場合に、読み出しアドレスとして信号線S706を介して1アドレスずつ加算されて受信バッファ2に出力される。
受信バッファリング構造制御回路7は読み出しアドレスが最終アドレスに達した場合、読み出しアドレスを受信バッファ2の先頭アドレスに戻す制御を行う。また読み出しアドレスが書き込みアドレスに到達(一致)した場合、受信バッファ上からデータがなくなったので、次のデータを読み出せない旨をデータ解凍ブロックに信号線S704を介して通信する。このとき同時にCPU9に対しても信号線S904の割込み信号線で、受信バッファ2上には、読み出すデータが無い旨を知らせる。
以上が受信バッファ2に対するデータの書き込み、読み取り制御の処理内容である。次に、この受信バッファ2から読み出され、展開処理されたデータを記録バッファに書き込みし、あるいはその記録バッファからデータを読み取るための処理内容を説明する。
<記録バッファの書き込み、読み取り制御>
記録バッファ4に対して、画像変換ブロック54が記録データを書き込み、記録データ生成ブロック5がその書き込まれた記録データを読み出すが、その際、書き込みアドレスと読み出しアドレスを制御しているのが記録バッファリング構造制御回路8である。
記録バッファリング構造制御回路8は記録バッファの先頭アドレスと、最終アドレス、それと書き込みアドレスと、読み出しアドレスの管理を行っている。
記録バッファリング構造制御回路8は画像変換ブロック54から受信する書き込み要求信号(S801)を受け付ける毎にアドレスを適宜変更し、これを書き込みアドレスの情報として記録バッファ4に出力する(S802)。そして、記録バッファリング構造制御回路8は記録バッファ4の最終アドレスに達した場合に書き込みアドレスを記録バッファ4の先頭のアドレスに戻す制御を行う。
また、書き込みアドレスが読み出しアドレスに到達(一致)した場合、記録バッファ4が記録データでいっぱいになり、次の記録データを書き込めない旨を画像変換ブロック54に信号線S809を介して通信する。
また、データ解凍ブロック55が色変えコードを受信バッファ2から読み込んだ場合、データ解凍ブロック55は信号線S541を介して画像変換ブロック54にその旨を通信し、画像変換ブロックは、信号線S807を介して、記録バッファリング構造制御回路に出力する。記録バッファリング構造制御回路8は次の色のデータを格納する先頭番地を信号線S802から出力するように準備する。記録バッファ4の構造はCPU9が信号線S907のバスを用いて内部のレジスタに書き込むことで設定することができる。
読み出しアドレスは、記録データ生成ブロック5が各色毎にデータ読み出し要求信号線S805を介して要求すると、読み出しアドレスとして信号線S806を介して1アドレスずつ加算されて記録バッファ4に出力される。
記録バッファリング構造制御回路8は読み出しアドレスが最終アドレスに達した場合、読み出しアドレスを記録バッファ4の先頭アドレスに戻す制御を行う。
記録データ生成ブロック5は現在読み出している記録データブロックのデータ構造をCPU9から信号線S908のバスを介して、記録データ生成ブロック5内部にあるレジスタに設定する。設定された記録データブロック構造内にある記録データを全て読み出すと終了信号S909をCPU9に対し割り込み信号として通信する。この際、記録バッファ4上に次の記録データブロックがすでに展開されているならば、その記録データブロック構造をレジスタに書き込む。
記録バッファ4は1記録データブロック単位でデータの書き込みを制御しており、書き込まれていない記録データブロックに対し記録データ生成ブロックを起動しないので、記録バッファの読み出しアドレスが書き込みアドレスを越えることは起きない。11は、バッファ構造情報メモリである。これは、記録バッファの制御用の作業用メモリ(ワークRAM)で、後で述べる記録バッファ構造についての情報を一時的に格納する領域である。
<記録バッファリング構造制御回路の説明>
記録バッファリング構造制御回路の説明を図5及び図8を用いて説明する。記録バッファリング構造制御回路の処理において、図5は書き込みアドレス制御を中心に説明する図であり、図8は記録バッファリング構造制御回路8の読み出しアドレス制御を中心に説明する図である。
記録バッファリング構造制御回路8は読み出し制御部8Aと書き込みアドレス制御部8Bで構成されている。また、記録バッファ4のバッファ領域は、記録バッファの先頭のアドレスをtop_adrで示し、最終アドレスをbottom_adrで表示する。この先頭アドレスは書き込みアドレス制御部8B内のレジスタ803に格納され、最終アドレスは書き込みアドレス制御部8B内のレジスタ804に格納される。
記録バッファ4に示される「RP」はリードポインタを示し、「WP」はライトポインタを示す。記録バッファの中のRPとWPの間のハッチング部分は記録データが格納されていることを表している。また、記録バッファ4の白色部分は記録データが格納されていないことを表す。
読み出しアドレス制御部8A内の802は、データの読み出しアドレス(RP:リードポインタ)を示すレジスタである。805から812は第1色から第8色について、各色の情報を格納するレジスタである。ここで、レジスタ805には第1色目データのバッファの高さ情報(1st_hight)と、第1色のデータの有り無しを示す情報(1_color_bit)と、第1色目のレジスト調整値情報(1_reg_wnum)が格納され、同様にレジスタ806〜812についても第2色〜第8色について同様の情報が設定される。
なお、レジスト調整値情報は、ノズル列間のラスタ方向における相対位置に対応した値となるので、1つのノズル列に対しては常に同じ値となる。すなわち、ノズル列毎にレジスト調整値情報を持っている。例えば、第1ノズル列を基準とすると、第1色のデータに対するレジスト調整値情報は0、第2ノズル列と第1ノズル列との距離がAカラム分であれば、第2色のデータに対するレジスト調整値情報はAとなる。また、第3ノズル列と第1ノズル列との距離がBカラム分であれば、第3色のデータに対するレジスト調整値情報はBとなる。このように、第1色のデータを記録する第1ノズル列の位置を基準にして各ノズル列との相対距離に対応して、第2色のデータから第8色のデータのレジスト調整値情報が設定される。
813はブロックの幅情報(block_width)を設定するレジスタであり、この幅情報は第1色〜第8色までブロック単位で、共通して使われる値である。
上述のブロックの高さ情報、幅情報及びレジスト調整値情報は、図3(a)で説明した設定データに含まれる情報である。
815は次のブロックデータのアドレスを格納するレジスタであり、このアドレスは各色に関する情報を格納するレジスタ805からレジスタ812のうちのいずれかの値と、ブロックデータに関する幅の情報を格納するレジスタ813の値を用いて決定することができる。書き込み制御部8Bは、書き込み対象となる第1ブロックデータに関する設定情報に従い、次に書き込み対象となる第2ブロックデータの書き込み開始アドレスを決定し、このレジスタに格納する。
817はレジスト調整分の書き込み開始アドレスを格納するレジスタであり、このアドレスは各色に関する情報を格納するレジスタ805からレジスタ812のうち全ての値と、ブロックデータに関する幅の情報を格納するレジスタ813の値を用いて決定することができる。書き込み制御部8Bは、書き込み対象となる第1ブロックデータに関する設定情報に従い、次に書き込み対象となるレジスト調整分の書き込み開始アドレスを決定し、このレジスタに格納する。
なお、書き込み制御部8Bは、例えば第1色のデータについて説明すると、第1ブロックのデータに対応する記録データの書き込み完了前に、第1ブロックのデータのレジスト調整幅分を反映した第2ブロックでの書き込み開始アドレス情報を決定している。他の色のデータ(第2色のデータ〜第8色のデータ)についても同様である。
書き込み制御部8Bは、第1ブロックデータに対応する記録データの書き込み完了前に、第1ブロックデータのレジスト幅分に対する書き込みアドレス情報を、決定した書き込み開始アドレスに更新することができる。
また、816はデータの書き込みアドレス(WP)を格納するレジスタである。
814はアドレス制御レジスタで、書き込みアドレス(WP)が読み出しアドレス(RP)を追い越さないように(両アドレスが重複したアドレスを指定しないように)書き込み処理、読み出し処理の管理をする。
<記録バッファへのデータの格納(図6)>
図6は、記録バッファ4に記録データがどのように格納されるか説明する図である。図6(a)では、第1色のデータとして縦に順に4ワード分ずつ、格納される状態を示す。ここで1ワードが16画素分に対応している。レジスタに情報を格納するアドレスは1ずつインクリメントされるものとすると、ライトポインタ(WP)は1→2→3→4→5→…とカウントされる。
例えば、図6(a)のレジスタの設定は、バッファの高さ情報(ラスター数)の値(1st_hight)は「4」であり、データの有り無し情報(1_color_bit)の値は「1(有り)」である。レジスタ813(ブロックの幅情報:block_width)の値は「28」である。
図6(b)は、第2色のデータがある場合に、記録バッファ4へのデータの書き込みを示す図である。第1色の格納領域に全てデータを格納した後、矢印のようにライトポインタ(WP)を第2色の先頭アドレスへ移動し、第2色のデータの格納を行う。図6(c)では、第2色のデータが無い場合、第1色のデータの格納領域に続き、第3色のデータが格納されることを示す。この場合、図5で示すレジスタ806の第2色のデータの有り無し情報(2_color_bit)は、データ無しを示す「0(無し)」である。あるいは、バッファの高さ情報(2nd_hight)が「0」であれば、データが無いことを示すので、この情報を用いてもかまわない。あるいはデータの有り無し情報とバッファの高さ情報との論理積演算(AND処理)を行ってその結果を用いて判断しても良い。
図6(d)では、第2色のデータについて、書き込み位置を示すe1(WP:ライトポインタ)は、読み出し位置を示すe2(RP:リードポインタ)の手前で書き込みを停止することを示す。これは、読み出しが終了していない位置には、データの書き込みを禁止して、上書きをすることを防ぐ制御を行うものである。以上の制御は、第3色から第8色の領域についても同様である。
<記録バッファへのデータの格納処理>
図9及び10は、レジスト調整値がゼロでない時に、記録バッファ4に記録データがどのように格納されるか説明する図である。図9及び10では、第1色のデータとして縦に順に3ワード分ずつ、格納されている状態を示す。ここで1ワードが16画素分に対応している。
ここで、図9はデータが入力される順番を示し、図10は実際に書き込まれるアドレスを示している図である。
また、図9及び10の斜線部は第1色目のレジスト調整値(6)を示している。実際の書き込み開始位置は図9に示す位置からになるが、実アドレスは図10に示す通り、レジスト調整値に対応してスキップした位置(例えば左から7つ目の24)から始まることになる。
また、図9及び10の2つの図は対応しているので、例えば1番目に書き込まれるデータのアドレスは、図10に示すように24となり、2番目に書き込まれるデータのアドレスは図10に示すように2Aとなる。
ここで、図9及び10のレジスタの設定は、バッファの高さ情報(ラスター数)の値(1st_hight)は「3」であり、データの有り無し情報の値(1_color_bit)は「1(有り)」である。レジスタ813(ブロックの幅情報:block_width)の値は「16」である。第1色目のレジスト調整値(1_reg_wnum)は6で第2色目のレジスト調整値(2_reg_wnum)は3である。
この時、例えば図9において、レジスタに情報を格納するアドレスを右に1ずつインクリメントすると、図10においてライトポインタ(WP)の実アドレスは0→6→C→12→18→…とカウントアップされることになる。
ここで、データを書き込む順番は、図9及び図10の様に16個単位で一つ下の段に行っても構わないし、データを受信する順序により、ブロック幅まで進んで後(10個単位)一つ下の段に移っても構わない(図9で、10の位置の次に17の位置に進む)。
また、図9に示す通りに、第1色のデータについて、10個目までデータが書き込まれた(格納された)後、11個目のデータを書き込む先は、次のブロック(第2ブロック)の先頭になる。これはレジスト調整を行うことによって、現在のブロック(第1ブロック)に入りきらなくなったデータを書き込む(格納する)ためである。ここでは、第2ブロックの先頭に格納されるデータが11個目のデータであることは、レジスタ813の値「16」とレジスタ805のレジスト調整値「6」から、16−6+1=11より求められる。データを格納するカウンタを設け、そのカウンタが10になれば、第2ブロックの先頭のアドレスを指定する構成にすればよい。
なお、図9において、第1色のデータの11個目のデータが格納されるアドレスは、第1ブロックに格納される色の数(2)と各色の高さ(3)、ブロックの幅(16)に基づいて求められる。
レジスト調整分の書き込みが終了(図9で16番目のデータ書き込みが終了)すると、17個目のデータは、現在のブロック(第1ブロック)から書かれることになる。これは実際のアドレスが図10で16個目がDEで、17個目が26になると言うことである。
この様にして、現在のブロック(第1ブロック)と次のブロック(第2ブロック)との間を行き来することで、レジスト調整を行いながら、第1色目のデータを書き込んでいく。
第1色目のデータが全て書き終わると、同様の処理を第1ブロックの第2色目以降に行っていく。
また、レジスタに情報を格納するアドレスは、図6のように縦に1ずつインクリメントさせて、ライトポインタ(WP)の実アドレスを0→2→4→6→8→…とカウントアップさせてもよい。
ここで、図9においてレジスタに情報を格納するアドレスを縦に1ずつインクリメントさせないのは、画像変換ブロック3からのデータや、ホストからのデータの変更に柔軟に対応するためである。
例えば、画像変換ブロック3を使用しない時には、ホストからの記録データは、従来通りレジスタに情報を格納するアドレスは図6Aのように1ずつインクリメントさせて、ライトポインタ(WP)は1→2→3→4→5→…とカウントするように対応している。
しかし、画像変換ブロック3を使用して例えばHV変換等を行うと、HV変換を行った後の記録記録データは、レジスタに情報を格納するアドレスは図6のように1ずつインクリメントさせて、ライトポインタ(WP)を1→2→3→4→5→…とカウントアップする事が出来なくなる。
その為、アドレスのインクリメント量に自由度を持たせることで、ホストからの様々なデータ転送方式にも対応でき、また画像変換ブロック3でのデータ変換にも対応することが出来るようになる。
図11A、図11B、図11Cは、レジスト調整に関連したデータの状態を模式的に示す図である。図中の数字はいずれもブロック番号を示している。図11Aは、従来例のようにホストコンピュータ(プリンタドライバ)で全てのレジスト調整を行った場合の転送データを示している。図11Bは、本実施形態でホストコンピュータから送信され記録装置が受信したデータを示している。このデータはレジスト調整は行われていない。図11Cは、図11Bのようなデータに対して記録装置側でレジスト調整され、記録装置(インクジェット記録装置)に設けられている記録バッファ4に格納された状態を示している。
図11Aと図11Cに示されたデータを記録媒体へ記録すると、いずれもレジスト調整がなされているため同様な記録結果となるが、図11Cのデータは図11Bの受信データに対して記録装置側でレジスト調整を行ったため、レジスト調整データにより、ラスタ方向(図11Aから11Cにおける左右の方向)に記録データの格納される位置がずれ、その結果として図11Bのデータよりもブロック数が1つ増えている。
このようにホストコンピュータから送信したブロック数と記録装置の記録バッファに書き込まれたブロック数が異なると、論理的な矛盾が生じてしまう。これは、ホストコンピュータから送信したブロック数に基づいて、ホストコンピュータから記録装置に対して記録幅(走査方向)に関する情報を出力するからである。記録装置は、この情報に基づいて記録動作を行うので、ブロック数について異なる量だけ記録がなされない。例えば、ホストコンピュータから記録装置に3ブロック分の記録データを出力し、記録装置は、レジスト調整を行って4ブロックに記録データを格納した場合、記録は3ブロック分しかなされず、1ブロックが記録されないのである。
本実施形態では、この様な矛盾が生じないように、図11Bに示すようなデータをホストコンピュータから転送する場合、1ブロック余分なデータを付加して記録装置に送信し、ホストコンピュータと記録装置(記録バッファ)とのブロック数が同じとなるようにする。
図12A、図12B、図12Cは、本実施形態におけるレジスト調整に関連したデータの状態を、図11A〜図11Cと同様に示す図である。図12Aは、従来例のようにホストコンピュータ(プリンタドライバ)で全てのレジスト調整を行った場合の転送データを示しており、図11Aと同様な構成となる。図12Bは、本実施形態でホストコンピュータから送信され記録装置が受信したデータを示している。しかし、このデータに対してはレジスト調整は行われていない。図12Cは、図12Bのようなデータに対して記録装置側でレジスト調整され、記録バッファに格納された状態を示している。
ここで、図11B及び図11Cに示したデータと、図12B及び図12Cに示したデータとを比較すると、図11Bの受信データに対してレジスト調整を行った図11Cのデータのブロック数は1つ増えているが、図12Bの受信データに対してレジスト調整を行った図12Cのデータのブロック数は増えていないことがわかる。ずなわち、ホストコンピュータから図12Bのようなデータを転送する場合には、1ブロック余分に送信する必要はない。
図11B及び図11Cに関連して、1ブロック余分に転送する場合についてもう少し詳しく説明する。図13Aは、1ブロック余分に転送する場合のデータ構成を示す図である。この場合、留意すべきは1ブロックのサイズ(走査方向のブロックサイズ)と、転送される記録データの最後のブロックについてのデータ量(図11B及び11Cでは3つめのブロックについての走査方向のデータサイズ、図12では4つめのブロックについての走査方向のデータサイズ)、レジスト調整量(例えばカラム単位の値)の関係である。
例えば、
走査方向のブロックサイズ<走査方向のデータサイズ+レジスト調整量
であれば、図11Cに示すように、ブロック数を1つ増やす必要がある。
一方、
走査方向のブロックサイズ>走査方向のデータサイズ+レジスト調整量
であれば、図12Cに示すように、ブロック数を増やす必要はない。
このように、ホストコンピュータにおいて、走査方向のデータサイズとレジスト調整量の和が走査方向のブロックサイズより大きくなるか否かを判断し、この判断結果に応じて、ブロック数を増やす処理を行う。
ここで、図14は、ホストコンピュータ1401と記録装置1402の概略制御構成を示す図である。
ホストコンピュータ1401から記録装置1402へ記録データがインターフェース1405を介して転送される。
ホストコンピュータ1401においてなされる処理の一例を以下に述べる。記録データを生成するプリンタドライバーはCPU1403により実行される。そして、これらの記録データはブロック単位で生成された後、所定の圧縮方法で圧縮され、記録装置1402に対して出力処理を行う。
記憶手段1404は、生成した記録データ、あるいは圧縮されたデータを一時的に保存するために用いられる。また、記憶手段1404には生成した記録データのブロック数(データ量)の数を保持するカウンタを備えている。
このCPU1403は、上述したように、走査方向のデータサイズとレジスト調整量の和が走査方向のブロックサイズより大きくなるか否かを判断し、この判断結果に応じて、ブロック数を増やす処理を行う。このため、CPU1403は予め、走査方向のブロックサイズ、レジスト調整量についての情報を記録装置から取得する。
図16は、データ生成についての処理を示すフローチャートである。ステップS1601において、ブロック単位でデータを生成する。ブロック単位のデータを生成するたびに、生成するブロック数をカウントする。そして、ステップS1602において、最後のブロック(記録ヘッドの走査方向の最も下流のブロック)であるか否かを判定する。もし最後のブロックであればS1603にて、ブロック付加処理を行う。このブロック付加処理は図15において説明する。図16で述べた処理は、走査毎に走査方向のデータ量は異なるので、走査毎に行なわれる。
そして、1走査の記録幅についての情報を前もって取得することで、記録する生成ブロックの数が得られ、この数がS1602の判断の閾値として使われる。
その処理について図15のフローチャートを用いて詳細に説明する。ステップS1501において、レジスト調整量の情報とブロックサイズ(主走査方向)について情報を取得する。ステップS1502において、最後のブロックに格納されるデータサイズ(走査方向のデータサイズ)を取得する。ステップS1503において、最後のブロックについてのデータサイズ(走査方向)とレジスト調整量の情報との和と走査方向のブロックサイズとを比較する。なお、ここで、データサイズ、レジスト調整量の情報、ブロックサイズは例えばカラム数である。
そして、ステップS1503において、走査方向のブロックサイズの方が小さければ(NO)、ステップS1504においてブロックを1つ追加する。走査方向のブロックサイズの方が大きければ(YES)、終了する。
なお、この判断は、各色に対応する記録データについて行う。これは、走査方向のブロックサイズは各色について同じであるが、レジスト調整量と最後のブロックについての走査方向のデータサイズは色毎に異なる場合があるからである。そして、1色でもブロックを追加する必要があれば、他の色についてもブロックの追加を行う。
次に、各ブロックのデータに付加される色変えコードに説明する。上記で図3Aの(b)に関連して説明したが、記録データの区切りを判別するために、各ブロックに色変えコードが挿入されている。
そして、図3Aの(b)に示すように1つの色についての情報として、圧縮TAGや圧縮されたデータで構成されている。そして、色変えコードは、これらのデータの後に付加されている。
しかし、ステップS1504でブロックを付加する場合には、これらの圧縮TAGや圧縮されたデータはなく、色変えコード(232、233、239)のみが最後のブロック(第nブロックデータ)231に続いて付加される。ここでは、色数は8であるので、8つの色変えコードが付加されてる。図3Bの(c)は、このコードを受信した場合の第nブロックデータ以降の状態を示す図である。
これにより、記録装置は、色変えコードのみが付加されているので、記録装置はレジスト調整のために記録データがブロックからはみ出すために、ブロックが付加して格納する処理を行う指示であることを認識(判断)でき、記録バッファにレジスト調整量に基づいて記録データを格納する。
なお、ブロックを付加する場合の他の例として、図3Bの(d)に示すように例えば色毎に1バイトのヌルデータ(242、244、…、255)のみを含み、このヌルデータに色変えコード(243、245、…、256)が付加する形態でも構わない。これにより、記録装置は、圧縮TAGが含まれず1バイトのヌルデータのみで構成されていることで、ブロックが付加する指示があることを容易に認識できる。
あるいは、色変えコードを付加するのではなく、図3Bの(e)に示すように最後のブロックデータ(第nブロック)261の後にブロックの付加の指示を示すコマンド262を追加してもかまない。
次に、上述したブロックを付加する場合についてホストコンピュータにおける記録データの格納処理についての補足説明を行う。図13Aにおいて、(a)は圧縮前のデータを示し、(b)は圧縮前のデータにレジスト調整幅を加えた状態を示し、(c)は増えたブロックの後端を基準としたレジスト調整幅を示し、(d)は最後の記録データが格納されるべき位置を示している。なお、(b)のブロックは第nブロック、(c)のブロックは第n+1ブロックとする。
この場合、最後の記録データの位置は、(d)のクロスハッチングした領域にある必要がある。図3Bの(d)を用いて説明した場合は、このクロスハッチングした領域にある。これは、(d)の斜線部分の領域に最後の記録データが格納されると、レジスト調整することによってブロックが更に1つ増えてしまうからである。
図13Bも図13Aと同様に、(a)は圧縮前のデータを示し、(b)は圧縮前のデータにレジスト調整幅を加えた状態を示し、(c)は増えたブロックの後端を基準としたレジスト調整幅を示し、(d)は色変えコード(COL_CNG)が挿入されるべき位置を示している。図13Aと異なるのは、1ブロック余分に転送しない点である。
この場合にも、(d)のクロスハッチングされた領域以外に最後の記録データが格納されていると、レジスト調整することによって1ブロック増えてしまうため、色変えコードの位置は、(d)に示すように、(c)に示された後端を基準にしたレジスト調整幅の境界より前にある必要がある。
図7を参照して、レジスト調整を行う必要がない場合における記録データの格納について説明する。
図7の(a)は、記録バッファに書き込まれた1回の走査(スキャン)に対応した記録データの例を示す図である。図示した例では第4ブロックに対応する領域に画像データがなく、記録バッファには第4ブロックは確保されていない。
また、図7(a)で、第2ブロックに格納されるデータには第3色のデータ及び第4色のデータはないので、これらの分をつめて第5色のデータ〜第8色のデータが格納されている。第3ブロックには、第1色のデータ、第2色のデータのみが格納され、第3色以降のデータは格納されていない。第2ブロックと第3ブロックのハッチングされたは部分は、データが無いためにバッファの割り当てがされていないことを示す。従って、第2ブロックにおける第8色のデータの最終アドレスの次のアドレスは、第3ブロックにおける第1色のデータの先頭アドレスである。このように、レジスト調整を行う必要がない場合には、画像データを詰めて記録バッファに格納することができるので、記録バッファを効率良く使用することができる。
従って、例えば、記録データが無い領域に対しても記録バッファの領域を一律に格納した場合に記録バッファに1走査分のデータすべてを格納する領域を確保できない場合でも、画像データの有無をレジスタに格納されている色のデータの有無の情報に基づきデータの格納を制御することで1走査分のデータを格納することができる。
<記録バッファからのデータの読み出し>
以下に、図8を参照して記録バッファからのデータの読み出し処理について説明する。図8において、左側は記録バッファリング構造制御回路8の読み出しアドレス制御部8Aを示し、右側は記録バッファ4を示している。
記録バッファ4のバッファ領域は、記録バッファの先頭のアドレスであるtop_adrで表され、最終アドレスはbottom_adrで表される。この先頭アドレスはレジスタ803に格納され、最終アドレスはレジスタ804に格納される。記録バッファに示される「RP」は図5と同様にリードポインタであり、「WP」はライトポインタである。記録バッファ4におけるRPとWPの間のハッチング部分は記録データが格納されていることを表し、それ以外の部分は記録データが格納されていないことを表す。
読み出しアドレス制御部8A内の802は、データの読み出しアドレス(RP:リードポインタ)を示すレジスタであり、破線の枠で囲った900は第1レジスタ群、実線の枠で囲った901は第2レジスタ群である。
第1ブロックから第8ブロックの記録データを記録する場合、例えば、走査の開始時において、第1レジスタ群には第1ブロックについての情報が格納されている。また、第2レジスタ群には、第2ブロックについての情報が格納される。第1ブロックの記録が終了すると、第1レジスタ群900には第2レジスタ群901の情報がコピーされて格納される。そして第2レジスタ群901には、第3ブロックの情報が格納される。以下、最後の第8ブロックのデータが格納されるまで同様の処理が順に行われる。そして、次の走査開始時には、再び、第1レジスタ群には第1ブロックの情報が格納され、第2レジスタ群には第2ブロックの情報が格納される。
第1レジスタ群が示す第nブロックの記録が終了した時、第2レジスタ群に第n+1ブロックの情報が格納されていない場合は、第n+1ブロックの記録データがまだ準備できていないので、第2レジスタ群の情報は第1レジスタ群にコピーされず、加えて記録バッファからのデータ読み出しを停止する。
第1レジスタ群内にあるレジスタ819は、第1色についての高さ情報(1st_hight)と色のデータの有り無し情報(1_color_bit)を設定するレジスタである。各レジスタ822、824、826、828、830、832、834は第2色〜第8色について同様に高さ情報と色のデータの有り無し情報を設定するレジスタである。
820は各ブロックデータの幅情報(block_width)を格納するレジスタである。この幅情報は第1色〜第8色までブロック単位で、共通して使われる値である。
レジスタ818は第1色の読み出しアドレス(1st_color_adr)を格納するレジスタである。第1色のデータが格納されている記録バッファ819から読み出されるとアドレスが更新される。例えば図9に示すように、第1色のデータの内、1→2→3→4と1カラム分のデータが読み出される。レジスタ821、823、825、827、829、831、833はそれぞれ第2色〜第8色の読み出しアドレスを格納するレジスタであり、第2色〜第8色のデータも第1色のデータと同様に順に1カラム分のデータが読み出される。
記録バッファ4に格納されるデータは複数の色のデータを含むため、例えば、第1色、第2色、…のデータが混在した場合、各色単位のデータを格納するためのアドレスは、連続していないものとなる。そのため、読み出しアドレスのレジスタが1つであれば、例えば第1色の記録バッファ4のアドレスの次に第2色の記録バッファ1のアドレス読み出しを行う際、アドレス計算をする必要があるが、記録バッファ4に各色ごとに読み出しアドレスを格納するレジスタを用意することで、カラム単位での読み出しを行う際のアドレス計算を省くことができる。
817はアドレス制御レジスタである。読み出しアドレスは、記録データ生成ブロック5が各色毎にデータ読み出し要求信号線S805を介して要求すると、アドレス制御レジスタ817は読み出しアドレスとして信号線S806を介して1アドレスずつ加算して記録バッファ4に出力する。
835は次のブロックのアドレスを格納するレジスタである。現在読み出されているブロックが第1ブロックであれば、このレジスタには第2ブロックの先頭のアドレスが格納される。このレジスタの値は、現在読み出されているブロックデータの読み出しが終了すると、レジスタ802にコピーされる。これにより、次のブロックデータの読み出しがスムーズにできる。
レジスタ836は第1色から第8色のうち、読み出す順序を特定するための情報を格納するテーブルである。このテーブルに設定された値によって記録バッファからデータを読み出す順序を自由に設定することができる。例えば、第1色→第2色→…→第8色の順に読み出すことができる。また、値を変えて、第1色→第2色→第5色→第6色→第7色→第8色のように第3色、第4色のデータの読み出しをスキップすることもできる。これによって、格納されていない色の記録データについては、正確に読みとばすことができる。
第2レジスタ群901は次のブロックデータに関する情報を格納するバッファの集まりである。第1レジスタ群の各レジスタが読まれたら、第2レジスタ群の各レジスタに設定されている値が、第1レジスタ群の対応するレジスタに設定される。例えば、レジスタ838に設定されている値がレジスタ819に設定される。レジスタ839〜845は、次のブロックデータにおける第2色〜第8色のデータについて同様の情報が設定されるレジスタである。
レジスタ838(819)には第1色目のデータのバッファの高さ情報と、第1色のデータの有り無しを示す情報が格納される。
846(820)はブロックの幅情報を設定するレジスタである。この幅情報は第1色〜第8色までブロック単位で、共通して使われる値である。
レジスタ878は、先に設定したブロックのサイズとブロックのサイズが同じであるか否かを表す情報(same_type)を格納するレジスタであり、ブロックのサイズが同じ場合、この値を「1」とすることで、第1レジスタ群に同じ値を容易に再設定することができる。この場合、レジスタ838〜846の設定を省くことができる。一方、レジスタ878の値が「0」の場合には、各レジスタ838〜846にそれぞれの値が設定される。
以上説明したように好適な一実施形態によればインクジェット記録装置において、記録ヘッドの走査方向におけるレジスト調整を行う機能を記録装置側に持たせることで、ホストコンピュータでの記録データの生成を高速化することができ、ホストコンピュータで記録が指示されてから記録装置が記録を実行するまでの時間を短縮することができる。
<変形例>
上記の実施形態では、各色のブロックはいずれも同じ幅であったが、ブロック毎に異なった幅を設定しても良い。
図7の(b)は、上記の実施形態における図7の(a)より、更にメモリを有効に使う場合を説明した図である。図7(a)では、記録領域を複数に分割した各ブロックの走査方向の幅情報はどのブロックも等しかったが、ブロック内に記録するべき画像データが無い場合は、必要最低限の幅情報を持てばよい。例えば、図7(a)の第3ブロックと第5ブロックのデータ量が他のブロックよりも少ないと想定すると、第3ブロックと第5ブロックの幅を、記録データの量に応じて短くすることができる。
この場合、本変形例においては、幅がフルサイズのブロックとその半分のサイズのブロックとの2つのサイズのブロックを用いて制御する。幅が半分のサイズのブロックは色変えコードを区切りとして使用し、フルサイズのブロックは所定長であるので、色変えコードを使用しない。つまり、受信バッファのデータを記録バッファに書き込む(転送する)際に、色変えコードが半分のブロックサイズを超えても現れない場合は、フルサイズのブロックであると認識する。本例では、第3ブロックと第5ブロックの幅を、記録データ量に応じて、他のブロックの幅の半分とした。
これによって、メモリ容量が少ない場合にも、記録バッファを効率良く使うことができる。例えば、記録バッファが1走査分のデータすべてを格納する領域を確保できない場合でも、1走査分のデータを格納することができる。
なお、この場合、ホスト装置側で、記録データが複数ブロックにまたがってヌルデータが続く場合に、ブロックの幅を異ならせるように記録データを生成すればよい。
<他の実施形態>
なお以上の実施形態では本発明をインクジェット方式に従って記録を行うインクジェット記録装置に適用した場合を例に挙げて説明したが、本発明は複数の記録素子が配列された記録ヘッドを記録素子の配列方向を交差する方向に走査して記録を行う記録装置であれば、他の方式の記録装置にも適用できる。
以上の実施形態は、特にインクジェット記録方式の中でも、インク吐出を行わせるために利用されるエネルギとして熱エネルギを発生する手段(例えば電気熱変換体やレーザ光等)を備え、前記熱エネルギによりインクの状態変化を生起させる方式を用いることにより記録の高密度化、高精細化が達成できる。
その代表的な構成や原理については、例えば、米国特許第4723129号明細書、同第4740796号明細書に開示されている基本的な原理を用いて行うものが好ましい。この方式はいわゆるオンデマンド型、コンティニュアス型のいずれにも適用可能であるが、特に、オンデマンド型の場合には、液体(インク)が保持されているシートや液路に対応して配置されている電気熱変換体に、記録情報に対応していて核沸騰を越える急速な温度上昇を与える少なくとも1つの駆動信号を印加することによって、電気熱変換体に熱エネルギを発生せしめ、記録ヘッドの熱作用面に膜沸騰を生じさせて、結果的にこの駆動信号に1対1で対応した液体(インク)内の気泡を形成できるので有効である。
この気泡の成長、収縮により吐出用開口を介して液体(インク)を吐出させて、少なくとも1つの滴を形成する。この駆動信号をパルス形状とすると、即時適切に気泡の成長収縮が行われるので、特に応答性に優れた液体(インク)の吐出が達成でき、より好ましい。
さらに、記録装置が記録できる最大記録媒体の幅に対応した長さを有するフルラインタイプの記録ヘッドとしては、上述した明細書に開示されているような複数記録ヘッドの組み合わせによってその長さを満たす構成や、一体的に形成された1個の記録ヘッドとしての構成のいずれでもよい。
加えて、上記の実施形態で説明した記録ヘッド自体に一体的にインクタンクが設けられたカートリッジタイプの記録ヘッドのみならず、装置本体に装着されることで、装置本体との電気的な接続や装置本体からのインクの供給が可能になる交換自在のチップタイプの記録ヘッドを用いてもよい。
また、以上説明した記録装置の構成に、記録ヘッドに対する回復手段、予備的な手段等を付加することは記録動作を一層安定にできるので好ましいものである。これらを具体的に挙げれば、記録ヘッドに対してのキャッピング手段、クリーニング手段、加圧あるいは吸引手段、電気熱変換体あるいはこれとは別の加熱素子あるいはこれらの組み合わせによる予備加熱手段などがある。また、記録とは別の吐出を行う予備吐出モードを備えることも安定した記録を行うために有効である。
さらに、記録装置の記録モードとしては黒色等の主流色のみの記録モードだけではなく、記録ヘッドを一体的に構成するか複数個の組み合わせによってでも良いが、異なる色の複色カラー、または混色によるフルカラーの少なくとも1つを備えた装置とすることもできる。
以上説明した実施の形態においては、インクが液体であることを前提として説明しているが、室温やそれ以下で固化するインクであっても、室温で軟化もしくは液化するものを用いても良く、あるいはインクジェット方式ではインク自体を30°C以上70°C以下の範囲内で温度調整を行ってインクの粘性を安定吐出範囲にあるように温度制御するものが一般的であるから、使用記録信号付与時にインクが液状をなすものであればよい。
さらに加えて、本発明に係る記録装置の形態としては、コンピュータ等の情報処理機器の画像出力端末として一体または別体に設けられるものの他、リーダ等と組み合わせた複写装置、さらには送受信機能を有するファクシミリ装置の形態を取るものであっても良い。
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムを、システム或いは装置に直接或いは遠隔から供給し、そのシステム或いは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。その場合、プログラムの機能を有していれば、形態は、プログラムである必要はない。
本発明の好適な実施形態としてのインクジェット記録装置のカバーを外した状態の外観斜視図である。 図1のインクジェット記録装置の記録制御部の構成を示すブロック図である。 ホストコンピュータから転送され、受信バッファに格納されるデータの構造を示す図である。 ホストコンピュータから転送され、受信バッファに格納されるデータの構造を示す図である。 記録データを保持する記録バッファのデータ構造を示す図である。 記録バッファリング構造制御回路の書き込みアドレス制御を説明する図である。 記録バッファに記録データがどのように格納されるか説明する図である。 記録バッファに書き込まれた1回の走査に対応した記録データの例を示す図である。 記録バッファリング構造制御回路の記録バッファからのデータの読み出し処理について説明する図である。 レジスト調整値がゼロでない時の、データの書き込み順番を説明する図である。 レジスト調整値がゼロでない時の、実アドレスを説明する図である。 レジスト調整に関連したデータの状態を模式的に示す図である。 レジスト調整に関連したデータの状態を模式的に示す図である。 レジスト調整に関連したデータの状態を模式的に示す図である。 レジスト調整に関連したデータの状態を模式的に示す図である。 レジスト調整に関連したデータの状態を模式的に示す図である。 レジスト調整に関連したデータの状態を模式的に示す図である。 レジスト調整による最終ブロックのデータ構成を示す図である。 レジスト調整による最終ブロックのデータ構成を示す図である。 本発明に係るホストコンピュータと記録装置の概略制御構成を示す図である。 ブロック付加処理を示すフローチャートである。 データ生成についての処理を示すフローチャートである。

Claims (6)

  1. 複数の記録素子が配列された記録素子列を複数有する記録ヘッドを、前記配列方向と交差する走査方向に走査させて記録を行う記録装置であって、
    前記記録ヘッドによる一走査の記録を行う場合に前記記録素子列に対応するデータが前記走査方向に複数のブロックに分割された複数のブロックデータと、前記記録素子列と基準となる記録素子列との相対位置を表すレジスト調整値情報と、ブロックデータに含まれるラスタ数及びブロック幅の情報とを、接続されたホスト機器から受信する受信手段と、
    前記分割された複数のブロックデータそれぞれのブロック幅とラスタ数に基づくアドレス長を単位として、前記複数のブロックデータそれぞれが纏めて格納される領域が定められ、前記領域のそれぞれは前記記録素子列に対応するデータ毎に纏めて格納されるように定められている記録バッファと、
    前記受信手段により受信した前記レジスト調整値情報に基づいて、前記記録バッファ上のアドレスを指定して前記ブロックデータを書き込むように制御する書込み制御手段とを備え、
    前記書込み制御手段は、前記ブロックデータのうち、第1のラスタに対応する第1のデータを、前記記録バッファ上のアクセス先頭位置から前記レジスト調整値情報が表す前記相対位置分ずれた開始アドレスを指定し、前記ブロックデータの格納される領域と前記走査方向に後続するブロックデータが格納される領域に格納し、
    前記ブロックデータのうち、前記第1のラスタに後続する第2のラスタに対応する第2のデータを、前記アクセス先頭位置の次のアドレスから前記レジスト調整値情報が表す前記相対位置分ずれた開始アドレスを指定し、前記ブロックデータの格納される領域と前記走査方向に後続するブロックデータが格納される領域に格納することを特徴とする記録装置。
  2. 前記記録バッファに格納されたデータを読み出すための読み出しアドレス情報を記録素子列毎に制御する読出し制御手段と、
    前記読み出しアドレス情報に基づいて読み出されたデータに従って各記録素子列を駆動して記録を行う記録制御手段と
    を更に備えることを特徴とする請求項1に記載の記録装置。
  3. 前記ブロックデータに対して伸張処理を行う伸張手段と、
    前記伸張手段により伸張されたデータを記録用のデータにHV変換する変換手段とを更に備え、
    前記変換手段により変換されたデータが前記記録バッファに格納されることを特徴とする請求項1又は2に記載の記録装置。
  4. 前記複数のブロックそれぞれについて、ブロックデータの有無を表す情報と、ラスタ数を表す情報と、前記レジスト調整値情報とを前記記録素子列に対応させて格納するレジスタを更に備えることを特徴とする請求項1乃至3のいずれか1項に記載の記録装置。
  5. 前記記録素子列の各記録素子からインクを吐出して記録を行うことを特徴とする請求項1乃至のいずれか1項に記載の記録装置。
  6. 複数の記録素子が配列された記録素子列を複数有する記録ヘッドを、前記配列方向と交差する走査方向に走査させて記録を行う記録装置において実行されるデータ処理方法であって、
    前記記録ヘッドによる一走査の記録を行う場合に前記記録素子列に対応するデータが前記走査方向に複数のブロックに分割された複数のブロックデータと、前記記録素子列と基準となる記録素子列との相対位置を表すレジスト調整値情報と、ブロックデータに含まれるラスタ数及びブロック幅の情報とを、接続されたホスト機器から受信する受信工程と、
    前記受信工程において受信した前記レジスト調整値情報に基づいて、前記分割された複数のブロックデータそれぞれのブロック幅とラスタ数に基づくアドレス長を単位として、前記複数のブロックデータそれぞれが纏めて格納される領域が定められ、前記領域のそれぞれは前記記録素子列に対応するデータ毎に纏めて格納されるように定められている前記記録バッファ上のアドレスを指定して前記ブロックデータを書き込むように制御する書込み制御工程とを備え、
    前記書込み制御工程は、前記ブロックデータのうち、第1のラスタに対応する第1のデータを、前記記録バッファ上のアクセス先頭位置から前記レジスト調整値情報が表す前記相対位置分ずれた開始アドレスを指定し、前記ブロックデータの格納される領域と前記走査方向に後続するブロックデータが格納される領域に格納し、
    前記ブロックデータのうち、前記第1のラスタに後続する第2のラスタに対応する第2のデータを、前記アクセス先頭位置の次のアドレスから前記レジスト調整値情報が表す前記相対位置分ずれた開始アドレスを指定し、前記ブロックデータの格納される領域と前記走査方向に後続するブロックデータが格納される領域に格納することを特徴とするデータ処理方法。
JP2004341685A 2003-12-11 2004-11-26 記録装置、及び、記録装置のデータ処理方法 Expired - Fee Related JP4455295B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2004341685A JP4455295B2 (ja) 2003-12-11 2004-11-26 記録装置、及び、記録装置のデータ処理方法
US11/000,236 US7198418B2 (en) 2003-12-11 2004-12-01 Printing apparatus, data processing method for printing apparatus, and printing system
CNB2004100988296A CN1326695C (zh) 2003-12-11 2004-12-13 记录装置、记录装置的数据处理方法和记录***
US11/679,288 US7528984B2 (en) 2003-12-11 2007-02-27 Printing apparatus, data processing method for printing apparatus, and printing system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2003413815 2003-12-11
JP2004341685A JP4455295B2 (ja) 2003-12-11 2004-11-26 記録装置、及び、記録装置のデータ処理方法

Publications (3)

Publication Number Publication Date
JP2005193651A JP2005193651A (ja) 2005-07-21
JP2005193651A5 JP2005193651A5 (ja) 2007-02-15
JP4455295B2 true JP4455295B2 (ja) 2010-04-21

Family

ID=34656253

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004341685A Expired - Fee Related JP4455295B2 (ja) 2003-12-11 2004-11-26 記録装置、及び、記録装置のデータ処理方法

Country Status (3)

Country Link
US (2) US7198418B2 (ja)
JP (1) JP4455295B2 (ja)
CN (1) CN1326695C (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8020954B2 (en) * 2005-03-08 2011-09-20 Canon Kabushiki Kaisha Recording apparatus and data processing method for recording apparatus
JP2006247905A (ja) * 2005-03-08 2006-09-21 Canon Inc 記録装置、記録装置のデータ処理方法、及び記録システム
JP2008126465A (ja) * 2006-11-20 2008-06-05 Seiko Epson Corp 電気光学装置、電子機器および画像形成装置
JP5470834B2 (ja) 2008-12-18 2014-04-16 セイコーエプソン株式会社 画像形成装置
JP5446248B2 (ja) * 2008-12-24 2014-03-19 セイコーエプソン株式会社 画像形成装置、画像形成システム、及びヘッド装置
JP6025456B2 (ja) * 2012-08-28 2016-11-16 キヤノン株式会社 被検体情報取得装置、表示方法、及びプログラム
CN107521226B (zh) * 2016-06-21 2019-03-12 北大方正集团有限公司 一种数据处理方法、装置及喷墨印刷机
CN108415674B (zh) * 2018-03-14 2021-07-27 杭州朔天科技有限公司 一种多通道并行输出的打印控制方法、装置及其芯片

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1127227A (en) 1977-10-03 1982-07-06 Ichiro Endo Liquid jet recording process and apparatus therefor
US5250956A (en) * 1991-10-31 1993-10-05 Hewlett-Packard Company Print cartridge bidirectional alignment in carriage axis
JP3347527B2 (ja) * 1994-07-01 2002-11-20 キヤノン株式会社 プリンタ及びプリント方法
DE69533937T2 (de) * 1994-11-17 2005-06-30 Canon K.K. Übertragung von verschobenen Daten auf einen Farbdrucker
JP2001129985A (ja) * 1999-08-24 2001-05-15 Canon Inc プリント位置調整方法並びに該方法を用いるプリント装置およびプリントシステム
JP3919587B2 (ja) 2002-04-15 2007-05-30 キヤノン株式会社 記録装置及び記録装置の制御方法
EP1355265B1 (en) * 2002-04-15 2016-04-13 Canon Kabushiki Kaisha Colour data buffering for colour printing
JP3826066B2 (ja) * 2002-04-15 2006-09-27 キヤノン株式会社 記録装置及び記録装置の制御方法
JP2003305895A (ja) 2002-04-15 2003-10-28 Canon Inc 画像形成システム、記録装置及び記録制御方法

Also Published As

Publication number Publication date
JP2005193651A (ja) 2005-07-21
CN1626346A (zh) 2005-06-15
US7198418B2 (en) 2007-04-03
CN1326695C (zh) 2007-07-18
US20050129443A1 (en) 2005-06-16
US20070139665A1 (en) 2007-06-21
US7528984B2 (en) 2009-05-05

Similar Documents

Publication Publication Date Title
JP3826066B2 (ja) 記録装置及び記録装置の制御方法
US7528984B2 (en) Printing apparatus, data processing method for printing apparatus, and printing system
US8724157B2 (en) Printing apparatus and printer driver
EP1700698B1 (en) Recording apparatus, data processing method for recording apparatus, and recording system
EP1355265B1 (en) Colour data buffering for colour printing
EP1355262A2 (en) Bidirectional serial printing
JP3919587B2 (ja) 記録装置及び記録装置の制御方法
US7535593B2 (en) Printing apparatus, data processing method for printing apparatus, and printing system
JP4502391B2 (ja) 記録装置、記録装置のデータ処理方法、及び記録システム
KR100771714B1 (ko) 기록 장치 및 기록 장치에 대한 데이터 처리 방법
US7206095B2 (en) Printing apparatus and method
JP4174264B2 (ja) 記録装置及びその制御方法
JP2005342965A (ja) 記録装置及び記録装置のデータ処理方法
JP3970297B2 (ja) 記録装置及び記録装置の制御方法
JP3927880B2 (ja) 記録装置及び記録装置の制御方法
JP3970296B2 (ja) 記録装置及び記録装置の制御方法
JP2006281779A (ja) 記録装置、記録装置のデータ処理方法、記録装置の制御方法、プログラム及び記憶媒体
JP2005153414A (ja) 記録装置及び記録装置の制御方法
JP2000246963A (ja) 記録装置および記録方法
JP2006168198A (ja) 記録装置及び記録装置の制御方法

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061221

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061221

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091109

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100108

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: 20100201

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100203

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

Free format text: PAYMENT UNTIL: 20130212

Year of fee payment: 3

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: 20140212

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees