図1に、本発明の1実施例のシリアルデータ通信装置を装備した複合機能フルカラーデジタル複写機の外観を示す。このフルカラー複写機は、大略で、自動原稿送り装置(ADF)30と、操作ボード20と、カラースキャナ10と、カラープリンタ100と、給紙バンク35の各ユニットで構成されている。ステープラ及び作像された用紙を積載可能なトレイ付きのフィニッシャ34と、両面ドライブユニット33と、大容量給紙トレイ36は、プリンタ100に装着されている。
機内の画像データ処理装置ACP(図2)には、パソコンPCが接続したLAN(Local Area Network)が接続されている。カラープリンタ100のプリント済の用紙は、排紙トレイ108上またはフィニッシャ34に排出される。
フィニッシャ34は、スタッカトレイすなわち積載降下トレイ34hsおよびソートトレイ群34stを持ち、積載降下トレイ34hsに用紙(プリント済紙,転写済紙)を排出するスタッカ排紙モードと、ソートトレイ群34stに排紙するソータ排紙モードを持つ。
プリンタ100からフィニッシャ34に送り込まれた用紙は、左上方向に搬送されそして上下逆U字型の搬送路を経て、下向きに搬送方向を切換えてから、設定されているモードに応じて、スタッカ排紙モードのときには排出口から積載降下トレイ34hsに排出される。ソータ排紙モードのときには、ソータトレイ群34stの、そのとき排出中の用紙が割り当てられたソータトレイに排出される。
ソータ排紙モードが指定されるとフィニッシャ内排紙コントローラは、最下部の重ね待避位置に置いたソートトレイ群34stを、図1上で2点鎖線で示す使用位置に上駆動し、ソータトレイ間の間隔を広げる。ソータ排紙モードでは、1回(一人)の設定枚数の複写又はプリントは、部ソートにソータ排紙モードが設定されているときには、同一原稿(画像)をプリントした各転写紙をソートトレイ群34stの各トレイに仕分け収納する。頁ソートにソータ排紙モードが設定されているときには、各トレイを各頁(画像)に割り当てて、同一頁をプリントした各転写紙を1つのソートトレイに積載する。
図2に、図1に示す複写機の画像処理系統のシステム構成を示す。このシステムでは、読取ユニット,センサボードユニットと画像データ出力I/F(Interface:インターフェイス)でなるカラー原稿スキャナ10が、画像データ処理装置ACPの画像データインターフェース制御CDIC(以下単にCDICと表記)に接続されている。画像データ処理装置ACPにはまた、カラープリンタ100が接続されている。カラープリンタ100は、画像データ処理装置ACPの画像データ処理器IPP(Image Processing Processor;以下では単にIPPと記述)から、書込みI/F134に記録画像データを受けて、作像ユニット135でプリントアウトする。
画像データ処理装置ACP(以下では単にACPと記述)は、パラレルバスPb,メモリアクセス制御IMAC(以下では単にIMACと記述),画像メモリであるメモリモジュール(以下では単にMEMと記述),不揮発メモリであるハードディスク装置HDD(以下では単にHDDと記述),システムコントローラ1,RAM4,不揮発メモリ5,フォントROM6,CDIC,IPP等、を備える。パラレルバスPbには、ファクシミリ制御ユニットFCU(以下単にFCUと記述)を接続している。操作ボード20はシステムコントローラ1に接続している。
カラー原稿スキャナ10の、原稿を光学的に読み取る読取ユニットは、原稿に対するランプ照射の反射光を、センサボードユニット(以下では単にSBUと表記)上の、イメージセンサで光電変換してR,G,B画像信号を生成し、A/DコンバータでRGB画像データに変換し、そしてシェーディング補正して、出力I/F12を介してCDICに送出する。
CDICは、画像データに関し、原稿スキャナ10,パラレルバスPb,IPP間のデータ転送、ならびに、プロセスコントローラ131とACPの全体制御を司るシステムコントローラ1との間の通信をおこなう。また、RAM132はプロセスコントローラ131のワークエリアとして使用され、ROM133はプロセスコントローラ131の動作プログラム等を記憶している。
メモリアクセス制御IMAC(以下では単にIMACと記述)は、MEMおよびHDDに対する画像データおよび制御データの書き込み/読み出しを制御する。システムコントローラ1は、パラレルバスPbに接続される各構成部の動作を制御する。また、RAM4はシステムコントローラ1のワークエリアとして使用され、不揮発メモリ5はシステムコントローラ1の動作プログラム等を記憶している。
操作ボード20は、ACPが行うべき処理を指示する。たとえば、処理の種類(複写,ファクシミリ送信が像読込,プリント等)および処理の枚数等を入力する。これにより、画像データ制御情報の入力をおこなうことができる。
スキャナ10の読取ユニットより読み取った画像データは、スキャナ10のSBUでシェーディング補正を施してから、IPPで、スキャナガンマ補正,フィルタ処理などの、読取り歪を補正する画像処理を施してから、MEM又はHDDに蓄積する。MEM又はHDDの画像データをプリントアウトするときには、IPPにおいてRGB信号をYMCK信号に色変換し、プリンタガンマ変換,階調変換,および、ディザ処理もしくは誤差拡散処理などの階調処理などの画質処理をおこなう。画質処理後の画像データはIPPから書込みI/F134に転送される。書込みI/F134は、階調処理された信号に対し、パルス幅とパワー変調によりレーザー制御をおこなう。その後、画像データは作像ユニット135へ送られ、作像ユニット135が転写紙上に再生画像を形成する。
IMACは、システムコントローラ1の制御に基づいて、画像データとMEM又はHDDのアクセス制御,LAN上に接続したパソコンPC(以下では単にPCと表記)のプリント用データの展開,MEMおよびHDDの有効活用のための画像データの圧縮/伸張をおこなう。
IMACへ送られた画像データは、データ圧縮後、MEM又はHDDに蓄積され、蓄積された画像データは必要に応じて読み出される。読み出された画像データは、伸張され、本来の画像データに戻しIMACからパラレルバスPbを経由してCDICへ戻される。CDICからIPPへの転送後は画質処理をして書込みI/F134に出力し、作像ユニット135において転写紙上に再生画像を形成する。
画像データの流れにおいて、パラレルバスPbおよびCDICでのバス制御により、デジタル複合機の機能を実現する。ファクシミリ送信は、読取られた画像データをIPPにて画像処理を実施し、CDICおよびパラレルバスPbを経由してFCUへ転送することによりおこなわれる。FCUは、通信網へのデータ変換をおこない、それを公衆回線PNへファクシミリデータとして送信する。ファクシミリ受信は、公衆回線PNからの回線データをFCUにて画像データへ変換し、パラレルバスPbおよびCDICを経由してIPPへ転送することによりおこなわれる。この場合、特別な画質処理はおこなわず、書込みI/F134から出力し、作像ユニット135において転写紙上に再生画像を形成する。
複数ジョブ、たとえば、コピー機能,ファクシミリ送受信機能,プリンタ出力機能が並行に動作する状況において、読取ユニット11,作像ユニット135およびパラレルバスPbの使用権のジョブへの割り振りは、システムコントローラ1およびプロセスコントローラ131において制御する。プロセスコントローラ131は画像データの流れを制御し、システムコントローラ1はシステム全体を制御し、各リソースの起動を管理する。また、デジタル複合機の機能選択は、操作ボード20においておこなわれ、操作ボード20の選択入力によって、コピー機能,ファクシミリ機能等の処理内容を設定する。
システムコントローラ1とプロセスコントローラ131は、パラレルバスPb,CDICおよびシリアルバスSbを介して相互に通信をおこなう。具体的には、CDIC内においてパラレルバスPbとシリアルバスSbとのデータ通信,インターフェースのためのデータフォーマット変換をおこなうことにより、システムコントローラ1とプロセスコントローラ131間の通信を行う。
各種バスインターフェース、たとえばパラレルバスI/F 7、シリアルバスI/F 9、ローカルバスI/F 3およびネットワークI/F 8は、IMACに接続されている。コントローラーユニット1は、ACP全体の中での独立性を保つために、複数種類のバス経由で関連ユニットと接続する。
システムコントローラ1は、パラレルバスPbを介して他の機能ユニットの制御をおこなう。また、パラレルバスPbは画像データの転送に供される。システムコントローラ1は、IMACに対して、画像データをMEM,HDDに蓄積させるための動作制御指令を発する。この動作制御指令は、IMAC,パラレルバスI/F 7、パラレルバスPbを経由して送られる。
この動作制御指令に応答して、画像データはCDICからパラレルバスPbおよびパラレルバスI/F 7を介してIMACに送られる。そして、画像データはIMACの制御によりMEM又はHDDに格納されることになる。
一方、ACPのシステムコントローラ1は、PCからのプリンタ機能としての呼び出しの場合、プリンタコントローラとネットワーク制御およびシリアルバス制御として機能する。広域通信網(ネットワーク)経由の場合、IMACはネットワークI/F 8を介して、ネットワーク経由のプリント出力要求データあるいは蓄積(保存)要求データを受け取る。ネットワーク経由の要求データ(外来コマンド)はシステムコントローラ1に報知し、それに応答するシステムコントローラ1からのコマンドに従って、IMACは、ネットワーク経由の蓄積データの転送又は受信蓄積を行う。
汎用的なシリアルバス接続の場合、IMACはシリアルバスI/F 9経由でプリント出力要求データを受け取る。汎用のシリアルバスI/F 9は複数種類の規格に対応しており、たとえばUSB(Universal Serial Bus)、1284または1394等の規格のインターフェースに対応する。
PCからのプリント出力要求データはシステムコントローラ1により画像データに展開される。その展開先はMEM内のエリアである。展開に必要なフォントデータは、ローカルバスI/F 3およびローカルバスRb経由でフォントROM6を参照することにより得られる。ローカルバスRbは、このコントローラ1を不揮発メモリ5およびRAM4と接続する。
システムコントローラ1と、MEM,HDDおよび各種バスとのデータ送受信は、IMACを経由しておこなわれる。MEMおよびHDDを使用するジョブはACP全体の中で一元管理される。
プロセスコントローラ131は、カラープリンタ100の作像プロセス制御を主体に、原稿スキャナ10,CDIC,給紙バンク35,給紙トレイ36およびフィニッシャ34の動作設定を行い、原稿読取りおよび複写の制御をも行う。マスタであるプロセスコントローラ131に接続された同期シリアルバスSbには、スレーブとして原稿スキャナ10,CDIC,給紙バンク35,給紙トレイ36およびフィニッシャ34、ならびに、スレーブデータ制御デバイス140が接続されており、プロセスコントローラ131は同期シリアルバスSbを介して各スレーブに設定コマンド,設定データあるいは制御データをシリアル送信し、また、各スレーブの状態データを受信する。
図3に、図2に示す、上記同期シリアルバスSb,マスタであるプロセスコントローラ131,各スレーブである原稿スキャナ10,CDIC,給紙バンク35,給紙トレイ36フィニッシャ34およびスレーブデータ制御デバイス140、の組合せであるシリアルデータ通信装置の一部を、やや詳細に示す。
同期シリアルバスSbには、マスタ131が、シフトクロックSYCLK,データ有効期間信号XSYCSおよび送信データSYDIを送り出す。同期シリアルバスSbには、スレーブ0(スレーブデータ制御デバイス140),スレーブ1(CDIC),2(スキャナ10),3(給紙バンク35),4(給紙トレイ)および5(フィニッシャ34)が接続されている。これらのスレーブ0〜5にはそれぞれアドレス空間が割り当てられている。
図4に、マスタ131の、同期シリアルバスSbとのインターフェースであるマスタIF制御部40の構成を示す。マスタ131が、パラレル入力/シリアル出力(P/S)のシフトレジスタである出力レジスタSR1に、送信データをセット(パラレル入力)してスタート信号によりフリップフロップFF1をセットすると、クロックCLKがアンドゲートAN1から出力され、インバータIN1で反転されてシフトクロックSYCLKとして同期シリアルバスSbのシフトクロック信号線に送出される。
フリップフロップFF1のQ出力は、インバータIN1で反転されて有効期間信号XSYCSとして、同期シリアルバスSbのデータ信号線の1つである制御データ信号線に送出される。ラッチ(レジスタ)LA1には、送信データフレーム(SYDI:図5−1)の先頭のW(書込み)/R(読出し)指示ビットから、その次のアドレス13ビット,その次のダミー(Dummy)1ビット,その次の送信データ16ビットおよびその次のパリティチエック用の1ビット(以下ではパリティビットという)まで、合計32ビットのデータのビット数相当のフレームデータビット数データが格納されており、フリップフロップFF1のセット(Q出力のHへの立上り)に応答して、カウンタCN1がラッチLA1のフレームデータビット数を自身にロードして、その値からのクロックCLKの到来数のカウントダウンを開始し、フレームデータビット数分のクロックCLKをカウントすると、カウントオーバ信号Hを発生してフリップフロップFF1をリセットする。これにより有効期間信号XSYCSが低レベルLからHに戻り、シフトクロックSYCLKの出力が止まる。
アンドゲートAN1が出力するクロックによって出力レジスタSR1がシリアルシフト駆動されて、出力レジスタSR1にあったデータフレーム各ビットが順次に、同期シリアルバスSbのシリアルデータ信号線に出力される。これが送信データSYDIである。
図5−1に、図4に示すマスタIF制御部40の、1フレームの送受信データを示す。SYCLKはSYDIデータ取り込み時のシフトクロックであり、SYCLKにより、出力レジスタSR1にパラレル入力した送信データが、シリアルシフト出力される。XSYCSはSYCLK,SYDIの有効期間を現す信号(Lが有効期間を表す)である。受信側(スレーブ)では、XSYCS=“L”期間のみデータSYDIを取り込む。データSYDIのフレーム中の、先頭ビットはR/W指示ビット、次の13ビットはアドレスデータ、次の1ビットはダミー、次の16ビットが送信データ、最後の1ビットがデータSYDIのパリティビットである。パリテイビットは、SYCLK=0〜30のタイミングのデータ全てをEx_or(排他的論理和)した結果を表し、奇数パリテイとなっている。
SYDOは、データSYDIに応答する、スレーブからの送信(返信)データである。
図5−2には、マスタがスレーブにデータ(例えばコマンドデータ)を与える(ライト:書込み)時の、マスタIF制御部40の入出力信号を示す。ライト動作時のスレーブからの返信SYDOは“1”固定となる。これはアクノレッジデータである。なお、SYDOは、正常時の出力データ有効期間外で“1”固定であり、スレーブ動作不可又は通信エラーのときは“0”(エラー表示)となる。
図5−3には、マスタがスレーブにデータ(例えば状態データ)を要求する(リード:読出し)時の、マスタIF制御部40の入出力信号を示す。マスタからのSYDIのSYCLK=13〜30のタイミングのデータは“0”固定となる。スレーブが送出するデータSYDOが、マスタが要求した、スレーブ側データとなる。このスレーブ側データSYDOが、マスタデータフレームのダミービットからデータ16ビットの送信中に、返信データラインに同期送出される点に注目されたい。
図4を再度参照する。マスタIF制御部40のラッチLA2には、マスタデータフレーム(SYDI)のR/W指示ビットからダミービットまでのビット数を表わすデータが格納されており、フレームデータ有効期間になったときにカウンタCN2がラッチLA2のデータを自身にロードして、その値からのシフトクロックSYCLKの到来数のカウントダウンを開始し、ラッチLA2のデータ分のシフトクロックSYCLKをカウントすると、カウントオーバ信号Hを発生してフリップフロップFF2をセットする。これによりアンドゲートAN3がオンして、シフトクロックSYCLKが、シリアル入力/パラレル出力の入力レジスタSR2に与えられ、入力レジスタSR2をシフト駆動する。これにより、スレーブ側データSYDOが入力レジスタSR2に取り込まれる。有効期間が経過すると、シフトクロックSYCLKが止まりXSYCSがHに戻る。これにより、フリップフロップFF2がリセットされ、入力レジスタSR2のシフト駆動が停止する。入力レジスタSR2は、次に新たなデータSYDOがシリアル入力されるまで、先に入力したデータSYDOを保持しており、マスタ121は、そのデータSYDOをパラレルに読み出して、使用又は参照することができる。
図6に、スレーブ1の、同期シリアルバスSbとのインターフェースであるスレーブIF制御部41の構成を示す。なお、他のスレーブ0,2〜5にも、スレーブIF制御部41と同様なものが備わっている。図6を参照すると、ラッチ(レジスタ)LA3には、スレーブ1に割り当てられたアドレス空間の先頭アドレスデータが格納されており、宛先判定DT1に先頭アドレスデータが与えられている。同期シリアルバスSbの有効期間信号線(XSYCS)がH(無効期間)レベルからL(有効期間)レベルに切り換わると、アンドゲートAN4,AN5がオンして、シリアル入力/パラレル出力の入力レジスタSR3への、マスタ送信データSYDIのシリアル入力が始まる。
ラッチLA4には、マスタデータフレームのR/W指示ビットからアドレス13ビットの最後までのビット数を表わすデータが格納されており、フレームデータ有効期間になったときにカウンタCN3がラッチLA4のデータを自身にロードして、その値からのシフトクロックSYCLKの到来数のカウントダウンを開始し、ラッチLA4のデータ分のシフトクロックSYCLKをカウントすると、カウントオーバ信号Hを発生する。このとき入力レジスタSR3にシリアル入力されたアドレスデータが、ラッチLA3が与えているアドレスデータと合致しているかを、具体的には、スレーブ内のデータ読み書きアドレス桁より上位桁の、スレーブ個別に割り当てられている上位桁ビットが合致しているかを、宛先判定DT1が判定し、合致していると、自己宛て送信であることを表わすHを出力しアンドゲートAN7をオンする。これによりカウンタCN3のカウントオーバ信号がアンドゲートAN7を通ってフリップフロップFF3をセットし、そのQ出力がLからHに反転する。このQ出力Hが、自己スレーブ宛ての送信であることを示す。
その後、入力レジスタSR3への、SYDIのデータフレームの全てのデータのシリアル入力が完了したタイミングでXSYCSがHに戻り、これによりアンドゲートAN4,AN5がオフになって、入力レジスタSR3のシリアルデータシフトが停止する。
一方、カウンタCN3がカウントオーバ信号を発生した時から、すなわちSYDIのアドレスデータのシリアル入力が完了したタイミングで、フリップフロップFF3のQ出力H(自己宛て送信データの受信であることを示す)でアンドゲートAN6がオンすることにより、シフトクロックSYCLKが、パラレル入力/シリアル出力のシフトレジスタである出力レジスタSR4に与えられ、出力レジスタSR4のデータが、返信信号線であるスレーブ信号線(SYDO1)にシリアル出力される。この出力(SYDO1)は、図3に示すスレーブデータ制御デバイス140のSYDO SEL部(データセレクタ)142およびエラー制御部144を通って、更に、スタ131に接続したスレーブ側データ信号線(SYDO)を通って、マスタIF制御部40の入力レジスタSR2に入力される。
図6を再度参照する。フリップフロップFF3のQ出力が、自己スレーブ宛ての送信であることを示すHに切換わるとスレーブ1は、マスタからのデータ送信があることを表わす制御情報を生成して内部レジスタに保持する。しかも、SYDIのR/W指示ビットがR(リード)であるとアドレスデータで指定されるレジスタ(メモリ領域又はラッチ)のデータを出力レジスタSR4にパラレル入力し、返信データSYDO1としてシリアル送出する。SYDIのR/W指示ビットがW(ライト)であると、データ受信(データフレームのシリアル入力)が完了するのを待って、入力レジスタSR3のSYDIのアドレスデータで指定されるレジスタに、入力レジスタSR3のSYDIのダミービットdummyの次からパリティビットPの前までのデータを書込む。
他のスレーブ2〜5のスレーブIF制御部も、同様に動作して、自己宛てのデータを受信すると、それぞれのスレーブ信号線(SYDO2〜5)に返信データを出力する。これらの返信データも、図3に示すスレーブデータ制御デバイス140のSYDO SEL部(データセレクタ)142およびエラー制御部144を通って、更にマスタ131に接続したスレーブ側データ信号線(SYDO)を通って、マスタIF制御部40の入力レジスタSR2に入力される。
図3を再度参照する。スレーブデータ制御デバイス140(スレーブ0)には、マスタデータ監視部141がある。これは、上述のスレーブIF制御部41のシリアルデータ受信/送信機能を備え、しかも、同期シリアルバスSbにマスタ131がシリアル送出しているデータフレーム(SYDI)がいずれのスレーブ(0〜5)宛てのものか判定し、マスタ131に接続したスレーブ側データ信号線(SYDO)に接続するスレーブ信号線(SYDO0〜5)を、宛先スレーブのものに指定する、スレーブ側データ選択信号SYDO SELを発生してSYDO SEL部(データセレクタ)142に与え、更に通信エラーチエックを行う。スレーブデータ制御デバイス140には更に、マスタ131に対してスレーブ0〜5群の動作可否報知を行うパワーオン制御部143、および、返信データにパリティチェック用のパリティビットを付加するエラー制御部144もある。
図7に、マスタデータ監視部141の機能構成を示す。ラッチ(レジスタ)LA5には、スレーブデータ制御デバイス140(スレーブ0)に割り当てられたアドレス空間の先頭アドレスデータが格納されており、宛先判定DT2に先頭アドレスデータを与えている。同期シリアルバスSbの有効期間信号線(XSYCS)がH(無効期間)レベルからL(有効期間)レベルに切り換わると、アンドゲートAN8,AN9がオンして、シリアル入力/パラレル出力の入力レジスタSR5への、マスタ送信データSYDIのシリアル入力が始まる。
ラッチLA7には、マスタデータフレーム(SYDI)のR/W指示ビットからアドレス13ビットの最後までのビット数を表わすデータが格納されており、フレームデータ有効期間になったときにカウンタCN4がラッチLA6のデータを自身にロードして、その値からのシフトクロックSYCLKの到来数のカウントダウンを開始し、ラッチLA6のデータ分のシフトクロックSYCLKをカウントすると、カウントオーバ信号Hを発生する。このカウントオーバ信号Hはアドレスデータの取り込みの完了を意味し、このカウントオーバ信号Hによって、アドレスデータがラッチLA7に格納(保持)される。ラッチLA7に格納したアドレスデータが、ラッチLA5が与えているアドレスデータと合致していると、自己宛て送信であることを表わすHを、宛先判定DT2が出力しアンドゲートAN11をオンする。これによりカウンタCN4のカウントオーバ信号がアンドゲートAN11を通ってフリップフロップFF4をセットし、そのQ出力がLからHに反転する。このQ出力Hが、自己スレーブ宛ての送信であることを示す。
一方、ラッチLA7に格納したアドレスデータは、エンコーダEN1が、LA7の受信アドレスデータが指定するスレーブ(0〜5)のスレーブ信号線(SYDO0〜5)の、スレーブ側データ信号線(SYDO)への接続を指定する、スレーブ側データ選択信号SYDO SELに変換する。この選択信号SYDO SELが、SYDO SEL部(データセレクタ)142に与えられる。この選択信号SYDO SELに応答して、SYDO SEL部(142)が、LA7の受信アドレスデータが指定するスレーブ(0〜5)のスレーブ信号線(SYDO0〜5)を、マスタに接続したスレーブ側データ信号線(SYDO)に接続する。これにより、ラッチLA7の受信アドレスデータが指定するスレーブ(0〜5)の返信データ(SYDO0〜5)のみが、マスタ131にシリアル送信されることになる。
その後、入力レジスタSR5への、SYDIのデータフレームの全てのデータのシリアル入力が完了したタイミングでXSYCSがHに戻り、これによりアンドゲートAN8,AN9がオフになって、入力レジスタSR5のシリアルデータシフトが停止する。
一方、カウンタCN4がカウントオーバ信号Hを発生した時から、すなわちSYDIのアドレスデータのシリアル入力が完了したタイミングで、フリップフロップFF4のQ出力HでアンドゲートAN10がオンすることにより、シフトクロックSYCLKが、パラレル入力/シリアル出力のシフトレジスタである出力レジスタSR6に与えられ、出力レジスタSR6のデータが、返信信号線であるスレーブ信号線(SYDO0)にシリアル出力される。この出力(SYDO0)は、SYDO SEL部142およびエラー制御部144を通って、さらにスレーブ側データ信号線(SYDO)を通って、マスタIF制御部40の入力レジスタSR2に入力される。
マスタ131の1フレームデータSYDIの受信の間、パリティチェックPC1が、シフトクロックSYCLKの到来数,SYDIの中のHビットの数およびLビットの数をカウントし、最後のパリティビットPを参照して受信データフレームSYDIのデータエラーチェツクを行い、これらのカウントデータおよびパリティビットPをラッチLA8に格納する。そして、データエラーを検出すると、エラー報知信号Ser Err ON/OFFを、エラーありを表わすHとする。エラーを検出しないときは該信号をLに留める。エラー報知信号Ser Err ON/OFFは、エラー制御部144(図8)のアンドゲートAN12に印加される。アンドゲートAN12には有効期間信号XSYCS(無効期間でH)が印加されるので、エラーがあったときには、エラーがあったフレームの次のデータ無効期間にアンドゲートAN12の出力がLからHに切換り、これによりアンドゲートAN13が閉じられて、その出力がLとなり、マスタ131への返信データ信号線(SYDO)が、Lとなる(図9−2)。エラー報知信号Ser Err ON/OFFがエラーなしレベルLであるときには、無効期間の間アンドゲートAN13の出力がHであって、マスタ131への返信データ信号線(SYDO)は、Hである(図9−1)。マスタ131は、データ無効期間の返信データ信号線(SYDO)のレベルを送信エラー検出情報として取り込む。
図7を再度参照する。フリップフロップFF4のQ出力が、自己スレーブ0宛ての送信であることを示すHに切換わると出力コントローラCR1は、マスタ131からのデータ送信があることを表わす制御情報を生成して内部レジスタにする。しかも、SYDIのR/W指示ビットがR(リード)であるとアドレスデータで指定されるレジスタ(メモリ領域又はラッチ)のデータを出力レジスタSR6にパラレル入力し、返信データSYDO0としてシリアル送出する。SYDIのR/W指示ビットがR(リード)であって、SYDIのアドレスデータがパリティチエックPC1で生成したデータを読み込んだレジスタ(LA8又は内部レジスタ)のものであると、そのデータを読み出して出力レジスタSR6にパラレル入力する。このデータが返信データSYDO0としてマスタ131に送信される。
SYDIのR/W指示ビットがW(ライト)であると、データ受信(データフレームのシリアル入力)が完了するのを待って、入力レジスタSR5のSYDIのアドレスデータで指定されるレジスタに、入力レジスタSR5のSYDIのダミービットdummyの次からパリティビットPの前までのデータを書込む。
マスタ131は、データ無効期間の返信データ信号線(SYDO)のレベルが通信エラーを示すLになったとき、スレーブ0のラッチLA8をアドレスとするリード指示のデータフレームを同期シリアルバスに送出することにより、ラッチLA8のデータを返信データとして得て、通信エラーがクロック数エラー又はパリテイエラーなのかを検出可能である。また、データ無効期間にSYDOがエラー表示レベルで無い場合でも、データフレームのシリアル通信終了後に、スレーブ0のラッチLA8をアドレスとするリード指示のデータフレームを同期シリアルバスに送出することにより、ラッチLA8のデータを返信データとして得て、エラーの発生自体を検出(判定)することが可能である。
スレーブデータ制御デバイス140に動作電圧が加わると、すなわち電源オンになると、図7に示す電源オンリセット回路PR1がリセット信号を発生し、これがオアゲートOR1を通してフリップフロップFF5をリセットする。これにより、フリップフロップFF5のQ出力であるPon ON/OFF信号が、動作不可を表わすLとなる。このPon ON/OFF信号は、パワーオン制御部143(図8)に与えられる。図7に示す出力コントローラCR1は、電源オンリセット回路PR1がリセット信号に応答して自身の初期化を行い、そしてマスタデータ監視部141内の各部要素も初期化する。これを終えると出力コントローラCR1は、セット信号をフリップフロップFF5に与えて、それをセットする。これによりフリップフロップFF5のQ出力であるPon ON/OFF信号が、動作可(レディ)を表わすHとなる。出力コントローラCR1は、シリアル送信のデータフレーム(SYDI)によるマスタからのリセット,セット指示に応答して(リセット,セットコマンドデータを解読:デコーディングして)、リセット,セット信号をフリップフロップFF5に与える。また、出力コントローラCR1自身の状態監視にしたがって、出力コントローラCR1自身がその制御動作の中で、自発でリセット,セット信号をフリップフロップFF5に出力することもある。いずれにしても、電源オンリセット回路PR1が発生するリセット信号および出力コントローラCR1が発生するリセット信号は、リセット信号Iresとしてパワーオン制御部143(図8)のフリップフロップFF6のリセット入力端Rに印加される。
図8に、図3に示すパワーオン制御部143およびエラー制御部144の機能構成を示す。パワーオン制御部143のアンドゲートAN11には、Pon ON/OFF信号(スレーブデータ制御デバイス140が動作可:H/動作不可:L)ならびに全スレーブ0〜5のスレーブ信号線(SYDO0〜5)の信号レベル(H:動作可/L:動作不可)が印加される。アンドゲートAN11のこれらの入力が全てH(動作可)になったときにアンドゲートAN11の出力がLからHに立上り、この立上りに応答してフリップフロップFF6がリセット状態からセット状態に切換り、そのQ出力がHになる。このQ出力は、Pon Err ON/OFF信号であり、同期シリアルバスに接続した全スレーブ0〜5が全て動作可のときにH(全スレーブレディ)となり、何れかのスレーブが動作不可のときはLとなる。このPon Err ON/OFF信号は、エラー制御部144のアンドゲートAN14に与えられる。同期シリアルバスSbにデータ通信がない間は、オアゲートOR2の出力がHであるので、Pon Err ON/OFF信号がH(全スレーブレディ)であるときには、アンドゲートAN14の出力がHであり、スレーブ側データ信号線(SYDO)の信号レベル(電位)がHであり、マスタ131は、このHを、全スレーブが動作可(全スレーブレディ)と解釈(エンコーディング)する。
エラー制御部144のパリティビット付加器PB1は、同期シリアルバスSbにフレームデータ(SYDI)が送出されているとき、マスタデータ監視部141のカウンタCN4のカウントオーバ信号Aenに応答して、該信号Aenに同期して送出が開始される返信データSYDOs(SYDO0〜5の中の、SYDO SEL部142が選択出力するもの:マスタ131に送信するもの)のパリティビット生成プロセスを開始する。すなわち、シフトクロックSYCLKのカウント,返信データSYDOsのHビットのカウント,Lビットのカウントを開始し、シフトクロックSYCLKのカウント値が16になると、そこで全てのカウントを停止してパリティビットPのレベルをそこで固定し、アンドゲートAN13およびAN15へのパリティビット挿入信号をLからHに切り換えて、パリティビットPのレベルをアンドゲートAN15に出力し、次にシフトクロックSYCLKが到来すると、アンドゲートAN13およびAN15へのパリティビット挿入信号をHに戻し、パリティビットPのレベルをLにしてアンドゲートAN15の出力をLにする。これにより、16ビットの返信データ(図5−3のSYDOのデータ16bit)の最後に続けて1ビットのパリティビットPが加わった17ビットの返信データSYDOが、スレーブ側データ信号線(SYDO)にシリアル送出される。マスタ131は、このパリティビットPを参照して、返信データSYDOの通信エラーをチェックする。
上述のスレーブ側データ信号線(SYDO)の信号レベルは、何れかのスレーブのリセット(動作不可)期間は“L”となる。全スレーブのセット(動作可)期間では、返信データ(SYDO)の送信中を除く期間で、マスタ送信データSYDIの通信エラー非検出の間は“H”固定になる。マスタ送信データSYDIの通信エラーを検出すると、データ無効期間(XSYCS=H)に“L”になる。図9−1が正常動作時のSYDO出力であり、図9−2が先行のSYDIシリアル送信でエラーが発生した場合のSYDOのレベルを示している。
パリティチェックPC1,パリティビット付加PB1およびパワーオン制御部143を、スレーブ0であるスレーブデータ制御デバイス140のみに実装し、他のスレーブ1〜5では省略することにより、同期シリアルバスPb上の通信エラーの検出およびスレーブのエラー(動作不可)の通知が可能であり、スレーブ1〜5の回路構成又は機能を簡略化することが可能である。
図10に、マスタ131の、それに主電源(作像制御を可能にする動作電圧)が印加されてマスタ131が自身を初期化した直後のシステム初期化の概要を示す。なお、この主電源の印加と同時に、スレーブ0〜5にも動作電圧が印加され、各スレーブ(のコントローラ)も、この電源オンに応答して自身を初期化し、そしてその直後にスレーブIF制御部(41)を初期化する。この初期化により、スレーブに故障がないと、スレーブIF制御部の出力レジスタ(SR4)には全ビット“H”(すなわち“1”)のデータがセットされ、出力ライン(SYDO0〜5)の信号レベルは“H”(動作可)となる。スレーブ0であるスレーブデータ制御デバイス140のマスタデータ監視部141の出力コントローラCR1は、このような初期化を正常に終了すると、セット信号をフリップフロップFF5に出力し、これによりフリップフロップFF5がセットされてそのQ出力であるPon ON/OFF信号が、動作可を表わす“H”となる。
マスタ131は、主電源が印加されると、マスタ131の内部および入出力ポートを待機時の信号レベルに設定して、待機時間タイマをスターとしてタイマのタイムオーバを待つ(ステップs1,s2)。以下においては、カッコ内には、ステップという語を省略して、ステップ記号のみを記す。待機時間タイマがタイムオーバするとマスタ131は、スレーブ側データ信号線(SYDO)の信号レベルを参照し、それがH(全スレーブ動作可:レディ)であると、正常動作状態であることから、Pon_ON/OFF信号=”L“とする(s5)。これは、リセットコマンドデータをデータフレームSYDIを用いてスレーブ0(スレーブデータ制御デバイス140)に送信することにより行う。このリセットコマンドデータを受信するとスレーブ0の出力コントローラCR1がリセット信号をフリップフロップFF5に出力してリセットするので、Pon_ON/OFF信号が”L“に切換わる。次にマスタ131は、各スレーブの初期設定を行い(s6)、それが終わると、Pon_ON/OFF信号=”H“とする(s7)。これは、セットコマンドデータをデータフレームSYDIを用いてスレーブ0(スレーブデータ制御デバイス140)に送信することにより行う。このセットコマンドデータを受信するとスレーブ0の出力コントローラCR1がセット信号をフリップフロップFF5に出力してセットするので、Pon_ON/OFF信号が”H“に切換わる。
なお、ステップs3で、SYDOレベルが “L”であった場合は、エラー処理動作を実行する(s4)。この時、時間をあけて複数回SYDO=“H”になるかをポーリングしても良い。エラー処理(s4)としては、出力コントローラCR1の状態入力ポートIponをアドレスデータで指定し、そのR(リード)を指示する状態送信コマンドをデータフレームSYDIを用いてスレーブ0(スレーブデータ制御デバイス140)に送信することにより、全スレーブ0〜5のスレーブ信号線(SYDO0〜5)およびスレーブ0のPon ON/OFF信号のレベルをマスタ131に読み込み、異常動作(動作不可)スレーブを特定し、操作ボードに異常メッセージ表示後に、シリアル通信システムを停止する。