JP2002204171A - Apparatus and method for decoding multiplexed contiguous variable code length per clock cycle - Google Patents

Apparatus and method for decoding multiplexed contiguous variable code length per clock cycle

Info

Publication number
JP2002204171A
JP2002204171A JP2000401907A JP2000401907A JP2002204171A JP 2002204171 A JP2002204171 A JP 2002204171A JP 2000401907 A JP2000401907 A JP 2000401907A JP 2000401907 A JP2000401907 A JP 2000401907A JP 2002204171 A JP2002204171 A JP 2002204171A
Authority
JP
Japan
Prior art keywords
encoded data
data value
code length
length
bit
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.)
Pending
Application number
JP2000401907A
Other languages
Japanese (ja)
Inventor
Hyon Chan Kaa
ヒョン・チャン カー
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 JP2000401907A priority Critical patent/JP2002204171A/en
Publication of JP2002204171A publication Critical patent/JP2002204171A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To decode a plurality of code lengths more than one per clock cycle with the number of code length decoders kept in small and without using large barrel shifters for a code length decoding means in a circuit. SOLUTION: In a single clock cycle, the code lengths of contiguous multiplexed variable length decoding code words embedded in a bit stream are decoded. In this method, each code length decoding means is provided with a mask for masking all the bits related to all the former code words and a pseudo length decoder for performing a pseudo length decoding process before finding the real length of one word. In each code length decoding means, only a single code length decoder is used to reduce a chip area, thereby reducing production cost.

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は、圧縮デジタル信号
の復号に用いる可変長復号器(ハフマン復号器またはエ
ントロピー復号器としても知られている)の具体化に関
する。なお、以下では、動画のための「MPEG標準」
(H.262 ISO/IEC 13818-2: 1995(E)、"Information Tec
hnology - Generic Coding of Moving Pictures and As
sociated Audio Information: Video")の知識が想定さ
れている。
The present invention relates to an embodiment of a variable length decoder (also known as a Huffman decoder or an entropy decoder) for decoding compressed digital signals. In the following, "MPEG standard" for moving images
(H.262 ISO / IEC 13818-2: 1995 (E), "Information Tec
hnology-Generic Coding of Moving Pictures and As
sociated Audio Information: Video ") knowledge is assumed.

【0002】[0002]

【従来の技術】現在、単独のクロックサイクル内のデー
タストリームの中の隣接する可変長符号化データ値のコ
ード長を復号するのに用いる一般的方法は、同じクロッ
クサイクル内で長さを復号するべきすべてのコード語ご
とに用いられる多重バレルシフタを用いる方法と、第1
の符号化データ値のすべての可能なコード長に対応する
第2の符号化データ値のすべての可能な開始ビット位置
のそれぞれのために用いられる多重の第2の長さ復号器
を用いる方法を含む。
BACKGROUND OF THE INVENTION Currently, a common method used to decode the code length of adjacent variable length encoded data values in a data stream within a single clock cycle is to decode the length within the same clock cycle. A method using multiple barrel shifters used for every power word,
Using multiple second length decoders used for each of all possible start bit positions of the second encoded data value corresponding to all possible code lengths of the encoded data value of Including.

【0003】Bakmutskyの国際特許WO97/
24809号公報は、多重バレルシフタを用いることに
より、単独クロックサイクル内のデータストリームの中
の隣接する可変長符号化データ値の長さを決定する装置
と方法を含む可変長復号器(VLD)についての教えを
含み、この引用により本明細書に組み込まれる。その発
明の特定の実施形態において、装置は、第1のバレルシ
フタに加えて、第2、第3及び第4の3つのバレルシフ
タを含む。1つのバレルシフタは、4つの並列コード語
処理経路の各々に対して用いられる。
[0003] Bakmutsky's International Patent WO97 /
No. 24809 discloses a variable length decoder (VLD) that includes an apparatus and method for determining the length of adjacent variable length coded data values in a data stream within a single clock cycle by using multiple barrel shifters. Includes teachings and is incorporated herein by reference. In certain embodiments of the invention, the apparatus includes a second, third and fourth three barrel shifters in addition to the first barrel shifter. One barrel shifter is used for each of the four parallel codeword processing paths.

【0004】SitaとBroszの欧州特許第079
8931号公報は、多重の第2の長さ復号器を用いる可
変長復号器についての教えを含み、この引用により本明
細書に組み込まれる。ここで、第2の長さ復号器の各々
は、第1の符号化データ値のすべての可能なコード長に
対応する第2の符号化データ値のすべての可能な開始ビ
ット位置のそれぞれのために用いられる。その装置(図
1参照)は、複数の符号化データ値のサブセットを受け
取るように結合される第1の長さ復号手段を含む。この
第1の長さ復号手段は、サブセット内の符号化データ値
の中の第1のデータ値の長さを決定する第1の復号処理
を行う。装置は、さらに、複数の符号化データ値のサブ
セットを受け取るように結合される第2の長さ復号手段
を含む。この第2の長さ復号手段は、サブセット内の符
号化データ値の中の第2のデータ値の長さを決定する第
2の復号処理を行う。さらに、装置は、第1と第2のデ
ータ値を併合した長さを出力するための、第1と第2の
符号化データ値の長さに対応する併合長復号器を含む。
[0004] Sita and Brosz, EP 079
No. 8931 includes teachings on variable length decoders using multiple second length decoders, which are incorporated herein by reference. Here, each of the second length decoders is for each of all possible start bit positions of the second encoded data value corresponding to all possible code lengths of the first encoded data value. Used for The apparatus (see FIG. 1) includes a first length decoding means coupled to receive a subset of the plurality of encoded data values. The first length decoding means performs a first decoding process for determining the length of the first data value among the encoded data values in the subset. The apparatus further includes a second length decoding means coupled to receive the subset of the plurality of encoded data values. The second length decoding means performs a second decoding process for determining the length of the second data value among the encoded data values in the subset. Further, the apparatus includes a merged length decoder corresponding to the length of the first and second encoded data values for outputting a merged length of the first and second data values.

【0005】[0005]

【発明が解決しようとする課題】Bakmutskyに
より使用された方法は、多数のバレルシフタを必要と
し、バレルシフタの量は、単独のクロックサイクル内に
長さが復号されるように意図される隣接するコード長の
数に線形的に比例する。各バレルシフタは、好ましくは
最大コード語長の数(たとえば32ビット)に等しい1
組の並列出力ビットラインを受け取る。バレルシフタに
必要なチップ面積は広いことがある。
The method used by Bakmutsky requires a large number of barrel shifters, and the amount of barrel shifters is the length of adjacent code lengths that are intended to be decoded in a single clock cycle. Is linearly proportional to the number of Each barrel shifter is preferably 1 equal to the maximum codeword length number (eg, 32 bits).
Receive a set of parallel output bit lines. The chip area required for the barrel shifter can be large.

【0006】上述のSitaとBroszの可変長復号
器は、第1符号化データ値の16の可能な長さの各々に
対応する符号化データ値の中の第2のデータ値の長さを
個々に決定する多重第2コード長復号器を用いる方法で
ある。可変長復号器は、同じクロックサイクル内で復号
されるべきコード語の数が増すにつれ、実現することが
ますます困難になる。したがって、合理的な低コストと
小さいチップ面積を用いて、クロックサイクル内で復号
可能なコード語の数は、従来は2に限定されていた。た
とえば、もし復号されるべきコード語の数がクロックサ
イクルあたり3になると、第3コード長復号手段が、第
2の符号化データ値の各々の取り得る長さのための16
個の復号器を含まねばならないことがある。第2長さ復
号手段は、立ち上げのため、第1の符号化データ値の取
り得る長さの各々のための16個の復号器を含まねばな
らないので、第3の長さ復号処理を行う第3長さ復号手
段において、全体で162個の復号器が必要である。ク
ロックサイクル当りNコードまで復号するため、第N長
さ復号手段に必要な第Nコード長復号器の見積もられた
数は、16N-1である。累積的に、第1長さ復号手段、
第2長さ復号手段、及び、第N長さ復号手段を含む第N
長さ復号手段までの復号手段を含む可変長復号器に必要
な全体の復号器の見積もられた数は、 である。さらに、クロックサイクルあたりNコードまで
復号するためのそのような可変長復号器の回路を具体化
するのに関連した増大する困難な技術的複雑さに加え、
ルックアップテーブル(LUT)のために必要なより大
きなメモリのため生じるコスト増加が、そのような方法
の実現を非経済的にしている。
[0006] The Sita and Brosz variable length decoders described above individually determine the length of a second one of the encoded data values corresponding to each of the sixteen possible lengths of the first encoded data value. Is a method using a multiplexed second code length decoder. Variable length decoders become increasingly difficult to implement as the number of codewords to be decoded in the same clock cycle increases. Thus, the number of codewords that can be decoded in a clock cycle using a reasonably low cost and small chip area has conventionally been limited to two. For example, if the number of codewords to be decoded is three per clock cycle, the third code length decoding means may determine that the number of codewords to be decoded is 16 for each possible length of the second encoded data value.
May have to be included. Since the second length decoding means must include 16 decoders for each of the possible lengths of the first encoded data value for startup, it performs the third length decoding process. in the third length decoding unit, it is required in total 16 two decoders. The estimated number of Nth code length decoders required for the Nth length decoding means to decode up to N codes per clock cycle is 16 N -1 . Cumulatively, first length decoding means,
The second length decoding means and the N-th length decoding means including the N-th length decoding means
The estimated number of overall decoders needed for the variable length decoder, including decoding means up to length decoding means, It is. Further, in addition to the increasing difficult technical complexity associated with implementing such a variable length decoder circuit for decoding up to N codes per clock cycle,
The increased cost resulting from the larger memory required for the look-up table (LUT) makes such a method uneconomical.

【0007】この発明の目的は、コード長復号器の数を
小さく保ち、また、回路内のコード長復号手段に大きな
バレルシフタを使用せずに、クロックサイクルあたり1
より多い複数のコード長を復号する他の方法を導入する
ことである。
It is an object of the present invention to keep the number of code length decoders small and to use one barrel per clock cycle without using a large barrel shifter for the code length decoding means in the circuit.
Another approach is to decode more code lengths.

【0008】[0008]

【課題を解決するための手段】上述の課題を解決する目
的のため、単独クロックサイクル内のデータストリーム
に含まれる多重コードの語の長さを示すコード長信号を
生成し送信する装置は、先コード長復号手段、第mコー
ド長復号手段及び次コード長復号手段からなる。現在の
説明において、先コード長復号手段と次コード長復号手
段とに含まれるすべてのコード長復号手段は、第mコー
ド長復号手段と同様なアーキテクチャと方法を採用す
る。したがって、第mコード長復号手段は、先コード長
復号手段に含まれる第(m−1)コード長復号手段、ま
たは、次コード長復号手段に含まれる第(m+1)コー
ド長復号手段を例示する。したがって、第(m−1)コ
ード長復号手段と第(m+1)コード長復号手段の構造
と機能の説明は、以下では繰り返されない。第mコード
長復号手段は、入力データストリームに含まれる第m符
号化データ値についてコード長復号処理を行い第m符号
化データ値のコード長を示す第mコード長信号を送信す
る。
SUMMARY OF THE INVENTION In order to solve the above-mentioned problems, an apparatus for generating and transmitting a code length signal indicating the length of a word of a multiplex code included in a data stream in a single clock cycle is described. It comprises code length decoding means, m-th code length decoding means, and next code length decoding means. In the present description, all code length decoding means included in the preceding code length decoding means and the next code length decoding means employ the same architecture and method as the m-th code length decoding means. Therefore, the m-th code length decoding means exemplifies the (m-1) th code length decoding means included in the preceding code length decoding means or the (m + 1) th code length decoding means included in the next code length decoding means. . Therefore, description of the structure and function of the (m-1) th code length decoding means and the (m + 1) th code length decoding means will not be repeated below. The m-th code length decoding unit performs a code length decoding process on the m-th encoded data value included in the input data stream, and transmits an m-th code length signal indicating the code length of the m-th encoded data value.

【0009】本発明において、第mコード長復号手段
は、入力データストリームに含まれる第m符号化データ
値についてコード長復号処理を行うために使用される。
この第mコード長復号手段は、第m符号化データ値のコ
ード長を示す第mコード長信号を送信する。第mコード
長復号手段において、マスク生成器は、第m復号コード
長値自体を含まないが第m復号コード長値までのすべて
の前に復号されたコード長値の総和を示す信号に基づい
て、1組のマスクビットを生成し送信する。これらのコ
ード長値は、同じクロックサイクル内で復号される。先
ビット取出手段は、第m符号化データ値の最下位先頭ビ
ットのビット値を決定するために使用される。マスク手
段は、先長信号を生成し送信するために使用される。先
長信号は、第m符号化データ値に含まれるすべてのビッ
トの中で、第m符号化データ値の最下位ビットと反対の
ビット値を持つ、第1符号化データ値の最下位先頭ビッ
トの固定ビット位置に対して、最初のビットである第1
ビットのビット位置を示す。擬似長復号器は、擬似長信
号を生成し送信するために使用される。擬似長信号は、
第m符号化データ値の中にあり同一の先頭ビット値を有
する隣接ビットの数を示す。識別子取出手段は、前記の
第m符号化データ値から固定数の識別子ビットを生成
し、送信するために使用される。識別子ビットは、前記
の第m符号化データ値の最下位先頭ビット位置より上位
のビット位置を有し、前記の擬似長と復号プロトコルに
従って与えられる他の規準信号が前記の第m符号化デー
タ値の実際の一意のコード長を決定するのに充分でない
場合に、前記の第m符号化データ値の実際の一意のコー
ド長を決定する役割を有する。コード長復号器は、前記
の第m符号化データ値のコード長を示すコード長信号を
生成し送信するために使用される。このコード長は、前
記の擬似長復号器、識別子取出手段及び前記の先ビット
取出手段から受け取られた前記の信号及び復号プロトコ
ルに従って提供される他の規準信号に基づいて、第m符
号化データ値のための実際のコード長を示す。
In the present invention, the m-th code length decoding means is used to perform a code length decoding process on the m-th encoded data value included in the input data stream.
The m-th code length decoding unit transmits an m-th code length signal indicating the code length of the m-th encoded data value. In the m-th code length decoding means, the mask generator, based on a signal indicating the sum of all previously decoded code length values not including the m-th decoded code length value but up to the m-th decoded code length value Generate and transmit a set of mask bits. These code length values are decoded within the same clock cycle. The first bit extracting means is used to determine the bit value of the least significant first bit of the m-th encoded data value. The masking means is used to generate and transmit the pre-length signal. The pre-length signal is, among all bits included in the m-th encoded data value, the least significant bit of the first encoded data value having a bit value opposite to the least significant bit of the m-th encoded data value. For the fixed bit position of the first bit, the first bit
Indicates the bit position of the bit. The pseudo length decoder is used to generate and transmit a pseudo length signal. The pseudo length signal is
Indicates the number of adjacent bits in the m-th encoded data value that have the same leading bit value. The identifier extracting means is used to generate and transmit a fixed number of identifier bits from the m-th encoded data value. The identifier bit has a bit position higher than the least significant first bit position of the m-th encoded data value, and the other reference signal given according to the pseudo length and the decoding protocol is used for the m-th encoded data value. Has the role of determining the actual unique code length of the m-th encoded data value if it is not sufficient to determine the actual unique code length of the m-th encoded data value. The code length decoder is used to generate and transmit a code length signal indicating the code length of the m-th encoded data value. The code length is determined by the m-th encoded data value based on the pseudo length decoder, the identifier fetching means and the signal received from the preceding bit fetching means and other reference signals provided according to a decoding protocol. Indicates the actual code length for

【0010】前記のマスク手段内で、ストリーム反転手
段は、前記の入力データストリームから、1組の隣接す
る反転したビットを生成する。この反転したビットの1
組は、前記の第m符号化データ値に含まれるいくつかの
又はすべてのビットのなかの反転されたビットを含む。
ストリーム選択手段は、前記の先頭ビット取出手段から
受け取られた前記の信号に基づいて、前記の入力データ
ストリームの中の1組の非反転ビットと、前記のストリ
ーム反転手段から受け取られた前記の入力データストリ
ームの中の1組の反転ビットとの一方を選択し送信す
る。1組のマスクゲートは、前記のストリーム選択手段
からの出力を受け取る。このマスクゲートは、第1符号
化データ値から第m符号化データ値まで(第m符号化デ
ータ値自体を含まないが)の範囲のすべての符号化デー
タ値に含まれる隣接ビットをマスクするが、他の残りの
より上位の有意の連続ビットをマスクしないで送信する
ことを可能にする。このマスクされたビットとマスクさ
れないビットは、マスクされたビットの数と同じ数のよ
り下位の有意の同一の先頭ビットと、第m符号化データ
値の連続するより下位の同一の先頭ビットとの隣接する
1組からなるストリームスタンプ信号を生成する。スト
リームスタンプ信号は、さらに、より上位の有意のビッ
ト位置で、ストリーム選択器から受け取られた残りのマ
スクされない隣接ビットを含む。マスクゲートの出力に
基づいて、先長信号は、前記の第m符号化データ値の前
記の擬似長の、前記の第1符号化データ値が長さが復号
されたのと同じクロックサイクル内で復号されたすべて
の前に復号されたコード長値の和を表わす。
In the masking means, the stream inverting means generates a set of adjacent inverted bits from the input data stream. This inverted bit 1
The set includes inverted bits of some or all bits included in the m-th encoded data value.
The stream selecting means, based on the signal received from the leading bit extracting means, includes a set of non-inverted bits in the input data stream and the input signal received from the stream inverting means. One of the set of inverted bits in the data stream is selected for transmission. A set of mask gates receives the output from the stream selection means. This mask gate masks adjacent bits included in all encoded data values in the range from the first encoded data value to the m-th encoded data value (but not including the m-th encoded data value itself). , Allows the other remaining higher significant consecutive bits to be transmitted unmasked. The masked and unmasked bits are the number of lower significant identical leading bits of the same number as the number of masked bits and successive lower identical leading bits of the m-th encoded data value. A stream stamp signal composed of a pair of adjacent sets is generated. The stream stamp signal further includes, at higher significant bit positions, the remaining unmasked adjacent bits received from the stream selector. Based on the output of the mask gate, the pre-length signal will have the pseudo-length of the m-th encoded data value within the same clock cycle in which the first encoded data value was decoded in length. Represents the sum of all previously decoded code length values.

【0011】本発明に係る単独クロックサイクル内の入
力データストリームに含まれる第m符号化データ値のコ
ード長を決定する方法は、第1符号化データ値から、現
在コード長が復号されている途中の前記の第m符号化デ
ータ値までの(第m符号化データ値自体を含まない)範
囲の、符号化データ値のなかの、単独のクロックサイク
ル内に復号された、すべての前に復号されたコード長値
の総和を示す信号に基づいて、1組のビットを生成して
送信するステップと、前記の第m復号値の最下位先頭ビ
ットのビット値を決定するステップと、第m符号化デー
タ値に含まれるすべてのビットの中で、第m符号化デー
タ値の最下位ビットと反対のビット値を持つ、第1符号
化データ値の最下位先頭ビットの固定ビット位置に対し
て、最初のビットである第1ビットのビット位置を示す
ストリームスタンプ信号を生成して送信するステップ
と、前記の第m符号化データ値の中にあり同じ先頭ビッ
ト値を有する隣接先頭ビットの数を示す信号を生成して
送信するステップと、前記の第m符号化データ値の最下
位先頭ビット位置より上位の有意のビット位置を有し、
前記の擬似長と復号プロトコルに従って与えられる他の
規準信号が前記の第m符号化データ値の実際の一意のコ
ード長を決定するのに充分でない場合に、前記の第m符
号化データ値の実際の一意のコード長を決定する役割を
有する固定数のビットを、前記の第m符号化データ値か
ら抽出するステップと、前記の擬似長信号及び復号プロ
トコルに従って提供される他の規準信号に基づいて、前
記の第m符号化データ値の実際のコード長を示すコード
長信号を生成し送信するステップとからなる。
According to the present invention, there is provided a method for determining a code length of an m-th encoded data value included in an input data stream in a single clock cycle, wherein a current code length is being decoded from a first encoded data value. Of the encoded data values, up to (but not including) the m-th encoded data value, decoded within a single clock cycle, Generating and transmitting a set of bits based on a signal indicating the sum of the calculated code length values; determining a bit value of the least significant first bit of the m-th decoded value; Of all the bits included in the data value, the first bit of the least significant bit of the first encoded data value having the opposite bit value to the least significant bit of the mth encoded data value A bit of Generating and transmitting a stream stamp signal indicating a bit position of a certain first bit; and generating a signal indicating the number of adjacent leading bits in the m-th encoded data value having the same leading bit value. Transmitting, and having a significant bit position higher than the least significant first bit position of the m-th encoded data value,
The actual length of the m-th encoded data value if the pseudo-length and other reference signals provided according to the decoding protocol are not sufficient to determine the actual unique code length of the m-th encoded data value. Extracting a fixed number of bits from the m-th encoded data value, which is responsible for determining the unique code length of the m-th encoded data value, and based on the pseudo-length signal and other reference signals provided according to a decoding protocol. , Generating and transmitting a code length signal indicating the actual code length of the m-th encoded data value.

【0012】前記の方法において、先長信号を決定する
前記のステップは、好ましくは、前記の入力データスト
リームから、前記の第m符号化データ値に含まれるビッ
トを含む1組の反転した隣接ビットを生成するステップ
と、前記の第m符号化データ値の最下位先頭ビットの前
記のビット値に基づいて、前記の入力データストリーム
の中の1組の非反転ビットと、前記の入力データストリ
ームの中の1組の反転ビットとの一方を選択して送信す
るステップと、前記の第1符号化データ値から前記の第
m符号化データ値までの(第m符号化データ値自体を含
まない)範囲の1以上の符号化データ値に関連する前記
の隣接ビットをマスクするステップと、第1符号化デー
タ値から前記の第m符号化データ値までの(第m符号化
データ値自体を含まない)範囲の1以上の符号化データ
値に関連するすべてのビットの数と同じ数の同一ビット
値の1組の隣接する先頭ビットと、第m符号化データ値
の隣接する同一のより下位の有意の先頭ビットとからな
るストリームスタンプ信号を形成し送信するステップ
と、前記の第1符号化データ値の長さが復号された単独
のクロックサイクル内において復号された、すべての前
に復号されたコード長値と、前記の第m符号化データ値
の前記の擬似長との和を表わす先長信号を、前記のスト
リームスタンプ信号に見出される隣接する同一の先頭ビ
ットの数を示すことにより生成し送信するステップとか
らなる。
[0012] In the above method, the step of determining the pre-length signal preferably comprises, from the input data stream, a set of inverted adjacent bits including bits included in the m-th encoded data value. Generating a set of non-inverted bits from the input data stream based on the least significant bit of the m-th encoded data value; Selecting one of the set of inverted bits and transmitting the inverted bit, and selecting from the first encoded data value to the m-th encoded data value (not including the m-th encoded data value itself). Masking said adjacent bits associated with one or more encoded data values in a range; and from said first encoded data value to said m th encoded data value (including the m th encoded data value itself). No) a set of adjacent leading bits of the same number of identical bit values as the number of all bits associated with one or more encoded data values in the range, and the same identical lower order of the mth encoded data value. Forming and transmitting a stream stamp signal consisting of significant leading bits; and all previously decoded lengths of said first encoded data value decoded in a single clock cycle decoded. Generating a pre-length signal representing the sum of the code length value and the pseudo length of the m-th encoded data value by indicating the number of adjacent identical leading bits found in the stream stamp signal; Transmitting.

【0013】前記の第mコード長復号手段は、入力デー
タストリームにおける第m符号化データ値についての第
mコード長復号処理を行うために使用される。この第m
コード長復号手段は、1組のマスクビットを生成するた
めのマスク生成器を含む。マスクビットは、第(m−
1)コード長復号手段から受け取られた前のコード長信
号に基づいて生成される。この前のコード長信号は、第
1符号化データ値から、現在コード長が復号されている
途中の第m符号化データ値(第m符号化データ値自体を
含まない)までのすべてのデータ値の、同じクロックサ
イクル内で復号されたすべてのコード長復号値の総和を
示す。この符号化データ値は、以降では、「前コード」
という。マスク生成器は、前記のマスク装置内に位置さ
れる1組のマスクゲートにこれらのマスクビットを送信
する。1組のマスクゲートは、前記の入力データストリ
ームから、前コードに対応する1組の隣接するビットを
マスクし、マスクゲートの出力で、前記のマスクされた
ビットを生成する。また、先頭ビット取出部は、マスク
生成部からこれらのマスクされたビットを受け取り、第
m符号化データ値の最下位先頭ビットのビット値を、取
り出された先頭ビットとして送信する。この取り出され
た先頭ビットは、1組の反転入力データストリームまた
は1組の非反転入力データストリームを選択するため、
マスク装置内でストリーム選択器により使用される。こ
の選択処理の後で、第m符号化データ値の1組の隣接す
る同一の先頭ビットを、前記のマスクされたビットと同
じビット値を有する1組の隣接する同一ビットとして、
ストリーム選択器の出力に現れる。以下では、ストリー
ム選択器の出力に現れる、第m符号化データ値の1組の
隣接する同一先頭ビットは、提示された(presented)先
頭ビットという。ストリーム選択器によって送られた前
コード、前記の提示された先頭ビット、及び、ストリー
ム選択器によって送られた他の上位の有意のビットに属
するすべてのビットは、前記の1組のマスクゲートへの
入力を形成する。この1組のマスクゲートは、ストリー
ム選択器により送られる1組の隣接する前コードの属す
るすべてのビットをマスクするが、ストリーム選択器か
ら受け取った他の上位の有意のビットをマスクしない。
この1組の隣接するマスクされたビットと、マスクゲー
トによりマスクされないで送られた1組のより上位の有
意のビットとは、ストリームスタンプ信号を形成し、先
符号器により受け取られる。この先符号器は、マスクゲ
ートからストリームスタンプ信号を受け取り、先長信号
を生成し、送信する。先長信号は、前記の第1符号化デ
ータ値の最下位の有意の先頭ビットから、第m符号化デ
ータ値の1組の隣接する同一の先頭ビットの最後のビッ
トまでの、隣接するマスクされた同一ビットの数を示
す。こうして、先長は、前記の前コード長と第m符号化
データ値の擬似長との和を表わす。この擬似長は、第m
符号化データ値における同一の隣接する先頭ビットの数
である。擬似長復号器は、擬似長信号と前コード長信号
とを受け取る。前長復号器は、先長信号と前コード長信
号とを受け取る。前長復号器は2つの信号を処理し、第
m符号化データ値の擬似長信号を出力する。一方、識別
子取出部は、先長信号を受け取り、入力データストリー
ムから、第m符号化データ値に対応する識別子ビットを
抽出する。識別子ビットと、取出先頭ビットとは、擬似
長信号だけでは第m符号化データ値の実際のコード長を
表わすのに不充分である多くの状況において、第m符号
化データ値の実際のコード長の決定に使用される。擬似
長信号、識別子ビット、取出先頭ビット、及び、特定の
復号プロトコル(たとえば、MPEG標準の表B−14
またはB−15の一方を示すtable_id)により与えられ
る他の規準(normative)信号に基づいて、コード長復号
器は、第m符号化データ長の実際のコード長を示す長さ
信号を生成し送信する。コード長復号器の動作の1例と
して、表1は、この発明のコード長復号器により使用で
きる表B−14と表B−15の圧縮コード長の表を示
す。
The m-th code length decoding means is used for performing an m-th code length decoding process on an m-th encoded data value in an input data stream. This m-th
The code length decoding means includes a mask generator for generating a set of mask bits. The mask bit is the (m−
1) Generated based on the previous code length signal received from the code length decoding means. The previous code length signal is composed of all data values from the first encoded data value to the m-th encoded data value (excluding the m-th encoded data value itself) whose code length is being decoded. 5 shows the sum of all code length decoded values decoded within the same clock cycle. This encoded data value is hereinafter referred to as the "previous code."
That. The mask generator sends these mask bits to a set of mask gates located in the mask device. A set of mask gates masks a set of adjacent bits corresponding to the previous code from the input data stream and produces at the output of the mask gate the masked bits. The leading bit extracting unit receives the masked bits from the mask generating unit, and transmits the bit value of the least significant leading bit of the m-th encoded data value as the extracted leading bit. The extracted leading bits are used to select a set of inverted input data streams or a set of non-inverted input data streams,
Used by the stream selector in the mask device. After this selection process, a set of adjacent identical leading bits of the m-th encoded data value is defined as a set of adjacent identical bits having the same bit value as the masked bit.
Appears at the output of the stream selector. In the following, a set of adjacent identical leading bits of the m-th encoded data value that appear in the output of the stream selector will be referred to as presented head bits. The previous code sent by the stream selector, the presented leading bits, and all bits belonging to the other significant bits sent by the stream selector are sent to the set of mask gates. Form the input. This set of mask gates masks all bits belonging to the set of adjacent previous codes sent by the stream selector, but does not mask the other significant bits received from the stream selector.
The set of adjacent masked bits and the set of higher significant bits sent unmasked by the mask gate form a stream stamp signal and are received by the precoder. The precoder receives the stream stamp signal from the mask gate, generates and transmits a prelength signal. The pre-length signal is adjacent masked from the least significant significant bit of the first encoded data value to the last bit of a set of identical identical leading bits of the m-th encoded data value. Indicates the number of identical bits. Thus, the preceding length represents the sum of the preceding code length and the pseudo length of the m-th encoded data value. This pseudo length is the m-th
This is the number of identical adjacent leading bits in the encoded data value. The pseudo length decoder receives the pseudo length signal and the previous code length signal. The pre-length decoder receives the pre-length signal and the pre-code length signal. The pre-length decoder processes the two signals and outputs a pseudo-length signal of the m-th encoded data value. On the other hand, the identifier extracting unit receives the pre-length signal and extracts an identifier bit corresponding to the m-th encoded data value from the input data stream. The identifier bit and the fetched leading bit are the actual code length of the m-th encoded data value in many situations where the pseudo-length signal alone is not sufficient to represent the actual code length of the m-th encoded data value. Used to determine The pseudo length signal, the identifier bit, the fetched leading bit, and the specific decoding protocol (for example, Table B-14 of the MPEG standard)
Alternatively, based on another normative signal given by table_id indicating one of B-15, the code length decoder generates and transmits a length signal indicating the actual code length of the m-th encoded data length. I do. As an example of the operation of the code length decoder, Table 1 shows a table of compressed code lengths of Table B-14 and Table B-15 that can be used by the code length decoder of the present invention.

【0014】[0014]

【表1】 注:"x"は、"don't care"ビットを表わす。table_id
の"0"は、表B−14が使用されることを表わす。tabl
e_idの"1"は、表B−15が使用されることを表わす。
[Table 1] Note: "x" stands for "don't care" bit. table_id
"0" in Table B-14 indicates that Table B-14 is used. tabl
"1" of e_id indicates that Table B-15 is used.

【0015】本発明では、コード長復号器の数を小さく
保ち、また、回路内のコード長復号手段に大きなバレル
シフタを使用せずに、クロックサイクルあたり1より多
い複数のコード長を復号する他の方法を導入する。その
ような方法を用いることにより、MPEG標準により必
要な表B−14と表B−15が、2つの表に見出される
コード長情報の冗長性を除去することにより、組み合わ
される。また、組み合わされた表のエントリの数が減少
される。こうして、全体のチップ面積とコストが減少で
きる。
According to the present invention, there is another method for decoding a plurality of code lengths greater than one per clock cycle without using a large barrel shifter for the code length decoding means in the circuit while keeping the number of code length decoders small. Introduce a method. By using such a method, Table B-14 and Table B-15 required by the MPEG standard are combined by removing the redundancy of the code length information found in the two tables. Also, the number of entries in the combined table is reduced. Thus, the overall chip area and cost can be reduced.

【0016】[0016]

【発明の実施の形態】以下、添付の図面を参照して本発
明の実施の形態を説明する。なお、図面において、同じ
参照記号は同一または同等のものを示す。図2は、先コ
ード長復号手段106、第mコード長復号手段108及
び次コード長復号手段110からなる装置100を示
す。先コード長復号手段106は、第mコード長復号手
段108に、全長信号(total_length_(m-1))198_
(m−1)を出力する。全長信号(total_length_(m-
1))198_(m−1)は、第m符号化データ値までの
複数の符号化データ値(第m符号化データ値自体を含ま
ない)の、単独のクロックサイクル内でのすべての前に
復号された長さの値の総和を表わす前コード長値を示
す。第mコード長復号手段108は、stream_data10
2と名づけられた入力データストリームに含まれる第m
符号化データ値についてコード長復号処理を行うために
使用される。第mコード長復号手段108は、第m符号
化データ値のコード長を示すlength_m信号190_mを
送信する。第mコード長復号手段108は、total_leng
th_(m-1)信号198_(m−1)、ストリームデータ1
02及びtable_id104を処理した後で、total_length
_m信号198_mを生成し、次コード長復号手段110
に送信する。
Embodiments of the present invention will be described below with reference to the accompanying drawings. In the drawings, the same reference symbols indicate the same or equivalent ones. FIG. 2 shows an apparatus 100 including a first code length decoding unit 106, an m-th code length decoding unit 108, and a next code length decoding unit 110. The first code length decoding means 106 sends the full length signal (total_length_ (m-1)) 198_
(m-1) is output. Total length signal (total_length_ (m-
1)) 198_ (m-1) is the number of encoded data values up to the m-th encoded data value (not including the m-th encoded data value itself) before all within a single clock cycle. It shows the previous code length value representing the sum of the decoded length values. The m-th code length decoding means 108 outputs stream_data 10
M-th in the input data stream named
It is used to perform a code length decoding process on the encoded data value. The m-th code length decoding unit 108 transmits a length_m signal 190_m indicating the code length of the m-th encoded data value. The m-th code length decoding means 108 calculates total_leng
th_ (m-1) signal 198_ (m-1), stream data 1
02 and table_id 104, total_length
_m signal 198 _m, and the next code length decoding means 110
Send to

【0017】図3は、この発明の1つの実施形態を示
す。図3は、第mコード長復号手段208の詳細を示
す。第mコード長復号手段208の中で、マスク生成器
220は、total_length_(m-1)信号298_(m−1)
と名づける前コード長信号を受け取り、1組のマスクビ
ット225を送信する。先頭ビット(leading bit)取出
部240は、マスクビット225と、stream_data20
2と名づける入力データストリームとを受け取り、取出
先頭ビット245を送信する。取出先頭ビット245
は、第m符号化データの最下位先頭ビットのビット値を
示す。マスク装置290は、これらのstream_data20
2、取出先頭ビット245及びマスクビット225を受
け取り、先長信号292を生成し、擬似長復号器230
と識別子取出部250に送信する。また、擬似長復号器
230は、total_length_(m-1)信号298_(m−1)
を受け取り、擬似長信号235を生成し、コード長復号
器260に送信する。また、識別子取出部250は、st
ream_data202を受け取り、stream_data202に埋め
込まれた第m符号化データ値から固定数の識別子ビット
255を抽出し、コード長復号器260に識別子ビット
255を出力する。コード長復号器260は、擬似長信
号235、識別子ビット255、取出先頭ビット245
及びtable_id204を受け取り、コード長信号code_m
(290_m)を生成し、送信する。コード長信号code
_m(290_m)は、第m符号化データ値からの実際の
コード長を示す。加算器295は、length_m信号290
_mとtotal_length_(m-1)信号298_(m−1)を受
け取り、total_length_m信号298_mを出力する。
FIG. 3 shows one embodiment of the present invention. FIG. 3 shows details of the m-th code length decoding means 208. In the m-th code length decoding means 208, the mask generator 220 outputs a total_length_ (m-1) signal 298_ (m-1)
And transmits a set of mask bits 225. The leading bit extracting section 240 includes a mask bit 225 and a stream_data 20
2 and transmits an extraction head bit 245. Extraction leading bit 245
Indicates the bit value of the least significant first bit of the m-th encoded data. The mask device 290 uses these stream_data 20
2, receiving the extracted leading bit 245 and the mask bit 225, generates a pre-length signal 292, and generates a pseudo-length decoder 230
To the identifier extracting unit 250. The pseudo-length decoder 230 outputs a total_length_ (m-1) signal 298_ (m-1)
And generates a pseudo-length signal 235 and transmits it to the code length decoder 260. Further, the identifier extracting unit 250
Ream_data 202 is received, a fixed number of identifier bits 255 are extracted from the m-th encoded data value embedded in stream_data 202, and identifier bits 255 are output to code length decoder 260. The code length decoder 260 outputs a pseudo-length signal 235, an identifier bit 255, and an extraction head bit 245.
And table_id 204, and a code length signal code_m
(290_m) is generated and transmitted. Code length signal code
_m (290_m) indicates the actual code length from the m-th encoded data value. The adder 295 outputs the length_m signal 290
_M and a total_length_ (m-1) signal 298_ (m-1), and outputs a total_length_m signal 298_m.

【0018】図3に示した実施形態の作用を以下に詳し
く説明する。第mコード長復号手段208は、入力デー
タストリームstream_data202に埋め込まれた第m符
号化データ値についての第mコード長演算を行う。第m
コード長復号手段208内のマスク生成器220は、先
コード長復号手段106から受け取られたtotal_length
_(m-1)信号298_(m−1)に基づいて、1組のマス
クビットを生成する。マスク生成器220は、マスクビ
ット225をマスク装置290に送信する。先頭ビット
取出部240は、マスク生成器220からマスクビット
225を受け取り、stream_data202から、第m符号
化データ値の最下位先頭ビットのビット値を抽出し、取
出先頭ビット245として送信する。この取出先頭ビッ
ト245は、マスク装置290に出力される。マスク装
置290は、また、stream_data202も受け取る。マ
スク装置290は、先長信号292を生成し、送信す
る。先長信号292は、第1符号化データ値の最下位先
頭ビットから、第m符号化データ値の1組の隣接する同
一の先頭ビットの最上位ビットまでの、隣接する同一の
マスクされたビットの数を示す。第m符号化データ値に
見出される同一の隣接する先頭ビットの数を示す擬似長
235は、先長信号292とtotal_length_(m-1)信号2
98_(m−1)とから導出される。擬似長復号器23
0は、マスク装置290から先長信号292を受け取
り、先コード長復号手段からtotal_length_(m-1)信号2
98_(m−1)を受け取る。擬似長復号器230は、
これらの信号を処理し、第m符号化データ値の擬似長を
示す擬似長信号を出力する。識別子取出部250は、第
m符号化データ値から、stream_data202に埋め込ま
れた固定数の識別子ビット255を抽出するために使用
される。識別子ビット255と取出先頭ビット245
は、ともに、擬似長信号235だけでは第m符号化デー
タ値の実際のコード長を表わすのに不充分である多くの
状況において、第m符号化データ値の実際の長さの値の
決定に使用される。擬似長復号器230により送られる
擬似長信号235、識別子ビット255、取出先頭ビッ
ト245及び復号プロトコルにより与えられるtable_id
信号204に基づいて、コード長復号器260は、leng
th_m信号290_mを生成し、送信する。このlength_m
信号290_mは、第m符号化データ値の実際の長さを
示す。加算器295は、length_m信号とtotal_length_
(m-1)信号298_(m−1)の値を加算し、total_leng
th_m信号298_mを生成する。
The operation of the embodiment shown in FIG. 3 will be described in detail below. The m-th code length decoding unit 208 performs an m-th code length operation on the m-th encoded data value embedded in the input data stream stream_data 202. M-th
The mask generator 220 in the code length decoding means 208 receives the total_length received from the preceding code length decoding means 106.
A set of mask bits is generated based on the _ (m-1) signal 298_ (m-1). The mask generator 220 sends the mask bits 225 to the mask device 290. The first bit extracting unit 240 receives the mask bit 225 from the mask generator 220, extracts the bit value of the least significant first bit of the m-th encoded data value from the stream_data 202, and transmits it as the extracted first bit 245. The extracted leading bit 245 is output to the mask device 290. The mask device 290 also receives the stream_data 202. The mask device 290 generates and transmits the pre-length signal 292. The pre-length signal 292 comprises adjacent identical masked bits from the least significant first bit of the first encoded data value to the most significant bit of a set of adjacent identical identical bits of the mth encoded data value. Indicates the number of The pseudo length 235 indicating the number of the same adjacent leading bits found in the m-th coded data value is the leading length signal 292 and the total_length_ (m-1) signal 2
98_ (m-1). Pseudo length decoder 23
0 indicates that the preceding length signal 292 is received from the mask device 290 and the total_length_ (m-1) signal 2 is received from the preceding code length decoding means.
98_ (m-1). The pseudo-length decoder 230
These signals are processed and a pseudo length signal indicating the pseudo length of the m-th encoded data value is output. The identifier extracting unit 250 is used to extract a fixed number of identifier bits 255 embedded in the stream_data 202 from the m-th encoded data value. Identifier bit 255 and fetch start bit 245
Are used to determine the value of the actual length of the m-th encoded data value in many situations where the pseudo-length signal 235 alone is not sufficient to represent the actual code length of the m-th encoded data value. used. The pseudo-length signal 235 sent by the pseudo-length decoder 230, the identifier bit 255, the extracted leading bit 245, and the table_id given by the decoding protocol
Based on the signal 204, the code length decoder 260
The th_m signal 290_m is generated and transmitted. This length_m
Signal 290_m indicates the actual length of the m-th encoded data value. The adder 295 calculates the length_m signal and the total_length_
(m-1) The value of the signal 298_ (m-1) is added, and total_leng
The th_m signal 298_m is generated.

【0019】第mコード長復号手段208は、total_le
ngth_m信号298_mを次コード長復号手段110に出
力するけれども、理解されるべきことは、次コード長復
号手段110は存在しなくてもよいということである。
当業者が認識するように、ここに説明した第mコード長
復号手段と同様な回路構成は、先コード長復号手段及び
/または次コード長復号手段の中で、この発明の趣旨と
範囲から離れずに、使用できる。
The m-th code length decoding means 208 calculates the total_le
Although the ngth_m signal 298_m is output to the next code length decoding means 110, it should be understood that the next code length decoding means 110 need not be present.
As will be appreciated by those skilled in the art, a circuit configuration similar to that of the m-th code length decoding means described herein may be used within the preceding code length decoding means and / or the next code length decoding means to depart from the spirit and scope of the invention Can be used without.

【0020】この実施形態の効果は、長さを復号するべ
き次の1組のコードにおけるシフトのために必要な全コ
ード長値が単独のクロックサイクル内で得られるという
ことである。
An advantage of this embodiment is that the entire code length value required for a shift in the next set of codes whose length is to be decoded is obtained in a single clock cycle.

【0021】この発明の他の実施形態を示す図4におい
て、マスク装置390の構造の詳細が示される。ストリ
ーム反転器375は、stream_data302から選択され
た1組の選択されたstream_data336を処理し、1組
の反転された隣接ビット378aを出力する。ストリー
ム選択器380は、stream_data302の非反転の1組
の隣接ビット378bと反転した1組の隣接ビット37
8aとを受け取り、一方の1組の隣接ビットを選択し、
提示される1組のstream_data382を出力する。1組
のマスクゲートは、ストリーム選択器380からの、こ
の提示される1組のstream_data382と、マスク生成
器320からのマスクビット325とを受け取り、先符
号器388に、ストリームスタンプ信号386の1つの
隣接ストリームを送信する。先符号器388は、先長信
号392を生成し出力する。図4に示した実施形態の作
用を以下に詳しく説明する。ストリーム反転器375
は、ストリームデータ302から選択された、1組の選
択されたstream_data336から、隣接ビットの反転さ
れた1組を形成する。先頭ビット取出部340から受け
取られた前記の取出先頭ビット345に基づいて、スト
リーム選択器380は、非反転の1組の隣接ビット37
8bと反転の1組の隣接ビットの378aの一方を選択
し、前記の1組のマスクゲート384にstream_data3
82の、提示された1組のstream_data382を送信す
る。提示された1組のstream_data382は、第m符号
化データ値に含まれるいくつかまたはすべてのビットを
含む。マスク生成器320から受け取られたマスクビッ
ト325に基づいて、前記の1組のマスクゲート384
は、第1符号化データ値から第m符号化データ値までの
すべての符号化データ値(第m符号化データ値自体を含
まない)に関連する隣接ビットをマスクする。しかし、
1組のマスクゲート384は、その出力に送られる他の
上位の有意の隣接ビットを、1組の隣接するマスクされ
ないビットとして送らせる。この隣接するマスクされた
ビットとマスクされないビットとは、マスクゲート38
4の出力でストリームスタンプ信号386を形成する。
ストリームスタンプ信号386は、マスクされたビット
の数に等しい隣接する下位の有意の先頭ビットと第m符
号化データ値の隣接する同一の下位の有意のいくつかの
ビットとからなる。ストリームスタンプ信号386は、
さらに、その残りの上位の有意ビットの位置で、ストリ
ーム選択器380から受け取られた残りのマスクされな
い隣接ビットを含む。このストリームスタンプ信号38
6に基づいて、先符号器388は、先長信号392を生
成し送信するために使用される。この先長信号392
は、第1符号化データ値の長さが復号される同じクロッ
クサイクル内で復号されるすべての前に復号されたコー
ド長と、第m符号化データ値の擬似長との和を表わす。
Referring to FIG. 4 showing another embodiment of the present invention, details of the structure of a mask device 390 are shown. Stream inverter 375 processes a set of selected stream_data 336 selected from stream_data 302 and outputs a set of inverted adjacent bits 378a. The stream selector 380 calculates the non-inverted set of adjacent bits 378b of the stream_data 302 and the inverted set of adjacent bits 37
8a and select one set of adjacent bits,
Output a set of stream_data 382 to be presented. A set of mask gates receives the presented set of stream_data 382 from the stream selector 380 and the mask bits 325 from the mask generator 320 and provides a precoder 388 with one of the stream stamp signals 386. Send the adjacent stream. The precoder 388 generates and outputs a prelength signal 392. The operation of the embodiment shown in FIG. 4 will be described in detail below. Stream inverter 375
Forms an inverted set of adjacent bits from a set of selected stream_data 336 selected from the stream data 302. Based on the fetched leading bits 345 received from the leading bit fetching unit 340, the stream selector 380 determines the non-inverted set of adjacent bits 37
8b and one of the set of adjacent bits 378a of the inversion are selected, and stream_data3 is set to the set of mask gates 384.
82, and sends the presented set of stream_data 382. The presented set of stream_data 382 includes some or all bits included in the m-th encoded data value. Based on the mask bits 325 received from the mask generator 320, the set of mask gates 384
Masks adjacent bits associated with all encoded data values from the first encoded data value to the m-th encoded data value (excluding the m-th encoded data value itself). But,
A set of mask gates 384 causes the other significant significant bits sent to its output to be sent as a set of adjacent unmasked bits. The adjacent masked and unmasked bits are connected to mask gate 38
4 form the stream stamp signal 386.
The stream stamp signal 386 consists of adjacent lower significant significant bits equal to the number of masked bits and several adjacent identical lower significant bits of the m-th encoded data value. The stream stamp signal 386 is
In addition, it includes the remaining unmasked adjacent bits received from the stream selector 380 at the position of the remaining upper significant bits. This stream stamp signal 38
6, the pre-encoder 388 is used to generate and transmit the pre-length signal 392. This predecessor signal 392
Represents the sum of all previously decoded code lengths decoded in the same clock cycle in which the length of the first encoded data value is decoded, and the pseudo length of the mth encoded data value.

【0022】ここで、留意されるべきことは、図4に示
される実施形態は、すべての入力ビットと出力ビットに
割り当てられるビットの数について限定されていないこ
とであり、また、ここに説明された発明は、DCT係数
長さ復号器を例として説明されていることである。この
発明は、MPEGで符号化されたビデオデータビットス
トリームを用いた実施形態を例として用いて説明された
けれども、他の種類の可変長復号器でも具体化できる。
この発明は、実施形態を例として説明されたけれども、
それに限定されるべきでない。むしろ、特許請求の範囲
は、この発明の趣旨からはずれることなく当業者により
なされる発明の他の変形や実施形態を含むものとして解
釈されるべきである。
It should be noted that the embodiment shown in FIG. 4 is not limited in the number of bits assigned to all input and output bits, and is not described here. The invention is described using a DCT coefficient length decoder as an example. Although the invention has been described by way of example with an embodiment using a video data bitstream encoded in MPEG, it can be embodied in other types of variable length decoders.
Although the present invention has been described by way of example embodiments,
Should not be limited to it. Rather, the appended claims should be construed to include other modifications and embodiments of the invention made by those skilled in the art without departing from the spirit of the invention.

【0023】[0023]

【発明の効果】本発明は、単独のコード長復号手段より
高いデータスループットを達成できる。そのような高い
データスループットは、HDTVのような高いスループ
ットの用途のために本質的である。
The present invention can achieve higher data throughput than a single code length decoding means. Such high data throughput is essential for high throughput applications such as HDTV.

【0024】本発明により用いられるクロック速度は、
スループットの向上により低下でき、より遅いがより低
コストのメモリを使用可能にする。
The clock speed used by the present invention is:
Increased throughput can be reduced, allowing slower but lower cost memory to be used.

【0025】本発明は、単独のクロックサイクル内で多
重DCT係数を復号する単独の可変長復号器のための、
長さを復号する解決法を提供する。高スループットの用
途では、多重の並列の可変調復号器は、データスループ
ットの増大のために使用される。本発明は、速度バッフ
ァインタフェースでメモリの量を小さくするのに必要な
そのような単独の可変調復号器の本質的部分を構成でき
る。さらに、もし単独のクロックサイクル内で多重DC
T係数を復号する単独の可変長復号器が代わりに使用さ
れるなら、多重の可変調復号器の間での切換においてオ
ーバーヘッドは必要でない。
The present invention is directed to a single variable length decoder for decoding multiple DCT coefficients in a single clock cycle.
A length decoding solution is provided. In high throughput applications, multiple parallel tunable decoders are used for increasing data throughput. The present invention can constitute an essential part of such a single tunable decoder required to reduce the amount of memory at the rate buffer interface. In addition, if multiple DCs are
If a single variable length decoder to decode the T coefficients is used instead, no overhead is required in switching between multiple tunable decoders.

【0026】本発明の長さ復号手段は、現在利用可能な
可変コード長復号法のいくつかにおいて使用される他の
長さ復号手段の代わりに使用できる。本発明はいくつか
の効果を達成できる。本発明において、各々のコード長
復号手段のための単独のコード長復号器の使用は、その
具体化において、同じクロックサイクル内で長さが復号
されるべき前のコード語の各々の可能な開始位置に応じ
る多数の多重コード長復号器を用いる方法に比べて、チ
ップ面積をより小さくし、コストをより低くする。
The length decoding means of the present invention can be used in place of other length decoding means used in some of the currently available variable code length decoding methods. The present invention can achieve several effects. In the present invention, the use of a single code length decoder for each code length decoding means, in its implementation, each possible start of a previous code word whose length is to be decoded within the same clock cycle. The chip area and cost are reduced as compared with the method using a large number of multiplex code length decoders according to positions.

【0027】また、本発明において大きなバレルシフタ
を用いないので、コード長復号器をより小さくするのに
寄与する。さらに、各々の次の長さ復号手段に使用され
るルックアップテーブルが、表B−14と表B−15に
おいて見出されるすべてのエントリのためのコード長情
報を格納するときに冗長度の減少により小さくできる。
また、使用される各ルックアップテーブルにおけるエン
トリの数が減少されるので、チップ面積をより小さく
し、製造におけるコストを低くする。
Further, since a large barrel shifter is not used in the present invention, it contributes to making the code length decoder smaller. In addition, the look-up table used for each next length decoding means stores the code length information for all the entries found in Tables B-14 and B-15, thereby reducing redundancy. Can be smaller.
Also, since the number of entries in each lookup table used is reduced, the chip area is made smaller and manufacturing costs are reduced.

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

【図1】 同じクロックサイクル内で長さが復号される
第1のコード語の各々の可能な開始ビット位置に用いる
ための多数の多重コード長復号器を使用する復号器にお
いて使用される長さ復号器を説明するためのブロック図
FIG. 1 illustrates a length used in a decoder that uses multiple multiple code length decoders for use at each possible starting bit position of a first codeword whose length is decoded within the same clock cycle. Block diagram for explaining a decoder

【図2】 本発明をしようできる多重の隣接するコード
長復号装置を説明するためのブロック図
FIG. 2 is a block diagram for explaining a multiplex adjacent code length decoding apparatus according to the present invention;

【図3】 本発明において導入される典型的なコード長
復号手段の例である第mコード長復号手段の構造の詳細
を示す、本発明の1実施形態のブロック図
FIG. 3 is a block diagram of an embodiment of the present invention, showing details of the structure of an m-th code length decoding unit that is an example of a typical code length decoding unit introduced in the present invention;

【図4】 第mコード長復号手段において使用されるマ
スク装置を説明するためのブロック図
FIG. 4 is a block diagram for explaining a mask device used in an m-th code length decoding unit.

【符号の説明】[Explanation of symbols]

100 多重コード長復号装置 102 ストリームデータstream_data 104 table_id 106 先コード長復号手段 108 第mコード長復号手段 110 次コード長復号手段 190_m length_m 信号 198_(m−1) total_length_(m-1) 信号 198_m total_length_m 信号 202 ストリームデータstream_data 204 table_id 208 第mコード長復号手段 220 マスク生成器 225 マスクビット 230 擬似長復号器 235 擬似長信号 240 先頭ビット取出部 245 sifted-leadingビット 250 識別子取出部 255 識別子ビット 260 コード長復号器 290 マスク装置 290_m length_m 292 先長信号 295 加算器 298_(m−1) total_length_(m-1) 298_m total_length_m 302 ストリームデータstream_data 320 マスク生成器 325 マスクビット 336 ストリームデータの選択された1組 340 先頭ビット取出部 345 sifted-leading-bit 375 ストリーム反転器 378a ストリームデータ302からの隣接する反転
されたビットの組 378b ストリームデータ302からの隣接する非反
転ビットの組 380 ストリーム選択器 382 ストリームデータの提示された組 384 マスクゲート 386 ストリームスタンプ信号 388 先符号器 390 マスク装置 392 先長信号
Reference Signs List 100 multiplex code length decoding device 102 stream data stream_data 104 table_id 106 preceding code length decoding means 108 m-th code length decoding means 110 next code length decoding means 190_m length_m signal 198_ (m-1) total_length_ (m-1) signal 198_m total_length_m signal 202 stream data stream_data 204 table_id 208 m-th code length decoding means 220 mask generator 225 mask bit 230 pseudo-length decoder 235 pseudo-length signal 240 leading bit extraction unit 245 shifted-leading bit 250 identifier extraction unit 255 identifier bit 260 code length decoding Unit 290 mask device 290_m length_m 292 pre-length signal 295 adder 298_ (m-1) total_length_ (m-1) 298_m total_length_m 302 stream data stream_data 320 mask generator 325 mask bit 3 36 Selected set of stream data 340 Leading bit extractor 345 shifted-leading-bit 375 Stream inverter 378a Set of adjacent inverted bits from stream data 302 378b Adjacent non-inverted bits from stream data 302 Set 380 stream selector 382 presented set of stream data 384 mask gate 386 stream stamp signal 388 precoder 390 mask device 392 prelength signal

───────────────────────────────────────────────────── フロントページの続き Fターム(参考) 5C059 KK08 KK50 MA00 MC38 ME02 SS03 UA05 UA33 5J064 AA04 BA09 BB05 BC02 BC04 BC08 BD02  ──────────────────────────────────────────────────続 き Continued on the front page F term (reference) 5C059 KK08 KK50 MA00 MC38 ME02 SS03 UA05 UA33 5J064 AA04 BA09 BB05 BC02 BC04 BC08 BD02

Claims (5)

【特許請求の範囲】[Claims] 【請求項1】 単独クロックサイクル内のデータストリ
ームに含まれる多重コード語の長さを示すコード長信号
を生成し送信する装置であって、 入力データストリームに含まれる第(m−1)符号化デ
ータ値についてコード長復号処理を行い第(m−1)符
号化データ値のコード長を示す第(m−1)コード長信
号を送信する第(m−1)コード長復号器を含む先コー
ド長復号手段と、 入力データストリームに含まれる第m符号化データ値に
ついてコード長復号処理を行い第m符号化データ値のコ
ード長を示す第mコード長信号を送信する第mコード長
復号手段と、 入力データストリームに含まれる第m符号化データ値の
直後の次の符号化データ値についてコード長復号処理を
行い第(m+1)符号化データ値のコード長を示す第
(m+1)コード長信号を送信する第(m+1)コード
長復号器を含む次コード長復号手段とからなる装置。
1. An apparatus for generating and transmitting a code length signal indicating a length of a multiplex codeword included in a data stream in a single clock cycle, wherein the (m-1) th encoding included in an input data stream is provided. A preceding code including an (m-1) th code length decoder for performing a code length decoding process on the data value and transmitting an (m-1) th code length signal indicating the code length of the (m-1) th encoded data value Long decoding means, and m-th code length decoding means for performing a code length decoding process on the m-th encoded data value included in the input data stream and transmitting an m-th code length signal indicating the code length of the m-th encoded data value; The code length decoding process is performed on the next encoded data value immediately after the m-th encoded data value included in the input data stream, and the (m + 1) -th code value indicating the code length of the (m + 1) -th encoded data value The transmitting the over de length signal (m + 1) device comprising a next code length decoding means including code length decoder.
【請求項2】 請求項1に記載された装置にいて、前記
の第mコード長復号手段は、 第1符号化データ値から、現在コード長が復号されてい
る途中の前記の第m符号化データ値までの(第m符号化
データ値自体を含まない)範囲の、符号化データ値のな
かの、単独のクロックサイクル内で復号された、すべて
の前に復号されたコード長値の総和を示す信号に基づい
て、1組のマスクビットを生成し送信するマスク生成器
と、 前記の第m符号化データ値の最下位先頭ビットのビット
値を抽出し送信する先頭ビット取出手段と、 第m符号化データ値に含まれるすべてのビットの中で、
第m符号化データ値の最下位ビットと反対のビット値を
持つ、第1符号化データ値の最下位先頭ビットの固定ビ
ット位置に対して、最初のビットである第1ビットのビ
ット位置を示す先長信号を生成し送信するマスク手段
と、 前記の第m符号化データ値の中にあり同一の先頭ビット
値を有する隣接ビットの数を示す擬似長信号を生成し送
信する擬似長復号器と、 前記の第m符号化データ値から固定数のビットを生成
し、送信する識別子取出手段であって、この固定数のビ
ットは、前記の第m符号化データ値の最下位先頭ビット
位置より上位のビット位置を有し、前記の擬似長と復号
プロトコルに従って与えられる他の規準信号が前記の第
m符号化データ値の実際の一意のコード長を決定するの
に充分でない場合に、前記の第m符号化データ値の実際
の一意のコード長を決定する役割を有する識別子取出手
段と、 前記の擬似長復号器、識別子取出手段及び先頭ビット取
出手段から受け取られた前記の信号及び復号プロトコル
に従って提供される他の規準信号に基づいて、前記の第
m符号化データ値の実際のコード長を示すコード長信号
を生成し送信するコード長復号器とからなることを特徴
とする装置。
2. The apparatus according to claim 1, wherein said m-th code length decoding means is configured to decode said m-th code length currently being decoded from a first coded data value. The sum of all previously decoded code length values, decoded within a single clock cycle, of encoded data values, up to (but not including) the m-th encoded data value itself, A mask generator for generating and transmitting a set of mask bits based on the indicated signal; a first bit extracting means for extracting and transmitting the bit value of the least significant first bit of the m-th encoded data value; Of all the bits contained in the encoded data value,
For the fixed bit position of the least significant first bit of the first encoded data value having a bit value opposite to the least significant bit of the m-th encoded data value, the bit position of the first bit which is the first bit is indicated. Mask means for generating and transmitting a pre-length signal; a pseudo-length decoder for generating and transmitting a pseudo-length signal indicating the number of adjacent bits having the same leading bit value in the m-th encoded data value; An identifier extracting means for generating and transmitting a fixed number of bits from the m-th encoded data value, wherein the fixed number of bits are higher than the least significant first bit position of the m-th encoded data value , And the pseudo length and other reference signals provided according to the decoding protocol are not sufficient to determine the actual unique code length of the m-th encoded data value, m encoded data Identifier fetching means having a role in determining the actual unique code length of the pseudo-length decoder, identifier fetching means, and other criteria provided according to the decoding protocol and the signals received from the identifier fetching means. A code length decoder for generating and transmitting a code length signal indicating an actual code length of the m-th encoded data value based on the signal.
【請求項3】 請求項2に記載された装置において、前
記のマスク手段は、 前記の入力データストリームから、前記の第m符号化デ
ータ値に含まれるいくつかの又はすべてのビットのなか
の反転されたビットを含む1組の隣接する反転したビッ
トを生成するストリーム反転手段と、 前記の先頭ビット取出手段から受け取られた前記の信号
に基づいて、前記の入力データストリームの中の1組の
非反転ビットと、前記のストリーム反転手段から受け取
られた前記の入力データストリームの中の1組の反転ビ
ットとの一方を選択し送信するストリーム選択手段と、 前記のストリーム選択手段から、前記の入力データスト
リームの中の1組の非反転ビットと、前記の入力データ
ストリームの中の1組の反転ビットとの一方を受け取る
1組のマスクゲートであって、前記の第1符号化データ
値から前記の第m符号化データ値までの(第m符号化デ
ータ値自体を含まない)範囲のすべての符号化データ値
に含まれる隣接ビットをマスクし、かつ、他の残りのよ
り上位の有意の隣接ビットをマスクしないで送信するこ
とを可能にすることによりストリームスタンプ信号を生
成する1組のマスクゲートと、 前記の第1符号化データ値の長さが復号された単独のク
ロックサイクル内において復号された、すべての前に復
号されたコード長値と、前記の第m符号化データ値の前
記の擬似長との和を表わす先長信号を、前記のストリー
ムスタンプ信号に見出される隣接する同一の先頭ビット
の数を示すことにより生成し送信する先符号器とからな
ることを特徴とする装置。
3. The apparatus according to claim 2, wherein said masking means comprises: inverting from the input data stream some or all bits contained in the m-th encoded data value. Stream inverting means for generating a set of adjacent inverted bits including the extracted bits, and a set of non-inverted bits in the input data stream based on the signal received from the leading bit extracting means. Stream selecting means for selecting and transmitting one of an inverted bit and a set of inverted bits in the input data stream received from the stream inverting means; and the input data from the stream selecting means. A set of mask gates that receive one of a set of non-inverted bits in the stream and a set of inverted bits in the input data stream. Adjacent bits included in all encoded data values in a range from the first encoded data value to the m-th encoded data value (not including the m-th encoded data value itself). And a set of mask gates for generating a stream stamp signal by masking and transmitting the other remaining higher significant bits unmasked; said first encoded data A forward length representing the sum of all previously decoded code length values decoded in a single clock cycle in which the value length is decoded, and the pseudo length of the m-th encoded data value. An apparatus for generating and transmitting a signal by indicating the number of adjacent identical leading bits found in said stream stamp signal.
【請求項4】 単独クロックサイクル内の入力データス
トリームに含まれる第m符号化データ値のコード長を決
定する方法であって、 第1符号化データ値から、現在コード長が復号されてい
る途中の前記の第m符号化データ値までの(第m符号化
データ値自体を含まない)範囲の、符号化データ値のな
かの、単独のクロックサイクル内に復号された、すべて
の前に復号されたコード長値の総和を示す信号に基づい
て、1組のビットを生成して送信するステップと、 前記の第m復号値の最下位先頭ビットのビット値を決定
するステップと、 第m符号化データ値に含まれるすべてのビットの中で、
第m符号化データ値の最下位ビットと反対のビット値を
持つ、第1符号化データ値の最下位先頭ビットの固定ビ
ット位置に対して、最初のビットである第1ビットのビ
ット位置を示すストリームスタンプ信号を生成して送信
するステップと、 前記の第m符号化データ値の中にあり同じ先頭ビット値
を有する隣接先頭ビットの数を示す信号を生成して送信
するステップと、 前記の第m符号化データ値の最下位先頭ビット位置より
上位の有意のビット位置を有し、前記の擬似長と復号プ
ロトコルに従って与えられる他の規準信号が前記の第m
符号化データ値の実際の一意のコード長を決定するのに
充分でない場合に、前記の第m符号化データ値の実際の
一意のコード長を決定する役割を有する固定数のビット
を、前記の第m符号化データ値から抽出するステップ
と、 前記の擬似長信号及び復号プロトコルに従って提供され
る他の規準信号に基づいて、前記の第m符号化データ値
の実際のコード長を示すコード長信号を生成し送信する
ステップとからなる方法。
4. A method for determining a code length of an m-th encoded data value included in an input data stream within a single clock cycle, wherein the current code length is being decoded from a first encoded data value. Of the encoded data values, up to (but not including) the m-th encoded data value, decoded within a single clock cycle, Generating and transmitting a set of bits based on a signal indicating the sum of the calculated code length values; determining the bit value of the least significant first bit of the m-th decoded value; Of all the bits in the data value,
For the fixed bit position of the least significant first bit of the first encoded data value having a bit value opposite to the least significant bit of the m-th encoded data value, the bit position of the first bit that is the first bit is indicated Generating and transmitting a stream stamp signal; generating and transmitting a signal indicating the number of adjacent leading bits in the m-th encoded data value having the same leading bit value; m has a significant bit position higher than the least significant first bit position of the encoded data value, and another reference signal provided according to the pseudo length and the decoding protocol is the m-th encoded data value.
If the actual unique code length of the encoded data value is not sufficient to determine the actual unique code length of the m-th encoded data value, the fixed number of bits that serve to determine the actual unique code length of the m-th encoded data value are Extracting from the m-th encoded data value; and a code length signal indicating an actual code length of the m-th encoded data value based on the pseudo-length signal and other reference signals provided according to a decoding protocol. Generating and transmitting the.
【請求項5】 請求項4に記載された方法において、先
長信号を決定する前記のステップが、 前記の入力データストリームから、前記の第m符号化デ
ータ値に含まれるビットを含む1組の反転した隣接ビッ
トを生成するステップと、 前記の第m符号化データ値の最下位先頭ビットの前記の
ビット値に基づいて、前記の入力データストリームの中
の1組の非反転ビットと、前記の入力データストリーム
の中の1組の反転ビットとの一方を選択して送信するス
テップと、 前記の第1符号化データ値から前記の第m符号化データ
値までの(第m符号化データ値自体を含まない)範囲の
1以上の符号化データ値に関連する前記の隣接ビットを
マスクするステップと、 第1符号化データ値から前記の第m符号化データ値まで
の(第m符号化データ値自体を含まない)範囲の1以上
の符号化データ値に関連するすべてのビットの数と同じ
数の同一ビット値の1組の隣接する先頭ビットと、第m
符号化データ値の隣接する同一のより下位の有意の先頭
ビットとからなるストリームスタンプ信号を形成し送信
するステップと、 前記の第1符号化データ値の長さが復号された単独のク
ロックサイクル内において復号された、すべての前に復
号されたコード長値と、前記の第m符号化データ値の前
記の擬似長との和を表わす先長信号を、前記のストリー
ムスタンプ信号に見出される隣接する同一の先頭ビット
の数を示すことにより生成し送信するステップとからな
ることを特徴とする方法。
5. The method of claim 4, wherein said step of determining a pre-length signal comprises: a set of bits from said input data stream comprising bits contained in said m-th encoded data value. Generating an inverted adjacent bit; and a set of non-inverted bits in the input data stream based on the bit value of the least significant bit of the m-th encoded data value; Selecting and transmitting one of the set of inverted bits in the input data stream; and selecting from the first encoded data value to the m-th encoded data value (the m-th encoded data value itself). Masking said adjacent bits associated with one or more encoded data values in a range (not including), from said first encoded data value to said m-th encoded data value (m-th encoded data value) Self A first bit set of the adjacent one or more identical bit values equal in number to the number of all the bits associated with the encoded data values that do not) ranges include, the m
Forming and transmitting a stream stamp signal consisting of adjacent identical lower significant bits of the encoded data value; and within a single clock cycle in which the length of said first encoded data value is decoded. The preceding length signal representing the sum of all the previously decoded code length values decoded at and the pseudo length of the m-th encoded data value, with the adjacent length found in the stream stamp signal Generating and transmitting by indicating the number of identical leading bits.
JP2000401907A 2000-12-28 2000-12-28 Apparatus and method for decoding multiplexed contiguous variable code length per clock cycle Pending JP2002204171A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000401907A JP2002204171A (en) 2000-12-28 2000-12-28 Apparatus and method for decoding multiplexed contiguous variable code length per clock cycle

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000401907A JP2002204171A (en) 2000-12-28 2000-12-28 Apparatus and method for decoding multiplexed contiguous variable code length per clock cycle

Publications (1)

Publication Number Publication Date
JP2002204171A true JP2002204171A (en) 2002-07-19

Family

ID=18866279

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000401907A Pending JP2002204171A (en) 2000-12-28 2000-12-28 Apparatus and method for decoding multiplexed contiguous variable code length per clock cycle

Country Status (1)

Country Link
JP (1) JP2002204171A (en)

Similar Documents

Publication Publication Date Title
US6008745A (en) Variable length decoding using lookup tables
CA2091815C (en) Variable length code word decoder for use in digital communication systems
US5654702A (en) Syntax-based arithmetic coding for low bit rate videophone
JP4540585B2 (en) Encoding device and decoding device
KR101208233B1 (en) Two step arithmetic decoding with conversion into an intermediate format
US6215424B1 (en) System for variable length codeword processing suitable for video and other applications
KR20050067349A (en) A variable length coding apparatus and a variable length coding method
JPH08111867A (en) Coding method and decoding method for dynamic image
JP2010278668A (en) Coding apparatus and method, and decoding apparatus and method
KR100470251B1 (en) Variable length decoder
JP2001308715A (en) Variable length encoder and variable length decoder
KR100203266B1 (en) A contour decoding apparatus
KR100450753B1 (en) Programmable variable length decoder including interface of CPU processor
US6020835A (en) Code decoding apparatus
JP2002204171A (en) Apparatus and method for decoding multiplexed contiguous variable code length per clock cycle
JPH0946237A (en) Apparatus for coding and partitioning variable-length code
KR0154011B1 (en) Variable length decoder
US8421655B2 (en) Apparatus for parallel entropy encoding and decoding
US5619200A (en) Code table reduction apparatus for variable length decoder
JP2638424B2 (en) Variable length decoding device
Park et al. Area efficient fast Huffman decoder for multimedia applications
KR100396173B1 (en) Variable length decoder
KR100304872B1 (en) Variable length code decoder
KR100195717B1 (en) A variable length decoder
JPH07107441A (en) Video signal transmission/reception equipment