(57)【要約】【課題】出力装置に出力データを確実に供給することができる、コストの増大が抑制されたデータ供給装置を提供する。【解決手段】複数段階の圧縮処理を経て圧縮された圧縮データを受け取る受取部４１０と、圧縮データについて、圧縮処理の少なくとも１段階分を残して伸張することによって伸張データを生成する第１の伸張部４３０と、第１の伸張部４３０で生成された伸張データが格納される、１ページ分のデータ量が格納可能なページバッファ４４０と、ページバッファ４４０に格納されている伸張データを取り込んで、第１の伸張部４３０で残された段階分を伸張することによって出力データを生成する第２の伸張部４５０と、第２の伸張部４５０で生成された出力データを出力装置に所定速度で供給するプリンタ出力部４７０とを備えた。【選択図】        図４
2006186556.tif 000002
【特許請求の範囲】
【請求項１】
記録媒体上に出力像を出力する出力装置に、該出力像を表した出力データを所定速度で供給するデータ供給装置において、
複数段階の圧縮処理を経て圧縮された圧縮データを取得する取得部と、
前記圧縮データについて、圧縮処理の少なくとも１段階分を残して伸張することによって伸張データを生成する第１の伸張部と、
前記第１の伸張部で生成された伸張データが格納される、前記記録媒体１つ分以上のデータ量が格納可能な格納部と、
前記格納部に格納されている伸張データを取り込んで、前記第１の伸張部で残された段階分を伸張することによって前記出力データを生成する第２の伸張部と、
前記第２の伸張部で生成された出力データを前記出力装置に前記所定速度で供給する供給部とを備えたことを特徴とするデータ供給装置。
【請求項２】
前記第１の伸張部が、前記圧縮データについて、複数段階の圧縮処理のうち伸張に要する時間が短い方から１段階分以上を残して伸張するものであることを特徴とする請求項１記載のデータ供給装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、記録媒体上に出力像を出力する出力装置に、該出力像を表した出力データを所定速度で供給するデータ供給装置に関する。
【背景技術】
【０００２】
従来、例えばプリンタ等といった出力装置に、その出力装置とは別の装置から出力データを伝送するに当たっては、伝送の前に出力データを圧縮して伝送量の低減化等を図ったうえで、その圧縮された出力データを出力装置の直近まで伝送し、その圧縮された出力データを伸張して出力装置に引き渡すという技術が広く採用されている。
【０００３】
例えば、プリンタ等といった出力装置に供給する出力データを、自然画（ＣＴ；Ｃｏｎｔｉｎｕｏｕｓ  Ｔｏｎｅ）データと、文字や線画等（ＬＷ；Ｌｉｎｅ  Ｗｏｒｋ）のデータとに分け、各データについてそのデータに適した圧縮処理を施すことにより、出力装置への伝送量の低減化等を図るという技術が開示されている（例えば、特許文献１参照。）。
【０００４】
また、出力データに、所定のブロック単位ごとに圧縮処理を施す際に、圧縮後の処理に対する便を図るため、このブロック単位ごとの圧縮後のデータサイズが常に一定のサイズとなるようにブロック単位ごとの圧縮率を調節するという技術も開示されている（例えば、特許文献２参照。）。
【０００５】
ここで、データ圧縮技術を適用した１つのデータ移送システムを紹介する。
【０００６】
図１は、データ圧縮技術が適用された、プリンタへ出力データを移送するデータ移送システムの一例を示す図である。
【０００７】
この図１には、ＤＦＥ（Ｄｉｇｉｔａｌ  Ｆｒｏｎｔ  Ｅｎｄ  ｐｒｏｃｅｓｓｏｒ）１００と、ＢＥＰ（Ｂａｃｋ  Ｅｎｄ  Ｐｒｏｃｅｓｓｏｒ）２００とからなるデータ移送システム１０が示されており、さらにこのデータ移送システム１０における出力データの移送先であるプリンタ２０も示されている。ＤＦＥ１００とＢＥＰ２００との間は、ＳＣＳＩに則った汎用インタフェースケーブル１５０で接続され、ＢＥＰ２００とプリンタ２０との間は、専用インタフェースケーブル２６０で接続されている。
【０００８】
ＤＦＥ１００では、ページ記述言語で記述された出力データにＲＩＰ（Ｒａｓｔｅｒ  Ｉｍａｇｅ  Ｐｒｏｃｅｓｓｉｎｇ）処理が施されて、ビットマップデータが生成される。さらに、ＤＦＥ１００では、このビットマップデータに圧縮処理が施されて圧縮データが生成される。この圧縮データが、汎用インタフェースケーブル１５０を経由してＤＦＥ１００からＢＥＰ２００に伝送される。
【０００９】
ＢＥＰ２００は、このデータ移送システム１０において、プリンタ２０が記録媒体上に出力する出力像を表わした出力データを、ＤＦＥ１００から伝送されてきた圧縮データを伸張することにより生成し、その出力データをプリンタ２０に供給するデータ供給装置の役割を果たすものである。即ち、このＢＥＰ２００では、圧縮データが伸張され、未圧縮のビットマップデータとほぼ同等なビットマップデータが生成される。そして、この生成されたビットマップデータがプリンタ２０に引き渡され、プリンタ２０で、このビットマップデータに基づいた画像が出力される。
【００１０】
ここで、上記のＢＥＰ２００の構成について説明する。
【００１１】
図２は、図１のＢＥＰを示すブロック図である。
【００１２】
図２に示すように、ＢＥＰ２００は、受取部２１０と、画像バッファ２２０と、伸張部２３０と、ラインバッファ２４０と、プリンタ出力部２５０とを備えている。
【００１３】
受取部２１０では、ＢＥＰ２００からＳＣＳＩに則って伝送されてくる上記の圧縮データが受け取られる。ここで、この圧縮データを伸張部２３０が所定のタイミングで取り込んで伸張することができるように、受取部２１０と伸張部２３０との間には、数ページ分の圧縮データが一時的に格納される画像バッファ２２０が設けられている。また、プリンタ出力部２５０では、伸張部２３０による伸張によって生成された、未圧縮のビットマップデータとほぼ同等なビットマップデータが、プリンタ２０の処理速度に応じた出力速度でプリンタ２０に向けて出力される。ここで、プリンタ２０では所定のタイミングで画像の出力が行なわれるので、プリンタ出力部２５０は、伸張部２３０による伸張によって順次に生成されてくるビットマップデータを、この所定のタイミングでプリンタ２０に渡す必要がある。そこで、伸張部２３０とプリンタ出力部２５０との間には、所定単位のビットマップデータが一時的に格納されるラインバッファ２４０が設けられている。
【特許文献１】特開平６−１１３１４５号公報
【特許文献２】ＵＳ６３３０３６３Ｂ１
【発明の開示】
【発明が解決しようとする課題】
【００１４】
上記の伸張部２３０は、プリンタ出力部２５０によってラインバッファ２４０からビットマップデータが読み出されると、このラインバッファ２４０を補填するために、画像バッファ２２０から所定のタイミングで圧縮データを取り込んで伸張してラインバッファ２４０に渡す。この結果、伸張部２３０は、平均的に、プリンタ出力部２５０の出力速度と同じ速度で、伸張後のビットマップデータをラインバッファ２４０に渡すこととなり、また、平均的に、上記の出力速度に例えば１／１０等といった圧縮率を乗じた速度で圧縮データを取り込むこととなる。さらに、受取部２１０は、伸張部２３０が画像バッファ２２０から圧縮データを読み出すと、その画像バッファ２２０を補填するために、ＤＦＥ１００から圧縮データを受け取る。つまり、受取部２１０は、伸張部２３０が圧縮データを取り込む平均速度と同じ平均速度で、圧縮データをＤＦＥ１００から受け取ることとなる。
【００１５】
ここで、伸張部２３０が圧縮データを取り込む平均速度（以降、取込速度と呼ぶ）については、伸張部２３０の性能上の速度の上限があり、受取部２１０が圧縮データを受け取る平均速度（以降、受取速度と呼ぶ）についても、ＳＣＳＩに則った速度の上限がある。
【００１６】
ところで、上記のＤＦＥ１００でビットマップデータを圧縮する際の圧縮率は、圧縮対象の画像データが表わす画像によって異なる。圧縮率の値が小さい、即ち圧縮の程度が高い圧縮データについては、伸張部２３０の伸張によって生成されるビットマップデータの量が多くなるので、結果的に、伸張部２３０の取込速度と受取部２１０の受取速度はともに下がり、伸張部２３０と受取部２１０は、両者ともに上記の上限に対して余裕を持って処理を行なうことができる。
【００１７】
例えば、圧縮率１／１０という圧縮の程度が高い圧縮データがＢＥＰ２００に送られ、伸張によって生成されたビットマップデータが、３００ＭＢｙｔｅ／ｓの処理速度で画像を出力するプリンタ２０に出力されるという例について検討する。ここで、伸張部２３０の、圧縮データの取り込みに対する速度の上限を１００ＭＢｙｔｅ／ｓ、受取部２１０の圧縮データの受け取りに対する速度の上限を８０ＭＢｙｔｅ／ｓとする。
【００１８】
この場合、プリンタ出力部２５０がラインバッファ２４０からビットマップデータを読み出してプリンタ２０に出力する速度、即ち出力速度は、プリンタ２０の処理速度と同じ３００ＭＢｙｔｅ／ｓとなる。また、伸張部２３０がラインバッファ２４０に伸張後のビットマップデータを渡すときの平均的な速度は、このプリンタ出力部２５０の出力速度と同じ３００ＭＢｙｔｅ／ｓとなり、結果的に、この伸張部２３０における上記の取込速度は、その出力速度に圧縮率を乗じた３０ＭＢｙｔｅ／ｓとなる。さらに、受取部２１０における上記の受取速度は、その取込速度と同じ３０ＭＢｙｔｅ／ｓとなる。従って、伸張部２３０と受取部２１０は、両者ともに上記の上限に対して余裕を持って処理を行なうことができる。
【００１９】
一方、圧縮の程度が低い圧縮データについては、伸張部２３０の伸張によって生成されるビットマップデータの量が少なく、伸張部２３０は、ラインバッファ２４０を十分に補填するために、より多くの圧縮データを取り込むこととなり、伸張部２３０における取込速度が結果的に上がることとなる。ところが、圧縮率が低すぎると、伸張部２３０の取込速度が上限の速度に達してもラインバッファ２４０を十分に補填できなくなり、プリンタ２０において、画像の途切れ等というような不具合が生じてしまう。
【００２０】
例えば、圧縮率１／２という圧縮の程度が低い圧縮データがＢＥＰ２００に送られ、伸張によって生成されたビットマップデータが、３００ＭＢｙｔｅ／ｓの処理速度で画像を出力するプリンタ２０に出力されるという例について検討する。ここで、上述の例と同様に、伸張部２３０の取込速度に対する上限を１００ＭＢｙｔｅ／ｓ、受取部２１０の受取速度に対する上限を８０ＭＢｙｔｅ／ｓとする。
【００２１】
この場合、まず上記の画像バッファ２２０が十分に大きな容量を有しているため、この画像バッファ２２０が圧縮データである程度満たされていれば、伸張部２３０は、最速では、受取部２１０における受取速度の上限（８０ＭＢｙｔｅ／ｓ）を超えて、上記の取込速度の上限（１００ＭＢｙｔｅ／ｓ）で圧縮データを取り込んで伸張することができる。しかし、伸張部２３０が、たとえこの速度の上限（１００ＭＢｙｔｅ／ｓ）で圧縮データを取り込んで伸張処理を行なったとしても、この伸張部２３０からは、２００Ｍｂｙｔｅ／ｓの速度でしかビットマップデータがラインバッファ２４０に向けて出力されなくなってしまう。このため、プリンタ出力部２５０は、２００Ｍｂｙｔｅ／ｓの速度でしかビットマップデータを出力できなくなり、上記のプリンタ２０の処理速度（３００Ｍｂｙｔｅ／ｓ）に間に合わなくなってしまう。
【００２２】
この問題を回避する方法として、十分に伸張処理の速度の速い高性能の伸張部を用意することが考えられる。しかしながら、この方法は、高性能の伸張部等といった特別な部品を要するので、データ供給装置であるＢＥＰ２００の製造コストの増大を招いてしまう。
【００２３】
本発明は、上記事情に鑑み、出力装置に出力データを確実に供給することができる、コストの増大が抑制されたデータ供給装置を提供することを目的とする。
【課題を解決するための手段】
【００２４】
上記目的を達成する本発明のデータ供給装置は、記録媒体上に出力像を出力する出力装置に、その出力像を表した出力データを所定速度で供給するデータ供給装置において、
複数段階の圧縮処理を経て圧縮された圧縮データを取得する取得部と、
上記圧縮データについて、圧縮処理の少なくとも１段階分を残して伸張することによって伸張データを生成する第１の伸張部と、
上記第１の伸張部で生成された伸張データが格納される、上記記録媒体１つ分以上のデータ量が格納可能な格納部と、
上記格納部に格納されている伸張データを取り込んで、上記第１の伸張部で残された段階分を伸張することによって上記出力データを生成する第２の伸張部と、
上記第２の伸張部で生成された出力データを上記出力装置に上記所定速度で供給する供給部とを備えたことを特徴とする。
【００２５】
例えば、上記取得部では圧縮の程度が低い圧縮データが取得される場合がある。その場合、仮に上記格納部への上記伸張データの格納が行なわれず、単に、上記第１の伸張部と上記第２の伸張部とで連続して伸張が行なわれたとすると、伸張後の出力データが、上記出力装置に、上記所定速度で供給されなくなってしまう可能性がある。しかし、本発明のデータ供給装置によれば、上記格納部が上記伸張データを、上記記録媒体の１つ分以上溜めておくことができるので、上記第２の伸張部は、そのように溜められた伸張データから、上記供給部が上記所定速度で供給するのに必要な量の伸張データを取り込んで、上記記録媒体の出力中に上記出力データを生成し続けることができる。また、本発明のデータ供給装置は、この出力データの確実な供給を実現するために、例えば高速な伸張処理を実行できる高性能の部品等といった、製造時のコストの増大を招く高価な部品は不要であり、高々上記記録媒体１つ分以上のデータ量が格納可能な格納部があれば良い。つまり、本発明のデータ供給装置は、製造コストの増大が抑制されているとともに、上記出力装置への確実なデータ供給を実行することができる。
【００２６】
ここで、本発明のデータ供給装置において、「上記第１の伸張部が、上記圧縮データについて、複数段階の圧縮処理のうち伸張に要する時間が短い方から１段階分以上を残して伸張するものである」という形態は好ましい形態である。
【００２７】
この好ましい形態のデータ供給装置によれば、上記圧縮データについての伸張のうち、上記出力装置への出力に支障をきたす恐れのある長時間の伸張のほとんどを上記第１の伸張部で実行させ、その長時間の伸張が上記出力装置への確実なデータ供給に与える影響を上記格納部によって吸収させるという運用を実現することができる。つまり、この好ましい形態のデータ供給装置によれば、上記出力装置へのデータ供給の確実さを一層高めることができる。
【発明の効果】
【００２８】
以上、説明したように、本発明によれば、出力装置に出力データを確実に供給することができる、コストの増大が抑制されたデータ供給装置を提供することができる。
【発明を実施するための最良の形態】
【００２９】
以下図面を参照して本発明の実施の形態を説明する。
【００３０】
図３は、本発明が適用されたデータ移送システムの一例を示す図である。
【００３１】
ここで、図３には、プリンタ等の、図１に示す要素と同等な要素も示されている。そこで、ここでは、図１と同等な要素については図１と同じ符号を付し、重複説明を省略する。
【００３２】
この図３には、ＤＦＥ３００と、ＢＥＰ４００とからなるデータ移送システム３０が示されており、さらにこの図３には、図１にも示した、ビットマップデータの移送先であるプリンタ２０、ＳＣＳＩに則った汎用インタフェースケーブル１５０、専用インタフェースケーブル２６０も示されている。ここで、ＢＥＰ４００が、本発明のデータ供給装置の一実施形態に相当し、プリンタ２０が、本発明にいう出力装置の一例に相当する。
【００３３】
ＤＦＥ３００は、複数の画素の２次元の配列からなる画像を表わす画像データにＲＩＰ処理を施してビットマップデータを生成し、さらに、ビットマップデータに以下の圧縮処理を施して圧縮データを生成し、その圧縮データを１ページ分ごとにＢＥＰ４００に渡す役割を担っている。
【００３４】
ここで、ＤＦＥ３００では、いわゆるＪＰＥＧ（Ｊｏｉｎｔ  Ｐｈｏｔｏｇｒａｐｈｉｃ  Ｅｘｐｅｒｔ  Ｇｒｏｕｐ）方式による圧縮処理が行なわれる。
【００３５】
一般に、画像には様々な空間周波数成分が含まれているが、ＪＰＥＧ方式による圧縮処理では、圧縮対象のビットマップデータが表わす画像について、予め決められた離散的な複数の空間周波数それぞれに対する空間周波数成分の強さを表わす係数を求める、いわゆる離散コサイン変換が、８×８画素の集合からなるブロック単位で実行される。次に、各ブロック単位における複数の空間周波数成分それぞれについて求められた係数に対して、所定単位による量子化が施される。ここで、この量子化の単位は、圧縮対象のビットマップデータをどの程度圧縮するかという圧縮率と、圧縮の際、画像を部分的に切り捨てることによって生ずる画質の劣化をどの程度まで許容するかに基づいて、オペレータによって予め設定される。各空間周波数成分の係数がある単位で量子化されると、その単位よりも小さな係数を有する空間周波数成分は切り捨てられることになる。ＪＰＥＧ方式による圧縮処理では、人間に認識されにくい高い空間周波数成分から順次に切り捨てられる。各ブロック単位において、このような量子化を経て切り捨てられずに残った各空間周波数成分の係数に対して、以下のハフマン符号化が施され、圧縮対象のビットマップデータに対応する符号列が生成される。
【００３６】
ハフマン符号化では、まず、各ブロック単位において、上記の量子化を経て切り捨てられずに残った空間周波数成分の係数が一列に配列される。そして、この配列における各係数に対して、所定桁数の数値列で構成される符号が割り当てられる。ここで、ハフマン符号化では、配列中の出現頻度が高い係数から順に桁数の小さい数値列で構成される符号が割り当てられる。これにより、各ブロック単位に対応する符号の配列全体、延いては圧縮対象のビットマップデータに対応する符号の配列全体の桁数が抑制された符号列が生成される。また、この符号列の生成の際には、上記の係数と符号との対応関係を示すテーブルが作成され、符号列に添付される。このテーブルは、ＢＥＰ４００において、後述の復号の際に用いられる。
【００３７】
上記のＤＦＥ３００では、以上説明した、離散コサイン変換、量子化、およびハフマン符号化といった複数段階の処理を経て、圧縮対象のビットマップデータの圧縮と符号化とが行なわれ、このビットマップデータに対応する圧縮データが求められる。そして、この圧縮データが、ＢＥＰ４００に伝送される。
【００３８】
また、ＢＥＰ４００は、ＤＦＥ３００から伝送されてくる圧縮データを伸張することにより元のビットマップデータをほぼ復元し、その伸張によって得られたデータを、プリンタ２０が記録媒体上に出力する出力像を表わした出力データしてプリンタ２０に供給するという役割を担っている。
【００３９】
図４は、図３のＢＥＰを示すブロック図である。
【００４０】
この図４に示すように、ＢＥＰ４００は、受取部４１０と、画像バッファ４２０と、第１の伸張部４３０と、ページバッファ４４０と、第２の伸張部４５０と、ラインバッファ４６０と、プリンタ出力部４７０とを備えている。ここで、受取部４１０、第１の伸張部４３０、ページバッファ４４０、第２の伸張部４５０、ラインバッファ４６０、およびプリンタ出力部４７０は、それぞれ本発明にいう取得部、第１の伸張部、格納部、第２の伸張部、および供給部の各一例に相当する。
【００４１】
ＢＥＰ４００の受取部４１０では、ＤＦＥ３００からＳＣＳＩに則って１ページ分ごとに送られてくる圧縮データが受け取られる。受取部４１０では、これらの圧縮データが画像バッファ４２０に渡される。
【００４２】
画像バッファ４２０には、受取部４１０で受け取られた圧縮データあるいはビットマップデータが、数ページ分に亘って格納される。
【００４３】
第１の伸張部４３０では、画像バッファ４２０に格納された圧縮データが、上記のブロック単位で読み出され、各ブロック単位の圧縮データについて、その圧縮データを構成している、上記のハフマン符号化によって割り当てられた符号を、元の空間周波数成分の係数に戻すという復号化が行なわれる。この復号化による伸張によって生成された伸張データは、ページバッファ４４０に渡される。
【００４４】
ページバッファ４４０には、上記の復号化済みの伸張データ、即ち、空間周波数成分の係数が１ページ分だけ格納される。
【００４５】
第２の伸張部４５０では、ページバッファ４４０に上記の復号化済みの伸張データが１ページ分だけ格納されると、そのページバッファ４４０から、その伸張データが、上記のブロック単位で読み出され、各ブロック単位の伸張データについて、上述した量子化および離散コサイン変換それぞれの逆の演算が実行される。そして、この演算によって圧縮対象のビットマップデータをほぼ復元し、この演算によって得られたデータを、プリンタ２０が記録媒体上に出力する出力像を表わした出力データしてラインバッファ４６０に渡す。
【００４６】
ラインバッファ４６０は、プリンタ出力部４７０がこのラインバッファ４６０からビットマップデータを読み出してプリンタ２０の処理速度と同じ出力速度で出力することができるのに必要十分な量を格納できる容量を有している。このラインバッファ４６０には、第２の伸張部４５０から送られてくる出力データが格納される。
【００４７】
プリンタ出力部４７０は、プリンタ２０の処理速度と同じ出力速度で、ラインバッファ４６０から出力データを読出してプリンタ２０に出力する。
【００４８】
ここで、このプリンタ出力部４７０がプリンタ２０へ遅滞なく出力データを出力するためには、上記のラインバッファ４６０にはプリンタ出力部４７０によって読み出された分のビットマップデータが補填される必要がある。また、プリンタ２０は、画像を１ページずつ出力する。このため、各ページについて画像出力が行なわれている間は、その出力を保証するために、ビットマップデータが途切れることなくプリンタ２０に供給される必要がある。そして、ラインバッファ４６０には、１ページ分のビットマップデータのプリンタ２０への供給が終了するまでは、プリンタ出力部４７０の出力速度と同じ速度でビットマップデータが格納され続ける必要がある。
【００４９】
ここで、ＤＦＥ３００から送られてくる圧縮データに施す、上記の復号化、量子化の逆の演算、および離散コサイン変換の逆の演算のうち、復号化は、その他の演算に比べて長時間を要する。これは、この復号化において、上記のハフマン符号化によって割り当てられた符号を元の空間周波数成分の係数に戻すに当たり、係数と符号との対応関係を示す上記のテーブルを、圧縮データを構成する各符号で検索するという処理に時間がかかるためである。一方、量子化および離散コサイン変換それぞれの逆の演算は、単なる演算処理であるため短時間で処理が実行される。
【００５０】
上述したように、本実施形態では、第１の伸張部４３０で上記の復号化が実行され、第２の伸張部４５０では、量子化および離散コサイン変換それぞれの逆の演算が実行される。ここで、これら第１の伸張部４３０および第２の伸張部４５０には、それぞれデータを取り込む際の取込速度について、性能上の速度の上限がある。
【００５１】
まず、第２の伸張部４５０については、上記の演算に要する時間が短いので、上記の取込速度の上限が高い。このため、第２の伸張部４５０は、この上限の速度に十分な余裕を持った速度で復号化済みの伸張データを取り込んで、伸張後のビットマップデータを、プリンタ出力部４７０の出力速度と同じ速度でラインバッファ４６０に格納し続けることができる。
【００５２】
一方、第１の伸張部４３０については、復号化に要する時間が長く、上記の取込速度の上限が低い。処理対象の圧縮データの圧縮の程度が高い場合には、復号化によって得られる復号化済みの伸張データの量が比較的多いので、第１の伸張部４３０は、この上限の速度に十分な余裕を持って、第２の伸張部４５０の取込速度と同じ速度でページバッファ４４０を補填することができる。しかし、処理対象の圧縮データの圧縮の程度が低い場合には、復号化によって得られる復号化済みの伸張データの量は少なくなってしまう。ここで、上述したように、本実施形態では、第２の伸張部４５０は、ページバッファ４４０に復号化済みの伸張データが１ページ分だけ格納されてから取込を開始する。このページバッファ４４０により、第１の伸張部４３０による復号化済みの伸張データの生成が、第２の伸張部４５０の取り込みに間に合わなくなったとしても、第２の伸張部４５０は、プリンタ出力部４７０の出力速度と同じ速度でラインバッファ４６０を補填し続けるのに十分な速度で、復号化済みの伸張データを取り込むことができる。
【００５３】
以上に説明した、図３および図４に示すデータ移送システム３０で、圧縮率１／１０という圧縮の程度が高い圧縮データを１ページ分送るという例と、圧縮率１／２という圧縮の程度が低い圧縮データを１ページ分送るという例について検討する。ここで、プリンタ２０の処理速度を３００ＭＢｙｔｅ／ｓ、第１の伸張部４３０における取込速度の上限を１００ＭＢｙｔｅ／ｓ、第２の伸張部４５０における取込速度の上限を３００ＭＢｙｔｅ／ｓ、受取部４１０における受取速度の上限を８０ＭＢｙｔｅ／ｓとする。
【００５４】
まず、圧縮率１／１０の圧縮データについて検討する。この例では、ＤＦＥ３００において、ビットマップデータが離散コサイン変換と量子化とによって１／３に圧縮され、さらにハフマン符号化によって３／１０に圧縮されて圧縮率１／１０の圧縮データが生成されたものとする。
【００５５】
第２の伸張部４５０は、伸張後のビットマップデータを上記の出力速度（３００ＭＢｙｔｅ／ｓ）と同じ速度でラインバッファ４４０に渡すので、第２の伸張部４５０の取込速度は、その出力速度に離散コサイン変換と量子化とによる圧縮率（１／３）を乗じた１００Ｍｂｙｔｅ／ｓとなる。この場合、第１の伸張部４３０は、第２の伸張部４５０の取込速度（１００Ｍｂｙｔｅ／ｓ）と同じ速度でページバッファ４４０を補填するので、第１の伸張部４３０の取込速度は、その補填の速度にハフマン符号化による圧縮率（３／１０）を乗じた３０Ｍｂｙｔｅ／ｓとなる。また、受取部４１０は、第１の伸張部４３０の取込速度（３０Ｍｂｙｔｅ／ｓ）と同じ受取速度で圧縮データをＤＦＥ３００から受け取る。このように、圧縮率１／１０の圧縮データについては、第１および第２の伸張部４３０，４５０と、受取部４１０は、それぞれ上記の上限の速度に余裕を持って処理を行なうことができる。これにより、プリンタ出力部４７０は、プリンタ２０が１ページ出力している間、プリンタ２０の処理速度に間に合う３００ＭＢｙｔｅ／ｓの出力速度で出力データをプリンタ２０に供給し続けることができる。
【００５６】
次に、圧縮率１／２の圧縮データについて検討する。この例では、ＤＦＥ３００において、ビットマップデータが離散コサイン変換と量子化とによって２／３に圧縮され、さらにハフマン符号化によって３／４に圧縮されて圧縮率１／２の圧縮データが生成されたものとする。
【００５７】
この例では、受取部４１０は、上限の受取速度（８０ＭＢｙｔｅ／ｓ）で圧縮データを受け取る。一方、第１の伸張部４３０は、上限の取込速度（１００ＭＢｙｔｅ／ｓ）で圧縮データを取り込む。ここで、受取部４１０の上限の受取速度は、第１の伸張部４３０の上限の取込速度よりも遅いが、本実施形態では、画像バッファ４２０に複数ページ分の圧縮データが格納されるので、第１の伸張部４３０は、この画像バッファ４２０から上限の取込速度（１００Ｍｂｙｔｅ／ｓ）で圧縮データを取り込むことができる。
【００５８】
第１の伸張部４３０は、取り込んだ圧縮データに復号化を施して、上限の取込速度（１００Ｍｂｙｔｅ／ｓ）に、ハフマン符号化による圧縮率（３／４）の逆数を乗じた、およそ１３３Ｍｂｙｔｅ／ｓの速度で復号化済みの伸張データをページバッファ４４０に格納する。
【００５９】
一方、第２の伸張部４５０は、伸張後のビットマップデータを上記の出力速度（３００ＭＢｙｔｅ／ｓ）と同じ速度でラインバッファ４４０に渡すので、第２の伸張部４５０の取込速度は、その出力速度に離散コサイン変換と量子化とによる圧縮率（２／３）を乗じた２００Ｍｂｙｔｅ／ｓとなる。この場合、第１の伸張部４３０は、第２の伸張部４５０の取込速度（２００Ｍｂｙｔｅ／ｓ）と同じ速度でページバッファ４４０を補填することが望ましいが、上記のように、第１の伸張部４３０による補填の速度は、この第２の伸張部４５０の取込速度（２００Ｍｂｙｔｅ／ｓ）よりも遅い。
【００６０】
しかし、本実施形態では、第２の伸張部４５０は、１ページ分の復号化済の伸張データがページバッファ４６０に溜められてから、その伸張データの取り込みを開始する。これにより、圧縮率１／２という圧縮の程度が低い圧縮データであっても、プリンタ出力部４７０は、プリンタ２０が１ページ出力している間、プリンタ２０の処理速度と同じ３００ＭＢｙｔｅ／ｓの出力速度で出力データをプリンタ２０に供給し続けることができる。
【００６１】
また、本実施形態のデータ供給装置４００は、例えば高速な伸張処理を実行できる高性能の部品等といった、製造時のコストの増大を招く高価な部品は不要であり、高々１ページ分の復号化済みの圧縮データが格納可能なページバッファ４４０が１つあれば良い。つまり、本発明のデータ供給装置は、製造コストの増大が抑制されている。
【００６２】
尚、上記の説明では、本発明にいう格納部の一例として、１ページ分の復号化済みの圧縮データが格納可能なページバッファ４４０を挙げたが、本発明はこれに限るものではなく、本発明の格納部は、例えば、１ページ分を超える量の復号化済みの圧縮データが格納可能なもの等であっても良い。
【００６３】
また、上記の説明では、本発明にいう第１の伸張部の一例として、ＪＰＥＧ方式による圧縮処理で圧縮された圧縮データの伸張に必要な、復号化、量子化の逆の演算、および離散コサイン変換の逆の演算のうち、処理に最も長時間を要する復号化のみを実行する第１の伸張部４３０をを挙げたが、本発明はこれに限るものではない。本発明の第１の伸張部は、例えば、復号化と量子化の逆の演算との２段階の処理を実行するもの等であっても良い。あるいは、本発明の第１の伸張部は、ＪＰＥＧ方式による圧縮処理とは異なる、複数段階の圧縮処理によって圧縮された圧縮データの伸張に必要な複数段階の伸張処理のうち少なくとも１段階分を残して伸張処理を実行するもの等であっても良い。この場合には、本発明の第２の伸張部は、上記の複数段階の伸張処理のうち残りの段階の伸張処理を実行するものとなる。
【００６４】
また、上記の説明では、本発明にいう取得部の一例として、圧縮データのＳＣＳＩに則った受け取りを行なう受取部４１０を挙げたが、本発明の取得部はこれに限るものではなく、ＳＣＳＩ以外の通信規格に則った受け取りを行なうもの等であっても良い。ただし、その場合には、図３および図４に示すＤＦＥ３００は、受け取り側と同じＳＣＳＩ以外の通信規格に則って圧縮データを伝送するものとなる。
【図面の簡単な説明】
【００６５】
【図１】データ圧縮技術が適用された、プリンタへ出力データを移送するデータ移送システムの一例を示す図である。
【図２】図１のＢＥＰを示すブロック図である。
【図３】本発明が適用されたデータ移送システムの一例を示す図である。
【図４】図３のＢＥＰを示すブロック図である。
【符号の説明】
【００６６】
１０，３０    データ移送システム
２０    プリンタ
１００，３００    ＤＦＥ
１５０    汎用インタフェースケーブル
２００，４００    ＢＥＰ
２１０    受取部
２２０    画像バッファ
２３０    伸張部
２４０    ラインバッファ
２５０    プリンタ出力部
２６０    専用インタフェースケーブル
４１０    受取部
４２０    画像バッファ
４３０    第１の伸張部
４４０    ページバッファ
４５０    第２の伸張部
４６０    ラインバッファ
４７０    プリンタ出力部
【図１】
2006186556.tif 000003
【図２】
2006186556.tif 000004
【図３】
2006186556.tif 000005
【図４】
2006186556.tif 000006