JP2012146032A - 画像メモリ制御装置および画像処理装置 - Google Patents
画像メモリ制御装置および画像処理装置 Download PDFInfo
- Publication number
- JP2012146032A JP2012146032A JP2011002383A JP2011002383A JP2012146032A JP 2012146032 A JP2012146032 A JP 2012146032A JP 2011002383 A JP2011002383 A JP 2011002383A JP 2011002383 A JP2011002383 A JP 2011002383A JP 2012146032 A JP2012146032 A JP 2012146032A
- Authority
- JP
- Japan
- Prior art keywords
- image data
- image
- blocks
- memory
- row address
- 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
Links
- 230000015654 memory Effects 0.000 title claims abstract description 160
- 239000000872 buffer Substances 0.000 claims abstract description 120
- 239000003086 colorant Substances 0.000 claims description 5
- 238000000034 method Methods 0.000 description 20
- 230000006870 function Effects 0.000 description 16
- 230000000903 blocking effect Effects 0.000 description 11
- 238000006243 chemical reaction Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 4
- 238000007792 addition Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Landscapes
- Image Input (AREA)
- Image Processing (AREA)
- Storing Facsimile Image Data (AREA)
- Editing Of Facsimile Originals (AREA)
Abstract
【課題】バースト転送が可能な画像メモリを用いた場合に、成分数の多いカラー画像データに対しても成分数の少ないモノクロ画像データに対しても画像回転処理などを内部メモリの増加を抑えて効率よく実行できる画像メモリ制御装置を提供する。
【解決手段】CMYKAの5成分のカラー画像を順次入力するときは、成分別に8ラインずつの入力バッファを5個形成して8ライン分の画像データを一時保存した後、入力バッファから同一領域に対応する各成分の画像データを8×8画素単位のブロックで読み出し、これらのブロックを同一行アドレス内の連続する列アドレスにバースト転送で格納する。K,Aの2成分のモノクロ画像データを入力するときは、前記入力バッファを2個ずつ組み合わせて16ラインの入力バッファを2個形成し、ブロックサイズを16×16画素に拡張して同様の処理を行う。
【選択図】図5
【解決手段】CMYKAの5成分のカラー画像を順次入力するときは、成分別に8ラインずつの入力バッファを5個形成して8ライン分の画像データを一時保存した後、入力バッファから同一領域に対応する各成分の画像データを8×8画素単位のブロックで読み出し、これらのブロックを同一行アドレス内の連続する列アドレスにバースト転送で格納する。K,Aの2成分のモノクロ画像データを入力するときは、前記入力バッファを2個ずつ組み合わせて16ラインの入力バッファを2個形成し、ブロックサイズを16×16画素に拡張して同様の処理を行う。
【選択図】図5
Description
本発明は、同一行アドレス内の列アドレス方向にバースト転送可能なメモリに対して画像データを書き込む画像メモリ制御装置および画像処理装置に関する。
カラー複写機などの画像処理装置では、大量の画像データを高速に処理する要請があり、メモリへの画像データのリード・ライトに関しても高速性が要求される。
データを高速にリード・ライトする技術の1つとして、DDR SDRAM(Double-Data-Rate Synchronous Dynamic Random Access Memory)のバースト転送を利用する方法がある。このタイプのメモリでは、アドレスを行アドレスと列アドレスに分けて与えるアドレスマルチプレクス方式を採用しており、行アドレスとアクティブコマンドを与えた後、列アドレスとリードコマンドまたは列アドレスとライトコマンドを与えると、その後は、指定されたバースト転送長BL(たとえば、4バースト)だけ列アドレスがクロックに同期して自動的に増加等してデータを連続的に読み書きできるようになっている。
なお、同一の行アドレス内では、列アドレスとリードコマンドまたは列アドレスとライトコマンドを与え直すことでデータの読み書きを継続できる。また、行アドレスを変更する場合はその前にプリチャージという動作が必要になり、その分、アクセスに時間を要する。また、バンクの切り替え機能を有するDDR SDRAMでは、行アドレスを変更しなければプリチャージなしでバンクを切り替えることができるようになっている。
下記特許文献1には、DDR SDRAMのバンク機能およびバースト転送機能を利用してカラー画像データを時間的に効率よく書き込むようにしたカラーデータの格納方法が提案されている。詳細には、1ページ分のR、G、Bデータを画像メモリ(DDR SDRAM)に格納する際に、バースト転送長毎に格納する色を変え、かつ色が変わる毎に、行アドレスは変更せずにバンクを切り替えることにより、3色分の画像データをプリチャージなしに連続的に書き込めるようにしている。
カラー複写機などの画像処理装置では、スキャナで読み取った原稿と記録紙の向きが異なる場合などに画像全体を90度回転させる必要が生じるので、画像編集用のページメモリを備えるものが多い。このページメモリにDDR SDRAMを使用する場合、画像データをブロックに分割し、ブロック単位にデータをバースト転送することが行われる。
たとえば、90度回転処理は、図16に示すように行われる。この例では、1つのブロックを8画素×8画素とし、1画素当たり4ビットとし、DDR SDRAMのバス幅は64ビットとする。また、回転対象の元画像は主走査方向に4ブロック、副走査方向に3ブロックの矩形の画像とする。1ブロックのデータ量は256ビット(8画素×8画素×4ビット)なので、4バースト転送1回で1つのブロックが転送される。
まず、画像メモリ(DDR SDRAM)からブロック0(図中のa,b,c,d)を4バースト転送で読み出し、このブロック内の画素を並べ替えて90度回転させる。そして、回転後のブロック0を、元画像全体を90度回転させた場合のブロック0の位置に、4バースト転送で書き込む。この作業をさらにブロック1〜8について順に行うことで、元画像全体を90度回転させる処理が完了する。
90度回転処理では、画像全体の中での各ブロックの位置が、90度回転前と回転後とで大きく相違するため、ブロックの読み出し時と回転後の書き込み時で行アドレスが異なるようになり、プリチャージおよび行アドレスの指定が毎回必要になる。
そこで、たとえば、図17のように、主走査方向に並ぶ2つのブロックを単位に回転処理を行うと、読み出し時は2つのブロックが同じ行アドレスにあるのでこれらを連続的にバースト転送できて効率が改善される。しかし、回転後の書き込み時は2つのブロックが副走査方向に並ぶため異なる行アドレスになり、1ブロックずつのバースト転送しかできず、プリチャージや行アドレスの指定がブロック毎に必要となって転送効率が向上しない。逆に、副走査方向に並ぶ2つのブロックを単位に回転処理を行うと、読み出し時の転送効率が向上しなくなると共に、内部メモリが大量に必要になる。結局、回転処理を考慮すると、ブロックは、主走査方向と副走査方向とが同一画素数の、N画素×N画素が最適となる。
ところで、各画素が、C(シアン)、M(マゼンタ)、Y(イエロ)、K(ブラック)、A(タグデータ)の5成分のように多数の成分で構成されたカラー画像データを回転処理する場合、従来は、1ブロックに対して図16の回転処理を成分別に5回行うので、処理量が単純に5倍になっていた。成分別に個別の画像メモリを用意すれば並列処理できるので処理速度の問題はないが、回路構成が大きくなってコスト高になる。一方、図18に示すように、1つの画像メモリで5成分の全てを格納すると処理速度が問題になる。特許文献1のように色毎にバンクを切り替えれば転送効率は向上するが、バンクの数と成分の数が一致しない場合は無駄なバンクが発生して画像メモリの利用率が低下する。また、ブロックサイズ(N×N画素の形でN)を大きくすれば、転送効率は向上するが、入力用のラインバッファやブロック単位の回転処理用に大量の内部メモリが必要になってしまう。
また、モノクロ画像の場合、カラー画像に比べると成分数は少ないが、印刷速度がカラーに比べて高速に行われる場合が多い。このため、モノクロ画像に対してもより高速なデータ処理が要請されている。
本発明は、上記の問題を解決しようとするものであり、バースト転送可能な画像メモリを用いた場合に、カラー画像のように成分数の多い画像データに対してもモノクロ画像のように成分数の少ない画像データに対しても回転処理などを内部メモリの増加を抑えて効率よく実行することのできる画像メモリ制御装置および画像処理装置を提供することを目的としている。
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
[1]Na×La個のラインバッファと、
各画素がLa個の成分で表わされた第1画像データを順次入力する第1モードでは、前記Na×La個のラインバッファを、前記第1画像データを成分別に記憶するNaラインずつのLa個の入力バッファとして使用し、各画素がLb(ただし、1≦Lb<La)個の成分で表わされた第2画像データを順次入力する第2モードでは、前記Na×La個のラインバッファを、前記第2画像データを成分別に記憶するNb(ただし、Nb>Na≧2、かつ、Nb×Lb≦Na×La)ラインずつのLb個の入力バッファとして使用するように切り替える切り替え部と、
同一行アドレス内の列アドレス方向にバースト転送可能なメモリへのデータの書き込みを制御するメモリ制御部と、
を備え、
前記メモリ制御部は、前記第1モードでは、前記第1画像データの同一領域に対応する各成分をNa×Na画素単位のブロックとして前記La個の入力バッファから読み出し、これらLa個のブロックを前記メモリの同一行アドレス内の連続する列アドレスにバースト転送で書き込み、前記第2モードでは、前記第2画像データの同一領域に対応する各成分をNb×Nb画素単位のブロックとして前記Lb個の入力バッファから読み出し、これらLb個のブロックを、前記メモリの同一行アドレス内の連続する列アドレスにバースト転送で書き込む
ことを特徴とする画像メモリ制御装置。
各画素がLa個の成分で表わされた第1画像データを順次入力する第1モードでは、前記Na×La個のラインバッファを、前記第1画像データを成分別に記憶するNaラインずつのLa個の入力バッファとして使用し、各画素がLb(ただし、1≦Lb<La)個の成分で表わされた第2画像データを順次入力する第2モードでは、前記Na×La個のラインバッファを、前記第2画像データを成分別に記憶するNb(ただし、Nb>Na≧2、かつ、Nb×Lb≦Na×La)ラインずつのLb個の入力バッファとして使用するように切り替える切り替え部と、
同一行アドレス内の列アドレス方向にバースト転送可能なメモリへのデータの書き込みを制御するメモリ制御部と、
を備え、
前記メモリ制御部は、前記第1モードでは、前記第1画像データの同一領域に対応する各成分をNa×Na画素単位のブロックとして前記La個の入力バッファから読み出し、これらLa個のブロックを前記メモリの同一行アドレス内の連続する列アドレスにバースト転送で書き込み、前記第2モードでは、前記第2画像データの同一領域に対応する各成分をNb×Nb画素単位のブロックとして前記Lb個の入力バッファから読み出し、これらLb個のブロックを、前記メモリの同一行アドレス内の連続する列アドレスにバースト転送で書き込む
ことを特徴とする画像メモリ制御装置。
上記発明では、画像データをブロック単位に分割し、同一領域に対する各成分のブロックを同一行アドレス内の連続する列アドレスにバースト転送で書き込む。ここで、成分数の多いカラー画像などを扱う第1モードに比べて成分数の少ないモノクロ画像などを扱う第2モードでは、入力バッファの必要数が少なくなる。そこで、Na×La個用意されたラインバッファから、第2モードでは、第1モードよりも1つの入力バッファ当たりのライン数が多くなるようにして入力バッファを形成する。これにより、第1モードのブロックサイズ(Na×Na)に比べて、第2モードのブロックサイズ(Nb×Nb)が大きくなる。その結果、成分数(1度に格納するブロック数)が第1モードより少ない第2モードにおいても、上記バースト転送で連続的に書き込むデータ量を多くすることができ、高い転送効率を確保することができる。
[2]ブロック毎に画像データを90度回転させる回転処理部をさらに備え、
前記メモリ制御部は、
前記第1モードでは、前記メモリの同一行アドレス内の連続する列アドレスに書き込まれた、同一領域に対応する成分別のLa個のブロックを連続してバースト転送で読み出し、これらのLa個のブロックをそれぞれ前記回転処理部で90度回転させ、回転後の前記La個のブロックを前記メモリの同一行アドレス内の連続する列アドレスにバースト転送で書き込み、
前記第2モードでは、前記メモリの同一行アドレス内の連続する列アドレスに書き込まれた、同一領域に対応する成分別のLb個のブロックを連続してバースト転送で読み出し、これらのLb個のブロックをそれぞれ前記回転処理部で90度回転させ、回転後の前記Lb個のブロックを前記メモリの同一行アドレス内の連続する列アドレスにバースト転送で書き込む
ことを特徴とする[1]に記載の画像メモリ制御装置。
前記メモリ制御部は、
前記第1モードでは、前記メモリの同一行アドレス内の連続する列アドレスに書き込まれた、同一領域に対応する成分別のLa個のブロックを連続してバースト転送で読み出し、これらのLa個のブロックをそれぞれ前記回転処理部で90度回転させ、回転後の前記La個のブロックを前記メモリの同一行アドレス内の連続する列アドレスにバースト転送で書き込み、
前記第2モードでは、前記メモリの同一行アドレス内の連続する列アドレスに書き込まれた、同一領域に対応する成分別のLb個のブロックを連続してバースト転送で読み出し、これらのLb個のブロックをそれぞれ前記回転処理部で90度回転させ、回転後の前記Lb個のブロックを前記メモリの同一行アドレス内の連続する列アドレスにバースト転送で書き込む
ことを特徴とする[1]に記載の画像メモリ制御装置。
上記発明では、回転処理を効率よく行うことができる。
[3]前記メモリ制御部は、
前記第1モードでは、前記La個の入力バッファから読み出した前記La個のブロックを前記メモリに書き込む際に、前記La個のブロックを書き込み可能な空き領域が現在の行アドレス内の連続する列アドレスに存在するときは、行アドレスを変更せずに前記La個のブロックを書き込み、存在しないときは、行アドレスを変更して前記La個のブロックを書き込み、
前記第2モードでは、前記Lb個の入力バッファから読み出した前記Lb個のブロックを前記メモリに書き込む際に、前記Lb個のブロックを書き込み可能な空き領域が現在の行アドレス内の連続する列アドレスに存在するときは、行アドレスを変更せずに前記Lb個のブロックを書き込み、存在しないときは、行アドレスを変更して前記Lb個のブロックを書き込む
ことを特徴とする[1]または[2]に記載の画像メモリ制御装置。
前記第1モードでは、前記La個の入力バッファから読み出した前記La個のブロックを前記メモリに書き込む際に、前記La個のブロックを書き込み可能な空き領域が現在の行アドレス内の連続する列アドレスに存在するときは、行アドレスを変更せずに前記La個のブロックを書き込み、存在しないときは、行アドレスを変更して前記La個のブロックを書き込み、
前記第2モードでは、前記Lb個の入力バッファから読み出した前記Lb個のブロックを前記メモリに書き込む際に、前記Lb個のブロックを書き込み可能な空き領域が現在の行アドレス内の連続する列アドレスに存在するときは、行アドレスを変更せずに前記Lb個のブロックを書き込み、存在しないときは、行アドレスを変更して前記Lb個のブロックを書き込む
ことを特徴とする[1]または[2]に記載の画像メモリ制御装置。
上記発明では、書き込みに際して、行アドレスの変更回数を最小限に抑えることができ、転送効率をより高めることができる。
[4]NbはNaのP(Pは2以上の整数)倍であり、
前記切り替え部は、前記第2モードでは、第1モードにおけるNaラインずつの入力バッファをP個組み合わせて、Nbラインずつの入力バッファを形成する
ことを特徴とする[1]乃至[3]のいずれか1つに記載の画像メモリ制御装置。
前記切り替え部は、前記第2モードでは、第1モードにおけるNaラインずつの入力バッファをP個組み合わせて、Nbラインずつの入力バッファを形成する
ことを特徴とする[1]乃至[3]のいずれか1つに記載の画像メモリ制御装置。
上記発明では、第1モードの入力バッファを予め形成しておき、これを複数組み合わせることで、第2モードに対応した入力バッファが形成される。よって、切り替え部の構成が簡略となる。
[5]前記第1画像データは、複数の色もしくは複数の色と属性情報を成分とするカラー画像データであり、
前記第2画像データは、単色もしくは単色と属性情報を成分とするモノクロ画像データである
ことを特徴とする[1]乃至[4]のいずれか1つに記載の画像メモリ制御装置。
前記第2画像データは、単色もしくは単色と属性情報を成分とするモノクロ画像データである
ことを特徴とする[1]乃至[4]のいずれか1つに記載の画像メモリ制御装置。
[6][1]乃至[5]のいずれか1つに記載の画像メモリ制御装置と、
前記画像メモリ制御装置がアクセスする、同一行アドレス内の列アドレス方向にバースト転送可能なメモリと、
を有する
ことを特徴とする画像処理装置。
前記画像メモリ制御装置がアクセスする、同一行アドレス内の列アドレス方向にバースト転送可能なメモリと、
を有する
ことを特徴とする画像処理装置。
本発明に係る画像メモリ制御装置および画像処理装置によれば、バースト転送が可能な画像メモリを用いた場合に、カラー画像データのように成分数の多い画像データに対してもモノクロ画像データのように成分数の少ない画像データに対しても回転処理などを内部メモリの増加を抑えつつ効率よく実行することができる。
以下、図面に基づき本発明の実施の形態を説明する。
図1は、本発明の実施の形態に係る画像メモリ制御装置を含むカラー画像形成装置10の概略構成を示すブロック図である。カラー画像形成装置10は、原稿を光学的に読み取って得た画像の複製を記録紙上に形成して印刷出力するコピー機能や、読み取った原稿画像をファイルとして出力したり保存したりするスキャン機能、外部端末から受信した印刷データに基づいて用紙上に画像を形成して出力するプリンタ機能などを備えた、所謂、デジタル複合機である。
カラー画像形成装置10は、原稿を光学的に読み取ってカラー画像データを取得する入力装置(スキャナ)11と、入力装置11から出力されるカラー画像データに対して各種の画像処理を施す入力画像処理部12と、SDRAMで構成された画像メモリ13と、画像メモリ13に対するデータのリード・ライトなどを制御するメモリコントローラ14と、画像データを保存する大容量不揮発の記憶装置であるハードディスク装置(HDD)15と、ハードディスク装置15へのデータ転送等を制御するストレージコントローラ16と、画像データに対してプリント出力のための各種画像処理を施す出力画像処理部17と、出力画像処理部17から出力される画像データに基づいて記録紙上に画像を形成してプリント出力する出力装置(プリンタエンジン)18とを備えている。
さらにカラー画像形成装置10は、当該カラー画像形成装置10の動作を統括制御するCPU21、バスブリッジ22、23、I/Oデバイス24などを備えている。I/Oデバイス24は、ユーザI/F用の表示部および操作部からなる操作パネル、ネットワークを通じて他の装置と通信するためのネットワークI/Fなどである。このほか、図示省略するが、CPU21には、CPU21が実行するプログラムや各種のデータを記憶するフラッシュメモリ、CPU21がプログラムを実行する際に各種のデータを一時的に格納するワークメモリなどが接続されている。
CPU21には、バスブリッジ22、23を介してメモリコントローラ14およびストレージコントローラ16が接続されている。メモリコントローラ14およびストレージコントローラ16はCPU21から指示を受けて動作する。さらにメモリコントローラ14には、入力画像処理部12の出力する画像データが入力されている。また、メモリコントローラ14の出力する画像データは出力画像処理部17に入力されている。
入力装置11は、原稿に光を照射する光源と、その反射光を受けて原稿を幅方向(主走査方向)に1ライン分読み取るカラーラインイメージセンサと、ライン単位の読取位置を原稿の長さ方向(主走査方向に直交する方向(副走査方向))に順次移動させる移動手段と、原稿からの反射光をカラーラインイメージセンサに導いて結像させるレンズやミラーなどからなる光学経路と、カラーラインイメージセンサの出力するアナログ画像信号をデジタルの画像データに変換するA/D変換部などを備えて構成される。入力装置11は、R(レッド)、G(グリーン)、B(ブルー)の色成分で構成され、各成分が1画素当たりの8ビットの深さを持つカラー画像データを出力する。
図2に示すように、入力装置11は、カラーラインイメージセンサによる主走査方向(X)の1ライン分の読み取り動作を、読み取り位置を副走査方向(Y)に移動させながら繰り返し行うことで原稿3を2次元画像として読み取る。入力装置11は、該読み取り動作に従ってR、G、B各成分の画像データを同時に、図2の矢印Fで示すような順序で、すなわち、画素毎の画像データを各ラインの先頭(図では左端)から末尾(図では右端)に向けて順に出力することを、副走査方向の先頭のラインから末尾のラインへと順に繰り返すようにして、出力する。
図1に戻って説明を続ける。入力画像処理部12は、入力装置11から入力される画像データ(R,G,B)に対して、各種のフィルタ処理や領域判別などを行う。また、カラーモードでは、各画素を、C(シアン)、M(マゼンタ)、Y(イエロ)、K(ブラック)、A(タグデータ)の5成分各8ビットで表した画像データに変換する。モノクロモードでは、各画素を、K(ブラック)、A(タグデータ)の2成分各8ビットで表した画像データに変換する。タグデータは、その画素の属性を示す情報であり、たとえば、その画素が写真領域に属するか文字領域に属するかを示す。
メモリコントローラ14は、入力画像処理部12からの画像データの入力、画像メモリ13に対する画像データの書き込みおよび読み出し、画像の回転処理、出力画像処理部17への画像データの出力、さらには、バスブリッジ22やストレージコントローラ16との間の画像データの受け渡しを管理し制御する機能を備えている。メモリコントローラ14の詳細は後述する。
メモリコントローラ14は、画像メモリ13への画像データの格納や読み出し、回転処理などの内部処理において、図3に示すように、画像をN画素×N画素単位のブロックに分割して処理する。カラー画像の場合、8画素×8画素をブロックサイズとし、同一領域に対するC,M,Y,K、Aの各成分のブロックを作成して処理する。モノクロ画像の場合は、16画素×16画素をブロックサイズとし、同一領域に対するK成分とA成分のブロックを作成して処理する。なお、メモリコントローラ14は内部処理において画素毎の各成分を4ビットに変換して処理し、出力時には8ビットに戻すようになっている。
出力画像処理部17は、メモリコントローラ14から入力される各成分(カラーモードの場合はC,M,Y,K,Aの5成分、モノクロモードはK,Aの2成分)各8ビットで構成された画像データに対して、ガンマ変換、周波数変換、PWM変換などの画像処理を施す機能を有する。また、出力装置18から与えられる水平タイミング信号および垂直タイミング信号に同期させて各成分(カラーモードの場合はC,M,Y,Kの4成分、モノクロモードの場合はK成分のみ)の画像データを、順次、出力装置18へ送出する、タイミング制御機能などを果たす。
出力装置18は、出力画像処理部17から入力された画像データに対応するカラー画像もしくはモノクロ画像を電子写真プロセスによって記録紙上に形成して出力する。ここでは、出力装置18は、タンデム式のカラーレーザープリンタエンジンである。他の方式のプリンタエンジンであってもかまわない。
図4はメモリコントローラ14の概略構成を示している。メモリコントローラ14は、ビット数変換部31と、ブロック化部32と、ブロック回転部33と、メモリI/F部34と、制御部35を備えている。ビット数変換部31は、入力画像処理部12から順次入力される画像データの画素毎の各成分を8ビットから4ビットに変換する。また、画像データを出力画像処理部17へ出力する際に各成分を4ビットから8ビットに変換する機能を果たす。
ブロック化部32は、複数ライン分のラインバッファ40を備え、ビット数変換部31から入力される画像データをNライン分、ラインバッファ40に一時的に記憶し、N画素×N画素のブロック単位に読み出す機能を果たす。切り替え部50は、カラーモード(第1モード)が設定されているときはラインバッファ40をC,M,Y,K,Aの5成分に振り分けて使用し、モノクロモード(第2モード)では、カラーモードより1成分当たりのライン数が増えるようにラインバッファ40をK,Aの2成分に振り分けて使用するように切り替える。
メモリI/F部34は、画像メモリ13へのデータの入出力、アドレス信号や各種制御信号の入出力を行う。ブロック回転部33は、ブロック単位に画像を回転させる機能を果たす。制御部35はメモリコントローラ14の各部の動作を制御したり、画像メモリ13へ出力するアドレス信号や制御信号を生成したりする。ここでは、画像メモリ13の1アドレスに格納できるデータ量は64ビットとする。
図5は、ブロック化部32の内部の概略構成を示している。ブロック化部32は、5チャンネル分の入力ポートch1〜ch5を備えている。また、40ライン分のラインバッファ40と、切り替え部50としてのセレクタ50a、50bと、画像メモリ13の1アドレスに格納できるデータ量(64ビット)にデータを揃えるための複数の一時メモリ45と、いずれの一時メモリ45に記憶されている画像データを画像メモリ13へ出力する(書き込む)かを選択する出力セレクタ55とから構成される。
各ラインバッファ40は、4ビット幅で主走査方向1ライン分の画像データを保持可能なFIFO(先入れ先出し)メモリとなっている。
カラーモード(第1モード)では、これら40ライン分のラインバッファ40を8ラインずつの5個の入力バッファ(図6のB1〜B5参照)に分け、ch1〜ch5に1対1に割り当てて使用する。各入力バッファは、8ライン分のラインバッファを直列に接続すると共に、これら8つのラインバッファの各終端から出力される画像データを8画素分並列に出力する、1入力8出力の直列並列変換器として機能する。ここでは、1画素の1成分は4ビットなので、8画素分の32ビットが並列に出力される。なお、入力バッファを構成するラインバッファのうち直列接続の入力側から順に第1ラインバッファ、第2ラインバッファ、第3ラインバッファ・・・と称するものとする。
ch2用の入力バッファの入力の前段には、ch1用の入力バッファの最終ライン(第8ラインバッファ)の出力とch2の入力ポートからの入力のいずれか一方を選択してch2用の入力バッファの第1ラインバッファに入力する入力セレクタ50aが設けてある。またch4用の入力バッファの入力の前段には、ch3用の入力バッファの最終ライン(第8ラインバッファ)の出力とch4の入力ポートからの入力のいずれか一方を選択してch4用の入力バッファの第1ラインバッファに入力する入力セレクタ50bが設けてある。
カラーモード(第1モード)では、ch1にカラー画像データのC成分が、ch2にM成分が、ch3にY成分が、ch4にK成分が、ch5にA成分がそれぞれ入力される。また、入力セレクタ50aはch2の入力ポートを選択し、入力セレクタ50bはch4の入力ポートを選択する。これにより、ch毎の5個の入力バッファ(各8ライン)が構成される。
カラーモードでは、入力バッファ毎に設けられた一時メモリ45a〜45eが使用される。一時メモリ45a〜45eは、それぞれ対応する入力バッファから8画素並列に出力される画像データ(32ビット)を2回分保持し、16画素単位の画像データ(64ビット)に纏めて第1セレクタ55aに出力する。第1セレクタ55aは一時メモリ45a〜45eのいずれか1つを選択して第3セレクタ55cに出力する。
モノクロモード(第2モード)では、ch1の入力ポートに画像データのK成分が、ch3の入力ポートにA成分が入力され、他のchには画像データは入力されない。また、モノクロモードでは入力セレクタ50aはch1用の入力バッファの最終ライン(第8ラインバッファ)の出力を選択し、入力セレクタ50bはch3用の入力バッファの最終ライン(第8ラインバッファ)の出力を選択する。
入力セレクタ50aがch1用の入力バッファの第8ラインバッファの出力を選択すると、ch1用の8ライン分のラインバッファとch2用の8ライン分のラインバッファとが直列に接続されて、1入力16出力の直列並列変換器としての機能を備えた結合入力バッファ(図11のB1´参照)が形成される。同様に、入力セレクタ50bがch3用の入力バッファの第8ラインバッファの出力を選択すると、ch3用の入力バッファとch4用の入力バッファを合わせた16ライン分のラインバッファが直列に接続され、1入力16出力の直列並列変換器としての機能を備えた結合入力バッファ(図11のB2´参照)が形成される。各結合入力バッファは16画素を並列にした64ビット幅の画像データを出力する。
またモノクロモードでは、結合入力バッファ毎に設けられた一時メモリ45f、45gが使用される。一時メモリ45f、45gは、それぞれ対応する結合入力バッファから16画素分並列に出力される64ビット幅の画像データを1回分保持し、その16画素単位の画像データ(64ビット)を第2セレクタ55bに出力する。第2セレクタ55bは一時メモリ45f、45gのいずれか一方を選択して第3セレクタ55cに出力する。
第3セレクタ55cはカラーモードでは第1セレクタ55aの出力を画像メモリ13へ出力し、モノクロモードでは第2セレクタ55bの出力を画像メモリ13へ出力する。
次に、メモリコントローラ14の動作を、カラーモードとモノクロモードのそれぞれについて説明する。
<カラーモードでの画像の格納>
まず、入力装置11で原稿をカラーで読み取り、その読み取り中にカラー画像データを順次に画像メモリ13に格納する動作について説明する。入力装置11から出力されるR,G,Bを成分とする画像データは入力画像処理部12でC,M,Y,K,Aの5成分に変換されてメモリコントローラ14に入力される。そして、メモリコントローラ14のビット数変換部31で各成分4ビットに変換されてブロック化部32に入力される。
まず、入力装置11で原稿をカラーで読み取り、その読み取り中にカラー画像データを順次に画像メモリ13に格納する動作について説明する。入力装置11から出力されるR,G,Bを成分とする画像データは入力画像処理部12でC,M,Y,K,Aの5成分に変換されてメモリコントローラ14に入力される。そして、メモリコントローラ14のビット数変換部31で各成分4ビットに変換されてブロック化部32に入力される。
図6は、カラーモードに設定した場合のブロック化部32の回路構成とデータの流れを示している。カラーモードではch1に各画素の画像データのC成分が、ch2にM成分が、ch3にY成分が、ch4にK成分が、ch5にA成分がそれぞれ1画素当たり4ビットで入力される。そして、ch1〜ch5のそれぞれに対して各8ラインの入力バッファB1〜B5が形成される。カラーモードでは図5に示した第3セレクタ55cは第1セレクタ55aの出力を選択するように固定されるので、図6では第3セレクタ55cの記載は省略する。
副走査方向に連なる8ライン分の画像データが成分別に各入力バッファB1〜B5に記憶されると、各入力バッファB1〜B5から、元画像内の同一領域に対応する各成分の画像データを8画素×8画素単位のブロックとして読み出し、元画像の同一領域に対応するC,M,Y,K,Aの成分別の5つのブロックを、画像メモリ(SDRAM)13の同一行アドレス内の連続する列アドレスにバースト転送で書き込む。
成分別の入力バッファからの1ブロックの読み出しは、次のようにして行われる。C成分の場合、まず、入力バッファB1からC成分の画像データを8画素(主走査方向が同じ位置で副走査方向に連なる8画素)分並列に読み出すことを2回行って16画素分(副走査方向8画素×主走査方向2画素の領域に対応する64ビット)のC成分画像データを一時メモリ45a上で1つにパッキングし、このパッキングした16画素分の画像データ(64ビット)を第1セレクタ55aで選択して画像メモリ13に出力する、という動作を4回繰り返す。これにより、C成分の1ブロック(8画素×8画素)が入力バッファB1から読み出される。同様に、M成分の1ブロックを読み出すときは、入力バッファB2からM成分の画像データを8画素分並列に読み出すことを2回行って16画素分(64ビット)のM成分の画像データを一時メモリ45b上で1つにパッキングし、このパッキングした16画素分の画像データ(64ビット)を第1セレクタ55aで選択して第3セレクタ55cから画像メモリ13に対して出力する、という動作を4回繰り返す。Y成分、K成分、A成分についても同様である。
このようにして元画像で同一領域の各成分の画像データを入力バッファB1〜B5からブロック単位にC,M,Y,K,Aの順に読み出し、これら5個のブロックを画像メモリ13の同一行アドレス(ロウアドレス)内の連続する列アドレス(カラムアドレス)に書き込む。
書き込み動作では、まず、目的の格納場所に対応した行アドレスをセットし、当該ブロックの格納場所に対応した列アドレスをセットし、C成分の1ブロックを4バースト転送で画像メモリ(SDRAM)13に書き込む動作を開始する。書き込み動作開始後、4アドレス進んだ列アドレスを、4バースト単位の転送が連続して行われるタイミングでセットし、M成分の1ブロックを4バースト転送で画像メモリ(SDRAM)13に書き込む。同様に、4アドレス進んだ列アドレスを上記のタイミングでセットし、Y成分の1ブロックを次の4バースト転送で画像メモリ(SDRAM)13に書き込む。さらに、同様にして、K成分のブロック、A成分のブロックを連続した列アドレスにそれぞれ4バースト転送で書き込む。このように4バースト転送の書き込みを5回連続して行うことで、元画像で1個のブロックに属するC,M,Y,K,Aの各成分のブロックを同一行アドレス内の連続した列アドレスに格納する。
図6の下部では、説明を簡単にするため、SDRAM13の列アドレスが1〜128の場合を示している。前述の例では元画像で1ブロック分の画像データ(C,M,Y,K,Aの成分別で5ブロック)を書き込むと、列アドレスが20アドレス進む。したがって、1つの行アドレスに、その行の先頭から列アドレスを順次増加させて元画像6ブロック分の画像データを書き込むと、同じ行アドレス内の空き領域が元画像で1ブロック分(CMYKAの成分別で5ブロック)の書き込みに必要な容量(20アドレス分)を下回る。そこで、同一行アドレス内の空き領域が元画像で1ブロック分の画像データ(C,M,Y,K,Aの成分別で5ブロック)を書き込むために必要な容量未満になったら、行アドレスを変更する。
具体的には、元画像1ブロック分(C,M,Y,K,Aの成分別で5ブロック)の画像データの書き込みを開始する際に、同一行アドレス内に元画像1ブロック分の画像データの書き込みに必要なだけ空き領域が存在するか否かを判断し、存在する場合は行アドレスを変更せずにそのブロックの画像データ(C,M,Y,K,Aの成分別で5ブロック)を書き込む。必要な空き領域が存在しない場合は行アドレスを、たとえば、次のアドレスに進めてセットし、列アドレスをその行の先頭アドレスにセットして、当該ブロック(C,M,Y,K,Aの成分別で5ブロック)の書き込みを行う。
<カラーモードでの画像の回転処理>
次に、画像メモリ13に上記のようにして格納されたカラー画像を90度回転させる場合の処理手順について説明する。図7に示すように、回転前の画像データは領域E1に格納されている。回転前の元画像は、8画素×8画素のブロック(該ブロックはC,M,Y,K,Aの成分別の5ブロックに相当)が主走査方向に6ブロック、副走査方向に7ブロック並ぶ矩形の画像とする。
次に、画像メモリ13に上記のようにして格納されたカラー画像を90度回転させる場合の処理手順について説明する。図7に示すように、回転前の画像データは領域E1に格納されている。回転前の元画像は、8画素×8画素のブロック(該ブロックはC,M,Y,K,Aの成分別の5ブロックに相当)が主走査方向に6ブロック、副走査方向に7ブロック並ぶ矩形の画像とする。
まず、元画像で同一ブロックに属するC,M,Y,K,Aの成分別の5ブロックを、同一行アドレスの連続する列アドレスからバースト転送で読み出す(P1)。
詳細には、SDRAM13に、該当する行アドレスおよび列アドレスをセットし、4バースト転送の読み出しを、列アドレスを4ずつ進めて5回繰り返すことで、元画像で8画素×8画素の同一ブロックに属するC,M,Y,K,Aの5ブロックの画像データを連続的に読み出し、これをブロック回転部33にセットする(P1)。
次にブロック回転部33により、成分別に、8画素×8画素のブロック内で画素位置の並べ替えを行い、ブロック単位の90度回転を行う(P2)。なお、図中の(x、y)は回転前のブロック内での各画素の位置座標を示している。たとえば、回転前にブロック内の左上端にあった(0,0)の画素は、90度回転により右上端に移動している。
ブロック回転部33で各成分のブロックを90度回転させた後、これらC,M,Y,K,Aの5つのブロックを、画像メモリ13の別の領域E2内の所定の位置に書き込む(P3)。詳細には、元画像全体を90度回転させた場合の当該ブロックの存在位置に書き込む。言い換えると、回転後の画像を格納する別の領域E2に画像全体を書き込み終えた後、その領域E2の先頭から順に画像データを読み出した場合に元画像全体を90度回転させた画像が得られる位置に書き込む。
この書き込みにおいても、C,M,Y,K,Aの5ブロックを同一行アドレス内の連続した列アドレスに書き込む。詳細には、該当する行アドレスおよび列アドレスをセットし、4バースト転送の書き込み動作を、列アドレスを4ずつ進めて20回繰り返すことで、元画像で8画素×8画素の同一ブロックに属するC,M,Y,K,Aの成分別の5ブロックの画像データを連続的に書き込む。
図8は、従来(図16)のように、「ブロックの読み出し」、「ブロックの90度回転処理」、「回転後のブロックの書き込み」を、成分を切り替えながら順次行う場合に画像メモリ(SDRAM)13に与える各信号を示すタイミングチャートである。この場合、「ブロックの読み出し」と「回転後のブロックの書き込み」とが異なる行アドレスになるので、4バースト転送毎に行アドレスが変更される。そのため、4バースト転送毎に、プリチャージや行アドレスを設定するための時間を要し、1つのブロックの1つの成分を回転処理するために27クロックを要する。したがって、カラー画像の場合、C,M,Y,K,Aの5成分あるので、1ブロックの回転に、27×5=135クロックを要する。
図9、図10は、メモリコントローラ14が元画像の1ブロック(C,M,Y,K,Aの成分別の5ブロック)を回転処理する場合に画像メモリ(SDRAM)13に与える各種信号を示すタイミングチャートである。図10は図9の続きを示している。メモリコントローラ14は、カラーモードにおいて、同一行アドレス内の連続する列アドレスにC,M,Y,K,Aの5ブロックを格納するので、行アドレスの変更がC,M,Y,K,Aの5ブロック単位となり、図8の場合に比べてプリチャージや行アドレスを設定するための時間が減少する。その結果、元画像の1ブロック(C,M,Y,K,Aの成分別の5ブロック)を回転処理するための時間は58クロックに短縮されている。
<モノクロモードでの画像の格納>
モノクロモードでは、入力装置11から出力されるR,G,Bを成分とする画像データは入力画像処理部12でK,Aの2成分に変換されてメモリコントローラ14に入力される。そして、メモリコントローラ14のビット数変換部31で各成分は4ビットに変換されてブロック化部32に入力される。
モノクロモードでは、入力装置11から出力されるR,G,Bを成分とする画像データは入力画像処理部12でK,Aの2成分に変換されてメモリコントローラ14に入力される。そして、メモリコントローラ14のビット数変換部31で各成分は4ビットに変換されてブロック化部32に入力される。
図11は、モノクロモード(第2モード)に設定した場合のブロック化部32の回路構成とデータの流れを示している。モノクロモードではch1にモノクロ画像データのK成分が、ch3にA成分がそれぞれ画素毎4ビットで入力され、他のchには画像データは入力されない。そして、ch1に対して、16ライン分のラインバッファを直列接続した結合入力バッファB1´が形成され、ch3に対して16ライン分のラインバッファを直列接続した結合入力バッファB2´が形成される。モノクロモードでは図5に示した第3セレクタ55cは第2セレクタ55bの出力を選択するように固定されるので、図11では第3セレクタ55cの記載は省略してある。
副走査方向に連なる16ライン分の画像データのK成分が入力バッファB1´に、A成分がB2´に記憶された後、各入力バッファB1´、B2´から、元画像内の同一領域に対応する各成分の画像データを16画素×16画素単位のブロックとして読み出す。そして、元画像の同一領域に対応するK成分とA成分の2つのブロックを、画像メモリ(SDRAM)13の同一行アドレス内の連続する列アドレスに書き込む。
詳細には、入力バッファB1´からK成分の画像データを16画素分(主走査方向が同じ位置で副走査方向に連なる16画素分の64ビット)分並列に読み出し、これを一時メモリ45fに一時保存し、この画像データ(64ビット)を第2セレクタ55bで選択して画像メモリ13に出力する、という動作を16回繰り返す。これにより、K成分の1ブロック(16画素×16画素)が結合入力バッファB1´から読み出される。同様に、A成分の1ブロックを読み出すときは、入力バッファB2´からA成分のデータを16画素分(主走査方向が同じ位置で副走査方向に連なる16画素分の64ビット)並列に読み出し、これを一時メモリ45f、第2セレクタ55b、第3セレクタ55cを介して画像メモリ13に出力する、という動作を16回繰り返す。
このようにして元画像で同一領域の各成分を入力バッファB1´、B2´から16画素×16画素単位のブロックでK成分,A成分の順に読み出し、これら2つのブロックを画像メモリ13の同一行アドレス(ロウアドレス)内の連続する列アドレス(カラムアドレス)に書き込む。
書き込み動作では、まず、目的の格納場所に対応する行アドレスをセットし、その格納場所に対応する列アドレスをセットして、K成分のブロックを、4バースト転送を連続4回行って、画像メモリ(SDRAM)13に書き込み、さらに、そのまま連続して4バースト転送を4回行うことでA成分のブロックを画像メモリ(SDRAM)13に書き込む。すなわち、行アドレスをセットしたのち、4バースト転送を8回連続的に行うことでK成分とA成分のブロックを同一行アドレス内の連続した列アドレスに連続的に書き込む。なお、途中、4バースト転送が連続して行われるタイミングで、4アドレス進んだ列アドレスを順次セットする。
図11の下部では、説明を簡単にするため、SDRAM13の列アドレスが1〜128の場合を示している。元画像で1ブロック分の画像データ(K成分とA成分の2ブロック)を書き込むと、列アドレスが32アドレス進む。よって、同一の行アドレスに元画像で4ブロック分の画像データを丁度余りなく格納できる。したがって、元画像で4ブロック分の画像データを格納する毎に、行アドレスを次のアドレスに変更する。
<モノクロモードでの画像の回転処理>
次に、画像メモリ13に上記のようにして格納されたモノクロ画像を90度回転させる場合の処理手順について説明する。図12に示すように、回転前の画像データは領域G1に格納されている。回転前の元画像は、16画素×16画素のブロック(該ブロックはK,Aの成分別の2ブロックに相当)が主走査方向に4ブロック、副走査方向に6ブロック並ぶ矩形の画像とする。
次に、画像メモリ13に上記のようにして格納されたモノクロ画像を90度回転させる場合の処理手順について説明する。図12に示すように、回転前の画像データは領域G1に格納されている。回転前の元画像は、16画素×16画素のブロック(該ブロックはK,Aの成分別の2ブロックに相当)が主走査方向に4ブロック、副走査方向に6ブロック並ぶ矩形の画像とする。
まず、元画像で同一ブロックに属するK,Aの成分別の2つのブロックを、同一行アドレスの連続する列アドレスからバースト転送によって読み出す(P11)。
詳細には、SDRAM13に該当する行アドレスおよび列アドレスをセットし、4バースト転送の読み出しを、列アドレスを4ずつ進めて8回繰り返すことで、元画像で16画素×16画素の同一ブロックに属するK,Aの2ブロック分の画像データを連続的に読み出し、これをブロック回転部33にセットする(P11)。
次に、ブロック回転部33により、成分別に、16画素×16画素のブロック内で画素位置の並べ替えを行い、ブロック単位の90度回転を行う(P12)。なお、図中の(x、y)は回転前のブロック内での各画素の位置座標を示している。
ブロック回転部33で各成分のブロックを90度回転させた後、これらK,Aの2つのブロックを、画像メモリ13の別の領域G2内の所定の位置に書き込む(P13)。詳細には、元画像全体を90度回転させた場合の当該ブロックの存在位置に書き込む。言い換えると、回転後の画像を格納する別の領域G2に画像全体を書き込み終えた後、その領域G2の先頭から順に画像データを読み出した場合に元画像全体を90度回転させた画像が得られる位置に書き込む。
この書き込みにおいても、K,Aの2ブロックを同一行アドレス内の連続した列アドレスに書き込む。詳細には、該当する行アドレスおよび列アドレスをセットし、4バースト転送の書き込み動作を、列アドレスを4ずつ進めて8回繰り返すことで、元画像で16画素×16画素の同一ブロックに属するK,A成分の2ブロックの画像データを連続的に書き込む。
図13は、入力バッファを、カラーモードと同じ8ラインずつの構成とし、8画素×8画素のブロックサイズでモノクロ画像データを90度回転処理する場合の画像メモリ(SDRAM)13に対する各信号を示すタイミングチャートである。ブロックサイズが8画素×8画素の場合、同一行アドレス内の連続する列アドレスに、K成分とA成分の2つのブロックを8バースト転送でリードまたはライトできる。従って、図13に示すように、読み出しと90度回転後の書き込みとを合わせて、元画像の1ブロック(K、A成分の2ブロック)を35クロックで処理することができる。
これに対してメモリコントローラ14のモノクロモードを使用すれば、16画素×16画素のブロックサイズで処理できるので、プリチャージや行アドレスを設定する回数をより少なくでき、その分、高速に処理することができる。
図14、図15は、メモリコントローラ14がモノクロモードで元画像の1ブロック(K成分とA成分の2ブロック)を回転処理する場合の画像メモリ(SDRAM)13に対する各信号を示すタイミングチャートである。図15は図14の続きを示している。メモリコントローラ14は、モノクロモードでは、同一行アドレス内の連続する列アドレスに各16画素×16画素のK成分とA成分の2つのブロックを格納して読み出すので、行アドレスの変更が16画素×16画素の2ブロック単位となり、図13に示す8画素×8画素の2ブロック単位とする場合に比べて、元画像全体を回転するために必要なプリチャージや行アドレスを設定する回数が減少する。すなわち、ブロックサイズが16画素×16画素の場合、16画素×16画素(K,Aの成分別の2ブロック)の画像領域を回転処理するために必要な時間は87クロックになる。一方、8画素×8画素のブロックサイズで16画素×16画素の領域を回転処理するには、8画素×8画素の回転処理を4回行うので、35クロック×4=140クロックを要する。
このように本発明のメモリコントローラ14では、モノクロモードにおいて16ラインずつの結合入力バッファB1´、B2´を形成してブロックサイズを16画素×16画素に拡大させるので、モノクロ画像データを扱う場合にも、画像メモリ13への格納や読み出しの処理速度を大幅に高めて時間短縮することができる。
以上、本発明の実施の形態を図面によって説明してきたが、具体的な構成は実施の形態に示したものに限られるものではなく、本発明の要旨を逸脱しない範囲における変更や追加があっても本発明に含まれる。
実施の形態の90度回転処理において、その回転方向は左右いずれでもよく、任意に定めればよい。
実施の形態では、バースト転送長を4バーストとした例を示したが、8バースト転送などでもかまわない。また画像メモリのビット幅を64ビット、画像データを1画素1成分あたり4ビットとしたが、これらに限定されるものではない。
また、実施の形態では、40ライン分のラインバッファから、カラーモードでは8ラインずつの入力バッファを5組に形成し、モノクロモードでは、カラーモードの入力バッファを2つ直列接続することで16ラインずつの結合入力バッファを2組形成するようにしたが、モノクロモードの1chあたりの入力バッファのライン数はこれに限定されるものではない。モノクロモードにおいて、40ライン分のラインバッファから、カラーモードのときよりもライン数の多い入力バッファを2組形成すればよく、たとえば、20ラインずつの入力バッファを2つ形成するように構成されてもよい。
また、カラー画像データはC,M,Y,K,Aを成分とし、モノクロ画像データはK,Aを成分とする場合を例示したが、各画像データの成分構成や成分数はこれに限定されるものではない。また、たとえば、モノクロ画像データがK成分のみで構成される場合には、入力バッファは1つでよいので、モノクロモードでは、すべてのラインバッファ(本例では40ライン分)を直列接続し、1入力40出力の直列並列変換器としての機能を備えた入力バッファを形成するようにしてもよい。
実施の形態では、カラー画像データとモノクロ画像データを扱う場合を例示したが、成分数が異なる2種類の画像データでカラー、モノクロに限定されるものではない。
なお、第1モードでの入力バッファと第2モードでの入力バッファの関係を一般化すれば次のようになる。メモリコントローラ14がNa×La個のラインバッファを有するものとする。このとき、各画素がLa個の成分で表わされた第1画像データ(たとえば、C,M,Y,K,Aを成分とするカラー画像データ)を順次入力する第1モードでは、Na×La個のラインバッファを、第1画像データを成分別に記憶するNaラインずつのLa個の入力バッファとして使用する。一方、各画素がLb(ただし、1≦Lb<La)個の成分で表わされた第2画像データ(たとえば、K,Aを成分とするモノクロ画像データ)を順次入力する第2モードでは、Na×La個のラインバッファを、第2画像データを成分別に記憶するNb(ただし、Nb>Na≧2、かつ、Nb×Lb≦Na×La)ラインずつのLb個の入力バッファとして使用すればよい。
実施の形態では、本発明をカラー画像形成装置に適用した場合を例示したが、他の装置でもかまわない。カラーとモノクロなど成分数が異なる複数種類の画像データを扱うと共に、副走査方向に走査する順序で順次入力される画像データを画像メモリ(SDRAM)に格納する画像メモリ制御装置や画像処理装置であればよい。
3…原稿
10…カラー画像形成装置
11…入力装置
12…入力画像処理部
13…画像メモリ
14…メモリコントローラ
15…ハードディスク装置
16…ストレージコントローラ
17…出力画像処理部
18…出力装置(プリンタエンジン)
21…CPU
22、23…バスブリッジ
24…I/Oデバイス
31…ビット数変換部
32…ブロック化部
33…ブロック回転部
34…メモリI/F部
35…制御部
40…ラインバッファ
45…一時メモリ
45a〜45e…カラーモードで使用される一時メモリ
45f、45g…モノクロモードで使用される一時メモリ
50…切り替え部
50a…入力セレクタ
50b…入力セレクタ
55…出力セレクタ
55a…第1セレクタ
55b…第2セレクタ
55c…第3セレクタ
B1〜B5…カラーモードでの入力バッファ
B1´、B2´…モノクロモードでの結合入力バッファ
E1、G1…回転前の格納領域
E2、G2…回転後の格納領域
F…走査順序
10…カラー画像形成装置
11…入力装置
12…入力画像処理部
13…画像メモリ
14…メモリコントローラ
15…ハードディスク装置
16…ストレージコントローラ
17…出力画像処理部
18…出力装置(プリンタエンジン)
21…CPU
22、23…バスブリッジ
24…I/Oデバイス
31…ビット数変換部
32…ブロック化部
33…ブロック回転部
34…メモリI/F部
35…制御部
40…ラインバッファ
45…一時メモリ
45a〜45e…カラーモードで使用される一時メモリ
45f、45g…モノクロモードで使用される一時メモリ
50…切り替え部
50a…入力セレクタ
50b…入力セレクタ
55…出力セレクタ
55a…第1セレクタ
55b…第2セレクタ
55c…第3セレクタ
B1〜B5…カラーモードでの入力バッファ
B1´、B2´…モノクロモードでの結合入力バッファ
E1、G1…回転前の格納領域
E2、G2…回転後の格納領域
F…走査順序
Claims (6)
- Na×La個のラインバッファと、
各画素がLa個の成分で表わされた第1画像データを順次入力する第1モードでは、前記Na×La個のラインバッファを、前記第1画像データを成分別に記憶するNaラインずつのLa個の入力バッファとして使用し、各画素がLb(ただし、1≦Lb<La)個の成分で表わされた第2画像データを順次入力する第2モードでは、前記Na×La個のラインバッファを、前記第2画像データを成分別に記憶するNb(ただし、Nb>Na≧2、かつ、Nb×Lb≦Na×La)ラインずつのLb個の入力バッファとして使用するように切り替える切り替え部と、
同一行アドレス内の列アドレス方向にバースト転送可能なメモリへのデータの書き込みを制御するメモリ制御部と、
を備え、
前記メモリ制御部は、前記第1モードでは、前記第1画像データの同一領域に対応する各成分をNa×Na画素単位のブロックとして前記La個の入力バッファから読み出し、これらLa個のブロックを前記メモリの同一行アドレス内の連続する列アドレスにバースト転送で書き込み、前記第2モードでは、前記第2画像データの同一領域に対応する各成分をNb×Nb画素単位のブロックとして前記Lb個の入力バッファから読み出し、これらLb個のブロックを、前記メモリの同一行アドレス内の連続する列アドレスにバースト転送で書き込む
ことを特徴とする画像メモリ制御装置。 - ブロック毎に画像データを90度回転させる回転処理部をさらに備え、
前記メモリ制御部は、
前記第1モードでは、前記メモリの同一行アドレス内の連続する列アドレスに書き込まれた、同一領域に対応する成分別のLa個のブロックを連続してバースト転送で読み出し、これらのLa個のブロックをそれぞれ前記回転処理部で90度回転させ、回転後の前記La個のブロックを前記メモリの同一行アドレス内の連続する列アドレスにバースト転送で書き込み、
前記第2モードでは、前記メモリの同一行アドレス内の連続する列アドレスに書き込まれた、同一領域に対応する成分別のLb個のブロックを連続してバースト転送で読み出し、これらのLb個のブロックをそれぞれ前記回転処理部で90度回転させ、回転後の前記Lb個のブロックを前記メモリの同一行アドレス内の連続する列アドレスにバースト転送で書き込む
ことを特徴とする請求項1に記載の画像メモリ制御装置。 - 前記メモリ制御部は、
前記第1モードでは、前記La個の入力バッファから読み出した前記La個のブロックを前記メモリに書き込む際に、前記La個のブロックを書き込み可能な空き領域が現在の行アドレス内の連続する列アドレスに存在するときは、行アドレスを変更せずに前記La個のブロックを書き込み、存在しないときは、行アドレスを変更して前記La個のブロックを書き込み、
前記第2モードでは、前記Lb個の入力バッファから読み出した前記Lb個のブロックを前記メモリに書き込む際に、前記Lb個のブロックを書き込み可能な空き領域が現在の行アドレス内の連続する列アドレスに存在するときは、行アドレスを変更せずに前記Lb個のブロックを書き込み、存在しないときは、行アドレスを変更して前記Lb個のブロックを書き込む
ことを特徴とする請求項1または2に記載の画像メモリ制御装置。 - NbはNaのP(Pは2以上の整数)倍であり、
前記切り替え部は、前記第2モードでは、第1モードにおけるNaラインずつの入力バッファをP個組み合わせて、Nbラインずつの入力バッファを形成する
ことを特徴とする請求項1乃至3のいずれか1つに記載の画像メモリ制御装置。 - 前記第1画像データは、複数の色もしくは複数の色と属性情報を成分とするカラー画像データであり、
前記第2画像データは、単色もしくは単色と属性情報を成分とするモノクロ画像データである
ことを特徴とする請求項1乃至4のいずれか1つに記載の画像メモリ制御装置。 - 請求項1乃至5のいずれか1つに記載の画像メモリ制御装置と、
前記画像メモリ制御装置がアクセスする、同一行アドレス内の列アドレス方向にバースト転送可能なメモリと、
を有する
ことを特徴とする画像処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011002383A JP2012146032A (ja) | 2011-01-07 | 2011-01-07 | 画像メモリ制御装置および画像処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011002383A JP2012146032A (ja) | 2011-01-07 | 2011-01-07 | 画像メモリ制御装置および画像処理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2012146032A true JP2012146032A (ja) | 2012-08-02 |
Family
ID=46789549
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011002383A Withdrawn JP2012146032A (ja) | 2011-01-07 | 2011-01-07 | 画像メモリ制御装置および画像処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2012146032A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014035617A (ja) * | 2012-08-08 | 2014-02-24 | Mega Chips Corp | 画像処理インターフェース回路 |
JP2014035619A (ja) * | 2012-08-08 | 2014-02-24 | Mega Chips Corp | 画像処理装置 |
US9552619B2 (en) | 2012-08-08 | 2017-01-24 | Megachips Corporation | Image processing apparatus and image processing interface circuit |
-
2011
- 2011-01-07 JP JP2011002383A patent/JP2012146032A/ja not_active Withdrawn
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014035617A (ja) * | 2012-08-08 | 2014-02-24 | Mega Chips Corp | 画像処理インターフェース回路 |
JP2014035619A (ja) * | 2012-08-08 | 2014-02-24 | Mega Chips Corp | 画像処理装置 |
US9552619B2 (en) | 2012-08-08 | 2017-01-24 | Megachips Corporation | Image processing apparatus and image processing interface circuit |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3416643B2 (ja) | 画像記録装置 | |
JP2007122706A (ja) | メモリマッピング方法及び装置 | |
JP2011053671A (ja) | 半導体集積回路 | |
JP2012146032A (ja) | 画像メモリ制御装置および画像処理装置 | |
US7508538B2 (en) | Image data rotation apparatus | |
JP2014178745A (ja) | メモリ制御装置および画像形成装置 | |
JPH11306343A (ja) | 2次元データ回転処理装置 | |
JP2012227598A (ja) | 画像処理装置、画像形成装置、画像処理方法、画像処理プログラム及び記録媒体 | |
JP3948152B2 (ja) | 画像情報回転装置 | |
US20090185754A1 (en) | Image processing circuit and image processing apparatus | |
JP6157251B2 (ja) | データ転送装置及びデータ転送方法 | |
JP2010208032A (ja) | 画像処理回路および画像形成装置 | |
JPH11168610A (ja) | 画像処理装置 | |
JP4633078B2 (ja) | カラー画像処理装置および画像メモリアクセス制御方法 | |
KR20070036258A (ko) | 화상 형성 장치 | |
JP2001119541A (ja) | 画像処理装置 | |
JP2000231631A (ja) | 画像回転装置 | |
JP2010141488A (ja) | 画像処理コントローラーおよび印刷装置 | |
JP4325838B2 (ja) | 並列印刷方法および並列印刷装置 | |
JPH0969155A (ja) | 画像処理装置及びその方法 | |
JPH04288772A (ja) | カラー画像処理装置 | |
JPH0496187A (ja) | 画像処理装置 | |
JP2006092506A (ja) | 画像処理装置 | |
JPH0390970A (ja) | ドットパターンの1.5倍拡大方式 | |
JPH0830777A (ja) | 画像処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20130417 |
|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20140401 |