JP6283980B2 - 画像処理装置及び画像処理方法 - Google Patents

画像処理装置及び画像処理方法 Download PDF

Info

Publication number
JP6283980B2
JP6283980B2 JP2013139992A JP2013139992A JP6283980B2 JP 6283980 B2 JP6283980 B2 JP 6283980B2 JP 2013139992 A JP2013139992 A JP 2013139992A JP 2013139992 A JP2013139992 A JP 2013139992A JP 6283980 B2 JP6283980 B2 JP 6283980B2
Authority
JP
Japan
Prior art keywords
unit
image processing
drawing command
band
image
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.)
Expired - Fee Related
Application number
JP2013139992A
Other languages
English (en)
Other versions
JP2015013388A (ja
Inventor
白石 尚人
尚人 白石
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2013139992A priority Critical patent/JP6283980B2/ja
Publication of JP2015013388A publication Critical patent/JP2015013388A/ja
Application granted granted Critical
Publication of JP6283980B2 publication Critical patent/JP6283980B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Record Information Processing For Printing (AREA)
  • Facsimiles In General (AREA)
  • Facsimile Image Signal Circuits (AREA)
  • Color Image Communication Systems (AREA)

Description

本発明は、画像処理装置及び画像処理方法に関する。
近年、ページプリンタなどにおいて、プリンタ描画処理などにおける解像度の増加と高速の要求に対し、CPU(Central Processing Unit)の性能、つまり、ソフトウエアのみでこれらの要求を満たすことが難しくなってきた。そのため、プリンタ描画処理や画像処理をハードウエアで行うようになってきている。
このハードウエアで行うプリンタ描画処理では、高速化メモリアクセスが必要であり、例えば、図8に示すように専用のメモリ(ローカルメモリ28)を有するものが知られている。
他方、プリンタ描画処理のコストダウンをはかる方法として、PC(Personal Computer)やゲームなどで画面サイズがVGA(Video Graphic Array)程度の場合は、フレームメモリが小さいために、フレームメモリのSRAM(Static Random Access Memory)として、ASIC(Application Specific Integrated Circuit)にメモリを内蔵して描画処理することが知られている(図9参照)。
しかし、プリンタ描画処理の場合は、描画サイズが600dpiのA4サイズとすると、6800*4720画素程度の大きなメモリサイズが必要となる。しかし、このように大きなメモリをASICに内蔵することは出来ない。
また、近年の半導体プロセスの発達により、メインメモリのDRAM(Dynamic Random Access Memory)は高速化されたが、それに伴いCPUとメモリコントローラ間の高速な転送レートが要求されるようになった。そのために、汎用CPUを製造するメーカーは、図7に示すようなメモリコントローラ4を内蔵した汎用CPU17を製造し始めている。
このようなメモリコントローラ4を内蔵した汎用CPU17をプリンタコントローラとして使用する場合、図7に示すように汎用CPU17の標準バス19に画像処理用ASIC20Aを接続することが考えられる。
例えば、図7に示すメモリコントローラ4を内蔵した汎用CPU17を使用し、ASIC20Aに描画装置11Aを有する場合は、描画処理は、メインメモリ18のバンドメモリ18bにバス19を介してアクセスしながら行う必要がある。この場合、描画装置11Aからバンドメモリ18bに細かなメモリアクセスが多発し、バス転送レートが本来の性能を発揮出来なくなる。また、バス19を介して処理する他のハードウエアに対する影響も大きくなる。
その対策として、図8に示すようにASIC20Aにローカルメモリ28を持たせる方法が考えられる。しかし、プリンタコントローラは、このローカルメモリ28の分コストが高くなる。
また、図9に示すように、ASIC20Aにバンドメモリ12Aを内蔵させる方法も考えられる。しかし、描画サイズが、例えば600dpiのA4サイズでは、既に述べたように、6800*4720(ライン)画素程度の大きなメモリサイズが必要となる。そのメモリ容量は、128Mバイトもの大きさであるため、それをASIC20Aに内蔵させることは難しく、仮に内蔵させるとASIC20Aのコスト上昇を招く。
そのため、描画データをバンドで区切り、各バンド単位でASIC20Aに格納することも考えられる。しかし、例えばバンドの高さを256ラインにしても、7Mバイトものメモリを必要とする。そのため、やはり、内蔵は容易でなく、内蔵させるとASICのコスト上昇を招く。
そこで、バンド高さを更に低くすれば、バンド容量は小さくなり、図9に示すように、メインメモリ18から描画コマンドを読み込みながらバンドを描画することが可能となる。しかし、この場合、バンドが小さいために読み込んだ描画コマンドがそのバンドに描画するコマンドでない場合が多くなる。そのため、バンド描画の度に1ページ分の描画コマンドを読み込むことになる。例えば、600dpiの場合に、A4、1ページ分の描画データ、4720ラインの高さを128ライン単位のバンドで分割すると37、つまり、1ページ分の描画コマンドを37回メインメモリ18から読み込む必要がある。
また、ASIC20Aの描画装置11Aからバス19を介するメインメモリ18のアクセスは、大きなレイテンシー(デバイスに対してデータ転送などを要求してから、その結果が返送されるまでの遅延時間)を必要とする。したがって、1ページ分の描画コマンドを読み込むために37回も読み込みを行うことは、多くの時間を要し、他のデバイスのバスの転送を阻害することになる。
また、1ページの描画コマンドを128ラインの高さ毎の複数の描画コマンドに分割した場合、37個のバンド単位の描画コマンドは、そのバンドのみに必要な描画コマンドのみであるため無駄な描画コマンドを読み込む必要がなくなる。つまり、メインメモリ18から転送する描画コマンドは1ページ分の描画コマンドのみとなるため、バスの転送の問題は解決する。
しかし、37個もの多くのバンド単位の描画コマンドを生成することは、CPUの処理負担が多くなり、描画コマンド生成の時間が長くなる。したがって、高速な描画処理を行うためには適さない。
なお、特許文献1には、低価格なCPUで印字スピードを向上させることを目的に、プリンタの多値RGB情報をソフトウエアでバンド画像に描画し、画像処理をハードウエアで実現する方法が開示されている(段落(0055)−(0067))。特許文献2には、画像を処理する本体装置と描画にかかる処理を行う描画装置を備えた画像処理システムにおいて、描画ボードは、自身が有するページメモリを利用して描画処理をすること、及びそれによって、CPUとのメモリの競合が起きることもなく、処理の効率化を図ると記載されている(段落(0066))。また、特許文献3には、低価格なCPUで印字スピードを向上させることを目的に、メモリが近い構成での描画処理部により、描画性能を高める方法が開示されている(段落(0075)−(0077))。
しかし、CPUで描画し、画像処理をハードウエアで処理しようとすると、CPUのコストが上昇するという問題や、ローカルメモリを用いて処理しようとするとコストが上昇するとの問題は解決されていない。
本発明は、前記従来の問題に鑑みてなされたものであって、その目的は、画像処理回路部を備えた画像処理装置において、高速な描画処理を、画像処理回路部に内蔵するメモリ容量を大きくせずに、低コストで実現することである。
本発明は、主記憶手段と、前記主記憶手段を制御するプリンタコントロール部と、画像処理回路部とを備えた画像処理装置であって、前記プリンタコントロール部は、入力されたページ記述言語を解析して描画コマンドを生成する描画コマンド生成手段を有し、前記主記憶手段は、前記描画コマンド生成手段により生成された描画コマンドを格納すると共に、前記画像処理回路部で描画され転送されるバンド画像を格納し、前記画像処理回路部は、内蔵記憶手段と、描画処理手段と、転送手段を有し、前記描画処理手段は、前記内蔵記憶手段に格納された1ページ分の描画コマンドを読み込み、1つのプレーンのバンド画像を前記内蔵記憶手段に描画し、前記転送手段は、前記描画コマンドを前記主記憶手段から前記内蔵記憶手段に転送し、かつ前記1つのプレーンのバンド画像を、前記内蔵記憶手段から前記主記憶手段へ転送し、前記描画処理手段は、前記内蔵記憶手段に前記1ページ分の描画コマンドを格納し、1つのプレーンの前記バンド画像を描画する、ことを特徴とする画像処理装置である。
本発明によれば、画像処理回路部を備えた画像処理装置において、高速な描画処理を、画像処理回路部に内蔵するメモリ容量を大きくせずに、低コストで実現することができる。
本発明の実施形態に係る画像処理装置のプリンタコントロールボードのブロック図である。 図1に示すプリンタコントロールボードの処理を概略的に示す図である。 図1に示す内蔵メモリと図1のメインメモリの関係を示す図である。 描画処理部のブロック図である。 各コマンドのフォーマットを例示する図である。 描画処理部で行われる描画処理の手順を示すフロー図である。 従来の画像処理装置を示すブロック図である。 従来の他の画像処理装置を示すブロック図である。 従来のさらに他の画像処理装置を示すブロック図である。
本発明は、プリンタ描画処理を行うに際して、以下の特徴を有する。
即ち、本発明は、C(シアン)、M(マゼンタ)、Y(イエロー)、K(ブラック)の1つのカラープレーンのバンド画像(データ)と、1ページ分の描画コマンドの小さなメモリを画像処理回路部(ASIC)に内蔵することで、ランダムなメモリアクセスを内蔵メモリで行い、繰り返し1ページ分の描画コマンドを読み込み、解析して描画することを特徴とする。
この本発明の特徴について、以下、その実施形態を図面を用いて説明する。
図1は、本発明の実施形態に係る画像処理装置のプリンタコントロールボード24のブロック図である。
プリンタコントロールボード24は、汎用CPU(ここでは、プリンタコントロール部という)17と、画像処理回路部(ここでは、ASIC20)と、ROM16と、主記憶手段であるメインメモリ18と、パネルコントロール部21と、パネル22を備えている。パネルコントロール部21は、バスI/F(インタフェース)14とパネルコントローラ15を備えている。
プリンタコントロール部17は、図1に示すように、CPU1及び内蔵のメモリコントローラ4を含む各種コントローラなどで構成されている。
ここで、CPU1は、プリンタコントロールボード24全体を制御すると共に、PC(Personal Computer)23から送られてくるPDL(ページ記述言語)データを解析し、本発明の描画処理手段に対応する描画処理部11の描画コマンドを生成する。
CPU_I/F2は、CPU1のインタフェースであり、メモリアービタ(メモリARB)3を介してメモリコントローラ4や各種コントローラと接続されている。
メモリアービタ3は、メインメモリ18と各種コントローラ間の調停を行う。
メモリコントローラ4は、メインメモリ18をコントロール(制御)し、メモリアービタ3を介して、各種コントローラやCPU1と接続されている。
DMA(Direct Memory Access)5は、メモリコントローラ4とバス19に接続されたASIC20のエンジンコントローラ9間のダイレクトメモリアクセスを行う。
バスコントローラ6は、バス19とつながる各周辺コントローラに対するバスの調停を行う。
通信コントローラ7は、ネットワークに接続されており、ネットワークから各種データやコマンドなどを受け取り、メモリアービタ3を介して各種コントローラに接続されている。
ROM16は、各種プログラムや、文字などのフォント情報を格納している。
メインメモリ18は、本発明の主記憶手段に対応し、描画コマンドや、描画データや描画されたCMYKの1ページ分の画像データや、CPUのプログラムなどを格納している。
ASIC20は、メインメモリ18に格納された画像データなどを、バス19を介して読み込み画像処理を行い、バス19を介してメインメモリ18へ転送する。
バスI/F8は、バス19のI/Fでありプリンタコントロール部17と接続されている。
画像読み込み部10は、メインメモリ18に格納された画像データを、エンジンコントローラ9へ転送する。
エンジンコントローラ9は、プリンタエンジン25を制御する。
描画処理部11は、CPU1により生成された描画コマンドを読み込み、ASIC20に内蔵された本発明の内蔵メモリ12のCMYKバンドメモリ領域12bに描画処理を行い、描画処理結果をメインメモリ18の指定された位置(描画データメモリ領域18(3);図2)へ書き込む。
ASIC20に内蔵された本発明の内蔵記憶手段に対応する内蔵メモリ12は、C、M、Y、Kのうちの1つの版のプレーンのバンド画像と、1ページ分の描画コマンドを格納している。ここで、1つの版(の色)のバンド画像のみを格納する理由は、ASIC20に搭載するメモリ容量が限られるためである。
また、1ページ分の描画コマンドを格納する理由は、バンドの高さ間隔が小さいために何度も同じ描画コマンドを読み込むことになるからである。なお、内蔵メモリ12に1ページ分の描画コマンドが入らない場合は、図9に示したようにメインメモリから、バンド描画するたびに、1ページ分の描画コマンドを読み込む必要があり、コマンドの読み込みに多くの時間を費やし、内蔵メモリ12を設けた効果が小さくなるためである。
プリンタエンジン25は、プリントを実行するためのプリンタエンジンである。
パネルコントロール部21のバスI/F14は、パネルコントローラ15のデータをメモリコントローラ4内蔵のプリンタコントロール部17へ転送する。
パネルコントローラ15は、パネル22をコントロールする。
パネル22は、ユーザーからの操作を受け付け、操作内容をプリンタコントロール部17に伝える。
PC23は、ユーザーの印字操作を受け付けてPDLを生成する。
プリンタコントロールボード24は、プリンタをコントロールする。
本実施形態では、C、M、Y、Kのうちの1つのプレーンの色のバンド画像のみ描画するために、図1に示すように内蔵メモリ12をASIC20に内蔵することが可能となる。また、図8に示すように、ASIC20にローカルメモリ28(外部メモリ)を有する必要がなく、内蔵メモリ12のメモリ容量を大きくせず、高速な描画を実現することができる。また、ローカルメモリ28を必要としない分コストを抑制することができる。
図2は、図1に示すプリンタコントロールボード24の処理を概略的に示す図である。
PC23は、PDLデータを生成し、ネットワークを介してプリンタコントロールボード24のプリンタコントロール部17へ転送する。
プリンタコントロール部17の通信コントローラ7は、PC23からのPDLデータを受け取り、それをメインメモリ18のPDLメモリ領域18(1)へ格納する。
メインメモリ18は、PDLデータ、CMYKのプレーンの画像データ、1ページ分の描画ページコマンド(グラフィックスコマンドや写真描画コマンドやバンド定義のコマンドなど)データ、描画データ(写真画像のソース画像など)などを格納する。
PDLメモリ領域18(1)は、通信コントローラ7から転送されるPDLデータを格納する。描画ページコマンドメモリ領域18(2)は、CPU1で生成された描画コマンドを格納する。描画データメモリ領域18(3)は、CPU1で生成された描画データを格納する。CMYKページ画像メモリ(プレーンページ画像)領域18(4)は描画処理部11により描画された画像(データ)を格納する。
CPU1は、本発明の描画コマンド生成手段に対応し、PC23から転送されるPDLデータを解析し、描画処理部11へ転送する1ページ分の描画ページコマンドや、描画データを生成し、メインメモリ18の描画ページコマンドメモリ領域18(2)及び描画データメモリ(処理データ)領域18(3)に書き込む。
描画処理部11は、図示のように、コマンド&バンドDMA部11(2)と描画部11(4)を備えている。
コマンド&バンドDMA部11(2)は、描画処理を行う最初に1回だけメインメモリ18の1ページ分の描画ページコマンド(グラフィックスコマンドや写真描画コマンドやバンド定義のコマンドなど)を、内蔵メモリ12の描画ページコマンドメモリ領域12aに転送する。
描画ページコマンドメモリ領域12aは、図1の内蔵メモリ(SRAM)12にあり、コマンド&バンドDMA部11(2)で転送された描画ページコマンドを格納する。
描画部11(4)は、描画ページコマンドメモリ領域12aのコマンドを読み込み、ASIC20に内蔵されたCMYKバンドメモリ領域12bにC、M、Y、Kのうちの1つのプレーン(例えば、Cプレーンなど)のバンド画像を描画する。この時、CMYKバンドメモリ領域12bに描画する領域を、図3Bに示すメインメモリ18(CMYKページ画像メモリ領域18(4))のように、C版バンド0〜N領域、次に、M版バンド0〜N領域というように、CMYKのカラー毎に順次生成していき、そのバンド領域を、クリッピング処理を行いながら描画していく。その際、描画コマンドのバンド設定コマンドを認識するとCMYKバンドメモリ領域12bの初期化を行う。
また、描画ページコマンドメモリ領域12aのコマンドは、1ページ分の描画コマンドを含むため、当該バンドに描画する領域以外の描画コマンドは順次スキップさせて、必要な描画コマンドのみ描画処理していく。
CMYKバンドメモリ領域12bは、描画部11(4)で描画されたC、M、Y、Kのうちの1つのプレーン(例えば、Cプレーンなど)のバンド画像を格納する。1版のプレーンのバンド画像(バンドプレーン画像)の描画処理が完了すると、コマンド&バンドDMA部11(2)は、CMYKバンドメモリ領域12bに描画されたC、M、Y、Kのうちの1つのプレーン(例えば、Cプレーンなど)のバンド画像を、メインメモリ18のCMYKページ画像メモリ領域18(4)に、順次転送していく(つまり、バンド高さの小さいバンド画像を順次転送し、少なくとも1ページ分の画像を蓄積形成する)。
描画部11(4)は、C、M、Y、Kの版毎に、描画した後にコマンド&バンドDMA部11(2)で、描画画像をメインメモリ18のCMYKページ画像メモリ領域18(4)に転送し、次の版があればその描画を行う。全ての版の全てのバンドを描画し終わると、CPU1に処理の終了を通知する。
画像読み込み部10は、プリンタエンジン25に同期してメインメモリ18のCMYKページ画像メモリ領域18(4)の描画処理画像を、エンジンコントローラ9へ転送する。
エンジンコントローラ9は、画像読み込み部10から受け取った画像をプリンタエンジン25へ転送する。プリンタエンジン25は印字を行う。
図3は、図1に示す内蔵メモリ12と図1のメインメモリ18の関係を示す図である。ここで、図3Aは、内蔵メモリ12のフォーマット、図3Bは、メインメモリ18のCMYKページ画像メモリ領域18(4)フォーマットを示す。
図3Aに示す内蔵メモリ12は、例えば128ラインの小バンド高さを持ったC、M、Y、Kの1版のバンドメモリ(CMYKバンドメモリ領域12b)と、描画コマンドの領域(描画ページコマンドメモリ領域12a)を持っている。
メインメモリ18のCMYKページ画像メモリ領域18(4)は、内蔵メモリ12に一時格納された各版のバンドをページ分格納している。
即ち、メインメモリ18のCMYKページ画像メモリ領域18(4)は、C、M、Y、Kの各版ごとに、小バンド高さの領域で区切った複数の版ページ領域、例えば、A4、600dpiとすると、その場合のページの高さは4720ラインであるから、1色、例えばCのバンド領域は、小バンド高さの37個の領域(C版バンド0〜36領域)となる。
図4は、描画処理部11のブロック図である。
描画処理部11は、バスアービタI/F11(1)と、本発明の転送手段に対応するコマンド&バンドDMA11(2)と、コマンド解析部11(3)と、描画部11(4)と、内蔵メモリ制御部11(5)を備えている。
バスアービタI/F11(1)は、図1のバスI/F8との入力I/Fである。
コマンド&バンドDMA部11(2)は、内蔵メモリ12の描画ページコマンドメモリ領域12aに描画コマンドを転送した、内蔵メモリ12のCMYKバンド(画像)メモリ領域12bからバンド画像を転送する。
コマンド解析部11(3)は、描画コマンドを読み込み、描画コマンドを解析し、描画部11(4)にパラメータを転送し、起動させる。
描画終了後に次のコマンドを解析する。
描画部11(4)は、コマンド解析部11(3)から描画コマンドのパラメータを受け取り、内蔵メモリ12(CMYKバンドメモリ領域12b)へC、M、Y、Kのうちの1つのプレーンのバンド画像を描画する。
内蔵メモリ制御部11(5)は、コマンド解析部11(3)とコマンド&バンドDMA部11(2)と描画部11(4)から要求されて、内蔵メモリ12のリード/ライトを制御する。
内蔵メモリ12は、図3Aに示すように1版のバンド画像(CMYKバンドメモリ領域12b)と描画ページコマンド(描画ページコマンドメモリ領域12a)を格納している。即ち、内蔵メモリ12(CMYKバンドメモリ領域12b)は、図3に示すように、例えば128ラインという低い高さ(600dpiのA4のページの高さは4720ラインである)のバンド画像を格納する。
図5は、各コマンドのフォーマットを例示する図であり、図5A、5Bは描画ハードパラメータ設定コマンドを示し、図5C、5Dは描画コマンドを示す。図示のようにコマンドは、ここでは全て32ビット幅である。
これらのコマンドフォーマットは、CPU1でPDLデータから変換して、図2に示すメインメモリ18に格納される各コマンドのフォーマットである。このコマンドは、図4のコマンド解析部11(3)で解析され、描画部11(4)で描画される。
各コマンドは、図5A、5Bに示す描画ハードパラメータ設定コマンドと、図5Cに示すグラフィックス描画コマンド、図5Dに示す写真画像描画コマンドとに分けることができる。
図5A、5Bの描画ハードパラメータ設定コマンドは、各種の描画パラメータのパラメータを設定するコマンドである。図5Aはバンド初期化コマンドであり、バンドの先頭アドレスとバンドの高さと幅を定義する。このバンド初期化コマンドはバンドを初期値の“白”に初期化する。
図5Bは、バンド終了コマンドであり、定義したバンドの描画の終了を意味する。なお、コマンド解析部11(3)は、このバンド終了コマンドを受け取ると描画処理を終了する。
図5Cのグラフィックス描画コマンドは、グラフィックス描画を実行するためのコマンドであり、指定された四角形の左上の座標から右下の座標までの四角形を描画する。即ち、グラフィック描画用四角形描画コマンドヘッダに続き、CMYKカラー値、左上X座標、左上Y座標、右下X座標、右下Y座標のそれぞれの座標値が指定されている。
図5Dの写真画像描画コマンドは、写真画像描画を実行するためのコマンドである。即ち、写真描画用写真描画コマンドヘッダに続き、写真リソースを取り込むためのソースアドレス、左上X座標、左上Y座標、写真画像幅、写真画像高さが指定されている。
図6は、描画処理部11で行われる描画処理の手順を示すフロー図である。
描画処理部11では、まず、1ページの描画コマンドが内蔵メモリ12の容量よりも大きいか否か判断する(S101)。大きいときは(S101、YES)、従来のようにバスを介してのコマンド転送が多発するため、ソフトウエアで描画を行うこととし(S102)、この処理を終了する。即ち、描画処理部11は、1ページの描画コマンドが内蔵メモリ12の容量よりも大きい場合は処理を禁止する。
1ページの描画コマンドが内蔵メモリ12の容量以下であるときは(S101、NO)、内蔵メモリ12の描画ページコマンドメモリ領域12a以外の領域(つまり、残りの領域)をバンド幅(例えば32bit)で割り小バンド高さを求める(S103)。
次に、バンドの先頭と終点のY座標を初期化(つまり、バンド先頭Y座標=0、バンド終点Y座標=0に)する(S104)。次に、メインメモリ18の描画ページコマンドメモリ領域18(2)にある描画ページコマンドを、内蔵メモリ12の描画ページコマンドメモリ領域12aに転送する。この転送は、既に説明したように、図4に示すコマンド&バンドDMA11部(2)で行う。
次に、描画する内蔵メモリ12(CMYKバンドメモリ領域12b)のバンド先頭のY座標と終点Y座標を更新する(バンド先頭Y座標=バンド終点Y座標、バンド終点Y座標=バンド終点Y座標+小バンド高さに更新する)。
次に、処理する版番号を初期化(版番号=0)する(例えば版番号=0でC版、1でM版、2でY版、3でK版など)(S107)。次に、読み込みコマンドのアドレスを初期化する(S108)。次に、コマンドアドレスの示す描画ページコマンドを読み込み(S109)、コマンド解析部11(3)でコマンドを解析し、描画するコマンドか否か判断する(S110)。ここで、描画するコマンドであれば(S110、YES)、描画コマンドによる描画がバンド先頭のY座標と終点のY座標の間で描画できるか否か判断する(S111)。ここで、描画できないものであるときは(S111、NO)、ステップS109へ戻り次のコマンドを読み込む。
ステップS111で描画できるものであるときは(S111、YES)、バンド先頭Y座標とバンド終点Y座礁の間でクリッピング処理を行う(描画コマンドをクリッピングしてバンドに入る部分のコマンドに変換する)(S112)。
次に、描画コマンドがグラフィック描画用四角形描画コマンドあるか否か判断し(S113)、四角形描画であるときは(S113、YES)、指定された版に四角形の描画を行う(S114)。
ステップS113で、四角形描画でないときは(S113、NO)、ソースアドレスに基づき、指定された版にメインメモリ18の描画データメモリ領域18(3)から写真画像のソース画像を読み込み、写真画像を描画する(S115)。ステップS114、S115終了後は、ステップS109に戻って、描画ページコマンドメモリ領域12aからコマンドを読み込むところからの処理を繰り返す。
描画データメモリ領域18(3)をメインメモリ18に設けたのは、この描画データは一般的に容量が大きいことと、描画データの読み込みに際して、描画コマンドで指定された領域のみ読み込むためである。つまり、読み込みに無駄がなく、描画処理部11がバス19を介してメインメモリ18にアクセスしても、アクセス回数が少なく、バス19の帯域を圧迫しないという理由による。
ステップS110において、描画するコマンドでないと判断したときは(S110、NO)、次に、当該コマンドが終了コマンドか否か判断する(S116)。終了コマンドでなければ(S116、NO)バンド情報設定コマンドと判断してバンド情報を設定し(S117)、図1の内蔵メモリ12のCMYKバンドメモリ領域12bを初期化する(S118)。CMYKバンドメモリ領域12bを初期化した後は、ステップS109に戻り、以降の処理を繰り返す。
ステップS116で、終了コマンドであれば(S116、YES)、内蔵メモリ12のCMYKバンドメモリ領域12bのバンド画像をメインメモリ18のCMYKページ画像メモリ領域18(4)に転送する(S119)。なお、この処理は、図4のコマンド&バンドDMA部11(2)で行う。
次に、版番号を確認し、最後の番号のプレーンか否か(つまり版番号=3か否か)判断する(S120)。なお、CMYKの場合は4プレーンで全てである。
ステップS120で、最後のプレーンでなければ(S120、NO)、版番号を1カウントアップして(版番号=版番号+1)(S122)、ステップS108に戻り、全ての版の全てのバンド画像を描画するまで処理を繰り返す。
ステップS120で版番号が最後の版番号(ここでは版番号=3)であるときは(S120、YES)、ページ高さで描画するまで、ステップS106からの処理を繰り返し(S121、NO)、ページ高さで描画したときは(S121、YES)、この処理を終了する。
既に述べたように、従来、メモリコントローラを内蔵したCPUでは、図7に示すように、バスを介してメインメモリにアクセスする場合、データをシリアルに転送することが効率的にみてよい。しかし、描画処理では、色々な部分に細かなランダムなアクセスが多く発生し、効率よくメモリへのアクセスが出来ない。そのために、描画処理に多くの時間を費やしたり、バスの転送レートを低下させて、他のハードウエアのメモリアクセスを邪魔することが起こる。また、ソフトウエアのみで描画する場合は、多くのメモリアクセスが必要であるので、高価なCPUを使用せざるを得ない。
また、図8に示すようなASICが描画用のメモリを占有する方式では、専用のメモリを必要とするためコストアップになる。
そのために、本実施形態では、ASIC内に、図3に示す、例えば128ラインの高さの低い小バンド画像メモリを有して、描画データを小バンド画像で区切って描画するようにしている。また、バンドメモリ領域と描画コマンドを同じ内蔵メモリ12に格納することで、画像により1ページ分の描画ページコマンドメモリ領域12aが異なっても、CMYKバンドメモリ領域12bの大きさを調整して対応できるようにしている。つまり、必ず1ページ分の描画コマンドを内蔵メモリに格納し、その余りの部分にちょうど入るサイズのバンドの高さのバンドメモリ領域を持つようにしている。
これにより、1ページ分の描画コマンドを何度も読み込み、何度も、例えば128ラインのような小さいバンド高さの描画を行い、生成されたバンド画像を順次メインメモリに転送していくことで、1ページ分のページ画像を生成するようにした。
即ち、1ページの描画コマンドを、600dpiで128ラインの小さいバンド高さの画像メモリに適用して描画処理する場合、既に述べたように、1ページ分の処理を行うのに37回繰り返し読み込み及び解析を行うことになる。しかし、描画コマンドは、ASICに内蔵されたメモリに格納されているため、メモリアクセスが速くこの程度の読み込み回数は問題にならない。もちろん、バスを使用しないので、他のデバイスの邪魔にならないとの利点が得られる。
以上、本実施形態によれば、C、M、Y、Kのうちの1つのカラープレーンのバンド画像と、1ページ分の描画コマンドを格納する小さいメモリをASICに内蔵することで、ランダムなメモリアクセスを内蔵のメモリで行い、メモリ容量を増大させることなく、高速な描画処理を実現することができる。
即ち、本実施形態によれば、C、M、Y、Kのうちの1つのプレーンバンド画像と1ページ分の描画コマンドを格納する内蔵メモリをASICに有して、バスの転送レートを落とし、ASIC内部でページ単位の描画コマンドでバンド画像を描画する。また、描画したバンド画像を、バスを介してメインメモリに戻す時は、シリアルなアクセスで行うようにしたため、バスの転送レートを最大限に生かすことができる。
1・・・CPU、2・・・CPU_I/F、3・・・メモリARB、4・・・メモリコントローラ、5・・・DMA、6・・・バスコントローラ、7・・・通信コントローラ、8・・・バスI/F、9・・・エンジンコントローラ、10・・・画像読み込み部、11・・・描画処理部、11(1)・・・バスアービタI/F、11(2)・・・コマンド&バンドDMA部、11(3)・・・コマンド解析部、11(4)・・・描画部、11(5)・・・内蔵メモリ制御部、12・・・内蔵メモリ、12a・・・描画ページコマンドメモリ領域、12b・・・CMYKバンドメモリ領域、14・・・バスI/F、15・・・パネルコントローラ、18・・・メインメモリ、20・・・ASIC、22・・・パネル、23・・・PC、25・・・プリンタエンジン。
特開2008−023959号公報 特許第4833770号公報 特開2005−309865号公報

Claims (8)

  1. 主記憶手段と、前記主記憶手段を制御するプリンタコントロール部と、画像処理回路部とを備えた画像処理装置であって、
    前記プリンタコントロール部は、入力されたページ記述言語を解析して描画コマンドを生成する描画コマンド生成手段を有し、
    前記主記憶手段は、前記描画コマンド生成手段により生成された描画コマンドを格納すると共に、前記画像処理回路部で描画され転送されるバンド画像を格納し、
    前記画像処理回路部は、内蔵記憶手段と、描画処理手段と、転送手段を有し、
    前記描画処理手段は、前記内蔵記憶手段に格納された1ページ分の描画コマンドを読み込み、1つのプレーンのバンド画像を前記内蔵記憶手段に描画し、
    前記転送手段は、前記描画コマンドを前記主記憶手段から前記内蔵記憶手段に転送し、かつ前記1つのプレーンのバンド画像を、前記内蔵記憶手段から前記主記憶手段へ転送し、
    前記描画処理手段は、前記内蔵記憶手段に前記1ページ分の描画コマンドを格納し、1つのプレーンの前記バンド画像を描画する、
    ことを特徴とする画像処理装置。
  2. 主記憶手段と、前記主記憶手段を制御するプリンタコントロール部と、画像処理回路部とを備えた画像処理装置であって、
    前記プリンタコントロール部は、入力されたページ記述言語を解析して描画コマンドを生成する描画コマンド生成手段を有し、
    前記主記憶手段は、前記描画コマンド生成手段により生成された描画コマンドを格納すると共に、前記画像処理回路部で描画され転送されるバンド画像を格納し、
    前記画像処理回路部は、内蔵記憶手段と、描画処理手段と、転送手段を有し、
    前記描画処理手段は、前記内蔵記憶手段に格納された1ページ分の描画コマンドを読み込み、1つのプレーンのバンド画像を前記内蔵記憶手段に描画し、
    前記転送手段は、前記描画コマンドを前記主記憶手段から前記内蔵記憶手段に転送し、かつ前記1つのプレーンのバンド画像を、前記内蔵記憶手段から前記主記憶手段へ転送し、
    前記描画処理手段は、前記内蔵記憶手段に前記1ページ分の描画コマンドを格納したときの残りの記憶領域に、1つのプレーンの前記バンド画像を描画することを特徴とする画像処理装置。
  3. 主記憶手段と、前記主記憶手段を制御するプリンタコントロール部と、画像処理回路部とを備えた画像処理装置であって、
    前記プリンタコントロール部は、入力されたページ記述言語を解析して描画コマンドを生成する描画コマンド生成手段を有し、
    前記主記憶手段は、前記描画コマンド生成手段により生成された描画コマンドを格納すると共に、前記画像処理回路部で描画され転送されるバンド画像を格納し、
    前記画像処理回路部は、内蔵記憶手段と、描画処理手段と、転送手段を有し、
    前記描画処理手段は、前記内蔵記憶手段に格納された1ページ分の描画コマンドを読み込み、1つのプレーンのバンド画像を前記内蔵記憶手段に描画し、
    前記転送手段は、前記描画コマンドを前記主記憶手段から前記内蔵記憶手段に転送し、かつ前記1つのプレーンのバンド画像を、前記内蔵記憶手段から前記主記憶手段へ転送し、
    前記描画処理手段は、前記内蔵記憶手段に前記1ページ分の描画コマンドを格納したときの残りの記憶領域に、バンド幅で割ったバンド高さの1つのプレーンの前記バンド画像を描画することを特徴とする画像処理装置。
  4. 請求項1ないし3のいずれかに記載された画像処理装置において、
    前記描画処理手段は、前記転送手段により転送された描画コマンドが前記内蔵記憶手段の容量を超えるときは、描画処理を行わないことを特徴とする画像処理装置。
  5. 請求項ないしのいずれかに記載された画像処理装置において、
    前記画像処理回路部は、前記内蔵記憶手段への複数のカラープレーンのうちの1つのプレーンの前記バンド画像の描画と、生成された前記バンド画像の転送を繰り返し行うことを特徴とする画像処理装置。
  6. 請求項1ないし3のいずれかに記載された画像処理装置において、
    前記画像処理回路部は、ASICであることを特徴とする画像処理装置。
  7. 請求項1ないし3のいずれかに記載された画像処理装置において、
    前記プリンタコントロール部は、前記主記憶手段のメモリコントローラを備えたCPUであることを特徴とする画像処理装置。
  8. 主記憶手段と、前記主記憶手段を制御するプリンタコントロール部と、画像処理回路部とを備えた画像処理装置における画像処理方法であって、
    前記プリンタコントロール部における、入力されたページ記述言語を解析して描画コマンドを生成する描画コマンド生成工程と、
    前記描画コマンド生成工程において生成された描画コマンドを前記主記憶手段に格納する工程と、
    前記画像処理回路部における、前記主記憶手段に格納された描画コマンドから1ページ分の描画コマンドを前記画像処理回路部の内蔵記憶手段に転送する工程と、
    前記転送された1ページ分の描画コマンドを前記内蔵記憶手段に格納する工程と、
    前記内蔵記憶手段に格納された1ページ分の描画コマンドを読み込み、1つのプレーンのバンド画像を前記内蔵記憶手段に描画する描画処理工程と、
    前記内蔵記憶手段に描画された前記バンド画像を、前記主記憶手段に転送する画像転送工程と、
    転送された前記バンド画像を前記主記憶手段に格納する工程と、
    前記内蔵記憶手段に前記1ページ分の描画コマンドを格納し、1つのプレーンの前記バンド画像を描画する工程と、
    を有することを特徴とする画像処理装置における画像処理方法。
JP2013139992A 2013-07-03 2013-07-03 画像処理装置及び画像処理方法 Expired - Fee Related JP6283980B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013139992A JP6283980B2 (ja) 2013-07-03 2013-07-03 画像処理装置及び画像処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013139992A JP6283980B2 (ja) 2013-07-03 2013-07-03 画像処理装置及び画像処理方法

Publications (2)

Publication Number Publication Date
JP2015013388A JP2015013388A (ja) 2015-01-22
JP6283980B2 true JP6283980B2 (ja) 2018-02-28

Family

ID=52435555

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013139992A Expired - Fee Related JP6283980B2 (ja) 2013-07-03 2013-07-03 画像処理装置及び画像処理方法

Country Status (1)

Country Link
JP (1) JP6283980B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11100904B2 (en) 2018-09-11 2021-08-24 Kabushiki Kaisha Toshiba Image drawing apparatus and display apparatus with increased memory efficiency

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3641922B2 (ja) * 1997-11-26 2005-04-27 セイコーエプソン株式会社 Asic制御装置及び方法
JP2000305726A (ja) * 1999-04-20 2000-11-02 Canon Inc データ処理装置およびデータ処理装置のバンド処理方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体
JP4833770B2 (ja) * 2006-08-24 2011-12-07 株式会社リコー 画像処理システムおよび画像処理方法
JP2011073259A (ja) * 2009-09-30 2011-04-14 Ricoh Co Ltd 画像処理デバイス、カラー画像形成装置、画像処理方法、画像処理プログラム及び記録媒体
JP2012169916A (ja) * 2011-02-15 2012-09-06 Ricoh Co Ltd 画像処理装置および画像形成装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11100904B2 (en) 2018-09-11 2021-08-24 Kabushiki Kaisha Toshiba Image drawing apparatus and display apparatus with increased memory efficiency

Also Published As

Publication number Publication date
JP2015013388A (ja) 2015-01-22

Similar Documents

Publication Publication Date Title
US10762401B2 (en) Image processing apparatus controlling the order of storing decompressed data, and method thereof
US10068518B2 (en) Method, apparatus and system for dithering an image
JP6171591B2 (ja) 画像処理装置及び画像処理方法
JP2009151571A (ja) 画像データ供給装置及び方法
JP6221637B2 (ja) 画像処理装置および画像処理方法、ならびに、画像形成装置
JP4250470B2 (ja) 情報処理装置及び情報処理方法及び印刷制御プログラム
US20120268796A1 (en) Image forming apparatus, method of controlling drawing processing, and recording medium storing drawing processing control program
JP6283980B2 (ja) 画像処理装置及び画像処理方法
US8767265B2 (en) Image processing apparatus and processing method of the image processing apparatus
US8159708B2 (en) Apparatus for accelerated processing of print data by maximizing word-boundary accesses of image data
JP6904717B2 (ja) 画像処理装置、その制御方法、およびプログラム
US10552717B2 (en) Image processing apparatus, control method thereof, and storage medium
US7710602B2 (en) Systems and methods for context-based adaptive image processing using segmentation
JP5936363B2 (ja) 画像処理装置及び画像処理方法
JP6821924B2 (ja) 画像処理装置、画像処理方法
US10152657B2 (en) Image processing apparatus and image processing method of color image
JP7081477B2 (ja) 画像処理装置、画像処理装置の制御方法、およびプログラム
JP2002063582A (ja) 画像形成装置及び画像形成方法
JP2009066926A (ja) 画像処理装置及び画像形成システム
JP6455675B2 (ja) 電子機器およびフォント画像出力プログラム
JP2006031086A (ja) 印刷処理方法
JP2006218819A (ja) 画像形成装置、画像処理装置、プログラムおよび画像処理方法
US20040105124A1 (en) Adaptive rasterizer buffer
JP4325339B2 (ja) 印刷システム、ホストコンピュータ及びプリンタドライバ
JP3968989B2 (ja) 画像処理装置、画像処理方法および画像処理プログラムを記録した記憶媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160624

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170704

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170901

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180105

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180118

R151 Written notification of patent or utility model registration

Ref document number: 6283980

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees