JP6207987B2 - 車載用電子制御装置 - Google Patents

車載用電子制御装置 Download PDF

Info

Publication number
JP6207987B2
JP6207987B2 JP2013243648A JP2013243648A JP6207987B2 JP 6207987 B2 JP6207987 B2 JP 6207987B2 JP 2013243648 A JP2013243648 A JP 2013243648A JP 2013243648 A JP2013243648 A JP 2013243648A JP 6207987 B2 JP6207987 B2 JP 6207987B2
Authority
JP
Japan
Prior art keywords
cpu core
data
sub cpu
answer
main cpu
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
JP2013243648A
Other languages
English (en)
Other versions
JP2015103052A (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.)
Hitachi Astemo Ltd
Original Assignee
Hitachi Automotive Systems Ltd
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 Hitachi Automotive Systems Ltd filed Critical Hitachi Automotive Systems Ltd
Priority to JP2013243648A priority Critical patent/JP6207987B2/ja
Publication of JP2015103052A publication Critical patent/JP2015103052A/ja
Application granted granted Critical
Publication of JP6207987B2 publication Critical patent/JP6207987B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Description

本発明は、マルチコアCPUを用いた車載用電子制御装置に関し、詳しくはマルチコアCPUの故障監視技術に関する。
一般にCPUを用いた車載用電子制御装置では、車両に搭載した制御対象(例えば、エンジンや自動変速機等)の制御を担うメインCPUを、サブCPU等の監視部によって監視することで、電子制御装置の機能安全性を保証するようにしている。例えば、特許文献1に記載されているような電子スロットル制御を行うエンジン制御装置(車載用電子制御装置)への適用例では、アクセルポジションセンサやスロットルセンサの検出値に基づいてスロットルモータの駆動回路を制御するメインCPUの故障監視を、監視用サブCPU(監視部)を用いて行っている。
具体的には、監視用サブCPUの例題出題部で生成した例題データをメインCPUに送信する。メインCPUは受信した例題データを例題演算部で演算し、演算結果を回答データとして監視用サブCPUに返信する。監視用サブCPUは、メインCPUから送信された回答データを、送信した例題データに対する回答データの期待値と比較照合部で比較し、受信した回答データが期待値と一致しない場合にメインCPU異常と判断する。メインCPU異常と判断したときは、監視用サブCPUにより、スロットルモータ駆動回路の電源を遮断してスロットルモータの駆動を停止するフェールセーフ処理を行うことで、メインCPU異常発生時の安全性を確保するようにしている。
特開2000−29734号公報
ところで、近年の多くの車載用電子制御装置では、演算量の増加に伴い複数のCPUコアを有するマルチコアCPUを用いる傾向にある。しかしながら、マルチコアCPUを採用するときに、従来のシングルコアCPU使用時と同一のCPU故障監視技術を用いた場合、CPUコア毎に監視用サブCPU等の監視部を設けることになる。このため、CPUコアの数と同数の監視用サブCPUが必要となり、コストアップに繋がるという問題がある。
本発明は上記問題点に着目してなされたもので、マルチコアCPUを採用した場合でも、単一の監視部で複数のCPUコアの故障監視を可能にしてコストを抑えた車載用電子制御装置を提供することを目的とする。
このため、本発明の車載用電子制御装置は、複数のCPUコアを持つCPUと、前記CPUの故障監視を行う監視部と、を備えた車載用電子制御装置であって、前記複数のCPUコアのうちの1つをメインCPUコアとし、他のCPUコアをサブCPUコアとし、前記サブCPUコアは、前記メインCPUコアから送信された例題データに対する回答データを算出して前記メインCPUコアへ送信し、前記メインCPUコアは、前記監視部から送信された例題データに対する回答データを算出すると共に、前記サブCPUコアへ例題データを送信し、自身の回答データと前記サブCPUコアから返信された回答データとに基づいて最終回答データを生成して前記監視部へ送信し、前記監視部は、前記メインCPUコアから受信した前記最終回答データと前記メインCPUコアへ送信した例題データに対応させて予め用意した回答データ期待値との照合結果に基づいて前記CPUの故障診断を行うことを特徴とする。
また、本発明の車載用電子制御装置は、複数のCPUコアを持つCPUと、前記CPUの故障監視を行う監視部と、を備えた車載用電子制御装置であって、前記複数のCPUコアの中の1つをメインCPUコアとし、他のCPUコアをサブCPUコアとし、前記メインCPUコアは、前記監視部から送信された例題データに対する回答データを算出して当該回答データを前記サブCPUコアへ例題データとして送信し、前記サブCPUコアは、前記メインCPUコアから送信された例題データに対する回答データを算出して最終回答データとして前記監視部へ送信し、前記監視部は、前記サブCPUコアから受信した前記最終回答データと前記メインCPUコアへ送信した例題データに対応させて予め用意した回答データ期待値との照合結果に基づいて前記CPUの故障診断を行うよう構成されるとともに、前記メインCPUコア及び前記サブCPUコアは、自己診断機能により故障と判定したときに、フェールセーフ処理を実行すると共に、予め定めた故障通知データを生成して送信先へ送信し、前記故障通知データを受信したとき、演算動作を行わずに前記故障通知データを送信先へ送信する。
本発明の車載用電子制御装置によれば、単一の監視部で複数のCPUコアを有するマルチコアCPUの故障監視ができるので、低コストで信頼性の高いマルチコアCPUを用いた車載用電子制御装置を提供できる。
また、本発明の車載用電子制御装置によれば、低コストで信頼性の高いマルチコアCPUを用いた車載用電子制御装置を提供できることに加え、サブCPUコアから最終回答データを監視部に直接送信することで、CPUコアの無応答故障時に監視部が早期に故障診断できる利点がある。
本発明に係る車載用電子制御装置の第1実施形態を示すハードウエア構成図である。 第1実施形態の故障監視動作を説明するタイムチャートである。 第1実施形態のCPU異常発生時の動作例を説明するタイムチャートである。 第1実施形態のCPU異常発生時の別の動作例を説明するタイムチャートである。 第1実施形態のCPU無応答故障時の動作例を説明するタイムチャートである。 本発明に係る車載用電子制御装置の第2実施形態の故障監視動作を説明するタイムチャートある。 本発明に係る車載用電子制御装置の第3実施形態を示すハードウエア構成図である。 第3実施形態の故障監視動作を説明するタイムチャートである。 第3実施形態のCPU異常発生時の動作例を説明するタイムチャートである。 第3実施形態のCPU無応答故障時の動作例を説明するタイムチャートである。 本発明に係る車載用電子制御装置の第4実施形態を示すハードウエア構成図である。 第4実施形態の故障監視動作を説明するタイムチャートである。 第4実施形態のCPU異常発生時の動作例を説明するタイムチャートである。 第4実施形態のCPU無応答故障時の動作例を説明するタイムチャートである。 本発明に係る車載用電子制御装置の第5実施形態を示すハードウエア構成図である。 第5実施形態の故障監視動作を説明するタイムチャートである。 第5実施形態のCPU異常発生時の動作例を説明するタイムチャートである。 第5実施形態のCPU無応答故障時の動作例を説明するタイムチャートである。
以下、本発明の実施形態を図面に基づいて説明する。
図1は、本発明に係る車載用電子制御装置の第1実施形態を示すハードウエア構成図である。
図1において、車載用電子制御装置1は、例えば主にエンジン制御を行う制御IC(メインCPU)2と、制御IC2の故障監視を行う監視部として監視IC(サブCPU)3とを備えて構成される。
制御IC2は、複数のCPUコア(本実施形態では4つ)10,20,30,40を同一パッケージに封入したマルチコアCPUである。各CPUコア10,20,30,40は、それぞれの制御部(図の簡素化のために図示せず)において、例えば前述した電子スロットル制御等を含む各エンジン制御を並列処理している。
前記CPUコア10は、監視IC3と通信ラインで接続され、制御部における実制御を遂行するための演算処理と共に、故障診断処理として監視IC3から受信した例題データを他の全てのCPUコア20,30,40に一斉に送信し、他のCPUコア20,30,40から受信した回答データと自身の回答データに基づいて最終回答データを生成して監視IC3へ送信するメインCPUコアとして機能し、監視IC送受信部11と、診断部12と、コア間送受信部13とを備える。前記監視IC送受信部11は、監視IC3から例題データを受信する例題受信部11Aと、回答データを監視IC3へ送信する回答送信部11Bとを備える。前記診断部12は、例題受信部11Aから受信した例題データを演算する例題演算部12Aと、例題演算部12Aの演算結果、他のCPUコア20,30,40から受信した回答データ及び後述するECM(Error Control Module)51の診断結果に基づいて監視IC3へ送信する最終回答データを生成する回答生成部12Bとを備える。前記コア間送受信部13は、例題受信部11Aから受信した例題データを、他のCPUコア20,30,40へ同一の送信タイミング且つ送信周期で送信する例題送信部13Aと、他のCPUコア20,30,40から回答データを受信する回答受信部13Bとを備える。
各CPUコア20,30,40は、制御部における実制御を遂行するための演算処理と共に、故障診断処理としてCPUコア10から受信した例題データを演算し、演算結果である回答データをCPUコア10へ送信するサブCPUコアとして機能し、コア間送受信部21,31,41と、診断部22,32,42とをそれぞれ備える。各コア間送受信部21,31,41は、CPUコア10からの例題データを受信する例題受信部21A,31A,41Aと、CPUコア10へ回答データを送信する回答送信部21B,31B,41Bとを備える。各診断部22,32,42は、各例題受信部21A,31A,41Aから受信した例題データを演算する例題演算部22A,32A,42Aと、例題演算部22A,32A,42Aから受信した演算結果に基づいてCPUコア10へ送信する回答データを生成する回答生成部22B,32B,42Bとを備える。尚、制御IC2内のCPUコア10と他のCPUコア20,30,40間のデータ送受信は、図示しない共有メモリを用いて行われる。
また、CPUコア10,20には、ロックステップコア50,60と前述のECM(Error Control Module)51,61からなる故障診断機能が設けられている。この故障診断機能は、ロックステップコア50,60がそれぞれ対応するCPUコア10,20と同じ動作を行い、CPUコア10,20とロックステップコア50,60の動作の差異をECM51,61でそれぞれ検出し、動作の差異が生じたときにECM51,61からCPUコア10,20の診断部12,22に対してCPUコアの異常が通知される構成である。
前記監視IC3は、例題・回答テーブル4と、制御IC送受信部5と、回答判定部6とを備える。前記例題・回答テーブル4は、例題データと予め用意された回答データ期待値とをインデックス化して格納している。制御IC送受信部5は、例題・回答テーブル4から選択した例題データを制御IC2内のCPUコア10へ送信する例題送信部5Aと、CPUコア10から最終回答データを受信する回答受信部5Bとを備える。前記回答判定部6は、回答受信部5Bで受信した最終回答データと例題・回答テーブル4内の選択送信した例題データに対応する回答データ期待値との照合結果に基づいて制御IC2の故障の有無を判定する。
次に、本実施形態の故障監視動作についてタイムチャートを参照して説明する。
図2は、本実施形態の故障監視動作を説明するタイムチャートで、制御IC2が正常な場合である。
監視IC3は、例題・回答テーブル4に格納されている例題データq1〜qNの中から選択した例題データを例題送信部5AによりCPUコア10へ送信する。
CPUコア10は、例題受信部11Aで監視IC3からの例題データを受信すると、例題演算部12Aで例題演算を開始すると共に、例題送信部13Aにより例題データを他の全てのCPUコア20,30,40へ同一の送信タイミング及び送信周期で送信する。
他のCPUコア20,30,40は、それぞれ例題受信部21A,31A,41Aで例題データを受信すると、例題演算部22A,32A,42Aで例題演算を開始し、その演算結果に基づいて回答生成部22B,32B,42Bで生成した回答データを、回答送信部21B,31B,41BによりCPUコア10へ送信する。尚、ロックステップコア60とECM61からなる故障診断機能が設けられているCPUコア20では、ECM61から回答生成部22Bに対して異常がないことが通知されたことを確認して回答データをCPUコア10へ送信する。
CPUコア10は、回答受信部13Bにより他のCPUコア20,30,40から回答データを受信すると、回答生成部12Bにおいて、他のCPUコア20,30,40の回答データと自身の回答データを比較して不一致がないか、また、ECM51から異常がないことが通知されたか否かを確認し、全てのCPUコア10,20,30,40の回答データに不一致がないことを確認し、ECM51から異常なしが通知されたことを確認すると、監視IC3に対する最終回答データを生成して回答送信部11Bから送信する。
監視IC3は、回答受信部5BがCPUコア10からの最終回答データを受信すると、回答判定部6において例題・回答テーブル4からの回答データ期待値と受信した最終回答データとを照合し、一致していれば制御IC2は正常と判定する。かかる故障監視動作を1タスクとして監視IC3により制御IC2の故障監視が周期的に実行される。尚、図2中の待ち期間は、トリガ(データ送受信タイミング)待ちで他の処理を実行している期間を示す。
次に、本実施形態の異常発生時の動作例について図3〜図5のタイムチャートを参照して説明する。
図3は、異常発生時に全てのCPUコアを停止する場合のタイムチャートを示す。ここでは、CPUコア30に異常が発生した場合について説明する。
例えばCPUコア30の自己診断機能により例題演算部32Aの演算機能が故障と判定された場合、回答生成部32Bはフェールセーフ制御出力F/Sを発生して制御対象を安全側に制御するフェールセーフ処理に移行すると共に、異常発生を通知する予め定めた故障通知データとして例えば誤回答データ「0」を生成して回答送信部31Bを介して送信先であるCPUコア10へ送信する。CPUコア10は、CPUコア30から誤回答データ「0」を受信すると、異常発生と判断して回答生成部12Bからフェールセーフ制御出力F/Sを発生してフェールセーフ処理に移行すると共に、最終回答データとして誤回答データ「0」を生成して監視IC3へ送信する。監視IC3は誤回答データ「0」を受信すると、制御IC2の異常と判断して回答判定部6からフェールセーフ制御出力F/Sを発生してフェールセーフ処理に移行し、例題データの送信を停止する。正常であるCPUコア20,40は、その間、次回の例題データ受信タイミングまで通常の実制御を継続し、例題データ受信タイミングに例題データを受信しないことでタイムアウトと判断し、回答生成部22B,42Bからフェールセーフ制御出力F/Sを発生してフェールセーフ処理に移行する。
尚、図4のタイムチャートに示すように、異常が発生したCPUコア30のみフェールセーフ処理に移行させ、正常な他のCPUコア10,20,40はそのまま制御動作を継続させるようにしてもよい。この場合、CPUコア10は、CPUコア30を異常と判断した場合に、例題データの送信先から故障したCPUコア30を除外し、正常なCPUコア20,40のみに例題データを送信する。
図5は、CPUコアの例題演算部が無応答故障した場合のタイムチャートである。ここでは、CPUコア10が無応答故障した場合について説明する。
例えば、CPUコア10の例題演算部12Aが無応答故障し監視IC3へ最終回答データが送信できない場合、監視IC3は、CPUコア10への例題データ送信から所定時間内にCPUコア10からの最終回答データが受信できないことにより制御IC2は異常と判断し、回答判定部6からフェールセーフ制御出力F/Sを発生してフェールセーフ処理に移行すると共に、例題データの送信を停止する。他のCPUコア20,30,40は、次回の例題データ受信タイミングまで通常の実制御を継続するが、回答データの送信から所定時間内にCPUコア10から例題データが受信できないことでタイムアウトと判断して、回答生成部22B,32B,42Bからそれぞれフェールセーフ制御出力F/Sを発生してフェールセーフ処理に移行する。
かかる本実施形態によれば、単一の監視IC3でCPUコアを複数有するマルチコアCPUである制御IC2の故障監視が可能である。これにより、従来のようにCPUコア数分の監視IC3を設ける必要がなく、また、単一の監視IC3をマルチプレクサを用いて複数のCPUコアに順次切替え接続する構成と比較してマルチプレクサやセレクタ信号生成手段等が不要となるので、監視ICを増やすことなく低コストでマルチコアCPUの故障監視が可能となる。従って、安価で信頼性の高い車載用電子制御装置を提供できる。
次に、車載用電子制御装置の第2実施形態について説明する。
本実施形態は、CPUコア10から他のCPUコア20,30,40への例題データの送信を、送信周期を異ならせて他のCPUコア20,30,40へ順次行うようにしたもので、図1に示す第1実施形態とはCPUコア10から他のCPUコア20,30,40への例題データの送信動作が異なるだけで、ハードウエア構成は同じであるので図示を省略し、ここでは、故障監視動作についてタイムチャートを参照して説明する。
図6に、本実施形態の故障監視動作のタイムチャートを示す。CPUコア10は、監視IC3から例題データを受信すると、例題演算部12Aで例題演算をすると共に、例題データをCPUコア20へ送信し、CPUコア20から回答データを受信する。CPUコア10は、回答データが正しい回答データであることを確認すると、監視IC3に最終回答データを生成して送信する。監視IC3は、CPUコア10から最終回答データを受信すると、回答判定部6においてCPUコア10からの最終回答データと例題・回答テーブル4からの回答データ期待値の照合を行い、一致していればCPUコア10,20は正常と判定する。かかる動作を1タスクとして、監視IC3によりCPUコア20,30,40毎に順次故障監視を行う。
本実施形態のようにCPUコア10からCPUコア20,30,40毎に順次例題データを送信する構成では、CPUコア10からCPUコア20,30,40への例題データの送信周期を、CPUコア20,30,40の重要度に応じて異ならせることができる。即ち、重要度が高いCPUコアへの例題データの送信周期を、重要度の低いCPUコアへの例題データの送信周期より短くする。かかる構成によれば、重要度の低いCPUコアの例題演算頻度を下げることができ、例題演算負荷を軽減できる。
尚、本実施形態においても、CPUコアの異常発生時に、監視IC3からの例題データの送信を停止して全CPUコア10,20,30,40を停止させてもよく、例題データの送信先から異常が発生したCPUコアだけを除外し正常な他のCPUコアの制御動作を継続させるようにしてもよい。
図7に、本発明の車載用電子制御装置の第3実施形態のハードウエア構成図を示し説明する。尚、第1実施形態と同一要素には同一符号を付して説明を省略する。
この車載用電子制御装置1は、CPUコア10の構成及びCPUコア10と他のCPUコア20,30,40間のデータ通信ラインの接続形態が、第1実施形態と異なっている。本実施形態では、CPUコア10の例題受信部11Aは例題演算部12Aに接続し、回答生成部12Bが例題送信部13Aに接続し、回答生成部12Bで生成した回答データを例題データとして例題送信部13Aへ送信する。CPUコア10の例題送信部13Aは初段のCPUコア20の例題受信部21Aに接続し、CPUコア20の回答送信部21BがCPUコア30の例題受信部31Aに接続し、CPUコア30の回答送信部31Bが最終段のCPUコア40の例題受信部41Aに接続し、最終段のCPUコア40の回答送信部41BはCPUコア10の回答受信部13Bに接続している。
次に、本実施形態の故障監視動作についてタイムチャートを参照して説明する。
図8は、制御IC2が正常な場合のタイムチャートである。
CPUコア10は、第1実施形態と同様にして監視IC3から例題データを受信すると、例題演算部12Aで例題演算し、演算結果に基づいて回答生成部12Bで生成した回答データを例題送信部13Aにより例題データとして初段のCPUコア20へ送信する。
CPUコア20は、CPUコア10から例題データを受信すると、例題演算部22Aで例題演算を行い、演算結果に基づいて回答生成部22Bで生成した回答データを例題データとして後段のCPUコア30へ送信する。CPUコア30は、CPUコア20から例題データを受信すると、例題演算部32Aで例題演算を行い、演算結果に基づいて回答生成部32Bで生成した回答データを例題データとして最終段のCPUコア40へ送信する。CPUコア40は、CPUコア30から例題データを受信すると、例題演算部42Aで例題演算を行い、演算結果に基づいて回答生成部42Bで生成した回答データをCPUコア10へ送信する。
CPUコア10は、例題データを送信してから規定の経過時間内にCPUコア40から回答データを受信すると、回答生成部12Bで第1実施形態と同様にして受信回答データとECM51の検査結果に基づいて最終回答データを生成して監視IC3へ送信する。監視IC3は、CPUコア10から最終回答データを受信すると、回答判定部6で例題・回答テーブル4の送信例題データに対応する回答データ期待値と受信した最終回答データとを照合し、一致していれば制御IC2は正常と判定する。上述した故障監視動作を1タスクとして監視IC3により制御IC2の故障監視を周期的に実行する。尚、CPUコア10は、規定の経過時間内にCPUコア40から回答データが受信できない場合は、異常発生と判断して誤回答データ「0」を生成して監視IC3へ送信する。
次に、本実施形態の異常発生時の動作について説明する。
図9に、例えばCPUコア30に異常が発生した場合のタイムチャートを示す。例えばCPUコア30が自己診断機能により例題演算部32Aの演算機能を異常と判定した場合、CPUコア30は回答生成部32Bからフェールセーフ制御出力F/Sを発生してフェールセーフ処理に移行すると共に、誤回答データ「0」を送信先のCPUコア40へ送信する。CPUコア40は、誤回答データ「0」を受信した場合は、例題演算せずに誤回答データ「0」をCPUコア10へ送信すると共に、フェールセーフ処理に移行する。CPUコア10は、CPUコア40から誤回答データ「0」を受信すると、フェールセーフ処理に移行すると共に、監視IC3へ最終回答データとして誤回答データ「0」を送信する。これにより、監視IC3はフェールセーフ処理に移行すると共に、例題データの送信を停止する。尚、CPUコア20は、その間、次回の例題データ受信タイミングまで通常の実制御を継続し、次回の例題データ受信タイミングにCPUコア10から例題データが受信できないことでタイムアウトと判断してフェールセーフ処理に移行する。
図10に、例えばCPUコア10が無応答故障した場合のタイムチャートを示す。CPUコア10に無応答故障が発生し、CPUコア20が例題データ受信タイミングに例題データを受信できないと、CPUコア20はタイムアウトと判断しCPUコア10故障と見なし、フェールセーフ処理に移行すると共に、CPUコア30へ誤回答データ「0」を送信する。CPUコア30は誤回答データ「0」の受信でフェールセーフ処理に移行し、CPUコア40に誤回答データ「0」を送信する。CPUコア40は誤回答データ「0」の受信でフェールセーフ処理に移行し、CPUコア10に誤回答データ「0」を送信するが、CPU10は無応答状態で監視IC3へ最終回答データを送信できないので、監視IC3は、例題データの送信から所定時間内にCPUコア10から最終回答データが受信できず、フェールセーフ処理に移行する。
図11に、本発明の車載用電子制御装置の第4実施形態のハードウエア構成図を示し説明する。尚、第1実施形態と同一要素には同一符号を付して説明を省略する。
この車載用電子制御装置1は、CPUコア10が、図1に示す第1実施形態のCPUコア10と同様に、例題受信部11Aから例題演算部12Aと例題送信部13Aへ例題データを送信するよう構成されている。その他は図7に示す第3実施形態と同じ構成である。
次に、本実施形態の故障監視動作についてタイムチャートを参照して説明する。
図12は、制御IC2が正常な場合のタイムチャートである。
CPUコア10は、第1実施形態と同様にして監視IC3から例題データを受信すると、受信した例題データを例題演算部12Aで演算すると共に、例題送信部13Aにより初段のCPUコア20へ送信する。
それ以後の動作は、第3実施形態と同様であり、CPU20,30,40は、例題演算により得られた回答データを例題データとして後段に順次送信し、CPUコア10は例題データの送信から所定の経過時間内に最終段のCPUコア40から回答データを受信すると、最終回答データを生成して監視IC3へ送信する。監視IC3は、受信した最終回答データと回答データ期待値を照合し、一致していれば制御IC2は正常と判定する。尚、CPUコア10が、所定時間内にCPUコア40から回答データを受信できない場合は、第3実施形態と同様に最終回答データとして誤回答データ「0」を生成して監視IC3へ送信する。
かかる第4実施形態によれば、CPUコア10とCPUコア20の例題演算が略同時期に行われるので、第3実施形態と比較してCPUコア20の例題演算完了が、CPUコア10の例題データ演算時間分早くなる。従って、監視IC3における制御IC2の故障診断結果が第3実施形態に比べて早く得られる利点がある。
次に、本実施形態の異常発生時の動作について説明する。
図13に、例えばCPUコア30に異常が発生した場合のタイムチャートを示す。この場合の動作は、図9に示す第3実施形態の場合と同様であるので説明を省略する。
本実施形態によれば、CPUコア10とCPUコア20が同時期に演算動作を開始するので、例えばCPUコア30に異常が発生した場合に、コア30,40,10、監視IC3がフェールセーフ処理に移行するタイミングが第3実施形態と比較して早くなる。
図14に、例えばCPUコア10が無応答故障した場合のタイムチャートを示す。CPUコア10に無応答故障が発生した場合、CPUコア10のコア間送受信部13が正常であれば、CPUコア20へ例題データを送信できるので、CPUコア20,30,40は、正常であれば例題演算と回答データの送信を通常通りに行い、CPUコア40からCPUコア10へ回答データが送信される。しかし、CPU10は無応答状態であり、監視IC3へ最終回答データを送信できないので、監視IC3は、例題データの送信から所定時間内にCPUコア10から最終回答データを受信できず、フェールセーフ処理に移行する。CPUコア20,30,40は、次回の例題データ受信タイミングまで通常の実制御を継続し、次回の例題データ受信タイミングに例題データが受信できないことにより故障発生と見なし、それぞれフェールセーフ処理に移行する。
図15に、本発明の車載用電子制御装置の第5実施形態のハードウエア構成図を示し説明する。尚、第1実施形態と同一要素には同一符号を付して説明を省略する。
この車載用電子制御装置1は、CPUコア10′が、例題受信部11Aと、診断部12と、例題送信部13Aとを備え、回答送信部及び回答受信部を持たない。前記例題受信部11Aは監視IC3から受信した例題データを診断部12の例題演算部12Aへ送信し、診断部12の回答生成部12Bは、生成した回答データを例題送信部13Aに例題データとして送信する構成である。また、CPUコア40の回答送信部41Bは、監視IC3の回答受信部5Bに接続して最終回答データを監視IC3へ送信する構成である。
次に、本実施形態の故障監視動作についてタイムチャートを参照して説明する。
図16は、制御IC2が正常な場合のタイムチャートである。
CPUコア10′は、第1実施形態と同様にして監視IC3から例題データを受信すると、例題演算部12Aで例題演算し、回答生成部12Bで生成した回答データを例題送信部13Aにより例題データとして初段のCPUコア20へ送信する。
CPUコア20,30は、第3実施形態と同様にして受信した例題データの演算結果に基づいて生成した回答データを例題データとして後段のCPUコア30,40へ送信する。最終段のCPUコア40は、受信した例題データの演算結果に基づいて生成した最終回答データを監視IC3へ送信する。
監視IC3は、CPUコア40から最終回答データを受信すると、回答判定部6で例題・回答テーブルの送信例題データに対応する回答データ期待値と受信した回答データとを照合し、一致していれば制御IC2は正常と判定する。この動作を周期的に繰り返して故障診断が行われる。尚、監視IC3は、所定時間内にCPUコア40から最終回答データが受信できない場合は、制御IC2に故障ありと見なしてフェールセーフ処理に移行する。
本実施形態の異常発生時の動作について説明する。
図17に、例えばCPUコア30に異常が発生した場合のタイムチャートを示す。例えばCPUコア30が自己診断機能により例題演算部32Aの演算機能が異常と判定された場合、CPUコア30はフェールセーフ処理に移行すると共に、例えば誤回答データ「0」をCPUコア40へ送信する。その後の動作は、CPUコア10′を介さずにCPUコア40から監視IC3へ最終回答データが送信されることを除いて、第3実施形態の図9のタイムチャートで示すのと同様の動作である。尚、CPUコア10′とCPUコア20は、次回の例題データ受信タイミングまで通常の実制御を継続し、次回の例題データ受信タイミングに例題データが受信できないことによりタイムアウトと判断してそれぞれフェールセーフ処理に移行する。
図18に、例えばCPUコア10′が無応答故障した場合のタイムチャートを示す。CPUコア10′に無応答故障が発生した場合、CPUコア20が例題データ受信タイミングに例題データを受信できないので、CPUコア20は、タイムアウトと判断してCPUコア10′が故障していると見なし、フェールセーフ処理に移行すると共に、CPUコア30へ誤回答データ「0」を例題データとして送信する。CPUコア30は誤回答データ「0」の受信によりフェールセーフ処理に移行し、CPUコア40へ誤回答データ「0」を送信する。CPUコア40は誤回答データ「0」の受信によりフェールセーフ処理に移行し、監視IC3へ最終回答データとして誤回答データ「0」を送信する。監視IC3はCPUコア40からの誤回答データ「0」の受信によりフェールセーフ処理に移行する。
かかる第5実施形態によれば、制御IC2で無応答故障が発生した場合に、監視IC3による故障検出が上述した各実施形態よりも早くでき、フェールセーフ処理への移行が早くなる。従って、車載用電子装置1の信頼性をより高めることができる。
尚、上述の各実施形態では、CPUコア10,10′,20がロックステップ機能を備える例を示したが、ロックステップ機能はなくてもよいことは言うまでもない。また、本発明は、制御IC2が1つのメインCPUコアと1つのサブCPUコアの2つのCPUコアを有するデュアルコアCPUであっても適用できる。
1 車載用電子制御装置
2 制御IC
3 監視IC
4 例題・回答テーブル
5 制御IC送受信部
5A,13A 例題送信部
5B,13B 回答受信部
6 回答判定部
10,10′,20,30,40 CPUコア
11 監視IC送受信部
11A,21A,31A,41A 例題受信部
11B,21B,31B,41B 回答送信部
12,22,32,42 診断部
12A,22A,32A,42A 例題演算部
12B,22B,32B,42B 回答生成部
13,21,31,41 コア間送受信部
50,60 ロックステップコア
51,61 ECM

