JPH0651943A - 可変長符号の復号化回路 - Google Patents
可変長符号の復号化回路Info
- Publication number
- JPH0651943A JPH0651943A JP4206345A JP20634592A JPH0651943A JP H0651943 A JPH0651943 A JP H0651943A JP 4206345 A JP4206345 A JP 4206345A JP 20634592 A JP20634592 A JP 20634592A JP H0651943 A JPH0651943 A JP H0651943A
- Authority
- JP
- Japan
- Prior art keywords
- decoding
- address
- variable length
- bits
- shift
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion 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/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/40—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
- H03M7/42—Conversion 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/425—Conversion 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
る。 【構成】シフトレジスタ107の可変長符号を複数ビッ
トずつ解読する。可変長復号テーブル103aの最下位
フィールドと中央フィールドにより、解読終了判定と解
読ビット数を指定する。この解読ビット数がテーブルア
クセス毎に変化する場合のアドレス置換は、サブブロッ
クアドレス用マルチプレクサ111で制御する。
Description
する符号の復号化回路に関し、特に複数ビットを一括し
て処理可能な復号化回路、さらには処理可能なビット数
を可変指定できる復号化回路に関する。
信号を復号化する場合、発生頻度の高い信号に短い符号
を与え、発生頻度の低い信号に長い符号を与えるという
不等長符号を用いることにより、圧縮符号化を実現でき
ることが知られている。このような符号化をエントロピ
ー符号化と読んでいる。尚、ハフマン符号は、エントロ
ピー符号の一種である。かかるエントロピー符号化は、
音声信号や画像信号の符号化など多岐に渡って応用され
ている。
大きく2つに分類される。第一の方式は可変長符号を1
ビットずつシリアルに受理し、二進ツリーによる場合分
けを行ないながら復号化する方式である。第二の方式は
符号と符号長とを並列に解読しながら可変長符号を一度
に処理する方式である。以下、これら第1および第2の
方式を図面を参照して説明する。
一の復号化回路方式を詳細に説明するための可変長符号
テーブルを表わす図および二進ツリーによる状態遷移図
である。図14(a)に示すように、この可変長符号テ
ーブルは発生頻度の工程に従って符号長を与えるという
不等長符号が定義されている。左の欄は符号の定義であ
り、右の欄は符号の意味(ここでは正の整数)を表わ
す。また図14(b)に示すように、二進ツリーによる
状態遷移はこのような符号を左側から順に1ビットずつ
たどることにより、解読をすすめる手順を与えている。
すなわち、図14(b)における丸印は、解読手順での
初期状態および中間状態を示している。解読開始ととも
に、最左側の丸印からスタートし、解読における最初の
ビットが0ならば0の枝(矢印)をたどり、1ならば1
の枝をたどる。このような遷移をビット毎に繰り返し、
数字にたどりつけば、解読終了となる。
す図である。図15に示すように、この復号テーブルは
図14(b)に示した二進ツリー遷移図をテーブルとし
て実現する場合の例を示している。右の欄は解読が中間
状態/終了状態のいずれかを示すビットであり、(0:
終了、1:未終了)、左の欄は、解読が中間状態の場合
に次のテーブルエントリの番地を、また解読の終了の場
合に解読された符号の意味(ここでは正の整数)を記述
してある。解読はスタートアドレスである100000
番地から始まる。符号の先頭ビットが0なら10000
0番地を、1なら100001番地をおのおの参照す
る。例えば、100001番地であれは、右の欄が1で
あることにより、解読は中間状態にあることが解り、さ
らに左の欄が100100であることにより、次に10
0100番地をアクセスして解読を継続すれば良いこと
が解る。また、100100番地であれば、右の欄が0
であることより解読終了であることがわかり、さらに左
の欄が000001であることより、解読結果は正の整
数1であることがわかる。
(この例ではk=13)、中間状態と初期状態の和、即
ち図14(b)における丸印の数はk−1になる。尚、
これはトーナメント試合に例えれば、各符号が出場者、
丸印は試合に対応し、このときの試合数は出場者の数よ
り1少ないものになる。一方、図15では初期状態に相
当するテーブルエントリは存在していないので、エント
リの総数は、2K−2=24エントリになる。すなわ
ち、テーブルの大きさは、高々符号数に比例する程度で
あることがわかる。
号化方式に基づく復号化回路のブロック図および可変長
復号テーブルの構成図である。図16(a)に示すよう
に、この復号化回路は開始アドレスを記憶する開始アド
レスレジスタ101および終了アドレスを記憶する終了
データレジスタ102と、12ビット×2Kワードで構
成される可変長復号テーブル103bと、この可変長復
号テーブル103bから読出したデータを記憶するデー
タレジスタ104と、レジスタ101,104からの各
12ビットを2to1するマルチプレクサ(MPX)1
05と、アドレスレジスタ106およびシフトレジスタ
107と、シフトレジスタ107を制御するシフト制御
回路109bと、各部へタイミング信号を供給する復号
タイミングシーケンサ110とを有する。また、図16
(b)に示すように、この可変長復号テーブル103b
は検索続行の場合の上位アドレス11ビットと検索続行
指定部1ビットとから構成される。この1ビットの指定
部は0が終了を表わし、1が続行を表わしている。尚、
かかる構造は前述した図15に基づくものである。
タイミング図である。図17に示すように、ここでの動
作のタイミング制御は、復号タイミングシーケンサ11
0で行なわれるものとし、データレジスタ104とシフ
トレジスタ107およびアドレスレジスタ106の動作
を中心に表わしている。
を参照して説明する。尚、前述した復号タイミングシー
ケンサ110は、具体的には復号の開始,実行,終了に
関連するタイミング信号を生成する回路図である。
ビットの初期アドレスが設定される。この初期アドレス
はマルチプレクサ105を通過し、その最下位ビットは
解読されるデータのはいったシフトレジスタ107の先
頭ビットで置き換えられた後、アドレスレジスタ106
に設定される。このアドレスレジスタ106の内容は復
号化テーブル103bのアクセスに用いられる。このア
クセス結果は復号化テーブル103bよりデータレジス
タ104に設定されるとともに、シフトレジスタ107
が1ビット左にシフトされる。次に、データレジスタ1
04の内容はマルチプレクサ105を通過し、その最下
位ビットは再び解読されるデータのはいったシフトレジ
スタ107の先頭ビットで置き換えられた後、アドレス
レジスタ106に設定される。このレジスタ106の内
容は、再び復号化テーブル103bのアクセスに用いら
れる。以上のシーケンスが「終了」と判定される、即ち
1つの符号を解読したと認識されるまで繰り返される。
この例では、繰り返しの単位は、前述した図15に示す
ように、基準クロック1周期分である。
情報は、復号テーブル103bの最下位ビットに書込ま
れており(図14(b)参照)、これがデータレジスタ
104の最下位ビットとして読み出される。その結果は
マルチプレクサ105を通過し、シフト制御回路109
bおよび復号タイミングシーケンサ110に伝達され
る。しかるに、シフト制御回路109bはシフトレジス
タ107のシフト量を決定する回路であり、終了後のシ
フト動作を防ぐ役割を持つ。検索が終了すると、テーブ
ル検索結果として得られたデータは終了データレジスタ
102に格納される。また、復号テーブル103bのビ
ット幅はこの終了データの幅と、テーブル自身のアドレ
スとして必要なアドレス長とで決定され、しかもテーブ
ルの深さは先に述べたように解読される符号の数に比例
した値となる。
ク1ビットの処理を行なうことで回路を比較的簡単にで
きることであるが、1クロックに2ビット以上の処理性
能を実現することはできない。
づく復号化回路のブロック図である。図18に示すよう
に、この回路はいわゆるシフト比較型復号化回路と呼ば
れるものである。この復号化回路はデータレジスタ10
2と、シフトレジスタ107と、シフト制御回路109
と、復号タイミングシーケンサ110と、可変長復号テ
ーブル126と、符号長テーブル127とを有してい
る。特に、可変長復号テーブル126は10ビット×1
28ワードで構成され、符号長テーブル127は3ビッ
ト×128ワードで構成されている。
復号化回路と同様、復号タイミングシーケンサ110は
復号の開始,実行,終了に関連するタイミング信号を生
成する。復号化開始と同時に、シフトレジスタ107の
複数ビットが、可変長復号テーブル126と符号長テー
ブル127の両方に入力される。尚、これら2つのテー
ブルは合成されて1つになっていてもよい。復号テーブ
ル126は、入力系列に含まれる符号を認識し、対応す
るデータをデータレジスタ102に出力する。また、符
号長テーブル127は、入力系列に含まれる符号の長
さ、つまり、シフトレジスタ107の次回のシフト量を
シフト制御回路109に出力する。このため、次のクロ
ックでは、符号長に等しいビット数のシフトがシフトレ
ジスタ107において実行される。
ータ幅で決定され、また符号長テーブル127のビット
幅は最大符号長を二進数で記述する時に必要なビット数
で決まる。これら両テーブルの深さは最大符号長をiと
すると、2のi乗となる。通常、不等長符号では、符号
数kは2のi乗に比べてかなり(1桁以上)小さな値に
なることが多いため、このテーブルは非常に冗長なもの
となる。
ック1符号の処理を行なうことで回路を高速化できる
が、テーブルサイズが最大符号長の指数関数に比例する
ので、メモリコストの増大が著しいものとなる。
ある。図19に示すように、かかる可変長符号は3つの
データフィールドから成っている。すなわち、フィール
ド1が行番号、フィールド2が符号化されるデータ、フ
ィールド3が符号化された結果の可変長符号をそれぞれ
表わしている。ここでは、フィールド3から解かるとお
り、114個のデータが長さ2ビットから16ビットま
での可変長符号で符号化されている。以下、これを再び
前述した第一の復号化方式に基づく復号化回路について
説明する。
を示す復号化回路のブロック図である。図20に示すよ
うに、この復号化回路は復号表メモリ112と、復号制
御シーケンサ113と、復号結果データレジスタ114
と、シフトレジスタ116と、復号開始アドレスレジス
タ119と、復号表メモリアドレスレジスタ120と、
2to1マルチプレクサ128とを有している。また、
復号表メモリ112は17ビット×4Kワードで構成さ
れている。
際の復号表の例を示す図である。図21に示すように、
この復号表の右の欄は復号が中間状態/終了状態のいず
れかを示すビットである(0:終了、1:未終了)。ま
た、左の欄は復号が中間状態の場合に次のテーブルエン
トリの番地を表わし、復号終了の場合に復号された符号
に対応するデータ(ここでは正の整数)を記述してあ
る。かかる復号はスタートアドレスである100000
番地から始まり、符号の先頭ビットが0なら10000
0番地を、1なら100001番地を各々参照する。例
えば、100001番地であれば、右の欄が1であるの
で、復号は中間状態であることが解り、さらに左の欄が
100100であるので、次に100100番地をアク
セスして復号を継続すれば良いことが解る。また、10
0100番地であれば、右の欄が0であることより復号
終了であることが解り、さらに左の欄が000001で
あることにより、復号結果は正の整数1であることが解
る。
って説明する。なお、以下に述べる動作のタイミング制
御は、復号タイミングシーケンサ113で行なわれるも
のとする。つまり、復号タイミングシーケンサ113
は、復号の開始,実行,終了に関連するタイミング信号
を生成する。まず、開始アドレスレジスタ119に初期
アドレスを設定する。この初期アドレスはマルチプレク
サ128を通過し、その最下位ビットがシーケンサ11
3に伝達される。これは復号の終了判定を行なうためで
ある。さらに、この最下位ビットはシフトレジスタ11
6の先頭ビットで置き換えられ、アドレスレジスタ12
0に設定される。これと同時に、シフトレジスタ116
は1ビット左にシフトされる。
れた復号表メモリ112の内容がマルチプレクサ128
を通過するようにシーケンサ113で制御する。以後の
処理は上述動作と同じである。
れるまで繰り返される。検索が終了すると、復号表の検
索結果として得られたデータが、終了データレジスタ1
14に格納される。
例と同様1クロック1ビットの処理を行なうことで回路
を比較的簡単に構成できるが、やはり1クロックに2ビ
ット以上の処理性能を実現することはできない。
復号化方式{図16(a),(b)}は、1クロックに
2ビット以上の解読処理性能を実現することができな
い。よって、高速なビット系列の解読には適用が困難で
あるという欠点を有する。例えば、一般的なCMOS
LSIで構成された復号化回路であれば、10Mb/s
以上のビット列の解読にこの方式を適用することは現在
の技術では困難である。
(図18)においては、最大符号長iに対して、符号長
テーブルは2のi乗エントリになり、1つの可変長符号
の復号だけで大規模なメモリ容量を必要とすることにな
る。これは、復号化回路の集積回路化を考えた場合、面
積上の問題を引き起こす。例えば、iが16を超えるよ
うな場合、テーブル容量は64Kワードを超え、これ以
上のテーブルサイズになると、集積回路化には不利であ
る。すなわち、このメモリは、同一の内容を多数のエン
トリに書込む必要があるなど冗長性が高い。よって、P
LA(Programmable Logic Arr
ay)などを用いて論理最適化をはかることもできる。
しかし、このような場合においても、複数の可変長符号
の順次解読や、複数の用途に対するハードウェアの流用
を考える場合、複数のPLAの準備が必要になったり、
また用途毎にPLAを再設計することになり、ハードウ
ェア設計の複雑さをもたらす。しかも、最大符号長が極
端に大きな符号についてみると、この方式の適用は符号
長テーブルのみではなく、シフトレジスタの実現も困難
になるという欠点を有している。
(図20)も、1クロックに2ビット以上の解読処理性
能を実現することができない。すなわち、図19のよう
な最大符号長16の符号を含むような可変長符号を復号
化するには、最悪ケースで16サイクルが必要である。
よって、高速なビット系列の解読には適用が困難である
という欠点を有する。例えば、一般的なCMOS LS
Iで構成された復号化回路であれば、50Mb/s以上
のビット列の解読にこの方式を適用することは現在の技
術では困難である。
ット以上の解読処理性能を実現するとともに、復号テー
ブルサイズが高々符号数kに比例した値になるような可
変長符号の復号化回路を提供することにある。
に2ビット以上の解読処理性能を実現するとともに、復
号表のサイズが高々符号数の2〜3倍程度あるいはそれ
以下になるような可変長符号の復号化回路を提供するこ
とにある。
号の復号化回路は、ビット可変長符号の入力に用いられ
るシフトレジスタと、前記シフトレジスタのシフト量を
制御するシフト制御回路と、可変長復号テーブルと、前
記可変長復号テーブルにアクセスするアドレスを保持す
るアドレスレジスタとを有し、前記可変長復号テーブル
から読み出されたデータの上位部分を上位とし且つ前記
シフトレジスタの先頭nビット(nは2以上の整数)を
下位とするアドレスを前記アドレスレジスタの入力とす
る一方、前記シフト制御回路が解読終了時以外では常に
シフト量を前記nとし、解読終了時には前記可変長復号
テーブルから読み出されたデータの下位部分に基づき、
シフト量を決定するように構成される。
回路は、ビット可変長符号の入力に用いられるシフトレ
ジスタと、前記シフトレジスタのシフト量を制御するシ
フト制御回路と、可変長復号テーブルと、前記可変長復
号テーブルにアクセスするアドレスを保持するアドレス
レジスタと、前記可変長復号テーブルから読み出された
データ下位部分を入力とするサブブロックアドレス用マ
ルチプレクサとを有し、前記サブブロックアドレス用マ
ルチプレクサにより前記可変長復号テーブルから読み出
されたデータの上位部分を上位とし、前記シフトレジス
タの先頭mビット(mは2以上の整数)を下位とするア
ドレスを前記アドレスレジスタに入力する際に、前記m
の値を前記可変長復号テーブルから読み出されたデータ
の下位部分に応じて決定する一方、前記シフト制御回路
が解読終了時以外ではシフト量を前記mとし、解読終了
時には前記可変長復号テーブルから読み出されたデータ
の下位部分に基づきシフト量を決定するように構成され
る。
回路は、ビット可変長符号の逐次処理過程における先頭
部を保持するシフトレジスタと、前記シフトレジスタの
複数ビットのシフトを制御するシフト制御回路と、上
位,中位,下位の3つのデータフィールドからなる復号
表を格納する復号表メモリと、前記復号表メモリから読
み出された上位データフィールドと前記シフトレジスタ
の先頭部nビット(nは正の整数)の一部との結合形態
を指定するマルチプレクサと、復号開始アドレスを保持
するレジスタ手段とを有し、復号検索開始時には前記復
号開始アドレスを次の前記復号表メモリのアドレスと
し、それ以降から復号検索終了に至るまでの間は、前記
マルチプレクサにおいて前記シフトレジスタの先頭部m
ビット(m≦n、mは正の整数)が前記上位データフィ
ールドの下位部分と置き換えられたものを次の前記復号
表メモリのアドレスとし、前記mの値は前記復号表メモ
リから読み出された中位データフィールドによって決定
する一方、復号の終了は前記復号表メモリから読み出さ
れた下位データフィールドによって決定するように構成
される。
回路は、ビット可変長符号の逐次処理過程における先頭
部を保持するシフトレジスタと、前記シフトレジスタの
複数ビットのシフトを制御するシフト制御回路と、上
位,中位,下位の3つのデータフィールドからなる復号
表を格納する復号表メモリと、前記復号表メモリから読
み出された上位データフィールドからなる復号表を格納
する復号表メモリと、前記復号表メモリから読み出され
た上位データフィールドと前記シフトレジスタの先頭部
nビット(nは正の整数)の一部との結合形態を指定す
るマルチプレクサと、前記シフトレジスタの先頭部kビ
ット(kは正の整数)を入力する最左1検出エンコーダ
と、復号開始アドレスを保持するレジスタ手段とを有
し、復号検索開始時には前記最左1検出エンコーダの出
力と前記復号開始アドレスとの和を次の前記復号表メモ
リのアドレスとし、それ以降から復号検索終了に至るま
での間は前記マルチプレクサにおいて前記シフトレジス
タの先頭部mビット(m≦n、mは正の整数)が前記上
位データフィールドの下位部分と置き換えられたものを
次の前記復号表メモリのアドレスとし、前記mの値は前
記復号表メモリから読み出された中位データフィールド
によって決定する一方、復号の終了は前記復号表メモリ
から読み出された下位データフィールドによって決定す
るように構成される。
て説明する。まず、本発明の第1の実施例で実現されて
いる解読方式を図1(a),(b)および図2を用いて
説明する。
(a)で与えられた可変長符号に対して、ビット毎の符
号解読を行なうために用いられる2−3−4進ツリーに
よる状態遷移図および3ビット毎の符号解読を行なうた
めに用いられる2−3−4−5−6−7−8進ツリーに
よる状態遷移図であり、また図2は図1(b)に示す状
態遷移に基づく復号化テーブルを表わす図である。ま
ず、図1(a)に示すように、かかる状態遷移は図14
(a)で与えられた符号を、左側から順に2ビットずつ
たどることにより、解読をすすめる手順を与えている。
この場合も図14(b)と同様、丸印は解読手順での初
期状態および中間状態を示している。解読開始ととも
に、最左側の丸印からスタートし、解読における最初の
2ビットが00ならば00の枝(矢印)をたどり、01
ならば01の枝をたどる。0xの枝は、00と01の両
方を含む。xはこのような冗長性(Don’t Car
e)を示す記号である。また、図1(b)に示すよう
に、かかる状態遷移も全く同様に、図14(a)で与え
られた符号を左側から順に3ビットずつたどることによ
り解読をすすめる手順を与えている。
図1(b)における状態遷移を実現しており、右の欄は
解読が中間状態/終了状態のいずれかを示す(0:終
了、1:未終了)。また、左の欄は、解読が中間状態の
場合次のテーブルのエントリの番地を示し、解読の終了
の場合解読された符号の意味(ここでは正の整数)を記
述してある。この方式では符号を3ビットずつシフトし
て解読するのに対し、符号長はいつも3の倍数であると
は限らないので、どこかでその端数を調整する必要があ
る。その端数は、図2においては冗長項xとして現われ
ている。このxは次の符号の先頭部分との重複を意味し
ているため、その部分はシフトアウトしないようにシフ
ト数を減らす必要がある。図2の中央の欄は解読が終了
したとき解読終了時の符号シフト量を変更するよう指定
するフィールドであり、このようなシフト量の調整に用
いられる。すなわち、この欄において、01は1ビット
シフト、10は2ビットシフト、11は3ビットシフト
を各々意味している。
一の実施例を示す復号化回路のブロック図および図3
(a)に示す可変長復号テーブルの構成図である。図3
(a)に示すように、本実施例は開始アドレスレジスタ
101および終了データレジスタ102と、12ビット
×2Kワード構成の可変長復号テーブル103と、この
テーブル103からの読出しデータをストアするデータ
レジスタ104と、これらのレジスタ101,104の
12ビットデータを入力する2to1マルチプレクサ1
05と、シフトレジスタ107およびビット反転器10
8と、シフトレジスタ107の先頭3ビットおよびMP
X105からの9ビットを入力してテーブル101に対
するアドレスを作成するアドレスレジスタ106と、シ
フトレジスタ107のシフト量を制御するシフト制御回
路109と、復号タイミングシーケンサ110とを有し
ている。また、図3(b)に示すように、可変長復号テ
ーブル103は1ビットの検索続行指定部と、2ビット
の検索終了直後のシフト数と、検索続行の場合の9ビッ
トからなる上位(ブロック)アドレスとを備えている。
この構造は図2のテーブルに基づくものである。なお、
図3(a)の動作タイミングは前述した図17のタイミ
ングと同様である。
る。なお、以下に述べる動作のタイミング制御は、復号
タイミングシーケンサ110で行なわれる。つまり、復
号タイミングシーケンサ110は復号の開始,実行,終
了に関連するタイミング信号を生成する。まず、開始ア
ドレスレジスタ101に初期アドレスが設定される。こ
の初期アドレスは可変長復号テーブル103と同一のフ
ォーマットで記述されており、マルチプレクサ105を
通過する。その際、最下位3ビットは解読されるデータ
のはいったシフトレジスタ107の先頭ビットで置き換
えられ、アドレスレジスタ106に設定される。このア
ドレスレジスタ106の内容は、復号テーブル103の
アクセスに用いられる。次に、このアクセスにより、復
号テーブル103のデータがデータレジスタ104に設
定されるとともに、シフト制御回路109によりシフト
レジスタ107が3ビット左にシフトされる。
チプレクサ105を通過し、その最下位3ビットが再び
解読されるデータのはいったシフトレジスタ107の先
頭3ビットで置き換えられ、アドレスレジスタ106に
設定される。このアドレスレジスタ106の内容は、再
び復号化テーブル103のアクセスに用いられる。な
お、反転器108は、シフトレジスタ107の先頭3ビ
ットの順序を反転する目的で挿入されている。これは、
ビット列の先頭がアドレスの最下位に対応するようにす
るためである。もしシフトレジスタ107が右シフト型
であれば、反転器108は不必要である。
時点、即ち1つの符号を解読したと認識されるまで繰り
返される。この例では、繰り返しの単位は、前述した図
15に示すように、基準クロック1周期分である。この
ような検索が「終了」したかどうかを示す情報は、復号
テーブル103の最下位ビットに書込まれており{図3
(b)参照}、これがデータレジスタ104の最下位ビ
ットとして読み出される。その結果は、マルチプレクサ
105を通過しシフト制御回路109および復号タイミ
ングシーケンサ110に伝達される。シフト制御回路1
09は、これによりシフトレジスタ107のシフト量を
決定する。
索結果として得られたデータが、終了データレジスタ1
02に格納される。また、検索終了時のシフトレジスタ
107のシフト量はシフト制御回路109に伝えられ、
終了時の3ビット以下のシフトに対応することができ
る。要するに、この復号化方式は、最大1クロックで3
ビットの処理を行なうことにより、処理を高速化でき
る。
終了データの幅と、テーブル103自身のアドレスとし
て必要なアドレス長とで決定される。また、図2の左フ
ィールドが解読中間状態において必ず下3ビットが0に
なる。つまり、テーブルエントリは1つの中間状態に対
して8つが組になっていて(これを以後「ブロック」と
読ぶ)、この先頭番地に対するオフセットをシフトレジ
スタ107が供給している。よって、この冗長な3ビッ
トを復号テーブル103から削除することも可能であ
る。さらに、解読中間状態においては、中央のフィール
ドを使用していない点も注意すべきである。これら2つ
の点を利用することにより、復号テーブル103のビッ
ト幅を削減することができる。尚、テーブル103の深
さは、図1(b)と図2から明らかなように、中間状態
数の8倍である。この中間状態数が符号数より大きくな
ることはないため、テーブルエントリ数は高々符号数の
定数倍であるといえる。
いる解読方式を図4を用いて説明する。図4は前述した
図1(b)の状態遷移に基づくもう1つの復号化テーブ
ルを表わす図である。すなわち、図1(b)は前述した
図14(a)の従来例で与えられた符号を左側から順に
3ビットずつたどることにより、解読を進める手順を与
えている。しかし、この遷移図をそのままテーブルとし
て実現すると、非常に冗長な部分が現われる。例えば、
図2の第3のブロック(01100000番地)におい
ては、最終結果「5」および最終結果「6」を解読する
ために各々4エントリずつを使用している。これは、3
ビットの解読により8進ツリーをたどる状態をそのまま
テーブル上で実現したため、単純に2進ツリーで2つの
状態を分離するためにも8つの状態を用いることになっ
たからである。
ような冗長性を極力取り除く工夫がされている。図4に
おいて、右側の欄は解読が中間状態/終了状態のいずれ
かを示す(00:終了)とともに、次のテーブル参照が
ブロックサイズ以下であることを許し(以下、これをサ
ブブロックという)、その大きさを指定している(0
1:サブブロック=2エントリ、10:サブブロック=
4エントリ、11:サブブロック=8エントリ)。こう
すれば、例えば上述した第3のブロックのエントリは2
つで済み、冗長なテーブル領域の設定を避けることがで
きる。また、解読中間状態の場合、図4の左側の欄と中
央の欄は次のテーブルエントリの番地を表わす。更に、
解読終了の場合の左側の欄は解読された符号の意味(こ
こでは正の整数)を、中央の欄は解読終了時の符号シフ
ト量を各々表わしている。
て解読するのと性能は変わらないのに対して、テーブル
の深さが大幅に改善できる。例えば、図2において40
エントリあった復号テーブルは、図4においては24エ
ントリに減少している。これは、この例では2進ツリー
探索のテーブル(図15)の深さと同じ程度になってい
る。
参照して説明する。なお、本実施例は上述した例題と1
対1には対応していない。
回路のブロック図である。図5に示すように、本実施例
は開始アドレスレジスタ101および終了データレジス
タ102と、可変長復号テーブル103aおよびデータ
レジスタ104と、2to1マルチプレクサ105と、
アドレスレジスタ106と、シフトレジスタ107およ
びビット反転器108aと、シフト制御回路109a
と、復号タイミングシーケンサ110と、サブブロック
アドレス用マルチプレクサ111とを有する。この可変
長復号テーブル103aは12ビット×2Kワード構成
である。
5においてサポートしているサブブロックの種類を示す
図である。図6(a)〜(c)に示すように、ここでの
サブブロックは4ワード/8ワード/16ワードの3種
類あるが、各々は2ビット/3ビット/4ビットの解読
に対応している。
成図である。図7に示すように、このテーブル103a
の構造は前述した図4に類似しているものである。な
お、図5の動作タイミングは、前述した図17のタイミ
ングと同じと考えてよい。
5を用いて説明する。尚、以下に述べる動作のタイミン
グ制御は、復号タイミングシーケンサ110で行なわれ
る。つまり、復号タイミングシーケンサ110は、復号
の開始,実行,終了に関連するタイミング信号を生成す
る。
アドレスが設定される。この初期アドレスは、可変長復
号テーブル103aと同一のフォーマットで記述されて
いるとする。しかる後、マルチプレクサ105を通過
し、その最下位4ビットは解読されるデータのはいった
シフトレジスタ107の先頭4ビットで置き換えられる
が、それに先立ちサブブロックアドレス用マルチプレク
サ111がその置き換えの範囲を指定するために用いら
れる。ここでも、前述した第一の実施例の場合と同様の
目的で反転器108aが用いられる。
最下位フィールド2ビットが01の場合、最下位2ビッ
トの置き換えが発生する。つまり、反転器108aの先
頭2ビットは無視され、マルチプレクサ105の出力の
中央フィールド2ビットがマルチプレクサ111の出力
になる。また、最下位フィールド2ビットが10の場
合、最下位3ビットの置き換えが発生する。つまり、反
転器108aの先頭2ビットのうち下位1ビットと、マ
ルチプレクサ105の出力の中央フィールド2ビットの
うち上位1ビットとが結合され、マルチプレクサ111
の出力になる。更に、最下位フィールド2ビットが11
の場合、最下位4ビットの置き換えが発生する。つま
り、マルチプレクサ105の出力の中央フィールド2ビ
ットは無視され、反転器108aの先頭2ビットがマル
チプレクサ111の出力になる。
アドレスレジスタ106に設定される。このレジスタ1
06の内容は、復号テーブル103aのアクセスに用い
られる。このアクセス結果はデータレジスタ104に設
定されるとともに、シフトレジスタ107はマルチプレ
クサ105の出力の最下位フィールド2ビットで指定さ
れたビット数だけ左にシフトされる。データレジスタ1
04の内容はマルチプレクサ105を通過し、その最下
位4ビットが上述のアドレス置き換えを受け、アドレス
レジスタ106に設定される。このアドレスレジスタ1
06の内容は再び復号テーブル103aのアクセスに用
いられる。
まで、即ち1つの符号を解読したと認識されるまで繰り
返される。尚、本実施例における繰り返しの単位は、基
準クロック1周期分である。
情報は、復号テーブル103aの最下位フィールドに書
込まれており、これがデータレジスタ104の最下位フ
ィールドとして読み出される。その結果は、マルチプレ
クサ105を通過してシフト制御回路109aおよび復
号タイミングシーケンサ110に伝達される。これによ
り、シフト制御回路109aはシフトレジスタ107の
シフト量を決定する。検索が終了すると、テーブル検索
結果として得られたデータが、終了データレジスタ10
2に格納される。また、検索終了時のシフトレジスタ1
07のシフト量がマルチプレクサ105の出力の中央フ
ィールド2ビットとしてシフト制御回路109aに伝え
られ、終了時の3ビット以下のシフトに対応することが
できる。
1クロック3ビットの処理を行なうことで処理を高速化
でき、且つテーブルサイズを小さく保つことができる。
また、復号テーブル103aのビット幅は終了データの
幅と、テーブル自身のアドレスとして必要なアドレス長
とで決定される。解読中間状態においては、中央のフィ
ールドを使用していない。このため、サブブロックアド
レスをテーブル中央のフィールドに埋め込むことが可能
である。このテーブルの深さは、明らかに前述した第1
の実施例よりも小さい。よって、テーブルエントリ数は
高々符号数の定数倍であるといえる。
回路のブロック図である。図8に示すように、本実施例
は復号表メモリ112と、復号制御シーケンサ113
と、復号結果データレジスタ114および復号開始アド
レスレジスタ119と、シフト制御回路115およびシ
フトレジスタ116と、シフト量デコーダ117と、3
to1マルチプレクサ118および2to1マルチプレ
クサ121と、復号表メモリアドレスレジスタ120と
を有している。このうち、復号表メモリ112は20ビ
ット×4KWの容量である。
可変長符号の復号表を表わす図である。図9および図1
0に示すように、この復号表は4つのデータフィールド
から成っており、図8の回路を用いて、前述した図19
で与えられた可変長符号を復号する場合に用いられる。
この復号表はフィールド1が行番号(0を含む)、フィ
ールド2(フィールド4=“1”のとき)が次に検索す
べきこの表の行番号をそれぞれ表わし、またフィールド
2(フィールド4=“0”のとき)が符号化されたデー
タを表わす。更に、フィールド3が次の検索までにシフ
トすべき入力系列のシフト量、フィールド4がこの行で
復号が終了した(“0”)か、そうでない(“1”)か
を示すフラグをそれぞれ表わす。
明する。尚、以下に述べる動作のタイミング制御は、復
号タイミングシーケンサ113で行なわれるとする。つ
まり、復号タイミングシーケンサ113は、復号の開
始,実行,終了に関連するタイミング信号を生成する。
アドレスが設定される。この初期アドレスは、図9およ
び図10の復号表の各行と同一のフォーマットで記述さ
れているとする。この例では、初期アドレスの上位フィ
ールドは0、中位フィールドは4、下位フィールドは1
とする。この初期アドレスデータはマルチプレクサ12
1を通過し、その中位データフィールドが、マルチプレ
クサ118の選択信号として、デコーダ117に送出さ
れる。また、シフト制御回路115は、初期アドレスに
対しては動作しない。更に、復号表メモリ112のアド
レス12ビットを形成するために、デコーダ117の出
力に基づき、シフトレジスタ116の先頭から4ビット
が取り込まれ、残りの8ビットは、初期アドレスの上位
フィールドの上位から取られる。この選択がマルチプレ
クサ118で行われる。最終的に得られた次の復号表メ
モリアドレスはレジスタ120にストアされる。
レスに従ってアクセスされた復号表メモリ112の内容
がマルチプレクサ121を通過する。このとき、シーケ
ンサ113は与えられた復号表の下位フィールドの値が
0であればこのアクセスで復号終了と判定する。一方、
シフト制御回路115は与えられた復号表の中位フィー
ルドの値に従って、その値だけシフトレジスタ116を
シフトさせる。このシフトレジスタ116からマルチプ
レクサ118に対して与えられるビット列は、このシフ
ト後のビット列の先頭であるように制御される。また、
復号表の上位フィールドとこのビット列は、初期アドレ
スの時と同様の方法で結合される。
まで繰り返される。
て得られたデータは終了データレジスタ114に格納さ
れる。また、検索終了時にもシフトレジスタ116のシ
フトは実行され、次の復号の初期状態に対応できるよう
にする。
で最大nビット(nはシフトレジスタの許容する最大シ
フト量と、復号表メモリの中位フィールドの指定できる
最大数の大きくないほう)までの復号が可能であること
である。すなわち、図9および図10の復号表は、前述
した図19の符号表のフィールド3:可変長符号におい
て、最大長符号(長さ16)を4+4+4+2+2に5
分割して復号するように構成されている(他の符号もこ
れに準ずる)。そのため、図9および図10の復号表に
よれば、最悪ケースでも5サイクルで復号が完了する。
長符号の復号化回路のブロック図である。図11に示す
ように、本実施例は前述した第3の実施例における復号
化の速度と復号表の大きさについて、さらに改善された
結果をもたらすものである。本実施例の復号化回路は、
復号表メモリ112と、復号制御シーケンサ113と、
復号結果データレジスタ114および復号開始アドレス
レジスタ119と、シフト制御回路115およびシフト
レジスタ116と、シフト量選択回路112と、シフト
量デコーダ117およびマルチプレクサ118と、プラ
イオリティエンコーダ(最左1検出エンコーダ)123
と、加算器(ADDER)124および2to1マルチ
プレクサ125と、復号表メモリアドレスレジスタ12
0とを有している。
可変長符号を復号するときに、図12に示す復号表を用
いることになる。
づく可変長符号の復号表を表わす図である。図12に示
すように、この復号表は4つのデータフィールドから成
っていて、その意味は既に説明した図9および図10の
場合と全く同じである。
明する。
大きな相違点は、復号開始時において、復号化ビット数
を符号そのものの性質を利用して大きく稼ごうとする点
である。しかるに、一般的な不等長符号の割当ては、前
述した図19のように、0(または1)の連続した並び
で開始されるなどの規則性を有しており、ランダムな0
/1の組合せの上に長い符号を割当てることは少ない。
そこで、図19のようなケースでは、連続する先頭の0
の数によって符号全体を分類すると、概ね等数の符号集
団に分類できる。これは、もし第一回目の復号サイクル
で、0のランレングスに基づいて復号すれば、その後の
復号終了までのサイクル数が平均化されることを意味し
ている。
め、図11では、図8に比べて、プライオリティエンコ
ーダ(最左1検出エンコーダ)123を追加している。
この例では、シフトレジスタ116の先頭16ビットを
一度に検索し、その中で最初に1が出現するビット位置
を出力する。
する。まず、開始アドレスレジスタ119に初期アドレ
スが設定される。この値は、プライオリティエンコーダ
123の出力と加算器124で加算される。この加算デ
ータは最初のサイクルのみ加算器124の出力を選択す
るマルチプレクサ125を通過し、レジスタ120にス
トアされる。また、この次のサイクル以降の動作は全く
前述した第3の実施例と同じである。
の選択は、プライオリティエンコーダ123の出力で決
定されているため、第2のサイクルのシフト量は、第3
の実施例の場合の1から4に比べて、1から16の範囲
に拡張されている。このため、20ビット程度の不等長
符号でも2サイクルから3サイクル以内で復号を完了す
る。要するに、図12の復号表では、最悪ケースでも3
サイクルで復号を完了できる。
変長符号の復号化回路のブロック図である。図13に示
すように、本実施例は前述した図11に示す第4の実施
例と比較すると、加算器124を省略している。要する
に、プライオリティエンコーダ123からの出力を加算
器124に通すことがタイミング上クリティカルである
ならば、本実施例の回路を採用できる。このとき、復号
表の開始アドレスのアライメントの制約ができるが、こ
れはスピードとのトレードオフと考えられる。
号の復号化回路は、比較的小規模な復号化テーブル(例
えば、テーブルとしてメモリを用いる場合、高々符号数
に比例したメモリ容量)もしくは復号表で複数ビット毎
の復号処理を実行することができるという効果がある。
また、本発明は復号化するビット数を可変制御すること
により、メモリ容量と解読速度とのトレードオフをファ
ームウェア化することができ、復号化テーブル容量もし
くは復号表メモリ容量に制約のあるときには、解読の遅
いテーブルもしくは表を、容量制約のないときには解読
の早いテーブルもしくは表を構成するといったフレキシ
ビリティを有するという効果がある。さらに、本発明は
複数の可変長符号の順次解読や、複数の用途に対するハ
ードウェアの流用を考える場合にでも、1つの解読テー
ブルもしくは復号表におけるアドレス割り付けを変更す
るだけで対応することが可能であり、このメモリをRA
M化することでこの効果をさらに高めることができると
いう効果がある。
つビットパターンの性質を利用し、復号速度を改善して
復号表のサイズを大幅に小さくすることが可能であると
いう効果がある。
ビリティに富み、適当なテーブルサイズもしくは適当な
復号表のサイズで性能的に非常に高速な結果が得られ
る。
符号に対し、2ビット毎,3ビット毎の解読を行う状態
遷移図である。
表わす図である。
化回路およびその可変長復号テーブルを表わす図であ
る。
移に基づく別の復号テーブルを表わす図である。
化回路のブロック図である。
種類を示す図である。
る。
化回路のブロック図である。
ある。
である。
号化回路のブロック図である。
号表を表わす図である。
号化回路のブロック図である。
るための可変長符号化テーブルおよび二進ツリーによる
状態遷移を表わす図である。
る。
ブロックおよび可変長復号テーブルの構成を表わす図で
ある。
ミング図である。
回路ブロック図である。
化回路のブロック図である。
例を示す図である。
反転器 109,109a,115 シフト制御回路 110 復号タイミングシーケンサ 111 サブブロックアドレス用マルチプレクサ 112 復号表メモリ 113 シーケンサ 114 復号結果データレジスタ 117 デコーダ 118 3to1MPX 119 復号開始アドレスレジスタ 120 復号表メモリアドレスレジスタ 121,125 2to1MPX 123 プライオリティ・エンコーダ 124 加算器
Claims (4)
- 【請求項1】 ビット可変長符号の入力に用いられるシ
フトレジスタと、前記シフトレジスタのシフト量を制御
するシフト制御回路と、可変長復号テーブルと、前記可
変長復号テーブルにアクセスするアドレスを保持するア
ドレスレジスタとを有し、前記可変長復号テーブルから
読み出されたデータの上位部分を上位とし且つ前記シフ
トレジスタの先頭nビット(nは2以上の整数)を下位
とするアドレスを前記アドレスレジスタの入力とする一
方、前記シフト制御回路が解読終了時以外では常にシフ
ト量を前記nとし、解読終了時には前記可変長復号テー
ブルから読み出されたデータの下位部分に基づき、シフ
ト量を決定することを特徴とする可変長符号の復号化回
路。 - 【請求項2】 ビット可変長符号の入力に用いられるシ
フトレジスタと、前記シフトレジスタのシフト量を制御
するシフト制御回路と、可変長復号テーブルと、前記可
変長復号テーブルにアクセスするアドレスを保持するア
ドレスレジスタと、前記可変長復号テーブルから読み出
されたデータ下位部分を入力とするサブブロックアドレ
ス用マルチプレクサとを有し、前記サブブロックアドレ
ス用マルチプレクサにより前記可変長復号テーブルから
読み出されたデータの上位部分を上位とし、前記シフト
レジスタの先頭mビット(mは2以上の整数)を下位と
するアドレスを前記アドレスレジスタに入力する際に、
前記mの値を前記可変長復号テーブルから読み出された
データの下位部分に応じて決定する一方、前記シフト制
御回路が解読終了時以外ではシフト量を前記mとし、解
読終了時には前記可変長復号テーブルから読み出された
データの下位部分に基づきシフト量を決定することを特
徴とする可変長符号の復号化回路。 - 【請求項3】 ビット可変長符号の逐次処理過程におけ
る先頭部を保持するシフトレジスタと、前記シフトレジ
スタの複数ビットのシフトを制御するシフト制御回路
と、上位,中位,下位の3つのデータフィールドからな
る復号表を格納する復号表メモリと、前記復号表メモリ
から読み出された上位データフィールドと前記シフトレ
ジスタの先頭部nビット(nは正の整数)の一部との結
合形態を指定するマルチプレクサと、復号開始アドレス
を保持するレジスタ手段とを有し、復号検索開始時には
前記復号開始アドレスを次の前記復号表メモリのアドレ
スとし、それ以降から復号検索終了に至るまでの間は、
前記マルチプレクサにおいて前記シフトレジスタの先頭
部mビット(m≦n、mは正の整数)が前記上位データ
フィールドの下位部分と置き換えられたものを次の前記
復号表メモリのアドレスとし、前記mの値は前記復号表
メモリから読み出された中位データフィールドによって
決定する一方、復号の終了は前記復号表メモリから読み
出された下位データフィールドによって決定することを
特徴とする可変長符号の復号化回路。 - 【請求項4】 ビット可変長符号の逐次処理過程におけ
る先頭部を保持するシフトレジスタと、前記シフトレジ
スタの複数ビットのシフトを制御するシフト制御回路
と、上位,中位,下位の3つのデータフィールドからな
る復号表を格納する復号表メモリと、前記復号表メモリ
から読み出された上位データフィールドからなる復号表
を格納する復号表メモリと、前記復号表メモリから読み
出された上位データフィールドと前記シフトレジスタの
先頭部nビット(nは正の整数)の一部との結合形態を
指定するマルチプレクサと、前記シフトレジスタの先頭
部kビット(kは正の整数)を入力する最左1検出エン
コーダと、復号開始アドレスを保持するレジスタ手段と
を有し、復号検索開始時には前記最左1検出エンコーダ
の出力と前記復号開始アドレスとの和を次の前記復号表
メモリのアドレスとし、それ以降から復号検索終了に至
るまでの間は前記マルチプレクサにおいて前記シフトレ
ジスタの先頭部mビット(m≦n、mは正の整数)が前
記上位データフィールドの下位部分と置き換えられたも
のを次の前記復号表メモリのアドレスとし、前記mの値
は前記復号表メモリから読み出された中位データフィー
ルドによって決定する一方、復号の終了は前記復号表メ
モリから読み出された下位データフィールドによって決
定することを特徴とする可変長符号の復号化回路。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4206345A JP3008685B2 (ja) | 1992-08-03 | 1992-08-03 | 可変長符号の復号化回路 |
US08/101,357 US5398027A (en) | 1992-08-03 | 1993-08-03 | Decoding circuit for variable length code |
EP93112422A EP0582273B1 (en) | 1992-08-03 | 1993-08-03 | Decoding circuit for variable length code |
DE69327021T DE69327021T2 (de) | 1992-08-03 | 1993-08-03 | Dekodierschaltung für einen Kode variabler Länge |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4206345A JP3008685B2 (ja) | 1992-08-03 | 1992-08-03 | 可変長符号の復号化回路 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0651943A true JPH0651943A (ja) | 1994-02-25 |
JP3008685B2 JP3008685B2 (ja) | 2000-02-14 |
Family
ID=16521769
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4206345A Expired - Fee Related JP3008685B2 (ja) | 1992-08-03 | 1992-08-03 | 可変長符号の復号化回路 |
Country Status (4)
Country | Link |
---|---|
US (1) | US5398027A (ja) |
EP (1) | EP0582273B1 (ja) |
JP (1) | JP3008685B2 (ja) |
DE (1) | DE69327021T2 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0683569A2 (en) | 1994-05-19 | 1995-11-22 | Nec Corporation | Decoding circuit for variable length code |
JP2002344328A (ja) * | 2001-05-21 | 2002-11-29 | Ricoh Co Ltd | 復号化装置、プログラム及び可変長符号の復号方法 |
KR100386114B1 (ko) * | 2001-02-16 | 2003-06-02 | 삼성전자주식회사 | 멀티-입/출력카드를 갖춘 네트워크시스템의 초기화제어장치 |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2746109B2 (ja) * | 1994-03-09 | 1998-04-28 | 日本電気株式会社 | ハフマン符号復号化回路 |
JP3220598B2 (ja) * | 1994-08-31 | 2001-10-22 | 三菱電機株式会社 | 可変長符号テーブルおよび可変長符号化装置 |
KR0152038B1 (ko) * | 1994-10-17 | 1998-10-15 | 김광호 | 상대 주소를 이용한 가변장 복호화 장치 |
DE4441293C2 (de) * | 1994-11-21 | 1999-01-21 | Sican Gmbh | Verfahren und Schaltungsanordnung zum Lesen von Codewörtern variabler Länge aus einem Datenspeicher mit fester Wortlänge |
KR0154011B1 (ko) * | 1995-03-16 | 1998-11-16 | 배순훈 | 가변길이 복호화 장치 |
GB2313511B (en) * | 1996-05-25 | 2000-03-22 | Motorola Inc | Decoder circuit and method |
JP3410629B2 (ja) * | 1997-05-21 | 2003-05-26 | シャープ株式会社 | 可変長符号化回路及び可変長符号化方法 |
US6188797B1 (en) * | 1997-05-27 | 2001-02-13 | Apple Computer, Inc. | Decoder for programmable variable length data |
JP2000207205A (ja) * | 1999-01-14 | 2000-07-28 | Sony Corp | 演算装置 |
US6956511B2 (en) * | 2004-01-06 | 2005-10-18 | Sharp Laboratories Of America, Inc. | Multi-symbol/coefficient decode operation for Huffman codes |
JP4484630B2 (ja) * | 2004-01-29 | 2010-06-16 | パナソニック株式会社 | 可変長復号化装置および可変長復号化方法および再生システム |
JP4829720B2 (ja) * | 2006-08-29 | 2011-12-07 | ルネサスエレクトロニクス株式会社 | 可変長符号復号装置 |
US9923576B2 (en) * | 2014-09-16 | 2018-03-20 | Cisco Technology, Inc. | Decoding techniques using a programmable priority encoder |
US10540379B2 (en) * | 2017-12-11 | 2020-01-21 | International Business Machines Corporation | Searching base encoded text |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3701111A (en) * | 1971-02-08 | 1972-10-24 | Ibm | Method of and apparatus for decoding variable-length codes having length-indicating prefixes |
US3921143A (en) * | 1971-12-29 | 1975-11-18 | Ibm | Minimal redundancy encoding method and means |
US4580129A (en) * | 1983-11-14 | 1986-04-01 | Northern Telecom Limited | Variable word length decoder |
US4899149A (en) * | 1986-02-28 | 1990-02-06 | Gary Kahan | Method of and apparatus for decoding Huffman or variable-length coees |
JP2766302B2 (ja) * | 1989-04-06 | 1998-06-18 | 株式会社東芝 | 可変長符号並列解読方法および装置 |
JPH03143028A (ja) * | 1989-10-27 | 1991-06-18 | Yamaha Corp | 可変長符号の復号回路 |
US5173695A (en) * | 1990-06-29 | 1992-12-22 | Bell Communications Research, Inc. | High-speed flexible variable-length-code decoder |
US5220325A (en) * | 1991-03-28 | 1993-06-15 | At&T Bell Laboratories | Hierarchical variable length decoder for digital video data |
US5254991A (en) * | 1991-07-30 | 1993-10-19 | Lsi Logic Corporation | Method and apparatus for decoding Huffman codes |
US5181031A (en) * | 1991-07-30 | 1993-01-19 | Lsi Logic Corporation | Method and apparatus for decoding huffman codes by detecting a special class |
-
1992
- 1992-08-03 JP JP4206345A patent/JP3008685B2/ja not_active Expired - Fee Related
-
1993
- 1993-08-03 US US08/101,357 patent/US5398027A/en not_active Expired - Lifetime
- 1993-08-03 EP EP93112422A patent/EP0582273B1/en not_active Expired - Lifetime
- 1993-08-03 DE DE69327021T patent/DE69327021T2/de not_active Expired - Fee Related
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0683569A2 (en) | 1994-05-19 | 1995-11-22 | Nec Corporation | Decoding circuit for variable length code |
US5682156A (en) * | 1994-05-19 | 1997-10-28 | Nec Corporation | Decoding circuit for variable length code in which positive/negative discrimination is independent of decoding |
KR100386114B1 (ko) * | 2001-02-16 | 2003-06-02 | 삼성전자주식회사 | 멀티-입/출력카드를 갖춘 네트워크시스템의 초기화제어장치 |
JP2002344328A (ja) * | 2001-05-21 | 2002-11-29 | Ricoh Co Ltd | 復号化装置、プログラム及び可変長符号の復号方法 |
Also Published As
Publication number | Publication date |
---|---|
EP0582273A3 (en) | 1995-07-12 |
JP3008685B2 (ja) | 2000-02-14 |
EP0582273A2 (en) | 1994-02-09 |
EP0582273B1 (en) | 1999-11-17 |
US5398027A (en) | 1995-03-14 |
DE69327021D1 (de) | 1999-12-23 |
DE69327021T2 (de) | 2000-07-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3008685B2 (ja) | 可変長符号の復号化回路 | |
US20100134330A1 (en) | Arithmetic decoding apparatus | |
EP0663730B1 (en) | Apparatus for decoding variable length codes | |
JPH088755A (ja) | 高速可変長復号化装置 | |
JP3274668B2 (ja) | 演算処理装置及び演算処理方法 | |
KR940010433B1 (ko) | 가변길이 코드 디코딩장치 | |
JPH10341167A (ja) | 可変長符号復号化回路 | |
US5617089A (en) | Huffman code decoding circuit | |
JP6159240B2 (ja) | 二値算術符号化装置、二値算術符号化方法及び二値算術符号化プログラム | |
JP2008278075A (ja) | 可変長符号復号化装置 | |
JPH11243342A (ja) | 可変長符号復号装置 | |
JPH10313275A (ja) | 移動電話システムのデータ処理用メモリ | |
JPH08223055A (ja) | 可変長コードデコーダ | |
JP2010166552A (ja) | テーブル装置、符号化装置、復号装置および符号化/復号装置 | |
JP2021129143A (ja) | デコード装置 | |
JP2003174365A (ja) | 復号化装置及びその方法 | |
JPH09246990A (ja) | 可変長符号復号化器 | |
JPH07312556A (ja) | 可変長符号の復号化処理装置 | |
JP3409139B2 (ja) | 可変長符号復号器 | |
KR950008487B1 (ko) | 가변 길이 디코딩 장치 | |
KR102306927B1 (ko) | 긴 폴라 코드를 위한 면적-효율적인 부분 병렬 폴라 코드 부호기 및 그 구현 방법 | |
JPH09284142A (ja) | 可変長復号化装置 | |
JPH08316847A (ja) | 可変長符号の復号装置 | |
KR100237651B1 (ko) | 셀룰러(Cellullar) 시스템의 부호화 장치 | |
KR100239727B1 (ko) | 행렬 전치회로 |
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: 19991102 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20071203 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081203 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091203 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091203 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101203 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101203 Year of fee payment: 11 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101203 Year of fee payment: 11 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111203 Year of fee payment: 12 |
|
LAPS | Cancellation because of no payment of annual fees |