(57)【要約】【課題】一つのＣＰＵに異常が検出された場合、システム全体のダウンタイムを低減できる画像形成装置を提供すること。【解決手段】ソフトウェア記憶手段２０３と、プロセッサ２０１と、処理の進行結果を記憶する記憶手段２０７と、ソフトウェア暴走検出手段２０４と、外部バス２９０と、を有する複数の情報処理装置２１０を備えた画像形成装置１００であって、第一の情報処理装置は、外部バスを介して他の情報処理装置に暴走通知を通知する暴走通知手段４０３と、を有し、暴走通知を取得した第二の情報処理装置が、第一の情報処理装置から進行結果を読み出す情報読み出し手段２３２と、進行結果を記憶手段に記憶し、第一及び第二の情報処理装置以外の情報処理装置に送信する進行結果送信手段２３３と、再起動後の前記第一の情報処理装置に処理を再開させる復帰手段２３４と、を有する。【選択図】図１
2013054314.tif 000002
【特許請求の範囲】
【請求項１】
ソフトウェアを記憶するソフトウェア記憶手段と、
ソフトウェアを実行するプロセッサと、
処理の進行結果を記憶する記憶手段と、
ソフトウェアの暴走を検出してプロセッサを再起動するソフトウェア暴走検出手段と、
他の情報処理装置と通信する外部バスと、を有する複数の情報処理装置を備えた画像形成装置であって、
第一の情報処理装置は、前記ソフトウェア暴走検出手段がソフトウェアの暴走を検出した場合、前記外部バスを介して他の情報処理装置に暴走通知を通知する暴走通知手段、を有し、
暴走通知を取得した第二の情報処理装置が、第一の情報処理装置の前記記憶手段から前記進行結果を読み出す情報読み出し手段と、
前記進行結果を当該第二の情報処理装置の前記記憶手段に記憶し、さらに、前記第一及び第二の情報処理装置以外の情報処理装置に送信する進行結果送信手段と、
再起動後の前記第一の情報処理装置に処理を再開させる復帰手段と、を有する画像形成装置。
【請求項２】
各情報処理装置が、
常態で接続状態のプロセッサと前記記憶手段とを切断する第一の切替手段と、
常態では前記プロセッサと前記外部バスと接続させ、前記プロセッサ、前記暴走通知手段、又は、前記記憶手段のいずれかと前記外部バスとを選択的に接続させる第二の切替手段と、
前記ソフトウェア暴走検出手段がソフトウェアの暴走を検出した場合、前記第一の切替手段にプロセッサと前記記憶手段とを切断させ、前記第二の切替手段に前記暴走通知手段と外部バスとを接続させる接続制御手段と、を有する、
ことを特徴とする請求項１記載の画像形成装置。
【請求項３】
前記接続制御手段は、
前記第二の情報処理装置の前記情報読み出し手段から前記進行結果の読み出し要求を取得した場合、前記前記第二の切替手段に前記記憶装置と外部バスとを接続させる、
ことを特徴とする請求項２記載の画像形成装置。
【請求項４】
前記接続制御手段は、
前記第二の情報処理装置の前記復帰手段から復帰要求を取得した場合、前記第一の切替手段に前記プロセッサと前記記憶手段とを接続させ、前記第二の切替手段に前記プロセッサと前記外部バスとを接続させる、
ことを特徴とする請求項２又は３記載の画像形成装置。
【請求項５】
複数の情報処理装置のうち最も早く前記第一の情報処理装置に前記進行結果の読み出しを要求した前記第二の情報処理装置のみが、前記進行結果の読み出しを行う、
ことを特徴とする請求項１〜４いずれか１項記載の画像形成装置。
【請求項６】
暴走通知を取得した他の情報処理装置は、動作中であれば動作の終了後に待機状態となる、
ことを特徴とする請求項１〜５いずれか１項記載の画像形成装置。
【請求項７】
暴走通知を取得した他の情報処理装置は、前記第一の情報処理装置の識別結果に基づき、第一の情報処理装置が暴走しても動作が可能であれば動作を継続し、第一の情報処理装置が暴走すると動作を継続できない場合、待機状態となる、
ことを特徴とする請求項１〜５いずれか１項記載の画像形成装置。
【請求項８】
前記第一の情報処理装置は、
前記再起動手段による再起動後、処理を継続可能か否かを判定し、
継続可能でない場合、他の情報処理装置に通知すると共に、動作を停止する、
ことを特徴とする請求項１〜５いずれか１項記載の画像形成装置。
【請求項９】
前記第一の情報処理装置が、他の情報処理装置に処理を継続可能でない旨を通知した場合、
前記第一の情報処理装置及び前記第二の情報処理装置を制御する制御用の情報処理装置が、前記第一の情報処理装置の識別結果と処理内容に応じて、前記第一の情報処理装置が停止していても提供可能な処理要求を、操作受付手段又は外部ネットワークを介して受け付ける、
ことを特徴とする請求項８記載の画像形成装置。
【請求項１０】
前記第一の情報処理装置が、用紙にトナー画像を定着させる定着装置の制御部の場合、原稿を光学的に読み取る読み取り装置の前記第二の情報処理装置は、該読み取り装置に読み取りを継続させる、
ことを特徴とする請求項６記載の画像形成装置。
【請求項１１】
前記第一の情報処理装置が前記定着装置の温度制御を行っている場合、前記第二の情報処理装置は、該読み取り装置に読み取り動作を停止させる、
ことを特徴とする請求項１０記載の画像形成装置。
【請求項１２】
前記第一の情報処理装置が、給紙トレイから用紙を搬送する給紙装置の制御部の場合、原稿を光学的に読み取る読み取り装置の前記第二の情報処理装置は、該読み取り装置に読み取りを継続させる、
ことを特徴とする請求項６記載の画像形成装置。
【請求項１３】
前記第一の情報処理装置が、給紙トレイから用紙を搬送する給紙装置の制御部の場合、レーザを照射して静電潜像を形成する書込装置の前記第二の情報処理装置、トナー画像を生成する作像装置の前記第二の情報処理装置、及び、用紙にトナー画像を定着させる定着装置の前記第二の情報処理装置は、動作を停止させる、
ことを特徴とする請求項６記載の画像形成装置。
【請求項１４】
ソフトウェアを記憶するソフトウェア記憶手段と、ソフトウェアを実行するプロセッサと、処理の進行結果を記憶する記憶手段と、他の情報処理装置と通信する外部バスと、を有する複数の情報処理装置を備えた画像形成装置の動作制御方法であって、
ソフトウェア暴走検出手段がソフトウェアの暴走を検出するステップと、
前記ソフトウェア暴走検出手段がソフトウェアの暴走を検出した場合、第一の情報処理装置の暴走通知手段が、前記外部バスを介して他の情報処理装置に暴走通知を通知するステップと、
再起動手段が前記プロセッサを再起動するステップと、
暴走通知を取得した第二の情報処理装置の情報読み出し手段が、第一の情報処理装置の前記記憶手段から前記進行結果を読み出すステップと、
進行結果送信手段が、前記進行結果を第二の情報処理装置の記憶手段に記憶し、さらに、前記第一及び第二の情報処理装置以外の情報処理装置に送信するステップと、
復帰手段が、再起動後の前記第一の情報処理装置に処理を再開させるステップと、
を有する動作制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ソフトウェアの暴走を検出することが可能な複数の情報処理装置を有する画像形成装置に関する。
【背景技術】
【０００２】
１つの機器に複数のＣＰＵが搭載されることがある。各ＣＰＵが制御対象の各機能を他のＣＰＵと協調しながら制御することで機器全体の性能の向上が図れる。各ＣＰＵは、それぞれ特定の処理を受け持ち、統合管理用のＣＰＵとデータ通信することで全体的な制御構成が実現されている（例えば、特許文献１参照。）。
【０００３】
特開文献１には、複数のプロセッサが管理プロセッサによって管理され、バス制御装置によって共有メモリへのアクセスが制御されるマルチプロセッサシステムに関して、あるプロセッサで障害が発生したとき、障害発生に至るまでの全プロセッサの連携動作を記録しておくマルチプロセッサが開示されている。
【０００４】
そして、特許文献１では、不具合に対応するため障害時の情報を記憶しておく技術を提案している。すなわち、各プロセッサは、障害を検出した時、自己の走行履歴情報の収集を停止すると共に他のプロセッサへ障害検出を通知する。各プロセッサは、自己の走行履歴情報の収集を停止した後、走行履歴情報を共有メモリ以外に設けた不揮発性メモリに格納する。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、プリンタや複写機等の画像形成装置においても複数のＣＰＵを搭載する試みがある。画像形成装置に複数のＣＰＵが搭載されれば、画質向上、操作性向上、省エネ性の向上等が可能になる。特に省エネ技術については、電源装置に配置されたＣＰＵが使用電力量を監視することで使用電力量に応じた電源制御を実現している。
【０００６】
しかしながら、複数のＣＰＵを搭載した機器では、ＣＰＵの数が増える分、不具合が生じる頻度が高くなるおそれがある。一般的なＣＰＵにはソフトウェアの暴走を監視するためにウォッチドッグタイマなどの監視機能が搭載されており、ソフトウェアの暴走時にはＣＰＵを自動的にリセットすることで、復帰させることができる。しかし、複数のＣＰＵが搭載された画像形成装置において、ＣＰＵのいずれか１つに不具合が検出された場合に、不具合が検出されたＣＰＵだけをリセットしてもそのままでは印刷を再開することは困難である。
【０００７】
例えば、ＣＰＵ１が紙送りを制御し、別のＣＰＵ２が定着装置を制御している場合において、ＣＰＵ１の不具合が検出された場合に、ＣＰＵ２は定着装置を止めるべきなのか定着工程を継続すべきなのかを判断できない。定着装置は高温になるため、ＣＰＵ２には不具合がなくても一般には定着装置を停止させることが好ましい。よって、システムの全体をリセットした後で、正常であることが確認された後に、画像形成装置は最初から印刷を再開する。このように各ＣＰＵをリセットすると、復帰するまでの間、システム全体がダウンしてしまい、何も動作させることが出来ないという問題がある。
【０００８】
複数のＣＰＵが搭載された場合に、不具合の検出されたＣＰＵ又はそのＣＰＵが搭載された情報処理装置のみをリセットすることで、画像形成装置が印刷を再開するには、不具合が検出されたＣＰＵの状況を他のＣＰＵが把握するなどの制御が必要になる。
【０００９】
本発明は上記課題に鑑み、複数のＣＰＵのいずれかに異常が検出された場合に、システム全体のダウンタイムを低減できる画像形成装置を提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明は、ソフトウェアを記憶するソフトウェア記憶手段と、ソフトウェアを実行するプロセッサと、処理の進行結果を記憶する記憶手段と、ソフトウェアの暴走を検出して前記プロセッサを再起動するソフトウェア暴走検出手段と、他の情報処理装置と通信する外部バスと、を有する複数の情報処理装置を備えた画像形成装置であって、第一の情報処理装置は、前記ソフトウェア暴走検出手段がソフトウェアの暴走を検出した場合、前記外部バスを介して他の情報処理装置に暴走通知を通知する暴走通知手段と、を有し、暴走通知を取得した第二の情報処理装置が、第一の情報処理装置の前記記憶手段から前記進行結果を読み出す情報読み出し手段と、前記進行結果を当該前記第二の情報処理装置の前記記憶手段に記憶し、さらに、前記第一及び第二の情報処理装置以外の情報処理装置に送信する進行結果送信手段と、再起動後の前記第一の情報処理装置に処理を再開させる復帰手段と、を有する。
【発明の効果】
【００１１】
一つのＣＰＵに異常が検出された場合、システム全体のダウンタイムを低減できる画像形成装置を提供することができる。
【図面の簡単な説明】
【００１２】
【図１】複数のＣＰＵの１つに異常が生じた場合の各ＣＰＵの動作を説明する図の一例である。
【図２】画像形成装置の全体構成図の一例である。
【図３】画像形成装置の制御系のブロック図の一例である。
【図４】復旧処理中制御部が有する機能の機能ブロック図の一例である。
【図５】調停回路の構成図の一例である。
【図６】調停回路の構成図の一例である。
【図７】暴走通知コマンド、ジョブ実行情報の一例を示す図である。
【図８】各制御部の動作フローを説明する図の一例である。
【図９】画像形成装置の動作手順を示す図の一例である（実施例２）。
【図１０】動作決定テーブルの一例を示す図である。
【図１１】画像形成装置の動作手順を示す図の一例である（実施例２）。
【図１２】画像形成装置の動作手順を示す図の一例である（実施例２）。
【図１３】画像形成装置の動作手順を示す図の一例である（実施例２）。
【図１４】待機状態の紙搬送制御のＣＰＵにリセットが発生した場合の画像形成装置の動作手順の一例を示すフローチャート図である（実施例３）。
【図１５】待機状態の紙搬送制御のＣＰＵにリセットが発生した場合の画像形成装置の動作手順の一例を示すフローチャート図である（実施例３）。
【図１６】コピー動作中に紙搬送制御のＣＰＵにリセットが発生した場合の画像形成装置の動作手順の一例を示すフローチャート図である。
【図１７】プリンタ動作中に紙搬送制御のＣＰＵにリセットが発生した場合の画像形成装置の動作手順の一例を示すフローチャート図である。
【発明を実施するための形態】
【００１３】
以下、本発明を実施するための形態について図面を参照しながら説明する。
【実施例１】
【００１４】
図１は、複数のＣＰＵの１つに異常が生じた場合の各ＣＰＵの動作を説明する図の一例である。なお、ＣＰＵ１〜３は後述する制御部（情報処理装置の一態様）の一部であるが、説明のため制御部でなくＣＰＵで表す。
(i)  ＣＰＵ１は読み取り制御を、ＣＰＵ２は紙搬送制御を、ＣＰＵ３は定着制御を、それぞれ司る。ＣＰＵ１〜３は、それぞれのプリントのジョブのジョブ実行情報を記憶している。ジョブ実行情報には、少なくとも処理中のジョブのジョブＩＤが含まれる。
【００１５】
図ではＣＰＵ２が実行するソフトウェアが暴走するなどの異常が生じたものとする（以下、単に「ＣＰＵ２が暴走する」と記載する場合がある）。ＣＰＵ２が搭載された制御部は、ＣＰＵ２が暴走すると暴走通知コマンドをＣＰＵ１，３に同報的に出力する。
(ii)  暴走通知コマンドを取得したＣＰＵ１，３のうち、処理負荷が小さいＣＰＵは早期に暴走通知に対応可能となる。ここではＣＰＵ１がＣＰＵ３よりも先に暴走通知コマンドに対応を開始したものとする。このように、処理負荷が小さいＣＰＵ１が、暴走したＣＰＵ２の復旧処理を行うことが特徴の１つとなっている。
【００１６】
ＣＰＵ１は、復旧処理のためＣＰＵ２が管理するジョブ実行情報に含まれるジョブＩＤを読み出す。このジョブＩＤは、ＣＰＵ２が完了させることなく暴走が生じたジョブのジョブＩＤであると推定される。また、ＣＰＵ１がジョブＩＤを読み取ることで、ＣＰＵ２は暴走通知を解除する。
(iii)  ＣＰＵ１は、ＣＰＵ２から取得したジョブＩＤを自己のジョブ実行情報に記憶すると共に、ＣＰＵ３に通知する。すなわち、各ＣＰＵ１，３が暴走したＣＰＵ２のジョブＩＤを共有することができる。これにより、暴走したＣＰＵ２と他のＣＰＵ１，３が同じジョブから処理を再開できる。
(iv)  ＣＰＵ１は、ジョブＩＤを自己で記憶しＣＰＵ３に通知すると、ＣＰＵ２に復帰要求（復帰コマンドを送信）する。この後、ＣＰＵ２はリセットにより復旧（再起動）する。
(v)  ＣＰＵ２がリセットにより復旧すると、ＣＰＵ２は復帰完了通知をＣＰＵ１，３に同報的に出力する。なお、ＣＰＵ２は、ジョブ実行情報を読み出して処理を再開する。これにより、各ＣＰＵ１〜３が同期して各動作を再開することができる。
【００１７】
〔構成例〕
図２は、画像形成装置１００の全体構成図の一例を示す。画像形成装置１００は、大きな構成として、自動原稿送り装置（ＡＲＤＦ）１４０と、原稿読み取り部１３０、書き込みユニット１２０、作像ユニット１１０、及び、給紙ユニット１５０を有する。
【００１８】
ＡＲＤＦ１４０は、原稿給紙台上に積載された原稿を、ＡＲＤＦモータで１枚ずつ画像読み取り部のコンタクトガラス上に搬送し、原稿の画像データを読み取った後にＡＲＤＦモータが原稿を排紙トレイ上に排出する。なお、１つのＡＲＤＦには複数のＡＲＤＦモータが搭載されている。
【００１９】
原稿読み取り部１３０は、原稿を載置するためのコンタクトガラス１１と、光学走査系を有し、光学走査系は、露光ランプ４１、第１ミラー４２、第２ミラー４３、第３ミラー４４、レンズ４５及びフルカラーＣＣＤ４６を備える。露光ランプ４１及び第１ミラー４２は、第１キャリッジに装備され、第１キャリッジは、原稿を読み取る際に、スキャナモータによって一定速度で副走査方向に移動する。第２ミラー４３及び第３ミラー４４は、第２キャリッジに装備され、第２キャリッジは、原稿を読み取る際に、スキャナモータによって第１キャリッジのほぼ１／２の速度で移動する。そして、第１キャリッジ及び第２キャリッジが移動することによって、原稿の画像面が光学的に走査され、読み取られたデータがレンズによってフルカラーＣＣＤ４６の受光面に結像され、光電変換される。
【００２０】
次に、フルカラーＣＣＤ（又はフルカラーラインＣＣＤ）４６によって、赤（Ｒ）、緑（Ｇ）及び青（Ｂ）の各色に光電変換された画像データは、不図示の画像処理回路でＡ／Ｄ変換された後に画像処理回路によって各種の画像処理（γ補正、色変換、画像分離、階調補正等）が施される。
【００２１】
ユーザが複写する操作を指示した場合や、画像形成装置１００をプリンタとして利用する場合、作像ユニット１１０が各色毎に感光体ドラムに潜像を形成する。図では、４つの感光体ユニット１３（イエロー用の１３ｙ，マゼンダ用の１３ｍ，シアン用の１３ｃ，ブラック用の１３Ｂｋ）が、中間転写ベルト１４の搬送方向に沿って並設されている。各感光体ユニット１３ｙ、１３ｍ、１３ｃ、１３Ｂｋには、像担持体であるドラム状の感光体ドラム２７ｙ、２７ｍ、２７ｃ、２７Ｂｋと、感光体ドラム２７ｙ、２７ｍ、２７ｃ、２７Ｂｋを帯電させる帯電装置４８ｙ、４８ｍ、４８ｃ、４８Ｂｋ、露光装置４７ｙ、４７ｍ、４７ｃ、４７Ｂｋ、現像装置１６ｙ、１６ｍ、１６ｃ、１６Ｂｋ及びクリーニング装置４９ｙ、４９ｍ、４９ｃ、４９Ｂｋが設けられている。
【００２２】
露光装置４７ｙ、４７ｍ、４７ｃ、４７Ｂｋは、例えば、図示の例では感光体ドラム２７ｙ、２７ｍ、２７ｃ、２７Ｂｋの軸方向（主走査方向）に配置された発光ダイオード（ＬＥＤ）アレイとレンズアレイからなるＬＥＤ書込み方式にて露光する。露光装置４７ｙ、４７ｍ、４７ｃ、４７Ｂｋは、各色毎に光電変換された画像データに応じてＬＥＤを発光して感光体ドラム２７ｙ、２７ｍ、２７ｃ、２７Ｂｋ上に静電潜像を形成する。現像装置１６ｙ、１６ｍ、１６ｃ、１６Ｂｋは、現像剤を担持して回転する現像ローラが、感光体ドラム２７ｙ、２７ｍ、２７ｃ、２７Ｂｋ上に形成された静電潜像をトナーで可視化することで各色毎にトナー像を形成する。
【００２３】
感光体ドラム２７ｙ、２７ｍ、２７ｃ、２７Ｂｋに形成されたトナー像は、感光体ドラム２７ｙ、２７ｍ、２７ｃ、２７Ｂｋと中間転写ベルト１４とが接する位置（以下、一次転写位置という）で、中間転写ベルト１４上に転写される。感光体ドラム２７ｙ、２７ｍ、２７ｃ、２７Ｂｋには、中間転写ベルト１４を介して中間転写ローラ２６ｙ、２６ｍ、２６ｃ、２６Ｂｋが感光体ユニット１３ｙ、１３ｍ、１３ｃ、１３Ｂｋと対にそれぞれ対向配置されている。各中間転写ローラ２６ｙ、２６ｍ、２６ｃ、２６Ｂｋは、中間転写ベルト１４の内周面と接触しており、中間転写時に上方向に移動することで中間転写ベルト１４を各感光体の表面に接触させる。中間転写ローラ２６ｙ、２６ｍ、２６ｃ、２６Ｂｋにそれぞれに電圧が印可されることで、感光体ドラム２７ｙ、２７ｍ、２７ｃ、２７Ｂｋのトナー像が中間転写ベルト１４に転写されるための中間転写電界が発生する。中間転写電界の作用により、中間転写ベルト１４上にトナー画像が形成される。各色のトナー画像は重畳して転写され、フルカラーのトナー画像が中間転写ベルト１４に形成される。
【００２４】
全ての色の作像と転写が終了した時点で、中間転写ベルト１４とタイミングを合わせて給紙トレイ２２から、給紙ロータが記録紙５３を給紙し、二次転写部５０で中間転写ベルト１４から４色同時に記録紙５３へトナー像が二次転写される。
【００２５】
記録紙５３は、第１トレイ２２ａ、第２トレイ２２ｂ、第３トレイ２２ｃ、第４トレイ２２ｄ、手差しトレイ、又は、両面ユニットのいずれかから選択される。各給紙トレイ２２ａ〜２２ｄは、内部に収容された記録紙５３を一番上のものから順次送り出す給紙ローラ２８、給紙ローラ２８によって重送されてしまった複数の記録紙５３を個々に分離してから搬送路２３に送り出す分離ローラ３１を有している。これにより、記録紙５３は、搬送路２３に向けて搬送開始される。この一連の給紙ローラ２８は給紙モータにより駆動されている。
【００２６】
給紙ユニット１５０は、搬送路２３の途中に適宜設けられた複数の搬送ローラ対２９等を備えている。給紙モータにより駆動される搬送ローラ対２９は、給紙トレイ２２から搬送された記録紙５３を後段の搬送ローラ対２９、作像ユニット１１０の給紙路３２に向けて送り出す。給紙路３２に送り込まれた記録紙５３は、その先端がレジストセンサ５１によって検出された後、所定時間が経過すると、レジストローラ３３に突き当てられて一端停止する。このレジストローラ３３は、レジストモータにより駆動され、挟み込んだ記録紙５３を所定のタイミング（副走査有効期間信号（ＦＧＡＴＥ）に同期して）で二次転ローラ１８の位置まで送り込む。所定のタイミングは、中間転写ベルト１４の回転によりフルカラーの重ね合わせトナー画像が二次転ローラ１８の位置まで搬送されたタイミングである。
【００２７】
二次転ローラ１８は、斥力ローラ１７と対向配置される。画像形成装置１００は、印刷時に二次転ローラ１８を中間転写ベルト１４に当接させる。二次転ローラ１８は二次転モータにより二次転モータの外周の速度が中間転写ベルト１４の表面速度と同じになるよう制御されている。
【００２８】
記録紙５３は、中間転写ベルト１４から分離器（不図示）により分離された後に、搬送ベルト２４によって定着装置１９まで搬送され、定着装置１９は記録紙５３にトナー像を定着させる。片面印刷の場合、定着後の記録紙５３は、排紙モータにより駆動される排紙ローラにより排紙トレイ２１上に排出される。
【００２９】
図２では、電子写真方式で画像を記録紙５３に形成する画像形成装置１００を例示したが、画像形成方式は、インク滴を吐出して画像を形成するインクジェット方式、昇華型熱転写方式、ドットインパクト方式の画像形成装置でもよい。
【００３０】
図３は、画像形成装置１００の制御系のブロック図の一例を示す。画像形成装置１００は、コントローラ制御部２１０とＰＣＩバス２８０を介して接続された、読み取り制御部２３０、エンジン制御部２２０、及び、書き込み制御部２４０を有する。また、読み取り制御部２３０、エンジン制御部２２０及び書き込み制御部２４０は、それぞれ紙搬送制御部２５０、定着制御部２６０、電源制御部３００、及び、作像制御部２７０とローカルバスやシリアルバス（以下、外部バス２９０という）などを介して接続されている。以下、読み取り制御部２３０、エンジン制御部２２０、書き込み制御部２４０、紙搬送制御部２５０、定着制御部２６０、電源制御部３００、及び、作像制御部２７０を単に「制御部」という。図示する白抜きの両端矢印線は画像データの流れを示し、太い両端矢印線は制御部が互いに通信するための外部バス１９０を示す。信号線２９１は、各制御部を直接、接続しており、High又はLowの信号を送受信することを可能にしている。後述するように、信号線２９１は必ずしも必要ではない。
【００３１】
コントローラ制御部２１０は、画像形成動作の設定を受け付け、画像形成のための動作情報（少なくともジョブＩＤを含む）を生成し各制御部に送信する。コントローラ制御部２１０は、主に画像処理を行うＡＳＩＣ、各種の処理動作を制御するＣＰＵ、制御用プログラムを固定的に記憶したＲＯＭ、各種情報を一時的に記憶するＲＡＭ、デジタル複写機の動作に必要な全てのパラメータを記憶するNV-RAM等を有する。また、外部機器からＬＡＮ等のネットワークを介して情報を送受信するＬＡＮインターフェース（不図示）、ユーザーインターフェースとなる操作パネル２１４を制御する操作部制御部２１１、処理対象の画像データを格納するＨＤＤ２１２、ＦＡＸ通信を行うＦＣＵ２１３と接続されている。
【００３２】
コントローラ制御部２１０は、操作部制御部２１１から、又は、外部機器からＬＡＮインターフェースを介して画像形成動作の設定を受け付け、エンジン制御部２２０に画像処理を要求する。
【００３３】
エンジン制御部２２０は、読み取り制御部２３０、書き込み制御部２４０、紙搬送制御部２５０、定着制御部２６０、電源制御部３００、及び、作像制御部２７０の各制御部を制御する。エンジン制御部は、画像データの転送、ジョブの内容に応じた各制御部への動作要求、進捗管理等を行う。
【００３４】
読み取り制御部２３０は、ＡＲＤＦ１４０と接続され、原稿読み取りユニット１３０を制御する。ＡＲＤＦ１４０は、セットされた原稿の定形用紙サイズを検出し、また、用紙サイズの異なる原稿が混載された場合でも自動的に判別する。ＡＲＤＦ１４０は、原稿の存在を検出して原稿が存在する間、原稿を原稿読み取りユニット１３０へ１枚ずつ自動的に供給する。
【００３５】
読み取り制御部２３０は、原稿読み取りユニット１３０を制御して原稿の画像データを生成する。ユーザが読み取り開始を操作部制御部２１１に指示すると、エンジン制御部２２０から指示された読み取り制御部２３０は、露光ランプを点灯させ、原稿読み取り部１３０に含まれる第１キャリッジと第２キャリッジの位置をコンタクトガラスの左端に移動させる。読み取り制御部２３０は、第１キャリッジと第２キャリッジが左端に来ると、ＡＲＤＦ１４０にコンタクトガラスに原稿を１枚供給させる。読み取り制御部２３０は、コンタクトガラスの原稿を検出すると、第１及び第２キャリッジを移動させながら原稿面を読み取る。読み取った後は、ＡＲＤＦ１４０に次の原稿を１枚供給させると共に、第１キャリッジと第２キャリッジの位置をコンタクトガラスの左端に移動させ、原稿データの読み取りを繰り返す。
【００３６】
読み取り制御部２３０は、シェーディング補正、ＭＴＦ補正、ガンマ補正、黒画像生成、カラー画像生成、２値化処理、多値化処理などの基本的な画質処理を行い、エンジン制御部２２０に出力する。エンジン制御部２２０は、原稿の読み取りだけのジョブの場合はコントローラ制御部２１０に画像データを送信する。この場合、コントローラ制御部２１０は画像データをＨＤＤ２１２に記憶し、必要であればネットワーク経由で指示された宛先に送信する。コピーのジョブの場合、エンジン制御部２２０は画像データを書き込み制御部２４０に送信する。
【００３７】
書き込み制御部２４０は、書き込みユニット１２０を制御する。書き込み制御部２４０には、読み取り制御部２３０が読み取った画像データ又はコントローラ制御部２１０がＦＣＵ２１３から取得した画像データ若しくはＰＣ（Personal Computer）が送信し、コントローラ制御部２１０が画像データに変換した画像データが送信される。書き込み制御部２４０は、画像データに基づいて図示しないレーザダイオードを変調（オン／オフ）し、レーザ光の照射を制御する。レーザ光は、ポリゴンミラーに反射したのちレンズを通過し感光体ドラムに静電潜像を形成する。
【００３８】
書き込み制御部２４０は、レーザ光の画像領域外の両端に配置されたフォトディテクタにより走査の開始と走査の終了を検出する。１対のフォトディテクタは入射されたレーザ光を同期信号に変換する。書き込み制御部２４０は、対となる同期信号から２つのＰＤ間をレーザ光が走査する時間間隔を測定し、その時間間隔に予め定められた所定数（解像度）のクロックが収まるように画素クロックを生成する。書き込み制御部２４０は、この画素クロックに同期して、画像データに対応したレーザ駆動データ（オンオフの変調データ）を生成する。これにより、感光体ドラム上に静電潜像が形成される。
【００３９】
作像制御部２７０は、作像ユニット１１０を制御して、カラーのトナー像を中間転写ベルトに形成する。作像制御部２７０は、感光体ドラムと中間転写ベルトの表面速度が等しくなるように両者を回転制御する。Ｂｋの静電潜像の先端部が現像装置のＢｋ現像器の現像位置に到達すると、Ｂｋ潜像はＢｋのトナーで現像され始め、Ｂｋの静電潜像の後端部が現像位置を通過するとＢｋトナー画像が形成される。
【００４０】
作像制御部２７０は、感光体ドラムと中間転写ベルトとが接触した時に、中間転写ベルトに所定のバイアス電圧を印加することで、トナー画像を中間転写ベルトに転写する。感光体ドラム上の残留トナーは上記のようにクリーニングされ、感光体ドラムは除電ランプで除電される。
【００４１】
作像制御部２７０は同様にＣ，Ｍ，Ｙの各トナー画像を中間転写ベルトに転写するが、その際、各色のトナー画像の位置が一致するように、書き込み制御部２４０はレーザ光による書き込み開始のタイミングを調整している。
【００４２】
紙搬送制御部２５０は給紙ユニット１５０を制御する。紙搬送制御部２５０は、コントローラ制御部２１０から指示された給紙トレイのソレノイドをオンにして給紙ローラ２８を記録紙に接触させる。また、給紙ローラ２８を回転駆動して、記録紙を搬送路に送り出す。紙搬送制御部２５０は、搬送路の搬送ローラ対２９を回転させ、記録紙の先端をレジストセンサによって検出しレジストローラに突き当て一端停止させる。そして、副走査有効期間信号（ＦＧＡＴＥ）に同期して、レジストローラを駆動して二次転ローラの位置まで送り込む。
【００４３】
紙搬送制御部２５０は、レジストローラを駆動する前後に二次転ローラを中間転写ベルトに当接させる。紙搬送制御部２５０は、二次転ローラの表面速度が中間転写ベルトの表面速度と同じになるよう制御する。
【００４４】
定着制御部２６０は定着装置１９を制御する。定着制御部２６０は、エンジン制御部２２０から指示されると、予め定められた温度に定着ヒータの温度を制御する。定着部の動作時には、常に定着部が所望の温度になるよう調節する。定着ヒータは、定着部を加熱する加熱手段であり、定着部は、トナーを転写紙に加圧して定着させる。
【００４５】
なお、電源制御部３００は、商用電源や自家発電機から供給される交流電源３１０を直流に整流し、ＤＣＤＣコンバータで所定の電圧に降圧して各制御部等に供給する。電源制御部３００は、コントローラ制御部２１０からの指示等により電源をオフにすることで消費電力の低減を可能にしている。
【００４６】
各制御部はほぼ共通の構成を有している。図ではエンジン制御部２２０と紙搬送制御部２５０により説明するが、他の制御部の構成も同様である。各制御部が固有のＩＣや機能を有していてもよい。
【００４７】
各制御部は、バスを介して接続されたＣＰＵ２０１、ＲＡＭ２０２、ＲＯＭ２０３、ソフト監視部２０４、及び、Ｉ／Ｆ２０５を有し、さらに、Ｉ／Ｆ２０５に接続された調停回路２０６、調停回路２０６に接続された記憶装置２０７を有する。ＣＰＵ２０１は、ＲＯＭ２０３に記憶されたプログラムを、ＲＡＭ２０２を作業メモリにして実行し各制御部に特有の処理を行う。
【００４８】
Ｉ／Ｆ２０５は、調停回路２０６がＣＰＵ２０１側と外部バス２９０を接続している場合に、ＣＰＵ２０１が他の制御部と通信を行うためのシリアルインターフェースである。ソフト監視部２０４は、例えばウォッチドッグタイマであり、ＣＰＵ２０１が実行するソフトウェアの暴走監視用回路である。ソフト監視部２０４は、ＣＰＵ２０１が実行するソフトウェアの暴走を検出すると、暴走したＣＰＵ２０１を搭載した制御部のみをリセットする。調停回路２０６は、外部バス２９０の通信先を、ＣＰＵ２０１、記憶装置２０７、又は、暴走通知コマンド出力部４０３のいずれかに切り換える。詳しくは後述する。記憶装置２０７は、ジョブ実行情報を記憶する不揮発メモリ（NVRAM、EEPROM等）である。
【００４９】
各制御部のソフト監視部２０４は信号線２９１を介して互いに接続されている。ソフト監視部２０４が自機のＣＰＵ２０１の暴走を検出すると、ダイオード２０８を介して他の各制御部のＣＰＵ２０１に割り込んで通知する。他の制御部のソフト監視部２０４が検出したＣＰＵ２０１の暴走はダイオード２０９を介して、自機のＣＰＵ２０１に割込んで通知される。具体的には、不図示の割り込みコントローラがＣＰＵ２０１への割込みを管理しており、より優先度の低い割込みはマスクされるため、各制御部は復旧処理よりも優先度が低い処理を実行している場合（主に待機状態）にのみ割込みを受け付ける。
【００５０】
〔復旧処理側の制御部の機能〕
本実施例では、ＣＰＵ２０１が暴走した側の制御部は、ソフト的な復旧処理が困難になっている。このため、ＣＰＵ２０１が暴走していない他の制御部が、固有の処理を行う通常モードとは異なるプログラムを実行して、暴走したＣＰＵ２０１が搭載された制御部を復旧させる。以下、ＣＰＵ２０１が暴走した制御部を「暴走処理中制御部」といい、暴走処理中制御部に対し復旧処理する制御部を「復旧処理中制御部」という。
【００５１】
図４は、復旧処理中制御部（例えば、後述する読み取り制御部２３０）が有する機能の機能ブロック図の一例を示す。実際にはこれらの機能は全ての制御部が有する。
・データ読み取りコマンド送信部２３１は、データ読み取りコマンドをＣＰＵ２０１が暴走した制御部に送信する。
・ジョブ実行情報読み出し部２３２は、ＣＰＵ２０１が暴走した制御部の記憶装置２０７からジョブ実行情報（ジョブＩＤのみでもよい）を読み出す。
・ジョブ設定部２３３は、読み出されたジョブ実行情報のジョブＩＤを自己（復旧処理中制御部）の記憶装置２０７及び他の制御部の記憶装置２０７に設定する。
・復帰コマンド送信部２３４は、ＣＰＵ２０１が暴走した制御部に復帰コマンドを送信する。
【００５２】
〔調停回路〕
図５〜６は、暴走処理中制御部の調停回路２０６の構成図の一例を示す。調停回路２０６は、スイッチ４０１、スイッチ４０４、暴走通知コマンド出力部４０３及び切替回路４０２を有する。調停回路２０６は、暴走が検出されたか否かに応じて３つの状態を取る。図５（ａ）は暴走が検出されない通常時の状態を、図５（ｂ）は暴走が検出された直後の切替回路の状態を、図６は復旧処理中制御部が記憶装置２０７からジョブ実行情報を読み出す際の状態を、それぞれ示す。
【００５３】
スイッチ４０１は、外部バス２９０の接続先を、Ｉ／Ｆ２０５、暴走通知コマンド出力部４０３、又は、記憶装置２０７のいずれかに切り換える。また、スイッチ４０４は、記憶装置２０７とＩ／Ｆ２０５を断接する。このスイッチ４０４は、ソフトウェアの暴走によりＣＰＵ２０１が記憶装置２０７へ誤ったデータに書き込みを行わないよう遮断するためのものである。２つのスイッチ４０１，４０４の状態は、切替回路４０２が制御する。
【００５４】
図５（ａ）に示すように、制御部が起動した直後、切替回路４０２は外部バス２９０とＩ／Ｆ２０５を接続するようにスイッチ４０１を制御し、記憶装置２０７とＩ／Ｆ２０５が接続するようにスイッチ４０４を制御する。このため、ＣＰＵ２０１は、暴走が検出されなければ、記憶装置２０７及び外部バス２９０にアクセスできる。
【００５５】
まず、外部割込みやノイズなどにより、ＣＰＵ２０１が暴走した場合、ソフト監視部２０４のカウンタを定期的にクリアできなくなる。ソフト監視部２０４はカウンタのオーバフローによりＣＰＵ２０１の暴走を検出する。ソフト監視部２０４は暴走を検出すると、ＣＰＵ２０１にリセット信号を供給する。ＣＰＵ２０１は、以下のようなタイミングでリセットされ、その後、再起動する。
ａ）ソフト監視部２０４がリセット信号をアクティブにしている間、停止状態（再起動待ち）となり、切替回路４０２が復帰コマンドを受信すると、再起動を開始する。
ｂ）ソフト監視部２０４がリセット信号をアクティブにすることで停止状態（再起動待ち）となるが、その後、切替回路４０２がスイッチ４０１を暴走通知コマンド出力部４０３に切り換えることで、再起動を開始する。
【００５６】
本実施例ではどちらを採用してもよいが、ｂ）の方が暴走処理中制御部のダウンタイムは短くなる。
【００５７】
なお、外部割り込みは、センサなどが検出値を通知するためにＣＰＵ２０１に割り込むことである。外部割り込みによるソフトウェアの暴走とは、センサがＣＰＵ２０１に割り込みを通知するポートが割込み側に張り付いたことで、ＣＰＵ２０１が割り込み処理に占有されたことを想定している。
【００５８】
また、ソフト監視部２０４はＣＰＵ２０１の暴走を検出すると切替回路４０２に暴走を検知したことを通知する。図５（ｂ）に示すように、切替回路４０２は外部バス２９０と暴走通知コマンド出力部４０３が接続するようにスイッチ４０１を制御し、記憶装置２０７とＩ／Ｆ２０５が接続しないようにスイッチ４０４を制御する。外部バス２９０と暴走通知コマンド出力部４０３が接続することで、暴走通知コマンド出力部４０３は、暴走通知コマンドを各制御部に送信することができる。なお、暴走通知コマンド出力部４０３は、暴走通知コマンドを、スイッチ４０１が暴走通知コマンド出力部４０３と接続している間、継続して発行する。
【００５９】
図７（ａ）は、暴走通知コマンドの一例を示す図である。外部バス２９０を介して送信されるコマンドは、送信先ＩＤ、送信元ＩＤ及びコマンドの各フィールドを有する。コマンドは全ての制御部が受信可能であり、制御部は送信先ＩＤを監視して自分宛のコマンドを選択的に受信する。暴走通知コマンドの場合、送信先ＩＤには全ての制御部を送信先とするパターン（例えばＦＦＦＦ）が設定される。
【００６０】
ここで、暴走通知コマンドは、信号線２９１と代替可能な機能である。すなわち、各制御部は暴走通知コマンドでなく、信号線２９１により暴走を通知してもよい。この場合、暴走通知コマンド出力部４０３は不要なので、図５（ｂ）の状態では外部バス２９０がＩ／Ｆ２０５と記憶装置２０７のどちらとも接続されない状態となる。
【００６１】
暴走通知コマンドを受信した各制御部は、暴走通知コマンドの優先度と動作中の処理の優先度を比較する。そして、動作中の場合、動作を中断するが復旧処理は行わない。よって、動作中の場合は中断処理を行う。なお、暴走通知コマンドを受信した各制御部は全て復旧モードになり、中断処理後は待機状態となる。待機状態になるとＣＰＵ２０１が暴走した暴走処理中制御部から通知解除を取得するまで復旧モードを継続する。
【００６２】
待機中の場合、制御部は外部バス２９０に対し暴走通知コマンドを送信した暴走処理中制御部に対し、データ読出コマンドを発行する。データ読出コマンドを最も早く発行した制御部が復旧処理中制御部となる。これにより、図６に示すように、調停回路２０６の切替回路４０２はデータ読出コマンドを受信することで、外部バス２９０が記憶装置２０７と接続されるようにスイッチ４０１を切り換える。
【００６３】
データ読出コマンドを発行した復旧処理中制御部は、記憶装置２０７からジョブ実行情報を読み出すことが可能になる。外部バス２９０が記憶装置２０７と接続されたため、暴走通知コマンドは外部バス２９０に出力されなくなる。このため、他の制御部はデータ読み出しコマンドを出力することはない。この後、復旧処理中制御部は、記憶装置２０７からジョブ実行情報（ジョブＩＤのみでもよい）を読み出す。
【００６４】
図７（ｂ）はジョブ実行情報の一例を模式的に説明する図の一例である。ジョブ実行情報には、ジョブＩＤにジョブの開始時刻、終了時刻、及び、ステータスが対応づけられている。ジョブＩＤはコントローラ制御部２１０から各制御部に通知されるため、１つのジョブに対しては各制御部の記憶装置２０７のジョブＩＤは同じ値になる。
【００６５】
各制御部はジョブを開始すると開始時刻を登録する。また、コントローラ制御部２１０からエンジン制御部経由でジョブの完了通知を取得した場合、又は、ユーザにより強制終了されたという通知を取得すると終了時刻を登録する。ジョブの完了通知を取得した場合、制御部はステータスに「ＯＫ」を登録し、強制終了されたという通知を取得した場合、制御部はステータスに「ＳＴＯＰ」を登録する。
【００６６】
また、コントローラ制御部２１０からエンジン制御部経由で何らかの理由（例えば、用紙切れ、ドア開等）でジョブが中断されているという通知を取得すると、制御部はステータスに「ＩＮＴ」を登録する。この場合、終了時刻は空白のままである。
【００６７】
ＣＰＵ２０１がジョブの実行中（動作中）に暴走した場合、ステータスには何も記述されない。また、待機中にＣＰＵ２０１が暴走した場合、最後のジョブＩＤに開始時刻、終了時刻及びステータスが記録されている。したがって、いずれの場合でも、復旧処理中制御部は、最も新しいジョブＩＤの１レコードを読み出せば、ＣＰＵ２０１が暴走した制御部が実行していたジョブとその状態を特定できる。
【００６８】
〔復旧処理中制御部が設定するジョブＩＤについて〕
復旧処理中制御部が読み出した、暴走処理中制御部の最も新しいジョブＩＤについて説明する。以下のような点が考慮され、復旧処理中制御部のジョブ設定部２３３は、読み出したジョブ実行情報のジョブＩＤを自己の記憶装置２０７と他の制御部の記憶装置２０７に登録させる。
（１）最後のジョブのステータスに何も登録されていない場（合又はＩＮＴの場合）、暴走処理中制御部はそのジョブを終了していない。したがって、復旧処理中制御部及び他の制御部は、ジョブのステータスを暴走処理中制御部と一致させることが適切であると考えられる。
（２）最後のジョブのステータスにＯＫが設定されている場合（又はＳＴＯＰが登録されている場合）、そのジョブを暴走処理中制御部は実行完了していると推定できる。この場合、復旧処理中制御部及び他の制御部は、同じジョブを実行完了している場合と、していない場合がある。全ての制御部が同じジョブを実行完了している場合、ジョブ設定部は、特に何もする必要がない。一部の制御部が同じジョブを実行完了していない場合、当然、そのジョブから再開することが好ましい。
（３）また、復旧処理中制御部と暴走処理中制御部で最も新しいジョブＩＤが異なる場合がある。この状況としては、
(i)暴走処理中制御部はまだジョブ実行情報に登録していないジョブを復旧処理中制御部が少なくともジョブ実行情報に登録している場合
(ii) 暴走処理中制御部はすでにジョブ実行情報に登録しているジョブを復旧処理中制御部がまだジョブ実行情報に登録していない場合
の２パターンがある。しかし、暴走処理中制御部が先にジョブを進行する後者(ii)のパターンはほぼないとしてよい。
【００６９】
(i)の場合、復旧処理中制御部は暴走処理中制御部と同じジョブＩＤのジョブから再開することが好ましく、暴走処理中制御部がジョブ実行情報に登録していないジョブを実行することは好ましくない。(i)の状況は、復旧処理中制御部と暴走処理中制御部の間だけでなく、暴走処理中制御部と他の制御部との間でも生じうるが、他の制御部についても、暴走処理中制御部とジョブＩＤが異なっていることは好ましくない。
【００７０】
以上から、各制御部は、暴走処理中制御部の最後のジョブＩＤのジョブからジョブを再開すればよいと言える。このため、ジョブ設定部は、暴走処理中制御部から読み出したジョブ実行情報のジョブＩＤを自己のジョブ実行情報に登録する。また、他の制御部にジョブＩＤを送信し登録させる。なお、このジョブＩＤのステータスには何も設定しない。
【００７１】
また、暴走処理中制御部はジョブを完了しているが、他に完了してない制御部があることを想定して、同様に、暴走処理中制御部のジョブ実行情報にジョブＩＤを新たに設定する。または、ジョブ設定部は、暴走処理中制御部のジョブ実行情報の最後のジョブのステータスを消去してもよい。
【００７２】
このような処理により、各制御部のジョブ実行情報の最後のジョブは同じジョブＩＤに統一され、同じジョブから再開できる。
【００７３】
図６に戻り、復旧処理中制御部は暴走処理中制御部以外の制御部にジョブＩＤを設定すると、復旧処理中制御部は暴走処理中制御部に対して、復帰コマンドを発行する。暴走処理中制御部の調停回路２０６の切替回路４０２は、復帰コマンドを受信することにより、外部バス２９０とＩ／Ｆ２０５が接続されるように、スイッチ４０１を切り換える。また、記憶装置２０７とＩ／Ｆ２０５が接続されるようにスイッチ４０４を閉じる。さらに、切替回路４０２はソフト監視部２０４に対して、復帰コマンドの受信を通知し、ＣＰＵ２０１へのリセットを解除させる（上記のa)のタイミングの場合）。したがって、復帰コマンドにより、調停回路２０６の状態は図５（ａ）の状態に戻る。
【００７４】
暴走処理中制御部のＣＰＵ２０１はリセット解除後、ＲＯＭ２０３のプログラムを読出し、ジョブ実行情報に基づき動作の再設定を実施する。例えば、Ｉ／Ｏチェックなどを行ってモータ回転速度などの指定に必要なパラメータを設定する。本実施形態では、暴走処理中制御部から読み出したジョブＩＤのジョブを各制御部が再開する。このように、ジョブ実行情報を記憶装置２０７から読み出すことにより、暴走状態の前のジョブを再開できる。なお、元々、待機状態であった復旧処理中制御部は、暴走処理中制御部へ復帰コマンドを送信後、待機状態へと移行する。元々、待機状態でなければ、復旧処理中制御部は、暴走処理中制御部へ復帰コマンドを送信後、暴走処理中制御部から読み出したジョブＩＤのジョブを再開する。
【００７５】
〔全体動作〕
図８は、各制御部の動作フローを説明する図の一例である。図８では、紙搬送制御部２５０のＣＰＵ２０１が暴走し、読み取り制御部２３０が紙搬送制御部２５０に対し復旧処理を行うものとする。
【００７６】
Ｓ１：紙搬送制御部２５０のＣＰＵ２０１が実行するソフトウェアが暴走し、紙搬送制御部２５０が暴走通知コマンドを他の制御部に通知する。全ての制御部は復旧モードになる。
【００７７】
Ｓ２：暴走通知コマンドを取得した制御部のうち、待機状態であった読み取り制御部２３０がデータ読み出しコマンドを紙搬送制御部２５０に送信する。
【００７８】
Ｓ３：読み取り制御部２３０は紙搬送制御部２５０の記憶装置２０７からジョブ実行情報のジョブＩＤを読み出す。
【００７９】
Ｓ４：読み取り制御部２３０は、ジョブＩＤを自己の記憶装置２０７に設定する。
【００８０】
Ｓ５：読み取り制御部２３０は、ジョブＩＤを暴走処理中制御部以外の他の制御部に送信する。ジョブＩＤを暴走処理中制御部の記憶装置２０７に記憶する。
【００８１】
Ｓ６：読み取り制御部２３０は、復帰コマンドを紙搬送制御部２５０に送信する。
【００８２】
Ｓ７：紙搬送制御部２５０は、復帰コマンドによりリセットが解除され再起動し、ＣＰＵ２０１がＲＯＭ２０３に記憶されたプログラムを実行可能になる。
【００８３】
Ｓ８：復帰した紙搬送制御部２５０は起動完了したことを他の制御部に通知する。これが暴走通知コマンドの解除通知となり、紙搬送制御部２５０は他の制御部と共に処理を再開する。
【００８４】
以上のように、本実施例の画像形成装置１００は、ある制御部のＣＰＵ２０１が暴走しても、そのＣＰＵのみをリセットすることで、装置全体を再起動するよりも短時間で復旧できる。
【実施例２】
【００８５】
実施例１では、復旧処理により全ての制御部が復旧したと説明したが、一部の制御部が復旧できない場合がある。本実施例ではこの場合に、限定動作モードに移行する画像形成装置１００について説明する。
【００８６】
動作限定モードには、３つの種類がある。
(i)  動作限定モード：読み取り制御部が動作可能
(ii)  動作限定モード：書き込み制御部、紙搬送制御部、定着制御部及び作像制御部が動作可能
(iii)  動作限定モード：コントローラ制御部が動作可能
(i)は原稿の読み取りだけが可能で、印刷するための制御部の1つ以上が動作できない状態である。(ii)は読み取り制御部が動作できない状態である。(iii)は読み取りも印刷もできない状態である。
【００８７】
各制御部は自己の状態を診断するが、動作限定モードの種類は各制御部から診断結果を取得したコントローラ制御部２１０が判断する。コントローラ制御部２１０は動作限定モードの種類に応じて操作パネル２１４にエラーメッセージを表示したり、ユーザ操作を制限する。
【００８８】
以下、ＣＰＵ２０１が暴走する制御部に応じて、いくつかの動作の態様を説明する。
Ａ．待機(省エネ)状態の定着制御部２６０にてＣＰＵ２０１の暴走が検出された場合
図９は、本実施例の画像形成装置１００の動作手順を示すフローチャート図の一例を示す。図９では、暴走処理中制御部は定着制御部であり、復旧処理中制御部は書き込み制御部とする。
【００８９】
図９においてＳ７の再起動までの処理は実施例１と同様である。ソフト監視部２０４が定着制御部２６０をリセットすることで、定着制御部２６０のＣＰＵ２０１、ＲＡＭ２０２、ＲＯＭ２０３などが初期化される。
Ｓ１１：復帰コマンドによりリセットが解除されると、ＣＰＵ２０１はプログラムの実行を開始するが、初期処理としてＩ／Ｏチェックを行う。Ｉ／Ｏチェックとは定着制御部２６０の制御対象である定着装置（例えば、加熱ヒータ、加熱ローラのモータ、定着ローラのモータ等）１９に異常がないかどうかを確認する処理のことである。具体的には、これらのモジュールから応答が得られるか、制御結果が期待される範囲にはいるか等により判定される。
【００９０】
Ｉ／Ｏチェックの結果、モジュールに異常がない場合、定着制御部２６０のＣＰＵ２０１は各制御部に対して起動完了を通知する。この場合、定着制御部２６０は待機状態になり、他の制御部も待機状態となる（待機状態のままである）。また、装置全体は通常モードになる。
Ｓ１２：Ｉ／Ｏチェックに問題があるモジュールが検出された場合、定着制御部２６０はエラー通知を各制御部に送信する。そして、定着制御部２６０は動作を停止する。これにより、例えば、加熱ヒータの制御が困難になり温度が上昇してしまうことを防止できる。
Ｓ１３：エラー通知を取得したエンジン制御部２２０は、定着制御部２６０のエラーをコントローラ制御部２１０に通知する。コントローラ制御部２１０は、各制御部のうち定着制御部２６０が停止した際に、動作制限モードが可能か否かを判定し、可能であれば動作制限モードの種類を決定する。そして、以降は、その動作制限モードの種類により動作可能な機能のみをユーザに提供する。
Ｓ１４：コントローラ制御部２１０はエンジン制御部２２０に動作制限モードとその種類を通知する。
Ｓ１５：エンジン制御部２２０は各制御部に動作制限モードとその種類を通知する（この場合は(i)の動作限定モードになる）。これにより、全ての制御部は、動作制限モードとして動作する。
【００９１】
このように、Ｉ／Ｏチェックに問題がなければ、装置の全体を再起動する（装置のON/OFF等）ことなく装置を利用可能となるので、ダウンタイムを削減できる。また、Ｉ／Ｏチェックに問題があっても、一部機能を限定することで装置の一部の機能はユーザが使用することが可能になる。特に、定着制御部２６０の異常の場合は、従来はサービスマンが調整するまで装置の全体が使用不可になっているが、本実施例の画像形成装置１００では、定着制御部２６０に異常が生じても一部の機能は利用できる。
【００９２】
なお、定着制御部２６０以外の各制御部が、暴走通知コマンドを受けて、それぞれのＩ／Ｏチェックを行ってもよい。この場合、ＣＰＵ２０１が暴走した定着制御部２６０以外の制御部が自己診断できるだけでなく、暴走通知コマンドを取得した直後にＩ／Ｏチェックを行うので診断を早期完了させることができる。
【００９３】
Ｂ．待機状態である定着制御部のＣＰＵ２０１の暴走が検出され、読み取り制御部２３０が動作中の場合
実施例１では、動作中の制御部は暴走通知により動作を中断するとしたが、ＣＰＵが暴走した制御部と関係の小さい制御部は動作を継続しても不都合はない。そこで、本実施例では、暴走通知コマンドを送信した暴走処理中制御部に応じて、他の制御部が動作を継続する画像形成装置について説明する。
【００９４】
各制御部は、暴走通知コマンドを送信した暴走処理中制御部に応じて、動作を継続するか中断するかを登録した動作決定テーブルを有している。
【００９５】
図１０は、動作決定テーブルの一例を示す図である。
・エンジン制御部
動作中断：なし（他の制御により動作中断しない）
動作継続：全ての制御部の１つ以上が暴走通知
・読み取り制御部
動作中断：エンジン制御部が暴走通知
動作継続：書き込み制御部、紙搬送制御部、定着制御部、作像制御部の１つ以上が暴走通知
・書き込み制御部
動作中断：エンジン制御部、紙搬送制御部、定着制御部、作像制御部、の１つ以上が暴走通知
動作継続：読み取り制御部が暴走通知
・紙搬送制御部
動作中断：エンジン制御部、書き込み制御部、定着制御部、作像制御部、の１つ以上が暴走通知
動作継続：読み取り制御部が暴走通知
・定着制御部
動作中断：エンジン制御部、書き込み制御部、紙搬送制御部、作像制御部、の１つ以上が暴走通知
動作継続：読み取り制御部が暴走通知
・作像制御部
動作中断：エンジン制御部、書き込み制御部、紙搬送制御部、定着装置、の１つ以上が暴走通知
動作継続：読み取り制御部が暴走通知
各制御部は、自機の動作決定テーブルを参照して、暴走通知コマンドを受信した場合に動作を中断するか継続するかを判定する。
【００９６】
図１１は、待機状態の定着制御部２６０のＣＰＵ２０１に暴走が検出された際に、エンジン制御部と読み取り制御部が動作中の場合の、装置全体の動作手順の一例を示す。図１１では、Ｓ１において、定着制御部２６０が暴走通知コマンドを送信した際、エンジン制御部と読み取り制御部が動作中である。
【００９７】
エンジン制御部と読み取り制御部は動作決定テーブルを参照し、動作を継続する。動作の終了後、暴走を検出して、以降は、図９と同様になる。
【００９８】
したがって、各制御部が動作決定テーブルにより動作を継続の有無を判断することで、処理が中断されない場合があるので、画像形成装置の可用性を向上できる。
【００９９】
Ｃ．定着制御部２６０が動作中の場合
ＣＰＵ２０１の暴走が検出され、リセットがかかった時、定着制御部２６０が動作中の場合があり得る。この場合、動作決定テーブルによれば、動作中の、書き込み制御部、紙搬送制御部、及び、作像制御部は動作を中断することになる。しかし、エンジン制御部と読み取り制御部は動作を継続してしまう。動作を継続しても大きな不都合はないが、定着装置を保護するため、エンジン制御部と読み取り制御部の動作を中断することが好ましい。
【０１００】
そこで、本実施例では、少なくとも定着制御部が、動作中であることを示す暴走通知コマンドを送信する（定着制御部以外もこの機能を有していてもよい）。
【０１０１】
図１２は、本実施例の調停回路２０６の構成図の一例を示す。図１２において図５（ａ）と同一部の説明は省略する。この図では、２つの暴走通知コマンド出力部４０３（以下、区別するため暴走通知コマンド出力部１，２という）が配置されている。実施例１の暴走通知コマンド出力部４０３を暴走通知コマンド出力部１とする。暴走通知コマンド出力部２は、他の制御部の動作を中断させる暴走通知コマンド２を出力する。
【０１０２】
スイッチ４０１にはフラグが接続されている。フラグは、定着制御部２６０が動作中に"１：ＯＮ"となり、それ以外の状態で"０：ＯＦＦ"となる。
【０１０３】
スイッチ４０１は外部バス２９０と、Ｉ／Ｆ２０５、暴走通知コマンド出力部１、暴走通知コマンド出力部２、又は、記憶装置２０７との接続を切り換える。切替回路４０２は、フラグがＯＦＦの場合にソフト監視部２０４が暴走を検出すると外部バス２９０を暴走通知コマンド出力部１と接続し、フラグがＯＮの場合にソフト監視部２０４が暴走を検出すると外部バス２９０を暴走通知コマンド出力部２と接続する。これにより、定着制御部２６０が動作中にＣＰＵ２０１が暴走した場合、他の制御部の動作を中断できる。
【０１０４】
図１３は、動作中の定着制御部２６０のＣＰＵ２０１に暴走が検出された際の装置全体の動作手順の一例を示す。定着制御部２６０が動作中であるため、他の制御部も動作中であるとする。
Ｓ１：定着制御部２６０のＣＰＵ２０１が実行するソフトウェアが暴走したものとする。暴走通知コマンド２を取得した全ての制御部は、動作を中断し、定着制御部２６０のＣＰＵ２０１が暴走したことを検出する。すなわち、動作決定テーブルに関係なく、暴走通知コマンド２により動作を中断する。
【０１０５】
ここで、定着制御部２６０以外の制御部もＩ／Ｏチェックを行ってよい。これにより早期に自己診断を完了させることができる。
【０１０６】
また、定着制御部２６０以外の制御部は、暴走通知コマンド２によりすぐに動作を中断させずに最小限の動作を継続してから動作を中断することも有効である。例えば、定着制御よりも後工程の定着から排紙まで工程では、例えば、紙搬送制御部２５０が定着中又は定着完了している用紙について排紙トレイまでの排紙を完了させてから動作を中断する。こうすることで不要なＪＡＭ処理を発生させることを防止できる。
Ｓ２：他の制御部のうち、書き込み制御部がデータ読み出しコマンドを紙搬送制御部２５０に送信したものとする。
Ｓ３：書き込み制御部は定着装置の記憶装置２０７からジョブ実行情報のジョブＩＤを読み出す。
Ｓ４：書き込み制御部は、ジョブＩＤを自己の記憶装置２０７に設定する。
Ｓ５：書き込み制御部は、ジョブＩＤを定着装置以外の制御部に送信する。ジョブＩＤを定着装置の記憶装置２０７に記憶する。
Ｓ６：書き込み制御部は、復帰コマンドを定着制御部に送信する。
Ｓ７：定着制御部は、復帰コマンドによりリセットが解除され再起動し、ＣＰＵ２０１がＲＯＭ２０３に記憶されたプログラムを実行可能になる。ソフト監視部２０４がリセットすることで、定着制御部２６０のＣＰＵ２０１、ＲＡＭ２０２、ＲＯＭ２０３などが初期化される。
Ｓ１１：復帰コマンドによりリセットが解除されると、ＣＰＵ２０１はプログラムの実行を開始するが、初期処理としてＩ／Ｏチェックを行う。Ｉ／Ｏチェックとは定着制御が制御する対象であるモジュール（例えば、加熱ヒータ、加熱ローラのモータ、定着ローラのモータ等）に異常がないかどうかを確認する処理のことである。具体的には、これらのモジュールから応答が得られるか、制御結果が期待される範囲にはいるか等により判定される。
【０１０７】
Ｉ／Ｏチェックの結果、モジュールに異常がない場合、定着制御部２６０のＣＰＵ２０１は各制御部に対して起動完了を通知する。この場合、全ての制御部は動作中に戻る。この場合、全ての制御部は通常モードとして動作する。
【０１０８】
各制御部が動作を再開する場合、紙搬送制御部２５０は用紙の位置を検出し、ＪＡＭ処理が必要であれば、エンジン制御部２２０にＪＡＭ処理を要求する。エンジン制御部２２０はコントローラ制御部２１０に通知し、コントローラ制御部２１０はＪＡＭ処理のためガイダンスを操作パネル２１４に表示する。また、ＪＡＭ処理の後、各制御部はジョブ実行情報に基づき印刷動作を再開する。また、排紙が完了し、ＪＡＭ処理も必要ない場合、各制御部はジョブ実行情報に基づきリセット前に実施していた印刷動作を再開する。
Ｓ１２：Ｉ／Ｏチェックに問題があるモジュールが検出された場合、定着制御部２６０はエラー通知を各制御部に送信する。そして、定着制御部２６０は動作を停止する。これにより、例えば、加熱ヒータの制御が困難になり温度が上昇してしまうことを防止できる。
Ｓ１３：エラー通知を取得したエンジン制御部２２０は、定着制御部２６０のエラーをコントローラ制御部２１０に通知する。コントローラ制御部２１０は、各制御部のうち定着制御部２６０が停止した際に、動作制限モードが可能か否かを判定し、可能であれば動作制限モードの種類を決定する。そして、以降は、その動作制限モードの種類により動作可能な機能のみをユーザに提供する。
Ｓ１４：コントローラ制御部２１０はエンジン制御部２２０に動作制限モードとその種類を通知する。
Ｓ１５：エンジン制御部２２０は各制御部に動作制限モードとその種類を通知する。これにより、全ての制御部は、動作制限モードとして動作する（この場合は(i)の動作限定モードになる）。図１３では、エンジン制御部と読み取り制御部が動作中だったので、エンジン制御部と読み取り制御部は動作を再開できる。
【０１０９】
したがって、本実施例の画像形成装置では、待機中の制御部のＣＰＵが暴走した場合には可能な限り他の機能を利用可能とし、動作中の制御部のＣＰＵが暴走した場合には動作を中断することで、確実に保全することができる。
【実施例３】
【０１１０】
本実施例では、実施例２と同様に、一部の制御部が復旧できない場合について説明するが、動作している制御部やアプリに応じてどのような限定動作モードに移行するかを説明する。
【０１１１】
図１４は、待機状態の紙搬送制御部のＣＰＵ２０１にリセットが発生した場合の画像形成装置１００の動作手順の一例を示すフローチャート図である。
【０１１２】
まず、待機状態の紙搬送制御部２５０においてＣＰＵ２０１が暴走することでリセットが発生する（Ｓ１１０）。
【０１１３】
紙搬送制御部の調停回路２０６は、外部バス２９０を介して各制御部に暴走通知コマンド１を発行する（Ｓ１２０）。
【０１１４】
紙搬送制御部２５０は、紙搬送制御部２５０内のＣＰＵ２０１、ＲＡＭ２０２、ＲＯＭ２０３などの初期化を行う（Ｓ１３０）。
【０１１５】
次に、紙搬送制御部２５０は、Ｉ／Ｏチェックなどのポートチェックを行う（Ｓ１４０）。すなわち、紙搬送制御部２５０は、制御対象である各種電装部品などのモジュールの初期値や状態に問題がないかどうかを確認する。
【０１１６】
モジュールに問題がない場合、各制御部に問題なく紙搬送制御部２５０が正常復帰したことを通知する（Ｓ１６０）。紙搬送制御部２５０は、リセット発生前の待機状態へ戻る。
【０１１７】
Ｉ／Ｏチェックの結果、モジュールからエラーが検出された場合、紙搬送制御部２５０は各制御部にエラーを通知した後、動作を停止する（Ｓ１７０）。
【０１１８】
画像形成装置１００は、予め決められたエラー発生時の処理を実行する（Ｓ１８０）。すなわち、エラー通知を取得したエンジン制御部２２０は、紙搬送制御部２５０のエラーをコントローラ制御部２１０に通知する。コントローラ制御部２１０は、各制御部のうち紙搬送制御部２５０が停止した際に、動作制限モードが可能か否かを判定し、可能であれば動作制限モードの種類を決定する。そして、以降は、その動作制限モードの種類により動作可能な機能のみをユーザに提供する。コントローラ制御部２１０はエンジン制御部２２０に動作制限モードとその種類を通知する。エンジン制御部２２０は各制御部に動作制限モードとその種類を通知する。
【０１１９】
これにより、全ての制御部は、動作制限モードとして動作する（Ｓ１９０）。
【０１２０】
以上の動作により、一部のユニットである紙搬送制御部２５０にリセットが発生した場合、装置全体をシャットダウンすることなく、僅かなリセット時間後に、通常動作を継続することが可能となる。したがって、装置のダウンタイムを軽減することができる。また、リセットの原因がエラーによるもので、リセット後に装置が通常動作を行えない場合であっても、エラーのある機能のみを停止して、他の機能は継続して提供できるため、可用性を向上させることができる。
【０１２１】
図１５は、スキャン動作中に紙搬送制御のＣＰＵ２０１にリセットが発生した場合の画像形成装置１００の動作手順の一例を示すフローチャート図である。
【０１２２】
まず、スキャン動作中、待機状態の紙搬送制御部２５０においてＣＰＵ２０１が暴走することでリセットが発生する（Ｓ１１０）。
【０１２３】
紙搬送制御部の調停回路２０６は、外部バス２９０を介して各制御部に暴走通知コマンド１を発行する（Ｓ１２０）。動作決定テーブルにより、紙搬送制御部の暴走通知コマンド１に対し、読み取り制御部とエンジン制御部は動作を継続する（Ｓ１２２）。よって、画像形成装置１００としては、スキャン動作中なので、紙搬送制御部２５０と関係が小さい、読取制御部とエンジン制御部２２０は動作を継続することができる。
【０１２４】
紙搬送制御部２５０は、紙搬送制御部２５０内のＣＰＵ２０１、ＲＡＭ２０２、ＲＯＭ２０３などの初期化を行う（Ｓ１３０）。
【０１２５】
次に、紙搬送制御部２５０は、Ｉ／Ｏチェックなどのポートチェックを行う（Ｓ１４０）。すなわち、紙搬送制御部２５０は、制御対象である各種電装部品などのモジュールの初期値や状態に問題がないかどうかを確認する。
【０１２６】
モジュールに問題がない場合（Ｓ１５０のＮｏ）、各制御部に問題なく紙搬送制御部２５０が正常復帰したことを通知する（Ｓ１６０）。紙搬送制御部２５０は、リセット発生前の待機状態へ戻る。読み取り制御部２３０とエンジン制御部２２０も動作終了後に待機状態に戻る。
【０１２７】
Ｉ／Ｏチェックの結果、モジュールからエラーが検出された場合、紙搬送制御部２５０は各制御部にエラーを通知した後、動作を停止する（Ｓ１７０）。
【０１２８】
画像形成装置１００は、予め決められたエラー発生時の処理を実行する（Ｓ１８０）。エラー処理は上記と同様なので省略する。
【０１２９】
これにより、全ての制御部は、動作制限モードとして動作する（Ｓ１９０）。この場合、紙搬送制御部２５０を必要としない、例えば、スキャン動作やＦＡＸメモリ受信動作などが可能な状態になる（上記の(i)  動作限定モードになる）。
【０１３０】
図１６は、コピー動作中に紙搬送制御のＣＰＵ２０１にリセットが発生した場合の画像形成装置１００の動作手順の一例を示すフローチャート図である。コピー動作中なので全ての制御部が動作中である。
【０１３１】
まず、コピー動作中なので動作状態の紙搬送制御部２５０においてＣＰＵ２０１が暴走することでリセットが発生する（Ｓ１１０）。
【０１３２】
紙搬送制御の調停回路２０６は、外部バス２９０を介して各制御部に暴走通知コマンド１を発行する（Ｓ１２０）。動作決定テーブルにより、紙搬送制御部２５０のエラーとは関係のない読み取り制御部とエンジン制御部２２０は動作を継続する（Ｓ１２２）。
【０１３３】
一方、紙搬送制御部２５０と動作に関連のある書込制御部、定着制御部２６０、及び、作像制御部２７０に関しては、動作を中断させる（Ｓ１２４）。
【０１３４】
紙搬送制御部２５０は、紙搬送制御部２５０内のＣＰＵ２０１、ＲＡＭ２０２、ＲＯＭ２０３などの初期化を行う（Ｓ１３０）。
【０１３５】
次に、紙搬送制御部２５０は、Ｉ／Ｏチェックなどのポートチェックを行う（Ｓ１４０）。すなわち、紙搬送制御部２５０は、制御対象である各種電装部品などのモジュールの初期値や状態に問題がないかどうかを確認する。
【０１３６】
モジュールに問題がない場合（Ｓ１５０のＮｏ）、各制御部に問題なく紙搬送制御部２５０が正常復帰したことを通知する（Ｓ１６０）。紙搬送制御部２５０は、リセット発生前の待機状態へ戻る。読み取り制御部２３０とエンジン制御部２２０も動作終了後に待機状態に戻る。
【０１３７】
更に、紙搬送制御部２５０は、ＪＡＭが発生しているか否かを判定し、搬送経路に残紙がある場合、ＪＡＭリカバリ処理を開始する（Ｓ１６２）。ＪＡＭリカバリ処理には、一度残紙を搬送して排紙処理する処理、操作パネル２１４にＪＡＭを取り除くガイダンスを表示する処理などが含まれる。
【０１３８】
Ｉ／Ｏチェックの結果、モジュールからエラーが検出された場合、紙搬送制御部２５０は各制御部にエラーを通知した後、動作を停止する（Ｓ１７０）。
【０１３９】
画像形成装置１００は、予め決められたエラー発生時の処理を実行する（Ｓ１８０）。エラー処理は上記と同様なので省略する。
【０１４０】
これにより、全ての制御部は、動作制限モードとして動作する（Ｓ１９０）。この場合、紙搬送制御部２５０を必要としない、例えば、スキャン動作やＦＡＸメモリ受信動作などが可能な状態になる（上記(i)の動作限定モードになる）。
【０１４１】
図１７は、プリンタ動作中に紙搬送制御のＣＰＵ２０１にリセットが発生した場合の画像形成装置１００の動作手順の一例を示すフローチャート図である。プリンタ動作中なので、エンジン制御部、紙搬送制御部、定着制御部、及び、作像制御部が動作中である。
【０１４２】
まず、動作状態の紙搬送制御部２５０においてＣＰＵ２０１が暴走することでリセットが発生する（Ｓ１１０）。
【０１４３】
紙搬送制御の調停回路２０６は、外部バス２９０を介して各制御部に暴走通知コマンドを発行する（Ｓ１２０）。動作決定テーブルにより、紙搬送制御部２５０のエラーとは関係のないエンジン制御部２２０に関しては動作を継続する（Ｓ１２３）。
【０１４４】
紙搬送制御部２５０は、紙搬送制御部２５０内のＣＰＵ２０１、ＲＡＭ２０２、ＲＯＭ２０３などの初期化を行う（Ｓ１３０）。
【０１４５】
次に、紙搬送制御部２５０は、Ｉ／Ｏチェックなどのポートチェックを行う（Ｓ１４０）。すなわち、紙搬送制御部２５０は、制御対象である各種電装部品などのモジュールの初期値や状態に問題がないかどうかを確認する。
【０１４６】
モジュールに問題がない場合（Ｓ１５０のＮｏ）、各制御部に問題なく紙搬送制御部２５０が正常復帰したことを通知する（Ｓ１６０）。紙搬送制御部２５０は、リセット発生前の待機状態へ戻る。読み取り制御部２３０とエンジン制御部２２０も動作終了後に待機状態に戻る。
【０１４７】
更に、紙搬送制御部２５０は、ＪＡＭが発生しているか否かを判定し、搬送経路に残紙がある場合、ＪＡＭリカバリ処理を開始する（Ｓ１６３）。ＪＡＭリカバリ処理には、一度残紙を搬送して排紙処理する処理、操作パネル２１４にＪＡＭを取り除くガイダンスを表示する処理などが含まれる。
【０１４８】
Ｉ／Ｏチェックの結果、モジュールからエラーが検出された場合、紙搬送制御部２５０は各制御部にエラーを通知した後、動作を停止する（Ｓ１７０）。
【０１４９】
画像形成装置１００は、予め決められたエラー発生時の処理を実行する（Ｓ１８０）。エラー処理は上記と同様なので省略する。
【０１５０】
これにより、全ての制御部は、動作制限モードとして動作する（Ｓ１９０）。この場合、紙搬送制御部２５０を必要としない、例えば、スキャン動作やＦＡＸメモリ受信動作などが可能な状態になる（上記(i)の動作限定モードになる）。
【０１５１】
以上のように、本実施形態の画像形成装置１００は、複数のＣＰＵ２０１を搭載することで装置の機能を向上できる。そして、１つの機能を制御するＣＰＵ２０１にリセットが発生しても、装置全体をリセットすることなく通常動作に復帰することが可能となる。ユーザにはほとんど意識させることなく復帰できる。また、リセットの原因がリセットでは復帰困難なエラーが生じた場合でも、他の機能は継続して提供できる。
【符号の説明】
【０１５２】
１００    画像形成装置
１１０    作像ユニット
１２０    書き込みユニット
１３０    原稿読み取り部
１４０    ＡＲＤＦ
１５０    給紙ユニット
２０１    ＣＰＵ
２０２    ＲＡＭ
２０３    ＲＯＭ
２０４    ソフト監視部
２０５    Ｉ／Ｆ
２０６    調停回路
２０７    記憶装置
２０８，２０９  ダイオード  
２１０    コントローラ制御部
２２０    エンジン制御部
２３０    読み取り制御部
２４０    書き込み制御部
２５０    紙搬送制御部
２６０    定着制御部
２７０    作像制御部
２８０    ＰＣＩバス
２９０    外部バス
３００    電源制御部
４０１、４０４  スイッチ
４０２    切替回路
４０３    暴走通知コマンド出力部
【先行技術文献】
【特許文献】
【０１５３】
【特許文献１】特開２００６−２５９８６９号公報
【図１】
2013054314.tif 000003
【図２】
2013054314.tif 000004
【図３】
2013054314.tif 000005
【図４】
2013054314.tif 000006
【図５】
2013054314.tif 000007
【図６】
2013054314.tif 000008
【図７】
2013054314.tif 000009
【図８】
2013054314.tif 000010
【図９】
2013054314.tif 000011
【図１０】
2013054314.tif 000012
【図１１】
2013054314.tif 000013
【図１２】
2013054314.tif 000014
【図１３】
2013054314.tif 000015
【図１４】
2013054314.tif 000016
【図１５】
2013054314.tif 000017
【図１６】
2013054314.tif 000018
【図１７】
2013054314.tif 000019