JP2001061067A - Image processing unit, its method, data processing unit and its control method - Google Patents

Image processing unit, its method, data processing unit and its control method

Info

Publication number
JP2001061067A
JP2001061067A JP11234544A JP23454499A JP2001061067A JP 2001061067 A JP2001061067 A JP 2001061067A JP 11234544 A JP11234544 A JP 11234544A JP 23454499 A JP23454499 A JP 23454499A JP 2001061067 A JP2001061067 A JP 2001061067A
Authority
JP
Japan
Prior art keywords
data
encoding
code
huffman
circuit
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.)
Granted
Application number
JP11234544A
Other languages
Japanese (ja)
Other versions
JP4100836B2 (en
Inventor
Yoshihiro Kobayashi
義宏 小林
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 JP23454499A priority Critical patent/JP4100836B2/en
Publication of JP2001061067A publication Critical patent/JP2001061067A/en
Application granted granted Critical
Publication of JP4100836B2 publication Critical patent/JP4100836B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Compression Of Band Width Or Redundancy In Fax (AREA)

Abstract

PROBLEM TO BE SOLVED: To obtain an image processing unit that realizes effective coding and to obtain its method, a data processing unit and its control method. SOLUTION: An image processing circuit 50 converts image data of a CCD- RAW form into RGB image data depending on a setting of a recording mode switch 34, a JPEG circuit 80 applies JPEG compression to the image data or a data conversion circuit 100 and a Huffman coding/decoding circuit 86 apply reversible compression to the image data. A recording medium 70 stores the compressed image data.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は画像処理装置および
その方法、並びに、データ処理装置およびその制御方法
に関し、例えば、撮像素子によって得られる画像データ
を処理する画像処理装置およびその方法に関するもので
ある。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an image processing apparatus and method, and a data processing apparatus and control method thereof. For example, the present invention relates to an image processing apparatus for processing image data obtained by an image sensor and a method thereof. .

【0002】[0002]

【従来の技術】画像あるいは任意の入力データを圧縮記
録する場合、入力データに対して離散コサイン変換(DC
T)などの直交変換あるいはDPCM(Differential Pulse Ci
ode Modulation)変換などを施して入力データ系列のエ
ントロピを減少させた後、ハフマン符号あるいは算術符
号などに代表されるエントロピ符号化を行って入力デー
タの圧縮が実現される。
2. Description of the Related Art When compressing and recording an image or arbitrary input data, a discrete cosine transform (DC
T) or DPCM (Differential Pulse Ci
After reducing the entropy of the input data sequence by performing ode modulation) conversion or the like, the input data is compressed by performing entropy encoding represented by Huffman code or arithmetic code.

【0003】ハフマン符号化は、入力データ系列のヒス
トグラムから出現頻度の高いデータに短い符号語を、出
現頻度の低いデータに長い符号語を割り当て、平均的に
データサイズを小さくすることで、データ圧縮を達成す
る。
[0003] Huffman coding allocates a short codeword to data having a high frequency of appearance and a long codeword to data having a low frequency of appearance from a histogram of an input data sequence, and reduces the data size on average to reduce data compression. To achieve.

【0004】DCTおよびハフマン符号化を利用するJPEG
ベースライン方式においては、設定されたハフマンテー
ブルに従い符号化処理を行う。ハフマンテーブルには符
号化に必要なすべての情報が記述されていて、その記述
内容は符号化すべきデータ系列のヒストグラムから生成
される。
[0004] JPEG using DCT and Huffman coding
In the baseline method, encoding processing is performed according to the set Huffman table. All information necessary for encoding is described in the Huffman table, and the description is generated from a histogram of a data sequence to be encoded.

【0005】[0005]

【発明が解決しようとする課題】ハフマン符号化におい
て最も効果的な符号化を実現するには、符号化すべきデ
ータ系列のヒストグラムを計算し、データ系列それぞれ
に対応する固有のハフマンテーブルを生成する必要があ
る。
In order to realize the most effective coding in Huffman coding, it is necessary to calculate a histogram of a data sequence to be coded and generate a unique Huffman table corresponding to each data sequence. There is.

【0006】しかしながら、ディジタルカメラ(電子カ
メラ)などの画像圧縮・伸長においては、処理速度など
の問題から、標準的に提供される単一のハフマンテーブ
ルを使用する。そのため、必ずしも効果的な符号化(圧
縮)が実現されるとは限らない。
However, in image compression / expansion of a digital camera (electronic camera) or the like, a single Huffman table provided as a standard is used due to problems such as processing speed. Therefore, effective encoding (compression) is not always realized.

【0007】本発明は、上述の問題を解決するためのも
のであり、効果的な符号化を実現する画像処理装置およ
びその方法、並びに、データ処理装置およびその制御方
法を提供することを目的とする。
An object of the present invention is to solve the above-mentioned problems and to provide an image processing apparatus and method for realizing effective encoding, and a data processing apparatus and control method therefor. I do.

【0008】[0008]

【課題を解決するための手段】本発明は、前記の目的を
達成する一手段として、以下の構成を備える。
The present invention has the following configuration as one means for achieving the above object.

【0009】本発明にかかるデータ処理装置は、複数の
異なるハフマンテーブルが格納されたメモリと、入力デ
ータをハフマン符号化する符号化手段と、前記符号化手
段に前記複数の異なるハフマンテーブルを順に設定し、
それぞれのハフマンテーブルに対応する符号化結果のう
ち最もデータサイズの小さい符号を選択する制御手段と
を有することを特徴とする。
A data processing apparatus according to the present invention comprises: a memory in which a plurality of different Huffman tables are stored; an encoding means for Huffman encoding input data; and the plurality of different Huffman tables sequentially set in the encoding means. And
Control means for selecting a code having the smallest data size from the coding results corresponding to the respective Huffman tables.

【0010】本発明にかかるデータ処理装置の制御方法
は、複数の異なるハフマンテーブルが格納されたメモ
リ、および、入力データをハフマン符号化する符号化手
段を有するデータ処理装置の制御方法であって、前記符
号化手段に前記複数の異なるハフマンテーブルを順に設
定し、それぞれのハフマンテーブルに対応する符号化結
果のうち最もデータサイズの小さい符号を選択すること
を特徴とする。
A method for controlling a data processing apparatus according to the present invention is a method for controlling a data processing apparatus having a memory in which a plurality of different Huffman tables are stored, and an encoding means for Huffman encoding input data. The plurality of different Huffman tables are sequentially set in the encoding unit, and a code having the smallest data size is selected from the encoding results corresponding to the respective Huffman tables.

【0011】本発明にかかる画像処理装置は、画像デー
タを圧縮する圧縮手段、並びに、圧縮された撮像データ
を記録媒体に格納するメモリ制御手段を有する画像処理
装置であって、前記圧縮手段は少なくとも、複数の異な
るハフマンテーブルが格納されたメモリと、前記撮像デ
ータをハフマン符号化する符号化手段と、前記符号化手
段に前記複数の異なるハフマンテーブルを順に設定し、
それぞれのハフマンテーブルに対応する符号化結果のう
ち最もデータサイズの小さい符号を選択して、前記メモ
リ制御手段に供給する符号化制御手段とを有することを
特徴とする。
An image processing apparatus according to the present invention is an image processing apparatus having compression means for compressing image data, and memory control means for storing compressed image data on a recording medium, wherein the compression means is at least A memory in which a plurality of different Huffman tables are stored, encoding means for Huffman encoding the imaging data, and setting the plurality of different Huffman tables in the encoding means in order,
Encoding control means for selecting a code having the smallest data size from encoding results corresponding to the respective Huffman tables and supplying the selected code to the memory control means.

【0012】本発明にかかる画像処理方法は、撮像デー
タを圧縮し、圧縮された撮像データを記録媒体に格納す
る画像処理方法であって、前記圧縮処理は少なくとも、
複数の異なるハフマンテーブルを順に使用して前記撮像
データをハフマン符号化し、それぞれのハフマンテーブ
ルに対応する符号化結果のうち最もデータサイズの小さ
い符号を選択し、前記記録媒体に格納することを特徴と
する。
An image processing method according to the present invention is a method for compressing image data and storing the compressed image data on a recording medium, wherein the compression processing includes at least:
Using a plurality of different Huffman tables in order, the imaging data is Huffman-encoded, a code having the smallest data size is selected from the encoding results corresponding to the respective Huffman tables, and stored in the recording medium. I do.

【0013】[0013]

【発明の実施の形態】以下、本発明にかかる一実施形態
の画像処理装置を図面を参照して詳細に説明する。
DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, an image processing apparatus according to an embodiment of the present invention will be described in detail with reference to the drawings.

【0014】[構成]図1は本発明にかかる一実施形態
の画像処理装置1000の構成例を示すブロック図である。
[Configuration] FIG. 1 is a block diagram showing a configuration example of an image processing apparatus 1000 according to an embodiment of the present invention.

【0015】撮影対象物の像は、撮影レンズ10によって
光学的に、撮影像を電気信号に変換するCCDなどの撮像
素子12上に結像される。撮像素子12のアナログ出力信号
は、A/D変換器14によってディジタル信号に変換され
る。なお、以下では、信号処理された画像データと区別
するために、A/D変換器14から出力される画像データをC
CD-RAWデータと呼ぶ。
An image of an object to be photographed is optically formed by a photographing lens 10 on an image sensor 12 such as a CCD for converting a photographed image into an electric signal. An analog output signal of the image sensor 12 is converted into a digital signal by the A / D converter 14. In the following, the image data output from the A / D converter 14 is referred to as C to distinguish it from the signal-processed image data.
Called CD-RAW data.

【0016】メモリ制御回路40は、A/D変換器14、並び
に、後述するD/A変換器20、画像処理回路50、メモリ6
0、記録媒体70、JPEG回路80、データ変換回路100におけ
るデータフローを制御する。メモリ制御回路40は、メモ
リ60へのデータ書込専用の複数のメモリ制御回路と、メ
モリ60からのデータ読込専用の複数のメモリ制御回路で
構成される。
The memory control circuit 40 includes an A / D converter 14, a D / A converter 20, an image processing circuit 50, and a memory 6, which will be described later.
0, the data flow in the recording medium 70, the JPEG circuit 80, and the data conversion circuit 100 is controlled. The memory control circuit 40 includes a plurality of memory control circuits dedicated to writing data to the memory 60 and a plurality of memory control circuits dedicated to reading data from the memory 60.

【0017】画像処理回路50は、メモリ御回路40から入
力される、図3に示すような素子配列(例えばベイヤ配
列)をもつCCD-RAWデータに画素補間処理や色変換処理
を施して、例えばRGB画像データを形成する。
The image processing circuit 50 performs a pixel interpolation process and a color conversion process on CCD-RAW data having an element arrangement (for example, a Bayer arrangement) as shown in FIG. Form RGB image data.

【0018】メモリ60は、撮影された静止画像や動画像
を格納するためのメモリで、所定枚数の静止画像や所定
時間の動画像を格納するのに充分な記憶容量を備えてい
る。A/D変換器14から出力されるCCD-RAWデータは、メモ
リ制御回路40および画像処理回路50を介して、あるい
は、メモリ制御回路40から直接メモリ60に書き込まれ
る。また、画像処理回路50がCCD-RAWデータから形成し
てメモリ60に書き込まれた表示用の画像データは、メモ
リ制御回路40およびD/A変換器20を介して、TFT LCDなど
の画像表示部22に表示される。
The memory 60 is a memory for storing photographed still images and moving images, and has a sufficient storage capacity for storing a predetermined number of still images and moving images for a predetermined time. The CCD-RAW data output from the A / D converter 14 is written to the memory 60 via the memory control circuit 40 and the image processing circuit 50 or directly from the memory control circuit 40. The display image data formed by the image processing circuit 50 from the CCD-RAW data and written to the memory 60 is transmitted to an image display unit such as a TFT LCD via the memory control circuit 40 and the D / A converter 20. Appears on 22.

【0019】記録媒体70は、半導体メモリのカード、磁
気記録媒体のフロッピディスクやハードディスク、ある
いは光磁気ディスクなどで、主にリムーバブルな媒体が
好んで利用される。
The recording medium 70 is preferably a removable medium such as a semiconductor memory card, a magnetic recording medium floppy disk or hard disk, or a magneto-optical disk.

【0020】JPEFG回路80は、DCT・量子化回路82、デー
タセレクタ84、ハフマン符号・復号回路86で構成され、
ベースラインJPEG方式により画像データを圧縮/伸長す
る。データセレクタ84は、画像データをJPEG符号化・復
号する場合と、CCD-RAWデータを可逆圧縮・伸長する場
合とで、つまり後述する記録モードに従い、データの流
れを切り替える。
The JPEFG circuit 80 includes a DCT / quantization circuit 82, a data selector 84, a Huffman encoding / decoding circuit 86,
Image data is compressed / expanded by the baseline JPEG method. The data selector 84 switches the flow of data between a case where JPEG encoding / decoding of image data and a case where CCD-RAW data is reversibly compressed / expanded, that is, according to a recording mode described later.

【0021】データ変換回路100は、JPEG回路80のハフ
マン符号・復号回路86を使用して、CCD-RAWデータを可
逆圧縮・伸長するためのデータ変換を行う回路で、イン
タフェイス回路102、分割・合成回路106およびDPCM変換
回路108を含むデータ変換コア104で構成される。なお、
データ変換コア回路104は、本実施形態におけるデータ
変換処理を実際に行う部分である。
The data conversion circuit 100 performs data conversion for reversibly compressing and expanding CCD-RAW data using the Huffman encoding / decoding circuit 86 of the JPEG circuit 80. The data conversion core 104 includes a synthesis circuit 106 and a DPCM conversion circuit 108. In addition,
The data conversion core circuit 104 is a part that actually performs the data conversion processing in the present embodiment.

【0022】インタフェイス回路102は、データ変換回
路100が他の回路ブロック(たとえばメモリ制御回路40
やJPEG回路80)との間でデータのハンドシェイクを行う
ための回路で、この回路の作用により、データ変換コア
104の設計が容易になると同時に、システム全体のデー
タ転送制御を行うソフトウェアの開発が容易になる。詳
細な構成および動作については後述する。
The interface circuit 102 is constructed such that the data conversion circuit 100 is connected to another circuit block (for example, the memory control circuit 40).
And a JPEG circuit 80) to perform data handshaking with the data conversion core.
Simultaneously with the design of the 104, software development for controlling data transfer of the entire system is facilitated. The detailed configuration and operation will be described later.

【0023】ハフマン符号・復号回路86は、ベースライ
ンJPEG用に設計された回路で、データセレクタ84とハフ
マン符号・復号回路86の間のデータバスは11ビットであ
る。従って、DPCM変換されるCCD-RAWデータは10ビット
以下である必要がある。
The Huffman encoding / decoding circuit 86 is a circuit designed for the baseline JPEG. The data bus between the data selector 84 and the Huffman encoding / decoding circuit 86 has 11 bits. Therefore, the CCD-RAW data subjected to the DPCM conversion needs to be 10 bits or less.

【0024】分割・合成回路106は、圧縮時においてCCD
-RAWデータが12ビットの場合、それを上位10ビットと下
位2ビットに分割し、下位2ビットを8データごとにPACK
(パック)処理する。また、伸長時においてCCD-RAWデ
ータが12ビットの場合、PACKされた下位2ビットのデー
タをUNPACK(アンパック)処理して、DPCM変換回路108
において逆DPCM変換された10ビットデータと合成する。
分割およびPACK処理、並びに、UNPACKおよび合成処理に
おけるデータフォーマットを図2に示す。
The dividing / synthesizing circuit 106 performs
-If the RAW data is 12 bits, divide it into upper 10 bits and lower 2 bits and pack the lower 2 bits every 8 data
(Pack) to process. If the CCD-RAW data is 12 bits at the time of decompression, the lower 2 bits of the PACKed data are UNPACK-processed, and the DPCM conversion circuit 108
And synthesizes with the inverse DPCM converted 10-bit data.
FIG. 2 shows the data format in the division and PACK processing, and the UNPACK and synthesis processing.

【0025】DPCM変換回路108は、情報のエントロピを
小さくしてハフマン符号化における符号化効率を高める
ために、CCD-RAWデータのDPCM変換(予測符号化)を行
う。DPCM変換回路108は、10ビットのデータに対してDPC
M変換(予測符号化)を行い、11ビットのDPCMデータに
対して逆DPCM変換を行う。DPCM変換は、符号化すべき注
目画素の画像惰報と周辺画素の画像情報とは相関関係が
強いことを利用して情報のエントロピを減少させるもの
である。具体的には、注目画素の画像データを、隣接画
素(左隣りの画素)の画像データとの差分値に変換する
ことで、ハフマン符号化における符号化効率を高める。
The DPCM conversion circuit 108 performs DPCM conversion (prediction coding) of CCD-RAW data in order to reduce the entropy of information and increase the coding efficiency in Huffman coding. The DPCM conversion circuit 108 performs DPC conversion on 10-bit data.
Performs M conversion (prediction coding) and performs inverse DPCM conversion on the 11-bit DPCM data. The DPCM transform is to reduce the entropy of information by utilizing the fact that there is a strong correlation between the image information of the target pixel to be encoded and the image information of the peripheral pixels. Specifically, the coding efficiency in Huffman coding is increased by converting the image data of the pixel of interest into a difference value from the image data of the adjacent pixel (the pixel on the left).

【0026】本実施形態は、図3に示すような素子配列
のカラーフィルタ配列をもつ撮像素子12に対応し、常
に、二画素左隣りのCCD-RAWデータとの差分値を算出す
る必要がある。つまり、DPCM変換回路108は、入力され
るCCD-RAWデータと、二画素分前に入力されたCCD-RAWデ
ータとの差分を求める構成である。なお、DPCM変換にお
ける予測は画像の低周波成分ほど容易であるため、CCD-
RAWデータが12ビットの場合は上位10ビットのみDPCM変
換して予測の難しい高周波成分を非圧縮で記録する。さ
らに詳細な構成および動作については後述する。
This embodiment corresponds to the image sensor 12 having the color filter array of the element array as shown in FIG. 3, and it is necessary to always calculate the difference value with the CCD-RAW data adjacent to the left of two pixels. . That is, the DPCM conversion circuit 108 is configured to calculate the difference between the input CCD-RAW data and the CCD-RAW data input two pixels earlier. In addition, since the prediction in the DPCM conversion is easier for the lower frequency components of the image, the CCD-
If the RAW data is 12 bits, only the upper 10 bits are subjected to DPCM conversion, and high-frequency components that are difficult to predict are recorded without compression. More detailed configuration and operation will be described later.

【0027】データセレクタ90は、JPEG符号化・復号を
行う場合と、CCD-RAWデータの可逆圧縮・伸長を行う場
合とで、つまり後述する記録モードに従い、データの流
れを切り替える。
The data selector 90 switches the data flow between when performing JPEG encoding / decoding and when performing lossless compression / expansion of CCD-RAW data, that is, according to a recording mode described later.

【0028】また、システム制御回路30は、CPU、RAMお
よびROMなどで構成され、ROMに格納されたプログラム、
モードダイヤル32および記録モードスイッチ34の設定、
並びに、読出専用メモリ(ROM)36の記録内容に従って、
画像処理装置1000全体および各回路ブロックの動作を制
御する。
The system control circuit 30 includes a CPU, a RAM, a ROM, and the like, and stores programs stored in the ROM,
Setting of the mode dial 32 and the recording mode switch 34,
In addition, according to the recorded contents of the read-only memory (ROM) 36,
The operation of the entire image processing apparatus 1000 and each circuit block is controlled.

【0029】モードダイアル32は、電源オンオフ、撮影
モードおよび再生モードなど、画像処理装置1000の機能
モードをユーザが切り替えるためのものである。記録モ
ードスイッチ34は、CCD-RAWデータの可逆圧縮・伸長モ
ードと、JPEG記録モードとの何れかをユーザが選択する
ためのものである。なお、ユーザは、JPEG記録モードを
選択する場合、その圧縮率なども記録モードスイッチ34
によって設定することができる。読出専用メモリ36に
は、システム制御回路30が実行するプログラム、並び
に、JPEG回路80に設定する量子化テーブルおよびハフマ
ンテーブルなどが記録されている。
The mode dial 32 is for the user to switch the function mode of the image processing apparatus 1000, such as power on / off, photographing mode and reproduction mode. The recording mode switch 34 is for the user to select one of a lossless compression / expansion mode for CCD-RAW data and a JPEG recording mode. When the user selects the JPEG recording mode, the compression ratio and the like are also set in the recording mode switch 34.
Can be set by The read-only memory 36 stores a program executed by the system control circuit 30, a quantization table and a Huffman table set in the JPEG circuit 80, and the like.

【0030】[データ変換コア]図4はデータ変換コア1
04の詳細な構成例を示すブロック図である。なお、図4
において、DPCM変換回路108以外の部分は分割・合成回
路106に相当する。
[Data Conversion Core] FIG. 4 shows a data conversion core 1.
FIG. 4 is a block diagram showing a detailed configuration example of 04. FIG. 4
In FIG. 7, the parts other than the DPCM conversion circuit 108 correspond to the dividing / combining circuit 106.

【0031】データ変換コア104に入出力するすべての
データ系列には、一対のVALID信号およびSTOP信号が存
在する。VALID信号が‘1’のときはその入出力データが
有効であることを意味し、STOP信号が‘1’のときはそ
のデータ入出力が無効であることを意味する。データ変
換コア104は、入出力データに付随するVALID信号が
‘1’かつSTOP信号が‘0’のとき、有効なデータの入出
力が行われるとして処理を行う。データ変換コア104に
入出力するデータ系列は以下の六種類である。 CCD_IN_DATA: 圧縮対象のCCD-RAWデータ(メモリ制御回
路40から) DPCM_OUT_DATA: DPCM変換されたデータ(JPEG回路80
へ) PACK_DATA: PACKされた下位2ビットのデータ(メモリ制
御回路40へ) CCD_OUT_DATA: 伸長されたCCD-RAWデータ(メモリ制御
回路40へ) DPCM_IN_DATA: 逆DPCM変換すべきデータ(JPEG回路80か
ら) UNPACK_DATA: UNPACKすべきデータ
A pair of VALID signal and STOP signal exist in every data series input / output to the data conversion core 104. When the VALID signal is “1”, the input / output data is valid, and when the STOP signal is “1”, the data input / output is invalid. When the VALID signal accompanying the input / output data is “1” and the STOP signal is “0”, the data conversion core 104 performs processing assuming that valid data is input / output. The following six types of data series are input / output to / from the data conversion core 104. CCD_IN_DATA: CCD-RAW data to be compressed (from memory control circuit 40) DPCM_OUT_DATA: DPCM-converted data (JPEG circuit 80
To) PACK_DATA: PACKED lower 2 bits data (to memory control circuit 40) CCD_OUT_DATA: Expanded CCD-RAW data (to memory control circuit 40) DPCM_IN_DATA: Data to be inverse DPCM converted (from JPEG circuit 80) UNPACK_DATA : Data to UNPACK

【0032】各入力データ系列に対してVALID信号(入
力)およびSTOP信号(出力)が付属し、各出力データ系
列に対してVALID信号(出力)およびSTOP信号(入力)
が付属する。
A VALID signal (input) and a STOP signal (output) are attached to each input data sequence, and a VALID signal (output) and a STOP signal (input) for each output data sequence.
Is included.

【0033】データ変換コア104の出力データに付随し
て、データ変換コア104に入力されるSTOP信号はDPCM_OU
T_STOP、PACK_STOPおよびCCD_OUT_STOPの三種類であ
る。
The STOP signal input to the data conversion core 104 accompanying the output data of the data conversion core 104 is DPCM_OU
T_STOP, PACK_STOP and CCD_OUT_STOP.

【0034】これらのSTOP信号を‘1’にしているブロ
ックは、データ変換コア104から出力されるデータを受
け取れないことを意味し、データ変換コア104の出力デ
ータは無効になる。従って、これらのSTOP信号の何れか
が‘1’かつ対応するVALID信号が‘1’のとき、データ
変換コア104内部のすべてのフリップフロップ(バッフ
ァ)は保持状態になり、すべてのSTOP信号が‘0’にな
るまでデータの更新は一切行われない。
Blocks in which these STOP signals are set to "1" means that data output from the data conversion core 104 cannot be received, and the output data of the data conversion core 104 becomes invalid. Therefore, when any of these STOP signals is “1” and the corresponding VALID signal is “1”, all flip-flops (buffers) in the data conversion core 104 are in the holding state, and all the STOP signals are “1”. No data is updated until it reaches 0 '.

【0035】一方、データ変換コア104の入力データに
付随して、データ変換コア104から出力されるSTOP信号
はCCD_IN_STOP、DPCM_IN_STOPおよびUNPACK_STOPの三種
類である。
On the other hand, the STOP signal output from the data conversion core 104 accompanying the input data of the data conversion core 104 is of three types: CCD_IN_STOP, DPCM_IN_STOP, and UNPACK_STOP.

【0036】これらのSTOP信号が‘1’のとき、データ
変換コア104は入力データを受け取れないことを意味
し、STOP信号が接続されるブロックからの入力データは
STOP信号が‘0’になるまで更新されない。従って、デ
ータ変換コア104の制御信号発生器180または182は、デ
ータ変換コア104内部の動作状態に応じて次のデータ入
力を遅らせる場合、あるいは、複数のブロックからデー
タを受け取ってそれらデータの待ち合わせ処理を行う場
合に、該当ブロックに送るSTOP信号を‘1’にすること
で、データ変換コア104へ入力されるデータの更新を一
時的に中断させることができる。
When these STOP signals are “1”, it means that the data conversion core 104 cannot receive the input data, and the input data from the block to which the STOP signal is connected is
It is not updated until the STOP signal becomes '0'. Therefore, the control signal generator 180 or 182 of the data conversion core 104 is used to delay the next data input according to the operation state inside the data conversion core 104, or to receive data from a plurality of blocks and wait for the data. In this case, the update of the data input to the data conversion core 104 can be temporarily interrupted by setting the STOP signal to be sent to the corresponding block to “1”.

【0037】●CCD-RAWデータの可逆圧縮 CCD-RAWデータを可逆圧縮する場合のデータ変換コア104
の動作は以下のとおりである。
Reversible compression of CCD-RAW data Data conversion core 104 for reversibly compressing CCD-RAW data
Is as follows.

