(57)【要約】【課題】ＣＰＵ等が低消費電力モード又は停止状態から起動を完了するまでの期間の異常を監視可能な情報処理装置を提供すること。【解決手段】被監視対象の制御手段１３と、前記制御手段が出力する周期パルスに基づき前記制御手段を監視する監視装置１１と、を有する情報処理装置１００であって、前記制御手段は、停止状態又は休止状態から、所定のスイッチのＯＮ又は予め定められた契機を検出し標準起動時間の経過後に起動状態に移行し、起動状態において前記周期パルスを出力するパルス出力手段４９と、前記スイッチのＯＮと同時に、前記監視装置に監視要求信号を出力する監視要求信号出力手段４７と、を有し、前記監視装置は、前記スイッチがＯＮになってから前記標準起動時間が経過するまでの前記周期パルスと前記監視要求信号とを比較して、前記制御手段の異常の有無を判定する信号監視手段４２、有することを特徴とする。【選択図】図１
2014146131.tif 000002
【特許請求の範囲】
【請求項１】
被監視対象の制御手段と、前記制御手段が出力する周期パルスに基づき前記制御手段を監視する監視装置と、を有する情報処理装置であって、
前記制御手段は、
停止状態又は休止状態にて所定のスイッチのＯＮ又は予め定められた契機を検出して、標準起動時間の経過後に起動状態に移行し、
前記周期パルスを出力するパルス出力手段と、
前記スイッチのＯＮと同時に、前記監視装置に監視要求信号を出力する監視要求信号出力手段と、を有し、
前記監視装置は、
前記スイッチがＯＮになってから前記標準起動時間が経過するまでの前記周期パルスと前記監視要求信号とを比較して、前記制御手段の異常の有無を判定する信号監視手段、
を有することを特徴とする情報処理装置。
【請求項２】
前記監視要求信号出力手段は、前記スイッチのＯＦＦと同時に前記監視要求信号の出力を停止し、
前記信号監視手段は、
前記スイッチがＯＦＦになってから前記制御手段が停止状態又は休止状態に移行する標準停止時間において、前記監視要求信号と前記周期パルスとを比較して、前記制御手段の異常の有無を判定する、
ことを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記信号監視手段は、
前記スイッチがＯＮになってから前記標準起動時間が経過した後、前記周期パルスが周期的に反転するか否かを監視し、前記周期パルスが周期的に反転してない場合、前記制御手段が異常であると判定する、
ことを特徴とする請求項１又は２記載の情報処理装置。
【請求項４】
前記スイッチがＯＮになってから前記標準起動時間が経過した後の前記監視要求信号は、前記周期パルスと同一周期逆位相のパルスであり、
前記信号監視手段は、
前記周期パルスと前記監視要求信号に位相差が生じる時間に基づき、前記制御手段が異常か否かを判定する、
ことを特徴とする請求項１〜３いずれか１項記載の情報処理装置。
【請求項５】
前記信号監視手段は、前記制御手段が閾値以上の重要度の処理を行う場合は、１つの前記周期パルスと１つの前記監視要求信号のパルスに位相差が生じる前記時間が第１の閾値以上の場合に異常であると判定し、
前記制御手段が閾値未満の重要度の処理を行う場合は、複数の前記周期パルスと複数の前記監視要求信号のパルスに位相差が生じる前記時間の合計が第２の閾値以上の場合に異常であると判定する、
ことを特徴とする請求項４記載の情報処理装置。
【請求項６】
前記スイッチはＩＧスイッチ又はパワースイッチであり、
前記制御手段は車載装置を制御する電子制御装置であり、
前記監視装置は、前記スイッチの状態に応じて前記制御手段に電源を供給するＩＣである、ことを特徴とする請求項１〜５いずれか１項記載の情報処理装置。
【請求項７】
前記制御手段及び前記監視装置により、周期パルスが出力されているか否かが監視される第２の制御手段を有し、
前記第２の制御手段は、当該情報処理装置に接続された車載装置を制御する、
ことを特徴とする請求項１〜６いずれか１項記載の情報処理装置。
【請求項８】
停止状態又は休止状態から、所定のスイッチのＯＮ又は予め定められた契機を検出して標準起動時間の経過後に起動状態に移行する制御手段を監視する監視装置であって、
前記スイッチのＯＮと同時に前記制御手段が出力する監視要求信号と、前記スイッチがＯＮになってから前記標準起動時間が経過するまでに前記制御手段が出力する周期パルスとを比較して、前記制御手段の異常の有無を判定する信号監視手段、
を有することを特徴とする監視装置。
【請求項９】
停止状態又は休止状態から、所定のスイッチのＯＮ又は予め定められた契機を検出し標準起動時間の経過後に起動状態に移行する制御装置であって、
周期パルスを出力するパルス出力手段と、
前記スイッチのＯＮと同時に、
当該制御装置の異常の有無を判定する監視装置が、前記スイッチがＯＮになってから前記標準起動時間が経過するまでに出力される前記周期パルスと比較するための監視要求信号を出力する監視要求信号出力手段と、
を有することを特徴とする制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、被監視対象の制御手段が出力する周期パルスに基づき制御手段を監視する監視装置等に関する。
【背景技術】
【０００２】
ＣＰＵの異常を検出するため、ＷＤＴ（ウォッチドッグタイマ）が用いられる場合がある。ＷＤＴがオーバーフローするまでにＣＰＵがクリアすることで、ＣＰＵが正常に動作していることが推定される。
【０００３】
また、マイコンなどに複数のＣＰＵが搭載されることが多くなっているが、マイコンなどでは消費電力を低減するため各ＣＰＵが個別に低消費電力モードになる技術が搭載されている。しかし、ＣＰＵが個別に低消費電力モードになると、ＣＰＵが異常のためＷＤＴをクリアしないのか、低消費電力モードのためＷＤＴをクリアしないのかの判別が困難になる。
【０００４】
そこで、複数のＣＰＵのうち低消費電力モードでないＣＰＵの異常のみを検出する技術が考えられている（例えば、特許文献１参照。）。特許文献１には、監視装置が、ＣＰＵ毎に正常時にオンとなるリセットフラグを有し、ＣＰＵがスタンバイモードの場合、監視装置はリセットフラグがオンであるとみなすことで、そのＣＰＵを監視対象から除外するマルチプロセッサが開示されている。このような処理により、マルチプロセッサの各ＣＰＵをＣＰＵ毎にスタンバイモードにしても、ＷＤＴがタイムアウトすることを防止できる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開2011-2993号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１では、ＣＰＵが低消費電力モードから起動を完了するまでの間にＣＰＵに異常が生じた場合に、異常を検出できないという問題がある。すなわち、低消費電力モードから復帰するための契機が検出されてから監視対象となるまでの間、ＣＰＵは監視されていないので、起動完了までに異常が生じた場合、監視装置はＣＰＵに異常があることを検出できない。
【０００７】
本発明は、上記課題に鑑み、ＣＰＵ等が低消費電力モード又は停止状態から起動を完了するまでの期間の異常を監視可能な情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本願は、被監視対象の制御手段と、前記制御手段が出力する周期パルスに基づき前記制御手段を監視する監視装置と、を有する情報処理装置であって、前記制御手段は、停止状態又は休止状態から、所定のスイッチのＯＮ又は予め定められた契機を検出し標準起動時間の経過後に起動状態に移行し、前記周期パルスを出力するパルス出力手段と、前記スイッチのＯＮと同時に、前記監視装置に監視要求信号を出力する監視要求信号出力手段と、を有し、前記監視装置は、前記スイッチがＯＮになってから前記標準起動時間が経過するまでの前記周期パルスと前記監視要求信号とを比較して、前記制御手段の異常の有無を判定する信号監視手段、を有することを特徴とする。
【発明の効果】
【０００９】
ＣＰＵ等が低消費電力モード又は停止状態から起動を完了するまでの期間の異常を監視可能な情報処理装置を提供することができる。
【図面の簡単な説明】
【００１０】
【図１】本実施形態のＥＣＵの起動時、停止時の信号波形の一例を示す図である。
【図２】ＥＣＵの主要なブロックを示す構成図の一例である。
【図３】メインマイコンの概略構成図の一例である。
【図４】統合ＩＣ、メインマイコン、及び、サブマイコンの機能ブロック図の一例である。
【図５】ＩＧスイッチのＯＮ時の異常の検出例について説明する図の一例である。
【図６】ＩＧスイッチのＯＦＦ時の異常の検出例について説明する図の一例である。
【図７】ＩＧスイッチのＯＮ〜ＯＦＦの間の異常の検出例について説明する図の一例である。
【図８】統合ＩＣがサブマイコンの異常を検出する手順を示すフローチャート図の一例である。
【図９】ステップＳ６０の処理の手順を示すフローチャート図の一例である。
【図１０】サブマイコンの異常検出における従来の技術と本実施形態の比較を示す表の一例である。
【図１１】従来のＥＣＵの主要なブロック示す構成図の一例である。
【発明を実施するための形態】
【００１１】
以下、本発明を実施するための形態について図面を参照しながら説明する。しかしながら、本発明の技術的範囲が、本実施の形態に限定されるものではない。
【００１２】
まず、本願を説明するために、従来の異常検出について説明する。図１１（ａ）は、従来のＥＣＵの主要なブロックを示す構成図の一例である。ＥＣＵ（Electronic  Control  Unit）１００は、統合ＩＣ、メインマイコン、及び、サブマイコンを有している。起動中のメインマイコンはサブマイコンと統合ＩＣに、起動中のサブマイコンはメインマイコンと統合ＩＣに、それぞれ定周期パルスを出力している。メインマイコンとサブマイコンはＫｅｅｐ信号が出力されるＫｅｅｐ線２１，２７でそれぞれ統合ＩＣと接続されており、統合ＩＣはいずれかのＫｅｅｐ信号がＨｉになるとサブマイコンの監視を開始する。メインマイコンの監視はＩＧスイッチのＯＮで開始される。
【００１３】
サブマイコンには、常時、待機を求められるアプリが搭載されており、動作している状態とイベント待ちのスリープ状態がある。メインマイコンが最も重要な処理を行うので、サブマイコンが起動した後にメインマイコンが起動し、同様に、メインマイコンが停止してからサブマイコンがスリープする。統合ＩＣ、メインマイコン、及び、サブマイコンには以下の監視関係がある。
・統合ＩＣはメインマイコンとサブマイコンのそれぞれから周期パルスが出力されているか否かに基づきメインマイコンとサブマイコンを監視する。
・サブマイコンはメインマイコンから周期パルスが出力されているか否かに基づきメインマイコンを監視する。
・メインマイコンはサブマイコンを監視しておらず、メインマイコン及びサブマイコンは統合ＩＣを監視していない。
【００１４】
図１１（ｂ）はメインマイコン及びサブマイコンの起動の順序を示すシーケンス図の一例である。
t1：ＩＧスイッチがＯＮとなる。これによりメインマイコンが起動を開始する。
t2：サブマイコンはＩＧスイッチのＯＮ又は乗員が乗車することなどを契機にスリープ状態から復帰する。このため、メインマイコンより先に起動が完了する。
t3：復帰したサブマイコンはＫｅｅｐ信号をＨｉに設定する。これにより統合ＩＣはサブマイコンの監視を開始する。また、サブマイコンは起動するとメインマイコンの監視を開始する。
t4：メインマイコンが起動を完了する。
t5：起動を完了したメインマイコンはＫｅｅｐ信号をＨｉに設定する。統合ＩＣはサブマイコンがＫｅｅｐ信号をＨｉを出力できなくなった場合でもサブマイコンの異常を検出できる。
t11：イグニッションがＯＦＦとなる。これによりメインマイコンが停止処理を始める。
t12：メインマイコンはＫｅｅｐ信号をＬｏｗに設定する。この時点では、統合ＩＣはサブマイコンの監視を継続している。
t13：メインマイコンが停止する。統合ＩＣはメインマイコンの監視を終了する。
t14：サブマイコンはＩＧスイッチのＯＦＦにより自身が行う処理がなくなると、スリープモードになるので、まず、Ｋｅｅｐ信号をＬｏｗに設定する。これにより、統合ＩＣはサブマイコンの監視を停止する。
t15：サブマイコンがスリープする。
【００１５】
しかしながら、起動時の点線で囲まれた時間帯において、サブマイコンが監視されない状態が生じうるおそれがあった。すなわち、時刻t3にサブマイコンがＫｅｅｐ信号をＨｉに設定すれば統合ＩＣはサブマイコンを監視できるが、サブマイコンがＫｅｅｐ信号をＨｉに設定する前に異常が生じた場合、異常状態かスリープモードのままなのかの区別がつかない。
【００１６】
また、停止時の点線で囲まれた時間帯で、サブマイコンにＫｅｅｐ信号がＬｏｗに固着する異常が発生した場合、サブマイコンの異常かスリープモードなのかを判定できない。また、停止時の点線で囲まれた時間帯で、サブマイコンにＫｅｅｐ信号がＨｉに固着する異常が発生した場合、統合ＩＣは監視を継続するので、サブマイコンが異常なのか（定周期パルスを出せない）、スリープなのか（スリープなのにＫｅｅｐ信号が出力されている状態。Ｋｅｅｐ信号については異常の監視対象外なので、単にスリープと判断される。）を検出できない。
【００１７】
このように、複数のマイコンが搭載されているＥＣＵ１００において、一番最初に起動を完了したマイコン、及び、一番最後に停止するマイコンは、異常状態が検出されない空白期間が生じる。空白期間は短時間であるが、機能安全（例えばＩＳＯ２６２６２）への対応を求められる場合には、対策を講じることが好ましいとされる。本実施形態のＥＣＵ１００は、上記の空白期間においてマイコンに異常が生じた場合にこれを検出して適切なフェールセーフを可能とする。
【００１８】
〔本願発明の概略〕
図１（ａ）は、本実施形態のＥＣＵ１００の起動時の信号波形の一例を示す図である。
t1：サブマイコンはＩＧスイッチ（ハイブリッド車や電気自動車はパワースイッチであるが、以下、単にＩＧスイッチという）がＯＮとなることで、連動して同時にＨｉとなるＫｅｅｐ信号を統合ＩＣに出力する。これにより、統合ＩＣはサブマイコンが起動を完了する前からサブマイコンの監視を開始できる。
t2：ＩＧスイッチがＯＮになった後、サブマイコンがスリープモードから復帰して起動を完了する。起動が完了すると、サブマイコンは周期Ｔの定周期パルスの出力を開始する。
【００１９】
時刻t1〜t2において、Ｋｅｅｐ信号はＨｉ、定周期パルスはＬｏｗである。すなわち、「定周期パルス＋Ｋｅｅｐ信号＝Ｈｉ」なら、統合ＩＣはサブマイコンが正常であると判断できる。したがって、統合ＩＣは最も先に起動するサブマイコンを確実に監視できる。
【００２０】
また、ＩＧスイッチがＯＮになった後、統合ＩＣが時間管理することで、サブマイコンが周期的に反転するＫｅｅｐ信号を出力できない異常になっていることを検出することが可能である。
【００２１】
なお、本実施形態のサブマイコンは、起動を完了するとＫｅｅｐ信号を定周期パルスと同一周期逆位相の信号に切り替える。Ｋｅｅｐ信号のパルスの効果については後述する。
【００２２】
図１（ｂ）は、本実施形態のマイコンの停止時の信号波形の一例を示す図である。
t1：サブマイコンはＩＧスイッチ（又はパワースイッチ）がＯＦＦとなることで、連動して同時にＫｅｅｐ信号及び定周期パルスをＬｏｗに設定する。
【００２３】
統合ＩＣはＩＧスイッチのＯＦＦを契機に停止時のサブマイコンの監視を開始する。すなわち、ＩＧスイッチがＯＦＦの状態では、「定周期パルス＋Ｋｅｅｐ信号＝Ｌｏｗ」が正常な状態である。したがって、統合ＩＣは、定周期パルス及びＫｅｅｐ信号に基づき、停止時のサブマイコンを確実に監視できる。
【００２４】
〔構成例〕
図２は、本実施形態のＥＣＵ１００の主要なブロック示す構成図の一例である。ＥＣＵ１００は、３つのブロックを有する。区別するため、各ブロックを、統合ＩＣ１１、メインマイコン１２、及び、サブマイコン１３と称することとするが、以下で説明される機能は各ブロックに固定である必要はない。すなわち、３つのブロックのいずれかが、以下で説明される機能を有していればよい。また、図２では、３つのブロックが１つのＥＣＵ１００内に配置されているが、３つのＥＣＵが個別に、統合ＩＣ１１、メインマイコン１２、及び、サブマイコン１３の機能を有していてもよい（トータルのＥＣＵは３つ）。また、３つのブロックの１又は２つだけが別のＥＣＵに配置される形態でもよい（トータルのＥＣＵは２つ）。
【００２５】
メインマイコン１２はＥＣＵ１００にメインの制御又は処理を行う。メインマイコン１２が行う処理は特に制限されないが、例えば、ハイブリッド車のエンジン出力とモータ出力を決定するＨＶ制御、ＩＧリレー・ＡＣＣリレーのＯＮ／ＯＦＦを制御するパワーマネージメント制御、車間距離を維持して車速を制御するオートクルーズ制御等が挙げられる。
【００２６】
サブマイコン１３が行う処理もどのようなものでもよいが、例えば、パーキング制御や接近警報制御を行う場合がある。パーキング制御とはパーキング切替機構のアンロック状態とロック状態を切り替える。接近警報制御はハイブリッド車や電気自動車で、発進から所定車速以下の速度域において、自動で警報音を出力する。なお、メインマイコン１２はサブマイコン１３よりも重要な処理を行うことが一般的である。例えば、サブマイコン１３がＡＳＩＬ ＱＭのアプリを実行する場合、メインマイコン１２が実行するアプリはＡＳＩＬ Ａ〜Ｄである。
【００２７】
統合ＩＣ１１は、バッテリからの電源供給の管理と共に、ＩＧスイッチのＯＮでメインマイコン１２を起動させ、サブマイコン１３をスリープ状態から復帰させる（サブマイコン１３の復帰要因はこれ以外にもある）。また、ＩＧスイッチのＯＦＦでメインマイコン１２を停止させる。また、統合ＩＣ１１はメインマイコン１２及びサブマイコン１３を監視し、異常時にリセットするなどの処理を行う。統合ＩＣ１１は、例えばＡＳＩＣ、ＳＯＣ（System-on-a-chip）、ＦＰＧＡなどで呼ばれるＩＣで実装されている。
【００２８】
統合ＩＣ１１は＋Ｂ電源であり、ＩＧスイッチのＯＮ中及びＯＦＦ中のいずれも電源が供給され、本実施形態の説明においてはスリープしない。サブマイコン１３は＋Ｂ電源であり、ＩＧスイッチのＯＦＦ中ではスリープモードである。また、乗員が乗車すること（キーの認証ＯＫ）やＩＧスイッチのＯＮなどのＷａｋｅＵｐ要因でスリープモードから起動状態に復帰する。メインマイコン１２はＩＧ電源であり、ＩＧスイッチのＯＮで起動、ＩＧスイッチのＯＦＦで停止する。
【００２９】
メインマイコン１２と統合ＩＣ１１、及び、サブマイコン１３と統合ＩＣ１１はｋｅｅｐ線２１，２７で接続されている。メインマイコン１２と統合ＩＣ１１及びサブマイコン１３は定周期パルスを送信するためのＷＤ（ウォッチドッグ）線２２で接続されており、サブマイコン１３と統合ＩＣ１１及びメインマイコン１２は定周期パルスを送信するためのＷＤ線２３で接続されている。また、統合ＩＣ１１とメインマイコン１２、及び、統合ＩＣ１１とサブマイコン１３は、統合ＩＣ１１がメインマイコン１２又はサブマイコン１３をリセットするためのリセット線２４，２６で接続されている。サブマイコン１３とメインマイコン１２は、サブマイコン１３がメインマイコン１２をリセットするためのリセット線２５で接続されている。なお、メインマイコン１２がサブマイコン１３をリセットすることはない。また、メインマイコン１２とサブマイコン１３は互いに通信するための通信線２８で接続されている。
【００３０】
監視関係は、従来と同様であり以下のような監視関係を有する。
・メインマイコン１２は、統合ＩＣ１１とサブマイコン１３から監視される。
・サブマイコン１３は統合ＩＣ１１から監視される。
【００３１】
図３は、メインマイコン１２の概略構成図の一例を示す。メインマイコン１２はシステムバスＢ１に接続された、ＣＰＵ３１、ＲＡＭ３２、ＲＯＭ３３、ＩＮＴＣ３４、ＷＤＴ３５、ＤＭＡＣ３６、周辺バス３７を介して接続された複数のＩ／Ｏ３９、及び、通信コントローラ３８を有している。メインマイコン１２は、この他、タイマなどのマイコンに一般的な構成を有している。
【００３２】
ＣＰＵ３１は、ＲＯＭ３３に記憶されたプログラムを実行することでマイコン全体を制御する。ＲＡＭ３２にはプログラムやデータが展開され、ＲＡＭ３２はＣＰＵ３１がアクセスする作業メモリになる。また、ＲＯＭ３３にはプログラムの他、プラットホームが記憶されている。プラットホームは、例えばＯＳ（Operating  System）やデバイスドライバなどである。ＯＳとしては、ＯＳＥＫ（Open system together with interfaces for automotive electronics）、ＡＵＴＯＳＡＲ（AUTomotive Open System Architecture） ＯＳなどのリアルタイムＯＳがあるが、これらに限定されるものではない。
【００３３】
ＩＮＴＣ３４は割込みマスク・マスクの解除などの設定が可能なレジスタと割込み要求が設定されるレジスタなどを有し、レジスタを監視して、周辺機器からの割り込み要求を割込みの優先順位に基づき調停してＣＰＵ３１に通知する。ＷＤＴ３５は、動作クロックをカウントして計測した時間が予め定められたリセット時間に達すると（オーバーフローすると）、異常を検出する回路である。ＷＤＴ３５がオーバーフローすると、例えばメインマイコン１２がリセットされるなどのフェールセーフが行われる。ＤＭＡＣ３６は、ＲＡＭ３２と周辺回路の間やＲＡＭ３２内で、ＣＰＵ３１を介することなくデータを転送する。
【００３４】
Ｉ／Ｏ３９には定周期パルスを出力するための端子、定周期パルスを受信するための端子、統合ＩＣ１１又はサブマイコン１３からリセットを受け付けるための端子、Ｋｅｅｐ信号を出力する端子、及び、データを通信するための端子などがある。
【００３５】
通信コントローラ３８は、メインマイコン１２が通信バス４０に接続された他のＥＣＵと通信するための通信回路である。通信コントローラ３８はメッセージを受信するとＩＮＴＣ３４を介してＣＰＵ３１に通知する。また、ＣＰＵ３１がメッセージを送信する際は、アプリケーションにより作成されたデータから通信コントローラ３８がメッセージを作成し通信バス４０に出力する。
【００３６】
サブマイコン１３の場合、Ｉ／Ｏ３９にさらにメインマイコン１２をリセットするための端子を有する。また、必ずしも通信コントローラを有していなくてもよいという違いはあるが、サブマイコン１３の構成はメインマイコン１２と同様でもよいし、特有の構成や一部の構成が省略されていてもよい。
【００３７】
〔サブマイコン等の機能〕
図４は統合ＩＣ１１、メインマイコン１２、及び、サブマイコン１３の機能ブロック図の一例を示す。統合ＩＣ１１は、リセット部（メイン）４１、リセット部（サブ）４４、位相差検出部４２、及び、メイン監視部４３を有する。
【００３８】
メイン監視部４３は、メインマイコン１２の定周期パルスを監視する。監視の契機は、例えばＩＧスイッチのＯＮが検出されてから所定時間（メインマイコン１２が起動するための時間）が経過したことである。または、Ｋｅｅｐ信号がＨｉに設定されたことを契機にメインマイコン１２を監視してもよい。リセット部（メイン）４１は定周期パルスが途絶した場合などにメインマイコン１２をリセットする。
【００３９】
位相差検出部４２は、サブマイコン１３のＫｅｅｐ信号とサブマイコン１３の定周期パルスの位相差を演算する。位相差によりサブマイコン１３の異常を早期に検出する。詳細は後述する。リセット部（サブ）４４は、サブマイコン１３の異常が検出されるとサブマイコン１３をリセットする。リセットのための信号は例えば任意の幅のパルスが形成されるワンショットパルスである。
【００４０】
メインマイコン１２は、Ｋｅｅｐ信号出力部４５及びパルス出力部（メイン）４６を有する。Ｋｅｅｐ信号出力部４５はメインマイコン１２の起動後、Ｋｅｅｐ信号をＨｉに設定し、ＩＧスイッチのＯＦＦで停止処理を行った後、Ｌｏｗに設定する。すなわち、メインマイコン１２の起動中、Ｋｅｅｐ信号がＨｉになる。Ｋｅｅｐ信号がＨｉであることは、統合ＩＣ１１にサブマイコン１３の監視依頼を行う契機となる。
【００４１】
パルス出力部（メイン）４６は、メインマイコンが起動中、定周期パルスを統合ＩＣ１１とサブマイコン１３に出力する。なお、メインマイコン１２は、サブマイコン１３を監視しない。
【００４２】
サブマイコン１３はメイン監視部４８、パルス出力部（サブ）４９、リセット部（メイン）５０、及び、Ｋｅｅｐ信号送信部４７、を有する。メイン監視部４８は、メインマイコン１２の定周期パルスを監視する。監視の契機は、例えばスリープから復帰後、メインマイコン１２が起動するための時間が経過したことである。また、ＩＧスイッチのＯＦＦを契機に、メインマイコン１２が停止するまでの時間が経過したら監視を終了する。リセット部（メイン）５０は、メインマイコン１２の異常が検出された場合、例えばワンショットパルスなどでメインマイコン１２をリセットする。
【００４３】
パルス出力部（サブ）４９は、定周期パルスを統合ＩＣ１１とメインマイコン１２に出力する。パルス出力部（サブ）４９は、サブマイコン１３が実行する制御の中の機能であるため、タスクが遅れると定周期パルスの周期が長くなる場合がある。また、本実施形態では、パルス出力部（サブ）４９はＩＧスイッチのＯＦＦで定周期パルスの出力を停止する。
【００４４】
Ｋｅｅｐ信号送信部４７は、Ｋｅｅｐ信号を統合ＩＣ１１に出力する。Ｋｅｅｐ線は例えばプルダウン回路５０でプルダウンされている。プルダウン回路５０は、スイッチ５２、抵抗５３及び電源５１を有している。また、Ｋｅｅｐ線２７にはスイッチ５４が配置されている。スイッチ５２、５４は例えば統合ＩＣ１１がＯＮ／ＯＦＦする。
【００４５】
統合ＩＣ１１はＩＧスイッチのＯＮにより、スイッチ５２，５４をＯＮに設定する。これによりＫｅｅｐ信号はＨｉに固定になる。統合ＩＣ１１は、時間管理により、サブマイコン１３がスリープモードから復帰してＫｅｅｐ信号送信部４７がＫｅｅｐ信号の送信を可能になった時、スイッチ５２のみＯＦＦにする。Ｋｅｅｐ信号送信部４７は定周期パルスとは逆位相のＫｅｅｐ信号の送信を開始する。  
また、統合ＩＣ１１はＩＧスイッチのＯＦＦでスイッチ５４をＯＦＦに設定する。これにより、Ｋｅｅｐ信号送信部４７の状態に関係なくＫｅｅｐ信号はＬｏｗになる。
【００４６】
〔定周期パルスについて〕
・パルス出力部（メイン）４６が出力する定周期パルスと、パルス出力部（サブ）４９が出力するパルスは同一周期（例えば1ミリ秒）である。
・パルス出力部（サブ）４９が出力するパルスとＫｅｅｐ信号送信部４７が出力する定周期パルスは同一周期逆位相である。
【００４７】
〔異常検出例〕
図５は、ＩＧスイッチのＯＮ時の異常の検出例について説明する図の一例である。なお、図５（ａ）はサブマイコン１３が正常な状態を、図５（ｂ）はサブマイコン１３に異常が生じた場合の定周期パルスとＫｅｅｐ信号を示している。
【００４８】
図５（ａ）に示すように、ＩＧスイッチのＯＮにより、上記のスイッチ５２，５４がＯＮになりサブマイコン１３のＫｅｅｐ信号はＨｉになる。ＩＧスイッチのＯＮの直後はサブマイコン１３がスリープモードから起動を完了していないため、パルス出力部（サブ）４９はパルスを出力することなく定周期パルスはＬｏｗである。Ｋｅｅｐ信号がＨｉになることで、統合ＩＣ１１の位相差検出部４２は位相差の演算を開始する。
【００４９】
そして、サブマイコン１３が起動を完了すると、パルス出力部（サブ）４９が定周期パルスの出力を開始すると共に、Ｋｅｅｐ信号送信部４７が定周期のパルスの出力を開始する。
【００５０】
ＩＧスイッチのＯＮから定周期パルスが出力されるまで、及び、定周期パルスが出力された後、２つのパルスは同一周期逆位相なので、２つのパルスの加算値は"１"、又は、減算値の絶対値は"１"である。
【００５１】
定周期パルス＋Ｋｅｅｐ信号  ＝１
｜定周期パルス−Ｋｅｅｐ信号｜＝１
したがって、位相差検出部４２は２つのパルスの加算値又は減算値を演算して、値がＬｏｗ（０）となった場合にサブマイコン１３の異常を検出できる。
【００５２】
図５（ｂ）では、サブマイコン１３がスリープモードから復帰を完了する前に、パルス出力部（サブ）４９が異常により意図しないタイミングでＨｉとなっている。したがって、定周期パルスがＨｉの部分で、
定周期パルス＋Ｋｅｅｐ信号  ＝０
｜定周期パルス−Ｋｅｅｐ信号｜＝０
である。位相差検出部４２は２つのパルスの加算値又は減算値がＬｏｗとなった場合にサブマイコン１３の異常を検出できる。
【００５３】
このように、本実施形態では、サブマイコン１３がスリープモードから復帰して起動を完了する前からＫｅｅｐ信号がＨｉになるので、サブマイコン１３の起動が完了するまでに異常が生じても統合ＩＣ１１が検出することができる。
【００５４】
なお、図５はスリープからの復帰を想定しているが、サブマイコンがリセットされ起動する場合も同様に異常を検出できる。例えば、リセット時、統合ＩＣはＫｅｅｐ信号をＨｉに設定する。定周期パルスはＬｏｗなので、「定周期パルス＋Ｋｅｅｐ信号  ＝０」から異常を検出できる。
【００５５】
図６は、ＩＧスイッチのＯＦＦ時の異常の検出例について説明する図の一例である。なお、図６（ａ）はサブマイコン１３が正常な状態を、図６（ｂ）はサブマイコン１３に異常が生じた場合の定周期パルスとＫｅｅｐ信号を示している。
【００５６】
図６（ａ）に示すように、ＩＧスイッチのＯＦＦにより、サブマイコン１３のパルス出力部（サブ）４９は定周期パルスの出力を停止し、Ｋｅｅｐ信号送信部４７はＫｅｅｐ信号の送信を停止する。
【００５７】
したがって、ＩＧスイッチがＯＦＦの状態では、２つの定周期パルスはどちらもＬｏｗである。統合ＩＣ１１の位相差検出部４２が位相差の演算を行った場合、２つのパルスの加算値は"０"、又は、減算値も"０"である。
【００５８】
定周期パルス＋Ｋｅｅｐ信号＝０
｜定周期パルス−Ｋｅｅｐ信号｜＝０
したがって、位相差検出部４２は２つのパルスの加算値又は減算値を演算して、値がＨｉ（１）となることからサブマイコン１３の異常を検出できる。
【００５９】
図６（ｂ）では、パルス出力部（サブ）３９に異常が生じ、ＩＧスイッチのＯＦＦで停止するはずの定周期パルスを停止していない。位相差検出部４２は、
定周期パルス＋Ｋｅｅｐ信号＝１
｜定周期パルス−Ｋｅｅｐ信号｜＝１
となることからサブマイコン１３の異常を検出する。
【００６０】
このように、本実施形態では、ＩＧスイッチのＯＦＦによりメインマイコン１２が定周期パルスを停止した後も、定周期パルスとＫｅｅｐ信号を比較することで、サブマイコン１３の異常を検出することができる。
【００６１】
図７は、ＩＧスイッチのＯＮ〜ＯＦＦの間の異常の検出例について説明する図の一例である。
【００６２】
パルス出力部（サブ）４９は、サブマイコン１３の負荷が大きくなると定周期パルスの周期が長くなる場合がある。これに対し、Ｋｅｅｐ信号送信部４７のＫｅｅｐ信号はサブマイコン１３の処理が影響しにくいので、Ｋｅｅｐ信号の周期は大きく変化しない。したがって、ＩＧスイッチのＯＮ〜ＯＦＦの間、サブマイコン１３が正常であれば、
定周期パルス＋Ｋｅｅｐ信号＝１
｜定周期パルス−Ｋｅｅｐ信号｜＝１
である。したがって、位相差検出部４２は、
定周期パルス＋Ｋｅｅｐ信号＝０
｜定周期パルス−Ｋｅｅｐ信号｜＝０
となる時間に基づきサブマイコン１３の異常を検出できる（図では説明ため"０"がＨｉになっている）。
【００６３】
図７では、時間と共に位相差が徐々に大きくなっている。サブマイコン１３の負荷が増大するほど、徐々に、加算値又は減算値が"０"の期間が長くなるので、位相差検出部４２は、"０"の期間が閾値を超えた場合にサブマイコン１３の異常を検出する。
【００６４】
なお、本実施形態では、定周期パルスとＫｅｅｐ信号を逆位相とすることを好適としたが、同一周期であれば同位相でも、位相差を検出する演算は可能である。
【００６５】
閾値や判定方法はサブマイコン１３の制御内容やアプリの重要度に応じて変えることが有効である。例えば、サブマイコン１３で実行するアプリのＡＳＩＬが高い場合（例えばＡＳＩＬ Ｂ以上）、位相差検出部は１回でも加算値又は減算値が"０"の期間がＰ％（パルスの周期に対する比率）以上になったら、サブマイコン１３の異常を検出する。また、例えば、サブマイコン１３で実行するアプリのＡＳＩＬが低い場合（例えばＡＳＩＬ Ａ以下）、位相差検出部は加算値又は減算値が"０"の期間を合計してＱ時間以上になったら、サブマイコン１３の異常を検出する。こうすることで、機能安全レベルに応じて柔軟にフェールセーフすることができる。
【００６６】
〔動作手順〕
図８は、統合ＩＣ１１がサブマイコン１３の異常を検出する手順を示すフローチャート図の一例である。
【００６７】
位相差検出部４２は、Ｋｅｅｐ信号がＨｉか否かを判定する（Ｓ１０）。Ｋｅｅｐ信号はＩＧスイッチのＯＮによりＨｉとなるので、ＩＧスイッチの状態を監視してもよい。
【００６８】
Ｋｅｅｐ信号がＨｉの場合（Ｓ１０のＹｅｓ）、サブマイコン１３がスリープモードから復帰する状態か又は起動が完了した後の状態である。位相差検出部はＫｅｅｐ信号がＨｉになってから標準起動時間が経過したか否かを判定する（Ｓ２０）。標準起動時間はサブマイコン１３がスリープモードから起動を完了するための時間である。
【００６９】
標準起動時間が経過した場合（Ｓ２０のＹｅｓ）、サブマイコン１３はすでに起動が完了しているので、位相差検出部はＫｅｅｐ信号が一定周期で反転しているか否かを判定する（Ｓ３０）。
【００７０】
反転していない場合（Ｓ３０のＮｏ）、位相差検出部はサブマイコン１３の異常を検出する（Ｓ７０）。この場合の異常としては、サブマイコン１３のフリーズが推定される。
【００７１】
反転している場合（Ｓ３０のＹｅｓ）、位相差検出部は、Ｋｅｅｐ信号がＨｉで定周期パルスがＬｏｗ、又は、Ｋｅｅｐ信号がＬｏｗで定周期パルスがＨｉかどうかを判定する（Ｓ４０）。
【００７２】
ステップＳ４０の関係が成り立つ場合（Ｓ４０のＹｅｓ）、位相差検出部はサブマイコン１３が正常であると判定する。
【００７３】
ステップＳ４０の関係が成り立たない場合（Ｓ４０のＮｏ）、位相差検出部は位相差が生じる時間（加算値又は減算値が０となる時間）とＡＳＩＬに応じてフェールセーフを行う（Ｓ６０）。Ｓ６０の処理は図9で説明する。
【００７４】
ステップＳ２０に戻り、標準起動時間が経過していない場合（Ｓ２０のＮｏ）、サブマイコン１３は起動中なので、位相差検出部は定周期パルスがＬｏｗかつＫｅｅｐ信号がＨｉか否かを判定する（Ｓ８０）。
【００７５】
定周期パルスがＬｏｗかつＫｅｅｐ信号がＨｉの場合（Ｓ８０のＹｅｓ）、位相差検出部はサブマイコン１３は正常であると判定する（Ｓ９０）。
【００７６】
定周期パルスがＬｏｗかつＫｅｅｐ信号がＨｉでない場合（Ｓ８０のＮｏ）、位相差検出部は、サブマイコン１３が異常であると判定する（Ｓ１００）。この場合は、例えばサブマイコン１３が暴走中であると推定される。
【００７７】
ステップＳ１０において、Ｋｅｅｐ信号がＬｏｗの場合（Ｓ１０のＮｏ）、サブマイコン１３が起動状態からスリープモードに移行する状態又はサブマイコン１３が停止している状態である。
【００７８】
位相差検出部はＫｅｅｐ信号がＬｏｗになってから標準停止時間が経過したか否かを判定する（Ｓ１１０）。標準停止時間はサブマイコン１３がスリープモードに移行するための時間である。
【００７９】
標準停止時間が経過している場合（Ｓ１１０のＹｅｓ）、サブマイコン１３は停止しているのでＫｅｅｐ信号はＬｏｗが正常であり、位相差検出部はサブマイコン１３は正常であると判定する（Ｓ１２０）。この場合、サブマイコン１３はスリープモードである。
【００８０】
標準停止時間が経過していない場合（Ｓ１１０のＮｏ）、サブマイコン１３はスリープモードに移行中なので、定周期パルスがＬｏｗかつＫｅｅｐ信号がＬｏｗか否かを判定する（Ｓ１３０）。
【００８１】
定周期パルスがＬｏｗかつＫｅｅｐ信号がＬｏｗの場合（Ｓ１３０のＹｅｓ）、位相差検出部はマイコンが正常であると判定する（Ｓ１４０）。この場合、サブマイコン１３は終了処理中である。
【００８２】
定周期パルスがＬｏｗかつＫｅｅｐ信号がＬｏｗでない場合（Ｓ１３０のＮｏ）、位相差検出部はマイコンが異常であると判定する（Ｓ１５０）。この場合、サブマイコン１３は暴走中であると推定される。
【００８３】
図９は、ステップＳ６０の処理の手順を示すフローチャート図の一例である。図９（ａ）は、サブマイコン１３がＡＳＩＬレベルが高いアプリを実行している場合であり、図９（ｂ）は、サブマイコン１３がＡＳＩＬレベルが低いアプリを実行している場合を示す。
【００８４】
図９（ａ）に示すように、位相差検出部は、定周期パルスがＨｉかつＫｅｅｐ信号がＨｉの時間（位相差が生じる時間）がＰ％以上か否かを判定する（Ｓ２１０）。
【００８５】
位相差が生じる時間がＰ％以上でない場合（Ｓ２１０のＮｏ）、位相差検出部はサブマイコン１３が正常であると判定する（Ｓ２４０）。
【００８６】
位相差が生じる時間がＰ％以上の場合（Ｓ２１０のＹｅｓ）、位相差検出部はサブマイコン１３が異常になると予測する（Ｓ２２０）。
【００８７】
リセット部（サブ）４４はサブマイコン１３が異常状態なるまでにサブマイコン１３をリセットする（Ｓ２３０）。
【００８８】
図９（ｂ）に示すように、位相差検出部は、定周期パルスがＨｉかつＫｅｅｐ信号がＨｉの時間（位相差が生じる時間）がＱ時間以上に達したか否かを判定する（Ｓ３１０）。
【００８９】
位相差が生じる時間がＱ時間以上に達してない場合（Ｓ３１０のＮｏ）、位相差検出部はサブマイコン１３が正常であると判定する（Ｓ３４０）。
【００９０】
位相差が生じる時間がＱ時間以上に達した場合（Ｓ３１０のＹｅｓ）、位相差検出部はサブマイコン１３が異常になると予測する（Ｓ３２０）。
【００９１】
リセット部（サブ）４４はサブマイコン１３が異常状態なるまでにサブマイコン１３をリセットする（Ｓ３３０）。
【００９２】
〔本実施形態の作用効果〕
図１０は、サブマイコン１３の異常検出における従来の技術と本実施形態の比較を示す表の一例である。
１．サブマイコン１３のWakeUp時にＫｅｅｐ信号がＬｏｗに固着した場合
従来は、サブマイコン１３の異常とスリープモードの区別ができなかった。本実施形態ではＫｅｅｐ信号がＬｏｗに固着しないため生じない異常となる。
２．サブマイコン１３のWakeUp時にＫｅｅｐ信号がＨｉに固着した場合
従来は、Ｋｅｅｐ信号がＨｉの状態で定周期パルスが停止するため検出できる。本実施形態では、Ｈｉに固着しないため生じない異常となる。
３．サブマイコン１３のWakeUp時に暴走した場合
従来は、Ｋｅｅｐ信号がＨｉになる前なので、暴走しても検出できない。本実施形態では、「定周期パルス＋Ｋｅｅｐ信号＝０」となることから検出できる。
４．サブマイコン１３がWakeUpできない又は遅延した場合
従来は、Ｋｅｅｐ信号がＨｉになる前なので検出できない。本実施形態では、「定周期パルス＋Ｋｅｅｐ信号＝１」となった時間が標準停止時間以上となることで検出できる。
５．ＥＣＵ１００の動作中に、サブマイコン１３に障害が発生した場合
従来は、メインマイコン１２のＫｅｅｐ信号がＨｉで、サブマイコン１３から定周期パルスが出力されないので検出できる。本実施形態でも同様に検出できる。
６．ＥＣＵ１００の動作中に、メインマイコン１２に障害が発生した場合
従来は、メインマイコン１２の定周期パルスが途絶することで統合ＩＣ又はサブマイコンが検出できる。本実施形態でも同様に検出できる。
７．ＥＣＵ１００の動作中に、メインマイコン１２に障害が発生することを予測する場合
従来は、メインマイコン１２の定周期パルスの周期がサブマイコン１３と比較して遅延することで検出できる。本実施形態でも同様に検出できる。
８．ＥＣＵ１００の動作中に、サブマイコン１３に障害が発生することを予測する場合
従来は、サブマイコン１３の定周期パルスの周期が遅延しても基準となる周期が遅延しているので検出できない。本実施形態では、「定周期パルス＋Ｋｅｅｐ信号＝０」となった時間を閾値ＰやＱと比較することで検出できる。
９．ＥＣＵ１００の動作中に、メインマイコン１２とサブマイコン１３の両方に障害が発生した場合
従来は、ＩＧスイッチのＯＮ中に、メインマイコン１２とサブマイコン１３の両方の定周期パルスが途絶することで検出できる。本実施形態でも同様に検出できる。
１０．ＩＧスイッチのＯＦＦでメインマイコン１２の停止後、サブマイコン１３がスリープできない場合（Ｋｅｅｐ信号がＬｏｗ固着）
従来は、Ｋｅｅｐ信号がＬｏｗなので、サブマイコン１３の異常とスリープモードの区別が付かず、検出できない。本実施形態ではＬｏｗに固着しないが、ＩＧスイッチのＯＦＦでＫｅｅｐ信号がＬｏｗになるので、「定周期パルス＋Ｋｅｅｐ信号＝１」であればサブマイコン１３の異常を検出できる。
１１．ＩＧスイッチのＯＦＦでメインマイコン１２の停止後、サブマイコン１３がスリープできない場合（Ｋｅｅｐ信号がＨｉ固着）
従来は、Ｋｅｅｐ信号がＨｉなので、サブマイコン１３の異常とスリープモードの区別が付かず検出できない。本実施形態では１０と同様に検出できる。
【００９３】
以上説明したように、本実施形態のＥＣＵ１００は、一番最初に起動を完了したマイコン、及び、一番最後に停止するマイコンの監視の空白期間をなくし異常を検出できる。
【００９４】
また、従来は検出が困難だったサブマイコンの異常（例えば図１０のＮｏ１，３，４、８、１０，１１）を検出するためには、必ずしもメインマイコンが必要ではないことに注意されたい。
【符号の説明】
【００９５】
１１      統合ＥＣＵ
１２      メインマイコン
１３      サブマイコン
２１、２７  Ｋｅｅｐ線
２２、２３      ＷＤ線
２４，２５、２６  リセット線
１００    ＥＣＵ
【図１】
2014146131.tif 000003
【図２】
2014146131.tif 000004
【図３】
2014146131.tif 000005
【図４】
2014146131.tif 000006
【図５】
2014146131.tif 000007
【図６】
2014146131.tif 000008
【図７】
2014146131.tif 000009
【図８】
2014146131.tif 000010
【図９】
2014146131.tif 000011
【図１０】
2014146131.tif 000012
【図１１】
2014146131.tif 000013