JP2005153414A - 記録装置及び記録装置の制御方法 - Google Patents

記録装置及び記録装置の制御方法 Download PDF

Info

Publication number
JP2005153414A
JP2005153414A JP2003397815A JP2003397815A JP2005153414A JP 2005153414 A JP2005153414 A JP 2005153414A JP 2003397815 A JP2003397815 A JP 2003397815A JP 2003397815 A JP2003397815 A JP 2003397815A JP 2005153414 A JP2005153414 A JP 2005153414A
Authority
JP
Japan
Prior art keywords
data
recording
color
buffer
image data
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.)
Withdrawn
Application number
JP2003397815A
Other languages
English (en)
Inventor
Masahiko Watanabe
昌彦 渡邊
Sohei Tanaka
壮平 田中
Toru Nakayama
亨 中山
Takuji Katsu
拓二 勝
Nobuhiro Ishizaka
暢浩 石坂
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 JP2003397815A priority Critical patent/JP2005153414A/ja
Publication of JP2005153414A publication Critical patent/JP2005153414A/ja
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Ink Jet (AREA)
  • Record Information Processing For Printing (AREA)

Abstract

【課題】 メモリ領域を効率的に使用しつつホスト機器から送信されるデータ量を少なくする。
【解決手段】 複数の色でカラー記録を行うシリアル型の記録装置において、記録ヘッドの走査方向の記録領域を複数の領域に分割し、該分割された領域単位の画像データを格納する記録バッファ4を設け、接続されたホスト機器から送信され、各色データの区切りに関する情報を含む分割された領域単位の画像データを受信バッファ2に格納し、データ展開ブロック3で受信バッファに格納された画像データから各色毎のデータを識別して、領域単位の画像データの書き込みアドレス情報を色データと共に記録バッファ4に格納する。
【選択図】 図1

Description

本発明は記録装置及び記録装置の制御方法に関し、特に、記録ヘッドを搭載したキャリッジを記録媒体上で走査させて複数の色でカラー記録を行うために、該記録ヘッドの走査方向の記録領域を複数の領域に分割し、該分割された領域単位の画像データを格納する記録バッファを有する記録装置及び該記録装置の制御方法に関するものである。
コンピュータ装置やデジタルカメラ等から出力される画像や情報を記録する記録装置としてプリンタが広く使用されている。プリンタの記録方式としては様々な方式が知られているが、用紙等の記録媒体に非接触記録が可能である、カラー化が容易である、静粛性に富む、等の理由でインクジェット方式が近年特に注目されており、又その構成としては所望される記録情報に応じてインクを吐出する記録ヘッドを装着すると共に用紙等の記録媒体の送り方向と交差する方向に往復走査しながら記録を行なうシリアル記録方式が安価で小型化が容易などの点から一般的に広く用いられている。
このようなプリンタは、受信したデータを記録データに変換して記録バッファに一時的に格納する。記録バッファを効率的に使用すべく、リング構造を用いる技術が、例えば、特公昭63−12290号公報(特許文献1)に記載されている。この技術においては、記録データをメモリ領域に格納するためのアドレスポインタと、そのデータを読み出すためのアドレスポインタと、メモリ領域の空き領域を管理するための記録データ数カウントレジスタとを備え、循環領域のメモリの利用の効率化が試みられている。
このようなリングバッファ構造をフルカラー用の記録装置に適用する場合に、記録に使用する色(インク)分のリングバッファ構造を用意すると、最初にバッファ構造が色毎に割り当てられるので、記録すべきデータが無い場合でも、その領域を用意する必要があり、メモリ領域を効率的に使用することが困難となる。
特公昭63−12290号公報
しかしながら、上記の明細書に記載された方法では、ホスト機器から記録装置に送信され記録バッファに格納されるデータは、画像データに加えその画像を形成する様々のデータをコマンド部に有している。このコマンド部のデータとしては、ブロック構造を示すための色データがあるが、この色データは各ブロック毎に設けられるため、用紙サイズや給紙の実行、紙送り量の設定、使用する記録ヘッドなどの設定データに比べ、データ量がかなり多くなってしまう。
このような画像データ以外のデータが多くなると、ホスト機器との通信に要する時間が長くなり記録装置のスループットを低下させることとなる。
本発明は以上のような状況に鑑みてなされたものであり、メモリ領域を効率的に使用しつつホスト機器から送信されるデータ量を少なくすることを目的とする。
上記目的を達成する本発明の一態様としての記録装置は、記録ヘッドを搭載したキャリッジを記録媒体上で走査させて複数の色でカラー記録を行うために、該記録ヘッドの走査方向の記録領域を複数の領域に分割し、該分割された領域単位の画像データを格納する記録バッファを有する記録装置であって、
接続されたホスト機器から送信され、各色データの区切りを示す情報を含む前記分割された領域単位の画像データを格納する受信バッファと、
前記各色データの区切りを示す情報に基づき、各色データの有無情報を生成するデータ処理部と、
前記受信バッファに格納された画像データと、前記各色データの有無情報に基づいて、該領域単位の画像データの書き込みアドレス情報を色データと共に前記記録バッファに格納するように制御する書き込み制御部と、
前記記録バッファに格納された画像データを読み出すための読み出しアドレス情報を色データ毎に制御する読み出し制御部と、
前記読み出しアドレス情報に基づいて読み出された画像データに従い、前記分割された領域単位の記録データを生成する記録データ生成手段と、
を備えている。
本発明の別の態様としての記録装置の制御方法は、記録ヘッドを搭載したキャリッジを記録媒体上で走査させて複数の色でカラー記録を行うために、該記録ヘッドの走査方向の記録領域を複数の領域に分割し、該分割された領域単位の画像データを格納する記録バッファを有する記録装置の制御方法であって、
接続されたホスト機器から送信され、各色データの区切りを示す情報を含む前記分割された領域単位の画像データを受信バッファに格納する受信工程と、
前記各色データの区切りを示す情報に基づき、各色データの有無情報を生成するデータ処理工程と、
前記受信バッファに格納された画像データと、前記各色データの有無情報に基づいて、該領域単位の画像データの書き込みアドレス情報を色データと共に前記記録バッファに格納するように制御する書き込み制御工程と、
前記記録バッファに格納された画像データを読み出すための読み出しアドレス情報を色データ毎に制御する読み出し制御工程と、
前記読み出しアドレス情報に基づいて読み出された画像データに従い、前記分割された領域単位の記録データを生成する記録データ生成工程と、
を備えている。
すなわち、本発明では、記録ヘッドを搭載したキャリッジを記録媒体上で走査させて複数の色でカラー記録を行うために、該記録ヘッドの走査方向の記録領域を複数の領域に分割し、該分割された領域単位の画像データを格納する記録バッファを有する記録装置において、接続されたホスト機器から送信され、各色データの区切りを示す情報を含む分割された領域単位の画像データを受信バッファに格納し、各色データの区切りを示す情報に基づき、各色データの有無情報を生成し、受信バッファに格納された画像データと、各色データの有無情報に基づいて、該領域単位の画像データの書き込みアドレス情報を色データと共に前記記録バッファに格納するように制御し、記録バッファに格納された画像データを読み出すための読み出しアドレス情報を色データ毎に制御し、読み出しアドレス情報に基づいて読み出された画像データに従い、分割された領域単位の記録データを生成する。
このようにすると、ホスト機器から送信された、各色データの区切りを示す情報を含む分割された領域単位の画像データから、各色データを識別して、該領域単位の画像データの書き込みアドレス情報が色データと共に記録バッファに格納され、記録バッファに格納された画像データの読み出しアドレス情報が色データ毎に制御され、読み出しアドレス情報に基づいて読み出された画像データに従って、分割された領域単位の記録データが生成される。
従って、記録装置で複数の色を用いてカラー記録を行う際に、受信バッファ及び記録バッファとして使用するメモリ領域を効率的に使用するような構成において、ホスト機器から記録装置へ送信するデータ量を低減することができる。
読み出し制御部は、各色データの有無情報を保持するレジスタを有し、データ処理部で生成された各色データの有無情報を保持するのがよい。
書き込み制御部は、記録バッファに各色のデータを同じサイズで格納する、あるいは、書き込み制御部は、ある色のデータが所定のサイズ未満であるときに、該色データに色データの区切りを示す情報を付加して記録バッファに格納するようにするのがよい。
記録バッファが、画像データを先頭アドレス情報と最終アドレス情報とにより設定された領域間で循環して格納することが可能な、いわゆるリングバッファとして構成されているのがよい。
記録バッファに格納できるデータ数が、1走査の記録領域より少ない記録領域のデータ数であると一層効果的である。
以上説明したように本発明によれば、記録装置で複数の色を用いてカラー記録を行う際に、受信バッファ及び記録バッファとして使用するメモリ領域を効率的に使用するような構成において、ホスト機器から記録装置へ送信するデータ量を低減することができる。
以下に、図面を参照して、この発明の好適な実施の形態を例示的に詳しく説明する。ただし、この実施の形態に記載されている構成要素はあくまで例示であり、この発明の範囲をそれらのみに限定する趣旨のものではない。
なお、以下に説明する実施形態では、インクジェット方式に従う記録ヘッドを用いた記録装置を例に挙げて説明する。
なお、この明細書において、「記録」(「プリント」という場合もある)とは、文字、図形等有意の情報を形成する場合のみならず、有意無意を問わず、また人間が視覚で知覚し得るように顕在化したものであるか否かを問わず、広く記録媒体上に画像、模様、パターン等を形成する、または媒体の加工を行う場合も表すものとする。
また、「記録媒体」とは、一般的な記録装置で用いられる紙のみならず、広く、布、プラスチック・フィルム、金属板、ガラス、セラミックス、木材、皮革等、インクを受容可能なものも表すものとする。
さらに、「インク」(「液体」と言う場合もある)とは、上記「記録(プリント)」の定義と同様広く解釈されるべきもので、記録媒体上に付与されることによって、画像、模様、パターン等の形成または記録媒体の加工、或いはインクの処理(例えば記録媒体に付与されるインク中の色剤の凝固または不溶化)に供され得る液体を表すものとする。
またさらに、「ノズル」とは、特にことわらない限り吐出口ないしこれに連通する液路およびインク吐出に利用されるエネルギーを発生する素子を総括して言うものであり、「記録素子」に対応するものである。
[第1の実施形態]
<インクジェット記録装置の説明>
図18は本発明の代表的な実施形態であるインクジェット記録装置1の構成の概要を示す外観斜視図である。
図18に示すように、インクジェット記録装置(以下、記録装置という)は、インクジェット方式に従ってインクを吐出して記録を行なう記録ヘッド1903を搭載したキャリッジ1902にキャリッジモータM1によって発生する駆動力を伝達機構1904より伝え、キャリッジ1902を矢印A方向に往復移動させるとともに、例えば、記録紙などの記録媒体Pを給紙機構1905を介して給紙し、記録位置まで搬送し、その記録位置において記録ヘッド1903から記録媒体Pにインクを吐出することで記録を行なう。
また、記録ヘッド1903の状態を良好に維持するためにキャリッジ1902を回復装置1910の位置まで移動させ、間欠的に記録ヘッド1903の吐出回復処理を行う。
記録装置のキャリッジ1902には記録ヘッド1903を搭載するのみならず、記録ヘッド1903に供給するインクを貯留するインクカートリッジ1906を装着する。インクカートリッジ1906はキャリッジ1902に対して着脱自在になっている。
図18に示した記録装置はカラー記録が可能でり、そのためにキャリッジ1902にはマゼンタ(M)、シアン(C)、イエロ(Y)、ブラック(K)のインクを夫々、収容した4つのインクカートリッジを搭載している。これら4つのインクカートリッジは夫々独立に着脱可能である。
さて、キャリッジ1902と記録ヘッド1903とは、両部材の接合面が適正に接触されて所要の電気的接続を達成維持できるようになっている。記録ヘッド1903は、記録信号に応じてエネルギーを印加することにより、複数の吐出口からインクを選択的に吐出して記録する。特に、この実施形態の記録ヘッド1903は、熱エネルギーを利用してインクを吐出するインクジェット方式を採用し、熱エネルギーを発生するために電気熱変換体を備え、その電気熱変換体に印加される電気エネルギーが熱エネルギーへと変換され、その熱エネルギーをインクに与えることにより生じる膜沸騰による気泡の成長、収縮によって生じる圧力変化を利用して、吐出口よりインクを吐出させる。この電気熱変換体は各吐出口のそれぞれに対応して設けられ、記録信号に応じて対応する電気熱変換体にパルス電圧を印加することによって対応する吐出口からインクを吐出する。
図18に示されているように、キャリッジ1902はキャリッジモータM1の駆動力を伝達する伝達機構1904の駆動ベルト1907の一部に連結されており、ガイドシャフト1913に沿って矢印A方向に摺動自在に案内支持されるようになっている。従って、キャリッジ1902は、キャリッジモータM1の正転及び逆転によってガイドシャフト1913に沿って往復移動する。また、キャリッジ1902の移動方向(矢印A方向)に沿ってキャリッジ1902の絶対位置を示すためのスケール1908が備えられている。この実施形態では、スケール1908は透明なPETフィルムに必要なピッチで黒色のバーを印刷したものを用いており、その一方はシャーシ1909に固着され、他方は板バネ(不図示)で支持されている。
また、記録装置には、記録ヘッド1903の吐出口(不図示)が形成された吐出口面に対向してプラテン(不図示)が設けられており、キャリッジモータM1の駆動力によって記録ヘッド1903を搭載したキャリッジ1902が往復移動されると同時に、記録ヘッド1903に記録信号を与えてインクを吐出することによって、プラテン上に搬送された記録媒体Pの全幅にわたって記録が行われる。
さらに、図18において、1914は記録媒体Pを搬送するために搬送モータM2によって駆動される搬送ローラ、1915はバネ(不図示)により記録媒体Pを搬送ローラ1914に当接するピンチローラ、1916はピンチローラ15を回転自在に支持するピンチローラホルダ、1917は搬送ローラ1914の一端に固着された搬送ローラギアである。そして、搬送ローラギア1917に中間ギア(不図示)を介して伝達された搬送モータM2の回転により、搬送ローラ1914が駆動される。
またさらに、1920は記録ヘッド1903によって画像が形成された記録媒体Pを記録装置外ヘ排出するための排出ローラであり、搬送モータM2の回転が伝達されることで駆動されるようになっている。なお、排出ローラ1920は記録媒体Pをバネ(不図示)により圧接する拍車ローラ(不図示)により当接する。1922は拍車ローラを回転自在に支持する拍車ホルダである。
またさらに、記録装置には、図18に示されているように、記録ヘッド1903を搭載するキャリッジ1902の記録動作のための往復運動の範囲外(記録領域外)の所望位置(例えば、ホームポジションに対応する位置)に、記録ヘッド1903の吐出不良を回復するための回復装置1910が配設されている。
回復装置1910は、記録ヘッド1903の吐出口面をキャッピングするキャッピング機構1911と記録ヘッド1903の吐出口面をクリーニングするワイピング機構1912を備えており、キャッピング機構1911による吐出口面のキャッピングに連動して回復装置内の吸引手段(吸引ポンプ等)により吐出口からインクを強制的に排出させ、それによって、記録ヘッド1903のインク流路内の粘度の増したインクや気泡等を除去するなどの吐出回復処理を行う。
また、非記録動作時等には、記録ヘッド1903の吐出口面をキャッピング機構1911によるキャッピングすることによって、記録ヘッド1903を保護するとともにインクの蒸発や乾燥を防止することができる。一方、ワイピング機構1912はキャッピング機構1911の近傍に配され、記録ヘッド1903の吐出口面に付着したインク液滴を拭き取るようになっている。
これらキャッピング機構1911及びワイピング機構1912により、記録ヘッド1903のインク吐出状態を正常に保つことが可能となっている。
<インクジェット記録装置の制御構成>
図19は図18に示した記録装置の制御構成を示すブロック図である。
図19に示すように、コントローラ600は、CPU601、後述する制御シーケンスに対応したプログラム、所要のテーブル、その他の固定データを格納したROM602、キャリッジモータM1の制御、搬送モータM2の制御、及び、記録ヘッド3の制御のための制御信号を生成する特殊用途集積回路(ASIC)603、画像データの展開領域やプログラム実行のための作業用領域等を設けたSRAMやDRAM等のRAM604、CPU601、ASIC603、RAM604を相互に接続してデータの授受を行うシステムバス605、以下に説明するセンサ群からのアナログ信号を入力してA/D変換し、デジタル信号をCPU601に供給するA/D変換器606などで構成される。
また、図19において、610は画像データの供給源となるコンピュータ(或いは、画像読取り用のリーダやデジタルカメラなど)でありホスト装置と総称される。ホスト装置610と記録装置1との間ではインタフェース(I/F)611を介して画像データ、コマンド、ステータス信号等を送受信する。
さらに、620はスイッチ群であり、電源スイッチ621、プリント開始を指令するためのプリントスイッチ622、及び記録ヘッド3のインク吐出性能を良好な状態に維持するための処理(回復処理)の起動を指示するための回復スイッチ623など、操作者による指令入力を受けるためのスイッチから構成される。630はホームポジションhを検出するためのフォトカプラなどの位置センサ631、環境温度を検出するために記録装置の適宜の箇所に設けられた温度センサ632等から構成される装置状態を検出するためのセンサ群である。
さらに、640はキャリッジ2を矢印A方向に往復走査させるためのキャリッジモータM1を駆動させるキャリッジモータドライバ、642は記録媒体Pを搬送するための搬送モータM2を駆動させる搬送モータドライバである。
ASIC603は、記録ヘッド3による記録走査の際に、RAM602の記憶領域に直接アクセスしながら記録ヘッドに対して記録素子(吐出ヒータ)の駆動データ(DATA)を転送する。
<データ処理の構成>
図1は、上記の記録装置におけるデータ処理に関する機能ブロック図である。
図1の各ブロックと図19の制御構成との対応を説明すると、インターフェースコントローラ1はインタフェース611、CPU9はCPU601、記録ヘッド6は記録ヘッド1903にそれぞれ対応する。受信バッファ2、記録バッファ4、及びバッファ構造情報メモリ11は、いずれもRAM604内に確保される領域である。また、データ展開ブロック3、記録データ生成ブロック5、受信バッファリング構造制御回路7、及び記録バッファリング構造制御回路9は、いずれもASIC603内に設けられる。なお、CRエンコーダ10は、図18に示したスケール1908と、キャリッジ1902に設けられたスケールのメモリからキャリッジの走査方向の絶対位置あるいは相対位置を算出するセンサとを含んでいる。
図に於いて、インターフェースコントローラ1は、インターフェース信号線S1を介して接続されたホストコンピュータ(不図示)から転送されてくるデータの中から、記録装置の動作に必要なデータ及び画像データを抽出して一時的に保持し、その抽出されたデータは信号線S2を介して受信バッファ2に格納される。
受信バッファ2は、図19のRAM604内に設けられる。この受信バッファ2内に格納されるデータの構造を図2の(a)及び(b)を参照して説明する。
図2(a)において受信バッファのデータ構造が示されるように、左から順に「コマンド」(201),「データ長」(202),「設定データ」(203)のデータが格納され、これに続いて「コマンド」(204),「データ長」(205),「設定データ」(206)のデータが格納されている。これは時系列順に転送されてきたデータが、受信バッファの連続したアドレスに格納されることを示し、ここで示す設定データ206は、例えば給紙の実行や紙送り量の設定、使用する記録ヘッド数等を示す情報であり、この設定データで定められた情報が全て揃って初めて記録装置で記録が可能となる。この後に、記録の対象となる画像データ(209、212)が受信バッファ2に格納される。
この画像データ(209、212)は、記録ヘッドが記録媒体上を1度の走査で記録する際に必要とされるデータ量を、それより少ないデータ量を単位としてブロックに分割したデータであり、そのブロック単位で画像データを区切り、順次第1ブロックデータ(209)、第2ブロックデータ(212)、・・・として格納される。
図2(b)はブロック単位に分割された画像データのデータ構造を詳細に示す図であり、同図で示すように、複数の色のデータ(213〜214)が各々圧縮されたデータとして順次格納される。この色データは「色変えコード」(216、217、218)で区切られる。
例えば、シアン、イエロー、マゼンタ、それと黒の4色の色データを想定した場合、各色毎に縦64ノズルを1列としたノズル列が走査方向に2列づつ配列する記録ヘッドを用いると、各ノズル列単位のデータが1つの色データを構成することになるのでノズル2列が4色分、すなわち、圧縮された第1色から第8色の色データが一つのブロックデータ内に画像データとして格納される。このノズル列の各ノズルは、記録媒体の搬送方向に並んでいる。例えば、第1色と第2色がシアンのデータ、第3色と第4色はマゼンタのデータ、第5色と第6色はイエローのデータ、第7色と第8色は黒のデータとなる。
図3は画像データを保持する記録バッファのデータ構造を示す図である。例えば1回の走査で最大約8インチの長さを記録する場合、1つのブロックデータが走査方向に約1/8インチの記録ができるサイズとすると、トータル8ブロックの画像データを記録処理すれば、1走査分の画像が完成することになる。第1ブロックから第8ブロックは記録ヘッドの走査方向に配置され、各ブロックデータには、第1色データから第8色データが格納される。各ブロック内に格納される各色データの長さは記録ヘッドのノズル数に対応するものである。
説明を図1に戻し、各制御ブロックの説明を続ける。受信バッファ2に格納されるデータのうち、記録装置の制御用の設定値である「コマンド」,「データ長」,「設定データ」は、インタフェースコントローラ1から信号線S902を介してCPU9により読み出され、図中にある各部制御回路(7,8)に設定される(S903、S907)。CPU9は読み出したデータ(図2(a)の201〜208に相当するデータ)を解釈し、その結果に従って記録装置の全体的な記録制御を統括する。一方、CPU9は画像データの処理に関してはデータ展開ブロック3を起動して処理を実行させるものとする。
データ展開ブロック3(データ処理ブロック)は受信バッファ2から、CPU9によるDMA起動に伴い、図2(b)で示されるように「圧縮TAG」と「データ」及び「色変えコード」の3種類のデータを読み出し、これらのデータに基づきデータの展開制御(データ処理)を実行する。本実施形態ではデータの圧縮/解凍方法としてPackBits圧縮を用いたので、圧縮TAGが8ビットで00hから7Fhまで値の場合、非連続なデータが1から128個データ領域に有るとして処理し、圧縮TAGが8ビットでFFhから81hまで値の場合、次の1バイトデータを連続した2から128個のデータに解凍する処理を行う。圧縮TAGの所で、80hを読み出した場合は色変えコードとして処理する。解凍したデータを信号線S4に乗せ、記録バッファ4に書き込む。
例えば、TAGが02hで、データが11h、12hであったとすると、実際の展開データは11h、12hとなる。また、TAGがFEhでデータがaahであれば、展開データはaah、aah、aahとなる。
記録バッファ4には解凍された画像データが図3に示すデータ構造で格納される。コマンド解釈時にCPUにより設定される、記録バッファ4の先頭アドレスには第1ブロックの第1色データの先頭のデータが書き込まれ、その後に続くデータは、アドレスを1ずつ加算しながら順次書き込まれる。記録バッファのアドレスに一つの色データとして格納できる領域は、最初にCPU9が読み込んだ設定データで決定され、その値以上のデータは書き込めないので画像データを圧縮する際には、その設定データに従ったデータサイズの制限が加えられることになる。色変えコードを検出した後のデータは、データ受信前に一つの色が格納できる領域と同様にCPUにより予め設定される、第2色データの先頭番地から順次書き込まれる。
しかし、色変えコードが連続する場合には処理が異なる。第1色データの格納後において、例えば、図2において、色変えコード(216)を検知した後、次のデータの内容が、色変えコード(217)であることを検出すると、第2色データがないと判断する。この場合、第2色データの代わりに第3色データが先頭番地から順に書き込まれる。
この書き込みを第1ブロックの第1色データから第8色データまで繰り返し、第8色データの書き込みを終えて色変えコードを検知すると、第1ブロックのデータが全て書き込み終えたことになる。データ展開ブロック3はデータの展開動作を終了し、CPU9に対しブロック1個分のデータの展開が完成したことを割込み(INT3)で伝え、CPU9からの次のデータ展開の起動を待つ。
このデータ展開ブロック3は、この色変えコードを検出するカウンタを設けてカウントを行い、第1色から第8色までのデータの有無の判断した結果(情報)各色についてのデータ有無情報(例えば1ビットデータ)を生成する。この各色のデータ有無情報を保持するためのデータ有無レジスタに設定する。例えば、第2色データがないと判断した場合、第2色データについてのデータ有無レジスタに「データ無し」を示す値をセットする。これにより、第1色から第8色まで、順に送られてくるので、第1色データの次の領域には、第3色データが格納されている。第1色データ、第3色データのデータ有無レジスタには、「データ有り」を示す値がセットされる。このように、第1色データから第8色データについてデータの有無の情報がレジスタに設定される。これらの「データ有り」、「データ無し」情報は、後述する記録バッファからの各色データの読みだしに用いられる。
記録バッファ4上に複数ブロックの画像データが揃った段階で、CPU9は記録動作を開始すべくキャリッジモータM1を動作させ、記録ヘッド6が走査しながら、画像データをキャリッジエンコーダ(CRエンコーダ)10に同期して転送し、記録することで記録媒体に画像を記録することができる。記録ヘッド6が主走査方向に走査した後、搬送手段が記録媒体を副走査方向に搬送する。こうして、記録ヘッドの走査と、記録媒体の搬送を繰り返し行って、1ページ分の画像の記録を行う。
記録データ生成ブロック5は、記録バッファ4上に有る画像データの各ブロック構造を、CPU9から指定された値に従って、CRエンコーダ10に同期したタイミングで信号線S5を介して読み出し、記録ヘッド6が記録できるデータ構造に変換しながら信号線S6に出力していく。この記録データ生成ブロック5は後で述べる記録バッファ内のブロック幅(ブロックの長さを示す。)の情報、ブロックの各色の高さ(色データの「ラスター数」という。)についての情報を保持する。
<受信バッファの書き込み、読み込み制御>
以上説明したように受信バッファ2には、インターフェースコントローラ1がデータを書き込み、データ展開ブロック3が画像データのみを読み出すが、その書き込みアドレスと読み出しアドレスを制御しているのが受信バッファリング構造制御回路7である。受信バッファリング構造制御回路7は受信バッファ2の先頭アドレスと最終アドレス、それと書き込みアドレスと読み出しアドレスの管理を行っている。
受信バッファリング構造制御回路7は、インターフェースコントローラ1から受信する書き込み要求信号(S701)を受け付ける毎に1アドレスずつ加算し、これを書き込みアドレスの情報として受信バッファ2に出力する(信号線S702)。そして、受信バッファリング構造制御回路7は、受信バッファ2の最終アドレスに達した場合に書き込みアドレスを受信バッファ2の先頭のアドレスに戻す制御を行なう。
また、書き込みアドレスが読み出しアドレスに到達(一致)した場合、受信バッファ2がデータでいっぱいになり、次のデータを書き込めない旨をインターフェースコントローラ1に信号線S703を介して通信する。
このとき同時にCPU9に対しても信号線S904の割込み信号により、受信バッファ2はデータの書き込みができない状態であることを知らせる。受信バッファ2の構造は、CPU9が信号線S903のバスを用いて内部のレジスタに書き込むことで設定することができる。
読み出しアドレスは、CPU9が受信バッファリング構造制御回路7の中に有るデータリード用レジスタを介して直接に受信バッファ2の中のデータを読み出す場合と、データ展開ブロック3がデータ読み出し要求信号線S705を介して要求した場合に、読み出しアドレスとして信号線S706を介して1アドレスづつ加算されて受信バッファ2に出力される。
受信バッファリング構造制御回路7は、読み出しアドレスが最終アドレスに達した場合、読み出しアドレスを受信バッファ2の先頭アドレスに戻す制御を行なう。また読み出しアドレスが書き込みアドレスに到達(一致)した場合、受信バッファ上からデータがなくなったので、次のデータを読み出せない旨をデータ展開ブロックに信号線S704を介して通信する。このとき同時にCPU9に対しても信号線S904の割込み信号線で、受信バッファ2上には、読み出すデータが無い旨を知らせる。
以上が受信バッファ2に対するデータの書き込み、読み取り制御の処理内容である。次に、この受信バッファ2から読み出され、展開処理されたデータを記録バッファに書き込みし、あるいはその記録バッファからデータを読み取るための処理内容を説明する。
<記録バッファの書き込み、読み取り制御>
記録バッファ4に対して、データ展開ブロック3が画像データを書き込み、記録データ生成ブロック5がその書き込まれた画像データを読み出すが、その際、書き込みアドレスと読み出しアドレスを制御しているのが記録バッファリング構造制御回路8である。
記録バッファリング構造制御回路8は、記録バッファの先頭アドレスと、最終アドレス、それと書き込みアドレスと、読み出しアドレスの管理を行っている。
記録バッファリング構造制御回路8は、データ展開ブロック3から受信する書き込み要求信号(S801)を受け付ける毎に1アドレスずつ加算し、これを書き込みアドレスの情報として記録バッファ4に出力する(信号線S802)。そして、記録バッファリング構造制御回路8は、記録バッファ4の最終アドレスに達した場合に書き込みアドレスを記録バッファ4の先頭のアドレスに戻す制御を行なう。
また、書き込みアドレスが読み出しアドレスに到達(一致)した場合、記録バッファ4が画像データでいっぱいになり、次の画像データを書き込めない旨をデータ展開ブロック3に信号線S803を介して通知する。
また、データ展開ブロック3が色変えコードを受信バッファ2から読み込んだ場合、データ展開ブロック3は信号線S804を介してその旨を通知し、記録バッファリング構造制御回路8は、次の色のデータを格納する先頭番地を信号線S802から出力するように準備する。記録バッファ4の構造はCPU9が信号線S907のバスを用いて内部のレジスタに書き込むことで設定することができる。
読み出しアドレスは、記録データ生成ブロック5が各色毎にデータ読み出し要求信号線S805を介して要求すると、読み出しアドレスとして信号線S806を介して1アドレスづつ加算されて記録バッファ4に出力される。
記録バッファリング構造制御回路8は、読み出しアドレスが最終アドレスに達した場合、読み出しアドレスを記録バッファ4の先頭アドレスに戻す制御を行なう。
記録データ生成ブロック5は、現在読み出している画像データブロックのデータ構造をCPU9から信号線S908のバスを介して、記録データ生成ブロック5内部にあるレジスタに設定する。設定された画像データブロック構造内にある画像データを全て読み出すと、終了信号S909をCPU9に対し割り込み信号として通知する。この際、記録バッファ4上に次の画像データブロックがすでに展開されているならば、その画像データブロック構造をレジスタに書き込む。
記録バッファ4は1画像データブロック単位でデータの書き込みを制御しており、書き込まれていない画像データブロックに対し記録データ生成ブロックを起動しないので、記録バッファの読み出しアドレスが書き込みアドレスを越えることは起きない。11は、バッファ構造情報メモリである。これは、記録バッファの制御用の作業用メモリ(ワークRAM)であり、後で述べる記録バッファ構造についての情報を一時的に格納する領域である。
以上、記録制御部における記録データの流れの概要について説明したが、以下、各制御ブロックの詳細な機能について説明する。
<インターフェースコントローラ>
図4はインターフェースコントローラ1の内部を示すブロック図で、コマンド解析部101とデータラッチ部102を有する。
コマンド解析部101はインタフェース信号線S1を介してホストコンピュータから送られてくるデータ列が、記録装置の状態等を確認するコマンド情報か、画像データに関わるデータなのかを判断し、受信したデータが記録装置の状態等を確認するコマンド情報であれば、装置の状態を識別するためのステータスを自動応答し、画像データならば102のデータラッチ部に一旦保存する制御を行う。コマンド解析部101は記録装置のステータス情報を格納するレジスタを持ち、CPU9はバス(S901)を介してその情報をレジスタに書き込む。
コマンド解析部101は、インタフェース信号線S1でデータ(コマンド情報、画像データ)を受け付けると、割り込み信号(INT1)S902をCPU9に対して出力し、データの受信が完了した旨を通知する。CPU9はその割り込み信号を受け、データ処理を開始する。
データラッチ部102は数バイトの記憶装置で、FIFO構造となっており、データラッチ部102にデータが有る場合は、書き込み要求信号S701を受信バッファリング構造制御回路部7に出力し、データラッチ部102のデータがなくなるまで書き込み要求信号S701が出力される。但し、受信バッファ2がいっぱいで書き込めない状態や、何らかの異常でデータが受け付けられない時、受信バッファリング構造制御回路部7はデータ転送待機信号S703を出力し、待機信号S703を受けてデータラッチ部102はデータ転送を停止する。
データ転送が停止すると、データラッチ部102のFIFOはすぐデータでいっぱいになり、ホストコンピュータ側からのデータを受け取れなくなるが、その場合、装置本体の状態をビジー状態とし、コマンド解析部101はデータが送られてきても受け取れなかったとして再送要求をホストコンピュータに出力する。
<受信バッファリング構造制御回路>
図5は受信バッファリング構造制御回路部7の詳細を示すブロック図で、インターフェースコントローラ1のデータを受信バッファ2に書き込む為のアドレス(ライトポインタ)を出力する書き込みアドレスレジスタ(WP)701と、受信バッファ2上のデータをデータ展開ブロック3に出力するための読み出しアドレス(リードポインタ)を出力する読み出しアドレスレジスタ(RP)702を持ち、それぞれ書き込みアドレス信号線S702と、読み出しアドレス信号線S706として出力する。更に、受信バッファ2の先頭アドレスと最終アドレスを特定する先頭アドレスレジスタ(top_adr)703、最終アドレスレジスタ(bottom_adr)704を有し、それぞれのレジスタはCPU9により初期値が設定される。
例えば、受信バッファ2の先頭番地を1000hアドレスとして先頭アドレスレジスタ703に設定し、最終番地をFFFFhアドレスとして最終アドレスレジスタ704に設定し、最初は受信バッファ2上にはデータが1個も無いので、書き込みアドレスレジスタ701及び読み出しアドレスレジスタ702には1000hを設定する。
この初期状態でデータがないとき、アドレス制御ブロック705はインターフェースコントローラ1からの書き込み要求信号S701は受け付けるが、データ展開ブロック3に対してデータが無いことをバッファエンプティー信号線S704を出力して伝え、読み出し要求信号S705を出力しないよう通知する。インターフェースコントローラ1からの書き込み要求信号S701を受け取り最初のデータを受信バッファ2に書き終えたとき、アドレス制御ブロック705は書き込みアドレスレジスタ701の値を1個加算して書き戻す。上記の制御を書き込み要求があるたびに行い、次に書き込むアドレスが最終アドレスレジスタ704に設定された値を超えた場合、次のアドレスとして先頭アドレスレジスタ703に設定された値が書き込みアドレスレジスタ701の値となる。
書き込みアドレスレジスタ701の値が読み出しアドレスレジスタ702の値に一致した時、受信バッファ2はまだ読み出されていないデータでいっぱいになり、次のデータが書き込めないので、アドレス制御ブロック705はインターフェースコントロールブロック1に対しバッファフル信号線S703を出力し、書き込み要求信号S701の出力を抑制させる。
受信バッファ2上に1個でもデータが有る状態とは、書き込みアドレスレジスタ701の値と読み出しアドレスレジスタ702の値が異なる時であり、その場合、アドレス制御ブロック705はバッファエンプティー信号S704の出力を止め、データ展開ブロック3からのデータ読み出し要求信号S705が出力され、受信バッファ2からデータの読み出しが終了した時点で、アドレス制御ブロック705は読み出しアドレスレジスタ702の値を1個加算して書き戻す。
上記の制御を読み出し要求があるたびに行い、次に読み出すアドレスが最終アドレスレジスタ704に設定された値を超えた場合、次のアドレスとして先頭アドレスレジスタ703に設定された値が読み出しアドレスレジスタ701の値となる。
読み出しアドレスレジスタ702の値が書き込みアドレスレジスタ701の値に一致した時、受信バッファ2上には読み出されていないデータが無くなり、次のデータが読み出せないので、アドレス制御ブロック705はデータ展開ブロック3に対しバッファエンプティー信号線S704を出力し、読み出し要求信号S705の出力を抑制させる。
また、アドレス制御ブロック705は受信バッファ2がバッファエンプティー状態やバッファフル状態になった時、また、それらの状態が解除された時をCPU9に知らせる為に受信バッファ割込み信号線S904(INT2)を出力する。
図6は受信バッファリング構造制御回路7の動作タイミングを示す図であり、書き込み要求信号S701、書き込みアドレス信号線S702、バッファフル信号線S703、バッファエンプティー信号線S704、読み出し要求信号S705、読み出しアドレス信号線S706の各信号線の変化を示す。上述の説明のように、書き込み要求信号S701が入力される毎に書き込みアドレス信号線S702は1づつ加算され、読み出し要求信号S705が入力される毎に読み出しアドレス信号線S706は1づつ加算される。受信バッファ上にデータが無くなればバッファエンプティー信号S704が出力され(図6のタイミングA及びB)、受信バッファ上にデータがいっぱいになればバッファフル信号S703が出力される(図6のタイミングC)。
<記録バッファの書き込みアドレス制御>
記録バッファリング構造制御回路の説明を図7及び図10を用いて説明する。記録バッファリング構造制御回路の処理において、図7は書き込みアドレス制御を中心に説明する図であり、図10は記録バッファリング構造制御回路8の読み出しアドレス制御を中心に説明する図である。
図7に示す記録バッファリング構造制御回路8は、読み出し制御部8Aと書き込みアドレス制御部8Bで構成されている。また、記録バッファ4のバッファ領域は、記録バッファの先頭のアドレスをtop_adrで示し、最終アドレスをbottom_adrで表示する。この先頭アドレスは書き込みアドレス制御部8B内のレジスタ803に格納され、最終アドレスは書き込みアドレス制御部8B内のレジスタ804に格納される。
記録バッファ4に示される「RP」はリードポインタを示し、「WP」はライトポインタを示す。記録バッファの中のRPとWPの間のハッチング部分は記録データが格納されていることを表している。また、記録バッファ4の白色部分は記録データが格納されていないことを表す。
読み出しアドレス制御部8A内の802は、データの読み出しアドレス(RP:リードポインタ)を示すレジスタである。読み出しアドレス制御部8B内812’は第1色から第8色について各色の高さ(高さは同じ)の情報を格納するレジスタで、top_adrからのオフセット値を予め格納してあるステップレジスタである813は各ブロックの幅の情報を格納するレジスタである。815は次のブロックのアドレスを格納するレジスタである。このアドレスは高さ情報(不図示)と、813の値で決定される。816はデータの書き込みアドレス(WP:ライトポインタ)を格納するレジスタである。814はアドレス制御レジスタで、図8(e)に関して後述するように、書き込みアドレスが読み出しアドレスを追い越さないように書き込み処理を管理する。
<記録バッファへのデータの格納>
図8は、記録バッファに画像データがどのように格納されるかを説明する図である。本実施形態において図8に示すバッファは、色データの格納領域として記録動作に必要な色ブロックの領域と同じ大きさの領域を確保している構成で説明している。
図8の(a)は、第1色データが縦に順に4ワード分ずつ、格納される状態を示している。ここで1ワードが16画素分に対応している。格納するアドレスは1づつインクリメントされる。従ってライトポインタ(WP)は1から順に2、3、4、5と進められる。この場合、レジスタ813(ブロックの幅)の値は「28」である。
図8の(b)は、第2色データがある場合に、第1色の格納領域に全て格納した後に、矢印で示すライトポインタ(WP)は、第2色の先頭アドレスへ移動し、そこから第2色のデータの格納を行う様子を示している。
図8の(c)は、第1色のデータ格納領域に空白部分があった場合に、第2色のデータを格納する様子を示している。本実施形態では、空白部分を詰めずに次の色データを格納する。第1色のデータの格納を行った後、データ展開ブロック3が色変えコードを識別することにより、第1色のデータの格納は終了したと判断し、図7で述べたレジスタ815の値に基づいて、矢印に示すようにライトポインタ(WP)は、第2色のアドレスの先頭へ移動して、そこから第2の色データの格納を行う。
図8の(d)は、第2色のデータがない場合の様子を示している。本実施形態では次の色のデータがなければ、前の色データの格納領域の後に、その色データの格納領域を確保しない。従って、第1色のデータに続いて通常は第2色データの格納領域が確保されるべきところであるが、データ展開ブロック3が色変えコードを2つ連続して識別したことに応じて、第3色のデータが次のアドレスに格納される。
図8の(e)は、第2色のデータについて、書き込み位置を示すライトポインタ(WP)は、読み出し位置を示すリードポインタ(RP)の手前で書き込みを停止することを示す。これは、読み出しが終了していない位置には、データの書き込みを禁止して、上書きされるのを防止するよう制御しているためである。以上の制御は、第3色から第8色の領域についても同様に行われる。
<記録バッファの読み出しアドレス制御>
以下に、図10を参照して記録バッファの読み出しアドレス制御について説明する。なお、同図の左側は記録バッファリング構造制御回路8の読み出しアドレス制御部8Aを示し、同図の右側は記録バッファ4を示す。
記録バッファ4のバッファ領域は、記録バッファの先頭のアドレスであるtop_adrで表され、最終アドレスはbottom_adrで表される。この先頭アドレスはレジスタ803に格納され、最終アドレスはレジスタ804に格納される。記録バッファに示される「RP」は図7と同様にリードポインタであり、「WP」はライトポインタである。記録バッファ4におけるRPとWPの間のハッチング部分は記録データが格納されていることを表し、記録バッファの白色の部分は記録データが格納されていないことを表す。
読み出しアドレス制御部8A内の802は、データの読み出しアドレス(RP:リードポインタ)を示すレジスタであり、破線の枠で囲った900は第1レジスタ群、実線の枠で囲った901は第2レジスタ群である。
第1ブロックから第8ブロックの画像データを記録する場合、例えば、走査の開始時において、第1レジスタ群900には第1ブロックについての情報が格納されている。また、第2レジスタ群901には、第2ブロックについての情報が格納される。第1ブロックの記録が終了すると、第1レジスタ群900には第2レジスタ群901の情報がコピーされ、第1レジスタ群900には第2ブロックの情報が格納される。そして第2レジスタ群901には、第3ブロックの情報が格納される。以下、最後の第8ブロックのデータが格納されるまで順に行われる。そして、次の走査開始時には、再び、第1レジスタ群900には第1ブロックの情報が格納され、第2レジスタ群901には第2ブロックの情報が格納される。
第1レジスタ群内にあるレジスタ(1st_hight 1 color bit)819は、第1色についての高さ情報と色データの有り無し情報を設定するレジスタである。各レジスタ822、824、826、828、830、832、834は第2色〜第8色について高さ情報と色データの有り無し情報を設定するレジスタである。これらの色データの有り無し情報は、上述したデータ展開ブロック3のデータ有無レジスタの情報がコピーされる。このコピーはCPUによる処理、あるいは、データ設定手段(回路)などによって行われる。
820は各ブロックの幅を格納するレジスタである。この幅情報は第1色〜第8色までブロック単位で、共通して使われる値である。
レジスタ(1st_color_adr) 818は第1色の読み出しアドレスを格納するレジスタである。第1色のデータが格納されている記録バッファ819から読み出されるとアドレスが更新される。例えば図8(a)に示すように、第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は、先に設定したブロックのサイズと同じブロックのサイズが同じ場合、この値を「1」とすることで、第1レジスタ群に同じ値を再設定することができる。この場合、レジスタ838〜846の設定を省くことができる。レジスタ878の値が「0」の場合には、各レジスタ838〜846にそれぞれの値が設定される。レジスタ(same_type)878によって、ブロックサイズが同じであれば、レジスタの設定を簡単に行うことができる。
<記録領域と記録データの関係>
図9Aは、1回の走査で記録される記録領域と、その領域に記録される画像データの関係を概略的に説明する図である。図9Aは矢印で示した領域Dと第8ブロックに対応する領域には、画像データがないことを示す。この領域Dは第3ブロックの右側、第4ブロックの全て、第5ブロックの左側を含む領域である。
図9Bの(a)は、図9Aに対応する記録バッファに書き込まれる画像データについての説明図である。図9Aの領域Dには第4ブロックに対応する領域に画像データはないので、記録バッファには第4ブロックは確保されていない。
また、図9B(a)で、第2ブロックに格納されるデータには第3色の色データ及び第4色データはないので、これらの分をつめて第5色データ〜第8色データが格納されている。第3ブロックには、第1色データ、第2色データのみが格納され、第3色以降の色データは格納されていない。第2ブロックと第3ブロックのハッチングされたは部分は、データが無いためにバッファの割り当てがされていないことを示す。従って、第2ブロックにおける第8色データの最終アドレスの次のアドレスは、第3ブロックにおける第1色データの先頭アドレスである。このように、画像データを詰めて記録バッファに格納することができるので、記録バッファを効率良く使用することができる。
従って、例えば、画像データが無い領域に対しても記録バッファの領域を一律に格納することにより記録バッファが1走査分のデータすべてを格納する領域を確保できない場合でも、本実施形態で示したように画像データの有無をレジスタに格納されている色データの有無の情報に基づきデータの格納を制御することで1走査分のデータを格納することができる。
<記録動作の説明>
図11は、画像データを処理し、記録動作の処理の流れを説明するフローチャートである。ステップS1201でデータ解析フラグをチェックする。データ解析フラグがセットされていれば(S1201−Yes)、処理をステップS1202へ進め、データ解析処理を実行し、そのデータ解析フラグをクリアする。もしデータ解析フラグがクリアされていれば(S1201−No)、ステップS1202をスキップして処理をステップS1203に進める。
ステップS1203では、データ展開処理フラグをチェックする。もし、データ展開処理フラグがセットされていれば(S1203−Yes)、処理をステップS1204に進め、データ展開処理を実行し、そのデータ展開処理フラグをクリアする。もし、フラグがセットされていなければ(S1203−No)、ステップS1204をスキップする。
ステップS1205では、スキャンフラグをチェックする。もしスキャンフラグがセットされていれば(S1205−Yes)、処理をステップS1206に進め、スキャン(記録)処理を行う(S1206)。スキャン処理が終了した場合には、処理をステップS1201へ戻す。
また、ステップS1205の判断で、スキャンフラグがセットされていない場合(S1205−No)は、ステップS1206の処理をスキップして、処理をステップS1201に戻す。
図12は、受信バッファ割り込み(INT1、INT2)処理の流れを説明するフローチャートである。ステップS1301で割り込み要因を判別する。その割り込み要因がデータ受信であれば、ステップS1302へ処理を進め、データ解析処理フラグをセットする。ここで、セットされたデータ解析フラグは、図11のフローチャートにおけるステップS1201で設定の有無が判断される。
図13は、データ解析処理における制御フローを説明するフローチャートであり、このデータ解析処理は、図11のステップS1202で実行される処理である。まず、ステップS1401で受信データの取り込みを行う。
次に、ステップS1402で受信したデータが記録データか否かをチェックする。データが記録データであれば(S1402−Yes)、処理をステップS1404に進め、記録バッファへの書き込みアドレス情報を設定する(S1404)。ステップS1405では、パックビッツ起動をこない、記録バッファに読み出したデータ展開する。
ステップS1402の判断で、受信したデータが記録データでなければ(S1402−No)、処理をステップS1403に進めてコマンド処理とデータ設定処理を行う。ステップS1403では、バッファの幅、バッファの高さについて情報を受け渡し用バッファに設定する。この受け渡し用バッファは、図1に示すバッファ構造情報メモリ11である。
図14は、パックビッツ終了割り込み(INT3)の処理の流れを説明するフローチャートである。これは、パックビッツ処理処理が終了するとステップS1501でデータ展開フラグをセットして終了する。データ展開フラグは図11のフローチャートにおけるステップS1203(図11)でフラグがセットされているか否か判断される。
図15は、データ展開処理の流れを説明するフローチャートである。ステップS1601で記録ブロックレジスタに設定する値を、受け渡し用バッファに設定する。この受け渡し用バッファは、図1のバッファ構造情報メモリ11であり、記録ブロックレジスタは、例えば図10で示したブロック単位で設定されるレジスタ(900、901)である。
ステップS1602でスキャン開始判定を行う。所定ブロック以上のデータの展開終了(例えば、1ブロック分、あるいは1スキャン分のデータが展開終了)したかを判断する。データの展開が終了していれば(S1602−Yes)、処理をステップS1603に進め、スキャン要求のため、スキャンフラグをセットして終了する(S1603)。
図15に示すフローチャートの処理は、図11のステップS1204の処理に相当する。
図16は、スキャン処理を説明するフローチャートである。ステップS1701で図15のステップS1601で説明した受け渡し用バッファに保存したデータを記録ブロックレジスタ(900、901)に設定する。ステップS1702で記録ブロックレジスタに設定された画像データのスキャン(記録)を実行する。
図17は、ブロックデータを記録する際の割り込み(INT4)処理を説明するフローチャートである。この割り込み処理は記録動作中にブロック単位で処理が終了すれば、実行される。例えば、記録されるデータが8つのブロックに格納されていれば、8回の割り込み処理が実行されることになる。ブロックデータの記録において、発生した割り込み要因を判別する(S1801)。この割り込み要因がブロックデータの終了の場合は処理をステップS1802へ進める。
一方、割り込み要因が、記録するべきブロックデータが無い状態、すなわち、記録データがなければ(例えば、書き込みアドレスポインタ(WP)の値と読み取りアドレスポインタ(RP)の値を調べ、ブロックにデータが格納されていなければ)、処理をステップS1804に進め、記録失敗処理を行い、スキャンを停止する(S1804)。この場合には、途中のブロックまでの記録が行われた状態であるので、未記録のデータを格納して、再びスキャンを行い、未記録の領域の記録を行う。
ステップS1802では、その記録が完了したブロックが最終のブロックであるか否かを判断する。もし、最終ブロックであれば(S1802−Yes)、処理を終了する。最終ブロックでなければ(S1802−No)、処理をステップS1803に進め、次の画像データのブロックデータをレジスタに設定する。
[第2の実施形態]
以下、本発明に係る第2の実施形態について説明する。以下の説明では上記第1の実施形態と同様な部分については説明を省略し、本実施形態の特徴的な部分を中心に説明する。
第1の実施形態では、各色のブロックはいずれも同じ長さであったが、第2の実施形態は、長さの異なる2種類のブロックを使用するものである。
図9B(b)は、第1実施形態における図9B(a)より、更にメモリを有効に使う場合を説明した図である。図9B(a)では、記録領域を複数に分割した各ブロックの走査方向の幅情報はどのブロックも等しかったが、ブロック内に記録するべき画像データが無い場合は、必要最低限の幅情報を持てばよい。図9Aの第3ブロックと第5ブロックに着目すると、第3ブロックは左側にのみ画像データがあり、第5ブロックは右側にのみ画像データがある。従って、第3ブロックと第5ブロックの長さを、画像データ数に応じて短くすることができる。
この場合、本実施形態においては、長さがフルサイズのブロックとその半分のサイズのブロックとの2つのサイズのブロックを用いて制御する。長さが半分のサイズのブロックは色変えコードを区切りとして使用し、フルサイズのブロックは所定長であるので、色変えコードを使用しない。つまり、受信バッファのデータを記録バッファに書き込む(転送する)際に、色変えコードが半分のブロックサイズを超えても現れない場合は、フルサイズのブロックであると認識する。第3ブロックと第5ブロックに着目すると、第3ブロックは左側のみ画像データがあり、第4ブロックは右側にのみ画像データがある。従って、第3ブロックと第5ブロックの長さを、画像データ数に応じて、他のブロックの長さの半分とした。
これによって、メモリ容量が少ない場合にも、記録バッファを効率良く使うことができる。例えば、記録バッファが1走査分のデータすべてを格納する領域を確保できない場合でも、1走査分のデータを格納することができる。
なお、この場合、ホスト装置側で、画像データが複数ブロックにまたがってヌルデータが続く場合に、ブロックの長さを異ならせるように画像データを生成すればよい。
[他の実施形態]
以上、本発明にかかる実施形態を説明してきたが、本発明の趣旨は、記録ヘッドのノズル数は1ノズル列あたり64、記録で使用する色数4色に限定されるものではない。
また、本実施形態では、記録領域を主走査方向に8つに分割したが、ブロックの分割はこの数に限定するものではない。更に、記録バッファリング構造回路のレジスタについて、図7や図10に示したように、1つのレジスタに各色の記録バッファの高さの情報と、色データの有り無しの情報を格納するものではなく、色の変化を表すコードのみが存在していればよい。
また上記の実施形態では、色変えコードの解析をデータ展開ブロック3に受け持たせているが、I/Fコントローラブロックにおいて同様の処理を行うようにしてもよい。
なお、以上の実施形態において、記録ヘッドから吐出される液滴はインクであるとして説明し、さらにインクタンクに収容される液体はインクであるとして説明したが、その収容物はインクに限定されるものではない。例えば、記録画像の定着性や耐水性を高めたり、その画像品質を高めたりするために記録媒体に対して吐出される処理液のようなものがインクタンクに収容されていても良い。
以上の実施形態は、インクジェット記録方式を採用した記録装置を例に挙げて説明したが、本発明は、インクジェット方式以外でも、カラー記録を行うべく、記録に使用する色に対応した複数の記録素子列を有する記録ヘッド、あるいは記録に使用する色に対応した数の記録ヘッドを、記録素子の配列方法と交差する方向に走査して記録を行う、いわゆるシリアル型の記録装置であれば適用できる。
インクジェット記録方式の中でも、インク吐出を行わせるために利用されるエネルギーとして熱エネルギーを発生する手段(例えば電気熱変換体やレーザ光等)を備え、前記熱エネルギーによりインクの状態変化を生起させる方式を用いると、記録の高密度化、高精細化が達成できるので好適である。
さらに加えて、本発明に係る記録装置の形態としては、コンピュータ等の情報処理機器の画像出力端末として一体または別体に設けられるものの他、リーダ等と組み合わせた複写装置、さらには送受信機能を有するファクシミリ装置の形態を取るものであっても良い。
本発明にかかる記録装置の実施形態において、その記録装置の記録制御部を示すブロック図である。 ホストコンピュータから転送されるデータを受信バッファに格納した場合のデータ構造を示す図である。 画像データを保持する記録バッファのデータ構造を示す図である。 インターフェースコントローラ1の内部を示すブロック図である。 受信バッファリング構造制御回路部7の詳細を示すブロック図である。 受信バッファリング構造制御回路の動作タイミングの説明図である。 記録バッファリング構造制御回路を説明する図である。 記録バッファ4に画像データがどのように格納されるか説明する図である。 1回の走査で記録される記録領域と、その領域の画像データの関係を説明する図である。 記録バッファに格納する画像データの構造についての説明する図である。 記録バッファリング構造制御回路を説明する図である。 画像データを処理し、記録動作の処理の流れを説明するフローチャートである。 受信バッファ割り込み処理の流れを説明するフローチャートである。 データ解析処理における制御フローを説明するフローチャートである。 パックビッツ終了割り込みの処理の流れを説明するフローチャートである。 データ展開処理の流れを説明するフローチャートである。 スキャン処理を説明するフローチャートである。 ブロックデータを記録する際の割り込み処理を説明するフローチャートである。 本発明の好適な実施形態であるプリンタの外観を示す図である。 図18のプリンタの制御構成を示すブロック図である。
符号の説明
1 インターフェースコントローラ
2 受信バッファ
3 データ展開ブロック
4 記録バッファ
5 記録データ生成ブロック
6 記録ヘッド
7 受信バッファリング構造制御回路
8 記録バッファリング構造制御回路
8A 読み出しアドレス制御部
8B 書き込みアドレス制御部
9 CPU
10 キャリッジエンコーダー
11 バッファ構造情報メモリ
900 第1レジスタ群
901 第2レジスタ群
RP リードポインタ
WP ライトポインタ