【0038】圧縮対象のCCD-RAWデータ(CCD_IN_DATA)
は、VALID信号(CCD_IN_VALID)が‘1’のときにバッファ
184に読み込まれ、VALID信号(CCD_IN_VALID)が‘0’の
ときはバッファ184に読み込まれたCCD-RAWデータが保持
される。バッファ184に保持されるCCD-RAWデータのデー
タフォーマットの一例を図5に示す。CCD-RAWデータのデ
ータ幅にかかわらず、バッファ184に保持されたデータ
の第11ビットから第2ビットまでの10ビットのデータがD
PCM変換回路108に転送され、DPCM変換が行われる。DPCM
変換されたデータは、一旦バッファ190に保持された
後、データ変換コア104から出力される。制御信号発生
器180は、入力されるVALID信号(CCD_IN_VALID)から、DP
CM変換されたデータに対応するVALID信号(DPCM_OUT_VAL
ID)を作成して、DPCM変換されたデータに合わせて出力
する。
CCD-RAW data to be compressed (CCD_IN_DATA)
Is buffered when the VALID signal (CCD_IN_VALID) is '1'.
When the VALID signal (CCD_IN_VALID) is “0”, the CCD-RAW data read into the buffer 184 is held. FIG. 5 shows an example of the data format of the CCD-RAW data held in the buffer 184. Regardless of the data width of the CCD-RAW data, the 10-bit data from the 11th bit to the 2nd bit of the data held in the buffer 184 is D
The data is transferred to the PCM conversion circuit 108 and DPCM conversion is performed. DPCM
The converted data is temporarily stored in the buffer 190 and then output from the data conversion core 104. The control signal generator 180 outputs a DP signal from the input VALID signal (CCD_IN_VALID).
VALID signal (DPCM_OUT_VAL) corresponding to the CM-converted data
ID) and output it according to the DPCM-converted data.

【0039】CCD-RAWデータのデータ幅が12ビットの場
合、図2に示したフォーマットに従い、下位2ビットの分
離およびPACK処理が行われる。バッファ184に保持され
たデータの下位2ビットは、バッファ200から214までの
八個のバッファの何れかに保持される。制御信号発生器
180は、入力されるVALID信号(CCD_IN_VALID)をカウント
することで、バッファ184に保持されたデータが何番目
に入力されたデータであるかを判断し、その判断結果に
基づき、バッファ200から214の何れかを選択する8ビッ
トの制御信号を発生する。8ビットの制御信号の対応す
るビットが‘1’のバッファは、バッファ184から2ビッ
トのデータを読み込むことでデータの更新する。一方、
8ビットの制御信号の対応するビットが‘0’のバッファ
はデータを保持する。
When the data width of the CCD-RAW data is 12 bits, the lower 2 bits are separated and the PACK processing is performed according to the format shown in FIG. The lower two bits of the data held in the buffer 184 are held in any of the eight buffers 200 to 214. Control signal generator
180 counts the input VALID signal (CCD_IN_VALID) to determine the order in which the data held in the buffer 184 is the input data, and based on the determination result, the buffers 200 to 214 An 8-bit control signal for selecting one of them is generated. The buffer whose corresponding bit of the 8-bit control signal is “1” updates the data by reading 2-bit data from the buffer 184. on the other hand,
The buffer in which the corresponding bit of the 8-bit control signal is '0' holds data.

【0040】バッファ200から214の出力はバッファ192
に接続される。バッファ192のデータは、制御信号発生
器180の制御信号によって入力8データごとに更新され、
更新されたデータはPACKされたデータとして出力され
る。このとき、制御信号発生器180はPACKデータに対応
する‘1’のVALID信号(PACK_VALID)を出力する。
The output of the buffers 200 to 214 is
Connected to. The data of the buffer 192 is updated every eight input data by the control signal of the control signal generator 180,
The updated data is output as PACKed data. At this time, the control signal generator 180 outputs a VALID signal (PACK_VALID) of '1' corresponding to the PACK data.

【0041】●CCD-RAWデータの伸長 CCD-RAWデータを伸長する場合のデータ変換コア104の動
作は以下のとおりである。
The operation of the data conversion core 104 when expanding CCD-RAW data is as follows.

【0042】逆DPCM変換されるべきDPCMデータ(DPCM_IN
_DATA)は、VALID信号(DPCM_IN_VALID)が‘1’のときバ
ッファ188に読み込まれ、VALID信号(DPCM_IN_VALID)が
‘0’のときはバッファ188に読み込まれたDPCMデータが
保持される。バッファ188に保持されたDPCMデータは、D
PCM変換回路108によって逆DPCM変換され、逆変換された
10ビットデータはバッファ194の第11ビットから第2ビッ
トに入力される。圧縮記録されたCCD-RAWデータの元の
データ幅が10ビットの場合は、マルチプレクサ198を介
して、バッファ194の下位2ビットに対応する‘00’がダ
ミーデータとしてバッファ194に入力される。バッファ1
94の出力は、伸長されたCCD-RAWデータ(CCD_OUT_DATA)
として出力される。制御信号発生器182は、入力されるV
ALID信号(DPCM_IN_VALID)から伸長されたデータに対す
るVALID信号(CCD_OUT_VALID)を作成して、CCD-RAWデー
タに合わせて出力する。
The DPCM data to be subjected to inverse DPCM conversion (DPCM_IN
_DATA) is read into the buffer 188 when the VALID signal (DPCM_IN_VALID) is “1”, and the DPCM data read into the buffer 188 is held when the VALID signal (DPCM_IN_VALID) is “0”. The DPCM data held in buffer 188 is D
Inverse DPCM conversion and inverse conversion by PCM conversion circuit 108
The 10-bit data is input from the eleventh bit to the second bit of the buffer 194. When the original data width of the compressed and recorded CCD-RAW data is 10 bits, '00' corresponding to the lower 2 bits of the buffer 194 is input to the buffer 194 via the multiplexer 198 as dummy data. Buffer 1
The output of 94 is expanded CCD-RAW data (CCD_OUT_DATA)
Is output as The control signal generator 182 receives the input V
A VALID signal (CCD_OUT_VALID) for the decompressed data is created from the ALID signal (DPCM_IN_VALID) and output according to the CCD-RAW data.

