JP3533339B2 - Decoding device, decoding method, and program recording medium - Google Patents
Decoding device, decoding method, and program recording mediumInfo
- Publication number
- JP3533339B2 JP3533339B2 JP10926499A JP10926499A JP3533339B2 JP 3533339 B2 JP3533339 B2 JP 3533339B2 JP 10926499 A JP10926499 A JP 10926499A JP 10926499 A JP10926499 A JP 10926499A JP 3533339 B2 JP3533339 B2 JP 3533339B2
- Authority
- JP
- Japan
- Prior art keywords
- code
- length
- decoded value
- bit
- calculation parameter
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
【0001】[0001]
【発明の属する技術分野】この発明は、ハフマン符号等
の可変長符号を復号化する復号化装置および復号化方
法、並びに、復号化プログラムが記録されたプログラム
記録媒体に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a decoding device and a decoding method for decoding a variable length code such as a Huffman code, and a program recording medium having a decoding program recorded therein.
【0002】[0002]
【従来の技術】ハフマン符号等の可変長符号を復号化す
る方法としては、大きく分けて3つの方法がある。第1
の方法は、可変長符号の先頭ビットから1ビット毎に、
2進木によって目的とする可変長符号を決定する方法で
ある。また、第2の方法は、可変長符号をビット数と共
にテーブル化し、このテ―ブルを順次比較する方法であ
る。また、第3の方法は、可変長符号そのものを最大ビ
ット長分の大きさを有するテーブルにテーブル化し、こ
のテーブルを検索する方法である。2. Description of the Related Art There are roughly three methods for decoding variable length codes such as Huffman codes. First
The method of is, every 1 bit from the first bit of the variable length code,
This is a method of determining a target variable length code by a binary tree. The second method is to make a table of variable-length codes together with the number of bits and compare these tables sequentially. The third method is a method of converting the variable length code itself into a table having a size corresponding to the maximum bit length and searching this table.
【0003】上記第1の方法では、1ビット毎に比較す
るので、1つの可変長符号を復号化するのに長い処理時
間を必要とする。また、第2の方法では、最悪の場合、
総てのテーブルを比較しなければ復号化できず、長い処
理時間を必要とする。また、第3の方法では、一度のテ
ーブル検索で処理することができ、非常に処理時間が少
なくて済むという利点がある。ところが、可変長符号の
最大ビット長が大きい場合には、大きな容量のメモリが
必要である。In the first method, since the comparison is made bit by bit, it takes a long processing time to decode one variable length code. In the worst case, the second method
It cannot be decrypted without comparing all the tables, which requires a long processing time. In addition, the third method has an advantage that processing can be performed by one table search and the processing time can be extremely short. However, when the maximum bit length of the variable length code is large, a large capacity memory is required.
【0004】そこで、上述の欠点を解決するために、上
記第1の方法と第3の方法とを組み合わせて、可変長符
号化されたデータを復号化する際の可変長符号のサーチ
を高速且つ少ない容量のテーブルで行うために、特開平
7−107303号公報に開示されているような「ハフ
マン符号の復号化方法」が提案されている。In order to solve the above-mentioned drawbacks, therefore, the first method and the third method are combined to search the variable-length code at high speed when decoding the variable-length coded data. In order to carry out with a table having a small capacity, a "decoding method of Huffman code" as disclosed in Japanese Patent Application Laid-Open No. 7-107303 has been proposed.
【0005】この「ハフマン符号の復号化方法」において
は、ハフマン符号を、符号長が8ビットまでの第1グル
ープと、9ビットから12ビットまでの第2グループ
と、13ビット以上の第3グループとに分ける。そし
て、各グループ毎に、ハフマン符号をアドレスとし、そ
のアドレスに対応付けて符号長および有効係数を示した
データを書き込むことによって、第1テーブルから第3
テーブルまでのテーブルを予め作成しておく。そして、
復号化時には、第1テーブルから第3テーブルまでを参
照して、ハフマン符号化されたデータの符号長および有
効係数を確定することによって、目的のハフマン符号を
復号化するのである。In the "decoding method of Huffman code", the Huffman code is composed of a first group having a code length of 8 bits, a second group having a code length of 9 bits to 12 bits, and a third group having a bit length of 13 bits or more. Divide into Then, for each group, the Huffman code is used as an address, and the data indicating the code length and the effective coefficient is written in association with the address.
Create the tables up to the table in advance. And
At the time of decoding, the target Huffman code is decoded by referring to the first to third tables to determine the code length and the effective coefficient of the Huffman-coded data.
【0006】また、同様に、可変長符号を復号する際
に、高速化を図ると共にサーチテーブル容量の増大に対
処するために、特開平9−246989号公報に開示さ
れているような「復号装置及びその方法」が提案されてい
る。Similarly, in order to speed up the decoding of a variable length code and to cope with an increase in the capacity of the search table, a "decoding device" disclosed in Japanese Patent Laid-Open No. 9-246989. And its method "have been proposed.
【0007】この「復号装置及びその方法」においては、
可変長符号に関してその最大ビット長以下である解析長
を解析長レジスタから選択し、ビット取出部によって抽
出された上記解析長分のビット列により生成されたアド
レスに基づいて、デコードRAMをアクセスする。この
処理を可変長符号の全ビットに関して終了するまで繰り
返し、最終的に復号値を得る。また、最終段階のデコー
ドRAMに対するアクセス時には、デコードエンド信号
に基づいて、取出ビット長コントローラにおいて解析長
を最低限に制限する。In this "decoding device and method",
An analysis length which is less than or equal to the maximum bit length of the variable length code is selected from the analysis length register, and the decoding RAM is accessed based on the address generated by the bit string for the above analysis length extracted by the bit extraction unit. This process is repeated until all the bits of the variable length code are completed, and finally the decoded value is obtained. Further, when accessing the decoding RAM at the final stage, the fetch bit length controller limits the analysis length to the minimum based on the decoding end signal.
【0008】また、可変長符号を復号化する際に、複数
の変換テーブルの容量全体を低減してメモリ容量を削減
するために、特開平9−298470号公報に開示され
ているような「符号復号化装置」が提案されている。Further, when decoding a variable-length code, in order to reduce the overall capacity of a plurality of conversion tables to reduce the memory capacity, the "code" disclosed in Japanese Patent Laid-Open No. 9-298470. A "decoding device" has been proposed.
【0009】この「符号復号化装置」においては、複数の
変換テーブルの中から同一の符号に関して、同一の変換
結果が設定されている共通部分をまとめた共通変換テー
ブルと、共通部分が除かれた各復号項目毎の個別変換テ
ーブルとを設けている。そして、符号復号部は、共通変
換テーブルを参照して符号を復号化できない場合は、各
復号化項目毎の個別変換テーブルを参照して復号化を行
う。このように、複数の変換テーブルに同―のデータが
重複して格納されるような無駄を無くすことによって、
複数の変換テーブルの容量全体を低減している。In this "code decoding device", a common conversion table in which common parts in which the same conversion result is set for the same code among a plurality of conversion tables is put together and the common part is excluded. An individual conversion table for each decryption item is provided. Then, when the code decoding unit cannot decode the code by referring to the common conversion table, the code decoding unit performs decoding by referring to the individual conversion table for each decoding item. In this way, by eliminating the waste of storing the same data in multiple conversion tables in duplicate,
The overall capacity of multiple conversion tables is reduced.
【0010】[0010]
【発明が解決しようとする課題】しかしながら、上記特
開平7−107303号公報に開示された「ハフマン符
号の復号化方法」においては、以下のような問題があ
る。すなわち、第1から第3の3つのテーブルを参照す
る際に、ハフマン符号が8ビット以下であって第1テー
ブルの参照によって決定したか否かの判定、および、ハ
フマン符号が9ビットから12ビットであって第2テー
ブルの参照によって決定したか否かの判定を行う必要が
ある。そのために、復号化処理を行う場合に、平均的に
は処理量は削減されているにも拘わらず、最悪の場合を
考えて処理時間を見積もらなければならず、処理時間を
正確に見積ることが難しい。However, the "decoding method of Huffman code" disclosed in Japanese Patent Laid-Open No. 7-107303 has the following problems. That is, when referring to the first to third three tables, it is determined whether the Huffman code is 8 bits or less and is determined by referring to the first table, and the Huffman code is 9 bits to 12 bits. Therefore, it is necessary to judge whether or not it is determined by referring to the second table. Therefore, when performing the decoding process, the processing time must be estimated in consideration of the worst case even though the processing amount is reduced on average, and the processing time can be accurately estimated. difficult.
【0011】また、特開平9−246989号公報に開
示された「復号装置及びその方法」においては以下のよう
な問題がある。すなわち、終了検知手段(比較器)を有し
て、上記特開平7−107303号公報に開示された
「ハフマン符号の復号化方法」の場合と同様に、読み込ん
だ可変符号における復号化されたビット長とハフマン符
号のコード長とを比較して復号終了を検知して上記デコ
ードエンド信号を発生する必要がある。Further, the "decoding device and method thereof" disclosed in Japanese Patent Laid-Open No. 9-246989 has the following problems. That is, as in the case of the “decoding method of Huffman code” disclosed in Japanese Patent Laid-Open No. 7-107303, the decoded bit in the read variable code is provided with the end detecting means (comparator). It is necessary to compare the length and the code length of the Huffman code to detect the end of decoding and generate the decode end signal.
【0012】また、特開平9−298470号公報に開
示された「符号復号化装置」においては、以下のような問
題がある。すなわち、入力された可変長符号が共通テー
ブル上にあるか否かの判定を行う必要があるために、処
理量が多くなってしまう。さらに、変換テーブルに何ら
かの処理を加えない場合は少なく、共通変換テーブルに
まとめられる部分は少ない。したがって、メモリ容量の
削減はあまり期待できない。The "code decoding device" disclosed in Japanese Patent Laid-Open No. 9-298470 has the following problems. That is, since it is necessary to determine whether or not the input variable length code is on the common table, the processing amount increases. Furthermore, it is rare that some processing is not added to the conversion table, and there are few parts that are put together in the common conversion table. Therefore, reduction in memory capacity cannot be expected so much.
【0013】上述のように、何れの場合にも、復号化処
理には判定を行う必要があり、復号化処理アルゴリズム
には判定に伴う分岐命令が存在する。ところで、LSI
(大規模集積回路)やCPU(中央演算処理装置)の処理技
術の進展に伴って、1クロックに多くの命令が実行でき
るようになると共に、上記CPUのクロック速度向上に
伴って命令実行時のパイプライン化が進んできている。
そのために、上記判定に伴う分岐命令によるパイプライ
ンの再読み込みのペナルティが大きくなり、分岐条件の
ないアルゴリズムの方が速く実行可能になってきてい
る。As described above, in any case, it is necessary to make a judgment in the decoding process, and the decoding process algorithm has a branch instruction associated with the judgment. By the way, LSI
With the progress of processing technology of (large-scale integrated circuit) and CPU (central processing unit), many instructions can be executed in one clock, and as the clock speed of the CPU is increased, Pipelining is progressing.
Therefore, the penalty of the pipeline reloading due to the branch instruction accompanying the above determination becomes large, and the algorithm having no branch condition can be executed faster.
【0014】そこで、上記各従来の復号化装置あるいは
復号化方法に対して、分岐条件のない復号化処理アルゴ
リズムを適用しようとすれば、上述のテーブルやデコー
ドRAMや変換テーブルのメモリ容量が大きくなってし
まう。したがって、サーチテーブル容量を削減するとい
う当初の目的を達成できなくなるという問題がある。Therefore, if an attempt is made to apply a decoding processing algorithm having no branching condition to each of the conventional decoding devices or decoding methods described above, the memory capacity of the above-mentioned table, decode RAM and conversion table becomes large. Will end up. Therefore, there is a problem that the original purpose of reducing the search table capacity cannot be achieved.
【0015】そこで、この発明の目的は、サーチテーブ
ル容量の削減を図りつつ、分岐条件のない復号化処理ア
ルゴリズムを適用して高速に可変長符号を復号化できる
復号化装置及び復号化方法、並びに、プログラム記録媒
体を提供することにある。Therefore, an object of the present invention is to provide a decoding device and a decoding method capable of decoding a variable length code at high speed by applying a decoding processing algorithm without a branch condition while reducing the search table capacity. , Providing a program recording medium.
【0016】[0016]
【課題を解決するための手段】上記目的を達成するた
め、請求項1に係る発明の復号化装置は、可変長符号に
おける固定ビット長である最大ビット長のビット列を入
力として,入力ビット列を所定ビット数毎に2以上のビ
ット列に分割する分割手段と、上記分割手段によって分
割される各ビット列に対応したテーブルが格納されたテ
ーブル格納手段と、上記分割手段によって分割された各
ビット列をインデックスとして上記テーブルを参照し,
符号長あるいは復号値を算出するためのパラメータを得
るルックアップ手段と、上記ルックアップ手段で得られ
たパラメータに基づいて,上記符号長あるいは復号値を
演算する演算手段を備えたことを特徴とする。In order to achieve the above object, the decoding device of the invention according to claim 1 uses a variable length code .
A bit string having a maximum bit length that is a fixed bit length in the input is input, and a dividing unit that divides the input bit string into two or more bit strings for each predetermined number of bits and a table corresponding to each bit string that is divided by the dividing unit are stored. Table storing means, and referring to the table with each bit string divided by the dividing means as an index,
A lookup means for obtaining a parameter for calculating the code length or the decoded value, and a computing means for computing the code length or the decoded value based on the parameter obtained by the lookup means. .
【0017】上記構成によれば、分割手段によって入力
ビット列が分割されて成る所定ビット数毎のビット列が
ルックアップ手段に入力されると、上記ルックアップ手
段によって、入力されたビット列をインデックスとして
テーブルが参照されて符号長あるいは復号値を得るため
のパラメータが得られる。そして、このパラメータが演
算手段に入力されると、上記演算手段によって、上記入
力パラメータに基づいて可変長符号の符号長あるいは復
号値が演算される。According to the above configuration, when the bit string for each predetermined number of bits obtained by dividing the input bit string by the dividing unit is input to the lookup unit, the lookup unit creates a table using the input bit sequence as an index. A parameter for obtaining the code length or the decoded value is obtained by referring to the code length. When this parameter is input to the calculating means, the calculating means calculates the code length or the decoded value of the variable length code based on the input parameter.
【0018】このように、上記分割手段,ルックアップ
手段および演算手段の各処理手段によって、互いに他の
処理手段の処理が終了したかを判定することなく、前段
の処理手段からの処理結果が入力されると自らの処理を
実行して処理結果を後段の処理手段へ出力して順次処理
が実行される。したがって、分岐条件のないアルゴリズ
ムが適用されて、復号化処理が高速に実行される。As described above, the processing results from the preceding processing means are input without the processing means of the dividing means, the lookup means, and the computing means determining whether or not the processing of the other processing means has ended. Then, the processing is executed by itself, the processing result is output to the processing means in the subsequent stage, and the processing is sequentially executed. Therefore, the algorithm having no branch condition is applied, and the decoding process is executed at high speed.
【0019】また、請求項2に係る発明は、請求項1に
係る発明の復号化装置において、上記テーブルには,符
号長算出用の符号長算出パラメータあるいは復号値算出
用の復号値算出パラメータが登録されており、上記演算
手段は,上記ルックアップ手段から出力される上記符号
長算出パラメータあるいは復号値算出パラメータに基づ
いて,上記符号長あるいは復号値を演算することを特徴
としている。The invention according to claim 2 is the decoding apparatus of the invention according to claim 1, wherein the table contains a code length calculation parameter for calculating a code length or a decoded value calculation parameter for calculating a decoded value. The registered arithmetic means is characterized in that the arithmetic means calculates the code length or the decoded value based on the code length calculation parameter or the decoded value calculation parameter output from the lookup means.
【0020】上記構成によれば、上記テーブルに登録さ
れた符号長算出パラメータあるいは復号値算出パラメー
タに基づく上記演算手段による演算によって、上記可変
長符号の符号長あるいは復号値が容易に求められる。According to the above construction, the code length or the decoded value of the variable length code can be easily obtained by the calculation by the calculating means based on the code length calculation parameter or the decoded value calculation parameter registered in the table.
【0021】また、請求項3に係る発明の復号化装置
は、可変長符号における固定ビット長である最大ビット
長のビット列を入力として,入力ビット列を所定ビット
数毎に2以上のビット列に分割する分割手段と、符号番
号算出パラメータが登録されると共に,上記分割手段に
よって分割される各ビット列に対応した第1のテーブル
が格納された第1のテーブル格納手段と、上記分割手段
によって分割された各ビット列をインデックスとして上
記第1のテーブルを参照し,符号番号算出パラメータを
得る第1のルックアップ手段と、上記第1のルックアッ
プ手段で得られた上記符号番号算出パラメータに基づい
て符号番号を演算する演算手段と、上記可変長符号の符
号番号と符号長あるいは復号値とが対応付けられて登録
された第2のテーブルが格納された第2のテーブル格納
手段と、上記演算手段で得られた符号番号をインデック
スとして上記第2のテーブルを参照し,上記符号長ある
いは復号値を得る第2のルックアップ手段を備えたこと
を特徴としている。Further, the decoding device of the invention according to claim 3 receives the bit string of the maximum bit length which is a fixed bit length in the variable length code as an input, and divides the input bit string into two or more bit strings for every predetermined number of bits. The dividing means, the code number calculation parameter is registered, the first table storing means stores the first table corresponding to each bit string divided by the dividing means, and each of the divided by the dividing means. Referring to the first table a bit string as an index, calculating a first look-up means for obtaining a code number calculation parameter, the code number based on the code number calculation parameters obtained in the first look-up means second table and calculating means, and the code number and the code length or the decoded value of said variable length code is registered in association to the A second table storage means which is paid to the code number obtained by the calculating means by referring to the second table as an index, with a second look-up means for obtaining the code length or the decoded value Is characterized by.
【0022】上記構成によれば、分割手段によって入力
ビット列が分割されて成る所定ビット数毎のビット列が
第1のルックアップ手段に入力されると、上記第1のル
ックアップ手段によって、入力されたビット列をインデ
ックスとして第1のテーブルが参照されて符号番号算出
パラメータが得られる。そして、上記演算手段によっ
て、上記符号番号算出パラメータに基づいて符号番号が
演算される。そうすると、第2のルックアップ手段によ
って、上記符号番号をインデックスとして第2のテーブ
ルが参照されて可変長符号の符号長あるいは復号値が得
られる。According to the above construction, the bit string for each predetermined number of bits, which is formed by dividing the input bit string by the dividing means,
Is input to the first look-up means, by the first Le <br/> Kkuappu means, code number calculation parameter bit sequence input is being referred to the first table as an index is obtained. Then, the calculation means calculates the code number based on the code number calculation parameter. Then, the second lookup means refers to the second table using the code number as an index to obtain the code length or the decoded value of the variable length code.
【0023】このように、上記分割手段,第1のルック
アップ手段,演算手段及び第2のルックアップ手段の各
処理手段によって、互いに他の処理手段の処理が終了し
たかを判定することなく、前段の処理手段からの処理結
果が入力されると自らの処理を実行して処理結果を後段
の処理手段へ出力して順次処理が実行される。したがっ
て、分岐条件のないアルゴリズムが適用されて復号化処
理が高速に実行される。As described above, the processing means of the dividing means, the first look-up means, the computing means and the second look-up means do not need to determine whether the processing of the other processing means is completed. When the processing result from the processing means in the previous stage is input, the processing itself is executed, the processing result is output to the processing means in the subsequent stage, and the sequential processing is executed. Therefore, the algorithm having no branch condition is applied, and the decoding process is executed at high speed.
【0024】また、請求項4に係る発明は、請求項1あ
るいは請求項3に係る発明の復号化装置において、上記
分割手段によって分割される各ビット列に対応した複数
のテーブルを―つのテーブルに集約したことを特徴とし
ている。The invention according to claim 4 is, in the decoding device of the invention according to claim 1 or claim 3, aggregates a plurality of tables corresponding to each bit string divided by the dividing means into one table. It is characterized by having done.
【0025】上記構成によれば、請求項1に係る発明に
おけるルックアップ手段あるいは請求項3に係る発明に
おける第1のルックアップ手段によって、テーブル格納
手段あるいは第1のテーブル格納手段に格納された一つ
のテーブルのみが参照されて、上記各パラメータが得ら
れる。こうして、少ない容量のテーブルを用いて上記符
号長や復号値や符号番号を算出するためのパラメータが
得られる。According to the above configuration, the table storing means or the one stored in the first table storing means by the lookup means in the invention according to claim 1 or the first lookup means in the invention according to claim 3 Only one table is referenced to obtain each of the above parameters. In this way, the parameters for calculating the code length, the decoded value, and the code number are obtained by using the table having a small capacity.
【0026】また、請求項5に係る発明における固定ビ
ット長である復号化方法は、可変長符号の最大ビット長
のビット列を入力として,入力ビット列を所定ビット数
毎に2以上のビット列に分割するステップと、上記分割
された各ビット列をインデックスとして,符号長算出パ
ラメータあるいは復号値算出パラメータが登録されたテ
ーブルを参照して,上記符号長算出パラメータあるいは
復号値算出パラメータを得るステップと、上記得られた
各パラメータに基づいて,符号長あるいは復号値を演算
するステップを備えたことを特徴としている。Further, the fixed bi in the invention according to claim 5
The decoding method of the bit length is a step of dividing a bit string having a maximum bit length of a variable-length code into two or more bit strings each having a predetermined number of bits, and using each of the divided bit strings as an index. A step of obtaining the code length calculation parameter or the decoded value calculation parameter by referring to the table in which the code length calculation parameter or the decoded value calculation parameter is registered; and the code length or the decoded value based on each of the obtained parameters. Is characterized by including a step of calculating
【0027】上記構成によれば、請求項1に係る発明の
場合と同様に、入力ビット列を所定ビット数毎のビット
列に分割するステップ、上記分割されたビット列をイン
デックスとしてテーブルを参照してパラメータを得るス
テップ、および、上記得られた各パラメータに基づいて
符号長あるいは復号値を演算するステップの各ステップ
が、他のステップの終了を判定することなく、前段のス
テップからの処理結果が入力されると順次実行される。
したがって、分岐条件のないアルゴリズムが適用され
て、復号化処理が高速に実行される。According to the above configuration, as in the case of the first aspect of the invention, the step of dividing the input bit string into bit strings each having a predetermined number of bits, the divided bit string as an index and referring to the table to set the parameters. The processing result from the preceding step is input without determining the end of other steps in each step of obtaining and calculating the code length or the decoded value based on each of the obtained parameters. And is executed sequentially.
Therefore, the algorithm having no branch condition is applied, and the decoding process is executed at high speed.
【0028】また、請求項6に係る発明の復号化方法
は、可変長符号における固定ビット長である最大ビット
長のビット列を入力として,入力ビット列を所定ビット
数毎に2以上のビット列に分割するステップと、上記分
割された各ビット列をインデックスとして,符号番号算
出パラメータが登録された第1のテーブルを参照して上
記符号番号算出パラメータを得るステップと、上記得ら
れた符号番号算出パラメータに基づいて符号番号を演算
するステップと、上記演算された符号番号をインデック
スとして,上記符号番号と符号長あるいは復号値とが対
応付けられて登録された第2のテーブルを参照して,上
記符号長あるいは復号値を得るステップを備えたことを
特徴としている。Further, in the decoding method of the invention according to claim 6, a bit string having a maximum bit length which is a fixed bit length in a variable length code is input, and the input bit string is divided into two or more bit strings for every predetermined number of bits. A step of obtaining the code number calculation parameter by referring to a first table in which the code number calculation parameter is registered using the divided bit strings as indexes, and based on the obtained code number calculation parameter The step of calculating the code number and the second table in which the code number and the code length or the decoded value are registered in association with each other by using the calculated code number as an index It is characterized by having a step of obtaining a value.
【0029】上記構成によれば、請求項3に係る発明の
場合と同様に、入力ビット列を所定ビット数毎のビット
列に分割するステップ、上記分割されたビット列をイン
デックスとして第1のテーブルを参照してパラメータを
得るステップ、上記得られたパラメータに基づいて符号
番号を演算するステップ、および、上記演算された符号
番号をインデックスとして第2のテーブルを参照して上
記符号長あるいは復号値を得るステップの各ステップ
が、他のステップの終了を判定することなく、前段のス
テップからの処理結果が入力されると順次実行される。
したがって、分岐条件のないアルゴリズムが適用され
て、復号化処理が高速に実行される。According to the above structure, as in the case of the invention according to claim 3, the step of dividing the input bit string into bit strings each having a predetermined number of bits, and referring to the first table with the divided bit string as an index . A step of obtaining a parameter, a step of calculating a code number based on the obtained parameter, and a step of obtaining the code length or the decoded value by referring to a second table using the calculated code number as an index . Each step is sequentially executed when the processing result from the preceding step is input without determining the end of other steps.
Therefore, the algorithm having no branch condition is applied, and the decoding process is executed at high speed.
【0030】また、請求項7に係る発明のプログラム記
録媒体は、コンピュータを、可変長符号における固定ビ
ット長である最大ビット長のビット列を入力として,入
力ビット列を所定ビット数毎に2以上のビット列に分割
する分割手段と、上記分割された各ビット列をインデッ
クスとして,符号長算出パラメータあるいは復号値算出
パラメータが登録されたテーブルを参照して,上記符号
長算出パラメータあるいは復号値算出パラメータを得る
ルックアップ手段と、上記得られた各パラメータに基づ
いて符号長あるいは復号値を演算する演算手段として機
能させる復号化処理プログラムが記録されたことを特徴
としている。According to a seventh aspect of the present invention, there is provided a program recording medium in which a computer is provided with a fixed code in a variable length code .
A bit string having the maximum bit length, which is the bit length, as an input, and dividing means for dividing the input bit string into two or more bit strings for each predetermined number of bits, and a code length calculation parameter or decoded value using each of the divided bit strings as an index. Look-up means for obtaining the above code length calculation parameter or decoded value calculation parameter by referring to a table in which calculation parameters are registered, and function as calculation means for calculating the code length or decoded value based on each of the obtained parameters It is characterized in that the decryption processing program is recorded.
【0031】上記構成によれば、請求項5に係る発明の
場合と同様に、入力ビット列を所定ビット数毎のビット
列に分割する処理、上記分割されたビット列をインデッ
クスとしてテーブルを参照してパラメータを得る処理、
および、上記得られた各パラメータに基づいて符号長あ
るいは復号値を演算する処理の各処理が、他の処理が終
了したかを判定することなく順次実行される。したがっ
て、分岐条件のないアルゴリズムが適用されて、復号化
処理が高速に実行される。According to the above configuration, similar to the case of the invention according to claim 5, a process of dividing the input bit string into bit strings of a predetermined number of bits, and referring to the table with the divided bit string as an index, a parameter is set. Processing to get,
Then, the respective processes of the process of calculating the code length or the decoded value based on the obtained respective parameters are sequentially executed without determining whether other processes are completed. Therefore, the algorithm having no branch condition is applied, and the decoding process is executed at high speed.
【0032】また、請求項8に係る発明のプログラム記
録媒体は、コンピュータを、可変長符号における固定ビ
ット長である最大ビット長のビット列を入力として,入
力ビット列を所定ビット数毎に2以上のビット列に分割
する分割手段と、上記分割された各ビット列をインデッ
クスとして,符号番号算出パラメータが登録された第1
のテーブルを参照して,上記符号番号算出パラメータを
得る第1のルックアップ手段と、上記得られた符号番号
算出パラメータに基づいて符号番号を演算する演算手段
と、上記演算された符号番号をインデックスとして,上
記符号番号と符号長あるいは復号値とが対応付けられて
登録された第2のテーブルを参照して,上記符号長ある
いは復号値を得る第2のルックアップ手段として機能さ
せる復号化処理プログラムが記録されたことを特徴とし
ている。A program recording medium according to an eighth aspect of the present invention allows a computer to execute a fixed view in a variable length code .
Inputting a bit string having the maximum bit length, which is the bit length, and dividing means for dividing the input bit string into two or more bit strings for each predetermined number of bits, and a code number calculation parameter is registered using each of the divided bit strings as an index. First
Referring to the tables, indexes and first look-up means for obtaining the code number calculation parameters, and calculation means for calculating the code number based on the obtained code number calculation parameter, the calculated code number As a reference, a decoding processing program which functions as a second lookup means for obtaining the code length or the decoded value by referring to a second table in which the code number and the code length or the decoded value are associated with each other and registered. Is recorded.
【0033】上記構成によれば、請求項6に係る発明の
場合と同様に、入力ビット列を所定ビット数毎のビット
列に分割する処理、上記分割されたビット列をインデッ
クスとして第1のテーブルを参照してパラメータを得る
処理、上記得られたパラメータに基づいて符号番号を演
算する処理、および、上記符号番号をインデックスとし
て第2のテーブルを参照して上記符号長あるいは復号値
を得る処理の各処理が、他の処理が終了したかを判定す
ることなく順次実行される。したがって、分岐条件のな
いアルゴリズムが適用されて、復号化処理が高速に実行
される。According to the above configuration, similar to the case of the invention according to claim 6, a process of dividing the input bit string into bit strings of a predetermined number of bits, and referring to the first table with the divided bit string as an index . To obtain a parameter, to calculate a code number based on the obtained parameter, and to obtain a code length or a decoded value by referring to a second table using the code number as an index . , Are sequentially executed without determining whether other processing is completed. Therefore, the algorithm having no branch condition is applied, and the decoding process is executed at high speed.
【0034】[0034]
【発明の実施の形態】以下、この発明を図示の実施の形
態により詳細に説明する。
<第1実施の形態>図1は、本実施の形態の復号化装置
におけるブロック図である。本実施の形態における復号
化装置は可変長符号の復号化装置であり、従来の復号化
装置に比して、入力された可変長符号に対する復号化が
終了したか否かを判定する判定手段が無く、代わりに演
算器8が付加されている。以下、詳細に説明する。BEST MODE FOR CARRYING OUT THE INVENTION The present invention will be described in detail below with reference to the embodiments shown in the drawings. <First Embodiment> FIG. 1 is a block diagram of a decoding apparatus according to the present embodiment. The decoding device according to the present embodiment is a variable-length code decoding device, and a judgment means for judging whether or not the decoding for the input variable-length code is completed is provided as compared with the conventional decoding device. There is not, but the arithmetic unit 8 is added instead. The details will be described below.
【0035】分割器1には、本復号化装置が搭載された
システムから、可変長符号における最大符号長のビット
列が入力される。ここでは、一例として表1に示すよう
な可変長符号を考える。A bit string having the maximum code length in the variable length code is input to the divider 1 from the system in which the present decoding device is installed. Here, a variable length code as shown in Table 1 is considered as an example.
【表1】
上記表1における「符号番号」は、各可変長符号に一対一
に対応するように付けられた番号であり、任意の番号で
差し支えない。尚、表1に示す可変長符号の場合は最大
符号長は6ビットであるから、分割器1には6ビットの
ビット列が入力される。[Table 1] The “code number” in Table 1 above is a number assigned to each variable length code so as to correspond one-to-one, and may be any number. In the case of the variable-length codes shown in Table 1, the maximum code length is 6 bits, so a 6-bit bit string is input to the divider 1.
【0036】そうすると、上記分割器1は、この入力さ
れた6ビットのビット列を、上位2ビット,中位2ビッ
ト,下位2ビットの3つに分割する。そして、上記上位
2ビットを第1ルックアップ部3に出力し、中位2ビッ
トを第2ルックアップ部5に出力し、下位2ビットを第
3ルックアップ部7に出力する。尚、各ルックアップ部
に出力するビット数は1ビット以上の任意のビット数で
よく、ルックアップ部の数は入力される可変長符号の最
大符号長と上記各ルックアップ部に出力するビット数と
から適宜設定すればよい。Then, the divider 1 divides the input 6-bit bit string into three bits of upper 2 bits, middle 2 bits, and lower 2 bits. Then, the upper 2 bits are output to the first lookup unit 3, the middle 2 bits are output to the second lookup unit 5, and the lower 2 bits are output to the third lookup unit 7. The number of bits output to each lookup unit may be an arbitrary number of bits of 1 bit or more. The number of lookup units is the maximum code length of the variable length code input and the number of bits output to each of the lookup units. Therefore, it may be set appropriately.
【0037】上記第1ルックアップ部3は、上記入力さ
れた上位2ビットのビット列をアドレスとして、第1テ
ーブル格納部2に格納された第1テーブルを引き、第1
テーブルにおける表アドレス欄に登録されている第2テ
ーブルへのアドレス(表アドレス)と、符号長算出パラメ
ータ欄に登録されている符号長算出パラメータと、復号
値算出パラメータ欄に登録されている復号値算出パラメ
ータを読み出す。表2に、上記第1テーブルの一例を示
す。The first lookup unit 3 looks up the first table stored in the first table storage unit 2 by using the input bit string of the upper 2 bits as an address,
The address (table address) to the second table registered in the table address column of the table, the code length calculation parameter registered in the code length calculation parameter column, and the decoded value registered in the decoded value calculation parameter column Read the calculated parameters. Table 2 shows an example of the first table.
【表2】
そして、上記表アドレスを第2ルックアップ部5へ出力
し、符号長算出パラメータおよび復号値算出パラメータ
を演算器8に出力する。[Table 2] Then, the table address is output to the second lookup unit 5, and the code length calculation parameter and the decoded value calculation parameter are output to the calculator 8.
【0038】上記第2ルックアップ部5は、上記第1ル
ックアップ部3から入力された第2テーブルへの表アド
レスと分割器1から入力された中位2ビットのビット列
とをインデックスとして第2テーブルのアドレスを求
め、第2テーブル格納部4に格納された第2テーブルを
引く。そして、第2テーブルにおける表アドレス欄に登
録されている第3テーブルへの表アドレスと、符号長算
出パラメータ欄に登録されている符号長算出パラメータ
と、復号値算出パラメータ欄に登録されている復号値算
出パラメータを読み出す。表3に、上記第2テーブルの
一例を示す。The second lookup unit 5 uses the table address for the second table input from the first lookup unit 3 and the middle 2-bit bit string input from the divider 1 as an index to generate a second index. The address of the table is obtained, and the second table stored in the second table storage unit 4 is drawn. Then, the table address to the third table registered in the table address column in the second table, the code length calculation parameter registered in the code length calculation parameter column, and the decoding registered in the decoded value calculation parameter column Read the value calculation parameters. Table 3 shows an example of the second table.
【表3】
そして、上記表アドレスを第3ルックアップ部7へ出力
し、符号長算出パラメータおよび復号値算出パラメータ
を演算器8に出力する。[Table 3] Then, the table address is output to the third lookup unit 7, and the code length calculation parameter and the decoded value calculation parameter are output to the calculator 8.
【0039】上記第3ルックアップ部7は、上記第2ル
ックアップ部5から入力された第3テーブルへの表アド
レスと分割器1から入力された下位2ビットのビット列
とをインデックスとして第3テーブルのアドレスを求
め、第3テーブル格納部6に格納された第3テーブルを
引く。そして、第3テーブルにおける符号長算出パラメ
ータ欄に登録されている符号長算出パラメータと、復号
値算出パラメータ欄に登録されている復号値算出パラメ
ータを読み出す。表4に、上記第3テーブルの一例を示
す。The third look-up unit 7 uses the table address for the third table input from the second look-up unit 5 and the bit string of the lower 2 bits input from the divider 1 as an index for the third table. Is obtained, and the third table stored in the third table storage unit 6 is pulled. Then, the code length calculation parameter registered in the code length calculation parameter column in the third table and the decoded value calculation parameter registered in the decoded value calculation parameter column are read. Table 4 shows an example of the third table.
【表4】
そして、上記符号長算出パラメータおよび復号値算出パ
ラメータを演算器8に出力する。[Table 4] Then, the code length calculation parameter and the decoded value calculation parameter are output to the calculator 8.
【0040】上記演算器8は、上記第1,第2,第3ルッ
クアップ部3,5,7から入力される符号長算出パラメー
タと復号値算出パラメータとに基づいて、可変長符号の
符号長と復号値とを演算し、演算結果を出力する。The arithmetic unit 8 calculates the code length of the variable length code based on the code length calculation parameter and the decoded value calculation parameter input from the first, second and third look-up units 3, 5, and 7. And the decoded value are calculated, and the calculation result is output.
【0041】ここで、本実施の形態においては、第1ル
ックアップ部3,第2ルックアップ部5,第3ルックアッ
プ7および各ルックアップ部に対応する第1テーブル〜
第3テーブルの3つのテーブルは、説明の都合上、上
位,中位,下位の3段の構成にしているが、上述したよう
に、2段以上の構成であれば特に段数を限定するもので
はない。Here, in the present embodiment, the first lookup unit 3, the second lookup unit 5, the third lookup unit 7 and the first table corresponding to each lookup unit
For convenience of explanation, the three tables of the third table have a configuration of upper, middle, and lower three stages, but as described above, if the configuration has two or more stages, the number of stages is not particularly limited. Absent.
【0042】図2は、図1における分割器1,第1ルッ
クアップ部3,第2ルックアップ部5,第3ルックアップ
部7および演算器8によって実行される復号化処理の概
略手順を示すフローチャートである。以下、図2に従っ
て、本実施の形態における復号化処理手順について説明
する。FIG. 2 shows a schematic procedure of the decoding process executed by the divider 1, the first lookup unit 3, the second lookup unit 5, the third lookup unit 7 and the calculator 8 in FIG. It is a flowchart. Hereinafter, the decoding processing procedure according to the present embodiment will be described with reference to FIG.
【0043】先ず、ステップS1で、上記分割器1によ
って、入力された最大符号長(表1に示す可変長符号の
場合には6ビット)のビット列が、上位2ビット,中位2
ビット,下位2ビットの3つに分割される。そして、上
位2ビットが第1ルックアップ部3に送出され、中位2
ビットが第2ルックアップ部5に送出され、下位2ビッ
トが第3ルックアップ部7に送出される。尚、点線は分
割されたビット列データの流れを示している。First, in step S1, the bit string of the maximum code length (6 bits in the case of the variable length code shown in Table 1) input by the divider 1 is the upper 2 bits and the middle 2 bits.
It is divided into 3 bits, the lower 2 bits. Then, the upper 2 bits are sent to the first lookup unit 3, and the middle 2
The bits are sent to the second lookup unit 5, and the lower 2 bits are sent to the third lookup unit 7. The dotted line indicates the flow of the divided bit string data.
【0044】次に、ステップS2で、上記第1ルックア
ップ部3によって、入力された上位2ビット列をアドレ
スとして第1テーブルが引かれ、第2テーブルへの表ア
ドレスと符号長算出パラメータと復号値算出パラメータ
とが読み出される。そして、上記表アドレスが第2ルッ
クアップ部5に送出され、上記符号長算出パラメータお
よび復号値算出パラメータが演算器8に送出される。Next, in step S2, the first look-up unit 3 draws the first table using the input upper 2 bit string as an address, and the table address to the second table, the code length calculation parameter, and the decoded value. The calculated parameters and are read. Then, the table address is sent to the second lookup unit 5, and the code length calculation parameter and the decoded value calculation parameter are sent to the calculator 8.
【0045】次に、ステップS3で、上記第2ルックア
ップ部5によって、入力された中位2ビット列と第1ル
ックアップ部3からの表アドレスとをインデックスとし
て第2テーブルのアドレスが求められ、第2テーブルが
引かれて第3テーブルへの表アドレスと符号長算出パラ
メータと復号値算出パラメータとが読み出される。そし
て、上記表アドレスが第3ルックアップ部7に送出さ
れ、上記符号長算出パラメータおよび復号値算出パラメ
ータが演算器8に送出される。Next, in step S3, the second look-up section 5 obtains the address of the second table by using the input middle 2-bit string and the table address from the first look-up section 3 as an index. The second table is looked up and the table address, code length calculation parameter and decoded value calculation parameter to the third table are read. Then, the table address is sent to the third lookup unit 7, and the code length calculation parameter and the decoded value calculation parameter are sent to the calculator 8.
【0046】次に、ステップS4で、上記第3ルックア
ップ部7によって、入力された下位2ビット列と第2ル
ックアップ部5からの表アドレスとをインデックスとし
て第3テーブルへのアドレスが求められ、第3テーブル
が引かれて符号長算出パラメータと復号値算出パラメー
タとが読み出される。そして、上記符号長算出パラメー
タおよび復号値算出パラメータが演算器8に送出され
る。尚、破線は、符号長算出パラメータおよび復号値算
出パラメータの流れを示している。Next, in step S4, the third look-up unit 7 obtains an address to the third table by using the input lower 2 bit string and the table address from the second look-up unit 5 as an index, The third table is looked up and the code length calculation parameter and the decoded value calculation parameter are read. Then, the code length calculation parameter and the decoded value calculation parameter are sent to the calculator 8. The broken line shows the flow of the code length calculation parameter and the decoded value calculation parameter.
【0047】次に、ステップS5で、上記演算器8によ
って、各ルックアップ部3,5,7から出力された符号長
算出パラメータと復号値算出パラメータとに基づいて、
可変長符号の符号長と復号値とが演算され、演算結果が
出力される。そうした後、復号化処理を終了する。Next, in step S5, based on the code length calculation parameter and the decoded value calculation parameter output from each of the lookup units 3, 5, and 7 by the arithmetic unit 8,
The code length of the variable-length code and the decoded value are calculated, and the calculation result is output. After that, the decoding process ends.
【0048】このように、本実施の形態における復号化
処理においては、分割部1,第1ルックアップ部3,第2
ルックアップ部5,第3ルックアップ部7および演算器
8の各処理部は、順次各々の処理を実行するようになっ
ている。したがって、復号化処理においては判定を行う
必要はない。そのために、復号化処理アルゴリズムには
判定に伴う分岐命令を記述する必要がなく、復号化処理
を上記従来の復号化装置や復号化方法よりも速く実行可
能である。As described above, in the decoding process according to the present embodiment, the division unit 1, the first lookup unit 3, the second unit
Each processing unit of the look-up unit 5, the third look-up unit 7 and the arithmetic unit 8 is adapted to sequentially execute each process. Therefore, it is not necessary to make a determination in the decoding process. Therefore, it is not necessary to describe a branch instruction associated with the determination in the decoding processing algorithm, and the decoding processing can be executed faster than the above-described conventional decoding device and decoding method.
【0049】以下、可変長符号のビット列「00010
1」が分割器1に入力された場合を例に上記構成を有す
る復号化装置の動作を、より具体的に説明する。分割器
1は、入力ビット列「000101」を、上位2ビット
「00」と中位2ビット「01」と下位2ビット「01」の3
つに分割する。そして、第1ルックアップ部3へ上位2
ビット「00」を出力し、第2ルックアップ部5へは中位
2ビット「01」を出力し、第3ルックアップ部7へは下
位2ビット「01」を出力する。The variable length code bit string "00010" will be described below.
The operation of the decoding apparatus having the above configuration will be described more specifically by taking the case where "1" is input to the divider 1. The divider 1 converts the input bit string “000101” into 3 of the upper 2 bits “00”, the middle 2 bits “01” and the lower 2 bits “01”.
Divide into two. Then, the top 2 is added to the first lookup unit 3.
The bit “00” is output, the middle 2 bits “01” are output to the second lookup unit 5, and the lower 2 bits “01” are output to the third lookup unit 7.
【0050】そうすると、上記第1ルックアップ部3
は、入力された上位2ビット「00」をアドレスとして第
1テーブルを引き、符号長算出パラメータ「2」と復号値
算出パラメータ「0」と第2テーブルへの表アドレス「2-
a」とが得られる。そして、表アドレス「2-a」が第2ル
ックアップ部5に送出される。一方、符号長算出パラメ
ータ「2」と復号値算出パラメータ「0」とは演算器8に
送出される。Then, the first lookup unit 3
Draws the first table with the input upper 2 bits “00” as an address, and the code length calculation parameter “2”, the decoded value calculation parameter “0”, and the table address “2-
a ”is obtained. Then, the table address “2-a” is sent to the second lookup unit 5. On the other hand, the code length calculation parameter “2” and the decoded value calculation parameter “0” are sent to the calculator 8.
【0051】次に、上記第2ルックアップ部5は、上記
分割器1から入力された中位2ビット「01」と第1ルッ
クアップ部3から入力された表アドレス「2-a」とをイ
ンデックスとして第2テーブルのアドレスを求め、その
アドレスで第2テーブルを引く。そして、符号長算出パ
ラメータ「0」と復号値算出パラメータ「0」と第3テーブ
ルへの表アドレス「3-a」とが得られる。そして、表ア
ドレス「3-a」が第3ルックアップ部7に送出される一
方、符号長算出パラメータ「0」と復号値算出パラメータ
「0」とは演算器8に送出される。Next, the second lookup unit 5 receives the middle 2 bits "01" input from the divider 1 and the table address "2-a" input from the first lookup unit 3. The address of the second table is obtained as an index, and the second table is drawn with that address. Then, the code length calculation parameter “0”, the decoded value calculation parameter “0”, and the table address “3-a” to the third table are obtained. Then, the table address “3-a” is sent to the third lookup unit 7, while the code length calculation parameter “0” and the decoded value calculation parameter “0” are sent to the calculator 8.
【0052】次に、上記第3ルックアップ部7は、上記
分割器1から入力された下位2ビット「01」と第2ルッ
クアップ部5から入力された表アドレス「3-a」とをイ
ンデックスとして第3テーブルのアドレスを求め、その
アドレスで第3テーブルを引く。そして、符号長算出パ
ラメータ「0」と復号値算出パラメータ「0」とが得られ
る。そして、符号長算出パラメータ「0」と復号値算出パ
ラメータ「0」とが演算器8に送出される。Next, the third lookup unit 7 indexes the lower 2 bits "01" input from the divider 1 and the table address "3-a" input from the second lookup unit 5. Then, the address of the third table is obtained, and the third table is drawn with the address. Then, the code length calculation parameter “0” and the decoded value calculation parameter “0” are obtained. Then, the code length calculation parameter “0” and the decoded value calculation parameter “0” are sent to the calculator 8.
【0053】そうすると、上記演算器8は、上記第1,
第2,第3ルックアップ3,5,7から出力された符号長
算出パラメータ「2」,「0」,「0」を加算して、入力可変長
符号の符号長「2」を求める。同様に、第1,第2,第3ル
ックアップ3,5,7から出力された復号値算出パラメー
タ「0」,「0」,「0」を加算して、復号値「0」を求める。そ
して、上記求められた符号長「2」と復号値「0」とを出力
するのである。Then, the arithmetic unit 8 operates as the first,
The code length calculation parameters “2”, “0”, “0” output from the second and third lookups 3, 5, 7 are added to obtain the code length “2” of the input variable length code. Similarly, the decoded value calculation parameters “0”, “0”, and “0” output from the first, second, and third lookups 3, 5, and 7 are added to obtain the decoded value “0”. Then, the code length "2" and the decoded value "0" thus obtained are output.
【0054】このように、本実施の形態においては、最
大符号長が6ビットの可変長符号を2ビットずつ分割
し、上位2ビットをインデックスとして「符号長算出パ
ラメータ」,「復号値算出パラメータ」および「次テーブル
への表アドレス」を検索するための第1テーブルを作成
して第1テーブル格納部2に格納する。同様に、中位2
ビットと第1テーブルの「表アドレス」とをインデックス
として「符号長算出パラメータ」,「復号値算出パラメー
タ」および「次テーブルへの表アドレス」を検索するため
の第2テーブルを作成して第2テーブル格納部4に格納
する。また、下位2ビットと第2テーブルの「表アドレ
ス」とをインデックスとして「符号長算出パラメータ」お
よび「復号値算出パラメータ」を検索するための第3テー
ブルを作成して第3テーブル格納部6に格納する。As described above, in the present embodiment, a variable length code having a maximum code length of 6 bits is divided into 2 bits, and the upper 2 bits are used as an index for "code length calculation parameter" and "decoded value calculation parameter". Also, a first table for searching "table address to next table" is created and stored in the first table storage unit 2. Similarly, medium 2
A second table is created to search for “code length calculation parameter”, “decoded value calculation parameter”, and “table address to next table” using bits and “table address” of the first table as an index. Stored in the table storage unit 4. In addition, a third table for searching the “code length calculation parameter” and the “decoded value calculation parameter” using the lower 2 bits and the “table address” of the second table as an index is created and stored in the third table storage unit 6. Store.
【0055】但し、各テーブルの両パラメータの要素値
として、当該テーブルを引いて復号値が決定する可変長
符号に相当するアドレスにはその符号の符号長と復号値
とを与え、それ以外のアドレスには「0」を与える。すな
わち、表1に例示された可変長符号で具体的に言えは、
第1テーブルの場合は符号「00」、第2テーブルの場合
は符号「010」〜「1101」、第3テーブルの場合は符
号「11100」〜「111111」に相当するアドレス
に、その符号の符号長と復号値を与えるのである。However, as the element values of both parameters of each table, the code length and the decoded value of the code are given to the address corresponding to the variable length code whose decoded value is determined by subtracting the table, and the other addresses. Is given "0". That is, specifically, in the variable-length codes exemplified in Table 1,
The code corresponding to the code “00” in the case of the first table, the code “010” to “1101” in the case of the second table, and the code “11100” to “111111” in the case of the third table is assigned to the code of the code. It gives the length and the decoded value.
【0056】そして、上記分割器1で、入力される最大
符号長(6ビット)のビット列を2ビットずつ分割し、上
位2ビットを第1ルックアップ部3に出力し、中位2ビ
ット第2ルックアップ部5に出力し、下位2ビットを第
3ルックアップ部7に出力する。各ルックアップ部3,
5,7は、順次、入力される2ビットのビット列と前段
のルックアップ部からの「表アドレス」とをインデックス
として対応するテーブルを検索して、「符号長算出パラ
メータ」,「復号値算出パラメータ」および「表アドレス」を
得る。そして、「符号長算出パラメータ」および「復号値
算出パラメータ」を演算器8に出力する。演算器8は、
各テーブルが上述のような構成を有しているために、各
ルックアップ部3,5,7から入力される「符号長算出パ
ラメータ」および「復号値算出パラメータ」の夫々を加算
することによって、「符号長」および「復号値」を得ること
ができる。Then, the divider 1 divides the input bit string of the maximum code length (6 bits) by 2 bits, outputs the upper 2 bits to the first lookup unit 3, and outputs the middle 2 bits second It outputs to the lookup unit 5, and outputs the lower 2 bits to the third lookup unit 7. Each lookup section 3,
Reference numerals 5 and 7 sequentially search the corresponding table using the input 2-bit bit string and the "table address" from the lookup unit of the previous stage as an index, and calculate the "code length calculation parameter" and the "decoded value calculation parameter". , And "table address". Then, the “code length calculation parameter” and the “decoded value calculation parameter” are output to the calculator 8. The calculator 8 is
Since each table has the above-described configuration, by adding each of the “code length calculation parameter” and the “decoded value calculation parameter” input from each lookup unit 3, 5, 7, The "code length" and the "decoded value" can be obtained.
【0057】このように、本実施の形態においては、入
力された可変長符号のビット列を上位ビット列,中位ビ
ット列,下位ビット列に分割し、上位ビット列から各ビ
ット列毎のテーブルを順次探索して行くことによって復
号化を行うので、復号化を高速且つ少ない容量のテーブ
ルで行うことができる。また、その際に、上記分割器
1,第1ルックアップ部3,第2ルックアップ部5,第3
ルックアップ部7および演算器8の各処理部は、互いに
他の処理部の処理終了を判定する必要がなく、分岐条件
のない復号化処理アルゴリズムを適用できる。したがっ
て、本実施の形態によれば、復号化処理を更に高速に実
行することができるのである。As described above, in this embodiment, the input bit string of the variable length code is divided into the upper bit string, the middle bit string, and the lower bit string, and the table for each bit string is sequentially searched from the upper bit string. By doing so, the decoding is performed, so that the decoding can be performed at high speed with a small capacity table. At that time, the divider 1, the first lookup unit 3, the second lookup unit 5, and the third lookup unit
The processing units of the lookup unit 7 and the arithmetic unit 8 do not need to determine the processing end of the other processing units from each other, and a decoding processing algorithm without a branch condition can be applied. Therefore, according to the present embodiment, the decoding process can be executed at a higher speed.
【0058】<第2実施の形態>図3は、本実施の形態
の復号化装置におけるブロック図である。本実施の形態
は、第1実施の形態における第1,第2,第3の各テーブ
ルの更なる容量削減を図ったものである。<Second Embodiment> FIG. 3 is a block diagram of a decoding apparatus according to the present embodiment. The present embodiment is intended to further reduce the capacity of each of the first, second and third tables in the first embodiment.
【0059】分割器11は、第1実施の形態における分
割器1と同様の構成を有して同様に動作する。第1ルッ
クアップ部13は、入力された上位2ビットのビット列
をアドレスとして、第1テーブル格納部12に格納され
た第1テーブルを引き、第1テーブルにおける表アドレ
ス欄に登録されている表アドレスと、符号番号パラメー
タ欄に登録されている符号番号パラメータを読み出す。
表5に、上記第1テーブルの一例を示す。The divider 11 has the same configuration as the divider 1 in the first embodiment and operates in the same manner. The first lookup unit 13 looks up the first table stored in the first table storage unit 12 using the input high-order 2-bit bit string as an address, and acquires the table address registered in the table address column in the first table. Then, the code number parameter registered in the code number parameter column is read.
Table 5 shows an example of the first table.
【表5】
そして、上記表アドレスを第2ルックアップ部15へ出
力し、符号番号パラメータを演算器18に出力する。[Table 5] Then, the table address is output to the second lookup unit 15, and the code number parameter is output to the calculator 18.
【0060】上記第2ルックアップ部15および第3ル
ックアップ部17は、第1実施の形態の場合と同様に、
前段のルックアップ部から入力された表アドレスと分割
器11から入力された中位,下位2ビットのビット列と
をインデックスとして第2,第3テーブルのアドレスを
求め、第2,第3テーブル格納部14,16に格納された
第2,第3テーブルを引く。そして、各テーブルから表
アドレスや符号番号パラメータを読み出す。表6に第2
テーブルの一例を、表7に第3テーブルの一例を示す。The second look-up unit 15 and the third look-up unit 17 are the same as in the case of the first embodiment.
Addresses of the second and third tables are obtained using the table address input from the lookup unit of the previous stage and the bit string of middle and lower 2 bits input from the divider 11 as an index, and the second and third table storage units are obtained. The second and third tables stored in 14 and 16 are drawn. Then, the table address and the code number parameter are read from each table. Second in Table 6
An example of the table and Table 7 show an example of the third table.
【表6】 [Table 6]
【表7】
そして、上記表アドレスを次段のルックアップ部へ出力
し、符号番号パラメータを演算器18に出力する。[Table 7] Then, the table address is output to the lookup unit in the next stage, and the code number parameter is output to the calculator 18.
【0061】上記演算器18は、上記第1,第2,第3ル
ックアップ部13,15,17から入力される符号番号パ
ラメータに基づいて、可変長符号の符号番号を演算し、
演算結果を第4ルックアップ部19に出力する。The computing unit 18 computes the code number of the variable length code based on the code number parameters input from the first, second and third lookup units 13, 15, 17 and
The calculation result is output to the fourth lookup unit 19.
【0062】最後に、上記第4ルックアップ部19は、
上記入力された符号番号をアドレスとして、第4テーブ
ル格納部20に格納された第4テーブルを引き、第4テ
ーブルにおける符号長欄に登録されている符号長と、復
号値欄に登録されている復号値を読み出す。表8に、上
記第4テーブルの一例を示す。Finally, the fourth lookup unit 19 is
Using the input code number as an address, the fourth table stored in the fourth table storage unit 20 is looked up, and the code length registered in the code length column and the decoded value column in the fourth table are registered. Read the decrypted value. Table 8 shows an example of the fourth table.
【表8】 [Table 8]
【0063】図4は、図3における分割器11,第1ル
ックアップ部13,第2ルックアップ部15,第3ルック
アップ部17,演算器18および第4ルックアップ部1
9によって実行される復号化処理の概略手順を示すフロ
ーチャートである。本実施の形態におけるステップS11
〜ステップS15は、第1実施の形態の図2におけるステ
ップS1〜ステップS5と基本的に同じである。但し、各
ルックアップ部13,15,17が各テーブルから得て演
算器18に出力するパラメータは、符号番号パラメータ
である。したがって、上記ステップS15において演算器
18が演算するのは、可変長符号の符号番号である。そ
して、演算器18から符号番号が第4ルックアップ部1
9に出力されると、ステップS16に進む。FIG. 4 shows the divider 11, the first look-up unit 13, the second look-up unit 15, the third look-up unit 17, the calculator 18 and the fourth look-up unit 1 in FIG.
9 is a flowchart showing a schematic procedure of a decryption process executed by 9. Step S11 in the present embodiment
The steps S15 to S15 are basically the same as the steps S1 to S5 in FIG. 2 of the first embodiment. However, the parameters that the respective lookup units 13, 15, 17 obtain from the respective tables and output to the calculator 18 are code number parameters. Therefore, it is the code number of the variable length code that the calculator 18 calculates in step S15. Then, the code number from the calculator 18 is the fourth lookup unit 1
When it is output to 9, the process proceeds to step S16.
【0064】ステップS16で、上記第4ルックアップ部
19によって、入力された符号番号をアドレスとして第
4テーブルが引かれ、符号長と復号値が得られる。そし
て、得られた符号長と復号値が出力される。そうした
後、復号化処理を終了する。In step S16, the fourth lookup unit 19 looks up the fourth table using the input code number as an address to obtain the code length and the decoded value. Then, the obtained code length and decoded value are output. After that, the decoding process ends.
【0065】このように、本実施の形態の場合にも分割
部11,第1ルックアップ部13,第2ルックアップ部1
5,第3ルックアップ部17,演算器18および第4ルッ
クアップ部19の各処理部は順次各々の処理を実行する
ので、復号化処理アルゴリズムには判定に伴う分岐命令
を記述する必要がない。したがって、復号化処理を上記
従来の復号化装置や復号化方法よりも速く実行可能であ
る。As described above, also in the case of this embodiment, the division unit 11, the first lookup unit 13, and the second lookup unit 1 are also included.
5, each processing unit of the third lookup unit 17, the arithmetic unit 18, and the fourth lookup unit 19 sequentially executes respective processes, so that it is not necessary to describe a branch instruction associated with the determination in the decoding algorithm. . Therefore, the decoding process can be executed faster than the above-described conventional decoding device and decoding method.
【0066】以下、第1実施の形態の場合と同様に、可
変長符号のビット列「000101」が分割器11に入力
された場合を例に上記構成を有する復号化装置の動作
を、より具体的に説明する。分割器11は、入力ビット
列「000101」を、上位2ビット,中位2ビット,下位
2ビットの3つに分割する。そして、第1ルックアップ
部13へ上位2ビット「00」を出力し、第2ルックアッ
プ部15へ中位2ビット「01」を出力し、第3ルックア
ップ部17へ下位2ビット「01」を出力する。Hereinafter, as in the case of the first embodiment, the operation of the decoding apparatus having the above-described configuration will be described more concretely by taking the case where the bit string “000101” of the variable length code is input to the divider 11. Explained. The divider 11 divides the input bit string “000101” into three bits of upper 2 bits, middle 2 bits, and lower 2 bits. Then, the upper 2 bits “00” are output to the first lookup unit 13, the middle 2 bits “01” are output to the second lookup unit 15, and the lower 2 bits “01” are output to the third lookup unit 17. Is output.
【0067】そうすると、上記第1ルックアップ部13
は、入力された上位2ビット「00」をアドレスとして第
1テーブルを引き、符号番号パラメータ「0」と第2テー
ブルへの表アドレス「2-a」とが得られる。そして、表
アドレス「2-a」が第2ルックアップ部15に送出され
る一方、符号番号パラメータ「0」は演算器18に送出さ
れる。Then, the first look-up unit 13
Takes the first table with the input upper 2 bits "00" as an address, and the code number parameter "0" and the table address "2-a" to the second table are obtained. Then, the table address “2-a” is sent to the second lookup unit 15, while the code number parameter “0” is sent to the calculator 18.
【0068】次に、上記第2ルックアップ部15は、上
記分割器11から入力された中位2ビット「01」と第1
ルックアップ部13から入力された表アドレス「2-a」
とをインデックスとして第2テーブルのアドレスを求
め、そのアドレスで第2テーブルを引く。そして、符号
番号パラメータ「0」と第3テーブルへの表アドレス「3-
a」とが得られる。そして、表アドレス「3-a」が第3ル
ックアップ部17に送出される一方、符号番号パラメー
タ「0」は演算器18に送出される。Next, the second look-up unit 15 receives the middle two bits "01" input from the divider 11 and the first two bits.
Table address “2-a” input from the lookup unit 13
The address of the second table is obtained by using and as an index, and the second table is drawn by the address. Then, the code number parameter "0" and the table address "3-
a ”is obtained. Then, the table address “3-a” is sent to the third lookup unit 17, while the code number parameter “0” is sent to the arithmetic unit 18.
【0069】次に、上記第3ルックアップ部17は、上
記分割器11から入力された下位2ビット「01」と第2
ルックアップ部15から入力された表アドレス「3-a」
とをインデックスとして第3テーブルのアドレスを求
め、そのアドレスで第3テーブルを引く。そして、符号
番号パラメータ「0」が得られる。そして、符号番号パラ
メータ「0」が演算器18に送出される。Next, the third look-up unit 17 compares the lower 2 bits "01" input from the divider 11 with the second lower bit "01".
Table address “3-a” input from the lookup unit 15
The address of the third table is obtained by using and as an index, and the third table is drawn by the address. Then, the code number parameter “0” is obtained. Then, the code number parameter “0” is sent to the calculator 18.
【0070】そうすると、上記演算器18は、上記第
1,第2,第3ルックアップ13,15,17から出力され
た符号番号パラメータ「0」,「0」,「0」を加算して入力可
変長符号の符号番号「0」を求める。そして、上記求めら
れた符号番号「0」を第4ルックアップ部19に出力す
る。Then, the arithmetic unit 18 adds the code number parameters “0”, “0” and “0” output from the first, second and third lookups 13, 15 and 17 and inputs them. The code number "0" of the variable length code is obtained. Then, the obtained code number “0” is output to the fourth lookup unit 19.
【0071】最後に、上記第4ルックアップ部19は、
上記演算器18から入力された符号番号「0」をアドレス
として第4テーブルを引き、符号長「2」と復号値「0」と
を得る。そして、得られた符号長「2」と復号値「0」とを
出力するのである。Finally, the fourth lookup unit 19
The fourth table is looked up with the code number "0" input from the arithmetic unit 18 as an address, and the code length "2" and the decoded value "0" are obtained. Then, the obtained code length "2" and the decoded value "0" are output.
【0072】このように、本実施の形態においては、最
大符号長が6ビットの可変長符号を2ビットずつ分割す
る。そして、上位2ビットをインデックスとして「符号
番号パラメータ」および「次テーブルへの表アドレス」を
検索するための第1テーブルと、中位2ビットと第1テ
ーブルの「表アドレス」とをインデックスとして「符号番
号パラメータ」および「次テーブルへの表アドレス」を検
索するための第2テーブルと、下位2ビットと第2テー
ブルの「表アドレス」をインデックスとして「符号番号パ
ラメータ」を検索するための第3テーブルを作成する。
さらに、符号番号をアドレスとして「符号長」および「復
号値」を検索するための第4テーブルを作成して第4テ
ーブル格納部20に格納する。As described above, in this embodiment, the variable length code having the maximum code length of 6 bits is divided into 2 bits. Then, the first table for searching the “code number parameter” and the “table address to the next table” using the upper 2 bits as an index, and the “table address” of the middle 2 bits and the first table as the index A second table for searching "code number parameter" and "table address to next table", and a third table for searching "code number parameter" using lower 2 bits and "table address" of the second table as indexes. Create a table.
Furthermore, a fourth table for searching for “code length” and “decoded value” is created using the code number as an address and stored in the fourth table storage unit 20.
【0073】但し、上記第1〜第3テーブルにおける符
号番号パラメータの要素値として、当該テーブルを引い
て復号値が決定する可変長符号に相当するアドレスには
その符号の符号番号を与え、それ以外のアドレスには
「0」を与える。すなわち、表1に例示された可変長符号
で具体的に言えは、上記第1テーブルの場合は符号「0
0」、第2テーブルの場合は符号「010」〜「110
1」、第3テーブルの場合は符号「11100」〜「111
111」に相当するアドレスに、その符号の符号番号を
与えるのである。However, as the element value of the code number parameter in the above-mentioned first to third tables, the code number of the code is given to the address corresponding to the variable length code whose decoding value is determined by subtracting the table, and other than that. "0" is given to the address of. That is, specifically, in the variable length code illustrated in Table 1, specifically, in the case of the first table, the code is “0”.
0 ", and in the case of the second table, reference numerals" 010 "to" 110 "
1 ", and in the case of the third table, reference numerals" 11100 "to" 111 "
The code number of the code is given to the address corresponding to "111".
【0074】その結果、上記演算器18は、上記各ルッ
クアップ部13,15,17から入力される「符号番号パ
ラメータ」を加算することによって、「符号番号」を得る
ことができる。そして、第4ルックアップ部19は、符
号番号をアドレスとして第4テーブルを検索して「符号
長」および「復号値」を得るのである。As a result, the arithmetic unit 18 can obtain the "code number" by adding the "code number parameter" input from each of the look-up units 13, 15 and 17. Then, the fourth lookup unit 19 searches the fourth table using the code number as an address to obtain the "code length" and the "decoded value".
【0075】したがって、上記分割器11,第1ルック
アップ部13,第2ルックアップ部15,第3ルックアッ
プ部17,演算器18および第4ルックアップ部19の
各処理部は、互いに他の処理部の処理終了を判定する必
要がなく、分岐条件のない復号化処理アルゴリズムを適
用できる。すなわち、本実施の形態によれば、復号化処
理を高速に実行することができる。また、上記第1〜第
3テーブルに登録するパラメータは、符号番号パラメー
タのみである。したがって、第1実施の形態に比して上
記第1〜第3テーブルの容量を削減できるのである。Therefore, the processing units of the divider 11, the first lookup unit 13, the second lookup unit 15, the third lookup unit 17, the computing unit 18, and the fourth lookup unit 19 are different from each other. It is not necessary to determine the processing end of the processing unit, and a decoding processing algorithm without a branch condition can be applied. That is, according to the present embodiment, the decoding process can be executed at high speed. Further, the parameters registered in the first to third tables are only code number parameters. Therefore, the capacities of the first to third tables can be reduced as compared with the first embodiment.
【0076】<第3実施の形態>図5は、本実施の形態
の復号化装置におけるブロック図である。本実施の形態
は、第2実施の形態における第1,第2,第3の各テーブ
ルの更なる容量削減を図ったものである。<Third Embodiment> FIG. 5 is a block diagram of a decoding apparatus according to the present embodiment. The present embodiment is intended to further reduce the capacity of each of the first, second and third tables in the second embodiment.
【0077】図3に示す第2実施の形態の復号化装置に
おける第2テーブルと第3テーブルとにおける符号番号
パラメータの関係を見ると、第2テーブルの「2-a」と
第3テーブルの「3-a」との符号番号パラメータは同一
であり、表アドレスの要素を無視すると第2テーブルの
「2-a」と第3テーブルの「3-a」とを共用することが可
能である。Looking at the relationship between the code number parameters in the second table and the third table in the decoding apparatus of the second embodiment shown in FIG. 3, "2-a" in the second table and "" in the third table The code number parameter of “3-a” is the same, and if the element of the table address is ignored, it is possible to share “2-a” of the second table and “3-a” of the third table.
【0078】さらに、上記表5に示す第1テーブルを、
表9に示す第1テーブルのように変更すると、Further, the first table shown in Table 5 above is
When changed to the first table shown in Table 9,
【表9】
上記表6に示す第2テーブルの「2-a」,「2-b」,「2-
c」,「2-d」は、表9に示す第1テーブルの「1-b」,「1
-c」,「1-d」,「1-e」のように書き換えることができ
る。そして、表7に示す第3テーブルの「3-b」,「3-
c」は、表9に示す第1テーブルの「1-d」,「1-e」と共
用することが可能となる。このように、上記符号番号,
符号番号パラメータおよび演算方法を適切に設定するこ
とによって、表5に示す第1テーブルと、表6に示す第
2テーブルと、表7に示す第3テーブルの一部を共用し
て使うことが可能になり、第2実施例における第1〜第
3の各テーブル容量を削減することができるのである。[Table 9] "2-a", "2-b", "2--" in the second table shown in Table 6 above
c ”and“ 2-d ”are“ 1-b ”and“ 1 ”in the first table shown in Table 9.
It can be rewritten as "-c", "1-d", "1-e". Then, in the third table shown in Table 7, "3-b" and "3-
"c" can be shared with "1-d" and "1-e" of the first table shown in Table 9. Thus, the code number above,
By appropriately setting the code number parameter and the calculation method, it is possible to share and use a part of the first table shown in Table 5, the second table shown in Table 6, and the third table shown in Table 7. Therefore, it is possible to reduce the capacity of each of the first to third tables in the second embodiment.
【0079】そこで、本実施の形態においては、第2実
施例における第1〜第3の各テーブルを表9に示す第1
テーブル一つに集約して、第1テーブル格納部22に格
納する。また、第2実施例における第4テーブル(表8
参照)と同じテーブルを、第2テーブルとして第2テー
ブル格納部30に格納するのである。尚、分割器21,
第1ルックアップ部23,第2ルックアップ部25,第3
ルックアップ部27,演算器28および第4ルックアッ
プ部29は、第2実施例における分割器11,第1ルッ
クアップ部13,第2ルックアップ部15,第3ルックア
ップ部17,演算器18および第4ルックアップ部19
と同様の構成を有して同様に動作する。Therefore, in this embodiment, the first to third tables in the second embodiment are shown in Table 9 as the first table.
The data is collected into one table and stored in the first table storage unit 22. In addition, the fourth table (Table 8) in the second embodiment
The same table as the reference table) is stored in the second table storage unit 30 as the second table. The divider 21,
First lookup unit 23, second lookup unit 25, third
The look-up unit 27, the calculator 28, and the fourth look-up unit 29 are the divider 11, the first look-up unit 13, the second look-up unit 15, the third look-up unit 17, and the calculator 18 in the second embodiment. And fourth lookup unit 19
It has the same configuration as and operates in the same manner.
【0080】以下、第1,第2実施の形態の場合と同様
に、可変長符号のビット列「000101」が分割器21
に入力された場合を例に上記構成を有する復号化装置の
動作を説明する。分割器21は、入力ビット列「000
101」を、上位2ビット,中位2ビット,下位2ビット
の3つに分割する。そして、第1ルックアップ部23へ
上位2ビット「00」を出力し、第2ルックアップ部25
へ中位2ビット「01」を出力し、第3ルックアップ部2
7へ下位2ビット「01」を出力する。Hereinafter, as in the case of the first and second embodiments, the bit string "000101" of the variable length code is divided by the divider 21.
The operation of the decoding apparatus having the above configuration will be described by taking the case of inputting into the as an example. The divider 21 inputs the input bit string “000
101 "is divided into three, that is, upper 2 bits, middle 2 bits, and lower 2 bits. Then, the upper 2 bits “00” are output to the first lookup unit 23, and the second lookup unit 25
The middle 2 bits "01" are output to the third lookup unit 2
The lower 2 bits “01” are output to 7.
【0081】そうすると、上記第1ルックアップ部23
は、入力された上位2ビット「00」をアドレスとして第
1テーブルの「1-a」を引き、符号番号パラメータ「0」
と同テーブルへの表アドレス「1-b」とが得られる。そ
して、表アドレス「1-b」が第2ルックアップ部25に
送出される一方、符号番号パラメータ「0」は演算器28
に送出される。Then, the first look-up unit 23 is
Subtracts "1-a" in the first table using the input upper 2 bits "00" as an address, and the code number parameter "0"
And the table address "1-b" to the same table are obtained. Then, the table address “1-b” is transmitted to the second lookup unit 25, while the code number parameter “0” is the arithmetic unit 28.
Sent to.
【0082】次に、上記第2ルックアップ部25は、上
記分割器21から入力された中位2ビット「01」と第1
ルックアップ部23から入力された表アドレス「1-b」
とをインデックスとしてアドレスを求め、そのアドレス
で第1テーブル(「1-b」)を引く。そして、符号番号パ
ラメータ「0」と同テーブルへの表アドレス「1-b」とが
得られる。そして、表アドレス「1-b」が第3ルックア
ップ部27に送出される一方、符号番号パラメータ「0」
は演算器28に送出される。Next, the second look-up unit 25 compares the middle two bits “01” input from the divider 21 with the first two bits.
Table address “1-b” input from the lookup unit 23
An address is obtained by using and as an index, and the first table (“1-b”) is drawn at the address. Then, the code number parameter "0" and the table address "1-b" to the same table are obtained. Then, the table address “1-b” is sent to the third lookup unit 27, while the code number parameter “0”.
Is sent to the calculator 28.
【0083】次に、上記第3ルックアップ部27は、上
記分割器21から入力された下位2ビット「01」と第2
ルックアップ部25から入力された表アドレス「1-b」
とをインデックスとしてアドレスを求め、そのアドレス
で再度上記第1テーブル(「1-b」)を引く。そして、符
号番号パラメータ「0」が得られる。そして、符号番号パ
ラメータ「0」が演算器28に送出される。Next, the third look-up unit 27 compares the lower 2 bits “01” input from the divider 21 with the second lower bit “01”.
Table address “1-b” input from the lookup unit 25
The address is obtained by using and as an index, and the first table (“1-b”) is drawn again at the address. Then, the code number parameter “0” is obtained. Then, the code number parameter “0” is sent to the arithmetic unit 28.
【0084】そうすると、上記演算器28は、上記第
1,第2,第3ルックアップ23,25,27から出力され
た符号番号パラメータ「0」,「0」,「0」を加算して入力可
変長符号の符号番号「0」を求める。そして、上記求めら
れた符号番号「0」を第4ルックアップ部29に出力す
る。Then, the arithmetic unit 28 adds the code number parameters "0", "0", "0" output from the first, second, and third lookups 23, 25, 27, and inputs them. The code number "0" of the variable length code is obtained. Then, the obtained code number “0” is output to the fourth lookup unit 29.
【0085】最後に、上記第4ルックアップ部29は、
上記演算器28から入力された符号番号「0」をアドレス
として第2テーブルを引き、符号長「2」と復号値「0」と
を得る。そして、得られた符号長「2」と復号値「0」とを
出力するのである。Finally, the fourth lookup unit 29 described above
The second table is looked up with the code number "0" input from the arithmetic unit 28 as an address, and the code length "2" and the decoded value "0" are obtained. Then, the obtained code length "2" and the decoded value "0" are output.
【0086】尚、上記各実施の形態における分割器1,
11,21、第1ルックアップ部3,13,23、第2ル
ックアップ部5,15,25、第3ルックアップ部7,1
7,27、演算器8,18,28および第4ルックアップ
部19,29は、専用のLSI(大規模集積回路)やCP
U(中央演算処理装置)あるいはそれらの組み合わせで実
現でき、上記各手段による一部または総ての処理はハー
ドウェアのみならずソフトウェア若しくはそれらの組み
合わせによって実現が可能である。The divider 1 in each of the above embodiments,
11, 21, first lookup unit 3, 13, 23, second lookup unit 5, 15, 25, third lookup unit 7, 1.
7, 27, the arithmetic units 8, 18, 28 and the fourth lookup units 19, 29 are dedicated LSI (Large Scale Integrated Circuit) or CP.
U (central processing unit) or a combination thereof, and part or all of the processing by the above means can be realized not only by hardware but also by software or a combination thereof.
【0087】ここで、上記ソフトウェアとしての復号化
処理プログラムは、プログラム記録媒体に記録される。
上記各実施の形態における上記プログラム記録媒体は、
ROM(リード・オンリ・メモリ)でなるプログラムメディ
アである。または、外部補助記憶装置に装着されて読み
出されるプログラムメディアであってもよい。尚、何れ
の場合においても、上記プログラムメディアから復号化
処理プログラムを読み出すプログラム読み出し手段は、
上記プログラムメディアに直接アクセスして読み出す構
成を有していてもよいし、RAM(ランダム・アクセス・
メモリ)に設けられたプログラム記憶エリア(図示せず)
にダウンロードし、上記プログラム記憶エリアにアクセ
スして読み出す構成を有していてもよい。尚、上記プロ
グラムメディアからRAMの上記プログラム記憶エリア
にダウンロードするためのダウンロードプログラムは、
予め本復号化装置が搭載されたシステムに格納されてい
るものとする。Here, the decryption processing program as the software is recorded in the program recording medium.
The program recording medium in each of the above embodiments is
It is a program medium composed of a ROM (Read Only Memory). Alternatively, it may be a program medium loaded in an external auxiliary storage device and read. In any case, the program reading means for reading the decryption processing program from the program medium is
It may have a configuration in which the program medium is directly accessed and read out, or a RAM (random access
Program storage area (not shown) provided in the memory)
It may be configured to be downloaded to, and to access and read out the program storage area. The download program for downloading from the program medium to the program storage area of the RAM is
It is assumed that it is stored in advance in the system in which the present decoding device is installed.
【0088】ここで、上記プログラムメディアとは、本
体側と分離可能に構成され、磁気テープやカセットテー
プ等のテープ系、フロッピーディスク,ハードディスク
等の磁気ディスクやCD(コンパクトディスク)−RO
M,MO(光磁気)ディスク,MD(ミニディスク),DVD
(ディジタルビデオディスク)等の光ディスクのディスク
系、IC(集積回路)カードや光カード等のカード系、マ
スクROM,EPROM(紫外線消去型ROM),EEP
ROM(電気的消去型ROM),フラッシュROM等の半
導体メモリ系を含めた、固定的にプログラムを坦持する
媒体である。Here, the program medium is configured to be separable from the main body side, and is a tape system such as a magnetic tape or a cassette tape, a magnetic disk such as a floppy disk or a hard disk, or a CD (compact disk) -RO.
M, MO (magneto-optical) disc, MD (mini disc), DVD
Disc systems of optical discs such as (digital video discs), card systems such as IC (integrated circuit) cards and optical cards, mask ROM, EPROM (UV erasable ROM), EEP
It is a medium that holds a program fixedly, including semiconductor memory systems such as ROM (electrically erasable ROM) and flash ROM.
【0089】また、上記各実施の形態における復号化装
置が搭載されたシステムがインターネットを含む通信ネ
ットワークと接続可能な構成を有している場合には、上
記プログラムメディアは、通信ネットワークからのダウ
ンロード等によって流動的にプログラムを坦持する媒体
であっても差し支えない。尚、その場合における上記通
信ネットワークからダウンロードするためのダウンロー
ドプログラムは、予め上記システムに格納されているも
のとする。あるいは、別の記録媒体からインストールさ
れるものとする。Further, when the system in which the decoding device in each of the above-mentioned embodiments is installed has a configuration connectable to a communication network including the Internet, the program medium is downloaded from the communication network or the like. Even if it is a medium that fluidly carries the program, it does not matter. The download program for downloading from the communication network in that case is stored in advance in the system. Alternatively, it is assumed that the program is installed from another recording medium.
【0090】尚、上記記録媒体に記録されるものはプロ
グラムのみに限定されるものではなく、データも記録す
ることが可能である。It should be noted that what is recorded on the recording medium is not limited to the program, and data can be recorded.
【0091】以上説明したように、上記各実施の形態に
よれば、上記演算器8,18,28を設けることによっ
て、各ルックアップ部は前段ルックアップ部からパラメ
ータが送出されてくると該当するテーブルを検索して検
索結果を演算器8,18,28に送出すればよく、他の処
理部の処理終了を判定する必要はない。したがって、分
岐命令のないアルゴリズムを適用することができ、従来
の復号化手法に比べて、可変長符号の符号を少ない容量
のメモリで、高速に復号化することができるのである。As described above, according to each of the above-described embodiments, by providing the arithmetic units 8, 18, and 28, each lookup unit corresponds to the case where the parameter is sent from the preceding-stage lookup unit. It suffices to search the table and send the search result to the arithmetic units 8, 18 and 28, and it is not necessary to determine the end of processing of other processing units. Therefore, an algorithm without a branch instruction can be applied, and the code of the variable length code can be decoded at high speed with a memory having a small capacity as compared with the conventional decoding method.
【0092】[0092]
【発明の効果】以上より明らかなように、請求項1に係
る発明の復号化装置は、入力ビット列を分割手段によっ
て所定ビット数毎に2以上のビット列に分割し、上記分
割された各ビット列をインデックスとしてルックアップ
手段によってテーブルを参照してパラメータを得、上記
得られたパラメータに基づいて演算手段によって符号長
あるいは復号値を演算するので、上記テーブルを上記分
割手段によって分割される各ビット列に対応したテーブ
ルにすることによって、上記テーブル容量の削減を図る
ことができる。さらに、上記分割手段,ルックアップ手
段および演算手段は、前段の処理手段からの処理結果に
基づいて順次処理を行うので分岐条件のないアルゴリズ
ムを適用することができる。As is clear from the above, the decoding device of the invention according to claim 1 divides the input bit string into two or more bit strings by a predetermined number of bits by the dividing means, and divides each of the divided bit strings. The lookup means refers to the table as an index to obtain a parameter, and the computing means computes the code length or the decoded value based on the obtained parameter, so that the table corresponds to each bit string divided by the dividing means. By using such a table, it is possible to reduce the table capacity. Furthermore, since the dividing means, the lookup means, and the computing means perform sequential processing based on the processing result from the processing means at the preceding stage, an algorithm without a branch condition can be applied.
【0093】近年、上記CPUのクロック速度向上に伴
って命令実行時のパイプライン化が進み、分岐命令によ
るパイプラインの再読み込みのペナルティが大きくな
り、分岐条件のないアルゴリズムの方が速く実行可能に
なってきている。したがって、この発明によれば、分岐
条件のないアルゴリズムを適用することによって、高速
に復号化処理を実行することができるのである。In recent years, as the clock speed of the CPU has been improved, the pipeline at the time of instruction execution has advanced, and the penalty of reloading the pipeline due to a branch instruction has increased, so that an algorithm without a branch condition can be executed faster. It has become to. Therefore, according to the present invention, the decoding process can be executed at high speed by applying the algorithm having no branch condition.
【0094】また、請求項2に係る発明の復号化装置に
おける上記テーブルには、符号長算出用の符号長算出パ
ラメータあるいは復号値算出用の復号値算出パラメータ
を登録し、上記演算手段は、上記ルックアップ手段から
出力される上記符号長算出パラメータあるいは復号値算
出パラメータに基づいて上記符号長あるいは復号値を演
算するので、入力可変長符号の符号長あるいは復号値を
容易に求めることができる。Further, a code length calculation parameter for calculating a code length or a decoded value calculation parameter for calculating a decoded value is registered in the table in the decoding device according to the second aspect of the present invention, and the arithmetic means is configured to operate as described above. Since the code length or the decoded value is calculated based on the code length calculation parameter or the decoded value calculation parameter output from the lookup means, the code length or the decoded value of the input variable length code can be easily obtained.
【0095】また、請求項3に係る発明の復号化装置
は、入力ビット列を分割手段によって所定ビット数毎に
2以上のビット列に分割し、この分割された各ビット列
をインデックスとして第1のルックアップ手段によって
第1のテーブルを参照して符号番号算出パラメータを
得、この得られたパラメータに基づいて演算手段によっ
て符号番号を演算し、上記得られた符号番号をインデッ
クスとして第2のルックアップ手段によって第2のテー
ブルを参照して符号長あるいは復号値を得るので、上記
第1のテーブルを上記分割手段によって分割される各ビ
ット列に対応したテーブルにすることによって、上記テ
ーブル容量の削減を図ることができる。さらに、上記分
割手段,第1のルックアップ手段,演算手段および第2の
ルックアップ手段は前段の処理手段からの処理結果に基
づいて順次処理を行うので、分岐条件のないアルゴリズ
ムを適用して復号化処理を高速に実行することができ
る。Further, in the decoding apparatus of the invention according to claim 3, the input bit string is divided by the dividing means into two or more bit strings for each predetermined number of bits, and each divided bit string is used as an index for the first lookup. By means
The code number calculation parameter is obtained by referring to the first table, the code number is calculated by the calculating means based on the obtained parameter, and the second lookup means makes the second code by using the obtained code number as an index . Since the code length or the decoded value is obtained by referring to the table of
By making the first table a table corresponding to each bit string divided by the dividing means, it is possible to reduce the table capacity. Further, since the dividing means, the first lookup means, the computing means and the second lookup means perform sequential processing based on the processing result from the processing means of the previous stage, an algorithm without a branch condition is used. By applying it, the decoding process can be executed at high speed.
【0096】また、請求項4に係る発明の復号化装置
は、上記分割手段によって分割される各ビット列に対応
した複数のテーブルを―つのテーブルに集約したので、
上記テーブル容量の更なる削減を図ることができる。Since the decoding device of the invention according to claim 4 aggregates a plurality of tables corresponding to each bit string divided by the dividing means into one table,
It is possible to further reduce the table capacity.
【0097】また、請求項5に係る発明の復号化方法
は、入力ビット列を所定ビット数毎に2以上のビット列
に分割するステップと、上記分割された各ビット列をイ
ンデックスとしてテーブルを参照して符号長算出パラメ
ータあるいは復号値算出パラメータを得るステップと、
上記得られた各パラメータに基づいて符号長あるいは復
号値を演算するステップを備えたので、請求項1に係る
発明の場合と同様に、入力ビット列を分割するステッ
プ、上記テーブルを参照してパラメータを得るステッ
プ、および、上記符号長あるいは復号値を演算するステ
ップは、前段のステップからの処理結果に基づいて順次
処理を行うことができる。したがって、分岐条件のない
アルゴリズムを適用して、上記テーブルの記憶容量の増
加を押さえて復号化処理を高速に実行できる。Further, the decoding method of the invention according to claim 5 is the step of dividing the input bit string into two or more bit strings for each predetermined number of bits, and coding with reference to the table using each of the divided bit strings as an index. Obtaining a length calculation parameter or a decoded value calculation parameter,
Since the method includes the step of calculating the code length or the decoded value based on each of the obtained parameters, the step of dividing the input bit string, the parameter is referred to by referring to the table as in the case of the invention according to claim 1. The step of obtaining and the step of calculating the code length or the decoded value can be sequentially processed based on the processing result from the previous step. Therefore, by applying an algorithm without a branch condition, it is possible to suppress the increase in the storage capacity of the table and execute the decoding process at high speed.
【0098】また、請求項6に係る発明の復号化方法
は、入力ビット列を所定ビット数毎に2以上のビット列
に分割するステップと、上記分割された各ビット列をイ
ンデックスとして第1のテーブルを参照して符号番号算
出パラメータを得るステップと、上記得られたパラメー
タに基づいて符号番号を演算するステップと、上記演算
された符号番号をインデックスとして第2のテーブルを
参照して符号長あるいは復号値を得るステップを備えた
ので、請求項3に係る発明の場合と同様に、入力ビット
列を分割するステップ、上記第1のテーブルを参照して
パラメータを得るステップ、上記符号番号を演算するス
テップ、および、上記第2のテーブルを参照して上記符
号長あるいは復号値を演算するステップは、前段のステ
ップからの処理結果に基づいて順次処理を行うことがで
きる。したがって、分岐条件のないアルゴリズムを適用
して、上記テーブルの記憶容量の増加を押さえて復号化
処理を高速に実行できる。The decoding method of the invention according to claim 6 divides the input bit string into two or more bit strings for each predetermined number of bits, and refers to the first table using each of the divided bit strings as an index. To obtain the code number calculation parameter, to calculate the code number based on the obtained parameter, and to refer to the second table using the calculated code number as an index to obtain the code length or the decoded value. As in the case of the invention according to claim 3, a step of dividing the input bit string, a step of obtaining a parameter by referring to the first table, a step of calculating the code number, and the step of calculating the code length or decoded value with reference to the second table, the processing result from the preceding step It is possible to perform sequential processing on the basis of. Therefore, by applying an algorithm without a branch condition, it is possible to suppress the increase in the storage capacity of the table and execute the decoding process at high speed.
【0099】また、請求項7に係る発明のプログラム記
録媒体は、コンピュータを、入力ビット列を所定ビット
数毎に2以上のビット列に分割する分割手段と、上記分
割された各ビット列をインデックスとしてテーブルを参
照してパラメータを得るルックアップ手段と、上記得ら
れた各パラメータに基づいて符号長または復号値を演算
する演算手段として機能させる復号化処理プログラムが
記録されているので、請求項5に係る発明の場合と同様
に、入力ビット列を分割する処理、上記テーブルを参照
してパラメータを得る処理、および、上記符号長あるい
は復号値を演算する処理の各処理に、分岐条件のないア
ルゴリズムを適用して、復号化処理を高速に実行でき
る。According to a seventh aspect of the present invention, there is provided a program recording medium in which a computer divides an input bit string into two or more bit strings for each predetermined number of bits, and a table using each of the divided bit strings as an index. The lookup means for obtaining a parameter by reference and the decoding processing program for functioning as a computing means for computing a code length or a decoded value based on each of the obtained parameters are recorded. In the same manner as in the above case, an algorithm without a branch condition is applied to each process of dividing the input bit string, obtaining the parameter by referring to the table, and calculating the code length or the decoded value. The decryption process can be executed at high speed.
【0100】また、請求項8に係る発明のプログラム記
録媒体は、コンピュータを、入力ビット列を所定ビット
数毎に2以上のビット列に分割する分割手段と、上記分
割された各ビット列をインデックスとして第1のテーブ
ルを参照してパラメータを得る第1のルックアップ手段
と、上記得られたパラメータに基づいて符号番号を演算
する演算手段と、上記演算された符号番号をインデック
スとして第2のテーブルを参照して符号長あるいは復号
値を得る第2のルックアップ手段として機能させる復号
化処理プログラムが記録されているので、請求項6に係
る発明の場合と同様に、入力ビット列を分割する処理、
上記第1のテーブルを参照してパラメータを得る処理、
符号番号を演算する処理、および、上記第2のテーブル
を参照して符号長あるいは復号値を得る処理の各処理
に、分岐条件のないアルゴリズムを適用して、復号化処
理を高速に実行できる。The program recording medium of the invention according to claim 8 is characterized in that the computer divides the input bit string into two or more bit strings for each predetermined number of bits, and a first division using each of the divided bit strings as an index . First lookup means for obtaining a parameter by referring to the table, computing means for computing a code number based on the obtained parameter, and second computing means for computing the code number as an index . Since the decoding processing program for functioning as the second lookup means for obtaining the code length or the decoded value is recorded by referring to the table of (1), the input bit string is divided as in the case of the invention according to claim 6. processing,
A process for obtaining a parameter by referring to the first table,
An algorithm without a branch condition can be applied to each of the process of calculating the code number and the process of obtaining the code length or the decoded value by referring to the second table, and the decoding process can be executed at high speed.
【図1】 この発明の復号化装置におけるブロック図で
ある。FIG. 1 is a block diagram of a decoding device according to the present invention.
【図2】 図1における分割器,第1〜第3ルックアッ
プ部および演算器によって実行される復号化処理のフロ
ーチャートである。FIG. 2 is a flowchart of a decoding process executed by the divider, the first to third look-up units and the arithmetic unit in FIG.
【図3】 図1とは異なる復号化装置におけるブロック
図である。FIG. 3 is a block diagram of a decoding device different from that of FIG.
【図4】 図3における分割器,第1〜第3ルックアッ
プ部,演算器および第4ルックアップ部によって実行さ
れる復号化処理のフローチャートである。FIG. 4 is a flowchart of a decoding process executed by the divider, the first to third look-up units, the calculator and the fourth look-up unit in FIG.
【図5】 図1及び図3とは異なる復号化装置における
ブロック図である。FIG. 5 is a block diagram of a decoding device different from FIGS. 1 and 3.
1,11,21…分割器、 2,12,22…第1テーブル格納部、 3,13,23…第1ルックアップ部、 4,14,30…第2テーブル格納部、 5,15,25…第2ルックアップ部、 6,16…第3テーブル格納部、 7,17,27…第3ルックアップ部、 8,18,28…演算器、 19,29…第4ルックアップ部、 20…第4テーブル格納部。 1,11,21 ... Divider, 2, 12, 22, ... First table storage unit, 3,13,23 ... 1st lookup section, 4, 14, 30 ... Second table storage unit, 5,15,25 ... 2nd lookup section, 6, 16 ... Third table storage, 7,17,27 ... 3rd lookup section, 8, 18, 28 ... Operation unit, 19,29 ... Fourth lookup section, 20 ... Fourth table storage unit.
Claims (8)
最大ビット長のビット列を入力として、入力ビット列を
所定ビット数毎に2以上のビット列に分割する分割手段
と、 上記分割手段によって分割される各ビット列に対応した
テーブルが格納されたテーブル格納手段と、 上記分割手段によって分割された各ビット列をインデッ
クスとして上記テーブルを参照し、符号長あるいは復号
値を算出するためのパラメータを得るルックアップ手段
と、 上記ルックアップ手段で得られたパラメータに基づい
て、上記符号長あるいは復号値を演算する演算手段を備
えたことを特徴とする復号化装置。1. A dividing means for dividing a bit string of a maximum bit length, which is a fixed bit length in a variable-length code, into two or more bit strings for each predetermined number of bits, and the dividing means. A table storing means for storing a table corresponding to each bit string to be divided, and a look for obtaining a parameter for calculating a code length or a decoded value by referring to the table with each bit string divided by the dividing means as an index A decoding apparatus comprising: an up means and an operation means for operating the code length or the decoded value based on the parameter obtained by the lookup means.
タあるいは復号値算出用の復号値算出パラメータが登録
されており、 上記演算手段は、上記ルックアップ手段から出力される
上記符号長算出パラメータあるいは復号値算出パラメー
タに基づいて、上記符号長あるいは復号値を演算するこ
とを特徴とする復号化装置。2. The decoding device according to claim 1, wherein a code length calculation parameter for code length calculation or a decoded value calculation parameter for decoded value calculation is registered in the table, and the calculation means is A decoding device for calculating the code length or the decoded value based on the code length calculation parameter or the decoded value calculation parameter output from the lookup means.
最大ビット長のビット列を入力として、入力ビット列を
所定ビット数毎に2以上のビット列に分割する分割手段
と、 符号番号算出パラメータが登録されると共に、上記分割
手段によって分割される各ビット列に対応した第1のテ
ーブルが格納された第1のテーブル格納手段と、 上記分割手段によって分割された各ビット列をインデッ
クスとして上記第1のテーブルを参照し、上記符号番号
算出パラメータを得る第1のルックアップ手段と、 上記第1のルックアップ手段で得られた上記符号番号算
出パラメータに基づいて符号番号を演算する演算手段
と、 上記可変長符号の符号番号と符号長あるいは復号値とが
対応付けられて登録された第2のテーブルが格納された
第2のテーブル格納手段と、 上記演算手段で得られた符号番号をインデックスとして
上記第2のテーブルを参照し、上記符号長あるいは復号
値を得る第2のルックアップ手段を備えたことを特徴と
する復号化装置。3. A dividing means for dividing an input bit string into two or more bit strings for each predetermined number of bits by inputting a bit string having a maximum bit length which is a fixed bit length in a variable length code, and a code number calculation parameter. index with but is registered, a first table storing means for a first Te <br/> Buru is stored corresponding to each bit sequence is divided by the dividing means, each bit string divided by said dividing means the first refers to the table, the code number and the first look-up means for obtaining a calculation parameter, the code number calculation obtained in the first look-up means as
A second table in which a calculating means for calculating the code number based on the output parameter and the code number of the variable length code and the code length or the decoded value are registered in association with each other are stored.
A second table storing means and a second lookup means for obtaining the code length or the decoded value by referring to the second table using the code number obtained by the calculating means as an index. Decryption device.
化装置において、 上記分割手段によって分割される各ビット列に対応した
複数のテーブルを―つのテーブルに集約したことを特徴
とする復号化装置。4. The decoding device according to claim 1, wherein a plurality of tables corresponding to each bit string divided by the dividing means are aggregated into one table. .
最大ビット長のビット列を入力として、入力ビット列を
所定ビット数毎に2以上のビット列に分割するステップ
と、 上記分割された各ビット列をインデックスとして、符号
長算出パラメータあるいは復号値算出パラメータが登録
されたテーブルを参照して、上記符号長算出パラメータ
あるいは復号値算出パラメータを得るステップと、 上記得られた各パラメータに基づいて、符号長あるいは
復号値を演算するステップを備えたことを特徴とする復
号化方法。5. A step of dividing an input bit string into two or more bit strings for each predetermined number of bits, using a bit string of a maximum bit length that is a fixed bit length in a variable-length code as an input, and each of the divided bits. The step of obtaining the code length calculation parameter or the decoded value calculation parameter by referring to the table in which the code length calculation parameter or the decoded value calculation parameter is registered using the bit string as an index, and the code based on each of the obtained parameters A decoding method comprising a step of calculating a length or a decoded value.
最大ビット長のビット列を入力として、入力ビット列を
所定ビット数毎に2以上のビット列に分割するステップ
と、 上記分割された各ビット列をインデックスとして、符号
番号算出パラメータが登録された第1のテーブルを参照
して、上記符号番号算出パラメータを得るステップと、 上記得られた符号番号算出パラメータに基づいて、符号
番号を演算するステップと、 上記演算された符号番号をインデックスとして、上記符
号番号と符号長あるいは復号値とが対応付けられて登録
された第2のテーブルを参照して、上記符号長または復
号値を得るステップを備えたことを特徴とする復号化方
法。6. A step of dividing an input bit string into two or more bit strings for each predetermined number of bits by using a bit string of a maximum bit length which is a fixed bit length in a variable length code as an input, and each of the divided parts. A step of obtaining the code number calculation parameter by referring to the first table in which the code number calculation parameter is registered using the bit string as an index, and a step of calculating the code number based on the obtained code number calculation parameter And a step of obtaining the code length or the decoded value by referring to a second table in which the calculated code number is used as an index and the code number is associated with the code length or the decoded value. Decoding method characterized by the above.
ビット列を入力として、入力ビット列を所定ビット数毎
に2以上のビット列に分割する分割手段と、 上記分割された各ビット列をインデックスとして、符号
長算出パラメータあるいは復号値算出パラメータが登録
されたテーブルを参照して、上記符号長算出パラメータ
あるいは復号値算出パラメータを得るルックアップ手段
と、 上記得られた各パラメータに基づいて、符号長あるいは
復号値を演算する演算手段として機能させる復号化処理
プログラムが記録されたことを特徴とするコンピュータ
読み出し可能なプログラム記録媒体。7. A dividing means for dividing the input bit string into two or more bit strings for every predetermined number of bits by inputting a bit string having a maximum bit length which is a fixed bit length in a variable length code, to the computer. A lookup means for obtaining the code length calculation parameter or the decoded value calculation parameter by referring to a table in which the code length calculation parameter or the decoded value calculation parameter is registered using the bit string as an index, and based on each of the obtained parameters. A computer-readable program recording medium having recorded thereon a decoding processing program which functions as a calculating means for calculating a code length or a decoded value.
ビット列を入力として、入力ビット列を所定ビット数毎
に2以上のビット列に分割する分割手段と、 上記分割された各ビット列をインデックスとして、符号
番号算出パラメータが登録された第1のテーブルを参照
して、上記符号番号算出パラメータを得る第1のルック
アップ手段と、 上記得られた符号番号算出パラメータに基づいて、符号
番号を演算する演算手段と、 上記演算された符号番号をインデックスとして、上記符
号番号と符号長あるいは復号値とが対応付けられて登録
された第2のテーブルを参照して、上記符号長あるいは
復号値を得る第2のルックアップ手段として機能させる
復号化処理プログラムが記録されたことを特徴とするプ
ログラム記録媒体。8. A dividing means, which divides an input bit string into two or more bit strings for each predetermined number of bits, by inputting a bit string having a maximum bit length which is a fixed bit length in a variable length code, to a computer. A first lookup means for obtaining the code number calculation parameter by referring to a first table in which the code number calculation parameter is registered using the bit string as an index, and a code based on the code number calculation parameter obtained above. The calculation means for calculating the number and the second table in which the code number and the code length or the decoded value are registered in association with each other by using the calculated code number as an index are referred to, and the code length or the decoding is obtained. programming the decoding program to function as a second look-up means for obtaining a value is equal to or recorded Non-recording medium.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP10926499A JP3533339B2 (en) | 1999-04-16 | 1999-04-16 | Decoding device, decoding method, and program recording medium |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP10926499A JP3533339B2 (en) | 1999-04-16 | 1999-04-16 | Decoding device, decoding method, and program recording medium |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2000307433A JP2000307433A (en) | 2000-11-02 |
| JP3533339B2 true JP3533339B2 (en) | 2004-05-31 |
Family
ID=14505772
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP10926499A Expired - Fee Related JP3533339B2 (en) | 1999-04-16 | 1999-04-16 | Decoding device, decoding method, and program recording medium |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3533339B2 (en) |
Families Citing this family (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP2495878A3 (en) * | 2005-05-13 | 2012-09-26 | Qualcomm, Inc. | Method and apparatus for improved multimedia decoder |
| WO2007108395A1 (en) * | 2006-03-23 | 2007-09-27 | Nec Corporation | Variable-length code decoder and decoding method |
| JP4973626B2 (en) * | 2008-08-11 | 2012-07-11 | ヤマハ株式会社 | Variable length code decoder |
| CN102623012B (en) | 2011-01-26 | 2014-08-20 | 华为技术有限公司 | Vector joint coding and decoding method, and codec |
-
1999
- 1999-04-16 JP JP10926499A patent/JP3533339B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2000307433A (en) | 2000-11-02 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US9235651B2 (en) | Data retrieval apparatus, data storage method and data retrieval method | |
| US7797360B2 (en) | Sortable floating point numbers | |
| JP2534465B2 (en) | Data compression apparatus and method | |
| US20170038978A1 (en) | Delta Compression Engine for Similarity Based Data Deduplication | |
| RU2629440C2 (en) | Device and method for acceleration of compression and decompression operations | |
| JPH0879092A (en) | Mevhod for compressing and compression-releasing data and device therefor | |
| US7773005B2 (en) | Method and apparatus for decoding variable length data | |
| CN107577432A (en) | A kind of security bargain data compression method and device | |
| JP2000132497A (en) | Method and device for dma control | |
| CN119003594A (en) | Data processing method, data processing device, many-core system, equipment and medium | |
| JP3533339B2 (en) | Decoding device, decoding method, and program recording medium | |
| US12001237B2 (en) | Pattern-based cache block compression | |
| WO2007108395A1 (en) | Variable-length code decoder and decoding method | |
| CN117113106B (en) | Data compression method and device, electronic equipment and storage medium | |
| JP7074989B2 (en) | Data compressor, data compression method, data compression program, data decompression device, data decompression method, data decompression program and data compression decompression system | |
| FR2960988A1 (en) | METHOD OF COMPRESSION AND DECOMPRESSION OF AN EXECUTABLE OR INTERPRETABLE PROGRAM | |
| EP1378999B1 (en) | Code compression process, system and computer program product therefor | |
| CN118921067B (en) | A data encoding method, operation method, device, equipment and medium | |
| CN112486976A (en) | Data processing method, device, network equipment and storage medium | |
| CN113535709A (en) | Data processing method and device and electronic equipment | |
| JP2003513313A (en) | Variable length decoding | |
| CN114610513B (en) | A method, device and equipment for processing fault data | |
| JP2003273746A (en) | Variable length code decoding device | |
| JP3221252B2 (en) | Huffman decoder | |
| JP3113765B2 (en) | Variable length code decoding circuit |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20031126 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20031202 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040127 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20040302 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040308 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080312 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090312 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100312 Year of fee payment: 6 |
|
| LAPS | Cancellation because of no payment of annual fees |