特開2016-222018(P2016-222018A)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 富士通テン株式会社の特許一覧

特開2016-222018CPU監視装置、車両制御システムおよびCPU監視方法
<>
  • 特開2016222018-CPU監視装置、車両制御システムおよびCPU監視方法 図000003
  • 特開2016222018-CPU監視装置、車両制御システムおよびCPU監視方法 図000004
  • 特開2016222018-CPU監視装置、車両制御システムおよびCPU監視方法 図000005
  • 特開2016222018-CPU監視装置、車両制御システムおよびCPU監視方法 図000006
  • 特開2016222018-CPU監視装置、車両制御システムおよびCPU監視方法 図000007
  • 特開2016222018-CPU監視装置、車両制御システムおよびCPU監視方法 図000008
  • 特開2016222018-CPU監視装置、車両制御システムおよびCPU監視方法 図000009
  • 特開2016222018-CPU監視装置、車両制御システムおよびCPU監視方法 図000010
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】特開2016-222018(P2016-222018A)
(43)【公開日】2016年12月28日
(54)【発明の名称】CPU監視装置、車両制御システムおよびCPU監視方法
(51)【国際特許分類】
   B60W 50/02 20120101AFI20161205BHJP
   G05B 23/02 20060101ALI20161205BHJP
   G05B 9/02 20060101ALI20161205BHJP
   F02D 41/22 20060101ALI20161205BHJP
   F02D 45/00 20060101ALI20161205BHJP
【FI】
   B60W50/02
   G05B23/02 V
   G05B9/02 E
   F02D41/22 301G
   F02D45/00 374A
   F02D45/00 390A
   F02D45/00 374C
【審査請求】未請求
【請求項の数】9
【出願形態】OL
【全頁数】14
(21)【出願番号】特願2015-107909(P2015-107909)
(22)【出願日】2015年5月27日
(71)【出願人】
【識別番号】000237592
【氏名又は名称】富士通テン株式会社
(74)【代理人】
【識別番号】100089118
【弁理士】
【氏名又は名称】酒井 宏明
(72)【発明者】
【氏名】木戸 啓介
(72)【発明者】
【氏名】小松 和弘
(72)【発明者】
【氏名】清水 雄一郎
【テーマコード(参考)】
3C223
3D241
3G301
3G384
5H209
【Fターム(参考)】
3C223AA16
3C223BA01
3C223CC01
3C223DD01
3C223EA01
3C223FF34
3C223GG01
3C223HH01
3D241BA24
3D241BA60
3D241BA63
3D241BA64
3D241BB72
3D241CC02
3D241CC08
3D241CC17
3D241CD29
3D241DA69B
3D241DA69Z
3G301JA18
3G301JB09
3G301JB10
3G301KA01
3G301NB11
3G301NB16
3G301NE23
3G384BA47
3G384CA01
3G384DA41
3G384DA42
3G384DA47
3G384DA51
3G384ED11
3G384EE12
5H209AA10
5H209DD04
5H209GG20
5H209HH02
5H209HH12
5H209JJ05
5H209JJ07
5H209JJ09
(57)【要約】      (修正有)
【課題】CPUが通常動作を開始するまでの時間を短縮する。
【解決手段】CPU監視装置12は、監視部15と、診断部19とを備える。監視部は、CPUの暴走を監視する。診断部は、電源が投入されてからパワーオンリセット期間が終了するまでの間に監視部を診断する。また、診断部は、監視部がCPUの暴走を検出した状態となるとパワーオンリセット期間の終了を許可する。また、監視部は、カウンタによってカウントされる監視タイマを備え、診断部は、監視タイマのカウント値が所定値を超えた場合に暴走として診断する。
【選択図】図3A
【特許請求の範囲】
【請求項1】
CPUの暴走を監視する監視部と、
電源が投入されてからパワーオンリセット期間が終了するまでの間に前記監視部を診断する診断部と
を備えることを特徴とするCPU監視装置。
【請求項2】
前記診断部は、
前記監視部が前記CPUの暴走を検出した状態となると前記パワーオンリセット期間の終了を許可すること
を特徴とする請求項1に記載のCPU監視装置。
【請求項3】
前記監視部は、
カウンタによってカウントされる監視タイマ
を備え、
前記診断部は、
前記監視タイマのカウント値が所定値を超えた場合に前記暴走として診断すること
を特徴とする請求項2に記載のCPU監視装置。
【請求項4】
前記診断部は、
前記パワーオンリセット期間中に前記監視部を診断すること
を特徴とする請求項3に記載のCPU監視装置。
【請求項5】
前記診断部は、
前記パワーオンリセット期間中のカウント開始前に前記監視部を診断すること
を特徴とする請求項3に記載のCPU監視装置。
【請求項6】
前記監視部は、
前記暴走を検出するまでの時間が前記パワーオンリセット期間よりも短く設定されること
を特徴とする請求項2〜5のいずれか1つに記載のCPU監視装置。
【請求項7】
前記診断部は、
前記監視部に対する診断結果を外部へ出力すること
を特徴とする請求項1〜6のいずれか1つに記載のCPU監視装置。
【請求項8】
請求項1〜7のいずれか1つに記載のCPU監視装置と、
前記CPU監視装置から出力される監視結果に基づいて車両を制御する車両制御装置と
を備えることを特徴とする車両制御システム。
【請求項9】
CPUの暴走を監視する監視工程と、
電源が投入されてからパワーオンリセット期間が終了するまでの間に前記監視工程を診断する診断工程と
を含むことを特徴とするCPU監視方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、CPU監視装置、車両制御システムおよびCPU監視方法に関する。
【背景技術】
【0002】
従来、たとえば、マイクロコンピュータのCPUが誤作動(以下、これを「暴走」という)した場合に常に安全側へ移行させることができるようにCPU監視装置が設けられる。このようなCPU監視装置は、CPUの暴走を監視する監視部を備える。
【0003】
また、CPU監視装置では、監視部が正常に機能しているか否かをチェックするために、監視部自体を診断(機能チェック)する場合がある。このような場合、たとえば、電源投入後にCPUをリセット状態に保持する、いわゆるパワーオンリセット期間が終了してから監視部を診断する(たとえば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開平9−282024号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、上述したような従来のCPU監視装置のように、パワーオンリセット期間後に監視部を診断する場合、パワーオンリセット期間後に監視部を診断する時間を設ける必要があった。このため、電源が投入されてからCPUが通常動作を開始するまでに時間がかかっていた。
【0006】
本発明は、上記に鑑みてなされたものであって、CPUが通常動作を開始するまでの時間を短縮することができるCPU監視装置、車両制御システムおよびCPU監視方法を提供することを目的とする。
【課題を解決するための手段】
【0007】
上記課題を解決し、目的を達成するために、本発明は、CPU監視装置において、監視部と、診断部とを備える。監視部は、CPUの暴走を監視する。診断部は、電源が投入されてからパワーオンリセット期間が終了するまでの間に前記監視部を診断する。
【発明の効果】
【0008】
本発明によれば、CPUが通常動作を開始するまでの時間を短縮することができる。
【図面の簡単な説明】
【0009】
図1図1は、実施形態に係る車両制御システムの概要を示す説明図である。
図2A図2Aは、CPU監視装置の比較例を示すブロック図である。
図2B図2Bは、CPU監視装置の比較例を示すタイミングチャートである。
図3A図3Aは、実施形態に係るCPU監視装置の一例を示すブロック図である。
図3B図3Bは、実施形態に係るCPU監視装置の一例を示すタイミングチャートである。
図4図4は、第1の実施形態に係るCPU監視装置のタイミングチャートである。
図5図5は、第2の実施形態に係るCPU監視装置のタイミングチャートである。
図6図6は、実施形態に係るCPU監視方法の処理手順の一部を示すフローチャートである。
【発明を実施するための形態】
【0010】
以下、添付図面を参照して、本願の開示するCPU監視装置、車両制御システムおよびCPU監視方法の実施形態を詳細に説明する。なお、以下に示す実施形態によりこの発明が限定されるものではない。
【0011】
<1.車両制御システムの概要>
まず、車両制御システムの概要を説明する。図1は、実施形態に係る車両制御システムの概要を示す説明図である。図1に示すように、車両制御システム1は、車両2の各部を制御する車両制御装置10を備える。車両制御装置10としては、たとえば、ECU(Electronic Control Unit)がある(以下、車両制御装置10を「ECU」という)。ECU10は、エンジンの基本的な制御の他、車両2における駆動系、制動系および操舵系などの被制御対象3を制御する。なお、図1には、被制御対象3の一例としてエンジンを記載している。
【0012】
また、ECU10は、CPU11を備える。さらに、ECU10は、CPU監視装置12と、フェイルセーフ装置13とを備える。CPU監視装置12は、CPU11の動作中、CPU11の暴走を監視する機能を有するものである。また、CPU監視装置12は、監視結果をフェイルセーフ装置13へ出力する。フェイルセーフ装置13は、CPU監視装置12から出力された監視結果が「異常」、すなわち、「CPU11の暴走」の場合でも常に安全側となるモード(フェイルセーフモード)を実行するものである。
【0013】
車両制御システム1では、CPU監視装置12によってCPU11の暴走を監視する。CPU監視装置12がCPU11の暴走を検知すると、フェイルセーフ装置13によってフェイルセーフモード(たとえば、被制御対象3がエンジンなどの駆動系の場合には回転を停止させるモード)へ移行する。これにより、安全を確保する。
【0014】
<2.CPU監視装置の構成>
次に、CPU監視装置12の構成について説明する。図2Aは、CPU監視装置の比較例を示すブロック図である。図2Bは、CPU監視装置の比較例を示すタイミングチャートである。図3Aは、実施形態に係るCPU監視装置12の一例を示すブロック図である。図3Bは、実施形態に係るCPU監視装置12の一例を示すタイミングチャートである。なお、図2Aおよび図2Bには、実施形態の比較例として従来のCPU監視装置50を記載している。また、図2Bおよび図3Bは、図2Aおよび図3Aにおける後述する各部の信号タイミングを示している。
【0015】
図2Aに示すように、CPU監視装置50は、CPU11から出力された一定周期のプログラムラン信号(以下、「PRUN信号」と記載する)が入力され、入力されたPRUN信号に基づいてCPU11の暴走を検知すると、フェイルセーフ装置13へ後述するフェイル信号を出力する。このようなCPU監視装置50は、パワーオンリセット発生部14と、監視部15と、リセット発生部16と、フェイル判定部17とを備える。
【0016】
パワーオンリセット発生部14は、パワーオンリセット信号(以下、「POR信号」と記載する)を発生する回路であり、電源が投入されて電源電圧が規定電圧以上になってから、CPU11を一定時間リセット状態に保持する。パワーオンリセット発生部14は、電源電圧が規定電圧になると一定時間経過後にPOR信号を出力する。なお、図2Aにおいては、POR信号を符号(a)で示している。また、電源が投入されてからPOR信号が出力されるまでをパワーオンリセット期間という。また、規定電圧とは、たとえば、PIC(Peripheral Interface Controller)の規格表に記載されている電圧値である。
【0017】
監視部15は、CPU11の暴走を監視する監視タイマである。監視部15としては、ウォッチドッグタイマ(以下、「WDT」と記載する)がある(以下、監視部15を「WDT」という)。具体的には、このような監視部、すなわち、WDT15は、CPU11の動作中、CPU11から出力されたPRUN信号のデューティ比、周期、パルス幅などの正常/異常を監視している。なお、図2Aにおいて、CPU11から出力されるPRUN信号を符号(b)で示している。
【0018】
WDT15は、CPU11が暴走すると、PRUN信号の異常を検出する。このようなPRUN信号の異常をCPU11の暴走(異常)信号として、このようなPRUN異常信号をリセット発生部16およびフェイル判定部17へ出力する。なお、図2Aにおいて、PRUN異常信号を符号(c)で示している。
【0019】
リセット発生部16は、リセット信号を発生する回路であり、一定周期のリセットパルス(リセット信号)をフェイル判定部17へ出力する。リセット発生部16のリセット信号は、フェイル判定部17に入力されるとともに、アンドゲート21を介してCPU11に入力される。これにより、CPU11は、リセット信号によって初期化され、正常状態へ復帰する。なお、図2Aにおいて、リセット信号を符号(d)で示している。また、パワーオンリセット期間後のリセット信号を符号(z)で示している。
【0020】
フェイル判定部17は、フェイル判定信号を発生する回路であり、たとえば、リセット発生部16から出力されたリセット信号のリセットパルスが所定の回数入力された場合にCPU11のフェイル(異常)状態と判定する。また、フェイル判定部17は、CPU11の異常状態と判定すると、フェイル判定信号をフェイルセーフ出力部18へ出力する。なお、図2Aにおいて、フェイル判定信号を符号(e)で示している。
【0021】
フェイルセーフ出力部18は、フェイルセーフ装置13に設けられ、フェイル信号を発生する回路であり、フェイル信号をフェイルセーフ装置13の駆動部(図示省略)へ出力する。フェイルセーフ装置13は、フェイル信号が駆動部に入力されると、フェイルセーフモードを実行する。これにより、CPU11が安全側へ移行する。
【0022】
ここで、上述した各部の入力/出力動作および各信号の流れについて説明する。図2Aに示すように、電源が投入された場合のみパワーオンリセット発生部14から出力されるPOR信号は、アンドゲート21を介してCPU11に入力されるとともに、フェイル判定部17へ入力される。また、フェイル判定部17から出力されるフェイル判定信号は、フェイルセーフ出力部18へ入力されるとともに、CPU11へ入力される。
【0023】
また、フェイル判定部17は、パワーオンリセット発生部14からのPOR信号が入力されると、CPU11がフェイル状態であることを示すフェイル判定信号を出力する。そして、フェイル判定部17は、CPU11のパワーオンリセット期間後にリセット発生部16から出力されたリセット信号の最初のリセットパルスによって、フェイル判定信号をCPU11の異常状態を示していた信号から正常状態を示す信号へ復帰させる。
【0024】
また、CPU11は、フェイル判定部17のフェイル判定信号を監視し、パワーオンリセット期間後のイニシャライズ時にPRUN信号を一旦停止させ、WDT15およびリセット発生部16を動作させる。さらに、フェイル判定部17は、POR信号が入力されると、フェイル判定信号を出力し、パワーオンリセット期間後のリセット信号(最初のリセットパルス)によってフェイル判定信号がCPUの正常状態の信号へ復帰することを確認して、自らが正常に動作するものと診断する。
【0025】
なお、リセット信号におけるリセットパルスの間隔は、CPU11にリセットパルスが入力されて、プログラムが再起動してPRUN信号を出力することができる時間に対して余裕をもって設定される。
【0026】
次に、図2Bを参照して電源が投入されてからCPU11が通常動作を開始するまでの各部の信号タイミングを説明する。なお、図2Bにおいても、符号(a)はPOR信号、(b)はPRUN信号、(c)はPRUN異常信号、(d)はリセット信号(リセットパルス)、(e)はフェイル判定信号、(z)はパワーオンリセット期間後のリセット信号を示している。
【0027】
図2Bに示すように、タイミングTで電源が投入されると、パワーオンリセット発生部14(図2A参照)は、所定のパワーオンリセット期間が経過したタイミングTでパワーオンリセット期間を終了するPOR信号(a)を出力する。また、フェイル判定部17(図2A参照)は、POR信号(a)が入力されると、フェイル判定部17の出力電圧レベルがハイ(H)となる。すなわち、フェイル判定部17は、フェイル判定信号(e)を出力する。
【0028】
また、CPU11(図2A参照)は、アンドゲート21(図2A参照)を介してPOR信号(a)が入力されると、プログラムは機能チェック(初期化)を開始する。そして、機能チェックが終了すると、図中に示す「WDT診断領域」においてプログラムはWDT15の診断ルーチンを開始する。WDT15の診断では、たとえば、CPU11が内部メモリにWDT15を診断することを示すフラグ(後述するロジック監視フラグ)をセットし、フェイル判定部17の出力電圧レベルがCPU11の異常状態を示すハイ(H)となった、すなわち、フェイル判定信号(e)が出力されたことを確認し、PRUN信号(b)の出力を停止させる。
【0029】
また、WDT15は、所定の検出時間を超過してPRUN信号(b)が停止していることを検出すると、リセット発生部16(図2A参照)およびフェイル判定部17(図2A参照)へPRUN異常信号(c)を出力する。リセット発生部16は、PRUN異常信号(c)が入力されると、パワーオンリセット期間後の最初のリセットパルスを出力する。これにより、パワーオンリセット期間後のリセット信号(z)の最初のリセットパルスによって、CPU11は、リセット状態とされ、再度初期化されて正常状態となる。
【0030】
CPU11は、WDT15を再度診断する場合に、内部メモリにWDT15の診断を示すフラグがセットされたことを確認するとともに、フェイル判定部17の出力電圧レベルが正常状態を示すロー(L)レベルであることを確認する。このように、CPU11は、フェイル判定部17の出力電圧レベルがCPU11の異常状態を示すハイ(H)から正常状態を示すロー(L)へ切り換えられたことが確認されると、WDT15、リセット発生部16およびフェイル判定部17が正常に動作しているものと診断する。なお、CPU11は、これら各部の診断後、WDT15の診断を示すフラグをリセットする。
【0031】
このように、上述したCPU監視装置50では、パワーオンリセット期間後の各部の機能チェック時にCPU11の異常状態を意図的に作り出すことで、WDT15、リセット発生部16およびフェイル判定部17を診断することができる。これにより、たとえば、機能チェックプログラムの起動中も動作しているような、これまで適用が困難であったアプリ(たとえば、EFI(Electronic Fuel Injection:電子制御燃料噴射装置)やエアバッグ)にも各部の診断機能を持たせることができる。
【0032】
ところが、CPU監視装置50は、CPU11が通常動作を開始するまでに時間がかかるという点について改良の余地がある。そこで、実施形態に係るCPU監視装置12では、WDT15の監視機能を有しつつも、CPU11の動作開始の時間を短縮することができるようにした。
【0033】
ここから、図3Aおよび図3Bを参照して実施形態に係るCPU監視装置12の構成例について説明する。なお、実施形態に係るCPU監視装置12の説明において、上述したCPU監視装置50と同一または同等の箇所には同一の符号を付し、重複する説明を省略することとする。
【0034】
図3Aに示すように、CPU監視装置12は、診断部19を備える。診断部19は、監視部であるWDT15が正常に機能しているか否かを診断する。また、診断部19は、WDT15から出力されるPRUN異常信号に基づいて、WDT15がパワーオンリセット期間中のPRUN信号停止にてCPU11の暴走と判定したことを検出する。そして、診断部19は、CPU11の暴走(疑似的な暴走)を検出すると、アンドゲート21へ信号を出力するとともに、インバータ23を介してオアゲート22へ信号を出力する。
【0035】
また、WDT15は、WDTカウンタ(図4および図5参照)を備える。そして、診断部19は、WDTカウンタのカウント値が所定値を超えた場合にCPU11の暴走として診断する。
【0036】
また、診断部19は、電源が投入されてからパワーオンリセット期間が終了するまでの間にWDT15を診断する。診断部19は、WDT15によるCPU11の暴走を検出すると、パワーオンリセット期間の終了を許可する。すなわち、診断部19がWDT15によるCPU11の暴走を検出すると、WDT15が正常に動作していると判断して、POR信号がアンドゲート21を介してCPU11へ入力され、パワーオンリセット期間の終了が許可される。なお、図3Aにおいて、診断部19から出力される信号(WDT判定信号)を符号(f)で示している。
【0037】
このように、CPU監視装置12では、WDT15を診断するにあたって、診断部19から出力される信号に基づいてCPU11の異常状態を検出することができる。したがって、WDT15を診断するためにフェイル判定部17を含めないため、冗長設計を改善することができる。
【0038】
次に、図3Bを参照して電源が投入されてからCPU11が通常動作を開始するまでの各部の信号タイミングを説明する。なお、図3Bにおいて、符号(a)はPOR信号、(b)はPRUN信号、(c)はPRUN異常信号、(d)はリセット信号(リセットパルス)、(e)はフェイル判定信号、(f)はWDT判定信号、(z)はパワーオンリセット期間後のリセット信号を示している。
【0039】
図3Bに示すように、タイミングTで電源が投入されると、パワーオンリセット発生部14(図3A参照)は、所定のパワーオンリセット期間が経過したタイミングTでパワーオンリセット期間を終了するPOR信号(a)を出力する。
【0040】
また、CPU11(図3A参照)は、アンドゲート21(図3A参照)を介してPOR信号(a)が入力されると、CPU11の通常動作を開始する。ここで、CPU監視装置12では、電源が投入されたタイミングTからパワーオンリセット期間が終了するまでタイミングTの間にWDT15を診断する。
【0041】
タイミングTからタイミングTまでのWDT15の停止中、図中に示す「WDT診断領域」においてプログラムはWDT15の診断ルーチンを開始する。WDT15は、所定の検出時間を超過してPRUN信号(b)が停止していることを検出すると、リセット発生部16(図3A参照)およびフェイル判定部17(図3A参照)へPRUN異常信号(c)を出力する。リセット発生部16は、PRUN異常信号(c)が入力されると、リセット信号(d)をフェイル判定部17およびアンドゲート21へ出力する。
【0042】
なお、上述したように、WDT15のカウント値を上げてCPU11の暴走を意図的に作り出すことで、WDT15を診断することができる。診断部19の出力電圧レベルがCPU11の異常状態(CPU11の暴走状態)を示すハイ(H)となった、すなわち、WDT15の正常動作を示すWDT判定信号(f)がアンドゲート21へ出力されたことで、リセット信号(z)がCPU11へ入力される。
【0043】
上述してきたように、実施形態に係るCPU監視装置12によれば、パワーオンリセット期間が終了すると、この後のWDT15の診断(機能チェック)を行うことなく、CPU11の通常動作を開始することができる。これにより、CPU11が通常動作を開始するまでの時間を短縮することができる。
【0044】
また、診断部19は、WDT15を診断するためにWDTカウンタのカウント値によるCPU11の暴走を作り出すことで、WDT15を容易に診断することができるとともに、WDT15を確実に診断することができる。
【0045】
また、WDT15を診断するための診断部19を備えることで、CPU11の監視機能喪失時であっても、フェイルセーフモードへ確実に移行することができる。
【0046】
さらに、図3Aに示すように、上述した実施形態に係るCPU監視装置12は、診断部19によるWDT15の診断結果を外部へ出力する報知部25を備える。このような報知部25を備えることで、WDT15が正常に機能しているか否かを外部へ知らせることができる。
【0047】
<3.各実施形態の構成>
ここから、上述した実施形態に係るCPU監視装置12において、WDT15を診断するタイミングが異なる第1の実施形態および第2の実施形態を説明する。まず、図4を参照して第1の実施形態について説明する。図4は、第1の実施形態に係るCPU監視装置12のタイミングチャートである。なお、図4では、図中の一点破線よりも左側にはWDT15(図3A参照)が正常の場合を示し、また、一点破線よりも右側には比較例としてWDT15が異常の場合を示している。
【0048】
また、図4には、上から電源電圧、PRUN信号、CPUリセット信号および減電圧検知信号の各タイミングを示している。また、図4には、WDTカウンタCLK(クロック数)を示し、さらに、WDTカウンタのカウントアップのタイミング、ロジック監視フラグ、PORカウンタおよびリセットカウンタの各カウントアップのタイミングを示している。なお、パワーオンリセット発生部14(図3A参照)はPORカウンタを備え、リセット発生部16(図3A参照)はリセットカウンタを備える。
【0049】
図4に示すように、CPU11(図3A参照)は、減電圧リセット状態から電源が投入されるタイミングTでパワーオンリセット状態へ移行する。CPU11は、所定のパワーオンリセット期間が終了するタイミングTで通常動作を開始する。
【0050】
ここで、第1の実施形態では、診断部19(図3A参照)は、パワーオンリセット期間中にWDT15を診断する。具体的には、WDTカウンタは、パワーオンリセット期間が開始されると同時にカウントアップが開始され、パワーオンリセット期間中にカウント値が所定値を超えてCPU11が暴走した状態と同じ状態を作り出す。
【0051】
なお、WDTカウンタは、パワーオンリセット期間中にカウント値が所定値を超えるように、CPU11の通常動作中のカウントアップTWDT1時のクロック数(1倍)の複数倍(図示の例では、4倍)に設定される。これにより、WDTカウンタのカウントアップTWDT2およびPORカウンタのカウントアップTPORを並行しても、WDTカウンタのカウントアップTWDTの方が先に終了する。
【0052】
WDTカウンタのカウント(WDTカウント)値が所定値を超えると、CPU11の暴走と判定され、これにより、WDT15が正常に機能していると判定される。そして、パワーオンリセット期間をカウント後、ロジック監視フラグが正常であることを確認してパワーオンリセット期間を終了する。
【0053】
なお、図4に示すように、CPU11が通常動作中に任意のタイミングTで暴走した場合、WDTカウンタは通常設定のクロック数(1倍)でカウントアップされる。WDTカウンタのカウント値が所定値を超えると、CPUリセット信号がロー(L)となるとともに、リセットカウンタが、たとえば、4倍のクロック数でカウントアップされる。
【0054】
リセットカウンタのカウント(リセットカウント)値が所定値を超えると、CPUリセット信号がハイ(H)となり、暴走リセットが解除され、CPU11は通常動作を再開する。
【0055】
ここで、図4(右側)を参照して、たとえば、診断部19によってWDT15が異常の場合について説明する。図4に示すように、この場合、WDT15が正常に動作していないため、すなわち、WDTカウンタがカウントしないなどの異常が生じているため、PORカウンタがPORカウントを終了したタイミングTで、ロジック監視フラグがA点において倒れたまま(異常のまま)となる。このため、CPUリセット信号は、リセットを解除することができないなどのフェイルセーフモードへ移行される。
【0056】
このような第1の実施形態によれば、パワーオンリセット期間中にWDTのカウントを終了することができ、CPU11が通常動作を開始するまでの時間を短縮することができる。
【0057】
次に、図5を参照して第2の実施形態について説明する。図5は、第2の実施形態に係るCPU監視装置12のタイミングチャートである。なお、図5でも、図4と同様に、図中の一点破線よりも左側にはWDT15(図3A参照)が正常の場合を示し、また、一点破線よりも右側には比較例としてWDT15が異常の場合を示している。また、第2の実施形態の説明において、上述した第1の実施形態と同一または同等の箇所には同一の符号を付し、重複する説明は省略することとする。
【0058】
また、図5においても、上から電源電圧、PRUN信号、CPUリセット信号および減電圧検知信号の各タイミングを示している。また、WDTカウンタCLK(クロック数)を示し、さらに、WDTカウンタのカウントアップのタイミング、ロジック監視フラグ、PORカウンタおよびリセットカウンタの各カウントアップのタイミングを示している。なお、パワーオンリセット発生部14(図3A参照)はPORカウンタを備え、リセット発生部16(図3A参照)はリセットカウンタを備える。
【0059】
第2の実施形態では、診断部19(図3A参照)は、パワーオンリセット期間中のPORカウントが開始される前にWDT15を診断する。具体的には、WDTカウンタは、電源電圧が所定の電圧値になると同時にカウントアップが開始され、PORカウンタのカウントが開始する前にカウント(WDTカウント)値が所定値を超えてCPU11が暴走した状態と同じ状態を作り出す。
【0060】
なお、WDTカウンタは、パワーオンリセット期間の延長を抑える目的で早急にカウント値が所定値を超えるように、CPU11の通常動作中のカウントアップTWDT1時のクロック数(1倍)の複数倍(図示の例では、20倍)に設定される。これにより、WDTカウンタのカウントアップTWDT2が終了してからPORカウンタのカウントアップTPORを開始するが、クロック数が20倍のため、WDTカウンタのカウントアップTWDTが速やかに終了する。
【0061】
なお、第2の実施形態においても、上述した第1の実施形態と同様、WDTカウンタのカウント値が所定値を超えると、CPU11の暴走と判定され、これにより、WDT15が正常に機能していると判定される。そして、パワーオンリセット期間をカウント後、ロジック監視フラグが正常であることを確認してパワーオンリセット期間を終了する。
【0062】
なお、図5に示すように、CPU11が通常動作中に任意のタイミングTで暴走した場合、WDTカウンタは通常設定のクロック数(1倍)でカウントアップされる。WDTカウンタのカウント値が所定値を超えると、CPUリセット信号がロー(L)となるとともに、リセットカウンタが、たとえば、20倍のクロック数でカウントアップされる。
【0063】
そして、リセットカウンタのカウント値が所定値を超えると、CPUリセット信号がハイ(H)となり、暴走リセットが解除され、CPU11を再起動して、CPU11は通常動作を再開する。
【0064】
ここで、図5(右側)を参照して、たとえば、診断部19によってWDT15が異常の場合について説明する。図5に示すように、この場合、WDT15が正常に動作していないため、すなわち、WDTカウンタがカウントしないなどの異常が生じているため、PORカウンタがカウント(PORカウント)を開始するタイミングTで、ロジック監視フラグがB点において倒れたまま(異常のまま)となる。これにより、PORカウンタがカウントすることができず、CPUリセット信号は、リセット状態を解除することができないなどのフェイルセーフモードへ移行される。
【0065】
このような第2の実施形態によれば、パワーオンリセット期間中にWDTカウントを終了することができ、CPU11が通常動作を開始するまでの時間を短縮することができる。また、WDT15が正常に機能していることを確認してからパワーオンリセット期間のPORカウントを開始することができる。
【0066】
なお、上述した第1の実施形態では、WDT15の診断をパワーオンリセット期間中にPORカウントと並行して行い、また、上述した第2の実施形態では、パワーオンリセット期間のPORカウントが開始される前に行う。しかし、これに限定されず、たとえば、WDT15の診断を、電源が投入されてからパワーオンリセット期間に移行する前に行うように構成してもよい。このように構成することで、CPU11の通常動作を開始するまでの時間をさらに短縮することができる。
【0067】
<4.CPU監視方法>
次に、図6を参照して、以上のように構成されたCPU監視装置12によるCPU監視方法について説明する。図6は、実施形態に係るCPU監視方法の処理手順の一部を示すフローチャートである。なお、図6には、電源が投入されてからパワーオンリセット期間が終了するまでの処理を示している。また、図6に示す各処理は、CPU11による制御に基づいて実行される。
【0068】
以下で説明するCPU監視方法は、監視工程と、診断工程とを備える。監視工程は、WDT15によってCPU11の暴走監視を行う工程である。また、診断工程は、診断部19によってWDT15の診断を行う。また、診断部19は、パワーオンリセット期間が終了するまでの間にWDT15を診断する。
【0069】
図6に示すように、電源が投入されると(ステップS101)、CPU11では、減電圧リセット状態から電源電圧が上がり始める。そして、電圧が規定電圧になると、パワーオンリセット期間が開始される(ステップS102)。
【0070】
次いで、パワーオンリセット期間中、監視工程および診断工程が実行される。監視工程では、WDT15は、CPU11の暴走を監視する。ここで、WDT15は、CPU11が暴走した場合の状態を作り出す。
【0071】
また、診断工程では、診断部19がWDT15を診断する(ステップS103)。なお、このとき、上述した第1の実施形態では、WDTカウントおよびパワーオンリセット期間のPORカウントが並行して行われる。また、上述した第2の実施形態では、WDTカウントを先行して行い、WDTカウントが終了してからPORカウントが開始される。
【0072】
続いて診断部19は、WDT15が正常に機能しているか否かを判定する(ステップS104)。ステップS104の処理において、WDT15が正常と判定されると(ステップS104,Yes)、電源電圧の安定や内部レジスタの初期化の完了を待って、パワーオンリセット期間が終了する(ステップS105)。
【0073】
ステップS104の処理において、WDT15が異常と判定されると(ステップS104,No)、CPU11をリセット状態に維持する。すなわち、CPU11のリセット状態が解除されない。これにより、システムが停止したままとなるフェイルセーフモードとなり、安全を確保する。
【0074】
このようなCPU監視方法によれば、パワーオンリセット期間中にWDT15を診断するため、パワーオンリセット期間が終了すると、この後でこれまで行っていたWDT15の診断(機能チェック)を行うことなく、CPU11の通常動作を開始することができる。これにより、CPU11が通常動作を開始するまでの時間を短縮することができる。
【0075】
さらなる効果や変形例は、当業者によって容易に導き出すことができる。このため、本発明のより広範な態様は、以上のように表しかつ記述した特定の詳細および代表的な実施形態に限定されるものではない。したがって、添付の特許請求の範囲およびその均等物によって定義される総括的な発明の概念の精神または範囲から逸脱することなく、様々な変更が可能である。
【符号の説明】
【0076】
1 車両制御システム
10 車両制御装置(ECU)
11 CPU
12 CPU監視装置
13 フェイルセーフ装置
14 パワーオンリセット発生部
15 監視部(WDT)
16 リセット発生部
17 フェイル判定部
18 フェイルセーフ出力部
21 アンドゲート
25 報知部
図1
図2A
図2B
図3A
図3B
図4
図5
図6