(57)【特許請求の範囲】
【請求項１】
外部機器から送信されたｎ（ｎは複数）ビットで表されるインデックスデータをメモリに格納し、該格納されたインデックスデータからインデックスデータの解像度のｎ倍の解像度のドットデータに展開し、そのドットデータに基づき、記録ヘッドを搭載したキャリッジを記録媒体上に走査させて記録を行うインクジェットプリンタであって、
書き込み要求に従って前記メモリに対して前記インデックスデータを書き込む書き込み処理、及び読み出し要求に従って前記メモリから１カラム分の同一のインデックスデータをｎ回の読み出す読み出し処理をＦＩＦＯ制御により行うメモリ制御手段と、
前記記録ヘッドが備えるノズル数に対応する１カラム分のドットデータを保持するレジスタと、
前記メモリ制御手段により前記メモリからインデックスデータを１回読み出す毎に、ｎカラム分のドットデータに展開し、展開されたｎカラム分のドットデータのうち1カラム分を選択して前記レジスタに格納する展開手段と、
前記展開手段により前記レジスタに格納された１カラム分のドットデータを、前記記録ヘッドへ転送する記録ヘッド制御手段とを備え、
前記展開手段は、前記メモリ制御手段により前記メモリからインデックスデータを１回読み出す毎に、異なるカラムを選択する
ことを特徴とするインクジェットプリンタ。
【請求項２】
前記書き込み要求には、書き込みデータの色を特定するための色情報が含まれ、
前記メモリ制御手段は、前記色情報に基づき前記データを色ごとに前記メモリに書き込みを行うことを特徴とする請求項１に記載のインクジェットプリンタ。
【請求項３】
前記読み取り要求には、読み取りデータの色を特定するための色情報が含まれ、
前記メモリ制御手段は、前記色情報に基づき読み取り対象のデータが黒データかカラーデータか否かを判断し、該判断に基づき前記ＦＩＦＯポインタの更新を行うことを特徴とする請求項１または２に記載のインクジェットプリンタ。
【請求項４】
前記展開手段は、１つの多値データをｎ×ｎのマトリックスに展開することを特徴とする請求項１に記載のインクジェットプリンタ。
【請求項５】
前記メモリ制御手段に対して、プリントバッファから読み出したインデックスデータの書き込み要求を出力するインデックスデータ処理手段を更に備えることを特徴とする請求項１乃至３のいずれか１項に記載のインクジェットプリンタ。
【請求項６】
外部機器から送信されたｎ（ｎは複数）ビットで表されるインデックスデータをメモリに格納し、該格納されたインデックスデータからインデックスデータの解像度のｎ倍の解像度のドットデータに展開し、そのドットデータに基づき、記録ヘッドを搭載したキャリッジを記録媒体上に走査させて記録を行うインクジェットプリンタの制御方法であって、
書き込み要求に従って前記メモリに対して前記インデックスデータを書き込む書き込み処理、及び読み出し要求に従って前記メモリから１カラム分の同一のインデックスデータをｎ回の読み出す読み出し処理をＦＩＦＯ制御により行うメモリ制御工程と、
前記メモリ制御工程により前記メモリからインデックスデータを１回読み出す毎に、ｎカラム分のドットデータに展開し、展開されたｎカラム分のドットデータのうち1カラム分を選択して、前記記録ヘッドが備えるノズル数に対応する1カラム分のドットデータを保持するレジスタに格納する展開工程と、
前記展開工程により前記レジスタに保持された１カラム分のドットデータを、前記記録ヘッドへ転送する記録ヘッド制御工程とを備え、
前記展開工程は、前記メモリ制御工程により前記メモリからインデックスデータを１回読み出す毎に、異なるカラムを選択する
ことを特徴とするインクジェットプリンタの制御方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、記録装置及びその制御方法に関するものであり、特に、高解像度かつ多ノズルを有するカラーインクジェットプリンタにおける記録の制御に関するものである。
【０００２】
【従来の技術】
従来における記録データの処理においては、プリントバッファにあるインデックスデータを読み込む際に、そのまま、すべてのデータをインデックス展開して、それをプリントバッファに書き込み、再度、印刷する時に、その展開データを読み出すことで、印刷を行なっていた。
【０００３】
【発明が解決しようとする課題】
しかしながら、上記の従来例における処理では、ノズル数が増えてきた場合、メモリへのアクセスが間に合わなくなったり、膨大なデータをレジスタに蓄えるにも、回路的に膨大なものとなるという欠点があった。
【０００４】
【課題を解決するための手段】
本発明は、メモリアクセスの高速化を図り、システムスループットの向上を図ることを目的とする。上記課題を解決し、その目的を達成するべく、本発明にかかるインクジェットプリンタは、外部機器から送信されたｎ（ｎは複数）ビットで表されるインデックスデータをメモリに格納し、該格納されたインデックスデータからインデックスデータの解像度のｎ倍の解像度のドットデータに展開し、そのドットデータに基づき、記録ヘッドを搭載したキャリッジを記録媒体上に走査させて記録を行うインクジェットプリンタであって、
書き込み要求に従って前記メモリに対して前記インデックスデータを書き込む書き込み処理、及び読み出し要求に従って前記メモリから１カラム分の同一のインデックスデータをｎ回の読み出す読み出し処理をＦＩＦＯ制御により行うメモリ制御手段と、
前記記録ヘッドが備えるノズル数に対応する１カラム分のドットデータを保持するレジスタと、
前記メモリ制御手段により前記メモリからインデックスデータを１回読み出す毎に、ｎカラム分のドットデータに展開し、展開されたｎカラム分のドットデータのうち1カラム分を選択して前記レジスタに格納する展開手段と、
前記展開手段により前記レジスタに格納された１カラム分のドットデータを、前記記録ヘッドへ転送する記録ヘッド制御手段とを備え、
前記展開手段は、前記メモリ制御手段により前記メモリからインデックスデータを１回読み出す毎に、異なるカラムを選択する
ことを特徴とする。
【０００６】
上記のインクジェットプリンタにおいて、前記書き込み要求には、書き込みデータの色を特定するための色情報が含まれ、
前記メモリ制御手段は、前記色情報に基づき前記データを色ごとに前記メモリに書き込みを行うことを特徴とする。
【０００７】
上記のインクジェットプリンタにおいて、前記読み取り要求には、読み取りデータの色を特定するための色情報が含まれ、
前記メモリ制御手段は、前記色情報に基づき読み取り対象のデータが黒データかカラーデータか否かを判断し、該判断に基づき前記ＦＩＦＯポインタの更新を行うことを特徴とする。
【０００９】
また、外部機器から送信されたｎ（ｎは複数）ビットで表されるインデックスデータをメモリに格納し、該格納されたインデックスデータからインデックスデータの解像度のｎ倍の解像度のドットデータに展開し、そのドットデータに基づき、記録ヘッドを搭載したキャリッジを記録媒体上に走査させて記録を行うインクジェットプリンタの制御方法は、
書き込み要求に従って前記メモリに対して前記インデックスデータを書き込む書き込み処理、及び読み出し要求に従って前記メモリから１カラム分の同一のインデックスデータをｎ回の読み出す読み出し処理をＦＩＦＯ制御により行うメモリ制御工程と、
前記メモリ制御工程により前記メモリからインデックスデータを１回読み出す毎に、ｎカラム分のドットデータに展開し、展開されたｎカラム分のドットデータのうち1カラム分を選択して、前記記録ヘッドが備えるノズル数に対応する1カラム分のドットデータを保持するレジスタに格納する展開工程と、
前記展開工程により前記レジスタに保持された１カラム分のドットデータを、前記記録ヘッドへ転送する記録ヘッド制御工程とを備え、
前記展開工程は、前記メモリ制御工程により前記メモリからインデックスデータを１回読み出す毎に、異なるカラムを選択する
ことを特徴とする。
【００１０】
記録データをインデックスデータとして持つとき、インデックス展開前のデータ処理回路と、インデックス展開をする回路との間に、専用ＦＩＦＯメモリを設け、そこに一時格納し、そのデータの読み出しは、記録ヘッドの処理に必要となる部分をポインタにより特定することで、メモリアクセスを効率的に行ない、スループットの向上を図ることが可能となる。
【００１１】
【発明の実施の形態】
以下添付図面を参照して本発明の好適な実施形態について詳細に説明する。
【００１２】
なお、以下に説明する実施形態では、インクジェット記録方式を用いた記録装置としてプリンタを例に挙げ説明する。
【００１３】
本明細書において、「記録」（「プリント」という場合もある）とは、文字、図形等有意の情報を形成する場合のみならず、有意無意を問わず、また人間が視覚で知覚し得るように顕在化したものであるか否かを問わず、広く記録媒体上に画像、模様、パターン等を形成する、または媒体の加工を行う場合も表すものとする。
【００１４】
また、「記録媒体」とは、一般的な記録装置で用いられる紙のみならず、広く、布、プラスチック・フィルム、金属板、ガラス、セラミックス、木材、皮革等、インクを受容可能なものも表すものとする。
【００１５】
さらに、「インク」（「液体」と言う場合もある）とは、上記「記録（プリント）」の定義と同様広く解釈されるべきもので、記録媒体上に付与されることによって、画像、模様、パターン等の形成または記録媒体の加工、或いはインクの処理（例えば記録媒体に付与されるインク中の色剤の凝固または不溶化）に供され得る液体を表すものとする。
【００１６】
＜装置本体の概略説明＞
図１２は、本発明の代表的な実施の形態であるインクジェットプリンタＩＪＲＡの構成の概要を示す外観斜視図である。図１２において、駆動モータ５０１３の正逆回転に連動して駆動力伝達ギア５００９〜５０１１を介して回転するリードスクリュー５００５の螺旋溝５００４に対して係合するキャリッジＨＣはピン（不図示）を有し、ガイドレール５００３に支持されて矢印ａ，ｂ方向を往復移動する。キャリッジＨＣには、記録ヘッドＩＪＨとインクタンクＩＴとを内蔵した一体型インクジェットカートリッジＩＪＣが搭載されている。
【００１７】
５００２は紙押え板であり、キャリッジＨＣの移動方向に亙って記録用紙Ｐをプラテン５０００に対して押圧する。５００７，５００８はフォトカプラで、キャリッジのレバー５００６のこの域での存在を確認して、モータ５０１３の回転方向切り換え等を行うためのホームポジション検知器である。
【００１８】
５０１６は記録ヘッドＩＪＨの前面をキャップするキャップ部材５０２２を支持する部材で、５０１５はこのキャップ内を吸引する吸引器で、キャップ内開口５０２３を介して記録ヘッドの吸引回復を行う。５０１７はクリーニングブレードで、５０１９はこのブレードを前後方向に移動可能にする部材であり、本体支持板５０１８にこれらが支持されている。ブレードは、この形態でなく周知のクリーニングブレードが本例に適用できることは言うまでもない。
【００１９】
また、５０２１は、吸引回復の吸引を開始するためのレバーで、キャリッジと係合するカム５０２０の移動に伴って移動し、駆動モータからの駆動力がクラッチ切り換え等の公知の伝達機構で移動制御される。
【００２０】
これらのキャッピング、クリーニング、吸引回復は、キャリッジがホームポジション側の領域に来た時にリードスクリュー５００５の作用によってそれらの対応位置で所望の処理が行えるように構成されているが、周知のタイミングで所望の動作を行うようにすれば、本例にはいずれも適用できる。
【００２１】
＜制御構成の説明＞
次に、上述した装置の記録制御を実行するための制御構成について説明する。
【００２２】
図１３はインクジェットプリンタＩＪＲＡの制御回路の構成を示すブロック図である。制御回路を示す同図において、１７００は記録信号を入力するインターフェース、１７０１はＭＰＵ、１７０２はＭＰＵ１７０１が実行する制御プログラムを格納するＲＯＭ、１７０３は各種データ（上記記録信号やヘッドに供給される記録データ等）を保存しておくＤＲＡＭである。１７０４は記録ヘッドＩＪＨに対する記録データの供給制御を行うゲートアレイ（Ｇ．Ａ．）であり、インターフェース１７００、ＭＰＵ１７０１、ＲＡＭ１７０３間のデータ転送制御も行う。１７１０は記録ヘッドＩＪＨを搬送するためのキャリアモータ、１７０９は記録紙搬送のための搬送モータである。１７０５は記録ヘッドを駆動するヘッドドライバ、１７０６，１７０７はそれぞれ搬送モータ１７０９、キャリアモータ１７１０を駆動するためのモータドライバである。
【００２３】
上記制御構成の動作を説明すると、インターフェース１７００に記録信号が入るとゲートアレイ１７０４とＭＰＵ１７０１との間で記録信号がプリント用の記録データに変換される。そして、モータドライバ１７０６、１７０７が駆動されると共に、ヘッドドライバ１７０５に送られた記録データに従って記録ヘッドが駆動され、記録が行われる。
【００２４】
ここでは、ＭＰＵ１７０１が実行する制御プログラムをＲＯＭ１７０２に格納するものとしたが、ＥＥＰＲＯＭ等の消去／書き込みが可能な記憶媒体を更に追加して、インクジェットプリンタＩＪＲＡと接続されたホストコンピュータから制御プログラムを変更できるように構成することもできる。
【００２５】
なお、上述のように、インクタンクＩＴと記録ヘッドＩＪＨとは一体的に形成されて交換可能なインクカートリッジＩＪＣを構成しても良いが、これらインクタンクＩＴと記録ヘッドＩＪＨとを分離可能に構成して、インクがなくなったときにインクタンクＩＴだけを交換できるようにしても良い。
【００２６】
図１４は、インクタンクとヘッドとが分離可能なインクカートリッジＩＪＣの構成を示す外観斜視図である。インクカートリッジＩＪＣは、図１４に示すように、境界線Ｋの位置でインクタンクＩＴと記録ヘッドＩＪＨとが分離可能である。インクカートリッジＩＪＣにはこれがキャリッジＨＣに搭載されたときには、キャリッジＨＣ側から供給される電気信号を受け取るための電極（不図示）が設けられており、この電気信号によって、前述のように記録ヘッドＩＪＨが駆動されてインクが吐出される。
【００２７】
なお、図１４において、５００はインク吐出口列である。また、インクタンクＩＴにはインクを保持するために繊維質状もしくは多孔質状のインク吸収体が設けられている。
【００２８】
＜第１の実施形態＞
図１は、本実施形態にかかる記録装置の回路構成を示すブロック図である。同図において、１０３はインデックスデータ（コンピュータで処理可能なデータとしてコード化されたデータ）形式の記録データを格納するプリントバッファである。１０２はプリントバッファ１０３より、データを取り出すための、メモリ制御回路である。１０１は、メモリ制御回路１０２で取り出されたインデックスデータを間引いたり、変換したりするための、インデックスデータ処理回路である。
【００２９】
１１０は、本発明にかかるインデックスＳＲＡＭコントローラである。インデックスＳＲＡＭコントローラ１１０は、その構成に専用ＦＩＦＯ制御回路１１１とメモリ制御回路１１２とを有しており、ＳＲＡＭ１１３を制御する。
【００３０】
ここで、専用ＦＩＦＯ制御回路１１１はＳＲＡＭ１１３をＦＩＦＯ制御するための専用制御回路であり、メモリ制御回路１１２はＳＲＡＭ１１３に対して、データの書き込み、読み出しのためのリードライト波形など、メモリの入出力を制御するための制御信号を出力するメモリ制御回路である。
【００３１】
インデックス展開処理回路１２０はインデックスＳＲＡＭコントローラ１１０より、データを読み出すための回路である。インデックス展開処理回路１２０により読み出されたインデックスデータは、リアルデータに変換され、インクジェットヘッド制御回路１３０のに渡される。ここで、ヘッドへの具体的な転送順に並べ替えられたり、濃度調整などが行なわれている。
【００３２】
作成された最終記録データは、１３１のインクジェットヘッドに送信される。
【００３３】
図２は記録システム全体の構成を示したブロック図である。２２１は、プリンタに記録をリクエストするホストコンピュータであり、２２０は、プリンタのＣＰＵボードである。２０４はＣＰＵボード２２０に搭載されたインターフェースコントローラであり、本実施形態ではＩＥＥＥ１２８４インターフェース用のコントローラを使用しているが、これに限定するものではない。
【００３４】
２０１はプリンタの制御全体をつかさどるＣＰＵであり、２０２はＣＰＵ２０１によって使用される、プログラムやデータの処理に使用されるメモリである。
【００３５】
２０３はモータコントローラであり、２２５のキャリッジ（ＣＲ）モータや２２６の紙送り（ＬＦ）モータを制御する。
【００３６】
２２４は、ＣＲモータ２２５によって駆動されるベルトであり、ベルトに取付けられたキャリッジユニット２２３を主走査方向として往復動作させる（図１２の矢印ａ，ｂ方向）。
【００３７】
１４０は記録装置における制御回路を構成するＡＳＩＣであり、プリントバッファ１０３は、ＡＳＩＣ１４０によって使用されるプリントバッファである。インクジェットヘッド１３１はキャリッジ２２３に搭載されていて、往復運動の際に記録処理する構成となっている。
【００３８】
＜記録データの制御＞
記録制御方法の態様として、以下の手順に従うのが望ましい。
【００３９】
例えば、外部機器から送信されたデータをメモリに格納し、その格納されたデータを読み取り、記録ヘッドの構成に合わせた記録データとして展開して記録する記録制御方法は、データをメモリにＦＩＦＯ形式に書き込み処理するための書き込み要求と、その格納されているデータを、アドレスポインタにより指定して読み取り処理するための読み取り要求とから、データの書き込み若しくは読み取りの優先順位を決定する決定ステップと、その決定ステップにおける決定に基づき、メモリに対してデータの書き込み若しくは読み取りの制御をするメモリ制御ステップと、を備え、決定ステップは、データの読み取りアドレスを特定するポインタを、上記の読み取り要求に合わせて更新し、メモリ制御ステップは、ポインタにより特定されたメモリアドレスに従い、メモリにＦＩＦＯ形式で格納されているデータを分割して読み取り制御する。
【００４０】
この手順を実行する場合、データの入出力は、図４、図５、図９に示すタイミングチャートに従い制御されることになる。
【００４１】
以下、データのライト動作、リード動作を具体的に説明する。
【００４２】
図３は、図１で示した、インデックスＳＲＡＭコントローラ１１０の周辺を具体的な信号線を記入して、記録データの制御およびそのデータの流れを説明するブロック図である。
【００４３】
＜ライト動作＞
まず、インデックスデータ処理回路１０１に処理済のデータが用意される。その時点で、インデックスデータ処理回路１０１はライトリクエスト信号（ｗｒ＿ｒｅｑ）３０１を専用ＦＩＦＯ制御回路１１１にアサートすると同時に、ライトデータ（ｗｒ＿ｄａｔａ）３０５をメモリ制御回路１１２に出力し、更に、ライトする色の指定（ｗｒ＿ｃｏｌｏｒ）３０３、ライトするデータ量（ｗｒ＿ｍｏｄｅ）３０４を指定するライトモードを専用ＦＩＦＯ制御回路１１１に出力する。
【００４４】
専用ＦＩＦＯ制御回路１１１は、先ず、ライトリクエスト信号（ｗｒ＿ｒｅｑ）３０１を受付て、この受付けに基づきメモリ制御回路１１２に対して、リクエスト信号（ｒｅｑ）３２１を出力する。
【００４５】
同時に、色指定の信号（ｗｒ＿ｃｏｌｏｒ）３０３から作成した色指定（ｃｏｌｏｒ）３２３、データ量の信号（ｗｒ＿ｍｏｄｅ）３０４から作成したモード指定（ｍｏｄｅ）３２４がメモリ制御回路１１２に出力される。
【００４６】
メモリ制御回路１１２は、受け取ったリクエスト信号（ｒｅｑ）３２１、色指定信号（ｃｏｌｏｒ）３２３、モード指定信号（ｍｏｄｅ）３２４と、ライトデータ（ｗｒ＿ｄａｔａ）３０５から、メモリ１１３を制御するのに必要な波形を作成して、アドレス信号（ａｄｄｒｅｓｓ）３２５と、リード／ライト信号などのコントロール信号（ｃｏｎｔｒｏｌ）３２６と、ライトデータ（ｗｒ＿ｄａｔａ）３２７を出力する。
【００４７】
メモリ制御回路１１２は、メモリ１１３にアクセスが終了した時点でアック信号（ａｃｋ）３２２を専用ＦＩＦＯ制御回路１１１に対して出力する。
【００４８】
専用ＦＩＦＯ制御回路１１１は、アック信号（ａｃｋ）３２２を受けた時点で、インデックスデータ処理回路１０１に対してアック信号（ｗｒ＿ａｃｋ）３０２を出力すると同時に、専用ＦＩＦＯ制御回路１１１の内部にある、指定された色に対するＦＩＦＯカウンタを１アップする。
【００４９】
以上の信号の授受によりライトデータを所定の条件に従いメモリに格納制御することが可能になる。
【００５０】
＜リード動作＞
次に、メモリに格納されたデータのリード動作について説明する。
【００５１】
先ず、インデックス展開処理回路１２０は、次に処理するべきデータのリードリクエスト信号（ｒｄ＿ｒｅｑ）３１１を専用ＦＩＦＯ制御回路１１１に送信する。リードリクエスト信号（ｒｄ＿ｒｅｑ）３１１がアサートされると同時に、インデックス展開処理回路１２０はリードするデータの色の指定（ｒｄ＿ｃｏｌｏｒ）３１３、リードするデータ量及び、ＦＩＦＯを何回読んでカウントダウンするかを指定するリードモード（ｒｄ＿ｍｏｄｅ）３１４の各信号を専用ＦＩＦＯ制御回路１１１に出力する。
【００５２】
専用ＦＩＦＯ制御回路１１１は、先ず、リードリクエスト信号（ｒｄ＿ｒｅｑ）３１１を受付ると、メモリ制御回路１１２に対して、リクエスト信号（ｒｅｑ）３２１を出力する。
【００５３】
色の指定信号（ｒｄ＿ｒｅｑ）３１３に基づき、色指定信号（ｃｏｌｏｒ）３２３を生成し、リードモード（ｒｄ＿ｍｏｄｅ）３１４に基づくモード信号（ｍｏｄｅ）３２４をメモリ制御回路１１２に出力する。
【００５４】
メモリ制御回路１１２は、専用ＦＩＦＯ制御回路１１１から受信した信号（３２１、３２３、３２４）から、メモリ１１３を制御するのに必要な信号波形を生成して、読み出しデータのアドレスを指定するためのアドレス信号（ａｄｄｒｅｓｓ）３２５、データの読み出しを制御するためのコントロール信号（ｃｏｎｔｒｏｌ）３２６を送り、所定のリードデータ（ｒｄ＿ｄａｔａ）３２８を取り出す。
【００５５】
メモリ制御回路１１２は、メモリ１１３との間でアクセスが終了した時点でアック信号（ａｃｋ）３２２を専用ＦＩＦＯ制御回路１１１に対して送り、また、メモリ１１３より読み出したデータをリードデータ（ｒｄ＿ｄａｔａ）３１５としてインデックス展開処理回路１２０に対して出力する。
【００５６】
専用ＦＩＦＯ制御回路１１１は、アック信号（ａｃｋ）３２２を受信した時点で、インデックス展開処理回路１２０に対してアック信号（ｒｄ＿ａｃｋ）３１２を出力すると同時に、専用ＦＩＦＯ制御回路１１１の内部にある、指定された色に対するＦＩＦＯカウンタを指定された回数分、読み出された時点で１ダウンする。
【００５７】
図４は、図３で説明したライト、リード動作と、ＦＩＦＯポインタ値の関係を示すタイミングチャートであり、ＦＩＦＯポインタ値が１回のライト動作で値を１アップし、リード動作により値を１ダウンする場合のＦＩＦＯ制御波形を示した図である。
【００５８】
４２０はライトリクエスト信号（ｗｒ＿ｒｅｑ）の波形であり、４２１は、このライトリクエスト信号に対するライトアック（ｗｒ＿ａｃｋ）信号の波形である。４２２はＦＩＦＯポインタ値を示す。４２３はリードリクエスト信号（ｒｄ＿ｒｅｑ）の波形であり、４２４は、４２３のリードリクエスト信号を受けて出力されるリードアック信号（ｒｄ＿ａｃｋ）の波形である。
【００５９】
タイミングチャート４０１においてライトリクエスト信号が入力されると、ライトアック信号４０２が出力される。この時点でＦＩＦＯポインタ値（４０３）は"０"からポインタ値（４０４）として"１"になる。
【００６０】
次に、タイミングチャート４０５において次のライトリクエスト信号が入力されると、４０６においてライトアック信号が出力される。この時点でＦＩＦＯポインタ値（４０４）は"１"からポインタ値（４０７）として"２"に変化する。ライト信号、ライトアック信号に従って、ＦＩＦＯポインタ値は１つずつカウントアップされる。
【００６１】
また、タイミングチャート４０８において、リードリクエスト信号（ｒｄ＿ｒｅｑ）が入力され、４０９においてリードアック信号（ｒｄ＿ａｃｋ）が出力されると、ＦＩＦＯポインタ値（４０７）は"２"から、ポインタ値（４１０）として"１"に変化する。
【００６２】
更に、タイミングチャートにおける４１１において、リードリクエスト信号が入力されると、タイミングチャート４１２においてリードアック信号（ｒｄ＿ａｃｋ）４２４が出力され、ＦＩＦＯポインタ値（４１０）は"１"からポインタ値（４１３）として"０"に変化する。
【００６３】
１回のリードリクエスト信号、リードアック信号に従い、ＦＩＦＯポインタ値は１つずつカウントダウンする。
【００６４】
図５は、図３において説明した動作を説明するタイミングチャートであり、ＦＩＦＯポインタ値が２回のライト動作で１カウントアップする場合、若しくは２回のリード動作において１カウントダウンする場合の処理を具体的に説明するものである。
【００６５】
５２０はライトリクエスト信号（ｗｒ＿ｒｅｑ）の波形であり、５２１は、このライトリクエスト信号に従ったライトアック信号（ｗｒ＿ａｃｋ）の波形である。５２２はＦＩＦＯポインタ値を示し、５２３はリードポインタの値を示す。
【００６６】
また、５２４はリードリクエスト信号（ｒｄ＿ｒｅｑ）の波形であり、５２５は、このリードリクエスト信号を受けたリードアック信号（ｒｄ＿ａｃｋ）の波形である。
【００６７】
まず、タイミングチャート５０１において、ライトリクエスト信号が入力され、ライトアック信号５０２が出力される。この時点でＦＩＦＯポインタ値（５０３）は"０"からポインタ値（５０４）に"１"に変化する。
【００６８】
タイミングチャート５０５において２つ目のライトリクエスト信号が入力され、ライトアック信号５０６が出力される。この時点でＦＩＦＯポインタ値（５０４）は"１"からポインタ値（５０７）として"２"に変化する。この時点では、リードポインタ値（５０８）は"０"のままである。
【００６９】
一方、タイミングチャート５０９においてリードリクエストが入力されると、リードアック信号５１０が出力される。この時点でリードポインタ値（５０８）は"０"からリードポインタ値（５１１）として"１"にカウントアップする。
【００７０】
タイミングチャート５１２において、次のリードリクエスト信号が入力されると、リードアック信号５１３が出力される。この時点でリードポインタ値（５１１）は"１"からリードポインタ値（５１５）として"０"にカウントダウンする。
【００７１】
同時に、ＦＩＦＯポインタ値（５０７）は"２"からＦＩＦＯポインタ値（５１４）として"１"にカウントダウンする。
【００７２】
以上が、１つ目のライトリクエスト信号５０１に対する、２つのリードリクエスト信号の出力と、ＦＩＦＯポインタ値、リードポインタ値の変化である。
【００７３】
更に、リードリクエスト信号５１６が入力され、リードアック信号５１７が出力されると、この時点でリードポインタ値（５１５）は"０"からリードポインタ値（５１８）として"１"にカウントアップする。
【００７４】
リードリクエスト５１９が入力され、リードアック信号５２０が出力されると、この時点でリードポインタ値（５１８）は"１"からリードポインタ値（５２２）として"０"にカウントダウンする。
【００７５】
同時にＦＩＦＯポインタ値（５１４）は"１"からＦＩＦＯポインタ値（５２１）として"０"にカウントダウンして処理を終了する。
【００７６】
以上が、２つ目のライトリクエスト信号５０５に対する、２つのリードリクエスト信号の出力と、ＦＩＦＯポインタ値、リードポインタ値の変化である。
【００７７】
＜インデックスデータの展開＞
インデックスデータの展開処理の詳細を説明する前に、従来例における処理を説明する。図６は従来例におけるインデックスデータの展開方法について説明する図である。図６において、プリントバッファ１０３より読み出されたデータは、６０１に示すデータ配列のように、３００ｄｐｉ  ２ｂｉｔより構成される１カラム分のデータである。図６においては、３００ｄｐｉ、２ｂｉｔのインデックスデータ４個、"００""０１""１０""１１"を例示している。このデータをインデックス展開回路６０２に入力し、展開すると１つのインデックスデータは縦横６００ｄｐｉの解像度で２×２のマトリックスに展開される。
【００７８】
すなわち、データとしては６００ｄｐｉ  ８ドットの２カラム分のデータが作成される。
【００７９】
従来例においては、インデックス展開した値は、全てレジスタに格納される。本例では８ビットのデータが１６ビットのデータになるだけであるが、ノズル数が増えてくると、例えば、１２８０ノズルの場合、２５６０ビットものレジスタが必要となる。４色のカラープリンタにおいては、その４倍で増えたレジスタの量は５１２０ビットとなる。
【００８０】
また、インデックス展開されたデータを一旦プリントバッファ１０３に戻して、必要なときに再度読み出す構成をとる他の従来例においては、１０３のプリントバッファにライト、リードする分、プリントバッファの使用効率が落ちてしまうという問題もある。
【００８１】
たとえば、２５６０ビットのデータを格納するのに、３２ビットメモリ使用した場合、２５６０／３２＝８０メモリサイクルとなり、リードとライトを双方考慮すると、その２倍の１６０サイクルの処理が必要となる。ここで、１サイクル１００ｎｓのＲＡＭを使用すれば、１６ｕｓの時間が必要となる。
【００８２】
インデックスデータを読み出すだけの場合、１２８０／３２＝４０サイクルで済んでいたので、その４倍のメモリアクセスを必要とすることとなる。
【００８３】
図７は本実施形態におけるインデックスデータの展開処理方法について説明する図である。プリントバッファ１０３より読み出されたデータは、インデックスデータの形式で６０１に示したような構造となっている。６０１においては３００ｄｐｉ、２ｂｉｔのインデックスデータとして、"００""０１""１０""１１"、の４個を例示している。
【００８４】
このデータを内蔵ＳＲＡＭ１１３に格納する。
【００８５】
格納されたデータをインデックス展開回路１２０に入力し、展開すると、１つのインデックスデータは縦横６００ｄｐｉの解像度で、２×２のマトリックスに展開され、読み出されたインデックスデータは全体として６００ｄｐｉ  ８ドットの２カラム分のデータを作成することが可能である。
【００８６】
本実施形態においては、すべてインデックス展開した値のうち、使用する１カラム分のデータにアクセスし、レジスタに格納するため、１２８０ノズルの場合、１２８０ビットのレジスタだけで十分である。
【００８７】
但し、次のカラムデータを必要とするときは、図７の２回目のリードとして示すように内蔵ＳＲＡＭ１１３の読み出しから行なって、インデックス展開処理回路１２０による再度の展開を行なう必要がある。
【００８８】
データとしては、１回目のリードにより展開処理した１カラム目のデータ７０１と、２回目のリードにより展開処理したの２カラム目のデータ７０２が別個に展開処理されてインクジェット記録ヘッド制御回路１３０に送信される。
【００８９】
専用内蔵ＳＲＡＭ１１３を使用することで、従来例の処理において生じたメモリアクセスの問題は解消できる。
【００９０】
内蔵ＳＲＡＭなので、基本的にはＡＳＩＣの外に配置されたＤＲＡＭのプリントバッファよりも、一回のアクセス時間は数倍高速に行なうことが可能であり、かつ、システムとして要求スピードが速くても、要求に応じてパス幅を拡張することで、簡単に高速化対応することが可能である。
【００９１】
本実施形態では、プリントバッファに関しては、１回のライト動作及びリード動作に対して、内蔵ＳＲＡＭは１回のライト、２回のリード動作であり、両メモリに対するアクセスは２：３の関係になる。両メモリに対するアクセスの同調を図るためには内蔵ＳＲＡＭ１１３に対するアクセススピードはプリントバッファに対するアクセススピードに対して１．５倍あればよい。
【００９２】
また、内蔵ＳＲＡＭ１１３の周辺制御をＦＩＦＯ制御とすることで、インデックスデータ処理回路１０１と、インデックス展開処理回路１２０のアクセス方法をタイミング的に容易に制御することができる。
【００９３】
すなわち、メモリに対するデータの入出力制御をＦＩＦＯとすることで、常にインデックスデータ処理回路１０１は、ＲＡＭ１１３に読み書きできるし、またインデックス展開処理回路１２０は、データをいつでも読み出すことができる。
【００９４】
図１０は内蔵ＳＲＡＭの、メモリマップを示している。
【００９５】
このメモリマップにおいて、１００１はアドレスの上位２ビットは、色の情報（ｃｏｌｏｒアドレス）である。
【００９６】
また、１００２の２ビットはＢＡＮＫアドレスで、ＦＩＦＯ制御によって切り替えられるアドレスである。
【００９７】
これらのアドレスデータは、一回のリクエストによって、ブロック間にて送受信が行なわれる実際のデータのアドレスであり、８ビットのメモリで２０４８ビットまで対応している。
【００９８】
図１１は記録データの制御を実行するための構成を示すブロック図である。
【００９９】
専用ＦＩＦＯ制御回路１１１の内部には、優先順位決定回路１１０１を有し、優先順位決定回路１１０１はインデックスデータ処理回路１０１から出力されるライトリクエスト信号（ｗｒ＿ｒｅｑ）３０１を受け付けるか、インデックス展開処理回路１２０から出力されるリードリクエスト信号（ｒｄ＿ｒｅｑ）３１１信号を受け付けるかを決定し、決定した方のリクエスト信号（ｒｅｑ）３２１をメモリ制御回路１１２に出力すると同時に、選択されたリクエストにおける色とモードをそれぞれ色信号（ｃｏｌｏｒ）３２３とモード信号（ｍｏｄｅ）３２４としてメモリ制御回路１１２に出力する。
【０１００】
メモリ制御回路１１２は、受信したリクエスト信号３２１に対するアック信号（ａｃｋ）３２２を優先順位決定回路１１０１に返信する。
【０１０１】
メモリ制御回路１１２におけるＦＩＦＯ制御は現在どちらのリクエスト信号が受け付けられているかを示すセレクト信号１１０５と、アック信号３２２、カラー信号３２２、モード信号３２４によって行なわれる。
【０１０２】
専用ＦＩＦＯ制御回路１１１にはブラックＦＩＦＯポインタ制御回路１１０２と、カラーＦＩＦＯポインタ制御回路１１０３が存在する。カラーＦＩＦＯポインタ制御回路１１０３はＦＩＦＯポインタとしてはシアン、マゼンタ、イエロー各色持っており、動作モード制御自体は共通化されている。
【０１０３】
ブラックとカラーとで別のＦＩＦＯポインタ制御回路を持つことで、ブラックとカラーのデータ構造を変えたときに、たとえば、ブラックはリアルデータ、カラーはインデックス２ビットのデータである場合においても対応可能となる。
【０１０４】
ＦＩＦＯ制御の結果、次に使用するバンクアドレスが決定され、ブラックのバンクアドレス１１０６、カラーのバンクアドレス１１０７が１１２のメモリ制御回路に出力される。
【０１０５】
セレクタ１１０４は、色信号３２３によりブラックのバンクアドレス信号１１０６とカラーのバンクアドレス信号１１０７とをセレクトして、使用されるバンクアドレス３２５が出力される。メモリ制御回路１１２は、所定のリクエスト信号に応じて、メモリのバンクアドレスを制御して内蔵ＳＲＡＭにアクセスしてデータのリード、ライトの制御を行なう。
【０１０６】
以上説明したように、本実施形態によればインデックスデータ処理回路１０１とインデックス展開処理回路１２０との間にメモリ１１３を配置して、ＦＩＦＯポインタ制御動作回路（１１０２、１１０３）により、使用するデータ構造にあわせてリード、ライトを制御する、たとえば、２ビットインデックスデータの場合は、2カラム分のデータが作成できるため２回読み込んだ後、ＦＩＦＯポインタを更新するという特殊な制御を行なうこととなる。中間メモリとして、ＡＳＩＣ内蔵ＳＲＡＭを使用することで、メモリアクセスの高速化が容易となり、システムスループット向上が図れる。
【０１０７】
また、専用のＦＩＦＯを読み出す毎に、必要な１カラムだけを処理することで、多値インデックスデータになればなるほど、インデックス展開処理回路の回路規模を小さくすることが可能となる。
【０１０８】
＜第２の実施形態＞
図８は図７で説明した、内蔵ＳＲＡＭ１１３からのデータのリードを１回目と２回目に分けて読み出す処理を拡張させた、異なるインデックスデータの展開処理を説明する図である。
【０１０９】
プリントバッファ１０３より読み出されたデータは、インデックスデータの形式で８０１に示したような構造となっている。図８は３００ｄｐｉ、４ｂｉｔのインデックスデータ２個、"００１０""１０００"、を例示している。
【０１１０】
このデータを第１の実施形態と同様に内蔵ＳＲＡＭ１１３に格納する。
【０１１１】
格納されたデータをインデックス展開回路８０２に入力して、展開すると１つのインデックスデータは縦横１２００ｄｐｉの解像度で、４×４のマトリックスに展開される。すなわち、データとしては１２００ｄｐｉ、８ドットの４カラム分のデータを作成することが可能である。
【０１１２】
本実施形態においては、すべてインデックス展開した値のうち、使用する１カラム分のデータにアクセスし、レジスタに格納するため、１２８０ノズルの場合、１２８０ビットのレジスタだけで十分である。ただし、次のカラムデータを必要とするときは、ＲＡＭ１１３の読み出しから行なって、再度展開を行なわなければならない。
【０１１３】
最初の１カラムを使用する場合、ＳＲＡＭから１回目のリードにより展開した展開データ８０３の１カラム分（ハッチングを付した部分）のみを記録データとして使用して、２カラム目は、２回目のリードにより展開した展開データ８０４の１カラム分のデータが記録データとして処理の対象とされる。以下、同様に３カラム目は、３回目のリードに基づき、インデックス展開したデータ８０５の３カラム目の１カラム分のデータ、４カラム目は、４回目のリードに基づき、インデックス展開したデータ８０６の４カラム目の１カラム分のデータを使用する。
【０１１４】
専用内蔵ＳＲＡＭ１１３を使用することで、従来例の処理において生じたメモリアクセスの問題は解消できる。
【０１１５】
内蔵ＳＲＡＭなので、基本的にはＡＳＩＣの外に配置されたＤＲＡＭのプリントバッファよりも、一回のアクセス時間は数倍高速に行なうことが可能であり、かつ、システムとして要求スピードが速くても、要求に応じてパス幅を拡張することで、簡単に高速化対応することが可能である。
【０１１６】
本実施形態では、プリントバッファに関しては、１回のライト動作及びリード動作に対して、内蔵ＳＲＡＭは１回目のライト、４回のリード動作であり、両メモリに対するアクセスは２：５の関係になる。両メモリに対するアクセスの同調を図るためには内蔵ＳＲＡＭ１１３に対するアクセススピードはプリントバッファに対するアクセススピードに対して２．５倍あればよい。
【０１１７】
また、内蔵ＳＲＡＭ１１３の周辺制御をＦＩＦＯ制御とすることで、インデックスデータ処理回路１０１と、インデックス展開処理回路１２０のアクセス方法をタイミング的に容易に制御することができる。
【０１１８】
すなわち、メモリに対するデータの入出力制御をＦＩＦＯとすることで、常にインデックスデータ処理回路１０１は、ＲＡＭ１１３に読み書きできるし、またインデックス展開処理回路１２０は、データをいつでも読み出すことができる。
【０１１９】
図９は、図８において説明した動作を説明するタイミングチャートであり、ＦＩＦＯポインタ値が４回リード動作でカウントを１ダウンする場合の処理を具体的に説明するものである。
【０１２０】
９５０はライトリクエスト（ｗｒ＿ｒｅｑ）信号の波形を示し、９５１は、そのライトリクエスト信号に対するライトアック（ｗｒ＿ａｃｋ）信号の波形である。９５２はＦＩＦＯポインタの値を示す。９５３はリードポインタの値であり、９５４はリードリクエスト信号（ｒｄ＿ｒｅｑ）の波形、９５５はリードアック信号（ｒｄ＿ａｃｋ）の波形である。
【０１２１】
タイミングチャート９０１においてライトリクエスト信号が入力されると、ライトアック信号９０２が出力される。この時点でＦＩＦＯポインタ値（９０３）は"０"からポインタ値（９０４）として"１"になる。
【０１２２】
タイミングチャート９０５において、２つ目のライトリクエスト信号が入力されると、９０６においてライトアック信号が出力される。この時点でＦＩＦＯポインタ値（９０４）は"１"からポインタ値（９０７）として"２"に変化する。
【０１２３】
２つのライトリクエスト信号が入力されることにより、ＦＩＦＯポインタ値は０から１、１から２へと１つずつカウントアップされる。第２の実施形態の場合、１つのライトリクエスト信号に対して、以下に示す４回のリードリクエスト信号が発行される。
【０１２４】
タイミングチャート９０８においてリードリクエスト信号が入力されると、９０９においてリードアック信号が出力される。この時点でリードポインタ値（９１０）として"０"がリードポインタ値（９１１）として"１"に変化する。
【０１２５】
タイミングチャート９１２において２つ目のリードリクエスト信号が入力されると、リードアック信号９１３が出力される。この時点でリードポインタ値（９１１）は"１"からポインタ値（９１４）として"２"に変化する。
【０１２６】
更に、タイミングチャート９１５において３つ目のリードリクエスト信号が入力され、リードアック信号９１６が出力されると、リードポインタ値（９１４）は"２"からポインタ値（９１７）として"３"に変化する。
【０１２７】
タイミングチャート９１８において４つ目のリードリクエスト信号が入力され、リードアック信号（９１９）が出力されると、リードポインタ値（９１７）は"３"からリードポインタ値（９２１）として"０"に変化する。
【０１２８】
同時にＦＩＦＯポインタ値（９０７）は"２"からＦＩＦＯポインタ値（９２０）として"１"に変化する。
【０１２９】
以上が、１つのライトリクエスト信号９０１に対する、４つのリードリクエスト信号の出力と、ＦＩＦＯポインタ値、リードポインタ値の変化である。
【０１３０】
リードリクエスト信号９２２、９２５、９２８、９３１は２つ目のライトリクエスト信号９０５に対する４つのリードリクエスト信号であり、この場合でも同様に、リードポインタ値は１つのリードリクエスト信号の出力に応じて１つずつカウントアップしていき、４つ目のリードリクエスト信号を出力した後、０にリセットされる。このとき、ＦＩＦＯポインタ値も１から０にカウントダウンして処理を終了する。
【０１３１】
以上説明したように、本実施形態によればインデックスデータ処理回路１０１とインデックス展開処理回路８０２との間にメモリ１１３を配置して、ＦＩＦＯポインタ制御動作回路（１１０２、１１０３）により、使用するデータ構造にあわせてリード、ライトを制御する、たとえば、４ビットインデックスデータの場合は４回繰り返し読んだ後に、ＦＩＦＯポインタを更新する制御を行なうこととなる。中間メモリとして、ＡＳＩＣ内蔵ＳＲＡＭを使用することで、メモリアクセスの高速化が容易となり、システムスループット向上が図れる。
【０１３２】
また、専用のＦＩＦＯを読み出す毎に、必要な１カラムだけを処理することで、多値インデックスデータになればなるほど、インデックス展開処理回路の回路規模を小さくすることが可能となる。
【０１３３】
なお、以上の実施形態において、記録ヘッドから吐出される液滴はインクであるとして説明し、さらにインクタンクに収容される液体はインクであるとして説明したが、その収容物はインクに限定されるものではない。例えば、記録画像の定着性や耐水性を高めたり、その画像品質を高めたりするために記録媒体に対して吐出される処理液のようなものがインクタンクに収容されていても良い。
【０１３４】
以上の実施形態は、特にインクジェット記録方式の中でも、インク吐出を行わせるために利用されるエネルギーとして熱エネルギーを発生する手段（例えば電気熱変換体やレーザ光等）を備え、前記熱エネルギーによりインクの状態変化を生起させる方式を用いることにより記録の高密度化、高精細化が達成できる。
【０１３５】
その代表的な構成や原理については、例えば、米国特許第４７２３１２９号明細書、同第４７４０７９６号明細書に開示されている基本的な原理を用いて行うものが好ましい。この方式はいわゆるオンデマンド型、コンティニュアス型のいずれにも適用可能であるが、特に、オンデマンド型の場合には、液体（インク）が保持されているシートや液路に対応して配置されている電気熱変換体に、記録情報に対応していて核沸騰を越える急速な温度上昇を与える少なくとも１つの駆動信号を印加することによって、電気熱変換体に熱エネルギーを発生せしめ、記録ヘッドの熱作用面に膜沸騰を生じさせて、結果的にこの駆動信号に１対１で対応した液体（インク）内の気泡を形成できるので有効である。
【０１３６】
この気泡の成長、収縮により吐出用開口を介して液体（インク）を吐出させて、少なくとも１つの滴を形成する。この駆動信号をパルス形状とすると、即時適切に気泡の成長収縮が行われるので、特に応答性に優れた液体（インク）の吐出が達成でき、より好ましい。
【０１３７】
このパルス形状の駆動信号としては、米国特許第４４６３３５９号明細書、同第４３４５２６２号明細書に記載されているようなものが適している。なお、上記熱作用面の温度上昇率に関する発明の米国特許第４３１３１２４号明細書に記載されている条件を採用すると、さらに優れた記録を行うことができる。
【０１３８】
記録ヘッドの構成としては、上述の各明細書に開示されているような吐出口、液路、電気熱変換体の組み合わせ構成（直線状液流路または直角液流路）の他に熱作用面が屈曲する領域に配置されている構成を開示する米国特許第４５５８３３３号明細書、米国特許第４４５９６００号明細書に記載された構成も本発明に含まれるものである。加えて、複数の電気熱変換体に対して、共通するスロットを電気熱変換体の吐出部とする構成を開示する特開昭５９−１２３６７０号公報や熱エネルギーの圧力波を吸収する開口を吐出部に対応させる構成を開示する特開昭５９−１３８４６１号公報に基づいた構成としても良い。
【０１３９】
さらに、記録装置が記録できる最大記録媒体の幅に対応した長さを有するフルラインタイプの記録ヘッドとしては、上述した明細書に開示されているような複数記録ヘッドの組み合わせによってその長さを満たす構成や、一体的に形成された１個の記録ヘッドとしての構成のいずれでもよい。
【０１４０】
加えて、上記の実施形態で説明した記録ヘッド自体に一体的にインクタンクが設けられたカートリッジタイプの記録ヘッドのみならず、装置本体に装着されることで、装置本体との電気的な接続や装置本体からのインクの供給が可能になる交換自在のチップタイプの記録ヘッドを用いてもよい。
【０１４１】
また、以上説明した記録装置の構成に、記録ヘッドに対する回復手段、予備的な手段等を付加することは記録動作を一層安定にできるので好ましいものである。これらを具体的に挙げれば、記録ヘッドに対してのキャッピング手段、クリーニング手段、加圧あるいは吸引手段、電気熱変換体あるいはこれとは別の加熱素子あるいはこれらの組み合わせによる予備加熱手段などがある。また、記録とは別の吐出を行う予備吐出モードを備えることも安定した記録を行うために有効である。
【０１４２】
さらに、記録装置の記録モードとしては黒色等の主流色のみの記録モードだけではなく、記録ヘッドを一体的に構成するか複数個の組み合わせによってでも良いが、異なる色の複色カラー、または混色によるフルカラーの少なくとも１つを備えた装置とすることもできる。
【０１４３】
以上説明した実施の形態においては、インクが液体であることを前提として説明しているが、室温やそれ以下で固化するインクであっても、室温で軟化もしくは液化するものを用いても良く、あるいはインクジェット方式ではインク自体を３０°Ｃ以上７０°Ｃ以下の範囲内で温度調整を行ってインクの粘性を安定吐出範囲にあるように温度制御するものが一般的であるから、使用記録信号付与時にインクが液状をなすものであればよい。
【０１４４】
加えて、積極的に熱エネルギーによる昇温をインクの固形状態から液体状態への状態変化のエネルギーとして使用せしめることで積極的に防止するため、またはインクの蒸発を防止するため、放置状態で固化し加熱によって液化するインクを用いても良い。いずれにしても熱エネルギーの記録信号に応じた付与によってインクが液化し、液状インクが吐出されるものや、記録媒体に到達する時点では既に固化し始めるもの等のような、熱エネルギーの付与によって初めて液化する性質のインクを使用する場合も本発明は適用可能である。
【０１４５】
このような場合インクは、特開昭５４−５６８４７号公報あるいは特開昭６０−７１２６０号公報に記載されるような、多孔質シート凹部または貫通孔に液状または固形物として保持された状態で、電気熱変換体に対して対向するような形態としてもよい。本発明においては、上述した各インクに対して最も有効なものは、上述した膜沸騰方式を実行するものである。
【０１４６】
さらに加えて、本発明に係る記録装置の形態としては、コンピュータ等の情報処理機器の画像出力端末として一体または別体に設けられるものの他、リーダ等と組み合わせた複写装置、さらには送受信機能を有するファクシミリ装置の形態を取るものであっても良い。
【０１４７】
【他の実施形態】
なお、本発明は、複数の機器（例えばホストコンピュータ、インタフェイス機器、リーダ、プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機、ファクシミリ装置など）に適用してもよい。
【０１４８】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（または記録媒体）を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１４９】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１５０】
本発明を上記記憶媒体に適用する場合、その記憶媒体には、先に説明した（図５および/または図９に示す）タイミングチャートに対応する処理手順に従うプログラムコードが格納されることになる。
【０１５１】
【発明の効果】
以上説明したように、本発明によればインデックスデータ処理回路とインデックス展開処理回路との間にメモリを配置して、ＦＩＦＯポインタ制御動作回路により、使用するデータ構造にあわせてリード、ライトを制御する、たとえば、ｎビットインデックスデータの場合は、１ビットずつ、ｎ回に分けて読むように、ＦＩＦＯポインタを更新する制御を行なうことでデータ出力および、入力の負荷を緩和できる。
【０１５２】
メモリとして、ＡＳＩＣ内蔵ＳＲＡＭを使用することで、メモリアクセスの高速化を容易となり、システムスループット向上が図れる。
【０１５３】
また、専用のＦＩＦＯを読み出す毎に、必要な１カラムだけを展開することで、多値インデックスデータになればなるほど、インデックス展開処理回路の回路規模を小さくすることが可能となる。
【図面の簡単な説明】
【図１】第１の実施形態にかかる記録装置の回路構成を示すブロック図である。
【図２】記録システム全体の構成を示したブロック図である。
【図３】インデックスＳＲＡＭコントローラ１１０における記録データの制御およびそのデータの流れを説明するブロック図である。
【図４】ライト、リード動作と、ＦＩＦＯポインタ値の関係を示すタイミングチャートであり、ＦＩＦＯポインタ値が１回のライト動作で値を１アップし、リード動作により値を１ダウンする場合のＦＩＦＯ制御波形を示した図である。
【図５】図３において説明した動作を説明するタイミングチャートであり、ＦＩＦＯポインタ値が２回のライト動作で１カウントアップする場合、若しくは２回のリード動作において１カウントダウンする場合の処理を具体的に説明するものである。
【図６】従来例におけるインデックスデータの展開方法を説明する図である。
【図７】第１の実施形態におけるインデックスデータの展開処理方法について説明する図である。
【図８】第２の実施形態を説明する図であり、内蔵ＳＲＡＭ１１３からデータを複数回に分けてリードし、展開処理する方法を説明する図である。
【図９】図８において説明した動作を説明するタイミングチャートであり、ＦＩＦＯポインタ値が４回リード動作でカウントを１ダウンする場合の処理を具体的に説明する図である。
【図１０】内蔵ＳＲＡＭの、メモリマップを示す図である。
【図１１】記録データの制御を実行するための構成を示すブロック図である。
【図１２】本発明を適用する好適な実施形態であるプリンタの外観を示す図である。
【図１３】図１２のプリンタの制御構成を示すブロック図である。
【図１４】プリンタのインクジェットカートリッジを示す図である。
【符号の説明】
１０１  インデックスデータ処理回路
１０２  メモリ制御回路
１０３  プリントバッファ
１１０  インデックスＳＲＡＭコントローラ
１１１  専用ＦＩＦＯ制御回路
１１２  メモリ制御回路
１１３  内蔵ＳＲＡＭ
１２０  インデックス展開処理回路
１３０  インクジェットヘッド制御回路
１３１  インクジェットヘッド
１４０  ＡＳＩＣ
２０１  ＣＰＵ
２０２  メモリ
２０３  モータコントローラ
２０４  インターフェースコントローラ
２２０  プリンタのＣＰＵボード
２２１  ホストコンピュータ
２２３  キャリッジベルト
２２４  ベルト
２２５  キャリッジモータ
２２６  紙送りモータ
３０１  ライトリクエスト信号
３０２  ライトアック信号
３０３  ライトする色信号
３０４  ライトモード信号
３０５  ライトデータ
３１１  リードリクエスト信号
３１２  リードアック信号
３１３  リードする色信号
３１４  リードモード信号
３１５  リードデータ
３２１  リクエスト信号
３２２  アック信号
３２３  色信号
３２４  モード信号
３２５  メモリアドレス
３２６  メモリコントロール信号
３２７  メモリライトデータ
３２８  メモリリードデータ
６０１  インデックスデータイメージ図
６０２  インデックス展開処理回路
６０３  インデックス展開後のデータイメージ図
７０１  １カラム目の記録データイメージ図
７０２  ２カラム目の記録データイメージ図
８０１  第２の実施例におけるインデックスデータイメージ図
８０２  第２の実施例におけるインデックス展開処理回路
８０３  １カラム目の記録データイメージ図
８０４  ２カラム目の記録データイメージ図
８０５  ３カラム目の記録データイメージ図
８０６  ４カラム目の記録データイメージ図
１００１  色の情報アドレス
１００２  ＢＡＮＫアドレス
１００３  データアドレス
１１０１  優先順位決定回路
１１０２  ブラックＦＩＦＯポインタ制御回路
１１０３  カラーＦＩＦＯポインタ制御回路
１１０４  バンクアドレスのセレクタ
１１０６  ブラックのバンクアドレス
１１０７  カラーのバンクアドレス
【図１】
0003962591.tif 000002
【図２】
0003962591.tif 000003
【図３】
0003962591.tif 000004
【図４】
0003962591.tif 000005
【図５】
0003962591.tif 000006
【図６】
0003962591.tif 000007
【図７】
0003962591.tif 000008
【図８】
0003962591.tif 000009
【図９】
0003962591.tif 000010
【図１０】
0003962591.tif 000011
【図１１】
0003962591.tif 000012
【図１２】
0003962591.tif 000013
【図１３】
0003962591.tif 000014
【図１４】
0003962591.tif 000015