(57)【要約】【課題】  複数のプロセッサが一方向バスによってループ状に接続された構成を有する電子機器において、容易にその構成の異常箇所を特定できるようにすること。【解決手段】  まず、メインプロセッサ自身宛のコマンドパケットを一方向バスに送出し（Ｓ１）、そのコマンドパケットが所定時間内にメインプロセッサに戻ってくるか否かに応じて、この電子機器のいずれかの箇所で異常があるかどうかを判断する（Ｓ２）。異常があると判定されたときは、専用の信号線を利用して各サブプロセッサにテスト信号を送信し（Ｓ３，Ｓ５，Ｓ７）、テスト信号の送信先のサブプロセッサからそのテスト信号に応じて一方向バスを介して転送されてくるテストパケットを所定時間内に受信したか否かに基づいて、この電子機器の異常箇所を特定する（Ｓ４，Ｓ６，Ｓ８）。【選択図】  図９
2004158000.tif 000002
【特許請求の範囲】
【請求項１】
機器全体を制御する主制御部と特定の機能を実行するための複数の副制御部とをループ状に接続する一方向バスを有する電子機器であって、
前記主制御部から各副制御部にテスト信号を伝送するための、前記一方向バスとは異なる信号線と、
前記主制御部から所定のパケットデータを前記一方向バスに送出する第１の送出手段と、
各副制御部において、前記パケットデータを受信して次段に転送する転送手段と、
前記副制御部が前記主制御部に転送した前記パケットデータを、前記主制御部が正常に受信したか否かに応じて、この電子機器のいずれかの箇所で異常があるかどうかを判定する判定手段と、
前記判定手段によって異常があると判定された場合に、前記主制御部から前記信号線を介して各副制御部に前記テスト信号を送出する第２の送出手段と、
前記テスト信号の送信先の副制御部からそのテスト信号に応じて前記一方向バスを介して転送されるテストパケットを正常に受信したか否かに基づいて、この電子機器の異常箇所を特定する異常箇所特定手段と、
を有することを特徴とする電子機器。
【請求項２】
機器全体を制御する主制御部と特定の機能を実行するための複数の副制御部とをループ状に接続する一方向バスを有する電子機器であって、
各副制御部から前記主制御部にテスト信号を伝送するための、前記一方向バスとは異なる信号線と、
前記主制御部から所定のパケットデータを前記一方向バスに送出する第１の送出手段と、
各副制御部において、前記パケットデータを受信して次段に転送する転送手段と、
前記副制御部が前記主制御部に送信した前記パケットデータを、前記主制御部が正常に受信したか否かに応じて、この電子機器のいずれかの箇所で異常があるかどうかを判定する判定手段と、
前記判定手段によって異常があると判定された場合に、前記主制御部からテスト用パケットを前記一方向バスに送出する第２の送出手段と、
前記テスト用パケットに応じて前記各副制御部から対応する前記信号線を介して伝送されるテスト信号の状態に基づいて、この電子機器の異常箇所を特定する異常箇所特定手段と、
を有することを特徴とする電子機器。
【請求項３】
機器全体を制御する主制御部と特定の機能を実行するための複数の副制御部とをループ状に接続する一方向バスを有する電子機器であって、
各副制御部と前記主制御部との間を接続し、テスト信号を伝送するための、一方向バスとは異なる信号線と、
前記主制御部から所定のパケットデータを前記一方向バスに送出する送出手段と、
各副制御部において、前記パケットデータを受信して次段に転送する転送手段と、
前記副制御部が前記主制御部に転送した前記パケットデータを、前記主制御部が正常に受信したか否かに応じて、この電子機器のいずれかの箇所で異常があるかどうかを判定する判定手段と、
前記判定手段によって異常があると判定された場合に、対応する前記信号線を介してこの電子機器の異常箇所を特定する異常箇所特定手段と、
を有することを特徴とする電子機器。
【請求項４】
前記異常箇所特定手段は、前記判定手段によって異常があると判定された場合に、前記一方向バスの下流側の副制御部より異常診断を行うことを特徴とする請求項１乃至３のいずれかに記載の電子機器。
【請求項５】
機器全体を制御する主制御部と特定の機能を実行するための複数の副制御部とをループ状に接続する一方向バスを有するとともに、前記主制御部から各副制御部にテスト信号を伝送するための、前記一方向バスとは異なる信号線を有する電子機器における異常を診断する方法であって、
前記主制御部から所定のパケットデータを前記一方向バスに送出する第１の送出ステップと、
各副制御部において、前記パケットデータを受信して次段に転送する転送ステップと、
前記副制御部が前記主制御部に転送した前記パケットデータを、前記主制御部が正常に受信したか否かに応じて、この電子機器のいずれかの箇所で異常があるかどうかを判定する判定ステップと、
前記判定ステップによって異常があると判定された場合に、前記主制御部から前記信号線を介して各副制御部に前記テスト信号を送出する第２の送出ステップと、
前記テスト信号の送信先の副制御部からそのテスト信号に応じて前記一方向バスを介して転送されるテストパケットを正常に受信したか否かに基づいて、この電子機器の異常箇所を特定する異常箇所特定ステップと、
を有することを特徴とする方法。
【請求項６】
機器全体を制御する主制御部と特定の機能を実行するための複数の副制御部とをループ状に接続する一方向バスを有するとともに、各副制御部から前記主制御部にテスト信号を伝送するための、前記一方向バスとは異なる信号線を有する電子機器における異常を診断する方法であって、
前記主制御部から所定のパケットデータを前記一方向バスに送出する第１の送出ステップと、
各副制御部において、前記パケットデータを受信して次段に転送する転送ステップと、
前記副制御部が前記主制御部に送信した前記パケットデータを、前記主制御部が正常に受信したか否かに応じて、この電子機器のいずれかの箇所で異常があるかどうかを判定する判定ステップと、
前記判定ステップによって異常があると判定された場合に、前記主制御部からテスト用パケットを前記一方向バスに送出する第２の送出ステップと、
前記テスト用パケットに応じて前記各副制御部から対応する前記信号線を介して伝送されるテスト信号の状態に基づいて、この電子機器の異常箇所を特定する異常箇所特定ステップと、
を有することを特徴とする方法。
【請求項７】
機器全体を制御する主制御部と特定の機能を実行するための複数の副制御部とをループ状に接続する一方向バスを有するとともに、各副制御部と前記主制御部との間を接続し、テスト信号を伝送するための、一方向バスとは異なる信号線を有する電子機器における異常を診断する方法であって、
前記主制御部から所定のパケットデータを前記一方向バスに送出する送出ステップと、
各副制御部において、前記パケットデータを受信して次段に転送する転送ステップと、
前記副制御部が前記主制御部に転送した前記パケットデータを、前記主制御部が正常に受信したか否かに応じて、この電子機器のいずれかの箇所で異常があるかどうかを判定する判定ステップと、
前記判定ステップによって異常があると判定された場合に、対応する前記信号線を介してこの電子機器の異常箇所を特定する異常箇所特定ステップと、
を有することを特徴とする方法。
【請求項８】
前記異常箇所特定ステップは、前記判定ステップによって異常があると判定された場合に、前記一方向バスの下流側の副制御部より異常診断を行うことを特徴とする請求項５乃至７のいずれかに記載の方法。
【請求項９】
請求項５乃至８のいずれかに記載の異常診断方法を前記主制御部に実行させるためのプログラム。
【請求項１０】
主制御部と、複数の副制御部とを含み、
前記主制御部および前記複数の副制御部のそれぞれは、
データ入力用バスを接続する第１のバス接続部と、
データ出力用バスを接続する第２のバス接続部と、
前記第１のバス接続部より入力した自身宛の処理要求パケットについては当該処理に応じた処理を行って前記第２のバス接続部より出力し、自身以外に宛てられた処理要求パケットについては前記第２のバス接続部にバイパスする処理手段と、を有し、
前記主制御部は更に、
前記複数の副制御部のそれぞれにテスト信号を送信するために、個々の副制御部と直接に接続されるテスト信号端子を有し、
前記複数の副制御部のそれぞれは更に、
前記テスト信号を入力するテスト信号入力部と、
当該テスト信号を受信した場合、前記第２のバス接続部を介してテスト用割り込みパケットを出力する手段と、を有し、
前記主制御部および複数の副制御部のそれぞれが有する第１および第２のバス接続部を互いに入出力の関係で接続することでループ状のデータバスを構成した電子機器であって、
前記主制御部は、
自身が有する第２のバス接続部に対して、前記複数の副制御部の全てがバイパスするコマンドパケットを出力して、自身が有する第１のバス接続部から当該コマンドパケットを受信したかどうかを判断することで、前記ループ状のデータバスにおける異常の有無を判定する判定手段と、
前記判定手段により異常があると判定された場合、前記テスト信号端子を介して個々の副制御部宛に前記テスト信号を送出し、それによる前記テスト用割り込みパケットを受信したかどうかを判断することで、異常箇所を特定する異常箇所特定手段と、
を有することを特徴とする電子機器。
【請求項１１】
前記異常箇所特定手段は、前記判定手段により異常があると判定された場合、前記テスト信号を送出し、それによる前記テスト用割り込みパケットを受信したかどうかを判断することを、前記ループ状の構成における下流側の副制御部から順に行っていくことで異常箇所を絞り込んでいくことを特徴とする請求項１０に記載の電子機器。
【請求項１２】
主制御部と、複数の副制御部とを含み、
前記主制御部および前記複数の副制御部のそれぞれは、
データ入力用バスを接続する第１のバス接続部と、
データ出力用バスを接続する第２のバス接続部と、
前記第１のバス接続部より入力した自身宛の処理要求パケットについては当該処理に応じた処理を行って前記第２のバス接続部より出力し、自身以外に宛てられた処理要求パケットについては前記第２のバス接続部にバイパスする処理手段と、を有し、
前記主制御部は更に、
前記複数の副制御部のそれぞれよりテスト信号を受信するために、個々の副制御部と直接に接続されるテスト信号端子を有し、
前記複数の副制御部のそれぞれは更に、
前記第１のバス接続部を介してテスト用割り込みパケットを受信した場合、前記主制御部に前記テスト信号を出力するテスト信号出力手段を有し、
前記主制御部および複数の副制御部のそれぞれが有する第１および第２のバス接続部を互いに入出力の関係で接続することでループ状のデータバスを構成した電子機器であって、
前記主制御部は、
自身が有する第２のバス接続部に対して、前記複数の副制御部の全てがバイパスするコマンドパケットを出力して、自身が有する第１のバス接続部から当該コマンドパケットを受信したかどうかを判断することで、前記ループ状のデータバスにおける異常の有無を判定する判定手段と、
前記判定手段により異常があると判定された場合、自身が有する第２のバス接続部に対して、前記テスト用割り込みパケットを出力し、それによる前記テスト信号を受信したかどうかを判断することで、異常箇所を特定する異常箇所特定手段と、
を有することを特徴とする電子機器。
【請求項１３】
前記異常箇所特定手段は、前記判定手段により異常があると判定された場合、前記テスト用割り込みパケットを出力し、それによる前記テスト信号を受信したかどうかを判断することを、前記ループ状の構成における下流側の副制御部から順に行っていくことで異常箇所を絞り込んでいくことを特徴とする請求項１２に記載の電子機器。
【請求項１４】
主制御部と、複数の副制御部とを含み、
前記主制御部および前記複数の副制御部のそれぞれは、
データ入力用バスを接続する第１のバス接続部と、
データ出力用バスを接続する第２のバス接続部と、
前記第１のバス接続部より入力した自身宛の処理要求パケットについては当該処理に応じた処理を行って前記第２のバス接続部より出力し、自身以外に宛てられた処理要求パケットについては前記第２のバス接続部にバイパスする処理手段と、を有し、
前記主制御部は更に、
前記複数の副制御部のそれぞれにテスト信号を送信するために、個々の副制御部と直接に接続されるテスト信号端子を有し、
前記複数の副制御部のそれぞれは更に、
前記テスト信号を入力するテスト信号入力部と、
当該テスト信号を受信した場合、前記第２のバス接続部を介してテスト用割り込みパケットを出力する手段と、を有し、
前記主制御部および複数の副制御部のそれぞれが有する第１および第２のバス接続部を互いに入出力の関係で接続することでループ状のデータバスを構成した電子機器における異常を診断する方法であって、
前記主制御部が、
自身が有する第２のバス接続部に対して、前記複数の副制御部の全てがバイパスするコマンドパケットを出力して、自身が有する第１のバス接続部から当該コマンドパケットを受信したかどうかを判断することで、前記ループ状のデータバスにおける異常の有無を判定する判定ステップと、
前記判定ステップにより異常があると判定された場合、前記テスト信号端子を介して個々の副制御部宛に前記テスト信号を送出し、それによる前記テスト用割り込みパケットを受信したかどうかを判断することで、異常箇所を特定する異常箇所特定ステップと、
を有することを特徴とする方法。
【請求項１５】
前記異常箇所特定ステップは、前記判定ステップにより異常があると判定された場合、前記テスト信号を送出し、それによる前記テスト用割り込みパケットを受信したかどうかを判断することを、前記ループ状の構成における下流側の副制御部から順に行っていくことで異常箇所を絞り込んでいくことを特徴とする請求項１４に記載の方法。
【請求項１６】
主制御部と、複数の副制御部とを含み、
前記主制御部および前記複数の副制御部のそれぞれは、
データ入力用バスを接続する第１のバス接続部と、
データ出力用バスを接続する第２のバス接続部と、
前記第１のバス接続部より入力した自身宛の処理要求パケットについては当該処理に応じた処理を行って前記第２のバス接続部より出力し、自身以外に宛てられた処理要求パケットについては前記第２のバス接続部にバイパスする処理手段と、を有し、
前記主制御部は更に、
前記複数の副制御部のそれぞれよりテスト信号を受信するために、個々の副制御部と直接に接続されるテスト信号端子を有し、
前記複数の副制御部のそれぞれは更に、
前記第１のバス接続部を介してテスト用割り込みパケットを受信した場合、前記主制御部に前記テスト信号を出力するテスト信号出力手段を有し、
前記主制御部および複数の副制御部のそれぞれが有する第１および第２のバス接続部を互いに入出力の関係で接続することでループ状のデータバスを構成した電子機器における異常を診断する方法であって、
前記主制御部が、
自身が有する第２のバス接続部に対して、前記複数の副制御部の全てがバイパスするコマンドパケットを出力して、自身が有する第１のバス接続部から当該コマンドパケットを受信したかどうかを判断することで、前記ループ状のデータバスにおける異常の有無を判定する判定ステップと、
前記判定ステップにより異常があると判定された場合、自身が有する第２のバス接続部に対して、前記テスト用割り込みパケットを出力し、それによる前記テスト信号を受信したかどうかを判断することで、異常箇所を特定する異常箇所特定ステップと、
を有することを特徴とする方法。
【請求項１７】
前記異常箇所特定ステップは、前記判定ステップにより異常があると判定された場合、前記テスト用割り込みパケットを出力し、それによる前記テスト信号を受信したかどうかを判断することを、前記ループ状の構成における下流側の副制御部から順に行っていくことで異常箇所を絞り込んでいくことを特徴とする請求項１６に記載の方法。
【請求項１８】
請求項１４乃至１７のいずれかに記載の方法を前記主制御部に実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置等の電子機器の故障診断を行う技術に関する。
【背景技術】
【０００２】
コンピュータ装置をはじめとして、データ処理速度の高速化に伴いユニット間、デバイス間でのデータ転送速度を高速化する必要が生じている。このためデバイス間の接続方法はｒｅａｄ／ｗｒｉｔｅ信号による非同期なパラレルバス接続から基準クロックを使用して同期転送するパラレルバス方式（例えばＰＣＩバス）に移行し、さらにはバス上の転送クロックを高速化するとともにバスの信号の数を減らすシリアルバス化が図られている。
【０００３】
さらに、特開２００２−２３０５３６号公報（特許文献１）に開示されているように、データの転送方向を双方向ではなく一方向に固定した専用のデータ転送方式も提案されている。シリアルバス化することで信号の本数を減らすことができデバイス間の物理的接続が容易になる。また、データ転送が一方通行になることでインターフェース回路のタイミング設計に余裕を持つことが可能となる。
【０００４】
また、特開平４−１００４４６号公報（特許文献２）には、リング状にＬＡＮに接続された各デバイス間を転送するパケットによってパケットエラーを受信した場合、通常系のネットワークから予備系のネットワークに切換えたり、故障デバイスを切り離したりする技術が開示されている。しかし、特に画像形成装置内部では、各デバイスで一連の処理を行うため接続されたデバイスを切り離したり使わないようにすることは好ましくない。
【０００５】
さらに、特開平０２−１５３６５５号公報（特許文献３）には、通信制御集積回路内部の折り返し通信試験を行うことにより通信制御集積回路の障害の有無を判断する技術が開示されている。しかし、装置内部の故障箇所を特定するために、内部との折り返し通信試験や外部との折り返し通信試験が必要であり、複雑な制御が必要である。特に外部との通信を行わない装置の場合には、故障箇所の特定が困難である。
【０００６】
【特許文献１】特開２００２−２３０５３６号公報
【特許文献２】特開平４−１００４４６号公報
【特許文献３】特開平０２−１５３６５５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
このようにデバイス間バスのシリアル化、一方通行化はデータ転送速度の向上のためには重要な技術であるが、個々のデバイスがデイジーチェーン接続またはループ接続されていると接続箇所のどこか１カ所でも不具合を生じた場合には全てのデバイスに対してアクセスできなくなるため、不良があることしか判らず、専用の測定器を用いるなどの大がかりなテストをしなければ不良箇所の特定ができないという不都合がある。
【０００８】
デバイス間の異常診断の方法として、装置の製造現場においてはバウンダリスキャン方式を用いることが一般的に行われているが、バウンダリスキャンは設置後の装置の自己診断には不向きである。すなわちバウンダリスキャンに必要なテストデータはデバイスと１対１に対応したものであり、デバイスが変更されたバージョンの場合はそのデバイスに適合したテストデータを使用する必要がある。そうすると、自己診断する場合にはデバイスのバージョンを調べて適合するテストデータを選択しなければならない。しかし、デバイスへのアクセスができない状態でデバイスのバージョンを調べることはできないため、必要な情報をあらかじめ記憶しておくなどの副次的な手段を講じておく必要がある。また、バウンダリスキャン用のテストデータは、大規模なＬＳＩの場合はたとえばＬＳＩ１つあたり１００ＫＢ近いサイズとなるため、コストの厳しい組み込みシステムでテストデータをあらかじめ用意しておくことは現実的ではない。
【０００９】
そこで、本発明は、複数の制御部が一方向バスによってループ状に接続された構成を有する電子機器において、容易にその構成の異常箇所を特定できるようにすることを目的とする。
【課題を解決するための手段】
【００１０】
本発明の一側面によれば例えば、機器全体を制御する主制御部と特定の機能を実行するための複数の副制御部とをループ状に接続する一方向バスを有する電子機器であって、前記主制御部から各副制御部にテスト信号を伝送するための、前記一方向バスとは異なる信号線と、前記主制御部から所定のパケットデータを前記一方向バスに送出する第１の送出手段と、各副制御部において、前記パケットデータを受信して次段に転送する転送手段と、前記副制御部が前記主制御部に転送した前記パケットデータを、前記主制御部が正常に受信したか否かに応じて、この電子機器のいずれかの箇所で異常があるかどうかを判定する判定手段と、前記判定手段によって異常があると判定された場合に、前記主制御部から前記信号線を介して各副制御部に前記テスト信号を送出する第２の送出手段と、前記テスト信号の送信先の副制御部からそのテスト信号に応じて前記一方向バスを介して転送されるテストパケットを正常に受信したか否かに基づいて、この電子機器の異常箇所を特定する異常箇所特定手段とを有することを特徴とする電子機器が提供される。
【００１１】
本発明の別の側面によれば、機器全体を制御する主制御部と特定の機能を実行するための複数の副制御部とをループ状に接続する一方向バスを有する電子機器であって、各副制御部から前記主制御部にテスト信号を伝送するための、前記一方向バスとは異なる信号線と、前記主制御部から所定のパケットデータを前記一方向バスに送出する第１の送出手段と、各副制御部において、前記パケットデータを受信して次段に転送する転送手段と、前記副制御部が前記主制御部に送信した前記パケットデータを、前記主制御部が正常に受信したか否かに応じて、この電子機器のいずれかの箇所で異常があるかどうかを判定する判定手段と、前記判定手段によって異常があると判定された場合に、前記主制御部からテスト用パケットを前記一方向バスに送出する第２の送出手段と、前記テスト用パケットに応じて前記各副制御部から対応する前記信号線を介して伝送されるテスト信号の状態に基づいて、この電子機器の異常箇所を特定する異常箇所特定手段とを有することを特徴とする電子機器が提供される。
【００１２】
本発明の更に別の側面によれば、機器全体を制御する主制御部と特定の機能を実行するための複数の副制御部とをループ状に接続する一方向バスを有する電子機器であって、各副制御部と前記主制御部との間を接続し、テスト信号を伝送するための、一方向バスとは異なる信号線と、前記主制御部から所定のパケットデータを前記一方向バスに送出する送出手段と、各副制御部において、前記パケットデータを受信して次段に転送する転送手段と、前記副制御部が前記主制御部に転送した前記パケットデータを、前記主制御部が正常に受信したか否かに応じて、この電子機器のいずれかの箇所で異常があるかどうかを判定する判定手段と、前記判定手段によって異常があると判定された場合に、対応する前記信号線を介してこの電子機器の異常箇所を特定する異常箇所特定手段とを有することを特徴とする電子機器も提供される。
【発明の効果】
【００１３】
本発明によれば、複数の制御部が一方向バスによってループ状に接続された構成を有する電子機器において、容易にその構成の異常箇所を特定することができる。
【発明を実施するための最良の形態】
【００１４】
以下、図面を参照して本発明の好適な実施形態について詳細に説明する。
【００１５】
（実施形態１）
図１は、本発明に係る電子機器としてのデジタルカラー複写機（画像形成装置）の構成を示す図である。ここでは、デジタルカラー複写機について説明するが、これに限らずプリンタ、スキャナ、画像データを通信網を介して送信する画像通信装置、デジタルカメラなどであってもよい。
【００１６】
同図において、１０１はこの複写機の処理全体を統括的に制御する主制御部としてのメインプロセッサ（ＭＡＩＮ）であり、１０２はＭＡＩＮ１０１の主メモリとして機能するシンクロナスダイナミックメモリ（ＲＡＭ）、１０３はブートアップ用プログラム等を記憶するリードオンリーメモリ（ＲＯＭ）、１０４は制御プログラム等を記憶するハードディスク（ＨＤ）である。
【００１７】
１０５はＥｔｈｅｒｎｅｔ（登録商標）に準拠したローカルエリアネットワーク（ＬＡＮ）、１０６は画像データのプリンタ１０７への出力機能を実行する第１の副制御部としての画像出力プロセッサ（ＶＯ）、１０７はプリンタユニットである。
【００１８】
また、１０８は画像の回転、拡大縮小、色味の修正などを行う第２の副制御部としての画像処理プロセッサ（ＩＰ）、１０９はＩＰ１０８における画像処理用の主メモリとして機能するシンクロナスダイナミックメモリ（ＲＡＭ）、１１０はスキャナユニット１１１からの画像データ入力機能を担う第３の副制御部としての画像入力プロセッサ（ＶＩ）、１１１はスキャナユニットである。
【００１９】
主制御部であるＭＡＩＮ１０１に対し、ＶＯ１０６、ＩＰ１０８、ＶＩ１１０はそれぞれ、上記したような特定の機能を実行する副制御部としてのサブプロセッサである。ＭＡＩＮ１０１、ＶＯ１０６、ＩＰ１０８、ＶＩ１１０の間は、一方向のシリアルバス（以下、単に「シリアルバス」ともいう。）によってループ状に接続され、各プロセッサ間でデータ伝送が行われる構成である。具体的には、図示のように、ＭＡＩＮ１０１−ＶＯ１０６間は、信号がＭＡＩＮ１０１からＶＯ１０６に向かうシリアルバス１１２ａによって接続され、ＶＯ１０６−ＩＰ１０８間は、信号がＶＯ１０６からＩＰ１０８に向かうシリアルバス１１２ｂによって接続され、ＩＰ１０８−ＶＩ１１０間は、信号がＩＰ１０８からＶＩ１１０に向かうシリアルバス１１２ｃによって接続され、ＶＩ１１０−ＭＡＩＮ１０１間は、信号がＶＩ１１０からＭＡＩＮ１０１に向かうシリアルバス１１２ｄによって接続されている。
【００２０】
本実施形態においては、さらに、ＭＡＩＮ１０１から各サブプロセッサ、すなわちＶＯ１０６、ＩＰ１０８、ＶＩ１１０にそれぞれ、後述するテスト信号を送信するための信号線１１３ａ、１１３ｂ、１１３ｃが接続されている。これらの信号線は、上記のシリアルバスとは独立に接続されたものである。
【００２１】
上記のような構成より、ＭＡＩＮ１０１はＲＡＭ１０２上に保持される画像データをパケットデータに変換してＶＯ１０６に転送することにより、プリンタ１０７で出力して画像形成を行うことができる。またＲＡＭ１０２上に保持される画像データをＩＰ１０８に転送して画像処理することで画像の回転、拡大縮小、色味の修正などを行うことができる。またＶＩ１１０で受信したスキャナ１１１のスキャン画像データを受け取り、ＲＡＭ１０２上に格納することもできる。また、ＭＡＩＮ１０１はＬＡＮ１０５を通じてネットワーク上のコンピュータなど他の装置と通信することもできる。
【００２２】
ＭＡＩＮ１０１、ＶＯ１０６、ＩＰ１０８、ＶＩ１１０はそれぞれ大規模集積回路（ＶＬＳＩ）であり、以下、各々の詳しい構成を説明する。
【００２３】
ＭＡＩＮ１０１は図２に示すような内部構成を有する。
【００２４】
２０１はＣＰＵ、２０２はクロスバースイッチ（ＸＢ）、２０３はEthernet(登録商標）の物理層と接続するための物理層インターフェース（ＰＨＹ）、２０４はローカルエリアネットワークの通信を行うＬＡＮコントローラ（ＬＡＮＣ）、２０５はメモリコントローラ（ＭＣ）、２０６はシリアルバス出力インターフェース（ＳＢＯ）、２０７はシリアルバス入力インターフェース（ＳＢＩ）、２０８はハードディスクコントローラ（ＨＤＣ）、２０９は入出力ポート（ＩＯ）、２１０は割り込みコントローラ（ＩＣ）である。
【００２５】
ＣＰＵ２０１は、ＲＯＭ１０３およびＲＡＭ１０２に保持されているプログラムコードを実行して装置全体の制御を行う。ＲＯＭ１０３にはブートアップ用プログラムが格納されており、装置が起動するとＣＰＵ２０１はＲＯＭ１０３の内容を実行開始する。ブートアップ用プログラムはＨＤ１０４に格納されている制御プログラムをＲＡＭ１０２にロードして同プログラムにジャンプすることにより制御プログラム実行を開始する。
【００２６】
ＸＢ２０２はＭＡＩＮ１０１の内部の各ユニット間のデータ転送を担当するユニットであり、各ユニットの割り当てられているアドレス空間に従ってデータを転送する。また複数のユニットから同時にアクセスが行われた場合の調停機能も有する。
【００２７】
ＬＡＮＣ２０４、ＰＨＹ２０３は、ネットワークを経由して他の装置と通信する機能を持つ。ＭＣ２０５はＲＡＭ１０２、ＲＯＭ１０３へのアクセスを制御する。ＳＢＯ２０６はシリアルバスの出力を担当するインターフェース回路であり、ＲＡＭ１０２に格納されているデータを所定のパケット形式に変換して送信する。ＳＢＩ２０７はシリアルバス入力インターフェースであり、受信したパケットデータを内部データに変換して所定のユニットに転送する。
【００２８】
ＨＤＣ２０８はＨＤ１０４の入出力を行うための制御回路であり、例えばＵｌｔｒａＤＭＡ方式によりハードディスクを制御するものである。ＨＤ１０４は、ＣＰＵ２０１が実行するプログラムデータを格納するほか、ＲＡＭ１０２上に記憶されている画像データを保存するなどの機能を受け持つ。ＩＯ２０９は入出力ポートであり、本実施形態ではＴＥＳＴ１、ＴＥＳＴ２、ＴＥＳＴ３の３つの出力ポートが設けられ、それぞれ信号線１１３ａ、１１３ｂ、１１３ｃを介して伝送される。これらの出力ポートはＣＰＵ２０１からの設定により論理レベルをＨ／Ｌに設定することができる。
【００２９】
ＩＣ２１０はＭＡＩＮ１０１内部の割り込みを処理するユニットであり、各部のユニットから発生した割り込みおよびＳＢＩ２０７に受信された割り込みパケットの情報を集約してＣＰＵ２０１に通知するものである。
【００３０】
図３は、ＶＯプロセッサ１０６の構成を示す図である。
【００３１】
同図において、３０１はシリアルバス入力インターフェース（ＳＢＩ）、３０２はシリアルバス出力インターフェース（ＳＢＯ）、３０３はパケットインタープリタ（ＰＩ）、３０４はプリンタ用画像処理ユニット（ＰＩＰ）、３０５はプリンタ出力インターフェース（ＰＲＣ）、３０６はシリアル通信ユニット（ＵＡＲＴ）、３０７は割り込みコントローラ（ＩＣ）である。
【００３２】
ＳＢＩ３０１、ＳＢＯ３０２は上記したＭＡＩＮ１０１に内蔵されるものと基本的に同じ働きである。ＰＩ３０３は、ＳＢＩ３０１を介してシリアルバス１１２ａから受信されたパケットデータが何であるか判断するユニットであり、後に述べるがコマンドパケット／データパケット／割り込みパケットの別を判断する。またＰＩ３０３は、受信したパケットデータがこのＶＯ１０６に対するものかどうかを判定し、さらにはＶＯ１０６の内部のユニットに対するものかどうかも判断する。ＰＩ３０３は受信したパケットデータが他のプロセッサに対するパケットであった場合はすぐにＳＢＯ３０２からシリアルバス１１２ｂに送出して次のユニット（すなわちＩＰ１０８）に送信する。
【００３３】
受信したパケットがコマンドパケットでＶＩ３０１内部のユニットに対するコマンドである場合は、各ユニットのレジスタのＲＥＡＤ／ＷＲＩＴＥを実行する。またデータパケットであってＰＩＰ３０３へのデータである場合はデータの中身の画像データをＰＩＰ３０４へ転送する。ＰＩＰ３０４は受け取った画像データをプリンタ１０７での出力に適したデータに変換し、ＰＲＣ３０５でプリンタへデータを転送して印字動作を実行する。
【００３４】
ＰＩＰ３０４はＲＧＢ画像を受け取った場合はＣＭＹＫの色データに変換するほか、プリンタの特性を補正するためのγカーブ変換機能などを持っている。ＰＲＣ３０５は画像データをプリンタユニット１０７の動作速度に変換して出力する機能を有する。ＵＡＲＴ３０６はプリンタユニット１０７との通信を受け持つユニットであり、プリンタユニット１０７の状態を検出したり印字動作を指示したりするものである。
【００３５】
３０７は割り込みコントローラ（ＩＣ）でありＶＯプロセッサ内部の割り込み要因を検出してＰＩ３０３に割り込みパケットの生成を指示する。生成された割り込みパケットはＳＢＯ３０２を経由して次のプロセッサへ送信される。ＩＣの割り込み要因はコマンドパケットにより解除やマスクすることが可能である。ここでＩＣ３０７は、ＭＡＩＮ１０１からのＴＥＳＴ１信号を受け取ると、ＰＩ３０３に後述するテスト用割り込みパケットの生成を指示する。これによって、例えば、ＶＯプロセッサ内の各ユニットのレジスタへのＲＥＡＤ／ＷＲＩＴＥができず、コマンドパケットを受け付けられない状態であっても、テスト用割り込みパケットが生成し、シリアルバスに送出される。したがって、ＶＯプロセッサ内に異常が発生し、コマンドパケットを後段のＩＰ１０８、ＶＩ１１０、ＭＡＩＮ１０１に出力できないような状態になっていても、後段のＩＰ１０８、ＶＩ１１０、ＭＡＩＮ１０１との通信インターフェースが確実に機能しているかをチェックすることができる。
【００３６】
図４は、画像処理プロセッサＩＰ１０８の構成を示した図である。
【００３７】
４０１はシリアルバス入力インターフェース（ＳＢＩ）、４０２はシリアルバス出力インターフェース（ＳＢＯ）、４０３はパケットインタープリタ（ＰＩ）、４０４は割り込みコントローラ（ＩＣ）、４０５は解像度変換ユニット（ＲＳＣ）、４０６はメモリコントローラ（ＭＣ）、４０７は二値化ユニット（ＢＩ）、４０８は回転ユニット（ＲＯＴ）である。
【００３８】
ＳＢＩ４０１、ＳＢＯ４０２、ＰＩ４０３の機能はそれぞれ、上記したＶＩ１０６のものと同様の機能を有する。ＰＩ４０３は受け取ったパケットデータがコマンドパケットであってＩＰ１０８内部のユニットに対するものであれば、各部ユニットのレジスタのＲＥＡＤ／ＷＲＩＴＥを行い、また、データパケットであってＩＰ１０８内部のユニットに対するものであった場合は、そのユニットに対してデータを受け渡し、ユニットで処理されて戻ってきたデータをＳＢＯ４０２から送信する。
【００３９】
ＲＳＣ４０５は、データの解像度を変換することで拡大・縮小を行うものである。ＭＣ４０６はＲＡＭ１０９へのアクセスを制御するユニットであり、ＩＰ内部のユニットがワーク領域としてＲＡＭ１０９を使用することを可能とするものである。
【００４０】
ＢＩ４０７は多値データをハーフトーン処理して二値データに変換する機能を持つ。この機能は主としてスキャンした画像を二値化してコンピュータに転送する際に使用されるものである。
【００４１】
ＲＯＴ４０８は画像回転を実行するものであり、入力された画像データを９０度単位で回転させて新しいパケットを生成する機能を持っている。
【００４２】
ＩＣ４０４はＩＰ１０８内部で生じる割り込み要因を検出してＰＩ４０３に割り込みパケットの生成を指示する。ここで、ＩＣ４０４は、ＭＡＩＮ１０１からのＴＥＳＴ２信号を受け取ると、ＰＩ４０３に後述するテスト用割り込みパケットの生成を指示する。これによって、例えば、ＩＰプロセッサ内の各ユニットのレジスタへのＲＥＡＤ／ＷＲＩＴＥができず、コマンドパケットを受け付けられない状態であっても、テスト用割り込みパケットが生成し、シリアルバスに送出される。したがって、ＩＰプロセッサ内の異常が発生し、コマンドパケットを後段（ＶＩ１１０、ＭＡＩＮ１０１など）に出力できないような状態になっていても、後段のＶＩ１１０、ＭＡＩＮ１０１との通信インターフェースが確実に機能しているか確認することができる。
【００４３】
図５は、ＶＩプロセッサ１１０の構成を示す図である。
【００４４】
５０１はシリアルバス入力インターフェース（ＳＢＩ）、５０２はシリアルバス出力インターフェース（ＳＢＯ）、５０３はパケットインタープリタ（ＰＩ）、５０４はスキャナ入力インターフェース（ＳＣＣ）、５０５はシリアル通信コントローラ（ＵＡＲＴ）、５０６は割り込みコントローラ（ＩＣ）である。
【００４５】
ＳＢＩ５０１、ＳＢＯ５０２、ＰＩ５０３、ＩＣ５０６はそれぞれ、上記のＶＯプロセッサ１０６におけるものと同様の機能を有する。ＳＣＣ５０４はスキャナ１１１から送られてくる画像データを受信してＰＩ５０３に受け渡すインターフェースである。ＰＩ５０３は受け取ったデータをデータパケットに変換してＳＢＯ５０２から送信する。またＵＡＲＴ５０５はスキャナユニット１１１との通信を受け持つものである。ＩＣ５０６は、ＭＡＩＮ１０１からのＴＥＳＴ３信号を受け取ると、ＰＩ５０３に後述するテスト用割り込みパケットの生成を指示する。これによって、例えば、ＶＩプロセッサ内の各ユニットのレジスタへのＲＥＡＤ／ＷＲＩＴＥができず、コマンドパケットを受け付けられない状態であっても、テスト用割り込みパケットを生成され、シリアルバスに送出される。したがって、ＶＩプロセッサ内の異常が発生し、コマンドパケットを後段（ＭＡＩＮ１０１など）に出力できないような状態になっていても、後段のＭＡＩＮ１０１との通信インターフェースが確実に機能しているか確認することができる。
【００４６】
次にシリアルバスの構成を簡単に説明する。図６に、上記した各プロセッサにおけるＳＢＯとそのプロセッサの次のプロセッサのＳＢＩとを接続するシリアルバスの構成を示す。
【００４７】
プロセッサ内部はＣＬＫ６０（６０ＭＨｚ）に同期して６４ビット幅のデータがＳＢＯに送られてくる。ＳＢＯはクロックを８倍のＣＬＫ４８０（４８０ＭＨｚ）に変換するとともに、データの幅を８ビット単位でシリアル化して送信する。すなわちクロックは８倍になり、データ幅は１／８になるのでデータ転送速度自体はプロセッサ内部とシリアルバス上で同等である。ＳＴＡＲＴ信号はパケットデータの先頭を示す信号である。
【００４８】
ＳＢＩはＳＴＡＲＴ信号を検出するとＣＬＫ４８０に同期してＤＡＴＡを取り込み、内部で６０ＭＨｚのＣＬＫ６０に同期する６４ビットのデータに戻してプロセッサ内部に転送する。同図においてＷＡＩＴ信号は何らかの要因で一時的にＳＢＩがパケットデータを受け取れない状態になったときにアサートされる信号であり、ＷＡＩＴ信号がアサートされている間はＳＢＯは出力を停止する。ＳＢＯ、ＳＢＩはＷＡＩＴ信号を制御する間にバッファオーバーフローが生じないだけのバッファを内蔵している。
【００４９】
次に、パケットデータの形式について説明する。図７Ａはデータパケットの構造を示す図、図７Ｂはコマンドパケットの構造を示す図、図７Ｃは割り込みパケットの構造を示す図である。いずれのパケットにおいても、先頭の１６バイトがパケットの属性を表すヘッダー部であり、その後にデータ部がつながる構造となっている。
【００５０】
図７Ａのデータパケットのヘッダーは、図示のように、先頭からパケットタイプ、チップＩＤ、イメージタイプ、ジョブＩＤ、処理命令、データ長で構成される。
【００５１】
パケットタイプがパケットデータの形式が何かを識別するものであり、例えば００Ｈがデータパケット、０１Ｈがコマンドパケット、０２Ｈが割り込みパケットであることを示す。
【００５２】
チップＩＤはそのパケットデータがどのプロセッサに対するパケットであるかという宛先を示すものである。チップＩＤは個々のプロセッサにそれぞれ別の番号が設定されているため、それぞれのプロセッサはこの属性を見ることにより自分宛のパケットデータかどうかを判断することができる。
【００５３】
イメージタイプはデータパケットの中に含まれている画像データの形式を表す属性であり、００ＨはＲＧＢ２４ビットのカラー画像、０１Ｈは白黒８ビット画像、０２ＨはＹＵＶカラー画像、というように定義されている。
【００５４】
ジョブＩＤは大きなデータを複数パケットデータに分割して処理を行う際に同一のデータであることを識別できるよう、同じデータに対して同じジョブＩＤを割り振る。
【００５５】
処理命令は各プロセッサの内部のどのユニットにどのような処理を行わせるかを規定する属性であり、たとえばＩＰ１０８で解像度変換を行わせる場合には、ここにＲＳＣ４０５のユニット番号と処理モードを指定することにより、所定の動作を実行する。
【００５６】
データ長はヘッダーの後ろに続く実際のデータの長さを表すフィールドである。データパケットのデータ長は１６バイトの整数倍で構成されるため、余った部分はパディングとして００Ｈを詰めて１６バイトの倍数になるように各プロセッサのＳＢＯが処理を行う。
【００５７】
図７Ｂに示すコマンドパケットの場合、パケットタイプは先に説明したとおり０１Ｈであり、次のチップＩＤもデータパケットの場合と同じ意味を持つ。次のコマンドタイプ（CMD TYPE）、コマンド番号（CMD NUM）のフィールドでそのプロセッサに対するコマンドを指示する。CMD TYPEは００ＨでＷＲＩＴＥ、０１ＨでＲＥＡＤを実行する。CMD NUMはデータ部に存在するコマンドの数を表すものである。この数に対応してデータ部にはＲＥＡＤ／ＷＲＩＴＥすべきレジスタのアドレスとデータの対が書き込まれる。コマンド部は１６バイトの整数倍であり、それに満たない部分にはＳＢＯにより００Ｈがパディングされる。
【００５８】
図７Ｃに示す割り込みパケットは、パケットタイプ＝０２Ｈで、割り込みを生じたプロセッサのチップＩＤと割り込みを発生したユニットＩＤがヘッダーに含まれている。割り込みパケットを処理するのはＭＡＩＮプロセッサ１０１のみであるため、ヘッダーのチップＩＤは宛先を示すものではなく、割り込みを生じたプロセッサを示すものである。データ部には通常は割り込み内容を示す各ユニットの要因レジスタのフィールドがコピーされている。割り込みデータ部は１６バイトの整数倍であり、それに満たない部分にはＳＢＯにより００Ｈがパディングされる。
【００５９】
本実施形態におけるデジタルカラー複写機の構成は概ね上記したとおりである。次に本実施形態における電子機器としてのデジタルカラー複写機の異常診断処理を詳細に説明する。
【００６０】
図９は、本実施形態における異常診断処理を示すフローチャートである。このフローチャートに対応するプログラムはＨＤ１０４に記憶された制御プログラムに含まれ、上述したとおりＲＡＭ１０２にロードされＭＡＩＮ１０１におけるＣＰＵ２０１によって実行されるものである。
【００６１】
まず、ＭＡＩＮプロセッサ１０１が自身宛のコマンドパケットをＳＢＯ２０６からシリアルバス１１２ａに送出する（ステップＳ１）。かわりに、シリアルバスループ上に存在しないチップＩＤを設定したコマンドパケットを送信するようにしてもよい。回路接続に異常がなければ、他のプロセッサはいずれも自分自身のチップＩＤと異なるパケットデータと認識して、そのパケットデータをそのまま次のプロセッサに渡すことになるので、ＭＡＩＮプロセッサ１０１のＳＢＩ２０７にそのパケットデータが戻ってくるはずである。
【００６２】
そこで、送信したパケットデータが正常に戻ってきたか否かを判定し（ステップＳ２）、正常に戻ってくれば「異常なし」と判定する。一方、正常に戻ってこなかったか、あるいはパケットデータが壊れていた場合は、いずれかのプロセッサが故障しているか、あるいはプロセッサ間を接続するシリアルバスの異常によるものと推測される。この場合にはステップＳ３以降の処理によって、それぞれのプロセッサに対して診断のための割り込みパケットの生成を行わせ、各プロセッサ及びプロセッサ間の接続のテストを行う。
【００６３】
具体的には、まず、ＭＡＩＮ１０１を始点とするシリアルバスループの最下流に位置するＶＩプロセッサ１１０に対して、ＩＯポート２０９のＴＥＳＴ３信号をアサートする（ステップＳ３）。
【００６４】
ＶＩ１１０の割り込みコントローラＩＣ５０６は、このＴＥＳＴ３信号を受け取ると、あらかじめ決められたテスト用割り込みパケット（以下、単に「テストパケット」ともいう。）を生成するようＰＩ５０３に指示することは先述したとおりである。その結果、ＶＩはそのテストパケットをシリアルバス１１２ｄに送出することになる。
【００６５】
テスト用割り込みパケットのデータ構造例を図８に示す。割り込みパケットの構造自体は図７Ｃに示したものと同様であるが、データ部には実際の割り込みに関連するデータではなくてシリアルバス上のデータ信号８ビットに対するテストデータが埋め込まれている。すなわち、データ信号の８ビットに対してそれぞれの信号が１／０に変化することと、データ信号同士がショートしていないことが判断できるテストデータでもってデータ部を構成している。
【００６６】
ＭＡＩＮ１０１は、ＶＩ１１０からテストパケットを正常に受信したか否か（例えば、所定時間内に受信したか否か）を判断する（ステップＳ４）。ここで、所定時間内にテストパケットが受信されなかったときは、ＶＩ１１０の動作または、ＭＡＩＮ１０１−ＶＩ１１０間の接続に異常があると判断することができる。一方、テストパケットが受信されたときは、割り込みコントローラ２１０のレジスタに割り込みパケットのチップＩＤ、ユニットＩＤが格納され、データ部はＲＡＭ１０２の所定のアドレスに格納されたのち、割り込みがＣＰＵ２０１に通知される。ＣＰＵ２０１は割り込みパケットの受信割り込みを受けたならば、割り込みパケットを発生したプロセッサのチップＩＤ、ユニットＩＤ、データ部のデータを確認することで、ＶＩ１１０からテスト用割り込みパケットが正常に送られてきたことを確認し、少なくともＶＩプロセッサ１１０−ＭＡＩＮプロセッサ１０１間の接続およびＶＩプロセッサの動作には異常がないことを確認することができる。この場合処理は次のステップＳ５に進む。
【００６７】
ステップＳ５では、ＩＯポート２０９のＴＥＳＴ２信号をアサートし、それに応じてＩＰ１０８より転送されてくるであろうテストパケットを所定時間内に受信したか否かを判定する（ステップＳ６）。ここで、所定時間内にテストパケットが受信されなかったときは、ＩＰ１０８の動作または、ＶＩ１１０−ＩＰ１０８間の接続に異常があると判断することができる。一方、テストパケットが受信されたときは、ＩＰ１０８の動作または、ＶＩ１１０−ＩＰ１０８間の接続には異常がないことが確認でき、次のステップＳ７に進む。
【００６８】
ステップＳ７では、ＩＯポート２０９のＴＥＳＴ１信号をアサートし、それに応じてＶＯ１０６より転送されてくるであろうテストパケットを所定時間内に受信したか否かを判定する（ステップＳ８）。ここで、所定時間内にテストパケットが受信されなかったときは、ＶＯ１０６の動作または、ＩＰ１０８−ＶＯ１０６間の接続に異常があると判断することができる。一方、テストパケットが受信されたときは、ＭＡＩＮ１０１の動作または、ＶＯ１０６−ＭＡＩＮ１０１間の接続に異常があると推定できる。
【００６９】
以上説明した異常診断処理によれば、メインプロセッサから専用の信号線を介して伝送されるテスト信号に応じて各サブプロセッサより一方向のシリアルバスを介して転送されてくるであろうテストパケットを所定時間内に受信したか否かに応じて、この電子機器の異常箇所が特定される。なお、サブプロセッサにテスト信号を送出する順序はどのようにしてもよい。ただし、上述したように、メインプロセッサを始点とするバスループの最下流に位置するサブプロセッサから順にテストしていくようにすれば、効率よく異常箇所を特定することができる。また、サブプロセッサが、シリアルバスを介してＭＡＩＮ１０１から受信されたコマンドパケットを後段に送出できない状態であっても、信号線を介してＭＡＩＮ１０１の指示により各サブプロセッサにテスト用割り込みパケットを生成し、シリアルバスに送出させることができる。テスト用割り込みパケットを後段のシリアルバスに送出することで、後段の各プロセッサとの通信インターフェースが確実に機能しているか確認でき、異常箇所を特定できる。
【００７０】
（実施形態２）
上述した実施形態１では、各サブプロセッサは、メインプロセッサから専用の信号線を介して伝送されてくるテスト信号に応じてテストパケットをシリアルバスに送出する構成であった。これは、メインプロセッサからのテスト信号とサブプロセッサが送出するテストパケットとの関係を逆にして、各サブプロセッサは、メインプロセッサからシリアルバス送出されたテストパケットに応じて、専用の信号線を介してテスト信号をメインプロセッサに発する構成にしても同様の効果が得られる。
【００７１】
以下、図面を参照してこの構成について詳しく説明する。各図面中、実施形態１で説明した各部に対応する部分には同一符号を付してその説明を省略し、以下では対応する図面との相違点についてのみ説明する。
【００７２】
図１０は、本実施形態におけるデジタルカラー複写機の構成を示す図であり、図１に対応するものである。図１における信号線１１３ａ、１１３ｂ、１１３ｃはそれぞれ、ＭＡＩＮ１０１から対応するサブプロセッサに向かう信号線であったが、図１０の信号線１００ａ、１００ｂ、１００ｃは逆に、対応するサブプロセッサからＭＡＩＮ１０１に向かう信号線であることに留意されたい。
【００７３】
図１１は、本実施形態におけるＭＡＩＮ１０１の内部構成を示す図であり、図２に対応するものである。ＩＯ２０９にはＴＥＳＴ１、ＴＥＳＴ２、ＴＥＳＴ３の３つの入力ポートが設けられている。
【００７４】
図１２は、本実施形態におけるＶＯプロセッサ１０６の構成を示す図であり、図３に対応するものである。図３におけるＩＣ３０７は、ＴＥＳＴ１信号を受け取ると、ＰＩ３０３にテストパケットを生成するよう指示するものであったが、図１２におけるＶＯ１０６には入出力ポート（ＩＯ）３０８が設けられ、このＩＯ３０８が、テストパケットを受け取ったＰＩ３０３からの指示に応じてＴＥＳＴ１信号をアサートするように動作する。
【００７５】
図１３は、本実施形態におけるＩＰ１０８の構成を示す図であり、図４に対応するものである。図４におけるＩＣ４０４は、ＴＥＳＴ２信号を受け取ると、ＰＩ４０３にテストパケットを生成するよう指示するものであったが、図１３におけるＩＰ１０８には入出力ポート（ＩＯ）４０９が設けられ、このＩＯ４０９が、テストパケットを受け取ったＰＩ４０３からの指示に応じてＴＥＳＴ２信号をアサートするように動作する。
【００７６】
図１４は、本実施形態におけるＶＩプロセッサ１１０の構成を示す図であり、図５に対応するものである。図５におけるＩＣ５０６は、ＴＥＳＴ３信号を受け取ると、ＰＩ５０３にテストパケットを生成するよう指示するものであったが、図１４におけるＶＩ１１０には入出力ポート（ＩＯ）５０７が設けられ、このＩＯ５０７が、テストパケットを受け取ったＰＩ５０３からの指示に応じてＴＥＳＴ３信号をアサートするように動作する。
【００７７】
図１５は、本実施形態における異常診断処理を示すフローチャートである。このフローチャートに対応するプログラムはＨＤ１０４に記憶された生後プログラムに含まれ、上述したとおりＲＡＭ１０２にロードされＭＡＩＮ１０１におけるＣＰＵ２０１によって実行されるものである。
【００７８】
まず、ＭＡＩＮプロセッサ１０１が自身宛のコマンドパケットをＳＢＯ２０６からシリアルバス１００ａに送出する（ステップＳ２１）。回路接続に異常がなければ、他のプロセッサはいずれも自分自身のチップＩＤと異なるパケットデータと認識して、そのパケットデータをそのまま次のプロセッサに渡すことになるので、ＭＡＩＮプロセッサ１０１のＳＢＩ２０７にそのパケットデータが戻ってくるはずである。
【００７９】
そこで、送信したパケットデータが正常に戻ってきたか否かを判定し（ステップＳ２２）、正常に戻ってくれば「異常なし」と判定する。一方、正常に戻ってこなかったから、あるいはパケットデータが壊れていた場合は、いずれかのプロセッサが故障しているか、あるいはプロセッサ間を接続するシリアルバスの異常によるものと推測される。この場合にはステップＳ２３以降の処理によって、テストパケットを送出し、それによって各サブプロセッサからテスト信号を発信させることで各プロセッサ及びプロセッサ間の接続のテストを行う。
【００８０】
具体的には、まず、ＭＡＩＮプロセッサ１０１は、図８に示したような構造のテストパケットをシリアルバス１１２ａに送出する（ステップＳ２３）。
【００８１】
このテストパケットは、ヘッダーにおいてパケットタイプ＝０４Ｈで定義される診断のための特別なパケットである。それぞれのサブプロセッサはこのパケットを受信するとテストモードであることを検出し、テストデータ部が予め記憶しているデータと一致しているかどうかをテストし、テストデータ部が正しく受信できたことが確認できた場合はＴＥＳＴ信号をアサートする動作を行うとともに、テストパケットを次のプロセッサに転送するという動作を行うことになる。
【００８２】
したがって、ＶＯ１０６がテストパケットを受信すると、パケットインタープリタＰＩ３０３はＩＯ３０８にＴＥＳＴ１信号をアサートするよう指示するとともに、テストパケットをＳＢＯ３０２からそのまま次のＩＰ１０８に送信する。ＩＰ１０８のＰＩ４０３は同様にテストパケットを受信すると、ＩＯ４０９にＴＥＳＴ２信号をアサートさせ、テストパケットをＳＢＯ４０２から送信する。同様にＶＩ１１０でもテストパケットを受信するとＰＩ５０３はＩＯ５０７にＴＥＳＴ３信号をアサートさせるとともに、ＳＢＯ５０２からテストパケットを送信する。
【００８３】
ＭＡＩＮ１０１は、ステップＳ２３でテストパケットを送信したらならば、一定時間待機した後（ステップＳ２４）、入力ポートにおけるＴＥＳＴ１、ＴＥＳＴ２、ＴＥＳＴ３信号のレベル（状態）を調べることにより、ＶＯ１０６、ＩＰ１０８、ＶＩ１１０がそれぞれ正常にテスト用パケットデータを受信したかどうかを判定することができる。
【００８４】
具体的には、ステップＳ２５で、ＶＯ１０６からのＴＥＳＴ１信号がＨＩか否かを調べる。ここで、ＴＥＳＴ１がＨＩでなければ、ＶＯ１０６の動作または、ＭＡＩＮ１０１−ＶＯ１０６間の接続に異常があると判断することができる。一方、ＴＥＳＴ１がＨＩであれば、少なくともＶＯ１０６の動作または、ＭＡＩＮ１０１−ＶＯ１０６間の接続には異常がないと判断し、ステップＳ２６に進む。
【００８５】
ステップＳ２６では、ＩＰ１０８からのＴＥＳＴ２信号がＨＩか否かを調べる。ここで、ＴＥＳＴ２がＨＩでなければ、ＩＰ１０８の動作または、ＶＯ１０６−ＩＰ１０８間の接続に異常があると判断することができる。一方、ＴＥＳＴ２がＨＩであれば、少なくともＩＰ１０８の動作または、ＶＯ１０６−ＩＰ１０８間の接続には異常がないと判断し、ステップＳ２７に進む。
【００８６】
ステップＳ２７では、ＶＩ１１０からのＴＥＳＴ３信号がＨＩか否かを調べる。ここで、ＴＥＳＴ３がＨＩでなければ、ＶＩ１１０の動作または、ＩＰ１０８−ＶＩ１１０間の接続に異常があると判断することができる。一方、ＴＥＳＴ３がＨＩであれば、ＭＡＩＮ１０１の動作または、ＶＩ１１０−ＭＡＩＮ１０１間の接続に異常があると判断する。
【００８７】
このようにして、本実施形態によれば、テストパケットの送出に応じたサブプロセッサからのテスト信号を所定時間内に受信できたかどうかで、異常箇所を特定することができる。また、サブプロセッサが、シリアルバスを介してＭＡＩＮ１０１からのコマンドパケットを後段に送出できないような状態であっても、後段の各プロセッサとの通信インターフェースが確実に機能しているか確認でき、異常箇所を特定できる。
【００８８】
上記した実施形態２に係る電子機器の異常診断処理をまとめると、次のようになる。本電子機器は、機器全体を制御するメインプロセッサと特定の機能を実行するためのサブプロセッサとが一方向バスによってループ状に接続された構成を有するともに、各サブプロセッサからメインプロセッサにテスト信号を伝送するための、一方向バスとは異なる信号線を備えている。そして、異常診断処理としては、まず、メインプロセッサから所定のパケットデータを前記一方向バスに送出し、そのパケットデータが正常にメインプロセッサに戻ってくるか否かに応じて、この電子機器のいずれかの箇所で異常があるかどうかを判定する。次に、異常があると判定されたときに、一方向バスにテスト用パケットを送信し、そのテスト用パケットに応じてサブプロセッサより対応する信号線を介して伝送されてくるテスト信号の状態に基づいて、この電子機器の異常箇所を特定する。
【００８９】
なお、上述の各実施形態では、デジタルカラー複写機を例に説明したが、本発明はこれに限らず、複数のプロセッサが協働して所定の機能を実現する構成を有するさまざまな画像処理装置をはじめ、コンピュータ装置等の電子機器に広く適用することができる。
【００９０】
（他の実施形態）
以上、本発明の実施形態を詳述したが、本発明は、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用してもよい。また、本発明は、電子機器の異常診断方法として特定することも可能であることはいうまでもない。
【００９１】
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム（図９または図１５に示すフローチャートに対応したプログラム）を、システムあるいは装置に直接あるいは遠隔から供給し、そのシステムあるいは装置のコンピュータがその供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。その場合、プログラムの機能を有していれば、その形態はプログラムである必要はない。
【００９２】
従って、本発明の機能処理をコンピュータで実現するために、そのコンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明の特許請求の範囲には、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【００９３】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等、プログラムの形態を問わない。
【００９４】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ、ＤＶＤ−Ｒ）などがある。
【００９５】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、そのホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明のクレームに含まれるものである。
【００９６】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【００９７】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【００９８】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現される。
【図面の簡単な説明】
【００９９】
【図１】実施形態１におけるデジタルカラー複写機の構成を示す図である。
【図２】実施形態１におけるメインプロセッサの構成を示す図である。
【図３】実施形態１における画像出力プロセッサの構成を示す図である。
【図４】実施形態１における画像処理プロセッサの構成を示す図である。
【図５】実施形態１における画像入力プロセッサの構成を示す図である。
【図６】実施形態におけるプロセッサ間のインタフェースの構成を示す図である。
【図７Ａ】実施形態におけるデータパケットの構造例を示す図である。
【図７Ｂ】実施形態におけるコマンドパケットの構造例を示す図である。
【図７Ｃ】実施形態における割り込みパケットの構造例を示す図である。
【図８】実施形態におけるテスト用割り込みパケットの構造例を示す図である。
【図９】実施形態１における異常診断処理を示すフローチャートである。
【図１０】実施形態２におけるデジタルカラー複写機の構成を示す図である。
【図１１】実施形態２におけるメインプロセッサの構成を示す図である。
【図１２】実施形態２における画像出力プロセッサの構成を示す図である。
【図１３】実施形態２における画像処理プロセッサの構成を示す図である。
【図１４】実施形態２における画像入力プロセッサの構成を示す図である。
【図１５】実施形態２における異常診断処理を示すフローチャートである。
【図１】
2004158000.tif 000003
【図２】
2004158000.tif 000004
【図３】
2004158000.tif 000005
【図４】
2004158000.tif 000006
【図５】
2004158000.tif 000007
【図６】
2004158000.tif 000008
【図７Ａ】
2004158000.tif 000009
【図７Ｂ】
2004158000.tif 000010
【図７Ｃ】
2004158000.tif 000011
【図８】
2004158000.tif 000012
【図９】
2004158000.tif 000013
【図１０】
2004158000.tif 000014
【図１１】
2004158000.tif 000015
【図１２】
2004158000.tif 000016
【図１３】
2004158000.tif 000017
【図１４】
2004158000.tif 000018
【図１５】
2004158000.tif 000019