JP2001274690A - 可変長復号器 - Google Patents

可変長復号器

Info

Publication number
JP2001274690A
JP2001274690A JP2000088410A JP2000088410A JP2001274690A JP 2001274690 A JP2001274690 A JP 2001274690A JP 2000088410 A JP2000088410 A JP 2000088410A JP 2000088410 A JP2000088410 A JP 2000088410A JP 2001274690 A JP2001274690 A JP 2001274690A
Authority
JP
Japan
Prior art keywords
code
length
variable
decoding
code 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.)
Abandoned
Application number
JP2000088410A
Other languages
English (en)
Inventor
Haruya Iwata
治也 岩田
Naoyuki Kai
直行 甲斐
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2000088410A priority Critical patent/JP2001274690A/ja
Publication of JP2001274690A publication Critical patent/JP2001274690A/ja
Abandoned legal-status Critical Current

Links

Landscapes

  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

(57)【要約】 【課題】復号テーブルの一回の参照で複数の可変長符号
を復号可能として復号効率を向上させた可変長復号器を
提供する。 【解決手段】入力される可変長符号列から所定長さ(L
ビット)の符号列A0を切り出して出力する入力処理部
11と、この符号列A0を入力として符号列A0中の可
変長符号に対応する復号結果を出力する復号テーブル1
2とを有し、復号テーブル12は、予め定めた複数の単
位可変長符号をそれぞれ0を含む任意の数ずつ組み合わ
せた複数の可変長符号に該可変長符号に含まれる各単位
可変長符号に対する復号結果の組み合わせを対応付け、
入力処理部11から出力される符号列に含まれる可変長
符号に対応して複数Nの復号結果を出力する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、可変長符号を復号
する可変長復号器に係り、特にMPEGデコーダのよう
な動画像復号装置などに好適に使用される可変長復号器
に関する。
【0002】
【従来の技術】動画像圧縮の国際標準であるMPEG
(Moving Picture Experts Group)方式が規格化され、
この方式に基づく動画像符号化装置(MPEGエンコー
ダ)及び動画像復号装置(MPEGデコーダ)がDVD
システムなどの蓄積系や、伝送系で実用化されている。
【0003】MPEGエンコーダにおいては、動画像信
号が動き補償適応予測と離散コサイン変換(DCT)及
び可変長符号化の組み合わせによって符号化される。予
測モードには大きく分けてフレーム内予測モードとフレ
ーム間予測モードとがあり、予測信号(但し、フレーム
内予測モードでは予測信号=0)と入力画像信号との差
である予測誤差信号について、離散コサイン変換器によ
りDCT係数が生成される。これらのDCT係数が量子
化された後、可変長符号化器により可変長符号化され
る。さらに、動き補償予測に使用する動きベクトル、予
測モード、量子化ステップサイズ及びマクロブロックタ
イプなどのヘッダ情報も、可変長符号化器により可変長
符号化される。各可変長符号は多重化され、符号化ビッ
トストリームとしてMPEGエンコーダから出力され
る。
【0004】MPEGエンコーダから出力される符号化
ビットストリームは、蓄積媒体や伝送路を経てMPEG
デコーダに入力される。MPEGデコーダにおいては、
入力された符号化ビットストリームに多重化されている
可変長符号が可変長復号器により復号され、量子化DC
T係数及びヘッダ情報が生成される。量子化DCT係数
は逆量子化され、さらに逆離散コサイン変換器を経て予
測誤差信号が生成される。予測誤差信号から予測信号が
生成され、この予測信号から復号画像信号が得られる。
【0005】可変長復号器では、量子化DCT係数やヘ
ッダ情報を情報シンボルとして、これらの各情報シンボ
ルと可変長符号を対応付けた復号テーブルを用いて復号
が行われる。図12に従来の可変長復号器の構成を示
す。図12の可変長復号器は、複数の可変長符号がシリ
アルに連続する可変長符号列を入力して可変長符号の頭
出しを行う入力処理部101と、可変長符号に復号結果
(情報シンボル)を対応付けて記憶した復号テーブル1
02からなる。
【0006】この可変長復号器では、例えば図11に示
した可変長符号列が入力されると、入力処理部101で
可変長符号列中の適当な長さ(Lビット)の符号列Aが
切り出され、復号テーブル102に符号列Aが入力され
る。符号列Aには、図13に示すように複数の可変長符
号が含まれているものとする。復号テーブル102は符
号列Aの中の最初の可変長符号を復号し、その符号長の
情報と復号結果(復号された情報シンボル)を出力す
る。符号長の情報は入力処理部101に戻され、次の可
変長符号の頭出しに使われる。
【0007】図12に示した従来の可変長復号器では、
図13に示すように符号列Aの中に複数の可変長符号
1,2,3…が存在する場合でも、符号列Aによる復号
テーブル102の一回の参照(符号列Aの一回の入力)
では、最初の可変長符号1のみしか復号することができ
ず、復号効率が悪いという問題がある。これは例えば復
号テーブル102で可変長符号1を復号している間に、
次の可変長符号2が入力処理部101から出力されてし
まうためである。可変長符号2を復号するためには、入
力処理部101またはその前段のバッファで保持されて
いる可変長符号列を再び取り出し、可変長符号1の符号
長に従って可変長符号2の頭出しを行い、復号テーブル
102に入力しなければならない。以降の可変長符号3
…についても同様である。
【0008】
【発明が解決しようとする課題】上述したように従来の
可変長復号器では、連続する可変長符号を復号するため
には可変長符号列を繰り返し複数回入力して、復号テー
ブルをその都度参照しなければならず、復号効率が悪
い、つまり可変長符号列全体の復号に時間がかかるとい
う問題点があった。
【0009】本発明は、上記の問題点を解消して復号効
率を向上させた可変長復号器を提供することを目的とす
る。
【0010】
【課題を解決するための手段】上記の課題を解決するた
め、本発明は復号テーブルの一回の参照で複数の可変長
符号に対する復号結果を得ることができるようにして復
号効率を向上させるものである。
【0011】すなわち、本発明に係る可変長復号器は、
入力される可変長符号列から所定長さの符号列を切り出
して出力する入力処理部と、この入力処理部から出力さ
れる符号列を入力として該符号列中の可変長符号に対応
する復号結果を出力する第1の復号テーブルとを有す
る。
【0012】ここで、第1の復号テーブルは予め定めた
複数の単位可変長符号をそれぞれ0を含む任意の数ずつ
組み合わせた複数の第1の可変長符号に該第1の可変長
符号に含まれる各単位可変長符号に対する復号結果の組
み合わせを対応付け、入力処理部から出力される符号列
に含まれる第1の可変長符号に対応して複数の復号結果
を出力する。
【0013】このような構成により、復号テーブルを一
回参照するだけで第1の可変長符号に含まれる複数の単
位可変長符号である可変長符号を同時に復号することが
可能となる。第1の復号テーブルは、複数の復号結果の
一部に有効でない情報を出力することもあるので、各々
の復号結果にその復号結果が有効であるか無効であるか
を示す有効/無効信号を付加して出力するようにしても
よい。
【0014】また、このような基本構成の可変長復号器
において、第1の可変長符号に含まれる単位可変長符号
より出現頻度が低く最大符号長が第1の可変長符号と同
一の第2の可変長符号に復号結果を対応付け、入力処理
部から出力される符号列に含まれる第2の可変長符号に
対応して一つの復号結果を出力する第2の復号テーブル
を追加してもよい。
【0015】さらに、第2の可変長符号に比較して出現
頻度が低く、かつ最大符号長が長い第3の可変長符号に
復号結果を対応付け、入力処理部から複数回にわたって
出力される符号列により構成される第3の可変長符号に
対応して一つの復号結果を出力する少なくとも一つの第
3の復号テーブルを追加することも可能である。これら
の場合、第1及び第2の復号テーブルは一つのテーブル
として構成することができる。
【0016】上述した可変長復号器は、入力される可変
長符号列に含まれる複数種類の可変長符号を復号する可
変長復号器としても構成することが可能であって、その
場合は第1の復号テーブルあるいは第1乃至第2または
第3の復号テーブルを該可変長符号の種類に対応して複
数個設ければよい。
【0017】本発明に係る他の可変長復号器は、入力さ
れる可変長符号列から、任意の部分可変長符号列の先頭
より所定長さの第1の符号列及び該第1の符号列と同一
長さで該第1の符号列より所定のシフト量シフトした少
なくとも一つの第2の符号列を切り出して出力する入力
処理部と、第1の符号列を入力として該符号列に対応す
る復号結果及び該符号列の符号長を示す符号長情報を出
力する第1の復号テーブルと、少なくとも一つの第2の
符号列を入力として該符号列に対応する復号結果及び該
符号列の符号長を示す符号長情報をそれぞれ出力する少
なくとも一つの第2の復号テーブルと、第1の復号テー
ブルから出力される符号長情報と少なくとも一つの第2
の復号テーブルに入力される少なくとも一つの第2の符
号列のシフト量とを比較し、該第1の復号テーブルから
出力される符号長情報にシフト量が一致したとき、該第
2の符号列を入力とする第2の復号テーブルから出力さ
れる符号長情報及び復号結果を選択し、該符号長情報を
第1の復号テーブルから出力される符号長情報と共に入
力処理部に次の部分可変長符号列の先頭を知らせるため
にフィードバックする制御手段とを有することを特徴と
する。
【0018】この可変長復号器によると、一回の部分可
変長符号列の入力で第1の復号テーブルと、一つの第2
の復号テーブルにより、合計で最大2つの可変長符号を
復号でき、復号効率が向上する。
【0019】この可変長復号器も、入力される可変長符
号列に含まれる複数種類の可変長符号を復号する可変長
復号器としても構成することが可能であって、その場合
は入力処理部、第1及び第2の復号テーブル並びに制御
手段を該可変長符号の種類に対応して複数個設ければよ
い。
【0020】本発明に係るさらに別の可変長復号器は、
入力される可変長符号列から、任意の部分可変長符号列
の先頭より所定長さの第1の符号列及び該第1の符号列
と同一長さで該第1の符号列より順次異なるシフト量ず
つシフトした複数の第2の符号列を切り出して出力する
入力処理部と、第1の符号列を入力として該符号列に対
応する復号結果及び該符号列の符号長を示す符号長情報
を出力する第1の復号テーブルと、複数の第2の符号列
の各々を入力として該符号列に対応する復号結果及び該
符号列の符号長を示す符号長情報を出力する複数の第2
の復号テーブルと、複数の第2の復号テーブルから出力
される符号長情報を選択して、該選択した符号長情報を
前記第1の復号テーブルから出力される符号長情報と共
に入力処理部に次の部分可変長符号列の先頭を知らせる
ためにフィードバックする第1の選択器と、複数の第2
の復号テーブルから出力される復号結果のいずれかを選
択する第2の選択器と、第1の復号テーブルから出力さ
れる符号長情報と複数の第2の復号テーブルにそれぞれ
入力される第2の符号列のシフト量とを比較し、複数の
第2の復号テーブルのうち該第1の復号テーブルから出
力される符号長情報にシフト量が一致した第2の符号列
を入力とする第2の復号テーブルから出力される符号長
情報及び復号結果が選択されるように第1及び第2の選
択器を制御する選択制御部とを有することを特徴とす
る。
【0021】また、選択制御部は複数の第2の復号テー
ブルにそれぞれ入力される第2の符号列のいずれのシフ
ト量も第1の復号テーブルから出力される符号長情報に
一致しない場合は、第1の選択器から符号長0の情報を
出力させると共に、第2の選択器の出力を無効にするこ
とを特徴とする。
【0022】複数種類の可変長符号を復号する可変長復
号器として構成する場合は、入力処理部、第1及び第2
の復号テーブル、第1及び第2の選択器並びに選択制御
部を該可変長符号の種類に対応して複数個設ければよ
い。さらに、複数種類の可変長符号を復号する可変長復
号器として構成する場合、シフト量は可変長符号の種類
に応じて異なる値に設定される。
【0023】
【発明の実施の形態】以下、図面を参照して本発明の実
施の形態を説明する。 (第1の実施形態)図1は、本発明の第1の実施形態に
係る可変長復号器の構成を示すブロック図である。この
可変長復号器は、入力処理部11と復号テーブル12か
ら構成される。入力処理部11は、復号すべき可変長符
号列を入力し、この可変長符号列の頭出しを行って、可
変長符号の先頭から所定長さ(Lビット)の符号列A0
を切り出して出力する処理を行う。この符号列A0は、
比較的短い可変長符号については複数の可変長符号を含
むようにその長さLが選ばれる。
【0024】復号テーブル12は、入力処理部11から
出力される符号列A0を参照入力として、符号列A0中
の可変長符号の符号長及びその可変長符号に対応する複
数(N)の復号結果1〜Nを同時に出力する。復号テー
ブル12から出力される符号長は入力処理部11にフィ
ードバックされ、符号列A0中の次の可変長符号の頭出
しに用いられる。
【0025】次に、復号テーブル12について詳しく説
明する。図2は、符号長1〜2ビットの可変長符号と符
号長及び復号結果の関係を示している。図2に示す可変
長符号は“0”,“10”,“11”の3個であり、符
号長はそれぞれ「1」,「2」,「2」、復号結果はそ
れぞれ「A」,「B」,「C」である。
【0026】ここで、復号テーブル12は図2に示す3
つの可変長符号“0”,“10”,“11”を単位可変
長符号として、図3に示すように単位可変長符号を任意
の数(0を含む)ずつ組み合わせた複数の新可変長符号
(第1の可変長符号)に、各新可変長符号の符号長及び
各新可変長符号に含まれる各単位可変長符号に対応する
復号結果の組み合わせを対応付けたものであり、具体的
には例えば論理回路の組み合わせ(ランダムロジック)
またはROMにより構成される。ただし、図3は符号列
A0の長さをL=4とし、復号結果1〜Nの数をN=3
とした場合の例である。
【0027】すなわち、図3に示される復号テーブル1
2は、符号列A0の一回の参照でN=3個の可変長符号
を復号できるようにするため、図2の単位可変長符号を
符号長が復号テーブル12の入力ビット幅(この場合、
4ビット幅)以下となるように組み合わせて可能な限り
多くの新可変長符号を構成し、それぞれの新可変長符号
に対して符号長及び復号結果を割り当てることで構成さ
れる。復号結果は、各単位可変長符号に対する復号結果
の組み合わせで表される。また、後述するように各復号
結果には、有効/無効信号が付加される。
【0028】図3において、第1行目の新可変長符号
“0000(1)”は、図2の単位可変長符号“0”を
3個組み合わせたもので、符号長は「3」であり、末尾
の4ビット目0(1)は“0”でも“1”でもよいこと
を表している。復号結果は単位可変長符号“0”に対す
る復号結果「A」の組み合わせ「A」,「A」,「A」
となる。また、例えば第2行目の新可変長符号“001
0”は、図2の単位可変長符号“0”を2個と可変長符
号“10”を組み合わせたもので、符号長は「4」であ
り、復号結果は「A」,「A」,「B」である。
【0029】さらに、図3に示す新可変長符号符号の多
くは3つの単位可変長符号を含んでいるが、全ての新可
変長符号に3つの単位可変長符号が含まれているわけで
はなく、単位可変長符号が2つだけ含まれている新可変
長符号もある。単位可変長符号が2つだけ場合には、正
しい復号結果は2つしか得られない。そこで、各々の新
可変長符号に対応するそれぞれ3つの復号結果には、そ
れらが有効か無効かを示す有効/無効信号が付加され
る。
【0030】例えば、図4の第5行目の新可変長符号
“010[1]”は、図2の単位可変長符号“0”と単
位可変長符号“10”を組み合わせたもので、符号長は
「3」であり、末尾のビット[1]は無効ビットであ
る。従って、復号結果は「A」,「B」,「*」であ
り、末尾の復号結果「*」はこれに付加されている有効
/無効信号によって「無効」であることが示されてい
る。
【0031】このように本実施形態によると、図2に示
した可変長符号を単位可変長符号として、これらを0を
含む任意の数ずつ組み合わせた図3の新可変長符号(第
1の可変長符号)に対して復号テーブル12を作成し、
入力処理部11から出力される符号列A0に含まれる可
変長符号(第1の可変長符号)によって復号テーブル1
2を参照することで、この可変長符号に含まれる複数の
単位可変長符号それぞれに対する複数の復号結果を復号
テーブル12から同時に出力することができる。
【0032】具体的には、例えば入力処理部11から出
力される符号列A0中に可変長符号として、図3中に示
す新可変長符号の一つである“0011”が含まれてい
た場合には、3つの復号結果「A」,「A」,「C]が
復号テーブル12から同時に出力される。勿論、これら
3つの復号結果「A」,「A」,「C]に付加される有
効/無効信号は全て「有効」であることを示す。
【0033】また、例えば符号列A0中に可変長符号と
して、図3に示す新可変長符号の一つである“100
[1]”が含まれていた場合にも、やはり3つの復号結
果「B」,「A」,「*」が復号テーブル12から出力
される。この場合、復号結果「B」,「A」に付加され
る有効/無効信号は「有効」を示すが、可変長符号の4
ビット目[1]に対応する復号結果「*」に付加される
有効/無効信号は「無効」であることを示すことにな
る。
【0034】図4は、符号列A0の中に複数の可変長符
号1,2,3が含まれている場合を示しており、これら
の可変長符号1,2,3の組み合わせは図3に示した復
号テーブル12内に網羅されているので、これら3つの
可変長符号を一回の復号処理で同時に、言い換えれば、
符号列A0を復号テーブル12に唯一回参照させるだけ
で復号することができ、復号効率が向上する。また、入
力処理部12が切り出す符号列A0の長さLと、復号テ
ーブル12から一回で出力できる復号結果の数Nを大き
くすることにより、復号効率はさらに向上することはい
うまでもない。
【0035】(第2の実施形態)図5に、本発明の第2
の実施形態に係る可変長復号器の構成を示す。図5にお
いて図1と同一部分に同一符号を付して説明すると、本
実施形態では第1の実施形態で説明した復号テーブル
(第1の復号テーブル)12に加えて、さらに第2の復
号テーブル13が設けられている。これら第1及び第2
の復号テーブル12,13は、共に入力処理部11から
出力される符号列A0によって参照され、復号結果を出
力する。
【0036】第1の復号テーブル12は、図3で示した
ように図2に示した単位可変長符号を0を含む任意の数
ずつ組み合わせた新可変長符号(第1の可変長符号)
に、その符号長及び復号結果を対応付けたものである
が、この第1の復号テーブル12で参照される第1の可
変長符号は、可変長符号の中でも出現確率のより高いも
のとする。
【0037】これに対して、本実施形態において新たに
追加された第2の復号テーブル13は、第1の可変長符
号を構成する単位可変長符号より出現頻度が低く、最大
符号長が第1の可変長符号と同一の第2の可変長符号
に、その符号長及び復号結果を対応付けたものである。
具体的には、例えば第1及び第2の可変長符号の最大符
号長が8ビットであるとすると、第1の可変長符号は最
大符号長が8ビットとなるように単位可変長符号を組み
合わせて構成され、第2の可変長符号は単独で最大符号
長が8ビットとなる可変長符号により構成される。さら
に、第1の復号テーブル12と第2の復号テーブル13
は、好ましくは一つのランダムロジックまたはROM上
に一つのテーブルとして構成される。
【0038】本実施形態によると、出現頻度の高い第1
の可変長符号については、第1の復号テーブル12によ
り第1の実施形態と同様に、複数の可変長符号の復号結
果が符号列A0の一回の参照で同時に得られる。一方、
出現頻度の低いより符号長の長い第2の可変長符号につ
いては、第2の復号テーブル13により符号列A0の一
回の参照で一つの可変長符号のみが復号される。
【0039】従って、第1の実施形態と同様に、第1の
復号テーブル12から符号列A0の一回の参照で複数の
復号結果を同時に出力できるために復号効率が向上する
ことに加えて、二つの復号テーブル12,13を一つの
ランダムロジックまたはROM上に一つのテーブルとし
て効率的に実現でき、回路規模を小さくすることができ
る。
【0040】(第3の実施形態)図6は、本発明の第3
の実施形態に係る可変長復号器の構成を示している。本
実施形態では、第1の復号テーブル12及び第2の復号
テーブル13に加えて、さらに第3の復号テーブル14
が設けられている。この新たに追加された第3の復号テ
ーブル14は、第1の復号テーブル12で復号すべき単
位可変長符号の組み合わせからなる第1の可変長符号
や、第2の復号テーブル13で復号すべき第2の可変長
符号に比較して出現頻度か低く、最大符号長がより長い
第3の可変長符号に、その符号長及び復号結果を対応付
けたものであり、同様にランダムロジックまたはROM
により構成される。
【0041】ここで、第3の可変長符号は入力処理部1
1から複数回(2回以上)にわたって出力される複数組
の符号列によって構成され、これらの符号列によって第
3の復号テーブル14が複数回参照されるか、または各
符号列の集合によって組み立てられた第3の可変長符号
により第3の復号テーブル14が一回参照されることに
より、第3の可変長符号の復号結果が出力される。
【0042】このように復号すべき可変長符号の最大符
号長がより長い可変長符号については、第3の復号テー
ブル14を用意することにより、最大符号長の異なる種
々の可変長符号を復号することができる。また、本実施
形態を拡張して最大符号長が異なる第3の復号テーブル
14を増設することも可能である。
【0043】(第4の実施形態)図7は、本発明の第4
の実施形態に係る可変長復号器であり、入力処理部21
と複数(M)の復号テーブル21−1〜21−Mから構
成される。復号テーブル21−1〜21−Mは、可変長
符号の複数の種類それぞれに対応したものであって、入
力される可変長符号の種類に応じたテーブル選択信号に
よって一つが選択され、その選択された復号テーブルか
ら復号結果が出力される。
【0044】ここで、可変長符号の種類とは、言い換え
れば可変長符号として符号化された情報シンボル(符号
化パラメータともいう)の種類であり、具体的にはMP
EGの場合を例にとると、情報シンボルの種類としては
量子化DCT係数、動き補償予測に使用する動きベクト
ル、予測モード、量子化ステップサイズ及びマクロブロ
ックタイプなどのヘッダ情報等が挙げられる。
【0045】そして、可変長符号のそれぞれの種類に対
応して設けられた復号テーブル21−1〜21−Mの各
々は、第1の実施形態で説明した復号テーブル12、ま
たは第2の実施形態で説明した第1の復号テーブル12
と第2の復号テーブル13の組み合わせ、あるいは第3
の実施形態で説明した第1の復号テーブル12と第2の
復号テーブル13及び第3の復号テーブル14の組み合
わせによって構成される。このように本発明は、複数の
可変長符号の種類にそれぞれ対応した複数の復号テーブ
ルを用いた可変長復号器にも適用が可能である。
【0046】(第5の実施形態)次に、上述した第1乃
至第3の実施形態と異なる観点に基づく本発明の第5の
実施形態について説明する。
【0047】まず、図8を用いて本実施形態の原理を述
べる。図8に示す可変長符号列において、これから復号
しようとする任意の部分可変長符号列の先頭をaとし、
この先頭aからLビットの長さを持つ符号列(第1の符
号列)を符号列A1とする。また、先頭aよりnビット
シフトした位置bからLビットの長さを持つ符号列(第
2の符号列)を符号列A2とし、同様に先頭aよりmビ
ットシフトした位置cからLビットの長さを持つ符号列
(これも第2の符号列)を符号列A3とする。但し、第
1の符号列A1の先頭aに対する二つの第2の符号列A
2,A3のシフト量n,mは異なっているとする(n<
m)。
【0048】本実施形態では、このような関係にある第
1の符号列A1及び二つの第2の符号列A2,A3を同
一構成の復号テーブルにそれぞれ入力し、第1の符号列
A1の復号結果と、第2の符号列A2,A3のいずれか
一方の復号結果を同時に出力することを可能としたもの
である。すなわち、一回のテーブル参照で最大で2つの
可変長符号を同時に復号することが可能である。
【0049】図9に、本実施形態に係る可変長復号器の
構成を示す。この可変長復号器は、入力処理部31、3
つの復号テーブル32−1,32−2,32−3、第1
の選択器33、第2の選択器34及び選択制御部35か
ら構成される。
【0050】入力処理部31は、復号すべき可変長符号
列を入力し、この可変長符号列の頭出しを行って、図8
に示したようにまず、ある任意の部分可変長符号列の先
頭から所定長さ(Lビット)の符号列A1を切り出し、
次にnビットシフトしたLビットの符号列A2を切り出
し、次にmビットシフトしたLビットの符号列A3を切
り出して順次出力する処理を行う。入力処理部31に
は、シフト量n,mの情報が与えられている。
【0051】入力処理部31から出力される符号列A
1,A2及びA3は、それぞれ復号テーブル32−1
(第1の復号テーブル)、復号テーブル32−2及び3
2−3(第2の復号テーブル)に参照入力として与えら
れる。復号テーブル32−1,32−2,32−3は、
それぞれ同じ複数の可変長符号に復号結果及び符号長を
対応付けたものであり、ランダムロジックまたはROM
により構成される。
【0052】復号テーブル32−1,32−2,32−
3からは、符号長B1,B2,B3の情報及び復号結果
C1,C2,C3がそれぞれ出力される。第1の選択器
33は、選択制御部35により制御され、基本的に符号
長B2,B3の情報のいずれかを選択して出力する。第
2の選択器34は、選択制御部35により制御され、基
本的に復号結果C2,C3のいずれかを選択して、復号
結果C2/C3として出力する。選択制御部35は、復
号テーブル32−1から出力される符号長B1とシフト
量m,nとを比較し、それに基づいて第1の選択器33
及び第2の選択器34を制御すると共に、復号結果C2
/C3が有効の場合に有効信号を出力する。
【0053】第1の復号テーブル32−1から出力され
る符号長B1の情報と、第1の選択器33で選択された
第2の復号テーブル32−2または32−3から出力さ
れる符号長B2またはB3の情報が入力処理部31にフ
ィードバックされ、部分可変長符号列の頭出しのため
に、つまり次に復号すべき可変長符号が含まれている部
分可変長符号列の先頭を知らせるために用いられる。
【0054】本実施形態における可変長復号器の出力
は、第1の復号テーブル32−1から出力される復号結
果C1と、第2の復号テーブル32−2,32−3のい
ずれかの復号結果C2/C3及びC2/C3の有効信号
となる。有効信号が出力されている場合は、有効な復号
結果として復号結果C1と復号結果C2/C3が出力さ
れることになる。
【0055】次に、本実施形態の可変長復号器の動作に
ついて説明する。入力処理部31で図8に示したように
符号列A1,A2,A3が生成され、復号テーブル32
−1,32−2,32−3にそれぞれ入力される。符号
列A1,A2,A3にはそれぞれ複数の可変長符号、こ
こでは簡単のため2つの可変長符号が含まれているもの
とする。この場合、復号テーブル32−1では、符号列
A1に含まれる最初の可変長符号が必ず復号される。
【0056】一方、復号テーブル32−2では、復号テ
ーブル32−1で復号された、符号列A1に含まれる可
変長符号の符号長がちょうどnビットであると仮定した
場合に、復号テーブル32−1で次に復号される可変長
符号が復号される。同様に、復号テーブル32−3で
は、復号テーブル32−1で復号された符号列A1に含
まれる可変長符号の符号長がちょうどmビットであると
仮定した場合に、復号テーブル32−1で次に復号され
る可変長符号が復号されることになる。
【0057】このように復号テーブル32−1では、必
ず部分可変長符号列の符号列A1に含まれる可変長符号
が復号されるが、この可変長符号の符号長がnまたはm
ビットに一致している場合には、これと並行して復号テ
ーブル32−2,32−3のいずれかにより、復号テー
ブル32−1で復号された可変長符号の次の可変長符号
が復号されることになる。すなわち、連続する二つの可
変長符号の復号結果を並行して得ることができる。
【0058】具体的な動作で説明すると、選択制御部3
5は復号テーブル32−1から出力される符号長B1の
情報と入力処理部31でのシフト量n,mとを比較し、
符号長B1がシフト量nに一致すれば復号テーブル32
−2から出力される符号長B2の情報及び復号結果C2
が選択され、符号長B1がシフト量mに一致すれば復号
テーブル32−3から出力される符号長B3の情報及び
復号結果C3が選択されるように、第1の選択器33及
び第2の選択器34を制御する。また、選択制御部35
は、これらの場合において第2の選択器34から出力さ
れる復号結果C2/C3が有効であることを示す有効信
号を出力する。
【0059】さらに、符号長B1が入力処理部31での
シフト量n,mのいずれにも一致しない場合には、選択
制御部35は第1の選択器33に対して符号長0の情報
を出力するように制御し、かつ第2の選択器34から出
力される復号結果C2/C3についての有効信号を出力
しない。
【0060】復号テーブル32−1から出力される符号
長B1の情報と、第1の選択器33から出力される符号
長B2またはB3の情報は、入力処理部31にフィード
バックされる。入力処理部31では、復号テーブル32
−1で符号列A1に含まれる最初の可変長符号が復号さ
れ、かつ復号テーブル32−2または32−3で符号列
A2または符号列A3に含まれる最初の可変長符号(符
号列A1に含まれる2番目の可変長符号と同じ)が復号
されたとき、符号列A1の最初の可変長符号の符号長B
1(この場合、B1はシフト量nまたはmに等しい)
に、符号長B2またはB3(この場合、B2またはB3
は符号列A1の2番目の可変長符号の符号長に等しい)
を加算することにより、次の部分可変長符号列の先頭位
置を知る。これにより入力処理部31は、次の可変長符
号列から符号列A1,A2,A3に相当する符号列を順
次切り出して出力することができる。
【0061】一方、符号長B1が入力処理部31でのシ
フト量n,mのいずれにも一致せず、復号テーブル32
−2,32−3のいずれからも符号列A1の2番目の可
変長符号が復号されない場合には、前述したように選択
制御部35からの制御により第1の選択器33は符号長
0の情報を出力し、入力処理部31は符号長B1になに
も加算しない(0を加算する)ので、符号列B1で次に
復号すべき2番目の可変長符号の頭出しを行うことにな
る。
【0062】このように本実施形態によると、例えば図
10に示すように符号列A1の中に複数の可変長符号
1,2,3,…が存在する場合、可変長符号1の符号長
がnビットまたはmビットであれば、可変長符号1と可
変長符号2を復号テーブルの一回の参照で復号すること
ができ、復号効率が向上する。
【0063】なお、本実施形態は図7に示したような複
数種類の可変長符号を復号する可変長復号器にも適用で
きることはいうまでもない。その場合には、入力処理部
31、第1及び第2の選択器33,34及び選択制御部
35を可変長符号の各種類に応じて複数個ずつ設ければ
よい。
【0064】また、本実施形態ではシフト量n,mの値
を最適化することで、回路規模を大きくせずに復号効率
を最大限に高めることができる。n,mを状況に応じて
可変とし、例えば可変長符号の種類に応じてn,mを最
適化することにより、どの種類の可変長符号に対しても
高い復号効率を実現することも可能となる。
【0065】さらに、回路規模の増大をあまり考えなけ
れば、入力処理部でのシフトの数(シフトにより生成す
る符号列の数)、つまり復号テーブルの数を増やすこと
によって、毎回の復号処理で必ず2つの可変長符号を復
号するようにすることも可能である。この場合も、シフ
ト数を限定し、かつシフト量を最適化または符号種など
の状況に応じて可変とすることにより、回路規模の増大
を抑制することができる。
【0066】
【発明の効果】以上説明したように、本発明の可変長復
号器によれば、復号テーブルの一回の参照で複数の可変
長符号を復号でき、復号効率を飛躍的に高めることが可
能となる。
【図面の簡単な説明】
【図1】 本発明の第1の実施形態に係る可変長復号器
の構成を示すブロック図
【図2】 同実施形態における復号テーブルの基となる
単位可変長符号と符号長及び復号結果の関係を示す図
【図3】 同実施形態における復号テーブルの構成を示
す図
【図4】 同実施形態における復号の様子を示す図
【図5】 本発明の第2の実施形態に係る可変長復号器
の構成を示すブロック図
【図6】 本発明の第3の実施形態に係る可変長復号器
の構成を示すブロック図
【図7】 本発明の第4の実施形態に係る可変長復号器
の構成を示すブロック図
【図8】 本発明の第5の実施形態における可変長符号
列から複数の符号列を切り出す様子を示す図
【図9】 同実施形態に係る可変長復号器の構成を示す
ブロック図
【図10】 同実施形態における復号の様子を示す図
【図11】 可変長符号列から符号列を切り出す様子を
示す図
【図12】 従来技術による可変長復号器の構成を示す
ブロック図
【図13】 従来技術による可変長復号器における復号
の様子を示す図
【符号の説明】
11…入力処理部 12…復号テーブル(第1の復号テーブル) 13…第2の復号テーブル 14…第3の復号テーブル 21…入力処理部 22−1,22−2,22−3…復号テーブル 31…入力処理部 32−1…第1の復号テーブル 32−2,32−3…第2の復号テーブル 33…第1の選択器 34…第2の選択器 35…選択制御部
フロントページの続き Fターム(参考) 5C059 KK15 MA00 MA23 MC14 ME01 PP04 SS01 SS11 UA05 5J064 AA02 BA09 BB02 BC01 BC14 BD02

Claims (12)

    【特許請求の範囲】
  1. 【請求項1】入力される可変長符号列に含まれる各々の
    可変長符号を復号する可変長復号器において、 前記可変長符号列から所定長さの符号列を切り出して出
    力する入力処理部と、 前記入力処理部から出力される符号列を入力として該符
    号列中の可変長符号に対応する復号結果を出力する第1
    の復号テーブルとを有し、 前記第1の復号テーブルは、予め定めた複数の単位可変
    長符号をそれぞれ0を含む任意の数ずつ組み合わせた複
    数の第1の可変長符号に、該第1の可変長符号に含まれ
    る各単位可変長符号に対する復号結果の組み合わせを対
    応付け、前記入力処理部から出力される符号列に含まれ
    る第1の可変長符号に対応して複数の復号結果を出力す
    ることを特徴とする可変長復号器。
  2. 【請求項2】入力される可変長符号列に含まれる各々の
    可変長符号を復号する可変長復号器において、 前記可変長符号列から所定長さの符号列を切り出して出
    力する入力処理部と、 前記入力処理部から出力される符号列を入力として該符
    号列中の可変長符号に対応する復号結果を出力する第1
    及び第2の復号テーブルとを有し、 前記第1の復号テーブルは、予め定めた複数の単位可変
    長符号をそれぞれ0を含む任意の数ずつ組み合わせた複
    数の第1の可変長符号に、該第1の可変長符号に含まれ
    る各単位可変長符号に対する復号結果の組み合わせを対
    応付け、前記入力処理部から出力される符号列に含まれ
    る第1の可変長符号に対応して複数の復号結果を出力
    し、 前記第2の復号テーブルは、前記第1の可変長符号に含
    まれる単位可変長符号より出現頻度が低く最大符号長が
    前記第1の可変長符号と同一の第2の可変長符号に復号
    結果を対応付け、前記入力処理部から出力される符号列
    に含まれる第2の可変長符号に対応して一つの復号結果
    を出力することを特徴とする可変長復号器。
  3. 【請求項3】前記第1の復号テーブルは、各々の復号結
    果にその復号結果が有効であるか無効であるかを示す有
    効/無効信号を付加して出力することを特徴とする請求
    項1または2記載の可変長復号器。
  4. 【請求項4】前記第2の可変長符号に比較して出現頻度
    が低く、かつ最大符号長が長い第3の可変長符号に復号
    結果を対応付け、前記入力処理部から複数回にわたって
    出力される符号列により構成される第3の可変長符号に
    対応して一つの復号結果を出力する少なくとも一つの第
    3の復号テーブルをさらに有することを特徴とする請求
    項2記載の可変長復号器。
  5. 【請求項5】前記第1及び第2の復号テーブルは、一つ
    のテーブルとして構成されていることを特徴とする請求
    項2または4記載の可変長復号器。
  6. 【請求項6】入力される可変長符号列に含まれる複数種
    類の可変長符号を復号する可変長復号器であって、前記
    第1の復号テーブルあるいは前記第1乃至第2または第
    3の復号テーブルは、該可変長符号の種類に対応して複
    数個設けられることを特徴とする請求項1乃至5のいず
    れか1項記載の可変長復号器。
  7. 【請求項7】入力される可変長符号列に含まれる各々の
    可変長符号を復号する可変長復号器において、 前記可変長符号列から、任意の部分可変長符号列の先頭
    より所定長さの第1の符号列及び該第1の符号列と同一
    長さで該第1の符号列より所定のシフト量シフトした少
    なくとも一つの第2の符号列を切り出して出力する入力
    処理部と、 前記第1の符号列を入力として該符号列に対応する復号
    結果及び該符号列の符号長を示す符号長情報を出力する
    第1の復号テーブルと、 前記少なくとも一つの第2の符号列の各々を入力として
    該符号列に対応する復号結果及び該符号列の符号長を示
    す符号長情報をそれぞれ出力する少なくとも一つの第2
    の復号テーブルと、 前記第1の復号テーブルから出力される符号長情報と前
    記少なくとも一つの第2の復号テーブルに入力される少
    なくとも一つの第2の符号列のシフト量とを比較し、前
    記第1の復号テーブルから出力される符号長情報にシフ
    ト量が一致したとき該第2の符号列を入力とする第2の
    復号テーブルから出力される符号長情報及び復号結果を
    選択し、該符号長情報を前記第1の復号テーブルから出
    力される符号長情報と共に前記入力処理部に次の部分可
    変長符号列の先頭を知らせるためにフィードバックする
    制御手段とを有することを特徴とする可変長復号器。
  8. 【請求項8】入力される可変長符号列に含まれる複数種
    類の可変長符号を復号する可変長復号器であって、前記
    入力処理部、前記第1及び第2の復号テーブル並びに前
    記制御手段は、該可変長符号の種類に対応して複数個設
    けられることを特徴とする請求項7記載の可変長復号
    器。
  9. 【請求項9】入力される可変長符号列に含まれる各々の
    可変長符号を復号する可変長復号器において、 前記可変長符号列から、任意の部分可変長符号列の先頭
    より所定長さの第1の符号列及び該第1の符号列と同一
    長さで該第1の符号列より順次異なるシフト量ずつシフ
    トした複数の第2の符号列を切り出して出力する入力処
    理部と、 前記第1の符号列を入力として該符号列に対応する復号
    結果及び該符号列の符号長を示す符号長情報を出力する
    第1の復号テーブルと、 前記複数の第2の符号列の各々を入力として該符号列に
    対応する復号結果及び該符号列の符号長を示す符号長情
    報を出力する複数の第2の復号テーブルと、 前記複数の第2の復号テーブルから出力される符号長情
    報を選択して、該選択した符号長情報を前記第1の復号
    テーブルから出力される符号長情報と共に前記入力処理
    部に次の部分可変長符号列の先頭を知らせるためにフィ
    ードバックする第1の選択器と、 前記複数の第2の復号テーブルから出力される復号結果
    のいずれかを選択する第2の選択器と、 前記第1の復号テーブルから出力される符号長情報と前
    記複数の第2の復号テーブルにそれぞれ入力される第2
    の符号列のシフト量とを比較し、前記複数の第2の復号
    テーブルのうち該第1の復号テーブルから出力される符
    号長情報にシフト量が一致した第2の符号列を入力とす
    る第2の復号テーブルから出力される符号長情報及び復
    号結果が選択されるように前記第1及び第2の選択器を
    制御する選択制御部とを有することを特徴とする可変長
    復号器。
  10. 【請求項10】前記選択制御部は、前記複数の第2の復
    号テーブルにそれぞれ入力される第2の符号列のいずれ
    のシフト量も前記第1の復号テーブルから出力される符
    号長情報に一致しない場合は、前記第1の選択器から符
    号長0の情報を出力させると共に、前記第2の選択器の
    出力を無効にすることを特徴とする請求項9記載の可変
    長復号器。
  11. 【請求項11】入力される可変長符号列に含まれる複数
    種類の可変長符号を復号する可変長復号器であって、前
    記入力処理部、前記第1及び第2の復号テーブル、前記
    第1及び第2の選択器並びに前記選択制御部は、該可変
    長符号の種類に対応して複数個設けられることを特徴と
    する請求項9または10記載の可変長復号器。
  12. 【請求項12】前記シフト量は、前記可変長符号の種類
    に応じて異なる値に設定されることを特徴とする請求項
    8または11記載の可変長復号器。
JP2000088410A 2000-03-28 2000-03-28 可変長復号器 Abandoned JP2001274690A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000088410A JP2001274690A (ja) 2000-03-28 2000-03-28 可変長復号器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000088410A JP2001274690A (ja) 2000-03-28 2000-03-28 可変長復号器

Publications (1)

Publication Number Publication Date
JP2001274690A true JP2001274690A (ja) 2001-10-05

Family

ID=18604295

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000088410A Abandoned JP2001274690A (ja) 2000-03-28 2000-03-28 可変長復号器

Country Status (1)

Country Link
JP (1) JP2001274690A (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010045485A (ja) * 2008-08-11 2010-02-25 Yamaha Corp 可変長符号デコーダ
JP2010166445A (ja) * 2009-01-16 2010-07-29 Canon Inc 復号装置及びその制御方法
JP2010166444A (ja) * 2009-01-16 2010-07-29 Canon Inc 復号装置及びその制御方法
CN101873499A (zh) * 2005-05-13 2010-10-27 高通股份有限公司 用于改进的多媒体解码器的方法和设备
JP2014116835A (ja) * 2012-12-11 2014-06-26 Toshiba Corp 復号装置、符号化装置、復号方法、及び符号化方法
JP2015505432A (ja) * 2011-12-07 2015-02-19 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation データ処理システムにおいて、可変長符号化データ・ストリームを復号するための方法、コンピュータ・プログラム、および、装置
JP2016058966A (ja) * 2014-09-11 2016-04-21 富士ゼロックス株式会社 復号処理装置およびプログラム

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101873499A (zh) * 2005-05-13 2010-10-27 高通股份有限公司 用于改进的多媒体解码器的方法和设备
JP2011109678A (ja) * 2005-05-13 2011-06-02 Qualcomm Inc 改良されたマルチメディアデコーダに関する方法及び装置
CN101873499B (zh) * 2005-05-13 2013-03-06 高通股份有限公司 用于改进的多媒体解码器的方法和设备
JP2013118656A (ja) * 2005-05-13 2013-06-13 Qualcomm Inc 改良されたマルチメディアデコーダに関する方法及び装置
JP2010045485A (ja) * 2008-08-11 2010-02-25 Yamaha Corp 可変長符号デコーダ
JP2010166445A (ja) * 2009-01-16 2010-07-29 Canon Inc 復号装置及びその制御方法
JP2010166444A (ja) * 2009-01-16 2010-07-29 Canon Inc 復号装置及びその制御方法
JP2015505432A (ja) * 2011-12-07 2015-02-19 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation データ処理システムにおいて、可変長符号化データ・ストリームを復号するための方法、コンピュータ・プログラム、および、装置
JP2014116835A (ja) * 2012-12-11 2014-06-26 Toshiba Corp 復号装置、符号化装置、復号方法、及び符号化方法
JP2016058966A (ja) * 2014-09-11 2016-04-21 富士ゼロックス株式会社 復号処理装置およびプログラム

Similar Documents

Publication Publication Date Title
US7573951B2 (en) Binary arithmetic decoding apparatus and methods using a pipelined structure
JP4299357B2 (ja) 復号処理装置および復号処理方法
US5550542A (en) Variable length code look-up table having separate code length determination
US8970407B2 (en) Methods and devices for parallel encoding and decoding using a bitstream structured for reduced delay
US5541595A (en) Variable length code decoder for simultaneous decoding the most significant bits and the least significant bits of a variable length code
KR100717055B1 (ko) Cabac 복호기에서 복수의 이진 값들을 파이프라인방식에 의하여 복호화하는 방법 및 이를 위한 복호화 장치
KR100470251B1 (ko) 가변길이디코더
EP0798931B1 (en) Variable length decoder and method for decoding two codes per clock cycle
JPH11501486A (ja) 可変長デコーダ
JP4098187B2 (ja) 可変長コード復号化装置及び方法
US20070139236A1 (en) Variable Length Coding Algorithm for Multiple Coding Modes
JP2001274690A (ja) 可変長復号器
US20070143118A1 (en) Apparatus and method for lossless audio signal compression/decompression through entropy coding
KR19980702418A (ko) 가변 길이 디코더
Lee et al. Soft decoding of VLC encoded data for robust transmission of packetized video
JP3600487B2 (ja) 可変長復号器及びこれを用いた動画像復号装置
US8228214B2 (en) Variable-length code decoding apparatus and method
JP2008199100A (ja) 可変長符号復号装置
CN100527847C (zh) 基于零前缀码的变长码解码方法
JPH05252051A (ja) 直列データ・デコーダ
US6091770A (en) Image coding and decoding method and related apparatus
JPH10145789A (ja) 動画像符号化方法及び動画像復号方法
JP2005130352A (ja) 復号化装置
JP2006157944A (ja) 可変長コード生成方法、符号化装置及び復号装置
KR100686354B1 (ko) 가변 트리를 이용한 허프만 복호화 방법 및 장치

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040610

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040615

A762 Written abandonment of application

Free format text: JAPANESE INTERMEDIATE CODE: A762

Effective date: 20040823