JPH053185B2 - - Google Patents

Info

Publication number
JPH053185B2
JPH053185B2 JP58031172A JP3117283A JPH053185B2 JP H053185 B2 JPH053185 B2 JP H053185B2 JP 58031172 A JP58031172 A JP 58031172A JP 3117283 A JP3117283 A JP 3117283A JP H053185 B2 JPH053185 B2 JP H053185B2
Authority
JP
Japan
Prior art keywords
data
code
bit
bits
length
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.)
Expired - Lifetime
Application number
JP58031172A
Other languages
English (en)
Other versions
JPS59156073A (ja
Inventor
Yoshikazu Yokomizo
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP3117283A priority Critical patent/JPS59156073A/ja
Priority to CA000447989A priority patent/CA1228925A/en
Priority to DE19843406624 priority patent/DE3406624A1/de
Priority to GB08404879A priority patent/GB2138604B/en
Priority to FR8402961A priority patent/FR2541836B1/fr
Publication of JPS59156073A publication Critical patent/JPS59156073A/ja
Priority to US07/018,868 priority patent/US4716471A/en
Publication of JPH053185B2 publication Critical patent/JPH053185B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/005Statistical coding, e.g. Huffman, run length coding
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion 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/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
    • H03M7/42Conversion 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/425Conversion 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)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)

Description

【発明の詳細な説明】
本発明は画像フアイル又はフアクシミリ装置の
データ復号装置に関する。特にモデイフアイド・
ハフマン(M・H)符号によりランレングス符号
化されて記憶ないしは伝送された画像信号の高速
復号化に有効である。 従来この種の装置においては復号変換の処理速
度が一定ではなく、従つて副走査速度が可変速の
プリンタ装置を必要とする欠点があつた。このた
めもし副走査速度が一定の高速静電プリンタに出
力する時は一旦1ページ分のバツフアメモリに展
開して行なう必要があつた。又マイクロプロセツ
サを用いたソフトウエア処理で行なつていたの
で、高速化に限界があつた。 又、特開昭55−79565号公報の様に、MH符号
の復号装置をハードウエアで構成したものも知ら
れている。しかしながら、特開昭55−79565号公
報のものでは、MH符号をビツトシリアルにシフ
トレジスタに入力させ、1つのMH符号の復号毎
にシフトレジスタ内のMH符号をビツトシリアル
にシフトさせながらROMをアクセスして、MH
符号の復号を行なうものである。この様な、構成
では、シフトレジスタにビツトシリアルに入力さ
せるので、MH符号の入力に時間がかかるだけで
なく、復号毎にMH符号の先頭をシフトレジスタ
内の決められた位置にビツトシリアルにシフトす
るので、復号用のROMをアクセスまでに時間が
かかつてしまう。 本発明は、上述した問題点を解決し、不定長の
符号データを高速に復号処理可能なデータ復号装
置の提供を目的としたものである。 即ち、本発明は、不定長の符号データを格納す
るためのメモリと、上記メモリから不定長符号デ
ータを所定ビツト数パラレルに読み出す読出手段
と、上記所定ビツト数パラレルで上記読出手段に
より読み出される不定長符号データを複数連続し
て記憶する格納手段と、上記格納手段に記憶され
た不定長符号データから所望のnビツトのデータ
をパラレルに抽出する抽出手段と、上記抽出手段
によつて抽出されたnビツトパラレルのデータに
よりアクセスされ、そのアクセスに応じて復号デ
ータ及び復号化されたコード長を出力する変換テ
ーブルと、上記復号化されたコード長を逐次加算
する加算手段と、上記加算手段の加算結果に応じ
て、上記抽出手段により抽出するデータ部分を変
更し、上記メモリから新たな不定長符号データを
読み出して上記格納手段に記憶させる手段を有す
ることを特徴とするデータ復号装置である。 本発明によれば、不定長の符号データを所定ビ
ツト数パラレルでメモリから読み出して格納手段
に複数連続して記憶させ、格納手段の不定長符号
データから所望のnビツトのデータをパラレルに
抽出して復号のための変換テーブルをアクセスす
る構成としたので、従来の様にビツトシリアルに
シフトする必要がなく、高速に不定長符号データ
の復号処理を行なうことができる。 次に図示の実施例にもとづき本発明を詳細に説
明する。 第1図は本発明によるMH符号の復号器の概略
ブロツク図である。図中1は画面メモリでここに
はMH符号化された画像信号が記憶されている。
1として画像フアイルメモリがある。ここからの
データは24ビツトパラレルで出力又はその型式に
変換されて出力される。2はリードアドレスカウ
ンタで画面メモリ1のリードアドレスを与えるた
めのカウンタである。 3はパラレル・シリアル変換器である。画面メ
モリ1からの出力データ線Ooは相対速度を上げ
るために24ビツト構成になつている。3は24ビツ
トのデータを8ビツトのデータ3個に分割し8ビ
ツト毎にシリアル変換するためのパラレル・シリ
アル変換器である。従つてこの変換回路3は8ビ
ツトのデータを3回シフトしたらリードアドレス
カウンタ2を1個歩進するための3進カウンタ1
01(第2図)を含んでいる。従つて24ビツトを
そのままシフトレジスタにより変換することによ
る時間遅れを防止できる。 4はトライステート・バツフア群で、シリアル
変換されたデータ14の中から、オフセツトレジ
スタ9の示すオフセツト値15のデータを先頭とす
る連続した最大13個のデータをラン長デコード
ROM5及びコード長デコードROM7に入力する
ためのものである。ここでオフセツト値とは8ビ
ツト毎にパラレルシフトされたシリアルデータ
D0〜D25のどの位置からMH符号を抜き取るかを
示すデータである。従つて具体的には13ビツトの
トライステートバツフアを複数個(14個)用意し
てその入力線は1ビツトずつずらして信号線14
に接続し、出力線はワイヤードオア接続すること
によつて構成している。そのトライステートバツ
フア群の中の1個を選択すれば任意のデータシフ
トが実行できる。つまりバツフアのどれか1つを
コード長毎にイネブルすると13ビツト内のコード
データを瞬時に得ることができる。オフセツト値
15をバツフア選択信号線16に変換するのがオフ
セツトデコーダ10である。従つて8ビツト構成
であつてもMHの可変調符号を簡単にかつ高速で
読取ることができる。 ラン長デコードROMに入力されたMH符号は
ここでラン長に変換される。すなわちラン長デコ
ーダROMは、MH符号をアドレスにし、それに
対応するラン長を出力データとする様に構成した
変換テーブルである。 ROM出力のラン長はラン長カウンタ6によつ
て計数され、黒又は白のビツト数、白ビツト数が
出力される。 ラン長カウンタ6の計数終了を示す信号リツプ
ルキヤリアウト(RCO)で次のラン長をロード
すると共にトグルフリツプフロツプ13を反転し
てその出力とカウンタ出力とにより黒ビツト群、
白ビツト群が交互に連続したVideo信号を得る。 7はコード長デコードROMで、MH符号をア
ドレスにし、そのMH符号のコード長を出力デー
タとする様に構成した変換テーブルである。コー
ド長17は加算器群8を介してオフセツトレジス
タ9に加算される。いま入力C,D及びEが共に
〔0〕の時は、もとのオフセツト値15が加算器群
8のA入力に入り、コード長17がB入力に入つ
ているので、オフセツトレジスタにクロツクが印
加されると新たなオフセツト値15は、 新たなオフセツト値=元のオフセツト値+コ
ード長 となる。この値は今デコードしたMH符号の次の
MH符号の先頭オフセツト値を与える。つまり前
にデコードされたMHの符号長分だけシフトした
所のデータが読めて次のMHが判断できる。この
様にして長さが一定でないMH符号のデコードが
次々に行なえる訳である。 ところでパラレルシリアル変換器3の長さは有
限であるから、補正が必要である。これはオフセ
ツト値15が〔8〕を越えた場合にコンパレータ1
1で判定してパラレルシリアル変換器3を8ビツ
ト歩進すると共に加算器群8のE入力に〔−8〕
を印加する。この場合のオフセツト値は 新たなオフセツト値=元のオフセツト値+コ
ード長−8 となつてデータが8ビツトシフトすると共にオフ
セツト値も同じだけシフトするからデータとオフ
セツト値の相対位置は不変である。8ビツト歩進
は前述の如くバツフア、デコード、3進カウンタ
で行ない、3進カウンタが〔2〕になる毎にメモ
リを読出す。従つてオフセツトレジスタ9から見
たシリアルデータ14は無限に長いシリアルデー
タであるかの様に見える。 EOL符号(1ライン終了を示す同期信号)に
ついては専用のデコーダでデコードする。すなわ
ちEOLデコーダ群12であり、これは後述の如
く前述バツフア群4と同様13ヶのPALで構成し、
1ビツトづつシフトしたシリアルデータをデコー
ドし、どれかのPALがEOLを検出すると13入力
オアゲートによりEOLを出力する。EOLデコー
ダ群のどれかがEOL信号をデコードした時には
EOL検出信号線18がHiレベルになりトグルフ
リツプフロツプ13をリセツトすると共に加算器
群8の入力のうちA,B及びEを無視してC及び
Dのみ加算出力する様にする。CにはEOL符号
の符号長である〔12〕が、またDにはEOL符号
が検出されたオフセツト値19が印加される。この
結果オフセツト値15の値は次の様になる。 新たなオフセツト値=EOLデコーダ群のオ
フセツト値+12 EOL符号だけ専用のハードウエアでデコード
するのは誤動作があつた場合にエラーをその行だ
けで食い止め全画面にエラーが波及するのを防止
するためである。もしエラーがなければ加算器群
8の入力はEOL検出時は、BとCは当然等しく、
またDはAとEの和に等しくなる。 この様にしてオフセツトレジスタの再びセツト
によりEOL符号の次のMH符号のぬきとり位置を
与えることができる。 次に第2図を用いて詳細に説明する。 第1図と共通の構成要素には同一の番号を付与
してある。画面メモリ(図示せず)からの出力
(1ワード24ビツト)を一旦Dラツチ100でラ
ツチする。ラツチするタイミングは3進カウンタ
101のリブルキヤリアウトがHiになりかつコ
ンパレータ11のA>B出力がHiになつた時で
ある。ラツチされたデータD0〜D23を8ビツトづ
つ分けトライステートバツフア102,103及
び104を介してDラツチ105にワイヤードオ
アで入力されている。Dラツチ105,106及
び107により8ビツトパラレル、バイトシリア
ルの形でパラレル・シリアル変換される。よつて
バツフア108,109…には各々D0〜D7,D1
〜D8…が格納される。シリアル変換された出力
D0〜D23の内トライステート・バツフア群4で任
意の連続した8ビツトが選択される。たとえばト
ライ・ステート・バツフア110が選択されれば
D2〜D9がラン長デコードROM5及びコード長デ
コードROM7側に伝達される。MH符号のコード
長は最大13であるから本来このトライステート・
バツフア群は13ビツト長のものが必要だがMH符
号の特徴により先頭の連続した1個、4個または
5個の“0”を別の回路でデコードする事により
8ビツトに節約できる。112が先頭の連続した
“0”をデコードするためのPALである。PALは
プログラマブル・アレー・ロジツクの略で米国モ
ノリシツク・メモリーズ社の商標である。ここに
たとえばPAL18L4というデバイスを2個用いて
表1に示す様な論理でプログラムすればオフセツ
トレジスタ9からのオフセツト値の示す先頭アド
レスから0が1個もなければ0、少なくとも0が
1個ある時は1、0が4個ある時は2、0が5個
ある時は3なる零ビツト判定出力信号を出力す
る。この値はデータセレクタ113に入力されか
つ、2つのROMに2つのアドレス選択データと
して入力される。データセレクタ113は零ビツ
ト判定信号をもとに2進数
〔0〕,〔1〕,〔4〕及
び〔5〕を選択して出力する。データセレクタ1
13の出力は加算器114でオフセツト値と加算
されてオフセツトデコーダ10に印加される。従
つてトライステートバツフア群4の中から選択さ
れるバツフアは、データセレクタ113の出力値
分だけさらにシフトした所から、例えば0が1つ
の時は右へ1つバツフアをとばしたバツフアから
連続して8個のデータを出力する。 バツフア群4からのシフト出力によるコード長
の蓄積が8を超えるとオフセツトレジスタ9の出
力が8を越えるのでコンパレータ11がそれを判
断して変換回路3を作動する。つまりラツチ10
5〜107が8ビツト上にシフトする。従つて例
えばラツチ107の1〜8ビツトがバツフア10
8の1〜8ビツト目に、又107の2〜8とラツ
チ106の1ビツト目がバツフア109の1〜8
ビツト目にという具合に各バツフアとラツチとが
ビツト接続されているので、例えば10番目のバツ
フアデータと同じものが2番目のバツフアに格納
される。 ラン長ROM5に書き込まれた数値は、アドレ
ス線にランレングス符号をデータ線にラン長を割
り当てている。A10に黒/白信号入力を、A3〜9
零ビツト判定信号を、A0〜7にMH符号を入力す
る。表2にラン長デコードROMとコード長デコ
ードROMのプログラム例を示す。メークアツプ
コードのラン長は64の倍数なのでROMにはラン
長を64で割つた値を書いておき、6ビツトシフト
回路115で後で64倍して正確なラン長を得る。
つまり6ビツト上位シフトし、下位6ビツトに0
をセツトして出力する。ROMの03をメークアツ
プ・コード/ターミネイト・コード(63以下のラ
ン長)判定信号出力(M/T)に当てている。メ
ークアツプコードが出力された時はインバータ1
16、ゲート117によつてトグル・フリツプ・
フロツプ13を反転させない。EOL符号では
“白”にリセツトする。この様にしてランレング
スROMの容量を少なくできる。 コード長は加算器118でオフセツト値と加算
される。その値は通常はA側が選択されているデ
ータセレクタ119及び加算器120を介してオ
フセツトレジスタ9に印加されている。データセ
レクタ121は通常は
〔0〕を選択していて、コ
ンパレータ11がオフセツト値の8より大なるを
検出したる時に、〔−8〕を選択する。従つて加
算器120により118による過去の蓄積を8だ
け減ずる。同時にゲート122を開きラツチ10
5,106及び107の値を8ビツトシフトす
る。また3進カウンタを1個歩進し、その結果リ
ブルキヤリーアウトが出ればリードアドレスカウ
ンタ2を歩進する。 124〜127はEOL符号デコード用のPAL
である。たとえばPAL16L6を用いて次の様な論
理をプログラムする事によつてEOL符号がデコ
ードできる。 E=/A0*/A1*/A2*/A3*/… …*/A10*/A11*/A12 128はどのPALがEOL符号をデコードした
かを判定して出力するデコーダである。EOLが
検出されるとエンコーダ128によりどのPAL
で発生したかを判定しそこからEOLの分だけオ
フセツト出力をジヤンプする様エンコーダ4の出
力に〔12〕を加えて119を介しオフセツト出力
を再セツトする。 尚ゼロのラン長に対応する方法として本発明は
2ワード程度のF1−F0バツフアを必要とするが
復号器のクロツクを2倍にする事によりこのバツ
フアを不要とすることができる。 又本発明はメモリ等からのB,G,R又はY,
M,Cのカラー画像符号化データをカラー別に復
号することにも応用できる。 以上説明したように、本例によるMH符号の復
号器は1個のMH符号のデコードを1システムク
ロツク以内にデコードする事が可能なのできわめ
て高速なMH符号の復号器が実現できる。従つて
画素が圧縮格納された電子フアイルと高速プリン
タとの対応が可能となる。 又MH符号のデコードに関しては本来は13ビツ
ト長の信号線を見てデコードしなければならない
が、本例では零の連続するコードを分割してデコ
ードする事により、主デコーダは8ビツト長の信
号線を見るだけで可能となり、従つて変換用
ROMは低価格なものですむ。 又本例は、エラーデータが全画面に与える悪影
響を防止することができる。
【表】

Claims (1)

  1. 【特許請求の範囲】 1 不定長の符号データを格納するためのメモリ
    と、 上記メモリから不定長符号データを所定ビツト
    数パラレルに読み出す読出手段と、 上記所定ビツト数パラレルで上記読出手段によ
    り読み出される不定長符号データを複数連続して
    記憶する格納手段と、 上記格納手段に記憶された不定長符号データか
    ら所望のnビツトのデータをパラレルに抽出する
    抽出手段と、 上記抽出手段によつて抽出されたnビツトパラ
    レルのデータによりアクセスされ、そのアクセス
    に応じて復号データ及び復号化されたコード長を
    出力する変換テーブルと、 上記復号化されたコード長を逐次加算する加算
    手段と、 上記加算手段の加算結果に応じて、上記抽出手
    段により抽出するデータ部分を変更し、上記メモ
    リから新たな不定長符号データを読み出して上記
    格納手段に記憶させる手段を有することを特徴と
    するデータ復号装置。
JP3117283A 1983-02-25 1983-02-25 デ−タ復号装置 Granted JPS59156073A (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP3117283A JPS59156073A (ja) 1983-02-25 1983-02-25 デ−タ復号装置
CA000447989A CA1228925A (en) 1983-02-25 1984-02-22 Data decoding apparatus
DE19843406624 DE3406624A1 (de) 1983-02-25 1984-02-23 Datendecodiereinrichtung
GB08404879A GB2138604B (en) 1983-02-25 1984-02-24 Data decoding
FR8402961A FR2541836B1 (fr) 1983-02-25 1984-02-27 Appareil de decodage de donnees et dispositif de traitement de donnees comprimees
US07/018,868 US4716471A (en) 1983-02-25 1987-02-25 Data decoding apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3117283A JPS59156073A (ja) 1983-02-25 1983-02-25 デ−タ復号装置

Publications (2)

Publication Number Publication Date
JPS59156073A JPS59156073A (ja) 1984-09-05
JPH053185B2 true JPH053185B2 (ja) 1993-01-14

Family

ID=12324019

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3117283A Granted JPS59156073A (ja) 1983-02-25 1983-02-25 デ−タ復号装置

Country Status (1)

Country Link
JP (1) JPS59156073A (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59224977A (ja) * 1983-05-16 1984-12-17 Fujitsu Ltd ランレングス符号変換回路
JPS6343473A (ja) * 1986-08-11 1988-02-24 Nec Corp モデイフアイドハフマン符号復号回路

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5579565A (en) * 1978-12-12 1980-06-16 Fujitsu Ltd Picture signal decoding system
JPS5723363A (en) * 1980-05-13 1982-02-06 Eiemu Intern Inc Method and device for compressing expanding facsimile transmission system data

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5579565A (en) * 1978-12-12 1980-06-16 Fujitsu Ltd Picture signal decoding system
JPS5723363A (en) * 1980-05-13 1982-02-06 Eiemu Intern Inc Method and device for compressing expanding facsimile transmission system data

Also Published As

Publication number Publication date
JPS59156073A (ja) 1984-09-05

Similar Documents

Publication Publication Date Title
JP3013381B2 (ja) 可変長データの復号装置
US5627917A (en) Variable length coding system having a zig-zag FIFO for selectively storing each data coefficient and zero-run count
US4475174A (en) Decoding apparatus for codes represented by code tree
US4360840A (en) Real time data compression/decompression scheme for facsimile transmission system
US4101934A (en) Coding system
JPH0211064B2 (ja)
EP0467678B1 (en) Variable length coding apparatus and variable length decoding apparatus
US4716471A (en) Data decoding apparatus
US5309156A (en) Variable-length code decoding device
US4955061A (en) Method and apparatus for processing an image signal
US5067023A (en) Image data coding apparatus
JPH0460391B2 (ja)
GB2084366A (en) Decoding Apparatus for a Variable Length Code
US4499498A (en) Run length decoding apparatus
JPH053185B2 (ja)
JPH053186B2 (ja)
JPH053187B2 (ja)
EP0499225B1 (en) Variable-length code decoding device
JPS6341276B2 (ja)
JPH07236065A (ja) 二値画像圧縮装置
JPH0116071B2 (ja)
JPS60117879A (ja) フィルビット除去回路
JPS614371A (ja) 画像イメ−ジ変換回路
JPH06225166A (ja) 符号化および復号化装置
JPH0145793B2 (ja)