JPS61157959A - メモリにおけるエラ−訂正方法 - Google Patents

メモリにおけるエラ−訂正方法

Info

Publication number
JPS61157959A
JPS61157959A JP60231467A JP23146785A JPS61157959A JP S61157959 A JPS61157959 A JP S61157959A JP 60231467 A JP60231467 A JP 60231467A JP 23146785 A JP23146785 A JP 23146785A JP S61157959 A JPS61157959 A JP S61157959A
Authority
JP
Japan
Prior art keywords
error
bit
word
bits
syndrome
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.)
Granted
Application number
JP60231467A
Other languages
English (en)
Other versions
JPH0260013B2 (ja
Inventor
レネ・グレース
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPS61157959A publication Critical patent/JPS61157959A/ja
Publication of JPH0260013B2 publication Critical patent/JPH0260013B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/88Masking faults in memories by using spares or by reconfiguring with partially good memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding 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/1012Adding 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/1024Identification of the type of error

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 A、産業上の利用分野 本発明は、メモリにおけるエラー訂正の技術に関する。
B8.従来技術 ハミング・コードを使って1ビットエラーを訂正し2ビ
ットエラーを検出することは、周知の方法である。これ
は、IBMジャーナル・リサーチ・アンド・デベロップ
メント(“IBM Journalresearch 
and Development” ) 1970年7
月号の9.395〜401に発表されたエム・ワイ・シ
ャオ(M 、 Y 、 Hsiao)の論文を参照する
ことができる。
これらの方法に対する改良法が、アイ・イー・イー・イ
ー・トランザクション・オン・インフォメーション・セ
オリ(“IEEE Transactions oni
nformation theory”)第1T−24
巻、第6号。
1978年11月刊、p、712〜718に発表された
論文に記載されている。この改良法は、2以上のエラー
が検出されたとき、記憶されたビット構成を反転するこ
とによってエラーをマスクできることを示唆している。
そこに提案された方法を具体化するには、各ビット構成
に追加ビットを関連させて、そのビット構成が真の値で
記憶されているか、それとも反転された値で記憶されて
いるかを示すようにすることが必要である。
C1発明が解決しようとする問題点 したがって読み取りオペレーションの度にこの追加ビッ
トを検査しなければならず、そのためメモリの性能が低
下する。
したがって1本発明の目的は、メモリの性能を損わずに
少くとも2個のエラーを訂正するための技術を提供する
ことである。
D0問題点を解決するための手段 この目的を達成するため、N個(ただしNは偶数)のE
CCビットを含むワードからNビットのエラーシンドロ
ームが生成され、このエラーシンドロームは1ビットエ
ラーを示すのに第1の値にあるn1個のビットを含むか
または2ビットエラーを示すのにゼロまたはN以外の偶
数個のビットを含み、前記n1が奇数であるようなメモ
リにおける本発明のエラー訂正方法は、(a)アドレス
されたワードを読み取るステップと、(b)エラーシン
ドロームを生成するステップと、(C)読み取られたワ
ードがエラーを含まないかまたは1ビットエラーを含む
ということをエラーシンドロームが示す場合は読み取り
オペレーションを終了して。
(イ)エラーシンドロームが第1の値にあるビットを含
まないときは何ら処理をせず、(ロ)エラーシンドロー
ムが第1の値にあるビットをN個含むときは読み取られ
たワードを反転し、(ハ)エラーシンドロームが第1の
値にあるビットをn1鯉含むときは読み取られたワード
を訂正し、(ニ)エラーシンドロームが第1の値にある
ビットを(N−n1)個含むときは読み取られたワード
を訂正しおよび反転する。ステップと、(d)エラーシ
ンドロームが2ビットエラーを示す場合は読み取られた
ワードを反転して再書き込みするステップと、(e) 
 反転されたワードを読み取ってそのエラーシンドロー
ムを生成するステップと、(f)ステップ(3)で生成
されたエラーシンドロームがされたエラーシンドローム
がエラーなしまたは1ビットエラーを示す場合は読み取
りオペレーションを終了して、(イ)エラーシンドロー
ムが第1の値にあるビットを含まないときは何ら処理を
せず、(ロ)エラーシンドロームが第1の値にあるビッ
トをN個含むときは読み取られたワードを反転し、(ハ
)エラーシンドロームが前記第1の値にあるビットをn
1個含むときは読み取られたワードを訂正し、(ニ)エ
ラーシンドロームが前記第1の値にあるビットを(N−
n1)個含むときは読み取られたワードを訂正しおよび
反転する。
ステップと、を遂行することによってメモリからワード
を読み取るようにしたことを特徴とする。
以下に本発明の実施例を概説する。
実施例では、さらに下記の(a)ないしくd)のステッ
プを遂行することにより書き込みオペレーションを遂行
する: (a)アドレスされたロケーションにワードを書き込む
ステップ。
(b)そのワードを読み取ることから成る読み取り検査
を遂行するステップ。
(C)そのエラーシンドロームを生成するステップ。
(d)エラーシンドロームが2ビツト・エラーを示すと
きはそのワードを反転された極性で再書き込みし、エラ
ーシンドロームがエラーなしまたは1ビツト・エラーを
示すときは書き込みオペレーションを終了するステップ
本発明を実現するためのエラー訂正機構は実施例によれ
ば、読み取りアドレス信号、書き込みアドレス信号、お
よび書き込むべきワードを供給するメモリコントローラ
(3)と、読み取られたワード中の1フイールドとそれ
に開通するECCビット(AないしH)を各々が受は取
ってエラーシンドロームおよびその補数化出力を生成す
るN個のパリティチェッカ(PctないしPCB)と、
を含み、下記の(a)ないしくc)の手段を有すること
を特徴とする: (、)エラーシンドロームおよびその補数化出力を受は
取って。
(i)エラーシンドロームが第1の値にあるビットをn
1個または(N−n1)個含むときにそのうちの1つが
活動化される(N+D)個の訂正制御信号(16)と。
(…)エラーシンドロームが第1の値にあるビットを(
N−n1)個もしくはN個含むとき、または読み取られ
たワードを反転して再書き込みさせるためにメモリコン
トローラ(3)から反転信号が供給されたときに活動化
される反転制御信号(20)と。
(迅)エラーシンドロームが第1の値にあるビットを偶
数個(ただしゼロおよびNを除く)含むときに活動化さ
れる2ビツト・エラー指示信号と。
を出力する論理手段(14)。
(b)(N+D)個の第1の反転手段(18):これら
の各々は、読み取られたワードのうちの1つのビットと
訂正制御信号の1つとを受は取って。
この訂正制御信号が活動状態のとき受信ビットを反転す
る。
(e)  (N + D )個の第2の反転手段(22
):これらの各々は、第1の反転手段の1つの出力信号
と反転制御信号とを受は取って、反転制御信号が活動状
態のとき上記第1の反転手段の出力信号を反転する(し
たがって、第2の反転手段の出力はプロセッサで使用で
きる訂正された読み取りワードを表わし、訂正不能な2
ビツト・エラーは報告されない)。
本発明の作用は、ワードが反転されて記憶されている′
かまたは反転されないで記憶されているかを示す情報が
生成されるエラーシンドローム自身に包含されているこ
とにより、従来必要であった余分なビット(反転に関す
る情報を示すビット)が不要となりしたがってこのビッ
トの検査も不要となることである。実施例でいうと、8
ビツトのエラーシンドロームのうち“1”の個数が3な
らそのワードは反転しないで記憶されていることを示し
くこれと同時に1ビツト・エラーがあるということも示
す)、“l”の個数が5なら反転されて記憶されている
ことを示す(これと同時に1ビツト・エラーがあるとい
うことも示す)、このように本発明によれば、反転に関
する情報を示すビットを独立に検査する必要がないので
従来に比べて効率よくエラーが訂正できるようになる。
E、実施例 本発明にもとづく方法および装置を用いると、通常すべ
ての単一ビット・エラーを訂正し2ビツト・エラーのす
べての組合せを検出することのできる単純距離4のハミ
ング・コードを使って、メモリ・プレイ内の訂正能力を
拡張することができる。これは、メモリ・アレイ内の障
害数を最小限に抑えるために適当な極性でビットを永続
的に記憶することからなるものである。
第1表 Hマトリックス バイト3バイト2バイト1バイトOECCビット765
4321076543210765432107654
3210 ABCDEFGHフィールド1111111
111111.、、、 、、、、、、、、 、、、、、
、、、1.、、、、、。
フィールドz 、、、、、、、、 11111111 
nii、、、、 、、、、、、、、 、t、、、、、。
フィールド3 、、、、、、、、 、、、、、、、、1
11111111111.、、、、.1.、、、。
フィールド41111.、、、 、、、、、、、、 、
、、、、、、、11111111、、.1.、、、  
     ’フィールド5、、.1..11、、.1.
