JP4328689B2 - 画像処理装置および画像処理装置の制御方法 - Google Patents

画像処理装置および画像処理装置の制御方法 Download PDF

Info

Publication number
JP4328689B2
JP4328689B2 JP2004231432A JP2004231432A JP4328689B2 JP 4328689 B2 JP4328689 B2 JP 4328689B2 JP 2004231432 A JP2004231432 A JP 2004231432A JP 2004231432 A JP2004231432 A JP 2004231432A JP 4328689 B2 JP4328689 B2 JP 4328689B2
Authority
JP
Japan
Prior art keywords
decompression
unit
speed
image data
data
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
JP2004231432A
Other languages
English (en)
Other versions
JP2006050444A (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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2004231432A priority Critical patent/JP4328689B2/ja
Priority to US11/197,997 priority patent/US7679790B2/en
Publication of JP2006050444A publication Critical patent/JP2006050444A/ja
Application granted granted Critical
Publication of JP4328689B2 publication Critical patent/JP4328689B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32358Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device using picture signal storage, e.g. at transmitter
    • H04N1/32443Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device using picture signal storage, e.g. at transmitter with asynchronous operation of the image input and output devices connected to the memory
    • H04N1/32448Controlling data flow to or from the memory in relation to the available memory capacity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32358Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device using picture signal storage, e.g. at transmitter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0077Types of the still picture apparatus
    • H04N2201/0082Image hardcopy reproducer

Description

本発明は、画像形成装置の制御技術に関する。
ホストコンピュータとプリンタとがネットワークを通じて接続されるネットワークプリンタにおいて、プリンタ本体は画像データの展開機能を有しておらずホスト側が画像処理とともに展開処理を行った上で画像の圧縮を行う構成が存在する。この構成の場合、プリンタ装置は、その圧縮された画像データを受け取り内部メモリに格納する。そしてプリント動作の開始に応じて、プリンタ装置は内部メモリに格納された圧縮画像データを伸長回路で伸長しながら、記録部(エンジン部)に転送して印字を行う。
基本的に、プリンタの最大印刷速度は、一般的な画像データを基準として算出されることが多い。従って、基準とは異なる画像データを印刷する場合には、速度が低下する場合が存在する。つまり、このようなプリンタ装置においては、伸長回路による伸長速度がプリント動作の高速化のボトルネックとなりうる。プリント動作速度を最大限にするためには、伸長回路の処理速度をエンジン部への画像データの供給速度よりも速いものにしておくことが望ましい。例えば、通常用いられている圧縮/伸長方式によれば、圧縮コードによっては伸長に時間がかかるものが存在する。そこで、そのような伸長時間が増加する圧縮コードが連続した場合にもその伸長速度がプリント速度(エンジン部への画像データの供給速度)よりも遅くならないようにする具体的構成が必要である。
伸長回路の処理速度は、基本的に、伸長回路の動作クロックに依存する。したがって、プリント動作速度を低下させないためには、上記のような伸長に時間がかかる圧縮コードが連続した場合にもその伸長速度がエンジン部への画像データの供給速度よりも速くなるように、伸長回路の動作クロックを設定すればよい。
しかし、上記したような伸長に時間がかかる圧縮コードが連続すること自体は確率的には低いものである。このように確率的に低い圧縮コードが入力されたときの伸長速度を確保するためにのみ動作クロックを高速にしておくことは、無駄が多い。つまり、伸長に時間がかかる圧縮コードが連続した場合に備えて高速な動作クロックを与えるように構成した場合には、そのような圧縮コードが連続しない多くの場面ではその動作クロックは不必要に速いものであるといえる。そして、これにより、無駄な電力を消費するばかりか、装置自体やICの発熱をも増加させる。結果的に、寿命や故障率を悪化させていることにもなる。
これに対し、特許文献1は、例えば、ソフトウェアコーデックとハードウェアコーデックを備え、高速処理に有利な方を選択して使用する技術を開示している。これにより、処理の高速化を実現している。
その一方、特許文献1に開示されたような技術は回路規模の増大、ひいては消費電力の増加を招く。これに対し、特許文献2は、画像処理を行うための、アーキテクチャの相異なる複数のプログラマブルな画像処理手段を有する画像処理装置を開示している。そして、これら複数の画像処理手段のうち、使用しない画像処理手段へのクロック供給を停止することにより消費電力を低減させる技術を開示している。
特開2001−027986号公報 特開2001−184495号公報
ところで、伸長回路による伸長速度がプリント動作の高速化のボトルネックとなっている場合において、プリント動作速度を低下させないためには、上記のように伸長回路の動作クロックを高速化するかわりに、伸長回路の後段に、伸長された画像データを格納するためのバッファメモリを設ける構成をとることもできる。具体的には、プリント動作の開始より早いタイミングで伸長動作を開始して、伸長された画像データをバッファにあらかじめ蓄えておく。それにより、伸長回路の伸長速度とエンジン部への画像データの供給速度との違いを吸収させようというものである。この構成は、伸長回路の動作クロックを高速化させなくても実現が可能なので、消費電力の点で有利である。
しかし、このような構成をとる場合、従来は、伸長回路の伸長速度とエンジン部への画像データの供給速度との違いが大きいためにバッファメモリの記憶容量を大きくとる必要がある。そのため、このような構成は、コスト高になってしまうという問題があった。さらに、コスト上昇に関しては、メモリ以上に高価なコーデックや画像処理手段を複数設ける特許文献1及び2においてより深刻である。
このように、プリント動作の高速化を実現するにあたっては、上記のいずれの手法によっても(とりわけ、上記したいずれの特許文献によっても)低コストおよび低消費電力の両立を図ることは難しい。
したがって、本発明は、圧縮された画像データを伸長する画像処理装置において、低コストおよび低消費電力の両立を図りつつ、高速な画像形成動作を実現することを目的とする。
上記の目的は、例えば本発明の画像処理装置によって達成される。本発明の一側面に係る画像処理装置は、圧縮された画像データを伸長してプリンタエンジンに供給するための画像処理装置であって、データ伸長を高速に実行可能な高速伸長回路、および、当該高速伸長回路に比べ伸長速度低速であるが消費電力量が小さい低速伸長回路を動的に再構成可能なダイナミックリコンフィギュラブルロジックにより構成され、前記圧縮された画像データを伸長する伸長ユニットと、前記プリンタエンジンへのデータ転送速度と前記伸長ユニットによるデータ伸長速度との差を吸収するため、前記伸長ユニットで伸長された画像データを前記プリンタエンジンに供給する前に一時的に蓄積するバッファユニットと、前記バッファユニットに蓄積されているデータ量を検知する検知ユニットと、次に行う画像データの伸長に要する時間を予測する予測ユニットと、前記検知ユニットによって検知されたデータ量が第1のしきい値未満であり、かつ、前記予測ユニットにより予測された次に行う画像データの伸長に要する時間が所定時間以上である場合は、前記伸長ユニットを前記高速伸長回路として構成させ、それ以外の場合は、前記伸長ユニットを前記低速伸長回路として構成させるよう前記伸長ユニットを制御する制御ユニットとを有することを特徴とする。
本発明によれば、圧縮データを伸長する画像処理装置において、低コストおよび低消費電力の両立を図りつつ、高速な画像形成動作を実現することができる。
以下、図面を参照して本発明の好適な実施形態について詳細に説明する。
(第1の実施形態)
図2は、本発明が適用される画像処理装置としてのプリンタの構成を示す図である。
プリンタ2は、外部装置であるホストコンピュータよりデータが入力され、プリント動作を実行する。具体的には、プリンタ2は例えばカラーレーザビームプリンタである。カラーレーザビームプリンタは、ホストコンピュータから供給される圧縮された画像データを受け取る。具体的に、この画像データはイエロー(Y)、マゼンタ(M)、シアン(C)、ブラック(K)の各色ごとのデータである。この画像データを記憶するとともに、圧縮された画像データを伸長し、記録紙上に像を形成する。
なお、本実施形態において使用される圧縮方式は、例えば、直前の隣接する画素や前のラインの画素を参照して、コピーや繰り返しのコマンドをコードに含めることで元の画像データを圧縮していく、いわゆるSLIM圧縮等を想定している。しかしながら、本発明が適用可能な圧縮方法は、この圧縮方法に限ったものではない。
200は各種操作のためのスイッチ及びLED表示器などが配置されている操作パネルである。そして、201が、操作パネル200を介して入力された操作情報や、ホストコンピュータから供給された圧縮された画像データや各種のコマンドデータに基づいてプリンタ2全体の制御を司るプリンタ制御ユニット(コントローラ)である。このプリンタ制御ユニット201が本発明を実現する。
プリント動作を開始する場合、プリンタ制御ユニット201は、圧縮された各色ごとの画像データを伸長する。また、プリンタ2は、給紙カセット202或いは手差しトレイ203より記録紙を装置内に給送するための給紙動作を開始する。こうして給紙された記録紙は、搬送ユニット204に送られ、現像ユニット205、206、207、208を順次通過するように搬送される。記録紙の搬送と同期するように、プリンタ制御ユニット201で伸長された各色毎の画像データは、所定の画像変換処理が行われた後、レーザスキャナユニット209に送られる。
レーザスキャナユニット209は、半導体レーザを駆動するためのユニットである。このユニットは、入力された画像データに応じて半導体レーザから発射されるレーザ光のON/OFFを切り替える。レーザスキャナユニット209に送られた画像データに基づいて、各色に対応する現像ユニット205、206、207、208の感光ドラムがレーザスキャンされる。レーザスキャンされた各感光ドラムを対応する色のトナーで現像する。次に、現像されたトナー像は記録紙に転写される。その後、記録紙上に転写されたトナー像は定着ユニット210によって熱と圧力を加えることで定着される。その結果、搬送ユニット204によって搬送される記録紙上に各色のカラー画像が現像され、排紙トレイ211に排出される。
このように本実施形態に係るプリンタ2は、各色ごとに独立して現像を行う構成をとる。このような構成は、1つの感光ドラムと1つのレーザスキャナユニットから構成され、1色ずつ感光ドラムにトナー像を形成し、形成したトナー像を紙または中間転写体に転写する処理を必要色分繰り返すタイプのプリンタに比べて、高速にプリント画像を得ることができるという利点を有している。
なお、以下の説明では、上記した搬送ユニット204、現像ユニット205、206、207、208、レーザスキャナユニット209、定着ユニット210を含む機構部を、プリンタエンジン(エンジン部)と総称することにする。
図1は、上記した構成のプリンタ2におけるプリンタ制御ユニット201の詳細構成を表すブロック図である。
同図において、102がCPUである。CPU102はROM104に格納された制御プログラムを実行し、プリンタ2全体の制御を行う。とりわけ、このCPU102は、プリンタエンジンとのコマンド・ステータスのやり取りを、一定の間隔で常に行い、プリンタエンジンの状態を把握すると共に、プリント命令等を送り、プリンタエンジンとのやり取りを行っている。
103はRAMである。RAM103はホストコンピュータ117から送られてきた、圧縮された画像データを蓄えておく領域や、ワークメモリとして、CPU102が各種制御を実行する際に必要な作業領域を提供する。104はROMである。ROM104はCPU102によって実行される各種プログラム(ファームウェア)を格納している。
ホストインタフェース(HOST I/F)115は、外部装置であるホストコンピュータ117との通信を行うためのインタフェースである。具体的には、インタフェースケーブルを通じて、ホストコンピュータ117との制御信号の送受信および、圧縮された画像データの受信等を行う。圧縮された画像データを受信する際には、メモリ制御部105と連動して、DMA制御により、受信データをRAM103に格納する。
CPUインタフェース(CPU I/F)116は、CPU102とホストインタフェース115やメモリ制御部105との接続を司るインタフェースで、不図示の制御レジスタ、データレジスタへのアクセス制御を行う。
メモリ制御部105は、ROM104、RAM103へのアクセス制御を行うとともに、各ブロック間のデータのDMA転送や調停を制御するブロックである。
伸長部106,107,108,109はそれぞれ、後述のエンジンインタフェースから出力されるリクエストに応答して、メモリ制御部105の調停に従い、RAM103に格納されたY、M、C、Kの圧縮された画像データを受け取って伸長処理を実行する。そして、各伸長部は伸長した画像データをエンジンインタフェース(エンジンI/F)110、111、112、113に出力する。
エンジンインタフェース110、111、112、113はそれぞれ、入力された同期信号(副走査同期信号、主走査同期信号)により、副走査イネーブル信号と主走査イネーブル信号を生成し、その生成されたイネーブル信号に応じて、対応する伸長部に画像データのリクエストを行う。そして、伸長部から入力された画像データを、出力階調に応じたビデオデータに変換(出力階調に応じて、1ピクセルが1ビット、2ビット、4ビット等に変換される)し、転送クロック(CLK)に応じてプリンタエンジン(記録部)114に転送する。
本実施形態におけるプリンタ制御ユニット201の構成は概ね上記のとおりである。なお、図示のように破線101で囲まれたホストインタフェース115、CPUインタフェース116、メモリ制御部105、伸長部106〜109、エンジンインタフェース110〜113は、特定用途向け集積回路(ASIC)で構成されているものとする。
続いて、伸長部106〜109の詳細な構成について説明する。なお、伸長部106〜109はそれぞれ同様の構成を有するので、ここでは代表的に伸長部106についてのみ説明し、伸長部107〜109については説明を省略する。
図3は、伸長部106の詳細構成を示すブロック図である。図示のように、伸長部106は破線で囲まれた領域である。伸長部106は、メモリ制御部105との通信を行うメモリインタフェース(メモリI/F)303、圧縮画像データの伸長を行う伸長ユニット302、伸長された画像データを一時記憶するバッファユニット304、バッファユニット304に記憶されているデータ量を検知する検知ユニット305を含む構成である。
ここで、伸長ユニット302は好適にはダイナミックリコンフィギュラブルロジックを含んで構成される。ダイナミックリコンフィギュラブルロジック、またはダイナミックリコンフィギュラブルプロセッサと称されるものは動的再構成(再構築)可能な論理装置である。これらは、機能分けされた専用回路ではなく、あらかじめ用意した複数の必要な回路の接続構成と動作設定をソフトウェアによって切り替えることで、専用回路と同等の機能を実現するものである。また、動作中にもそうした切り替えを可能とする特徴をも有するものがある。
一般的に、ダイナミックリコンフィギュラブルロジックは、チップ(論理装置)内に必要な回路を部分的にユニット化したハードウエア要素を予め複数準備する。そして、ユニットの選択や接続順序、動作設定といったパラメータをソフトウェアによって動作中に瞬時に切り替えることにより、処理内容に応じて専用回路をもつチップのように振舞うものである。
こうした思想に基づく技術は、FPGAなどに代表されるように従来から存在しているが、ダイナミックリコンフィギュラブルロジックは、集積度の向上や動的な切り替えが実現できる高速性において、FPGAよりも優れている。
FPGAを構成するコンポーネントはゲートアレイであるため、実行できる処理も予め有する論理ゲート相当の機能となる。これに対してリコンフィギュラブルロジックを構成するユニットは小規模なプロセッサ相当か、プロセッサデータパス内の機能ブロック相当であるのが一般的となっている。そのため、当然ながらFPGAに比べてリコンフィギュラブルロジックの方が、高度な処理を実現可能である。
なお、本発明を説明するためのいくつかの実施形態では、ダイナミックリコンフィギュラブル技術を採用しているが、FPGAであっても類似の機能を実現可能である。
こうしたダイナミックリコンフィギュラブルロジックを用いて、伸長ユニット302には、図示のように速度重視の高速伸長回路302aと消費電力重視の低速伸長回路302bのいずれかとして動作する構成をもたせ、バッファユニット304に蓄えられているデータ量に応じて、動的に伸長ユニット302を再構成する。即ち、伸長ユニットが高速伸長回路として動作する環境と、低速伸長回路として動作する環境とを1つの論理装置によって実現する。
高速伸長回路302aは、例えば、伸長に時間がかかる圧縮画像データが連続した場合であってもその伸長速度がプリンタエンジン114への画像データの供給速度よりも速くなるような高速な動作クロックを使用することで高速な伸長処理を実現する。あるいは、圧縮画像データを伸長する伸長回路をダイナミックリコンフィギュラブルロジック内に複数構成し、これらを用いた並列処理を行わせることで高速な伸長処理を実現するようにしてもよい。
一方の低速伸長回路302bは、例えば、高速伸長回路302aに比べ低速な動作クロックを使用するもので、これにより伸長速度の点では不利であるものの、低電力消費を実現することができる。
次に、この伸長部106の動作概要を説明する。
プリント動作が開始すると、メモリインタフェース303は、メモリ制御部105に圧縮画像データを要求する。圧縮画像データを要求されたメモリ制御部105は、RAM103に格納されている圧縮画像データを読み出し、メモリインタフェース303に転送する。
メモリインタフェース303は、転送されてきた圧縮画像データを、伸長ユニット302の伸長速度に応じて伸長ユニット302に出力する。
伸長ユニット302は、受け取った圧縮画像データを伸長してバッファユニット304に出力するが、このとき、検知ユニット305は常時バッファユニット304に蓄積されているデータ量を検知している。伸長ユニット302は、このバッファユニット304に蓄積されているデータ量に応じて、高速伸長回路302aまたは低速伸長回路302bとして論理装置の論理構成を切り替えるかを適宜判断し、必要に応じてこの伸長ユニット302を切り替えながら圧縮画像データを伸長していく。そしてバッファユニット304は、格納されている画像データを、エンジンインタフェース110から出力される画像の同期信号に応じて、エンジンインタフェース110に出力する。
図4は、本実施形態に係るプリンタ動作時におけるプリンタ制御ユニットの制御処理を示すフローチャートである。このフローチャートに対応するプログラムはROM104に格納された制御プログラムに含まれ、RAM103にロードされた後、CPU102によって実行される。
まず、ホストコンピュータ117より、圧縮された画像データがホストインタフェース115を介して入力される(ステップS401)。その入力された圧縮画像データはRAM103に転送される(ステップS402)。ステップS403では、1ページ分の各プレーン(色成分)の圧縮画像データ(YMCKそれぞれの圧縮画像データ)がRAM103に転送されたかどうかを判定し、1ページ分の転送が完了するまでステップS402を繰り返す。そして、この1ページ分の転送が完了した時点で次のステップS404に進む。なお、1ページ分のRAM103への転送が完了する前に画像データがRAM103の容量に達した場合にも、プリントしながらホストコンピュータ117からのデータ転送が並列して行なわれるよう、処理はステップS404に進む。
ステップS404で、プリントが開始される。プリントが開始されると、ステップS405で、RAM103から圧縮画像データの読み出しが行なわれる。
次のステップS406で、圧縮画像データの伸長が行なわれる。伸長ユニット302はデフォルトとして例えば論理装置に低速伸長回路302bが構成されている。また、圧縮画像データの伸長処理は、エンジンインタフェース110の画像データ要求のための同期信号発生よりも早いタイミングでスタートする。このため、バッファユニット304に画像データがある程度蓄積された状態でプリンタエンジン114への出力が開始される。
プリンタエンジン114への出力が開始されると、ステップS407で、検知ユニット305が、バッファユニット304の蓄積データ量Rを検知する。次に、ステップS408で、検知したバッファユニット304に蓄積されているデータ量Rが所定のしきい値T以上あるかどうかを判断する。ここで、バッファユニット304の蓄積データ量Rがしきい値T以上である場合にはステップS409に進む。ステップS409では、伸長ユニット302が低速伸長回路302bに構成されているどうかの判断を行う。ここで、伸長ユニット302が低速伸長回路302bとして構成されている場合にはそのままステップS413に進む。しかし、伸長ユニット302が高速伸長回路302aとして構成されている場合には、ステップS410で伸長ユニット302を低速伸長回路302bに再構成した後に、ステップS413に進む。これは、バッファユニット304の蓄積データ量Rがしきい値T以上であり、プリンタエンジン114に転送すべきデータが足りなくなるという事態は生じないと判断し、低速であっても電力消費の点で有利な低速伸長回路302bを選択したものである。
一方、ステップS408において、バッファユニット304の蓄積データ量Rがしきい値T未満であった場合には、ステップS411に進み、伸長ユニット302が高速伸長回路302として構成されているどうかの判断を行う。ここで、伸長ユニット302が高速伸長回路302として構成されている場合にはそのままステップS413に進む。しかし、伸長ユニット302が低速伸長回路302として構成されている場合には、ステップS412で伸長ユニット302を高速伸長回路302として再構成した後に、ステップS413に進む。これは、バッファユニット304の蓄積データ量Rがしきい値T未満であり、プリンタエンジン114に転送すべきデータが足りなくなる可能性があるため、高速伸長回路302aを選択したものである。
すなわち、圧縮データの伸長処理に時間がかかり、プリンタエンジン114に転送すべきデータが足りなくなることによって、プリント速度は低下してしまう。バッファユニット304に一定量以上の伸長されたデータが存在していれば、こうした速度低下が発生する可能性は低いため低速伸長回路302bとして論理装置、即ち伸長ユニットを動作させる。
しかし、バッファユニット304に蓄積されている伸長されたデータが、一定量を下回るケースにおいては、プリント速度が低下する可能性が高くなる。そのため、圧縮画像データの伸長処理が低速伸長回路302bによって実行されている場合は、論理装置を高速伸長回路302aとして実行するように即座に切り替えることで圧縮画像データの伸長処理の速度を高める。これにより、バッファユニット304に蓄積される伸長された画像データを一定量以上蓄積するように制御する。こうして、プリント速度が低下する危険性を回避することができる。
伸長ユニットにダイナミックリコンフィギュラブルロジックを用いることで、1ページ分の画像データの伸長処理の途中であっても、これらのユニット切り替えを1クロックから数クロックほどのごく短時間で実行することができる。
ステップS413では、1ページ分の画像データの伸長を終えたか否かの判断を行い、終了していなければS405に戻って処理を繰り返す。こうして、1ページ分の画像データの処理を終了すると、本処理を終了する。
このように、本実施形態では、消費電力は大きいものの高速な伸長を行うことのできる高速伸長回路302aと、伸長速度は低速であるものの消費電力の点で有利な低速伸長回路302bとを、ダイナミックリコンフィギュラブルロジックの動的な再構成機能を用いて、バッファユニット304に蓄積されている画像データの量に応じて切り換えるようにした。このようなダイナミックリコンフィギュラブルロジックによる構成は、高速なプリント動作が可能である。また、このような構成は回路規模を増やすことなく実現できる。また、伸長した画像データを一時記憶するバッファメモリの容量を不必要に増大させることなく、最適化することができる。これらにより低コスト化を実現することができる。加えて、バッファユニット304における蓄積データ量に応じて消費電力重視の伸長ユニットが使用されるため、低消費電力を実現することもできる。
図5は、図3に示した伸長部の変形例を示している。図3における検知ユニット305は、バッファユニット304の蓄積データ量を検知するものであったが、図5に示した検知ユニット505は、バッファユニット304の蓄積データ量の検知に加え、メモリインタフェース303から次に伸長される圧縮画像データを入力してこの圧縮画像データの伸長に要する時間を予測するように構成される。
この構成をして、上記したステップS407では、バッファユニット304の蓄積データ量Rを検知するとともに、次に伸長される圧縮画像データの伸長に要する時間を予測する。そして、ステップS408で、蓄積データ量Rが所定値未満で、かつ、次の圧縮画像データの伸長に要する時間が所定時間を超えると見込まれる場合には、高速伸長回路302aとして論理装置を構成するようにする。このように、次に伸長される圧縮画像データをも参酌すれば、より高精度に低速伸長回路と高速伸長回路との選択を行うことができる。
なお、上述した実施形態では、バッファユニットの蓄積データ量を検知し、蓄積データ量がしきい値よりも多いか少ないかで、伸長ユニットの再構成を行うとしているが、蓄積データ量ではなく、バッファユニットの空き容量を検知する構成であっても、同様の制御が可能である。
また、検知ユニットはバッファユニット304の蓄積データ量Rがしきい値Tよりも多いか少ないかにより、伸長ユニットの再構成を随時行うものとしているが、しきい値を複数レベルで設けるようにしてもよい。
例えば、バッファユニット304の蓄積データ量Rがしきい値T1(ここでは、説明の便宜上、上述したしきい値TをT1とする)未満となった場合、伸長ユニットの論理装置が低速伸長回路302bとして構成されていると判断すると、動的に高速伸長回路302aとして構成することになる。これにより、画像データの伸長速度が向上して、バッファユニット304に蓄積される伸長されたデータ量も増加し、蓄積データ量Rがしきい値T1以上となるが、この時点ですぐ低速伸長回路302bに再構成すると、圧縮データのコードやプリンタ速度によっては、直後に再び蓄積データ量Rがしきい値T1を下回る可能性が高い。
そこで、しきい値T1よりも高いレベルに第2のしきい値T2(T1<T2)を設けた構成を採用する。この場合、しきい値T1未満となって論理装置を高速伸長回路302aとして構成したことにより、伸長能力が向上し、蓄積データ量Rがしきい値T1以上となる。しかし、この段階では論理装置を低速伸長回路302bとして再構成しない。その後、さらに蓄積データ量が増加してしきい値T2に達した時点で、高速伸長回路302aから低速伸長回路302bに切り替えるようにする。
こうした構成を採用することにより、圧縮データによって回路切り替えが頻発するケースを防止することができる。これにより、ユニット切り替え自体の消費電力を抑制することができる。
当然ながら、蓄積データ量ではなく、バッファユニット304の空き容量を検知する構成の場合、空き容量におけるT1とT2の関係は逆(T1>T2)となる。
(第2の実施形態)
上述の第1の実施形態におけるプリンタ制御ユニット201は、図1に示したように、Y、M、C、Kの各色ごとに伸長部106〜109を備える構成であった。
ところが近年は、プリンタの小型化に対応するために、伸長部は1つだけとし、これに全色の画像データの伸長処理を行わせるものが出現している。この場合、各色ごとの伸長処理は時分割で行われることになる。
しかし、1つの伸長部に各色ごとの伸長処理を時分割で行わせる構成をとると、伸長に時間のかかる圧縮コードが特定の色に集中した場合には、その特定の色のみの出力が間に合わず(いわゆるオーバーランの発生)、所望の画像を出力できない場合があるという問題を生じる。オーバーランが発生した場合、プリンタは画像データの解像度を低下させるか、プリント速度を低下させることで画像の出力を継続しようと動作するが、いずれにしても所望の出力物が得られない、または所望の出力スループットが得られない、という問題が残る。
本実施形態は、このような問題を解決するものである。
本実施形態におけるプリンタの構成は図2に示した構成と同様であるので、本実施形態ではこの図2を援用する。また、本実施形態におけるプリンタ制御ユニット201の構成は概ね図1の構成と同様である。しかし、本実施形態では、伸長部106〜109に代えて、図6に示すような1つの伸長部600が使用される。これ以外の同じ機能の構成要素については同一の参照番号を使用して説明する。
図6において、601,602,603,604はそれぞれ、Y、M、C、Kの圧縮画像データをメモリ制御部105より受け取るためのメモリインタフェース(メモリI/F)である。各メモリI/Fは、担当する色の圧縮画像データをメモリ制御部105に対して要求する。
要求を受けたメモリ制御部105は、要求された色の圧縮画像データを、RAM103から取り出して、要求のあったメモリI/Fに送信する。
605は伸長すべき圧縮画像データを選択するセレクタユニット、606はセレクタユニット605によって選択された圧縮画像データの伸長を行う伸長ユニット、307は各色ごとに用意されたバッファユニット609〜612の中から出力先とするバッファユニットを選択するセレクタユニットである。
ここで、伸長ユニット606は、ダイナミックリコンフィギュラブルロジックで構成されている。ダイナミックリコンフィギュラブルロジックの特徴については第1の実施形態において説明したので、ここでの説明は割愛する。なお、この伸長ユニット606は、各色特有の圧縮方式や各種パラメータの違いによる伸長方式の違いに応じた伸長ユニットの変更を可能にしている。
また、検知ユニット608は、バッファユニット609〜612にそれぞれ蓄積されている伸長された画像データの量を検知する。それと共に、セレクタユニット605、607に対する選択信号、及び伸長ユニット306の構成を変更させるための信号を管理している。
図7は、本実施形態に係るプリンタ動作時におけるプリンタ制御ユニットの制御処理を示すフローチャートである。このフローチャートに対応するプログラムはROM104に格納された制御プログラムに含まれ、RAM103にロードされた後、CPU102によって実行される。
まず、ホストコンピュータ117より、圧縮された画像データがホストインタフェース115を介して入力される(ステップS701)。その入力された圧縮画像データはRAM103に転送される(ステップS702)。ステップS703では、1ページ分の各プレーン(色成分)の圧縮画像データ(YMCKそれぞれの圧縮画像データ)がRAM103に転送されたかどうかを判定し、1ページ分の転送が完了するまでステップS702を繰り返す。そして、この1ページ分の転送が完了した時点で次のステップS704に進む。なお、1ページ分のRAM103への転送が完了する前に画像データがRAM103の容量に達した場合にも、プリントしながらホストコンピュータ117からのデータ転送が並列して行なわれるよう、処理はステップS704に進む。
ステップS704で、プリントが開始される。プリントが開始されると、ステップS705で、RAM103から圧縮画像データの読み出しが行なわれる。
次のステップS706で、圧縮画像データの伸長が、各色ごとに時分割で行なわれる。このとき、圧縮画像データの伸長処理は、エンジンインタフェース110の画像データ要求のための同期信号発生よりも早いタイミングでスタートする。このため、バッファユニット609〜612に画像データがある程度蓄積された状態でプリンタエンジン114への出力が開始される。
ここで、最初に伸長を行なう時分割の時間の割合は、予め定められている。
プリンタエンジン114への出力が開始されると、ステップS707で、検知ユニット608が、バッファユニット309〜312それぞれの蓄積データ量Ry、Rm、Rc、Rkを検知する。次に、ステップS708で、1ページ分の伸長処理が完了した色があるか否かを判定する。ここで1ページ分の伸長処理が完了した色がある場合には、ステップS711に進み、1ページ分の伸長処理が完了した色がまだない場合にはステップS709に進む。
1ページ分の伸長処理が完了した色がまだない場合に実行されるステップS709では、上記ステップS707で検知ユニット608により検出されたバッファユニット309〜312の蓄積データ量Ry、Rm、Rc、Rkが全て、所定のしきい値T以上であるか否かを判断する。ここで、バッファユニット309〜312の蓄積データ量Ry、Rm、Rc、Rkが全て、所定のしきい値T以上である場合には、各色とも順調に伸長処理が行われていると判断して、ステップS705に戻って次の圧縮画像データについて処理を繰り返す。
一方、ステップS709において、バッファユニット309〜312の蓄積データ量Ry、Rm、Rc、Rkのうちのいずれかが所定のしきい値Tに満たないと判断された場合には、ステップS710に進む。
このステップS710ではまず、セレクタユニット605、607及び伸長ユニット606に割り込み処理を実行する。次いで、セレクタユニット605に、蓄積データ量がTに満たない色の圧縮画像データを伸長すべきデータとして選択させる。その後、伸長ユニット306を、その色の圧縮画像データを伸長するための回路に変更(再構成)し、時分割処理の途中に挿入する。
このような割り込み処理によって伸長された画像データは、セレクタユニット607を介して該当する色のバッファユニットに出力される。このとき、検知ユニット608によって検知されるそのバッファユニットのデータ量が監視されており、そのデータ量がしきい値Tを超えた時点で、処理はステップS705に戻り、通常動作となる。
ステップS708において1ページ分の伸長処理が完了した色があると判定された場合はステップS711に進む。このステップS711では、全色について1ページ分の伸長処理が終了したか否かを判断する。ここで、全色終了していなければ、ステップS712に移行する。ステップS312では、ステップS706における時分割処理の時間配分が、1ページ分の伸長処理が終了した色の伸長処理が除かれる時間配分となるよう、伸長ユニット306を再構成する。一方、S711で全色について1ページ分の伸長処理が終了したと判断された場合には、本処理を終了する。
このように、本実施形態では、各色ごとの伸長処理を時分割で行う伸長ユニット306が、ダイナミックリコンフィギュラブルロジックで構成される。そして、各色ごとのバッファに蓄積されている伸長された画像データのデータ量を監視して、途中でいずれかのバッファのデータ量が所定のしきい値に満たない状態になったときは、そのバッファのデータ量がそのしきい値を超えるまで、そのバッファに係る色の圧縮画像データを優先的に伸長するための回路に再構成される。
さらには、全色について1ページ分の伸長処理が終了するまでの間は、いずれかの色について1ページ分の伸長処理が終了する度に、時分割処理の時間配分がその色の伸長処理が除かれる時間配分となるよう、伸長ユニット306が再構成される。
このような処理により、特定色のオーバーランが防止され、装置のパフォーマンス低下を防止することができる。
以上説明した第2の実施形態では、バッファに蓄積されたデータ量を検知しているが、バッファの空き容量を検知する構成でも同様の制御が可能である。
なお、以上2つの実施形態では、検知ユニットで検知されたデータ量に応じて、伸長ユニットとしての論理回路を動的に切り替える構成として説明した。しかしながら、検知ユニットで検知されたデータ量に応じて、伸長ユニットに対して切り替えのための制御信号を発行する制御ユニットを別に設ける構成も採用可能である。
(その他の実施形態)
上述の実施形態では、圧縮された画像データを受信して、これを伸長しながら画像形成を行う画像形成装置を前提に、本発明を説明した。しかし本発明は、圧縮した画像データではなく、特定の制御コードで構成された画像データを受信して、これを展開しながら画像形成を行う画像形成装置に対しても同様に適用することが可能である。
これについては、上述の実施形態において、「圧縮された画像データ」を「特定の制御コードで構成された画像データ」に、「伸長」を「展開」にそれぞれ置き換えれば、当業者には容易に理解できるであろう。
第1の実施形態におけるプリンタ制御ユニットの構成を示すブロック図である。 第1の実施形態に係るプリンタの構成を示す図である。 第1の実施形態に係る伸長部の構成を示すブロック図である。 第1の実施形態に係るプリンタ動作時におけるプリンタ制御ユニットの制御処理を示すフローチャートである。 第1の実施形態に係る伸長部の構成の変形例を示すブロック図である。 第2の実施形態における伸長部の構成を示すブロック図である。 第2の実施形態に係るプリンタ動作時におけるプリンタ制御ユニットの制御処理を示すフローチャートである。

Claims (3)

  1. 圧縮された画像データを伸長してプリンタエンジンに供給するための画像処理装置であって、
    データ伸長を高速に実行可能な高速伸長回路、および、当該高速伸長回路に比べ伸長速度低速であるが消費電力量が小さい低速伸長回路を動的に再構成可能なダイナミックリコンフィギュラブルロジックにより構成され、前記圧縮された画像データを伸長する伸長ユニットと、
    前記プリンタエンジンへのデータ転送速度と前記伸長ユニットによるデータ伸長速度との差を吸収するため、前記伸長ユニットで伸長された画像データを前記プリンタエンジンに供給する前に一時的に蓄積するバッファユニットと、
    前記バッファユニットに蓄積されているデータ量を検知する検知ユニットと、
    次に行う画像データの伸長に要する時間を予測する予測ユニットと、
    前記検知ユニットによって検知されたデータ量が第1のしきい値未満であり、かつ、前記予測ユニットにより予測された次に行う画像データの伸長に要する時間が所定時間以上である場合は、前記伸長ユニットを前記高速伸長回路として構成させ、それ以外の場合は、前記伸長ユニットを前記低速伸長回路として構成させるよう前記伸長ユニットを制御する制御ユニットと、
    を有することを特徴とする画像処理装置。
  2. 前記制御ユニットは、前記伸長ユニットを前記高速伸長回路として構成させたときは、前記検知ユニットによって検知されたデータ量が前記第1のしきい値より高い第2のしきい値以上になるまで前記伸長ユニットを前記低速伸長回路として再構成させないことを特徴とする請求項1に記載の画像処理装置。
  3. データ伸長を高速に実行可能な高速伸長回路、および、当該高速伸長回路に比べ伸長速度低速であるが消費電力量が小さい低速伸長回路を動的に再構成可能なダイナミックリコンフィギュラブルロジックにより構成され、圧縮された画像データを伸長する伸長ユニットと、
    プリンタエンジンへのデータ転送速度と前記伸長ユニットによるデータ伸長速度との差を吸収するため、前記伸長ユニットで伸長された画像データを前記プリンタエンジンに供給する前に一時的に蓄積するバッファユニットとを有する画像処理装置の制御方法であって、
    検知ユニットが、前記バッファユニットに蓄積されているデータ量を検知する検知ステップと、
    予測ユニットが、次に行う画像データの伸長に要する時間を予測する予測ステップと、
    制御ユニットが、前記検知ステップで検知されたデータ量が第1のしきい値未満であり、かつ、前記予測ステップで予測された次に行う画像データの伸長に要する時間が所定時間以上である場合は、前記伸長ユニットを前記高速伸長回路として構成させ、それ以外の場合は、前記伸長ユニットを前記低速伸長回路として構成させるよう前記伸長ユニットを制御する制御ステップと、
    を有することを特徴とする画像処理装置の制御方法。
JP2004231432A 2004-08-06 2004-08-06 画像処理装置および画像処理装置の制御方法 Expired - Fee Related JP4328689B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2004231432A JP4328689B2 (ja) 2004-08-06 2004-08-06 画像処理装置および画像処理装置の制御方法
US11/197,997 US7679790B2 (en) 2004-08-06 2005-08-05 Image processing apparatus and its control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004231432A JP4328689B2 (ja) 2004-08-06 2004-08-06 画像処理装置および画像処理装置の制御方法

Publications (2)

Publication Number Publication Date
JP2006050444A JP2006050444A (ja) 2006-02-16
JP4328689B2 true JP4328689B2 (ja) 2009-09-09

Family

ID=35757088

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004231432A Expired - Fee Related JP4328689B2 (ja) 2004-08-06 2004-08-06 画像処理装置および画像処理装置の制御方法

Country Status (2)

Country Link
US (1) US7679790B2 (ja)
JP (1) JP4328689B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4921218B2 (ja) * 2007-03-27 2012-04-25 キヤノン株式会社 画像形成装置及びその制御方法
JP2009060444A (ja) * 2007-08-31 2009-03-19 Canon Inc 画像復号装置、画像復号方法及び記録装置
JP5777670B2 (ja) * 2013-08-19 2015-09-09 京セラドキュメントソリューションズ株式会社 画像形成システムおよび省電力印刷方法
JP2016111633A (ja) * 2014-12-09 2016-06-20 キヤノン株式会社 回路情報に従って論理回路を構成可能な回路を持つデバイスと、複数の制御手段とを有する情報処理システム
US9792044B2 (en) * 2016-02-12 2017-10-17 Oracle International Corporation Decompression history buffer read/write pipelines

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5479587A (en) * 1992-09-03 1995-12-26 Hewlett-Packard Company Page printer having adaptive data compression for memory minimization
JPH09261429A (ja) * 1996-03-25 1997-10-03 Ricoh Co Ltd 画像形成装置
US5982937A (en) * 1996-12-24 1999-11-09 Electronics For Imaging, Inc. Apparatus and method for hybrid compression of raster data
US6009201A (en) * 1997-06-30 1999-12-28 Intel Corporation Efficient table-lookup based visually-lossless image compression scheme
JP2000242249A (ja) * 1999-02-22 2000-09-08 Fuji Xerox Co Ltd 画像処理装置
JP2001027986A (ja) 1999-05-10 2001-01-30 Canon Inc データ処理装置及び処理部選択方法
JP3887134B2 (ja) 1999-12-27 2007-02-28 株式会社リコー 画像処理装置
US7167259B2 (en) * 2000-05-16 2007-01-23 International Business Machines Corporation System and method for merging line work objects using tokenization and selective compression
JP3862143B2 (ja) 2001-01-19 2006-12-27 株式会社リコー 復号化装置及びその制御方法、プログラム

Also Published As

Publication number Publication date
JP2006050444A (ja) 2006-02-16
US20060028694A1 (en) 2006-02-09
US7679790B2 (en) 2010-03-16

Similar Documents

Publication Publication Date Title
JP5287297B2 (ja) データ処理回路、省電力方法、省電力プログラム、記録媒体及び機器
US20050275882A1 (en) Information processing apparatus and its control method
JP2003216361A (ja) 印刷システム及び印刷装置
US7679790B2 (en) Image processing apparatus and its control method
JP6351315B2 (ja) 画像処理装置、その制御方法及びプログラム
JP4450039B2 (ja) 画像形成システムおよびデータ処理装置
JP4420207B2 (ja) ホストベースプリンタ、ホスト装置、印刷制御方法
JP5446047B2 (ja) 印刷制御装置、画像形成システムおよびプログラム
JPH10129050A (ja) 印刷処理装置
JP4175974B2 (ja) 画像データ転送制御装置
JP2008044307A (ja) プリンタ制御装置
JP2002103750A (ja) プリンタシステム
JP2009088945A (ja) 画像形成システム、及び画像形成プログラム
US6618164B1 (en) Network printer and network printing method
JPH11179975A (ja) カラープリンタ制御装置
JP2004007485A (ja) 画像再生装置
JP6033383B2 (ja) 情報処理装置、その制御方法、および制御プログラム
JP3670918B2 (ja) 画像処理装置
JP2001047677A (ja) プリンタ制御装置
JP2007283735A (ja) プリンタ制御装置
JP5777670B2 (ja) 画像形成システムおよび省電力印刷方法
JP2004229066A (ja) 画像形成装置
JP2003216364A (ja) 情報処理装置、その制御方法、プログラム及び記憶媒体
JP2002052763A (ja) 印刷装置
JP2002113925A (ja) プリンタ装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070328

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090223

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090316

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090513

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: 20090605

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090615

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120619

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120619

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130619

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees