JP2772391B2 - 不良データアルゴリズム - Google Patents
不良データアルゴリズムInfo
- Publication number
- JP2772391B2 JP2772391B2 JP1168273A JP16827389A JP2772391B2 JP 2772391 B2 JP2772391 B2 JP 2772391B2 JP 1168273 A JP1168273 A JP 1168273A JP 16827389 A JP16827389 A JP 16827389A JP 2772391 B2 JP2772391 B2 JP 2772391B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- bit
- ecc
- data words
- bad
- 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 - Fee Related
Links
- 238000000034 method Methods 0.000 claims abstract description 18
- 238000013500 data storage Methods 0.000 abstract description 2
- 239000000872 buffer Substances 0.000 description 13
- 208000011580 syndromic disease Diseases 0.000 description 7
- 238000004891 communication Methods 0.000 description 5
- 238000001514 detection method Methods 0.000 description 5
- 230000000295 complement effect Effects 0.000 description 4
- 230000002950 deficient Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/1048—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 arrangements adapted for a specific error detection or correction feature
- G06F11/1056—Updating check bits on partial write, i.e. read/modify/write
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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)
- Detection And Prevention Of Errors In Transmission (AREA)
Description
【発明の詳細な説明】 〈産業上の利用分野〉 本発明は、デジタルコンピュータシステム用の不良デ
ータ識別手順、さらに限定的に言うと、再書き込みされ
記憶機構内に記憶された既知の不良データが付加的な単
一ビット誤りが起こった場合でさえ不良として識別され
うるようにするためのアルゴリズムに関する。
ータ識別手順、さらに限定的に言うと、再書き込みされ
記憶機構内に記憶された既知の不良データが付加的な単
一ビット誤りが起こった場合でさえ不良として識別され
うるようにするためのアルゴリズムに関する。
〈従来の技術〉 デジタルコンピュータ内の読み取り−変更−書き込み
データ記憶システムのためには、読取りプロセスの間に
不良かつ訂正不可能なものであることがわかったデータ
を、再度書き込みその後訂正可能なデータであるとして
読み取ることがないようにする措置が構じられているこ
とが望ましい。このようなことが起こるのは一般に、再
度書き込まれた不良データが付加的なビット誤りを偶然
獲得した結果であり、このために、記憶された不良デー
タ内に発生するいくつかの単一ビット誤りは再読みとり
されたときに訂正可能なデータに見えるようになってし
まう。この目的のために一般に用いられているアルゴリ
ズムは、記憶された不良なデータを、このような単一ビ
ット誤りの影響のあらゆる場合から保護しているわけで
はない。
データ記憶システムのためには、読取りプロセスの間に
不良かつ訂正不可能なものであることがわかったデータ
を、再度書き込みその後訂正可能なデータであるとして
読み取ることがないようにする措置が構じられているこ
とが望ましい。このようなことが起こるのは一般に、再
度書き込まれた不良データが付加的なビット誤りを偶然
獲得した結果であり、このために、記憶された不良デー
タ内に発生するいくつかの単一ビット誤りは再読みとり
されたときに訂正可能なデータに見えるようになってし
まう。この目的のために一般に用いられているアルゴリ
ズムは、記憶された不良なデータを、このような単一ビ
ット誤りの影響のあらゆる場合から保護しているわけで
はない。
〈課題を解決するための手段〉 本発明は、読取り−変更−書込みのオペレーションの
一部として不良データが再度書き込まれた後、すでに不
良なものとして見極められたかかる記憶済みデータを適
切に識別する。完全なデータワードは、32のデータビッ
トと1つの特殊マークビットが組合わされた誤り訂正用
の7つの検査ビットを伴う、40のビットを含んでいる。
読みとられたデータが訂正不可能な程度に不良であると
見極められた後、7つの検査ビットは、使用される誤り
訂正コード(ECC)に従ってレーティングされ、次に検
査ビットは逆転させられる。特殊マークビットが同様に
データビット及び逆検査ビットに加えられる。次に、デ
ータビット、逆検査ビット及びマークビットは再度書き
込まれる。不良データが再度読みとられると、7つの検
査ビットの新しいセットが生成され、この新しい検査ビ
ットは、排他的OR関係にて7つの逆検査ビットと比較さ
れ、ECCパターンが展開(発生)される。これは、特殊
マークビットと対比されたとき、再書き込み又は読みと
りプロセス中に付加的な単一ビット誤りが起こった場合
でさえ、再書き込みされたデータの条件が不良であるこ
との正確な表示を提供する。
一部として不良データが再度書き込まれた後、すでに不
良なものとして見極められたかかる記憶済みデータを適
切に識別する。完全なデータワードは、32のデータビッ
トと1つの特殊マークビットが組合わされた誤り訂正用
の7つの検査ビットを伴う、40のビットを含んでいる。
読みとられたデータが訂正不可能な程度に不良であると
見極められた後、7つの検査ビットは、使用される誤り
訂正コード(ECC)に従ってレーティングされ、次に検
査ビットは逆転させられる。特殊マークビットが同様に
データビット及び逆検査ビットに加えられる。次に、デ
ータビット、逆検査ビット及びマークビットは再度書き
込まれる。不良データが再度読みとられると、7つの検
査ビットの新しいセットが生成され、この新しい検査ビ
ットは、排他的OR関係にて7つの逆検査ビットと比較さ
れ、ECCパターンが展開(発生)される。これは、特殊
マークビットと対比されたとき、再書き込み又は読みと
りプロセス中に付加的な単一ビット誤りが起こった場合
でさえ、再書き込みされたデータの条件が不良であるこ
との正確な表示を提供する。
〈実施例〉 全ての図を通して同一文字が同一の又は対応する部分
を表わしている図面を参照してみると、第1図は、本発
明を組み込むのに適した標準的なコンピュータシステム
(2)を概略的に示している。このコンピュータシステ
ム(2)には、中央演算処理装置(CPU)(4)、記憶
システム(6)、誤り訂正システム(ECS)(8)及び
バッファ(10)が含まれている。システムのデータは、
CPU(4)とバッファ(10)の間をコンピュータデータ
母線(12)を通して伝送される。アドレス情報は、アド
レス母線(14)を介してCPU(4)からバッファ(10)
へと送られる。同様に、アドレス情報は、CPU(4)か
ら記憶システム(6)までアドレス母線(16)を介して
送られる。
を表わしている図面を参照してみると、第1図は、本発
明を組み込むのに適した標準的なコンピュータシステム
(2)を概略的に示している。このコンピュータシステ
ム(2)には、中央演算処理装置(CPU)(4)、記憶
システム(6)、誤り訂正システム(ECS)(8)及び
バッファ(10)が含まれている。システムのデータは、
CPU(4)とバッファ(10)の間をコンピュータデータ
母線(12)を通して伝送される。アドレス情報は、アド
レス母線(14)を介してCPU(4)からバッファ(10)
へと送られる。同様に、アドレス情報は、CPU(4)か
ら記憶システム(6)までアドレス母線(16)を介して
送られる。
バッファ(10)と記憶システム(6)の間の通信は、
通信データ母線(18)により提供される。同様に、バッ
ファ(10)と誤り訂正システム(ECS)(8)の間の通
信は、通信データ母線(20)により提供される。上述の
ものは各々、既知のさまざまな構成にて相互接続されう
る周知のコンポーネントであり、これらはそれ自体本発
明の一部を成すものでないことから、例示のみを目的と
してブロックダイヤグラムに示されている。例えば記憶
システム(6)は、32のデータビット位置を含む幅40ビ
ットのデータワードを記憶することができる。例えばバ
ッファ(10)は、複数の40ビットのアドレス可能なワー
ドバッファを含む多重データワードバッファ(ワード緩
衝記憶機構)であってもよい。データは、CPU(4)か
らバッファ(10)まで転送されその後、記憶機構(6)
へと転送される。同様にして、記憶機構(6)から読み
とられたデータは、バッファ(10)そして次にCPU
(4)に転送される。
通信データ母線(18)により提供される。同様に、バッ
ファ(10)と誤り訂正システム(ECS)(8)の間の通
信は、通信データ母線(20)により提供される。上述の
ものは各々、既知のさまざまな構成にて相互接続されう
る周知のコンポーネントであり、これらはそれ自体本発
明の一部を成すものでないことから、例示のみを目的と
してブロックダイヤグラムに示されている。例えば記憶
システム(6)は、32のデータビット位置を含む幅40ビ
ットのデータワードを記憶することができる。例えばバ
ッファ(10)は、複数の40ビットのアドレス可能なワー
ドバッファを含む多重データワードバッファ(ワード緩
衝記憶機構)であってもよい。データは、CPU(4)か
らバッファ(10)まで転送されその後、記憶機構(6)
へと転送される。同様にして、記憶機構(6)から読み
とられたデータは、バッファ(10)そして次にCPU
(4)に転送される。
各々32のデータビット位置を有する40ビットのデータ
ワードが備えられる場合、誤り検出及び訂正プロセスの
ために8ビットを利用することができる。この8つのビ
ットは、記憶システム(6)から読みとられた各々のワ
ードのデータビット位置のいずれか1つにおいて単一ビ
ット誤りを自動的に訂正するため、ECS(8)内で使用
されうる。ECS(8)は、誤り訂正を目的として検査ビ
ットを割当てるため誤り検出及び訂正プロセスのために
利用可能なビット位置のいずれか又は全てを用いること
ができる。なおこの検査ビットは、周知のECCコードの
いずれかに従って各データワードのデータで生成され
る。このように割当てられた検査ビットは次に、当該技
術分野では周知の方法を用いて誤り検出及び訂正のため
のECCシンドロームを生成するのに用いることができ
る。ただし、ECC検出プロセス中にデータワード内で検
出された複数の誤り、又はその中に奇遇検査誤り(パリ
ティ・エラー)が見い出されたデータワードを変更する
ためにCPU(4)から受けとられたデータは訂正でき
ず、データワードはそれが記憶システム(6)内に再度
書き込まれた時点で不良データとして指定されなくては
ならない。
ワードが備えられる場合、誤り検出及び訂正プロセスの
ために8ビットを利用することができる。この8つのビ
ットは、記憶システム(6)から読みとられた各々のワ
ードのデータビット位置のいずれか1つにおいて単一ビ
ット誤りを自動的に訂正するため、ECS(8)内で使用
されうる。ECS(8)は、誤り訂正を目的として検査ビ
ットを割当てるため誤り検出及び訂正プロセスのために
利用可能なビット位置のいずれか又は全てを用いること
ができる。なおこの検査ビットは、周知のECCコードの
いずれかに従って各データワードのデータで生成され
る。このように割当てられた検査ビットは次に、当該技
術分野では周知の方法を用いて誤り検出及び訂正のため
のECCシンドロームを生成するのに用いることができ
る。ただし、ECC検出プロセス中にデータワード内で検
出された複数の誤り、又はその中に奇遇検査誤り(パリ
ティ・エラー)が見い出されたデータワードを変更する
ためにCPU(4)から受けとられたデータは訂正でき
ず、データワードはそれが記憶システム(6)内に再度
書き込まれた時点で不良データとして指定されなくては
ならない。
データワードがCPU(4)からの指令情報に応えて読
取り−変更−書込みプロセスの一部として記憶システム
(6)から読みとられる場合、本発明に従った不良デー
タアルゴリズムの実行は、第2図に示されている流れ図
に従う。データワードが記憶システム(6)から読みと
られ、新しいデータがバッファ(10)を通してCPU
(4)から指令情報と共に受けとられた後、記憶システ
ム(6)からのデータワード及びCPU(4)からの新し
いデータは誤りについて検査される。記憶機構(6)か
らのデータワード又はCPU(4)からの新しいデータ内
にいかなる誤りも見い出されなかった場合、この読みと
られたデータは、CPU(4)からの指示情報に従って、
この新しいデータに変更され、用いられるECCコードに
応じた7つの検査ビットの新しいセットが生成され、マ
ークビットは「0」状態にセットされる。マークビット
の位置は、データの状態を表わすのに用いられ、不良デ
ータについてはマークビットが「1」状態に、そして優
良ビットについては「0」状態にセットされる。
取り−変更−書込みプロセスの一部として記憶システム
(6)から読みとられる場合、本発明に従った不良デー
タアルゴリズムの実行は、第2図に示されている流れ図
に従う。データワードが記憶システム(6)から読みと
られ、新しいデータがバッファ(10)を通してCPU
(4)から指令情報と共に受けとられた後、記憶システ
ム(6)からのデータワード及びCPU(4)からの新し
いデータは誤りについて検査される。記憶機構(6)か
らのデータワード又はCPU(4)からの新しいデータ内
にいかなる誤りも見い出されなかった場合、この読みと
られたデータは、CPU(4)からの指示情報に従って、
この新しいデータに変更され、用いられるECCコードに
応じた7つの検査ビットの新しいセットが生成され、マ
ークビットは「0」状態にセットされる。マークビット
の位置は、データの状態を表わすのに用いられ、不良デ
ータについてはマークビットが「1」状態に、そして優
良ビットについては「0」状態にセットされる。
CPU(4)からの指令情報に従って新しいデータで変
更された32のデータビット、新しい7つの検査ビットそ
して「0」状態のマークビットを含む全部で40ビットの
データワードが記憶システム(6)内に再度書き込まれ
る。
更された32のデータビット、新しい7つの検査ビットそ
して「0」状態のマークビットを含む全部で40ビットの
データワードが記憶システム(6)内に再度書き込まれ
る。
誤りが見つかったものの訂正可能である場合、例えば
記憶機構(6)から読みとられたデータワード内に単一
ビット誤りが見い出された場合、上述のように誤りが全
く検出されなかったかのようにプロセスは続行し、変更
されたデータワードは、7つの新しい検査ビット及び
「0」状態マークビットと共に再度書き込まれる。訂正
不可能な誤りが見つかり、記憶機構(6)からのデータ
が、指示情報に従って、CPU(4)からの新しいデータ
に変更されたが、7つの新しい検査ビットは誤りが全く
発見されなかったデータについて前述のとおりに生成さ
れた場合、この検査ビットは逆転され、マークビットが
「1」の状態にセットされることになる。未変更のデー
タビット、逆検査ビット及び「1」状態のマークビット
を含む40ビットのデータワードは、次に記憶システム
(6)内に再度書き込まれる。
記憶機構(6)から読みとられたデータワード内に単一
ビット誤りが見い出された場合、上述のように誤りが全
く検出されなかったかのようにプロセスは続行し、変更
されたデータワードは、7つの新しい検査ビット及び
「0」状態マークビットと共に再度書き込まれる。訂正
不可能な誤りが見つかり、記憶機構(6)からのデータ
が、指示情報に従って、CPU(4)からの新しいデータ
に変更されたが、7つの新しい検査ビットは誤りが全く
発見されなかったデータについて前述のとおりに生成さ
れた場合、この検査ビットは逆転され、マークビットが
「1」の状態にセットされることになる。未変更のデー
タビット、逆検査ビット及び「1」状態のマークビット
を含む40ビットのデータワードは、次に記憶システム
(6)内に再度書き込まれる。
マークビットが「1」状態にセットされている不良デ
ータに指定されたデータワードのデータ部分は、かかる
不良データ内の検出された誤りが、つねに同様の状態を
作り出す記憶システム(6)内の動的ランダムアクセス
記憶装置(DRAM)チップの不良によりひきおこされた可
能性があるために、逆転されない形で読みとられたもの
として再度書き込まれる。同じ状態をこの不良なDRAMに
書き戻すことにより、書込まれた通りのデータの再読み
取りが確実なものとなる。そうでなければ、再読みとり
プロセス中に付加的な単一ビット誤りが読みとられる可
能性があり、このためECS(8)は、データワードが実
際にすでに不良データとして識別されたときにそのデー
タワードを訂正可能な誤りをもつものとして誤って識別
することになりうる。
ータに指定されたデータワードのデータ部分は、かかる
不良データ内の検出された誤りが、つねに同様の状態を
作り出す記憶システム(6)内の動的ランダムアクセス
記憶装置(DRAM)チップの不良によりひきおこされた可
能性があるために、逆転されない形で読みとられたもの
として再度書き込まれる。同じ状態をこの不良なDRAMに
書き戻すことにより、書込まれた通りのデータの再読み
取りが確実なものとなる。そうでなければ、再読みとり
プロセス中に付加的な単一ビット誤りが読みとられる可
能性があり、このためECS(8)は、データワードが実
際にすでに不良データとして識別されたときにそのデー
タワードを訂正可能な誤りをもつものとして誤って識別
することになりうる。
不良として検出され指定された再度書き込まれたデー
タを正しく識別するための本発明に従った不良データア
ルゴリズム検出方法は、第3図に示されている流れ図に
従う。記憶システム(6)から読みとられたデータワー
ドはECS(8)内に記憶され、ECCコードに従って、記憶
されたデータから7つの新しい検査ビットが生成され
る。次にこの新しい検査ビットは、排他的OR関係で、記
憶されたデータワードの一部を形成する逆検査ビットに
比較され、ECCパターンが展開さされる。記憶された逆
検査ビットは、単一ビット誤りにより通常生成されるよ
うなシンドロームの相補物であるECCシンドロームを作
り出す。記憶された逆検査ビットで生成された相補的シ
ンドロームは、通常生成されるシンドロームに比べより
正確に訂正不可能な多重ビット誤りを示す。この相補的
シンドロームは、1つの状況において訂正不可能なマル
チビット誤りをもつデータワードを正確に識別しない。
従って、1つの読みとられたデータワードが複数の訂正
不能な誤りを含んでいるかを見極めるにはこの相補的シ
ンドロームにのみ依存することはできず、マークビット
も用いられなくてはならない。
タを正しく識別するための本発明に従った不良データア
ルゴリズム検出方法は、第3図に示されている流れ図に
従う。記憶システム(6)から読みとられたデータワー
ドはECS(8)内に記憶され、ECCコードに従って、記憶
されたデータから7つの新しい検査ビットが生成され
る。次にこの新しい検査ビットは、排他的OR関係で、記
憶されたデータワードの一部を形成する逆検査ビットに
比較され、ECCパターンが展開さされる。記憶された逆
検査ビットは、単一ビット誤りにより通常生成されるよ
うなシンドロームの相補物であるECCシンドロームを作
り出す。記憶された逆検査ビットで生成された相補的シ
ンドロームは、通常生成されるシンドロームに比べより
正確に訂正不可能な多重ビット誤りを示す。この相補的
シンドロームは、1つの状況において訂正不可能なマル
チビット誤りをもつデータワードを正確に識別しない。
従って、1つの読みとられたデータワードが複数の訂正
不能な誤りを含んでいるかを見極めるにはこの相補的シ
ンドロームにのみ依存することはできず、マークビット
も用いられなくてはならない。
上述の1つの状況は、記憶システム(6)から読みと
られたデータワード内に検出された初期不良データが1
つのデータビット位置に1つの誤りをそして1つの検査
ビット位置にもう1つの誤りを含み、この不良データ
が、逆検査ビット及びマークビットが上述のように
「1」の状態にセットされた形で記憶システム(6)内
に再度書き込まれたときに起こり、この場合このデータ
が読みとられると付加的な単一ビット誤りが不良データ
ビット位置の1つで起こる。このような例外は、かかる
不良データが再度読みとられたとき、3つ、4つ又は5
つの「1」のECCパターンを生成しうるために起こる。
3つの「1」のパターンは、単一ビットの誤りを示す。
単一ビット誤りは通常訂正可能である。しかし、デコー
ディング論理での生成されたECCパターンとマークビッ
トとを対比することにより、再度読みとられたデータワ
ードを不良で訂正不可能なデータをもつものとして正し
く見極めることができる。これは、マークビットが、不
良データについては「1」の状態に、優良データについ
ては「0」の状態にセットされるからである。
られたデータワード内に検出された初期不良データが1
つのデータビット位置に1つの誤りをそして1つの検査
ビット位置にもう1つの誤りを含み、この不良データ
が、逆検査ビット及びマークビットが上述のように
「1」の状態にセットされた形で記憶システム(6)内
に再度書き込まれたときに起こり、この場合このデータ
が読みとられると付加的な単一ビット誤りが不良データ
ビット位置の1つで起こる。このような例外は、かかる
不良データが再度読みとられたとき、3つ、4つ又は5
つの「1」のECCパターンを生成しうるために起こる。
3つの「1」のパターンは、単一ビットの誤りを示す。
単一ビット誤りは通常訂正可能である。しかし、デコー
ディング論理での生成されたECCパターンとマークビッ
トとを対比することにより、再度読みとられたデータワ
ードを不良で訂正不可能なデータをもつものとして正し
く見極めることができる。これは、マークビットが、不
良データについては「1」の状態に、優良データについ
ては「0」の状態にセットされるからである。
下表は、当初不良データをもつものとして読みとられ
た、読取り及び再読取りデータ内で誤りが検出される可
能性を全て示している。
た、読取り及び再読取りデータ内で誤りが検出される可
能性を全て示している。
従って、本書では、優良データ上の単一ビット誤りを
区別しながら、不良とマークされたデータ上に起こった
すべての単一ビット誤りを識別しこれらを訂正不能な多
重ビット誤りとして報告することのできる、デジタルコ
ンピュータ内の読取り−変更−書込み記憶システム専用
に適合させられた不良データ識別アルゴリズムについて
記述されてきた。本発明の内容を説明するために以上に
説明、例示されてきた部品及びアセンブリの詳細、配置
及び構成に関するさまざまな変更が、上記請求の範囲に
表わされている本発明の原則及び適用範囲から逸脱する
ことなく、当業者により行なわれうるものであるという
ことも理解されたい。
区別しながら、不良とマークされたデータ上に起こった
すべての単一ビット誤りを識別しこれらを訂正不能な多
重ビット誤りとして報告することのできる、デジタルコ
ンピュータ内の読取り−変更−書込み記憶システム専用
に適合させられた不良データ識別アルゴリズムについて
記述されてきた。本発明の内容を説明するために以上に
説明、例示されてきた部品及びアセンブリの詳細、配置
及び構成に関するさまざまな変更が、上記請求の範囲に
表わされている本発明の原則及び適用範囲から逸脱する
ことなく、当業者により行なわれうるものであるという
ことも理解されたい。
第1図は、本発明を組込むのに適した読取り−変更−書
込み記憶システムを含む標準的なデジタルコンピュータ
システムのブロック図である。 第2図は、第1図に示されているデジタルコンピュータ
内で用いられる読取り−変更−書込み記憶システムに適
用された本発明の基本的方法の流れ図である。 第3図は、第2図に示されている本発明で用いられるア
ルゴリズムを展開するための特定の方法の流れ図であ
る。 2……標準的コンピュータシステム、4……中央演算処
理装置(CPU)、6……記憶システム、8……誤り訂正
システム(ECS)、10……バッファ、12……コンピュー
タデータ母線、14……アドレス母線、16……アドレス母
線、20……通信データ母線。
込み記憶システムを含む標準的なデジタルコンピュータ
システムのブロック図である。 第2図は、第1図に示されているデジタルコンピュータ
内で用いられる読取り−変更−書込み記憶システムに適
用された本発明の基本的方法の流れ図である。 第3図は、第2図に示されている本発明で用いられるア
ルゴリズムを展開するための特定の方法の流れ図であ
る。 2……標準的コンピュータシステム、4……中央演算処
理装置(CPU)、6……記憶システム、8……誤り訂正
システム(ECS)、10……バッファ、12……コンピュー
タデータ母線、14……アドレス母線、16……アドレス母
線、20……通信データ母線。
フロントページの続き (72)発明者 ドナルド ダブリュー スメルサー アメリカ合衆国 マサチューセッツ州 01740 ボルトン ウッドサイド ドラ イブ 20 (56)参考文献 特開 昭51−137335(JP,A) 特開 昭58−164078(JP,A) (58)調査した分野(Int.Cl.6,DB名) G06F 11/10 G06F 12/16
Claims (4)
- 【請求項1】各々複数のデータビット位置及び複数の誤
り訂正コード(ECC)をもつ記憶されたデータワードを
複数有している読取り−変更−書き込み操作モードの備
わった記憶システムを含む、デジタルコンピュータシス
テムのための、訂正不可能な誤りをもつ不良データワー
ドとしてデータワードを識別する方法において、 かかるデータが訂正不可能と見極められたことを示すた
め、データコード各々内に前記ECCビット位置の1ビッ
トを割当てる段階、 前記割当てられたビット位置内で前記データワードの各
々について1つのマークビットを生成する段階、 前記ECCビット位置の残りのものを満たすため1つの誤
り訂正コード(ECC)に従って前記データワードの各々
に対し検査ビットを生成する段階、 対応する複数の逆検査ビットを形成するため前記不良デ
ータワードの各々について前記生成された検査ビットを
逆転させる段階、 前記データワードの各々に対する前記データをその対応
するデータビット位置に書き込む段階、 前記不良データワードの各々についての前記逆検査ビッ
トを前記対応するECCビット位置に書き込む段階、 前記データワードの各々に対する前記マークビットを、
前記割当てられたビット位置に書き込む段階、 前記書き込まれたデータワードの各々を読みとる段階、 前記ECCに従って前記読みとられたデータワードの各々
について新しい検査ビットを生成する段階、 ECCパターンを展開するため排他的OR関係で、前記読み
とられたデータにより生成された検査ビットを前記対応
する書き込まれた検査ビットと比較する段階、そして 前記読みとられたデータワードの各々における前記ECC
パターンと前記マークビットとを対比した後、前記不良
データワードが訂正不可能な誤りを含むことを識別する
段階、 を含んでいることを特徴とする方法。 - 【請求項2】前記マークビットを生成する段階には、前
記不良データを含む前記各々のデータワードについて論
理「1」状態として前記マークビットを生成する段階が
含まれていることを特徴とする、請求項(1)に記載の
方法。 - 【請求項3】前記データワードには優良データを伴う優
良データワードが含まれており、前記マークビットを生
成する段階にはさらに優良データをもつ前記優良データ
ワードの各々について論理「0」として前記マークビッ
トを生成する段階が含まれていることを特徴とする、請
求項(2)に記載の方法。 - 【請求項4】各々複数のデータビット位置と複数の誤り
訂正コード(ECC)ビット位置をもつ複数の優良及び不
良の記憶されたデータワードを有する読取り−変更−書
込み操作モードを伴う記憶システムを含むデジタルコン
ピュータシステムのための訂正不可能な誤りをもつ不良
データワードとしてデータワードを識別する方法におい
て、 かかるデータが訂正不可能と見極められたことを示すた
め前記データワードの各々の中に前記ECCビット位置の
1ビットを割り当てる段階、 前記割当てられたビット位置内で前記優良データワード
の各々について論理「0」のマークビットを生成する段
階、 前記割当てられたビット位置内で前記不良データワード
の各々について論理「1」のマークビットを生成する段
階、 前記ECCビット位置の残りのものを満たすため誤り訂正
コード(ECC)に従って前記データワードの各々に対し
検査ビットを生成する段階、 相応する複数の逆検査ビットを形成するため、前記不良
データワードの各々について前記生成された検査ビット
を逆転させる段階、 前記データワードの各々に対する前記データをその対応
するデータビット位置内に書き込む段階、 前記優良データワードの各々についての前記検査ビット
を、前記対応するECC位置に書き込む段階、 前記不良データワードの各々についての前記逆検査ビッ
トを、前記対応するECCビット位置に書き込む段階、 前記データワードの各々についての前記マークビットを
前記割当てられたビット位置に書き込む段階、 前記書き込まれたデータワードの各々を読みとる段階、 前記ECCに従って前記読とられたデータワードの各々に
ついて新しい検査ビットを生成する段階、 ECCパターンを展開するため排他的OR関係で、前記読み
とられたデータにより生成された検査ビットを前記対応
する書き込まれた検査ビットと比較する段階、そして 前記読みとられたデータワードの各々における前記ECC
パターンと前記マークビットとを対比した後、前記不良
データワードが訂正不可能な誤りを含むことを識別する
段階、 を含んでいることを特徴とする方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US303574 | 1981-09-18 | ||
US07/303,574 US5014273A (en) | 1989-01-27 | 1989-01-27 | Bad data algorithm |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH02206843A JPH02206843A (ja) | 1990-08-16 |
JP2772391B2 true JP2772391B2 (ja) | 1998-07-02 |
Family
ID=23172719
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP1168273A Expired - Fee Related JP2772391B2 (ja) | 1989-01-27 | 1989-06-29 | 不良データアルゴリズム |
Country Status (6)
Country | Link |
---|---|
US (1) | US5014273A (ja) |
EP (1) | EP0381885B1 (ja) |
JP (1) | JP2772391B2 (ja) |
AT (1) | ATE142801T1 (ja) |
CA (1) | CA1319436C (ja) |
DE (1) | DE68927164T2 (ja) |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5325375A (en) * | 1991-06-28 | 1994-06-28 | Sun Microsystems, Inc. | Method and apparatus for non-atomic level parity protection for storing data in a random access memory |
JPH05216698A (ja) * | 1991-08-05 | 1993-08-27 | Advanced Micro Devicds Inc | 改良されたエラー検出および訂正回路 |
EP0576917B1 (de) * | 1992-06-30 | 2000-08-30 | Siemens Aktiengesellschaft | Verfahren zur Datensicherung bei Schreib-Lese-Speichern |
US5644583A (en) * | 1992-09-22 | 1997-07-01 | International Business Machines Corporation | Soft error correction technique and system for odd weight row error correction codes |
US6151689A (en) * | 1992-12-17 | 2000-11-21 | Tandem Computers Incorporated | Detecting and isolating errors occurring in data communication in a multiple processor system |
US5623506A (en) * | 1994-01-28 | 1997-04-22 | International Business Machines Corporation | Method and structure for providing error correction code within a system having SIMMs |
US5379304A (en) * | 1994-01-28 | 1995-01-03 | International Business Machines Corporation | Method and structure for providing error correction code and parity for each byte on SIMM's |
US5550716A (en) * | 1994-11-18 | 1996-08-27 | Ford Motor Company | Reduced package depth low profile headlamp |
US5875477A (en) * | 1995-12-22 | 1999-02-23 | Intel Corporation | Method and apparatus for error management in a solid state disk drive using primary and secondary logical sector numbers |
US6678854B1 (en) * | 1999-10-12 | 2004-01-13 | Ericsson, Inc. | Methods and systems for providing a second data signal on a frame of bits including a first data signal and an error-correcting code |
US7168026B2 (en) | 2001-06-22 | 2007-01-23 | Intel Corporation | Method and apparatus for preservation of failure state in a read destructive memory |
DE10252230A1 (de) * | 2002-11-11 | 2004-05-27 | Robert Bosch Gmbh | Verfahren zur Übertragung von Daten |
US7587658B1 (en) * | 2005-01-03 | 2009-09-08 | Sun Microsystems, Inc. | ECC encoding for uncorrectable errors |
US20080168331A1 (en) * | 2007-01-05 | 2008-07-10 | Thomas Vogelsang | Memory including error correction code circuit |
US8312349B2 (en) * | 2009-10-27 | 2012-11-13 | Micron Technology, Inc. | Error detection/correction based memory management |
US8751736B2 (en) | 2011-08-02 | 2014-06-10 | Oracle International Corporation | Instructions to set and read memory version information |
US8572441B2 (en) | 2011-08-05 | 2013-10-29 | Oracle International Corporation | Maximizing encodings of version control bits for memory corruption detection |
US9391638B1 (en) * | 2011-11-10 | 2016-07-12 | Marvell Israel (M.I.S.L) Ltd. | Error indications in error correction code (ECC) protected memory systems |
US9043559B2 (en) | 2012-10-23 | 2015-05-26 | Oracle International Corporation | Block memory engine with memory corruption detection |
US9672298B2 (en) | 2014-05-01 | 2017-06-06 | Oracle International Corporation | Precise excecution of versioned store instructions |
US9195593B1 (en) | 2014-09-27 | 2015-11-24 | Oracle International Corporation | Hardware assisted object memory migration |
US10297335B2 (en) | 2016-09-02 | 2019-05-21 | International Business Machines Corporation | Tracking address ranges for computer memory errors |
US10304560B2 (en) | 2016-09-02 | 2019-05-28 | International Business Machines Corporation | Performing error correction in computer memory |
US10338999B2 (en) | 2016-09-02 | 2019-07-02 | International Business Machines Corporation | Confirming memory marks indicating an error in computer memory |
US10353669B2 (en) | 2016-09-02 | 2019-07-16 | International Business Machines Corporation | Managing entries in a mark table of computer memory errors |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3906200A (en) * | 1974-07-05 | 1975-09-16 | Sperry Rand Corp | Error logging in semiconductor storage units |
JPS51137335A (en) * | 1975-05-22 | 1976-11-27 | Yoshihiro Toma | Faulty memory permissible control system |
US4077028A (en) * | 1976-06-14 | 1978-02-28 | Ncr Corporation | Error checking and correcting device |
US4319357A (en) * | 1979-12-14 | 1982-03-09 | International Business Machines Corp. | Double error correction using single error correcting code |
US4458349A (en) * | 1982-06-16 | 1984-07-03 | International Business Machines Corporation | Method for storing data words in fault tolerant memory to recover uncorrectable errors |
JPS6050669A (ja) * | 1983-08-29 | 1985-03-20 | Hitachi Ltd | デ−タ復調方式 |
US4604751A (en) * | 1984-06-29 | 1986-08-05 | International Business Machines Corporation | Error logging memory system for avoiding miscorrection of triple errors |
DE3482509D1 (de) * | 1984-12-28 | 1990-07-19 | Ibm | Geraet zum korrigieren von fehlern in speichern. |
US4661955A (en) * | 1985-01-18 | 1987-04-28 | Ibm Corporation | Extended error correction for package error correction codes |
US4713816A (en) * | 1986-02-25 | 1987-12-15 | U.S. Philips Corporation | Three module memory system constructed with symbol-wide memory chips and having an error protection feature, each symbol consisting of 2I+1 bits |
US4780809A (en) * | 1986-08-08 | 1988-10-25 | Amdahl Corporation | Apparatus for storing data with deferred uncorrectable error reporting |
US4817095A (en) * | 1987-05-15 | 1989-03-28 | Digital Equipment Corporation | Byte write error code method and apparatus |
US4782487A (en) * | 1987-05-15 | 1988-11-01 | Digital Equipment Corporation | Memory test method and apparatus |
-
1989
- 1989-01-27 US US07/303,574 patent/US5014273A/en not_active Expired - Lifetime
- 1989-06-15 CA CA000602855A patent/CA1319436C/en not_active Expired - Fee Related
- 1989-06-29 JP JP1168273A patent/JP2772391B2/ja not_active Expired - Fee Related
- 1989-07-03 EP EP89306719A patent/EP0381885B1/en not_active Expired - Lifetime
- 1989-07-03 AT AT89306719T patent/ATE142801T1/de not_active IP Right Cessation
- 1989-07-03 DE DE68927164T patent/DE68927164T2/de not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
EP0381885B1 (en) | 1996-09-11 |
EP0381885A2 (en) | 1990-08-16 |
EP0381885A3 (en) | 1991-09-18 |
JPH02206843A (ja) | 1990-08-16 |
CA1319436C (en) | 1993-06-22 |
ATE142801T1 (de) | 1996-09-15 |
DE68927164T2 (de) | 1997-04-10 |
DE68927164D1 (de) | 1996-10-17 |
US5014273A (en) | 1991-05-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2772391B2 (ja) | 不良データアルゴリズム | |
US6009548A (en) | Error correcting code retrofit method and apparatus for multiple memory configurations | |
US5537425A (en) | Parity-based error detection in a memory controller | |
US7587658B1 (en) | ECC encoding for uncorrectable errors | |
JPS6061837A (ja) | エラ−訂正装置 | |
JPH02278449A (ja) | フオールト・トレラント・メモリ・システム | |
JPH07191915A (ja) | コンピュータ・システム、メモリ・カード、及びその操作方法 | |
AU597140B2 (en) | Efficient address test for large memories | |
JP2004514184A (ja) | デジタル・データにおけるソフト・エラーを訂正するための方法および装置 | |
US5357521A (en) | Address sensitive memory testing | |
CN111428280B (zh) | SoC安全芯片密钥信息完整性存储及错误自修复方法 | |
JPS6391764A (ja) | パリティ・チェック機能を有するメモリ・システム | |
JPH02278355A (ja) | フオールト・トレラント・メモリ・システム | |
JP3170145B2 (ja) | メモリ制御システム | |
JP2513615B2 (ja) | Ecc回路付記憶装置 | |
JP3130796B2 (ja) | 制御記憶装置 | |
EP0442616A2 (en) | Method for testing a computer memory location | |
JP2930239B2 (ja) | 記憶装置の障害検出方法及び記憶制御装置 | |
JPH0756816A (ja) | メモリの制御装置 | |
EP0653707A2 (en) | Error handling in memory subsystem | |
JPS5823678B2 (ja) | ジコチエツクキノウオユウスルアヤマリテイセイカイロ | |
JPH06161905A (ja) | データの検証方法 | |
JPS6010661B2 (ja) | 誤り検査方式 | |
JPH02143352A (ja) | メモリエラー検出修正方式 | |
JPS6232826B2 (ja) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |