JP6380141B2 - 電子制御装置 - Google Patents

電子制御装置 Download PDF

Info

Publication number
JP6380141B2
JP6380141B2 JP2015019915A JP2015019915A JP6380141B2 JP 6380141 B2 JP6380141 B2 JP 6380141B2 JP 2015019915 A JP2015019915 A JP 2015019915A JP 2015019915 A JP2015019915 A JP 2015019915A JP 6380141 B2 JP6380141 B2 JP 6380141B2
Authority
JP
Japan
Prior art keywords
core
calculation result
microcomputer
travel mode
performs
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.)
Active
Application number
JP2015019915A
Other languages
English (en)
Other versions
JP2016143304A (ja
Inventor
信哉 大久保
信哉 大久保
英治 松岡
英治 松岡
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.)
Denso Corp
Original Assignee
Denso 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 Denso Corp filed Critical Denso Corp
Priority to JP2015019915A priority Critical patent/JP6380141B2/ja
Publication of JP2016143304A publication Critical patent/JP2016143304A/ja
Application granted granted Critical
Publication of JP6380141B2 publication Critical patent/JP6380141B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Retry When Errors Occur (AREA)
  • Hardware Redundancy (AREA)

Description

本発明は、複数のコアを有するマイクロコンピュータを搭載し、車両の原動機の制御を行う電子制御装置に関する。
車両の安全性の確保は、高性能化、高機能化と並んで重要な社会的ニーズとなっている。車両の機能安全に関し導入された国際規格(ISO26262)においても、車両に異常が発生してから所定時間が経過するまでの間に、車両を安全な状態に移行させることが求められている。その一例として、走行中の車両に異常が発生した場合に、車両を路肩に寄せる退避走行が可能な程度まで、エンジンの出力を正常時よりも抑制すること等が検討されている。
車両のエンジンの制御を行う電子制御装置では、異常の検出のために、コアの演算結果の妥当性の確認を行うものが知られている。例えば、下記特許文献1には、2つのコアを備えることで、このような確認を可能とする電子制御装置が記載されている。当該電子制御装置は、2つのコアが同一の演算を行うとともに、その演算結果に基づいて電子制御装置の異常の有無を判定するロックステップ方式のものである。詳細には、2つのコアの演算結果を比較部で比較し、両演算結果が不一致となった場合に異常が発生したと判定するものである。当該電子制御装置では、異常が発生したと判定された場合にリセット処理(初期化)を実行することで、正常状態への復帰を図っている。
特開2013−65220号公報
上記特許文献1に記載の電子制御装置では、少なくとも一方のコアや比較部に、リセット処理を実行しても正常状態に復帰できないような故障が生じている場合に、車両を安全な状態に移行させることが困難となるおそれがあった。つまり、この場合、リセット処理を実行しても2つのコアの演算結果が不一致となる状態が解消されないため、リセット処理が無限に繰り返し実行されてしまい、その結果、車両のエンジンを適切に制御できなくなるというおそれがあった。
本発明はこのような課題に鑑みてなされたものであり、その目的は、複数のコアを有するマイクロコンピュータを搭載し、車両の原動機の制御を行う電子制御装置であって、コアの異常の有無をロックステップ方式によって判定しながらも、異常が発生した際に車両を安全な状態に移行させることができる電子制御装置を提供することにある。
上記課題を解決するために、本発明に係る電子制御装置は、複数のコアを有するマイクロコンピュータを搭載し、車両の原動機の制御を行う電子制御装置であって、前記マイクロコンピュータは、前記原動機を通常走行モードで制御するための演算を行う第1コアと、前記第1コアと同一の演算を行う第2コアと、前記第1コアによる演算結果と前記第2コアによる演算結果とを比較する演算結果比較部と、前記第1コア及び前記第2コアと異なる演算を行う第3コアと、を有する。前記第1コアによる演算結果と前記第2コアによる演算結果とが不一致である場合、前記第1コアによる演算結果と前記第2コアによる演算結果とが不一致となった回数が所定値となるまでは、該演算結果が不一致となる毎に前記マイクロコンピュータのリセット処理を実行するとともに、前記リセット処理において前記第1コア、前記第2コア及び前記第3コアを起動させ、前記原動機を前記通常走行モードで制御して前記車両を走行させる一方で、前記第1コアによる演算結果と前記第2コアによる演算結果とが不一致となった回数が前記所定値を超えた場合は、前記マイクロコンピュータのリセット処理を実行するとともに、前記リセット処理において前記第1コア及び前記第2コアを起動させることなく前記第3コアを起動させ、前記通常走行モードよりも前記原動機の出力を抑制する退避走行モードで前記原動機を制御するための演算を前記第3コアによって行う。
また、上記課題を解決するために、本発明に係る電子制御装置は、複数のコアを有するマイクロコンピュータを搭載し、車両の原動機の制御を行う電子制御装置であって、前記マイクロコンピュータは、前記原動機を通常走行モードで制御するための演算を行う第1コアと、前記第1コアと同一の演算を行う第2コアと、前記第1コアによる演算結果と前記第2コアによる演算結果とを比較する演算結果比較部と、前記第1コア及び前記第2コアと異なる演算を行う第3コアと、を有し、前記第1コア、前記第2コア及び前記演算結果比較部は、それぞれ自己の異常の有無を診断するBIST機能を有し、前記第1コアによる演算結果と前記第2コアによる演算結果とが不一致である場合は、前記マイクロコンピュータのリセット処理を実行するとともに、前記リセット処理において前記BIST機能による診断を実行し、前記BIST機能による診断において前記第1コア、前記第2コア及び前記演算結果比較部のいずれにも異常が発生していないと診断された場合は、前記リセット処理において前記第1コア、前記第2コア及び前記第3コアを起動させ、前記原動機を前記通常走行モードで制御して前記車両を走行させる一方で、前記BIST機能による診断において前記第1コア、前記第2コア及び前記演算結果比較部の少なくとも1つに異常が発生していると診断された場合は、前記リセット処理において前記第1コア及び前記第2コアを起動させることなく前記第3コアを起動させ、前記通常走行モードよりも前記原動機の出力を抑制する退避走行モードで前記原動機を制御するための演算を前記第3コアによって行う
本発明によれば、第1コアによる演算結果と第2コアによる演算結果とが不一致である場合、すなわち、第1コア、第2コア及び演算結果比較部の少なくも1つに異常が発生している場合に、車両の原動機を退避走行モードで制御する。この退避走行モードは、通常走行モードよりも原動機の出力を抑制して車両を走行させるものである。また、この退避走行モードで原動機を制御するための演算は、ロックステップ方式に関与しない第3コアによって行われる。したがって、第1コア、第2コア及び演算結果比較部の少なくとも1つが正常状態に復帰困難な事態となっても、車両を安全な状態に移行させることが可能となる。
本発明によれば、複数のコアを有するマイクロコンピュータを搭載し、車両の原動機の制御を行う電子制御装置であって、コアの異常の有無をロックステップ方式によって判定しながらも、異常が発生した際に車両を安全な状態に移行させることができる電子制御装置を提供することが可能となる。
本発明の実施形態に係る電子制御装置の構成を示すブロック図である。 図1に示すマイクロコンピュータの動作を示すフローチャートである。 図1に示す第1コア及び第2コアによる処理を示すフローチャートである。 図1に示す第3コアによる処理を示すフローチャートである。 図2に示すマイクロコンピュータのリセット処理を示すフローチャートである。 図2に示す第3コアによる退避走行モードを示すフローチャートである。 図2に示すマイクロコンピュータのリセット処理の変形例を示すフローチャートである。
以下、添付図面を参照しながら本発明の実施形態について説明する。説明の理解を容易にするため、各図面において同一の構成要素に対しては可能な限り同一の符号を付して、重複する説明は省略する。
まず、図1を参照しながら、本発明の実施形態に係る電子制御装置10の構成について説明する。電子制御装置10は、車両の各種センサ(不図示)と電気的に接続されており、それらから伝達される情報等を用いながら車両の原動機であるエンジン100を制御する。エンジン100は、複数の気筒を有するガソリンエンジンである。
電子制御装置10は、マイクロコンピュータ20と、監視IC30と、出力回路41,42、43を搭載している。電子制御装置10は、通常運転モード及び退避走行モードの2つの運転モードを有しており、各運転モードを実行してエンジン100を制御することで車両を走行させる。
マイクロコンピュータ20(以下、「マイコン20」とも称する)は、所謂マルチコアの電子機器であり、第1コア21と、第2コア22と、第3コア23と、を有している。また、マイコン20は、演算結果比較部24と、割り込み処理部25と、ROM26と、RAM27と、リセット回路28と、周辺I/O29と、を有している。
第1コア21は、マイコン20の主プロセッサである。第1コア21は、バス200に接続されており、各種センサからマイコン20に伝達される情報を適宜用いて、所定のプログラムに従って演算を行う。第1コア21は、主にマイコン20が正常な場合に、通常走行モードで車両のエンジン100を制御するための演算を行う制御用コアである。第1コア21は、自己の異常の有無を診断するBIST(Built In Self Test)機能を有している。
第2コア22は、マイコン20の副プロセッサである。第2コア22は、バス200と接続されておらず、各種センサからマイコン20に伝達される情報を適宜用いて、所定のプログラムに従って演算を行う。第2コア22は、第1コア21と同一クロックで同期して第1コア21と同一の演算を行い、後述するロックステップ方式の異常判定に用いられるチェック用コアである。第2コア22は、自己の異常の有無を診断するBIST機能を有している。
第3コア23は、マイコン20の汎用プロセッサである。第3コア23は、バス200に接続されており、各種センサからマイコン20に伝達される情報を適宜用いて、所定のプログラムに従って演算を行う。第3コア23は、車両のエンジン100が前述した通常走行モードで制御されている場合に、エンジン100の制御以外の挙動に関する演算を行う汎用コアである。この汎用コアは、マイコン20に複数設けられていてもよい。
演算結果比較部24は、第1コア21及び第2コア22と通信可能とされたコンパレータである。演算結果比較部24は、通知された複数の演算結果の比較を行い、バス200を介してその比較結果を通知する。第1コア21による演算結果と第2コア22による演算結果とは、第1コア21、第2コア22及び演算結果比較部24がいずれも正常である場合は常に一致するように設定されている。演算結果比較部24は、自己の異常の有無を診断するBIST機能を有している。
割り込み処理部25は、各種センサ等の異常発生時に、割り込み処理を行う部分である。各種センサからマイコン20に伝達される情報に基づいて、車両に異常が発生したと判断された場合に、割り込み処理部25は適宜割り込み信号をバス200に送信する。
ROM26は、第1コア21等とバス200を介して相互に通信可能とされた記憶領域である。ROM26は、エンジン100の制御を行うための複数のプログラムや各種データを記憶している。詳細には、通常走行モードと退避走行モードのそれぞれに対応するプログラム等がROM26に記憶されている。
RAM27は、第1コア21等とバス200を介して通信可能とされた記憶領域である。RAM40は、後述するロックステップ方式の異常有無判定において、第1コア21による演算結果と第2コア22による演算結果とが不一致となった回数を一時的に記憶する。さらに、RAM40は、電子制御装置10が実行している運転モードが、通常走行モードと退避走行モードのいずれであるかを示すデータを一時的に記憶する。マイコン20への電力供給が断たれた場合、RAM27が記憶しているデータは消去される。
リセット回路28は、第1コア21等とバス200を介して通信可能とされた電子回路である。リセット回路28は、第1コア21、第2コア22及び演算結果比較部24のBISTを実行するリセット処理と、当該BISTを実行しないリセット処理とを行うことができる。リセット回路28は、監視IC30から入力されるリセット信号に基づいてマイコン20のリセット処理を実行する。
周辺I/O29は、マイコン20とその周辺機器との間で、通信を行うためのインターフェイスである。マイコン20は、この周辺I/Oを介して、制御対象である電子スロットル51用の出力回路41や、燃料噴射装置52用の出力回路42や、点火装置53用の出力回路43に制御信号(制御指令)を送信する。また、マイコン20が正常である場合には、マイコン20は、周辺I/Oを介してWDC(Watch Dog Counter)信号とマイコン20の診断結果に関する信号とを監視IC30に送信する。
監視IC30は、マイコン20から受信するマイコン診断結果とWDC信号とを監視するICである。監視IC30は、マイコン20から受信するマイコン診断結果が正常ではない場合に、電子スロットル51の出力回路41に遮断信号を送信する。また、監視IC30は、マイコン20が正常である場合に定期的に送信するWDC信号が所定時間途切れた場合に、マイコン20にリセット信号を送信する。
出力回路41,42,43は、それぞれ電子スロットル51、燃料噴射装置52、点火装置53に制御信号を送信する電子回路である。当該制御信号の送信は、マイコン20が正常である場合は第1コア21によって制御され、マイコン20に異常が発生している場合は第3コア23によって制御される。電子スロットル51、燃料噴射装置52、点火装置53は、この制御信号に基づいて動作し、エンジン100を駆動させる。電子スロットル51に制御信号を送信する出力回路41は、マイコン20に異常が発生している場合は、マイコン20から受信する制御信号を無視する。
続いて、図2乃至図6を参照しながら、マイコン20において行われる処理について説明する。以下、図2のフローチャートを主として参照するとともに、当該フローチャートの各ステップで行われている処理の詳細については図3乃至図6を適宜参照しながら説明する。
マイコン20に異常が発生していない場合、図2のステップS11で示されるように、マイコン20では第1コア21、第2コア22及び第3コア23による並列処理が行われている。
このステップS11において、第1コア21及び第2コア22は、図3に示される処理を行っている。尚、前述したように、第2コア22は第1コア21と同一の演算を行うものであるから、ここでは第1コア21が行う処理について説明し、第2コア22が行う処理については説明を省略する。
図3にステップS21で示されるように、第1コア21は、まずマイコン20の診断を行う。具体的には、ROM26、RAM27によるデータの記憶や、マイコン20が有するタイマ機能等の状態を診断する。第1コア21は、当該診断結果をRAM27に記憶させる。
次に、第1コア21は、ステップS22で、ステップS21で行った診断の結果に基づいてマイコン20が正常か否かを判定する。診断の結果からマイコン20の状態が正常であると判定された場合(S22:YES)、第1コア21は、ステップS23の処理に進む。
次に、第1コア21は、ステップS23で、マイコン20が正常であったことを示す信号を監視IC30に送信する。当該信号を受信した監視IC30が、出力回路41に遮断信号を送信することはない。
次に、第1コア21は、ステップS24で、車両のエンジン100を通常走行モードで制御するための演算を行う。当該通常走行モードは、エンジン100の運転モードの1つであり、マイコン20が正常である場合のみ実行が許可されるものである。通常走行モードでは、出力を抑制することなくエンジン100を駆動させるように、出力回路41,42,43から電子スロットル51、燃料噴射装置52、点火装置53に制御信号を送信する。このとき、RAM27には、エンジン100が通常走行モードで制御されていることを示す情報が一時的に記憶されている。
一方、ステップS22で、診断の結果からマイコン20に異常が発生していると判定された場合(S22:NO)、第1コア21は、ステップS25の処理に進む。
次に、第1コア21は、ステップS25で、マイコン20に異常が発生していることを示す信号を監視IC30に送信する。
続いて、図2のステップS11において第3コア23が行う処理について、図4を参照しながら説明する。
図4のステップS31に示されるように、第3コア23は、現在の運転モードが通常走行モードであるか否かを判定する。具体的には、運転モードが通常走行モードであることを示すデータがRAM27に記憶されているか否かを判定する。現在の運転モードが通常走行モードである場合(S31:YES)、第3コア23は、ステップS32の処理に進む。
次に、第3コア23は、ステップS32で、前述したステップS21で行われた診断の結果に基づいて、マイコン20が正常か否かを判定する。第3コア23は、RAM27に記憶されている診断結果を読み込むことで、当該判定を行う。マイコン20が正常であると判定された場合(S32:YES)、第3コア23は、ステップS33の処理に進む。
次に、第3コア23は、ステップ33で、汎用制御のための演算を行う。この汎用制御は、エンジン100以外の挙動に関する制御である。
一方、ステップS31で、現在の運転モードが通常走行モードではないと判定された場合(S31:NO)、すなわち、運転モードが退避走行モードである場合は、第3コア23は、ステップS34の処理に進む。また、ステップS32で、マイコン20が正常ではないと診断された場合(S32:NO)、すなわち、マイコン20に異常が発生している場合も、ステップS34の処理に進む。
次に、第3コア23は、ステップ34で、運転モードを退避走行モードに設定する。すなわち、ステップS31で運転モードが既に退避走行モードであると判定された場合(S31:NO)は、ステップS34で継続して運転モードを退避走行モードとする。また、ステップS31で運転モードが通常走行モードであると判定された場合(S31:YES)であってマイコン20が正常ではないと診断された場合(S32:NO)は、ステップS34で運転モードを退避走行モードに移行させる。これにより、RAM27は、運転モードが退避走行モードであることを示すデータを記憶した状態となる。
この退避走行モードは、通常走行モードよりも出力を抑制してエンジン100を駆動させる運転モードである。すなわち、マイコン20に異常が発生している場合に、車両を路肩に寄せる退避走行が可能な程度まで、エンジン100の出力を抑制するものである。このため、車両の運転者は、マイコン20に異常が発生した場合に、安全が確保できる状態に移行することが可能となる。
再び図2を参照しながら説明を続ける。次に、マイコン20は、ステップS12で、演算結果比較部24により、第1コア21による演算結果と、第2コア22による演算結果との比較を行う。
次に、マイコン20は、ステップS13で、第1コア21による演算結果と、第2コア22による演算結果とが不一致である否かを判定する。両演算結果が不一致ではないと判定された場合(S13:NO)、すなわち、両演算結果が一致している場合、マイコン20は再びステップS11に戻り、前述した処理を行う。
一方、ステップS13で、第1コア21による演算結果と、第2コア22による演算結果とが不一致であると判定された場合(S13:YES)、マイコン20は、ステップS14の処理に進む。
次に、マイコン20は、ステップS14で、マイコン20のリセット処理を実行する。このステップS14における処理について、図5を参照しながら説明する。
マイコン20の第1コア21は、図5に示されるステップS41で、第1コア21による演算結果と、第2コア22による演算結果とが不一致となった回数をカウントアップする。当該回数は、RAM27に一時的に記憶されており、第1コア21は両演算結果が不一致と判定される毎に、当該回数を1つ増加させる。
次に、ステップS42で、第1コア21による演算結果と、第2コア22による演算結果とが不一致となった回数が、所定値以下であるか否かを第1コア21が判定する。当該判定は、マイコン20への電力供給の開始から、電力供給が断たれるまでの1サイクル内の所定時間内において、第1コア21による演算結果と第2コア22による演算結果とが不一致となった回数が所定値以下であるか否かに基づいて判定する。当該回数が所定値以下である場合(S42:YES)、ステップS43の処理に進む。
次に、ステップS43で、リセット回路28によって第1コア21、第2コア22及び第3コア23を停止させる。すなわち、第1コア21、第2コア22及び第3コア23への電力供給が断たれ、演算が停止される。
次に、ステップS44で、現在の運転モードが通常走行モードであるか否かを判定する。具体的には、運転モードが通常走行モードであることを示すデータがRAM27に記憶されているか否かを判定する。現在の運転モードが通常走行モードである場合(S44:YES)、ステップS45の処理に進む。
次に、ステップS45で、それまで停止させていた第1コア21及び第2コア22を起動させる。すなわち、第1コア21及び第2コア22への電力供給が再開され、第1コア21及び第2コア22が演算を開始する。現在の運転モードは通常走行モードであるため、起動した第1コア21は車両のエンジン100を通常走行モードで制御するための演算を行い、第2コア22はこの第1コア21と同一の演算を行う。
次に、ステップS46で、それまで停止させていた第3コア23を起動させる。すなわち、第3コア23への電力供給が再開され、第3コア23が演算を開始する。現在の運転モードが通常走行モードである場合(S44:YES)、起動した第3コア23は前述した汎用制御のための演算を行う。
一方、ステップS42で、第1コア21による演算結果と、第2コア22による演算結果とが不一致となった回数が、所定値以下ではないと判定された場合(S42:NO)、ステップS47の処理に進む。
次に、ステップS47で、運転モードを退避走行モードに設定する。すなわち、運転モードが既に退避走行モードである場合は、ステップS47で継続して運転モードを退避走行モードとする。また、運転モードが通常走行モードである場合は、ステップS47で運転モードを退避走行モードに移行させる。これにより、RAM27は、運転モードが退避走行モードであることを示すデータを記憶した状態となる。
次に、ステップS43で、前述したように、リセット回路28によって第1コア21、第2コア22及び第3コア23を停止させる。
次に、ステップS44で、前述したように、現在の運転モードが通常走行モードであるか否かを判定する。ステップS47の処理によって運転モードが退避走行モードに移行しており、現在の運転モードが通常走行モードではない場合(S44:NO)、ステップ46の処理に進む。
次に、ステップS46で、前述したように、停止させていた第3コア23を起動させる。ステップS42で、第1コア21による演算結果と、第2コア22による演算結果とが不一致となった回数が所定値を超えている場合(S42:NO)、運転モードは退避走行モードに設定され(S47)、ステップS45の処理が行われない。したがって、第1コア21及び第2コア22を起動させることなく第3コア23のみが起動され、マイコン20のリセット処理が終了する。運転モードは退避走行モードに設定されているため、起動した第3コア23のみによって、車両のエンジン100を退避走行モードで制御するための演算を行う。
再び図2を参照しながら説明を続ける。次に、マイコン20は、ステップS15で、第3コア23による退避走行モードを実行する。このステップS15における処理について、図6を参照しながら説明する。
マイコン20の第3コア23は、図6に示されるステップS51で、現在の運転モードが通常走行モードであるか否かを判定する。具体的には、運転モードが通常走行モードであることを示すデータがRAM27に記憶されているか否かを判定する。現在の運転モードが通常走行モードである場合(S51:YES)、第3コア23は、ステップS52の処理に進む。
次に、ステップS52で、既に行ったマイコン20の診断の結果に基づいて、マイコン20が正常であるか否かを判定する。マイコン20の状態が正常であると判定された場合(S52:YES)、第3コア23は、次にステップS53の処理に進む。
次に、第3コア23は、ステップS53で、汎用制御のための演算を行う。この汎用制御は、エンジン100以外の挙動に関する制御である。
一方、ステップS51で、現在の運転モードが通常走行モードではないと判定された場合(S51:NO)、すなわち、運転モードが退避走行モードである場合は、第3コア23は、ステップS54の処理に進む。また、ステップS52で、マイコン20が正常ではないと診断された場合(S52:NO)、すなわち、マイコン20に異常が発生している場合も、ステップS54の処理に進む。
次に、第3コア23は、ステップ54で、車両のエンジン100を退避走行モードで制御するための演算を行う。すなわち、ステップS51で運転モードが既に退避走行モードであると判定された場合(S51:NO)は、ステップS54で継続して運転モードを退避走行モードとし、退避走行モードを実行する。また、ステップS51で運転モードが通常走行モードであると判定された場合(S51:YES)であってマイコン20が正常ではないと診断された場合(S52:NO)は、運転モードを退避走行モードに移行させ、退避走行モードを実行する。これにより、エンジン100は、第1コア21及び第2コア22によることなく、第3コア23のみによって制御され、車両が走行する。第3コア23は、通常走行モードと比べて、エンジン100が出力を抑制されるように演算を行う。具体的には、電子スロットル51によってエンジン100に供給される空気の流量が、通常走行モードと比べて少なくなるように演算を行う。また、この空気の流量の変化に伴い、燃料噴射装置52による燃料噴射量や点火装置53による点火タイミングも調整し、エンジン100における燃料の燃焼が適切なものとなるようにしている。
以上のように、本実施形態に係る電子制御装置10によれば、第1コア21による演算結果と第2コア22による演算結果とが不一致である場合、すなわち、第1コア21、第2コア22及び演算結果比較部24の少なくもいずれかに異常が発生している場合に、車両のエンジン100を退避走行モードで制御する。この退避走行モードは、通常走行モードよりも車両のエンジン100の出力を抑制して車両を走行させるものである。また、この退避走行モードで車両のエンジン100を制御するための演算は、ロックステップ方式に関与しない第3コア23によって行われる。したがって、第1コア21、第2コア22及び演算結果比較部24の少なくとも1つが正常状態に復帰困難な事態となっても、車両を安全な状態に移行させることが可能となる。
また、本実施形態に係る電子制御装置10では、第1コア21による演算結果と第2コア22による演算結果とが不一致となった回数が所定値となるまでは、該演算結果が不一致となる毎にリセット処理を実行し、車両のエンジン100を通常走行モードで制御する。一方、第1コア21による演算結果と第2コア22による演算結果とが不一致となった回数が所定値を超えた場合は、エンジン100を退避走行モードに移行させた後にリセット処理を実行する。
これにより、所謂RAM化け等のように、第1コア21による演算結果と第2コア22による演算結果とが一時的に不一致となった場合に、リセット処理によって正常な状態に復帰できるにもかかわらず、運転モードが直ちに退避モードに移行されてしまうという実用上の不都合を防止することができる。
また、本実施形態に係る電子制御装置10では、第1コア21による演算結果と第2コア22による演算結果とが不一致となった回数が所定値となるまでは、リセット処理において第1コア21、第2コア22及び第3コア23を起動させる。一方、第1コア21による演算結果と第2コア22による演算結果とが不一致となった回数が所定値を超えた場合は、リセット処理において第1コア21及び第2コア22を起動させることなく第3コア23を起動させる。
このように、第1コア21による演算結果と第2コア22による演算結果とが不一致となった回数が所定値を超え、第3コア23による退避走行モードを実行する場合は、第1コア21及び第2コア22を起動させない。したがって、例えば、異常が発生している第1コア21から、誤ってマイコン20が正常であることを示す信号を監視IC30に送信してしまい、エンジン100の制御を適切に行えなくなるような事態を防止することができる。すなわち、第3コア23によって退避走行モードを確実に実行することが可能となる。
次に、図7を参照しながら、本実施形態の変形例について説明する。前述した電子制御装置10では、図2に示すフローチャートのステップS14において、図5に示すフローチャートの処理が行われていた。本変形例は、図5に代えて図7に示すフローチャートの処理が行われる点のみ、前述した電子制御装置10と異なる。したがって、ここでは図7に示すフローチャートのみについて説明し、他の処理に関する説明を省略する。
図7のステップS61に示されるように、マイコン20のリセット処理において、まず、リセット回路28によって第1コア21、第2コア22及び第3コア23を停止させる。すなわち、第1コア21、第2コア22及び第3コア23への電力供給が断たれ、演算が停止される。
次に、ステップS62で、BIST機能による診断を実行する。具体的には、第1コア21、第2コア22及び演算結果比較部24が、それぞれが有しているBIST機能により、自己の異常の有無を診断する。
次に、ステップS63で、BIST機能による診断の結果が正常であったか否かを判定する。すなわち、第1コア21、第2コア22及び演算結果比較部24のいずれにも異常が無く、正常な状態であるか否かを判定する。BIST機能による診断の結果が正常である場合(S63:YES)、ステップS64の処理に進む。
次に、ステップS64で、それまで停止させていた第1コア21及び第2コア22を起動させる。すなわち、第1コア21及び第2コア22への電力供給が再開され、第1コア21及び第2コア22が演算を開始する。第1コア21及び第2コア22に異常が発生しておらず、現在の運転モードは通常走行モードであるため、起動した第1コア21は車両のエンジン100を通常走行モードで制御するための演算を行い、第2コア22はこの第1コア21と同一の演算を行う。
次に、ステップS65で、それまで停止させていた第3コア23を起動させる。すなわち、第3コア23への電力供給が再開され、第3コア23が演算を開始する。現在の運転モードが通常走行モードであるため、起動した第3コア23は前述した汎用制御のための演算を行う。
一方、ステップS63で、BIST機能による診断の結果が正常ではなかった場合(S63:NO)、すなわち、第1コア21、第2コア22及び演算結果比較部24のいずれかに異常が発生している場合、ステップS66の処理に進む。
次に、ステップS66で、運転モードを退避走行モードに設定する。すなわち、運転モードが既に退避走行モードである場合は、ステップS66で継続して運転モードを退避走行モードとする。また、運転モードが通常走行モードである場合は、ステップS66で運転モードを退避走行モードに移行させる。これにより、RAM27は、運転モードが退避走行モードであることを示すデータを記憶した状態となる。
次に、ステップS65で、前述したように、停止させていた第3コア23を起動させる。ステップS63で、BIST機能による診断結果が正常ではなかった場合(S63:NO)、運転モードは退避走行モードに設定され(S66)、ステップS64の処理が行われない。したがって、第1コア21及び第2コア22を起動させることなく第3コア23のみが起動され、マイコン20のリセット処理を終了する。運転モードは退避走行モードに設定されているため、起動した第3コア23のみによって、車両のエンジン100を退避走行モードで制御するための演算を行う。
ところで、ロックステップ方式に関与する第1コア21、第2コア22及び演算結果比較部24に異常が発生していると、第1コア21及び第2コア22の両演算結果の比較によって異常判定を行うことに妥当性が無くなる場合がある。例えば、第1コア21及び第2コア22の両演算結果が一致していないにもかかわらず、演算結果比較部24に異常が発生していることで、両演算結果が一致すると誤って判定されてしまうと、適切に退避走行モードに移行することができなくなるおそれがある。
そこで、本変形例では、第1コア21、第2コア22及び演算結果比較部24のBIST機能による診断を実施し、その診断結果が正常ではなかった場合(S63:NO)は退避走行モードを実行して、車両を安全が確保できる状態に移行させることが可能となる。そして、診断結果が正常である場合(S63:YES)に限り、第1コア21及び第2コア22を起動させて、第1コア21による演算結果と第2コア22による演算結果との比較によってマイコン20の異常判定が行えるように構成している。このように、第1コア21、第2コア22及び演算結果比較部24のBIST機能による診断を実行することで、さらに信頼性の高い退避走行モードを実行することが可能となる。
以上、具体例を参照しつつ本発明の実施の形態について説明した。しかし、本発明はこれらの具体例に限定されるものではない。すなわち、これら具体例に、当業者が適宜設計変更を加えたものも、本発明の特徴を備えている限り、本発明の範囲に包含される。例えば、前述した各具体例が備える各要素およびその配置などは、例示したものに限定されるわけではなく適宜変更することができる。また、前述した各実施の形態が備える各要素は、技術的に可能な限りにおいて組み合わせることができ、これらを組み合わせたものも本発明の特徴を含む限り本発明の範囲に包含される。
10:電子制御装置
20:マイクロコンピュータ
21:第1コア
22:第2コア
23:第3コア
24:演算結果比較部
100:エンジン(原動機)

Claims (2)

  1. 複数のコア(21,22,23)を有するマイクロコンピュータ(20)を搭載し、車両の原動機(100)の制御を行う電子制御装置(10)であって、
    前記マイクロコンピュータは、
    前記原動機を通常走行モードで制御するための演算を行う第1コア(21)と、
    前記第1コアと同一の演算を行う第2コア(22)と、
    前記第1コアによる演算結果と前記第2コアによる演算結果とを比較する演算結果比較部(24)と、
    前記第1コア及び前記第2コアと異なる演算を行う第3コア(23)と、を有し、
    前記第1コアによる演算結果と前記第2コアによる演算結果とが不一致である場合、前記第1コアによる演算結果と前記第2コアによる演算結果とが不一致となった回数が所定値となるまでは、該演算結果が不一致となる毎に前記マイクロコンピュータのリセット処理を実行するとともに、前記リセット処理において前記第1コア、前記第2コア及び前記第3コアを起動させ、前記原動機を前記通常走行モードで制御して前記車両を走行させる一方で、
    前記第1コアによる演算結果と前記第2コアによる演算結果とが不一致となった回数が前記所定値を超えた場合は、前記マイクロコンピュータのリセット処理を実行するとともに、前記リセット処理において前記第1コア及び前記第2コアを起動させることなく前記第3コアを起動させ、前記通常走行モードよりも前記原動機の出力を抑制する退避走行モードで前記原動機を制御するための演算を前記第3コアによって行うことを特徴とする電子制御装置。
  2. 複数のコア(21,22,23)を有するマイクロコンピュータ(20)を搭載し、車両の原動機(100)の制御を行う電子制御装置(10)であって、
    前記マイクロコンピュータは、
    前記原動機を通常走行モードで制御するための演算を行う第1コア(21)と、
    前記第1コアと同一の演算を行う第2コア(22)と、
    前記第1コアによる演算結果と前記第2コアによる演算結果とを比較する演算結果比較部(24)と、
    前記第1コア及び前記第2コアと異なる演算を行う第3コア(23)と、を有し、
    前記第1コア、前記第2コア及び前記演算結果比較部は、それぞれ自己の異常の有無を診断するBIST機能を有し、
    前記第1コアによる演算結果と前記第2コアによる演算結果とが不一致である場合は、前記マイクロコンピュータのリセット処理を実行するとともに、前記リセット処理において前記BIST機能による診断を実行し、
    前記BIST機能による診断において前記第1コア、前記第2コア及び前記演算結果比較部のいずれにも異常が発生していないと診断された場合は、前記リセット処理において前記第1コア、前記第2コア及び前記第3コアを起動させ、前記原動機を前記通常走行モードで制御して前記車両を走行させる一方で、
    前記BIST機能による診断において前記第1コア、前記第2コア及び前記演算結果比較部の少なくとも1つに異常が発生していると診断された場合は、前記リセット処理において前記第1コア及び前記第2コアを起動させることなく前記第3コアを起動させ、前記通常走行モードよりも前記原動機の出力を抑制する退避走行モードで前記原動機を制御するための演算を前記第3コアによって行うことを特徴とする電子制御装置。
JP2015019915A 2015-02-04 2015-02-04 電子制御装置 Active JP6380141B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015019915A JP6380141B2 (ja) 2015-02-04 2015-02-04 電子制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015019915A JP6380141B2 (ja) 2015-02-04 2015-02-04 電子制御装置

Publications (2)

Publication Number Publication Date
JP2016143304A JP2016143304A (ja) 2016-08-08
JP6380141B2 true JP6380141B2 (ja) 2018-08-29

Family

ID=56568768

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015019915A Active JP6380141B2 (ja) 2015-02-04 2015-02-04 電子制御装置

Country Status (1)

Country Link
JP (1) JP6380141B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230001939A1 (en) * 2019-12-05 2023-01-05 Hitachi Astemo, Ltd. Vehicle mounted electronic control apparatus

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6740812B2 (ja) * 2016-08-26 2020-08-19 株式会社デンソー 電子制御装置
JP6729407B2 (ja) * 2017-01-13 2020-07-22 株式会社デンソー マイクロコンピュータ

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001152882A (ja) * 1999-11-25 2001-06-05 Denso Corp 内燃機関の電磁駆動バルブの異常診断装置
JP5618687B2 (ja) * 2010-08-05 2014-11-05 日本信号株式会社 2重化演算装置
JP5140121B2 (ja) * 2010-08-26 2013-02-06 三菱電機株式会社 制御システム
JP5518021B2 (ja) * 2011-09-19 2014-06-11 三菱電機株式会社 情報処理装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230001939A1 (en) * 2019-12-05 2023-01-05 Hitachi Astemo, Ltd. Vehicle mounted electronic control apparatus

Also Published As

Publication number Publication date
JP2016143304A (ja) 2016-08-08

Similar Documents

Publication Publication Date Title
JP4223909B2 (ja) 車載電子制御装置
JP5598499B2 (ja) 電池監視装置
JP5739290B2 (ja) 電子制御装置
JP5126393B2 (ja) 車載電子制御装置
US10788826B2 (en) Vehicle control device
US20170146118A1 (en) Vehicle-Mounted Control Device or Vehicle-Mounted Control System
JP6380141B2 (ja) 電子制御装置
CN111965968A (zh) 一种切换控制方法、系统及装置
JP2009253736A (ja) ネットワークシステム
JP5662181B2 (ja) 移動体の電子制御装置
KR100711850B1 (ko) 마이크로컴퓨터 감시 금지 기능을 갖는 전자 제어 시스템및 방법
US10514970B2 (en) Method of ensuring operation of calculator
JP6075262B2 (ja) 制御装置
JP2014178730A (ja) 制御装置の異常監視装置および異常監視方法
JP2013012220A (ja) 車載電子制御装置
JP2016203764A (ja) 車両の電子制御装置
JP2016142141A (ja) 車両用電子制御装置
JP2014202141A (ja) 制御装置および制御方法
JP2007283788A (ja) 車両用電子制御装置
US11180157B2 (en) Monitoring apparatus and driving force control system
JP2006195739A (ja) 電子制御装置
JP7299344B2 (ja) 車載電子制御装置
JP6716429B2 (ja) 電子制御装置及びその診断方法
JP5985030B1 (ja) 電子制御装置および電子制御装置のための制御方法
JP6457149B2 (ja) 電子制御装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170602

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180306

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180417

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180508

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180625

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180703

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180716

R151 Written notification of patent or utility model registration

Ref document number: 6380141

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250