(57)【要約】【課題】内部リセットが発生したサブプロセッサをメインプロセッサで特定することができるようにする。【解決手段】第２のプロセッサは、内部リセットを行う内部リセット部と、内部リセットが発生したことに応じて、内部リセット発生信号を出力する内部リセット発生信号出力部と、内部リセットされたことに応じて、内部リセットの発生元であることを表す識別信号を出力する識別信号出力部とを備える。第１のプロセッサは、内部リセット発生検出信号が入力された場合、いずれかの他のプロセッサにおいて内部リセットが発生したことを検出する検出部と、検出部によって内部リセットの発生が検出された場合において、第２のプロセッサから識別信号が入力された場合、第２のプロセッサを、内部リセットの発生元のプロセッサとして特定する特定部とを備える。【選択図】図２
2018092488.tif 000002
【特許請求の範囲】
【請求項１】
第１のプロセッサおよび第２のプロセッサを含む、複数のプロセッサを備えた電子機器であって、
前記第２のプロセッサは、
当該第２のプロセッサにおいて不具合が発生したときに、当該第２のプロセッサの内部リセットを行う内部リセット部と、
当該第２のプロセッサが内部リセットされたことに応じて、内部リセットの発生を表す内部リセット発生信号を出力する内部リセット発生信号出力部と、
当該第２のプロセッサが内部リセットされたことに応じて、内部リセットの発生元であることを表す識別信号を出力する識別信号出力部と
を備え、
前記第１のプロセッサは、
いずれかの他のプロセッサから前記内部リセット発生信号が出力されたことに応じて、内部リセット発生検出信号が入力された場合、いずれかの他のプロセッサにおいて前記内部リセットが発生したことを検出する検出部と、
前記検出部によって前記内部リセットが発生したことが検出された場合において、前記第２のプロセッサから前記識別信号が入力された場合、前記第２のプロセッサを、前記内部リセットの発生元のプロセッサとして特定する特定部と
を備えることを特徴とする電子機器。
【請求項２】
前記第１のプロセッサは、
前記特定部によって特定された前記内部リセットの発生元のプロセッサに対し、外部リセット信号を出力する外部リセット信号出力部
をさらに備えることを特徴とする請求項１に記載の電子機器。
【請求項３】
複数の他のプロセッサから出力された、内部リセットが発生したか否かを論理値で表す前記内部リセット発生信号の論理演算を行うことにより、前記いずれかの他のプロセッサにおいて前記内部リセットが発生したか否かを論理値で表す前記内部リセット発生検出信号を生成し、当該内部リセット発生検出信号を前記第１のプロセッサへ出力する論理回路
をさらに備えることを特徴とする請求項１または２に記載の電子機器。
【請求項４】
前記識別信号出力部は、前記第２のプロセッサがリセットすると値が変化する信号を前記識別信号として出力し、
前記第２のプロセッサは、リセット後に複数の端子の初期化処理を行う初期化処理部をさらに備え、
前記初期化処理部は、前記第２のプロセッサが内部リセットによりリセットしていた場合、前記初期化処理を開始してから所定の待機時間が経過するまでの間、前記識別信号が出力される所定の入出力ポートの初期化設定を行わない
ことを特徴とする請求項１から３のいずれか一項に記載の電子機器。
【請求項５】
第３のプロセッサをさらに備え、
前記第３のプロセッサは、
当該第３のプロセッサにおいて不具合が発生したときに、当該第３のプロセッサの内部リセットを行う内部リセット部と、
当該第３のプロセッサが内部リセットされたことに応じて、内部リセットが発生したことを表す内部リセット発生信号を出力する内部リセット発生信号出力部と
を備え、
前記特定部は、
前記検出部によって前記内部リセットが発生したことが検出された場合において、前記第２のプロセッサから前記識別信号が入力された場合、前記第２のプロセッサを、前記内部リセットの発生元のプロセッサとして特定し、前記第２のプロセッサから前記識別信号が入力されなかった場合、前記第３のプロセッサを、前記内部リセットの発生元のプロセッサとして特定する
ことを特徴とする請求項１から４のいずれか一項に記載の電子機器。
【請求項６】
複数の前記第２のプロセッサを備え、
前記特定部は、
前記検出部によって前記内部リセットが発生したことが検出された場合に、いずれかの前記第２のプロセッサから前記識別信号が入力された場合、当該識別信号の出力元の前記第２のプロセッサを、前記内部リセットの発生元のプロセッサとして特定する
ことを特徴とする請求項１から４のいずれか一項に記載の電子機器。
【請求項７】
前記第２のプロセッサに接続されたデバイスをさらに備え、
前記デバイスは、
当該デバイスにおいて不具合が発生したときに、当該デバイスの内部リセットを行う内部リセット部と、
当該デバイスが内部リセットされたことに応じて、内部リセットが発生したことを表す内部リセット発生信号を出力する内部リセット発生信号出力部と
を備え、
前記識別信号出力部は、
前記第２のプロセッサが内部リセットされた場合、第１の前記識別信号を出力し、
前記デバイスが内部リセットされた場合、第２の前記識別信号を出力し、
前記特定部は、
前記検出部によって前記内部リセットが発生したことが検出された場合において、前記第２のプロセッサから前記第１の識別信号が入力された場合、前記第２のプロセッサを、前記内部リセットの発生元のプロセッサとして特定し、前記第２のプロセッサから前記第２の識別信号が入力された場合、前記デバイスを、前記内部リセットの発生元のデバイスとして特定する
ことを特徴とする請求項１から４のいずれか一項に記載の電子機器。
【請求項８】
第１のプロセッサおよび第２のプロセッサを含む、複数のプロセッサを備えた画像形成装置であって、
前記第２のプロセッサは、
当該第２のプロセッサにおいて不具合が発生したときに、当該第２のプロセッサの内部リセットを行う内部リセット部と、
当該第２のプロセッサが内部リセットされたことに応じて、内部リセットの発生を表す内部リセット発生信号を出力する内部リセット発生信号出力部と、
当該第２のプロセッサが内部リセットされたことに応じて、内部リセットの発生元であることを表す識別信号を出力する識別信号出力部と
を備え、
前記第１のプロセッサは、
いずれかの他のプロセッサから前記内部リセット発生信号が出力されたことに応じて、内部リセット発生検出信号が入力された場合、いずれかの他のプロセッサにおいて前記内部リセットが発生したことを検出する検出部と、
前記検出部によって前記内部リセットが発生したことが検出された場合において、前記第２のプロセッサから前記識別信号が入力された場合、前記第２のプロセッサを、前記内部リセットの発生元のプロセッサとして特定する特定部と
を備えることを特徴とする画像形成装置。
【請求項９】
電子機器が備えるプロセッサによる制御方法であって、
いずれかの他のプロセッサから内部リセットが発生したことを表す内部リセット発生信号が出力されたことに応じて、内部リセット発生検出信号が入力された場合、いずれかの他のプロセッサにおいて前記内部リセットが発生したことを検出する内部リセット検出工程と、
内部リセット検出工程にて前記内部リセットが発生したことが検出された場合において、いずれかの他のプロセッサから内部リセットの発生元であることを表す識別信号が入力された場合、当該識別信号の出力元のプロセッサを、前記内部リセットの発生元のプロセッサとして特定する内部リセット発生元特定工程と
を含むことを特徴とする制御方法。
【請求項１０】
電子機器が備えるプロセッサ用のプログラムであって、
前記プロセッサを、
いずれかの他のプロセッサから内部リセットが発生したことを表す内部リセット発生信号が出力されたことに応じて、内部リセット発生検出信号が入力された場合、いずれかの他のプロセッサにおいて前記内部リセットが発生したことを検出する検出部、および、
前記検出部によって前記内部リセットが発生したことが検出された場合において、いずれかの他のプロセッサから内部リセットの発生元であることを表す識別信号が入力された場合、当該識別信号の出力元のプロセッサを、前記内部リセットの発生元のプロセッサとして特定する特定部
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子機器、画像形成装置、制御方法、およびプログラムに関する。
【背景技術】
【０００２】
従来、複数のプロセッサを備え、複数の機能を複数のプロセッサで分担して実行することが可能な電子機器が知られている。
【０００３】
例えば、下記特許文献１には、複数のコンポーネント（ＬＡＮ（Local Area Network）、シリアル、ＣＦ（Compact Flash（登録商標）））の各々にＣＰＵ（Central Processing Unit）が設けられている複数コンポーネントシステムが開示されている。また、下記特許文献１には、このようなシステムにおいて、正常状態にあるＣＰＵが、異常状態となった他のＣＰＵのみを問題のないタイミングでリセットする技術が開示されている。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、電子機器において、メインＣＰＵと複数のサブＣＰＵとを備えた構成とし、メインＣＰＵによって電子機器の全体制御を行い、サブＣＰＵによって電子機器の一部（例えば、モータ等）を制御するように構成する場合がある。また、このように構成された電子機器において、複数のサブＣＰＵの各々にＷＤＴ（Watch Dog Timer）を搭載することで、異常が発生したサブＣＰＵが自らリセット（内部リセット）するように構成される場合もある。
【０００５】
しかしながら、従来、複数のサブＣＰＵのいずれかにおいて内部リセットが発生した場合であっても、メインＣＰＵがどのサブＣＰＵで内部リセットが発生したのかを特定することができないといった課題が生じていた。このため、例えば、内部リセットが発生したサブＣＰＵをメインＣＰＵから外部リセットするといったことができなかった。
【０００６】
本発明は、上述した従来技術の課題を解決するため、内部リセットが発生したサブプロセッサをメインプロセッサで特定することができるようにすることを目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決するために、本発明の電子機器は、第１のプロセッサおよび第２のプロセッサを含む、複数のプロセッサを備えた電子機器であって、前記第２のプロセッサは、当該第２のプロセッサにおいて不具合が発生したときに、当該第２のプロセッサの内部リセットを行う内部リセット部と、当該第２のプロセッサが内部リセットされたことに応じて、内部リセットが発生したことを表す内部リセット発生信号を出力する内部リセット発生信号出力部と、当該第２のプロセッサが内部リセットされたことに応じて、内部リセットの発生元であることを表す識別信号を出力する識別信号出力部とを備え、前記第１のプロセッサは、いずれかの他のプロセッサから前記内部リセット発生信号が出力されたことに応じて、内部リセット発生検出信号が入力された場合、いずれかの他のプロセッサにおいて前記内部リセットが発生したことを検出する検出部と、前記検出部によって前記内部リセットが発生したことが検出された場合において、前記第２のプロセッサから前記識別信号が入力された場合、前記第２のプロセッサを、前記内部リセットの発生元のプロセッサとして特定する特定部とを備えることを特徴とする。
【発明の効果】
【０００８】
本発明によれば、内部リセットが発生したサブプロセッサをメインプロセッサで特定することができる。
【図面の簡単な説明】
【０００９】
【図１】本発明の第１実施形態に係る画像形成装置の装置構成を示す図である。
【図２】本発明の第１実施形態に係る画像形成装置の機能構成を示すブロック図である。
【図３】本発明の第１実施形態に係る画像形成装置におけるメインＣＰＵの処理手順を示すフローチャートである。
【図４】本発明の第１実施形態に係る画像形成装置におけるサブＣＰＵの処理手順を示すフローチャートである。
【図５】本発明の第１実施形態に係る画像形成装置における各種動作のタイミングを示すタイミングチャートである。
【図６】本発明の第１実施形態に係る画像形成装置における初期化処理部による初期化処理の手順を示すフローチャートである。
【図７】本発明の第２実施形態に係る画像形成装置の装置構成を示す図である。
【図８】本発明の第２実施形態に係る画像形成装置におけるメインＣＰＵの処理手順を示すフローチャートである。
【図９】本発明の第３実施形態に係る画像形成装置の装置構成を示す図である。
【図１０】本発明の第３実施形態に係る画像形成装置におけるメインＣＰＵの処理手順を示すフローチャートである。
【図１１】本発明の第３実施形態に係る画像形成装置におけるサブＣＰＵの処理手順を示すフローチャートである。
【図１２】本発明の第３実施形態に係る画像形成装置における初期化処理部による初期化処理の手順を示すフローチャートである。
【発明を実施するための形態】
【００１０】
〔第１実施形態〕
以下、図面を参照して、本発明の第１実施形態について説明する。この第１実施形態では、メインＣＰＵ１１０に対し、サブＣＰＵ１２０と、サブＣＰＵ１３０とが接続されている場合において、サブＣＰＵ１２０またはサブＣＰＵ１３０における内部リセットの発生を、メインＣＰＵ１１０で検出する例を説明する。
【００１１】
（画像形成装置１０の装置構成）
図１は、本発明の第１実施形態に係る画像形成装置１０の装置構成を示す図である。図１に示す画像形成装置１０は、特許請求の範囲に記載の「電子機器」および「画像形成装置」の一例である。画像形成装置１０としては、例えば、プリンタ複合機、レーザプリンタ、インクジェットプリンタ、スキャナ等が挙げられるが、これらに限定されるものではない。
【００１２】
図１に示すように、本実施形態の画像形成装置１０は、メインＣＰＵ１１０、サブＣＰＵ１２０、サブＣＰＵ１３０、およびＡＮＤ回路１４０を備えている。メインＣＰＵ１１０は、特許請求の範囲に記載の「第１のプロセッサ」の一例である。サブＣＰＵ１２０は、特許請求の範囲に記載の「第２のプロセッサ」の一例である。サブＣＰＵ１３０は、特許請求の範囲に記載の「第３のプロセッサ」の一例である。ＡＮＤ回路１４０は、特許請求の範囲に記載の「論理回路」の一例である。例えば、画像形成装置１０は、メインＣＰＵ１１０によって画像形成装置１０の全体の制御を行い、サブＣＰＵ１２０およびサブＣＰＵ１３０によって、画像形成装置１０の一部（例えば、モータ、センサ等）の制御を行うことができるようになっている。
【００１３】
（メインＣＰＵ１１０）
図１の例において、メインＣＰＵ１１０は、制御部１１１、ＧＰＩＯ入力ポート１１２、割込みポート１１３、ＧＰＩＯ出力ポート１１４、ＧＰＩＯ出力ポート１１５、および記憶装置１１６を有している。
【００１４】
制御部１１１は、メインＣＰＵ１１０に格納されているプログラムを実行することにより、メインＣＰＵ１１０における各種処理を行う。例えば、制御部１１１は、いずれかのプロセッサにおいて内部リセットが発生した場合に、内部リセットが発生したプロセッサを特定したり、内部リセットが発生したプロセッサに対して外部リセット信号を出力したりする。
【００１５】
ＧＰＩＯ入力ポート１１２は、サブＣＰＵ１２０から出力された、識別信号Ｓ＿Ｍ＿ＣＰＵ２が入力される端子である。
【００１６】
割込みポート１１３は、外部割込み信号が入力される端子である。割込みポート１１３には、ＡＮＤ回路１４０から出力された、検出信号Ｓ＿ＣＰＵ＿ＷＡＫＥが入力される。
【００１７】
ＧＰＩＯ出力ポート１１４は、サブＣＰＵ１２０において内部リセットが発生したと特定された場合に、サブＣＰＵ１２０をリセットするための外部リセット信号ＣＰＵ２＿ＲＳＴを、サブＣＰＵ１２０へ出力するための端子である。
【００１８】
ＧＰＩＯ出力ポート１１５は、サブＣＰＵ１３０において内部リセットが発生したと特定された場合に、サブＣＰＵ１３０をリセットするための外部リセット信号ＣＰＵ３＿ＲＳＴを、サブＣＰＵ１３０へ出力するための端子である。
【００１９】
記憶装置１１６は、サブＣＰＵ１２０またはサブＣＰＵ１３０が内部リセットされた際に、その内部リセットの発生履歴を記憶するメモリである。
【００２０】
（サブＣＰＵ１２０）
図１の例において、サブＣＰＵ１２０は、内蔵ＷＤＴ１２１、ＷＤＴＲＳＴ出力端子１２２、ＷＤＴリセットステータスレジスタ１２３、ＧＰＩＯ出力ポート１２４、外部リセット端子入力１２５、および制御部１２６を有している。
【００２１】
内蔵ＷＤＴ１２１は、サブＣＰＵ１２０において不具合（例えば、プログラムによる処理の不具合）が生じた場合、サブＣＰＵ１２０を内部リセットする。
【００２２】
ＷＤＴＲＳＴ出力端子１２２は、ＷＤＴリセット発生パルスＷＤＲＳＴ２（特許請求の範囲に記載の「内部リセット発生信号」の一例）を出力するための端子である。このＷＤＴリセット発生パルスＷＤＲＳＴ２は、通常時はその値が「１」となっている。そして、ＷＤＴリセット発生パルスＷＤＲＳＴ２は、内蔵ＷＤＴ１２１によってサブＣＰＵ１２０が内部リセットされたときに、その値が「０」となり、サブＣＰＵ１２０において内部リセットが発生したことを表すものとなる。
【００２３】
ＷＤＴリセットステータスレジスタ１２３は、内蔵ＷＤＴ１２１によってサブＣＰＵ１２０が内部リセットされた際に、そのリセットの発生履歴を記憶する。この発生履歴は、サブＣＰＵ１２０がリセットされた後に、内蔵ＷＤＴ１２１によってリセットされたか、その他の要因によりリセットされたのかを、サブＣＰＵ１２０自身が識別できるようにするためのものである。
【００２４】
ＧＰＩＯ出力ポート１２４は、識別信号Ｓ＿Ｍ＿ＣＰＵ２（特許請求の範囲に記載の「識別信号」の一例）を出力するための端子である。この識別信号Ｓ＿Ｍ＿ＣＰＵ２は、通常時はその値が「０」となっている。そして、識別信号Ｓ＿Ｍ＿ＣＰＵ２は、内蔵ＷＤＴ１２１によってサブＣＰＵ１２０が内部リセットされたときに、サブＣＰＵ１２０に設けられているプルアップ抵抗の作用により、その値が「１」となり、サブＣＰＵ１２０が内部リセットの発生元のデバイスであることを表すものとなる。
【００２５】
外部リセット端子入力１２５は、メインＣＰＵ１１０から出力された外部リセット信号ＣＰＵ２＿ＲＳＴが入力される端子である。
【００２６】
制御部１２６は、サブＣＰＵ１２０に格納されているプログラムを実行することにより、サブＣＰＵ１２０における各種処理を行う。例えば、制御部１２６は、各種信号（例えば、ＷＤＴリセット発生パルスＷＤＲＳＴ２、識別信号Ｓ＿Ｍ＿ＣＰＵ２等）の出力を制御したり、メインＣＰＵ１１０からの外部リセット信号に応じて、サブＣＰＵ１２０のリセットを行ったりする。
【００２７】
（サブＣＰＵ１３０）
図１の例において、サブＣＰＵ１３０は、内蔵ＷＤＴ１３１、ＷＤＴＲＳＴ出力端子１３２、ＷＤＴリセットステータスレジスタ１３３、外部リセット端子入力１３４、および制御部１３５を有している。
【００２８】
内蔵ＷＤＴ１３１は、サブＣＰＵ１３０において不具合（例えば、プログラムによる処理の不具合）が生じた場合、サブＣＰＵ１３０を内部リセットする。
【００２９】
ＷＤＴＲＳＴ出力端子１３２は、ＷＤＴリセット発生パルスＷＤＲＳＴ３（特許請求の範囲に記載の「内部リセット発生信号」の一例）を出力するための端子である。このＷＤＴリセット発生パルスＷＤＲＳＴ３は、通常時はその値が「１」となっている。そして、ＷＤＴリセット発生パルスＷＤＲＳＴ３は、内蔵ＷＤＴ１３１によってサブＣＰＵ１３０が内部リセットされたときに、その値が「０」となり、サブＣＰＵ１３０において内部リセットが発生したことを表すものとなる。
【００３０】
ＷＤＴリセットステータスレジスタ１３３は、内蔵ＷＤＴ１３１によってサブＣＰＵ１３０がリセットされた際に、そのリセットの発生履歴を記憶する。この発生履歴は、サブＣＰＵ１３０がリセットされた後に、内蔵ＷＤＴ１３１によってリセットされたか、その他の要因によりリセットされたのかを、サブＣＰＵ１３０自身が識別できるようにするためのものである。
【００３１】
外部リセット端子入力１３４は、メインＣＰＵ１１０から出力された外部リセット信号ＣＰＵ３＿ＲＳＴが入力される端子である。
【００３２】
制御部１３５は、サブＣＰＵ１３０に格納されているプログラムを実行することにより、サブＣＰＵ１３０における各種処理を行う。例えば、制御部１３５は、各種信号（例えば、ＷＤＴリセット発生パルスＷＤＲＳＴ３等）の出力を制御したり、メインＣＰＵ１１０からの外部リセット信号に応じて、サブＣＰＵ１３０のリセットを行ったりする。
【００３３】
（ＡＮＤ回路１４０）
ＡＮＤ回路１４０は、サブＣＰＵ１２０から出力されたＷＤＴリセット発生パルスＷＤＲＳＴ２と、サブＣＰＵ１３０から出力されたＷＤＴリセット発生パルスＷＤＲＳＴ３との論理演算（ＡＮＤ演算）を行う。これにより、ＡＮＤ回路１４０は、検出信号Ｓ＿ＣＰＵ＿ＷＡＫＥ（特許請求の範囲に記載の「内部リセット発生検出信号」の一例）を生成し、当該検出信号Ｓ＿ＣＰＵ＿ＷＡＫＥを出力する。この検出信号Ｓ＿ＣＰＵ＿ＷＡＫＥは、いずれかの他のプロセッサにおいて内部リセットが発生したか否かを論理値で表すものである。具体的には、検出信号Ｓ＿ＣＰＵ＿ＷＡＫＥは、サブＣＰＵ１２０またはサブＣＰＵ１３０において内部リセットが発生したときに、その値が「０」となる。これにより、検出信号Ｓ＿ＣＰＵ＿ＷＡＫＥは、サブＣＰＵ１２０またはサブＣＰＵ１３０において内部リセットが発生したことを表すものとなる。
【００３４】
通常時、ＷＤＴリセット発生パルスＷＤＲＳＴ２の値、および、ＷＤＴリセット発生パルスＷＤＲＳＴ３の値は、いずれも「１」である。したがって、検出信号Ｓ＿ＣＰＵ＿ＷＡＫＥの値は「１」となる。
【００３５】
一方、サブＣＰＵ１２０またはサブＣＰＵ１３０において内部リセットが発生した場合、ＷＤＴリセット発生パルスＷＤＲＳＴ２の値、または、ＷＤＴリセット発生パルスＷＤＲＳＴ３の値が、「０」となる。したがって、検出信号Ｓ＿ＣＰＵ＿ＷＡＫＥの値は「０」となる。
【００３６】
したがって、メインＣＰＵ１１０は、１つの割込みポート１１３から入力された検出信号Ｓ＿ＣＰＵ＿ＷＡＫＥの値が「０」となったことをもって、サブＣＰＵ１２０またはサブＣＰＵ１３０における内部リセットの発生を検出できる。
【００３７】
（画像形成装置１０の機能構成）
図２は、本発明の第１実施形態に係る画像形成装置１０の機能構成を示すブロック図である。
【００３８】
（メインＣＰＵ１１０）
図２の例において、メインＣＰＵ１１０は、検出信号入力部２１１、検出部２１２、識別信号入力部２１３、特定部２１４、外部リセット信号出力部２１５、およびリセット履歴記憶部２１６を備えている。
【００３９】
検出信号入力部２１１は、サブＣＰＵ１２０またはサブＣＰＵ１３０のいずれかから、内部リセット発生信号が出力されたことに応じて、ＡＮＤ回路１４０から出力される内部リセット発生検出信号の入力を受け付ける。本実施形態では、検出信号入力部２１１は、メインＣＰＵ１１０が備える割込みポート１１３（図１参照）によって実現される。すなわち、検出信号入力部２１１は、内部リセット発生検出信号として、ＡＮＤ回路１４０から出力された、検出信号Ｓ＿ＣＰＵ＿ＷＡＫＥ（値＝「０」）の入力を受け付けることとなる。
【００４０】
検出部２１２は、検出信号入力部２１１が内部リセット発生検出信号の入力を受け付けた場合、サブＣＰＵ１２０またはサブＣＰＵ１３０において内部リセットが発生したことを検出する。本実施形態では、サブＣＰＵ１２０またはサブＣＰＵ１３０のいずれかから内部リセット発生信号が出力されると、値が「０」の検出信号Ｓ＿ＣＰＵ＿ＷＡＫＥが、メインＣＰＵ１１０に入力されることとなる。よって、検出部２１２は、検出信号入力部２１１が、値が「０」の検出信号Ｓ＿ＣＰＵ＿ＷＡＫＥの入力を受け付けたとき、サブＣＰＵ１２０またはサブＣＰＵ１３０において内部リセットが発生したことを検出する。本実施形態では、検出部２１２は、メインＣＰＵ１１０が備える制御部１１１（図１参照）によって実現される。
【００４１】
識別信号入力部２１３は、サブＣＰＵ１２０が内部リセットされた際に、サブＣＰＵ１２０から出力される、内部リセットの発生元であることを表す識別信号の入力を受け付ける。本実施形態では、識別信号入力部２１３は、メインＣＰＵ１１０が備えるＧＰＩＯ入力ポート１１２（図１参照）によって実現される。すなわち、識別信号入力部２１３は、上記識別信号として、識別信号Ｓ＿Ｍ＿ＣＰＵ２（値＝「１」）の入力を受け付ける。
【００４２】
特定部２１４は、検出部２１２によって内部リセットの発生が検出された場合において、識別信号入力部２１３が上記識別信号の入力を受け付けた場合、サブＣＰＵ１２０を内部リセットの発生元のプロセッサとして特定する。一方、特定部２１４は、検出部２１２によって内部リセットの発生が検出された場合において、識別信号入力部２１３が上記識別信号の入力を受け付けなかった場合、サブＣＰＵ１３０を内部リセットの発生元のプロセッサとして特定する。本実施形態では、特定部２１４は、メインＣＰＵ１１０が備える制御部１１１（図１参照）によって実現される。
【００４３】
外部リセット信号出力部２１５は、特定部２１４によって特定された内部リセットの発生元のプロセッサに対し、外部リセット信号を出力する。すなわち、外部リセット信号出力部２１５は、サブＣＰＵ１２０が内部リセットの発生元のプロセッサとして特定された場合、サブＣＰＵ１２０に対し、外部リセット信号を出力する。一方、外部リセット信号出力部２１５は、サブＣＰＵ１３０が内部リセットの発生元のプロセッサとして特定された場合、サブＣＰＵ１３０に対し、外部リセット信号を出力する。本実施形態では、外部リセット信号出力部２１５は、メインＣＰＵ１１０が備えるＧＰＩＯ出力ポート１１４，１１５（図１参照）によって実現される。すなわち、外部リセット信号出力部２１５は、サブＣＰＵ１２０に対しては、外部リセット信号ＣＰＵ２＿ＲＳＴを送信し、サブＣＰＵ１３０に対しては、外部リセット信号ＣＰＵ３＿ＲＳＴを送信する。
【００４４】
リセット履歴記憶部２１６は、特定部２１４によって内部リセットの発生元が特定されると、当該内部リセットの発生元を識別可能な形態で、内部リセットの発生履歴を記憶する。本実施形態では、リセット履歴記憶部２１６は、メインＣＰＵ１１０が備える記憶装置１１６（図１参照）によって実現される。
【００４５】
（サブＣＰＵ１２０）
図２の例において、サブＣＰＵ１２０は、内部リセット部２２１、内部リセット発生信号出力部２２２、識別信号出力部２２３、外部リセット信号入力部２２４、リセット部２２５、および初期化処理部２２６を備えている。
【００４６】
内部リセット部２２１は、サブＣＰＵ１２０において不具合が発生したときに、当該サブＣＰＵ１２０の内部リセットを行う。本実施形態では、内部リセット部２２１は、サブＣＰＵ１２０が備える内蔵ＷＤＴ１２１（図１参照）によって実現される。
【００４７】
内部リセット発生信号出力部２２２は、サブＣＰＵ１２０が内部リセットされたことに応じて、内部リセットが発生したことを表す内部リセット発生信号を出力する。本実施形態では、内部リセット発生信号出力部２２２は、サブＣＰＵ１２０が備えるＷＤＴＲＳＴ出力端子１２２（図１参照）によって実現される。すなわち、内部リセット発生信号出力部２２２は、内部リセット発生信号として、ＷＤＴリセット発生パルスＷＤＲＳＴ２（値＝「０」）を出力する。
【００４８】
識別信号出力部２２３は、サブＣＰＵ１２０が内部リセットされたことに応じて、内部リセットの発生元であることを表す識別信号を出力する。本実施形態では、識別信号出力部２２３は、サブＣＰＵ１２０が備えるＧＰＩＯ出力ポート１２４（図１参照）によって実現される。すなわち、識別信号出力部２２３は、上記識別信号として、識別信号Ｓ＿Ｍ＿ＣＰＵ２（値＝「１」）を出力する。なお、この識別信号の出力は、サブＣＰＵ１２０に設けられているプルアップ抵抗の作用によって実現される。
【００４９】
外部リセット信号入力部２２４は、メインＣＰＵ１１０から出力された外部リセット信号の入力を受け付ける。本実施形態では、外部リセット信号入力部２２４は、サブＣＰＵ１２０が備える外部リセット端子入力１２５（図１参照）によって実現される。すなわち、外部リセット信号入力部２２４は、外部リセット信号ＣＰＵ２＿ＲＳＴの入力を受け付ける。
【００５０】
リセット部２２５は、外部リセット信号入力部２２４が外部リセット信号の入力を受け付けると、サブＣＰＵ１２０をリセットする。ここでリセット部２２５により行われるリセットは、パワーオンリセットと同等のものである。本実施形態では、リセット部２２５は、サブＣＰＵ１２０が備える制御部１２６（図１参照）によって実現される。
【００５１】
初期化処理部２２６は、リセット部２２５または内部リセット部２２１によってサブＣＰＵ１２０がリセットされた後、当該サブＣＰＵ１２０に対する所定の初期化処理を行う。この初期化処理は、各種入出力ポートの初期設定処理を含んでいる。本実施形態では、初期化処理部２２６は、サブＣＰＵ１２０が備える制御部１２６（図１参照）によって実現される。
【００５２】
（サブＣＰＵ１３０）
図２の例において、サブＣＰＵ１３０は、内部リセット部２３１、内部リセット発生信号出力部２３２、外部リセット信号入力部２３３、リセット部２３４、および初期化処理部２３５を備えている。
【００５３】
内部リセット部２３１は、サブＣＰＵ１３０において不具合が発生したときに、当該サブＣＰＵ１３０の内部リセットを行う。本実施形態では、内部リセット部２３１は、サブＣＰＵ１３０が備える内蔵ＷＤＴ１３１（図１参照）によって実現される。
【００５４】
内部リセット発生信号出力部２３２は、サブＣＰＵ１３０が内部リセットされたことに応じて、内部リセットが発生したことを表す内部リセット発生信号を出力する。本実施形態では、内部リセット発生信号出力部２３２は、サブＣＰＵ１３０が備えるＷＤＴＲＳＴ出力端子１３２（図１参照）によって実現される。すなわち、内部リセット発生信号出力部２３２は、内部リセット発生信号として、のＷＤＴリセット発生パルスＷＤＲＳＴ３（値＝「０」）を出力する。
【００５５】
外部リセット信号入力部２３３は、メインＣＰＵ１１０から出力された外部リセット信号の入力を受け付ける。本実施形態では、外部リセット信号入力部２３３は、サブＣＰＵ１３０が備える外部リセット端子入力１３４（図１参照）によって実現される。すなわち、外部リセット信号入力部２３３は、外部リセット信号ＣＰＵ３＿ＲＳＴの入力を受け付ける。
【００５６】
リセット部２３４は、外部リセット信号入力部２３３が外部リセット信号の入力を受け付けると、サブＣＰＵ１３０をリセットする。ここでリセット部２３４により行われるリセットは、パワーオンリセットと同等のものである。例えば、リセット部２３４は、サブＣＰＵ１３０が備える制御部１３５（図１参照）によって実現される。
【００５７】
初期化処理部２３５は、内部リセット部２３１またはリセット部２３４によってサブＣＰＵ１３０がリセットされた後、当該サブＣＰＵ１３０に対する所定の初期化処理を行う。この初期化処理は、各種入出力ポートの初期設定処理を含んでいる。本実施形態では、初期化処理部２３５は、サブＣＰＵ１３０が備える制御部１３５（図１参照）によって実現される。
【００５８】
（メインＣＰＵ１１０の処理手順）
図３は、本発明の第１実施形態に係る画像形成装置１０におけるメインＣＰＵ１１０の処理手順を示すフローチャートである。
【００５９】
まず、検出信号入力部２１１が、内部リセット発生検出信号（すなわち、値が「０」の検出信号Ｓ＿ＣＰＵ＿ＷＡＫＥ）の入力を受け付けたか否かを判断する（ステップＳ３０１）。ステップＳ３０１において、内部リセット発生検出信号の入力を受け付けていないと判断された場合（ステップＳ３０１：Ｎｏ）、メインＣＰＵ１１０は、ステップＳ３０１の処理を再度実行する。
【００６０】
一方、ステップＳ３０１において、内部リセット発生検出信号の入力を受け付けたと判断された場合（ステップＳ３０１：Ｙｅｓ）、検出部２１２が、サブＣＰＵ１２０またはサブＣＰＵ１３０において内部リセットが発生したことを検出する（ステップＳ３０２）。
【００６１】
そして、識別信号入力部２１３が、内部リセットの発生元であることを表す識別信号（すなわち、値が「１」の識別信号Ｓ＿Ｍ＿ＣＰＵ２）の入力を受け付けたか否かを判断する（ステップＳ３０３）。
【００６２】
ステップＳ３０３において、識別信号の入力を受け付けたと判断された場合（ステップＳ３０３：Ｙｅｓ）、特定部２１４が、サブＣＰＵ１２０を内部リセットの発生元のプロセッサとして特定する（ステップＳ３０４）。そして、リセット履歴記憶部２１６が、内部リセットの発生履歴を記憶する（ステップＳ３０５）。さらに、外部リセット信号出力部２１５が、サブＣＰＵ１２０に対し、外部リセット信号（外部リセット信号ＣＰＵ２＿ＲＳＴ）を出力する（ステップＳ３０６）。その後、メインＣＰＵ１１０は、図３に示す一連の処理を終了する。
【００６３】
一方、ステップＳ３０３において、識別信号の入力を受け付けていないと判断された場合（ステップＳ３０３：Ｎｏ）、特定部２１４が、サブＣＰＵ１３０を内部リセットの発生元のプロセッサとして特定する（ステップＳ３０７）。そして、リセット履歴記憶部２１６が、内部リセットの発生履歴を記憶する（ステップＳ３０８）。さらに、外部リセット信号出力部２１５が、サブＣＰＵ１３０に対し、外部リセット信号（外部リセット信号ＣＰＵ３＿ＲＳＴ）を出力する（ステップＳ３０９）。その後、メインＣＰＵ１１０は、図３に示す一連の処理を終了する。
【００６４】
（サブＣＰＵ１２０の処理手順）
図４は、本発明の第１実施形態に係る画像形成装置１０におけるサブＣＰＵ１２０の処理手順を示すフローチャートである。
【００６５】
まず、内部リセット部２２１が、サブＣＰＵ１２０において不具合が発生したか否かを判断する（ステップＳ４０１）。ステップＳ４０１において、不具合が発生していないと判断された場合（ステップＳ４０１：Ｎｏ）、サブＣＰＵ１２０は、ステップＳ４０１の処理を再度実行する。
【００６６】
一方、ステップＳ４０１において、不具合が発生したと判断された場合（ステップＳ４０１：Ｙｅｓ）、内部リセット部２２１が、サブＣＰＵ１２０の内部リセットを行う（ステップＳ４０２）。これにより、サブＣＰＵ１２０が備える全ての入出力ポートが、デフォルト状態となる。これに応じて、内部リセット発生信号出力部２２２が、内部リセット発生信号（すなわち、値が「０」のＷＤＴリセット発生パルスＷＤＲＳＴ２）を出力する（ステップＳ４０３）。さらに、識別信号出力部２２３が、内部リセットの発生元であることを表す識別信号（すなわち、値が「１」の識別信号Ｓ＿Ｍ＿ＣＰＵ２）を出力する（ステップＳ４０４）。この識別信号の出力は、サブＣＰＵ１２０に設けられているプルアップ抵抗の作用により実現される。
【００６７】
その後、初期化処理部２２６が、所定の初期化処理を行う（ステップＳ４０５）。この初期化処理では、初期化処理部２２６は、内部リセットされたことに応じた設定を、各入出力ポートに対して行う。
【００６８】
その後、外部リセット信号入力部２２４が、メインＣＰＵ１１０から出力された外部リセット信号（すなわち、外部リセット信号ＣＰＵ２＿ＲＳＴ）の入力を受け付けたか否かを判断する（ステップＳ４０６）。
【００６９】
ステップＳ４０６において、外部リセット信号の入力を受け付けていないと判断された場合（ステップＳ４０６：Ｎｏ）、サブＣＰＵ１２０は、ステップＳ４０６の処理を再度実行する。
【００７０】
一方、ステップＳ４０６において、外部リセット信号の入力を受け付けたと判断された場合（ステップＳ４０６：Ｙｅｓ）、リセット部２２５が、サブＣＰＵ１２０をリセットする（ステップＳ４０７）。これにより、サブＣＰＵ１２０が備える全ての入出力ポートが、デフォルト状態となる。
【００７１】
その後、初期化処理部２２６が、所定の初期化処理を行う（ステップＳ４０８）。この初期化処理では、初期化処理部２２６は、外部リセットされたことに応じた設定を、各入出力ポートに対して行う。そして、サブＣＰＵ１２０は、図４に示す一連の処理を終了する。
【００７２】
なお、サブＣＰＵ１３０の処理の手順は、図４に示したサブＣＰＵ１２０の処理手順と同様である。このため、サブＣＰＵ１３０の処理の手順については、図示および説明を省略する。但し、サブＣＰＵ１３０の処理の手順は、上記識別信号の出力処理（ステップＳ４０４）を行わない点で、サブＣＰＵ１２０の処理手順と異なる。
【００７３】
（各種動作のタイミング）
図５は、本発明の第１実施形態に係る画像形成装置１０における各種動作のタイミングを示すタイミングチャートである。図５では、ＣＰＵ１２０において内部リセットが発生した場合の、各種動作のタイミングについて例示している。
【００７４】
図５の例では、まず、サブＣＰＵ１２０において、当該サブＣＰＵ１２０の不具合が発生すると、内部リセット部２２１により、サブＣＰＵ１２０が内部リセットされる。これにより、サブＣＰＵ１２０が備える全ての端子が、デフォルト状態となる。これに応じて、サブＣＰＵ１２０から出力されるＷＤＴリセット発生パルスＷＤＲＳＴ２の値が、「１（リセット解除状態）」から「０（リセット状態）」に切り替わる（タイミングｔ１）。
【００７５】
また、タイミングｔ１において、サブＣＰＵ１２０が内部リセットされたことに応じて、ＧＰＩＯ出力ポート１２４が出力設定状態から入力設定状態に切り替わる。これに伴い、ＧＰＩＯ出力ポート１２４から出力される、識別信号Ｓ＿Ｍ＿ＣＰＵ２の値が、「０（正常動作状態（出力設定））」から「１（リセット状態（入力設定））」に切り替わる。なお、この識別信号の切り替えは、サブＣＰＵ１２０に設けられているプルアップ抵抗の作用によって実現される。
【００７６】
さらに、タイミングｔ１において、ＷＤＴリセット発生パルスＷＤＲＳＴ２の値が「０」に切り替わったことに応じて、割込みポート１１３に入力される、検出信号Ｓ＿ＣＰＵ＿ＷＡＫＥの値が、「１」から「０」に切り替わる。これにより、メインＣＰＵ１１０において、検出部２１２が、サブＣＰＵ１２０またはサブＣＰＵ１３０において内部リセットが発生したことを検出する。そして、メインＣＰＵ１１０は、割込み処理として、内部リセットの発生元を特定するための発生元特定処理を開始する。
【００７７】
その後、サブＣＰＵ１２０において、初期化処理部２２６が、初期化処理を開始すると、サブＣＰＵ１２０から出力されるＷＤＴリセット発生パルスＷＤＲＳＴ２の値が、「０（リセット状態）」から「１（リセット解除状態）」に切り替わる（タイミングｔ２）。
【００７８】
ここで、初期化処理部２２６は、ＷＤＴリセットステータスレジスタ１２３を参照することにより、サブＣＰＵ１２０のリセットが、内蔵ＷＤＴ１２１によるリセットか、その他の要因によるリセットかを判断する。そして、初期化処理部２２６は、内蔵ＷＤＴ１２１によるリセットの場合と、その他の要因によるリセットの場合とで、初期化処理を異ならせる。
【００７９】
例えば、内蔵ＷＤＴ１２１によるリセットの場合、初期化処理部２２６は、初期化処理を開始してから、所定の待機時間Ｔが経過した後、ＧＰＩＯ出力ポート１２４を入力設定状態から出力設定状態に戻す。これに伴い、ＧＰＩＯ出力ポート１２４から出力される、識別信号Ｓ＿Ｍ＿ＣＰＵ２の値は、所定の待機時間Ｔが経過するまでの間は、「１」のままとなる。そして、識別信号Ｓ＿Ｍ＿ＣＰＵ２の値は、所定の待機時間Ｔが経過した後に、「１」から「０」に戻ることとなる。
【００８０】
例えば、図５の例では、サブＣＰＵ１２０の初期化処理が開始されたタイミングｔ２から、所定の待機時間Ｔが経過したタイミングｔ４までの間は、識別信号Ｓ＿Ｍ＿ＣＰＵ２の値が、「１（リセット状態（入力設定））」のままとなっている。そして、所定の待機時間Ｔが経過したタイミングｔ４において、識別信号Ｓ＿Ｍ＿ＣＰＵ２の値が、「０（正常動作状態（出力設定））」に戻されている。これにより、メインＣＰＵ１１０は、サブＣＰＵ１２０の初期化処理が開始された後、所定の待機時間Ｔが経過するまでの間のタイミングｔ３において、サブＣＰＵ１２０を内部リセットの発生元のプロセッサとして特定することができる。
【００８１】
このとき、メインＣＰＵ１１０は、識別信号Ｓ＿Ｍ＿ＣＰＵ２の値が「１」であれば、サブＣＰＵ１２０を内部リセットの発生元のプロセッサとして特定する。一方、メインＣＰＵ１１０は、識別信号Ｓ＿Ｍ＿ＣＰＵ２の値が「０」であれば、サブＣＰＵ１３０を内部リセットの発生元のプロセッサとして特定する。
【００８２】
一方、その他の要因によるリセットの場合、初期化処理部２２６は、初期化処理を開始した後、直ちに、ＧＰＩＯ出力ポート１２４を入力設定状態から出力設定状態に戻す。これに伴い、ＧＰＩＯ出力ポート１２４から出力される、識別信号Ｓ＿Ｍ＿ＣＰＵ２の値は、サブＣＰＵ１２０の初期化処理が開始された後、直ちに、「１」から「０」に戻ることとなる。
【００８３】
メインＣＰＵ１１０は、発生元特定処理が完了すると、所定の不具合対応動作を開始する（タイミングｔ５）。この不具合対応動作には、サブＣＰＵ１２０に対して外部リセット信号ＣＰＵ２＿ＲＳＴを出力することにより、サブＣＰＵ１２０をハードリセットする処理が含まれている。
【００８４】
（初期化処理の手順）
図６は、本発明の第１実施形態に係る画像形成装置１０における初期化処理部２２６による初期化処理の手順を示すフローチャートである。
【００８５】
まず、初期化処理部２２６は、ＷＤＴリセットステータスレジスタ１２３を参照する（ステップＳ６０１）。そして、初期化処理部２２６は、ステップＳ６０１での参照結果に基づき、サブＣＰＵ１２０のリセットが、内蔵ＷＤＴ１２１によるリセットか否かを判断する（ステップＳ６０２）。
【００８６】
ステップＳ６０２において、内蔵ＷＤＴ１２１によるリセットではないと判断された場合（ステップＳ６０２：Ｎｏ）、初期化処理部２２６は、全ての入出力ポートの初期設定を行う（ステップＳ６０３）。そして、初期化処理部２２６は、図６に示す一連の処理を終了する。
【００８７】
一方、ステップＳ６０２において、内蔵ＷＤＴ１２１によるリセットであると判断された場合（ステップＳ６０２：Ｙｅｓ）、初期化処理部２２６は、ＧＰＩＯ出力ポート１２４を除く全ての入出力ポートの初期設定を行う（ステップＳ６０４）。そして、初期化処理部２２６は、所定の待機時間Ｔが経過するまで待機する（ステップＳ６０５）。その後、初期化処理部２２６は、ＧＰＩＯ出力ポート１２４の初期設定を行う（ステップＳ６０６）。そして、初期化処理部２２６は、図６に示す一連の処理を終了する。
【００８８】
図６の初期化処理によれば、サブＣＰＵ１２０において内部リセットが発生した場合には、識別信号Ｓ＿Ｍ＿ＣＰＵ２が出力される、ＧＰＩＯ出力ポート１２４の初期設定タイミングを遅らせている。これにより、メインＣＰＵ１１０Ｂは、サブＣＰＵ１２０Ｂの初期化処理が開始された後も、サブＣＰＵ１２０Ｂを内部リセットの発生元のプロセッサとして特定することができるようになっている。
【００８９】
以上説明したように、本実施形態の画像形成装置１０は、内部リセットが発生したプロセッサから内部リセット発生信号を出力させ、これに応じて、メインＣＰＵ１１０の割込みポート１１３に内部リセット発生検出信号が入力されるようにしている。これにより、メインＣＰＵ１１０は、サブＣＰＵ１２０，１３０のいずれかにおいて内部リセットが発生したことを、容易に特定することができるようになっている。
【００９０】
さらに、本実施形態の画像形成装置１０は、サブＣＰＵ１２０において内部リセットが発生した場合のみ、サブＣＰＵ１２０から識別信号をさらに出力させるようにしている。これにより、メインＣＰＵ１１０は、識別信号の有無により、サブＣＰＵ１２０，１３０のいずれが内部リセットの発生元であるかを、容易に特定することができるようになっている。
【００９１】
また、本実施形態の画像形成装置１０によれば、複数のプロセッサから出力された内部リセット発生信号のＡＮＤ信号を、内部リセット発生検出信号としてメインＣＰＵ１１０に入力する構成を採用している。これにより、メインＣＰＵ１１０は、単一のポートを使用して単一の信号を参照するだけといった簡単な構成で、いずれかのプロセッサにおいて内部リセットが発生したことを容易に特定することができる。
【００９２】
〔第２実施形態〕
次に、図７および図８を参照して、本発明の第２実施形態について説明する。この第２実施形態では、メインＣＰＵ１１０Ａに対し、複数の第２のプロセッサ（サブＣＰＵ１２０，１３０Ａ）と、複数の接続デバイス（ＩＯ−ＡＳＩＣ１５１，１５２）とを接続する例を説明する。なお、以下第２実施形態の説明においては、第１実施形態からの相違点についてのみ説明し、第１実施形態と同様の機能構成を有するものには第１実施形態と同様の符号を付与し、その説明を省略する。
【００９３】
（画像形成装置１０Ａの装置構成）
図７は、本発明の第２実施形態に係る画像形成装置１０Ａの装置構成を示す図である。図７に示す画像形成装置１０Ａは、以下の点で、第１実施形態の画像形成装置１０（図１参照）と異なる。
【００９４】
・メインＣＰＵ１１０の代わりにメインＣＰＵ１１０Ａを備える点
・サブＣＰＵ１３０の代わりにサブＣＰＵ１３０Ａを備える点
・ＡＮＤ回路１４０の代わりにＡＮＤ回路１４０Ａを備える点
・ＩＯ−ＡＳＩＣ１５１およびＩＯ−ＡＳＩＣ１５２をさらに備える点
【００９５】
サブＣＰＵ１３０Ａは、サブＣＰＵ１２０と同様の装置構成および機能構成を有するものである。すなわち、サブＣＰＵ１３０Ａは、サブＣＰＵ１２０と同様に、特許請求の範囲に記載の「第２のプロセッサ」の一例であり、内部リセットの発生元の識別信号を出力する機能を有している。具体的には、サブＣＰＵ１３０Ａは、ＧＰＩＯ出力ポート１３６をさらに備える点で、第１実施形態のサブＣＰＵ１３０と異なる。ＧＰＩＯ出力ポート１３６は、識別信号Ｓ＿Ｍ＿ＣＰＵ３（特許請求の範囲に記載の「識別信号」の一例）を出力するための端子である。この識別信号Ｓ＿Ｍ＿ＣＰＵ３は、通常時はその値が「０」となっている。そして、識別信号Ｓ＿Ｍ＿ＣＰＵ３は、内蔵ＷＤＴ１３１によってサブＣＰＵ１３０Ａが内部リセットされたことに応じて、その値が「１」となり、サブＣＰＵ１３０Ａが内部リセットの発生元のデバイスであることを表すものとなる。
【００９６】
メインＣＰＵ１１０Ａは、ＧＰＩＯ入力ポート１１７およびＧＰＩＯ出力ポート１１８をさらに備える点で、第１実施形態のメインＣＰＵ１１０と異なる。ＧＰＩＯ入力ポート１１７は、サブＣＰＵ１３０Ａから出力された、識別信号Ｓ＿Ｍ＿ＣＰＵ３が入力される端子である。ＧＰＩＯ出力ポート１１８は、ＩＯ−ＡＳＩＣ１５１またはＩＯ−ＡＳＩＣ１５２において内部リセットが発生したと特定された場合に、外部リセット信号ＩＯ＿ＡＳＩＣ＿ＲＳＴを、ＩＯ−ＡＳＩＣ１５１，１５２の各々へ出力するための端子である。
【００９７】
ＩＯ−ＡＳＩＣ１５１およびＩＯ−ＡＳＩＣ１５２は、センサやモータなどのデバイスを制御するためのデバイスである。ＩＯ−ＡＳＩＣ１５１，１５２は、サブＣＰＵ１２０，１３０Ａと同様に、内蔵ＷＤＴを備えている。そして、ＩＯ−ＡＳＩＣ１５１，１５２は、当該内蔵ＷＤＴによって内部リセットがなされた場合に、内部リセット発生信号（ＷＤＴリセット発生パルスＷＤＲＳＴ４，ＷＤＲＳＴ５）を出力するように構成されている。また、ＩＯ−ＡＳＩＣ１５１およびＩＯ−ＡＳＩＣ１５２は、外部リセット信号ＩＯ＿ＡＳＩＣ＿ＲＳＴを受けたことに応じて、外部リセットされるように構成されている。
【００９８】
ＡＮＤ回路１４０Ａは、以下４つの信号の、論理演算（ＡＮＤ演算）を行う。
【００９９】
・サブＣＰＵ１２０から出力されたＷＤＴリセット発生パルスＷＤＲＳＴ２
・サブＣＰＵ１３０Ａから出力されたＷＤＴリセット発生パルスＷＤＲＳＴ３
・ＩＯ−ＡＳＩＣ１５１から出力されたＷＤＴリセット発生パルスＷＤＲＳＴ４
・ＩＯ−ＡＳＩＣ１５２から出力されたＷＤＴリセット発生パルスＷＤＲＳＴ５
【０１００】
これにより、ＡＮＤ回路１４０Ａは、検出信号Ｓ＿ＣＰＵ＿ＷＡＫＥを生成し、当該検出信号Ｓ＿ＣＰＵ＿ＷＡＫＥを出力する。第２実施形態では、検出信号Ｓ＿ＣＰＵ＿ＷＡＫＥは、通常時はその値が「１」である。そして、検出信号Ｓ＿ＣＰＵ＿ＷＡＫＥは、サブＣＰＵ１２０、サブＣＰＵ１３０Ａ、ＩＯ−ＡＳＩＣ１５１、またはＩＯ−ＡＳＩＣ１５２のいずれかにおいて内部リセットが発生したときに、その値が「０」となる。
【０１０１】
したがって、メインＣＰＵ１１０Ａは、割込みポート１１３から入力された検出信号Ｓ＿ＣＰＵ＿ＷＡＫＥの値が「０」となると、サブＣＰＵ１２０，１３０Ａ、ＩＯ−ＡＳＩＣ１５１，１５２のいずれかにおける内部リセットの発生を検出することができる。
【０１０２】
（メインＣＰＵ１１０Ａの処理手順）
図８は、本発明の第２実施形態に係る画像形成装置１０ＡにおけるメインＣＰＵ１１０Ａの処理手順を示すフローチャートである。
【０１０３】
まず、検出信号入力部２１１が、内部リセット発生検出信号（すなわち、値が「０」の検出信号Ｓ＿ＣＰＵ＿ＷＡＫＥ）の入力を受け付けたか否かを判断する（ステップＳ８０１）。ステップＳ８０１において、内部リセット発生検出信号の入力を受け付けていないと判断された場合（ステップＳ８０１：Ｎｏ）、メインＣＰＵ１１０Ａは、ステップＳ８０１の処理を再度実行する。
【０１０４】
一方、ステップＳ８０１において、内部リセット発生検出信号の入力を受け付けたと判断された場合（ステップＳ８０１：Ｙｅｓ）、検出部２１２が、サブＣＰＵ１２０，１３０Ａ、ＩＯ−ＡＳＩＣ１５１，１５２のいずれかにおいて内部リセットが発生したことを検出する（ステップＳ８０２）。
【０１０５】
そして、識別信号入力部２１３が、識別信号Ｓ＿Ｍ＿ＣＰＵ２（値＝「１」）の入力を受け付けたか否かを判断する（ステップＳ８０３）。
【０１０６】
ステップＳ８０３において、識別信号Ｓ＿Ｍ＿ＣＰＵ２の入力を受け付けたと判断された場合（ステップＳ８０３：Ｙｅｓ）、特定部２１４が、サブＣＰＵ１２０を内部リセットの発生元のプロセッサとして特定する（ステップＳ８０４）。そして、リセット履歴記憶部２１６が、内部リセットの発生履歴を記憶する（ステップＳ８０５）。さらに、外部リセット信号出力部２１５が、サブＣＰＵ１２０に対し、外部リセット信号（外部リセット信号ＣＰＵ２＿ＲＳＴ）を出力する（ステップＳ８０６）。その後、メインＣＰＵ１１０Ａは、図８に示す一連の処理を終了する。
【０１０７】
一方、ステップＳ８０３において、識別信号Ｓ＿Ｍ＿ＣＰＵ２の入力を受け付けていないと判断された場合（ステップＳ８０３：Ｎｏ）、識別信号入力部２１３が、識別信号Ｓ＿Ｍ＿ＣＰＵ３（値＝「１」）の入力を受け付けたか否かを判断する（ステップＳ８０７）。
【０１０８】
ステップＳ８０７において、識別信号Ｓ＿Ｍ＿ＣＰＵ３の入力を受け付けたと判断された場合（ステップＳ８０７：Ｙｅｓ）、特定部２１４が、サブＣＰＵ１３０Ａを内部リセットの発生元のプロセッサとして特定する（ステップＳ８０８）。そして、リセット履歴記憶部２１６が、内部リセットの発生履歴を記憶する（ステップＳ８０９）。さらに、外部リセット信号出力部２１５が、サブＣＰＵ１３０Ａに対し、外部リセット信号（外部リセット信号ＣＰＵ３＿ＲＳＴ）を出力する（ステップＳ８１０）。その後、メインＣＰＵ１１０Ａは、図８に示す一連の処理を終了する。
【０１０９】
一方、ステップＳ８０７において、識別信号Ｓ＿Ｍ＿ＣＰＵ３の入力を受け付けていないと判断された場合（ステップＳ８０７：Ｎｏ）、特定部２１４が、ＩＯ−ＡＳＩＣ１５１，１５２のいずれかを内部リセットの発生元として特定する（ステップＳ８１１）。そして、リセット履歴記憶部２１６が、内部リセットの発生履歴を記憶する（ステップＳ８１２）。さらに、外部リセット信号出力部２１５が、ＩＯ−ＡＳＩＣ１５１，１５２の各々に対し、外部リセット信号（外部リセット信号ＩＯ＿ＡＳＩＣ＿ＲＳＴ）を出力する（ステップＳ８１３）。その後、メインＣＰＵ１１０Ａは、図８に示す一連の処理を終了する。
【０１１０】
なお、この第２実施形態におけるサブＣＰＵ１２０，１３０Ａの処理の手順は、図４および図６に示した第１実施形態のサブＣＰＵ１２０の処理手順と同様である。このため、この第２実施形態におけるサブＣＰＵ１２０，１３０Ａの処理の手順については、図示および説明を省略する。
【０１１１】
以上説明したように、第２実施形態の画像形成装置１０Ａでは、サブＣＰＵ１２０，１３０Ａの各々に、内部リセットの発生元であることを表す識別情報をメインＣＰＵ１１０Ａへ出力する構成を設けている。これにより、メインＣＰＵ１１０Ａは、さらにＩＯ−ＡＳＩＣ１５１，１５２が接続されている場合であっても、サブＣＰＵ１２０，１３０Ａのいずれか内部リセットの発生元であるかを、容易に特定することができるようになっている。
【０１１２】
なお、上記第２実施形態において、ＩＯ−ＡＳＩＣ１５１，１５２の少なくともいずれか一方に対し、サブＣＰＵ１２０，１３０Ａと同様に、内部リセットの発生元であることを表す識別情報をメインＣＰＵ１１０Ａへ出力する構成を設けてもよい。これにより、メインＣＰＵ１１０Ａは、ＩＯ−ＡＳＩＣ１５１，１５２のいずれが内部リセットの発生元であるかを、容易に特定することができるようになる。
【０１１３】
〔第３実施形態〕
次に、図９〜図１２を参照して、本発明の第３実施形態について説明する。この第３実施形態では、メインＣＰＵ１１０Ｂに対し、第２のプロセッサ（サブＣＰＵ１２０Ｂ）と、接続デバイス（ＩＯ−ＡＳＩＣ１５３）とが、直列的に接続（デイジーチェーン接続）されている場合において、各装置における内部リセットの発生を検出する例を説明する。なお、以下第３実施形態の説明においては、第１実施形態からの相違点についてのみ説明し、第１実施形態と同様の機能構成を有するものには第１実施形態と同様の符号を付与し、その説明を省略する。
【０１１４】
（画像形成装置１０Ｂの装置構成）
図９は、本発明の第３実施形態に係る画像形成装置１０Ｂの装置構成を示す図である。図９に示す画像形成装置１０Ｂは、メインＣＰＵ１１０の代わりにメインＣＰＵ１１０Ｂを備える点、サブＣＰＵ１２０の代わりにサブＣＰＵ１２０Ｂを備える点、ＩＯ−ＡＳＩＣ１５３をさらに備える点で、第１実施形態の画像形成装置１０（図１参照）と異なる。
【０１１５】
ＩＯ−ＡＳＩＣ１５３は、センサやモータなどのデバイスを制御するためのデバイスである。ＩＯ−ＡＳＩＣ１５３は、サブＣＰＵ１２０Ｂ，１３０と同様に、不具合発生時に内部リセットを行う内蔵ＷＤＴ（内部リセット部）を備えている。また、識別信号Ｓ＿Ｍ＿ＣＰＵ３は、当該内蔵ＷＤＴによって内部リセットがなされた場合に、内部リセット発生信号（ＷＤＴリセット発生パルスＷＤＲＳＴ６）を出力する構成（内部リセット発生信号出力部）を備えている。また、ＩＯ−ＡＳＩＣ１５３は、外部リセット信号ＩＯ＿ＡＳＩＣ＿ＲＳＴを受けたことに応じて、外部リセットされるように構成されている。図９に示すように、ＩＯ−ＡＳＩＣ１５３は、メインＣＰＵ１１０Ｂには接続されてなく、サブＣＰＵ１２０Ｂに接続されている。このため、ＩＯ−ＡＳＩＣ１５３における内部リセットの発生は、サブＣＰＵ１２０Ｂを介して、メインＣＰＵ１１０Ｂに通知されるようになっている。
【０１１６】
サブＣＰＵ１２０Ｂは、割込みポート１２７、ＧＰＩＯ出力ポート１２８、およびＧＰＩＯ出力ポート１２９をさらに備える点で、第１実施形態のサブＣＰＵ１２０と異なる。割込みポート１２７は、ＩＯ−ＡＳＩＣ１５３から出力されたＷＤＴリセット発生パルスＷＤＲＳＴ６を入力するための端子である。ＧＰＩＯ出力ポート１２８は、識別信号Ｓ＿Ｍ＿ＣＰＵ２'を、メインＣＰＵ１１０Ｂへ出力するための端子である。この識別信号Ｓ＿Ｍ＿ＣＰＵ２'は、通常時はその値が「０」となっている。そして、識別信号Ｓ＿Ｍ＿ＣＰＵ２'は、割込みポート１２７からＷＤＴリセット発生パルスＷＤＲＳＴ６が入力されたことに応じて、その値が「１」となり、ＩＯ−ＡＳＩＣ１５３が内部リセットの発生元のデバイスであることを表すものとなる。ＧＰＩＯ出力ポート１２９は、ＩＯ−ＡＳＩＣ１５３において内部リセットが発生した際に、ＩＯ−ＡＳＩＣ１５３をリセットするための外部リセット信号ＩＯ＿ＡＳＩＣ＿ＲＳＴを、ＩＯ−ＡＳＩＣ１５３へ出力するための端子である。
【０１１７】
メインＣＰＵ１１０Ｂは、ＧＰＩＯ入力ポート１１９をさらに備える点で、第１実施形態のメインＣＰＵ１１０と異なる。ＧＰＩＯ入力ポート１１９は、サブＣＰＵ１２０Ｂから出力された、識別信号Ｓ＿Ｍ＿ＣＰＵ２'が入力される端子である。このように、メインＣＰＵ１１０Ｂは、サブＣＰＵ１２０Ｂに対する入力ポートとして、２つのＧＰＩＯ入力ポート１１２，１１９を備えている。これにより、メインＣＰＵ１１０Ｂは、サブＣＰＵ１２０Ｂから出力された識別信号Ｓ＿Ｍ＿ＣＰＵ２（第１の識別信号）が、ＧＰＩＯ入力ポート１１２から入力された場合、サブＣＰＵ１２０Ｂを内部リセットの発生元として特定することができるようになっている。一方、メインＣＰＵ１１０Ｂは、サブＣＰＵ１２０Ｂから出力された識別信号Ｓ＿Ｍ＿ＣＰＵ２' （第２の識別信号）が、ＧＰＩＯ入力ポート１１９から入力された場合、ＩＯ−ＡＳＩＣ１５３を内部リセットの発生元として特定することができるようになっている。
【０１１８】
（メインＣＰＵ１１０Ｂの処理手順）
図１０は、本発明の第３実施形態に係る画像形成装置１０ＢにおけるメインＣＰＵ１１０Ｂの処理手順を示すフローチャートである。
【０１１９】
まず、検出信号入力部２１１が、内部リセット発生検出信号（すなわち、値が「０」の検出信号Ｓ＿ＣＰＵ＿ＷＡＫＥ）の入力を受け付けたか否かを判断する（ステップＳ１００１）。ステップＳ１００１において、内部リセット発生検出信号の入力を受け付けていないと判断された場合（ステップＳ１００１：Ｎｏ）、メインＣＰＵ１１０Ｂは、ステップＳ１００１の処理を再度実行する。
【０１２０】
一方、ステップＳ１００１において、内部リセット発生検出信号の入力を受け付けたと判断された場合（ステップＳ１００１：Ｙｅｓ）、検出部２１２が、サブＣＰＵ１２０Ｂ，ＣＰＵ１３０、ＩＯ−ＡＳＩＣ１５３のいずれかにおいて内部リセットが発生したことを検出する（ステップＳ１００２）。
【０１２１】
そして、識別信号入力部２１３が、識別信号Ｓ＿Ｍ＿ＣＰＵ２（値＝「１」）の入力を受け付けたか否かを判断する（ステップＳ１００３）。
【０１２２】
ステップＳ１００３において、識別信号Ｓ＿Ｍ＿ＣＰＵ２の入力を受け付けたと判断された場合（ステップＳ１００３：Ｙｅｓ）、特定部２１４が、サブＣＰＵ１２０Ｂを内部リセットの発生元のプロセッサとして特定する（ステップＳ１００４）。そして、リセット履歴記憶部２１６が、内部リセットの発生履歴を記憶する（ステップＳ１００５）。さらに、外部リセット信号出力部２１５が、サブＣＰＵ１２０Ｂに対し、外部リセット信号（外部リセット信号ＣＰＵ２＿ＲＳＴ）を出力する（ステップＳ１００６）。その後、メインＣＰＵ１１０Ｂは、図１０に示す一連の処理を終了する。
【０１２３】
一方、ステップＳ１００３において、識別信号Ｓ＿Ｍ＿ＣＰＵ２の入力を受け付けていないと判断された場合（ステップＳ１００３：Ｎｏ）、識別信号入力部２１３が、識別信号Ｓ＿Ｍ＿ＣＰＵ２'（値＝「１」）の入力を受け付けたか否かを判断する（ステップＳ１００７）。
【０１２４】
ステップＳ１００７において、識別信号Ｓ＿Ｍ＿ＣＰＵ２'の入力を受け付けたと判断された場合（ステップＳ１００７：Ｙｅｓ）、特定部２１４が、ＩＯ−ＡＳＩＣ１５３を内部リセットの発生元のデバイスとして特定する（ステップＳ１００８）。そして、リセット履歴記憶部２１６が、内部リセットの発生履歴を記憶する（ステップＳ１００９）。その後、メインＣＰＵ１１０Ｂは、図１０に示す一連の処理を終了する。
【０１２５】
一方、ステップＳ１００７において、識別信号Ｓ＿Ｍ＿ＣＰＵ２'の入力を受け付けていないと判断された場合（ステップＳ１００７：Ｎｏ）、特定部２１４が、サブＣＰＵ１３０を内部リセットの発生元のプロセッサとして特定する（ステップＳ１０１０）。そして、リセット履歴記憶部２１６が、内部リセットの発生履歴を記憶する（ステップＳ１０１１）。さらに、外部リセット信号出力部２１５が、サブＣＰＵ１３０に対し、外部リセット信号（外部リセット信号ＣＰＵ３＿ＲＳＴ）を出力する（ステップＳ１０１２）。その後、メインＣＰＵ１１０Ｂは、図１０に示す一連の処理を終了する。
【０１２６】
（サブＣＰＵ１２０Ｂの処理手順）
図１１は、本発明の第３実施形態に係る画像形成装置１０ＢにおけるサブＣＰＵ１２０Ｂの処理手順を示すフローチャートである。ここでは、サブＣＰＵ１２０Ｂに対し、ＩＯ−ＡＳＩＣ１５３から出力されたＷＤＴリセット発生パルスＷＤＲＳＴ６が入力されたときに、サブＣＰＵ１２０Ｂが実行する処理について説明する。
【０１２７】
なお、サブＣＰＵ１２０Ｂは、図２に示したサブＣＰＵ１２０の機能に加えて、ＩＯ−ＡＳＩＣ１５３において内部リセットが発生した際の各種制御を行う「接続デバイス制御部」をさらに備える。すなわち、図１１の処理は、この「接続デバイス制御部」が実行するものとする。この「接続デバイス制御部」は、例えば、ＣＰＵ１２０Ｂが備える制御部１２６（図９参照）によって実現される。
【０１２８】
まず、接続デバイス制御部は、ＩＯ−ＡＳＩＣ１５３から出力された内部リセット発生信号（ＷＤＴリセット発生パルスＷＤＲＳＴ６）の入力を受け付けたか否かを判断する（ステップＳ１１０１）。ステップＳ１１０１において、内部リセット発生信号の入力を受け付けていないと判断された場合（ステップＳ１１０１：Ｎｏ）、接続デバイス制御部は、ステップＳ１１０１の処理を再度実行する。
【０１２９】
一方、ステップＳ１１０１において、内部リセット発生信号の入力を受け付けたと判断された場合（ステップＳ１１０１：Ｙｅｓ）、接続デバイス制御部は、ＷＤＴリセットステータスレジスタ１２３に、異常フラグ２を設定する（ステップＳ１１０２）。異常フラグ２は、ＩＯ−ＡＳＩＣ１５３において内部リセットが発生したことを表すものである。
【０１３０】
次に、接続デバイス制御部は、サブＣＰＵ１２０Ｂの内部リセットを行う（ステップＳ１１０３）。このとき、接続デバイス制御部は、ＷＤＴリセットステータスレジスタ１２３に対し、異常フラグ１をさらに設定する（ステップＳ１１０４）。異常フラグ１は、サブＣＰＵ１２０Ｂにおいて内部リセットが発生したことを表すものである。
【０１３１】
その後、接続デバイス制御部は、ＩＯ−ＡＳＩＣ１５３に対し、外部リセット信号（外部リセット信号ＣＰＵ２＿ＲＳＴ）を出力する（ステップＳ１１０５）。その後、接続デバイス制御部は、図１１に示す一連の処理を終了する。
【０１３２】
（初期化処理の手順）
図１２は、本発明の第３実施形態に係る画像形成装置１０Ｂにおける初期化処理部２２６による初期化処理の手順を示すフローチャートである。
【０１３３】
まず、初期化処理部２２６は、ＷＤＴリセットステータスレジスタ１２３を参照する（ステップＳ１２０１）。そして、初期化処理部２２６は、ステップＳ１２０１での参照結果に基づき、ＷＤＴリセットステータスレジスタ１２３内に、異常フラグ１のみが設定されているか否かを判断する（ステップＳ１２０２）。
【０１３４】
ステップＳ１２０２において、異常フラグ１のみが設定されていると判断された場合（ステップＳ１２０２：Ｙｅｓ）、初期化処理部２２６は、ＧＰＩＯ出力ポート１２４を除く全ての入出力ポートの初期設定を行う（ステップＳ１２０３）。そして、初期化処理部２２６は、所定の待機時間Ｔが経過するまで待機する（ステップＳ１２０４）。その後、初期化処理部２２６は、ＧＰＩＯ出力ポート１２４の初期設定を行う（ステップＳ１２０５）。そして、初期化処理部２２６は、図１２に示す一連の処理を終了する。
【０１３５】
一方、ステップＳ１２０２において、異常フラグ１のみが設定されていると判断されなかった場合（ステップＳ１２０２：Ｎｏ）、初期化処理部２２６は、ステップＳ１２０１での参照結果に基づき、ＷＤＴリセットステータスレジスタ１２３内に、異常フラグ１および異常フラグ２の双方が設定されているか否かを判断する（ステップＳ１２０６）。
【０１３６】
ステップＳ１２０６において、異常フラグ１および異常フラグ２の双方が設定されていると判断された場合（ステップＳ１２０６：Ｙｅｓ）、初期化処理部２２６は、ＧＰＩＯ出力ポート１２８を除く全ての入出力ポートの初期設定を行う（ステップＳ１２０７）。そして、初期化処理部２２６は、所定の待機時間Ｔが経過するまで待機する（ステップＳ１２０８）。その後、初期化処理部２２６は、ＧＰＩＯ出力ポート１２８の初期設定を行う（ステップＳ１２０９）。そして、初期化処理部２２６は、図１２に示す一連の処理を終了する。
【０１３７】
一方、ステップＳ１２０６において、異常フラグ１および異常フラグ２の双方が設定されていると判断されなかった場合（ステップＳ１２０６：Ｎｏ）、初期化処理部２２６は、全ての入出力ポートの初期設定を行う（ステップＳ１２１０）。そして、初期化処理部２２６は、図１２に示す一連の処理を終了する。
【０１３８】
図１２の初期化処理によれば、サブＣＰＵ１２０Ｂにおいて内部リセットが発生した場合（すなわち、異常フラグ１のみが設定されている場合）には、識別信号Ｓ＿Ｍ＿ＣＰＵ２が出力されるＧＰＩＯ出力ポート１２４の初期設定タイミングを遅らせる。これにより、サブＣＰＵ１２０Ｂのリセット状態が解除された後も、メインＣＰＵ１１０Ｂが、サブＣＰＵ１２０Ｂを内部リセットの発生元のプロセッサとして特定することができる。
【０１３９】
また、ＩＯ−ＡＳＩＣ１５３において内部リセットが発生した場合（すなわち、異常フラグ１，２の双方が設定されている場合）には、識別信号Ｓ＿Ｍ＿ＣＰＵ２'が出力されるＧＰＩＯ出力ポート１２８の初期設定タイミングを遅らせる。これにより、サブＣＰＵ１２０Ｂの初期化処理が開始された後も、メインＣＰＵ１１０Ｂが、ＩＯ−ＡＳＩＣ１５３を内部リセットの発生元のプロセッサとして特定することができる。
【０１４０】
以上説明したように、第３実施形態の画像形成装置１０Ｂでは、サブＣＰＵ１２０Ｂが、サブＣＰＵ１２０Ｂにおける内部リセットの発生通知と、ＩＯ−ＡＳＩＣ１５３における内部リセットの発生通知との双方を、メインＣＰＵ１１０Ｂに対して行う。これにより、メインＣＰＵ１１０Ｂは、直接接続されていないＩＯ−ＡＳＩＣ１５３についても、内部リセットの発生元であるかを容易に特定することができるようになっている。
【０１４１】
なお、上記各実施形態では、本発明を画像形成装置に適用する例について説明したが、これに限らない。本発明は、少なくとも複数のプロセッサを備えた電子機器であれば、如何なる電子機器にも適用可能である。
【０１４２】
また、上記各実施形態では、内部リセットの発生元のプロセッサ（またはデバイス）を特定し、このプロセッサ（またはデバイス）を外部リセットするようにしているが、これに限らない。本発明は、外部リセット以外の目的で、内部リセットの発生元のプロセッサ（およびデバイス）を特定するようにしてもよい。
【０１４３】
また、上記各実施形態において、各種信号において論理値（「０」および「１」）を反転させるようにしてもよい。例えば、各内部リセット発生信号について、通常時の値を「０」とし、内部リセット発生時の値を「１」としてもよい。
【０１４４】
以上、本発明の好ましい実施形態について詳述したが、本発明はこれらの実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形又は変更が可能である。
【符号の説明】
【０１４５】
１０  画像形成装置
１１０  メインＣＰＵ（第１のプロセッサ）
１２０  サブＣＰＵ（第２のプロセッサ）
１３０  サブＣＰＵ（第３のプロセッサ）
２１１  検出信号入力部
２１２  検出部
２１３  識別信号入力部
２１４  特定部
２１５  外部リセット信号出力部
２１６  リセット履歴記憶部
２２１，２３１  内部リセット部
２２２，２３２  内部リセット発生信号出力部
２２３  識別信号出力部
２２４，２３３  外部リセット信号入力部
２２５，２３４  リセット部
２２６，２３５  初期化処理部
【先行技術文献】
【特許文献】
【０１４６】
【特許文献１】特許第５０６３２１２号公報
【図１】
2018092488.tif 000003
【図２】
2018092488.tif 000004
【図３】
2018092488.tif 000005
【図４】
2018092488.tif 000006
【図５】
2018092488.tif 000007
【図６】
2018092488.tif 000008
【図７】
2018092488.tif 000009
【図８】
2018092488.tif 000010
【図９】
2018092488.tif 000011
【図１０】
2018092488.tif 000012
【図１１】
2018092488.tif 000013
【図１２】
2018092488.tif 000014