(57)【要約】【課題】レイテンシを解消しながら、並列処理による高速アクセスが可能であるインクジェットプリンタを提供することを目的とする。【解決手段】従来のインクジェットヘッドコントローラに接続された第１のメモリに加え、高速シリアルにて接続されているインクジェットプリンタコントローラに接続されている第２のメモリにも、吐出データの一部を格納する。ただし、第２のメモリから、高速シリアル経由してアクセスするデータは、レイテンシが生じるので、インクジェットヘッドコントローラの内部に設けられているヘッド吐出用データＳＲＡＭのコンフィグレーションを変更する。第２のメモリから得られたデータを格納するエリアを拡張し、格納するカラム数を増やすことによって、ＦＩＦＯメモリとしての役割を持たせ、メモリアクセス時間に余裕を持たせ、これによって、データ処理を可能とする。【選択図】図３
2010143203.tif 000002
【特許請求の範囲】
【請求項１】
インクジェットヘッドの多ノズルを同時吐出するためのブロック単位に分割されたデータを受け取り、データ受信後にヒートパルスによって搭載されたインクジェットヘッドにエネルギーを印加してインクを吐出させてプリント媒体に画像を形成するインクジェットプリンタにおいて、
インクジェットヘッドを制御する第１の制御手段と；
上記第１の制御手段に接続され、吐出データを格納する第１の記憶手段と；
上記第１の制御手段に、高速シリアルバスを介して、接続されている第２の制御手段と；
上記第２の制御手段に接続され、吐出データを格納する第２の記憶手段と；
上記第１の記憶手段、上記第２の記憶手段のそれぞれから、データを読み出し、吐出直前の複数カラムに対応したデータを格納する第３の記憶手段と；
ヘッド位置情報を検出する位置検出手段と；
を有し、上記第１の制御手段は、上記位置検出手段からの情報に基づき上記第３の記憶手段から吐出データを読み出してヘッドへの吐出駆動波形を生成し、上記第１の記憶手段から読み出した吐出データに対応したカラムよりも上記第２の記憶手段から読み出した吐出データに対応したカラムの方が多くなるよう上記第３の記憶手段に吐出データを格納することを特徴とするインクジェットプリンタ。
【請求項２】
インクジェットヘッドの多ノズルを同時吐出するためのブロック単位に分割されたデータを受け取り、データ受信後にヒートパルスによって搭載されたインクジェットヘッドにエネルギーを印加してインクを吐出させてプリント媒体に画像を形成するインクジェットプリンタの制御方法において、
インクジェットヘッドを制御する第１の制御手段が、吐出データを上記第１の制御手段に接続された第１の記憶手段に記憶する工程と；
高速シリアルバスを介して上記第１の制御手段に接続された第２の制御手段が、上記第２の制御手段に接続されている第２の記憶手段に吐出データを格納する工程と；
上記第１の記憶手段、上記第２の記憶手段のそれぞれから、データを読み出し、吐出直前の複数カラムに対応したデータを第３の記憶手段に格納する工程と；
ヘッド位置情報を位置検出手段が検出する工程と；
上記位置検出手段からの情報に基づいて、上記第３の記憶手段から吐出データを読み出してヘッドへの吐出駆動波形を生成する工程と；
を有し、上記第３の記憶手段には、上記第１の記憶手段から読み出した吐出データに対応したカラムよりも上記第２の記憶手段から読み出した吐出データに対応したカラムの方が多くなるよう吐出データが格納されることを特徴とするインクジェットプリンタの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、１カラム分の多くのノズルを同時吐出するブロック単位に分割したデータを受け取り、このデータ受信後に、ヒートパルスによってエネルギーが印加され、インクを吐出するインクジェットヘッドを用いたインクジェットプリンタに関する。
【背景技術】
【０００２】
従来のプリンタのメモリ拡張手段として、ＩＣカードにプログラムを格納し、拡張性を高めた手段が知られている（たとえば、特許文献１参照）。また、過去に印刷したデータを不揮発メモリに格納し、再印刷を容易にする発明が知られている（たとえば、特許文献２参照）。さらに、外部メモリがプリンタに挿入されていることを検知し、印刷用のバッファメモリを増強する発明が知られている（たとえば、特許文献３参照）。
【特許文献１】特開平７−２５０７２号公報
【特許文献２】特開平１０−２０２９８７号公報
【特許文献３】特開２００６−７２５２５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
近年、プリント画像品位を向上するために、インクジェットノズルの形状がさらに微細化され、インク滴が小さくなり、高解像度印刷が可能である。一方、印刷スピードの向上も求められ、使用ノズル数を増やすことによって、用紙あたりのヘッドのスキャン数を減らし、高速印刷を実現することが求められている。この場合、インクジェットヘッドコントローラにおいて、ノズル数と印刷解像度とに比例して、内部のデータ処理量が数倍になる。このために、インクジェットヘッドコントローラに接続されているメモリにおいて、データ処理速度が間に合わず、新しい回路構成が必要である。また、インクジェットヘッド自体にも、正常なインクを吐出することができるとされている最大インク吐出周波数に制限がある。この最大インク吐出周波数は、インクジェットヘッドのインクタンクからヘッドへインクをリフィルする機能や、インクを吐出するために十分なエネルギーを投入するための最小ヒートパルス幅等に基づいて決められる周波数である。さらに、上記最小ヒートパルス幅は、各ノズルヒータの電源電圧、抵抗値、エネルギー変換効率等に基づいて決定される。上記ヘッドの最大吐出周波数制限を満たしながら、吐出ノズルを制限した高速の多パス印刷を行い、全てのノズルを駆動するテスト印刷を行うには、多様な印刷要求に対応するインクジェットヘッドコントローラが必要である。本発明は、レイテンシを解消しながら、並列処理による高速アクセスが可能であるインクジェットプリンタを提供することを目的とする。
【課題を解決するための手段】
【０００４】
本発明は、従来のインクジェットヘッドコントローラに接続された第１のメモリに加え、高速シリアルにて接続されているインクジェットプリンタコントローラに接続されている第２のメモリにも、吐出データの一部を格納する。この構成によって、メモリアクセスを並列処理させるので、高速化を図る。ただし、第２のメモリから、高速シリアル経由してアクセスするデータは、レイテンシが生じるので、インクジェットヘッドコントローラの内部に設けられているヘッド吐出用データＳＲＡＭのコンフィグレーションを変更する。第２のメモリから得られたデータを格納するエリアを拡張し、格納するカラム数を増やすことによって、ＦＩＦＯメモリとしての役割を持たせ、メモリアクセス時間に余裕を持たせ、これによって、データ処理を可能とする。
【発明の効果】
【０００５】
本発明は、ヘッド吐出データ格納用メモリを、２系統設け、アクセスするとレイテンシが生じるメモリからのデータ用に、ヘッド吐出データ用ＳＲＡＭのエリアを拡張し、格納するカラム数を増やし、ＦＩＦＯとして活用する。したがって、本発明によれば、レイテンシを解消しながら、並列処理による高速アクセスが可能であるという効果を奏する。
【発明を実施するための最良の形態】
【０００６】
発明を実施するための最良の形態は、次の実施例である。
【実施例１】
【０００７】
図１は、本発明の実施例１であるインクジェットプリンタＰＲ１を示す斜視図である。オートフィーダユニット３０１は、ここに積載された用紙を１枚ずつ分離し、ＬＦモータ３０５、ＬＦギア３０４等の給紙機構によって、給紙動作を行う。用紙が給紙された状態で、キャリッジ駆動モータ３１０が、キャリッジ３０７に接続されているベルト３１１を動かすことによって、キャリッジ３０７は、給紙方向と垂直の方向に走査移動する。キャリッジ３０７には、インクジェットヘッド１０７が搭載され、ヘッド着脱レバー３０８によって装着される。また、軸受け３０６によってシャーシ３０３に固定されているシャフトに、キャリッジ３０７が接続されている。キャリッジ３０７が走査移動した場合における位置を、エンコーダスケール３１２と、図２に示すエンコーダセンサ２０１とが検出する。
【０００８】
図２は、インクジェットプリンタＰＲ１を構成する電気回路を示すブロック図である。そして図３は、インクジェットプリンタＰＲ１の主要部分を示すブロック図である。エンコーダセンサ２０１は、ＣＲボードユニット４１９に搭載され、エンコーダセンサ２０１が、エンコーダスケール３１２を読み取り、キャリッジの移動量を検出する。エンコーダセンサ２０１から出力されたエンコーダ信号４１６は、メインボードユニット４０１へ出力される。インクジェットヘッド１０７は、ＣＲボードユニット４１９を介して、メインボードユニット４０１から出力されるヘッド駆動信号４１７によって吐出制御される。電源ユニット４０２は、メインボードユニット４０１を介して、インクジェットプリンタＰＲ１で使用する電源を供給している。ＰＥセンサ４１３は、プリント用紙の有無を検出し、これによって、プリンタの給排紙を制御する。ＰＧセンサ４１４は、回復ユニット３０９の内部のカム位置を検出し、これによって、回復動作を制御するセンサである。操作パネル４１５は、スイッチとＬＣＤパネルとを有し、ユーザとのインタフェースを行う。メインボードユニット４０１は、プリンタ制御の主要な電気部品を実装しているＰＣＢユニットである。インクジェットプリンタコントローラ１２４は、プリンタ制御のロジック回路の主要部品であり、インクジェットヘッドコントローラ１０１と高速シリアルバス１２０とに接続されている。インクジェットヘッドコントローラ１０１は、エンコーダセンサ２０１の信号を取り込み、キャリッジ位置を検出し、吐出タイミングを作成し、ＲＡＭ１０２に格納されている吐出データに応じたヘッド駆動信号４１７を生成する。吐出データは、その一部を、インクジェットプリンタコントローラ１２４に接続されているＲＡＭ１２３から、高速シリアルバス１２０を経由して、読み出す。また、ＰＥセンサ４１３、ＰＧセンサ４１４、操作パネル４１５は、インクジェットプリンタコントローラ１２４に接続され、制御される。インクジェットプリンタコントローラ１２４は、図示しないモータ制御回路をコントロールする。インクジェットプリンタコントローラ１２４は、内部バス４０６を介して、ＣＰＵ４０５、Ｉ／Ｆ制御回路４０８、プログラムＲＯＭ４０９、ＲＡＭ４１０と接続されている。Ｉ／Ｆ制御回路４０８は、ネットワークインタフェース４１１とＵＳＢインタフェース回路４１２とを制御する。ＣＰＵ４０５は、プログラムＲＯＭ４０９、ＲＡＭ４１０を使用して、インクジェットプリンタコントローラ１２４を制御することによって、ヘッド制御以外のプリンタの制御を行う。インクジェットヘッド１０７は、インクジェットヘッドコントローラ１０１によって制御され、インクジェットプリンタコントローラ１２４の高速シリアルバス１２０を経由して、ＣＰＵ４０５に制御される。モータ制御回路４０３は、インクジェットプリンタコントローラ１２４がロジック処理した信号を、ＰＧモータ４０４、キャリッジ駆動モータ３１０、ＬＦモータ３０５、給紙モータ４１８の駆動信号に変換する。ＰＧモータ４０４は、回復ユニット３０９を駆動するモータであり、キャリッジ駆動モータ３１０は、キャリッジ３０７を駆動するモータであり、ＬＦモータ３０５は、用紙を搬送するためのモータである。給紙モータ４１８は、オートフィーダユニット３０１から、１枚ずつ用紙を分離し、用紙搬送手段へ渡すためのモータである。インクジェットヘッドコントローラ１０１は、実施例１の回路が内蔵されているカスタムＩＣである。プリントデータを格納している外部メモリのＲＡＭ１０２から、プリントバッファコントローラ１０３が必要なデータを読み出し、データ処理した後に、ヘッド吐出データ用ＳＲＡＭコントローラ１０４へ転送する。ヘッド吐出データ用ＳＲＡＭコントローラ１０４は、ヘッド吐出データ用ＳＲＡＭ１０５にデータを一旦、格納し、再度、必要なタイミングに合わせてデータを読み出し、ヘッド吐出波形生成コントローラ１０６へデータを送付する。ヘッド吐出波形生成コントローラ１０６は、インクジェットヘッド１０７の仕様に合わせた形で、ヘッドデータ転送波形とヘッド駆動波形とを生成する。メモリを２系統にして高速化するために、プリントデータは、別カスタムＩＣであるインクジェットプリンタコントローラ１２４に接続されている外部メモリであるＲＡＭ１２３にも、一部格納されている。プリントバッファコントローラ１０３は、メモリコントローラ１２２、高速シリアルＩＦコントローラ１２１、高速シリアルバス１２０を介して、インクジェットヘッドコントローラ１０１に、ＲＡＭ１２３のデータを取り込む。インクジェットヘッドコントローラ１０１の内部では、高速シリアルＩＦコントローラ１０９を経由し、プリントバッファコントローラ１０３にデータを送付している。高速シリアルバス１２０は、ＰＣＩ−ｅｘｐｒｅｓｓを使用し、ＲＡＭ１２３から読み出されたデータであって、ヘッド吐出データ用ＳＲＡＭ１０５に格納されているデータの量が不十分であれば、割り込み信号ＩＮＴ０  １１０を発生させる。つまり、プリントバッファコントローラ１０３から、割り込み信号ＩＮＴ０  １１０を発生させる。高速シリアルＩＦコントローラ１０９は、ＭＳＩ（Ｍｅｓｓａｇｅ  Ｓｉｇｎａｌｅｄ  Ｉｎｔｅｒｒｕｐｔ）を使用して、割り込み信号ＩＮＴ０  １１０を、高速シリアルＩＦコントローラ１２１に伝える。そして、割り込み信号ＩＮＴ１  １２７を発生させ、ＲＡＭ１２３への大容量アクセスを、ＣＰＵ１２５に禁止している。インクジェットプリンタコントローラ１２４は、画像処理回路１２６も有し、ＲＡＭ１２３に格納されているプリントデータを画像処理し、一部のデータをＲＡＭ１２３へライトバックし、残りのデータを高速シリアルバス１２０経由でＲＡＭ１０２に格納する。
【０００９】
図４は、インクジェットプリンタＰＲ１を詳細に示すブロック図である。エンコーダセンサ２０１から受け取った３００ｄｐｉ相当のエンコーダパルスを、インクジェットヘッドコントローラ１０１へ入力し、エンコーダ信号逓倍回路２０２を用いて、６００ｄｐｉ、１２００ｄｐｉ、２４００ｄｐｉ相当のエンコーダパルスを生成する。そして、エンコーダシーケンスコントローラ２０３へ入力する。エンコーダシーケンスコントローラ２０３は、モードレジスタ２０４が設定されているプリンタの動作モードに従って、プリントバッファコントローラ１０３と、ヘッド吐出データ用ＳＲＡＭコントローラ１０４とを制御する。予め設定されている印刷開始位置情報に基づいて、エンコーダシーケンスコントローラ２０３は、プリントバッファシーケンスコントローラ２０５に、データアクセスを要求する。要求を受けたプリントバッファシーケンスコントローラ２０５は、プリントバッファアドレス生成回路２０６を介して、メモリアドレスを生成し、メモリコントローラ１０８がＳＤＲＡＭアクセス波形に変換する。そして、プリントバッファ用メモリであるＲＡＭ１０２にバーストリード動作を行う。なお、上記バーストリードは、１回のアドレス指定に応じて連続してデータを読み出す方法であり、読み出しのたびにアドレス指定をする必要がないので、高速な読出しが可能である。このバーストリードされたリードデータは、メモリコントローラ１０８が、バス幅変換し、２５６ビットバスに拡張し、データ生成回路２０８へ送られる。データ生成回路２０８は、上記２５６ビットデータアクセスを３回行い、必要なデータを抽出し、６４０ビットデータを作成し、ヘッド吐出データ用ＳＲＡＭコントローラ１０４へ転送する。ヘッド吐出データ用ＳＲＡＭコントローラ１０４の内部のシーケンスコントローラ２１０は、エンコーダシーケンスコントローラ２０３とプリントバッファシーケンスコントローラ２０５とによって決定されたタイミングによって動作する。ライトコントロール回路２１１を介して、データ生成回路２０８から受け取ったデータを、バスコントローラ２１２を介して、ヘッド吐出データ用ＳＲＡＭ１０５のフォーマットに従って格納する。また、シーケンスコントローラ２１０が、リードコントロール回路２１３を起動し、バスコントローラ２１２を介して、ヘッド吐出データ用ＳＲＡＭ１０５からデータを読み出す。バスコントローラ２１２は、ヘッド吐出データ用ＳＲＡＭ１０５へのバスの使用権をライトコントロール回路２１１とリードコントロール回路２１３とに割り当てる処理（バスアービトレーション）を行う。リードコントロール回路２１３が読み出したデータを、ヘッド吐出波形生成コントローラ１０６が、インクジェットヘッド１０７の仕様に合わせたシリアル送信波形に変換し、送信する。シーケンスコントローラ２１０は、ヘッド吐出データ用ＳＲＡＭ１０５のリードポインタ、ライトポインタも管理する。そして、ＲＡＭ１２３からのヘッド吐出データ用ＳＲＡＭのデータ量が不足したときに、プリントバッファシーケンスコントローラ２０５に、データの不足情報を流す。プリントバッファシーケンスコントローラ２０５は、割り込み信号ＩＮＴ０  １１０を発生す���。
【００１０】
つまり、インクジェットプリンタＰＲ１は、インクジェットヘッドの多ノズルを同時吐出するためのブロック単位に分割されたデータを受け取る。そして、データ受信後にヒートパルスによって搭載されたインクジェットヘッドにエネルギーを印加してインクを吐出させてプリント媒体に画像を形成する。また、インクジェットヘッドコントローラ１０１は、インクジェットヘッドを制御する第１の制御手段の例である。ＲＡＭ１０２は、上記第１の制御手段に接続され、吐出データを格納する第１の記憶手段の例である。インクジェットプリンタコントローラ１２４は、上記第１の制御手段に、高速シリアルバスを介して、接続されている第２の制御手段の例である。ＲＡＭ１２３は、上記第２の制御手段に接続され、吐出データを格納する第２の記憶手段の例である。ヘッド吐出データ用ＳＲＡＭ１０５は、上記第１の記憶手段、上記第２の記憶手段のそれぞれから、データを読み出し、吐出直前の複数カラムに対応したデータを格納する第３の記憶手段の例である。エンコーダセンサ２０１は、ヘッド位置情報を検出する位置検出手段の例である。そして、上記第１の制御手段は、上記位置検出手段からの情報に基づき上記第３の記憶手段から吐出データを読み出してヘッドへの吐出駆動波形を生成する。加えて、上記第１の制御手段は、上記第１の記憶手段から読み出した吐出データに対応したカラムよりも上記第２の記憶手段から読み出した吐出データに対応したカラムの方が多くなるよう上記第３の記憶手段に吐出データを格納する。
【００１１】
図５は、ヘッド吐出データ用ＳＲＡＭコントローラ１０４がヘッド吐出データ用ＳＲＡＭ１０５を制御する方法を説明する図である。ヘッド吐出データ用ＳＲＡＭ１０５のメモリエリアは、３つに分割され、ヘッド３カラム分のデータが格納されている。その制御状態は、典型的な形として３つある。ｎカラム目のデータ５０２は、状態１  ５０１におけるｎカラム目のデータであり、リードコントロール回路２１３が、リード中又はリード可能状態である。ｎ＋１カラム目のデータ５０３は、状態１  ５０１におけるｎ＋１カラム目のデータである。ｎ＋２カラム目のデータ５０４は、状態１  ５０１におけるｎ＋２カラム目のデータであり、ライトコントロール回路２１１によってライト中またはライト可能、ライト終了状態である。ｎ＋３カラム目のデータ５１２は、状態２  ５１１におけるｎ＋３カラム目のデータであり、ライトコントロール回路２１１が、ライト中またはライト可能、ライト終了状態である。ｎ＋１カラム目のデータ５１３は、状態２  ５１１におけるｎ＋１カラム目のデータであり、リードコントロール回路２１３が、リード中又はリード可能状態となっている。ｎ＋２カラム目のデータ５１４は、状態２  ５１１におけるｎ＋２カラム目のデータである。ｎ＋３カラム目のデータ５２２は、状態３  ５２１におけるｎ＋３カラム目のデータである。ｎ＋４カラム目のデータ５２３は、状態３  ５２１におけるｎ＋４カラム目のデータであり、ライトコントロール回路２１１が、ライト中またはライト可能、ライト終了状態である。ｎ＋２カラム目のデータ５２４は、状態３  ５２１におけるｎ＋２カラム目のデータである。リードコントロール回路２１３が、リード中又はリード可能状態となっている。上記動作を繰り返すことによって、ヘッド吐出データ用ＳＲＡＭ１０５を、リードライト同時動作可能なメモリ制御を実現できる。
【００１２】
図６は、４０ブロック分割駆動時におけるヘッド吐出データ用ＳＲＡＭ１０５に格納されている具体的なデータ構成について説明する図である。ヘッド吐出データ用ＳＲＡＭ１０５のメモリエリアは、ｎカラムのデータ６０１と、ｎ＋１カラムのデータ６０５と、ｎ＋２カラムのデータ６０９との合計３つに分割され、ヘッド３カラム分のデータが格納されている。ｎカラムのデータ６０１は、４０ブロックのデータに細分化され、図６において、ｎカラムの１ブロック目のデータ６０２、２ブロック目のデータ６０３、４０ブロック目のデータ６０４が記載されている。これと同様に、ｎ＋１カラムの１ブロック目のデータ６０６、２ブロック目のデータ６０７、４０ブロック目のデータ６０８が記載されている。また、ｎ＋２カラムの１ブロック目のデータ６１０、２ブロック目のデータ６１１、４０ブロック目のデータ６１２が記載されている。
【００１３】
図７は、２０ブロック分割駆動時のヘッド吐出データ用ＳＲＡＭ１０５に格納されているデータ構成を説明する図である。ヘッド吐出データ用ＳＲＡＭ１０５のメモリエリアは、合計６つに分割され、ヘッド６カラム分のデータが格納されている。つまり、ｎカラムのデータ７０１、ｎ＋１カラムのデータ７０５、ｎ＋２カラムのデータ７０９、ｎ＋３カラムのデータ７１３、ｎ＋４カラムのデータ７１７と、ｎ＋５カラムのデータ７２１との合計６つに分割され、ヘッド６カラム分のデータが格納されている。また、図７に示すように、各カラムのデータは、２０ブロックのデータに細分化されている。
【００１４】
図８は、１０ブロック分割駆動時のヘッド吐出データ用ＳＲＡＭ１０５に格納されているデータ構成を説明する図である。ヘッド吐出データ用ＳＲＡＭ１０５のメモリエリアは、合計１２個に分割され、ヘッド１２カラム分のデータが格納されている。つまり、ｎカラムのデータ８０１、ｎ＋１カラムのデータ８０５、ｎ＋９カラムのデータ８１３、ｎ＋１０カラムのデータ８１７、ｎ＋１１カラムのデータ８２１との合計１２個に分割され、ヘッド１２カラム分のデータが格納されている。また、図８に示すように、各カラムのデータは、１０ブロックのデータに細分化されている。
【００１５】
図９は、１２色プリンタ、１０分割駆動における従来のヘッド吐出データ用ＳＲＡＭ１０５の全体構成を示す図である。図９に示すように、各カラーに対して、１２カラム分のデータが割り当てられている。詳細は、図８で説明したように、カラー１のデータ８３０の中には、１２カラム分のデータが含まれている。これと同様に、カラー２〜１２のデータにもそれぞれ、１２カラム分のデータが含まれている。また、各カラムのデータには、１０ブロック分のデータが含まれている。上記のように、１２色プリンタにおいて、カラー１のデータ８３０の１２倍が、ヘッド吐出データ用ＳＲＡＭ１０５に確保されている。
【００１６】
図１０は、ヘッド吐出データの流れを説明する図である。ヘッドが印刷を行っているときに、その吐出データ等の流れは、大きく分けると、３経路になる。第１の経路１００３は、ＲＡＭ１０２内の６色分の吐出データを、メモリコントローラ１０８、プリントバッファコントローラ１０３、ヘッド吐出データ用ＳＲＡＭコントローラ１０４を経由し、ヘッド吐出データ用ＳＲＡＭ１０５に一時格納する経路である。その後に、ヘッド吐出データ用ＳＲＡＭコントローラ１０４、ヘッド吐出波形生成コントローラ１０６を経由し、インクジェットヘッド１０７へ流れるヘッドデータのＲＡＭ１０２へのアクセス経路である。第２の経路１００２は、ＲＡＭ１２３に格納されている６色分の吐出データを、メモリコントローラ１２２、高速シリアルＩＦコントローラ１２１を経由する経路である。その後に、高速シリアルバス１２０、高速シリアルＩＦコントローラ１０９、プリントバッファコントローラ１０３、ヘッド吐出データ用ＳＲＡＭコントローラ１０４を経由し、ヘッド吐出データ用ＳＲＡＭ１０５に一時格納する。そして、第２の経路１００２は、再度、ヘッド吐出データ用ＳＲＡＭコントローラ１０４を介して、ヘッド吐出波形生成コントローラ１０６を経由し、インクジェットヘッド１０７へ流れるヘッドデータを、ＲＡＭ１２３へアクセスする経路である。第３の経路１００１は、吐出データではないが、ＣＰＵ１２５がＲＡＭ１２３にアクセスする経路である。第１の経路１００３は、ＲＡＭ１０２から短経路によってアクセスしているが、第２の経路１００２は、第３の経路１００１にアクセス効率を下げることができ、かつ、高速シリアルバス１２０を経由するので、レイテンシが生じていることがわかる。
【００１７】
図１１は、図９に示すヘッド吐出データ用ＳＲＡＭ１０５の各ヘッドに対する構成を変えた場合におけるＳＲＡＭの全体の構成を示す図である。図１１に示すように、ＲＡＭ１０２から読み出すカラー１〜６は、ＳＲＡＭの構成を、読み出しと書き込みとの同時アクセスに対応のための２カラム分のデータに、レジ調整を含めた最小限の３カラム分のＳＲＡＭメモリエリアである。一方、ＲＡＭ１２３から読み出すカラー７〜１２については、カラー１〜６のＳＲＡＭメモリエリア削減分を加えた２１カラム分のデータを格納することができる構成である。カラー７〜１２については、１８カラム分のデータを、ＦＩＦＯエリア１１４８として、ヘッド吐出データ用ＳＲＡＭ１０５に予め格納できるようにすることによって、高速シリアルバス１２０を経由して生じるレイテンシに対してタイミングを吸収する。
【００１８】
さらに、インクジェットヘッドコントローラ１０１のＣＰＵのアクセス経路によって生じるディレイについても、ある程度吸収が可能である。ただし、ＣＰＵ１２５によるＲＡＭ１２３に対するメモリ使用を占有する連続バーストアクセスによって、アクセスが長期間阻害されることがある。この場合、ヘッド吐出データ用ＳＲＡＭ１０５に格納されているデータが、設定可能な規定数（たとえば５カラム）以下になったときに、ＣＰＵに対して割り込みを発生させることができる。割り込み信号は、ヘッド吐出データ用ＳＲＡＭコントローラ１０４からプリントバッファコントローラ１０３を経由し、割り込み信号ＩＮＴ０  １１０になり、高速シリアルバスを経由し、割り込み信号ＩＮＴ１  １２７になる。そして、ＲＡＭ１２３のメモリアクセス停止要求を、ＣＰＵ１２５に出す仕組みも内蔵されている。
【００１９】
図１２は、４０ブロック分割駆動における波形を示す図である。図１２において、電圧軸１２４０と、時間軸１２４１とが設けられている。エンコーダＡ相の波形１２０１は、エンコーダセンサ２０１から入力した３００ｄｐｉのＡ相のエンコーダパルスである。エンコーダパルス１２０２は、上記と同様に、Ｂ相のエンコーダパルスである。パルス幅１２０３は、３００ｄｐｉの距離をキャリッジが移動する場合に必要なパルス幅である。キャリッジが、２５ｉｎｃｈ／ｓｅｃ．の速度で移動する場合、その移動時間は、１３３ｕｓである。トリガ波形１２０４は、エンコーダＡ相の波形１２０１に基づいて作成した３００ｄｐｉ毎のトリガ波形である。トリガ波形１２０５は、エンコーダ信号逓倍回路２０２が作成した６００ｄｐｉ周期のトリガ波形である。拡大した波形１２０６は、６００ｄｐｉ周期のトリガ波形１２０５の拡大図であり、パルス幅１２０７は、６００ｄｐｉ相当である。
【００２０】
ブロックトリガ波形１２０８は、６００ｄｐｉ相当のパルス幅を４０分割駆動するためのブロックトリガ波形である。また、ヒートパルス波形１２０９、ブロック１のヒートパルス１２１０、ブロック２のヒートパルス１２１１が記載されている。ラッチパルス波形１２２０は、シリアル転送されたデータをラッチするためのラッチパルス波形である。また、ブロック１のラッチパルス１２２１、ブロック２のラッチパルス１２２２が記載されている。さらに、シリアルクロック波形１２３０、シリアルデータ波形１２３１、ブロック２におけるデータ１２３２、ブロック３におけるデータ１２３３が記載されている。
【００２１】
図１３は、４０分割駆動時における印刷イメージを示す図である。インクジェットヘッド１０７を上から透視してみた場合のノズル位置は、図１３に示す位置である。ノズル１３０５は、ブロック４０に属し、ノズル１３０６は、ブロック０に属している。インクジェットヘッド１０７の内部は、４０ノズル毎に同一ブロックに属するノズル配置である。矢印１３０４は、キャリッジ動作方向を示し、印刷用紙１３０１上を左から右へ、インクジェットヘッド１０７が移動する。ノズル位置がブロックごとにずれて配置されているので、ブロック０のノズルを吐出した後に、インクジェットヘッド１０７を右に移動し、次に、ブロック１のノズルを吐出し、４０ブロックを、順次、時間差を与えて駆動する。この印刷結果は、１カラム目の印刷結果１３０２のように、直線的に印刷される。つまり、副走査方向と平行な直線上に印刷される。２カラム目の印刷結果１３０３は、６００ｄｐｉ移動した２カラム目の印刷結果である。
【００２２】
図１４は、１０ブロック分割駆動における波形を示す図である。使用するノズルを、１／４に限定し、すなわち、ノズルの属する４０ブロックのうちで１０ブロックしか駆動しない場合における波形を示す図である。ブロックトリガ波形１４０１は、１０分割駆動時のブロックトリガ波形であり、ブロックトリガ波形１２０６は、６００ｄｐｉ周期から１０分割したブロックトリガ波形である。４グループの１０ブロックを選択する場合、４０ブロックのうちで、４ブロックに１回順次、選択し、決定する。また、図１４には、ヒートパルス波形１４０２、ブロック４のヒートパルス１４０３、ブロック８のヒートパルス１４０４が記載されている。ラッチパルス波形１４０５は、シリアル転送されたデータをラッチするためのラッチパルス波形である。また、ブロック４のラッチパルス１４０６、ブロック８のラッチパルス１４０７が記載されている。さらに、シリアルクロック波形１４０８、シリアルデータ波形１４０９、ブロック８におけるデータ１４１０、ブロック１２におけるデータ１４１１が記載されている。
【００２３】
図１５は、１０分割駆動時の印刷イメージを示す図である。インクジェットヘッド１０７を上から透視してみた場合のノズル位置は、図１５に示す位置である。ノズル１３０５は、ブロック４０に属し、ノズル１３０６は、ブロック０に属している。インクジェットヘッド１０７の内部は、４０ノズル毎に、同一ブロックに属するノズル配置である。矢印１３０４は、キャリッジ動作方向を示し、インクジェットヘッド１０７は、印刷用紙１３０１の上を、左から右へ移動する。ノズル位置がブロック毎にずれて配置されているので、ブロック０のノズルを吐出した後に、インクジェットヘッド１０７を右に移動し、次に、ブロック４のノズルを吐出し、順次１０ブロックに、時間差を与えて駆動する。この印刷の結果、１カラム目の印刷結果１５０１が示すように、直線に印刷される。つまり、副走査方向と平行な直線上を印刷する。ただ、選択されるブロックは、４ブロックごとの選択であるので、４ドットに１ドットの印刷になる。印刷結果１５０２は、６００ｄｐｉ移動した２カラム目の印刷結果であり、印刷結果１５０１と同様に、４ブロックごとの選択であるので、４ドットに１ドットが印刷される。印刷結果１５０３は、６００ｄｐｉ移動した３カラム目の印刷結果であり、印刷結果１５０１と同様に、４ブロックごとの選択であるので、４ドットに１ドットが印刷される。印刷結果１５０４は、６００ｄｐｉ移動した４カラム目の印刷結果であり、印刷結果１５０１と同様に、４ブロックごとの選択であるので、４ドットに１ドットが印刷される。印刷結果１５０１、１５０２、１５０３、１５０４は、それぞれ１ブロックずれた位置に印刷されている。実際の印刷では、上記印刷動作を４回以上繰り返すことによって、１００％の印刷がされる。
【００２４】
図１６は、本発明の運用であるインクジェットヘッドの駆動ブロックを可変とした場合におけるプリンタ制御方法を示すフローチャートである。まず、Ｓ１０１で、ユーザが印刷制御を開始する。Ｓ１０２で、テストモードかどうかを判断する。テストモードでない通常印刷モードでは、Ｓ１１１で、１０ブロック駆動に設定し、ヘッド吐出データ用ＳＲＡＭ１０５を、図１１に示す構成に設定する。Ｓ１１２で、その他のコントローラプリントパラメータを設定する。また、Ｓ１０２で、テストモードが選択されると、Ｓ１２１で、４０ブロック駆動に設定し、ヘッド吐出データ用ＳＲＡＭ１０５を、図６に示す構成に設定する。Ｓ１２２で、その他のコントローラプリントパラメータを設定する。
【００２５】
次に、Ｓ１３１で、ＩＦからデータ受信し、Ｓ１３２で、印刷データを作成し、Ｓ１３３で、給紙動作を行う。さらに、Ｓ１５１で、キャリッジスキャン動作を開始し、キャリッジを印刷速度へ加速し、Ｓ１５２では、Ｓ１０２で設定された駆動ブロック数によって印刷動作を行い、Ｓ１５３で、１スキャン印刷を終了し、キャリッジが減速し，停止する。これによって、Ｓ１５４で、キャリッジスキャン動作を終了する。１スキャン印刷後に、Ｓ１５５で、印刷終了したと判断されなければ、Ｓ１５６で、紙送り動作を行い、Ｓ１５１で、再度１スキャン印刷を行う。Ｓ１５５で、印刷終了判断されると、Ｓ１６０で、排紙動作を行い、Ｓ１６１で、印刷終了する。
【図面の簡単な説明】
【００２６】
【図１】本発明の実施例１であるインクジェットプリンタＰＲ１の斜視図である。
【図２】インクジェットプリンタＰＲ１を構成する電気回路のブロック図である。
【図３】インクジェットプリンタＰＲ１の主要部分を示すブロック図である。
【図４】インクジェットプリンタＰＲ１を詳細に示すブロック図である。
【図５】ヘッド吐出データ用ＳＲＡＭコントローラ１０４がヘッド吐出データ用ＳＲＡＭ１０５を制御する方法を説明する図である。
【図６】４０ブロック分割駆動時におけるヘッド吐出データ用ＳＲＡＭ１０５に格納されている具体的なデータ構成について説明する図である。
【図７】２０ブロック分割駆動時のヘッド吐出データ用ＳＲＡＭ１０５に格納されているデータ構成を説明する図である。
【図８】１０ブロック分割駆動時のヘッド吐出データ用ＳＲＡＭ１０５に格納されているデータ構成を説明する図である。
【図９】１２色プリンタ、１０分割駆動における従来のヘッド吐出データ用ＳＲＡＭ１０５の全体構成を示す図である。
【図１０】ヘッド吐出データの流れを説明する図である。
【図１１】図９に示すヘッド吐出データ用ＳＲＡＭ１０５の各ヘッドに対する構成を変えた場合における本発明のＳＲＡＭの全体の構成を示す図である。
【図１２】４０ブロック分割駆動における波形を示す図である。
【図１３】４０分割駆動時における印刷イメージを示す図である。
【図１４】１０ブロック分割駆動における波形を示す図である。
【図１５】１０分割駆動時の印刷イメージを示す図である。
【図１６】本発明の運用であるインクジェットヘッドの駆動ブロックを可変とした場合におけるプリンタ制御方法を示すフローチャートである。
【符号の説明】
【００２７】
１０１  インクジェットヘッドコントローラ
１０２  ＲＡＭ
１０３  プリントバッファコントローラ
１０４  ヘッド吐出データ用ＳＲＡＭコントローラ
１０５  ヘッド吐出データ用ＳＲＡＭ
１０６  ヘッド吐出波形生成コントローラ
１０７  インクジェットヘッド
１０８  メモリコントローラ
１０９  高速シリアルＩＦコントローラ
１２０  高速シリアルバス
１２１  高速シリアルＩＦコントローラ
１２２  メモリコントローラ
１２３  ＲＡＭ
１２４  インクジェットプリンタコントローラ
１２５  ＣＰＵ
１２６  画像処理回路
【図１】
2010143203.tif 000003
【図２】
2010143203.tif 000004
【図３】
2010143203.tif 000005
【図４】
2010143203.tif 000006
【図５】
2010143203.tif 000007
【図６】
2010143203.tif 000008
【図７】
2010143203.tif 000009
【図８】
2010143203.tif 000010
【図９】
2010143203.tif 000011
【図１０】
2010143203.tif 000012
【図１１】
2010143203.tif 000013
【図１２】
2010143203.tif 000014
【図１３】
2010143203.tif 000015
【図１４】
2010143203.tif 000016
【図１５】
2010143203.tif 000017
【図１６】
2010143203.tif 000018