(57)【特許請求の範囲】
【請求項１】
第１マイコン（３）と、第２マイコン（５）と、を備え、
前記第１マイコンと前記第２マイコンとの各々は、他方のマイコンの動作を監視して、該他方のマイコンが異常であると判定すると、該他方のマイコンをリセットするためのリセット信号を出力するようになっている電子制御装置において、
前記第１マイコンの端子のうち、前記第２マイコンに対するリセット信号を出力するための出力端子（２９）と、前記第２マイコンのリセット端子（３９）との間に設けられ、前記出力端子から出力されるリセット信号を一定時間遅延させて前記第２マイコンのリセット端子に入力させる遅延手段（４３）と、
前記第１マイコンの前記出力端子から出力されるリセット信号を、前記第２マイコンの端子のうち、前記リセット端子とは別の入力端子（４１）にリセット予告信号として入力させる信号線（３７）と、
を備え、
前記第２マイコンは、前記入力端子に前記リセット予告信号が入力されると、当該第２マイコンが正常であるか否かを自分自身で判定するための自己検査処理（Ｓ１１０）を行い、該自己検査処理で当該第２マイコンが正常であると判定した場合には、前記第１マイコンのリセット端子（３５）へリセット信号を出力する（Ｓ１３０）ようになっており、
前記一定時間は、前記第２マイコンの前記入力端子に前記リセット予告信号が入力されてから、前記第２マイコンが前記自己検査処理により正常と判定して前記第１マイコンのリセット端子へリセット信号を出力するまでの時間よりも長いこと、
を特徴とする電子制御装置。
【請求項２】
請求項１に記載の電子制御装置において、
前記第１マイコンは、出力装置（７，９）を動作させるための制御信号を出力するマイコンであり、
前記第１マイコンがリセットされた時の前記制御信号の出力レベルは、前記出力装置を安全側の状態にさせるレベルであること、
を特徴とする電子制御装置。
【請求項３】
請求項１または請求項２に記載の電子制御装置において、
前記第２マイコンが行う前記自己検査処理は、前記第１マイコンによって監視される当該第２マイコンの動作を実現するための機能が正常か否かを判定する処理であること、
を特徴とする電子制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、搭載された２つのマイコンが相互に監視するようになっている電子制御装置に関する。
【背景技術】
【０００２】
２つのマイコンが相互に監視し合うことで暴走監視機能を高める思想がある（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】実開平５−５２９４５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、電子制御装置に搭載された第１マイコンと第２マイコンとが相互に監視し合う構成として、本発明者は、各マイコンが、監視対象である他方のマイコンが異常であると判定すると、その他方のマイコンのリセット端子へリセット信号を出力する、という構成を考えた。そして、この構成によれば、２つのマイコンのうちの一方に暴走（プログラム暴走）が生じた場合に、その暴走したマイコンを他方のマイコンによってリセットすることができ、延いては、暴走したマイコンを正常復帰させることが可能となる。
【０００５】
しかし、このように監視し合う２つのマイコンのうちの一方である第１マイコンが、異常となって、正常な他方の第２マイコンに対するリセット信号を出力してしまう場合には、その異常となった第１マイコンをリセットすることができない可能性がある。
【０００６】
つまり、異常となった第１マイコンが第２マイコンに対するリセット信号を繰り返し出力する状態になると、第２マイコンは、第１マイコンの異常を検知して該第１マイコンに対するリセット信号を出力する前に、第１マイコンからのリセット信号によってリセットされてしまい、第１マイコンをリセットすることができなくなってしまう。
【０００７】
そして、例えば、第１マイコンが出力装置を動作させるための制御信号を出力するマイコンである場合に、上記のような状態が発生して第１マイコンのリセットができないと、出力装置の動作が不定になってしまうことから、電子制御装置の信頼性面において好ましくない。
【０００８】
本発明は、こうした問題に鑑みなされたものであり、第１マイコンと第２マイコンとが相互に監視し合う電子制御装置において、第１マイコンが異常になって正常な第２マイコンをリセットしてしまうことにより第２マイコンによって異常な第１マイコンをリセットすることができなくなってしまうこと、を防止することを目的としている。
【課題を解決するための手段】
【０００９】
本発明の電子制御装置において、第１マイコンと第２マイコンとの各々は、他方のマイコンの動作を監視して、該他方のマイコンが異常であると判定すると、該他方のマイコンをリセットするためのリセット信号を出力するようになっている。
【００１０】
そして特に、この電子制御装置では、第１マイコンの端子のうち、第２マイコンに対するリセット信号を出力するための出力端子と、第２マイコンのリセット端子との間に、遅延手段が設けられており、その遅延手段は、第１マイコンの出力端子から出力されるリセット信号を一定時間遅延させて第２マイコンのリセット端子に入力させる。
【００１１】
更に、第１マイコンの出力端子から出力されるリセット信号は、信号線を介して、第２マイコンの端子のうち、リセット端子とは別の入力端子にリセット予告信号として入力される。
【００１２】
そして、第２マイコンは、前記入力端子にリセット予告信号が入力されると（即ち、第１マイコンが第２マイコンに対するリセット信号を出力すると）、当該第２マイコンが正常であるか否かを自分自身で判定するための自己検査処理を行い、該自己検査処理で当該第２マイコンが正常であると判定した場合には、第１マイコンのリセット端子へリセット信号を出力する。尚、遅延手段による上記一定時間は、第２マイコンの入力端子にリセット予告信号が入力されてから、第２マイコンが自己検査処理により正常と判定して第１マイコンのリセット端子へリセット信号を出力するまでの時間よりも長い。
【００１３】
つまり、第２マイコンは、第１マイコンが当該第２マイコンに対するリセット信号を出力したことを、入力端子からのリセット予告信号によって検知すると、遅延手段からのリセット信号でリセットされるまでの間（即ち、遅延手段による上記一定時間が経過するまでの間）に、自己検査処理を行い、更に、その自己検査処理で正常と判定した場合には、第１マイコンの方が異常であると考えられることから、第１マイコンに対してリセット信号を出力するようになっている。
【００１４】
このような電子制御装置によれば、第１マイコンが異常になって正常な第２マイコンをリセットしようとした場合に、第１マイコンもリセットすることができる。よって、前述の目的を達成することができる。
【００１５】
尚、第１マイコンが正常で、第２マイコンが異常である場合には、第２マイコンでの自己検査処理で正常と判定されずに、第２マイコンから第１マイコンへのリセット信号が出力されないため、第２マイコンだけがリセットされることとなる。
【図面の簡単な説明】
【００１６】
【図１】実施形態のＥＣＵを表す構成図である。
【図２】リセット予告時処理を表すフローチャートである。
【図３】実施形態のＥＣＵの作用を表すタイムチャートである。
【図４】比較例のＥＣＵを表す構成図である。
【発明を実施するための形態】
【００１７】
以下に、本発明が適用された実施形態の電子制御装置について説明する。尚、本実施形態の電子制御装置（以下、ＥＣＵという）は、例えば、自動車のエンジンを制御するものである。
【００１８】
図１に示すように、本実施形態のＥＣＵ１は、主にエンジンを制御するための処理を行うメインマイコン３と、メインマイコン３の動作を監視すると共に、メインマイコン３によって動作が監視されるサブマイコン５と、メインマイコン３から出力される制御信号に応じて、エンジンを動作させるための出力装置７，９（例えば、インジェクタやスロットルモータ等のアクチュエータ）を駆動する出力回路１１と、を備えている。尚、図１では、出力回路１１の駆動対象として２個の出力装置７，９を図示しているが、駆動対象の出力装置は、１つでも良いし、３つ以上でも良い。
【００１９】
そして、ＥＣＵ１において、メインマイコン３とサブマイコン５との間には、メインマイコン３からサブマイコン５へデータを転送するための通信線１３と、サブマイコン５からメインマイコン３へデータを転送するための通信線１５とが、配設されている。尚、他の構成例として、メインマイコン３とサブマイコン５が、１系統の通信線を介して双方向に通信するようになっていても良い。
【００２０】
メインマイコン３は、プログラムを実行するＣＰＵ１７と、実行対象のプログラムや固定データなどが記憶されたＲＯＭ１９と、ＣＰＵ１７による演算結果などが記憶されるＲＡＭ２１とを備えている。同様に、サブマイコン５も、ＣＰＵ２３と、ＲＯＭ２５と、ＲＡＭ２７とを備えている。そして、以下に説明するメインマイコン３の動作は、ＣＰＵ１７がＲＯＭ１９内のプログラムを実行することで実現される動作であり、同様に、以下に説明するサブマイコン５の動作は、ＣＰＵ２３がＲＯＭ２５内のプログラムを実行することで実現される動作である。
【００２１】
次に、各マイコン３，５の動作内容について説明する。
メインマイコン３は、制御対象としてのエンジンを制御するための制御処理と、サブマイコン５に動作を監視されるための応答処理（サブマイコン５に対する応答処理）と、サブマイコン５の動作を監視するための監視処理（サブマイコン５の監視処理）とを行う。各処理の内容は、例えば下記の通りである。
【００２２】
〈制御処理〉
メインマイコン３は、エンジン回転数、エンジンの冷却水温及びスロットル開度などの制御情報を入力し、その制御情報に基づいて、エンジンを動作させるための制御演算を行う。そして、メインマイコン３は、その制御演算の結果に基づいて、出力回路１１に制御信号を出力することにより、出力装置７，９を動作させてエンジンを制御する。
【００２３】
〈サブマイコン５に対する応答処理〉
メインマイコン３は、例えば、一定時間毎に、ＲＯＭ１９内に用意されたダミーデータを演算対象の入力データとして、所定のテスト演算を行い、そのテスト演算の演算結果データを通信線１３に送出する（つまり、サブマイコン５に送信する）。
【００２４】
尚、本実施形態では、例えば、複数のテスト番号毎にダミーデータとテスト演算が決められており、メインマイコン３は、その複数のテスト番号について、テスト演算を行うと共に、各テスト番号と、そのテスト番号に対応する演算結果データとを、対応付けてサブマイコン５に送信する。
【００２５】
〈サブマイコン５の監視処理〉
メインマイコン３は、サブマイコン５の動作を監視し、サブマイコン５が異常であると判定すると、サブマイコン５をリセットするためのリセット信号を、当該メインマイコン３の出力端子２９から出力する。
【００２６】
具体的に説明すると、メインマイコン３は、例えば、サブマイコン５から通信線１５を介して送られてくるデータ値（後述する処理実行カウンタの値）が、一定時間以内に増加したか否かを判定し、そのデータ値が増加しなければ、サブマイコン５が異常であると判定して、出力端子２９からリセット信号を出力する。
【００２７】
尚、本実施形態において、リセット信号のアクティブレベルは、例えばハイであるが、ローであっても良い。また、特に断らなければ、「リセット信号」とは、「アクティブレベルのリセット信号」のことである。また、以下では、メインマイコン３の出力端子２９から出力されるリセット信号のことを、図１の如く「リセット信号［ａ］」と記載する。
【００２８】
一方、サブマイコン５は、メインマイコン３の動作を監視するための監視処理（メインマイコン３の監視処理）と、メインマイコン３に動作を監視されるための応答処理（メインマイコン３に対する応答処理）とを行う。各処理の内容は、例えば下記の通りである。
【００２９】
《メインマイコン３の監視処理》
サブマイコン５のＲＯＭ２５には、メインマイコン３が前述の応答処理を行うことで送信してくる演算結果データの期待値が、テスト番号毎に記憶されている。
【００３０】
そして、サブマイコン５は、メインマイコン３から受信した演算結果データと、その演算結果データに対応するテスト番号についてＲＯＭ２５に記憶されている期待値（即ち、メインマイコン３から受信した演算結果データの正しい値）とを比較することにより、メインマイコン３からの演算結果データが正しいか否かを判定し、演算結果データが正しくないと判定したならば、異常カウンタをインクリメントする。そして更に、サブマイコン５は、所定時間における異常カウンタの増加量が所定値以上になったら、メインマイコン３が異常であると判定して、メインマイコン３をリセットするためのリセット信号を、当該サブマイコン５の出力端子３１から出力する。
【００３１】
尚、以下では、サブマイコン５の出力端子３１から出力されるリセット信号のことを、図１の如く「リセット信号［ｄ］」と記載する。
《メインマイコン３に対する応答処理》
サブマイコン５は、メインマイコン３の監視処理を実行する毎に、前述の処理実行カウンタをインクリメントし、その処理実行カウンタの値を通信線１５に送出する（つまり、メインマイコン３に送信する）。
【００３２】
このため、サブマイコン５が異常になって、サブマイコン５からメインマイコン３に送信される処理実行カウンタの値が増加しなくなると、メインマイコン３の出力端子２９からリセット信号［ａ］が出力されることとなる。
【００３３】
また、メインマイコン３が異常になって、メインマイコン３からサブマイコン５に送信されるテスト演算の演算結果データが正しくなくなると、サブマイコン５の出力端子３１からリセット信号［ｄ］が出力されることとなる。
【００３４】
ここで、図１に示すように、サブマイコン５の出力端子３１に接続された信号線３３は、メインマイコン３のリセット端子３５に接続されている。このため、サブマイコン５がリセット信号［ｄ］を出力すると、メインマイコン３は即座にリセットされる。
【００３５】
一方、メインマイコン３の出力端子２９に接続された信号線３７は２系統に分岐しており、その分岐した信号線３７の一方は、サブマイコン５のリセット端子３９とは別の入力端子４１に接続されている。また、その分岐した信号線３７の他方は、遅延回路４３に接続されている。
【００３６】
そして、遅延回路４３は、メインマイコン３の出力端子２９から信号線３７を介して入力されるリセット信号［ａ］を、一定時間Ｔｄだけ遅延させて出力する。更に、その遅延回路４３から出力されるリセット信号（即ち、リセット信号［ａ］を一定時間Ｔｄだけ遅延させた信号であり、以下、リセット信号［ｃ］ともいう）は、信号線４５を介してサブマイコン５のリセット端子３９に入力されるようになっている。
【００３７】
このため、メインマイコン３がリセット信号［ａ］を出力すると、そのリセット信号［ａ］が即座にサブマイコン５の入力端子４１に入力され、その時点から遅延回路４３により遅延される一定時間（以下、遅延時間という）Ｔｄが経過すると、リセット信号［ａ］がサブマイコン５のリセット端子３９に到達して、サブマイコン５がリセットされることとなる。
【００３８】
よって、サブマイコン５の入力端子４１に入力されるリセット信号［ａ］は、上記遅延時間Ｔｄ後にサブマイコン５がリセットされることを、サブマイコン５に対して予告するリセット予告信号（以下、リセット予告信号［ｂ］という）となる。このため、信号線３７は、メインマイコン３からのリセット信号［ａ］を、サブマイコン５の入力端子４１にリセット予告信号［ｂ］として入力させている。
【００３９】
そして、ＥＣＵ１において、サブマイコン５は、入力端子４１にリセット予告信号［ｂ］が入力されると、図２のリセット予告時処理を実行するようになっている。
尚、サブマイコン５は、例えば、上記遅延時間Ｔｄよりも短い時間毎に、入力端子４１の入力レベルがハイかローかを判別し、入力端子４１の入力レベルがアクティブレベルとしてのハイであれば、リセット予告信号［ｂ］が入力されたと認識して、図２のリセット予告時処理を行う。また例えば、入力端子４１が外部割込端子であれば、サブマイコン５は、入力端子４１の入力レベルを判別する処理を行わなくても良く、その入力端子４１にハイの信号が入力されると起動される割込処理を、リセット予告時処理とすれば良い。そして、何れにしても、遅延回路４３による遅延時間Ｔｄは、サブマイコン５の入力端子４１にリセット予告信号［ｂ］が入力されてからリセット予告時処理が終了するまでの最長時間よりも、長い時間に設定されている。
【００４０】
図２に示すように、サブマイコン５は、リセット予告時処理を開始すると、まずＳ１１０にて、当該サブマイコン５が正常であるか否かを自分自身で判定するための、セルフチェック（自己検査処理）を行う。
【００４１】
このセルフチェックを行う理由は、下記の［第１の状態］と［第２の状態］との、何れであるかを判別するためである。
［第１の状態］：サブマイコン５は正常であるにも拘わらず、メインマイコン３が異常になってリセット信号［ａ］を出力した。
【００４２】
［第２の状態］：メインマイコン３は正常で、サブマイコン５が異常になったことにより、その正常なメインマイコン３がリセット信号［ａ］を出力した。
このため、セルフチェックとしては、サブマイコン５の機能のうち、メインマイコン３によって監視されるサブマイコン５の動作を実現するための機能が、正常か否かを判定する処理が行われる。つまり、Ｓ１１０では、サブマイコン５において、メインマイコン３によりリセットされる要因となるような異常が発生しているか否かを検査する。
【００４３】
本実施形態では、セルフチェックとして、メインマイコン３に対する応答処理が正しく行えるか否かを検査するために、例えば、前述の処理実行カウンタのインクリメントを正しく行えるか否かを検査する。
【００４４】
具体的には、まず、処理実行カウンタの値を、ＲＡＭ２７の所定領域にコピーして保存する退避処理を行った後、その処理実行カウンタの値を０にリセットする。次に、処理実行カウンタをインクリメントする命令をＭ回（Ｍは正の整数）実行し、その後、処理実行カウンタの値がＭであるか否かを判定して、値がＭであれば「異常無し（ＯＫ）」と判定し、値がＭでなければ「異常有り（ＮＧ）」と判定する。そして最後に、処理実行カウンタの値をＲＡＭ２７に保存しておいた値に戻す復元処理を行う。
【００４５】
尚、上記復元処理は、「異常無し」と判定した場合にだけ行うようになっていても良い。また、セルフチェックとしては、処理実行カウンタとは別のカウンタについて、インクリメントを正しく行えるか否かを検査するのでも良い。別のカウンタのインクリメントができなければ、処理実行カウンタのインクリメントもできないと考えられるからである。そして、この場合には、上記退避処理及び復元処理は不要となる。
【００４６】
このようなＳ１１０でのセルフチェックが終了すると、次のＳ１２０にて、そのセルフチェックの結果が「異常無し」か否かを判定し、「異常無し」であれば（つまり、当該サブマイコン５が正常であると判定した場合には）、Ｓ１３０に進んで、メインマイコン３へのリセット信号［ｄ］を出力する。つまり、この場合には、前述した［第１の状態］であると判断して、遅延回路４３からのリセット信号［ｃ］によってリセットされる前に、リセット信号［ｄ］を出力してメインマイコン３をリセットする。そして、その後は、Ｓ１４０に進み、そのＳ１４０にて、処理を停止し、遅延回路４３からのリセット信号［ｃ］によってリセットされるのを待つ。尚、このＳ１４０に到達することが、リセット予告時処理の終了に相当している。
【００４７】
また、上記Ｓ１２０にて、セルフチェックの結果が「異常無し」ではない（即ち、「異常有り」である）と判定した場合には、そのままＳ１４０に移行する。つまり、この場合には、前述した［第２の状態］であると考えられることから、メインマイコン３をリセットすることなく、遅延回路４３からのリセット信号［ｃ］によってリセットされるのを待つ。よって、［第２の状態］である場合には、２つのマイコン３，５のうち、サブマイコン５だけがリセットされることとなる。
【００４８】
尚、セルフチェックの結果が「異常無し」であった場合（Ｓ１２０：ＹＥＳ）にも、サブマイコン５はリセット信号［ｃ］によってリセットされるが、そのようになっているのは、サブマイコン５によるセルフチェックではサブマイコン５の異常を検知できない場合も考えられるからである。よって、サブマイコン５は、セルフチェックの結果に拘わらず、メインマイコン３がリセット信号［ａ］を出力してから遅延時間Ｔｄ後にリセット信号［ｃ］によってリセットされる。
【００４９】
次に、以上のようなＥＣＵ１の作用について、図３を用いて説明する。尚、図３は、メインマイコン３がプログラム暴走によって異常となり、サブマイコン５に対するリセット信号［ａ］を出力した場合（即ち［第１の状態］の場合）を表している。
【００５０】
図３における１段目及び２段目示すように、メインマイコン３がリセット信号［ａ］を出力すると、サブマイコン５の入力端子４１にリセット予告信号［ｂ］が入力される。すると、サブマイコン５は、図２のリセット予告時処理を実行することとなる。
【００５１】
そして、この場合には［第１の状態］であるため、サブマイコン５は、リセット予告時処理におけるセルフチェック（Ｓ１１０）によって「異常無し」と判定し、図３における５段目に示すように、メインマイコン３へのリセット信号［ｄ］を出力することとなる（Ｓ１３０）。すると、図３における６段目に示すように、メインマイコン３がリセットされる。
【００５２】
また、メインマイコン３は、出力装置７，９を動作させるための制御信号を出力するマイコンであるが、そのメインマイコン３がリセットされた時の制御信号の出力レベルは、出力装置７，９を安全側の状態にさせるレベルになっている。
【００５３】
具体的に説明すると、本実施形態において、メインマイコン３は、リセットされると、図３における７段目（最下段）に示すように、制御出力（即ち、制御信号の出力レベル）が、例えばローになるように設計されている。このため、出力回路１１は、メインマイコン３からの制御信号がローの場合には、出力装置７，９を安全側の状態にさせるように設計されている。
【００５４】
尚、「安全側の状態にさせる」とは、メインマイコン３のリセット時（つまり、メインマイコン３が正常に動作しない場合）において、動作させるよりも動作させない方が安全と考えられる出力装置であれば、「動作させない」ということであり、動作させないよりも動作させる方が安全と考えられる出力装置であれば、「動作させる」ということである。例えば、出力装置７，９が、前述したようにエンジンを動作させるためのインジェクタやスロットルモータ等のアクチュエータであれば、動作させるよりも動作させない方が安全と考えることができる。また他の例として、例えば、出力装置７，９が、異常を報知するための警告ランプであれば、動作させないよりも動作させる（点灯させる）方が安全と考えることができる。
【００５５】
よって、図３における６段目及び７段目に示すように、メインマイコン３がサブマイコン５からのリセット信号［ｄ］によってリセットされると、メインマイコン３からの制御信号が非アクティブレベルとしてのローとなり、その結果、出力装置７，９の不定で不要な動作が防止される。尚、ここでは、出力装置７，９がエンジンを動作させるためのアクチュエータであることを想定している。また、メインマイコン３のリセット時の制御信号がハイになるのであれば、出力回路１１は、メインマイコン３からの制御信号がハイの場合に出力装置７，９を安全側の状態にさせるように設計しておけば良い。
【００５６】
そして、メインマイコン３がリセット信号［ａ］を出力してから遅延回路４３による遅延時間Ｔｄが経過すると、図３における３段目に示すように、サブマイコン５のリセット端子３９にリセット信号［ｃ］が入力される。すると、図３における４段目に示すように、サブマイコン５もリセットされることとなる。
【００５７】
以上のようなＥＣＵ１によれば、メインマイコン３が異常になって正常なサブマイコン５をリセットしようとした場合に、サブマイコン５によってメインマイコン３もリセットすることができる。
【００５８】
よって、「メインマイコン３が異常になって正常なサブマイコン５をリセットしてしまうことにより、サブマイコン５によって異常なメインマイコン３をリセットすることができなくなってしまう」ということを、防止することができる。
【００５９】
そして、メインマイコン３がリセットされた時の制御信号の出力レベルは、出力装置７，９を安全側の状態にさせるレベルであるため、サブマイコン５がメインマイコン３をリセットすることで、出力装置７，９の不定で不要な動作が防止される。
【００６０】
ここで、ＥＣＵ１の効果をより明確にするために、比較例のＥＣＵについて、図４を用い説明する。
図４に示す比較例のＥＣＵ４９では、ＥＣＵ１と比較すると、第１の相違点として、遅延回路４３が設けられておらず、メインマイコン３の出力端子２９とサブマイコン５のリセット端子３９は信号線３７によって接続されている。このため、メインマイコン３が出力端子２９からリセット信号［ａ］を出力すると、サブマイコン５は即座にリセットされる。
【００６１】
そして、このような構成では、「発明が解決しようとする課題」の欄で説明したように、異常となったメインマイコン３がサブマイコン５に対するリセット信号［ａ］を繰り返し出力する状態になると、サブマイコン５は、メインマイコン３の異常を検知してメインマイコン３に対するリセット信号［ｄ］を出力する前に、メインマイコン３からのリセット信号［ａ］によってリセットされてしまい、メインマイコン３をリセットすることができなくなってしまう。
【００６２】
そして、異常になったメインマイコン３をリセットすることができないと、そのメインマイコン３によって制御される出力装置７，９が不定な動作をしてしまう可能性がある。
そこで、この対策として、比較例のＥＣＵ４９では、サブマイコン５が起動してからメインマイコン３を正常と判定するまで、メインマイコン３からの制御信号を無効化するための出力カット機構５１を設けており、このことがＥＣＵ１との第２の相違点である。
【００６３】
出力カット機構５１は、サブマイコン５からの指令信号によって動作するものであり、サブマイコン５がリセットされた時の指令信号の出力レベルが例えばローであるとすると、その指令信号がローである場合には、メインマイコン３からの制御信号が出力回路１１に伝達されるのを阻止して、出力回路１１に入力される制御信号のレベルを非アクティブレベルに固定する。
【００６４】
そして、サブマイコン５は、リセットの解除により起動してから、前述したメインマイコン３の監視処理により、例えば、メインマイコン３からの全ての演算結果データが正しいと所定回数連続して判定すると、メインマイコン３は正常であると判定して、出力カット機構５１への指令信号をリセット時のレベルとは反対のレベル（ハイ）に切り替える。すると、出力カット機構５１は、メインマイコン３からの制御信号を出力回路１１に伝達させることとなる。
【００６５】
比較例のＥＣＵ４９では、このような出力カット機構５１を設けることにより、サブマイコン５が異常なメインマイコン３によってリセットされて、メインマイコン３をリセットすることができなくても、そのサブマイコン５のリセット時点から、出力装置７，９の不定な動作を防止できるようにしている。尚、出力カット機構５１と同様のものを、出力回路１１と出力装置７，９との間に設けることもあり得る。
【００６６】
しかし、このような比較例のＥＣＵ４９では、メインマイコン３からの制御信号の出力数が複数ある場合に、出力カット機構５１の構成が複雑になってしまい、そのＥＣＵ４９の大型化やコスト増加を招いてしまう。
【００６７】
これに対して、本実施形態のＥＣＵ１によれば、ＥＣＵ４９のような出力カット機構５１を設ける必要がなく、メインマイコン３からの制御信号の出力数が幾つであっても、１つの遅延回路４３を設けることで、出力装置７，９の不定な動作を防止できる。よって、ＥＣＵ１の大型化やコスト増加の心配もない。
【００６８】
以上、本発明の一実施形態について説明したが、本発明はこうした実施形態に何等限定されるものではなく、本発明の要旨を逸脱しない範囲において、種々なる態様で実施し得ることは勿論である。
【００６９】
例えば、メインマイコン３が行うサブマイコン５の監視処理としては、「サブマイコン５から所定時間以内毎に出力されるはずの監視対象信号が、その所定時間以内に出力されなければ、サブマイコン５が異常であると判定する」というウォッチドッグタイマの処理でも良い。その場合、サブマイコン５は、メインマイコン３に対する応答処理として、監視対象信号を所定時間以内毎に出力する処理を行うこととなる。そして、サブマイコン５は、セルフチェック（自己検査処理）としては、例えば、監視対象信号の出力間隔である上記所定時間を計測するためのカウンタのインクリメントを、正しく行えるか否かを検査する処理を行うようにすることが考えられる。一方、サブマイコン５が行うメインマイコン３の監視処理としても、例えば、ウォッチドッグタイマの処理でも良い。
【００７０】
また、出力装置７，９は、インジェクタやスロットルモータ等のアクチュエータに限らず、例えば、既に例示した警告ランプ等の表示ランプや、表示装置等でも良い。
また、ＥＣＵ１の制御対象は、エンジンに限らず、トランスミッションやブレーキ装置などでも良い。また、本発明は、自動車に搭載される電子制御装置以外にも同様に適用することができる。
【符号の説明】
【００７１】
１…ＥＣＵ、３…メインマイコン、５…サブマイコン、７，９…出力装置、１１…出力回路、２９…出力端子、３５，３９…リセット端子、３７…信号線、４１…入力端子、４３…遅延回路
【図１】
0005772716.tif 000002
【図２】
0005772716.tif 000003
【図３】
0005772716.tif 000004
【図４】
0005772716.tif 000005