[go: up one dir, main page]

JPH02254824A - Decoder - Google Patents

Decoder

Info

Publication number
JPH02254824A
JPH02254824A JP7759789A JP7759789A JPH02254824A JP H02254824 A JPH02254824 A JP H02254824A JP 7759789 A JP7759789 A JP 7759789A JP 7759789 A JP7759789 A JP 7759789A JP H02254824 A JPH02254824 A JP H02254824A
Authority
JP
Japan
Prior art keywords
code
section
shift
barrel shifter
data
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
JP7759789A
Other languages
Japanese (ja)
Other versions
JPH07105731B2 (en
Inventor
Yasuhiko Yamane
靖彦 山根
Takumi Hasebe
巧 長谷部
Yasukazu Nishino
西野 寧一
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP7759789A priority Critical patent/JPH07105731B2/en
Publication of JPH02254824A publication Critical patent/JPH02254824A/en
Publication of JPH07105731B2 publication Critical patent/JPH07105731B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

PURPOSE:To prevent the scale of hardware from being increased and to attain high speed decoding processing by managing a code quantity not shifted in one code and an unprocessed data quantity in a parallel shifter section, deciding the shift quantity in response to the code quantity and the unprocessed data quantity and processing the shift by one clock. CONSTITUTION:A parallel shifter section 3 uses a code data fetched in a latch section 1 and a latch section 2 by using a latch pulse 12 to generate an address, which is given to a decoding table 6, from which a coefficient or a 0-run length and code length are obtained. Then a control section 5 controlling the shift quantity given to the parallel shifter section 3, a counting section 7 counting the code length in response to the processing data quantity in the parallel shifter section 3 and a counting section 8 counting the processing data quantity in the parallel shifter section 3 in response to the shift quantity given from the control section 5 are used to manage the unprocessed data quantity in the parallel shifter section 3 and the code quantity not shifted in one code, decides the shift quantity in response to the unprocessed data quantity in the parallel shifter section 3 and processing the shift by one clock.

Description

【発明の詳細な説明】 産業上の利用分野 本発明は可変長符号の復号化装置に関するものである。[Detailed description of the invention] Industrial applications The present invention relates to a variable length code decoding device.

従来の技術 静止画像の階層的符号化方式として、画像に相関性があ
ることに着目して、画像データをNXN(N:整数)画
素のブロックに分割し、NXN画素からなるブロック内
のデータに離散コサイン変換(DCT)等の直交変換を
施し、そのブロック内を同程度の周波数成分を持つ変換
係数でグループ分けをし、1つの階層として、その階層
内で変換係数を符号化し圧縮する方式がある。
Conventional technology As a hierarchical encoding method for still images, focusing on the fact that images have correlations, image data is divided into blocks of NXN (N: an integer) pixels, and the data within the block consisting of NXN pixels is A method that performs orthogonal transform such as discrete cosine transform (DCT), groups transform coefficients with similar frequency components within the block, and encodes and compresses the transform coefficients within that layer as one layer. be.

第5図に離散コサイン変換の変換係数の特徴を示す。図
はNXNの2次元のブロックの画素に対して、離散コサ
イン変換を施した場合の変換係数であり、斜線部分はそ
の数値の大きい部分である。このような変換係数を量子
化、符号化するのであるが、低周波成分が多いブロック
の変換係数は、変換ブロックの左上に数値の大きいもの
が集中する。
FIG. 5 shows the characteristics of the transform coefficients of the discrete cosine transform. The figure shows transform coefficients when discrete cosine transform is applied to pixels of an NXN two-dimensional block, and the shaded areas are parts with large values. Such transform coefficients are quantized and encoded, and the transform coefficients of blocks containing many low frequency components are concentrated at the upper left of the transform block.

第6図に1ブロツク(8×8画素)の変換係数を4つの
階層に分類した図を示す。第1階層として変換係数の直
流(DC)成分、第2階層として低周波成分の2ライン
×2行から第1階層部分を除いた3個の変換係数、第3
階層として低周波成分の4ライン×4行から第1、第2
階層部分を除いた12個の変換係数、第4階層として低
周波成分の8ライン×8行から第1〜第3階層部分を除
いた48個の変換係数と4つの階層に分類している。
FIG. 6 shows a diagram in which the conversion coefficients of one block (8×8 pixels) are classified into four hierarchies. The first layer is the direct current (DC) component of the conversion coefficient, the second layer is the three conversion coefficients obtained by removing the first layer part from the 2 lines x 2 rows of the low frequency component, and the third layer is the direct current (DC) component of the conversion coefficient.
4 lines x 4 rows of low frequency components as a hierarchy, first and second
It is classified into four hierarchies: 12 transform coefficients excluding the hierarchical part, and 48 transform coefficients excluding the first to third hierarchy parts from the 8 lines x 8 rows of low frequency components as the fourth hierarchy.

このように1つのブロック内をグループ分けし、そのグ
ループ分けをした階層毎に画像のすべてのブロックに対
して、符号化を行う。第1階層においては符号化はおこ
なわず、変換係数そのものを扱う。第2階層以降は、係
数値およびOランの発生確率に応じて非定長の符号を割
り当て、所定有効長のデータにバッキングする。復号化
時にはDC成分を含む第1階層においては、所定有効長
にバッキングされたデータを変換係数の精度に合わせて
アンバッキングし、第2階層以降は、符号化データ列か
ら符号ビット長に応じてアンバッキングする。
In this way, one block is divided into groups, and all blocks of the image are encoded for each grouped layer. In the first layer, no encoding is performed and the transform coefficients themselves are handled. From the second layer onwards, a non-fixed length code is assigned according to the coefficient value and the probability of O-run occurrence, and backing is performed on data with a predetermined effective length. During decoding, in the first layer containing DC components, data backed to a predetermined effective length is unbacked according to the precision of the transform coefficient, and from the second layer onwards, data is unbacked from the encoded data string according to the code bit length. Unbacking.

以下、アンバッキングの処理について説明する。The unbacking process will be explained below.

第7図は従来のアンバッキング処理のブロック図である
。第7図において71は、必要に応じて読みだされる符
号化されたコードピット列データ、72はシフト回路、
73はシフト回路72からピット列データの先頭より所
定数の連続ビットを取り込みデコードするデコード回路
、74はデコード回路73により復号されたデータであ
る。
FIG. 7 is a block diagram of conventional unbacking processing. In FIG. 7, 71 is encoded code pit string data read out as needed, 72 is a shift circuit,
73 is a decoding circuit that takes in and decodes a predetermined number of consecutive bits from the beginning of the pit string data from the shift circuit 72; 74 is data decoded by the decoding circuit 73;

75はデコード回路73に取り込まれた所定ビット数の
符号化コードのうちの何ビット分がデコード動作に使用
されたかを示すコード長データであり、これをシフト回
路72にフィードバックして、使用されたコード部分の
シフトをシフト回路72にて行う。77は第2のシフト
回路であり、シフト回路72の中に存在する符号化コー
ド列の最後に位置あわせをして、nビットの符号化コー
ド列を転写、補充するものであり、バレルシフト回路で
構成される。ここで72内の”a“bC−”d”はコー
ドを表す。
75 is code length data indicating how many bits of the predetermined number of bits of the encoded code taken into the decoding circuit 73 are used for the decoding operation, and this is fed back to the shift circuit 72 and used. A shift circuit 72 shifts the code portion. 77 is a second shift circuit, which aligns with the end of the encoded code string existing in the shift circuit 72, transfers and supplements the n-bit encoded code string, and is a barrel shift circuit. Consists of. Here, "a"bC-"d" in 72 represents a code.

シフト回路77の動作を補助するものとして、演算回路
78が設けられている。これは、シフト回路72中に存
在する符号化コード列ビットの数をカウントするもので
、シフトアウト動作時には、カウント値からシフトアウ
トしたコード部分のビット数を減じ、又補充動作を行う
毎にnビット分加算する。そしてそのカウント内容がn
以上となったかどうか判断し、n以上となったならば補
充の一単位であるnビットを越す°空き“がシフト回路
72にあると判断してシフト回路77に対し、転写、補
充のトリガと、その転写位置を知らせる役目をもつ。転
写位置即ちシフト回路72の中の有効符号コードピット
列の最後のビットの次のビット位置はシフト回路72の
最下段を基準にした場合、シフト回路72の段数から、
シフト回路72内に残存する符号化コードピット列の総
ビット長を減じた数となる。
An arithmetic circuit 78 is provided to assist the operation of the shift circuit 77. This counts the number of encoded code string bits existing in the shift circuit 72, and during a shift-out operation, the number of bits of the code portion shifted out is subtracted from the count value, and every time a replenishment operation is performed, n Add bits. And the count content is n
If the number is n or more, it is determined that the shift circuit 72 has an empty space exceeding n bits, which is one unit of replenishment, and a trigger for transfer and replenishment is sent to the shift circuit 77. , has the role of informing the transfer position.The transfer position, that is, the bit position next to the last bit of the effective code pit string in the shift circuit 72 is based on the bottom stage of the shift circuit 72. From the number of steps,
This is the number obtained by subtracting the total bit length of the encoded code pit string remaining in the shift circuit 72.

発明が解決しようとする課題 上記の静止画像の階層的符号化方式において、第2階層
以降の変換係数はOである確率が高く、0ランが続くと
考えられる。この場合、0ランを出力している間は、符
号データ列をコード長に従ってアンバッキングする処理
と、変換係数を出力する処理はパラレルに動作すること
になる。しかし、変換係数の量子化方法、或は画像によ
っては0ランが必ずしも続(とは限らない。したがって
、符号データをシリアルに処理すると、符号部分のシリ
アルなシフトが必要となり、処理の高速化は望めない。
Problems to be Solved by the Invention In the above-described hierarchical encoding method for still images, there is a high probability that the transform coefficients in the second and subsequent layers are O, and it is considered that 0 runs continue. In this case, while the 0 run is being output, the process of unbacking the code data string according to the code length and the process of outputting the transform coefficients operate in parallel. However, depending on the quantization method of the transform coefficients or the image, 0 runs may not always be continuous. Therefore, when code data is processed serially, the code part needs to be shifted serially, and processing speed cannot be increased. I can't hope.

一方、第2階層以降で、上記のように非定長のコードを
パラレルに処理して符号長単位でアンバッキングするよ
うに構成すると(例えば、特開昭60−259067号
公報)複数のセレクタ、加算器、減算器が必要となりハ
ードウェアの規模が太き(なるという問題点が生じる。
On the other hand, if the second and subsequent layers are configured to process non-fixed length codes in parallel and unback them in code length units as described above (for example, Japanese Patent Application Laid-Open No. 60-259067), multiple selectors, Adders and subtracters are required, which increases the hardware scale.

本発明はかかる点に鑑み、可変長符号の復号化装置にお
いて、復号処理の高速化を容易なハードウェア構成で実
現できる復号化装置を提供することを目的としている。
In view of this, an object of the present invention is to provide a decoding device for variable length codes that can realize high-speed decoding processing with a simple hardware configuration.

課題を解決するための手段 本発明は上記課題を解決するために、圧縮データをnビ
ット(n:自然数)単位にパラレルに取り込む第1の取
り込み手段と、圧縮データをnビット単位にパラレルに
取り込む第2の取り込み手段と、復号用のテーブルと、
符号データより前記テーブルに与えるアドレスを生成す
るバレルシフタ部と、前記バレルシフタ部に与えるシフ
ト量を制御する手段と、符号長を前記シフト量制御手段
より与えられるシフト量に応じてカウントするカウント
手段と、前記バレルシフタ部内の処理データ量を前記シ
フト量制御手段より与えられるシフト量に応じてカウン
トするカウント手段とを有し、一つのコードにおける未
シフトの符号量とバレルシフタ部内の未処理データ量を
管理し、前記未シフトの符号長とバレルシフタ部内の未
処理データ量に応じてシフト量を決定し、そのシフト量
分1クロツクで処理する。
Means for Solving the Problems In order to solve the above problems, the present invention provides a first importing means for importing compressed data in parallel in units of n bits (n: a natural number), and a first importing means for importing compressed data in parallel in units of n bits. a second importing means, a decoding table;
a barrel shifter section that generates an address to be given to the table from code data; means for controlling a shift amount given to the barrel shifter section; and a counting means that counts the code length according to the shift amount given by the shift amount control means; and counting means for counting the amount of processed data in the barrel shifter section according to the shift amount given by the shift amount control means, and manages the amount of unshifted codes in one code and the amount of unprocessed data in the barrel shifter section. , a shift amount is determined according to the unshifted code length and the amount of unprocessed data in the barrel shifter section, and the shift amount is processed in one clock.

作用 本発明によれば、一つのコードにおける未シフトの符号
量とバレルシフタ部内の未処理データ量を管理し、前記
未シフトの符号長とバレルシフタ部内の未処理データ量
に応じてシフト量を決定し、そのシフト分1クロツクで
処理するので、ハードウェア規模を太きぐせず復号化処
理の高速化が図れると共に効率的な復号化が行える。
According to the present invention, the amount of unshifted code in one code and the amount of unprocessed data in the barrel shifter section are managed, and the amount of shift is determined according to the unshifted code length and the amount of unprocessed data in the barrel shifter section. Since the shift is processed in one clock, the decoding process can be accelerated without increasing the hardware scale, and efficient decoding can be performed.

実施例 以下、図を用いて本発明の詳細な説明する。Example Hereinafter, the present invention will be explained in detail using the drawings.

第1図に、本発明の一実施例における復号化装置のブロ
ック図を示す。同図において1および2は所定ビット長
の符号データを取り込むラッチ部、3はラッチ部1およ
び2で取り込んだ符号データを、アドレスとして生成す
るためのバレルシフタ部、4はタイミング制御部、5は
バレルシフタ部3のシフト量を制御するシフト量制御部
、6は復号テーブル、7は1つの変換係数、或は1つの
Oランに対する符号の符号長をシフト量に応じてカウン
トする符号長カウンタ部、8は処理データ量をシフト量
に応じてカウントするカウンタ部、9は0の変換係数の
個数をカウントするカウンタ、10はOとO以外の変換
係数をセレクトするセレクタ部、11はセレクタ部10
でセレクトされた変換係数を取り込み出力するラッチ部
である。
FIG. 1 shows a block diagram of a decoding device in an embodiment of the present invention. In the figure, 1 and 2 are latch parts that take in code data of a predetermined bit length, 3 is a barrel shifter part that generates the code data taken in by latch parts 1 and 2 as an address, 4 is a timing control part, and 5 is a barrel shifter. Shift amount control section that controls the shift amount of section 3; 6 is a decoding table; 7 is a code length counter section that counts the code length of a code for one conversion coefficient or one O-run according to the shift amount; 8 9 is a counter unit that counts the amount of processed data according to the shift amount; 9 is a counter that counts the number of 0 conversion coefficients; 10 is a selector unit that selects O and conversion coefficients other than O; 11 is a selector unit 10
This is a latch unit that captures and outputs the conversion coefficients selected by .

以下、第1図の回路動作を詳細に説明する。まず、符号
データをタイミング制御部4から出力されるラッチパル
ス12により、ラッチ部1およびラッチ部2に取り込む
。バレルシフタ部3では、ラッチ部1およびラッチ部2
で取り込まれた符号データによりアドレスを生成して、
復号テーブル6にアドレスを与え、係数値、或はOラン
長および符号長を得る。この際、符号データの有効ビッ
ト長を符号長カウンタ部7に与える。また、符号長カウ
ンタ部7およびカウンタ部8よりシフト量制御部5にカ
ウ°ンタ値を与える。このカウンタ値によりシフト量制
御部5では、シフト量を制御し、シフト量をバレルシフ
タ部3、符号長カウンタ部7およびカウンタ部8に与え
る。バレルシフタ部3は、この与えられたシフト量分の
シフトを行う。また、符号長カウンタ部7およびカウン
タ部8は、与えられたシフト量分カウンタを動かす。復
号テーブル6からのデータが係数値であれば、セレクタ
10では復号テーブル6からの出力をセレクトし、ラッ
チ部11に出力する。復号テーブル6からのデータがO
の変換係数の個数であれば、そのOの個数をOランカウ
ンタ9にセットする。この場合セレクタ10では、0を
セレクトし0の個数分Oをラッチ部11に出力する。
Hereinafter, the operation of the circuit shown in FIG. 1 will be explained in detail. First, code data is taken into the latch section 1 and the latch section 2 by the latch pulse 12 output from the timing control section 4 . In the barrel shifter section 3, the latch section 1 and the latch section 2
Generate an address using the code data taken in,
The address is given to the decoding table 6 to obtain the coefficient value or O-run length and code length. At this time, the effective bit length of the code data is given to the code length counter section 7. Further, the code length counter section 7 and the counter section 8 give counter values to the shift amount control section 5 . The shift amount control section 5 controls the shift amount based on this counter value, and provides the shift amount to the barrel shifter section 3, code length counter section 7, and counter section 8. The barrel shifter section 3 performs a shift by the given shift amount. Further, the code length counter section 7 and the counter section 8 move the counters by the given shift amount. If the data from the decoding table 6 is a coefficient value, the selector 10 selects the output from the decoding table 6 and outputs it to the latch unit 11. Data from decryption table 6 is O
If the number of conversion coefficients is , the number of O's is set in the O run counter 9. In this case, the selector 10 selects 0 and outputs O for the number of 0s to the latch unit 11.

ラッチ部11は、タイミング制御部4からのラッチパル
ス18によりデータを取り込み出力する。
The latch section 11 takes in and outputs data in response to a latch pulse 18 from the timing control section 4.

次に、バレルシフタ部3の動作を第2図、第3図および
第4図を用いて説明する。第2図において31はラッチ
部2からのデータを、32はラッチ部1からのデータを
取り込むバレルシフタ、7は1つの変換係数、或は1つ
のOランに対する符号の符号長をシフト量に応じてカウ
ントする符号長カウンタ部、8は処理データ量をシフト
量に応じてカウントするカウンタ部である。第3図は、
非定長のコードをバッキングした図であり、■■■■・
・・の順にバイト単位に読みだされるものとする。第4
図は第3図のコードがバレルシフタ部31および32に
取り込まれ、データをシフトしていく様子を示す図であ
る。
Next, the operation of the barrel shifter section 3 will be explained using FIGS. 2, 3, and 4. In FIG. 2, 31 is a barrel shifter that takes in data from latch unit 2, 32 is a barrel shifter that takes in data from latch unit 1, and 7 is one conversion coefficient, or a code length for one O-run, depending on the amount of shift. A code length counter section 8 for counting is a counter section that counts the amount of processed data according to the shift amount. Figure 3 shows
This is a backing diagram of a non-fixed length code.■■■■・
It is assumed that the data is read in byte units in the order of... Fourth
The figure shows how the code shown in FIG. 3 is taken into the barrel shifters 31 and 32 and data is shifted.

まず、バレルシフタ31.32にコードカ取す込まれ、
バレルシフタ31.32は(4−1)のようになる。こ
のMSB側から9ビツトをアドレスとして復号テーブル
16に与える。復号テーブル16からコード■に対する
係数値および符号長を得る。この場合、コード■の符号
長は4−であるので符号長“4”を符号長カウンタ部7
にセットする。この際、符号長カウンタ部7の値(RE
MCODE)は”4″、カウンタ部9の値(REVBY
TE)は“8”である。シフト量制御部5は、REMC
ODEおよびREMBYTEよりシフト量を決定し、シ
フト量をバレルシフタ31.32、符号長カウンタ部7
、カウンタ部8に与える。バレルシフタ31,32では
シフト量分1クロツクでシフトし、符号長カウンタ部7
、カウンタ部8はシフト量分カウンタを動かす。
First, insert the cord into the barrel shifter 31 and 32,
Barrel shifters 31 and 32 are as shown in (4-1). The 9 bits from the MSB side are given to the decoding table 16 as an address. The coefficient value and code length for code (■) are obtained from the decoding table 16. In this case, since the code length of the code ■ is 4-, the code length "4" is input to the code length counter section 7.
Set to . At this time, the value of the code length counter section 7 (RE
MCODE) is “4”, the value of counter section 9 (REVBY
TE) is "8". The shift amount control section 5 is a REMC
The shift amount is determined from ODE and REMBYTE, and the shift amount is sent to the barrel shifter 31, 32 and the code length counter section 7.
, is given to the counter section 8. The barrel shifters 31 and 32 shift by one clock by the shift amount, and the code length counter section 7
, the counter unit 8 moves the counter by the shift amount.

シフト量はREMCODEとREMBYTEの値の小さ
い方を与える。最大シフト量は4ビツトであるとすると
、この場合シフト量は“4”であるので、バレルシフタ
31.32は(4−2)のようになる。次に(4−2)
のMSB側から9ビツトをアドレスとして復号テーブル
16に与える。このときのアドレスイネーブル信号は、
符号長カウンタ部7の5FTENDより作る。これより
復号テーブル16からコード■に対する係数値および符
号長を得る。この場合、コード■の符号長は°5”であ
るので符号長”5”を符号長カウンタ部7にセットする
。この際、符号長カウンタ部?(7)値(REMCOD
E) は” 5”、カウンタ部9の値(REMBYTE
)は“4°である。シフト量制御部5は、REMCOD
EおよびREMBYTEよりシフト量を決定し、シフト
量をバレルシフタ31.32、符号長カウンタ部7、カ
ウンタ部8に与える。この場合シフト量は−4“である
The smaller of the REMCODE and REMBYTE values is given as the shift amount. Assuming that the maximum shift amount is 4 bits, the shift amount is "4" in this case, so the barrel shifters 31 and 32 become (4-2). Next (4-2)
The 9 bits from the MSB side are given to the decoding table 16 as an address. The address enable signal at this time is
It is created from 5FTEND of the code length counter section 7. From this, the coefficient value and code length for code ■ are obtained from the decoding table 16. In this case, since the code length of code ■ is 5", the code length "5" is set in the code length counter section 7. At this time, the code length counter section ? (7) value (REMCOD
E) is "5", the value of counter section 9 (REMBYTE
) is “4°.The shift amount control unit 5
The shift amount is determined from E and REMBYTE, and the shift amount is applied to the barrel shifter 31, 32, code length counter section 7, and counter section 8. In this case, the shift amount is -4''.

バレルシフタ31.32ではシフト量分1クロツクでシ
フトし、符号長カウンタ部7、カウンタ部8はシフト量
分カウンタを動かす。 ここで、バレルシフタ31,3
2は(4−3)のようになる。この場合、バレルシフタ
32に処理すべきデータがない(REMBYTE=O)
ので次のコードをバレルシフタ31,32にロードする
The barrel shifters 31 and 32 shift by one clock by the shift amount, and the code length counter section 7 and the counter section 8 move the counters by the shift amount. Here, barrel shifter 31,3
2 becomes (4-3). In this case, there is no data to be processed in the barrel shifter 32 (REMBYTE=O)
Therefore, load the following code into the barrel shifters 31 and 32.

このときのデータ要求信号はカウンタ部8からのFUL
L信号より作る。バレルシフタ31.32に次のコード
がロードされ、バレルシフタ31.32は(4−4)の
ようになる。このとき、REMCODEが”1”、RE
MBYTEが”8”であるので1ビツトシフトされる。
At this time, the data request signal is FUL from the counter section 8.
Created from L signal. The following code is loaded into the barrel shifter 31.32, and the barrel shifter 31.32 becomes (4-4). At this time, REMCODE is “1” and RE
Since MBYTE is "8", it is shifted by 1 bit.

このように、バレルシフタ部3は1クロツクで複数ビッ
トシフトすることになる。
In this way, the barrel shifter section 3 shifts a plurality of bits in one clock.

また、発生する符号のコード長の発生頻度により最大バ
レルシフト量をmビットに制限することでバレルシフタ
部、符号長のカウンタおよび前記バレルシフタ部内の処
理データ量のカウンタの回路規模を小さくできハードウ
ェア規模を小さくすることができる。この場合、一つの
符号のコード長がeビットN>m)であれば複数回に分
けてシフトすることになる。
In addition, by limiting the maximum barrel shift amount to m bits depending on the frequency of occurrence of the code length of the generated code, the circuit scale of the barrel shifter section, the code length counter, and the processing data amount counter in the barrel shifter section can be reduced, and the hardware scale can be reduced. can be made smaller. In this case, if the code length of one code is e bits (N>m), it will be shifted multiple times.

また、バレルシフト量を2k (k:正の整数)にすれ
ば、ハードウェア規模をさらに小さ(することができる
Further, by setting the barrel shift amount to 2k (k: positive integer), the hardware scale can be further reduced.

発明の効果 以上、説明したように本発明によれば、可変長符号の復
号化装置において、一つのコードにおける未シフトの符
号量とバレルシフタ部内の未処理データ量を管理し、未
シフトの符号長とバレルシフタ部内の未処理データ量に
応じてシフト量を決定することでハードウェア規模を大
きくせず復号を高速に行うことができる。また、バレル
シフト量を最大mビット(m≦n、n:コードデー夕を
パラレルに取り込む際のビット長)にする、或はバレル
シフト量を2 (k:正の整数)単位にすることで、よ
り簡易な構成で復号を高速にできる。
Effects of the Invention As described above, according to the present invention, in a variable length code decoding device, the unshifted code amount in one code and the unprocessed data amount in the barrel shifter section are managed, and the unshifted code length is By determining the shift amount according to the amount of unprocessed data in the barrel shifter section, decoding can be performed at high speed without increasing the hardware scale. In addition, by setting the barrel shift amount to a maximum of m bits (m≦n, n: bit length when importing code data in parallel), or by setting the barrel shift amount in units of 2 (k: a positive integer). , faster decoding can be achieved with a simpler configuration.

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

第1図は本発明の一実施例の復号化装置のブロック図、
第2図は復号化テーブルアクセスアドレス生成部のブロ
ック図、第3図は、非定長のコードをバッキングした図
、第4図はバレルシフタ部の動作を示す図、第5図は離
散コサイン変換の変換係数の特徴を示す図、第6図は1
ブロツクの変換係数を4つの階層に分類した図、第7図
は従来のアンバッキングのブロック図である。 1・・・ラッチ部、2・・・ラッチ部、3・・・バレル
シフタ部、4・・・タイミング制御部、5・・・シフト
量制御部、6・・・復号テーブル、7・・・符号長カウ
ンタ部、8・・・カウンタ部、9・・・Oランカウンタ
、10・・・セレクタ、11・・・ラッチ部。 代理人の氏名 弁理士 粟野重孝 ほか1名第1図 第 図 第 図 第 図
FIG. 1 is a block diagram of a decoding device according to an embodiment of the present invention;
Figure 2 is a block diagram of the decoding table access address generation section, Figure 3 is a diagram showing non-constant length code backing, Figure 4 is a diagram showing the operation of the barrel shifter section, and Figure 5 is a diagram of the discrete cosine transform. A diagram showing the characteristics of conversion coefficients, Figure 6 is 1
FIG. 7 is a block diagram of conventional unbacking, which shows the block transform coefficients classified into four hierarchies. DESCRIPTION OF SYMBOLS 1... Latch part, 2... Latch part, 3... Barrel shifter part, 4... Timing control part, 5... Shift amount control part, 6... Decoding table, 7... Code Long counter section, 8... Counter section, 9... O run counter, 10... Selector, 11... Latch section. Name of agent Patent attorney Shigetaka Awano and one other person Figure 1 Figure Figure Figure

Claims (3)

【特許請求の範囲】[Claims] (1)可変長符号化方式における復号において、復号用
のテーブルと、符号データより前記テーブルに与えるア
ドレスを生成するバレルシフタ部と、前記バレルシフタ
部に与えるシフト量を制御する手段と、符号長を前記シ
フト量制御手段より与えられるシフト量に応じてカウン
トするカウント手段と、前記バレルシフタ部内の処理デ
ータ量を前記シフト量制御手段より与えられるシフト量
に応じてカウントするカウント手段とを有し、一つのコ
ードにおける未シフトの符号量と前記バレルシフタ部内
の未処理データ量を管理し、前記未シフトの符号長とバ
レルシフタ部内の未処理データ量に応じてシフト量を決
定することを特徴とする復号化装置。
(1) In decoding in a variable length encoding system, a decoding table, a barrel shifter unit that generates an address to be given to the table from code data, means for controlling a shift amount given to the barrel shifter unit, and a code length that is a counting means for counting according to the shift amount given by the shift amount control means; and a counting means for counting the amount of processing data in the barrel shifter section according to the shift amount given by the shift amount control means; A decoding device characterized in that the amount of unshifted code in the code and the amount of unprocessed data in the barrel shifter section are managed, and the amount of shift is determined according to the unshifted code length and the amount of unprocessed data in the barrel shifter section. .
(2)前記復号化装置において、バレルシフタ部に与え
るシフト量を最大mビット(m<=l、m:自然数、l
:最大符号長)にすることを特徴とする特許請求の範囲
第1項記載の復号化装置。
(2) In the decoding device, the shift amount given to the barrel shifter section is set to a maximum of m bits (m<=l, m: natural number, l
2. The decoding device according to claim 1, wherein the decoding device has a maximum code length.
(3)前記復号化装置において、バレルシフタ部に与え
るシフト量を2^k(k:正の整数)単位にすることを
特徴とする特許請求の範囲第1項記載の復号化装置。
(3) The decoding device according to claim 1, wherein the amount of shift given to the barrel shifter section is in units of 2^k (k: positive integer).
JP7759789A 1989-03-28 1989-03-28 Decryption device Expired - Fee Related JPH07105731B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7759789A JPH07105731B2 (en) 1989-03-28 1989-03-28 Decryption device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7759789A JPH07105731B2 (en) 1989-03-28 1989-03-28 Decryption device

Publications (2)

Publication Number Publication Date
JPH02254824A true JPH02254824A (en) 1990-10-15
JPH07105731B2 JPH07105731B2 (en) 1995-11-13

Family

ID=13638361

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7759789A Expired - Fee Related JPH07105731B2 (en) 1989-03-28 1989-03-28 Decryption device

Country Status (1)

Country Link
JP (1) JPH07105731B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999044293A1 (en) * 1998-02-26 1999-09-02 Kanebo Limited Coder and decoder for variable-length code
JP2014116835A (en) * 2012-12-11 2014-06-26 Toshiba Corp Decoding device, encoding device, decoding method and encoding method

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999044293A1 (en) * 1998-02-26 1999-09-02 Kanebo Limited Coder and decoder for variable-length code
US6441757B1 (en) 1998-02-26 2002-08-27 Kanebo, Limited Decoding apparatus and decoding method for variable length codes
JP2014116835A (en) * 2012-12-11 2014-06-26 Toshiba Corp Decoding device, encoding device, decoding method and encoding method

Also Published As

Publication number Publication date
JPH07105731B2 (en) 1995-11-13

Similar Documents

Publication Publication Date Title
US4286256A (en) Method and means for arithmetic coding utilizing a reduced number of operations
US6587057B2 (en) High performance memory efficient variable-length coding decoder
JP3332619B2 (en) Decoding device and method thereof
US5546080A (en) Order-preserving, fast-decoding arithmetic coding arithmetic coding and compression method and apparatus
US4989000A (en) Data string compression using arithmetic encoding with simplified probability subinterval estimation
JP3007496B2 (en) Variable length decoder
US5838964A (en) Dynamic numeric compression methods
JPH05276052A (en) Method for decoding huffman code word and device therefor
US5163103A (en) Discrete cosine transforming apparatus
US7343542B2 (en) Methods and apparatuses for variable length encoding
EP0021283A1 (en) Digital data apparatus
JPS6248437B2 (en)
US7894532B2 (en) Variable-length encoding apparatus and method
US5832037A (en) Method of compressing and expanding data
US6313767B1 (en) Decoding apparatus and method
US20100225508A1 (en) Variable-Length Code Decoding Device and Variable-Length Code Decoding Method
US5835035A (en) High performance variable length decoder with two-word bit stream segmentation and related method
JPH02254824A (en) Decoder
US6091856A (en) Picture encoding device for compressing picture data
US6781528B1 (en) Vector handling capable processor and run length encoding
JPH02272970A (en) Data processing circuit
WO1998000924A1 (en) High performance variable length decoder with two-word bit stream segmentation and related method
JP2002519957A (en) Method and apparatus for processing a sign function
JP2003174365A (en) Decoding device and its method
EP0499225B1 (en) Variable-length code decoding device

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees