JP5407912B2 - Image processing apparatus, image processing method, image processing program, and recording medium - Google Patents
Image processing apparatus, image processing method, image processing program, and recording medium Download PDFInfo
- Publication number
- JP5407912B2 JP5407912B2 JP2010021217A JP2010021217A JP5407912B2 JP 5407912 B2 JP5407912 B2 JP 5407912B2 JP 2010021217 A JP2010021217 A JP 2010021217A JP 2010021217 A JP2010021217 A JP 2010021217A JP 5407912 B2 JP5407912 B2 JP 5407912B2
- Authority
- JP
- Japan
- Prior art keywords
- read
- compressed data
- descriptor
- data
- buffer
- 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
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
Description
本発明は、画像処理装置、画像処理方法、画像処理プログラム及び記録媒体に関し、詳細には、入力画像データを一旦可変長圧縮してメモリに保管した後に該メモリの圧縮データを伸長して出力する画像処理装置、画像処理方法、画像処理プログラム及び記録媒体に関する。 The present invention relates to an image processing apparatus, an image processing method, an image processing program, and a recording medium. Specifically, input image data is temporarily compressed in variable length and stored in a memory, and then the compressed data in the memory is decompressed and output. The present invention relates to an image processing apparatus, an image processing method, an image processing program, and a recording medium.
複写装置、プリンタ装置、ファクシミリ装置、複合装置等の画像処理装置においては、スキャナで読み取られた原稿の画像データをプリンタで画像形成出力する場合、以下のような処理手順によって行われる。すなわち、画像処理装置は、スキャナで読み取られて出力される画像データを圧縮器で可変長圧縮して圧縮データとし、CPU(Central Processing Unit )を介することなく、DMAC(Direct Memory Access Controller)によってメモリに転送して出力用の圧縮データとして保存する。その後、画像処理装置は、メモリ上の圧縮データをDMACで読み出して伸長器で伸長し、必要な画像処理を施して、プリンタで印刷出力する。 In an image processing apparatus such as a copying apparatus, a printer apparatus, a facsimile apparatus, or a composite apparatus, when image data of a document read by a scanner is formed and output by a printer, the following processing procedure is performed. In other words, the image processing apparatus compresses the image data read and output by the scanner into a variable length compressed by a compressor to be compressed data, and stores the data by a DMAC (Direct Memory Access Controller) without using a CPU (Central Processing Unit). And save it as compressed data for output. After that, the image processing apparatus reads the compressed data in the memory with the DMAC, decompresses it with the decompressor, performs necessary image processing, and prints it out with the printer.
このような一連の画像データ処理においては、スキャナの動作が一定の速度で行われるため、メモリへのデータ転送を一定速度で行う必要がある。 In such a series of image data processing, since the operation of the scanner is performed at a constant speed, it is necessary to transfer data to the memory at a constant speed.
そして、処理速度を向上させるために、上記スキャナで読み取られた画像データを圧縮してメモリに保存し、全ての圧縮データのメモリへの保存が完了する前に、メモリの圧縮データの読み出しを開始して、読み出した圧縮データを伸長してプロッタで印刷する処理を連続して行う逐次処理を行っている。この場合、画像データを圧縮してメモリに転送保存する圧縮転送処理とメモリの圧縮データを伸長してプロッタに転送する伸長転送処理を適切に連携させて全体の転送処理を速やかに行うことが、コピースピード、特に、1枚目のコピーであるファーストコピーの処理時間を短くする上で、重要である。 In order to improve the processing speed, the image data read by the scanner is compressed and stored in the memory, and before all the compressed data is stored in the memory, reading of the compressed data in the memory is started. Then, a sequential process is performed in which the read compressed data is decompressed and printed by the plotter. In this case, the entire transfer process can be performed quickly by appropriately linking the compression transfer process for compressing the image data and transferring and storing it in the memory and the decompression transfer process for expanding the compressed data in the memory and transferring it to the plotter. This is important for shortening the copy speed, particularly the processing time of the first copy, which is the first copy.
また、今日、画像データにおいては、印刷出力用のC(シアン)、M(マゼンタ)、Y(イエロー)、K(ブラック)のCMYK画像データだけでなく、転送や再利用が図られるため、R(レッド)、G(グリーン)、B(ブルー)のRGB画像データもメモリ上でハンドリングする必要がある。したがって、今日の画像処理装置においては、画像データの転送経路も複雑となってきており、コピー動作を行う場合の原稿の読み取りから印刷出力までのファーストコピー時間が長くなる原因の一つとなっている。 Also, today, image data can be transferred and reused in addition to CMYK image data of C (cyan), M (magenta), Y (yellow), and K (black) for print output. It is necessary to handle RGB image data of (red), G (green), and B (blue) on the memory. Therefore, in today's image processing apparatuses, the transfer path of image data has become complicated, which is one of the causes of a long first copy time from reading a document to printing output when performing a copy operation. .
また、入力される画像データを圧縮器で可変長圧縮してメモリに圧縮データとして保存する場合、圧縮器で圧縮される圧縮データのデータサイズが一定でないため、圧縮転送処理と伸長転送処理を連続して行う逐次処理においては、画像データの圧縮率に応じて圧縮器での処理時間にバラツキが発生し、ファーストコピー時間を保証することができなくなる。すなわち、DMACによる圧縮データの転送では、所定データ量の圧縮データがバッファに蓄積されると、メモリにDMA転送して書き込みを行い、メモリに書き込まれた圧縮データを所定量読み出してバッファに書き込んで、該バッファの圧縮データを伸長器に出力する。したがって、圧縮器の圧縮率によって圧縮器での処理時間にバラツキが発生すると、バッファに所定データ量の圧縮データが蓄積される時間にバラツキが発生し、圧縮転送と伸長転送を適切に連携させることができなくなる。 In addition, when the input image data is variable-length compressed by the compressor and saved as compressed data in the memory, the data size of the compressed data compressed by the compressor is not constant. In the sequential processing performed in this manner, the processing time in the compressor varies depending on the compression rate of the image data, and the first copy time cannot be guaranteed. That is, in the transfer of compressed data by DMAC, when a predetermined amount of compressed data is accumulated in the buffer, it is DMA-transferred and written to the memory, and a predetermined amount of compressed data written in the memory is read and written to the buffer. The compressed data in the buffer is output to the decompressor. Therefore, if there is a variation in the processing time in the compressor due to the compression rate of the compressor, there will be a variation in the time for which the predetermined amount of compressed data is stored in the buffer, and the compression transfer and decompression transfer will be linked appropriately. Can not be.
そして、従来、画像データを可変長圧縮して書き込み側バッファに蓄積した後に、メモリに転送して記憶し、記憶された圧縮データを読み出して伸長するときに、書き込み側バッファの蓄積量が第1の所定量に達したとき、または、第1の所定量に達する前に書き込み開始から所定時間経過したときのいずれか早いほうのタイミングで転送する技術が提案されている(特許文献1参照)。 Conventionally, after the image data is compressed in variable length and accumulated in the write side buffer, it is transferred to the memory and stored, and when the stored compressed data is read and decompressed, the accumulation amount in the write side buffer is the first. A technique has been proposed in which the transfer is performed at the earlier timing when the predetermined amount is reached or when a predetermined time has elapsed from the start of writing before reaching the first predetermined amount (see Patent Document 1).
しかしながら、上記従来技術にあっては、圧縮器で可変長圧縮された圧縮データが書き込み側バッファに所定量(転送パケットサイズ)蓄積されなくても、一定時間が経過すると、メモリへのデータ転送を行っているため、転送パケットサイズ(バンドサイズ)が蓄積される前に一定時間が経過して書き込み側バッファの圧縮データをメモリに転送すると、圧縮器内に圧縮途中のデータが残ることとなり、一定時間毎に一定の画像データをメモリに転送することができず、ファーストコピー時間のバラツキを完全に抑制することができないおそれがある。また、JPEGのように、可変長圧縮では、ファイルの終わりを表す終端符号EOI(End Of Identify)というマーカが一般的に付与され、JPEG規定では、終端符号EOI以降は無視して、何を記録してもよいこととなっているため、終端符号EOI以降にもデータ(冗長データ)が存在することがある。そして、従来技術にあっては、図19に示すように、斜線部分が有効圧縮データであるが、メモリから圧縮データを読み出す際に、ディスクリプタで設定されているデータ領域の全域を読み取るため、ディスクリプタで設定されているデータ領域のうち、図19に斜線で示す部分以外の終端符号EOI以降の空白部分にあるデータも読み出すこととなり、画像データを可変長圧縮する効果が希薄なものとなっていた。 However, in the above prior art, even if the compressed data compressed by the variable length by the compressor is not stored in the write side buffer in a predetermined amount (transfer packet size), the data transfer to the memory is performed after a certain period of time. Therefore, if a certain amount of time elapses before the transfer packet size (band size) is accumulated and the compressed data in the write buffer is transferred to the memory, the data being compressed will remain in the compressor. There is a possibility that constant image data cannot be transferred to the memory every time, and variations in the first copy time cannot be completely suppressed. Also, in variable-length compression, as in JPEG, a marker called end code EOI (End Of Identify) indicating the end of a file is generally added. In the JPEG standard, anything after the end code EOI is ignored and what is recorded. Therefore, data (redundant data) may exist after the end code EOI. In the prior art, as shown in FIG. 19, the shaded portion is effective compressed data. When reading compressed data from the memory, the entire data area set by the descriptor is read. In the data area set in Fig. 19, the data in the blank portion after the end code EOI other than the hatched portion in Fig. 19 is also read, and the effect of variable-length compression of the image data has been diminished. .
そこで、本発明は、記憶手段に書き込まれた圧縮データの読み出し時間を短縮しつつ、不要なデータの読み出しを禁止して、画像データを圧縮して記憶手段に転送する圧縮転送から該記憶手段の圧縮データを伸長側に転送する伸長転送の連携を適切に行い、転送処理時間を短縮する画像処理装置、画像処理方法、画像処理プログラム及び記録媒体を提供することを目的としている。 Therefore, the present invention reduces the time for reading compressed data written in the storage means, prohibits reading unnecessary data, compresses image data, and transfers the compressed data to the storage means. It is an object of the present invention to provide an image processing apparatus, an image processing method, an image processing program, and a recording medium that appropriately perform decompression transfer cooperation for transferring compressed data to the decompression side and shorten the transfer processing time.
本発明は、上記目的を達成するために、所定データ量を圧縮単位として可変長圧縮されて記憶手段に記憶された圧縮データを、伸長側からの次データ転送許可信号に応じてディスクリプタに基づいて該記憶手段から該圧縮単位毎に読み出して該伸長側に転送する場合に、該記憶手段から読み出してバッファへ書き込んだ圧縮データをカウントして、該圧縮データサイズがディスクリプタで指定されている指定データサイズになると出力されるライトカウント終了通知と、前記次データ転送許可通知のいずれかが発生すると、次のディスクリプタと圧縮データの記憶手段からの読み出しを行うことを特徴としている。 In order to achieve the above-mentioned object, the present invention uses compressed data stored in the storage means after being variable-length compressed with a predetermined data amount as a compression unit, based on a descriptor in accordance with a next data transfer permission signal from the decompression side. When reading from the storage unit for each compression unit and transferring to the decompression side, the compressed data read from the storage unit and written to the buffer is counted, and the specified data whose compressed data size is specified by the descriptor When either the write count end notification output when the size is reached or the next data transfer permission notification is generated, the next descriptor and compressed data are read from the storage means.
また、本発明は、前記伸長側が、前記圧縮単位毎の前記圧縮データの終端に付加されている終端信号に基づいて前記次データ転送許可信号を生成することを特徴としてもよい。 Further, the present invention may be characterized in that the decompression side generates the next data transfer permission signal based on a termination signal added to a termination of the compressed data for each compression unit.
さらに、本発明は、前記ライトカウント終了通知が発生すると、前記バッファから読み出した前記圧縮データのカウント値が前記指定データサイズになると出力されるリードカウント終了信号が発生するのを待って、次の前記ディスクリプタと前記圧縮データの読み出しを行うことを特徴としてもよい。 Further, the present invention waits for the generation of a read count end signal that is output when the count value of the compressed data read from the buffer reaches the specified data size when the write count end notification is generated. The descriptor and the compressed data may be read out.
また、本発明は、前記ライトカウント終了通知が発生すると、前記次データ転送許可信号が入力されるのを待って、次の前記ディスクリプタと前記圧縮データの読み出しを行うことを特徴としてもよい。 Further, the present invention may be characterized in that when the write count end notification is generated, the next descriptor and the compressed data are read after waiting for the next data transfer permission signal to be input.
さらに、本発明は、前記伸長手段が、前記次データ転送許可信号として、前記伸長手段が前記バッファリード制御手段から送られてきた前記圧縮データを一時保管する内部バッファが空になったことを示すバッファエンプティ信号、または/及び、前記圧縮データの伸長処理が終了したことを示す動作終了信号を出力することを特徴としてもよい。 Furthermore, the present invention shows that the decompression means has emptied the internal buffer in which the decompression means temporarily stores the compressed data sent from the buffer read control means as the next data transfer permission signal. A buffer empty signal and / or an operation end signal indicating that the decompression process of the compressed data has ended may be output.
本発明によれば、記憶手段から読み出した圧縮データのデータ量を監視することで、該記憶手段に書き込まれた圧縮データの読み出し時間を短縮することができ、画像データを圧縮して記憶手段に転送する圧縮転送から該記憶手段の圧縮データを伸長側に転送する伸長転送の連携を適切に行って、転送処理時間を短縮することができる。 According to the present invention, by monitoring the data amount of the compressed data read from the storage means, it is possible to shorten the read time of the compressed data written in the storage means, and compress the image data to the storage means. The transfer processing time can be shortened by appropriately coordinating the decompression transfer in which the compressed data in the storage means is transferred from the compressed transfer to the decompression side.
以下、本発明の好適な実施例を添付図面に基づいて詳細に説明する。なお、以下に述べる実施例は、本発明の好適な実施例であるので、技術的に好ましい種々の限定が付されているが、本発明の範囲は、以下の説明によって不当に限定されるものではなく、また、本実施の形態で説明される構成の全てが本発明の必須の構成要件ではない。 Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. In addition, since the Example described below is a suitable Example of this invention, various technically preferable restrictions are attached | subjected, However, The range of this invention is unduly limited by the following description. However, not all the configurations described in the present embodiment are essential constituent elements of the present invention.
図1〜図7は、本発明の画像処理装置、画像処理方法、画像処理プログラム及び記録媒体の第1実施例を示す図であり、図1は、本発明の画像処理装置、画像処理方法、画像処理プログラム及び記録媒体の第1実施例を適用した複合装置1の要部ブロック構成図である。
1 to 7 are diagrams showing a first embodiment of an image processing device, an image processing method, an image processing program, and a recording medium according to the present invention. FIG. 1 shows an image processing device, an image processing method according to the present invention, 1 is a block diagram of a main part of a
図1において、複合装置1は、コントローラ2とエンジン部3を備えており、コントローラ2とエンジン部3とは、ビデオI/Fにより接続されている。
In FIG. 1, the
エンジン部3は、スキャナ11とプロッタ12を備えており、原稿の画像を読み取って、コントローラ2で画像処理された画像データに基づいてプロッタ12で用紙に画像を印刷出力する。スキャナ11は、例えば、CCD(Charge Coupled Device )やCMOS(Complementary Metal Oxide Semiconductor; 相補型金属酸化膜半導体)を利用したイメージスキャナ等が利用されており、一般に、ADF(自動原稿送り装置)を備えている。ADFには、複数枚の原稿がセットされ、ADFは、セットされた原稿を1枚ずつスキャナ11の原稿読み取り位置に送給する。スキャナ11は、ADFから搬送されてきた原稿を走査し、原稿の画像を所定の解像度で読み取って、RGBの画像信号をデジタル変換した後、コントローラ2に出力する。
The
プロッタ12は、所定の印刷方式、例えば、電子写真方式、インク噴射方式のプロッタが用いられており、カラー、または、モノクロで用紙に画像を印刷出力する。 The plotter 12 uses a predetermined printing system, for example, an electrophotographic system or an ink ejection system plotter, and prints and outputs an image on paper in color or monochrome.
なお、複合装置1は、画像データの入力機能としては、スキャナ11に限るものではなく、例えば、ファクシミリ通信によってファクシミリデータを受信したり、ネットワークに接続されたコンピュータ等の情報処理装置から送られてきた画像データを受信したりして、入力画像データとしてもよい。また、複合装置1は、画像データの出力機能としても、プロッタ12で用紙に印刷出力するだけでなく、ファクシミリ機能によってファクシミリ送信出力したり、ネットワークに接続された情報処理装置や他の複合装置等に画像データを送信出力してもよい。
The
コントローラ2は、ASIC(Application Specific Integrated Circuit)21、ASIC22、ハードディスク23、CPU(Central Processing Unit )24、操作部25及びメモリ26等を備えており、複合装置1の制御と描画及び通信を制御するとともに、操作部25からの操作入力を制御する。
The
ASIC21は、画像圧縮/伸長及び画像処理のハードウェア要素を有する画像処理用のIC(Integrated Circuit:集積回路)であり、ハードディスク23、メモリ26及びCPU24を接続するブリッジの役割も有している。ASIC21は、内部レジスタ31、スキャナI/F32、画像伸長器33及び画像処理器34等を備えており、内部レジスタ31は、CPU24によって処理パラメータ等のデータが設定される。
The
スキャナI/F32は、圧縮器(圧縮手段)41及びWDMAC(Write Direct Memory Access Controller)42等を備えており、スキャナ11から入力される画像データを所定のデータ量(圧縮単位)毎に圧縮器41によってJPEG等の可変長圧縮方式で可変長圧縮して、WDMAC42によってCPU24を介することなく、メモリ26にDMA転送して圧縮データとしてデータ量を少なくして書き込む。WDMAC42は、CPU24がメモリ26上に書き込んだディスクリプタ(DPR)を参照して、メモリ26に書き込む圧縮データ(符号データ)のデータ量、書き込むアドレスを管理し、CPU24の制御を介することなく、メモリ26にメモリアクセスを行って、圧縮データを書き込む。
The scanner I /
画像伸長器33は、伸長器43及びRDMAC(Read Direct Memory Access Controller)44等を備えており、RDMAC44は、CPU24がメモリ26上に書き込んだディスクリプタを参照して、CPU24を介することなく、メモリ26上の圧縮データをリードして、伸長器43に渡す。伸長器(伸長手段)43は、RDMAC44のリードした圧縮データを元の画像データに伸長(復号)し、伸長後の画像データを、画像処理器34へ出力する。そして、RDMAC44は、メモリ26上のデータを読み込む際、メモリ26にリードコマンドを発行した後、該リードコマンドに対するリードデータ応答を待たずに次のリードコマンドを発行するリードコマンド先投げを行うことで、メモリリード時間を短縮させる。
The
画像処理器34は、画像処理部45及びWDMAC46等を備えており、画像処理部45は、画像伸長器33で伸長された画像データに対して、印刷出力するのに必要な所定の画像処理、例えば、誤差拡散やガンマ変換等の画像処理を行う。WDMAC46は、CPU24がメモリ26上に書き込んだディスクリプタを参照して、画像処理部45が画像処理したメモリ26に書き込む画像データのデータ量、書き込むアドレスを管理し、CPU24の制御を介することなく、メモリ26にメモリアクセスを行って、画像データを書き込む。
The
ASIC22は、メモリ26上にある画像データをプロッタ12へ転送する際のプロッタ12との印刷タイミングを制御する機能を有したICであり、メモリ26やCPU24を接続するブリッジの役割も持っている。ASIC22は、内部レジスタ47及びプロッタI/F48を有しており、プロッタI/F48は、RDMAC49を有している。内部レジスタ47は、CPU24によって処理パラメータ等のデータが設定される。プロッタI/F48のRDMAC49は、メモリ26上の画像データを読み込む際に、リードコマンド発行後、リードデータ応答を待たずに次のリードコマンドを発行するリードコマンド先投げを行うことで、メモリリード時間の短縮を行う。
The
操作部25は、ユーザからの入力操作を受け付けてユーザに対して報知する情報を表示する機能を有し、メカニカルキーやタッチパネルキー等からなるテンキー、文字入力キー、スタートキー、ストップキー等の操作キーを有するとともに、操作キーから操作入力される情報や複合装置1の動作状態及び時刻等を表示する液晶ディスプレイ(LCD)等の表示部を有している。
The
ハードディスク23は、画像データ、プログラム、フォントデータ及びフォームデータ等をCPU24の制御下で保存するが、記憶手段としては、ハードディスク23に限るものではなく、これらの情報を記憶することができる不揮発性の記憶手段、例えば、光ディスク等であってもよい。
The
メモリ(記憶手段)26は、RAM(Random Access Memory)等で構成され、画像データバッファ、圧縮データバッファとして用いられる。 The memory (storage means) 26 is constituted by a RAM (Random Access Memory) or the like, and is used as an image data buffer and a compressed data buffer.
CPU24は、図示しないROM(Read Only Memory)やハードディスク23に記憶されているプログラムに従ってASIC21、ASIC22の内部レジスタ31、47等へのデータ設定を行って、エンジン部3とともにコントローラ2の動作を制御し、複合装置1としての基本処理を実行するとともに、本発明の画像処理方法を実行する。また、CPU24は、ASIC21とASIC22のメモリアクセスのアービトレーションも行う。
The
上記画像伸長器33のRDMAC(リードDMA制御手段)44は、図2に示すようにブロック構成されており、DPRリード制御部51、メモリI/F52、ライトトグル制御部53、リードトグル制御部54、2つのバッファ55a、55b及びレジスタ56等を備えている。
The RDMAC (read DMA control means) 44 of the
DPRリード制御部(ディスクリプタリード制御手段)51は、メモリ26上にCPU24によって書き込まれたディスクリプタ(DPR)をリードして、ディスクリプタ情報(SA/SIZE)をリードトグル制御部54、ライトトグル制御部53、メモリI/F52へ分配し、また、後述するように、ライトトグル制御部53のライトカウント終了通知または伸長器43からの次バンド転送許可信号(次データ転送許可信号)NEXTが通知されると、ディスクリプタのNDPに記載されているアドレスをリードアクセスする。また、DPRリード制御部51は、バッファ55a、55bの空き状況に基づいてディスクリプタのDPRリードコマンドの先投げ個数を制御する。すなわち、伸長器43は、可変長圧縮データの終端を示す終端符号EOIを検知すると、次バンド転送許可信号NEXTをRDMAC44のリードトグル制御部54及びDPRリード制御部51に出力する。
The DPR read control unit (descriptor read control means) 51 reads the descriptor (DPR) written by the
なお、ディスクリプタは、図3に示すようにフォーマット構成されており、各4byte(バイト)のNDP(Next Descriptor Pointer)、SA(Start Address)、SIZE、Option等で構成されていて、CPU24によってメモリ26上に書き込まれる。SAは、RDMAC44がリードする圧縮データの先頭アドレスが記載され、SIZEは、転送する圧縮データのデータ量が記載される。なお、本実施例の複合装置1では、圧縮データが可変長圧縮データであるため、データ量は、不明であるが、圧縮器41の最悪圧縮率分のデータサイズがSIZEに記載される。NDPは、次ディスクリプタのアドレスが記載され、NDP=0の場合は、次のディスクリプタが無いことを示している。MODEは、DMACのモード設定が記載される。
The descriptor has a format configuration as shown in FIG. 3, and is composed of a 4-byte (byte) NDP (Next Descriptor Pointer), SA (Start Address), SIZE, Option, and the like. Written on. SA describes the start address of the compressed data read by the
メモリI/F(読み出し手段)52は、アドレス生成部52aを備えており、アドレス生成部52aは、DPRリード制御部51からのDPRアドレス(ディスクリプタアドレス)またはライトトグル制御部53からのラインカウント値に基づいてメモリアクセスするメモリ26のアドレスを生成する。メモリI/F52は、アドレス生成部52aの生成したアドレスを用いてリードコマンドを発行する。また、メモリI/F52は、発行したリードコマンドに応答するリードデータを、DPRリード制御部51またはライトトグル制御部53へ転送する。
The memory I / F (reading unit) 52 includes an
ライトトグル制御部(バッファライト制御手段)53は、ライトカウンタ53aを備えており、ライトカウンタ(ライトカウント手段)53aは、バッファ55a、55bに書き込む圧縮データをカウントする。ライトトグル制御部53は、ライトカウンタ53aのカウント結果であるライトカウント値に基づいて、圧縮データを書き込むバッファ55a、55bをトグルに制御して圧縮データのバッファ55a、55bの書き込みを行うとともに、バッファ55a、55bの空き状況をDPRリード制御部51へ通知する。ライトカウンタ53aは、初期値をSIZEとしてバッファ55a、55bへ書き込んだデータ量だけダウンカウントし、カウンタ値が「0」になると、DPRリード制御部51へライトカウント終了通知を出力(アサート)する。
The write toggle control unit (buffer write control means) 53 includes a write counter 53a, and the write counter (write count means) 53a counts compressed data to be written to the
リードトグル制御部54は、バッファ55a、55bの読み込み制御及びバッファ55a、55bから読み込む圧縮データをカウントするリードカウンタ54aを備えており、リードカウンタ54aは、初期値をSIZEとして、バッファ55a、55bから読み込んだ圧縮データのデータ量だけダウンカウントする。リードトグル制御部54は、カウント中は、伸長器43に出力しているデータ有効信号dma_aliveをアサートし、カウンタ値が「0」になると、データ有効信号dma_aliveをネゲートするとともに、EOB(End of Block)パルスを後段の伸長器43に通知する。また、リードトグル制御部54は、次バンド転送許可信号NEXTがアサートされると、データ有効信号dma_aliveをネゲートし、リードカウンタ54aのリードカウントが「0」になる。この際、EOBパルスは後段へ出力しない。
The read
バッファ55a、55bは、1リードコマンド分のバッファ容量を有しており、リードコマンドの先投げ個数と同じ個数のバッファ55a、55bを有する。本実施例の複合装置1は、2個のバッファ55a、55bを有しており、リードコマンド先投げ個数は2個である。
The
そして、本実施例の複合装置1は、ROM、EEPROM(Electrically Erasable and Programmable Read Only Memory )、EPROM、フラッシュメモリ、フレキシブルディスク、CD−ROM(Compact Disc Read Only Memory )、CD−RW(Compact Disc Rewritable )、DVD(Digital Versatile Disk)、SD(Secure Digital)カード、MO(Magneto-Optical Disc)等のコンピュータが読み取り可能な記録媒体に記録されている本発明の画像処理方法を実行する画像処理プログラムを読み込んでROM等に導入することで、後述するメモリ26に書き込まれた圧縮データの読み出し時間を短縮して、画像を圧縮してメモリ26に転送する圧縮転送から該メモリ26の圧縮データを伸長器43に転送する伸長転送の連携を適切に行い、転送処理時間を短縮する画像処理方法を実行する画像処理装置として構築されている。この画像処理プログラムは、アセンブラ、C、C++、C#、Java(登録商標)等のレガシープログラミング言語やオブジェクト指向ブログラミング言語等で記述されたコンピュータ実行可能なプログラムであり、上記記録媒体に格納して頒布することができる。
The
次に、本実施例の作用を説明する。本実施例の複合装置1は、メモリ26からのダミーデータの読み込みを防止しつつ圧縮データの読み出しを高速に行って、画像データを圧縮してメモリ26に転送する圧縮転送からメモリ26の圧縮データを伸長器43に転送する伸長転送の連携を適切に行って、転送処理時間を短縮する。
Next, the operation of this embodiment will be described. The
すなわち、一定の速度で入力される入力画像データを可変長圧縮してメモリ26に転送保管し、メモリ26上の可変長圧縮データを読み出して伸長して出力する場合、入力画像データを可変長圧縮してメモリ26へ転送する圧縮転送処理に対して、メモリ26内の可変長圧縮データを読み出して伸長する伸長転送処理よりもバスの使用権を優先的に与えてデータ転送を行う。したがって、圧縮転送が伸長転送を追い抜いて適切な後段の処理を行うことができなくなるおそれがある。また、RDMAC44は、終端符号EOI以降のディスクリプタで指定されているメモリ領域に空きがあるときには、該空き領域のダミーデータ(冗長データ)を読み込んでしまうが、このダミーデータの読み込みを防止して、処理速度を向上させることが、上記転送速度の向上に有効である。
That is, when input image data input at a constant speed is variable-length compressed and transferred and stored in the memory 26, when the variable-length compressed data on the memory 26 is read out and decompressed and output, the input image data is variable-length compressed. For the compression transfer processing to transfer to the memory 26, data transfer is performed by giving the right to use the bus preferentially over the decompression transfer processing for reading and expanding the variable length compressed data in the memory 26. Therefore, there is a possibility that the compression transfer cannot overtake the decompression transfer and cannot perform appropriate subsequent processing. The
そこで、本実施例の複合装置1は、RDMAC44によるメモリ26の可変長圧縮データの読み出しにおいて、ダミーデータの読み込みを防止して圧縮データの読み出し時間を短縮して、圧縮転送処理と伸長転送処理を適切に連携させ、転送処理全体の処理速度の向上を図っている。
Therefore, in the reading of variable length compressed data from the memory 26 by the
すなわち、画像伸長器33は、RDMAC44が、メモリ26上のディスクリプタ(DPR)を参照して、リードコマンドを発行することで、メモリ26上の圧縮データの読み込みを行って伸長器43に出力して、伸長器43で圧縮データの伸長を行う。そして、このRDMAC44は、メモリ26のリード処理をDPRリード制御部51が行っており、図4に示すようにディスクリプタリード制御処理を行う。すなわち、DPRリード制御部51は、RDMAC44が起動されると、レジスタ56にCPU24によって設定された先頭のディスクリプタのアドレスである初期値のディスクリプタポインタ(DPRポインタ)をレジスタ56からロードし(ステップS101)、メモリ26の該初期値のディスクリプタポインタ(DPRポインタ)に設定されているバンドのアドレスを読み取って内部レジスタに設定する(ステップS102)。
That is, in the
次に、DPRリード制御部51は、初期値のディスクリプタポインタ(DPRポインタ)に記載されているアドレスをディスクリプタアドレスバス(DPRアドレスバス)に設定し、メモリI/F52にディスクリプタリードトリガ(DPRリードトリガ)を発行する(ステップS104)。メモリI/F52は、ステップS103で設定されたディスクリプタアドレスのリードコマンドをメモリ52に発行し、DPRリード制御部51は、発行したリードコマンドに対応するディスクリプタリードデータ(DPRリードデータ)の応答を待つ(ステップS105)。
Next, the DPR read
DPRリード制御部51は、ディスクリプタリードデータを受け取ると、ディスクリプタ情報をRDMAC44の必要な内部制御部に分配する(ステップS106)。すなわち、DPRリード制御部51は、ディスクリプタ情報のうち、SA情報をメモリI/F52へ転送し、SIZE情報をライトトグル制御部53とリードトグル制御部54へ転送する。
When receiving the descriptor read data, the DPR read
DPRリード制御部51は、ディスクリプタ情報(SA1/SIZE1/NDP1/MODE1)をDPRリード制御部51内部で保持(ラッチ)し(ステップS107)、ライトカウント終了通知または次バンド転送許可信号NEXTの通知を待つ(ステップS108)。
The DPR read
DPRリード制御部51は、ライトカウント終了通知または次バンド転送許可信号NEXTの通知を受け取ると、ディスクリプタ情報のNDPを確認する(ステップS109)。
When receiving the write count end notification or the next band transfer permission signal NEXT notification, the DPR read
DPRリード制御部51は、ステップS109で、ディスクリプタ情報のNDPが「0」以外であると、全ての圧縮ディスクリプタの終端ではないと判断して、NDPが示しているアドレスを内部レジスタに設定し(ステップS110)、ステップS104に戻って、ディスクリプタリードトリガ(DPRリードトリガ)のメモリI/F52への発行から上記同様に処理する(ステップS104〜S109)。
In step S109, if the NDP of the descriptor information is other than “0”, the DPR read
そして、ステップS109で、ディスクリプタ情報のNDPが「0」であると、DPRリード制御部51は、全圧縮データの終了であると判断して、処理を終了する。
In step S109, if the NDP of the descriptor information is “0”, the DPR read
すなわち、図5に示すようにメモリ26に圧縮データとディスクリプタ(DPR)が記録されている場合、すなわち、ディスクリプタで指定されているデータサイズよりも、可変長圧縮データのデータサイズが小さく、終端符号EOI以降にDPRサイズまでに冗長データが存在する場合、図6にRDMAC44のタイミング図を示すように、DPRリード制御部51は、タイミングTaにおいて、伸長器43が終端符号EOIを検知して次バンド転送許可信号NEXTをRDMAC44のリードトグル制御部54とDPRリード制御部51に出力して、DPRリード制御部51がこの次バンド転送許可信号NEXTを受信すると、矢印で示すように、次バンドのディスクリプタをリード(DPRリード)する。なお、図6において、A_Dataは、RDMAC44がメモリ26から読み取るデータを示しており、B_Dataは、RDMAC44から伸長器43に出力するデータを示している。
That is, as shown in FIG. 5, when the compressed data and descriptor (DPR) are recorded in the memory 26, that is, the data size of the variable-length compressed data is smaller than the data size specified by the descriptor, the terminal code When redundant data exists up to the DPR size after the EOI, as shown in the timing diagram of the
したがって、RDMAC44は、終端符号EOI以降のダミーデータのリードを防止することができ、リード処理のパフォーマンスを向上させることができる。このとき、リードトグル制御部54は、データ有効信号dma_aliveをネゲートするとともに、EOBパルスを後段の伸長器43に通知する。
Therefore, the
なお、従来は、ディスクリプタリード制御部が、ライトトグル制御部からのライトカウント終了通知のみを検知していたため、RDMACは、図7に示すように、終端符号EOI以降のダミーデータ(冗長データ)をリードしてしまい、可変長圧縮の効果が希薄なものとなっていた。 Conventionally, since the descriptor read control unit detects only the write count end notification from the write toggle control unit, the RDMAC stores dummy data (redundant data) after the end code EOI as shown in FIG. As a result, the effect of variable length compression was diminished.
このように、本実施例の複合装置1は、所定データ量を圧縮単位として可変長圧縮されてメモリ26に記憶された圧縮データを、伸長器43からの次バンド転送許可信号(次データ転送許可信号)NEXTに応じてディスクリプタに基づいてメモリ26からバンド(圧縮単位)毎に読み出して伸長器43に転送する場合に、RDMAC44のライトトグル制御部53が、メモリ26から読み出したバンドの圧縮データをバッファ55a、55bに書き込み、ライトカウンタ53aが、該圧縮データのバッファ55a、55bへの書き込みを完了すると書き込み完了通知をDPRリード制御部51に発行して、ディスクリプタリード制御部51が、バッファ55a、55bに書き込まれた圧縮データを読み出して伸長器43へ出力するとともに、バッファ55a、55bに書き込んだ圧縮データをライトカウンタ53aによってカウントして、ライトカウンタ53aのカウントした圧縮データサイズがディスクリプタで指定されている指定データサイズになると、ライトカウント終了通知をDPRリード制御部51に出力し、DPRリード制御部51が、このライトカウント終了通知と伸長器43からの次バンド転送許可信号NEXTのいずれかが入力されると、次のDPRリードトリガをメモリI/F52に発行して、次のバンドのディスクリプタと圧縮データのメモリ26からの読み出しを行っている。
As described above, the
したがって、メモリ26から読み出した圧縮データのデータ量を監視することで、メモリ26に書き込まれた圧縮データの読み出し時間を短縮することができ、画像データを圧縮してメモリ26に転送する圧縮転送からメモリ26の圧縮データを伸長器43に転送する伸長転送の連携を適切に行って、転送処理時間を短縮することができる。
Therefore, by monitoring the data amount of the compressed data read from the memory 26, it is possible to shorten the read time of the compressed data written in the memory 26. From the compression transfer in which the image data is compressed and transferred to the memory 26. The transfer processing time can be shortened by appropriately coordinating the decompression transfer for transferring the compressed data in the memory 26 to the
また、本実施例の複合装置1は、伸長器43が、圧縮単位毎の圧縮データの終端に付加されている終端符号EOIに基づいて次データ転送許可信号を生成している。
In the
したがって、終端符号EOI以降に付加されているダミーデータ(冗長データ)を読み取ることを防止することができ、圧縮データの読み取り速度をより一層向上させることができる。 Accordingly, reading of dummy data (redundant data) added after the end code EOI can be prevented, and the reading speed of the compressed data can be further improved.
図8〜図13は、本発明の画像処理装置、画像処理方法、画像処理プログラム及び記録媒体の第2実施例を示す図であり、図8は、本発明の画像処理装置、画像処理方法、画像処理プログラム及び記録媒体の第2実施例を適用した複合装置1の要部ブロック構成図である。
8 to 13 are diagrams showing a second embodiment of the image processing apparatus, the image processing method, the image processing program, and the recording medium of the present invention, and FIG. 8 shows the image processing apparatus, the image processing method, It is a principal block block diagram of the
なお、本実施例は、上記第1実施例の複合装置1と同様の複合装置に適用したものであり、本実施例の説明においては、第1実施例の複合装置1と同様の構成部分には、同一の符号を付して、その説明を省略または簡略化するとともに、図示しない部分についても、第1実施例の説明で用いた符号をそのまま用いて説明する。
The present embodiment is applied to a composite apparatus similar to the
図8において、RDMAC(リードDMA制御手段)60は、第1実施例のRDMAC44と同様のメモリI/F52、ライトトグル制御部53、リードトグル制御部54、バッファ55a、55b及びレジスタ56等を備えているとともに、DPRリード制御部(ディスクリプタリード制御手段)61を備えている。
In FIG. 8, an RDMAC (read DMA control means) 60 includes a memory I /
リードトグル制御部54は、第1実施例と同様に、リードカウンタ54aを備えており、リードカウンタ54aは、上述のように、初期値をディレクトリのSIZEに設定されているデータサイズとして、バッファ55a、55bから読み込んだ圧縮データのデータ量だけダウンカウントする。リードトグル制御部54は、リードカウンタ54aがカウント中は、伸長器43に出力しているデータ有効信号dma_aliveをアサートし、カウンタ値が「0」になると、データ有効信号dma_aliveをネゲートするとともに、EOBパルスを後段の伸長器43に通知する。また、リードトグル制御部54は、次バンド転送許可信号NEXTがアサートされると、データ有効信号dma_aliveをネゲートし、リードカウンタ54aのリードカウントが「0」になる。この際、EOBパルスは後段へ出力しない。
As in the first embodiment, the read
そして、リードカウンタ54aは、カウンタ値が「0」になってカウントを終了すると、リードカウント終了通知をDPRリード制御部61に出力する。 The read counter 54 a outputs a read count end notification to the DPR read control unit 61 when the counter value reaches “0” and the count is completed.
DPRリード制御部61は、第1実施例のDPRリード制御部51と同様に、メモリ26上にCPU24によって書き込まれたディスクリプタをリードして、ディスクリプタ情報(SA/SIZE)をリードトグル制御部54、ライトトグル制御部53、メモリI/F52へ分配し、また、ライトトグル制御部53のライトカウント終了通知、上記リードトグル制御部54のリードカウンタ54aからのリードカウント終了通知または伸長器43からの次バンド転送許可信号NEXTが通知されると、ディスクリプタのNDPに記載されているアドレスをリードアクセスする。また、DPRリード制御部61は、バッファ55a、55bの空き状況に基づいてディスクリプタのDPRリードコマンドの先投げ個数を制御する。
Similar to the DPR read
また、メモリI/F52は、第1実施例と同様に、アドレス生成部52aが、DPRリード制御部61のDPRアドレス、または、ライトトグル制御部53のライトカウント値を元にメモリアクセスするアドレスを生成し、該生成したアドレスを用いてリードコマンドを発行する。また、メモリI/F52は、リードコマンドの応答するメモリ26からのリードデータをDPRリード制御部61またはライトトグル制御部53へ転送する。
Similarly to the first embodiment, the memory I /
ライトトグル制御部53は、第1実施例と同様に、バッファ55a、55bの書き込み制御及びバッファに書き込むデータをカウントするライトカウンタ53aを有し、ライトカウンタ53aのカウント結果であるライトカウント値に基づいて、圧縮データを書き込むバッファ55a、55bをトグルに制御して圧縮データのバッファ55a、55bの書き込みを行うとともに、バッファ55a、55bの空き状況をDPRリード制御部51へ通知する。ライトカウンタ53aは、初期値をSIZEとしてバッファ55a、55bへ書き込んだデータ量だけダウンカウントし、カウンタ値が「0」になると、DPRリード制御部51へライトカウント終了通知を出力(アサート)する。
Similar to the first embodiment, the write
次に、本実施例の作用を説明する。本実施例の複合装置1は、リードトグル制御部54のリードカウンタ54aからのリードカウント終了通知を用いて、DPRリード制御部61がディスクリプタのリードアクセスを制御することで、メモリ26の圧縮データのデータサイズとディスクリプタの指定データサイズが一致する場合にも、適切に圧縮ディスクリプタの読み取りを行う。
Next, the operation of this embodiment will be described. In the
すなわち、DPRリード制御部61は、図9及び図10に示すように、ディスクリプタリード処理を実行する。なお、図9及び図10において、第1実施例の図4に示したディスクリプタリード処理と同様の処理ステップには、同一のステップナンバを付与して、その説明を簡略化する。DPRリード制御部61は、RDMAC60が起動されると、図9に示すように、レジスタ56にCPU24によって設定された先頭のディスクリプタのアドレスである初期値のディスクリプタポインタ(DPRポインタ)をレジスタ56からロードし(ステップS101)、メモリ26の該初期値のディスクリプタポインタ(DPRポインタ)に設定されているバンドのアドレスを読み取って内部レジスタに設定する(ステップS102)。次に、DPRリード制御部61は、初期値のディスクリプタポインタ(DPRポインタ)に記載されているアドレスをディスクリプタアドレスバス(DPRアドレスバス)に設定し、メモリI/F52にディスクリプタリードトリガ(DPRリードトリガ)を発行する(ステップS104)。メモリI/F52は、ステップS103で設定されたディスクリプタアドレスのリードコマンドをメモリ52に発行し、DPRリード制御部61は、発行したリードコマンドに対応するディスクリプタリードデータ(DPRリードデータ)の応答を待つ(ステップS105)。DPRリード制御部61は、ディスクリプタリードデータを受け取ると、ディスクリプタ情報をRDMAC60の必要な内部制御部に分配し(ステップS106)、ディスクリプタ情報(SA1/SIZE1/NDP1/MODE1)をDPRリード制御部61内部で保持(ラッチ)する(ステップS107)。
That is, the DPR read control unit 61 executes a descriptor read process as shown in FIGS. 9 and 10, the same step number is assigned to the same processing step as the descriptor read processing shown in FIG. 4 of the first embodiment, and the description is simplified. When the
DPRリード制御部61は、ディスクリプタ情報をラッチすると、図10に示すように、ライトカウント終了通知と次バンド転送許可信号NEXTの通知のいずれかを受け取るまで待ち(ステップS201)、次バンド転送許可信号NEXTの通知があると、ディスクリプタ情報のNDPを確認する(ステップS109)。 When the DPR read control unit 61 latches the descriptor information, as shown in FIG. 10, the DPR read control unit 61 waits until receiving either the write count end notification or the next band transfer permission signal NEXT notification (step S201), and the next band transfer permission signal. When there is a notification of NEXT, the NDP of the descriptor information is confirmed (step S109).
ステップS201で、ライトカウント終了通知があると、DPRリード制御部61は、SIZE分の圧縮データ、すなわち、ディスクリプタで指定されている指定データサイズ分の圧縮データをメモリ26からメモリリードしたと判断して、リードカウンタ54aからのリードカウント終了通知を待ち(ステップS202)、リードカウント終了通知を受け取ると、バッファ55a、55bは空になったと判断して、次のバンドの圧縮データをリードするために、ディスクリプタ情報のNDPを確認する(ステップS109)。
If there is a write count end notification in step S201, the DPR read control unit 61 determines that the compressed data for SIZE, that is, the compressed data for the designated data size specified by the descriptor has been read from the memory 26. In response to the read count end notification from the read
ステップS109で、ディスクリプタ情報のNDPが「0」以外であると、DPRリード制御部51は、全ての圧縮ディスクリプタの終端ではないと判断して、NDPが示しているアドレスを内部レジスタに設定し(ステップS110)、図9のステップS104に戻って、ディスクリプタリードトリガ(DPRリードトリガ)のメモリI/F52への発行から上記同様に処理する(ステップS104〜S107、S201、S202、S109)。
In step S109, if the NDP of the descriptor information is other than “0”, the DPR read
そして、ステップS109で、ディスクリプタ情報のNDPが「0」であると、DPRリード制御部51は、全圧縮データの終了であると判断して、処理を終了する。
In step S109, if the NDP of the descriptor information is “0”, the DPR read
すなわち、図11に示すようにメモリ26に圧縮データとディスクリプタ(DPR)が記録されている場合、すなわち、ディスクリプタで指定されているデータサイズと、可変長圧縮データのデータサイズが同じで、終端符号EOI以降に冗長データが存在しない場合、図12に示すように、圧縮データの終端符号EOI以降のダミーデータ(冗長データ)をリードしないだけであると、ファーストコピーの時間を短縮することはできるが、圧縮データのバンド1の最終データが終端符号EOIであると、バンド2のリード途中で次バンド(バンド3)へ飛んでしまうおそれがある。
That is, as shown in FIG. 11, when the compressed data and descriptor (DPR) are recorded in the memory 26, that is, the data size specified by the descriptor and the data size of the variable length compressed data are the same, and the end code When there is no redundant data after the EOI, as shown in FIG. 12, the first copy time can be shortened if only dummy data (redundant data) after the end code EOI of the compressed data is not read. If the final data of the
ところが、上述のように、DPRリード制御部61が、ステップS201で、リードトグル制御部54のリードカウンタ54aからのライトカウント終了通知があったときに、図13に示すように、次バンド転送許可信号NEXTがアサートされない場合、ステップS202で、リードカウント終了通知を待つことで、バッファ55a、55bが空になるまで、次バンドのディスクリプタをリードしない。したがって、圧縮データの各バンドの最終データが終端符号EOIであっても、圧縮データのメモリ26からの読み取り速度を向上させることができるとともに、リード途中で次のバンドに飛んでしまうことを防止することができ、ファーストコピー時間を短縮しつつ、適切な圧縮データの読み取りを行うことができる。
However, as described above, when the DPR read control unit 61 receives a write count end notification from the read
このように、本実施例の複合装置1は、リードトグル制御部54が、バッファ55a、55bから読み出した圧縮データをカウントして該カウント値がディスクリプタで指定されている指定データサイズ(SIZE)になると、リードカウント終了信号をDPRリード制御部61に出力するリードカウンタ54aを備えており、DPRリード制御部61が、ライトカウント終了通知が入力されると、リードカウント終了信号が入力されるのを待って、次のディスクリプタと圧縮データの読み出しを行っている。
As described above, in the
したがって、圧縮単位の圧縮データの各バンドの最終データが終端符号EOIである場合に、圧縮データの読み取り途中に次のバンドに飛んでしまうことを適切に防止することができ、ファーストコピー時間を短縮しつつ、適切な圧縮データの読み取りを行って、異常画像が発生することができる。 Therefore, when the final data of each band of the compressed data of the compression unit is the end code EOI, it is possible to appropriately prevent jumping to the next band during the reading of the compressed data, and shorten the first copy time. However, an abnormal image can be generated by reading appropriate compressed data.
図14〜図18は、本発明の画像処理装置、画像処理方法、画像処理プログラム及び記録媒体の第3実施例を示す図であり、図14は、本発明の画像処理装置、画像処理方法、画像処理プログラム及び記録媒体の第3実施例を適用した複合装置1の要部ブロック構成図である。
14 to 18 are diagrams showing a third embodiment of the image processing apparatus, the image processing method, the image processing program, and the recording medium of the present invention. FIG. 14 shows the image processing apparatus, the image processing method, It is a principal block block diagram of the
なお、本実施例は、上記第1実施例の複合装置1と同様の複合装置に適用したものであり、本実施例の説明においては、第1実施例の複合装置1と同様の構成部分には、同一の符号を付して、その説明を省略または簡略化するとともに、図示しない部分についても、第1実施例の説明で用いた符号をそのまま用いて説明する。
The present embodiment is applied to a composite apparatus similar to the
図14において、RDMAC(リードDMA制御手段)70は、第1実施例のRDMAC44と同様のメモリI/F52、ライトトグル制御部53、バッファ55a、55b及びレジスタ56等を備えているとともに、DPRリード制御部(ディスクリプタリード制御手段)71及びリードトグル制御部(バッファリード制御手段)72を備えている。
In FIG. 14, an RDMAC (read DMA control means) 70 includes a memory I /
DPRリード制御部71及びリードトグル制御部72には、伸長器43からbusy信号が入力され、このbusy信号は、伸長器43の内部バッファの空き状態を示すバッファエンプティ信号であって、伸長器43の内部バッファが空になると、「0」になる。また、このDPRリード制御部71及びリードトグル制御部72には、第1実施例の場合と同様に、伸長器43から次バンド転送許可信号NEXTが入力される。なお、伸長器43が出力する次データ転送許可信号としては、busy信号に限るものではなく、伸長器43の動作の終了を示す動作終了信号であってもよい。
The busy signal is input from the
DPRリード制御部71は、ディスクリプタのリードを行い、ディスクリプタ情報(SA/SIZE)をリードトグル制御部54、ライトトグル制御部53、メモリI/F52へ分配する。また、DPRリード制御部71は、ライトトグル制御部53のライトカウント終了通知、busy信号、または、次バンド転送許可信号NEXTが通知されると、ディスクリプタのNDPに記載されているアドレスをリードアクセスする。さらに、DPRリード制御部71は、バッファ55a、55bの空き状況を元にディスクリプタのDPRリードコマンドの先投げ個数を制御する。
The DPR read
メモリI/F52及びライトトグル制御部53は、第1実施例と同様である。
The memory I /
リードトグル制御部72は、第1実施例と同様に、リードカウンタ54aを備えており、リードカウンタ54aは、上述のように、初期値をディレクトリのSIZEに設定されているデータサイズとして、バッファ55a、55bから読み込んだ圧縮データのデータ量だけダウンカウントする。リードトグル制御部54は、リードカウンタ54aがカウント中は、伸長器43に出力しているデータ有効信号dma_aliveをアサートし、カウンタ値が「0」になると、データ有効信号dma_aliveをネゲートするとともに、EOBパルスを後段の伸長器43に通知する。また、リードトグル制御部54は、次バンド転送許可信号NEXTがアサートされると、データ有効信号dma_aliveをネゲートし、リードカウンタ54aのリードカウントが「0」になる。この際、EOBパルスは後段へ出力しない。
As in the first embodiment, the read
次に、本実施例の作用を説明する。本実施例の複合装置1は、伸長器43からのbusy信号に基づいて次バンドのリード制御を行う。
Next, the operation of this embodiment will be described. The
すなわち、DPRリード制御部71は、図15及び図16に示すように、ディスクリプタリード処理を実行する。なお、図15及び図16において、第1実施例の図4に示したディスクリプタリード処理と同様の処理ステップには、同一のステップナンバを付与して、その説明を簡略化する。DPRリード制御部71は、RDMAC70が起動されると、図15に示すように、レジスタ56にCPU24によって設定された先頭のディスクリプタのアドレスである初期値のディスクリプタポインタ(DPRポインタ)をレジスタ56からロードし(ステップS101)、メモリ26の該初期値のディスクリプタポインタ(DPRポインタ)に設定されているバンドのアドレスを読み取って内部レジスタに設定する(ステップS102)。次に、DPRリード制御部71は、初期値のディスクリプタポインタ(DPRポインタ)に記載されているアドレスをディスクリプタアドレスバス(DPRアドレスバス)に設定し、メモリI/F52にディスクリプタリードトリガ(DPRリードトリガ)を発行する(ステップS104)。メモリI/F52は、ステップS103で設定されたディスクリプタアドレスのリードコマンドをメモリ52に発行し、DPRリード制御部71は、発行したリードコマンドに対応するディスクリプタリードデータ(DPRリードデータ)の応答を待つ(ステップS105)。DPRリード制御部71は、ディスクリプタリードデータを受け取ると、ディスクリプタ情報をRDMAC70の必要な内部制御部に分配し(ステップS106)、ディスクリプタ情報(SA1/SIZE1/NDP1/MODE1)をDPRリード制御部71内部で保持(ラッチ)する(ステップS107)。
That is, the DPR read
DPRリード制御部71は、ディスクリプタ情報をラッチすると、図16に示すように、ライトカウント終了通知と次バンド転送許可信号NEXTの通知のいずれかを受け取るのを待ち(ステップS301)、次バンド転送許可信号NEXTの通知があると、ディスクリプタ情報のNDPを確認する(ステップS109)。
When the descriptor information is latched, the DPR read
ステップS301で、ライトカウント終了通知があると、DPRリード制御部71は、busy信号が「0」になるのを待ち(ステップS302)、busy信号が「0」になると、伸長器43の内部バッファが空になったと判断して、次のバンドの圧縮データをリードするために、ディスクリプタ情報のNDPを確認する(ステップS109)。
In step S301, if there is a write count end notification, the DPR read
ステップS109で、ディスクリプタ情報のNDPが「0」以外であると、DPRリード制御部51は、全ての圧縮ディスクリプタの終端ではないと判断して、NDPが示しているアドレスを内部レジスタに設定し(ステップS110)、図15のステップS104に戻って、ディスクリプタリードトリガ(DPRリードトリガ)のメモリI/F52への発行から上記同様に処理する(ステップS104〜S107、S301、S302、S109)。
In step S109, if the NDP of the descriptor information is other than “0”, the DPR read
そして、ステップS109で、ディスクリプタ情報のNDPが「0」であると、DPRリード制御部51は、全圧縮データの終了であると判断して、処理を終了する。
In step S109, if the NDP of the descriptor information is “0”, the DPR read
すなわち、図11に示したように、メモリ26に圧縮データとディスクリプタ(DPR)が記録されていて、ディスクリプタで指定されているデータサイズと、可変長圧縮データのデータサイズが同じで、終端符号EOI以降に冗長データが存在しない場合、図17に示すように、圧縮データの終端符号EOI以降のダミーデータ(冗長データ)をリードしないだけであると、ファーストコピーの時間を短縮することはできるが、圧縮データのバンド1の最終データが終端符号EOIであって、バッファ遅延によって終端符号EOIの検知が遅れると、バンド2のリード途中で次バンド(バンド3)へ飛んでしまうおそれがある。
That is, as shown in FIG. 11, the compressed data and the descriptor (DPR) are recorded in the memory 26, the data size specified by the descriptor and the data size of the variable length compressed data are the same, and the end code EOI If there is no redundant data thereafter, as shown in FIG. 17, the first copy time can be shortened if only dummy data (redundant data) after the end code EOI of the compressed data is not read. If the final data of the
ところが、上述のように、DPRリード制御部71が、ステップS301で、図18に示すように、ライトカウント終了通知がライトトグル制御部53から入っても、ステップS302で、伸長器43からのbusy信号が「0」になるのを待つことで、伸長器43の内部バッファが空になるまで、次バンドのディスクリプタをリードすることを防止する。したがって、分割圧縮データの各バンドの最終データが終端符号EOIであって、図18に示すように、終端符号EOIの検出タイミングに誤差が発生しても、圧縮データのメモリ26からの読み取り速度を向上させることができるとともに、リード途中で次のバンドに飛んでしまうことを防止することができ、ファーストコピー時間を短縮しつつ、適切な圧縮データの読み取りを行うことができる。
However, as described above, even if the DPR read
このように、本実施例の複合装置1は、DPRリード制御部61が、ライトトグル制御部53のライトカウンタ53aからライトカウント終了通知が入力されると、伸長器43から次データ転送許可信号が入力されるのを待って、次のディスクリプタと圧縮データの読み出しを行っている。
As described above, in the
したがって、伸長器43の動作確認を行ってから次のバンドのディスクリプタのリードを行うことができ、圧縮データが最終バンドの最終データが終端符号EOIである場合にも、異常画像が発生することを適切に防止することができる。
Therefore, after the operation of the
また、本実施例の複合装置1は、伸長器43が、次データ転送許可信号として、リードトグル制御部54から送られてきた圧縮データを一時保管する内部バッファが空になったことを示すbusy(バッファエンプティ)信号、または/及び、圧縮データの伸長処理が終了したことを示す動作終了信号を出力している。
Further, in the
したがって、伸長器43が次の圧縮データの処理を行うことができるか否かを適切に判断して、次のバンドのディスクリプタをリードすることができ、圧縮データが最終バンドの最終データが終端符号EOIである場合にも、異常画像が発生することを適切に防止することができる。
Therefore, it is possible to appropriately determine whether or not the
以上、本発明者によってなされた発明を好適な実施例に基づき具体的に説明したが、本発明は上記実施例で説明したものに限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。 The invention made by the present inventor has been specifically described based on the preferred embodiments. However, the present invention is not limited to that described in the above embodiments, and various modifications can be made without departing from the scope of the invention. It goes without saying that it is possible.
本発明は、入力画像データを一旦可変長圧縮してメモリに保管した後に該メモリの圧縮データを伸長して出力する複写装置、複合装置等の画像処理装置、画像処理方法、画像処理プログラム及び記録媒体に利用することができる。 The present invention relates to an image processing apparatus, an image processing method, an image processing program, and a recording apparatus, such as a copying apparatus and a composite apparatus, which decompress and output the compressed data in the memory after the input image data is temporarily compressed in variable length and stored in the memory It can be used as a medium.
1 複合装置
2 コントローラ
3 エンジン部
11 スキャナ
12 プロッタ
21、22 ASIC
23 ハードディスク
24 CPU
25 操作部
26 メモリ
31 内部レジスタ
32 スキャナI/F
33 画像伸長器
34 画像処理器
41 圧縮器
42 WDMAC
43 伸長器
44 RDMAC
45 画像処理部
46 WDMAC
47 内部レジスタ
48 プロッタI/F
49 RDMAC
51 DPRリード制御部
52 メモリI/F
52a アドレス生成部
53 ライトトグル制御部
53a ライトカウンタ
54 リードトグル制御部
54a リードカウンタ
55a、55b バッファ
56 レジスタ
60 RDMAC
61 DPRリード制御部
70 RDMAC
71 DPRリード制御部
72 リードトグル制御部
DESCRIPTION OF
23
25 Operation Unit 26
33
43
45
47 Internal register 48 Plotter I / F
49 RDMAC
51 DPR read
52a
61 DPR read
71 DPR
Claims (8)
前記リードDMA制御手段は、
前記記憶手段から前記ディスクリプタ及び前記圧縮単位の前記圧縮データを読み出す読み出し手段と、
前記読み出し手段による前記記憶手段からの前記ディスクリプタ及び前記圧縮データの読み出しを制御するディスクリプタリード制御手段と、
前記読み出し手段によって前記記憶手段から読み出された前記圧縮単位の前記圧縮データを一時保管する複数のバッファと、
前記読み出し手段によって読み出された前記圧縮単位の前記圧縮データの前記バッファに対する書き込みを制御するとともに該圧縮データの該バッファへの書き込みを完了すると書き込み完了通知を発行するバッファライト制御手段と、
前記バッファに書き込まれた前記圧縮データを読み出して前記伸長手段へ出力するバッファリード制御手段と、
前記バッファライト制御手段が前記バッファに書き込んだ前記圧縮データをカウントして、該圧縮データサイズが前記ディスクリプタで指定されている指定データサイズになると、ライトカウント終了通知を前記ディスクリプタリード制御手段に出力するライトカウント手段と
を備え、
前記ディスクリプタリード制御手段は、前記ライトカウント終了通知または前記次データ転送許可通知が入力されると、次の前記ディスクリプタと前記圧縮データの読み出しを行うことを特徴とする画像処理装置。 The read DMA control means converts the compressed data stored in the compression means by variable-length compressing the image data input for each compression unit as a compression unit into a single compressed data by the compression means, In an image processing apparatus that reads out each compression unit based on a descriptor of the storage unit in accordance with a next data transfer permission signal that permits transfer of next data from a decompression unit that decompresses compressed data, and transfers the compressed data to the decompression unit.
The read DMA control means includes:
Read means for reading out the descriptor and the compressed data of the compression unit from the storage means;
Descriptor read control means for controlling reading of the descriptor and the compressed data from the storage means by the reading means;
A plurality of buffers for temporarily storing the compressed data of the compression unit read from the storage unit by the reading unit;
Buffer write control means for controlling writing of the compressed data of the compression unit read by the reading means to the buffer and issuing a write completion notification when the writing of the compressed data to the buffer is completed;
A buffer read control means for reading the compressed data written in the buffer and outputting it to the decompression means;
The buffer write control unit counts the compressed data written to the buffer, and outputs a write count end notification to the descriptor read control unit when the compressed data size reaches the specified data size specified by the descriptor. And a light counting means,
The descriptor read control means reads the next descriptor and the compressed data when the write count end notice or the next data transfer permission notice is inputted.
前記ディスクリプタリード制御手段は、前記ライトカウント終了通知が入力されると、前記リードカウント終了信号が入力されるのを待って、次の前記ディスクリプタと前記圧縮データの読み出しを行うことを特徴とする請求項1または請求項2記載の画像処理装置。 The buffer read control means includes read count means for counting the compressed data read from the buffer and outputting a read count end signal to the descriptor read control means when the count value reaches the specified data size. ,
The descriptor read control means, when the write count end notification is input, waits for the read count end signal to be input, and reads the next descriptor and the compressed data. The image processing apparatus according to claim 1 or 2.
前記リードDMA制御処理ステップは、
前記記憶手段から前記ディスクリプタ及び前記圧縮単位の前記圧縮データを読み出す読み出し処理ステップと、
前記読み出し処理ステップによる前記記憶手段からの前記ディスクリプタ及び前記圧縮データの読み出しを制御するディスクリプタリード制御処理ステップと、
前記読み出し処理ステップによって読み出された前記圧縮単位の前記圧縮データの複数のバッファに対する書き込みを制御するとともに該圧縮データの該バッファへの書き込みを完了すると書き込み完了通知を発行するバッファライト制御処理ステップと、
前記バッファに書き込まれた前記圧縮データを読み出して前記伸長処理ステップへ出力するバッファリード制御処理ステップと、
前記バッファライト制御処理ステップが前記バッファに書き込んだ前記圧縮データをカウントして、該圧縮データサイズが前記ディスクリプタで指定されている指定データサイズになると、ライトカウント終了通知を前記ディスクリプタリード制御処理ステップに出力するライトカウント処理ステップと
を有し、
前記ディスクリプタリード制御処理ステップは、前記ライトカウント終了通知または前記次データ転送許可通知が入力されると、次の前記ディスクリプタと前記圧縮データの読み出しを行うことを特徴とする画像処理方法。 A read DMA control processing step that compresses variable length compressed image data input to each compression unit into a single compressed data in a compression processing step with a predetermined data amount as a compression unit, and transfers the stored data to a storage means. Is read out for each compression unit based on the descriptor of the storage means in accordance with a next data transfer permission signal permitting transfer of the next data from the decompression processing step for decompressing the compressed data, and transferred to the decompression processing step. A processing method,
The read DMA control processing step includes:
A read processing step of reading the descriptor and the compressed data of the compression unit from the storage means;
A descriptor read control processing step for controlling reading of the descriptor and the compressed data from the storage means by the read processing step;
A buffer write control processing step for controlling writing of the compressed data of the compression unit read by the reading processing step to a plurality of buffers and issuing a write completion notification when the writing of the compressed data to the buffer is completed; ,
A buffer read control processing step of reading out the compressed data written in the buffer and outputting it to the decompression processing step;
The buffer write control processing step counts the compressed data written to the buffer, and when the compressed data size reaches the specified data size specified by the descriptor, a write count end notification is sent to the descriptor read control processing step. And a light count processing step for outputting,
The descriptor read control processing step reads the next descriptor and the compressed data when the write count end notification or the next data transfer permission notification is input.
コンピュータに、
前記リードDMA制御処理として、
前記記憶手段から前記ディスクリプタ及び前記圧縮単位の前記圧縮データを読み出す読み出し処理と、
前記読み出し処理による前記記憶手段からの前記ディスクリプタ及び前記圧縮データの読み出しを制御するディスクリプタリード制御処理と、
前記読み出し処理によって読み出された前記圧縮単位の前記圧縮データの複数のバッファに対する書き込みを制御するとともに該圧縮データの該バッファへの書き込みを完了すると書き込み完了通知を発行するバッファライト制御処理と、
前記バッファに書き込まれた前記圧縮データを読み出して前記伸長処理へ出力するバッファリード制御処理と、
前記バッファライト制御処理が前記バッファに書き込んだ前記圧縮データをカウントして、該圧縮データサイズが前記ディスクリプタで指定されている指定データサイズになると、ライトカウント終了通知を前記ディスクリプタリード制御処理に出力するライトカウント処理と、
を実行させ、
前記ディスクリプタリード制御処理においては、前記ライトカウント終了通知または前記次データ転送許可通知が入力されると、次の前記ディスクリプタと前記圧縮データの読み出しを行わせることを特徴とする画像処理プログラム。 The read DMA control process is a process in which the compressed data stored in the storage unit is compressed by variable-length compression into a single compressed data by compressing the image data input for each compression unit with a predetermined data amount as a compression unit. An image processing program that reads out each compressed unit based on a descriptor of the storage unit and transfers it to the decompression process in accordance with a next data transfer permission signal that permits transfer of the next data from the decompression process that decompresses the compressed data. And
On the computer,
As the read DMA control process,
Read processing for reading out the descriptor and the compressed data of the compression unit from the storage means;
A descriptor read control process for controlling reading of the descriptor and the compressed data from the storage means by the read process;
A buffer write control process for controlling writing of the compressed data of the compression unit read by the reading process to a plurality of buffers and issuing a write completion notification when the writing of the compressed data to the buffer is completed;
A buffer read control process for reading the compressed data written in the buffer and outputting the compressed data to the decompression process;
The buffer write control process counts the compressed data written to the buffer, and outputs a write count end notification to the descriptor read control process when the compressed data size reaches the specified data size specified by the descriptor. Write count processing,
And execute
In the descriptor read control processing, when the write count end notification or the next data transfer permission notification is input, the image processing program causes the next descriptor and the compressed data to be read.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2010021217A JP5407912B2 (en) | 2010-02-02 | 2010-02-02 | Image processing apparatus, image processing method, image processing program, and recording medium |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2010021217A JP5407912B2 (en) | 2010-02-02 | 2010-02-02 | Image processing apparatus, image processing method, image processing program, and recording medium |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2011160268A JP2011160268A (en) | 2011-08-18 |
| JP5407912B2 true JP5407912B2 (en) | 2014-02-05 |
Family
ID=44591833
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2010021217A Expired - Fee Related JP5407912B2 (en) | 2010-02-02 | 2010-02-02 | Image processing apparatus, image processing method, image processing program, and recording medium |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP5407912B2 (en) |
Family Cites Families (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH04373251A (en) * | 1991-06-22 | 1992-12-25 | Fuji Xerox Co Ltd | Buffer memory control circuit |
| JP3417684B2 (en) * | 1994-09-13 | 2003-06-16 | 株式会社東芝 | Image processing device |
| JP2001113759A (en) * | 1999-10-15 | 2001-04-24 | Ricoh Co Ltd | Image data output device |
| JP2003051952A (en) * | 2001-08-06 | 2003-02-21 | Fuji Xerox Co Ltd | Image processing apparatus |
| JP2007201705A (en) * | 2006-01-25 | 2007-08-09 | Ricoh Co Ltd | Image processing apparatus, image processing method, program, and computer-readable recording medium |
| JP2007334555A (en) * | 2006-06-14 | 2007-12-27 | Ricoh Co Ltd | Data transfer device and electronic device |
-
2010
- 2010-02-02 JP JP2010021217A patent/JP5407912B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2011160268A (en) | 2011-08-18 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN108363669B (en) | Memory access system, control method thereof, storage medium, and image forming apparatus | |
| JP4928497B2 (en) | Image processing apparatus, image processing method, image processing program, and storage medium | |
| US7167263B2 (en) | Multifunction peripheral apparatus, external controller for the same, and their control method | |
| JP2012034254A (en) | Data transfer device, image formation device, data transfer control method, data transfer control program, and recording medium | |
| JP5407912B2 (en) | Image processing apparatus, image processing method, image processing program, and recording medium | |
| US7814251B2 (en) | DMA transfer control system that performs data decode and data transfer and that generates a no operation (NOP) interrupt signal to end the DMA transfer processing in response to a NOP designation | |
| US20180074986A1 (en) | Information processing apparatus and semiconductor integrated circuit including ring bus system | |
| JP4901692B2 (en) | Image processing apparatus, image processing method, image processing program, and recording medium | |
| JP4136347B2 (en) | System controller, image forming apparatus having system controller, and DMA transfer method | |
| JP2011155609A (en) | Image processor, image processing method, image processing program, and recording medium | |
| US8520964B2 (en) | Image processing apparatus | |
| KR102230913B1 (en) | Information processing apparatus and semiconductor integrated circuit | |
| JP5446929B2 (en) | Image processing apparatus, image processing method, image processing program, and recording medium | |
| JP2006189919A (en) | Electronic device, control method, and computer program | |
| JP5084688B2 (en) | Image forming apparatus | |
| US20180213103A1 (en) | Image processing apparatus, method of controlling the same, and storage medium | |
| JP7835064B2 (en) | Image forming apparatus and program | |
| JP4561230B2 (en) | Data transfer control device and data transfer method | |
| JP5004322B2 (en) | Data transfer control method, apparatus, and image forming apparatus | |
| JP4812662B2 (en) | Image forming apparatus | |
| JP2007201705A (en) | Image processing apparatus, image processing method, program, and computer-readable recording medium | |
| JP4413041B2 (en) | Data transfer system and image forming apparatus | |
| JP2005107818A (en) | Arbitration device and image forming device using it | |
| CN101321225A (en) | Image processing device, printing device | |
| JP4037872B2 (en) | Image forming apparatus |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20121107 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20121112 |
|
| RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20121112 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130930 |
|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20131008 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20131021 |
|
| LAPS | Cancellation because of no payment of annual fees |