JP3222633B2 - Information processing device - Google Patents
Information processing deviceInfo
- Publication number
- JP3222633B2 JP3222633B2 JP15761093A JP15761093A JP3222633B2 JP 3222633 B2 JP3222633 B2 JP 3222633B2 JP 15761093 A JP15761093 A JP 15761093A JP 15761093 A JP15761093 A JP 15761093A JP 3222633 B2 JP3222633 B2 JP 3222633B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- run
- address
- writing
- information processing
- 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
Landscapes
- Compression Of Band Width Or Redundancy In Fax (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Image Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Description
【0001】[0001]
【産業上の利用分野】本発明は、符号化され情報量を圧
縮されている画像信号等を復号する情報処理装置に関
し、特に、エントロピー符号化及びランレングス符号化
された圧縮データ列を復号する情報処理装置において、
スキャン順序の変換処理をより少ないハードウェア量で
実現し、また、ランレングス符号の復号処理をより少な
いハードウェア構成で実現すると共に、無駄な時間を消
費することなく効率良く行い、更に、可変長符号復号器
に対するハードウェア上の負担を削減した情報処理装置
に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an information processing apparatus for decoding an image signal or the like in which the amount of information is coded and compressed, and in particular, decodes a compressed data string which has been subjected to entropy coding and run-length coding. In the information processing device,
The scan order conversion process can be realized with a smaller amount of hardware, the run-length code decoding process can be realized with a smaller hardware configuration, and can be performed efficiently without wasting time. The present invention relates to an information processing apparatus in which a hardware load on a code decoder is reduced.
【0002】[0002]
【従来の技術】近年、コンピュータの記憶媒体上に画像
信号を記録して、画像信号を普通のデータと同じように
統一的に扱おうという動きが出てきている。これは、一
般にマルチメディア化と言われている。しかしながら、
画像信号はデータ量が非常に多いため何らかのデータ圧
縮が必要である。データ圧縮方法としては、 (1) 時間冗長性を利用したデータ圧縮方式 (2) 空間冗長性を利用したデータ圧縮方式 (3) 符号冗長性を利用したデータ圧縮方式 の3つが普通使われる。本発明では、時間冗長性を利用
した符号化には触れない。2. Description of the Related Art In recent years, there has been a movement to record an image signal on a storage medium of a computer and to treat the image signal uniformly like ordinary data. This is generally referred to as multimedia. However,
Since the image signal has a very large data amount, some data compression is required. Three data compression methods are commonly used: (1) a data compression method using temporal redundancy, (2) a data compression method using spatial redundancy, and (3) a data compression method using code redundancy. In the present invention, coding using temporal redundancy is not described.
【0003】空間冗長性を利用したデータ圧縮というの
は、先ず、コサイン変換等の周波数の異なる直交関数に
展開し、得られた各周波数に対応する係数に対して、人
間の目の感度が鈍感な高周波部分の係数が大きな量子化
幅となるように量子化を行うことによって、データ圧縮
をするというものである。近年では、この方法のデータ
圧縮においては2次元コサイン変換が使用されることが
多い。Data compression using spatial redundancy is firstly developed into orthogonal functions having different frequencies, such as cosine transform, and the sensitivity of the human eye is insensitive to the obtained coefficients corresponding to each frequency. Data compression is performed by performing quantization so that the coefficient of a high-frequency portion has a large quantization width. In recent years, two-dimensional cosine transform is often used in data compression by this method.
【0004】一方、符号冗長性を利用したデータ圧縮と
いうのは、ゼロランレングスと値を組にした形で符号化
し(ランレングス符号化)、出現確率順に短い符号長と
なるように割当て、データ圧縮するという方式である
(エントロピー符号化または可変長符号化)。[0004] On the other hand, data compression using code redundancy refers to encoding in the form of a set of a zero run length and a value (run length encoding), and allocating the data so as to have a shorter code length in order of appearance probability. This is a compression method (entropy coding or variable length coding).
【0005】以上のように、ランレングス符号は、エン
トロピー符号等と組み合わされて、データ圧縮等によく
用いられ、このランレングス符号方式によれば、元の情
報源のシンボルの幾つか分をまとめて1つの情報として
送ることができる。図12(1)に、2値データ列に対
してランレングス符号化を行った場合の一例を示す。連
続する”0”の数と”1”の数を数え、”0”のラ
ン、”1”のランを交互に並べることで、シンボルの数
が大幅に減少し、情報を圧縮することができる。As described above, run-length codes are often used for data compression in combination with entropy codes and the like. According to this run-length code system, some of the original information source symbols are collected. Can be sent as one piece of information. FIG. 12A shows an example in which run-length encoding is performed on a binary data sequence. By counting the number of continuous "0" and the number of "1", and alternately arranging the runs of "0" and the runs of "1", the number of symbols is greatly reduced, and information can be compressed. .
【0006】また、ランレングス符号を多階調の画像信
号に適用する場合、符号化しないデータの連続する数と
符号化するデータを組にして1つのシンボルとする方法
を用いることができる。図12(2)に多値データ列に
対してランレングス符号化を行った場合の一例を示
す。”0”以外のデータの前に先行している”0”の数
と、その”0”以外の値を組にして表現することでシン
ボル数を減少させることができる。When the run-length code is applied to a multi-gradation image signal, a method can be used in which a continuous number of uncoded data and data to be coded are combined into one symbol. FIG. 12B shows an example in which run-length encoding is performed on a multi-valued data sequence. The number of symbols can be reduced by expressing a combination of the number of “0” preceding the data other than “0” and the value other than “0”.
【0007】このようなランレングス符号は、離散コサ
イン変換(Discrete Cosine Transform :以下、DCT
と略記する)等と組み合わせて用いると特に効果的であ
る。多階調の画像信号の情報圧縮では、先ず画像を小ブ
ロツク(例えば8×8画素のブロック)に分け、それぞ
れに適当な変換(DCT等の直交変換や、画素の平均値
などのベース値との差分操作)を施した後、各画素毎に
量子化を行う。このような操作により、ブロックを”
0”、即ち符号化しないデータ、がよく出現するような
データに変換した後に1次元に並べ、そのデータ列に対
して、先行する”0”の数(以下「ゼロラン」という)
と”0”以外の値(以下「レベル」という)を組にして
表現することでシンボル数を減らし、エントロピー符号
化を行う。[0007] Such a run-length code is a discrete cosine transform (hereinafter referred to as DCT).
It is particularly effective when used in combination with the above. In information compression of a multi-gradation image signal, an image is first divided into small blocks (for example, blocks of 8 × 8 pixels), and each is appropriately transformed (orthogonal transformation such as DCT or a base value such as an average value of pixels). , The quantization is performed for each pixel. With these operations, the block is
After converting the data into data in which "0", that is, uncoded data, appears frequently, the data is arranged one-dimensionally, and the number of leading "0" s (hereinafter referred to as "zero run") for the data sequence.
And a value other than “0” (hereinafter referred to as “level”) as a set to reduce the number of symbols and perform entropy coding.
【0008】このような情報圧縮方法では、変換の誤差
や量子化のために復号結果は完全に元のデータには戻ら
ないが、量子化の幅を各画素毎に調整して、”0”が出
現する頻度を調節してやることにより、復号したときデ
ータの視覚的なイメージとのバランスを取りながらデー
タを圧縮することが可能である。多階調画像情報圧縮で
は、DCT、量子化、ランレングス符号化、及び可変長
符号化の各処理を組み合わせた方法がよく用いられる。In such an information compression method, the decoded result does not completely return to the original data due to a conversion error or quantization, but the quantization width is adjusted for each pixel to obtain "0". By adjusting the frequency of occurrence of, it is possible to compress the data while balancing it with the visual image of the data when decoding. In multi-tone image information compression, a method that combines DCT, quantization, run-length encoding, and variable-length encoding is often used.
【0009】図13に画素を直交変換し量子化した小ブ
ロック(8×8画素)に対するランレングス符号化の例
を示す。2次元DCT等の直交変換を施したデータは、
視覚的に高周波成分の解像度が高くないことを利用し
て、高周波成分にあたるデータに大きな量子化幅を与え
て、”0”が出現する頻度を高く設定する。図13
(1)はこのように処理された小ブロックである。FIG. 13 shows an example of run-length encoding for a small block (8 × 8 pixels) obtained by orthogonally transforming and quantizing pixels. Data that has been subjected to orthogonal transformation such as two-dimensional DCT
Utilizing that the resolution of the high-frequency component is not visually high, a large quantization width is given to the data corresponding to the high-frequency component, and the appearance frequency of “0” is set high. FIG.
(1) is a small block processed in this way.
【0010】この小ブロックに対しゼロランとレベルを
組にしてランレングス符号化を行うのであるが、ランレ
ングス符号は更に可変長符号化されるので、ランレング
ス符号化されたデータとしては偏りがあるほうが符号化
効率が向上する。つまり、小ブロックの右下の領域ほど
周波数の高いコサイン関数の係数に相当する訳であるか
ら、量子化後の値は殆どのところでゼロになっており、
ジグザグスキャンしたデータ列に対してランレングス符
号化した方が、普通のラスター順のデータ列に対してよ
りランレングス符号の数が少なくなる。ラスタスキャン
もジグザグスキャンもセロランによる符号化の結果のシ
ンボル数は同じです。実なるのはゼロランの長さと、レ
ベルの出てくる順番です。DCTの結果、レベルは左上
端に多く出現するので、ジグザグスキャンの方が短いゼ
ロランが多く出現することになり、可変長符号化の効率
がよくなります。[0010] Run length coding is performed on the small block by combining a zero run and a level. However, since the run length code is further variable length coded, the run length coded data is biased. The encoding efficiency is improved. In other words, since the lower right region of the small block corresponds to the coefficient of the cosine function having a higher frequency, the value after quantization is almost zero,
When run-length encoding is performed on a zigzag-scanned data sequence, the number of run-length codes is reduced as compared with a normal raster-ordered data sequence. Both raster scan and zigzag scan have the same number of symbols as a result of cellolan encoding. What really matters is the length of the zero run and the order in which the levels appear. As a result of DCT, many levels appear in the upper left corner, so zigzag scanning has more zero runs, which makes variable-length coding more efficient.
【0011】そこで図13(2)のように小さなゼロラ
ンが多く出現するようにジグザグ順にデータを並べ、そ
のデータ列に対してランレングス符号化を行うことによ
り、図13(3)のランレングス符号が得られる。更
に、図13(3)のランレングス符号に対して可変長符
号化を行い、量子化幅の情報等のヘッダ情報を付加し、
最終的な圧縮データが得られる。Therefore, data is arranged in a zigzag order so that many small zero-runs appear as shown in FIG. 13 (2), and run-length coding is performed on the data sequence, whereby the run-length code shown in FIG. 13 (3) is obtained. Is obtained. Further, variable-length coding is performed on the run-length code of FIG. 13C, and header information such as quantization width information is added.
The final compressed data is obtained.
【0012】このようにデータ圧縮された画像データを
復号する復号装置の構成図を図14(1)に示す。この
従来の復号装置は、圧縮データ列Zdataを入力して
一時的に保持するバッファBUF、可変長符号復号器V
LD、スキャン順序変換器ZIGZAG’、ランレング
ス復号器RLD、逆量子化器IQ、逆直交変換器IOT
を備え、順次圧縮データを伸長していき最終的な復号デ
ータ列Ddataを得る。FIG. 14A shows a configuration diagram of a decoding apparatus for decoding image data compressed in this way. This conventional decoding apparatus includes a buffer BUF for inputting and temporarily storing a compressed data string Zdata, a variable-length code decoder V
LD, scan order converter ZIGZAG ', run-length decoder RLD, inverse quantizer IQ, inverse orthogonal transformer IOT
And sequentially expands the compressed data to obtain a final decoded data sequence Ddata.
【0013】つまり、先ず可変長符号復号器VLDを用
いて可変長符号の復号を行い、得られたジグザグ順のラ
ンレングス符号(図15(1)参照)を、スキャン順序
変換器ZIGZAG’によって普通のラスター順のスキ
ャン順序(図15(2)参照)に直し、ランレングス復
号器RLDによってランレングス符号から値の系列に戻
し、その係数列に対して、逆量子化器IQにより逆量子
化を施し、更に逆直交変換器IOTによって逆直交変換
を行うことにより、復号データ列Ddataが得られ
る。That is, first, the variable-length code is decoded by using the variable-length code decoder VLD, and the obtained run-length code in zigzag order (see FIG. 15 (1)) is normally converted by the scan order converter ZIGZAG '. The scan order in the raster order (see FIG. 15 (2)) is changed, the run-length decoder RLD returns the run-length code to a sequence of values, and the coefficient sequence is subjected to inverse quantization by the inverse quantizer IQ. The decoded data sequence Ddata is obtained by performing the inverse orthogonal transform by the inverse orthogonal transformer IOT.
【0014】ここで、スキャン順序変換器ZIGZA
G’のハードウェア仕様としては、ジグザグ順で入力さ
れたデータをバッファメモリにジグザグ順で書き込み、
それをラスター順のアドレスで読み出すという機能を実
現すればよい。即ち、少なくとも2次元コサイン変換領
域分のアドレスを持ったバッファメモリが必要である。
また、リアルタイムで処理しようとすると、ジグザグ順
の書き込みとラスター順の読み出しを同時に行わなけれ
ばならないために、インターリーブ方式を使用すること
から、2次元コサイン変換領域分の2倍のアドレスを持
ったバッファメモリが必要である。Here, the scan order converter ZIGZA
As the hardware specifications of G ′, data input in a zigzag order is written in a buffer memory in a zigzag order,
What is necessary is just to realize the function of reading it out at the address in the raster order. That is, a buffer memory having at least the address of the two-dimensional cosine transform area is required.
In order to perform processing in real time, writing in zigzag order and reading in raster order must be performed at the same time. Therefore, since the interleave method is used, a buffer having twice the address of the two-dimensional cosine transform area is used. Requires memory.
【0015】従って、スキャン順序変換器ZIGZA
G’の構成は図14(2)に示すようになる。ここでC
MEM0及びCMEM1はバッファメモリである。実際
のバッファメモリの容量を見積もってみると、先ず、ワ
ード方向については、2次元コサイン変換の領域をn×
m[画素]とするとnm[word]の領域となる。一方、
ビット方向については、n×mコサイン変換領域とする
と、最大n×m個のゼロランレングスまで表す必要があ
るため、ゼロランレングス用としてw=log(nm)
を越える最小の整数W[bit ]だけ必要になり(ここで
logの底は2である)、データ値としてa[bit ]の
精度があるとすると、全部でa×W[bit]のビット幅
が必要となる。従って、バッファメモリの容量として
は、 が必要となる。Therefore, the scan order converter ZIGZA
The configuration of G ′ is as shown in FIG. Where C
MEM0 and CMEM1 are buffer memories. When estimating the actual capacity of the buffer memory, first, in the word direction, the area of the two-dimensional cosine transform is n ×
If m [pixel] is set, it becomes an area of nm [word]. on the other hand,
In the bit direction, if it is an n × m cosine transform domain, it is necessary to represent up to n × m zero run lengths, and therefore w = log (nm) for the zero run length.
(The base of log is 2), and if the data value has a precision of a [bit], the bit width of a × W [bit] in total Is required. Therefore, as the capacity of the buffer memory, Is required.
【0016】このように、従来の復号装置のスキャン順
序変換器ZIGZAG’で使用されるバッファメモリの
容量は、2次元コサイン変換領域(n×m)が大きくな
ればなるほど大きくなり、一方で、復号装置のハードウ
ェア量は一般に非常に小さなものが求められるため、こ
のバッファメモリの容量を少なくすることは、復号装置
の構成上非常に重要である。As described above, the capacity of the buffer memory used in the scan order converter ZIGZAG 'of the conventional decoding apparatus increases as the two-dimensional cosine transform area (n.times.m) increases. Since a very small amount of hardware is generally required for the device, it is very important to reduce the capacity of the buffer memory in the configuration of the decoding device.
【0017】[0017]
【発明が解決しようとする課題】以上のように、符号化
され情報量を圧縮されている画像信号等を復号する従来
の情報処理装置では、スキャン順序をジグザグ順からラ
スター順へ変換するために使用されるバッファメモリの
容量が、2次元コサイン変換領域が大きくなればなるほ
ど大きくなり、復号装置のハードウェア量が増大すると
いう問題があった。As described above, in a conventional information processing apparatus that decodes an encoded image signal or the like in which the amount of information is compressed, it is necessary to convert a scan order from a zigzag order to a raster order. There is a problem that the capacity of the buffer memory used increases as the two-dimensional cosine transform area increases, and the amount of hardware of the decoding device increases.
【0018】本発明は、上記問題点を解決するもので、
その目的は、ランレングス符号化された圧縮データ列を
復号する情報処理装置において、スキャン順序をジグザ
グ順からラスター順へ変換するために用いられるバッフ
ァメモリをより少ない容量で実現する情報処理装置を提
供することである。The present invention solves the above problems,
It is an object of the present invention to provide an information processing apparatus for decoding a run-length coded compressed data sequence, which realizes a buffer memory used for converting a scan order from a zigzag order to a raster order with a smaller capacity. It is to be.
【0019】また本発明の他の目的は、可変長符号化及
びランレングス符号化された圧縮データ列を復号する情
報処理装置において、ランレングス符号の復号処理をよ
り少ないハードウェア構成で実現すると共に、無駄な時
間を消費することなく効率良く行え、また、可変長符号
復号器に対するハードウェア上の負担を削減した情報処
理装置を提供することである。Another object of the present invention is to realize a run-length code decoding process with a smaller hardware configuration in an information processing apparatus for decoding a compressed data sequence that has been subjected to variable-length coding and run-length coding. Another object of the present invention is to provide an information processing apparatus which can perform the processing efficiently without wasting time and reduce the load on hardware for the variable length code decoder.
【0020】[0020]
【課題を解決するための手段】前記課題を解決するため
に、本発明の第1の特徴は、例えば図1、図7、図9及
び図10等に示す如く、連続する同一値をその連続回数
で表記することによって符号化された圧縮データ列を復
号する情報処理装置であって、バンクメモリBM0及び
BM1のように、少なくとも2つの記憶領域を有し、こ
れらの記憶領域に対する書き込み及び読み出しを同時に
行う記憶手段13と、記憶領域のうち第1の記憶領域で
あるメモリバンクBM0又はBM1に対して、同一値を
連続させて書き込むことにより初期化を行う初期化手段
と、初期化された部分の連続回数に応じたアドレスに、
圧縮データ列Vdataを書き込む書き込み手段と、記
憶領域のうち第2の記録領域に書き込まれているデータ
列Rdataを読み出す読み出し手段とを有する復号手
段RLDを備えることである。In order to solve the above-mentioned problems, a first feature of the present invention is that, as shown in FIG. 1, FIG. 7, FIG. 9 and FIG. An information processing device that decodes a compressed data string encoded by being expressed by the number of times, and has at least two storage areas, such as bank memories BM0 and BM1, and performs writing and reading to and from these storage areas. A storage unit 13 for performing the initialization simultaneously by writing the same value to the memory bank BM0 or BM1 which is a first storage region in the storage region continuously, and an initialized part Address corresponding to the number of consecutive
It is provided with a decoding unit RLD having a writing unit for writing the compressed data string Vdata and a reading unit for reading the data string Rdata written in the second recording area of the storage area.
【0021】また、本発明の第2の特徴は、例えば図7
に示す如く、連続する同一値の連続回数zと、同一値以
外のデータ値dの組(z,d)で表記された圧縮データ
列Vdataを復号する情報処理装置であって、少なく
とも2つの記憶領域を有する記憶手段13と、記憶領域
のうち第1の記憶領域に対して、前記同一値を連続させ
て書き込むことにより初期化を行う初期化手段と、初期
化がされた記憶領域に対して、圧縮データ列Vdata
のi−1番目の組(zi-1 ,di-1 )の前記データ値d
i-1 が書き込まれたアドレスに、i番目の同一値の連続
回数zi を加算して次アドレスを求め、この次アドレス
にi番目のデータ値di が書き込まれるように、前記圧
縮データ列Vdataを書き込む書き込み手段と、第1
の記憶領域に対する書き込み処理と同時に、第2の記憶
領域に既に書き込まれているデータRdataを読み出
す読み出し手段とを有する復号手段RLDを備えること
である。A second feature of the present invention is that, for example, FIG.
As shown in FIG. 7, an information processing apparatus for decoding a compressed data sequence Vdata represented by a set (z, d) of a continuous number z of consecutive identical values and a data value d other than the identical value, wherein at least two storage units Storage means 13 having an area; initialization means for performing initialization by successively writing the same value in the first storage area of the storage area; and initialization means for performing initialization on the initialized storage area. , Compressed data string Vdata
The data value d of the (i-1) -th set (zi-1, di-1)
The next address is obtained by adding the ith consecutive number zi of the same value to the address where i-1 is written, and the compressed data sequence Vdata is written so that the ith data value di is written to this next address. Writing means for writing;
And a reading means for reading data Rdata already written in the second storage area at the same time as the writing processing to the storage area.
【0022】また、本発明の第3の特徴は、上記発明に
おいて、例えば図1に示す如く、前記読み出し手段13
から出力されるデータ系列を入力して、該データ系列の
スキャン順序を、入力されたデータ系列と異なるデータ
系列のスキャン順序に変換するスキャン順序変換手段Z
IGZAGを有することである。A third feature of the present invention is that, in the above-mentioned invention, for example, as shown in FIG.
Scan sequence converting means Z for inputting a data sequence output from the above and converting the scan sequence of the data sequence into a scan sequence of a data sequence different from the input data sequence
Having IGZAG.
【0023】また、本発明の第4の特徴は、上記発明に
おいて、図9に示す如く、読み出し手段14に対して、
読み出すデータRdataのアドレスを生成するアドレ
ス生成手段33を有し、このアドレス生成手段33は、
データ系列のスキャン順序を、入力された該データ系列
と異なるデータ系列のスキャン順序となるようにアドレ
スの生成を行うことである。A fourth feature of the present invention is that, in the above invention, as shown in FIG.
An address generation unit 33 generates an address of the data Rdata to be read.
Address generation is performed so that the scan order of the data sequence is different from that of the input data sequence.
【0024】また、本発明の第5の特徴は、上記発明に
おいて、図10に示す如く、前記書き込み手段に対し
て、書き込むデータVdataのアドレスを生成するア
ドレス変換手段40を有し、このアドレス変換手段40
は、データ系列のスキャン順序を、入力された該データ
系列と異なるデータ系列のスキャン順序となるように前
記アドレスの生成を行うことである。A fifth feature of the present invention is that, in the above invention, as shown in FIG. 10, the writing means has an address conversion means 40 for generating an address of write data Vdata. Means 40
Is to generate the address so that the scan order of the data series is different from the scan order of the data series that is input.
【0025】さらに、前記読み出し手段は、1ブロック
分データの読み出し時に、該ブロック内のスキャン順序
が所定のスキャン順序となるように、読み出しアドレス
を生成するアドレス生成手段を有する。Further, the reading means has an address generating means for generating a read address when reading data of one block so that the scanning order in the block becomes a predetermined scanning order.
【0026】また、前記書き込み手段は、1ブロック分
データの書き込み時に、該ブロック内のスキャン順序が
所定のスキャン順序となるように、書き込みアドレスを
変換するアドレス変換手段を有する。The writing means has an address conversion means for converting a write address so that a scan order in the block becomes a predetermined scan order when writing data for one block.
【0027】そして、前記記憶手段は、複数のバンクメ
モリを有し、読み出し手段が前記バンクメモリの1つに
既に書き込まれている1ブロック分のデータを読み出す
と同時に、前記書き込み手段は、前記バンクメモリの他
の1つに対して、1ブロック分の圧縮データ列を書き込
む様になっている。The storage means has a plurality of bank memories, and the reading means reads one block of data which has already been written in one of the bank memories, and the writing means stores A compressed data string for one block is written in another memory.
【0028】[0028]
【作用】本発明の第1の特徴の情報処理装置では、記憶
手段13への書き込み時には、同一値の連続回数に応じ
たアドレスに、同一値以外のデータ値di (レベルlv
l)のみを書き込むことで、復号が達成されるため、可
変長符号復号器はブロックの最後を認識するまで一時停
止することがなくなり、結果として、可変長符号復号器
のハードウェアの負担がかるくなり、また、一時停止の
ために生じる無駄な時間がなくなる。更に、本発明の第
1の特徴の情報処理装置では、記憶手段13を複数のバ
ンクメモリBM0及びBM1で構成し、読み出し手段1
4がバンクメモリの1つBM0またはBM1に既に書き
込まれている1ブロック分のデータRdataを読み出
すと同時に、書き込み手段10では、バンクメモリの他
の1つBM1またはBM0に対して、1ブロック分の圧
縮データ列Vdataを書き込むことようにしたので、
復号処理の高速化を図ることができる。In the information processing apparatus according to the first aspect of the present invention, at the time of writing to the storage means 13, a data value di (level lv) other than the same value is stored in an address corresponding to the number of consecutive times of the same value.
By writing only l), decoding is achieved, so that the variable-length code decoder does not pause until recognizing the end of the block, and as a result, the load on the hardware of the variable-length code decoder is reduced. And the wasted time caused by the suspension is eliminated. Further, in the information processing apparatus according to the first aspect of the present invention, the storage means 13 is constituted by a plurality of bank memories BM0 and BM1, and the read means 1
4 reads out one block of data Rdata already written in one bank memory BM0 or BM1, and at the same time, the writing means 10 writes one block worth of data to another BM1 or BM0 of the bank memory. Since the compressed data sequence Vdata was written,
The speed of the decoding process can be increased.
【0029】また、本発明の第2の特徴の情報処理装置
では、図7に示す如く、連続する同一値、例えば先行す
るゼロの連続回数zと、ゼロ以外のデータ値dの組
(z,d)で表記された例えばランレングス符号の圧縮
データ列Vdataを、所定のデータ系列Rdataに
変換するランレングス復号手段RLDにおいて、読み出
し手段14では、記憶手段13に既に書き込まれている
データRdataを読み出すと共にゼロ値を書き込んで
初期化し、一方書き込み手段10では、ゼロ値に初期化
されている記憶手段13に対して、圧縮データ列Vda
taのi番目の組(zi ,di )について、i−1番目
の組(zi-1 ,di-1 )のゼロ以外のデータ値di-1 を
書き込んだアドレスにi番目のゼロの数zi を加算した
アドレスに、i番目のゼロ以外のデータ値di が書き込
まれるように、圧縮データ列Vdataを書き込む。Further, in the information processing apparatus according to the second feature of the present invention, as shown in FIG. 7, a set (z, z) of a continuous identical value, for example, a preceding zero consecutive number z and a non-zero data value d. In the run-length decoding unit RLD for converting the compressed data sequence Vdata of, for example, a run-length code described in d) into a predetermined data sequence Rdata, the reading unit 14 reads the data Rdata already written in the storage unit 13. And the writing means 10 initializes the compressed data string Vda in the storage means 13 initialized to the zero value.
For the i-th set (zi, di) of ta, the number zi of the i-th zero is written at the address where the non-zero data value di-1 of the (i-1) -th set (zi-1, di-1) is written. The compressed data string Vdata is written so that the ith non-zero data value di is written to the added address.
【0030】つまり、i番目の同一値以外のデータ値d
i (レベルlvl)を書き込むアドレス計算は、ブロッ
クの最初の組のレベル(d1 )であれば”1”と先行す
る同一値の連続回数z1 (ゼロランzr)の加算、それ
以外の組のレベル(di )に対しては”1”とゼロラン
(zi )と直前の組のレベル(di-1 )を書き込んだア
ドレスとの加算で実現できるので、”1”を加算器のキ
ャリインとすれば1個の加算器11と、計算結果の保持
レジスタ12とその初期化(ゼロリセット)で実現で
き、更に、エラーは加算器11のキャリアウトとなるの
で、回路構成は簡単になる。That is, the data value d other than the i-th identical value
In the address calculation for writing i (level lvl), if the level (d1) of the first set of the block is "1", the preceding number of consecutive times z1 (zero run zr) of the same value is added, and the levels of the other sets (zero run zr) Di) can be realized by adding "1", zero run (zi), and the address where the immediately preceding set of levels (di-1) are written, so that if "1" is the carry-in of the adder, one is obtained. , The holding register 12 of the calculation result and its initialization (zero reset), and the error becomes a carry-out of the adder 11, thereby simplifying the circuit configuration.
【0031】また、記憶手段13への書き込み時には、
同一値の連続回数に応じたアドレスに、同一値以外のデ
ータ値di (レベルlvl)のみを書き込むことで、復
号が達成されるため、可変長符号復号器はブロックの最
後を認識するまで一時停止することがなくなり、結果と
して、可変長符号復号器のハードウェアの負担がかるく
なり、また、一時停止のために生じる無駄な時間がなく
なる。At the time of writing to the storage means 13,
Since decoding is achieved by writing only data values di (level lvl) other than the same value to addresses corresponding to the number of consecutive same values, the variable-length code decoder pauses until recognizing the end of the block. As a result, the load on the hardware of the variable-length code decoder is increased, and wasted time caused by the temporary stop is eliminated.
【0032】以上のように本発明の第1及び第2の特徴
によれば、復号の際に同一値を書き込む時間が生じず、
同一値以外のデータ値(例えば、ランレングス符号のシ
ンボル)の数に応じた時間で復号できるので、可変長符
号復号器VLDは、復号処理を一気に行うことができ、
無駄な時間が生じない。即ち、例えば、ランレングス符
号供給停止時間に、ヘッダ情報の解読等を行うことがで
きる。また、1個の加算器で、ゼロラン分のゼロの発
生、アドレスの発生、エラー信号の発生が行え、回路構
成が簡単になる。As described above, according to the first and second aspects of the present invention, there is no time for writing the same value at the time of decoding.
Since decoding can be performed in a time corresponding to the number of data values other than the same value (for example, a symbol of a run-length code), the variable-length code decoder VLD can perform the decoding process at a stretch,
No wasted time. That is, for example, the header information can be decrypted during the run-length code supply suspension time. Further, generation of zero for zero run, generation of an address, and generation of an error signal can be performed by one adder, thereby simplifying the circuit configuration.
【0033】本発明の第3の特徴の情報処理装置では、
図1に示す如く、上記発明において、圧縮データ列Zd
ataを、例えば、可変長符号復号器VLDによって可
変長符号の復号を行った直後に、ランレングス復号手段
RLDによって圧縮データ列Vdataの復号を行っ
て、連続する同一値の連続回数zと、同一値以外のデー
タ値dの組(z,d)によるデータ系列に戻し、その後
スキャン順序変換手段ZIGZAGにおいて、例えばバ
ッファメモリCMEM0及びCMEM1を用いて、スキ
ャン順序をジグザグ順からラスター順へ変換し、該ラス
ター系列データに対して逆量子化及び逆直交変換を行っ
て復号することができる。In the information processing apparatus according to the third aspect of the present invention,
As shown in FIG. 1, in the above invention, the compressed data sequence Zd
For example, immediately after the variable-length code is decoded by the variable-length code decoder VLD, the compressed data sequence Vdata is decoded by the run-length decoding means RLD, and is equal to the number of consecutive times z of the same value. The data is returned to a data sequence based on a set (z, d) of data values d other than the values. Then, the scan order is converted from the zigzag order to the raster order by the scan order conversion means ZIGZAG using, for example, the buffer memories CMEM0 and CMEM1. Raster series data can be decoded by performing inverse quantization and inverse orthogonal transform.
【0034】第3の特徴の情報処理装置の構成におい
て、ジグザグ順からラスター順への変換に使用されるバ
ッファメモリCMEM0及びCMEM1の容量を見積も
ると、まず、ワード方向は、従来技術におけるバッファ
メモリと同じく、2次元コサイン変換の領域をn×mと
すると(nm)[word]の領域となる。一方、ビット方
向は、既に圧縮データ列(ランレングス符号)から、通
常の値のみの系列に復号が終了しているので、値にa
[bit ]の精度があるとすると、a[bit ]となる。従
って、バッファメモリの容量としては、 (nm)[word]×a[bit]×2 となる。従来技術におけるバッファメモリは、前述のよ
うに、 (nm)[word]×(a+W)[bit]×2 の容量が必要になるから、従来の技術に比べて、 nm×W×2 の容量分だけ少ないメモリ量で構成することが可能であ
る。In the configuration of the information processing apparatus according to the third feature, when the capacities of the buffer memories CMEM0 and CMEM1 used for the conversion from the zigzag order to the raster order are estimated, first, the word direction is the same as that of the conventional buffer memory. Similarly, if the area of the two-dimensional cosine transform is n × m, the area is (nm) [word]. On the other hand, in the bit direction, since decoding from the compressed data sequence (run-length code) into a sequence of only normal values has already been completed, the value a
If there is an accuracy of [bit], it becomes a [bit]. Therefore, the capacity of the buffer memory is (nm) [word] × a [bit] × 2. As described above, the buffer memory in the conventional technology requires a capacity of (nm) [word] × (a + W) [bit] × 2. Therefore, compared to the conventional technology, the buffer memory of nm × W × 2 It is possible to configure with a memory amount smaller by the capacity.
【0035】また、本発明の第4の特徴の情報処理装置
では、図9に示す如く、読み出し手段14において、1
ブロック分データRdataの読み出し時に、アドレス
生成手段33がスキャン順序が、入力時のスキャン順序
とは異なるスキャン順序となるように、読み出しアドレ
スを生成するので、ランレングス復号手段RLDに、ス
キャン順序を並べ変える機能を付加したこととなり、ハ
ードウェア量を削減できると共に、スキャン順序変換処
理を別に行う必要がないので処理の高速化を図ることが
できる。In the information processing apparatus according to the fourth feature of the present invention, as shown in FIG.
When reading the block data Rdata, the address generation unit 33 generates the read address so that the scan order is different from the scan order at the time of input. Therefore, the scan order is arranged in the run-length decoding unit RLD. Since the function of changing the scan order has been added, the amount of hardware can be reduced, and the scan order conversion processing does not need to be performed separately, so that the processing can be sped up.
【0036】また、本発明の第5の特徴の情報処理装置
では、図10に示す如く、書き込み手段10において、
データVdataの書き込み時に、アドレス変換手段4
0がスキャン順序が、入力時のスキャン順序とは異なる
スキャン順序となるように、書き込みアドレスを変換す
るので、ランレングス復号手段RLDに、スキャン順序
を並べ変える機能を付加したこととなり、ハードウェア
量を削減できると共に、スキャン順序変換処理を別に行
う必要がないので処理の高速化を図ることができる。In the information processing apparatus according to the fifth aspect of the present invention, as shown in FIG.
When writing the data Vdata, the address conversion means 4
Since 0 converts the write address so that the scan order is different from the scan order at the time of input, a function of rearranging the scan order is added to the run-length decoding means RLD. Can be reduced, and it is not necessary to separately perform the scan order conversion processing, so that the processing can be sped up.
【0037】[0037]
【実施例】以下、本発明に係る実施例を図面に基づいて
説明する。Embodiments of the present invention will be described below with reference to the drawings.
【0038】(第1の実施例)図1(1)に本発明の第
1の実施例に係る情報処理装置の構成図を示す。同図に
おいて、図14(従来例)と重複する部分には同一の符
号を附する。(First Embodiment) FIG. 1A shows a configuration diagram of an information processing apparatus according to a first embodiment of the present invention. In the figure, the same reference numerals are given to portions overlapping with FIG. 14 (conventional example).
【0039】同図において、本実施例の情報処理装置
は、圧縮データ列Zdataを入力して一時的に保持す
るバッファBUF、可変長符号復号器VLD、ランレン
グス復号器RLD、スキャン順序変換器ZIGZAG、
逆量子化器IQ、逆直交変換器IOTを備えて構成し、
順次圧縮データを伸長することにより最終的な復号デー
タ列Ddataを得る復号装置である。In the figure, the information processing apparatus of the present embodiment includes a buffer BUF for inputting and temporarily storing a compressed data sequence Zdata, a variable length code decoder VLD, a run length decoder RLD, and a scan order converter ZIGZAG. ,
An inverse quantizer IQ, an inverse orthogonal transformer IOT,
This is a decoding device that obtains a final decoded data sequence Ddata by sequentially expanding compressed data.
【0040】つまり、本実施例の復号装置は、従来例に
対して、スキャン順序変換器ZIGZAGをランレング
ス符号から通常の値の系列に変換するランレングス復号
器RLDの後に配置した構成となっている。That is, the decoding apparatus of the present embodiment has a configuration in which the scan order converter ZIGZAG is arranged after the run-length decoder RLD for converting a run-length code into a sequence of normal values, as compared with the conventional example. I have.
【0041】従って、符号化された画像信号(圧縮デー
タ列Zdata)は、まずバッファBUFに保持された
後、可変長符号復号器VLDによって一連のランレング
ス符号(Vdata)に復号される。その符号列Vda
taは、ランレングス復号器RLDによって本来の値の
系列Rdataに変換される。それらのデータは、ジグ
ザグアドレス発生回路Zadによって生成されたジグザ
グアドレスでバッファメモリCMEM0 に書き込まれ
る。そのジグザグアドレスでバッファメモリCMEM0
に書き込んでいる時、バッファメモリCMEM1から
は、ラスターアドレス発生回路Radによって生成され
たアドレスで、既に書き込まれている前の小ブロックの
データが、ジグザグ順からラスター順に変換されたデー
タ列Rdata’として読み出される。その後、逆量子
化器IQによって逆量子化が行われ、更に、逆直交変換
器IOTによって逆直交変換を行うことにより最終的な
復号データ列Ddataが得られる。Therefore, the encoded image signal (compressed data string Zdata) is first held in the buffer BUF, and then decoded by the variable length code decoder VLD into a series of run-length codes (Vdata). The code string Vda
ta is converted into a series of original values Rdata by the run-length decoder RLD. Those data are written in the buffer memory CMEM0 with the zigzag address generated by the zigzag address generation circuit Zad. At the zigzag address, the buffer memory CMEM0
From the buffer memory CMEM1, the data of the small block that has not yet been written is converted from the zigzag order to the raster order by the address generated by the raster address generation circuit Rad as a data sequence Rdata '. Is read. Thereafter, inverse quantization is performed by the inverse quantizer IQ, and inverse orthogonal transform is further performed by the inverse orthogonal transformer IOT, thereby obtaining a final decoded data sequence Ddata.
【0042】ジグザグ順からラスター順に変換するスキ
ャン順序変換器ZIGZAGは、2枚のバッファメモリ
CMEM0及びCMEM1、ジグザグアドレス発生回路
Zad、ラスターアドレス発生回路Radから構成され
ている。図2に本実施例のスキャン順序変換器ZIGZ
AGの詳細な構成図を示す。The scan order converter ZIGZAG for converting the zigzag order to the raster order includes two buffer memories CMEM0 and CMEM1, a zigzag address generation circuit Zad, and a raster address generation circuit Rad. FIG. 2 shows the scan order converter ZIGZ of the present embodiment.
FIG. 3 shows a detailed configuration diagram of an AG.
【0043】図2において、バッファメモリCMEM0
及びCMEM1に対するアドレス生成手段として、シー
ケンシャルにカウントアップするカウンタCN、シーケ
ンシャルアドレスをジグザグ順のアドレスに変換するア
ドレス変換器ADC、バッファメモリCMEM0に対す
るアドレスを選択するセレクタS0、並びにバッファメ
モリCMEM1に対するアドレスを選択するセレクタS
1を備えている。尚、アドレス変換器ADCが保持する
内容は、2次元コサイン変換領域、即ち小ブロックの大
きさをn×m=8×8とする場合、図3に示す如くな
る。In FIG. 2, a buffer memory CMEM0
And a counter CN for sequentially counting up, an address converter ADC for converting a sequential address into an address in a zigzag order, a selector S0 for selecting an address for the buffer memory CMEM0, and selecting an address for the buffer memory CMEM1. Selector S
1 is provided. Note that the contents held by the address converter ADC are as shown in FIG. 3 when the size of the two-dimensional cosine conversion area, that is, the small block is n × m = 8 × 8.
【0044】つまり図2では、ジグザグアドレス発生回
路Zadは、カウンタCN、アドレス変換器ADC、及
びセレクタS0またはS1で、ラスターアドレス発生回
路Radは、カウンタCN、及びセレクタS0またはS
1でそれぞれ実現されている。That is, in FIG. 2, the zigzag address generation circuit Zad includes a counter CN, an address converter ADC, and a selector S0 or S1, and the raster address generation circuit Rad includes a counter CN, and a selector S0 or S0.
1, respectively.
【0045】以上のように、本実施例の情報処理装置
(復号装置)は、スキャン順序変換器ZIGZAGをラ
ンレングス復号器RLDの後に配置した構成としたの
で、スキャン順序変換器ZIGZAGで使用するバッフ
ァメモリCMEM0及びCMEM1の容量は、前述の
(1)及び(2)式からnm×W×2[bit ]の容量分
だけ少ないメモリ量で構成することが可能となる。ここ
で、2次元コサイン変換領域の大きさをn×m=8×8
とする場合、w=log(8×8)=6Wであり、8
×8×6×2=768[bit ]だけの容量のバッファメ
モリを節約できる。As described above, the information processing apparatus (decoding apparatus) according to the present embodiment has the configuration in which the scan order converter ZIGZAG is arranged after the run-length decoder RLD, so that the buffer used in the scan order converter ZIGZAG is used. The capacities of the memories CMEM0 and CMEM1 can be configured with a smaller memory capacity by the capacity of nm × W × 2 [bit] from the above equations (1) and (2). Here, the size of the two-dimensional cosine transform area is n × m = 8 × 8.
In this case, w = log (8 × 8) = 6W, and 8
It is possible to save a buffer memory having a capacity of × 8 × 6 × 2 = 768 [bit].
【0046】[第1の実施例に対する第1の変形例]図
1(2)は本発明の第1の実施例に対する第1の変形例
に係る情報処理装置の構成図である。[First Modification of First Embodiment] FIG. 1 (2) is a block diagram of an information processing apparatus according to a first modification of the first embodiment of the present invention.
【0047】本変形例の構成では、第1の実施例に比べ
て、バッファメモリCMEM0及びCMEM1に対する
ジグザグアドレス発生回路Zadとラスターアドレス発
生回路Radを交換し、ラスター順のアドレスで一方の
バッファメモリCMEM0に書き込み、同時に、前に書
き込まれた小ブロックのデータを、シグザグ順のアドレ
スで他方のバッファメモリCMEM1から読み出すよう
にしている。このような構成でも、第1の実施例と同様
に、バッファメモリCMEM0及びCMEM1の容量削
減の効果が得られる。In the configuration of this modification, the zigzag address generation circuit Zad and the raster address generation circuit Rad for the buffer memories CMEM0 and CMEM1 are exchanged as compared with the first embodiment, and one of the buffer memories CMEM0 and CMEM0 is replaced with the address in the raster order. , And at the same time, the data of the previously written small block is read from the other buffer memory CMEM1 at an address in a sigzag order. Even in such a configuration, the effect of reducing the capacity of the buffer memories CMEM0 and CMEM1 can be obtained as in the first embodiment.
【0048】[第1の実施例に対する第2の変形例]図
6(1)は本発明の第1の実施例に対する第2の変形例
に係る情報処理装置の構成図である。[Second Modification of First Embodiment] FIG. 6A is a block diagram of an information processing apparatus according to a second modification of the first embodiment of the present invention.
【0049】本変形例の構成では第1の実施例の構成に
比べて、バッファメモリCMEMを1バンクで構成し、
ジグザグ順のアドレスで書き込んだ後、ラスター順のア
ドレスで読み出すようにしている。高速性が要求されな
い場合には、このような構成とする事も可能である。In the configuration of the present modification, the buffer memory CMEM is constituted by one bank, as compared with the configuration of the first embodiment.
After writing at an address in a zigzag order, reading is performed at an address in a raster order. If high speed is not required, such a configuration is possible.
【0050】[第1の実施例に対する第3の変形例]図
6(2)は本発明の第2の実施例に対する第3の変形例
に係る情報処理装置の構成図である。[Third Modification to First Embodiment] FIG. 6 (2) is a block diagram of an information processing apparatus according to a third modification to the second embodiment of the present invention.
【0051】本変形例の構成では第1の実施例の構成に
比べて、バッファメモリCMEMを1バンクで構成し、
ラスター順のアドレスで書き込んだ後、ジグザグ順のア
ドレスで読み出すようにしている。第2の変形例と同様
に、高速性が要求されない場合には、このような構成と
する事も可能である。In the configuration of the present modification, the buffer memory CMEM is constituted by one bank, as compared with the configuration of the first embodiment.
After writing at an address in a raster order, reading is performed at an address in a zigzag order. As in the second modification, when high speed is not required, such a configuration can be adopted.
【0052】[第1の実施例におけるランレングス復号
器RLDの詳細説明]次に、第1の実施例、並びに第1
の実施例に対する第1、第2、及び第3の変形例におけ
るランレングス復号器RLDの構成及び動作の詳細な説
明を行い、その問題点について言及する。[Detailed Description of Run-Length Decoder RLD in First Embodiment] Next, the first embodiment and the first embodiment will be described.
The configuration and operation of the run-length decoder RLD in the first, second, and third modifications of the embodiment of the present invention will be described in detail, and its problems will be mentioned.
【0053】ランレングス復号器RLDは、圧縮データ
列Zdataが可変長符号復号器VLDによって一連の
ランレングス符号Vdataに復号された後、その符号
列Vdataを本来の値の系列Rdataに復号するも
のである。図1(1)及び(2)、並びに図6(1)及
び(2)に示す構成では、可変長符号復号結果のランレ
ングス符号Vdataと、ランレングス復号器の出力R
dataは、シンボル数が異なるので、可変長符号復号
器VLD及びランレングス復号器RLD間でハンドシェ
イクして、ランレングス復号器RLDは、可変長符号復
号器VLDが出力するランレングス符号Vdataの供
給を適時停止させながら復号を行う。The run-length decoder RLD decodes the compressed data string Zdata into a series of run-length codes Vdata by the variable-length code decoder VLD, and then decodes the code string Vdata into a series of original values Rdata. is there. In the configurations shown in FIGS. 1 (1) and (2) and FIGS. 6 (1) and (2), the run length code Vdata of the variable length code decoding result and the output R of the run length decoder
Since data has a different number of symbols, handshaking is performed between the variable-length code decoder VLD and the run-length decoder RLD, and the run-length decoder RLD supplies the run-length code Vdata output from the variable-length code decoder VLD. The decoding is performed while stopping timely.
【0054】図4に本実施例のランレングス復号器RL
Dの詳細構成図を示す。図4では、小ブロック(2次元
コサイン変換領域)の大きさが、例えば8×8のような
場合のランレングス復号を想定している。FIG. 4 shows the run-length decoder RL of this embodiment.
3 shows a detailed configuration diagram of D. FIG. FIG. 4 assumes run-length decoding when the size of a small block (two-dimensional cosine transform area) is, for example, 8 × 8.
【0055】図4に示すランレングス復号器RLDにお
いて、可変長符号復号結果のランレングス符号Vdat
aは、先行するゼロの数を表すゼロランzrと、ゼロ以
外の値を持つレベルlvlの組として供給される。ま
た、EOBは小ブロック1つ分のランレングス符号が終
了したことを示す信号、haltはそれがアクティブで
ある間、可変長符号復号器VLDにランレングス符号の
供給を停止させる信号である。In the run-length decoder RLD shown in FIG. 4, the run-length code Vdat as a result of decoding the variable-length code is obtained.
a is supplied as a set of a zero run zr representing the number of leading zeros and a level lvl having a non-zero value. EOB is a signal indicating that the run-length code for one small block has been completed, and halt is a signal for stopping the supply of the run-length code to the variable-length code decoder VLD while it is active.
【0056】デクリメンタ101とレジスタ102は、
初めにゼロランzrがセットされ、その値がゼロになる
までデクリメントすると共に、ゼロになるまでランレン
グス符号供給停止信号haltをアクティブにする。カ
ウンタ103の出力は、コントローラ104とエラー検
出器106の入力として使われる。The decrementer 101 and the register 102
First, a zero run zr is set, decremented until the value becomes zero, and the run length code supply stop signal halt is activated until the value becomes zero. The output of the counter 103 is used as an input of a controller 104 and an error detector 106.
【0057】コントローラ104は、ブロック終了信号
EOBを受け取った後、カウンタ103が”63”であ
るまでの期間は、ランレングス復号器RLDがゼロを出
力する期間なので、ランレングス符号供給停止信号ha
ltをアクティブにする。セレクタ105は、ランレン
グス符号供給停止信号haltがアクティブの期間、”
0”を選択して出力する。The controller 104 receives the block end signal EOB, and the period until the counter 103 is "63" is a period during which the run-length decoder RLD outputs zero.
lt is activated. The selector 105 outputs a signal during a period in which the run-length code supply stop signal halt is active.
Select "0" and output.
【0058】エラー検出器106は、値”63”からカ
ウンタ103の出力値を引いたものとゼロランzrを比
較し、等しいか或いはゼロランzrの方が大きい時に、
エラー信号errorをアクティブにして出力する。こ
の場合、ランレングス符号の復号結果Rdataが”
0”も含めて64個以上のシンボルを含んでいることに
なり、入力データにエラーがあることが検出される。こ
のように、本実施例のランレングス復号器RLDでは、
ゼロランzrの数だけ”0”を出力することとなる。The error detector 106 compares the value obtained by subtracting the output value of the counter 103 from the value “63” with the zero run zr.
Activate and output the error signal error. In this case, the decoding result Rdata of the run-length code is "
This means that 64 or more symbols including 0 "are included, and it is detected that there is an error in the input data. Thus, in the run-length decoder RLD of this embodiment,
"0" is output by the number of zero runs zr.
【0059】図5に、本実施例の可変長符号復号器VL
D及びランレングス復号器RLDの動作を説明するタイ
ミングチャートを示す。図中、VLDは可変長符号復号
器、RLDはランレングス復号器を示している。FIG. 5 shows the variable length code decoder VL of this embodiment.
4 is a timing chart illustrating the operation of D and the run-length decoder RLD. In the figure, VLD indicates a variable length code decoder, and RLD indicates a run length decoder.
【0060】同図に示すように、ランレングス復号器R
LDは元の画像データの数と同じだけのデータを出力す
るので、復号に常に一定の時間がかかる。また、可変長
符号復号器VLDは、ランレングス復号器RLDがゼロ
を出力している間、可変長符号器VLDの復号を一時停
止し、ランレングス符号の供給を停止しなくてはならな
い。このような頻繁な一時停止の繰り返しはハードウェ
アの構成を困難なものにする。As shown in the figure, the run-length decoder R
Since the LD outputs as many data as the number of original image data, a certain time is always required for decoding. Further, the variable-length code decoder VLD must temporarily stop the decoding of the variable-length encoder VLD and stop supplying the run-length code while the run-length decoder RLD outputs zero. Such frequent repetition of suspension makes the hardware configuration difficult.
【0061】更に、圧縮されたデータ中にはランレング
ス符号だけではなく、ランレングス符号のシンボル数
や、量子化の情報等、復号に欠かせない情報だけでな
く、様々な付加情報が可変長符号化されて入っているの
で、これらのデータの復号も行わなくてはならない。こ
れらのヘッダ情報は、可変長符号の性質からいって、ビ
ットストリームの任意のデータを探索する事ができない
ので、ランレングス符号部分の取り出しが終わらない限
り取り出すことができないのが普通である。従って、可
変長符号復号器VLDがブロック終了信号EOBを検出
するまではヘツダ情報の解釈ができず、それ以前の復号
停止はまったくのオーバーヘッド時間となる。従って、
動画像などのリアルタイム処理においては付加情報の入
ったヘッダ部分の解読時間がとれず、ハードウェアの負
担を大きくすることになる。Further, in the compressed data, not only the run-length code but also information such as the number of symbols of the run-length code and quantization information, which are essential for decoding, and various additional information are variable-length. Since they are encoded, these data must also be decoded. Since the header information cannot search for any data in the bit stream due to the nature of the variable length code, it cannot be normally extracted unless the run-length code portion is completely extracted. Therefore, the header information cannot be interpreted until the variable-length code decoder VLD detects the block end signal EOB, and stopping the decoding before that becomes a complete overhead time. Therefore,
In real-time processing of a moving image or the like, the decoding time of the header portion containing the additional information cannot be taken, and the load on the hardware increases.
【0062】(第2の実施例)次に、上述した第1の実
施例の情報処理装置の問題点を解決する本発明の第2の
実施例に係る情報処理装置について説明する。本実施例
の情報処理装置の全体構成は、図1(1)及び(2)、
並びに図6(1)及び(2)に示す第1の実施例、並び
に第1の実施例に対する第1、第2、及び第3の変形例
の構成と同様である。(Second Embodiment) Next, an information processing apparatus according to a second embodiment of the present invention which solves the problems of the information processing apparatus of the first embodiment will be described. The overall configuration of the information processing apparatus according to the present embodiment is shown in FIGS.
The configuration is the same as that of the first embodiment shown in FIGS. 6A and 6B and the first, second, and third modified examples of the first embodiment.
【0063】本実施例では、第1の実施例におけるラン
レングス復号器RLDの問題点を解決するために、ラン
レングス復号器RLDは図7に示すような詳細構成を備
える。同図において、本実施例のランレングス復号器R
LDは、ランレングス符号Vdataをブロック単位毎
に保持するバンクメモリ(記憶手段)13、カウンタ
(読み出し手段)14、加算器11及びレジスタ12か
ら成る書き込み手段10、並びにコントローラ15から
構成されている。尚、図7で用いられる信号名の内、図
4と同一のものについては同一信号名を使用し、その説
明を省略する。In this embodiment, in order to solve the problem of the run-length decoder RLD in the first embodiment, the run-length decoder RLD has a detailed configuration as shown in FIG. In the figure, a run-length decoder R of the present embodiment is shown.
The LD includes a bank memory (storage unit) 13 for holding the run length code Vdata for each block unit, a counter (reading unit) 14, a writing unit 10 including an adder 11 and a register 12, and a controller 15. Note that among the signal names used in FIG. 7, the same signal names as those in FIG. 4 use the same signal names, and a description thereof will be omitted.
【0064】加算器11は、レベルlvlを書き込むア
ドレスを計算すること、並びにエラーの検出を行う。書
込アドレスの計算は前回の書込アドレスを保持している
レジスタ12の内容と、ゼロランzrの長さと、”1”
を加算することで実行する。”1”は加算器11のキャ
リインとし、レジスタ12の内容とゼロランzrを加算
することで、1つの加算器11で書込アドレスを計算で
きる。The adder 11 calculates an address at which the level lvl is to be written, and detects an error. The calculation of the write address is based on the contents of the register 12 holding the previous write address, the length of the zero run zr, and "1".
Is executed by adding. “1” is a carry-in of the adder 11, and a single adder 11 can calculate a write address by adding the contents of the register 12 and the zero run zr.
【0065】また、エラー検出は加算器11のキャリア
ウトになるので、ごく簡単な構成で書込アドレスの計算
とエラー検出が行える。レジスタ12は小ブロックの最
初のランの書込アドレスの計算の時にはゼロになってい
るように、ランレングス復号の開始直前にゼロにリセッ
トされる。この加算器11の出力を書込アドレスとし、
予めゼロに初期化されているバンクメモリ0BM0また
はバンクメモリ1BM1にレベルlvlを書き込むこと
で、ランレングス符号の復号処理が行われる。Since the error detection is carried out by the adder 11, the calculation of the write address and the error detection can be performed with a very simple configuration. Register 12 is reset to zero just before the start of run-length decoding, so that it is zero when calculating the write address of the first run of the small block. The output of the adder 11 is used as a write address,
By writing the level lvl into the bank memory 0BM0 or the bank memory 1BM1 which has been initialized to zero in advance, the decoding process of the run-length code is performed.
【0066】バンクメモリ13は、1ブロック分の容量
のメモリを2つ(BM0及びBM1)持っており、一方
がランレングス符号の復号のための書き込みに、他方が
ランレングス符号の復号結果の読み出しに使用される。
1ブロック分しかメモリを持たない場合には、書き込み
が終わってからでないと読み出せないが、1ブロック分
のメモリを2個交互に使うことによって書き込み、読み
出しが同時に行えるので効率的である。The bank memory 13 has two memories (BM0 and BM1) each having a capacity of one block, one of which is used for writing a run-length code and the other is used for reading the result of decoding a run-length code. Used for
When only one block of memory is provided, reading cannot be performed until after writing is completed. However, by alternately using two memories of one block, writing and reading can be performed simultaneously, which is efficient.
【0067】バンクメモリ13の読み出しでは、カウン
タ14によって読出アドレスが生成される。更にカウン
タ14の値に従って、バンクメモリ0BM0またはバン
クメモリ1BM1の内容の読み出しと同時に、”0”を
書き込むことによって、読み出し側のバンクメモリBM
0またはBM1の内容を順次初期化していく。このリー
ド・モディファイド・ライト動作によって、ランレング
ス符号のゼロの部分が予め復号されていることになるの
で、バンクメモリが切り替わって、読み出しを行ってい
たバンクメモリが書き込みを行うバンクになった時に、
前述の書込アドレスの計算手段によって計算されるラン
ダムなアドレスに、レベルlvlを書き込んで行くこと
で、ランレングス符号の復号処理が実現できる。In reading from the bank memory 13, a read address is generated by the counter 14. Further, according to the value of the counter 14, the content of the bank memory 0BM0 or the content of the bank memory 1BM1 is read, and at the same time, "0" is written.
The contents of 0 or BM1 are sequentially initialized. Since the zero portion of the run-length code has been decoded in advance by this read-modified-write operation, when the bank memory is switched and the bank memory that was performing the read operation becomes the bank that performs the write operation,
By writing the level lvl to a random address calculated by the above-described write address calculation means, a run-length code decoding process can be realized.
【0068】コントローラ15は、カウンタ14がバン
クメモリ13から最後に読出アドレスを発生した後、次
の小ブロックの最初に読出アドレスを発生する時に、バ
ンク切替信号bcを発生する。また、1つの小ブロック
内のランレングス符号の終了を示すブロック終了信号E
OBが送られてきてから、カウンタ14が次の最初の読
出アドレスを発生するまでの期間は、初期化されたバン
クメモリがないので、次のランレングス復号が行えない
ことから、ランレングス符号の供給を停止させるため
に、その期間、ランレングス符号供給停止信号halt
をアクティブにして復号を停止する。The controller 15 generates the bank switching signal bc when the counter 14 generates the read address at the beginning of the next small block after the read address is generated from the bank memory 13 last. In addition, a block end signal E indicating the end of the run length code in one small block.
During the period from when the OB is sent to when the counter 14 generates the next first read address, the next run-length decoding cannot be performed because there is no initialized bank memory. In order to stop the supply, the run-length code supply stop signal halt
To stop decoding.
【0069】図8に、本実施例の動作を説明するタイミ
ングチャートを示す。図中、VLDは可変長符号復号
器、RLDはランレングス復号器を示している。FIG. 8 is a timing chart for explaining the operation of this embodiment. In the figure, VLD indicates a variable length code decoder, and RLD indicates a run length decoder.
【0070】本実施例のランレングス復号器RLDで
は、パワーオン直後のような、ランレングス符号の復号
動作を開始する前に、初期化されたバンクメモリBM0
またはBM1を用意するために、1バンク分のメモリを
空読みする動作が必要となる。In the run-length decoder RLD of this embodiment, the bank memory BM0 initialized before the start of the run-length code decoding operation, such as immediately after power-on, is started.
Alternatively, in order to prepare the BM1, an operation of performing idle reading of one bank of memory is required.
【0071】動作を開始すれば、ゼロランzrとレベル
lvlの組1つに対して、バンクメモリBM0またはB
M1への1回の書き込み動作で復号が終了するので、ラ
ン、レベルの組の数に対応する時間だけでランレングス
符号の復号処理が完了する。また、ランレングス符号を
供給する可変長符号復号器VLDは、ビットストリーム
中のランレングス符号部分を連続して復号できる。When the operation is started, the bank memory BM0 or B
Since the decoding is completed by one write operation to M1, the decoding process of the run-length code is completed only in the time corresponding to the number of the run and level pairs. Also, the variable length code decoder VLD that supplies the run length code can continuously decode the run length code portion in the bit stream.
【0072】従って、可変長符号復号器VLDはブロッ
ク終了信号EOBを検知するまでの間で停止する動作
は、ビットストリームの復号でヘッダ情報の取り出しす
らできない期間となるが、その動作が起こらないので、
効率的にビットストリームを復号でき、いちいち停止す
る動作がない分、可変長符号復号器VLDのハードウェ
アの負担が軽くなる。Accordingly, the operation of stopping the variable-length code decoder VLD until the detection of the block end signal EOB is a period during which the header information cannot even be extracted by decoding the bit stream, but this operation does not occur. ,
Since the bit stream can be efficiently decoded and there is no operation to stop each time, the load on the hardware of the variable-length code decoder VLD is reduced.
【0073】また、ブロック終了信号EOBから次のラ
ンレングス復号開始までのランレングス符号の供給停止
の期間は、第1の実施例のオーバーヘツドとなる部分も
含んだ時間となって、より長くなるので、その期間にヘ
ッダ情報などをビットストリームから取り出すなどの動
作を柔軟に処理することが可能となる。Further, the period during which the supply of the run-length code is stopped from the block end signal EOB to the start of the next run-length decoding is a time including the overhead portion in the first embodiment, and is longer. Therefore, operations such as extracting header information and the like from the bit stream during that period can be flexibly processed.
【0074】[第2の実施例に対する第1の変形例]次
に図9に、第2の実施例に対する第1の変形例の情報処
理装置におけるランレングス復号器RLDの詳細構成図
を示す。[First Modification of Second Embodiment] FIG. 9 shows a detailed configuration diagram of a run-length decoder RLD in an information processing apparatus according to a first modification of the second embodiment.
【0075】本変形例のランレングス復号器RLDは、
スキャン順序を並べ変えるためのスキャン順序変換器Z
IGZAGの機能を含んだ構成となっている。従って、
本変形例の情報処理装置の全体構成は、図1(1)及び
(2)、並びに図6(1)及び(2)に示す構成からス
キャン順序変換器ZIGZAGを取り除いた構成とな
る。The run-length decoder RLD of this modification is
Scan order converter Z for rearranging scan order
The configuration includes the function of IGZAG. Therefore,
The overall configuration of the information processing apparatus according to the present modified example is a configuration in which the scan order converter ZIGZAG is removed from the configuration shown in FIGS. 1 (1) and (2) and FIGS. 6 (1) and (2).
【0076】第2の実施例によるランレングス復号器R
LDは、予めゼロに初期化されたバンクメモリを必要と
するが、本変形例の構成では、スキャン順序の並べ変え
をするために極めて有効に利用することができる。The run-length decoder R according to the second embodiment
Although the LD requires a bank memory initialized to zero in advance, the configuration of the present modification can be used very effectively to rearrange the scan order.
【0077】バンクメモリ13の読出アドレス発生器3
1は、カウンタ32と、ランレングス符号化の際に、走
査順序を変える前のラスター順の並びに変換するための
アドレス変換器33により読出アドレスを発生する。こ
こで、アドレス変換器33はジグザグスキャンされてい
る場合、図3に示す変換表を保持したメモリで実現でき
る。Read address generator 3 for bank memory 13
1 generates a read address by a counter 32 and an address converter 33 for converting the raster order before changing the scanning order in the run-length encoding. Here, when zigzag scanning is performed, the address converter 33 can be realized by a memory holding a conversion table shown in FIG.
【0078】このように本変形例の情報処理装置の構成
は、ランレングス復号器RLDに、スキャン順序を並べ
変える機能を付加した構成となっているので、更にハー
ドウェア量を削減できると共に、スキャン順序変換処理
を別に行う必要がないので処理の高速化を図ることがで
きる。As described above, the configuration of the information processing apparatus according to the present modification has a configuration in which the function of rearranging the scan order is added to the run-length decoder RLD, so that the hardware amount can be further reduced and the scan amount can be reduced. Since it is not necessary to separately perform the order conversion processing, the processing can be speeded up.
【0079】[第2の実施例に対する第2の変形例]次
に図10に、第2の実施例に対する第2の変形例の情報
処理装置におけるランレングス復号器RLDの詳細構成
図を示す。[Second Modification to Second Embodiment] FIG. 10 shows a detailed configuration diagram of a run-length decoder RLD in an information processing apparatus according to a second modification to the second embodiment.
【0080】本変形例のランレングス復号器RLDも、
スキャン順序を並べ変えるためのスキャン順序変換器Z
IGZAGの機能を含んだ構成となっている。第1の変
形例と同様に、本変形例の情報処理装置の全体構成は、
図1(1)及び(2)、並びに図6(1)及び(2)に
示す構成からスキャン順序変換器ZIGZAGを取り除
いた構成となる。The run-length decoder RLD of this modification is also
Scan order converter Z for rearranging scan order
The configuration includes the function of IGZAG. As in the first modification, the overall configuration of the information processing apparatus of this modification is
The configuration shown in FIGS. 1 (1) and (2) and FIGS. 6 (1) and (2) is obtained by removing the scan order converter ZIGZAG.
【0081】第1の変形例のランレングス復号器RLD
では、バンクメモリ13からの読み出し時に、アドレス
変換を施すことによってスキャン順序の変換処理を実現
していたが、本変形例では、バンクメモリ13への書き
込み時に、アドレス変換を施すことによってスキャン順
序の変換処理を実現している。Run Length Decoder RLD of First Modification
In the above, the scan order conversion processing was realized by performing address conversion at the time of reading from the bank memory 13, but in this modification, at the time of writing to the bank memory 13, the scan order is converted by performing address conversion. Conversion processing is realized.
【0082】つまり、図11に示す変換表を保持したア
ドレス変換器40(メモリ)を加算器11の出力側に付
加して、加算器11が出力する書込アドレスを変換する
ことで、レベルlvlの書き込み操作により一気にスキ
ャン順序まで変換するものである。この場合、読出アド
レス発生手段は単純なカウンタ14だけで構成できる。That is, the address converter 40 (memory) holding the conversion table shown in FIG. 11 is added to the output side of the adder 11, and the write address output from the adder 11 is converted. Is converted to the scan order at a stretch by the write operation of. In this case, the read address generating means can be constituted only by the simple counter 14.
【0083】前述のように、ゼロランzrを用いたラン
レングス符号は、可変長符号化を行う時の符号化効率を
向上させるために、小ブロックを普通にラスター順にス
キャンして1次元に並べるのではなく、ジグザグ順のス
キャンに変換する等の方法が用いられる。このような並
べ変えを任意に実現するには、一度メモリにランレング
ス符号の復号結果を蓄える必要がある。As described above, in the run-length code using the zero-run zr, small blocks are usually scanned in raster order and arranged one-dimensionally in order to improve coding efficiency when performing variable-length coding. Instead, a method such as conversion into zigzag scan is used. In order to realize such rearrangement arbitrarily, it is necessary to once store the decoding result of the run-length code in the memory.
【0084】第1及び第2の変形例のランレングス復号
器RLDにおけるバンクメモリや13の構成は、この並
べ変えを実現するために極めて有効に利用でき、アドレ
ス変換器33または40を付加することで、簡単にスキ
ャン順序の並べ変えを行うことができる。特にリアルタ
イム性の要求されないシステムにおいては、バンクメモ
リ13を2バンク構成とせず、1バンクとして小ブロッ
ク単位で書き込みと読み出しを切り替えてもよい。この
場合は復号に第2の実施例並びに第1及び第2の変形例
に対して2倍の時間がかかることとなるが、その他の効
果を備えたまま、バンクメモリの量を1/2にすること
ができる。The configuration of the bank memory or 13 in the run-length decoder RLD of the first and second modifications can be used very effectively to realize this rearrangement, and the address converter 33 or 40 can be added. Thus, the scan order can be easily rearranged. In particular, in a system that does not require real-time performance, the bank memory 13 may not be configured as a two-bank configuration, and may be switched between writing and reading in small block units as one bank. In this case, the decoding takes twice as long as the second embodiment and the first and second modifications. However, the amount of the bank memory is reduced to half while maintaining the other effects. can do.
【0085】[0085]
【発明の効果】以上のように本発明の第1の特徴の情報
処理装置によれば、エントロピー符号化及びランレング
ス符号化された圧縮データ列を可変長符号復号器によっ
て可変長符号の復号を行った直後に、ランレングス復号
手段によって圧縮データ列の復号を行って、先行するゼ
ロの数zとゼロ以外のデータ値dの組(z,d)による
データ系列に戻し、その後スキャン順序変換手段におい
て、例えばバッファメモリを用いて、スキャン順序をジ
グザグ順からラスター順へ変換し、該ラスター系列デー
タに対して逆量子化及び逆直交変換を行って復号するこ
ととしたので、ジグザグ順からラスター順への変換に使
用されるバッファメモリの容量を従来に比べて、大幅に
削減することができ、より少ないハードウェア構成で復
号処理を行える情報処理装置を提供することができる。As described above, according to the information processing apparatus of the first aspect of the present invention, the compressed data sequence subjected to the entropy coding and the run length coding is decoded by the variable length code decoder into a variable length code. Immediately after the execution, the compressed data string is decoded by the run-length decoding means to return to a data sequence of a set (z, d) of the preceding number z of zeros and a data value d other than zero, and thereafter the scan order conversion means In, for example, using a buffer memory, the scan order is converted from the zigzag order to the raster order, and the raster sequence data is subjected to inverse quantization and inverse orthogonal transform and decoded, so that the zigzag order is changed to the raster order. The capacity of the buffer memory used for the conversion into the data can be greatly reduced as compared with the conventional one, and the decoding process can be performed with a smaller hardware configuration. It is possible to provide a processing apparatus.
【0086】また、本発明の第2、第3、第4、及び第
5の特徴の情報処理装置によれば、先行するゼロの数z
とゼロ以外のデータ値dの組(z,d)からなるランレ
ングス符号の圧縮データ列を、所定のブロック単位毎に
所定のデータ系列に変換するランレングス復号手段にお
いて、読み出し手段で記憶手段に既に書き込まれている
1ブロック分のデータを読み出すと共にゼロ値を書き込
み、一方書き込み手段では、ゼロ値に初期化されている
記憶手段に対して、圧縮データ列のi番目の組(zi ,
di )について、i−1番目の組(zi-1 ,di-1 )の
ゼロ以外のデータ値di-1 を書き込んだアドレスにi番
目のゼロの数zi を加算したアドレスに、i番目のゼロ
以外のデータ値di が書き込まれるように、1ブロック
分の圧縮データ列を書き込むこととしたので、ランレン
グス符号の復号にゼロを書き込む時間が生じず、ランレ
ングス符号のシンボル数に応じた時間で復号できるの
で、可変長符号復号器はランレングス符号部分の復号を
一気に行うことができ、無駄な時間を生じることなく、
ランレングス符号供給停止時間にヘッダ情報の解読等を
行うことができ、結果として、より少ないハードウェア
構成で且つ高速に復号処理を行える情報処理装置を提供
することができる。According to the information processing apparatus of the second, third, fourth, and fifth features of the present invention, the number z of leading zeros
Run-length decoding means for converting a compressed data sequence of a run-length code consisting of a set (z, d) of a non-zero data value d into a predetermined data sequence for each predetermined block unit; The data for one block that has already been written is read and a zero value is written. On the other hand, the writing means stores the ith set (zi, z i) of the compressed data string in the storage means initialized to the zero value.
di), the address obtained by adding the number zi of the i-th zero to the address at which the non-zero data value di-1 of the (i-1) -th set (zi-1, di-1) is written is added to the i-th zero Since the compressed data sequence for one block is written so that data values di other than the above are written, there is no time to write zero in decoding the run-length code, and the time corresponding to the number of symbols of the run-length code is reduced. Since decoding can be performed, the variable-length code decoder can decode the run-length code portion at a stroke, without wasting time,
It is possible to decode header information and the like during the run-length code supply suspension time, and as a result, it is possible to provide an information processing apparatus capable of performing high-speed decoding processing with a smaller hardware configuration.
【0087】また、読み出し手段において、1ブロック
分データの読み出し時に、アドレス生成手段が該ブロッ
ク内のスキャン順序が所定のスキャン順序となるよう
に、読み出しアドレスを生成するので、ランレングス復
号手段にスキャン順序を並べ変える機能を付加したこと
となり、より少ないハードウェア構成で且つ更に高速な
復号処理を行い得る情報処理装置を提供することができ
る。In the reading means, when reading the data for one block, the address generating means generates the read address so that the scanning order in the block becomes a predetermined scanning order. Since the function of rearranging the order is added, it is possible to provide an information processing apparatus capable of performing a higher-speed decoding process with a smaller hardware configuration.
【0088】或いは、書き込み手段において、1ブロッ
ク分データの書き込み時に、アドレス変換手段が該ブロ
ック内のスキャン順序が所定のスキャン順序となるよう
に、書き込みアドレスを変換することとしても、ランレ
ングス復号手段にスキャン順序を並べ変える機能を付加
したこととなり、ハードウェア量を削減できると共に、
スキャン順序変換処理を別に行う必要がないので処理の
高速化を図ることができる。Alternatively, when writing data for one block in the writing means, the address conversion means may convert the write address so that the scan order in the block becomes a predetermined scan order. Has added the function of rearranging the scan order, reducing the amount of hardware and
Since it is not necessary to separately perform the scan order conversion processing, the processing can be speeded up.
【0089】更に、記憶手段を複数のバンクメモリで構
成し、読み出し手段がバンクメモリの1つに既に書き込
まれている1ブロック分のデータを読み出すと同時に、
書き込み手段で、バンクメモリの他の1つに対して、1
ブロック分の圧縮データ列を書き込むことようにしたの
で、ランレングス符号の復号処理を更に高速にすること
ができる。Further, the storage means is constituted by a plurality of bank memories, and the reading means reads one block of data already written in one of the bank memories,
The writing means writes 1 to another of the bank memories.
Since the compressed data string for the block is written, the decoding process of the run-length code can be further speeded up.
【図1】図1(1)は本発明の第1の実施例に係る情報
処理装置の構成図、図1(2)は第1の変形例の構成図
である。FIG. 1A is a configuration diagram of an information processing apparatus according to a first embodiment of the present invention, and FIG. 1B is a configuration diagram of a first modification.
【図2】第1の実施例の情報処理装置におけるスキャン
順序変換器の詳細な構成図である。FIG. 2 is a detailed configuration diagram of a scan order converter in the information processing apparatus according to the first embodiment.
【図3】第1の実施例の情報処理装置におけるアドレス
変換器の内容を説明する図である。FIG. 3 is a diagram illustrating the contents of an address converter in the information processing apparatus according to the first embodiment.
【図4】第1の実施例の情報処理装置におけるランレン
グス復号器の詳細な回路構成図である。FIG. 4 is a detailed circuit configuration diagram of a run-length decoder in the information processing apparatus according to the first embodiment.
【図5】第1の実施例の情報処理装置におけるランレン
グス復号器の動作を説明する図である。FIG. 5 is a diagram illustrating an operation of a run-length decoder in the information processing apparatus according to the first embodiment.
【図6】図6(1)は第1の実施例の情報処理装置に対
する第2の変形例の構成図、図6(2)は第3の変形例
の構成図である。FIG. 6A is a configuration diagram of a second modification of the information processing apparatus according to the first embodiment, and FIG. 6B is a configuration diagram of a third modification.
【図7】本発明の第2の実施例に係る情報処理装置のラ
ンレングス復号器の詳細な回路構成図である。FIG. 7 is a detailed circuit configuration diagram of a run-length decoder of the information processing device according to the second embodiment of the present invention.
【図8】第2の実施例の情報処理装置におけるランレン
グス復号器の動作を説明する図である。FIG. 8 is a diagram illustrating an operation of a run-length decoder in the information processing device according to the second embodiment.
【図9】第2の実施例の情報処理装置に対する第1の変
形例のランレングス復号器の詳細な回路構成図である。FIG. 9 is a detailed circuit configuration diagram of a run-length decoder according to a first modification of the information processing apparatus according to the second embodiment;
【図10】第2の実施例の情報処理装置に対する第2の
変形例のランレングス復号器の詳細な回路構成図であ
る。FIG. 10 is a detailed circuit configuration diagram of a run-length decoder according to a second modification of the information processing apparatus according to the second embodiment;
【図11】第2の実施例の情報処理装置に対する第2の
変形例のランレングス復号器のアドレス変換器の内容を
説明する図である。FIG. 11 is a diagram illustrating the contents of an address converter of a run-length decoder according to a second modification of the information processing apparatus according to the second embodiment;
【図12】図12(1)は2値データ列に対するランレ
ングス符号化、図12(2)は多値データ列に対するラ
ンレングス符号化をそれぞれ説明する図である。FIG. 12A is a diagram for explaining run-length encoding for a binary data sequence, and FIG. 12B is a diagram for explaining run-length encoding for a multi-level data sequence.
【図13】小ブロック(8×8画素)に対するランレン
グス符号化の一例であり、図13(1)は小ブロック、
図13(2)はジグザグスキャンしたデータ列、図13
(3)はランレングス符号をそれぞれ説明する図であ
る。FIG. 13 is an example of run-length encoding for a small block (8 × 8 pixels), and FIG.
FIG. 13B shows a data string obtained by zigzag scanning.
(3) is a diagram for explaining each run-length code.
【図14】図14(1)は従来の情報処理装置の構成
図、図14(2)は従来例の詳細な構成図である。FIG. 14A is a configuration diagram of a conventional information processing apparatus, and FIG. 14B is a detailed configuration diagram of a conventional example.
【図15】図15(1)はシグザグ順のスキャン、図1
5(2)はラスター順のスキャンをそれぞれ説明する図
である。FIG. 15A is a scan in a zigzag order, and FIG.
FIG. 5 (2) is a diagram for explaining scanning in raster order.
Zdata 圧縮データ列 Ddata 復号データ列 BUF バッファ VLD 可変長符号復号器 RLD ランレングス復号器(ランレングス復号手段) ZIGZAG スキャン順序変換器(スキャン順序変換
手段) ZIGZAG’ スキャン順序変換器 IQ 逆量子化器 IOT 逆直交変換器 Zad ジグザグアドレス発生回路 Rad ラスターアドレス発生回路 CMEM0,CMEM1 バッファメモリ CN カウンタ ADC アドレス変換器 S0,S1 セレクタ Vdata 可変長復号データ列 Rdata ランレングス復号データ列 Rdata’ スキャン順を変換したランレングス復号
データ列 101 デクリメンタ 102 レジスタ 103 カウンタ 104 コントローラ 105,108 セレクタ 106 エラー検出器 107 比較器 G1,G2 ゲート回路 EOB ブロック終了信号 halt ランレングス符号供給停止信号 error エラー信号 zr ゼロラン lvl レベル 10 書き込み手段 11 加算器 12 レジスタ 13 バンクメモリ(記憶手段) BM0 バンクメモリ0 BM1 バンクメモリ1 14 カウンタ(読み出し手段) 15 コントローラ bc バンク切替信号 31 読出アドレス発生器 32 カウンタ 33 アドレス変換器(アドレス生成手段) 40 アドレス変換器(アドレス変換手段)Zdata compressed data sequence Ddata decoded data sequence BUF buffer VLD variable length code decoder RLD run-length decoder (run-length decoding means) ZIGZAG scan order converter (scan order converter) ZIGZAG 'scan order converter IQ inverse quantizer IOT Inverse orthogonal transformer Zad Zigzag address generation circuit Rad raster address generation circuit CMEM0, CMEM1 Buffer memory CN counter ADC Address converter S0, S1 Selector Vdata Variable-length decoded data sequence Rdata Run-length decoded data sequence Rdata 'Run-length obtained by converting scan order Decoded data sequence 101 Decrementer 102 Register 103 Counter 104 Controller 105, 108 Selector 106 Error detector 107 Comparator G1, G2 Gate circuit EOB Block end signal halt Run-length code supply stop signal error Error signal zr Zero run lvl Level 10 Writing means 11 Adder 12 Register 13 Bank memory (storage means) BM0 Bank memory 0 BM1 Bank memory 1 14 Counter (Reading means) 15 Controller bc Bank switching signal 31 Read address generator 32 Counter 33 Address converter (address generating means) 40 Address converter (address converting means)
フロントページの続き (56)参考文献 特開 平3−266564(JP,A) 特開 平4−360469(JP,A) 特開 平5−48903(JP,A) 特開 平4−323962(JP,A) 特開 平5−83564(JP,A) (58)調査した分野(Int.Cl.7,DB名) H03M 7/30 H03M 7/46 H04N 7/30 Continuation of the front page (56) References JP-A-3-266564 (JP, A) JP-A-4-360469 (JP, A) JP-A-5-48903 (JP, A) JP-A-4-323962 (JP) (A) JP-A-5-83564 (JP, A) (58) Fields investigated (Int. Cl. 7 , DB name) H03M 7/30 H03M 7/46 H04N 7/30
Claims (5)
ることによって符号化された圧縮データ列を復号する情
報処理装置であって、 少なくとも2つの記憶領域を有し、これらの記憶領域に
対する書き込み及び読み出しを同時に行う記憶手段と、 前記記憶領域のうち第1の記憶領域に対して、前記同一
値を連続させて書き込むことにより初期化を行う初期化
手段と、 前記初期化された部分の前記連続回数に応じたアドレス
に、前記圧縮データ列を書き込む書き込み手段と、 前記記憶領域のうち第2の記録領域に書き込まれている
データ列を読み出す読み出し手段と を有することを特徴
とする情報処理装置。(1) A continuous identical value is represented by the number of consecutive times.
To decode the encoded compressed data sequence by
An information processing device having at least two storage areas,
Storage means for simultaneously writing and reading data to and from the same storage area,
Initialization that initializes by writing values continuously
Means, and an address corresponding to the number of continuations of the initialized portion.
Writing means for writing the compressed data string, and writing in a second recording area of the storage area
An information processing apparatus , comprising: reading means for reading a data string .
値以外のデータ値dの組(z,d)で表記された圧縮デ
ータ列を復号する情報処理装置であって、 少なくとも2つの記憶領域を有する記憶手段と、 前記記憶領域のうち第1の記憶領域に対して、前記同一
値を連続させて書き込むことにより初期化を行う初期化
手段と、 前記初期化がされた前記記憶領域に対して、前記圧縮デ
ータ列のi−1番目の組(zi-1 ,di-1 )の前記デー
タ値di-1 が書き込まれたアドレスに、i番目の同一値
の連続回数zi を加算して次アドレスを求め、この次ア
ドレスにi番目のデータ値di が書き込まれるように、
前記圧縮データ列を書き込む書き込み手段と前記第1の
記憶領域に対する書き込み処理と同時に、第2の記憶領
域に既に書き込まれているデータを読み出す読み出し手
段と を備えることを特徴とする情報処理装置。2. The method according to claim 1, wherein the number of consecutive times z of the same value is the same.
Compressed data represented by a set (z, d) of data values d other than the value
An information processing apparatus for decoding a data sequence , wherein: a storage unit having at least two storage areas;
Initialization that initializes by writing values continuously
Means for storing the compressed data in the initialized storage area.
The data of the (i-1) -th set (zi-1, di-1) of the data sequence.
The i-th same value is added to the address where the data value di-1 is written.
The next address is obtained by adding the number of consecutive times zi
So that the i-th data value di is written to the dress
Writing means for writing the compressed data string and the first
At the same time as the writing process to the storage area, the second storage area
To read data already written to the area
The information processing apparatus characterized by comprising a stage.
系列を入力して、該データ系列のスキャン順序を、入力Enter a sequence and enter the scan order for the data sequence
された該データ系列と異なるデータ系列のスキャン順序Scan order of a different data sequence from the data sequence
に変換するスキャン順序変換手段を有することを特徴とHaving a scan order conversion means for converting to
する請求項1又は2に記載の情報処理装置。The information processing apparatus according to claim 1 or 2, wherein
ータのアドレスを生成するアドレス生成手段を有し、Address generating means for generating an address of the data, 該アドレス生成手段は、該データ系列のスキャン順序The address generation means is configured to scan the data sequence
を、入力された該データ系列と異なるデータ系列のスキOf the data sequence different from the input data sequence.
ャン順序となるように前記アドレスの生成を行うことをGeneration of the addresses so as to be in a random order.
特徴とする請求項1又は2に記載の情報処理装置。The information processing apparatus according to claim 1 or 2, wherein
ータのアドレスを生成するアドレス変換手段を有し、Address conversion means for generating data addresses, 該アドレス変換手段は、該データ系列のスキャン順序The address conversion unit is configured to scan the data sequence
を、入力された該データ系列と異なるデータ系列のスキOf the data sequence different from the input data sequence.
ャン順序となるように前記アドレスの生成を行うことをGeneration of the addresses so as to be in a random order.
特徴とする請求項1又は2に記載の情報処理装置。The information processing apparatus according to claim 1 or 2, wherein
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP15761093A JP3222633B2 (en) | 1993-06-28 | 1993-06-28 | Information processing device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP15761093A JP3222633B2 (en) | 1993-06-28 | 1993-06-28 | Information processing device |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH08116268A JPH08116268A (en) | 1996-05-07 |
JP3222633B2 true JP3222633B2 (en) | 2001-10-29 |
Family
ID=15653495
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP15761093A Expired - Fee Related JP3222633B2 (en) | 1993-06-28 | 1993-06-28 | Information processing device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3222633B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018211131A1 (en) * | 2017-05-19 | 2018-11-22 | Movidius Ltd. | Methods and apparatus for improving data transformation in processing devices |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002109885A (en) | 2000-09-28 | 2002-04-12 | Toshiba Corp | Semiconductor storage device |
US20040223550A1 (en) * | 2001-06-06 | 2004-11-11 | Norihisa Hagiwara | Decoding apparatus, decoding method, lookup table, and decoding program |
JP5081539B2 (en) * | 2007-08-31 | 2012-11-28 | 株式会社リコー | Image data encoding apparatus, image data encoding method, image forming apparatus, image forming method, image data decoding apparatus, and image data decoding method |
US9641721B2 (en) * | 2014-12-18 | 2017-05-02 | Kyocera Document Solutions Inc. | Apparatus and method for processing image data with multiple flip-flop storages |
JP6485045B2 (en) * | 2015-01-06 | 2019-03-20 | 沖電気工業株式会社 | Index operation apparatus, program and method |
-
1993
- 1993-06-28 JP JP15761093A patent/JP3222633B2/en not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018211131A1 (en) * | 2017-05-19 | 2018-11-22 | Movidius Ltd. | Methods and apparatus for improving data transformation in processing devices |
Also Published As
Publication number | Publication date |
---|---|
JPH08116268A (en) | 1996-05-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Heer et al. | Comparison of reversible methods for data compression | |
US20020084921A1 (en) | Digital image compression and decompression | |
JP2003018601A (en) | Image encoding method | |
KR20040005991A (en) | Method and apparatus for coding of wavelet transformed coefficients | |
EP0692913B1 (en) | Digital coding/decoding apparatus using variable length codes | |
JPH10322223A (en) | Variable length coding circuit | |
JP3222633B2 (en) | Information processing device | |
JP2003179923A (en) | Decoding system for dynamic image compression coded signal and method for decoding, and program for decoding | |
US6577251B1 (en) | Accessing sub-blocks of symbols from memory | |
JP3984877B2 (en) | Image processing apparatus, image processing method, program, and storage medium | |
JP2905133B2 (en) | Digital encoding device | |
JP2829246B2 (en) | Image expansion device | |
JP3077858B2 (en) | Serial data decoder | |
JPH06276394A (en) | Huffman decoding circuit | |
JPH08130652A (en) | Compression and expansion system for two-dimension image data | |
JPH09247466A (en) | Encoding device | |
KR100255062B1 (en) | Circuit for zero-run developing run/level sets and method for zero-run developing the same | |
JP2934425B1 (en) | Image data compression device and image data decompression device | |
JP3090640B2 (en) | Huffman encoding device and Huffman decoding device | |
JP2003333339A (en) | Image encoding apparatus and image encoding method | |
JPH07303045A (en) | Huffman decoder | |
JPH0884260A (en) | Compression system and expansion system for two-dimension image data | |
JPH10136363A (en) | Compressed data decoder and compressed data decoding method | |
KR0180163B1 (en) | An inverse scanner in an image decoder | |
JP2512195B2 (en) | Encoding device and decoding device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20070817 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080817 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090817 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090817 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100817 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100817 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110817 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110817 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120817 Year of fee payment: 11 |
|
LAPS | Cancellation because of no payment of annual fees |