JPH06274421A - データ保証方式 - Google Patents

データ保証方式

Info

Publication number
JPH06274421A
JPH06274421A JP5085178A JP8517893A JPH06274421A JP H06274421 A JPH06274421 A JP H06274421A JP 5085178 A JP5085178 A JP 5085178A JP 8517893 A JP8517893 A JP 8517893A JP H06274421 A JPH06274421 A JP H06274421A
Authority
JP
Japan
Prior art keywords
data
memory
exclusive
garbled
bit
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
JP5085178A
Other languages
English (en)
Inventor
Akio Yoshida
明雄 吉田
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.)
N T T DATA TSUSHIN KK
NTT Data Group Corp
Original Assignee
N T T DATA TSUSHIN KK
NTT Data Communications Systems 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 N T T DATA TSUSHIN KK, NTT Data Communications Systems Corp filed Critical N T T DATA TSUSHIN KK
Priority to JP5085178A priority Critical patent/JPH06274421A/ja
Publication of JPH06274421A publication Critical patent/JPH06274421A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

(57)【要約】 【目的】メモリに格納されたデータの正確性を保証する
方式において、メモリや検出回路等のハードウェア量の
大幅な増加を引き起こすことなく、ソフトウエアによっ
てメモリ内データのビット化けの検出及び訂正を効率よ
く行えるようにする。 【構成】メモリに書き込むべきデータ100をデータ1
01、102に2分割し、データ101と102の排他
的論理和103を求め、データ101、102と共にデ
ータ103も併せてメモリの中に格納しておく。メモリ
内のデータ101と102にアクセスする必要が生じた
とき、もし、何れか一つのデータ101がビット化けに
よって不明となっていたならば、残りの正常なデータ1
02と103の排他的論理和を演算することにより、元
のデータ101を復旧する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、バッテリバックアップ
された半導体メモリ(以下、不揮発性メモリという)の
バックアップ時に発生する保持データに生じるエラー
(所謂ビット化け、以下同じ)の検出及び訂正に際して
適用されるデータ保証方式に関する。
【0002】
【従来の技術】クレジット端末やハンディターミナルな
どの小型端末は、装置価格や、装置寸法等に制約がある
ため、その内部に磁気記録媒体を用いた記録装置を搭載
するのは困難である。そこで、電源切断時でも保持して
おくべきデータやプログラムは、バッテリバックアップ
された半導体メモリに格納されているのが一般的であ
る。
【0003】
【発明が解決する課題】ところで、半導体メモリのバッ
クアップ時において、メモリ素子自身の固定的な不具合
ではなく、例えば、宇宙線等の要因により一時的なビッ
ト化けが発生することがある。このビット化けは、メモ
リ素子1個当たりにつき、数百FIT程度の確率で発生
するといわれている。
【0004】上記確率は、マイクロプロセッサ等のVL
SIが故障する程度の確率であって、かなり小さいもの
ではある。
【0005】しかしながら、小型端末装置に搭載されて
いるアプリケーションプログラムによっては、その半導
体メモリに保持されているデータにビット化けが生じる
とそれを修復不可能となるため、特に、そのデータが例
えば取り引き金額や取り引き件数といった重要データで
ある場合には、ビット化けに対する別に対策を講じる必
要がある。
【0006】その対策の一つとして、例えば、特願平0
1ー34790号公報に開示されたものがある。これ
は、半導体メモリ内のビット化けの検出及び訂正をハー
ドウエアを用いて行うものであるが、メモリや検出回路
を冗長な構成とする必要があるため、装置の製造コスト
が高くなる。
【0007】一方、従来のソフトウェアによる対策は、
データを2重化して蓄積しておき、いずれかを選択的に
使用するものであるが、これも本来必要なメモリ量の2
倍のメモリ量が必要となるという問題がある。
【0008】従って、本発明の目的は、メモリや検出回
路等のハードウェア量の大幅な増加を引き起こすことな
く、ソフトウエアによって不揮発性メモリのバックアッ
プ時のビット化けの検出及びビット化けによるエラーの
訂正を効率よく行えるようにし、それにより、装置の製
造コストを上昇させることなく、半導体メモリのバック
アップ時の信頼性向上を図ることにある。
【0009】
【課題を解決するための手段】本発明は、メモリに格納
されたデータの正確性を保証するための方式において、
メモリに書込まれるべきデータを2分割するデータ分割
手段と、2分割されたデータ同士の排他的論理和を演算
する演算手段と、2分割されたデータとそれらの排他的
論理和データの各々に、ビット化けが生じたか否かを検
査するためのチェック符号を付与した上で、それらデー
タをメモリに格納する符号付与手段と、メモリ内の2分
割されたデータ及びそれらの排他的論理和データにビッ
ト化けが生じているか否かを判断する判断手段と、何れ
か1つのデータにビット化けが生じていると判断された
とき、残りの2つのデータ同士の排他的論理和を求め、
この求めた排他的論理和に基づいてビット化けを訂正す
る訂正手段とを有するデータ保証システムを提供する。
【0010】
【作用】本発明は、排他的論理和の持つ次の性質を利用
する。
【0011】つまり、 C = A xor B (xorは排他的論理和を示す。)
であるとき、 B = A xor C A = B xor C が成立する。
【0012】従って、一旦、C = A xor Bによ
り、Cを求めておけば、Aが分からなくなってしまって
も、残りのBとCが分かっていれば、A = B xor
CからAを求めることができるのである。
【0013】本発明によれば、保証すべきデータがあっ
た場合、それを2分割してデータAとBにする。そし
て、データAとBの排他的論理和Cを求め、データAと
Bと共にデータCも併せてメモリの中に記憶しておく。
そして、そのメモリ内のデータAがビット化けによって
不明となっていたならば、残りの正常なデータBとCの
排他的論理和を演算することにより、元のデータAを復
旧する。
【0014】このようにして、本来必要なデータの1.
5倍のメモリ量でデータの正確性を保証できる。また、
エラー訂正は、排他的論理和を行うだけなので極めて簡
易かつ高速に処理できる。
【0015】
【実施例】図1は、本発明の一実施例に従うデータ保証
方式の処理流れを示した流れ図である。なお、本実施例
は、一般的ハード構成を持つコンピュータに、以下の処
理のための指令を含んだプログラムをインストールする
ことにより実現できる。従って、そのハード構成の説明
は省略するが、以下の説明から当業者は本発明を十分に
実施できる筈である。
【0016】(1) データ書き込み時の処理 図1(a)に示すような保護すべきデータ100を半導体
メモリに書き込む場合、その前処理において、まず、こ
の保護対象データ100を同図(b)に示すように、デー
タ101とデータ102とに2等分割する。この場合、
もし、保護対象データ100のデータ長が奇数バイトで
あるなら、予備的な所定の1バイトを付加して偶数バイ
トにしてから、これを2等分割する。
【0017】次に、同図(b)に示す分割された2つのデ
ータ101、102(同図(c)は同データ101、10
2を16進数で表示したもの)の排他的論理和を演算し
て、排他的論理和データ103を得る(同図(d)。以
下、同図ではデータ表現を容易にするため16進数表示
を用いる。)。
【0018】この後、同図(e)に示すように、データ1
01、データ102及びデータ103に対して、誤り検
出が行えるように、チェックバイト111、チェックバ
イト112及びチェックバイト113をそれぞれ付加す
る。このチェックバイト111、112、113として
は、1ビットのエラー検出が行えれば如何なるものでも
良く、例えば夫々のデータ101、102、103領域
に対する水平パリティチェックコード等の比較的簡単な
方法で生成できるもので良い。
【0019】続いて、これらチェックバイト111、1
12、113を付加した3つのデータ101、102、
103を半導体メモリに書き込む。
【0020】(2) データ読み出し時の処理 半導体メモリに格納されているデータ101と102を
読み出し連結してデータ100を得る。
【0021】(3) エラーチェック及び訂正の処理 半導体メモリに格納されているデータ101、102を
利用するプログラムの起動時の初期チェックにおいて、
以下に述べる手順で半導体メモリ内のデータ101、1
02、103のエラーチェック及び訂正を行う。或い
は、初期チェックに加えて又は代えて、上述の読み出し
動作毎に同様のエラーチェック及び訂正を行う。
【0022】まず、半導体メモリからデータ101、1
02、103を読み出し、それぞれのチェックバイト1
11、112、113を利用して、メモリのバックアッ
プ中に各データにビット化けがあるか否かをチェックす
る。何れのデータにもビット化けがないことが確認でき
れば、各データ101、102、103がメモリに正し
く保存されていたものと判断でき、エラーチェック及び
訂正処理を終了する。
【0023】一方、データ101、102、103のう
ちの1つのデータにビット化けが検出された場合は、以
下のように、残りの正常な2データの排他的論理和演算
を行ってそのビット化けのデータを正しい内容に復旧す
る。
【0024】 データ101にビット化けが生じた場
合: データ101←データ102xorデータ103 データ102にビット化けが生じた場合: データ102←データ101xorデータ103 データ103にビット化けが生じた場合: データ103←データ101xorデータ102
【0025】このデータ復旧後、この復旧データに対し
てチェックバイトを再計算して付加し、そして半導体メ
モリに書き込み直す。
【0026】以上のように、3つのデータ101、10
2、103のいずれか1つが正しく保存されてなかった
場合、残りの2つのデータ同士の排他的論理和を演算す
るだけで、簡単に正しいデータに復旧することが可能で
ある。
【0027】3つのデータ101、102、103中の
2箇所以上でビット化けが生じた場合にはデータを復旧
することができなくなる。しかし、1ビットのビット化
けが生じる確率に比較し、2ビットのビット化けが生じ
る確率は圧倒的に小さい。例えば、バッテリバックアッ
プ中にランダムに1ビットが独立してビット化けを起こ
すと仮定した場合、この1ビットのビット化けの確率を
500FITとすると、2ビットが同時にビット化けを
起こす確率は(500×10−9)2であるから、0.0
0025FITとなり、これは実質的に問題にならない
程度に低い。
【0028】従って、この方式で半導体メモリに書込ま
れたデータの信頼性は、1ビットのビット化けの訂正を
行わない場合と比較して飛躍的に高くなる。
【0029】(4) 停電対策 単純にデータ100をメモリに書込む場合に比較して、
上述した本実施例の書き込み処理は時間を要する。その
ため、書き込み処理中に停電に遭遇する確率が高くな
る。
【0030】例えば、データ102の更新中に停電が発
生し、このとき、データ101が更新済で、データ10
2が更新途中で、データ103が未更新であるとする。
停電が復旧すると、プログラム再起動の初期チェック
で、更新途中のデータ102を復旧すべく、更新済デー
タ101と未更新データ103との間で排他的論理和が
演算される。その結果として、データ102が意味の無
いデータに復旧されるという問題がある。
【0031】そこで、本実施例では、図2に示すよう
に、半導体メモリ3中に、上述した保証された形態でデ
ータを保持する実エリア33の他に、この実エリア33
でのデータ更新に際して更新すべき新たなデータ200
を予備的に保持するワークエリア31と、ワークエリア
31から実エリア33へのデータ転写が完了したか否か
を示すフラグ32とが設けられる。
【0032】更新処理においては、フラグ32を更新完
了を示す値0にリセットした後、ワークエリア31を使
用して新データ200が書き込まれる。
【0033】ワークエリア31への新データ200の書
き込みが完了してその内容が確定すると、フラグ32を
更新中を示す値1にセットした後、上述した処理手順に
従がい、ワークエリア31から新データ200を読み出
し、その2分割データ201、202及び排他的論理和
データ203を得て、これにチェックバイト211、2
12、213を付加して実エリア33に書き込む。この
ワークエリア31から実エリア33へのデータ転写の
間、新データ200はワークエリア31に保持されてい
る。
【0034】実エリア33へのデータ転写が完了する
と、フラグ32が更新完了を示す値0にリセットされ
る。
【0035】もし、このデータ更新の最中に停電が発生
した場合には、このときフラグ32は更新中を示す値1
になっている。そして、停電が回復すると、プログラム
起動時の初期チェックにおいて、上述のエラーチェック
及び訂正を行う前に、フラグ32の値が調べられ、それ
が値1であれば、エラーチェック及び訂正を行うことな
く、再度ワークエリア31から実エリア33へのデータ
転写が行われる。この転写完了により、フラグ32は値
0にリセットされる。
【0036】以上の動作により、データ更新中の停電に
起因する誤ったエラー訂正が防止されると共に、停電時
のデータの保証も行うことができる。
【0037】
【発明の効果】以上説明したように、本発明によれば、
排他的論理和の性質を利用して、メモリ容量を本来の容
量の1.5倍に増加するだけで、保証すべきデータに1
ビットのビット化けが生じても、正常な残りのデータ部
分に基づく排他的論理和演算により元のデータが回復で
きるようにしているため、従来のデータ2重化等の技術
に比較してハードウェア量の増加を小さく抑えた構成に
より、ソフトウエアを用いて効率的にデータの信頼性を
向上することが出来る。
【図面の簡単な説明】
【図1】本発明に従うデータ保証方式一実施例の処理流
れを示す流れ図。
【図2】同実施例における半導体メモリの利用形態を示
す図。
【符号の説明】
3 半導体性メモリ 31 ワークエリア 32 フラグ 33 実エリア 100 保証すべきデータ 101、102 2分割されたデータ 103 排他的論理和データ 111、112、113 チェックバイト 200 新データ 201、202 2分割データ 211、212、213 チェックバイト

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 メモリに格納されたデータの正確性を保
    証するための方式において、 前記メモリに書込まれるべきデータを2分割するデータ
    分割手段と、 2分割されたデータ同士の排他的論理和を演算する演算
    手段と、 前記2分割されたデータとそれらの排他的論理和データ
    の各々に、ビット化けが生じたか否かを検査するための
    チェック符号を付与した上で、それらデータをメモリに
    格納する符号付与手段と、 前記メモリ内の2分割されたデータ及び前記排他的論理
    和データにビット化けが生じているか否かを判断する判
    断手段と、 何れか1つのデータにビット化けが生じていると判断さ
    れたとき、残りの2つのデータ同士の排他的論理和を求
    め、この求めた排他的論理和に基づいてビット化けを訂
    正する訂正手段とを有するデータ保証方式。
  2. 【請求項2】 請求項1記載の方式において、前記2分
    割されたデータ及び前記排他的論理和データの前記メモ
    リへの書き込みが完了してない間、前記書き込むべきデ
    ータを保持しておく手段をさらに有するデータ保証方
    式。
JP5085178A 1993-03-22 1993-03-22 データ保証方式 Pending JPH06274421A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5085178A JPH06274421A (ja) 1993-03-22 1993-03-22 データ保証方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5085178A JPH06274421A (ja) 1993-03-22 1993-03-22 データ保証方式

Publications (1)

Publication Number Publication Date
JPH06274421A true JPH06274421A (ja) 1994-09-30

Family

ID=13851413

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5085178A Pending JPH06274421A (ja) 1993-03-22 1993-03-22 データ保証方式

Country Status (1)

Country Link
JP (1) JPH06274421A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020082919A (ko) * 2001-04-24 2002-11-01 엘지전자 주식회사 암호화 코드의 저장 방법
WO2011024260A1 (ja) * 2009-08-25 2011-03-03 富士通株式会社 送信機、符号化装置、受信機、及び、復号化装置
JP2017129177A (ja) * 2016-01-19 2017-07-27 日立オートモティブシステムズ株式会社 車両用変速機の制御装置

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020082919A (ko) * 2001-04-24 2002-11-01 엘지전자 주식회사 암호화 코드의 저장 방법
WO2011024260A1 (ja) * 2009-08-25 2011-03-03 富士通株式会社 送信機、符号化装置、受信機、及び、復号化装置
JP5360218B2 (ja) * 2009-08-25 2013-12-04 富士通株式会社 送信機、符号化装置、受信機、及び、復号化装置
US9602132B2 (en) 2009-08-25 2017-03-21 Fujitsu Limited Transmitter, encoding apparatus, receiver, and decoding apparatus
JP2017129177A (ja) * 2016-01-19 2017-07-27 日立オートモティブシステムズ株式会社 車両用変速機の制御装置

Similar Documents

Publication Publication Date Title
US5502732A (en) Method for testing ECC logic
US5912906A (en) Method and apparatus for recovering from correctable ECC errors
JP3982639B2 (ja) マルチレベルセルを有するメモリからデータを読み取る方法
US20080282128A1 (en) Method of Error Correction Code on Solid State Disk to Gain Data Security and Higher Performance
US7613982B2 (en) Data processing apparatus and method for flash memory
JP2772391B2 (ja) 不良データアルゴリズム
EP1206739B1 (en) Methods and apparatus for correcting soft errors in digital data
KR101557572B1 (ko) 메모리 회로들, 메모리에 액세스하는 방법 및 메모리를 복구하는 방법
JPH0260013B2 (ja)
JPH03248251A (ja) 情報処理装置
WO2007088597A1 (ja) エラー訂正コード生成方法及びメモリ管理装置
JP2004342112A (ja) エラーチェック訂正技法を用いて不揮発性メモリユニットのデータ保持損に応答する装置及び方法
JPH06274421A (ja) データ保証方式
JPH10302485A (ja) フラッシュ・メモリを有する情報処理装置
US11809272B2 (en) Error correction code offload for a serially-attached memory device
JPH09212429A (ja) 不揮発性半導体ディスク装置
JPH01194046A (ja) メモリアクセス方式
JP2907114B2 (ja) Eepromの1ビット誤り訂正方法とその装置
JPS59201296A (ja) Ecc付メモリの誤り訂正チエツク方式
JP3281982B2 (ja) データバッファ
JPH06103469B2 (ja) メモリ制御回路
JPH0667989A (ja) 記憶装置のパトロール回路
JPH01156834A (ja) チェック回路の診断装置
JPH01133147A (ja) データ処理装置
JPH01185753A (ja) 記憶装置