JPS642983B2 - - Google Patents
Info
- Publication number
- JPS642983B2 JPS642983B2 JP58085183A JP8518383A JPS642983B2 JP S642983 B2 JPS642983 B2 JP S642983B2 JP 58085183 A JP58085183 A JP 58085183A JP 8518383 A JP8518383 A JP 8518383A JP S642983 B2 JPS642983 B2 JP S642983B2
- Authority
- JP
- Japan
- Prior art keywords
- memory
- data
- error
- word
- 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.)
- Expired
Links
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/70—Masking faults in memories by using spares or by reconfiguring
- G11C29/88—Masking faults in memories by using spares or by reconfiguring with partially good memories
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1012—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using codes or arrangements adapted for a specific type of error
- G06F11/1024—Identification of the type of error
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Detection And Correction Of Errors (AREA)
Description
【発明の詳細な説明】
〔本発明の分野〕
本発明は永久的(ハード)エラーを最小にし間
欠的(ソフト)エラーの訂正可能性を高める方法
に関する。
欠的(ソフト)エラーの訂正可能性を高める方法
に関する。
先行技術において、1個またはそれ以上の欠陥
ビツト位置を有するメモリ・チツプを使用して、
大型半導体メモリを製造できるようにする方法が
種々提案されてきた。一般的に、これらのメモリ
は、多ビツト・データ・ワードの各ビツト位置が
メモリ・アレイの異つたチヤネルまたは別に関連
するように構成されている。データ・ワードは、
例えば72ビツト位置を有し、その中の64個の位置
はデータを記憶し、8個の位置はエラー訂正検査
バイトを記憶する。エラー訂正検査バイトが、メ
モリに関連した適当なエラー訂正(ECC)シス
テムによつて処理されると、それはワードのビツ
ト位置の任意の1つにおける単一ビツト・エラー
を自動的に訂正することができる。更に大部分の
システムは、多ビツト・エラーを検出する能力を
有し、かつ一般的に良好なデータ・ビツトを誤つ
て訂正することのないようにコードを使用する見
地に立つて設計されている。
ビツト位置を有するメモリ・チツプを使用して、
大型半導体メモリを製造できるようにする方法が
種々提案されてきた。一般的に、これらのメモリ
は、多ビツト・データ・ワードの各ビツト位置が
メモリ・アレイの異つたチヤネルまたは別に関連
するように構成されている。データ・ワードは、
例えば72ビツト位置を有し、その中の64個の位置
はデータを記憶し、8個の位置はエラー訂正検査
バイトを記憶する。エラー訂正検査バイトが、メ
モリに関連した適当なエラー訂正(ECC)シス
テムによつて処理されると、それはワードのビツ
ト位置の任意の1つにおける単一ビツト・エラー
を自動的に訂正することができる。更に大部分の
システムは、多ビツト・エラーを検出する能力を
有し、かつ一般的に良好なデータ・ビツトを誤つ
て訂正することのないようにコードを使用する見
地に立つて設計されている。
先行技術で知られたこととして、半導体メモリ
における故障状態の形式は、基本的にはデータに
依存しており、データ・ビツトが故障位置から読
出される時、それは常に1の2進値または0の2
進値をとる事実がある。メモリ中のその位置がア
ドレスされる時、データ・ワードは常にメモリへ
転送される。なぜならば、平均して、ワードの50
%はエラーを含まず、ワードの50%は1つだけの
エラーを含むからである。このエラーは単一ビツ
ト・エラー訂正システムによつて訂正される。訂
正不可能なエラーが起るのは、第1の欠陥ビツト
位置が、そこからデータを読出される間に表示さ
れたものと異つた2進値を含み、それと同時にラ
ンダムなエラー(ハードまたはソフト)が他のビ
ツト位置で生じる場合である。
における故障状態の形式は、基本的にはデータに
依存しており、データ・ビツトが故障位置から読
出される時、それは常に1の2進値または0の2
進値をとる事実がある。メモリ中のその位置がア
ドレスされる時、データ・ワードは常にメモリへ
転送される。なぜならば、平均して、ワードの50
%はエラーを含まず、ワードの50%は1つだけの
エラーを含むからである。このエラーは単一ビツ
ト・エラー訂正システムによつて訂正される。訂
正不可能なエラーが起るのは、第1の欠陥ビツト
位置が、そこからデータを読出される間に表示さ
れたものと異つた2進値を含み、それと同時にラ
ンダムなエラー(ハードまたはソフト)が他のビ
ツト位置で生じる場合である。
訂正不可能なエラーが発生する可能性を減少さ
せるため、ある先行技術のシステムは、メモリ・
ロケーシヨンに記憶されたデータが訂正可能な単
一ビツト・エラーを含むにいたつた時点を決し、
次いで全体のワードを補数化することによつて、
そのエラーを効果的に除去する。更に、他のある
先行技術のシステムでは、訂正不可能なエラーが
生じた時、訂正不可能なデータ・ワードを訂正可
能な形式に復元するため、複数化/再複数化手順
が使用される。更に、他のシステムでは、メモリ
の全体またはその1部が、アドレスされる位置ご
とに順次に読出され、どれかのアドレスでエラー
が感知されれば、エラーを除くため欠陥が複数化
され、次いでメモリへ再び記憶される。この動作
は、メモリ洗浄動作と呼ばれている。ある既知
の、システムでは、データ・ワードへ加えられる
追加のビツト位置が必要とされる。そのビツト位
置は、ワードが真の形式で記憶されているが、補
数の形式で記憶されているかを示す。このような
構成はメモリの欠陥許容度を改善するとはいえ、
真/補数ビツトの検査は適当でない。なぜなら
ば、その場合、何らかのハードウエア及び制御論
理回路が必要となり、ワードを読出す余分の時間
がかかり、更にメモリ容量を大きくするからであ
る。
せるため、ある先行技術のシステムは、メモリ・
ロケーシヨンに記憶されたデータが訂正可能な単
一ビツト・エラーを含むにいたつた時点を決し、
次いで全体のワードを補数化することによつて、
そのエラーを効果的に除去する。更に、他のある
先行技術のシステムでは、訂正不可能なエラーが
生じた時、訂正不可能なデータ・ワードを訂正可
能な形式に復元するため、複数化/再複数化手順
が使用される。更に、他のシステムでは、メモリ
の全体またはその1部が、アドレスされる位置ご
とに順次に読出され、どれかのアドレスでエラー
が感知されれば、エラーを除くため欠陥が複数化
され、次いでメモリへ再び記憶される。この動作
は、メモリ洗浄動作と呼ばれている。ある既知
の、システムでは、データ・ワードへ加えられる
追加のビツト位置が必要とされる。そのビツト位
置は、ワードが真の形式で記憶されているが、補
数の形式で記憶されているかを示す。このような
構成はメモリの欠陥許容度を改善するとはいえ、
真/補数ビツトの検査は適当でない。なぜなら
ば、その場合、何らかのハードウエア及び制御論
理回路が必要となり、ワードを読出す余分の時間
がかかり、更にメモリ容量を大きくするからであ
る。
本発明の方法は、欠陥ビツト位置を含むアドレ
スで、ECCチエツク・バイトcj及びデータdjを含
むデータ・ワードを記憶することを含む。データ
それ自体の記憶は、真の形式でなされても複数の
形式でなされてもよい。しかし、もし記憶された
データが複数形式である時、ECCチエツク・バ
イトはその真の形式で記憶され、その位置が後に
アドレスされかつ処理された時、ECCシステム
が訂正不可能なエラーを表示するようにされる。
読出し処理のその時点で、データ・ワードは自動
的に再複数化され、新しいECCチエツク・キヤ
ラクタが発生される。そのECCチエツク・キヤ
ラクタは、最初に記憶されたECCチエツク・キ
ヤラクタと比較される。比較の一致はワードにお
ける有効なデータを示し、エラーは存在しない。
比較の不一致は多ビツト・エラーを示す。このエ
ラーは、訂正不可能なデータ・エラーとしてシス
テムへ報告される。次いでシステムは、先行技術
で提案される種々の方法を用いてそのエラーに応
答する。
スで、ECCチエツク・バイトcj及びデータdjを含
むデータ・ワードを記憶することを含む。データ
それ自体の記憶は、真の形式でなされても複数の
形式でなされてもよい。しかし、もし記憶された
データが複数形式である時、ECCチエツク・バ
イトはその真の形式で記憶され、その位置が後に
アドレスされかつ処理された時、ECCシステム
が訂正不可能なエラーを表示するようにされる。
読出し処理のその時点で、データ・ワードは自動
的に再複数化され、新しいECCチエツク・キヤ
ラクタが発生される。そのECCチエツク・キヤ
ラクタは、最初に記憶されたECCチエツク・キ
ヤラクタと比較される。比較の一致はワードにお
ける有効なデータを示し、エラーは存在しない。
比較の不一致は多ビツト・エラーを示す。このエ
ラーは、訂正不可能なデータ・エラーとしてシス
テムへ報告される。次いでシステムは、先行技術
で提案される種々の方法を用いてそのエラーに応
答する。
本発明の目的は、データがメモリから現用シス
テムへ転送される時、システム内で訂正不可能エ
ラーの発生が最小となるように、欠陥許容半導体
メモリの中にデータを記憶する方法を実現するこ
とである。
テムへ転送される時、システム内で訂正不可能エ
ラーの発生が最小となるように、欠陥許容半導体
メモリの中にデータを記憶する方法を実現するこ
とである。
第1図は中央演算処理装置(CPU)10、メ
モリ11、エラー訂正システム12、バツフア1
3、バツフア13をCPU10へ接続するシステ
ム・データ母線14を含む典型的なデータ処理シ
ステムを示す。アドレス母線15はCPU10か
らメモリ11及びバツフア13へ延長される。メ
モリ11は、例えば72個の別個になつたメモリ・
チツプ・アレイから構成された16メガバイト・メ
モリであつてよい。メモリ・チツプ・アレイの
各々は、32個の別個になつた64Kビツト・メモ
リ・チツプを含む。メモリは、64個のデータ・ビ
ツト位置と8個のチエツク・ビツト位置とを含む
72ビツト幅のデータ・ワードを記憶する。バツフ
ア13は、例えば16個の別個になつたアドレス可
能な72ビツト・ワード・バツフアを含む。
モリ11、エラー訂正システム12、バツフア1
3、バツフア13をCPU10へ接続するシステ
ム・データ母線14を含む典型的なデータ処理シ
ステムを示す。アドレス母線15はCPU10か
らメモリ11及びバツフア13へ延長される。メ
モリ11は、例えば72個の別個になつたメモリ・
チツプ・アレイから構成された16メガバイト・メ
モリであつてよい。メモリ・チツプ・アレイの
各々は、32個の別個になつた64Kビツト・メモ
リ・チツプを含む。メモリは、64個のデータ・ビ
ツト位置と8個のチエツク・ビツト位置とを含む
72ビツト幅のデータ・ワードを記憶する。バツフ
ア13は、例えば16個の別個になつたアドレス可
能な72ビツト・ワード・バツフアを含む。
データは、CPU10からバツフア13へ、次
いでメモリ11へ転送される。同様に、メモリか
ら読出されたデータは、バツフア13へ転送さ
れ、次いでCPU10へ送られる。
いでメモリ11へ転送される。同様に、メモリか
ら読出されたデータは、バツフア13へ転送さ
れ、次いでCPU10へ送られる。
メモリは欠陥許容性を有する。即ち、64Kチツ
プの各々は、1つまたはそれ以上の識別された欠
陥ビツト記憶位置を含んでよい。メモリの設計、
構成、制御にあたつては、可能な限り1つだけの
欠陥ビツト位置が1つのワード・アドレス位置と
整列するようになつている。換言すれば、1つの
ワード・アドレスは、72個の異つた64Kビツト・
チツプの中の72個のビツト記憶位置を含む。1つ
のワード・アドレスに関連した72ビツト記憶位置
の中で、1つの記憶位置のみが、そのワード内で
欠陥を有することが許される。これは、第1図の
エラー訂正システム12がデータ・ワードの任意
の位置における1ビツト・エラーのみを自動的に
訂正できるものと仮定している。従つて、他のエ
ラーがなければ、メモリから読出されたワードに
訂正不可能なエラーは絶対にない。残念ながら、
実際には種々の理由により、間欠性のエラーが生
じる。もしそのようなエラーが、記憶されたデー
タ・ビツトがエラー訂正システムによつてエラー
と認められるような欠陥記憶位置を有するアドレ
スで生じると、訂正不可能なエラーが生じたこと
になる。訂正不可能なエラーは全体的システム効
率及び信頼性に悪い影響を与え、従つてできるだ
け経済的に避けなければならない。
プの各々は、1つまたはそれ以上の識別された欠
陥ビツト記憶位置を含んでよい。メモリの設計、
構成、制御にあたつては、可能な限り1つだけの
欠陥ビツト位置が1つのワード・アドレス位置と
整列するようになつている。換言すれば、1つの
ワード・アドレスは、72個の異つた64Kビツト・
チツプの中の72個のビツト記憶位置を含む。1つ
のワード・アドレスに関連した72ビツト記憶位置
の中で、1つの記憶位置のみが、そのワード内で
欠陥を有することが許される。これは、第1図の
エラー訂正システム12がデータ・ワードの任意
の位置における1ビツト・エラーのみを自動的に
訂正できるものと仮定している。従つて、他のエ
ラーがなければ、メモリから読出されたワードに
訂正不可能なエラーは絶対にない。残念ながら、
実際には種々の理由により、間欠性のエラーが生
じる。もしそのようなエラーが、記憶されたデー
タ・ビツトがエラー訂正システムによつてエラー
と認められるような欠陥記憶位置を有するアドレ
スで生じると、訂正不可能なエラーが生じたこと
になる。訂正不可能なエラーは全体的システム効
率及び信頼性に悪い影響を与え、従つてできるだ
け経済的に避けなければならない。
第2A図及び第2B図の流れ図は本発明の実施
例を示す図である。本発明はメモリから読出され
たデータ・ワードのn個(ただしnは1以上の整
数)のビツト・エラーを自動的に訂正するエラー
訂正システムを含むメモリシステムにおいて、(a)
データ部分及びチエツク・バイト部分を含むデー
タ・ワードをメモリに記憶する段階と、(b)上記メ
モリから上記データ・ワードを読出して、上記エ
ラー訂正システムによりシンドローム・バイトを
発生させる段階と(ステツプ20及び22)、(c)上記
シンドローム・バイトを処理することによつて、
読出された上記データ・ワードにおけるエラーの
状態を判断する段階と(ステツプ24ないし28)、
(d)上記データ・ワードが訂正可能なエラーを含む
ものであり且つ該エラーが上記データ部分にある
と判断されたとき、該データ部分を補数化する段
階と(ステツプ30)、(e)上記補数化されたデータ
部分を上記メモリに記憶する段階と(ステツプ32
ないし38)、(f)上記メモリから上記データ・ワー
ドを転送する際に、上記エラー訂正システムの供
給する訂正不能エラー表示信号に応答して上記デ
ータ部分を補数化する段階と(ステツプ110ない
し118)を含むメモリ・システムの動作方式であ
る。ここで本発明の作用を説明する。説明の簡単
のため、2ビツトエラー検出1ビツトエラー訂正
システムを例としてとりあげる。すなわち、n=
1の場合である。本発明は訂正不能エラーの発生
によるシステムの受ける影響が大きいという点に
着目し、訂正不能エラーの発生をできるだけ減少
させようとしたものである。
例を示す図である。本発明はメモリから読出され
たデータ・ワードのn個(ただしnは1以上の整
数)のビツト・エラーを自動的に訂正するエラー
訂正システムを含むメモリシステムにおいて、(a)
データ部分及びチエツク・バイト部分を含むデー
タ・ワードをメモリに記憶する段階と、(b)上記メ
モリから上記データ・ワードを読出して、上記エ
ラー訂正システムによりシンドローム・バイトを
発生させる段階と(ステツプ20及び22)、(c)上記
シンドローム・バイトを処理することによつて、
読出された上記データ・ワードにおけるエラーの
状態を判断する段階と(ステツプ24ないし28)、
(d)上記データ・ワードが訂正可能なエラーを含む
ものであり且つ該エラーが上記データ部分にある
と判断されたとき、該データ部分を補数化する段
階と(ステツプ30)、(e)上記補数化されたデータ
部分を上記メモリに記憶する段階と(ステツプ32
ないし38)、(f)上記メモリから上記データ・ワー
ドを転送する際に、上記エラー訂正システムの供
給する訂正不能エラー表示信号に応答して上記デ
ータ部分を補数化する段階と(ステツプ110ない
し118)を含むメモリ・システムの動作方式であ
る。ここで本発明の作用を説明する。説明の簡単
のため、2ビツトエラー検出1ビツトエラー訂正
システムを例としてとりあげる。すなわち、n=
1の場合である。本発明は訂正不能エラーの発生
によるシステムの受ける影響が大きいという点に
着目し、訂正不能エラーの発生をできるだけ減少
させようとしたものである。
本発明では、特に、ハードエラーを自動的に訂
正することによつて、これを実現する。そのため
の事前処理として上記段階(a)ないし(e)がある。
正することによつて、これを実現する。そのため
の事前処理として上記段階(a)ないし(e)がある。
この処理では、まずデータ部分及びチエツク・
バイト部分を含むデータ・ワードをメモリに記憶
した後これを読出して訂正可能エラーがデータ部
分にあるかどうかを判断し、もしそうなら、該デ
ータ部分を複数化してこれを再びメモリに記憶す
る。このようにすると、データ・ワード運転等の
後の処理の際にこのデータ・ワードは必ず訂正不
能エラーとして検出される。というのは、先の事
前処理で、データ部分のみが補数化されているか
らである。データ・ワード転送の際に、訂正不能
エラーとして検出されたこのデータ・ワードのデ
ータ部分を補数化する。これが段階(f)である。も
し、段階(a)ないし(e)で検出された訂正可能エラー
が1ビツトハードエラーであつたとすると、上記
段階(a)ないし(f)によつてこのハードエラーは自動
的に訂正される。段階(d)及び(f)により、2回の補
数化が行われているからである。このハードエラ
ーの自動訂正によつても依然として訂正不能エラ
ーが生じるとき(このようなケースはごくまれに
しか起らない)はじめて、訂正不能エラーとして
システムに報告される。以上のようにしてハード
エラーを自動的に訂正することにより、訂正不能
エラーの発生を著しく減少することができる。こ
の方法は、訂正不可能なエラーの発生頻度を少な
くするため、第1図に示されるメモリで実施可能
である。本発明のいくつかの段階は、複数形式の
データによつてはエラーが発生されない欠陥ビツ
ト位置が存在するため、記憶された複数形式のワ
ードがエラーを発生する時に、データ・ワードを
複数化する手法において、先行技術と同じであ
る。しかし、本発明の方法は、読出されたデー
タ・ワードが単一の訂正可能なエラーを発生する
ものと決定された後に、エラーまたは欠陥ビツト
位置がデータのビツト位置に関連しているか、ま
たはECCチエツク・キヤラクタのビツト位置に
関連ししているかについて検査する点で、先行技
術と異なつている。
バイト部分を含むデータ・ワードをメモリに記憶
した後これを読出して訂正可能エラーがデータ部
分にあるかどうかを判断し、もしそうなら、該デ
ータ部分を複数化してこれを再びメモリに記憶す
る。このようにすると、データ・ワード運転等の
後の処理の際にこのデータ・ワードは必ず訂正不
能エラーとして検出される。というのは、先の事
前処理で、データ部分のみが補数化されているか
らである。データ・ワード転送の際に、訂正不能
エラーとして検出されたこのデータ・ワードのデ
ータ部分を補数化する。これが段階(f)である。も
し、段階(a)ないし(e)で検出された訂正可能エラー
が1ビツトハードエラーであつたとすると、上記
段階(a)ないし(f)によつてこのハードエラーは自動
的に訂正される。段階(d)及び(f)により、2回の補
数化が行われているからである。このハードエラ
ーの自動訂正によつても依然として訂正不能エラ
ーが生じるとき(このようなケースはごくまれに
しか起らない)はじめて、訂正不能エラーとして
システムに報告される。以上のようにしてハード
エラーを自動的に訂正することにより、訂正不能
エラーの発生を著しく減少することができる。こ
の方法は、訂正不可能なエラーの発生頻度を少な
くするため、第1図に示されるメモリで実施可能
である。本発明のいくつかの段階は、複数形式の
データによつてはエラーが発生されない欠陥ビツ
ト位置が存在するため、記憶された複数形式のワ
ードがエラーを発生する時に、データ・ワードを
複数化する手法において、先行技術と同じであ
る。しかし、本発明の方法は、読出されたデー
タ・ワードが単一の訂正可能なエラーを発生する
ものと決定された後に、エラーまたは欠陥ビツト
位置がデータのビツト位置に関連しているか、ま
たはECCチエツク・キヤラクタのビツト位置に
関連ししているかについて検査する点で、先行技
術と異なつている。
もしエラーがワードのデータ部分にあるものと
決定されればワードのデータ部分が複数化され、
全体のワードがメモリへ戻される。チエツク・バ
イトは補数化されず、その真数形式のままで記憶
される。
決定されればワードのデータ部分が複数化され、
全体のワードがメモリへ戻される。チエツク・バ
イトは補数化されず、その真数形式のままで記憶
される。
第2A図の動作は、データの各ワードがCPU
からメモリへ転送される時に実行されてよい。他
方、全体のメモリを、システムが最初オンライン
にされた時に走査するか、適当な時点で定期的に
洗浄するようにしてもよい。
からメモリへ転送される時に実行されてよい。他
方、全体のメモリを、システムが最初オンライン
にされた時に走査するか、適当な時点で定期的に
洗浄するようにしてもよい。
あるデータ・ワードはデータ部分を補数形式で
記憶され、ECCチエツク・キヤラクタは真数形
式で記憶されている第1図のメモリから、デー
タ・ワードを読出す第2B図の動作を説明する前
に、通常のECCシステムの動作を簡単に説明し
ておくことが、本発明の理解を助けるであろう。
記憶され、ECCチエツク・キヤラクタは真数形
式で記憶されている第1図のメモリから、デー
タ・ワードを読出す第2B図の動作を説明する前
に、通常のECCシステムの動作を簡単に説明し
ておくことが、本発明の理解を助けるであろう。
データがバツフアからメモリへ転送されている
時、ECCシステムはnビツトのチエツク・バイ
トを発生する。このチエツク・バイトはデータ・
ワードへ付加され、同じメモリ・アドレス位置に
データ・ワードの1部として記憶される。第1図
に示されたシステムにおいて、CPUからバツフ
アへ64ビツトのデータ・ワードが転送される。
ECCシステムは8ビツトのチエツク・バイト・
キヤラクタを発生し、このチエツク・バイトは64
ビツトのデータへ付加され、データ及びチエツ
ク・バイトはメモリ中の1つのアドレス位置に72
ビツトのワードとして記憶される。メモリからワ
ードを読出す時、読出チエツク・バイト発生器は
読出チエツク・バイトを発生する。このチエツ
ク・バイトは、シンドローム・バイトと呼ばれる
ものを発生するため、記憶された書込チエツク・
バイトと比較(排他的OR結合)される。ECCシ
ステムの性質により、シンドローム・バイトがオ
ール0のパターンを有すれば、それはエラーがな
いことを示す。しかし、もしシンドローム・バイ
トが非ゼロのパターンを有すれば、それはエラー
の存在を示し、非ゼロのシンドローム・バイトを
適当に処理することによつて、エラーの種類(即
ち、単一ビツト・エラーであるか、多ビツト・エ
ラーであるか)、及び訂正可能な単一ビツト・エ
ラーの位置を決定することができる。次にECC
システムはエラー・ビツトを訂正するように進行
し、その情報をシステムへ与える。
時、ECCシステムはnビツトのチエツク・バイ
トを発生する。このチエツク・バイトはデータ・
ワードへ付加され、同じメモリ・アドレス位置に
データ・ワードの1部として記憶される。第1図
に示されたシステムにおいて、CPUからバツフ
アへ64ビツトのデータ・ワードが転送される。
ECCシステムは8ビツトのチエツク・バイト・
キヤラクタを発生し、このチエツク・バイトは64
ビツトのデータへ付加され、データ及びチエツ
ク・バイトはメモリ中の1つのアドレス位置に72
ビツトのワードとして記憶される。メモリからワ
ードを読出す時、読出チエツク・バイト発生器は
読出チエツク・バイトを発生する。このチエツ
ク・バイトは、シンドローム・バイトと呼ばれる
ものを発生するため、記憶された書込チエツク・
バイトと比較(排他的OR結合)される。ECCシ
ステムの性質により、シンドローム・バイトがオ
ール0のパターンを有すれば、それはエラーがな
いことを示す。しかし、もしシンドローム・バイ
トが非ゼロのパターンを有すれば、それはエラー
の存在を示し、非ゼロのシンドローム・バイトを
適当に処理することによつて、エラーの種類(即
ち、単一ビツト・エラーであるか、多ビツト・エ
ラーであるか)、及び訂正可能な単一ビツト・エ
ラーの位置を決定することができる。次にECC
システムはエラー・ビツトを訂正するように進行
し、その情報をシステムへ与える。
第2A図及び第2B図の流れ図から分るよう
に、非ゼロのシンドローム・バイトが発生した時
(第2B図参照。これは、補数形式のデータ及び
真数形式のチエツク・バイトを含むメモリのアド
レス位置がアドレスされた時、常に起る。)、
ECCシステムの処理によつて、常に訂正不可能
エラーが表示される(ステツプ116“ノー”)。なぜ
ならば、そのエラーは多ビツト・エラーであるか
らである。システムは、この訂正不可能な多ビツ
ト・エラーの表示が、補数形式のデータ及び真数
形式のチエツク・バイトを意図的に記憶したこと
から生じたものと仮定する。この仮定は、同一の
ワードで生じる2つのランダムな間欠性エラーは
まれであるという確立に立脚している。従つて、
システムはワードのデータ部分を再補数化し(ス
テツプ118)、それに対する新しい読出チエツク・
キヤラクタを発生し、このチエツク・キヤラクタ
が最初に記憶されたチエツク・キヤラクタと比較
される。
に、非ゼロのシンドローム・バイトが発生した時
(第2B図参照。これは、補数形式のデータ及び
真数形式のチエツク・バイトを含むメモリのアド
レス位置がアドレスされた時、常に起る。)、
ECCシステムの処理によつて、常に訂正不可能
エラーが表示される(ステツプ116“ノー”)。なぜ
ならば、そのエラーは多ビツト・エラーであるか
らである。システムは、この訂正不可能な多ビツ
ト・エラーの表示が、補数形式のデータ及び真数
形式のチエツク・バイトを意図的に記憶したこと
から生じたものと仮定する。この仮定は、同一の
ワードで生じる2つのランダムな間欠性エラーは
まれであるという確立に立脚している。従つて、
システムはワードのデータ部分を再補数化し(ス
テツプ118)、それに対する新しい読出チエツク・
キヤラクタを発生し、このチエツク・キヤラクタ
が最初に記憶されたチエツク・キヤラクタと比較
される。
もし比較の結果がオール0のシンドローム・バ
イトを示すならば、ワードはCPUへ送られる。
もし非ゼロのシンドローム・バイトを処理した結
果、訂正可能な単1ビツト・エラーであると決定
されれば、そのエラーは訂正され(ステツプ
124)、ワードはメモリへ送られる。他方、もしシ
ンドローム・バイトを処理した結果、訂正不可能
なエラーであると決定されれば(これはまれであ
るが、不可能ではない)、システムはその事実を
知らされる(ステツプ126)。
イトを示すならば、ワードはCPUへ送られる。
もし非ゼロのシンドローム・バイトを処理した結
果、訂正可能な単1ビツト・エラーであると決定
されれば、そのエラーは訂正され(ステツプ
124)、ワードはメモリへ送られる。他方、もしシ
ンドローム・バイトを処理した結果、訂正不可能
なエラーであると決定されれば(これはまれであ
るが、不可能ではない)、システムはその事実を
知らされる(ステツプ126)。
当業者にとつて、本発明の手法は、システムに
悪影響を与える訂正不可能なエラーを著しく減少
させるものであることが分る。従つて、メモリ・
アレイのコストを追加したり、効率上の制約を与
えないで、全体的なシステム効率の点で多大の改
善が達成される。本発明の手法は、メモリのアド
レスされた位置で1つを超える欠陥ビツト位置が
発生するのを少なくしようとする他の方式に加え
て、メモリへ応用することができる。
悪影響を与える訂正不可能なエラーを著しく減少
させるものであることが分る。従つて、メモリ・
アレイのコストを追加したり、効率上の制約を与
えないで、全体的なシステム効率の点で多大の改
善が達成される。本発明の手法は、メモリのアド
レスされた位置で1つを超える欠陥ビツト位置が
発生するのを少なくしようとする他の方式に加え
て、メモリへ応用することができる。
第1図は本発明が実施されてよい比較的大型の
半導体メモリを含むデータ処理システムを示し、
第2A図及び第2B図は本発明を使用して第1図
に示されるメモリとCPUとの間で情報を転送す
る改善された方法を示す流れ図である。
半導体メモリを含むデータ処理システムを示し、
第2A図及び第2B図は本発明を使用して第1図
に示されるメモリとCPUとの間で情報を転送す
る改善された方法を示す流れ図である。
Claims (1)
- 【特許請求の範囲】 1 メモリから読出されたデータ・ワードのn個
(ただしnは1以上の整数)のビツト・エラーを
自動的に訂正するエラー訂正システムを含むメモ
リシステムにおいて、 (a) データ部分及びチエツク・バイト部分を含む
データ・ワードをメモリに記憶する段階と、 (b) 上記メモリから上記データ・ワードを読出し
て、上記エラー訂正システムによりシンドロー
ム・バイトを発生させる段階と、 (c) 上記シンドローム・バイトを処理することに
よつて、読出された上記データ・ワードにおけ
るエラーの状態を判断する段階と、 (d) 上記データ・ワードが訂正可能なエラーを含
むものであり且つ該エラーが上記データ部分に
あると判断されたとき、該データ部分を補数化
する段階と、 (e) 上記補数化されたデータ部分を上記メモリに
記憶する段階と、 (f) 上記メモリから上記データ・ワードを転送す
る際に、上記エラー訂正システムの供給する訂
正不能エラー表示信号に応答して上記データ部
分を補数化する段階とを含むメモリ・システム
の動作方式。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US06/388,830 US4458349A (en) | 1982-06-16 | 1982-06-16 | Method for storing data words in fault tolerant memory to recover uncorrectable errors |
| US388830 | 1982-06-16 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS58220300A JPS58220300A (ja) | 1983-12-21 |
| JPS642983B2 true JPS642983B2 (ja) | 1989-01-19 |
Family
ID=23535699
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP58085183A Granted JPS58220300A (ja) | 1982-06-16 | 1983-05-17 | メモリ・システムの動作方式 |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US4458349A (ja) |
| EP (1) | EP0096783B1 (ja) |
| JP (1) | JPS58220300A (ja) |
| DE (1) | DE3380910D1 (ja) |
Families Citing this family (32)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS59117800A (ja) * | 1982-12-25 | 1984-07-07 | Fujitsu Ltd | バツフア・ストレ−ジの1ビツトエラ−処理方式 |
| JPS59165207A (ja) * | 1983-03-11 | 1984-09-18 | Hitachi Ltd | 情報記録方式 |
| US4535455A (en) * | 1983-03-11 | 1985-08-13 | At&T Bell Laboratories | Correction and monitoring of transient errors in a memory system |
| NL8303765A (nl) * | 1983-11-02 | 1985-06-03 | Philips Nv | Dataverwerkend systeem waarbij in het geheugen onbetrouwbare woorden zijn vervangen door een onbetrouwbaarheidsindicator. |
| US4661955A (en) * | 1985-01-18 | 1987-04-28 | Ibm Corporation | Extended error correction for package error correction codes |
| US4782487A (en) * | 1987-05-15 | 1988-11-01 | Digital Equipment Corporation | Memory test method and apparatus |
| US4817095A (en) * | 1987-05-15 | 1989-03-28 | Digital Equipment Corporation | Byte write error code method and apparatus |
| JPH0290816A (ja) * | 1988-09-28 | 1990-03-30 | Hitachi Ltd | 誤り訂正方法および回路 |
| US5014273A (en) * | 1989-01-27 | 1991-05-07 | Digital Equipment Corporation | Bad data algorithm |
| US5058115A (en) * | 1989-03-10 | 1991-10-15 | International Business Machines Corp. | Fault tolerant computer memory systems and components employing dual level error correction and detection with lock-up feature |
| JP2909105B2 (ja) * | 1989-09-29 | 1999-06-23 | 株式会社東芝 | 光ディスク装置 |
| US5111457A (en) * | 1989-10-26 | 1992-05-05 | Xerox Corporation | Detection and recovery from an nvm data integrity failure |
| JP2617026B2 (ja) * | 1989-12-22 | 1997-06-04 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 障害余裕性メモリ・システム |
| US5274646A (en) * | 1991-04-17 | 1993-12-28 | International Business Machines Corporation | Excessive error correction control |
| US5267242A (en) * | 1991-09-05 | 1993-11-30 | International Business Machines Corporation | Method and apparatus for substituting spare memory chip for malfunctioning memory chip with scrubbing |
| JP2731745B2 (ja) * | 1995-03-23 | 1998-03-25 | 甲府日本電気株式会社 | データ障害処理装置 |
| US5953351A (en) * | 1995-09-15 | 1999-09-14 | International Business Machines Corporation | Method and apparatus for indicating uncorrectable data errors |
| US5923682A (en) | 1997-01-29 | 1999-07-13 | Micron Technology, Inc. | Error correction chip for memory applications |
| US20030023922A1 (en) | 2001-07-25 | 2003-01-30 | Davis James A. | Fault tolerant magnetoresistive solid-state storage device |
| US6981196B2 (en) | 2001-07-25 | 2005-12-27 | Hewlett-Packard Development Company, L.P. | Data storage method for use in a magnetoresistive solid-state storage device |
| US7036068B2 (en) * | 2001-07-25 | 2006-04-25 | Hewlett-Packard Development Company, L.P. | Error correction coding and decoding in a solid-state storage device |
| US6973604B2 (en) | 2002-03-08 | 2005-12-06 | Hewlett-Packard Development Company, L.P. | Allocation of sparing resources in a magnetoresistive solid-state storage device |
| DE10252230A1 (de) * | 2002-11-11 | 2004-05-27 | Robert Bosch Gmbh | Verfahren zur Übertragung von Daten |
| US7069494B2 (en) * | 2003-04-17 | 2006-06-27 | International Business Machines Corporation | Application of special ECC matrix for solving stuck bit faults in an ECC protected mechanism |
| US7437653B2 (en) * | 2004-12-22 | 2008-10-14 | Sandisk Corporation | Erased sector detection mechanisms |
| DE102005040917A1 (de) | 2005-08-30 | 2007-03-08 | Robert Bosch Gmbh | Datenverarbeitungssystem und Betriebsverfahren dafür |
| US20070168754A1 (en) * | 2005-12-19 | 2007-07-19 | Xiv Ltd. | Method and apparatus for ensuring writing integrity in mass storage systems |
| TW200947450A (en) * | 2008-05-09 | 2009-11-16 | A Data Technology Co Ltd | Storage system capable of data recovery and method thereof |
| US9563501B2 (en) * | 2010-11-30 | 2017-02-07 | Micron Technology, Inc. | Preserving data integrity in a memory system |
| US8812934B2 (en) * | 2012-12-12 | 2014-08-19 | HGST Netherlands B.V. | Techniques for storing bits in memory cells having stuck-at faults |
| US10872010B2 (en) | 2019-03-25 | 2020-12-22 | Micron Technology, Inc. | Error identification in executed code |
| US11107549B2 (en) | 2019-12-16 | 2021-08-31 | Microsoft Technology Licensing, Llc | At-risk memory location identification and management |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4037091A (en) * | 1976-04-05 | 1977-07-19 | Bell Telephone Laboratories, Incorporated | Error correction circuit utilizing multiple parity bits |
| JPS5381036A (en) * | 1976-12-27 | 1978-07-18 | Hitachi Ltd | Error correction-detection system |
| JPS592057B2 (ja) * | 1979-02-07 | 1984-01-17 | 株式会社日立製作所 | エラ−訂正・検出方式 |
| JPS6051749B2 (ja) * | 1979-08-31 | 1985-11-15 | 富士通株式会社 | エラ−訂正方式 |
-
1982
- 1982-06-16 US US06/388,830 patent/US4458349A/en not_active Expired - Fee Related
-
1983
- 1983-05-17 JP JP58085183A patent/JPS58220300A/ja active Granted
- 1983-05-27 DE DE8383105269T patent/DE3380910D1/de not_active Expired - Lifetime
- 1983-05-27 EP EP83105269A patent/EP0096783B1/en not_active Expired
Also Published As
| Publication number | Publication date |
|---|---|
| EP0096783A3 (en) | 1986-12-30 |
| DE3380910D1 (de) | 1990-01-04 |
| EP0096783A2 (en) | 1983-12-28 |
| EP0096783B1 (en) | 1989-11-29 |
| US4458349A (en) | 1984-07-03 |
| JPS58220300A (ja) | 1983-12-21 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP0096783B1 (en) | Method for storing data words in fault tolerant memory to recover uncorrectable errors | |
| US20230028438A1 (en) | Memory repair method and apparatus based on error code tracking | |
| EP0497110B1 (en) | Error detecting method and apparatus for computer memory having multi-bit output memory circuits | |
| US6754858B2 (en) | SDRAM address error detection method and apparatus | |
| JP3982639B2 (ja) | マルチレベルセルを有するメモリからデータを読み取る方法 | |
| JPS6051749B2 (ja) | エラ−訂正方式 | |
| EP0332662B1 (en) | Byte write error code method and apparatus | |
| US4661955A (en) | Extended error correction for package error correction codes | |
| CN1242412C (zh) | 半导体存储器 | |
| US11204825B2 (en) | Memory device and repair method with column-based error code tracking | |
| JPH0417535B2 (ja) | ||
| US5014273A (en) | Bad data algorithm | |
| JPS6331817B2 (ja) | ||
| JPS6061837A (ja) | エラ−訂正装置 | |
| US20180217894A1 (en) | Memory module, memory system including the same, and error correcting method thereof | |
| US11030040B2 (en) | Memory device detecting an error in write data during a write operation, memory system including the same, and operating method of memory system | |
| JP2001005736A (ja) | メモリ誤り訂正装置 | |
| US4800563A (en) | Error processing method and apparatus for information processing system | |
| JPH03248251A (ja) | 情報処理装置 | |
| US6732291B1 (en) | High performance fault tolerant memory system utilizing greater than four-bit data word memory arrays | |
| US20210083690A1 (en) | Memory system and operating method thereof | |
| US11188417B2 (en) | Memory system, memory module, and operation method of memory system | |
| US20250199908A1 (en) | Method and system for on-asic error control encoding | |
| US20020174397A1 (en) | Method for error detection/correction of multilevel cell memory and multilevel cell memory having error detection/correction function | |
| CN1045471A (zh) | 容错计算机存储器系统以及具有阻塞性能的应用两级错误校正与检测的部件 |