JP3193654B2 - 可変長符号デコーダ - Google Patents

可変長符号デコーダ

Info

Publication number
JP3193654B2
JP3193654B2 JP286297A JP286297A JP3193654B2 JP 3193654 B2 JP3193654 B2 JP 3193654B2 JP 286297 A JP286297 A JP 286297A JP 286297 A JP286297 A JP 286297A JP 3193654 B2 JP3193654 B2 JP 3193654B2
Authority
JP
Japan
Prior art keywords
output
latch
signal
codeword
multiplexer
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
JP286297A
Other languages
English (en)
Other versions
JPH09261074A (ja
Inventor
ス ハン ギム
ション オク ベ
Original Assignee
エルジー電子株式会社
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 エルジー電子株式会社 filed Critical エルジー電子株式会社
Publication of JPH09261074A publication Critical patent/JPH09261074A/ja
Application granted granted Critical
Publication of JP3193654B2 publication Critical patent/JP3193654B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
    • H03M7/42Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code using table look-up for the coding or decoding process, e.g. using read-only memory
    • H03M7/425Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code using table look-up for the coding or decoding process, e.g. using read-only memory for the decoding process only
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、可変長符号(Va
riable Length Code:VLC)デコ
ーダに関するものである。
【0002】
【従来の技術】一般に、ハフマンコード(Huffma
nn code)とも呼ばれる可変長符号(VLC)
は、データの統計的特性を用いた最適のコードであり、
高速伝送システムで多く使われる。データの統計的特性
の適用にあたって、発生頻度がより高い画像データには
より短い符号語を割り当て、発生頻度がより小さい画像
データにはより長い符号語を割り当てる。可能な全ての
データにこの方法を適用して符号語を設計すると、平均
的な符号語長は、原データの平均符号語長より短くな
る。従って、データの統計的特性が知られているデータ
に対して多く使われる無駄のない符号化方法である。こ
のVLCは、実際に、MPEG1(Moving Pi
cture Expert Group 1),MPE
G2(Moving Picture Expert
Group 2)、又はHDTV(High Defi
nition Television)のようなシステ
ムにおいてデータの圧縮率を高めるために採択されてい
る。次第に早い速度の可変長符号データを必要とするよ
うになるに伴い、既存のTBA(Tree−Based
Archithecture)よりはPLABA(Pr
ogrammableLogic Array−Bas
ed Architecture)を用いた構造が提案
されており、それらの多くは可変長符号デコーダ内の最
長遅延時間を減少させることに関心が向けられていた。
【0003】しかし、MPEG1,MPEG2、又はH
DTVのようなシステムにおいて、複雑な可変長符号デ
コーダが周辺回路と連結されて1つの機能ブロックを形
成する場合、この機能ブロックの速度は、可変長符号デ
コーダと周辺回路を連結する部分に存する最長遅延時間
により決定されるようになる。従って、MPEG1,M
PEG2、又はHDTVのようなシステムで周辺回路と
連結されて1つの機能ブロックを構成する可変長符号デ
コーダでは、周辺回路の複雑度に応じて、それ自体の内
部の最長遅延時間のみならず、それと周辺回路との連結
部分に存する最長遅延時間までも顧慮すべきである。
【0004】図1に示すように、入力バッファ2に入力
されたエンコードされた符号語(又は、データ)は、制
御ロジック部1の制御により可変長符号デコーダを備え
たデータパス3を介してデコードされ、このデコードさ
れた符号語は出力バッファ4を介して出力される。上記
のように、可変長符号(VLC)デコーダは、周辺回路
と連結されて1つの機能ブロックを構成する場合が一般
的である。この際、VLCテーブル回路の出力が直ちに
他の機能ブロックの入力バッファに貯蔵されることもで
きるが、大部分の場合に、周辺回路の入力として使用さ
れるか、他の機能ブロックに適する形態に変形された後
に他の機能ブロックの入力バッファに貯蔵される。
【0005】以下、図2に基づき従来の技術(米国特許
No.5,245,338)による可変長符号デコーダを
説明する。図2は、従来の技術による可変長符号デコー
ダを示すブロック図である。図2において、可変長符号
デコーダは、入力バッファ201、第1ラッチ部20
2、第1バレルシフタ203、第2ラッチ部204、第
2バレル(Barrel)シフタ205,VLCテーブ
ル回路206、第1ラッチ207、制御信号発生部20
8及び出力バッファ209で構成される。又、図2によ
れば、第1ラッチ部202は第2ラッチ202aと第3
ラッチ202bで構成され、第2ラッチ部204は第4
ラッチ204aと第5ラッチ204bで構成される。制
御信号発生部208は加算器208aと第6ラッチ20
8bで構成される。
【0006】図2において、複数のランダムロジックゲ
ートで構成されたVLCテーブル回路206は、連続的
に入力される可変長符号語を連続的にデコードし、固定
されたシンボルクロック速度に基づく読出信号に応答し
てデコードされた固定長を有する符号語を出力する。第
1ラッチ部202と第1バレルシフタ203は、入力バ
ッファ201と第2ラッチ部204との間を適切にイン
タフェースする機能をする。入力バッファ201は固定
長を有するデータセグメントにデータチャンネルを介し
て受信された可変長を有する符号語の直列ビットストリ
ームを貯蔵する。そして、制御信号発生部208は第6
ラッチ208bから出力される読出信号に応答して16
ビットのデータを並列で出力する。
【0007】前記VLCテーブル回路206は、未知の
ビット長を有する符号語に対して、この符号語のビット
長と、前記のビット長を有するデコードされた符号語を
それぞれラッチ207と出力バッファ209に出力す
る。又、第2バレルシフタ205の出力側は、VLCテ
ーブル回路206にデコーディングウィンドウを提供
し、第1ラッチ207に蓄積された現在のクロックの前
のクロックまでにデコードされた符号語のビット長によ
り制御される。第2バレルシフタ205にはラッチ20
4a,204bから可変長を有する符号語が供給され
る。ラッチ204a,204bのそれぞれは、最大の長
さの符号語の長さと少なくとも同じビット容量を有す
る。第2ラッチ部204は、少なくとも2つの可変長符
号語を有する連続的なビットを提供する。第2バレルシ
フタ205の出力側は、VLCテーブル回路206の入
力側と接続され、第5ラッチ204bに第1ラッチ部2
02と第1バレルシフタ203から入力データが供給さ
れる間に、第2バレルシフタ205の出力側は、第4ラ
ッチ部204aと第5ラッチ部204bに貯蔵されてい
た最長の符号語の2倍に当たる連続的なビットの中から
デコードされるべき最長の符号語の長さに当たるビット
を出力する。
【0008】VLCテーブル回路206は、第2バレル
シフタ205から出力された符号語の長さを第1ラッチ
207に出力し、又、デコーダされた符号語を出力バッ
ファ209に出力する。現在のクロックの次のクロック
において、第2バレルシフタ205は、第1ラッチ20
7から出力された以前のクロックまでにデコードされた
符号語の長さにより制御される。従って、第2バレルシ
フタ205の出力用ウィンドウは、第1ラッチ207か
ら出力された以前のクロックまでにデコードされた符号
語のビット長だけシフトされる。従って、第2バレルシ
フタ205の出力用ウィンドウは、新たにデコードされ
る符号語の第1のビットから始まる。第4ラッチ204
a内の全てのビットが全てのクロックで変換されると、
第5ラッチ204bは、各クロックに対応する1サイク
ル期間中に再度インタフェース機能を有する第1バレル
シフタ203からの相応のビットストリームにより埋め
られる。即ち、デコードされた符号語の第1のビットか
ら始まる連続的なビットストリームが第2バレルシフタ
205の入力側に表れるようになる。又、第1バレルシ
フタ203は、第5ラッチ204bにビットストリーム
を供給するが、このビットストリームは直ちに第5ラッ
チ204bに入力されるため、最長遅延時間には含まれ
ない。このように、第2バレルシフタ205の入力側に
表れる、以前のクロックでデコードされた符号語のビッ
トストリームは、それぞれのクロックに対応する1サイ
クル期間中に間違いなく更新されるべきである。
【0009】上述したように、第5ラッチ204bへの
入力はインタフェース用第1バレルシフタ203から提
供される。インタフェース用第1バレルシフタ203の
入力側には最長の符号語長に当たる容量を有する2つの
連続したラッチ202a,202bと入力バッファ20
1により符号語が提供される。インタフェース用第2ラ
ッチと第3ラッチ202a,202bは入力バッファ2
01から出力されうる最長の符号語の長さに当たるビッ
ト容量を有する。第1バレルシフタ203の出力は、V
LCテーブル回路206の出力からのデコードされた符
号語の長さと制御信号発生部208の第6ラッチ208
bから出力される現在のクロックの以前のクロックまで
のデコードされた符号語の長さの合計とを加算する加算
器208aの出力により制御される。
【0010】サイクルごとに、第1バレルシフタ203
の出力は、加算器208aにより加算されたデコードさ
れた符号語のビット長の合計に応じてシフトされて、第
2バレルシフタ205の出力と連続されるビットストリ
ームをなす。次のクロックにおいて、インタフェース用
第1バレルシフタ203から出力された一連のビットシ
ーケンスは、第2バレルシフタ205の入力側に表れ
る。そして、加算器208aで加算されたデコードされ
た符号語のビット長が最長の符号語長を超えるとき、キ
ャリ(carry)が発生する。これは、インタフェー
ス用第1ラッチ202a内に貯蔵されてあった全てのビ
ットが第1バレルシフタ203を介して第5ラッチ20
4bへ移動されたことを意味する。このキャリにより、
第3ラッチ202bの全てのビットは第2ラッチ202
aへ移動し、入力バッファ201から出力された符号語
はインタフェース用第2ラッチ202aへ移動される。
これと同時に、第3ラッチ202bと第1バレルシフタ
203には新たな16ビットのデータが入力バッファ2
01から供給される。
【0011】上述したように、MPEG1,MPEG
2、又はHDTVのような高画質のシステムを具現する
際、可変長符号デコーダは周辺回路と共に連結されて1
つの機能ブロックを構成する場合が多い。又、VLCテ
ーブル回路からの出力とデコードされたコードビット
が、直ちに他の機能ブロックの入力バッファに貯蔵され
ることもできるが、大部分の場合、周辺回路の入力デー
タとして使用されたり、他の機能ブロックに対する制御
信号として使用されたりする。従って、最長遅延時間の
問題を防止しながら、早く符号語のビットをデコードす
る必要がある。この場合、周辺回路の複雑度が増加する
ほど、VLCデコーダの内部でよりはVLCデコーダと
周辺回路を連結する部分で該機能ブロックの最長遅延時
間が存するようになり、ひいては全体の高速データ伝送
システムの速度を制限する問題点が発生する。
【0012】一方、図2に示す従来の技術によれば、イ
ンタフェース用第1バレルシフタとデコーディング用第
2バレルシフタが要求されるため、VLCデコーダのサ
イズが大きくなる問題点があった。更に、デコーディン
グ用第2バレルシフタ205とVLCテーブル回路6を
介して周辺回路に連結される部分で遅延時間が存する問
題点があった。
【0013】
【発明が解決しようとする課題】本発明は、従来の技術
の可変長符号デコーダの問題点を解決するためのもの
で、その目的は、VLCデコーダと周辺回路との連結部
分に存する最長遅延時間を減少させ得ると共に、集積回
路の1つの機能ブロックに相当するチップの面積を減少
させ得る可変長符号デコーダを提供することにある。
【0014】
【課題を解決するための手段】上記の目的を達成するた
めの本発明の可変長符号デコーダは、読出信号に応答し
て一定のビット数の符号語を一時的に貯蔵した後に出力
する貯蔵部と、スイッチング信号に基づいて貯蔵部から
出力された符号語を選択的に出力するスイッチング部
と、シフト信号に基づいて出力ウィンドウをシフトさ
せ、スイッチング部から出力された符号語のうち、一定
数のビットをデコードするために出力させるバレルシフ
タと、前記バレルシフタから出力された符号語を一時的
に貯蔵した後に出力する貯蔵部と、前記貯蔵部に貯蔵さ
れた一定のビット数の符号語に対応するデコードされた
符号語及び符号語のビット長の値を出力するテーブル回
路と、テーブル回路から出力されたビット長の値を利用
して前記スイッチング信号、シフト信号、及び読出信号
を出力する制御信号発生部とを備える。
【0015】
【発明の実施の形態】以下、添付図面に基づき本発明の
可変長符号デコーダの動作を詳細に説明する。図3は、
本発明の第1実施例による可変長符号デコーダを示すブ
ロック図である。図3において、可変長符号デコーダ
は、シリアルに入力される符号語を16ビットずつパラ
レルに貯蔵し、読出信号に基づいてこれを出力する入力
バッファ310と、前記読出信号に基づいて入力された
符号語を一時的に貯蔵した後に出力するラッチ部320
と、ラッチ部320から出力された符号語を入力し、多
重化信号に基づいて選択的に出力する多重化部330
と、シフト信号に基づいてそれの出力ウィンドウをシフ
トさせて多重化部330から出力された符号語のうち一
定数のビットをデコードするために出力するバレルシフ
タ340と、バレルシフタ340から出力された符号語
を一時的に貯蔵した後に出力するラッチ350と、ラッ
チ350から出力された符号語に相応するデコードされ
た符号語を出力し、又、この符号語のビット長の値を出
力するVLCテーブル回路としてのPLA(Progr
ammable Logic Array)360と、
現在のクロックの前のクロックまでにデコードされた符
号語のビット長の値とPLA360から出力された今の
クロックにおける符号語のビット長の値とを加算し、こ
の加算された値を用いて入力バッファ310、ラッチ部
320、多重化部330、及びバレルシフタ340への
読出信号、多重化信号及びシフト信号をそれぞれ供給す
る制御信号発生部370とで構成される。
【0016】ここで、ラッチ部320は、入力バッファ
310から出力される符号語を読出信号に基づいて一時
貯蔵した後、貯蔵された符号語を出力する第1ラッチ3
21と、第1ラッチ321から出力された符号語を読出
信号に基づいて一時貯蔵した後、貯蔵された符号語を出
力する第2ラッチ322と、第2ラッチ322から出力
された符号語を一時貯蔵した後、貯蔵された符号語を出
力する第3ラッチ323とで構成される。
【0017】又、多重化部330は、入力バッファ31
0から出力された符号語とラッチ部320の第1ラッチ
321と第2ラッチ322とから出力された符号語のう
ちの1つを多重化信号に基づいて選択してバレルシフタ
340の下位の16ビットとして出力する第1マルチプ
レクサ331と、ラッチ部320の第1ラッチ321、
第2ラッチ322及び第3ラッチ323から出力された
符号語を前記多重化信号に基づいて選択してバレルシフ
タ340の上位の16ビットとして出力する第2マルチ
プレクサ332とで構成される。ここで、多重化部33
0は、1つのスイッチング部としての機能をする。従っ
て、スイッチング部として機能できる他の素子に代替さ
れ得る。ここで、ラッチ350は、便宜上、第4ラッチ
と呼ぶことにする。
【0018】そして、制御信号発生部370は、初期設
定信号が入力されると、これを選択出力し、PLA36
0から現在のクロックでデコードされた符号語のビット
長の値が出力されると、これを選択して出力する第3マ
ルチプレクサ371と、現在のクロックのすぐ前のクロ
ックまでにデコードされた符号語のビット長の値の合計
を貯蔵する第5ラッチ372と、第3マルチプレクサ3
71から出力されたビット長の値と第5ラッチ372の
出力データとを加算してバレルシフタ340の出力ウィ
ンドウをシフトするためのシフト信号とキャリ信号を出
力する加算器373と、この加算器373から出力され
るキャリ信号を一時貯蔵し、次のクロックにおいてその
貯蔵されたキャリ信号を読出信号として出力する第6ラ
ッチ374と、加算器373から出力されたキャリ信号
と第6ラッチ374から出力された読出信号を利用して
多重化部330に一入力端を選択するための多重化信号
を出力する多重化制御部375とで構成される。ここ
で、PLA360は、VLCテーブル回路であり、一種
のメモリである。ゆえに、入力される符号語に相応する
デコードされた符号語とその符号語のビット長の値を出
力する。従って、前記PLAはメモリとしての機能をす
る他の素子に代替できる。
【0019】第1実施例による可変長符号デコーダの動
作について図4及び図5を参照して説明する。まず、外
部から入力バッファ310に入力される可変長を有する
符号語は、入力バッファ310において固定シンボルク
ロック速度に従って16ビットずつ並列で出力される。
可変長を有する符号語の最長のビット長の値は16ビッ
トである。ラッチ部320の第1、第2、第3ラッチ3
21,322,323は、知られているように、ビット
レジスタで、最長符号語と同じ容量を有する。そして、
32ビットの容量を有するバレルシフタ340の入力
は、多重化部330の第1マルチプレクサ331と第2
マルチプレクサ332の出力により供給され、この際、
バレルシフタ340の出力ウィンドウは16ビットのス
ライドするデコーディングウィンドウを提供する。バレ
ルシフタ340の出力ウィンドウのシフトは制御信号発
生部370からのシフト信号により制御される。ここ
で、第1マルチプレクサ331は下位の16ビットを、
第2マルチプレクサ332は上位の16ビットをバレル
シフタ340に供給する。バレルシフタ340からの更
新された16ビットの符号語は、第4ラッチ350を介
して一種のメモリ装置であるPLA360へ入力され
る。図2に示すように、PLA360は符号語テーブル
回路とデコードされた符号語テーブル回路及び符号語長
テーブル回路で構成される。
【0020】PLA360の符号語テーブル回路は、そ
の内部に貯蔵された符号語のビットパターンのうち、入
力された符号語のビットの順序と一致するビットパター
ンに当たる符号語を検出する。更に、PLA360のデ
コードされた符号語テーブル回路は、符号語テーブル回
路で検出された可変長符号語に対応する固定長符号語、
即ちデコードされた符号語を出力する。そして、符号語
長テーブル回路は、符号語テーブル回路で検出された可
変長符号語のビット長を出力する。
【0021】次のクロック信号が発生する際、PLA3
60の符号語長テーブル回路から出力された符号語の長
さは、以前のクロックまでにデコードされた符号語のビ
ット長と加算器373で加算され、この累積された信号
はシフティング信号としてバレルシフタ340の出力ウ
ィンドウをシフトするのに使われる。又、この加算器3
73は、累積された符号語長が符号語の最長のビット長
以上であれば、キャリ信号‘1’を、以下であれば、
‘0’を発生させて、それを第6ラッチ374に供給す
る。加算器373から出力されたキャリ信号と第6ラッ
チ374から出力された読出信号がそれぞれ0(ロ
ー)、0(ロー)であれば、多重化制御部375は第1
マルチプレクサ331と第2マルチプレクサ332がそ
れぞれ第2ラッチ322の出力信号と第3ラッチ323
の出力信号をそれぞれ選択出力するように多重化信号を
提供し、キャリ信号と読出信号がそれぞれ1(ハイ)、
0(ロー)、又は0,1であれば、多重化制御部375
は、第1マルチプレクサ331と第2マルチプレクサ3
32がそれぞれ第1ラッチ321と第2ラッチ322の
出力信号を選択出力するように多重化信号を供給し、キ
ャリ信号と読出信号がそれぞれ1,1であれば、多重化
制御部375は、第1マルチプレクサ331と第2マル
チプレクサ332が入力バッファ310から出力された
信号と第1ラッチ321の出力信号をそれぞれ選択出力
するように多重化信号を第1マルチプレクサ331と第
2マルチプレクサ332に供給する。
【0022】例えば、図4のように構成されたデータス
トリームを有する符号語がこの図3の入力バッファ31
0に入力されると仮定する。図5に示すように、第1の
クロック信号において強制的に任意の16ビットが制御
信号発生部370の第3マルチプレクサ371の初期設
定信号として入力され、キャリ信号と読出信号が全て
“ハイ”となる。同時に、入力バッファ310は、入力
された符号語のうちの最初のビットを含んだ16ビット
(a1−a8b1−b6c1−c2)を出力する。ここ
で、1はハイ(high)を意味し、0はロー(lo
w)を意味する。この際、キャリ信号と読出信号が全て
1,1であるので、多重化制御部375からの多重化信
号に基づいて、第2マルチプレクサ332は第1ラッチ
321から出力された符号語を選択し、第1マルチプレ
クサ331は入力バッファ310から出力された符号語
を選択する。即ち、第1マルチプレクサ331は入力バ
ッファ310の出力信号(a1−a8b1−b6c1−
c2)を選択出力し、32ビットを入力するバレルシフ
タ340はその出力信号すなわちスライディングデコー
ディングウィンドウを16ビット分ほどシフトする。こ
の際、バレルシフタ340からはどんな信号も出力され
ない。
【0023】次いで、2番目のクロック信号が発生する
際、任意の16ビットが初期設定信号として制御信号発
生部370の第3マルチプレクサ371へ強制的に入力
される。それで、キャリ信号が1となり、1番目のクロ
ックにおいて加算器373に発生されたキャリ信号によ
り読出信号は1となり、入力バッファ310は符号語
(c3−c5d1−d13)を出力する。これにより、
1番目のクロックにおいて入力バッファ310から出力
されたデータ(a1−a8b1−b6c1−c2)は前
記読出信号により第1ラッチ321に貯蔵され、キャリ
信号と読出信号が全て1,1であるので、多重化制御部
375からの多重化信号により、第2マルチプレクサ3
32は第1ラッチ321の出力信号(a1−a8c1−
b6c1c2)を選択的に出力し、第1マルチプレクサ
331は入力バッファ310の出力信号(c3−c5d
1−d13)を選択的に出力する。第1ラッチ321と
入力バッファ310から出力された信号の入力を受けた
バレルシフタ340は、それのスライディングデコーデ
ィングウィンドウを現在の状態から16ビットほどシフ
トして、第1ラッチ321から出力された符号語(a1
−a8b1−b6c1c2)を第4ラッチ350に出力
する。
【0024】次いで、3番目のクロック信号が発生する
と、以前の2番目のクロック信号におけるキャリ信号に
基づいて読出信号は1となり、キャリ信号は実際にデコ
ードされる信号(a1−a8)が8ビットであるので0
となり、入力バッファ310は次の信号ストリーム(d
14d15e1−e12f1f2)を出力する。ここ
で、以前の2番目のクロック信号における読出信号が1
であるので、ラッチ部320の第1ラッチ321には以
前の2番目のクロックで入力バッファ310から出力さ
れたデータ(c3−c5d1−d13)を貯蔵し、第2
ラッチ322には以前の2番目のクロック信号で第1ラ
ッチ321から出力されたデータ(a1−a8b1−b
6c1c2)を貯蔵し、第4ラッチ350には以前の2
番目のクロックでバレルシフタ340から出力された信
号(a1−a8b1−b6c1c2)を貯蔵する。ここ
で、キャリ信号と読出信号がそれぞれ1,0であるの
で、第2マルチプレクサ332は第2ラッチ322のデ
ータ(a1−a8b1−b6c1c2)を、第1マルチ
プレクサ331は第1ラッチ321の出力データ(c3
−c5d1−d13)を選択してバレルシフタ340の
入力側に出力する。
【0025】第1及び第2マルチプレクサ331,33
2から出力された信号(又は、データ)の入力を受けた
バレルシフタ340は、制御信号発生部370からのシ
フト信号により以前の2番目のクロック信号においてデ
コードされた符号語の長さ(a1−a8:8ビット)分
ほどスライディングデコーディングウィンドウをシフト
して、データ(b1−b6c1−c5d1−d5)を出
力する。上記の過程は、可変長符号デコーダが動作する
間繰り返し続ける。
【0026】以下、本発明の第2実施例による可変長符
号デコーダを説明する。第2実施例においても、従来の
技術で使用された第2バレルシフタの代わりにスイッチ
ング機能をする多重化部が使用される。又、図6は、本
発明の第2実施例による可変長符号デコーダを示すブロ
ック図である。図6において、本発明の第2実施例の可
変長符号デコーダは、シリアルに入力される符号語を1
6ビットずつ並列化して前記読出信号に応答して出力す
る入力バッファ610と、読出信号に基づいて入力バッ
ファ610から出力された符号語を一時的に貯蔵した後
に出力するラッチ部620と、ラッチ部620から出力
された符号語と入力バッファ610から出力された符号
語を多重化信号に応答して選択出力する多重化部630
と、シフト信号に基づいてデコードするためのスライデ
ィング出力ウィンドウを、以前のクロック信号までにデ
コードされた符号語の長さだけシフトして、多重化部6
30から出力された符号語のうち一定のビット数(ここ
で、16ビット)ほどを出力するバレルシフタ640
と、バレルシフタ640から出力された符号語に相応す
るデコードされた符号語を出力し、このデコードされた
符号語のビット長の値を出力するPLA650と、現在
のクロックの以前のクロックまでにデコードされた符号
語のビット長の値とPLA650から出力された現在の
クロックでデコードされた符号語のビット長の値とを加
算し、この加算された値を利用してシフト信号、多重化
信号、及び読出信号を提供する制御信号発生部660と
から構成される。
【0027】ここで、ラッチ部620は、前記入力バッ
ファ610から出力された符号語を読出信号に基づいて
一時的に貯蔵した後に出力する第1ラッチ621と、第
1ラッチ621から出力された符号語を読出信号に基づ
いて一時貯蔵した後に出力する第2ラッチ622とで構
成される。又、多重化部630は、ラッチ部620の第
1ラッチ621と入力バッファ610から出力される符
号語のうちいずれか1つを多重化信号に基づいて選択し
てバレルシフタ640の下位の16ビットとして出力す
る第1マルチプレクサ631と、ラッチ部620の第1
ラッチ621と第2ラッチ622から出力される符号語
のうちのいずれか1つを多重化信号に基づいて選択して
バレルシフタ640の上位の16ビットとして出力する
第2マルチプレクサ632とで構成される。
【0028】そして、制御信号発生部660は、初期設
定信号が入力されると、これを出力し、PLA650か
ら現在のクロックにおける符号語のビット長の値が出力
されると、これを選択出力する第3マルチプレクサ66
1と、現在のクロックのすぐ前のクロックまでにデコー
ドされた符号語のビット長の値の合計を貯蔵した後に出
力する第3ラッチ662と、第3マルチプレクサ661
から出力された現在のクロックにおいてデコードされた
符号語のビット長と第3ラッチ662から出力された現
在のクロックのすぐ前のクロックまでにデコードされた
符号語のビット長の値とを加算してシフト信号及びキャ
リ信号を出力する加算器663と、加算器663から出
力されるキャリ(carry)値を一時貯蔵し、現在の
クロックの次のクロックにおいて入力バッファ610に
読出信号としてその値を出力する第4ラッチ664と、
第4ラッチ664から出力された読出信号を利用して多
重化部630の入力端のうちいずれか1つを選択させる
多重化信号を出力する多重化制御部665とで構成され
る。ここで、前記シフト信号は、バレルシフタ640の
デコーディング用出力ウィンドウを一定のビット数分ほ
どシフトさせるための信号であり、キャリ信号は、加算
器663の出力値が符号語の最長ビット長の値の以下及
び以上であるときそれぞれ発生される“1”と“0”信
号である。
【0029】以下、第2実施例による可変長符号デコー
ダの動作を説明する。まず、可変長を有する符号語が入
力バッファ610にシリアルで入力されると、読出信号
に応答して入力バッファ610は、固定されたシンボル
クロック速度に応じて、この符号語を16ビット分ずつ
並列で第1ラッチ621に出力する。そして、バレルシ
フタ640に入力される32ビットは、多重化部630
の第1マルチプレクサ631と第2マルチプレクサ63
2により供給される。バレルシフタ640の出力ウィン
ドウは、16ビットのスライディングデコーディングウ
ィンドウである。第4ラッチ664から出力された読出
信号が“0”又は“1”であるかに基づいて、多重化制
御部665は、第1マルチプレクサ631と第2マルチ
プレクサ632の2つの入力端のうちの1つを選択す
る。ここで、“0”はロー値を、“1”はハイ値を意味
する。
【0030】従って、第1マルチプレクサ631と第2
マルチプレクサ632は、多重化制御部665からの多
重化信号により、読出信号が“1”であれば、入力バッ
ファ610から出力された符号語と第1ラッチ621か
ら出力された符号語をそれぞれ出力し、読出信号が
“0”であれば、第1マルチプレクサ631と第2マル
チプレクサ632は、多重化制御部665からの多重化
信号により、第1ラッチ621から出力された符号語と
第2ラッチ622から出力された符号語をそれぞれ出力
する。バレルシフタ640から出力された更新された1
6ビットは、VLCテーブル回路であるPLA650と
連結される。このPLA650は、一種のメモリであ
り、メモリ機能をする他の素子に代替され得る。
【0031】このPLA650は、図3におけるPLA
360の構成と動作と同一である。即ち、バレルシフタ
640から出力された16ビットに相応するデコードさ
れた符号語を出力バッファ670に出力し、デコードさ
れた符号語の長さを制御信号発生部660の第3マルチ
プレクサ661に出力する。次のクロック信号が発生さ
れる際、PLA650から出力された現在のクロックに
おけるデコードされた符号語長は、第3ラッチ662の
出力信号の現在のクロックのすぐ前のクロックまでにデ
コードされた符号語のビット値と加算器663で加算さ
れて、現在のクロックの次のクロックにおいてバレルシ
フタ640の出力ウィンドウのスライディングデコーデ
ィングウィンドウをシフトするためのシフト信号として
使用される。一方、加算器663は、前記加算された値
が、設定された最長符号語のビット長の値の以下であれ
ば、“0”を、以上であれば“1”を出力する。
【0032】第2実施例は、可変長符号デコーダの内部
で速いスピードを要求しない場合に適するモデルであ
る。図6を参照すると、デコーダの速いスピードを要求
しないシステムに適するように、図3で含まれているラ
ッチ350が除外された。
【0033】又、図7は、本発明の第3実施例による可
変長符号デコーダを示すブロック図である。第3実施例
による可変長符号デコーダは、シリアルで入力される符
号語を16ビットずつ並列化して読出信号に基づいて出
力する入力バッファ710と、入力バッファ710から
出力されたデータを読出信号に応答して一時的に貯蔵し
た後に出力するラッチ部720と、ラッチ部720から
出力された符号語を多重化信号に応答して選択出力する
多重化部730と、シフト信号に応答してスライディン
グデコーディングウィンドウ(又は、出力ウィンドウ)
をシフトさせて多重化部730から出力された符号語の
うちの一定数のビットを出力するバレルシフタ740
と、バレルシフタ740から出力された符号語を一時的
に貯蔵した後に出力するラッチ750と、ラッチ750
から出力された符号語に相応するデコードされた符号語
とこの符号語のビット長の値とを出力するPLA760
と、現在のクロックの以前のクロックまでにデコードさ
れた符号語のビット長の合計とPLA760から出力さ
れた現在のクロックにおけるデコードされた符号語のビ
ット長の値とを加算し、この加算された値を利用してシ
フト信号、多重化信号、キャリ信号、及び読出信号を提
供する制御信号発生部770及び出力バッファ780と
で構成される。
【0034】ここで、ラッチ部720は、入力バッファ
710から出力された符号語を読出信号に基づいて一時
貯蔵した後、貯蔵された符号語を出力する第1ラッチ7
21と、前記第1ラッチ721から出力された符号語を
読出信号に基づいて一貯蔵した後に出力する第2ラッチ
722とで構成される。又、多重化部730は、ラッチ
部720の第1ラッチ721から出力された符号語と入
力バッファ710から出力された符号語のうちいずれか
1つを多重化信号に基づいて選択してバレルシフタ74
0の下位の16ビットに出力する第1マルチプレクサ7
31と、ラッチ部720の第1ラッチ721から出力さ
れた符号語と第2ラッチ722から出力された符号語の
うちいずれか1つを多重化信号に基づいて選択してバレ
ルシフタ740の上位の16ビットに出力する第2マル
チプレクサ732とで構成される。ここで、ラッチ75
0を便宜上で第3ラッチとする。
【0035】そして、制御信号発生部770は、初期設
定信号が入力されると、これを出力し、PLA760か
ら現在のクロックにおけるデコードされた符号語のビッ
ト長の値が出力されると、これを出力する第3マルチプ
レクサ771と、すぐ前のクロックまでデコードされた
符号語のビット値の合計を貯蔵している第4ラッチ77
2と、第3マルチプレクサ771から出力された符号語
長と第4ラッチ772から出力された符号語長とを加算
してバレルシフタ740の出力ウィンドウ(又は、スラ
イディングデコーディングウィンドウ)をシフトするた
めのシフト信号を出力し、加算された値が設定された最
長符号語のビット長の値の以下であれば“0”を、以上
であれば“1”を読出信号として出力する加算器773
と、加算器773から出力された読出信号を利用して前
記多重化部730の第1マルチプレクサ731と第2マ
ルチプレクサ732の2つの入力のうちいずれか1つを
選択するための多重化信号を提供する多重化制御部77
4とで構成される。
【0036】このように構成された本発明の第3実施例
による可変長符号デコーダは、読出信号を出力する。そ
れの出力側と連結されている周辺回路が複雑でない場合
に使用される。以下、その動作を説明する。まず、入力
バッファ710は、シリアルで入力する可変長を有する
符号語を読出信号に応答して固定されたシンボルクロッ
ク速度に応じて16ビットずつ並列で出力する。多重化
部730における第1マルチプレクサ731から出力さ
れた符号語と第2マルチプレクサ732から出力された
符号語は、バレルシフタ740の入力側に32ビットを
供給し、バレルシフタ740の出力ウィンドウは16ビ
ットのスライディングデコーディングウィンドウを提供
する。読出信号が“1”である場合、第1マルチプレク
サ731と第2マルチプレクサ732は、多重化制御部
774から提供された多重化信号により、入力バッファ
710から出力された符号語と第1ラッチ721から出
力された符号語をそれぞれ出力し、読出信号が“0”で
ある場合、第1マルチプレクサ731と第2マルチプレ
クサ732は、多重化制御部722から提供された多重
化信号に基づいて、第1ラッチ721から出力された符
号語と第2ラッチ722から出力された符号語をそれぞ
れ出力する。バレルシフタ740の出力側は、第3ラッ
チ750に連結され、第3ラッチ750の出力側は、V
LCテーブル回路のPLA760と連結される。前記P
LA760は、一種のメモリであり、メモリ機能をする
他の素子に代替され得る。
【0037】PLA760は、図3に示すPLA360
の構成と動作と同様である。即ち、入力された符号語に
相応するデコードされた符号語と、このデコードされた
符号語のビット長の値を出力する。次のクロック信号が
発生する際、現在のクロックでPLA760から出力さ
れたデコードされた符号語のビット長の値は、第4ラッ
チ772に貯蔵されているすぐ前のクロックまでにデコ
ードされた符号語のビット値と加算器773で加算さ
れ、加算された値は直接にバレルシフタ740のスライ
ディングデコーディング用出力ウィンドウをシフトする
のに使用される。そして、読出信号(又は、キャリ信
号)の状態に応じて、多重化制御部774は、第1マル
チプレクサ731と第2マルチプレクサ732のそれぞ
れの2つの入力端のうちのいずれか1つを選択出力する
ための多重化信号を提供する。
【0038】
【発明の効果】上述したように、本発明に従う可変長符
号デコーダは、従来の技術に当たるデコーダに比べて、
次のような利点がある。第1、バレルシフタの代わりに
マルチプレクサを使用することにより、同一の遅延時間
を有し、集積回路を具現するとき、面積を減少させ得
る。第2、可変長符号デコードとそれの周辺回路との間
に存する遅延時間を短くして早い動作スピードを有する
機能ブロックを具現することが可能である。
【図面の簡単な説明】
【図1】可変長符号デコーダを含むシステムの機能ブロ
ック図。
【図2】従来の技術の可変長符号デコーダを示すブロッ
ク図。
【図3】本発明の第1実施例の可変長符号デコーダを示
すブロック図。
【図4】図3に示す入力バッファに入力されるビットス
トリームの構成図。
【図5】図3に示す可変長符号デコーダの各クロックで
の動作を説明するためのテーブル回路。
【図6】本発明の第2実施例の可変長符号デコーダを示
すためのブロック図。
【図7】本発明の第3実施例の可変長符号デコーダを示
すためのブロック図。
【符号の説明】
310,610,710…バッファ 320,620,720…ラッチ部 330,630,730…多重化部 340,640,740…バレルシフタ 360,650,750…制御信号発生部 370,660,770…制御部
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平1−206728(JP,A) 特開 平2−254824(JP,A) 特開 平4−23521(JP,A) 特開 昭53−105930(JP,A) 特開 昭53−123262(JP,A) (58)調査した分野(Int.Cl.7,DB名) H03M 7/40

Claims (20)

    (57)【特許請求の範囲】
  1. 【請求項1】 読出信号に基づいてエンコードされた符
    号語を一時的に貯蔵した後に出力する第1貯蔵部と、 スイッチング信号に基づいて第1貯蔵部から出力された
    符号語を選択的に出力するスイッチング部と、 それらのデコーディング用出力ウィンドウをシフト信号
    に基づいてシフトすることによりスイッチング部から出
    力された符号語中の一定数のビットをデコードするため
    に出力するバレルシフタと、 前記バレルシフタから出力された符号語を一時的に貯蔵
    した後に出力する第2貯蔵部と、 前記第2貯蔵部に貯蔵された一定のビット数の符号語に
    対応するデコードされた符号語及びその符号語のビット
    長の値を出力するテーブル回路と、 前記テーブル回路から出力された現在のクロックにおけ
    る前記符号語のビット長の値を利用して次のクロックで
    のスイッチング信号、読出信号、及びシフト信号を発生
    する制御信号発生部と、 を備えることを特徴とする可変長符号デコーダ。
  2. 【請求項2】 前記スイッチング部は、少なくとも1つ
    のマルチプレクサで構成されることを特徴とする請求項
    1に記載の可変長符号デコーダ。
  3. 【請求項3】 前記読出信号に応答してシリアルで入力
    された符号語を一定のビット数の単位でパラレルに前記
    貯蔵部に出力する入力バッファと、そして前記テーブル
    回路から出力されたデコードされた符号語を外部に出力
    させる出力バッファと、 を更に備えることを特徴とする請求項1に記載の可変長
    符号デコーダ。
  4. 【請求項4】 前記貯蔵部は、少なくとも1つのラッチ
    で構成されることを特徴とする請求項1に記載の可変長
    符号デコーダ。
  5. 【請求項5】 前記バレルシフタとテーブル回路との間
    に連結されたラッチ部を更に備えることを特徴とする請
    求項1に記載の可変長符号デコーダ。
  6. 【請求項6】 入力される符号語を読出信号に基づいて
    一時的に貯蔵した後に出力する第1ラッチと、 前記第1ラッチから出力される符号語を前記読出信号に
    基づいて一時貯蔵した後に出力する第2ラッチと、 前記第2ラッチから出力されるデータを前記読出信号に
    基づいて一時的に貯蔵した後に出力する第3ラッチと、 前記第1ラッチに入力される符号語、第1ラッチから出
    力する符号語及び第2ラッチから出力される符号語を入
    力し、多重化制御信号に基づいてこれらのうちの1つを
    選択して出力する第1マルチプレクサと、 前記第1ラッチから出力される符号語、第2ラッチから
    出力される符号語及び第3ラッチから出力される符号語
    を入力し、前記多重化制御信号に基づいてこれらのうち
    の1つを選択して出力する第2マルチプレクサと、 前記第1マルチプレクサから出力される符号語を上位の
    ビットとして、前記第2マルチプレクサから出力される
    符号語を下位のビットとして入力し、シフト信号に基づ
    いてそれらの出力ウィンドウをシフトして一定のビット
    数の符号語を出力するバレルシフタと、 前記バレルシフタから出力される符号語を一時貯蔵した
    後に出力する第4ラッチと、 第4ラッチから出力される符号語に相応するビット長及
    びデコーダされた符号語を出力するテーブル回路と、 前記テーブル回路から出力されるビット長と初期設定信
    号とのうちの1つを選択的に出力する第3マルチプレク
    サと、 現在のクロックの以前のクロックまでにデコードされた
    符号語のビット長を貯蔵する第5ラッチと、 第3マルチプレクサから出力されたビット長と第5ラッ
    チから出力されたビット長とを加算し、加算された値を
    用いて前記シフト信号及びキャリ信号を出力する加算器
    と、 前記キャリ信号を一時貯蔵した後、前記読出信号として
    出力する第6ラッチと、そして前記キャリ信号と読出信
    号を利用して前記多重化信号を出力する多重化信号発生
    部と、 を備えることを特徴とする可変長符号デコーダ。
  7. 【請求項7】 前記キャリ信号と読出信号がそれぞれロ
    ーであるとき、第1マルチプレクサと第2マルチプレク
    サは、前記多重化信号に基づいて第2ラッチから出力さ
    れる符号語と第3ラッチから出力される符号語をそれぞ
    れ出力し、 前記キャリ信号と読出信号がそれぞれハイとロー、又は
    ローとハイであるとき、第1マルチプレクサと第2マル
    チプレクサは、前記多重化信号に基づいて第1ラッチか
    ら出力される符号語と第2ラッチから出力される符号語
    をそれぞれ出力し、そして前記キャリ信号と読出信号が
    それぞれハイであるとき、第1マルチプレクサと第2マ
    ルチプレクサは、前記多重化信号に基づいて第1ラッチ
    に入力される符号語と第1ラッチから出力される符号語
    をそれぞれ出力することを特徴とする請求項に記載の
    可変長符号デコーダ。
  8. 【請求項8】 前記第3マルチプレクサは、初期に前記
    設定信号だけが入力されると、これを出力し、前記テー
    ブル回路から現在の符号語のビット長の値が出力される
    と、これを出力することを特徴とする請求項に記載の
    可変長符号デコーダ。
  9. 【請求項9】 前記読出信号に応答してシリアルで入力
    される符号語をパラレルで前記第1ラッチに出力する入
    力バッファと、そして前記テーブル回路から出力された
    デコードされた符号語を外部に出力させる出力バッファ
    と、 を更に備えることを特徴とする請求項に記載の可変長
    符号デコーダ。
  10. 【請求項10】 前記キャリ信号は、加算された値が符
    号語の設定された最長ビット長の値の以下であるとき、
    ロー状態であり、その値を超過するとき、ハイ状態であ
    ることを特徴とする請求項に記載の可変長符号デコー
    ダ。
  11. 【請求項11】 入力される符号語を読出信号に基づい
    て一時貯蔵した後に出力する第1ラッチと、 前記第1ラッチから出力される符号語を読出信号に基づ
    いて一時貯蔵した後に出力する第2ラッチと、 第1ラッチから出力される符号語と第1ラッチに入力さ
    れる符号語を入力し、多重化信号に基づいてこれらのう
    ちの1つを出力する第1マルチプレクサと、 第2ラッチから出力される符号語と第1ラッチからの符
    号語を入力し、前記多重化信号に基づいてこれらのうち
    の1つを出力する第2マルチプレクサと、 前記第1マルチプレクサから出力される符号語を上位の
    ビットとして、第2マルチプレクサから出力される符号
    語を下位のビットとして入力し、シフト信号に基づいて
    それの出力ウィンドウをシフトして一定のビット数の符
    号語を出力するバレルシフタと、 前記バレルシフタから出力される一定のビット数の符号
    語に応答して、その符号語のビット長及びデコードされ
    た符号語を出力するテーブル回路と、 前記テーブル回路から出力されたビット長と初期設定信
    号のうちの1つを出力する第3マルチプレクサと、 現在のクロックの以前のクロックまでにデコードされた
    符号語のビット長を貯蔵している第3ラッチと、 前記第3マルチプレクサから出力されたビット長と第3
    ラッチから出力されたビット長とを加算し、加算された
    値を前記シフト信号及びキャリ信号として出力する加算
    器と、 前記キャリ信号を一時貯蔵した後、前記読出信号として
    出力する第4ラッチと、 第4ラッチから出力された読出信号を利用して前記多重
    化信号を出力する多重化信号発生部と、 を備えることを特徴とする可変長符号デコーダ。
  12. 【請求項12】 前記読出信号がハイであれば、第1マ
    ルチプレクサと第2マルチプレクサは、前記多重化信号
    に基づいて第1ラッチに入力される符号語と第1ラッチ
    から出力される符号語をそれぞれ出力し、読出信号がロ
    ーであれば、第1マルチプレクサと第2マルチプレクサ
    は、多重化信号に基づいてそれぞれ第1ラッチの出力信
    号と第2ラッチの出力信号を出力することを特徴とする
    請求項11に記載の可変長符号デコーダ。
  13. 【請求項13】 前記第3マルチプレクサは、初期に初
    期設定信号だけが入力されると、その初期設定信号を出
    力し、前記テーブル回路からビット長の値が出力される
    と、そのビット長の値を出力することを特徴とする請求
    11に記載の可変長符号デコーダ。
  14. 【請求項14】 前記読出信号に応答してシリアルで入
    力される符号語を一定のビット数分ほどパラレルで前記
    第1ラッチに出力する入力バッファと、そして前記テー
    ブル回路から出力されたデコードされた符号語を外部に
    出力させる出力バッファと、 を更に備えることを特徴とする請求項11に記載の可変
    長符号デコーダ。
  15. 【請求項15】 前記キャリ信号は、その加算された値
    が設定された最長ビット長の値の以上であるとき、ハイ
    状態であり、その以下であるとき、ロー状態であること
    を特徴とする請求項11に記載の可変長符号デコーダ。
  16. 【請求項16】 入力される符号語を読出信号に基づい
    て一時貯蔵した後に出力する第1ラッチと、 第1ラッチから出力される符号語を前記読出信号に基づ
    いて一時貯蔵した後に出力する第2ラッチと、 第1ラッチに入力する符号語と第1ラッチから出力する
    符号語を入力し、多重化信号に基づいてこれらのうちの
    1つを出力するマルチプレクサと、 第1ラッチから出力される符号語と第2ラッチから出力
    される符号語を入力し、前記多重化信号に基づいてこれ
    らのうちの1つを出力する第2マルチプレクサと、 第1マルチプレクサから出力された符号語を上位のビッ
    トとして、第2マルチプレクサから出力された符号語を
    下位のビットとして入力し、シフト信号に基づいてそれ
    の出力ウィンドウをシフトして一定数のビットを出力す
    るバレルシフタと、 前記バレルシフタから出力された符号語を一時貯蔵した
    後に出力する第3ラッチと、 第3ラッチから出力された符号語に応答して、その符号
    語のビット長とデコードされた符号語を出力するテーブ
    ル回路と、 初期設定信号と前記テーブル回路から出力されたビット
    長のうちの1つを出力する第3マルチプレクサと、 現在のクロックの以前のクロックまでにデコードされた
    符号語のビット長の合計を貯蔵している第4ラッチと、 前記第3マルチプレクサから出力された初期設定信号又
    はビット長と第4ラッチから出力されたビット長の値と
    を加算して、前記シフト信号、そして読出信号としての
    キャリ信号を出力する加算器と、 前記キャリ信号を利用して前記多重化信号を出力する多
    重化信号発生部と、 を備えることを特徴とする可変長符号デコーダ。
  17. 【請求項17】 前記読出信号がハイであるとき、第1
    マルチプレクサと第2マルチプレクサは、多重化信号に
    応答して前記第1ラッチに入力される符号語と第1ラッ
    チから出力される符号語をそれぞれ出力し、 読出信号がローであるとき、第1マルチプレクサと第2
    マルチプレクサは、前記多重化信号に応答して第1ラッ
    チから出力される符号語と第2ラッチから出力される符
    号語をそれぞれ出力することを特徴とする請求項16
    記載の可変長符号デコーダ。
  18. 【請求項18】 第3マルチプレクサは、初期に初期設
    定信号だけが入力されるとき、その初期設定信号を出力
    し、前記テーブル回路からビット長の値が入力されると
    き、初期設定信号の代わりにそのビット長の値を出力す
    ることを特徴とする請求項16に記載の可変長符号デコ
    ーダ。
  19. 【請求項19】 シリアルで入力される符号語を前記読
    出信号に応答してパラレルで前記第1ラッチに出力する
    入力バッファと、そして前記テーブル回路から出力され
    たデコードされた符号語を外部に供給するための出力バ
    ッファと、 を更に備えることを特徴とする請求項16に記載の可変
    長符号デコーダ。
  20. 【請求項20】 前記キャリ信号は、前記加算された値
    が符号語の設定された最長ビット長の以上であるとき、
    ハイ状態であり、以下であるとき、ロー状態であること
    を特徴とする請求項16に記載の可変長符号デコーダ。
JP286297A 1996-03-25 1997-01-10 可変長符号デコーダ Expired - Fee Related JP3193654B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR8150/1996 1996-03-25
KR1019960008150A KR100192269B1 (ko) 1996-03-25 1996-03-25 가변길이 코드 디코더

Publications (2)

Publication Number Publication Date
JPH09261074A JPH09261074A (ja) 1997-10-03
JP3193654B2 true JP3193654B2 (ja) 2001-07-30

Family

ID=19453837

Family Applications (1)

Application Number Title Priority Date Filing Date
JP286297A Expired - Fee Related JP3193654B2 (ja) 1996-03-25 1997-01-10 可変長符号デコーダ

Country Status (5)

Country Link
US (1) US5949356A (ja)
EP (1) EP0802681B1 (ja)
JP (1) JP3193654B2 (ja)
KR (1) KR100192269B1 (ja)
DE (1) DE69737304T2 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6147629A (en) * 1998-10-15 2000-11-14 Intel Corporation Method and apparatus for variable length decoding
US6721295B1 (en) * 2000-08-25 2004-04-13 Texas Instruments Incorporated Triple data system for high data rate communication systems
US6587057B2 (en) 2001-07-25 2003-07-01 Quicksilver Technology, Inc. High performance memory efficient variable-length coding decoder
JP3415126B2 (ja) * 2001-09-04 2003-06-09 三菱電機株式会社 可変長符号多重化装置、可変長符号分離装置、可変長符号多重化方法及び可変長符号分離方法
US7095343B2 (en) * 2001-10-09 2006-08-22 Trustees Of Princeton University code compression algorithms and architectures for embedded systems
US7403981B2 (en) * 2002-01-04 2008-07-22 Quicksilver Technology, Inc. Apparatus and method for adaptive multimedia reception and transmission in communication environments
KR100450753B1 (ko) * 2002-05-17 2004-10-01 한국전자통신연구원 프로세서와 연결된 프로그램 가능한 가변 길이 디코더
TWI289979B (en) * 2005-08-16 2007-11-11 Via Tech Inc Device and method for variable length decoding
JP2013016897A (ja) * 2011-06-30 2013-01-24 Toshiba Corp 可変長符号復号装置、符号システムおよび可変長符号復号方法
US9484954B1 (en) 2015-09-10 2016-11-01 Intel Corporation Methods and apparatus to parallelize data decompression

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5173695A (en) * 1990-06-29 1992-12-22 Bell Communications Research, Inc. High-speed flexible variable-length-code decoder
US5233348A (en) * 1992-03-26 1993-08-03 General Instrument Corporation Variable length code word decoder for use in digital communication systems
US5245338A (en) * 1992-06-04 1993-09-14 Bell Communications Research, Inc. High-speed variable-length decoder
US5343195A (en) * 1992-12-18 1994-08-30 Thomson Consumer Electronics, Inc. Variable length codeword decoding apparatus
KR970003024B1 (ko) * 1994-02-28 1997-03-13 한국전기통신공사 병렬처리 패턴매칭을 이용한 가변부호길이에서 고속 재동기방법
KR0152032B1 (ko) * 1994-05-06 1998-10-15 김광호 영상신호를 위한 가변장복호기
KR0154010B1 (ko) * 1995-03-16 1998-11-16 배순훈 가변길이 복호화 장치
KR0179103B1 (ko) * 1995-11-15 1999-05-01 구자홍 고속 가변길이 디코더장치
US5696507A (en) * 1996-05-31 1997-12-09 Daewoo Electronics Co., Inc. Method and apparatus for decoding variable length code

Also Published As

Publication number Publication date
JPH09261074A (ja) 1997-10-03
EP0802681A3 (en) 2002-04-10
DE69737304D1 (de) 2007-03-22
KR970068633A (ko) 1997-10-13
EP0802681B1 (en) 2007-01-31
DE69737304T2 (de) 2007-07-19
EP0802681A2 (en) 1997-10-22
KR100192269B1 (ko) 1999-06-15
US5949356A (en) 1999-09-07

Similar Documents

Publication Publication Date Title
US5428356A (en) Variable length code decoder utilizing a predetermined prioritized decoding arrangement
US5173695A (en) High-speed flexible variable-length-code decoder
US6215424B1 (en) System for variable length codeword processing suitable for video and other applications
US5220325A (en) Hierarchical variable length decoder for digital video data
US5225832A (en) High speed variable length decoder
JP3294026B2 (ja) 高速可変長復号化装置
JPH06348492A (ja) データパイプライン装置及びデータエンコーディング方法
JP3193654B2 (ja) 可変長符号デコーダ
US5650905A (en) Variable length decoder with adaptive acceleration in processing of Huffman encoded bit streams
KR0152038B1 (ko) 상대 주소를 이용한 가변장 복호화 장치
KR0178201B1 (ko) 가변 길이 복호화 장치
US5663726A (en) High speed variable-length decoder arrangement with reduced memory requirements for tag stream buffering
JPH08116267A (ja) 可変長符号の復号化装置
US5781135A (en) High speed variable length code decoder
JP3032134B2 (ja) 映像信号のための可変長復号器
US5432512A (en) Apparatus for decoding variable length codes
KR19980702418A (ko) 가변 길이 디코더
US5638069A (en) High throughput variable length decoder and apparatus comprising such decoder
US5701126A (en) High speed variable length decoder
KR100292050B1 (ko) 가변장복호기의 데이타 가변장치
US5798717A (en) One-hot overflow matrix with enhanced architecture and one-hot variable length decoder incorporating the same
KR100304872B1 (ko) 가변길이코드디코더.
JP3386638B2 (ja) 可変長符号の復号方法および装置
KR0152035B1 (ko) 가변장복호화방법 및 그 장치
JP3389389B2 (ja) 可変長コード復号化装置

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20010417

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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: 20090525

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees