JP2002323990A - 電子制御装置及び不揮発性メモリの初期化方法 - Google Patents

電子制御装置及び不揮発性メモリの初期化方法

Info

Publication number
JP2002323990A
JP2002323990A JP2001127668A JP2001127668A JP2002323990A JP 2002323990 A JP2002323990 A JP 2002323990A JP 2001127668 A JP2001127668 A JP 2001127668A JP 2001127668 A JP2001127668 A JP 2001127668A JP 2002323990 A JP2002323990 A JP 2002323990A
Authority
JP
Japan
Prior art keywords
nonvolatile memory
control program
eeprom
information
written
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.)
Pending
Application number
JP2001127668A
Other languages
English (en)
Inventor
Masashi Sonoda
誠志 園田
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.)
Denso Corp
Original Assignee
Denso 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 Denso Corp filed Critical Denso Corp
Priority to JP2001127668A priority Critical patent/JP2002323990A/ja
Publication of JP2002323990A publication Critical patent/JP2002323990A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)
  • Combined Controls Of Internal Combustion Engines (AREA)

Abstract

(57)【要約】 【課題】 学習値等の特定のデータを、書換可能な不揮
発性メモリに保存するようにした電子制御装置(以下、
ECU)において、制御プログラムを書き換えた際の上
記不揮発性メモリの初期化を、簡単且つ適切に実施でき
るようにする。 【解決手段】 ECUにおいて、フラッシュROMに
は、制御プログラムの書換時に、新プログラムと共に、
そのプログラムが学習値等の保存に用いるEEPROM
の容量を示す使用サイズ情報が書き込まれる。そして、
フラッシュROM内の制御プログラムによる最初の初期
化処理にて、EEPROMに書き込まれている使用サイ
ズ情報Jaと現在の制御プログラムの使用サイズ情報J
bとを比較し(S132,S134)、両者が違えば、
EEPROMを初期化し、更にEEPROMへ上記情報
Jbを上記Jaとして書き込む(S136,S13
8)。よって、EEPROMの使用容量が変わった場合
だけ、EEPROMが初期化される。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、電気的に記憶内容
の書き換えが可能な不揮発性メモリに記憶した制御プロ
グラムをオンボードにて書き換えることが可能であると
共に、その制御プログラムで算出した学習値や異常検出
結果等の特定のデータを、電気的に記憶内容の書き換え
が可能な他の不揮発性メモリに保存するようにした電子
制御装置に関するものである。
【0002】
【従来の技術】従来より、例えば自動車のエンジンやト
ランスミッション等を制御する電子制御装置として、電
気的に記憶内容の書き換え(詳しくは、記憶内容の消去
及び書き込み)が可能なフラッシュROM等の不揮発性
メモリ(以下、書換可能不揮発性メモリともいう)に制
御プログラム(詳しくは、制御用のプログラムを構成す
る命令コードやそのプログラムで参照される固定の制御
データ)を格納しておき、このような不揮発性メモリ内
の制御プログラムを、市場への供給後でもオンボードに
て書き換え可能に構成されたものがある(例えば特開平
11−141394号公報)。
【0003】即ち、この種のプログラム書換機能を有し
た電子制御装置は、通常時には、書換可能不揮発性メモ
リに記憶された制御プログラムに従ってエンジン等の制
御対象を制御するが、別途接続される外部装置としての
メモリ書換装置から書き換え要求信号を受ける等して、
書換条件が成立したと判断すると、自己の動作モードを
書換モードに移行させて、書換可能不揮発性メモリ内の
制御プログラムを上記メモリ書換装置から送信されて来
る新たな制御プログラムに書き換える書換処理を行う。
そして、このような電子制御装置によれば、何等かの原
因で動作内容(制御内容)を変更しなければならない場
合に、制御プログラムを簡単に変更して対応することが
できる。
【0004】また更に、この種の車両用電子制御装置で
は、制御対象の経時変化や個体差などの影響をなくすた
めに、過去の制御結果を評価して制御パラメータや制御
論理を修正する、いわゆる学習制御が行われる。そし
て、制御プログラムによって更新及び参照される様々な
データのうち、学習制御で算出した制御パラメータなど
の学習値や、異常検出結果を表すダイアグノシス情報と
いった特定のデータは、制御プログラムが格納されるメ
モリとは別の書換可能不揮発性メモリに保存され、バッ
テリ上がりやバッテリ外れが発生しても、そのデータを
継続して使用できるようにしている。
【0005】つまり、この種の電子制御装置では、電源
供給が停止されても継続して保存すべき学習値やダイア
グノシス情報などの特定のデータ(以下、継続保存対象
データという)を、予め決められた更新書込条件が成立
する毎(例えば、一定時間毎や電源供給が停止されて動
作を終了する直前毎)に、通常のRAMからEEPRO
Mなどの書換可能不揮発性メモリにコピーする。そし
て、電源が供給されて動作を開始する初期動作時などに
おいて、その書換可能不揮発性メモリから通常のRAM
へ上記の継続保存対象データを転送することにより、過
去に算出した学習値やダイアグノシス情報を失わずに使
用できるようにしている。
【0006】
【発明が解決しようとする課題】ここで、制御プログラ
ムがフラッシュROMに記憶され、学習値やダイアグノ
シス情報といった継続保存対象データがEEPROMに
記憶される場合を例に挙げると、この種の電子制御装置
では、制御プログラムのバージョンアップに伴って、E
EPROMのデータマッピング(即ち、どの種類のデー
タがEEPROMのどのアドレスに格納されるか)が変
わることが多い。これは、制御プログラムのバージョン
アップにより、新たな学習制御が追加されて継続保存対
象データの種類が増加したり、不要となった学習制御が
削除されて継続保存対象データの種類が減少したりする
ためである。
【0007】また、EEPROM内のデータは、制御プ
ログラムによって更新されるが、一般に、その更新のた
めの書き込みは、頻繁ではなく、前述したように、予め
決められた更新書込条件が成立しなければ行われない。
このため、プログラム書換機能を有した電子制御装置に
おいて、フラッシュROM内の制御プログラムが新しい
バージョンのものに書き換えられた場合に、EEPRO
のデータマッピングが新旧の制御プログラム間で変わっ
ていると、EEPROM内のデータが新たな制御プログ
ラムによって適正値に書き換えられるまでの間(即ち、
前述の更新書込条件が成立するまでの間)は、正常でな
い学習値などを用いて制御対象を制御してしまう可能性
がある。これは、例えば、EEPROMから、ある種類
のデータを読み出したつもりでも、その読み出し先のア
ドレスには、他の種類のデータが格納されている可能性
があるからである。
【0008】そこで、一般に、制御プログラムを書き換
えた際には、EEPROMの初期化(即ち、EEPRO
Mの各アドレスのデータを、制御プログラムに合った初
期値に設定すること)を行う必要がある。そして、この
ようなEEPROMの初期化に関する技術として、例え
ば特開平11−34767号には、電子制御装置が、そ
の装置に設けられている仕向け地判定端子のレベル変化
を検知すると、EEPROMを初期化する、といった構
成が記載されている。
【0009】しかしながら、この技術では、外部から信
号を与えない限りEEPROMの初期化ができず、その
信号を与えるためのハードウエアや手間の増加を招いて
しまう。一方、上記特開平11−141394号には、
プログラム書換機能を有した電子制御装置において、そ
の装置に適合しない(その装置と互換性の無い)制御プ
ログラムが書換可能不揮発性メモリに書き込まれてしま
うことを防止するために、電子制御装置側に予めその装
置の識別番号を格納しておくと共に、その電子制御装置
は、前述のメモリ書換装置に相当する外部ツールから送
信されて来る識別番号と自己の識別番号とが一致した場
合に、書換可能不揮発性メモリ内の制御プログラムを書
き換えるための処理を行うようにしている。
【0010】しかし、この技術は、制御プログラムの誤
書き換えを防止するためのものであり、継続保存対象デ
ータを記憶するEEPROMといった書換可能不揮発性
メモリの初期化には対応できない。このため、正常でな
い学習値などを用いて制御対象を制御してしまう、とい
う前述の問題は解決できない。
【0011】そこで本発明は、電気的に記憶内容の書き
換えが可能な第1の不揮発性メモリに記憶した制御プロ
グラムをオンボードにて書き換え可能であると共に、そ
の制御プログラムで算出した学習値や異常検出結果等の
特定のデータを、電気的に記憶内容の書き換えが可能な
第2の不揮発性メモリに保存するようにした電子制御装
置において、第1の不揮発性メモリ内の制御プログラム
を書き換えた際の第2の不揮発性メモリの初期化を、簡
単且つ適切に実施できるようにすることを目的としてい
る。
【0012】
【課題を解決するための手段及び発明の効果】上記目的
を達成するためになされた請求項1に記載の本発明の電
子制御装置は、電気的に記憶内容の書き換えが可能な第
1の不揮発性メモリ及び第2の不揮発性メモリを備えて
おり、通常時には、第1の不揮発性メモリに記憶された
制御プログラムに従って所定の制御対象を制御するが、
予め定められた書換条件が成立した場合には、第1の不
揮発性メモリ内の制御プログラムを外部から送信されて
来る新たな制御プログラムに書き換える書換処理を行
う。そして更に、この電子制御装置では、上記第1の不
揮発性メモリ内の制御プログラムによって更新及び参照
される特定のデータが、上記第2の不揮発性メモリに保
存されて、制御対象を制御するための制御処理に用いら
れるようになっている。
【0013】ここで特に、本発明の電子制御装置におい
て、第1の不揮発性メモリには、上記書換処理の実施時
に、新たな制御プログラムと共に、その制御プログラム
で使用される第2の不揮発性メモリの容量を示す使用容
量情報(即ち、その制御プログラムが特定のデータを格
納するために第2の不揮発性メモリの容量をどれだけ使
用するかを示す情報)が書き込まれる。
【0014】そして更に、本発明の電子制御装置では、
第1の不揮発性メモリ内の制御プログラムによる処理の
うち、制御対象を制御するための制御処理に先立って実
行される初期化処理にて、第2の不揮発性メモリの所定
領域から該領域に記憶されている情報を読み出し、その
読み出した情報と、第1の不揮発性メモリに当該制御プ
ログラムと共に書き込まれている前記使用容量情報とを
比較して、その両情報に相違があったならば、第2の不
揮発性メモリを初期化すると共に、該第2の不揮発性メ
モリの前記所定領域に、第1の不揮発性メモリに書き込
まれている前記使用容量情報を書き込む。
【0015】このような本発明の電子制御装置におい
て、第1の不揮発性メモリに最初に制御プログラムが書
き込まれた場合、その最初の制御プログラムP1が使用
する第2の不揮発性メモリの容量を示す使用容量情報J
1も、第1の不揮発性メモリに書き込まれる。
【0016】そして、その制御プログラムP1が初めて
実行されて、上記初期化処理が行われると、この時、第
2の不揮発性メモリの上記所定領域には情報が何も書き
込まれていないため、その所定領域の情報と第1の不揮
発性メモリ内の使用容量情報J1とが相違している(同
一ではない)と判定されて、第2の不揮発性メモリが、
制御プログラムP1に合ったように初期化され(即ち、
第2の不揮発性メモリの各アドレスのデータが、制御プ
ログラムP1により、その制御プログラムP1に合った
初期値に設定され)、更に、第2の不揮発性メモリの上
記所定領域に、第1の不揮発性メモリ内の使用容量情報
J1がコピーされることとなる。
【0017】このため、以後、制御プログラムP1によ
る上記初期化処理が行われた際には、第2の不揮発性メ
モリの上記所定領域に、制御プログラムP1に対応した
使用容量情報J1が書き込まれていることとなり、その
所定領域の情報と第1の不揮発性メモリ内の使用容量情
報J1とが一致していると判定されるため、第2の不揮
発性メモリは初期化されず、その第2の不揮発性メモリ
に格納されている学習値などのデータが初期値に戻され
ることはない。
【0018】次に、第1の不揮発性メモリの記憶内容
が、上記最初の制御プログラムP1から、その時点で最
新の制御プログラム(以下、2番目の制御プログラムと
いう)P2に書き換えられたとする。すると、そのプロ
グラム書き換え時には、新たな2番目の制御プログラム
P2が使用する第2の不揮発性メモリの容量を示す使用
容量情報J2も、第1の不揮発性メモリに書き込まれ
る。
【0019】そして、その2番目の制御プログラムP2
が初めて実行されて、上記初期化処理が行われると、こ
の時、第2の不揮発性メモリの上記所定領域には、前回
の制御プログラムP1に対応した使用容量情報J1が書
き込まれているため、その使用容量情報J1と、第1の
不揮発性メモリ内の使用容量情報J2とが比較されるこ
ととなる。
【0020】ここで、使用容量情報J1と使用容量情報
J2とが同一でないものとすると、この回の初期化処理
にて、第2の不揮発性メモリが制御プログラムP2に合
ったように初期化され、更に、第2の不揮発性メモリの
上記所定領域に、第1の不揮発性メモリ内の使用容量情
報J2がコピーされることとなる。
【0021】よって、以後、制御プログラムP2による
上記初期化処理が行われた際には、第2の不揮発性メモ
リの上記所定領域に、制御プログラムP2に対応した使
用容量情報J2が書き込まれていることとなり、その所
定領域の情報と第1の不揮発性メモリ内の使用容量情報
J2とが一致していると判定されるため、第2の不揮発
性メモリは初期化されず、その第2の不揮発性メモリに
格納されている学習値などのデータが初期値に戻される
ことはない。
【0022】その後、第1の不揮発性メモリの記憶内容
が、上記2番目の制御プログラムP2から、その時点で
最新の制御プログラム(以下、3番目の制御プログラム
という)P3に書き換えられたとする。すると、そのプ
ログラム書き換え時には、新たな3番目の制御プログラ
ムP3が使用する第2の不揮発性メモリの容量を示す使
用容量情報J3も、第1の不揮発性メモリに書き込まれ
る。
【0023】そして、その3番目の制御プログラムP3
が初めて実行されて、上記初期化処理が行われると、こ
の時、第2の不揮発性メモリの上記所定領域には、前回
の制御プログラムP2に対応した使用容量情報J2が書
き込まれているため、その使用容量情報J2と、第1の
不揮発性メモリ内の使用容量情報J3とが比較されるこ
ととなる。
【0024】ここで、使用容量情報J2と使用容量情報
J3とが同一である(即ち、制御プログラムP2から制
御プログラムP3へのバージョンアップでは、第2の不
揮発性メモリのデータマッピングに変更がなかった)も
のとすると、この回の初期化処理にて、第2の不揮発性
メモリの上記所定領域内の使用容量情報J2と第1の不
揮発性メモリ内の使用容量情報J3とが一致していると
判定されるため、第2の不揮発性メモリは初期化されな
い。
【0025】よって、この場合には、3番目の制御プロ
グラムP3による制御処理が最初に行われる時点で、第
2の不揮発性メモリには、それまでの2番目の制御プロ
グラムP2によって蓄積された学習値などの特定のデー
タが保存されていることとなり、3番目の制御プログラ
ムP3の制御処理では、その蓄積されたデータを踏襲し
て制御に使用することとなる。また、以後、制御プログ
ラムP3による上記初期化処理が行われた際には、第2
の不揮発性メモリの上記所定領域に、使用容量情報J3
と同じ使用容量情報J2が書き込まれていることとな
り、その所定領域の情報と第1の不揮発性メモリ内の使
用容量情報J3とが一致していると判定されるため、第
2の不揮発性メモリは初期化されず、その第2の不揮発
性メモリに格納されている学習値などのデータが初期値
に戻されることはない。
【0026】以上のように本発明の電子制御装置では、
第1の不揮発性メモリ内の制御プログラムが書き換えら
れると、その新たな制御プログラムが初めて実行された
際の最初の初期化処理にて、その新たな制御プログラム
が使用する第2の不揮発性メモリの容量と、前回の制御
プログラムが使用していた第2の不揮発性メモリの容量
とが比較され、それら両容量が相違している場合に限
り、第2の不揮発性メモリが初期化されることとなる。
【0027】よって、本発明の電子制御装置によれば、
制御プログラムのバージョンアップ(書き換え)に伴い
第2の不揮発性メモリのデータマッピングが変更され
て、制御プログラムで使用される第2の不揮発性メモリ
の容量が変わると、そのことを自動的に検出して、第2
の不揮発性メモリを確実に初期化することができる。
【0028】また、本発明の電子制御装置では、第1の
不揮発性メモリ内の制御プログラムがバージョンアップ
されても、第2の不揮発性メモリの使用容量が変わって
いなければ、第2の不揮発性メモリは初期化されない。
このため、制御プログラムがバージョンアップされて
も、第2の不揮発性メモリのデータマッピングに変更が
なかった場合には、旧来の制御プログラムの実行によっ
て蓄積した第2の不揮発性メモリ内のデータを、新たな
制御プログラムで引き続き使用することができる。
【0029】例えば、制御プログラムのバージョン情報
を第2の不揮発性メモリに記憶し、それと第1の不揮発
性メモリ内の新たな制御プログラムのバージョン情報と
の違いにより、第2の不揮発性メモリを初期化するよう
にする方法も考えられる。しかし、バージョン情報での
比較を行う場合には、制御プログラムのバージョンアッ
プ時に、常に第2の不揮発性メモリの初期化が行われる
こととなるため、制御プログラムがバージョンアップさ
れても第2の不揮発性メモリのデータマッピングには変
更がない場合にまで、第2の不揮発性メモリが初期化さ
れてしまう。すると、例えば装置の評価段階において、
それまで第2の不揮発性メモリに記憶されていた学習値
等を、もう一度学習制御により記憶させ直す手間が発生
してしまう。これに対して、本発明によれば、第2の不
揮発性メモリの使用容量に増減があった場合にのみ(即
ち、第2の不揮発性メモリのデータマッピングが変更さ
れた場合にのみ)、第2の不揮発性メモリの初期化が行
われることとなるため、上記のような手間は発生しな
い。また、第2の不揮発性メモリに対するデータ書き込
み回数を低減することもできる。
【0030】以上のことから、本発明の電子制御装置に
よれば、第1の不揮発性メモリ内の制御プログラムを書
き換えた際の第2の不揮発性メモリの初期化を、簡単に
且つ適切に実施することができるようになる。一方、本
発明の電子制御装置による上記作用及び効果は、請求項
2に記載の初期化方法によって達成することができる。
【0031】即ち、請求項2の初期化方法は、請求項1
の発明が前提としている構成の電子制御装置において、
第2の不揮発性メモリを初期化するために用いられるも
のである。そして、この初期化方法では、まず、第1の
不揮発性メモリ内の制御プログラムを書き換えるための
書換処理の際に、その第1の不揮発性メモリへ、新たな
制御プログラムと共に、その制御プログラムで使用され
る第2の不揮発性メモリの容量を示す使用容量情報が書
き込まれるようにする。
【0032】そして更に、第1の不揮発性メモリに記憶
される制御プログラムのうち、制御対象を制御するため
の制御処理に該当する部分に先立って実行される初期化
処理の部分に、第2の不揮発性メモリの所定領域から該
領域に記憶されている情報を読み出して、その読み出し
た情報と、第1の不揮発性メモリに書き込まれている前
記使用容量情報とが同一であるか否かを判定する第1の
処理ステップと、その第1の処理ステップで上記両情報
が同一でないと判定された場合に、第2の不揮発性メモ
リを初期化すると共に、該第2の不揮発性メモリの前記
所定領域に、第1の不揮発性メモリに書き込まれている
前記使用容量情報を書き込む第2の処理ステップとを設
ける。
【0033】そして、このような初期化方法によれば、
前述した請求項1記載の本発明の電子制御装置による作
用を得ることができ、第1の不揮発性メモリ内の制御プ
ログラムを書き換えた際の第2の不揮発性メモリの初期
化を、簡単に且つ適切に実施することができるようにな
る。
【0034】
【発明の実施の形態】以下、本発明の一実施形態につい
て、図面を用いて説明する。まず図1は、車両(自動
車)に搭載されて内燃機関型エンジンの制御を行う、実
施形態の電子制御装置(以下、ECUという)2の構成
を表すブロック図である。
【0035】図1に示すように、ECU2は、エンジン
の運転状態を検出する様々なセンサ4からの信号を入力
して波形処理する入力処理回路6と、入力処理回路6か
らのセンサ信号等に基づき、エンジンを制御するための
様々な処理を行うマイクロコンピュータ(以下、マイコ
ンという)8と、マイコン8と通信ラインLを介して接
続され、そのマイコン8にて算出されるデータのうち
で、当該ECU2への電源供給が停止されても継続して
保存すべき学習値やダイアグノシス情報などの特定のデ
ータ(継続保存対象データ)が記憶される第2の不揮発
性メモリとしてのEEPROM9と、マイコン8からの
制御信号に応じて、エンジンに取付けられた燃料噴射装
置(インジェクタ)や点火装置(イグナイタ)等のアク
チュエータ10を駆動する出力回路12と、外部装置と
してのメモリ書換装置14との間でデータ通信を行うた
めの通信回路16と、車両のイグニッションスイッチ1
7のオンに伴い供給されるバッテリBTからの電源を受
けて、マイコン8を始めとする当該ECU2内の各部に
動作用の電源電圧(例えば5V)を供給する電源回路1
8とを備えている。
【0036】尚、電源回路18は、イグニッションスイ
ッチ17がオンされて上記電源電圧の供給を開始してか
ら、その電源電圧が安定すると見なされる所定時間だけ
マイコン8へリセット信号を出力する、所謂パワーオン
リセット機能を有している。そして、マイコン8は、プ
ログラムを実行する周知のCPU(中央演算処理装置)
20と、CPU20によって実行されるプログラム(詳
しくは、そのプログラムを構成する命令コードやそのプ
ログラムの実行時に参照される固定のデータ)を記憶す
る不揮発性のフラッシュROM22及びマスクROM2
4と、CPU20による演算結果等を一時的に記憶する
ための揮発性のRAM26と、入力処理回路6,EEP
ROM8,出力回路12,及び通信回路16との間で信
号やデータをやり取りするためのI/O28と、各種レ
ジスタ(図示省略)等とを備えている。
【0037】ここで、フラッシュROM22は、電気的
に記憶内容の消去及び書き込みが可能な第1の不揮発性
メモリに相当するものであり、このフラッシュROM2
2には、制御対象としてのエンジンを制御するための制
御プログラム(詳しくは、エンジン制御用のプログラム
を構成する命令コード及びそのプログラムの実行時に参
照される固定の制御データ)が記憶されている。
【0038】そして更に、本実施形態において、このフ
ラッシュROM22には、制御プログラムが書き込まれ
る際に、その制御プログラムが使用するEEPROM9
の容量を示す情報(使用容量情報に相当し、以下、EE
PROM使用サイズ情報という)も一緒に書き込まれて
いる。尚、このEEPROM使用サイズ情報は、制御プ
ログラムで使用されるEEPROM9の容量を、例え
ば、EEPROM9の先頭アドレスからのバイト数や、
先頭アドレスからの使用領域の最終アドレスで表すもの
である。
【0039】これに対して、マスクROM24は、記憶
内容の書き換えが不可能な不揮発性ROMである。そし
て、このマスクROM24には、マイコン8のリセット
解除直後に実行されるブートプログラムが予め記憶され
ている。一方、本ECU2には、フラッシュROM22
に書き込まれている制御プログラムを新たな内容に書き
換える際に、メモリ書換装置14が接続される。そし
て、図1に示すように、ECU2とメモリ書換装置14
との接続は、両者の接続用コネクタ30が嵌合されて、
互いの通信線32が信号的に接続されることにより行わ
れる。即ち、接続用コネクタ30が嵌合されると、EC
U2のマイコン8は、通信回路16及び通信線32を介
して、メモリ書換装置14とシリアルデータ通信可能に
なる。
【0040】以上のように構成されたECU2において
は、イグニッションスイッチ17がオンされて、電源回
路18からマイコン8へのリセット信号が解除される
と、マイコン8のCPU20が、まず、マスクROM2
4内のブートプログラムを実行する。そして、メモリ書
換装置14から当該ECU2へフラッシュROM22内
の制御プログラムの書き換えを指示する書換要求コマン
ドが送信されて来ない通常時には、そのブートプログラ
ムにてフラッシュROM22内の制御プログラムをコー
ルし、その制御プログラムにより、後述する初期化処理
を行った後、エンジンを制御するための制御処理を行
う。
【0041】また、マイコン8のCPU20は、ブート
プログラムの実行時に、メモリ書換装置14から当該E
CU2へ上記書換要求コマンドが送信されて来たことを
検出すると、動作モードをプログラムの書換モードに移
行させて、フラッシュROM22に格納されている制御
プログラムを、メモリ書換装置14から通信線32を介
して送信されて来る新たな制御プログラムに書き換える
ための書換処理を行う。
【0042】そこで次に、ECU2のマイコン8で実行
される処理の詳しい内容について、図2及び図3のフロ
ーチャートを用いて説明する。まず、図2は、マイコン
8で実行される処理の全体を表すフローチャートであ
り、そのステップ(以下、単に「S」と記す)110,
S120,及びS150の処理が、マスクROM24内
のブートプログラムによって実行される。そして、S1
30及びS140の処理が、フラッシュROM22内の
制御プログラムによって実行され、S160の処理が、
メモリ書換装置14から送信されてRAM26に転送
(ダウンロード)される書換処理プログラムによって実
行される。
【0043】図2に示すように、マイコン8は、イグニ
ッションスイッチ17のオンに伴い初期状態(リセット
状態)から動作を開始すると、マスクROM24内のブ
ートプログラムの実行を開始し、最初のS110にて、
所定時間以内にメモリ書換装置14から書換要求コマン
ドが送信されて来たか否かを判定することにより、書換
モードに移行すべきか否かを判断する。
【0044】そして、このS110にて、所定時間以内
に書換要求コマンドが送信されて来なかったと判定した
場合には、書換条件が成立せず、書換モードに移行すべ
きではないと判断して、S120に進み、このS120
にて、フラッシュROM22に格納されている制御プロ
グラムへジャンプする。
【0045】すると、フラッシュROM22内の制御プ
ログラムに従って、S130に示す如く電源投入後の初
期化処理が行われ、更にその後、S140に示す如くエ
ンジンを制御するための制御処理が繰り返し実行される
こととなる。尚、制御処理の中では、エンジンを適切に
制御するための学習制御の処理や、エンジン及びそれの
周辺機器の異常を検出するための異常検出処理が行われ
る。そして更に、この制御処理では、RAM26上で演
算される各種データ(即ち、制御プログラムによって更
新及び参照されるデータ)のうち、学習制御で算出した
制御パラメータなどの学習値や、異常検出結果を表すダ
イアグノシス情報といった特定のデータについては、当
該ECU2への電源供給が停止されても継続して保存す
べき継続保存対象データとして、予め決められた更新書
込条件が成立する毎(例えば、一定時間毎や電源供給が
停止されて動作を終了する直前毎)に、RAM26から
EEPROM9における所定のアドレスへコピーする。
【0046】ここで、図2のS130で初期化処理が開
始されると、図3に示すように、まず、最初のS132
にて、EEPROM9内の上記継続保存対象データをR
AM26上にコピーする。これは、CPU20にて処理
がし易いようにするためである。そして、この時、予め
決められたEEPROM9の所定アドレス(例えば末尾
のアドレス)から、後述するS138の処理で書き込ま
れているはずのEEPROM使用サイズ情報も、RAM
26上に読み込む。
【0047】次に、S134にて、上記S132でRA
M26上に読み込んだEEPROM使用サイズ情報と、
フラッシュROM22に書き込まれている現在の本制御
プログラムのEEPROM使用サイズ情報(つまり、現
在の制御プログラムが使用するEEPROM9の容量を
示す情報)とを比較して、両EEPROM使用サイズ情
報が一致していなければ(相違していれば)、S136
に進む。
【0048】そして、このS136にて、EEPROM
9の全記憶領域を初期化し、EEPROMの各アドレス
のデータを、本制御プログラムに合った初期値に設定す
る。尚、この時、EEPROM9の上記所定アドレスの
データ値は、例えば0に初期化される。そして更に、続
くS138にて、フラッシュROM22に書き込まれて
いる現在の本制御プログラムのEEPROM使用サイズ
情報を、EEPROM9の上記所定アドレスに書き込
む。
【0049】そして、その後、残りの他の初期化処理を
実行した後、図2のS140に進んで、制御処理を開始
する。一方、S134にて、上記S132でRAM26
上に読み込んだEEPROM使用サイズ情報と、フラッ
シュROM22に書き込まれている現在の本制御プログ
ラムのEEPROM使用サイズ情報とが、一致している
と判定した場合には、S136とS138の処理を行う
ことなく、そのまま残りの他の初期化処理を実行し、そ
の後、図2のS140に進んで、制御処理を開始する。
【0050】また、図2に戻り、上記S110にて、所
定時間以内に書換要求コマンドが送信されて来たと判定
した場合には、書換条件が成立したとして、書換モード
に移行するために、S150へ進む。そして、このS1
50にて、メモリ書換装置14から上記書換要求コマン
ドの後に送信されて来る書換処理プログラムを受信し
て、その書換処理プログラムをRAM26にダウンロー
ドし、その後、RAM26に格納した書換処理プログラ
ムへジャンプする。
【0051】これにより、メモリ書換装置14から送信
されて来た書換処理プログラムがRAM26上で実行さ
れ、S160に示す如く、フラッシュROM22に格納
されている現在の制御プログラムをメモリ書換装置14
から送信されて来る新たな制御プログラムに書き換える
ための処理が行われる。
【0052】即ち、図2のS160では、メモリ書換装
置14から上記書換処理プログラムの後に送信されて来
る新たな制御プログラム(書換対象プログラム)を受信
すると共に、その受信した書換対象プログラムをフラッ
シュROM22に旧来の制御プログラムに代えて書き込
む書換処理を行う。また、この書換処理の実施時に、フ
ラッシュROM22には、前述したように、制御プログ
ラムと共に、その制御プログラムのEEPROM使用サ
イズ情報も一緒に書き込まれる。
【0053】そして、制御プログラムの書き換えが終了
したならば、S170に示すように、イグニッションス
イッチ17がオフされるまで何も処理を行わない無処理
状態となる。よって、この場合には、イグニッションス
イッチ17がオフされ、その後、当該ECU2とメモリ
書換装置14との接続が解除された状態で、イグニッシ
ョンスイッチ17が再びオンされると、上記S160の
書換処理で書き換えられた新たな制御プログラムに従っ
て、前述したS130での初期化処理とS140での制
御処理とが実行されることになる。尚、制御プログラム
が変わっても、図2のS130では、図3に示した内容
の初期化処理が行われる。
【0054】以上のような本実施形態のECU2におい
て、フラッシュROM22に最初に制御プログラムが書
き込まれた場合、その最初の制御プログラムP1のEE
PROM使用サイズ情報J1も、フラッシュROM22
に書き込まれる。そして、その最初の制御プログラムP
1が初めて実行されて、図3の初期化処理が行われる
と、この時、EEPROM9の上記所定アドレスには情
報が何も書き込まれていない(あるいは内容が不定であ
る)ため、S134にて、その所定アドレスの情報とフ
ラッシュROM22に書き込まれている現在の制御プロ
グラムP1のEEPROM使用サイズ情報J1とが相違
していると判定され、その結果、S136及びS138
の処理により、EEPROM9が、制御プログラムP1
に合ったように初期化されると共に、EEPROM9の
上記所定アドレスに、現在の制御プログラムP1のEE
PROM使用サイズ情報J1がコピーされることとな
る。
【0055】このため、以後、本ECU2に電源が投入
されて制御プログラムP1による図3の初期化処理が行
われた際には、EEPROM9の上記所定アドレスに、
現在の制御プログラムP1のEEPROM使用サイズ情
報J1が書き込まれていることとなり、S134にて、
その所定アドレスの情報とフラッシュROM22内のE
EPROM使用サイズ情報J1とが一致していると判定
されるため、EEPROM9は初期化されず、そのEE
PROM9に格納されている学習値などのデータが初期
値に戻されることはない。
【0056】次に、フラッシュROM22の記憶内容
が、上記最初の制御プログラムP1から、その時点で最
新の制御プログラム(即ち2番目の制御プログラム)P
2に書き換えられたとする。すると、そのプログラム書
き換え時には、新たな制御プログラムP2のEEPRO
M使用サイズ情報J2も、フラッシュROM22に書き
込まれる。
【0057】そして、その2番目の制御プログラムP2
が初めて実行されて、図3の初期化処理が行われると、
この時、EEPROM9の上記所定アドレスには、前回
の制御プログラムP1のEEPROM使用サイズ情報J
1が書き込まれているため、S134では、そのEEP
ROM使用サイズ情報J1と、フラッシュROM22に
書き込まれている現在の制御プログラムP2のEEPR
OM使用サイズ情報J2とが比較されることとなる。
【0058】ここで、EEPROM使用サイズ情報J1
とEEPROM使用サイズ情報J2とが同じでないとす
ると、この回の初期化処理にて、S136及びS138
の処理により、EEPROM9が制御プログラムP2に
合ったように初期化されると共に、EEPROM9の上
記所定アドレスに、現在の制御プログラムP2のEEP
ROM使用サイズ情報J2がコピーされることとなる。
【0059】よって、以後、本ECU2に電源が投入さ
れて制御プログラムP2による図3の初期化処理が行わ
れた際には、EEPROM9の上記所定アドレスに、制
御プログラムP2のEEPROM使用サイズ情報J2が
書き込まれていることとなり、S134にて、その所定
アドレスの情報とフラッシュROM22内のEEPRO
M使用サイズ情報J2とが一致していると判定されるた
め、EEPROM9は初期化されず、そのEEPROM
9に格納されている学習値などのデータが初期値に戻さ
れることはない。
【0060】その後、フラッシュROM22の記憶内容
が、上記2番目の制御プログラムP2から、その時点で
最新の制御プログラム(即ち3番目の制御プログラム)
P3に書き換えられたとする。すると、そのプログラム
書き換え時には、新たな制御プログラムP3のEEPR
OM使用サイズ情報J3も、フラッシュROM22に書
き込まれる。
【0061】そして、その3番目の制御プログラムP3
が初めて実行されて、図3の初期化処理が行われると、
この時、EEPROM9の上記所定アドレスには、前回
の制御プログラムP2のEEPROM使用サイズ情報J
2が書き込まれているため、S134では、そのEEP
ROM使用サイズ情報J2と、フラッシュROM22に
書き込まれている現在の制御プログラムP3のEEPR
OM使用サイズ情報J3とが比較されることとなる。
【0062】ここで、EEPROM使用サイズ情報J2
とEEPROM使用サイズ情報J3とが同じである(即
ち、制御プログラムP2から制御プログラムP3へのバ
ージョンアップでは、EEPROM9のデータマッピン
グに変更がなかった)ものとすると、この回の初期化処
理にて、EEPROM9の上記所定アドレスに書き込ま
れているEEPROM使用サイズ情報J2とフラッシュ
ROM22内のEEPROM使用サイズ情報J3とが一
致していると判定されるため、EEPROM9は初期化
されない。
【0063】よって、この場合には、3番目の制御プロ
グラムP3による制御処理が最初に行われる時点で、E
EPROM9には、それまでの2番目の制御プログラム
P2によって蓄積された学習値などの継続保存対象デー
タが保存されていることとなり、3番目の制御プログラ
ムP3の制御処理では、その蓄積されたデータを踏襲し
て制御に使用することとなる。また、以後、制御プログ
ラムP3による図3の初期化処理が行われた際には、E
EPROM9の上記所定アドレスに、制御プログラムP
3のEEPROM使用サイズ情報J3と同じEEPRO
M使用サイズ情報J2が書き込まれていることとなり、
その所定アドレスの情報とフラッシュROM22内のE
EPROM使用サイズ情報J3とが一致していると判定
されるため、EEPROM9は初期化されず、そのEE
PROM9に格納されている学習値などのデータが初期
値に戻されることはない。
【0064】このように本実施形態のECU2では、フ
ラッシュROM22内の制御プログラムが書き換えられ
ると、その新たな制御プログラムが初めて実行された際
の最初の初期化処理にて、その新たな制御プログラムの
EEPROM使用サイズ情報と、前回の制御プログラム
のEEPROM使用サイズ情報とが比較され、それら両
使用サイズ情報が相違している場合に限り、EEPRO
M9が初期化されることとなる。
【0065】よって、このECU2によれば、制御プロ
グラムのバージョンアップ(書き換え)に伴いEEPR
OM9のデータマッピングが変更されて、制御プログラ
ムで使用されるEEPROM9の容量が変わると、その
ことを自動的に検出して、EEPROM9を確実に初期
化することができる。このため、書き換えられた新たな
制御プログラムが、正常でない学習値などを用いてエン
ジンを制御してしまうことを確実に防止することができ
る。
【0066】しかも、本実施形態のECU2では、フラ
ッシュROM22内の制御プログラムがバージョンアッ
プされても、EEPROM9の使用容量が変わっていな
ければ、EEPROM9は初期化されない。このため、
制御プログラムがバージョンアップされても、EEPR
OM9のデータマッピングに変更がなかった場合には、
旧来の制御プログラムの実行によって蓄積されたEEP
ROM9内のデータを、新たな制御プログラムで引き続
き使用することができる。
【0067】このため、例えばECUの評価段階におい
て、制御プログラムは変更したが、EEPROM9のデ
ータマッピングは変わらないといった場合には、旧制御
プログラムの実行で蓄積されたEEPROM9内の学習
値を、新制御プログラムでも引き続き使用することがで
き、制御プログラムをバージョンアップする毎に必ず学
習値をもう一度学習制御によって記憶させ直す、といっ
た手間がなくなる。また、EEPROM9の初期化を、
本当に必要な場合にだけ行うこととなるため、そのEE
PROM9に対するデータ書き込み回数を低減すること
もできる。
【0068】以上のことから、本実施形態のECU2に
よれば、フラッシュROM22内の制御プログラムを書
き換えた際のEEPROM9の初期化を、簡単に且つ適
切に実施することができるようになる。尚、本実施形態
では、図3の初期化処理における各ステップのうち、S
132とS134が第1の処理ステップに相当し、S1
36とS138が第2の処理ステップに相当している。
【0069】以上、本発明の一実施形態について説明し
たが、本発明は、種々の形態を採り得ることは言うまで
もない。例えば、上記実施形態のECU2では、学習値
などを保存しておくための第2の不揮発性メモリとし
て、EEPROMを用いたが、フラッシュROMなどの
他の書換可能不揮発性メモリを用いても良い。
【0070】また、上記実施形態のECU2では、制御
プログラムを書き換えるための書換処理プログラムを、
メモリ書換装置14側からRAM26へダウンロードす
るようにしたが、例えば、書換処理プログラムをマスク
ROM24に予め格納しておき、そのマスクROM24
上で実行するようにしても良い。
【0071】一方、上記実施形態のECU2は、車両の
エンジンを制御するものであったが、本発明は、例えば
ブレーキ、トランスミッション、サスペンション等の他
の制御対象を制御する電子制御装置に対しても、全く同
様に適用することができる。
【図面の簡単な説明】
【図1】 実施形態の電子制御装置(ECU)の構成を
表すブロック図である。
【図2】 マイコンで実行される処理の全体を表すフロ
ーチャートである。
【図3】 マイコンで実行される初期化処理を表すフロ
ーチャートである。
【符号の説明】
2…電子制御装置(ECU) 4…センサ 6…入
力処理回路 8…マイクロコンピュータ(マイコン) 9…EEP
ROM L…通信ライン 10…アクチュエータ 12…出
力回路 14…メモリ書換装置 16…通信回路 BT…バ
ッテリ 17…イグニッションスイッチ 18…電源回路
20…CPU 22…フラッシュROM 24…マスクROM 2
6…RAM 28…I/O 30…接続用コネクタ 32…通信

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 電気的に記憶内容の書き換えが可能な第
    1の不揮発性メモリ及び第2の不揮発性メモリを備える
    と共に、 通常時には、前記第1の不揮発性メモリに記憶された制
    御プログラムに従って所定の制御対象を制御し、予め定
    められた書換条件が成立した場合には、前記第1の不揮
    発性メモリ内の制御プログラムを外部から送信されて来
    る新たな制御プログラムに書き換える書換処理を行い、 更に、前記制御プログラムにより更新及び参照される特
    定のデータを、前記第2の不揮発性メモリに保存するよ
    うに構成された電子制御装置であって、 前記第1の不揮発性メモリには、前記書換処理の実施時
    に、前記新たな制御プログラムと共に、その制御プログ
    ラムで使用される前記第2の不揮発性メモリの容量を示
    す使用容量情報が書き込まれ、 更に、前記第1の不揮発性メモリ内の制御プログラムに
    よる処理のうち、前記制御対象を制御するための制御処
    理に先立ち実行される初期化処理にて、 前記第2の不揮発性メモリの所定領域から該領域に記憶
    されている情報を読み出し、その読み出した情報と、前
    記第1の不揮発性メモリに当該制御プログラムと共に書
    き込まれている前記使用容量情報とを比較して、その両
    情報に相違があったならば、前記第2の不揮発性メモリ
    を初期化すると共に、該第2の不揮発性メモリの前記所
    定領域に、前記第1の不揮発性メモリに書き込まれてい
    る前記使用容量情報を書き込むこと、 を特徴とする電子制御装置。
  2. 【請求項2】 電気的に記憶内容の書き換えが可能な第
    1の不揮発性メモリ及び第2の不揮発性メモリを備える
    と共に、通常時には、前記第1の不揮発性メモリに記憶
    された制御プログラムに従って所定の制御対象を制御
    し、予め定められた書換条件が成立した場合には、前記
    第1の不揮発性メモリ内の制御プログラムを外部から送
    信されて来る新たな制御プログラムに書き換える書換処
    理を行い、更に、前記制御プログラムにより更新及び参
    照される特定のデータを、前記第2の不揮発性メモリに
    保存するように構成された電子制御装置において、前記
    第2の不揮発性メモリを初期化するための初期化方法で
    あって、 前記書換処理の際に、前記第1の不揮発性メモリへ、前
    記新たな制御プログラムと共に、その制御プログラムで
    使用される前記第2の不揮発性メモリの容量を示す使用
    容量情報が書き込まれるようにし、 更に、前記第1の不揮発性メモリに記憶される制御プロ
    グラムのうち、前記制御対象を制御するための制御処理
    に該当する部分に先立って実行される初期化処理の部分
    に、 前記第2の不揮発性メモリの所定領域から該領域に記憶
    されている情報を読み出して、その読み出した情報と、
    前記第1の不揮発性メモリに書き込まれている前記使用
    容量情報とが同一であるか否かを判定する第1の処理ス
    テップと、 該第1の処理ステップで上記両情報が同一でないと判定
    された場合に、前記第2の不揮発性メモリを初期化する
    と共に、該第2の不揮発性メモリの前記所定領域に、前
    記第1の不揮発性メモリに書き込まれている前記使用容
    量情報を書き込む第2の処理ステップとを設けること、 を特徴とする不揮発性メモリの初期化方法。
