(57)【要約】【課題】マイクロコンピュータのＣＰＵが動作している間のマイクロコンピュータの異常を確実に監視することのできる電子制御装置、及び異常監視方法を提供する。【解決手段】マイクロコンピュータ１１と、異常監視を許可または禁止する監視制御信号により異常監視が許可されているときに、マイクロコンピュータ１１から出力されるパルス信号に基づいてマイクロコンピュータ１１の異常を検出する異常監視回路１３とを備えている電子制御装置１０であって、マイクロコンピュータ１１のＣＰＵ１１１の動作を停止させる制御信号の出力状態に応じて監視制御信号の出力状態を切り替える監視制御回路１１４を、マイクロコンピュータ１１に備えている。【選択図】図４
2010224759.tif 000002
【特許請求の範囲】
【請求項１】
マイクロコンピュータと、前記マイクロコンピュータから出力される異常監視を許可または禁止する監視制御信号により異常監視が許可されているときに、前記マイクロコンピュータから出力されるパルス信号に基づいて前記マイクロコンピュータの異常を検出する異常監視回路とを備えている電子制御装置であって、
前記マイクロコンピュータは、前記パルス信号の出力制御を行なうとともに、自身をストップ状態に移行させるための制御信号の出力制御を行なうＣＰＵと、前記制御信号の出力状態に応じて前記監視制御信号の出力状態を切り替える監視制御回路とを備えていることを特徴とする電子制御装置。
【請求項２】
前記制御信号が前記ＣＰＵによりストップ命令が実行されたときに切り替わる信号であり、前記監視制御回路は当該信号の切り替わりに応じて異常監視を禁止するように前記監視制御信号を切り替えることを特徴とする請求項１記載の電子制御装置。
【請求項３】
前記制御信号が前記ＣＰＵをストップモードから動作モードに切り替えるウェイクアップ信号に基づいて切り替わる信号であり、前記監視制御回路は当該信号の切り替わりに応じて異常監視を許可するように前記監視制御信号を切り替えることを特徴とする請求項１または２記載の電子制御装置。
【請求項４】
前記制御信号が、前記ＣＰＵによるストップ命令の実行時に生成されるストップ信号に基づいてＣＰＵクロックを停止し、前記ＣＰＵをストップモードから動作モードに切り替えるウェイクアップ信号に基づいて前記ＣＰＵクロックを出力するように制御するクロック制御回路から出力されるクロック制御信号であることを特徴とする請求項２または３記載の電子制御装置。
【請求項５】
前記制御信号が前記ＣＰＵにより低消費電力駆動命令が実行されたときに切り替わる信号であり、前記監視制御回路は当該信号の切り替わりに応じて異常監視を禁止するように前記監視制御信号を切り替えることを特徴とする請求項１から４の何れかに記載の電子制御装置。
【請求項６】
前記監視制御信号が出力されるポートがポートモードを設定するモード設定レジスタを備えた汎用入出力ポートで構成され、前記マイクロコンピュータのリセット時に前記モード設定レジスタによるポートモードが設定されるまでの間、ハイインピーダンスとなるように設定されていることを特徴とする請求項１から６の何れかに記載の電子制御装置。
【請求項７】
前記モード設定レジスタの値の変更を禁止するプロテクトレジスタを備えている請求項６記載の電子制御装置。
【請求項８】
前記監視制御信号が出力されるポートの信号レベルを入力する入力回路を前記ポートに設けていることを特徴とする請求項６または７記載の電子制御装置。
【請求項９】
前記監視制御信号が禁止状態から許可状態に切り替わるときに、前記監視制御信号を遅延させる遅延回路を、前記監視制御信号の信号線に設けていることを特徴とする請求項１から８の何れかに記載の電子制御装置。
【請求項１０】
マイクロコンピュータから出力される異常監視を許可または禁止する監視制御信号により異常監視が許可されているときに、前記マイクロコンピュータから出力されるパルス信号に基づいて前記マイクロコンピュータの異常を検出する異常監視方法であって、
前記マイクロコンピュータのＣＰＵから出力され、自身をストップ状態に移行させるための制御信号の出力状態に連動して前記監視制御信号の出力状態を切り替える異常監視方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マイクロコンピュータと、異常監視を許可または禁止する監視制御信号により異常監視が許可されているときに、前記マイクロコンピュータから出力されるパルス信号に基づいて前記マイクロコンピュータの異常を検出する異常監視回路とを備えている電子制御装置、及び異常監視方法に関する。
【背景技術】
【０００２】
一般に、電子機器はマイクロコンピュータにより制御されている。そして、高い安全性が要求される電子機器、例えば車両に搭載される電子制御装置（以下、ＥＣＵ（Electric Control Unit）と記す。）では、ノイズ等の影響によりマイクロコンピュータが暴走したり回路が破損して正常に動作しなくなる万一の事態に備えて、通常、マイクロコンピュータの外部にマイクロコンピュータの異常監視装置を設けていることが多い。
【０００３】
異常監視装置は、マイクロコンピュータから出力されるパルス信号をモニタしておき、当該パルス信号の異常監視装置への入力が所定期間途切れると、マイクロコンピュータにソフトウェア暴走等の異常が発生していると判断して、マイクロコンピュータに対してリセット信号を出力する。
【０００４】
ところで、車両には複数のＥＣＵが搭載されており、これらＥＣＵには、イグニッションスイッチがオンの場合にのみ給電されるＥＣＵと、イグニッションスイッチのオンオフにかかわらず常時給電されるＥＣＵがある。これらＥＣＵは、単数または複数のネットワーク、例えばＣＡＮ（Controller Area Network）バスやＬＩＮ（Local Interconnect Network）バス等で相互接続されている。
【０００５】
イグニッションスイッチがオンの場合にのみ給電されるＥＣＵとしては、エンジンを制御するＥＣＵやブレーキを制御するＥＣＵ等があり、イグニッションスイッチのオンオフにかかわらず常時給電されているＥＣＵとしては、複数のネットワーク同士を接続するために各ネットワークで異なるプロトコルの変換を行なうゲートウェイＥＣＵ、ドアロック制御用のＥＣＵ、及び盗難防止等のセキュリティを管理するＥＣＵ等がある。
【０００６】
そして、イグニッションスイッチのオンオフにかかわらず常時給電されているＥＣＵは、イグニッションスイッチがオフの場合には、マイクロコンピュータを待機状態へ移行させ、イグニッションスイッチがオンになった場合やＣＡＮバスを介してフレームの受信があった等の割込み発生時等にのみ、マイクロコンピュータをウェイクアップして動作させることが、省電力化のために有効である。
【０００７】
マイクロコンピュータが移行する待機状態にはいくつかの種類があり、例えば、ＣＰＵの動作クロックを停止させるモードがある。このようなモードに移行した場合、マイクロコンピュータはパルス信号を出力できなくなる。すると、異常監視装置は、待機状態のマイクロコンピュータからのパルス信号が所定期間途切れたことによって、マイクロコンピュータに異常が発生したと誤判断してしまう虞がある。
【０００８】
このような誤判断を防止するため、マイクロコンピュータは、待機状態へ移行する際、異常監視装置に対してマイクロコンピュータの異常監視を禁止する信号（監視禁止信号）を出力した後で、待機状態への移行処理を実行していた。ここで、待機状態への移行処理は、例えば、マイクロコンピュータに備えられた発振回路を停止させる命令の実行である。
【０００９】
また、マイクロコンピュータは、待機状態から復帰する際、待機状態からの復帰処理を実行した後で、異常監視装置に対してマイクロコンピュータの異常監視を許可する信号（監視許可信号）を出力していた。ここで、待機状態からの復帰処理は、例えば、復帰後の割込みを禁止する処理や、クロックが正常に発振するまでの遅延期間を設ける処理である。
【００１０】
尚、特許文献１には、マイクロコンピュータからのパルス出力が所定の時間条件を満たさない時にマイクロコンピュータの異常として検出するウォッチドッグタイマ方式の異常監視装置が開示されている。当該異常監視装置は、監視動作の動作／停止を制御するＷＤＴ監視部を備えており、マイクロコンピュータをスタンバイ状態に移行させるスタンバイ信号を、マイクロコンピュータの監視動作の動作／停止を指示する異常監視指示信号としてＷＤＴ監視部に入力し、ＷＤＴ監視部はこの異常監視指示信号によりその動作／停止を制御する。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特開２００４−３２６６２９号公報
【発明の概要】
【発明が解決しようとする課題】
【００１２】
しかし、マイクロコンピュータは、監視禁止信号の出力や待機状態への移行処理、及び、待機状態の復帰や監視許可信号の出力処理を、ＣＰＵがメモリに記憶された制御プログラムを実行することで、つまりソフトウェアで行っていた。よって、図１（ａ）に示すように、監視禁止信号の出力から待機状態への移行まで、及び、待機状態からの復帰から監視許可信号の出力までに、所定期間のタイムラグｔ１、ｔ２が生じてしまう虞があった。
【００１３】
そして、所定期間ｔ１、ｔ２にマイクロコンピュータに異常が生じた場合、所定期間ｔ１、ｔ２では異常監視装置は異常監視を禁止されているため、マイクロコンピュータに異常が発生していると判断することができなかった。つまり、従来の異常監視装置では、マイクロコンピュータの異常を監視することができない期間が存在していた。
【００１４】
また、特許文献１に記載された異常監視装置では、異常監視指示信号はマイクロコンピュータを介することなくＷＤＴ監視部に入力されているが、監視動作の停止を指示する異常監視指示信号がＷＤＴ監視部に入力すると同時にＣＰＵが停止するわけではないため、ＣＰＵが動作しているにもかかわらずマイクロコンピュータの異常を監視することができない期間が存在することは変わらない。
【００１５】
尚、特許文献１には、スタンバイ状態であってもマイクロコンピュータの異常動作を監視できる異常監視装置も開示されているが、このような異常監視装置では、マイクロコンピュータが異常動作する可能性が極めて少ないスタンバイ状態であっても、電力消費を考慮しているとはいえ異常監視は実行されているため、異常監視を禁止することに比べると省電力化を図ることができない。
【００１６】
本発明の目的は、上述した従来の問題点に鑑み、マイクロコンピュータのＣＰＵが動作している間のマイクロコンピュータの異常を確実に監視することのできる電子制御装置、及び異常監視方法を提供する点にある。
【課題を解決するための手段】
【００１７】
上述の目的を達成するため、本発明による電子制御装置の特徴構成は、マイクロコンピュータと、前記マイクロコンピュータから出力される異常監視を許可または禁止する監視制御信号により異常監視が許可されているときに、前記マイクロコンピュータから出力されるパルス信号に基づいて前記マイクロコンピュータの異常を検出する異常監視回路とを備えている電子制御装置であって、前記マイクロコンピュータは、前記パルス信号の出力制御を行なうとともに、自身をストップ状態に移行させるための制御信号の出力制御を行なうＣＰＵと、前記制御信号の出力状態に応じて前記監視制御信号の出力状態を切り替える監視制御回路とを備えている点にある。
【００１８】
上述の構成によれば、監視制御回路は、制御信号の出力状態がＣＰＵの停止を示す状態となったときに、監視制御信号の出力状態を異常監視を禁止する状態とすることによって、ＣＰＵの動作及び停止と監視制御信号の出力状態とを同時に切り替えることができるので、図１（ｂ）に示すように、監視禁止信号の出力と待機状態への移行まで、及び、待機状態からの復帰と監視許可信号の出力までに、タイムラグが生じることがない。
【発明の効果】
【００１９】
以上説明した通り、本発明によれば、マイクロコンピュータのＣＰＵが動作している間のマイクロコンピュータの異常を確実に監視することのできる電子制御装置を提供することができるようになった。
【図面の簡単な説明】
【００２０】
【図１】（ａ）は従来のマイクロコンピュータの動作状態及び監視禁止／許可信号の出力並びに異常監視装置の監視状態を示すタイミングチャート、（ｂ）は本発明によるマイクロコンピュータの動作状態及び監視禁止／許可信号の出力並びに異常監視装置の監視状態を示すタイミングチャート
【図２】車両に備えられた複数の電子制御装置のブロック構成図
【図３】電子制御装置のブロック構成図
【図４】マイクロコンピュータと異常監視回路のブロック構成図
【図５】異常監視回路の動作について説明するためのタイミングチャート
【図６】マイクロコンピュータの回路図
【図７】クロック生成回路のブロック構成図
【図８】（ａ）は遅延回路の回路図、（ｂ）はＲＳフリップフロップの回路図、（ｃ）はＲＳフリップフロップの真理値表
【図９】汎用入出力ポートの回路図
【図１０】入力回路を備えた汎用入出力ポートの回路図
【図１１】マイクロコンピュータの処理について説明するためのフローチャート
【図１２】異常監視回路の処理について説明するためのフローチャート
【図１３】電子制御装置の処理について説明するためのタイミングチャート
【発明を実施するための形態】
【００２１】
以下に、本発明による電子制御装置（以下、ＥＣＵと記す。）及び異常監視方法を車両に適用した場合の実施形態について説明する。
【００２２】
ＥＣＵは、図２に示すように、イグニッションスイッチがオンされた場合にバッテリから給電される群と、イグニッションスイッチがオフされている場合でもバッテリから給電される群で構成されている。前者には高速のＣＡＮバスで接続されたエンジンＥＣＵ、ミッションＥＣＵ、及びブレーキＥＣＵ等が含まれ、後者には低速のＣＡＮバスやＬＩＮバスで接続されたセキュリティ管理用のＥＣＵ、ドアロック制御用のＥＣＵ、及び高速と低速のバスの相互を接続してデータを中継するゲートウェイＥＣＵ等が含まれる。
【００２３】
本発明によるＥＣＵは、後者のＥＣＵに具現化されており、図３に示すように、マイクロコンピュータ１１、インタフェース回路１２、及び異常監視回路１３等を備えている。
【００２４】
インタフェース回路１２は、ＣＡＮバスやＬＩＮバス等のネットワークを介して他のＥＣＵ等とデータの送受信を実行する通信回路と、各種センサ等からデータを入力してマイクロコンピュータ１１が入力可能な信号に変換してマイクロコンピュータ１１に出力する入力回路と、マイクロコンピュータ１１から出力された制御信号を受け取って制御対象（例えばドアロックスイッチ）等を駆動する信号に変換して当該スタータリレー等に出力する出力回路等とを備えている。
【００２５】
マイクロコンピュータ１１は、図４に示すように、ＣＰＵ１１１と、ＲＡＭやＲＯＭ等のメモリ１１２と、割込みコントローラ１１３等を備えて構成されており、ＣＰＵ１１１がＲＯＭに記憶された制御プログラムを実行することでＥＣＵ１０としての定常処理を行なう。
【００２６】
定常処理は、例えば、ＥＣＵ１０がセキュリティ管理用のＥＣＵである場合はセキュリティ管理、ＥＣＵ１０がドアロック用ＥＣＵの場合はドアロック制御、ＥＣＵ１０がゲートウェイＥＣＵの場合はプロトコル変換処理等である。
【００２７】
割込みコントローラ１１３について詳述する。マイクロコンピュータ１１には、単数または複数ビットで構成される割込みレジスタや優先順位設定レジスタ等が割込み要因毎に設けられている。
【００２８】
割込みレジスタには、イグニッションスイッチがオンされた場合等に起動される外部割込みや、所定の時間間隔で起動されるタイマ割込み等の割込み要因が発生すると、夫々に対応するタスクを起動するための割込み要求フラグがセットされる。優先順位設定レジスタには、複数の割込みレジスタに同時に割込み要求フラグがセットされたときに優先的に処理すべきタスクを起動するように優先順位が設定される。
【００２９】
そして、割込みコントローラ１１３は、マイクロコンピュータ１１に入力された各種信号（例えばイグニッションスイッチがオンされた旨の信号）等に基づいて、これらレジスタにフラグをセットまたはリセットし、各レジスタのフラグの状態に基づいた割込み信号をＣＰＵ１１１等に出力することによって、マイクロコンピュータ１１に対する割込み処理を制御する。
【００３０】
また、マイクロコンピュータ１１は、複数の動作モードを有している。例えば、マイクロコンピュータ１１は、通常動作時に高速のクロックで動作するモード（以下、動作モードと記す。）と、クロックを完全に停止させて、ウェイクアップ信号入力等の割込み要因に対する起動処理の実行機能以外の全ての機能を停止するモード（以下、ストップモードと記す。）とを有している。
【００３１】
また、マイクロコンピュータ１１は、現在のモードが動作モードである場合、所定周期のパルス信号を以下で説明する異常監視回路１３へ出力する。また、マイクロコンピュータ１１は、異常監視回路１３のマイクロコンピュータ１１に対する異常監視を許可または禁止する監視制御信号を、後述する監視制御回路１１４を介して異常監視回路１３へ出力する。
【００３２】
異常監視回路１３は、異常監視を許可または禁止する監視制御信号により異常監視が許可されているときに、マイクロコンピュータ１１から出力されるパルス信号に基づいてマイクロコンピュータ１１の異常を検出する。
【００３３】
図４及び図５に示すように、異常監視回路１３は、クロック回路１３２から出力されるクロック信号の立上りエッジ（または立下りエッジ）でカウントアップされ、ＣＰＵ１１１から出力されるパルス信号の立上りエッジ（または立下りエッジ）でリセットされ、リセット後にカウントを再起動するカウンタ回路１３１と、カウンタ回路１３１にクロック信号を出力するクロック回路１３２と、リセット信号出力回路１３３等を備えている。
【００３４】
リセット信号出力回路１３３は、パルス信号が適正な周期（所定周期）でカウンタ回路に入力されないためにカウント値が所定閾値Ｃｔｈを超え場合、つまりパルス信号の直近の立上りエッジ（または立下りエッジ）から所定期間を超えてもパルス信号の立上りエッジ（または立下りエッジ）の入力がない場合、マイクロコンピュータ１１にリセット信号を出力する。
【００３５】
つまり、異常監視回路１３は、パルス信号が所定期間入力されない場合に、マイクロコンピュータ１１に異常が発生したと判断して、マイクロコンピュータ１１をリセットする回路である。
【００３６】
また、異常監視回路１３は、異常監視を許可する旨の監視制御信号が入力されると動作（カウンタ回路１３１によるカウントアップ処理、クロック回路１３２によるクロック信号出力処理、及びリセット信号出力回路１３３によるリセット信号出力処理）を開始し、異常開始を禁止する旨の監視制御信号が入力されると当該動作を停止（カウンタ回路１３１によるカウントアップ停止及びカウント値リセット、クロック回路１３２によるクロック信号出力停止、及びリセット信号出力回路１３３によるリセット信号出力停止）する。
【００３７】
マイクロコンピュータ１１の説明に戻る。図４に示すように、マイクロコンピュータ１１は、ＣＰＵ１１１の動作を停止させる制御信号の出力状態に応じて監視制御信号の出力状態を切り替える監視制御回路１１４を備えている。
【００３８】
例えば、制御信号がＣＰＵ１１１によりストップ命令が実行されたときに切り替わる信号であり、監視制御回路１１４は当該信号の切り替わりに応じて異常監視を禁止するように監視制御信号を切り替える。また、制御信号がＣＰＵ１１１をストップモードから動作モードに切り替えるウェイクアップ信号に基づいて切り替わる信号であり、監視制御回路１１４は当該信号の切り替わりに応じて異常監視を許可するように監視制御信号を切り替える。
【００３９】
ストップ命令とは、マイクロコンピュータ１１に備えられた発振回路（例えば、高速システムクロック発振回路、高速内蔵発振回路、低速内蔵発振回路、及びサブシステムクロック発振回路等）を停止させ、マイクロコンピュータ１１を停止させる命令であり、ＣＰＵ１１１によって実行される。そして、ストップ命令の実行を示す信号であるストップ信号が、ＣＰＵ１１１から監視制御回路１１４へ出力される。ＣＰＵ１１１は、ストップ命令を実行することによって動作モードからストップモードへ移行する。
【００４０】
ストップ命令が実行されたときに切り替わる信号とは、例えば、監視制御回路１１４にストップ信号が入力されると、それまでの信号レベルに関係なくローレベルに切り替わる信号である。
【００４１】
ウェイクアップ信号は、イグニッションスイッチがオンになった場合や異常監視回路１３からリセット信号が入力された場合等に、ＣＰＵ１１１等に入力される割込み信号であり、ＣＰＵ１１１は当該割込み信号を受け取ると、ストップモードから動作モードへ移行する。また、ウェイクアップ信号は、監視制御回路１１４へも入力される。
【００４２】
ウェイクアップ信号に基づいて切り替わる信号とは、例えば、監視制御回路１１４にウェイクアップ信号が入力されると、それまでの信号レベルに関係なくハイレベルに切り替わる信号である。
【００４３】
以下に、監視制御回路１１４について、図６に基づいて詳述する。尚、図６に示すマイクロコンピュータ１１では、ストップ信号とウェイクアップ信号はハイアクティブの信号であるとする。つまり、ストップ信号は、ストップ命令が実行された場合にハイレベルのパルスを出力するが、その他の場合はローレベルを維持している。また、ウェイクアップ信号は、割込みコントローラ１１３からアクティブレベル（ハイレベル）の割込み信号が入力された場合や異常監視回路１３からアクティブレベル（ハイレベル）のリセット信号が入力された場合にＯＲ回路１１９からハイレベルのパルスを出力するが、割込み信号やリセット信号が入力されない場合はローレベルを維持している。
【００４４】
図６では、マイクロコンピュータ１１は、ＣＰＵクロックを生成して出力するクロック生成回路１１５を備えている。ここで、ＣＰＵクロックは、ＣＰＵの動作クロックである。クロック生成回路１１５は、例えば、図６に示すように、各二個のインバータとＮＡＮＤ回路で構成されており、ＸＩＮ端子に接続された発振子からの入力信号を、監視制御回路１１４の出力信号に基づいて、ＣＰＵ１１１へ出力し、また、ＸＯＵＴ端子からマイクロコンピュータ１１の外部へ出力する回路である。
【００４５】
尚、クロック生成回路１１５は、図６に示すような構成に限らず、例えば、図７に示すような構成であってもよい。図７に示すクロック生成回路１１５は、発振子１１５１に接続された高速システムクロック発振回路１１５２から出力された所定周波数のクロックがプリスケーラ１１５３で分周されセレクタ１１５４に入力され、単数または複数ビットで構成されたクロックコントロールレジスタ１１５５の設定値に基づいた周波数のクロックがＣＰＵクロックとしてセレクタ１１５４から出力される回路である。図７に示すクロック生成回路１１５は、ストップ信号が高速システムクロック発振回路１１５２に入力し、高速システムクロック発振回路１１５２が停止することで停止する。
【００４６】
また、図６では、監視制御回路１１４は、クロック生成回路１１５を制御するクロック制御回路１１４で構成されている。図６で使用されるＲＳフリップフロップ１１４の回路を図８（ｂ）に示し、図８（ｂ）の回路の真理値表を図８（ｃ）に示す。尚、図６では、クロック制御回路１１４は、ＲＳフリップフロップで構成されているが、以下で説明するような機能を有するならば、ＲＳフリップフロップに限らない。
【００４７】
クロック制御回路１１４は、ＣＰＵ１１１からアクティブレベル（ハイレベル）のストップ信号が入力されると、つまりＲＳフリップフロップのセット端子Ｓにハイレベルの信号が入力されると、クロック生成回路１１５にハイレベルのクロック制御信号を出力し、割込みコントローラ１１３または異常監視回路１３からアクティブレベル（ハイレベル）のウェイクアップ信号が入力されると、つまりＲＳフリップフロップのリセット端子Ｒにハイレベルの信号が入力されると、クロック生成回路１１５にローレベルのクロック制御信号を出力する。
【００４８】
クロック生成回路１１５は、クロック制御回路１１４からローレベルのクロック制御信号が入力されると、ＸＩＮ端子から入力された信号の論理が反転された信号をＮＡＮＤ回路１１５１からＣＰＵクロックとして出力するが、クロック制御回路１１４からハイレベルのクロック制御信号が入力されると、ＸＩＮ端子から入力される信号のレベルにかかわらず、ＮＡＮＤ回路１１５１からハイレベルの信号を出力する。つまり、ハイレベルの信号が入力された場合には、ＣＰＵクロックは出力されない。
【００４９】
以上より、クロック制御回路１１４は、ＣＰＵ１１１によるストップ命令の実行時に生成されるストップ信号に基づいてＣＰＵクロックを停止し、ＣＰＵ１１１をストップモードから動作モードに切り替えるウェイクアップ信号に基づいてＣＰＵクロックを出力するように制御する。
【００５０】
そして、マイクロコンピュータ１１が図６の構成である場合の制御信号は、クロック制御信号である。つまり、本発明によるＥＣＵ１０のマイクロコンピュータ１１は、図６に示すように、クロック制御回路１１４の出力を入出力ポート１１６と接続することで、クロック制御回路１１４から出力されるクロック制御信号を、クロック生成回路１１５へ出力するだけでなく、入出力ポート１１６を介して監視制御信号として異常監視回路１３へも出力するように構成されている。尚、以上の説明より、図６の場合、監視制御信号は、ハイレベルで異常監視の禁止で、ローレベルで異常監視の許可である。
【００５１】
上述の構成によれば、制御信号が、ＣＰＵ１１１によりＣＰＵクロックを停止させるストップ命令が実行されたときに切り替わり、ＣＰＵクロックを出力させるウェイクアップ信号に基づいて切り替わる信号、つまりクロック制御回路から出力されるクロック制御信号である。
【００５２】
従って、制御信号の出力状態に応じて出力状態を切り換えられる監視制御信号の異常監視回路１３への出力タイミングを、ＣＰＵクロックの停止タイミング及び出力タイミングと同時とすることができ、監視禁止信号の出力と待機状態への移行まで、及び、待機状態からの復帰と監視許可信号の出力までに、タイムラグが生じることはない。
【００５３】
つまり、本発明によるＥＣＵ１０は、マイクロコンピュータと、マイクロコンピュータから出力される異常監視を許可または禁止する監視制御信号により異常監視が許可されているときに、前記マイクロコンピュータから出力されるパルス信号に基づいて前記マイクロコンピュータの異常を検出する異常監視回路とを備え、マイクロコンピュータは、パルス信号の出力制御を行なうとともに、自身をストップ状態に移行させるための制御信号の出力制御を行なうＣＰＵと、制御信号の出力状態に応じて前記監視制御信号の出力状態を切り替える監視制御回路とを備えている。
【００５４】
また、図６に示すように、監視制御信号として出力する制御信号と、クロック生成回路１１５へ出力する制御信号とを、共通の信号であるクロック制御信号とすることにより、一致している必要がある両制御信号に不一致が生じることを防止することができる。
【００５５】
監視制御信号が禁止状態から許可状態に切り替わるときに、監視制御信号を遅延させる遅延回路を、監視制御信号の信号線に設けてもよい。
【００５６】
例えば、図４及び図６に破線で示すように、監視制御信号が禁止状態から許可状態に切り替わる場合にのみ入力信号を所定時間遅延させて出力する遅延回路１１８を、監視制御回路１１４の後段に設けておき、マイクロコンピュータ１１は、監視制御回路１１４から出力された制御信号を所定時間遅延させて、監視制御信号として異常監視回路１３へ出力する。
【００５７】
遅延回路１１８の一例を図８（ａ）に示し、図８（ａ）で使用されるＲＳフリップフロップ１１４、１１８１の回路を図８（ｂ）に示し、図８（ｂ）の回路の真理値表を図８（ｃ）に示す。
【００５８】
図８では、遅延回路１１８は、クロック制御回路１１４の出力Ｑと直列接続されたインバータ１１８２と、インバータ１１８２と直列接続された抵抗Ｒ１と、一方を抵抗Ｒ１と接続され他方を接地されたコンデンサＣ１と、コレクタを抵抗Ｒ１と接続されエミッタを接地されたトランジスタＱ１と、クロック制御回路１１４と同様にストップ信号及びウェイクアップ信号が夫々セットＳ、リセットＲに入力され、出力ＱがトランジスタＱ１のベースに接続されたＲＳフリップフロップ１１８１とを備えている。
【００５９】
クロック制御回路１１４及びＲＳフリップフロップ１１８１のセットＳにアクティブレベル（ハイレベル）のストップ信号が入力されると、クロック制御回路１１４の出力Ｑ（ハイレベル）はインバータ１１８２で論理反転することでローレベルとなる。また、ＲＳフリップフロップ１１８１の出力（ハイレベル）がトランジスタＱ１のベースに入力することでトランジスタＱ１はオンとなる。その結果、クロック制御回路１１４にストップ信号が入力された場合には、コンデンサＣ１に電荷が蓄積されていても、クロック制御回路１１４から出力されインバータ１１８２で論理反転された制御信号（ローレベル）は、遅延することなく監視制御信号として後段（入出力ポート１１６）へ出力される。つまり、遅延回路１１８は、監視制御信号が許可状態から禁止状態に切り替わるときは、監視制御信号を遅延させない。
【００６０】
一方、クロック制御回路１１４及びＲＳフリップフロップ１１８１のリセットＲにアクティブレベル（ハイレベル）のウェイクアップ信号が入力されると、クロック制御回路１１４の出力Ｑ（ローレベル）はインバータで論理反転することでハイレベルとなる。また、ＲＳフリップフロップ１１８１の出力（ローレベル）がトランジスタＱ１のベースに入力することでトランジスタＱ１はオフとなる。その結果、クロック制御回路１１４にウェイクアップ信号が入力された場合には、クロック制御回路１１４から出力されインバータ１１８２で論理反転された制御信号（ハイレベル）は、コンデンサＣ１に電荷が蓄積されるまでの時間だけ遅延して監視制御信号として後段（入出力ポート１１６）へ出力される。つまり、遅延回路１１８は、監視制御信号が禁止状態から許可状態に切り替わるときは、監視制御信号を遅延させる。
【００６１】
尚、図８（ａ）に示す遅延回路１１８を使用する場合、監視制御信号は、ハイレベルで許可状態であり、ローレベルで禁止状態であるが、論理を逆にする場合は、例えば遅延回路１１８の後段にインバータを設ければよい。
【００６２】
マイクロコンピュータ１１は、ウェイクアップ信号が入力されることで異常監視を許可するように監視制御信号を切り替えてからパルス信号が異常監視回路１３へ出力されるまでに所定時間がかかる場合がある。その理由は、例えば以下の通りである。つまり、マイクロコンピュータ１１は、ウェイクアップした直後には、ＣＰＵ１１１の動作が安定するまでの間、ＣＰＵクロックの周波数を低くするよう設定されている場合があるため、パルス信号が出力される命令が実行されるまでに遅延が生じてしまうのである。
【００６３】
その結果、異常監視回路１３には、監視制御信号によって異常監視を許可されてから所定時間、パルス信号が入力されず、カウンタ回路１３１のカウント値が所定閾値Ｃｔｈを超えてしまい、異常監視回路１３は、マイクロコンピュータ１１の異常であると誤って判断してしまう虞がある。
【００６４】
しかし、上述の構成によれば、監視制御信号の切替時期を遅延する遅延回路１１８を設けることで、上記のような誤った判断が異常監視回路１３によってなされることを防止することができる。
【００６５】
以上の説明では、監視制御信号が出力されるポートは、入出力ポート１１６に備えられた監視制御信号の出力専用のポートである場合について説明したが、図９に示すように、監視制御信号が出力されるポートがポートモードを設定するモード設定レジスタ１１７２を備えた汎用入出力ポート１１７で構成され、マイクロコンピュータ１１のリセット時にモード設定レジスタ１１７２によるポートモードが設定されるまでの間、ハイインピーダンスとなるように設定されていてもよい。
【００６６】
以下に詳述する。汎用入出力ポート１１７は、例えば、マイクロコンピュータ１１の内部バス１１９と接続されており、出力データを保持する出力ラッチ１１７１と、ポートモード（入力モードと出力モード）の指定及び入出力するデータの種類の指定を行なうための単数または複数ビットで構成されたモード設定レジスタ１１７２と、モード設定レジスタ１１７２の保持内容に基づいて出力ラッチ１１７１から出力されたデータと監視制御回路１１４から出力された制御信号の何れかを選択して出力するセレクタ１１７３と、モード設定レジスタ１１７２の保持内容に基づいて、入力をそのまま出力するかハイインピーダンスとするかを切り替え可能なスリーステートバッファ１１７４とを備えている。
【００６７】
汎用入出力ポート１１７では、モード設定レジスタ１１７２によって出力モードに設定されている場合、スリーステートバッファ１１７４は入力をそのまま出力するように切り替えられる。その結果、データ（出力ラッチ１１７１から出力されたデータまたは監視制御回路１１４から出力された制御信号）は、図９に一点鎖線矢印で示す経路で端子１１７５より出力される。
【００６８】
一方、モード設定レジスタ１１７２によって入力モードに設定されている場合、スリーステートバッファ１１７４はハイインピーダンスに切り替えられる。その結果、データ（外部から端子１１７５を介して入力されたデータ）は、図９に二点鎖線矢印で示す経路で内部バス１１９へ出力される。
【００６９】
また、モード設定レジスタ１１７２は、マイクロコンピュータ１１のリセット時に、モード設定レジスタ１１７２の設定が可能となった瞬間に、スリーステートバッファ１１７４をハイインピーダンスとするように設定される。
【００７０】
上述の構成によれば、監視制御信号の出力専用ポートを余分に設ける必要がないので、ポートを節約することができる。
【００７１】
また、マイクロコンピュータ１１側でポートをハイインピーダンスとなるように設定すると、異常監視回路１３側で監視制御信号の初期値を設定することができる。つまり、初期値をハイレベルとしたい場合には異常監視回路１３の監視制御信号が入力されるポートにプルアップ抵抗を設け、初期値をローレベルとしたい場合には当該ポートにプルダウン抵抗を設ければよい。
【００７２】
また、マイクロコンピュータ１１のリセット時に、モード設定レジスタ１１７２の設定が可能となった瞬間にポートをハイインピーダンスとなるように設定することで、モード設定レジスタ１１７２にポートモードが設定されるまでの間に、
不適切なレベルの信号が汎用入出力ポート１１７から異常監視回路１３へ出力されることを防止することができる。その結果、異常監視回路１３の誤動作の発生可能性を低減することができる。
【００７３】
ＥＣＵ１０は、図９に破線で示すように、モード設定レジスタの値の変更を禁止するプロテクトレジスタ１１７６を備えていてもよい。
【００７４】
例えば、ＣＰＵ１１１は、モード設定レジスタの値を変更する際、まず、プロテクトレジスタ１１７６の値を所定値（例えばハイレベル）に設定してモード設定レジスタの値の変更の禁止を解除してから、モード設定レジスタの値を設定する。そして、ＣＰＵ１１１は、モード設定レジスタの値の設定後、プロテクトレジスタの値を上記とは異なる所定値（例えばローレベル）に設定してモード設定レジスタの値の変更を禁止する。
【００７５】
上述の構成によれば、ソフトウェアの暴走等によりモード設定レジスタが不適切な値に書き換えられる危険性を低減することができる。
【００７６】
ＥＣＵ１０は、監視制御信号が出力されるポートの信号レベルを入力する入力回路をポートに設けていてもよい。
【００７７】
例えば、図１０に示すように、モード設定レジスタ１１７２に保持されている値に基づいて、セレクタ１１７３から出力されたデータと端子１１７５を介して外部より入力されたデータの何れかを選択して内部バス１１９に出力するセレクタ１１７８を備えた入力回路１１７７を設けておく。
【００７８】
セレクタ１１７３は監視制御回路１１４から出力された制御信号を選択し、セレクタ１１７８はセレクタ１１７３から出力されたデータを選択するように、モード設定レジスタ１１７２を設定することで、監視制御信号が出力されるポートの信号レベルを入力する。
【００７９】
上述の構成によれば、監視制御回路１１４や入出力ポート１１６の異常等によって、マイクロコンピュータ１１が出力したつもりの監視制御信号の内容と、実際に出力された監視制御信号の内容が異なるものである場合でも、その事実を早期に発見して適切な対応をすることができる。
【００８０】
例えば、マイクロコンピュータ１１は自身に異常があると判断して、即座に全ての動作を停止してストップモードに入るといった対応や、ダイアグノーシスコード等を出力してマイクロコンピュータ１１の異常をユーザに知らせるといった対応をとることができる。ユーザに知らせる方法としては、例えば、車両に搭載されたナビゲーション装置の液晶パネル等の表示部への警告メッセージの表示や、スピーカーからの音声メッセージの出力等がある。
【００８１】
以下、本発明によるＥＣＵ１０の処理について、図１１及び図１２に示すフローチャート並びに図１３に示すタイミングチャートに基づいて説明する。
【００８２】
リセットされたＥＣＵ１０のマイクロコンピュータ１１は、ＣＰＵ１１１が安定すると、初期設定を実行する（ＳＡ１）。初期設定は、例えば、ＲＡＭのチェック処理及びクリア処理や、入力ポートへの初期データの入力処理の他、モード設定レジスタに所定値を保持することにより所定のポートモード（例えば動作モード）に設定するポート設定（ＳＡ２）、パルス信号の出力許可（ＳＡ２）、タイマ割込処理を開始するタイミング設定、換言するとパルス信号の周期設定のための割込タイマ値を単数または複数ビットで構成されるタイマレジスタに設定するタイマ値設定（ＳＡ３）、及び割込み許可（ＳＡ４）等がある。
【００８３】
初期設定が完了すると、ＥＣＵ１０では、マイクロコンピュータ１１等によって定常処理が実行される（ＳＡ５）。ここで、定常処理は、例えば、ＥＣＵ１０がセキュリティ管理用ＥＣＵの場合、セキュリティ管理であり、ＥＣＵ１０がドアロック用ＥＣＵの場合、ドアロック制御であり、ＥＣＵ１０がゲートウェイＥＣＵの場合、プロトコル変換処理である。尚、これら定常処理は、イグニッションスイッチのオフ時であっても、ＣＰＵ１１１が動作モードである場合に実行される。
【００８４】
定常処理中に、車両の運転者等によってイグニッションスイッチがオフされると（ＳＡ６）、マイクロコンピュータ１１は、シャットダウン処理を実行する（ＳＡ７）。シャットダウン処理とは、例えば、ＲＡＭに記憶されているデータのＥＥＰＲＯＭ等の不揮発性メモリへの退避である。
【００８５】
シャットダウン処理が完了すると、ＣＰＵ１１１はストップ命令を実行する（ＳＡ８）。ＣＰＵ１１１によってストップ命令が実行されると、制御信号の出力状態が異常監視の許可から禁止に切り替わり、状態の切り替わった制御信号は監視制御信号としてマイクロコンピュータ１１によって異常監視回路１３に出力される。つまり、マイクロコンピュータ１１のストップモードへの移行と、異常監視回路１３の異常監視の実行状態から停止状態への移行とが略同時に実行される。
【００８６】
マイクロコンピュータ１１では、ストップモード時に、ウェイクアップ信号が入力される割込みが発生すると（ＳＢ１）、制御信号の出力状態が異常監視の禁止から許可に切り替わり、状態の切り替わった制御信号は監視制御信号としてマイクロコンピュータ１１によって異常監視回路１３に出力される。つまり、マイクロコンピュータ１１の動作モードへの移行と、異常監視回路１３の異常監視の停止状態から実行状態への移行とは略同時に実行される。
【００８７】
また、マイクロコンピュータ１１は、タイマ割込みが発生すると、出力しているパルス信号の論理を反転させる。つまり、出力しているパルス信号がオン（例えばハイレベル）の場合は（ＳＤ１）、オフ（例えばローレベル）に切り替え（ＳＤ２）、出力しているパルス信号がオフの場合は（ＳＤ１）、オンに切り替える（ＳＤ３）。
【００８８】
異常監視回路１３は、ＣＰＵ１１１によるストップ命令の実行によって（ＳＡ８）、マイクロコンピュータ１１から異常監視回路１３へ異常監視を禁止する旨の監視制御信号が出力されている場合、動作しない（ＳＣ１）。
【００８９】
一方、異常監視回路１３は、ウェイクアップ信号が入力される割込みによって（ＳＢ１）、マイクロコンピュータ１１から異常監視回路１３へ異常監視を許可する旨の監視制御信号が出力されている場合（ＳＣ１）、マイクロコンピュータ１１から異常監視回路１３へ出力されるパルス信号を参照する。
【００９０】
異常監視回路１３は、パルス信号の立上りエッジが入力されていない場合（ＳＣ２）、カウント回路１３１をカウントアップし（ＳＣ３）、パルス信号の立上りエッジが入力されると（ＳＣ２）、カウンタ回路１３１をリセットする（ＳＣ４）。
【００９１】
異常監視回路１３のリセット信号出力回路１３３は、マイクロコンピュータ１１の異常発生等でマイクロコンピュータ１１からパルス信号が入力しないことにより、ステップＳＣ３またはＳＣ４の処理後のカウンタ回路１３１のカウント値が所定閾値Ｃｔｈを超えている場合には（ＳＣ５）、マイクロコンピュータ１１に異常が発生したと判断して、マイクロコンピュータ１１を再起動させるためのリセット信号をマイクロコンピュータ１１に出力する（ＳＣ６）。
【００９２】
リセット信号を受け取ったマイクロコンピュータ１１は、リセットされ、ステップＳＡ１で説明した初期設定以降の処理を実行する。
【００９３】
以上説明した通り、本発明による異常監視方法は、マイクロコンピュータから出力される異常監視を許可または禁止する監視制御信号により異常監視が許可されているときに、マイクロコンピュータから出力されるパルス信号に基づいてマイクロコンピュータの異常を検出する異常監視方法であって、マイクロコンピュータのＣＰＵの動作を停止させる制御信号の出力状態に連動して監視制御信号の出力状態を切り替える方法、つまり、マイクロコンピュータのＣＰＵから出力され、自身をストップ状態に移行させるための制御信号の出力状態に連動して監視制御信号の出力状態を切り替える方法である。
【００９４】
以下、別実施形態について説明する。上述の実施形態では、制御信号がＣＰＵ１１１によりストップ命令が実行されたときに切り替わる信号である場合について説明したが、制御信号がＣＰＵ１１１により低消費電力駆動命令が実行されたときに切り替わる信号であり、監視制御回路１１４は当該信号の切り替わりに応じて異常監視を禁止するように監視制御信号を切り替えてもよい。
【００９５】
低消費電力駆動命令は、例えば、マイクロコンピュータ１１に複数の発振回路が搭載されている場合に、ＣＰＵ１１１のモードをストップモードでも動作モードでもないモード、つまり一部の発振回路（ＣＰＵ１１１の動作クロック）には発振を停止させるが当該一部の発振回路以外の発振回路には発振を継続させることで消費電力を低減させるモード（低消費電力駆動モード）へ移行させる命令である。
【００９６】
低消費電力駆動モードは、システム全体を停止させるストップモード程には消費電力を低減させることはできない。しかし、例えば、通常動作時のＣＰＵクロックを生成するための高速内蔵発振回路の発振は停止させるが、所定インタバルでＣＰＵ１１１を駆動させて低速クロックで動作させるためのクロック（間欠動作時のＣＰＵクロック）を生成するための低速内蔵発振回路の発振は継続させるようにすると、間欠動作時の処理の再開を迅速に行なうことができる。
【００９７】
尚、間欠動作のインタバルは、例えば、上述のタイマ割込処理とは別のタイマ割込処理を開始するタイミング設定のための割込タイマ値を上述のタイマレジスタとは別に設けられた単数または複数ビットで構成されるタイマレジスタに設定することで決定される。具体的には、間欠動作のインタバルは、例えば１時間等に設定される。
【００９８】
制御信号を、ＣＰＵ１１１によりストップ命令が実行されたときに切り替わる信号とするか、ＣＰＵ１１１により低消費電力駆動命令が実行されたときに切り替わる信号とするか、ＣＰＵ１１１によりストップ命令または低消費電力駆動の命令の何れかが実行されたときに切り替わる信号とするかといった選択は、マイクロコンピュータの初期設定時（例えば図１１のステップＳＡ１）に、当該選択を行なうために設けられた単数または複数ビットで構成されるレジスタに各選択に対応した値を設定することによって実行する。
【００９９】
このような低消費電力駆動モードでは、ＣＰＵ１１１の動作クロックは停止しておりＣＰＵ１１１は動作しておらず、ＣＰＵ１１１に異常が発生することは稀であるため、異常監視回路１３によるマイクロコンピュータ１１の異常監視を禁止しておくことが、省電力化の観点等から好ましい。
【０１００】
よって、上述の構成によれば、マイクロコンピュータ１１の消費電力を低減することができる。
【０１０１】
また、上述の構成によれば、制御信号が、ＣＰＵ１１１により低消費電力駆動命令が実行されたときに切り替わる信号である。よって、制御信号の出力状態に応じて出力状態を切り換えられる監視制御信号の異常監視回路１３への出力タイミングを、低消費電力駆動モードへの移行タイミングと同時とすることができる。従って、上述の構成によれば、監視禁止信号の出力と待機状態への移行までに、タイムラグが生じることはない。
【０１０２】
上述の実施形態では、本発明によるＥＣＵ１０及び異常監視方法を車両に適用した場合について説明したが、異常監視回路を備えており、異常監視回路によるマイクロコンピュータの異常監視の許可と禁止を切り替える必要がある装置を搭載する機器、或いは、マイクロコンピュータの異常監視の許可と禁止を切り替える必要がある異常監視方法を使用する機器であれば、車両以外、例えば船舶や航空機等に適用してもよい。
【０１０３】
また、上述したマイクロコンピュータに備えた監視制御回路の出力信号は、外部に備えた異常監視回路に出力するばかりでなく、ＣＰＵの動作が停止するときに、同期して他の外部回路の動作を停止させるために用いることも可能である。
【０１０４】
尚、上述の実施形態は、本発明の一例に過ぎず、本発明の作用効果を奏する範囲において各ブロックの具体的構成等は適宜変更設計できる（例えば論理レベルのアクティブレベルをハイレベルとローレベルに変える場合の設計変更ができる）ことは言うまでもない。
【符号の説明】
【０１０５】
１０：電子制御装置
１１：マイクロコンピュータ
１３：異常監視回路
１１１：ＣＰＵ
１１４：監視制御回路
１１７：汎用入出力ポート
１１８：遅延回路
１１７２：モード設定レジスタ
１１７６：プロテクトレジスタ
１１７７：入力回路
【図１】
2010224759.tif 000003
【図２】
2010224759.tif 000004
【図３】
2010224759.tif 000005
【図４】
2010224759.tif 000006
【図５】
2010224759.tif 000007
【図６】
2010224759.tif 000008
【図７】
2010224759.tif 000009
【図８】
2010224759.tif 000010
【図９】
2010224759.tif 000011
【図１０】
2010224759.tif 000012
【図１１】
2010224759.tif 000013
【図１２】
2010224759.tif 000014
【図１３】
2010224759.tif 000015