Claims (7)

  1. 記録ヘッドを搭載したキャリッジを記録媒体上で走査させて複数の色でカラー記録を行うために、該記録ヘッドの走査方向の記録領域を複数の領域に分割し、該分割された領域単位の画像データを格納する記録バッファを有する記録装置であって、
    接続されたホスト機器から送信され、各色データの区切りを示す情報を含む前記分割された領域単位の画像データを格納する受信バッファと、
    前記各色データの区切りを示す情報に基づき、各色データの有無情報を生成するデータ処理部と、
    前記受信バッファに格納された画像データと、前記各色データの有無情報に基づいて、該領域単位の画像データの書き込みアドレス情報を色データと共に前記記録バッファに格納するように制御する書き込み制御部と、
    前記記録バッファに格納された画像データを読み出すための読み出しアドレス情報を色データ毎に制御する読み出し制御部と、
    前記読み出しアドレス情報に基づいて読み出された画像データに従い、前記分割された領域単位の記録データを生成する記録データ生成手段と、
    を備えることを特徴とする記録装置。
  2. 前記読み出し制御部は、各色データの有無情報を保持するレジスタを有し、前記データ処理部で生成された各色データの有無情報を保持することを特徴とする請求項1に記載の記録装置。
  3. 前記書き込み制御部は、前記記録バッファに各色のデータを同じサイズで格納することを特徴とする請求項1又は2に記載の記録装置。
  4. 前記書き込み制御部は、ある色のデータが所定のサイズ未満であるときに、該色データに色データの区切りを示す情報を付加して前記記録バッファに格納することを特徴とする請求項1又は2に記載の記録装置。
  5. 前記記録バッファに、前記画像データを先頭アドレス情報と最終アドレス情報とにより設定された領域間で循環して格納することが可能であることを特徴とする請求項1から4のいずれか1項に記載の記録装置。
  6. 前記記録バッファに格納できるデータ数は、1走査の記録領域より少ない記録領域のデータ数であることを特徴とする請求項1から5のいずれか1項に記載の記録装置。
  7. 記録ヘッドを搭載したキャリッジを記録媒体上で走査させて複数の色でカラー記録を行うために、該記録ヘッドの走査方向の記録領域を複数の領域に分割し、該分割された領域単位の画像データを格納する記録バッファを有する記録装置の制御方法であって、
    接続されたホスト機器から送信され、各色データの区切りを示す情報を含む前記分割された領域単位の画像データを受信バッファに格納する受信工程と、
    前記各色データの区切りを示す情報に基づき、各色データの有無情報を生成するデータ処理工程と、
    前記受信バッファに格納された画像データと、前記各色データの有無情報に基づいて、該領域単位の画像データの書き込みアドレス情報を色データと共に前記記録バッファに格納するように制御する書き込み制御工程と、
    前記記録バッファに格納された画像データを読み出すための読み出しアドレス情報を色データ毎に制御する読み出し制御工程と、
    前記読み出しアドレス情報に基づいて読み出された画像データに従い、前記分割された領域単位の記録データを生成する記録データ生成工程と、
    を備えることを特徴とする記録装置の制御方法。
JP2003397815A 2003-11-27 2003-11-27 記録装置及び記録装置の制御方法 Withdrawn JP2005153414A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003397815A JP2005153414A (ja) 2003-11-27 2003-11-27 記録装置及び記録装置の制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003397815A JP2005153414A (ja) 2003-11-27 2003-11-27 記録装置及び記録装置の制御方法

Publications (1)

Publication Number Publication Date
JP2005153414A true JP2005153414A (ja) 2005-06-16

Family

ID=34722864

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003397815A Withdrawn JP2005153414A (ja) 2003-11-27 2003-11-27 記録装置及び記録装置の制御方法

Country Status (1)

Country Link
JP (1) JP2005153414A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100739789B1 (ko) * 2006-02-02 2007-07-13 삼성전자주식회사 화상 형성 장치의 기록 소자들을 구동시키는 장치

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100739789B1 (ko) * 2006-02-02 2007-07-13 삼성전자주식회사 화상 형성 장치의 기록 소자들을 구동시키는 장치

Similar Documents

Publication Publication Date Title
JP3826066B2 (ja) 記録装置及び記録装置の制御方法
JP3491972B2 (ja) 記録装置及び記録方法
US20080007782A1 (en) Recording apparatus and method for controlling recording apparatus
US8724157B2 (en) Printing apparatus and printer driver
JP2008276531A (ja) 画像処理装置、画像処理方法及びプログラム
JP2006247905A (ja) 記録装置、記録装置のデータ処理方法、及び記録システム
JP4455295B2 (ja) 記録装置、及び、記録装置のデータ処理方法
JP3919587B2 (ja) 記録装置及び記録装置の制御方法
JP2005153414A (ja) 記録装置及び記録装置の制御方法
JP3613076B2 (ja) 画像処理装置、画像処理方法、および記録媒体
JP3970297B2 (ja) 記録装置及び記録装置の制御方法
KR100771714B1 (ko) 기록 장치 및 기록 장치에 대한 데이터 처리 방법
JP3927880B2 (ja) 記録装置及び記録装置の制御方法
JP4174264B2 (ja) 記録装置及びその制御方法
JP3970296B2 (ja) 記録装置及び記録装置の制御方法
JP3554004B2 (ja) 記録装置
JP4502391B2 (ja) 記録装置、記録装置のデータ処理方法、及び記録システム
JP2006281779A (ja) 記録装置、記録装置のデータ処理方法、記録装置の制御方法、プログラム及び記憶媒体
JP2004306596A (ja) 記録装置及び記録データの制御方法
JP2005342965A (ja) 記録装置及び記録装置のデータ処理方法
JP2006168198A (ja) 記録装置及び記録装置の制御方法
JP2005343144A (ja) 記録装置及び予備吐出制御方法
JP2005305984A (ja) 記録装置及びその調整方法
JP2005066943A (ja) 記録装置及び記録装置の駆動データマスク方法
JP2005246688A (ja) 記録装置

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20070206