説明

車載電子制御装置およびメモリ制御方法

【課題】冗長性を持たせつつ、かつフラッシュROMにデータを即時記憶させる場合であっても、必要なブロック数の増加を抑制する、あるいは低減する
【解決手段】2つのブロックBL−A,BL−Bを内蔵したフラッシュROM5を有し、車載電子制御装置1の電源オン時に、ブロックBL−A,BL−Bの中から選択されたブロック(以下、第1ブロックともいう)の第1記憶領域MR1に記憶されている記憶データをRAM4に記憶させる。その後に、MIL22が点灯すると、MIL22に対応する永久故障コードを、RAM4の第1記憶領域MR3内の永久故障コード記憶領域MRPと、第1ブロックの第1記憶領域MR1とは別に予め設けられた第2記憶領域MR2に記憶させる。そして、車載電子制御装置1のシャットダウン時に、RAM4の第1記憶領域MR3に記憶されているデータを、第1ブロックと異なるブロック内の第1記憶領域MR1に記憶させる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ブロック単位でデータを一括消去した後にデータの記憶を行う不揮発性メモリを有した車載電子制御装置に関する。
【背景技術】
【0002】
車両においては、制御の高度化やサービスの充実を図るために、多数の電子制御装置(ECU)が搭載されている。
従来、電子制御装置(ECU)に搭載される不揮発性メモリとして、8ビットまたは16ビット単位でのデータ記憶が可能なEEPROMが使用されていた。
【0003】
しかし近年、車両制御の高度化等に伴って不揮発性メモリに記憶されるデータが増加し、不揮発性メモリの大容量化のために、電子制御装置にフラッシュROMが内蔵されるようになってきている(例えば、特許文献1,2を参照)。
【0004】
フラッシュROMは、EEPROMに比べて大容量である。しかしフラッシュROMは、記憶されたデータの消去を、数十キロバイトのブロック単位でしか行うことができない。さらにフラッシュROMは、データの記憶を、データ消去済みの記憶領域に数バイト単位でしか行えない上に、一度記憶を行ったブロックを一括消去するまでは、同一の記憶領域にデータを記憶させることができない。
【0005】
このため、フラッシュROMを内蔵した電子制御装置では通常、電子制御装置の電源がオンになったときにフラッシュROMからRAMへデータをコピーして、RAM上でデータを更新する。そして、電子制御装置のシャットダウン時に、RAM上で更新されたデータをフラッシュROMに書き戻す。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2007−172447号公報
【特許文献2】特開2007−179460号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
カリフォルニア州大気資源局(CARB:California Air Resources Board)のOBD(On Board Diagnosis)法規(以下、CARB−OBD法規という)で規定された永久故障コード(PDTC:Permanent Diagnostic Trouble Codes)は、法規上、電子制御装置のシャットダウンまでに不揮発性メモリに記憶できればよいことになっている。尚、永久故障コードとは、車両に搭載の診断装置によって車両に備えられている部品等の異常が検出され、かつその異常の程度から車両のユーザー等に報知する必要がある、と判断される際の異常検出に対応し、車両の外部から消去できないよう規定されたコードである。従って、例えば異常報知ランプ(MIL;Malfuncion Indicator Lamp)を点灯させることが必要となるような異常が生じた場合にはその異常は、永久故障コードとして記憶されるべき、と判断できる。
【0008】
すなわち、上述した、シャットダウン時にRAM上で更新されたデータをフラッシュROMに書き戻す方法(以下、「シャットダウン時書き戻し方法」という)は、CARB−OBD法規の規定に則っている。
【0009】
しかし、永久故障コードに対応した故障が発生した時点で、この故障を示す永久故障コードをフラッシュROMに記憶させようとした場合には、「シャットダウン時書き戻し方法」では対応することができない。「シャットダウン時書き戻し方法」では、電子制御装置のシャットダウンまでフラッシュROMにデータを記憶させることができないからである。
【0010】
この問題に対しては、フラッシュROM内に設けられた複数のブロックのうちの一つを、永久故障コードを即時記憶するための専用記憶領域とすることで解決することができる。
【0011】
さらに、不揮発性メモリにデータを記憶する場合には、不揮発性メモリ内のデータ化けが発生したとしても正しい値に戻すことができるように、「ミラー値を持つ」または「前回の記憶値を持つ」などの冗長性を持たせたブロックが必要となる。
【0012】
従って、「シャットダウン時書き戻し方法」によるシャットダウン時記憶用ブロック、即時記憶用ブロック、さらに、それぞれの冗長確保用ブロック(ミラーあるいは前回値領域)と、都合、最低限4ブロックが必要になることとなる。
【0013】
しかし、電子制御装置の製造コストを低減させるためには、フラッシュROMの記憶容量(ブロック数)を小さくする必要があり、必要以上に記憶容量を増やしたくないという要求がある。
【0014】
したがって、数十〜数百バイトの記憶領域しか必要としない永久故障コードを記憶するために、上述のように数十キロバイトのブロックを最低限4つ用意しなくてはならず、フラッシュROMの記憶容量の低減が困難になるという問題があった。
【0015】
本発明は、こうした問題に鑑みてなされたものであり、冗長性を持たせつつ、かつフラッシュROMにデータを即時記憶させる場合であっても、必要なブロック数の増加を抑制する、あるいは低減することができる技術を提供することを目的とする。
【課題を解決するための手段】
【0016】
上記目的を達成するためになされた請求項1に記載の車載電子制御装置は、ブロック単位でデータを一括消去した後にデータの記憶を行うブロックを少なくとも2つ内蔵した不揮発性メモリを有し、車両に搭載される車載電子制御装置であって、まず第1データ記憶手段が、当該車載電子制御装置の電源オン時に、不揮発性メモリに内蔵されたブロックの中から予め決定された第1ブロック内において予め設定された一括記憶用の記憶領域である第1ブロック第1記憶領域に記憶されている一括記憶データを、不揮発性メモリと異なるメモリである一時記憶メモリに記憶させる。その後に一時記憶手段が、一時記憶メモリにおいて第1データ記憶手段が一括記憶データを記憶した記憶領域を一時記憶用第1記憶領域として、当該車載電子制御装置の動作中に、不揮発性メモリに即時記憶すべきデータとして予め設定された即時記憶用データを記憶するための即時データ記憶条件が成立すると、即時記憶用データを、一時記憶メモリ内の一時記憶用第1記憶領域に記憶させるとともに、即時記憶手段が、即時記憶用データを、第1ブロック内において第1ブロック第1記憶領域とは別に予め設けられた記憶領域である第1ブロック第2記憶領域に記憶させる。そして一括記憶手段が、予め設定された一括記憶条件が成立すると、不揮発性メモリに内蔵されたブロックの中から第1ブロックとは異なるように予め決定された第2ブロックのデータを一括消去した後に、一時記憶メモリ内の一時記憶用第1記憶領域に記憶されているデータを第2ブロック内において予め設定された一括記憶用の記憶領域である第2ブロック第1記憶領域に一括記憶させる。
【0017】
このように構成された車載電子制御装置では、第1ブロックの第1ブロック第1記憶領域に記憶されている記憶データを一時記憶メモリに記憶させ、さらに、即時記憶用データを一時記憶メモリ内の一時記憶用第1記憶領域に記憶させた後に一括記憶条件が成立すると、一時記憶メモリ内の一時記憶用第1記憶領域に記憶されているデータを第2ブロックに記憶させる。すなわち、第1ブロックは、一時記憶手段が一時記憶メモリに即時記憶用データを記憶させる「前」の状態であり、第2ブロックは、一時記憶手段が一時記憶メモリに即時記憶用データを記憶させた「後」の状態となる。つまり、第1ブロックと第2ブロックとにはそれぞれ、データ更新前とデータ更新後のデータが記憶されている。
【0018】
このため、第2ブロックでデータ化けなどが発生したとしても、第1ブロックのデータを用いて正しい値に戻すことができるようにするための冗長性が確保されている。
また即時記憶手段は、即時データ記憶条件が成立すると、即時記憶用データを、第1ブロック内において第1ブロック第1記憶領域とは別に予め設けられた第1ブロック第2記憶領域に記憶させる。すなわち、即時データ記憶条件が成立する毎に、即時記憶用データを不揮発性メモリに記憶させることができる。なお、第1ブロック第2記憶領域は第1ブロック内に設けられているため、即時記憶用データを不揮発性メモリに即時記憶するために、即時記憶専用のブロックとその冗長データを記憶するためのブロックとを設ける必要がない。
【0019】
以上より、請求項1に記載の車載電子制御装置によれば、冗長性を確保するために最低2つのブロックを用意すれば、即時記憶のための専用のブロックを設けることなく、不揮発性メモリにデータを即時に記憶させることができる。
【0020】
なお、請求項1に記載の車載電子制御装置において、上記の一括記憶条件を、「当該車載電子制御装置がシャットダウンする時であること」とすると、車載電子制御装置の制御動作中に、不揮発性メモリのブロックへ一括した記憶が実施されない。このため、車載電子制御装置の制御動作中に不揮発性メモリへ一括したデータ記憶をする場合と比較して処理負荷を減らすことができ、車載電子制御装置の制御処理速度を向上させることができる。
【0021】
また、上記の一括記憶条件を、「車両が予め設定された所定走行距離を走行したこと」または「予め設定された所定時間が経過したこと」とすると、車載電子制御装置の制御動作中に予期しないCPUリセットが発生しても、所定走行距離を走行した後または所定時間が経過した後の学習値が一括記憶されているため、車載電子制御装置の電源オン時の値に戻らない。このため、CPUリセットが発生するまでに行われた制御学習が無駄になる状況の発生を抑制することができる。
【0022】
さらに、請求項1に記載の車載電子制御装置において、請求項2に記載のように、上記の一括記憶条件は、一時記憶メモリに記憶されている一括記憶用データが、予め設定された記憶判定時間継続して変更されなかったことであるようにしてもよい。
【0023】
このように構成された車載電子制御装置によれば、一時記憶メモリ上で一括記憶用データが頻繁に更新されている間は不揮発性メモリに一括記憶用データが記憶されないため、不揮発性メモリへの記憶頻度を低減することができ、不揮発性メモリの寿命を延長させることができる。
【0024】
また、請求項1に記載の車載電子制御装置において、一括記憶条件が成立した場合であっても、車載電子制御装置の制御処理の負荷が高いときには一括記憶手段の動作を禁止するようにしてもよい。
【0025】
これにより、車載電子制御装置の制御処理の負荷が高いときに、車載電子制御装置の制御処理速度をさらに低下させてしまうことを抑制できる。
また、請求項1または請求項2に記載の車載電子制御装置において、請求項3に記載のように、即時記憶用データは、車両で発生した故障を示す故障コードのうち、車両のバッテリが外された場合でも保持されることが要求される永久故障コードであるようにするとよい。これにより、即時記憶のための専用のブロックを設けることなく、不揮発性メモリに永久故障コードを即時記憶させることができる。
【0026】
また、請求項3に記載の車載電子制御装置では、請求項4に記載のように、即時記憶禁止手段が、第1ブロック第2記憶領域内にデータ記憶可能な領域が残されていない場合には、即時記憶手段の動作を禁止するようにするとよい。
【0027】
ここで、CARB−OBD法規では、永久故障コードを4個以上記憶するように規定している。換言すると、永久故障コードを4個記憶すれば、それ以上記憶する必要がない。このため、請求項4に記載の車載電子制御装置によれば、第1ブロック第2記憶領域の記憶容量を必要最小限に抑えることができる。
【0028】
なお、第2記憶領域内にデータ記憶可能な領域が残されていない場合に、永久故障コードを一時記憶メモリのみに記憶させるようにしてもよい。これにより、第2記憶領域に永久故障コードを即時記憶することができなくても、一括記憶条件が成立した時点で、不揮発性メモリに永久故障コードを記憶させることができる。
【0029】
ところで、車両の盗難防止のため、イモビライザの認証が正常に実施されずにエンジンが始動された回数を不揮発性メモリに記憶する必要がある。
そこで、請求項1または請求項2に記載の車載電子制御装置において、請求項5に記載のように、即時記憶用データは、車両のイモビライザの認証が正常に実施されなかったことを示すものであるようにするとよい。これにより、車両のイモビライザの認証が正常に実施されなかった状況が発生する毎に、その旨を示す情報(以下、イモビ異常情報という)が不揮発性メモリに記憶される。すなわち、このイモビ異常情報の個数により、イモビライザの認証が正常に実施されずにエンジンが始動された回数(以下、イモビ認証異常回数という)を確認することができる。
【0030】
そして請求項5に記載の車載電子制御装置よれば、即時記憶のための専用のブロックを設けることなく、車両のイモビライザの認証が正常に実施されなかった時点で、不揮発性メモリにイモビ異常情報を即時記憶させることができる。
【0031】
また、請求項5に記載の車載電子制御装置では、請求項6に記載のように、エンジン始動禁止手段が、第1ブロック第2記憶領域内にデータ即時記憶可能な領域が残されていない状態で、車両のイモビライザの認証が正常に実施されなかった場合に、車両のエンジンの始動を禁止するようにするとよい。
【0032】
すなわち、例えば5個のイモビ異常情報が記憶されたら車両のエンジン始動を禁止するシステムの場合に、5個分の異常情報を記憶できるだけの領域を第1ブロック第2記憶領域に設ければよく、第1ブロック第2記憶領域の記憶容量を必要最小限に抑えることができる。
【0033】
また、請求項1に記載の車載電子制御装置において、車載電子制御装置の制御中に予期しないCPUリセットが発生した場合には、第1ブロック内の第1ブロック第1記憶領域に記憶されているデータを一時記憶メモリに記憶させ、さらに、第1ブロック内の第1ブロック第2記憶領域に記憶されている即時記憶用データを、一時記憶メモリ内の一時記憶用第1記憶領域に記憶させるようにするとよい。
【0034】
これにより、CPUリセットが発生した直後に一時記憶メモリに記憶されているデータは破棄される。すなわち、一時記憶メモリ上でCPUリセット発生前に更新されたデータは失われる。しかし、CPUリセット発生前に第1ブロック第2記憶領域に記憶された即時記憶用データは、失われずに済ますことができる。
【0035】
また、請求項1に記載の車載電子制御装置において、車載電子制御装置の電源オン時に、不揮発性メモリ内の最新のデータが記憶されたブロック(最新データブロック)の正当性チェック(例えばチェックサムなど)を行い、その結果、データが壊れていると判断された場合には、最新データブロックの次に新しいデータが記憶されたブロック(以下、過去データブロックという)内の第1記憶領域に記憶されているデータを一時記憶メモリに記憶させ、さらに、過去データブロックの第2記憶領域に記憶されている即時記憶用データを、一時記憶メモリ内の一時記憶用第1記憶領域に記憶させるようにするとよい。
【0036】
これにより、最新データが失われても、前回に電源オンしたときの状態にまで、データを戻すことができる。
また、請求項7に記載のメモリ制御方法は、ブロック単位でデータを一括消去した後にデータの一括記憶を行うことができるブロックを少なくとも2つ内蔵した不揮発性メモリを有し、車両に搭載される車載電子制御装置で用いられるメモリ制御方法であって、まず第1データ記憶手順で、当該車載電子制御装置の電源オン時に、不揮発性メモリに内蔵されたブロックの中から予め決定された第1ブロック内において予め設定された一括記憶用の記憶領域である第1ブロック第1記憶領域に記憶されている一括記憶データを、不揮発性メモリと異なるメモリである一時記憶メモリに記憶させる。その後に一時記憶手順で、一時記憶メモリにおいて第1データ記憶手段が一括記憶データを記憶した記憶領域を一時記憶用第1記憶領域として、当該車載電子制御装置の動作中に、不揮発性メモリに即時記憶すべきデータとして予め設定された即時記憶用データを記憶するための即時データ記憶条件が成立すると、即時記憶用データを、一時記憶メモリ内の一時記憶用第1記憶領域に記憶させるとともに、即時記憶手順で、即時記憶用データを、第1ブロック内において第1ブロック第1記憶領域とは別に予め設けられた記憶領域である第1ブロック第2記憶領域に記憶させる。そして一括記憶手順で、予め設定された一括記憶条件が成立すると、不揮発性メモリに内蔵されたブロックの中から第1ブロックと異なるように予め決定された第2ブロックのデータを一括消去した後に、一時記憶メモリ内の一時記憶用第1記憶領域に記憶されているデータを第2ブロック内において予め設定された一括記憶用の記憶領域である第2ブロック第1記憶領域に一括記憶させる
このメモリ制御方法は、請求項1に記載の車載電子制御装置にて実行される方法であり、当該方法を実行することで、請求項1に記載の車載電子制御装置と同様の効果を得ることができる。
【図面の簡単な説明】
【0037】
【図1】車載電子制御装置1の構成を示すブロック図である。
【図2】永久故障コード記憶処理の第1部分を示すフローチャートである。
【図3】永久故障コード記憶処理の第2部分を示すフローチャートである。
【図4】永久故障コード記憶処理の第3部分を示すフローチャートである。
【図5】永久故障コード記憶処理の第4部分を示すフローチャートである。
【図6】ドライビングサイクル終了処理を示すフローチャートである。
【図7】イモビ異常情報を記憶する場合の処理の一部を示すフローチャートである。
【図8】「冗長性の確保」を説明する図である。
【発明を実施するための形態】
【0038】
以下に本発明の実施形態を図面とともに説明する。
図1は車載電子制御装置1の構成を示すブロック図である。
本実施形態の車載電子制御装置1は、車両に搭載され、図1に示すように、車両のエンジンEGの制御を行う。
【0039】
車載電子制御装置1は、CPU(中央演算装置)2と、CPU2が実行するプログラムやプログラムの実行時に参照されるデータを格納するROM3と、電源が供給されている間はデータの記憶が維持できる、データを一時的に記憶するためのRAM4と、データ書き換え可能な不揮発性メモリであるフラッシュROM5と、入出力回路6と、車両内の通信線21に接続された他の装置とCPU2が通信するための通信回路7と、これらの構成を接続するバスライン8とを備えている。
【0040】
CPU2は、エンジンEGを制御するための情報として、吸気管圧力センサ、エンジン回転数センサ、エンジン水温センサ、排気系の酸素センサ(空燃比センサ)、車速センサ、イグニッションスイッチ等から各種信号を入出力回路6を介して入力する。尚、図1に示すエンジンEGは、エンジン本体を含め、吸気系、排気系等、エンジンに関連する系を総称して示すものであって、本実施例では詳細な説明は割愛する。
【0041】
そしてCPU2は、入出力回路6を介して入力される各種信号に基づいて制御演算を行い、その演算結果に基づき、点火装置やインジェクタ等の電気負荷へ入出力回路6を介して駆動信号を出力することにより、エンジンEGの制御に関係する電気負荷を制御する。例えばCPU2は、インジェクタの開弁タイミング及び開弁時間を演算し、その演算結果に基づいて、インジェクタを駆動するための駆動信号を出力することにより、エンジンEGへの燃料噴射を制御する。
【0042】
さらに車載電子制御装置1には、異常検出等の結果をユーザー等に報知するMIL22が入出力回路6を介して接続されている。
また通信回路7には、車両の故障診断等を行うための故障診断装置DTが、通信線21を介して接続される。この故障診断装置DTは、例えば、コネクタ(不図示)を介して着脱可能になっており、車両の故障診断時等に車載電子制御装置1に接続される。なお故障診断装置DTは、マイコンおよび表示装置(ディスプレイ)を備えたハンディタイプの装置、または小型のパソコン等である。
【0043】
またフラッシュROM5は、ブロックBL−AとブロックBL−Bを有する。なお、本実施形態では、2つのブロックしか示していないが他にもブロックを備えていても良い。また、「ブロック」とは、「書換え・消去可能なフラッシュROM(書換え可能不揮発性メモリ)の全記憶領域のうち、一度に消去可能な領域の単位(例:数十キロバイト)」を意味する。ブロックBL−Aのデータ記憶容量とブロックBL−Bのデータ記憶容量とは等しく、ブロックBL−A,BL−Bはそれぞれ、第1記憶領域MR1−A,MR1−Bと第2記憶領域MR2−A,MR2−Bとに分割される。ブロックBL−AとブロックBL−Bの二つのブロックは、片方のブロックに最新のデータを記憶し、もう片方のブロックに最新データの次に新しい過去データを記憶する。また、ブロック内の第1記憶領域MR1は車載電子制御装置1において不揮発性メモリに記憶しなければならないデータを一括記憶するための領域であり、第2記憶領域MR2は車載電子制御装置1において即時に不揮発性メモリに記憶しなければならないデータを記憶するための領域である。
【0044】
なお、車載電子制御装置1の電源としては、イグニッションスイッチのオン/オフに連動して車載バッテリから供給される動作用電源と、車載バッテリから常時供給されるバックアップ電源とがある。そして車載電子制御装置1は、イグニッションスイッチがオンされると動作用電源が供給されて動作する。
【0045】
このように構成された車載電子制御装置1において、CPU2は、永久故障コードをフラッシュROM5に記憶するための永久故障コード記憶処理を実行する。
ここで、CPU2が実行する永久故障コード記憶処理の手順を図2〜5を用いて説明する。図2〜5は永久故障コード記憶処理の第1〜4部分を示すフローチャートである。この永久故障コード記憶処理は、車載電子制御装置1の電源がオンになる(動作用電源が供給される)と車載電子制御装置1の電源がオフされるまで実行される処理である。
【0046】
この永久故障コード記憶処理が実行されると、CPU2は、まずS10にて、車載電子制御装置1に異常が発生したか否かを判定する。具体的には、CPUリセットが発生したか否かを判定するとともに、ブロックBL−A,BL−Bの第1記憶領域MR1−A,MR1−Bのうち、RAM4にデータコピーする第1記憶領域MR1に記憶されているデータが壊れているか否かを、チェックサムで判定する。なお、RAM4にデータコピーする第1記憶領域MR1を選択する方法は、S30(後述)と同じである。
【0047】
そしてS20にて、S10での判定結果に基づいて、車載電子制御装置1に異常が発生したか否かを判断する。ここで、異常が発生した場合には(S20:YES)、S150に移行する。
【0048】
一方、異常が発生していない場合には(S20:NO)、S30にて、ブロックBL−A,BL−Bのうち、RAM4にデータコピーするブロックBLを選択する。具体的には、ブロックBL−A,BL−Bの第1記憶領域MR1−A,MR1−B内にはそれぞれ、RAM4にデータコピーした回数を示すコピー回数カウント値記憶領域が設けられており、RAM4へのデータコピーが実行される毎にコピー回数カウント値記憶領域もRAM4へコピーされるとともに、CPU2により実行される処理によって(図示せず)RAM4のコピー回数カウント値をインクリメントするように構成されている。このRAM4上のカウント値記憶領域は、MR1−A,もしくはMR1−Bに一括記憶されるときに不揮発性メモリに記憶される。すなわちS30では、ブロックBL−A,BL−Bのコピー回数カウンタの値を比較して、この値が大きいブロックを選択する。但し、コピー回数カウント値がその最大値(例えばカウント値記憶領域が2バイトで構成されるなら65535)になっており、もう片方のブロックのコピー回数カウント値が0であれば、コピー回数カウント値が0のブロックを選択する。
【0049】
例えば、ブロックBL−Aに設けられたコピー回数カウント値記憶領域のコピー回数カウント値CC−Aが「0」で、ブロックBL−Bに設けられたコピー回数カウント値記憶領域のコピー回数カウント値CC−Bが「1」であるときには、ブロックBL−Bのコピー回数カウント値のほうが大きいため、ブロックBL−Bが選択され、ブロックBL−Bの第1記憶領域MR1−BがRAM4にコピーされる。このとき、RAM4上においてブロックBL−Bのコピー回数カウント値CC−Bがインクリメントされて「2」となる。その後、RAM4上のデータがブロックBL−Aに一括記憶されるため、ブロックBL−Aのコピー回数カウント値CC−Aが「2」となる。このときの、ブロックBL−Bのコピー回数カウント値CC−Bは「1」である。したがって、この次には、ブロックBL−Aのコピー回数カウント値のほうが大きいため、ブロックBL−Aが選択される。
【0050】
以下、S30で選択されたブロックBL−AまたはブロックBL−Bを、S30で選択されたブロックBLともいう。また、S30で選択されたブロックBLの第1記憶領域MR1−Aまたは第1記憶領域MR1−Bを、S30で選択された第1記憶領域MR1ともいう。また、S30で選択されたブロックBLの第2記憶領域MR2−Aまたは第2記憶領域MR2−Bを、S30で選択された第2記憶領域MR2ともいう。
【0051】
その後S40にて、S30で選択されたブロックBLの第1記憶領域MR1に記憶されているデータをRAM4にコピーする。なお以下、RAM4の記憶領域において、ブロックBLの第1記憶領域MR1が記憶された領域を、「RAM4の第1記憶領域MR3」ともいう(図1を参照)。
【0052】
そしてS50にて、ドライビングサイクル終了処理を実行する。なお、ドライビングサイクルとは、エンジンが起動されてから、その後エンジンが停止して次にエンジンが起動されるまでの期間のことである。よって、電源オン時を「次のエンジンの起動」と判断してS50の処理を実行する。
【0053】
ここで、ドライビングサイクル終了処理の手順を図6を用いて説明する。図6はドライビングサイクル終了処理を示すフローチャートである。
このドライビングサイクル終了処理が実行されると、CPU2は、まずS410にて、永久故障コード消去条件が成立したか否かを判断する。ここで、永久故障コード消去条件が成立していない場合には(S410:NO)、S430に移行する。一方、永久故障コード消去条件が成立した場合には、この永久故障コード消去条件に対応する永久故障コードをRAM4から消去し、S430に移行する。
【0054】
そしてS430に移行すると、全ての永久故障コードについてS410の処理を行ったか否かを判断する。ここで、全ての永久故障コードについて行っていない場合には(S430:NO)、S410に移行して、上述の処理を繰り返す。一方、全ての永久故障コードについて行った場合には(S430:YES)、ドライビングサイクル終了処理を終了する。
【0055】
図2に戻り、S50の処理が終了すると、S60にて、車載電子制御装置1がエンジンEGの異常を検出してMIL22が点灯したか否かを判断する。尚、エンジンEGの異常検出処理については割愛する。ここで、MIL22が点灯した場合には(S60:YES)、S70にて、S30で選択された第2記憶領域MR2内に記憶可能な領域が存在するか否かを判断する。
【0056】
ここで、第2記憶領域MR2内に記憶可能な領域が存在する場合には(S70:YES)、S80にて、S60において点灯したと判断したMIL22に対応する永久故障コードを、RAM4の第1記憶領域MR3内において永久故障コードを記憶するために設けられた永久故障コード記憶領域MRPと、S30またはS160で選択されたブロックBLの第2記憶領域MR2に記憶し、S120に移行する。一方、第2記憶領域MR2内に記憶可能な領域が存在しない場合には(S70:NO)、S90にて、S60において点灯したと判断したMIL22に対応する永久故障コードを、RAM4の第1記憶領域MR3内に設けられた永久故障コード記憶領域MRPに記憶し、S120に移行する。
【0057】
またS60にて、MIL22が点灯していない場合には(S60:NO)、S100にて、故障診断装置DTからの永久故障コード読出指令を受信したか否かを判断する。ここで、永久故障コード読出指令を受信した場合には(S100:YES)、S110にて、RAM4に記憶されており、且つ、S30またはS160で選択されたブロックBLの第1記憶領域MR1または第2記憶領域MR2に記憶されている永久故障コードを故障診断装置DTへ送信し、S120に移行する。一方、永久故障コード読出指令を受信していない場合には(S100:NO)、S120に移行する。
【0058】
そしてS120に移行すると、車載電子制御装置1がシャットダウンされるか否かを判断する。ここで、車載電子制御装置1がシャットダウンされない場合には(S120:NO)、S60に移行して、上述の処理を繰り返す。一方、車載電子制御装置1がシャットダウンされる場合には(S120:YES)、S130にて、S30またはS160で選択されていないブロックBLを、コピー回数カウント値が最も小さい値を持つブロックBLを調べることで選択し、そのブロックBLに記憶されているデータを一括消去し、さらにS140にて、RAM4の第1記憶領域MR3に記憶されているデータを、S130でデータを一括消去したブロックBLの第1記憶領域MR1に記憶させて、永久故障コード記憶処理を終了する。
【0059】
次に、S20にて、異常が発生したと判断した場合には(S20:YES)、図3のS150に移行し、S10で判定した異常はCPUリセット発生であるか否かを判断する。ここで、CPUリセット発生である場合には(S150:YES)、S160にて、S30と同様にして、RAM4にデータコピーするブロックBLを選択する。
【0060】
その後S170にて、S160で選択されたブロックBLの第1記憶領域MR1に記憶されているデータをRAM4にコピーし、S180にて、S160で選択されたブロックBLの第2記憶領域MR2に、永久故障コードが記憶されているか否かを判断する。
【0061】
ここで、第2記憶領域MR2に永久故障コードが記憶されていない場合には(S180:NO)、S50に移行する。一方、第2記憶領域MR2に永久故障コードが記憶されている場合には(S180:YES)、S190にて、第2記憶領域MR2に記憶されている永久故障コードを、RAM4の第1記憶領域MR3内に設けられた永久故障コード記憶領域MRPに記憶させて、S50に移行する。これにより、RAM4の第1記憶領域MR3には、S160で選択されたブロックBLの第1記憶領域MR1に記憶されているデータだけでなく、第2記憶領域MR2に記憶された永久故障コードも追加したデータにすることができる。すなわち、RAM4の第1記憶領域MR3は、最後にフラッシュROM5に正しくデータを記憶してからCPUのリセットまでにRAM4上で更新したデータは含まれないものの、最後にフラッシュROM5に正しく記憶されたデータと、第2記憶領域MR2に記憶されている永久故障コードをRAM4の第1記憶領域MR3内に設けられた永久故障コード記憶領域MRPに記憶させたデータとなる。
【0062】
またS150にて、CPUリセット発生でない場合には(S150:NO)、RAM4にデータコピーする第1記憶領域MR1に記憶されているデータが壊れていると判断し、図4のS200にて、データが壊れていると判断したブロックBLとは異なるブロックBLを、RAM4にデータコピーするブロックBLとして選択する。
【0063】
そしてS210にて、S200で選択されたブロックBLの第1記憶領域MR1に記憶されているデータが壊れているか否かを、チェックサムチェックを行うことにより判定し、データが壊れていないと判定した場合に、S200で選択されたブロックBLの第1記憶領域MR1に記憶されているデータをRAM4にコピーする。一方、データが壊れていると判定した場合には、RAM4に記憶されるデータを予め設定された初期値にする。この初期値とは、例えばエンジンの異常検出処理の結果をRAM4に記憶する場合には、「検出結果なし」とすることである。
【0064】
その後S220にて、S200で選択されたブロックBLの第2記憶領域MR2に、永久故障コードが記憶されているか否かを判断する。なおS220では、S210でデータが壊れていると判定した場合には、永久故障コードが記憶されていないと判断する。
【0065】
ここで、第2記憶領域MR2に永久故障コードが記憶されていない場合には(S220:NO)、S240に移行する。一方、第2記憶領域MR2に永久故障コードが記憶されている場合には(S220:YES)、S230にて、第2記憶領域MR2に記憶されている永久故障コードを、RAM4の第1記憶領域MR3内に設けられた永久故障コード記憶領域MRPに記憶させて、S240に移行する。
【0066】
そしてS240に移行すると、データが壊れていると判断したブロックBLに記憶されているデータを一括消去し、さらにS250にて、RAM4に記憶されているデータを、S240でデータを一括消去したブロックに記憶させて、S260に移行する。
【0067】
そしてS260に移行すると、S50と同様にして、ドライビングサイクル終了処理を実行する。そしてS260の処理が終了すると、S270にて、車載電子制御装置1がエンジンEGの異常を検出してMIL22が点灯したか否かを判断する。ここで、MIL22が点灯した場合には(S270:YES)、S280にて、S250でデータを記憶したブロックBLの第2記憶領域MR2内に記憶可能な領域が存在するか否かを判断する。
【0068】
ここで、第2記憶領域MR2内に記憶可能な領域が存在する場合には(S280:YES)、S290にて、S270において点灯したと判断したMIL22に対応する永久故障コードを、RAM4の第1記憶領域MR3内に設けられた永久故障コード記憶領域MRPと、S250でデータを記憶したブロックBLの第2記憶領域MR2に記憶し、S330に移行する。一方、第2記憶領域MR2内に記憶可能な領域が存在しない場合には(S280:NO)、S300にて、S270において点灯したと判断したMIL22に対応する永久故障コードを、RAM4の第1記憶領域MR3内に設けられた永久故障コード記憶領域MRPに記憶し、S330に移行する。
【0069】
またS270にて、MIL22が点灯していない場合には(S270:NO)、S310にて、故障診断装置DTからの永久故障コード読出指令を受信したか否かを判断する。ここで、永久故障コード読出指令を受信した場合には(S310:YES)、S320にて、RAM4に記憶されており、且つ、S250でデータを記憶したブロックBLの第1記憶領域MR1または第2記憶領域MR2に記憶されている永久故障コードを故障診断装置DTへ送信し、S330に移行する。一方、永久故障コード読出指令を受信していない場合には(S310:NO)、S330に移行する。
【0070】
そしてS330に移行すると、車載電子制御装置1がシャットダウンされるか否かを判断する。ここで、車載電子制御装置1がシャットダウンされない場合には(S330:NO)、S270に移行して、上述の処理を繰り返す。一方、車載電子制御装置1がシャットダウンされる場合には(S330:YES)、S340にて、S220で選択したブロックBLに記憶されているデータを一括消去し、さらにS350にて、RAM4の第1記憶領域MR3に記憶されているデータを、S340でデータを一括消去したブロックBLの第1記憶領域MR1に記憶させて、永久故障コード記憶処理を終了する。
【0071】
このように構成された車載電子制御装置1は、ブロック単位でデータを一括消去した後にデータの記憶を行うことができる2つのブロックBL−A,BL−Bを内蔵したフラッシュROM5を有し、当該車載電子制御装置1の電源オン時に、フラッシュROM5に内蔵されたブロックBL−A,BL−Bの中から、S30の処理で選択されたブロック(以下、第1ブロックともいう)の第1記憶領域MR1(MR1−AまたはMR1−B)に記憶されている記憶データを、RAM4に記憶させる(S40)。
【0072】
その後に、当該車載電子制御装置1の動作中に、車載電子制御装置1がエンジンEGの異常を検出してMIL22が点灯すると(S60:YES)、点灯したMIL22に対応する永久故障コードを、RAM4の第1記憶領域MR3内の永久故障コード記憶領域MRPに記憶させる(S80)。
【0073】
さらに、当該車載電子制御装置1の動作中に、車載電子制御装置1がエンジンEGの異常を検出してMIL22が点灯すると(S60:YES)、点灯したMIL22に対応する永久故障コードを、S30の処理で選択されたブロック(第1ブロック)の第1記憶領域MR1とは別に予め設けられた第2記憶領域MR2に記憶させる(S80)。
【0074】
そして、車載電子制御装置1がシャットダウンされるときに(S120:YES)、フラッシュROM5に内蔵されたブロックBL−A,BL−Bの中から、S30の処理で選択されたブロック(第1ブロック)と異なるように予め決定されたブロック(以下、第2ブロックともいう)のデータを一括消去した後に(S130)、RAM4の第1記憶領域MR3に記憶されているデータを第2ブロック内の第1記憶領域MR1に記憶させる(S140)。
【0075】
このように構成された車載電子制御装置1では、第1ブロックの第1記憶領域MR1に記憶されている記憶データをRAM4内の第1記憶領域MR3に記憶させ、その後、エンジンEGの異常を検出してMIL22が点灯すると、点灯したMIL22に対応する永久故障コードをRAM4内の第1記憶領域MR3の領域(記憶領域MRP)に記憶させる。そして、車載電子制御装置1がシャットダウンされると、RAM4内の第1記憶領域MR3に記憶されているデータをすべて第2ブロックに記憶させる。すなわち、第1ブロックは、RAM4に永久故障コードを記憶させる「前」の状態であり、第2ブロックは、RAM4に永久故障コードを記憶させた「後」の状態となる。つまり、第1ブロックと第2ブロックとにはそれぞれ、データ更新前とデータ更新後のデータが記憶されている。
【0076】
このため、第2ブロックでデータ化けなどが発生したとしても、第1ブロックのデータを用いて正しい値に戻すことができるようにするための冗長性が確保されている。
ここで、RAM4に永久故障コードを記憶させる「前」が、第1ブロックに永久故障コードC1,C2を二つ記憶している状態で、永久故障コードを記憶させた「後」が、新しく別の永久故障コードC3を一つ記憶して、第2ブロックに合計三つの永久故障コードC1,C2,C3を記憶している状態である場合(図8を参照)を想定して、「冗長性の確保」を説明する。
【0077】
まず、第1ブロックでデータ化けが発生した場合には、第2ブロックに記憶されている永久故障コードC1,C2,C3の全てが保持されているため、問題がない。一方、第2ブロックでデータ化けが発生した場合には、永久故障コードC3は失われるが、第1ブロックの永久故障コードC1,C2を用いて、第2ブロックの永久故障コードC1,C2を復元することができる。すなわち、第2ブロックの永久故障コードC1,C2,C3の全てが失われることはなく、永久故障コードの消失を最低限に抑えることができる。
【0078】
また、MIL22が点灯すると、永久故障コードを、S30の処理で選択されたブロック(第1ブロック)内において第1記憶領域MR1とは別に予め設けられた第2記憶領域MR2に記憶させる。すなわち、MIL22が点灯する毎に、永久故障コードをフラッシュROM5に記憶させることができる。なぜならば、記憶されているデータを一括消去されたブロックBLには、まず第1記憶領域MR1にデータが一括して書き込まれ、第1記憶領域MR1とは異なる記憶領域である第2記憶領域MR2は、データが書き込まれていない状態となるからである。なお、第2記憶領域MR2は第1ブロック内に設けられているため、永久故障コードをフラッシュROM5に即時記憶するために、即時記憶専用のブロックとその冗長データを記憶するためのブロックとを設ける必要がない。
【0079】
以上より、車載電子制御装置1によれば、冗長性を確保するために最低2つのブロックを用意すれば、即時記憶のための専用のブロックを設けることなく、不揮発性メモリにデータを即時に記憶させることができる。
【0080】
また、車載電子制御装置1がシャットダウンする時に(S120:YES)、RAM4に記憶されたデータをフラッシュROM5に記憶させる(S140)。これにより、車載電子制御装置1の制御動作中に、不揮発性メモリのブロックへ一括したデータ記憶が実施されない。このため、車載電子制御装置1の制御動作中に不揮発性メモリのブロックへ一括したデータ記憶をする場合と比較して処理負荷を減らすことができ、車載電子制御装置1の制御処理速度を向上させることができる。
【0081】
また、第2記憶領域MR2内に記憶可能な領域が存在しない場合には(S70:NO)、永久故障コードがフラッシュROM5に記憶されない。
ここで、CARB−OBD法規では、永久故障コードを4個以上記憶するように規定している。換言すると、永久故障コードを4個記憶すれば、それ以上記憶する必要がない。このため、第2記憶領域MR2の記憶容量を必要最小限に抑えることができる。
【0082】
なお、第2記憶領域MR2内に記憶可能な領域が存在しない場合には(S70:NO)、永久故障コードがRAM4に記憶される(S90)。これにより、第2記憶領域MR2に永久故障コードを即時記憶することができなくても、車載電子制御装置1がシャットダウンされると(S120:YES)、フラッシュROM5に永久故障コードを記憶させることができる(S140)。
【0083】
また、車載電子制御装置の制御中に予期しないCPUリセットが発生した場合には(S150:YES)、RAM4にデータコピーするブロックBLを選択して(S160)、選択されたブロックBLの第1記憶領域MR1に記憶されているデータをRAM4にコピーする(S170)。さらに、選択されたブロックBL内の第2記憶領域MR2に記憶されている永久故障コードを、RAM4内の第1記憶領域MR3に記憶させる(S190)。
【0084】
これにより、CPUリセットが発生した直後にRAM4に記憶されているデータは破棄される。すなわち、RAM4上でCPUリセット発生前に更新されたデータは失われる。しかし、CPUリセット発生前に第2記憶領域MR2に記憶された永久故障コードは、失われずに済ますことができる。
【0085】
また、フラッシュROM5内の最新のデータが記憶されたブロックBL(以下、最新データブロックともいう)の正当性チェックを行い(S10)、その結果、データが壊れていると判断された場合には(S20:YES,S150:NO)、最新データブロックの次に新しいデータが記憶されたブロックBL(以下、過去データブロックという)内の第1記憶領域MR1に記憶されているデータをRAM4に記憶させ(S210)、さらに、過去データブロックの第2記憶領域MR2に記憶されている永久故障コードを、RAM4内の第1記憶領域MR3に記憶させる(S230)。
【0086】
これにより、最新データが失われても、前回に電源オンしたときの状態にまで、データを戻すことができる。
また、ドライビングサイクル終了処理(S50)では、永久故障コード消去条件が成立したときに、フラッシュROM5に記憶された永久故障コードを消去することなく、RAM4に記憶された永久故障コードを消去する(S420)。これにより、フラッシュROM5へのアクセスが不要となり、車載電子制御装置1のエンジン制御への影響を最小限に抑えることができる。
【0087】
また、故障診断装置DTからの永久故障コード読出指令を受信すると(S100:YES)、RAM4に記憶されており、且つ、選択されたブロックBLの第1記憶領域MR1または第2記憶領域MR2に記憶されている永久故障コードを故障診断装置DTへ送信する(S110)。これにより、RAM4のみに記憶された永久故障コードを故障診断装置DTへ送信しないようにすることができる。
【0088】
以上説明した実施形態において、S30およびS40の処理は本発明における第1データ記憶手段または第1データ記憶手順、S80の処理は本発明における一時記憶手段および即時記憶手段または一時記憶手順および即時記憶手順、S120〜S140の処理は本発明における一括記憶手段または一括記憶手順、S70の処理は本発明における即時記憶禁止手段である。
【0089】
また、フラッシュROM5は本発明における不揮発性メモリ、S30またはS160で選択されたブロックBLの第1記憶領域MR1は本発明における第1ブロック第1記憶領域、S30またはS160で選択されたブロックBLの第2記憶領域MR2は本発明における第1ブロック第2記憶領域、RAM4の第1記憶領域MR3は本発明における一時記憶用第1記憶領域、RAM4は本発明における一時記憶メモリ、永久故障コードは本発明における即時記憶用データ、S60の判断条件は本発明における即時データ記憶条件、S120の判断条件は本発明における一括記憶条件である。
【0090】
以上、本発明の一実施例について説明したが、本発明は上記実施例に限定されるものではなく、本発明の技術的範囲に属する限り種々の形態を採ることができる。
例えば上記実施形態においては、車載電子制御装置1がシャットダウンする時に(S120:YES)、RAM4に記憶されたデータをフラッシュROM5に記憶させる(S140)ものを示した。しかし、「車両が予め設定された所定走行距離を走行したとき」、または「予め設定された所定時間が経過したとき」に、RAM4に記憶されたデータをフラッシュROM5に記憶させるようにしてもよい。これにより、車載電子制御装置1の制御に用いる学習値を第1記憶領域MR1に記憶しておけば、車載電子制御装置1の制御動作中に予期しないCPUリセットが発生しても、所定走行距離を走行した後または所定時間が経過した後の学習値がフラッシュROM5に記憶されているので、車載電子制御装置1の電源オン時の値に戻らない。このため、CPUリセットが発生するまでに行われた制御学習が無駄になる状況の発生を抑制することができる。なお、上記の学習値とは演算学習値のことである。
【0091】
また、「第1記憶領域MR3に記憶されたデータが、予め設定された記憶判定時間継続して変更されなかったとき」に、RAM4に記憶されたデータをフラッシュROM5に記憶させるようにしてもよい。これにより、RAM4上で第1記憶領域MR3が頻繁に更新されている間はフラッシュROM5に記憶されないため、フラッシュROM5への記憶頻度を低減することができ、フラッシュROM5の寿命を延長させることができる。また、車載電子制御装置1の制御に用いる学習値を第1記憶領域MR3に記憶しておけば、記憶判定時間継続して学習値が変更されなかったことにより学習値がフラッシュROM5に記憶された後に予期しないCPUリセットが発生しても、車載電子制御装置1の電源オン時の値に戻らない。このため、CPUリセットが発生するまでに行われた制御学習が無駄になる状況の発生を抑制することができる。
【0092】
また、上記の「車両が予め設定された所定走行距離を走行したとき」、または「予め設定された所定時間が経過したとき」などの条件が成立した場合であっても、車載電子制御装置1の制御処理の負荷が高いときには、第1記憶領域MR3のフラッシュROM5への記憶を禁止するようにしてもよい。
【0093】
これにより、車載電子制御装置1の制御処理の負荷が高いときに、車載電子制御装置1の制御処理速度をさらに低下させてしまうことを抑制できる。
ところで、車両の盗難防止のため、イモビライザの認証が正常に実施されずにエンジンが始動された回数を不揮発性メモリに記憶する必要がある。
【0094】
このため、上記実施形態においては、永久故障コードをフラッシュROM5に即時記憶するものを示したが、車両のイモビライザの認証が正常に実施されなかったことを示す情報(以下、イモビ異常情報という)をフラッシュROM5に即時記憶するようにしてもよい。これにより、車両のイモビライザの認証が正常に実施されなかった状況が発生する毎に、イモビ異常情報が不揮発性メモリに記憶される。すなわち、このイモビ異常情報の個数により、イモビライザの認証が正常に実施されずにエンジンが始動された回数(以下、イモビ認証異常回数という)を確認することができる。
【0095】
図7は、イモビ異常情報をフラッシュROM5に即時記憶する処理を示すフローチャートである。図7は、図2のS60〜S90の処理について、永久故障コードをイモビ異常情報に置き換えたものに相当する。なお、永久故障コード記憶領域MRPの代わりにイモビ異常情報記憶領域MRIが設けられる。
【0096】
図7に示すように、S510にて、車両のイモビライザの認証が正常に実施されたか否かを判断し、車両のイモビライザの認証が正常に実施されなかった場合には(S510:NO)、S520にて、第2記憶領域MR2内に記憶可能な領域が存在するか否かを判断する。
【0097】
ここで、第2記憶領域MR2内に記憶可能な領域が存在する場合には(S520:YES)、S530にて、イモビ異常情報を、RAM4の第1記憶領域MR3内に設けられたイモビ異常情報記憶領域MRIと、選択されたブロックBLの第2記憶領域MR2に記憶する。一方、第2記憶領域MR2内に記憶可能な領域が存在しない場合には(S520:NO)、S540にて、エンジンEGの始動を禁止する。
【0098】
すなわち、例えば5個のイモビ異常情報が記憶されたら車両のエンジン始動を禁止するシステムの場合に、5個分のイモビ異常情報を記憶できるだけの領域を第2記憶領域MR2に設ければよく、第2記憶領域MR2の記憶容量を必要最小限に抑えることができる。なお、S540の処理は本発明におけるエンジン始動禁止手段である。
【0099】
また、故障診断装置DTから永久故障コード消去指令を受信した場合に、RAM4と、フラッシュROM5の第1記憶領域MR1および第2記憶領域MR2に記憶されている永久故障コードを消去しないようにするとよい。これにより、第2記憶領域MR2に記憶できる永久故障コード数を超えて故障が発生してRAM4のみに記憶された永久故障コードは、車載電子制御装置1のシャットダウン時に、フラッシュROM5に記憶される。
【0100】
このため、車載電子制御装置1のシャットダウン前に車載バッテリを外されると、RAM4のみに記憶された永久故障コードは消えてしまう。しかし、RAM4のみに記憶された永久故障コードは、故障診断装置DTに送信されないので、外部からは「車載バッテリが外されたために永久故障コードが消えた」と判断されない。
【符号の説明】
【0101】
1…車載電子制御装置、2…CPU、3…ROM、4…RAM、5…フラッシュROM、6…入出力回路、7…通信回路、8…バスライン、21…通信線、22…MIL、BL(BL−A,BL−B)…ブロック、MR1(MR1−A,MR1−B)…第1記憶領域、MR2(MR2−A,MR2−B)、MR3…第1記憶領域、MRP…永久故障コード記憶領域

【特許請求の範囲】
【請求項1】
ブロック単位でデータを一括消去した後にデータの記憶を行うブロックを少なくとも2つ内蔵した不揮発性メモリを有し、車両に搭載される車載電子制御装置であって、
当該車載電子制御装置の電源オン時に、前記不揮発性メモリに内蔵された前記ブロックの中から予め決定された第1ブロック内において予め設定された一括記憶用の記憶領域である第1ブロック第1記憶領域に記憶されている一括記憶データを、前記不揮発性メモリと異なるメモリである一時記憶メモリに記憶させる第1データ記憶手段と、
前記一時記憶メモリにおいて前記第1データ記憶手段が前記一括記憶データを記憶した記憶領域を一時記憶用第1記憶領域として、当該車載電子制御装置の動作中に、前記不揮発性メモリに即時記憶すべきデータとして予め設定された即時記憶用データを記憶するための即時データ記憶条件が成立すると、前記即時記憶用データを、前記一時記憶メモリ内の前記一時記憶用第1記憶領域に記憶させる一時記憶手段と、
前記即時記憶用データを、前記第1ブロック内において前記第1ブロック第1記憶領域とは別に予め設けられた記憶領域である第1ブロック第2記憶領域に記憶させる即時記憶手段と、
予め設定された一括記憶条件が成立すると、前記不揮発性メモリに内蔵された前記ブロックの中から前記第1ブロックとは異なるように予め決定された第2ブロックのデータを一括消去した後に、前記一時記憶メモリ内の前記一時記憶用第1記憶領域に記憶されているデータを前記第2ブロック内において予め設定された一括記憶用の記憶領域である第2ブロック第1記憶領域に一括記憶させる一括記憶手段と
を備えることを特徴とする車載電子制御装置。
【請求項2】
前記一括記憶条件は、
前記一時記憶メモリに記憶されている前記一括記憶データが、予め設定された記憶判定時間継続して変更されなかったことである
ことを特徴とする請求項1に記載の車載電子制御装置。
【請求項3】
前記即時記憶用データは、
前記車両で発生した故障を示す故障コードのうち、車両のバッテリが外された場合でも保持されることが要求される永久故障コードである
ことを特徴とする請求項1または請求項2に記載の車載電子制御装置。
【請求項4】
前記第1ブロック第2記憶領域内にデータ記憶可能な領域が残されていない場合には、前記即時記憶手段の動作を禁止する即時記憶禁止手段を備える
ことを特徴とする請求項3に記載の車載電子制御装置。
【請求項5】
前記即時記憶用データは、
前記車両のイモビライザの認証が正常に実施されなかったことを示すものである
ことを特徴とする請求項1または請求項2に記載の車載電子制御装置。
【請求項6】
前記第1ブロック第2記憶領域内にデータ即時記憶可能な領域が残されていない状態で、前記車両のイモビライザの認証が正常に実施されなかった場合に、前記車両のエンジンの始動を禁止するエンジン始動禁止手段を備える
ことを特徴とする請求項5に記載の車載電子制御装置。
【請求項7】
ブロック単位でデータを一括消去した後にデータの記憶を行うブロックを少なくとも2つ内蔵した不揮発性メモリを有し、車両に搭載される車載電子制御装置で用いられるメモリ制御方法であって、
当該車載電子制御装置の電源オン時に、前記不揮発性メモリに内蔵された前記ブロックの中から予め決定された第1ブロック内において予め設定された一括記憶用の記憶領域である第1ブロック第1記憶領域に記憶されている一括記憶データを、前記不揮発性メモリと異なるメモリである一時記憶メモリに記憶させる第1データ記憶手順と、
前記一時記憶メモリにおいて前記第1データ記憶手段が前記一括記憶データを記憶した記憶領域を一時記憶用第1記憶領域として、当該車載電子制御装置の動作中に、前記不揮発性メモリに即時記憶すべきデータとして予め設定された即時記憶用データを記憶するための即時データ記憶条件が成立すると、前記即時記憶用データを、前記一時記憶メモリ内の前記一時記憶用第1記憶領域に記憶させる一時記憶手順と、
前記即時記憶用データを、前記第1ブロック内において前記第1ブロック第1記憶領域とは別に予め設けられた記憶領域である第1ブロック第2記憶領域に記憶させる即時記憶手順と、
予め設定された一括記憶条件が成立すると、前記不揮発性メモリに内蔵された前記ブロックの中から前記第1ブロックとは異なるように予め決定された第2ブロックのデータを一括消去した後に、前記一時記憶メモリ内の前記一時記憶用第1記憶領域に記憶されているデータを前記第2ブロック内において予め設定された一括記憶用の記憶領域である第2ブロック第1記憶領域に一括記憶させる一括記憶手順と
を備えることを特徴とするメモリ制御方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公開番号】特開2011−100416(P2011−100416A)
【公開日】平成23年5月19日(2011.5.19)
【国際特許分類】
【出願番号】特願2009−256466(P2009−256466)
【出願日】平成21年11月9日(2009.11.9)
【出願人】(000004260)株式会社デンソー (27,639)
【Fターム(参考)】