JPH03136152A - メモリデータ修復装置 - Google Patents
メモリデータ修復装置Info
- Publication number
- JPH03136152A JPH03136152A JP1273789A JP27378989A JPH03136152A JP H03136152 A JPH03136152 A JP H03136152A JP 1273789 A JP1273789 A JP 1273789A JP 27378989 A JP27378989 A JP 27378989A JP H03136152 A JPH03136152 A JP H03136152A
- Authority
- JP
- Japan
- Prior art keywords
- data
- bit
- byte
- correct
- memory
- 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)
- Hardware Redundancy (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔発明の目的〕
(産業上の利用分野)
本発明は、メモリに保存しているデータが一部破壊され
た場合に破壊さゎたデータを修復するメモリデータ修復
装置に関する。
た場合に破壊さゎたデータを修復するメモリデータ修復
装置に関する。
(従来の技術)
電源バックアップ回路を有し、常時メモリに電源を供給
するシステムにおいては、最初に電源を供給した時点で
メモリチェックを行うが、電源バックアップ回路からの
電源供給も含めて、メモリへの電源供給を遮断して再投
入しない限り、通常メモリデータのイニシャライズは行
わない。したがって、−旦保存したデータは、再び書換
えをしなければそのまま保持していなければならない。
するシステムにおいては、最初に電源を供給した時点で
メモリチェックを行うが、電源バックアップ回路からの
電源供給も含めて、メモリへの電源供給を遮断して再投
入しない限り、通常メモリデータのイニシャライズは行
わない。したがって、−旦保存したデータは、再び書換
えをしなければそのまま保持していなければならない。
従来から、メモリ内に保存したデータが破壊されないよ
うに同一データをメモリ内の複数箇所に保存し、新しい
データを保存してから次にそのデータを使用するまでの
間に、複数箇所に保存したデータを相互に照合して、す
べてが一致したならば保存されているデータは正しいと
判断して、そのデータを使用する方法が用いられている
。第3図に、従来のデータ修復方法の一例を示す。この
例によれば、データは3箇所に保存されており、データ
IA、データ2A、データ3Aはそれぞれ正常に保存さ
れていればまったく同じ内容である。まずデータIAの
先頭から最後まで順にバイトごとに排他的論理和をとり
、ブロック・チェック・キャラクタ (以下BCCとい
う。) IAとしてデータの最後に付加する。次にデー
タ2人について同様に先頭から最後まで順にバイトごと
に排他的論理和をとり、BCC2Aとしてデータの最後
に付加する。さらに、データ3Aについても同様に先頭
から最後まで順にバイトごとに排他的論理和をとり、B
CC3Aとしてデータの最後に付加する。最後にBCC
IA、 BCC2A、およびBCC3Aを相互に照合し
、すべて一致したならば保存されているデータは正しい
と判断して、そのデータを有効にする。この例では、B
CCIAからBCC3AのうちBCC2Aだけが他と異
なっているため、データ2Aが破壊されていると判断し
てデータ2Aの内容をデータIAの内容に書き換えてデ
ータを修復する。
うに同一データをメモリ内の複数箇所に保存し、新しい
データを保存してから次にそのデータを使用するまでの
間に、複数箇所に保存したデータを相互に照合して、す
べてが一致したならば保存されているデータは正しいと
判断して、そのデータを使用する方法が用いられている
。第3図に、従来のデータ修復方法の一例を示す。この
例によれば、データは3箇所に保存されており、データ
IA、データ2A、データ3Aはそれぞれ正常に保存さ
れていればまったく同じ内容である。まずデータIAの
先頭から最後まで順にバイトごとに排他的論理和をとり
、ブロック・チェック・キャラクタ (以下BCCとい
う。) IAとしてデータの最後に付加する。次にデー
タ2人について同様に先頭から最後まで順にバイトごと
に排他的論理和をとり、BCC2Aとしてデータの最後
に付加する。さらに、データ3Aについても同様に先頭
から最後まで順にバイトごとに排他的論理和をとり、B
CC3Aとしてデータの最後に付加する。最後にBCC
IA、 BCC2A、およびBCC3Aを相互に照合し
、すべて一致したならば保存されているデータは正しい
と判断して、そのデータを有効にする。この例では、B
CCIAからBCC3AのうちBCC2Aだけが他と異
なっているため、データ2Aが破壊されていると判断し
てデータ2Aの内容をデータIAの内容に書き換えてデ
ータを修復する。
(発明が解決しようとする課題)
この方法では、3箇所に保存しているデータのうち1箇
所のデータだけ異なっている場合にデータを修復するこ
とができるが、3箇所のデータとも内容が異なっている
場合にはどのデータが正しいかが多数決による判断でき
ないため、データの修復を行うことができないという問
題がある。
所のデータだけ異なっている場合にデータを修復するこ
とができるが、3箇所のデータとも内容が異なっている
場合にはどのデータが正しいかが多数決による判断でき
ないため、データの修復を行うことができないという問
題がある。
本発明の目的は、上記のようにデータの正誤が判断でき
ない場合にもデータを修復することができるメモリデー
タ修復装置を得ることにある。
ない場合にもデータを修復することができるメモリデー
タ修復装置を得ることにある。
(課題を解決するための手段)
本発明は、上記目的を達成するため、メモリに格納され
た複数の同一データをチェックして破壊された一部デー
タを修復する装置において、読み出された同一のバイト
データをチェックしてその正誤判定ができないとき、該
バイトデータをビット毎に比較して正誤判定しビットデ
ータを修復する手段を設けて構成する。
た複数の同一データをチェックして破壊された一部デー
タを修復する装置において、読み出された同一のバイト
データをチェックしてその正誤判定ができないとき、該
バイトデータをビット毎に比較して正誤判定しビットデ
ータを修復する手段を設けて構成する。
(作用)
各データのBCCをそれぞれ計算して相互に照合し、す
べてが一致したならば保存されているデータは正しいと
判断する。もし、他と異なった値のBCCがあれば、そ
のBCCをもつデータを、最も多く一致したBCCをも
つデータに書き換えて修復する。ここで、すべてのBC
Cが異なった場合、あるいは同じ値のBCCが複数ある
が、他の値のBCCも同一個数あり、どのBCCが正し
いかが判断できない場合は、データの先頭がら順にバイ
トごとに照合する。もし、他と異なった値のバイトがあ
れば、そのバイトを、最も多く一致したバイトに書き換
えて修復する。ここで、すべてのバイトが異なった場合
、あるいは同じ値のバイトが複数あるが、他の値のバイ
トも同一個数あり、どのバイトが正しいかが判断できな
い場合は、上記手段によりさらにそのバイトをビットご
とに照合する。もし、他と異なった値のビットがあれば
、そのビットを、最も多く一致したビットに書き換えて
修復する。ここで、すべてのビットが異なった場合、あ
るいは同じ値のビットが複数あるが、他の値のビットも
同一個数あり、どのビット(実施例) 第1図に本発明の一実施例を示し、第2図を用いてその
作用を説明する。第2図の例は、同一データをメモリ内
の3箇所に保存し、その一部が破壊されてBCCがすべ
て異なっている場合である。
べてが一致したならば保存されているデータは正しいと
判断する。もし、他と異なった値のBCCがあれば、そ
のBCCをもつデータを、最も多く一致したBCCをも
つデータに書き換えて修復する。ここで、すべてのBC
Cが異なった場合、あるいは同じ値のBCCが複数ある
が、他の値のBCCも同一個数あり、どのBCCが正し
いかが判断できない場合は、データの先頭がら順にバイ
トごとに照合する。もし、他と異なった値のバイトがあ
れば、そのバイトを、最も多く一致したバイトに書き換
えて修復する。ここで、すべてのバイトが異なった場合
、あるいは同じ値のバイトが複数あるが、他の値のバイ
トも同一個数あり、どのバイトが正しいかが判断できな
い場合は、上記手段によりさらにそのバイトをビットご
とに照合する。もし、他と異なった値のビットがあれば
、そのビットを、最も多く一致したビットに書き換えて
修復する。ここで、すべてのビットが異なった場合、あ
るいは同じ値のビットが複数あるが、他の値のビットも
同一個数あり、どのビット(実施例) 第1図に本発明の一実施例を示し、第2図を用いてその
作用を説明する。第2図の例は、同一データをメモリ内
の3箇所に保存し、その一部が破壊されてBCCがすべ
て異なっている場合である。
まず、新しいデータを保存してから次にそのデータを使
用するまでの間に、データ1、データ2、データ3のB
CCをそれぞれ計算し、BCCI、BCC2、BCC3
とする。次に、これらを相互に照合し、すべてが一致し
たならば保存されているデータ1、データ2、データ3
は正しいと判断する。(11)また、1つのBCCだけ
が異なっていれば、そのBCCをもつデータを、他のB
CCをもつデータに書き換えて修復する。(12)、
(13)Lかし、この例では、すべてのBCCが異なっ
ているため、どのBCCが正しいかが判断できない。
用するまでの間に、データ1、データ2、データ3のB
CCをそれぞれ計算し、BCCI、BCC2、BCC3
とする。次に、これらを相互に照合し、すべてが一致し
たならば保存されているデータ1、データ2、データ3
は正しいと判断する。(11)また、1つのBCCだけ
が異なっていれば、そのBCCをもつデータを、他のB
CCをもつデータに書き換えて修復する。(12)、
(13)Lかし、この例では、すべてのBCCが異なっ
ているため、どのBCCが正しいかが判断できない。
したがって、次にデータの先頭から順にバイトごとに照
合する。(21)その際、1.4、・・・、n−2、n
−1、nバイト目のように対応するバイトすべてが一
致したならばそのバイトは正しいと判断する。(22)
、 (23)また、2バイト目のように1つのバイトだ
け(この例ではデータ2の2バイト目)が異なっていれ
ば、そのバイトを、他の対応するバイト(この例ではデ
ータ1の2バイト目)に書き換えて修復する。(24)
、 (25)さらに、3バイト目のようにすべてのバイ
トが異なり、どのバイトが正しいかが判断できない場合
は、さらにこのバイトをビットごとに照合する。(31
)その際、7.5.4.2.1.0ビツト目のように対
応するビットすべてが一致したならばそのビットは正し
いと判断する。(32)、 (33)また、6.3ビツ
ト目のように1つのビットだけが異なっていれば、その
ビットを、他の対応するビットに書き換えて修復する。
合する。(21)その際、1.4、・・・、n−2、n
−1、nバイト目のように対応するバイトすべてが一
致したならばそのバイトは正しいと判断する。(22)
、 (23)また、2バイト目のように1つのバイトだ
け(この例ではデータ2の2バイト目)が異なっていれ
ば、そのバイトを、他の対応するバイト(この例ではデ
ータ1の2バイト目)に書き換えて修復する。(24)
、 (25)さらに、3バイト目のようにすべてのバイ
トが異なり、どのバイトが正しいかが判断できない場合
は、さらにこのバイトをビットごとに照合する。(31
)その際、7.5.4.2.1.0ビツト目のように対
応するビットすべてが一致したならばそのビットは正し
いと判断する。(32)、 (33)また、6.3ビツ
ト目のように1つのビットだけが異なっていれば、その
ビットを、他の対応するビットに書き換えて修復する。
(34)、 (35)この例では、データ1の6ビツト
目のみがOでイ也のデータの6ビツト目が1であるため
、データ1の6ビツト目のOを1に書き換える。また、
データ3の3ビツト目のみが1で他のデータの3ビツト
目が0であるため、データ3の3ビツト目の1をOに書
き換える。
目のみがOでイ也のデータの6ビツト目が1であるため
、データ1の6ビツト目のOを1に書き換える。また、
データ3の3ビツト目のみが1で他のデータの3ビツト
目が0であるため、データ3の3ビツト目の1をOに書
き換える。
第1図の例は、データの修復を行うためのアルゴリズム
を示すフローチャートである。このように、まずBCC
チェックを行い、データの正誤が判断できない場合は、
バイトごとのチェックを行う。この方法によってもデー
タの正誤が判断できない場合は、さらに、ビットごとの
チェックを行う。このチェックでデータの正誤が判断で
きなければ、ここで初めてデータ修復不可能とし、エラ
ー処理に移行する。
を示すフローチャートである。このように、まずBCC
チェックを行い、データの正誤が判断できない場合は、
バイトごとのチェックを行う。この方法によってもデー
タの正誤が判断できない場合は、さらに、ビットごとの
チェックを行う。このチェックでデータの正誤が判断で
きなければ、ここで初めてデータ修復不可能とし、エラ
ー処理に移行する。
本発明のメモリデータ修復装置によれば、単一のデータ
チェック方法でデータの正誤が判断できない場合でも、
データを分割してチェックするために正しいデータに修
復できる可能性が大きくなる。
チェック方法でデータの正誤が判断できない場合でも、
データを分割してチェックするために正しいデータに修
復できる可能性が大きくなる。
また、複数のデータチェック方法を組み合わせ、データ
が破壊されている場合だけを重点的にチェックするアル
ゴリズムになっているため、各チェック方法を単独で行
うよりも処理時間が短縮でき、さらにデータが正常、あ
るいは1つ目のチェック方法でデータを修復できれば、
従来の方法とデータチェックに要する時間は変らない。
が破壊されている場合だけを重点的にチェックするアル
ゴリズムになっているため、各チェック方法を単独で行
うよりも処理時間が短縮でき、さらにデータが正常、あ
るいは1つ目のチェック方法でデータを修復できれば、
従来の方法とデータチェックに要する時間は変らない。
第1図は本発明のメモリデータ修復装置の一7−
実施例図、第2図は上記実施例の作用説明図、第3図は
従来のメモリデータ修復装置の作用説明図である。 11・・・BCCチェック手段 12・・・BCC正誤判定手段 13・・第1のデータ修復手段 21・・・バイトデータチェック手段 24・・・バイトデータ正誤判定手段 25・・・第2のデータ修復手段 31・・・ビットデータチェック手段 34・・・ビットデータ正誤判定手段 35・・・第3のデータ修復手段 一
従来のメモリデータ修復装置の作用説明図である。 11・・・BCCチェック手段 12・・・BCC正誤判定手段 13・・第1のデータ修復手段 21・・・バイトデータチェック手段 24・・・バイトデータ正誤判定手段 25・・・第2のデータ修復手段 31・・・ビットデータチェック手段 34・・・ビットデータ正誤判定手段 35・・・第3のデータ修復手段 一
Claims (1)
- メモリに格納された複数の同一データをチェックして
破壊された一部データを修復する装置において、読み出
された同一のバイトデータをチェックしてその正誤判定
ができないとき、該バイトデータをビット毎に比較して
正誤判定しビットデータを修復する手段を設けたことを
特徴とするメモリデータ修復装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1273789A JPH03136152A (ja) | 1989-10-23 | 1989-10-23 | メモリデータ修復装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1273789A JPH03136152A (ja) | 1989-10-23 | 1989-10-23 | メモリデータ修復装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH03136152A true JPH03136152A (ja) | 1991-06-10 |
Family
ID=17532605
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP1273789A Pending JPH03136152A (ja) | 1989-10-23 | 1989-10-23 | メモリデータ修復装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH03136152A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6574177B2 (en) | 2000-09-20 | 2003-06-03 | Fujitsu Limited | Data read method for remedying low-quality read data and storage apparatus employing such a data read method |
-
1989
- 1989-10-23 JP JP1273789A patent/JPH03136152A/ja active Pending
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6574177B2 (en) | 2000-09-20 | 2003-06-03 | Fujitsu Limited | Data read method for remedying low-quality read data and storage apparatus employing such a data read method |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5502732A (en) | Method for testing ECC logic | |
| RU2146399C1 (ru) | Способ записи данных в энергонезависимое запоминающее устройство, способ использования устройства на интегральных схемах, устройство на интегральных схемах | |
| JP2990181B1 (ja) | フラッシュメモリ、フラッシュメモリを備えたマイクロコンピュータおよびフラッシュメモリへのプログラム格納方法 | |
| DE102005048255A1 (de) | Integriertes Schaltungsbauelement und Betriebsverfahren | |
| JPH0820978B2 (ja) | 障害解析情報の編集出力方式 | |
| JP2606862B2 (ja) | 単−エラー検出・訂正方式 | |
| JPH10240629A (ja) | メモリ内情報更新方法 | |
| CN1612119A (zh) | 固态存储器的安全存储系统及方法 | |
| JPH03136152A (ja) | メモリデータ修復装置 | |
| US20030081468A1 (en) | Method and device for backing up data in a memory module and memory module | |
| KR100216045B1 (ko) | 프로그램형 제어기의 비트 연산 처리방법 및 그 장치 | |
| JPS63278162A (ja) | 情報処理装置におけるエラ−訂正装置 | |
| JP3680821B2 (ja) | データ転送システム | |
| JPH0816488A (ja) | 電子ディスク装置 | |
| JPH04367047A (ja) | 電源回復後のメモリーのチェック方法 | |
| JP3041007B2 (ja) | 不揮発性メモリの管理方式 | |
| JPH03136153A (ja) | マイクロコントローラ | |
| JPH02188835A (ja) | ファイル書き込みデータのチェック方式 | |
| JPH058652U (ja) | エラー検出訂正回路を有するメモリ装置 | |
| JP2907114B2 (ja) | Eepromの1ビット誤り訂正方法とその装置 | |
| JP2984126B2 (ja) | メモリカードの接触不良検出装置 | |
| JPH06274421A (ja) | データ保証方式 | |
| JPS58171792A (ja) | 制御記憶装置のエラ−訂正方式 | |
| JPH04152488A (ja) | Icカード | |
| JPH02207355A (ja) | メモリ読出し方式 |