JPH05210595A - メモリシステム - Google Patents

メモリシステム

Info

Publication number
JPH05210595A
JPH05210595A JP4189006A JP18900692A JPH05210595A JP H05210595 A JPH05210595 A JP H05210595A JP 4189006 A JP4189006 A JP 4189006A JP 18900692 A JP18900692 A JP 18900692A JP H05210595 A JPH05210595 A JP H05210595A
Authority
JP
Japan
Prior art keywords
memory
chip
data word
bit
uncorrected data
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
JP4189006A
Other languages
English (en)
Inventor
Russell W Lavallee
ラッセル・ウィリアム・ラバリー
Donald G O'brien
ドナルド・ジョージ・オブライエン
Michael Rubino
マイケル・ラビノ
William W Shen
ウィリアム・ウー・シェン
George C Wellwood
ジョージ・チャールズ・ウェルウッド
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 JPH05210595A publication Critical patent/JPH05210595A/ja
Pending 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0721Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU]
    • G06F11/0724Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU] in a multiprocessor or a multi-core unit
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/076Error or fault detection not based on redundancy by exceeding limits by exceeding a count or rate limit, e.g. word- or bit count limit
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/1048Adding 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/106Correcting systematically all correctable errors, i.e. scrubbing
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/88Monitoring involving counting

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)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Abstract

(57)【要約】 【目的】ECCデータワードのかなり多数の欠陥ビット
位置を動的に識別可能にする。 【構成】このメモリシステムは、ECCデータワード内
の各データビットのための記録カウンタを保持する。そ
の一つのカウンタが所定しきい値を超えてインクリメン
トされる時に、そのシステムが故障ビット位置を取り替
えるために、スペアリングを呼び出す。欠陥チップを取
り替えるように、予備チップが特別に設計されている時
では、そのシステムは、ビットステアリングが呼び出さ
れた後でさえも、予備チップと並列に欠陥チップへの書
込みを継続する。これにより、取り替えチップが偶然に
オフラインとなった場合に、取り替えチップ上のデータ
の信頼性を高める。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、コンピュータメモリ
記憶装置システム、特に、スクラビングおよびスペアリ
ングを使用する記憶装置システムに関する。
【0002】
【従来の技術及び発明が解決しようとする課題】従来で
は、ソフト(一時的)エラー及び/又はハード(非一時
的)エラーによって生じた欠陥データワードビット位置
を回復可能な半導体メモリの種々の装置が提案されてい
る。一例として、データワードは、72ビット位置から
なり、その64ビット位置がデータを記憶し、8ビット
位置がエラー訂正検査バイトのために使用される。メモ
リと関連する適切なエラー訂正システムによって処理さ
れる時に、このエラー訂正検査バイトは、ワード中の何
れか一つのビット位置における単一ビットエラーを自動
的に訂正することができる。大部分のシステムは、複数
ビットエラーを検出することもでき、一般的に正しいデ
ータビットを誤って訂正することがないように、符号の
見地から設計されている。
【0003】従来技術は、二重ビットエラーの訂正のた
めのシステムをも含む。論文「多重エラー訂正」( MUL
TIPLE ERROR CORRECTION")(IBM TDB、VOL.13,N
o.8,JAN 1971,Pg.2190) には、自動的に多重ビットエラ
ーを訂正するための回路が記載されている。二重エラー
が検出される時に、メモリからフェッチされたワードが
エラーレジスタへ読み込まれ、また、そのフェッチされ
たワードと相補的なものが元のメモリロケーションに書
き戻される。そして、そのフェッチされたワードと相補
的なものについてフェッチサイクルが実行される。その
ワード及びその相補的なものがエクスクルーシブORゲ
ートにおいて比較され、故障ビットのロケーションが識
別される。この情報は、元のフェッチされたワード中の
正しくないビットを補完するのに利用される。故障ビッ
トについてのこの情報は、エラーのアドレス位置ととも
に記憶もされる。エラーが後で検出され、以前のエラー
のアドレスと一致するアドレスが存在する時に、新たな
エラー中の故障ビットが自動的に訂正される。相補/再
相補型アルゴリズムと共にエラー訂正符号(ECC)検
査シンドロームを使用することによって二重ビットエラ
ーを訂正する他の方式は、論文「多重メモリエラー訂
正」( MULTIPLE MEMORY ERROR CORRECTION")(IBM
TDB、VOL.24,No.6,NOV 1981,Pg.2690) に記載され
ている。
【0004】リフレッシュサイクル中でメモリアレイに
生じ易いソフトエラーを訂正するために、多くの従来シ
ステムは、「スクラビング(scrubbing)」として知られ
ている技術を実施している。スクラビングサイクルの
間、アレイ中の各メモリロケーションは、順次アクセス
され、その中のデータが読出される。典型的には、EC
Cロジックは、各データワードを検査し、単一ビットエ
ラーを訂正する。そして、データがメモリに再記憶され
る。若し、単一ビットエラーがソフトエラーに関連して
いるならば、この再記憶動作は、ソフト故障である悪い
データを訂正後のデータに置き換えるものである。
【0005】従来技術は、半導体メモリ中のある種の故
障状態は、データビットが故障位置から読出される時
に、基本的にそれは常に2進値の一方あるいは他方であ
るというデータ依存性を認識している。このようなエラ
ーは、一般にハードエラーと称されている。単一ビット
エラーがソフトエラーであるか、ハードエラーであるか
を決定するために、スクラビング中に作動されるメカニ
ズムは、論文「単一ビットメモリエラーの種類の決定す
るためのハードウエアメカニズム」( HARDWAREMECHANI
SM TO DETERMINE THE TYPE OF SINGLE BIT MEMORY ERRO
R")(IBM TDB、VOL.32,No.4B,SEP 1989,Pg.241)
に記載されている。
【0006】大抵の単一及び二重ビットハードエラー
は、ソフトエラーのために利用されているのと同一のエ
ラー訂正方法を使用して訂正されることができる。但
し、いくらかのハードエラーは、訂正不能である。元々
その位置に書込まれた値と異なる一つの2進値を最初の
欠陥ビット位置が含むのと同時に、ある他のビット位置
に、ハードあるいはソフトのランダムエラーが生じる時
のみに、訂正不能なエラーが発生する。「ハードエラ
ー」を有するデータワード中のビット位置は、結局、訂
正不能なエラーが生じる見込みが本質的に増大されてい
る。このようなデータワードは、常に少なくとも単一ビ
ットエラーを含むので、何らかの追加的なハードあるい
はソフトエラーの発生は、データワードが訂正不能とな
ることの原因となる。
【0007】ビット位置がハードエラーによって故障し
ている事例を処理するために、「スペアリング (sparin
g)」として知られるケイパビリティをいくつかの従来シ
ステムが備えている。スペアリング(ビットステリアリ
ング(steering)としても知られている)とは、取り替
えチップからのビットを欠陥ビット位置内へ論理的に操
舵し、効果的に欠陥ビット位置を取り替えることによっ
て、識別された欠陥ビット位置を取り替えることであ
る。一例として、米国特許第4,584,682号(Sh
ah他)では、同一デコーダによってアクセスされるビッ
ト位置における二つのエラーの協働の結果として訂正不
能なエラー状態が生じる時に、障害チップに代えて予備
チップを使用するためにアレイ置き換え方式が使用さ
れ、一方、ビット入れ換え装置は、異なるデコーダによ
ってアクセスされる位置でそれらが生じる時に、障害ビ
ットの協働を解除するために使用される。
【0008】論文「記憶装置モジュールの動的スペアリ
ング」( DYNAMIC SPARING OF STORAGE MODULES") (I
BM TDB、VOL.29,No.7,DEC 1986,pp.2828-2829)に
は、システムを中断せずに、動的に記憶装置モジュール
をスペアリングする方法が言及されている。この方法
は、予備モジュールによる取り替えばかりでなく、障害
記憶装置モジュールの検出をも含んでいる。メモリは、
唯一の記憶装置モジュールとメモリワードの各ビットが
関連するように、構成されるか、マッピングされてい
る。上述の論文の方法は、スクラビング(その検出段階
において記憶装置サブシステムから訂正可能なソフトエ
ラーを取り去るために使用される従来技術)の使用をあ
てにしている。スクラビング中、エラー訂正符号(EC
C)は、それが読出し、また、再書込む各ワードに関し
て、シンドローム(すなわち、データワードの正しさに
ついての情報を有するように符号化されている一連のビ
ット)を生成する。所定のスクラブパス中、単一ビット
エラー(SBE)発生のシンドロームは保持される。若
し、そのスクラブパス中、同一のシンドロームがN回以
上生じると、シンドロームで指示されたビットは、スペ
アリングのために識別される。次のスクラブパス中、当
該ビットは、旧いロケーションおよび予備ロケーション
の両者に戻して記憶される。このパスの終了で予備ビッ
トは使用へ切り替えられる。これによって、システムが
最小限の影響でもって、当該記憶装置を動作させ、使用
することができる。
【0009】上述のシステムは、メモリ信頼性の程度を
高めることができるが、未解決の多数の問題を残してい
る。例えば、単一のECCデータワード中で同時に2以
上のエラーが同時に生じる場合、上述のエラー訂正方法
の全ては、駄目になる。データワードが2重ビットエラ
ーよりも多い場合では、正しい結果が保証されない。さ
らに、同一のECCデータワード中で同時に2より多い
エラーが発生する場合では、エラーのビットロケーショ
ンがECCツリーから識別できず、従って、適切なタイ
ミングで故障ビット位置を入れ替える点で、スペアリン
グシステムのケイパビリティを制限する。このように、
スペアリングシステムがその実現のためにECCをあて
にしないこと、並びにECCデータワードの全てのビッ
ト中の永久データエラーを同時に識別できることが必要
である。
【0010】
【課題を解決するための手段】上述の見地から、この発
明の目的は、チップスペアリングプロセスの改良、すな
わち、ECCデータワード中のかなり多数の欠陥ビット
位置が動的に識別可能であり、特定の基準に達した時
に、コンピュータシステムのエンドユーザにとってトラ
ンスペアレントな方法で欠陥ビット位置がスペアリング
可能なものである。
【0011】好ましい実施例においては、各メモリチッ
プ上のハードエラー数を識別および記録することによっ
て、メモリ記憶装置システムが保全されるように、改良
されたスクラビングおよびスペアリングを有する記憶装
置システムが提供される。このシステムは、ECCデー
タワード中の各データビットのために記録カウンタを保
持する。カウンタの一つが所定しきい値を超えてインク
リメントされる時に、そのシステムは、スペアリングを
呼び出し、障害ビット位置を取り替える。予備チップが
欠陥チップを取り替えるために、特に設計されている時
に、そのシステムは、ビットステアリング(steering)が
呼び出された後でさえも、予備チップと並列に、欠陥チ
ップへの書込みを続ける。これは、偶然にオフラインに
なった場合に、予備チップ上のデータの信頼性を高める
のに役立つ。有利な点として、取り替えられるチップの
内容の連続的な更新によって、取り替えチップのための
部分的なバックアップとして、その機能しているメモリ
を使用することができる。
【0012】この発明の上述した目的、および他の目
的、態様、利点は、以下の図面を参照したこの発明の好
ましい実施例の詳細な記述から明らかであろう。
【0013】
【実施例】以下、この発明について図1〜図10を参照
して説明する。図1は、IBMEnterprise Systems Arc
hitecture/390(ESA/390)に適合する種類の
中央電子複合体(CEC)のブロック図である。従来の
ように、図1のCECは、3個の中央プロセッサ102
a〜102cを有している。各中央プロセッサ(CP)
は、それ自身の在来型の第1レベル高速バッファ(L
1)104a〜104cを有している。これらのL1
は、全CPにより共有されている第2レベル高速バッフ
ァ(L2)106に接続される。このL2 106は、
システムコントロールエレメント(SCE)118を通
して、主記憶装置としても知られる中央記憶装置108
へ接続される。一般的な用語「記憶装置」は、何れかの
レベルの高速バッファ(104a〜104cあるいは1
06)、中央記憶装置108自身、またはメモリのため
に使用される主記憶アレイ(MSA)内に存在している
データを指すのに使用される。
【0014】図1のCECは、相互接続通信エレメント
(ICE)110Aをも含む。これは、SCE118、
拡張記憶装置(ES)112およびチャンネルサブシス
テム110B間のデータ伝送および通信を制御する。I
CE110Aおよびチャンネルサブシステム110B
は、まとめてI/Oサブシステムと称される。電源オン
/オフおよびそのシステムを構成するようなシステムオ
ペレーションおよびサポート機能は、プロセッサ制御エ
レメント(PCE)116と称される支援プロセッサに
よって制御される。このPCEは、エラー回復中のシス
テムエレメントを支援するために使用される。
【0015】この発明は、図1のCEC環境内か、他の
コンピュータシステム環境内にある如何なる型式の半導
体記憶アレイに関連して使用されることができる。一例
として、この発明は図1のシステム中の中央記憶装置1
08に適用されるように記載される。
【0016】図2に例示されるように、中央記憶装置1
08は、1またはそれ以上の主記憶アレイ202を含
む。主記憶アレイ202は、ダイナミックランダムアク
セスメモリチップ(DRAM)のアレイからなる従来型
のものである。MSA毎のチップ行数は、構成依存であ
り、一般的にMSA毎に1あるいは2個のチップ行を有
する。
【0017】好ましい実施例では、2個の72ビットE
CCデータワード(データの144ビット4倍長語)の
形式で同時にデータを読出し/書込みする。主記憶アレ
イ202の読出し/書込みアクセスおよびアドレス指定
は、メモリコントローラ206からのコマンドに応答し
て動作する従来のアレイ制御ロジック204によって提
供される。通常、スクラブ動作は、他の記憶装置要求に
よってなされるいかなる物理アドレス変換をせずに、物
理アドレスを使用する。
【0018】メモリコントローラ206は、中央記憶装
置108に対するアクセスを開始するために、要求元に
よって使用される接続と制御信号を提供する。これらの
信号は、後述する機能および動作のメモリテスタ支援ハ
ードウエア(HAMT)208からの要求をサービスす
る。追加の接続207が従来のメモリへのアクセスを要
求する他の要求元(ICE110AあるいはL2 10
6のように)に役立つために設けられている。
【0019】MSA1 202はそれ自身の双方向デー
タバス212を通して選択的反転ロジック210の入力
に接続される。この選択反転ロジックはまた、フェッチ
バッファ(より詳細に後述する)からの第2のデータ入
力を有している。選択的反転ロジック210は、MSA
202あるいはフェッチバッファ214の何れかよりの
データを反転、あるいは非反転(真)形式で通過させる
ことができる。どの入力を選択すべきか、また、選択さ
れたMSAの出力を反転すべきかどうかの制御は、メモ
リコントローラ206からの信号によってなされる。残
りのMSA(MSA2〜MSA4)は、それら自身の選
択反転ロジック(その各々がフェッチバッファ214か
らの第2の入力を受信する)にそれぞれ同様に接続され
る。動作中では、スクラビングされているMSAからの
データのみが反転される。
【0020】選択反転ロジック210の出力はECCロ
ジック216に接続される。このECCロジックは、従
来周知の二重ビットエラー検出/単一ビットエラー訂正
のロジックである。このECCロジックは、各MSAの
ために、フェッチバッファ214からフィードバックさ
れたデータ用のデータ経路を有する2個の別個のECC
回路を有する。各ECCロジック216は、144ビッ
トの4倍長語について、二つの独立した72ビットのE
CCデータワードとして動作し、従って、2個の別個で
区別できる8ビットのECC(一つは、ECCデータワ
ード中の各64データビットのためである)が得られ
る。ECCロジック216は、メモリコントローラ20
6からの信号によって、イネーブルあるいはディスエー
ブル(エラー訂正オンあるいはオフ)されうる。なお、
明確とするために、MSA1と関連する選択反転ロジッ
ク210およびECCロジック216のみが図示されて
いる。MSA2〜MSA4も、同様に自身の選択反転ロ
ジックおよびECCロジックと同一のものに対して接続
される。これらは、MSA1を支援する同一のロジック
に関して述べたように動作する。以上のように、全てで
4個のECCロジックが存在し、それぞれがメモリコン
トローラ206によって別個に制御される。
【0021】4個のECCロジック216(MSAの各
々のために1個)がフェッチバッファ214に対して接
続される。このフェッチバッファは、従来型のもので、
選択されたMSA(メモリコントローラ206によって
アドレスされることにより)からの16個の4倍長語
(データの二線)のための一時的記憶装置を提供する。
フェッチバッファ214は、メモリコントローラ206
の制御の下で、ECCロジックからの4倍長語をラッチ
する。フェッチバッファ214の出力(4倍長語)は、
選択反転ロジック210への入力、並びに比較および計
数ロジック218の入力とされる。図1のシステムの構
成では、フェッチバッファ214は、中央記憶装置から
L2高速バッファへデータを供給するために、SCEに
よって共通に使用される(このL2バッファへの接続
は、明らかなため図示せず)。
【0022】フェッチバッファ214のための多くの動
作可能な他の実施例が存在する。例えば、一つの共通の
フェッチバッファが全MSAのために設けられることが
できる。また、要求をタンデムに処理するように、二つ
の同一のフェッチバッファが設けられることができる。
さらなる変形としては、各MSAに対して別個のフェッ
チバッファを設けても良い。少なくとも、フェッチバッ
ファ出力は、入力としてMSAのための選択反転ロジッ
クへ接続され、また、入力として比較および計数ロジッ
ク218へ接続される。
【0023】ECCロジック216の4倍長語出力およ
びMSA2〜MSA4に関連する残りの3個のECCロ
ジックのそれぞれからの4倍長語は、4:1マルチプレ
クサ(4:1MUX)220へ供給される。この4:1
MUX220は、ECCロジックからの4個の4倍長語
の選択された一つを比較および計数ロジック218へ接
続する。4倍長語の選択は、メモリコントローラ206
からの信号線の制御の下でなされる。
【0024】比較および計数ロジック218は、複数の
比較器222および複数のカウンタ224の二組の構成
要素からなる。比較器は、それぞれが4倍長語の各ビッ
トのための全てで144個の比較器からなる。各比較器
は、4:1MUX220により提供された4倍長語中の
単一ビット位置をフェッチバッファ214により提供さ
れたそのビット位置と比較するように接続される。すな
わち、比較器222は、4:1MUX220からの4倍
長語出力中の144ビット位置のそれぞれをフェッチバ
ッファ214の出力により提供された4倍長語中のその
ビット位置と比較し、その結果、144個の比較結果が
生じる。カウンタ224は、それぞれが10ビット幅プ
ラス1パリティビットである144個のカウンタからな
る。従って、144個のカウンタは、144ビット位置
の一つ毎に生じる故障の記録を可能にする。144個の
カウンタの各々は、4倍長語中の一つのビット位置を表
し、また、144個の比較器222の異なる一つからの
出力を受信するように接続される。
【0025】フェッチバッファ214からの4倍長語中
の対応するビット位置が4:1MUX220を通じて選
択された4倍長語中のそのビット位置と一致してないこ
とを接続された比較器が示す毎に、各カウンタがインク
リメントするようになされている。また、HAMT20
8の制御の下で、カウンタ224のそれぞれはシフトレ
ジスタとして読出しおよび書込み動作を行う。比較およ
び計数ロジック218の比較およびインクリメント機能
は、メモリコントローラ206(これは、この実施例で
は、スクラビングサイクル中でのみこれらの機能を可能
とする)によって、イネーブルおよびディスエーブルさ
れることができる。
【0026】メモリテスタ支援ハードウエア(HAM
T)208は、従来周知の種々のものの一つであるプロ
グラマブルメモリテスタである。従来のメモリテスタ
(記憶装置有効性テスタと称されることもある)は、例
えば、米国特許第4,342,084号明細書に記述さ
れている。少なくとも、図1のシステム構成では、HA
MTにより生成されたテスト/メモリアクセスプログラ
ムは、システムコンソールあるいはPCE116からの
コマンドワードの制御の下で選択され、かつ構成され
る。前述の実施例では、HAMT208はまた、スクラ
ビング動作のシーケンス化機能を行う。
【0027】チップスクラビング動作は、多数のビット
に影響を及ぼすチップ故障メカニズムが検出可能とされ
るように中央記憶装置108のソフト単一ビットエラー
を訂正するのに使用されると共に、ハードエラーを記録
するのにも使用され、さらに、取り替え基準を満たすな
らば、HAMTチップスペアリングロジックを呼び出す
ために使用される。
【0028】スクラブプロセスは、イニシャルマシーン
ロード(IML)時に、PCE116によって、周囲リ
セット型の埋め込みアレイにロードされるHAMT実行
制御ワード(HECW)によって制御される。スクラブ
HECWは、2個のチップの行開始アドレスの高次のア
ドレスバイトのそれぞれのための1バイトと、2個のチ
ップの行終了アドレスの高次のアドレスバイトのそれぞ
れのための1バイトとを含む。内部HAMTロジック
は、HECWレジスタが埋め込みアレイからロードされ
る時に、スクラブ動作のために、MSA IDを含む全
ての他のアレイ情報を供給する。PCEコンソールはま
た、カウンタ224のためのプログラム可能なエラーし
きい値と、スクラブサイクル間のプログラム可能な時間
間隔とを提供するようにプログラムされている。上述の
情報は、PCE116によってHAMT208に供給さ
れる。
【0029】他の二線をスクラブする時に達すると、埋
め込みアレイのHECWは、読出され、実行するため
に、HAMT HECWレジスタにロードされる。この
レジスタがロードされた後に、新たなチップ行アドレス
範囲の開始を示すトリガがセットされていないならば、
現アドレスは次の二線アドレスに増分される。
【0030】二線がスクラブされた後に、HECW現ア
ドレスは埋め込みアレイに戻され、次のスクラブ動作の
ために保持される。このプロセスは、一つのMSAのチ
ップ行アレイ範囲ごとに繰り返され、かつ、MSAごと
に繰り返される。メモリ全体がスクラブされると、アド
レス制御は循環し、再び継続する。プログラム可能なス
クラブ間隔は、全てのオンラインのメモリ記憶装置が約
4分でスクラブされるように、設定されている。
【0031】チップ行アドレス範囲内の最後の二線がス
クラブされた時に、HAMTは792アドバンス命令
(読出しおよび増分コマンド)を比較および計数ロジッ
ク218に送る。このアドバンス命令によって、144
個のハードエラーカウンタ224の内容が2つの単一ビ
ットシリアルバス上のHAMTに送られるようにする。
各バスは、72個のカウンタ群に接続され、それによっ
て、二つのカウンタの各々からの1ビットが同時に読出
されることが可能とされる。第1の72個のカウンタ群
は、他の72個のカウンタ群と同時に読出される。
【0032】ハードエラーカウンタの内容が読込まれて
いる時に、HAMTが正しいパリティを有するゼロをカ
ウンタへ送出する。HAMTが全てのカウンタに読込ん
だ後に、それらは、リセット状態にある。カウンタが読
み込まれている時に、HAMTが受信ビット数を計数す
る。全カウンタの読込みプロセスが完了すると、HAM
Tが後述の「スペアリング必要性」状態を検査する。
【0033】カウンタが完全に読込まれた時に、HAM
T208はカウンタ値をPCEレジスタ内にセットされ
たしきい値と比較する。カウンタ値がしきい値と等しい
か、しきい値より大きいならば、HAMT内部ビット
は、スペアリングが必要とされることを指示するように
セットされ、かつ、72個のカウンタ内のカウンタ位置
はまたHAMTによって記憶される。72個のカウンタ
の群毎にしきい値に等しいか、より大きい最初のカウン
タのみが記憶される。
【0034】図2のMSA202内のメモリカードのよ
り詳細な構成が図5に示される。この実施例において、
各MSAは、それぞれが144ビット4倍長語の72ビ
ットの記憶を取扱う二つのメモリカードからなる。各メ
モリカードは、複数個の従来型のダイナミックランダム
アクセスメモリチップ(DRAM)からなる。図5の実
施例では、DRAM502(1)〜502(N)および
506は、1メガ×4ビットのものである。このDRA
Mのそれぞれがビットフロー制御ロジック504(1)
〜504(N)、504(SP)に接続される。このビ
ットフロー制御ロジックは、各DRAMによって出力/
入力される各4ビットセットから1ビットを選択する。
ビットフロー制御ロジックおよびDRAMは、アレイ制
御ロジック204の制御の下で動作し、それによって、
アレイ中の各DRAMが4メガ×1ビットチップとして
動作するようになされる。図5のカード上に全部で73
個のDRAMチップが存在する。始めの72個のDRA
M502(1)〜502(N)は、フェッチされた4倍
長語中の144ビットのうちの72ビット(この72ビ
ットの最初のセットは、アドレスされたECCデータワ
ードの「偶数」と称される。)を提供する。ここで、よ
り多くのメモリを有する各カードを提供するために、チ
ップの付加的な行が追加しうることを理解されたい。予
備DRAMチップ506は、通常はオンラインのDRA
Mチップ502(1)〜502(N)と同一であって、
ビットフロー制御ロジック504(SP)に接続され
る。
【0035】通常オンラインのDRAMチップ502に
接続されるビットフロー制御ロジック504(1)〜5
04(N)のそれぞれは、対応する2:1選択マルチプ
レクサ508(1)〜508(N)に接続される。選択
マルチプレクサおよびビットフロー制御ロジックは、D
RAMに対してデータフローを授受可能で、本来的に双
方向である。2:1選択マルチプレクサの第2の入力
は、スペアDRAM506と関連するビットフロー制御
ロジック504(SP)の出力に対して共通に接続され
る。選択マルチプレクサ508(1)〜508(N)
は、デコーダ512およびアレイ制御ロジック204か
らの制御線514により制御される。デコーダ512
は、スペアIDレジスタ510へラッチされたスペアリ
ングベクトルを復号する。スペアIDレジスタ510が
ラッチされる時に、スペアリングベクトルによってデコ
ーダが故障ビット位置に関連する選択ロジックを付勢
(選択)するようになされる。スペアリングベクトルに
応答して、アレイ制御ロジック204は、選択ロジック
508(1)〜508(N)へ信号を送り、それによっ
て、これが3モード(「ヌルモード」、「ストアオンリ
ーモード」、「フルフェッチ/ストアモード」)の一つ
で動作するように付勢される。「ヌルモード」(スペア
リングが非活動状態)では、選択ロジックは、デコーダ
512の出力と無関係に、ビットステアリングを呼び出
さない。「ストアオンリーモード」では、デコーダ51
2によって選択ロジックが付勢され、記憶データ(記憶
されるべきデータ)が元(故障)のチップおよび予備チ
ップ506の両者に送られるようになされ、一方、フェ
ッチ動作時にデータは、元のチップからのみ供給され
る。「フルフェッチ/ストアモード」では、記憶動作時
にデータが元のチップおよび予備チップ506の両者に
送られ、一方、フェッチ動作は予備チップ506からの
み読出される。
【0036】MSA内の第2のメモリカードは、図5の
カードと同一であり、フェッチされた144ビット4倍
長語の「奇数」あるいは上位72ビットECCデータワ
ードを提供する。参照するために、72ビットの第1群
を記憶するメモリカードでスペアリングを制御するスペ
アリングベクトルを「偶数」スペアリングベクトルと称
する。72ビットの第2群を有するカードのためのスペ
アリングベクトルを「奇数」スペアリングベクトルと称
することにする。同様に、参照するために、72ビット
の第1群を記憶するメモリカードを「偶数」アドレスさ
れたメモリカードと呼び、一方、72ビットの第2群を
記憶するメモリカードを「奇数」アドレスされたメモリ
カードと呼ぶことにする。
【0037】スペアリングベクトルによって、予備チッ
プからのビットは故障位置に「ビット操縦」され、その
結果、データは、その予備チップから、その点からのみ
読出される。しかしながら、この発明の一実施例によれ
ば、データは、予備チップおよび取り替えられるチップ
の両者に対して書込まれ続ける。このことは、通常デー
タ書込み時(この場合は、データは、予備チップおよび
取り替えられるチップの両者に対して書込まれる)と、
スクラビング期間(この場合は、予備チップからデータ
が読出され、予備チップからのスクラビングされたデー
タは予備チップおよび取り替えチップの両者に書き戻さ
れる)との両方で生じる。取り替えられるチップの内容
の連続的な更新により、その機能しているメモリは取り
替えチップのための部分バックアップとして使用できる
利点がある。
【0038】デコーダ512およびスペアIDレジスタ
510は、種々の方法によって実施されることができ
る。例えば、デコーダは、3個の分離した復号ツリーと
して実施されることができ、各復号ツリーは、24デー
タビットのグループのためのスペアリング選択を備えて
いる。このような実施例では、スペアIDレジスタは、
その一つがスペアリングベクトルの各構成要素のための
3個の別個のレジスタからなり、各レジスタが異なる復
号ツリーに接続される。また、全72ビットを扱うため
に、一つのデコーダおよび一つのスペアIDレジスタは
設けられることができる。なお、アレイカード上のビッ
トが何個のデコーダおよびスペアIDレジスタに分解さ
れるかは、設計上の選択事項である。
【0039】図9および図10は、図2のHAMT20
8内のスペアリング決定およびスペアリングベクトル生
成ハードウエアの機能ブロック図である。HAMT20
8が72の二つの群のカウンタ224を扱う。一つの群
は、MSA上の「偶数」アドレスされたメモリカードを
表しており、他の群は「奇数」アドレスされたメモリカ
ードを表している。しきい値レジスタ702は、ビット
位置の終わりまでスペアリングする前に、許容可能なエ
ラーの最大数を決定するために使用されるPCEプログ
ラムしきい値を保持する。シフト制御カウンタ704
は、図2の比較および計数ロジック218のカウンタ2
24から、幾つのデータビットがシフトされたかを記憶
する。比較および計数ロジックの144個のカウンタは
二つの直列バス228、230を介して72の2群とし
て並列に読出される。第1の72個のカウンタセット
は、「偶数」アドレスされたECCデータワードに対し
て、不一致カウントを記憶し、一方、第2の72個のカ
ウンタセットは、「奇数」アドレスされたECCデータ
ワードに対して、不一致カウントを記憶する。
【0040】72個の直列カウンタの各群は、それ自身
と結合されるシフトレジスタ706、708と、それ自
身と結合されるしきい値比較器ロジック710、712
を有する。シフト制御704が完全に一対のカウンタが
読込まれたことを指示する毎に、偶数アドレスおよび奇
数アドレスされたECCデータワード(各々が異なるメ
モリカードを表している)の対応するビット位置に関し
て、並列にプリセットエラーしきい値に対する比較がな
される。しきい値比較器ロジック710、712が所定
ビット位置に関して悪い比較結果を示す時に、スペアリ
ング必要の標識が適切なECCデータワード(すなわ
ち、偶数、奇数あるいは両者)のためにオンとされる。
偶数および奇数データワードのそれぞれは、スペアリン
グ必要であることを指示するために、それ自身の関連す
るラッチ714、716を有している。第3のラッチ7
18は、偶数および奇数ラッチ714、716の論理O
Rを含むように接続される。
【0041】前述のように、シフト制御カウンタは、ビ
ット位置および対応するカウンタを記憶する。奇数ある
いは偶数しきい値比較器がスペアリングしきい値が一致
されたか、あるいは超えられたことを示す時に、シフト
制御カウンタ704のビット位置標識をコピーすること
によって、悪い比較ビット位置を示すスペアリングベク
トルは対応する新しい偶数ベクトルレジスタ720およ
び/または新しい奇数ベクトルレジスタ722に形成さ
れる。
【0042】図10は、HAMTスペアリングベクトル
生成ロジックの機能ブロック図である。現在の偶数およ
び奇数スペアリングベクトルがレジスタ724および7
26にそれぞれ保持される。最初に偶数スペアリングベ
クトル取扱いが例に基づいて説明される。全カウンタが
読出され、第3のラッチ718がセットされた後に、テ
ストロジック728は、偶数「スペアリング必要の」ビ
ット(レジスタ714から)と、「予備チップ使用可
能」ビット(レジスタ724の現在の偶数ベクトルから
725において復号される)との論理的ANDを実行す
る。もし、スペアリングが必要とされ、且つ(AN
D)、予備チップが使用可能(未使用)であるならば、
新偶数ベクトルレジスタ720のデータは偶数ベクトル
位置構成要素(これは、レジスタ742に記憶されてい
る)と、偶数ベクトル制御構成要素(これは、レジスタ
740に記憶されている)とに分割される。
【0043】各アレイカードへ送られたスペアリングベ
クトルは、レジスタ754、756および758からア
レイカードデータインターフェイスを通って送られる3
つのデータ群からなる。3つのデータ群のそれぞれは、
レジスタ744あるいは742からの5ビットの位置情
報とパリティビットとからなる。これらのデータ群は、
72ビットアレイカードインターフェイス内でスペアさ
れるビット位置を識別する。各データ群(それぞれが図
5のデコーダ512中の3個のデコーダツリー)が24
個の有効な符号化された位置の組合せを有している。
【0044】各スペアリングベクトルはまた、レジスタ
740からの5ビットの制御情報とアレイ制御ロジック
へ送られる1ビットのパリティからなる。これらのビッ
トは、予備チップを受け入れるチップ行を識別するばか
りでなく、予備チップ位置を決定する際に、データバス
上の位置ビットの3つの群の中のどの群を使用するかも
識別する。位置情報ビットの3つの群のうちの1つの群
のみが実際にスペアリングで使用されるので、他の二つ
の位置コードレジスタは、レジスタ744からの無効位
置コードによってロードされる。偶数ベクトル制御レジ
スタ740は、どの位置コードレジスタがレジスタ74
2からの有効コードを受け入れるか、並びにどの二つの
位置コードレジスタがレジスタ744からの無効コード
を受け入れるかを制御する。さらに、アレイ制御ロジッ
クへ送られたビットは、a)スペアリングが非活動状
態、b)ストアオンリー、あるいはc)フルフェッチ/
ストアでありうるアレイカードについてのスペアリング
モードを制御する。
【0045】なお、奇数スペアリングベクトルは、偶数
スペアリングベクトル対応部分と同様に動作する構成要
素722、726、727、730、750、752お
よび760〜764によって、偶数スペアリングベクト
ルと同様に取り扱われる。
【0046】HAMT208は、何時、スクラブ動作が
必要であるか、並びにスクラブされたアドレス数を記憶
する。HAMT208は、スペアリング機能が呼び出さ
れるべきかどうかを判定するために、記憶装置の状態を
何時評価すべきかを周期的に決定する。特定のMSA2
02についてメモリチップのグループ中の全てのアドレ
スがスクラブされた後に、この決定がなされる。後述の
ように、アドレス情報を有するHAMT208からのス
クラブ要求のそれぞれは、スクラブおよびメモリコント
ローラ206によって制御された計数シーケンスを開始
する。一つのMSAに関して全体のシーケンスが一度に
なされ、各MSAのために繰り返される。このシーケン
スについて図3および図4A〜図4Dを参照して説明す
る。
【0047】ステップ302で、メモリコントローラが
ECCロジック216のECC訂正機能をディスエーブ
ルする。ステップ304において、ECC訂正がディス
エーブルされた後に、一つのMSA202からのデータ
の16個の4倍長語からなるデータの二線は、スクラブ
されているMSA202からフェッチされ、フェッチバ
ッファ208に記憶される。
【0048】ステップ306で、ECC訂正は、未だデ
ィスエーブルされており、フェッチバッファからのデー
タの二線が選択反転ロジック210によって相補化さ
れ、それがフェッチされときと同一のMSA202内の
二線アドレスに書き戻される。このステップの後に、最
初にフェッチされた二線のコピーはフェッチバッファに
残っている。
【0049】ステップ308で、ステップ306により
MSA内に再記憶された相補化データは検索され、再相
補化され、そして、メモリコントローラ206によっ
て、4:1MUX220を通して比較器222へ渡され
る。同時に、ステップ304でフェッチバッファに記憶
された元のデータの二線は検索される。ステップ310
で、これらの二つのデータの二線は比較および計数ロジ
ック218によって比較される。16個の144ビット
4倍長語の何れかにおけるビットの悪い比較結果は、イ
ンクリメントされる悪い比較結果ビット位置と関連する
カウンタ(カウンタ224のセット内)に結果として生
じる。144ビット全部が悪い比較結果であれば、これ
らのビットのそれぞれのカウンタは、1だけ増分され
る。このステップを通じて、ECCロジックは、未だデ
ィスエーブルされている。
【0050】ステップ312で、ECCエラー訂正機能
は再イネーブルされる。次に、ステップ314で、ステ
ップ304からのフェッチバッファ208に記憶された
データの2線は元のMSAに書き戻される。ECCロジ
ック216は、記憶を実行する前に単一ビットエラーを
訂正する。若し、何らかの多ビットエラーが検出される
ならば、関連する72ビットのECCデータワードは変
更なしにメモリに渡される。
【0051】図4A〜図4Dは、ハードウエア/データ
流れの点から上述のプロセスの一例を図示している。例
示するために、ECCデータワードのビット位置は、ビ
ット位置1から始まって左から右に番号が付されてい
る。
【0052】図4Aは、ECCデータワード例えば「1
0101100・・・」(省略した形で示される)がE
CCディスエーブル状態でスクラブされているMSA2
02からどのようにフェッチされ、また、フェッチバッ
ファ204内に置かれるかを図示する。この例では、ビ
ット位置8(右側の最後のビット)は0に設定されたビ
ットを保持するハードエラーを有し、一方、ビット位置
4はソフトエラーを有している(言い換えると、若し、
データワードが正しければ、ビット位置4および8が1
にセットされる)ものと、仮定する。さらに、いかなる
他のビットも、欠陥が無いものと仮定する。
【0053】図4Bは、次のシーケンスステップ列で、
どのように、ECCデータワードがフェッチバッファ
(ECCディスエーブル状態で)から読出され、ワード
「01010011・・・」を形成するよう反転され、
元のメモリロケーションおよびそれがフェッチされたM
SAに書き戻されるかを示す。なお、この点において問
題のMSAメモリロケーションは、ビット位置8におけ
るハードエラーが「0に設定」状態を強制しているの
で、「01010010・・・」の形のECCデータワ
ードを含む。対照的にビット位置4に影響を及ぼすソフ
トエラーは、反転されたECCデータワードの記憶を妨
げない。
【0054】図4Cは、シーケンスステップの次の系列
を示し、そこでは、相補化データがMSA202から再
フェッチされ(ECCディスエーブル状態で)、データ
ワード「10101101・・・」を形成するために、
再相補化され、一方、これと同時に本来フェッチされた
データ「10101100・・・」がフェッチバッファ
214から読出される。そして、二つのECCデータワ
ードの対応するビットはビット位置8の不一致が検出さ
れる比較および計数ロジック218により比較される。
この不一致と応答して、ビット位置8のカウンタが1だ
け増分される。
【0055】図4Dは、今度はECCイネーブル状態
で、次のシーケンスステップで、データワードがフェッ
チバッファから再びどのように読出されるかを示す。図
2の実施例のECCロジックは、二重ビットエラーを訂
正できないので、データワード「10101100・・
・」は、その非訂正の形でMSAへ書き戻される。EC
Cロジックが多ビットエラーを訂正できるシステムで
は、データワードは、MSAに書き戻される前に、この
ようなECCロジックによって訂正される。何れかの第
1レベル高速バッファ(L1)104a〜104cから
のフェッチ要求は、訂正不能なエラー(UE)が存在す
る中央記憶装置108のアドレスに対してフェッチアク
セスを生じさせると、要求ユニットがデータが受信され
る前にそれを訂正するために、フェッチ再試行二重相補
化アルゴリズム(このようなアルゴリズムは従来周知で
ある)を開始する。
【0056】ここで、ビット4がソフトエラーを有しな
い(すなわち、ビット位置8に影響を及ぼすハードエラ
ーが唯一のエラーであった)ならば、ECCロジック
は、データワードを訂正し、MSAに対して「1010
1101・・・」を書き戻すことになる。さらに、ビッ
ト位置4および8が共にハードエラーで影響されていた
とすると、2個の対応するエラーカウンタが増分される
ことになる。
【0057】HAMTスクラブ決定制御処理は、図6、
図7および図8を参照してより詳細に説明する。
【0058】ステップ602の2線スクラブ要求(プロ
グラム可能な時間間隔に基づいたHAMTにより内部で
生成される)に応答して、HAMTがスクラブされるM
SAからのデータの2線をスクラブする。ステップ60
4で、HAMTが新しいチップ行標識がオン(スクラビ
ングが新しいチップ行について丁度開始されたことを示
す)であるかどうかを決定し、若し、そうであれば、標
識をオフとする。ステップ606に並行して、HAMT
がチップ行範囲で最後の2線がスクラブされたかどうか
を決定する。若し、そうであれば、ステップ608で、
HAMTが新たなチップ行標識をセットし、そして、比
較および計数ロジック218(図7)内のカウンタ22
4の読出しを開始する。若し、ステップ606がチップ
行範囲内の最後の2線がスクラブされていないことを示
すならば、ステップ610で、HAMTがその内部クロ
ックおよびプログラムされた時間間隔を検査し、他の2
線をスクラブする時間かどうかを決定する。若し、そう
であれば、ステップ612で、スクラブアドレスが増分
され、他の2線要求が開始される。
【0059】図7は、HAMTが開始し、カウンタ22
4を読出すことによるプロセスを示す。ステップ614
で、線227上の選択およびインクリメント信号を切り
替えることにより、並びに二つの単一ビットシリアルバ
ス228、230上のカウンタデータ(それらに応答す
る出力)を読出すことによって、HAMTはカウンタで
直列にシフトする。ステップ616で、HAMTは全カ
ウンタ(ビット位置毎に1カウンタ)が受信されている
かどうかを決定する。若し、そうでないならば、ステッ
プ614は、戻され、カウンタの読出しが継続する。全
カウンタが受信されると、ステップ618で、HAMT
がカウンタにより指示される不一致数がPCEにおいて
セットされたスペアリングしきい値より大きいかまたは
等しいかどうかが決定される。(典型的なしきい値は5
13である。)
【0060】若し、しきい値が到達あるいは超えられて
いないならば、HAMTは直接的にステップ624へ進
む。若し、しきい値が到達あるいは超えられていれば、
ステップ620でテストがなされ、そのカードに関して
「スペアリング必要の」標識(714および/または7
16)が既にセット(以前にテストされたビット位置が
そのしきい値に到達あるいは超えているために)されて
いるかどうかが決定される。若し、「スペアリング必要
の」標識が既にオンであれば、HAMTがステップ62
4へ直接的に進む。若し、「スペアリング必要の」標識
が未だオン(セット)でないならば、ステップ622
で、しきい値を到達あるいは超えたカウンタと対応する
ビット位置をHAMTが記憶し、また、そのカードに関
する「スペアリング必要の」標識をセットする。そし
て、HAMTがステップ624へ進む。ステップ624
で、HAMTが144個の全カウンタがシフトインされ
たかどうかを決定する。若しそうでなければ、ステップ
614へ戻り、カウンタの読出しが継続する。若しそう
ならば、ステップ626でテストがされ、「スペアリン
グ必要の」標識718がオンであるかどうかが決定され
る。若し、オンであれば、スペアリングが図8に示され
るように、開始される。若しそうでなければ、ステップ
628で、PCE116によってセットされたプログラ
ム可能な間隔に基づいた他の2線をスクラブする時間か
どうかが決定される。若し、他の2線をスクラブする時
間であれば、図6に示すように、2線スクラブ要求が開
始され、また、処理される。
【0061】図8は、HAMTがスペアリング要求を処
理するプロセスを示す。最初にステップ630で、HA
MTがスクラブされているメモリカード用の現在のスペ
アリングベクトルを検査し、予備チップが既に使用され
たかどうかを決定する。予備チップが既に使用されてい
るならば、HAMTがPCEに対してそのことを示す報
告を送る。HAMTハードウエアは、現在のスペアリン
グベクトル中にこの状態を示し、それに応答して、さら
なるスペアリングを禁止し、また、「予備チップ既使
用」の状態をPCEに対して報告する(スクラブされる
カードと関連するので)。若し、予備チップが未使用で
あれば、ステップ634で、HAMTがメモリカードを
有するMSAに対してスペアリングベクトルを送り、ス
ペアリングモードを「ストアオンリー」にセットする。
次に、ステップ636で、予備チップが初期化され、正
しいデータ(ECC訂正がイネーブルされた状態の元の
チップから取り出される)が取り替えチップにコピーさ
れる。その次に、ステップ638で、「フルフェッチ/
ストア」モードがイネーブルされている状態でスペアベ
クトルが故障カードを有するMSAへ送られることが可
能である。そして、ステップ640で、HAMTが割込
みによってPCECCに合図する。この割込みに応答し
て、PCE116がそれへスペアリングベクトルが送ら
れることを要求し、従って、IMLコードは、主メモリ
の新たな構成を反映するように変更される。このよう
に、PCEの要求時に、HAMTは新たなスペアリング
ベクトルを有するPCE初期化コードを更新する。結
局、ステップ642で、HAMTは他の2線をスクラブ
する時間かどうかを決定する。若し、そうであれば、他
の2線フェッチ要求が生成され、図6に示すように取り
扱われる。
【0062】HAMTが初期化のために旧いチップから
新たな取り替えチップへのデータの移動を制御し、これ
によってオンラインとされた時にそれがソフトエラーを
含まない。取り替えチップをオンラインに維持し、取り
替えチップおよび取り替えられたチップの両者に対して
書込むことの利点は、取り替えられるチップが未だ部分
的に有効なことである。従って、若し、取り替えチップ
が外部的にオフラインとなってしまうならば、取り替え
られるチップはそれが連続的に更新されなかったよりも
正確なデータを含む。このように、取り替えられるチッ
プは、取り替えチップに対するバックアップとして動作
する。
【0063】HAMTにより発行された初期スペアリン
グベクトルは、予備チップを「ストアオンリー」モード
(取り替えチップから未だフェッチできない)にセット
する。この処理によって、取り替えチップおよび元のオ
ンラインチップが記憶動作時に正しいデータを受信する
ことを可能とする。これと同時に、フェッチ再試行二重
相補化シーケンスを使用する特別なスクラブ動作が取り
替えチップ内へデータを記憶するために作動される。他
のビット位置が元のチップからのエラーとそれ自身を協
働させるためにここで遭遇する訂正不能なエラーは、フ
ェッチ再試行二重相補化プロセスの使用によって、正し
く更新された取り替えチップを参照する。以前のスクラ
ブ動作が完了するや否や発行されるこれらの特別なスク
ラブ動作は、チップ行アドレス境界が同一のスペアベク
トルがアレイカードに対して再送付される時に達するま
で継続する。但し、この時は、モードが「フルフェッチ
/ストア」に変化している。「ストアオンリー」モード
の間では、全てのフェッチ動作は、元のオンラインチッ
プからのデータをアクセスする。
【0064】スペアリングセットアップは、電源オフの
期間に全スペアリングベクトル情報を保持するPCEか
ら到来する。電源オンの期間で、取り替えチップがオン
ラインに戻される。
【0065】スペアリングベクトルを書込むには、二つ
の方法がある。その一つは、HAMTからスペアリング
アクションを出させることであり、他のものは、スペア
リングアクションをPCEレジスタに制御させることで
ある。取り替えチップと同時に書込まれることによっ
て、取り替えられるチップが連続的に更新されるが、デ
ータが中央記憶装置からフェッチされる時には、取り替
えチップのみが使用される。
【0066】相補化データが中央記憶装置内に在る時間
内(ステップ306の後)では、このようなデータがア
クセスされることを妨げるロックアウト(一般的に全て
の二重相補化方法において使用される)が適所に存在
し、データ保全性が保たれる。メモリコントローラは、
二重相補化動作の終了で、中央記憶装置内へ真のデータ
が再び記憶されるまで、スクラブされているMSAを他
の要求元が使用することを禁止する。
【0067】上述のように、この発明によるスペアリン
グ方法は、「予備チップオンライン」モードを利用す
る。このモードでは、元のチップは、エラーに対する保
護のためにスペアリングの後に更新され続ける。これに
よってその再使用が可能となり、回復性利点が生じる。
多くの場合で、スペアリング基準と合致した元のチップ
は、依然として充分に良好であり、そのアドレス空間の
殆どは、エラー無しに書込みおよび読出しを行うことが
できる。チップの更新を維持することによって、偶発的
な再使用が他のチップと共に二重ビットエラーを形成し
うる無数のソフトエラーを伴うことはない。
【図面の簡単な説明】
【図1】中央記憶装置を有する中央電子複合体のブロッ
ク図である。
【図2】この発明の一実施例によるスクラビングおよび
スペアリングシステムのブロック図である。
【図3】この発明の一実施例のスクラビングプロセスを
示すフローチャート図である。
【図4】図3のプロセスの一例を示すハードウエアデー
タフロー図である。
【図5】この発明の一実施例のメモリカードロジック図
である。
【図6】この発明の一実施例のスペアリング決定プロセ
スを示すフローチャート図である。
【図7】この発明の一実施例のスペアリング決定プロセ
スを示すフローチャート図である。
【図8】この発明の一実施例のスペアリング決定プロセ
スを示すフローチャート図である。
【図9】図2のHAMT内のスペアリング決定およびス
ペアリングベクトル生成ハードウエアの機能ブロック図
である。
【図10】図2のHAMT内のスペアリング決定および
スペアリングベクトル生成ハードウエアの機能ブロック
図である。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ドナルド・ジョージ・オブライエン アメリカ合衆国、ニューヨーク州パウキー プシー、スチュアートドライブ 16 (72)発明者 マイケル・ラビノ アメリカ合衆国、ニューヨーク州ホープウ エルジャンクション、ハイリッジロード 27 (72)発明者 ウィリアム・ウー・シェン アメリカ合衆国、ニューヨーク州パウキー プシー、ケラーハウスドライブ 18 (72)発明者 ジョージ・チャールズ・ウェルウッド アメリカ合衆国、ニューヨーク州パウキー プシー、リッジロード 59

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 a)非訂正データワードをメモリアレイ
    からフェッチするステップと、 b)バッファ内に上記非訂正データワードを一時的に記
    憶するステップと、 c)相補的な非訂正データワードを形成するように、上
    記非訂正データを相補化するステップと、 d)上記非訂正データワードがフェッチされたところの
    ロケーションの上記メモリアレイに上記相補化非訂正デ
    ータワードを記憶するステップと、 e)上記メモリアレイから上記相補化非訂正データワー
    ドを検索するステップと、 f)再相補化非訂正データワードを形成するように、上
    記メモリアレイから検索された上記相補化非訂正データ
    ワードを再相補化するステップと、 g)上記再相補化非訂正データワード内の各ビット位置
    を上記バッファに記憶された非訂正データワード内の同
    様のビット位置と比較するステップと、 h)上記再相補化非訂正データワードと上記バッファ内
    に記憶された上記非訂正データワード間の不一致数を各
    ビット位置に関して計数するステップと、 i)何れかのビット位置に対する上記不一致数が所定の
    しきい値に到達するか、これを超える時に、上記アレイ
    のどの特定のメモリチップが上記しきい値に到達した上
    記ビット位置に対するデータを記憶するのかを決定し、
    データ読出しのために上記特定のメモリチップを取り替
    えるために予備メモリチップを選択し、上記予備メモリ
    チップを初期化し、上記特定のメモリチップの全ての内
    容を上記予備メモリチップに対してコピーするステップ
    と、 j)ステップiの後で、上記予備メモリチップおよび上
    記特定のメモリチップの両者への全メモリ書込み動作の
    スクラビングを実行し続けるステップと、 k)上記メモリアレイがスクラブされる毎に、ステップ
    aからステップhを繰り返すステップとからなることを
    特徴とするスクラビング方法およびスペアリング方法。
  2. 【請求項2】 メモリアレイと、 上記メモリアレイから非訂正データワードをフェッチす
    るためのフェッチ制御手段と、 上記メモリアレイと結合され、上記非訂正データワード
    を一時的に記憶するためのバッファ手段と、 上記バッファ手段と結合され、上記非訂正データワード
    を相補化非訂正データワードを形成するように、上記非
    訂正データワードを相補化するための相補化制御手段
    と、 上記相補化手段および上記メモリアレイと結合され、上
    記非訂正データワードがフェッチされたところのロケー
    ションの上記メモリアレイに上記相補化非訂正データワ
    ードを記憶するための書込み制御手段と、 上記メモリアレイと結合され、上記メモリアレイから上
    記相補化非訂正データワードを検索するための検索制御
    手段と、 上記メモリアレイと結合され、上記メモリアレイから検
    索された上記相補化非訂正データワードを再相補化非訂
    正データワードを形成するように、再相補化するための
    再相補化制御手段と、 上記バッファ手段および上記再相補化手段と結合され、
    上記再相補化非訂正データワードの各ビット位置を上記
    バッファに記憶された上記非訂正データワードの同様の
    ビット位置と比較し、かつ、各ビット位置に対して、上
    記再相補化非訂正データワードと上記バッファ手段に記
    憶された上記非訂正データワードとの間の不一致数を計
    数するための比較および計数手段と、 上記比較および計数手段と結合され、何れかのビット位
    置に関しての不一致数が所定しきい値に到達したか、あ
    るいは超えることを決定するためのテスト手段と、 上記テスト手段と結合され、上記メモリアレイ中のどの
    特定のメモリチップが上記しきい値に到達した上記ビッ
    ト位置に対してデータを記憶するのかを決定し、データ
    読取りのために上記特定のメモリチップを取り替えるた
    めに予備メモリチップを選択し、上記予備メモリチップ
    を初期化し、上記特定のメモリチップの全ての内容を上
    記予備メモリチップに対してコピーするためのスペアリ
    ングベクトル生成手段と、 上記スペアリングベクトル生成手段と結合され、上記予
    備メモリチップおよび上記特定メモリチップの両者に対
    して全メモリ書込み動作のスクラビングを実行し続ける
    ためのメモリ書込み制御手段とを備えたことを特徴とす
    るメモリシステム。
  3. 【請求項3】 上記テスト手段は二つのメモリカードを
    並列にテストする手段を備えたことを特徴とする請求項
    2記載のメモリシステム。
  4. 【請求項4】 上記しきい値はプログラム可能であるこ
    とを特徴とする請求項2記載のメモリシステム。
  5. 【請求項5】 a)中央プロセッサと、 b)上記中央プロセッサと結合され、複数の通常オンラ
    インのメモリチップと予備メモリチップとを備え、さら
    に、上記通常オンラインのメモリチップの誤動作のもの
    を上記予備メモリチップに取り替えるようにする手段と
    を備えているメモリと、 c)上記メモリと結合され、 複数の上記通常オンラインのメモリチップの誤動作メモ
    リチップをテストし、かつ識別するための手段と、 上記誤動作メモリチップの識別を上記メモリに提供する
    手段とを含むメモリ保全手段とを備え、 上記識別の受信に応答して上記メモリは、全てのメモリ
    読取りコマンドに対して、上記誤動作メモリチップを上
    記予備メモリチップで取替え、また、上記予備メモリチ
    ップおよびビット誤動作メモリチップの両者に対して全
    てのメモリ書込みコマンドを生じさせることを特徴とす
    るコンピュータシステム。
  6. 【請求項6】 上記メモリは複数のアクセスモードの一
    つを確立するための制御手段を備え前記制御手段は、 ビットステアリングが呼び出されないヌルモードを確立
    するための手段と、 記憶データが上記誤動作メモリチップと上記予備メモリ
    チップの両者に対して送られ、一方、フェッチされたデ
    ータが上記誤動作メモリチップからのみ読出されるスト
    アオンリーモードを確立するための手段と、 記憶データが上記誤動作メモリチップと上記予備メモリ
    チップの両者に対して送られ、一方、フェッチされたデ
    ータが上記予備メモリチップからのみ読出されるフルフ
    ェッチ/ストアモードを確立するための手段とを含むこ
    とを特徴とする請求項5記載のコンピュータシステム。
JP4189006A 1991-09-05 1992-07-16 メモリシステム Pending JPH05210595A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/755,209 US5267242A (en) 1991-09-05 1991-09-05 Method and apparatus for substituting spare memory chip for malfunctioning memory chip with scrubbing
US755209 1991-09-05

Publications (1)

Publication Number Publication Date
JPH05210595A true JPH05210595A (ja) 1993-08-20

Family

ID=25038173

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4189006A Pending JPH05210595A (ja) 1991-09-05 1992-07-16 メモリシステム

Country Status (3)

Country Link
US (1) US5267242A (ja)
EP (1) EP0530554A2 (ja)
JP (1) JPH05210595A (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4830795A (en) * 1986-07-03 1989-05-16 Rutgers, The State University Of New Jersey Process for making polarized material
US4863648A (en) * 1986-07-03 1989-09-05 Rutgers, The State University Of New Jersey Process for making polarized material
JP2014120179A (ja) * 2012-12-18 2014-06-30 Hgst Netherlands B V 停電障害状況におけるイベントトレース情報の復旧
JP2016530655A (ja) * 2013-09-24 2016-09-29 インテル・コーポレーション メモリ中のエラーを処理するためのエラー訂正ポインタの使用
CN106462519A (zh) * 2014-05-05 2017-02-22 高通股份有限公司 双列直插式存储器模块(dimm)连接器
JP2019520639A (ja) * 2016-05-28 2019-07-18 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッドAdvanced Micro Devices Incorporated インテグラルポストパッケージリペア

Families Citing this family (73)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5479640A (en) * 1990-08-31 1995-12-26 International Business Machines Corporation Memory access system including a memory controller with memory redrive circuitry
JP2796590B2 (ja) * 1991-08-07 1998-09-10 三菱電機株式会社 メモリ装置及びそれを使用したデータ処理装置
KR0121800B1 (ko) * 1992-05-08 1997-11-22 사또오 후미오 메모리 카드장치
US5473753A (en) * 1992-10-30 1995-12-05 Intel Corporation Method of managing defects in flash disk memories
DE4329012A1 (de) * 1993-08-28 1995-03-02 Sel Alcatel Ag Verfahren und Vorrichtung zur Fehlerprüfung und zur Fehlerkorrektur in Speicherbausteinen
US5632012A (en) * 1993-11-24 1997-05-20 Storage Technology Corporation Disk scrubbing system
GB2289779B (en) * 1994-05-24 1999-04-28 Intel Corp Method and apparatus for automatically scrubbing ECC errors in memory via hardware
US5701429A (en) * 1994-06-20 1997-12-23 International Business Machines Corporation Method and system for maintaining concurrent data access during device upgrade
US5867642A (en) * 1995-08-10 1999-02-02 Dell Usa, L.P. System and method to coherently and dynamically remap an at-risk memory area by simultaneously writing two memory areas
JPH09306198A (ja) * 1996-02-07 1997-11-28 Lsi Logic Corp 冗長列及び入/出力線を備えたasicメモリを修復するための方法
US6038680A (en) * 1996-12-11 2000-03-14 Compaq Computer Corporation Failover memory for a computer system
US5987628A (en) * 1997-11-26 1999-11-16 Intel Corporation Method and apparatus for automatically correcting errors detected in a memory subsystem
US6076183A (en) * 1997-12-18 2000-06-13 Bull, S.A. Method of memory error correction by scrubbing
JP3177207B2 (ja) * 1998-01-27 2001-06-18 インターナショナル・ビジネス・マシーンズ・コーポレ−ション リフレッシュ間隔制御装置及び方法、並びにコンピュータ
US6446223B1 (en) * 1998-09-09 2002-09-03 Hitachi, Ltd. Storage system and method for controlling the same
US6425055B1 (en) 1999-02-24 2002-07-23 Intel Corporation Way-predicting cache memory
US6567950B1 (en) * 1999-04-30 2003-05-20 International Business Machines Corporation Dynamically replacing a failed chip
US6480982B1 (en) 1999-06-04 2002-11-12 International Business Machines Corporation Computer RAM memory system with enhanced scrubbing and sparing
US6505306B1 (en) * 1999-09-15 2003-01-07 International Business Machines Corporation Redundant bit steering mechanism with delayed switchover of fetch operations during redundant device initialization
US6845472B2 (en) * 2000-01-25 2005-01-18 Hewlett-Packard Development Company, L.P. Memory sub-system error cleansing
US6832340B2 (en) * 2000-01-26 2004-12-14 Hewlett-Packard Development Company, L.P. Real-time hardware memory scrubbing
US6732291B1 (en) 2000-11-20 2004-05-04 International Business Machines Corporation High performance fault tolerant memory system utilizing greater than four-bit data word memory arrays
US6799291B1 (en) * 2000-11-20 2004-09-28 International Business Machines Corporation Method and system for detecting a hard failure in a memory array
US20020091965A1 (en) * 2000-12-22 2002-07-11 Mark Moshayedi System and method for early detection of impending failure of a data storage system
US6842867B2 (en) 2001-01-26 2005-01-11 Dell Products L.P. System and method for identifying memory modules having a failing or defective address
US20020184576A1 (en) * 2001-03-29 2002-12-05 International Business Machines Corporation Method and apparatus for isolating failing hardware in a PCI recoverable error
US7076686B2 (en) * 2002-02-20 2006-07-11 Hewlett-Packard Development Company, L.P. Hot swapping memory method and system
JP2004112675A (ja) * 2002-09-20 2004-04-08 Konica Minolta Holdings Inc 画像データ提供方法、記録装置及びプログラム
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
US7320100B2 (en) * 2003-05-20 2008-01-15 Cray Inc. Apparatus and method for memory with bit swapping on the fly and testing
US7184916B2 (en) * 2003-05-20 2007-02-27 Cray Inc. Apparatus and method for testing memory cards
US7058782B2 (en) * 2003-07-31 2006-06-06 International Business Machines Corporation Method and apparatus for coordinating dynamic memory deallocation with a redundant bit line steering mechanism
JP2005100259A (ja) * 2003-09-26 2005-04-14 Hitachi Ltd ドライブの2重障害を防止するアレイ型ディスク装置、プログラム、及び方法
CN100458734C (zh) * 2003-11-21 2009-02-04 深圳市朗科科技股份有限公司 移动存储装置的数据管理方法
US20050120265A1 (en) * 2003-12-02 2005-06-02 Pline Steven L. Data storage system with error correction code and replaceable defective memory
TWI228919B (en) * 2003-12-22 2005-03-01 Sunplus Technology Co Ltd Circuit and method for decompressing image
US7100004B2 (en) * 2004-04-06 2006-08-29 International Business Machines Corporation Method for scrubbing regions in central storage
WO2005101207A1 (en) * 2004-04-14 2005-10-27 Koninklijke Philips Electronics N.V. Data handling device that corrects errors in a data memory
US7272774B2 (en) * 2004-04-16 2007-09-18 Kingston Technology Corp. Extender card for testing error-correction-code (ECC) storage area on memory modules
US7490283B2 (en) 2004-05-13 2009-02-10 Sandisk Corporation Pipelined data relocation and improved chip architectures
US7263631B2 (en) * 2004-08-13 2007-08-28 Seakr Engineering, Incorporated Soft error detection and recovery
US7346806B2 (en) * 2004-09-23 2008-03-18 International Business Machines Corporation Hard disk drive background scrub methodology
US7346804B2 (en) * 2004-09-23 2008-03-18 International Business Machines Corporation Hard disk drive data scrub methodology
US7849381B2 (en) * 2004-12-21 2010-12-07 Sandisk Corporation Method for copying data in reprogrammable non-volatile memory
US7409473B2 (en) 2004-12-21 2008-08-05 Sandisk Corporation Off-chip data relocation
JP2006179101A (ja) * 2004-12-22 2006-07-06 Fujitsu Ltd 半導体記憶装置
US7212440B2 (en) * 2004-12-30 2007-05-01 Sandisk Corporation On-chip data grouping and alignment
US7523364B2 (en) * 2005-02-09 2009-04-21 International Business Machines Corporation Double DRAM bit steering for multiple error corrections
US7650557B2 (en) * 2005-09-19 2010-01-19 Network Appliance, Inc. Memory scrubbing of expanded memory
US20070094569A1 (en) * 2005-10-24 2007-04-26 Thayer Larry J Determining hard errors vs. soft errors in memory
US20080077840A1 (en) * 2006-09-27 2008-03-27 Mark Shaw Memory system and method for storing and correcting data
US7793175B1 (en) * 2007-01-10 2010-09-07 Marvell International Ltd. Automated scan testing of DDR SDRAM
JP5014821B2 (ja) 2007-02-06 2012-08-29 株式会社日立製作所 ストレージシステム及びその制御方法
US8245087B2 (en) * 2007-03-26 2012-08-14 Cray Inc. Multi-bit memory error management
US8464007B2 (en) * 2007-03-26 2013-06-11 Cray Inc. Systems and methods for read/write phase request servicing
US8065573B2 (en) * 2007-03-26 2011-11-22 Cray Inc. Method and apparatus for tracking, reporting and correcting single-bit memory errors
US8255758B2 (en) * 2008-01-21 2012-08-28 Apple Inc. Decoding of error correction code using partial bit inversion
US20090217281A1 (en) * 2008-02-22 2009-08-27 John M Borkenhagen Adaptable Redundant Bit Steering for DRAM Memory Failures
US8327242B1 (en) 2008-04-10 2012-12-04 Apple Inc. High-performance ECC decoder
US8407515B2 (en) * 2008-05-06 2013-03-26 International Business Machines Corporation Partition transparent memory error handling in a logically partitioned computer system with mirrored memory
US8255639B2 (en) * 2008-05-06 2012-08-28 International Business Machines Corporation Partition transparent correctable error handling in a logically partitioned computer system
US8429498B1 (en) 2009-03-25 2013-04-23 Apple Inc. Dual ECC decoder
US8453038B2 (en) * 2009-06-30 2013-05-28 Apple Inc. Chien search using multiple basis representation
US8601352B1 (en) 2009-07-30 2013-12-03 Apple Inc. Efficient LDPC codes
US8990646B2 (en) * 2012-05-31 2015-03-24 Hewlett-Packard Development Company, L.P. Memory error test routine
US9009548B2 (en) 2013-01-09 2015-04-14 International Business Machines Corporation Memory testing of three dimensional (3D) stacked memory
US9911509B2 (en) * 2013-12-06 2018-03-06 Intel Corporation Counter to locate faulty die in a distributed codeword storage system
WO2015157932A1 (en) 2014-04-16 2015-10-22 Intel Corporation Method, apparatus and system for handling data error events with memory controller
US10084481B2 (en) 2014-12-18 2018-09-25 Apple Inc. GLDPC soft decoding with hard decision inputs
US10848182B2 (en) 2018-09-13 2020-11-24 Apple Inc. Iterative decoding with early termination criterion that permits errors in redundancy part
KR102670661B1 (ko) 2019-06-19 2024-05-31 삼성전자주식회사 반도체 메모리 장치 및 이를 포함하는 메모리 시스템
US20250028596A1 (en) * 2023-07-17 2025-01-23 Honeywell International Inc. EEPROM Correction Method
CN118467255B (zh) * 2024-07-09 2024-10-29 飞龙芯类脑智能科技(珠海)有限公司 一种基于芯片内的数据恢复处理系统及方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5862900A (ja) * 1981-10-08 1983-04-14 Nec Corp メモリの単一ビツトエラ−処理方式
JPS59132500A (ja) * 1983-01-19 1984-07-30 Nec Corp 2ビツト誤り訂正方式
JPS62245453A (ja) * 1986-04-18 1987-10-26 Fujitsu Ltd 交替メモリの置換方法
JPH03147162A (ja) * 1989-11-02 1991-06-24 Nec Field Service Ltd 交代メモリーへの自動切替え方式

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4231089A (en) * 1978-12-15 1980-10-28 Digital Equipment Corporation Data processing system with apparatus for correcting microinstruction errors
JPS592057B2 (ja) * 1979-02-07 1984-01-17 株式会社日立製作所 エラ−訂正・検出方式
JPS5750193A (en) * 1980-09-11 1982-03-24 Meisei Electric Co Ltd Backup system for installed data
US4371754A (en) * 1980-11-19 1983-02-01 Rockwell International Corporation Automatic fault recovery system for a multiple processor telecommunications switching control
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
US4532628A (en) * 1983-02-28 1985-07-30 The Perkin-Elmer Corporation System for periodically reading all memory locations to detect errors
US4584682A (en) * 1983-09-02 1986-04-22 International Business Machines Corporation Reconfigurable memory using both address permutation and spare memory elements
EP0259859B1 (en) * 1986-09-10 1992-12-02 Nec Corporation Information processing system capable of reducing invalid memory operations by detecting an error in a main memory
US4888773A (en) * 1988-06-15 1989-12-19 International Business Machines Corporation Smart memory card architecture and interface
US5077737A (en) * 1989-08-18 1991-12-31 Micron Technology, Inc. Method and apparatus for storing digital data in off-specification dynamic random access memory devices

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5862900A (ja) * 1981-10-08 1983-04-14 Nec Corp メモリの単一ビツトエラ−処理方式
JPS59132500A (ja) * 1983-01-19 1984-07-30 Nec Corp 2ビツト誤り訂正方式
JPS62245453A (ja) * 1986-04-18 1987-10-26 Fujitsu Ltd 交替メモリの置換方法
JPH03147162A (ja) * 1989-11-02 1991-06-24 Nec Field Service Ltd 交代メモリーへの自動切替え方式

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4830795A (en) * 1986-07-03 1989-05-16 Rutgers, The State University Of New Jersey Process for making polarized material
US4863648A (en) * 1986-07-03 1989-09-05 Rutgers, The State University Of New Jersey Process for making polarized material
JP2014120179A (ja) * 2012-12-18 2014-06-30 Hgst Netherlands B V 停電障害状況におけるイベントトレース情報の復旧
JP2016530655A (ja) * 2013-09-24 2016-09-29 インテル・コーポレーション メモリ中のエラーを処理するためのエラー訂正ポインタの使用
CN106462519A (zh) * 2014-05-05 2017-02-22 高通股份有限公司 双列直插式存储器模块(dimm)连接器
JP2017515231A (ja) * 2014-05-05 2017-06-08 クアルコム,インコーポレイテッド デュアルインラインメモリモジュール(dimm)コネクタ
CN106462519B (zh) * 2014-05-05 2019-08-13 高通股份有限公司 双列直插式存储器模块(dimm)连接器
JP2019520639A (ja) * 2016-05-28 2019-07-18 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッドAdvanced Micro Devices Incorporated インテグラルポストパッケージリペア

Also Published As

Publication number Publication date
EP0530554A2 (en) 1993-03-10
US5267242A (en) 1993-11-30

Similar Documents

Publication Publication Date Title
US5267242A (en) Method and apparatus for substituting spare memory chip for malfunctioning memory chip with scrubbing
KR100337218B1 (ko) 스크루빙 및 스페어링을 향상시킨 컴퓨터 램 메모리 시스템
EP0090638B1 (en) Cache memory systems
US9389954B2 (en) Memory redundancy to replace addresses with multiple errors
JP3982639B2 (ja) マルチレベルセルを有するメモリからデータを読み取る方法
KR920001104B1 (ko) 어드레스 라인 오류 테스트 방법
JPH04277848A (ja) メモリフォルトマッピング装置、検出エラーのマッピング方法及びマルチパスメモリフォルトマッピング装置
US5109360A (en) Row/column address interchange for a fault-tolerant memory system
US20100223525A1 (en) Error detection device and methods thereof
US4251863A (en) Apparatus for correction of memory errors
JPS6237423B2 (ja)
US7076686B2 (en) Hot swapping memory method and system
CN116382958B (zh) 一种内存错误的处理方法及计算设备
JPH0136135B2 (ja)
US5357521A (en) Address sensitive memory testing
JPH0136134B2 (ja)
US6681299B1 (en) Cache-tag control method in information processing apparatus having cache, with error checking mechanism in cache tag, and information processing apparatus using this control method
KR100402638B1 (ko) 리던던트 디바이스 초기화 방법 및 장치
JPS6237422B2 (ja)
US5461588A (en) Memory testing with preservation of in-use data
JPH0594377A (ja) パリテイ検出回路
US12614601B2 (en) Memory apparatus and semiconductor system including the same
CN112181712A (zh) 一种提高处理器核可靠性的方法及装置
JPH1011284A (ja) 制御記憶装置
JPS61131147A (ja) 記憶装置