JPS6190571A - ランレングス復号化回路 - Google Patents
ランレングス復号化回路Info
- Publication number
- JPS6190571A JPS6190571A JP21211084A JP21211084A JPS6190571A JP S6190571 A JPS6190571 A JP S6190571A JP 21211084 A JP21211084 A JP 21211084A JP 21211084 A JP21211084 A JP 21211084A JP S6190571 A JPS6190571 A JP S6190571A
- Authority
- JP
- Japan
- Prior art keywords
- word
- bit
- run
- register
- bits
- 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
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明はランレングス復号化回路に関し、特に高速ファ
クシミリにおいて使用するランレングス復号化回路に関
する。
クシミリにおいて使用するランレングス復号化回路に関
する。
近年の高速ファクシミIJにおいては、伝送時間の短縮
および伝送帯域幅圧縮等の目的から、文字情報等のラン
レングスを適当な圧縮符号に変換して伝送する方法が採
用されている。
および伝送帯域幅圧縮等の目的から、文字情報等のラン
レングスを適当な圧縮符号に変換して伝送する方法が採
用されている。
圧縮符号化の1方法としてCCITT勧告T4)で定め
るモディファイドホフマン(MH) 符号’i−使用す
るものが一般的になっている。MH符号はランレングス
63以下に対しては個個に定められているが、ランレン
グス64以上に対しては64ごとに定められていて、例
えばランレングス7゜U70=64+6としてコード化
している。
るモディファイドホフマン(MH) 符号’i−使用す
るものが一般的になっている。MH符号はランレングス
63以下に対しては個個に定められているが、ランレン
グス64以上に対しては64ごとに定められていて、例
えばランレングス7゜U70=64+6としてコード化
している。
MH符号から導出されるランレングスを示す2進数コー
ドの復号においては、それぞれのランレングスを示す2
進数コードが白および点の連続するビット数を表わして
いるから、それぞれのランレングスから白および黒の画
素列をビット単位で処理して出力する必要がある。
ドの復号においては、それぞれのランレングスを示す2
進数コードが白および点の連続するビット数を表わして
いるから、それぞれのランレングスから白および黒の画
素列をビット単位で処理して出力する必要がある。
このような変換処理に汎用マイクロコンピュータを使用
した場合、汎用マイクロコンピュータでの取扱い得るデ
ータの単位が4ビツト、8ビツト、16ビツトというよ
うにワード固定であるため。
した場合、汎用マイクロコンピュータでの取扱い得るデ
ータの単位が4ビツト、8ビツト、16ビツトというよ
うにワード固定であるため。
ビット単位の演算処理を行うとその処理に時間を要する
問題がある。
問題がある。
ま友、う/レングス復号化回路を専用のハードウェアで
構成した場合は、1例を示すと、ランレングス63以下
(以下、下位桁という)に対応するものと、ランレング
ス64以上(以下、上位桁という)に対応するものとの
2系列の回路を個別に用意する必要があり、構成が複雑
になる問題がある。
構成した場合は、1例を示すと、ランレングス63以下
(以下、下位桁という)に対応するものと、ランレング
ス64以上(以下、上位桁という)に対応するものとの
2系列の回路を個別に用意する必要があり、構成が複雑
になる問題がある。
すなわち、従来のランレングス復号化回路は、回路構成
が複雑になるかまたは処理時間が長くなるという欠点が
ある。
が複雑になるかまたは処理時間が長くなるという欠点が
ある。
本発明の目的は、予め準備したビット/ワード変換用の
テーブルを参照して、ワード単位の作業用レジスタにビ
ット詰めを行うことにより、低価格の汎用マイクロコン
ピュータを用いてワード単位で処理可能とし、簡単な回
路構成で処理時間が長くなることを防止できるランレン
グス復号化回路を提供することVCある。
テーブルを参照して、ワード単位の作業用レジスタにビ
ット詰めを行うことにより、低価格の汎用マイクロコン
ピュータを用いてワード単位で処理可能とし、簡単な回
路構成で処理時間が長くなることを防止できるランレン
グス復号化回路を提供することVCある。
本発明のランレングス復号化回路は、文字情報瀉のラン
レングスRLをRL=a (H+1 )十h(ただし、
aは零または正の整数、hは0≦h≦Hなる整数)とし
たとき、a=Qの場合はhに対応するコードのみが割当
てられ、a≧1の場合はa(H+1)に対応するコード
とhに対応するコードとのシリアルな組合せが割当てら
れる2進数コードを、前記ランレングスRILごとにa
=Qのときはhに対応する2進数コードを所定ビット数
の1ワード、a≧1のときはa(H+1)およびhそれ
ぞれに対応する2進数コードそれぞれを前記所定ビット
数の1ワード構成として順次格納するバッファメモリと
、前記所定ビット数をもつ作業用レジスタと、前・記バ
ッフ丁メモリがら前記2ンレングスRLgワード単位で
読出しそれぞれのワードが示す前記ランレングスKLに
おける2進数コードと当該ワードの直前のワードが示す
前記ランレングスRLKおける2進数コードを前記作業
用レジスタを用いてビット詰めしたときの前記所定ビッ
ト数に対する空きビットとにしたがって別に準備するテ
ーブルを参照してワード単位の処理を行い白に対して「
0」黒に対して「1」が与えられるビット単位の画素列
に展開する汎用マイクロコンピュータと、ワードごとの
前記ランレングス几りにおける2進数コードと前記空き
ビットとの数値関係に対応するビット/ワード変換のた
めの複数種類の前記テーブルを予め格納する読出専用メ
モリとを含んで構成される。
レングスRLをRL=a (H+1 )十h(ただし、
aは零または正の整数、hは0≦h≦Hなる整数)とし
たとき、a=Qの場合はhに対応するコードのみが割当
てられ、a≧1の場合はa(H+1)に対応するコード
とhに対応するコードとのシリアルな組合せが割当てら
れる2進数コードを、前記ランレングスRILごとにa
=Qのときはhに対応する2進数コードを所定ビット数
の1ワード、a≧1のときはa(H+1)およびhそれ
ぞれに対応する2進数コードそれぞれを前記所定ビット
数の1ワード構成として順次格納するバッファメモリと
、前記所定ビット数をもつ作業用レジスタと、前・記バ
ッフ丁メモリがら前記2ンレングスRLgワード単位で
読出しそれぞれのワードが示す前記ランレングスKLに
おける2進数コードと当該ワードの直前のワードが示す
前記ランレングスRLKおける2進数コードを前記作業
用レジスタを用いてビット詰めしたときの前記所定ビッ
ト数に対する空きビットとにしたがって別に準備するテ
ーブルを参照してワード単位の処理を行い白に対して「
0」黒に対して「1」が与えられるビット単位の画素列
に展開する汎用マイクロコンピュータと、ワードごとの
前記ランレングス几りにおける2進数コードと前記空き
ビットとの数値関係に対応するビット/ワード変換のた
めの複数種類の前記テーブルを予め格納する読出専用メ
モリとを含んで構成される。
〔実施例」
以下に、本発明の実施例について図面を参照して詳細に
説明する。
説明する。
第1図は本発明の一実施例を示すブロック図でランレン
グス復号化回路はランレングスをワード単位で格納する
RAM1と、MPU2と、レジスタ3と、ROM4と、
展開後の画素列を格納するRAM5とを含む。
グス復号化回路はランレングスをワード単位で格納する
RAM1と、MPU2と、レジスタ3と、ROM4と、
展開後の画素列を格納するRAM5とを含む。
以下の説明では、1ワードのビット数を8ビット(1バ
イト)構成の場合とする。
イト)構成の場合とする。
第1図において、I(、AMIには図示しないランレン
グス変換部において、MH符号から2進数コードに変換
されたランレングスKLが8ビツト構成のワード単位で
、白ランに初まり黒→白→黒→の順に1ライン分格納さ
れる。
グス変換部において、MH符号から2進数コードに変換
されたランレングスKLが8ビツト構成のワード単位で
、白ランに初まり黒→白→黒→の順に1ライン分格納さ
れる。
それぞれのランレングスRLのフォーマットは第2図(
a)、(b)に示すようになる。すなわち、第2図(a
)はランレングスRLがθ〜63の場合で、2ビツトの
判定符号と6ビツトの2進数コードからなる1ワード構
成である。第2図(b)はランレングスRLが64〜2
048の場合で、第1ワードは2ビツトの判定符号と6
ビツトの下位桁2進数コード、第2ワードは2ビツトの
判定符号と6ビツトの上位桁2進数コードからなる2ワ
ード構成である。ここで、1ライン当りの画素ビット数
は2048とする。
a)、(b)に示すようになる。すなわち、第2図(a
)はランレングスRLがθ〜63の場合で、2ビツトの
判定符号と6ビツトの2進数コードからなる1ワード構
成である。第2図(b)はランレングスRLが64〜2
048の場合で、第1ワードは2ビツトの判定符号と6
ビツトの下位桁2進数コード、第2ワードは2ビツトの
判定符号と6ビツトの上位桁2進数コードからなる2ワ
ード構成である。ここで、1ライン当りの画素ビット数
は2048とする。
M P U 2は1ワード8ビツトの処理単位をもつ汎
用マイクロコンピュータで、後述するアルゴリズムにし
たがって、ビット単位のランレングスKLをワード単位
で処理し画素列に展開する。
用マイクロコンピュータで、後述するアルゴリズムにし
たがって、ビット単位のランレングスKLをワード単位
で処理し画素列に展開する。
M P 02は図示しない受信制御部からの復号要求信
号Fに応じて、RAMIから書込み順にワード単位でラ
ンレングスRLを読出す。このとき、ワードごとの判定
符号を識別して、そのワードが1ワード構成か、2ワー
ド構成の下位桁かの判別を行い、判別結果に応じて処理
手順を選択する。
号Fに応じて、RAMIから書込み順にワード単位でラ
ンレングスRLを読出す。このとき、ワードごとの判定
符号を識別して、そのワードが1ワード構成か、2ワー
ド構成の下位桁かの判別を行い、判別結果に応じて処理
手順を選択する。
MPU2の処理単位は1ワード(この場合、1バイト)
でちるから、RAM5への出力転送の単位は1バイトに
なる。これに対し、ランレングスRILの示すランR(
白ランRw1黒ランRB)はビット単位であるから、ビ
ット−バイト詰めの処理を行う。
でちるから、RAM5への出力転送の単位は1バイトに
なる。これに対し、ランレングスRILの示すランR(
白ランRw1黒ランRB)はビット単位であるから、ビ
ット−バイト詰めの処理を行う。
すなわち、RAMIから入力した第1′4目のワード(
例えば、1ワード構成とする)の示すランレングスKL
O白ランRwにしたがって、1バイトの中間処理用のレ
ジスタ3の左から+mに、第3図に示すように、白画累
として「0」を詰める。
例えば、1ワード構成とする)の示すランレングスKL
O白ランRwにしたがって、1バイトの中間処理用のレ
ジスタ3の左から+mに、第3図に示すように、白画累
として「0」を詰める。
1バイト詰ったとき、RAM5へ1バイト転送する。こ
れを白ランR,に対応して繰返し行い、そのワードに対
するレジスタ3の最終の空きビットBを記憶する。
れを白ランR,に対応して繰返し行い、そのワードに対
するレジスタ3の最終の空きビットBを記憶する。
次の1ワードをRAM1から読出し、前のワードに対す
るレジスタ3の空きビットBから順に、そのワードが示
す黒ランRBにしたがって黒画素として「1」を詰めて
、上記と°同様に1バイト単位でRAM5に転送し、そ
のワードに対するレジスタ3の空きビットB′を記憶す
る。この空きビットB′は、次のワード処理時の空きピ
ッ)Hになる。以上の動作を、RAMIに格納し7たラ
ンレングスKLが空になるまで繰返し行う。
るレジスタ3の空きビットBから順に、そのワードが示
す黒ランRBにしたがって黒画素として「1」を詰めて
、上記と°同様に1バイト単位でRAM5に転送し、そ
のワードに対するレジスタ3の空きビットB′を記憶す
る。この空きビットB′は、次のワード処理時の空きピ
ッ)Hになる。以上の動作を、RAMIに格納し7たラ
ンレングスKLが空になるまで繰返し行う。
RAM5は1ライン分の画素列を札納する容量(この場
合、25Gバイ+)をもち、RA M 5が1杯になる
と1ラインの復号完了信号EがM P U2から受信制
御部に供給されて、RAJJ5から格納画素列を読出す
とともに、’tAMlへの次のラインに対するランレン
グスRLの書込みを行う。
合、25Gバイ+)をもち、RA M 5が1杯になる
と1ラインの復号完了信号EがM P U2から受信制
御部に供給されて、RAJJ5から格納画素列を読出す
とともに、’tAMlへの次のラインに対するランレン
グスRLの書込みを行う。
以上のビット−バイト詰めの際、処理速[[f:短縮す
るために、ビット操作よりむしろ予めROM4に格納す
るテーブルを参照して行う。
るために、ビット操作よりむしろ予めROM4に格納す
るテーブルを参照して行う。
テーブルには、ランレングスKLの2進数コードが示す
ランRと、直前のワードに対するレジスタ3の空きビッ
トBとの関係にしたがりて、テーブルS、XおよびYの
3種類がおる。
ランRと、直前のワードに対するレジスタ3の空きビッ
トBとの関係にしたがりて、テーブルS、XおよびYの
3種類がおる。
テーブル8には、「R−B≧8」の場合における[(R
−B/8=n+DJに対する「8−D」と「n」とが、
それぞれの「几−B」に対して格納される。
−B/8=n+DJに対する「8−D」と「n」とが、
それぞれの「几−B」に対して格納される。
MPU2は空きビットBにビット詰めして1バイト転送
した後「R,−BJを求め、テーブルSの索引アドレス
にrTL−BJを加えたアドレスで、テーブルSから該
当する「5−DJと「n」とを求めて記憶する。この場
合、「OJまたは「1」をnバイト転送した後、レジス
タ3に左からDビット詰められるので、処理後の空きビ
ットBI は「8−D」になる。
した後「R,−BJを求め、テーブルSの索引アドレス
にrTL−BJを加えたアドレスで、テーブルSから該
当する「5−DJと「n」とを求めて記憶する。この場
合、「OJまたは「1」をnバイト転送した後、レジス
タ3に左からDビット詰められるので、処理後の空きビ
ットBI は「8−D」になる。
テーブルXには、黒のランレングスRILに対する黒ラ
ンRBと空きビットBとの関係がrRm=B」のときの
、黒ランRBに対しく1)式で求められるX個の「1」
が格納されていて、テープルXの索引アドレスと黒ラン
RB<!:をアドレスとじて「X」を読出し、レジスタ
3の空きビットに詰める。レジスタ3は1杯になるので
1バイト転送する。レジスタ3の処理後の空きピッ)B
/は「8」になる。
ンRBと空きビットBとの関係がrRm=B」のときの
、黒ランRBに対しく1)式で求められるX個の「1」
が格納されていて、テープルXの索引アドレスと黒ラン
RB<!:をアドレスとじて「X」を読出し、レジスタ
3の空きビットに詰める。レジスタ3は1杯になるので
1バイト転送する。レジスタ3の処理後の空きピッ)B
/は「8」になる。
テーブルx<x>=”)、” 2’・・・町・・・旧・
・(1)1ツ0 例えば、x=5のときはl’−11111Jとなる。
・(1)1ツ0 例えば、x=5のときはl’−11111Jとなる。
テーブルYには、黒のランレングスRILに対する黒ラ
ンR,と空きビットBとの関係がrB>Ri+Jのとき
の、黒ランRBに対しく2)式で求められるX個の「1
」が格納されていて、テーブルYの索引アドレスと「B
」およびrRBJとをアドレスとしてrx、yJを求め
、レジスタ3の右からyビットの位置から左へX個の「
l」を詰める。処理後のレジスタ3の空きビットB’は
ry−xミB−RBJ となる。
ンR,と空きビットBとの関係がrB>Ri+Jのとき
の、黒ランRBに対しく2)式で求められるX個の「1
」が格納されていて、テーブルYの索引アドレスと「B
」およびrRBJとをアドレスとしてrx、yJを求め
、レジスタ3の右からyビットの位置から左へX個の「
l」を詰める。処理後のレジスタ3の空きビットB’は
ry−xミB−RBJ となる。
例えば、X=3.)’=5のときは「111oo」とな
る。
る。
次に、2ンレングスR,Lに対するワード処理のアルゴ
リズムについて説明する。
リズムについて説明する。
M P U 2が復号要求信号FK応じて1ラインに対
応するランレングスRLの復号を開始するとき、レジス
タ3は初期状態(すなわち、すべて「0」で空きビット
Bがr8j )になっている。RAM1から読出される
第1番目のワードは白のランレングスRLで、以後点→
白→黒と繰返される。
応するランレングスRLの復号を開始するとき、レジス
タ3は初期状態(すなわち、すべて「0」で空きビット
Bがr8j )になっている。RAM1から読出される
第1番目のワードは白のランレングスRLで、以後点→
白→黒と繰返される。
第4図は白ランRw処理の動作を説明するためのフロー
チャートである。以下に、第4図を参照して白ラン几W
処理の動作を説明する。
チャートである。以下に、第4図を参照して白ラン几W
処理の動作を説明する。
いま、任意番目の白のワードがRAM1から読出された
とする(11)。
とする(11)。
MPU2i−1ワードの判定符号を検出して、そのワー
ドが1ワード構成か2ワード構成の下位桁かのいずれか
を判別し、判別結果を記憶する(12)。
ドが1ワード構成か2ワード構成の下位桁かのいずれか
を判別し、判別結果を記憶する(12)。
ワードの示す白ランR,とレジスタ3の空きビットBと
の数値関係がrRw<B J (13)、rRw=BJ
(24)、rRw>BでRw=B<8 J (34)、
rRW> ’BでR,−B≧8」 (45)の
いずれに該当するかを判定し、以下の処理手順を選択す
る。
の数値関係がrRw<B J (13)、rRw=BJ
(24)、rRw>BでRw=B<8 J (34)、
rRW> ’BでR,−B≧8」 (45)の
いずれに該当するかを判定し、以下の処理手順を選択す
る。
「RwくB」の場合は(13)、レジスタ3の空きビッ
トBから白ランRwを減算しくx4Lその結果の「H−
FLyJをレジスタ3の空きビットB′として記憶する
(15)。
トBから白ランRwを減算しくx4Lその結果の「H−
FLyJをレジスタ3の空きビットB′として記憶する
(15)。
1ワード構成のときはそのワードの処理を終や黒ランR
Bの処理に移る。2ワード構成のときは(16)、続い
て上位桁の第2ワードをRAM 1から続出す(17)
。第2ワードの白ランIL’ wは64の倍数であるか
ら、レジスタ3の空きビットB′は1杯になるので、そ
の1バイトの画素列をRAM5に転送する(18)。
Bの処理に移る。2ワード構成のときは(16)、続い
て上位桁の第2ワードをRAM 1から続出す(17)
。第2ワードの白ランIL’ wは64の倍数であるか
ら、レジスタ3の空きビットB′は1杯になるので、そ
の1バイトの画素列をRAM5に転送する(18)。
白ラン1%Iwの余りビット、すなわちl’−82w−
B’Jを8で除算し、その商mを求め余りは捨てる(1
9)。
B’Jを8で除算し、その商mを求め余りは捨てる(1
9)。
1バイトの「0」をm回RAM5に転送する(2o)。
m回VC達しないときは(21’)lを加えて(22)
(30)に戻る。m回に達したときは(21ン、白ラン
R/wの最終の余りビットをレジスタ3に詰める。この
とき、レジスタ3の空きビットB“ はrB’=B−R
WIとなるので、この値を記憶しく23)、黒ラン処理
に移る。
(30)に戻る。m回に達したときは(21ン、白ラン
R/wの最終の余りビットをレジスタ3に詰める。この
とき、レジスタ3の空きビットB“ はrB’=B−R
WIとなるので、この値を記憶しく23)、黒ラン処理
に移る。
rRW = BJの場合は(24)、レジスタ3の空き
ビットBは1杯になるので、1バイトをRAM5に転送
する(25)。処理後のレジスタ3の空きビットBy
は「8」になる(26)。
ビットBは1杯になるので、1バイトをRAM5に転送
する(25)。処理後のレジスタ3の空きビットBy
は「8」になる(26)。
1ワード構成のときはそのワードの処理を終り、2ワー
ド構成のときは(27)、RAM1から第2ワードを受
領する(28)。第2ワードの白ランR: w t 8
で除算し、その商mを記憶する(29)。
ド構成のときは(27)、RAM1から第2ワードを受
領する(28)。第2ワードの白ランR: w t 8
で除算し、その商mを記憶する(29)。
白ランR′wは640倍数であるから余りはでない。
1バイトの「0」f:m回RAM5に転送する(30)
。
。
m回に達しないときは(31)1を加えて(32)、(
30)に戻る。m回に達したときは(31)、レジスタ
3の空きビットB1は「B’=84 になるので(3
3)% これを記憶して2ワード構成のワード処理を終
る。
30)に戻る。m回に達したときは(31)、レジスタ
3の空きビットB1は「B’=84 になるので(3
3)% これを記憶して2ワード構成のワード処理を終
る。
rRw>BでRw−B(sJの場合は(34ン、レジス
タ3の空きビットBは1杯になるので、1バイトをRA
hi 5に転送する(35)。「Rw BJをg(
nL (36)、減算結果に相当する「0」をレジスタ
3の左から詰める。それ故、処理後のしジスタ3の空き
ビットB′はrs −(Rw−B)Jになる(37)。
タ3の空きビットBは1杯になるので、1バイトをRA
hi 5に転送する(35)。「Rw BJをg(
nL (36)、減算結果に相当する「0」をレジスタ
3の左から詰める。それ故、処理後のしジスタ3の空き
ビットB′はrs −(Rw−B)Jになる(37)。
1ワード構戊のときはそのワードの処理を終り、2ワー
ド構成のときは(38)、T’l、AMlから第2ワー
ドを受領する(39)。第2ワードの白ランR’Hに対
して、上記したrRw=BJのときの第2ワード処理と
同様に処理して、1バイトの「0」をm回転送する。第
4図における参照記号(40)〜(43)が対応する。
ド構成のときは(38)、T’l、AMlから第2ワー
ドを受領する(39)。第2ワードの白ランR’Hに対
して、上記したrRw=BJのときの第2ワード処理と
同様に処理して、1バイトの「0」をm回転送する。第
4図における参照記号(40)〜(43)が対応する。
処理後のレジスタ3の空きビットB・は「B′」に等し
く、「8−(Rw−B)Jになり(44)、2ワード構
成のワードの処理を終る。
く、「8−(Rw−B)Jになり(44)、2ワード構
成のワードの処理を終る。
rRw>BでRw−B≧8」の場合は(45)、上記と
同様にレジスタ3の空きビットBが1杯になるので、R
AM5に1バイトを転送する(46)。
同様にレジスタ3の空きビットBが1杯になるので、R
AM5に1バイトを転送する(46)。
rRw−BJを演算しく47)、減算結果に基づき前述
したテーブルSを索引して(48)% rRwB)/
8=n+DjのrnJとrB−DJとを求め記憶する(
49)。 □ 1バイトの「0」をn回転送しく50)、0回1バイト
の「0」をn回転送しく50)、n回に達しないとき(
51)、1を加えて(52)、(50)に戻る。n回に
達したとき(51L レジスタ3に左からD個の「Oj
を詰め、レジスタ3の空きビットB′はrs−DJにな
る(53)。
したテーブルSを索引して(48)% rRwB)/
8=n+DjのrnJとrB−DJとを求め記憶する(
49)。 □ 1バイトの「0」をn回転送しく50)、0回1バイト
の「0」をn回転送しく50)、n回に達しないとき(
51)、1を加えて(52)、(50)に戻る。n回に
達したとき(51L レジスタ3に左からD個の「Oj
を詰め、レジスタ3の空きビットB′はrs−DJにな
る(53)。
1ワード構成のときはそのワードの処理を終り、2ワー
ド構成のときは(54)、RAM1から第2ワードを受
領する(55)。第2ワードの白ランR′w に対し
て、前述したrRw=BJのときの第2ワード処理と同
様に処理して、1ノくイトの「0」をm回RAM5に転
送する。第4図における参照記号(56)〜(59)が
対応する。処理後のレジスタ3の空きビットB1は[B
’Jに等しく、[8−I)Jになり(60)、2ワード
構成のワードの処理を終る。
ド構成のときは(54)、RAM1から第2ワードを受
領する(55)。第2ワードの白ランR′w に対し
て、前述したrRw=BJのときの第2ワード処理と同
様に処理して、1ノくイトの「0」をm回RAM5に転
送する。第4図における参照記号(56)〜(59)が
対応する。処理後のレジスタ3の空きビットB1は[B
’Jに等しく、[8−I)Jになり(60)、2ワード
構成のワードの処理を終る。
次に、第5因のフローチャートを参照して、黒2′8”
0−′″6cm’p”″″″〜・ 、MPU
2は直前の白ワードの処理を終了したとき、R,AMI
から黒の1ワードを受領する(61)。
0−′″6cm’p”″″″〜・ 、MPU
2は直前の白ワードの処理を終了したとき、R,AMI
から黒の1ワードを受領する(61)。
黒ワードについても前述の白ワードのときと同様に、1
ワード構成か2ワード構成の下位桁かの判別を行い(6
2)、判別結果を記憶する。硬いで、そのワードが示す
黒ランRB と直前の白ランRwに対するレジスタ3の
空きビットBとの数値関係が田n<Bj(63)、r’
Rs=BJ (75) 、r”几B〉BでRB−B<
8 J (86)、rRn>BでRB−B≧8J(9
9)のいずれであるかを判定する。
ワード構成か2ワード構成の下位桁かの判別を行い(6
2)、判別結果を記憶する。硬いで、そのワードが示す
黒ランRB と直前の白ランRwに対するレジスタ3の
空きビットBとの数値関係が田n<Bj(63)、r’
Rs=BJ (75) 、r”几B〉BでRB−B<
8 J (86)、rRn>BでRB−B≧8J(9
9)のいずれであるかを判定する。
FRB<BJ のときは(63)、rB−RBJを算出
しく64)、黒ランRIlおよび空きビットBに基づき
前述したテーブルYをROM4わら索引する(65)。
しく64)、黒ランRIlおよび空きビットBに基づき
前述したテーブルYをROM4わら索引する(65)。
索引結果の黒画素「1」をレジスタ3にh吉める。レジ
スタ3の空きビットB′は「B−R,Jになり(66)
、 これを記憶する。
スタ3の空きビットB′は「B−R,Jになり(66)
、 これを記憶する。
1ワード構成のときはそのワードの処理を終)、2ワー
ド構成のときは(67)、RAM1から第2ワードを受
領する(68)。第2ワードの黒ラン1%/ 、は64
の倍数であるから、レジλり3の空きビットB′ は
1杯になるので、その1バイトの画素列をルAM5に転
送する(69)。
ド構成のときは(67)、RAM1から第2ワードを受
領する(68)。第2ワードの黒ラン1%/ 、は64
の倍数であるから、レジλり3の空きビットB′ は
1杯になるので、その1バイトの画素列をルAM5に転
送する(69)。
黒ランR/、の余りビット、すなわち「)L’B−BJ
を8で除算し、その商mを求め余りは捨てる(70)1
バイトのrlJをm回R,AM5に転送する(71)。
を8で除算し、その商mを求め余りは捨てる(70)1
バイトのrlJをm回R,AM5に転送する(71)。
m回に達しないとき(72)1を加えて(73)、(7
1)に戻る。m回に達したときは(72)゛黒ランf%
r、の最終の余りビットでレジスタ3に詰める。このと
き、レジスタ3の空きビットB1はrB ’Jに等しい
のでrB−RmJになシ(74)、この値を記憶して黒
ワードの処理を終り、白ラン処理に移る。
1)に戻る。m回に達したときは(72)゛黒ランf%
r、の最終の余りビットでレジスタ3に詰める。このと
き、レジスタ3の空きビットB1はrB ’Jに等しい
のでrB−RmJになシ(74)、この値を記憶して黒
ワードの処理を終り、白ラン処理に移る。
「R11=B」の場合は(75)、黒ランRaに基づき
前述したテーブルxl索引する(76)。索引結果の黒
画素「1」をレジスタ3の空きビットBに詰める。レジ
スタ3は1杯になるので、1バイトの画素列を)LAM
5に転送する(77)。処理後のレジスタ3の空きビッ
トB′は「8」になる(78)。
前述したテーブルxl索引する(76)。索引結果の黒
画素「1」をレジスタ3の空きビットBに詰める。レジ
スタ3は1杯になるので、1バイトの画素列を)LAM
5に転送する(77)。処理後のレジスタ3の空きビッ
トB′は「8」になる(78)。
・1ワード構成のときはそのワードの処理を終り、2ワ
ード構成のときは(79)、RAMIから第 12ワ
ードを受領する(80)。第2ワードの黒ランR′Bを
8で除算し、その商mを記憶する(81)。
ード構成のときは(79)、RAMIから第 12ワ
ードを受領する(80)。第2ワードの黒ランR′Bを
8で除算し、その商mを記憶する(81)。
黒ランR′Bは64の倍数であるから余りはでない。
1バイトの「1」をm回RAM5に転送する(82)。
m回に達しないとき(83)1を加えて(84)、(8
2)に戻る。m回に達したときは(83)、レジスタ3
の空きビットB#l’i rB’ = 8J になる
ので(85)、これを記憶して2ワード構成のワード処
理を終る。
2)に戻る。m回に達したときは(83)、レジスタ3
の空きビットB#l’i rB’ = 8J になる
ので(85)、これを記憶して2ワード構成のワード処
理を終る。
1、’)BでPuB−B〈8」の場合は(86)、空き
ビットBに基づきテーブルXを索引する(87)。
ビットBに基づきテーブルXを索引する(87)。
索引結果の黒画素「1」をレジスタ3の空きビットBに
詰める。レジスタ3が1杯になるので、1バイトの画素
列をRAM 5 TF−転送する(88)。
詰める。レジスタ3が1杯になるので、1バイトの画素
列をRAM 5 TF−転送する(88)。
黒ランRBの余りビットはrRs−BJであるから、r
Rn−BJを算出しく89)、減算結果に基づき前述し
たテーブルYを索引する(90)。索引結果の黒画素「
1」をレジスタ3の左から詰め、レジスタ3の空ビット
B′はrs −(Ra−B)jになる(91)。
Rn−BJを算出しく89)、減算結果に基づき前述し
たテーブルYを索引する(90)。索引結果の黒画素「
1」をレジスタ3の左から詰め、レジスタ3の空ビット
B′はrs −(Ra−B)jになる(91)。
1ワード構成のときはそのワードの処理を終り2ワード
栂成のときは(92)、RAM1から第2ワードを受領
する(93)。第2ワードの黒ランR’ Bに対して、
上記したrRn=BJのときの第2ワード処理と同様に
処理して、1バイトの「1」をm回転送する。第5図に
おける参照記号(94)〜(97)が対応する。処理後
のレジスタ3の空きビットB#はrB’=8−(RB
B)J になり(98)、2ワード構成の黒ワード
の処理を終る。
栂成のときは(92)、RAM1から第2ワードを受領
する(93)。第2ワードの黒ランR’ Bに対して、
上記したrRn=BJのときの第2ワード処理と同様に
処理して、1バイトの「1」をm回転送する。第5図に
おける参照記号(94)〜(97)が対応する。処理後
のレジスタ3の空きビットB#はrB’=8−(RB
B)J になり(98)、2ワード構成の黒ワード
の処理を終る。
rRn>BでRB−B≧8」の場合は(99L空きビッ
トBに基づきテーブルXを索引する(100)。
トBに基づきテーブルXを索引する(100)。
索引結果の黒画素「1」をレジスタ3の空きビットBに
詰める。レジスタ3が1杯になるので、1バイトの画素
列をRAM5に転送する(101)。
詰める。レジスタ3が1杯になるので、1バイトの画素
列をRAM5に転送する(101)。
黒ランR,の余シビットは[a、−BJであるから、r
Rn BJを算出しく102)、減算結果に基づき前
述したテーブルSを索引して(103)、r(Rn−B
)/8=n+DJのrnJとrs−DJとを求めて記憶
する(104)。
Rn BJを算出しく102)、減算結果に基づき前
述したテーブルSを索引して(103)、r(Rn−B
)/8=n+DJのrnJとrs−DJとを求めて記憶
する(104)。
1バイトの「1」をn回転送する(105)。
n回に達しないとき(106)1を加えて(107)、
(105)に戻る。n回に達したときは(106)、レ
ジスタ3の空きビットB′はrs−DJになる(108
)。
(105)に戻る。n回に達したときは(106)、レ
ジスタ3の空きビットB′はrs−DJになる(108
)。
1ワード構成のときはそのワードの処理を終り、2ワー
ド構成のときは(109)、aAMlから第2ワードを
受領する(110)。第2ワードの黒ランf%I 、に
対して、前述のrRi+=BJのときの第2ワード処理
と同様に処理して、1バイトの「1」をm回転送する。
ド構成のときは(109)、aAMlから第2ワードを
受領する(110)。第2ワードの黒ランf%I 、に
対して、前述のrRi+=BJのときの第2ワード処理
と同様に処理して、1バイトの「1」をm回転送する。
第5図における参照番号(111)〜(114)が対応
する。処理後のレジスタ3の空きビットB#は「B’
=s−DJになり(115)、2ワード構成の黒ワード
の処理を終り白ランR,処理に移る。
する。処理後のレジスタ3の空きビットB#は「B’
=s−DJになり(115)、2ワード構成の黒ワード
の処理を終り白ランR,処理に移る。
以上の処理を繰返し行い、RAMIに格納したランレン
グスRLがなくなったとき、RAM5が1杯になるので
1ラインに対する復号化を終了し、MPU2から受信制
御部に復号完了信号Eが出力される。
グスRLがなくなったとき、RAM5が1杯になるので
1ラインに対する復号化を終了し、MPU2から受信制
御部に復号完了信号Eが出力される。
以上述べたように、本発明のランレングス徨号化回路は
、ランレングスをビット処理して画素列に変換する代り
に、予め読出専用メモリに格納したビット/ワード変換
用のテーブルを参照して、ワード態位の作業用レジスタ
にビット−ワード詰めを行うことにより、低価格の汎用
マイクロコンピュータを利用してワード単位で処理して
画素列に展開可能とし、簡単な回路構成で処理時間が長
くなることを防止できるので、高速ファクシミリの信号
圧縮における安価で有効な復号化手段をア現できるとい
う効果がある。
、ランレングスをビット処理して画素列に変換する代り
に、予め読出専用メモリに格納したビット/ワード変換
用のテーブルを参照して、ワード態位の作業用レジスタ
にビット−ワード詰めを行うことにより、低価格の汎用
マイクロコンピュータを利用してワード単位で処理して
画素列に展開可能とし、簡単な回路構成で処理時間が長
くなることを防止できるので、高速ファクシミリの信号
圧縮における安価で有効な復号化手段をア現できるとい
う効果がある。
めの概念図、第3図はレジスタのビット−ワード詰め動
作の説明図、第4図は白ラン処理を説明するためのフロ
ーチャート、第5図は黒ラン処理を説明するためのフロ
ーチャートである。 図において、1・・・・・・)l、AM、2・・・・・
・MPU、3・・・・・・レジスタ、4・・・・・・R
OM。
作の説明図、第4図は白ラン処理を説明するためのフロ
ーチャート、第5図は黒ラン処理を説明するためのフロ
ーチャートである。 図において、1・・・・・・)l、AM、2・・・・・
・MPU、3・・・・・・レジスタ、4・・・・・・R
OM。
Claims (1)
- 文字情報等のランレングスRLをRL=a(H+1)+
h(ただし、aは零または正の整数、hは0≦h≦Hな
る整数)としたとき、a=0の場合はhに対応するコー
ドのみが割当てられ、a≧1の場合はa(H+1)に対
応するコードとhに対応するコードとのシリアルな組合
せが割当てられる2進数コードを、前記ランレングスR
Lごとにa=0のときはhに対応する2進数コードを所
定ビット数の1ワード、a≧1のときはa(H+1)お
よびhそれぞれに対応する2進数コードそれぞれを前記
所定ビット数の1ワード構成として順次格納するバッフ
ァメモリと、前記所定ビット数をもつ作業用レジスタと
、前記バッファメモリから前記ランレングスRLをワー
ド単位で読出しそれぞれのワードが示す前記ランレング
スRLにおける2進数コードと当該ワードの直前のワー
ドが示す前記ランレングスRLにおける2進数コードを
前記作業用レジスタを用いてビット詰めしたときの前記
所定ビット数に対する空きビットとにしたがって別に準
備するテーブルを参照してワード単位の処理を行い白に
対して「0」黒に対して「1」が与えられるビット単位
の画素列に展開する汎用マイクロコンピュータと、ワー
ドごとの前記ランレングスRLにおける2進数コードと
前記空きビットとの数値関係に対応するビット/ワード
変換のための複数種類の前記テーブルを予め格納する読
出専用メモリとを含むことを特徴とするランレングス復
号化回路。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP21211084A JPS6190571A (ja) | 1984-10-09 | 1984-10-09 | ランレングス復号化回路 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP21211084A JPS6190571A (ja) | 1984-10-09 | 1984-10-09 | ランレングス復号化回路 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS6190571A true JPS6190571A (ja) | 1986-05-08 |
Family
ID=16617039
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP21211084A Pending JPS6190571A (ja) | 1984-10-09 | 1984-10-09 | ランレングス復号化回路 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS6190571A (ja) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5964969A (ja) * | 1982-10-06 | 1984-04-13 | Hitachi Ltd | 符号復号化装置の画像信号生成装置 |
-
1984
- 1984-10-09 JP JP21211084A patent/JPS6190571A/ja active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5964969A (ja) * | 1982-10-06 | 1984-04-13 | Hitachi Ltd | 符号復号化装置の画像信号生成装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US3675211A (en) | Data compaction using modified variable-length coding | |
US4912668A (en) | Mono-dimensional reverse cosine transform computing device | |
JP2610084B2 (ja) | データ伸長方法および装置ならびにデータ圧縮伸長方法および装置 | |
US3701108A (en) | Code processor for variable-length dependent codes | |
JPS6148298B2 (ja) | ||
US4535320A (en) | Method and apparatus for digital Huffman decoding | |
EP0754393B1 (en) | Video image colour encoding | |
JPH01195770A (ja) | 画像データ圧縮伝送方法 | |
US4841299A (en) | Method and apparatus for digital encoding and decoding | |
GB1594521A (en) | Facsimile encoding communication system | |
US5309156A (en) | Variable-length code decoding device | |
JPS60140982A (ja) | デジタル符号語を検出する方法および装置 | |
JPH0821863B2 (ja) | データ処理方法 | |
US5067023A (en) | Image data coding apparatus | |
US5198898A (en) | Data compressing system for compressing serial image data with color information | |
EP0647034B1 (en) | A variable word length code decoding method, and a decoder for performing the same | |
JPS6338153B2 (ja) | ||
JPS6190571A (ja) | ランレングス復号化回路 | |
US4519079A (en) | Error correction method and apparatus | |
JP2940948B2 (ja) | データ圧縮方式 | |
EP0499225B1 (en) | Variable-length code decoding device | |
JP3229690B2 (ja) | 可変長符号復号器 | |
JP3083532B2 (ja) | 情報信号復号装置 | |
JPH05341955A (ja) | データ圧縮および復元方式 | |
JPH02218224A (ja) | データ転送方法 |