(57)【要約】【課題】  割り込み信号の周期が正常であるか否かの検証が容易な制御装置を提供する。【解決手段】  第１タイマ回路５１、第２タイマ回路５３、第３タイマ回路５５を備え、これらのタイマ回路から出力される割り込み信号により割り込み処理を実行するマイコン１４であって、基準となる割り込み信号を送出する第１タイマ回路５１と、第１タイマ回路５１から送出された基準となる割り込み信号に基づいて割り込み処理の処理タイミングを判定し、処理タイミングとなると割り込み信号の送出命令を第２タイマ回路５３、第３タイマ回路５５に出力するソフトウェア処理部１４と、割り込み信号の送出命令を受信して、ソフトウェア処理部１４に割り込み信号を送出する第２タイマ回路５３、第３タイマ回路５５とを有する構成としている。【選択図】        図２
2009251700.tif 000002
【特許請求の範囲】
【請求項１】
複数のタイマ回路を備え、該複数のタイマ回路から出力される割り込み信号により割り込み処理を実行する制御装置であって、
基準となる割り込み信号を送出する一のタイマ回路と、
前記一のタイマ回路から送出された前記基準となる割り込み信号に基づいて前記割り込み処理の処理タイミングを判定し、該処理タイミングとなると割り込み信号の送出命令を他のタイマ回路に出力する制御部と、
前記割り込み信号の送出命令を受信して、前記制御部に前記割り込み信号を送出する前記他のタイマ回路と、
を有することを特徴とする制御装置。
【請求項２】
前記制御部は、前記一のタイマ回路から前記基準となる割り込み信号を受信すると、該基準となる割り込み信号を監視手段に出力し、該監視手段に前記基準となる割り込み信号の周期を監視させることを特徴とする請求項１記載の制御装置。
【請求項３】
前記制御部は、前記一のタイマ回路から前記割り込み信号を受信するごとにカウントアップする基本カウンタと、前記基本カウンタのカウント値をバックアップとして記憶するバックアップカウンタとを有することを特徴とする請求項１又は２記載の制御装置。
【請求項４】
前記バックアップカウンタを複数有し、
前記制御部は、前記複数のバックアップカウンタのカウント値のうち、最も多くのバックアップカウンタでカウントされたカウント値を選択して前記基本カウンタのカウント値と比較し、該基本カウンタのカウント値のエラーを検出することを特徴とする請求項３記載の制御装置。
【請求項５】
前記制御装置は、前記一のタイマ回路と前記他のタイマ回路との少なくとも一方から割り込み信号を入力して、前記割り込み処理としてエンジンを制御する制御信号を生成することを特徴とする請求項１から４のいずれか一項記載の制御装置。
【請求項６】
複数のタイマ回路のうち、基準となる割り込み信号を送出する一のタイマ回路から前記基準となる割り込み信号を受信するステップと、
前記基準となる割り込み信号に基づいて前記割り込み処理の処理タイミングを判定し、該処理タイミングとなると割り込み信号の送出命令を他のタイマ回路に出力するステップと、
前記他のタイマ回路から送出される前記割り込み信号を受信して、前記割り込み処理を開始するステップと、
を有することを特徴とする割り込み信号発生方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御装置に関する。特に、車両に搭載される機器を制御する制御装置に関する。
【背景技術】
【０００２】
車両に搭載される制御装置は、内部にＣＰＵとメモリとを有するマイコンを搭載し、メモリに記録されたプログラムに従ってＣＰＵが制御を行うことで、制御対象の機器を制御している。
マイコンには、ＲＯＭ、ＲＡＭ、リソースを有しＯＳ（オペレーティングシステム）を搭載することができる比較的高価なものと、ＯＳを搭載することができず、リソースが少ない安価なものとが存在する。
【０００３】
例えば、マイコンでは、処理の同期をとるための同期信号を複数の周期で生成しているが、ＯＳを搭載したマイコンでは、１ｍｓｅｃの同期信号を生成するタスク、４ｍｓｅｃの同期信号を生成するタスク、８ｍｓｅｃの同期信号を生成するタスクといった具合に複数のタスクを生成して同期信号を生成する。このときタスクが参照するタイマはシステムタイマの１つである。
これに対して、ＯＳを搭載していないマイコンでは、マイコン内にハードウェアとして設けられた複数のタイマを使用して、各タイマからの割り込み信号により同期処理を生成する。
【０００４】
特許文献１には、複数のタスクのプログラム量に比例してＣＰＵ使用時間を設定することで、タスクのプログラム量が大きい場合であっても処理効率の低下がないスケジューリング方式が開示されている。
【０００５】
【特許文献１】特開平８−３２８８８１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ＯＳを搭載したマイコンでは、同期信号を生成するタスクが参照するタイマがシステムタイマの１つだけである。このシステムタイマに基づいて生成したパルスを、マイコンが制御装置内に設けたウォッチドックタイマに出力することで、マイコンの暴走（各タスクの周期異常）を検出することができる。
これに対し、ＯＳを搭載していないマイコンでは、複数のタイマを設けて、それぞれのタイマからの割り込み信号をマイコンに入力する。
図１には、タイマ１、タイマ２、タイマ３の３つのタイマを示す。タイマ１は、１ｍｓｅｃの間隔で割り込み信号をマイコンに出力し、タイマ２は、４ｍｓｅｃの間隔で割り込み信号をマイコンに出力し、タイマ３は、８ｍｓｅｃの間隔で割り込み信号をマイコンに出力している。
【０００７】
マイコンは、割り込み信号の入力タイミングに合わせて割り込み処理を開始する。このため、１つのタイマから出力される割り込み信号の周期の異常はマイコンを監視するウォッチドックタイマで検出することができても、他のタイマから出力される割り込み信号の周期の異常は検出することができない。図１には、タイマ２のカウント値に異常が生じた場合を例示する。なお、タイマのカウント値に異常が生じる原因は、タイマにカウントさせるカウント値を記録したレジスタのレジスタ化けが主な原因である。レジスタ化けとは、静電気や電圧変動によってレジスタの記憶している値が不定値になってしまうことを言う。
また、特許文献１の開示技術は、ＯＳを搭載したマイコンに関するものであり、ＯＳを搭載していないマイコンにおける上述の問題を解決するものではない。
【０００８】
本発明は上記事情に鑑みてなされたものであり、割り込み信号の周期が正常であるか否かの検証が容易な制御装置及び割り込み信号発生方法を提供することを目的とする
【課題を解決するための手段】
【０００９】
かかる目的を達成するために本発明の制御装置は、複数のタイマ回路を備え、該複数のタイマ回路から出力される割り込み信号により割り込み処理を実行する制御装置であって、基準となる割り込み信号を送出する一のタイマ回路と、前記一のタイマ回路から送出された前記基準となる割り込み信号に基づいて前記割り込み処理の処理タイミングを判定し、該処理タイミングとなると割り込み信号の送出命令を他のタイマ回路に出力する制御部と、前記割り込み信号の送出命令を受信して、前記制御部に前記割り込み信号を送出する前記他のタイマ回路とを有する構成を採用している。
本発明は、一つのタイマ回路から出力される割り込み信号を基準として、この基準となる割り込み信号をもとに割り込み処理の処理タイミングを計時する。このため、基準となる割り込み信号の周期が正常であるか否かだけを検証すれば、他のタイマ回路から出力される割り込み信号の周期が正常であるか否かを容易に判定することができる。
【００１０】
上記制御装置において、前記制御部は、前記一のタイマ回路から前記基準となる割り込み信号を受信すると、該基準となる割り込み信号を監視手段に出力し、該監視手段に前記基準となる割り込み信号の周期を監視させる構成を採用している。
従って、一のタイマ回路から出力される割り込み信号の周期が正常であることを保証し、他のタイマ回路に正常なタイミングで割り込み信号を出力させることができる。
【００１１】
上記制御装置において、前記制御部は、前記一のタイマ回路から前記割り込み信号を受信するごとにカウントアップする基本カウンタと、前記基本カウンタのカウント値をバックアップとして記憶するバックアップカウンタとを有する構成を採用している。
従って、基本カウンタにエラーが生じた際に、バックアップカウンタのカウント値で修復することができる。
【００１２】
上記制御装置において、前記バックアップカウンタを複数有し、前記制御部は、前記複数のバックアップカウンタのカウント値のうち、最も多くのバックアップカウンタでカウントされたカウント値を選択して前記基本カウンタのカウント値と比較し、該基本カウンタのカウント値のエラーを検出する構成を採用している。従って、基本カウンタのエラーを検出し、基本カウンタにエラーが生じた場合に正常値に復旧させることができる。
【００１３】
上記制御装置においては、前記一のタイマ回路と前記他のタイマ回路との少なくとも一方から割り込み信号を入力して、前記割り込み処理としてエンジンを制御する制御信号を生成する構成を採用している。
【００１４】
本発明の割り込み信号発生方法は、複数のタイマ回路のうち、基準となる割り込み信号を送出する一のタイマ回路から前記基準となる割り込み信号を受信するステップと、前記基準となる割り込み信号に基づいて前記割り込み処理の処理タイミングを判定し、該処理タイミングとなると割り込み信号の送出命令を他のタイマ回路に出力するステップと、前記他のタイマ回路から送出される前記割り込み信号を受信して、前記割り込み処理を開始するステップとを有している。
【発明の効果】
【００１５】
本発明によれば、割り込み信号の周期が正常であるか否かの検証が容易になる。
【発明を実施するための最良の形態】
【００１６】
添付図面を参照しながら本発明の好適な実施例を説明する。
【実施例１】
【００１７】
図２に、本発明の制御装置を燃料噴射量を制御する電子制御燃料噴射装置（以下、ＥＦＩ−ＥＣＵ（Electronic Fuel Injection-Electronic Control Unit）と表記する）１０に適用した実施例の構成を示す。
図２に示すようにＥＦＩ−ＥＣＵ１０は、マイクロコンピュータ（以下、マイコンと略記する）１４と、例えば、バッテリ（ＢＡＴ）２の温度、電流、エンジンの回転数、車速、トランスミッションの状態などを示す各種センサ信号の信号レベルを所望のレベルに変換してマイコン１４に出力する信号レベル変換器１１と、マイコン１０から出力されるウォッチドッククリア信号（以下、ＷＤＣ信号と略記する）を入力して、マイコン１０の暴走を監視するウォッチドックタイマ（以下、ＷＤＴと略記する）１２と、マイコン１４への電源供給を制御する電源回路１３と、例えば、エンジンの点火タイミングや、燃料噴射量を制御する信号、ＣＡＮ（Controller Area Network）用データをはじめとするマイコン１４の出力信号を外部に出力する出力回路１５とを有している。
【００１８】
ＷＤＴ１２は、ソフトウェア処理部２０から出力されるＷＤＣ信号の信号レベルと周期を監視して、第１タイマ回路５１が正常に基準時間を計時しているか否かを判定する。ソフトウェア処理部２０は、第１タイマ回路５１が基準時間を計時するごとに第１タイマ回路５１から出力される割り込み信号を入力する。そして、この割り込み信号の入力タイミングに合わせてＷＤＣ信号の信号レベルを変化させる。なお、第１タイマ回路５１の計時する基準時間については後述する。
【００１９】
電源回路１３とバッテリ２との間には、イグニッションキー（不図示）の操作により開閉されるイグニッションスイッチＩＧＳＷが設けられている。このイグニッションスイッチＩＧＳＷがオンされると、バッテリ２から供給される電圧が電源回路１３で所定の電圧に調整されてマイコン１４に供給され、マイコン１４が起動する。
【００２０】
マイコン１４は、ソフトウェア制御によって実現されるソフトウェア処理部２０と、所定周期ごとに割り込み信号をソフトウェア処理部２０に出力する第１タイマ回路５１、第２タイマ回路５３、第３タイマ回路５５と、第１タイマレジスタ５２と、第２タイマレジスタ５４と、第３タイマレジスタ５６とを有している。
第１タイマレジスタ５２には、第１タイマ回路５１がカウントするインターバル時間がソフトウェア処理部２０によって設定される。第１タイマ回路５１は、第１タイマレジスタ５２に設定されたインターバル時間をカウントすると、ソフトウェア処理部２０に対して割り込み信号を出力する。同様に第２タイマ回路５３、第３タイマ回路５５は第２タイマレジスタ５４、第３タイマレジスタ５６に設定されたインターバル時間をカウントすると、ソフトウェア処理部２０に対して割り込み信号を出力する。
なお、第１タイマレジスタ５２に設定されるインターバル時間は、例えば１［ｍｓｅｃ］等の基準時間に設定されている。ソフトウェア処理部２０は、１［ｍｓｅｃ］の基準時間ごとに第１タイマ回路５１から割り込み信号を入力する。従って、ソフトウェア処理部２０では、基準時間を計時することができる。
【００２１】
ソフトウェア処理部２０は、図３に示すハードウェアによって実現される。ＥＣＵによる制御処理を実現するためのプログラムや、後述するメモリの書込み制御のためのプログラムなどが格納されたＲＯＭ３２と、ＲＯＭ３２に格納されたプログラムを読み込んで実行する中央処理装置（ＣＰＵ）３１と、プログラムを実行する際に使用される一時的なデータを保存するＲＡＭ３３と、データの入出力部３４などから構成される。
【００２２】
イグニッションスイッチＩＧＳＷがオンされると、マイコン１４が起動してＲＯＭ３２に格納されたプログラムがＣＰＵ３１により実行される。このプログラムによって、信号レベル変換器１１からの信号等に基づいて所定の制御処理が行われる。また、この制御処理中に様々な制御データが学習され、これらの学習によって得られた制御データは、スタンバイＲＡＭ（不図示）に保存され、その後の制御処理に利用される。
また、ＲＯＭ３２に格納されたプログラムのＣＰＵ３１による演算によって、図４に示すカウント値判定手段２１、インターバル時間設定・タイマスタート手段２２、割り込み処理手段２３、カウンタインクリメント手段２４、ＷＤＣ信号出力手段２５が構成される。これらの手段について図４を参照しながら説明する。
【００２３】
カウント値判定手段２１は、カウンタインクリメント手段２４でインクリメントされる内部カウンタ（基本カウンタ）３３１のカウント値を読み込み、このカウント値が所定値になっているか否かを判定する。判定の結果、内部カウンタ３３１のカウント値が所定値となっている場合には、インターバル時間設定・タイマスタート手段２２にインターバル時間の設定と、タイマ回路にカウント開始を要求する。
例えば、第２タイマ回路５３から割り込み信号を入力する周期を４［ｍｓｅｃ］とする場合について説明する。この場合、カウント値判定手段２１は、内部カウンタのカウント値が４の倍数になっていると、第２タイマレジスタ５４にインターバル時間の設定を要求する。インターバル時間設定・タイマスタート手段２２は、カウント値判定手段２１の要求に従って、第２タイマレジスタ５４にインターバル時間を設定する。このときインターバル時間設定・タイマスタート手段２２は、インターバル時間を第２タイマ回路５３が計時可能な最短時間で設定する。そして、第２タイマ回路５３のカウントをスタートさせる。
インターバル時間を最短時間で設定された第２タイマ回路５３は、カウント開始と同時にソフトウェア処理部２０の割り込み処理手段２３に割り込み信号を出力する。ソフトウェア処理部２０は、割り込み処理手段２３に割り込み信号を入力することで、予め設定された割り込み処理を開始する。
【００２４】
同様に、例えば、第３タイマ回路５５から割り込み信号を入力する周期を８［ｍｓｅｃ］とする場合について説明する。この場合、カウント値判定手段２１は、内部カウンタの値が８の倍数になっていた場合に、第３タイマレジスタ５６にインターバル時間の設定を要求する。インターバル時間設定・タイマスタート手段２２は、カウント値判定手段２１の要求に従って、第３タイマレジスタ５６にインターバル時間を設定する。このときインターバル時間設定・タイマスタート手段２２は、インターバル時間を第３タイマ回路５５が計時可能な最短時間で設定する。そして、第３タイマ回路５５のカウントをスタートさせる。
第３タイマ回路５５は、カウント開始と同時にソフトウェア処理部２０の割り込み処理手段２３に割り込み信号を出力する。ソフトウェア処理部２０は、割り込み処理手段２３に割り込み信号を入力することで、予め設定された割り込み処理を開始する。
【００２５】
割り込み処理手段２３は、第１タイマ回路５１、第２タイマ回路５３、第３タイマ回路５５から出力される割り込み信号を入力して、例えば、エンジンを制御するための割り込み処理を開始させる。
また、割り込み処理手段２３は、第１タイマ回路５１から割り込み信号を入力した場合に、カウンタインクリメント手段２４に内部カウンタ（３３１）のインクリメントを要求する。
さらに割り込み処理手段２３は、第１タイマ回路５１から割り込み信号を入力した場合に、ＷＤＴ１２に出力するＷＤＣ信号の信号レベルを切り替えるようにＷＤＣ信号出力手段２５に要求する。
【００２６】
第１タイマ回路５１の第１タイマレジスタ５２には、例えば、１［ｍｓｅｃ］等のソフトウェア処理部２０が時間の計時に使用する基準時間を記録している。この基準時間を計時するごとに第１タイマ回路５１は、ソフトウェア処理部２０に割り込み信号を出力する。なお、割り込み処理手段２３は、第１タイマ回路５１から割り込み信号を入力するごとに、ＷＤＣ信号出力手段２５に、ＷＤＣ信号の信号レベルを変化させる。
ＷＤＴ１２は、ＷＤＣ信号の信号レベルの変化により、第１タイマ回路５１が基準信号を正確に計測しているか否かを判定する。ＷＤＴ１２は、ＷＤＣ信号が異常であると判定すると、リセット信号を出力してマイコン１４をリセットする。
【００２７】
図５に示すフローチャートを参照しながらソフトウェア処理部２０の処理手順を説明する。なお、このフローでは、第１タイマ回路５１の計時するインターバル時間を１［ｍｓｅｃ］として説明する。また、第２タイマ回路５３は、４ｍｅｓｃごとに割り込み信号をソフトウェア処理部２０に出力し、第３タイマ回路５５は、８［ｍｓｅｃ］ごとに割り込み信号をソフトウェア処理部２０に出力するものとする。但し、第１タイマ回路５１の計時するインターバル時間は１［ｍｓｅｃ］に限定されるものではない。同様に、第２タイマ回路５３が割り込み信号を出力するタイミングは、４ｍｅｓｃに限定されるものではなく、第３タイマ回路５５が割り込み信号を出力するタイミングも８ｍｓｅｃに限定されるものではない。
ソフトウェア処理部２０は、まず第１タイマ回路５１から割り込み信号を入力することで、基準時間である１［ｍｓｅｃ］を計時する。基準時間を計時するとソフトウェア処理部２０は、内部カウンタ３３１のカウント値を１インクリメントする（ステップＳ１）。次に、ソフトウェア処理部２０は、ＷＤＣ信号の信号レベルを変化させる。ＷＤＴ１２に出力するＷＤＣ信号の信号レベルを変更することで、第１タイマ回路５１が正常に基準時間（１［ｍｓｅｃ］）を計時しているか否かをＷＤＴ１２に判定させる。
【００２８】
次に、ソフトウェア処理部２０は内部カウンタ３３１のカウント値が４の倍数となったか否かを判定する（ステップＳ３）。内部カウンタ３３１のカウント値が４の倍数になると（ステップＳ３／ＹＥＳ）、ソフトウェア処理部２０は、第２タイマ回路５３のインターバル時間を計時可能な最短時間に設定して（ステップＳ４）、第２タイマ回路５３をスタートさせる（ステップＳ５）。第２タイマ回路５３は、インターバル時間を最短時間に設定されているので、計時開始と同時に割り込み信号をソフトウェア処理部２０に出力する。第２タイマ回路５３から割り込み信号を入力したソフトウェア処理部２０は、割り込み信号の入力を開始タイミングとしてエジンン制御のための処理を開始する。
【００２９】
次に、ソフトウェア処理部２０は内部カウンタ３３１のカウント値が８の倍数となったか否かを判定する（ステップＳ６）。内部カウンタ３３１のカウント値が８の倍数になると（ステップＳ６／ＹＥＳ）、ソフトウェア処理部２０は、第３タイマ回路５５のインターバル時間を計時可能な最短時間に設定して（ステップＳ７）、第３タイマ回路５５をスタートさせる（ステップＳ７）。第３タイマ回路５５は、インターバル時間を最短時間に設定されているので、計時開始と同時に割り込み信号をソフトウェア処理部２０に出力する。第３タイマ回路５５から割り込み信号を入力したソフトウェア処理部２０は、割り込み信号の入力を開始タイミングとしてエジンン制御のための処理を開始する。
【００３０】
次に、ソフトウェア処理部２０は、イングニッションキーがオフされたか否かを判定する（ステップＳ９）。イグニッションキーがオフされていない場合には（ステップＳ９／ＮＯ）、ソフトウェア処理部２０は、ステップＳ１に帰ってＳ１からの処理を繰り返す。また、イグニッションキーがオフされた場合には（ステップＳ９／ＹＥＳ）、ソフトウェア処理部２０は、この処理を終了する。
【００３１】
このように本実施例は、第１タイマ回路５１から出力される基準となる割り込み信号の周期が正常であるか否かを検証すれば、他のタイマ回路から出力される割り込み信号の周期が正常であるか否かを容易に判定することができる。
また、動作を保証された第１タイマ回路５１の計時する基準時間に基づいてソフトウェア処理部２０が所定周期を計時し、所定周期ごとに第２タイマ回路５３、第３タイマ回路５５に割り込み信号を出力させる。
従って、第２タイマ回路５３、第３タイマ回路５５の出力する割り込み信号の周期に異常が発生する割合を低減することができる。
【実施例２】
【００３２】
添付図面を参照しながら本発明の第２実施例について説明する。
第２実施例のＥＦＩ−ＥＣＵ１０について、図６を参照しながら説明する。第２実施例のソフトウェア処理部２０は、図６に示すように比較手段２６と、内部カウンタ復旧手段２７とを新たに備える。また、ＲＡＭ３３には、内部カウンタ（本発明の基本カウンタに該当する）３３１以外に、第１バックアップカウンタ（本発明のバックアップカウンタに該当する）３３２、第２バックアップカウンタ（本発明のバックアップカウンタに該当する）３３３、第３バックアップカウンタ（本発明のバックアップカウンタに該当する）３３４の領域が形成されている。
第１バックアップカウンタ３３２〜第３バックアップカウンタ３３４は、バックアップ用に用意された領域である。比較手段２６は、内部カウンタ３３１のカウント値にエラーが生じているか否かを、内部カウンタ３３１のカウント値と、第１バックアップカウンタ３３２〜第３バックアップカウンタ３３４のカウント値とを比較することで検出する。比較方法には、例えば、内部カウンタ３３１のカウント値と、第１バックアップカウンタ３３２〜第３バックアップカウンタ３３４のカウント値とがすべて一致しているか否かを判定してもよい。また、第１バックアップカウンタ３３２〜第３バックアップカウンタ３３４のカウント値のうち、同じ値が最も多く記憶されたカウント値を多数決で決定したカウント値とし、このカウント値と内部カウンタ３３１のカウント値とを比較してもよい。
【００３３】
図７には、第１バックアップカウンタ３３２〜第３バックアップカウンタ３３４の値と、内部カウンタのカウント値とが同じであった場合を示す。この場合、ソフトウェア処理部２０は、内部カウンタのカウント値に異常が発生していないと判定して、内部カウンタ３３１のカウント値を用いて第２タイマ回路５３、第３タイマ回路５５の起動タイミングをカウントする。
また、図８には、第１バックアップカウンタ３３２〜第３バックアップカウンタ３３４の値と、内部カウンタのカウント値とが異なる場合を示す。比較手段２６は、比較の結果、内部カウンタ３３１のカウント値にエラーが発生していると判定すると、内部カウンタ復旧手段２７に内部カウンタ３３１の復旧を要求する。内部カウンタ復旧手段２７は、第１バックアップカウンタ３３２〜第３バックアップカウンタ３３４のカウント値のうち、多数決で決定されたカウント値を内部カウンタ３３１のカウント値として書き込む。
【００３４】
次に、図９に示すフローチャートを参照しながら本実施例の処理手順を説明する。
なお、ソフトウェア処理部２０が第１タイマ回路５１からの割り込み信号により、内部カウンタ３３１のカウント値をインクリメントし、ＷＤＣ信号の信号レベルを変更するまでの手順は、実施例１と同一であるので説明を省略する。
【００３５】
ソフトウェア処理部２０は、ＷＤＣ信号の信号レベルを変化させると、第１バックアップカウンタ３３２〜第３バックアップカウンタ３３４のカウント値を読み出す。そして、読み出したカウント値のうち同一の値の数が最も多いカウント値を多数決により決定する（ステップＳ１４）。次に、ソフトウェア処理部２０は、多数決により決定したバックアップカウンタのカウント値に［＋１］して内部カウンタのカウント値と比較する。バックアップカウンタのカウント値＋１と、内部カウンタのカウント値とが一致している場合には（ステップＳ１４／ＮＯ）、ソフトウェア処理部２０は、内部カウンタのカウント値にエラーが発生していないと判定する。この場合、このまま内部カウンタ３３１のカウント値を用いて以降の処理を行う。また、バックアップカウンタのカウント値＋１と、内部カウンタのカウント値とが一致していない場合には（ステップＳ１４／ＮＯ）、多数決により決定したバックアップカウンタのカウント値に［＋１］した値を正常値として、内部カウンタ３３１に書き込む（ステップＳ１５）。
【００３６】
この後、ソフトウェア処理部２０は上述した実施例１と同様に内部カウンタのカウント値が４倍数、８の倍数となっているか否かを判定して（ステップＳ１６、又はステップＳ１９）、カウント値が４倍数になっている場合には（ステップＳ１６／ＹＥＳ）、第２タイマ回路５３のインターバル時間を最短時間に設定し、第２タイマ回路５３に割り込み信号を発生させる（ステップＳ１８）。また、内部カウンタのカウント値が８の倍数になっている場合には（ステップＳ１９／ＹＥＳ）、第３タイマ回路５５のインターバル時間を最短時間に設定し（ステップＳ２０）、第３タイマ回路５５に割り込み信号を発生させる（ステップＳ２１）。
【００３７】
このように本実施例は、内部カウンタのカウント値のエラーを検出することができる。また、検出したエラーを、バックアップカウンタに記憶したバックアップ値で簡単に復旧させることができる。
【００３８】
上述した実施例は本発明の好適な実施の例である。但し、これに限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変形実施可能である。例えば、上述した実施例では、電子制御燃料噴射装置を例に説明しているが、車両の機器を制御する電子制御装置であれば、本発明を適用可能である。また、車両に搭載される電子制御装置以外であっても本発明を十分に適用可能である。
【図面の簡単な説明】
【００３９】
【図１】タイマ２の計時時間に異常が発生した場合を示す図である。
【図２】実施例１のＥＦＩ−ＥＣＵの構成を示す図である。
【図３】マイコンのハードウェア構成を示す図である。
【図４】第１実施例のソフトウェア処理部の構成を示すブロック図である。
【図５】第１実施例のソフトウェア処理部の処理手順を示すフローチャートである。
【図６】第２実施例のソフトウェア処理部の構成を示す図である。
【図７】内部カウンタのカウント値に異常が発生していない場合の処理概要を示す図である。
【図８】内部カウンタのカウント値に異常が発生している場合の処理概要を示す図である。
【図９】第２実施例のソフトウェア処理部の処理手順を示すフローチャートである。
【符号の説明】
【００４０】
２  バッテリ
１０  ＥＦＩ−ＥＣＵ
１１  信号レベル変換器
１２  ＷＤＴ
１３  電源回路
１４  マイコン（制御手段）
１５  出力回路
２０  ソフトウェア処理部
２１  カウント値判定手段
２２  インターバル時間設定・タイマスタート手段
２３  割り込み処理手段２３
２４  カウンタインクリメント手段
２５  ＷＤＣ信号出力手段
５１  第１タイマ回路（一のタイマ回路）
５２  第１タイマレジスタ
５３  第２タイマ回路（他のタイマ回路）
５４  第２タイマレジスタ
５５  第３タイマ回路（第２タイマ回路）
５６  第３タイマレジスタ
【図１】
2009251700.tif 000003
【図２】
2009251700.tif 000004
【図３】
2009251700.tif 000005
【図４】
2009251700.tif 000006
【図５】
2009251700.tif 000007
【図６】
2009251700.tif 000008
【図７】
2009251700.tif 000009
【図８】
2009251700.tif 000010
【図９】
2009251700.tif 000011