JP4747930B2 - 電子制御装置、及び、演算機能検査方法 - Google Patents

電子制御装置、及び、演算機能検査方法 Download PDF

Info

Publication number
JP4747930B2
JP4747930B2 JP2006119489A JP2006119489A JP4747930B2 JP 4747930 B2 JP4747930 B2 JP 4747930B2 JP 2006119489 A JP2006119489 A JP 2006119489A JP 2006119489 A JP2006119489 A JP 2006119489A JP 4747930 B2 JP4747930 B2 JP 4747930B2
Authority
JP
Japan
Prior art keywords
cpu
inspected
calculation
electronic control
control device
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.)
Expired - Fee Related
Application number
JP2006119489A
Other languages
English (en)
Other versions
JP2007293524A (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 JP2006119489A priority Critical patent/JP4747930B2/ja
Publication of JP2007293524A publication Critical patent/JP2007293524A/ja
Application granted granted Critical
Publication of JP4747930B2 publication Critical patent/JP4747930B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Tests Of Electronic Circuits (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Description

本発明は、自己が備える一のCPUの演算機能を他のCPUとの協働により検査可能な電子制御装置、及び、電子制御装置が備える一のCPUの演算機能を他のCPUとの協働により検査する演算機能検査方法、に関する。
従来、電子制御装置(電子制御ユニット)等の制御システムにおいて、制御の安定性や信頼性を確保すべく、装置が備えるCPUの機能が正常であるか否かを自発的に検査して、異常時にシステムのリセットを行なう等の制御が行なわれている。
その一例として、システム内にカウントダウン(減算)タイマーの一種であるウォッチドッグタイマーを組み込んで、システムからのパルス信号が途絶えたときにシステムのリセットを行なうような手法が用いられている。但し、こうした手法は、パルス信号を発信する処理ステップに正常に到達しない状態、すなわちシステムの暴走を検出することが主眼となっており、演算処理自体が正常に行なわれているか否かを監視するものではない。
演算処理自体が正常に行なわれているか否かを監視する電子制御装置の例として、演算を要する質問を監視用制御回路からマイクロプロセッサに送信し、これに対する応答内容を監視することにより、マイクロプロセッサの異常の有無を判定するものが知られている(例えば、特許文献1参照)。
特開2005−31865号公報
しかしながら、上記従来の装置においては、監視用制御回路からマイクロプロセッサに質問が送信されるときと、マイクロプロセッサから監視用制御回路に応答が送信されるときとの二度に亘って通信が行なわれるため、装置全体の通信負荷が増大する問題や、二度の通信によって異常判定に時間がかかるといった問題が生じる。特に、自動車等の移動体に搭載される電子制御ユニットの分野において、こうした問題を解決する要請は大きいものである。
本発明はこのような課題を解決するためのものであり、通信負荷を軽減しつつより迅速に、CPUやマイクロプロセッサの演算機能を検査することが可能な電子制御装置、及び、演算機能検査方法を提供することを、主たる目的とする。
上記目的を達成するための本発明の第1の態様は、複数のCPUを備え、この複数のCPUに含まれる一のCPUの演算機能を他のCPUとの協働により検査可能な電子制御装置であって、演算機能の検査を受ける被検査CPUが、所定のプログラムに基づき検査用の演算課題を作成すると共に作成した演算課題の解答を自己の演算機能により作成して、被検査CPUを監視する監視CPUに対して作成した演算課題及び解答に関する情報を送信し、監視CPUが、送信された演算課題及び解答に関する情報に基づいて、被検査CPUが有する演算機能が正常か否かを判定することを特徴とするものである。ここで、CPU(Central Processing Unit)とは、連携してコンピュータの処理を行なう複数の半導体チップからなる処理装置であり、中央処理装置と称してもよい。
この本発明の第1の態様によれば、被検査CPU自らが演算課題を作成すると共に自己の演算機能により解答を作成し、監視CPUが演算課題と解答を比較して被検査CPUが正常か否かを判定する。従って、演算課題と解答をセットにして送信することが可能であり、正常判定に要する通信は一度で済む。従って、通信負荷を軽減しつつより迅速に、CPUの演算機能を検査することができる。
また、本発明の第1の態様において、被検査CPUは、好ましくは、カウンタを用いて周期的に変化する演算課題を作成する。この場合、更に好ましくは、監視CPUは、被検査CPUが作成する演算課題の周期性に基づいて、演算課題の正解を導出する。
また、本発明の第1の態様において、被検査CPUは、好ましくは、自己の演算機能のうち使用頻度が高い演算機能を用いて解答が作成されるように、演算課題を作成する。
また、本発明の第1の態様において、被検査CPUは、好ましくは、自己の演算機能のうちフェールセーフ上重要性の高い演算機能を用いて解答が作成されるように、演算課題を作成する。
また、本発明の第1の態様において、CPUをマイクロプロセッサに置換して構成されるものとしてもよい。マイクロプロセッサ(MPU)は、CPU(中央処理装置)を1個の半導体チップに集積したものであり、CPUと同視できる。
本発明の第2の態様は、複数のCPUを備える電子制御装置において、この複数のCPUに含まれる一のCPUの演算機能を他のCPUとの協働により検査する、演算機能検査方法であって、(A)演算機能の検査を受ける被検査CPUが、所定のプログラムに基づき検査用の演算課題を作成するステップと、(B)被検査CPUが、作成した演算課題の解答を自己の演算機能により作成するステップと、(C)被検査CPUが、被検査CPUを監視する監視CPUに対して作成した演算課題及び解答に関する情報を送信するステップと、(D)監視CPUが、送信された演算課題及び解答に関する情報に基づいて、被検査CPUが有する演算機能が正常か否かを判定するステップと、を備えることを特徴とするものである。
本発明によれば、通信負荷を軽減しつつより迅速に、CPUやマイクロプロセッサの演算機能を検査することが可能な電子制御装置、及び、演算機能検査方法を提供することができる。
以下、本発明を実施するための最良の形態について、添付図面を参照しながら実施例を挙げて説明する。
以下、図1〜5を用いて、本発明に係る電子制御装置の一実施例について説明する。図1は、本発明の一実施例に係る電子制御ユニット1の全体構成の一例を示す図である。電子制御ユニット1は、例えば、複数のCPU(Central Processing Unit)を備える電子制御ユニットであって、ROM(Read Only Memory)10に格納されたプログラムを各CPUが実行することにより、種々の機能を実現する。なお、本実施例においてCPUの個数に特段の制限はない。
また、電子制御ユニット1は、各CPUのワーキングエリアとなる読書き可能なRAM(Random Access Memory)20や、外部機器との通信を可能にする通信ポート30、タイマー等を備え、各CPUを含むこれらの機器群が、バスを介して相互に通信可能に接続されている。
各CPUは、ROM10に格納されたプログラムを実行する装置であり、例えば、演算装置(ALU;Arithmetic and Logic Unit)や制御装置、レジスタ(演算や実行状態の保持に用いる高速処理が可能な記憶素子)、クロックジェネレータ、内部カウンタ、内部バス等から構成される。なお、CPUを構成するこれらの装置を1個の半導体チップに集積したものがマイクロプロセッサ(MPU)と称されており、CPUをマイクロプロセッサと換言しても装置としては等価である。
上記演算装置は、レジスタやROM10、RAM20の内容を読み出して、四則演算等の算術演算や、論理和、論理積等の論理演算を実行し、レジスタやRAM20に結果を出力する。本発明は、こうした演算装置の機能(CPUの演算機能)が正常であるか否かを検査することを主眼としている。以下、複数のCPUのうち演算装置が検査されるCPUを被検査CPUと、当該被検査CPUの状態を監視するCPUを監視CPUと、それぞれ称する。
なお、被検査CPUや監視CPUは、電子制御ユニット1が備えるCPUの中で特定のCPUを指すものではなく、任意に、また流動的に選ばれてよい。さらに、2つのCPUが互いに監視し合う、すなわち互いに被検査CPUであると同時に監視CPUでもあるような関係となってもよい。当該検査は、所定周期毎(所定時間毎や、繰り返し行なわれる処理フローの1〜所定数ルーチン毎などが考えられる)に自動的に行なわれてもよいし、任意のタイミングで行なわれてもよい。
以下、本実施例の電子制御ユニット1において実行される特徴的な演算機能検査方法について説明する。図2は、当該演算機能検査方法の処理の流れを示すフローチャートである。なお、ROM10には、本検査方法を実現するための被検査CPU制御プログラム12と、監視CPU制御プログラム14とが格納されている。
まず、被検査CPUは、被検査CPU制御プログラム12に従って、検査用の演算課題を作成する(S100)。この演習課題は、各被検査CPUにおいて検査すべき演算機能、すなわち、使用頻度が高い演算機能やフェールセーフ上重要性の高い演算機能を検査できるように、各被検査CPUに対して個別に作成されてよい。図3は、ある被検査CPUにおける使用頻度が高い演算機能と、演算課題に含まれる演算機能との組み合わせを示す図である。
また、演算課題は、カウンタ(例えば、被検査CPUの内部カウンタであって、3ビット、すなわち値0〜7を繰り返すインクリメントカウンタ。外部カウンタを用いてもよい。)を用いて、周期的に同じ内容を繰り返すように作成されてよい。本発明における演算課題は、検査すべき演算機能が正しく働いているのを確認することができれば足りるため、必ずしも新規な演算課題を作成し続ける必要はないからである。以下の説明では、被検査CPUの検査すべき演算機能が四則演算のみであり、且つ、演算課題が周期的に同じ内容を繰り返すように作成される場合について例示する。
このような場合、カウンタ値が定まると、図4に例示するような所定の対応関係に基づいて演習課題を一意に決定することができる。図示する如く、演算課題はカウンタ値同士の四則演算を行なうように定められ、演算子としてカウンタの下位2ビットが00であれば乗算が、01であれば加算が、10であれば減算が、11であれば除算が、それぞれ割り当てられる。従って、カウンタ値が一つインクリメントされる度に、カウンタ値同士の乗算、加算、減算、除算の順に変化する周期性をもって演算課題が作成される。このように問題作成の処理自体を簡略化することにより、本検査に係る処理時間の短縮や、被検査CPUとROM10との通信負荷の軽減等を図ることができる。
上記の如く演算課題を作成すると、被検査CPUは、作成した演算課題の解答を自己の演算装置(ALU)の機能により作成し、レジスタ等に格納する(S110)。この際のデータ形式は、例えば8ビットのデータであって、上位5ビットに解答が、下位3ビットに演算課題を作成する基となったカウンタ値が、それぞれ格納される。図5は、カウンタ値の変化に応じて周期的に作成されるデータの例を示す図である。被検査CPUの演算機能が正常に働いていれば、このような周期性をもってデータが作成されることとなるのである。
そして、被検査CPUは、上記の如く格納した解答と演算課題を作成する基となったカウンタ値とを含むデータを、監視CPUに送信する(S120)。本装置及び検査方法においては、CPU間の通信は本ステップでのみ行なわれる。従って、検査を受けるCPUに他のCPUから演算課題が送信され、解答を当該他のCPUに送信して検査が行なわれるような態様のものに比して、通信負荷を軽減しつつより迅速に、CPUの演算機能を検査することができる。
被検査CPUがデータを送信すると、カウンタ値が一つインクリメントされる(S130)。
一方、監視CPUは、解答と演算課題を作成する基となったカウンタ値とを含むデータを受信し(S200)、監視CPU制御プログラム14に基づいて、被検査CPUが有する演算機能が正常か否かを判定する(S210)。本実施例の場合、受信するデータ自体が周期的に変化するものであるから、前回送信されたデータをレジスタ等に記憶しておき、前回送信されたデータから今回送信されたデータに対する正解を導出することが可能である。例えば、前回送信されたデータが「00001011」であれば、今回送信されたデータに対する正解は「10000100」である(図5参照)。但し、前回送信されたデータが「00000000」である場合は、システム自体が起動された直後のデフォルト値である可能性もあるため、今回送信されたデータに対する正解は「00000000」と「00010001」とのいずれかであってよい。そして、受信したデータと上記の如く導出した正解とが合致した場合に、被検査CPUの演算機能が正常であると判定する。
このように、演算課題の周期性に基づいて正解を導出することにより、監視CPUにおける処理負担を軽減することができる。また、上記の導出手法に限られず、例えば、上位5ビットと下位3ビットの対応表を予め監視CPUのレジスタ等に記憶しておき、これを受信したデータと比較してもよい。
そして、被検査CPUが有する演算機能が正常でないと判定された場合は、所定の異常時制御を行なう(S220)。異常時制御は、例えば、電子制御ユニット自体をリセットする制御であってもよいし、通信ポート30から異常信号を出力して外部機器により異常状態を報知する制御であってもよい。
以上説明した本実施例の電子制御ユニット1によれば、演算機能の検査を受ける被検査CPUにおいて演算課題及び解答を作成し、これが監視CPUに送信されて被検査CPUが正常か否かの判定が行なわれるから、CPU間の通信が一度で済む。これにより、通信負荷を軽減しつつより迅速に、CPUの演算機能を検査することができる。
また、演算課題がカウンタ値に応じた周期性をもって作成されるから、問題作成の処理自体が簡略化され、検査に係る処理時間の短縮や、被検査CPUとROM10との通信負荷の軽減等を図ることができる。さらに、これを受信する監視CPUにおいても、演算課題の周期性に基づいて正解を導出することにより、処理負担を軽減することができる。
また、各被検査CPUに対して、使用頻度が高い演算機能やフェールセーフ上重要性の高い演算機能を検査するように演算課題を作成することにより、より効果的な検査を行なうことができる。
以上、本発明を実施するための最良の形態について一実施例を用いて説明したが、本発明はこうした一実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において、上述した一実施例に種々の変形及び置換を加えることができる。
例えば、図6(A)に示す如く、それぞれ別のROMに格納されたプログラムを実行するものとしてもよい。RAMについても、各CPUに対応して設けられてもよい。
また、図6(B)に示す如く、複数の電子制御ユニットからなる装置を、本発明に係る電子制御装置と捉えてもよい。この場合、各電子制御ユニットが備えるCPUは単独であってもよいし、複数であってもよい。なお、電子制御ユニット間の通信は、CAN(Controller Area Network)等の適切な通信プロトコルを用いて行なわれると好適である。
本発明は、少なくともCPUやマイクロプロセッサを含む電子制御装置に利用できる。車両に搭載された場合、搭載される車両の外観、重量、サイズ、走行性能等は問わない。
本発明の一実施例に係る電子制御ユニット1の全体構成の一例を示す図である。 演算機能検査方法の処理の流れを示すフローチャートである。 ある被検査CPUにおける使用頻度が高い演算機能と、演算課題に含まれる演算機能との組み合わせを示す図である。 カウンタ値と演習課題との対応関係を表す図である。 カウンタ値の変化に応じて周期的に作成されるデータの例を示す図である。 本発明の電子制御装置の他の適用例を示す図である。
符号の説明
1 電子制御ユニット
10 ROM
12 被検査CPU制御プログラム
14 監視CPU制御プログラム
20 RAM
30 通信ポート

Claims (5)

  1. 複数のCPUを備え、該複数のCPUに含まれる一のCPUの演算機能を他のCPUとの協働により検査可能な電子制御装置であって、
    前記演算機能の検査を受ける被検査CPUが、周期的に変化するカウンタ値同士の演算であって、該カウンタ値の一部に基づいて決定される種類の演算を行い、該被検査CPUを監視する監視CPUに対して前記行った演算の結果と前記カウンタ値とを含むデータを送信し、
    該監視CPUが、前記送信された演算の結果とカウンタ値に基づいて前記被検査CPUが有する演算機能が正常か否かを判定する、
    ことを特徴とする、電子制御装置。
  2. 請求項1に記載の電子制御装置であって、
    前記被検査CPUは、自己の演算機能のうち使用頻度が高い演算機能が用いられるように、前記行う演算の種類を決定する、
    ことを特徴とする、電子制御装置。
  3. 請求項1又は2に記載の電子制御装置であって、
    前記被検査CPUは、自己の演算機能のうちフェールセーフ上重要性の高い演算機能が用いられるように、前記行う演算の種類を決定する、
    ことを特徴とする、電子制御装置。
  4. CPUをマイクロプロセッサに置換して構成される、請求項1ないし3のいずれかに記載の電子制御装置。
  5. 複数のCPUを備える電子制御装置において、該複数のCPUに含まれる一のCPUの演算機能を他のCPUとの協働により検査する、演算機能検査方法であって、
    (A)前記演算機能の検査を受ける被検査CPUが、周期的に変化するカウンタ値の一部に基づいて演算の種類を決定するステップと、
    (B)該被検査CPUが、前記カウンタ値同士の演算であって、前記決定された種類の演算を行うステップと、
    (C)該被検査CPUが、該被検査CPUを監視する監視CPUに対して前記行った演算の結果と前記カウンタ値とを含むデータを送信するステップと、
    (D)該監視CPUが、前記送信された演算の結果とカウンタ値に基づいて前記被検査CPUが有する演算機能が正常か否かを判定するステップと、
    を備えることを特徴とする、演算機能検査方法。
JP2006119489A 2006-04-24 2006-04-24 電子制御装置、及び、演算機能検査方法 Expired - Fee Related JP4747930B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006119489A JP4747930B2 (ja) 2006-04-24 2006-04-24 電子制御装置、及び、演算機能検査方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006119489A JP4747930B2 (ja) 2006-04-24 2006-04-24 電子制御装置、及び、演算機能検査方法

Publications (2)

Publication Number Publication Date
JP2007293524A JP2007293524A (ja) 2007-11-08
JP4747930B2 true JP4747930B2 (ja) 2011-08-17

Family

ID=38764107

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006119489A Expired - Fee Related JP4747930B2 (ja) 2006-04-24 2006-04-24 電子制御装置、及び、演算機能検査方法

Country Status (1)

Country Link
JP (1) JP4747930B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4408921B2 (ja) 2007-08-22 2010-02-03 株式会社デンソー 電子機器
JP5662181B2 (ja) * 2011-02-01 2015-01-28 株式会社ケーヒン 移動体の電子制御装置
JP6016257B2 (ja) * 2011-12-27 2016-10-26 ボッシュ株式会社 車両用エンジン制御装置
JP6826917B2 (ja) * 2017-03-09 2021-02-10 ヤマハ発動機株式会社 電動補助車両
JP2018180999A (ja) * 2017-04-14 2018-11-15 ルネサスエレクトロニクス株式会社 検査システム、検査装置、及び検査方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63736A (ja) * 1986-06-20 1988-01-05 Fujitsu Ltd プロセツサ診断方法
JP3284636B2 (ja) * 1993-02-04 2002-05-20 株式会社デンソー Cpuシステムの異常検出装置
JP3991384B2 (ja) * 1996-07-15 2007-10-17 株式会社デンソー 電子制御装置
JP2000029734A (ja) * 1998-07-13 2000-01-28 Nissan Motor Co Ltd Cpu異常監視システム
JP2001175494A (ja) * 1999-12-14 2001-06-29 Nec Corp マイクロプロセッサの演算処理の正常性を二重に診断する方式及びその方法
JP3616319B2 (ja) * 2000-09-05 2005-02-02 株式会社日立製作所 Cpuの診断装置
JP4003420B2 (ja) * 2001-07-30 2007-11-07 株式会社ジェイテクト 演算装置
JP2003263333A (ja) * 2002-03-08 2003-09-19 Aisin Aw Co Ltd 演算部監視システム、演算部監視方法及びそのプログラム
JP4348950B2 (ja) * 2003-01-23 2009-10-21 株式会社デンソー 電子制御装置
JP2004259137A (ja) * 2003-02-27 2004-09-16 Denso Corp 電子制御装置

Also Published As

Publication number Publication date
JP2007293524A (ja) 2007-11-08

Similar Documents

Publication Publication Date Title
JP4747930B2 (ja) 電子制御装置、及び、演算機能検査方法
US8495433B2 (en) Microcomputer mutual monitoring system and a microcomputer mutual monitoring method
EP3198725B1 (en) Programmable ic with safety sub-system
KR101438990B1 (ko) 시스템 테스트 방법
CN106919462B (zh) 一种生成处理器故障记录的方法及装置
US20150254123A1 (en) Symmetric Multi-Processor Arrangement, Safety Critical System, And Method Therefor
US8352791B2 (en) Configurable test suite
JP4941954B2 (ja) データエラー検出装置およびデータエラー検出方法
JP2011008702A (ja) 故障処理装置
US11372706B2 (en) Vehicle control device
JP6081239B2 (ja) 制御装置の異常監視装置および異常監視方法
JP2012150661A (ja) プロセッサ動作検査システム、及びその検査方法
JP6524989B2 (ja) 演算器の動作保証方法
JP5034972B2 (ja) 電子機器およびプログラム
JP2019191942A (ja) 制御装置および機能検査方法
JP2012248022A (ja) 情報処理装置、故障検出装置、故障検出方法
KR101856065B1 (ko) Obd 테스트 장치 및 방법
JP2019087118A (ja) 車載制御装置
JP2008152665A (ja) 半導体集積回路の動作解析方法
JP4983806B2 (ja) 二重化タイマを用いたシステム監視装置、および監視方法
WO2011142015A1 (ja) 演算器異常判定装置及び方法
de Queiroz Filho et al. Conext-u: A context-aware exception handling mechanism for task-based ubiquitous systems
TWI566179B (zh) 用於基本輸入輸出系統之除錯訊息輸出方法及電腦程序產品
CN112671601A (zh) 一种基于Zookeeper的接口监控系统及方法
US20150082083A1 (en) Information processing system and information processing method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090209

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100702

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100706

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100809

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110301

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110330

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110502

R151 Written notification of patent or utility model registration

Ref document number: 4747930

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140527

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees