JPH03131176A - 木構造可変長符号の復号方式 - Google Patents
木構造可変長符号の復号方式Info
- Publication number
- JPH03131176A JPH03131176A JP1268810A JP26881089A JPH03131176A JP H03131176 A JPH03131176 A JP H03131176A JP 1268810 A JP1268810 A JP 1268810A JP 26881089 A JP26881089 A JP 26881089A JP H03131176 A JPH03131176 A JP H03131176A
- Authority
- JP
- Japan
- Prior art keywords
- node
- data
- address
- digit
- code
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 claims description 27
- 238000006243 chemical reaction Methods 0.000 abstract description 16
- 101100087530 Caenorhabditis elegans rom-1 gene Proteins 0.000 abstract description 3
- 101100305983 Mus musculus Rom1 gene Proteins 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 19
- 101001106432 Homo sapiens Rod outer segment membrane protein 1 Proteins 0.000 description 3
- 102100021424 Rod outer segment membrane protein 1 Human genes 0.000 description 3
- 238000013144 data compression Methods 0.000 description 2
- KWYHDKDOAIKMQN-UHFFFAOYSA-N N,N,N',N'-tetramethylethylenediamine Chemical compound CN(C)CCN(C)C KWYHDKDOAIKMQN-UHFFFAOYSA-N 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
(産業上の利用分野)
本発明は、画像データ圧縮・音声データ圧縮などに使用
して好適な復号方式に係り、特にハフマン符号などの木
構造可変長符号の復号方式に関するものである。
して好適な復号方式に係り、特にハフマン符号などの木
構造可変長符号の復号方式に関するものである。
(技術的背景)
一般に、mbltの固定長バイナリ−符号では、一1
2 +1(個)かり2 (個)の状態(画像・音声な
どの量子化データなど)を表現することができる。例え
ば、第6図(B)に示すように、A。
どの量子化データなど)を表現することができる。例え
ば、第6図(B)に示すように、A。
B、C,Dの4−22 (個)の状態は、[lOJ。
rolJ、rlOJ、rllJの2 bitの固定長バ
イナリ−符号で表現できる。
イナリ−符号で表現できる。
しかし、上記の各状態の出現数(出現確率)に差異があ
る場合、すなわち、各状態の出現数が均一でない場合に
は、ハフマン符号などの可変長符号を利用すれば、全体
のデータ量を圧縮することができる。
る場合、すなわち、各状態の出現数が均一でない場合に
は、ハフマン符号などの可変長符号を利用すれば、全体
のデータ量を圧縮することができる。
すなわち、出現数が多い状態(データ)には短い符号を
割り当て、出現数が少ない状態(データ)には長い符号
を割当てる。
割り当て、出現数が少ない状態(データ)には長い符号
を割当てる。
例えば、第6図(A)に示す木構造(バイナリ−ツリー
構造)のハフマン符号を利用して、A。
構造)のハフマン符号を利用して、A。
B、C,Dの状態(データ)をそれぞれ「1」。
roIJ、roolJ、roooJのハフマン符号で表
現する。
現する。
この時、各状態A、B、C,Dの出現数(出現確率)が
第6図(B)のようであれば、固定長バイナリ−符号で
表現した全情報量(bit数)をFとした時、各状態に
対して2 bitの符号が必要であるので F−2X (70+20+6+4) −200(bit) となる。
第6図(B)のようであれば、固定長バイナリ−符号で
表現した全情報量(bit数)をFとした時、各状態に
対して2 bitの符号が必要であるので F−2X (70+20+6+4) −200(bit) となる。
これに対して、ハフマン符号で表現した全情報z(bi
t数)をHとした時、出現数(出現確率)が高い状態に
は1 bitの短い符号が割り当てられ、出現数(出現
確率)が低い状態には3 bitの長い符号が割当てら
れているので、 H−1x70+2x20+3x6+3x4−140 (
bit) となる。
t数)をHとした時、出現数(出現確率)が高い状態に
は1 bitの短い符号が割り当てられ、出現数(出現
確率)が低い状態には3 bitの長い符号が割当てら
れているので、 H−1x70+2x20+3x6+3x4−140 (
bit) となる。
ハフマン符号などの可変長符号では、全体の情報量が圧
縮減少する反面、状態(データ)に応じて符号長が異な
り、連続した任意長の可変長符号列を符号化・復号化す
るためには、全状態数がY個ある場合、最も短い符号長
である1 bitから最も長い符号長であるYから1
t)It減じたY−1bIt長の符号が必要となること
が生じる。
縮減少する反面、状態(データ)に応じて符号長が異な
り、連続した任意長の可変長符号列を符号化・復号化す
るためには、全状態数がY個ある場合、最も短い符号長
である1 bitから最も長い符号長であるYから1
t)It減じたY−1bIt長の符号が必要となること
が生じる。
このため、ハフマン符号などの可変長符号では固定長バ
イナリ−符号より長い符号長となって、復号装置が大規
模なものとなりやすい。
イナリ−符号より長い符号長となって、復号装置が大規
模なものとなりやすい。
(従来の技術)
第7図は従来のハフマン符号の復号装置の構成図である
。これは、最大符号長が13bitのハフマン符号の符
号列を復号し、例えば8 bitの復号データとして出
力する例である。
。これは、最大符号長が13bitのハフマン符号の符
号列を復号し、例えば8 bitの復号データとして出
力する例である。
20はシリアルデータであるハフマン符号列を入力し、
シリアル/パラレル変換して出力するシフトレジスタで
ある。このシフトレジスタ20はハフマン符号の最大符
号長である13bitパラレル出力を有するシフトレジ
スタであり、入力されるハフマン符号列と同期したシフ
トクロックでシフト動作をする。
シリアル/パラレル変換して出力するシフトレジスタで
ある。このシフトレジスタ20はハフマン符号の最大符
号長である13bitパラレル出力を有するシフトレジ
スタであり、入力されるハフマン符号列と同期したシフ
トクロックでシフト動作をする。
21は、前記シフトレジスタ20の13bitのパラレ
ル出力をアドレス入力とするROM (変換用テーブル
である読み出し専用メモリ)であり、13bitアドレ
ス入力に対応した8 bitの復号データと、有効な可
変長符号であることを示す1bttのフラグデータ(可
変長符号の有効な符号データである場合は「1」となる
フラグビット)とをデータ出力するものである。
ル出力をアドレス入力とするROM (変換用テーブル
である読み出し専用メモリ)であり、13bitアドレ
ス入力に対応した8 bitの復号データと、有効な可
変長符号であることを示す1bttのフラグデータ(可
変長符号の有効な符号データである場合は「1」となる
フラグビット)とをデータ出力するものである。
22は前記ROM21からの8 bitの復号データを
ラッチする8 bitのラッチである。このラッチ22
は後述するROM21からフラグビットをラッチパルス
として動作し、前記ROM21からの復号データをラッ
チして最終的な復号データとして出力する。また、RO
M21からフラグビットにより前記シフトレジスタ20
が初期設定され、シフトレジスタ20内のデータがすべ
て「1」となるように構成されているものである。
ラッチする8 bitのラッチである。このラッチ22
は後述するROM21からフラグビットをラッチパルス
として動作し、前記ROM21からの復号データをラッ
チして最終的な復号データとして出力する。また、RO
M21からフラグビットにより前記シフトレジスタ20
が初期設定され、シフトレジスタ20内のデータがすべ
て「1」となるように構成されているものである。
なお、入力される可変長符号は、総桁数が13bttと
なるよう、その符号長に応じて、上位桁にダミービット
(シフトレジスタ20からのアドレス出力時に付加され
る「1」)を付加しても、その符号長よりも長い符号と
はbit内容が重複しないように構成されている。
なるよう、その符号長に応じて、上位桁にダミービット
(シフトレジスタ20からのアドレス出力時に付加され
る「1」)を付加しても、その符号長よりも長い符号と
はbit内容が重複しないように構成されている。
次に、以上のように構成された復号装置の動作について
説明する。最初に、シフトレジスタ20が初期設定され
てデータがすべて「1」となる。
説明する。最初に、シフトレジスタ20が初期設定され
てデータがすべて「1」となる。
そして入力符号列の1 bit目がシフトレジスタ20
に入力される。この時上位12bltは初期設定ビット
であるダミーデータ「1」が加されて、13 bitの
rl 111 1111 1111 1Jまたはrl
111 1111 1111 0JがROM21のアド
レスに入力される。
に入力される。この時上位12bltは初期設定ビット
であるダミーデータ「1」が加されて、13 bitの
rl 111 1111 1111 1Jまたはrl
111 1111 1111 0JがROM21のアド
レスに入力される。
そして、アドレス入力に応じたデータ(B bttの復
号データと1 bitのフラグビット)が出力される。
号データと1 bitのフラグビット)が出力される。
この時、入力符号列の1 bit目が、1 bitの符
号長を有する可変長符号であると、データ内容としてg
bttの復号データとフラグビット「1」が出力され
る。フラグデータ「1」によりROM21の復号データ
がラッチ22でラッチされ、最終出力されて復号される
。同時にフラグビット「1」によりシフトレジスタ20
のデータがすべて「1」に初期設定される。
号長を有する可変長符号であると、データ内容としてg
bttの復号データとフラグビット「1」が出力され
る。フラグデータ「1」によりROM21の復号データ
がラッチ22でラッチされ、最終出力されて復号される
。同時にフラグビット「1」によりシフトレジスタ20
のデータがすべて「1」に初期設定される。
入力符号列の1 bit目が、1 bitの符号長を有
する可変長符号でないと、フラグビット「0」が出力さ
れるので、ラッチ22のラッチ動作、シフトレジスタ2
0の初期設定は行なわれない。そして人力符号の2 b
it目が入力され、シフトレジスタ20が1 bitシ
フトする。
する可変長符号でないと、フラグビット「0」が出力さ
れるので、ラッチ22のラッチ動作、シフトレジスタ2
0の初期設定は行なわれない。そして人力符号の2 b
it目が入力され、シフトレジスタ20が1 bitシ
フトする。
すなわち、上位11bitにダミーデータ「1」が付与
され下位2 bitが入力符号の1 bit目と2bi
t目であるアドレスデータが、ROM21に入力されて
、このアドレスに対応したデータ内容がROM21から
出力される。そして、データ内容のフラグビットに応じ
た動作が前記1 bit目入力時と同じようになされて
、最大13回の動作により最大符号長13bitの可変
長符号が復号される。
され下位2 bitが入力符号の1 bit目と2bi
t目であるアドレスデータが、ROM21に入力されて
、このアドレスに対応したデータ内容がROM21から
出力される。そして、データ内容のフラグビットに応じ
た動作が前記1 bit目入力時と同じようになされて
、最大13回の動作により最大符号長13bitの可変
長符号が復号される。
この復号装置による復号時、フラグビット「0」となる
場合、すなわち、入力された桁数(bit数)に等しい
符号長の可変長符号が存在しない場合、そのアドレスに
対応した8 bltのデータは不意味である。
場合、すなわち、入力された桁数(bit数)に等しい
符号長の可変長符号が存在しない場合、そのアドレスに
対応した8 bltのデータは不意味である。
しかし、従来の復号方式による復号装置では、変換用R
OM21のアドレス空間としては、可変長符号の最大符
号長ビット数が必要となってしまう。
OM21のアドレス空間としては、可変長符号の最大符
号長ビット数が必要となってしまう。
例えば、第7図に示す最大符号長13bitの復号装置
では(1+8)X213−81920 (bit)のR
OMが必要となる。
では(1+8)X213−81920 (bit)のR
OMが必要となる。
(発明が解決しようとする課題)
上述したように、従来の可変長符号の符号方式による符
号装置では、可変長符号の最大符号長に依存した変換用
テーブル(ROMなどのメモリ)が必要となり、符号装
置が大規模となり民生用機器として安価に構成すること
ができなかった。
号装置では、可変長符号の最大符号長に依存した変換用
テーブル(ROMなどのメモリ)が必要となり、符号装
置が大規模となり民生用機器として安価に構成すること
ができなかった。
また、出現数(出現確率)の低い状態に対しては、符号
長の長い符号が付与されるので、状態数が多い場合には
、特に変換用テーブル容量が大規模となったり、別途処
理する特別な回路構成が必要となった。
長の長い符号が付与されるので、状態数が多い場合には
、特に変換用テーブル容量が大規模となったり、別途処
理する特別な回路構成が必要となった。
(課題を解決するための手段)
本考案は上記課題を解決するために、
第1図(A)及び(B)、第2図に示すように、木構造
で符号構成された可変長符号の中間ノード及び終端ノー
ドに、Nデジットのアドレスを割当て、このアドレスに
データを対応させて木テーブルを構成した復号方式であ
って、 親ノードが共通である子ノードには、N−1デジットの
共通のアドレスと、分枝する子ノードを区別する1デジ
ットのアドレスとからなるNデジットのアドレスを割当
て、 前記中間ノードに対しては、この中間ノードを親ノード
として分枝する次の子ノードに共通なN−1デジットの
アドレスデータと、中間ノードであることを示す1デジ
ットのフラグデータとを対応させ、 前記終端ノードに対しては、Mデジットの復号データと
、終端ノードであることを示す1デジットのフラグデー
タとを対応させると共に、入力された任意長のデジット
から成る可変長符号列により、前記木テーブルのノード
をトレースして、ノードに割当てられたアドレスのデー
タを読出して、ノードのアドレスに対応したフラグデー
タによって中間ノードであるか終端ノードであるかを判
別し、 中間ノードである時は、この中間ノードから分枝する子
ノードの組に共通なN−1デジットの前記アドレスデー
タと入力された可変長符号列の1デジットとからNデジ
ットのアドレスを生成して、この生成されたNデジット
のアドレスにより指定された前記データを読出して、前
記本テーブルのノードをトレースし続け、 終端ノードである時は、Mデジットの復号データを出力
して復号する木構造可変長符号の復号方式を提供すると
共に、 第3図(A)及び(B)、第4図、第5図に示すように
、 例外コードに続いてmデジットの固定長符号を有する可
変長符号列の復号に際しては、前記例外コードに対応し
た例外終端ノードと、この例外終端ノードに続くm段の
ダミーノードとを木テーブルに追加設定した木構造可変
長符号の復号方式を提供するものである。
で符号構成された可変長符号の中間ノード及び終端ノー
ドに、Nデジットのアドレスを割当て、このアドレスに
データを対応させて木テーブルを構成した復号方式であ
って、 親ノードが共通である子ノードには、N−1デジットの
共通のアドレスと、分枝する子ノードを区別する1デジ
ットのアドレスとからなるNデジットのアドレスを割当
て、 前記中間ノードに対しては、この中間ノードを親ノード
として分枝する次の子ノードに共通なN−1デジットの
アドレスデータと、中間ノードであることを示す1デジ
ットのフラグデータとを対応させ、 前記終端ノードに対しては、Mデジットの復号データと
、終端ノードであることを示す1デジットのフラグデー
タとを対応させると共に、入力された任意長のデジット
から成る可変長符号列により、前記木テーブルのノード
をトレースして、ノードに割当てられたアドレスのデー
タを読出して、ノードのアドレスに対応したフラグデー
タによって中間ノードであるか終端ノードであるかを判
別し、 中間ノードである時は、この中間ノードから分枝する子
ノードの組に共通なN−1デジットの前記アドレスデー
タと入力された可変長符号列の1デジットとからNデジ
ットのアドレスを生成して、この生成されたNデジット
のアドレスにより指定された前記データを読出して、前
記本テーブルのノードをトレースし続け、 終端ノードである時は、Mデジットの復号データを出力
して復号する木構造可変長符号の復号方式を提供すると
共に、 第3図(A)及び(B)、第4図、第5図に示すように
、 例外コードに続いてmデジットの固定長符号を有する可
変長符号列の復号に際しては、前記例外コードに対応し
た例外終端ノードと、この例外終端ノードに続くm段の
ダミーノードとを木テーブルに追加設定した木構造可変
長符号の復号方式を提供するものである。
(作用)
上記木構造可変長符号の復号方式によれば、入力された
任意長の可変長符号列の1デジットにより木テーブル(
木構造)のノードが順次トレースされ、終端ノードに達
すると復号データが出力される。
任意長の可変長符号列の1デジットにより木テーブル(
木構造)のノードが順次トレースされ、終端ノードに達
すると復号データが出力される。
(実施例)
本発明になる木構造可変長符号の復号方式の一実施例を
以下、図面とともに詳細に説明する。第1図(A)及び
(B)は本復号方式を説明するための図で、同図(A)
は木構造(木テーブル)を示す図、同図(B)は論理テ
ーブルを示す図、第2図は復号装置の構成図である。
以下、図面とともに詳細に説明する。第1図(A)及び
(B)は本復号方式を説明するための図で、同図(A)
は木構造(木テーブル)を示す図、同図(B)は論理テ
ーブルを示す図、第2図は復号装置の構成図である。
く復号方式の概略〉
本復号方式は、概略(イ)〜(ニ)のように構成されて
いる。
いる。
(イ)木構造の符号構成された符号の全ノードにはアド
レスが割当てられている。Nデジットのアドレスの割当
ては、1デジット上の親ノードが共通となる子ノードの
組(2進木の場合はペアとなる)では、N−1デジット
分は共通であり、残りの1デジットで分枝した子ノード
をアドレッシングできるように構成している。
レスが割当てられている。Nデジットのアドレスの割当
ては、1デジット上の親ノードが共通となる子ノードの
組(2進木の場合はペアとなる)では、N−1デジット
分は共通であり、残りの1デジットで分枝した子ノード
をアドレッシングできるように構成している。
(ロ)これら全ノード(のアドレス)にはデータが対応
しでいる。中間ノードのデータ内容は、分枝すべき次の
子ノードの共通アドレスN−1デジットと、中間ノード
であることを示す1デジットのフラグデジットとである
。終端ノードのデータ内容は、Mデジットの復号データ
と、中間ノードのフラグデジットと同一位置で終端ノー
ドであることを示す1デジットのフラグデジットとであ
る。
しでいる。中間ノードのデータ内容は、分枝すべき次の
子ノードの共通アドレスN−1デジットと、中間ノード
であることを示す1デジットのフラグデジットとである
。終端ノードのデータ内容は、Mデジットの復号データ
と、中間ノードのフラグデジットと同一位置で終端ノー
ドであることを示す1デジットのフラグデジットとであ
る。
(ハ)任意長のデジットから成る可変長符号の復号に際
して、始端ノードから最初に分枝するノードの組の共通
なN−1デジットと可変長符号の第1デジットとからN
デジットのアドレスを生成し、このアドレスによって(
木テーブルの)ノードのデータを読み出す。
して、始端ノードから最初に分枝するノードの組の共通
なN−1デジットと可変長符号の第1デジットとからN
デジットのアドレスを生成し、このアドレスによって(
木テーブルの)ノードのデータを読み出す。
(ニ)読出したデータのフラグデジットによって終端ノ
ードか中間ノードかを判別する。
ードか中間ノードかを判別する。
終端ノードならば、Mデジットで表わされた復号データ
を出力する。
を出力する。
中間ノードならば、N−1デジットで表わされた次のノ
ードのアドレスに可変長符号符号列の次の1デジットを
付は加えたNデジットのアドレスを生成し、次のノード
をアドレッシングして、そのデータを読み出す。上記を
繰返して終端ノードに達するまで木テーブルをトレース
して復号する。
ードのアドレスに可変長符号符号列の次の1デジットを
付は加えたNデジットのアドレスを生成し、次のノード
をアドレッシングして、そのデータを読み出す。上記を
繰返して終端ノードに達するまで木テーブルをトレース
して復号する。
く復号方式の論理テーブルと木テーブル〉最初に、第1
図(A)及び(B)を参照して、復号方式の木構造(木
テーブル)と論理テーブルを説明する。なお、本実施例
は各ノードが2つに分枝(枝分れ)する2進木(バイナ
リ−・ツリー)を例としている。よって、符号の1デジ
ット(1゜桁)は1ビツトのバイナリ−コードで表現さ
れている。また、復号される可変長符号は、最小符号長
が1bitで最大符号長が6 bitのバイナリ−コー
ドで、最終的な復号データは8 bitのバイナリ−コ
ード出力であるとする。
図(A)及び(B)を参照して、復号方式の木構造(木
テーブル)と論理テーブルを説明する。なお、本実施例
は各ノードが2つに分枝(枝分れ)する2進木(バイナ
リ−・ツリー)を例としている。よって、符号の1デジ
ット(1゜桁)は1ビツトのバイナリ−コードで表現さ
れている。また、復号される可変長符号は、最小符号長
が1bitで最大符号長が6 bitのバイナリ−コー
ドで、最終的な復号データは8 bitのバイナリ−コ
ード出力であるとする。
同図(A)に示すように、可変長符号は2進木構造で構
成されている。始端ノードからバイナリ−コード(0及
び1)により順次2つに枝分れしており、終端ノードが
可変長符号に対応している。
成されている。始端ノードからバイナリ−コード(0及
び1)により順次2つに枝分れしており、終端ノードが
可変長符号に対応している。
終端ノードN。1は可変長符号「1」に対応し、終端ノ
ードN N 、N 、N 、N 、NIP
21 31 40 50 51
は可変長符号r01J、r001J、ro001Jr0
00QO]、 rooooloJ、 rooool
l」にそれぞれ対応している。
ードN N 、N 、N 、N 、NIP
21 31 40 50 51
は可変長符号r01J、r001J、ro001Jr0
00QO]、 rooooloJ、 rooool
l」にそれぞれ対応している。
さらに、同図(B)に示すように、中間ノードN00”
10’ N20” 30” 41及び前記した終端ノ
ードN01・ N11・ N21・ N31・ N40
・ N50・N51には、固有のアドレス(4bit)
が割当てられている。
10’ N20” 30” 41及び前記した終端ノ
ードN01・ N11・ N21・ N31・ N40
・ N50・N51には、固有のアドレス(4bit)
が割当てられている。
このアドレスは、共通な親ノードから枝分れした子ノー
ド(本実施例では2進木であるので、共通な親ノードを
もつ子ノードは2つ[ペア]である)では、最終の1
bitを除いた残余の上位アドレス3bitが共通で、
最終の下位アドレス1 bitで区別されるように構成
されている。なお、本実施例ではアドレスが割当てられ
る中間ノード及び最終ノードは総計12個であるので、
アドレスは上位アドレス3 bitと下位アドレス1
bitの4bitで表現している。
ド(本実施例では2進木であるので、共通な親ノードを
もつ子ノードは2つ[ペア]である)では、最終の1
bitを除いた残余の上位アドレス3bitが共通で、
最終の下位アドレス1 bitで区別されるように構成
されている。なお、本実施例ではアドレスが割当てられ
る中間ノード及び最終ノードは総計12個であるので、
アドレスは上位アドレス3 bitと下位アドレス1
bitの4bitで表現している。
例えば共通の親ノードである始端ノードから枝分れした
ノードN 、N とは、共通の上位アト00
0ル スr000Jを有し、最終の下位アドレス1bitで区
別されるように構成されており、ノードNooには、ア
ドレスr0000J、 ノードNo1には、アドレス
r0001Jが割当てられている。
ノードN 、N とは、共通の上位アト00
0ル スr000Jを有し、最終の下位アドレス1bitで区
別されるように構成されており、ノードNooには、ア
ドレスr0000J、 ノードNo1には、アドレス
r0001Jが割当てられている。
そして、前記中間ノード及び最終ノードのアドレスには
データが対応し、対応するデータの内容は以下のように
設定されている。なお、各アドレスに対したデータ(内
容)とは後述するように、第2図の変換テーブル用RO
MIに記憶されているデータである。
データが対応し、対応するデータの内容は以下のように
設定されている。なお、各アドレスに対したデータ(内
容)とは後述するように、第2図の変換テーブル用RO
MIに記憶されているデータである。
終端ノードのデータ内容は、最終的な復号データ(8b
it)と、終端ノードであることを示す1bitのフラ
グデータ(フラグビット「1」)とである。
it)と、終端ノードであることを示す1bitのフラ
グデータ(フラグビット「1」)とである。
これに対して中間ノードのデータ内容は、当該中間ノー
ドを親ノードとする子ノード(すなわち、当該中間ノー
ドから枝分れする子ノード)の前記した共通の上位アド
レス(3bit)と、終端でなく中間ノードであること
を示すi bttのフラグデータ(フラグビット「0」
)とである。なお、中間ノードのデータ内容である上位
アドレス3 bitは、終端ノードのデータ内容である
復号データ8 bitとbtt数が合うように下位に5
bttのダミーデータが付加されている。
ドを親ノードとする子ノード(すなわち、当該中間ノー
ドから枝分れする子ノード)の前記した共通の上位アド
レス(3bit)と、終端でなく中間ノードであること
を示すi bttのフラグデータ(フラグビット「0」
)とである。なお、中間ノードのデータ内容である上位
アドレス3 bitは、終端ノードのデータ内容である
復号データ8 bitとbtt数が合うように下位に5
bttのダミーデータが付加されている。
例えば、ノードN1oは中間ノードであるので、このノ
ードN1oのアドレスに対応したデータ内容は、このノ
ードN を親ノードとするノードN20’O N (n進水の時はN2n)の共通な上位アドレス1 である3 bitのアドレスデータr010J (最
終的には、5bitのダミーデータが付与された「01
0・・・」)と、終端ノードでないことを示すフラグビ
ットrOJとである。
ードN1oのアドレスに対応したデータ内容は、このノ
ードN を親ノードとするノードN20’O N (n進水の時はN2n)の共通な上位アドレス1 である3 bitのアドレスデータr010J (最
終的には、5bitのダミーデータが付与された「01
0・・・」)と、終端ノードでないことを示すフラグビ
ットrOJとである。
例えば、ノードN2、は終端ノードであるので、このノ
ードN21のアドレスに対応したデータ内容は最終的な
復号データであるg bttの例えばrolololo
lJと、終端ノードであることを示すフラグビット「1
」とである。
ードN21のアドレスに対応したデータ内容は最終的な
復号データであるg bttの例えばrolololo
lJと、終端ノードであることを示すフラグビット「1
」とである。
く復号装置の構成〉
次に復号装置について、第2図を参照して説明する。
1は入力された可変長符号列を復号する変換テーブルで
あり、4 bitのアドレス空間と、各アドレスに対し
て8+1−9bitの出力データを持つ144bit
(−9X2’)容量のROM (読み出し専用メモリ
)である。
あり、4 bitのアドレス空間と、各アドレスに対し
て8+1−9bitの出力データを持つ144bit
(−9X2’)容量のROM (読み出し専用メモリ
)である。
2はリセット端子を有する3 bitのレジスタであり
、ROMIの出力から新たに入力された3bitの上位
アドレスデータを随時出力し、リセットパルスにより初
期の上位アドレスである「000」を出力するものであ
る。レジスタ2の出力3 bitは、前記ROM1の上
位アドレス3bitとされ、前記ROMIの下位アドレ
ス1bit(最終アドレス1 bit)には、可変長符
号の入力列が入力されている。
、ROMIの出力から新たに入力された3bitの上位
アドレスデータを随時出力し、リセットパルスにより初
期の上位アドレスである「000」を出力するものであ
る。レジスタ2の出力3 bitは、前記ROM1の上
位アドレス3bitとされ、前記ROMIの下位アドレ
ス1bit(最終アドレス1 bit)には、可変長符
号の入力列が入力されている。
3は、ROMIからの8bitの出力データ(これは、
終端ノードのデータ内容である前記復号データ)をラッ
チする8bitパラレル入出力のラッチである。このラ
ッチ3の出力が最終的な復号データとなるように、RO
M1の8 bitの出力データは前記ラッチ3に入力さ
れ、ROM1の1 bitのフラグデータ(フラグビッ
ト)がラッチ3のラッチパルスとして入力されている。
終端ノードのデータ内容である前記復号データ)をラッ
チする8bitパラレル入出力のラッチである。このラ
ッチ3の出力が最終的な復号データとなるように、RO
M1の8 bitの出力データは前記ラッチ3に入力さ
れ、ROM1の1 bitのフラグデータ(フラグビッ
ト)がラッチ3のラッチパルスとして入力されている。
前述したように、ROMIの8 bitの出力データ中
、上位の3 bitのデータ(これは中間ノードのデー
タ内容である前記した上位アドレス)が前記レジスタ2
に入力され、ROM1の1 bitのフラグデータ(フ
ラグビット)がレジスタ2のリセットパルスとなってい
る。
、上位の3 bitのデータ(これは中間ノードのデー
タ内容である前記した上位アドレス)が前記レジスタ2
に入力され、ROM1の1 bitのフラグデータ(フ
ラグビット)がレジスタ2のリセットパルスとなってい
る。
なお、すでに、第1図(A)及び(B)により詳述した
ように、各ノードの固有のアドレス(4bit)に対応
したデータ内容(8+1−9bit)が、前記ROMI
に記憶されている。
ように、各ノードの固有のアドレス(4bit)に対応
したデータ内容(8+1−9bit)が、前記ROMI
に記憶されている。
く復号方式の手順と復号装置の動作〉
可変長符号の連続した入力列は、1デジット(上述した
ように、本実施例は2進木であるので、t bttであ
る)づつ、ROM1の下位アドレス(1bit)として
入力される。この時、レジスタ2は初期リセットパルス
によりリセットされて、ROMIの上位アドレス(3b
it)としてro 00Jが入力される。
ように、本実施例は2進木であるので、t bttであ
る)づつ、ROM1の下位アドレス(1bit)として
入力される。この時、レジスタ2は初期リセットパルス
によりリセットされて、ROMIの上位アドレス(3b
it)としてro 00Jが入力される。
この時、入力列の最初の1 bitが例えば、「0」で
あればROMIのアドレスはro 000J (すな
わちノードN。。)となり、対応データとして8bit
の「001・・・」 (・・・はダミーデータ)とフラ
グデータである1 bit r OJが出力される。
あればROMIのアドレスはro 000J (すな
わちノードN。。)となり、対応データとして8bit
の「001・・・」 (・・・はダミーデータ)とフラ
グデータである1 bit r OJが出力される。
8bitデータ中(ダミノードを除く)上位の3 bi
troolJが、次のノード(すなわち、ノードN。。
troolJが、次のノード(すなわち、ノードN。。
を親ノードとする2つの子ノードN 、N )10
11 の上位アドレスを示すアドレスデータとしてレジスタ2
に入力される。この時フラグビットは「0」であるので
、レジスタ2はリセットされることなく、またラッチ3
もラッチ動作をしない。
11 の上位アドレスを示すアドレスデータとしてレジスタ2
に入力される。この時フラグビットは「0」であるので
、レジスタ2はリセットされることなく、またラッチ3
もラッチ動作をしない。
そして、人力列の2bit目として例えば、「0」が入
力されると、この2 bit目の「0」を下位アドレス
とし、レジスタ2の前記出力r001Jを上位アドレス
として、アドレスr0010J (すなわち、中間ノ
ードN1o)に対応するデータ「010・・・」とフラ
グデータである1 bit r OJとが出力される
。1 bit目と同様に、8bitのデータ中3bit
roloJが、次のノード(すなわち、中間ノード
N1oを親ノードとする2つの子ノードN 、N
)の上位アドレスを示すアドレスデー021 夕としてレジスタ2に入力される。この時もフラグビッ
トは「0」であるので、レジスタ2のリセット、ラッチ
3のラッチ動作は行なわれない。
力されると、この2 bit目の「0」を下位アドレス
とし、レジスタ2の前記出力r001Jを上位アドレス
として、アドレスr0010J (すなわち、中間ノ
ードN1o)に対応するデータ「010・・・」とフラ
グデータである1 bit r OJとが出力される
。1 bit目と同様に、8bitのデータ中3bit
roloJが、次のノード(すなわち、中間ノード
N1oを親ノードとする2つの子ノードN 、N
)の上位アドレスを示すアドレスデー021 夕としてレジスタ2に入力される。この時もフラグビッ
トは「0」であるので、レジスタ2のリセット、ラッチ
3のラッチ動作は行なわれない。
さらに、人力列の3 bit目として例えば、「1」が
入力されると、この3 bit目の「1」を下位アドレ
スとし、レジスタ2の前記出力r010Jを上位アドレ
スとする、アドレスr0101J (すなわち、終端
ノードN2、)がROMIに入力されて、対応するデー
タ、例えば復号データとして8bitのr 0IOIO
IOIJと、フラグビットである1b1t 「1」が出
力される。この時、フラグビットが「1」となるので、
レジスタ2がリセットされるともに、ラッチ3がROM
Iからの8 bitのデータをラッチして出力する。
入力されると、この3 bit目の「1」を下位アドレ
スとし、レジスタ2の前記出力r010Jを上位アドレ
スとする、アドレスr0101J (すなわち、終端
ノードN2、)がROMIに入力されて、対応するデー
タ、例えば復号データとして8bitのr 0IOIO
IOIJと、フラグビットである1b1t 「1」が出
力される。この時、フラグビットが「1」となるので、
レジスタ2がリセットされるともに、ラッチ3がROM
Iからの8 bitのデータをラッチして出力する。
すなわち、入力列roll(・・・)」に対し、最初の
符号は、符号長3 bitのrooIJであると復号さ
れて、それに対応する最終的な復号データro1010
101Jがラッチ3から出力される。
符号は、符号長3 bitのrooIJであると復号さ
れて、それに対応する最終的な復号データro1010
101Jがラッチ3から出力される。
そして、入力列の4 bit目として入力された「0」
また「1」を下位アドレスとし、リセットされたレジス
タ2の出力roOOJを上位アドレスとする、アドレス
ro 000Jまたr0001Jが再びアドレスされて
、前記復号動作が繰り返され、符号長の異なる可変長符
号が連続した入力列は順次符合される。
また「1」を下位アドレスとし、リセットされたレジス
タ2の出力roOOJを上位アドレスとする、アドレス
ro 000Jまたr0001Jが再びアドレスされて
、前記復号動作が繰り返され、符号長の異なる可変長符
号が連続した入力列は順次符合される。
く復号装置の変換用ROMの容量〉
次に、本復号方式による復号装置の変換用ROMの容量
について説明する。
について説明する。
最初に、全ノード数NTを求める。1btt長の終端ノ
ード数をn1+ ・・・k bit長の終端ノード数を
nkとすると、 N T−n k +(n /2+ nk 1) +((n /2+ n )/2+nk−2)
k kl +(((((・・・ ・・・)/2 + n
l)となる。
ード数をn1+ ・・・k bit長の終端ノード数を
nkとすると、 N T−n k +(n /2+ nk 1) +((n /2+ n )/2+nk−2)
k kl +(((((・・・ ・・・)/2 + n
l)となる。
そして、全ノード数NTに対し、2”<NT≦2xとな
る値Xを求める。そして、x−1の値と復号データビッ
ト数との大きい値をyとする。
る値Xを求める。そして、x−1の値と復号データビッ
ト数との大きい値をyとする。
すると、変換用ROMの容ff1cFは、CF −(y
+l) x 2 (bit)となる。
+l) x 2 (bit)となる。
したがって、最大符号長が13bitで、符号長2bt
の符号数(終端ノード数)が2個。
の符号数(終端ノード数)が2個。
符号長4btの符号数(終端ノード数)が4個。
符号長6btの符号数(終端ノード数)が8個。
符号長7btの符号数(終端ノード数)が2個。
符号長8btの符号数(終端ノード数)が10個。
符号長9btの符号数(終端ノード数)が12個。
符号長10b tの符号数(終端ノード数)が4個。
符号長fib tの符号数(終端ノード数)が6個。
符号長12bitの符号数(終端ノード数)が2個。
符号長13b tの符号数(終端ノード数)が2個の木
構造可変長符号では、 CT−103 で、26く103く27となり、復号データを8btt
とすると、 CF −(max (7−1,8)+1)X27=11
52 (bi t) となる。
構造可変長符号では、 CT−103 で、26く103く27となり、復号データを8btt
とすると、 CF −(max (7−1,8)+1)X27=11
52 (bi t) となる。
すなわち、最大符号長が13bltの本構造可変長符号
の復号に必要な変換用ROMの容量は、すでに説明した
従来の方式の81920 (b i t)と比較して大
幅に削減されることとなる。
の復号に必要な変換用ROMの容量は、すでに説明した
従来の方式の81920 (b i t)と比較して大
幅に削減されることとなる。
(第2の実施例)
この第2の実施例は、例外コード、例外終端ノードを使
用してエスケープシーケス動作を可能としたものである
。
用してエスケープシーケス動作を可能としたものである
。
可変長符号によるデータの符号化に際して、きわめて出
現数(出現確率)が低い状態も存在する。
現数(出現確率)が低い状態も存在する。
この時、きわめて出現数が低い状態を可変長符号化する
と、符号長が従らに長くなり、好しくない。
と、符号長が従らに長くなり、好しくない。
そこで、きわめて出現数が低い状態については、例外コ
ードとともに固定長符号としてそのまま符号化するよう
に構成したものである。
ードとともに固定長符号としてそのまま符号化するよう
に構成したものである。
く符号方式の概略〉
この復号方式は、例外コードに続いてmデジットの固定
長符号を有する可変長符号列の復号に際しては、前記例
外コードに対応した例外終端ノードと、この例外終端ノ
ードに続くm段のダミーノードとを木テーブルに追加設
定して復号するようにしたものである。
長符号を有する可変長符号列の復号に際しては、前記例
外コードに対応した例外終端ノードと、この例外終端ノ
ードに続くm段のダミーノードとを木テーブルに追加設
定して復号するようにしたものである。
く復号方式の論理テーブルと本構造テーブル〉第3図(
A)及び(B)は前記した第1図(A)及び(B)に対
応する図で、同図(A)は木構造(木テーブル)を示す
図、同図(B)は論理テーブルを示す図である。また第
4図は復号装置の構成図である。なお、すでに説明した
実施例と異なる点である例外終端ノードを使用したエス
ケープシーケス動作を中心として説明する。
A)及び(B)は前記した第1図(A)及び(B)に対
応する図で、同図(A)は木構造(木テーブル)を示す
図、同図(B)は論理テーブルを示す図である。また第
4図は復号装置の構成図である。なお、すでに説明した
実施例と異なる点である例外終端ノードを使用したエス
ケープシーケス動作を中心として説明する。
第5図は、例外コードとこの例外コードに続く固定長符
号を含む入力列である。C,C2゜C,C6・・・はす
でに説明して可変長符号部分である。C4は例外コード
であり、このC4に続く入力列の部分C5が固定長符号
である。この固定長符号C5は、例えば最終的な復号コ
ードそのものでよい。本実施例では、符号長8(すなわ
ち、m −M −8)を例とする。
号を含む入力列である。C,C2゜C,C6・・・はす
でに説明して可変長符号部分である。C4は例外コード
であり、このC4に続く入力列の部分C5が固定長符号
である。この固定長符号C5は、例えば最終的な復号コ
ードそのものでよい。本実施例では、符号長8(すなわ
ち、m −M −8)を例とする。
第3図(A)において、ノードN2■が例外終端ノード
(すなわち、例外コードはroolJ)であり、この例
外終端ノードに続くノードN 、N0 61・ N70・ N71・ N80・ N81” 9
0” 91””13.N がダミノードである。2進
木の木構造131 である本実施例では、2個のダミーコードが1組となっ
て所定の段数が形成されている。すなわちN とN と
からの第1段、N7oとN71とからの60 61 第2段、N8oとN81とからの第3段、”・N130
とN とからの第8段(最終段)の8つの段を31 有している。この段数は例外コードに続く固定長符号の
符号長に等しく設定されている。
(すなわち、例外コードはroolJ)であり、この例
外終端ノードに続くノードN 、N0 61・ N70・ N71・ N80・ N81” 9
0” 91””13.N がダミノードである。2進
木の木構造131 である本実施例では、2個のダミーコードが1組となっ
て所定の段数が形成されている。すなわちN とN と
からの第1段、N7oとN71とからの60 61 第2段、N8oとN81とからの第3段、”・N130
とN とからの第8段(最終段)の8つの段を31 有している。この段数は例外コードに続く固定長符号の
符号長に等しく設定されている。
なお、例外終端ノードN21に続くダミーノードは、ダ
ミーノードの数を少なくするために木構造をとっていな
いが、8つの段を有する木構造としてもよい。例外終端
ノードに続くダミーノードは、その枝分れに意味がなく
、最終段のダミーノードに到るまでの段数を例外コード
に続く固定長符号の符号長に等しく構成しておけばよい
。
ミーノードの数を少なくするために木構造をとっていな
いが、8つの段を有する木構造としてもよい。例外終端
ノードに続くダミーノードは、その枝分れに意味がなく
、最終段のダミーノードに到るまでの段数を例外コード
に続く固定長符号の符号長に等しく構成しておけばよい
。
また、第3図(B)に示すように、例外終端ノードに続
くダミーノードにも対応した固有のアドレスが割当てら
れており、アドレスに応じたデータ内容を有している。
くダミーノードにも対応した固有のアドレスが割当てら
れており、アドレスに応じたデータ内容を有している。
なお、本実施例では総計28のノードがあるので、アド
レス値は上位アドレス4 bitと下位アドレス1 b
itの計5 bitで表現されている。なお、最終的な
符号データは8bitのバイナリ−コードである。
レス値は上位アドレス4 bitと下位アドレス1 b
itの計5 bitで表現されている。なお、最終的な
符号データは8bitのバイナリ−コードである。
ダミーノード中、中間のダミーノードN60’N
、N 、N 、N 、N ・・・N
、N81 70 71 80
81 120 121では、当該ノードを親
ノードとする子ノードの共通の上位アドレス4bit(
下位のアドレスである1 btt分を除<4bit)と
、ダミーノードであることを示す例外ビット1 bit
との合計5 bitとがデータ内容である。この上位5
bitの下位に3bitのダミービットが付加されて
後述するROM11のg bitのデータとなっている
。なお、例外ビットは例えば「1」とする。よって、ダ
ミーノード以外のデータ内容中、ダミーノードに対応す
るbtt位置は「0」のダミーデータが入れられている
。
、N 、N 、N 、N ・・・N
、N81 70 71 80
81 120 121では、当該ノードを親
ノードとする子ノードの共通の上位アドレス4bit(
下位のアドレスである1 btt分を除<4bit)と
、ダミーノードであることを示す例外ビット1 bit
との合計5 bitとがデータ内容である。この上位5
bitの下位に3bitのダミービットが付加されて
後述するROM11のg bitのデータとなっている
。なお、例外ビットは例えば「1」とする。よって、ダ
ミーノード以外のデータ内容中、ダミーノードに対応す
るbtt位置は「0」のダミーデータが入れられている
。
また、ダミーノード中、終端ノードには、前記実施例と
同様、8 bitの符号データと終端ノードであること
を示すフラグビット「1」とがデータ内容として付与さ
れている。
同様、8 bitの符号データと終端ノードであること
を示すフラグビット「1」とがデータ内容として付与さ
れている。
く符号化装置の構成〉
次に復号装置について、第4図を参照して説明する。
同図中、11は5 bitの入力アドレス空間と、各ア
ドレスに対して(8+ 1−) 9bitの出力データ
とを有するROM (読み出し専用メモリ)である。こ
のROMI 1に第3図(B)に示したアドレスに対応
したデータ(内容)が記憶されている。
ドレスに対して(8+ 1−) 9bitの出力データ
とを有するROM (読み出し専用メモリ)である。こ
のROMI 1に第3図(B)に示したアドレスに対応
したデータ(内容)が記憶されている。
12は、4 bitのレジスタで、前記ROMI 1か
らの8 bitの出力データ中、上位の4 bitが人
力されている。そしてこのレジスタ12の出力が前記R
OMI 1の上位アドレスの4 bitとして入力され
ている。
らの8 bitの出力データ中、上位の4 bitが人
力されている。そしてこのレジスタ12の出力が前記R
OMI 1の上位アドレスの4 bitとして入力され
ている。
なお、ROM11の下位アドレスの1 bitには入力
列がシリアル入力されている。入力列はシフトレジスタ
14にも入力されている。
列がシリアル入力されている。入力列はシフトレジスタ
14にも入力されている。
13は、データセレクタであり、ROM11のデータ出
力g bitと、g bitのシフトレジスタ14によ
りシリアル/パラレル変換されたg btt分の入力列
とを切り換えるものである。ROM11のフラグビット
出力と例外ビット出力との論理積がアンドゲート15で
とられて、フラグビットが「1」で例外ビットが「1」
の時、すなわち、ダミーノード中の最終ノードに到った
時に、データセレクタ13は、シフトレジスタ14から
の8bttデータを選択し、それ以外の時はROMII
からg bitデータ出力を選択して次段のラッチ16
に出力する。
力g bitと、g bitのシフトレジスタ14によ
りシリアル/パラレル変換されたg btt分の入力列
とを切り換えるものである。ROM11のフラグビット
出力と例外ビット出力との論理積がアンドゲート15で
とられて、フラグビットが「1」で例外ビットが「1」
の時、すなわち、ダミーノード中の最終ノードに到った
時に、データセレクタ13は、シフトレジスタ14から
の8bttデータを選択し、それ以外の時はROMII
からg bitデータ出力を選択して次段のラッチ16
に出力する。
ラッチ16はROMIIのフラグビットが「1」となっ
た時、すなわち、最終ノードに到った時にデータセレク
タ13からのデータをラッチして最終的な復号データと
して出力する。この時、前記レジスタ12がリセツトさ
れる。
た時、すなわち、最終ノードに到った時にデータセレク
タ13からのデータをラッチして最終的な復号データと
して出力する。この時、前記レジスタ12がリセツトさ
れる。
く復号方式の手順と復号装置の動作〉
C,C,C3などの可変長符号が入力列と2
して入力された時は、すでに説明した第1の実施例と同
様に復号化されて、ROMI 1の8 bitのデータ
出力が最終的な復号データとして出力される。
様に復号化されて、ROMI 1の8 bitのデータ
出力が最終的な復号データとして出力される。
そして、C4の例外コードr001J (これは、例
外終端ノードN2□に対応する)とこの例外コードに続
(8bitの固定長符号が人力されると、例外コードに
より、始端ノード−中間ノードN。0=巾間ノードN
→例外終端ノードN21の順で例外O 終端ノードN2□に到る。さらに、例外コード「001
」に続<8bitの固定長符号により、例外終端ノード
N2l−4−N6o(N61)−N7o(N71)→N
90 91 (N )″′so (N8t
)=N(N)−Ntoo totN (N
)→N (N ) →N t3゜tto
ill 120 121(N )の順
で、8段目のダミーノードの最終31 段に到る。なお、ペアのダミーノードは、固定長符号の
データ内容により、その一方のみが選択される。
外終端ノードN2□に対応する)とこの例外コードに続
(8bitの固定長符号が人力されると、例外コードに
より、始端ノード−中間ノードN。0=巾間ノードN
→例外終端ノードN21の順で例外O 終端ノードN2□に到る。さらに、例外コード「001
」に続<8bitの固定長符号により、例外終端ノード
N2l−4−N6o(N61)−N7o(N71)→N
90 91 (N )″′so (N8t
)=N(N)−Ntoo totN (N
)→N (N ) →N t3゜tto
ill 120 121(N )の順
で、8段目のダミーノードの最終31 段に到る。なお、ペアのダミーノードは、固定長符号の
データ内容により、その一方のみが選択される。
この間入力列はシフトレジスタ14に人力されており、
最新の8 bit分の入力列が常時、パラレル出力され
ている。よって8段目のダミーノードN (N
)に到った時に、例外ビットが130 131 「1」で、かつ、フラグビットが「1」となって、アン
ドゲート15のセレクト出力により、シフトレジスタ1
4の8 bitのパラレル出力が選択される。そして、
ラッチ16によりラッチ出力されて、例外コードに続<
8bitの固定長符号がそのまま最終的な復号データと
して出力される。
最新の8 bit分の入力列が常時、パラレル出力され
ている。よって8段目のダミーノードN (N
)に到った時に、例外ビットが130 131 「1」で、かつ、フラグビットが「1」となって、アン
ドゲート15のセレクト出力により、シフトレジスタ1
4の8 bitのパラレル出力が選択される。そして、
ラッチ16によりラッチ出力されて、例外コードに続<
8bitの固定長符号がそのまま最終的な復号データと
して出力される。
なお、本実施例ではノードN2□を例外終端ノードとし
、8段のダミーノードを構成して、8 bitの固定長
符号をエスケープシーケンス処理した。
、8段のダミーノードを構成して、8 bitの固定長
符号をエスケープシーケンス処理した。
しかし、さらに、複数の例外終端ノードを設けて、固定
長符号の符号長に等しい段数のダミーノードそれぞれを
設ければ、異なる符号長の固定長符号を混在させてエス
ケープシーケンス処理できる。
長符号の符号長に等しい段数のダミーノードそれぞれを
設ければ、異なる符号長の固定長符号を混在させてエス
ケープシーケンス処理できる。
また、以上の第1及び第2の実施例では、2進木(バイ
ナリ・ツリー)を例として1デジット(1桁)を1bi
t(バイナリ−)で表現したものを説明したが、一般に
n進水(ノードがn個に枝分れする)の可変長符号の符
号方式とすることができる。この時は、1デジット(1
桁)の構成としてn進の論理素子を使用すればよく、特
に2ffl進木のときは、従来の(2進の)デジタル素
子を1デジットにつきm個パラレルに使用すれば容易に
実現できる。
ナリ・ツリー)を例として1デジット(1桁)を1bi
t(バイナリ−)で表現したものを説明したが、一般に
n進水(ノードがn個に枝分れする)の可変長符号の符
号方式とすることができる。この時は、1デジット(1
桁)の構成としてn進の論理素子を使用すればよく、特
に2ffl進木のときは、従来の(2進の)デジタル素
子を1デジットにつきm個パラレルに使用すれば容易に
実現できる。
(発明の効果)
以上詳述したように、本発明になる木構造可変長符号の
復号方式によれば、従来のように最大の符号長に依存し
た大容量の変換テーブルが不要となり、変換テーブル用
ROMの容量を小規模にすることができる。
復号方式によれば、従来のように最大の符号長に依存し
た大容量の変換テーブルが不要となり、変換テーブル用
ROMの容量を小規模にすることができる。
したがって、復号装置を簡易な構成とすることができ、
安価な民生用機器として使用することが可能となる。
安価な民生用機器として使用することが可能となる。
また、例外終端ノードとダミーノードを設けることによ
り、例外コードに続く固定長符号をエスケープシーケン
ス処理できるので、出現数のきわめて低い状態がある場
合でも効率よく可変長符号化し復号することができる。
り、例外コードに続く固定長符号をエスケープシーケン
ス処理できるので、出現数のきわめて低い状態がある場
合でも効率よく可変長符号化し復号することができる。
第1図(A)及び(B)、第2図は本発明になる復号方
式の第1の実施例を示す図で、第1図(A)は本構造(
木テーブル)を示す図、第1図(B)は論理テーブルを
示す図、第2図は復号装置の構成図、第3図(A)及び
(B)、第4図は本発明になる復号方式の第2の実施例
を示す図で、第3図(A)は木構造(本テーブル)を示
す図、第3図(B)は論理テーブルを示す図、第4図は
復号装置の構成図、第5図は例外コードを含む入力列の
一例を示す図、第6図(A)及び(B)は本構造の可変
長符号を説明するための図で、同図(A)は木構造(木
テーブル)を示す図、同図(B)は論理テーブルを示す
図、第7図は従来の符号装置の構成図である。 1・・・変換テーブル用ROM。 2・・・レジスタ、 3・・・ラッチ、 11・・・変換テーブル用ROM。 12・・・レジスタ、 13・・・データセレクタ、 14・・・シフトレジスタ、 15・・・アンドゲート、 1 6・・・ラッチ。
式の第1の実施例を示す図で、第1図(A)は本構造(
木テーブル)を示す図、第1図(B)は論理テーブルを
示す図、第2図は復号装置の構成図、第3図(A)及び
(B)、第4図は本発明になる復号方式の第2の実施例
を示す図で、第3図(A)は木構造(本テーブル)を示
す図、第3図(B)は論理テーブルを示す図、第4図は
復号装置の構成図、第5図は例外コードを含む入力列の
一例を示す図、第6図(A)及び(B)は本構造の可変
長符号を説明するための図で、同図(A)は木構造(木
テーブル)を示す図、同図(B)は論理テーブルを示す
図、第7図は従来の符号装置の構成図である。 1・・・変換テーブル用ROM。 2・・・レジスタ、 3・・・ラッチ、 11・・・変換テーブル用ROM。 12・・・レジスタ、 13・・・データセレクタ、 14・・・シフトレジスタ、 15・・・アンドゲート、 1 6・・・ラッチ。
Claims (2)
- (1)木構造で符号構成された可変長符号の中間ノード
及び終端ノードに、Nデジットのアドレスを割当て、こ
のアドレスにデータを対応させて木テーブルを構成した
復号方式であって、 親ノードが共通である子ノードには、N−1デジットの
共通のアドレスと、分枝する子ノードを区別する1デジ
ットのアドレスとからなるNデジットのアドレスを割当
て、 前記中間ノードに対しては、この中間ノードを親ノード
として分枝する次の子ノードに共通なN−1デジットの
アドレスデータと、中間ノードであることを示す1デジ
ットのフラグデータとを対応させ、 前記終端ノードに対しては、Mデジットの復号データと
、終端ノードであることを示す1デジットのフラグデー
タとを対応させると共に、 入力された任意長のデジットから成る可変長符号列によ
り、前記木テーブルのノードをトレースして、ノードに
割当てられたアドレスのデータを読出して、ノードのア
ドレスに対応したフラグデータによって中間ノードであ
るか終端ノードであるかを判別し、 中間ノードである時は、この中間ノードから分枝する子
ノードの組に共通なN−1デジットの前記アドレスデー
タと入力された可変長符号列の1デジットとからNデジ
ットのアドレスを生成して、この生成されたNデジット
のアドレスにより指定された前記データを読出して、前
記木テーブルのノードをトレースし続け、 終端ノードである時は、Mデジットの復号データを出力
して復号することを特徴とする木構造可変長符号の復号
方式。 - (2)請求項第1項記載の木構造可変長符号の復号方式
において、 例外コードに続いてmデジットの固定長符号を有する可
変長符号列の復号に際しては、前記例外コードに対応し
た例外終端ノードと、この例外終端ノードに続くm段の
ダミーノードとを木テーブルに追加設定したことを特徴
とする木構造可変長符号の復号方式。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1268810A JPH03131176A (ja) | 1989-10-16 | 1989-10-16 | 木構造可変長符号の復号方式 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1268810A JPH03131176A (ja) | 1989-10-16 | 1989-10-16 | 木構造可変長符号の復号方式 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH03131176A true JPH03131176A (ja) | 1991-06-04 |
Family
ID=17463575
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP1268810A Pending JPH03131176A (ja) | 1989-10-16 | 1989-10-16 | 木構造可変長符号の復号方式 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH03131176A (ja) |
Cited By (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH06276193A (ja) * | 1993-03-01 | 1994-09-30 | Internatl Business Mach Corp <Ibm> | 事象駆動インタフェースを構成し且つその出力を分析するシステム及び方法 |
| JPH06291765A (ja) * | 1993-03-01 | 1994-10-18 | Internatl Business Mach Corp <Ibm> | 事象駆動インタフェース及び事象ベクトルの生成方法 |
| JPH07312594A (ja) * | 1993-03-01 | 1995-11-28 | Internatl Business Mach Corp <Ibm> | 情報収集方法、情報収集アーキテクチャ、データ通信ネットワークの制御システム及びデータ通信ネットワークの制御方法 |
| JP2002252563A (ja) * | 2001-02-23 | 2002-09-06 | Yamaha Corp | ハフマン符号の復号方法、復号装置、ハフマン符号復号用テーブルおよびその作成方法 |
| JP2002344328A (ja) * | 2001-05-21 | 2002-11-29 | Ricoh Co Ltd | 復号化装置、プログラム及び可変長符号の復号方法 |
| JP2011244447A (ja) * | 2010-05-19 | 2011-12-01 | Hon Hai Precision Industry Co Ltd | ハフマン木の記憶方法及びアレイでデータデコーディングする方法 |
-
1989
- 1989-10-16 JP JP1268810A patent/JPH03131176A/ja active Pending
Cited By (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH06276193A (ja) * | 1993-03-01 | 1994-09-30 | Internatl Business Mach Corp <Ibm> | 事象駆動インタフェースを構成し且つその出力を分析するシステム及び方法 |
| JPH06291765A (ja) * | 1993-03-01 | 1994-10-18 | Internatl Business Mach Corp <Ibm> | 事象駆動インタフェース及び事象ベクトルの生成方法 |
| JPH07312594A (ja) * | 1993-03-01 | 1995-11-28 | Internatl Business Mach Corp <Ibm> | 情報収集方法、情報収集アーキテクチャ、データ通信ネットワークの制御システム及びデータ通信ネットワークの制御方法 |
| JP2002252563A (ja) * | 2001-02-23 | 2002-09-06 | Yamaha Corp | ハフマン符号の復号方法、復号装置、ハフマン符号復号用テーブルおよびその作成方法 |
| JP2002344328A (ja) * | 2001-05-21 | 2002-11-29 | Ricoh Co Ltd | 復号化装置、プログラム及び可変長符号の復号方法 |
| JP2011244447A (ja) * | 2010-05-19 | 2011-12-01 | Hon Hai Precision Industry Co Ltd | ハフマン木の記憶方法及びアレイでデータデコーディングする方法 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5696507A (en) | Method and apparatus for decoding variable length code | |
| KR100286195B1 (ko) | 가변장 코드로 엔코드된 신호의 디코딩 장치 | |
| US3675211A (en) | Data compaction using modified variable-length coding | |
| US5818368A (en) | Method and apparatus for lossless digital data compression | |
| JPH03274920A (ja) | 信号符号化装置および信号復号化装置、並びに信号符号化復号化装置 | |
| KR0138971B1 (ko) | 허프만 부호 복호회로 | |
| US20220114454A1 (en) | Electronic apparatus for decompressing a compressed artificial intelligence model and control method therefor | |
| US5594435A (en) | Permutation-based data compression | |
| US5394144A (en) | Variable length code decoding apparatus | |
| JPH01195770A (ja) | 画像データ圧縮伝送方法 | |
| US6809665B2 (en) | Apparatus and method for decoding variable length code | |
| JP2746109B2 (ja) | ハフマン符号復号化回路 | |
| JPH10341167A (ja) | 可変長符号復号化回路 | |
| JPH0479421A (ja) | 可変長符号化装置および可変長復号化装置 | |
| JPH03131176A (ja) | 木構造可変長符号の復号方式 | |
| US6778107B2 (en) | Method and apparatus for huffman decoding technique | |
| JP3429623B2 (ja) | 高速可変長符号復号化装置 | |
| JP3304745B2 (ja) | 可変長符号復号化器 | |
| CN100581258C (zh) | 霍夫曼解码方法和霍夫曼解码装置 | |
| JP2537551B2 (ja) | 可変長符号復号回路 | |
| JPH08167855A (ja) | ハフマン復号化回路 | |
| JP3199292B2 (ja) | ハフマン符号の符号化でのランレングス抽出方法、ハフマン符号変換方法およびmh符号化処理方法 | |
| KR100268831B1 (ko) | 고속 처리 가변 길이 코덱 장치 | |
| JPH0255987B2 (ja) | ||
| JP3229690B2 (ja) | 可変長符号復号器 |