(57)【要約】【課題】ＣＰＵバスを使用せずに、ＳＤＲＡＭ１００から印刷ヘッド１３２にヘッドイメージデータＤ７を転送する。【解決手段】ＡＳＩＣ３０内に構成されているヘッドコントロール処理Ｐ５は、ＳＤＲＡＭコントローラ５０を介して、ＳＤＲＡＭ１００からヘッドイメージデータＤ７を１ブロック毎に読み出して、印刷ヘッド１３２の格納領域１３４Ａ、１３４Ｂに交互に格納する。この転送にあたって、ヘッドコントロール処理Ｐ５は、ＣＰＵバス１０５を使用しない。【選択図】  図１
2004314423.tif 000002
【特許請求の範囲】
【請求項１】
第１ヘッドイメージ保持手段からヘッドイメージデータを読み出して、記録媒体に印刷を行うための、印刷ヘッドと、
ＣＰＵバスを介してＣＰＵに接続された、ＣＰＵ用データ格納手段と、
当該プリンタに入力された印刷データをデータ処理して、前記ヘッドイメージデータを生成する、ヘッドイメージデータ生成手段と、
前記ＣＰＵ用データ格納手段と別個に設けられ、前記ヘッドイメージデータ生成手段で生成されたヘッドイメージデータを保持する、第２ヘッドイメージデータ保持手段と、
前記第２ヘッドイメージデータ保持手段に保持されている前記ヘッドイメージデータを、ＣＰＵバスを介さずに、第１ヘッドイメージ保持手段に転送する、ヘッドイメージデータ転送手段と、
を備えることを特徴とするプリンタ。
【請求項２】
前記ヘッドイメージデータ生成手段と前記ヘッドイメージデータ転送手段とは、ハードウェアにより構成されている、ことを特徴とする請求項１に記載のプリンタ。
【請求項３】
前記印刷ヘッドはインクを吐出する複数のノズルが配列されて構成されている、ことを特徴とする請求項１又は請求項２に記載のプリンタ。
【請求項４】
前記ヘッドイメージデータのデータの配列は、前記印刷ヘッドの前記ノズルの配列に対応している、ことを特徴とする請求項３に記載のプリンタ。
【請求項５】
第１ヘッドイメージ保持手段からヘッドイメージデータを読み出して、記録媒体に印刷を行う印刷ヘッドと、ＣＰＵバスを介してＣＰＵに接続された、ＣＰＵ用データ格納手段とを有する、プリンタの制御方法であって、
当該プリンタに入力された印刷データをデータ処理して、前記ヘッドイメージデータを生成する工程と、
生成された前記ヘッドイメージデータを、前記ＣＰＵ用データ格納手段と別個に設けられた第２ヘッドイメージデータ保持手段に格納して保持する工程と、
前記第２ヘッドイメージデータ保持手段に保持されている前記ヘッドイメージデータを、ＣＰＵバスを介さずに、第１ヘッドイメージ保持手段に転送する工程と、
を備えることを特徴とするプリンタの制御方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、プリンタ及びプリンタの制御方法に関し、特に、ＣＰＵバスを使用せずにヘッドイメージデータを印刷ヘッドへ転送するプリンタ及びプリンタの制御方法に関する。
【０００２】
【従来の技術】
プリンタに搭載されるＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）の一種類として、ＳＤＲＡＭ（Ｓｙｎｃｈｒｏｎｏｕｓ  ＤＲＡＭ）がある。このＳＤＲＡＭが搭載されたプリンタにおいては、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）やＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  ＩＣ）が、メモリコントローラを介してＳＤＲＡＭにアクセスを行い、ＳＤＲＡＭからデータを読み出したり、ＳＤＲＡＭにデータを書き込んだりする。このようなＳＤＲＡＭを搭載したプリンタは、例えば、特許文献１にも開示されている。
【０００３】
一方、インターレース処理をして、印刷ヘッドから印刷を行うプリンタにおいては、ヘッドイメージデータの奇数ラインと偶数ラインとを振り分けて、別々のメモリ領域に格納し、この振り分けられたヘッドイメージデータを別々に読み出して、印刷ヘッドを駆動した印刷をすることも行われている。このようなプリンタは、例えば、特許文献２に開示されている。
【０００４】
【特許文献１】
特願２００２−２９０４０４号
【特許文献２】
特開２００２−２１９８３０号
【０００５】
【発明が解決しようとする課題】
しかしながら、特許文献１や特許文献２のプリンタにおいては、ヘッドイメージデータのメモリ領域から印刷ヘッドへの転送は、ＣＰＵがＣＰＵバスを用いて行っている。このため、ＣＰＵが他の処理をしている場合や、他の処理でＣＰＵバスが使用されている場合には、ＣＰＵバスが空くまで待つ必要が生じたり、ＣＰＵによるＣＰＵバスの使用を強制的に中断し、ヘッドイメージデータの転送を優先して実行するなどの制御が必要となってしまう。
【０００６】
そこで本発明は、前記課題に鑑みてなされたものであり、ＣＰＵバスを用いることなく、ヘッドイメージデータを印刷ヘッドに転送することのできるプリンタを提供することを目的とする。
【０００７】
【課題を解決するための手段】
上記課題を解決するため、本発明に係るプリンタは、第１ヘッドイメージ保持手段からヘッドイメージデータを読み出して、記録媒体に印刷を行うための、印刷ヘッドと、ＣＰＵバスを介してＣＰＵに接続された、ＣＰＵ用データ格納手段と、当該プリンタに入力された印刷データをデータ処理して、前記ヘッドイメージデータを生成する、ヘッドイメージデータ生成手段と、前記ＣＰＵ用データ格納手段と別個に設けられ、前記ヘッドイメージデータ生成手段で生成されたヘッドイメージデータを保持する、第２ヘッドイメージデータ保持手段と、前記第２ヘッドイメージデータ保持手段に保持されている前記ヘッドイメージデータを、ＣＰＵバスを介さずに、第１ヘッドイメージ保持手段に転送する、ヘッドイメージデータ転送手段と、を備えることを特徴とする。
【０００８】
この場合、前記ヘッドイメージデータ生成手段と前記ヘッドイメージデータ転送手段とは、ハードウェアにより構成されているようにしてもよい。
【０００９】
また、前記印刷ヘッドはインクを吐出する複数のノズルが配列されて構成されているようにしてもよい。
【００１０】
また、前記ヘッドイメージデータのデータの配列は、前記印刷ヘッドの前記ノズルの配列に対応しているようにしてもよい。
【００１１】
本発明に係るプリンタの制御方法は、第１ヘッドイメージ保持手段からヘッドイメージデータを読み出して、記録媒体に印刷を行う印刷ヘッドと、ＣＰＵバスを介してＣＰＵに接続された、ＣＰＵ用データ格納手段とを有する、プリンタの制御方法であって、当該プリンタに入力された印刷データをデータ処理して、前記ヘッドイメージデータを生成する工程と、生成された前記ヘッドイメージデータを、前記ＣＰＵ用データ格納手段と別個に設けられた第２ヘッドイメージデータ保持手段に格納して保持する工程と、前記第２ヘッドイメージデータ保持手段に保持されている前記ヘッドイメージデータを、ＣＰＵバスを介さずに、第１ヘッドイメージ保持手段に転送する工程と、を備えることを特徴とする。
【００１２】
【発明の実施の形態】
本実施形態に係るプリンタは、ローカルＳＤＲＡＭに格納されているヘッドイメージデータを、ＣＰＵバスを介さずに、ヘッド駆動部に設けられている印刷ヘッドへ転送するようにしたものである。より詳しくを、以下に説明する。
【００１３】
図１は、本実施形態に係るプリンタの制御部の構造を説明するブロック図である。この図１に示すように、本実施形態に係るプリンタの制御部は、制御用ＬＳＩ１０により構成されている。
【００１４】
制御用ＬＳＩ１０は、システム・オン・チップと呼ばれ、１つのチップの中にＣＰＵとＡＳＩＣとその周辺回路が形成されている。本実施形態においては、制御用ＬＳＩ１０は、ＣＰＵ２０と、ＡＳＩＣ３０と、印刷エンジン４０と、ＳＤＲＡＭコントローラ５０と、スキャナコントローラ６０と、インターフェース７０、８０を備えて構成されている。
【００１５】
ＣＰＵ２０は、インターフェース７０を介して、ＳＤＲＡＭコントローラ５０に接続されており、このＳＤＲＡＭコントローラ５０を介して、この制御用ＬＳＩ１０の外部に設けられているローカルＳＤＲＡＭ１００にアクセスする。本実施形態においては、ＣＰＵ２０とインターフェース７０との間は、３２ビットバスで接続されており、インターフェース７０とＳＤＲＡＭコントローラ５０との間は、１２８ビットバスで接続されている。このため、インターフェース７０は、バス速度の違いを吸収して、ＣＰＵ２０とＳＤＲＡＭコントローラ５０とが適切に接続されるように制御する。
【００１６】
また、ＣＰＵ２０は、ＣＰＵバス１０５を介して、ＣＰＵ専用のＣＰＵ用ＳＤＲＡＭ１１０にも、接続されている。すなわち、ローカルＳＤＲＡＭ１００とは別個に、ＣＰＵ用ＳＤＲＡＭ１１０が設けられている。ＣＰＵ２０が、ローカルＳＤＲＡＭ１００にアクセスするか、それとも、ＣＰＵ用ＳＤＲＡＭ１１０にアクセスするかは、処理の内容により定まっている。図示は省略するが、このＣＰＵバス１０５には、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、カードＡＳＩＣ、外部との通信インターフェース等が接続されている。
【００１７】
さらに、ＣＰＵ２０は、インターフェース７０、８０を介して、ＡＳＩＣ３０に接続されている。ＡＳＩＣ３０では、複数の処理が、ハードウェアを用いて実現されている。詳しくは後述するが、本実施形態においては、ＡＳＩＣ３０により、ＪＰＥＧ解凍処理と、リサイズ処理と、色変換処理と、並べ替え処理と、ヘッドコントロール処理などの処理が、実現されている。
【００１８】
ＡＳＩＣ３０は、印刷エンジン４０を介して、モータ駆動部１２０とヘッド駆動部１３０とを制御することにより、印刷の実行を管理する。また、ＡＳＩＣ３０は、ＳＤＲＡＭコントローラ５０に接続されており、このＳＤＲＡＭコントローラ５０を介して、ローカルＳＤＲＡＭ１００にアクセスする。
【００１９】
ＡＳＩＣ６０は、スキャナコントローラ６０にも接続されている。スキャナコントローラ６０は、スキャナ１４０の動作を制御する。すなわち、本実施形態に係るプリンタは、プリンタ機能とスキャナ機能とを有するマルチファンクションプリンタである。このスキャナコントローラ６０も、ＳＤＲＡＭコントローラ５０に接続されており、このＳＤＲＡＭコントローラ５０を介して、ローカルＳＤＲＡＭ１００にアクセスする。
【００２０】
図２は、このプリンタで印刷処理を行う場合のＡＳＩＣ３０とローカルＳＤＲＡＭ１００との間のデータの流れを説明する図である。この図２に示すように、本実施形態に係るＡＳＩＣ３０では、少なくとも、ＪＰＥＧ解凍処理Ｐ１と、リサイズ処理Ｐ２と、色変換処理Ｐ３と、並べ替え処理Ｐ４と、ヘッドコントロール処理Ｐ５とを、ハードウェア的に実現している。また、本実施形態においては、これらの各処理の起動と終了は、ＣＰＵ２０により管理されている。
【００２１】
図２に示すように、ＣＰＵ２０は、ハードディスクやメモリカードから、デジタルカメラ等で撮像した画像データを取り込んで、ローカルＳＤＲＡＭ１００に格納する。この図２の例では、画像データは、ＪＰＥＧ圧縮されており、ＪＰＥＧデータＤ１として格納される。
【００２２】
この状態で、ＣＰＵ２０がＪＰＥＧ解凍処理Ｐ１を起動すると、このＪＰＥＧ解凍処理Ｐ１は、ローカルＳＤＲＡＭ１００からＪＰＥＧデータＤ１を読み出して、解凍処理を行い、ＲＧＢデータを生成する。そして、ＪＰＥＧ解凍処理Ｐ１は、このＲＧＢデータＤ２をローカルＳＤＲＡＭ１００に格納する。
【００２３】
この状態で、ＣＰＵ２０がリサイズ処理Ｐ２を起動すると、このリサイズ処理Ｐ２は、ローカルＳＤＲＡＭ１００からＲＧＢデータＤ２を読み出して、リサイズ（サイズの調整）を行い、リサイズ後のＲＧＢデータＤ３を、ローカルＳＤＲＡＭ１００に格納する。
【００２４】
この状態で、ＣＰＵ２０が色変換処理Ｐ３を起動すると、この色変換処理Ｐ３は、リサイズ後のＲＧＢデータＤ３をローカルＳＤＲＡＭ１００から読み出して、色変換処理を行い、ＣＭＹＫ（シアン、マゼンタ、イエロー、ブラック）の印刷２値データＤ６に変換する。色変換処理Ｐ３では、この色変換の処理において、必要に応じて、ローカルＳＤＲＡＭ１００に格納されているルックアップテーブルＤ４を参照する。また、色変換処理Ｐ３は、色変換の処理をしている間に必要となるワークエリアを、色変換誤差バッファＤ５として、ローカルＳＤＲＡＭ１００に確保している。そして、色変換処理Ｐ３は、生成された印刷２値データＤ６を、ローカルＳＤＲＡＭ１００に格納する。
【００２５】
この状態で、ＣＰＵ２０が並べ替え処理Ｐ４を起動すると、この並べ替え処理Ｐ４は、印刷２値データＤ６をローカルＳＤＲＡＭ１００から読み出して、印刷ヘッドのインクノズルの並びに合わせてデータの順番の並べ替えを行い、ヘッドイメージデータＤ７を生成する。そして、並べ替え処理Ｐ４は、このヘッドイメージデータＤ７を、ローカルＳＤＲＡＭ１００に格納する。このヘッドイメージデータＤ７を格納する領域は、一般に、ヘッドイメージバッファと呼ばれている。
【００２６】
この状態で、ＣＰＵ２０がヘッドコントロール処理Ｐ５を起動すると、このヘッドコントロール処理Ｐ５は、ローカルＳＤＲＡＭ１００からヘッドイメージデータＤ７を読み出して、印刷ヘッドへ転送する。具体的には、印刷ヘッドに設けられているＲＡＭに、このヘッドイメージデータＤ７を転送する。印刷ヘッドは、このＲＡＭからヘッドイメージデータＤ７を読み出して、印刷を行うこととなる。
【００２７】
以上のような流れで、印刷が実行されるが、これらの各処理Ｐ１〜Ｐ５は、ＣＰＵ２０からの起動指令により並列に起動され、実行され得る。すなわち、１つの画像データを印刷する際には、その画像データが複数に分割されて、各処理Ｐ１〜Ｐ５が実行され、その際には、異なる処理がＡＳＩＣ３０内で並列に実行される。例えば、ＪＰＥＧ解凍処理Ｐ１が実行されている間に、色変換処理Ｐ３が並列に実行されるなどである。このため、ローカルＳＤＲＡＭ１００へのアクセスが各処理Ｐ１〜Ｐ５の間で競合する場合もあり得る。例えば、ＪＰＥＧ解凍処理Ｐ１がローカルＳＤＲＡＭ１００からＪＰＥＧデータＤ１を読み出している間に、色変換処理Ｐ３がＲＧＢデータＤ３を読み出そうとする場合もある。このような場合の調停も、ＳＤＲＡＭコントローラ５０が行う。
【００２８】
図３は、本実施形態に係るローカルＳＤＲＡＭ１００のバンク構成を示す図である。この図３に示すように、本実施形態に係るローカルＳＤＲＡＭ１００は、バンク１〜バンク４の４つのバンクで構成されている。ローカルＳＤＲＡＭ１００においては、同一バンクに連続してアクセスする場合には、禁止期間経過後でなければならないという制約がある。本実施形態では、この制約を加味して、各処理Ｐ１〜Ｐ５のローカルＳＤＲＡＭ１００に対するアクセスの優先順位を決定する。
【００２９】
図４は、本実施形態に係る各処理Ｐ１〜Ｐ５の優先順位に関する優先順位テーブルＴＢ１０の一例を示す図である。この優先順位テーブルＴＢ１０は、禁止期間内に同一バンクへのアクセスがあった場合に、ＳＤＲＡＭコントローラ５０が参照するテーブルである。
【００３０】
この図４に示すように、本実施形態では、各処理Ｐ１〜Ｐ５のリードとライトは、別々に優先順位が定められている。これは、同じ処理でも、ＳＤＲＡＭ１００に対するリードとライトでは、優先順位が異なるためである。
【００３１】
本実施形態では、最も高い優先順位に、ヘッドコントロール処理Ｐ５のリードが割り当てられている。これは、ヘッドコントロール処理Ｐ５により印刷ヘッドを駆動した印刷が一旦開始されると、途中で印刷ヘッドを止めることができないため、ヘッドイメージデータＤ７は最優先で印刷ヘッドに転送する必要があるからである。このため、ヘッドコントロール処理Ｐ５のリードの優先順位は、最も高い優先順位に固定されている。
【００３２】
このヘッドコントロール処理Ｐ５のリードの次の優先順位に、ＪＰＥＧ解凍処理Ｐ１のリードが割り当てられており、次にリサイズ処理Ｐ２のリードが割り当てられており、次にＪＰＥＧ解凍処理Ｐ１のリードが割り当てられている。このように、各処理のリードとライトにそれぞれ優先順位が割り当てられている。
【００３３】
ヘッドコントロール処理Ｐ５のリード以外の処理は、１回、ＳＤＲＡＭ１００へのアクセスする権利が割り当てられると、割り当てられた処理と同じバンクの処理の優先順位が最下位に移動する。例えば、ＪＰＥＧ解凍処理Ｐ１のリード処理に、ＳＤＲＡＭ１００をアクセスする権利が与えられると、動作期間（３サイクル）に、禁止期間（２サイクル）を加えた５サイクルの期間だけ、同じバンクの処理の優先順位が最下位に移動する。そして、５サイクルの期間経過後に、元の優先順位の位置に戻る。
【００３４】
したがって、この５サイクルの間に、例えばＪＰＥＧ解凍処理Ｐ１が今アクセスしているバンクと同じバンクをアクセスしようとした場合には、ＪＰＥＧ解凍処理Ｐ１のアクセスの優先順位は最下位に移動しているため、ＳＤＲＡＭ１００へのアクセス要求がある処理の中で最も優先順位の高い処理に、ＳＤＲＡＭ１００へアクセスする権利が与えられることとなる。
【００３５】
図５は、本実施形態に係る各処理Ｐ１〜Ｐ５の優先順位に関する優先順位初期テーブルＴＢ２０の一例を示す図である。この優先順位初期テーブルＴＢ２０は、このプリンタに予め登録されている各処理Ｐ１〜Ｐ５の優先順位を固定的に保持しているテーブルである。したがって、この優先順位初期テーブルＴＢ２０は、このプリンタの電源がオフにされても保持される。この優先順位初期テーブルＴＢ２０は、ＳＤＲＡＭ１００への禁止期間内での同一バンクに対するアクセスではない場合に、参照されるテーブルである。
【００３６】
この図５に示すように、本実施形態に係る優先順位初期テーブルＴＢ２０では、最も高い優先順位に、ヘッドコントロール処理Ｐ５のリードが割り当てられており、次の優先順位に、ＪＰＥＧ解凍処理Ｐ１のリードが割り当てられており、次にリサイズ処理Ｐ２のリードが割り当てられており、次にＪＰＥＧ解凍処理Ｐ１のリードが割り当てられている。優先順位初期テーブルＴＢ２０においては、これらの優先順位は固定的なものであり変動しない。
【００３７】
これら図４に示した優先順位テーブルＴＢ１０と図５に示した優先順位初期テーブルＴＢ２０は、優先順位判定回路３２に形成され、保持されている。
【００３８】
図６は、本実施形態に係るヘッド駆動部１３０に設けられている印刷ヘッド１３２のインクノズルの配列を示す図である。この図６に示すように、印刷ヘッド１３２の下面には、ブラックインクノズル列３３（Ｋ）と、シアンインクノズル列３３（Ｃ）と、マゼンタインクノズル列３３（Ｍ）と、イエローインクノズル列３３（Ｙ）とが形成されている。各ノズル列３３（Ｋ）、３３（Ｃ）、３３（Ｍ）、３３（Ｙ）は、各色を吐出するための吐出口であるノズルを複数個（本実施形態では１０個）備えている。
【００３９】
各ノズル列３３の複数のノズルは、紙搬送方向に沿って、所定の間隔で整列している。また、各ノズル列３３のノズルは、下流側のノズルほど小さい番号が付され、それぞれ第１ノズル＃１〜第１０ノズル＃１０としている。各ノズルには、各ノズルを駆動してインク滴を吐出させるための駆動素子（例えば、ピエゾ素子）が設けられている。
【００４０】
印刷時には、記録媒体である印刷用紙が紙搬送方向に所定量ずつ搬送され、その間欠的な搬送の間に、印刷ヘッド１３２が走査方向に移動しながら、各ノズルからインク滴が吐出される。
【００４１】
図７は、本実施形態に係るヘッドイメージバッファに格納されるヘッドイメージデータＤ７の構成の一例を示す図であり、図８は、本実施形態に係る印刷ヘッド１３２に設けられているＲＡＭ内の２つの格納領域１３４Ａ、１３４Ｂの構成の一例を示す図である。
【００４２】
この図７に示すように、ヘッドイメージデータＤ７は、第１ノズル＃１〜第１０ノズル＃１０に対応した形式で、データが形成されている。したがって、ヘッドコントロール処理Ｐ５は、このヘッドイメージデータＤ７をヘッドイメージバッファから読み出して、印刷ヘッド１３２内に設けられているＲＡＭに転送するだけで、インクノズル列３３からインク滴を吐出した印刷を実行することができる。
【００４３】
また、この図７から分かるように、ヘッドイメージデータＤ７は、複数のブロックに区分されている。１つのブロックは、イエロー（Ｙ）、マゼンタ（Ｍ）、シアン（Ｃ）、ブラック（Ｋ）の４色に区分されている。ＣＰＵ２０は、ヘッドコントロール処理Ｐ５を起動する際に、ヘッドイメージデータＤ７の先頭アドレスを指定するとともに、転送するブロック数を転送カウンタ数として指定することにより、１パス分のイメージデータを、ローカルＳＤＲＡＭ１００から印刷ヘッド１３２に転送することができる。
【００４４】
図８に示すように、印刷ヘッド１３２の格納領域１３４Ａ、１３４Ｂも、それぞれ、イエロー（Ｙ）、マゼンタ（Ｍ）、シアン（Ｃ）、ブラック（Ｋ）の４色に区分されている。１つの格納領域１３４Ａ（１３４Ｂ）の大きさは、ヘッドイメージデータＤ７の１つのブロックの大きさと一致している。したがって、ヘッドコントロール処理Ｐ５は、ローカルＳＤＲＡＭ１００から１ブロック毎にヘッドイメージデータＤ７を順次読み出して、格納領域１３４Ａと格納領域１３４Ｂとに交互に格納すればよい。
【００４５】
ヘッド駆動部１３０では、印刷ヘッド１３２を走査方向に移動しながら、格納領域１３４Ａと格納領域１３４Ｂとから交互にヘッドイメージデータＤ７を読み出して、インクを吐出することにより印刷を行う。なお、格納領域は必ずしも２面である必要はなく、ＲＡＭ内に複数面設けられていれば足りる。
【００４６】
図９は、ヘッドコントロール処理Ｐ５におけるデータ転送の処理内容を説明する図である。この図９の処理は、ＣＰＵ２０がヘッドコントロール処理Ｐ５にヘッドイメージデータＤ７の先頭アドレスと転送カウンタ数を設定し、起動を命令することにより実行される。
【００４７】
より詳細には、図９に示すように、ＣＰＵ２０は、ヘッドコントロール処理Ｐ５の初期化設定をする（ステップＳ１０）。ＣＰＵ２０は、この初期化設定により、例えば、ヘッドコントロール処理Ｐ５のレジスタをリセットし、後述する３つのモードのうちの１つを選択して指定する。
【００４８】
次に、ＣＰＵ２０は、ヘッドコントロール処理Ｐ５のジョブ開始前の共通設定を行う（ステップＳ１２）。このジョブ開始前の共通設定により、ＣＰＵ２０は、ヘッドコントロール処理Ｐ５に対して、例えば、ヘッドイメージデータＤ７のＳＤＲＡＭ１００内の先頭アドレスを設定し、転送カウンタ数を設定するとともに、所定のタイミングで起動をかける。
【００４９】
例えば、ＣＰＵ２０の設定により、ＳＤＲＡＭ転送で割り込みを使用しないデータ転送を行う場合には、ジョブ開始前のモード設定により、ヘッドコントロール処理Ｐ５が第１モードに設定される（ステップＳ１４）。この第１モードでは、一旦、ヘッドコントロール処理Ｐ５が起動された後は、ＣＰＵ２０はデータ転送に関与することなく、ヘッドコントロール処理Ｐ５によりヘッドイメージデータＤ７が印刷ヘッド１３２に転送される。具体的には、図８に示した格納領域１３４Ａ、１３４Ｂは、印刷ヘッド１３２により交互に読み出されて、クリアされる。このため、ヘッドコントロール処理Ｐ５は、クリアされた格納領域１３４Ａ、１３４Ｂに、図７に示したヘッドイメージデータＤ７をブロック毎に読み出して交互に格納していく。この間、ＣＰＵ２０はこの処理に関与することはない。
【００５０】
転送されるブロック数は、転送カウンタ数によって決められる。したがって、１パスの長さは、転送カウンタ数によって決められることとなる。したがって、転送カウンタ数の数だけヘッドイメージデータＤ７のブロックを転送した時点で、このヘッドコントロール処理Ｐ５は終了し、上述したステップＳ１２の処理に戻る。
【００５１】
一方、ＳＤＲＡＭ転送で割り込みを使用する場合には、ヘッドコントロール処理Ｐ５は、ジョブ開始前のモード設定により、第２モードに設定される（ステップＳ２０）。この第２モードでは、一旦、ヘッドコントロール処理Ｐ５が起動された後でも、ヘッドコントロール処理Ｐ５は、１ブロック転送毎に、その制御をＣＰＵ２０に返す。すなわち、１ブロックのヘッドイメージデータＤ７を転送し終える毎に、ヘッドコントロール処理Ｐ５はデータ転送処理を中断する。そして、ＣＰＵ２０は、適当なタイミングで、再度、ヘッドコントロール処理Ｐ５に起動を指令するのである。これにより、順次、ヘッドイメージデータＤ７のデータ転送が行われる（ステップＳ２２、ステップＳ２４）。そして、転送カウンタ数の数だけヘッドイメージデータＤ７のブロックを転送した時点で、上述したステップＳ１２の処理に戻る。
【００５２】
一方、従来のようにＣＰＵデータ転送を行う場合には、ジョブ開始前のモード設定により、第３モードに設定される（ステップＳ３０）。この第３モードでは、従来のように、ＣＰＵ２０がヘッドイメージデータＤ７の転送を行う。すなわち、ＣＰＵ２０は、ＳＤＲＡＭコントローラ５０を介して、ローカルＳＤＲＡＭ１００からヘッドイメージデータＤ７を１ブロック読み出し、ＣＰＵ用ＳＤＲＡＭ１１０に一旦格納する。ＣＰＵ用ＳＤＲＡＭ１１０に格納する際には、当然、ＣＰＵバス１０５を使用する。そして、適当なタイミングで、ＣＰＵ用ＳＤＲＡＭ１１０からヘッドイメージデータＤ７を１ブロック読み出して、印刷ヘッド１３２の格納領域１３４Ａ、１３４Ｂに交互に転送する（ステップＳ３２、ステップＳ３４）。この場合でも、ＣＰＵ用ＳＤＲＡＭ１１０からヘッドイメージデータＤ７を読み出す際には、当然、ＣＰＵバス１０５を使用する。ＣＰＵ２０が、転送カウンタ数の数だけヘッドイメージデータＤ７のブロックを転送した時点で、上述したステップＳ１２の処理に戻る。
【００５３】
以上のように、本実施形態に係るプリンタによれば、ＡＳＩＣ３０によりハードウェア的に構成されたヘッドコントロール処理Ｐ５が、ローカルＳＤＲＡＭ１００に格納されているヘッドイメージデータＤ７を順次読み出して、印刷ヘッド１３２の格納領域１３４Ａ、１３４Ｂに転送することとしたので、このデータ転送でＣＰＵバス１０５を使用しないようにすることができる。このため、ヘッドイメージデータＤ７のデータ転送が、ＣＰＵバス１０５の使用状況に制限されることがなくなる。
【００５４】
さらに、ＣＰＵ２０がヘッドイメージデータＤ７の先頭アドレスと転送カウンタ数を設定した後は、ヘッドコントロール処理Ｐ５はＣＰＵ２０は自律的にヘッドイメージデータＤ７をＳＤＲＡＭ１００から印刷ヘッド１３２に転送するので、その間、ＣＰＵ２０は他の処理を実行することができる。このため、ＣＰＵ２０の負荷を軽減することができる。
【００５５】
また、本実施形態に係るプリンタによれば、ＳＤＲＡＭ１００へのアクセスにあたり、アクセスの禁止期間内に同一バンクへのアクセス要求があった場合には、ＳＤＲＡＭ１００へのアクセスを要求している他の処理を優先してＳＤＲＡＭ１００へアクセスする権利を認めることとしたので、ＳＤＲＡＭ１００へのアクセスを効率的に制御することができる。このため、ＳＤＲＡＭ１００への全体的なアクセス時間を短くすることができる。
【００５６】
また、リアルタイム性が強く要求されるヘッドコントロール処理Ｐ５のリード処理に関しては、最優先にＳＤＲＡＭ１００へのアクセスを認めるようにしたので、ＳＤＲＡＭ１００へのアクセスの優先順位を動的に変更したとしても、プリンタの動作に何ら問題が生じないようにすることができる。
【００５７】
なお、本発明は上記実施形態に限定されず種々に変形可能である。例えば、本発明は、ＳＤＲＡＭ以外のメモリをコントロールするメモリコントローラにも適用することができる。すなわち、メモリ領域が複数のバンクに区分され、ある１つのバンクにアクセスした場合には、そのアクセス動作に要する期間である動作期間を経過した後でも、所定の時間だけ、そのバンクに再びアクセスするのが禁止される禁止期間を有するメモリに対するアクセスをコントロールするメモリコントローラであれば、本発明を適用することができる。
【００５８】
また、本発明の適用されたメモリコントローラは、プリンタ以外の他の機器にも同様に使用することができる。また、上述したハードウェアによる処理はソフトウェアによる処理に置き換えることが可能であり、上述したソフトウェアによる処理はハードウェアによる処理に置き換えることが可能である。
【００５９】
【発明の効果】
以上説明したように、本発明に係るプリンタよれば、ＣＰＵバスを用いることなく、ヘッドイメージデータを印刷ヘッドに転送することができる。
【図面の簡単な説明】
【図１】本実施形態に係るプリンタの制御部の構成を説明するブロック図である。
【図２】本実施形態に係るプリンタで印刷処理をする場合のデータの流れの代表例を示す図である。
【図３】本実施形態に係るローカルＳＤＲＡＭのバンク構成を示す図である。
【図４】本実施形態に係る優先順位テーブルの一例を示す図である。
【図５】本実施形態に係る優先順位初期テーブルの一例を示す図である。
【図６】本実施形態に係るヘッド駆動部に設けられている印刷ヘッドにおけるノズル配列を示す図である。
【図７】本実施形態に係るＳＤＲＡＭに格納されているヘッドイメージデータのデータ配列を示す図である。
【図８】本実施形態に係る印刷ヘッド内に設けられているヘッドイメージデータの格納領域の構成を示す図である。
【図９】本実施形態に係るＳＤＲＡＭから印刷ヘッドへのヘッドイメージデータの転送を説明するフローチャートである。
【符号の説明】
１０  制御用ＬＳＩ
２０  ＣＰＵ
３０  ＡＳＩＣ
４０  印刷エンジン
５０  ＳＤＲＡＭコントローラ
６０  スキャナコントローラ
７０、８０  インターフェース
１００  ローカルＳＤＲＡＭ
１０５  ＣＰＵバス
１１０  ＣＰＵ用ＳＤＲＡＭ
１２０  モータ駆動部
１３０  ヘッド駆動部
１４０  スキャナ
【図１】
2004314423.tif 000003
【図２】
2004314423.tif 000004
【図３】
2004314423.tif 000005
【図４】
2004314423.tif 000006
【図５】
2004314423.tif 000007
【図６】
2004314423.tif 000008
【図７】
2004314423.tif 000009
【図８】
2004314423.tif 000010
【図９】
2004314423.tif 000011