JPH06125277A - ハフマン復号回路 - Google Patents

ハフマン復号回路

Info

Publication number
JPH06125277A
JPH06125277A JP4273925A JP27392592A JPH06125277A JP H06125277 A JPH06125277 A JP H06125277A JP 4273925 A JP4273925 A JP 4273925A JP 27392592 A JP27392592 A JP 27392592A JP H06125277 A JPH06125277 A JP H06125277A
Authority
JP
Japan
Prior art keywords
bits
memory
output
internal memory
bit
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
JP4273925A
Other languages
English (en)
Other versions
JP2842094B2 (ja
Inventor
Akinori Kiuchi
成則 木内
Akira Sawada
明 澤田
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.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority to JP4273925A priority Critical patent/JP2842094B2/ja
Application filed by NEC Corp filed Critical NEC Corp
Priority to EP98120330A priority patent/EP0920136B1/en
Priority to US08/135,448 priority patent/US5467088A/en
Priority to EP93116585A priority patent/EP0593046B1/en
Priority to KR1019930021495A priority patent/KR0138971B1/ko
Priority to DE69329092T priority patent/DE69329092T2/de
Priority to DE69332253T priority patent/DE69332253T2/de
Publication of JPH06125277A publication Critical patent/JPH06125277A/ja
Application granted granted Critical
Publication of JP2842094B2 publication Critical patent/JP2842094B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

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

Abstract

(57)【要約】 (修正有) 【目的】処理スピードをあげ、必要メモリ3の容量を少
なくして集積化を容易にする。 【構成】リセット機能付ラッチ1と、ハフマン符号デー
タの一部およびラッチ1の出力の一部を選択するとセレ
クタ2と、メモリ3とを有する。まず、ラッチ回路1が
リセットされ、8ビット全てQが出力される。このう
ち、上位5ビットがメモリ3のAHHに送出され、また
下位3ビットはセレクタ2のAQに送られる。次に、ハ
フマン符号データ列dの先頭1ビットはメモリ3の最下
位アドレスALに送られ、それ以下の3ビットはセレク
タ2のA1に入力される。ここで、4ビット単位で復号
される時はA1を、また1ビット単位で復号される時は
AQのデータをセレクタ2はセレクト信号eにより選択
し、その出力3ビットをメモリ3のアドレスAHLに送
る。メモリ3から復号語a、符号長bまたはポインタと
フラグcが出力される。ポインタの場合は再度上記の動
作を繰り返す。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、ハフマン符号を復号処
理するハフマン復号回路に関し、特にハフマン復号処理
スピード等を改善するとともに、集積化に適したハフマ
ン復号回路に関する。
【0002】
【従来の技術】従来のハフマン復号回路は、ハフマン符
号に対応する復号語を見つけるために、最大符号語長分
のアドレスを持ったメモリを使用したり、1ビット毎に
復号ツリーを追跡する回路あるいはメモリを分割した復
号回路を用いている。
【0003】図6は従来の一例を示すハフマン復号回路
のブロック図である。図6に示すように、このハフマン
復号回路は最大符号長分のアドレスを持つメモリ9を設
けて構成されるが、このメモリ9は64KW×13ビッ
ト構成である。すなわち、メモリ9のアドレス入力にハ
フマン符号データ列hを与え、そのメモリ9の出力とし
て復号語jおよび符号長kからなる復号結果を得るよう
になっている。今、ハフマン符号データhの最大符号語
長を16ビット、復号語を8ビットとすれば、メモリ9
に復号語8ビットと符号長5ビットを設定する。例え
ば、復号語Aに対するハフマン符号が‘0101’であ
れば、アドレス‘01010…0’から‘01011…
1’の全てに復号語Aと符号長4を設定する。同様に、
各復号語に対するハフマン符号についてのアドレスを設
定する。
【0004】このハフマン復号回路においては、まずハ
フマン符号データ列hの先頭から16ビットをメモリ9
のアドレスに入力する。仮に、‘0101…’が送られ
てきたとすると、メモリ9のアドレス上位4ビットに
‘0101’が入力され、下位12ビットには次のハフ
マン符号が入力される。このように、メモリ9のアドレ
ス‘01010…0’から‘01011…1’には全て
復号語A,符号長4を設定してあるので、メモリ9から
復号語A,符号長4が出力される。この符号長4はハフ
マン符号データ列へ送られ、次のハフマン符号データ列
の先頭が決り、先頭から16ビットをメモリ9のアドレ
スへ入力する。以下同様に、この動作を繰り返すことに
よって復号される。
【0005】図7は従来の他の例を示すハフマン復号回
路のブロック図である。図7に示すように、この復号回
路は1ビット毎に復号ツリーを追跡するものである。こ
の復号回路はラッチ10と内部メモリ11とを有する。
内部メモリ11は512W×9ビット構成であり、ハフ
マン符号データ列hの先頭から1ビットを最下位のアド
レス入力とし且つラッチ回路10の出力8ビットを上位
8ビットのアドレス入力とする。また、ラッチ回路10
は内部メモリ11からポインタが出力された場合にラッ
チする。この内部メモリ11の出力9ビットの内8ビッ
トで復号語mもしくはポインタを表わし、他の1ビット
は復号語の出力であれば1、ポインタの出力であれば0
であればフラグnを表わすこの復号回路の動作は、まず
最初にハフマン符号データ列hから入力した1ビットに
よりメモリアドレスを決定し、内部メモリ11の出力を
得る。その出力結果がポインタであれば、そのポインタ
と次のハフマン符号データ列の1ビットで再び内部メモ
リ11をアクセスする。一方、出力が復号語であれば、
1回の復号動作を終了する。以下具体的な1例をとりあ
げて動作を説明する。
【0006】図8は図7に示す内部メモリをあらかじめ
設定した状態を表わす図である。図8に示すように、こ
こではハフマン符号が‘0101’の復号語Aを例にし
たが、同様にして各復号語に対するハフマン符号につい
てのアドレスも設定する。
【0007】再び、図7に戻ると、ハフマン符号データ
列の先頭から1ビットとラッチ回路10からの8ビット
の計9ビットのアドレスが内部メモリ11へ送られる。
ハフマン符号データ列hの先頭の1ビットは内部メモリ
11のアドレス最下位ビットに入力される。例えば、復
号語Aに対するハフマン符号‘0101’が送られてき
たとすると、ラッチ回路10はリセットされ、8ビット
全てに‘0’が出力され、ハフマン符号の4ビット目の
‘0’と共に内部メモリ11に送られる。ここで、ハフ
マン符号の‘0’は最下位アドレスに入力される。内部
メモリ11はポインタ‘00000001’とポイント
の出力を表わすフラグ=0が出力される。ポインタ,フ
ラグ=0がラッチ回路10に送られると、ラッチ回路1
0は‘00000001’を出力し、ハフマン符号の3
ビット目の‘1’と共に内部メモリ11に送出する。従
って、内部メモリ11からポインタ‘0000001
0’とポイントの出力を表わすフラグ=0が出力され
る。ポインタ,フラグ=0がラッチ回路10に送られる
ので、ラッチ回路10は‘00000010’を出力
し、ハフマン符号の2ビット目の‘0’と共に内部メモ
リ11に送出する。再び、内部メモリ11はポインタ
‘00000011’とポイントの出力を表わすフラグ
=0を出力し、ポインタ,フラグ=0はラッチ回路10
に転送される。ラッチ回路10は‘00000011’
を出力し、ハフマン符号の1ビット目の‘1’と共に内
部メモリ11に送られる。内部メモリ11で復号語Aと
復号語の出力を表わすフラグ=1を出力する。このフラ
グ=1により、ラッチ回路10はリセットされ、そして
次のハフマン符号データ列の先頭が送られてくる。以下
同様に、この動作を繰り返すことにより復号される。
【0008】図9は従来のまた別の例を示すハフマン復
号回路のブロック図である。図9に示すように、ここで
はメモリを分割し、ハフマン符号データrの最大符号語
長を16ビットとするとともに、符号長の小さい順に符
号を割り付け直したものとする。この復号回路はハフマ
ン符号データ列rの先頭から10ビットをアドレス入力
とする半導体集積回路内の内部メモリ12と、データ列
rの13ビット目から1ビット目までをアドレス入力と
する半導体集積回路外の外部メモリ13と、これら内部
メモリ12,外部メモリ13の出力を選択する復号語の
セレクタ14および符号長のセレクタ15と、内部メモ
リ12の出力が有効であれば内部メモリ12の出力を選
択するセレクト信号をセレクタ14に送るセレクト信号
生成部16とを有する。内部メモリ12は1KW×13
ビット、外部メモリ13は8KW×13ビット構成であ
る。
【0009】まず、内部メモリ12,外部メモリ13に
復号語8ビットと符号長5ビットを設定する。内部メモ
リ12には、ハフマン符号データ列rの16ビットのう
ち上位10ビット以下で復号語を表わすものについて復
号語と符号長を設定し、その内部メモリ12の出力が有
効な場合は1、無効な場合は0であるフラグを符号長5
ビット目に設定する。一方、外部メモリ13には11ビ
ット以上16ビットまでのハフマン符号に対する復号語
および符号長を設定する。但し、符号長の順にハフマン
コードが割り当ててあれば、11ビット以上のハフマン
符号の先頭3ビットは必ず‘111’になるので、外部
メモリ13のアドレス入力には先頭3ビットを除いて入
力している。
【0010】更に、内部メモリ12には、例えば復号語
Aに対するハフマン符号が‘0101’であれば、アド
レス‘01010…0’から‘01011…1’の全て
に復号語A,符号長4を設定する。外部メモリ13に
は、例えば復号語Bに対するハフマン符号が‘1111
1010001’であれば、アドレス‘1101000
10…0’から‘110100011…1’の全てに復
号語B,符号長11を設定する。同様に、各復号語に対
するハフマン符号についてのアドレスを設定する。
【0011】次に、かかる復号回路の動作は、ハフマン
符号データ列rの先頭から上位10ビット(15:6)
を内部メモリ12のアドレスに、下位13ビット(1
2:0)を外部メモリ13のアドレスに与える。仮に、
ハフマン符号‘0101…’が送られてきたとすると、
内部メモリ12のアドレス上位4ビットに‘0101’
が入力され、復号語A,符号長4を出力する。このと
き、フラグ=1も出力し、内部メモリ12からの出力が
有効であることをセレクト信号生成部16に送る。ま
た、外部メモリ13はアドレス入力された13ビットで
得られた復号語と符号長を出力する。これらメモリ1
2,13から得られた復号語と符号長はそれぞれセレク
タ14,15に送られる。一方、セレクト信号生成部1
6はフラグ=1より内部メモリ12の出力を選択するよ
うにセレクタ14,15にセレクト信号を送る。これに
より、各セレクタ14,15は内部メモリ12からの復
号語A,符号長4を出力する。この符号長4はハフマン
符号データ列に送られ、次のハフマン符号データ列の先
頭が決る。以下同様に、この動作を繰り返すことによっ
て符号データが復号される。
【0012】
【発明が解決しようとする課題】上述した従来のハフマ
ン復号回路は、1ビット毎にコード・ツリーを追跡した
場合、符号ビット数回のメモリ・アクセスを必要とする
ので、処理スピードの時間かかるという欠点がある。
【0013】また、これを避ける回路として、最大符号
語長分のビット・アドレスを持つメモリを使用する回路
を用いることがある。しかしながら、この復号回路は、
例えば16ビットで65536ワードの大きなメモリを
必要とし、このように大きなメモリをチップにのせる
と、面積が大きくなり、価格が高くなるという欠点があ
る。
【0014】更に、これらを避ける回路として、メモリ
を分割するものがある。この回路は、前述した復号回路
と比べると、1024ワードの内部メモリですむが、外
部メモリも必要とするため、システム全体では価格が高
くなるという欠点がある。
【0015】本発明の目的は、復号処理スピードを速く
し、必要とするメモリ容量も少なくするとともに、集積
化の容易なハフマン復号回路を提供することにある。
【0016】
【課題を解決するための手段】本発明のハフマン復号回
路は、復号語を保持しフラグによりリセットされるラッ
チ手段と、前記ラッチ手段の出力の一部およびハフマン
符号データの一部を選択する選択手段と、前記ハフマン
符号の先頭の1ビットを含む残りのデータと前記ラッチ
手段の出力の残りのデータと前記選択手段の出力データ
により前記復号語および符号長と前記フラグを出力する
メモリ手段とを有して構成される。
【0017】
【実施例】次に、本発明の実施例について図面を参照し
て説明する。図1は本発明の第1の実施例を示すハフマ
ン復号回路のブロック図である。図1に示すように、本
実施例は4ビットのハフマン符号データ列dの先頭1ビ
ットを最下位のアドレス入力とする512W×9ビット
構成のメモリ3と、このメモリ3からのQFの出力すな
わちフラグcが0である場合にデータQ7−Q0の8ビ
ットをラッチするリセット付ラッチ回路1と、ハフマン
復号を1ビット単位に行う場合はラッチ回路1からの3
ビットを選択し、4ビット単位で行う場合にはハフマン
符号データdの3ビットを選択するセレクタ2とから構
成される。特に、メモリ3は最下位アドレスALのほか
にセレクタ2の出力3ビットをアドレス2ビット目から
4ビット目とし且つラッチ回路1から出力8ビットの内
5ビットを上位5ビットのアドレス入力とし、QDから
復号語aと符号長bを出力し、QFからフラグcを出力
する。このメモリ3のQFの出力は、QDの出力が復号
語であれば1、ポインタであれば0を表わすフラグであ
る。
【0018】図2(a),(b)はそれぞれ図1に示す
メモリの2つの設定例を説明するための図である。図2
(a),(b)に示すように、メモリ3にはあらかじめ
復号語AおよびCのデータが設定されているとする。以
下、ハフマン符号dが‘0101’の復号語Aと、‘1
101000101’の復号語Cとを4ビット単位で復
号した場合について説明する。
【0019】まず、図2(a)に示すように、復号語A
に対するハフマン符号‘0101’が送られてくると、
ラッチ回路1はリセットされ、8ビット全て‘0’を出
力する。この8ビットの内上位5ビットはメモリ3のア
ドレス上位5ビットに入力される。また、下位3ビット
はセレクタ2のA0端子に入力されるが、4ビット単位
の時のセレクタ2は外部からのセレクト信号eによりA
1端子側を選択するので、この下位3ビットデータは無
視される。次に、ハフマン符号データdの4ビット目の
‘0’はメモリ3の最下位アドレスに入力される。3ビ
ット目から1ビット目の‘101’はセレクタ2のA1
端子を経由してメモリ3のアドレスAHLに送られる。
結局、メモリ3にはアドレス‘000001010’が
送られるので、メモリ3は復号語A,符号長4と復号語
の出力を表わすフラグ=1を出力する。このフラグ=1
により、ラッチ回路1はリセットされる。そして、次の
ハフマン符号データ列dの先頭が送られてくる。
【0020】次に、図2(b)に示すように、復号語C
に対するハフマン符号‘1101000101’が送ら
れてきたとする。このときのラッチ回路1はリセットさ
れ、8ビット全て‘0’が出力される。従って、メモリ
アドレスAHHには‘00000’が入力され、一方ハ
フマン符号データdの10ビット目の‘1’はセレクタ
2のA1を経由してメモリアドレスAHLに入力され
る。結局、メモリ3にはアドレス‘00000101
1’が入力され、メモリ3からポインタ‘000010
00’とフラグ=0が出力される。このメモリ3の出力
がポインタであるので、このポインタとハフマン符号デ
ータ列dの次の4ビットに基づいて再度追跡を行う。
【0021】次に、ラッチ回路1はポインタをラッチす
るので、‘00001000’を出力する。この出力の
うち、上位5ビット‘00001’はメモリアドレスA
HHに入力される。また、ハフマン符号データdの6ビ
ット目の‘0’はメモリ3の最下位アドレスALに入力
される。更に、5ビット目から3ビット目の‘001’
はセレクタ2のA1を経由してメモリアドレスAHLに
入力される。結局、メモリ3にはアドレス‘00001
1000’が入力され、メモリ3からはポインタ‘00
010000’とフラグ=0が出力される。この出力が
またもポインタであるので、再度追跡を行う。
【0022】これにより、ラッチ回路1はポインタをラ
ッチするので、‘00010000’を出力する。この
うち、上位5ビット‘00010’はメモリアドレスA
HHに入力され、ハフマン符号データdの2ビット目の
‘0’はメモリ3の最下位アドレスALに入力される。
更に、1ビット目の‘1’と次のハフマン符号データ列
dの先頭2ビット‘××’はセレクタ2のA1端子を経
由し、メモリアドレスAHLに入力される。従って、メ
モリ3にはアドレス‘00010××10’が入力さ
れ、メモリ3からは復号語C,符号長10と復号語の出
力をあらわすフラグ=1が出力される。このフラグによ
ってラッチ回路1はリセットされる。
【0023】以上のように、4ビット単位でハフマン復
号を行うのであるが、復号テーブルの大きさは最悪の場
合1ビット単位に比べ16倍の容量が必要になる。この
ような場合は、1ビット単位の復号ツリーをメモリ3に
設定し、セレクタ2をA0端子側にして1ビット単位で
復号ツリーを追跡する。
【0024】図3は本発明の第2の実施例を示すハフマ
ン復号回路のブロック図である。図3に示すように、本
実施例はラッチ1およびセレクタ2と、16ビットのハ
フマン符号データ列hの先頭から2ビットをメモリアド
レス下位2ビットに入力し且つセレクタ2の出力8ビッ
トをアドレス3ビット目から10ビット目のアドレス入
力とする内部メモリ4と、ハフマン符号データ列hの下
位13ビットをアドレス入力とする外部メモリ5と、内
部メモリ4の出力が有効であれば内部メモリ4の出力を
選択するセレクト信号をセレクタ6,7に送るセレクト
信号生成部8とを有する。このうち、ラッチ回路1は内
部メモリ4からのフラグの出力が0である場合にデータ
(Q7−Q0)をラッチする。セレクタ2は2ビット毎
の追跡を行う場合にラッチ回路1からの8ビットを選択
し、それ以外の場合にハフマン符号データ8ビット(1
3−6)を選択する。更に、内部メモリ4は1KW×1
3ビット、外部メモリ5は8KW×13ビットで構成さ
れる。
【0025】まず、内部メモリ4および外部メモリ5に
それぞれ復号語8ビットと符号長5ビット以下で復号語
をあらわすものについて復号語および符号長を設定す
る。また、内部メモリ4の出力が有効な場合は1、無効
な場合は0であるフラグを符号長5ビット目に設定す
る。一方、外部メモリ5には、11ビット以上16ビッ
トまでのハフマン符号に対する復号語および符号長を設
定する。
【0026】次に、かかるハフマン復号回路において、
ハフマン符号長が10ビット以内であれば内部メモリ4
だけで高速に復号出来る。復号処理スピードが遅くても
良い場合は、1ビット毎の復号ツリーを追跡して復号す
る。逆に、価格が高くても処理スピードを速くする必要
がある場合は、内部メモリ4と外部メモリ5を用いて復
号する。以下、内部メモリ4の具体的設定例をとり上げ
て説明する。
【0027】図4は図3に示す内部メモリの一設定例を
表わす図である。図4に示すように、まずハフマン符号
データhが10ビット以内であり、内部メモリだけで十
分な場合について説明する。この内部メモリ4には、復
号語Dと符号長6が設定されているとし、今ハフマン符
号データ列hに‘010101…’が送られてきたとす
る。このとき、ラッチ回路1はリセットされ、8ビット
全て‘0’が出力される。この8ビットはセレクタ2の
A0端子に入力されるが、この場合はセレクタ2が外部
セレクト信号eによりA1端子を選択するので、8ビッ
トは無視される。次に、ハフマン符号データ列hの先頭
2ビット‘01’は内部メモリ4に送られ、3ビット目
から8ビットはセレクタ2のA1端子を経て内部メモリ
4に送られる。この内部メモリ4はアドレス‘××××
101010’が入力されるので、復号語Dと符号長6
およびフラグ=1を出力する。これらのデータは各セレ
クタ6,7に送出される。しかるに、フラグ=1により
内部メモリ4からの出力が有効であることをセレクト信
号生成部8に送出するので、セレクト信号生成部8は内
部メモリ4の出力を選択するように各セレクタ6,7に
セレクト信号を送る。従って、各セレクタ6,7は内部
メモリ4からの復号語Dおよび符号長6を出力する。こ
のうち、符号長6はハフマン符号データ列hに送られ、
次のハフマン符号データ列hの先頭が決まる。
【0028】図5は図3に示す内部メモリの他の設定例
を表わす図である。図5に示すように、この内部メモリ
4は2ビット単位でハフマン復号が行われる場合であ
り、復号語Bと符号長11が設定されているとする。
今、ハフマン符号データ列‘11111010001
…’が送られてきたとすると、ラッチ回路1はリセット
され、出力8ビットは全て‘0’が出力される。この8
ビットはセレクタ2のA0端子を経て内部メモリ4に入
力される。一方、セレクタ2のA1にはハフマン符号8
ビットが入力されるが、2ビット毎の追跡の場合はセレ
クタ2がA0側を選択するので、無視される。このハフ
マン符号データhの先頭2ビット‘11’は内部メモリ
4のアドレスの下位2ビットに送られる。従って、内部
メモリ4はアドレス‘0000000011’が入力さ
れ、ポインタ‘00000001’とフラグ=0を出力
する。このポインタ8ビットはラッチ回路1でラッチさ
れ、その出力8ビットに‘00000001’を出力す
る。このラッチ1の出力8ビット‘00000001’
はセレクタ2のA0端子を経て内部メモリ4に入力され
る。
【0029】次に、ハフマン符号データ列hの次の2ビ
ットの‘11’は内部メモリ4のアドレスの下位2ビッ
トに送られる。すなわち、内部メモリ4には、アドレス
‘0000000111’が入力され、その出力側には
ポインタ‘00000010’を出力する。この8ビッ
ト‘00000010’はセレクタ2のA0端子を経て
内部メモリ4に入力される。また、ハフマン符号データ
列hの次の2ビットの‘10’は内部メモリ4のアドレ
スの下位2ビットに送られるので、内部メモリ4にはア
ドレス‘0000001001’が入力され、ポインタ
‘00000011’とフラグ=0を出力する。このポ
インタはラッチ回路1でラッチし、8ビット‘0000
0011’をセレクタ2に出力する。この8ビット‘0
0000011’はセレクタ2のA0端子を経て内部メ
モリ4に入力される。
【0030】更に、ハフマン符号データ列hの次の2ビ
ットの‘10’は内部メモリ4のアドレスの下位2ビッ
トに送られる。すると、内部メモリ4にはアドレス‘0
000001101’が入力され、ポインタ‘0000
0100’とフラグ=0を出力する。このポインタはラ
ッチ回路1でラッチし、‘00000100’を出力す
る。この8ビット‘00000100’はセレクタ2の
A0端子を経て内部メモリ4に入力される。また、ハフ
マン符号データ列hの次の2ビットの‘00’は内部メ
モリ4のアドレスの下位2ビットに送られる。これによ
り、内部メモリ4には、アドレス‘000001000
0’が入力され、ポインタ‘00000101’とフラ
グ=0を出力する。同様に、ポインタはラッチ回路1で
ラッチされ、‘00000101’をセレクタ2に出力
する。この8ビット‘00000101’はセレクタ2
のA0端子を経て内部メモリ4に入力される。
【0031】次に、ハフマン符号データ列hの次の2ビ
ットの‘1×’が内部メモリ4のアドレスの下位2ビッ
トに送られると、内部メモリ4にはアドレス‘0000
0101×1’が入力されるので、復号語Bと符号長1
1およびフラグ=1を出力する。この内部メモリ4の出
力は各セレクタ6,7に送られるとともに、フラグ=1
により内部メモリ4からの出力が有効であることをセレ
クト信号生成部8に送出する。従って、セレクト信号生
成部8は内部メモリ4の出力を選択するように、各セレ
クタ6,7にセレクト信号を送出する。これを受けて各
セレクタ6,7は内部メモリ4からの復号語Bおよび符
号長11を出力する。この符号長11はハフマン符号デ
ータ列hに送られ、次のハフマン符号データ列hの先頭
が決まる。
【0032】次に、内部メモリ4と外部メモリ5の両者
を使用する場合についての回路動作を説明する。まず、
内部メモリ4にはハフマン符号データ列16ビットの上
位10ビット以下で復号語をあらわすものについて復号
語および符号長を設定する。また、内部メモリ4の出力
が有効な場合は1、無効な場合は0であるフラグを符号
長5ビット目に設定する。更に、外部メモリ5には、1
1ビット以上16ビットまでのハフマン符号に対する復
号語および符号長を設定する。但し、符号長の順にハフ
マンコードが割り当ててあれば、11ビット以上のハフ
マン符号の先頭3ビットは必ず‘111’になるので、
外部メモリ5のアドレス入力には先頭3ビットを除いて
入力している。しかも、内部メモリ4には、例えば復号
語Dに対するハフマン符号が‘010101’であれ
ば、アドレス‘××××010101’の全てに復号語
Dと符号長6を設定し、外部メモリ5には、例えば復号
語Bに対するハフマン符号が‘1111101000
1’であれば、アドレス‘110100010…0’か
ら‘110100011…1’の全てに復号語Bと符号
長11を設定する。
【0033】今、ハフマン符号データ列hに‘0101
01…’が送られてきたとする。このハフマン符号デー
タ列hの先頭4ビット‘0101’は内部メモリ4に送
られ、先頭から5ビット目と6ビット目の‘01’と次
のハフマン符号データhの先頭4ビットはセレクタ2の
A1端子を経て内部メモリ4に送られる。これら内部メ
モリ4と外部メモリ5の両方を用いるときは、セレクタ
2がA1端子を選択するからである。従って、内部メモ
リ4には、アドレス‘××××010101’が入力さ
れ、復号語Dと符号長6およびフラグ=1が出力され
る。このフラグ=1により、内部メモリ4からの出力が
有効であることをセレクト信号生成部8に送出する。一
方、外部メモリ5はアドレス入力された13ビットで得
られるた復号語Bと符号長11を出力する。これら各メ
モリ4,5から得られた復号語と符号長は各セレクタ
6,7に送られが、セレクト信号生成部8はフラグ=1
により内部メモリ4の出力を選択するように各セレクタ
6,7に選択信号を送る。従って、各セレクタ6,7は
内部メモリ4からの復号語Dと符号長6を出力する。こ
の符号長6はハフマン符号データ列hに送られ、次のハ
フマン符号データ列hの先頭が決まる。以下同様に、こ
の動作を繰り返すことによってハフマン符号が復号され
る。
【0034】
【発明の効果】以上説明したように、本発明のハフマン
復号回路は1ビット追跡に必要な容量のメモリしか持た
ないので、処理スピードが早く、4ビット復号でもコス
トが安くて済むという効果がある。例えば、メモリ容量
は4ビット追跡の場合の最悪のメモリ容量に比べ16分
の1で済む。また、本発明において外部メモリを設ける
場合、ユーザがコストとスピードにより各種方式を選択
できるという効果がある。尚、本発明はハフマン符号の
構成条件によっては1ビット単位の低速の復号ツリー追
跡しか出来なくなるが、静止画符号化等で常用されてい
る符号では4ビット追跡出来る範囲に収まっている。
【図面の簡単な説明】
【図1】本発明の第1の実施例を示すハフマン復号回路
のブロック図である。
【図2】図1に示すメモリの2つの設定例を説明するた
めの図である。
【図3】本発明の第2の実施例を示すハフマン復号回路
のブロック図である。
【図4】図3に示す内部メモリの一設定例を表わす図で
ある。
【図5】図3に示す内部メモリの他の設定例を表わす図
である。
【図6】従来の一例を示すハフマン復号回路のブロック
図である。
【図7】従来の他の例を示すハフマン復号回路のブロッ
ク図である。
【図8】図7に示す内部メモリの設定例を表わす図であ
る。
【図9】従来のまた別の例を示すハフマン復号回路のブ
ロック図である。
【符号の説明】
1 リセット付ラッチ回路 2,6,7 セレクタ 3,4 内部メモリ 5 外部メモリ 8 セレクト信号生成部 a,f 復号語 d,g 符号長 c フラグ d,h ハフマン符号データ e 外部セレクト信号

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 復号語を保持しフラグによりリセットさ
    れるラッチ手段と、前記ラッチ手段の出力の一部および
    ハフマン符号データの一部を選択する選択手段と、前記
    ハフマン符号の先頭の1ビットを含む残りのデータと前
    記ラッチ手段の出力の残りのデータと前記選択手段の出
    力データにより前記復号語および符号長と前記フラグを
    出力するメモリ手段とを有することを特徴とするハフマ
    ン復号回路。
  2. 【請求項2】 前記選択手段は、セレクタを用いた請求
    項1記載のハフマン復号回路。
  3. 【請求項3】 内部メモリおよび外部メモリに対応した
    各セレクタと、前記内部メモリのフラグ出力により前記
    各セレクタを制御するセレクト信号を作成するセレクト
    信号生成部とを設けた請求項1記載のハフマン復号回
    路。
JP4273925A 1992-10-13 1992-10-13 ハフマン復号回路 Expired - Fee Related JP2842094B2 (ja)

Priority Applications (7)

Application Number Priority Date Filing Date Title
JP4273925A JP2842094B2 (ja) 1992-10-13 1992-10-13 ハフマン復号回路
US08/135,448 US5467088A (en) 1992-10-13 1993-10-13 Huffman code decoding circuit
EP93116585A EP0593046B1 (en) 1992-10-13 1993-10-13 Huffman code decoding circuit
KR1019930021495A KR0138971B1 (ko) 1992-10-13 1993-10-13 허프만 부호 복호회로
EP98120330A EP0920136B1 (en) 1992-10-13 1993-10-13 Huffman code decoding circuit
DE69329092T DE69329092T2 (de) 1992-10-13 1993-10-13 Huffman-Kode-Decodierungsschaltung
DE69332253T DE69332253T2 (de) 1992-10-13 1993-10-13 Dekodierschaltung für Huffman-Codes

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4273925A JP2842094B2 (ja) 1992-10-13 1992-10-13 ハフマン復号回路

Publications (2)

Publication Number Publication Date
JPH06125277A true JPH06125277A (ja) 1994-05-06
JP2842094B2 JP2842094B2 (ja) 1998-12-24

Family

ID=17534486

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4273925A Expired - Fee Related JP2842094B2 (ja) 1992-10-13 1992-10-13 ハフマン復号回路

Country Status (1)

Country Link
JP (1) JP2842094B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6756381B2 (en) 2002-02-21 2004-06-29 Supergen, Inc. Compositions and formulations of 9-nitrocamptothecin polymorphs and methods of use thereof

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0470012A (ja) * 1990-07-09 1992-03-05 Nec Corp 可変長符号復号化装置
JPH04100324A (ja) * 1990-08-18 1992-04-02 Ricoh Co Ltd 可変長符号の復号方式

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0470012A (ja) * 1990-07-09 1992-03-05 Nec Corp 可変長符号復号化装置
JPH04100324A (ja) * 1990-08-18 1992-04-02 Ricoh Co Ltd 可変長符号の復号方式

Also Published As

Publication number Publication date
JP2842094B2 (ja) 1998-12-24

Similar Documents

Publication Publication Date Title
KR0138971B1 (ko) 허프만 부호 복호회로
JP3189876B2 (ja) 可変長符号復号化回路
US4591829A (en) Run length code decoder
JP2746109B2 (ja) ハフマン符号復号化回路
US5859926A (en) Device and method for data coding and decoding
JPH06125277A (ja) ハフマン復号回路
JPS6345131B2 (ja)
JP3009007B2 (ja) 2元符号復号回路
US4719592A (en) Sequence generator
JP2537551B2 (ja) 可変長符号復号回路
JP3138342B2 (ja) 可変長符号の復号装置
JPH04215321A (ja) 可変長符号デコード回路
KR0153051B1 (ko) 프로그램가능한 맵핑회로
JPH06140937A (ja) ハフマン符号復号回路
JPH0451720A (ja) 可変長符号復号装置
JPS5964969A (ja) 符号復号化装置の画像信号生成装置
JPH0377708B2 (ja)
JP3332630B2 (ja) 復号装置及びデコードテーブルの生成方法
JPH04358419A (ja) 復号化装置
JPS59117375A (ja) Mh符号化方式
JP3309458B2 (ja) 記憶装置
JPH0490267A (ja) 可変長符号の復号回路
JPH01206728A (ja) 可変長符号化コード復号装置
JPH04143992A (ja) 画像メモリのアドレス発生回路
JPS5943863B2 (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: 19980922

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

Free format text: PAYMENT UNTIL: 20081023

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20091023

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20091023

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20101023

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20101023

Year of fee payment: 12

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

Year of fee payment: 12

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

Year of fee payment: 13

LAPS Cancellation because of no payment of annual fees