JP3870563B2 - 電子制御装置及び不揮発性メモリの書き換え回数計数方法 - Google Patents
電子制御装置及び不揮発性メモリの書き換え回数計数方法 Download PDFInfo
- Publication number
- JP3870563B2 JP3870563B2 JP20646198A JP20646198A JP3870563B2 JP 3870563 B2 JP3870563 B2 JP 3870563B2 JP 20646198 A JP20646198 A JP 20646198A JP 20646198 A JP20646198 A JP 20646198A JP 3870563 B2 JP3870563 B2 JP 3870563B2
- Authority
- JP
- Japan
- Prior art keywords
- block
- electronic control
- control device
- memory
- erase
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
- Combined Controls Of Internal Combustion Engines (AREA)
Description
【発明の属する技術分野】
本発明は、所定の制御対象を制御する電子制御装置に関し、特に、制御に用いる制御プログラムや制御データをオンボード書き換え可能な電子制御装置に関する。
【0002】
【従来の技術】
従来より、例えば自動車のエンジンやトランスミッション等を制御する電子制御装置として、電気的に記憶内容の消去及び書き込みが可能な読み出し専用の不揮発性メモリ(以下、書換可能ROMともいう)を備え、その書換可能ROMに記憶された制御プログラムや制御データを、当該装置の完成状態で書き換えることができるようにした所謂オンボード書き換え可能なものが提案されている。
【0003】
即ち、この種の電子制御装置は、通常時には、書換可能ROM内の制御プログラム及び制御データに従ってエンジン等の制御対象を制御するが、別途接続された外部装置としてのメモリ書換装置から書き換え指令を受ける等して、書換条件が成立したと判断すると、自己の動作モードを書換モードに移行させて、書換可能ROMの記憶内容を上記メモリ書換装置から送信されて来る新たなデータに書き換えるための書換処理を行う。
【0004】
そして、このようなオンボード書き換え可能な電子制御装置によれば、市場への供給後に、何等かの原因で動作内容(制御内容)を変更しなければならない事態が起こったとしても、簡単に対応することができる。
ところで、この種の電子制御装置においては、書換可能ROMの書き換え回数(即ち、記憶内容の消去及び書き込みの回数)に制限があるため、記憶内容の消去処理を実行した回数を書換可能ROMの書き換え回数として計数(カウント)すると共に、その計数した回数を不揮発性の所定の記憶部(例えば、書換可能ROMにて、制御プログラムや制御データが記憶される領域以外の記憶領域)に記憶するようにしている。
【0005】
つまり、例えば電子制御装置の動作モードが書換モードに移行した回数を、書き換え回数として計数することも考えられるが、この場合には、何らかの原因により、書換モードに移行しただけで書換処理が実際には行われなかった場合にも、書き換え回数の計数が行われてしまう。そこで、書換可能ROMの記憶内容を書き換える際には、必ず記憶内容を消去してから新たなデータを書き込む、という点に着目し、記憶内容を消去する消去処理の実行回数を計数することにより、書き換え回数を正確に計数できるようにしている。そして、例えば、上記記憶部に記憶された回数をメモリ書換装置側へ転送させて、その回数が予め定められた書換保証回数に達していたら、記憶内容の書き換えを行わないようにしている。
【0006】
一方、この種の電子制御装置に対しては、書換可能ROMの記憶内容を、常に全てではなく、例えば一部の制御プログラムや制御データのみといった具合に、部分的に書き換えたいという要望がある。
このため、従来の電子制御装置では、書換可能ROMとして、記憶内容の消去が予め定められたブロック毎に行える読み出し専用の不揮発性メモリ(一般には、所謂フラッシュメモリであり、以下、ブロック毎の消去が可能な書換可能ROMという)が用いられている。
【0007】
そして、電子制御装置は、書換モードに移行すると、メモリ書換装置から送信されて来る書換可能ROMの各ブロック毎の消去要求に応じて該当するブロックの記憶内容を消去する消去処理を実行し、その後、記憶内容を消去したブロックにメモリ書換装置から送信されて来る新たなデータを書き込むことで、書換可能ROMの記憶内容を書き換える。つまり、このように構成することで、書換可能ROMの記憶内容を、任意のブロック毎に書き換えることができる。
【0008】
【発明が解決しようとする課題】
ここで、ブロック毎の消去が可能な書換可能ROMを用いた上記従来の電子制御装置においても、その書換可能ROMの書き換え回数を計数するためには、前述した理由により、消去処理の実行回数を計数することとなる。
【0009】
しかしながら、単純に消去処理の実行回数を計数するように構成すると、記憶内容を消去したブロックの数(換言すれば、記憶内容を書き換えたブロックの数)を計数してしまうこととなり、書換可能ROMの実際の書き換え回数に対して、計数回数が極めて大きくなってしまうという問題が生じる。
【0010】
一方、この問題を解決するためには、書換可能ROMの各ブロックを夫々区別して、その各ブロック単位に消去処理の実行回数を計数し記憶する手法が考えられる。
ところが、このような手法を採ると、書換可能ROMの各ブロックについて、計数回数を夫々記憶しなければならないため、計数回数を記憶する記憶部の記憶容量を大きく設定しておく必要が生じる。そして、この欠点は、書換可能ROMのブロック数が多い場合ほど顕著になる。
【0011】
また、上記の如く各ブロック単位に消去処理の実行回数を計数する構成は、書換可能ROMの記憶容量に対して実際に記憶させる制御プログラムと制御データの容量が小さく、何れかのブロックの書き換え回数が書換保証回数に達した場合に、余っているブロックを代わりに用いる、といった使用ブロックの切換手法を採用するのであれば有効となる。
【0012】
しかし、通常、この種の電子制御装置では、書換可能ROMのほぼ全記憶領域を使用して制御プログラムと制御データが記憶されるため、上記のような切換手法を採用することは困難である。そして、このように書換可能ROMのほぼ全記憶領域を使用する装置の場合には、何れか1つのブロックでもその書き換え回数が書換保証回数に達してしまうと、もはや全記憶内容を書き換えることはできないため、各ブロック単位に消去処理の実行回数を計数する意味が薄れてしまう。
【0013】
本発明は、こうした問題に鑑みなされたものであり、不揮発性メモリに記憶された制御プログラムや制御データを該不揮発性メモリのブロック毎に書き換え可能な電子制御装置において、その不揮発性メモリの書き換え回数を効率的に且つ十分な正確さで計数できるようにすることを目的としている。
【0014】
【課題を解決するための手段、及び発明の効果】
上記目的を達成するためになされた請求項1に記載の本発明の電子制御装置は、電気的に記憶内容の消去及び書き込みが可能で、且つ、記憶内容の消去が予め定められたブロック毎に行える読み出し専用の不揮発性メモリを備えている。そして、この電子制御装置は、通常時には、前記不揮発性メモリに記憶された制御プログラム及び制御データに従って所定の制御対象を制御し、予め定められた書換条件が成立した場合には、外部から与えられる前記不揮発性メモリの各ブロック毎の消去要求に応じて該当するブロックの記憶内容を消去する消去処理を実行すると共に、記憶内容を消去したブロックに外部から送信されて来る新たなデータを書き込むことにより、前記不揮発性メモリの記憶内容を書き換える。
【0015】
よって、この電子制御装置では、所定の書換条件を成立させてから、不揮発性メモリのブロックのうちで、記憶内容を書き換えたい各ブロックの消去要求を外部から順次与えてやり、その後、その書き換え対象の各ブロックに書き込みたい新たなデータを送信してやることにより、所望のブロックの記憶内容を書き換えることができる。
【0016】
ここで、本発明の電子制御装置では、計数手段が、前記消去処理の実行回数を、不揮発性メモリの書き換え回数として計数すると共に、その計数した回数を不揮発性の記憶部に記憶させるが、特に、この計数手段は、当該電子制御装置が初期状態から継続して動作している期間中に、前記消去処理が複数のブロックについて夫々実行されても、前記消去処理の実行回数を計数する計数動作を1回のみ行うように構成されている。
【0017】
つまり、本発明の電子制御装置は、「不揮発性メモリの各ブロック毎の消去要求に応じて該当するブロックの記憶内容を消去する消去処理の実行回数を、不揮発性メモリの書き換え回数として計数すると共に、電子制御装置が初期状態から継続して動作している期間中は、前記消去処理が複数のブロックについて夫々実行されても、その消去処理の実行回数を1回として計数する」という、本発明の不揮発性メモリの書き換え回数計数方法を実施するようにしている。
【0018】
このため、本発明の電子制御装置及び不揮発性メモリの書き換え回数計数方法によれば、不揮発性メモリの書き換え回数を効率的に且つ十分な正確さで計数することができる。
即ち、まず、この種の電子制御装置では、不揮発性メモリの記憶内容が書き換えられると、その後、電源の供給が一旦遮断されて初期状態から再び動作させられ、これにより、書き換え後の新たな制御プログラムや制御データに基づく当該装置の動作がチェックされる。よって、この種の電子制御装置では、電源の供給が開始されて初期状態から継続して動作している期間中に、不揮発性メモリの同じブロックが2回以上書き換えられることはない。
【0019】
そして、本発明の電子制御装置及び不揮発性メモリの書き換え回数計数方法において、例えば、不揮発性メモリの全ブロックの記憶内容を書き換える場合には、全ブロックについて消去処理が夫々実行されることとなるが、その消去処理の実行回数は1回として計数されることとなり、不揮発性メモリの実際の書き換え回数と、計数した回数とが一致することとなる。
【0020】
また例えば、その後に、不揮発性メモリ内の制御データのみを書き換える場合には、その制御データを記憶した各ブロックについて消去処理が夫々実行されることとなるが、これも1回として計数されることとなる。そして、この場合には、各ブロックの書き換え回数の実際の最大値(尚、この例では、制御データを記憶するブロックの書き換え回数が最大値となる)と、計数した回数とが一致することとなる。
【0021】
また更に、例えば、不揮発性メモリ内の制御プログラム或いは制御データのみを書き換える場合には、その書き換え対象の内容を記憶した各ブロックについて消去処理が実行されることとなるが、これも1回として計数されることとなる。そして、このようなケースが複数回発生した場合には、少なくとも、計数した回数は、不揮発性メモリにおける各ブロックの書き換え回数の実際の最大値以上となるため、不揮発性メモリの書換保証回数以上に書き換えを行ってしまうことを、確実に防止することが可能となる。
【0022】
このように、本発明の電子制御装置及び不揮発性メモリの書き換え回数計数方法によれば、単純に消去処理の実行回数を計数するようにした場合と比較すると、計数される回数は、各ブロックの書き換え回数の実際の最大値により近い値となるため、不揮発性メモリの書き換え回数をより正しく計数することができる。
【0023】
しかも、消去処理の実行回数を、各ブロックの区別なく計数するため、その回数を記憶する記憶部の記憶容量を最低限に設定することができ、非常に効率的である。
ところで、本発明の電子制御装置において、計数手段は、例えば、外部からの消去要求に対応する各ブロックの消去処理が全て完了した後や、記憶内容が消去されたブロックに新たなデータが書き込まれた後に、計数動作を行うようにしても良いが、このように構成すると、計数動作が行われるまでの間に、何らかの原因で当該電子制御装置への電源が遮断されてしまうと、実際の書き換え回数よりも記憶部に記憶される計数回数が小さくなってしまう虞が生じる。
【0024】
そこで、計数手段は、請求項2に記載のように、当該電子制御装置が初期状態から動作を開始して最初に消去処理を実行した場合にのみ、前記計数動作を行うように構成すれば、上記のような虞を排除することができ確実である。つまり、当該電子制御装置が初期状態から動作を開始して最初に消去処理を実行した場合に、消去処理の実行回数を計数するように構成すれば、不揮発性メモリの書き換えが何らかの原因で中断されてしまっても、既に実行された消去処理の回数を確実に計数できるからである。
【0025】
また、この場合、計数手段は、請求項3に記載のように、当該電子制御装置が初期状態から動作を開始して最初に消去要求を受けた場合にのみ、前記計数動作を行うように構成することができる。つまり、このように構成すれば、当該電子制御装置が初期状態から動作を開始して最初に消去処理を実行した場合にのみ、前記計数動作を行うことになるからである。
【0026】
一方、本発明の電子制御装置において、請求項4に記載の如く、前記記憶部に記憶された回数が予め定められた所定値に達しているか否かを判定し、肯定判定した場合に、その旨(つまり、計数手段により計数されて記憶部に記憶された回数が所定値に達している旨)を外部へ報知する報知手段を設ければ、不揮発性メモリの書換保証回数以上に書き換えを行ってしまうことを、確実且つ簡単に防止することができ有利である。
【0027】
【発明の実施の形態】
以下、本発明の一実施形態について、図面を用いて説明する。
まず図1は、車両(自動車)に搭載されて内燃機関型エンジンの制御を行う、実施形態の電子制御装置(以下、ECUという)2の構成を表すブロック図である。
【0028】
図1に示すように、ECU2は、エンジンの運転状態を検出する様々なセンサ4からの信号を入力して波形処理する入力処理回路6と、入力処理回路6からのセンサ信号等に基づき、エンジンを制御するための様々な処理を行うマイクロコンピュータ(以下、マイコンという)8と、マイコン8からの制御信号に応じて、エンジンに取付けられた燃料噴射装置(インジェクタ)や点火装置(イグナイタ)等のアクチュエータ10を駆動する出力回路12と、外部装置としてのメモリ書換装置14との間でシリアルデータ通信を行うための通信回路16と、車両のイグニッションスイッチ17のオンに伴い供給されるバッテリBTからの電源を受けて、マイコン8を始めとする当該ECU2内の各部に動作用の電源電圧(例えば5V)を供給する電源回路18とを備えている。
【0029】
尚、電源回路18は、イグニッションスイッチ17がオンされて上記電源電圧の供給を開始してから、その電源電圧が安定すると見なされる所定時間だけマイコン8へリセット信号を出力する、所謂パワーオンリセット機能を有している。
そして、マイコン8には、プログラムに従い動作する周知のCPU(中央演算処理装置)20と、CPU20を動作させるのに必要なプログラム(詳しくは、そのプログラムを構成するデータ)やそのプログラムの実行時に参照されるデータを記憶する不揮発性のフラッシュメモリ22及びマスクROM24と、CPU20による演算結果等を一時的に記憶するための揮発性のRAM26と、入力処理回路6,出力回路12,及び通信回路16との間で信号やデータをやり取りするためのI/O28とが備えられている。
【0030】
ここで、フラッシュメモリ22は、電気的に記憶内容の消去及び書き込みが可能な読み出し専用の不揮発性メモリである。そして、このフラッシュメモリ22には、エンジンを制御するためのプログラム(以下、エンジン制御プログラムという)と、そのエンジン制御プログラムの実行時に参照されるエンジン制御用の制御データとが記憶されている。
【0031】
特に、フラッシュメモリ22の記憶領域(セル)は、図2に示すように、各々が所定バイトの複数のブロック(本実施形態では、A〜Qの17ブロック)に分割されており、その各ブロックA〜Q毎に記憶内容の消去が行えるようになっている。そして、本実施形態では、ブロックAからブロックKまでの11個のブロックが、エンジン制御プログラムを記憶するプログラム記憶領域として用いられており、ブロックLからブロックPまでの5個のブロックが、エンジン制御用の制御データを記憶する制御データ記憶領域として用いられている。そして更に、ブロックQが、当該フラッシュメモリ22に対して行われたデータ書き換え(即ち、データの消去及び書き込み)の回数を表すデータであって、後述する消去回数カウント値CTを記憶する回数データ記憶領域として用いられている。
【0032】
尚、フラッシュメモリ22のブロックA〜Pには、ECU2の製造工程においてマイコン8がECU2へ実装されてから、該当するエンジン制御プログラム及び制御データが書き込まれるが、ここでは、エンジン制御プログラム及び制御データが既に書き込まれているものとする。
【0033】
これに対して、マスクROM24は、記憶内容の書き換えが不可能な読み出し専用の不揮発性メモリである。そして、このマスクROM24には、マイコン8のリセット解除直後に実行されるブートプログラムが予め記憶されている。
一方、当該ECU2には、フラッシュメモリ22に書き込まれているエンジン制御プログラムや制御データを新たな内容に書き換える際に、メモリ書換装置14が接続される。そして、図1に示すように、ECU2とメモリ書換装置14との接続は、両者の接続用コネクタ30が嵌合されて、互いの通信ライン32が信号的に接続されることにより行われる。即ち、接続用コネクタ30が嵌合されると、ECU2のマイコン8は、通信回路16及び通信ライン32を介して、メモリ書換装置14とシリアルデータ通信可能になる。
【0034】
このようなECU2において、マイコン8は、リセットが解除されて初期状態から動作を開始すると、最初にマスクROM24内のブートプログラムを実行する。そして、メモリ書換装置14が接続されていない通常時には、そのブートプログラムにてフラッシュメモリ22内のエンジン制御プログラムをコールして、エンジンを制御するためのエンジン制御処理を行う。
【0035】
また、マイコン8は、ブートプログラムの実行時や、エンジン制御処理を行っている最中に、後述する書換条件が成立していると判断すると、メモリ書換装置14から送信されて来る書換プログラムを受信してRAM26へロード(転送)する。そして、その書換プログラムをRAM26上で実行することにより、フラッシュメモリ22の記憶内容をメモリ書換装置14から送信されて来る書込データ(即ち、新たなエンジン制御プログラムや制御データ)に書き換えるためのプログラム書換処理を行う。
【0036】
そこで次に、ECU2のマイコン8で実行される処理について、図3及び図4を用いて説明する。
まず、図3は、マイコン8で実行される処理の全体を表すフローチャートチャートであり、そのステップ(以下、単に「S」と記す)100〜S120,S150,及びS160の処理が、マスクROM24内のブートプログラムによって実行される。そして、S130及びS140の処理が、フラッシュメモリ22内のエンジン制御プログラムによって実行され、S170〜S190の処理が、メモリ書換装置14から送信されてRAM26へロードされる書換プログラムによって実行される。
【0037】
図3に示すように、マイコン8は、イグニッションスイッチ17のオンに伴い初期状態(リセット状態)から動作を開始すると、マスクROM24内のブートプログラムの実行を開始し、まずS100にて、RAM26や内部レジスタ(図示省略)を初期化するための初期化処理を行う。そして、この初期化処理にて、フラッシュメモリ22の何れかのブロックの記憶内容を消去する消去処理の実行回数をカウント(計数)したか否かを示すRAM26内のカウント済みフラグFCに、消去処理の実行回数を未だカウントしていないことを示す0を初期値としてセットする。
【0038】
そして、続くS110にて、フラッシュメモリ22の記憶内容を書き換えるべき書換条件が成立したか否かを判定する。尚、本実施形態では、当該ECU2に通信ライン32を介して接続されたメモリ書換装置14がフラッシュメモリ22の書き換えを指令する書換コマンドを送信し、その書換コマンドをマイコン8が受信割込処理等によって検知した場合に、書換条件が成立したと判定する。
【0039】
そして、上記S110で書換条件が成立していないと判定した場合には(S110:NO)、通常のエンジン制御モードであると判断して、S120に進み、このS120にて、フラッシュメモリ22内のエンジン制御プログラムの開始アドレスへジャンプする。
【0040】
すると、その後は、フラッシュメモリ22内のエンジン制御プログラムが実行されて、S130及びS140の処理が行われる。
即ち、まずS130にて、エンジンを制御するためのエンジン制御処理が行われる。尚、このエンジン制御処理は、入力処理回路6からの各種センサ信号とフラッシュメモリ22内の制御データとに基づき、エンジンに対する最適な燃料噴射量や点火時期等を演算し、その演算結果に応じて、燃料噴射装置や点火装置等のアクチュエータ10を駆動するための制御信号を出力回路12に出力する、といった手順で実行される。
【0041】
そして、このエンジン制御処理が繰り返し実行されることで、エンジンの運転が可能となるが、エンジン制御処理の実行を一通り終了すると、次にエンジン制御処理を繰り返す前に、S140にて、前述したS110の場合と同様に書換条件が成立したか否かを判定する。そして、書換条件が成立していなければ(S140:NO)、S130に戻ってエンジン制御処理を実行する。
【0042】
よって、エンジン制御処理(S130)が繰り返される毎に、書換条件の成立/非成立がチェックされ(S140)、書換条件が成立していなければ、直ちに、エンジン制御処理(S130)を繰り返すこととなる。
一方、ブートプログラムのS110或いはエンジン制御プログラムのS140で書換条件が成立していると判定した場合には(S110:YES或いはS140:YES)、フラッシュメモリ22の記憶内容を書き換える書換モードであると判断して、ブートプログラムのS150に移行する。そして、このS150にて、メモリ書換装置14からの書換プログラムを、RAM26へロードする。
【0043】
即ち、メモリ書換装置14は、所定の操作が行われると、前述した書換コマンドを送信した後、ECU2へ書換プログラムを送信するように構成されている。そこで、ECU2のマイコン8は、S150の処理により、メモリ書換装置14からの書換プログラムを受信して、RAM26に格納するのである。
【0044】
そして、S150の処理によって書換プログラムのRAM26へのロードが終了すると、次のS160に進んで、RAM26へロードした書換プログラムの開始アドレスへジャンプする。
すると、マイコン8は、上記書換プログラムをRAM26上で実行することとなり、これにより、S170〜S190の処理が行われる。
【0045】
即ち、まずS170にて、フラッシュメモリ22の回数データ記憶領域であるブロックQから、フラッシュメモリ22の書き換え回数を表す消去回数カウント値CTを読み出し、その消去回数カウント値CTが、予め定められた所定値以上になっているか否かを判定する。尚、上記所定値は、フラッシュメモリ22の書換保証回数(即ち、消去及び書き込みの保証回数)と同じ値か、或いは、その書換保証回数よりも若干小さい値に設定されている。
【0046】
そして、上記S170で消去回数カウント値CTが所定値以上であると肯定判定した場合には(S170:YES)、S180に進み、フラッシュメモリ22の書き換え回数が書換保証回数に達していることを示す報知信号をメモリ書換装置14へ送信する、報知処理を行い、その後、全ての処理を終了する。尚、メモリ書換装置14は、上記S180で送信された報知信号を受信すると、フラッシュメモリ22の書き換え回数が書換保証値に達していることを示すメッセージを所定の表示装置に表示させると共に、ECU2との通信を停止する。
【0047】
これに対し、上記S170で消去回数カウント値CTが所定値以上ではないと判定した場合には(S170:NO)、フラッシュメモリ22の書き換えが可能であると判断して、S190に移行し、図4に示すプログラム書換処理を行う。
ここで、メモリ書換装置14は、ECU2へ書換プログラムを送信した後、フラッシュメモリ22のブロックA〜Pのうちで、今回の書換対象となる各ブロック毎に、消去要求としての消去コマンドを順次送信し、更に、その消去コマンドの送信を終えると、次に、今回の書換対象となる各ブロック毎に、書込コマンドを順次送信するように構成されている。尚、消去コマンドは、記憶内容の消去を要求するコマンドデータと、記憶内容を消去すべきブロック(A〜Pの何れか)を示す識別データとから構成されている。また、書込コマンドは、データの書き込みを要求するコマンドデータと、データを書き込むべきブロック(A〜Pの何れか)を示す識別データと、そのブロックへの書込データ(即ち、新たなエンジン制御プログラム或いは新たな制御データ)と、その書込データの書き込み先を示すアドレスとから構成されている。
【0048】
そこで、ECU2のマイコン8は、図4に示すように、上記S190でプログラム書換処理の実行を開始すると、まずS200にて、メモリ書換装置14からのコマンド(消去コマンド或いは書込コマンド)を受信するまで待機する。
そして、メモリ書換装置14からのコマンドを受信すると(S200:YES)、S210Aに進んで、上記S200で受信したコマンドがブロックAの消去コマンド(即ち、ブロックAの識別データを有する消去コマンドであって、ブロックAの記憶内容の消去を要求する消去コマンド)であるか否かを判定し、ブロックAの消去コマンドであれば(S210A:YES)、S220Aに移行して、「消去及び消去回数カウント値の更新処理」を行う。そして、その後S200に戻って、メモリ書換装置14からの次のコマンドを待つ。
【0049】
ここで、「消去及び消去回数カウント値の更新処理」では、図4の一点鎖線内に示すように、まずS300にて、カウント済みフラグFCが0であるか否かを判定する。そして、カウント済みフラグFCが0であれば(S300:YES)、続くS310にて、カウント済みフラグFCに、消去処理の実行回数を既にカウントしたことを示す1をセットし、更に続くS320にて、フラッシュメモリ22のブロックQ(回数データ記憶領域)から消去回数カウント値CTを読み出し、その読み出した消去回数カウント値CTに1を加算した値(CT+1)を、新たな消去回数カウント値CTとしてフラッシュメモリ22のブロックQに書き込む。そして、続くS330にて、フラッシュメモリ22のブロックAの記憶内容を消去する消去処理を行う。これに対し、上記S300でカウント済みフラグFCが0ではない(即ち1である)と判定した場合には(S300:NO)、S310及びS320の処理を行うことなくS330に移行して、フラッシュメモリ22のブロックAの記憶内容を消去する消去処理を行う。
【0050】
一方、S210Aにて、上記S200で受信したコマンドがブロックAの消去コマンドではないと判定した場合には(S210A:NO)、S210Bに進み、今度は、上記S200で受信したコマンドがブロックBの消去コマンドであるか否かを判定する。そして、ブロックBの消去コマンドであれば(S210B:YES)、S220Bに移行して、S220Aと同様の「消去及び消去回数カウント値の更新処理」を行い、その後、S200に戻ってメモリ書換装置14からの次のコマンドを待つ。但し、このS220Bの「消去及び消去回数カウント値の更新処理」におけるS330では、フラッシュメモリ22のブロックBの記憶内容を消去する消去処理を行う。
【0051】
また、図4においてブロックC〜Oについては図示を省略しているが、S210Bにて、上記S200で受信したコマンドがブロックBの消去コマンドではないと判定した場合には(S210B:NO)、前述したS210A及びS210Bと同様に、上記S200で受信したコマンドがブロックC〜Oの何れかの消去コマンドであるか否かを判定する。そして、ブロックC〜Oの何れかの消去コマンドであれば、S220A及びS220Bと同様の「消去及び消去回数カウント値の更新処理」を行い、その後、S200に戻る。尚、この場合の「消去及び消去回数カウント値の更新処理」におけるS330では、受信した消去コマンドに対応するブロックの記憶内容を消去する消去処理を行う。
【0052】
つまり、図4において、S210Bと後述するS210Pとの間の点線部分には、S210A及びS210Bと同様に、受信したコマンドがブロックC〜Oの各ブロックの消去コマンドであるか否かを判定するS210C〜S210Oの処理と、その各処理で肯定判定された場合に、S220A及びS220Bと同様に受信した消去コマンドに対応するブロックの記憶内容を消去すると共に消去回数カウント値CTを更新するための「消去及び消去回数カウント値の更新処理」を行うS220C〜S220Oの処理とが、設けられている。
【0053】
そして、上記S200で受信したコマンドがブロックA〜Oの消去コマンドでない場合には、S210Pにて、上記S200で受信したコマンドがブロックPの消去コマンドであるか否かを判定し、ブロックPの消去コマンドであれば(S210P:YES)、S220Pにて、S220A及びS220Bと同様の「消去及び消去回数カウント値の更新処理」を行う。そして、その後S200に戻る。尚、このS220Pの「消去及び消去回数カウント値の更新処理」におけるS330では、フラッシュメモリ22のブロックPの記憶内容を消去する消去処理を行う。
【0054】
一方、S210Pにて、上記S200で受信したコマンドがブロックPの消去コマンドではないと判定した場合には(S210P:NO)、メモリ書換装置14が消去コマンドの送信を終了しており、今回のS200で受信したコマンドが消去コマンドではなくブロックA〜Pの何れかに対する書込コマンドであると見なされることから、S230Aに進む。
【0055】
そして、このS230Aにて、上記S200で受信したコマンドがブロックAの書込コマンド(即ち、ブロックAの識別データを有する書込コマンドであって、ブロックAへのデータ書き込みを要求すると共に、ブロックAに書き込むべき書込データを含んだ書込コマンド)であるか否かを判定し、ブロックAの書込コマンドであれば(S230A:YES)、S240Aに移行して、受信したブロックAの書込コマンドに含まれている書込データをフラッシュメモリ22のブロックAに書き込む「書込処理」を行う。尚、この「書込処理」では、書き込んだデータに対してサムチェックも行う。そして、その後S200に戻って、メモリ書換装置14からの次のコマンドを待つ。
【0056】
また、S230Aにて、上記S200で受信したコマンドがブロックAの書込コマンドではないと判定した場合には(S230A:NO)、S230Bに進み、今度は、上記S200で受信したコマンドがブロックBの書込コマンドであるか否かを判定する。そして、ブロックBの書込コマンドであれば(S230B:YES)、S240Bに移行して、S240Aと同様の「書込処理」を行い、その後、S200に戻ってメモリ書換装置14からの次のコマンドを待つ。但し、このS240Bの「書込処理」では、受信したブロックBの書込コマンドに含まれている書込データを、フラッシュメモリ22のブロックBに書き込む。
【0057】
また更に、図4においてブロックC〜Oについては図示を省略しているが、S230Bにて、上記S200で受信したコマンドがブロックBの書込コマンドではないと判定した場合には(S230B:NO)、前述したS230A及びS230Bと同様に、上記S200で受信したコマンドがブロックC〜Oの何れかの書込コマンドであるか否かを判定する。そして、ブロックC〜Oの何れかの書込コマンドであれば、S240A及びS240Bと同様の「書込処理」を行い、その後、S200に戻る。尚、この場合の「書込処理」では、受信した書込コマンドに対応するブロックに、その書込コマンドに含まれている書込データを書き込む。
【0058】
つまり、図4において、S230Bと後述するS230Pとの間の点線部分には、S230A及びS230Bと同様に、受信したコマンドがブロックC〜Oの各ブロックの書込コマンドであるか否かを判定するS230C〜S230Oの処理と、その各処理で肯定判定された場合に、S240A及びS240Bと同様に受信した書込コマンドに対応するブロックへその書込コマンドに含まれている書込データを書き込むための「書込処理」を行うS240C〜S240Oの処理とが、設けられている。
【0059】
そして、上記S200で受信したコマンドがブロックA〜Oの書込コマンドでない場合には、S230Pにて、上記S200で受信したコマンドがブロックPの書込コマンドであるか否かを判定し、ブロックPの書込コマンドであれば(S230P:YES)、S240Pにて、S240A及びS240Bと同様の「書込処理」を行う。そして、その後S200に戻る。尚、S240Pの「書込処理」では、受信したブロックPの書込コマンドに含まれている書込データを、フラッシュメモリ22のブロックPに書き込む。
【0060】
一方、S230Pにて、上記S200で受信したコマンドがブロックPの書込コマンドではないと判定した場合には(S230P:NO)、そのままS200に戻って、メモリ書換装置14からの次のコマンドを待つ。
以上のような本実施形態のECU2において、フラッシュメモリ22の記憶内容を書き換える場合には、まず、メモリ書換装置14を接続して、そのメモリ書換装置14から書換コマンドを送信してやる。すると、ECU2のマイコン8は、図3のS110或いはS140で肯定判定して、自己の動作モードを、図3のS150〜S190の処理を実行する書換モードに移行させる。
【0061】
そして、メモリ書換装置14からECU2へ、書換プログラムを送信し、次に、フラッシュメモリ22のブロックA〜Pのうちで、記憶内容を書き換えたい各ブロックの消去コマンドを順次送信してやる。すると、ECU2のマイコン8は、図4のS210A及びS220A〜S210P及びS220Pの処理(但し、S210C及びS220C〜S210O及びS220Oは図示省略)により、メモリ書換装置14からの各消去コマンドに応じて、該当するブロックの記憶内容を順次消去することとなる。
【0062】
そして更に、その後、メモリ書換装置14からECU2へ、書き換え対象の各ブロックに書き込みたい書込データを含む各ブロック毎の書込コマンドを順次送信してやる。すると、ECU2のマイコン8は、図4のS230A及びS240A〜S230P及びS240Pの処理(但し、S230C及びS240C〜S230O及びS240Oは図示省略)により、記憶内容を消去したブロックにメモリ書換装置14からの各書込コマンドに含まれる書込データを書き込むこととなる。
【0063】
そして、こうした手順により、フラッシュメモリ22の所望のブロックの記憶内容を書き換えることができる。
ここで、本実施形態のECU2では、図4のS220A〜S220Pの「消去及び消去回数カウント値の更新処理」におけるS330で行われる消去処理の実行回数を、同じ「消去及び消去回数カウント値の更新処理」におけるS320の処理によって、フラッシュメモリ22の書き換え回数として計数し記憶するようにしているが、そのS320による計数動作は、当該ECU2が初期状態から動作を開始して最初にメモリ書換装置14からの消去コマンドを受け、その最初の消去コマンドに応じて消去処理を実行した場合にのみ行われることとなる。
つまり、本実施形態のECU2では、イグニッションスイッチ17のオンに伴いバッテリBTからの電源が供給されて、マイコン8が初期状態から動作を開始し、その後、メモリ書換装置14からの最初の消去コマンドを受信した場合には、図3のS100でカウント済みフラグFCに0がセットされているため、S220A〜S220Pのうちの何れかの「消去及び消去回数カウント値の更新処理」におけるS300により、カウント済みフラグFCが0であると判定して(S300:YES)、カウント済みフラグFCに1をセットすると共に(S310)、フラッシュメモリ22のブロックQに記憶している消去回数カウント値CTを1つカウントアップし(S320)、更に、今回受信した消去コマンドに対応するブロックの記憶内容を消去することとなる(S330)。これに対し、マイコン8が動作を開始してから、メモリ書換装置14からの2回目以降の消去コマンドを受信した場合には、カウント済みフラグFCに既に1がセットされているため、S220A〜S220Pのうちの何れかの「消去及び消去回数カウント値の更新処理」におけるS300では、カウント済みフラグFCが1であると判定して(S300:NO)、消去回数カウント値CTのカウントアップを行うことなく、今回受信した消去コマンドに対応するブロックの記憶内容を消去することとなるからである。
【0064】
このため、本実施形態のECU2では、例えば図5に示すように、1回のイグニッションスイッチ(IG)17のオン期間中に、フラッシュメモリ22のブロックA〜Pの記憶内容(即ち、制御プログラムと制御データの全て)を書き換えるべく、メモリ書換装置14からブロックA〜Pの消去要求が順次送信されて来た場合には、最初のブロックAの消去コマンドを受信して該当するブロックAの記憶内容を消去する消去処理が行われる時点にて、消去回数カウント値CTが1つカウントアップされ、その値CTが「n」に更新される。そして、他のブロックB〜Pの各消去コマンドを受信して該当するブロックB〜Pの記憶内容を夫々消去する消去処理が行われる時点では、消去回数カウント値CTが更新されず、その値CTは「n」のままとなる。
【0065】
また、イグニッションスイッチ17が一旦オフされ、その後のイグニッションスイッチ17のオン期間中に、フラッシュメモリ22のブロックL〜Pの記憶内容(即ち、制御データのみ)を書き換えるべく、メモリ書換装置14からブロックL〜Pの消去要求が順次送信されて来た場合にも、最初のブロックLの消去コマンドを受信して該当するブロックLの記憶内容を消去する消去処理が行われる時点にて、消去回数カウント値CTが1つカウントアップされ、その値CTが「n+1」に更新される。そして、他のブロックM〜Pの各消去コマンドを受信して該当するブロックM〜Pの記憶内容を消去する消去処理が行われる時点では、消去回数カウント値CTが更新されず、その値CTは「n+1」のままとなる。
【0066】
以上のように、本実施形態のECU2では、フラッシュメモリ22の各ブロックの消去処理の実行回数を、フラッシュメモリ22の書き換え回数として計数すると共に、当該ECU2が初期状態から継続して動作している期間中(換言すれば、当該ECU2に継続して電源が供給されている期間中)は、消去処理が複数のブロックについて夫々実行されても、その消去処理の実行回数を1回として計数するようにしているため、フラッシュメモリ22の書き換え回数を効率的に且つ十分な正確さで計数することができる。
【0067】
即ち、フラッシュメモリ22内の全ての制御プログラム及び制御データが書き換えられる場合には、ブロックA〜Pについて消去処理が夫々実行されることとなるが、その消去処理の実行回数は1回として計数されることとなり、フラッシュメモリ22の実際の書き換え回数と、計数した回数とが一致することとなる。
【0068】
また、図5に例示したように、フラッシュメモリ22内の全ての制御プログラム及び制御データが書き換えられてから、次の機会に、制御データのみが書き換えられる場合には、その制御データを記憶した各ブロックL〜Pについて消去処理が夫々実行されることとなるが、これも1回として計数されることとなる。そして、この場合には、各ブロックの書き換え回数の実際の最大値(この場合には、制御データを記憶するブロックL〜Pの書き換え回数が最大値となる)と、計数した回数とが一致することとなる。
【0069】
また更に、例えば、フラッシュメモリ22内の制御プログラム或いは制御データの一方のみが書き換えられる場合には、その書き換え対象の内容を記憶した各ブロックについて消去処理が実行されることとなるが、これも1回として計数されることとなる。そして、このようなケースが複数回発生しても、消去処理の計数回数を示す消去回数カウント値CTは、フラッシュメモリ22における各ブロックの書き換え回数の実際の最大値以上となるため、フラッシュメモリ22の書換保証回数以上に書き換えを行ってしまうことを、確実に防止することができる。
【0070】
このように、本実施形態のECU2によれば、単純に消去処理の実行回数を計数するようにした場合と比較すると、消去回数カウント値CTは、各ブロックの書き換え回数の実際の最大値により近い値となり、フラッシュメモリ22の書き換え回数をより正しく計数することができる。
【0071】
しかも、消去処理の実行回数を、各ブロックA〜Pを区別することなく計数するため、フラッシュメモリ22のブロックQにおいて消去回数カウント値CTを記憶する領域を最低限に設定することができ、非常に効率的である。
また、本実施形態のECU2では、初期状態から動作を開始して最初に消去コマンドを受けた場合に、消去回数カウント値CTのカウントアップを行うようにしているため、フラッシュメモリ22の書き換えが何らかの原因で中断されてしまっても、既に実行された消去処理の回数を確実に計数することができる。
【0072】
そして更に、本実施形態のECU2では、フラッシュメモリ22の記憶内容を書き換えるためのプログラム書換処理を開始する前に、図3のS170の処理により、フラッシュメモリ22のブロックQに記憶された消去回数カウント値CTが所定値に達しているか否かを判定し、所定値に達していると判定すると(SS170:YES)、メモリ書換装置14へ報知信号を送信するようにしているため(S180)、フラッシュメモリ22の書換保証回数以上に書き換えを行ってしまうことを、確実且つ簡単に防止することができる。
【0073】
尚、本実施形態では、図3のS100の処理と、図4のS220A〜S220Pの各「消去及び消去回数カウント値の更新処理」におけるS300〜S320の処理とが、計数手段に相当し、フラッシュメモリ22のブロックQが、不揮発性の記憶部に相当している。そして、図3のS170及びS180の処理が、報知手段に相当している。
【0074】
以上、本発明の一実施形態について説明したが、本発明は、上記実施形態に限定されるものではなく、種々の形態を採り得ることは言うまでもない。
例えば、上記実施形態のECU2では、図3のS170〜S190及び図4の処理を実行するための書換プログラムを、メモリ書換装置14側からRAM26へロードするようにしたが、上記書換プログラムをマスクROM24に予め格納しておき、そのマスクROM24上で実行するようにしても良い。そして、この場合には、図3のS150及びS160の処理を省略することができる。
【0075】
また、上記実施形態のECU2において、図4の「消去及び消去回数カウント値の更新処理」におけるS320では、フラッシュメモリ22のブロックQに、ビットデータを1ビットずつ追記していくようにしても良い。つまり、そのブロックQに書き込まれたビットの数を数えれば、消去処理の実行回数を知ることができるからである。
【0076】
一方、上記実施形態のECU2において、図4のS230Pで否定判定した場合には(S230P:NO)、メモリ書換装置14からの終了コマンドを待ち、その終了コマンドを受信すると、ソフト的にプログラムのリセットスタートアドレスへジャンプして、図3のS100から処理を開始するようにしても良い。つまり、この場合には、メモリ書換装置14からの終了コマンドにより、当該ECU2が自動的に初期状態から動作を開始することとなる。
【0077】
また、上記実施形態のECU2は、車両のエンジンを制御するものであったが、本発明は、例えばブレーキ、トランスミッション、サスペンション等の他の制御対象を制御する電子制御装置に対しても、全く同様に適用することができる。
【図面の簡単な説明】
【図1】 実施形態の電子制御装置(ECU)の構成を表すブロック図である。
【図2】 フラッシュメモリの記憶領域を説明する説明図である。
【図3】 ECUのマイコンで実行される処理の全体を表すフローチャートである。
【図4】 ECUのマイコンで実行されるプログラム書換処理を表すフローチャートである。
【図5】 ECUの作用を説明する説明図である。
【符号の説明】
2…電子制御装置(ECU) 4…センサ 6…入力処理回路
8…マイクロコンピュータ(マイコン) 10…アクチュエータ
12…出力回路 14…メモリ書換装置 16…通信回路
BT…バッテリ 17…イグニッションスイッチ 18…電源回路
20…CPU 22…フラッシュメモリ 24…マスクROM
26…RAM 28…I/O 30…接続用コネクタ
32…通信ライン
Claims (5)
- 電気的に記憶内容の消去及び書き込みが可能で、且つ、記憶内容の消去が予め定められたブロック毎に行える読み出し専用の不揮発性メモリを備えると共に、
通常時には、前記不揮発性メモリに記憶された制御プログラム及び制御データに従って所定の制御対象を制御し、予め定められた書換条件が成立した場合には、外部から与えられる前記不揮発性メモリの各ブロック毎の消去要求に応じて該当するブロックの記憶内容を消去する消去処理を実行すると共に、記憶内容を消去したブロックに外部から送信されて来る新たなデータを書き込むことにより、前記不揮発性メモリの記憶内容を書き換えるように構成され、
更に、前記消去処理の実行回数を、前記不揮発性メモリの書き換え回数として計数すると共に、その計数した回数を不揮発性の記憶部に記憶させる計数手段を備えた電子制御装置であって、
前記計数手段は、当該電子制御装置が初期状態から継続して動作している期間中に、前記消去処理が複数のブロックについて夫々実行されても、前記消去処理の実行回数を計数する計数動作を1回のみ行うように構成されていること、
を特徴とする電子制御装置。 - 請求項1に記載の電子制御装置において、
前記計数手段は、当該電子制御装置が初期状態から動作を開始して最初に前記消去処理を実行した場合にのみ、前記計数動作を行うように構成されていること、
を特徴とする電子制御装置。 - 請求項2に記載の電子制御装置において、
前記計数手段は、当該電子制御装置が初期状態から動作を開始して最初に前記消去要求を受けた場合にのみ、前記計数動作を行うように構成されていること、
を特徴とする電子制御装置。 - 請求項1ないし請求項3の何れかに記載の電子制御装置において、
前記記憶部に記憶された回数が予め定められた所定値に達しているか否かを判定し、肯定判定した場合に、その旨を外部へ報知する報知手段を備えたこと、
を特徴とする電子制御装置。 - 電気的に記憶内容の消去及び書き込みが可能で、且つ、記憶内容の消去が予め定められたブロック毎に行える読み出し専用の不揮発性メモリを備え、通常時には、前記不揮発性メモリに記憶された制御プログラム及び制御データに従って所定の制御対象を制御し、予め定められた書換条件が成立した場合には、外部から与えられる前記不揮発性メモリの各ブロック毎の消去要求に応じて該当するブロックの記憶内容を消去する消去処理を実行すると共に、記憶内容を消去したブロックに外部から送信されて来る新たなデータを書き込むことにより、前記不揮発性メモリの記憶内容を書き換えるように構成された電子制御装置に用いられ、
前記不揮発性メモリの書き換え回数を計数するための書き換え回数計数方法であって、
前記消去処理の実行回数を、前記不揮発性メモリの書き換え回数として計数すると共に、前記電子制御装置が初期状態から継続して動作している期間中は、前記消去処理が複数のブロックについて夫々実行されても、その消去処理の実行回数を1回として計数すること、
を特徴とする不揮発性メモリの書き換え回数計数方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP20646198A JP3870563B2 (ja) | 1998-07-22 | 1998-07-22 | 電子制御装置及び不揮発性メモリの書き換え回数計数方法 |
US09/333,994 US6044014A (en) | 1998-07-22 | 1999-06-16 | Electronic control unit and method for storing rewrite count of nonvolatile memory |
DE19934191A DE19934191B4 (de) | 1998-07-22 | 1999-07-21 | Elektronische Steuerungseinheit und Steuerungsverfahren zum Speichern eines Neuschreibungszählwerts eines nichtflüchtigen Speichers |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP20646198A JP3870563B2 (ja) | 1998-07-22 | 1998-07-22 | 電子制御装置及び不揮発性メモリの書き換え回数計数方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2000038954A JP2000038954A (ja) | 2000-02-08 |
JP3870563B2 true JP3870563B2 (ja) | 2007-01-17 |
Family
ID=16523772
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP20646198A Expired - Fee Related JP3870563B2 (ja) | 1998-07-22 | 1998-07-22 | 電子制御装置及び不揮発性メモリの書き換え回数計数方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US6044014A (ja) |
JP (1) | JP3870563B2 (ja) |
DE (1) | DE19934191B4 (ja) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4248624B2 (ja) * | 1998-07-03 | 2009-04-02 | 株式会社デンソー | 内燃機関用電子制御装置。 |
JP2001126124A (ja) * | 1999-10-28 | 2001-05-11 | Sanden Corp | 自動販売機の制御システム |
DE19963208B4 (de) * | 1999-12-28 | 2018-07-05 | Robert Bosch Gmbh | Verfahren zum Manipulationsnachweis einer programmierbaren Speichereinrichtung eines digitalen Steuergeräts |
JP3828335B2 (ja) * | 2000-04-13 | 2006-10-04 | 本田技研工業株式会社 | 車両制御装置のための書き換えシステム |
JP3835969B2 (ja) * | 2000-04-13 | 2006-10-18 | 本田技研工業株式会社 | 車両制御装置のための書き換えシステム |
US6321142B1 (en) | 2000-05-16 | 2001-11-20 | Cummins Engine Company, Inc. | System for programming a vehicle control computer with selectable features and/or trim values |
DE10200242B4 (de) * | 2002-01-05 | 2006-01-05 | Robert Bosch Gmbh | Verfahren zur Funktionsüberwachung eines Steuergeräts |
JP3833970B2 (ja) * | 2002-06-07 | 2006-10-18 | 株式会社東芝 | 不揮発性半導体メモリ |
JP3875153B2 (ja) * | 2002-07-04 | 2007-01-31 | Necエレクトロニクス株式会社 | 不揮発性半導体記憶装置およびその書き換え禁止制御方法 |
JP4073799B2 (ja) * | 2003-02-07 | 2008-04-09 | 株式会社ルネサステクノロジ | メモリシステム |
JP4124692B2 (ja) * | 2003-04-25 | 2008-07-23 | シャープ株式会社 | 不揮発性半導体記憶装置 |
JP4702356B2 (ja) * | 2007-12-10 | 2011-06-15 | 株式会社デンソー | 再書き込み装置及びプログラム |
US9422874B2 (en) * | 2012-12-05 | 2016-08-23 | Electromotive, Inc. | Simplified method to inject ethanol or other solution additives into diesel engines equipped with a digital data bus |
JP6444917B2 (ja) * | 2016-03-08 | 2018-12-26 | 東芝メモリ株式会社 | ストレージシステム、情報処理システムおよび制御方法 |
JP7128763B2 (ja) * | 2019-03-18 | 2022-08-31 | 日立Astemo株式会社 | 電子制御装置及び制御データの設定方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4220877C2 (de) * | 1992-06-25 | 1999-05-20 | Siemens Ag | Verfahren für nichtflüchtige, lösch- und programmierbare Speichereinrichtungen |
JP3109413B2 (ja) * | 1995-07-31 | 2000-11-13 | 株式会社デンソー | 機械制御装置 |
US5930167A (en) * | 1997-07-30 | 1999-07-27 | Sandisk Corporation | Multi-state non-volatile flash memory capable of being its own two state write cache |
US5920501A (en) * | 1997-12-12 | 1999-07-06 | Micron Technology, Inc. | Flash memory system and method for monitoring the disturb effect on memory cell blocks due to high voltage conditions of other memory cell blocks |
JP3544859B2 (ja) * | 1998-05-11 | 2004-07-21 | 富士通株式会社 | 不揮発性半導体メモリを使用した2次記憶装置 |
-
1998
- 1998-07-22 JP JP20646198A patent/JP3870563B2/ja not_active Expired - Fee Related
-
1999
- 1999-06-16 US US09/333,994 patent/US6044014A/en not_active Expired - Lifetime
- 1999-07-21 DE DE19934191A patent/DE19934191B4/de not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
DE19934191A1 (de) | 2000-01-27 |
JP2000038954A (ja) | 2000-02-08 |
DE19934191B4 (de) | 2009-08-06 |
US6044014A (en) | 2000-03-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3870563B2 (ja) | 電子制御装置及び不揮発性メモリの書き換え回数計数方法 | |
JP3491419B2 (ja) | 電子制御装置 | |
US6275911B1 (en) | Memory writing device for an electronic device | |
JP2003256228A (ja) | プログラム書換装置 | |
US6401163B1 (en) | Apparatus and method for rewriting data from volatile memory to nonvolatile memory | |
JP3893755B2 (ja) | 電子制御装置 | |
JP4061694B2 (ja) | 電子制御装置及び制御システム | |
JPH11272498A (ja) | 電子制御装置 | |
US6182004B1 (en) | Apparatus and method for controlling electric power supply in nonvolatile memory rewriting operation | |
JP2000259420A (ja) | 電子制御装置用の学習値更新装置 | |
JP2006323776A (ja) | 情報処理装置 | |
JP2000045858A (ja) | 電子制御装置及び不揮発性メモリの書換回数記憶方法 | |
JPH09128229A (ja) | 電子制御装置 | |
JP2009042850A (ja) | 車両の制御装置および車両制御用プログラムの更新装置 | |
JP3835969B2 (ja) | 車両制御装置のための書き換えシステム | |
JP3828335B2 (ja) | 車両制御装置のための書き換えシステム | |
JP4066499B2 (ja) | 電子制御装置,電子制御システムおよび適合判断方法 | |
US6490663B1 (en) | Electronic control apparatus having rewritable nonvolatile memory | |
JPH10247103A (ja) | メモリ書き換え装置 | |
JP2005338955A (ja) | 電子制御装置 | |
JPH09171459A (ja) | 電子制御装置 | |
JPH11141391A (ja) | 自動車用制御装置 | |
JP3796837B2 (ja) | 電子装置のメモリ書込装置 | |
JPH1120576A (ja) | 自動車用制御装置のメモリ書込み方法及び自動車用制御装置 | |
JPH11259371A (ja) | 電子制御装置及び電子制御装置のプログラム書き換え方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20041227 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060721 |
|
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: 20060926 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20061009 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101027 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101027 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111027 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121027 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121027 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131027 Year of fee payment: 7 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |