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
Application number
JP03184857A
Other languages
English (en)
Other versions
JPH0537398A (ja
Inventor
和哉 堀井
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.)
Seiko Epson Corp
Original Assignee
Seiko Epson 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 Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP03184857A priority Critical patent/JP3088785B2/ja
Publication of JPH0537398A publication Critical patent/JPH0537398A/ja
Application granted granted Critical
Publication of JP3088785B2 publication Critical patent/JP3088785B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

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

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、可変長符号を解読する
復号装置に関するものである。
【0002】
【従来の技術】従来、復号テーブルを用いて可変長符号
を解読する復号装置としては、例えば、図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から出力される状態
信号である。
【0003】次に、動作について説明する。本来、可変
長符号のビット列は文字どおり可変長であるため、バイ
トあるいはワードといった概念はないが、通常、可変長
符号のビット列を格納、転送するメモリ、あるいは、可
変長符号を処理するプロセッサのデータ幅からの制限に
より、1バイトあるいは数バイト単位で扱うことが多
い。従って、以下の説明では、可変長符号のビット列が
16ビット(2バイト)を単位に、復号装置に入力され
る場合を例にとる。また、図7、図8に示した符号系に
従った、図9の符号化データを用いて説明を行なう。な
お、図8は図7で示した符号の構成を示したものであ
り、便宜上、それぞれの分岐点をS0〜S11とし、以
下の説明では、これらをツリー復号状態と呼ぶ。
【0004】さて、図6において、16ビット毎に区切
られた可変長符号のビット列は、まず、並列/直列変換
器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ビットが入
力される。
【0005】なお、ラッチ回路503は、前述の通り、
復号テーブル502から出力される復号状態507を1
クロックだけ遅延させるためのもので、これにより、新
たな1ビットが入力されるのと同期して、ひとつ前の復
号状態507を入力することが出来る。ここでは、2ビ
ット目のデータ“0”が入力されるのと同時に、S1が
入力される。復号テーブル502は、現在、図8に示し
た符号ツリーにおけるツリー復号状態S1にいて、か
つ、2ビット目データ“0”が入力されたので、ツリー
復号状態S2に遷移する。
【0006】以上のような動作を繰り返し、図9のデー
タにおける7ビット目が入力される状態になったと仮定
する。すなわち、この時、復号テーブル502に対する
入力はシリアルデータが“1”であり、復号状態507
がツリー復号状態S6である。図7および図8から、こ
の時、事象505としてBが復号、出力され、復号完了
フラグ506が完了となるとともに、復号状態507と
してツリー復号状態S0が出力される。これによって、
1つの符号の復号が終了し、初期状態に戻る。次の符号
を復号する時は、図8における符号ツリーのツリー復号
状態S0から、再び、上記と同様の動作が繰り返され
る。
【0007】以上の動作タイムチャートを示したものが
図10である。図から分かるように、事象B,A,D,
Kを復号するのに要する時間は、それぞれ、7、5、
4、10サイクルとなる。
【0008】
【発明が解決しようとする課題】従来の可変長符号の復
号装置は、上記のように構成されていたので、例えば、
1ビットの符号を復号する場合は1サイクル、7ビット
の符号を復号する場合は7サイクルというように、復号
する符号長によって処理時間が変化するという問題があ
った。このため、復号装置としての処理能力を適確に把
握することが難しく、復号装置を含むシステム全体の設
計時において、最悪の場合を考慮しない現実的なレベル
での設計しか行なうことが出来なかった。さらに、具体
的には、例えば、画像符号化に可変長符号を用い、リア
ルタイムに復号しながら表示を行なう画像システムなど
では処理遅延を計算できないため、符号データを復号装
置に転送する時にバッファなどが必要になり、符号デー
タ転送制御が非常に複雑になってしまっていた。
【0009】本発明では、上記の点を考慮し、1つの符
号の復号処理時間を一定にすることを目的としている。
【0010】
【課題を解決するための手段】本発明は、復号テーブル
入力の前段に、最大符号長の3倍以上のビット数の記憶
容量を有する記憶回路であって、リング状に構成され
た、最大符号長以上のビット数の、少なくとも3個以上
のラッチ回路から構成されているもの、または、リング
状に構成された、最大符号長以上のビット数の、少なく
とも3箇所以上の記憶領域を備えたリードライトメモリ
から構成されているものを設けると共に、この記憶回路
の任意のビット位置から連続した最大符号長分のビット
数を持つデータを選択する選択回路を設けたものであ
る。
【0011】
【作用】可変長符号列からなるデータは、選択回路から
復号テーブルへとぎれることなく最大符号長分ずつ順次
供給され、この1回の供給サイクル時間毎に1つの符号
の復号処理が行なわれる。
【0012】
【実施例】以下、この発明の実施例について図面を参照
しながら説明する。
【0013】図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の符号長である。
【0014】次に、前記従来例の場合と同様に、図7お
よび図8に示した符号系に従った図9の符号データを用
いて、動作について説明する。なお、本発明において
は、図8におけるツリー復号状態S0〜S11という概
念は不要である。
【0015】さて、まず、符号データ列から成る16ビ
ット単位のビット列はデータ変換器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に対するクロックの入力は行なわれない。
【0016】さて、前記クロック制御回路105によっ
て制御された選択回路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が順に解読されて
いく。
【0017】以上のリング状に構成されたラッチ回路1
02a,102b,102c、および選択回路103の
動作を示したものが図4である。図中、斜線で示した部
分は各事象の可変長データに相当する部分であり、これ
らは、1つのラッチ回路内だけにある場合と、2つのラ
ッチ回路にまたがる場合とがある。しかし、いづれにし
ても、ラッチ回路のデータ幅は最大符号長に等しいた
め、1つの事象の可変長データが3つのラッチ回路に同
時にまたがる場合は存在しえない。従って、いかなる場
合であっても、データ変換器101からラッチ回路10
2a,102b,102cへのデータ転送は、復号テー
ブル104における復号動作と同時に行なうことが出来
る。
【0018】以上のように、本実施例によれば、復号テ
ーブル104に入力されるデータの速度、即ち、1つの
事象が復号される時間を、常に一定とすることができる
ので、可変長符号の復号装置としての処理能力、処理限
界を定量的に把握することができ、可変長符号の復号装
置を用いたシステムを、容易に設計することができる。
【0019】なお、上記実施例の説明においては、ラッ
チ回路のデータ幅を、最大符号長に等しくし、個数を3
個としたが、データ幅は最大符号長以上、また、ラッチ
の個数は3個以上であれば同様の効果が得られる。ま
た、可変長データのビット列の単位を、上記説明では1
6ビットとしたが、他の値でも構わない。ただし、上記
復号装置が動作するサイクル時間と、データ変換器10
1に符号データを転送する最小サイクル時間が等しく、
かつ、ビット列の単位が最大符号長よりも小さい場合に
は、復号装置の復号速度よりも、むしろ、ビット列の復
号装置に対する入力速度の方が律速段階になるため、必
ずしも、復号速度は一定とならない場合がある。従っ
て、本実施例は、復号装置に対する符号データ転送速度
が復号装置の処理時間よりも速い場合に大きな効果を奏
する。
【0020】図5は、本発明の第2の実施例における可
変長符号の復号装置を示すブロック図であり、図1と同
一または相当する部分には同符号を用いてその説明は省
略する。
【0021】本実施例が上記第1の実施例と相違する点
は、上記実施例のラッチ回路102a,102bおよび
102cが、リードライトメモリ(RAM)201によ
って構成されている点である。すなわち、RAM201
内には、最大符号長10ビットを記憶することが可能な
記憶領域が3箇所設けられており、これら各記憶領域は
各1つのアドレスに対応している。しかも、各記憶領域
は、上記実施例における各ラッチ回路102a〜102
cと同様に、リング状に結合している。また、クロック
制御回路105は復号テーブル104から入力した符号
長107をもとに、次に選択する10ビットデータの先
頭アドレスがどこであるかを計算し、選択回路103に
通知する。これとともに、この時、すでに復号の済んで
しまったデータのみを記憶している記憶領域がある場合
には、上記通知と同時にデータ変換器101から次の1
0ビットデータを取り込むべきアドレスおよび書き込み
タイミングをRAM201に指示し、新たな10ビット
データをRAM201に記憶させるよう制御する。
【0022】このような第2の実施例においても上記第
1の実施例と同様な復号処理動作が行なわれ、上記第1
の実施例と同様な効果を奏する。
【0023】なお、本実施例においては、RAM201
内の記憶領域は3箇所以上、また、各記憶領域の記憶容
量は最大符号長以上あれば良く、上記実施例と同様な効
果を奏する。
【0024】
【発明の効果】以上説明したように本発明によれば、可
変長符号列からなるデータは、選択回路から復号テーブ
ルへとぎれることなく最大符号長分ずつ順次供給され、
この1回の供給サイクル時間毎に1つの符号の復号処理
が行なわれる。このため、復号装置としての処理能力を
適確に把握することが可能となり、設計作業が容易にな
る。また、画像装置に応用した場合にはリアルタイムに
復号しながら画像表示を行なうことが可能となり、符号
データを一時蓄えておくためのバッファは不要になり、
符号データ転送制御は簡単に行なえる。
【図面の簡単な説明】
【図1】本発明の第1の実施例による可変長符号の復号
装置を示すブロック図である。
【図2】第1の実施例におけるデータ変換器101の動
作を説明するための図である。
【図3】第1の実施例における可変長符号の復号動作の
タイムチャートを示した図である。
【図4】第1の実施例におけるリング状に構成されたラ
ッチ回路102、および選択回路103の動作を説明す
るための図である。
【図5】本発明の第2の実施例による可変長符号の復号
装置を示すブロック図である。
【図6】従来例における可変長符号の復号装置を示すブ
ロック図である。
【図7】可変長符号の一般的な例を示した図である。
【図8】図7の可変長符号の符号構成を示した図であ
る。
【図9】図7および図8の可変長符号を用いた符号デー
タ列の例を示した図である。
【図10】従来例における可変長符号の復号動作のタイ
ムチャートを示した図である。
【符号の説明】
101…データ変換器 102…ラッチ回路 103…選択回路 104…復号テーブル 105…クロック制御回路 106…事象 107…符号長 201…リードライトメモリ(RAM)
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 昭62−135015(JP,A) 特開 平2−254824(JP,A) (58)調査した分野(Int.Cl.7,DB名) H03M 7/40

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】 可変長符号列から成るビット列を復号テ
    ーブルを使用して先頭から順次復号する可変長符号の復
    号装置において、 最大符号長の3倍以上のビット数の記憶容量を有する、
    可変長符号を保持するための記憶回路と、 この記憶回路の任意のビット位置から、連続した最大符
    号長分のビット数をもつデータを選択する選択回路とを
    備え 前記記憶回路は、リング状に構成された、最大符号長以
    上のビット数の、少なくとも3個以上のラッチ回路から
    構成されている ことを特徴とする可変長符号の復号装
    置。
  2. 【請求項2】 可変長符号列から成るビット列を復号テ
    ーブルを使用して先頭から順次復号する可変長符号の復
    号装置において、 最大符号長の3倍以上のビット数の記憶容量を有する、
    可変長符号を保持するための記憶回路と、 この記憶回路の任意のビット位置から、連続した最大符
    号長分のビット数をもつデータを選択する選択回路とを
    備え、 前記記憶回路は、リング状に構成された、最大符号長以
    上のビット数の、少なくとも3箇所以上の記憶領域を備
    えたリードライトメモリから構成されていることを特徴
    とする可変長符号の復号装置。
JP03184857A 1991-02-01 1991-07-24 可変長符号の復号装置 Expired - Fee Related JP3088785B2 (ja)

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)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3005384B2 (ja) * 1993-03-22 2000-01-31 鐘紡株式会社 ハフマン復号化回路

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