JPH06276394A - ハフマン復号化回路 - Google Patents

ハフマン復号化回路

Info

Publication number
JPH06276394A
JPH06276394A JP5088160A JP8816093A JPH06276394A JP H06276394 A JPH06276394 A JP H06276394A JP 5088160 A JP5088160 A JP 5088160A JP 8816093 A JP8816093 A JP 8816093A JP H06276394 A JPH06276394 A JP H06276394A
Authority
JP
Japan
Prior art keywords
code
huffman
block
code length
data
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
Application number
JP5088160A
Other languages
English (en)
Other versions
JP3005385B2 (ja
Inventor
Hiroyuki Yamada
洋之 山田
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.)
Kanebo Ltd
Original Assignee
Kanebo Ltd
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 Kanebo Ltd filed Critical Kanebo Ltd
Priority to JP5088160A priority Critical patent/JP3005385B2/ja
Publication of JPH06276394A publication Critical patent/JPH06276394A/ja
Application granted granted Critical
Publication of JP3005385B2 publication Critical patent/JP3005385B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Image Processing (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Abstract

(57)【要約】 【目的】 回路規模が小さいハフマン復号化回路を提供
することである。 【構成】 ハフマン復号化回路は、符号長検出回路1、
メモリ回路2およびデータセレクタ3を含む。符号長検
出回路1は、与えられた圧縮データに含まれるハフマン
符号の符号長を検出する。メモリ回路は、9個のブロッ
クBL1〜BL9を含む。各ブロックには、ハフマン符
号の符号長のいずれかがそれぞれ割り当てられ、各ブロ
ックは、割り当てられた符号長を有するハフマン符号に
対応する復号データを記憶する。各ブロックには、与え
られた圧縮データの所定の8ビットがアドレス信号とし
て与えられる。データセレクタは、検出された符号長に
基づいて9個のブロックBL1〜BL9の1つから読み
出された復号データを選択して出力する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、ハフマン符号化方式
により符号化されたハフマン符号を復号するためのハフ
マン復号化回路に関する。
【0002】
【従来の技術】画像データは非常に多くの情報量を含ん
でいる。そのため、画像データをそのままの形で処理す
るのは、メモリ容量および通信速度の点で実用的ではな
い。そこで、画像データ圧縮技術が重要となる。
【0003】画像データ圧縮の国際標準の1つとしてJ
PEG(Joint Photographic Ex
pert Group)がある。非可逆符号化を行なう
DCT(離散コサイン変換)方式と、二次元空間でDP
CM(Differential PCM)を行なう可
逆符号化方式が採用されている。以下、DCT方式の画
像データ圧縮を説明する。
【0004】図3は、DCT方式を実行するためのシス
テムの基本構成を示すブロック図である。
【0005】符号化側では、DCT装置100が、入力
される原画像データにDCT変換を行ない、DCT係数
を出力する。量子化器200は、量子化テーブル400
を参照してDCT係数に量子化処理を行ない、量子化さ
れたDCT係数(以下、量子化DCT係数と呼ぶ)を出
力する。エントロピー符号化器300は、符号化テーブ
ル500を参照して量子化DCT係数にエントロピー符
号化処理を行ない、圧縮データを出力する。エントロピ
ー符号化の方式としてハフマン符号化方式が用いられ
る。
【0006】復号化側では、エントロピー復号器600
が、符号化テーブル500を参照して圧縮データにエン
トロピー復号化処理を行ない、量子化DCT係数を出力
する。逆量子化器700は、量子化テーブル400を参
照して量子化DCT係数に逆量子化処理を行ない、DC
T係数を出力する。逆DCT装置800は、DCT係数
に逆DCT変換を行ない、再生画像データを出力する。
【0007】図4に示すように、各圧縮データ(符号デ
ータ)は可変長のハフマン符号および可変長の付加ビッ
トからなる。ハフマン符号の符号長および付加ビットの
符号長は各圧縮データによって異なる。
【0008】図5は、従来のハフマン復号化回路の主要
部の構成を示すブロック図である。ハフマンテーブル1
は、2m ワードの記憶容量を有するメモリ回路からな
る。ここで、mはハフマン符号の最大符号長を表す。メ
モリ回路としては、スタティックランダムアクセスメモ
リ(SRAM)、ダイナミックランダムアクセスメモリ
(DRAM)等が用いられる。
【0009】ハフマンテーブル1のアドレス入力端子A
Dには、圧縮データの先頭のmビットがアドレス信号と
して与えられる。ハフマンテーブル1内の各アドレスに
は、そのアドレスが表すハフマン符号に対応する復号デ
ータが格納される。
【0010】たとえば、ハフマン符号の最大符号長mを
16とすると、16ビット長のハフマン符号“1111
111111110101”に対応する復号データは、
アドレス“1111111111110101”に格納
される。15ビット長のハフマン符号“1111111
11000010”に対応する復号データは、2つのア
ドレス“111111111000010X”に格納さ
れる。ここで、Xは0および1を表す。また、2ビット
長のハフマン符号“01”に対応する復号データは、2
14個のアドレス“01XXXXXXXXXXXXXX”
に格納される。
【0011】このように、ハフマンテーブル1には、最
大符号長に相当する16ビットの圧縮データがアドレス
信号として与えられるので、最大符号長よりも短いハフ
マン符号に対応する復号データは、複数のアドレスに格
納しておく必要がある。
【0012】たとえば、圧縮データが2ビットのハフマ
ン符号“01”を含む場合には、ハフマンテーブル1に
は、16ビットの圧縮データ“01…”がアドレス信号
として与えられる。それにより、アドレス“01…”に
格納された復号データが読み出され、データ出力端子D
Oから出力される。このようにして、圧縮データに含ま
れるハフマン符号が復号される。
【0013】
【発明が解決しようとする課題】上記のように、従来の
ハフマン復号化回路では、ハフマン符号の最大符号長m
に相当するビット数の圧縮データがアドレス信号として
ハフマンテーブル1に与えられるので、ハフマンテーブ
ル1を構成するメモリ回路の記憶容量は2m ワード必要
となる。この場合、最大符号長mよりも短いハフマン符
号に対応する復号データは複数のアドレスに格納され
る。最大符号長が16ビットのとき、メモリ回路の記憶
容量は216=64Kワード必要となる。
【0014】このように、従来のハフマン復号化回路で
は、ハフマン符号の数よりもはるかに多くの数のアドレ
スに余分な復号データを書き込む必要があり、容量の大
きいメモリ回路が必要となる。その結果、ハフマン復号
化回路の回路規模が大きくなる。
【0015】この発明の目的は、回路規模の小さいハフ
マン復号化回路を提供することである。
【0016】
【課題を解決するための手段】(1)第1の発明 第1の発明に係るハフマン復号化回路は、任意の符号長
を有する複数のハフマン符号を復号するためのハフマン
復号化回路であって、符号長検出手段、記憶手段、およ
び選択手段を備える。
【0017】符号長検出手段は、復号されるべきハフマ
ン符号を含む符号データを受け、復号されるべきハフマ
ン符号の符号長を検出する。記憶手段は、複数のハフマ
ン符号の符号長のいずれかがそれぞれ割り当てられた複
数のブロックを含む。複数のブロックの各々は、割り当
てられた符号長のハフマン符号に対応する復号データを
記憶し、かつ符号データの所定のビットをアドレス信号
として受ける。
【0018】選択手段は、符号長検出手段により検出さ
れた符号長に基づいて複数のブロックのいずれかを選択
し、選択されたブロックから読み出された復号データを
出力する。
【0019】(2) 第2の発明 第2の発明に係るハフマン復号化回路においては、記憶
手段が第1ないし第nのブロックを含む。複数のブロッ
クの各々は2C ワードの記憶容量を有する。前記Cは、 2C-1 <A≦2C の関係を満足する整数を表す。Aは複数のハフマン符号
の総数を表す。前記nは、 n=B−C+1 の関係を満足する。Bは複数のハフマン符号の最大符号
長を表す。
【0020】第1のブロックにはCビット以下の符号長
が割り当てられ、第iのブロックには(C+i−1)ビ
ットの符号長が割り当てられる。iは2からnまでの整
数を表す。
【0021】第1のブロックは符号データの第1ビット
から第Cビットをアドレス信号として受ける。第iのブ
ロックは符号データの第iビットから第(C+i−1)
ビットをアドレス信号として受ける。
【0022】(3) 第3の発明 第3の発明に係るハフマン復号化回路においては、複数
のブロックが第1ないし第nのブロックを含む。第1の
ブロックは2C ワードの記憶容量を有する。前記Cは、 2C-1 <A≦2C の関係を満足する整数を表す。Aは複数のハフマン符号
の総数を表す。前記nは、 n=B−C+1 の関係を満足する。Bは複数のハフマン符号の最大符号
長を表す。第iのブロックは2K ワードの記憶容量を有
する。前記iは2からnまでの整数を表す。前記Kは、 2K-1 <A/(i−1)≦2K の関係を満足する整数を表す。A/(i−1)は小数点
以下を切捨てた整数を表す。
【0023】第1のブロックにはCビット以下の符号長
が割り当てられる。第2ないし第nのブロックには同一
の符号長を有するハフマン符号の数に基づいてハフマン
符号の符号長がそれぞれ割り当てられる。
【0024】第1のブロックは符号データの第1ビット
から第Cビットをアドレス信号として受ける。
【0025】このハフマン復号化回路は、符号長検出手
段により検出された符号長に基づいて符号データのK個
のビットを選択して第2ないし第nのブロックにアドレ
ス信号として与えるビット選択手段をさらに含む。
【0026】
【作用】(1) 第1の発明 第1の発明に係るハフマン復号化回路においては、符号
長検出手段により復号されるべきハフマン符号の符号長
が検出される。記憶手段の各ブロックでは、符号データ
の所定のビットに基づいてアドレス指定が行なわれ、対
応する復号データが読み出される。そして、検出された
符号長に基づいて、選択手段により記憶手段のブロック
のいずれかが選択され、そのブロックから読み出された
復号データが出力される。
【0027】記憶手段の各ブロックは、割り当てられた
符号長のハフマン符号に対応する復号データを記憶すれ
ば足りるので、各ブロックの記憶容量は小さくなる。
【0028】(2) 第2の発明 第2の発明に係るハフマン復号化回路においては、記憶
手段がn個のブロックを含み、各ブロックは2C ワード
の記憶容量を有する。
【0029】第1のブロックにはCビット以下の符号長
が割り当てられる。Cビット以下の符号長を有するハフ
マン符号の数は2C 個以下であるので、Cビット以下の
符号長を有するすべてのハフマン符号に対応する復号デ
ータを第1のブロックに記憶することができる。
【0030】一方、Cビット越える符号長はそれぞれ1
つのブロックに割り当てられる。各ブロックの記憶容量
C がハフマン符号の総数A以上であるので、たとえす
べてのハフマン符号が同じ符号長を有していても、すべ
てのハフマン符号に対応する復号データを対応するブロ
ックに記憶することができる。
【0031】また、ハフマン符号の総数Aは2C 以下で
あるので、同じ符号長を有するハフマン符号について
は、下位Cビットの値は必ず異なる。したがって、第1
のブロックに符号データの第1ビットから第Cビットま
でをアドレス信号として与え、第iのブロックに符号デ
ータの第iビットから第(C+i−1)までをアドレス
信号として与えることによって、各ブロック内の対応す
る復号データを特定することができる。
【0032】(3) 第3の発明 第3の発明に係るハフマン復号化回路においては、記憶
手段がn個のブロックを含み、第1のブロックは2C
ードの記憶容量を有する。
【0033】第1のブロックにはCビット以下の符号長
が割り当てられる。Cビット以下の符号長を有するハフ
マン符号の数は2C 個以下であるので、Cビット以下の
符号長を有するすべてのハフマン符号に対応する復号デ
ータを第1のブロックに記憶することができる。
【0034】Cビットを越えるハフマン符号は、同一の
符号長ごとにグループ分けされる。第iのブロックは2
K ワードの記憶容量を有する。
【0035】第2のブロックは、2K-1 <A≦2K の関
係を満足する2K ワードの記憶容量を有する。第2のブ
ロックには、最も多くの数のハフマン符号を含むグルー
プの符号長が割り当てられる。それにより、たとえすべ
てのハフマン符号の符号長が1つの符号長に集中して
も、すべてのハフマン符号に対応する復号データを第2
のブロックに記憶することができる。
【0036】第3のブロックは、2K-1 <A/2≦2K
の関係を満足する2K ワードの記憶容量を有する。第3
のブロックには、2番目に多くの数のハフマン符号を含
むグループの符号長が割り当てられる。それにより、す
べてのハフマン符号の符号長が2つの符号長に分散した
場合に、すべてのハフマン符号に対応する復号データを
第2および第3のブロックに記憶することができる。
【0037】第4のブロックは、2K-1 <A/3≦2K
の関係を満足する2K ワードの記憶容量を有する。第4
のブロックには、3番目に多くの数のハフマン符号を含
むグループの符号長が割り当てられる。それにより、す
べてのハフマン符号の符号長が3つの符号長に分散した
場合に、すべてのハフマン符号に対応する復号データを
第2ないし第4のブロックに記憶することができる。
【0038】同様にして、第iのブロックは、2K-1
A/(i−1)≦2K の関係を満足する2K ワードの記
憶容量を有する。第iのブロックには、(i−1)番目
に多くの数のハフマン符号を含むグループの符号長が割
り当てられる。それにより、すべてのハフマン符号の符
号長が(i−1)個の符号長に分散した場合に、すべて
のハフマン符号に対応する復号データを第2ないし第i
のブロックに記憶することができる。
【0039】したがって、検出された符号長に基づいて
符号データのK個のビットを選択して第iのブロックに
アドレス信号として与えることによって、第iのブロッ
ク内の対応する復号データを特定することができる。
【0040】
【実施例】以下、この発明の実施例を図面を参照しなが
ら詳細に説明する。図1は、この発明の第1の実施例に
よるハフマン復号化回路の構成を示すブロック図であ
る。
【0041】このハフマン復号化回路は、符号長検出回
路1、メモリ回路2およびデータセレクタ3を含む。
【0042】符号長検出回路1は、それぞれ8〜16ビ
ットの9個の比較器11,12,…,19およびプライ
オリティエンコーダ10を含む。8ビットの比較器11
の一方の入力端子には圧縮データの第1ないし第8ビッ
トD0〜D7が与えられ、他方の入力端子には8ビット
長のハフマン符号の最大符号値M8が与えられる。9ビ
ットの比較器12の一方の入力端子には圧縮データの第
1ないし第9ビットD0〜D8が与えられ、他方の入力
端子には9ビット長のハフマン符号の最大符号値M9が
与えられる。以下同様にして、16ビットの比較器19
の一方の入力端子には圧縮データの第1ないし第16ビ
ットD0〜D15が与えられ、他方の入力端子には16
ビット長のハフマン符号の最大符号値M16が与えられ
る。
【0043】各比較器は、一方の入力端子に与えられる
圧縮データと他方の入力端子に与えられる最大符号値と
を比較し、圧縮データの値が最大符号値よりも大きい場
合に“H”を出力し、それ以外の場合に“L”を出力す
る。プライオリティエンコーダ10は、比較器11〜1
9の出力信号に応答してブロック選択信号BSを発生す
る。
【0044】比較器11〜19の出力信号が“L”であ
れば、ブロック選択信号BSは“1”を示す。比較器1
1の出力信号が“H”であり、他の比較器12〜19の
出力信号が“L”であれば、ブロック選択信号BSは
“2”を示す。比較器11,12の出力信号が“H”で
あり、他の比較器13〜19の出力信号が“L”であれ
ば、ブロック選択信号BSは“3”を示す。同様にし
て、比較器11〜18の出力信号が“H”であり、比較
器19の出力信号が“L”であれば、ブロック選択信号
BSは“9”を示す。
【0045】メモリ回路2は9個のブロックBL1,B
L2,…,BL9を含む。各ブロックBL1〜BL9は
256ワードRAM(ランダムアクセスメモリ)からな
る。
【0046】ブロックBL1には圧縮データの第1ない
し第8ビットD0〜D7がアドレス信号として与えられ
る。ブロックBL2には圧縮データの第2ないし第9ビ
ットD1〜D8がアドレス信号として与えられる。以下
同様にして、ブロックBL9には圧縮データの第9ない
し第16ビットD8〜D15がアドレス信号として与え
られる。
【0047】ブロックBL1には1〜8ビットの符号長
を有するハフマン符号に対応する復号データが記憶され
る。ブロックBL2には9ビットの符号長を有するハフ
マン符号に対応する復号データが記憶される。以下同様
にして、ブロックBL9には16ビットの符号長を有す
るハフマン符号に対応する復号データが記憶される。各
復号データは、対応するハフマン符号により示されるア
ドレスに格納される。
【0048】データセレクタ3は、プライオリティエン
コーダ10から発生されるブロック選択信号BSに応答
して、ブロックBL1〜BL9から読み出された復号デ
ータのうち1つを選択して出力する。
【0049】ブロック選択信号BSが“1”のときに
は、データセレクタ3はブロックBL1から読み出され
た復号データを選択して出力する。ブロック選択信号B
Sが“2”のときには、データセレクタ3はブロックB
L2から読み出された復号データを選択して出力する。
以下同様にして、ブロック選択信号BSが“9”のとき
には、データセレクタ3はブロックBL9から読み出さ
れた復号データを選択して出力する。
【0050】JPEGのベースライン方式におけるAC
ハフマン符号の総数は162であり、JPEGの拡張方
式におけるACハフマン符号の総数は226である。こ
こで、拡張方式を考えると、ACハフマン符号の総数A
は226であり、ハフマン符号の最大符号長Bは16で
ある。27 <A≦28 であるので、C=8である。した
がって、この実施例では、メモリ回路2のブロックの数
nは、n=B−C+1=16−8+1=9となる。ま
た、各ブロックの記憶容量は2C =28 =256ワード
となる。
【0051】各ブロックの記憶容量がハフマン符号の総
数よりも大きいので、ハフマン符号の符号長がどのよう
に分布しても、すべてのハフマン符号に対応する復号デ
ータをメモリ回路2内の対応するブロックに記憶するこ
とができる。
【0052】また、各符号長のハフマン符号の数の最大
値は28 (=256)以下になるので、同一符号長を有
するハフマン符号の下位8ビットの値が同一になること
はない。したがって、圧縮データに含まれるハフマン符
号の符号長およびそのハフマン符号の下位8ビットの値
より、対応する復号データを特定することができる。
【0053】次に、図1のハフマン復号化回路の動作の
一例を説明する。ここでは、圧縮データが9ビット長の
ハフマン符号“111110110”を含むものとす
る。すなわち、圧縮データの第1ないし第9ビットは
“111110110”である。また、8ビット長のハ
フマン符号の最大符号値を“11111010”とし、
9ビット長のハフマン符号の最大符号値を“11111
1010”とする。また、10ビット長のハフマン符号
の最大符号値を“1111111010”とする。
【0054】この場合、圧縮データの第1ないし第8ビ
ットD0〜D7が8ビットのハフマン符号の最大符号値
M8よりも大きいので、8ビットの比較器11の出力信
号は“H”となる。一方、圧縮データ第8ないし第9ビ
ットD0〜D8の値は9ビットのハフマン符号の最大符
号値M9よりも小さくなる。したがって、9ビット比較
器12の出力信号は“L”となる。同様に、圧縮データ
第1ないし第10ビットD0〜D9の値は10ビットの
ハフマン符号の最大符号値M10よりも小さくなる。し
たがって、10ビットの比較器13の出力信号も“L”
となる。
【0055】その結果、圧縮データに含まれるハフマン
符号の符号長が9ビットであることが検出される。この
場合、プライオリティエンコーダ10は、ブロック選択
信号BSを“2”に設定する。
【0056】データセレクタ3は、そのブロック選択信
号BSに応答して、ブロックBL2の出力データを選択
する。ブロックBL2には、圧縮データの第2ないし第
9ビットD1〜D8、すなわち、9ビット長のハフマン
符号の下位8ビットがアドレス信号として与えられる。
それにより、ブロックBL2からは、9ビット長のハフ
マン符号“111110110”に対応する復号データ
が読み出され、データセレクタ3を介して出力される。
【0057】上記実施例のハフマン復号化回路では、メ
モリ回路2の記憶容量は2304ワードとなり、従来の
ハフマン復号化回路における64Kワードの約28分の
1となる。
【0058】図2は、第2の実施例によるハフマン復号
化回路の構成を示すブロック図である。
【0059】このハフマン復号化回路は、符号長検出回
路1、メモリ回路2、レジスタ4、セレクタ5およびデ
ータセレクタ6を含む。符号長検出回路1の構成および
動作は、図1に示される符号長検出回路1の構成および
動作と同様である。
【0060】レジスタ4は、プライオリティエンコーダ
10から発生されるブロック選択信号BSをアドレス信
号として受け、データ選択信号DSを出力する。データ
選択信号DSは、メモリ回路2の出力データのうちハフ
マン符号の符号長に対応するデータを選択するための信
号である。
【0061】セレクタ5は8個の入力端子S1〜S8を
有する。入力端子S1には圧縮データの第2ないし第9
ビットD1〜D8が与えられる。入力端子S2には圧縮
データの第3ないし第10ビットD2〜D9が与えられ
る。以下同様にして、入力端子S8には圧縮データの第
9ないし第16ビットD8〜D15(8ビットデータ)
が与えられる。
【0062】セレクタ5は、プライオリティエンコーダ
10により発生されるブロック選択信号BSに応答し
て、8個の入力端子S1〜S8に与えられるデータのい
ずれか1つを選択して出力する
【0063】ブロック選択信号BSが“1”のときに
は、セレクタ5はどのデータも出力しない。ブロック選
択信号BSが“2”のときには、セレクタ5は入力端子
S1のデータを選択して出力する。ブロック選択信号B
Sが“3”のときには、セレクタ5は入力端子S2のデ
ータを選択して出力する。以下同様にして、ブロック選
択信号BSが“9”のときには、セレクタ5は入力端子
S8のデータを選択して出力する。
【0064】メモリ回路2は9個のブロックBK1,B
K2,…,BK9を含む。ブロックBK1,BK2は2
56ワードのRAMからなる。ブロックBK3,BK4
は128ワードのRAMからなる。ブロックBK5,B
K6,BK7は64ワードのRAMからなる。ブロッB
K8,BK9は32ワードのRAMからなる。
【0065】ブロックBK1には1〜8ビットの符号長
が割り当てられる。9〜16ビットの符号長を有するハ
フマン符号は、同一符号長ごとに8個のグループに分類
される。ブロックBK2には、最も多くの数のハフマン
符号を含むグループの符号長が割り当てられる。ブロッ
クBK3には、2番目に多くの数のハフマン符号を含む
グループの符号長が割り当てられる。以下、ブロックB
K4〜BK9には、多くの数のハフマン符号を含む順
に、順次符号長が割り当てられる。
【0066】各ブロックには割り当てられた符号長のハ
フマン符号に対応する復号データが記憶される。各復号
データは、対応するハフマン符号により示されるアドレ
スに格納される。
【0067】ブロックBK1には、圧縮データの第1な
いし第8ビットD0〜D7がアドレス信号として与えら
れる。ブロックBK2〜BK9にはセレクタ5の出力デ
ータ(8ビットデータ)のうち最下位ビットから該当す
るブロックのアドレスのビット数分のデータがアドレス
信号として与えられる。
【0068】データセレクタ6は、レジスタ4から出力
されるデータ選択信号DSに応答して、ブロックBK1
〜BK9から読み出された復号データの1つを選択して
出力する。
【0069】ここで、JPEGの拡張方式を考えると、
ACハフマン符号の総数Aは226であり、ハフマン符
号の最大符号長Bは16である。27 <A≦28 である
ので、C=8である。したがって、この実施例では、メ
モリ回路2のブロックの数nは、n=B−C+1=16
−8+1=9となる。また、ブロックBK1の記憶容量
は2C =28 =256ワードとなる。
【0070】ブロックBK2については、27 <A≦2
8 であるので、記憶容量は28 =256ワードとなる。
ブロックBK3については、26 <A/2≦27 である
ので、記憶容量は27 =128ワードとなる。ブロック
BK4については、26 <A/3≦27 であるので、記
憶容量は27 =128ワードとなる。ブロックBK5に
ついては、25 <A/4≦26 であるので、記憶容量は
6 =64ワードとなる。
【0071】ブロックBK6については、25 <A/5
≦26 であるので、記憶容量は26=64ワードとな
る。ブロックBK7については、25 <A/6≦26
あるので、記憶容量は26 =64ワードとなる。ブロッ
クBK8については、24 <A/7≦25 であるので、
記憶容量は25 =32ワードとなる。ブロックBK9に
ついては、24 <A/8≦25 であるので、記憶容量は
5 =32ワードとなる。
【0072】この実施例においても、ハフマン符号の符
号長がどのように分布しても、すべてのハフマン符号に
対応する復号データをメモリ回路2内の対応するブロッ
クに記憶することができる。
【0073】また、圧縮データに含まれるハフマン符号
の符号長およびそのハフマン符号の下位8ビットの値よ
り、対応する復号データを特定することができる。
【0074】次に、図2のハフマン復号化回路の動作の
一例を説明する。例えば、16ビットの符号長を有する
ハフマン符号の数が最も多く、9ビットの符号長を有す
るハフマン符号の数が2番目に多く、10ビットの符号
長を有するハフマン符号の数が3番目に多いものとす
る。
【0075】この場合、ブロックBK2には16ビット
の符号長が割り当てられ、ブロックBK3には9ビット
の符号長が割り当てられ、ブロックBK4には10ビッ
トの符号長が割り当てられる。
【0076】与えられた圧縮データが8ビット長以下の
ハフマン符号を含むときには、ブロック選択信号BSは
“1”を示す。この場合、セレクタ5は出力データを供
給しない。また、データセレクタ6は、ブロックBK1
から読み出された復号データを選択して出力する。
【0077】与えられた圧縮データが9ビット長のハフ
マン符号を含む場合には、ブロック選択信号BSは
“2”を示す。それにより、セレクタ5は、入力端子S
1に与えられるデータを選択して出力する。このとき、
データセレクタ6は、ブロックBK3から読み出された
復号データを選択してして出力する。
【0078】与えられた圧縮データが16ビット長のハ
フマン符号を含む場合には、ブロック選択信号BSは
“9”を示す。それにより、セレクタ5は、入力端子S
8に与えられるデータを選択して出力する。このとき、
データセレクタ6は、ブロックBK2から読み出された
復号データを選択してして出力する。
【0079】上記実施例のハフマン復号化回路では、メ
モリ回路2の記憶容量は1024ワードとなり、従来の
ハフマン復号化回路における64Kビットの64分の1
となる。
【0080】第1の実施例と第2の実施例とを比較する
と、メモリ回路2の記憶容量については第2の実施例の
方が小さく、処理速度については第1の実施例の方が速
い。
【0081】
【発明の効果】以上のように、この発明によれば、記憶
手段の各ブロックにはハフマン符号の符号長のいずれか
が割り当てられ、割り当てられた符号長のハフマン符号
に対応する復号データのみが記憶されるので、記憶手段
の記憶容量および回路規模が小さくなる。したがって、
回路規模が小さいハフマン復号化回路が得られる。
【図面の簡単な説明】
【図1】この発明の第1の実施例のハフマン復号化回路
の構成を示すブロック図である。
【図2】この発明の第2の実施例のハフマン復号化回路
の構成を示すブロック図である。
【図3】DCT方式の画像データ圧縮システムの基本構
成を示すブロック図である。
【図4】圧縮データの構成を示す図である。
【図5】従来のハフマン復号化回路の主要部の構成を示
すブロック図である。
【符号の説明】
1 符号長検出回路 2 メモリ回路 3,6 データセレクタ 4 レジスタ 5 セレクタ 10 プライオリティエンコーダ 11〜19 比較器 BL1〜BL9,BK1〜BK9 ブロック なお、各図中同一符号は同一または相当部分を示す。

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 任意の符号長を有する複数のハフマン符
    号を復号するためのハフマン復号化回路であって、 復号されるべきハフマン符号を含む符号データを受け、
    前記復号されるべきハフマン符号の符号長を検出する符
    号長検出手段と、 前記複数のハフマン符号の符号長のいずれかがそれぞれ
    割り当てられた複数のブロックを含む記憶手段とを備
    え、 前記複数のブロックの各々は、割り当てられた符号長の
    ハフマン符号に対応する復号データを記憶し、かつ前記
    符号データの所定のビットをアドレス信号として受け、 前記符号長検出手段により検出された符号長に基づい
    て、前記複数のブロックのいずれかを選択し、選択され
    たブロックから読み出された復号データを出力する選択
    手段をさらに備えた、ハフマン復号化回路。
  2. 【請求項2】 前記記憶手段は第1ないし第nのブロッ
    クを含み、前記複数のブロックの各々は2C ワードの記
    憶容量を有し、前記Cは、 2C-1 <A≦2C の関係を満足する整数を表し、前記Aは前記複数のハフ
    マン符号の総数を表し、前記nは、 n=B−C+1 の関係を満足し、前記Bは前記複数のハフマン符号の最
    大符号長を表し、 第1のブロックにはCビット以下の符号長が割り当てら
    れ、第iのブロックには(C+i−1)ビットの符号長
    が割り当てられ、前記iは2からnまでの整数を表し、 前記第1のブロックは前記符号データの第1ビットから
    第Cビットをアドレス信号として受け、前記第iのブロ
    ックは前記符号データの第iのビットから第(C+i−
    1)ビットをアドレス信号として受ける、請求項1に記
    載のハフマン復号化回路。
  3. 【請求項3】 前記複数のブロックは第1ないし第nの
    ブロックを含み、前記第1のブロックは2C ワードの記
    憶容量を有し、前記Cは、 2C-1 <A≦2C の関係を満足する整数を表し、前記Aは前記複数のハフ
    マン符号の総数を表し、前記nは、 n=B−C+1 の関係を満足し、前記Bは前記複数のハフマン符号の最
    大符号長を表し、第iのブロックは2K ワードの記憶容
    量を有し、前記iは2からnまでの整数を表し、前記K
    は、 2K-1 <A/(i−1)≦2K の関係を満足する整数を表し、A/(i−1)は小数点
    以下を切捨てた整数を表し、 第1のブロックにはCビット以下の符号長が割り当てら
    れ、前記第2ないし第nのブロックには同一の符号長を
    有するハフマン符号の数に基づいてハフマン符号の符号
    長がそれぞれ割り当てられ、 前記第1のブロックは前記符号データの第1ビットから
    第Cビットをアドレス信号として受け、 前記符号長検出手段により検出された符号長に基づいて
    前記符号データのK個のビットを選択して前第2ないし
    第nのブロックにアドレス信号として与えるビット選択
    手段をさらに含む、請求項1に記載のハフマン復号化回
    路。
JP5088160A 1993-03-22 1993-03-22 ハフマン復号化回路 Expired - Fee Related JP3005385B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5088160A JP3005385B2 (ja) 1993-03-22 1993-03-22 ハフマン復号化回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5088160A JP3005385B2 (ja) 1993-03-22 1993-03-22 ハフマン復号化回路

Publications (2)

Publication Number Publication Date
JPH06276394A true JPH06276394A (ja) 1994-09-30
JP3005385B2 JP3005385B2 (ja) 2000-01-31

Family

ID=13935178

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5088160A Expired - Fee Related JP3005385B2 (ja) 1993-03-22 1993-03-22 ハフマン復号化回路

Country Status (1)

Country Link
JP (1) JP3005385B2 (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6331827B1 (en) 1999-06-29 2001-12-18 Nec Corporation Huffman decoder using two priority encoder to reduce circuit scale
JP2002261623A (ja) * 2001-02-28 2002-09-13 Canon Inc 復号装置、復号方法、記憶媒体及びプログラムソフトウェア
JP2009118464A (ja) * 2007-09-17 2009-05-28 Nvidia Corp Jpegアプリケーションにおける可変長符号の復号
US8339406B2 (en) 2004-01-30 2012-12-25 Nvidia Corporation Variable-length coding data transfer interface
US8477852B2 (en) 2007-06-20 2013-07-02 Nvidia Corporation Uniform video decoding and display
US8502709B2 (en) 2007-09-17 2013-08-06 Nvidia Corporation Decoding variable length codes in media applications
US8934539B2 (en) 2007-12-03 2015-01-13 Nvidia Corporation Vector processor acceleration for media quantization
US9307267B2 (en) 2008-12-11 2016-04-05 Nvidia Corporation Techniques for scalable dynamic data encoding and decoding

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03274920A (ja) * 1990-03-26 1991-12-05 Graphics Commun Technol:Kk 信号符号化装置および信号復号化装置、並びに信号符号化復号化装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03274920A (ja) * 1990-03-26 1991-12-05 Graphics Commun Technol:Kk 信号符号化装置および信号復号化装置、並びに信号符号化復号化装置

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6331827B1 (en) 1999-06-29 2001-12-18 Nec Corporation Huffman decoder using two priority encoder to reduce circuit scale
JP2002261623A (ja) * 2001-02-28 2002-09-13 Canon Inc 復号装置、復号方法、記憶媒体及びプログラムソフトウェア
US8339406B2 (en) 2004-01-30 2012-12-25 Nvidia Corporation Variable-length coding data transfer interface
US8427494B2 (en) 2004-01-30 2013-04-23 Nvidia Corporation Variable-length coding data transfer interface
US8477852B2 (en) 2007-06-20 2013-07-02 Nvidia Corporation Uniform video decoding and display
JP2009118464A (ja) * 2007-09-17 2009-05-28 Nvidia Corp Jpegアプリケーションにおける可変長符号の復号
JP4693072B2 (ja) * 2007-09-17 2011-06-01 エヌヴィディア コーポレイション Jpegアプリケーションにおける可変長符号の復号
US8502709B2 (en) 2007-09-17 2013-08-06 Nvidia Corporation Decoding variable length codes in media applications
US8849051B2 (en) 2007-09-17 2014-09-30 Nvidia Corporation Decoding variable length codes in JPEG applications
US8934539B2 (en) 2007-12-03 2015-01-13 Nvidia Corporation Vector processor acceleration for media quantization
US9307267B2 (en) 2008-12-11 2016-04-05 Nvidia Corporation Techniques for scalable dynamic data encoding and decoding

Also Published As

Publication number Publication date
JP3005385B2 (ja) 2000-01-31

Similar Documents

Publication Publication Date Title
KR100241792B1 (ko) 이미지데이터를 부호화하고 해독하는 방법 및 장치
JP3410629B2 (ja) 可変長符号化回路及び可変長符号化方法
JP3005385B2 (ja) ハフマン復号化回路
JPH10271016A (ja) 符号/復号化器
US6026191A (en) Digital coding apparatus
JP3168183B2 (ja) データ処理装置
JP3009993B2 (ja) ハフマン復号化装置
CN114842108A (zh) 一种概率栅格地图的处理方法、装置及存储设备
JP3222633B2 (ja) 情報処理装置
JP3015001B2 (ja) ハフマン復号化装置
JP3005384B2 (ja) ハフマン復号化回路
JP2812064B2 (ja) 画像処理装置
US6331827B1 (en) Huffman decoder using two priority encoder to reduce circuit scale
JP3260925B2 (ja) 画像処理装置
JP3202403B2 (ja) 画像処理装置及びその方法
JP2917732B2 (ja) 圧縮画像メモリ制御装置
JP3253423B2 (ja) ブロック符号化および復号化装置
JP3368001B2 (ja) 画像符号化装置及び方法
JP3270665B2 (ja) 符号化/復号化装置及び方法
JP3090640B2 (ja) ハフマン符号化装置およびハフマン復号化装置
JPH06225156A (ja) 符号データ書込方法
JPH04220082A (ja) 画像データ復元方法及び装置
JPH08195887A (ja) 静止画像の符号化装置
JPH04186984A (ja) 画像符号化装置
JPS63102557A (ja) 多値画像符号化装置

Legal Events

Date Code Title Description
S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20081119

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20081119

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20091119

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees