(57)【要約】【課題】複数の基板に分割して構成された制御部を有する機器における想定外の異常に対して適切に対応可能にすること。【解決手段】メインＳｏＣ301がサブＳｏＣ302に対しウォッチドッグパルスの出力を要求する（611）。サブＳｏＣ302のＵＡＲＴ−Ｉ／Ｆ336は、ウォッチドッグパルスの出力を要求するパケット611を受信した場合、第二Ｉ／Ｏポート344の出力信号502をＬレベルへ切り替える。サブＳｏＣ302のＳｕｂＣＰＵ331は、所定のタイミングで第一Ｉ／Ｏポート343の出力信号501をＬレベルへ切り替える。サブＳｏＣ302のウォッチドッグパルス出力ロジック345は、信号502と信号501とに基づいてウォッチドッグパルス506をＨ→Ｌへ変化させる。一定期間、ウォッチドッグパルス506がＨ→Ｌへ変化しない場合、ウォッチドッグタイマリセットＩＣ183がＳｕｂＣＰＵ331をリセットする。【選択図】図７
2018094720.tif 000002
【特許請求の範囲】
【請求項１】
複数の基板に分割して構成された制御部を有する電子機器であって、
第１基板に設けられた第１制御ユニットと、
前記第１制御ユニットとは物理的に離れた第２基板に設けられ、前記第１制御ユニットからの要求に応じて動作可能な第２制御ユニットと、
前記第１制御ユニットと前記第２制御ユニットとを通信可能に接続する接続手段と、
一定の期間、ウォッチドッグパルスの入力がない場合に前記第２制御ユニットをリセットするリセット手段と、を有し、
前記第１制御ユニットは、前記接続手段を介して、前記第２制御ユニットに対して前記ウォッチドッグパルスの出力を要求し、
前記第２制御ユニットは、
前記第１制御ユニットからの要求に応じて第１信号を出力する第１出力手段と、
前記第２制御ユニットにおいてウォッチドッグパルスの出力を要求する場合に第２信号を出力する第２出力手段と、
前記第１信号と前記第２信号とに基づいて、前記ウォッチドッグパルスを前記リセット手段に対して出力する第３出力手段を有する、
ことを特徴とする電子機器。
【請求項２】
前記出力手段は、前記第１信号と前記第２信号の両方の出力がある場合には前記ウォッチドッグパルスを出力し、前記第１信号と前記第２信号の少なくともいずれかの出力がない場合には前記ウォッチドッグパルスを出力しないことを特徴とする請求項１に記載の電子機器。
【請求項３】
前記第１制御ユニットと前記第２制御ユニットは、前記第１制御ユニットから前記ウォッチドッグパルスの出力を要求するタイミングと、前記第２出力手段が前記第２信号を出力するタイミングについて同期をとることを特徴とする請求項１又は２に記載の電子機器。
【請求項４】
前記第２制御ユニットは、前記第１制御ユニットからの要求に応じて駆動部の動作を制御することを特徴とする請求項１〜３のいずれか１項に記載の電子機器。
【請求項５】
複数の基板に分割して構成された制御部を有する電子機器であって、
第１基板に設けられた第１制御ユニットと、
前記第１制御ユニットとは物理的に離れた第２基板に設けられ、前記第１制御ユニットからの指示に応じて動作可能な第２制御ユニットと、
前記第１制御ユニットと前記第２制御ユニットとを通信可能に接続する接続手段と、を有し、
前記第１制御ユニットは、前記接続手段を介して、前記第２制御ユニットに対して駆動部の駆動を許可する要求を行い、
前記第２制御ユニットは、
前記第１制御ユニットからの要求に応じて第１信号を出力する第１出力手段と、
前記第２制御ユニットにおいて前記駆動部の駆動の許可する場合に第２信号を出力する第２出力手段と、
前記第１信号と前記第２信号とに基づいて、前記駆動部の駆動を許可する許可手段を有する、
ことを特徴とする電子機器。
【請求項６】
前記許可手段は、前記第１信号と前記第２信号の両方の出力がある場合には前記駆動部の駆動を許可し、前記第１信号と前記第２信号の少なくともいずれかの出力がない場合には前記駆動部の駆動を許可しなしことを特徴とする請求項５に記載の電子機器。
【請求項７】
前記電子機器は、画像形成装置であることを特徴とする請求項１〜６のいずれか１項に記載の電子機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の基板に分割して構成された制御部を有する電子機器に関する。
【背景技術】
【０００２】
従来、プリンタ装置などの電子機器において、給紙部、レジ部、排紙部、ドラム部など各所に配置されたステッピングモータ、ＤＣブラシレスモータなどのアクチュエータを制御するために、図１４に示すようにモータの制御信号を出力するＣＰＵやＳｏＣを複数の基板に分散配置している。
図１４は、従来の電子機器に用いる制御部の構成を例示するブロック図である。
【０００３】
特に、高い生産性や画像位置精度が求められるプリンタ装置においては、汎用のＣＰＵよりもセンサの入力に対する応答性を高めるため、ＣＰＵにモータ制御やＬＳＩ間通信用ハードロジックを内蔵したＳｏＣを用いる場合も多い。このような配置の場合、各所のアクチュエータを駆動させるための全体の制御タイミングの指示を出すメインＳｏＣと、各基板に配置されたＣＰＵやＳｏＣとの接続は、より少ない信号線で伝達するため２線式や３線式のシリアル通信方式を用いる方式が一般的に用いられている。
【０００４】
そのため、各所のアクチュエータを駆動させる手順としては、メインＳｏＣ101がシリアル通信によってサブＳｏＣ102に対して処理要求を行う通信パケットを送信し、これを受信したサブＳｏＣ102が通信パケットを解釈することで、アクチュエータを駆動するパルス信号を出力する形態を取る。
【０００５】
しかし、メインＳｏＣ101とサブＳｏＣ102との間のシリアル通信信号線(103,104)が接触不良で断線等する場合がある。また、各所のアクチュエータの駆動中に、何らかの理由でサブＳｏＣ102に内蔵されたＣＰＵ131が動作を継続できなくなり、アクチュエータの駆動を停止するためのシリアル通信パケットを送信してもこれを解釈できないような場合などもある。このような場合、アクチュエータの停止を行うことができなくなる場合が有る。
【０００６】
このような事態に対応するため、以下のような構成が用いられてきた。サブＳｏＣ102の外部にウォッチドッグタイマリセットＩＣ183を接続しておき、メインＳｏＣ101が一定周期でサブＳｏＣ102に対して、ウォッチドッグパルスを出力する指示を含んだシリアル通信パケットを送信し、該指示に応じて、サブＳｏＣ102がウォッチドッグパルスを出力する。そして、シリアル通信信号線の断線やシリアル通信パケットを解釈できない等により、サブＳｏＣ102がウォッチドッグパルスを出力できなくなった場合、ウォッチドッグタイマリセットＩＣ183がサブＳｏＣ102をリセットすることで、アクチュエータの動作を停止させる安全機構が用いられてきた。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００８−１４２９１３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
上述したような接続形態のサブＳｏＣ102の内蔵ＣＰＵ131で用いられるファームウェアは、シリアル通信パケットを送受信を制御する部分と、アクチュエータやＩ／Ｏポートを制御する部分など、複数の制御に分かれた構成となっていることが多い。
【０００９】
このような構成の場合、何らかの外乱要因により、サブＳｏＣ102内のサブＣＰＵ131が使用するＲＡＭ135の情報が部分的に欠落し、メインＣＰＵから受信したシリアル通信パケットを読み取ることができないような状態に陥っても、これとは別に動作しているＩ／Ｏポート143の操作は継続できる場合がある。この場合、ウォッチドッグパルスの出力が継続される。すなわち、この場合、ウォッチドッグタイマリセットＩＣ183に対するウォッチドッグパルスの出力を停止できないことになる。
【００１０】
このように、従来の構成では、サブＳｏＣ102内での異常発生状況によっては、サブＳｏＣ102をウォッチドッグリセットすることができない可能性があった。
【００１１】
以下、後述する図１に示すプリンタ装置201を例にして説明する。
給紙モータ（Ｍ１）140は、給紙ローラ204等を駆動して、用紙カセットから用紙203を引き出し、レジストローラ207まで搬送する。レジストモータ（Ｍ２）141は、画像形成部209の画像形成タイミングと同期してレジストローラ207を駆動し、用紙203を搬送し、画像形成部209によって形成された可視トナー像を用紙203に転写させる。
【００１２】
ここで、メインＳｏＣ101とサブＳｏＣ102間のシリアル通信信号線103，104が切断された場合、メインＣＰＵ111の指示をサブＳｏＣ102側に伝達することができない状態や、サブＣＰＵ131側の状態をメインＳｏＣ101側に伝達することができない状態が発生する。例えば、給紙モータ140によって給紙ローラ204が駆動中の状態、もしくは、レジストモータ141によってレジストローラ207が駆動中の状態で、シリアル通信信号線103、104が切断された場合、給紙ローラ204、レジストローラ207を停止させる指示をメインＳｏＣ101から受信することができなくなる。
【００１３】
通常、このような場合、サブＣＰＵ131が通信異常を検知し、給紙モータ140およびレジストモータ141を停止させる。しかし、何らかの理由でサブＣＰＵ131上のプログラムが正常に動作を継続できなくなった場合、給紙モータ140およびレジストモータ141を停止処理ができなくなる可能性が有る。
【００１４】
この時、サブＣＰＵ131がウォッチドッグタイマリセットＩＣ183に対してウォッチドッグパルスを出力することができなくなれば、ウォッチドッグタイマリセットＩＣ183はサブＳｏＣ102に対してリセット信号をアサートすることで、サブＳｏＣはパワーオンリセット回路181によってモータ制御信号を出力するＰＷＭ回路139を停止することができる。
【００１５】
しかし、サブＣＰＵ131内のプログラムに対して部分的に異常が生じ、ウォッチドッグパルスの出力制御は正しく動作しているが、シリアル通信経由でモータ駆動を停止する制御ができない状態になった場合、上記の理由によりウォッチドッグタイマリセットＩＣ183はサブＳｏＣ102に対してリセット信号をかけることができない。そのため、前述のような異常が生じても給紙モータ140およびレジストモータ141を停止させることができない可能性があった。
【００１６】
以上のように、従来の機器では、サブＳｏＣの想定外の異常等に適切に対応できない可能性があるという問題があった。
【００１７】
本発明は、上記の問題点を解決するためになされたものである。本発明の目的は、複数の基板に分割して構成された制御部を有する機器における想定外の異常に対して適切に対応することができる仕組みを提供することである。
【課題を解決するための手段】
【００１８】
本発明は、複数の基板に分割して構成された制御部を有する電子機器であって、第１基板に設けられた第１制御ユニットと、前記第１制御ユニットとは物理的に離れた第２基板に設けられ、前記第１制御ユニットからの要求に応じて動作可能な第２制御ユニットと、前記第１制御ユニットと前記第２制御ユニットとを通信可能に接続する接続手段と、一定の期間、ウォッチドッグパルスの入力がない場合に前記第２制御ユニットをリセットするリセット手段と、を有し、前記第１制御ユニットは、前記接続手段を介して、前記第２制御ユニットに対して前記ウォッチドッグパルスの出力を要求し、前記第２制御ユニットは、前記第１制御ユニットからの要求に応じて第１信号を出力する第１出力手段と、前記第２制御ユニットにおいてウォッチドッグパルスの出力を要求する場合に第２信号を出力する第２出力手段と、前記第１信号と前記第２信号とに基づいて、前記ウォッチドッグパルスを前記リセット手段に対して出力する第３出力手段を有する、ことを特徴とする。
【発明の効果】
【００１９】
本発明によれば、複数の基板に分割して構成された制御部を有する機器における想定外の異常に対して適切に対応することができる。
【図面の簡単な説明】
【００２０】
【図１】本実施例の電子機器を適用可能な画像形成装置の構成を例示する断面図
【図２】実施例１の電子機器に用いる制御部の構成を例示するブロック図
【図３】メインＳｏＣとサブＳｏＣ間のシリアル通信データの構造を説明する図
【図４】実施例１における電源ＯＮ時の信号の推移を示すタイミングチャート
【図５】実施例１における電源ＯＮ時の動作を例示するフローチャート
【図６】ＵＡＲＴ−Ｉ／Ｆのパケット受信時の動作を例示するフローチャート
【図７】実施例１における信号の推移を示すタイミングチャート
【図８】実施例１における動作を例示するフローチャート
【図９】実施例１においてシリアル通信信号が断線した場合のタイミングチャート
【図１０】実施例１においてサブＣＰＵ異常時のタイミングチャート
【図１１】実施例２の電子機器に用いる制御部の構成を例示するブロック図
【図１２】実施例２における信号の推移を示すタイミングチャート
【図１３】実施例２における動作を例示するフローチャート
【図１４】従来の電子機器に用いる制御部の構成を例示するブロック図
【発明を実施するための形態】
【００２１】
以下、本発明を実施するための形態について図面を用いて説明する。
【実施例１】
【００２２】
図１は、本発明の一実施例を示す電子機器を適用可能な画像形成装置の構成を例示する断面図である。ここでは、画像形成装置の例としてプリンタ装置を用いる。
【００２３】
プリンタ装置201は、用紙カセット202に格納されている用紙203に画像形成を行う装置である。用紙203は、給紙ローラ204によって用紙カセット202から引き出される。用紙カセット202から給紙された用紙203は、縦パスローラ205に達すると、さらに上部へ搬送され、さらに搬送ローラ206、レジストローラ207まで搬送される。給紙ローラ204は給紙モータ（Ｍ１）140によって駆動され、レジストローラ207は、レジストモータ（Ｍ２）141によって駆動される。
【００２４】
画像形成部209は、例えば、電子写真式のイエロー、マゼンダ、シアン、ブラックの４色からなる可視トナー像を感光ドラムに上に形成し、ポリイミド製の中間転写ベルトに転写して二次転写ローラ208へと伝達する機能を有する。
【００２５】
レジストローラ207まで搬送された用紙203は、画像形成部209の画像形成タイミングと同期して二次転写ローラ搬送され、画像形成部209によって形成された可視トナー像が用紙203に二次転写される。二次転写ローラ208を通過した用紙203は、熱定着ローラ210によって可視トナー像を永久固着され、排紙トレイ211に排出される。
【００２６】
図２は、本発明の一実施例を示す電子機器に用いる制御部の構成を例示するブロック図である。
メインＳｏＣ301は、メイン基板上に実装される制御ユニットである。メインＳｏＣ301は、メインＣＰＵ311、ＲＯＭ314、ＲＡＭ315、ＵＡＲＴ−Ｉ／Ｆ316、タイマ318を有する制御ユニットである。メインＳｏＣ301は、プリンタ装置各部の制御基板に指示を出し、全体の制御タイミングを統括する。
【００２７】
メインＳｏＣ301と、サブＳｏＣ302とは、シリアル通信送信信号線303およびシリアル通信受信信号線304とで通信可能に接続されている。ここで言う送信とは、メインＳｏＣ301側から見てメインＳｏＣ301からサブＳｏＣ302に送信することである。また、受信とは、メインＳｏＣ301側から見てサブＳｏＣ302からメインＳｏＣ301に対して受信することである。
【００２８】
メインＣＰＵ311は、ＲＯＭ314に格納されたプログラムを読み込んで動作する。ＲＯＭ314は、メインＣＰＵ311が実行するプログラムや各種データを保存している。ＲＡＭ315は、メインＣＰＵ311が演算を行う際の作業データを保存する。
【００２９】
ＵＡＲＴ−Ｉ／Ｆ316は、調歩同期式の２線シリアルインターフェイスであり、シリアル通信送信信号線303およびシリアル通信受信信号線304によってサブ基板と双方向で接続されている。ＵＡＲＴ−Ｉ／Ｆ316は、シリアル通信信号の送信機能と受信機能を実現する回路である。送信機能は、メインＣＰＵ311から設定された複数のバイト列からなる送信情報を、８ビット単位で、先頭にスタートビットを１ビット、末尾にストップビットを１ビット付加し、76800bpsの速度で１ビットずつシリアル信号として送信する機能である。また、受信機能は、接続先から送信されたシリアル信号についてスタートビットを検出してから１ビットずつ受信し、ストップビットまでのデータをまとめて１バイトずつのデータとしてバッファに格納し、受信したバイト列をメインＣＰＵ３１１に渡す機能である。ＵＡＲＴ−Ｉ／Ｆ316は、これらを繰り返すことで、複数バイトのバイト列の送受信を行うことができる。
【００３０】
タイマ318は、予めメインＣＰＵ311から設定されたクロック数をカウントすると、メインＣＰＵ331に割り込み信号を出力する機能を有する。メインＣＰＵ311は、タイマ318を用いることにより、所定時間後のタイミングを以って所望の処理を開始することができる構成である。
【００３１】
サブＳｏＣ302は、メイン基板とは物理的に離れたサブ基板上に実装される制御ユニットである。サブＳｏＣ302は、サブＣＰＵ331、ＲＯＭ334、ＲＡＭ335、ＵＡＲＴ−Ｉ／Ｆ336、タイマ337、ＰＷＭ回路339、第一Ｉ／Ｏポート343、第二Ｉ／Ｏポート344、ウォッチドッグパルス出力ロジック345、ＰＯＲ回路381を有する。
【００３２】
サブＳｏＣ302が実装されるサブ基板は、メインＳｏＣ301が実装されるメイン基板とは離れた場所に配置されており、前述のようにメインＳｏＣ301とは、シリアル通信送信信号線303およびシリアル通信受信信号線304とで接続されている。サブＳｏＣ302は、メインＳｏＣ301からのシリアル通信線を介した要求に応じて動作可能である。
【００３３】
サブＣＰＵ331は、サブ基板上の動作を制御するＣＰＵであり、ＲＯＭ334に格納されたプログラムを読み込んで動作する。ＲＯＭ334は、サブＣＰＵ331が実行するプログラムや各種データを保存している。ＲＡＭ335は、サブＣＰＵ331が演算を行う際の作業データを保存する。
【００３４】
ＵＡＲＴ−Ｉ／Ｆ336は、調歩同期式の２線シリアルインターフェイスであり、シリアル通信受信信号線304およびシリアル通信送信信号線303によってメインＳｏＣ301と双方向で接続されている。ＵＡＲＴ−Ｉ／Ｆ336は、シリアル通信信号の受信機能と送信機能を実現する回路である（プログラマブルロジックデバイス等であってもよい）。受信機能は、サブＳｏＣ302に対してシリアル通信送信信号線303で送信されたビット列を、スタートビット、ストップビットを除去したバイト列単位でバッファに格納し、所定のバイト数分のデータが可能されるとサブＣＰＵ331に割り込み信号を出力する機能である。さらに、受信機能は、後述するバイト列中のデータが所定の値の場合に、Ｉ／Ｏポートに対して出力論理の操作を行う機能を有する。また、送信機能は、サブＣＰＵ331からの操作でメインＳｏＣ301に対してシリアル通信受信信号線304でシリアル通信信号を送信する機能である。
【００３５】
タイマ337は、タイマ318と同様に予めサブＣＰＵ331から設定されたクロック数をカウントすると、サブＣＰＵ331に割り込み信号を出力する機能を有する。サブＣＰＵ331は、タイマ３３７を用いることにより、所定時間後のタイミングを以って所望の処理を開始することができる構成である。
【００３６】
ＰＷＭ回路339は、独立した２系統のＰＷＭ（Pulse Width Modulation）出力を持ち、給紙駆動モータ140およびレジストモータ141等の駆動部を駆動するためのモータクロックパルス信号を、それぞれ所望の周波数とＯＮ〜ＯＦＦタイミングで出力する制御部である。
【００３７】
第一Ｉ／Ｏポート（IO Port A）343は、サブＣＰＵ331によって制御される二値の出力ポートである。第二Ｉ／Ｏポート（IO Port B）344は、ＵＡＲＴ−Ｉ／Ｆ336が受信したシリアル通信パケットの検出結果に従って制御される出力ポートである。
【００３８】
ウォッチドッグパルス出力ロジック345は、ＯＲゲートであり、第一Ｉ／Ｏポート343と第二Ｉ／Ｏポート344の両方からＬレベルを入力された場合に論理Ｌを出力し、いずれかからＨレベルを入力された場合に論理Ｈを出力する。ウォッチドッグパルス出力ロジック345から出力されたウォッチドッグパルス信号305は、ウォッチドッグタイマリセットＩＣ183に入力される。
【００３９】
ウォッチドッグタイマリセットＩＣ183は、負論理であり、ＨレベルからＬレベルに切り替わる立下りエッジ信号によって、ウォッチドッグタイマのカウントをクリアする。ウォッチドッグタイマの定数は、例えば５００ミリ秒であり、５００ミリ秒以内に立下りエッジ信号が入力されない場合には、サブＳｏＣ302に対してリセット信号（RESET）306に１０ミリ秒の間Ｌレベルを出力する。すなわち、ウォッチドッグタイマリセットＩＣ183は、一定の期間（上記例では５００ミリ秒）、ウォッチドッグパルス信号305のＨレベルからＬレベルに切り替わる立下りエッジ信号の入力がない場合、サブＳｏＣ302をリセットする。
【００４０】
パワーオンリセット回路（ＰＯＲ）381は、不図示の電源回路によって供給される電圧が2.9Vを超えたことと、入力されたリセット信号306がＨレベルであることのＡＮＤ条件で、サブＣＰＵ331のリセット状態を解除する回路である。パワーオンリセット回路381は、電源ＯＮ時に電圧が安定しない状態で不定な動作が行われるのを防止する役割を担っている。
【００４１】
図３は、メインＳｏＣ301とサブＳｏＣ302との間でシリアル通信されるデータの構造を説明する図である。
通信パケット401は、メインＳｏＣ301のＵＡＲＴ−Ｉ／Ｆ316から送信されるシリアル通信パケットを示したものであって、調歩同期方式で４バイトからなる通信パケットである。通信パケット401は、相手局に対する要求種別フィールド401、パラメータ指定フィールド403、404、及び、照合用のチェックサムフィールド405を有する。
【００４２】
要求種別フィールド402の値が「0xF0」の場合は、メインＳｏＣ301がサブＳｏＣ302側にウォッチドッグパルスを出力するタイミングの同期を取ることを要求する。同様に、要求種別フィールド402の値が「0xF1」の場合は、メインＳｏＣ301がサブＳｏＣ302側にウォッチドッグパルスを出力するべく、第二Ｉ／Ｏポート344の論理をＬレベルへと切り替えることを要求する。また、要求種別フィールド402の値が「0xF2」の場合は、メインＳｏＣ301がサブＳｏＣ302側にウォッチドッグパルスの出力を停止するべく、第二Ｉ／Ｏポート344の論理をＨレベルへと戻すことを要求する。また、要求種別フィールド402の値が「0xFF」の場合は、直前に送信したシリアル通信パケットが正しく受信された応答を意味する。要求種別フィールド402の値が、その他の値の場合は、モータの駆動開始、駆動停止などを要求するものであり、その場合の回転速度や駆動時間がパラメータ指定フィールド403、404に格納される。
【００４３】
チェックサムフィールド405は、要求種別フィールド402からパラメータ指定フィールド403、404までの値の加算値を示し、メインＣＰＵ311により送信時に格納される。サブＣＰＵ331は、受信したシリアル通信パケットの要求種別フィールド402からパラメータ指定フィールド403、404までの値の加算値を、チェックサムフィールド405の値と照合することで、シリアル通信エラーを検出することができる。
【００４４】
以下、メインＳｏＣ301およびサブＳｏＣ302の動作を説明する。
まず、図４、図５、図６を用いて、電源ＯＮ時に行われるメインＳｏＣとサブＳｏＣ間のタイミング同期の動作について説明する。
次に、図７、図８を用いて、正常時の動作について説明する。
最後に、図９、図１０を用いて、異常時の動作について説明する。
【００４５】
〔タイミング同期の動作〕
図４は、電源ＯＮ時のメインＳｏＣ301及びサブＳｏＣ302周辺の信号のタイミングチャートである。
図５は、電源ＯＮ時のメインＣＰＵ311及びサブＣＰＵ331の動作を例示するフローチャートであり、図５（ａ）はメインＣＰＵ311の動作に対応し、図５（ｂ）はサブＣＰＵ331の動作に対応する。すなわち、図５（ａ）の処理は、メインＣＰＵ311がＲＯＭ314に記録されたプログラムを実行することにより実現される。また、図５（ｂ）の処理は、サブＣＰＵ331がＲＯＭ334に記録されたプログラムを実行することにより実現される。
図６は、ＵＡＲＴ−Ｉ／Ｆ336におけるシリアル通信パケット受信時の判断動作を例示するフローチャートである。すなわち、図６の処理は、ＵＡＲＴ−Ｉ／Ｆ336を構成する回路によって実現される。
【００４６】
図４において、信号501は、サブＣＰＵ331が第一Ｉ／Ｏポート343を操作する波形である。信号502は、ＵＡＲＴ−Ｉ／Ｆ336が第二Ｉ／Ｏポート344を操作する波形である。
【００４７】
信号503は、メインＳｏＣ301からサブＳｏＣ302へ送信されるシリアル通信信号を示す波形である。信号504は、信号503とは逆に、サブＳｏＣ302からメインＳｏＣ301へ送信されるシリアル通信信号を示す波形である。
【００４８】
信号505は、パワーオンリセット回路381に入力されるリセット信号の変化を示す波形である。信号506は、ウォッチドッグパルス出力ロジック345が出力するウォッチドッグパルス信号305を示した波形である。
【００４９】
時刻521に、電源ＯＮにより信号505のリセット状態が解除されると、メインＣＰＵ311とサブＣＰＵ331は動作を開始する（図５のS431、S451）。
メインＣＰＵ311は、メインＳｏＣ301とサブＳｏＣ302との初期設定時間差分だけウェイトする（図５のS432）。
また、サブＣＰＵ331は、ＵＡＲＴ−Ｉ／Ｆ336を初期化し、メインＳｏＣ301からのシリアル通信信号を受信可能な準備を行う。さらに、サブＣＰＵ331は、ＵＡＲＴ−Ｉ／Ｆ336を介し、メインＳｏＣ301からのＷＤＴ同期パケットの受信を待機する（図５のS452）。
【００５０】
メインＣＰＵ311は、上記初期設定時間差分だけウェイトした時刻522に、サブＳｏＣ302に対して前述の要求種別フィールド402の値が「0xF0」であるシリアル通信パケット601を送信する（図５のS434）。さらに、メインＣＰＵ311は、サブＳｏＣ302側からの応答パケットの返信を待機する（S435）。
一方、サブＳｏＣ302内のＵＡＲＴ−Ｉ／Ｆ336は、上記メインＳｏＣ301から送信されたシリアル通信パケット601の受信を開始する。
【００５１】
時刻523に、ＵＡＲＴ−Ｉ／Ｆ336は、シリアル通信パケット601を受信完了すると（図６のS471）、シリアル通信パケット601の内容判定を行う（図６のS472、S476、S478）。ＵＡＲＴ−Ｉ／Ｆ336は、要求種別フィールド402の値が「0xF0」に合致すると判定した場合（図６のS472でYesの場合）、第二Ｉ／Ｏポート344を操作して出力をＬレベルに切り替え（図６のS473）、サブＣＰＵ331に受信割り込みを発生する（図６のS474）。
【００５２】
上記割り込みにより、サブＣＰＵ331は、メインＳｏＣ301からＷＤＴ同期パケットを受信したと判定し（図５のS452でYes）、時刻523から４ミリ秒のタイマを設定し（図５のS453）、該タイマの割り込みを待機する（図５のS454）。
【００５３】
そして、サブＣＰＵ331は、時刻524である４ミリ秒経過後に、該タイマの割り込みがあると（図５のS454でYes）、第一Ｉ／Ｏポート343を操作して出力をＬレベルに切り替える（S455）。すると、第一Ｉ／Ｏポート343の出力がＬレベル、且つ、第二Ｉ／Ｏポート344の出力がＬレベル（すなわち両方のＩ／Ｏポートの出力がＬレベル）になるため、ウォッチドッグパルス出力ロジック345によって信号506がＨ→Ｌへと変化する。こうして、ウォッチドッグタイマリセットＩＣ183にＨレベル→Ｌレベルへの立下りエッジが入力され、ウォッチドッグタイマカウンタがクリアされる。
【００５４】
また、サブＣＰＵ331は、上記第一Ｉ／Ｏポート343を操作して出力をＬレベルに切り替えると同時に、シリアル通信パケット602をメインＳｏＣ301側に返信する（図５のS456）。該返信したシリアル通信パケット602は、要求種別フィールド402の値が「0xFF」であり、サブＣＰＵ331はメインＳｏＣ301に対してシリアル通信パケット601が正しく受信されたことを通知したことになる。
さらに、サブＣＰＵ331は、２ミリ秒経過後（S457）、第一Ｉ／Ｏポート343の出力をＨレベルに戻す（S458）。
【００５５】
メインＣＰＵ311は、サブＳｏＣ302側から返信されたシリアル通信パケット602がメインＳｏＣ301側に戻ってきたと判定した場合（S435でYesの場合）、時刻525に、サブＳｏＣ302側に、要求種別フィールド402の値が「0xF2」であるシリアル通信パケット603を送信する（S438）。
一方、サブＳｏＣ302内のＵＡＲＴ−Ｉ／Ｆ336は、上記メインＳｏＣ301から送信されたシリアル通信パケット603の受信を開始する。
【００５６】
時刻526に、ＵＡＲＴ−Ｉ／Ｆ336は、シリアル通信パケット603を受信完了すると（図６のS471）、シリアル通信パケット601の内容判定を行う（図６のS472、S476、S478）。ＵＡＲＴ−Ｉ／Ｆ336は、要求種別フィールド402の値が「0xF2」に合致すると判定した場合（図６のS478でYesの場合）、第二Ｉ／Ｏポート344を操作して出力をＨレベルに切り替える（図６のS479）。
【００５７】
以上の手順により、電源ＯＮ後にウォッチドッグタイマリセットＩＣ183に対してウォッチドッグパルスを出力したタイミングを、メインＣＰＵ311とサブＣＰＵ331とが認識するところとなる。
【００５８】
〔正常時の動作〕
その後、メインＣＰＵ311とサブＣＰＵ331とが、それぞれウォッチドッグパルスの出力を指示する手順（正常時の動作）を、図７と図８および図６を用いて説明する。
【００５９】
図７は、図４の後のメインＳｏＣ301及びサブＳｏＣ302周辺の信号の時間推移を示すタイミングチャートである。
図８は、メインＣＰＵ311及びサブＣＰＵ331の動作を例示するフローチャートであり、図８（ａ）はメインＣＰＵ311の動作に対応し、図８（ｂ）はサブＣＰＵ331の動作に対応する。すなわち、図８（ａ）の処理は、メインＣＰＵ311がＲＯＭ314に記録されたプログラムを実行することにより実現される。また、図８（ｂ）の処理は、サブＣＰＵ331がＲＯＭ334に記録されたプログラムを実行することにより実現される。
【００６０】
図７において、時刻521〜526は、図４の時刻521〜526に相当する部分であるため、説明を省略する。
メインＣＰＵ311は、予めタイマ318に通信時刻（例えば、前回、要求種別フィールド402の値が「0xF0」又は「0xF1」であるシリアル通信パケット送信してから２００ミリ秒後）を設定し（図８のS482）、該タイマの割り込みを待機する（図８のS483）。そして、メインＣＰＵ311は、時刻532に該タイマの割り込みがあると（図８のS483でYes）、ＵＡＲＴ−Ｉ／Ｆ316を介してサブＳｏＣ302へ、要求種別フィールド402の値が「0xF1」であるシリアル通信パケット611を送信する（図８のS484）。
一方、サブＳｏＣ302内のＵＡＲＴ−Ｉ／Ｆ336は、上記メインＳｏＣ301から送信されたシリアル通信パケット611の受信を開始する。
【００６１】
時刻533に、ＵＡＲＴ−Ｉ／Ｆ336は、シリアル通信パケット611を受信完了すると（図６のS471）、シリアル通信パケット611の内容判定を行う（図６のS472、S476、S478）。ＵＡＲＴ−Ｉ／Ｆ336は、要求種別フィールド402の値が「0xF1」に合致すると判定した場合（図６のS476でYesの場合）、第二Ｉ／Ｏポート344を操作して出力をＬレベルに切り替える（図６のS477）。
【００６２】
また、サブＣＰＵ331は、図５のS458の後、予めタイマ337にウオッチドッグパルス出力時刻（例えば、前回、第一Ｉ／Ｏポート343を操作して出力をＬレベルに切り替えてから２００ミリ秒後）を設定し（図８のS492）、該タイマの割り込みを待機する（図８のS494）。そして、サブＣＰＵ331は、時刻534に、該タイマの割り込みがあると（図８のS494でYes）、第一Ｉ／Ｏポート343を操作して出力をＬレベルに切り替える（図８のS495）。
【００６３】
すると、第一Ｉ／Ｏポート343の出力がＬレベル、且つ、第二Ｉ／Ｏポート344の出力がＬレベル（すなわち両方の出力がＬレベル）になるため、ウォッチドッグパルス出力ロジック345によって信号506がＨ→Ｌへと変化する。こうして、ウォッチドッグタイマリセットＩＣ183にＨレベル→Ｌレベルへの立下りエッジが入力され、ウォッチドッグタイマカウンタがクリアされる。
【００６４】
上記S495の直後、サブＣＰＵ331は、２ミリ秒経過を待機し（S497）、第一Ｉ／Ｏポート343を操作して出力をＨレベルに戻し（S498）、図８（ｂ）のフローチャートに示す処理を終了する。
【００６５】
また、メインＣＰＵ311は、上記S484でシリアル通信パケット611を送信した後、もう一度タイマ設定を行い（図８のS485）、該タイマの割り込みを待機する（図８のS486）。そして、メインＣＰＵ311は、時刻535に、該タイマの割り込みがあると（図８のS486でYes）、ＵＡＲＴ−Ｉ／Ｆ316を介してサブＳｏＣ302へ、要求種別フィールド402の値が「0xF2」であるシリアル通信パケット613を送信し（S487）、図８（ａ）のフローチャートに示す処理を終了する。
一方、サブＳｏＣ302内のＵＡＲＴ−Ｉ／Ｆ336は、上記メインＳｏＣ301から送信されたシリアル通信パケット613の受信を開始する。
【００６６】
時刻536に、ＵＡＲＴ−Ｉ／Ｆ336は、シリアル通信パケット613を受信完了すると（図６のS471）、シリアル通信パケット611の内容判定を行う（図６のS472、S476、S478）。ＵＡＲＴ−Ｉ／Ｆ336は、要求種別フィールド402の値が「0xF2」に合致すると判定した場合（図６のS478でYesの場合）、第二Ｉ／Ｏポート344を操作して出力をＨレベルに戻す（図６のS479）。
【００６７】
なお、メインＳｏＣ301からシリアル通信パケット611およびシリアル通信パケット613によって第二Ｉ／Ｏポート344を一定時間Ｌレベルにする時間（図８のS485のタイマ設定時間）は、サブＣＰＵ331が第一Ｉ／Ｏポート343をＬレベルにする時間（図８のS497の２ミリ秒）と比較して、シリアル通信によって操作を行う分だけ長く取るよう構成している。
【００６８】
なお、メインＣＰＵ311は図８（ａ）に示す処理を、サブＣＰＵ331は図８（ｂ）に示す処理を、それぞれ繰り返し実行するものとする。
図７の時刻542〜546は、時刻532から更に２００ミリ秒後の事象であり、同様にメインＳｏＣ301からサブＳｏＣ302へと送信されたシリアル通信パケット621および623と、時刻544にサブＣＰＵ331に対して発生したタイマ割り込みとにより、ウォッチドッグパルス出力ロジック345がＨレベル→Ｌレベルへの立下りエッジを出力することによって、ウォッチドッグパルス信号305が出力され、ウォッチドッグタイマカウンタがクリアされる。
【００６９】
このようにして、メインＳｏＣ301からのシリアル通信パケットによるウォッチドッグパルスの出力条件と、サブＳｏＣ内蔵ＣＰＵ331からのウォッチドッグパルスの出力条件との両方が満たされた場合に、ウォッチドッグタイマリセットＩＣ183に立下りエッジを出力することで、両方が正常に動作していることを保証した形で負荷駆動源を動作させることが可能となる。
【００７０】
〔異常時の動作例１〕
次に、図９を用いて、シリアル通信信号線が断線した場合や、シリアル通信モジュールが正常な動作を継続できない状態に陥った場合など、シリアル通信パケットがメインＳｏＣ301からサブＳｏＣ302に届かない状態が発生した場合の処理について説明する。
【００７１】
図９は、シリアル通信信号が断線した場合のメインＳｏＣ301およびサブＳｏＣ302周辺の信号の時間推移を示すタイミングチャートである。
図９において、時刻521〜526は、図４の時刻521〜526に相当する部分であるため、説明を省略する。
【００７２】
図９に示すように、時刻526と時刻533の間の時刻551において、メインＳｏＣ301からサブＳｏＣ302へのシリアル通信送信信号線303が断線した場合、時刻532で送信されたはずのシリアル通信パケット611はサブＳｏＣ302へは到着しない。そのため、ＵＡＲＴ−ＩＦ336は、第二Ｉ／Ｏポート344を操作しないため、信号502はＨレベルのままである。
【００７３】
一方、サブＣＰＵ331では、最低限タイマ337からのタイマ割り込みを受けられる状態であれば、第一Ｉ／Ｏポート343のポートの操作を継続する。そのため、時刻534では、サブＣＰＵ331が第一Ｉ／Ｏポート343を操作して出力をＬレベルに切り替え、１０ミリ秒後にＨレベルに戻す。
【００７４】
しかし、ウォッチドッグパルス出力ロジック345に入力される信号が両方ともＬレベルに揃っている状態ではないため、信号506はＨのまま変化しない。
よって、最後にウォッチドッグパルスを出力した時刻524から５００ミリ秒後の時刻552に、ウォッチドッグタイマリセットＩＣ183によってリセットが発生する。
【００７５】
以上説明したとおり、メインＳｏＣ301からサブＳｏＣ302へのシリアル通信送信信号線303が断線した場合であっても、本実施例によれば、サブＳｏＣ302をリセットすることができ、装置を安全状態へと導くことが可能となる。
【００７６】
〔異常時の動作例２〕
次に、図１０を用いてシリアル通信パケットがメインＳｏＣ301からサブＳｏＣ302に届いているが、サブＣＰＵ331やタイマ337が正常に動作していない場合の処理について説明する。
【００７７】
図１０は、サブＳｏＣ内蔵のＣＰＵ異常時のメインＳｏＣ301およびサブＳｏＣ302周辺の信号の時間推移を示すタイミングチャートである。
図１０において、時刻521〜526は、図４の時刻521〜526に相当する部分であるため、説明を省略する。
【００７８】
図１０に示すように、時刻526と時刻533との間の時刻561において、サブＳｏＣ302内のサブＣＰＵ331のプログラムが使用するワークＲＡＭ335の一部やタイマ337に異常が発生した。この後、時刻533になれば、メインＳｏＣ側からのパケット受信によって、ＵＡＲＴ−ＩＦ336が第二Ｉ／Ｏポート344を操作することで、信号502がＬレベルとなる。しかし、前述の異常によりサブＣＰＵ331が、時刻534において第一Ｉ／Ｏポート343の操作を行うことができなくなったため、信号501の論理はＨのままである。そのため、ウォッチドッグパルス出力ロジック345に入力される信号は両方ともＬレベルに揃った状態にならないため、信号506はＨのまま変化しない。よって、最後にウォッチドッグパルスを出力した時刻524から500ミリ秒後の時刻562に、ウォッチドッグタイマリセットＩＣ183によってリセットが発生する。
【００７９】
以上説明したとおり、メイン基板とサブ基板からなる複数の基板にＳｏＣが分散配置された構成において、基板毎にウォッチドッグＩＣが配置されている場合、メイン基板からサブ基板に対して通信で指示されたウォッチドッグパルス出力指示と、サブＳｏＣ内蔵ＣＰＵ（サブＣＰＵ331）によって内部的に発生したウォッチドッグパルス出力指示との両方が成立する事を条件に、ウォッチドッグパルスを出力する構成を有する。このような構成により、サブＣＰＵ331のプログラムが使用するワークＲＡＭ335の一部やタイマ337に異常が発生し、かつサブＣＰＵ331がそれを検知できない場合であっても、本実施例によれば、サブＳｏＣ302をリセットすることで、装置を安全状態へと導くことが可能となる。
【実施例２】
【００８０】
上記実施例１では、ウォッチドッグタイマリセットＩＣを用いた保護回路の構成について説明したが、本発明はこれに限定されるものではない。メインＳｏＣからの通信を受信する回路のＩ／Ｏポートを出力と、サブＳｏＣ内のＣＰＵが制御するＩ／Ｏポートの出力との論理演算結果を、アクチュエータ駆動信号を出力する３ステートバッファのイネーブル端子に入力する構成や、モータドライバの電源ロジックのＯＮ信号に入力する構成であってもよい。
【００８１】
一例として、アクチュエータ駆動信号の出力に３ステートバッファを介してモータドライバを接続する例を、図１１を用いて説明する。
図１１は、実施例２の電子機器に用いる制御部の構成を例示するブロック図であり、図２のメインＳｏＣ301と、サブＳｏＣ302に類似のサブＳｏＣ307とをシリアル通信信号線で接続した構成である。なお、図２と同一のものには同一の符号を付してある。
【００８２】
図１１では、第一Ｉ／Ｏポート343と第二Ｉ／Ｏポート344の出力は、モータ出力イネーブル制御ロジック346に接続されている。
モータ出力イネーブル制御ロジック346はＡＮＤゲートであり、第一Ｉ／Ｏポート343と第二Ｉ／Ｏポート344の両方からＨレベルを入力された場合に論理Ｈを出力し、いずれかからＬレベルを入力された場合に論理Ｌを出力する。モータ出力イネーブル制御ロジック346の出力であるモータの出力イネーブル信号347は、３ステートバッファ383に接続されている。
【００８３】
３ステートバッファ383は、ＰＷＭ回路339の出力と給紙モータ140間、および、ＰＷＭ回路339の出力とレジストモータ141との間にそれぞれ配置されるバッファ回路である。３ステートバッファ383は、モータの出力イネーブル信号347がＨの場合は、ＰＷＭ回路339からの入力をそのまま出力する。一方、モータの出力イネーブル信号347がＬの場合、３ステートバッファ383は、給紙モータ140およびレジストモータ141への出力をＨｉ−Ｚ状態とする回路である。すなわち、３ステートバッファ383は、モータの出力イネーブル信号347がＨの場合には給紙モータ140およびレジストモータ141の駆動を許可し、一方、モータの出力イネーブル信号347がＬの場合には給紙モータ140およびレジストモータ141の駆動を許可しないように機能する。
【００８４】
上記の構成における、アクチュエータ動作の保護機構について、図１２と図１３を用いて説明する。
図１２は、実施例２におけるメインＳｏＣ301およびサブＳｏＣ302周辺の信号の時間推移を示すタイミングチャートである。
図１３は、実施例２におけるメインＣＰＵ311及びサブＣＰＵ331の動作を例示するフローチャートであり、図１３（ａ）はメインＣＰＵ311の動作に対応し、図１３（ｂ）はサブＣＰＵ331の動作に対応する。すなわち、図１３（ａ）の処理は、メインＣＰＵ311がＲＯＭ314に記録されたプログラムを実行することにより実現される。また、図１３（ｂ）の処理は、サブＣＰＵ331がＲＯＭ334に記録されたプログラムを実行することにより実現される。
なお、ＵＡＲＴ−Ｉ／Ｆ336におけるシリアル通信パケット受信時の判断は図６と同様であるため説明を省略する。
【００８５】
図１２において、信号507は、モータの出力イネーブル信号347の論理状態を示した波形である。
時刻581に、電源ＯＮされ、メインＣＰＵ311およびサブＣＰＵ331のリセット状態が解除される（図１３のS701，S721）。その時点での第一Ｉ／Ｏポート343および第二Ｉ／Ｏポート344の初期値は論理Ｌである（502、503）。
【００８６】
リセット状態が解除されると（図１３のS701）、メインＣＰＵ311は、時刻582までのタイマをタイマ318に設定し（図１３のS702）、該タイマの割り込みを待機する（図１３のS703）。
また、サブＣＰＵ331は、ＵＡＲＴ−Ｉ／Ｆ336を初期化し、メインＳｏＣ301からのシリアル通信信号を受信可能な準備を行う。さらに、サブＣＰＵ331は、ＵＡＲＴ−Ｉ／Ｆ336を介し、メインＳｏＣ301からの、モータの駆動を行う命令を含むシリアル通信パケット（後述する652）の受信を待機する（図１３のS724）。
【００８７】
メインＣＰＵ311は、時刻582にタイマ割り込みが発生すると（図１３のS703でYes）、サブＳｏＣ307に向けてシリアル通信パケット651を送信する（図１３のS704）。
一方、サブＳｏＣ302内のＵＡＲＴ−Ｉ／Ｆ336は、上記メインＳｏＣ301から送信されたシリアル通信パケット651の受信し、第二Ｉ／Ｏポート344の出力を論理Ｈに切り替える。
【００８８】
メインＣＰＵ311は、上記S704の処理から１０ミリ秒待機し（図１３のS705）、時刻584に、サブＳｏＣ307に対してサブＣＰＵ331がモータの駆動を行う命令を含むシリアル通信パケット652を送信し（S706）、時刻586までのタイマをタイマ318に設定し（図１３のS707）、該タイマの割り込みを待機する（図１３のS708）。
【００８９】
ＵＡＲＴ−Ｉ／Ｆ336は、上記S706で送信されたモータの駆動を行う命令を含むシリアル通信パケット652を受信すると、サブＣＰＵ331に対して割り込みを発生する。
サブＣＰＵ331は、受信割り込みを受け取ると、ＵＡＲＴ−Ｉ／Ｆ336の受信値レジスタを読み取り、モータの駆動を行う命令を含むシリアル通信パケット652を受信したと判断すると（図１３のS724でYes）、第一Ｉ／Ｏポート343を論理Ｈに切り替え（図１３のS725）、ＰＷＭ回路339をＯＮする（図１３のS726）。
【００９０】
ここで、モータ出力イネーブル制御ロジック346への入力は両方ともＨレベルになったため、507に示すように、モータ出力イネーブル制御ロジック346からのモータの出力イネーブル信号347は、Ｈレベルに切り替わるため、３ステートバッファ383の出力論理はＨｉ−ＺからＰＷＭ回路339の出力を伝達する状態へと切り替わる。
【００９１】
その後、サブＣＰＵ331は、シリアル通信パケット652で指示された時刻585までのタイマをタイマ337に設定する（図１３のS727）。そして、サブＣＰＵ331は、時刻585に、タイマ割り込みが発生すると（図１３のS728）、ＰＷＭ回路339の出力を停止してモータの駆動を終え（図１３のS729）、第一Ｉ／Ｏポート343を論理Ｌに切り替える（図１３のS730）。これにより、507に示すように、モータ出力イネーブル制御ロジック346からのモータの出力イネーブル信号347もＬレベルへと切り替わる。
【００９２】
さらにその後、メインＣＰＵ311は、時刻586にタイマ割り込みを受けると（図１３のS708でYes）、サブＳｏＣ307に対してシリアル通信パケット654を送信する（図１３のS709）。これを受信したＵＡＲＴ−Ｉ／Ｆ336は、第二Ｉ／Ｏポート344の出力を論理Ｌへと戻す。この時、サブＣＰＵ331が何らかの理由でタイマ337からの割り込みを受け付けられない状態になった場合であっても、メインＳｏＣ301からのシリアル通信パケット654によって、モータの出力イネーブル信号347をオフすることができる。
【００９３】
以上の構成により、もしサブＣＰＵ331がＲＡＭ334の故障で意図しないタイミングでＰＷＭ回路339をＯＮし給紙モータ140およびレジストモータ141を駆動しようとしたとしても、事前にメインＳｏＣからモータ出力イネーブル制御ロジックの入力を論理Ｈにする通信パケットが到着しなければ、モータを駆動する信号は出力されない。また、もしＰＷＭ回路339をＯＮした後で、サブＣＰＵ331がＲＡＭ334の故障でＰＷＭ回路339を停止することや、第一Ｉ／Ｏポート343を論理Ｌへ戻せなくなったとしても、メインＳｏＣ301側からの通信パケットにより、モータを駆動する信号を停止することができる。
【００９４】
以上説明したように、サブＳｏＣに接続されたアクチュエータについて、サブＳｏＣ内蔵ＣＰＵの出力論理と、メインＳｏＣからのシリアル通信パケットから制御される出力論理との演算ロジックで出力イネーブルを制御することで、サブＳｏＣが制御不能な状態に陥った場合であっても、装置を安全状態へと導くことが可能となる。
【００９５】
以上のように、複数の基板に分割して構成された制御部を有する機器、例えば、シリアル通信によって接続された複数のＣＰＵやＳｏＣによって構成された機器について、想定外の異常に対して、より安全性を高めることが可能となる。すなわち、複数の基板に分割して構成された制御部を有する機器における想定外の異常に対して適切に対応することが可能となる。
【００９６】
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されていてもよい。
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
また、上記各実施例を組み合わせた構成も全て本発明に含まれるものである。
【００９７】
（その他の実施例）
本発明は、上述の実施例の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
また、本発明は、複数の機器から構成されるシステムに適用しても、1つの機器からなる装置に適用してもよい。
本発明は上記実施例に限定されるものではなく、本発明の趣旨に基づき種々の変形（各実施例の有機的な組合せを含む）が可能であり、それらを本発明の範囲から除外するものではない。即ち、上述した各実施例及びその変形例を組み合わせた構成も全て本発明に含まれるものである。
【符号の説明】
【００９８】
183    ウォッチドッグタイマリセットＩＣ
305    ウォッチドッグパルス信号
311    メインＣＰＵ
331    サブＣＰＵ
336    ＵＡＲＴ−Ｉ／Ｆ
343    第一Ｉ／Ｏポート
344    第二Ｉ／Ｏポート
345    ウォッチドッグパルス出力ロジック
【図１】
2018094720.tif 000003
【図２】
2018094720.tif 000004
【図３】
2018094720.tif 000005
【図４】
2018094720.tif 000006
【図５】
2018094720.tif 000007
【図６】
2018094720.tif 000008
【図７】
2018094720.tif 000009
【図８】
2018094720.tif 000010
【図９】
2018094720.tif 000011
【図１０】
2018094720.tif 000012
【図１１】
2018094720.tif 000013
【図１２】
2018094720.tif 000014
【図１３】
2018094720.tif 000015
【図１４】
2018094720.tif 000016