(57)【特許請求の範囲】
【請求項１】
車両の運転状態を示す入力信号に基づき車載アクチュエータを駆動制御する制御機能と、同一入力信号をもとにこの制御機能が適正に機能しているか否かを監視する監視機能とを有するマイクロコンピュータに対し、前記監視機能が適正に機能しているか否かを専用のディジタル回路を通じてさらに監視するモニタモジュールが通信可能に接続されてなる電子制御装置であって、
前記マイクロコンピュータは、前記監視機能として、前記制御機能を実現すべく当該マイクロコンピュータが内蔵する読み出し専用のプログラムメモリの制御量を演算するための領域に格納されている値の演算結果とこの演算結果に対応して予め登録されている期待値とを一致比較することで前記制御機能の監視を行うとともに、これら一致比較した演算結果と期待値とを前記モニタモジュールに送信し、前記モニタモジュールは、該送信される演算結果と期待値との一致比較に基づいて前記監視機能が適正に機能しているか否かを監視する
ことを特徴とする電子制御装置。
【請求項２】
前記マイクロコンピュータは、前記監視機能としてさらに、当該マイクロコンピュータが内蔵するデータＲＡＭ及びミラーＲＡＭにそれぞれ格納された前記制御機能による演算値をそれぞれ演算結果及び期待値として一致比較することで前記制御機能の監視を行うとともに、これら一致比較した演算結果と期待値とを前記モニタモジュールに送信し、前記モニタモジュールは、該送信される演算結果とその期待値との一致比較に基づいて前記監視機能が適正に機能しているか否かを監視する
請求項１に記載の電子制御装置。
【請求項３】
前記マイクロコンピュータは、前記監視機能としてさらに、検査用に予め登録されている固定値からなる入力信号を前記制御機能を通じて演算した演算結果とこの演算結果に対応して予め登録されている期待値とを一致比較することで前記制御機能の監視を行うとともに、これら一致比較した演算結果と期待値とを前記モニタモジュールに送信し、前記モニタモジュールは、該送信される演算結果とその期待値との一致比較に基づいて前記監視機能が適正に機能しているか否かを監視する
請求項１または２に記載の電子制御装置。
【請求項４】
前記マイクロコンピュータは、前記監視機能としてさらに、当該マイクロコンピュータが内蔵するプログラムメモリに格納されている関数を前記制御機能が規定された順序で読み出すことによって順次演算される演算結果とこの演算結果に対応して予め登録されている期待値とを一致比較することで前記制御機能の監視を行うとともに、これら一致比較した演算結果と期待値とを前記モニタモジュールに送信し、前記モニタモジュールは、該送信される演算結果とその期待値との一致比較に基づいて前記監視機能が適正に機能しているか否かを監視する
請求項１〜３のいずれか一項に記載の電子制御装置。
【請求項５】
前記マイクロコンピュータは、前記監視機能としてさらに、当該マイクロコンピュータが内蔵するプログラムメモリに格納されているマップに基づき前記制御機能が前記入力信号に応じて前記車載アクチュエータの制御値を演算した演算結果と、この制御値の上限値である期待値とを大小比較することで前記制御機能の監視を行うとともに、これら大小比較した演算結果と期待値とを前記モニタモジュールに送信し、前記モニタモジュールは、該送信される演算結果とその期待値との大小比較に基づいて前記監視機能が適正に機能しているか否かを監視する
請求項１〜４のいずれか一項に記載の電子制御装置。
【請求項６】
前記モニタモジュールは、前記送信された前記演算結果とその期待値との比較の結果、前記演算結果が期待される結果となっていない期間が所定の判定期間を超えることに基づいて前記監視機能が適正に機能していない旨を判定する
請求項１〜５のいずれか一項に記載の電子制御装置。
【請求項７】
前記モニタモジュールは、前記ディジタル回路の動作基準となるクロックに基づきカウントアップされるとともに、前記送信された前記演算結果とその期待値との比較の結果、前記演算結果が期待される結果となっていることに基づいてクリアされるデータ異常カウンタを備え、該データ異常カウンタによるカウンタ値が所定の判定値を超えることに基づいて前記演算結果が期待される結果となっていない期間が所定の判定期間を超えた旨を判断する
請求項６に記載の電子制御装置。
【請求項８】
前記モニタモジュールは、前記演算結果とその期待値とが受信されない期間が所定の判定期間を超えることに基づいて前記マイクロコンピュータとの通信機能が適正に機能していない旨を判定する
請求項１〜７のいずれか一項に記載の電子制御装置。
【請求項９】
前記モニタモジュールは、前記ディジタル回路の動作基準となるクロックに基づきカウントアップされるとともに前記演算結果とその期待値とが受信されることに基づいてクリアされる通信異常カウンタを備え、該通信異常カウンタによるカウンタ値が所定の判定値を超えることに基づいて前記マイクロコンピュータとの通信機能が適正に機能していない旨を判定する
請求項８に記載の電子制御装置。
【請求項１０】
前記モニタモジュールは、前記ディジタル回路の動作基準となるクロックに基づきカウントアップされる基準カウンタをさらに備え、前記マイクロコンピュータは、この基準カウンタによるカウンタ値を取り込んで前記モニタモジュールが適正に機能しているか否かを監視するモジュール監視部をさらに備える
請求項７または９に記載の電子制御装置。
【請求項１１】
前記モジュール監視部は、前記基準カウンタによるカウンタ値を定期的に取り込み、該取り込んだカウンタ値の変化しない期間が所定の判定期間を超えることに基づいて前記モニタモジュールが適正に機能していない旨を判定する
請求項１０に記載の電子制御装置。
【請求項１２】
前記監視機能は、前記制御機能としての機能を実行する上でその適正な実行を保証するいくつかの特定の要素を監視対象としてその監視を行うとともに、前記マイクロコンピュータは、それら監視対象の別に識別子を付与して前記演算結果とその期待値とを前記モニタモジュールに送信するものであり、前記モニタモジュールは、前記監視対象にそれぞれ対応した複数のディジタル回路ブロックを一体に有し、前記送信される演算結果とその期待値とを前記識別子に基づき分類して各対応するディジタル回路ブロックに与えつつ、それら各ディジタル回路ブロックにて各別に前記演算結果とその期待値との比較に基づく監視を行う
請求項１〜１１のいずれか一項に記載の電子制御装置。
【請求項１３】
前記モニタモジュールは、前記複数のディジタル回路ブロックとして、前記演算結果とその期待値の一致比較を行う第１のブロックと、前記演算結果とその期待値との大小比較を行う第２のブロックとを有してなる
請求項１２に記載の電子制御装置。
【請求項１４】
前記監視機能は、前記制御機能としての機能を実行する上でその適正な実行を保証するいくつかの特定の要素を監視対象としてその監視を行うとともに、前記マイクロコンピュータは、それら監視対象の比較態様の別に識別子を付与して前記演算結果とその期待値とを前記モニタモジュールに送信するものであり、前記モニタモジュールは、前記演算結果とその期待値との一致比較を行う第１のブロックと、前記演算結果とその期待値との大小比較を行う第２のブロックとを有し、前記監視対象のうち、前記比較態様の共通する監視対象の演算結果とその期待値については、前記識別子に基づきそれらブロックの一方を共用して該当する演算結果とその期待値との比較に基づく監視を行う
請求項１〜１１のいずれか一項に記載の電子制御装置。
【請求項１５】
前記マイクロコンピュータは、前記比較態様が一致比較として共通する監視対象についてはそれら各監視対象の演算結果の合算値と該合算値として本来得られるべき値である期待値とを前記モニタモジュールに送信し、前記モニタモジュールは、これら送信される合算値とその期待値とを前記第１のブロックを通じて一致比較することにより前記比較態様が一致比較として共通する監視対象の適否を一括して監視する
請求項１４に記載の電子制御装置。
【請求項１６】
前記監視機能の監視対象となる前記制御機能としての機能を実行する上でその適正な実行を保証するいくつかの特定の要素が、前記マイクロコンピュータが内蔵する読み出し専用のプログラムメモリに格納されている前記制御機能によって実行される制御プログラムの適正性、及び前記マイクロコンピュータが内蔵するデータＲＡＭに前記制御機能による演算結果として格納されているデータの適正性、及び固定値として予め登録されているシミュレーション用データの前記制御機能による演算値の適正性、及び前記制御機能によって読み出し要求される関数の順序の適正性、及び前記車両の運転状態を示す入力信号に基づき前記制御機能によって演算された演算値の適正性の少なくとも２つの要素である
請求項１２〜１５のいずれか一項に記載の電子制御装置。
【請求項１７】
前記監視機能は、前記制御機能としての機能を実行する上でその適正な実行を保証するいくつかの特定の要素を監視対象としてその監視を行うとともに、前記マイクロコンピュー
タは、それら監視対象の演算周期の別に識別子を付与して前記演算結果とその期待値とを前記モニタモジュールに送信するものであり、前記モニタモジュールは、前記監視対象のうちの演算周期の相対的に短い監視対象について前記演算結果とその期待値との一致比較を行う高速用ブロックと、同監視対象のうちの演算周期の相対的に長い監視対象について前記演算結果とその期待値との一致比較を行う低速用ブロックとを有し、前記監視対象のうち、前記演算周期の近似する監視対象の演算結果とその期待値については、前記識別子に基づきそれらブロックの一方を共用して該当する演算結果とその期待値との比較に基づく監視を行う
請求項１〜１１または１４〜１５のいずれか一項に記載の電子制御装置。
【請求項１８】
前記マイクロコンピュータは、前記演算周期の相対的に短い監視対象として共通する監視対象についてはそれら各監視対象の演算結果の合算値と該合算値として本来得られるべき値である期待値とを前記モニタモジュールに送信し、前記モニタモジュールは、これら送信される合算値とその期待値とを前記高速用ブロックを通じて一致比較することにより前記演算周期の相対的に短い監視対象として共通する監視対象の適否を一括して監視する
請求項１７に記載の電子制御装置。
【請求項１９】
前記監視機能の監視対象となる前記制御機能としての機能を実行する上でその適正な実行を保証するいくつかの特定の要素が、前記マイクロコンピュータが内蔵するデータＲＡＭに前記制御機能による演算結果として格納されているデータの適正性、及び固定値として予め登録されているシミュレーション用データの前記制御機能による演算値の適正性、及び前記制御機能によって読み出し要求される関数の順序の適正性、及び前記車両の運転状態を示す入力信号に基づき前記制御機能によって演算された演算値の適正性の少なくとも１つの要素と、前記マイクロコンピュータが内蔵する読み出し専用のプログラムメモリに格納されている前記制御機能によって実行される制御プログラムの適正性である
請求項１７または１８に記載の電子制御装置。
【請求項２０】
前記マイクロコンピュータは、前記監視機能を通じて前記演算結果のみを前記モニタモジュールに送信するものであり、前記モニタモジュールは、前記期待値を予め保持し、前記送信される演算結果とこの期待値との比較に基づいて前記監視機能が適正に機能しているか否かを監視する
請求項１〜１９のいずれか一項に記載の電子制御装置。
【請求項２１】
前記マイクロコンピュータは、前記演算結果が前記モニタモジュールに予め保持されている期待値に見合う値となるように前記監視対象となる内容に応じた演算結果を操作し、この操作した値を前記演算結果として前記モニタモジュールに送信する
請求項２０に記載の電子制御装置。
【請求項２２】
請求項１〜２１のいずれか一項に記載の電子制御装置において、
前記車載アクチュエータがスロットルバルブの開度を調量するモータであり、当該電子制御装置は、該モータを駆動する駆動回路と、前記マイクロコンピュータの監視機能及び前記モニタモジュールの少なくとも一方を通じてその監視対象となる機能が適正に機能していない旨が判定されることに基づき前記駆動回路に対する給電を停止する手段とをさらに備える
ことを特徴とする電子制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、例えばスロットルバルブを開閉駆動するアクチュエータなど、車載アクチュエータの駆動制御を電子的に行う電子制御装置に関し、特にマイクロコンピュータから車載アクチュエータの駆動回路に対して発せられる駆動指令を自己監視しつつ、該監視機能をさらにモニタモジュールを通じて監視する機能を有する電子制御装置に関する。
【背景技術】
【０００２】
従来、この種の電子制御装置としては、例えば特許文献１に見られるような制御装置が知られている。図２２に、この特許文献１に記載されている電子制御装置も含めて、この種の電子制御装置として従来一般に採用されている電子制御装置の構成をブロック図として示す。
【０００３】
この電子制御装置は、例えばスロットルバルブを開閉駆動するアクチュエータ（モータ）の駆動制御を行うものであり、同図２２に示されるように、大きくは、マイクロコンピュータ１０やモニタモジュール２０、駆動回路３０等を備えて構成されている。
【０００４】
ここで、上記マイクロコンピュータ１０は、上記モータの駆動制御を行うための各種演算処理を行う部分であり、機能的には図２２に模式的に示す態様のブロック構成を有している。すなわち、この電子制御装置にあって、上記モータの駆動制御に際しては、同マイクロコンピュータ１０として制御部１２を構成する部分がまず、該制御部１２と外部のセンサや装置との間での情報の授受を仲介する入力部１１を通じて、例えばアクセルペダル操作量などの情報を示す外部信号を取り込む。そして、こうした外部信号に基づいて上記スロットルバルブ（モータ）に対する制御量（駆動量）を演算し、その演算結果（駆動指令）を上記駆動回路３０に出力する。
【０００５】
また、同マイクロコンピュータ１０において、上記外部信号は、上記制御部１２による駆動指令を監視してその妥当性を判断する部分を構成する自己監視部１３にも取り込まれる。この自己監視部１３では、上記外部信号に対して上記制御部１２による上述の演算処理に準じたかたちでの演算処理が行われる。その後、こうした演算処理の結果と例えば上記制御部１２から取り込まれる駆動指令とが比較され、その比較の結果が、上記制御部１２による駆動指令の妥当性を示す情報（信号）として上記駆動回路３０に出力される。
【０００６】
また、同マイクロコンピュータ１０は、上記自己監視部１３の異常の有無を監視するための監視プログラムを上記モニタモジュール２０との協働のもとに実行する部分を構成するプログラム実行部１４を備えている。このプログラム実行部１４は、マイクロコンピュータ１０内の第１の通信部１５を通じて上記モニタモジュール２０から取り込まれる上記監視プログラムの実行を指示するテスト信号に基づき、上記監視プログラムの実行を開始する。ちなみに、該監視プログラムの実行に際しては、同プログラム実行部１４がまず、上記監視プログラムにより指示される所定のデータを上記自己監視部１３に出力してこれを演算させる。その後、該自己監視部１３による演算結果を取り込み、該演算結果を上記通信部１５を通じて上記モニタモジュール２０に出力する。なお、このマイクロコンピュータ１０において、上記通信部１５は、以下に説明するモニタモジュール２０の通信部２２との間でシリアル通信による情報の授受を行う部分である。
【０００７】
一方、上記モニタモジュール２０は、上記プログラム実行部１４から上記通信部１５及び通信部２２を介して取り込まれる情報をもとに上記自己監視部１３の異常の有無を監視するハードウェア（専用ＩＣ）もしくはバックアップコンピュータである。
【０００８】
すなわち、このモニタモジュール２０にあって、上記自己監視部１３の監視に際しては、該モニタモジュール２０を構成する異常判定回路２１がまず、上記通信部２２を通じて、上記マイクロコンピュータ１０（プログラム実行部１４）から出力される上記所定のデータの演算結果を取り込む。そして、この演算結果と自らが有する期待値とを比較し、その比較の結果を、上記自己監視部１３の監視結果として上記駆動回路３０に出力する。なお、このモニタモジュール２０において、上記異常判定回路２１は、上記プログラム実行部１４に対する上記テスト信号を例えば所定期間毎に上記マイクロコンピュータ１０に出力する部分でもある。
【０００９】
また一方、上記駆動回路３０は、上記モータを通じて上記スロットルバルブの開閉駆動を行う部分である。
上述の通り、この駆動回路３０には上記制御部１２及び自己監視部１３及び異常判定回路２１からの信号が取り込まれるものの、同駆動回路３０は基本的に、これら信号のうち、上記制御部１２による駆動指令に基づいて上記スロットルバルブの開閉駆動を行う。ただし、上記自己監視部１３から出力される信号が例えば上記制御部１２による駆動指令と上記自己監視部１３による演算結果との不一致を示している場合や上記異常判定回路２１から出力される信号が上記所定のデータの演算結果及びその期待値の不一致を示している場合などには、同駆動回路３０に取り込まれる上記駆動指令としての信頼性が低い。したがってこの場合、同駆動回路３０は、車両の安全性を確保すべく、上記制御部１２による駆動指令を無効として、上記スロットルバルブに対するフェールセーフ処理を行うようにしている。
【特許文献１】特表平１１−５０５５８７号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
このように、上記従来の電子制御装置では、上記駆動回路３０に取り込まれる駆動指令の自己監視はもとより、該自己監視機能の正常／異常をモニタモジュールを通じて監視するようにしているため、このような監視を実施しない装置に比べて上記スロットルバルブの駆動制御等にかかる信頼性は確かに向上する。
【００１１】
ただし、この電子制御装置では上述のように、モニタモジュール２０からのテスト信号に基づき上記自己監視部１３の異常の有無を監視するに際し、同自己監視部１３による上記制御部１２の監視、すなわち上記駆動指令の監視がプログラム実行部１４によって一時的に中断されるかたちとなる。このため、このモニタモジュール２０による監視期間に上記制御部１２から駆動回路３０に付与されている駆動指令についてはその妥当性を判断することができず、上記信頼性の面で改善の余地を残すものとなっている。また、上記自己監視部１３による監視機能を重視して、上記判定回路２１によるテスト信号の出力頻度を低く抑えることも考えられるが、これでは上記モニタモジュール２０による同自己監視部１３の監視が十分に実施されず、逆に上記スロットルバルブの駆動制御等にかかる信頼性の低下が避けられない。
【００１２】
本発明は、こうした実情に鑑みてなされたものであり、その目的は、モニタモジュールを通じてマイクロコンピュータの自己監視機能をさらに監視する場合であれ、それら監視状態を適正に維持して、車載アクチュエータの駆動制御にかかる信頼性のさらなる向上を図ることのできる電子制御装置を提供することにある。
【課題を解決するための手段】
【００１３】
こうした目的を達成するため、請求項１に記載の電子制御装置では、車両の運転状態を示す入力信号に基づき車載アクチュエータを駆動制御する制御機能と、同一入力信号をもとにこの制御機能が適正に機能しているか否かを監視する監視機能とを有するマイクロコンピュータに対し、前記監視機能が適正に機能しているか否かを専用のディジタル回路を通じてさらに監視するモニタモジュールが通信可能に接続されてなる電子制御装置にあって、前記監視機能は、前記マイクロコンピュータが内蔵する読み出し専用のプログラムメモリに格納されているデータを前記制御機能が演算した演算結果と、本来得られるべきその演算結果として予め登録されている期待値とを一致比較することで、前記プログラムメモリに格納されているこの制御機能によって実行される制御プログラムおよび前記データの少なくとも一方を監視対象の１つとして前記制御機能の適正性の監視を行うとともに、前記マイクロコンピュータは、その一致比較が行われる前記演算結果およびその期待値を前記モニタモジュールに送信し、前記モニタモジュールは、該送信される演算結果とその期待値との一致比較に基づいて前記監視機能が適正に機能しているか否かを監視することとした（ＲＯＭチェック）。そして、請求項１に記載の電子制御装置において、請求項２に記載の電子制御装置では、前記マイクロコンピュータは、前記監視機能としてさらに、当該マイクロコンピュータが内蔵するデータＲＡＭ及びミラーＲＡＭにそれぞれ格納された前記制御機能による演算値をそれぞれ演算結果及び期待値として一致比較することで前記制御機能の監視を行うとともに、これら一致比較した演算結果と期待値とを前記モニタモジュールに送信し、前記モニタモジュールは、該送信される演算結果とその期待値との一致比較に基づいて前記監視機能が適正に機能しているか否かを監視することとした（ＲＡＭチェック）。また、請求項１または２に記載の電子制御装置において、請求項３に記載の電子制御装置では、前記マイクロコンピュータは、前記監視機能としてさらに、検査用に予め登録されている固定値からなる入力信号を前記制御機能を通じて演算した演算結果とこの演算結果に対応して予め登録されている期待値とを一致比較することで前記制御機能の監視を行うとともに、これら一致比較した演算結果と期待値とを前記モニタモジュールに送信し、前記モニタモジュールは、該送信される演算結果とその期待値との一致比較に基づいて前記監視機能が適正に機能しているか否かを監視することとした（インストラクション検査）。さらに、請求項１〜３のいずれか一項に記載の電子制御装置において、請求項４に記載の電子制御装置では、前記マイクロコンピュータは、前記監視機能としてさらに、当該マイクロコンピュータが内蔵するプログラムメモリに格納されている関数を前記制御機能が規定された順序で読み出すことによって順次演算される演算結果とこの演算結果に対応して予め登録されている期待値とを一致比較することで前記制御機能の監視を行うとともに、これら一致比較した演算結果と期待値とを前記モニタモジュールに送信し、前記モニタモジュールは、該送信される演算結果とその期待値との一致比較に基づいて前記監視機能が適正に機能しているか否かを監視することとした（フロー検査）。さらにまた、請求項１〜４のいずれか一項に記載の電子制御装置において、請求項５に記載の電子制御装置では、前記マイクロコンピュータは、前記監視機能としてさらに、当該マイクロコンピュータが内蔵するプログラムメモリに格納されているマップに基づき前記制御機能が前記入力信号に応じて前記車載アクチュエータの制御値を演算した演算結果と、この制御値の上限値である期待値とを大小比較することで前記制御機能の監視を行うとともに、これら大小比較した演算結果と期待値とを前記モニタモジュールに送信し、前記モニタモジュールは、該送信される演算結果とその期待値との大小比較に基づいて前記監視機能が適正に機能しているか否かを監視することとした（システムチェック）。このような構成では、上記監視機能によって上記制御機能の監視が行われるとともに、上記モニタモジュールによる上記マイクロコンピュータの監視機能の監視が別途実行される。したがって、モニタモジュールを通じてマイクロコンピュータの自己監視機能をさらに監視する場合であれ、それら監視状態を適正に維持して、車載アクチュエータの駆動制御にかかる信頼性のさらなる向上を図ることができるようになる。
【００１４】
また、これらの場合には特に、請求項６に記載の電子制御装置によるように、前記モニタモジュールが、前記送信された前記演算結果とその期待値との比較の結果、前記演算結果が期待される結果となっていない期間が所定の判定期間を超えることに基づいて前記監視機能が適正に機能していない旨を判定するようにすることが望ましい。このような構成では、上記演算結果が偶発的に期待される結果となっていないことによって上記マイクロコンピュータの監視機能が異常と判定されることが回避されるようになり、該マイクロコンピュータの監視機能をより適切に監視することができるようになる。
【００１５】
そして具体的には、請求項７に記載の電子制御装置によるように、前記モニタモジュールが、前記ディジタル回路の動作基準となるクロックに基づきカウントアップされるとともに、前記送信された前記演算結果とその期待値との比較の結果、前記演算結果が期待される結果となっていることに基づいてクリアされるデータ異常カウンタを備え、該データ異常カウンタによるカウンタ値が所定の判定値を超えることに基づいて前記演算結果が期待される結果となっていない期間が所定の判定期間を超えた旨を判断するようにすることが、車載アクチュエータの駆動制御にかかる信頼性のさらなる向上を図る上で実用上望ましい。
【００１６】
ところで、マイクロコンピュータに上記モニタモジュールが通信可能に接続されてなる上記請求項１〜７のいずれか一項に記載の電子制御装置では、マイクロコンピュータとモニタモジュールとの間の通信機能に異常がある場合、上記モニタモジュールが、上記マイクロコンピュータの監視機能を監視することは困難となる。すなわちこの場合、同モニタモジュールによる上記マイクロコンピュータの監視機能の監視が十分に実施されず、逆に車載アクチュエータの駆動制御等にかかる信頼性の低下が避けられない。したがって、上記請求項１〜７のいずれか一項に記載の電子制御装置においては、請求項８に記載の電子制御装置によるように、前記モニタモジュールが、前記演算結果とその期待値とが受信されない期間が所定の判定期間を超えることに基づいて前記マイクロコンピュータとの通信機能が適正に機能していない旨を判定するようにして、マイクロコンピュータとモニタモジュールとの間の通信機能を併せて監視するようにすることが望ましい。
【００１７】
そして具体的には、請求項９に記載の電子制御装置によるように、前記モニタモジュー
ルが、前記ディジタル回路の動作基準となるクロックに基づきカウントアップされるとともに前記演算結果とその期待値とが受信されることに基づいてクリアされる通信異常カウンタを備え、該通信異常カウンタによるカウンタ値が所定の判定値を超えることに基づいて前記マイクロコンピュータとの通信機能が適正に機能していない旨を判定するようにすることが、上記通信機能を監視する上で実用上望ましい。
【００１８】
ただしここで、モニタモジュールを利用して上記マイクロコンピュータの監視機能を監視するこのような電子制御装置では、同モニタモジュール自体が監視不能な状態に陥るようなことがあると、車載アクチュエータの駆動制御等にかかる信頼性の低下が避けられない。そこで、請求項７または９に記載の電子制御装置において、請求項１０に記載の電子制御装置では、前記モニタモジュールが、前記ディジタル回路の動作基準となるクロックに基づきカウントアップされる基準カウンタをさらに備え、前記マイクロコンピュータが、この基準カウンタによるカウンタ値を取り込んで前記モニタモジュールが適正に機能しているか否かを監視するモジュール監視部をさらに備えるようにしている。すなわちこのような基準カウンタは、上述のデータ異常カウンタや通信異常カウンタと同様、上記ディジタル回路の動作基準となるクロックに基づいてカウントアップされる。したがって、上記モジュール監視部が該基準カウンタによるカウンタ値を監視する上記構成では、上記モニタモジュールのデータ異常カウンタや通信異常カウンタのいわば擬似的な監視を通じて、同モニタモジュール自体が監視不能な状態にあるか否かの判定を行うことができるようになる。
【００１９】
また、請求項１０に記載の電子制御装置において、請求項１１に記載の電子制御装置によるように、前記モジュール監視部が、前記基準カウンタによるカウンタ値を定期的に取り込み、該取り込んだカウンタ値の変化しない期間が所定の判定期間を超えることに基づいて前記モニタモジュールが適正に機能していない旨を判定するようにすれば、同モニタモジュールをより適切に監視することができるようになる。
【００２０】
また、請求項１〜１１に記載の電子制御装置にあって、モニタモジュールが複数の監視対象を有する場合には、該電子制御装置として、例えば、請求項１２、あるいは請求項１４、あるいは請求項１７に記載の電子制御装置を採用するようにすることが実用上望ましい。
【００２１】
ちなみに、請求項１２に記載の電子制御装置では、前記監視機能が、前記制御機能としての機能を実行する上でその適正な実行を保証するいくつかの特定の要素を監視対象としてその監視を行うとともに、前記マイクロコンピュータが、それら監視対象の別に識別子を付与して前記演算結果とその期待値とを前記モニタモジュールに送信するものであるとき、前記モニタモジュールが、前記監視対象にそれぞれ対応した複数のディジタル回路ブロックを一体に有し、前記送信される演算結果とその期待値とを前記識別子に基づき分類して各対応するディジタル回路ブロックに与えつつ、それら各ディジタル回路ブロックにて各別に前記演算結果とその期待値との比較に基づく監視を行うこととしている。
【００２２】
このような構成では、上記モニタモジュールが、上記監視対象の別に送信される演算結果とその期待値とを、各々対応する専用のディジタル回路ブロックにて各別に比較することとなる。このため、モニタモジュールが複数の監視対象を有する場合であれ、上記演算結果とその期待値との比較に基づく監視を的確に実行することができるようになる。
【００２３】
なお、このようにモニタモジュールが複数の監視対象を有する場合には、それら監視対象の比較態様として、一致比較あるいは大小比較が要求されることが多い。したがって、上記請求項１２に記載の電子制御装置では、請求項１３に記載の電子制御装置によるように、前記モニタモジュールの前記複数のディジタル回路ブロックとして、前記演算結果とその期待値の一致比較を行う第１のブロックと、前記演算結果とその期待値との大小比較を行う第２のブロックとを用意するようにすることが実用上望ましい。
【００２４】
一方、上記請求項１４に記載の電子制御装置では、前記監視機能が、前記制御機能としての機能を実行する上でその適正な実行を保証するいくつかの特定の要素を監視対象としてその監視を行うとともに、前記マイクロコンピュータは、それら監視対象の比較態様の別に識別子を付与して前記演算結果とその期待値とを前記モニタモジュールに送信するものであるとき、前記モニタモジュールが、前記演算結果とその期待値との一致比較を行う第１のブロックと、前記演算結果とその期待値との大小比較を行う第２のブロックとを有し、前記監視対象のうち、前記比較態様の共通する監視対象の演算結果とその期待値については、前記識別子に基づきそれらブロックの一方を共用して該当する演算結果とその期待値との比較に基づく監視を行うこととしている。
【００２５】
このような構成では、上記モニタモジュールが、複数の監視対象のうち、上記比較態様の共通する監視対象の演算結果とその期待値については、上記識別子に基づき上記第１及び第２のブロックの一方を共用して該当する演算結果とその期待値との比較に基づく監視を行うこととなる。したがって、多くの監視対象を有するモニタモジュールを専用のディジタル回路によって実現する場合であれ、その回路規模の好適な抑制を図ることができるようになる。またこれにより、モニタモジュールの製造コストの低減が図られるようにもなる。
【００２６】
また、この請求項１４に記載の電子制御装置において、請求項１５に記載の電子制御装置によるように、前記マイクロコンピュータが、前記比較態様が一致比較として共通する監視対象についてはそれら各監視対象の演算結果の合算値と該合算値として本来得られるべき値である期待値とを前記モニタモジュールに送信し、前記モニタモジュールが、これら送信される合算値とその期待値とを前記第１のブロックを通じて一致比較することにより前記比較態様が一致比較として共通する監視対象の適否を一括して監視するようにすれば、モニタモジュールにかかる演算負荷の低減とその回路規模のより好適な抑制とを併せ
て図ることができるようになる。また、請求項１４または１５に記載の電子制御装置として、例えば、請求項１７に記載の電子制御装置を採用するようにすることも実用上望ましい。
【００２７】
また、請求項１２〜１５のいずれか一項に記載の電子制御装置においては、請求項１６に記載の電子制御装置によるように、前記監視機能の監視対象となる前記制御機能としての機能を実行する上でその適正な実行を保証するいくつかの特定の要素として、前記マイクロコンピュータが内蔵する読み出し専用のプログラムメモリに格納されている前記制御機能によって実行される制御プログラムの適正性、及び前記マイクロコンピュータが内蔵するデータＲＡＭに前記制御機能による演算結果として格納されているデータの適正性、及び固定値として予め登録されているシミュレーション用データの前記制御機能による演算値の適正性、及び前記制御機能によって読み出し要求される関数の順序の適正性、及び前記車両の運転状態を示す入力信号に基づき前記制御機能によって演算された演算値の適正性の少なくとも２つの要素を採用するようにすることが実用上望ましい。
【００２８】
他方、上記請求項１７に記載の電子制御装置では、前記監視機能が、前記制御機能としての機能を実行する上でその適正な実行を保証するいくつかの特定の要素を監視対象としてその監視を行うとともに、前記マイクロコンピュータが、それら監視対象の演算周期の別に識別子を付与して前記演算結果とその期待値とを前記モニタモジュールに送信するものであるとき、前記モニタモジュールが、前記監視対象のうちの演算周期の相対的に短い監視対象について前記演算結果とその期待値との一致比較を行う高速用ブロックと、同監視対象のうちの演算周期の相対的に長い監視対象について前記演算結果とその期待値との一致比較を行う低速用ブロックとを有し、前記監視対象のうち、前記演算周期の近似する監視対象の演算結果とその期待値については、前記識別子に基づきそれらブロックの一方を共用して該当する演算結果とその期待値との比較に基づく監視を行うこととした。
【００２９】
このような構成でも、上記モニタモジュールが、上記複数の監視対象のうち、上記演算周期の近似する監視対象の演算結果とその期待値については、上記識別子に基づき上記高速用及び低速用ブロックの一方を共用して該当する演算結果とその期待値との比較に基づく監視を行うこととなる。したがって、多くの監視対象を有するモニタモジュールを専用のディジタル回路によって実現する場合であれ、その回路規模の好適な抑制を図ることができるようになる。またこれにより、モニタモジュールの製造コストの低減が図られるようにもなる。
【００３０】
しかも、上記複数の監視対象をこのように演算周期ごとに分類するようにしたことで、遅い演算周期の監視対象の監視によって、早い演算周期の監視対象の監視が妨げられることも回避されるようになり、監視対象の異常をより早期に検出、判定することができるようになる。
【００３１】
また、この請求項１７に記載の電子制御装置においても、請求項１８に記載の電子制御装置によるように、前記マイクロコンピュータが、前記演算周期の相対的に短い監視対象として共通する監視対象についてはそれら各監視対象の演算結果の合算値と該合算値として本来得られるべき値である期待値とを前記モニタモジュールに送信し、前記モニタモジュールが、これら送信される合算値とその期待値とを前記高速用ブロックを通じて一致比較することにより前記演算周期の相対的に短い監視対象として共通する監視対象の適否を一括して監視するようにすれば、モニタモジュールにかかる演算負荷の低減とその回路規模のより好適な抑制とを併せて図ることができるようになる。
【００３２】
また、請求項１７または１８に記載の電子制御装置においては、請求項１９に記載の電子制御装置によるように、前記監視機能の監視対象となる前記制御機能としての機能を実行する上でその適正な実行を保証するいくつかの特定の要素として、前記マイクロコンピュータが内蔵するデータＲＡＭに前記制御機能による演算結果として格納されているデータの適正性、及び固定値として予め登録されているシミュレーション用データの前記制御機能による演算値の適正性、及び前記制御機能によって読み出し要求される関数の順序の適正性、及び前記車両の運転状態を示す入力信号に基づき前記制御機能によって演算された演算値の適正性の少なくとも１つの要素と、前記マイクロコンピュータが内蔵する読み出し専用のプログラムメモリに格納されている前記制御機能によって実行される制御プログラムの適正性を採用するようにすることが実用上望ましい。
【００３３】
また一方、請求項１〜１９のいずれか一項に記載の電子制御装置において、請求項２０に記載の電子制御装置では、前記マイクロコンピュータは、前記監視機能を通じて前記演算結果のみを前記モニタモジュールに送信するものであり、前記モニタモジュールは、前記期待値を予め保持し、前記送信される演算結果とこの期待値との比較に基づいて前記監視機能が適正に機能しているか否かを監視することとした。
【００３４】
このような構成でも、上記監視機能による上記制御機能の監視と、上記モニタモジュールによる上記マイクロコンピュータの監視機能の監視とが並行して実行されるため、モニタモジュールを通じてマイクロコンピュータの自己監視機能をさらに監視する場合であれ、それら監視状態を適正に維持して、車載アクチュエータの駆動制御にかかる信頼性のさらなる向上を図ることができるようになる。
【００３５】
ただしこのように、上記監視対象となる内容に応じた演算結果としてその本来得られるべき値である期待値をモニタモジュールに保持するようにしたことで、前記監視対象となる内容によっては、請求項２１に記載の電子制御装置によるように、前記マイクロコンピュータが、前記演算結果が前記モニタモジュールに保持されている期待値に見合う値となるように前記監視対象となる内容に応じた演算結果を操作し、この操作した値を前記演算結果として前記モニタモジュールに送信するようにすることがより望ましい場合もある。このような監視対象としては、例えばデータＲＡＭに格納されているスロットルバルブの開度指令値を示すデューティ値の適正性など、機関の運転状態とともに演算結果の値がその都度変化する監視対象等が該当する。
【００３６】
また、請求項１〜２１のいずれか一項に記載の電子制御装置は、請求項２２に記載の電子制御装置、具体的には、前記車載アクチュエータがスロットルバルブの開度を調量するモータであるときに、該モータを駆動する駆動回路と、前記マイクロコンピュータの監視
機能及び前記モニタモジュールの少なくとも一方を通じてその監視対象となる機能が適正に機能していない旨が判定されることに基づき前記駆動回路に対する給電を停止する手段とをさらに備える電子制御装置として構成することが特に有効である。すなわち、このような電子制御装置では、上記駆動回路に対する給電が停止されるときに、上記スロットルバルブが自ずとフェールセーフ状態に保持されるようになる。
【発明を実施するための最良の形態】
【００３７】
（第１の実施の形態）
以下、この発明にかかる電子制御装置の第１の実施の形態について図１〜図１８を参照して詳細に説明する。
【００３８】
はじめに、スロットルバルブを駆動制御する制御機能と該制御機能が適正に機能しているか否かを監視する監視機能とを有するマイクロコンピュータ、及びその監視機能が適正に機能しているか否かを専用のディジタル回路を通じてさらに監視するモニタモジュールを互いに通信可能に接続して有する一般的な電子制御装置について説明する。
【００３９】
前述のように、このような電子制御装置では、上記モニタモジュールが、上記マイクロコンピュータから送信される情報に基づき同マイクロコンピュータの監視機能が適正に機能しているか否かを監視することとなる。ただし、このような電子制御装置においては、先の従来の電子制御装置のように、上記モニタモジュールが上記マイクロコンピュータの監視機能の異常の有無を監視するに際し、同監視機能による上記制御機能の監視が一時的に中断され、ひいてはスロットルバルブの駆動制御等にかかる信頼性が低下する懸念がある。
【００４０】
そこで、このような電子制御装置として、
・上記モニタモジュールによる監視に際しては、マイクロコンピュータの監視機能がまず、上記制御機能の監視（自己監視）を実施する。
且つ、
・上記監視機能による監視が実施されたとき、上記マイクロコンピュータが、その監視対象となる内容に応じて演算された値である演算結果と該演算結果として本来得られるべき値である期待値とをモニタモジュールに送信する。
且つ、
・上記モニタモジュールが、上記マイクロコンピュータから送信される演算結果とその期待値との比較に基づき上記マイクロコンピュータの監視機能が適正に機能しているか否かを監視する。
といった監視構造をさらに採用するようにした装置が以下に説明するこの実施の形態にかかる電子制御装置である。このような電子制御装置によれば、上記監視機能による制御機能の監視と、上記モニタモジュールによる同監視機能の監視とが並行して実行されるようになり、スロットルバルブの駆動制御にかかる信頼性のさらなる向上を図ることができるようになる。
【００４１】
図１は、スロットルバルブを駆動するモータとの電気的な関係も含めて、このような監視構造を採用するこの実施の形態にかかる電子制御装置についてその全体構成をブロック図として示したものである。以下、同図１を参照して、この実施の形態にかかる電子制御装置の構成、並びにその動作について更に詳述する。
【００４２】
同図１に示すように、この電子制御装置１００は、スロットルバルブ（図示略）を駆動するモータＭの駆動制御を出力端子Ｔ１及びＴ２を介して行う装置として、大きくは、マイクロコンピュータ１１０と、モニタモジュール１２０と、駆動回路１３０とを備えて構成されている。なお、この電子制御装置１００やモータＭは、電源端子Ｔ３及び接地端子Ｔ４を介して車載バッテリからの給電を受ける構成となっている。
【００４３】
ここで、上記マイクロコンピュータ１１０は、上記モータＭの駆動制御を行うための各種演算処理を行う部分であり、機能的には図１に模式的に示す態様のブロック構成を有している。
【００４４】
すなわち、この電子制御装置にあって、上記モータＭの駆動制御に際しては、上述の制御機能を構成する部分である制御部１１２がまず、該制御部１１２と外部のセンサや装置との間での情報の授受を仲介する入力部１１１を通じて、例えばアクセルペダル操作量などの情報を示す外部信号を取り込む。そして、こうした外部信号に基づいて上記スロットルバルブ（モータＭ）に対する制御量（駆動量）を演算し、その演算結果（駆動指令）を上記駆動回路１３０に出力する。これにより、上記駆動回路１３０が、この駆動指令によって示される上記スロットルバルブに対する制御量に対応するかたちで上記モータＭを駆動するようになる。
【００４５】
また、同マイクロコンピュータ１１０は、上記制御部１１２が適正に機能しているか否かを監視する上述の監視機能を構成する部分である自己監視部１１３を備えている。本実施の形態において、この自己監視部１１３は、上記制御部１１２としての機能を実行する上でその適正な実行を保証する以下の５つの要素を監視対象としてその監視を行うことで、上記制御部１１２としての機能を間接的に監視する。次に、この自己監視部１１３の監視対象となる要素及びその監視の具体態様について詳述する。
＜プログラムメモリの監視（ＲＯＭチェック）＞
自己監視部１１３は、マイクロコンピュータ１１０が内蔵する読み出し専用のプログラムメモリ（ＲＯＭ）１１２１に格納されている上記制御部１１２によって実行される各種制御プログラムやそれら制御で用いられる制御データの適正性を監視対象としている。そして、同自己監視部１１３は、このプログラムメモリの監視（ＲＯＭチェック）を以下の態様にて実行する。
【００４６】
例えば、プログラムメモリ１１２１の上記スロットルバルブに対する制御量を演算するための領域（ＲＯＭ領域）１１２ａには、図２に示されるように、該ＲＯＭ領域１１２ａに格納されているデータを加算したとき、その加算値（ＲＯＭサム値）が所定の固定値（例えば「５ＡＡ５」）となるように上述の各種データが配列されている。こうしたプログラムメモリ１１２１に対して、当該自己監視部１１３はまず、上記スロットルバルブに対する制御量を演算するための領域１１２ａに格納されているデータの加算値（ＲＯＭサム値）を得る。そしてこの演算結果としての加算値と、該加算値として本来得られるべき値として予めメモリ等に登録されている期待値（例えば「５ＡＡ５」）との間での一致比較に基づき、当該監視を実行する。
＜データＲＡＭの監視（ＲＡＭチェック）＞
また、自己監視部１１３は、スロットルバルブの開度を示すデューティ値など、上記制御部１１２による演算結果として上記マイクロコンピュータ１１０が内蔵するデータＲＡＭに格納されたデータの適正性を監視対象としており、このデータＲＡＭの監視（ＲＡＭチェック）を以下の態様にて実行する。
【００４７】
例えば、図３（ａ）及び（ｂ）に例示されるように、上記制御部１１２は、各種の演算結果を得る都度、該演算結果を、上記データＲＡＭの一部の領域１１２ｂのほか、上記マイクロコンピュータ１１０が内蔵するミラーＲＡＭの一部の領域１１２ｃに格納する。こうしたデータＲＡＭ及びミラーＲＡＭに対して、当該自己監視部１１３はまず、互いに対応するアドレス毎に上記データＲＡＭの記憶値（演算結果）及びミラーＲＡＭの記憶値（期待値）を読み出す。そして、それら演算結果及びその期待値の一致比較に基づき、当該監視を実行する。
＜制御部による命令動作等の監視（インストラクション検査）＞
また、自己監視部１１３は、上記制御部１１２による演算結果として出力される該制御部１１２による命令動作の適正性や、該動作に関わる各種要素（レジスタ、アドレスバス、データバス等）を監視対象としている。そして、同自己監視部１１３は、この制御部１１２による命令動作等の監視（インストラクション検査）を以下の態様にて実行する。
【００４８】
この命令動作等の監視に際しては、例えば、図４に例示するように、上記入力部１１１を介して取得される外部信号に基づいて上記スロットルバルブの開度量を演算する上記制御部１１２の制御機能の一部１１２ｄがまず、固定値として予め登録されているシミュレーション用データを読み込む。そして、該シミュレーション用データを演算してその演算値を所定のレジスタに格納する。そしてその後に、自己監視部１１３が、このレジスタに格納されている上記制御機能の一部１１２ｄによるシミュレーション用データの演算値と、該演算値として本来得られるべき値「Ａ」として予めメモリ等に登録されている期待値との間での一致比較に基づき、当該監視を実行する。
＜関数のＣＡＬＬ順序の監視（フロー検査）＞
また、自己監視部１１３は、上記制御部１１２によって読み出し要求される関数の順序（関数のＣＡＬＬ順序）を監視対象としており、この関数のＣＡＬＬ順序の監視（フロー検査）を以下の態様にて実行する。
【００４９】
例えば、マイクロコンピュータ１１０が内蔵するプログラムメモリ１１２１の制御プログラム格納領域１１２ｅには、図５に例示する制御プログラム（フローチャート）が格納（規定）されている。なお、この制御プログラム（フローチャート）には、ステップＳ１〜Ｓ４の順序に従って適宜の第１〜第４の関数を上記制御部１１２が読み出し要求すべき旨が規定されている。また、同制御プログラム（フローチャート）には、上記第１〜第４の関数の読み出し要求に先立って、ステップＳ０の処理としてまず、所定のプログラムカウンタのカウンタ値を「０」とすることが規定されている。また、上記ステップＳ１〜Ｓ４の処理毎に、同カウンタのカウンタ値をカウントアップすること、及び上記ステップＳ１〜Ｓ４の処理の後に、ステップＳ５の処理として、関数のＣＡＬＬ順序が適正であったか否かの検査（フロー検査）を行うことも併せて規定されている。
【００５０】
このように規定されている手順に基づき、自己監視部１１３は、上記ステップＳ５の処理として、上記制御部１１２によって読み出し要求される関数の順序の適正性を監視する。具体的には、このステップＳ５の処理において本来得られるべきカウンタ値「４」として予めメモリ等に登録されている期待値を読み出し、上記プログラムカウンタのカウンタ値（演算結果）とこの期待値との一致比較に基づき、当該監視を実行する。
＜制御部による演算値の監視（システムチェック）＞
また、自己監視部１１３は、スロットルバルブの開度指令値を示すデューティ値など、上記入力部１１１を介して取得される上記外部信号に基づき上記制御部１１２によって演算された演算値を監視対象としており、このデューティ値（演算値）の監視（システムチェック）を以下の態様にて実行する。
【００５１】
例えば、マイクロコンピュータ１１０が内蔵する所定のメモリ（図示略）には、スロットルバルブの開度指令値を示すデューティ値、及び該デューティ値にそれぞれ関連して上記スロットルバルブの開度制御上取得され得る上限値が、当該車両の運転状態に対応してそれぞれ関連付けされたマップＭ（図示略）として記憶されている。そして、上記制御部１１２は、該マップＭに基づいてその都度の外部信号（車両の運転状態）に応じた上記デューティ値を演算しており、こうして演算されたデューティ値が、図６に示されるように、マイクロコンピュータ１１０が内蔵するデータＲＡＭ１１２２のデューティ値記憶（保持）領域１１２ｆに格納されている。
【００５２】
こうしたデータＲＡＭ１１２２に対して、当該自己監視部１１３はまず、上記制御部１１２によって演算された上記デューティ値（演算結果）を読み出す。次いで、該読み出したデューティ値に対応して予め設定されている上記上限値を同様に上記マップＭに基づいて算出する。そして、該算出したデューティ値の上限値「ｘ％」をその都度の期待値として、該期待値と上記読み出した演算結果との大小比較に基づき、当該監視を実行する。
【００５３】
このように、この実施の形態の自己監視部１１３は、監視対象となるこれら５つの要素を各別に監視し、それら監視が終了する都度、該監視の結果を、上記制御部１１２による駆動指令の妥当性を示す情報（信号）として上記駆動回路１３０に出力する。具体的には、一致比較が用いられる監視項目（ＲＯＭチェック、ＲＡＭチェック、インストラクション検査、フロー検査）については、その監視の内容に応じて演算された演算結果とその期待値とが不一致を示している場合に、当該自己監視部１１３が、上記制御部１１２による駆動指令に妥当性がない旨の情報（信号）を出力する。また、大小比較が用いられる監視項目（システムチェック）については、その監視の内容に応じて演算された演算結果がその期待値よりも大きい場合に、当該自己監視部１１３が、上記制御部１１２による駆動指令に妥当性がない旨の情報（信号）を出力する。すなわち後述するが、こうした情報（信号）が上記駆動回路１３０に出力されることで、該駆動回路１３０が、上記モータＭを通じて上記スロットルバルブの開閉駆動をより高い信頼性の下で行うようになる。
【００５４】
なお、同自己監視部１１３は、上記監視が終了したときには、その監視に用いられた演算結果とその期待値とを、上記５つの監視項目（ＲＯＭチェック、ＲＡＭチェック、インストラクション検査、フロー検査、システムチェック）の別に所定のメモリに格納する。またこのとき、同自己監視部１１３は、上記監視が終了したことを示す監視終了フラグを、これら５つの監視項目の別に所定のメモリに登録（セット）することも併せ行う。
【００５５】
また、同マイクロコンピュータ１１０において、通信部１１４は、以下に説明するモニタモジュール１２０の通信部１２２との間で通信による情報の授受を行う部分である。すなわち、同マイクロコンピュータ１１０にあっては、この通信部１１４が、上記制御部１１２の監視が実施されるときにその監視対象の内容に応じて演算された値である上記演算結果と該演算結果として本来得られるべき値である上記期待値とを上記モニタモジュール１２０に送信する上述の部分となる。
【００５６】
図７〜図１１は、上記演算結果及びその期待値の送信制御について、この通信部１１４が実行する制御手順をフローチャートとして示したものであり、次に、この図７〜図１１に基づいて、同制御手順を説明する。なお、この送信制御は、上記５つの監視項目の別に、例えばシリアル通信やパラレル通信によって実行される。また、同送信制御では、データ送信に際して他のデータが送信中である場合にはそのデータ送信を遅延させるなどの適宜のタイムシェアリングが用いられる。
【００５７】
ここで、図７は、上述の５つの監視項目のうち、プログラムメモリの監視（ＲＯＭチェック）が実施されるときに用いられた演算結果及びその期待値の送信処理をフローチャートとして示したものである。なお、この送信処理は、所定期間ごとに繰り返し実行される。
【００５８】
同図７に示されるように、この送信処理に際しては、上記通信部１１４がまず、プログラムメモリの監視（ＲＯＭチェック）が終了したことを示す監視終了フラグが上記自己監視部１１３によってセットされているか否かを確認する（ステップＳ１１）。そしてその結果、同監視終了フラグがセットされている場合には、プログラムメモリの監視（ＲＯＭチェック）が既に終了しているとして、次にステップＳ１２の処理に移行する。
【００５９】
このステップＳ１２の処理では、先の図２に例示した演算結果（ＲＯＭサム値）とその期待値（例えば「５ＡＡ５」）とを上述の所定のメモリから読み出し、上記モニタモジュール１２０への送信データとして上記マイクロコンピュータ１１０が内蔵する第１のレジスタ（図示略）にセット（更新）する。ただしこのとき、このデータには、図１２に例示するように、該データが上記ＲＯＭチェックに対応するデータであることを示す識別子（ＩＤ）を付与しておく。そして、同通信部１１４は、ステップＳ１３の処理として、こうして作成した送信データ（図１２）を上記モニタモジュール１２０に送信する。そしてその後に、ステップＳ１４の処理として、上記ＲＯＭチェックが終了したことを示す監視終了フラグをリセット（クリア）する。
【００６０】
他方、上記ステップＳ１１の処理において、上述の監視終了フラグがセットされていない場合には、上記ＲＯＭチェックは未だ終了していないとして、上記ステップＳ１２の処理に移行することなく、次に上記ステップＳ１３の処理を行う。すなわちこの場合、上記通信部１１４は、上記第１のレジスタに格納されている前回送信したデータを上記モニタモジュール１２０に再度送信することとなる。そしてその後に、ステップＳ１４の処理として、上記ＲＯＭチェックが終了したことを示す監視終了フラグをリセット（クリア）する。
【００６１】
また、図８は、上述の５つの監視項目のうち、データＲＡＭの監視（ＲＡＭチェック）が実施されるときに用いられた演算結果及びその期待値の送信処理をフローチャートとして示したものである。なお、この送信処理も、基本的には、先の図７に示した送信処理とほぼ同様の手順にて、所定期間ごとに繰り返し実行される。
【００６２】
すなわち、同図８に示されるように、この送信処理に際しても、上記通信部１１４はまず、上記ＲＡＭチェックが終了したことを示す監視終了フラグが上記自己監視部１１３によってセットされているか否かを確認し（ステップＳ２１）、その結果、該監視終了フラグがセットされている場合に次のステップＳ２２の処理に移行する。
【００６３】
ただし、このステップＳ２２の処理では、先の図３に例示した演算結果（データＲＡＭの記憶値）とその期待値（ミラーＲＡＭの記憶値）とを上述の所定のメモリから読み出し、これを上記モニタモジュール１２０への送信データとして上記マイクロコンピュータ１１０が内蔵する第２のレジスタ（図示略）にセット（更新）する。またこのとき、このデータには、図１２に例示するように、該データが上記ＲＡＭチェックに対応するデータであることを示す識別子（ＩＤ）を付与しておく。そしてその後に、こうして作成した送信データ（図１２）を上記モニタモジュール１２０に送信するとともに（ステップＳ２３）、該ＲＡＭチェックが終了したことを示す監視終了フラグをリセット（クリア）する（ステップＳ２４）。
【００６４】
他方、上記ステップＳ２１の処理において、上述の監視終了フラグがセットされていない場合には、ＲＡＭチェックは未だ終了していないとして、上記ステップＳ２２の処理に移行することなく、次に上記ステップＳ２３の処理を行う。すなわちこの場合、上記通信部１１４は、上記第２のレジスタに格納されている前回送信したデータを上記モニタモジュール１２０に再度送信することとなる。そしてその後に、ステップＳ２４の処理として、上記ＲＡＭチェックが終了したことを示す監視終了フラグをリセット（クリア）する。
【００６５】
また、図９は、上述の５つの監視項目のうち、上記制御部１１２による命令動作等の監視（インストラクション検査）が実施されるときに用いられた演算結果及びその期待値の送信処理をフローチャートとして示したものである。なお、この送信処理も、基本的には、先の図７に示した送信処理とほぼ同様の手順にて、所定期間ごとに繰り返し実行される。
【００６６】
すなわち、同図９に示されるように、この送信処理に際しても、上記通信部１１４はまず、上記インストラクション検査が終了したことを示す監視終了フラグが上記自己監視部１１３によってセットされているか否かを確認し（ステップＳ３１）、その結果、該監視終了フラグがセットされている場合に次のステップＳ３２の処理に移行する。
【００６７】
ただし、このステップＳ３２の処理では、先の図４に例示した演算結果（シミュレーション用データの演算値）とその期待値（例えば演算値「Ａ」）とを上述の所定のメモリから読み出し、これを上記モニタモジュール１２０への送信データとして上記マイクロコンピュータ１１０が内蔵する第３のレジスタ（図示略）にセット（更新）する。またこのとき、このデータには、図１２に例示するように、該データが上記インストラクション検査に対応するデータであることを示す識別子（ＩＤ）を付与しておく。そしてその後に、こうして作成した送信データ（図１２）を上記モニタモジュール１２０に送信するとともに（ステップＳ３３）、上記インストラクション検査が終了したことを示す監視終了フラグをリセット（クリア）する（ステップＳ３４）。
【００６８】
他方、上記ステップＳ３１の処理において、上述の監視終了フラグがセットされていない場合には、上記インストラクション検査は未だ終了していないとして、上記ステップＳ３２の処理に移行することなく、次に上記ステップＳ３３の処理を行う。すなわちこの場合、上記通信部１１４は、上記第３のレジスタに格納されている前回送信したデータを上記モニタモジュール１２０に再度送信することとなる。そしてその後に、ステップＳ３４の処理として、上記インストラクション検査が終了したことを示す監視終了フラグをリセット（クリア）する。
【００６９】
また、図１０は、上述の５つの監視項目のうち、関数のＣＡＬＬ順序の監視（フロー検査）が実施されるときに用いられた演算結果及びその期待値の送信処理をフローチャートとして示したものである。なお、この送信処理も、基本的には、先の図７に示した送信処理とほぼ同様の手順にて、所定期間ごとに繰り返し実行される。
【００７０】
すなわち、同図１０に示されるように、この送信処理に際しても、上記通信部１１４はまず、上記フロー検査が終了したことを示す監視終了フラグがセットされているか否かを確認し（ステップＳ４１）、その結果、該監視終了フラグがセットされている場合に次のステップＳ４２の処理に移行する。
【００７１】
ただし、このステップＳ４２の処理では、先の図５に例示した演算結果（カウンタ値）とその期待値（例えばカウンタ値「４」）とを上述の所定のメモリから読み出し、これを上記モニタモジュール１２０への送信データとして上記マイクロコンピュータ１１０が内蔵する第４のレジスタ（図示略）にセット（更新）する。またこのとき、このデータには、図１２に例示するように、該データが上記フロー検査に対応するデータであることを示す識別子（ＩＤ）を付与しておく。そしてその後に、こうして作成した送信データ（図１２）を上記モニタモジュール１２０に送信するとともに（ステップＳ４３）、上記フロー検査が終了したことを示す監視終了フラグをリセット（クリア）する（ステップＳ４４）。
【００７２】
他方、上記ステップＳ４１の処理において、上述の監視終了フラグがセットされていない場合には、上記フロー検査は未だ終了していないとして、上記ステップＳ４２の処理に移行することなく、次に上記ステップＳ４３の処理を行う。すなわちこの場合、上記通信部１１４は、上記第４のレジスタに格納されている前回送信したデータを上記モニタモジュール１２０に再度送信することとなる。そしてその後に、ステップＳ４４の処理として、上記フロー検査が終了したことを示す上述の監視終了フラグをリセット（クリア）する。
【００７３】
また、図１１は、上述の５つの監視項目のうち、上記制御部１１２による演算値の監視（システムチェック）が実施されるときに用いられた演算結果及びその期待値の送信処理をフローチャートとして示したものである。なお、この送信処理も、基本的には、先の図７に示した送信処理とほぼ同様の手順にて、所定期間ごとに繰り返し実行される。
【００７４】
すなわち、同図１１に示されるように、この送信処理に際しても、上記通信部１１４はまず、上記システムチェックが終了したことを示す監視終了フラグがセットされているか否かを確認し（ステップＳ５１）、その結果、該監視終了フラグがセットされている場合に次のステップＳ５２の処理に移行する。
【００７５】
ただし、このステップＳ５２の処理では、先の図６に例示した演算結果（デューティ値）とその期待値「ｘ％」とを上述の所定のメモリから読み出し、これを上記モニタモジュール１２０への送信データとして上記マイクロコンピュータ１１０が内蔵する第５のレジスタ（図示略）にセット（更新）する。またこのとき、このデータには、図１２に例示するように、該データが上記システムチェックに対応するデータであることを示す識別子（ＩＤ）を付与しておく。そしてその後に、こうして作成した送信データ（図１２）を上記モニタモジュール１２０に送信するとともに（ステップＳ５３）、上記システムチェックが終了したことを示す監視終了フラグをリセット（クリア）する（ステップＳ５４）。
【００７６】
他方、上記ステップＳ５１の処理において、上述の監視終了フラグがセットされていない場合には、上記システムチェックは未だ終了していないとして、上記ステップＳ５２の処理に移行することなく、次に上記ステップＳ５３の処理を行う。すなわちこの場合、上記通信部１１４は、上記第５のレジスタに格納されている前回送信したデータを上記モニタモジュール１２０に再度送信することとなる。そしてその後に、ステップＳ５４の処理として、上記システムチェックが終了したことを示す上述の監視終了フラグをリセット（クリア）する。
【００７７】
このように、この実施の形態では、自己監視部１１３による監視に用いられる上記演算結果とその期待値とが、上記５つの監視項目の別に、上記モニタモジュール１２０に送信される。そして後述するが、上記モニタモジュール１２０が、こうして送信されるデータに基づき、上記自己監視部１１３が適正に機能しているか否かを監視する。これにより、上記自己監視部１１３による制御部１１２の監視と、上記モニタモジュール１２０による該自己監視部１１３の監視とが並行して実行されるようになり、スロットルバルブの駆動制御にかかる信頼性のさらなる向上を図ることができるようになる。
【００７８】
また、同マイクロコンピュータ１１０において、モジュール監視部１１５は、上記通信部１１４を介して上記モニタモジュール１２０から送信される情報に基づき、該モニタモジュールが適正に機能しているか否かを監視する部分である。このモジュール監視部１１５については、後述することとする。
【００７９】
一方、上記モニタモジュール１２０は、上記マイクロコンピュータ１１０から送信される情報、具体的には先の図１２に例示したデータをもとに上記自己監視部１１３の異常の有無を監視するハードウェア（専用ＩＣ）である。
【００８０】
すなわち上述の通り、このモニタモジュール１２０では、上記マイクロコンピュータ１１０から送信されるデータ（図１２）をまず、上記通信部１２２に取り込む。そしてこのデータ（図１２）のうち、上記演算結果とその期待値とを、該モニタモジュール１２０を構成する異常判定回路１２１にさらに取り込み、該異常判定回路１２１にて比較することによって上記自己監視部１１３の異常の有無を監視する。なお後述するが、同異常判定回路１２１は、クロック発生器１２５にて生成されるクロックを動作基準として用いている。
【００８１】
ただし、この実施の形態では、同モニタモジュール１２０は、上記自己監視部１１３の異常の有無を上述した５つの監視項目の別に監視すべく、上記異常判定回路１２１が、それら監視項目にそれぞれ対応した５つのディジタル回路ブロック１２１ａ〜１２１ｅを有している。そして、これらディジタル回路ブロック１２１ａ〜１２１ｅの切替制御を行うブロック切替部１２３を用いて、上記送信されるデータに付与される上記識別子（ＩＤ）に基づき、同データに含まれる上記演算結果とその期待値とを各対応するディジタル回路ブロックに与えるようにしている。このような構成によれば、上述した５つの監視項目の別に送信される上記演算結果とその期待値とが、各々対応する専用のディジタル回路ブロック１２１ａ〜１２１ｅにて各別に比較されるようになる。
【００８２】
図１３は、当該モニタモジュール１２０について、ここでは特にディジタル回路ブロック１２１ａについてその内部構造をブロック図として示したものであり、次に、同図１３を参照して、このディジタル回路ブロック１２１ａの構造、並びにその動作について更に詳述する。
【００８３】
いま、このモニタモジュール１２０において、上記ブロック切替部１２３が、上記通信部１２２を介して取り込まれる上述の識別子（ＩＤ）に基づき、上記演算結果とその期待値とを当該ディジタル回路ブロック１２１ａに与えたとする。このような場合、当該ディジタル回路ブロック１２１ａは、それら演算結果及びその期待値をまず、Ａレジスタ１５１及びＢレジスタ１５２にそれぞれ格納する。そして次に、第１の比較器１５３に取り込み、この第１の比較器１５３においてそれら演算結果とその期待値との間での一致比較を行う。具体的には、この第１の比較器１５３では、上記ＲＯＭチェックの実施に用いられた先の図２に例示した演算結果（ＲＯＭサム値）とその期待値（例えば「５ＡＡ５」）とを一致比較する。そしてこの一致比較の結果に基づき、上記自己監視部１１３による上記ＲＯＭチェックが適正に実施されたか否かを監視する。
【００８４】
ただし、この実施の形態のディジタル回路ブロック１２１ａでは、上記演算結果とその期待値とが偶発的に不一致となることによって上記マイクロコンピュータ１１０の監視機能が異常と判定されることを回避すべく、同図１３に示すように、以下の構成をさらに備えることとしている。
・クロック発生器１２５によるクロックに基づきカウントアップされるとともに上記演算結果とその期待値とが一致した旨を示す上記第１の比較器１５３による出力に基づいてクリアされるデータ異常カウンタ１５４。
・データ異常カウンタ１５４によるカウンタ値と、メモリ１５５に予め格納されている所定の判定値との間での大小比較を行うとともに、その比較の結果を、上記自己監視部１１３の異常の有無の監視結果としてこのディジタル回路ブロック１２１ａから出力する第２の比較器１５６。
【００８５】
このような構成では、データ異常カウンタ１５４によるカウンタ値がメモリ１５５に予め登録されている所定の判定値を超えるとき、すなわち上記演算結果とその期待値とが不一致となっている期間が所定の判定期間を超えるときに、上記第２の比較器１５６が、上記自己監視部１１３が適正に機能していない旨を判定するようになる。このため、上記自己監視部１１３の異常の有無をより適切に監視することができるようになる。
【００８６】
また、このような電子制御装置１００では、マイクロコンピュータ１１０とモニタモジュール１２０との間の通信機能に異常がある場合、同モニタモジュール１２０による上記マイクロコンピュータ１１０の監視機能の監視が十分に実施されず、スロットルバルブの駆動制御等にかかる信頼性が逆に低下する懸念がある。そこで、この実施の形態のディジタル回路ブロック１２１ａでは、同図１３に示すように、以下の構成をさらに備えることとしている。
・クロック発生器１２５によるクロックに基づきカウントアップされるとともに上記マイクロコンピュータ１１０からの情報を上記通信部１２２が受信したときの該通信部１２２による出力に基づいてクリアされる通信異常カウンタ１５７。
・通信異常カウンタ１５７によるカウンタ値と、メモリ１５８に予め格納されている所定の判定値との間での大小比較を行うとともに、その比較の結果を、上記マイクロコンピュータ１１０とモニタモジュール１２０との間の通信機能の異常の有無の監視結果としてこのディジタル回路ブロック１２１ａから出力する第３の比較器１５９。
【００８７】
このような構造では、通信異常カウンタ１５７によるカウンタ値がメモリ１５８に予め登録されている所定の判定値を超えるとき、すなわち上記演算結果とその期待値とが受信されない期間が所定の判定期間を超えるときに、上記第３の比較器１５９が、上記通信機能が適正に機能していない旨を判定するようになる。このため、上記自己監視部１１３の異常の有無をより適切に監視することができるようになる。
【００８８】
図１４は、このディジタル回路ブロック１２１ａによって行われる上記自己監視部１１３の異常判定処理についてその処理手順を示したフローチャートであり、次に同図１４を併せ参照して該異常判定処理について更に説明する。
【００８９】
同図１４に示されるように、この異常判定処理に際してはまず、ディジタル回路ブロック１２１ａの上記レジスタ１５１、１５２に格納されているデータ（演算結果及びその期待値）が更新記憶されたか否かを確認する（ステップＳ１０１）。その結果、同更新が確認された場合には、上記通信異常カウンタ１５７のカウンタ値をクリアし（ステップＳ１０２）、次いでステップＳ１０３の処理に移行する。一方、同ステップＳ１０１の処理において、データの更新が確認されなかった場合には、上記通信異常カウンタ１５７のカウンタ値をクリアすることなく（ステップＳ１０２の処理を行うことなく）、ステップＳ１０３の処理に移行する。
【００９０】
このステップＳ１０３の処理では、上記第１の比較器１５３において、上記レジスタ１５１、１５２に各々格納されている演算結果とその期待値との一致比較を行う。その結果、これら演算結果とその期待値とが一致したと判断された場合には、上記データ異常カウンタ１５４のカウンタ値をクリアし（ステップＳ１０４）、次いでステップＳ１０５の処理に移行する。一方、上記ステップＳ１０３の処理において、上記演算結果とその期待値とが不一致であった場合には、上記データ異常カウンタ１５４のカウンタ値をクリアすることなく（ステップＳ１０４の処理を行うことなく）、ステップＳ１０５の処理に移行する。
【００９１】
そして、このように通信異常カウンタ１５７及びデータ異常カウンタ１５４の各カウンタ値を操作した上で、それらカウンタ値の適否を順次監視する（ステップＳ１０５及びＳ１０７）。
【００９２】
すなわち、上記ステップＳ１０５の処理においては、上記通信異常カウンタ１５７のカウンタ値と、上記メモリ１５８に格納されている所定の判定値との大小関係を判断する。そして、このステップＳ１０５の処理において、上記通信異常カウンタ１５７のカウンタ値が上記所定の判定値を超えたと判断されると、上記演算結果とその期待値とが受信されない期間が所定の判定期間を超えたとして、上記通信機能が異常である旨の判定が行われる（ステップＳ１０６）。
【００９３】
また、上記ステップＳ１０７の処理では、上記データ異常カウンタ１５４のカウンタ値と、上記メモリ１５５に格納されている所定の判定値との大小関係を判断する。そして、このステップＳ１０７の処理において、上記データ異常カウンタ１５４のカウンタ値が上記所定の判定値を超えたと判断されると、上記演算結果とその期待値とが不一致となっている期間が所定の判定期間を超えたとして、上記自己監視部１１３の判定機能に異常がある旨の判定が行われる（ステップＳ１０８）。
【００９４】
一方、便宜上、図示は割愛するが、上記ディジタル回路ブロック１２１ｂは、上記ディジタル回路ブロック１２１ａの上述した構造（図１３）とほぼ同様である。したがって、このディジタル回路ブロック１２１ｂにおいて行われる上記自己監視部１１３の異常判定の処理手順も、基本的には、上記ディジタル回路ブロック１２１ａにおけるこうした処理手順（図１４）とほぼ同様である。
【００９５】
ただし、このディジタル回路ブロック１２１ｂでは、上記レジスタ１５１、１５２に相当する２つのレジスタに、先の図３に例示した演算結果（データＲＡＭの記憶値）とその期待値（ミラーＲＡＭの記憶値）とがそれぞれ格納される。このため、同ディジタル回路ブロック１２１ｂが有する上記第１の比較器１５３に相当する比較器では、それら演算結果（データＲＡＭの記憶値）とその期待値（ミラーＲＡＭの記憶値）との一致比較が行われることとなる。
【００９６】
また、上記ディジタル回路ブロック１２１ｃでは、上記レジスタ１５１、１５２に相当する２つのレジスタに、先の図４に例示した演算結果（シミュレーション用データの演算値）とその期待値（例えば演算値「Ａ」）とがそれぞれ格納される。このため、同ディジタル回路ブロック１２１ｃが有する上記第１の比較器１５３に相当する比較器では、それら演算結果（シミュレーション用データの演算値）とその期待値（例えば演算値「Ａ」）との一致比較が行われることとなる。
【００９７】
また、上記ディジタル回路ブロック１２１ｄでは、上記レジスタ１５１、１５２に相当する２つのレジスタに、先の図５に例示した演算結果（カウンタ値）とその期待値（例えばカウンタ値「４」）とがそれぞれ格納される。このため、同ディジタル回路ブロック１２１ｄが有する上記第１の比較器１５３に相当する比較器では、それら演算結果（カウンタ値）と期待値（例えばカウンタ値「４」）との一致比較が行われることとなる。
【００９８】
また一方、上記ディジタル回路ブロック１２１ｅも、基本的には、上記ディジタル回路ブロック１２１ａの上述した構造（図１３）とほぼ同様である。ただし、該ディジタル回路ブロック１２１ｅでは、上記第１の比較器１５３に相当する比較器にて、上記演算結果（デューティ値）とその期待値（上限値「ｘ％」）との大小比較を行うことにより上記自己監視部１１３の異常判定を行うこととなる。
【００９９】
図１５は、こうしたディジタル回路ブロック１２１ｅによって行われる上記自己監視部１１３の異常判定処理についてその処理手順を示したフローチャートであり、次に同図１５を併せ参照して該ディジタル回路ブロック１２１ｅによる異常判定処理について説明する。
【０１００】
同図１５に示されるように、この異常判定処理に際してはまず、ディジタル回路ブロック１２１ｅにおいて上記レジスタ１５１、１５２に相当する２つのレジスタに格納されているデータ（演算結果及びその期待値）が更新記憶されたか否かを確認する（ステップＳ２０１）。その結果、同更新が確認された場合には、上記通信異常カウンタ１５７に相当するカウンタのカウンタ値をクリアし（ステップＳ２０２）、次いでステップＳ２０３の処理に移行する。一方、同ステップＳ２０１の処理において、データの更新が確認されなかった場合には、上記通信異常カウンタ１５７に相当するカウンタのカウンタ値をクリアすることなく（ステップＳ２０２の処理を行うことなく）、ステップＳ２０３の処理に移行する。
【０１０１】
このステップＳ２０３の処理では、上記第１の比較器１５３に相当する比較器において、上記レジスタ１５１、１５２に相当する２つのレジスタに各々格納されている演算結果とその期待値との大小比較を行う。その結果、演算結果（デューティ値）がその期待値（上限値「ｘ％」）以下である場合には、上記データ異常カウンタ１５４に相当するカウンタのカウンタ値をクリアし（ステップＳ２０４）、次いでステップＳ２０５の処理に移行する。一方、上記ステップＳ２０３の処理において、上記演算結果（デューティ値）がその期待値（上限値「ｘ％」）を超えている場合には、上記データ異常カウンタ１５４に相当するカウンタのカウンタ値をクリアすることなく（ステップＳ２０４の処理を行うことなく）、次のステップＳ２０５の処理に移行する。
【０１０２】
そして、このように通信異常カウンタ１５７及びデータ異常カウンタ１５４にそれぞれ相当するカウンタの各カウンタ値を操作した上で、それらカウンタ値の適否を順次監視する（ステップＳ２０５及びＳ２０７）。なお、これら２つのカウンタ値も、上記クロック発生器１２５によるクロックに基づきその都度カウントアップされている。
【０１０３】
すなわち、上記ステップＳ２０５の処理においては、上記通信異常カウンタ１５７に相当するカウンタのカウンタ値と、上記メモリ１５８に相当するメモリに格納されている所定の判定値との大小関係を判断する。そして、このステップＳ２０５の処理において、上記通信異常カウンタ１５７に相当するカウンタのカウンタ値が上記所定の判定値を超えたと判断されると、上記演算結果とその期待値とが受信されない期間が所定の判定期間を超えたとして、上記通信機能が異常である旨の判定が行われる（ステップＳ２０６）。
【０１０４】
また、上記ステップＳ２０７の処理では、上記データ異常カウンタ１５４に相当するカウンタのカウンタ値と、上記メモリ１５５に相当するメモリに格納されている所定の判定値との大小関係を判断する。そして、このステップＳ２０７の処理において、上記データ異常カウンタ１５４に相当するカウンタのカウンタ値が上記所定の判定値を超えたと判断されると、上記演算結果がその期待値を超えている期間が所定の判定期間を超えたとして、上記自己監視部１１３の判定機能に異常がある旨の判定が行われる（ステップＳ２０８）。
【０１０５】
ちなみに、このモニタモジュール１２０にあって、これらディジタル回路ブロック１２１ａ〜１２１ｅの第２の比較器１５６に相当する各比較器による出力、及び上記第３の比較器１５９に相当する各比較器による出力は、異常判定回路１２１による監視の結果として、当該モニタモジュール１２０が内蔵するＯＲ回路１２４に取り込まれる。そして、上記ディジタル回路ブロック１２１ａ〜１２１ｅのいずれか１つでも、上記通信機能が異常である旨を判定し、若しくは上記自己監視部１１３の判定機能に異常がある旨を判定した場合には、このＯＲ回路１２４がその旨を示す信号を上記駆動回路１３０に出力する。そして後述するが、こうした監視の結果が上記駆動回路１３０に出力されることで、該駆動回路１３０が、この監視の結果に基づき、上記モータＭを通じて上記スロットルバルブの開閉駆動をより高い信頼性の下で行うようになる。
【０１０６】
また、同モニタモジュール１２０において、基準カウンタ１２６は、上記クロック発生器１２５によるクロックに基づきカウントアップされるカウンタを構成する部分である。この基準カウンタ１２６によるカウンタ値は、上記通信部１２２と上記マイクロコンピュータ１１０の通信部１１４とを介して上記モジュール監視部１１５（図１）に取り込まれ、該モジュール監視部１１５によって監視される。
【０１０７】
すなわち、同モニタモジュール１２０にあって、この基準カウンタ１２６は、上記各ディジタル回路ブロック１２１ａ〜１２１ｅにおける上述のデータ異常カウンタ１５４に相当するカウンタや通信異常カウンタ１５７に相当するカウンタと同様、上記クロック発生器１２５によるクロックに基づきカウントアップされる。したがって、上記モジュール監視部１１５がこの基準カウンタ１２６によるカウンタ値を監視するこのような構成では、上記データ異常カウンタ１５４や通信異常カウンタ１５７に相当するカウンタのいわば擬似的な監視を通じて、同モニタモジュール１２０自体が監視不能な状態にあるか否かの判定を行うことができるようになる。そして、このモジュール監視部１１５において、上記モニタモジュール１２０自体が監視不能な状態にあると判断された場合には、このモジュール監視部１１５がその旨を示す信号を上記駆動回路１３０に出力する。すなわち後述するが、こうした監視の結果が上記駆動回路１３０に出力されることで、該駆動回路１３０が、この監視の結果に基づき、上記モータＭを通じて上記スロットルバルブの開閉駆動をより高い信頼性の下で行うようになる。
【０１０８】
なお、このモジュール監視部１１５は、図１に示されるように、上記モニタモジュール１２０による出力を取り込む構成ともなっている。すなわち、このモジュール監視部１１５は、上記モニタモジュール１２０による出力が上記自己監視部１１３に異常がある旨、若しくは上記通信機能に異常がある旨を示したときにはその旨を記憶し、上記駆動回路１３０に対するその出力状態を的確に維持するための処理も併せ行う。
【０１０９】
図１６は、このモジュール監視部１１５によって行われる上記モニタモジュール１２０の異常判定処理についてその処理手順を示したフローチャートであり、次に同図１６を併せ参照して該モジュール監視部１１５による異常判定処理についてその構造と併せて説明する。なお、この処理は、所定期間毎に繰り返し実行される。
【０１１０】
同図１６に示されるように、この異常判定処理に際してはまず、ステップＳ３０１の処理として、上記基準カウンタ１２６のカウンタ値を、上記モニタモジュール１２０の通信部１２２及び通信部１１４を介して取得する。次いで、該取得したカウンタ値と所定のメモリに登録されている前回取得したカウンタ値とに基づき、該カウンタ値の変動量を算出し（ステップＳ３０２）、この変動量が予め設定されている許容範囲内にあるか否かの判断を行う（ステップＳ３０３）。
【０１１１】
そして、このステップＳ３０３の処理において、上記カウンタ値の変動量が予め設定されている許容範囲内にあると判断されると、次にステップＳ３０４の処理として、上記マイクロコンピュータ１１０が有する正常判定カウンタ（図示略）のカウンタ値をカウントアップする。また併せて、ステップＳ３０５の処理として、同マイクロコンピュータ１１０が有する異常判定カウンタ（図示略）のカウンタ値をクリアする。そして、こうして各カウンタ値を操作した後に、ステップＳ３０６の処理として、上記正常判定カウンタのカウンタ値が予め設定されている上限値を超えるか否かを判断する。その結果、該カウンタ値が該上限値を超えている場合には、上記モニタモジュール１２０が正常である旨の信号を上記モニタモジュール１２０に対して出力するとともに（ステップＳ３０７）、上記取得した基準カウンタ１２６のカウンタ値を所定のメモリに登録した時点で（ステップＳ３０８）、この制御を終了する。
【０１１２】
一方、上記ステップＳ３０６の処理において、上記正常判定カウンタのカウンタ値が該上限値以下である場合には、上記駆動回路１３０に対する出力を保持し、上記取得した基準カウンタ１２６のカウンタ値を上記所定のメモリに登録した時点で（ステップＳ３０８）、この制御を終了する。
【０１１３】
他方、上記ステップＳ３０３の処理において、上記カウンタ値の変動量が予め設定されている許容範囲外にあると判断された場合には、次にステップＳ３０９の処理として、上記マイクロコンピュータ１１０が有する異常判定カウンタ（図示略）のカウンタ値をカウントアップする。また併せて、ステップＳ３１０の処理として、上記マイクロコンピュータ１１０が有する正常判定カウンタ（図示略）のカウンタ値をクリアする。そして、こうして各カウンタ値を操作した後に、ステップＳ３１１の処理として、上記異常判定カウンタのカウンタ値が予め設定されている上限値を超えるか否かを判断する。その結果、該カウンタ値が該上限値を超えている場合には、上記モニタモジュール１２０が異常である旨の信号を上記モニタモジュール１２０に対して出力するとともに（ステップＳ３１２）、上記取得した基準カウンタ１２６のカウンタ値を所定のメモリに登録した時点で（ステップＳ３１２）、この制御を終了する。
【０１１４】
一方、上記ステップＳ３１１の処理において、上記異常判定カウンタのカウンタ値が該上限値以下である場合には、上記駆動回路１３０に対する出力を保持し、上記取得した基準カウンタ１２６のカウンタ値を上記所定のメモリに登録した時点で（ステップＳ３０８）、この制御を終了する。
【０１１５】
また、当該電子制御装置１００にあって、上記駆動回路１３０は、上記モータＭを通じて上記スロットルバルブの開閉駆動を行う部分である。
上述の通り、この駆動回路１３０には上記制御部１１２及び自己監視部１１３及びモジュール監視部１１５及び異常判定回路１２１からの信号が取り込まれるものの、同駆動回路１３０は基本的に、これら信号のうち、上記制御部１１２による駆動指令に基づいて上記スロットルバルブの開閉駆動を行う。ただし、上記制御部１１２による駆動指令に妥当性がない旨の信号が上記自己監視部１１３から出力された場合には、同駆動回路１３０に取り込まれる上記駆動指令としての信頼性が低い。また、上記異常判定回路１２１によって上記自己監視部１１３に異常がある旨の信号が出力された場合や、上記モジュール監視部１１５によって上記モニタモジュール１２０自体が監視不能な状態にある旨の信号が出力された場合なども同様、同駆動回路１３０に取り込まれる上記駆動指令としての信頼性は低くなる。したがって、これらいずれかの信号が入力されるときには、同駆動回路１３０は、車両の安全性を確保すべく、上記制御部１１２による駆動指令を無効として、上記スロットルバルブに対するフェールセーフ処理を行う。具体的には、上記電源端子Ｔ３を通じた上記車載バッテリによる給電を停止することにより、上記スロットルバルブをフェールセーフ状態に保持する。
【０１１６】
図１７及び図１８は、当該電子制御装置１００が行う上記スロットルバルブのフェールセーフ処理についてその処理態様をタイミングチャートとして示したものであり、次に、同図１７及び図１８を参照してこのスロットルバルブのフェールセーフ処理について総括的に説明する。なお、ここでは特に、上記モニタモジュール１２０自体が監視不能な状態にある旨の信号が上記モジュール監視部１１５によって出力された場合を想定している。
【０１１７】
いま、上記制御部１１２による上記スロットルバルブ（モータＭ）に対する制御量（駆動量）の演算処理が実行中であるとすると、上記自己監視部１１３は、所定の演算周期にて、上述したＲＯＭチェック、ＲＡＭチェック、インストラクション検査、フロー検査、システムチェックをそれぞれ実行する。そして、該自己監視部１１３による監視が終了した監視項目については、その監視が終了したことを示す監視終了フラグを、図１７（ａ）〜（ｅ）に示すように、それら５つの監視項目の別に所定のメモリに登録（セット）する。なお、上記ＲＯＭチェックの演算周期（図１７（ｅ））は、他の監視項目（図１７（ａ）〜（ｄ））と比較して遅い周期となっている。
【０１１８】
そして、こうしてセットされる各監視終了フラグに基づき、上記通信部１１４が、図１７（ｆ）〜（ｊ）に示されるように、先の図１２に例示した送信データを上記監視項目の別に上記モニタモジュール１２０に送信する。ただし上述の通り、同送信制御では、データ送信に際して他のデータの送信処理が実行中である場合にはその送信処理を遅延させるなどの適宜のタイムシェアリングが用いられる。
【０１１９】
こうして送信されたデータ（図１２）は、上記モニタモジュール１２０において、該データに付与されている識別子（ＩＤ）に基づき、その対応するディジタル回路ブロックに与えられる。そして通常は、図１８（ａ）〜（ｊ）に示されるように、その与えられたディジタル回路ブロックが有する上記データ異常カウンタ１５４、通信異常カウンタ１５７に相当する２つのカウンタの各カウンタ値をそれぞれクリアするように機能する。
【０１２０】
例えば、図１７（ｆ）に示されるように、上述のＲＡＭチェックに対応するデータが上記通信部１１４から送信されるタイミングｔ１１及びｔ２１においては、同データは、上記モニタモジュール１２０のディジタル回路ブロック１２１ｂに与えられる。したがって、このタイミングｔ１１及びｔ２１では、図１８（ａ）及び（ｆ）に示されるように、該ディジタル回路ブロック１２１ｂが有する上記データ異常カウンタ１５４に相当するカウンタと、通信異常カウンタ１５７に相当するカウンタとの各カウンタ値がそれぞれクリアされることとなる。
【０１２１】
また、図１７（ｇ）に示されるように、上述のインストラクション検査に対応するデータが上記通信部１１４から送信されるタイミングｔ１２及びｔ２２においては、同データが、上記モニタモジュール１２０のディジタル回路ブロック１２１ｃに与えられる。したがって、このタイミングｔ１２及びｔ２２では、図１８（ｂ）及び図１８（ｇ）に示されるように、該ディジタル回路ブロック１２１ｃが有する上記データ異常カウンタ１５４に相当するカウンタと、通信異常カウンタ１５７に相当するカウンタとの各カウンタ値がそれぞれクリアされることとなる。
【０１２２】
また、図１７（ｈ）に示されるように、上述のフロー検査に対応するデータが上記通信部１１４から送信されるタイミングｔ１３及びｔ２３においては、同データが、上記モニタモジュール１２０のディジタル回路ブロック１２１ｄに与えられる。したがって、このタイミングｔ１３及びｔ２３では、図１８（ｃ）及び図１８（ｈ）に示されるように、該ディジタル回路ブロック１２１ｄが有する上記データ異常カウンタ１５４に相当するカウンタと、通信異常カウンタ１５７に相当するカウンタとの各カウンタ値がそれぞれクリアされることとなる。
【０１２３】
また、図１７（ｉ）に示されるように、上述のシステムチェックに対応するデータが上記通信部１１４から送信されるタイミングｔ１４及びｔ２４においては、同データが、上記モニタモジュール１２０のディジタル回路ブロック１２１ｅに与えられる。したがって、このタイミングｔ１４及びｔ２４では、図１８（ｄ）及び図１８（ｉ）に示されるように、該ディジタル回路ブロック１２１ｅが有する上記データ異常カウンタ１５４に相当するカウンタと、通信異常カウンタ１５７に相当するカウンタとの各カウンタ値がそれぞれクリアされることとなる。
【０１２４】
また、図１７（ｊ）に示されるように、上述のＲＯＭチェックに対応するデータが上記通信部１１４から送信されるタイミングｔ２５においては、同データが、上記モニタモジュール１２０のディジタル回路ブロック１２１ａに与えられる。したがって、このタイミングｔ２５では、図１８（ｅ）及び図１８（ｊ）に示されるように、該ディジタル回路ブロック１２１ａが有する上記データ異常カウンタ１５４と、通信異常カウンタ１５７との各カウンタ値がそれぞれクリアされることとなる。
【０１２５】
そして上述の通り、このように推移するカウンタ値を出力する上記モニタモジュール１２０に対し、上記モジュール監視部１１５は、上記基準カウンタ１２６のカウンタ値（図１８（ｋ））を監視することによって、同モニタモジュール１２０自体が監視不能な状態にあるか否かを判定する。
【０１２６】
具体的には、図１８（ｌ）及び（ｍ）及び（ｎ）に示すように、上記基準カウンタ１２６によるカウンタ値を所定期間毎に取得するとともに前回取得したカウンタ値からの変動量を監視する。そして、その変動量が予め設定された許容範囲外となるタイミングｔ１００以降は、上記ディジタル回路ブロック１２１ａ〜１２１ｅが有する上記データ異常カウンタ１５４、通信異常カウンタ１５７に相当する各カウンタ（図１８（ａ）〜（ｊ））に異常があるとして、上記マイクロコンピュータ１１０が内蔵する異常判定カウンタのカウンタ値をカウントアップする。そしてその結果、そのカウンタ値が上限値を超えるタイミングｔ２００になると、同モジュール監視部１１５は、上記モニタモジュール１２０自体が監視不能な状態にあると判定してその旨を示す信号を上記駆動回路１３０に出力する。そして、該信号を受けた該駆動回路１３０が、上記車載バッテリによる給電を停止することにより上記スロットルバルブをフェールセーフ状態に保持する。すなわち、当該電子制御装置１００では、上記駆動回路１３０に対する給電が停止されるときに、上記スロットルバルブが自ずとフェールセーフ状態に保持されるようになる。
【０１２７】
以上説明したように、この実施の形態にかかる電子制御装置によれば、以下に記載するような多くの優れた効果が得られるようになる。
（１）マイクロコンピュータ１１０が、上記自己監視部１１３による上記制御部１１２の監視と並行して、その監視対象となる内容に応じて演算した値である演算結果と該演算結果として本来得られるべき値である期待値とを上記モニタモジュール１２０に送信することとした。また、モニタモジュール１２０が、該送信される演算結果とその期待値との比較に基づいて上記自己監視部１１３が適正に機能しているか否かを監視することとした。このため、モニタモジュール１２０を通じて自己監視部１１３を監視する当該マイクロコンピュータ１１０として、それら監視状態を適正に維持して、車載アクチュエータ（スロットルバルブ）の駆動制御にかかる信頼性のさらなる向上を図ることができるようになる。
【０１２８】
（２）上記モニタモジュール１２０が、上記送信される演算結果とその期待値との比較の結果、それら両者が不一致となっている期間が所定の判定期間を超えることに基づいて上記自己監視部１１３が適正に機能していない旨を判定するようにした。このため、上記自己監視部１１３を適切に監視することができるようになる。
【０１２９】
（３）上記モニタモジュール１２０が、上記送信される演算結果とその期待値とが受信されない期間が所定の判定期間を超えることに基づいて上記マイクロコンピュータ１１０との通信機能が適正に機能していない旨を判定するようにした。このため、上記自己監視部１１３をより適切に監視することができるようになる。
【０１３０】
（４）上記モジュール監視部１１５が、上記モニタモジュール１２０の基準カウンタ１２６によるカウンタ値を監視するようにした。このため、上記モニタモジュール１２０のデータ異常カウンタや通信異常カウンタのいわば擬似的な監視を通じて、同モニタモジュール１２０自体が監視不能な状態にあるか否かの判定を行うことができるようになる。
【０１３１】
（５）上記モジュール監視部１１５は、上記基準カウンタ１２６によるカウンタ値を定期的に取り込み、該取り込んだカウンタ値の変化しない期間が所定の判定期間を超えることに基づいて上記モニタモジュール１２０が適正に機能していない旨を判定するようにした。このため、同モニタモジュール１２０をより適切に監視することができるようになる。
【０１３２】
（６）上記モニタモジュール１２０として、上記自己監視部１１３によって実施される５つの監視項目（ＲＯＭチェック、ＲＡＭチェック、インストラクション検査、フロー検査、システムチェック）にそれぞれ対応した複数のディジタル回路ブロック１２１ａ〜１２１ｅを一体に有するものを採用することとした。そして、上記送信される演算結果とその期待値とを上記識別子に基づき分類して各対応するディジタル回路ブロック１２１ａ〜１２１ｅに与えつつ、それら各ディジタル回路ブロック１２１ａ〜１２１ｅにて各別に上記演算結果とその期待値との比較に基づく監視を行うようにした。このため、上記５つの監視項目毎に、上記自己監視部１１３の適否を監視することができるようになる。
（第２の実施の形態）
次に、この発明にかかる電子制御装置についてその第２の実施の形態を示す。なお、この実施の形態の電子制御装置も、先の第１の実施の形態の電子制御装置（図１）とほぼ同様、スロットルバルブを駆動するモータの駆動制御を行う装置として、大きくは、マイクロコンピュータと、モニタモジュールと、駆動回路とを備えて構成されている。また、このような電子制御装置として、
・上記モニタモジュールによる監視に際しては、マイクロコンピュータの監視機能がまず、上記制御機能の監視（自己監視）を実施する。
且つ、
・上記監視機能による監視が実施されたとき、上記マイクロコンピュータが、その監視対象となる内容に応じて演算された値である演算結果と該演算結果として本来得られるべき値である期待値とをモニタモジュールに送信する。
且つ、
・上記モニタモジュールが、上記マイクロコンピュータから送信される演算結果とその期待値との比較に基づき上記マイクロコンピュータの監視機能が適正に機能しているか否かを監視する。
といった監視構造を採用している点についても、先の第１の実施の形態の場合とほぼ同様である。
【０１３３】
ただし、この実施の形態では、図１９に示されるように、マイクロコンピュータ２１０の通信部２１４が、自己監視部１１３によって実行される上述の５つの監視項目をそれらの監視態様の別に３つに分類し、該分類した監視態様の別に上記演算結果及びその期待値を送信するようにしている。また、モニタモジュール２２０は、上記分類された監視項目の別に上記自己監視部１１３の異常の有無を監視すべく、異常判定回路２２１として、３つのディジタル回路ブロック２２１ａ〜２２１ｃを備えるようにしている。このような構成では、監視態様の共通する監視項目に対応した演算結果及びその期待値については、上記モニタモジュール２２０が、上記ディジタル回路ブロック２２１ａ〜２２１ｃの１つを共用して該当する演算結果とその期待値との比較に基づく監視を行うようになる。このため、多くの監視機能を備えるモニタモジュール２２０を専用のディジタル回路によって実現する場合であれ、その回路規模の好適な抑制を図ることができるようになる。またこれにより、モニタモジュール２２０の製造コストの低減が図られるようにもなる。
【０１３４】
ここで具体的には、この実施の形態の通信部２１４は、上記自己監視部１１３によって実行される上述の５つの監視項目をその比較態様の別に、すなわち一致比較を用いるＲＯＭチェック、ＲＡＭチェック、インストラクション検査、フロー検査と、大小比較を用いるシステムチェックとに分類している。また、一致比較を用いる点で監視態様が共通する４つの監視項目については、その演算周期の相対的に短い監視項目（ＲＡＭチェック、インストラクション検査、フロー検査）と、演算周期の相対的に長い監視項目（ＲＯＭチェック）とにさらに分類している。そして、同通信部２１４は、こうした分類に基づき上記演算結果及びその期待値を上記モニタモジュール２２０に送信するようにしている。
【０１３５】
これに対し、上記モニタモジュール２２０は、上記送信される演算結果及びその期待値を相対的に短い演算周期で一致比較するブロックとしてディジタル回路ブロック２２１ａを備えている。また、同モニタモジュール２２０は、上記送信される演算結果及びその期待値を相対的に長い演算周期で一致比較するブロックとしてディジタル回路ブロック２２１ｂを、上記送信される演算結果及びその期待値を大小比較するブロックとしてディジタル回路ブロック２２１ｃをそれぞれ備えている。なお、上記自己監視部１１３の監視に一致比較を用いるディジタル回路ブロック２２１ａ及び２２１ｂの各回路構成は、先の図１３に例示したディジタル回路ブロック１２１ａとほぼ同様であり、同監視に大小比較を用いるディジタル回路ブロック２２１ｃの回路構成は、先の第１の実施の形態のディジタル回路ブロック１２１ｅとほぼ同様である。
【０１３６】
このような構成では、演算周期の相対的に短い監視項目（ＲＡＭチェック、インストラクション検査、フロー検査）については、ブロック切替部２２３がその対応する演算結果とその期待値とを上記ディジタル回路ブロック２２１ａに与え、このブロック２２１ａを共用してそれらの一致比較を行うようになる。このため、モニタモジュール２２０の回路規模の好適な抑制を図ることができるようになる。
【０１３７】
また、演算周期の相対的に長い監視項目（ＲＯＭチェック）については、ブロック切替部２２３がその対応する演算結果とその期待値とを上記ディジタル回路ブロック２２１ｂに与えてそれらの一致比較を行うようになる。このため、演算周期の相対的に長い監視項目の適正性の監視によって、演算周期の相対的に短い監視項目の適正性の監視が妨げられるようなこともなくなり、自己監視部１１３の異常をより早期に検出、判定することができるようになる。
【０１３８】
なおこの場合、大小比較が用いられる上記システムチェックについては、ブロック切替部２２３がその対応する演算結果とその期待値とを上記ディジタル回路ブロック２２１ｃに与えてそれらの大小比較を行うこととなる。
【０１３９】
また、この実施の形態では、一致比較を用いるとともに相対的に処理速度の早い先の図３〜図５にそれぞれ例示したＲＡＭチェック、インストラクション検査、フロー検査に対応する演算結果とその期待値との送信処理に際しては、上記通信部２１４がまず、それら監視項目の実行に用いられる各演算結果の合算値を得る。そして、その合算値と該合算値として本来得られるべき値として予めメモリ等に登録されている期待値とを上記モニタモジュール２２０の通信部２２２に送信する。そして、モニタモジュール２２０において、上記ブロック切替部２２３が、これら送信される合算値とその期待値とを上記ディジタル回路ブロック２２１ａに与えて一致比較することにより、それら３つの監視項目が上記自己監視部１１３によって適正に実行されたか否かを一括して監視するようにしている。
【０１４０】
図２０は、マイクロコンピュータ２１０の通信部２１４によって行われるそれら３つの監視項目の実行に用いられた演算結果の合算値とその期待値の送信処理をフローチャートとして示したものである。なお、この送信処理は、所定期間ごとに繰り返し実行される。
【０１４１】
同図２０に示されるように、この送信処理に際しては、上記通信部２１４がまず、上記ＲＡＭチェックが終了したことを示す監視終了フラグが上記自己監視部１１３によってセットされているか否かを確認する（ステップＳ４０１）。その結果、同監視終了フラグがセットされている場合には、該ＲＡＭチェックが既に終了しているとして、次にステップＳ４０２の処理に移行する。
【０１４２】
このステップＳ４０２の処理では、先の図３に例示した演算結果（データＲＡＭの記憶値）を所定のメモリから読み出し、上記モニタモジュール２２０に送信する演算結果として上記マイクロコンピュータ２１０が内蔵するレジスタ（図示略）にセット（更新）する。そしてその後に、ステップＳ４０３の処理として、ＲＡＭチェックが終了したことを示す監視終了フラグをリセット（クリア）する。
【０１４３】
そして次に、ステップＳ４０４の処理として、インストラクション検査が終了したことを示す監視終了フラグが上記自己監視部１１３によってセットされているか否かを確認する。その結果、該監視終了フラグがセットされている場合には、次いで、ステップＳ４０５の処理として、先の図４に例示した演算結果（シミュレーション用データの演算値）を所定のメモリから読み出す。そして、該演算結果と上記モニタモジュール１２０への送信データとして上記レジスタにセットされている演算結果とを加算するかたちで同レジスタに格納されているデータを更新記憶する。そしてその後に、ステップＳ４０６の処理として、インストラクション検査が終了したことを示す監視終了フラグをリセット（クリア）する。
【０１４４】
そして次に、ステップＳ４０７の処理として、フロー検査が終了したことを示す監視終了フラグが上記自己監視部１１３によってセットされているか否かを確認する。そしてその結果、該監視終了フラグがセットされている場合には、次いで、ステップＳ４０８の処理として、先の図５に例示した演算結果（カウンタ値）を所定のメモリから読み出す。そして、該演算結果と上記モニタモジュール１２０への送信データとして上記レジスタにセットされている演算結果とを加算するかたちで該レジスタに格納されているデータを更新記憶する。そしてその後に、ステップＳ４０９の処理として、フロー検査が終了したことを示す監視終了フラグをリセット（クリア）する。
【０１４５】
そして、こうしたステップＳ４０１〜Ｓ４０９の処理の後に、ステップＳ４１０の処理として、上記レジスタにセットされている３つの演算結果の合算値に、その合算値として本来得られるべき値としてメモリ等に予め格納されている期待値とその識別子（ＩＤ）とを付与して、先の図１２に例示したデータ構造の送信データを作成する。そして、次のステップＳ４１１の処理において、こうして作成した送信データを例えばシリアル通信やパラレル通信にて上記モニタモジュール２２０の通信部２２２に送信する。
【０１４６】
ただし、上記ステップＳ４０１、Ｓ４０４、Ｓ４０７のいずれかの処理において、各対応する監視終了フラグがセットされていない場合には、上記ステップＳ４１０の処理において、上記演算結果（合算値）とその合算値としての期待値とが一致しないかたちで上記送信データが作成される。そして、次のステップＳ４１１の処理において、こうしたデータが上記モニタモジュール２２０の通信部２２２に送信されることで、このモニタモジュール２２０が、その旨を示す信号をＯＲ回路２２４を通じて上記駆動回路１３０に出力することとなる。
【０１４７】
こうした送信処理では、上記送信される合算値と期待値との一致比較に基づき、上記モニタモジュール２２０が、上述の３つの監視項目（ＲＡＭチェック、インストラクション検査、フロー検査）が上記自己監視部１１３によって適正に実行されたか否かを一括して監視することとなる。このため、モニタモジュール１２０にかかる演算負荷の低減とその回路規模のより好適な抑制とを併せて図ることができるようになる。
【０１４８】
なお、上記ＲＯＭチェックの実行に用いられた先の図２に例示した演算結果（ＲＯＭサム値）とその期待値（例えば「５ＡＡ５」）との送信処理は、先の図７に例示した手順に準じたかたちで行われる。また、上記システムチェックの実行に用いられた先の図６に例示した演算結果（デューティ値）とその期待値（上限値「ｘ％」）との送信処理は、先の図１１に例示した手順に準じたかたちで行われる。
【０１４９】
以上説明したように、この第２の実施の形態にかかる電子制御装置によっても、基本的には先の第１の実施の形態の前記（１）〜（５）の効果と同等、あるいはそれに準じた効果を得ることができるとともに、以下の効果を新たに得ることができるようになる。
【０１５０】
（７）モニタモジュール２２０は、演算周期が相対的に長く、且つ、その実行に一致比較を用いる３つの監視項目については、上記ディジタル回路ブロック２２１ａを共用することによりそれら監視項目が上記自己監視部１１３によって適正に実行されたか否かを監視することとした。このため、モニタモジュール２２０の回路規模の好適な抑制とともにその製造コストの低減を図ることができるようになる。
【０１５１】
（８）マイクロコンピュータ２１０の通信部２１４は、演算周期が相対的に長く、且つ、その実行に一致比較を用いる３つの監視項目についてはそれら監視項目にて用いられた各演算結果の合算値を得ることとした。そして、その合算値と該合算値として本来得られるべき値として予めメモリ等に登録されている期待値とを上記モニタモジュール２２０の通信部２２２に送信することとした。そして、モニタモジュール２２０において、こうした合算値とその期待値とを上記ディジタル回路ブロック２２１ａにて一致比較することにより、それら監視項目が上記自己監視部１１３によって適正に実行されたか否かを一括して監視することとした。このため、モニタモジュール２２０にかかる演算負荷の低減とその回路規模のより好適な抑制とを併せて図ることができるようになる。
【０１５２】
（９）その実行に一致比較を用いる４つの監視項目については、演算周期の相対的に短い監視対象と、演算周期の相対的に長い監視対象とにさらに分類することとした。そしてこうした分類に基づき、相対的に演算周期の短い監視項目の実行に用いられた演算結果とその期待値との一致比較を行うディジタル回路ブロック（高速用ブロック）２２１ａ、及び相対的に演算周期の長い監視対象の実行に用いられた演算結果とその期待値との一致比較を行うディジタル回路ブロック（低速用ブロック）２２１ｂを用意することとした。このため、自己監視部１１３の異常をより早期に検出、判定することができるようになる。
（他の実施の形態）
なお、上記各実施の形態は、以下のように変更して実施することもできる。
【０１５３】
・第２の実施の形態では、演算周期が相対的に長く、且つ、その実行に一致比較を用いる３つの監視項目が上記自己監視部１１３によって適正に実行されたか否かの監視を、それら監視項目の別に実施するようにしてもよい。なおこの場合、通信部２１４では、それら監視項目の実行に用いられた各演算結果とその期待値とを、適宜のタイムシェアリングによって、上記モニタモジュール２２０に各別に送信することとなる。
【０１５４】
・第２の実施の形態では、その実行に一致比較を用いる４つの監視項目について、１つのディジタル回路ブロックを共用して該当する演算結果とその期待値との一致比較を行うようにすることも可能である。このような場合、相対的に遅い演算周期の監視項目の監視によって、相対的に早い演算周期の監視項目の監視が妨げられる懸念があるものの、その回路規模のより好適な抑制を図ることができるようになる。
【０１５５】
・自己監視部１１３によって実行される監視項目として、５つの監視項目を例示したが、その内容や項目数については任意である。例えば、その実行に一致比較を用いる複数の監視項目のみを上記自己監視部１１３が実行するようにしてもよい。このような場合であれ、演算周期の近似する監視項目ごとに上記ディジタル回路ブロックを用意するようにすれば、監視対象の異常をより早期に検出、判定することができるようになる。また、ディジタル回路ブロックにて上記マイクロコンピュータから送信される演算結果の合算値とその期待値とを一致比較するようにすれば、モニタモジュールにかかる演算負荷の低減を図ることができるようになる。
【０１５６】
・モジュール監視部１１５は、取り込んだ基準カウンタ１２６のカウンタ値に変化がなかった時点で、モニタモジュールが適正に機能していない旨を判定するようにしてもよい。
【０１５７】
・モニタモジュールは、演算結果とその期待値とを定期的に受信するものであり、その受信がなかった時点で、マイクロコンピュータとの通信機能が適正に機能していない旨を判定するようにしてもよい。
【０１５８】
・モニタモジュールは、演算結果とその期待値との一致比較の結果、それら両者が不一致となった時点で、上記マイクロコンピュータの監視機能が適正に機能していない旨を判定するようにしてもよい。
【０１５９】
・マイクロコンピュータが、自己監視部１１３による制御部１１２の監視と並行して監視対象となる内容に応じた演算結果をモニタモジュールに送信し、モニタモジュールが、この送信される演算結果として本来得られるべき値である期待値を予め保持するようにしてもよい。ただしこの場合、図２１に示すように、モニタモジュールのディジタル回路ブロック３２１は、図１３に例示したＢレジスタ１５２に代えて、期待値が予め固定値として保持される期待値レジスタ３５２を備えることとなる。そして、該ディジタル回路ブロック３２１の第１の比較器３５３において、Ａレジスタ１５１に格納される演算結果と期待値レジスタ３５２に保持されている期待値との比較を行うこととなる。このような場合であれ、上記自己監視部１１３による制御部１１２の監視と並行して、自己監視部１１３が適正に機能しているか否かを監視することはできる。ただし、このような場合には、例えば上記第２の実施の形態のように、演算結果が予め登録されている期待値に見合う値となるように監視対象となる内容に応じた演算結果を操作し、この操作した値を演算結果としてモニタモジュールに送信するようにすることが望ましいことが多い。
【０１６０】
・上記自己監視部１１３による制御部１１２の監視と並行して、自己監視部１１３が適正に機能しているか否かを監視する電子制御装置であれば、上記通信機能が適正か否かの判断や、モジュール監視部１１５によるモニタモジュール１２０の異常判定については、必ずしも行わなくてもよい。
【０１６１】
・監視対象としては、機関の運転状態とともに演算結果の値がその都度変化する監視対象等、適宜の対象を設定することができる。
【図面の簡単な説明】
【０１６２】
【図１】この発明の第１の実施の形態にかかる電子制御装置について、制御対象となるモータとの関係も含め、その全体構成を示すブロック図。
【図２】同実施の形態の自己監視部によって行われるＲＯＭチェックの具体態様について示すブロック図。
【図３】（ａ）及び（ｂ）は、同実施の形態の自己監視部によって行われるＲＡＭチェックの具体態様について示すブロック図。
【図４】同実施の形態の自己監視部によって行われるインストラクション検査の具体態様について示すブロック図。
【図５】同実施の形態の自己監視部によって行われるフロー検査の具体態様について示すブロック図。
【図６】同実施の形態の自己監視部によって行われるシステムチェックの具体態様について示すブロック図。
【図７】ＲＯＭチェックが実施されるときに演算された値である演算結果及びその期待値の送信処理を示すフローチャート。
【図８】ＲＡＭチェックが実施されるときに演算された値である演算結果及びその期待値の送信処理を示すフローチャート。
【図９】インストラクション検査が実施されるときに演算された値である演算結果及びその期待値の送信処理を示すフローチャート。
【図１０】フロー検査が実施されるときに演算された値である演算結果及びその期待値の送信処理を示すフローチャート。
【図１１】システムチェックが実施されるときに演算された値である演算結果及びその期待値の送信処理を示すフローチャート。
【図１２】同実施の形態のマイクロコンピュータの通信部が送信するデータのデータ構造。
【図１３】同実施の形態のモニタモジュール（ディジタル回路ブロック）についてその内部構造を示すブロック図。
【図１４】一致比較を用いて監視するディジタル回路ブロックによって行われる自己監視部の異常判定処理についてその処理手順を示すフローチャート。
【図１５】大小比較を用いて監視するディジタル回路ブロックによって行われる自己監視部の異常判定処理についてその処理手順を示すフローチャート。
【図１６】同実施の形態のモジュール監視部によって行われるモニタモジュールの異常判定処理についてその処理手順を示すフローチャート。
【図１７】（ａ）〜（ｊ）は、当該電子制御装置が行うスロットルバルブのフェールセーフ処理についてその処理態様を示すタイミングチャート。
【図１８】（ａ）〜（ｎ）は、当該電子制御装置が行うスロットルバルブのフェールセーフ処理についてその処理態様を示すタイミングチャート。
【図１９】この発明の第２の実施の形態にかかる電子制御装置について、制御対象となるモータとの関係も含め、その全体構成を示すブロック図。
【図２０】ＲＡＭチェック、インストラクション検査、フロー検査の各実行に用いられた演算結果の合算値とその期待値の送信処理を示すフローチャート。
【図２１】ディジタル回路ブロックの別例を示すブロック図。
【図２２】従来の電子制御装置についてその全体構成を示すブロック図。
【符号の説明】
【０１６３】
１００…電子制御装置、１１０、２１０…マイクロコンピュータ、１１１…入力部、１１２…制御部、１１２１…プログラムメモリ、１１２２…データＲＡＭ、１１２ａ〜１１２ｆ…領域、１１３…自己監視部、１１４、１２２、２１４、２２２…通信部、１１５…モジュール監視部、１２０、２２０…モニタモジュール、１２１、２２１…異常判定回路、１２１ａ〜１２１ｅ、２２１ａ〜２２１ｃ、３２１…ディジタル回路ブロック、１２３、２２３…ブロック切替部、１２４、２２４…ＯＲ回路、１２５…クロック発生器、１２６…基準カウンタ、１３０…駆動回路、１５１…Ａレジスタ、１５２…Ｂレジスタ、１５３、３５３…第１の比較器、１５４…データ異常カウンタ、１５５、１５８…メモリ、１５６…第２の比較器、１５７…通信異常カウンタ、１５９…第３の比較器、３５２…期待値レジスタ、Ｔ１、Ｔ２…出力端子、Ｔ３…電源端子、Ｔ４…接地端子、Ｍ…モータ。
【図１】
0004396588.tif 000002
【図２】
0004396588.tif 000003
【図３】
0004396588.tif 000004
【図４】
0004396588.tif 000005
【図５】
0004396588.tif 000006
【図６】
0004396588.tif 000007
【図７】
0004396588.tif 000008
【図８】
0004396588.tif 000009
【図９】
0004396588.tif 000010
【図１０】
0004396588.tif 000011
【図１１】
0004396588.tif 000012
【図１２】
0004396588.tif 000013
【図１３】
0004396588.tif 000014
【図１４】
0004396588.tif 000015
【図１５】
0004396588.tif 000016
【図１６】
0004396588.tif 000017
【図１７】
0004396588.tif 000018
【図１８】
0004396588.tif 000019
【図１９】
0004396588.tif 000020
【図２０】
0004396588.tif 000021
【図２１】
0004396588.tif 000022
【図２２】
0004396588.tif 000023