JP2008287643A - 電子コントロールユニットの監視装置 - Google Patents

電子コントロールユニットの監視装置 Download PDF

Info

Publication number
JP2008287643A
JP2008287643A JP2007134028A JP2007134028A JP2008287643A JP 2008287643 A JP2008287643 A JP 2008287643A JP 2007134028 A JP2007134028 A JP 2007134028A JP 2007134028 A JP2007134028 A JP 2007134028A JP 2008287643 A JP2008287643 A JP 2008287643A
Authority
JP
Japan
Prior art keywords
reset
program
abnormality
output
microcomputer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2007134028A
Other languages
English (en)
Inventor
Toshio Otsuka
敏夫 大塚
Shozo Tsunekazu
祥三 常數
Daisuke Eguchi
大介 江口
Toru Tanaka
徹 田仲
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2007134028A priority Critical patent/JP2008287643A/ja
Publication of JP2008287643A publication Critical patent/JP2008287643A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Safety Devices In Control Systems (AREA)
  • Testing And Monitoring For Control Systems (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

【課題】ウォッチドッグタイマに出力するプログラムラン信号の出力リセット発生回路からマイクロコンピュータのリセット入力回路までの診断を行う。
【解決手段】CPU1がパワーオンリセットした直後に実行されるプログラム内において、診断プログラムがウォッチドッグタイマ2に出力するプログラムラン信号Bの出力を停止させることにより、リセット発生回路3が正常であれば、リセット発生回路3からリセットパルス信号Dが出力される。診断プログラムは、リセットパルス信号Dをカウントし、リセット発生回数カウンタに記憶しておく。プログラムラン信号出力回路からCPU1のリセットパルス入力部が異常である場合、一定時間プログラムラン信号Bを停止する指示を出力しても、CPU1のリセットが発生しないので、診断プログラムはリセット発生回数カウンタを0とする。リセット発生回数カウンタの値が予め設定した設定値K以上となれば正常と判断する。
【選択図】図1

Description

この発明は、例えば自動車等に搭載されるマイクロコンピュータを備えた電子コントロールユニットの監視装置に関するものである。
一般に、電子コントロールユニットの監視装置として、ウォッチドッグタイマ(WDT)およびリセット発生回路の診断に加え、ウォッチドッグタイマおよびリセット発生回路のフェイル判定回路まで診断可能とした装置が知られている(例えば、特許文献1参照)。
この従来装置は、図8にパワーオンリセット後の動作を示すように、パワーオンリセット時にフェイル判定回路がフェイルセーフ装置に出力する信号をフェイル状態(以下、ハイ状態と称する。)とする。マイクロコンピュータ(以下、CPUと称する。)はパワーオンリセット信号を受けると、パワーオンリセットとして動作を開始(プログラムスタート)し、イニシャライズが完了すると、プログラムはウォッチドッグタイマ診断ルーチンに入る。この時CPUはメモリ(RAM)にウォッチドッグタイマ診断であることを示すフラグをセットし、フェイル判定回路がハイ状態であることを確認してプログラムラン信号の出力を停止する。
プログラムラン信号の停止により、リセット発生回路がリセット信号を出力する。このリセット信号を受けてフェイル判定回路はフェイルセーフ装置に出力する信号を正常状態(以下、ロウ状態と称する。)とし、同時にCPUはリセットされ、再度イニシャライズが行われてロウ状態となる。CPUは再度ウォッチドッグタイマ診断が行われるときに、メモリ(RAM)にウォッチドッグタイマ診断を示すフラグがセットされていることをチェックし、セットされていればフェイル判定回路の出力信号がロウ状態であることをチェックする。CPUはフェイル判定出力がハイ状態からロウ状態に変化したことが確認されると、リセット発生回路およびフェイル判定回路が正常に動作しているものと診断する。そして、ウォッチドッグタイマ診断を示すフラグをリセットする。
特開平9−282024号公報
しかしながら、特許文献1に提案されている従来の電子コントロールユニットの監視装置にあっては、リセットが正常に作動する場合は、フェイル判定回路の出力信号がハイ状態からロウ状態となり正常であることが診断でき、また、リセットが正常に作動しない場合は、フェイル判定回路の出力信号がパワーオンリセット時に出力したハイ状態を継続出力するため、異常であることが診断できる。
また、フェイル判定回路が正常に動作している場合は、リセット信号を受け出力信号がハイ状態からロウ状態となり正常であることが診断でき、正常に動作しない場合は、パワーオンリセット時に出力したハイ状態を継続出力するため、異常であることが診断できる。
しかし、図9のタイミング図に示しているように、CPUのメモリ(RAM)に異常が発生し、ウォッチドッグタイマ診断を示すフラグが、常時クリア状態となった場合、パワーオンリセット時のウォッチドッグタイマ診断ルーチンにおいてウォッチドッグタイマ診断フラグのセット操作を実行するが、フラグはセットされずにクリアのままである。フェイル判定回路の出力信号はハイ状態となっているため、プログラムラン信号の出力を停止する。
プログラムラン信号の停止により、リセット発生回路がリセット信号を出力する。このリセット信号を受け、フェイル判定回路はフェイルセーフ装置に出力する信号をロウ状態とし、同時にCPUはリセットされ、再度イニシャライズが行われてロウ状態となる。CPUは再度ウォッチドッグタイマ診断が行われるときに、メモリ(RAM)にウォッチドッグタイマ診断を示すフラグがセットされていることをチェックするが、フラグはクリアであるため、パワーオンリセット時と同じくウォッチドッグタイマ診断フラグをセットし、フェイル判定回路の出力信号の判定を実施する。ここで、今回はロウ状態となっているので、プログラムラン信号を停止することはなく診断ルーチンを終了する。
以上のように、特許文献1に提案されている従来の電子コントロールユニットの監視装置にあっては、メモリ(RAM)のウォッチドッグタイマ診断を示すフラグがロウ状態に固定される異常となった場合、フェイル判定回路の診断を実施できていないにも関わらず、ウォッチドッグタイマ診断を正常に終了した状態となってしまう課題を有している。
この発明は上記従来装置の課題を解決することを目的とするもので、リセット機能の異常を診断するプログラム中に、診断に使用する手段の異常判定を実施する異常判定手段を備えた改良された電子コントロールユニットの監視装置を提供するものである。
この発明に係る電子コントロールユニットの監視装置は、少なくとも所定周期のプログラムラン信号を出力するためと、リセット機能の異常を診断するためのプログラムを内蔵したマイクロコンピュータと、上記マイクロコンピュータから出力される所定周期のプログラムラン信号の停止時に、上記マイクロコンピュータの異常信号を出力するマイクロコンピュータ動作監視手段と、上記マイクロコンピュータ動作監視手段から出力される上記マイクロコンピュータの異常信号に基づいて上記マイクロコンピュータにリセットパルスを出力するリセット発生手段と、上記プログラムがリセット機能の異常を診断したときにフェイルセーフ処理を実施するフェイルセーフ装置と、を備えた電子コントロールユニットの監視装置において、上記リセット機能の異常を診断するプログラム中で、上記異常の診断に使用する手段の異常判定を実施するものである。
この発明に係る電子コントロールユニットの監視装置によれば、プログラムラン信号出力回路からリセット発生回路を経由しCPUのリセット信号入力回路までの診断を安価に行うことが可能となる。
以下に添付図面を参照してこの発明に係る電子コントロールユニットの監視装置の好適な実施の形態を説明する。
実施の形態1.
図1は、この発明の実施の形態1に係る電子コントロールユニットの監視装置を示す機能ブロック図である。この図において、マイクロコンピュータ(以下、CPUと称する)1は、一定周期のプログラムラン信号を出力し、マイクロコンピュータ動作監視手段、即ち、ウォッチドッグタイマ(WDT)2は、プログラムラン信号のデューティー比、周期、プログラムラン信号停止等が正常であるか否かを監視している。ウォッチドッグタイマ2はCPU1が暴走すると、プログラムラン信号の異常を検出し、マイコン異常としてプログラムラン異常信号をリセット発生手段であるリセット発生回路3へ出力する。
リセット発生回路3は、一定時間のリセットパルスを発生し、このリセットパルスは、CPU1へ入力される。CPU1は、リセットパルスによって初期化されて正常状態に復帰し、プログラムが再スタートするように構成されている。CPU1内には異常判定手段であるフェイル判定手段4が存在し、そのプログラムは、所定の設定回数、例えば2回以上のリセットパルスがCPU1へ入力されたときにフェイル状態と判定して、CPUフェイル検出信号をフェイルセーフ装置5へ出力し、フェイルセーフ装置5はシステムをフェイルセーフ状態とする。これにより、CPU1が異常な状態となっても、システムは安全に保持される。なお、電源投入時にのみパワーオンリセット信号を出力するパワーオンリセット発生回路6の出力が、オアゲート7を介してCPU1に入力されるようになっている。
図2は、フェイル判定手段4の処理手順を示すフローチャートである。CPU1にパワーオンリセット、またはプログラムラン信号の異常によるリセットが発生した場合、フェイル判定手段4は周知の通り、ROM上の予め決められた場所に書き込まれているアドレスよりプログラムが実行するよう設計されている。また、プログラムはリセットが発生した時にのみ実行される初期化処理プログラムと、初期化処理プログラムが終了後、繰り返し実行される通常処理プログラムとに大別される。フェイル判定手段4は、初期化処理プログラム内に存在し、プログラムラン信号出力用プログラムの実行から、CPU1内のリセット信号検出部分までの間の異常を検出するものである。
図2のフローチャートにおいて、ステップS210〜ステップS230では、本プログラムで使用するレジスタとRAM、そしてパラメータ定義に使用するROMの異常判定を実施している。内容の詳細については、図5〜図7を用いて後述する。
ステップS235では、リセット発生回数をカウントしているカウンタRAMの値を1加算している。そして、ステップS240でリセット発生回数カウンタの値と予め設定した設定値K(本例では1を設定)とを比較している。比較の結果、カウンタ値<設定値Kの場合、リセットの発生を待つ処理ステップS250に分岐し、カウンタ値≧設定値Kの場合は、ステップS280へ進む。ステップS280へ進むルートが正常にリセットが発生している状態である。ステップS250では、プログラムラン信号を停止してから、リセット発生回路がリセットパルスを出力するまでの時間が適正か否かを判定するためのカウンタの値CNTを0でリセットする。ステップS260では、プログラムラン信号を停止してから、リセット発生回路がリセットパルスを出力するまでの時間に余裕を持たせたタイムアップ判定値KTと、カウンタの値CNTを比較する。比較の結果、カウンタの値CNT<タイムアップ判定値KTが成立している間、ループを形成し、リセットが発生するのを待つ。その間ステップS265で、カウンタの値CNTを1加算する。また、比較の結果カウンタの値CNT≧タイムアップ判定値KTが成立時は、ステップS270でリセット発生カウンタを0に設定し、ステップS280へと進む。
ステップS280では、リセット発生回数カウンタの値と設定値Kとを比較する。正常にリセットが発生した場合は、リセット発生回数カウンタ値が設定値Kとなっているが、正常に発生しなかった場合は、リセット発生回数カウンタ値<設定値Kとなっている。ただし、カウンタ値≧設定値Kの場合であっても、レジスタ、RAM、ROMの異常判定にてエラーフラグがセットされている場合は、リセット発生回数カウンタの処理および、リセット発生回数カウンタ値と設定値Kとの判断結果が正常であると証明されないため、ステップS290においてエラーフラグがセットされていると判断された場合は、ステップS310においてリセット機能異常フラグをセットしステップS320へ進む。エラーフラグがクリアされていると判断された場合は、ステップS300においてリセット機能異常フラグをクリアしステップS320へ進む。ステップS320では、リセット発生回数カウンタを0クリアし、ステップS330の初期化処理へ進む。
図3は、初期診断時の動作のタイミングを示すタイミング図である。図中、(A)はパワーオンリセット信号、(B)はプログラムラン信号、(D)はリセットパルス、(E)はフェイル判定出力を示している。時刻T1でシステム電源が投入されると、パワーオンリセット発生回路6は、ハイ(H)のパワーオンリセット信号(A)を出力する。また、リセット発生回路3は、ハイ(H)のリセットパルス信号(D)を出力する。
CPU1は、オアゲート7を介してパワーオンリセット信号(A)を受けると、パワーオンリセットとして動作を開始(プログラムスタート)する。プログラムスタートすると、通常の場合、図2のステップS330にある初期化処理を実行し、それが完了すると通常処理へ移行する。初期化処理の中でプログラムラン信号(B)の反転を開始し、通常制御へ移行後は一定周期毎にプログラムラン信号(B)がハイ(H)とロウ(L)を繰り返すので、リセットパルス信号(D)がロウ(L)になることはない。
次いで、リセット発生回路3に異常がある場合の動作を図4に示す。CPU1は、オアゲート7を介してパワーオンリセット信号(A)を受けると、パワーオンリセットとして動作を開始(プログラムスタート)する。プログラムスタートすると、図2のフェイル判定手段となるステップS260により、タイムアップ判定値KT間のプログラムラン信号(B)をロウ(L)に固定する処理を行うため、リセット発生回路3が正常であれば、タイムアップ判定値KTを経過するまでの間にリセットパルス信号(D)がロウ(L)となるはずであるが、異常である場合は、リセットパルス信号(D)がロウ(L)とならない。
その状態を継続すると、図2のステップS260の判定にてカウンタの値CNT≧タイムアップ判定値KTが成立するため、リセット発生回数カウンタの値を0とする。ステップS280では、リセット発生回数カウンタの値と設定値Kを比較し、リセット発生カ回数ウンタの値<設定値Kが成立するため、リセット機能異常フラグをセットし、異常時処理にてフェイル判定出力をハイ(H)とする。
図2に示すフェイル判定手段となるステップS260での処理手順中、フェイル判定のプログラムにおいて使用しているレジスタの異常判定の処理手順を示すフローチャートを図5に示す。ここでは、レジスタAとレジスタBの異常判定処理について示しているが、同様の処理によりその他のレジスタに関しても異常判定が可能である。
図2において、ステップS500では、レジスタAを#55555555Hに読み出し、レジスタBに#AAAAAAAAHを読み出す。ここで使用する#55555555Hと#AAAAAAAAHはROMデータに設定されており、このROMデータが異常値となっていないことは、後述する図7のROM異常判定の処理で判定する。
そして、レジスタAとレジスタBを加算し、結果をレジスタAに入れる。その後、#00000001HをレジスタBに読み出し、レジスタAとレジスタBを加算し、結果をレジスタAに入れる。
ステップS510において、レジスタAと0を比較し、結果が0である場合、ステップS550に進みエラーフラグをセットする。結果が0以外である場合、ステップS520に進む。
ステップS520では、#AAAAAAAAHをレジスタAに読み出し、#55555555HをレジスタBに読み出す。そして、レジスタAとレジスタBを加算し、結果をレジスタBに入れる。その後、#00000001HをレジスタAに読み出し、レジスタAとレジスタBを加算し、結果をレジスタBに入れる。
ステップS530において、レジスタBと0を比較し、結果が0である場合、ステップS550に進みエラーフラグをセットする。結果が0以外である場合、ステップS540に進み、エラーフラグをクリアする。
次に、図2に示すフェイル判定手段となるステップS260での処理手順中、フェイル判定のプログラムにおいて使用しているRAMの異常判定の処理手順を示すフローチャートを図6に示す。ここでは、RAMAの異常判定処理について示しているが、同様の処理によりその他のRAMに関しても異常判定が可能である。
図6において、ステップS600では、RAMAに#55555555Hを読み出す。ステップS620において、RAMAの値と#55555555Hを比較し、等しくない場合は、ステップS630でエラーフラグをセットし、ステップS640に進む。等しい場合は、何もせずステップS640に進む。
ステップS640では、RAMAに#AAAAAAAAHを読み出す。ステップS650において、RAMAの値と#AAAAAAAAHを比較し、等しくない場合は、ステップS660でエラーフラグをセットする。等しい場合は、何もせず終了する。
この処理により、RAMAのいずれかのBITが1または0に固定される異常を判定することが可能となる。ここで使用する#55555555Hと#AAAAAAAAHはROMデータに設定されており、このROMデータの異常判定は、後述する図7のROM異常判定の処理で説明する。
図2に示すフェイル判定手段となるステップS260での処理手順中、フェイル判定のプログラムにおいて使用しているROMの異常判定の処理手順を示すフローチャートを図7に示す。
図7において、ステップS700では、リセット機能チェックで使用するデータが設定されている領域の先頭アドレスを、レジスタAに読み込む。また、データ設定数NをレジスタBに読み込む。そして、先頭アドレスからN個のデータを加算することによりチェックサム値を計算し、レジスタCに保存する。ここで、先頭アドレスからN番目には、チェックサム照合値を設定している。このチェックサム照合値をデータ設定領域からレジスタAに読み込む。
ステップS710では、レジスタAとレジスタCを比較する。比較した結果が等しくない場合、ステップS720において、エラーフラグをセットする。この結果、図5および図6で使用するデータ設定値#55555555Hや#AAAAAAAAHが異なる値に変化した場合に、この異常判定にて発見することが可能となる。
以上のように、この発明の実施の形態1に係る電子コントロールユニットの監視装置によれば、プログラムラン信号出力回路からリセット発生回路を経由しCPUのリセット信号入力回路までの診断を安価に行うことが可能となる。
この発明は、自動車に搭載されるマイクロコンピュータを備えた電子コントロールユニットの監視装置に適用できる。
この発明の実施の形態1に係る電子コントロールユニットの監視装置を示す機能ブロック図である。 フェイル判定手段の処理手順を示すフローチャートである。 初期診断時の動作のタイミングを示すタイミング図である。 初期診断時の動作のタイミングを示すタイミング図である。 フェイル判定のプログラムにおいて使用しているレジスタの異常判定の処理手順を示すフローチャートである。 フェイル判定のプログラムにおいて使用しているRAMの異常判定の処理手順を示すフローチャートである。 フェイル判定のプログラムにおいて使用しているROMの異常判定の処理手順を示すフローチャートである。 従来技術における初期診断時の動作のタイミングを示すタイミング図である。 従来技術における初期診断時の動作のタイミングを示すタイミング図である。
符号の説明
1 マイコン(CPU)
2 ウォッチドッグタイマ(WDT)
3 リセット発生回路
4 フェイル判定手段
5 フェイルセーフ装置
6 パワーオンリセット発生回路
7 オアゲート

Claims (3)

  1. 少なくとも所定周期のプログラムラン信号を出力するためと、リセット機能の異常を診断するためのプログラムを内蔵したマイクロコンピュータと、
    上記マイクロコンピュータから出力される所定周期のプログラムラン信号の停止時に、上記マイクロコンピュータの異常信号を出力するマイクロコンピュータ動作監視手段と、
    上記マイクロコンピュータ動作監視手段から出力される上記マイクロコンピュータの異常信号に基づいて上記マイクロコンピュータにリセットパルスを出力するリセット発生手段と、
    上記プログラムがリセット機能の異常を診断したときにフェイルセーフ処理を実施するフェイルセーフ装置と、
    を備えた電子コントロールユニットの監視装置において、
    上記リセット機能の異常を診断するプログラム中で、上記異常の診断に使用する手段の異常判定を実施することを特徴とする電子コントロールユニットの監視装置。
  2. 上記診断に使用する手段は、レジスタ、RAM、ROMであることを特徴とする請求項1記載の電子コントロールユニットの監視装置。
  3. 上記プログラムを、リセットが発生した時にのみ実行される初期化処理プログラムと、初期化処理プログラムが終了後、繰り返し実行される通常処理プログラムとに区分し、上記異常判定を上記初期化処理プログラム内で実施することを特徴とする請求項1又は請求項2に記載の電子コントロールユニットの監視装置。
JP2007134028A 2007-05-21 2007-05-21 電子コントロールユニットの監視装置 Pending JP2008287643A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007134028A JP2008287643A (ja) 2007-05-21 2007-05-21 電子コントロールユニットの監視装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007134028A JP2008287643A (ja) 2007-05-21 2007-05-21 電子コントロールユニットの監視装置

Publications (1)

Publication Number Publication Date
JP2008287643A true JP2008287643A (ja) 2008-11-27

Family

ID=40147285

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007134028A Pending JP2008287643A (ja) 2007-05-21 2007-05-21 電子コントロールユニットの監視装置

Country Status (1)

Country Link
JP (1) JP2008287643A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016130511A (ja) * 2015-01-08 2016-07-21 株式会社デンソー 電子制御装置
CN111930098A (zh) * 2020-07-28 2020-11-13 上海元城汽车技术有限公司 一种车辆监测频率诊断方法及系统
KR102438148B1 (ko) * 2022-05-20 2022-08-31 (주)플루토솔루션 임베디드 컴퓨팅 모듈의 이상을 감지하는 이상 감지 장치, 시스템 및 방법

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016130511A (ja) * 2015-01-08 2016-07-21 株式会社デンソー 電子制御装置
CN111930098A (zh) * 2020-07-28 2020-11-13 上海元城汽车技术有限公司 一种车辆监测频率诊断方法及系统
KR102438148B1 (ko) * 2022-05-20 2022-08-31 (주)플루토솔루션 임베디드 컴퓨팅 모듈의 이상을 감지하는 이상 감지 장치, 시스템 및 방법

Similar Documents

Publication Publication Date Title
US6076172A (en) Monitoting system for electronic control unit
JP2010009369A (ja) フィールド機器
JP2008287643A (ja) 電子コントロールユニットの監視装置
JP2010244311A (ja) 車載用電子制御装置
JP2011163842A (ja) 半導体装置、及びその診断方法
JP5582748B2 (ja) 車両用電子制御装置
JP2006259935A (ja) 演算異常判断機能付き演算装置
JP5960632B2 (ja) 車両用電子制御装置
JP2011070309A (ja) スイッチ状態検出装置及び処理システム
US8478478B2 (en) Processor system and fault managing unit thereof
JP2010136544A (ja) 車両制御システムの通信エラー判定装置及び車両制御システムの通信エラー判定方法
JP5082407B2 (ja) アクセス競合試験におけるアクセス競合発生システム
JP2016126692A (ja) 電子制御装置
JP2011123569A (ja) 処理装置
JP2010134677A (ja) マイクロコンピュータ及び組み込みソフトウェア開発システム
JP6302852B2 (ja) 車両用電子制御装置
JP2007102313A (ja) 制御装置およびマルチプロセッサ制御方法
JP2008293420A (ja) 電子制御装置
JP5880885B2 (ja) 負荷駆動装置
JP2007018207A (ja) データ処理装置、電子制御ユニット、ならびに自動車
JP2002041493A (ja) マイクロコンピュータ
JP6463445B1 (ja) 車載制御装置
JP2018071992A (ja) マイコン、システム、電子制御装置、及びマイコンの機能試験方法
Michael et al. Methodology to improve Safety Critical SoC based platform: a case study
JP2007226527A (ja) 制御装置及びウォッチドッグタイマ

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090717

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090722

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090902

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20091006