JP2006180243A - データ移送システム - Google Patents

データ移送システム Download PDF

Info

Publication number
JP2006180243A
JP2006180243A JP2004371698A JP2004371698A JP2006180243A JP 2006180243 A JP2006180243 A JP 2006180243A JP 2004371698 A JP2004371698 A JP 2004371698A JP 2004371698 A JP2004371698 A JP 2004371698A JP 2006180243 A JP2006180243 A JP 2006180243A
Authority
JP
Japan
Prior art keywords
data
compression
unit
output
speed
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
Application number
JP2004371698A
Other languages
English (en)
Inventor
Kenji Yokota
謙治 横田
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.)
Fujifilm Holdings Corp
Original Assignee
Fuji Photo Film 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 Fuji Photo Film Co Ltd filed Critical Fuji Photo Film Co Ltd
Priority to JP2004371698A priority Critical patent/JP2006180243A/ja
Priority to US11/295,637 priority patent/US20060133678A1/en
Publication of JP2006180243A publication Critical patent/JP2006180243A/ja
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • G06F3/1288Remote printer device, e.g. being remote from client or server in client-server-printer device configuration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1218Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources
    • G06F3/1219Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources with regard to consumables, e.g. ink, toner, paper
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1218Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources
    • G06F3/122Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources with regard to computing resources, e.g. memory, CPU
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1244Job translation or job parsing, e.g. page banding
    • G06F3/1247Job translation or job parsing, e.g. page banding by conversion to printer ready format
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1244Job translation or job parsing, e.g. page banding
    • G06F3/1248Job translation or job parsing, e.g. page banding by printer language recognition, e.g. PDL, PCL, PDF

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Image Processing (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Record Information Processing For Printing (AREA)

Abstract

【課題】確実なデータ移送を実行することができる、コストの増大が抑制されたデータ移送システムを提供する。
【解決手段】未圧縮の電子データに圧縮処理を施して圧縮済の電子データを得る圧縮処理と、その圧縮処理が所定の圧縮目標を達成するか否かを判定する判定処理とを実行するCPU310と、その圧縮処理が所定の圧縮目標を達成する場合にのみ圧縮済の電子データを出力し、それ以外の場合には未圧縮の電子データを出力する出力部330とを備えたデータ圧縮装置300、および、データ圧縮装置300から受け取った電子データが圧縮済の電子データである場合にのみ伸張処理を実行する伸張部430とを備えたデータ伸張装置400でデータ移送システムを構成した。
【選択図】 図4

Description

本発明は、電子データを圧縮して出力するデータ圧縮装置と、該データ圧縮送信装置が出力した電子データを伸張して所定の引渡し先に引き渡すデータ伸張装置とからなるデータ移送システムに関する。
従来より、記憶容量の低減化や通信量の低減化等を目的として、画像データに圧縮処理を施す技術が広く採用されている。
例えば、画像データを、自然画(CT;Continuous Tone)データと、文字や線画等(LW;Line Work)のデータとに分け、各データについてそのデータに適した圧縮処理を施すという技術が知られている(例えば、特許文献1参照。)。
また、画像データに、所定のブロック単位ごとに圧縮処理を施す際に、圧縮後の処理に対する便を図るため、このブロック単位ごとの圧縮後のデータサイズが常に一定のサイズとなるようにブロック単位ごとの圧縮率を調節するという技術も知られている(例えば、特許文献2参照。)。
ここで、データ圧縮技術を適用した1つのデータ移送システムを紹介する。
図1は、データ圧縮技術が適用された、プリンタへ画像データを移送するデータ移送システムの一例を示す図である。
この図1には、DFE(Digital Front End processor)100と、BEP(Back End Processor)200とからなるデータ移送システム10が示されており、さらにこのデータ移送システム10における画像データの移送先であるプリンタ20も示されている。DFE100とBEP200との間は、SCSIに則った汎用インタフェースケーブル150で接続され、BEP200とプリンタ20との間は、専用インタフェースケーブル260で接続されている。
DFE100では、ページ記述言語で記述された画像データにRIP(Raster Image Processing)処理が施されて、ビットマップデータが生成される。さらに、DFE100では、このビットマップデータに圧縮処理が施されて圧縮データが生成される。この圧縮データが、汎用インタフェースケーブル150を経由してDFE100からBEP200に伝送される。
BEP200では、この圧縮データが伸張され、未圧縮のビットマップデータとほぼ同等なビットマップデータが生成される。そして、この生成されたビットマップデータがプリンタ20に引き渡され、プリンタ20で、このビットマップデータに基づいた画像が出力される。
ここで、上記のBEP200の構成について説明する。
図2は、図1のBEPブロック図である。
図2に示すように、BEP200は、受取部210と、画像バッファ220と、伸張部230と、ラインバッファ240と、プリンタ出力部250とを備えている。
受取部210では、BEP200からSCSIに則って伝送されてくる上記の圧縮データが受け取られる。ここで、この圧縮データを伸張部230が所定のタイミングで取り込んで伸張することができるように、受取部210と伸張部230との間には、数ページ分の圧縮データが一時的に格納される画像バッファ220が設けられている。また、プリンタ出力部250では、伸張部230による伸張によって生成された、未圧縮のビットマップデータとほぼ同等なビットマップデータが、プリンタ20の処理速度に応じた出力速度でプリンタ20に向けて出力される。ここで、プリンタ20では所定のタイミングで画像の出力が行なわれるので、プリンタ出力部250は、伸張部230による伸張によって順次に生成されてくるビットマップデータを、この所定のタイミングでプリンタ20に渡す必要がある。そこで、伸張部230とプリンタ出力部250との間には、所定単位のビットマップデータが一時的に格納されるラインバッファ240が設けられている。
特開平6−113145号公報 US6330363B1
上記の伸張部230は、プリンタ出力部250によってラインバッファ240からビットマップデータが読み出されると、このラインバッファ240を補填するために、画像バッファ220から所定のタイミングで圧縮データを取り込んで伸張してラインバッファ240に渡す。この結果、伸張部230は、平均的に、プリンタ出力部250の出力速度と同じ速度で、伸張後のビットマップデータをラインバッファ240に渡すこととなり、また、平均的に、上記の出力速度に圧縮率を乗じた速度で圧縮データを取り込むこととなる。さらに、受取部210は、伸張部230が画像バッファ220から圧縮データを読み出すと、その画像バッファ220を補填するために、DFE100から圧縮データを受け取る。つまり、受取部210は、伸張部230が圧縮データを取り込む平均速度と同じ平均速度で、圧縮データをDFE100から受け取ることとなる。
ここで、伸張部230が圧縮データを取り込む平均速度(以降、取込速度と呼ぶ)については、伸張部230の性能上の速度の上限があり、受取部210が圧縮データを受け取る平均速度(以降、受取速度と呼ぶ)についても、SCSIに則った速度の上限がある。
ところで、上記のDFE100でビットマップデータを圧縮する際の圧縮率は、圧縮対象の画像データが表わす画像によって異なる。圧縮の程度が高い圧縮データについては、伸張部230の伸張によって生成されるビットマップデータの量が多くなるので、結果的に、伸張部230の取込速度と受取部210の受取速度はともに下がり、伸張部230と受取部210は、両者ともに上記の速度の上限に対して余裕を持って処理を行なうことができる。
例えば、圧縮率1/10という圧縮の程度が高い圧縮データがBEP200に送られ、伸張によって生成されたビットマップデータが、300MByte/sの処理速度で画像を出力するプリンタ20に出力されるという例について検討する。ここで、伸張部230の、圧縮データの取り込みに対する速度の上限を100MByte/s、受取部210の圧縮データの圧縮データの受け取りに対する速度の上限を80MByte/sとする。
この場合、プリンタ出力部250がラインバッファ240からビットマップデータを読み出してプリンタ20に出力する速度、即ち出力速度は、プリンタ20の処理速度と同じ300MByte/sとなる。また、伸張部230がラインバッファ240に伸張後のビットマップデータを渡すときの平均的な速度は、このプリンタ出力部250の出力速度と同じ300MByte/sとなり、結果的に、この伸張部230における上記の取込速度は、その出力速度に圧縮率を乗じた30MByte/sとなる。さらに、受取部210における上記の受取速度は、その取込速度と同じ30MByte/sとなる。従って、伸張部230と受取部210は、両者ともに上記の速度の上限に対して余裕を持って処理を行なうことができる。
一方、圧縮率が低い圧縮データについては、伸張部230の伸張によって生成されるビットマップデータの量が少なく、伸張部230は、ラインバッファ240を十分に補填するために、より多くの圧縮データを取り込むこととなり、伸張部230における取込速度が結果的に上がることとなる。ところが、圧縮率が低すぎると、伸張部230の取込速度が速度の上限に達してもラインバッファ240を十分に補填できなくなり、プリンタ20において、画像の途切れ等というような不具合が生じてしまう。
例えば、圧縮率1/2という圧縮の程度が低い圧縮データがBEP200に送られ、伸張によって生成されたビットマップデータが、300MByte/sの処理速度で画像を出力するプリンタ20に出力されるという例について検討する。ここで、上述の例と同様に、伸張部230の取込速度に対する速度の上限を100MByte/s、受取部210の受取速度に対する速度の上限を80MByte/sとする。
この場合、まず上記の画像バッファ220が十分に大きな容量を有しているため、この画像バッファ220が圧縮データである程度満たされていれば、伸張部230は、最速では、受取部210における受取速度の速度の上限(80MByte/s)を超えて、上記の取込速度の速度の上限(100MByte/s)で圧縮データを取り込んで伸張することができる。しかし、伸張部230が、たとえこの速度の上限(100MByte/s)で圧縮データを取り込んで伸張処理を行なったとしても、この伸張部230からは、200Mbyte/sの速度でしかビットマップデータがラインバッファ240に向けて出力されなくなってしまう。このため、プリンタ出力部250は、200Mbyte/sの速度でしかビットマップデータを出力できなくなり、上記のプリンタ20の処理速度(300Mbyte/s)に間に合わなくなってしまう。
この問題を回避する方法として、上記の取込速度に対する速度の上限が十分に速い高性能の伸張部を用意することが考えられる。
また、上記のラインバッファ240に替えて大容量のバッファを用意することが考えられる。このような大容量のバッファによれば、例えばプリンタ20において1ページ単位で画像の出力が実行される場合には、その1ページ単位の出力を保証するのに必要な1ページ分以上のビットマップデータをバッファに一時的に溜めておくことができ、上記のプリンタ出力部250はそのバッファから必要な出力速度でビットマップデータを読み出してプリンタ20に出力することができる。
しかしながら、これらの方法は、高性能の伸張部や大容量のラインバッファ等の特別な部品を要するので、いずれも製造コストの増大を招いてしまう。
本発明は、上記事情に鑑み、確実なデータ移送を実行することができる、コストの増大が抑制されたデータ移送システムを提供することを目的とする。
上記目的を達成する本発明のデータ移送システムは、未圧縮の電子データに圧縮処理を施して圧縮済の電子データを得るデータ圧縮部と、
上記圧縮処理が所定の圧縮目標を達成する場合には、上記データ圧縮部によって得られる圧縮済の電子データを出力し、その圧縮処理がその圧縮目標を達成しない場合には、上記圧縮処理を経ない未圧縮の電子データを出力するデータ出力部とを備えたデータ圧縮装置、および
上記データ圧縮装置から電子データを受け取る受取部と、
上記受取部で受け取られた電子データが圧縮済の電子データである場合にはその電子データを伸張して所定の引き渡し先に引き渡し、上記受取部で受け取られた電子データが未圧縮の電子データである場合にはその電子データをそのまま上記引き渡し先に引き渡す引渡部とを備えたデータ伸張装置を備えたことを特徴とする。
本発明のデータ移送システムによれば、上記データ圧縮装置において圧縮処理が圧縮目標を達成できず、無理に圧縮して上記データ伸張装置に送ると、伸張に時間がかかって、必要な速度で上記引渡し先に引き渡せなくなる恐れがある電子データについては、伸張を必要としない上記未圧縮の電子データが上記データ伸張装置に送られる。この結果、上記データ伸張装置の引渡部では、電子データについて、上記引き渡し先への引き渡しに支障をきたす恐れのある圧縮の程度が低い圧縮データについての伸張が回避され、その電子データが上記引き渡し先へ遅滞無く移送される。また、本発明のデータ移送システムは、上記引渡部において伸張を行なう部品として、高速な伸張処理を実行できる高性能の部品等といった、製造時のコストの増大を招く高価な部品が不要であるので、製造時におけるコストの増大が抑制されている。つまり、本発明のデータ移送システムは、コストの増大が抑制されているとともに、確実なデータ移送を実行することができる。
ここで、本発明のデータ移送システムにおいて、「上記データ圧縮部が、上記圧縮処理を、一群の未圧縮の電子データそれぞれに対して逐次に施すものであり、
上記データ出力部が、上記データ圧縮部による圧縮処理の結果を逐次に確認し、上記圧縮目標が完遂された場合には、そのデータ圧縮部で上記一群の未圧縮の電子データについて得られた圧縮済の電子データを出力し、上記圧縮目標を達成しない結果が生じた場合には、上記データ圧縮部に圧縮処理を中止させて上記一群の未圧縮の電子データを出力するものである」という形態は好ましい形態である。
電子データには、部分的に圧縮の程度が低下するようなデータ部分が含まれている可能性がある。上記の好ましい形態のデータ移送システムによれば、上記データ圧縮装置のデータ圧縮部による圧縮処理の結果が逐次に確認される。これにより、圧縮対象の電子データに、部分的に圧縮の程度が低下するようなデータ部分が含まれている場合であっても、そのデータ部分についての圧縮の程度の低下が見過ごされることなく確認され、一層確実なデータ移送を実行することができる。
以上、説明したように、本発明によれば、確実なデータ移送を実行することができる、コストの増大が抑制されたデータ移送システムを提供することができる。
以下図面を参照して本発明の実施の形態を説明する。
図3は、本発明のデータ移送システムの一例を示す図である。
ここで、図3には、プリンタ等の、図1に示す要素と同等な要素も示されている。そこで、ここでは、図1と同等な要素については図1と同じ符号を付し、重複説明を省略する。
この図3には、DFE300と、BEP400とからなるデータ移送システム30が示されており、さらにこの図3には、図1にも示した、ビットマップデータの移送先であるプリンタ20、SCSIに則った汎用インタフェースケーブル150、専用インタフェースケーブル260も示されている。ここで、DFE300、およびBEP400が、それぞれ本発明にいうデータ圧縮装置およびデータ伸張装置の各一例に相当する。また、プリンタ20は、本発明にいう引き渡し先の一例に相当する。
DFE300は、複数の画素の2次元の配列からなる画像を表わす画像データにRIP処理を施してビットマップデータを生成し、さらに、ビットマップデータに8行分の画素の配列に相当するブロック単位で圧縮処理を施して、圧縮されたビットマップデータを1ページ分ごとにBEP400に渡す役割を基本的に担っている。ただし、1ページ分のビットマップデータ中に、圧縮処理後の圧縮率が後述の目標圧縮率に達しないブロック単位があるビットマップデータについては、DFE300は、そのページに対応する未圧縮のビットマップデータをBEP400に渡す。
BEP400は、基本的に、DFE300から送られてくる、圧縮されたビットマップデータを伸張して元のビットマップデータをほぼ復元し、プリンタ20に転送する役割を担っている。ただし、上記のように、DFE300から未圧縮のビットマップデータが送られてきた場合は、BEP400は、そのビットマップデータをそのままプリンタ20に転送する。
図4は、図3のDFEおよびBEPを示すブロック図である。
図4に示すように、DFE300は、CPU310と、ページバッファ320と、出力部330とを備えている。ここで、CPU310が、本発明にいうデータ圧縮部の一例に相当し、CPU310と出力部330とを合せたものが、本発明にいうデータ出力部の一例に相当する。
また、図4に示すように、BEP400は、受取部410と、画像バッファ420と、伸張部430と、ラインバッファ440と、プリンタ出力部450とを備えている。ここで、受取部410が、本発明にいう受取部の一例に相当し、伸張部430とプリンタ出力部450とを合せたものが、本発明にいう引渡部の一例に相当する。
DFE300のCPU310は、このDFE300全体の動作制御を行なうものであるが、ここでは、このCPU310の動作ついて、本発明に直接に関わる部分に特化して説明を続ける。
このCPU310は、図示しない制御プログラムに従って、図3に示す、後述の画像データ生成部311、圧縮部312、および圧縮率判定部313として動作する。
まず、画像データ生成部311として動作しているCPU310では、1ページあるいは複数ページ分の、複数の画素の2次元の配列からなる画像を表わす画像データにRIP処理が施されてビットマップデータが生成される。
また、圧縮部312として動作しているCPU310では、生成されたビットマップデータに、1ページ分ごとに圧縮処理が施される。この圧縮処理では、1ページ分のビットマップデータに、8行分の画素の配列というブロック単位で圧縮処理が施され、ブロック単位の圧縮データが順次に生成される。
また、圧縮率判定部313として動作しているCPU310では、順次に生成される圧縮データについて未圧縮のビットマップデータに対する圧縮率が逐次に求められ、その圧縮率が所定の目標圧縮率に達しているか否かが判定される。ここで、本実施形態では、この目標圧縮率は、BEP400のプリンタ出力部450におけるプリンタ20への出力速度と、BEP400の伸張部430における圧縮データの取込速度とに応じた値に設定されている。この目標圧縮率については、BEP400の伸張部430およびプリンタ出力部450の説明後に改めて説明する。
この逐次に行なわれる判定において、圧縮率が目標圧縮率に達していることを示す結果が得られている間は、生成されたブロック単位の圧縮データと、その圧縮データに対応するブロック単位の未圧縮のビットマップデータとの両方が、CPU310からページバッファ320に渡される。一方、逐次に行なわれる上記の判定において、圧縮率が目標圧縮率に達していないことを示す結果が1度でも生じた場合には、その結果に対応するブロック単位に続くブロック単位についての圧縮処理が中止され、その結果に対応するブロック単位を含む以降のブロック単位について、未圧縮のビットマップデータがCPU310からページバッファ320に渡される。
また、1ページ分のビットマップデータの全てのブロック単位について、圧縮率が目標圧縮率に達していることを示す結果が得られた場合には、その1ページ分の圧縮データのページバッファ320への出力が終了した後に、CPU310は、出力部330に対して、その1ページ分の圧縮データをページバッファ320から読み出してBEP400に向けて出力するように指示する。一方、1ページ分のビットマップデータの圧縮中に、圧縮率が目標圧縮率に達していないことを示す結果が1度でも得られた場合には、その1ページ分のビットマップデータのページバッファ320への出力が終了した後に、CPU310は、出力部330に対して、ページバッファ320から1ページ分のビットマップデータを読み出して出力するように指示する。
ページバッファ320は、CPU310から渡される上記の圧縮データとビットマップデータがそれぞれ1ページ分格納することができるだけの容量を有している。
出力部330では、CPU310から、圧縮データの出力を指示されると、ページバッファ320からの圧縮データの読出しと、その圧縮データのBEP400に向けてのSCSIに則った出力が開始される。また、CPU310から、ビットマップデータの出力を指示されると、ページバッファ320からのビットマップデータの読出しと、そのビットマップデータのBEP400に向けてのSCSIに則った出力が開始される。
BEP400の受取部410では、DFE300の出力部330からSCSIに則って送られてくる1ページ分の圧縮データあるいは1ページ分のビットマップデータが受け取られる。受取部410では、これらの圧縮データあるいはビットマップデータが画像バッファ420に渡される。
画像バッファ420には、受取部410で受け取られた圧縮データあるいはビットマップデータが、数ページ分に亘って格納される。
伸張部430は、画像バッファ420に格納された圧縮データについては伸張処理を施してラインバッファ440に渡し、画像バッファ420に格納されたビットマップデータについてはそのままラインバッファ440に渡す役割を担っており、分岐部431と、処理部432とを備えている。
伸張部430の分岐部431は、画像バッファ420に格納されているデータが、圧縮データであるかビットマップデータであるかの識別を行なう。そして、読み出したデータが圧縮データであった場合には、その圧縮データを、処理部432の取込速度と同じ速度で画像バッファ420から読み出して処理部432に渡す。一方、画像バッファ420に格納されているデータがビットマップデータであった場合には、そのビットマップデータをプリンタ出力部450の出力速度と同じ速度で画像バッファ420から読み出してラインバッファ440に渡す。
また、伸張部430の処理部432は、分岐部431から渡される圧縮データを取り込んで上記のブロック単位で伸張処理を施し、その圧縮データの元のビットマップデータとほぼ同等なビットマップデータを生成してラインバッファ440に渡す。ここで、この処理部432は、伸張後のビットマップデータを、プリンタ出力部450の出力速度と同じ速度でラインバッファ440に渡すので、この処理部432は、その出力速度に伸張対象の圧縮データの圧縮率を乗じた取込速度でその圧縮データを取り込むこととなる。
ラインバッファ440は、プリンタ出力部450がこのラインバッファ440からビットマップデータを読み出してプリンタ20の処理速度と同じ出力速度で出力することができるのに必要十分な量を格納できる容量を有している。このラインバッファ440には、伸張部430の分岐部431から送られてくるビットマップデータ、もしくは、伸張部430の処理部432において伸張されて生成されるビットマップデータが格納される。
プリンタ出力部450は、プリンタ20の処理速度と同じ出力速度で、ラインバッファ440からビットマップデータを読出してプリンタ20に出力する。
ここで、このプリンタ出力部450がプリンタ20へ遅滞なくビットマップデータを出力するためには、上記のラインバッファ440にはプリンタ出力部450によって読み出された分のビットマップデータが補填される必要がある。また、プリンタ20は、画像を1ページずつ出力する。このため、各ページについて画像出力が行なわれている間は、その出力を保証するために、ビットマップデータが途切れることなくプリンタ20に供給される必要がある。そして、ラインバッファ440には、1ページ分のビットマップデータのプリンタ20への供給が終了するまでは、プリンタ出力部450の出力速度と同じ速度でビットマップデータが格納され続ける必要がある。
ラインバッファ440に未圧縮のビットマップデータが格納される場合には、分岐部431がそのビットマップデータをプリンタ出力部450の出力速度と同じ速度でラインバッファ440に渡す。即ち、この場合には、ラインバッファ440には上記の必要な速度でビットマップデータが格納されることとなる。
一方、伸張部430の処理部432での伸張処理によって生成されたビットマップデータが、プリンタ出力部450の出力速度と同じ速度でラインバッファ440に格納される場合には、処理部432は、その出力速度に伸張対象の圧縮データの圧縮率を乗じた取込速度でその圧縮データを取り込んで伸張処理を施してラインバッファ440にビットマップデータを渡す。ここで、伸張部430の処理部432には、上記の取込速度について性能上の速度の上限がある。本実施形態では、DFE300において圧縮率判定部313として動作するCPU310での、圧縮率判定の基準となる上記の目標圧縮率は、処理部432における取込速度が性能上の速度の上限以下となる値、即ち、その速度の上限を、プリンタ出力部450の出力速度で除した値以下の値に設定されている。上記のように、DFE300から送られてくる圧縮データは、圧縮率がこの目標圧縮率に達した、圧縮の程度が高いものであるので、処理部432は、この圧縮データを上記の上限に余裕を持って取り込んで伸張し、ラインバッファ440に伸張後のビットマップデータを上記の必要な速度で渡すことができる。
以上に説明した本実施形態のデータ移送システム30において、1ページ分の圧縮データ中の全ブロック単位についての圧縮率が1/10という高圧縮率である場合と、1ページ分の圧縮データ中に圧縮率が1/2という圧縮の程度が低いブロック単位がある場合との2例について検討する。ここで、プリンタ20の処理速度を300MByte/s、伸張部430の処理部432における取込速度の速度の上限を100MByte/s、また、受取部410における受取速度の速度の上限を80MByte/sとする。
さらに、この例では、プリンタ出力部450が、プリンタ20の処理速度に間に合うように、ビットマップデータをプリンタ20に供給するために、上記の目標圧縮率が、取込速度の最大速度(100MByte/s)を、プリンタ20の処理速度と同じ速度であるプリンタ出力部450の出力速度(300MByte/s)で除した値である1/3に設定されているものとする。
1ページ分の圧縮データ中の全ブロック単位についての圧縮率が1/10という高圧縮率である場合には、全ブロック単位についての圧縮率が目標圧縮率(1/3)に十分達しているので、その1ページ分の圧縮データがBEP400に送られる。ここで、処理部432は、伸張後のビットマップデータを上記の出力速度(300MByte/s)と同じ速度でラインバッファ440に渡すので、その処理部432の取込速度は、その出力速度に上記の圧縮率(1/10)を乗じた30Mbyte/sとなる。また、上記の受取部410の受取速度は、その取込速度と同じ30MByte/sとなる。従って、処理部432と受取部410は、両者ともに上記の速度の上限に対して余裕を持って処理を行ない、これにより、プリンタ出力部450はプリンタ20が1ページ出力している間、プリンタ20の処理速度と同じ300MByte/sの出力速度でビットマップデータをプリンタ20に供給し続けることができる。
一方、1ページ分の圧縮データ中に圧縮率が1/2という圧縮の程度が低いブロック単位がある場合には、そのブロック単位の圧縮率が目標圧縮率(1/3)に達していないので、DFE300は未圧縮のビットマップデータをBEP400に送る。そして、BEP400側において、分岐部431が、この未圧縮のビットマップデータを、プリンタ20の処理速度と同じ300MByte/sの速度でラインバッファ440に出力する。これにより、DFE300において1ページ分の圧縮データを生成中に圧縮率1/2という圧縮の程度が低いブロック単位が生成された場合であっても、プリンタ出力部450は、プリンタ20が1ページ出力している間、プリンタ20の処理速度と同じ300MByte/sの出力速度でビットマップデータをプリンタ20に供給し続けることができる。
以上、説明したように、本実施形態のデータ移送システム30では、DFE300で1ページごとのビットマップデータを上記のブロック単位で圧縮して伝送し、BEP400で伸張して移送先であるプリンタ20に引き渡すにあたり、1ページ分の全てのブロック単位について、圧縮率が上記の目標圧縮率に達した場合に限り、そのページについての圧縮データが伝送され、それ以外の場合には未圧縮のビットマップデータが伝送される。これにより、プリンタ20への引き渡しに支障をきたす恐れのある圧縮の程度が低い圧縮データについての伸張が回避され、遅滞無くデータの移送が行なわれる。また、本実施形態のデータ移送システム30では、圧縮率の確認が個々のブロック単位について行なわれる。これにより、圧縮対象のビットマップデータに、部分的に圧縮の程度が低下するようなデータ部分が含まれている場合であっても、そのデータ部分についての圧縮の程度の低さが、見過ごされることなく確認される。さらに、本実施形態のデータ移送システム30は、高速な伸張処理を実行できる高性能の伸張器等といった、製造時のコストの増大を招く高価な部品が不要であるので、製造時におけるコストの増大が抑制されている。
尚、上記の説明では、本発明にいうデータ圧縮装置の一例として、圧縮処理を8行分の画素の配列という上述のブロック単位で実行して、圧縮処理における圧縮率が所定の目標圧縮率に達しているか否かを判定し、その判定結果に応じて、圧縮データを移送するか未圧縮のビットマップデータを移送するかの切換えを1ページ単位で実行するDFE300を挙げたが、本発明はこれに限るものではない。本発明のデータ圧縮装置は、例えば、上記の圧縮処理を、BEP400のラインバッファ440の容量に等しい量のデータ等を単位として実行するというように、上記のブロック単位以外の単位で圧縮処理を実行するものであっても良い。また、本発明のデータ圧縮装置は、例えば、上記の判定を上記のブロック単位以外の単位で実行するものであっても良い。また、本発明のデータ圧縮装置は、例えば、上記の切換えを数ページ単位で行なうものであっても良く、また例えば、上記の切換えを半ページ単位や上記のブロック単位等といった1ページ以下の単位で行なうものであっても良い。
また、上記の説明では、本発明にいうデータ圧縮部の一例として、1ページ分ごとのビットマップデータに、8行分の画素の配列というブロック単位で圧縮処理を施す圧縮部312として動作するCPU310を挙げたが、本発明はこれに限るものではない。本発明のデータ圧縮部は、例えば、そのような圧縮処理を行なう専用の回路等であってもよい。
また、上記の説明では、本発明にいうデータ出力部の一例として、圧縮データやビットマップデータのSCSIに則った出力を行なう出力部330を挙げたが、本発明はこれに限るものではなく、SCSI以外の通信規格に則った出力を行なうもの等であっても良い。また、その場合には、本発明にいう受取部は、送信側と同じSCSI以外の通信規格に則って圧縮データやビットマップデータを受け取るものとなる。
データ圧縮技術が適用された、プリンタへ画像データを移送するデータ移送システムの一例を示す図である。 図1のBEPブロック図である。 本発明のデータ移送システムの一例を示す図である。 図3のDFEおよびBEPを示すブロック図である。
符号の説明
10,30 データ移送システム
20 プリンタ
100,300 DFE
150 汎用インタフェースケーブル
200,400 BEP
210 受取部
220 画像バッファ
230 伸張部
240 ラインバッファ
250 プリンタ出力部
260 専用インタフェースケーブル
310 CPU
311 画像データ生成部
312 圧縮部
313 圧縮率判定部
320 ページバッファ
330 出力部
410 受取部
420 画像バッファ
430 伸張部
431 分岐部
432 処理部
440 ラインバッファ
450 プリンタ出力部

Claims (2)

  1. 未圧縮の電子データに圧縮処理を施して圧縮済の電子データを得るデータ圧縮部と、
    前記圧縮処理が所定の圧縮目標を達成する場合には、前記データ圧縮部によって得られる圧縮済の電子データを出力し、該圧縮処理が該圧縮目標を達成しない場合には、前記圧縮処理を経ない未圧縮の電子データを出力するデータ出力部とを備えたデータ圧縮装置、および
    前記データ圧縮装置から電子データを受け取る受取部と、
    前記受取部で受け取られた電子データが圧縮済の電子データである場合にはその電子データを伸張して所定の引き渡し先に引き渡し、前記受取部で受け取られた電子データが未圧縮の電子データである場合にはその電子データをそのまま前記引き渡し先に引き渡す引渡部とを備えたデータ伸張装置を備えたことを特徴とするデータ移送システム。
  2. 前記データ圧縮部が、前記圧縮処理を、一群の未圧縮の電子データそれぞれに対して逐次に施すものであり、
    前記データ出力部が、前記データ圧縮部による圧縮処理の結果を逐次に確認し、前記圧縮目標が完遂された場合には、該データ圧縮部で前記一群の未圧縮の電子データについて得られた圧縮済の電子データを出力し、前記圧縮目標を達成しない結果が生じた場合には、前記データ圧縮部に圧縮処理を中止させて前記一群の未圧縮の電子データを出力するものであることを特徴とする請求項1記載のデータ移送システム。
JP2004371698A 2004-12-22 2004-12-22 データ移送システム Withdrawn JP2006180243A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2004371698A JP2006180243A (ja) 2004-12-22 2004-12-22 データ移送システム
US11/295,637 US20060133678A1 (en) 2004-12-22 2005-12-07 Data transfer system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004371698A JP2006180243A (ja) 2004-12-22 2004-12-22 データ移送システム

Publications (1)

Publication Number Publication Date
JP2006180243A true JP2006180243A (ja) 2006-07-06

Family

ID=36595818

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004371698A Withdrawn JP2006180243A (ja) 2004-12-22 2004-12-22 データ移送システム

Country Status (2)

Country Link
US (1) US20060133678A1 (ja)
JP (1) JP2006180243A (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8085426B2 (en) * 2006-11-22 2011-12-27 Sharp Laboratories Of America, Inc. Intelligent page buffer allocation
JP5171458B2 (ja) * 2008-07-28 2013-03-27 キヤノン株式会社 印刷制御装置、印刷制御方法、及びコンピュータプログラム
US10042891B2 (en) 2015-05-08 2018-08-07 International Business Machines Corporation Windowing across operators in a streaming environment
US9853878B2 (en) * 2015-06-09 2017-12-26 International Business Machines Corporation Limiting data output from windowing operations
JP2017017644A (ja) * 2015-07-06 2017-01-19 キヤノン株式会社 画像処理装置、該装置の制御方法、印刷システム、該システムの制御方法、及びプログラム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5982937A (en) * 1996-12-24 1999-11-09 Electronics For Imaging, Inc. Apparatus and method for hybrid compression of raster data
US7242400B2 (en) * 2002-11-13 2007-07-10 Ati Technologies Ulc Compression and decompression of data using plane equations

Also Published As

Publication number Publication date
US20060133678A1 (en) 2006-06-22

Similar Documents

Publication Publication Date Title
US10200603B2 (en) Data processing system for transmitting compressed multimedia data over camera interface
JP3732702B2 (ja) 画像処理装置
EP2575355B1 (en) Digital image capturing method and apparatus
US20060133678A1 (en) Data transfer system
JP5614122B2 (ja) 画像データ復号装置
US10389912B2 (en) Image processing apparatus and method for controlling image processing apparatus
KR20050046104A (ko) 데이터 압축 및 복원 장치
JP2001332976A (ja) 画像処理装置及び画像処理方法
JP4525726B2 (ja) 復号装置、復号プログラム及び画像処理装置
JP4446389B2 (ja) 圧縮伸長モジュールのインターフェース装置
JP2009044547A (ja) 画像処理装置および画像処理方法
JP2006186556A (ja) データ供給装置
US8369637B2 (en) Image processing apparatus, image processing method, and program
JP2008068547A (ja) 画像形成装置
JP5732765B2 (ja) 画像データ復号装置
JP2011139165A (ja) 画像処理装置及びその処理方法
JP5654809B2 (ja) 画像処理装置、画像処理方法
JP3796235B2 (ja) イメージ圧縮及び復元方法
JP2004032588A (ja) 画像符号化装置および画像符号化プログラム
JP2006157119A (ja) カラー画像処理装置
JP2006205383A (ja) 画像形成装置及び制御プログラム
JP2521655B2 (ja) 通信装置
JP2002252771A (ja) 画像データ圧縮伸長装置及び方法
JP2011176651A (ja) 画像処理装置、画像処理方法、画像処理プログラム及び記録媒体
JP2006203412A (ja) カラー画像処理装置

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20061214

A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20080304