JPH03293867A - Facsimile equipment - Google Patents

Facsimile equipment

Info

Publication number
JPH03293867A
JPH03293867A JP2323045A JP32304590A JPH03293867A JP H03293867 A JPH03293867 A JP H03293867A JP 2323045 A JP2323045 A JP 2323045A JP 32304590 A JP32304590 A JP 32304590A JP H03293867 A JPH03293867 A JP H03293867A
Authority
JP
Japan
Prior art keywords
data
area
bit
output
address
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
JP2323045A
Other languages
Japanese (ja)
Other versions
JPH0767132B2 (en
Inventor
Mutsuo Ogawa
睦夫 小川
Yuji Koseki
古関 雄二
Yuichi Saito
斉藤 裕一
Shingo Yamaguchi
山口 晋五
Shigeru Katsuragi
茂 桂木
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 JP2323045A priority Critical patent/JPH0767132B2/en
Publication of JPH03293867A publication Critical patent/JPH03293867A/en
Publication of JPH0767132B2 publication Critical patent/JPH0767132B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Image Processing (AREA)
  • Facsimiles In General (AREA)
  • Facsimile Transmission Control (AREA)

Abstract

PURPOSE:To obtain a small-sized and inexpensive facsimile equipment by leaving only required minimum hardware such as a scanner, a plotter, and a MODEM as it is and substituting all of the other hardware with a microcomputer (mu-COM). CONSTITUTION:A picture information input part 11 which converts serial data outputted from a document read part 1 to parallel data to input it to the mu-COM, a reception picture output part >=>=>= which outputs the picture signal decoded by the mu-COM to a reception picture recording part at the time of reception, and a reception picture recording part IV which makes a copy of a document are provided. The mu-COM consists of a microcoprocessing unit part V, a timing signal generating part VI, a control program storage part VII, and an information storage part VIII to perform encoding and decoding of the picture signal and control of each part. That is, hard parts such as a buffer device, coder/decoder device, and a communication controller are substituted with the mu-COM. Thus, the inexpensive facsimile equipment having the compact configuration is obtained.

Description

【発明の詳細な説明】[Detailed description of the invention]

本発明は、ファクシミリ装置に係り、特にマイクロコン
ピュータを用いたファクシミリ装置に関する。 最近のマイクロコンピュータは集積回路技術の進歩によ
り、その発達はめざましく、小型な割に大きな記憶容量
を持ち、高度の演算処理の可能なものが非常に安価に得
られるようになった。 このため、マイクロコンピュータはあらゆる分野に浸透
し、ファクシミリ装置においても従来専用のハードウェ
アで構成されていた部分がマイクロコンピュータで置き
換えられるようになった。 しかし、マイクロコンピュータは、現在のところその演
算処理速度に限界があり、高速処理を行うハードウェア
部分には取って代ることの出来ない難点があった。 一方、ファクシミリ装置における符号化処理にはビット
毎の処理が必要となるため高い処理速度が要求される。 従って、これ迄開発されて来たマイクロコンピュータを
用いたファクシミリ装置においては、いずれも高速処理
が必要な部分は専用のハードウェアで構成し、マイクロ
コンピュータは専らそのハードウェアの補助的手段とし
て用いられているに過ぎず、マイクロコンピュータの持
つ機能を充分に活用する迄には至らなかった。 例えば、第1図の(a)、(b)はマイクロコンピュー
タを用いた従来のファクシミリ装置のブロック構成図を
示したものであるが、データは専用のハードウェアで処
理するように構成し、そのときマイクロコンピュータμ
mC0M (以下、単にH−COMと略記する)は各イ
ンタフェース回路1/Fを介してそれらのハードウェア
をシーケンス制御するために用いられているに過ぎなか
った。 従って、送信側と受信側で共通に使用できるものは共通
にしてファクシミリ装置を構成したとしても、シフトレ
ジスタあるいはランダムアクセスメモリ等のメモリ、カ
ウンタ、多数のゲート回路及びタイミング制御用のフリ
ップフロップ等から成るバッファ装置BtJFが必要と
なる。 プロトコルを行う際、HDLCのフォーマットを作成し
たり、受信時そのフォーマットのデータを解読したりす
るためのデイレ−回路、フラグ、誤りチエツクコードの
発生器及び検出器、多数のカウンタ、フリップフロップ
、シフトレジスタ、ゲート回路等から成る通信制御装置
CCUが必要となる。 送信時、ランレングスを計数するためのカウンタ、ラン
の切れ目を発見するための変化点検出用フリップフロッ
プ及び排他的論理和回路、ランレングスに応じた符号化
コードを選択するためのリードオンリメモリ、リードオ
ンリメモリからの出力を一時的貯え回路レートとの速度
調整を行うためのFIF○バッファメモリ、符号化コー
ドをFIFOバッファメモリに転送するためのカウンタ
、圧縮率が高い場合の最小伝送時間補正用のFILL(
補充)ビット発生用カウンタ及びそのとき必要なりロッ
クを制御するための多数のフリップフロップ及びゲート
回路から成るコーダ装置DCR■が必要となる。 受信時、通信制御装置CCUから入力する受信画データ
の速度変換を行うためのFIFOバッファメモリ、受信
画データからFOL (同期)コード、FII、Lビッ
ト等を取り除くため、それらを検出する検出用回路符号
化コードを取り出すためのシフトレジスタやビットカウ
ンタ、その符号化コードに応じたランレングスバイナリ
数値を選択するためのリードオンリメモリ、そのランレ
ングスバイナリ数値に応じたビット数のランレングスを
次段バッファ装置に転送するためのランレングスカウン
タ、1912分のビット数を計数して誤り検出を行うた
めの累計カウンタ、そのとき必要なりロックを制御する
ための多数のフリップフロップ、ゲート回路から成るデ
コーダ装置DCRIIが必要となる。尚、第1図(a)
、(b)において、SCNはスキャナ、MDMはモデム
、PLはプロッタ、COはコピー、CPU、ROM、R
AMはμ−COMを構成するマイクロプロセッサ、リー
ドオンリメモリ、ランダムアクセスメモリ、BUSはパ
スラインである。 このように、従来のファクシミリ装置においては、シス
テムコントローラ等の極く限られた部分をμmC0Mに
置き換えているに過ぎず、装置の大半はランダムロジッ
ク、ハードワイヤードに頼らざるを得なかったため、依
然、装置が大型且つ高価になる欠点があった。 本発明は上記の点に鑑みなされたものであって、ファク
シミリ装置におけるスキャナ、プロッタ、モデム等必要
最小限のハードウェアのみ残し、その他のハードウェア
は一切μmC0Mで置き換えることにより、小型且つ安
価なファクシミリ装置を提供することを目的とする。 この目的を達成するために本発明は、送信画情報の符号
化処理および/あるいは受信画データの復号化処理もμ
mC0Mで行ない得るようにファクシミリ装置を構成し
たことを特徴とする。 以下、本発明の実施例について説明するが、その前に、
本実施例における特徴点を列挙しておく。 即ち、その特徴点は下記の通りである。 (1)読取装置による画情報の読取後、ランレングスの
計数から符号化、データの伝送フォーマット形成に至る
までをμmC0Mで行なうようにした点。 (2)受信データをバスを介してμmC0Mに転送し、
その後の受信データの復号から画データへの変換、記録
装置へのデータの転送に至るまでをμmC0Mで行なう
ようにした点。 (3)読取装置における原稿照明用光源の点滅、原稿走
査機構の駆動停止、モデムおよび/または網制御装置の
起動、停止をμmC0Mで行なうようにした点。 (4)相手装置とのハンドシェークのためのプロトコル
、自己装置のモード設定をμmC0Mで行なうようにし
た点。 (5)相手装置への自己装置の具備する機能の通知およ
び/または相手装置のモード設定をμmC0Mで行なう
ようにした点。 (6)受信した画データの誤り検出、誤りを発生したラ
インの画情報の処置をμmC0Mで行なうようにした点
。 (7)記録装置における記録紙の搬送装置の駆動、停止
、記録タイミングの制御をμmC0Mで行なうようにし
た点。 (8)操作部における表示ランプの点滅、操作信号の受
入れをμmC0Mで行なうようにした点。 (9)μmC0Mで以上の動作を行う際の使用時間をう
まく割り振ることにより1台のμmC0Mで゛も上記全
ての動作を行えるようにした点。 (10)読取装置からのデータ転送に際して、イメージ
センサの画像積分時間よりも短時間にデータ転送を終了
するようにし、μmC0Mの最高速度に追従できるよう
にした点。 (11)画信号の前処理を複数ビット同時に行なうよう
にした点。 (12)画信号の符号化を短時間で行うため、複数ビッ
トの一括変化点検出を先ず始めに行なうようにした点。 (13)続いて上記変化点が検出されたとき、1ビツト
づつの検出に切り換えるようにした点。 (14)操作時、操作スイッチのチャタリングを防止し
て操作信号を確実にμmC0Mに取り込むようにした点
である。 尚、本実施例における、インターフェース、マイクロプ
ロセッシングユニット、リードオンリメモリ、ランダム
アクセスメモリとしては、インテル社の8212.80
85.8316.8101A4等を用いて構成している
が無論これに限定する必要のないことは言う迄もない。 以下、本発明の実施例を第2図以下の図面を参照して詳
細に説明する。 第2図は本発明によるファクシミリ装置全体のシステム
ブロック構成図を示したもので、■は送信時原稿を読み
取り画信号を出力する原稿読取部、■はその画信号をμ
mC0Mで符号化処理するとき、高速化処理を可能にす
るため、原稿読取部1から出力されたシリアルデータを
8ビツト毎のパラレルデータに変換してμmC0Mに入
力する画情報入力部である。■は受信時μmC0Mで復
号化された画信号を受信画記録部へ出力する受信画出力
部、■は原稿のコピーを得る受信画記録部である。 μmC0Mはマイクロプロセッシングユニット部■、タ
イミング信号発生部■、制御プログラム記憶部■、情報
記憶部■から成り、画信号の符号化、復号化、各部の制
御等後述する仕事を行う。 ■は送信時μmC0Mで符号化された8ビツト毎のパラ
レルデータをシリアル変換してモデムMDMに出力する
一方、受信時モデムMDMから入力する符号化されたシ
リアルデータを8ビツト毎のパラレルデータに変換して
μmC0Mに入力する送受信情報入出力部である。この
送受信情報入出力部■は画データの入出力の他プロトコ
ル等を行なう際、必要なデータの入出力を行なうことは
勿論である。 Xおよび刀は制御信号入力部および出力部であり、原稿
読取部■、受信画記録部■、モデムMDM、網制御部N
CU、操作表示部10Pからの信号をμmC0Mに入力
する一方、μmC0Mから所定の制御信号を各部に出力
する部分である。 本実施例のファクシミリ装置は概略化上のように構成さ
れているものであるが、次に、上述各部の具体的構成お
よび作用を第3図以下の図面を参照して順次説明してい
く。尚、モデムMDM、網制御部NCU、操作表示部I
OPは従来公知のものを用いれば良く、また、本発明に
直接関係がないので、その説明は省略する。また、以下
の説明においては、原則として、バス、信号線は大文字
で、また、そこに現れる信号は小文字で表わす。 原稿読取部I (第3図参照) 第3図の1点鎖線部分が原稿読取部■で、PMはj稿の
副走査送りを行なうためのパルスモータ、Rはそのパル
スモータPMにより駆動される原稿搬送ローラ、Llは
原稿検出用光源、L、は原稿照明用光源、SL、、SL
、は原稿検出器である。 オペレータが、手動或は原稿給紙装置により、原稿を矢
印方向から原稿受付口に挿入すると、原稿検出器SL、
が作動する。 μmC0Mは定期的に検出器SL、の状態を監視してい
るので検出器SL、が作動すると、後述する制御信号出
力部℃を介して、点灯指令を原稿照明用光源駆動袋5f
 OL Dに出力して光源り、を点灯すると共に、パル
スモータ駆動回路PMDに駆動信号を出力してパルスモ
ータPMを回転させる。 パルスモータPMが回転すると、搬送ローラRが回り出
し、原稿を矢印方向に搬送する。 原稿先端が検出器SL、位置に達すると検出器SL、は
、後述する制御信号入力部Xを介して、それをμmC0
Mに知らせる。 μmC0Mは、そこでパルスモータPMを一旦停止させ
たのち、以後読み取り走査時における副走査送りに切り
換える。 原稿画像はコンタクトガラスCG、ミラーM、レンズl
を介してイメージセンサIs上に結像される。イメージ
センサISには、μmC0Mの制御の下に画情報入力部
りからエレメントクロックelck及び行同期パルスS
Sが入力し、そのクロックに同期して出力するビデオ信
号は増幅NA、2値化回路Bを経て1ビツトづつシリア
ルに画情報入力部■に入力する。 画情報入力部■(第4図(a)、 (b)参照)画情報
入力部■は第4図(a)の1点鎖線部分に示すように、
カウンタCT、、シフトレジスタSR,l−ライステー
トバッファTBから構成され、2値化回路Bから出力さ
れるシリアル画データを8ビツト毎のパラレル画データ
に変換し、後述するデータバスD。−D、上に出力する
。 一般にシリアルデータをパラレルに変換する場合、シフ
トレジスタを2本用い、その一方にシリアルデータを入
力中、他方からパラレルデータを取り出す方法もあるが
、本実施例ではμmC0Mがパラレルデータを処理する
時間内に次のデータをシフトレジスタ内に満すようにク
ロック速度を設定しているため、図示のようにシフトレ
ジスタは1本だけで構成している。 カウンタCT、はμmC0Mから出力される後述するリ
ードストローブrSoが入力したとき、続いてエレメン
トクロックelckを8個出力するため、プリセット可
能な同期式の4ビツトバイナリカウンタで構成されてい
る。 カウンタCT、は、そのLm子に論理「1」が入力して
いるときはCP端子に入力するクロックの立ち上がりで
カウントアツプする。また、L端子入力が論理「o」の
ときはα、β、γ、δ端子に入力される論理に出力端子
Qα、Qβ、Qγ、Qδがセットされる。またR端子に
「0」が入力すると、クロック入力とは非同期でリセッ
トされる。 C0端子からはQα〜Qδ出力が全て「1」、即ち、1
6進数Fとなったとき「1」が出力される。 Go出力及びQδ小出力NORゲートを介してカウンタ
CT、のL端子に入力する。従って、カウンタCT、の
値が0〜7及び16進数Fとなったとき、L端子入力は
「0」となる。またセット端子α、βには常に「O」、
γ端子にはQγ小出力δ端子にはQγ小出力入力する。 従って、カウンタCTIの値が4〜7又は16進数C−
Fの時、γ端子入力は「1」、δ端子入力は「O」、カ
ウンタCTIの値がO〜3又は8〜13の時、γ端子入
力はrQJ 、δ端子入力はFIノとなる。これらのこ
とから結局カウンタCT、の値が4〜7及びFの時は4
に、また、カウンタCT、の値が0〜3の時は8に夫々
CP端子に入力する次のクロックの立ち上がりでセット
される。 このカウンタCT、のQδ小出力、ANDゲートに入力
し、エレメントクロックelckの発生、停止を制御す
る。 シフトレジスタSR,は、8ビツトのシリアル入力パラ
レル出力シフトレジスタで構成されている。 トライステートバッファTBはリードストローブrso
がアクティブな期間シフトレジスタSR1にシフトイン
されたデータ8ビツトをμmC0Mの夫々8本のデータ
バスD。−D、上に出力する。 次に、その動作を第4図(b)のタイムチャートを参照
して説明する。 μmC0Mからリードストローブrso(負パルス)が
出力されると、このパルスは後述する信号線rso を
介して画信号入力部■のトライステートバッファTBの
G端子に入力し、シフトレジスタSR,の内容をパラレ
ルに8本のデータバスD0〜D、上に出力する。同時に
カウンタCTのR端子にも入力し、リ−にストローブr
soの立ち下がりでカウンタCT、 をリセットする。 データバス上に出力されたパラレルデータはμmC0M
のアキュームレータ内に取り込まれる。 ところで、このときのリードストローブrs。 の発生タイミングは自由であり、そのパルス幅も任意で
よい。また、クロックclkの周期は、μmC0Mがリ
ードストローブrsa を出力することによりデータを
取り込んでから、次のデータを取り込むためにリードス
トローブrso を出力する間に、少なくとも9クロッ
ク発生しないとシフトレジスタSR,内に8ビツトのデ
ータが満されないので正常な動作が行われなくなるが、
その間9クロック以上発生すれば、その周期は任意で良
い。 カウンタCT t がリセットされることにより、その
Qα〜Qδ出力はro OOOJ となる。 この結果、■、大入力「0」、α〜δ入力は「0001
Jとなり1次にクロックclkがカウンタCT、に入力
したとき、その立ち下がりでQα〜Qδ出力はrooo
IJ即ち8にセットされる。 カウンタCT、が8にセットされ、Qδ小出力「l」と
なってANDゲートが開かれると、ANDゲートからク
ロッグが出力され、このクロックがエレメントクロッグ
elckとしてイメージセンサIsに入力する。これと
同時にシフトクロック5fckとしてシフトレジスタS
R,にも入力する。 イメージセンサISは、例えば、CODで構成され、エ
レメントクロック5ickの入力に同期して、ビデオ信
号をシリアルに出力する。このビデオ信号は、前述した
通り増幅器A、2値化回路Bを経て、シフトレジスタS
R,に加わり、そこに入力するシフトクロック5fek
に同期してlビットづつ入力する。 Qδ小出力「1」となったことにより、L入力が「1」
となり、以後カウンタCT + はクロックclkに同
期してその値を1つづつインクリメントしていく。 更にグロックclkが7個入力して、カウンタCT、の
値がF即ちrl 111Jとなったとき、co小出力[
1]で、L入力は再び「OJとなる。 また、このときα〜δ入力はroo 10Jとなる。 従って、次のクロックclkが入力すると、その立ち下
がりで、カウンタCT、は4にセットされANDゲート
を閉じる。 この間、ANDゲートからは合計8個のクロッグが出力
され、このクロックに基づいて、シフトレジスタS R
l には8ビツトのシリアルデータD。〜■−〕、が入
力されたことになる。 以後、カウンタCT、はクロッグclkの入力に同期し
て4のセットを繰り返す。また、シフトレジスタSRは
8ビツトのデータd。〜d、を保持する。 次に再びμmC0Mからリードストローブrs0が出力
されると、シフトレジスタSR,に保持されていたデー
タは8本のデータバスD、〜D7上に出力されると共に
、カウンタCT t はリセットされ、再び上記一連の
動作を繰り返す。 このようにして、μmC0Mは主走査lライ2分のデー
タを取り込んで行く。例えばB4サイズの原稿から1ラ
イン2048ビツト分の画データを取り込む場合、8ビ
ツトづつ256回上記動作を繰り返す。 μmC0Mは取り込んだ画データを1ライン分づつ後述
する符号化を行ったのち、送受信情報入出力部■、モデ
ムMDM、網制御部NCUを介して相手側装置にデータ
を伝送する訳であるが、これらの動作説明を行なう前に
、相手側装置から送られてきたデータをμmC0Mで復
号化したのち、その受信画を記録するための受信画出力
部m、受信画記録部■について説明しておく。 尚、本実施例では感熱記録方式を採用しているため、受
信画出力部m及び受信画記録部へ′の構成も、それに適
した回路構成になっているが、若干の変更を加えるだけ
で種々の記録方式に適用可能であり、その基本構成は、
感熱記録方式たけに限定されるものでないことは言う迄
もない。 受信画出力部m(第5図(a)、(Ll)参照)受信画
出力部口は、第5図(、l)に示すように、33ビット
シフトレジスタSFR,〜SFR,、ナンドゲーh N
 、A N D 、〜NAND、、電源スイッチングト
ラン・シスタTr、〜Tr、、モノマルチM、反転回路
Nが図示のように結線されて構成されている。 各シフトレジスタSFR,〜SFR,の入力端子INに
はデータバスD6〜D、が接続されており。 また各シフト1ノジスタSFR,〜SFR,の出力端子
01は、各ナントゲートNAND、〜NAND。 に、出力端子O1〜○、は、後述する受信画記録部■の
サーマルエレメントの信号入力線B、〜B、。 に接続されている。 各電源スイッチングトランジスタT r 、〜Traの
各出力端子は後述するサーマルエレメントの各七グメン
ト選択入力線EG、〜EG、に接続されている。 次にその動作を第5[J(b)のタイムチャートを参照
して説明する。 受信時、μmC0Mは受信データの後述する復号化処理
を行ない、復号化された画データを8ビツトづつパラレ
ルにデータバスD。〜D7上に出力する。また、このと
きμmC0Mは各8ビツトパラレルデータに同期し、て
ライトストローブW S 。 を信号線WSo上に出力する。 各8ビツト毎のデータはライトストローブWS0によっ
て各シフトレジスタSFR,〜SFR,に順次入力し、
書き込まれて行く。 このようにして、各シフトレジスタSFR〜S F R
s に32ビット分のデータ転送が完了したとき、即ち
、合計256ビツト分の@i素データが画情報出力部m
に転送されたとき、μmC0Mはデータの転送をひとま
ず停止して最後にサーマルエレメントの各セグメントを
選択するデータssdをライトストローブW S Oと
共に出力する。 これがデータバスD0〜D、を介して各シフトレジスタ
SFR,〜SFR,の33ビツト目にシフトインされる
。 このセグメント選択データは各256ビツトの画データ
毎に付加され、その結果、後述するようにシフトレジス
タSFR,−3FR,内のデータが更新される毎に、シ
フトレジスタSFR,〜SFR。 のO1出力を順番に1にしていく。 μmC0Mから所定のデータが出力され、これが画情報
出力部mのシフトレジスタSFR,−3F Raに記憶
されると、統いてμmC0Mからはリードストローブr
s、が出力され、これが画情報出力部■のモノマルチM
に入力する。 この結果、モノマルチMからは所定時間τだけパワーイ
ネーブルが発生し、ゲートN A N D + 〜NA
NDIに入力する。一方、このときゲートNAND、〜
NAND、にはシフトレジスタSFR〜5FRaの出力
端子O3〜O,から信号線G1〜G、を介してセグメン
ト選択データssdが入力しているので、所定のゲート
、例えばlラインの最初のセグメントを記録する場合に
はゲートNAND、の出力が「0」となり、トランジス
タTrがオンして受信画記録部■のサーマルエレメント
SEの信号線EG、  を電源に接続する。 受信画記録部■(第6図(a)、(b)参照)受信画記
録部■は第6図(a)に示すように感熱記録紙の副走査
送りを行なうパルスモータP M、パルスモータPMに
より駆動され、記録紙を搬送する搬送ローラR1押えロ
ーラRO、サーマルエレメントSE、記録紙ロールPR
1記録紙検出器SPから構成されている。 サーマルエレメントSEは、第6図(b)に示すように
、B4サイズの記録紙に記録するため、■ライン分20
48ビットの発熱抵抗素子Rl”” R!。、8が配列
されて構成されている。各素子は256ビツトづつ8つ
のセグメント分割され、各セグメントの各素子の一端は
共通に各セグメント選択信号EG、−EG、に接続され
ている。また、各素子の他端側は各セグメントにおける
配列順に共通のサーマルエレメント入力線B1=Bzs
gに接続されている。尚、各素子に接続されている、ダ
イオードDは電流の回り込みを防止するために設けられ
ているものである。 次にその動作を説明する。 萌述したように、μmC0Mから出力された最初の1セ
グメントが256ビツトの画データとセグメント選択デ
ータが第5図(a)の受信画出力部■に入力し、更にラ
イトストローブW S 、が入力すると、受信画出力部
mから、セグメント選択信号線’E G 、を介して電
源電圧が、また信号線81〜B164 を介して、画信
号がサーマルエレメントSEの各発熱抵抗素子R,〜R
o6に印加する。この結果、感熱記録紙上には、最初の
セグメントの画信号が記録されるにの記録時間は前述し
たようにモノマルチMの出力持続時間τにより決定され
る。 lセグメント分の記録が終ると、μmC0Mからは次の
セグメントの画データ及びセグメント選択データが出力
され、これが受信画出力部■に入力する。更にライトス
トローブWS、が入力すると、上述同様にして今度は発
熱抵抗素子R7,7〜R51,が駆動され、2番目のセ
グメントの画信号が記録される。 このような動作を8回繰り返すことにより、lライン分
2048ビットの画信号が記録紙上に記録される。 この間、μmC0Mからは制御信号出力部Mに後述する
パルスモータ駆動データが出力され、それに基づいて、
パルスモータPMが回転し、記録の副走査が行なわれる
。 また、μmC0Mは定期的に検出器SPの状態をチエツ
クし、もし記録紙がなくなった場合にはしかるべき処置
を取る。 先にも述べた通り、本実施例におけるμmC0Mはマイ
クロプロセッシングユニット部V、タイミング信号発生
部■、制御プログラム記憶部■、情報記憶部■から構成
されている。以下、これらの構成を順に説明していく。 マイクロプロセッシングユニット部V(第7図参照) マイクロプロセッシングユニット部■(以下、単にCP
 tJと略記する)は、第7図に示すように、本実施例
ではインテル社の8085CP Uを用いて構成してい
る。 この8085CP Uには、アドレス及びデータを出力
するための16個の端子があり、その16個の端子上に
、第1のタイミングでは上位8ビツト、下位8ビツト計
16ビツトのアドレス信号a0〜a4が、また第2のタ
イミングでは上位8ビツトのアドレス信号a、〜ass
及び8ビツトのデータ信号d0〜d、が出力されるよう
に構成されている。従って、第2のタイミングで8ビツ
トのデータ信号dO〜d、が出力されたとき、上位、下
位16ビツトのアドレス信号a0〜a、を出力するため
、第1のタイミングで出力された下位8ビツトのアドレ
ス信号a0〜a、をラッチしておく必要がある。このた
め、ラッチ回路RCHI  を設け、下位8ビツトのア
ドレス信号80〜a7およびタイミング的にずれて8ビ
ツトのデータ信号d0〜d7が出力される8085CP
U8個の出力端子を、そのラッチ回路RCH1に接続し
ている。 即ち、8085CPUからは、第1のタイミングでアド
レス信号aO〜a、が出力されるとき、それと同期して
ale信号も出力される。従って、そのale信号をラ
ッチストローブとして、ラッチ回路RCH,に入力する
ことにより、上記下位8ビツトのアドレス信号a0〜a
、のラッチを行なう。 ところで、8085CP Uに信号を入出力するための
端子の数は極く限られている。しかし、ファクシミリ装
置の構成を簡単にし、しかも装置を都合良く作動させる
ためには、もっと多くの信号線をCPUとメモリ、入出
力装置間に設け、より多くの信号を入出力する必要があ
る。 このため、本実施例ではデコーダDCD、〜DCD i
 を設け、その信号線の数を増している。 即ち、デコーダDCD、には、上位のアドレスの14ビ
ツト目から16ビツト目 (ass〜a Is)の3ビ
ツトを入力することにより8本、デコーダDCD、には
、下位のアドレスの5ビツト目から8ビツト目(a4〜
a、)の4ビツトを入力することにより16本、デコー
ダDCD、には下位のアドレスの2ビツト目から4ビツ
ト目(at〜aJ)の3ビツトを入力することにより8
本漬号線を増している。しかし、本実施例の場合、それ
らの信号線を全部使用する必要もないので、デコーダD
CDでほぞのうちの2本、デコーダDCD、ではそのう
ちの6本のみを使用している。 8085CP Uからは、アドレス信号、データ信号等
をCPtJ内に取り込む入力モードのときwr倍信号、
また出力モードのときrd倍信号出力されるので、これ
らの信号をゲートGを介してデコーダDCD、およびデ
コーダDCD、に入力するように構成している。また、
8085CP Uからはデータバス上にメモリデータを
出力するか、入出力装置のデータを出力するかを弁別す
るio/m信号も出力されるので、この信号もデコーダ
DCD、(のNOT端子)およびDCD、に入力してい
る。 この結果、データバス上にメモリデータを出力する際に
は、デコーダDCD、が選択されて、そのときそこに入
力するアドレス信号alll〜a1.に応じたメモリセ
レクト信号線MS、あるいはMS。 のいずれかに信号m S aあるいはmsoが出力され
る。また、データバス上に入出力装置のデータを出力す
る際には、デコーダDCD、が選択されて、そのときそ
こに入力するアドレス信号84〜a7に応じた■○セレ
クト線IO3,〜IO3,およびl087のいずれかに
信号10so〜10S4あるいは10s、が出力される
。このうち、■○セレク[II○S、に信号10s4が
出力されたときは、更にデコーダDCD、が選択され、
そのとき、そこに入力するアドレス信号a、〜a、に応
じて信号線R8,−RS、および信号線WSO〜ws、
のいずれかにリードストローブ信号rso〜rs、ある
いはライトストローブ信号W S o〜W S 、が出
力される。 また、8085CP Uには、信号線INTが接続され
、後述する各割込信号int、〜1nt=を受は付ける
ようになっている。 本実施例のC:PUVは以上のように構成されており、
従って、そこには8本の上位アドレスバスA、〜A +
 &、データバスD0〜D2、ライトストローブ信号線
WS、8本の下位アドレスバスA、〜A1.2本のメモ
リセレクト信号線MS、、MSo、5本のIOセレクト
信号線IO5?、l03O〜工O8s、3本のリードス
トローブ信号線RS o〜R8,,5本のライトストロ
ーブ信号線WS0〜WS4および割込要求信号線INT
が接続されている。 勿論これはあくまでも本発明の一実施例に過ぎず、使用
するマイクロプロセッサが興なれば、その回路構成も自
ずと興なって来ることは言う迄もない。 上記各信号線のうち、例えばリードストローブ信号線R
36は既に説明した第4図(a)の画情報入力部■に、
ライトストローブ信号線W S o、WS2は第5図(
a)の画情報出力部正に接続されており、また、その他
のバス、信号線も以下に説明する各部に接続される。 タイミング信号発生部■(第8図参照)タイミング信号
発生部は、第8図に示すように。 水晶振動子QCOを有する水晶発振回路と、そこから得
られるクロックを分周して出力する分周回路DIVとか
ら構成され、前述した第4(5ffl(a)の画情報入
力部■に入力するクロックclk、行同期信号ss、後
述するタイミング信号S、〜S4等を発生する。 制御プログラム記憶部■(第9図参照)制御プログラム
記憶部は前述した動作及び後述する動作を行なわせるた
めの動作手順および後述するコード変換テーブルが記憶
されている部分で、第9図に示すように、4にバイトの
リードオンリメモリ(以下、単にROMと略記する)2
個ROM、、ROM、を用いて構成される。 このROM、、ROM、には、13本のアドレスバスA
。−Al1、メモリセレクト信号線MS0およびデータ
バスD0〜D7が接続されている。 従って、前述したように、CPUから信号線MS0上に
メモリセレクト信号msoが出力されたとき、データバ
スD0〜D7にメモリデータの出力が可能となり、CP
Uから出力されるアドレスバスA 12上のアドレス信
号allによってROM、 あるいはROM、が選択さ
れ、且つ、アドレスバスA0〜A1.上のアドレス信号
12ビ1ソトa。〜allによって所定のアドレス内の
メモリデータ8ビツトd。〜d7がデータバスD。−D
7上に出力される。 情報記憶部■(第1O図参照) 情報記憶部はCPUが所定のプログラムを実行する際、
実行中に必要となるデータを一時記憶する部分で、IK
X4ビットのランダムアクセスメモリ(以下、単にRA
Mと略記する)2個RAMRAM、を用いて構成される
。 このRAM、、RAM、には10本のアドレスバスA0
〜A、、メモリセレクト信号線MS、、ライトストロー
ブ信号線WSおよびデータバスD0〜D。 が接続されている。更にデータバスは4本づつ分割され
てデータバスD0〜D、はRAM、に、データバスD4
〜D、はRAM、に接続されている。 従って、CPUから出力される信号線MSo上のメモリ
セレクト信号ms、によってRAM、あるいはRAM、
が選択され、CPUから出力される信号線WS上のライ
トストローブ信号WSに応じて書き込みあるいは読み出
し状態にされ、且つ、バスA、−As上のアドレス信号
10ビツトa。〜a。 によって、RAM、およびRA M z内の所定のアド
レスが選択され、そこにバスD。〜D7上のデータd0
〜d7が4ビツトづつ分割されて入力、あるいは、そこ
から4ビツトづつデータバスD。〜D、に出力される。 送受信情報入出力部■(第11図(a)〜(C)参照)
送受信情報入出力部は、送信時μmC0Mから出力され
る8ビツト毎の符号化パラレルデータ、あるいはプロト
コル時μ−〇〇Mから出力される8ビツト毎のパラレル
データを相手装置に送出するため、μmC0Mから出力
される8ビツト毎のパラレルデータをシリアルにモデム
に出力する一方、受信時、相手装置から送られてくるシ
リアルデータをμmC0Mに入力するため、8ビツト毎
のパラレルデータに変換して出力する部分で、ラッチ回
路RCH,〜RCH,、シフトレジスタSR2,8進カ
ウンタCT、、フリップフロップFF、ゲート回路GT
、〜GT、から構成されている。 ラッチ回路RCH,には、8本のデータバスD。 〜D7およびライトストローブ信号線ws1力得統され
ており、CPUがら信号線wsl上にラドストローブ信
号wsが出方されたとき、デーバスD0〜D7上のデー
タd。〜d7をラッチし、フトレジスタSR,の8個の
入力端子P0〜P ? !、:出力する。 シフトレジスタSR,には、モデムがら出力れる受信デ
ータrxdを受は入れるための信号IRXDモデムがら
出力される転送りロックc1mを受は入れるための信号
線CLKMおよびゲ・トGT3から出力されるパラレル
ロード信号pを入力する信号線が接続されている。また
、そ6パラレルデータ出力端子Q7がらはモデムに、云
信データtxdを出力するための信号線TXD力接続さ
れており、送信時パラレルロード信号plが入力された
とき、転送りロックC1kmの立ち上がりでラッチ回路
RCH,のデータd0〜d7をシフトレジスタSR,内
に取り込むと同時に、転送グロックに同期してQ、端子
からモデムに、シリアルにそのデータを出力する。 ラッチ回路RCH,は、トライステート出力付きラッチ
回路で構成されており、そこにはリードストローブ信号
JIR8,,データバスD6〜D、およびゲートG T
 2から出力されるラッチストローブrcを入力する信
号線が接続されており、受信時、ラッチストローブrc
が入力したとき、その立ち上がりでシフトレジスタS 
Rzに入力した8ビツトのデータd0〜d7をラッチ回
路RCH3に取り込み、リードストローブre、が入力
したとき、そのデータd0〜d7をデータバスD0〜D
7上に出力する。 ラッチ回路RCH,はライトストローブWS、の入力に
応じて、そのときCPUからデータバスDo、Dl上に
出力される信号d0、d、をセットし、夫々ゲートGT
、、GT、に出力する。 カウンタCT 1 は転送グロックclkmを8個計数
する毎にキャリCをゲートGT、、GTsおよびフリッ
プフロップFFに出力する。フリップフロップFFはカ
ウンタCT、がキャリCを発生したとき、次の転送りロ
ックclkmの立ち上がりでセットされ、後述する割込
要求信号inn、あるいはintgを発生するためr信
号を発生する。 ゲートGT、はラッチ回路RCH4が割込許可信号1を
発生しているとき、信号rの発生に基づき割込要求信号
int、eあるいはi n t、をCPUに出力する。 CPUには1本の信号線IN丁を介して他の入出力装置
からも割込要求信号が入力するので、それらの割込要因
と区別するためにゲートG T gが設けられている。 即ち、CPUは周期的にリードストローブrc1 を発
生し、信号rをデータバスD0からCPtJに取り込む
ことにより、そのとき発生する割込要求が、送受信情報
入出力部■からの割込要求であることを弁別している。 従って5各割込要求に対して各信号線を用意した場合に
はこのゲートGT、は不要となる。 次に、その動作を送信モードおよび受信モードの場合に
ついて夫々第11図(b)および第11図(C)のタイ
ミングチャートを参照して説明する。 [送信モード) 送信時、第11図(b)に示すように、cpuがらデー
タバスD。、D1上に出力される信号d9、dがライト
ストローブW S 、により、ラッチ回路RCH,にラ
ッチされる。この結果、ラッチ回路RCH,からは送信
モード信号t、 x / r x =論HJI rl」
および割込許可信号1=論理rlJが出力される。 カウンタCT、は転送りロックclkmを8個計数し、
その値が7になったとき、キャリCを発生する。 このキャリCの発生により、フリップフロップFFは次
の転送りロックclkmの立ち上がりでセットされ、信
号rをアンドゲートGT、に出力する。従って、ゲート
GT、がらcPUには割込要求信号i n teが出力
される。またこのキャリCは、ゲートGT、がらパラレ
ルロード信号plとしてシフトレジスタSR,に入力す
る。 シフトレジスタSR,はパラレルロード信号p1の入力
により、次の転送りロックclkmの立ち上がりでラッ
チ回路RCH,のデータd0〜dを取り込む。このデー
タd。−d7は転送りロックclkmにより、シフトさ
れ5Q、端子からシリアルに1ビツトづつモデムに出力
される。 CPUはゲートGT、から出力される割込要求信号in
tゆを受は付けると、次の8ビツトのデータd、〜dt
をデータバスD。〜D、上に出力すると共に信号線WS
t上にライトストローブWS、を出力する。 この結果、ラッチ回路RCH,はライトストローブW 
S 、の立ち上がりでデータd0〜d7をラッチする。 これと同時に、フリップフロップFFはリセットされる
。 転送りロックclkmがS*大入力たとき、シフトレジ
スタSR,内のデータd。−d、は、全てのモデムに出
力されると共に、再びカウンタCT、からのキャリCに
よりパラレルロード信号p1が発生し、ラッチ回路RC
H,のデータをシフトレジスタSR2に取り込むと同時
に、前述同様1ビツトづつモデムに出力する。 このようにして送受信情報入出力部■は、CPUから出
力される8ビツト毎のパラレルデータをシリアルデータ
に変換して連続的にモデムに出力する。 ところで、CPUは割込要求信号1nt6を受は入れて
から、カウンタCT、が次のキャリCを出力する迄に、
データバスD0〜D、上に8ビツトのデータおよびライ
トストローブWSI  を出力すれば良い訳であるが、
もし、CPLIの処理速度が非常に速く、割込要求信号
intゎを受は入れてから転送りロックclkmlビッ
ト以内にデータd o ”” d ?、およびライ[・
ストローブWS、  を出力することができれば、ラッ
チ回路RCH,を省略することができる。従って、この
例は転送りロックclkmが極めて速い場合あるいはC
PUの処理速度が非常に遅い場合に有効である。 〔受信モード] 受信時には、第1.1図(c)に示すように、CPUか
ら出力される信号d。、d およびライトストローブw
s2により、ラッチ回路RCH,は受信モード信号tx
/rm=論理rQJおよび割込許可信号1=論理「1」
を出力する。 カウンタCT、は前述同様転送グロックclkmを8個
計数し、計数値が7になったときキャリCを出力する。 このキャリCはゲートGT、およびフリップフロップF
Fに入力する。 従って、ゲートGT、からは、図示のタイミングで、ラ
ッチストローブrcが発生し、その立上りで、そのとき
シフトレジスタSR,にシフトインされたデータをラッ
チ回路RCH,にラッチする゛。 シフトレジスタSR1には転送グロックclkmに同期
して常時モデムからデータが連続的に1ビツトづつ入力
している。 従って、シフトレジスタSR,内のデータがラッチ回路
RC:H,にラッチされた後、シフトレジスタSR,に
は転送りロックclkmに同期して次のデータd。−d
7が順次シフトインされる。 シフトレジスタSR,にデータdtがシフトインされ、
その出力端子Q0〜Q、にデータd。〜d7が現われる
タイミングで、カウンタCT、からキャリCが出力する
。これによりゲートGT、はラッチストローブrcを発
生し、そのデータd0〜d7をラッチ回路RCH、にラ
ッチする。また、このときフリップフロップFFがセッ
トされ、割込要求信号1nttをCPtJに出力する。 CPUはこの割込要求信号10し、を受けて、再びリー
ドストローブrs、  を出力し、ラッチ回路RCH,
から出力されるデータd。−d7を取り込む。 このようにして、送受信情報入出力部■では、モデムか
ら出力されるシリアルデータを8ビツトのパラレルデー
タに変換してCPUに出力する。 このとき発生するリードストローブrs、  も送信モ
ードにおけるライトストローブWSI と同様、次のラ
ッチストローブreが発生するまでの期間内であればど
こで発生しても良い。また、もしCPUの処理速度が速
く、割込要求信号int、を受は付けてから転送りロッ
ク1ビツト内にリードストローブrs、 を出力するこ
とができれば、うッチ回路RCH,は不要となる。従っ
て、この例は転送グロックが極めて速い場合あるいはC
PUの処理速度が非常に遅い場合に有効であると言える
。 制御信号入力部X(第12図参照) 制御信号入力部は、原稿読取部■、受信画記録部■、モ
デムMDM、網制御部NCU、操作表示部TOP等の入
出力装置から出力される検出信号あるいは状態信号等の
信号をCPTJに取り込む部分で、マルチプレクサML
Pで構成されており、CPUとはデータバスD。、Dい
アドレスバスA。、A、、信号線10S、を介して接続
されている。 CPUからは定期的に入出力セレクト信号i。 S、およびアドレス信号a0、alが出力され、それら
の信号に基づいて選択されるマルチプレクサMLPの端
子に入力している信号をデータバスD。あるいはD1上
に出力する。 *J*信号出力部X(第13図参照) 制御信号出力部は、原稿読取部Iあるいは受信画記録部
■の副走査用パルスモータに相励磁信号を出力するため
のラッチ回路RCH,、RCH,と、原稿読取部■、受
信画記録部■、モデムMDM、網制御部NCU、操作表
示部TOP等の入出力装置に操作信号あるいは表示信号
等を出力するためのアドレサブルラッチ回路ARCHと
から構成されており、CPUとはアドレスバスA0〜A
4、A5、信号線W S z、WS、、l03oを介し
て接続されている。 CPUからライトストローブw s 3 が出力された
とき、ラッチ回路RCH,はアドレスバス上の信号aO
・ a2・a4、a6をラッチし、その信号を原稿読取
部■に出力して後述するようにパルスモータの相励磁を
行う。また、CPUからライトストローブw s 、が
出力されたときは、ラッチ回路6がそのときアドレスバ
ス上に出力されている信号a。、ai、a□、a6をラ
ッチし、受信画記録部■のパルスモータの相励磁を行う
。 CPUから入出力セレクト信号10soが出力されたと
き、アドレサブルラッチ回路ARCHはアドレスバス上
0上の信号a0をラッチし、アドレスバス上の信号a 
、 ”’−a 3に基づいて選択される出力端子から所
定の入出力装置にそのラッチ信号a。を出力する。 本実施例のファクシミリ装置は大略以上のように構成さ
れ、送信モードにおいては第14図の包括動作コロ−で
示す処理が、また、受信モードにおいては第15図の包
括動作フローで示す処理がCPUにより実行される。 次に、その処理の詳細を送信モードおよび受信モードの
場合について以下説明する。 送信モード CPUが第14図に示した処理を実行するためには、以
下に述べる仕事A−Hの時間割振りを考慮する必要があ
る。このため、CPUは各割込要求に応じて各仕事A−
Eを時分割で実行している。 即ち、送信時CPUには、前述した送受信情報入出力部
■から発生する割込要求信号1nteの他にタイミング
信号発生部■から発生する同期信号S1による割込要求
信号int、、同期信号S。 による割込要求信号int、、同期信号S、による割込
要求信号1ntaが信号線INTを介して入力する。そ
の割込要求信号jnt、〜int、に応じて仕事A−D
を行なうときの優先順位はA>B>C>Dの順であり、
常時は仕事Eを実行している。 以下、CPUが行なう仕事A−Hの概略を第16図の画
データ処理経路図を参照して説明する。 〔仕事A1 割込要求信号i n t、による割込要求がかかると、
CPUは仕事Aを実行する。 その仕事内容は、情報記憶部■RAMの後述する画デー
タを記憶するラインバッファエリア(RBFエリア)■
あるいは■が空状態であることを表すメモリ空フラグM
EF Iあるいは■がワーキングエリア(WKエリア)
にセットされていれば、そのフラグMEF Iあるいは
■をリセットすると共にデータ取込フラグDRFIある
いは■をセットする。また、メモリ空フラグMEF+あ
るいは■がリセットされていれば、データ取込フラグD
RFIあるいは■をリセットすることである。 このデータ取込フラグDRF Iあるいは■は以下に述
べる仕事B、Dを行なう際に参照される。 〔仕事B] 割込要求信号intゎによる割込要求がかかると、CP
Uは、上記データ取込フラグDRFiあるいは■がセッ
トされていた場合にのみ、その割込要求を受は付け、原
稿読取部Iの副走査用パルスモータを1ステツプ進める
仕事Bを実行する。 但し、副走査線密度によって、その仕事を行うタイミン
グが多少異なり、副走査線密度7.7本/―の場合は、
フラグDRFがセットされているとき、割込要求信号i
nt、の1つ置きに割込要求を受は付け、1ライン8ス
テツプの副走査を行なう。副走査線密度3.85本/w
ttrの場合は、フラグDRFがセットされているとき
、信号1ntbの発生毎に割込要求を受は付け、1ライ
ン16ステツプの副走査を行なう。 その仕事内容の詳細については後述する。 次に、仕事Cについて説明する前に、先に仕事りおよび
Eについて説明する。 〔仕事D〕 割込要求信号1ntaによる割込要求がかかると、CP
Uは仕事りを実行する。 その仕事の内容は第16図に示すように、データ取込フ
ラグDRF Iあるいは■がセットされている場合に、
原稿読取部I7−読み取られた画データを画情報入力部
■から8ビット単位でCPtJを経由して情報記憶部■
RAMのラインバッファエリア(RBFエリア)■ある
いは■に貯えることである。但し、以上は副走査線密度
7.7本/mの場合であって5副走査線密度3,85本
/I!111の場合はCPUは信号1nta による割
込要求も受は付け、信号int<による割込みによって
1ライン分のデータを取り込み、約ラインとの論理処理
を行なってラインバッファエリア(RBFエリア)■あ
るいはHに貯える。 データの取り込み終了後はメモリフルフラグMFFIあ
るいはHをセットする。 〔仕事E〕 これは通常CPUが実行している仕事で、上記メモリフ
ルフラグMFF Iあるいは■がセットされていれば、
それをリセットし、第+6clに示すように、ラインバ
ッファエリア(RBFエリア)から仕事りによって貯え
られたデータを8ビット単位で取り込み、コード化した
のち、情報記憶部■の後述するFIFOエリアに貯える
。lライン分のコード化処理が終了したときメモリ空フ
ラグMEFIあるいはDをセットする。 [仕事C1 割込要求信号fntcによる割込要求がががると、CP
Uは仕事Cを実行する。 その仕事内容はFIFOエリアに貯えられたコード化デ
ータを8ビツトづつ順次送受信情報入出力部■に出力す
ることである。 第17図は、副走査線密度3.85本/mの場合におけ
る各仕事A−Hのタイムチャートの一例を示したもので
、CPUがラインバッファエリア(RBFエリア)から
8ビツトづつデータを取り込み。 コード化を行なう仕事Eを実行している間に同期信号s
1およびS、に基づく割込要求信号int。 およびint、ががかると、先ずデータ取込フラグDR
F+あるいは■をセットあるいはリセットする仕事Aを
実行し、そのあと原稿副走査用パルスモータを1ステツ
プ進める仕事Bを実行し、仕事A、B完了完了後任事E
に戻る。その間、送受信情報入出力部■ではコード化デ
ータをシリアルにモデムに出力しており、約述したよう
に8ビツトのデータをモデムに出力する毎に割込要求信
号1ntcを発生する。 この割込要求信号int、がCPUに入力すると、CP
Uは仕事Eを中断してFIFOエリアのコード化8ビツ
トデータを送受信情報入出力部■にセットする仕事Cを
実行し、再び仕事Eに戻る。 同期信号S、に基づく割込要求信号int、ががかると
、原稿読取部■で読み取った画データを8ビツトづつラ
インバッファエリア(RBFエリア)に貯える仕事りを
実行し、1ライン分の画データを全てラインバッファエ
リア(RBFエリア)に貯えるまで仕事Eを中断する。 勿論、この間もコード化データを送受信情報入出力部■
に出力する仕事Cは絶えまなく実行されており、従って
、モデムMDMにはデータが途切れることなく出力され
る。 即ち、FIFOエリア容量はコード化処理スピード、ス
キャナスピード、モデムレイトにより決まり、データを
モデムに途切れることなく送出するため最小伝送時間を
維持するに必要なビット数以上にとってあり1本実施例
の場合多少の余裕をもたせて256ビツトにしている。 仕事りがひとまず完了すると、CPUは再び仕事Eに戻
る6次に同期信号stに基づく割込要求信号1ΩL4が
かかると、原稿読取部Iで読み取った画データをライン
バッファエリア(RBFエリア)に貯える際、先に貯え
た画データも同時に取り出し、その論理和を取りライン
バッファエリア(RBFエリア)に貯えている仕事りを
行なう5次に1以上に説明した仕事の更に詳細な動作手
順を@18図以下に説明する。 第18[i!(a)は、原稿読取部Iの副走査用パルス
モータを1ステツプ進める仕事Bの動作手順を示したも
のである。 この仕事Bは前述した通り、ラインバッファエリア(R
BFエリア)にデータの取り込みが可能になったとき、
一定周期で発生する同期信号S。 に基づいて行われる。 CPUが割込要求信号i n tbを受は付けると、そ
れまで実行していた仕事りあるいはEを中断し、それま
でにCPU内の各カウンタ、レジスタ等に入っていたデ
ータをRAMのワーキングエリア(WKエリア)に退避
させる。 次に、パルスモータ励磁パターンをワーキングエリア(
WKエリア)からCPU内にもってきてセットする。 本実施例の場合、パルスモータの相励磁は1−2相励磁
方式を採用しており、前述第13図の制御信号出力部M
で説明した通り、アドレス信号a。、al、a4、a、
をパルスモータの相励磁信号として用いている。 従って、システムスタート時にはパルスモータ相励磁パ
ターン、例えばrl 1100000Jをワーキングエ
リア(WKエリア)にセットしておき、この仕事Bを実
行する毎にそのパターンをCp ll内に取り込み、1
ビツト循環したのち、アドレスバスA6、A1、A4、
A6を介して制御信号出力部刈に出力すると共にそのパ
ターンを再びワーキングエリア(WKエリア)に戻す。 この結果、第18図(b)に示すように、仕事Bを実行
する毎に、パルスモータ相励磁パターンは1ビツトづつ
循環し、その出力a。、al、a4、agはfIS18
図(C)に示す如く変化し、パルスモータを1ステツプ
づつ駆動することができる。 この仕事Bを実行したあとは再び以的に行なっていた仕
事に戻る。 第19図(a)は仕事りにおける原稿読取部■で読み取
った画データを画情報入力部■かも情報記憶部■のライ
〉バッファエリア(RBFエリア)に転送するためのフ
ローで、舵述した2ラインOR処理を行なわない場合の
フローチャートである。 本実施例においては、B4サイズを対象としたので、1
ライン2048ビツトの画素データを取り扱う場合につ
いて説明しているが、1ラインのビット数はこれに限定
されるものではない。 2048ビツトは8ビツト/バイトなので256バイト
で表現できる。 ラインバッファエリア(RBFエリア)としては、第1
0図で説明したIK×4ビット2個、即ち1KX8ビツ
トのRAMの16384番地から16896番地までを
使用する。即ち、これをヘキサデシマルコードで表現し
て、第19図(b)に示すように、ラインバッファ(以
下、単にRBFと略記する)エリアIは4000000
番地OFF番地、RBFエリアUは4100番地から4
1FF番地までを使用する。 また、FIFOエリアとしては、RAMの420020
0番地2FF番地、ワーキングエリア(以下、単にW 
Kエリアと略記する)としては、RAMの430030
0番地3FF番地までを割当てている。 WKエリア内には各種フラグ、書込、続出時のアドレス
等がストアされ、以下のフローチャートを説明するに当
っては、その各種初期設定が既になされ、WKエリアに
ストアされているものとする。 第19図(a)のプログラムがCPUにより実行される
と、CPtJはRBFエリア1あるいは■にデータの入
力が可能か否かWKエリア内にストアされているフラグ
を調べ、RBFエリアの1つが空になってデータ入力が
可能な場合には、WKエリア内にストアされている、R
BFエリアにデータを書込むべきアドレスをCPU内の
アドレスレジスタADHにセットする。 次に画情報入力部■より8ビツト毎のデータをCPUか
らRBFエリアのそのアドレスに転送し、アドレスレジ
スタADHに1を加える。この動作を1ラインにつき2
56回行うと、16ビツトのアドレスレジスタの下位8
ビツトが0になる。つまり、このときRBFエリアには
1ライン分の画データが記憶されることになるので、そ
のRBFエリアがフル(満杯)になったことを示すメモ
リフルフラグMFFをWKエリアにセットする。 副走査線密度7.7本/鴫の場合は、以上のようにして
lライン分の画データを所定のRBFエリア内に格納す
る。 副走査線密度3.85本/saの場合は第20図(a)
、(L))のプログラムに基づいて2ライン分の画デー
タの論理和を取り1ライン分の画データとして所定のR
BFエリアに格納する。 即ち、奇数ラインの画データの場合は第20図(a)の
フローチャートで示すように、前述第19図(a)の場
合と全く同様にして、1ライン分の画データを、例えば
RBFエリア■に格納する。 次に、偶数ラインの画データを8ビツトづつ取り込むと
きに、第201m(b)のフローチャートで示すように
、先にRBFエリアIに格納した奇数ラインの画データ
も8ビツトづつ取り出し、CPU内で論理和を取り改め
てRBFエリア■内に入力していくことにより、OR処
理した1ライン分の画データをRBFエリアIに格納す
る。 次に、このようにして、RBFエリア内に格納された画
データを取り出し、ランレングスコード化して、FIF
Oエリアに貯える仕事Eのフローを第21図乃至第25
図を参照して説明する。 本実施例では、ランレングスコード化をモデファイトホ
フマン方式(Modified )Iuffman C
oding Method)により行っている。勿論値
のコード化方式を採用しても良いことは言う迄もない。 モデファイトホフマン方式の場合には、そのコードはラ
ンレングスに応じてメイクアップコードとターミネーシ
ョンコードに分かれている。 即ち、ターミネーションコードは下記の表1に示すよう
にθ〜63までのランレングスに応じたコードであり、
メイクアップコードは表2に示すよう比64の整数倍の
ランレングスに応じたコードである。また、同期コード
EOLは表3に示すように11個の「0」と最後にrl
」が付加されたコードである。 (以  下  余  白) 表 表 表    3 また、上記表からも分るように、各ランレングスコード
は更に[白Jを表現するWHITEコードと、「黒」を
表現するBLACKコードに分れている。 ところで、ターミネーションコードを作成するため0〜
63までのランレングスをT、メイクアップコードを作
成するためのランレングスを64×M(M=0.1.2
.3・・・ ・・・)と表現すれば、全てのランレング
スRLは、RL=64XM+Tで表現することができる
。 従って、1ライン分の画データから順次このT、Mを見
つけて取り出し、そのT、Mに基づし1てROMに記憶
されているテーブルから所定のコード化データを取り出
し、これをFIF○エリアに順次貯えて行くことにより
、1ライン毎のランレングスコード化を行なうことがで
きる。 ROM内のテーブルは、1つのコード化データを取り出
すためのデータブロックが、3バイトで構成され、その
第1バイト目には、その4ビツト分を使用してコードレ
ングスが、その第2及び第3バイト目にはランレングス
コード化データが記憶されている。 即ち、前記表からも明らかなように、各コードレングス
は夫々異なるので、あるT、Mに応じてテーブルから所
定のランレングスコードを取り出すとき、第2、第3バ
イトのうちどこまでが有効データかを第1バイト目のコ
ードレングスにより識別して取り出すようにしている。 勿論、テーブルの構成法としてはこれに限定されるもの
ではなく、例えば、前記表からも明らかなようにコード
レングスが8ビツト以上のランレングスコードもその9
ビット目以上は「O」となっているから、1つのデータ
ブロックを2バイトで構成し第1バイト目にはコード化
データを、第2バイト目にはランレングスコードを入れ
ておくことにより、T、Mに応じて所定のランレングス
コードを取り出すようにすることもできる。 ところで、ライン毎のコード化を行なう際、同期コード
の後には必ずWHITEコードを出す約束になっている
。即ち、ラインの最初の参照カラーは「白」と決めであ
る。従って「黒」画素のコード化から始まる場合には、
ランレングスOのWHITEコードを伝送する。 第21図は、CPUが通常行っている仕事Eのうち、R
AMのRBFエリアから画データを取り出し、ランレン
グスを得るためのフローを示したものである。 先に述べた通り、この仕事Eも時分割で行なわれるので
、この仕事に入る時、CPUは、先ず。 RBFエリアから8ビツトの画データを取り出すべきア
ドレスをWKエリアからもってきて、CPU内のアドレ
スレジスタADHにセットする。 続いて、トータルコードレングスカウンタTCLCに9
6の補数、ビットカウンタBTCIに8、Tカウンタに
64の補数、MカウンタにOをセットする。BTCIは
RBFエリアから取り出した8ビツトの画データ内に変
化点が存在する場合、その変化点を見つけ出すため、ビ
ット処理を行うとき用いられる8進カウンタである6T
カウンタは、ターミネーションコードテーブルを引くと
きの0〜63までのランレングス1′を得るための8ビ
ツト構成のカウンタで最初に64の補数即ち256−6
4がセットされる。Mカウンタはメイクアップコードテ
ーブルを引く際の前述Mを引数するための8ビツト構成
のカウンタである。尚、トータルコードレングスカウン
タTCLCについては後述する。 次に、CPtJのアキュームレータACCに取り込んだ
8ビツトの画データが全て「O」即ち「白」画素データ
であるか否かをプログラムステップjSTIで判断する
。 ステップJSTIにおける判断結果がNOであればビッ
ト処理に移る。即ち、アキュームレータACCに取り出
した8ビツト画データに「黒」画素情報が含まれていれ
ば、ACCにACCの内容を加えることにより8ビツト
画データを1ビツトシフトする。 その結果キャリが発生(、たか否か、即ち、「白」画素
データから[黒j画素データに移る変化点をステ・・ノ
ブJ S T 2で調べ、その判断結果がYESであれ
ば「白」のランレングス計数を終了して、後述する第2
2図に示す、テーブルから所定のコード化データを取り
出すためのフローに移行する。 例えば、1ラインの最初の「黒」画素データが存在する
場合はTカウンタはOのまま、ステップJSTIからス
テップ、、J S T 2を経て第22図のコード化デ
ータを取り出すフローに移行する。 アキュームレータA、 CCに取り出された8ビツト画
データ、即ち、1バイトのデータの最初がrQJであれ
ば、J S T 2での判断結果はNOとなり、Tカウ
ンタに1を加える。即ち、1バイトデータの「白」のラ
ンレングスを計数する。 その結果、Tカウンタからキャリが発生したか否か、即
ち、Tカウンタに1ビツトを加えたとき合計加算数が6
4ビツトに達したか否かをステ・ツブJST3で判断す
る。 このステップ、I S T 3はラインの最初の「白」
ランレングスを計数する場合には関係ないが、次に「黒
」のランレングスコード化処理を実行し、再び二のフロ
ーで「白」のランレングス計数を行う際、関係して来る
。 即ち、以下の説明から次第に明らかとなることであるが
、アキュームレータACCに取り込まれた8ビツト画デ
ータの途中に変化点がある場合、当然状のランレングス
計数はその残りの分の計数処理を先ず行ったのち、次の
1バイトをRBFエリアからもって来て計数処理を行な
うようになる。 従って、Tカウンタには8ビツト以下の端数が入って来
るので、ビット処理を行っている最中、Tカウンタに1
を加えたとき、Tカウンタに入力した合計ビット数が6
4を超えキャリが発生する場合が生じる。 ステップJ Sr3で、そのキャリが発生すれば、メイ
クアップコード作成のためのMカウンタに1を加え、T
カウンタを初期値、即ち、256−64にセットしたの
ち、BTCIに1ビツト計数処理が終了したことを記憶
しておくため、BTCIから1を引く。 1”カウンタに1を加えてもギヤ1ツカ(発生しな(j
れば、直ちにビ・ソ]・カウンタBTC1カ〜らlを弓
き、BTC+が「0」になったか苦力)をステップ、I
 S T 4で判断する。 このステップJ Sr1もステ・ツブJST3の場合と
同様、8ビツト以下の端数処理を行なう場合に関係して
来る。 端数処理が糾らないうちは上記動作を繰IJ返し、変化
点が存在すればコード化データを取+)出すフローに移
行し、Tカウンタに合計64ビ・ソト入れ(f、Mカウ
ンタに1を加えTカウンタ
The present invention relates to a facsimile device, and more particularly to a facsimile device using a microcomputer. Recent advances in integrated circuit technology have led to remarkable progress in microcomputers, and microcomputers that are small, have large storage capacities, and are capable of high-level arithmetic processing can now be obtained at very low prices. For this reason, microcomputers have permeated every field, and microcomputers have come to replace parts of facsimile machines that were previously made up of dedicated hardware. However, microcomputers currently have a limit to their arithmetic processing speed, and the hardware part that performs high-speed processing cannot be replaced. On the other hand, since encoding processing in a facsimile machine requires bit-by-bit processing, high processing speed is required. Therefore, in all facsimile machines that have been developed using microcomputers, the parts that require high-speed processing are constructed with dedicated hardware, and the microcomputer is used exclusively as an auxiliary means for that hardware. However, it was not possible to fully utilize the functions of microcomputers. For example, FIGS. 1(a) and 1(b) show block diagrams of conventional facsimile machines that use microcomputers. When microcomputer μ
The mC0M (hereinafter simply abbreviated as H-COM) was only used to sequence control the hardware via each interface circuit 1/F. Therefore, even if a facsimile machine is constructed using common items that can be used on both the sending and receiving sides, there are many components such as memory such as shift registers or random access memory, counters, many gate circuits, and flip-flops for timing control. A buffer device BtJF consisting of the following is required. When performing the protocol, delay circuits, flags, error check code generators and detectors, numerous counters, flip-flops, and shifters are used to create the HDLC format and decode data in that format when received. A communication control unit CCU consisting of registers, gate circuits, etc. is required. At the time of transmission, a counter for counting the run length, a flip-flop and exclusive OR circuit for detecting change points for detecting run breaks, a read-only memory for selecting an encoding code according to the run length, FIF○ buffer memory for temporarily storing the output from the read-only memory and adjusting the speed with the circuit rate, a counter for transferring the encoded code to the FIFO buffer memory, and for correcting the minimum transmission time when the compression rate is high. FILL(
Supplementary) A coder device DCR is required, which consists of a counter for bit generation and a large number of flip-flops and gate circuits for controlling locking if necessary at that time. At the time of reception, a FIFO buffer memory for converting the speed of received image data input from the communication control unit CCU, and a detection circuit for removing FOL (synchronization) code, FII, L bit, etc. from the received image data. A shift register and a bit counter for extracting the encoded code, a read-only memory for selecting the run length binary value corresponding to the encoded code, and a next-stage buffer that stores the run length of the number of bits according to the run length binary value. A decoder device DCRII consisting of a run length counter for transferring to the device, a cumulative counter for counting the number of bits for 1912 minutes and detecting errors, and a large number of flip-flops and gate circuits for controlling locking if necessary at that time. Is required. Furthermore, Fig. 1(a)
, (b), SCN is a scanner, MDM is a modem, PL is a plotter, CO is a copy, CPU, ROM, R
AM is a microprocessor, read-only memory, and random access memory constituting μ-COM, and BUS is a pass line. In this way, in conventional facsimile machines, only a limited number of parts such as the system controller have been replaced with μmC0M, and most of the equipment has had to rely on random logic and hard-wiring, so The disadvantage is that the device is large and expensive. The present invention has been made in view of the above points, and by leaving only the minimum necessary hardware such as a scanner, plotter, and modem in a facsimile machine and replacing all other hardware with μmC0M, a small and inexpensive facsimile machine can be realized. The purpose is to provide equipment. In order to achieve this object, the present invention also includes the encoding process of transmitted image information and/or the decoding process of received image data.
The present invention is characterized in that the facsimile device is configured so as to be able to perform mC0M. Examples of the present invention will be described below, but before that,
The feature points in this example will be listed below. That is, its characteristic points are as follows. (1) After the image information is read by the reading device, everything from counting the run length to encoding and forming the data transmission format is performed in μmC0M. (2) Transfer the received data to μmC0M via the bus,
The subsequent process from decoding the received data to converting it to image data and transferring the data to the recording device is performed in μmC0M. (3) Blinking of the light source for document illumination in the reading device, driving and stopping of the document scanning mechanism, and starting and stopping of the modem and/or network control device are performed in μmC0M. (4) The protocol for handshaking with the other device and the mode setting of the own device are performed using μmC0M. (5) Notification of functions provided by the own device to the other device and/or mode setting of the other device is performed using μmC0M. (6) Error detection in the received image data and processing of the image information of the line where the error occurred are performed by μmC0M. (7) Control of driving, stopping, and recording timing of the recording paper conveying device in the recording apparatus is performed using μmC0M. (8) The blinking of the display lamp in the operation section and the acceptance of operation signals are performed in μmC0M. (9) By appropriately allocating the usage time when performing the above operations on the μmC0M, it is now possible to perform all of the above operations with a single μmC0M. (10) When transferring data from the reading device, the data transfer is completed in a shorter time than the image integration time of the image sensor, making it possible to follow the maximum speed of μmC0M. (11) The preprocessing of the image signal is performed on multiple bits at the same time. (12) In order to encode the image signal in a short time, the simultaneous detection of change points of multiple bits is performed first. (13) When the above change point is subsequently detected, the detection is switched to one bit at a time. (14) During operation, chattering of the operation switch is prevented and the operation signal is reliably captured in μmC0M. In this embodiment, the interface, microprocessing unit, read-only memory, and random access memory are Intel's 8212.80.
85.8316.8101A4, etc., but it goes without saying that there is no need to limit it to this. Hereinafter, embodiments of the present invention will be described in detail with reference to FIG. 2 and the subsequent drawings. FIG. 2 shows a system block diagram of the entire facsimile apparatus according to the present invention.
This is an image information input section that converts the serial data output from the document reading section 1 into parallel data of every 8 bits and inputs it to the μmC0M in order to enable high-speed processing when performing encoding processing in the mC0M. (2) is a received image output unit that outputs the image signal decoded by μmC0M at the time of reception to the received image recording unit, and (2) is a received image recording unit that obtains a copy of the original. μmC0M consists of a microprocessing unit section (2), a timing signal generation section (2), a control program storage section (2), and an information storage section (2), and performs tasks such as encoding and decoding of image signals and controlling each section, which will be described later. (2) converts the parallel data encoded with μmC0M every 8 bits into serial data and outputs it to the modem MDM during transmission, while converting the encoded serial data input from the modem MDM to parallel data every 8 bits during reception. This is a transmission/reception information input/output unit that inputs the information to μmC0M. Of course, this transmission/reception information input/output unit (2) inputs and outputs necessary data when performing protocols and the like in addition to inputting and outputting image data. X and sword are the control signal input section and output section, which include the original reading section ■, the received image recording section ■, the modem MDM, and the network control section N.
This is a part that inputs signals from the CU and the operation display section 10P to μmC0M, and outputs predetermined control signals from μmC0M to each section. Although the facsimile apparatus of this embodiment is constructed as shown in the schematic above, the specific construction and operation of each of the above-mentioned parts will be sequentially explained below with reference to FIG. 3 and subsequent drawings. In addition, modem MDM, network control unit NCU, operation display unit I
As OP, a conventionally known one may be used, and since it is not directly related to the present invention, its explanation will be omitted. Furthermore, in the following description, as a general rule, buses and signal lines are expressed in uppercase letters, and signals appearing there are expressed in lowercase letters. Original reading section I (see Fig. 3) The one-dot chain line part in Fig. 3 is the original reading section ■, where PM is a pulse motor for sub-scanning feed of the J manuscript, and R is driven by the pulse motor PM. Document conveyance roller, Ll is a light source for document detection, L is a light source for document illumination, SL, SL
, is a document detector. When the operator inserts a document into the document reception slot from the direction of the arrow manually or by using the document feeder, the document detector SL,
is activated. μmC0M regularly monitors the state of the detector SL, so when the detector SL is activated, a lighting command is sent to the document illumination light source drive bag 5f via the control signal output unit ℃, which will be described later.
It outputs to the OLD to turn on the light source, and outputs a drive signal to the pulse motor drive circuit PMD to rotate the pulse motor PM. When the pulse motor PM rotates, the transport roller R starts rotating and transports the original in the direction of the arrow. When the leading edge of the document reaches the position of the detector SL, the detector SL outputs it to μmC0 via the control signal input section X, which will be described later.
Let M know. After μmC0M temporarily stops the pulse motor PM, it thereafter switches to sub-scanning feed during reading scanning. Original image is contact glass CG, mirror M, lens L
The image is formed on the image sensor Is via the image sensor Is. The image sensor IS receives an element clock elck and a row synchronization pulse S from an image information input section under the control of μmC0M.
A video signal inputted by S and outputted in synchronization with the clock passes through an amplification NA and a binarization circuit B, and is serially input one bit at a time to the image information input section (2). Image information input section ■ (see Figures 4(a) and (b)) The image information input section ■ is as shown in the dashed-dotted line in Figure 4(a).
A data bus D, which will be described later, is composed of a counter CT, a shift register SR, and an l-license buffer TB, and converts the serial image data output from the binarization circuit B into parallel image data every 8 bits. -D, output above. Generally, when converting serial data to parallel data, there is a method of using two shift registers and taking out the parallel data from the other while serial data is being input to one of them, but in this example, the time required for μmC0M to process the parallel data is Since the clock speed is set so that the next data is filled in the shift register at the same time, only one shift register is used as shown in the figure. The counter CT is composed of a presettable synchronous 4-bit binary counter in order to output eight element clocks elck when a read strobe rSo, which will be described later and is output from μmC0M, is input. Counter CT counts up at the rising edge of the clock input to the CP terminal when logic "1" is input to its Lm child. Further, when the L terminal input is logic "o", the output terminals Qα, Qβ, Qγ, and Qδ are set to the logic input to the α, β, γ, and δ terminals. Furthermore, when "0" is input to the R terminal, it is reset asynchronously with the clock input. All Qα to Qδ outputs from the C0 terminal are “1”, that is, 1
When the hexadecimal number F is reached, "1" is output. It is input to the L terminal of the counter CT via the Go output and the Qδ small output NOR gate. Therefore, when the value of the counter CT becomes 0 to 7 and the hexadecimal number F, the L terminal input becomes "0". Also, the set terminals α and β are always “O”,
A small Qγ output is input to the γ terminal, and a small Qγ output is input to the δ terminal. Therefore, the value of counter CTI is 4 to 7 or hexadecimal C-
When F, the γ terminal input is "1", the δ terminal input is "O", and when the value of the counter CTI is O~3 or 8~13, the γ terminal input is rQJ, and the δ terminal input is FI. From these things, when the value of counter CT is 4 to 7 and F, it is 4.
Also, when the value of the counter CT is 0 to 3, it is set to 8 at the rising edge of the next clock input to the CP terminal. The Qδ small output of this counter CT is input to an AND gate to control generation and stop of the element clock elck. Shift register SR is composed of an 8-bit serial input/parallel output shift register. Tri-state buffer TB is read strobe rso
The 8 bits of data shifted into the shift register SR1 are transferred to each of the 8 data buses D in μmC0M during the period when the shift register SR1 is active. -D, output above. Next, the operation will be explained with reference to the time chart of FIG. 4(b). When a read strobe rso (negative pulse) is output from μmC0M, this pulse is input to the G terminal of the tri-state buffer TB of the image signal input section (■) via the signal line rso (described later), and the contents of the shift register SR, Output to eight data buses D0 to D in parallel. At the same time, it is also input to the R terminal of the counter CT, and the strobe r
At the falling edge of so, reset the counter CT. The parallel data output on the data bus is μmC0M
is taken into the accumulator. By the way, the lead strobe rs at this time. The timing of generation of is free, and its pulse width may also be arbitrary. In addition, the period of the clock clk is such that if at least 9 clocks are not generated between when μmC0M outputs read strobe rsa to take in data and outputs read strobe rso to take in the next data, shift register SR and Since the 8-bit data is not filled in, normal operation will not be performed.
The period may be arbitrary as long as nine or more clocks are generated during that period. By resetting the counter CT t , its Qα to Qδ outputs become ro OOOJ. As a result, ■, the large input is “0”, and the inputs of α to δ are “0001”.
J, and when the primary clock clk is input to the counter CT, the outputs of Qα to Qδ become rooo at the falling edge.
IJ, that is, set to 8. When the counter CT is set to 8 and the AND gate is opened with the Qδ small output "l", a clock is output from the AND gate, and this clock is input to the image sensor Is as the element clock elck. At the same time, shift register S is set as shift clock 5fck.
Also input R. The image sensor IS is composed of, for example, a COD, and serially outputs a video signal in synchronization with the input of the element clock 5ick. As mentioned above, this video signal passes through the amplifier A, the binarization circuit B, and the shift register S.
Shift clock 5fek added to R, and input thereto
Input l bits at a time in synchronization with . Due to the Qδ small output being “1”, the L input is “1”
After that, the counter CT + increments its value one by one in synchronization with the clock clk. Furthermore, when 7 Glock clks are input and the value of the counter CT becomes F, that is, rl 111J, the co small output [
1], the L input becomes "OJ" again. At this time, the α to δ inputs become roo 10J. Therefore, when the next clock clk is input, the counter CT is set to 4 at the falling edge of the next clock clk. Close the AND gate. During this time, a total of 8 clocks are output from the AND gate, and based on this clock, the shift register S R
l is 8-bit serial data D. 〜■−] has been input. Thereafter, the counter CT repeats the setting of 4 in synchronization with the input of the clock clk. In addition, the shift register SR receives 8-bit data d. ~d, is retained. Next, when the read strobe rs0 is output from μmC0M again, the data held in the shift register SR is output onto the eight data buses D, ~D7, and the counter CT t is reset, and the above Repeat a series of actions. In this way, μmC0M takes in data for two main scan lines. For example, when capturing image data of 2048 bits per line from a B4 size original, the above operation is repeated 256 times for 8 bits each. The μmC0M encodes the captured image data line by line as described below, and then transmits the data to the other party's device via the transmission/reception information input/output unit (2), the modem MDM, and the network control unit NCU. Before explaining these operations, we will explain the received image output section m and the received image recording section ■, which record the received image after decoding the data sent from the other party's device using μmC0M. . Since this embodiment employs a thermal recording method, the circuit configurations of the received image output section m and the received image recording section ' are also suitable for this purpose, but it can be done by making only a few changes. It can be applied to various recording methods, and its basic configuration is as follows:
Needless to say, the method is not limited to only the thermal recording method. Received image output section m (see FIGS. 5(a) and (Ll)) The received image output section has a 33-bit shift register SFR, ~SFR, and NAND game hN, as shown in FIG. 5(a) and (Ll).
, A N D , ~NAND, , power switching transistors Tr, ~Tr, , monomulti M, and inverting circuit N are connected as shown in the figure. Data buses D6-D are connected to input terminals IN of each shift register SFR, -SFR. Further, the output terminal 01 of each shift 1 register SFR, ~SFR, is each NAND gate NAND, ~NAND. Output terminals O1 to ○ are signal input lines B, to B, of a thermal element of a received image recording section (2), which will be described later. It is connected to the. Each output terminal of each power supply switching transistor T r , ~Tra is connected to each seventh segment selection input line EG, ~EG of a thermal element described later. Next, the operation will be explained with reference to the fifth [J(b) time chart]. During reception, μmC0M performs a decoding process (described later) on the received data, and sends the decoded image data 8 bits at a time in parallel to the data bus D. ~Output on D7. Also, at this time, μmC0M is synchronized with each 8-bit parallel data and a write strobe W S is generated. is output onto the signal line WSo. Each 8-bit data is sequentially input to each shift register SFR, ~SFR, by write strobe WS0,
It will be written. In this way, each shift register SFR to SFR
When the data transfer for 32 bits is completed in s, that is, a total of 256 bits of @i element data is transferred to the image information output section m.
When the data is transferred, μmC0M temporarily stops the data transfer and finally outputs data ssd for selecting each segment of the thermal element together with the write strobe WSO. This is shifted into the 33rd bit of each shift register SFR, -SFR, via data buses D0-D. This segment selection data is added to each 256-bit image data, and as a result, each time the data in the shift registers SFR, -3FR, is updated, the shift registers SFR, -3FR, are updated, as will be described later. The O1 output of each is set to 1 in turn. When predetermined data is output from μmC0M and stored in the shift register SFR, -3F Ra of the image information output section m, read strobe r is output from μmC0M.
s is output, and this is the mono multi M of the image information output section ■
Enter. As a result, a power enable is generated from the monomulti M for a predetermined time τ, and the gate N A N D + ~NA
Enter into NDI. On the other hand, at this time the gate NAND, ~
Since the segment selection data ssd is input to the NAND from the output terminals O3 to O of the shift registers SFR to 5FRa through the signal lines G1 to G, the first segment of a predetermined gate, for example, the l line, is recorded. In this case, the output of the gate NAND becomes "0", the transistor Tr is turned on, and the signal line EG of the thermal element SE of the received image recording section (2) is connected to the power supply. Received image recording section ■ (see Figures 6 (a) and (b)) The received image recording section ■ is equipped with a pulse motor PM and a pulse motor for sub-scanning feeding of thermal recording paper, as shown in Figure 6 (a). Conveyance roller R1 that is driven by PM and conveys the recording paper, press roller RO, thermal element SE, and recording paper roll PR.
1 recording paper detector SP. As shown in FIG. 6(b), the thermal element SE records on B4 size recording paper, so
48-bit heating resistance element Rl”” R! . , 8 are arranged. Each element is divided into eight segments of 256 bits each, and one end of each element in each segment is commonly connected to each segment selection signal EG, -EG. In addition, the other end side of each element is connected to a common thermal element input line B1=Bzs in the arrangement order in each segment.
connected to g. Note that the diode D connected to each element is provided to prevent current from flowing around. Next, its operation will be explained. As mentioned above, the first segment of 256-bit image data output from μmC0M and the segment selection data are input to the received image output section (■) in FIG. 5(a), and the write strobe W S is further input. Then, the power supply voltage is transmitted from the received image output unit m via the segment selection signal line 'E G , and the image signal is transmitted via the signal lines 81 to B164 to each heating resistor element R, to R of the thermal element SE.
Apply to o6. As a result, the recording time for recording the image signal of the first segment on the thermal recording paper is determined by the output duration τ of the monomulti M, as described above. When the recording of one segment is completed, the image data and segment selection data of the next segment are outputted from μmC0M, and these are input to the received image output section (2). When the write strobe WS is further input, the heating resistive elements R7, 7 to R51 are driven in the same manner as described above, and the image signal of the second segment is recorded. By repeating this operation eight times, an image signal of 2048 bits for one line is recorded on the recording paper. During this time, pulse motor drive data, which will be described later, is output from μmC0M to the control signal output section M, and based on that,
The pulse motor PM rotates and sub-scanning of recording is performed. In addition, μmC0M periodically checks the status of the detector SP and takes appropriate measures if the recording paper runs out. As mentioned above, μmC0M in this embodiment is composed of a microprocessing unit section V, a timing signal generation section (2), a control program storage section (2), and an information storage section (2). Below, these configurations will be explained in order. Microprocessing unit section V (see Figure 7) Microprocessing unit section ■ (hereinafter simply referred to as CP)
(abbreviated as tJ) is configured using Intel's 8085 CPU in this embodiment, as shown in FIG. This 8085 CPU has 16 terminals for outputting addresses and data, and on the 16 terminals, at the first timing, address signals a0 to a4 of a total of 16 bits (upper 8 bits and lower 8 bits) are output. However, at the second timing, the upper 8 bits of address signals a, ~ass
and 8-bit data signals d0 to d are output. Therefore, when the 8-bit data signal dO-d is output at the second timing, the upper and lower 16-bit address signals a0-a are output, so the lower 8 bits output at the first timing are It is necessary to latch the address signals a0 to a. For this reason, a latch circuit RCHI is provided, and the 8085CP outputs the lower 8-bit address signals 80 to a7 and the 8-bit data signals d0 to d7 with timing shifts.
U8 output terminals are connected to the latch circuit RCH1. That is, when the 8085 CPU outputs the address signals aO to a at the first timing, the ale signal is also output in synchronization therewith. Therefore, by inputting the ale signal as a latch strobe to the latch circuit RCH, the lower 8 bits of the address signals a0 to a
, is latched. By the way, the number of terminals for inputting and outputting signals to the 8085 CPU is extremely limited. However, in order to simplify the configuration of the facsimile machine and to operate it conveniently, it is necessary to provide more signal lines between the CPU, memory, and input/output devices, and to input and output more signals. Therefore, in this embodiment, the decoders DCD, ~DCD i
, and the number of signal lines is increasing. That is, by inputting the 3 bits from the 14th bit to the 16th bit (ass to a Is) of the upper address to the decoder DCD, the decoder DCD inputs 8 bits from the 5th bit to the 16th bit of the lower address. 8th bit (a4~
By inputting the 4 bits of a, ), 16 lines are input, and by inputting the 3 bits from the 2nd bit to the 4th bit (at to aJ) of the lower address to the decoder DCD, 8 bits are input.
The Honzuke Line is being added. However, in the case of this embodiment, there is no need to use all of those signal lines, so the decoder D
The CD uses two of the tenons, and the decoder DCD uses only six of them. From the 8085 CPU, in the input mode where address signals, data signals, etc. are taken into CPtJ, the wr multiplied signal,
Further, since rd times signals are output in the output mode, these signals are inputted to the decoder DCD and the decoder DCD via the gate G. Also,
The 8085 CPU also outputs an io/m signal that determines whether to output memory data on the data bus or input/output device data, so this signal is also sent to the decoder DCD, (NOT terminal of) and DCD. , is input. As a result, when outputting memory data onto the data bus, decoder DCD is selected, and address signals all to a1. Memory select signal line MS or MS according to the memory select signal line MS. A signal mSa or mso is output to either of the two. Also, when outputting data from the input/output device onto the data bus, the decoder DCD is selected, and the select lines IO3, ~IO3, and Signals 10so to 10S4 or 10s are output to either of l087. Among these, when the signal 10s4 is output to ■○ select [II○S, decoder DCD is further selected,
At that time, the signal lines R8, -RS and the signal lines WSO~ws,
Read strobe signals rso to rs or write strobe signals W So to W S are output to either of them. Further, a signal line INT is connected to the 8085 CPU, and is adapted to receive each interrupt signal int, to 1nt=, which will be described later. The C:PUV of this embodiment is configured as described above,
Therefore, there are eight upper address buses A, ~A +
&, data buses D0 to D2, write strobe signal lines WS, eight lower address buses A, ~A1, two memory select signal lines MS, , MSo, and five IO select signal lines IO5? , l03O to O8s, three read strobe signal lines RS o to R8,, five write strobe signal lines WS0 to WS4 and an interrupt request signal line INT
is connected. Of course, this is just one embodiment of the present invention, and it goes without saying that as the microprocessor to be used develops, its circuit configuration will naturally evolve as well. Among the above signal lines, for example, the read strobe signal line R
36 is the image information input section ■ of FIG. 4(a) already explained,
The write strobe signal lines WSO and WS2 are shown in FIG.
The image information output section a) is directly connected, and other buses and signal lines are also connected to each section described below. Timing Signal Generating Section (2) (See FIG. 8) The timing signal generating section is as shown in FIG. It consists of a crystal oscillator circuit having a crystal oscillator QCO, and a frequency dividing circuit DIV that divides and outputs the clock obtained from the crystal oscillator circuit, and inputs it to the above-mentioned fourth (5ffl(a)) image information input section It generates a clock clk, a row synchronization signal ss, a timing signal S, ~S4, etc., which will be described later.Control program storage section 1 (See Fig. 9) The control program storage section stores operations for performing the operations described above and operations described below. As shown in FIG. 9, this is the part where procedures and code conversion tables to be described later are stored, and 4 bytes of read-only memory (hereinafter simply referred to as ROM) 2
It is configured using individual ROMs, ROMs, and ROMs. This ROM,,ROM, has 13 address buses A.
. -Al1, memory select signal line MS0, and data buses D0 to D7 are connected. Therefore, as described above, when the memory select signal mso is output from the CPU onto the signal line MS0, memory data can be output to the data buses D0 to D7, and the CPU
The ROM or ROM is selected by the address signal all on the address bus A12 output from the address bus A1. Upper address signal 12 bit 1 soto a. 8 bits of memory data within a given address by ~all d. ~d7 is data bus D. -D
7 is output. Information storage section (see Figure 1O) The information storage section is used when the CPU executes a predetermined program.
IK is a part that temporarily stores data required during execution.
X4-bit random access memory (hereinafter simply referred to as RA)
It is configured using two RAMs (abbreviated as M). This RAM,,RAM, has 10 address buses A0.
~A, memory select signal line MS, write strobe signal line WS, and data buses D0 to D. is connected. Furthermore, the data bus is divided into four each, and data buses D0 to D are used as RAM, and data bus D4 is used as RAM.
~D, are connected to RAM. Therefore, depending on the memory select signal ms on the signal line MSo output from the CPU, the RAM or RAM
is selected and put into a write or read state according to the write strobe signal WS on the signal line WS output from the CPU, and the address signal 10 bit a on the buses A and -As. ~a. A predetermined address in RAM and RAM z is selected by bus D. ~Data d0 on D7
~d7 is divided into 4 bits each and inputted, or 4 bits each are inputted to the data bus D. ~D, is output. Sending/receiving information input/output section ■ (See Figure 11 (a) to (C))
The transmitting/receiving information input/output unit sends encoded parallel data every 8 bits output from μmC0M during transmission or parallel data every 8 bits output from μ-〇〇M during protocol to the other device. While serially outputting the parallel data of every 8 bits output from the modem to the modem, when receiving, the serial data sent from the other device is input to μmC0M, so it is converted to parallel data of every 8 bits and output. The parts include latch circuits RCH, ~RCH, shift register SR2, octal counter CT, flip-flop FF, and gate circuit GT.
, ~GT. The latch circuit RCH has eight data buses D. ~D7 and the write strobe signal line ws1 are connected, and when the CPU outputs the rad strobe signal ws on the signal line wsl, the data d on the data buses D0 to D7. ~d7 is latched, and eight input terminals P0~P of the foot register SR are latched. ! ,:Output. The shift register SR has a signal IRXD for receiving reception data rxd output from the modem, a signal line CLKM for receiving transfer lock c1m output from the modem, and a parallel signal output from gate GT3. A signal line for inputting a load signal p is connected thereto. In addition, the 6th parallel data output terminal Q7 is connected to the modem by the signal line TXD for outputting the message data txd, and when the parallel load signal pl is input during transmission, the rising edge of the transfer lock C1km is connected to the modem. At the same time, the data d0 to d7 of the latch circuit RCH are taken into the shift register SR, and at the same time, the data is serially output from the Q terminal to the modem in synchronization with the transfer clock. The latch circuit RCH is composed of a latch circuit with a tri-state output, and includes a read strobe signal JIR8, data buses D6 to D, and gates G T
A signal line inputting the latch strobe rc output from 2 is connected, and when receiving, the latch strobe rc
When input, the shift register S
The 8-bit data d0 to d7 input to Rz is taken into the latch circuit RCH3, and when the read strobe re is input, the data d0 to d7 are transferred to the data buses D0 to D.
Output on 7. The latch circuit RCH sets the signals d0 and d output from the CPU onto the data buses Do and Dl in response to the input of the write strobe WS, respectively, and sets the signals d0 and d output from the CPU to the respective gates GT.
, , output to GT. Counter CT 1 outputs carry C to gates GT, , GTs and flip-flop FF every time it counts eight transfer clocks clkm. Flip-flop FF is set at the next rising edge of transfer lock clkm when counter CT generates carry C, and generates an r signal to generate an interrupt request signal inn or intg, which will be described later. When the latch circuit RCH4 is generating the interrupt enable signal 1, the gate GT outputs an interrupt request signal int, e, or int to the CPU based on the generation of the signal r. Since interrupt request signals are also input to the CPU from other input/output devices via one signal line IN, a gate G T g is provided to distinguish them from those interrupt causes. That is, the CPU periodically generates a read strobe rc1 and takes in the signal r from the data bus D0 to CPtJ, thereby confirming that the interrupt request generated at that time is an interrupt request from the transmission/reception information input/output unit (■). It discriminates. Therefore, if each signal line is prepared for each of the five interrupt requests, this gate GT becomes unnecessary. Next, the operation will be explained in the case of transmission mode and reception mode with reference to the timing charts of FIG. 11(b) and FIG. 11(C), respectively. [Transmission Mode] During transmission, as shown in FIG. 11(b), data bus D is transmitted from the CPU. , D1 are latched into the latch circuit RCH by the write strobe W S . As a result, the latch circuit RCH outputs the transmission mode signal t, x / r x = logic HJI rl.
And interrupt permission signal 1=logic rlJ is output. Counter CT counts 8 transfer locks clkm,
When the value reaches 7, a carry C is generated. Due to the occurrence of this carry C, the flip-flop FF is set at the rising edge of the next transfer lock clkm, and outputs the signal r to the AND gate GT. Therefore, an interrupt request signal inte is output to the gate GT and cPU. Further, this carry C is input to the shift register SR as a parallel load signal pl through the gate GT. In response to the input of the parallel load signal p1, the shift register SR takes in the data d0 to d of the latch circuit RCH at the next rising edge of the transfer lock clkm. This data d. -d7 is shifted to 5Q by the transfer lock clkm, and is serially output from the terminal to the modem one bit at a time. The CPU receives an interrupt request signal in output from the gate GT.
When t is accepted, the next 8 bits of data d, ~dt
data bus D. ~D, output to the top and signal line WS
A write strobe WS is output on t. As a result, the latch circuit RCH, becomes the write strobe W.
Data d0 to d7 are latched at the rising edge of S. At the same time, flip-flop FF is reset. When the transfer lock clkm has an S* large input, the data d in the shift register SR. -d is output to all modems, and the parallel load signal p1 is generated again by the carry C from the counter CT, and the latch circuit RC
At the same time as the data of H, is taken into the shift register SR2, it is outputted to the modem one bit at a time as described above. In this way, the transmission/reception information input/output unit (2) converts the parallel data of every 8 bits outputted from the CPU into serial data and continuously outputs it to the modem. By the way, after the CPU receives the interrupt request signal 1nt6 and until the counter CT outputs the next carry C,
It is sufficient to output 8-bit data and write strobe WSI onto data buses D0 to D, but
If the processing speed of CPLI is very fast, after receiving the interrupt request signal int, the data can be transferred within the lock clkml bit? , and Rai[・
If the strobe WS, can be output, the latch circuit RCH, can be omitted. Therefore, this example is useful if the transfer lock clkm is extremely fast or if the transfer lock clkm is
This is effective when the processing speed of the PU is very slow. [Reception mode] During reception, as shown in FIG. 1.1(c), the signal d is output from the CPU. , d and light strobe w
s2, the latch circuit RCH receives the reception mode signal tx.
/rm = logic rQJ and interrupt enable signal 1 = logic "1"
Output. The counter CT counts eight transfer clocks clkm as described above, and outputs a carry C when the count reaches seven. This carry C is gate GT and flip-flop F
Enter in F. Therefore, a latch strobe rc is generated from the gate GT at the timing shown, and at its rising edge, the data shifted into the shift register SR at that time is latched into the latch circuit RCH. Data is continuously input one bit at a time from the modem to the shift register SR1 in synchronization with the transfer clock clkm. Therefore, after the data in the shift register SR is latched by the latch circuit RC:H, the next data d is transferred to the shift register SR in synchronization with the lock clkm. -d
7 are shifted in sequentially. Data dt is shifted into shift register SR,
Data d is output to the output terminals Q0 to Q. At the timing when ~d7 appears, a carry C is output from the counter CT. As a result, gate GT generates latch strobe rc, and latches the data d0 to d7 into latch circuit RCH. Also, at this time, flip-flop FF is set and outputs an interrupt request signal 1ntt to CPtJ. The CPU receives this interrupt request signal 10 and outputs the read strobe rs again, and the latch circuit RCH,
Data output from d. - Take in d7. In this way, the transmission/reception information input/output unit (2) converts the serial data output from the modem into 8-bit parallel data and outputs it to the CPU. Like the write strobe WSI in the transmission mode, the read strobe rs generated at this time may be generated anywhere within the period until the next latch strobe re occurs. Furthermore, if the processing speed of the CPU is fast and the read strobe rs, can be output within one transfer lock bit after accepting the interrupt request signal int, then the latch circuit RCH, is not needed. . Therefore, this example applies only when the transfer clock is extremely fast or when C
This can be said to be effective when the processing speed of the PU is very slow. Control signal input section This is the part where signals such as signals or status signals are taken into the CPTJ, and the multiplexer ML
The CPU is a data bus D. , D address bus A. , A, and are connected via a signal line 10S. The CPU periodically sends an input/output select signal i. S, and address signals a0 and al are output, and a signal input to a terminal of a multiplexer MLP that is selected based on these signals is connected to a data bus D. Alternatively, it is output on D1. *J* Signal output section , and an addressable latch circuit ARCH for outputting operation signals or display signals to input/output devices such as the original reading unit ■, the received image recording unit ■, the modem MDM, the network control unit NCU, and the operation display unit TOP. The CPU is configured with address buses A0 to A.
4, A5, and are connected via signal lines W S z, WS, , l03o. When the write strobe w s 3 is output from the CPU, the latch circuit RCH outputs the signal aO on the address bus.
- Latch a2, a4, and a6, and output the signals to the document reading section (2) to phase excite the pulse motor as described later. Further, when the write strobe w s is output from the CPU, the latch circuit 6 outputs the signal a that is output on the address bus at that time. , ai, a□, and a6 are latched, and the pulse motor of the received image recording section (■) is phase-excited. When the input/output select signal 10so is output from the CPU, the addressable latch circuit ARCH latches the signal a0 on the address bus 0, and
The latch signal a is outputted to a predetermined input/output device from the output terminal selected based on , ``'-a 3. The CPU executes the process shown by the comprehensive operation flow chart in Figure 14, and the process shown by the comprehensive operation flow chart in Figure 15 in the reception mode. will be explained below. In order for the transmission mode CPU to execute the processing shown in FIG. Each job A-
E is executed on a time-sharing basis. That is, at the time of transmission, the CPU receives, in addition to the interrupt request signal 1nte generated from the above-mentioned transmission/reception information input/output section (2), an interrupt request signal int and a synchronization signal S based on the synchronization signal S1 generated from the timing signal generation section (2). An interrupt request signal int based on the signal line INT, an interrupt request signal 1nta based on the synchronization signal S, and an interrupt request signal 1nta based on the synchronization signal S are inputted via the signal line INT. Work A-D according to the interrupt request signal jnt, ~int,
The priority order when performing is A>B>C>D,
Work E is always executed. The outline of tasks A to H performed by the CPU will be explained below with reference to the image data processing path diagram in FIG. [When an interrupt request is made by the task A1 interrupt request signal in t,
The CPU executes work A. Its work consists of the information storage section ■Line buffer area (RBF area) that stores image data (described later) in RAM■
Or memory empty flag M indicating that ■ is empty
EF I or ■ is the working area (WK area)
If it is set, the flag MEF I or ■ is reset and the data acquisition flag DRFI or ■ is set. Also, if the memory empty flag MEF+ or ■ is reset, the data import flag D
It is to reset RFI or ■. This data acquisition flag DRF I or ■ is referred to when performing tasks B and D described below. [Job B] When an interrupt request is made by the interrupt request signal intゎ, the CP
U accepts the interrupt request only when the data acquisition flag DRFi or ■ is set, and executes job B of advancing the sub-scanning pulse motor of the document reading section I by one step. However, depending on the sub-scanning line density, the timing to perform the work is slightly different, and in the case of a sub-scanning line density of 7.7 lines/-,
When flag DRF is set, interrupt request signal i
Interrupt requests are accepted every other time, and sub-scanning of 8 steps per line is performed. Sub-scanning line density 3.85 lines/w
In the case of ttr, when the flag DRF is set, an interrupt request is accepted every time the signal 1ntb is generated, and sub-scanning of 1 line and 16 steps is performed. The details of the work will be described later. Next, before explaining work C, work and E will be explained first. [Job D] When an interrupt request is made by the interrupt request signal 1nta, the CP
U performs the task. The content of the work is as shown in Figure 16, when the data import flag DRF I or ■ is set,
Original reading unit I7 - The read image data is transferred from the image information input unit ■ to the information storage unit ■ in 8-bit units via CPtJ.
It is stored in the line buffer area (RBF area) (2) or (3) of the RAM. However, the above is for the case where the sub-scanning line density is 7.7 lines/m, and the 5 sub-scanning line density is 3.85 lines/I! In the case of 111, the CPU also accepts the interrupt request by the signal 1nta, takes in one line of data by the interrupt by the signal int<, performs logical processing with the approximately line, and stores it in the line buffer area (RBF area) ■ or H Store in. After data capture is completed, the memory full flag MFFI or H is set. [Job E] This is a job normally executed by the CPU, and if the memory full flag MFF I or ■ is set,
Reset it, and as shown in +6cl, take in the data stored in 8-bit units from the line buffer area (RBF area), code it, and then store it in the FIFO area (described later) in the information storage section (■). . When the encoding process for l lines is completed, the memory empty flag MEFI or D is set. [Job C1 When the interrupt request by the interrupt request signal fntc goes down, the CP
U performs work C. Its job is to sequentially output the coded data stored in the FIFO area to the transmitting/receiving information input/output unit 8 bits at a time. Figure 17 shows an example of a time chart for each job A to H when the sub-scanning line density is 3.85 lines/m. . While performing the task E of encoding, the synchronization signal s
1 and S, the interrupt request signal int. and int, first, the data capture flag DR
Execute job A to set or reset F+ or
Return to Meanwhile, the transmitting/receiving information input/output unit (2) is serially outputting coded data to the modem, and as described above, generates an interrupt request signal 1ntc every time 8-bit data is outputted to the modem. When this interrupt request signal int is input to the CPU, the CPU
U interrupts work E and executes work C, which sets the coded 8-bit data in the FIFO area to the transmitting/receiving information input/output section (2), and returns to work E again. When the interrupt request signal int based on the synchronization signal S is received, the image data read by the document reading section 2 is stored in the line buffer area (RBF area) in 8-bit units, and the image data for one line is stored. Work E is suspended until all of are stored in the line buffer area (RBF area). Of course, during this time, the coded data is also transmitted and received by the information input/output section■
The job C to output to the modem MDM is being executed continuously, so data is output to the modem MDM without interruption. In other words, the FIFO area capacity is determined by the encoding processing speed, scanner speed, and modem rate, and is set to be at least the number of bits necessary to maintain the minimum transmission time in order to send data to the modem without interruption. The number of bits is set to 256 bits to allow for some margin. When the work is completed for the time being, the CPU returns to work E again.6 Next, when the interrupt request signal 1ΩL4 based on the synchronization signal st is applied, the image data read by the document reading section I is stored in the line buffer area (RBF area). At the same time, the previously stored image data is also extracted, the logical sum is taken, and the work stored in the line buffer area (RBF area) is performed. This will be explained below. 18th [i! (a) shows the operating procedure for job B in which the sub-scanning pulse motor of document reading section I is advanced by one step. As mentioned above, this work B is performed in the line buffer area (R
When it becomes possible to import data into the BF area),
A synchronization signal S that occurs at regular intervals. It is carried out based on. When the CPU accepts the interrupt request signal i n tb, it interrupts the work or E that was being executed up until then, and transfers the data that had been stored in each counter, register, etc. in the CPU to the RAM working area. Evacuate to (WK area). Next, change the pulse motor excitation pattern to the working area (
WK area) to the CPU and set it. In the case of this embodiment, a 1-2 phase excitation method is adopted for phase excitation of the pulse motor, and the control signal output section M shown in FIG.
As explained in , address signal a. ,al,a4,a,
is used as the phase excitation signal for the pulse motor. Therefore, when starting the system, set the pulse motor phase excitation pattern, for example, rl 1100000J, in the working area (WK area), and every time this work B is executed, that pattern is imported into Cp ll.
After bit circulation, address buses A6, A1, A4,
The pattern is outputted to the control signal output section Maki via A6, and the pattern is returned to the working area (WK area). As a result, as shown in FIG. 18(b), each time work B is executed, the pulse motor phase excitation pattern circulates one bit at a time, and the output a. , al, a4, ag are fIS18
As shown in Figure (C), the pulse motor can be driven one step at a time. After performing this work B, return to the work you were previously doing. Figure 19(a) shows the flow for transferring the image data read by the document reading section 2 to the image information input section 2 or the line buffer area (RBF area) of the information storage section 2 during work, as described below. It is a flowchart when 2-line OR processing is not performed. In this example, since the target is B4 size, 1
Although a case has been described in which pixel data of 2048 bits per line is handled, the number of bits per line is not limited to this. 2048 bits is 8 bits/byte, so it can be expressed in 256 bytes. As the line buffer area (RBF area), the first
Two IK×4 bits, that is, 1K×8 bits RAM addresses 16384 to 16896 are used as explained in FIG. That is, expressing this in hexadecimal code, as shown in FIG. 19(b), the line buffer (hereinafter simply referred to as RBF) area I is 4000000.
Address OFF address, RBF area U is 4 from address 4100
Use up to 1FF address. Also, the FIFO area is 420020 of RAM.
0 address 2FF address, working area (hereinafter simply W
(abbreviated as K area) is 430030 of RAM.
Addresses 0 and 3FF are allocated. Various flags, addresses for writing, successive output, etc. are stored in the WK area, and in explaining the flowchart below, it is assumed that the various initial settings have already been made and stored in the WK area. When the program in FIG. 19(a) is executed by the CPU, CPtJ checks the flag stored in the WK area to see if it is possible to input data into RBF area 1 or ■, and if one of the RBF areas is empty. When the data input is possible, the data stored in the WK area, R
The address at which data should be written to the BF area is set in the address register ADH in the CPU. Next, data of every 8 bits is transferred from the CPU to the corresponding address in the RBF area from the image information input section (2), and 1 is added to the address register ADH. Repeat this action 2 times per line.
After doing this 56 times, the lower 8 of the 16-bit address register
The bit becomes 0. That is, since one line of image data is stored in the RBF area at this time, a memory full flag MFF indicating that the RBF area is full is set in the WK area. When the sub-scanning line density is 7.7 lines/line, image data for one line is stored in a predetermined RBF area as described above. Figure 20(a) when the sub-scanning line density is 3.85 lines/sa.
, (L)), the logical sum of two lines of image data is calculated and a predetermined R is obtained as one line of image data.
Store in BF area. That is, in the case of odd-numbered line image data, as shown in the flowchart of FIG. 20(a), the image data of one line is transferred to, for example, the RBF area Store in. Next, when taking in the image data of the even numbered lines 8 bits at a time, as shown in the flowchart 201m(b), the image data of the odd numbered lines previously stored in the RBF area I are also taken out 8 bits at a time, and By redoing the logical sum and inputting it into the RBF area (2), one line of OR-processed image data is stored in the RBF area I. Next, in this way, the image data stored in the RBF area is extracted, converted into a run length code, and converted into a FIF
Figures 21 to 25 show the flow of work E stored in area O.
This will be explained with reference to the figures. In this embodiment, run length encoding is performed using the Modified Iuffman C
method). Of course, it goes without saying that a value encoding method may also be used. In the case of the Modify Hoffman method, the code is divided into a make-up code and a termination code depending on the run length. That is, the termination code is a code corresponding to the run length from θ to 63 as shown in Table 1 below,
The makeup code is a code corresponding to a run length that is an integral multiple of the ratio 64, as shown in Table 2. Also, as shown in Table 3, the synchronization code EOL consists of 11 "0"s and rl at the end.
” is added to the code. (Margins below) Table Table 3 Also, as you can see from the table above, each run length code is further divided into the WHITE code, which expresses white J, and the BLACK code, which expresses "black." . By the way, in order to create the termination code, 0~
The run length up to 63 is T, and the run length for creating the makeup code is 64 x M (M = 0.1.2
.. 3...), all run lengths RL can be expressed as RL=64XM+T. Therefore, T and M are sequentially found and extracted from the image data for one line, and predetermined coded data is extracted from the table stored in the ROM based on the T and M, and this is stored in the FIF○ area. By sequentially storing the data in , it is possible to perform run length encoding for each line. In the table in the ROM, a data block for extracting one coded data consists of 3 bytes, and the first byte uses the 4 bits to determine the code length. Run length encoded data is stored in the third byte. That is, as is clear from the above table, each code length is different, so when a predetermined run length code is extracted from the table according to a certain T and M, it is difficult to determine which part of the second and third bytes is valid data. is identified and extracted based on the code length of the first byte. Of course, the table configuration method is not limited to this. For example, as is clear from the table above, run length codes with a code length of 8 bits or more can also be used.
Since the bits above are "O", one data block is made up of 2 bytes, and by putting the coded data in the 1st byte and the run length code in the 2nd byte, It is also possible to extract a predetermined run length code depending on T and M. By the way, when performing line-by-line coding, it is a promise that a WHITE code is always issued after the synchronization code. That is, the first reference color of the line is determined to be "white". Therefore, if we start by encoding a "black" pixel,
Transmit a WHITE code with run length O. Figure 21 shows R of the work E that the CPU normally performs.
This figure shows a flow for extracting image data from the AM RBF area and obtaining a run length. As mentioned earlier, this work E is also performed in a time-sharing manner, so when starting this work, the CPU first performs the task E. The address for extracting 8-bit image data from the RBF area is brought from the WK area and set in the address register ADH in the CPU. Next, add 9 to the total code length counter TCLC.
Set 6's complement, bit counter BTCI to 8, T counter to 64's complement, and M counter to 0. BTCI is a 6T octal counter used when bit processing is used to find the change point if it exists in the 8-bit image data extracted from the RBF area.
The counter is an 8-bit configured counter to obtain the run length 1' from 0 to 63 when drawing the termination code table.
4 is set. The M counter is an 8-bit counter used as an argument for M when drawing the makeup code table. Note that the total code length counter TCLC will be described later. Next, it is determined in program step jSTI whether all of the 8-bit image data taken into the accumulator ACC of CPtJ is "O", that is, "white" pixel data. If the determination result in step JSTI is NO, the process moves to bit processing. That is, if the 8-bit image data taken out to the accumulator ACC contains "black" pixel information, the 8-bit image data is shifted by 1 bit by adding the contents of ACC to ACC. As a result, check whether a carry occurred (, that is, the change point from "white" pixel data to [black J pixel data) using the step knob J S T 2, and if the judgment result is YES, check the "white" pixel data. ”, and perform the second run length count described later.
The flow shifts to the flow for extracting predetermined coded data from the table, as shown in FIG. For example, if the first "black" pixel data of one line exists, the T counter remains at 0 and the process moves from step JSTI to step JST2 to the flow of extracting coded data shown in FIG. If the beginning of the 8-bit image data taken out to the accumulators A and CC, that is, 1 byte of data, is rQJ, the judgment result at JST2 is NO, and 1 is added to the T counter. That is, the "white" run length of 1-byte data is counted. As a result, check whether a carry has occurred from the T counter or not. In other words, when adding 1 bit to the T counter, the total number of additions is 6.
Step JST3 determines whether 4 bits have been reached. In this step, IS T 3 is the first "white" of the line.
This is not relevant when counting run lengths, but becomes relevant when the "black" run length encoding process is executed next and the "white" run lengths are counted again in the second flow. That is, as will gradually become clear from the following explanation, if there is a change point in the middle of the 8-bit image data taken into the accumulator ACC, the run length counting process of course first performs the counting process for the remaining part. After that, the next 1 byte is brought from the RBF area and counting is performed. Therefore, the T counter receives a fraction of 8 bits or less, so while bit processing is being performed, the T counter receives 1.
, the total number of bits input to the T counter is 6
There may be cases where the number exceeds 4 and a carry occurs. In step J Sr3, if the carry occurs, add 1 to the M counter for creating the makeup code, and
After setting the counter to the initial value, ie, 256-64, 1 is subtracted from BTCI to remember that the 1-bit counting process has been completed. 1” Even if you add 1 to the counter, 1 gear will not be activated (j
If so, immediately turn the counter BTC1 to 1, step BTC+ to ``0'', and press I.
Judge by ST4. Like step JST3, this step JSr1 is also related to the case of performing fraction processing of 8 bits or less. As long as the rounding is not completed, the above operation is repeated, and if there is a change point, the coded data is taken out (+), and a total of 64 bits are put in the T counter (f, 1 in the M counter). Add T counter

【こ初期値、I!pち、64
の補数をセットする。 ステップJ Sr1の判断結果がYES、1111ち、
ビットカウンタBTCIがOとなれば端数分のビット処
理が終了したのでバイト処理に入る。 バイト処理は、ステップJSTIの$1断結果力でYE
Sの場合に行なわれる。 即ち、1バイトデータが全てOであれtf、Tカウンタ
に8を加え、Tカウンタからのキヤ1)の発生を調べる
。 その結果、キャリの発生があれば、Tカウンタにおける
端数分を考慮した初期設定を行なう。即ち、Tカウンタ
の下3桁はそのままにして、上の桁に64の補数をセッ
トし、Mカウンタに1を加える。 Tカウンタにおけるキャリの発生がなければ、次の1バ
イトデータをRFBエリアからアキュー( ムレータACCに取り込むため、RFBエリアのリード
アドレスをインクリメントする。 前述した通り、1ライン分の画データはRAMの400
0〜4OFF番地、あるいは4100〜41FFのRF
Bエリアに記憶されているので、上記1バイトデータを
そのRFBエリアから取り出したとき、そこでlライン
分が終る場合がある。これを調べるため、RFBエリア
のリードアドレスをインクリメントしたとき、そのアド
レスレジスタからキャリが発生したか否かをステップJ
 Sr6で判断する。 判断結果がNoであれば、以上の動作を繰り返す。YE
Sであれば、RFBエリアから1ライン分の画データが
全て取り出され、そのランレングス計数処理が終了した
ことになるので、テーブルからWHITEコードを取り
呂すフローに移行する。 第22図(a)、(b)は、そのランレングス計数結果
の基づいてテーブルからWHI丁Eコードを取り出すた
めのフローチャートである。 先ず、メイクアップコードの要否を調べる。即ち、Mカ
ウンタの内容を調ベステップJ Sr7でM=Oか否か
を判断する。 その判断結果がYESであれば、メイクアップコードの
作成は不要なので、直ちにターミネーションコード作成
に入る。 即ち、第21図のフローでTカウンタにストアされた値
下を基に、テーブルを引き所定のブロックデータを取り
出す。 前述したように、このとき取り出されるブロックデータ
は、3バイト構成で、第1バイトにはそのコードレング
ス、第2、第3バイトにはWHITEターミネーション
コードが入っている。 そこで先ず、このコードレングスをコードレングスレジ
スタCLRに入れ、これをトータルコードレングスカウ
ンタ丁CLCに加える。 このトータルコードレングスカウンタTCLCはフィル
ビット発生の要否を判断するために必要となる。即ち、
前述したように、1ライン分のコード化データを伝送す
るとき、最小伝送時間を保証するため、1ラインを所定
ビット数例えば、96ビツト以上にして伝送しなければ
ならない。このため、lライ2分の画データのフード化
圧縮率が高い場合には、ワイルビットを付加する必要が
ある。 そこで、ランレングスに応じてコード化データを作成す
る毎に、そのコードレングスを累計し、1ライン分のコ
ードレングスを監視している。 このトータルコードレングスカウンタTCLCには、第
21図のフローを実行する際、96の補数がセットされ
る。 ステップJ Sr8での判断結果がYESであればフィ
ルビット発生は必要ないので、ノンフィルフラグNFF
を立てる。 テーブルから取り出したコード化データは1ビツトづつ
RAMのFIFOエリアに転送される一方、そのデータ
が8ビツト転送される毎にFIFOエリアから送受信情
報入出力部■への出力が可能となる。 前述したように、FIFOエリアとしては、RAMの4
200番地以下32バイトが使用され、FIFOが機能
するためには更に、そこに1バイトデータを書き込む際
のアドレスを記憶するライトアドレスレジスタWAR1
1バイトデータを読み出す際のアドレスを記憶するリー
ドアドレスレジスタRAR、コード化データを1ビツト
づつ書き込む際1バイトのデータのうち何ビット目まで
が書き込まれたかを記憶するビットカウンタBTCII
が必要となる。 これらの構成要素の共同作業によって、コード化データ
はFIFOエリアの所定のライトアドレスに順次書き込
まれて行き、また、FIFOエリアに書き込まれたデー
タは所定のリードアドレスから送受信情報入出力部■に
1バイトづつ読み出されて行く。 ライトアドレス及びリードアドレスは0〜32を絶えず
循環し、FIF○エリアにはニジドレスにデータの書き
込み及び読み出しが行なわれる。 但し、このときの条件として、F I F Oエリアに
書き込まれたデータを破壊しないため、(1)ライトア
ドレスがリードアドレスを追い越してはならない。また
、FIFOエリアを空にしないため、(2)ライトアド
レスはリードアドレスに追い越されてはならないと云う
2つの条件があり、この2つの条件が満足されなくなる
と本実施例は意味をなさなくなる。言い換えれば、本実
施例においては、上記2つの条件が必ず満足されるよう
に構成されている点に重要なポイントがある。 さて、ステップJ Sr1ではFIFOエリアの所定の
アドレスにコード化データが現在書き込まれつつあるが
否かを判断し、書き込み中の場合にはテーブルから取j
7出したコード化データの次の1ビツトをFIFOエリ
アに書き込む。 ステップJ ST9での判断結果がYES、即ち、その
アドレスにはまだ1ビツトも書き込まれていない場合は
ステップJSTIOでリードアドレスとライトアドレス
が一致しているか否か判断する。 その判断結果がYES、即ち、リードアドレスがライト
アドレスに一致していれば、そのアドレスからデータが
読み出されるまでデータの書き込みを禁止してデータの
破壊を防ぐ。 FIFOエリアへの書き込みが可能になると、コード化
データを1ビツト転送し、ビットカウンタBTCIIか
ら1を引く。 ステップJSTIIでビットカウンタBTCIIが0に
なったか否か、即ち、FrF○エリアの所定のアドレス
にデータ8ビツトが入ったか否かを判断する。 その判断結果がNoならば転送したビット数を監視する
ためにコードレングスレジスタCLRから1を引く。 ステップJST12で、そのコードレングスが0になっ
たか否か、即ち、コード化データが全てFIFOに転送
されたか否かを判断する。 その判断結果がNO5即ち、テーブルから取り出したコ
ード化データが未だ全てFIFOエリアに転送されてい
なければ、再びそのコード化データを1ビツトFIF○
エリアに転送する上記処理を繰り返す。 このとき、ステップJSTIIの判断結果がYES、即
ち、FIFOの所定のアドレスにデータが8ビット入っ
た場合には、ビットカウンタBTC■を8にセットし、
ライトアドレスレジスタWARに1を加えて、ライトア
ドレスを更新する。 前述したように、FIFOエリアにはエンドレスにデー
タの書き込み、読み出しが行なわれるので、FIFOエ
リアの最終アドレスにデータの書、き込みを行なったな
らば、次のデータはFIFOエリアの先頭アドレスに書
き込まなければならない。 このため、ライトアドレス更新の際、ステップJSTI
3でライトアドレスレジスタWARのオーバーフローを
判断し、もし判断結果がYES、即ち、オーバーフロー
があれば、ライトアドレスレジスタWARに先頭アドレ
スをセットする。判断結果がNoならば、そのままコー
ドレングスレジスタCLRから1を引く。 次に、ステップJST14で、コードレングスレジスタ
CLRがOになったか否か、即ち、コード化データの転
送が全て終了したか否かを判断する。 その判断結果がNO1即ち、まだ終了していない場合は
、次のデータの書き込みが可能か否かをステップJST
IOで判断し、上記処理を繰り返す。 テーブルから取り出したコード化データの転送が全て終
了した場合は、Tカウンタに初期値をセットする。 次に、ステップJST15でメモリ空フラグMEFがセ
ットされているか否かを判断する。 このフラグMEFは、前述第21図に示した、RBFエ
リアから「白」の画データを取り出し、ランレングスを
計数するフローで、丁度その画データ1バイトを取り出
した時点で、1ライン分の画データの取り出しが終了し
たとき、セットされる。 従って、lライン最後のコード化データがFIFOエリ
アに転送されれば、ステップJST15における判断結
果がYESとなり、同期コードEOL発生のフローに移
行する。 一方、ステップJST15における判断結果がNOであ
れば、次は「黒」の画データをRBFエリアから取り出
し、ランレングス計数するフローに移行する。 以上は、MカウンタがOの場合の動作説明であるが1M
カウンタがOでない場合、即ち、メイグアップコードを
作成する必要がある場合は、Mカウンタの内容Mをアド
レスとしてテーブルを引く第22図(b)に示すフロー
に移行する。 それ以降の動作はターミネーションコード作成の場合と
同様で、そのコードレングスをコードレングスレジスタ
CLRにセットし、更にそのコードレングスをトータル
コードレングスカウンタTCLCに加え、キャリの発生
を見て、発生した場合にはフラグNFFを1にセットし
、発生しなければそのままビットカウンタBTCnがO
か否かをチエツクする。 その結果、ビットカウンタBTCnがOでFIFOエリ
アのそのアドレスに初めてコード化データを転送する場
合には、そのアドレスにデータの書き込みが可能か否か
をチエツクし、書き込みが可能になるまで待機する。ま
た、そのアドレスは既にコード化データの転送が行なわ
れている場合には、直ちに、次の1ビツトをFIFOエ
リアに転送する。 その間、ビットカウンタBTCI[を用いてFIFOエ
リアに8ビツト転送されたか否かをチエツクし、またコ
ードレングスレジスタCLRを用いて、そのときのコー
ド化データが全てFIF○エリアに転送されたか否かを
チエツクしている。 FIFOエリアにコード化データが8ビツト転送された
場合、即ち、FIFOエリアの所定アドレスが所定の1
バイトデータで満された場合は、次のアドレスにコード
化データを転送するため、ライトアドレスの更新を行な
う。 このとき、先に転送したデータがFIFOエリアの最終
アドレスの場合には、次のデータをFiFOエリアの先
頭アドレスに転送しなければならないので、ライトアド
レスレジスタに再び先頭アドレスをセットし直す6 Mカウンタの内容Mに基づいて、テーブルから取り出さ
れたメイクアップコード化データのFIFOエリアへの
転送処理が終わらないうちは以上の処理を繰り返し、終
了した場合は、前述第22図(a)に示したターミネー
ションコード化データの転送処理を実行する。 このようにして、[白Jの画データの圧縮化処理が終了
すれば、今後は「黒」の画データの圧縮処理に入る。 第23図は、そのために、「黒」ランレングスを計数し
て、T、Mを取り出すためのフローである。 このフローに入る場合は必ず前述した第21図のフロー
を実行した後なので、各レジスタ、カウンタにはそれま
でに実行したフローに基づく所定の値が入っている。 即ち、Tカウンタには初期値、MカウンタにはO、ビッ
トカウンタBTClには、第21図のフローを実行した
ときの残りの端数ビット、CPUのアキュームレータA
CCには、それに対応する[黒Jの画データに入ってい
る。 更に正確には、第21図のフローで「白」のランレング
スの計数を終了したとき、RBFエリアからアキューム
レータACCに転送された8ビツトの画データのうちの
「黒」の画データは1ビツトだけシフトアウトされ、残
りはそのままの状態でアキュームレータACC内に保持
されている。また、8ビツトの画データから「白」画素
データを取り除いた残り、即ち、「黒」画素データのビ
ット数は、ビットカウンタBTCI内に記憶されている
。 従って、第22図のフローを実行して、このフローに移
行したときには、先ず、Tカウンタに1を加え、ビット
カウンタBTCIがらlを引き、その結果、ビットカウ
ンタBTCIが0になったが否か、即ち、端数分のラン
レングス計数処理が終了したか否かをステップJST1
6で判断する。 その判断結果がNo、即ち、未だ端数分が残っていれば
、アキュームレータACCにアキュームレータACCの
内容を加えることにより、1ビツトシフトする。 この場合には、「黒」のランレングスを計数処理してい
るので、変化点があれば、そのときにはACCから「0
」がシフトアウトされる。 従って、ステップJST+7で、今度はキャリrQJの
発生を判断して、もし、キャリ[OJの発生があれば、
ランレングス計数を終了してコード化データをFIF○
エリアに取り出す処理に移行する。 ステップJST17での判断結果がNOであれば、Tカ
ウンタに1を加え、その値Tが64を越えたか否かをス
テップJST18で判断する。 その判断結果がYES、即ち、64を越えた場合にはM
カウンタに1を加え、Tカウンタに初期値をセットした
のち、ビットカウンタBTCIから1を引く。 未だ、64を越えていなければ、直ちにビットカウンタ
BTCIから1を引く。 その結果、ビットカウンタBTCIが0か否か、即ち、
端数分の処理が終ったか否かをステップJST19で判
断する。 ステップJSTI9の判断結果がNo、即ち、端数分の
処理が終っていなければ、アキュームレータACCの内
容をシフトする上記動作を繰り返し実行する。 ステップJSTI9の判断結果がYES、即ち、端数分
の処理が終っていれば、ビットカウンタBTCIに8を
セットし、リードアドレスレジスタRARに1を加え、
RBFエリアのリードアドレスを更新する。 その結果、リードアドレスレジスタRARからキャリが
発生したか否かをステップJST20で判断する。 その判断結果がYESであれば、1ライン分の画素デー
タは全て取り出されたことになるので、メモリ空フラグ
MEFをセットし、そのときのT、Mを基に、コード化
データの作成に取りかがる。 ステップJST20での判断結果がNoであれば、RB
Fエリアから1バイトデータをCPUのアキュームレー
タACC内に取り込み、その画素データが全て「l」で
あるか否かを調べる。 ステップJST20での判断結果がYESであれば、バ
イト毎の処理に移る。また、Noであれば、その1バイ
トデータ内に変化点が存在するので、前述したアキュー
ムレータACCにACCの内容を加えるビット毎の処理
を再び繰り返す。 バイト処理に移った場合には、Tカウンタに8を加えス
テップJST22でキャリが発生したか否か、即ち、6
4を越えたか否かを判断する。 Tカウンタに8を加えることにより、64を越えた場合
、その越えた分はこのフローの最初の段階で処理した端
数分に等しく、その値はそのままTカウンタにセットさ
れる。 従って、その端数分を残すため、Tカウンタの下3桁を
そのままにして上の桁に初期値、即ち、64の補数をセ
ットすれば、Tカウンタには処理した端数分の計数値が
記憶される。 次に、Mカウンタに1を加えたのち、再び次の1バイト
データをCPU内に取り込むため、リードアドレスレジ
スタRARに1を加え、リードアドレスを更新する。 このようにして、「黒」のランレングスを計数した結果
がTカウンタおよびMカウンタに得られたのちは、その
値T、Mをアドレスとしてテーブルを引き、「黒」のコ
ード化データをFIFOエリアに転送する第24図(a
)、(b)に示すフローに移行する。 この第24図(a)、(b)に示すフローは、テーブル
から取り出すデータが「黒」のコード化データに代った
だけで、第22図(a)、(b)に示したフローと処理
手順には全く変わりがないので、その詳細な説明は省略
する。 第24図(a)、(b)のフローを実行した際、1ライ
ン分のコード化処理が全て終った場合には、第25図に
示す同期コードEOL作成のフローに移行し、末だ19
42分の処理が終っていなければ、次は再び「白」のコ
ード化処理になるので、前述した第21図のフローに戻
る。 第25図は同期コードEOL作成のフローを示したもの
で、前述した通り同期コードEOLは+149のOと1
から成るので、この11個のOを計数するために11進
カウンタを用意し、そこに初期値11をセットする。 次に、1942分のコード化データが所定数以下の場合
には同期コードEOLの前にフィルビットを付加する必
要があるので、ノンフィルフラグNFFがセットされて
いるか否かを調べる。 このフラグNFFは、第22図あるいは第24図のフロ
ーを実行した際、コード化データが所定数以上になれば
、セットされるので、ステップJST30での判断結果
がYESであれば、直ちに同期コードEOLの作成にと
りかかる。 即ち、「O」を1ビツトFIFOエリアに転送し、11
進カウンタから1を引き、ステップJST31でFIF
Oエリアに転送したrQJが11個になったか否かを判
断する。 その判断結果がNoであれば、ビットカウンタBTCI
Tから1を引くことにより、FIFOエリアに1バイト
転送されたか否か、ステップJST32で判断し、その
判断結果がNo、即ち、未だ1バイト転送されていなけ
れば、再び「0」を1ビツトFIFOエリアに転送する
動作を繰り返す。 FIFOエリアに1バイト転送されれば、ビットカウン
タBTCI[に8をセットし、ライトアドレスレジスタ
WARに1を加算して1−IF○ライトアドレスを更新
する。 その際、レジスタWARからキャリが発生したか否かを
ステップJST33で判断し、その判断結果がYESの
場合には、レジスタWARに初期値をセットする。 そのあと、ステップJST34でライトアドレスとリー
ドアドレスの一致を見ることにより、FIFOエリアへ
の書き込みが可能か否かを判断し、書き込み可能になれ
ば、再び「0」を1ビツトFIFOエリアに転送する処
理を繰り返す。 ところで、ステップJST30での判断結果がNo、即
ち、フィルビットの付加が必要な場合には、次のステッ
プJST35で新しいFIFOライトアドレスにフィル
ビット、即ち、「0」を入れるのか、既に途中までデー
タの入っているアドレスにフィルビットを入れていくの
か判断し、新しいアドレスに入れる場合には、ステップ
JST36で、その新しいアドレスへの書き込みが可能
なのか否かを判断し、可能であれば、「0」をFIFO
エリアに転送する。 このとき、トータルコードレングスカウンタTCLCに
1を加え、その結果が所定ビット数に達したか否かをス
テップJST37で判断する。 その判断結果がNo、即ち、未だ所定ビット数に達して
いなければ、ビットカウンタBTCIIから1を引き、
ステップJST38で、FIFOエリアの所定のアドレ
スにデータが1バイト入ったか否かを判断し、入ってい
なければ、そのアドレスに「0」を転送する動作を繰り
返す。 そのアドレスに1バイト転送されれば、ビットカウンタ
BTCnを8にセットし、ライトアドレスレジスタWA
R1:1を加える。 ステップJST39で、そのときレジスタWARからキ
ャリが発生したか否かを判断し、キャリが発生した場合
にはFIFOエリアの最終アドレスにデータの転送が行
なわれたことにより、次の1バイトデータは先頭アドレ
スに転送しなければならないので、ライトアドレスレジ
スタWARに初期値即ち先頭アドレスをセットする。 このようにして、フィルビット即ちrQJ をFIF○
エリアに1ビツトづつ転送し、そのトータルコードレン
グスが所定数に達すれば、ステップJST37での判断
結果がYESとなり、そのあとに同期コードEOLを付
加するため、上述したように11個のOをFIFOエリ
アに転送する。 その結果、ステップJST31での判断結果がYESと
なるので、ビットカウンタBTCIIかも1を引く。 このときもまた、FIFOエリアの所定のアドレスに1
バイト転送されたか否か、転送された場合にはアドレス
更新の際、そのアドレスを先頭アドレスに戻す必要があ
るか否か、次のデータがFIFOエリアの更新したライ
トアドレスに書き込むことが可能か否かをステップJS
T40〜JST42で判断し、その判断結果に基づいた
処理を施したのち、同期コードEOLの最後のlをFI
FOエリアに転送する。 転送後は、ビットカウンタBTCIIから1を弓くと共
に、上述同様にしてステップJST43で、カウンタB
TC■に8をセットする必要があるのか否か、ステップ
JST44でライトアドレスをFIFOエリアの先頭ア
ドレスに戻す必要があるのか否かを判断し、その判断結
果に基づいた処理を施したのち、次の1ラインのコード
化処理を行なうために、第21図のフローに戻る。 以上のようにして、RBFエリアに記憶された画データ
は1バイトづつCPU内に取り出されデータ圧縮された
のち、FIF○エリアに貯えられて行く。 第26図は、このようにしてFIFOエリアに貯えられ
たコード化データを1バイトづつ送受信情報入出力部■
に転送するための仕事Cの動作手順を示したものである
。 この仕事Cは前述した通り、送受信情報入出力部■に転
送された8ビツトのデータをシリアルにモデムに出力す
る毎に送受信情報入出力部■から発生する割込要求信号
1□ltcにより実行される。 この割込要求信号、int、は、例えば、伝送速度を4
800 b p sとした場合、8/4800 (se
c ) = 1゜6(鳳sec )毎に発生する。 割込要求信号1 n L eが発生すると、CPUはそ
れまで実行していた仕事りあるいはEを中断し。 それまでにCPU内の各カウンタ、レジスタ等に入って
いたデータをRAMのWKエリアに退避させる。 次に、FIFOエリアのリードアドレスをWKエリアか
らもってきて、CPUのリードアドレスレジスタRAR
にセットし、FIFOエリアのそのアドレスからデータ
1バイトを送受信情報入出力部■に転送し、リードアド
レスを更新するため、レジスタRARに1を加える。 その結果、前述したFIFOエリアにデータを書き込む
場合と同様、レジスタRARからキャリが発生して、F
IFOエリアの最終アドレスを越えた場合には、レジス
タRARに初期値をセットしたのち、また、レジスタR
ARからキャリが発生しない場合には、そのアドレスを
WKエリアに格納する。 そのあと、先に退避したデータを再びCPU内に戻して
割込前の仕事りあるいはEに戻る。 受信モード 受信時においてCPUが行なう包括動作フローは既に第
15図に示したが、この処理を実行するためにCPUは
以下に述べる各割込要求に応じて各仕事F〜■を時分割
で実行する。 即ち、受信時、CPUには前述第11図で説明した送受
信情報入出力部■から発生する割込要求信号i n t
、の他のタイミング信号発生部■から発生する同期信号
S、による割込要求信号1nLt、同期信号S、による
割込要求信号1nthが信号線INTを介して入力する
。その割込要求信号1n11〜jnthに応じて仕事を
行なうときの優先順位は、F>G>Hの順であり、常時
は仕事Iを実行している。 次に、これらの仕事F−1の概要を第27図の画データ
処理経路図を参照して説明する。 〔仕事F1 割込要求信号int、による割込要求がかかると、CP
Uは仕事Fを実行する。 その仕事内容は、前述したRAMのRBFエリア【ある
いはHに1ライン分の復号化された画素データがストア
されたことを示すメモリフルフラグMFFIあるいは■
がセットされていれば、そのフラグMFFをリセットす
ると共に、データ読み出しフラグDRF +あるいは■
をセットし、メモリフルフラグMFFIあるいは■がリ
セットされていれば、そのフラグMFFをリセットする
ことである。 このデータ読み出しフラグDRF IあるいはDは、以
下に述べる仕事Hを行なう際に参照される。 [仕事G] 割込要求信号int、による割込要求がかかると、CP
Uは仕事Gを実行する。 その仕事内容は、第27図の画データ処理経路図に示す
ように、モデムMDMから送受信情報入出力部■に受信
画データが8ビツト入力したとき発生する割込要求信号
int、により、その8ビツトデータ、即ち、1バイト
データを前述したFIFOエリアに転送し、その所定ア
ドレスに書き込むことである。 FIFOエリアに転送された受信画データは、次の仕事
■で画素データに復号化されRBFエリアに転送されて
貯えられる。 〔仕事I] これは通常CPUが実行している仕事で、RBFエリア
Iあるいはnが空で、メモリ空フラグMEFrあるいは
■がセットされていれば、それをリセットしたのち、F
IFOエリアから画データをCPU内に取り込み、復号
化を行ない、その復号化した画データを順次RBFエリ
アに転送し貯えて行く。1ライン分の復号化が終了した
時点で、受信画データの誤りの有無をチエツクし、誤り
がなければメモリフルフラグMFFIあるいは■をセッ
トする。 〔仕事H〕 割込要求信号int、による割込要求がかかると、CP
Uは前記データ読み出しフラグDRF !あるいは■が
セットされている場合にのみ、その割込要求を受は付は
仕事Hを実行する。 その仕事内容は、受信画記録部■の副走査用パルスモー
タを1ステップ進めること、及びRBFエリアから8ビ
ット単位で復号化された画データを256ビツト受信画
出力部■に出力することである。 但し、副走査線密度によって、その仕事を行なうタイミ
ングが多少異なり、副走査線密度7.7本/mの場合は
、フラグDRFがセットされているとき、信号1nth
の割込要求毎にパルスモータを1ステップ進め、8回の
割込みで1ライン分の画データを受信画出力部mに出力
し終る。副走査線密度3.85本/IIII+の場合は
、フラグDRFがセットされているとき、信号j n 
thの一つ置きに割込要求を受は付け、パルスモータを
1ステップ進める一方、信号1nthの16回の発生で
1ライン分の画データを続けて2回受信画出力部mへ出
力する。 第28図は副走査線密度3.85本/mの場合における
各仕事F〜■のタイムチャートの一例を示したもので、
CPUがF I FOエリアから画データを8ビツトづ
つ取り込み、復号化を行なってラインバッファRBFエ
リアに順次転送する仕事■を実行している間に、例えば
、同期信号S1およびS。 による信号int、および1nthの割込要求がかかる
と、先ず、データ読み出しフラグDRFをセットあるい
はリセットする仕事Fを実行し、そのあと副走査用パル
スモータを1ステップ進めると共に、RBFエリアから
復号化された画データを受信画出力部mへ出力する仕事
Hを実行する。その間、モデムMDMからはシリアルに
受信画データが送受信情報入出力部■に入力し、前述し
たように、そこに8ビツトのデータが入力する毎に、送
受信情報入出力部■は割込要求信号int、を発生する
。 この割込要求信号int、がCPUに入力すると、CP
Uは仕事Hあるいは■を中断して送受信情報入出力部■
に入力した8ビツトのデータをFIFOエリアに転送す
る仕事Gを実行する。 この仕事Gを終えたあとは再び仕事HあるいはIに戻る
。 割込要求信号intゎによる8回の割込要求によって、
RBFエリアがら1ライン分の画データを受信画出力部
mへ出力すると、再び信号1nt7の割込要求毎に同じ
lライン分の画データを受信画出力部mに出力し、受信
画記録部■では画データの2度書きを行なう。 次に、以上に説明した仕事の更に詳細な処理手順を第2
9図以下に説明する。 第29図は、モデムMDMから送受信情報入出力部■に
入力(だ8ビツトのデータをFIFOエリアに転送する
仕事Gのフローチャートである。 前述したようにモデムMDMから送受信情報入出力部■
にデータが8ビツト入力すると、割込要求信号int、
が発生する。 この割込要求信号int、も送信モードの場合と同様、
例えば、伝送速度を4800 b p sとした場合、
8/4800 (sec) =1.6 (msec)毎
に発生する。 この割込要求信号intgを受は付けると、CPUはそ
れまで行なっていた仕事HあるいはIを中断してこの仕
事に入る。 即ち、CPUは、それまで実行していたプログラムで使
っていた各カウンタ、レジスタ等内の内容を、再びその
プログラムに戻った際に使用できるようにするため、R
AMのWKエリアに退避させる。 また、WKエリアからFIF○エリアのライトアドレス
をもってきて、CPU内のアドレスレジスタADRをセ
ットする。 次に、送受信情報入出力部■に入力したデータ8ビツト
を取り込み、PIF、Oエリアに転送し、そのアドレス
内に書き込む。 転送後、アドレスレジスタADHに1を加え、キャリの
発生を調べる。 キャリが発生した場合には、FIFOエリアの最終アド
レスに上記1バイトデータを書き込んだことになり1次
のデータは、FIFOエリアの先頭アドレスに書き込ま
なければならないので、アドレスレジスタADRに初期
値をセットしてこれをWKエリアに格納する。 また、キャリの発生がなければ、そのままライトアドレ
スをWKエリアに格納する。 そのあと、前の仕事に戻るため、先に退避させた内容を
再びCPU内にセットする。 このようにして、FIFOエリア内に貯えられたコード
化データは、次に仕事Iで復号化される。 第30図は、その仕事■における、受信したコード化デ
ータを基にテーブルを引いてランレングス(2進数)を
取り出すためのフローを示したものである。 このフローに入ると、CPUは先ずレジスタ類の初期設
定を行なった後、FIFOエリアからコード化データの
取り出しが可能か否かチエツクし、FIFOエリアにデ
ータがストアされて取り出すことが可能になれば、その
データを8ビツトCPU内のデータレジスタD R+に
取り込む。 コード化データに基づいてテーブルを引き、そのコード
化データに対応したランレングスを取り比すとき、本実
施例では、後述するようにコード化データの先頭ビット
が1で始まる場合、先頭ビットはOで2ビツト目に1が
来る場合、2ビツト目まで0で3ビツト目に1が来る場
合、・・・ ・・・に前記衣1.2に示したWRITE
コード及びBLACKコードをグループ分けして、その
コードに対応したランレングスを取り出すためのテーブ
ルを構成している。 従って、今、FIFOエリアからデータレジスタDR,
に取り込んだコード化データの先頭部分にOが何ビット
付加されているか調べる必要があるので、このためOカ
ウンタを用意する。 前記衣からも明らかなように、コード化データの先頭部
分に付加されるOは最大7ビツトであり。 Oが8ビツト以上付加されれば、そのコードは同期コー
ドである。 従って、その0カウンタには最初8をセットしておく。 次に、データレジスタDR,内のコード化データの先頭
部分に何ビットのOが付加されているか調べるため、デ
ータレジスタDR,のコード化データをアキュームレー
タACCに転送し、1ビツトシフトする。 シフトして取り出されたキャリを1ビツトメモリに記憶
する。 また、1ビツトシフトされたコード化データは、後1こ
順次取り出して調べていく必要があるので、再びデータ
レジスタDR,に戻してストアしておく。 このとき、コード化データの何ビットまで取り出された
かを記憶しておく必要があるので、初期設定で8にセッ
トされたビットカウンタBTCIIから1を引く。 データレジスタDR,に取り込んだコード化データの8
ビツト分全てが取り出された場合には、データレジスタ
D Rtに次の8ビツト分を取り込む必要があるので、
その場合には、第31図に示すサブルーチンFIFOR
EADを実行する。 そのあと、先にコード化データを1ビツトシフトして取
り出したキャリがrOJかr14かをチエツクし、rl
Jの場合には、テーブルを引いてランレングスを取り出
すためのフローに移る。 キャリが「0」であれば、Oカウンタがら1を引き、そ
の計数値が7以下の場合、再びコード化データをシフト
してrQHの数を計数するフローを繰り返し実行する。 この場合、コード化データ先頭部分に「0」が8ビット
続けば、Oカウンタから】引いた結果がOとなり、その
コード化データは、同期コードであることが判るので、
受信データの誤りチエツク、この場合、コード化データ
先頭部分にrQJが8ビット続けば、Oカウンタがら1
引いた結果が0となり、そのコード化データは、同期コ
ードであることが判るので、受信データの誤りチエツク
。 およびリターン符号の検出動作を行なう9コード化デー
タのシフトを行なうことにより、キャリrlJが発生し
た場合は、0カウンタの内容をアドレスとして第1テー
ブルT1を引くプログラムステップ5T50を実行する
。 テーブルは「白」のコード化データに対応するランレン
グスを取り出すためのテーブルと「黒」のコード化デー
タに対応するものとの2つに分かれており、両者はほぼ
同様に構成され、「白」の場合のテーブルの構成は、第
30図(b)に示す通りである。即ち、ROMの所定エ
リアに設けられた第1テーブルT1および第2テーブル
T、から成り、第1テーブルT、には、アドレス1〜8
に第2テーブルT!の先頭アドレスを示すWHff〜W
H,がストアされている。 第2テーブルT1は、コード化データの先頭部分に付加
される0のビット数毎のブロックに分けられ、各ブロッ
クには、そのコード化データに対応したランレングスを
取り出すために必要なデータが入っている。 1!30図(c)は、その第2テーブルT、のうち、コ
ード化データの先頭1ビツトのみがOの場合、即ち、ア
ドレスWH1からWH,に至るまでのテーブルを示した
ものである。 以下、第30S(a)のプログラムステップ5T50以
下のフローを説明するに当っては、先頭1ビツトのみが
Oのコード化データのランレングスを取り出す場合を例
にとって、第30図(b)、(C)のテーブルを参照し
ながら説明して行く。 ステップ5T50に入るまでのフローで、コード化デー
タは2ビツト「0.1ノがシフトされ、Oカウンタの内
容は7、ビットカウンタBTCmの内容は6になってい
る。 従って、ステップ5T50で第1テーブルT1のアドレ
ス7からデータWH,を取り出すことができる。 次に、ステップ5T51,5T52でそのデータを基に
第2テーブルT、のアドレスWH,からデータ2を取り
出し、そのデータ2をデータレジスタDR1にセットす
る。 第2テーブルT2のアドレスWH,に2が入っているい
る理由は、以下の説明から明らかになることであるが、
前記表1.2を見て判る通り、コード化データの先頭部
分に「0.1」が来た場合、次に続くデータビット数は
必ず2ビツト以上である。つまり、ro、IJで始まる
コード化データは4ビツト以上であるためである。 ステップ5T53では、以下のステップで所定のデータ
を入れるため、データレジスタDR2をクリアする。 次いで、ステップ5T54でデータレジスタDRの内容
をアキュームレータACCに移してシフトし5ステツプ
5T55で、そのシフトしたデータを再びデータレジス
タDR,に戻すと共に、ステップ5T56で先にクリア
されたデータレジスタDR,に、そのシフトされた1ビ
ツトのデータを入力する。 この結果、データレジスタDR,内のコード化データは
、3ビツトまでシフトされているので、それを記憶して
おくため、ステップ5T57で、ビットカウンタBTC
IIがらlを引く。 判断ステップ5T58の判断結果はNOで、ステップ5
T59に移り、再度ステップ5T54〜5T59を繰り
返し実行する。 従って、2度目にステップ5T59を実行した段階では
、データレジスタDR,にはコード化データの残り4ビ
ツト分のデータが、データレジスタDR,にはコード化
データの3.4ビツト目のデータが入っており、また、
ビットカウンタBTC■の内容は4、データレジスタD
 RsはOになっている。 この結果、ステップ5T60での判断結果がYESで、
ステップ5T61に移る。 ステップS T61で、第2テーブルアドレスWHにデ
ータレジスタD R2の内容を加算し、ステップ5T6
2.5T63で、更にその加算結果に1を加えて第2テ
ーブルを引く。 例えば、コード化データの第3.4ビツト目が、「Ol
o」即ちoであれば、WH,+。、、、rQ、1」であ
れば、W H+−1−t 、  r 1、O」であれば
、W H、、、、、のアドレスから夫々データa、b、
cを取り出す。 また、第3.4ビツト目がrl、IJであれば、WH1
+3.1のアドレスからデータな取り出す。 このときのコード化データはrO,l、1.1」でこれ
は前記衣から明らかなように、ランレングスが2のコー
ド化データである。 従って、W H、、、や、のアドレスには、そのランレ
ングス「2」、そのランレングスがターミネーションコ
ードのランレングスを示す符号T= rOJ及びランレ
ングスが見つかったのでテーブル参照終了を示す符号「
1」がストアされている。 即ち、第2テーブルの所定アドレスには、第30図(d
)で示すように、コード化データに対応するランレング
ス(2進数)RUN (但し、コード化データがメーク
アップコードの場合には、それに対応するランレングス
を64で割った数)ターミネーションコードに対するラ
ンレングスであるかメークアップコードに対するランレ
ングスであるかを示す符号T/Mおよびテーブル参照終
了を示す符号「1」がストアされており、これらの符号
は後のプログラムステップで利用される。 ステップ5T64では、テーブル参照終了か否かをチエ
ツクするため、この取り出されたデータを1ビツトシフ
トし、ステップ5T65で、そのキャリ「1」が発生し
たか否かを判断する。 この結果、例えば、第3.4ビツト目が「1、■」でア
ドレスW Hl 03+ 1 からデータを取り出した
場合にはキャリ「1」が発生するので、そのランレング
スに基づいて1ビツトづつの画素データをRBFエリア
に転送するサブルーチンRUNLENGTH5TORE
を実行する。 また、例えば、第3.4ビツト目がro、OJでアドレ
スW Hl+。や、からデータaをレジスタADRに取
り出した場合には、キャリはrOJであるから、ステッ
プ5T52に戻る。 ステップ5T52に戻れば、今度はレジスタADRの内
容aで第2テーブルを引く結果、1がデータレジスタD
R3にセットされる。 従って、ステップ5T56で、コード化データの5ビツ
ト目をデータレジスタDR,に取り出して、その内容に
応じて、ステップ5T63でアドレスa+0+1あるい
はa + 1 + 1のデータをレジスタADRに取り
出す。 以下、同様の動作を繰り返し、その間にデータレジスタ
DR,にストアされたデータ8ビツトが全てシフトアウ
トされれば、ステップJST5gでの判断結果がYES
になるので、次のデータをFIFOエリアからデータレ
ジスタDR,に転送するサブルーチンFIFOREAD
を実行する。 第31図は、サブルーチンFIFOREADのフローを
示したもので、このフローに入ると、先ず、それまでC
PU内に貯えられていた各種データを退避させる。 次に、FIF○エリアからデータの読み出しを行なう訳
であるが、この場合にも、前述送信モードで説明した場
合と同様、FIFOエリアにデータを出し入れするため
の条件として、FIFOエリアに書き込まれたデータを
破壊しないため、(1)リードアドレスがライトアドレ
スを追い越してはならない。またFIFOエリアのデー
タを空にしないため、(2)リードアドレスはライトア
ドレスに追い越されてはならないと云う2つの条件があ
る。 このため、FIFOエリアのリードアドレスとライトア
ドレスが等しいのか否かをチエツクし、送受信情報入出
力部■からFIFOエリアにデータが転送され、ステッ
プJST66での判断結果がNoとなるまで、データの
読み出しを禁止している。 ステップJST66での判断結果がNoとなれば、前述
第30図(a)のフローに戻ったときのために、ビット
カウンタBTCnに初期値8をセットする。 次いで、FIFOエリアからコード化データ1バイトを
取り出し、データレジスタDR,にストアし、F■FO
エリアのリードアドレスを更新する。 このとき、そのリードアドレスを先頭アドレスに設定し
直す必要があるか否かをステップJST67で判断し、
その必要がなければそのまま、もし必要があれば、リー
ドアドレスレジスタに初期値をセットしたのち、先に退
避させたCPU内のデ−タを再び元の状態に戻して、前
述第30図(a)のフローに戻る。 第32図は、サブルーチンRUN  LENGTH3T
OREのフローを示したものである。 先ず、CPU内の各種データを退避させる一方、WKエ
リアからこのフローを実行するに必要なデータを取り出
すことにより、各種データの初期値設定を行なう。 次に、前述第30図(a)のフローを実行した際、ステ
ップ5T64で1ビツトシフトされレジスタADRにス
トアされているランレングスがターミネーションコード
に対応するものか、メークアップコードに対応するもの
かを調べるため再び1ビツトシフトする。 この結果、T= rOJがシフトされキャリ「O」即ち
キャリ「l」の発生がなければ、ステップJST68の
判断結果がNOとなり、レジスタADRにストアされて
いるランレングスはターミネーションコードに対応する
ものなので、その画素データを発生させ、RBFエリア
に転送するフローに移行する。 ステップJST68の判断結果がYESであれば、レジ
スタADRには、前述した通り、メークアップコードに
対応するランレングスを64で割った数値コード、即ち
、メークアップランレングスMがストアされているので
、その数値の64倍の画素データを発生させ、RBFエ
リアに転送するフローに入る。 即ち、レジスタADHのメークアップランレングスをM
カウンタにセットする。 次に、バイト処理が可能かビット処理を行なわなければ
ならないかをステップJST69で判断する。 即ち、このフローを実行するとき、それ以舵にRBFエ
リアに転送した画素データが8ビツト以下で終っていれ
ば、その端数ビット分を先ず転送して、そのアドレスを
8ビツトのデータで満たさなければならない。 その端数ビット数はビットカウンタBTCIに貯えられ
ている。 従って、ステップJST69でビットカウンタBTCI
が8か否かを判断し、その判断結果がY I−。 Sであればバイト処理、NOであればビット処理を行な
う。 バイト処理の場合には、ステップJST7oで処理すべ
きデータが「白」か「黒」か判断し、「白」の場合には
後述するフローを行ない、また「黒」の場合にはr黒」
の画素データを8ビツトづつ発生させ、これをRBFエ
リアに転送するフローを実行するが、そのフローは以下
に述べる「白」の場合と1発生させる画素データが異な
るのみで、同様の動作を行なうので、その詳細な説明は
省略する。 ビット処理に入った場合には、ステップJST71で処
理すべきデータがF白Jか「黒Jか判断する。 舵述した通り、送信側からデータが送られてくるとき、
同期コードEOLの次に必ず「白」のコード化データが
送られてくるので、第30図(a)のフローを実行して
このコード化データを基にテーブルを引き、それに対応
するランレングスを取IJ出したとき最初のランレング
スは「白」で、そのあと、メークアップランレングスの
場合には色の変化はないが、ターミネーションランレン
グスが取り出される毎に色の変化が生じる。従って、ス
テップJST68でキャリrl」の発生を判断するため
レジスタADRの内容をシフトしたとき、キャリrQ)
の発生毎に生じる色変化を記憶することにより、ステッ
プJST71でそのランレングスが「白」か「黒」を判
断することができる。 ステップJST70の判断結果が「黒」の場合には、「
黒Jの画素データを発生させ、それをRF3Fエリアに
転送するフローを実行するが、そのフローは、以下に述
べる「白」の場合とほぼ同様に行なわれるので、その詳
細な説明は省略する。 ステップJST7+の判断結果が「白」の場合には、R
BFエリアのこれから画素データ端数ビットを書き込む
べきアドレスの8ビツトのデータを一旦、CPUのアキ
ュームレータACC内に取り込む。 次に、そのアキュームレータACCの内容にACCの内
容を加えることにより1ビツトシフトする。この結果、
アキュームレータACCには先に入っていた8ビツト以
下の画素データの後に続いて端数分の白画素データrQ
Jが1ビツト入る。 これにより、端数分の1ビツトが処理されたのでビット
カウンタBTCIから1を引き、端数分の処理が終った
か否かをステップJST72で判断する。 ステップJST72の判断結果がNOで、まだ端数分の
処理が終っていなければ再びアキュームレータACCの
内容をシフトして「0」を入れる動作を、繰り返す。 ビットカウンタがOとなって端数分に全てrQJが入れ
ば、そのアキュームレータACCの内容をRBFエリア
に転送すると共に、RBFエリアのライトアドレスを更
新する。 これにより、ビット処理が終了し、次のアドレスからは
バイト処理を行なうことができるので、先ずTカウンタ
に初期値8をセットする。 そのあと、アキュームレータACCの内容をオール[O
」にしたのち、これをRBFエリアに転送し、そのライ
トアドレスを更新し、Tカウンタから1を引く動作を8
回繰り返す。 ステップJS丁73の判断結果がYES、即ち、64ビ
ット分の画素データがRBFエリアに転送されたとき、
Mカウンタから1を引く。 この結果、Mカウンタの内容がOになったか否かをステ
ップJST74で判断して、その判断結果がNoであれ
ば、再びTカウンタに8をセットし。 64ビット分の「白」画素データの転送を行なう。 ステップJST74の判断結果がYES、即ち、メーク
アップコードに対応するランレングスだけの「白」画素
データが全てRBFエリアに転送されれば、ビットカウ
ンタBTCIの補正を行なう。 即ち、メークアップコードに対応するランレングスは8
0倍数であるから、そのランレングスの画素データを発
生させ、これをRBFエリアにストアしたとき、その最
後のアドレスに書き込まれた画素データは、その8ビツ
トから最初のアドレスにビット処理を行なって書き込ん
だ端数分を引いたビット分が有効画素データである。従
って、次にターミネーションランレングスの画素データ
を、RBFエリアに転送するとき、そのアドレスにあと
何ビットの画素データを入れたらよいか記憶しておくた
め、ビットカウンタBTCIの内容を最初の端数に戻す
。 それをWKエリアに格納したのち、先に退避させたCP
Uの各種データを再び元の状態にセットして第30図(
a)のフローに戻る。 集30図(a)のフローに戻って、前述したようにテー
ブルからランレングスを取り出す処理を行なうと、メー
クアップランレングスの次にはターミネーションランレ
ングスがレジスタADRに取り出されるので、ステップ
JST68での判断結果がNOとなり、そのターミネー
ションランレングスの画素データを発生させ、RBFエ
リアに転送するフローに移行する。 第33図は、そのフローを示したもので、レジスタAD
Rに入っているランレングスがOか否かを調べる。 ステップJST75の判断結果がYES、即ち、ランレ
ングスOで画素データをRBFエリアに転送する必要の
ない場合は、先に退避したCPU内の各種データを元の
状態に戻したのち、第30図(a)のフローに戻る。 ステップJST75の判断結果がNoならば、RBFエ
リアのこれからデータを転送すべきアドレス内データの
端数チエツクを行なう。 このため、ビットカウンタBTCIが8か否かを詞べ、
ステップJST76での判断結果がYES。 即ち、端数Oで、そのライトアドレスに8ビツトのデー
タを書き込むことが可能な場合には、発生すべき画素デ
ータは「黒」か「白」かを調べ、バイト処理フローに移
る。 「黒」の場合のバイト処理は以下に説明するが、「白」
の場合は「黒」の場合とほぼ同様の処理が行なわれるの
で、その詳細は省略する。 ステップJST76での判断結果がNo、即ち、先に転
送したデータが8ビツト以下ならば、先ず、そのアドレ
スに端数ビットを転送して、8ビツトにするビット処理
を行なう。 このため、先ず、そのとき発生すべき画素データが「白
」か「黒」かを調べ、その結果、ステップJS777で
の判断結果が「白」であれば、「白」の画素データを発
生させ、それをRBFエリアに転送するフローに移る。 このフローは、以下に述べる「黒Jの場合とほぼ同様に
行なわれるので、その詳細は省略する。 ステップJST77での判断結果がNOであれば、画素
データのうちこれから転送すべきアドレス内のデータを
アキュームレータACCに取り込む。 次に1ビツトメモリに1をセットし、その1ビツトメモ
リを介してアキュームレータACC内のデータを1ビツ
トシフトする。 この結果、アキュームレータACC内には、先に書き込
まれた8ビツトの画素データのうち、1ビツトが今回書
き込むべき「黒」画素データ「1」に書き換えられて貯
えられる。 端数1ビツトの画素データ発生の処理が終わったので、
ビットカウンタBTCIから1を引く。 この結果、ビットカウンタが0になったか否かをステッ
プJST78で判断し、その判断結果がNO1即ち、未
だ処理すべき端数ビットが残っていれば、レジスタAD
Rに入っているランレングスからIを引き、ターミネー
ションランレングスの処理が全て終わったか否かをステ
ップJST79で判断する。 ステップJST79での判断結果がNOであれば、再び
アキュームレータACCをシフトして「黒」画素データ
1ビツトを入れる処理を繰り返し実行する。 ステップJST79の判断結果がYES、即ち、端数処
理が終らないうちにターミネーションランレングスの画
素データ発生処理が終った場合には、そのアキュームレ
ータACCの内容を先のRBFエリアのライトアドレス
に転送する。 そのあと、そのライトアドレスおよびビ・ソトカウンタ
BTCIの内容をWKエリアに格納し、再びCP U内
の内部状態を元に戻して、第30図(a)のフローに戻
る。 もし、ターミネーションランレングスの処理が終らない
うちに、端数処理が終わり、アキュームレータACCに
取り出した画素データに端数ビット分の「黒」画素デー
タが入り、アキュームレータACCが所定のデータで満
たされる場合には、ステップJST78の判断結果がY
ESとなり、そのアキュームレータACCの内容をRB
Fエリアに転送し、ターミネーションランレングスから
1を引く。 次に、ステップJST80での判断結果がNO1即ち、
未だターミネーションランレングスの処理が終っていな
ければ、RBFエリアのライトアドレスを1つ更新して
バイト処理に移る。 ステップJST80の判断結果がYESであれば、ビッ
トカウンタBTCIに8をセットし、RBFエリアのラ
イトアドレスを1つ更新したのち、それらをWKエリア
に格納する。 そのあと、CPU内の内部状態を元に戻して第30図(
a)のフローに戻る。 バイト処理に入った場合には、アキュームレータACC
に8ビツトオールrlJ をセットし、RBFエリアに
転送する。 次に、ターミネーションランレングスから8を引き、そ
の結果がOになったか否かをステップJS T81で判
断する。 ステップJST81の判断結果がYESであれば、RB
Fエリアのライトアドレスに丁度8ビツトの画素データ
が書き込まれた状態でターミネーションランレングスの
処理を終了したことになるので、ビットカウンタBTC
Iに8をセットし、ライトアドレスを1つ更新する。そ
のあとは、前述同様それらのデータをWKエリアに格納
し、CPtJの内部状態を元に戻して第30図(a)の
フローに戻る。 ステップJST8]での判断結果がNoであれば。 ステップJST82で、先にランレングスから8を引い
たその結果が正か負が、即ち、その符号が「0」か「l
」かを判断する。 ステップJST82での判断結果がNO,即ち、未だラ
ンレングスが残っていれば、ライトアドレスの更新を行
なったのち、再び「黒」画素データをlバイトRBFエ
リアに転送する処理を繰り返す。 ステップJST82での判断結果がYES、即ち、ター
ミネーションランレングス以上の画素データを、RBF
エリアに転送した場合には、次に画素データをRBFエ
リアのそのアドレスに転送する際、何ビット入れたらよ
いか、その端数分を記憶しておくため、ビットカウンタ
BTCIにその端数分をセットする。 このとき、RBFエリアのそのライトアドレスには余分
の「黒」画素データが書き込まれたことになるが、その
分は、以上の説明からも明らかなように、次の画素デー
タにより置き換えられるので何ら不都合は生じない。 ビットカウンタBTCIの補正を行なったあとは、ライ
トアドレスの更新を行ない、それらのデータをWKエリ
アに格納し、CPUの内部状態を復元したのち第30図
(a)のフローに戻る。 CPUが以上に説明した仕事Iを実行することにより、
FIFOエリアに貯えられたデータは、1バイトづつC
PUに取り込まれ、復号化が行なわれてRBFエリアに
貯えられる。 RBFエリアに貯えられた画素データは、次に、CPU
が前述した割込要求信号1ntbにより仕事Hを実行す
る際、受信画出力部■に取り出され、更に受信画記録部
■に移され、記録紙に記録される。 第34図は、その仕事Hにおける画素データを受信画出
力部mに転送するフローを示したものである。 このフローに入ると、CPUは先ず、的述第5図(a)
、(b)を参照して説明したサーマルエレメントのセグ
メント選択データをWKエリアから取り出し、レジスタ
Rにセットする。 セグメント選択データは、前述したように、サーマルエ
レメントの8セグメントを順番に選択していくデータで
あるから、ラインの最初のセグメントを選択する時点で
は、WKエリアには「0、O,O,O50,0、Oll
」がストアされている。 次に、バイトカウンタBYCに初期値32をセットする
。 これは、前述した通り1セグメント分のデータが256
ビツト、即ち、32バイトから成り、受信画出力部mに
画データをセットするには、8ビツトづつ32回の処理
を施す必要があるためである。 また、WKエリアからRBFエリアのリードアドレスを
取り出し、CPU内にセットする。 次に、そのリードアドレスから1バイトデータをアキュ
ームレータACCに取り込み、これを受信画出力部正に
出力すると共に、RBFエリアのリードアドレスを更新
し、1バイトの転送処理が終了したので、バイトカウン
タBYCから1を引く。 CPUがこの転送処理を32回繰り返すことにより受信
画出力部mには1セグメント分のデータがセットされる
。 このとき、バイトカウンタB Y C,は0となるので
、次にはセグメント選択データをレジスタRがらアキュ
ームレータACCに転送し、更に受信画出力部mに転送
する。 これで、受信画出力部■にはlセグメント分の画素デー
タとセグメント選択データがあセットされたことになる
ので、次に、CP(Jは、前述したパワーイネーブル発
生のためのライトストローブW S 2を受信画出力部
mに出力する。 この結果、前述したようにサーマルエレメントが動作し
、受信画記録部■で1セグメンi・分の記録が行なわれ
る。 CPUは、再び次に仕事Hを行なうときに備えて、セグ
メント選択データを1ビツトシフトしたのち、そのデー
タおよび、RBFエリアのリードアドレスをWKエリア
内に退避させたのち、割込み前の仕事に戻る。 CPUが割込要求信号i n l:hを受は付けて行な
うときの仕事I(とじては、上記データ転送処理の他に
受信画記録部■の副走査用パルスモータに相励磁信号を
出力する処理があるが、これは前述第18図(a)〜(
C)を参照して説明した送信モードにおける場合と同様
であるから、その詳細な説明は省略する。 送信モードにおいては、CPUが以上の仕事F〜Iを実
行することにより、受信画データを復号化し、記録する
ことにより原稿のコピーを得ることができる。 尚、上記実施例においては、CPUが各仕事を行なうた
めに必要とする各種のレジスタ、カウンタ等をCPtJ
内に設けた場合について説明したが、これらレジスタ、
カウンタ等をCPU外部に設けても良いことは言う迄も
ない。 また、上記実施例においては、モデムを用いた公衆回線
を利用した場合について説明したが、ディジタル回線を
利用した場合にも適用できることは明らかである。 更に、上記実施例においては、8ビツトCPUでデータ
処理を行なう場合にについて説明したが、本発明はこれ
に限定されることなく、例えば、16ビツト、4ビツト
、32ビツトあるいはビットスライス等のCPUでも同
様に処理できることは勿論のことである。 更にまた、本実施例における原稿読取部■、受信画記録
部■の構成は任意に設計できる。例えば原稿読取部Iは
、マグネットテープ、メモリ等の画像リースから画素デ
ータを取り出すものであっても良いし、また、受信画記
録部■はコンピュータであっても良い。 また、相手側受信装置あるいは送信装置自体がコンピュ
ータや蓄積交換装置であっても良い6以上の説明の通り
、本発明によれば、従来装置におけるバッファ装置、コ
ーグ、デコーダ装置、通信制御装置等のハード部分でマ
イクロコンピュータに置き換えたので、構成が極めてコ
ンパクトになり、しかも、非常に安価なファクシミリ装
置を得ることができる。
[Initial value, I! pchi, 64
Set the complement of . Step J Sr1 judgment result is YES, 1111chi,
When the bit counter BTCI becomes O, the bit processing for the fraction has been completed, and byte processing begins. Byte processing is YE with $1 cutting result force of step JSTI
This is done in the case of S. That is, if all 1-byte data is O, 8 is added to the tf and T counters, and the occurrence of a key 1) from the T counter is checked. As a result, if a carry occurs, initial setting is performed taking into account the fraction in the T counter. That is, the lower three digits of the T counter are left as they are, the upper digits are set to the complement of 64, and 1 is added to the M counter. If a carry does not occur in the T counter, the read address of the RFB area is incremented in order to accumulate the next 1 byte data from the RFB area (to the muller ACC).
RF address 0-4OFF or 4100-41FF
Since it is stored in the B area, when the 1-byte data is taken out from the RFB area, one line may end there. To check this, when the read address of the RFB area is incremented, step J
Judge by Sr6. If the determination result is No, the above operations are repeated. YE
If S, it means that all the image data for one line has been taken out from the RFB area and the run length counting process has been completed, so the process moves to the flow of reading the WHITE code from the table. FIGS. 22(a) and 22(b) are flowcharts for extracting the WHI-E code from the table based on the run-length counting results. First, check whether a makeup code is required. That is, the contents of the M counter are checked in step JSr7 to determine whether M=O or not. If the determination result is YES, there is no need to create a make-up code, and the process immediately begins creating a termination code. That is, based on the lower value stored in the T counter in the flow shown in FIG. 21, the table is looked up and predetermined block data is taken out. As described above, the block data extracted at this time has a 3-byte structure, the first byte contains the code length, and the second and third bytes contain the WHITE termination code. Therefore, first, this code length is put into the code length register CLR and added to the total code length counter CLC. This total code length counter TCLC is necessary to determine whether fill bit generation is necessary. That is,
As mentioned above, when transmitting one line of coded data, one line must be transmitted with a predetermined number of bits, for example, 96 bits or more, in order to guarantee the minimum transmission time. For this reason, if the hood compression rate of the image data of 1 ray and 2 minutes is high, it is necessary to add wild bits. Therefore, each time coded data is created according to the run length, the code length is accumulated and the code length for one line is monitored. The complement of 96 is set in this total code length counter TCLC when the flow shown in FIG. 21 is executed. Step J If the judgment result in Sr8 is YES, there is no need to generate a fill bit, so the non-fill flag NFF is set.
stand up. The coded data taken out from the table is transferred one bit at a time to the FIFO area of the RAM, and each time 8 bits of the data are transferred, it becomes possible to output the data from the FIFO area to the transmission/reception information input/output unit (2). As mentioned above, the FIFO area is RAM 4.
The 32 bytes below address 200 are used, and in order for the FIFO to function, there is also a write address register WAR1 that stores the address when writing 1 byte data there.
Read address register RAR that stores the address when reading 1-byte data, and bit counter BTCII that stores the number of bits written in 1-byte data when writing coded data bit by bit.
Is required. Through the joint work of these components, coded data is sequentially written to predetermined write addresses in the FIFO area, and the data written in the FIFO area is transferred from a predetermined read address to the transmission/reception information input/output section (1). It is read out one byte at a time. The write address and read address constantly cycle through 0 to 32, and data is written and read in the FIF area in an orderly manner. However, the conditions at this time are that (1) the write address must not overtake the read address in order not to destroy the data written in the FIFO area. Furthermore, in order to prevent the FIFO area from becoming empty, there are two conditions: (2) the write address must not be overtaken by the read address; if these two conditions are not satisfied, this embodiment becomes meaningless. In other words, the important point in this embodiment is that it is configured so that the above two conditions are always satisfied. Now, in step JSr1, it is determined whether coded data is currently being written to a predetermined address in the FIFO area, and if it is being written, data is removed from the table.
7. Write the next 1 bit of the output coded data to the FIFO area. If the determination result in step JST9 is YES, that is, not even one bit has been written to that address yet, it is determined in step JSTIO whether the read address and write address match. If the determination result is YES, that is, the read address matches the write address, writing of data is prohibited until data is read from that address to prevent data destruction. When writing to the FIFO area becomes possible, 1 bit of coded data is transferred and 1 is subtracted from bit counter BTCII. In step JSTII, it is determined whether the bit counter BTCII has become 0, that is, whether 8 bits of data have been entered at a predetermined address in the FrF○ area. If the determination result is No, 1 is subtracted from code length register CLR in order to monitor the number of bits transferred. In step JST12, it is determined whether the code length has become 0, that is, whether all coded data has been transferred to the FIFO. If the judgment result is NO5, that is, all of the coded data taken out from the table has not been transferred to the FIFO area, then the coded data is transferred to the 1-bit FIFO area again.
Repeat the above process for transferring to the area. At this time, if the judgment result in step JSTII is YES, that is, 8 bits of data have entered the predetermined address of the FIFO, the bit counter BTC is set to 8,
Add 1 to the write address register WAR to update the write address. As mentioned above, data is written to and read from the FIFO area endlessly, so once data is written to the final address of the FIFO area, the next data is written to the first address of the FIFO area. There must be. Therefore, when updating the write address, step JSTI
In step 3, it is determined whether the write address register WAR has overflowed, and if the determination result is YES, that is, there is an overflow, the start address is set in the write address register WAR. If the determination result is No, 1 is directly subtracted from the code length register CLR. Next, in step JST14, it is determined whether the code length register CLR has become O, that is, whether the transfer of all coded data has been completed. If the judgment result is NO1, that is, the process has not been completed yet, step JST determines whether it is possible to write the next data.
Determine based on IO and repeat the above process. When all the encoded data taken out from the table has been transferred, the initial value is set in the T counter. Next, in step JST15, it is determined whether the memory empty flag MEF is set. This flag MEF is activated when exactly 1 byte of the image data is extracted in the flow shown in FIG. 21 that extracts "white" image data from the RBF area and counts the run length. Set when data retrieval is finished. Therefore, if the last coded data of the l line is transferred to the FIFO area, the determination result in step JST15 becomes YES, and the flow shifts to the generation of the synchronization code EOL. On the other hand, if the determination result in step JST15 is NO, then the process moves to the flow of extracting "black" image data from the RBF area and counting the run length. The above is an explanation of the operation when the M counter is O.
If the counter is not O, that is, if it is necessary to create a make-up code, the process moves to the flow shown in FIG. 22(b) where a table is drawn using the contents M of the M counter as an address. The subsequent operation is the same as when creating a termination code.The code length is set in the code length register CLR, the code length is added to the total code length counter TCLC, and the occurrence of a carry is checked. sets the flag NFF to 1, and if it does not occur, the bit counter BTCn goes to O.
Check whether or not. As a result, when the bit counter BTCn is 0 and coded data is to be transferred to that address in the FIFO area for the first time, it is checked whether data can be written to that address or not, and the process waits until writing becomes possible. If coded data has already been transferred to that address, the next 1 bit is immediately transferred to the FIFO area. Meanwhile, the bit counter BTCI[ is used to check whether 8 bits have been transferred to the FIFO area, and the code length register CLR is used to check whether all the coded data at that time has been transferred to the FIFO area. I'm checking. When 8 bits of coded data is transferred to the FIFO area, that is, when the specified address of the FIFO area is
If it is filled with byte data, the write address is updated in order to transfer the coded data to the next address. At this time, if the previously transferred data is the final address of the FIFO area, the next data must be transferred to the first address of the FIFO area, so the first address is set in the write address register again.6M counter The above process is repeated until the process of transferring the makeup coded data taken out from the table to the FIFO area based on the content M of is completed, and when it is completed, the process shown in FIG. 22(a) above is repeated. Executes termination coded data transfer processing. In this way, once the compression process for the white J image data is completed, the compression process for the "black" image data will begin. FIG. 23 is a flowchart for counting the "black" run lengths and extracting T and M for this purpose. Since this flow is always entered after the flow shown in FIG. 21 described above has been executed, each register and counter contains a predetermined value based on the flow executed so far. That is, the T counter contains the initial value, the M counter contains O, the bit counter BTCl contains the remaining fractional bits when the flow in FIG. 21 is executed, and the CPU's accumulator A.
CC contains the corresponding [Black J image data. More precisely, when the counting of the "white" run length is finished in the flow shown in FIG. is shifted out, and the rest is held as is in the accumulator ACC. Furthermore, the number of bits remaining after removing the "white" pixel data from the 8-bit image data, ie, the number of bits of the "black" pixel data, is stored in the bit counter BTCI. Therefore, when executing the flow shown in FIG. 22 and moving to this flow, first, add 1 to the T counter, subtract l from the bit counter BTCI, and as a result, the bit counter BTCI becomes 0. In other words, in step JST1, it is determined whether or not the run length counting process for the fraction has been completed.
Judging by 6. If the judgment result is No, that is, there is still a fraction remaining, the contents of accumulator ACC are added to accumulator ACC, thereby shifting by 1 bit. In this case, since the run length of "black" is counted, if there is a change point, at that time the ACC is changed to "0".
” is shifted out. Therefore, in step JST+7, it is determined whether a carry rQJ has occurred, and if a carry [OJ has occurred,
Finish the run length count and send the coded data to FIF○
Shift to the process of taking it out to the area. If the determination result in step JST17 is NO, 1 is added to the T counter, and it is determined in step JST18 whether or not the value T exceeds 64. If the judgment result is YES, that is, it exceeds 64, then M
After adding 1 to the counter and setting the initial value to the T counter, 1 is subtracted from the bit counter BTCI. If it does not exceed 64 yet, immediately subtract 1 from the bit counter BTCI. As a result, whether the bit counter BTCI is 0 or not, that is,
It is determined in step JST19 whether or not the processing for the fraction has been completed. If the judgment result in step JSTI9 is No, that is, if the processing for the fraction has not been completed, the above operation of shifting the contents of the accumulator ACC is repeatedly executed. If the judgment result in step JSTI9 is YES, that is, the processing for the fraction has been completed, set 8 in the bit counter BTCI, add 1 to the read address register RAR,
Update the read address of the RBF area. As a result, it is determined in step JST20 whether a carry has occurred from the read address register RAR. If the judgment result is YES, it means that all the pixel data for one line has been taken out, so the memory empty flag MEF is set and the coded data is created based on T and M at that time. darn. If the judgment result in step JST20 is No, RB
One byte data is taken from the F area into the accumulator ACC of the CPU, and it is checked whether all of the pixel data is "1". If the determination result in step JST20 is YES, processing moves to each byte. If No, there is a change point within the 1-byte data, so the bit-by-bit process of adding the contents of ACC to the accumulator ACC described above is repeated again. When the process moves to byte processing, 8 is added to the T counter and whether or not a carry has occurred in step JST22, that is, 6
Determine whether the number exceeds 4 or not. If 64 is exceeded by adding 8 to the T counter, the excess is equal to the fraction processed in the first stage of this flow, and that value is set in the T counter as is. Therefore, in order to keep the fraction, leave the lower three digits of the T counter as is and set the upper digit to the initial value, that is, the complement of 64, and the T counter will store the counted value for the processed fraction. Ru. Next, after adding 1 to the M counter, 1 is added to the read address register RAR to update the read address in order to take in the next 1-byte data into the CPU again. In this way, after the result of counting the run length of "black" is obtained in the T counter and the M counter, a table is drawn using the values T and M as addresses, and the coded data of "black" is stored in the FIFO area. Figure 24 (a)
), the process moves to the flow shown in (b). The flow shown in Fig. 24 (a) and (b) is the same as the flow shown in Fig. 22 (a) and (b), except that the data retrieved from the table is replaced with "black" coded data. Since there is no difference in the processing procedure, detailed explanation thereof will be omitted. When executing the flowcharts in FIGS. 24(a) and 24(b), if all the coding processing for one line is completed, the process moves to the flow for creating the synchronization code EOL shown in FIG.
If the processing for 42 minutes has not been completed, the "white" coding processing will be performed again, so the process returns to the flow shown in FIG. 21 described above. Figure 25 shows the flow of creating the synchronization code EOL.As mentioned above, the synchronization code EOL is +149 O and 1.
Therefore, in order to count these 11 O's, a decimal counter is prepared and an initial value of 11 is set there. Next, if the number of encoded data for 1942 minutes is less than a predetermined number, it is necessary to add a fill bit before the synchronization code EOL, so it is checked whether the non-fill flag NFF is set. This flag NFF is set when the number of coded data exceeds a predetermined number when the flow of FIG. 22 or FIG. Start creating EOL. That is, "O" is transferred to the 1-bit FIFO area and 11
Subtract 1 from the decimal counter and use the FIF in step JST31.
It is determined whether the number of rQJs transferred to area O has reached 11. If the judgment result is No, bit counter BTCI
By subtracting 1 from T, it is determined in step JST32 whether 1 byte has been transferred to the FIFO area. If the determination result is No, that is, 1 byte has not been transferred yet, "0" is written again to 1 bit FIFO. Repeat the operation to transfer to the area. When 1 byte is transferred to the FIFO area, 8 is set in the bit counter BTCI[, 1 is added to the write address register WAR, and the 1-IF○ write address is updated. At this time, it is determined in step JST33 whether a carry has occurred from register WAR, and if the determination result is YES, an initial value is set in register WAR. After that, in step JST34, it is determined whether or not writing to the FIFO area is possible by checking the match between the write address and the read address, and if writing is possible, "0" is transferred to the 1-bit FIFO area again. Repeat the process. By the way, if the judgment result in step JST30 is No, that is, it is necessary to add a fill bit, then in the next step JST35, whether to add a fill bit, that is, "0" to the new FIFO write address, or if the data is already halfway If the fill bit is to be written to a new address, it is determined in step JST36 whether or not it is possible to write to that new address. 0” as FIFO
Transfer to area. At this time, 1 is added to the total code length counter TCLC, and it is determined in step JST37 whether the result has reached a predetermined number of bits. If the judgment result is No, that is, the predetermined number of bits has not yet been reached, subtract 1 from the bit counter BTCII,
In step JST38, it is determined whether one byte of data has entered a predetermined address in the FIFO area, and if it has not, the operation of transferring "0" to that address is repeated. If 1 byte is transferred to that address, the bit counter BTCn is set to 8 and the write address register WA
Add R1:1. In step JST39, it is determined whether or not a carry has occurred from the register WAR at that time. If a carry has occurred, the data has been transferred to the final address of the FIFO area, and the next 1-byte data will be at the beginning. Since the data must be transferred to the address, the initial value, ie, the start address, is set in the write address register WAR. In this way, the fill bit, i.e. rQJ, is set to FIF○
When the total code length reaches a predetermined number by transferring one bit to the area, the judgment result in step JST37 becomes YES, and in order to add the synchronization code EOL after that, 11 O's are transferred to the FIFO as described above. Transfer to area. As a result, since the determination result in step JST31 is YES, the bit counter BTCII is also subtracted by 1. At this time as well, 1 is placed at the specified address in the FIFO area.
Whether or not a byte was transferred; if so, whether it is necessary to return the address to the first address when updating the address; and whether the next data can be written to the updated write address in the FIFO area. Kawo step JS
After making a judgment at T40 to JST42 and performing processing based on the judgment result, the last l of the synchronization code EOL is set to FI.
Transfer to FO area. After the transfer, 1 is decremented from bit counter BTCII, and counter B is decremented in step JST43 in the same manner as described above.
After determining whether it is necessary to set TC■ to 8 and whether or not it is necessary to return the write address to the first address of the FIFO area in step JST44, and performing processing based on the determination results, the next step is In order to perform the encoding process for one line, the process returns to the flow shown in FIG. 21. As described above, the image data stored in the RBF area is taken out one byte at a time into the CPU, compressed, and then stored in the FIF area. Figure 26 shows the information input/output section for transmitting and receiving coded data stored in the FIFO area one byte at a time.
This figure shows the operating procedure for job C to be transferred to. As mentioned above, this job C is executed by the interrupt request signal 1□ltc generated from the transmitting/receiving information input/output section ■ every time the 8-bit data transferred to the transmitting/receiving information input/output section ■ is serially output to the modem. Ru. This interrupt request signal, int, increases the transmission rate by 4, for example.
In the case of 800 bps, 8/4800 (se
c) = 1°6 (sec). When the interrupt request signal 1nLe is generated, the CPU interrupts the work or E that was being executed up to that point. The data that had been stored in each counter, register, etc. in the CPU up to that point is saved to the WK area of the RAM. Next, the read address of the FIFO area is brought from the WK area and read address register RAR of the CPU is read.
, transfers 1 byte of data from that address in the FIFO area to the transmission/reception information input/output unit (2), and adds 1 to register RAR to update the read address. As a result, as in the case of writing data to the FIFO area described above, a carry occurs from register RAR, and F
If the final address of the IFO area is exceeded, set the initial value in register RAR, and then write register RAR again.
If no carry occurs from AR, the address is stored in the WK area. Thereafter, the previously saved data is returned to the CPU and the process returns to the previous work or E. The comprehensive operation flow performed by the CPU when receiving data in the receive mode has already been shown in FIG. do. That is, at the time of reception, the CPU receives an interrupt request signal i n t generated from the transmission/reception information input/output unit 2 explained in FIG. 11 above.
, an interrupt request signal 1nLt based on the synchronizing signal S generated from another timing signal generating section (2) of , and an interrupt request signal 1nth based on the synchronizing signal S are inputted via the signal line INT. The priority order when performing work in response to the interrupt request signals 1n11 to jnth is F>G>H, and work I is always executed. Next, an outline of these tasks F-1 will be explained with reference to the image data processing path diagram in FIG. 27. [Work F1 When an interrupt request is made by the interrupt request signal int, CP
U performs work F. Its work consists of the memory full flag MFFI indicating that one line of decoded pixel data has been stored in the RBF area of the RAM (or
If is set, reset the flag MFF and set the data read flag DRF + or ■
is set, and if the memory full flag MFFI or ■ has been reset, that flag MFF is reset. This data read flag DRF I or D is referred to when performing work H described below. [Work G] When an interrupt request is made by the interrupt request signal int, CP
U performs work G. As shown in the image data processing path diagram in FIG. This involves transferring bit data, ie, 1-byte data, to the FIFO area mentioned above and writing it to a predetermined address. The received image data transferred to the FIFO area is decoded into pixel data in the next step (2) and transferred to the RBF area for storage. [Job I] This is a work normally executed by the CPU. If RBF area I or n is empty and the memory empty flag MEFr or ■ is set, after resetting it, the F
Image data is taken into the CPU from the IFO area, decoded, and the decoded image data is sequentially transferred to the RBF area and stored. When decoding for one line is completed, the presence or absence of an error in the received image data is checked, and if there is no error, the memory full flag MFFI or ■ is set. [Work H] When an interrupt request is made by the interrupt request signal int, the CP
U is the data read flag DRF! Alternatively, only if ■ is set, the interrupt request is accepted and job H is executed. Its job is to advance the sub-scanning pulse motor of the received image recording section (2) by one step, and to output the image data decoded in 8-bit units from the RBF area to the 256-bit received image output section (2). . However, the timing at which the job is performed differs somewhat depending on the sub-scanning line density, and when the sub-scanning line density is 7.7 lines/m, when the flag DRF is set, the signal 1nth
The pulse motor is advanced by one step for each interrupt request, and one line of image data is output to the received image output section m after eight interrupts. When the sub-scanning line density is 3.85 lines/III+, when the flag DRF is set, the signal j n
Interrupt requests are accepted every other time in th, and the pulse motor is advanced by one step, while one line of image data is successively outputted twice to the received image output section m by the 16 occurrences of the signal 1nth. FIG. 28 shows an example of a time chart for each job F to ■ when the sub-scanning line density is 3.85 lines/m.
For example, synchronization signals S1 and S are generated while the CPU is executing task (3) in which image data is fetched in 8-bit units from the FIFO area, decoded, and sequentially transferred to the line buffer RBF area. When the signal int and 1nth interrupt request is received, first, work F is executed to set or reset the data read flag DRF, and then the sub-scanning pulse motor is advanced by one step, and the data is decoded from the RBF area. A job H is executed to output the received image data to the received image output section m. During this time, the received image data is serially input from the modem MDM to the transmitting/receiving information input/output unit (■), and as mentioned above, every time 8-bit data is input there, the transmitting/receiving information input/output unit (■) sends an interrupt request signal. generates int. When this interrupt request signal int is input to the CPU, the CPU
U interrupts work H or ■ and sends/receives information input/output unit■
Execute job G to transfer the 8-bit data input to the FIFO area. After finishing this work G, return to work H or I again. By 8 interrupt requests by the interrupt request signal intwa,
After outputting one line of image data from the RBF area to the received image output section m, the same one line of image data is outputted to the received image output section m again for each interrupt request of signal 1nt7, and the received image recording section ■ Now, write the image data twice. Next, we will explain the more detailed processing procedure of the work explained above in the second section.
This will be explained below in Figure 9. FIG. 29 is a flowchart of job G that transfers 8-bit data inputted from the modem MDM to the transmission/reception information input/output unit (■) to the FIFO area. As mentioned above, the transmission/reception information input/output unit
When 8-bit data is input to the interrupt request signal int,
occurs. This interrupt request signal int is also the same as in the transmission mode.
For example, if the transmission speed is 4800 bps,
Occurs every 8/4800 (sec) = 1.6 (msec). When this interrupt request signal intg is accepted, the CPU interrupts the work H or I that it was doing up to that point and starts this work. That is, in order to make the contents of counters, registers, etc. used in the program that was being executed up to that point available for use when returning to that program, the CPU
Evacuate to AM WK area. It also fetches the write address of the FIF○ area from the WK area and sets the address register ADR in the CPU. Next, the 8-bit data input to the transmission/reception information input/output unit (2) is taken in, transferred to the PIF, O area, and written into that address. After the transfer, add 1 to address register ADH and check whether a carry has occurred. If a carry occurs, the above 1-byte data has been written to the final address of the FIFO area, and the first data must be written to the first address of the FIFO area, so set the initial value in the address register ADR. and store this in the WK area. Furthermore, if no carry occurs, the write address is stored in the WK area as is. After that, in order to return to the previous work, the previously saved contents are set back into the CPU. In this way, the coded data stored in the FIFO area is then decoded in job I. FIG. 30 shows the flow for extracting the run length (binary number) by looking up a table based on the received coded data in the task (2). When entering this flow, the CPU first initializes the registers, then checks whether it is possible to take out coded data from the FIFO area, and if the data is stored in the FIFO area and can be taken out. , the data is taken into the data register DR+ in the 8-bit CPU. When drawing a table based on coded data and comparing the run lengths corresponding to the coded data, in this embodiment, as described later, if the first bit of the coded data starts with 1, the first bit is 0. If 1 comes in the 2nd bit, 0 up to the 2nd bit and 1 in the 3rd bit, then...
A table is constructed for dividing codes and BLACK codes into groups and extracting run lengths corresponding to the codes. Therefore, now from the FIFO area, data register DR,
Since it is necessary to check how many O bits are added to the beginning of the coded data taken in, an O counter is prepared for this purpose. As is clear from the above, the O added to the beginning of the coded data has a maximum of 7 bits. If 8 or more bits of O are added, the code is a synchronous code. Therefore, the 0 counter is initially set to 8. Next, in order to check how many bits of O are added to the beginning of the coded data in data register DR, the coded data in data register DR is transferred to accumulator ACC and shifted by 1 bit. The shifted and extracted carry is stored in a 1-bit memory. Furthermore, since the coded data shifted by one bit needs to be taken out and examined one after another, it is returned to the data register DR and stored. At this time, it is necessary to remember how many bits of coded data have been extracted, so 1 is subtracted from the bit counter BTCII, which is set to 8 in the initial setting. 8 of the coded data taken into the data register DR.
If all bits have been taken out, it is necessary to take in the next 8 bits to the data register DRt.
In that case, the subroutine FIFOR shown in FIG.
Execute EAD. After that, first shift the encoded data by 1 bit, check whether the carry taken out is rOJ or r14, and select rl.
In the case of J, the process moves to a flow for pulling the table and taking out the run length. If the carry is "0", the O counter is decremented by 1, and if the count value is 7 or less, the coded data is shifted again and the flow of counting the number of rQHs is repeated. In this case, if there are 8 consecutive bits of "0" at the beginning of the coded data, the result of subtracting ] from the O counter will be O, and we know that the coded data is a synchronous code.
Check for errors in received data. In this case, if rQJ continues for 8 bits at the beginning of the coded data, the O counter will be 1.
The result of subtraction is 0, which indicates that the coded data is a synchronization code, so check the received data for errors. If a carry rlJ occurs by shifting the 9-coded data that performs the return code detection operation, program step 5T50 is executed to draw the first table T1 using the contents of the 0 counter as an address. The table is divided into two, one for extracting the run length corresponding to the coded data of "white" and the other for the coded data of "black". The structure of the table in the case of `` is as shown in FIG. 30(b). That is, it consists of a first table T1 and a second table T provided in a predetermined area of the ROM, and the first table T has addresses 1 to 8.
Second table T! WHff~W indicating the start address of
H, is stored. The second table T1 is divided into blocks for each number of 0 bits added to the beginning of coded data, and each block contains data necessary to extract the run length corresponding to the coded data. ing. 1!30 (c) shows the second table T when only the first bit of the encoded data is O, that is, the table from addresses WH1 to WH. Hereinafter, in explaining the flow from program step 5T50 onward in step 30S(a), we will take as an example the case where the run length of coded data in which only the first bit is O is extracted, and FIG. 30(b), ( This will be explained with reference to table C). In the flow up to step 5T50, the coded data is shifted by 2 bits "0.1", the content of the O counter is 7, and the content of the bit counter BTCm is 6. Therefore, in step 5T50, the first Data WH, can be taken out from address 7 of table T1.Next, in steps 5T51 and 5T52, data 2 is taken out from address WH, of second table T, based on the data, and data 2 is transferred to data register DR1. The reason why 2 is included in the address WH of the second table T2 will become clear from the following explanation.
As can be seen from Table 1.2 above, when "0.1" appears at the beginning of coded data, the number of data bits that follow is always 2 or more. That is, the coded data starting with ro and IJ is 4 bits or more. In step 5T53, the data register DR2 is cleared in order to input predetermined data in the following step. Next, in step 5T54, the contents of the data register DR are shifted to the accumulator ACC, and in step 5T55, the shifted data is returned to the data register DR, and at step 5T56, it is transferred to the previously cleared data register DR. , and inputs the shifted 1-bit data. As a result, the coded data in the data register DR has been shifted to 3 bits, so in order to store it, the bit counter BTC is shifted in step 5T57.
Subtract l from II. The judgment result of judgment step 5T58 is NO, and step 5
Proceeding to T59, steps 5T54 to 5T59 are repeated again. Therefore, when step 5T59 is executed for the second time, data for the remaining 4 bits of the coded data is stored in the data register DR, and data for the 3.4th bit of the coded data is stored in the data register DR. and also
The contents of bit counter BTC■ are 4, data register D
Rs is O. As a result, the judgment result at step 5T60 is YES,
The process moves to step 5T61. In step ST61, the contents of the data register DR2 are added to the second table address WH, and in step ST6
At 2.5T63, 1 is further added to the addition result and the second table is drawn. For example, the 3rd and 4th bits of the coded data are “Ol
o”, that is, if o, then WH, +. , , rQ, 1'', then W H+-1-t, r 1, O'', data a, b, respectively from the addresses of W H, , , ,
Take out c. Also, if the 3rd and 4th bits are rl and IJ, then WH1
Extract data from address +3.1. The coded data at this time is ``rO,l,1.1'', which is coded data with a run length of 2, as is clear from the above description. Therefore, at the address of W H, , , , the run length is "2", the code T=rOJ indicating that the run length is the run length of the termination code, and the run length are found, so the code "2" indicating the end of table reference is found.
1" is stored. That is, the predetermined address of the second table has the information shown in FIG.
), the run length (binary number) RUN corresponding to the coded data (however, if the coded data is a makeup code, the number obtained by dividing the corresponding run length by 64) is the run length for the termination code. A code T/M indicating whether it is a length or a run length for a make-up code and a code "1" indicating the end of table reference are stored, and these codes will be used in later program steps. In step 5T64, the extracted data is shifted by 1 bit in order to check whether the table reference is completed, and in step 5T65, it is determined whether the carry "1" has occurred. As a result, for example, if the 3.4th bit is "1, ■" and data is extracted from the address W Hl 03+ 1, a carry "1" will occur, so based on the run length, one bit at a time will be Subroutine RUNLENGTH5TORE that transfers pixel data to the RBF area
Execute. Also, for example, the 3.4th bit is ro, OJ and the address W Hl+. If data a is taken out from or to register ADR, the carry is rOJ, so the process returns to step 5T52. Returning to step 5T52, this time, as a result of drawing the second table using the contents a of register ADR, 1 is found in data register D.
Set to R3. Therefore, in step 5T56, the fifth bit of the coded data is taken out into the data register DR, and in step 5T63, the data at address a+0+1 or a+1+1 is taken out into the register ADR, depending on the contents. Thereafter, the same operation is repeated, and if all 8 bits of data stored in the data register DR are shifted out during that time, the judgment result at step JST5g is YES.
Therefore, the subroutine FIFOREAD transfers the next data from the FIFO area to the data register DR.
Execute. FIG. 31 shows the flow of the subroutine FIFOREAD. When this flow is entered, the C
Evacuate various data stored in the PU. Next, data is read from the FIFO area, but in this case as well, as explained in the transmission mode above, the conditions for transferring data to and from the FIFO area are as follows: In order not to destroy data, (1) the read address must not overtake the write address. Furthermore, in order to prevent the data in the FIFO area from becoming empty, there are two conditions: (2) the read address must not be overtaken by the write address. Therefore, it is checked whether the read address and write address of the FIFO area are equal or not, and the data is transferred from the transmission/reception information input/output section (■) to the FIFO area, and the data is read out until the judgment result in step JST66 becomes No. is prohibited. If the determination result in step JST66 is No, the initial value 8 is set in the bit counter BTCn in case the process returns to the flow shown in FIG. 30(a). Next, take out 1 byte of coded data from the FIFO area, store it in the data register DR, and store it in the FFO
Update the area lead address. At this time, it is determined in step JST67 whether or not it is necessary to reset the read address to the first address.
If there is no need to do so, leave it as is; if necessary, set the initial value in the read address register and return the previously saved data in the CPU to its original state, as shown in Figure 30 (a). ) Return to the flow. Figure 32 shows the subroutine RUN LENGTH3T.
This shows the flow of ORE. First, while saving various data in the CPU, initial values of various data are set by extracting data necessary for executing this flow from the WK area. Next, when the flow shown in FIG. 30(a) is executed, it is determined whether the run length shifted by 1 bit in step 5T64 and stored in the register ADR corresponds to a termination code or a makeup code. To check, shift by 1 bit again. As a result, if T=rOJ is shifted and a carry "O", that is, a carry "l" does not occur, the judgment result in step JST68 is NO, and the run length stored in the register ADR corresponds to the termination code. , the flow shifts to the flow of generating the pixel data and transferring it to the RBF area. If the determination result in step JST68 is YES, the register ADR stores the numerical code obtained by dividing the run length corresponding to the makeup code by 64, that is, the makeup run length M, as described above. A flow begins in which pixel data 64 times the value is generated and transferred to the RBF area. That is, the make-up run length of register ADH is M
Set it on the counter. Next, it is determined in step JST69 whether byte processing is possible or whether bit processing must be performed. In other words, when executing this flow, if the pixel data transferred to the RBF area is less than 8 bits, the fractional bits must be transferred first to fill the address with 8-bit data. Must be. The fractional bit number is stored in the bit counter BTCI. Therefore, in step JST69, the bit counter BTCI
Judge whether or not is 8, and the judgment result is Y I-. If S, byte processing is performed; if NO, bit processing is performed. In the case of byte processing, it is determined whether the data to be processed is "white" or "black" in step JST7o, and if it is "white", the flow described below is performed, and if it is "black", the flow described below is performed, and if it is "black", the data to be processed is "r black".
A flow is executed in which 8 bits of pixel data are generated and transferred to the RBF area, but the flow is the same as in the case of "white" described below, except that the pixel data to be generated is different. Therefore, detailed explanation thereof will be omitted. When bit processing is started, it is determined in step JST71 whether the data to be processed is F white J or black J.As mentioned above, when data is sent from the transmitting side,
Since "white" coded data is always sent after the synchronization code EOL, execute the flow shown in Figure 30(a), draw a table based on this coded data, and find the corresponding run length. When the IJ is taken out, the first run length is "white", and thereafter there is no change in color in the case of make-up run lengths, but a color change occurs each time a termination run length is taken out. Therefore, when the contents of register ADR are shifted in step JST68 to determine the occurrence of carry rl, carry rQ)
By storing the color change that occurs each time the run length occurs, it is possible to determine in step JST71 whether the run length is "white" or "black." If the judgment result in step JST70 is "black", "
A flow of generating black J pixel data and transferring it to the RF3F area is executed, but since the flow is almost the same as the case of "white" described below, detailed explanation thereof will be omitted. If the judgment result of step JST7+ is "white", R
The 8-bit data of the address in the BF area where the pixel data fraction bits are to be written is once taken into the accumulator ACC of the CPU. Next, the contents of accumulator ACC are shifted by one bit by adding the contents of ACC. As a result,
After the pixel data of 8 bits or less that was previously stored in the accumulator ACC, the fractional white pixel data rQ is added.
J enters 1 bit. As a result, one bit of the fraction has been processed, so 1 is subtracted from the bit counter BTCI, and it is determined in step JST72 whether or not the processing of the fraction has been completed. If the judgment result in step JST72 is NO and the processing for the fraction has not yet been completed, the operation of shifting the contents of the accumulator ACC and inserting "0" therein is repeated. When the bit counter becomes O and all rQJs are included in the fraction, the contents of the accumulator ACC are transferred to the RBF area and the write address of the RBF area is updated. As a result, bit processing is completed and byte processing can be performed from the next address, so first, an initial value of 8 is set in the T counter. After that, the contents of accumulator ACC are all [O
”, transfer it to the RBF area, update its write address, and subtract 1 from the T counter.
Repeat times. When the judgment result in step JS73 is YES, that is, 64 bits of pixel data has been transferred to the RBF area,
Subtract 1 from the M counter. As a result, it is determined in step JST74 whether the content of the M counter has become O or not, and if the determination result is No, 8 is set in the T counter again. Transfers 64 bits of "white" pixel data. If the determination result in step JST74 is YES, that is, all the "white" pixel data of the run length corresponding to the makeup code is transferred to the RBF area, the bit counter BTCI is corrected. That is, the run length corresponding to the makeup code is 8.
Since it is a multiple of 0, when pixel data of that run length is generated and stored in the RBF area, the pixel data written to the last address is bit-processed from the 8 bits to the first address. The bits obtained by subtracting the written fraction are valid pixel data. Therefore, when the pixel data of the termination run length is transferred to the RBF area next time, the contents of the bit counter BTCI are returned to the first fraction in order to remember how many bits of pixel data should be input to that address. . After storing it in the WK area, the CP that was evacuated first
Set the various data of U to the original state again and see Figure 30 (
Return to the flow of a). Returning to the flow in Figure 30 (a), when the run length is retrieved from the table as described above, the termination run length is retrieved to the register ADR after the makeup run length, so the process in step JST68 is performed. If the determination result is NO, the flow shifts to generating pixel data of that termination run length and transferring it to the RBF area. FIG. 33 shows the flow, and the register AD
Check whether the run length in R is O. If the judgment result in step JST75 is YES, that is, if the run length is O and there is no need to transfer the pixel data to the RBF area, after returning the various data in the CPU that was saved earlier to its original state, Return to the flow of a). If the determination result in step JST75 is No, a fraction check is performed on the data in the address from which data is to be transferred in the RBF area. Therefore, say whether the bit counter BTCI is 8 or not.
The determination result in step JST76 is YES. That is, if the fraction is O and it is possible to write 8-bit data to that write address, it is checked whether the pixel data to be generated is "black" or "white" and the process moves to the byte processing flow. The byte processing for "black" is explained below, but for "white"
In the case of , almost the same processing as in the case of "black" is performed, so the details will be omitted. If the judgment result in step JST76 is No, that is, if the previously transferred data is 8 bits or less, first bit processing is performed to transfer fractional bits to that address to make it 8 bits. For this reason, first, it is checked whether the pixel data to be generated at that time is "white" or "black", and if the judgment result in step JS777 is "white", "white" pixel data is generated. , the flow moves to transfer it to the RBF area. This flow is carried out in almost the same way as in the case of "black J" described below, so the details are omitted. If the judgment result in step JST77 is NO, the data in the address to be transferred from among the pixel data is taken into the accumulator ACC.Next, 1 is set in the 1-bit memory, and the data in the accumulator ACC is shifted by 1 bit via the 1-bit memory.As a result, the previously written 8-bit pixel is stored in the accumulator ACC. One bit of the data is rewritten to "black" pixel data "1" to be written this time and stored. Now that the process of generating pixel data of fractional 1 bit is finished,
Subtract 1 from the bit counter BTCI. As a result, it is determined in step JST78 whether or not the bit counter has become 0. If the determination result is NO1, that is, there are still fractional bits to be processed, the register AD
I is subtracted from the run length in R, and it is determined in step JST79 whether or not all termination run length processing has been completed. If the determination result in step JST79 is NO, the process of shifting the accumulator ACC again and inserting 1 bit of "black" pixel data is repeatedly executed. If the determination result in step JST79 is YES, that is, if the pixel data generation process for the termination run length is completed before the fraction processing is completed, the contents of the accumulator ACC are transferred to the write address of the previous RBF area. Thereafter, the write address and the contents of the bi-soto counter BTCI are stored in the WK area, the internal state within the CPU is returned to its original state, and the process returns to the flow shown in FIG. 30(a). If the fraction processing ends before the termination run length processing is completed, and the extracted pixel data contains "black" pixel data corresponding to the fractional bits in the accumulator ACC, and the accumulator ACC is filled with the specified data. , the judgment result of step JST78 is Y.
ES and the contents of its accumulator ACC as RB
Transfer to F area and subtract 1 from termination run length. Next, the judgment result at step JST80 is NO1, that is,
If the termination run length processing has not yet been completed, the write address in the RBF area is updated by one and the process moves on to byte processing. If the determination result in step JST80 is YES, the bit counter BTCI is set to 8, the write address in the RBF area is updated by one, and then they are stored in the WK area. After that, the internal state inside the CPU is restored to its original state as shown in Figure 30 (
Return to the flow of a). When byte processing is started, accumulator ACC
8-bit all rlJ is set in , and transferred to the RBF area. Next, 8 is subtracted from the termination run length, and it is determined in step JST81 whether or not the result is O. If the judgment result in step JST81 is YES, RB
Since the termination run length processing has been completed with exactly 8 bits of pixel data written to the write address of the F area, the bit counter BTC
Set I to 8 and update the write address by 1. Thereafter, the data is stored in the WK area as described above, the internal state of CPtJ is restored to its original state, and the process returns to the flow shown in FIG. 30(a). If the determination result in step JST8] is No. In step JST82, if the result of subtracting 8 from the run length is positive or negative, that is, its sign is "0" or "l".
”. If the determination result in step JST82 is NO, that is, if there is still a run length remaining, the write address is updated, and then the process of transferring the "black" pixel data to the 1-byte RBF area is repeated. If the judgment result in step JST82 is YES, that is, the pixel data longer than the termination run length is transferred to the RBF.
When pixel data is transferred to that address in the RBF area, set the bit counter BTCI to the fractional number in order to remember how many bits should be inserted the next time pixel data is transferred to that address in the RBF area. . At this time, extra "black" pixel data is written to that write address in the RBF area, but as is clear from the above explanation, it will be replaced by the next pixel data, so there will be no effect. No inconvenience will occur. After correcting the bit counter BTCI, the write address is updated, the data is stored in the WK area, the internal state of the CPU is restored, and the process returns to the flow shown in FIG. 30(a). By the CPU executing the job I explained above,
The data stored in the FIFO area is stored one byte at a time in C.
The data is taken into the PU, decoded, and stored in the RBF area. The pixel data stored in the RBF area is then sent to the CPU
When executing work H in response to the interrupt request signal 1ntb described above, the received image is taken out to the received image output section (2), further transferred to the received image recording section (2), and recorded on recording paper. FIG. 34 shows the flow of transferring pixel data in the job H to the received image output unit m. When entering this flow, the CPU first performs the following process as shown in Figure 5 (a).
, the thermal element segment selection data explained with reference to (b) is taken out from the WK area and set in register R. As mentioned above, the segment selection data is data that sequentially selects the 8 segments of the thermal element, so at the time the first segment of the line is selected, the WK area contains "0, O, O, O50. ,0,Oll
' is stored. Next, the initial value 32 is set in the byte counter BYC. As mentioned above, this means that the data for one segment is 256.
This is because it consists of 32 bits, that is, 32 bytes, and in order to set the image data in the received image output section m, it is necessary to process 8 bits each 32 times. Also, the read address of the RBF area is extracted from the WK area and set in the CPU. Next, 1 byte data is taken into the accumulator ACC from that read address, and it is output directly to the reception image output section, and the read address of the RBF area is updated.Since the 1 byte transfer process is completed, the byte counter BYC Subtract 1 from. By repeating this transfer process 32 times by the CPU, data for one segment is set in the received image output section m. At this time, the byte counter B Y C becomes 0, so next the segment selection data is transferred from the register R to the accumulator ACC, and further transferred to the received image output section m. Now, the pixel data and segment selection data for 1 segment have been set in the received image output section (■), so next, CP (J is the write strobe W S for generating the power enable described above). 2 to the received image output unit m. As a result, the thermal element operates as described above, and the received image recording unit 2 records 1 segment i·. The CPU again starts the next job H. In preparation for the interrupt, the segment selection data is shifted by 1 bit, and after that data and the read address of the RBF area are saved in the WK area, the process returns to the work before the interrupt. Work I when performing :h with a receiver (In addition to the data transfer process described above, there is a process to output a phase excitation signal to the sub-scanning pulse motor of the received image recording unit ■, but this is described above) Figure 18(a)-(
Since this is the same as the case in the transmission mode explained with reference to C), detailed explanation thereof will be omitted. In the transmission mode, the CPU executes the above tasks F to I, thereby decoding and recording the received image data to obtain a copy of the original. In the above embodiment, various registers, counters, etc. required for the CPU to perform each job are stored in the CPtJ.
Although we have explained the case where these registers are provided in
It goes without saying that a counter or the like may be provided outside the CPU. Further, in the above embodiment, the case where a public line using a modem is used has been described, but it is clear that the invention can also be applied when a digital line is used. Further, in the above embodiment, a case has been described in which data processing is performed by an 8-bit CPU, but the present invention is not limited thereto, and can be applied to, for example, a 16-bit, 4-bit, 32-bit, or bit slice CPU. However, it goes without saying that it can be processed in the same way. Furthermore, the configurations of the document reading section (2) and the received image recording section (2) in this embodiment can be arbitrarily designed. For example, the document reading section I may be one that extracts pixel data from an image lease such as a magnetic tape or a memory, and the received image recording section (2) may be a computer. Furthermore, the receiving device or the transmitting device itself may be a computer or a storage/forwarding device.As explained above, according to the present invention, the buffer device, KOG, decoder device, communication control device, etc. in the conventional device can be used. Since the hardware part is replaced with a microcomputer, the configuration becomes extremely compact and a facsimile machine can be obtained at a very low cost.

【図面の簡単な説明】[Brief explanation of drawings]

第1図は従来のファクシミリ装置を説明するための図で
、(a)はその送信側のブロック構成図、(b)はその
受信側のブロック構成図、第2図は本発明の一実施例に
係るファクシミリ装置のシステムブロック構成図、第3
図は第2図における原稿読取部lの具体的構成図、第4
図(a)は第2図における画情報入力部■の具体的構成
図、第4図(b)はその動作を説明するためのタイムチ
ャート、第5図(a)は第2図における受信画出力部m
の具体的構成図、第5図(b)はその動作を説明するた
めのタイムチャート、第6図(a)は第2図における受
信画記録部■の具体的構成図、第6図(b)は第6図(
a)におけるサーマルエレメントSEの具体的構成図、
第7図は第2図におけるマイクロ、プロセッシング、ユ
ニット部(CPU)Vの具体的構成図、第8図は第2図
におけるタイミング信号発生部■の具体的構成図、第9
図は第2図における制御プログラム記憶部■の具体的構
成図、第10図は第2図における情報記憶部■の具体的
構成図、第11図(a)は第2図における送受信情報入
出力部■の具体的構成図、第1I図(b)は第11図(
a)の送信モード時における動作を説明するためのタイ
ムチャート、第11図(c)は第11図(a)の受信モ
ード時における動作を説明するためのタイムチャート、
第12図は第2図における制御信号入力部Xの具体的構
成図、第13図は第2図における制御信号出力部℃の具
体的構成図、第14図は本発明の一実施例に係るファク
シミリ装置の送信モード時における動作を説明するため
の包括動作フローチャート、第15図は本発明の一実施
例に係るファクシミリ装置の受信モード時における動作
を説明するための包括動作フローチャート、第16図は
本発明の一実施例に係るファクシミリ装置の送信モード
時における画データの流れを示す画データ処理経路図、
第17図は第7図のマイクロ、プロセッシング、ユニッ
ト部Vが送信モード時に実行する各仕事A−Hのタイム
チャート、第18図(a)はそのマイクロ。 プロセッシング、ユニット部Vが実行する原稿読取部■
の副走査パルスモータを1ステツプ進める仕事Bのフロ
ーチャート、第18図(b)はそのときのパルスモータ
相励磁パターン図、第18図(C)はそのとき実際にパ
ルスモータに出力される相励磁信号図、第19図(a)
は前記マイクロ、プロセッシング、ユニット部Vが実行
する仕事りにおける原稿読取部lで読み取った画データ
を画情報入力部りから情報記憶部■に転送するためのフ
ローチャート、第191i1(b)は情報記憶部■のR
AM内をそこに記憶されるデータの種類に応じて区分け
したときの各エリアを説明するためのRAMの構成図、
第20図(a)および(b)は上記仕事りにおける画デ
ータの前処理を行なって情報記憶部■に転送するための
フローチャート、第21図は仕事已における、R,A 
MのRBFエリアから画データを取り出し、「白」のラ
ンレングスを得るためのフローチャート、第22図(a
)、(b)は仕事Eにおける、その「白」のランレング
スに基づいてテーブルを引きWRITEコードを取り出
し、FIFOエリアに転送するためのフローチャート、
第23図は仕事Eにおける、「黒」のランレングスを得
るためのフローチャート、第24図(a)、(b)は仕
事Eにおける、その「黒」のランレングスに基づいてテ
ーブルを引きBLACKコードを取り出し、FIFOエ
リアに転送するためのフローチャート、第25図は仕事
Eにおける、同期コードを発生させFIFOエリアに転
送するためのフローチャート、第26図はコード化画デ
ータをFIFOエリアから送受信情報入出力部■へ転送
する仕事Cのフローチャート、第27図は本発明の〜実
施例に係るファクシミリ装置の受信モード時における画
データの流れを示す両データ処理経路図、第28図はマ
イクロ、プロセッシング、ユニット部Vが受信モード時
に実行する各仕事F〜■のタイムチャート、第29図は
送受信情報入出力部■からFIF○エリアにコード化デ
ータを転送する仕事Gのフローチャート、第30図(a
)は仕事■におけるFIFOエリアがら取り込んだデー
タに基づいてテーブルを引きランレングスコードを得る
ためのフローチャート、第30図(b)乃至(d)はそ
のテーブルの構成図、第31図は第30図(a)におけ
るサブルーチンFIFOREADのフローチャート、第
32図は第30図(a)におけるサブルーチ>RUN 
 LENGTH5TOREのフローチャート、第33図
はそのターミネーション画素データをRBFエリアにス
トアするたあめのフローチャート、第34図はRBFエ
リアがら受信画出力部mへ画素データを転送するための
フローチャートである。
FIG. 1 is a diagram for explaining a conventional facsimile machine, in which (a) is a block diagram of its transmitting side, (b) is a block diagram of its receiving side, and FIG. 2 is an embodiment of the present invention. System block diagram of the facsimile machine according to the third
The figure is a specific configuration diagram of the document reading section l in Figure 2, and
Figure (a) is a specific configuration diagram of the image information input unit (■) in Figure 2, Figure 4 (b) is a time chart for explaining its operation, and Figure 5 (a) is the received image in Figure 2. Output part m
5(b) is a time chart for explaining its operation. FIG. 6(a) is a specific configuration diagram of the received image recording section (2) in FIG. ) is shown in Figure 6 (
A specific configuration diagram of the thermal element SE in a),
7 is a specific configuration diagram of the micro, processing, and unit section (CPU) V in FIG. 2, FIG. 8 is a specific configuration diagram of the timing signal generation section ■ in FIG. 2, and FIG.
The figure is a specific configuration diagram of the control program storage section ■ in FIG. 2, FIG. 10 is a specific configuration diagram of the information storage section ■ in FIG. 2, and FIG. The specific configuration diagram of section ①, Figure 1I (b) is shown in Figure 11 (
FIG. 11(c) is a time chart for explaining the operation in the receiving mode of FIG. 11(a),
FIG. 12 is a specific configuration diagram of the control signal input section X in FIG. 2, FIG. 13 is a specific configuration diagram of the control signal output section ℃ in FIG. FIG. 15 is a comprehensive operation flowchart for explaining the operation of the facsimile apparatus in the transmission mode; FIG. 15 is a comprehensive operation flowchart for explaining the operation of the facsimile apparatus in the reception mode according to an embodiment of the present invention; FIG. An image data processing path diagram showing the flow of image data in a transmission mode of a facsimile device according to an embodiment of the present invention;
FIG. 17 is a time chart of each job A to H executed by the micro, processing, and unit section V in FIG. 7 in the transmission mode, and FIG. 18 (a) is the micro. Processing, document reading unit executed by unit V■
18(b) is a diagram of the phase excitation pattern of the pulse motor at that time, and FIG. 18(C) is the phase excitation actually output to the pulse motor at that time. Signal diagram, Figure 19 (a)
191i1(b) is a flowchart for transferring the image data read by the original reading section 1 from the image information input section to the information storage section (2) in the work performed by the micro, processing, and unit section V; 191i1(b) is the information storage section Part ■R
A RAM configuration diagram for explaining each area when the AM is divided according to the type of data stored therein,
20(a) and (b) are flowcharts for pre-processing the image data in the above work and transferring it to the information storage section 2.
Flowchart for extracting image data from the RBF area of M and obtaining the run length of "white", FIG. 22 (a
), (b) is a flowchart for drawing a table based on the "white" run length in job E, extracting a WRITE code, and transferring it to the FIFO area;
Figure 23 is a flowchart for obtaining the "black" run length in job E, and Figures 24 (a) and (b) are the BLACK codes by drawing a table based on the "black" run length in job E. Figure 25 is a flowchart for generating a synchronization code and transferring it to the FIFO area in job E. Figure 26 is a flowchart for sending and receiving coded image data from the FIFO area. FIG. 27 is a flowchart of job C to be transferred to section (2). FIG. 27 is a data processing path diagram showing the flow of image data in the receiving mode of the facsimile machine according to embodiments of the present invention. FIG. Figure 29 is a time chart of each job F to ■ that section V executes in the reception mode;
) is a flowchart for drawing a table based on the data imported from the FIFO area in work ■ to obtain a run length code, Figures 30(b) to (d) are configuration diagrams of the table, and Figure 31 is Figure 30. The flowchart of the subroutine FIFOREAD in (a), and FIG. 32 is the subroutine>RUN in FIG. 30(a).
FIG. 33 is a flowchart for storing the termination pixel data in the RBF area, and FIG. 34 is a flowchart for transferring the pixel data from the RBF area to the received image output unit m.

Claims (1)

【特許請求の範囲】[Claims] (1)、原稿を読み取りシリアル画素データを発生する
原稿読取部と、前記シリアル画素データをパラレル画素
データに変換する画情報入力部と、マイクロプロセッサ
、前記マイクロプロセッサが実行するデータ処理手順を
格納したリードオンリメモリ、データの入出力を行うラ
ンダムアクセスメモリ、タイミング信号発生部をそれぞ
れ含むマイクロコンピュータと、パラレル符号化データ
をシリアル符号化データに及びシリアル復号化データを
パラレル復号化データにそれぞれ変換する送受信情報入
出力部と、シリアル符号化データ及びシリアル復号化デ
ータを伝送フォーマットに適合させるモデムと、前記マ
イクロプロセッサからのパラレル画素データをシリアル
画素データに変換する受信画出力部と、前記シリアル画
素データを記録紙上に画情報として記録する受信画記録
部とからなり、前記マイクロプロセッサが前記データ処
理手順に基づいて行う処理は、少なくとも、前記タイミ
ング信号発生部が一定周期で発生する複数のタイミング
信号に応答して、送信時には、前記原稿読取部の副走査
処理と、前記ランダムアクセスメモリの第1のエリアに
蓄えられている符号化データを前記送受信情報入出力部
へ送出する処理と、画素データを前記画情報入力部から
前記ランダムアクセスメモリの第2のエリアに蓄える処
理と、前記ランダムアクセスメモリの第2のエリアに蓄
えられている画素データを符号化して前記ランダムアク
セスメモリの第1のエリアに蓄える処理とからなり、受
信時には、前記受信画記録部の副走査を行うとともに前
記ランダムアクセスメモリの第2のエリアに蓄えられて
いる復号化された画素データを前記受信画記録部に送出
する処理と、前記パラレル符号化データを前記ランダム
アクセスメモリの第1のエリアに蓄える処理と、前記ラ
ンダムアクセスメモリの第1のエリアに蓄えられている
符号化データを復号化して前記ランダムアクセスメモリ
の第2のエリアに蓄える処理とからなるように構成した
ことを特徴とするファクシミリ装置。
(1) a document reading section that reads a document and generates serial pixel data; an image information input section that converts the serial pixel data into parallel pixel data; a microprocessor; and a data processing procedure executed by the microprocessor. A microcomputer that includes a read-only memory, a random access memory that performs data input/output, and a timing signal generator, and a transmitter/receiver that converts parallel encoded data to serial encoded data and serial decoded data to parallel decoded data, respectively. an information input/output section, a modem that adapts serial encoded data and serial decoded data to a transmission format, a received image output section that converts parallel pixel data from the microprocessor into serial pixel data, and a received image output section that converts the serial pixel data into serial pixel data. and a received image recording section that records image information on recording paper, and the processing that the microprocessor performs based on the data processing procedure includes at least the timing signal generation section responding to a plurality of timing signals generated at regular intervals. At the time of transmission, the sub-scanning process of the document reading unit, the process of sending the encoded data stored in the first area of the random access memory to the transmission/reception information input/output unit, and the process of transmitting the pixel data to the A process of storing pixel data from an image information input unit in a second area of the random access memory, and encoding pixel data stored in the second area of the random access memory and storing it in a first area of the random access memory. At the time of reception, the received image recording section is sub-scanned and the decoded pixel data stored in the second area of the random access memory is sent to the received image recording section. , storing the parallel encoded data in a first area of the random access memory, and decoding the encoded data stored in the first area of the random access memory to store the parallel encoded data in a second area of the random access memory. A facsimile machine is characterized in that it is configured to include processing for storing information in an area.
JP2323045A 1990-11-28 1990-11-28 Fax machine Expired - Lifetime JPH0767132B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2323045A JPH0767132B2 (en) 1990-11-28 1990-11-28 Fax machine

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2323045A JPH0767132B2 (en) 1990-11-28 1990-11-28 Fax machine

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP8582679A Division JPS5610774A (en) 1979-07-09 1979-07-09 Facsimile device

Publications (2)

Publication Number Publication Date
JPH03293867A true JPH03293867A (en) 1991-12-25
JPH0767132B2 JPH0767132B2 (en) 1995-07-19

Family

ID=18150496

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2323045A Expired - Lifetime JPH0767132B2 (en) 1990-11-28 1990-11-28 Fax machine

Country Status (1)

Country Link
JP (1) JPH0767132B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0646180A (en) * 1992-07-08 1994-02-18 Matsushita Graphic Commun Syst Inc Picture communication equipment

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS53135218A (en) * 1977-04-30 1978-11-25 Canon Inc Facsimile equipment
JPS547817A (en) * 1977-06-21 1979-01-20 Canon Inc Fascimile unit

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS53135218A (en) * 1977-04-30 1978-11-25 Canon Inc Facsimile equipment
JPS547817A (en) * 1977-06-21 1979-01-20 Canon Inc Fascimile unit

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0646180A (en) * 1992-07-08 1994-02-18 Matsushita Graphic Commun Syst Inc Picture communication equipment

Also Published As

Publication number Publication date
JPH0767132B2 (en) 1995-07-19

Similar Documents

Publication Publication Date Title
JPS6346628B2 (en)
US5402248A (en) Image encoding apparatus and method
US5022088A (en) Image processing apparatus with provision for memory operation
US4571633A (en) High-speed facsimile machine capable of parallel processing
JPH04199981A (en) Prompt processing type one-dimensional coder
US4955061A (en) Method and apparatus for processing an image signal
JPH03293867A (en) Facsimile equipment
JPS6333350B2 (en)
JPS6314549B2 (en)
JPS6314545B2 (en)
JPH0145270B2 (en)
JP2689745B2 (en) Coded data transmission processing method
JPS6314550B2 (en)
JPS6314547B2 (en)
JPS6314546B2 (en)
JPS6314548B2 (en)
JPS6051065A (en) Picture signal processing system
JPS6351429B2 (en)
JP2637479B2 (en) Encoding device
JPH08307622A (en) Facsimile equipment
JPS6051059A (en) Picture processing method
JPS61256868A (en) Data processing system
JPS6231257A (en) Two-dimensional encoding device for picture signal
JPS62164317A (en) Coding system
JPS60100874A (en) Picture processor