.11、、.1..11、、.1..11、、、.1.
、。
フィールド6、.1..1.l 、、1..1.l 、
、1..1.1、.1..1.1、、、、.1.。
フィールド? 、1..1.1..1..1.1..1
..1.1..1..1.1.、、、、、.1゜フィー
ルド81.、.11.、1.、.11.、1.、.11
.、1.、.11.、、、、、、、.1メモリに記憶さ
れているMビット・ワードがDデータ・ビットすなわち
4個の8ビツト・バイトを含むものと仮定して、本発明
の良好な実施例で使用されるHマトリックスを上記第1
表に示す。
これらのデータ・ビットは12ビツトからなる8つのフ
ィールドに分配され、各フィールドのパリティが生成さ
れて、8個のECCCCピットB、C,D、E、F、G
、Hが供給される0例えば、ECCCCピット第1フイ
ールドのパリティを表し、ビットBは第2フイールドの
パリティを表す(以下同様)、シたがってMは40、D
は32となる。
本発明の良好な実施例では、奇数パリティが使用される
ものと仮定する。すなわち、1度コード化されると、連
関するECCビットを含む各フィールドは、奇数個の1
(すなわち活動化されたレベル)を含むようになる。
このコードの有利な特徴は、それが透過性でなく、した
がって1度コード化さ九反転されると。
40ビツト・ワードは反転されたエラー・シンドローム
をもたらす、このエラー・シンドロームは、ワードの読
み取り後にECCビットをそれと対応するデータ・フィ
ールドと比較して検査することによッテ生成される、A
1、B2、c3、B4、B5.B6、G7、H8の8ビ
ツト構成がら成るものである。すべてのECCビットが
正しいときは、すべてがu O”のシンドロームが生成
される。
3個のビットが“1”であるエラー・シンドロームは、
そのワードが1ビツト・エラーを含むことを示す0例え
ばビットA1.’B2、B5が“′1″であるエラー・
シンドロームは、バイト2のビット4が誤っていること
を示す、偶数である2、4または6個のビットが“1″
であるエラー・シンドロームは、そのワードが2ビツト
・エラーを含むことを示す、下記の第2表を見るとわか
るように、40ビツト・ワード内の可能な780通りの
2ビツト・エラーの組合せによって与えられるすべての
シンドロームは“1”であるビットを偶数11含むが、
8個のビットが誤゛まっているケースにぶつかることは
なく、2,4、または6ビツトの組合せしか生じない。
第2表は、40ビツト・ワード内の780通りの2ビツ
ト・エラーの組合せによって生成されるシンドロームお
よび各シンドロームの発生数を表したものである。
ψ σ a)の啼Co(O啼ψ−■Φ寸■Φ啼ロ寸のぐ寸1CO
11cOa)Coco(OQqIロー豐■wwwwコ 
ζC) 雫日−w 1…−(にコ (に) (に) 1
喝−11−1日−(に) リ (に) 1日−ζに) 
寸 寸 愕ミー 雫4− 〇先に説明したように8個の
ビットが“1”であるケースは使用されない。
ECCビットは関連された次のような12ビツト・フィ
ールド。
0001010100011←パリテイ・ビットが反転
されると5次の構成を与える。
111010101110 0←不良パリテイしたがっ
て1反転後は1ビツト・エラーは、3個ではなくて5個
のビットが“1″であるエラー・シンドロームによって
示される。
メモリからあるワードが読み取られたときに生成される
エラー・シンドロームは、そのワードが真の極性で記憶
されているかそれとも反転された極性で記憶されている
かを示し、誤まったビットを検出し訂正するのに次のよ
うにして使用される。
すべてが“0”のシンドロームは、そのワードが正しく
、真の極性で記憶されていることを示す。
すべてが“1”のシンドロームは、そのワードが正しく
1反転された極性で記憶されていることを示す。
3個のビットが“1″であるシンドロームは、そのワー
ドが真の極性で記憶され、1つの1ビツト・エラーを含
み、その位置が検出され、したがってそのビットが反転
によって訂正できることを示す・ 5個のビットが111”であるシンドロームは、そのワ
ードが反転された極性で記憶され、1つの1ビツト・エ
ラーを含み、その位置が検出され、したがってそのビッ
トが反転によって訂正できることを示す。
NまたはO以外の偶数個のビットが1”であるシンドロ
ームは、訂正できない1個の2ビツト・エラーがあるこ
とを示す、2ビツト・エラーを含むワードを反転すると
、所与の条件下で2個のハード・エラーがマスクされる
ことがある。このことは、そのワード中の2つの記憶位
置が0または1でスタックされていると仮定することに
よって例示できる。
たとえば、2つの記憶位置が両方ともゼロ(OO)にス
タックされているとすると、 (i)記憶すべきパターンがOOなら、このパターンは
上記ハードクランプと一致するからエラーなしであり。
(…)記憶すべきパターンが01または10なら。
一方のビットが上記ハードクランプと一致するから、1
ビットエラーであり、 (■)記憶すべきパターン11なら、このパターンは上
記ハードクランプと全く一致しないから。
2ビットエラーとなる。
2つの記憶位置が“11”または“01”または“10
”でスタックされるときも、これと同様である。
最後のケースにぶつかった場合、パターンは反転された
極性で記憶され、そのアドレス内容が更新されない限り
、この特定のワードについて2ビツト・エラーがマスク
される。
第1図の左側は、以下の各ステップからなる書き込みオ
ペレーションの流れ図を示したものである。
ステップI−W:関連するECCビットとともにデータ
・ビットが、アドレスされたワードロケーションに記憶
される。
ステップn−wニアドレスされたワードロケーションか
ら書き込まれたパターンを読み戻すことからなる。読み
取り検査が遂行される。
ステップm−w:エラー・シンドロームが分析され、エ
ラーがない場合または1個の1ビツト・エラーがある場
合には書込みオペレーションが終了する。
ステップIV−W:2ビット・エラーが検出された場合
はこのステップに入る。アドレスされたワードロケーシ
ョンに反転されたパターンが書き込まれ、したがってそ
こで何らのオペレーションが遂行されない限りそのメモ
リロケーションにそのワードが反転された極性で記憶さ
れる。
第1図の右側は、以下の各ステップからなる読み取りオ
ペレーションの流れ図を示したものである。
ステップI−Rニアドレスされたワードがメモリから読
み取られる。
ステップII−R:エラー・シンドロームが生成され検
査される。それが1ビツト・エラーを示す場合は、エラ
ーを含むビットが訂正され、エラー・シンドロームがそ
のワードが反転された極性で記憶されたことを示すかそ
れとも真の極性で記憶されたことを示すかに応じて、訂
正されたワードは反転されてまたは反転されずにこのワ
ードを使用するマシン(プロセッサ等)に送られる。エ
ラー・シンドロームがエラーのないことを示す場合、エ
ラー・シンドロームがそのワードが反転された極性で記
憶されているかそれとも真の極性で記憶されているかに
応じて、読み取られたワードは反転されてまたは反転さ
れずにプロセッサ等に送られる。
ステップIII −R:2ビツト・エラーが検出された
場合、このステップに入る。読み取られたワードは、反
転された極性でメモリに再書き込みされる。これが起こ
るのは次の場合である。
−直前のコード化以降に第2のハード・エラーが発生し
た。
一マスクされていないハード・エラーが存在するときに
、ソフト・エラーが発生した。
−直前のコード化以降に2つのハード・エラーが発生し
た。
ステップIV−R:こうして反転されたワードが読み取
られる。
ステップV−RニステップIV−Rで読み取られたワー
ドのエラー・シンドロームが生成され検査される。
それが1ビツト・エラーを示す場合、誤りのあるビット
が訂正され、エラー・シンドロームがそのワードが反転
された極性で記憶されたかそれとも真の極性で記憶され
たかに応じて、訂正されたワードは反転されてまたは反
転されずに、プロセッサ等に送られる。エラー・シンド
ロームがエラーのないことを示す場合、エラー・シンド
ロームがそのワードが反転された極性で記憶されてい名
かそれとも真の極性で記憶されているかに応じて、読み
取られたワードは反転されてまたは反転されずにプロセ
ッサ等に送られる。
それがさらに2ビツト・エラーを示すときは、訂正不能
なエラー状態であることを意味すので。
訂正不能エラー状況を報告する。したがってエラー訂正
は機能しない。
これが起こるのは、2つのハード・エラー(そのうちの
1つはマスクされている)と直前のコード化以降に発生
したソフト・エラーとが同時に存在する場合である。こ
の場合は反転後にもなお2つのエラーがある。
したがって、本発明にもとづく方捧は、以下の機能を有
する。
一単一ハード・エラーは必ず訂正される。
−2つのハード・エラーは必ず訂正される。
−1つのソフト・エラーおよび1つのハード・エラーは
必ず訂正される。
−1つのソフト・エラーは必ず訂正される。
−1つのソフト・エラーおよび2つのハード・エラーか
らなるエラー状態の50%が訂正される。
−2つのソフト・エラーは決して訂正されない。
ソフト・エラーを一掃するためのスクラビング・ルーチ
ンは、メモリの待機中にプロセッサの制御下で実行すべ
きである。ワードは再補数化されないので、正しいパタ
ーンがプロセッサに送られるものの、ソフト・エラーは
除去されない。
以上に説明したコード規則を満たすなら、この方法を任
意のビット長のワードに関するエラー訂正および検出に
拡張することができる。すなわち。
エラー・シンドロームは次のような偶数であるN個のビ
ットを含む。
ECCビットを生成するために調べられるワード・フィ
ールドも偶数個のビットを含む。
真の極性で記憶されたワード中の1ビツト・エラーは第
1の値(本発明の良好な実施例ではパ1”である)にあ
るn1個のビットと、上記第1の値にある02個のビッ
トによって示される。ただし。
nl+n2=Nであり、nlとn2は異なる数でどちら
も奇数である。
真の極性または反転された極性で記憶されたワード中の
2ビツト・エラーは、第1の値にあるNおよびゼロ以外
の偶数個のビットを含むエラー・シンドロームによって
示される。
第2図は1本発明にもとづく方法を実施するために使用
されるエラー訂正機構のブロック図を表すものである。
メモリ1は、メモリコントローラ3およびデータ入力レ
ジスタ5によって選択されるワードロケーションで、書
き込みまたは読み取ることができる。メモリコントロー
ラ3は、母線7上にワード・アドレスを出し1選択され
たワードをメモリ1に書き込みまたは選択されたワード
の内容を読み取ってデータ出力レジスタ12に転送する
ための読み取りコマンドまたは書き込みコマンドをl5
19に出す、このような構成は通常のものなので詳しい
説明は省略する。
エラー訂正・検出機構は、8個のパリティ・チェッカP
CIないしPCBを含んでいる。これらのパリティ・チ
ェッカはそれぞれ1つのデータ・ビット・フィールド1
ないし8および関連するECCCCピットいしHを受は
取る。パリティ・チェッカは、その真数出力端子Tで、
良好な実施例では検査されたビットのパリティが正しい
ときit O”レベルとなる信号を生成する。パリティ
・チェッカの補数出力端子■では1反転されたレベルが
生成される。逆にパリティが正しくないときは、パリテ
ィ・チェッカはその真数出力端子で′1”レベルを生成
し、補数出力端子で″0′″レベルを生成する。このよ
うにして、パリティ・チェッカの真数出力端子でエラー
・シンドロームが生成される。
論理回路14は、パリティ・チェッカPCIないしPC
Bの真数出力と補数出力を受は取る。これは、その出力
母線16上で訂正制御信号を生成し、読み取られたワー
ドの各ビット毎に1つの訂正制御信号を生成させる。1
ビツト・エラーが検出された場合、すなわち記憶されて
いるワードの極性に応じてエラー・シンドロームの3個
または5個のビットが′″1”である場合、訂正制御信
号が母線16の1本の線上で活動化され、その結果第1
表に示したHマトリックスにもとづいてエラー・シンド
ローム中の3個または5個のビットが“1”であること
によって示されるエラー・ビットが訂正される。
データ出力レジスタ12に含まれる読み取られたワード
が、XOR回路のアセンブリ18に送られる。このアセ
ンブリ中の各XOR回路は、その第1の入力端子で40
ビツト・ワードの1ビツトを受は取り、第2入力端子で
第1入力端子に印加されたビットを訂正するための訂正
制御信号を母線16から受は取る。XOR回路の第2入
力端子のエラー訂正信号が活動状態(ハイ・レベル)の
とき、このXOR回路の出力信号のレベルは、その第1
入力端子の信号レベルを反転したものとなる。こうして
、1ビツト・エラーが検出された場合、XOR回路アセ
ンブリ18の出力端子は訂正済みの読み取りワードを供
給する。
論理回路14は、線20上に反転制御信号を出力する。
アドレスされたロケーションがそのワードの反転された
値を含む場合、この信号は活動レベル(ハイ・レベル)
にセットされる。XOR回路アセンブリ18の出力が、
第2のXOR回路アセンブリ22中のXOR回路の第1
の入力端子に送られ1反転制御信号がそれらの第2入力
端子に送られて、エラー・シンドロームか5個または8
個の1″を含む場合、読み取られたワードを反転させる
。XORアセンブリ22の出力は母線24を経てプロセ
ッサに伝送され、メモリコントローラ3からのデータ作
動可能線25が活動状態のとき、すなわち2ビツト・エ
ラー状況が23を経てメモリコントローラ3に報告され
なかったとき。
読み取られた正しいワードとして使用される。アセンブ
リ22の出力もメモリコントローラ3に印加されて、反
転されたビット・パターンがメモリ1に再書き込みされ
、第1図に関して説明したステップ■−Wまたはステッ
プm−Rが遂行される。
論理回路14は、線23上に2ビツト・エラーが検出さ
れていることを示す信号を出す、この信号は、エラー・
シンドロームが1′1”にあるビットを偶数である2、
4または6個含むとき、活動レベルになる。この2ビツ
ト・エラー指示信号がメモリコントローラ3に送られて
、対応するメモリロケーションに反転されたビット値で
再書き込みさせ、またはエラー訂正が機能しないという
ことを示す。
第3図は、良好な実施例で使用できる特定の論理回路1
4を表すものである。それぞれECCCCピットいしH
を含むフィールド1ないし8から生成される、エラー・
シンドローム・ビットAl。
B2、C3,B4.H5、H6、G7、H8はパリティ
・チェッカの真数出力端子T1ないしT8に出力され、
それらの補数出力は補数出力11ないしH8に出力され
る。
31のようなNANDゲート構成を40個含むアセンブ
リ30が、特定の真数出力端子T1ないしT8および補
数出力端チェ1ないしH8に適切に接続され、母線16
の線上に訂正制御信号を出力する。ここでは、アセンブ
リ30中でバイト1のビット7の訂正制御信号を生成で
きるNANDゲート構成31のみが示しである。他のN
ANDゲート構成も同様であり、パリティ・チェッカP
CIないしPCBの適切な出力端子に接続され。
第1表に示したHマトリックスにもとづいてエラー・シ
ンドローム・ビットを生成する。
各NANDゲート構成31は、3個のNANDゲート3
3.35.36を含んでいる。
NANDゲート33は出力端子11.T2、T3.14
、H5、H6,H7、T8に接続されている。したがっ
て、そのワードが真の極性で記憶され、バイト1のビッ
ト7が誤っている場合、NANDゲート33の出力端子
の信号レベルはロー・レベルである。バイト1のビット
7がそのワード中の他のビット同様に正しい場合は、N
ANDゲート33の出力はハイ・レベルになる。2個以
上のビットが誤まっている場合は、NANDゲート33
の出力もハイ・レベルとなる。そのワードが反転された
極性で記憶されているときは、NANDゲート33の出
力は全ての場合においてハイ・レベルとなる。
NANDゲート35は、パリティ・チェッカPC工ない
しPCBの出力端子T1、工2、H3゜T4.T5.T
6、T7、H8に接続されている。
したがって、そのワードが反転された極性で記憶されて
おり、バイト1のビット7が誤まっている場合、NAN
Dゲート35の出力端子の信号レベルはロー・レベルで
ある。バイト1のビット7がそのワード中の他のビット
と同様に正しい場合、NANDゲートの出力はハイ・レ
ベルになる。2個以上のビットが誤まっている場合は、
NANDゲート35の出力もハイ・レベルになる。その
ワードが真の極性で記憶されているときは、NANDゲ
ート35の出力は全ての場合においてハイ・レベルとな
る。
NANDゲート33および35の出力端子はNANDゲ
ート36に接続されている。このNANDゲート36は
その出力端子で反転制御信号を生成する。この信号はバ
イト1のビット7が誤まっているとき活動状態であるハ
イ・レベルとなる。
他のすべての場合には、この信号は非活動状態のロー・
レベルとなる。
NANDゲート38は、パリティ・チェッカの出力端子
T1、T2、T3、T4、T5、T6゜T7、T8に接
続されて−おり、したがってエラー・シンドロームがす
べて111 ITのときは(すなわち読み取られるワー
ドを反転すべき場合)、このゲートの出力レベルはロー
・レベルとなる。
NANDゲート40の入力端子は、アセンブリ30の各
回路中のNANDゲート35の出力端子およびNAND
ゲート38の出力端子およびメモリコントローラ3から
の線26に接続されており、その出力端子に反転制御信
号を生成する。この信号は、NANDゲート38.35
の出力レベルがロー・レベルのときハイ・レベルとなり
、XORアセンブリ22によってプロセッサに送られる
ワードの反転を制御する。線26はロー・レベルのとき
活動状態となり、読み取られたパターンをアセンブリ2
2によって反転させてメモリコントローラ3に転送し、
第1図に関して説明したように書き込みオペレーション
または読み取りオペレーションのステップ■−■または
ステップIII−Rを遂行するため、メモリ1に再書き
込みさせる。
2ビツト・エラー状況は、NANDゲート38.42.
44およびパリティ・チェッカ46によって生成される
。NANDゲート42の入力端子は、パリティ・チェッ
カPCIないしPCBの補数出力端子11ないしI8に
接続されている。したがって、エラー・シンドロームが
すべて′0”のとき、NANDゲート42の出力はロー
・レベルであり、少くとも1個の1”ビットを含むとき
はハイ・レベルとなる。
パリティ・チェッカ46は、エラー・シンドロームが“
1”にあるビットを偶数個含むときハイ・レベルになる
出力信号を生成する。NANDゲート44の入力端子は
、NANDゲート42.38の出力端子およびパリティ
・チェッカ46の出力端子に接続されている。したがっ
て、NANDゲート44は、下記の条件が充たされると
き活動状態ロー・レベルの出力信号を生成する。
(a)エラー・シンドローム中の偶数個のビット″1”
である。
(b)  “0″であるビットの数が8ではない。
(C)  “1”であるビットの数が8ではない。
上記の条件(b)および(c)は、エラーがないことを
示す。
2ビツト・エラー状況は、線23上を介してメモリ3に
報告される。線23はエラー訂正プロセスが機能しない
ことを示すか又は線26を活動化することによって反転
極性でのワードの再書き込みを制御するかを示すのに使
用される。エラー訂正プロセスが機能しない場合(すな
わち訂正不能エラー状況が報告される場合)は、第2図
のデータ作動可能線25が非活動状態になり、プロセッ
サは送られてきたデータ・ビットを無視する。
F0発明の詳細 な説明したように本発明によれば、データが反転さ九て
記憶さ・れているかまたは反転されないで記憶されてい
るかを検査する必要がないので、従来に比べて効率よく
メモリを利用することができるようになる。
【図面の簡単な説明】
第1図は、本発明の方法にもとづ〈実施例において遂行
される書き込みオペレーションおよび読み取りオペレー
ションを説明する流れ図、第2図は、本発明を実現する
エラー訂正機構の実施例を示す図、 第3図は、第2図の論理回路14の詳細を示す図である
。 出願人  インターナショナル・ビジネス・マシーンズ
Φコーポレーション 代理人  弁理士  頓  宮  孝  −(外1名) 詭取り7番仄みオペレーション 第1図

Claims (1)

  1. 【特許請求の範囲】 N個(ただしNは偶数)のECCビットを含むワードか
    らNビットのエラーシンドロームが生成され、該エラー
    シンドロームは1ビットエラーを示すのに第1の値にあ
    るn1個のビットを含むかまたは2ビットエラーを示す
    のにゼロまたはN以外の偶数個のビットを含み、前記n
    1が奇数であるようなメモリにおけるエラー訂正方法で
    あつて、(a)アドレスされたワードを読み取るステッ
    プと、(b)エラーシンドロームを生成するステップと
    、(c)読み取られたワードがエラーを含まないかまた
    は1ビットエラーを含むということをエラーシンドロー
    ムが示す場合は読み取りオペレーションを終了して、 (イ)エラーシンドロームが前記第1の値にあるビット
    を含まないときは何ら処理をせず、(ロ)エラーシンド
    ロームが前記第1の値にあるビットをN個含むときは読
    み取られたワードを反転し、 (ハ)エラーシンドロームが前記第1の値にあるビット
    をn1個含むときは読み取られたワードを訂正し、 (ニ)エラーシンドロームが前記第1の値にあるビット
    を(N−n1)個含むときは読み取られたワードを訂正
    しおよび反転する、 ステップと、 (d)エラーシンドロームが2ビットエラーを示す場合
    は読み取られたワードを反転して再書き込みするステッ
    プと、 (e)反転されたワードを読み取つてそのエラーシンド
    ロームを生成するステップと、 (f)ステップ(e)で生成されたエラーシンドローム
    が2ビットエラーを示す場合は訂正不能エラー状況を報
    告するステップと、 (g)ステップ(e)で生成されたエラーシンドローム
    がエラーなしまたは1ビットエラーを示す場合は読み取
    りオペレーションを終了して、 (イ)エラーシンドロームが前記第1の値にあるビット
    を含まないときは何ら処理をせず、(ロ)エラーシンド
    ロームが前記第1の値にあるビットをN個含むときは読
    み取られたワードを反転し、 (ハ)エラーシンドロームが前記第1の値にあるビット
    をn1個含むときは読み取られたワードを訂正し、 (ニ)エラーシンドロームが前記第1の値にあるビット
    を(N−n1)個含むときは読み取られたワードを訂正
    しおよび反転する、 ステップと、 を遂行することによつてメモリからワードを読み取るよ
    うにしたことを特徴とするエラー訂正方法。
JP60231467A 1984-12-28 1985-10-18 メモリにおけるエラ−訂正方法 Granted JPS61157959A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP84430046.7 1984-12-28
EP84430046A EP0186719B1 (en) 1984-12-28 1984-12-28 Device for correcting errors in memories

Publications (2)

Publication Number Publication Date
JPS61157959A true JPS61157959A (ja) 1986-07-17
JPH0260013B2 JPH0260013B2 (ja) 1990-12-14

Family

ID=8192957

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60231467A Granted JPS61157959A (ja) 1984-12-28 1985-10-18 メモリにおけるエラ−訂正方法

Country Status (4)

Country Link
US (1) US4712216A (ja)
EP (1) EP0186719B1 (ja)
JP (1) JPS61157959A (ja)
DE (1) DE3482509D1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007522590A (ja) * 2004-02-27 2007-08-09 インテル・コーポレーション ブロック・アドレスの可能な大容量ストレージ・システムのためのインターフェイス

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4937831A (en) * 1986-03-05 1990-06-26 Canon Kabushiki Kaisha Data processing apparatus for a camera
JPS62251949A (ja) * 1986-04-25 1987-11-02 Mitsubishi Electric Corp 記憶装置の誤り訂正方法
US4852100A (en) * 1986-10-17 1989-07-25 Amdahl Corporation Error detection and correction scheme for main storage unit
JPS63200239A (ja) * 1987-02-14 1988-08-18 Victor Co Of Japan Ltd 誤り訂正方式
EP0339166B1 (en) * 1988-04-29 1993-07-07 International Business Machines Corporation Extended errors correcting device having single package error correcting and double package error detecting codes
US4964130A (en) * 1988-12-21 1990-10-16 Bull Hn Information Systems Inc. System for determining status of errors in a memory subsystem
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
CA2002361C (en) * 1989-03-10 1993-12-21 Robert M. Blake Fault tolerant computer memory systems and components employing dual level error correction and detection with disablement feature
ES2076249T3 (es) * 1990-04-27 1995-11-01 Siemens Ag Procedimiento para ensayar una unidad direccionable minima de una ram con respecto a errores binarios que existen por encima de un numero determinado.
AU660011B2 (en) * 1991-04-26 1995-06-08 Nec Corporation Method and system for fault coverage testing memory
US5313475A (en) * 1991-10-31 1994-05-17 International Business Machines Corporation ECC function with self-contained high performance partial write or read/modify/write and parity look-ahead interface scheme
US5539754A (en) * 1992-10-05 1996-07-23 Hewlett-Packard Company Method and circuitry for generating syndrome bits within an error correction and detection circuit
US5771541A (en) * 1994-11-03 1998-06-30 MTM--Modern Textile Machines Ltd. Apparatus for cleaning fibers
US5822339A (en) * 1996-05-30 1998-10-13 Rockwell International Data decoder and method to correct inversions or phase ambiguity for M-ary transmitted data
US6255970B1 (en) * 1997-10-10 2001-07-03 Photobit Corporation Correction of missing codes nonlinearity in A to D converters
US6519735B1 (en) * 1998-12-22 2003-02-11 Intel Corporation Method and apparatus for detecting errors in data output from memory and a device failure in the memory
US7166086B2 (en) 2002-08-29 2007-01-23 Becton, Dickinson And Company Substance delivery via a rotating microabrading surface
US7048815B2 (en) * 2002-11-08 2006-05-23 Ues, Inc. Method of making a high strength aluminum alloy composition
US7272773B2 (en) * 2003-04-17 2007-09-18 International Business Machines Corporation Cache directory array recovery mechanism to support special ECC stuck bit matrix
US7430167B2 (en) * 2003-09-18 2008-09-30 International Business Machines Corporation Method and system to enable an adaptive load balancing in a parallel packet switch
JP4889343B2 (ja) * 2006-03-31 2012-03-07 パナソニック株式会社 半導体記憶装置
US9251882B2 (en) 2011-09-16 2016-02-02 Avalanche Technology, Inc. Magnetic random access memory with dynamic random access memory (DRAM)-like interface
US9658780B2 (en) 2011-09-16 2017-05-23 Avalanche Technology, Inc. Magnetic random access memory with dynamic random access memory (DRAM)-like interface
US8751905B2 (en) 2011-09-16 2014-06-10 Avalanche Technology, Inc. Memory with on-chip error correction
TWI486961B (zh) * 2013-01-16 2015-06-01 Univ Nat Taiwan Science Tech 非揮發性記憶體的故障遮蔽方法
JP2018074545A (ja) * 2016-11-04 2018-05-10 富士通株式会社 データ処理システム及びデータ処理装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3623155A (en) * 1969-12-24 1971-11-23 Ibm Optimum apparatus and method for check bit generation and error detection, location and correction
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 株式会社日立製作所 エラ−訂正・検出方式
US4319357A (en) * 1979-12-14 1982-03-09 International Business Machines Corp. Double error correction using single error correcting code
US4334309A (en) * 1980-06-30 1982-06-08 International Business Machines Corporation Error correcting code system
US4417339A (en) * 1981-06-22 1983-11-22 Burroughs Corporation Fault tolerant error correction circuit
DE3484455D1 (de) * 1983-09-06 1991-05-23 Toshiba Kawasaki Kk Fehlerkorrekturschaltung.
US4604751A (en) * 1984-06-29 1986-08-05 International Business Machines Corporation Error logging memory system for avoiding miscorrection of triple errors

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007522590A (ja) * 2004-02-27 2007-08-09 インテル・コーポレーション ブロック・アドレスの可能な大容量ストレージ・システムのためのインターフェイス

Also Published As

Publication number Publication date
EP0186719A1 (en) 1986-07-09
US4712216A (en) 1987-12-08
JPH0260013B2 (ja) 1990-12-14
EP0186719B1 (en) 1990-06-13
DE3482509D1 (de) 1990-07-19

Similar Documents

Publication Publication Date Title
JPS61157959A (ja) メモリにおけるエラ−訂正方法
EP1160987B1 (en) Method and apparatus for verifying error correcting codes
US4661955A (en) Extended error correction for package error correction codes
US5313475A (en) ECC function with self-contained high performance partial write or read/modify/write and parity look-ahead interface scheme
US9646716B2 (en) Circuit arrangement and method with modified error syndrome for error detection of permanent errors in memories
JP4071940B2 (ja) メモリ設計のための共有式誤り訂正
US5745508A (en) Error-detection code
US7587658B1 (en) ECC encoding for uncorrectable errors
US8612828B2 (en) Error correction mechanisms for 8-bit memory devices
JPS6061837A (ja) エラ−訂正装置
US4961193A (en) Extended errors correcting device having single package error correcting and double package error detecting codes
JPS63115239A (ja) エラ−検査訂正回路
EP0147336A2 (en) Error correcting and detecting system
JPH05216698A (ja) 改良されたエラー検出および訂正回路
RU2297034C2 (ru) Отказоустойчивое устройство хранения информации
JP2820124B2 (ja) 主記憶装置
JPH06301604A (ja) 記憶再生システム
RU2297035C2 (ru) Отказоустойчивое запоминающее устройство
RU2297032C2 (ru) Самокорректирующееся запоминающее устройство
JPH01223546A (ja) 記憶装置
RU44201U1 (ru) Отказоустойчивое запоминающее устройство
JPS6232826B2 (ja)
JPS59201296A (ja) Ecc付メモリの誤り訂正チエツク方式
JPS62221756A (ja) 記憶装置
JPS63279348A (ja) 記憶装置のチエツク方式