JP4709268B2 - 車両制御用マルチコアシステムまたは内燃機関の制御装置 - Google Patents

車両制御用マルチコアシステムまたは内燃機関の制御装置 Download PDF

Info

Publication number
JP4709268B2
JP4709268B2 JP2008303369A JP2008303369A JP4709268B2 JP 4709268 B2 JP4709268 B2 JP 4709268B2 JP 2008303369 A JP2008303369 A JP 2008303369A JP 2008303369 A JP2008303369 A JP 2008303369A JP 4709268 B2 JP4709268 B2 JP 4709268B2
Authority
JP
Japan
Prior art keywords
core
cores
failure
arithmetic processing
vehicle control
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
JP2008303369A
Other languages
English (en)
Other versions
JP2010126012A (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 JP2008303369A priority Critical patent/JP4709268B2/ja
Priority to US12/625,266 priority patent/US8417990B2/en
Priority to EP09177078A priority patent/EP2192489B1/en
Priority to AT09177078T priority patent/ATE545086T1/de
Publication of JP2010126012A publication Critical patent/JP2010126012A/ja
Application granted granted Critical
Publication of JP4709268B2 publication Critical patent/JP4709268B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/18Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits
    • G06F11/187Voting techniques
    • G06F11/188Voting techniques where exact match is not required
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1695Error detection or correction of the data by redundancy in hardware which are operating with time diversity
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1629Error detection by comparing the output of redundant processing systems
    • G06F11/1637Error detection by comparing the output of redundant processing systems using additional compare functionality in one or some but not all of the redundant processing components
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1629Error detection by comparing the output of redundant processing systems
    • G06F11/165Error detection by comparing the output of redundant processing systems with continued operation after detection of the error
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/18Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits
    • G06F11/181Eliminating the failing redundant component

Description

本発明は、車両に搭載された機器を制御する組み込み制御装置に係わり、特に複数のCPUから構成されるマルチコアCPUシステムの故障診断に関する。
制御機器の信頼性向上や処理速度向上のために、制御コンピュータのCPUを複数のプロセッサで構成したり、複数のCPUコアで構成したマルチコアCPUを用いるケースが増えている。このようなコンピュータにおいては、各プロセッサまたは各コアが故障した場合にはそれを速やかに検出し、当該プロセッサまたはコアを停止させ、制御への影響を防ぐなどの処理が必要となる。例えば特許文献1で開示されたような冗長系システムがよく知られている。特許文献1では、複数の冗長化されたサブシステムの出力したデータを比較し、データが一致している最も信頼度の高いサブシステムからの出力を選択するシステムが示されている。また特許文献2では、複数の出力の多数決比較をして最終的な出力を決定するシステムが示されている。また特許文献3では、特別な診断用のプログラムやデータを用いずに、通常の演算処理を行いながら複数のCPUコアの診断を行う方法が示されている。また特許文献4では、各プロセッサにハードウェア障害を検出するためのテストプログラムを起動させるシステムが示されている。
特開平3−15946号公報 特開平9−16535号公報 特開平3−196232号公報 特開平6−332874号公報
上記のように、データの一致性比較を行うシステムは信頼性向上を目的としており、複数プロセッサまたは複数コアで同一の処理を行い、その処理結果を冗長系システムを構築することが前提となっている。また、特許文献3で提案されている故障診断方法では、通常の演算処理を複数のCPUコアで同様に行い、それぞれの処理結果を比較するため、CPUのリソース消費が増大する課題がある。これらのシステムでさらに処理速度向上を行うためには、プロセッサまたはコアをさらに増やす必要があり、コストおよび搭載容積の増加を招いてしまう。車両用制御装置においては、コストパフォーマンスと搭載性の観点から、これらのシステムを適用することは難しい。なお、この課題に関し、特許文献4では分散処理を行いつつ故障診断用のテストプログラムを各プロセッサで起動するシステムが提案されている。しかしこのテストプログラムは、通常時の演算処理とは異なる演算処理であり、各プロセッサまたは各コアにとって演算負荷となるという課題がある。
本発明の目的とするところは信頼性向上と処理速度向上との両立であり、特別なテストプログラムなどによる冗長な演算処理,CPUリソースの消費を抑制しながらマルチコアCPUシステムを用いる車両用制御装置の複数コアの故障判定を実現することにある。
上記課題を解決するため、本発明は、複数のコアを用いて車両に搭載された機器を制御するための車両制御用マルチコアシステムであって、連続的に変化する入力値を取得し、前記機器の制御に必要な出力値を演算する演算処理手段を備え、前記演算処理手段が前記複数のコア中の特定のコアにおいて特定のタイミングで演算処理を行った出力値と、前記特定のコアとは異なる、前記複数のコア中の他のコアにおいて、前記演算処理手段が前記特定のタイミングとは異なるタイミングで演算処理を行った出力値と、の比較を行い、前記特定のコアに故障が生じていると判断するコア故障判断手段を備えることを特徴とする。
本発明によれば、複数のコアで同一処理を実行することを抑制できるため、コアのリソースを有効に利用でき、また特別なテストプログラムが不要なため、演算負荷の少ないマルチコアシステムの故障診断が実現できる。



以下、発明の実施の形態を説明する。
本発明の第1の実施例を図面を用いて説明する。図2はこの発明の実施の形態を示した全体構成図であり、図において6はマイクロコンピュータを備えた制御コントロールユニット(C/U)、7はマイクロコンピュータ(CPU)、8は読み取り専用記憶装置(ROM)、9は読み書き可能記憶装置(RAM)、10は車両、11は車両10に備えられたセンサ、12は車両10に備えられたアクチュエータ、13はセンサ11,アクチュエータ12の信号を送受する入出力装置(I/O)、である。
C/U6にはセンサ11からの信号が入力される。C/U6は前記入力信号およびROM8に内蔵された制御データを用いて演算を行い、アクチュエータ12へ制御信号を出力する。
例えばC/U6を車載エンジン制御コントロールユニット、車両10をガソリン噴射式内燃機関、センサ11を吸入空気量センサおよびエンジン回転数センサ,アクチュエータ12を燃料噴射弁とすると、CPU7は前記吸入空気量センサおよびエンジン回転数センサからI/O13を通して得た吸入空気量情報およびエンジン回転数情報をROM8に内蔵された制御データと照合して燃料噴射量を算出し、該燃料噴射量に基づいて前記燃料噴射弁の開弁時間を制御する信号をI/O13を通して前記燃料噴射弁に出力し、燃料噴射制御を行うシステムなどが挙げられる。
ここでCPU7の内部構成を図3に示す。CPU7は2つ以上の中央演算処理装置(コア)で構成されるマルチコアCPUであり、この図ではコアA〜D(14〜17)の4つのコアで構成される例を示している。ここではコアの数が4つの場合の例を示しているが、2つ以上であればいくつであってもよい。コアA〜D(14〜17)はそれぞれがデータバス18と接続されている。データバス18はI/Oポート19,データ読み込みポート20,データ書き込みポート21と接続されており、外部のI/O13,ROM8,RAM9とのデータ入出力を行う。なお、本実施例においては、一つのCPUパッケージ内に複数コアを有するマルチコアCPUを用いたシステムを挙げているが、このマルチコアCPUに代えて、複数のCPUパッケージを有するマルチプロセッサシステムを採用してもよく、本発明においてコアとプロセッサの表記の差異は特別に区別しない。
次に動作について説明する。図4はCPU7のオペレーティングシステム(OS)の動作を示したフローチャートである。CPU7の起動後、ステップ1では、関数Aの処理を各コアに割り当てる処理を行う。ここで関数Aは車両の制御に関わる演算処理手段の一例であり、本発明のマルチコアシステムの故障診断に用いる演算処理手段は、出力結果に一定の連続性が期待できるものであれば何でも良く、例えば前記の燃料噴射量を算出する関数などが挙げられる。なお、ここでいう連続性については後に具体例を用いて説明を行う。次に、ステップ2では、前記関数Aの処理が含まれるタスクの実行を開始する。ステップ3では、タスク処理で判定された故障判定の結果を用いて処理の分岐を行う。正常判定(コア故障なし)の場合はタスク処理を続行し、再びステップ3に戻る。故障判定(コア故障あり)の場合は処理を終了する。
ここでステップ1の割り当て処理について図5を用いて詳細に説明する。図5はコアA〜D(14〜17)のそれぞれコアの処理を時間軸で表している。ここでタスクは例として10ms周期とし、ある時刻Xを起点としてXms後、X+10ms後、X+20ms後、X+30ms後と10msずつ進む様子を示している。関数A22はステップ1の割り当て処理により、10ms周期ごとに別のコアに割り当てる。図に示すようにXms後のタスクではコアA14に、X+10ms後のタスクではコアB15に、X+20ms後のタスクではコアC16に、X+30ms後のタスクではコアD17に、それぞれ割り当てる。ここでは4つのコアの例を示しているが、コアは2つ以上あればいくつでもよい。またここでは10ms周期毎に処理のタイミングを設定している例を示しているが、周期間隔はいくつであってもよく、例えばエンジン回転数同期のように不定期な周期に演算処理のタイミングを同期させてもよい。またここではコアA〜D(14〜17)を順番に割り当てる例を示しているが、この順番に限られるものではない。
ここでステップ3の故障判定について図を用いて詳細に説明する。図6は、各コアのタスクの1周期における処理において、故障判定に関する動作のフローチャートを示している。ステップ4では、関数Aを実行する。ステップ5では、関数Aを実行して得られた数値をメモリに記憶する。ここで記憶する領域は例えば図2に示したRAM9を用いるが、CPU7に搭載されたキャッシュメモリなどがあればそちらを使用してもよい。ステップ6では、前回値と今回値の差分を算出する。前回値とは前回の周期で別のコアのステップ5の処理により記憶された値であり、今回値とはこのタスクにおいて直前のステップ5の処理により記憶された値である。ステップ7では、ステップ6により算出された差分の値を判定する。値が所定の範囲内であればステップ8へ進み、範囲外であればステップ9へと進む。ステップ8では、このコアは正常状態と判定する。ステップ9では、このコアは故障状態と判定する。
ここでステップ4からステップ9の動作についての具体例を説明する。関数Aをガソリン噴射式内燃機関における燃料噴射パルス幅算出関数とすると、燃料噴射パルス幅Tiは下式(数1)で算出できる。
〔数1〕
Ti=K×Qa/Ne×Coef+Ts
Ti:燃料噴射パルス幅(ms)
K:比例定数
Qa:吸入空気量(kg/s)
Ne:エンジン回転数(r/min)
Coef:空燃比補正係数
Ts:無効噴射パルス幅(ms)
ここでQa(吸入空気量)は吸入空気量センサの入力信号から、Ne(エンジン回転数)はエンジン回転数センサの入力信号からそれぞれ求められ、K(比例定数),Coef(空燃比補正係数)およびTs(無効噴射パルス幅)はROM8にあらかじめ格納するものとする。図7にQa,Neの変化に対するTiの値をグラフで表したものを示す。Qa,Neは車両の運動に応じて連続的に変化するため、Tiも連続的に変化する。
ここで特定のコアに故障が発生し、当該コアの計算結果が0になってしまった場合のTiのグラフを図8に示す。例としてコアは全部で4つとし、故障コアはそのうちの1つとする。時刻tXにおいて故障が発生したとすると、図のように時刻tx以降、断続的にグラフが途切れ、連続性を失った状態となる。これは図5で示したように周期毎に別のコアで計算を行うため、故障の発生したコアのみの計算結果が0となるためである。
ここでステップ6の処理により今回値と前回値との差分ΔTiを計算した結果を図9に示す。ΔTiはコア故障前の時刻tx以前では0点付近を示しているが、コア故障後の時刻tx以降では断続的に上下に大きく振幅する、連続性を欠いたグラフとなっている。コア正常時のΔTiの取りうる値の下限値ΔTimin,上限値ΔTimaxを定めれば、ステップ7の故障判定処理において所定範囲をΔTimin〜ΔTimaxとすることで、範囲内であれば正常状態(ステップ8)、範囲外であれば、今回値が演算処理されたコアが、今回値が演算処理されたタイミングにおいて故障状態(ステップ9)である旨の故障判定を行うことができる。
また、コアに故障が発生した際に、当該コアの計算結果がランダムな値となる場合のTiのグラフを図10に示す。このような場合でも時刻tx以降では所定範囲ΔTimin〜ΔTimaxを越えるΔTiが発生するため、故障判定を行うことができる。
なお、本実施例においては前回値と今回値の差分を算出することで、短い周期間隔の計算結果の変化から、計算結果の時間変化の連続性を監視している。しかし、本発明の要旨は上記態様に限られず、計算結果の時間変化に連続性があるかどうかを判断できる範囲で、コア故障判断のための計算結果の比較を行う周期を定めて良い。一例としては、今回値と前々回値の差分により故障判定を行うことも可能である。また、ラジエターの温度制御のように応答性が遅く、求められる演算周期間隔が長い制御は、計算結果の比較を行う周期間隔を長く定めても連続性の判断は可能である。しかし、上述の燃料噴射制御のように応答性の速い制御に関しては、短い周期間隔で計算結果の比較を行うことが望ましい。
また、本実施例において、計算結果の比較手段として二つの計算結果の差分を挙げているが、計算結果の時間変化に連続性があるかどうかを判断できる手段であれば任意の手段でよい。例えば、前回値と今回値とで除法を行い、その結果が所定範囲内かどうかを判定してもよく、また第一の計算結果,第二の計算結果,第三の計算結果の順で連続して演算処理された3つの値のうち、第二の計算結果が、第一と第三の計算結果との間の範囲に入る値であるかどうかを判定してもよい。
また、演算処理手段の割り当ては、計算結果の比較を行うコアが同一でなければ順番は不同であり、どのような順番であってもよい。また、演算負荷低減の観点から、同一の演算処理を同時に異なるコアでは実行しないことが望ましいが、設計上の都合により、演算処理の一部が複数のコアで同時に実行されてもよい。すなわち、あるコアで演算処理が終了する前に、次に同一の演算処理を開始しても、演算処理が重ならない時刻の演算負荷は低減できる。
また、本発明において利用できる演算処理手段は、計算結果の時間変化が厳密に連続性を有するものでなくてもよく、実質上一定の連続性が期待できれば良い。例えば、断続的にH出力とL出力を繰り返すPWM(Pulse Width Modulation)出力であっても、出力値の積分値は連続性を持つため、出力には実質上一定の連続性が期待できる。
以上が第1の実施例である。このように本方式では、監視専用のコアを設ける必要がなく、すべてのコアを通常の処理に使用できるという利点がある。また処理に冗長性を持たせて複数のコアで同時に同一の処理を実行して故障判定を行う必要もなく、コアのリソースを有効に利用できるという利点がある。また、車両の制御信号は演算周期毎に急変する可能性が低いことを利用し、車両の制御に必要な演算処理をそのまま用いて故障判定を行うため、特別なテストプログラムが不要であり、故障判定のための演算負荷の増加を抑制できるという利点がある。また、多数決比較を行う場合には少なくとも3つ以上のプロセッサまたはコアが必要となるが、本実施例の構成によれば、コアの数は2つ以上であればいくつであってもよく、コア数の制限が少ないという利点がある。
本発明の第2の実施例を説明する。第1の実施例と異なる点はステップ3の故障判定であり、この動作について図11のフローチャートを用いて説明する。
ステップ4,ステップ5の動作は図6と同一である。ステップ5の次はステップ10に進む。ステップ10では、記憶しておいた移動平均値と今回値の差分を算出する。移動平均値については後述するステップ11で説明する。ステップ7からステップ9の動作は図6と同一である。ステップ8にて正常判定とされた場合はステップ11に進む。ステップ11では、記憶しておいた移動平均値に今回値を加味して新しい移動平均値を算出する。ここで移動平均値の計算方法は単純移動平均でも加重移動平均でもよい。また移動平均値の計算に少なくとも2回分の値が必要であるため、ステップ7の判定はタスク周期の3回目以降から行う。
図12および図13を用いて本実施例の効果について示す。図12は第1の実施例で説明した方式を用いてステップ6の処理により前回値との差分ΔTiを計算した結果のグラフである。ここでΔTiは関数Aの結果、Tiが振動状態となる事象を表している。例えば、スロットルバルブの劣化などで、Qaの制御が吸入空気量センサの入力信号に基づいて算出した所望の制御量の通り制御できない場合などが該当する。ここで所定範囲ΔTimin0〜ΔTimax0は振動の振幅の範囲が必要である。図13は同じTiについて、本実施例のステップ10の処理により前回値との差分ΔTiを移動平均値を用いて計算した結果のグラフである。このようにTiが振動状態であってもΔTiは収束するグラフとなり、所定範囲ΔTimin〜ΔTimaxは図12の所定範囲ΔTimin0〜ΔTimax0と比べて狭い範囲で収まる。
本実施例の構成によれば、移動平均値を用いることで差分の変動幅を抑えることができ、故障判定の所定範囲を狭く設定することができる。したがって、故障判定できる領域が多くなり、故障判定の精度を高めることができるという利点がある。以上が第2の実施例である。
本発明の請求項3に対応する第3の実施例を説明する。第2の実施例と異なる点はステップ3の故障判定であり、この動作について図14のフローチャートを用いて説明する。
ステップ4,ステップ5の動作は図6と同一である。ステップ5の次はステップ12に進む。ステップ12では、記憶しておいた移動平均値からステップ7で使用する所定範囲の算出を行う。ここで算出方法は例えば下式(数2,数3)で求めることができる。
〔数2〕
ΔTimin=−α×|移動平均値|
〔数3〕
ΔTimax=+α×|移動平均値|
ここでαは1以上の任意の係数であり、値を大きくすることで故障判定の誤判定を少なくすることができるが、その反面故障の検出精度が低くなるという性質を持つ。ここでは数2および数3の算出方式を例に挙げたが、移動平均値に基づいたものであればどのような算出方法であってもよい。ステップ12の次はステップ10に進む。以降のステップ10からステップ11までの動作は図11と同一である。
以上が第3の実施例である。このように本方式では、所定範囲をあらかじめ設定する必要がないため、計算結果の範囲の限定が難しい関数についても最適な所定範囲を得ることができるという利点がある。また数2および数3の算出方式を採用することで、係数の設定値により故障判定の誤判定の度合いと故障の検出精度とを任意に選択できるという利点がある。
本発明の第4の実施例を説明する。第1から第3の実施例と異なる点はステップ3の故障判定であり、この動作について図15のフローチャートを用いて説明する。
ステップ4からステップ7の動作は図6と同一である。ステップ7では、差分の値を判定する。値が所定の範囲内であればステップ8へ進み、範囲外であればステップ12へと進む。
ステップ12では、故障カウンタを1つ増分する。ステップ13では、故障カウンタが所定回数を越えたかどうかを判定する。所定回数を越えない場合はステップ8へと進み、所定回数を越えた場合はステップ9へと進む。ステップ8およびステップ9の動作は図6と同一である。
ここで図15は第1の実施例の図6を元にして作成したが、第2の実施例の図11および第3の実施例の図14を元にした場合でも同様である。
以上が第4の実施例である。このように本方式では、ステップ7で差分の値を判定した値が所定の範囲外であっても即座に故障とは判定せず、故障カウンタを設けて判定することで、故障の誤判定を抑制できる利点がある。また故障が一時的なものであり、継続して使用できるような場合にも対応できるという利点がある。
本発明の第5の実施例を説明する。第1から第4の実施例と異なる点はCPU7のOSの動作であり、この動作について図16のフローチャートを用いて説明する。
ステップ1からステップ3の動作は図4と同一である。ステップ3で正常判定(コア故障なし)の場合はタスク処理を続行し、再びステップ3に戻る。故障判定(コア故障あり)の場合はステップ14に進む。
ステップ14ではタスクの実行を一時中断する。ステップ15ではステップ3で故障と判定されたコアを除いた残りのコアに関数Aの処理を割り当てる処理を行う。ステップ15の次はステップ2に戻り、タスクの実行を再開する。
ここでステップ15の再割り当て処理について図17を用いて詳細に説明する。図17はコアA〜D(14〜17)のそれぞれコアの処理を時間軸で表している。図5との相違点について以下説明する。この例ではX+20ms後の時点でコアC16に故障が発生した場合を示している。このときまずステップ14によりタスクの実行を一時中断する。次にステップ15の再割り当て処理により、関数Aの再割り当てを行う。ここでは故障の発生したコアC16を除いた残りのコアA14,コアB15,コアD17に関数Aの処理を割り当てる処理を行う。ここで再割り当て処理は関数Aだけでなく、コアC16が行っていたすべての処理を残りのコアに割り当ててもよい。再割り当て処理のあとタスクの実行を再開する。
以上が第5の実施例である。このように本方式では、任意のコアに故障が発生した場合でも当該コアを除いた残りのコアで処理を継続するため、故障判定および制御処理を正常に続行できるという利点がある。
本発明の第6の実施例を説明する。第1から第5の実施例と異なる点はステップ3の故障判定であり、この動作について図18および図19のフローチャートを用いて説明する。
図18のステップ4,ステップ5の動作は図6と同一である。ステップ5の次はステップ16に進む。ステップ16では、前回の演算周期で正常と判定されたコアに割り込みイベントを発行し、この判定処理に関してこのコアでの処理は終了する。
図19はステップ16の割り込みイベントを受けたコアでの動作を示している。ステップ6では割り込みイベントを受けた当該コアで算出された前回値と、割り込みイベントを発行したコアで算出された今回値の差分を算出する。ステップ7からステップ9までの処理は、割り込みイベントを受けた当該コアで行うことを除いては図6と同一である。
以上の動作についてコアA〜D(14〜17)のそれぞれコアの処理を時間軸で表したものが図20である。ここで故障判定処理23は図19の処理を表している。Xms後を例にとると、コアA14にて図18のステップ4により関数Aの処理を行い、ステップ5を経てステップ16にて前回の演算周期で正常と判定されたコアD17に割り込みイベントを発行する。割り込みイベントを受けたコアD17では図19のステップ6からステップ9で表される故障判定処理23の処理を行う。
以上が第6の実施例である。このように故障判定処理23を前回の演算周期で正常と判定されたコアで行うことにより、異常が発生したコアに他のコアの故障判定処理23を割り振ってしまう事態を抑制できる。例えば、コアに故障が発生してステップ6の差分計算に異常が発生し、本来所定範囲外となるはずの差分結果が所定範囲内に入ってしまう現象や、ステップ7の判定処理において本来故障と判定されるべきところが正常と判定されてしまう現象を抑制できるという利点がある。
ここでは割り込みイベントを用いて故障判定処理23の処理を行う例を示したが、前回の演算周期で正常と判定されたコアで故障判定処理23を行う方法であれば実現手段は何でもよく、特に割り込みイベントが必須というわけではない。また、ステップ6からステップ9の処理のいずれかのみを前回の演算周期で正常と判定されたコアで行ってもよい。
本発明の第7の実施例を説明する。第1から第5の実施例と異なる点はCPU7のOSの動作およびステップ3の故障判定であり、この動作について図21および図22のフローチャートを用いて説明する。
図21のステップ1からステップ2の動作は図4と同一である。ステップ2の次はステップ17を実行する。ステップ17では、少なくとも3つ以上の奇数のコアで重複して実施されたコア故障判定の結果を判定する。ここで正常判定(コア故障なし)とされたコアの数が故障判定(コア故障あり)とされたコアの数より少ない場合は正常状態とみなしてタスク処理を続行し、再びステップ17に戻る。それ以外の場合は故障状態とみなして処理を終了する。あるいは第5の実施例の図16のように再割り当て処理を行ってもよい。
ステップ17の故障判定について図22のフローチャートを用いて説明する。ステップ4,ステップ5の動作は図6と同一である。ステップ5の次はステップ18に進む。ステップ18では、少なくとも3つ以上の奇数のコアに割り込みイベントを発行し、この判定処理に関してこのコアでの処理は終了する。割り込みイベントを受けた各コアは、図19で示される故障判定処理を行う。
以上の動作についてコアA〜D(14〜17)のそれぞれコアの処理を時間軸で表したものが図23である。ここで故障判定処理23は図19の処理を表している。Xms後を例にとると、コアA14にて図18のステップ4により関数Aの処理を行い、ステップ5を経てステップ18にて少なくとも3つ以上の奇数のコアに割り込みイベントを発行する。割り込みイベントを受けた各コアでは図19のステップ6からステップ9で表される故障判定処理23の処理を行う。
以上が第7の実施例である。このように演算負荷の少ない故障判定処理23の処理を、少なくとも3つ以上の奇数のコアで行い、それらの結果を多数決にて判定することにより、演算負荷の増大を抑えながら、故障判定の信頼性を向上することができるという利点がある。
ここでは割り込みイベントを用いて故障判定処理23の処理を行う例を示したが、少なくとも3つ以上の奇数のコアで故障判定処理23を行う方法であれば実現手段は何でもよく、特に割り込みイベントが必須というわけではない。
また、ステップ6からステップ9の処理のいずれかのみを少なくとも3つ以上の奇数のコアで行うよう構成することで、故障判定の一部分の信頼性を向上することもできる。
本発明の第8の実施例を説明する。第1から第5の実施例と異なる点はCPU7のOSの動作およびステップ3の故障判定であり、この動作について図24および図25のフローチャートを用いて説明する。
図24のステップ1からステップ2の動作は図4と同一である。ステップ2の次はステップ19を実行する。ステップ19では、少なくとも2つ以上のコアで重複して実施されたコア故障判定の結果を重み付けして集計する。重み付け計算方法は例えば下式(数4)が挙げられる。
〔数4〕
R=W1×C1+W2×C2+・・・+Wn×Cn
R:集計値
Wn:n番目のコアに対する重み付け(0〜1)
Cn:n番目のコアの判定結果値。正常判定時=0,故障判定時=1
ここで重み付けは、各コアの処理内容の重要度によって定めてもよい。あるいは各コアが正常と判断されてからの経過時間によって定めてもよい。また重み付け計算方法は数4に限定されるものではなく、任意の計算方法を用いてもよい。
ステップ20では、ステップ19で計算された集計結果を用いて故障判定を行う。例えばステップ19で前述の数4によって集計された場合、集計値Rが所定値以上であるときに故障と判定する方法が挙げられる。正常状態と判定された場合はタスク処理を続行し、再びステップ19に戻る。それ以外の場合は故障状態とみなして処理を終了する。あるいは第5の実施例の図16のように再割り当て処理を行ってもよい。
ステップ19の故障判定について図25のフローチャートを用いて説明する。ステップ4,ステップ5の動作は図6と同一である。ステップ5の次はステップ21に進む。ステップ21では、少なくとも2つ以上のコアに割り込みイベントを発行し、この判定処理に関してこのコアでの処理は終了する。割り込みイベントを受けた各コアは、図19で示される故障判定処理を行う。
以上の動作についてコアA〜D(14〜17)のそれぞれコアの処理を時間軸で表したものが図23である。ここで故障判定処理23は図19の処理を表している。Xms後を例にとると、コアA14にて図18のステップ4により関数Aの処理を行い、ステップ5を経てステップ18にて少なくとも2つ以上のコアに割り込みイベントを発行する。割り込みイベントを受けた各コアでは図19のステップ6からステップ9で表される故障判定処理23の処理を行う。
以上が第8の実施例である。このように故障判定処理23を少なくとも2つ以上のコアで行い、それらの結果を重み付けして集計して判定することにより、故障判定の信頼性を向上することができるという利点がある。またコア毎に性質や重要度が異なる場合にもその性質や重要度を加味した最適な故障判断を行うことができるという利点がある。またコアの数は2つ以上であればいくつでもよく、コア数の制限を受けないという利点がある。
ここでは割り込みイベントを用いて故障判定処理23の処理を行う例を示したが、少なくとも2つ以上のコアで故障判定処理23を行う方法であれば実現手段は何でもよく、特に割り込みイベントが必須というわけではない。
本発明の第9の実施例を説明する。第7または第8の実施例と異なる点はCPU7のOSの動作であり、この動作について図26のフローチャートを用いて説明する。
図26のステップ1からステップ2の動作は図4と同一である。ステップ2の次はステップ22を実行する。ステップ22では、少なくとも3つ以上のコアで重複して実施されたコア故障判定の結果、1つのコアだけが故障と判定し他のコアが正常と判定した場合はステップ23へと進む。それ以外の場合はステップ24へと進む。ステップ23では、ステップ22にて故障判定したコア(1つのコア)が故障状態であると判断する。
ステップ24では、ステップ22と同様に少なくとも3つ以上のコアで重複して実施されたコア故障判定の結果、1つのコアだけが正常と判定し他のコアが故障と判定した場合は、ステップ25へと進む。それ以外の場合はステップ26へと進む。ステップ25では、ステップ24にて正常判定したコア(1つのコア)と今回の演算周期において演算したコアの両方が故障状態であると判断する。
ステップ26およびステップ27は、第7の実施例の図21のステップ17に相当する多数決の故障判定処理、または第8の実施例の図24のステップ19およびステップ20に相当する各コアの重み付けの集計による故障判定処理である。ステップ27で正常と判定された場合はタスク処理を続行し、再びステップ22に戻る。それ以外の場合は今回の演算周期において演算したコアが故障状態とみなして処理を終了する。あるいは第5の実施例の図16のように再割り当て処理を行ってもよい。
以上が第9の実施例である。このように故障判定処理23を少なくとも3つ以上のコアで行い、その結果1つのコアだけが故障と判定し他のコアが正常と判定した場合は、今回の演算周期において演算したコアには異常がなく、別のコア(1つのだけが故障と判定したコア)に故障が発生していると判断することで、故障の誤判定を低減することができ、かつ今回の演算周期において演算したコア以外のコアの故障を検出できるという利点がある。また1つのコアだけが正常と判定し他のコアが故障と判定した場合は、正常と判定したコアと今回の演算周期において演算したコアの両方に故障が生じていると判断することで、同時に2つのコアの故障を検出できるという利点がある。
本発明の第10の実施例を説明する。第1から第9の実施例と異なる点はCPU7のOSの動作であり、この動作について図27のフローチャートを用いて説明する。
図27のステップ1からステップ2の動作は図4と同一である。ステップ2の次はステップ29を実行する。ステップ29では、車両の運転モードの切り替えが発生したかどうかを判定する。ここで運転モードとは車両の状態を規定するものであり、例えばガソリン噴射式内燃機関における機関停止状態,始動状態,完爆状態,セルフシャットオフ状態が挙げられる。この運転モードは故障の判定に使用する関数Aの演算に影響する可能性があるものであれば何でもよく、故障判定のために新たに規定したものであってもよい。ステップ29で運転モードの切り替えが発生した場合はステップ30へ進み、発生していない場合はステップ31へと進む。ステップ30では、運転モードの切り替え発生から所定時間が経過したかどうかを判定する。所定時間が経過している場合はステップ31へ進み、経過していない場合は再びステップ30に戻る。ステップ31の動作は図4のステップ3と同様であり、正常判定(コア故障なし)の場合はタスク処理を続行し、ステップ29に戻る。故障判定(コア故障あり)の場合は処理を終了する。あるいは第5の実施例の図16のように再割り当て処理を行ってもよい。
以上が第10の実施例である。運転モードが変更されたときは車両の制御が大きく変動する特異点であることが多く、故障の判定に使用する関数Aの計算結果が前回値と比べて大きく変わり、連続性を失う場合が多くなる。このような場合に差分を用いた故障判定を行うと前回値との差分ΔTiが想定した所定範囲ΔTimin〜ΔTimaxを越えることがあり、故障状態と誤判定される可能性がある。本実施例はこのような運転状態が急変する事態において所定時間の故障判定休止期間を設けることで、故障の誤判定を抑制できる利点がある。
本発明の第11の実施例を説明する。第1から第10の実施例と異なる点はステップ3の故障判定であり、この動作について図28のフローチャートを用いて説明する。
ステップ4,ステップ5の動作は図6と同一である。ステップ5の次はステップ32に進む。ステップ32では、関数Aに使用する少なくとも1つ以上の入力値のいずれかまたは複数の前回値と今回値の差分を算出する。ステップ33では、ステップ32により算出された差分の値を判定する。値が所定の範囲内であればステップ6へ進み、範囲外であればステップ34へと進む。ここで複数の入力値について判定を行う場合は、例えばそれらのすべてが範囲内であればステップ6へと進み、それ以外であればステップ34へと進む処理が挙げられるが、他の方法として入力値の重要度によって重み付けをして判定処理を行ってもよい。
ステップ6からステップ9の動作は図6と同一であり、ステップ8では、このコアは正常状態と判定する。ステップ9では、このコアは故障状態と判定する。
ステップ34では、このコアは正常状態と判定する。ここで正常状態の代わりに「故障判定中」という状態を規定してもよい。
また、ステップ32からステップ34の入力値の判定処理はこの例ではステップ4の関数Aの処理と同一のコアのタスクで行っているが、第6の実施例で示したように別のコアで行ってもよい。
以上が第11の実施例である。入力値が大きく変化した場合は関数Aの実行結果も大きく変動することがあるが、この変動が第1の実施例で示した故障判定で述べた、所定範囲ΔTimin〜ΔTimaxを越えるものであった場合、故障と誤判定することになる。これを防ぐにはΔTimin〜ΔTimaxを広く取ることが必要であるが、それによって故障の検出精度が低下するという欠点がある。そこで本実施例のように、入力値が大きく変化した場合は故障判定を行わないようにすることで、故障の検出精度を保ったままで誤判定を抑制できるという利点がある。また特に誤判定を引き起こしやすい入力値を選択することや、入力値に重み付けを行うことで、より効果的に誤判定を抑制できるという利点がある。
本発明の第12の実施例を説明する。第11の実施例と異なる点はステップ3の故障判定であり、この動作について図29のフローチャートを用いて説明する。
ステップ4,ステップ5の動作は図6と同一である。ステップ5の次はステップ32に進む。ステップ35では、関数Aに使用する少なくとも1つ以上の入力値のいずれかまたは複数の前回までの移動平均値と今回値の差分を算出する。ステップ36では、前回までの移動平均値に今回値を加味して新しい移動平均値を算出する。ここで移動平均値の計算方法は単純移動平均でも加重移動平均でもよい。ステップ33以降の動作は図28と同一である。また移動平均値の計算に少なくとも2回分の値が必要であるため、ステップ33の判定はタスク周期の3回目以降から行う。
以上が第12の実施例である。第11の実施例では入力値が振動状態のように変動する場合、その前回値と今回値との差分は第2の実施例の図12で示したΔTiのグラフと同様に0点を挟んで上下に振動するグラフとなる。このような場合、故障判定の機会を増やすためには入力値の判定に用いる所定範囲を広く取る必要があるが、その場合入力値が所定範囲内で大きく変化すると関数Aの実行結果も大きく変動し、正常状態であるにもかかわらず故障と誤判定する可能性がある。そこで本実施例のように移動平均値を用いることにより、第11の実施例の図13と同様に差分の振幅が小さくなるため、入力値の判定に用いる所定範囲を狭くすることが可能になる。これにより故障判定の機会を減らさずに、かつ入力値が急変動しても故障と誤判定するのを抑制することができるという利点がある。
本発明の第13の実施例を説明する。第12の実施例と異なる点はステップ3の故障判定であり、この動作について図30のフローチャートを用いて説明する。
ステップ4,ステップ5の動作は図6と同一である。ステップ5の次はステップ37に進む。ステップ37では、記憶しておいた入力値の移動平均値からステップ7で使用する所定範囲の算出を行う。ここで算出方法は例えば下式(数5,数6)で求めることができる。
〔数5〕
ΔIAMINn=−αian×|IAn|
〔数6〕
ΔIAMAXn=+αian×|IAn|
ΔIAMINn:n番目の入力値の判定用範囲の下限値
ΔIAMAXn:n番目の入力値の判定用範囲の上限値
αian:n番目の入力値の判定用範囲算出係数
IAn:n番目の入力値の移動平均値
ここでαianは1以上の任意の係数であり、値を大きくすることで故障判定の機会を増やすことができるが、その反面故障と誤判定する可能性も増加する。ここでは数5および数6の算出方式を例に挙げたが、移動平均値に基づいたものであればどのような算出方法であってもよい。ステップ37の次はステップ35に進む。ステップ35以降の動作は図29と同一である。
以上が第13の実施例である。このように本方式では、入力値判定用の所定範囲をあらかじめ設定する必要がないため、入力値の取りうる範囲の限定が難しい場合においても最適な所定範囲を得ることができるという利点がある。また数5および数6の算出方式を採用することで、係数の設定値により故障判定の誤判定の度合いと故障判定の機会の頻度とを任意に選択できるという利点がある。
本発明の基本構成図。 発明の実施の形態を示した全体構成図。 CPUの内部構成を示した図。 オペレーティングシステム(OS)の動作を示したフローチャート。 関数Aの割り当てと各コアの処理を時間軸で示した図。 各コアのタスクの1周期における故障判定に関する動作のフローチャート。 時刻tに対するQa,Ne,Tiのそれぞれの変化を表したグラフ。 コアに故障が発生した場合のTiのグラフ。 前回値との差分ΔTiのグラフ。 コアに故障が発生した際に、当該コアの計算結果がランダムな値となる場合のTiのグラフ。 実施例2における各コアのタスクの1周期における故障判定に関する動作のフローチャート。 Tiが振動状態となる場合の前回値との差分ΔTiのグラフ。 Tiが振動状態となる場合の前回値に移動平均値を用いた差分ΔTiのグラフ。 実施例3における各コアのタスクの1周期における故障判定に関する動作のフローチャート。 実施例4における各コアのタスクの1周期における故障判定に関する動作のフローチャート。 実施例5におけるオペレーティングシステム(OS)の動作を示したフローチャート。 実施例5における関数Aの割り当てと各コアの処理を時間軸で示した図。 実施例6における各コアのタスクの1周期における故障判定に関する動作のフローチャート。 実施例6における割り込みイベントを受けたコアの故障判定に関する動作のフローチャート。 実施例6における各コアの処理を時間軸で示した図。 実施例7におけるオペレーティングシステム(OS)の動作を示したフローチャート。 実施例7における各コアのタスクの1周期における故障判定に関する動作のフローチャート。 実施例7における各コアの処理を時間軸で示した図。 実施例8におけるオペレーティングシステム(OS)の動作を示したフローチャート。 実施例8における各コアのタスクの1周期における故障判定に関する動作のフローチャート。 実施例9におけるオペレーティングシステム(OS)の動作を示したフローチャート 実施例10におけるオペレーティングシステム(OS)の動作を示したフローチャート。 実施例11における各コアのタスクの1周期における故障判定に関する動作のフローチャート。 実施例12における各コアのタスクの1周期における故障判定に関する動作のフローチャート。 実施例13における各コアのタスクの1周期における故障判定に関する動作のフローチャート。
符号の説明
1 演算処理割り当て手段
2 演算処理手段
3 記憶手段
4 差分判定手段
5 コア故障判断手段
6 制御コントロールユニット(C/U)
7 マイクロコンピュータ(CPU)
8 読み取り専用記憶装置(ROM)
9 読み書き可能記憶装置(RAM)
10 車両
11 車両に備えられたセンサ
12 車両に備えられたアクチュエータ
13 入出力装置(I/O)
14〜17 コアA〜D
18 データバス
19 I/Oポート
20 データ読み込みポート
21 データ書き込みポート
22 車両の制御に関わる処理関数A
23 故障判定処理

Claims (21)

  1. 複数のコアを用いて車両に搭載された機器を制御するための車両制御用マルチコアシステムであって、
    連続的に変化する入力値を取得し、前記機器の制御に必要な出力値を演算する演算処理手段を備え、
    前記演算処理手段が前記複数のコア中の特定のコアにおいて特定のタイミングで演算処理を行った出力値と、
    前記特定のコアとは異なる、前記複数のコア中の他のコアにおいて、
    前記演算処理手段が前記特定のタイミングとは異なるタイミングで演算処理を行った出力値と、
    の比較を行い、前記特定のコアに故障が生じていると判断するコア故障判断手段を備えることを特徴とする車両制御用マルチコアシステム。
  2. 前記コア故障判断手段は、
    前記演算処理手段の演算処理が実行されるコアが切り替わることによって、
    前記演算処理手段の出力値の連続性が失われたときに、
    前記特定のコアに故障が生じていると判断することを特徴とする請求項1に記載の車両制御用マルチコアシステム。
  3. 前記コア故障判断手段は、連続した演算周期での演算処理手段の出力値を比較することを特徴とする請求項1または2いずれかに記載の車両制御用マルチコアシステム。
  4. 前記車両制御用マルチコアシステムは、実行するコアとタイミングとがそれぞれ異なる出力値の差分を求め、前記差分が所定の範囲内にあるかどうかを判定する差分判定手段を備え、前記コア故障判断手段は前記差分判定手段の判定結果によって、
    前記特定のコアに故障が生じていると判断することを特徴とする請求項1から3いずれかに記載の車両制御用マルチコアシステム。
  5. 前記車両制御用マルチコアシステムは、少なくとも2回以上の演算処理を行った出力値の移動平均値を計算し、前記移動平均値と、前記特定のタイミングにおいて前記演算処理手段が演算処理を行った出力値との差分を求め、前記差分が所定の範囲内にあるかどうかを判定する差分判定手段を備え、前記差分判定手段の判定結果によって前記特定のコアに故障が生じていると判断することを特徴とする請求項1から3いずれかに記載の車両制御用マルチコアシステム。
  6. 前記差分判定手段の判定に用いる所定の範囲は、少なくとも2回以上の演算処理を行った出力値の移動平均値に基づいて求めることを特徴とする請求項4から5いずれかに記載の車両制御用マルチコアシステム。
  7. 前記コア故障判断手段は、前記差分判定手段による前記特定のコアの判定結果が所定の範囲内でないときに故障カウンタを増加し、前記故障カウンタが所定回数を超えたときに前記特定のコアに故障が生じていると判断することを特徴とする請求項4から6いずれかに記載の車両制御用マルチコアシステム。
  8. 前記車両制御用マルチコアシステムは、前記演算処理手段を分割し、実行されるタイミングによって演算処理が実行されるコアが切り替わるように前記複数のコアに割り当てる演算処理割り当て手段を備え、
    前記演算処理割り当て手段は、前記コア故障判断手段によって前記特定のコアに故障が生じていると判断された場合、前記特定のコアを割り当ての対象から除外して再度割り当てることを特徴とする請求項1から7のいずれかに記載の車両制御用マルチコアシステム。
  9. 前記コア故障判断手段は、前回の演算周期において前記コア故障判断手段によって正常であると判断されたコアで行うことを特徴とする請求項1から8いずれかに記載の車両制御用マルチコアシステム。
  10. 前記差分判定手段は、前回の演算周期において前記コア故障判断手段によって正常であると判断されたコアで行うことを特徴とする請求項4から9のいずれかに記載の車両制御用マルチコアシステム。
  11. 前記差分判定手段および前記コア故障判断手段は、少なくとも3つ以上の奇数のコアで重複して実施され、前記実施の結果の多数決によってコア故障判断を行うことを特徴とする請求項4から10のいずれかに記載の車両制御用マルチコアシステム。
  12. 前記差分判定手段および前記コア故障判断手段は、少なくとも2つ以上のコアで重複して実施し、前記少なくとも2つ以上のコア中の各コアそれぞれの判定結果を重み付けして集計し、前記集計の結果を用いてコア故障判断を行うことを特徴とする請求項4から10のいずれかに記載の車両制御用マルチコアシステム。
  13. 前記差分判定手段および前記コア故障判断手段は、少なくとも3つ以上のコアで重複して実施し、前記少なくとも3つ以上のコア中の1つのコアだけが前記特定のコアは故障であると判定し、前記少なくとも3つ以上のコア中の他のコアが前記特定のコアは正常であると判定した場合は、故障であると判定したコアに故障が生じていると判断し、前記少なくとも3つ以上のコア中の1つのコアだけが前記特定のコアは正常であると判定し、前記少なくとも3つ以上のコア中の他のコアが前記特定のコアは故障であると判定した場合は、正常であると判定したコアと前記特定のコアとの両方に故障が生じていると判断することを特徴とする請求項4から12記載の車両制御用マルチコアシステム。
  14. 前記車両の運転モードを少なくとも2つ以上規定する運転モード切替手段を持ち、前記運転モード切替手段によって前記運転モードが変更されたときは、前記コア故障判断を所定時間行わないことを特徴とする請求項1から13いずれかに記載の車両制御用マルチコアシステム。
  15. 前記車両制御用マルチコアシステムは、前記演算処理手段に使用する少なくとも1つ以上の入力値を検出し、前記コア故障判断手段は、前記入力値のいずれかまたは複数に関して、特定の入力タイミングの入力値と、前記特定の入力タイミングより前の入力タイミングの入力値との差分が所定の範囲内にあるかどうかを判定する入力値差分判定手段を備え、前記入力値差分判定手段によって差分が所定の範囲外であると判定されたときには、前記コア故障判断を所定時間行わないことを特徴とする請求項1から14のいずれかに記載の車両制御用マルチコアシステム。
  16. 前記入力値差分判定手段は、少なくとも2回以上のタイミングにおいて得られた入力値の移動平均値を計算し、前記入力値の移動平均値と、前記特定の入力タイミングにおける入力値との差分が所定の範囲内にあるかどうかを判定することを特徴とする請求項15に記載の車両制御用マルチコアシステム。
  17. 前記入力値差分判定手段の判定に用いる所定の範囲は、前記入力値の移動平均値に基づいて求めることを特徴とする請求項16に記載の車両制御用マルチコアシステム。
  18. 前記演算処理手段が前記複数のコアに割り当てられて、
    演算処理を行うタイミングは、
    前記機器の動作に同期して決定することを特徴とする請求項1から17いずれかに記載の車両制御用マルチコアシステム。
  19. 内燃機関を制御するための複数のコアを備えた内燃機関の制御装置であって、連続的に変化する入力値を取得し、前記内燃機関の制御に必要な出力値を演算する演算処理手段を備え、前記演算処理手段が前記複数のコア中の特定のコアにおいて特定のタイミングで演算処理を行った出力値と、
    前記特定のコアとは異なる、前記複数のコア中の他のコアにおいて、
    前記演算処理手段が前記特定のタイミングとは異なるタイミングで演算処理を行った出力値と、の比較を行い、前記特定のコアに故障が生じていると判断するコア故障判断手段を備えることを特徴とする内燃機関の制御装置。
  20. 前記コア故障判断手段は、
    前記演算処理手段の演算処理が実行されるコアが切り替わることによって、
    前記演算処理手段の出力値の連続性が失われたときに、
    前記特定のコアに故障が生じていると判断する
    ことを特徴とする請求項19に記載の内燃機関の制御装置。
  21. 前記演算処理手段を分割し、実行されるタイミングによって
    演算処理が実行されるコアが切り替わるように前記複数のコアに割り当てる、
    演算処理割り当て手段を備え、
    前記演算処理割り当て手段は、
    前記演算処理手段を前記複数のコアに割り当てるタイミングを、
    前記内燃機関の動作に同期して決定することを特徴とする請求項19または20いずれかに記載の内燃機関の制御装置。
JP2008303369A 2008-11-28 2008-11-28 車両制御用マルチコアシステムまたは内燃機関の制御装置 Expired - Fee Related JP4709268B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2008303369A JP4709268B2 (ja) 2008-11-28 2008-11-28 車両制御用マルチコアシステムまたは内燃機関の制御装置
US12/625,266 US8417990B2 (en) 2008-11-28 2009-11-24 Multi-core processing system for vehicle control or an internal combustion engine controller
EP09177078A EP2192489B1 (en) 2008-11-28 2009-11-25 Multi-core processing system for vehicle control or an internal combustion engine controller
AT09177078T ATE545086T1 (de) 2008-11-28 2009-11-25 Multi-core-verarbeitungssystem zur fahrzeugsteuerung oder eine verbrennungsmotorsteuerung

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008303369A JP4709268B2 (ja) 2008-11-28 2008-11-28 車両制御用マルチコアシステムまたは内燃機関の制御装置

Publications (2)

Publication Number Publication Date
JP2010126012A JP2010126012A (ja) 2010-06-10
JP4709268B2 true JP4709268B2 (ja) 2011-06-22

Family

ID=41718918

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008303369A Expired - Fee Related JP4709268B2 (ja) 2008-11-28 2008-11-28 車両制御用マルチコアシステムまたは内燃機関の制御装置

Country Status (4)

Country Link
US (1) US8417990B2 (ja)
EP (1) EP2192489B1 (ja)
JP (1) JP4709268B2 (ja)
AT (1) ATE545086T1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10430301B2 (en) 2016-03-14 2019-10-01 Electronics And Telecommunications Research Institute Processor system and fault detection method thereof

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102562798B (zh) 2010-06-01 2016-08-03 日本精工株式会社 滑动装置
US20120221884A1 (en) * 2011-02-28 2012-08-30 Carter Nicholas P Error management across hardware and software layers
JP5341957B2 (ja) * 2011-07-20 2013-11-13 トヨタ自動車株式会社 内燃機関の制御装置
CN103797235B (zh) * 2011-09-12 2017-02-15 丰田自动车株式会社 内燃机的控制装置
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 연세대학교 산학협력단 멀티코어 장치, 테스트 장치 및 고장 진단 방법
US9135126B2 (en) * 2013-02-07 2015-09-15 International Business Machines Corporation Multi-core re-initialization failure control system
JP6268071B2 (ja) * 2014-09-17 2018-01-24 日立オートモティブシステムズ株式会社 電子制御装置
JP2016125436A (ja) * 2015-01-07 2016-07-11 日立オートモティブシステムズ株式会社 エンジン制御システム
JP6393628B2 (ja) * 2015-01-21 2018-09-19 日立オートモティブシステムズ株式会社 車両制御装置
US9694765B2 (en) * 2015-04-20 2017-07-04 Hitachi, Ltd. Control system for an automotive vehicle
JP2017033236A (ja) * 2015-07-31 2017-02-09 日立オートモティブシステムズ株式会社 車両制御装置
DE102015222321A1 (de) * 2015-11-12 2017-05-18 Siemens Aktiengesellschaft Verfahren zum Betrieb eines Mehrkernprozessors
DE102017201032A1 (de) * 2017-01-23 2018-05-03 Zf Friedrichshafen Ag Redundante Prozessorarchitektur
US10672206B2 (en) * 2017-12-11 2020-06-02 GM Global Technology Operations LLC Systems, methods and apparatuses for diagnostic fault detection by parameter data using a redundant processor architecture
US11475723B2 (en) * 2017-12-29 2022-10-18 Robert Bosch Gmbh Determining a fault in an electronic controller
US20190243698A1 (en) * 2018-02-02 2019-08-08 Robert Bosch Gmbh Electronic Control Unit for Flexible Replacement of Replaceable Components in a Vehicle
US11106205B2 (en) 2018-09-18 2021-08-31 Raytheon Technologies Corporation Vehicle control with functional redundancy
US11520297B2 (en) * 2019-03-29 2022-12-06 Intel Corporation Enhancing diagnostic capabilities of computing systems by combining variable patrolling API and comparison mechanism of variables
JP7306865B2 (ja) * 2019-04-19 2023-07-11 日立Astemo株式会社 演算装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006164277A (ja) * 2004-12-02 2006-06-22 Robert Bosch Gmbh プロセッサにおけるエラー除去装置および方法,プロセッサ
JP2006260568A (ja) * 2005-03-15 2006-09-28 Intel Corp アクティブ及び非アクティブ実行コアを有するマルチコアプロセッサ
JP2008010959A (ja) * 2006-06-27 2008-01-17 Yokogawa Electric Corp 信号処理装置及び信号処理方法
JP2008518296A (ja) * 2004-10-25 2008-05-29 ローベルト ボッシュ ゲゼルシャフト ミット ベシュレンクテル ハフツング 少なくとも2つの実行ユニットを備えるコンピュータシステムで切換をする方法及び装置
JP2008257589A (ja) * 2007-04-06 2008-10-23 Toyota Motor Corp プロセッサ異常監視機能を備えたマルチプロセッサシステム
JP2009516277A (ja) * 2005-11-18 2009-04-16 ローベルト ボッシュ ゲゼルシャフト ミット ベシュレンクテル ハフツング 少なくとも2つのレジスタ付き処理ユニットを有するシステムにおいてエラーを除去する装置および方法

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5012409A (en) * 1988-03-10 1991-04-30 Fletcher Mitchell S Operating system for a multi-tasking operating environment
CA1327838C (fr) * 1988-06-13 1994-03-15 Fred Zacouto Dispositif implantable de protection contre les affections liees a la coagulation sanguine
JPH07120294B2 (ja) 1988-10-24 1995-12-20 株式会社日立製作所 フオールトトレラント方法及びシステム
JPH03196232A (ja) 1989-12-25 1991-08-27 Nec Corp マルチプロセッサ及びその異常診断方法
JPH04370713A (ja) * 1991-05-13 1992-12-24 General Electric Co <Ge> 複数個の冗長なセンサ信号から有効な信号を選択する装置と方法
JPH0773059A (ja) * 1993-03-02 1995-03-17 Tandem Comput Inc フォールトトレラント型コンピュータシステム
JPH06332874A (ja) 1993-05-24 1994-12-02 Fujitsu Ltd テストプログラム起動方法
JPH0916535A (ja) 1995-06-27 1997-01-17 Mitsubishi Electric Corp マルチプロセッサ計算機
US6609031B1 (en) * 1996-06-07 2003-08-19 Advanced Neuromodulation Systems, Inc. Multiprogrammable tissue stimulator and method
US6735474B1 (en) * 1998-07-06 2004-05-11 Advanced Bionics Corporation Implantable stimulator system and method for treatment of incontinence and pain
GB2373861B (en) * 2001-03-30 2004-07-28 Visteon Global Tech Inc Motor vehicle engine synchronisation
US6928583B2 (en) * 2001-04-11 2005-08-09 Stratus Technologies Bermuda Ltd. Apparatus and method for two computing elements in a fault-tolerant server to execute instructions in lockstep
JP3606281B2 (ja) * 2002-06-07 2005-01-05 オムロン株式会社 プログラマブルコントローラ及びcpuユニット並びに特殊機能モジュール及び二重化処理方法
EP1398699A1 (de) * 2002-09-12 2004-03-17 Siemens Aktiengesellschaft Verfahren zur Ereignissynchronisation, insbesondere für Prozessoren fehlertoleranter Systeme
US7200443B2 (en) * 2003-10-07 2007-04-03 John Faul Transcutaneous electrical nerve stimulator for appetite control
US8214047B2 (en) * 2004-09-27 2012-07-03 Advanced Neuromodulation Systems, Inc. Method of using spinal cord stimulation to treat gastrointestinal and/or eating disorders or conditions
US20070294559A1 (en) * 2004-10-25 2007-12-20 Thomas Kottke Method and Device for Delaying Access to Data and/or Instructions of a Multiprocessor System

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008518296A (ja) * 2004-10-25 2008-05-29 ローベルト ボッシュ ゲゼルシャフト ミット ベシュレンクテル ハフツング 少なくとも2つの実行ユニットを備えるコンピュータシステムで切換をする方法及び装置
JP2006164277A (ja) * 2004-12-02 2006-06-22 Robert Bosch Gmbh プロセッサにおけるエラー除去装置および方法,プロセッサ
JP2006260568A (ja) * 2005-03-15 2006-09-28 Intel Corp アクティブ及び非アクティブ実行コアを有するマルチコアプロセッサ
JP2009516277A (ja) * 2005-11-18 2009-04-16 ローベルト ボッシュ ゲゼルシャフト ミット ベシュレンクテル ハフツング 少なくとも2つのレジスタ付き処理ユニットを有するシステムにおいてエラーを除去する装置および方法
JP2008010959A (ja) * 2006-06-27 2008-01-17 Yokogawa Electric Corp 信号処理装置及び信号処理方法
JP2008257589A (ja) * 2007-04-06 2008-10-23 Toyota Motor Corp プロセッサ異常監視機能を備えたマルチプロセッサシステム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10430301B2 (en) 2016-03-14 2019-10-01 Electronics And Telecommunications Research Institute Processor system and fault detection method thereof

Also Published As

Publication number Publication date
JP2010126012A (ja) 2010-06-10
US20100138693A1 (en) 2010-06-03
ATE545086T1 (de) 2012-02-15
US8417990B2 (en) 2013-04-09
EP2192489A1 (en) 2010-06-02
EP2192489B1 (en) 2012-02-08

Similar Documents

Publication Publication Date Title
JP4709268B2 (ja) 車両制御用マルチコアシステムまたは内燃機関の制御装置
JP5867495B2 (ja) 電子制御装置
JPH05147477A (ja) 自動車の制御装置
JP5316128B2 (ja) 故障診断システム、電子制御ユニット、故障診断方法
JP5515792B2 (ja) 内燃機関制御装置
US20180259577A1 (en) Electronic control apparatus and method
EP2910759A1 (en) Torque control device for vehicle
JP2003323353A (ja) メモリ診断装置及び制御装置
KR20070068405A (ko) 가변 클록 속도를 갖는 데이터 처리 시스템
JP2012218467A (ja) 電子制御装置
US8954794B2 (en) Method and system for detection of latent faults in microcontrollers
JP5226653B2 (ja) 車載制御装置
JP5978873B2 (ja) 電子制御装置
JP6094387B2 (ja) 制御装置
JP4820679B2 (ja) 車両用電子制御装置
JP4664367B2 (ja) 機能モジュールの管理システムを動作させる方法
JP6466269B2 (ja) 電子制御装置及びスタック領域の使用監視方法
US9740584B2 (en) Method and device for testing a computer core in a processor having at least two computer cores
JPH0717337A (ja) 電子制御ユニットの故障判定方法及び故障判定装置
JP6771272B2 (ja) 車載電子制御装置及びスタック使用方法
CN103423011A (zh) 半导体数据处理装置和引擎控制装置
JPH06305376A (ja) 車輌用制御装置
JPH1131011A (ja) 電子制御システムの故障検出装置
JP2009282849A (ja) マイクロコンピュータ
JP2021152338A (ja) 制御装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100908

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100908

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101109

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110104

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110317

R150 Certificate of patent or registration of utility model

Ref document number: 4709268

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

LAPS Cancellation because of no payment of annual fees