【0043】圧縮記録されたCCD-RAWデータの元のデー
タ幅が12ビットの場合、図2に示したフォーマットに従
い、下位2ビットのUNPACKおよび合成処理が行われる。U
NPACKすべきデータ(UNPACK_DATA)は、VALID信号(UNPACK
_VALID)が‘1’のときバッファ186に読み込まれ、VALID
信号(UNPACK_VALID)が‘0’のときはバッファ186に読み
込まれたデータが保持される。バッファ186に保持され
たデータは、マルチプレクサ196によって2ビットずつ読
み出され、マルチプレクサ198を介してバッファ194の下
位2ビットに接続される。
When the original data width of the compressed and recorded CCD-RAW data is 12 bits, UNPACK and synthesis processing of the lower 2 bits are performed according to the format shown in FIG. U
The data to be NPACK (UNPACK_DATA) is the VALID signal (UNPACK
When (_VALID) is '1', it is read into buffer 186 and VALID
When the signal (UNPACK_VALID) is “0”, the data read into the buffer 186 is held. The data held in the buffer 186 is read out two bits at a time by the multiplexer 196 and connected to the lower two bits of the buffer 194 via the multiplexer 198.

【0044】マルチプレクサ196がどの2ビットを選択す
るかは、制御信号発生器182の4ビットの制御信号により
決定される。制御信号発生器182は、入力されるVALID信
号(DPCM_IN_VALID)をカウントすることにより、バッフ
ァ194に入力されている10ビットデータが何番目である
のか判断し4ビットの制御信号を発生する。また、マル
チプレクサ198に、マルチプレクサ196の出力を選択させ
るか、ダミーデータ‘00’を選択させるかの制御も、こ
の4ビットの制御信号によって行われる。
Which two bits are selected by the multiplexer 196 is determined by a 4-bit control signal of the control signal generator 182. The control signal generator 182 counts the input VALID signal (DPCM_IN_VALID), determines the order of the 10-bit data input to the buffer 194, and generates a 4-bit control signal. Further, the control of causing the multiplexer 198 to select the output of the multiplexer 196 or the dummy data '00' is also performed by the 4-bit control signal.

【0045】バッファ194において合成された12ビット
のデータは、伸長されたCCD-RAWデータ(CCD_OUT_DATA)
として出力される。制御信号発生器182は、入力されるV
ALID信号(DPCM_IN_VALID)から伸長されたデータに対応
するVALID信号(CCD_OUT_VALID)を作成して、CCD-RAWデ
ータに合わせて出力する。
The 12-bit data synthesized in the buffer 194 is expanded CCD-RAW data (CCD_OUT_DATA).
Is output as The control signal generator 182 receives the input V
A VALID signal (CCD_OUT_VALID) corresponding to the data expanded from the ALID signal (DPCM_IN_VALID) is created and output in accordance with the CCD-RAW data.

【0046】また、バッファ186のデータは逆DPCM変換
されるデータ八個に付き一回しか更新されない。従っ
て、制御信号発生器182は、入力されるVALID信号(DPCM_
IN_VALID)をカウントしながら、STOP信号(UNPACK_STOP)
を作成し出力することで、上位10ビットのデータと下位
2ビットとのデータの待ち合わせ処理を容易に行う。
The data in the buffer 186 is updated only once for every eight data subjected to the inverse DPCM conversion. Therefore, the control signal generator 182 receives the input VALID signal (DPCM_
STOP signal (UNPACK_STOP) while counting IN_VALID)
By creating and outputting the upper 10 bits of data and the lower 10 bits.
The process of waiting for data with 2 bits is easily performed.

【0047】●待ち合わせ処理 図6は待ち合わせ処理の具体例を示すタイミングチャー
トである。
FIG. 6 is a timing chart showing a specific example of the waiting process.

【0048】以下では、説明を簡単にするために、DPCM
変換回路108からバッファ254へ送られるデータを10bit_
DATA、10bit_DATAに伴うVALID信号およびSTOP信号をそ
れぞれ10bit_VALIDおよび10bit_STOPとして説明する。
実際には、制御信号発生器182がDPCM変換回路108のデー
タ遅延を考慮して制御を行う。
In the following, for simplicity of explanation, the DPCM
The data sent from the conversion circuit 108 to the buffer 254 is
The VALID signal and STOP signal associated with DATA and 10bit_DATA will be described as 10bit_VALID and 10bit_STOP, respectively.
Actually, the control signal generator 182 performs control in consideration of the data delay of the DPCM conversion circuit 108.

【0049】タイミングt1において、UNPACK_VALID信号
が‘1’、UNPACK_STOP信号が‘0’であるから、UNPACK_
DATAであるP1はバッファ186に読み込まれる。UNPACK_DA
TAは八個の10bit_DATAに対して二回しか更新されないの
で、次のタイミングt2においてUNPACK_DATAのP2に更新
されないように、制御信号発生器182はUNPACK_STOP信号
を‘1’にする。
At timing t1, the UNPACK_VALID signal is “1” and the UNPACK_STOP signal is “0”.
P1, which is DATA, is read into the buffer 186. UNPACK_DA
Since the TA is updated only twice for eight 10-bit_DATAs, the control signal generator 182 sets the UNPACK_STOP signal to “1” so as not to be updated to P2 of the UNPACK_DATA at the next timing t2.

【0050】タイミングt2において、10bit_VALID信号
が‘1’であるので、選択されたデータD1およびP1はバ
ッファ194で合成されてCCD_OUT_DATAとして出力され
る。制御信号発生器182はCCD_OUT_VALID信号を‘1’に
する。
At timing t2, since the 10-bit VALID signal is "1", the selected data D1 and P1 are combined in the buffer 194 and output as CCD_OUT_DATA. The control signal generator 182 sets the CCD_OUT_VALID signal to “1”.

【0051】タイミングt8において、選択されたデータ
D7およびP1は、バッファ194で合成されてCCD_OUT_DATA
として出力される。タイミングt8の処理により七つのデ
ータの合成処理が終了するので、次のタイミングt9にお
いて八つ目のデータの合成処理が処理終了した後にバッ
ファ186のデータを更新する必要がある。そのために、
タイミングt8で、制御信号発生器182はUNPACK_STOP信号
を‘1’から‘0’にする。
At timing t8, the selected data
D7 and P1 are combined in buffer 194 to form CCD_OUT_DATA
Is output as Since the processing of synthesizing the seven data ends by the processing at timing t8, it is necessary to update the data in the buffer 186 after the processing of synthesizing the eighth data ends at the next timing t9. for that reason,
At timing t8, the control signal generator 182 changes the UNPACK_STOP signal from “1” to “0”.

【0052】タイミングt9において、選択されたデータ
D8およびP1は、バッファ194で合成されてCCD_OUT_DATA
として出力される。一方、UNPACK_DATAのP2は、バッフ
ァ186に読み込まれる。そして、タイミングt1と同様
に、制御信号発生器182はUNPACK_STOP信号を‘1’にす
る。
At timing t9, the selected data
D8 and P1 are combined in buffer 194 to form CCD_OUT_DATA
Is output as On the other hand, P2 of UNPACK_DATA is read into the buffer 186. Then, similarly to the timing t1, the control signal generator 182 sets the UNPACK_STOP signal to “1”.

【0053】タイミングt10において、選択されたデー
タD9およびP2は、バッファ194で合成されてCCD_OUT_DAT
Aとして出力される。また、UNPACK_VALID信号は‘0’で
あるからSTOP信号を出す必要がないので、制御信号発生
器182はUNPACK_STOP信号を‘0’にする。
At a timing t10, the selected data D9 and P2 are combined in the buffer 194 to obtain CCD_OUT_DAT
Output as A. Further, since the UNPACK_VALID signal is “0”, there is no need to issue a STOP signal, so the control signal generator 182 sets the UNPACK_STOP signal to “0”.

【0054】タイミングt17において、選択されたデー
タD16およびP2は、バッファ194で合成されてCCD_OUT_DA
TAとして出力される。タイミングt17の処理によりD9か
らD16の八つのデータの合成処理が終了するので、バッ
ファ186のデータを更新する必要がある。しかし、UNPAC
K_VALID信号が‘0’で、UNPACK_DATAは不定である。そ
のため、次のタイミングt18では合成処理ができないの
で、制御信号発生器182は10bit_DATAが更新されないよ
うに10bit_STOP信号を‘1’にする。
At a timing t17, the selected data D16 and P2 are combined in the buffer 194 and the CCD_OUT_DA
Output as TA. Since the processing of synthesizing the eight data D9 to D16 is completed by the processing at timing t17, the data in the buffer 186 needs to be updated. But UNPAC
The K_VALID signal is '0' and UNPACK_DATA is undefined. Therefore, the synthesizing process cannot be performed at the next timing t18, and the control signal generator 182 sets the 10-bit_STOP signal to “1” so that 10-bit_DATA is not updated.

【0055】タイミングt18において、10bit_STOP信号
が‘1’であるから10bit_DATAはD17のまま更新されな
い。また、UNPACK_VALID信号が‘1’であるので、UNPAC
K_DATAのP3がバッファ186に読み込まれる。タイミングt
1と同様に、制御信号発生器182はUNPACK_STOP信号を
‘1’にする。
At timing t18, the 10-bit_STOP signal is "1", so that 10-bit_DATA is not updated with D17. Also, since the UNPACK_VALID signal is '1',
P3 of K_DATA is read into the buffer 186. Timing t
Similarly to 1, the control signal generator 182 sets the UNPACK_STOP signal to “1”.

【0056】タイミングt19において、選択されたデー
タD17およびP3は、バッファ194で合成されてCCD_OUT_DA
TAとして出力される。
At the timing t19, the selected data D17 and P3 are combined in the buffer 194 and the CCD_OUT_DA
Output as TA.

【0057】このように、データ変換コア104は、STOP
信号を必要に応じて出力することで、容易に待ち合わせ
処理を実現する。また、データ変換コア104によってハ
ードウェア的に待ち合わせ処理が実現されることによ
り、各回路ブロック間のデータ転送制御を、システム制
御回路30はほとんど行う必要がない。
As described above, the data conversion core 104 performs the STOP
By outputting the signal as needed, the queuing process can be easily realized. In addition, since the data conversion core 104 implements the queuing process in hardware, the system control circuit 30 hardly needs to control data transfer between the circuit blocks.

【0058】[インタフェイス回路]上記のように、デ
ータ変換コア104は、VALID信号およびSTOP信号により、
二つのブロックからデータを受け取る場合の待ち合わせ
処理を容易に実現する。しかし、他のブロックとの間で
データのハンドシェイクを実際に行うためには、データ
変換コア104の周辺にVALID信号およびSTOP信号を制御す
るインタフェイス回路102が必要になる。
[Interface Circuit] As described above, the data conversion core 104 uses the VALID signal and the STOP signal to
A waiting process when data is received from two blocks is easily realized. However, in order to actually perform data handshake with another block, an interface circuit 102 for controlling the VALID signal and the STOP signal is required around the data conversion core 104.

【0059】図7はインタフェイス回路102の最も基本的
な構成例を示すブロック図である。
FIG. 7 is a block diagram showing an example of the most basic configuration of the interface circuit 102.

【0060】データ変換回路100に対応する演算ユニッ
ト302は、演算ユニット300および304とデータのハンド
シェイクを行うインタフェイス回路102と、入力されデ
ータに処理を施すデータ変換コア104に対応する演算回
路308によって構成される。システムを構成する複数の
演算ユニットは、演算ユニット302の構成を基本とし、
すべてのブロックは同様の構成で設計されている。
An arithmetic unit 302 corresponding to the data conversion circuit 100 includes an interface circuit 102 for performing handshaking of data with the arithmetic units 300 and 304, and an arithmetic circuit 308 corresponding to a data conversion core 104 for processing input data. Composed of The plurality of operation units configuring the system are based on the configuration of the operation unit 302,
All blocks are designed with a similar configuration.

【0061】ユニット間を伝播するすべてのデータ系列
は、各データ系列に対して一対のVALID信号およびSTOP
信号を伴う。装置内における各演算ユニット間のデータ
転送はすべて、これらの信号によって制御される。
All data sequences propagating between units have a pair of VALID signals and a STOP signal for each data sequence.
Accompanied by a signal. All data transfer between each processing unit in the device is controlled by these signals.

【0062】VALID信号は、各演算ユニット間を転送さ
れるデータ系列が、あるタイミングにおいて有効なデー
タであることを示し、データ系列の伝播方向と同じ方向
に伝播される。本実施形態において、VALID信号が‘1’
であるサイクルは、そのデータ系列は有効であることを
意味し、有効なデータ系列は1サイクルのみ出力され
る。
The VALID signal indicates that the data sequence transferred between the operation units is valid data at a certain timing, and is propagated in the same direction as the data sequence. In the present embodiment, the VALID signal is '1'
The cycle of means that the data series is valid, and only one cycle of the valid data series is output.

【0063】STOP信号は、データを受け取るべき演算ユ
ニットがデータ処理中などのために、次のタイミングに
入力されるデータを処理することができない場合に、入
力されるデータ系列のデータ更新を停止するように指示
する信号で、データ系列の伝播方向と逆の方向に伝播さ
れる。本実施形態において、STOP信号が‘1’であるサ
イクルは、その演算ユニットがデータ処理ができないこ
とを意味する。
The STOP signal is used to stop updating the data of the input data sequence when the data to be input at the next timing cannot be processed because the arithmetic unit that should receive the data is processing the data. Is propagated in a direction opposite to the propagation direction of the data sequence. In this embodiment, a cycle in which the STOP signal is “1” means that the arithmetic unit cannot perform data processing.

【0064】インタフェイス回路102の目的は、既に述
べたように、データ処理を行う演算回路308の設計を容
易にすることと、システム全体の制御を容易にすること
である。
As described above, the purpose of the interface circuit 102 is to facilitate the design of the arithmetic circuit 308 for performing data processing and to facilitate the control of the entire system.

【0065】演算回路308は、あるタイミングにおい
て、入力されるVALID_IN信号が‘1’の場合にのみデー
タを受け取り必要なデータ処理を行う。また、後段に接
続された演算ユニット304へ有効なデータ転送を行う際
は、VALID_OUT信号を‘1’にセットする。ただし、VALI
D_OUT信号が‘1’であるサイクルであっても、後段に接
続された演算ユニット304からのSTOP信号であるOUT_STO
P信号が‘1’である場合は、演算回路308へのSTOP信号
であるSTOP_OUT信号が‘1’になる。つまり、演算ユニ
ット302がデータ更新を行うことができないので、演算
回路308におけるすべての内部状態が保持される。ま
た、演算ユニット302の前段に接続された演算ユニット3
00からのデータ転送を停止したい場合は、STOP_IN信号
を‘1’にセットする。つまり、VALID_IN信号が‘1’、
並びに、STOP_IN信号およびSTOP_OUT信号が‘0’のとき
にのみ演算回路308は有効なデータの取り込みを行う。
At a certain timing, the arithmetic circuit 308 receives data only when the input VALID_IN signal is “1” and performs necessary data processing. When valid data transfer is performed to the operation unit 304 connected to the subsequent stage, the VALID_OUT signal is set to “1”. However, VALI
Even in the cycle in which the D_OUT signal is '1', OUT_STO which is a STOP signal from the arithmetic unit 304 connected to the subsequent stage
When the P signal is “1”, the STOP_OUT signal which is a STOP signal to the arithmetic circuit 308 becomes “1”. That is, since the arithmetic unit 302 cannot update data, all internal states in the arithmetic circuit 308 are held. Also, the arithmetic unit 3 connected before the arithmetic unit 302
If you want to stop data transfer from 00, set the STOP_IN signal to '1'. That is, the VALID_IN signal is '1',
The arithmetic circuit 308 fetches valid data only when the STOP_IN signal and the STOP_OUT signal are “0”.

【0066】実際のデータ処理においては、演算回路30
8に入力されるVALID信号をカウントするだけで大抵の制
御を行うことができる。
In actual data processing, the arithmetic circuit 30
Most control can be performed only by counting the VALID signal input to 8.

【0067】インタフェイス回路102は、実際データ処
理を行う演算回路308の周辺に位置し、隣接する演算ユ
ニットとデータのハンドシェイクを行う。インタフェイ
ス回路102の基本構成は、入力データであるIN_DATAのバ
ス幅(nビット)に相当するn個のDフリップフロップな
どから構成されるバッファ110と、一個のDフリップフロ
ップ、n+1ビット出力のデータセレクタ114および複数の
論理ゲートで構成される。
The interface circuit 102 is located around the operation circuit 308 that actually performs data processing, and performs data handshaking with an adjacent operation unit. The basic configuration of the interface circuit 102 includes a buffer 110 composed of n D flip-flops corresponding to the bus width (n bits) of the input data IN_DATA, one D flip-flop, and n + 1 bit output. And a plurality of logic gates.

【0068】[インタフェイス回路の機能]図8Aおよび
8Bはデータ、VALID信号およびSTOP信号の関係を詳細に
示すタイミングチャートで、インタフェイス回路102の
機能を説明するものである。なお、本実施形態における
演算回路308、演算ユニット300および演算ユニット304
の動作は、説明のための動作を仮定しているに過ぎな
い。なお、図8Aおよび図8Bは一連のタイミングチャート
である。
[Functions of Interface Circuit]
FIG. 8B is a timing chart showing the relationship between the data, the VALID signal and the STOP signal in detail, and explains the function of the interface circuit 102. The arithmetic circuit 308, the arithmetic unit 300, and the arithmetic unit 304 in the present embodiment
Are merely assuming operations for explanation. 8A and 8B are a series of timing charts.

【0069】タイミングt0において、D-FF112の出力は
リセット信号RESETにより‘0’にリセットされる。その
結果、演算ユニット302から出力されるIN_STOP信号は
‘0’になる。セレクタ114はデータ入力側(非バッファ
110側)にセットされるので、IN_DATAおよびIN_VALID信
号が演算回路308のDATA_INおよびVALID_IN信号に直結さ
れる。
At the timing t0, the output of the D-FF 112 is reset to “0” by the reset signal RESET. As a result, the IN_STOP signal output from the arithmetic unit 302 becomes “0”. The selector 114 is connected to the data input side (non-buffer
110), the IN_DATA and IN_VALID signals are directly connected to the DATA_IN and VALID_IN signals of the arithmetic circuit 308.

【0070】タイミングt1においては、入力データであ
るDATA_INが不定、演算回路308へ入力されるVALID_IN信
号が‘0’であるから、演算ユニット302は一切の処理を
行わない。t1直後に、前段に接続された演算ユニット30
0からの入力データであるIN_DATAが確定し、IN_VALID信
号が‘1’に変化するので、演算回路308へ入力されるVA
LID_IN信号は‘1’に変化する。
At timing t 1, the input data DATA_IN is undefined and the VALID_IN signal input to the arithmetic circuit 308 is “0”, so that the arithmetic unit 302 does not perform any processing. Immediately after t1, the arithmetic unit 30 connected to the previous stage
Since the input data IN_DATA from 0 is determined and the IN_VALID signal changes to '1', the VA input to the arithmetic circuit 308
The LID_IN signal changes to '1'.

【0071】タイミングt2およびt3においては、演算回
路308へ入力されるVALID_IN信号が‘1’、STOP_IN信号
およびSTOP_OUT信号が‘0’であるから、IN_DATAのD1お
よびD2は、セレクタ114を介して有効なデータとして演
算回路308に読み込まれ処理される。
At timings t 2 and t 3, since the VALID_IN signal and the STOP_IN signal and the STOP_OUT signal input to the arithmetic circuit 308 are “0”, D 1 and D 2 of IN_DATA are valid via the selector 114 The data is read into the arithmetic circuit 308 and processed.

【0072】タイミングt4においては、演算回路308へ
入力されるVALID_IN信号は‘1’であるが、演算回路308
から出力されるSTOP_IN信号が‘1’を示している。つま
り、演算回路308が現在データ処理中のため、次のデー
タを受け取ることができないことを意味する。この場
合、VALID_IN信号およびSTOP_IN信号の論理積である論
理ゲート118の出力はD-FF112を‘1’にセットして、演
算ユニット300へ‘1’のIN_STOP信号を出力すると同時
に、セレクタ114をバッファ110側にセットする。IN_STO
P信号は、前記した論理ゲート124と同様の作用により、
IN_VALID信号を‘1’から‘0’に変化させる。また、論
理ゲート118およびD-FF112の出力は、論理ゲート116を
介してバッファ110のLOAD信号(LD)になる。従って、タ
イミングt4において、IN_DATAのD3はバッファ110に読み
込まれ、読み込まれたデータD3*が演算回路308へのDATA
_INとして出力される。
At timing t4, the VALID_IN signal input to the arithmetic circuit 308 is "1", but the arithmetic circuit 308
Indicates '1'. In other words, it means that the arithmetic circuit 308 is currently processing data and cannot receive the next data. In this case, the output of the logic gate 118, which is the logical product of the VALID_IN signal and the STOP_IN signal, sets the D-FF 112 to '1', outputs the IN_STOP signal of '1' to the arithmetic unit 300, and simultaneously buffers the selector 114. Set to 110 side. IN_STO
The P signal is generated by the same operation as the above-described logic gate 124.
Change the IN_VALID signal from '1' to '0'. The outputs of the logic gate 118 and the D-FF 112 become the LOAD signal (LD) of the buffer 110 via the logic gate 116. Accordingly, at timing t4, D3 of IN_DATA is read into the buffer 110, and the read data D3 * is transferred to the arithmetic circuit 308 by DATA.
Output as _IN.

【0073】タイミングt5においては、演算ユニット30
2から出力されるIN_STOP信号が‘1’であるから、演算
ユニット300から出力されるIN_DATAは更新されない。ま
た、演算回路308へ入力されるVALID_IN信号および演算
回路308から出力されるSTOP_IN信号は‘1’のままであ
るので、D-FF112は引き続き‘1’にセットされる。ま
た、バッファ110の更新も行われない。
At timing t5, the operation unit 30
Since the IN_STOP signal output from 2 is “1”, the IN_DATA output from the arithmetic unit 300 is not updated. Further, since the VALID_IN signal input to the arithmetic circuit 308 and the STOP_IN signal output from the arithmetic circuit 308 remain “1”, the D-FF 112 is continuously set to “1”. Also, the buffer 110 is not updated.

【0074】タイミングt6においては、演算ユニット30
2から出力されるIN_STOP信号が‘1’であるから、演算
ユニット300から出力されるIN_DATAは更新されない。し
かし、演算回路308へ入力されるVALID_IN信号が‘1’の
ままで、演算回路308から出力されるSTOP_IN信号が
‘0’になるから、DATA_INに接続されているバッファ11
0のデータD3*は演算回路308に読み込まれ処理される。
また、STOP_IN信号は、論理ゲート118を介してD-FF112
を‘0’にリセットし、演算ユニット302から出力される
IN_STOP信号を‘0’にする。そして、セレクタ114はデ
ータ入力側を選択するので、演算回路308のDATA_INは再
び演算ユニット302のIN_DATAと直結される。さらに、IN
_STOP信号は、前記したゲート回路124と同様の作用によ
り、IN_VALID信号を‘0’から‘1’に変化させる。
At timing t6, the operation unit 30
Since the IN_STOP signal output from 2 is “1”, the IN_DATA output from the arithmetic unit 300 is not updated. However, since the VALID_IN signal input to the arithmetic circuit 308 remains '1' and the STOP_IN signal output from the arithmetic circuit 308 becomes '0', the buffer 11 connected to DATA_IN
The data D3 * of 0 is read into the arithmetic circuit 308 and processed.
Further, the STOP_IN signal is output to the D-FF 112 via the logic gate 118.
Is reset to '0' and output from the arithmetic unit 302
Set the IN_STOP signal to '0'. Then, since the selector 114 selects the data input side, DATA_IN of the arithmetic circuit 308 is directly connected to IN_DATA of the arithmetic unit 302 again. Furthermore, IN
The _STOP signal changes the IN_VALID signal from '0' to '1' by the same operation as the gate circuit 124 described above.

【0075】タイミングt7においては、演算回路308へ
入力されるVALID_IN信号が‘1’であり、演算回路308か
ら出力されるSTOP_IN信号および演算回路308へ入力され
るSTOP_OUT信号が‘0’であるから、IN_DATAのD4はセレ
クタ114を介して有効なデータとして演算回路308に読み
込まれ処理される。また、演算ユニット302から出力さ
れるIN_STOP信号が‘0’であるから、演算ユニット300
から出力されるデータは更新される。
At timing t7, the VALID_IN signal input to the arithmetic circuit 308 is “1”, and the STOP_IN signal output from the arithmetic circuit 308 and the STOP_OUT signal input to the arithmetic circuit 308 are “0”. , IN_DATA are read into the arithmetic circuit 308 via the selector 114 as valid data and processed. Further, since the IN_STOP signal output from the arithmetic unit 302 is “0”, the arithmetic unit 300
The data output from is updated.

【0076】タイミングt8においては、タイミングt7と
同様に、IN_DATAのD5は演算回路308において処理され、
IN_DATAは更新される。
At timing t8, similarly to timing t7, D5 of IN_DATA is processed by the arithmetic circuit 308,
IN_DATA is updated.

【0077】タイミングt9においては、演算ユニット30
4へ入力されるIN_VALID信号が‘0’であるから、IN_DAT
Aが無効(不定)を意味する。IN_DATAは演算回路308のD
ATA_INへ接続されているが、無効なデータであるため演
算回路308は処理を行わない。なお、本実施形態におい
てはIN_DATAが不定であるとしたが、演算ユニット300か
らのIN_DATAがD5のまま更新されない場合、IN_VALID信
号は‘0’になるよう設計されていることは前記したと
おりである。
At timing t9, the operation unit 30
Since the IN_VALID signal input to 4 is '0', IN_DAT
A means invalid (undefined). IN_DATA is D of the arithmetic circuit 308
Although connected to ATA_IN, the arithmetic circuit 308 does not perform any processing because the data is invalid. Note that, in the present embodiment, IN_DATA is undefined, but as described above, the IN_VALID signal is designed to be '0' when the IN_DATA from the arithmetic unit 300 is not updated with D5. .

【0078】タイミングt10において、演算ユニット302
へ入力されるIN_DATAはタイミングt9と同様にして無視
される。一方、演算回路308から出力されるVALID_OUT信
号は‘1’であり、演算ユニット304へ入力さるOUT_STOP
信号は‘0’であるから、OUT_VALID信号に‘1’が出力
される。DATA_OUTのd1はOUT_DATAを介して演算ユニット
304へ転送され、演算ユニット304において有効なデータ
として処理される。
At timing t10, the arithmetic unit 302
IN_DATA input to is ignored as in the case of the timing t9. On the other hand, the VALID_OUT signal output from the arithmetic circuit 308 is “1”, and the OUT_STOP signal input to the arithmetic unit 304 is
Since the signal is '0', '1' is output to the OUT_VALID signal. DATA_OUT d1 is an arithmetic unit via OUT_DATA
The data is transferred to 304 and processed as valid data in the arithmetic unit 304.

【0079】タイミングt11およびt12においては、タイ
ミングt7と同様に、演算ユニット300から入力されるIN_
DATAのD6およびD7が演算回路308によって処理され、デ
ータは更新される。タイミングt10と同様に、演算回路3
08から出力されるOUT_DATAのd2およびd3は演算ユニット
304で処理され、データは更新される。また、演算ユニ
ット304は、OUT_DATAのd3を受け取った直後のタイミン
グt13において新しいデータを受け取ることができない
ため、演算ユニット302へ出力するOUT_STOP信号を‘1’
にする。これは、タイミングt4において、演算ユニット
302が演算ユニット300へ出力するIN_STOP信号を‘0’か
ら‘1’に変化させた処理と同様である。演算ユニット3
04から出力されるOUT_STOP信号は、論理ゲート124を介
してOUT_VALID信号を‘1’から‘0’に変化させる。さ
らに、演算回路308のVALID_OUT信号が‘1’であるの
で、次のタイミングt13において、DATA_OUTのd4を更新
しないように、論理ゲート122を介してSTOP_OUT信号を
‘0’から‘1’に変化させる。
At timings t11 and t12, similarly to timing t7, IN_
The data D6 and D7 are processed by the arithmetic circuit 308, and the data is updated. Similarly to the timing t10, the arithmetic circuit 3
D2 and d3 of OUT_DATA output from 08 are arithmetic units
Processed at 304, the data is updated. Further, the arithmetic unit 304 cannot receive new data at the timing t13 immediately after receiving d3 of OUT_DATA, and therefore outputs the OUT_STOP signal to the arithmetic unit 302 as '1'.
To This is because at timing t4, the arithmetic unit
This is the same as the process in which the 302 changes the IN_STOP signal output to the arithmetic unit 300 from '0' to '1'. Arithmetic unit 3
The OUT_STOP signal output from 04 changes the OUT_VALID signal from '1' to '0' via the logic gate 124. Further, since the VALID_OUT signal of the arithmetic circuit 308 is “1”, the STOP_OUT signal is changed from “0” to “1” via the logic gate 122 at the next timing t13 so as not to update d4 of DATA_OUT. .

【0080】タイミングt13においては、演算ユニット3
04から出力されるOUT_STOP信号が‘1’、演算回路308か
ら出力されるVALID_OUT信号が‘1’、および、演算ユニ
ット300から入力されるIN_VALID信号も‘1’である。こ
れは、後段の演算ユニット304がデータを受け取ること
ができないタイミングにおいて、前段の演算ユニット30
0および演算ユニット302が有効なデータを転送しようと
している状況である。
At timing t13, the operation unit 3
The OUT_STOP signal output from 04 is “1”, the VALID_OUT signal output from the arithmetic circuit 308 is “1”, and the IN_VALID signal input from the arithmetic unit 300 is also “1”. This is because at the timing when the subsequent operation unit 304 cannot receive data, the previous operation unit 30
0 and the operation unit 302 is trying to transfer valid data.

【0081】演算回路308から出力される有効なDATA_OU
Tのd4は、タイミングt12において述べたように、STOP_O
UT信号が‘1’にセットされているのでタイミングt13に
おいて更新されない。また、タイミングt4と同様にし
て、演算回路104へ入力されるVALID_IN信号およびSTOP_
OUT信号は、論理ゲート118を介してD-FF112を‘1’にセ
ットし、演算ユニット300へ出力されるIN_STOP信号を
‘1’にセットするとともに、セレクタ114にバッファ11
0側を選択させる。IN_STOP信号は、前記した論理ゲート
124と同様の作用により、IN_VALID信号を‘1’から
‘0’に変化させる。また、IN_DATAのD8は、バッファ11
0に読み込まれ、読み込まれたデータD8*が演算回路308
のDATA_INへ接続される。
Valid DATA_OU output from arithmetic circuit 308
D4 of T is STOP_O as described at timing t12.
Since the UT signal is set to '1', it is not updated at timing t13. Further, similarly to the timing t4, the VALID_IN signal and the STOP_
The OUT signal sets the D-FF 112 to “1” via the logic gate 118, sets the IN_STOP signal output to the arithmetic unit 300 to “1”, and sets the buffer 114
Select 0 side. The IN_STOP signal is
By the same operation as 124, the IN_VALID signal is changed from '1' to '0'. D8 of IN_DATA is buffer 11
0 and the read data D8 * is
To DATA_IN.

【0082】タイミングt14においては、演算ユニット3
00へ入力されるIN_STOP信号が‘1’であるので、IN_DAT
Aは更新されない。演算ユニット304へ入力されるOUT_ST
OP信号は‘1’のままであるので、演算回路308から出力
されるDATA_OUT信号も更新されない。タイミングt6にお
ける演算ユニット300へ出力されるIN_STOP信号の処理と
同様に、タイミングt14における演算ユニット304の処理
の結果、OUT_STOP信号は‘1’から‘0’に変化する。論
理ゲート124を介して、演算ユニット100から出力される
OUT_VALID信号を‘1’に、論理ゲート122を介して、演
算回路308へ入力されるSTOP_OUT信号を‘0’に変化させ
る。
At timing t14, the operation unit 3
Since the IN_STOP signal input to 00 is '1', IN_DAT
A is not updated. OUT_ST input to arithmetic unit 304
Since the OP signal remains “1”, the DATA_OUT signal output from the arithmetic circuit 308 is not updated. Similarly to the processing of the IN_STOP signal output to the arithmetic unit 300 at the timing t6, as a result of the processing of the arithmetic unit 304 at the timing t14, the OUT_STOP signal changes from “1” to “0”. Output from the arithmetic unit 100 via the logic gate 124
The OUT_VALID signal is changed to “1”, and the STOP_OUT signal input to the arithmetic circuit 308 via the logic gate 122 is changed to “0”.

【0083】タイミングt15においては、演算ユニット3
04へ入力されるOUT_VALID信号が‘1’、演算ユニット30
4から出力されるOUT_STOP信号が‘0’であるから、演算
回路308から出力されるDATA_OUTのd4は有効なデータと
して演算ユニット304において処理され、DATA_OUTは更
新される。また、演算ユニット300へ入力されるIN_STOP
信号は‘1’であるから、演算ユニット300から出力され
るIN_DATAは更新されない。しかし、演算回路308へ入力
されるVALID_IN信号が‘1’、演算回路308から出力され
るSTOP_IN信号および演算回路308へ入力されるSTOP_OUT
信号が‘0’であるから、DATA_INに接続されているバッ
ファ110のデータD8*は、演算回路308に入力され処理さ
れる。また、論理ゲート122の出力は、論理ゲート118を
介してD-FF112を‘0’にリセットし、演算ユニット300
へ出力されるIN_STOP信号を‘0’にセットする。これと
ほぼ同時に、セレクタ114にデータ入力側を選択させ
る。さらに、IN_STOP信号はIN_VALID信号を‘0’から
‘1’に変化させる。
At timing t15, the operation unit 3
OUT_VALID signal input to 04 is '1', arithmetic unit 30
Since the OUT_STOP signal output from 4 is “0”, d4 of DATA_OUT output from the arithmetic circuit 308 is processed as valid data in the arithmetic unit 304, and DATA_OUT is updated. Also, IN_STOP input to the arithmetic unit 300
Since the signal is “1”, IN_DATA output from the arithmetic unit 300 is not updated. However, the VALID_IN signal input to the arithmetic circuit 308 is “1”, the STOP_IN signal output from the arithmetic circuit 308, and the STOP_OUT signal input to the arithmetic circuit 308.
Since the signal is “0”, the data D8 * of the buffer 110 connected to DATA_IN is input to the arithmetic circuit 308 and processed. Further, the output of the logic gate 122 resets the D-FF 112 to “0” via the logic gate 118, and outputs
Set the IN_STOP signal output to to '0'. Almost at the same time, the selector 114 is made to select the data input side. Further, the IN_STOP signal changes the IN_VALID signal from '0' to '1'.

【0084】タイミングt16においては、タイミングt7
と同様に、演算ユニット300から出力されるIN_DATAのD9
は、演算回路308で処理され、IN_DATAは更新される。
At timing t16, at timing t7
Similarly to D9 of IN_DATA output from the arithmetic unit 300
Is processed by the arithmetic circuit 308, and IN_DATA is updated.

【0085】タイミングt17においては、演算ユニット3
04から出力されるOUT_STOP信号が‘1’であるが、演算
ユニット300および演算ユニット302は何れも有効なデー
タを転送しようとしていないので、問題はない。
At timing t17, the operation unit 3
Although the OUT_STOP signal output from 04 is “1”, there is no problem because neither the arithmetic unit 300 nor the arithmetic unit 302 attempts to transfer valid data.

【0086】このように、インタフェイス回路102の機
能は、データ変換回路100に対応する演算ユニット302が
データを受け取れない場合、あるいは、後段の演算ユニ
ット304がデータを受け取れずに演算ユニット302の動作
が停止するような場合に、前段の演算ユニット300から
転送されてくるデータを一時的にバッファに記憶し、前
段の演算ユニット300のデータ更新を停止させる機能を
果たす。また、インタフェイス回路102は、以下に示す
ように、その一部構成を変更するだけで、すべての演算
ユニット(回路ブロック)に対してもテンプレート的に
使用することができる。
As described above, the function of the interface circuit 102 is that the operation unit 302 corresponding to the data conversion circuit 100 cannot receive the data, or the operation unit 304 of the subsequent stage cannot receive the data and In the case where the operation unit 300 stops, the data transferred from the preceding operation unit 300 is temporarily stored in a buffer, and the function of stopping the data update of the previous operation unit 300 is performed. Further, as described below, the interface circuit 102 can be used as a template for all arithmetic units (circuit blocks) only by partially changing its configuration.

【0087】図9および図10はインタフェイス回路102の
圧縮および伸長時の動作をそれぞれ示すブロック図で、
基本的な構成は図7と同じである。
FIGS. 9 and 10 are block diagrams showing the operations of the interface circuit 102 during compression and expansion, respectively.
The basic configuration is the same as FIG.

【0088】圧縮時には、データ変換コア104から出力
されるデータが二種類あり、後段のブロックはJPEG回路
80およびメモリ制御回路40bの二つになる。そのため、O
Rゲート120を三入力に変更して二種類の出力データに対
応する。
At the time of compression, there are two types of data output from the data conversion core 104, and the subsequent block is a JPEG circuit.
80 and the memory control circuit 40b. Therefore, O
The R gate 120 is changed to three inputs to correspond to two types of output data.

【0089】伸長時には、データ変換コア104へ入力さ
れるデータが二種類あり、前段のブロックはJPEG回路80
およびメモリ制御回路40dの二つになる。そのため、後
段のブロックに相当するメモリ制御回路40cから出力さ
れるSTOP信号をORゲート120aおよび120bに供給して二種
類の入力データに対応する。
At the time of decompression, there are two types of data input to the data conversion core 104, and the preceding block is a JPEG circuit 80.
And the memory control circuit 40d. Therefore, the STOP signal output from the memory control circuit 40c corresponding to the subsequent block is supplied to the OR gates 120a and 120b to correspond to two types of input data.

【0090】[画像の記録処理]画像処理装置1000は、
モードダイアル32に撮影モードが設定されている場合、
撮影レンズ10、撮像素子12およびA/D変換器14によって
得られる撮影画像のCCD-RAWデータを、画像処理した後
または直接、記録媒体70へ格納する。図11は撮影画像の
記録処理に関する画像処理装置1000の動作例を示すフロ
ーチャートで、システム制御回路30によって実行される
ものである。
[Image Recording Processing] The image processing apparatus 1000
When the shooting mode is set on the mode dial 32,
CCD-RAW data of a captured image obtained by the imaging lens 10, the imaging device 12, and the A / D converter 14 is stored in the recording medium 70 after image processing or directly. FIG. 11 is a flowchart illustrating an operation example of the image processing apparatus 1000 regarding the recording processing of a captured image, which is executed by the system control circuit 30.

【0091】図11において、読出専用メモリ36に格納さ
れているハフマンテーブルの一つがJPEG回路80に設定さ
れる(S100)。使用されるハフマンテーブルは、記録モー
ドがJPEGモードの場合と、CCD-RAW可逆圧縮モードの場
合とで異なり、DCTされたデータ系列に適したハフマン
テーブル、または、DPCM変換されたデータ系列に適した
ハフマンテーブルが使用される。
In FIG. 11, one of the Huffman tables stored in the read-only memory 36 is set in the JPEG circuit 80 (S100). The Huffman table used differs between when the recording mode is JPEG mode and when the CCD-RAW lossless compression mode is used.The Huffman table suitable for the DCT-converted data series or the DPH-converted data series Huffman tables are used.

【0092】読出専用メモリ36には、前記二種類のデー
タ系列それぞれに対して複数のハフマンテーブルが格納
されている。それらのハフマンテーブルは、それぞれ類
似性の高い特徴をもつ複数の画像データから得られる平
均的なヒストグラムから生成されたものである。従っ
て、基の画像データに類似する画像データに対して効率
的な符号化を提供する。
A plurality of Huffman tables are stored in the read-only memory 36 for each of the two types of data series. These Huffman tables are generated from average histograms obtained from a plurality of pieces of image data each having highly similar features. Therefore, efficient encoding is provided for image data similar to the original image data.

【0093】次に、記録モードスイッチ34の設定を判定
する(S101)。記録モードがJPEGモードであれば、メモリ
60に保持されたCCD-RAWデータを、メモリ制御回路40を
介して、画像処理回路50へ送る(S102)。画像処理回路50
はCCD-RAWデータに画像処理を施す(S103)。画像処理さ
れたデータは、メモリ制御回路40を介して、JPEG回路80
に送られ、DCTおよび量子化される(S104)。
Next, the setting of the recording mode switch 34 is determined (S101). If the recording mode is JPEG mode,
The CCD-RAW data held in 60 is sent to the image processing circuit 50 via the memory control circuit 40 (S102). Image processing circuit 50
Performs image processing on the CCD-RAW data (S103). The image-processed data is sent to the JPEG circuit 80 via the memory control circuit 40.
Are subjected to DCT and quantization (S104).

【0094】一方、記録モードスイッチ34の設定がCCD-
RAWモードであれば、メモリ60に保持されたCCD-RAWデー
タを、メモリ制御回路40およびインタフェイス回路102
を介して、データ変換コア104に送る(S110)。そして、C
CD-RAWデータのデータ幅を判定し(S111)、12ビットの場
合は分割・合成回路106に分割・PACK処理を行わせ(S11
3)、PACKされたデータをメモリ制御回路40を介してメモ
リ60に送らせる(S114)。10ビット幅のCCD-RAWデータ、
または、12ビット幅のCCD-RAWデータから分離された上
位10ビットのデータは、DPCM変換回路108によりDPCM変
換される(S112)。
On the other hand, the setting of the recording mode switch 34 is
In the RAW mode, the CCD-RAW data held in the memory 60 is transferred to the memory control circuit 40 and the interface circuit 102.
Is sent to the data conversion core 104 via the (S110). And C
The data width of the CD-RAW data is determined (S111), and in the case of 12 bits, the dividing / combining circuit 106 performs the dividing / PACK processing (S11).
3) The PACKed data is sent to the memory 60 via the memory control circuit 40 (S114). 10-bit wide CCD-RAW data,
Alternatively, the upper 10 bits of data separated from the 12-bit wide CCD-RAW data are subjected to DPCM conversion by the DPCM conversion circuit 108 (S112).

【0095】DCTおよび量子化、または、DPCM変換され
たデータは、JPEG回路80のハフマン符号・復号回路86に
設定されているハフマンテーブルに従いハフマン符号化
される(S105)。ハフマン符号化されたデータは、メモリ
制御回路40を介して、メモリ60に送られる(S106)。
The data subjected to DCT and quantization or DPCM conversion is Huffman-coded according to a Huffman table set in the Huffman coding / decoding circuit 86 of the JPEG circuit 80 (S105). The Huffman-coded data is sent to the memory 60 via the memory control circuit 40 (S106).

【0096】例えば一画像分の符号がメモリ60に格納さ
れると、メモリ60に新たに格納されたハフマン符号と、
前回の符号化によりメモリ60に格納されたハフマン符号
とのデータサイズが比較され(S107)、データサイズの小
さいハフマン符号がメモリ60に保持される。続いて、す
べてのハフマンテーブルによる符号化が終了したか否か
が判定され(S108)、未了であればステップ100へ戻り、
新たなハフマンテーブルがJPEG回路80に設定され、符号
化が繰り返される。この符号化の繰り返しによって、異
なるハフマンテーブルによって得られる複数のハフマン
符号の中でデータサイズが最小のものが選択されること
になる。
For example, when a code for one image is stored in the memory 60, a Huffman code newly stored in the memory 60 and
The data size with the Huffman code stored in the memory 60 by the previous encoding is compared (S107), and the Huffman code with a small data size is held in the memory 60. Subsequently, it is determined whether or not encoding by all Huffman tables has been completed (S108), and if not completed, the process returns to step 100,
A new Huffman table is set in the JPEG circuit 80, and the encoding is repeated. By repeating this encoding, the one with the smallest data size is selected from among a plurality of Huffman codes obtained by different Huffman tables.

