JP6381490B2 - 車載電子制御装置 - Google Patents

車載電子制御装置 Download PDF

Info

Publication number
JP6381490B2
JP6381490B2 JP2015135522A JP2015135522A JP6381490B2 JP 6381490 B2 JP6381490 B2 JP 6381490B2 JP 2015135522 A JP2015135522 A JP 2015135522A JP 2015135522 A JP2015135522 A JP 2015135522A JP 6381490 B2 JP6381490 B2 JP 6381490B2
Authority
JP
Japan
Prior art keywords
vehicle data
backup
data
vehicle
sub
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
JP2015135522A
Other languages
English (en)
Other versions
JP2017013760A (ja
JP2017013760A5 (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 JP2015135522A priority Critical patent/JP6381490B2/ja
Publication of JP2017013760A publication Critical patent/JP2017013760A/ja
Publication of JP2017013760A5 publication Critical patent/JP2017013760A5/ja
Application granted granted Critical
Publication of JP6381490B2 publication Critical patent/JP6381490B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)

Description

本発明は、車両に搭載される車載電子制御装置に関する。
近年の車両は、当該車両またはその構成要素の動作を制御する電子制御装置を搭載している。車載電子制御装置は、制御対象の故障を検出すると、その故障を表す故障コードを半導体メモリ(例えば、バックアップRAM(Random Access Memory)、EEPROM(Electrically Erasable Programmable Read Only Memory)など)に記憶させる。バックアップRAMは、SRAM(Static RAM)の一種であり、車両のバッテリが接続されていれば常時電圧が供給されるように構成された揮発性メモリである。EEPROMは、不揮発性メモリである。
法規によれば、故障コードをイグニションサイクル(車両のイグニションスイッチがオンされてからオフされるまで、あるいはオンされてから次にオンされるまで)の終わりまでに、永久故障コードとして記憶させることが規定されている。車載電子制御装置は、その規定を満足するため、揮発性メモリに故障コードを記憶させた後、その故障コードと同じコードを不揮発性メモリに保存している。
上記のような永久故障コードのバックアップを実施しているのは、揮発性メモリに記憶された故障コードが不正に消去されたり、何らかの原因で故障コードが消去されたりする可能性があることに鑑みたものである。例えば、(a)車両のバッテリが取り外される、(b)車両のイグニションスイッチをオンした際のバッテリ電圧の瞬間的な低下などにより揮発性メモリに電圧が供給されなくなる、(c)揮発性メモリに異常が生じてその揮発性メモリが初期化される、などが発生した場合、揮発性メモリに記憶された故障コードは消失する。不揮発性メモリに故障コードを記憶させておけば、このような場合であっても故障コードを読み出すことができる。
下記特許文献1は、上記のように揮発性メモリと不揮発性メモリに記憶されるデータの信頼性を確保する技術について開示している。同文献においては、SRAM内に、PDTC(永久故障コード)記憶領域と同じ情報を記憶するためのミラー領域、およびSRAMの更新状態を表す更新情報を記憶する更新情報記憶領域を設ける。故障が検出されると、DTC(故障コード)をミラー領域およびDTC記憶領域に記憶させて両者の整合を図るとともに、更新情報を書き換える。更新情報に基づき、ミラー領域とDTC記憶領域との間の整合性が確保されていることを確認したうえで、ミラー領域の情報をPDTC記憶領域に複製する。更新情報に基づきミラー領域の情報が削除されたと判断した場合は、PDTC記憶領域の情報をミラー領域に複製する。これにより、信頼性が確保される。
特開2009−067298号公報
上記特許文献1記載の技術は、常時電源が供給されており、不揮発性メモリに対して常に正常なアクセス(書き込みまたは消去)がなされた場合を前提としている。しかし実際の車両においては、不揮発性メモリに対してアクセスしているとき、バッテリの取り外しや車両のイグニションスイッチオンなどにより瞬間的な電圧低下が起こると、バックアップRAMが格納しているデータは破壊され、さらにそのときアクセスしている不揮発性メモリのアドレス上のデータも破壊される。そうすると、同文献における揮発性メモリと不揮発性メモリとの間の整合性を確保する機構は、故障コードを確実に保存することができない可能性があると考えられる。
本発明は、上記のような課題に鑑みてなされたものであり、揮発性メモリと、その揮発性メモリをバックアップする不揮発性メモリを備えた車載電子制御装置において、記憶すべきデータを確実に保存することを目的とする。
本発明に係る車載電子制御装置は、車両データとそのバックアップを相互照合することにより正しい車両状態を判定し、判定できない場合は更新データとそのバックアップを相互照合することにより正しい車両状態を判定する。
本発明に係る車載電子制御装置によれば、揮発性メモリと不揮発性メモリとの間のデータ整合を図るとともに、記憶すべきデータを確実に保存することができる。
上記した以外の課題、構成、および効果については、以下の実施形態の説明により明らかにされるであろう。
本発明に係る火花点火内燃機関とその電子制御装置(エンジンコントロールユニット9)の基本構成図である。 エンジンコントロールユニット9の構成を示す図である。 各メモリが格納するデータの構成を示す図である。 エンジンコントロールユニット9の全体動作を示すフローチャートである。 ステップS401の詳細を説明するフローチャートである。 ステップS509の詳細を説明するフローチャートである。 ステップS407の詳細を説明するフローチャートである。
図1は、本発明に係る火花点火内燃機関とその電子制御装置(エンジンコントロールユニット9)の基本構成図である。以下では、筒内噴射式火花点火内燃機関を例として説明するが、ポート噴射式火花点火内燃機関、筒内噴射とポート噴射の両方を備えたデュアル噴射式火花点火内燃機関、あるいはその他機器を制御する電子制御装置においても、本発明に係る構成を適用することができる。
エンジン1は、ピストン2、吸気バルブ3、排気バルブ4を備える。吸気は、空気流量計(AFM)18を通過して絞り弁17に入り、分岐部であるコレクタ14より吸気管10、吸気バルブ3を介してエンジン1の燃焼室19に供給される。燃料は、燃料噴射弁5から、エンジン1の燃焼室19に噴射供給され、点火コイル7、点火プラグ6で点火される。燃焼後の排気ガスは、排気バルブ4を介して排気管11に排出される。排気管11には排気ガス浄化のための三元触媒12が備えられている。
エンジンコントロールユニット9には、エンジン1のクランク角度センサ15の信号、AFM18の空気量信号、排気ガス中の空燃比を検出する空燃比センサ13の信号、アクセル開度センサ20のアクセル開度、などの信号が入力される。エンジンコントロールユニット9は、アクセル開度センサ20の信号からエンジンへの要求トルクの算出、アイドル状態の判定などを実施し、エンジン1に必要な吸入空気量を算出し、それに見合った開度信号を絞り弁17に出力する。またエンジンコントロールユニット9は、燃料噴射弁5に対して燃料噴射信号を出力し、点火プラグ6へは点火信号を出力する。
エンジン1に取り付けられたノックセンサ8は、エンジン1の異常燃焼時に発生する異音(ノッキング)を検出し、エンジンコントロールユニット9はこれに基づき点火信号をフィードバック制御する。
図2は、エンジンコントロールユニット9の構成を示す図である。エンジンコントロールユニット9は、外部不揮発性メモリ(外部EEPROM)209とマイクロコンピュータ210を備える。マイクロコンピュータ210はさらに、入出力インタフェース(I/F)205、外部通信インタフェース(I/F)206、RAM203、不揮発性メモリ(ROM)202、内部不揮発性メモリ(内部EEPROM)204、内部通信インタフェース(I/F)207、CPU201を備え、これらの要素はバス208を介して互いに接続されている
入出力I/F205は、センサ211とアクチュエータ212に接続されている。外部通信I/F206は、外部通信バス215を介して、外部装置214との間で信号を送受信する。RAM203は、一時的情報を記憶する揮発性メモリである。ROM202は、制御プログラムおよび各種制御設定を記憶する不揮発性メモリである。内部不揮発性メモリ204は、マイクロコンピュータ210が内蔵しているメモリであり、制御用学習値や故障コードなどの永続的に記憶すべきデータを記憶する。内部通信I/F207は、外部不揮発性メモリ209に接続されている。CPU201は、各機能部を制御する。外部不揮発性メモリ209は、内部通信I/F207を介してマイクロコンピュータ210に接続されている。
CPU201は、入出力I/F205を通じてセンサ211から入力情報を取り込み、ROM202に保存された制御プログラムにしたがって、各制御および診断などを実行する。演算結果および入力情報はRAM203に一時保管されるとともに、演算結果に応じて、入出力I/F205を通じてアクチュエータ212の制御に用いられる。
CPU201は、ROM202に保存された診断プログラムにしたがって、各種制御の診断を実施するとともに、診断結果により得られた故障コードをRAM203と外部EEPROM209に保存する。
さらにCPU201は、ROM202に保存された学習プログラムにしたがって、各種制御の学習値を演算し、その学習値をRAM203と外部EEPROM209に保存する。加えてCPU201は、外部EEPROM209と同様に内部EEPROM204にも故障コードや学習値を保存する。
図3は、各メモリが格納するデータの構成を示す図である。以下図3を用いて、各メモリが有する記憶領域および記憶領域が格納するデータについて説明する。
RAM203は、車両データ保存領域301と今回カウント保存領域302を有する。車両データ保存領域301は、車両の状態を表す状態値(例えば故障コード、学習値など)を保持する車両データを記憶する。図3においては車両データ1と車両データ2を例示しているが、同領域が記憶する車両データの個数はこれに限らない。その他記憶領域についても同様である。今回カウント保存領域302は、車両データ保存領域301が格納する車両データの更新状態を表す更新データを記憶する。例えば車両データの更新回数を更新データとすることができる。以下に説明するその他更新データも同様である。
外部EEPROM209は、メイン領域303(A面)とサブ領域304(B面)を有する。メイン領域303は、車両データ保存領域301と同じデータを車両データ保存領域301のバックアップとして記憶する。サブ領域304は、メイン領域303と同じデータをメイン領域303の予備として記憶する。
内部EEPROM204は、メイン完了カウント保存領域306(A面)、サブ完了カウント保存領域307(B面)、今回カウント保存領域305を有する。メイン完了カウント保存領域306は、メイン領域303の更新状態を表すメイン更新データを記憶する。サブ完了カウント保存領域307は、サブ領域304の更新状態を表すサブ更新データを記憶する。今回カウント保存領域305は、今回カウント保存領域302と同じデータを今回カウント保存領域302のバックアップとして記憶する。
図4は、エンジンコントロールユニット9の全体動作を示すフローチャートである。エンジンコントロールユニット9は、例えば車両のイグニッションスイッチがONされると本フローチャートを開始する。以下図4の各ステップについて説明する。
(図4:ステップS401)
CPU201は、後述の図5で説明するEEPROM読み出し処理を実施する。
(図4:ステップS402〜S403)
CPU201は、RAM203が有する車両データ保存領域301をクリアするよう指示するコマンドを受け取ったか否かを判定する(S402)。受け取ったと判定した場合は車両データ保存領域301をクリアし(S403)、ステップS406へ進む。受け取っていないと判定した場合はステップS404へ進む。
(図4:ステップS404〜S405)
CPU201は、RAM203が格納しているデータを外部EEPROM209に対してバックアップすべき要因を検出したか否かを判定する(S404)。バックアップ要因を検出した場合は、バックアップ対象となっている車両データをRAM203(車両データ保存領域301)に保存し(S405)、ステップS406へ進む。バックアップ要因を検出しなかった場合は、ステップS405をスキップしてステップS406へ進む。
(図4:ステップS406〜S407)
CPU201は、イグニッションスイッチがOFFされたか否かを判定する(S406)。OFFされた場合は、後述の図7で説明するEEPROM書き込み処理を実施する(S407)。イグニッションスイッチがOFFされていない場合は、ステップS402へ戻って同様の処理を繰り返す。
図5は、ステップS401の詳細を説明するフローチャートである。本フローチャートにおいては、外部EEPROM209から車両データを読み出すとともに、RAM203が格納している車両データと外部EEPROM209が格納している車両データを相互照合することにより、これらデータ間の整合性を維持するための処理を実施する。以下図5の各ステップについて説明する。
(図5:ステップS501)
CPU201は、外部EEPROM209のメイン領域303(A面)とサブ領域304(B面)それぞれから、所定の単位(例えば1Byte)で車両データを読み出す。
(図5:ステップS502)
CPU201は、ステップS501で読み出したメイン領域303の車両データとサブ領域304の車両データが互いに一致するか否かを判定する。一致する場合はステップS503へ進み、一致しない場合はステップS505へ進む。
(図5:ステップS503)
CPU201は、ステップS501で読み出したメイン領域303の車両データと、これに対応するRAM203の車両データ保存領域301内に格納されている車両データとが、互いに一致するか否かを判定する。一致した場合は本フローチャートを終了する。一致しない場合はステップS504へ進む。
(図5:ステップS504)
CPU201は、メイン領域303が格納している車両データを車両データ保存領域301へコピーすることにより車両データ保存領域301を復旧し、本フローチャートを終了する。
(図5:ステップS503〜S504:補足)
メイン領域303、サブ領域304、および車両データ保存領域301全ての車両データが一致する場合、その車両データは正常な値を保持していると想定される。したがってこの場合はステップS504以降の処理は必要ない。これに対し、メイン領域303とサブ領域304それぞれが格納している車両データが一致し、車両データ保存領域301が格納している車両データがこれに一致しない場合、前者の車両データは正常であるが車両データ保存領域301が格納している車両データは破損していると想定される。したがってS504において、正しいと想定される車両データを車両データ保存領域301へ復元することとした。S505〜S508も同様の考え方に基づいている。
(図5:ステップS505)
CPU201は、ステップS501で読み出したメイン領域303の車両データと、これに対応するRAM203の車両データ保存領域301内に格納されている車両データとが、互いに一致するか否かを判定する。一致した場合はステップS506へ進み、一致しない場合はステップS507へ進む。
(図5:ステップS506)
CPU201は、車両データ保存領域301が格納している車両データをサブ領域304へコピーすることによりサブ領域304を復旧し、本フローチャートを終了する。
(図5:ステップS507)
CPU201は、ステップS501で読み出したサブ領域304の車両データと、これに対応する車両データ保存領域301内に格納されている車両データとが、互いに一致するか否かを判定する。一致した場合はステップS508へ進み、一致しない場合はステップS509へ進む。
(図5:ステップS508)
CPU201は、車両データ保存領域301が格納している車両データをメイン領域303へコピーすることによりメイン領域303を復旧し、本フローチャートを終了する。
(図5:ステップS509)
CPU201は、後述の図6で説明するEEPROM正常領域判定処理を実施し、本フローチャートを終了する。
図6は、ステップS509の詳細を説明するフローチャートである。図5のフローチャートにおいて、車両データ保存領域301、メイン領域303、およびサブ領域304を相互照合することによって正しい車両データを決定することができなかった場合、本フローチャートにしたがって、車両データ本体に代えて更新データおよびそのバックアップを相互照合することにより、いずれの車両データが正しいかを判定する。以下図6の各ステップについて説明する。
(図6:ステップS601)
CPU201は、ステップS501で読み出した車両データに対応するメイン完了カウント保存領域306内の更新データ(完了カウントA)と、今回カウント保存領域302内の更新データ(今回カウント)とが、互いに一致するか否かを判定する。一致する場合はステップS602へ進み、一致しない場合はステップS603へ進む。
(図6:ステップS602)
CPU201は、メイン領域303(A面)が格納している車両データを車両データ保存領域301へコピーすることにより車両データ保存領域301を復旧し、本フローチャートを終了する。
(図6:ステップS602:補足)
本フローチャートは、車両データ保存領域301の車両データ、メイン領域303の車両データ、およびサブ領域304の車両データ全てが異なる場合に実施する。したがって本ステップにおいて、車両データ保存領域301の車両データとメイン領域303の車両データは異なるものとなっている。ステップS601において完了カウントAと今回カウントが一致することを確認したので、メイン領域303を主要な記憶領域として用いる前提の下、同領域内の車両データが正しいとみなしてこれを車両データ保存領域301へコピーすることとした。
(図6:ステップS603)
CPU201は、ステップS501で読み出した車両データに対応するメイン完了カウント保存領域306内の更新データ(完了カウントA)と、今回カウント保存領域302内の更新データの前回値(更新回数によって更新データを記述している場合は、今回カウントからカウント値を−1した値、以下同様)とが、互いに一致するか否かを判定する。一致する場合はステップS604へ進み、一致しない場合はステップS607へ進む。
(図6:ステップS604)
CPU201は、ステップS501で読み出した車両データに対応するサブ完了カウント保存領域307内の更新データ(完了カウントB)と、今回カウント保存領域302内の更新データの前回値(今回カウントからカウント値を−1した値)とが、互いに一致するか否かを判定する。一致する場合はステップS605へ進み、一致しない場合はステップS606へ進む。
(図6:ステップS605)
CPU201は、サブ領域304(B面)が格納している車両データを車両データ保存領域301へコピーすることにより車両データ保存領域301を復旧し、本フローチャートを終了する。
(図6:ステップS605:補足)
本フローチャートにおいては、車両データ保存領域301の車両データ、メイン領域303の車両データ、およびサブ領域304の車両データ全てが異なる。また後述の図7で説明するように、CPU201はまずメイン領域303に対して車両データを書き込み、次にメイン完了カウント保存領域306に対して更新データを書き込み、その後サブ領域304に対して車両データを書き込み、次にサブ完了カウント保存領域307に対して更新データを書き込む。これらの前提の下でステップS601、S603、S604の結果を考慮すると、メイン領域303は異常な車両データを保持しており、かつサブ領域304は前回の正常な車両データを保持していると考えられる。そこで本ステップにおいては、正常である可能性が相対的に高いサブ領域304を正しい車両データとして採用し、これを車両データ保存領域301へコピーすることとした。
(図6:ステップS606)
CPU201は、車両データ保存領域301に対してDefault値をコピーすることにより車両データ保存領域301を復旧し、本フローチャートを終了する。
(図6:ステップS606:補足)
本ステップは、メイン完了カウント保存領域306内の更新データ(完了カウントA)、サブ完了カウント保存領域307内の更新データ(完了カウントB)、および今回カウント保存領域302内の更新データ(今回カウント)を相互照合することによっても正しい車両データを決定することができなかった場合に相当する。いずれの車両データが正しいかを判定することができないので、Default値を用いて復旧することとした。後述のステップS615も同様である。
(図6:ステップS607)
CPU201は、ステップS501で読み出した車両データに対応するメイン完了カウント保存領域306内の車両データ(完了カウントA)がFail値であるか否かを判定する。Fail値である場合はステップS608へ進み、Fail値でない場合はステップS611へ進む。Fail値は書き込み失敗を示す値であり、後述の図7で改めて説明する。
(図6:ステップS608)
CPU201は、(a)ステップS501で読み出した車両データに対応するサブ完了カウント保存領域307内の更新データ(完了カウントB)と、今回カウント保存領域302内の更新データ(今回カウント)とが互いに一致するか、または、(b)完了カウントBと、今回カウント保存領域302内の更新データの前回値(今回カウントからカウント値を−1した値)とが互いに一致するかを、判定する。(a)(b)いずれかを満たす場合はステップS609へ進み、(a)(b)いずれも満たさない場合はステップS610へ進む。
(図6:ステップS609)
CPU201は、サブ領域304(B面)が格納している車両データを車両データ保存領域301へコピーすることにより車両データ保存領域301を復旧し、本フローチャートを終了する。
(図6:ステップS610)
CPU201は、車両データ保存領域301に対してDefault値をコピーすることにより車両データ保存領域301を復旧し、本フローチャートを終了する。
(図6:ステップS609〜S610:補足)
S607において完了カウントAがFail値であるため、メイン領域303は正しい車両データを格納していない。したがってS608においてサブ領域304が正しい車両データを格納しているか否かを更新データに基づき判定し、正しければこれを車両データ保存領域301へコピーすることとした。
(図6:ステップS611)
CPU201は、ステップS501で読み出した車両データに対応するサブ完了カウント保存領域307内の更新データ(完了カウントB)と、今回カウント保存領域302内の更新データ(今回カウント)とが、互いに一致するか否かを判定する。一致する場合はステップS612へ進み、一致しない場合はステップS613へ進む。
(図6:ステップS612)
CPU201は、サブ領域304(B面)が格納している車両データを車両データ保存領域301へコピーすることにより車両データ保存領域301を復旧し、本フローチャートを終了する。
(図6:ステップS612:補足)
本ステップに到達した場合、完了カウントAは今回カウントとも今回カウント−1とも一致せず(S601およびS603において“N”)、かつFail値でもないことになる(S607において“N”)。この場合、メイン領域303が格納している車両データは信頼性が低い可能性がある。かかる前提の下、ステップS611の結果によりサブ領域304の信頼性が高い可能性があると判定できるので、本ステップにおいてサブ領域304を正しい車両データとして採用することとした。
(図6:ステップS613)
CPU201は、ステップS501で読み出した車両データに対応するサブ完了カウント保存領域307内の更新データ(完了カウントB)と、今回カウント保存領域302内の更新データの前回値(今回カウントからカウント値を−1した値)とが、互いに一致するか否かを判定する。一致する場合はステップS614へ進み、一致しない場合はステップS615へ進む。
(図6:ステップS614)
CPU201は、メイン領域303(A面)が格納している車両データを車両データ保存領域301へコピーすることにより車両データ保存領域301を復旧し、本フローチャートを終了する。
(図6:ステップS614:補足)
本ステップに到達した場合、完了カウントAは今回カウントとも今回カウント−1とも一致せず(S601およびS603において“N”)、かつFail値でもないことになる(S607において“N”)。この場合、ステップS613において完了カウントBが今回カウント−1と一致したのであれば、メイン領域303に対して車両データを書き込み完了しているがメイン完了カウント保存領域306に対する書き込み途中でエラーが発生し、したがって完了カウントAが異常であるとともに完了カウントBが前回値と一致していると考えられる。かかる場合はメイン領域303が格納している車両データは正常であると考えられるので、本ステップにおいてメイン領域303を正しい車両データとして採用することとした。
(図6:ステップS615)
CPU201は、車両データ保存領域301に対してDefault値をコピーすることにより車両データ保存領域301を復旧し、本フローチャートを終了する。
図7は、ステップS407の詳細を説明するフローチャートである。本フローチャートにおいては、今回カウントを更新するとともに、車両データとその完了カウントをそれぞれ外部EEPROM209と内部EEPROM204に対して書き込む。以下図7の各ステップについて説明する。
(図7:ステップS701〜S702)
CPU201は、今回カウント保存領域302の今回カウントのカウント値をインクリメントして同領域に格納する(S701)。CPU201は、ステップS701で保存した今回カウントを今回カウント保存領域305に書き込む(S702)。
(図7:ステップS703)
CPU201は、EEPROMに対して書き込むべき車両データを書き込み完了したか否かを判定する。書き込み未完了である場合はステップS704へ進み、書き込み完了した場合は本フローチャートを終了する。
(図7:ステップS704)
CPU201は、車両データ保存領域301内の車両データをメイン領域303(A面)に対して書き込む。
(図7:ステップS705〜S707)
CPU201は、ステップS704においてメイン領域303に対して車両データが正常に書き込まれたか否かを判断する(S705)。正常に書き込まれたと判断した場合は、ステップS704で書き込んだ車両データに対応する更新データ(完了カウントA)として、メイン完了カウント保存領域306に対してステップS701と同じ今回カウント値を書き込み(S706)、ステップS708へ進む。正常に書き込まれなかったと判断した場合、ステップS704で書き込んだ車両データに対応する更新データ(完了カウントA)として、メイン完了カウント保存領域306に対してFail値を書き込み(S707)、ステップS708へ進む。
(図7:ステップS708)
CPU201は、車両データ保存領域301内の車両データをサブ領域304(B面)に対して書き込む。
(図7:ステップS709〜S711)
CPU201は、ステップS708においてサブ領域304に対して車両データが正常に書き込まれたか否かを判断する(S709)。正常に書き込まれたと判断した場合は、ステップS708で書き込んだ車両データに対応する更新データ(完了カウントB)として、サブ完了カウント保存領域307に対してステップS701と同じ今回カウント値を書き込み(S710)、ステップS703へ戻る。正常に書き込まれなかったと判断した場合、ステップS708で書き込んだ車両データに対応する更新データ(完了カウントB)として、サブ完了カウント保存領域307に対してFail値を書き込み(S711)、ステップS703へ戻る。
<本発明のまとめ>
本発明に係るエンジンコントロールユニット9は、車両データ保存領域301が格納している車両データ、メイン領域303が格納している車両データ、およびサブ領域304が格納している車両データを相互照合することにより、正しい車両データを判定する。正しい車両データを判定できない場合はさらに、今回カウント、完了カウントA、および完了カウントBを相互照合することにより、正しい車両データを判定する。これにより、例えば外部EEPROM209に対してアクセスしているとき瞬間的な電圧低下などによってデータが破損したとしても、RAM203と外部EEPROMとの間のデータ整合を確保するとともに、記憶すべきデータを確実に復旧することができる。
本発明に係るエンジンコントロールユニット9は、車両データ保存領域301が格納している車両データ、メイン領域303が格納している車両データ、およびサブ領域304が格納している車両データの全てが一致しない場合であっても、今回カウント、完了カウントA、および完了カウントBを用いて正しい車両データを判定する。これにより、例えばデータ破損に起因して車両データを相互照合するのみによっては正しい車両データを判定できない場合であっても、正しい車両データをA面またはB面から取り出してこれを復旧することができる。またデータが完全に破壊されたような場合であっても、Default値を用いて復旧することにより、制御を継続することができる。
本発明に係るエンジンコントロールユニット9は、メイン領域303またはサブ領域304に対して車両データを正常に書き込むことができなかった場合は、その旨を示すFail値を完了カウントAまたは完了カウントBとして書き込む。これにより、外部EEPROM209からRAM203に対して車両データを復旧する際に、破損している車両データを回避して正しい車両データを復旧させることができる。
本発明に係るエンジンコントロールユニット9は、内部EEPROM204の今回カウント保存領域305に今回カウントを格納するとともに、RAM203の今回カウント保存領域302にも今回カウントを格納する。これにより、いずれか一方のみに対して今回カウントを格納する場合と比較して、今回カウントの信頼性を高めることができる。特にこれらを格納する記憶媒体はそれぞれ不揮発性メモリ(内部EEPROM204)と揮発性メモリ(RAM203)であり記憶媒体が異なるので、より信頼性を高めることができる。
<本発明の変形例について>
本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。
以上の実施形態においては、揮発性メモリとしてRAM203を備え、RAM203上に車両データ保存領域301と今回カウント保存領域302を設けているが、揮発性メモリを複数設けてこれら領域をそれぞれ異なる揮発性メモリ上に配置することもできる。さらには各揮発性メモリがこれら2つの領域を有し、各揮発性メモリが同じデータを保存するように構成することもできる。これら揮発性メモリが格納しているデータを相互参照することにより、データの信頼性を高めることができる。
以上の実施形態においては、不揮発性メモリとして外部EEPROM209と内部EEPROM204を用いているが、単一の揮発性メモリの記憶領域を分割して同様の領域構成を設けることもできる。データの信頼性の観点からは図3で説明したような構成が望ましいが、コスト抑制の観点から単一の不揮発性メモリを用いてもよい。
以上の実施形態においては、車両データ保存領域301、メイン領域303、サブ領域304が相互に同じデータを保持し、正しい車両データをコピーすることによってその他領域を復旧することを説明した(S504、S506,S508など)。これら記憶領域は互いにその他記憶領域のバックアップとしての役割を果たしているので、いずれの車両データをバックアップと称するかは、単なる呼称に過ぎない。
1:エンジン、2:ピストン、3:吸気バルブ、4:排気バルブ、5:燃料噴射弁、6:点火プラグ、7:点火コイル、8:ノックセンサ、9:エンジンコントロールユニット、10:吸気管、11:排気管、12:三元触媒、13:空燃比センサ、14:コレクタ、15:クランク角度センサ、16:シグナルプレート、17:絞り弁、18:AFM、19:燃焼室、20:アクセル開度センサ、201:CPU、202:ROM、203:RAM、204:内部EEPROM、205:入出力I/F、206:外部通信I/F、207:内部通信I/F、208:バス、209:外部EEPROM、210:マイクロコンピュータ、301:車両データ保存領域、302:今回カウント保存領域、303:メイン領域、304:サブ領域、305:今回カウント保存領域、306:メイン完了カウント保存領域、307:サブ完了カウント保存領域。

Claims (5)

  1. 車両の動作を制御する車載電子制御装置であって、
    前記車両の状態を表す状態値を保持する車両データ、および前記車両データの更新状態を表す更新データを記憶する揮発性メモリ、
    前記車両データのバックアップであるメインバックアップ車両データ、前記メインバックアップ車両データの予備であるサブバックアップ車両データ、前記メインバックアップ車両データの更新状態を表すメインバックアップ更新データ、および前記サブバックアップ車両データの更新状態を表すサブバックアップ更新データを記憶する、不揮発性メモリ、
    前記揮発性メモリおよび前記不揮発性メモリに対してデータを格納する制御部、
    を備え、
    前記制御部は、前記車両データ、前記メインバックアップ車両データ、および前記サブバックアップ車両データを相互照合する第1照合処理により正しい前記状態値を決定するとともに、決定された前記状態値とは異なる前記状態値を決定された前記状態値によって上書きし、
    前記制御部は、前記第1照合処理により前記状態値が決定できない場合は、前記更新データ、前記メインバックアップ更新データ、および前記サブバックアップ更新データを相互照合する第2照合処理により正しい前記状態値を決定するとともに、決定された前記状態値とは異なる前記状態値を決定された前記状態値によって上書きする
    ことを特徴とする車載電子制御装置。
  2. 前記制御部は、前記車両データ、前記メインバックアップ車両データ、および前記サブバックアップ車両データの全てが一致せず、かつ前記第2照合処理により前記メインバックアップ車両データを正しい前記状態値として決定した場合は、前記メインバックアップ車両データを前記車両データとして前記揮発性メモリへ複製し、
    前記制御部は、前記車両データ、前記メインバックアップ車両データ、および前記サブバックアップ車両データの全てが一致せず、かつ前記第2照合処理により前記サブバックアップ車両データを正しい前記状態値として決定した場合は、前記サブバックアップ車両データを前記車両データとして前記揮発性メモリへ複製し、
    前記制御部は、前記車両データ、前記メインバックアップ車両データ、および前記サブバックアップ車両データの全てが一致せず、かつ前記第2照合処理により前記メインバックアップ車両データと前記サブバックアップ車両データのいずれも正しい前記状態値ではないと決定した場合は、デフォルト値を前記車両データとして前記揮発性メモリへ複製する
    ことを特徴とする請求項1記載の車載電子制御装置。
  3. 前記制御部は、所定のイベントが発生したとき、前記メインバックアップ車両データと前記サブバックアップ車両データを前記不揮発性メモリに対して書き込み、
    前記制御部は、前記メインバックアップ車両データを前記不揮発性メモリに対して正常に書き込むことができた場合はその旨を表す値を前記メインバックアップ更新データとして前記不揮発性メモリに対して書き込むとともに、前記サブバックアップ車両データを前記不揮発性メモリに対して正常に書き込むことができた場合はその旨を表す値を前記サブバックアップ更新データとして前記不揮発性メモリに対して書き込み、
    前記制御部は、前記メインバックアップ車両データを前記不揮発性メモリに対して正常に書き込むことができなかった場合はその旨を表す値を前記メインバックアップ更新データとして前記不揮発性メモリに対して書き込むとともに、前記サブバックアップ車両データを前記不揮発性メモリに対して正常に書き込むことができなかった場合はその旨を表す値を前記サブバックアップ更新データとして前記不揮発性メモリに対して書き込む
    ことを特徴とする請求項1記載の車載電子制御装置。
  4. 前記制御部は、前記第2照合処理において、前記更新データの前回値である前回更新データを取得し、
    前記制御部は、前記第2照合処理において、前記更新データ、前記前回更新データ、前記メインバックアップ更新データ、および前記サブバックアップ更新データを相互照合することにより、正しい前記状態値を決定する
    ことを特徴とする請求項1記載の車載電子制御装置。
  5. 前記制御部は、所定のイベントが発生したとき、前記更新データのバックアップであるバックアップ更新データを前記不揮発性メモリに対して書き込む
    ことを特徴とする請求項1記載の車載電子制御装置。
JP2015135522A 2015-07-06 2015-07-06 車載電子制御装置 Active JP6381490B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015135522A JP6381490B2 (ja) 2015-07-06 2015-07-06 車載電子制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015135522A JP6381490B2 (ja) 2015-07-06 2015-07-06 車載電子制御装置

Publications (3)

Publication Number Publication Date
JP2017013760A JP2017013760A (ja) 2017-01-19
JP2017013760A5 JP2017013760A5 (ja) 2017-11-09
JP6381490B2 true JP6381490B2 (ja) 2018-08-29

Family

ID=57829701

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015135522A Active JP6381490B2 (ja) 2015-07-06 2015-07-06 車載電子制御装置

Country Status (1)

Country Link
JP (1) JP6381490B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7354631B2 (ja) * 2018-08-10 2023-10-03 株式会社デンソー 電子制御装置、車両用電子制御システム、差分データの整合性判定方法及び差分データの整合性判定プログラム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62213000A (ja) * 1986-03-12 1987-09-18 Hitachi Ltd 測定方式
JP4345860B2 (ja) * 2007-09-14 2009-10-14 株式会社デンソー 車両用記憶管理装置
JP5360216B2 (ja) * 2009-12-22 2013-12-04 トヨタ自動車株式会社 情報管理装置、及び情報管理方法

Also Published As

Publication number Publication date
JP2017013760A (ja) 2017-01-19

Similar Documents

Publication Publication Date Title
US4402057A (en) Method of and apparatus for ensuring correct operation of a microcomputer in the event of power outage
JP4345860B2 (ja) 車両用記憶管理装置
US6678606B2 (en) Tamper detection for vehicle controller
JP4475320B2 (ja) 車両用記憶管理装置
CN108062259B (zh) Mcu内部数据存储ecc处理系统及其处理方法
US20090187305A1 (en) Method of detecting manipulation of a programmable memory device of a digital controller
US6401163B1 (en) Apparatus and method for rewriting data from volatile memory to nonvolatile memory
JPS607569A (ja) デユアル・マイクロプロセツサ多重プロセシング計算システム完全性維持方法および装置
US6430662B1 (en) Method and device for changing memory contents in a control unit, especially of a motor vehicle
JP6381490B2 (ja) 車載電子制御装置
JP3883842B2 (ja) 車両用電子制御装置
JP4475345B2 (ja) 電子制御装置
JP4066499B2 (ja) 電子制御装置,電子制御システムおよび適合判断方法
WO2008099276A1 (en) Vehicle control device
JP6663371B2 (ja) 電子制御装置
JP3644058B2 (ja) 車載エンジンの電子制御装置及びeepromのデータ再書込制御装置
JP2002334024A (ja) 電子制御装置
JP3136994B2 (ja) データ処理装置
JP2019045952A (ja) 車両情報記憶装置
JP2005106059A (ja) エンジン制御モジュールの有効な較正データを再現する方法
JP2006293650A (ja) 車両情報のバックアップ装置
JP4479775B2 (ja) 車両制御装置およびプログラム
JP2011013737A (ja) 電子制御装置
JP5129791B2 (ja) 車両用制御装置
JP6975581B2 (ja) 車両情報記憶装置

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170925

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170925

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180619

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180703

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180731

R150 Certificate of patent or registration of utility model

Ref document number: 6381490

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