JP3294032B2 - 可変長符号の復号化装置 - Google Patents

可変長符号の復号化装置

Info

Publication number
JP3294032B2
JP3294032B2 JP33880994A JP33880994A JP3294032B2 JP 3294032 B2 JP3294032 B2 JP 3294032B2 JP 33880994 A JP33880994 A JP 33880994A JP 33880994 A JP33880994 A JP 33880994A JP 3294032 B2 JP3294032 B2 JP 3294032B2
Authority
JP
Japan
Prior art keywords
length
codeword
output
accumulated
variable length
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 - Lifetime
Application number
JP33880994A
Other languages
English (en)
Other versions
JPH08116267A (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 JPH08116267A publication Critical patent/JPH08116267A/ja
Application granted granted Critical
Publication of JP3294032B2 publication Critical patent/JP3294032B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime 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
    • 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/60General implementation details not specific to a particular type of compression
    • H03M7/6017Methods or arrangements to increase the throughput
    • H03M7/6023Parallelization

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は可変長符号(VLC)復
号化装置に関し、特に2つのチャネルから独立的に供給
される2つの互いに異なるVLCストリームを同時に復
号化し得る可変長符号の復号化装置に関する。
【0002】
【従来の技術】通常、可変長符号化は様々な無損失デー
タ圧縮のために利用される。この可変長符号化は、デー
タの統計値に基づいて固定された長さのデータを可変長
コードワードに変換するもので、情報源データに含まれ
ている各コードワードの発生頻度によって、その頻度が
高いコードワードは短い長さのコードワードに変換し、
発生頻度が少ないコードワードは長さが長いコードワー
ドで表示するようになっている。この場合、平均のワー
ド長は情報源データの平均のワード長よりも短くなるの
で、データの圧縮がなされることになる。
【0003】公知のデータの統計値に対して最小冗長性
を有する可変長符号化を具現させるには、通常ホフマン
(Huffman)コードが利用される。
【0004】一般に、符号化過程は入力データを、表を
アドレシングするのに用いるルックアップテーブルによ
って具現することができ、コードワード及びワード長は
表の内容として記憶される。しかし、復号化過程は甚だ
複雑である。即ち、可変長の特徴によって各コードワー
ドは、受信されたビットストリームから分割された後、
情報源コードワードにデコードされる。それ故、通常、
可変長コードデコーダの設計は可変長エンコードの設計
よりも難しい。
【0005】尚、このような可変長コードワードのスト
リームを復号化のために、多様な方法が提案されてい
る、このような方法の一つとして、1990年2月6日
にガリーカーン(Gary Kahan)に付与された
米国特許第4,899,149号明細書に開示された、
ツリー検索アルゴリズムを採用するVLC復号化装置が
ある。この装置に於て、VLCはコードワードを葉(ま
たはターミナルノードと称する)を有するツリーとして
表現される。復号化処理はコードツリーの筋から始ま
り、受信されたビットストリームに応じて、各々の筋へ
進む。一つの葉に到達すれば、コードワードの最後のビ
ットが検知され、残りのビットストリームから分離され
る。かかる形態の復号化装置はツリーに相応する論理回
路とコードツリーを通過するための論理回路を含む。か
かる接近法は、特に長いコードワードに対しては処理速
度が非常に遅くなり得る。なぜならば、各復号化シンボ
ルを探すためには、コードツリー全体に対してビット単
位の検索が必要であるためである。
【0006】ルックアップテーブルに基づくVLC復号
器は、1992年12月にミンティングサン(Ming
−Ting Sun)らに与えられた米国特許第5,1
73,697号及び1993年9月14日に与えられた
米国特許第5,245,338号に開示されている。こ
のような復号器は、最大コードワード長と同一のビット
格納能力を有し、ビットストリームを固定長セグメント
として記憶する入力バッファから供給される連続ビット
を格納する2つの従属結合ラッチ回路と、2つのラッチ
回路と結合されて最大コードワード長と同一長のウイン
ドウ出力を発生するバレルシフトと、コードワードの最
大長をモジュールとして、順次的に復号化された可変長
符号の長さを累算する累算器と、シフト可能な復号化ウ
インドウ出力に含まれた可変長コードワードに相応する
固定長コードワードを出力し、それに相応する可変長コ
ードワードの長さを出力するルックアップテーブルメモ
リとを含む。コードワードが各クロックサイクルごとに
復号化されるにつれて、その長さは累算され、それによ
って復号化ウインドウ出力は次の復号化されるコードワ
ードの第1ビット位置から始まるようにシフトされる。
クロックサイクルの間累算された長さが最大コードワー
ド長を超過する場合、即ち、第2ラッチ回路にラッチさ
れたビットが全て復号化された場合、第1ラッチ回路か
ら第2ラッチ回路へ伝送され、次の固定データセグメン
トが入力バッファメモリから第1ラッチ回路へ読み出さ
れる。
【0007】前述する復号器の構造に於て、動作速度は
ルックアップテーブルメモリ、バレルシフト及び累算器
を含む重要な回路経路によって制限される。特に、累算
器は入力バッファメモリから第1ラッチ回路の読出し動
作を制御するのに用いられる重要な経路であり、全体動
作遅延に重要で実質的な部分を占めるため、高画質テレ
ビジョンのような応用に於ては、できるだけ遅延を減ら
すことが要求されている。
【0008】
【発明が解決しようとする課題】上記したような従来技
術の問題点に鑑み、本発明の主な目的は、1つのバレル
シフタ及び1つのVLCテーブルを用いて、2つの分離
されたチャネルから供給される2つの互いに異なるVL
Cビットストリームを同時に処理し得るVLC復号化装
置を供給することにある。
【0009】
【課題を解決するための手段】上記の目的を達成するた
めに、本発明では、各可変長符号(VLC)ビットスト
リームに含まれた可変長コードワードの最も長い長さと
同じ長さを有する固定長セグメントに復号化され、入力
ビットストリームを格納する第1入力バッファ及び第2
入力バッファから分離されて供給される2つの互いに異
なるVLCビットストリームを同時に復号化する可変長
符号復号化装置に於て、第1読出し信号に基づいて前記
第1入力バッファからの連続的な2つの固定長セグメン
トを格納する第1格納手段と、第2読出し信号に基づい
て前記第2入力バッファからの連続的な2つの固定長セ
グメントを格納する第2格納手段と、第1選択信号に基
づいて前記第1または2格納手段からの2つの連続的な
固定長セグメントを選択し、第1または第2ウィンドウ
制御信号を選択する第1選択手段と、前記選択されたウ
ィンドウ制御信号に基づいて前記選択された2つの連続
的なセグメント上に復号ウィンドウを形成して、可変長
コードワードの最も長い長さと同じビット長を有する復
号ウィンドウ出力シーケンスを生成するバレルシフタ手
段と、前記復号ウィンドウ出力シーケンスの第1ビット
位置で始まる可変長コードワードに基づいて復号ワード
を生成し、前記復号化された可変長コードワードに相応
するコードワード長出力を生成するメモリ手段と、第2
選択信号に基づいて復号化ワード及びコードワード長出
力を第1復号化ワード及び第1コードワード長または第
2復号化ワード及び第2コードワード長出力で生成する
第2選択手段と、以前に累算された第1コードワード長
出力に第1コードワード長出力を加えて、累算された出
力が前記可変長コードワードの最も長い長さよりも大き
くない場合、累算されたコードワード長出力を表す第1
ウィンドウ制御信号を発生し、累算されたコードワード
長出力を0にセットし、累算されたコードワード長出力
が可変長コードワードの最も長い長さよりも大きい場
合、第1先読出し信号を発生する第1累算器手段と、以
前に累算された第2コードワード長出力に第2コードワ
ード長出力を加えて、累算された出力が、前記可変長コ
ードワードの最も長い長さよりも大きくない場合、累算
されたコードワード長出力を表す第2ウィンドウ制御信
号を発生し、累算されたコードワード長出力を0にセッ
トし、累算されたコードワード長出力が可変長コードワ
ードの最も長い長さより大きい場合、第2先読出し信号
を発生する第2累算器手段と、前記第1及び第2ウィン
ドウ制御信号と前記第1及び第2先読出し信号に基づい
て前記第1及び第2選択信号と前記第1及び第2読出し
信号とを生成して、同時に復号化する前記2つの互いに
異なるVLCビットストリームをイネーブルさせる制御
手段とを含むことを特徴とする可変長符号の復号化装置
を提供する。
【0010】
【実施例】以下、本発明の可変長符号の復号化装置につ
いて図面を参照しながらより詳しく説明する。
【0011】図1には、本発明の好ましい実施例による
VLC復号化装置を示す。このVLC復号化装置は、2
つの互いに異なるVLCビットストリームに含まれた可
変長コードワードを同時に復号化し、その相応する2つ
の復号化されたワードを出力する。この可変長コードワ
ードの最大長は16ビットである。
【0012】図1に示されたように、2つの互いに異な
るVLCビットストリームは各チャネル(図示せず)か
ら供給される。リード10に受信された第1VLCビッ
トストリームは、第1VLCビットストリームを格納す
る第1バッファメモリへ入力され、続いて第1バッファ
メモリはタイミング制御ブロック8から出力するリード
14上の第1読出し信号に応答して、可変長コードワー
ドの最も長い長さと同一の長さを有する固定長セグメン
トをリード16に出力する。
【0013】第1ラッチ回路18は、第1バッファメモ
リ12に接続され、リード14上の第1読出し信号に応
答して、固定長データセグメントを続いて受信する。こ
れは第2ラッチ回路22に接続され、第1ラッチ回路1
8で予めホールドされた固定長データセグメントを受信
する。新しいデータセグメントが供給される際、第1読
出し信号はリード14で活性化される。これに応答し
て、第1バッファメモリ12は次のデータセグメントを
リード16に供給し、第1ラッチ回路18では次のデー
タセグメントを受信する。また、第1ラッチ回路18で
予めホールドされたデータセグメントは、第2ラッチ回
路22へ伝送される。従って、第2ラッチ回路22は、
第1ラッチ回路18に格納されたデータセグメントのう
ちの1つを先行するデータセグメントを含む。第1及び
第2ラッチ回路18、22に含まれた2つのデータセグ
メントは、第1VLCビットストリームの32ビットシ
ーケンスを含むが、これは可変長コードワードの最大長
の2倍である。第1及び第2ラッチ回路18、22の2
つのデータセグメントは、新しい第1読出し信号が活性
化されるまで、並列リード20、24を経てスイッチS
W2を通じてバレルシフタ30へ続いて入力される。
【0014】このとき、リード11に受信された第2V
LCビットストリームは、第2バッファメモリ13へ供
給されるが、第2バッファメモリ13は第2VLCビッ
トストリームを格納し、タイミング制御ブロック8から
の第2読出し信号に応答して、リード15を経て、例え
ば、リード17上の16−ビットセグメントのような固
定長データセグメントを出力するが、このデータセグメ
ントのビット長は可変長コードワードの最大ビット長と
同一である。
【0015】第3ラッチ回路19は、第2バッファメモ
リ13に接続され、タイミング制御ブロック8からのリ
ード15上の第2読出し信号に応答して、固定長データ
セグメントを受信する。第4ラッチ回路23は第3ラッ
チ回路19に連結され、第3ラッチ回路19で予めホー
ルドされた固定長セグメントを受信する。新しいデータ
セグメントが供給される際、第2読出し信号はリード1
5で活性化される。これに応答して、第2バッファメモ
リ13は次のデータセグメントをリード17上に供給
し、第3ラッチ回路19は次のデータセグメントを受信
する。また、第3ラッチ回路19で予めホールドされた
データセグメントは、リード21を通じて第4ラッチ回
路23へ伝送される。第3及び第4ラッチ回路19、2
3に含まれた2つのデータセグメントは、復号化される
第2VLCビットストリームの32−ビットシーケンス
を含むが、これは可変長コードワードの最大長の2倍で
ある。第3及び第4ラッチ回路19、23の2つのデー
タセグメントは、リード15上の次の第2読出し信号が
活性化されるまで、並列リード21、25を経てスイッ
チSW2を通じてバレルシフタ30へ続いて入力され
る。
【0016】スイッチSW2はタイミング制御ブロック
8から入力される第1選択信号SEL1に応答して、2
つの32ビット固定長セグメントのうちの1つを選択的
にバレルシフタ30に供給する。
【0017】SW2から選択された32ビットは、並列
リード26、28を経てバレルシフタ30へ入力され
る。後述されるように、第2累算器64により発生され
る、第1累算器62からのリード58上の第1ウィンド
ウ制御信号またはリード59上の第2ウィンドウ制御信
号が、第1選択信号(SEL1)により制御されるSW
3に選択的に供給されば、バレルシフタ30は32ビッ
ト入力上に16ビット復号化ウィンドウを形成する。こ
の16ビット復号化ウィンドウはリード26、28上の
32ビット入力を経てシフトされ、その位置はリード6
1を通じて入力された第1または第2ウィンドウ制御信
号により直接的に決定される。各々のウィンドウ制御信
号は、0と15との間の復号化ウィンドウのシフトを表
す。ウィンドウ制御信号「0」は復号化ウィンドウがリ
ード26、28上の第1ビット〜第16ビットを含むこ
とを表し、ウィンドウ制御信号「15」は、復号化ウィ
ンドウが第16ビット〜第31ビットを含むことを表
す。復号化ウィンドウの形成後、バレルシフタ30は復
号化ウィンドウ出力シーケンスをリード32を経てルッ
クアップテーブル40に供給する。
【0018】本発明の好ましい実施例に於て、ルックア
ップテーブル40は、プログラム可能論理値(PLA)
により具現される。図1に示されたルックアップテーブ
ル40は、コードワード表AND−プレーン42、ワー
ド長表OR−プレーン44及び復号化ワード表OR−プ
レーン46を含む。米国特許第5,173,695号に
開示されたように、各々のコードワードは可変長コード
ワードパターンのビットによるコードワード表ANDー
プレーンに於けるエントリーを表す。
【0019】可変長コードワードはバレルシフタ30か
らのシーケンスが、コードワード表ANDープレーン4
2に格納された1つの可変長ビットパターンとマッチン
グするとき検知される。従って、例えば1つの可変長コ
ードワードビットパターンが、「01」であり、バレル
シフタ30からの16ビットシーケンスのパターンが
「0111110000011101」であれば、マッ
チングは1番目の2つのビットから発生する。従って、
1番目の2つのビットは可変長コードワードと認識さ
れ、次のワードは3番目のビットから始まる。
【0020】リード32上の復号化ウィンドウ出力シー
ケンスが、コードワード表AND−プレーン42のエン
トリーとマッチングすれば、ワード長表OR−プレーン
44及び復号化ワード表OR−プレーン44のエントリ
ーが活性化される。
【0021】ワード長表OR−プレーン44は、リード
48上にワード長信号を発生するが、これはコードワー
ド表42のマッチングする可変長コードワードの長さを
表す。例えば、ワード長表42が検知されたワード「0
1」の長さを表す「2」を出力し、しかる後、ワード長
はスイッチSW4へ入力される。
【0022】復号化ワード表OR−プレーン46は、コ
ードワード表AND−プレーン42内のマッチングされ
た可変長コードワードに相応する復号化されたワードを
リード50へ出力し、リード50の復号化されたワード
はスイッチSW4へ供給される。
【0023】スイッチSW4はタイミング制御ブロック
8からの第2選択信号SEL2に応答して、ルックアッ
プテーブル40からの復号化されたワード及び長さを第
1及び第2ワード及び長さに分類するが、もし復号化さ
れたワードが第1VLCビットストリームに含まれてい
れば、復号化されたワードは第1復号化ワードとしてリ
ード52へ出力され、復号化されたワードのコードワー
ド長信号はリード54を経て第1累算器62へ供給され
る。もし復号化されたワードが第2ビットストリームの
一部分であれば、第2復号化ワードとしてワード53へ
出力され、復号化されたワードのコード長信号は第2累
算器64へ供給される。
【0024】各々の第1及び第2累算器62、64は、
現在の復号化ワードのコードワード長と以前累算された
長さとを各々の可変長コードワードを検知した後加え
る。もし新しい累算された合が15を超過しないと、第
1及び第2累算器62、64で計算された新しい長さの
値は、第1及び第2ウィンドウ制御信号としてバレルシ
フタ30へ供給される。第1及び第2ウィンドウ制御信
号に応答して、復号化ウィンドウの位置は0から15の
間でシフトする。
【0025】しかし、新しい累算された合が15を超過
すれば、各々の累算器62、64は、先読出し信号をリ
ード56、57に活性化(activate)させ、以
前に累算されたコードワード長を0にセットする。各先
読出し信号は第2または第4ラッチ回路22、23に格
納された全てのビットなどが復号化されたことを表す。
リード56、58上の第1及び第2読出し信号は、各々
タイミング制御ブロック8へ供給される。
【0026】タイミング制御ブロック8は、第1及び第
2先読出し信号、また第1及び第2ウィンドウ制御信号
に応答して、リード14、15への第1及び第2読出し
信号の活性時間を各々決定し、第1及び第2選択信号S
EL1、SEL2をスイッチSW1、SW3、SW4へ
供給して、同時に復号化される2つの互いに異なるVL
Cビットストリームをイネーブルさせる。
【0027】図1に示されたこのVLC復号化装置の動
作は、図2に示された表を参照して理解できる。図2の
第1列の各々のセルは、5つの処理10、20、30、
40及び50を表す。
【0028】処理10は、全体動作の一部分であるが、
リード14上の第1及び第2読出し信号に応答して、第
1VLCビットストリームの2つの固定長セグメントを
2つのラッチ18、22に格納することを示す。
【0029】処理20に於ては、リード15上の第2読
出し信号に応答して、2つのラッチ19、23に第2V
LCビットストリームの2つの固定長セグメントを格納
する。
【0030】処理30は、バレルシフタ30及びルック
アップテーブル40の作用である。即ち、リード61上
のウィンドウ制御信号に応答して、リード26、28上
に復号化ウィンドウを形成し、リード32へ復号化ウィ
ンドウ出力シーケンスを発生し、リード48、50に復
号化されたワード及びコードワード長を各々発生する。
【0031】処理40は、第1累算器62の動作である
が、第1累算器62はリード54上の第2長さと以前累
算された長さとを加えて、リード58へ第1ウィンドウ
制御信号を発生するか、またはリード56に第1先読出
し信号を供給する。
【0032】また、処理50は第2累算器64の動作で
あるが、第2累算器64は、リード55上の第2長さと
以前累算された長さとを加えて、リード59へ第2ウィ
ンドウ制御信号を発生するか、またはリード57に第2
先読出し信号を供給する。
【0033】同時に、図2の第1行目には、「A」から
「P」までのシンボルが各々のセルに示されているが、
各々のシンボルは予め定められた処理時間を表す。ま
た、第1VLCビットストリームのための連続的な復号
化処理は「○」と表現され、各々の第2VLCビットス
トリームの復号化処理は「×」と表現されるが、各々の
処理時間は同一であると仮定する。
【0034】図2の処理時間「A」は、だた1つの処
理、即ち処理10である。互いに異なる2つのVLCビ
ットストリームの復号化が始まると、第1VLCビット
ストリーム復号化作用の始まり処理時間は、第2VLC
ビットストリーム復号化作用の始まり処理時間より1段
階速い。処理時間「A」に於て、タイミング制御ブロッ
ク8は、リード14上の第1読出し信号を活性化させ
て、2つのラッチ18、22で第1VLCビットストリ
ームの2つの連続される固定長セグメントを格納するよ
うにする。
【0035】処理時間「B」に於て、第1ビットストリ
ームの次の処理である処理30が行われる。処理30を
開示するために、タイミング制御ブロック8は、予め定
められた処理時間、即ち、時間「A」が経た後、第1選
択信号SEL1へ第1スイッチSW1を活性化させて、
リード26、28のセットとリード20、24のセット
を連結する。また、同時にタイミング制御ブロック8は
スイッチSW3を動作させて、第1ウィンドウ制御信号
をバレルシフタ30へ供給する。
【0036】処理時間「B」に於て、第2VLCビット
ストリームの第1処理、即ち、処理20に於て、タイミ
ング制御ブロック8はリード15上の第2読出し信号を
活性化させて、第2VLCビットストリームの連続する
2つの固定長セグメントを2つのラッチ19、23で格
納するようにする。
【0037】処理時間「C」に於て、第1VLCビット
ストリームのために、処理30が完了されば、第1VL
Cビットストリームのために処理40が行われる。以前
の処理40に於て、第2選択信号SEl2は予め定めら
れた時間、即ち、時間「B」の後にSW4へ供給され
る。SEl2に応答して、SW4はリード50に残って
いる第1復号化ワードをリード52へ供給し、リード4
8上の第1長をリード54へ供給する。第2ビットスト
リームのための処理30に於て、制御ブロック8は時間
「B」が経たあと、SEL1を活性化させてリード2
6、28のセットとリード21、25のセットを連結す
る。また、制御ブロック8はSW3を作動させて、第2
ウィンドウ制御信号をバレルシフタ30へ供給する。
【0038】図2に示されたように、第1VLCビット
ストリームのための処理40の後、2つの種類の処理が
準備される。1つは新しい処理30であり、もう1つは
新しい処理10である。もし第1累算器15で新しい累
算された値が15を超過しないと、処理30、例えば処
理時間「C」乃至「D」、「E」乃至「F」または
「J」乃至「K」が行われる。しかし、もし15を超過
すれば、処理10、例えば処理時間「G」乃至「H」、
「L」乃至「M」、「O」乃至「P」が行われる。
【0039】処理時間「D」に於て、第1VLCビット
ストリームのための処理30及び第2VLCビットスト
リームのための処理50が同時に完了する。処理50に
於て、SEl2は時間「C」の後にSW4へ供給され
る。このとき、SEL2は第2VLCビットストリーム
のための処理30のSEL1と同一である。SEL2に
応答して、SW4はリード48、50のセット及びリー
ド53、55のセットと連結される。
【0040】処理50の後に、2つの種類の処理が準備
される。1つは処理20であり、もう1つは処理30で
ある。もし第2累算器64の新しい累算された値が、1
5を超過しないと、処理30、例えば処理時間「D」乃
至「E」が行われ、15を超過すれば、処理20、例え
ば処理時間「F」乃至「G」が行われる。
【0041】図2に示されたように、各々の処理が独立
的に作動するので、2つの互いに異なるVLCビットス
トリームを同時に復号化することが可能である。しか
し、処理20及び処理40は、例えば、「J」で同時に
行われ、または処理10及び処理50は「M」で同時に
行われるので第1及び第2VLCビットストリームの次
の復号化処理は処理30で合う。このような場合、タイ
ミング制御ブロックは各々の処理10、20、40及び
50でリード56、57、58及び59上の信号を検知
して、第2VLCビットストリームのための処理20ま
たは処理50を遅延させ、処理30に於ける処理の衝突
を防止する。
【0042】本発明は特定の実施例について説明した
が、当業者であれば本発明の範囲を逸脱することなく、
種々の変更をなし得るであろう。
【0043】
【発明の効果】本発明によれば、1つのバレルシフタ及
び1つのVLCテーブルを用いて、2つの分離されたチ
ャネルから供給される2つの互いに異なるVLCビット
ストリームを同時に処理し得る。
【図面の簡単な説明】
【図1】本発明によるVLC復号化装置の好ましい実施
例を示した図である。
【図2】図1に示されたVLC復号化装置の動作を示し
た図である。
【符号の説明】
8 タイミング制御ユニット 12、13 バッファ 18、19、22、23 ラッチ 30 バレルシフタ 40 ルックアップテーブル 62、64 累算器
フロントページの続き (58)調査した分野(Int.Cl.7,DB名) H03M 7/42

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】 各可変長符号(VLC)ビットストリ
    ームに含まれた可変長コードワードの最も長い長さと同
    じ長さを有する固定長セグメントに復号化され、入力ビ
    ットストリームを格納する第1入力バッファ及び第2入
    力バッファから分離されて供給される2つの互いに異な
    るVLCビットストリームを同時に復号化する可変長符
    号復号化装置に於て、 第1読出し信号に基づいて前記第1入力バッファからの
    連続的な2つの固定長セグメントを格納する第1格納手
    段と、 第2読出し信号に基づいて前記第2入力バッファからの
    連続的な2つの固定長セグメントを格納する第2格納手
    段と、 第1選択信号に基づいて前記第1または2格納手段から
    の2つの連続的な固定長セグメントを選択し、第1また
    は第2ウィンドウ制御信号を選択する第1選択手段と、 前記選択されたウィンドウ制御信号に基づいて前記選択
    された2つの連続的なセグメント上に復号ウィンドウを
    形成して、可変長コードワードの最も長い長さと同じビ
    ット長を有する復号ウィンドウ出力シーケンスを生成す
    るバレルシフタ手段と、 前記復号ウィンドウ出力シーケンスの第1ビット位置で
    始まる可変長コードワードに基づいて復号ワードを生成
    し、前記復号化された可変長コードワードに相応するコ
    ードワード長出力を生成するメモリ手段と、 第2選択信号に基づいて復号化ワード及びコードワード
    長出力を第1復号化ワード及び第1コードワード長また
    は第2復号化ワード及び第2コードワード長出力で生成
    する第2選択手段と、 以前に累算された第1コードワード長出力に第1コード
    ワード長出力を加えて、累算された出力が前記可変長コ
    ードワードの最も長い長さよりも大きくない場合、累算
    されたコードワード長出力を表す第1ウィンドウ制御信
    号を発生し、累算されたコードワード長出力を0にセッ
    トし、累算されたコードワード長出力が可変長コードワ
    ードの最も長い長さよりも大きい場合、第1先読出し信
    号を発生する第1累算器手段と、 以前に累算された第2コードワード長出力に第2コード
    ワード長出力を加えて、累算された出力が、前記可変長
    コードワードの最も長い長さよりも大きくない場合、累
    算されたコードワード長出力を表す第2ウィンドウ制御
    信号を発生し、累算されたコードワード長出力を0にセ
    ットし、累算されたコードワード長出力が可変長コード
    ワードの最も長い長さより大きい場合、第2先読出し信
    号を発生する第2累算器手段と、 前記第1及び第2ウィンドウ制御信号と前記第1及び第
    2先読出し信号に基づいて前記第1及び第2選択信号と
    前記第1及び第2読出し信号とを生成して、同時に復号
    化する前記2つの互いに異なるVLCビットストリーム
    をイネーブルさせる制御手段とを含むことを特徴とする
    可変長符号の復号化装置。
JP33880994A 1994-01-18 1994-12-28 可変長符号の復号化装置 Expired - Lifetime JP3294032B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1994P782 1994-01-18
KR1019940000782A KR0124191B1 (ko) 1994-01-18 1994-01-18 가변길이 코드 디코딩장치

Publications (2)

Publication Number Publication Date
JPH08116267A JPH08116267A (ja) 1996-05-07
JP3294032B2 true JP3294032B2 (ja) 2002-06-17

Family

ID=19375802

Family Applications (1)

Application Number Title Priority Date Filing Date
JP33880994A Expired - Lifetime JP3294032B2 (ja) 1994-01-18 1994-12-28 可変長符号の復号化装置

Country Status (6)

Country Link
US (1) US5650781A (ja)
EP (1) EP0663730B1 (ja)
JP (1) JP3294032B2 (ja)
KR (1) KR0124191B1 (ja)
CN (1) CN1059525C (ja)
DE (1) DE69413512T2 (ja)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5650905A (en) * 1995-12-28 1997-07-22 Philips Electronics North America Corporation Variable length decoder with adaptive acceleration in processing of Huffman encoded bit streams
US5835035A (en) * 1995-12-28 1998-11-10 Philips Electronics North America Corporation High performance variable length decoder with two-word bit stream segmentation and related method
KR100292050B1 (ko) * 1997-11-08 2001-06-01 김영환 가변장복호기의 데이타 가변장치
DE60100416T2 (de) * 2000-04-28 2004-06-09 Matsushita Electric Industrial Co., Ltd., Kadoma Dekoder für Kode variabler Länge
KR100450753B1 (ko) * 2002-05-17 2004-10-01 한국전자통신연구원 프로세서와 연결된 프로그램 가능한 가변 길이 디코더
FI116813B (fi) 2002-06-20 2006-02-28 Nokia Corp Menetelmä ja järjestelmä vaihtuvapituisen koodauksen purkamiseksi, ja koodisanojen paikannuslaite
CN1839550B (zh) * 2003-07-15 2011-09-14 英特尔公司 解码可变长度前缀码的方法和系统
CN1297150C (zh) * 2004-12-16 2007-01-24 上海交通大学 单时钟周期可变长熵解码装置
CN100356793C (zh) * 2005-06-09 2007-12-19 清华大学 多变长码并行解码器
US7129862B1 (en) * 2005-07-29 2006-10-31 Texas Instruments Incorporated Decoding bit streams encoded according to variable length codes
JP4398987B2 (ja) * 2007-03-19 2010-01-13 株式会社東芝 マルチデコーダ装置及び方法
US9848209B2 (en) 2008-04-02 2017-12-19 Microsoft Technology Licensing, Llc Adaptive error detection for MPEG-2 error concealment
US9788018B2 (en) 2008-06-30 2017-10-10 Microsoft Technology Licensing, Llc Error concealment techniques in video decoding
US9131241B2 (en) * 2008-11-25 2015-09-08 Microsoft Technology Licensing, Llc Adjusting hardware acceleration for video playback based on error detection
US8340510B2 (en) 2009-07-17 2012-12-25 Microsoft Corporation Implementing channel start and file seek for decoder
CN103188485B (zh) * 2011-12-30 2016-06-29 安凯(广州)微电子技术有限公司 一种码流缓存系统及视频解码器
JP5855777B2 (ja) * 2015-01-28 2016-02-09 株式会社情報システム総合研究所 データ圧縮装置、データ復号装置、データ圧縮方法、データ復号方法およびデータ圧縮および復号システム
US10826529B2 (en) 2019-01-31 2020-11-03 Hong Kong Applied Science And Technology Research Institute Co., Ltd. Parallel LDPC decoder
WO2020155146A1 (en) * 2019-01-31 2020-08-06 Hong Kong Applied Science and Technology Research Institute Company Limited Parallel ldpc decoder
US10877729B2 (en) 2019-01-31 2020-12-29 Hong Kong Applied Science And Technology Research Institute Co., Ltd. Reconfigurable segmented scalable shifter
US11575390B2 (en) 2021-07-02 2023-02-07 Hong Kong Applied Science and Technology Research Insitute Co., Ltd. Low-latency segmented quasi-cyclic low-density parity-check (QC-LDPC) decoder

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5245338A (en) 1992-06-04 1993-09-14 Bell Communications Research, Inc. High-speed variable-length decoder

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4899149A (en) * 1986-02-28 1990-02-06 Gary Kahan Method of and apparatus for decoding Huffman or variable-length coees
US5173695A (en) * 1990-06-29 1992-12-22 Bell Communications Research, Inc. High-speed flexible variable-length-code decoder
US5345236A (en) * 1992-12-21 1994-09-06 Harris Corporation Improved sigma-delta type analog-to-digital converter and method
KR960003452B1 (ko) * 1992-12-31 1996-03-13 대우전자주식회사 가변길이부호 복호장치

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5245338A (en) 1992-06-04 1993-09-14 Bell Communications Research, Inc. High-speed variable-length decoder

Also Published As

Publication number Publication date
DE69413512D1 (de) 1998-10-29
US5650781A (en) 1997-07-22
EP0663730B1 (en) 1998-09-23
KR0124191B1 (ko) 1998-10-01
CN1059525C (zh) 2000-12-13
KR950024069A (ko) 1995-08-21
JPH08116267A (ja) 1996-05-07
CN1113055A (zh) 1995-12-06
DE69413512T2 (de) 1999-03-04
EP0663730A1 (en) 1995-07-19

Similar Documents

Publication Publication Date Title
JP3294032B2 (ja) 可変長符号の復号化装置
JP3294026B2 (ja) 高速可変長復号化装置
US5428356A (en) Variable length code decoder utilizing a predetermined prioritized decoding arrangement
US5771010A (en) Apparatus for compressing data using a Lempel-Ziv-type algorithm
US5245338A (en) High-speed variable-length decoder
JP2915568B2 (ja) テープドライブシステムのための適応データ圧縮装置
US5467319A (en) CAM array and method of laying out the same
US5113516A (en) Data repacker having controlled feedback shifters and registers for changing data format
US5901177A (en) High speed variable length code decoding apparatus and method
KR940010433B1 (ko) 가변길이 코드 디코딩장치
US5677690A (en) High speed variable length code decoding apparatus
US5058137A (en) Lempel-Ziv decoder
EP0802681B1 (en) Variable length code decoder
JPH0879747A (ja) 映像信号のための可変長復号器
US5432512A (en) Apparatus for decoding variable length codes
JP3853439B2 (ja) 高速可変長コード復号化装置及び高速可変長コード復号化方法
US5648775A (en) High speed variable length code decoding apparatus
JP3429623B2 (ja) 高速可変長符号復号化装置
US5701126A (en) High speed variable length decoder
US5339077A (en) Comma code generator
US5657016A (en) Variable length decoder with one of N length indicator
US5798717A (en) One-hot overflow matrix with enhanced architecture and one-hot variable length decoder incorporating the same
JP3389389B2 (ja) 可変長コード復号化装置
JP3386638B2 (ja) 可変長符号の復号方法および装置
KR100209881B1 (ko) 고속 가변장 복호기의 메모리제어장치

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

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

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090405

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100405

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110405

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120405

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130405

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130405

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140405

Year of fee payment: 12

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term