(57)【要約】【課題】  インクジェットプリンタのラスター画像データをカラムデータに変換する回路において、接続されるメモリのデータ幅に応じて内部回路構成を切り替え、効率良く処理を行う。【解決手段】  ラスタ形式のデータを入力する入力手段と、前記入力手段により入力される前記データのビット幅に応じて、画像変換バッファに格納する領域を変化させる。【選択図】  図１
2006062132.tif 000002
【特許請求の範囲】
【請求項１】
ラスタ形式のデータを入力する入力手段と、
前記入力手段により入力される前記データのビット幅に応じて、画像変換バッファに格納する領域を変化させることを特徴とする画像データ変換回路。
【請求項２】
前記画像変換バッファを一つの領域として使用し、書き込みと読み出しを交互におこなうことを特徴とする請求項１に記載の画像データ変換回路。
【請求項３】
前記画像変換バッファを二つの同サイズの領域として使用し、一方の領域に対する書き込み処理と他方の読み出し処理を同時に行うことを特徴とする請求項１に記載の画像データ変換回路。
【請求項４】
前記画像変換バッファに格納したそれぞれのデータの最上位ビットを抽出して、縦横変換処理データとして出力することを特徴とする請求項１に記載の画像データ変換回路。
【請求項５】
前記画像変換バッファに格納したそれぞれのデータが、最上位ビット方向にシフトすることを特徴とする請求項１に記載の画像データ変換回路。
【請求項６】
前記画像変換バッファに格納したそれぞれのデータを二分割した上位データと下位データのそれぞれの最上位ビットを抽出して、縦横変換処理データとして出力することを特徴とする請求項１に記載の画像データ変換回路。
【請求項７】
前記画像変換バッファに格納したそれぞれのデータを二分割した上位データと下位データのそれぞれの最上位ビット方向にシフトすることを特徴とする請求項１に記載の画像データ変換回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はラスタ方向に順次送られてきたデータをメモリに格納し、データ変換を行う変換回路に関するものである。
【背景技術】
【０００２】
インクジェットプリンタ（記録装置）の記録ヘッドは、複数の記録素子が縦方向に並んでおり、同時に複数のラスタ画像を出力する。記録装置の内部のデータ処理においては、複数のラスタデータをカラム毎に抽出して記録ヘッドにデータを転送する。このラスタ・カラム変換回路において、入力されるデータ幅とラスタ数の積のレジスタからなる中間バッファが必要になる。
【特許文献１】特開平１０−２１７５８４号
【発明の開示】
【発明が解決しようとする課題】
【０００３】
入力ラスタデータバス幅６４ｂｉｔ、出力カラムデータバス幅３２ｂｉｔのメモリに接続される画像変換回路は、６４ｂｉｔのラスタデータを３２個格納する画像変換バッファを持ち、６４×３２＝２０４８ｂｉｔのレジスタを必要とする。カラムデータを順次抽出するためには、画像変換バッファがフルの状態になるまで書き込みを行うため、その間カラムデータの読み出しは行えない。
【０００４】
画像変換の高速化を図るためには、入力ラスタデータバス幅を拡張する方法が取られる。この場合、画像変換回路と同一回路内に構成するメモリに対してはバス幅を拡張しても、配線は容易に行われるが、より大きな容量が接続可能な外部メモリに対しては、外部ピンの制約によりデータバス幅を拡張する事は困難である。
【０００５】
データ幅が小さいメモリに対しては、内部中間バッファを２つ用意しダブルバッファ構造にすることで、書き込みと読み出しを同時に行う事により処理の高速化を図る事ができる。しかし、データ幅が大きいメモリに対してダブルバッファ構造にすると、内部中間バッファが増大してしまうとう課題が発生する。
【課題を解決するための手段】
【０００６】
本発明は、ラスタ画像データをカラムデータに変換する画像変換回路において、内部中間バッファに接続されるメモリのデータバス幅に応じて、バス幅が大きいメモリに対してはバッファの全領域に対して読み書きを交互に行うシングルバッファ構造で処理を行い、バス幅が小さいメモリに対してはバッファの領域を２分割して、それぞれの書き込みと読み出しを同時に行えるダブルバッファ構造に切り替えて使用する。
【発明の効果】
【０００７】
以上説明したように、接続するメモリのデータ幅に応じて内部のバッファ構造を切り替える機能を有する事で、内部のバッファ回路を有効に利用しつつ、高速な処理が行える。
【０００８】
小容量でデータ幅が大きい内蔵メモリに対する処理の高速化と、大容量でデータ幅が小さい外部メモリに対する処理の高速化を、内蔵中間バッファの領域を無駄にせずに双方の機能を同一回路で実現している。
【発明を実施するための最良の形態】
【０００９】
（実施例１）
図１において本発明における画像データ変換回路１０１は、回路内部の動作を指示するシーケンスコントロールブロック１０２と、メモリからデータを読み出すＤＭＡインタフェース部で、対象メモリとデータ幅が異なる２つのブロック１０３，１０４と、ラスタデータを一時的に蓄えてカラムデータを出力するシフトレジスタ部１０５と、出力したカラムデータをメモリに書き込むＤＭＡインタフェースブロック１０６から構成されている。
【００１０】
ＤＭＡインタフェースブロック１０３は、ラスタデータを格納するメモリ１０７に対して、ＤＭＡコントロールブロック１０８を介して接続される。同様にＤＭＡインタフェースブロック１０４は、ラスタデータを格納するバス幅が異なるメモリ１０９に対して、ＤＭＡコントローラブロック１１０を介して接続される。メモリ１０７は画像データ変換回路が構成されるＩＣの外部に接続される大容量の低速度でアクセスするメモリモデル例であり、メモリ１０９は画像データ変換回路と同一ＩＣ内部に構成される小容量の高速でアクセスするメモリである。
【００１１】
ラスタ画像データは図２に示すように、ラスタの並び順にデータが送信され、画像幅に達したところで次のラスタの先頭部分に折り返す構成である。図２に示す様に６４ｂｉｔ幅のデータが１，２，３‥の順で送信されたときに、１ラスタ３個のデータ×３２ラスタのデータ１〜９６を一時的にメモリに蓄える。
【００１２】
図３に示す一時保存メモリは、本発明の画像データ変換回路がこのラスタ画像データの読み出しを行うときに都合が良い順番に並べ替えて配置される様子を示している。
【００１３】
カラムデータはラスタ画像データの最上位ビットから順に取り出していくため、受信データ幅で複数ラスタが連続して読み出せる形式に配置される。具体的には最初のラスタの１のデータが一時保存メモリの０ｘ００００００番地に配置したときに、２のデータは６４ｂｉｔ＝８ｂｙｔｅの３２番地分加算した０ｘ０００１００番地に配置され、３のデータはさらに３２番地分加算した、０ｘ０００２００番地に配置される。
【００１４】
次のラスタの４のデータは、１のデータの下のラスタデータであるため、１のデータのすぐ後の０ｘ０００００８番地に配置され、５のデータは０ｘ０００１０８番地、６のデータは０ｘ０００２０８番地に配置される。
【００１５】
このように配置されたデータを０ｘ００００００から０ｘ００００Ｆ８番地まで連続して読み出しを行うと、１，４，７‥‥９１，９４のデータが得られ、データ幅６４ｂｉｔ×３２個（３２ラスタ）のデータの読み出しが行える。このデータを本発明の画像データ変換回路内のバッファに格納し、カラム毎にデータの読み出しを行う。
【００１６】
図４に示す画像データ変換回路内のバッファに、前述のラスタデータがＲ０，Ｒ１‥‥Ｒ３１の順に格納される。３２個のラスタデータが格納された後に、Ｒ０，Ｒ１‥‥Ｒ３１それぞれの６４ｂｉｔ目のデータをＣ６３，６３ｂｉｔ目のデータをＣ６２‥‥同様にＣ０としたものをＣ６３から順に抽出する。Ｃ６３のデータの３２ｂｉｔ目はＲ０の６４ｂｉｔ目のデータであり、Ｃ６３のデータの３１ｂｉｔ目はＲ１の６４ｂｉｔ目のデータ、同様にＣ６３の２ｂｉｔ目はＲ３０の６４ｂｉｔ目、Ｃ６３の１ｂｉｔ目はＲ３１の６４ｂｉｔ目のデータとして変換され、後段のメモリに書き込まれる。
【００１７】
図５に示すシフトレジスタは、画像データ変換回路内のバッファの構造を示す。各ラスタ画像を格納するレジスタはビットシフト構造になっており、カラム画像を抽出する毎に上位ビット方向にビットシフトを行う。Ｃ６３のカラムデータを抽出後は、Ｃ６２のデータがＣ６３のレジスタへシフトされるため、カラムデータ抽出はＣ６３のレジスタ読み出しとビットシフトを繰り返すことで実現している。
【００１８】
（実施例２）
実施例１で説明したように、画像データ変換回路はラスタデータをバッファ内に全て格納した後にカラムデータを抽出する。よって、ラスタデータ格納動作とカラムデータ抽出動作は同時には行えない。それ故、格納するラスタデータのビット幅を拡張する事で処理速度低下を補っている。
【００１９】
しかし、同画像データ変換回路に接続されるメモリのビット幅が拡張できないとき、例えば大容量外部メモリに接続を行うため、Ｉ／Ｏピンの制限から前述の６４ｂｉｔラスタデータから３２ｂｉｔラスタデータにビット幅が縮小される場合がある。このような場合に、同画像データ変換回路のバッファ６４ｂｉｔ×３２個（ラスタ）の容量を有効に活用する方法を示す。
【００２０】
図６は、画像データがラスタの並び順に送信され、画像幅に達したところで次のラスタの先頭部分に折り返す構成を示している。図６に示す様に３２ｂｉｔ幅のデータが１，２，３‥の順で送信されたときに、１ラスタ６個のデータ×３２ラスタのデータ１〜１９２を一時的にメモリに蓄える。
【００２１】
図７に示す一時保存メモリは、本発明の画像データ変換回路がこのラスタ画像データの読み出しを行うときに都合が良い順番に並べ替えて配置される様子と、本発明の画像データ変換回路がカラム単位でデータを取り出す様子を示している。
【００２２】
カラムデータはラスタ画像データの最上位ビットから順に取り出していくため、受信データ幅で複数ラスタが連続して読み出せる形式に配置される。具体的には最初のラスタの１のデータが一時保存メモリの０ｘ００００００番地に配置したときに、２のデータは３２ｂｉｔ＝４ｂｙｔｅの３２番地分加算した０ｘ００００８０番地に配置され、３のデータはさらに３２番地分加算した、０ｘ０００１００番地に配置される。
【００２３】
次のラスタの７のデータは、１のデータの下のラスタデータであるため、１のデータのすぐ後の０ｘ０００００４番地に配置され、その下の１３のデータは０ｘ０００００８番地に配置される。
【００２４】
このように配置されたデータを０ｘ００００００から０ｘ００００７Ｃ番地まで連続して読み出しを行うと、１，７，１３‥‥１８１，１８７のデータが得られ、データ幅３２ｂｉｔ×３２個（３２ラスタ）のデータの読み出しが行える。このデータを本発明の画像データ変換回路内のバッファに格納し、カラム毎にデータの読み出しを行う。
【００２５】
図８に示す画像データ変換回路内のバッファは前述と同様の回路で６４ｂｉｔ×３２個のレジスタが存在する。６４ｂｉｔのレジスタを上位３２ｂｉｔ×３２個に分割したレジスタ群をＲｘＵ（ｘ＝０，１，２‥３１）、下位３２ｂｉｔ×３２個に分割したレジスタ群をＲｘＤ（ｘ＝０，１，２‥３１）とするとき、前述の３２ｂｉｔ×３２個のラスタデータをＲｘＵに格納する。
【００２６】
ＲｘＵのラスタデータＲ０，Ｒ１‥‥Ｒ３１のそれぞれ３２ｂｉｔ目のデータをカラムデータＣ３１とするとき、Ｃ３１，Ｃ３０‥‥Ｃ０の順にデータを抽出し、後段のメモリに書き込む。
【００２７】
図９に示すシフトレジスタは画像データ変改回路内のバッファの構造を示す。６４ｂｉｔの上位３２ｂｉｔのレジスタ群ＲｘＵと、下位３２ｂｉｔのレジスタ群ＲｘＤが、別のトリガにより独立にシフトする構造を持つ。よって、上位のバッファＲｘＵにラスタデータを格納後、カラムデータを抽出すると同時に、次のラスタデータ２，８，１４‥‥１８２，１８８を、前段のメモリ０ｘ００００８０番地から０ｘ００００ＦＣ番地まで読み出して下位のバッファＲｘＤに格納する処理が同時に行える。
【図面の簡単な説明】
【００２８】
【図１】画像データ変換回路の概略を示すブロック図。
【図２】データ幅が広いメモリに対するラスタ画像データの転送データ順を示す図。
【図３】図２のラスタ画像データを読み出し用メモリに格納した様子を示す図。
【図４】画像変換用レジスタ上のラスタデータからカラムデータを取り出す様子を示す図。
【図５】画像変換用シフトレジスタの概略図。
【図６】データ幅が狭いメモリに対するラスタ画像データの転送データ順を示す図。
【図７】図６のラスタ画像データを読み出し用メモリに格納した様子を示す図。
【図８】画像変換用レジスタのラスタデータからカラムデータを取り出す様子を示す図。
【図９】バッファ2分割時の画像変換用シフトレジスタの概略図。
【符号の説明】
【００２９】
１０１  本説明を実施する、画像データ変換回路
１０２  シーケンスコントローラ
１０３  データ読み出し用ＤＭＡインタフェースブロック
１０４  データ読み出し用ＤＭＡインタフェースブロック
１０５  読み出したデータを蓄えるシフトレジスタ
１０６  データ書き込み用ＤＭＡインタフェースブロック
１０７  データビット幅が狭い大容量メモリ
１０８  ＤＭＡコントローラ
１０９  データビット幅が広い小容量メモリ
１１０  ＤＭＡコントローラ
１１１  ＤＭＡコントローラ
１１２  画像変換後の格納用メモリ
【図１】
2006062132.tif 000003
【図２】
2006062132.tif 000004
【図３】
2006062132.tif 000005
【図４】
2006062132.tif 000006
【図５】
2006062132.tif 000007
【図６】
2006062132.tif 000008
【図７】
2006062132.tif 000009
【図８】
2006062132.tif 000010
【図９】
2006062132.tif 000011