Claims (13)

  1. 複数のCPUコアを持つCPUと、前記CPUの故障監視を行う監視部と、を備えた車載用電子制御装置であって、
    前記複数のCPUコアのうちの1つをメインCPUコアとし、他のCPUコアをサブCPUコアとし、
    前記サブCPUコアは、前記メインCPUコアから送信された例題データに対する回答データを算出して前記メインCPUコアへ送信し、
    前記メインCPUコアは、前記監視部から送信された例題データに対する回答データを算出すると共に、前記サブCPUコアへ例題データを送信し、自身の回答データと前記サブCPUコアから返信された回答データとに基づいて最終回答データを生成して前記監視部へ送信し、
    前記監視部は、前記メインCPUコアから受信した前記最終回答データと前記メインCPUコアへ送信した例題データに対応させて予め用意した回答データ期待値との照合結果に基づいて前記CPUの故障診断を行う車載用電子制御装置。
  2. 前記サブCPUコアが複数あるとき、前記メインCPUコアから各サブCPUコアへ例題データを送信する請求項1に記載の車載用電子制御装置。
  3. 前記メインCPUコアは、各サブCPUコアへ同一の送信タイミング且つ送信周期で前記例題データを送信する請求項2に記載の車載用電子制御装置。
  4. 前記メインCPUコアは、各サブCPUコアへ異なる送信周期で前記例題データを送信する請求項2に記載の車載用電子制御装置。
  5. 前記メインCPUコアは、前記複数のサブCPUコアの少なくとも1つが故障したとき、全てのサブCPUコアへの例題データの送信を停止する請求項2〜4のいずれか1つに記載の車載用電子制御装置。
  6. 前記メインCPUコアは、前記複数のサブCPUコアの少なくとも1つが故障したとき、当該故障したサブCPUコアのみ例題データの送信を停止する請求項2〜4のいずれか1つに記載の車載用電子制御装置。
  7. 前記サブCPUコアが複数あるとき、前記メインCPUコアは、前記監視部から送信された例題データに対する回答データを算出して当該回答データを例題データとして初段のサブCPUコアへ送信し、最終段のサブCPUコア以外の各サブCPUコアは、受信した例題データに対する回答データを算出して当該回答データを例題データとして後段のサブCPUコアへ順次送信し、前記最終段のサブCPUコアは、受信した例題データに対する回答データを算出して当該回答データを前記メインCPUコアへ送信する請求項1に記載の車載用電子制御装置。
  8. 前記メインCPUコアは、前記監視部から送信された例題データから算出した前記回答データに代えて、前記監視部から送信された例題データを前記初段のサブCPUコアへ送信する請求項7に記載の車載用電子制御装置。
  9. 複数のCPUコアを持つCPUと、前記CPUの故障監視を行う監視部と、を備えた車載用電子制御装置であって、
    前記複数のCPUコアの中の1つをメインCPUコアとし、他のCPUコアをサブCPUコアとし、
    前記メインCPUコアは、前記監視部から送信された例題データに対する回答データを算出して当該回答データを前記サブCPUコアへ例題データとして送信し、
    前記サブCPUコアは、前記メインCPUコアから送信された例題データに対する回答データを算出して最終回答データとして前記監視部へ送信し、
    前記監視部は、前記サブCPUコアから受信した前記最終回答データと前記メインCPUコアへ送信した例題データに対応させて予め用意した回答データ期待値との照合結果に基づいて前記CPUの故障診断を行うよう構成されるとともに、
    前記メインCPUコア及び前記サブCPUコアは、自己診断機能により故障と判定したときに、フェールセーフ処理を実行すると共に、予め定めた故障通知データを生成して送信先へ送信し、前記故障通知データを受信したとき、演算動作を行わずに前記故障通知データを送信先へ送信する、車載用電子制御装置。
  10. 前記サブCPUコアが複数あるとき、前記メインCPUコアは、前記監視部から送信された例題データに対する回答データを算出して当該回答データを例題データとして初段のサブCPUコアへ送信し、最終段のサブCPUコア以外の各サブCPUコアは、受信した例題データに対する回答データを算出して当該回答データを例題データとして後段のサブCPUコアへ順次送信し、前記最終段のサブCPUコアは、受信した例題データに対する回答データを算出して当該回答データを前記監視部へ送信する請求項9に記載の車載用電子制御装置。
  11. 前記メインCPUコア及び前記サブCPUコアは、自己診断機能により故障と判定したときに、フェールセーフ処理を実行すると共に、予め定めた故障通知データを生成して送信先へ送信する請求項1〜請求項のいずれか1つに記載の車載用電子制御装置。
  12. 前記メインCPUコア及び前記サブCPUコアは、前記故障通知データを受信したとき、演算動作を行わずに前記故障通知データを送信先へ送信する請求項11に記載の車載用電子制御装置。
  13. 前記メインCPUコア及び前記サブCPUコアは、受信されるべきデータが予め定めた所定時間内に受信できないときフェールセーフ処理を実行する請求項1〜12のいずれか1つに記載の車載用電子制御装置。
JP2013243648A 2013-11-26 2013-11-26 車載用電子制御装置 Active JP6207987B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013243648A JP6207987B2 (ja) 2013-11-26 2013-11-26 車載用電子制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013243648A JP6207987B2 (ja) 2013-11-26 2013-11-26 車載用電子制御装置

Publications (2)

Publication Number Publication Date
JP2015103052A JP2015103052A (ja) 2015-06-04
JP6207987B2 true JP6207987B2 (ja) 2017-10-04

Family

ID=53378701

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013243648A Active JP6207987B2 (ja) 2013-11-26 2013-11-26 車載用電子制御装置

Country Status (1)

Country Link
JP (1) JP6207987B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017146897A (ja) * 2016-02-19 2017-08-24 株式会社デンソー マイクロコントローラ及び電子制御装置
KR101988558B1 (ko) * 2017-06-07 2019-06-12 현대오트론 주식회사 멀티 코어를 갖는 마이크로콘트롤러 유닛을 감시하는 감시장치 및 그것의 동작 방법
KR101998469B1 (ko) * 2017-08-02 2019-07-09 현대오트론 주식회사 멀티 코어 mcu 및 그 동작 방법
CN114761929A (zh) 2019-12-05 2022-07-15 日立安斯泰莫株式会社 车载电子控制装置
KR102252315B1 (ko) * 2019-12-30 2021-05-13 현대오트론 주식회사 차량용 전자 제어 장치 및 그 모니터링 방법
KR102163208B1 (ko) * 2020-03-10 2020-10-08 주식회사 태정이엔지 하이브리드 무인교통 감시시스템 및 그 방법

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3883856B2 (ja) * 2001-11-30 2007-02-21 日本信号株式会社 信号処理系の故障診断方法および装置
JP4366652B2 (ja) * 2004-04-23 2009-11-18 横河電機株式会社 伝送器及びその二重化方法
JP2010128627A (ja) * 2008-11-26 2010-06-10 Hitachi Automotive Systems Ltd 車載用電子制御装置
JP2010136544A (ja) * 2008-12-05 2010-06-17 Daimler Ag 車両制御システムの通信エラー判定装置及び車両制御システムの通信エラー判定方法
JP2011032903A (ja) * 2009-07-30 2011-02-17 Denso Corp 車両の制御装置
JP2013193721A (ja) * 2012-03-23 2013-09-30 Hitachi Automotive Systems Ltd 共用電源装置

Also Published As

Publication number Publication date
JP2015103052A (ja) 2015-06-04

Similar Documents

Publication Publication Date Title
JP6207987B2 (ja) 車載用電子制御装置
US9702742B2 (en) Circuit assembly and method for plausibility checking of sensor signals
US9031740B2 (en) Vehicle control device capable of controller area network communication and diagnostic method therefor
JP4149806B2 (ja) プロセッサを監視するための装置
US20110118932A1 (en) Fault diagnosis and prognosis using diagnostic trouble code markov chains
CN102541048B (zh) 控制器局域网消息传送停止测试系统和方法
JP6133622B2 (ja) 車両制御装置
US9207661B2 (en) Dual core architecture of a control module of an engine
US9367377B2 (en) Apparatus and method for monitoring multiple micro-cores
JP2006209565A (ja) 情報処理装置および情報処理方法
US9641383B2 (en) Method for error diagnosis of can communication
US10281525B2 (en) Semiconductor device and diagnostic test method for both single-point and latent faults using first and second scan tests
JP2010128627A (ja) 車載用電子制御装置
JP5608409B2 (ja) 自己診断システム及び検査回路判定方法
JP2018109850A (ja) 収集装置、収集方法、プログラム及び収集システム
JP6741353B2 (ja) 制御装置および制御装置の故障時処理方法
JP2007293678A (ja) 共用バス接続診断装置
US10514970B2 (en) Method of ensuring operation of calculator
KR101826779B1 (ko) Asic의 제어 로직의 진단 장치 및 방법
JP6597325B2 (ja) 電子制御装置
JP2016072731A (ja) 自動車用電子制御装置及び診断方法
US11180157B2 (en) Monitoring apparatus and driving force control system
JP6716429B2 (ja) 電子制御装置及びその診断方法
JP2022156616A (ja) 制御装置及びリセット機能の診断方法
JP5985030B1 (ja) 電子制御装置および電子制御装置のための制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160411

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170120

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170214

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170411

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: 20170815

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170906

R150 Certificate of patent or registration of utility model

Ref document number: 6207987

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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