【0097】その後、メモリ60に格納された符号は、メ
モリ制御回路40を介して、記録媒体70にデータファイル
として格納される(S109)。その際、ハフマン符号化され
たデータおよびPACKされたデータは、記録(撮影)条件
などを含むヘッダデータとともにCCD-RAW可逆圧縮デー
タとして格納される。なお、ヘッダデータに関しては、
図13を参照して後述する。
After that, the code stored in the memory 60 is stored as a data file on the recording medium 70 via the memory control circuit 40 (S109). At this time, the Huffman-encoded data and the PACK-packed data are stored as CCD-RAW reversible compressed data together with header data including recording (photographing) conditions. For header data,
This will be described later with reference to FIG.

【0098】このように、本実施形態においては、複数
のハフマンテーブルを予め用意して、一つのデータに対
して複数回符号化を実行することにより、標準的に提供
される単一のハフマンテーブルを用いる圧縮に比べて、
圧縮率の点で効果的な圧縮を行うことができる。
As described above, in the present embodiment, a plurality of Huffman tables are prepared in advance, and encoding is performed a plurality of times on one data, so that a single Huffman table provided as a standard is provided. Compared to compression using
Effective compression can be performed in terms of the compression ratio.

【0099】●再生モード 画像処理装置1000は、モードダイアル32に再生モードが
設定されている場合、記録媒体70に格納された画像デー
タファイルに記録された画像を画像表示部22に表示す
る。図12は画像の再生処理に関する画像処理装置1000の
動作例を示すフローチャートで、システム制御回路30に
よって実行されるものである。
[Reproduction Mode] When the reproduction mode is set on the mode dial 32, the image processing apparatus 1000 displays the image recorded in the image data file stored in the recording medium 70 on the image display unit 22. FIG. 12 is a flowchart illustrating an operation example of the image processing apparatus 1000 regarding the image reproduction processing, which is executed by the system control circuit 30.

【0100】記録媒体70に格納された画像データファイ
ルは、メモリ制御回路40を介して、メモリ60に読み込ま
れ(S201)、システム制御回路30によってヘッダデータが
解析される(S202)。ヘッダデータを解析した結果を判定
し(S203)、記録モードがJPEGモードであるならば、メモ
リ60に保持されたJPEGデータをメモリ制御回路40を介し
てJPEG回路80に送り、JPEGデータを復号させる(S204)。
つまり、JPEGデータは、ハフマン符号復号回路86によっ
てハフマン復号され、DCT・量子化回路82によって逆量
子化および逆DCTされる。その後、復号された画像デー
タはメモリ制御回路40を介してメモリ60に格納される(S
205)。メモリ60に保持された画像データは、メモリ制御
回路40およびD/A変換器20を介して画像表示部22に送ら
れ、画像が表示される(S206)。
The image data file stored in the recording medium 70 is read into the memory 60 via the memory control circuit 40 (S201), and the header data is analyzed by the system control circuit 30 (S202). The result of analyzing the header data is determined (S203), and if the recording mode is the JPEG mode, the JPEG data held in the memory 60 is sent to the JPEG circuit 80 via the memory control circuit 40 to decode the JPEG data. (S204).
That is, the JPEG data is Huffman-decoded by the Huffman code decoding circuit 86, and is inversely quantized and inverse DCT-processed by the DCT / quantization circuit 82. Thereafter, the decoded image data is stored in the memory 60 via the memory control circuit 40 (S
205). The image data held in the memory 60 is sent to the image display unit 22 via the memory control circuit 40 and the D / A converter 20, and the image is displayed (S206).

【0101】ヘッダデータを解析した結果がCCD-RAWモ
ードであれば、メモリ60に保持されたハフマン符号化さ
れたデータを、メモリ制御回路40を介してJPEG回路80に
送り、ハフマン符号・復号回路86にハフマン復号させ(S
207)、ハフマン復号されたデータをDPCM変換回路108で
逆DPCM変換する(S208)。
If the result of analyzing the header data is a CCD-RAW mode, the Huffman-encoded data held in the memory 60 is sent to the JPEG circuit 80 via the memory control circuit 40, and the Huffman encoding / decoding circuit is 86 Huffman decoding (S
207), the Huffman-decoded data is subjected to inverse DPCM conversion by the DPCM conversion circuit 108 (S208).

