JP2000307433A - 復号化装置および復号化方法、並びに、プログラム記録媒体 - Google Patents

復号化装置および復号化方法、並びに、プログラム記録媒体

Info

Publication number
JP2000307433A
JP2000307433A JP11109264A JP10926499A JP2000307433A JP 2000307433 A JP2000307433 A JP 2000307433A JP 11109264 A JP11109264 A JP 11109264A JP 10926499 A JP10926499 A JP 10926499A JP 2000307433 A JP2000307433 A JP 2000307433A
Authority
JP
Japan
Prior art keywords
code
length
decoded value
calculation parameter
bit string
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP11109264A
Other languages
English (en)
Other versions
JP3533339B2 (ja
Inventor
Nobuyoshi Umiki
延佳 海木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sharp Corp
Original Assignee
Sharp Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sharp Corp filed Critical Sharp Corp
Priority to JP10926499A priority Critical patent/JP3533339B2/ja
Publication of JP2000307433A publication Critical patent/JP2000307433A/ja
Application granted granted Critical
Publication of JP3533339B2 publication Critical patent/JP3533339B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

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

Abstract

(57)【要約】 【課題】 分岐条件のない復号化処理アルゴリズムを適
用して高速に可変長符号を復号化する。 【解決手段】 分割器1は、最大符号長の入力ビット列
を分割し、上位,中位,下位の各2ビットを第1,第2,第
3ルックアップ部3,5,7に出力する。各ルックアップ
部3,5,7は、順次、入力される2ビットのビット列と
前段のルックアップ部からの「表アドレス」とをインデッ
クスとして対応するテーブル格納部2,4,6のテーブル
を検索して、「符号長算出パラメータ」と「復号値算出パ
ラメータ」とを求めて演算器8に出力する。演算器8
は、「符号長算出パラメータ」及び「復号値算出パラメー
タ」の夫々を加算して、「符号長」及び「復号値」を得る。
したがって、各処理部に分岐条件のない復号化処理アル
ゴリズムを適用でき、復号化処理を更に高速に実行する
ことができる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、ハフマン符号等
の可変長符号を復号化する復号化装置および復号化方
法、並びに、復号化プログラムが記録されたプログラム
記録媒体に関する。
【0002】
【従来の技術】ハフマン符号等の可変長符号を復号化す
る方法としては、大きく分けて3つの方法がある。第1
の方法は、可変長符号の先頭ビットから1ビット毎に、
2進木によって目的とする可変長符号を決定する方法で
ある。また、第2の方法は、可変長符号をビット数と共
にテーブル化し、このテ―ブルを順次比較する方法であ
る。また、第3の方法は、可変長符号そのものを最大ビ
ット長分の大きさを有するテーブルにテーブル化し、こ
のテーブルを検索する方法である。
【0003】上記第1の方法では、1ビット毎に比較す
るので、1つの可変長符号を復号化するのに長い処理時
間を必要とする。また、第2の方法では、最悪の場合、
総てのテーブルを比較しなければ復号化できず、長い処
理時間を必要とする。また、第3の方法では、一度のテ
ーブル検索で処理することができ、非常に処理時間が少
なくて済むという利点がある。ところが、可変長符号の
最大ビット長が大きい場合には、大きな容量のメモリが
必要である。
【0004】そこで、上述の欠点を解決するために、上
記第1の方法と第3の方法とを組み合わせて、可変長符
号化されたデータを復号化する際の可変長符号のサーチ
を高速且つ少ない容量のテーブルで行うために、特開平
7−107303号公報に開示されているような「ハフ
マン符号の復号化方法」が提案されている。
【0005】この「ハフマン符号の復号化方法」において
は、ハフマン符号を、符号長が8ビットまでの第1グル
ープと、9ビットから12ビットまでの第2グループ
と、13ビット以上の第3グループとに分ける。そし
て、各グループ毎に、ハフマン符号をアドレスとし、そ
のアドレスに対応付けて符号長および有効係数を示した
データを書き込むことによって、第1テーブルから第3
テーブルまでのテーブルを予め作成しておく。そして、
復号化時には、第1テーブルから第3テーブルまでを参
照して、ハフマン符号化されたデータの符号長および有
効係数を確定することによって、目的のハフマン符号を
復号化するのである。
【0006】また、同様に、可変長符号を復号する際
に、高速化を図ると共にサーチテーブル容量の増大に対
処するために、特開平9−246989号公報に開示さ
れているような「復号装置及びその方法」が提案されてい
る。
【0007】この「復号装置及びその方法」においては、
可変長符号に関してその最大ビット長以下である解析長
を解析長レジスタから選択し、ビット取出部によって抽
出された上記解析長分のビット列により生成されたアド
レスに基づいて、デコードRAMをアクセスする。この
処理を可変長符号の全ビットに関して終了するまで繰り
返し、最終的に復号値を得る。また、最終段階のデコー
ドRAMに対するアクセス時には、デコードエンド信号
に基づいて、取出ビット長コントローラにおいて解析長
を最低限に制限する。
【0008】また、可変長符号を復号化する際に、複数
の変換テーブルの容量全体を低減してメモリ容量を削減
するために、特開平9−298470号公報に開示され
ているような「符号復号化装置」が提案されている。
【0009】この「符号復号化装置」においては、複数の
変換テーブルの中から同一の符号に関して、同一の変換
結果が設定されている共通部分をまとめた共通変換テー
ブルと、共通部分が除かれた各復号項目毎の個別変換テ
ーブルとを設けている。そして、符号復号部は、共通変
換テーブルを参照して符号を復号化できない場合は、各
復号化項目毎の個別変換テーブルを参照して復号化を行
う。このように、複数の変換テーブルに同―のデータが
重複して格納されるような無駄を無くすことによって、
複数の変換テーブルの容量全体を低減している。
【0010】
【発明が解決しようとする課題】しかしながら、上記特
開平7−107303号公報に開示された「ハフマン符
号の復号化方法」においては、以下のような問題があ
る。すなわち、第1から第3の3つのテーブルを参照す
る際に、ハフマン符号が8ビット以下であって第1テー
ブルの参照によって決定したか否かの判定、および、ハ
フマン符号が9ビットから12ビットであって第2テー
ブルの参照によって決定したか否かの判定を行う必要が
ある。そのために、復号化処理を行う場合に、平均的に
は処理量は削減されているにも拘わらず、最悪の場合を
考えて処理時間を見積もらなければならず、処理時間を
正確に見積ることが難しい。
【0011】また、特開平9−246989号公報に開
示された「復号装置及びその方法」においては以下のよう
な問題がある。すなわち、終了検知手段(比較器)を有し
て、上記特開平7−107303号公報に開示された
「ハフマン符号の復号化方法」の場合と同様に、読み込ん
だ可変符号における復号化されたビット長とハフマン符
号のコード長とを比較して復号終了を検知して上記デコ
ードエンド信号を発生する必要がある。
【0012】また、特開平9−298470号公報に開
示された「符号復号化装置」においては、以下のような問
題がある。すなわち、入力された可変長符号が共通テー
ブル上にあるか否かの判定を行う必要があるために、処
理量が多くなってしまう。さらに、変換テーブルに何ら
かの処理を加えない場合は少なく、共通変換テーブルに
まとめられる部分は少ない。したがって、メモリ容量の
削減はあまり期待できない。
【0013】上述のように、何れの場合にも、復号化処
理には判定を行う必要があり、復号化処理アルゴリズム
には判定に伴う分岐命令が存在する。ところで、LSI
(大規模集積回路)やCPU(中央演算処理装置)の処理技
術の進展に伴って、1クロックに多くの命令が実行でき
るようになると共に、上記CPUのクロック速度向上に
伴って命令実行時のパイプライン化が進んできている。
そのために、上記判定に伴う分岐命令によるパイプライ
ンの再読み込みのペナルティが大きくなり、分岐条件の
ないアルゴリズムの方が速く実行可能になってきてい
る。
【0014】そこで、上記各従来の復号化装置あるいは
復号化方法に対して、分岐条件のない復号化処理アルゴ
リズムを適用しようとすれば、上述のテーブルやデコー
ドRAMや変換テーブルのメモリ容量が大きくなってし
まう。したがって、サーチテーブル容量を削減するとい
う当初の目的を達成できなくなるという問題がある。
【0015】そこで、この発明の目的は、サーチテーブ
ル容量の削減を図りつつ、分岐条件のない復号化処理ア
ルゴリズムを適用して高速に可変長符号を復号化できる
復号化装置及び復号化方法、並びに、プログラム記録媒
体を提供することにある。
【0016】
【課題を解決するための手段】上記目的を達成するた
め、請求項1に係る発明の復号化装置は、可変長符号の
最大ビット長のビット列を入力として,入力ビット列を
所定ビット数毎に2以上のビット列に分割する分割手段
と、上記分割手段によって分割される各ビット列に対応
したテーブルが格納されたテーブル格納手段と、上記分
割手段によって分割された各ビット列をインデックスと
して上記テーブルを参照し,符号長あるいは復号値を算
出するためのパラメータを得るルックアップ手段と、上
記ルックアップ手段で得られたパラメータに基づいて,
上記符号長あるいは復号値を演算する演算手段を備えた
ことを特徴とする。
【0017】上記構成によれば、分割手段によって入力
ビット列が分割されて成る所定ビット数毎のビット列が
ルックアップ手段に入力されると、上記ルックアップ手
段によって、入力されたビット列をインデックスとして
テーブルが参照されて符号長あるいは復号値を得るため
のパラメータが得られる。そして、このパラメータが演
算手段に入力されると、上記演算手段によって、上記入
力パラメータに基づいて可変長符号の符号長あるいは復
号値が演算される。
【0018】このように、上記分割手段,ルックアップ
手段および演算手段の各処理手段によって、互いに他の
処理手段の処理が終了したかを判定することなく、前段
の処理手段からの処理結果が入力されると自らの処理を
実行して処理結果を後段の処理手段へ出力して順次処理
が実行される。したがって、分岐条件のないアルゴリズ
ムが適用されて、復号化処理が高速に実行される。
【0019】また、請求項2に係る発明は、請求項1に
係る発明の復号化装置において、上記テーブルには,符
号長算出用の符号長算出パラメータあるいは復号値算出
用の復号値算出パラメータが登録されており、上記演算
手段は,上記ルックアップ手段から出力される上記符号
長算出パラメータあるいは復号値算出パラメータに基づ
いて,上記符号長あるいは復号値を演算することを特徴
としている。
【0020】上記構成によれば、上記テーブルに登録さ
れた符号長算出パラメータあるいは復号値算出パラメー
タに基づく上記演算手段による演算によって、上記可変
長符号の符号長あるいは復号値が容易に求められる。
【0021】また、請求項3に係る発明の復号化装置
は、可変長符号の最大ビット長のビット列を入力とし
て,入力ビット列を所定ビット数毎に2以上のビット列
に分割する分割手段と、符号番号算出パラメータが登録
されると共に,上記分割手段によって分割される各ビッ
ト列に対応した第1テーブルが格納された第1テーブル
格納手段と、上記分割手段によって分割された各ビット
列をインデックスとして上記第1テーブルを参照し,符
号番号算出パラメータを得る第1ルックアップ手段と、
上記第1ルックアップ手段で得られたパラメータに基づ
いて符号番号を演算する演算手段と、上記可変長符号の
符号番号と符号長あるいは復号値とが対応付けられて登
録された第2テーブルが格納された第2テーブル格納手
段と、上記演算手段で得られた符号番号をインデックス
として上記第2テーブルを参照し,上記符号長あるいは
復号値を得る第2ルックアップ手段を備えたことを特徴
としている。
【0022】上記構成によれば、分割手段によって入力
ビット列が分割されて成る所定ビット数毎のビット列が
第1ルックアップ手段に入力されると、上記第1ルック
アップ手段によって、入力されたビット列をインデック
スとして第1テーブルが参照されて符号番号算出パラメ
ータが得られる。そして、上記演算手段によって、上記
符号番号算出パラメータに基づいて符号番号が演算され
る。そうすると、第2ルックアップ手段によって、上記
符号番号をインデックスとして第2テーブルが参照され
て可変長符号の符号長あるいは復号値が得られる。
【0023】このように、上記分割手段,第1ルックア
ップ手段,演算手段及び第2ルックアップ手段の各処理
手段によって、互いに他の処理手段の処理が終了したか
を判定することなく、前段の処理手段からの処理結果が
入力されると自らの処理を実行して処理結果を後段の処
理手段へ出力して順次処理が実行される。したがって、
分岐条件のないアルゴリズムが適用されて復号化処理が
高速に実行される。
【0024】また、請求項4に係る発明は、請求項1あ
るいは請求項3に係る発明の復号化装置において、上記
分割手段によって分割される各ビット列に対応した複数
のテーブルを―つのテーブルに集約したことを特徴とし
ている。
【0025】上記構成によれば、請求項1に係る発明に
おけるルックアップ手段あるいは請求項3に係る発明に
おける第1ルックアップ手段によって、テーブル格納手
段あるいは第1テーブル格納手段に格納された一つのテ
ーブルのみが参照されて、上記各パラメータが得られ
る。こうして、少ない容量のテーブルを用いて上記符号
長や復号値や符号番号を算出するためのパラメータが得
られる。
【0026】また、請求項5に係る発明の復号化方法
は、可変長符号の最大ビット長のビット列を入力とし
て,入力ビット列を所定ビット数毎に2以上のビット列
に分割するステップと、上記分割された各ビット列をイ
ンデックスとして,符号長算出パラメータあるいは復号
値算出パラメータが登録されたテーブルを参照して,上
記符号長算出パラメータあるいは復号値算出パラメータ
を得るステップと、上記得られた各パラメータに基づい
て,符号長あるいは復号値を演算するステップを備えた
ことを特徴としている。
【0027】上記構成によれば、請求項1に係る発明の
場合と同様に、入力ビット列を所定ビット数毎のビット
列に分割するステップ、上記分割されたビット列をイン
デックスとしてテーブルを参照してパラメータを得るス
テップ、および、上記得られた各パラメータに基づいて
符号長あるいは復号値を演算するステップの各ステップ
が、他のステップの終了を判定することなく、前段のス
テップからの処理結果が入力されると順次実行される。
したがって、分岐条件のないアルゴリズムが適用され
て、復号化処理が高速に実行される。
【0028】また、請求項6に係る発明の復号化方法
は、可変長符号の最大ビット長のビット列を入力とし
て,入力ビット列を所定ビット数毎に2以上のビット列
に分割するステップと、上記分割された各ビット列をイ
ンデックスとして,符号番号算出パラメータが登録され
た第1テーブルを参照して上記符号番号算出パラメータ
を得るステップと、上記得られた符号番号算出パラメー
タに基づいて符号番号を演算するステップと、上記演算
された符号番号をインデックスとして,上記符号番号と
符号長あるいは復号値とが対応付けられて登録された第
2テーブルを参照して,上記符号長あるいは復号値を得
るステップを備えたことを特徴としている。
【0029】上記構成によれば、請求項3に係る発明の
場合と同様に、入力ビット列を所定ビット数毎のビット
列に分割するステップ、上記分割されたビット列をイン
デックスとして第1テーブルを参照してパラメータを得
るステップ、上記得られたパラメータに基づいて符号番
号を演算するステップ、および、上記演算された符号番
号をインデックスとして第2テーブルを参照して上記符
号長あるいは復号値を得るステップの各ステップが、他
のステップの終了を判定することなく、前段のステップ
からの処理結果が入力されると順次実行される。したが
って、分岐条件のないアルゴリズムが適用されて、復号
化処理が高速に実行される。
【0030】また、請求項7に係る発明のプログラム記
録媒体は、コンピュータを、可変長符号の最大ビット長
のビット列を入力として,入力ビット列を所定ビット数
毎に2以上のビット列に分割する分割手段と、上記分割
された各ビット列をインデックスとして,符号長算出パ
ラメータあるいは復号値算出パラメータが登録されたテ
ーブルを参照して,上記符号長算出パラメータあるいは
復号値算出パラメータを得るルックアップ手段と、上記
得られた各パラメータに基づいて符号長あるいは復号値
を演算する演算手段として機能させる復号化処理プログ
ラムが記録されたことを特徴としている。
【0031】上記構成によれば、請求項5に係る発明の
場合と同様に、入力ビット列を所定ビット数毎のビット
列に分割する処理、上記分割されたビット列をインデッ
クスとしてテーブルを参照してパラメータを得る処理、
および、上記得られた各パラメータに基づいて符号長あ
るいは復号値を演算する処理の各処理が、他の処理が終
了したかを判定することなく順次実行される。したがっ
て、分岐条件のないアルゴリズムが適用されて、復号化
処理が高速に実行される。
【0032】また、請求項8に係る発明のプログラム記
録媒体は、コンピュータを、可変長符号の最大ビット長
のビット列を入力として,入力ビット列を所定ビット数
毎に2以上のビット列に分割する分割手段と、上記分割
された各ビット列をインデックスとして,符号番号算出
パラメータが登録された第1テーブルを参照して,上記
符号番号算出パラメータを得る第1ルックアップ手段
と、上記得られた符号番号算出パラメータに基づいて符
号番号を演算する演算手段と、上記演算された符号番号
をインデックスとして,上記符号番号と符号長あるいは
復号値とが対応付けられて登録された第2テーブルを参
照して,上記符号長あるいは復号値を得る第2ルックア
ップ手段として機能させる復号化処理プログラムが記録
されたことを特徴としている。
【0033】上記構成によれば、請求項6に係る発明の
場合と同様に、入力ビット列を所定ビット数毎のビット
列に分割する処理、上記分割されたビット列をインデッ
クスとして第1テーブルを参照してパラメータを得る処
理、上記得られたパラメータに基づいて符号番号を演算
する処理、および、上記符号番号をインデックスとして
第2テーブルを参照して上記符号長あるいは復号値を得
る処理の各処理が、他の処理が終了したかを判定するこ
となく順次実行される。したがって、分岐条件のないア
ルゴリズムが適用されて、復号化処理が高速に実行され
る。
【0034】
【発明の実施の形態】以下、この発明を図示の実施の形
態により詳細に説明する。 <第1実施の形態>図1は、本実施の形態の復号化装置
におけるブロック図である。本実施の形態における復号
化装置は可変長符号の復号化装置であり、従来の復号化
装置に比して、入力された可変長符号に対する復号化が
終了したか否かを判定する判定手段が無く、代わりに演
算器8が付加されている。以下、詳細に説明する。
【0035】分割器1には、本復号化装置が搭載された
システムから、可変長符号における最大符号長のビット
列が入力される。ここでは、一例として表1に示すよう
な可変長符号を考える。
【表1】 上記表1における「符号番号」は、各可変長符号に一対一
に対応するように付けられた番号であり、任意の番号で
差し支えない。尚、表1に示す可変長符号の場合は最大
符号長は6ビットであるから、分割器1には6ビットの
ビット列が入力される。
【0036】そうすると、上記分割器1は、この入力さ
れた6ビットのビット列を、上位2ビット,中位2ビッ
ト,下位2ビットの3つに分割する。そして、上記上位
2ビットを第1ルックアップ部3に出力し、中位2ビッ
トを第2ルックアップ部5に出力し、下位2ビットを第
3ルックアップ部7に出力する。尚、各ルックアップ部
に出力するビット数は1ビット以上の任意のビット数で
よく、ルックアップ部の数は入力される可変長符号の最
大符号長と上記各ルックアップ部に出力するビット数と
から適宜設定すればよい。
【0037】上記第1ルックアップ部3は、上記入力さ
れた上位2ビットのビット列をアドレスとして、第1テ
ーブル格納部2に格納された第1テーブルを引き、第1
テーブルにおける表アドレス欄に登録されている第2テ
ーブルへのアドレス(表アドレス)と、符号長算出パラメ
ータ欄に登録されている符号長算出パラメータと、復号
値算出パラメータ欄に登録されている復号値算出パラメ
ータを読み出す。表2に、上記第1テーブルの一例を示
す。
【表2】 そして、上記表アドレスを第2ルックアップ部5へ出力
し、符号長算出パラメータおよび復号値算出パラメータ
を演算器8に出力する。
【0038】上記第2ルックアップ部5は、上記第1ル
ックアップ部3から入力された第2テーブルへの表アド
レスと分割器1から入力された中位2ビットのビット列
とをインデックスとして第2テーブルのアドレスを求
め、第2テーブル格納部4に格納された第2テーブルを
引く。そして、第2テーブルにおける表アドレス欄に登
録されている第3テーブルへの表アドレスと、符号長算
出パラメータ欄に登録されている符号長算出パラメータ
と、復号値算出パラメータ欄に登録されている復号値算
出パラメータを読み出す。表3に、上記第2テーブルの
一例を示す。
【表3】 そして、上記表アドレスを第3ルックアップ部7へ出力
し、符号長算出パラメータおよび復号値算出パラメータ
を演算器8に出力する。
【0039】上記第3ルックアップ部7は、上記第2ル
ックアップ部5から入力された第3テーブルへの表アド
レスと分割器1から入力された下位2ビットのビット列
とをインデックスとして第3テーブルのアドレスを求
め、第3テーブル格納部6に格納された第3テーブルを
引く。そして、第3テーブルにおける符号長算出パラメ
ータ欄に登録されている符号長算出パラメータと、復号
値算出パラメータ欄に登録されている復号値算出パラメ
ータを読み出す。表4に、上記第3テーブルの一例を示
す。
【表4】 そして、上記符号長算出パラメータおよび復号値算出パ
ラメータを演算器8に出力する。
【0040】上記演算器8は、上記第1,第2,第3ルッ
クアップ部3,5,7から入力される符号長算出パラメー
タと復号値算出パラメータとに基づいて、可変長符号の
符号長と復号値とを演算し、演算結果を出力する。
【0041】ここで、本実施の形態においては、第1ル
ックアップ部3,第2ルックアップ部5,第3ルックアッ
プ7および各ルックアップ部に対応する第1テーブル〜
第3テーブルの3つのテーブルは、説明の都合上、上
位,中位,下位の3段の構成にしているが、上述したよう
に、2段以上の構成であれば特に段数を限定するもので
はない。
【0042】図2は、図1における分割器1,第1ルッ
クアップ部3,第2ルックアップ部5,第3ルックアップ
部7および演算器8によって実行される復号化処理の概
略手順を示すフローチャートである。以下、図2に従っ
て、本実施の形態における復号化処理手順について説明
する。
【0043】先ず、ステップS1で、上記分割器1によ
って、入力された最大符号長(表1に示す可変長符号の
場合には6ビット)のビット列が、上位2ビット,中位2
ビット,下位2ビットの3つに分割される。そして、上
位2ビットが第1ルックアップ部3に送出され、中位2
ビットが第2ルックアップ部5に送出され、下位2ビッ
トが第3ルックアップ部7に送出される。尚、点線は分
割されたビット列データの流れを示している。
【0044】次に、ステップS2で、上記第1ルックア
ップ部3によって、入力された上位2ビット列をアドレ
スとして第1テーブルが引かれ、第2テーブルへの表ア
ドレスと符号長算出パラメータと復号値算出パラメータ
とが読み出される。そして、上記表アドレスが第2ルッ
クアップ部5に送出され、上記符号長算出パラメータお
よび復号値算出パラメータが演算器8に送出される。
【0045】次に、ステップS3で、上記第2ルックア
ップ部5によって、入力された中位2ビット列と第1ル
ックアップ部3からの表アドレスとをインデックスとし
て第2テーブルのアドレスが求められ、第2テーブルが
引かれて第3テーブルへの表アドレスと符号長算出パラ
メータと復号値算出パラメータとが読み出される。そし
て、上記表アドレスが第3ルックアップ部7に送出さ
れ、上記符号長算出パラメータおよび復号値算出パラメ
ータが演算器8に送出される。
【0046】次に、ステップS4で、上記第3ルックア
ップ部7によって、入力された下位2ビット列と第2ル
ックアップ部5からの表アドレスとをインデックスとし
て第3テーブルへのアドレスが求められ、第3テーブル
が引かれて符号長算出パラメータと復号値算出パラメー
タとが読み出される。そして、上記符号長算出パラメー
タおよび復号値算出パラメータが演算器8に送出され
る。尚、破線は、符号長算出パラメータおよび復号値算
出パラメータの流れを示している。
【0047】次に、ステップS5で、上記演算器8によ
って、各ルックアップ部3,5,7から出力された符号長
算出パラメータと復号値算出パラメータとに基づいて、
可変長符号の符号長と復号値とが演算され、演算結果が
出力される。そうした後、復号化処理を終了する。
【0048】このように、本実施の形態における復号化
処理においては、分割部1,第1ルックアップ部3,第2
ルックアップ部5,第3ルックアップ部7および演算器
8の各処理部は、順次各々の処理を実行するようになっ
ている。したがって、復号化処理においては判定を行う
必要はない。そのために、復号化処理アルゴリズムには
判定に伴う分岐命令を記述する必要がなく、復号化処理
を上記従来の復号化装置や復号化方法よりも速く実行可
能である。
【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」を出力する。
【0050】そうすると、上記第1ルックアップ部3
は、入力された上位2ビット「00」をアドレスとして第
1テーブルを引き、符号長算出パラメータ「2」と復号値
算出パラメータ「0」と第2テーブルへの表アドレス「2-
a」とが得られる。そして、表アドレス「2-a」が第2ル
ックアップ部5に送出される。一方、符号長算出パラメ
ータ「2」と復号値算出パラメータ「0」とは演算器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に送出される。
【0052】次に、上記第3ルックアップ部7は、上記
分割器1から入力された下位2ビット「01」と第2ルッ
クアップ部5から入力された表アドレス「3-a」とをイ
ンデックスとして第3テーブルのアドレスを求め、その
アドレスで第3テーブルを引く。そして、符号長算出パ
ラメータ「0」と復号値算出パラメータ「0」とが得られ
る。そして、符号長算出パラメータ「0」と復号値算出パ
ラメータ「0」とが演算器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」とを出力
するのである。
【0054】このように、本実施の形態においては、最
大符号長が6ビットの可変長符号を2ビットずつ分割
し、上位2ビットをインデックスとして「符号長算出パ
ラメータ」,「復号値算出パラメータ」および「次テーブル
への表アドレス」を検索するための第1テーブルを作成
して第1テーブル格納部2に格納する。同様に、中位2
ビットと第1テーブルの「表アドレス」とをインデックス
として「符号長算出パラメータ」,「復号値算出パラメー
タ」および「次テーブルへの表アドレス」を検索するため
の第2テーブルを作成して第2テーブル格納部4に格納
する。また、下位2ビットと第2テーブルの「表アドレ
ス」とをインデックスとして「符号長算出パラメータ」お
よび「復号値算出パラメータ」を検索するための第3テー
ブルを作成して第3テーブル格納部6に格納する。
【0055】但し、各テーブルの両パラメータの要素値
として、当該テーブルを引いて復号値が決定する可変長
符号に相当するアドレスにはその符号の符号長と復号値
とを与え、それ以外のアドレスには「0」を与える。すな
わち、表1に例示された可変長符号で具体的に言えは、
第1テーブルの場合は符号「00」、第2テーブルの場合
は符号「010」〜「1101」、第3テーブルの場合は符
号「11100」〜「111111」に相当するアドレス
に、その符号の符号長と復号値を与えるのである。
【0056】そして、上記分割器1で、入力される最大
符号長(6ビット)のビット列を2ビットずつ分割し、上
位2ビットを第1ルックアップ部3に出力し、中位2ビ
ット第2ルックアップ部5に出力し、下位2ビットを第
3ルックアップ部7に出力する。各ルックアップ部3,
5,7は、順次、入力される2ビットのビット列と前段
のルックアップ部からの「表アドレス」とをインデックス
として対応するテーブルを検索して、「符号長算出パラ
メータ」,「復号値算出パラメータ」および「表アドレス」を
得る。そして、「符号長算出パラメータ」および「復号値
算出パラメータ」を演算器8に出力する。演算器8は、
各テーブルが上述のような構成を有しているために、各
ルックアップ部3,5,7から入力される「符号長算出パ
ラメータ」および「復号値算出パラメータ」の夫々を加算
することによって、「符号長」および「復号値」を得ること
ができる。
【0057】このように、本実施の形態においては、入
力された可変長符号のビット列を上位ビット列,中位ビ
ット列,下位ビット列に分割し、上位ビット列から各ビ
ット列毎のテーブルを順次探索して行くことによって復
号化を行うので、復号化を高速且つ少ない容量のテーブ
ルで行うことができる。また、その際に、上記分割器
1,第1ルックアップ部3,第2ルックアップ部5,第3
ルックアップ部7および演算器8の各処理部は、互いに
他の処理部の処理終了を判定する必要がなく、分岐条件
のない復号化処理アルゴリズムを適用できる。したがっ
て、本実施の形態によれば、復号化処理を更に高速に実
行することができるのである。
【0058】<第2実施の形態>図3は、本実施の形態
の復号化装置におけるブロック図である。本実施の形態
は、第1実施の形態における第1,第2,第3の各テーブ
ルの更なる容量削減を図ったものである。
【0059】分割器11は、第1実施の形態における分
割器1と同様の構成を有して同様に動作する。第1ルッ
クアップ部13は、入力された上位2ビットのビット列
をアドレスとして、第1テーブル格納部12に格納され
た第1テーブルを引き、第1テーブルにおける表アドレ
ス欄に登録されている表アドレスと、符号番号パラメー
タ欄に登録されている符号番号パラメータを読み出す。
表5に、上記第1テーブルの一例を示す。
【表5】 そして、上記表アドレスを第2ルックアップ部15へ出
力し、符号番号パラメータを演算器18に出力する。
【0060】上記第2ルックアップ部15および第3ル
ックアップ部17は、第1実施の形態の場合と同様に、
前段のルックアップ部から入力された表アドレスと分割
器11から入力された中位,下位2ビットのビット列と
をインデックスとして第2,第3テーブルのアドレスを
求め、第2,第3テーブル格納部14,16に格納された
第2,第3テーブルを引く。そして、各テーブルから表
アドレスや符号番号パラメータを読み出す。表6に第2
テーブルの一例を、表7に第3テーブルの一例を示す。
【表6】
【表7】 そして、上記表アドレスを次段のルックアップ部へ出力
し、符号番号パラメータを演算器18に出力する。
【0061】上記演算器18は、上記第1,第2,第3ル
ックアップ部13,15,17から入力される符号番号パ
ラメータに基づいて、可変長符号の符号番号を演算し、
演算結果を第4ルックアップ部19に出力する。
【0062】最後に、上記第4ルックアップ部19は、
上記入力された符号番号をアドレスとして、第4テーブ
ル格納部20に格納された第4テーブルを引き、第4テ
ーブルにおける符号長欄に登録されている符号長と、復
号値欄に登録されている復号値を読み出す。表8に、上
記第4テーブルの一例を示す。
【表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に進む。
【0064】ステップS16で、上記第4ルックアップ部
19によって、入力された符号番号をアドレスとして第
4テーブルが引かれ、符号長と復号値が得られる。そし
て、得られた符号長と復号値が出力される。そうした
後、復号化処理を終了する。
【0065】このように、本実施の形態の場合にも分割
部11,第1ルックアップ部13,第2ルックアップ部1
5,第3ルックアップ部17,演算器18および第4ルッ
クアップ部19の各処理部は順次各々の処理を実行する
ので、復号化処理アルゴリズムには判定に伴う分岐命令
を記述する必要がない。したがって、復号化処理を上記
従来の復号化装置や復号化方法よりも速く実行可能であ
る。
【0066】以下、第1実施の形態の場合と同様に、可
変長符号のビット列「000101」が分割器11に入力
された場合を例に上記構成を有する復号化装置の動作
を、より具体的に説明する。分割器11は、入力ビット
列「000101」を、上位2ビット,中位2ビット,下位
2ビットの3つに分割する。そして、第1ルックアップ
部13へ上位2ビット「00」を出力し、第2ルックアッ
プ部15へ中位2ビット「01」を出力し、第3ルックア
ップ部17へ下位2ビット「01」を出力する。
【0067】そうすると、上記第1ルックアップ部13
は、入力された上位2ビット「00」をアドレスとして第
1テーブルを引き、符号番号パラメータ「0」と第2テー
ブルへの表アドレス「2-a」とが得られる。そして、表
アドレス「2-a」が第2ルックアップ部15に送出され
る一方、符号番号パラメータ「0」は演算器18に送出さ
れる。
【0068】次に、上記第2ルックアップ部15は、上
記分割器11から入力された中位2ビット「01」と第1
ルックアップ部13から入力された表アドレス「2-a」
とをインデックスとして第2テーブルのアドレスを求
め、そのアドレスで第2テーブルを引く。そして、符号
番号パラメータ「0」と第3テーブルへの表アドレス「3-
a」とが得られる。そして、表アドレス「3-a」が第3ル
ックアップ部17に送出される一方、符号番号パラメー
タ「0」は演算器18に送出される。
【0069】次に、上記第3ルックアップ部17は、上
記分割器11から入力された下位2ビット「01」と第2
ルックアップ部15から入力された表アドレス「3-a」
とをインデックスとして第3テーブルのアドレスを求
め、そのアドレスで第3テーブルを引く。そして、符号
番号パラメータ「0」が得られる。そして、符号番号パラ
メータ「0」が演算器18に送出される。
【0070】そうすると、上記演算器18は、上記第
1,第2,第3ルックアップ13,15,17から出力され
た符号番号パラメータ「0」,「0」,「0」を加算して入力可
変長符号の符号番号「0」を求める。そして、上記求めら
れた符号番号「0」を第4ルックアップ部19に出力す
る。
【0071】最後に、上記第4ルックアップ部19は、
上記演算器18から入力された符号番号「0」をアドレス
として第4テーブルを引き、符号長「2」と復号値「0」と
を得る。そして、得られた符号長「2」と復号値「0」とを
出力するのである。
【0072】このように、本実施の形態においては、最
大符号長が6ビットの可変長符号を2ビットずつ分割す
る。そして、上位2ビットをインデックスとして「符号
番号パラメータ」および「次テーブルへの表アドレス」を
検索するための第1テーブルと、中位2ビットと第1テ
ーブルの「表アドレス」とをインデックスとして「符号番
号パラメータ」および「次テーブルへの表アドレス」を検
索するための第2テーブルと、下位2ビットと第2テー
ブルの「表アドレス」をインデックスとして「符号番号パ
ラメータ」を検索するための第3テーブルを作成する。
さらに、符号番号をアドレスとして「符号長」および「復
号値」を検索するための第4テーブルを作成して第4テ
ーブル格納部20に格納する。
【0073】但し、上記第1〜第3テーブルにおける符
号番号パラメータの要素値として、当該テーブルを引い
て復号値が決定する可変長符号に相当するアドレスには
その符号の符号番号を与え、それ以外のアドレスには
「0」を与える。すなわち、表1に例示された可変長符号
で具体的に言えは、上記第1テーブルの場合は符号「0
0」、第2テーブルの場合は符号「010」〜「110
1」、第3テーブルの場合は符号「11100」〜「111
111」に相当するアドレスに、その符号の符号番号を
与えるのである。
【0074】その結果、上記演算器18は、上記各ルッ
クアップ部13,15,17から入力される「符号番号パ
ラメータ」を加算することによって、「符号番号」を得る
ことができる。そして、第4ルックアップ部19は、符
号番号をアドレスとして第4テーブルを検索して「符号
長」および「復号値」を得るのである。
【0075】したがって、上記分割器11,第1ルック
アップ部13,第2ルックアップ部15,第3ルックアッ
プ部17,演算器18および第4ルックアップ部19の
各処理部は、互いに他の処理部の処理終了を判定する必
要がなく、分岐条件のない復号化処理アルゴリズムを適
用できる。すなわち、本実施の形態によれば、復号化処
理を高速に実行することができる。また、上記第1〜第
3テーブルに登録するパラメータは、符号番号パラメー
タのみである。したがって、第1実施の形態に比して上
記第1〜第3テーブルの容量を削減できるのである。
【0076】<第3実施の形態>図5は、本実施の形態
の復号化装置におけるブロック図である。本実施の形態
は、第2実施の形態における第1,第2,第3の各テーブ
ルの更なる容量削減を図ったものである。
【0077】図3に示す第2実施の形態の復号化装置に
おける第2テーブルと第3テーブルとにおける符号番号
パラメータの関係を見ると、第2テーブルの「2-a」と
第3テーブルの「3-a」との符号番号パラメータは同一
であり、表アドレスの要素を無視すると第2テーブルの
「2-a」と第3テーブルの「3-a」とを共用することが可
能である。
【0078】さらに、上記表5に示す第1テーブルを、
表9に示す第1テーブルのように変更すると、
【表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の各テーブル容量を削減することができるのである。
【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
と同様の構成を有して同様に動作する。
【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」を出力する。
【0081】そうすると、上記第1ルックアップ部23
は、入力された上位2ビット「00」をアドレスとして第
1テーブルの「1-a」を引き、符号番号パラメータ「0」
と同テーブルへの表アドレス「1-b」とが得られる。そ
して、表アドレス「1-b」が第2ルックアップ部25に
送出される一方、符号番号パラメータ「0」は演算器28
に送出される。
【0082】次に、上記第2ルックアップ部25は、上
記分割器21から入力された中位2ビット「01」と第1
ルックアップ部23から入力された表アドレス「1-b」
とをインデックスとしてアドレスを求め、そのアドレス
で第1テーブル(「1-b」)を引く。そして、符号番号パ
ラメータ「0」と同テーブルへの表アドレス「1-b」とが
得られる。そして、表アドレス「1-b」が第3ルックア
ップ部27に送出される一方、符号番号パラメータ「0」
は演算器28に送出される。
【0083】次に、上記第3ルックアップ部27は、上
記分割器21から入力された下位2ビット「01」と第2
ルックアップ部25から入力された表アドレス「1-b」
とをインデックスとしてアドレスを求め、そのアドレス
で再度上記第1テーブル(「1-b」)を引く。そして、符
号番号パラメータ「0」が得られる。そして、符号番号パ
ラメータ「0」が演算器28に送出される。
【0084】そうすると、上記演算器28は、上記第
1,第2,第3ルックアップ23,25,27から出力され
た符号番号パラメータ「0」,「0」,「0」を加算して入力可
変長符号の符号番号「0」を求める。そして、上記求めら
れた符号番号「0」を第4ルックアップ部29に出力す
る。
【0085】最後に、上記第4ルックアップ部29は、
上記演算器28から入力された符号番号「0」をアドレス
として第2テーブルを引き、符号長「2」と復号値「0」と
を得る。そして、得られた符号長「2」と復号値「0」とを
出力するのである。
【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(中央演算処理装置)あるいはそれらの組み合わせで実
現でき、上記各手段による一部または総ての処理はハー
ドウェアのみならずソフトウェア若しくはそれらの組み
合わせによって実現が可能である。
【0087】ここで、上記ソフトウェアとしての復号化
処理プログラムは、プログラム記録媒体に記録される。
上記各実施の形態における上記プログラム記録媒体は、
ROM(リード・オンリ・メモリ)でなるプログラムメディ
アである。または、外部補助記憶装置に装着されて読み
出されるプログラムメディアであってもよい。尚、何れ
の場合においても、上記プログラムメディアから復号化
処理プログラムを読み出すプログラム読み出し手段は、
上記プログラムメディアに直接アクセスして読み出す構
成を有していてもよいし、RAM(ランダム・アクセス・
メモリ)に設けられたプログラム記憶エリア(図示せず)
にダウンロードし、上記プログラム記憶エリアにアクセ
スして読み出す構成を有していてもよい。尚、上記プロ
グラムメディアからRAMの上記プログラム記憶エリア
にダウンロードするためのダウンロードプログラムは、
予め本復号化装置が搭載されたシステムに格納されてい
るものとする。
【0088】ここで、上記プログラムメディアとは、本
体側と分離可能に構成され、磁気テープやカセットテー
プ等のテープ系、フロッピーディスク,ハードディスク
等の磁気ディスクやCD(コンパクトディスク)−RO
M,MO(光磁気)ディスク,MD(ミニディスク),DVD
(ディジタルビデオディスク)等の光ディスクのディスク
系、IC(集積回路)カードや光カード等のカード系、マ
スクROM,EPROM(紫外線消去型ROM),EEP
ROM(電気的消去型ROM),フラッシュROM等の半
導体メモリ系を含めた、固定的にプログラムを坦持する
媒体である。
【0089】また、上記各実施の形態における復号化装
置が搭載されたシステムがインターネットを含む通信ネ
ットワークと接続可能な構成を有している場合には、上
記プログラムメディアは、通信ネットワークからのダウ
ンロード等によって流動的にプログラムを坦持する媒体
であっても差し支えない。尚、その場合における上記通
信ネットワークからダウンロードするためのダウンロー
ドプログラムは、予め上記システムに格納されているも
のとする。あるいは、別の記録媒体からインストールさ
れるものとする。
【0090】尚、上記記録媒体に記録されるものはプロ
グラムのみに限定されるものではなく、データも記録す
ることが可能である。
【0091】以上説明したように、上記各実施の形態に
よれば、上記演算器8,18,28を設けることによっ
て、各ルックアップ部は前段ルックアップ部からパラメ
ータが送出されてくると該当するテーブルを検索して検
索結果を演算器8,18,28に送出すればよく、他の処
理部の処理終了を判定する必要はない。したがって、分
岐命令のないアルゴリズムを適用することができ、従来
の復号化手法に比べて、可変長符号の符号を少ない容量
のメモリで、高速に復号化することができるのである。
【0092】
【発明の効果】以上より明らかなように、請求項1に係
る発明の復号化装置は、入力ビット列を分割手段によっ
て所定ビット数毎に2以上のビット列に分割し、上記分
割された各ビット列をインデックスとしてルックアップ
手段によってテーブルを参照してパラメータを得、上記
得られたパラメータに基づいて演算手段によって符号長
あるいは復号値を演算するので、上記テーブルを上記分
割手段によって分割される各ビット列に対応したテーブ
ルにすることによって、上記テーブル容量の削減を図る
ことができる。さらに、上記分割手段,ルックアップ手
段および演算手段は、前段の処理手段からの処理結果に
基づいて順次処理を行うので分岐条件のないアルゴリズ
ムを適用することができる。
【0093】近年、上記CPUのクロック速度向上に伴
って命令実行時のパイプライン化が進み、分岐命令によ
るパイプラインの再読み込みのペナルティが大きくな
り、分岐条件のないアルゴリズムの方が速く実行可能に
なってきている。したがって、この発明によれば、分岐
条件のないアルゴリズムを適用することによって、高速
に復号化処理を実行することができるのである。
【0094】また、請求項2に係る発明の復号化装置に
おける上記テーブルには、符号長算出用の符号長算出パ
ラメータあるいは復号値算出用の復号値算出パラメータ
を登録し、上記演算手段は、上記ルックアップ手段から
出力される上記符号長算出パラメータあるいは復号値算
出パラメータに基づいて上記符号長あるいは復号値を演
算するので、入力可変長符号の符号長あるいは復号値を
容易に求めることができる。
【0095】また、請求項3に係る発明の復号化装置
は、入力ビット列を分割手段によって所定ビット数毎に
2以上のビット列に分割し、この分割された各ビット列
をインデックスとして第1ルックアップ手段によって第
1テーブルを参照して符号番号算出パラメータを得、こ
の得られたパラメータに基づいて演算手段によって符号
番号を演算し、上記得られた符号番号をインデックスと
して第2ルックアップ手段によって第2テーブルを参照
して符号長あるいは復号値を得るので、上記第1テーブ
ルを上記分割手段によって分割される各ビット列に対応
したテーブルにすることによって、上記テーブル容量の
削減を図ることができる。さらに、上記分割手段,第1
ルックアップ手段,演算手段および第2ルックアップ手
段は前段の処理手段からの処理結果に基づいて順次処理
を行うので、分岐条件のないアルゴリズムを適用して復
号化処理を高速に実行することができる。
【0096】また、請求項4に係る発明の復号化装置
は、上記分割手段によって分割される各ビット列に対応
した複数のテーブルを―つのテーブルに集約したので、
上記テーブル容量の更なる削減を図ることができる。
【0097】また、請求項5に係る発明の復号化方法
は、入力ビット列を所定ビット数毎に2以上のビット列
に分割するステップと、上記分割された各ビット列をイ
ンデックスとしてテーブルを参照して符号長算出パラメ
ータあるいは復号値算出パラメータを得るステップと、
上記得られた各パラメータに基づいて符号長あるいは復
号値を演算するステップを備えたので、請求項1に係る
発明の場合と同様に、入力ビット列を分割するステッ
プ、上記テーブルを参照してパラメータを得るステッ
プ、および、上記符号長あるいは復号値を演算するステ
ップは、前段のステップからの処理結果に基づいて順次
処理を行うことができる。したがって、分岐条件のない
アルゴリズムを適用して、上記テーブルの記憶容量の増
加を押さえて復号化処理を高速に実行できる。
【0098】また、請求項6に係る発明の復号化方法
は、入力ビット列を所定ビット数毎に2以上のビット列
に分割するステップと、上記分割された各ビット列をイ
ンデックスとして第1テーブルを参照して符号番号算出
パラメータを得るステップと、上記得られたパラメータ
に基づいて符号番号を演算するステップと、上記演算さ
れた符号番号をインデックスとして第2テーブルを参照
して符号長あるいは復号値を得るステップを備えたの
で、請求項3に係る発明の場合と同様に、入力ビット列
を分割するステップ、上記第1テーブルを参照してパラ
メータを得るステップ、上記符号番号を演算するステッ
プ、および、上記第2テーブルを参照して上記符号長あ
るいは復号値を演算するステップは、前段のステップか
らの処理結果に基づいて順次処理を行うことができる。
したがって、分岐条件のないアルゴリズムを適用して、
上記テーブルの記憶容量の増加を押さえて復号化処理を
高速に実行できる。
【0099】また、請求項7に係る発明のプログラム記
録媒体は、コンピュータを、入力ビット列を所定ビット
数毎に2以上のビット列に分割する分割手段と、上記分
割された各ビット列をインデックスとしてテーブルを参
照してパラメータを得るルックアップ手段と、上記得ら
れた各パラメータに基づいて符号長または復号値を演算
する演算手段として機能させる復号化処理プログラムが
記録されているので、請求項5に係る発明の場合と同様
に、入力ビット列を分割する処理、上記テーブルを参照
してパラメータを得る処理、および、上記符号長あるい
は復号値を演算する処理の各処理に、分岐条件のないア
ルゴリズムを適用して、復号化処理を高速に実行でき
る。
【0100】また、請求項8に係る発明のプログラム記
録媒体は、コンピュータを、入力ビット列を所定ビット
数毎に2以上のビット列に分割する分割手段と、上記分
割された各ビット列をインデックスとして第1テーブル
を参照してパラメータを得る第1ルックアップ手段と、
上記得られたパラメータに基づいて符号番号を演算する
演算手段と、上記演算された符号番号をインデックスと
して第2テーブルを参照して符号長あるいは復号値を得
る第2ルックアップ手段として機能させる復号化処理プ
ログラムが記録されているので、請求項6に係る発明の
場合と同様に、入力ビット列を分割する処理、上記第1
テーブルを参照してパラメータを得る処理、符号番号を
演算する処理、および、上記第2テーブルを参照して符
号長あるいは復号値を得る処理の各処理に、分岐条件の
ないアルゴリズムを適用して、復号化処理を高速に実行
できる。
【図面の簡単な説明】
【図1】 この発明の復号化装置におけるブロック図で
ある。
【図2】 図1における分割器,第1〜第3ルックアッ
プ部および演算器によって実行される復号化処理のフロ
ーチャートである。
【図3】 図1とは異なる復号化装置におけるブロック
図である。
【図4】 図3における分割器,第1〜第3ルックアッ
プ部,演算器および第4ルックアップ部によって実行さ
れる復号化処理のフローチャートである。
【図5】 図1及び図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テーブル格納部。

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】 可変長符号の最大ビット長のビット列を
    入力として、入力ビット列を所定ビット数毎に2以上の
    ビット列に分割する分割手段と、 上記分割手段によって分割される各ビット列に対応した
    テーブルが格納されたテーブル格納手段と、 上記分割手段によって分割された各ビット列をインデッ
    クスとして上記テーブルを参照し、符号長あるいは復号
    値を算出するためのパラメータを得るルックアップ手段
    と、 上記ルックアップ手段で得られたパラメータに基づい
    て、上記符号長あるいは復号値を演算する演算手段を備
    えたことを特徴とする復号化装置。
  2. 【請求項2】 請求項1に記載の復号化装置において、 上記テーブルには、符号長算出用の符号長算出パラメー
    タあるいは復号値算出用の復号値算出パラメータが登録
    されており、 上記演算手段は、上記ルックアップ手段から出力される
    上記符号長算出パラメータあるいは復号値算出パラメー
    タに基づいて、上記符号長あるいは復号値を演算するこ
    とを特徴とする復号化装置。
  3. 【請求項3】 可変長符号の最大ビット長のビット列を
    入力として、入力ビット列を所定ビット数毎に2以上の
    ビット列に分割する分割手段と、 符号番号算出パラメータが登録されると共に、上記分割
    手段によって分割される各ビット列に対応した第1テー
    ブルが格納された第1テーブル格納手段と、 上記分割手段によって分割された各ビット列をインデッ
    クスとして上記第1テーブルを参照し、上記符号番号算
    出パラメータを得る第1ルックアップ手段と、 上記第1ルックアップ手段で得られたパラメータに基づ
    いて符号番号を演算する演算手段と、 上記可変長符号の符号番号と符号長あるいは復号値とが
    対応付けられて登録された第2テーブルが格納された第
    2テーブル格納手段と、 上記演算手段で得られた符号番号をインデックスとして
    上記第2テーブルを参照し、上記符号長あるいは復号値
    を得る第2ルックアップ手段を備えたことを特徴とする
    復号化装置。
  4. 【請求項4】 請求項1あるいは請求項3に記載の復号
    化装置において、 上記分割手段によって分割される各ビット列に対応した
    複数のテーブルを―つのテーブルに集約したことを特徴
    とする復号化装置。
  5. 【請求項5】 可変長符号の最大ビット長のビット列を
    入力として、入力ビット列を所定ビット数毎に2以上の
    ビット列に分割するステップと、 上記分割された各ビット列をインデックスとして、符号
    長算出パラメータあるいは復号値算出パラメータが登録
    されたテーブルを参照して、上記符号長算出パラメータ
    あるいは復号値算出パラメータを得るステップと、 上記得られた各パラメータに基づいて、符号長あるいは
    復号値を演算するステップを備えたことを特徴とする復
    号化方法。
  6. 【請求項6】 可変長符号の最大ビット長のビット列を
    入力として、入力ビット列を所定ビット数毎に2以上の
    ビット列に分割するステップと、 上記分割された各ビット列をインデックスとして、符号
    番号算出パラメータが登録された第1テーブルを参照し
    て、上記符号番号算出パラメータを得るステップと、 上記得られた符号番号算出パラメータに基づいて、符号
    番号を演算するステップと、 上記演算された符号番号をインデックスとして、上記符
    号番号と符号長あるいは復号値とが対応付けられて登録
    された第2テーブルを参照して、上記符号長または復号
    値を得るステップを備えたことを特徴とする復号化方
    法。
  7. 【請求項7】 コンピュータを、 可変長符号の最大ビット長のビット列を入力として、入
    力ビット列を所定ビット数毎に2以上のビット列に分割
    する分割手段と、 上記分割された各ビット列をインデックスとして、符号
    長算出パラメータあるいは復号値算出パラメータが登録
    されたテーブルを参照して、上記符号長算出パラメータ
    あるいは復号値算出パラメータを得るルックアップ手段
    と、 上記得られた各パラメータに基づいて、符号長あるいは
    復号値を演算する演算手段として機能させる復号化処理
    プログラムが記録されたことを特徴とするコンピュータ
    読み出し可能なプログラム記録媒体。
  8. 【請求項8】 コンピュータを、 可変長符号の最大ビット長のビット列を入力として、入
    力ビット列を所定ビット数毎に2以上のビット列に分割
    する分割手段と、 上記分割された各ビット列をインデックスとして、符号
    番号算出パラメータが登録された第1テーブルを参照し
    て、上記符号番号算出パラメータを得る第1ルックアッ
    プ手段と、 上記得られた符号番号算出パラメータに基づいて、符号
    番号を演算する演算手段と、 上記演算された符号番号をインデックスとして、上記符
    号番号と符号長あるいは復号値とが対応付けられて登録
    された第2テーブルを参照して、上記符号長あるいは復
    号値を得る第2ルックアップ手段として機能させる復号
    化処理プログラムが記録されたことを特徴とするプログ
    ラム記録媒体。
JP10926499A 1999-04-16 1999-04-16 復号化装置および復号化方法、並びに、プログラム記録媒体 Expired - Fee Related JP3533339B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10926499A JP3533339B2 (ja) 1999-04-16 1999-04-16 復号化装置および復号化方法、並びに、プログラム記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10926499A JP3533339B2 (ja) 1999-04-16 1999-04-16 復号化装置および復号化方法、並びに、プログラム記録媒体

Publications (2)

Publication Number Publication Date
JP2000307433A true JP2000307433A (ja) 2000-11-02
JP3533339B2 JP3533339B2 (ja) 2004-05-31

Family

ID=14505772

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10926499A Expired - Fee Related JP3533339B2 (ja) 1999-04-16 1999-04-16 復号化装置および復号化方法、並びに、プログラム記録媒体

Country Status (1)

Country Link
JP (1) JP3533339B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007108395A1 (ja) * 2006-03-23 2007-09-27 Nec Corporation 可変長符号の復号装置および復号方法
CN101213754A (zh) * 2005-05-13 2008-07-02 高通股份有限公司 用于改进的多媒体解码器的方法和设备
JP2010045485A (ja) * 2008-08-11 2010-02-25 Yamaha Corp 可変長符号デコーダ
JP2015130703A (ja) * 2011-01-26 2015-07-16 ▲ホア▼▲ウェイ▼技術有限公司 ベクトル結合符号化/復号方法および符号復号器

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101213754A (zh) * 2005-05-13 2008-07-02 高通股份有限公司 用于改进的多媒体解码器的方法和设备
JP2011109678A (ja) * 2005-05-13 2011-06-02 Qualcomm Inc 改良されたマルチメディアデコーダに関する方法及び装置
JP2013118656A (ja) * 2005-05-13 2013-06-13 Qualcomm Inc 改良されたマルチメディアデコーダに関する方法及び装置
WO2007108395A1 (ja) * 2006-03-23 2007-09-27 Nec Corporation 可変長符号の復号装置および復号方法
US7924179B2 (en) 2006-03-23 2011-04-12 Nec Corporation Variable-length code determining device and variable-length code decoding method
JP2010045485A (ja) * 2008-08-11 2010-02-25 Yamaha Corp 可変長符号デコーダ
JP2015130703A (ja) * 2011-01-26 2015-07-16 ▲ホア▼▲ウェイ▼技術有限公司 ベクトル結合符号化/復号方法および符号復号器
US9404826B2 (en) 2011-01-26 2016-08-02 Huawei Technologies Co., Ltd. Vector joint encoding/decoding method and vector joint encoder/decoder
US9704498B2 (en) 2011-01-26 2017-07-11 Huawei Technologies Co., Ltd. Vector joint encoding/decoding method and vector joint encoder/decoder
US9881626B2 (en) 2011-01-26 2018-01-30 Huawei Technologies Co., Ltd. Vector joint encoding/decoding method and vector joint encoder/decoder
US10089995B2 (en) 2011-01-26 2018-10-02 Huawei Technologies Co., Ltd. Vector joint encoding/decoding method and vector joint encoder/decoder

Also Published As

Publication number Publication date
JP3533339B2 (ja) 2004-05-31

Similar Documents

Publication Publication Date Title
RU2629440C2 (ru) Устройство и способ для ускорения операций сжатия и распаковки
JPH08162970A (ja) 復号装置およびその方法
US7970215B2 (en) Automatic generation of compact code tables
US5440504A (en) Arithmetic apparatus for digital signal processor
JP3206568B2 (ja) Dma制御方法及び装置
US20200099958A1 (en) Efficient length limiting of compression codes
US8542137B2 (en) Decoding encoded data
CN106649217A (zh) 数据的匹配方法及装置
CN107851007B (zh) 宽数据类型的比较的方法和装置
CN111507465A (zh) 一种可配置的卷积神经网络处理器电路
US20040168012A1 (en) Memory address decoding method and related apparatus by bit-pattern matching
JP2000307433A (ja) 復号化装置および復号化方法、並びに、プログラム記録媒体
EP0624956A2 (en) System and method for fast Huffman decoding
US9197243B2 (en) Compression ratio for a compression engine
KR20050010918A (ko) 가변길이 복호화를 위한 방법 및 시스템, 및 코드워드들의지역화를 위한 장치
CN112800183B (zh) 内容名称数据处理方法及终端设备
JP7074989B2 (ja) データ圧縮器、データ圧縮方法、データ圧縮プログラム、データ解凍器、データ解凍方法、データ解凍プログラムおよびデータ圧縮解凍システム
Zheng et al. Efficient pipelined CABAC encoding architecture
KR100937031B1 (ko) 순환잉여검사 시스템 및 방법
CN117113106B (zh) 一种数据压缩方法、装置及电子设备和存储介质
CN113595557B (zh) 一种数据处理的方法和装置
KR102529184B1 (ko) Cnn 기반 ai 모델의 누산 방법 및 장치
CN107094022B (zh) 一种用于VLSI设计的Huffman编码系统的实现方法
JP2007274051A (ja) バイト列探索器及び探索方法
JP3221252B2 (ja) ハフマン復号器

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