JPH04367047A - 電源回復後のメモリーのチェック方法 - Google Patents
電源回復後のメモリーのチェック方法Info
- Publication number
- JPH04367047A JPH04367047A JP3142948A JP14294891A JPH04367047A JP H04367047 A JPH04367047 A JP H04367047A JP 3142948 A JP3142948 A JP 3142948A JP 14294891 A JP14294891 A JP 14294891A JP H04367047 A JPH04367047 A JP H04367047A
- Authority
- JP
- Japan
- Prior art keywords
- data
- check
- memory
- backup
- check data
- 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
Links
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【0001】
【産業上の利用分野】本発明は、電源断時に補助電源に
よってバックアップされるメモリーを内蔵した電子機器
等において、電源回復後にメモリーが正常にバックアッ
プされていたか否かをチェックするチェック方法に関す
るものである。
よってバックアップされるメモリーを内蔵した電子機器
等において、電源回復後にメモリーが正常にバックアッ
プされていたか否かをチェックするチェック方法に関す
るものである。
【0002】
【従来の技術】近年、ほとんどの電子機器はマイクロコ
ンピュータ(以下、マイコンと呼ぶ)をコントローラと
している。しかし、マイコンが記憶手段(メモリー)と
して備える通常のRAM(ランダムアクセスメモリー)
は、電源を切ると内容が消えてしまう。そこで、機器内
に補助電源を用意して、電源断時にはRAMに記憶され
たデータの内容の保持を行うようにしている。
ンピュータ(以下、マイコンと呼ぶ)をコントローラと
している。しかし、マイコンが記憶手段(メモリー)と
して備える通常のRAM(ランダムアクセスメモリー)
は、電源を切ると内容が消えてしまう。そこで、機器内
に補助電源を用意して、電源断時にはRAMに記憶され
たデータの内容の保持を行うようにしている。
【0003】電源回復によりマイコンに電源が入ったと
き、またはマイコンがリセットされたとき、マイコンは
RAMのデータをチェックしなければならない。つまり
、正常にバックアップされていたのか、されなかったの
かを判定するのである。すなわち、正常にバックアップ
されていることを前提にしていると、何等かの理由で内
容が壊れていたときには、その後、機器は誤動作をして
しまう。ゆえに、データが壊されているかいないかの判
定を必ず行い、もし、データが壊れていると判定された
ならば、内容を初期設定して、機器が安全に動作するよ
うにしなければならない。
き、またはマイコンがリセットされたとき、マイコンは
RAMのデータをチェックしなければならない。つまり
、正常にバックアップされていたのか、されなかったの
かを判定するのである。すなわち、正常にバックアップ
されていることを前提にしていると、何等かの理由で内
容が壊れていたときには、その後、機器は誤動作をして
しまう。ゆえに、データが壊されているかいないかの判
定を必ず行い、もし、データが壊れていると判定された
ならば、内容を初期設定して、機器が安全に動作するよ
うにしなければならない。
【0004】次にそのチェック方法だが、従来の方法の
例として、以下のような方法があった。■ RAMの
一部にチェックワードを記憶させておき、そのチェック
ワードが正しいかどうかで判断する。■ RAMの一
部にチェックサム用データを記憶させ、このデータの値
とし、RAM全体あるいは部分のデータの値の和である
チェックサムをもとめ、それがある値になるようにして
おく。メモリー自体のデータを更新するときは、更新後
もチェックサムが前記ある値になるようにチェックサム
用データを更新する。尚、ここでは説明のために、チェ
ック方法に用いられる演算としてデータの値の和を求め
るチェックサムに限定して話を進めているが、排他的論
理和をとったり、CRCC(Cyclic Redun
dancy Check Code)をとる方法などが
ある。いずれにしてもチェック用のデータを記憶させて
おき一定の演算を伴うチェックをおこなうものであるの
で、この例のチェックサムと同様に考えて行くことがで
きる。
例として、以下のような方法があった。■ RAMの
一部にチェックワードを記憶させておき、そのチェック
ワードが正しいかどうかで判断する。■ RAMの一
部にチェックサム用データを記憶させ、このデータの値
とし、RAM全体あるいは部分のデータの値の和である
チェックサムをもとめ、それがある値になるようにして
おく。メモリー自体のデータを更新するときは、更新後
もチェックサムが前記ある値になるようにチェックサム
用データを更新する。尚、ここでは説明のために、チェ
ック方法に用いられる演算としてデータの値の和を求め
るチェックサムに限定して話を進めているが、排他的論
理和をとったり、CRCC(Cyclic Redun
dancy Check Code)をとる方法などが
ある。いずれにしてもチェック用のデータを記憶させて
おき一定の演算を伴うチェックをおこなうものであるの
で、この例のチェックサムと同様に考えて行くことがで
きる。
【0005】
【発明が解決しようとする課題】前記■の方法は、単に
チェックワードの一致、不一致をチェックすればよいの
で、高速にチェックできるという利点をもっているが、
チェックワード以外の実際のデータのみが破壊されてい
る場合は有効ではない。
チェックワードの一致、不一致をチェックすればよいの
で、高速にチェックできるという利点をもっているが、
チェックワード以外の実際のデータのみが破壊されてい
る場合は有効ではない。
【0006】前記■の方法は、RAM全体あるいはかな
りの広い部分のチェックに関して有効であるが、メモリ
ー自体のデータの更新時にデータそのものとチェックサ
ム用データの両方を変えなければならない。この両方は
同時には変え得ないので、二つの更新に時間差を生ずる
。その間に電源断があると、データそのものとチェック
サム用データの一方は更新され他方は更新されていない
状態で、前記チェックがなされることになり、チェック
サムの値が所定の値にならずデータは破壊されていると
判断されてしまう。つまり、バックアップは正常にされ
ているのに、電源断のタイミングによってはデータ破壊
と見なされてしまうのである。
りの広い部分のチェックに関して有効であるが、メモリ
ー自体のデータの更新時にデータそのものとチェックサ
ム用データの両方を変えなければならない。この両方は
同時には変え得ないので、二つの更新に時間差を生ずる
。その間に電源断があると、データそのものとチェック
サム用データの一方は更新され他方は更新されていない
状態で、前記チェックがなされることになり、チェック
サムの値が所定の値にならずデータは破壊されていると
判断されてしまう。つまり、バックアップは正常にされ
ているのに、電源断のタイミングによってはデータ破壊
と見なされてしまうのである。
【0007】本発明の目的は、上記問題点に鑑み、電源
断のタイミングがどの様であっても誤認識しないバック
アップメモリーのチェック方法を提供するものである。 このような問題点は、チェック方法の演算としてチェッ
クサムをとるもの以外、例えば排他的論理和やCRCC
をとるものについても、チェック用のデータを必要とす
るものについては、存在する。
断のタイミングがどの様であっても誤認識しないバック
アップメモリーのチェック方法を提供するものである。 このような問題点は、チェック方法の演算としてチェッ
クサムをとるもの以外、例えば排他的論理和やCRCC
をとるものについても、チェック用のデータを必要とす
るものについては、存在する。
【0008】
【課題を解決するための手段】上記問題点を解決するた
めに、本発明は、マイクロコンピュータと、メモリーバ
ックアップ用補助電源と、電源断時に前記補助電源によ
ってバックアップされるメモリーを有する装置において
、前記メモリー内の少なくとも2ヶ所のアドレスに、正
常にバックアップがなされたか否かを電源回復後にチェ
ックするために使用するチェック用データを用意して、
メモリーのデータを更新するときには、チェック用デー
タ1を更新する手順と、その後に目的のデータを更新す
る手順と、最後にチェック用データ1をチェック用デー
タ2と同じ値に更新する手順でおこない、電源回復後に
バックアップがなされていたかのチェックのときにはチ
ェック用データ1と2のうち、どちらかのチェック用デ
ータを使用したチェック方法でチェックが通れば正常に
バックアップされていたと判定し、どちらででもチェッ
クが通らなければ前記バックアップに異常が発生したと
判定する電源回復後のメモリーチェック方法である。
めに、本発明は、マイクロコンピュータと、メモリーバ
ックアップ用補助電源と、電源断時に前記補助電源によ
ってバックアップされるメモリーを有する装置において
、前記メモリー内の少なくとも2ヶ所のアドレスに、正
常にバックアップがなされたか否かを電源回復後にチェ
ックするために使用するチェック用データを用意して、
メモリーのデータを更新するときには、チェック用デー
タ1を更新する手順と、その後に目的のデータを更新す
る手順と、最後にチェック用データ1をチェック用デー
タ2と同じ値に更新する手順でおこない、電源回復後に
バックアップがなされていたかのチェックのときにはチ
ェック用データ1と2のうち、どちらかのチェック用デ
ータを使用したチェック方法でチェックが通れば正常に
バックアップされていたと判定し、どちらででもチェッ
クが通らなければ前記バックアップに異常が発生したと
判定する電源回復後のメモリーチェック方法である。
【0009】
【作用】本発明は上記の構成によって、メモリー自体の
データを更新するときは、チェック用データをまず更新
し、次にデータを更新し、最後に2つめのチェック用デ
ータを更新する。チェックするときには、どちらかのチ
ェック用データでチェックが通ればバックアップは正常
であったとする。このようにすると、データの更新時に
、どのようなタイミングで電源断があろうとも、バック
アップが正常であるにもかかわらず異常が発生したとい
う誤判断をしてしまうことを防止できる。
データを更新するときは、チェック用データをまず更新
し、次にデータを更新し、最後に2つめのチェック用デ
ータを更新する。チェックするときには、どちらかのチ
ェック用データでチェックが通ればバックアップは正常
であったとする。このようにすると、データの更新時に
、どのようなタイミングで電源断があろうとも、バック
アップが正常であるにもかかわらず異常が発生したとい
う誤判断をしてしまうことを防止できる。
【0010】
【実施例】図1(a)は、本発明の実施例における、デ
ータ更新時のフローチャートを示したものである。図2
(a)〜(d)は図1(a)のフローチャートに基づい
てデータの更新を行ったときのRAMの各アドレスのデ
ータの変化を示したものである。図1(a)において、
8バイトのバックアップRAMがあり、そのうち6バイ
トを本来の記憶動作に用いられるデータ用に、2バイト
をチェック用に使用する。一般には、必要なデータ数+
2個のアドレスが必要となる。データの数字は16進法
で表している。チェック方法は演算としてチェックサム
をとるものとする。チェック用データは、記憶動作用の
データの総和とチェック用データとの和(チェックサム
)がFF(下位2桁をとる)なるように決定している。 すなわち、A9+32+4E+95+00+38+9F
=1FFであり、下位2桁がFFとなる。なぜ、FFか
というと、仮に00とすればバックアップされていなか
った時にRAMのデータがオール0などの決まったパタ
ーンになる可能性が高く、そうなったとすると、バック
アップされていなかったのにバックアップされていたと
いう誤判定をしてしまうからである。その点FFはそれ
に当てはまらないし、チェックする時に和(チェックサ
ム)を計算して、その値に1を足して100(下位2桁
は00)になるかどうかで判定できるので、判定も楽で
ある。よって、FFを採用している。
ータ更新時のフローチャートを示したものである。図2
(a)〜(d)は図1(a)のフローチャートに基づい
てデータの更新を行ったときのRAMの各アドレスのデ
ータの変化を示したものである。図1(a)において、
8バイトのバックアップRAMがあり、そのうち6バイ
トを本来の記憶動作に用いられるデータ用に、2バイト
をチェック用に使用する。一般には、必要なデータ数+
2個のアドレスが必要となる。データの数字は16進法
で表している。チェック方法は演算としてチェックサム
をとるものとする。チェック用データは、記憶動作用の
データの総和とチェック用データとの和(チェックサム
)がFF(下位2桁をとる)なるように決定している。 すなわち、A9+32+4E+95+00+38+9F
=1FFであり、下位2桁がFFとなる。なぜ、FFか
というと、仮に00とすればバックアップされていなか
った時にRAMのデータがオール0などの決まったパタ
ーンになる可能性が高く、そうなったとすると、バック
アップされていなかったのにバックアップされていたと
いう誤判定をしてしまうからである。その点FFはそれ
に当てはまらないし、チェックする時に和(チェックサ
ム)を計算して、その値に1を足して100(下位2桁
は00)になるかどうかで判定できるので、判定も楽で
ある。よって、FFを採用している。
【0011】また、チェック用データ1とチェック用デ
ータ2には、同じ値をいれる。いま、アドレス2のデー
タ3を4EからD6に更新する場合を考える。まず、チ
ェック用データ1に、4E−D6+9F=17(下位2
桁をとる)を書き込む(ステップ100、101)。こ
れは、全データの和を取り直さなくても、新チェック用
データが計算できることを意味している。この計算式は
(旧チェック用データ)−((新データ)−(旧データ
))=(旧データ)−(新データ)+(旧チェック用デ
ータ)である。書き換えた状態が図2(b)である。 つぎに、目的のデータ3の更新をする(ステップ102
)。すなわちアドレス2のデータをD6にする。この状
態が図2(c)である。さらに、チェック用データ1の
値17をチェック用データ2にコピーし同じ値とする(
ステップ103)。この状態が図2(d)である。
ータ2には、同じ値をいれる。いま、アドレス2のデー
タ3を4EからD6に更新する場合を考える。まず、チ
ェック用データ1に、4E−D6+9F=17(下位2
桁をとる)を書き込む(ステップ100、101)。こ
れは、全データの和を取り直さなくても、新チェック用
データが計算できることを意味している。この計算式は
(旧チェック用データ)−((新データ)−(旧データ
))=(旧データ)−(新データ)+(旧チェック用デ
ータ)である。書き換えた状態が図2(b)である。 つぎに、目的のデータ3の更新をする(ステップ102
)。すなわちアドレス2のデータをD6にする。この状
態が図2(c)である。さらに、チェック用データ1の
値17をチェック用データ2にコピーし同じ値とする(
ステップ103)。この状態が図2(d)である。
【0012】複数のアドレスのデータの書き換えを行う
場合は、以上の手続をデータ数だけを繰り返す。
場合は、以上の手続をデータ数だけを繰り返す。
【0013】図1(b)に電源回復により電源が入った
時、又はリセット時のチェック方法のアルゴリズムを示
す。通常は、チェック用データ1とチェック用データ2
が同じで、かつ、サムチェック(データの和とチェック
用データの和がFFとなること確かめる)が通る(ステ
ップ200→201→202)。もし、データ更新時に
チェック用データ1を書き換えたところ(図1(a)ス
テップ101)で電源断になったときは、チェック用デ
ータ1ではサムチェックが通らないが(ステップ200
→201→203)、チェック用データ2では通る(ス
テップ203→204)。よって、このデータは正しい
と判断して、チェック用データ2をチェック用データ1
にコピーする(ステップ204→205)。また、デー
タ更新時にデータを書き換えたところで電源断になった
ときは、先ほどとは逆に、チェック用データ2ではサム
チェックが通らないがチェック用データ1では通る(ス
テップ200→201→202)。よって、このデータ
は正しいと判断して、今度は、チェック用データ1をチ
ェック用データ2にコピーする(ステップ202)。
時、又はリセット時のチェック方法のアルゴリズムを示
す。通常は、チェック用データ1とチェック用データ2
が同じで、かつ、サムチェック(データの和とチェック
用データの和がFFとなること確かめる)が通る(ステ
ップ200→201→202)。もし、データ更新時に
チェック用データ1を書き換えたところ(図1(a)ス
テップ101)で電源断になったときは、チェック用デ
ータ1ではサムチェックが通らないが(ステップ200
→201→203)、チェック用データ2では通る(ス
テップ203→204)。よって、このデータは正しい
と判断して、チェック用データ2をチェック用データ1
にコピーする(ステップ204→205)。また、デー
タ更新時にデータを書き換えたところで電源断になった
ときは、先ほどとは逆に、チェック用データ2ではサム
チェックが通らないがチェック用データ1では通る(ス
テップ200→201→202)。よって、このデータ
は正しいと判断して、今度は、チェック用データ1をチ
ェック用データ2にコピーする(ステップ202)。
【0014】バックアップに異常があったときは、チェ
ック用データ1とチェック用データ2の両方ともサムチ
ェックが通らないはずであるから(ステップ200→2
01203→204→206)、異常であると判断して
、システムが安全に動作するようにデータの初期設定を
行う(ステップ206)。もちろん、チェック用データ
1と2も合わせて初期設定する。
ック用データ1とチェック用データ2の両方ともサムチ
ェックが通らないはずであるから(ステップ200→2
01203→204→206)、異常であると判断して
、システムが安全に動作するようにデータの初期設定を
行う(ステップ206)。もちろん、チェック用データ
1と2も合わせて初期設定する。
【0015】尚、以上の実施例においてはチェックサム
の値はFFであるとして説明したが、他の値であっても
かまわない。また、チェック方法の演算としてチェック
サムをとって説明したが、他の演算、例えば排他的論理
和やCRCCであってもよい。これらのどの演算であて
も、データの更新の前後に各々チェック用データの更新
をおこなうことで、以上の実施例と同様の効果を得る。
の値はFFであるとして説明したが、他の値であっても
かまわない。また、チェック方法の演算としてチェック
サムをとって説明したが、他の演算、例えば排他的論理
和やCRCCであってもよい。これらのどの演算であて
も、データの更新の前後に各々チェック用データの更新
をおこなうことで、以上の実施例と同様の効果を得る。
【0016】
【発明の効果】以上のように本発明は、メモリー内にチ
ェック用データを少なくとも2ヶ所に設け、チェック用
データ1の更新をしてから、データの更新をして、最後
にチェックデータ2の更新を行うことによって、データ
の更新とどちらのチェック用データの更新との間で電源
断があっても、バックアップは正常になされているにも
かかわらずバックアップと異常が生じたと誤判定するこ
とがないという効果が得られる。
ェック用データを少なくとも2ヶ所に設け、チェック用
データ1の更新をしてから、データの更新をして、最後
にチェックデータ2の更新を行うことによって、データ
の更新とどちらのチェック用データの更新との間で電源
断があっても、バックアップは正常になされているにも
かかわらずバックアップと異常が生じたと誤判定するこ
とがないという効果が得られる。
【図1】(a)は本発明の実施例におけるデータ更新時
のフローチャート (b)は本発明の実施例における電源回復時のRAMの
チェック方法のフローチャート
のフローチャート (b)は本発明の実施例における電源回復時のRAMの
チェック方法のフローチャート
【図2】(a)〜(d)はデータ更新時のRAMの各ア
ドレスのデータの変化を示すテーブル
ドレスのデータの変化を示すテーブル
Claims (1)
- 【請求項1】 マイクロコンピュータと、メモリーバ
ックアップ用補助電源と、電源断時に前記補助電源によ
ってバックアップされるメモリーを有する装置において
、前記メモリー内の少なくとも2ヶ所のアドレスに、正
常にバックアップがなされたか否かを電源回復後にチェ
ックするために使用するチェック用データを用意して、
メモリーのデータを更新するときには、チェック用デー
タ1を更新する手順と、その後に目的のデータを更新す
る手順と、最後にチェック用データ1をチェック用デー
タ2と同じ値に更新する手順でおこない、電源回復後に
バックアップがなされていたかのチェックのときにはチ
ェック用データ1と2のうち、どちらかのチェック用デ
ータを使用したチェック方法でチェックが通れば正常に
バックアップされていたと判定し、どちらででもチェッ
クが通らなければ前記バックアップに異常が発生したと
判定する電源回復後のメモリーチェック方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP3142948A JPH04367047A (ja) | 1991-06-14 | 1991-06-14 | 電源回復後のメモリーのチェック方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP3142948A JPH04367047A (ja) | 1991-06-14 | 1991-06-14 | 電源回復後のメモリーのチェック方法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH04367047A true JPH04367047A (ja) | 1992-12-18 |
Family
ID=15327375
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP3142948A Pending JPH04367047A (ja) | 1991-06-14 | 1991-06-14 | 電源回復後のメモリーのチェック方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH04367047A (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2006113985A (ja) * | 2004-10-18 | 2006-04-27 | Nissan Motor Co Ltd | 電子制御装置のデータ再書き込み方法 |
| US7181645B2 (en) | 2001-12-27 | 2007-02-20 | Denso Corporation | Method and apparatus for storing main data with two checkup data |
-
1991
- 1991-06-14 JP JP3142948A patent/JPH04367047A/ja active Pending
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7181645B2 (en) | 2001-12-27 | 2007-02-20 | Denso Corporation | Method and apparatus for storing main data with two checkup data |
| JP2006113985A (ja) * | 2004-10-18 | 2006-04-27 | Nissan Motor Co Ltd | 電子制御装置のデータ再書き込み方法 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| RU2146399C1 (ru) | Способ записи данных в энергонезависимое запоминающее устройство, способ использования устройства на интегральных схемах, устройство на интегральных схемах | |
| US5502732A (en) | Method for testing ECC logic | |
| JP2002351685A (ja) | 不揮発性メモリのデータ更新方法及び制御装置 | |
| EP0762282A1 (en) | Atomic update of EDC protected data | |
| US6483746B2 (en) | Electronic apparatus | |
| JPH0412863B2 (ja) | ||
| CN113342571A (zh) | 一种应用于嵌入式系统的eeprom数据掉电不丢失方法 | |
| JP2006523868A (ja) | プログラム制御されるユニットおよび方法 | |
| JPH04367047A (ja) | 電源回復後のメモリーのチェック方法 | |
| CN118860740A (zh) | 一种服务器cpld固件的备份方法及系统 | |
| JPH03136153A (ja) | マイクロコントローラ | |
| JPH10302485A (ja) | フラッシュ・メモリを有する情報処理装置 | |
| JPS6234260A (ja) | 不揮発性メモリアクセス方式 | |
| JPH04542A (ja) | メモリチェック方式 | |
| JPH0784894A (ja) | 不揮発性メモリの書き込み方法 | |
| JP2000059981A (ja) | ディジタル形保護継電装置 | |
| US7849279B2 (en) | Method for the secure updating data areas in non volatile memory, device to perform such a method | |
| JPH07122087A (ja) | Eepromエラーチェック方式 | |
| JP3046328B2 (ja) | パチンコゲーム機の制御装置 | |
| CN112698985B (zh) | 一种基于多分区技术固件保护的系统启动方法及系统 | |
| JP2904117B2 (ja) | 装置記憶部の冗長化方法及び装置 | |
| JPS61278953A (ja) | Ramのエラ−チエツク方法 | |
| CN113626246A (zh) | 单比特翻转快速修复方法、装置、计算机设备和存储介质 | |
| JPH07168769A (ja) | 不揮発性メモリに対するデータ更新方法 | |
| CN117648697A (zh) | 一种固件管理方法、装置、设备及机器可读存储介质 |