JP5316128B2 - 故障診断システム、電子制御ユニット、故障診断方法 - Google Patents

故障診断システム、電子制御ユニット、故障診断方法 Download PDF

Info

Publication number
JP5316128B2
JP5316128B2 JP2009064975A JP2009064975A JP5316128B2 JP 5316128 B2 JP5316128 B2 JP 5316128B2 JP 2009064975 A JP2009064975 A JP 2009064975A JP 2009064975 A JP2009064975 A JP 2009064975A JP 5316128 B2 JP5316128 B2 JP 5316128B2
Authority
JP
Japan
Prior art keywords
cpu
processing
cpu core
core
mode
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
JP2009064975A
Other languages
English (en)
Other versions
JP2010218277A5 (ja
JP2010218277A (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.)
Toyota Motor Corp
Original Assignee
Toyota Motor 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 Toyota Motor Corp filed Critical Toyota Motor Corp
Priority to JP2009064975A priority Critical patent/JP5316128B2/ja
Priority to PCT/IB2010/000195 priority patent/WO2010106403A1/en
Priority to CN201080012408.0A priority patent/CN102741818B/zh
Priority to EP10704588A priority patent/EP2409230B1/en
Priority to US13/257,121 priority patent/US8656216B2/en
Publication of JP2010218277A publication Critical patent/JP2010218277A/ja
Publication of JP2010218277A5 publication Critical patent/JP2010218277A5/ja
Application granted granted Critical
Publication of JP5316128B2 publication Critical patent/JP5316128B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/142Reconfiguring to eliminate the error
    • G06F11/1428Reconfiguring to eliminate the error with loss of hardware functionality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0721Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU]
    • G06F11/0724Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU] in a multiprocessor or a multi-core unit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
    • G06F11/2236Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test CPU or processors
    • G06F11/2242Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test CPU or processors in multi-processor systems, e.g. one processor becoming the test master

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Hardware Redundancy (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Description

本発明は、複数のCPUコアを備えたマルチコアCPUの故障診断システム等に関し、特に、各CPUコアを個別に故障診断する故障診断システム、電子制御ユニット及び故障診断方法に関する。
1つのシステムに複数のLSIやマイコンが搭載されることを利用して、一方のLSI(マイコン)が他方のLSI(マイコン)から送受信されるウォッチドッグ信号を監視して、相互に、LSIやマイコンの異常を検出する異常検出が行われることがある。また、1つのマイコンが複数のCPUコアを搭載したマルチコア型のプロセッサでは、複数のCPUが同じ処理を実行してその処理結果を比較することで、異常を検出することが行われる場合がある。また、CPUが自己診断することで異常を検出する方法も考えられている(例えば、特許文献1参照。)。
図14は、特許文献1において自己診断するプロセッサのブロック図である。命令コード生成部は命令固有コードを定められたルールに従って生成してコード比較部へ入力し、実行命令コード生成部は命令コード生成部とは逆のルールで命令固有コードを生成してコード比較部4入力する。コード比較部は、2つの命令固有コードを比較して、差異があればプロセッサに異常があったことを検出する。
しかしながら、複数のCPUが同じ処理を実行したり、図14のように異常検出のために何らかの命令を実行することは、そのマイコンやプロセッサのリソースを圧迫するため、本来そのプロセッサに要求される制御やデータ処理等の標準処理の実行速度に支障をきたすおそれがある。
ところで、マルチコア型のプロセッサには、SMP(Symmetric Multi-Processing)と呼ばれる処理態様、AMP(Asymmetric Multiprocessing)と呼ばれる処理態様、及び、SMPとAMPを組み合わせたBMP(Bound Multiprocessing)と呼ばれる処理態様があることが知られている。そして、このBMPとして構成されたプロセッサにおいて、いずれかのCPUコアに異常が生じた場合、異常が発生したCPUコアに割り当てられている処理を、他のCPUコアに割り当てる技術が提案されている(例えば、特許文献2参照。)。特許文献2に開示されたオペレーティングシステムは、他のCPUコアに処理を割り当てる際、優先順位の高い処理を正常なCPUに割り当て、優先順位の低い処理を行わないようにすることによって、優先順位が高い処理を異常が検出される前と同じ効率で実行することを図っている。
特開平07−230392号公報 特開2008−123439号公報
しかしながら、特許文献2に記載されたオペレーティングシステムは、異常を検出する際、CPUコアにより「1+1」の加算を行うなど、マイコンやプロセッサのリソースを圧迫するため、標準処理の実行速度に影響が生じるおそれがあるという点で特許文献1等と変わりはない。
本発明は、上記課題に鑑み、標準処理の実行速度に支障をきたすことなく複数のCPUコアから異常の生じたCPUコアを特定できる故障診断システム、電子制御ユニット及び故障診断方法を提供することを目的とする。
上記課題に鑑み、本発明は、Symmetric Multi−ProcessingモードからAsymmetric Multi−Processingモードに切り替え可能な複数のCPUコアを搭載したマルチコアCPUの故障診断システムにおいて、Symmetric Multi−ProcessingモードのマルチコアCPUが標準処理を実行する際の処理負荷を予測する負荷予測手段と、前記処理負荷が閾値未満の場合、Symmetric Multi−Processingモードで動作している2つ以上のCPUコアの1つをAsymmetric Multi−Processingモードに切り替え、Asymmetric Multi−Processingモードに切り換えられない残りのCPUコアに標準処理を継続させるモード切り替え手段と、Asymmetric Multi−Processingモードに切り替えられたCPUコアを故障診断する故障診断手段と、とを有し、前記モード切り替え手段は、前記故障診断手段により故障していないと判定されたCPUコアをSymmetric Multi−Processingモードに切り替える、ことを特徴とする。
標準処理の実行速度に支障をきたすことなく複数のCPUコアから異常の生じたCPUコアを特定できる故障診断システム、電子制御ユニット及び故障診断方法を提供することができる。
マイコンの故障診断を模式的に示す図の一例である。 マルチコアCPUを搭載したマイコンのブロック図の一例である。 ECUのシステムレイヤの一例を示す図である。 データ制御部の構成図の一例を示す図である。 OSが提供する機能ブロックの一例を示す図である。 負荷予測を模式的に説明する図の一例である。 モード切り替え部がモード制御部に制御信号を出力した直後のデータ制御部を示す図である。 CPUコア0が故障診断のテストデータ及び期待値を読み出す際のデータの流れを説明する図である。 CPUコア0が故障診断のテストデータを実行した後のデータの流れを説明する図である。 診断処理の終了時のデータ制御部を示す図である。 マイコンがCPUコア毎に故障診断する手順を示すフローチャート図の一例である。 4つのCPUコア0〜3を有するマルチコアCPUを搭載したマイコンのブロック図の一例である。 データ制御部に外部メモリを備えたマイコンのブロック図の一例である。 自己診断するプロセッサのブロック図である(従来図)。
以下、本発明を実施するための最良の形態について図面を参照しながら実施例を挙げて説明する。
図1は、マイコン100の故障診断を模式的に示す図の一例である。マイコン100はCPUコア0とCPUコア1(両者を区別しない場合はCPUコア11といい、CPUコア0,1により構成される1つのシステムをマルチコアCPU13と称す。)を有する。マイコン100に搭載されたOS21は、CPUコア0とCPUコア1をそれぞれ個別に、SMP(Symmetric Multi-Processing)とAMP(Asymmetric Multiprocessing)の処理モードの、一方から他方に切り替えることができる(以下、SMPの処理モードを「SMPモード」、AMPの処理モードを「AMPモード」、という)。すなわち、OS21及びCPUコア11は、完全なBMP(Bound Multiprocessing)でなく、SMPモードから動的に(故障診断する際一時的に)BMPの処理モードに切り替わることで、処理効率を向上させている。
なお、SMPモードは、一般には、1つのOS21がCPUコア0とCPUコア1及びメモリを共有し、OS21が処理負荷の少ないCPUコア11にタスクを動的に割り当てる処理態様である。すなわち、タスクとCPUコア11との結びつきがなく、OS21から見て各CPUコアは対等である。また、AMPモードは、一般には、CPUコア11に割り当てるタスクが予め定められている処理態様である。いずれかのCPUコア11の処理負荷が少なくても、実行対象のタスクがそのCPUコア11に割り当てられたタスクでなければ、処理負荷が少ないCPUコア11が実行対象のタスクを実行することができない。また、BMPモードは、一つのOS21が特定のタスクを特定のCPUコアに割り当て、その他のタスクを残りのCPUコアに動的に割り当てる処理態様である。
I)図1では、当初、SMPモードでCPUコア0とCPUコア1が標準処理を実行している。標準処理は、乗員の操作、走行状況や車両状況に応じて、CPUコア11に随時要求される制御やデータ処理等をいい、換言すると、故障検出のタスク以外の処理である。標準処理は、一般には複数の異なるタスクから構成されている。
II)そして、CPUコア0を故障診断するタイミングになると、OS21は、CPUコア0をSMPモードからAMPモードに切り替える前に、CPUコア1のみで標準処理を実行しても標準処理の実行速度に支障がないこと(処理負荷)を確認する。こうすることで、故障診断時に、CPUコア0がAMPモードになり故障診断のタスクのみを実行しても、標準処理が滞ることなく実行されることを保証できる。
III)OS21は故障診断する対象のCPUコア(ここではCPUコア0)11をSMPモードからAMPモードに切り替える。CPUコア0がAMPモードで実行する特定のタスクは故障診断のタスクである。AMPモードのCPUコア0は、故障診断のタスク以外のタスクは実行しない。これに対し、CPUコア1はSMPモードのままなので、CPUコア1は標準処理を継続する。
IV)CPUコア0が故障診断のタスクを終了すると、OS21はCPUコア0をAMPモードからSMPモードに切り替える。同様の手順で、OS21はCPUコア1をSMPモードからAMPモードに切り替え、CPUコア1に故障診断のタスクを割り当てる。
SMPモードとAMPモードを相互に切り替え可能なOS21とマルチコアCPU13を搭載し、切り替え前に1つのCPUコア11で処理できる処理負荷か否かを確認することで、標準処理の実行速度に支障をきたすことなく、マルチコアCPU13の各CPUコア11を個別に故障診断することができる。
図2は、マルチコアCPU13を搭載したマイコン100のブロック図の一例を示す。マイコン100は、マルチコアCPU13、データアクセスコントローラ14、メモリアクセスコントローラ15及びデータバス16、17を有する。マルチコアCPU13は、CPUコア0、CPUコア1及びデータ制御部12を有し、データアクセスコントローラ14は外部メモリ18と、メモリアクセスコントローラ15は外部メモリ19とそれぞれ接続されている。なお、マイコン100でなくLSIにマルチコアCPU13を搭載してもよい。
マイコン100、外部メモリ18及び外部メモリ19とで、車両に搭載されるECU(Electronic Control Unit)200を実現できる。例えば、マルチメディア系のECU200では、GPS受信機が検出した位置情報に基づき道路地図を表示装置に表示したり、目的地までの経路を検索するなどの処理、テレビやカメラ映像の映像処理、及び、ラジオやCDプレーヤの音声処理等が標準処理となる。また、エンジンECUでは、燃料噴射量、燃料噴射タイミング、吸排気弁の開放タイミング、スロットル開度、イグナイタの点火タイミング等を適切に制御する処理が標準処理となる。この他、ボディECU、ブレーキECU、運転支援用の各種のECU200にも搭載できる。本実施例では、これらの標準処理の実行速度に支障をきたすことなく故障診断するので、リアルタイム性が要求されるものを標準処理と定義してもよい。
データ制御部12は、CPUコア0とCPUコア1のCPU間通信を制御する。CPU間通信の一般的な機能として、CPUコア11の状態をサイクル時間毎に相互に通知したり、共有メモリを介してCPUコア0とCPUコア1の間でデータを送受信することができる。例えば、2つのCPUコア11が同じアプリケーションを実行し互いの処理結果を利用するような場合、データ制御部12が処理結果の整合性を確保する。また、CPUコア11が、用意されたAPI(Application Programming Interface)を利用してデータ制御部12に要求することで、CPUコア0からCPUコア1(又はその逆に)に割り込みすること可能になっている。
データバス17は、標準処理時にCPUコア11が使用するバスで、データバス16は故障診断時にCPUコア11が使用するバスとなる。データ制御部12は、故障診断時になると、CPUコア11にデータバス16を介して外部メモリ18にアクセスさせる。例えばCPUコア0が故障診断のタスクを実行していても、CPUコア1は標準処理しているので、標準処理時に使用するデータバス17と故障診断時に使用するデータバス16を、別々に設けることで、故障診断時にデータバス17のバス負荷が増大して、標準処理の実行速度に支障をきたすことを防止できる。
データアクセスコントローラ14は、故障診断時に、データ制御部12からの要求に応じて外部メモリ18にアクセスし、後述するテストデータ37や期待値38を読み込む。
外部メモリ19は、標準処理に必要なアプリケーションプログラム、OS21、ファイル等を記憶している、比較的大容量の記憶装置(例えば、HDD、SSD等)である。データ制御部12は、標準処理を実行しているCPUコア11のアクセス要求を、データバス17を介してメモリアクセスコントローラ15に要求する。
なお、バス10には不図示の各種のIP(Intellectual Property)が接続されている。これらのIPは、例えば、電源回路,入出力インターフェイス回路,CAN通信回路、モータ制御回路、等のICである。マイコン100をマルチメディア系のECU200に搭載する場合、ラジオチューナ、テレビチューナ、AVデコーダ、音声認識/合成回路、Bluetooth回路、タッチパネルセンサ回路、等のICがIPになる。オーディオ系のIPは、アンプを介してスピーカに接続され、ビジュアル系のIPはディスプレイに接続されている。
図3は、ECU200のシステムレイヤの一例を示す図である。図3ではマイコン100がマルチメディア系のECU200に搭載された場合のシステムレイヤである。マルチコアCPU13に最も近いレイヤがOS21のレイヤとなる。OS21のレイヤは、実際には、アクチュエータを制御するためのデバイスドライバ、仮想的な実行環境を提供したり、プロトコル処理やデータ圧縮・伸長などの特定の演算を実行するミドルウェアを含む。本実施例ではこのOS21が、CPUコア11のSMPモードからAMPモードへの切り替えを制御する。
OS21の上のレイヤには、UI制御アプリ22及び機能ロジック23のレイヤがある。UI制御アプリ22はマルチメディア系のECU200がディスプレイに表示するUI(User Interface)を制御する。図示するように最も上位のレイヤが、ユーザが目にするUIを制御する各種の機能毎のUIアプリ29である。ナビ用HMIアプリ25はナビゲーション機能に関するUIの生成やユーザが操作するためのメニューのUIを生成し、映像系HMIアプリ26はDVDやテレビ等の映像のUIやその機能をユーザが操作するためのメニューのUIを生成し、オーディオ系HMI27アプリはラジオやテレビ音声などのオーディオの機能に関するUIやユーザが操作するためのメニューのUIを生成し、車両連携用HMIアプリ28は例えば位置情報を利用した車両制御に関する機能をユーザが操作するためのUIや警告やメッセージを表示するためのUIを生成する。
UI制御アプリ22は、機能毎のUIアプリ29が生成するUIの表示を制御することができる。例えば、所定の機能のUIだけを全画面でディスプレイに表示したり、全てのUIを分割してディスプレイに表示したり、所定の機能のUIだけを非表示にしたり、といった制御を実行する。
UI制御アプリ22と機能毎のUIアプリ29の間のレイヤであるHMI−API24は、機能毎のUIアプリ29が機能ロジック23を呼び出すためのAPIを提供する。例えば、ユーザが所定のUIアプリ29に対し操作を入力すると、操作されたUIアプリ29が、HMI−API24に対し操作に応じたAPIをコールする。これにより、HMI−API24は、コールされたAPIに従い所定の機能ロジック23を呼び出す。
機能ロジック23は、ナビロジック23a、映像系ロジック23b、オーディオ系ロジック23c、車両連携ロジック23dである。ECU200の機能毎にロジックが用意されている。このように、機能毎のUIアプリ29と機能ロジック23を分離することで、機能ロジック23はそのままにUIだけを変更するなど、開発に自由度が増す。
〔データ制御部12〕
図4を参照して、データ制御部12について詳細に説明する。データ制御部12は、3つのMUX41,42、45、モード制御部43、CPU番号レジスタ44、及び、比較ブロック46を有する。CPUコア0とMUX41、CPUコア1とMUX42がそれぞれ接続されている。MUX41はデータアクセスコントローラ14とメモリアクセスコントローラ15とそれぞれ接続されている。MUX42も、データアクセスコントローラ14とメモリアクセスコントローラ15とそれぞれ接続されている。モード制御部43は、MUX41、MUX42、CPUコア0及びCPUコア1とそれぞれ接続されている。MUX45は、CPUコア0及びCPUコア1とそれぞれ接続されている。MUX45は、比較ブロック46と接続されている。
モード制御部43は、CPUコア0とCPUコア1の処理モードを切り替える。すなわち、モード制御部43は、CPUコア1をSMPモードのまま、CPUコア0をAMPモードに切り替え、CPUコア0をSMPモードのまま、CPUコア1をAMPモードに切り替える。具体的には、AMPモードに切り替えるCPUコア11に例えば「High」信号を入力する。こうすることで、AMPモードに切り替えられたCPUコア11は、内部のスイッチをオン/オフして故障診断専用の接続線やロジック回路を形成する。故障診断用のロジック回路は、例えば数クロックで故障診断の処理結果が得られるようになっているなど、故障診断を短時間で終了させることができる。
また、AMPモードに切り替えられたCPUコア0は、処理結果をMUX45に出力し、AMPモードに切り替えられたCPUコア1は、処理結果をMUX45に出力する。このように、MUX45には、AMPモードのCPUコア11のみから処理結果が入力されるようになっている。
また、モード制御部43は、MUX41、42の処理モードを切り替える。MUX41、42は、SMPモードではメモリアクセスコントローラ15にアクセス要求を出力し、AMPモードではデータアクセスコントローラ14にアクセス要求を出力する。このため、CPUコア0をAMPモードに切り替えた場合、モード制御部43は、MUX41をAMPモードに切り替え、MUX42をSMPモードのままとする。具体的には、モード制御部43は、MUX41に例えば「High」信号を入力する。同様に、CPUコア1をAMPモードに切り替えた場合、モード制御部43は、MUX42をAMPモードに切り替え、MUX41をSMPモードのままとする。具体的には、モード制御部43は、MUX42に例えば「High」信号を入力する。
MUX45は、AMPモードのCPUコア11から入力された処理結果を比較ブロック46に入力する。比較ブロック46は、処理結果を記憶する処理結果記憶部46a、比較器46b及び期待値記憶部46cを有する。処理結果記憶部46aには、処理結果が記憶される。期待値記憶部46cには、処理結果の期待値38、すなわち正しい処理結果が記憶される。期待値38は外部メモリ18に予め記憶されており、OS21がいずれかのCPUコア11をAMPモードに切り替えると、OS21が外部メモリ18から期待値記憶部46cに読み出すようになっている。なお、処理結果記憶部46aと期待値記憶部46cは、例えば、DRAMやレジスタで構成され、物理的に別体でなくてもよい。比較器46bは、処理結果記憶部46aの処理結果と期待値記憶部46bの期待値38を比較して、一致するか否かを判定する。例えば、一致する場合に「High」信号を出す。また、処理結果と期待値38とのずれが所定の閾値内か否かを判定してもよい。この判定結果が、故障診断結果となる。
CPU番号レジスタ44はCPUコアの識別番号を記憶するレジスタである。例えば、モード制御部43は、CPU番号レジスタ44に、次に故障診断すべきCPUコア11の識別番号を記憶する。モード制御部43は、1つのCPUコア11の故障診断が終了する度にCPU番号レジスタ44をインクリメントする。また、マルチコアCPU13に搭載されたCPUコア11の「個数−1」に達すると、CPUレジスタ番号44の記憶内容を「0」に戻す。こうすることで、同じCPUコア11だけを故障診断することなく、複数のCPUコアを均一に故障診断することができる。
〔負荷予測〕
図5は、OS21が提供する機能ブロックの一例を、図6は負荷予測を模式的に説明する図の一例をそれぞれ示す。OS21(例えば、スケジューラ)は、CPUコア11の処理負荷を参照しながらCPUコア11にタスクA〜Cを割り当てる。図5では、CPUコア0のタスクキュー31にタスクB,A、CPUコア1のタスクキュー32にタスクA〜Cが登録されている。したがって、タスクキュー31,32を参照することで将来の処理負荷を予測可能となる。
負荷予測部34は、タスクとMIPS(Million Instructions Per Second)値を対応づけたテーブル33を記憶している。例えば、タスクAは、1秒間に100万個の命令を出すプログラムなので、他のタスクB,Cに比べ処理負荷が高いことになる。CPUコア11の処理負荷は、このMIPS値が大きいタスクほど、大きい傾向になる。負荷予測部34は、CPUコア11の実行中のタスクとタスクキュー31,32のタスクを読み出し、テーブル33からMIPS値を読み出し、マルチコアCPU13の処理負荷を予測する。図6(a)は、各CPUコア11の処理負荷の時間的な変化の予測を示す図の一例である。組み込み系のシステムでは、アプリケーションが予め既知なのでアプリケーションのタスク毎にMIPS値を特定しておくことができる。
どのくらいの将来まで負荷を予測するか(以下、負荷を予測する現時点からこの将来までの時間を「期間」という)は、少なくとも故障診断のタスクの実行に必要な時間である。なお、故障診断のタスクは、テストデータ37又はテストデータ37を実行することに相当する。故障診断のタスクの実行が終了するまでに、マルチコアCPU13の処理負荷が標準処理を実行するCPUコア11の処理負荷を超えなければ、標準処理の実行速度に支障をきたすことなく、故障診断のタスクを実行したCPUコア11が標準処理に戻れるからである。期間は、長くても1秒程度であり、SMPモードからAMPモードへの切り替えやテストデータ37等の読み込みなどのオーバーヘッドを考慮しても1秒未満〜数秒で終了する。
図6(a)に示すように、各タスクの終了時間を考慮して、各CPUコア11の処理負荷を重畳すれば、マルチコアCPU13の処理負荷を予測する図6(b)が得られる。一般的なOS21であればこのような処理負荷を定常的に監視して、タスクキュー31、32に空きがあるCPUコア11に優先的にタスクを割り当てる等の処理を実行しているので、負荷の予測により標準処理に支障をきたすことはないとしてよい。負荷の予測が仮にマルチコアCPU13にとって付加的な処理だとしても、このような処理負荷の予測は、実行中のタスクとタスクキュー31、32からタスクを特定し、MIPS値を足し合わせるだけでよいので、処理負荷の予測は標準処理に支障をきたす負荷とはならない。
図6(b)に示すように、時間とマルチコアCPU13の処理負荷の関係が得られると、処理負荷予測部34は引き続きSMPモードのまま標準処理を実行するCPUコア11(ここではCPUコア1)の処理能力を、期間の処理負荷が超えるか否かを判定する。CPUコア11の処理能力は予め既知であり、これもMIPS値で現すことができるので、容易に比較できる。
図6(b)では、期間Aの処理負荷がCPUコア1の処理負荷を超えているが、期間Bの処理負荷はCPUコア1の処理負荷を超えていないと判定される。したがって、CPUコア0の故障診断のタスクは、期間Aが終了した時刻t2(以下、「故障診断開始可能時」という)から実行される。なお、予測された処理負荷と比較されるCPUコア11の処理能力は、故障診断しない残りの全てのCPUコア11の処理能力の合計であるので、例えばCPUコア11の数が4つの場合、3つのCPUコア11の処理能力の合計が、予測された処理負荷に対する比較対象となる。
ところで、タスクキュー31,32にすでに割り当てられたタスクが存在する場合、それらのタスクを全て実行してから、故障診断することが考えられる。この場合、期間は故障診断の対象のCPUコア11のタスクが終了する時を起点とする。したがって、予測すべき処理負荷もこの期間の処理負荷となる。すなわち、CPUコア0を故障診断する場合、図6(a)に示すように、CPUコア0がタスクキュー31の最後のタスクAが終了した時が期間の起点となる。詳細には、起点から、「期間」経過した時毎に故障診断開始可能時となる可能性があることになる。処理負荷予測部34は、タスクAが終了した時から、他のCPUコア1が実行するタスクC以降の処理負荷を予測する(図6(b)ではタスクCであるが、CPUコア1による各タスクの実行時間により、CPUコア0がタスクAを終了した時にCPUコア1が実行しているタスクは変わってくる。)。
なお、いったんタスクキュー31に割り当てたタスクの再割り当てが可能であれば、処理負荷予測部34が、マルチコア13の処理負荷が処理能力を超えていない期間を見つけて、その期間にCPUコア0に割り当てられているタスクを、故障診断の対象でないCPUコア1に再割り当てしてもよい。
処理負荷予測部34は、故障診断が可能な期間が見つかると、故障診断開始可能時をモード切り替え部35に通知する。モード切り替え部35(実体はCPUコア11)は、故障診断開始可能時になると、データ制御部12のモード制御部43に制御信号を出力する。こうすることで、上記のように、データ制御部12が、故障診断のタスクの実行のために、CPUコア11及びMUX41,42の処理モードを切り替える。
〔故障診断〕
モード制御部43によりAMPモードに切り替えられたCPUコア11は、故障診断のタスクを実行する。すなわち、CPUコア11は、故障診断のタスクを実行することで故障診断部36を実現する。図7〜10は、CPUコア11がAMPモードに切り替えられた際のデータ制御部12の挙動を説明する図の一例である。
図7は、モード切り替え部35がモード制御部43に制御信号を出力した直後のデータ制御部12を示す。図7において図4と同一部には同一の符号を付しその説明は省略する。モード制御部43は、CPU番号レジスタ44を参照して、「0」であることを検出すると、CPUコア0とMUX41をAMPモードに切り替える。これにより、MUX41はデータアクセスコントローラ14にアクセス可能となり、CPUコア0はMUX45にアクセス可能となる。
図8は、CPUコア0が故障診断のテストデータ37及び期待値38を読み出す際のデータの流れを説明する図である。AMPモードに切り替えられたCPUコア0は、MUX41を介して外部メモリ18からテストデータ37と期待値38を読み出すように、データアクセスコントローラ14に要求する。これにより、CPUコア0はテストデータ37をキャッシュして、テストデータ37のアドレスをレジスタにセットする。また、データアクセスコントローラ14は、外部メモリ18から直接、比較ブロック46に期待値38を読み出す(DMA(Direct Memory Access))。
なお、故障診断部36は標準処理と同じ命令を故障診断に用いるため、テストデータ37は、マイコン100に入力されうる適当なデータでよい。すなわち、正常なCPUコア11でテストデータ37が実行された際の処理結果である期待値38が分かっていれば、どのようなテストデータ37を用いてもよい。好ましくは、必要最小限のテストデータ37とすることで、故障診断に必要な時間(上記の期間)を最小限にすることができる。
また、命令を含むテストデータ37を故障診断用に用意しておいてもよい。この場合のテストデータ37は、CPUコア11が正常か否かを判定するための、命令(オペコード)と必要最小限のパラメータ(オペランド)である。CPUコア11が有するALUや拡張機能用の演算回路により処理される簡単な命令とパラメータを用意しておく。
図9は、CPUコア0が故障診断のテストデータ37を実行した後のデータの流れを説明する図である。CPUコア0は、テストデータ37を実行すると処理結果をMUX45に出力する。MUX45は、処理結果を比較ブロック46の処理結果記録部に記憶する。こうすることで、比較器に期待値38と処理結果の入力が可能になり、比較器は両者を比較して比較結果を保持又はデータアクセスコントローラ14に出力する。データアクセスコントローラ14は比較結果を外部メモリ18に記憶する。なお、期待値38と処理結果を比較した比較結果は、比較結果が異なる場合にのみ外部メモリに18に出力されてもよい。こうすることで、故障診断のタスクの実行時間を短くできる。
故障診断の間、CPUコア1は標準処理を実行しているが、データ制御部12はデータバス17を介して外部記憶19やIPにアクセスするので、故障診断によるバス負荷の増大が標準処理の実行速度に支障をきたすことはない。
図10は、診断処理の終了時のデータ制御部12を示す。モード制御部43は、CPUコア0の処理モードを切り替えた直後、CPU番号レジスタ44の値をインクリメントするので、CPU番号レジスタ44の値が「1」になっている。これにより、次回の故障診断のタスク(テストデータ37)は、CPUコア1が実行する。
〔故障診断の手順〕
図11は、マイコン100がCPUコア毎に故障診断する手順を示すフローチャート図の一例を示す。なお、図11ではCPUコア0を故障診断の対象として説明する。
故障診断はそれほど頻繁に実行する必要はない。例えば、経年劣化して故障発生する可能性が生じてきても、故障診断は1日1回程度の周期でおこなえば充分である。このため、OS21は、最後に故障診断した日時情報を記憶しておく。そして、例えば、イグニッション・オン毎に、日時情報を参照し、最後に故障診断してから故障診断時間間隔(例えば1日)以上経過している場合に、図11の手順を開始する。故障診断時間間隔を1日とした場合、車両を運転する際には最長でも1日毎に、故障診断することができる。なお、日時情報をCPUコアに対応づけて外部メモリ18に記憶しておき、CPUコア毎に診断間隔を定めておいてもよい。
イグニッション・オンになってOS21が起動すると、OS21は日時情報と故障診断時間間隔を外部メモリ18から読み出し、現在時刻までの経過時間と故障診断時間間隔を比較する(S10)。そして、経過時間が故障診断時間間隔を超えている場合(S10のYes)、負荷予測部34に処理負荷を予測させる(S20)。
負荷予測部34は、CPU番号レジスタ44の値から故障診断の対象のCPUコア0を特定する。負荷予測部34は、そのCPUコア0のタスクキュー31に割り当てられた最後のタスクの終了時刻を予測し、終了時刻から期間毎の処理負荷を予測する(S30)。
そして、期間毎に、処理負荷がCPUコア1の処理能力を超えているか否かを判定する(S40)。
CPUコア1の処理能力を処理負荷が超えている場合(S40のNo)、標準処理の実行速度に支障をきたすおそれがあるので、モード切り替え部35はCPUコア0をAMPモードに切り替えない。このため、OS21はSMPモードのまま全てのCPUコア0とCPUコア1で負荷分散して(S50)、標準処理を継続する(S60)。
負荷予測部34は、処理負荷を予測した期間が経過するまで待機し(S70)、期間が経過するとステップS10に戻り再度、負荷予測する。
ステップS40において、1つのCPUコア1の処理能力が処理負荷より大きい場合(S40のYes)、モード切り替え部35はCPU番号レジスタ44の値から故障診断の対象のCPUコア0を特定する(S80)。なお、モード切り替え部35は負荷予測部34から故障診断開始可能時を受け取る。
モード切り替え部35は、故障診断開始可能時まで待機する(S90)。故障診断開始可能時になるまで、故障診断の対象のCPUコア0はSMPモードのまま、タスクキュー31に割り当てられたタスクを実行する(S100)。なお、故障診断開始可能時の直前に、再度、処理負荷を予測してもよい。
そして、故障診断開始可能時になると、モード切り替え部35はデータ制御部12にCPUコア0の処理モードの切り替えを要求する(S110)。これにより、データ制御部12のモード制御部43は、CPUコア0をSMPモードからAMPモードに切り替え、MUX41の処理モードをSMPモードからAMPモードに切り替える。
こうすることで、AMPモードに切り替えられたCPUコア0は、故障診断を開始する(S120)。上記のように、CPUコア0はテストデータ37を外部メモリ18から読み出し、故障診断部36を実現し、データアクセスコントローラ14は外部メモリ18から期待値を期待値記憶部46cに読み出す。
故障診断部36は診断が終了したか否かを判定する(S130)。終了したか否かは、例えば、テストデータ37の最後まで実行したこと、又は、比較器が比較結果を出力したこと、から判定される。故障診断が終了していない場合(S130のNo)、故障診断部36は引き続きAMPモードのままテストデータ37を実行する(S140)。
そして、故障診断が終了すると場合(S130のYes)、故障診断部36はモード切り替え部35に処理モードの切り替えを要求する。これにより、モード切り替え部35は、データ制御部12にCPUコア0の処理モードの切り替えを要求し、データ制御部12のモード制御部43は、CPUコア0をAMPモードからSMPモードに切り替え、MUX41の処理モードをAMPモードからSMPモードに切り替える(S150)。
また、モード制御部43は、CPU番号レジスタ44の値をインクリメントする(S160)。これにより、CPU番号レジスタ44には次に故障診断するべきCPUコアの番号「1」が設定される。
以上で、1つのCPUコア0の故障診断が終了したので、ステップS30に戻り、OS21はCPUコア1の故障診断を実行する。これを、マルチコアCPU13のCPUコアの数だけ繰り返すことで、例えば、イグニッション・オン毎に全てのCPUコア11の故障診断を実行することができる。
なお、CPUコア11の故障が検出された場合、マルチコアCPU13はそのCPUコア11をマルチコアCPU13から切り離し、残りのCPUコア11のみで標準処理を実行することができる。こうすることで、処理能力は低下しても、標準処理の処理結果を保証した上で、標準処理を継続することができる。この場合、優先度の高い重要なタスクを定めておき、標準処理のうち定められたタスクのみを実行することが好ましい。マイコン100のフェイルセーフが可能となり、マイコンの耐故障性が向上する。
〔適用例1〕
これまで説明した故障診断を適用したマイコン100について説明する。
図12は、4つのCPUコア0〜3を有するマルチコアCPU13を搭載したマイコン100のブロック図の一例を示す。図12において図2と同一部には同一の符号を付しその説明は省略する。
2つのCPUコア0、1の一方を故障診断すると、他方のCPUコア11に大きな負荷がかかるので、予測された処理負荷が1つのCPUコア11の処理能力を超えない期間が短くなる場合があり、その場合、故障診断に必要な時間を取ることができない(CPUコアが4つの場合は能力を超えない期間が比較的長いため、故障診断できることが多い。)。これに対し、4つのCPUコア0〜3のうち1つのCPUコア11を故障診断しても、3つのCPUコア11がSMPモードのままOS21が負荷分散するので、期間を検出することが容易になる。このように、本実施形態の故障診断は、CPUコア11の数に関わらずマルチコアCPU13に適用できる。
図12のように、マルチコアCPU13が4つのCPUコア11を有する場合、データ制御部12のCPU番号レジスタ44を2ビットにして、4つのCPUコア11に対応可能とする。また、データ制御部12のデータアクセスコントローラ14側に4つのMUXを設け、それぞれをCPUコア0〜3と接続する。また、MUX45とCPUコア0〜3をそれぞれ接続する。モード制御部43は、CPUコア0〜3のいずれかと4つのMUXのいずれかを、択一的にSMPモードからAMPモードに切り替えることで、OS21は各CPUコア11の故障診断を実行できる。
故障診断の手順は図11と同様であり、CPUコア11の数だけステップS10〜S160を繰り返せばよい。
〔適用例2〕
図2では、外部メモリ18をマイコン100に外付けしたが、外部メモリ18をマイコン100内に設けてもよい。
図13は、データ制御部12に外部メモリ18を備えたマイコン100のブロック図の一例を示す。図13において図2と同一部には同一の符号を付しその説明は省略する。テストデータ37は経過年数に関係なく同じとしてよく、また、テストデータ37に変更がなければ期待値も同じである。
このため、データ制御部12に内蔵しておくことができ、こうすることで、データアクセスコントローラ14が外部メモリ18からテストデータ37と期待値を読み出す必要がなくなり、故障診断の時間を短縮できる。データ制御部12に内蔵された外部メモリ18は、ROM、RAM、EEPROM等を実体とする。なお、RAMを内蔵する場合、マイコン100の起動時に、例えば外部メモリ19から読み出してRAMに記憶しておく。
以上説明したように、本実施形態のマイコン100は、故障診断の対象以外のCPUコア11で標準処理を支障なく実行できる場合にのみ、故障診断の対象のCPUコア11をSMPモードからAMPモードに切り替えることで、標準処理に支障をきたすことなく、マルチコアCPU13の各CPUコア11を個別に故障診断することができる。
11 CPUコア
12 データ制御部
13 マルチコアCPU
37 テストデータ
38 期待値
41,42,45 MUX
43 モード制御部
44 CPU番号レジスタ
100 マイコン
200 ECU

Claims (11)

  1. Symmetric Multi−ProcessingモードからAsymmetric Multi−Processingモードに切り替え可能な複数のCPUコアを搭載したマルチコアCPUの故障診断システムにおいて、
    Symmetric Multi−ProcessingモードのマルチコアCPUが標準処理を実行する際の処理負荷を予測する負荷予測手段と、
    前記処理負荷が閾値未満の場合、Symmetric Multi−Processingモードで動作している2つ以上のCPUコアの1つをAsymmetric Multi−Processingモードに切り替え、Asymmetric Multi−Processingモードに切り換えられない残りのCPUコアに標準処理を継続させるモード切り替え手段と、
    Asymmetric Multi−Processingモードに切り替えられたCPUコアを故障診断する故障診断手段と、とを有し、
    前記モード切り替え手段は、前記故障診断手段により故障していないと判定されたCPUコアをSymmetric Multi−Processingモードに切り替える
    ことを特徴とする故障診断システム。
  2. 前記負荷予測手段は、前記故障診断手段が故障診断に要する期間の処理負荷を予測する、
    ことを特徴とする請求項1記載の故障診断システム。
  3. 前記負荷予測手段は、Asymmetric Multi−Processingモードに切り替えられるCPUコアが実行するタスクが途切れる時刻を起点に前記期間を定める、
    ことを特徴とする請求項2記載の故障診断システム。
  4. Symmetric Multi−ProcessingモードのCPUコアに専用の第1のデータバスと、
    Asymmetric Multi−ProcessingモードのCPUコアに専用の第2のデータバスと、
    Symmetric Multi−ProcessingモードのCPUコアを前記第1のデータバスに接続し、Asymmetric Multi−ProcessingモードのCPUコアを前記第2のデータバスに接続するデータ制御手段と、
    を有することを特徴とする請求項1〜3いずれか1項記載の故障診断システム。
  5. 前記データ制御手段は、複数のCPUコアとそれぞれ接続された複数のマルチプレクサ部を有し、
    前記データ制御手段は、Asymmetric Multi−Processingモードに切り替えられた、CPUコアに接続されたマルチプレクサ部の接続先を、前記第1のデータバスから前記第2のデータバスに切り替える、
    ことを特徴とする請求項4記載の故障診断システム。
  6. 前記故障診断手段は、故障診断用のテストデータの処理結果と、予め記憶している期待値とを比較して、比較結果が一致するか否かに応じて、Asymmetric Multi−Processingモードに切り替えられたCPUコアを故障診断する、
    ことを特徴とする請求項4記載の故障診断システム。
  7. 前記テストデータ及び前記期待値を記憶した外部メモリを有し、
    前記故障診断手段は、前記第2のデータバスを介して前記テストデータ及び前記期待値を読み出す、
    ことを特徴とする請求項6記載の故障診断システム。
  8. 前記データ制御手段は、前記テストデータ及び前記期待値を記憶している、
    ことを特徴とする請求項6記載の故障診断システム。
  9. 前記故障診断手段が、CPUコアの故障を検出した場合、
    CPUコアをマルチコアCPUから切り離し、故障していないと診断された残りのCPUコアのみにタスクを分散する、
    ことを特徴とする請求項1記載の故障診断システム。
  10. 請求項1〜9いずれか1項記載の故障診断システムと、
    ナビゲーション手段と、
    映像出力手段と、
    音声出力手段と、
    を有することを特徴とする車両用電子制御ユニット。
  11. Symmetric Multi−ProcessingモードからAsymmetric Multi−Processingモードに切り替え可能な複数のCPUコアを搭載したマルチコアCPUによる故障診断方法において、
    マルチコアCPUにより実現される負荷予測手段が、Symmetric Multi−ProcessingモードのマルチコアCPUが標準処理を実行する際の処理負荷を予測するステップと、
    マルチコアCPUにより実現されるモード切り替え手段が、前記処理負荷が閾値未満の場合、Symmetric Multi−Processingモードで動作している2つ以上のCPUコアの1つをAsymmetric Multi−Processingモードに切り替え、Asymmetric Multi−Processingモードに切り換えられない残りのCPUコアに標準処理を継続させるステップと、
    故障診断中のCPUコアにより実現される故障診断手段が、Asymmetric Multi−Processingモードに切り替えられたCPUコアを故障診断するステップと、
    前記モード切り替え手段は、前記故障診断手段により故障していないと判定されたCPUコアをSymmetric Multi−Processingモードに切り替えるステップと
    を有することを特徴とする故障診断方法。
JP2009064975A 2009-03-17 2009-03-17 故障診断システム、電子制御ユニット、故障診断方法 Active JP5316128B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2009064975A JP5316128B2 (ja) 2009-03-17 2009-03-17 故障診断システム、電子制御ユニット、故障診断方法
PCT/IB2010/000195 WO2010106403A1 (en) 2009-03-17 2010-02-02 Failure diagnostic system, electronic control unit for vehicle, failure diagnostic method
CN201080012408.0A CN102741818B (zh) 2009-03-17 2010-02-02 故障诊断系统、用于车辆的电子控制单元、故障诊断方法
EP10704588A EP2409230B1 (en) 2009-03-17 2010-02-02 Failure diagnostic system, electronic control unit for vehicle, failure diagnostic method
US13/257,121 US8656216B2 (en) 2009-03-17 2010-02-02 Failure diagnostic system, electronic control unit for vehicle, failure diagnostic method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009064975A JP5316128B2 (ja) 2009-03-17 2009-03-17 故障診断システム、電子制御ユニット、故障診断方法

Publications (3)

Publication Number Publication Date
JP2010218277A JP2010218277A (ja) 2010-09-30
JP2010218277A5 JP2010218277A5 (ja) 2011-08-25
JP5316128B2 true JP5316128B2 (ja) 2013-10-16

Family

ID=42104439

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009064975A Active JP5316128B2 (ja) 2009-03-17 2009-03-17 故障診断システム、電子制御ユニット、故障診断方法

Country Status (5)

Country Link
US (1) US8656216B2 (ja)
EP (1) EP2409230B1 (ja)
JP (1) JP5316128B2 (ja)
CN (1) CN102741818B (ja)
WO (1) WO2010106403A1 (ja)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5527270B2 (ja) 2011-04-12 2014-06-18 株式会社デンソー 車載用電子制御装置
US8826074B2 (en) * 2011-09-30 2014-09-02 Alcatel Lucent Live module diagnostic testing
JP5853691B2 (ja) * 2011-12-28 2016-02-09 アイシン・エィ・ダブリュ株式会社 車両用制御装置および方法
US9430298B2 (en) 2012-02-15 2016-08-30 Toyota Jidosha Kabushiki Kaisha Vehicle electronic control device and data-receiving method
JP5900061B2 (ja) 2012-03-19 2016-04-06 富士通株式会社 試験方法、試験装置及びプログラム
US9384055B2 (en) * 2012-04-16 2016-07-05 International Business Machines Corporation Programmatic load-based management of processor population
EP2904492A1 (en) * 2012-10-01 2015-08-12 ABB Technology Ltd. Symmetric multi-processor arrangement, safety critical system, and method therefor
DE102012222215A1 (de) * 2012-12-04 2014-06-05 Robert Bosch Gmbh Verfahren zum Betreiben einer echtzeitkritischen Anwendung auf einem Steuergerät
US9619309B2 (en) * 2012-12-28 2017-04-11 Intel Corporation Enforcing different operational configurations for different tasks for failure rate based control of processors
KR101457557B1 (ko) * 2013-01-18 2014-11-04 연세대학교 산학협력단 멀티코어 장치, 테스트 장치 및 고장 진단 방법
US10055273B2 (en) 2013-12-24 2018-08-21 Huawei Device (Dongguan) Co., Ltd. Method for checking whether hardware of intelligent terminal runs abnormally and intelligent terminal
CN104363988B (zh) * 2014-07-14 2018-07-20 华为技术有限公司 一种多核处理器的管理方法及装置
JP6152228B2 (ja) * 2014-09-12 2017-06-21 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 電子制御ユニット、車載ネットワークシステム及び車両用通信方法
US10248180B2 (en) 2014-10-16 2019-04-02 Futurewei Technologies, Inc. Fast SMP/ASMP mode-switching hardware apparatus for a low-cost low-power high performance multiple processor system
US9952650B2 (en) 2014-10-16 2018-04-24 Futurewei Technologies, Inc. Hardware apparatus and method for multiple processors dynamic asymmetric and symmetric mode switching
US10928882B2 (en) 2014-10-16 2021-02-23 Futurewei Technologies, Inc. Low cost, low power high performance SMP/ASMP multiple-processor system
US10234932B2 (en) * 2015-07-22 2019-03-19 Futurewei Technologies, Inc. Method and apparatus for a multiple-processor system
DE102015216086A1 (de) 2015-08-24 2017-03-02 Robert Bosch Gmbh Verfahren und Vorrichtung zum Überwachen eines Zustandes einer elektronischen Schaltungseinheit eines Fahrzeugs
CN105425766B (zh) * 2015-11-04 2017-10-20 北京长城华冠汽车科技股份有限公司 一种整车控制器的故障检测装置和方法
CN105388881B (zh) * 2015-11-04 2017-10-20 北京长城华冠汽车科技股份有限公司 一种整车控制器的故障检测显示装置和方法
JP2017102633A (ja) * 2015-12-01 2017-06-08 ルネサスエレクトロニクス株式会社 情報処理装置および半導体集積回路装置
US10473711B2 (en) 2016-04-15 2019-11-12 Infineon Technologies Ag Multi-channel fault detection with a single diagnosis output
JP6867754B2 (ja) * 2016-05-11 2021-05-12 コニカミノルタ株式会社 画像形成装置
KR20180028570A (ko) * 2016-09-08 2018-03-19 현대오트론 주식회사 멀티 코어 시스템 및 이의 구동 방법
US10200875B2 (en) 2017-04-17 2019-02-05 DeepSig Inc. Placement and scheduling of radio signal processing dataflow operations
CN111891134B (zh) 2019-05-06 2022-09-30 北京百度网讯科技有限公司 自动驾驶处理系统和片上系统、监测处理模块的方法

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62286131A (ja) * 1986-06-05 1987-12-12 Nec Corp 情報処理装置の自動自己診断方式
JPH04148274A (ja) * 1990-10-08 1992-05-21 Nec Corp 情報処理装置の試験方式
JPH06332874A (ja) * 1993-05-24 1994-12-02 Fujitsu Ltd テストプログラム起動方法
JP2734940B2 (ja) * 1993-07-26 1998-04-02 日本電気株式会社 半導体集積回路装置
JP2990008B2 (ja) * 1994-02-18 1999-12-13 日本電気通信システム株式会社 プロセッサの自己診断方式
US5682491A (en) * 1994-12-29 1997-10-28 International Business Machines Corporation Selective processing and routing of results among processors controlled by decoding instructions using mask value derived from instruction tag and processor identifier
JPH08329024A (ja) * 1995-05-29 1996-12-13 Mitsubishi Electric Corp 計算機システム
US7206966B2 (en) * 2003-10-22 2007-04-17 Hewlett-Packard Development Company, L.P. Fault-tolerant multi-core microprocessing
JP2005190038A (ja) * 2003-12-25 2005-07-14 Hitachi Ltd プロセッサの診断処理方法および診断処理プログラム
US7428663B2 (en) * 2004-06-01 2008-09-23 Alcatel Lucent Electronic device diagnostic methods and systems
GB0507150D0 (en) * 2005-04-08 2005-05-18 Ibm A method or apparatus for running a test program in a computer system
US8448162B2 (en) * 2005-12-28 2013-05-21 Foundry Networks, Llc Hitless software upgrades
JP2007249491A (ja) 2006-03-15 2007-09-27 Fujitsu Ltd マルチサーバ環境においてバッチジョブを分散させるプログラム、装置、および方法
US8555288B2 (en) * 2006-05-17 2013-10-08 Teradata Us, Inc. Managing database utilities to improve throughput and concurrency
JP2007328461A (ja) * 2006-06-06 2007-12-20 Matsushita Electric Ind Co Ltd 非対称マルチプロセッサ
JP2008097280A (ja) * 2006-10-11 2008-04-24 Denso Corp 移動体用マルチコアcpuの制御装置、移動体用マイクロコンピュータ及び移動体操縦支援装置
US20080091974A1 (en) * 2006-10-11 2008-04-17 Denso Corporation Device for controlling a multi-core CPU for mobile body, and operating system for the same
JP2008123439A (ja) * 2006-11-15 2008-05-29 Denso Corp オペレーティング・システム、プログラム及び移動体操縦支援装置
GB2443277B (en) * 2006-10-24 2011-05-18 Advanced Risc Mach Ltd Performing diagnostics operations upon an asymmetric multiprocessor apparatus
JP4947441B2 (ja) * 2006-11-02 2012-06-06 日本電気株式会社 マルチプロセッサシステム、マルチプロセッサシステムにおけるシステム構成方法及びそのプログラム
US20100242014A1 (en) * 2009-03-17 2010-09-23 Xiaohan Zhu Symmetric multi-processor operating system for asymmetric multi-processor architecture

Also Published As

Publication number Publication date
JP2010218277A (ja) 2010-09-30
EP2409230B1 (en) 2013-01-16
EP2409230A1 (en) 2012-01-25
CN102741818A (zh) 2012-10-17
WO2010106403A1 (en) 2010-09-23
US20120005535A1 (en) 2012-01-05
CN102741818B (zh) 2015-01-28
US8656216B2 (en) 2014-02-18

Similar Documents

Publication Publication Date Title
JP5316128B2 (ja) 故障診断システム、電子制御ユニット、故障診断方法
US8417990B2 (en) Multi-core processing system for vehicle control or an internal combustion engine controller
JP2008123439A (ja) オペレーティング・システム、プログラム及び移動体操縦支援装置
US20080091974A1 (en) Device for controlling a multi-core CPU for mobile body, and operating system for the same
US11283864B2 (en) Cluster system with fail-safe fallback mechanism
JP6838222B2 (ja) 車両制御装置、及び車両システム
JP2011022934A (ja) 電子制御ユニット、異常検出方法
JPWO2011141992A1 (ja) 故障診断装置及び故障診断方法
US7558990B2 (en) Semiconductor circuit device and method of detecting runaway
JP2007334403A (ja) 計算機システム障害対応方式及び計算機システム障害対応方法
US20170154480A1 (en) Information processing apparatus and large scale integrated circuit
US20180354581A1 (en) Control device for a bicycle
JP5532144B2 (ja) プロセッサ、電子制御装置、作成プログラム
JP5971101B2 (ja) データ処理装置
JP5699896B2 (ja) 情報処理装置、異常判定方法
JP2009175960A (ja) 仮想マルチプロセッサシステム
JP2017182627A (ja) マイクロコンピュータ
US10269194B2 (en) Multiprocessor system and vehicle control system
JP2014004858A (ja) 車両制御装置
JP2007018207A (ja) データ処理装置、電子制御ユニット、ならびに自動車
JP2003294129A (ja) 車両用電子制御装置
WO2022209458A1 (ja) 表示制御装置、表示制御方法
JP4231465B2 (ja) 組込み制御装置
JP2006309311A (ja) 割込制御回路
JPH10247185A (ja) プロセッサの故障診断方式

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110707

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110707

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130315

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130326

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130523

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130624

R151 Written notification of patent or utility model registration

Ref document number: 5316128

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151