【0102】そして、ヘッダデータの解析結果を判定し
て(S209)、CCD-RAWデータが10ビットの場合は、逆DPCM
変換により得られた10ビットのCCD-RAWデータが、イン
タフェイス回路102およびメモリ制御回路40を介して、
メモリ60に格納される(S211)。また、CCD-RAWデータが1
2ビットの場合は、メモリ60に保持されたPACKデータ
を、メモリ制御回路40およびインタフェイス回路102を
介して、データ変換コア104に送り、分割・合成回路106
にUNPACK処理、並びに、UNPACK処理により得られる下位
2ビットのデータと、逆DPCM変換により得られる上位10
ビットのデータとの合成処理を行わせる(S210)。復元さ
れた12ビットのCCD-RAWデータは、インタフェイス回路1
02およびメモリ制御回路40を介して、メモリ60に格納さ
れる(S211)。
Then, the analysis result of the header data is determined (S209). If the CCD-RAW data is 10 bits, the inverse DPCM
The 10-bit CCD-RAW data obtained by the conversion is passed through the interface circuit 102 and the memory control circuit 40,
It is stored in the memory 60 (S211). Also, CCD-RAW data is 1
In the case of 2 bits, the PACK data held in the memory 60 is sent to the data conversion core 104 via the memory control circuit 40 and the interface circuit 102, and the division / combination circuit 106
To UNPACK processing and the lower order obtained by UNPACK processing
2-bit data and top 10 obtained by inverse DPCM conversion
A combining process with bit data is performed (S210). The restored 12-bit CCD-RAW data is transferred to the interface circuit 1
02 and stored in the memory 60 via the memory control circuit 40 (S211).

【0103】メモリ60に格納されたCCD-RAWデータは、
メモリ制御回路40を介して画像処理回路50に送られて画
像処理が施される(S212)。画像処理によって得られたRG
B画像データは、画像処理回路40を介してメモリ60に格
納される(S205)。メモリ60に保持された画像データは、
メモリ制御回路40およびD/A変換器20を介して画像表示
部22に送られ、画像が表示される(S206)。
The CCD-RAW data stored in the memory 60 is
The image is sent to the image processing circuit 50 via the memory control circuit 40 and subjected to image processing (S212). RG obtained by image processing
The B image data is stored in the memory 60 via the image processing circuit 40 (S205). The image data held in the memory 60 is
The image is sent to the image display unit 22 via the memory control circuit 40 and the D / A converter 20, and the image is displayed (S206).

【0104】●データフォーマット 図13は記録媒体70に記録されるCCD-RAW可逆圧縮データ
の基本フォーマット例を示す図である。
Data Format FIG. 13 is a diagram showing a basic format example of CCD-RAW reversible compressed data recorded on the recording medium 70.

【0105】図13に示す基本フォーマットの先頭にはヘ
ッダデータが記録される。ヘッダデータの最初の1ビッ
トは記録モードMODEを示し、‘0’の場合は10ビットのC
CD-RAWデータ、‘1’の場合は12ビットのCCD-RAWデータ
を示す。続く、15ビットには撮像素子12の水平方向の画
素数を表す12ビットの数値SIZE_Hが下詰めで記録され
る。続く16ビットには撮像素子12の垂直方向の画素数を
示す12ビットの数値SIZE_Vが下詰めで記録される。続い
て、下式から計算されるデータサイズのPACKデータが記
録され、PACKデータに続き、ハフマン符号が記録され
る。 データサイズ = MODE × SIZE_H × SIZE_V /(8×8) [b
ytes]
At the beginning of the basic format shown in FIG. 13, header data is recorded. The first bit of the header data indicates the recording mode MODE, and if it is '0', the 10-bit C
CD-RAW data, "1" indicates 12-bit CCD-RAW data. In the subsequent 15 bits, a 12-bit numerical value SIZE_H representing the number of pixels of the image sensor 12 in the horizontal direction is recorded in a bottom-justified manner. In the subsequent 16 bits, a 12-bit numerical value SIZE_V indicating the number of pixels in the vertical direction of the image sensor 12 is recorded in a bottom-justified manner. Subsequently, PACK data having a data size calculated from the following equation is recorded, and Huffman codes are recorded following the PACK data. Data size = MODE × SIZE_H × SIZE_V / (8 × 8) [b
ytes]

【0106】また、CCD-RAW可逆圧縮データのデータフ
ァイルか、JPEGファイルかは、データファイルの先頭4
ビットで判断できる。JPEGファイルの場合には“FFD8”
のコードでファイルが始まるので先頭4ビットは‘111
1’になる。一方、CCD-RAW可逆圧縮データの場合は‘00
00’または‘1000’になる。
Whether the data file is a CCD-RAW reversible compressed data file or a JPEG file is determined by the first 4
It can be determined by bits. "FFD8" for JPEG files
The first 4 bits are '111
1 '. On the other hand, '00 for CCD-RAW lossless compressed data
00 'or' 1000 '.

【0107】以上説明したように、本実施形態によれ
ば、既存のベースラインJPEG符号化・復号回路を用い
て、10または12ビットのCCD-RAWデータ用のCCD-RAW可逆
圧縮・伸長回路を実現することができる。つまり、画像
データの利用目的などに応じて、JPEG記録モードまたは
CCD-RAW可逆圧縮記録モードを選択することができる。
従って、JPEG符号化を行う場合の量子化によるデータの
損失(画質劣化)を防ぎたい場合は、CCD-RAWデータを
可逆圧縮して記録媒体に保存することができる。その
上、圧縮されたCCD-RAWデータ(とくに12ビットのCCD-R
AWデータ)は、CCD-RAW形式のままデータを保存する場
合に比べて充分に小さなデータサイズにすることができ
る。
As described above, according to the present embodiment, a CCD-RAW reversible compression / decompression circuit for 10- or 12-bit CCD-RAW data is formed using an existing baseline JPEG encoding / decoding circuit. Can be realized. In other words, the JPEG recording mode or the
CCD-RAW reversible compression recording mode can be selected.
Therefore, when it is desired to prevent data loss (image quality deterioration) due to quantization when performing JPEG encoding, CCD-RAW data can be losslessly compressed and stored on a recording medium. In addition, compressed CCD-RAW data (especially 12-bit CCD-R
AW data) can have a sufficiently small data size as compared to the case where data is stored in the CCD-RAW format.

【0108】また、言い換えれば、既存のベースライン
JPEG符号化・復号回路の一部を、CCD-RAW可逆圧縮・伸
長処理に流用することができるので、そのような回路を
必要とする機器の開発にかかる負荷を軽減し、より小さ
な回路規模でそのような機器を実現することができる。
Also, in other words, the existing baseline
Part of the JPEG encoding / decoding circuit can be used for CCD-RAW reversible compression / decompression processing, reducing the load on the development of equipment that requires such a circuit and reducing the circuit size. Such a device can be realized.

【0109】さらに、本実施形態においては、複数のハ
フマンテーブルを予め用意して、一つのデータに対して
複数回符号化を実行することにより、標準的に提供され
る単一のハフマンテーブルによる圧縮よりも、圧縮率の
点で効果的な圧縮を行うことができる。
Furthermore, in the present embodiment, a plurality of Huffman tables are prepared in advance, and encoding is performed on one piece of data a plurality of times, so that compression by a single standard Huffman table is provided. More effective compression can be performed in terms of compression ratio.

【0110】このハフマンテーブルの選択供給は、シス
テム制御部30によって選択的に行われるので、画像圧縮
・伸長部に変更を加えることなく容易に実現される。さ
らに、圧縮すべきデータそれぞれに対してハフマンテー
ブルを生成する必要がないので、ハフマンテーブルを生
成するためのソフトウェア開発などの負荷も軽減するこ
とができる。
Since the selection and supply of the Huffman table is selectively performed by the system control unit 30, the Huffman table can be easily realized without changing the image compression / decompression unit. Furthermore, since it is not necessary to generate a Huffman table for each data to be compressed, the load of software development for generating the Huffman table can be reduced.

【0111】なお、上述した実施形態においては、例え
ば電子カメラ(ディジタルカメラ)のような撮像素子を
備える画像処理装置を説明したが、コンピュータや画像
出力装置などで同様の処理を行わせることもできる。
In the above-described embodiment, an image processing apparatus including an image sensor such as an electronic camera (digital camera) has been described. However, similar processing can be performed by a computer or an image output apparatus. .

【0112】[0112]

【他の実施形態】なお、本発明は、複数の機器(例えば
ホストコンピュータ、インタフェイス機器、リーダ、プ
リンタなど)から構成されるシステムに適用しても、一
つの機器からなる装置(例えば、複写機、ファクシミリ
装置など)に適用してもよい。
[Other Embodiments] Even if the present invention is applied to a system including a plurality of devices (for example, a host computer, an interface device, a reader, a printer, etc.), an apparatus (for example, a copying machine) Machine, facsimile machine, etc.).

【0113】また、本発明の目的は、前述した実施形態
の機能を実現するソフトウェアのプログラムコードを記
録した記憶媒体(または記録媒体)を、システムあるい
は装置に供給し、そのシステムあるいは装置のコンピュ
ータ(またはCPUやMPU)が記憶媒体に格納されたプログ
ラムコードを読み出し実行することによっても、達成さ
れることは言うまでもない。この場合、記憶媒体から読
み出されたプログラムコード自体が前述した実施形態の
機能を実現することになり、そのプログラムコードを記
憶した記憶媒体は本発明を構成することになる。また、
コンピュータが読み出したプログラムコードを実行する
ことにより、前述した実施形態の機能が実現されるだけ
でなく、そのプログラムコードの指示に基づき、コンピ
ュータ上で稼働しているオペレーティングシステム(OS)
などが実際の処理の一部または全部を行い、その処理に
よって前述した実施形態の機能が実現される場合も含ま
れることは言うまでもない。
Further, an object of the present invention is to supply a storage medium (or a recording medium) in which a program code of software for realizing the functions of the above-described embodiments is recorded to a system or an apparatus, and a computer (a computer) of the system or the apparatus. It is needless to say that the present invention can also be achieved by a CPU or an MPU) reading and executing the program code stored in the storage medium. In this case, the program code itself read from the storage medium implements the functions of the above-described embodiment, and the storage medium storing the program code constitutes the present invention. Also,
When the computer executes the readout program code, not only the functions of the above-described embodiments are realized, but also the operating system (OS) running on the computer based on the instructions of the program code.
It goes without saying that a case where the functions of the above-described embodiments are implemented by performing some or all of the actual processing, and the processing performs the functions of the above-described embodiments.

【0114】さらに、記憶媒体から読み出されたプログ
ラムコードが、コンピュータに挿入された機能拡張カー
ドやコンピュータに接続された機能拡張ユニットに備わ
るメモリに書込まれた後、そのプログラムコードの指示
に基づき、その機能拡張カードや機能拡張ユニットに備
わるCPUなどが実際の処理の一部または全部を行い、そ
の処理によって前述した実施形態の機能が実現される場
合も含まれることは言うまでもない。
Further, after the program code read from the storage medium is written in the memory provided in the function expansion card inserted into the computer or the function expansion unit connected to the computer, the program code is read based on the instruction of the program code. Needless to say, the CPU included in the function expansion card or the function expansion unit performs part or all of the actual processing, and the processing realizes the functions of the above-described embodiments.

【0115】本発明を上記記憶媒体に適用する場合、そ
の記憶媒体には、先に説明した(図11および/または図1
2に示す)フローチャートに対応するプログラムコード
が格納されることになる。
When the present invention is applied to the storage medium described above, the storage medium may include the storage medium described above (FIG. 11 and / or FIG. 1).
2) (shown in FIG. 2).

【0116】また、本発明の適用は、ディジタルカメラ
のような画像処理装置およびその記録媒体に限定されな
い。例えば、ディジタルカメラのような画像処理装置に
よって撮影された画像の画像データをCD-ROMやDVD-ROM
のようなメディアを使用して配布する場合に、表示、印
刷、検索などの通常の用途に利用される画像データはJP
EG符号化してCD-ROMなどに記録し、印刷用の色分版作
成、CG作成など任意の画像処理を必要とする画像データ
はCCD-RAW形式でCD-ROMなどに記録する場合に、本発明
の画像データの圧縮・伸長方法が利用できる。また、そ
のような形態で画像データが記録(格納)されたメディ
アも本発明に含まれる。
Further, the application of the present invention is not limited to an image processing apparatus such as a digital camera and its recording medium. For example, image data of an image captured by an image processing device such as a digital camera
Image data used for normal use such as display, print, search, etc.
EG encoding and recording on a CD-ROM, etc., and image data that requires arbitrary image processing such as color separation for printing and CG creation are recorded on a CD-ROM or the like in CCD-RAW format. The method for compressing and expanding image data according to the invention can be used. Further, a medium on which image data is recorded (stored) in such a form is also included in the present invention.

【0117】[0117]

【発明の効果】以上説明したように、本発明によれば、
効果的な符号化を実現する画像処理装置およびその方
法、並びに、データ処理装置およびその制御方法を提供
することができる。
As described above, according to the present invention,
It is possible to provide an image processing device and method for realizing effective encoding, and a data processing device and control method therefor.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明にかかる一実施形態の画像処理装置の構
成例を示すブロック図、
FIG. 1 is a block diagram showing a configuration example of an image processing apparatus according to an embodiment of the present invention;

【図2】分割およびPACK処理、並びに、UNPACKおよび合
成処理におけるデータフォーマットを示す図、
FIG. 2 is a diagram showing a data format in division and PACK processing, and UNPACK and synthesis processing;

【図3】カラーフィルタ配列の一例を示す図、FIG. 3 is a diagram illustrating an example of a color filter array.

【図4】図1に示すデータ変換コアの詳細な構成例を示
すブロック図、
FIG. 4 is a block diagram showing a detailed configuration example of a data conversion core shown in FIG. 1;

【図5】CCD-RAWデータのデータフォーマットの一例を
示す図、
FIG. 5 is a diagram showing an example of a data format of CCD-RAW data.

【図6】待ち合わせ処理の具体例を示すタイミングチャ
ート、
FIG. 6 is a timing chart showing a specific example of a waiting process;

【図7】図1に示すインタフェイス回路の最も基本的な
構成例を示すブロック図、
FIG. 7 is a block diagram showing a most basic configuration example of the interface circuit shown in FIG. 1;

【図8A】データ、VALID信号およびSTOP信号の関係を
詳細に示すタイミングチャート、
FIG. 8A is a timing chart showing a relationship between data, a VALID signal, and a STOP signal in detail;

【図8B】データ、VALID信号およびSTOP信号の関係を
詳細に示すタイミングチャート、
FIG. 8B is a timing chart showing the relationship between data, a VALID signal, and a STOP signal in detail;

【図9】インタフェイス回路の圧縮動作を示すブロック
図、
FIG. 9 is a block diagram showing a compression operation of the interface circuit;

【図10】インタフェイス回路の伸長動作を示すブロッ
ク図、
FIG. 10 is a block diagram showing a decompression operation of the interface circuit;

【図11】撮影画像の記録処理に関する画像処理装置の
動作例を示すフローチャート、
FIG. 11 is a flowchart illustrating an operation example of the image processing apparatus regarding recording processing of a captured image;

【図12】画像の再生処理に関する画像処理装置の動作
例を示すフローチャート、
FIG. 12 is a flowchart illustrating an operation example of an image processing apparatus regarding image reproduction processing;

【図13】記録媒体に記録されるCCD-RAW可逆圧縮デー
タの基本フォーマット例を示す図である。
FIG. 13 is a diagram illustrating an example of a basic format of CCD-RAW reversible compressed data recorded on a recording medium.

Claims (13)

【特許請求の範囲】[Claims] 【請求項1】 複数の異なるハフマンテーブルが格納さ
れたメモリと、 入力データをハフマン符号化する符号化手段と、 前記符号化手段に前記複数の異なるハフマンテーブルを
順に設定し、それぞれのハフマンテーブルに対応する符
号化結果のうち最もデータサイズの小さい符号を選択す
る制御手段とを有することを特徴とするデータ処理装
置。
1. A memory in which a plurality of different Huffman tables are stored; an encoding unit for Huffman encoding input data; and the plurality of different Huffman tables are sequentially set in the encoding unit. A control unit for selecting a code having the smallest data size from the corresponding coding results.
【請求項2】 複数の異なるハフマンテーブルが格納さ
れたメモリ、および、入力データをハフマン符号化する
符号化手段を有するデータ処理装置の制御方法であっ
て、 前記符号化手段に前記複数の異なるハフマンテーブルを
順に設定し、それぞれのハフマンテーブルに対応する符
号化結果のうち最もデータサイズの小さい符号を選択す
ることを特徴とする制御方法。
2. A method for controlling a data processing device, comprising: a memory storing a plurality of different Huffman tables; and an encoding unit for Huffman encoding input data, wherein the encoding unit includes the plurality of different Huffman tables. A control method comprising: setting a table in order; and selecting a code having the smallest data size from encoding results corresponding to the respective Huffman tables.
【請求項3】 撮像データを圧縮する圧縮手段、並び
に、圧縮された撮像データを記録媒体に格納するメモリ
制御手段を有する画像処理装置であって、前記圧縮手段
は少なくとも、 複数の異なるハフマンテーブルが格納されたメモリと、 前記撮像データをハフマン符号化する符号化手段と、 前記符号化手段に前記複数の異なるハフマンテーブルを
順に設定し、それぞれのハフマンテーブルに対応する符
号化結果のうち最もデータサイズの小さい符号を選択し
て、前記メモリ制御手段に供給する符号化制御手段とを
有することを特徴とする画像処理装置。
3. An image processing apparatus comprising: compression means for compressing image data; and memory control means for storing the compressed image data on a recording medium, wherein the compression means includes at least a plurality of different Huffman tables. A stored memory, an encoding unit that performs Huffman encoding of the imaging data, and the plurality of different Huffman tables are sequentially set in the encoding unit, and the largest data size among encoding results corresponding to each of the Huffman tables is set. An encoding control unit for selecting a code having a small size and supplying the selected code to the memory control unit.
【請求項4】 前記符号化手段は、前記撮像データを予
測符号化、または、直交変換および量子化した後、ハフ
マン符号化することを特徴とする請求項3に記載された
画像処理装置。
4. The image processing apparatus according to claim 3, wherein the encoding unit performs Huffman encoding after predictive encoding or orthogonal transformation and quantization of the image data.
【請求項5】 前記撮像データを予測符号化する場合、
前記符号化手段は、前記撮像データを上位ビットおよび
下位ビットに分離し、分離された上位ビットの撮像デー
タを予測符号化し、分離された下位ビットの撮像データ
を所定撮像データ単位にパックすることを特徴とする請
求項4に記載された画像処理装置。
5. When predictive encoding of the image data is performed,
The encoding unit separates the imaging data into upper bits and lower bits, predictively encodes the separated upper bits of imaging data, and packs the separated lower bits of imaging data into predetermined imaging data units. 5. The image processing device according to claim 4, wherein:
【請求項6】 前記撮像データを直交変換および量子化
する場合、前記符号化手段は、前記撮像データに予め画
像処理を施すことを特徴とする請求項4に記載された画
像処理装置。
6. The image processing apparatus according to claim 4, wherein, when orthogonally transforming and quantizing the image data, the encoding unit performs image processing on the image data in advance.
【請求項7】 前記撮像データは撮像素子の素子配列に
従う多値のデータであることを特徴とする請求項5また
は請求項6に記載された画像処理装置。
7. The image processing apparatus according to claim 5, wherein the imaging data is multi-valued data according to an element array of an imaging element.
【請求項8】 前記撮像素子は所定素子配列のCCDであ
ることを特徴とする請求項7に記載された画像処理装
置。
8. The image processing apparatus according to claim 7, wherein the image sensor is a CCD having a predetermined element array.
【請求項9】 さらに、前記撮像素子を有することを特
徴とする請求項3から請求項8の何れかに記載された画像
処理装置。
9. The image processing device according to claim 3, further comprising the image pickup device.
【請求項10】 撮像データを圧縮し、圧縮された撮像
データを記録媒体に格納する画像処理方法であって、前
記圧縮処理は少なくとも、 複数の異なるハフマンテーブルを順に使用して前記撮像
データをハフマン符号化し、 それぞれのハフマンテーブルに対応する符号化結果のう
ち最もデータサイズの小さい符号を選択し、 前記記録媒体に格納することを特徴とする画像処理方
法。
10. An image processing method for compressing image data and storing the compressed image data on a recording medium, wherein the compression process includes at least using a plurality of different Huffman tables in order to convert the image data into Huffman data. An image processing method, comprising: encoding, selecting a code having the smallest data size from encoding results corresponding to respective Huffman tables, and storing the selected code in the recording medium.
【請求項11】 前記撮像データは予測符号化、また
は、直交変換および量子化された後、ハフマン符号化さ
れることを特徴とする請求項10に記載された画像処理方
法。
11. The image processing method according to claim 10, wherein the imaging data is subjected to Huffman coding after being subjected to predictive coding or orthogonal transform and quantization.
【請求項12】 複数の異なるハフマンテーブルが格納
されたメモリ、および、入力データをハフマン符号化す
る符号化手段を有するデータ処理装置を制御するプログ
ラムコードが記録された記録媒体であって、前記プログ
ラムコードは少なくとも、 前記符号化手段に前記複数の異なるハフマンテーブルを
順に設定するステップのコードと、 それぞれのハフマンテーブルに対応する符号化結果のう
ち最もデータサイズの小さい符号を選択するステップの
コードとを有することを特徴とする記録媒体。
12. A storage medium storing a memory storing a plurality of different Huffman tables and a program code for controlling a data processing apparatus having an encoding unit for performing Huffman encoding of input data, wherein the program code comprises: The code includes at least a code of a step of sequentially setting the plurality of different Huffman tables in the encoding unit, and a code of a step of selecting a code having the smallest data size among encoding results corresponding to the respective Huffman tables. A recording medium comprising:
【請求項13】 撮像データを圧縮し、圧縮された撮像
データを記録媒体に格納する画像処理のプログラムコー
ドが記録された記録媒体であって、前記プログラムコー
ドは少なくとも、 複数の異なるハフマンテーブルを順に使用して前記撮像
データをハフマン符号化するステップのコードと、 それぞれのハフマンテーブルに対応する符号化結果のう
ち最もデータサイズの小さい符号を選択するステップの
コードと、 前記記録媒体に格納するステップのコードとを有するこ
とを特徴とする記録媒体。
13. A recording medium on which a program code for image processing for compressing image data and storing the compressed image data on a recording medium is recorded, wherein the program code includes at least a plurality of different Huffman tables in order. A code of a step of performing Huffman encoding of the imaging data using a code of a step of selecting a code having the smallest data size among encoding results corresponding to the respective Huffman tables; and a step of storing the code in the recording medium. A recording medium characterized by having a code.
JP23454499A 1999-08-20 1999-08-20 Image processing device Expired - Fee Related JP4100836B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP23454499A JP4100836B2 (en) 1999-08-20 1999-08-20 Image processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP23454499A JP4100836B2 (en) 1999-08-20 1999-08-20 Image processing device

Publications (2)

Publication Number Publication Date
JP2001061067A true JP2001061067A (en) 2001-03-06
JP4100836B2 JP4100836B2 (en) 2008-06-11

Family

ID=16972695

Family Applications (1)

Application Number Title Priority Date Filing Date
JP23454499A Expired - Fee Related JP4100836B2 (en) 1999-08-20 1999-08-20 Image processing device

Country Status (1)

Country Link
JP (1) JP4100836B2 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005354643A (en) * 2004-06-14 2005-12-22 Olympus Corp Image compression device and image restoration device
JP2007158509A (en) * 2005-12-01 2007-06-21 Canon Inc Imaging apparatus, image processing method and program, and storage medium
US7593148B2 (en) 2004-03-26 2009-09-22 Olympus Corporation Image compressing method and image compression apparatus
US7620259B2 (en) 2005-01-11 2009-11-17 Nikon Corporation History adding device for generating history-added image file, electronic camera, and image processing program for processing history-added image file
US8009924B2 (en) 2006-07-19 2011-08-30 Hoya Corporation Method and apparatus for recording image data
WO2014015407A1 (en) * 2012-07-26 2014-01-30 Finxi Soluções Em T.I. Ltda. System and method for encoding and compressing digital content into colour codes; encoded and compacted files; encoded file storage and/or transmission system; system and method for decoding and decompressing files in colour codes

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6736248B2 (en) 2014-07-23 2020-08-05 キヤノン株式会社 Image processing device

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7593148B2 (en) 2004-03-26 2009-09-22 Olympus Corporation Image compressing method and image compression apparatus
JP2005354643A (en) * 2004-06-14 2005-12-22 Olympus Corp Image compression device and image restoration device
JP4515832B2 (en) * 2004-06-14 2010-08-04 オリンパス株式会社 Image compression apparatus and image restoration apparatus
US7620259B2 (en) 2005-01-11 2009-11-17 Nikon Corporation History adding device for generating history-added image file, electronic camera, and image processing program for processing history-added image file
JP2007158509A (en) * 2005-12-01 2007-06-21 Canon Inc Imaging apparatus, image processing method and program, and storage medium
US8009924B2 (en) 2006-07-19 2011-08-30 Hoya Corporation Method and apparatus for recording image data
WO2014015407A1 (en) * 2012-07-26 2014-01-30 Finxi Soluções Em T.I. Ltda. System and method for encoding and compressing digital content into colour codes; encoded and compacted files; encoded file storage and/or transmission system; system and method for decoding and decompressing files in colour codes

Also Published As

Publication number Publication date
JP4100836B2 (en) 2008-06-11

Similar Documents

Publication Publication Date Title
US5289577A (en) Process-pipeline architecture for image/video processing
JP3069455B2 (en) Quantization and dequantization circuits in image data compression and decompression equipment
US6560369B1 (en) Conversion of wavelet coded formats depending on input and output buffer capacities
JP3096618B2 (en) Imaging device
US8532192B2 (en) Video processing apparatus and a method of processing video data
JPH0662262A (en) Method and apparatus for control of block for digital image codec (compression and expansion) processor
JP2000069292A (en) Image processing unit, its method and storage medium
JP5318256B2 (en) High bit depth image compression
US6563946B2 (en) Image processing apparatus and method
JP4443165B2 (en) Image compression apparatus and image compression method
US11445160B2 (en) Image processing device and method for operating image processing device
JP2004356850A (en) Expanding apparatus for compressed moving picture and image display apparatus employing the same
JP4100836B2 (en) Image processing device
US8787686B2 (en) Image processing device and image processing method
JP4181701B2 (en) Image processing device
US11190810B2 (en) Device and method for compressing image data using quantization parameter and entropy tables
JP2003189109A (en) Image processor and image processing method, and computer program
JP2004501531A (en) Method and apparatus for run-length encoding video data
JP3824259B2 (en) Encoding method, decoding method, encoding device, decoding device, and recording medium
JP2001231046A (en) Digital camera system and image transfer method used in it
JP2000261324A (en) Huffman decoding circuit
JP2002051221A (en) Device, system and method for encoding and decoding image and storage medium
JP3110255B2 (en) Character data compression processing apparatus and character data compression method
JP2001144934A (en) Method and device for image synthesis
JP2009038740A (en) Image encoding device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060809

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20060809

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070920

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070925

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071126

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071221

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080219

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080318

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

Free format text: PAYMENT UNTIL: 20110328

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

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130328

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20140328

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees