JPH0490267A - 可変長符号の復号回路 - Google Patents

可変長符号の復号回路

Info

Publication number
JPH0490267A
JPH0490267A JP20395890A JP20395890A JPH0490267A JP H0490267 A JPH0490267 A JP H0490267A JP 20395890 A JP20395890 A JP 20395890A JP 20395890 A JP20395890 A JP 20395890A JP H0490267 A JPH0490267 A JP H0490267A
Authority
JP
Japan
Prior art keywords
bits
data
decoding
memory
table memory
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
Application number
JP20395890A
Other languages
English (en)
Inventor
Sadafumi Araki
禎史 荒木
Hirofumi Sakagami
弘文 阪上
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co 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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP20395890A priority Critical patent/JPH0490267A/ja
Publication of JPH0490267A publication Critical patent/JPH0490267A/ja
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 [産業上の利用分野] この発明は、ハフマン符号のような可変長符号の高速復
号処理を可能とする可変長符号の復号回路に関し、ファ
クシミリ装置におけるMH符号。
MR符号、MMR符号等の復号や電子ファイリングシス
テムにおける可変長符号の復号等に適用して好適なもの
である。
〔従来の技術〕
少ないビット数で能率よくディジタル信号の伝送または
記録を行うために、出現確率の高いデータを表す符号列
は短く、出現確率の低いデータを表す符号列は長く設定
し、全体としての平均符号長が最小となるように設定す
る符号化方式が知られている。このような符号列の長さ
が一定でない符号は可変長符号または不等長符号と称さ
れ、代表的なものにハフマン符号がある。
第5図は、可変長符号の復号回路の従来例を示すブロッ
ク図である。
この復号回路は、入力端子10から入力される可変長符
号の符号列を、アドレス生成回路11で一定のビット数
にまとめ、この一定のビット数を1ワードのアドレスデ
ータとして復号テーブルメモリ12をアクセスする。復
号テーブルメモリ12には2種類のテーブルが格納され
ており、初めにアクセスする第1のテーブルには、各ア
ドレスに対して復号終了/未了を表ずフラグ情報が記憶
されている。復号終了のフラグ情報を持つアドレスには
、そのアドレスに対応する符号の復号データおよび符号
長データが記憶されており、復号未了情報を持つアドレ
スには、次にアクセスすべき第2のテーブルのアドレス
が記憶されている。
アドレス生成回路11から出力される1ワードのアドレ
スデータによってテーブルメモリ12の第1のテーブル
をアクセスした結果、復号が終了すれば、対応する符号
の復号データおよび符号長データがラッチ回路13にラ
ッチされ、復号データはデータ生成回路14および制御
回路15に、符号長データはアドレス生成回路11にそ
れぞれ供給される。アドレス生成回路11では、制御回
路15の制御のちとに入力端子10から入力される可変
長符号を符号長データ分シフトして次にアクセスすべき
アドレスデータのワード揃えを行う。
こうL7て新たなアドレスデータが確定すると、それを
もとに再び第1のテーブルをアクセスして前述の処理を
繰り返す。
■ワードのアドレスデータによって復号テーブルメモリ
12の第1のテーブルをアクセスした結果、復号が未了
であれば、次にアクセスする第2のテーブルのアトし・
スデータがラッチ回路13にラッチされてアドレス生成
回路11に供給される。
アドレス生成回路11では、制御回路15の制御のちと
に、受は取ったアドレスデータに入力端子10から入力
される符号列の1ビツトを付加して新たなアドレスデー
タを生成し、第2のテーブルをアクセスする。第2のテ
ーブルには、各アドレスに対して復号終了/未了を表す
フラグ情報があり、復号終了のフラグ情報を持つアドレ
スにはそのアドレスに対応する復号データが記憶されて
おり、復号未了情報を持つアドレスには再びアクセスす
る第2のテーブルのアドレスデータが記憶されている。
第2のテーブルをアクセスした結果、復号が終了すれば
復号データをデータ生成回路14に出力する。復号未了
であれば再び第2のチーフルをアクセスするために次の
アドレスデータをアドレス生成回路11に出力する。ア
ドレス生成回路11では、受は取ったアドレスデータに
入力端子10から入力される符号列の1ビットを付加し
て新たなアドレスデータを生成し、前述の処理を繰り返
す。
このように、この従来例では、復号テーブルメモリとし
て1ワードを検索アドレスデータとするワード検索用復
号テーブル(第1のテーブル)と、前回の検索結果と入
力符号の1ビツトとを検索アドレスデータとするビット
検索用復号テーブル(第2のテーブル)とを用い、1ワ
ードで識別が可能な符号に対してはワード検索用復号テ
ーブルを検索して復号データと符号長データとを得、こ
の得られた符号長データにしたがって次に復号する符号
のワード揃えを行い、識別が不可能なものについてはビ
ット検索用復号テーブルを複数回検索して復号データを
得るという構成を取ることによって、統計的に発生頻度
の高い1ワード以下の短い符号については1回のワード
検索で復号し、また、統計的に発生頻度の低い1ワード
を超える長い符号についてはビット単位の検索を行うこ
とによって復号し、復号処理の高速化を図ると共に、テ
ーブル容量を小さくするようにしている。
〔発明が解決しようとする課題〕
しかし、前述の従来例では、第1のテーブルをアクセス
した結果、復号未了であった場合は、復号終了まで入力
符号の1ビツトに対して1回ずつ第2のテーブルをアク
セスしなければならないため、復号処理に時間が掛ると
いう不都合がある。
この不都合を避けるために、テーブルを2種類に分けず
に1回のアクセスで常に復号が終了するようにする方法
もある。しかし、そのためには1ワードのビット数を可
変長符号の最大ビット数とし、その1ワードをそのまま
アドレスとしてテーブルをアクセスする必要がある。と
ころが、この方法では、短い符号長の符号に対しても最
大符号長と同じビット数のアドレスを確保しなければな
らないため、メモリ空間が冗長になりすぎるという不都
合がある。
この発明は、復号時間が短く、且つ復号テーブルメモリ
のメモリ空間が小さくなるような可変長符号の復号回路
を提供することを目的とする。
〔課題を解決するための手段] この発明による可変長符号の復号回路は、入力可変長符
号のビットを、指定されるシフトビット数分シフトして
検索済みのビットを除去し、新たな符号ビットを加えて
最大符号ビット数の1ワードに揃えるワード揃え手段と
、上記1ワードのうちの予め定められたビット数の上位
ビットからなるアドレスに対し復号データ、シフトビッ
ト数データおよびメモリセレクトデータを出力する第1
の復号テーブルメモリと、上記1ワードから上記上位ビ
ットを取り除いた下位ビットからなるアドレスに対し復
号データおよびシフトビット数データを出力する少なく
とも一つ以上の第2の復号テーブルメモリと、上記メモ
リセレクトデータによって、上記複数の復号テーブルメ
モリから出力される上記復号データおよび上記シフトビ
ット数データの中から共通の復号テーブルメモリから出
力される復号データおよびシフトビット数データをそれ
ぞれ一つずつ選択して出力するセレクタとから構成され
る。
また、この発明は、上記少なくとも一つ以上の第2の復
号テーブルメモリに関し、上記下位ビットの上位からそ
れぞれの復号テーブルメモリから出力される最大シフト
ビット数データから上記上位ビットのビット数を差し引
いたビット数分のみを、それぞれの復号テーブルメモリ
の有効アドレスビットとするように構成される。
〔作 用〕
この発明の構成において、入力可変長符号lワード(例
えば、8ビツト)のうちの上位ビット(例工ば、4ビツ
ト)で第1の復号テーブルメモリをアクセスし、復号デ
ータが得られれば、この復号データを出力データとして
出力し、この復号データの符号長をシフトビット数デー
タとしてワード揃え手段に出力する。第1の復号テーブ
ルメモリで復号データが得られない場合は、すなわち、
可変長符号が5ビツト以上の場合は、第1の復号テーブ
ルメモリから出力されるメモリセレクトデータによって
第2の復号テーブルメモリを選択する。第2の復号テー
ブルメモリは入力可変長符号1ワードのうちの下位4ビ
ツトでアクセスされ、5ビツト以上(最大8ビツト)の
可変長符号に対応する復号データを出力データとして出
力すると共に、この復号データの符号長をシフトビット
数データとしてワード揃え手段に供給する。
ワード揃え手段では、入力可変長符号のビットを、シフ
トビット数データによるビット分シフトして検索済みの
ビットを除去し、新たな符号ビットを加えて1ワードに
揃え、前述の復号動作を繰り返す。
このように、1ワードの上位ビット(4ビツト)で復号
できる可変長符号は第1の復号テーブルメモリで復号し
、上位ビットを超えるビット数の可変長符号は第2の復
号テーブルメモリで復号する。
二のようにすれば、いかなる可変長符号に対しても1回
のテーブルアクセスで復号処理することができ、復号時
間を大幅に短縮することができると共に、復号テーブル
メモリを複数に分割することによってメモリの冗長性を
減らすことができ、メモリ空間を小さくすることができ
る。
〔実施例] 第1図は、この発明による可変長符号の符号回路の一実
施例を示すブロック図である。
この実施例は、入力端子1からビットシリアルに入力さ
れる可変長符号を、アドレス生成回路2によって最大ビ
ット数の1ワードにまとめ、それを適当なビット数ずつ
上位ビットと下位ビットとに分け、上位ビットは第1の
復号テーブルメモリとしてのテーブルメモリ3aのアド
レスとして、下位ビットは第2の復号テーブルメモリと
してのテーブルメモリ3b乃至3mのアドレスとして供
給する。
テーブルメモリ3aには、各アドレスに対して定められ
たビット数のメモリセレクトデータが格納されており、
その中のある特定の1種類のメモリセレクトデータの格
納されているアドレスには、対応する復号データおよび
シフトビ・ノド数データが格納されている。他のメモリ
セレクトデータが格納されているアドレスでは復号デー
タおよびシフト・ビット数データが不定となっている。
また、テーブルメモリ3b〜3mには、各アドレスに対
してそれぞれ対応する復号データおよびシフトビット数
データが格納されている。
テーブルメモリ33〜3mから出力される復号データD
1〜Dm  、シフトビット数データ31〜Smのうち
、シフトビット数データ31〜Smは第1のセレクタ4
aに入力され、復号データD1〜Dmは第2のセレクタ
4bに入力される。また、テーブルメモリ3aから出力
されるメモリセレクトデータMSは、第1および第2の
セレクタ4aおよび4bの各セレクト端子に入力され、
第1のセレクタ4aでは、各テーブルメモリ3a〜3m
から供給されるシフトビット数データ31〜Smの1つ
を選択してアドレス生成回路2に出力し、第2のセレク
タ4bでは、各テーブルメモリ3a〜3mから供給され
る復号データD1〜Dmの1つを選択して出力端子5に
出力する。従って、第1および第2のセレクタ4aおよ
び4bで選択される各データは、同一のテーブルメモリ
から出力されるデータとなる。アドレス生成回路2では
、セレクタ4aから供給されるシフトビット数データに
よって指定されるビット数分、入力符号の各ビットを上
位ヘシフトし、次にアクセスすべきアドレスのワード揃
えを行い、前述の復号処理を繰り返す。
次に、第2図に示す可変長符号の例を参照しながら、こ
の実施例の具体的な復号動作について説明する。なお、
この実施例では、可変長符号の最大ビット数を8ビツト
とし、上位および下位ビットのビット数をそれぞれ4ビ
ツトとし、また、テーブルメモリ3a〜3mの数を「4
」としくすなわち、m=d)、この4つのテーブルメモ
リ3a〜3dは、第3図に示すように構成されているも
のとする。また、テーブルメモリ3aから出力されるメ
モリセレクトデータMSはコード゛00゛′“01”、
 “′10““11パでそれぞれテーブルメモリ3 a
 t 3 b + 3 c t 3 dを指定し、第1
および第2のセレクタ4aおよび4bは、このコードに
基づいて各テーブルメモリ3a〜3dの各出力を選択す
るものとする。
この構成において、入力端子1に入力される可変長符号
が”001101100001001・・・であるとす
ると、まず、先頭の1ワード(8ビツト)“’0011
0110’”の上位4ビツト“0011“をアドレスと
してテーブルメモリ3aをアクセスし、下位4ビツト“
0110’“をアドレスとしてテーブルメモリ3b〜3
dをそれぞれアクセスする。すると、第3図から明らか
なように、テーブルメモリ3aからは、復号データ「A
」。
シフトビット数データ[2J 、メモリセレクトデータ
゛00“がそれぞれ出力される。また、他のテーブルメ
モリ3bt3C93dからは復号データ[GJ +  
’ IJ t  r□、 、シフトビット数データ「5
」、「5」  「7」がそれぞれ出力される。
このとき、テーブルメモリ3aから出力されるメモリセ
レクトデータMSは“00゛なので、セレクタ4aおよ
び4bで選択されるデータは、テーブルメモリ3aから
出力されるデータとなり、セレクタ4aからはテーブル
メモリ3aから出力されるシフトビット数データ「2」
が、セレクタ4bからは同じくテーブルメモリ3aから
出力される復号データ「A」がそれぞれ選択されて出力
される。従って、この復号処理では、可変長符号“00
パがテーブルメモリ3aによって復号されて復号データ
「A」として出力される。
セレクタ4aから出力されたシフトビット数データ「2
」はアドレス生成回路2に入力される。
アドレス生成回路2では、入力端子1から入力される入
力符号を、2ビツト上位ヘシフトして“1101100
001001・・・“とし、さらに、先頭の1ワード“
’11011000″′の上位4ビ・ンド1101”で
テーブルメモリ3aをアクセスし、下位4ビツト“”1
000’”でテーブルメモリ3b〜3dをそれぞれアク
セスする。第2図から明らかなように、上位4ビツト“
1101 ”に相当する可変長符号は存在しないので、
テーブルメモリ3aから出力される復号データおよびシ
フトビット数データは不定となり、メモリセレクトデー
タMSとしてテーブルメモリ3bを指定するコード“”
01”が出力される。テーブルメモリ3bからは復号デ
ータ「H」、シフトビット数データ「5」がそれぞれ出
力されるので、これらデータがセレクタ4aおよび4b
で選択されてセレクタ4aからは、シフトビット数デー
タ「5」、セレクタ4bからは復号データrH,がそれ
ぞれ出力される。従って、この復号処理では、可変長符
号”11011″がテーブルメモリ3bによって復号さ
れて復号データrH,として出力される。
アドレス生成回路2は、シフトビット数データ「5」に
よって入力符号列を5ビツト上位ヘシフトし、”000
01001・・・”として以下同様の復号動作を続けて
いく。この結果、出力端子5からは復号データrAJ(
’“00”)   ’AJ(“00” )、rC」 (
”100′)、・・・が順次出力される。
ところで、第2図に示す可変長符号に対して最大符号ビ
ット数8ビツトを1ワードとしてメモリをアクセスする
には、256 (−2” )ワードのメモリ空間が必要
となる。しかし、第3図に示すこの実施例による復号テ
ーブルメモリを用いれば、64 (=2’ X4)ワー
ドのメモリ空間で済む。
しかも、復号テーブルメモリ3bのデータはアドレスの
最上位ビットだけで識別でき、復号テーブルメモリ3c
のデータはアドレスの上位2ビツトだけで識別できるの
で、この実施例の復号テーブルメモリには未だ冗長性が
残っていることになる。
次に、復号テーブルメモリ3b〜3mのアドレスビット
に関し、アクセスする復号テーブルメモリに格納されて
いる最大シフトビット数からアドレス生成回路2の上位
ビット数を差し引いたビット数分だけを各テーブルメモ
リの有効アドレスビットとする実施例について説明する
この実施例の場合には、復号テーブルメモリ3b〜3m
の構成が第3図と異なり、第4図に示すようになる。す
なわち、アドレス生成回路2で生成される上位ビット数
を「4」、復号テーブルメモリ3bに格納されている最
大シフトビット数を「5」とすると、復号テーブルメモ
リ3bの有効アドレスビット数はrl、(=5−4)と
なる。
同様にして、テーブルメモリ3Cおよび3dの有効アド
レスビット数は「2J  (−6−4)および’4J 
 (=8−4)となる。従って、アドレス生成回路2の
下位4ビツトによってテーブルメモリ3b〜3dをアク
セスする場合は、それぞれ下位4ビツトの上位1ビツト
でテーブルメモリ3bをアクセスし、上位2ビツトでテ
ーブルメモリ3Cをアクセスし、全4ビツトでテーブル
メモリ3dをアクセスする。
この実施例において、前述と同様に、入力符号“001
101100001001−・・・・”′が到来すると
、先頭の1ワード“00110110”の上位4ビツト
″0011″で復号テーブルメモリ3aをアクセスする
のは前述の例と同様であるが、テーブルメモリ3bをア
クセスする場合は、下位4ビツト“011O”の上位1
ビツト“011でアクセスし、テーブルメモリ3cをア
クセスする場合は下位4ビツトの上位2ビツト“o1パ
でアクセスし、テーブルメモリ3dをアクセスする場合
は下位4ビ・ントの全4ビツトでそれぞれアクセスする
。その他の動作については前述の実施例と同様である。
このようにすれば、復号テーブルメモリのワード数は、
38 (=2’ +2’ +2” +2’ )ワードと
なり、前述の実施例よりもメモリ空間をさらに少なくす
ることができる。
なお、前述した可変長符号の形や、1ワードのビット数
、上位および下位ビットのビット数、復号テーブルメモ
リの数および構成、メモリセレクトデータによって選択
されるテーブルメモリの出力データ等は、前述した実施
例に限るものではない。
この発明によれば、いかなる可変長符号に対しても1回
のテーブルアクセスで復号処理することができるので、
復号時間を大幅に短縮することができる。また、復号テ
ーブルメモリを複数に分割したことによってメモリの冗
長性を減らすことができ、メモリ空間を小さくすること
ができる。
【図面の簡単な説明】
第1図はこの発明による可変長符号の復号回路の一実施
例を示すブロック図、 第2図は可変長符号の具体例を示すテーブル、第3図は
第1図における復号テーブルメモリの構成図、 第4図は復号テーブルメモリの他の構成図、第5図は従
来の可変長符号の復号回路の例を示すブロック図である
。 2・・・アドレス生成回路、3a〜3m・・・復号テー
ブルメモリ、43〜4b・・・セレクタ。 〔発明の効果] 従来のぐ14田鈴 第 図 町奮表荷(め例 第 図 チー1゛ルX/もり 30 CG) 省ヂjし7モソ3b (b) テープ;しヌ)ソ3C (C) チーゲルメモソ3d (d) テープlし×もソ〜溝へ已 第 図

Claims (2)

    【特許請求の範囲】
  1. (1)入力可変長符号のビットを、指定されるシフトビ
    ット数分シフトして検索済みのビットを除去し、新たな
    符号ビットを加えて最大符号ビット数の1ワードに揃え
    るワード揃え手段と、上記1ワードのうちの予め定めら
    れたビット数の上位ビットからなるアドレスに対し復号
    データ、シフトビット数データおよびメモリセレクトデ
    ータを出力する第1の復号テーブルメモリと、 上記1ワードから上記上位ビットを取り除いた下位ビッ
    トからなるアドレスに対し復号データおよびシフトビッ
    ト数データを出力する少なくとも一つ以上の第2の復号
    テーブルメモリと、上記メモリセレクトデータによって
    、上記複数の復号テーブルメモリから出力される上記復
    号データおよび上記シフトビット数データの中から共通
    の復号テーブルメモリから出力される復号データおよび
    シフトビット数データをそれぞれ一つずつ選択して出力
    するセレクタと、からなることを特徴とする可変長符号
    の復号回路。
  2. (2)上記少なくとも一つ以上の第2の復号テーブルメ
    モリに関し、上記下位ビットの上位からそれぞれの復号
    テーブルメモリから出力される最大シフトビット数デー
    タから上記上位ビットのビット数を差し引いたビット数
    分のみを、それぞれの復号テーブルメモリの有効アドレ
    スビットとすることを特徴とする請求項1記載の可変長
    符号の復号回路。
JP20395890A 1990-08-02 1990-08-02 可変長符号の復号回路 Pending JPH0490267A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP20395890A JPH0490267A (ja) 1990-08-02 1990-08-02 可変長符号の復号回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP20395890A JPH0490267A (ja) 1990-08-02 1990-08-02 可変長符号の復号回路

Publications (1)

Publication Number Publication Date
JPH0490267A true JPH0490267A (ja) 1992-03-24

Family

ID=16482475

Family Applications (1)

Application Number Title Priority Date Filing Date
JP20395890A Pending JPH0490267A (ja) 1990-08-02 1990-08-02 可変長符号の復号回路

Country Status (1)

Country Link
JP (1) JPH0490267A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101873499A (zh) * 2005-05-13 2010-10-27 高通股份有限公司 用于改进的多媒体解码器的方法和设备
JP2011205611A (ja) * 2010-03-25 2011-10-13 Mediatek Inc 低複雑度のビデオ復号器

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101873499A (zh) * 2005-05-13 2010-10-27 高通股份有限公司 用于改进的多媒体解码器的方法和设备
JP2011109678A (ja) * 2005-05-13 2011-06-02 Qualcomm Inc 改良されたマルチメディアデコーダに関する方法及び装置
JP2013118656A (ja) * 2005-05-13 2013-06-13 Qualcomm Inc 改良されたマルチメディアデコーダに関する方法及び装置
JP2011205611A (ja) * 2010-03-25 2011-10-13 Mediatek Inc 低複雑度のビデオ復号器

Similar Documents

Publication Publication Date Title
US6876774B2 (en) Method and apparatus for compressing data string
US6982661B2 (en) Method of performing huffman decoding
US3311887A (en) File memory system with key to address transformation apparatus
KR20110090972A (ko) 고속 직렬 링크를 이용하는 메모리 시스템의 코딩 시스템
JP2002252563A (ja) ハフマン符号の復号方法、復号装置、ハフマン符号復号用テーブルおよびその作成方法
US4800535A (en) Interleaved memory addressing system and method using a parity signal
JPS60140981A (ja) 符号語システムのデジタル符号語を復号する方法および装置
USRE45334E1 (en) System and method for encoding data transmitted on a bus
JP2853784B2 (ja) 符号・復号化装置
EP0647034B1 (en) A variable word length code decoding method, and a decoder for performing the same
JPH0490267A (ja) 可変長符号の復号回路
US20030052802A1 (en) Method and apparatus for huffman decoding technique
EP1192544A1 (en) Error correction circuit and method for a memory device
JPH0451720A (ja) 可変長符号復号装置
JPH03179562A (ja) データ記録装置及びデータ編集方法
JPH09246990A (ja) 可変長符号復号化器
JP2882714B2 (ja) 状態選択装置
JP2842094B2 (ja) ハフマン復号回路
JP3229690B2 (ja) 可変長符号復号器
JPH0377708B2 (ja)
JP2757716B2 (ja) ハフマン符号復号回路
JP3113765B2 (ja) 可変長符号デコード回路
JP3009007B2 (ja) 2元符号復号回路
JP3087488B2 (ja) データ復元回路
JPS5827240A (ja) フアイル記憶方式