JP2001127668A 2001-04-25 2001-04-25 電子制御装置及び不揮発性メモリの初期化方法 Pending JP2002323990A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001127668A JP2002323990A (ja) 2001-04-25 2001-04-25 電子制御装置及び不揮発性メモリの初期化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001127668A JP2002323990A (ja) 2001-04-25 2001-04-25 電子制御装置及び不揮発性メモリの初期化方法

Publications (1)

Publication Number Publication Date
JP2002323990A true JP2002323990A (ja) 2002-11-08

Family

ID=18976495

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001127668A Pending JP2002323990A (ja) 2001-04-25 2001-04-25 電子制御装置及び不揮発性メモリの初期化方法

Country Status (1)

Country Link
JP (1) JP2002323990A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007530353A (ja) * 2004-04-01 2007-11-01 バイエリッシェ モートーレン ウエルケ アクチエンゲゼルシャフト 多数の制御デバイスを備えたバスシステムでの非コンパチビリティを認識する方法
DE102009018265A1 (de) 2008-04-23 2009-11-26 Denso Corporation, Kariya-City Steuereinheit und Programm für diese
JP2014044640A (ja) * 2012-08-28 2014-03-13 Denso Corp 電子制御装置
CN110809755A (zh) * 2017-07-04 2020-02-18 日立汽车系统株式会社 电子控制系统
JP7503117B2 (ja) 2022-11-14 2024-06-19 日立Astemo株式会社 車両用電子制御装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0535490A (ja) * 1991-07-30 1993-02-12 Tokyo Electric Co Ltd データ処理装置
JP2000259420A (ja) * 1999-03-05 2000-09-22 Denso Corp 電子制御装置用の学習値更新装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0535490A (ja) * 1991-07-30 1993-02-12 Tokyo Electric Co Ltd データ処理装置
JP2000259420A (ja) * 1999-03-05 2000-09-22 Denso Corp 電子制御装置用の学習値更新装置

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007530353A (ja) * 2004-04-01 2007-11-01 バイエリッシェ モートーレン ウエルケ アクチエンゲゼルシャフト 多数の制御デバイスを備えたバスシステムでの非コンパチビリティを認識する方法
DE102009018265A1 (de) 2008-04-23 2009-11-26 Denso Corporation, Kariya-City Steuereinheit und Programm für diese
US9951705B2 (en) 2008-04-23 2018-04-24 Denso Corporation Control unit and program for same
JP2014044640A (ja) * 2012-08-28 2014-03-13 Denso Corp 電子制御装置
CN110809755A (zh) * 2017-07-04 2020-02-18 日立汽车系统株式会社 电子控制系统
CN110809755B (zh) * 2017-07-04 2023-09-29 日立安斯泰莫株式会社 电子控制系统
JP7503117B2 (ja) 2022-11-14 2024-06-19 日立Astemo株式会社 車両用電子制御装置

Similar Documents

Publication Publication Date Title
US5826211A (en) Electronic controller having excellent control program and control data overwriting capabilities
US6401163B1 (en) Apparatus and method for rewriting data from volatile memory to nonvolatile memory
JP2003256228A (ja) プログラム書換装置
JP5176728B2 (ja) 車両用電子制御装置
JPH11272498A (ja) 電子制御装置
US8135533B2 (en) Electronic engine control apparatus having improved configuration for ensuring excellent engine startability
JP2000259420A (ja) 電子制御装置用の学習値更新装置
JPH09134307A (ja) 電子制御装置のメモリ書換システム,電子制御装置及びメモリ書換装置
JPH1136973A (ja) 車両用制御装置
US6546321B1 (en) Method and apparatus for rewriting data of control unit for vehicle
US6636989B1 (en) Electronic control apparatus and method for on-board rewriting of non-volatile memories
US20060218340A1 (en) Data validity determining method for flash EEPROM and electronic control system
US6182004B1 (en) Apparatus and method for controlling electric power supply in nonvolatile memory rewriting operation
JP3870563B2 (ja) 電子制御装置及び不揮発性メモリの書き換え回数計数方法
JPH10149282A (ja) 電子装置のメモリ書換システム
US6957135B2 (en) Electronic control system
JP3828335B2 (ja) 車両制御装置のための書き換えシステム
JP4066499B2 (ja) 電子制御装置,電子制御システムおよび適合判断方法
JP2002323990A (ja) 電子制御装置及び不揮発性メモリの初期化方法
JP2002323902A (ja) 電子制御装置
JP2005338955A (ja) 電子制御装置
JP3489306B2 (ja) 電子制御装置
JP2000029710A (ja) 電子制御装置
JPH10105468A (ja) 電子制御装置,メモリ書換装置及び電子制御装置のメモリ書換システム
JP3796837B2 (ja) 電子装置のメモリ書込装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070612

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100317

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100720

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20101130