JP3088785B2 - 可変長符号の復号装置 - Google Patents
可変長符号の復号装置Info
- Publication number
- JP3088785B2 JP3088785B2 JP03184857A JP18485791A JP3088785B2 JP 3088785 B2 JP3088785 B2 JP 3088785B2 JP 03184857 A JP03184857 A JP 03184857A JP 18485791 A JP18485791 A JP 18485791A JP 3088785 B2 JP3088785 B2 JP 3088785B2
- Authority
- JP
- Japan
- Prior art keywords
- decoding
- code
- data
- length
- variable
- 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
復号装置に関するものである。
を解読する復号装置としては、例えば、図6に示すもの
があった。図において、並列/直列変換器501は可変
長符号のビット列の16ビット毎のパラレルデータを1
ビット毎のシリアルデータに変換する。復号テーブル5
02は前記並列/直列変換器501の出力データと後記
ラッチ回路503の出力データを入力し、可変長符号の
解読を行う。ラッチ回路503は前記復号テーブル50
2から出力される、後記復号状態507を1クロック遅
延させる。クロック制御回路504は前記復号テーブル
502から出力される、後記復号完了フラグ506をも
とに前記並列/直列変換器501と前記ラッチ回路50
3のクロック等を制御する。また、事象505は、復号
終了時に前記復号テーブル502から出力されるデータ
である。復号完了フラグ506は、前記復号テーブル5
02からクロック毎に出力され、復号完了時に有意とな
るフラグである。復号状態507は、前記復号テーブル
502からクロック毎に出力され、前記ラッチ回路50
3に入力、またはラッチ回路503から出力される状態
信号である。
長符号のビット列は文字どおり可変長であるため、バイ
トあるいはワードといった概念はないが、通常、可変長
符号のビット列を格納、転送するメモリ、あるいは、可
変長符号を処理するプロセッサのデータ幅からの制限に
より、1バイトあるいは数バイト単位で扱うことが多
い。従って、以下の説明では、可変長符号のビット列が
16ビット(2バイト)を単位に、復号装置に入力され
る場合を例にとる。また、図7、図8に示した符号系に
従った、図9の符号化データを用いて説明を行なう。な
お、図8は図7で示した符号の構成を示したものであ
り、便宜上、それぞれの分岐点をS0〜S11とし、以
下の説明では、これらをツリー復号状態と呼ぶ。
られた可変長符号のビット列は、まず、並列/直列変換
器501に入力されて本来のシリアルビット列になり、
1ビットずつクロックに同期して復号テーブル502に
入力される。一方、復号テーブル502の初期状態にお
いては、事象505が無意、復号完了フラグ506が非
完了、復号状態507が無意であり、また、ラッチ回路
503は初期を示す復号状態507(ツリー復号状態S
0)を出力している。この初期状態において、図9に示
した符号データの先頭ビット“0”が入力されると、復
号テーブル502は、まず、復号状態507(ツリー復
号状態S0)によって符号の先頭ビットであることを認
識する。これと同時に、そのデータが“0”であるか、
“1”であるかを認識し、もし、入力された1ビットの
データに等しい符号が存在するならば、復号完了フラグ
506を完了、復号状態507をツリー復号状態S0に
して復号した事象505を出力する。しかしながら、現
在入力されている“0”という符号は図7の符号表には
存在しないので、ここでは復号状態507としてツリー
復号状態S1が出力され、復号完了フラグを非完了のま
まとし、並列/直列変換器501から次の1ビットが入
力される。
復号テーブル502から出力される復号状態507を1
クロックだけ遅延させるためのもので、これにより、新
たな1ビットが入力されるのと同期して、ひとつ前の復
号状態507を入力することが出来る。ここでは、2ビ
ット目のデータ“0”が入力されるのと同時に、S1が
入力される。復号テーブル502は、現在、図8に示し
た符号ツリーにおけるツリー復号状態S1にいて、か
つ、2ビット目データ“0”が入力されたので、ツリー
復号状態S2に遷移する。
タにおける7ビット目が入力される状態になったと仮定
する。すなわち、この時、復号テーブル502に対する
入力はシリアルデータが“1”であり、復号状態507
がツリー復号状態S6である。図7および図8から、こ
の時、事象505としてBが復号、出力され、復号完了
フラグ506が完了となるとともに、復号状態507と
してツリー復号状態S0が出力される。これによって、
1つの符号の復号が終了し、初期状態に戻る。次の符号
を復号する時は、図8における符号ツリーのツリー復号
状態S0から、再び、上記と同様の動作が繰り返され
る。
図10である。図から分かるように、事象B,A,D,
Kを復号するのに要する時間は、それぞれ、7、5、
4、10サイクルとなる。
号装置は、上記のように構成されていたので、例えば、
1ビットの符号を復号する場合は1サイクル、7ビット
の符号を復号する場合は7サイクルというように、復号
する符号長によって処理時間が変化するという問題があ
った。このため、復号装置としての処理能力を適確に把
握することが難しく、復号装置を含むシステム全体の設
計時において、最悪の場合を考慮しない現実的なレベル
での設計しか行なうことが出来なかった。さらに、具体
的には、例えば、画像符号化に可変長符号を用い、リア
ルタイムに復号しながら表示を行なう画像システムなど
では処理遅延を計算できないため、符号データを復号装
置に転送する時にバッファなどが必要になり、符号デー
タ転送制御が非常に複雑になってしまっていた。
号の復号処理時間を一定にすることを目的としている。
入力の前段に、最大符号長の3倍以上のビット数の記憶
容量を有する記憶回路であって、リング状に構成され
た、最大符号長以上のビット数の、少なくとも3個以上
のラッチ回路から構成されているもの、または、リング
状に構成された、最大符号長以上のビット数の、少なく
とも3箇所以上の記憶領域を備えたリードライトメモリ
から構成されているものを設けると共に、この記憶回路
の任意のビット位置から連続した最大符号長分のビット
数を持つデータを選択する選択回路を設けたものであ
る。
復号テーブルへとぎれることなく最大符号長分ずつ順次
供給され、この1回の供給サイクル時間毎に1つの符号
の復号処理が行なわれる。
しながら説明する。
長符号の復号装置のブロック図を示したものである。図
において、データ変換器101は、可変長符号のビット
列の16ビット毎のパラレルデータを最大符号長である
10ビット毎のパラレルデータに変換する。ラッチ回路
102a,102b,および、102cはリング状に構
成され、前記データ変換器101の出力データを順次ラ
ッチする。選択回路103は、前記ラッチ回路102
a,102b,および102cの出力データ30ビット
の中の任意の位置から、連続した最大符号長に等しいビ
ット数のデータを選択する。復号テーブル104は、前
記選択回路103の出力データを入力して可変長符号の
解読を行なう。クロック制御回路105は、前記復号テ
ーブル104から出力される、後記符号長107をもと
に前記ラッチ回路102a,102b,および102c
のクロック等を制御する。また、事象106は前記復号
テーブル104から出力される解読後のデータ、符号長
107は前記復号テーブル104によって解読された事
象106の符号長である。
よび図8に示した符号系に従った図9の符号データを用
いて、動作について説明する。なお、本発明において
は、図8におけるツリー復号状態S0〜S11という概
念は不要である。
ット単位のビット列はデータ変換器101によって10
ビット単位のビット列に変換される。この変換の様子を
示したものが図2である。続いて、図3は本実施例にお
ける動作タイムチャートを示したものである。図におい
て、サイクルT1の状態では、図9の符号データがデー
タ変換器101によって10ビット毎のデータに分割さ
れた後、先頭からそれぞれラッチ回路102a,102
b,102cにラッチされ、かつ、そのうちのラッチ回
路102aのデータがそのまま選択回路103によって
選択されて、復号テーブル104に入力された初期の状
態を示している。この時、復号テーブル104は、1サ
イクル時間で入力データの上位ビットから解読し、上位
7ビットのデータを事象Bと認識するとともに、その符
号長107として“7”が出力され、クロック制御回路
105に入力される。クロック制御回路105では、ラ
ッチ回路102a,102b,102cのデータのう
ち、次に選択する10ビットデータの先頭がどこである
かを前記符号長107より計算し、前記選択回路103
に通知する。なお、この時、すでに復号の済んでしまっ
たデータをラッチしているラッチ回路(102a,10
2b,102cのうちどれか)がある場合には、同時
に、データ変換器101から次の10ビットデータを取
り込みラッチさせるよう制御するが、現時点では、その
対象はないのでラッチ回路102a,102b,102
cに対するクロックの入力は行なわれない。
て制御された選択回路103は、サイクルT2の状態で
は、ラッチ回路102aの下位3ビットとラッチ回路1
02bの上位7ビットを選択し、合計10ビットとし
て、復号テーブル104への入力とする。この時、復号
テーブル104は、1サイクル時間で入力データの上位
ビットから解読し、上位5ビットのデータを事象Aと認
識し、事象106を出力するとともに、その符号長10
7として“5”が出力される。次に、サイクルT3で
は、クロック制御回路105が、前記と同様に、符号長
から計算した、次の10ビットの先頭を選択回路103
に指示し、ラッチ回路102bの下位8ビットとラッチ
回路102cの上位2ビットとの合計10ビットが選択
回路103によって選択され、復号テーブル104に入
力される。なお、この際、ラッチ回路102aにラッチ
されていたデータは、全て解読を終了しているため、前
記の事象Aの解読と同時に、新しい10ビットデータが
データ変換器101からラッチ回路102aに送られ、
ラッチされる。以後、同様にして、ラッチ回路102
b,102c,102aの順に、解読の終了したデータ
をラッチしているラッチ回路に新しいデータが入力さ
れ、事象106としてD,K,F,Eが順に解読されて
いく。
02a,102b,102c、および選択回路103の
動作を示したものが図4である。図中、斜線で示した部
分は各事象の可変長データに相当する部分であり、これ
らは、1つのラッチ回路内だけにある場合と、2つのラ
ッチ回路にまたがる場合とがある。しかし、いづれにし
ても、ラッチ回路のデータ幅は最大符号長に等しいた
め、1つの事象の可変長データが3つのラッチ回路に同
時にまたがる場合は存在しえない。従って、いかなる場
合であっても、データ変換器101からラッチ回路10
2a,102b,102cへのデータ転送は、復号テー
ブル104における復号動作と同時に行なうことが出来
る。
ーブル104に入力されるデータの速度、即ち、1つの
事象が復号される時間を、常に一定とすることができる
ので、可変長符号の復号装置としての処理能力、処理限
界を定量的に把握することができ、可変長符号の復号装
置を用いたシステムを、容易に設計することができる。
チ回路のデータ幅を、最大符号長に等しくし、個数を3
個としたが、データ幅は最大符号長以上、また、ラッチ
の個数は3個以上であれば同様の効果が得られる。ま
た、可変長データのビット列の単位を、上記説明では1
6ビットとしたが、他の値でも構わない。ただし、上記
復号装置が動作するサイクル時間と、データ変換器10
1に符号データを転送する最小サイクル時間が等しく、
かつ、ビット列の単位が最大符号長よりも小さい場合に
は、復号装置の復号速度よりも、むしろ、ビット列の復
号装置に対する入力速度の方が律速段階になるため、必
ずしも、復号速度は一定とならない場合がある。従っ
て、本実施例は、復号装置に対する符号データ転送速度
が復号装置の処理時間よりも速い場合に大きな効果を奏
する。
変長符号の復号装置を示すブロック図であり、図1と同
一または相当する部分には同符号を用いてその説明は省
略する。
は、上記実施例のラッチ回路102a,102bおよび
102cが、リードライトメモリ(RAM)201によ
って構成されている点である。すなわち、RAM201
内には、最大符号長10ビットを記憶することが可能な
記憶領域が3箇所設けられており、これら各記憶領域は
各1つのアドレスに対応している。しかも、各記憶領域
は、上記実施例における各ラッチ回路102a〜102
cと同様に、リング状に結合している。また、クロック
制御回路105は復号テーブル104から入力した符号
長107をもとに、次に選択する10ビットデータの先
頭アドレスがどこであるかを計算し、選択回路103に
通知する。これとともに、この時、すでに復号の済んで
しまったデータのみを記憶している記憶領域がある場合
には、上記通知と同時にデータ変換器101から次の1
0ビットデータを取り込むべきアドレスおよび書き込み
タイミングをRAM201に指示し、新たな10ビット
データをRAM201に記憶させるよう制御する。
1の実施例と同様な復号処理動作が行なわれ、上記第1
の実施例と同様な効果を奏する。
内の記憶領域は3箇所以上、また、各記憶領域の記憶容
量は最大符号長以上あれば良く、上記実施例と同様な効
果を奏する。
変長符号列からなるデータは、選択回路から復号テーブ
ルへとぎれることなく最大符号長分ずつ順次供給され、
この1回の供給サイクル時間毎に1つの符号の復号処理
が行なわれる。このため、復号装置としての処理能力を
適確に把握することが可能となり、設計作業が容易にな
る。また、画像装置に応用した場合にはリアルタイムに
復号しながら画像表示を行なうことが可能となり、符号
データを一時蓄えておくためのバッファは不要になり、
符号データ転送制御は簡単に行なえる。
装置を示すブロック図である。
作を説明するための図である。
タイムチャートを示した図である。
ッチ回路102、および選択回路103の動作を説明す
るための図である。
装置を示すブロック図である。
ロック図である。
る。
タ列の例を示した図である。
ムチャートを示した図である。
Claims (2)
- 【請求項1】 可変長符号列から成るビット列を復号テ
ーブルを使用して先頭から順次復号する可変長符号の復
号装置において、 最大符号長の3倍以上のビット数の記憶容量を有する、
可変長符号を保持するための記憶回路と、 この記憶回路の任意のビット位置から、連続した最大符
号長分のビット数をもつデータを選択する選択回路とを
備え、 前記記憶回路は、リング状に構成された、最大符号長以
上のビット数の、少なくとも3個以上のラッチ回路から
構成されている ことを特徴とする可変長符号の復号装
置。 - 【請求項2】 可変長符号列から成るビット列を復号テ
ーブルを使用して先頭から順次復号する可変長符号の復
号装置において、 最大符号長の3倍以上のビット数の記憶容量を有する、
可変長符号を保持するための記憶回路と、 この記憶回路の任意のビット位置から、連続した最大符
号長分のビット数をもつデータを選択する選択回路とを
備え、 前記記憶回路は、リング状に構成された、最大符号長以
上のビット数の、少なくとも3箇所以上の記憶領域を備
えたリードライトメモリから構成されていることを特徴
とする可変長符号の復号装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP03184857A JP3088785B2 (ja) | 1991-02-01 | 1991-07-24 | 可変長符号の復号装置 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1225391 | 1991-02-01 | ||
JP3-12253 | 1991-02-01 | ||
JP03184857A JP3088785B2 (ja) | 1991-02-01 | 1991-07-24 | 可変長符号の復号装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0537398A JPH0537398A (ja) | 1993-02-12 |
JP3088785B2 true JP3088785B2 (ja) | 2000-09-18 |
Family
ID=26347830
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP03184857A Expired - Fee Related JP3088785B2 (ja) | 1991-02-01 | 1991-07-24 | 可変長符号の復号装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3088785B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3005384B2 (ja) * | 1993-03-22 | 2000-01-31 | 鐘紡株式会社 | ハフマン復号化回路 |
-
1991
- 1991-07-24 JP JP03184857A patent/JP3088785B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH0537398A (ja) | 1993-02-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3136796B2 (ja) | 可変長符号デコーダ | |
JP3294026B2 (ja) | 高速可変長復号化装置 | |
JP3231855B2 (ja) | データフォーマット変換装置及び方法 | |
JP2000261674A (ja) | 画像伸長装置 | |
JPS60140981A (ja) | 符号語システムのデジタル符号語を復号する方法および装置 | |
JP4065425B2 (ja) | 可変長符号化パッキング・アーキテクチャ | |
US5309156A (en) | Variable-length code decoding device | |
JP2922571B2 (ja) | データ変換回路 | |
JP3088785B2 (ja) | 可変長符号の復号装置 | |
JP3054787B2 (ja) | 可変長符号の復号装置 | |
JP3014999B2 (ja) | ハフマン復号化装置 | |
JP3063180B2 (ja) | 可変長符号復号回路 | |
JP3063433B2 (ja) | マイクロプロセッサ | |
JP2564318B2 (ja) | 通信処理装置 | |
JP3044847B2 (ja) | 可変長符号の復号化装置 | |
JP3229690B2 (ja) | 可変長符号復号器 | |
US20020057742A1 (en) | Sorting device of variable-length code | |
US6134288A (en) | Apparatus and method for generating a decoding clock signal in response to a period of write and read clock signals | |
JP2601822B2 (ja) | 圧縮された信号を処理する伸長処理装置 | |
JPS5953579B2 (ja) | 文字圧縮装置 | |
JPH11163736A (ja) | プロセッサ | |
JP3332630B2 (ja) | 復号装置及びデコードテーブルの生成方法 | |
JPH09326707A (ja) | 可変長符号復号化演算処理装置 | |
JP2508864B2 (ja) | ディジタル論理演算回路 | |
JPS63203019A (ja) | シ−ケンシヤル復号器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080714 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090714 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100714 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110714 Year of fee payment: 11 |
|
LAPS | Cancellation because of no payment of annual fees |