JPH09161493A - 書換え可能な不揮発性メモリの管理方法 - Google Patents

書換え可能な不揮発性メモリの管理方法

Info

Publication number
JPH09161493A
JPH09161493A JP32451095A JP32451095A JPH09161493A JP H09161493 A JPH09161493 A JP H09161493A JP 32451095 A JP32451095 A JP 32451095A JP 32451095 A JP32451095 A JP 32451095A JP H09161493 A JPH09161493 A JP H09161493A
Authority
JP
Japan
Prior art keywords
specific data
inspection
writing
data
write
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.)
Withdrawn
Application number
JP32451095A
Other languages
English (en)
Inventor
Yousuke Taichi
陽介 太地
Akira Ikezoe
朗 池添
Kazuo Tauchi
和男 田内
Masataka Wakamoto
昌孝 若本
Nobuyuki Nishiwaki
伸幸 西脇
Takuhiro Tarumoto
拓啓 樽本
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 Ten Ltd
Original Assignee
Denso Ten 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 Denso Ten Ltd filed Critical Denso Ten Ltd
Priority to JP32451095A priority Critical patent/JPH09161493A/ja
Publication of JPH09161493A publication Critical patent/JPH09161493A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Combined Controls Of Internal Combustion Engines (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Read Only Memory (AREA)

Abstract

(57)【要約】 【課題】 書換え可能な不揮発性メモリの管理方法に関
し、このメモリへの書込み中にバッテリー電源の外れ等
による電源断に起因するデータの誤書込みがあったとき
にこれを検知できるようにすることを目的とする。 【解決手段】 車両に搭載され、複数の特定データにつ
いての書込み/読出しが行われるメモリ12においてそ
のメモリ12内の一部に検査領域31を形成し、該検査
領域31内に特定の検査情報をセットし、この検査情報
を監視してこれに変化があるとき、データの誤書込みが
あったことを検知する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は書換え可能な不揮発
性メモリの管理方法に関する。電子制御ユニット(EC
U)を備える車両においては、そのユニット内にメモリ
が設けられる。その代表はプログラムを格納するROM
(Read OnlyMemory)であり、データの
一時格納を行うRAM(Random Access
Memory)である。
【0002】そしてさらに近年はEEPROM(Ele
ctrically Erasable and Pr
ogrammable ROM)も、ユニット内のメモ
リとして使用されるようになっている。このEEPRO
Mは、バッテリー電源が断になっても、バックアップな
しにその中の書込みデータを保持できるものであり、一
種のROMであるが、また同時に電気的に内容を書き換
えることもできるRAMでもある。すなわち書換え可能
な不揮発性メモリであって、EEPROMの他にフラッ
シュメモリ等もこれに該当する。
【0003】このような書換え可能な不揮発性メモリ
(以下、EEPROMとも称す)が要望されるのは、当
該車両に関する制御パラメータの学習制御における学習
値や、各種診断情報や、走行累積距離情報等々を、バッ
クアップなしに保存したいという要請があるからであ
る。本発明はかかるEEPROMの管理方法について述
べるものである。
【0004】
【従来の技術】図17は一般的な電子制御ユニットの構
成例を示す図である。本図の10は、車両のエンジン
(図示せず)等を電子的に制御する電子制御ユニット
(ECU)であり、本発明に係る書換え可能な不揮発性
メモリ(EEPROM)は、好ましくはこのECU10
内に設けられる。これがEEPROM12である。この
EEPROM12に対する書込みや読出しは、バスを介
し、マイクロプロセッサ(μP)11によって行われ
る。
【0005】なおバスにはこの他、前述したROM14
およびRAM15や、上記エンジン等からのセンサ出力
を収集する入力ポート16や、収集した該センサ出力に
対しμP11にて演算処理を行って得た制御出力を、上
記エンジン等に与える出力ポート17等がマルチドロッ
プ形式で持続される。本発明は後述するようにバッテリ
ー電源の外れ等の電源断に起因する問題について述べる
ので、本図では特に電源系統について一層具体的に表し
ている。すなわち、μP11とEEPROM12には、
安定化電源回路等を含む電源回路13を介してバッテリ
ー電源(+B)21から電源が供給される。またバッテ
リー電源21にはメインリレー22やイグニッションス
イッチ(IGSW)23も接続する。
【0006】このうちメインリレー22はEEPROM
12にとって重要な役割を果す。このEEPROM12
は電源なしに(バックアップなしに)、前述した学習値
や診断情報等の車両に関する特定データを保存できるも
のであるが、その特定データの書込みや読出し時には当
然電源を必要とする。この場合、特にその特定データの
書込み時に上記の電源が断になったとすると、EEPR
OM12に対する特定データの誤書込みというきわめて
重大な問題を生ずる。
【0007】そこでメインリレー22はEEPROM1
2に対し次のように作用する。まず、IGSW23をオ
ンにすると、ORゲート18を介しメインリレー22が
励磁され、その接点をオンにする。そうすると、この接
点を通して、かつ、電源回路13を介して、μP11と
EEPROM12に電源が供給される。これを受けてμ
P11はORゲート18に電源オン信号を継続的に印加
し、IGSW23がオフになったとしてもメインリレー
22を励磁し続ける。
【0008】前述のとおり、車両に関する特定データを
EEPROM12に書き込むときは、その書込みが終る
までEEPROM12に対する電源の供給が保証されて
いなければならない。前述したデータの誤書込みを生じ
させないためである。そこで少なくともμP11がEE
PROM12にデータの書込みを行っているときは、そ
の書込みが終了するまで、既述の電源オン信号をORゲ
ート18に印加し続け、仮にIGSW23がオフになっ
たとしても、メインリレー22の接点をオンにしたまま
とし、EEPROM12への書込みが終了したときに初
めてμP11は電源オン信号を解除するようにし、デー
タの書込み中には電源を落さない、という構成になって
いる。
【0009】
【発明が解決しようとする課題】上述した図17につい
ての説明からすると、少なくともEEPROM12への
特定データの書込み中には電源の供給が保証され、デー
タの誤書込みは生じ得ない筈である。ところが、車両が
置かれる環境は広範に及び通常では考えられない事態も
起こり得る。その代表的なものはバッテリー電源21の
外れであり、図17の電源端子24において生ずる可能
性が高い。例えば振動の激しいオフロード走行中には、
意図せずにバッテリー電源21の外れが起こり得る。こ
のときEEPROM12へのデータの書込みがあれば、
データの誤書込みとなる可能性がある。
【0010】あるいはそのような電源外れが意図的に生
ずることも考えておかなければならない。例えば車両の
スイッチをACC(アクセサリー)にしたままで、わざ
と電源端子24を外せばEEPROM12への特定デー
タの書込み中にデータの誤書込みを故意に生じさせるこ
とができる。通常は考え難いことではあるが、累積走行
距離を零にリセットしたいというようなときには、起こ
り得ることである。
【0011】意図的であれ、非意図的であれ、もしEE
PROM12への特定データの書込み中にバッテリー電
源の外れが生ずれば、明らかにEEPROM12内には
データエラーが生ずる。このこと事態を完全に回避する
ことはきわめて困難であるにもかかわらず、従来はμP
11がそのデータエラーを検知できず、EEPROM1
2内のデータが正しいか否かの確認ができないという問
題があった。
【0012】本発明は上記問題点に鑑み、バッテリー電
源の外れ等に起因してEEPROM12にデータの誤書
込みがあったとき、当該データエラーの発生を確認する
ことのできるEEPROMの管理方法を提供することを
目的とするものである。また、そのようなデータエラー
が発生したときこれに対処するための管理方法を提供す
ることを目的とするものである。
【0013】さらにまた、そのようなデータエラーの発
生の確率を低減するための管理方法を提供することを目
的とするものである。
【0014】
【課題を解決するための手段】図1は本発明の基本構成
を表す図である。本図において、12は前述したEEP
ROMであり、そのデータ領域30には複数の前述した
特定データ(1,2…N)が保存される。本発明におい
ては、EEPROM12内に、データ領域30の他に検
査領域31を形成する。そして、この検査領域31に検
査情報をセットすると共に、EEPROM12の検査に
おいてセットされた該検査情報を監視するための判定手
段32を備える。なお、この判定手段32は、単体の論
理回路として構成することもできるが、好ましくはマイ
クロプロセッサ(μP)11内にソフトウェアとして形
成される。
【0015】本図の構成における動作は一例として次の
とおりである。判定手段32は、EEPROM12への
特定データの書込み(あるいは旧特定データの新特定デ
ータへの書換え)がμP11より指示されると、まず検
査領域31内の検査情報として論理“1”をセットする
ものとする。その後、上記の特定データの書込みがデー
タ領域30に対して行われこれが正常に終了すると、上
記検査情報(“1”)を“0”にリセットするものとす
る。
【0016】その後、上述したデータの誤書込みの有無
を知るため、EEPROMの検査を行うが、このために
判定手段32より監視を行う。この監視では該検査情報
に変化があったか否かを調べるという操作が行われる。
上記の場合、一旦“1”にセットされた検査情報が、上
記の監視において“0”になっていることが確認されれ
ば、上記のデータの書込み中に、EEPROM12にバ
ッテリー電源外れ等による電源断は生じなかったものと
判断され、したがってデータの誤込みはないものと判定
される。
【0017】こんどは上記の場合に、問題とする上記電
源断が生じたものとする。まず判定手段32は上述のと
おり検査領域31に“1”をセットする。引き続き、特
定データの書込みがデータ領域30に対して開始する。
この特定データの書込みは例えば図1の1,2…Nの順
に実行される。仮に特定データ1,2…と書込みを行っ
た後、電源断が発生したとする。そうすると、判定手段
32はデータ書込みの開始に先立ってセットした検査情
報の“1”をリセットしない。あるいは電源断のため
に、検査情報の“1”をリセット不能になる。いずれに
せよ、検査領域31の検査情報は“1”になったままで
ある。
【0018】EEPROM12の検査において、判定手
段32は検査領域31にアクセスし、検査情報を監視す
るがこのとき“0”にリセットされるべき検査情報が
“1”になったままであり、ここに判定手段32はデー
タの誤書込みあり(有)と判定する。
【0019】
【発明の実施の形態】形態1 車両に搭載され該車両に関する複数の特定データについ
ての書込みまたは読出しが行われる書換え可能な不揮発
性メモリを管理するための方法であって、まず 特定データの書込みを行うときに、EEPROM12
内に形成された検査領域31に対し、書込みの実行を示
す書込み実行表示フラグをセットする。特定データの
書込みが正常に終了したときに、検査領域31に対し、
書込み実行表示フラグに代えて、書込みの終了を示す書
込み終了表示フラグをセットする。EEPROM12
の検査において、検査領域31をチェックし、書込み実
行表示フラグがセットされたままであるとき、EEPR
OM12に対して特定データの書込み異常があったもの
と判定するようにする。形態2 検査領域31を、複数の特定データの各々に対応させ
て、EEPROM12内に複数形成し、上記の検査を、
複数の特定データについて個別に行うようにする。形態3 複数の特定データの書込みを行うときに、複数の特定
データの各々と対にしてEEPROM12内に複数形成
された各検査領域31に対し、対応する特定データにそ
れぞれ関連付けた検査データを、各特定データの書込み
毎にセットする 。上記の検査において、各検査領域31内の検査デー
タと、これと対をなす対応の特定データとの間に上記の
関連がないとき、特定データの書込み異常があったもの
と判定するようにする。形態4 前述した複数の特定データの書込みを行うに際し、この
書込みに先行して全ての特定データおよび検査データを
初期化しておくようにする。形態5 複数の特定データの書込みを行うときに、これら複数
の特定データの各々の書込みが順次終了する毎に、EE
PROM12内に形成された検査領域31に対し、1ず
つ歩進する計数値をセットする。EEPROM12の
検査において、検査領域31をチェックし、順次に検査
される複数の特定データのうち、上記計数値に相当する
順番に位置する特定データに書込み異常があったものと
判定するようにする。形態6 特定データの書込みが全て正常に終了したときに、検査
領域31に対し、書込みの終了を示す書込み終了キーワ
ードをセットする。前記の検査において、検査領域3
1をチェックし、(i)検査終了を表示する検査終了キ
ーワードがセットされていないときに、書込み表示キー
ワードが予め定めたデータパターンと一致するときは、
特定データの書込み異常がなかったものと判定し、か
つ、検査領域31に該検査終了キーワードをセットし、
(ii)該検査終了キーワードがセットされていないとき
に、書込み終了キーワードが予め定めたデータパターン
と一致しないときは、特定データの書込み異常があった
ものと判定するようにする。 形態7 複数の特定データの書込みを行うときに、これら複数
の特定データの各々と対にして複数形成された各検査領
域31に対し、書込みの終了を示す書込み終了キーワー
ドをそれぞれ各特定データの書込み毎にセットする。
上記の検査において、検査領域31をチェックし、
(i)検査終了を表示する検査終了キーワードがセット
されていないときに、各特定データと対をなす書込み終
了キーワードが予め定めたデータパターンと一致すると
きは、当該一致する特定データの書込み異常はなかった
ものと判定し、かつ、検査領域31に検査終了キーワー
ドをセットし、(ii)この検査終了キーワードがセット
されていないときに、各特定データと対をなす書込み終
了キーワードが予め定めたデータパターンと一致しない
ときは、当該一致しない特定データに書込み異常があっ
たものと判定するようにする。形態8 上記の諸形態において、特定データの少なくとも1つに
書込み異常があったものと判定されたとき、全ての特定
データを初期化するようにする。形態9 上記の諸形態において、特定データの書込み異常があっ
たものと判定されたとき、当該異常に係る特定データの
みを初期化するようにする。形態10 上記の諸形態において、複数の特定データの書込みを行
うに際し、各特定データに対して書換えを行おうとして
いる新たな特定データと現特定データとの間に相違があ
るときのみ、全ての特定データに対する書換えを行うよ
うにする。形態11 複数の特定データの書込みを行うに際し、各特定データ
に対して書換えを行おうとしている新たな特定データと
現特定データとの間に相違があるときのみ、当該相違の
ある特定データについての書換えを行うようにする。
【0020】
【実施例】図2は本発明の第1実施例(形態1)を説明
するためのメモリマップ図である。本図に示すEEPR
OM12はN個の特定データ1,2…Nを収容するデー
タ領域30に対して付加される検査領域31には、検査
フラグXBTCKがセットされる。このフラグXBTC
Kは、図示の例では、1ビットのフラグであり、書込み
の実行を示す書込み実行フラグ(論理“1”)または書
込みの終了を示す書込み終了フラグ(論理“0”)であ
る。
【0021】図3は図2の構成における動作、特に
(A)は特定データおよび検査情報の書込み、(B)は
書込みの正常/異常の検査をそれぞれ表すフローチャー
トである。まず本図の(A)において、EEPROM1
2への特定データの書込みに先立ち、検査フラグXBT
CKに“1”をセットする(書込み実行フラグ)。これ
に引き続き本来の、特定データの書込みを行う(図中、
「データ1の書込み」、「データ2の書込み」…)。
【0022】上記の特定データの書込み中に電源断がな
く正常に行われたときは、検査フラグXBTCKを
“0”にリセットする(書込み終了フラグ)。ここで注
意すべきことは、上記の特定データの書込み中に例えば
バッテリー電源外れによる電源断があったものとする
と、図中の「XBTCK←“0”」なるステップの実行
が不能になることである。したがって検査フラグXBT
CKは“1”にセットされたままである。
【0023】次に図3の(B)を参照する。EEPRO
M12にデータの誤書込み(データエラー)があったか
否かを検査するものである。まず検査フラグXBTCK
を調べる。その結果がYES(XBTCK=“0”)な
らば正常であり、NOならば、データエラー発生と判定
される。したがって、例えば特定データ1〜Nを初期化
する等の対策が求められる。
【0024】図4は本発明の第2実施例(形態2)を説
明するためのメモリマップ図である。本図に示すマッピ
ングは、図2に示すそれとほぼ同じである。異なるの
は、検査領域31にセットされる検査情報が各特定デー
タ対応になっていることである。すなわち、検査フラグ
XBTCKが、特定データ1,2…Nの各々に対応させ
て、XBTCK1,XBTCK2…XBTCKNのごと
く複数存在することである。したがって特定データが8
個あるとすれば、検査領域31は少なくとも8ビット構
成であることを要する。この場合、XBTCK1,XB
TCK2…XBTCKNの各々について、前述した書込
み実行フラグ(論理“1”)および書込み終了フラグ
(論理“0”)が定義される。
【0025】図5は図4の構成における動作、特に
(A)は特定データおよび検査情報の書込み、(B)は
書込みの正常/異常の検査をそれぞれ表すフローチャー
トである。まず本図の(A)において、EEPROM1
2への特定データの書込みに先立ち、全検査フラグXB
TCK1〜XBTCKNを一斉に“1”にセットする
(書込み実行フラグ1,2…Nのセット)。これに引き
続き本来の、特定データの書込みを開始する。例えば特
定データ1から開始する。そして特定データ1の書込み
が行われると(図中、「データ1の書込み」)、その直
後にこの特定データ1について検査フラグXBTCK1
を書込み終了フラグ(論理“0”)にリセットする。
【0026】このような書込みと検査フラグXBTCK
のリセットの対の動作は、以後、特定データ2、特定デ
ータ3…特定データNについて順次実行される。ここで
注意すべきことは、上述した特定データの順次の書込み
中において、仮に特定データ1の書込み直後に既述の電
源断があったとすると、図中の「XBTCK2←
“0”」なるステップの実行が不能になることである。
したがって検査フラグXBTCK2は“1”(書込み実
行表示フラグ)にセットされたままである。なお、一般
的には、特定データ2以降の全ての特定データについて
も書込み終了表示フラグ(“0”)へのリセットは行わ
れないであろう。
【0027】次に図5の(B)を参照する。図3の
(B)と同様の検査ルーチンである。まず特定データ1
について、データの誤書込み(データエラー)があった
か否かを検査する。「XBTCK1=“0”?」のステ
ップであり、上述の例によれば、その結果はYESであ
り、次ステップへ進む。ところが上述の例によると、特
定データ2の書込み時に電源断が生じており、「XBT
CK2=“0”?」の結果はNOとなる。このとき、特
定データ2にデータエラー(特定データ2についての誤
書込み)が発生したものと判定される。したがって例え
ば特定データ2を初期化する等の対策が求められる。な
お、それ以降の特定データ3〜Nについても、データエ
ラー発生と判定され、各々について初期化される。ある
いは初期化に代えて運転者あるいは保守者にウォーニン
グを行うようにしてもよい(以後の実施例についても同
じ)。
【0028】上述した第2実施例と既述の第1実施例の
相違は、第2実施例の場合第1実施例に比べて動作がや
や煩雑になる反面、データエラーの発生箇所を具体的に
特定できることである。したがって、特定データの修復
は当該異常データについてのみ実行すれば良いことにな
る。一般にEEPROMへのデータ書込み保証回数には
制限があり、通常のRAMのごとく無制限に書込みを行
うことは控えるべきである。このためにも、異常データ
にのみに限って再書込みできるようにすることは有益で
ある。また、第1実施例では、データエラーの有無を検
査フラグの1ビットにのみ頼っているので、万一、ノイ
ズ等によりこの1ビットがビット反転し見掛け上リセッ
トされてしまうと、電源断の検知ができなくなるが、第
2実施例では、このリスクが少ない。そのようなビット
反転が多ビット同時に起こることはまれだからである。
【0029】図6は第3および第4実施例(形態3およ
び4)を説明するためのメモリマップ図である。本図に
示すEEPROM12は、特定データ1,特定データ2
…特定データNにそれぞれ対応させたN個のデータ領域
30と、各データ領域と対にして形成されるN個の検査
領域31を備える。各検査領域31には対応する特定デ
ータにそれぞれ関連付けた検査データが、前述の検査情
報としてセットされる。このセットは各特定データの書
込みがある毎に行われる。
【0030】ここで注意すべきことは、上記の特定デー
タの書込み中や検査データの書込み中に電源断が発生す
ると、データエラーを生じ、対をなす特定データと検査
データとの間に上述の関連付けが失われてしまうことで
ある。したがってここに特定データおよび/または検査
データの書込み異常があったものと判定することができ
る。
【0031】ここに特定データに対する関連付けとは、
例えば次のような操作をいう。第1例としては、各検査
データとして対応する特定データの1の補数を割り付け
ることが挙げられる。つまりビット反転したミラーデー
タである。図6はこのミラーデータの例を示している。
第2例としては、上記1の補数に代えて2の補数とする
ことである。また第3例としては、各特定データにCR
C演算結果やパリティを、対応する検査ビットとして割
り付けることが挙げられる。なお、以上述べたことは第
3および第4実施例のいずれも共通である。
【0032】図7は図6の構成における動作、特に
(A)は特定データおよび検査情報の書込み、(B)は
書込みの正常/異常の検査をそれぞれ表すフローチャー
トであるまず本図の(A)を見ると、最初にステップS
(初期化)が示されているが、第3実施例と第4実施例
の違いは、このステップSを導入するか(第4実施例)
しないか(第3実施例)、だけである。そこでまず第3
実施例に即して説明すると、まず特定データ1の書込み
(図中の「データ1の書込み」)を行う。そしてこれに
続いて、特定データ1と対をなす、検査情報をなすミラ
ーデータ1の書込みを行う。
【0033】このような特定データとミラーデータの対
の書込み操作は、以後、“特定データ2+ミラーデータ
2”…“特定データN+ミラーデータN”と繰り返され
る。ここで注意すべきことは、上述した特定データおよ
びミラーデータの順次書込み中において、仮にミラーデ
ータ1の書込み直後に既述の電源断があったとすると、
図中の「データ2の書込み」より以降の書込みにデータ
エラーが含まれてしまうことである。「データ2の書込
み」のステップで書き込まれた特定データ2と、「ミラ
ーデータ2の書込み」ステップで書き込まれたミラーデ
ータ2との間の既述した関連付けは喪失してしまう。ま
た以降に現れる、各特定データとこれと対をなすミラー
データとの間の既述した関連付けも喪失してしまう筈で
ある。
【0034】次に図7の(B)を参照する。図3の
(B)や図5の(B)と同様の検査ルーチンである。ま
ず特定データ1について、データの誤書込み(データエ
ラー)があったか否かを調べる。「データ1=ミラーデ
ータ1のバー?」のステップであり、上述の例によれば
その結果はYESである。ここにミラーデータ1のバー
とは、ミラーデータ1を論理的に反転したものであり、
ミラーデータ1を論理的に反転したものと特定データ1
とが一致するように予め上記の関連付けが行われてい
る。このことは他の特定データとそれぞれに対応するミ
ラーデータとの間でも同じである。
【0035】ところで上述の例によると、特定データ2
およびミラーデータ2の書込みの際に電源断が生じてお
り、「データ2=ミラーデータ2のバー?」の結果はN
Oとなる。このとき、特定データ2およびミラーデータ
2の少なくとも一方にデータエラー(データの誤書込
み)が発生したものと判定される。これが図中の「デー
タ2エラー判定」である。もしミラーデータ2にのみデ
ータエラーがあっても特定データ2のエラーとして判定
してしまう。そして、図5(B)で示したように特定デ
ータ2の初期化を行ったり(このときミラーデータ2も
初期化する)、あるいはウォーニングを発生する。な
お、それ以降の特定データ3〜Nおよび対応するミラー
データ3〜Nについてもデータエラーと判定され、これ
らについて初期化等を行う。
【0036】このように検査データとしてミラーデータ
のように特定データに関連付けたものを用いることによ
り、データエラーが発生したときにそれが電源断による
ものか、多ビット中の1または数ビットがノイズにより
部分的にエラーになったのかを詳しく知ることができ
る。図7(A)に戻ると、第4実施例の場合には、ステ
ップSが初めに導入される。このステップSは、全ての
特定データ1〜Nと全てのミラーデータ1〜Nを予め初
期化(例えば¥00の書込み)してしまうという工程で
ある。その後の工程は上述した第3実施例と同じであ
る。
【0037】このように予め初期化しておけば、電源断
が発生したときにその前後の切り分けがきわめて明確に
なる。第3実施例の場合、電源断後であっても直前のデ
ータが残留しているので、電源断の切り分けは必ずしも
明確ではない。図8は本発明の第5実施例(形態5)を
説明するためのメモリマップ図である。本図に示すマッ
ピングは、図4に示すそれと近似している。異なるの
は、検査領域31にセットされる検査情報がカウントデ
ータCBTCKになっていることである。
【0038】カウントデータCBTCKは、特定データ
1、特定データ2…と書込みが順次終了する毎に、1ず
つ歩進(インクリメント)される計数値である。このた
めのカウンタはマイクロプロセッサ(μP)11内にソ
フトウェアで形成できる。かくして、例えば特定データ
1から特定データ8まで正常に書込みが終了すれば、カ
ウントデータCBTCKによって表される計数値は
“7”となる。ただし、0からカウントするものとす
る。
【0039】図9は図8の構成における動作、特に
(A)は特定データの書込みおよびカウントアップ、
(B)は書込みの正常/異常の検査をそれぞれ表すフロ
ーチャートである。まず本図の(A)において、カウン
トデータCBTCKを「0」にリセットする。その後、
各特定データの書込みが終了する毎にCBTCKを+1
(歩進)する。
【0040】次に図9の(B)を参照する。既述の検査
ルーチンである。「CBTCK=0?」のステップがY
ESであったとすると、初めから特定データの書込みが
成功しなかったことにより、特定データ1のデータエラ
ー発生(図中の「データ1エラー判定」)があったもの
と判定される。「CBTCK=1?」のステップがYE
Sであったとすると、特定データ1の書込みは正常で、
特定データ2の書込みに異常があったものと判定され
る。
【0041】この第5実施例によれば、数ビットの検査
領域31でありながら、データエラー発生箇所まで推定
可能となる。図10は本発明の第6実施例(形態6)を
説明するためのメモリマップ図である。本図に示すマッ
ピングは図2のそれと同様である。異なるのは、検査領
域31にセットされる検査情報がキーワード(KEYW
D)になっていることである。
【0042】特定データ1、特定データ2…特定データ
Nの書込みが全て正常に終了したときのみ、検査領域3
1に特定のKEYWORDがセットされる。図11は図
10の構成における動作、特に(A)は特定データとK
EYWDの書込み、(B)は書込みの正常/異常の検査
をそれぞれ表すフローチャートである。
【0043】特定データの書込みが全て正常に終了した
ときに、検査領域31に対し、書込みの終了を示す書込
み終了キーワード(KEYWD=¥5A)をセットす
る。 EEPROM12の検査において、検査領域31をチ
ェックし、(i)検査終了を表示する検査終了キーワー
ド(KEYWD=¥00)がセットされていないとき
に、書込み終了キーワードが予め定めたデータパターン
(¥5A)と一致するときは、特定データの書込み異常
がなかったものと判定し、かつ、検査領域31に該検査
終了キーワード(KEYWD=¥00)をセットし、
(ii)該検査終了キーワード(¥00)がセットされて
いないときに、書込み終了キーワードが予め定めたデー
タパターン(¥5A)と一致しないときは、特定データ
の書込み異常(データエラー)があったものと判定する
ようにする。
【0044】この第6実施例によれば、書込み終了キー
ワードKEYWDが例えば¥5Aのように予め定められ
ているから、仮にノイズ等により¥5Aの中のいずれか
のビットに反転が生じても、この反転を見付けることが
できる。これに対し、図2の構成である検査フラグXB
TCKが仮にノイズ等により論理“0”に反転してしま
うとこの反転を見付けることはできず、最早電源断の検
知は不能となる。
【0045】図12は本発明の第7実施例(形態7)を
説明するためのメモリマップ図である。このマッピング
は図6のそれと近似している。異なるのは、検査領域3
1にセットされる検査情報がキーワード(KEYWD)
になっている。特定データ1,2,3…の各書込みが終
了する毎に、対応するキーワード1,2,3…が書き込
まれる。なお、キーワードKEYWDとしては、全ての
キーワード1〜Nについて統一しても良くあるいは個々
に違うキーワードを割り当てても良い。次に述べるフロ
ーチャートでは全てのキーワードをKEYWD=¥5A
に統一した例を示す。
【0046】図13は図12の構成における動作、特に
(A)は特定データとKEYWDの書込み、(B)は書
込みの正常/異常の検査をそれぞれ表すフローチャート
である。複数の特定データの書込みを行うときに、これ
ら複数の特定データの各々と対にして複数形成された各
検査領域31に対し、書込みの終了を示す書込み終了キ
ーワード(KEYWD=¥5A)をそれぞれ各特定デー
タの書込み毎にセットする。
【0047】EEPROM12の検査において、検査領
域31をチェックし、(i)検査終了を表示する検査終
了キーワード(KEYWD=¥00)がセットされてい
ないときに、各特定データと対をなす書込み終了キーワ
ードが予め定めたデータパターン(¥5A)と一致する
ときは、当該一致する特定データの書込み異常(データ
エラー)はなかったものと判定し、かつ、検査領域31
に検査終了キーワード(KEYWD=¥00)をセット
し、(ii)この検査終了キーワードがセットされていな
いときに(KEYWD≠¥00)、各特定データと対を
なす書込み終了キーワードが予め定めたデータパターン
(¥5A)と一致しないときは、当該一致しない特定デ
ータに書込み異常(データエラー)があったものと判定
するようにする。
【0048】この第7実施例によれば、キーワード(K
EYWD)を用いることによる前述(第6実施例)の利
点が、特定データの1つ1つについて得られる。次に第
8実施例(形態8)について説明する。この第8実施例
は本発明の第2の目的に対応するものであり、上述した
各実施例において、データの書込み異常(データエラ
ー)が発生したときの対処手段に関するものである。
【0049】この第8実施例(形態8)では、その第2
の目的のために、EEPROM12に対し特定データの
少なくとも1つに書込み異常(データエラー)があった
ものと判定されたとき、全ての特定データを初期化する
ものである。その第2の目的は次のごとく達成すること
もできる。すなわち、EEPROM12に対し特定デー
タの書込み異常(データエラー)があったものと判定さ
れたとき、当該異常に係る特定データのみを初期化する
というものである。これが本発明の第9実施例(形態
9)である。これは、図2に示すマッピング構成以外の
EEPROM12について適用可能である。
【0050】EEPROM12への書込み回数が減少す
るので第8実施例よりも有利である。最後に本発明の第
3の目的に対応可能な実施例について述べる。既述のと
おり第3の目的は、データエラーの発生確率を低減する
ことであり、簡単に言えば、書込み回数に制限のあるE
EPROMに対し、再書込みする回数を極力減らそうと
いうものである。次に述べる第10実施例と第11実施
例が該当する。
【0051】図14は第10実施例(形態10)を説明
するためのメモリマップ図である。本図において左欄
は、前述と同様のEEPROM12であり、これに対し
μP11内のRAM41のマッピングが新たに示されて
いる。EEPROM12に保存すべき特定データ1,2
…NをEDA1,2…Nで表し、RAM41内に一時格
納すべきコピーデータ1,2…NをCDA1,2…Nで
表す。
【0052】基本的な考え方は、特定データ1,2…N
の書込みを行うに際し、各特定データに対して書換えを
行おうとしている新たな特定データと現特定データとの
間に相違があるときのみ、全ての特定データに対する書
換えを行うというものである。これにより書込みの回数
は減らせる。図15は第10実施例の動作を説明するた
めの図である。図14も参照すると、μP11が新たな
特定データ1,2…Nを順次演算により生成するとこれ
らを自内のRAM41に収容する。
【0053】さらにμP11は対応するEEPROM1
2およびRAM41の各データ同士を比較する。もし、
これら特定データのうちの1つにでも不一致(NO)が
あるならば、EEPROM12へ書込みを実行する。も
し各対応の特定データが全て一致(YES)していれ
ば、EEPROM12に対しては一切書込みを行わな
い。これにより無駄な書込みを排除する。
【0054】図16は第11実施例の動作を説明するた
めの図である。第10実施例と異なるのは、各特定デー
タの1つ1つについて上記の比較を実行することであ
る。すなわち複数の特定データの書込みを行うに際し、
各特定データに対して書換えを行おうとしている新たな
特定データと現特定データとの間に相違があるときの
み、当該相違のある特定データについての書換えを行う
ようにする。
【0055】図15および図16を参照すると、新たな
特定データ1,2…Nを順次演算により生成する都度、
これを一旦自内のRAM41に格納する。例えば、新た
な特定データ1(CDA1)が現特定データ1(EDA
1)と一致(YES)するならばEEPROM12への
書込みは行わない。逆に新たな特定データ1(CDA
1)が現特定データ1(EDA1)から変化していると
き(両者に相違があるとき(NO)は、そのときの
み)、EEPROM12への特定データの書込みを実行
する。以下、特定データ2,3…Nについて同様であ
る。
【0056】これにより第10実施例よりもさらに特定
データの書込み回数を減らすことができる。
【0057】
【発明の効果】以上説明したように本発明によれば、バ
ッテリー電源の外れ等に起因する電源断によって、EE
PROMへの特定データの書込みに誤りが生じた場合、
マイクロプロセッサはこれを検知することが可能とな
り、EEPROMの保存データの信頼性を飛躍的に向上
させることができる。
【0058】また、もしそのようなデータの誤書込みが
あっても、当該特定データに対して初期化を行うことに
より、エラーデータがそのまま利用されることがないよ
うにすることができる。さらにまた、無駄なデータの書
込みを排除して、そのようなデータの誤込みが生ずる要
因を少しでも減らすことができ、長期に亘ってEEPR
OMの高信頼性を維持可能となる。
【図面の簡単な説明】
【図1】本発明の基本構成を表す図である。
【図2】本発明の第1実施例を説明するためのメモリマ
ップ図である。
【図3】図2の構成における動作であって、(A)は特
定データの書込み、(B)は書込みの正常/異常の検査
をそれぞれ表すフローチャートである。
【図4】本発明の第2実施例を説明するためのメモリマ
ップ図である。
【図5】図4の構成における動作であって、(A)は特
定データおよび検査情報の書込み、(B)は書込みの正
常/異常の検査をそれぞれ表すフローチャートである。
【図6】第3および第4実施例を説明するためのメモリ
マップ図である。
【図7】図6の構成における動作であって、(A)は特
定データおよび検査情報の書込み、(B)は書込みの正
常/異常の検査をそれぞれ表すフローチャートである。
【図8】本発明の第5実施例を説明するためのメモリマ
ップ図である。
【図9】図8の構成における動作であって、(A)は特
定データおよび検査情報の書込みおよびカウントアッ
プ、(B)は書込みの正常/異常の検査をそれぞれ表す
フローチャートである。
【図10】本発明の第6実施例を説明するためのメモリ
マップ図である。
【図11】図10の構成における動作であって、(A)
は特定データとKEYWDの書込み、(B)は書込みの
正常/異常の検査をそれぞれ表すフローチャートであ
る。
【図12】本発明の第7実施例を説明するためのメモリ
マップ図である。
【図13】図12の構成における動作であって、(A)
は特定データとKEYWDの書込み、(B)は書込みの
正常/異常の検査をそれぞれ表すフローチャートであ
る。
【図14】第10実施例を説明するためのメモリマップ
図である。
【図15】第10実施例の動作を説明するための図であ
る。
【図16】第11実施例の動作を説明するための図であ
る。
【図17】一般的な電子制御ユニットの構成例を示す図
である。
【符号の説明】
10…電子制御ユニット(ECU) 11…マイクロプロセッサ(μP) 12…EEPROM 13…電源回路 14…ROM 15…RAM 16…入力ポート 17…出力ポート 18…ORゲート 21…バッテリー電源(+B) 22…メインリレー 23…イグニッションスイッチ(IGSW) 24…電源端子 30…データ領域 31…検査領域 41…RAM
───────────────────────────────────────────────────── フロントページの続き (72)発明者 若本 昌孝 兵庫県神戸市兵庫区御所通1丁目2番28号 富士通テン株式会社内 (72)発明者 西脇 伸幸 兵庫県神戸市兵庫区御所通1丁目2番28号 富士通テン株式会社内 (72)発明者 樽本 拓啓 兵庫県神戸市兵庫区御所通1丁目2番28号 富士通テン株式会社内

Claims (11)

    【特許請求の範囲】
  1. 【請求項1】 車両に搭載され該車両に関する複数の特
    定データについての書込みまたは読出しが行われる書換
    え可能な不揮発性メモリを管理するための方法であっ
    て、 前記特定データの書込みを行うときに、前記不揮発性メ
    モリ内に形成された検査領域に対し、書込みの実行を示
    す書込み実行表示フラグをセットし、 前記特定データの書込みが正常に終了したときに、前記
    検査領域に対し、前記書込み実行表示フラグに代えて、
    書込みの終了を示す書込み終了表示フラグをセットし、 前記不揮発性メモリの検査において、前記検査領域をチ
    ェックし、前記書込み実行表示フラグがセットされたま
    まであるとき、該不揮発性メモリに対して前記特定デー
    タの書込み異常があったものと判定することを特徴とす
    る書換え可能な不揮発性メモリの管理方法。
  2. 【請求項2】 前記検査領域を、前記複数の特定データ
    の各々に対応させて、前記不揮発性メモリ内に複数形成
    し、前記不揮発性メモリの検査を、複数の前記特定デー
    タについて個別に行う請求項1に記載の管理方法。
  3. 【請求項3】 車両に搭載され該車両に関する複数の特
    定データについての書込みまたは読出しが行われる書換
    え可能な不揮発性メモリを管理するための方法であっ
    て、 前記複数の特定データの書込みを行うときに、該複数の
    特定データの各々と対にして前記不揮発性メモリ内に複
    数形成された各検査領域に対し、対応する該特定データ
    にそれぞれ関連付けた検査データを、各該特定データの
    書込み毎にセットし、 前記不揮発性メモリの検査において、各前記検査領域内
    の前記検査データと、これと対をなす対応の前記特定デ
    ータとの間に前記の関連がないとき、該不揮発性メモリ
    に対して前記特定データの書込み異常があったものと判
    定することを特徴とする書換え可能な不揮発性メモリの
    管理方法。
  4. 【請求項4】 前記複数の特定データの書込みを行うに
    際し、該書込みに先行して全ての前記特定データおよび
    検査データを初期化しておく請求項3に記載の管理方
    法。
  5. 【請求項5】 車両に搭載され該車両に関する複数の特
    定データについての書込みまたは読出しが行われる書換
    え可能な不揮発性メモリを管理するための方法であっ
    て、 前記複数の特定データの書込みを行うときに、該複数の
    特定データの各々の書込みが順次終了する毎に、前記不
    揮発性メモリ内に形成された検査領域に対し、1ずつ歩
    進する計数値をセットし、 前記不揮発性メモリの検査において、前記検査領域をチ
    ェックし、順次に検査される前記複数の特定データのう
    ち、前記計数値に相当する順番に位置する特定データに
    書込み異常があったものと判定することを特徴とする書
    換え可能な不揮発性メモリの管理方法。
  6. 【請求項6】 車両に搭載され該車両に関する複数の特
    定データについての書込みまたは読出しが行われる書換
    え可能な不揮発性メモリを管理するための方法であっ
    て、 前記特定データの書込みが全て正常に終了したときに、
    前記検査領域に対し、書込みの終了を示す書込み終了キ
    ーワードをセットするようにすると共に、 前記不揮発性メモリの検査において、前記検査領域をチ
    ェックし、(i)検査終了を表示する検査終了キーワー
    ドがセットされていないときに、前記書込み終了キーワ
    ードが予め定めたデータパターンと一致するときは、前
    記不揮発性メモリに対して前記特定データの書込み異常
    がなかったものと判定し、かつ、該検査領域に該検査終
    了キーワードをセットし、(ii)該検査終了キーワード
    がセットされていないときに、前記書込み終了キーワー
    ドが予め定めたデータパターンと一致しないときは、前
    記不揮発性メモリに対して前記特定データの書込み異常
    があったものと判定することを特徴とする書換え可能な
    不揮発性メモリの管理方法。
  7. 【請求項7】 車両に搭載され該車両に関する複数の特
    定データについての書込みまたは読出しが行われる書換
    え可能な不揮発性メモリを管理するための方法であっ
    て、 前記複数の特定データの書込みを行うときに、該複数の
    特定データの各々と対にして前記不揮発性メモリ内に複
    数形成された各検査領域に対し、書込みの終了を示す書
    込み終了キーワードをそれぞれ各該特定データの書込み
    毎にセットし、 前記不揮発性メモリの検査において、前記検査領域をチ
    ェックし、(i)検査終了を表示する検査終了キーワー
    ドがセットされていないときに、各前記特定データと対
    をなす前記書込み終了キーワードが予め定めたデータパ
    ターンと一致するときは、当該一致する特定データの前
    記不揮発性メモリに対する書込み異常はなかったものと
    判定し、かつ、該検査領域に該検査終了キーワードをセ
    ットし、(ii)該検査終了キーワードがセットされてい
    ないときに、各前記特定データと対をなす前記書込み終
    了キーワードが予め定めたデータパターンと一致しない
    ときは、当該一致しない特定データの前記不揮発性メモ
    リに対する書込み異常があったものと判定することを特
    徴とする書換え可能な不揮発性メモリの管理方法。
  8. 【請求項8】 前記不揮発性メモリに対し前記特定デー
    タの少なくとも1つに書込み異常があったものと判定さ
    れたとき、全ての該特定データを初期化する請求項1か
    ら7のいずれか一項に記載の書換え可能な不揮発性メモ
    リの管理方法。
  9. 【請求項9】 前記不揮発性メモリに対し前記特定デー
    タの書込み異常があったものと判定されたとき、当該異
    常に係る特定データのみを初期化する請求項2から7の
    いずれか一項に記載の書換え可能な不揮発性メモリの管
    理方法。
  10. 【請求項10】 前記複数の特定データの書込みを行う
    に際し、各該特定データに対して書換えを行おうとして
    いる新たな特定データと現特定データとの間に相違があ
    るときのみ、全ての前記特定データに対する書換えを行
    う請求項1から7のいずれか一項に記載の書換え可能な
    不揮発性メモリの管理方法。
  11. 【請求項11】 前記複数の特定データの書込みを行う
    に際し、各該特定データに対して書換えを行おうとして
    いる新たな特定データと現特定データとの間に相違があ
    るときのみ、当該相違のある前記特定データについての
    書換えを行う請求項1から7のいずれか一項に記載の書
    換え可能な不揮発性メモリの管理方法。
JP32451095A 1995-12-13 1995-12-13 書換え可能な不揮発性メモリの管理方法 Withdrawn JPH09161493A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP32451095A JPH09161493A (ja) 1995-12-13 1995-12-13 書換え可能な不揮発性メモリの管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP32451095A JPH09161493A (ja) 1995-12-13 1995-12-13 書換え可能な不揮発性メモリの管理方法

Publications (1)

Publication Number Publication Date
JPH09161493A true JPH09161493A (ja) 1997-06-20

Family

ID=18166614

Family Applications (1)

Application Number Title Priority Date Filing Date
JP32451095A Withdrawn JPH09161493A (ja) 1995-12-13 1995-12-13 書換え可能な不揮発性メモリの管理方法

Country Status (1)

Country Link
JP (1) JPH09161493A (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19911794A1 (de) * 1999-03-17 2000-09-28 Bosch Gmbh Robert Verfahren und Vorrichtung zur Absicherung bei Veränderung des Speicherinhalts von Steuergeräten
JP2006147024A (ja) * 2004-11-18 2006-06-08 Takashi Oshikiri 半導体メモリおよび半導体メモリのテスト方法
JP2009289200A (ja) * 2008-05-30 2009-12-10 Denso Corp 車載電子制御装置並びにそのデータ書込み方法及びデータ読出し方法
JP2011230633A (ja) * 2010-04-27 2011-11-17 Denso Corp 車両用電子制御装置
JP2014035730A (ja) * 2012-08-10 2014-02-24 Hitachi Automotive Systems Ltd 車両用制御装置
US10476047B2 (en) 2012-09-26 2019-11-12 Robert Bosch Gmbh Battery cell comprising a housing covering plate having a raised central region

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19911794A1 (de) * 1999-03-17 2000-09-28 Bosch Gmbh Robert Verfahren und Vorrichtung zur Absicherung bei Veränderung des Speicherinhalts von Steuergeräten
EP1037140A3 (de) * 1999-03-17 2005-07-06 Robert Bosch Gmbh Verfahren und Vorrichtung zur Absicherung bei Veränderung des Speicherinhalts von Steuergeräten
DE19911794B4 (de) * 1999-03-17 2005-10-06 Robert Bosch Gmbh Verfahren und Vorrichtung zur Absicherung bei Veränderung des Speicherinhalts von Steuergeräten
US7035964B1 (en) 1999-03-17 2006-04-25 Robert Bosch Gmbh Method and device for securing data when altering the storage contents of control units
JP2006147024A (ja) * 2004-11-18 2006-06-08 Takashi Oshikiri 半導体メモリおよび半導体メモリのテスト方法
US8090958B2 (en) 2004-11-18 2012-01-03 Takashi Oshikiri Semiconductor memory and method of testing semiconductor memory
JP2009289200A (ja) * 2008-05-30 2009-12-10 Denso Corp 車載電子制御装置並びにそのデータ書込み方法及びデータ読出し方法
JP2011230633A (ja) * 2010-04-27 2011-11-17 Denso Corp 車両用電子制御装置
JP2014035730A (ja) * 2012-08-10 2014-02-24 Hitachi Automotive Systems Ltd 車両用制御装置
US10476047B2 (en) 2012-09-26 2019-11-12 Robert Bosch Gmbh Battery cell comprising a housing covering plate having a raised central region

Similar Documents

Publication Publication Date Title
JP4475320B2 (ja) 車両用記憶管理装置
JP4345860B2 (ja) 車両用記憶管理装置
US8166353B2 (en) Memory management apparatus
JP2005041273A (ja) 診断データ収集装置及び方法
JPH09161493A (ja) 書換え可能な不揮発性メモリの管理方法
KR100836384B1 (ko) 자가 진단/복구 차량용 전자제어장치 및 그 동작 방법
JP4001088B2 (ja) 電子制御装置
JP4281808B2 (ja) 車両の制御装置およびその制御方法
JP2006286111A (ja) 半導体メモリの管理装置
JP3371682B2 (ja) 半導体記憶装置
JPH0633828A (ja) 車載用電子制御装置
JP6851110B2 (ja) 電子制御装置
JP4950214B2 (ja) データ記憶装置における停電を検出する方法、およびデータ記憶装置を復旧する方法
JP2006017468A (ja) データ記録装置
JP2002334024A (ja) 電子制御装置
JP2009289049A (ja) メモリ制御装置
JP4041216B2 (ja) 異常検出方法および異常検出装置
JP7029366B2 (ja) 自動車用電子制御装置
JP7172748B2 (ja) 電子制御装置及び検査システム
JPH09120376A (ja) データ処理装置
JP2007138726A (ja) 車両用電子制御装置及び表示装置
JP2002014726A (ja) 電子制御装置
US8095262B2 (en) Vehicular control apparatus and program storage medium
JP3003543B2 (ja) 電子式走行距離計
KR100887499B1 (ko) 차량용 전자 제어 시스템에서 강유전체 메모리를 이용한동작 시간 카운터의 저장 오류 복구 방법

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20030304