(57)【要約】【課題】次の制御部へのパケットの転送時間が短縮される。【解決手段】画像形成装置１０は、画像を形成する画像形成部３２０等の機器群３００と、画像形成部３２０における画像の形成を制御する、マスタ制御部１００および複数のスレーブ制御部２００とを備え、複数のスレーブ制御部２００は、シリアル通信回線を介して直列に接続され、先頭のスレーブ制御部２１０はシリアル通信回線を介してマスタ制御部１００に接続されている。そして、各スレーブ制御部２００は、マスタ制御部１００にて生成されたパケットを取得すると、パケットの一部をシリアル信号からパラレル信号に変換し、パケットが自身宛てのものであればパケットを自身宛てのものとして受け付ける処理を行い、パケットが自身宛てのものでなければ、パケットを破棄、またはシリアル通信回線を介して接続された後段のスレーブ制御部２００へ転送する。【選択図】図１
2016096493.tif 000002
【特許請求の範囲】
【請求項１】
パケットを生成するマスタ制御部と、
前記マスタ制御部にて生成されたパケットを受け付ける複数のスレーブ制御部とを備え、
複数の前記スレーブ制御部は、シリアル通信回線を介して直列に接続され、複数の当該スレーブ制御部のうち先頭のスレーブ制御部はシリアル通信回線を介して前記マスタ制御部に接続されており、各スレーブ制御部は、当該マスタ制御部にて生成されたパケットを取得すると、当該パケットの一部をシリアル信号からパラレル信号に変換し、当該パケットが自身宛てのものでなければ、当該パケットを破棄、またはシリアル通信回線を介して接続された後段のスレーブ制御部へ転送すること
を特徴とする通信システム。
【請求項２】
前記スレーブ制御部は、前記マスタ制御部に接続された先頭のスレーブ制御部から最後のスレーブ制御部へ向けて順番に大きくなるように付与された識別情報を有し、
前記パケットの一部には、当該パケットの宛先となる前記スレーブ制御部を示す前記識別情報が含まれること
を特徴とする請求項１に記載の通信システム。
【請求項３】
前記スレーブ制御部は、取得したパケットに含まれる前記識別情報が自身に付与された当該識別情報より小さい場合、当該パケットを破棄して前記マスタ制御部宛てに応答を返し、取得したパケットに含まれる当該識別情報が自身に付与された当該識別情報より大きい場合、後段のスレーブ制御部へ当該パケットを転送すること
を特徴とする請求項２に記載の通信システム。
【請求項４】
前記スレーブ制御部は、取得したパケットに含まれる前記識別情報が最後のスレーブ制御部に付与された当該識別情報より大きい場合、当該パケットを後段のスレーブ制御部へ転送せずに破棄して、前記マスタ制御部宛てに応答を返すこと
を特徴とする請求項２または３に記載の通信システム。
【請求項５】
前記マスタ制御部は、生成したパケットに対する誤り判定情報を当該パケットに付加し、
前記スレーブ制御部は、取得したパケットに含まれる前記識別情報が自身に付与された当該識別情報と同じ場合、当該パケットに対する誤り判定情報を生成し、生成した誤り判定情報と当該パケットに付加されていた誤り判定情報とが同じであれば当該パケットを自身宛てのものとして受け付ける処理を行い、生成した誤り判定情報と当該パケットに付加されていた誤り判定情報とが異なれば当該パケットを破棄して前記マスタ制御部宛てに応答を返すこと
を特徴とする請求項２乃至４のいずれか１項に記載の通信システム。
【請求項６】
画像を形成する画像形成部と、
前記画像形成部における画像の形成を制御する、マスタ制御部および当該マスタ制御部にて生成されたパケットを受け付ける複数のスレーブ制御部とを備え、
複数の前記スレーブ制御部は、シリアル通信回線を介して直列に接続され、複数の当該スレーブ制御部のうち先頭のスレーブ制御部はシリアル通信回線を介して前記マスタ制御部に接続されており、各スレーブ制御部は、当該マスタ制御部にて生成されたパケットを取得すると、当該パケットの一部をシリアル信号からパラレル信号に変換し、当該パケットが自身宛てのものでなければ、当該パケットを破棄、またはシリアル通信回線を介して接続された後段のスレーブ制御部へ転送すること
を特徴とする画像形成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信システムおよび画像形成装置に関する。
【背景技術】
【０００２】
公報記載の従来技術として、複数の通信装置がカスケード接続された通信システムであって、メイン制御部は、自身からみてｎ段先の他の通信装置宛の情報を発信する際に、ｎ段までの残段数と上記情報とを含む通信データに対する誤り判定コード（ＣＲＣ（Cyclic Redundancy Check））を作成し、このＣＲＣを通信データと共に前段サブ制御部へ送信し、前段サブ制御部は、受信した通信データに対するＣＲＣを作成して受信したＣＲＣと比較し誤り判定を行い、一致するときは残段数により上記情報が自身宛のものかどうかを判定し、自身宛のものでない場合は残段数を１段減らした新たな通信データとこの新たな通信データに対するＣＲＣとを作成し、作成したＣＲＣを、新たな通信データと共に第３通信装置へ送信する通信システムが存在する。（特許文献１参照）
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１４−７６９５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
複数の制御部をカスケード接続した場合に、受信したパケット（通信データ）に対するＣＲＣを作成して受信したＣＲＣと比較し誤り判定を行い、残段数により自身宛のものかどうかを判定する構成では、パケットの全てをバッファした後に次の制御部への転送が行われる。そのため、次の制御部へのパケット転送が、パケットの全てをバッファした時間分遅れてしまう。
本発明は、パケットの全てをバッファして次の制御部へ転送する構成と比較して、次の制御部へのパケットの転送時間を短縮することを目的とする。
【課題を解決するための手段】
【０００５】
請求項１記載の発明は、パケットを生成するマスタ制御部と、前記マスタ制御部にて生成されたパケットを受け付ける複数のスレーブ制御部とを備え、複数の前記スレーブ制御部は、シリアル通信回線を介して直列に接続され、複数の当該スレーブ制御部のうち先頭のスレーブ制御部はシリアル通信回線を介して前記マスタ制御部に接続されており、各スレーブ制御部は、当該マスタ制御部にて生成されたパケットを取得すると、当該パケットの一部をシリアル信号からパラレル信号に変換し、当該パケットが自身宛てのものでなければ、当該パケットを破棄、またはシリアル通信回線を介して接続された後段のスレーブ制御部へ転送することを特徴とする通信システムである。
請求項２記載の発明は、前記スレーブ制御部は、前記マスタ制御部に接続された先頭のスレーブ制御部から最後のスレーブ制御部へ向けて順番に大きくなるように付与された識別情報を有し、前記パケットの一部には、当該パケットの宛先となる前記スレーブ制御部を示す前記識別情報が含まれることを特徴とする請求項１に記載の通信システムである。
請求項３記載の発明は、前記スレーブ制御部は、取得したパケットに含まれる前記識別情報が自身に付与された当該識別情報より小さい場合、当該パケットを破棄して前記マスタ制御部宛てに応答を返し、取得したパケットに含まれる当該識別情報が自身に付与された当該識別情報より大きい場合、後段のスレーブ制御部へ当該パケットを転送することを特徴とする請求項２に記載の通信システムである。
請求項４記載の発明は、前記スレーブ制御部は、取得したパケットに含まれる前記識別情報が最後のスレーブ制御部に付与された当該識別情報より大きい場合、当該パケットを後段のスレーブ制御部へ転送せずに破棄して、前記マスタ制御部宛てに応答を返すことを特徴とする請求項２または３に記載の通信システムである。
請求項５記載の発明は、前記マスタ制御部は、生成したパケットに対する誤り判定情報を当該パケットに付加し、前記スレーブ制御部は、取得したパケットに含まれる前記識別情報が自身に付与された当該識別情報と同じ場合、当該パケットに対する誤り判定情報を生成し、生成した誤り判定情報と当該パケットに付加されていた誤り判定情報とが同じであれば当該パケットを自身宛てのものとして受け付ける処理を行い、生成した誤り判定情報と当該パケットに付加されていた誤り判定情報とが異なれば当該パケットを破棄して前記マスタ制御部宛てに応答を返すことを特徴とする請求項２乃至４のいずれか１項に記載の通信システムである。
請求項６記載の発明は、画像を形成する画像形成部と、前記画像形成部における画像の形成を制御する、マスタ制御部および当該マスタ制御部にて生成されたパケットを受け付ける複数のスレーブ制御部とを備え、複数の前記スレーブ制御部は、シリアル通信回線を介して直列に接続され、複数の当該スレーブ制御部のうち先頭のスレーブ制御部はシリアル通信回線を介して前記マスタ制御部に接続されており、各スレーブ制御部は、当該マスタ制御部にて生成されたパケットを取得すると、当該パケットの一部をシリアル信号からパラレル信号に変換し、当該パケットが自身宛てのものでなければ、当該パケットを破棄、またはシリアル通信回線を介して接続された後段のスレーブ制御部へ転送することを特徴とする画像形成装置である。
【発明の効果】
【０００６】
請求項１記載の発明によれば、パケットの全てをバッファして次の制御部へ転送する構成と比較して、次の制御部へのパケットの転送時間が短縮される。
請求項２記載の発明によれば、パケットが自身宛てのものであるか否かの判断が容易になる。
請求項３記載の発明によれば、誤りが発生したパケットを破棄するとともに、後段の制御部宛てのパケットを転送することができる。
請求項４記載の発明によれば、誤りが発生したパケットを破棄することができる。
請求項５記載の発明によれば、次の制御部へのパケットの転送時間が短縮されるとともに、通信品質が確保される。
請求項６記載の発明によれば、パケットの全てをバッファして次の制御部へ転送する構成と比較して、次の制御部へのパケットの転送時間が短縮される。
【図面の簡単な説明】
【０００７】
【図１】本実施の形態に係る画像形成装置の構成例を示す図である。
【図２】マスタ制御部の構成例を示す図である。
【図３】スレーブ制御部の構成例を示す図である。
【図４】（ａ）は、マスタ制御部で生成されスレーブ制御部へ送信されるパケットのデータ構造の一例を示す図である。（ｂ）は、スレーブ制御部からマスタ制御部を宛先として送信されるＡＣＫパケットのデータ構造の一例を示す図である。（ｃ）は、スレーブ制御部からマスタ制御部を宛先として送信されるＮＡＣＫパケットのデータ構造の一例を示す図である。
【図５】マスタ制御部により生成されたパケットをスレーブ制御部が処理する手順の一例を示すフローチャートである。
【図６】パケットにノイズが印加された場合の処理の一例を説明するための図である。
【発明を実施するための形態】
【０００８】
以下、添付図面を参照して、本発明の実施の形態について詳細に説明する。
ここでは、マスタ制御部とスレーブ制御部とを備え、これらの制御部間をシリアル通信で制御データを送受信するマスタスレーブ方式の通信システムが適用される装置を、画像形成装置を一例として説明する。
【０００９】
＜画像形成装置の全体構成＞
図１は、本実施の形態に係る画像形成装置１０の構成例を示す図である。
この画像形成装置１０は、例えば、スキャン機能、プリント機能、コピー機能及びファクシミリ機能等を備えた装置である。
【００１０】
画像形成装置１０は、紙等の記録媒体に記録された画像を読み取る画像読取部３３０と、記録媒体に画像を形成する画像形成部３２０と、ユーザから電源のオン／オフ、スキャン機能、プリント機能、コピー機能及びファクシミリ機能を用いた動作に関連する指示を受け付けるとともに、ユーザに対してメッセージを表示するユーザインタフェース（user interface）部３１０（以下では、ＵＩ部３１０と表記する。）と、通信回線（不図示）を介して外部に設けられた例えば端末装置（不図示）、ファクシミリ装置（不図示）及びサーバ装置（不図示）等との間でデータの送受信を行う送受信部３４０とを備えている。
【００１１】
また、画像形成装置１０は、画像読取部３３０、画像形成部３２０、ＵＩ部３１０及び送受信部３４０の動作を制御する、マスタ制御部１００および複数のスレーブ制御部（本実施の形態では４つのスレーブ制御部とし、以下では、それぞれを区別しないときはスレーブ制御部２００と表記する）を備えている。マスタ制御部１００及び複数のスレーブ制御部２００は、それぞれ隣り合う制御部と相互にシリアル通信が可能となるようにカスケード接続された通信システムとして構成される。なお、画像読取部３３０、画像形成部３２０、ＵＩ部３１０及び送受信部３４０をまとめて機器群３００と称し、それぞれを区別しないときは機能ブロックと表記する。また、それぞれの機能ブロックは、マスタ制御部１００及びスレーブ制御部２００により制御される１または複数の制御対象を備えている。
【００１２】
ここで、複数のスレーブ制御部２００は、シリアル通信回線を介して直列に接続される。図１に示す構成例では、スレーブ制御部２００として、スレーブ制御部２１０、スレーブ制御部２２０、スレーブ制御部２３０、スレーブ制御部２４０が設けられている。そして、複数のスレーブ制御部２００のうち先頭のスレーブ制御部２１０は、シリアル通信回線を介してマスタ制御部１００に接続される。同様に、スレーブ制御部２１０およびスレーブ制御部２２０の間、スレーブ制御部２２０およびスレーブ制御部２３０の間、スレーブ制御部２３０およびスレーブ制御部２４０の間のそれぞれで、シリアル通信によるデータの送受信が行われる。なお、図１に示す構成例では、４台のスレーブ制御部２００が接続される構成としたが、本実施の形態では、４台未満や５台以上のスレーブ制御部２００が接続される構成であっても良い。
【００１３】
また、各スレーブ制御部２００には、先頭のスレーブ制御部２１０から最後のスレーブ制御部２４０へ向けて順番に番号が大きくなるように、ＩＤが割り当てられている。図１に示す例では、スレーブ制御部２１０のＩＤは「０１」、スレーブ制御部２２０のＩＤは「０２」、スレーブ制御部２３０のＩＤは「０３」、スレーブ制御部２４０のＩＤは「０４」であるものとする。また、マスタ制御部１００、各スレーブ制御部２００は、各スレーブ制御部２００に割り当てられたＩＤを認識している。即ち、マスタ制御部１００は、ＩＤ＝０１〜０４の４台のスレーブ制御部２００が接続されていることを認識している。また、各スレーブ制御部２００は、自身に割り当てられたＩＤを認識しているとともに、他のスレーブ制御部２００に対してどのようなＩＤが割り当てられているかを認識している。本実施の形態では、識別情報の一例として、ＩＤが用いられる。
【００１４】
次に、マスタ制御部１００及びスレーブ制御部２００の機能について説明する。
マスタ制御部１００は、画像形成装置１０全体を制御する。ここで、マスタ制御部１００は、各スレーブ制御部２００や各機能ブロックの動作状態を監視するとともに、画像形成装置１０を制御するためのパケット（制御対象を制御するための制御コマンド、制御データなど）を生成し、シリアル通信を介して各スレーブ制御部２００に対して送信する。マスタ制御部１００から送信されるパケットには、宛先となるスレーブ制御部２００のＩＤが含まれている。例えば、後段のスレーブ制御部２００を宛先としてマスタ制御部１００からパケットが送信される場合、そのパケットは、前段にあるスレーブ制御部２００を経由することとなる。
【００１５】
スレーブ制御部２００は、隣に設けられた前段のスレーブ制御部２００（スレーブ制御部２１０の場合は前段のスレーブ制御部２００が存在しないため、マスタ制御部１００）から受信した自身宛のパケットを受け付けて、機能ブロックにおける制御対象に制御データ等のデータを送信する。ここで、受信したパケットが後段のスレーブ制御部２００宛てのパケットである場合には、スレーブ制御部２００は、パケットを、隣に設けられた後段のスレーブ制御部２００（以下、次段のスレーブ制御部２００と称する）へ転送する。
【００１６】
また、スレーブ制御部２００は、機能ブロックにおける制御対象から送信されたデータ（例えば、制御対象の状態を表すステータスデータ、制御対象がセンサである場合のセンサデータなど）や、後段のスレーブ制御部２００から受信したマスタ制御部１００宛てのデータを、隣に設けられた前段のスレーブ制御部２００（スレーブ制御部２１０の場合は前段のスレーブ制御部２００が存在しないため、マスタ制御部１００）に送信する。
【００１７】
なお、各機能ブロックでは、データの送信元となるスレーブ制御部２００が割り当てられているものとする。例えば、画像形成部３２０の一の制御対象にデータを送信するスレーブ制御部２００としてスレーブ制御部２１０が割り当てられ、画像読取部３３０の一の制御対象にデータを送信するスレーブ制御部２００としてスレーブ制御部２２０が割り当てられる。また、例えば、画像形成部３２０の一の制御対象にデータを送信するスレーブ制御部２００としてスレーブ制御部２１０が割り当てられ、画像形成部３２０の他の制御対象にデータを送信するスレーブ制御部２００としてスレーブ制御部２２０が割り当てられることとしても良い。
【００１８】
＜マスタ制御部の構成＞
次に、マスタ制御部１００の構成について説明する。図２は、マスタ制御部１００の構成例を示す図である。マスタ制御部１００は、ＣＰＵ１０１、通信制御ユニット１０２、ＲＯＭ１０６、ＲＡＭ１０７を備えている。さらに、ＣＰＵ１０１、通信制御ユニット１０２、ＲＯＭ１０６、ＲＡＭ１０７の間でデータを送受信するデータバス１０８を備えている。データバス１０８は、複数の信号線を備えたパラレルバスである。
そして、画像形成装置１０の電源がオン（ＯＮ）になると、ＣＰＵ１０１は、ＲＯＭ１０６に格納されたプログラム及びデータを、データバス１０８を介してＲＡＭ１０７に読み出して展開し、プログラムを実行する。このプログラムの実行により、画像形成装置１０の制御が行われる。
【００１９】
また、通信制御ユニット１０２は、通信制御モジュール１０３、送信モジュール１０４、受信モジュール１０５を備えている。
通信制御モジュール１０３は、ＣＰＵ１０１の制御により、送信モジュール１０４、受信モジュール１０５によるデータの送受信を制御する。ここで、通信制御モジュール１０３は、ＣＰＵ１０１からデータバス１０８を介してスレーブ制御部２００に送信する情報（パラレル信号）を受け取ると、受け取ったパラレル信号をパケット化する。そして、通信制御モジュール１０３は、パケットを送信モジュール１０４に出力する。また、パラレル信号のパケット化において、通信制御モジュール１０３は、ＣＲＣに関する処理を行い、パケットにＣＲＣコードを付加する。
【００２０】
ＣＲＣは、任意長のデータ入力に対し、固定サイズの値を出力する関数の一種であり、連続する誤りを検出するための誤り検出符号の一種でもある。例えば、対象となる通信データをある定数で除算し、その剰余が誤りチェック用のＣＲＣコードとして用いられる。そして、誤りチェックの際には、パケットに付加されていたＣＲＣコードと、パケットをもとに改めて計算したＣＲＣコードとを比較して、両者が一致すれば誤りがないと判定される。一方、両者が一致しなければ、パケットにノイズが印加された等により誤りが発生したと判定される。本実施の形態では、ＣＲＣコードは、パケットのヘッダ部からデータ部まで、即ち、パケットでＣＲＣコードを除く全ての部分を用いて計算される。このようなパケットのデータ構造の詳細については後述する。また、本実施の形態では、誤り判定情報の一例として、ＣＲＣコードが用いられる。
【００２１】
また、通信制御モジュール１０３は、受信モジュール１０５から受け取ったパラレル形式のパケットに対して、ＣＲＣコードをもとに誤りチェックを行う。誤りがなければ、通信制御モジュール１０３は、パケットをデコードしてパケットに含まれるデータを取り出し、データバス１０８を介して、取り出したデータをＣＰＵ１０１に出力する。一方、誤りがあれば、通信制御モジュール１０３は、パケットを破棄する。
【００２２】
送信モジュール１０４は、通信制御モジュール１０３から入力されたパケットをパラレル信号からシリアル信号に変換して、シリアル通信回線を介して先頭のスレーブ制御部２１０に送信する。
【００２３】
受信モジュール１０５は、シリアル通信回線を介して先頭のスレーブ制御部２１０からパケットを受信すると、受信したパケットをシリアル信号からパラレル信号に変換し、通信制御モジュール１０３に出力する。
【００２４】
＜スレーブ制御部の構成＞
次に、スレーブ制御部２００の構成について説明する。図３は、スレーブ制御部２２０の構成例を示す図である。スレーブ制御部２２０は、通信制御ユニット２２１、Ｉ／Ｏ（Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）制御モジュール２２７、クロック生成回路２２８、ＩＦモジュール２２９を備えている。なお、ここでは、スレーブ制御部２２０の構成について説明するが、他のスレーブ制御部２００（スレーブ制御部２１０、スレーブ制御部２３０、スレーブ制御部２４０）も同様に構成される。
【００２５】
まず、Ｉ／Ｏ制御モジュール２２７は、ＩＦモジュール２２９に接続されるとともに、通信制御ユニット２２１、クロック生成回路２２８に接続されている。そして、Ｉ／Ｏ制御モジュール２２７は、通信制御ユニット２２１から受け取ったデータを、指定されたいずれかのＩＦモジュール２２９に出力する。また、ＩＦモジュール２２９から受け取ったデータを、通信制御ユニット２２１に出力する。
【００２６】
ＩＦモジュール２２９は、制御ブロックの制御対象に接続されており、Ｉ／Ｏ制御モジュール２２７からデータを受け取ると、受け取ったデータを制御対象に出力する。出力されたデータをもとに、制御対象において処理が行われる。また、ＩＦモジュール２２９は、制御ブロックの制御対象からデータを受け取ると、受け取ったデータをＩ／Ｏ制御モジュール２２７に出力する。制御対象によるデータはマスタ制御部１００を宛先としており、通信制御ユニット２２１を介して、マスタ制御部１００に送信される。
なお、図３に示す構成例では、ＩＦモジュール２２９が２つ設けられる構成としたが、ＩＦモジュール２２９は１つでも３つ以上であっても良い。また、制御対象として画像形成部３２０の制御対象が接続される構成としたが、他の機能ブロックの制御対象が接続されても良い。
【００２７】
クロック生成回路２２８は、クロック信号を生成して、生成したクロック信号をＩ／Ｏ制御モジュール２２７に送信する。付言すると、Ｉ／Ｏ制御モジュール２２７とＩＦモジュール２２９とのデータの送受信は、クロック生成回路２２８によって生成されるクロック信号に同期して行われる。
【００２８】
通信制御ユニット２２１は、第１受信モジュール２２２、第１送信モジュール２２３、第２受信モジュール２２４、第２送信モジュール２２５、通信制御モジュール２２６を備えている。そして、第１受信モジュール２２２及び第１送信モジュール２２３は、前段のスレーブ制御部２１０との間の通信に用いられ、第２受信モジュール２２４及び第２送信モジュール２２５は、次段のスレーブ制御部２３０との間の通信に用いられる。
【００２９】
まず、第１受信モジュール２２２は、前段のスレーブ制御部２１０からパケットを受信すると、受信したパケットをシリアル信号からパラレル信号に変換する。ここで、第１受信モジュール２２２は、パケットの全てをパラレル信号に変換するのではなく、パケットの一部であるヘッダ部のみバッファにためて、パラレル信号に変換する。そして、第１受信モジュール２２２は、パラレル信号に変換したヘッダ部をデコードして、パケットに付与されたＩＤが、自身のスレーブ制御部２２０に割り当てられているＩＤ（以下、自身に割り当てられているＩＤを、自制御部ＩＤと称する）と同じであるか否かを判定する。
【００３０】
両者のＩＤが同じである場合、第１受信モジュール２２２は、受信したパケットが自身のスレーブ制御部２２０宛てのパケットであると認識する。そして、第１受信モジュール２２２は、ヘッダ部以外の残りの部分もシリアル信号からパラレル信号に変換する。そして、第１受信モジュール２２２は、パラレル変換後のパケットを通信制御モジュール２２６に出力する。
【００３１】
一方、両者のＩＤが異なる場合、第１受信モジュール２２２は、パケットに付与されたＩＤに応じた処理を続けて行う。
両者のＩＤが異なり、パケットに付与されたＩＤが自制御部ＩＤより大きい場合、第１受信モジュール２２２は、次段のスレーブ制御部２３０へ転送する対象のパケットとして、パケットを通信制御モジュール２２６に出力する。ただし、パケットに付与されたＩＤが、カスケード接続における最も後段にある最後のスレーブ制御部２４０のＩＤよりも大きい場合には、ヘッダ部へノイズが印加したために、ＩＤの値が通常付与される範囲外の値に変わったと考えられる。この場合には、パケットは次段のスレーブ制御部２３０へは転送されず、第１受信モジュール２２２は、破棄対象のパケットとして、パケットを通信制御モジュール２２６に出力する。
【００３２】
また、両者のＩＤが異なり、パケットに付与されたＩＤが自制御部ＩＤより小さい場合、前段のスレーブ制御部（図３に示す例では、スレーブ制御部２１０）にて本来受信されるべきパケットであり、例えばスレーブ制御部２１０がパケットを送信してスレーブ制御部２２０がパケットを受信するまでの間などに、ヘッダ部へノイズが印加してＩＤが変わったと考えられる。この場合には、パケットは次段のスレーブ制御部２３０へは転送されず、第１受信モジュール２２２は、破棄対象のパケットとして、パケットを通信制御モジュール２２６に出力する。
【００３３】
次に、第１送信モジュール２２３は、通信制御モジュール２２６から入力されたパケットを前段のスレーブ制御部２１０へ転送する。ここで、通信制御モジュール２２６から入力されるパケットは、データ転送が正常に終了したことを知らせる信号であるＡＣＫ（ACKnowledgement）パケット、データ転送が正常に終了しなかったことを知らせる信号であるＮＡＣＫ（Negative ACKnowledgement）パケット、制御対象にて生成されたものなどである。これらのパケットは、スレーブ制御部２２０やスレーブ制御部２２０に接続された制御対象にて生成されるものもあれば、後段のスレーブ制御部２００（図３に示す例では、スレーブ制御部２３０、スレーブ制御部２４０）から転送されてくるものもある。
【００３４】
第２受信モジュール２２４は、シリアル通信回線を介して後段のスレーブ制御部２３０からパケットを受信すると、受信したパケットを通信制御モジュール２２６に出力する。ここで出力されたパケットは、通信制御モジュール２２６を介して第１送信モジュール２２３に送られる。
【００３５】
第２送信モジュール２２５は、通信制御モジュール２２６から入力されたパケットをパラレル信号からシリアル信号に変換して、シリアル通信回線を介して次段のスレーブ制御部２３０へ転送する。ここで、通信制御モジュール２２６から入力されるパケットは、第１受信モジュール２２２によりヘッダ部のみパラレル変換されており、第２送信モジュール２２５は、ヘッダ部を再度シリアル信号に変換して、次段のスレーブ制御部２３０へ転送する。
【００３６】
次に、通信制御モジュール２２６は、自身のスレーブ制御部２２０宛てのパケットを第１受信モジュール２２２から受け取った場合、ＣＲＣコードをもとに誤りチェックを行う。誤りがなければ、通信制御モジュール２２６は、パケットを自身のスレーブ制御部２００宛てのものとして受け付ける処理を行う。ここで、通信制御モジュール２２６が、パケットをデコードしてパケットに含まれるデータを取り出し、取り出したデータをＩ／Ｏ制御モジュール２２７に出力する。そして、通信制御モジュール２２６は、ＡＣＫパケットを、マスタ制御部１００を宛先として、第１送信モジュール２２３を介して前段のスレーブ制御部２１０に送信する。
一方、パケットに誤りがあれば、通信制御モジュール２２６は、パケットを破棄する。そして、通信制御モジュール２２６は、ＮＡＣＫパケットを、マスタ制御部１００を宛先として、第１送信モジュール２２３を介して前段のスレーブ制御部２１０へ送信する。
【００３７】
また、通信制御モジュール２２６は、次段のスレーブ制御部２３０に転送する対象のパケットを第１受信モジュール２２２から受け取った場合、第２送信モジュール２２５を介して、パケットを次段のスレーブ制御部２３０に転送する。
さらに、通信制御モジュール２２６は、破棄対象のパケットを第１受信モジュール２２２から受け取った場合、パケットを破棄する。そして、通信制御モジュール２２６は、マスタ制御部１００を宛先として、第１送信モジュール２２３を介して前段のスレーブ制御部２１０にＮＡＣＫパケットを送信する。
【００３８】
そして、通信制御モジュール２２６は、制御対象にて生成されたデータ等をＩ／Ｏ制御モジュール２２７から受け取った場合、受け取ったデータをパケット化し、マスタ制御部１００を宛先として、第１送信モジュール２２３を介して前段のスレーブ制御部２１０へ送信する。
また、通信制御モジュール２２６は、後段のスレーブ制御部２３０からマスタ制御部１００宛てのパケット（ＡＣＫパケット、ＮＡＣＫパケット、制御対象にて生成されたもの等）を受信した場合、受信したパケットを、第１送信モジュール２２３を介して前段のスレーブ制御部２１０へ送信する。
【００３９】
＜パケットのデータ構造＞
次に、マスタ制御部１００と各スレーブ制御部２００との間で送受信されるパケットのデータ構造について説明する。図４（ａ）〜（ｃ）は、パケットのデータ構造の一例を示す図である。
まず、図４（ａ）は、マスタ制御部１００で生成されスレーブ制御部２００へ送信されるパケットのデータ構造の一例を示す図である。図４（ａ）に示すパケットでは、先頭から、ヘッダ部、アドレス部、データ部、ＣＲＣコードが順に配列されている。
【００４０】
ヘッダ部は、４ビットのコマンドと、４ビットのＩＤコードとに分かれている。
コマンドには、宛先となる機能ブロックの制御対象におけるデータ書き込み（ライト）命令、あるいは宛先となる制御対象におけるデータ読み出し（リード）命令等が含まれる。
ＩＤコードには、パケットの宛先となるスレーブ制御部２００の自制御部ＩＤを表すビット列が付与される。ＩＤコードは４ビットであり、各スレーブ制御部２００には、「０１」〜「１５」のＩＤが付与されることとなる。ただし、本実施の形態では、ＩＤコードが４ビットの場合に限られるものではなく、ＩＤコードを４ビットより増やしてさらに多くのＩＤの付与が可能となるようにしても良い。
【００４１】
アドレス部は、１６ビットで構成され、宛先となる機能ブロックの制御対象のアドレスを示す。例えば、スレーブ制御部２１０が制御する制御対象Ａに対してパケットが送信される場合、ＩＤコードにはスレーブ制御部２１０に割り当てられたＩＤ（ＩＤ＝０１）が付与され、アドレス部には制御対象Ａのアドレスが付与されてパケットの生成が行われる。
【００４２】
データ部は、宛先となる制御対象での処理に用いられるデータを示し、例えば１６ビットで構成されるデータがＮ（１または複数）個、付加されている。
ＣＲＣコードは、８ビットで構成され、各スレーブ制御部２００にて誤りチェックをする際に使用される。このＣＲＣコードは、上述したように、パケットのヘッダ部からデータ部まで（ＣＲＣコードの手前まで）を用いて計算され、ビット列としてセットされる。
【００４３】
図４（ｂ）は、スレーブ制御部２００からマスタ制御部１００を宛先として送信されるＡＣＫパケットのデータ構造の一例を示す図である。ＡＣＫパケットでは、先頭から、ＡＣＫコマンド、ＣＲＣコードが順に配列されている。ＡＣＫコマンドには、このパケットがＡＣＫパケットであることを示すビット列が付与される。また、ＣＲＣコードは、マスタ制御部１００にて誤りチェックをする際に使用される。
【００４４】
図４（ｃ）は、スレーブ制御部２００からマスタ制御部１００を宛先として送信されるＮＡＣＫパケットのデータ構造の一例を示す図である。ＮＡＣＫパケットでは、先頭から、ＮＡＣＫコマンド、エラーコード、ＣＲＣコードが順に配列されている。ＮＡＣＫコマンドには、このパケットがＮＡＣＫパケットであることを示すビット列が付与される。また、エラーコードには、ＮＡＣＫパケットを送信することになった原因のエラーに合わせたビット列が付与される。ＣＲＣコードは、マスタ制御部１００にて誤りチェックをする際に使用される。
【００４５】
ここで、エラーコードとしては、例えば、自制御部ＩＤより小さいＩＤがパケットに付与されているためにエラーとなった場合、そのエラーに対応するビット列が付与される。また、例えば、アドレス部にて指定された宛先となるアドレスの制御対象が存在しないためにエラーとなった場合、そのエラーに対応するビット列がエラーコードとして付与される。このエラーコードは、マスタ制御部１００が、どのような原因によりＮＡＣＫパケットが送信されることになったかを判断するための解析などに用いられる。
【００４６】
＜スレーブ制御部におけるパケットの処理手順＞
次に、マスタ制御部１００により生成されたパケットをスレーブ制御部２００が処理する手順について説明する。図５は、マスタ制御部１００により生成されたパケットをスレーブ制御部２２０が処理する手順の一例を示すフローチャートである。ここでは、スレーブ制御部２２０が処理する手順について説明するが、他のスレーブ制御部２００（スレーブ制御部２１０、スレーブ制御部２３０、スレーブ制御部２４０）でも同様の処理が行われる。
【００４７】
まず、第１受信モジュール２２２は、シリアル通信回線を介して、前段のスレーブ制御部２１０からパケットを受信すると、受信したパケットをシリアル信号からパラレル信号に変換する（ステップ１０１）。ここで、第１受信モジュール２２２は、パケットのヘッダ部のみバッファにためて、パラレル信号に変換する。そして、第１受信モジュール２２２は、パケットに付与されたＩＤが、自制御部ＩＤと同じであるか否かを判定する（ステップ１０２）。
【００４８】
両者のＩＤが同じである場合（ステップ１０２でＹｅｓ）、第１受信モジュール２２２は、受信したパケットを自身のスレーブ制御部２２０宛てのパケットであると認識し、ヘッダ部以外の残りの部分もシリアル信号からパラレル信号に変換する（ステップ１０３）。そして、第１受信モジュール２２２は、パラレル変換後のパケットを通信制御モジュール２２６に出力する。通信制御モジュール２２６は、第１受信モジュール２２２からパケットを受け取ると、ＣＲＣコードをもとに誤りチェックを行い、誤りがあるか否かを判定する（ステップ１０４）。
【００４９】
誤りがあると判定された場合（ステップ１０４でＹｅｓ）、通信制御モジュール２２６は、パケットを破棄して、マスタ制御部１００宛てのＮＡＣＫパケットを第１送信モジュール２２３へ出力する。そして、第１送信モジュール２２３は、ＮＡＣＫパケットを前段のスレーブ制御部２１０に送信し（ステップ１０５）、本処理フローは終了する。
【００５０】
一方、ステップ１０４において、誤りがないと判定された場合（ステップ１０４でＮｏ）、通信制御モジュール２２６は、パケットをデコードしてパケットに含まれるデータを取り出し、取り出したデータをＩ／Ｏ制御モジュール２２７に出力する。Ｉ／Ｏ制御モジュールは、通信制御モジュール２２６から受け取ったデータを、ＩＦモジュール２２９を介して制御対象に送信する。そして、制御対象における処理が行われる（ステップ１０６）。また、通信制御モジュール２２６は、マスタ制御部１００宛てのＡＣＫパケットを第１送信モジュール２２３へ出力する。第１送信モジュール２２３は、ＡＣＫパケットを前段のスレーブ制御部２１０に送信し（ステップ１０７）、本処理フローは終了する。
【００５１】
また、ステップ１０２において、パケットに付与されたＩＤと、自制御部ＩＤとが異なる場合（ステップ１０２でＮｏ）、第１受信モジュール２２２は、パケットに付与されたＩＤの方が、自制御部ＩＤより大きいか否かを判定する（ステップ１０８）。
パケットに付与されたＩＤの方が、自制御部ＩＤより大きい場合（ステップ１０８でＹｅｓ）、第１受信モジュール２２２は、さらに、パケットに付与されたＩＤが、カスケード接続における最も後段にある最後のスレーブ制御部２４０の自制御部ＩＤよりも大きいか否かを判定する（ステップ１０９）。
【００５２】
パケットに付与されたＩＤが、最後のスレーブ制御部２４０の自制御部ＩＤよりも大きい場合（ステップ１０９でＹｅｓ）、第１受信モジュール２２２は、破棄対象のパケットとして、パケットを通信制御モジュール２２６に出力し、ステップ１０５に移行する。
一方、パケットに付与されたＩＤが、最後のスレーブ制御部の自制御部ＩＤと同じ、または最後のスレーブ制御部の自制御部ＩＤよりも小さい場合（ステップ１０９でＮｏ）、第１受信モジュール２２２は、次段のスレーブ制御部２３０へ送信する対象のパケットとして、通信制御モジュール２２６にパケットを出力する。通信制御モジュール２２６は、パケットを受け取ると、受け取ったパケットを第２送信モジュール２２５に出力する。そして、第２送信モジュール２２５は、パケットのヘッダ部をパラレル信号からシリアル信号に変換して、シリアル通信回線を介してパケットを次段のスレーブ制御部２３０へ転送する（ステップ１１０）。そして、本処理フローは終了する。
【００５３】
さらに、ステップ１０８において、パケットに付与されたＩＤの方が、自制御部ＩＤより小さい場合（ステップ１０８でＮｏ）、第１受信モジュール２２２は、破棄対象のパケットとして、パケットを通信制御モジュール２２６に出力し、ステップ１０５に移行する。
【００５４】
このように、スレーブ制御部２２０は、マスタ制御部１００により生成されたパケットとして前段のスレーブ制御部２１０からパケットを受信すると、まず、ヘッダ部のみバッファにためてパラレル変換を行い、自身のスレーブ制御部２２０宛てのパケットであるか否かを判定する。自身のスレーブ制御部２２０宛てのパケットである場合、スレーブ制御部２２０は、ヘッダ部以外の残りの部分もパラレル変換する。そして、スレーブ制御部２２０は、誤りチェックを行った後、誤りがなければパケットを制御対象に送信する。
【００５５】
＜パケットにノイズが印加された場合の具体例＞
次に、実際にパケットにノイズが印加された場合の処理について、具体例を示して説明する。図６は、パケットにノイズが印加された場合の処理の一例を説明するための図である。図６に示す例では、マスタ制御部１００にて生成されたパケットにおいて、スレーブ制御部２１０（ＩＤ＝０１）とスレーブ制御部２２０（ＩＤ＝０２）との間でノイズが印加されたものとする。また、以下では、ノイズがヘッダ部のＩＤコードに印加された例、ノイズがＩＤコード以外の部分に印加された例のそれぞれについて、スレーブ制御部２２０（ＩＤ＝０２）が行う処理について説明する。さらに、以下に示すステップは、図５の各ステップに対応するものとする。
【００５６】
［ノイズがＩＤコードに印加された例］
ノイズがＩＤコードに印加された場合、ＩＤコードが示すＩＤは、もともと付加されていた値から違う値に変化する。ここで、変化するパターンとして、パケットに付与されたＩＤが、パケットを受信するスレーブ制御部２２０のＩＤ（ＩＤ＝０２）よりも小さくなる場合、スレーブ制御部２２０のＩＤ（ＩＤ＝０２）よりも大きくなる場合、スレーブ制御部２２０のＩＤ（ＩＤ＝０２）と同じになる場合の３つが考えられる。
【００５７】
まず、本来の宛先はスレーブ制御部２２０、スレーブ制御部２３０、スレーブ制御部２４０のいずれか（ＩＤ＝０２、０３または０４）であるが、ノイズが印加されたことにより、パケットのＩＤがスレーブ制御部２２０のＩＤ（ＩＤ＝０２）よりも小さくなる場合が存在する。この場合、ＩＤから判断すると前段のスレーブ制御部２１０にて受信されるべきパケットということになるため、スレーブ制御部２２０は、このパケットを破棄し、マスタ制御部１００宛てにＮＡＣＫパケットを送信する。図５に示すフローでは、ステップ１０２で否定の判断（Ｎｏ）がされ、さらにステップ１０８で否定の判断（Ｎｏ）がされる。そして、ステップ１０５に移行する。
【００５８】
次に、本来の宛先はスレーブ制御部２２０、スレーブ制御部２３０、スレーブ制御部２４０のいずれか（ＩＤ＝０２、０３または０４）であるが、ノイズが印加されたことにより、パケットのＩＤが最後のスレーブ制御部２４０のＩＤ（ＩＤ＝０４）よりも大きくなる場合が存在する。この場合、存在しないＩＤがパケットに付与されていることになるため、スレーブ制御部２２０は、このパケットを破棄し、マスタ制御部１００宛てにＮＡＣＫパケットを送信する。図５に示すフローでは、ステップ１０２で否定の判断（Ｎｏ）がされ、次にステップ１０８で肯定の判断（Ｙｅｓ）がされる。そして、次の１０９のステップにおいて肯定の判断（Ｙｅｓ）がされて、ステップ１０５に移行する。
【００５９】
また、本来の宛先はスレーブ制御部２２０（ＩＤ＝０２）であるが、ノイズが印加されたことにより、パケットのＩＤが「０３」や「０４」となり、スレーブ制御部２２０（ＩＤ＝０２）のＩＤよりも大きくなる場合が存在する。この場合、スレーブ制御部２２０は、このパケットを次段のスレーブ制御部２３０（ＩＤ＝０３）に転送する。図５に示すフローでは、ステップ１０２で否定の判断（Ｎｏ）がされ、ステップ１０８で肯定の判断（Ｙｅｓ）がされる。そして、次の１０９のステップで否定の判断（Ｎｏ）がされて、ステップ１１０に移行する。
【００６０】
ここで、ノイズによりパケットのＩＤが「０３」になった場合には、スレーブ制御部２３０（ＩＤ＝０３）が自身のスレーブ制御部２３０宛てのパケットとして受け取るが、ステップ１０４の誤りチェックにより誤りが検出されるため、パケットを破棄してＮＡＣＫパケットを送信する（ステップ１０５）。同様に、ノイズによりパケットのＩＤが「０４」になった場合には、スレーブ制御部２４０（ＩＤ＝０４）が自身のスレーブ制御部２４０宛てのパケットとして受け取るが、ステップ１０４の誤りチェックにより誤りが検出されるため、パケットを破棄してＮＡＣＫパケットを送信する（ステップ１０５）。
【００６１】
また、本来の宛先はスレーブ制御部２３０（ＩＤ＝０３）であるが、ノイズが印加されたことにより、パケットのＩＤがその後段のスレーブ制御部２４０（ＩＤ＝０４）のＩＤになった場合も同様であり、スレーブ制御部２４０（ＩＤ＝０４）までパケットは送信される。そして、スレーブ制御部２４０（ＩＤ＝０４）が自身のスレーブ制御部２４０宛てのパケットとして受け取るが、ステップ１０４の誤りチェックにより誤りが検出されるため、パケットを破棄してＮＡＣＫパケットを送信する（ステップ１０５）。本来の宛先はスレーブ制御部２４０（ＩＤ＝０４）であるが、ノイズが印加されたことにより、パケットのＩＤがその前段のスレーブ制御部２３０（ＩＤ＝０３）のＩＤになった場合も同様に、スレーブ制御部２３０がパケットを破棄してＮＡＣＫパケットを送信する。
【００６２】
さらに、本来の宛先はスレーブ制御部２３０、またはスレーブ制御部２４０（ＩＤ＝０３または０４）であるが、ノイズが印加されたことにより、パケットのＩＤがスレーブ制御部２２０（ＩＤ＝０２）のＩＤと同じになる場合が存在する。この場合、スレーブ制御部２２０は、自身のスレーブ制御部２２０宛てのパケットとして受け取るが、誤りチェックにより誤りが検出されるため、パケットを破棄し、マスタ制御部１００宛てにＮＡＣＫパケットを送信する。図５に示すフローでは、ステップ１０２で肯定の判断（Ｙｅｓ）がされ、さらにステップ１０４で肯定の判断（Ｙｅｓ）がされる。そして、ステップ１０５に移行する。
【００６３】
［ノイズがＩＤコード以外の部分に印加された例］
ノイズがＩＤコード以外の部分に印加された場合のパターンとして、パケットの宛先がスレーブ制御部２２０（ＩＤ＝０２）の場合、パケットの宛先がその後段のスレーブ制御部２００（図６に示す例では、スレーブ制御部２３０またはスレーブ制御部２４０）の場合の２つが考えられる。
【００６４】
まず、パケットの宛先がスレーブ制御部２２０（ＩＤ＝０２）の場合、スレーブ制御部２２０は、自身のスレーブ制御部２２０宛てのパケットとして受け取るが、誤りチェックにより誤りが検出されるため、パケットを破棄し、マスタ制御部１００宛てにＮＡＣＫパケットを送信する。図５に示すフローでは、ステップ１０２で肯定の判断（Ｙｅｓ）がされ、さらにステップ１０４で肯定の判断（Ｙｅｓ）がされる。そして、ステップ１０５に移行する。
【００６５】
次に、パケットの宛先がその後段のスレーブ制御部２００（ＩＤ＝０３または０４）の場合、スレーブ制御部２２０は、このパケットを次段のスレーブ制御部２３０（ＩＤ＝０３）に転送する。図５に示すフローでは、ステップ１０２で否定の判断（Ｎｏ）がされ、ステップ１０８で肯定の判断（Ｙｅｓ）、ステップ１０９で否定の判断（Ｎｏ）がされる。そして、ステップ１１０に移行する。
【００６６】
ここで、パケットのＩＤが「０３」の場合には、スレーブ制御部２３０（ＩＤ＝０３）が自身のスレーブ制御部２３０宛てのパケットとして受け取るが、ステップ１０４の誤りチェックにより誤りが検出されるため、パケットを破棄してＮＡＣＫパケットを送信する（ステップ１０５）。同様に、パケットのＩＤが「０４」の場合には、スレーブ制御部２４０（ＩＤ＝０４）が自身のスレーブ制御部２４０宛てのパケットとして受け取るが、ステップ１０４の誤りチェックにより誤りが検出されるため、パケットを破棄してＮＡＣＫパケットを送信する（ステップ１０５）。
【００６７】
以上説明したように、スレーブ制御部２００は、マスタ制御部１００により生成されたパケットを受信すると、まず、ヘッダ部のみバッファにためてパラレル変換を行い、ＩＤをもとに、自身のスレーブ制御部２００宛てのパケットであるか否かを判定する。自身のスレーブ制御部２００宛てのパケットである場合、スレーブ制御部２００は、ヘッダ部以外の残りの部分もパラレル変換する。そして、スレーブ制御部２００は、誤りチェックを行ってパケットを処理する。一方、自身よりも後段のスレーブ制御部２００宛てのパケットであれば、スレーブ制御部２００は、パケットを次段のスレーブ制御部２００に転送する。
【００６８】
付言すると、スレーブ制御部２００は、８ビットのヘッダ部のみバッファにためてパラレル変換を行うため、例えば８ビットＣＰＵが用いられている場合には１クロック分の処理となり、１回の計算で処理が行われることとなる。また、受信したパケットについては誤りチェックを行うため、通信品質が保たれる。そのため、例えば、スレーブ制御部２００がパケットの全てをバッファして次段のスレーブ制御部２００へパケットを転送するような構成と比較して、本実施の形態に係る画像形成装置１０では、通信品質を確保するとともに次段のスレーブ制御部２００への転送時間が短縮される。
【００６９】
また、パケットを受信したスレーブ制御部２００は、パケットが自身宛てのものか判断し、パケットが後段のスレーブ制御部２００宛ての場合、次段のスレーブ制御部２００へパケットを転送する。そのため、例えば、パケットが全てのスレーブ制御部２００に転送されて各スレーブ制御部２００が自身宛てのパケットであるか否かを判断するような構成と比較して、本実施の形態に係る画像形成装置１０では、画像形成装置１０内で送受信されるパケットのトラフィック量が低減される。
【００７０】
さらに、パケットを受信したスレーブ制御部２００は、パケットに付与されたＩＤが自身の自制御部ＩＤよりも小さい場合、またはパケットに付与されたＩＤが最後のスレーブ制御部２４０の自制御部ＩＤよりも大きい場合、そのパケットを破棄する。例えば、パケットに付与されたＩＤが自身の自制御部ＩＤよりも小さい場合や最後のスレーブ制御部２４０の自制御部ＩＤよりも大きい場合に、パケットが破棄されなければ、そのパケットに対する処理が行われず、どのスレーブ制御部２００もマスタ制御部１００に応答しない状態となる。この場合、マスタ制御部１００は、タイムアウトのエラー等が発生するまでパケットに対する応答（ＡＣＫ、ＮＡＣＫ）を待ち続けることとなり、全体としてマスタ制御部１００による処理が遅延する。即ち、例えば、パケットに付与されたＩＤが自身の自制御部ＩＤよりも小さい場合や最後のスレーブ制御部２４０の自制御部ＩＤよりも大きい場合であってもパケットが破棄されないような構成と比較して、本実施の形態に係る画像形成装置１０では、誤りが発生したパケットについてマスタ制御部１００宛てに応答が返され、マスタ制御部１００の処理が迅速化される。
【００７１】
また、本実施の形態では、パケットの誤りをチェックするためにＣＲＣコードを用いることとしたが、このような構成に限られるものではない。例えば、ＣＲＣコードではなくチェックサムを用いても良く、誤りの検出が可能なものであればどのような方式を用いても良い。
【００７２】
また、上記では、本実施の形態に係るマスタ制御部１００及びスレーブ制御部２００を画像形成装置１０に適用した例について説明したが、このような構成に限定されるものではない。本実施の形態は、画像形成のための機器以外の各種機器の駆動を制御する様々な装置に適用可能である。
【００７３】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態には限定されない。本発明の精神及び範囲から逸脱することなく様々に変更したり代替態様を採用したりすることが可能なことは、当業者に明らかである。
【符号の説明】
【００７４】
１０…画像形成装置、１００…マスタ制御部、２１０…スレーブ制御部、２２０…スレーブ制御部、２２１…通信制御ユニット、２２２…第１受信モジュール、２２３…第１送信モジュール、２２４…第２受信モジュール、２２５…第２送信モジュール、２２６…通信制御モジュール、２２７…Ｉ／Ｏ制御モジュール、２２８…クロック生成回路、２２９…ＩＦモジュール、２３０…スレーブ制御部、２４０…スレーブ制御部
【図１】
2016096493.tif 000003
【図２】
2016096493.tif 000004
【図３】
2016096493.tif 000005
【図４】
2016096493.tif 000006
【図５】
2016096493.tif 000007
【図６】
2016096493.tif 000008