JPH06290115A - メモリ・エラーを検出し訂正するシステムとその方法 - Google Patents

メモリ・エラーを検出し訂正するシステムとその方法

Info

Publication number
JPH06290115A
JPH06290115A JP6054767A JP5476794A JPH06290115A JP H06290115 A JPH06290115 A JP H06290115A JP 6054767 A JP6054767 A JP 6054767A JP 5476794 A JP5476794 A JP 5476794A JP H06290115 A JPH06290115 A JP H06290115A
Authority
JP
Japan
Prior art keywords
memory
data
burst
error
detecting
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
JP6054767A
Other languages
English (en)
Inventor
Ralph E Snowden
ラルフ・イー・スノウデン
Douglas R Kraft
ダグラス・アール・クラフト
Jr Eugene H Gruender
ユージン・エイチ・グルーンダー・ジュニア
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.)
Motorola Solutions Inc
Original Assignee
Motorola Inc
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 Motorola Inc filed Critical Motorola Inc
Publication of JPH06290115A publication Critical patent/JPH06290115A/ja
Pending legal-status Critical Current

Links

Classifications

    • 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/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

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)
  • Dram (AREA)
  • Detection And Correction Of Errors (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Abstract

(57)【要約】 【目的】 メモリ・エラーを検出し訂正するシステムと
その方法が提供される。 【構成】 バースト誤り消去システムとその方法は、全
メモリ中の誤りを連続的に検出し訂正し、これは、メモ
リの第1アドレスに格納されたデータから始まり、メモ
リの最後のアドレスに格納されたデータが読み取られ、
訂正され、メモリに戻されて書き込まれるまで続く。バ
ースト誤り消去は、リフレッシュ・サイクルの間は実行
されないが、その代わりにバースト消去が特定の時間間
隔で実行できるようにプログラム可能である。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は一般に誤り検出訂正シス
テムとその方法に関し、さらに具体的にはプログラム可
能な時間間隔でメモリの全部を連続的に消去するシステ
ムとその方法に関する。
【0002】
【従来の技術】「誤りを消去する」および「誤り消去」
という語は、誤り検出訂正(EDAC)保護メモリ・シ
ステムにおいて誤りを検出して訂正するプロセスを意味
するが、メモリとの間のデータ転送が長時間不可能とな
る場合がある。ソフト・エラー(すなわち、放射線によ
り引き起こされるビットの入れ替わりによる誤り)がメ
モリ内で発生する場合には、誤り消去システムはメモリ
を読み込み、誤りを訂正し、ついでその訂正したデータ
をメモリに戻して書き込む。EDACプロセスは、複数
のソフト・エラーにより発生する訂正不能な障害の発生
率を減らすのに役立つ。
【0003】
【発明が解決しようとする課題】現行の誤り消去は、D
RAM(ダイナミック・リード・アクセス・メモリ)リ
フレッシュ・サイクルを利用して誤り消去動作を実行す
る。これらの従来の誤り消去システムでは、誤りが検出
されない場合、リフレッシュ・サイクルは読取サイクル
だけで構成される。誤りが検出される場合には、従来の
メモリ消去システムは読取・訂正・書込みサイクルを実
行しなければならない。この種のメモリ消去システムと
その方法は、通常のリフレッシュ・サイクルと比較し
て、メモリ読取サイクルまたは読取・変更・書込みサイ
クルによって消費される時間が増えるので、システム性
能にマイナスの影響を及ぼす。また、リフレッシュもし
くは消去サイクルは定期的に行われなければならないの
で、このマイナスの影響は定常的なものになる。
【0004】また従来のEDACシステムとその方法
は、行アドレス・ストローブ(RAS)リフレッシュの
前、またはリフレッシュ・アドレス・カウンタを除去す
る前に、カラム・アドレス・ストローブ(CAS)を使
用するのを妨げる。また従来の誤り消去技術は、単純な
リフレッシュ・サイクルを複雑なメモリ・サイクルに変
換する必要があるために、メモリ・コントローラの設計
を複雑にする。
【0005】したがって、誤り消去に消費される時間
が、システムの設計および性能にマイナスの影響を及ぼ
さないように、リフレッシュ・サイクルの間以外でメモ
リに対して誤り消去を実行する必要性が大いにある。
【0006】
【課題を解決するための手段】本発明は、プログラム可
能な時間間隔で、バースト誤り消去動作を実行するのに
便利であって、メモリ全体におけるすべてのメモリ・エ
ラーが連続的に検出されて訂正される。
【0007】このため、本発明の利点は、メモリ全体に
対して読取・訂正・書込みサイクルを折り返し実行する
ことにより、メモリ全体におけるすべてのメモリ・エラ
ーを連続的に検出し訂正することである。
【0008】また本発明のもう一つの利点は、データの
完全性を維持しつつより良いシステム性能が得られるよ
うに、リフレッシュ・サイクルの間以外で、メモリ・エ
ラー消去を連続的に実行することである。
【0009】本発明のさらなる利点は、メモリ・エラー
消去動作が実行されるときをプログラムし、予め定めら
れた時間間隔でバースト誤り消去を自動的に実行するこ
とである。
【0010】本発明の別の利点は、需要の低い期間中、
またはシステム利用度が最低となる期間中にメモリ・エ
ラー消去をスケジューリングすることである。
【0011】本発明のさらに別の利点は、メモリのバー
スト消去を実行するが、それでなおメモリ・システム
が、通常の読取動作または書込み動作も実行できるよう
にすることである。
【0012】本発明のもう一つの利点は、バースト誤り
消去動作を、通常のメモリ機能にとって透過にすること
である。
【0013】本発明の一つの側面によれば、メモリ・エ
ラーを連続的に検出し訂正するシステムが提供される。
このシステムは、データを格納するメモリ、メモリと接
続されてメモリ内に格納されたデータの誤りを検出し訂
正する誤り訂正データ・マルチプレクサ、ならびにマル
チプレクサおよびメモリと接続されてメモリに対してバ
ースト誤り消去を起動して制御するメモリ・コントロー
ラによって構成される。
【0014】本発明の別の側面によれば、コンピュータ
によってコンピュータ・プログラムの一部として実行さ
れる、メモリ内に格納されたデータの誤りを検出し訂正
する方法が提供される。この方法は、(a)メモリのバ
ースト消去が実行される時間間隔をプログラミングする
段階、および(b)メモリからデータを連続的に読み出
し、データの誤りを検出し訂正し、その訂正したデータ
をメモリに戻して書き込むことにより、プログラムされ
た時間間隔でメモリのバースト消去を行う段階によって
構成される。
【0015】
【実施例】「バースト消去する」または「バースト誤り
消去」という語は、メモリ内の各場所からデータを読み
取り、データを訂正し、訂正したデータをメモリに戻し
て書き込むことを連続的に行うことを意味する。バース
ト消去は、メモリ内の第1アドレスからデータの読取を
開始し、メモリの最後のアドレスに格納されたデータが
読み取られ、訂正され、メモリの元のアドレスに書き込
まれるまで、誤りの検出訂正を停止しない。
【0016】図1は、本発明の好適な実施例によるバー
スト誤り消去システムを示す。図1に示すバースト誤り
消去システムは、メモリ・コントローラ10,誤り訂正
データ・マルチプレクサ(ECDM)30およびダイナ
ミック・ランダム・アクセス・メモリ(DRAM)アレ
イ50によって構成される。
【0017】メモリ・コントローラ10の主たる目的
は、ECDM30と、DRAMアレイ50の全メモリ機
能とを、読取,書込みおよびリフレッシュを含めて、制
御することである。メモリ・コントローラ10はまた、
DRAMアレイ50に対してバースト誤り消去動作が実
行されるときに起動するのを担当する。
【0018】メモリ・コントローラ10は、たとえば、
モトロ−ラ社製MC88110プロセッサ・アドレス・
バスなどのバスからアドレス信号5を受信する。メモリ
・コントローラ10は、メモリ・アドレス,メモリ・タ
イミング,および制御信号をDRAMアレイ50に与え
る一方で、メモリ消去(「SCRUB」)信号6を含む
ECDM制御信号をECDM30に与える。DRAMメ
モリ制御信号およびタイミング信号は、RAS*(行ア
ドレス・ストローブ),CAS*(カラム・アドレス・
ストローブ),WE*(書込みイネーブル)およびOE
*(出力イネーブル)を含むが、必ずしもこれらに限定
されない。これらの信号は業界では周知のものであり、
DRAMアレイを制御するのに幅広く使用される。当業
者は、周知のメモリ制御信号,タイミング信号およびア
ドレス信号を実行して、DRAMアレイ50との間で読
取および書込みを行うのに必要なメモリおよびECDM
制御論理を構築できる。
【0019】メモリ・コントローラ10は2つのプログ
ラム可能レジスタ、すなわち消去制御ビット(SCB)
レジスタ12および消去間隔タイマ(SCT)レジスタ
14を含む。SCBレジスタ12は1ビット・レジスタ
であるのに対し、SCTレジスタ14は長さが8ビッ
ト、すなわち1バイト・レジスタである。これらレジス
タは、つぎの表に従ってバースト誤り消去動作が発生す
る時間を制御する。
【0020】
【表1】 SCB0 SCB1 SCT 動作 0 0 X バースト誤り消去動作をディスエー
ブル 1 0 X バースト消去動作を1回実行 1 1 period バースト消去動作を最初に、また
タイマのSCT時間がタイムアウトするごとに実行
【0021】表1において、SCB0 は一つの時間点に
おける消去制御レジスタ12の状態を表すのに対し、S
CB1 は、SCB0 と連続する時間点における消去制御
レジスタ12のもう一つの状態を表す。表1の「X」は
SCTレジスタ14の「無視(don't care)」状態を表
す。
【0022】表1の第1行によれば、SCBレジスタ1
2がクリア状態を保持する場合には、メモリ・コントロ
ーラ10はバースト・メモリ消去動作を実行しない。こ
れは、図1に示すメモリ・コントローラ10とECDM
30との間で接続されたSCRUB*信号6が高に留ま
ることを意味する(「*」とは、能動低アサーション状
態を有する信号を示す)。表1の第2行において、SC
Bレジスタ12が設定され、ついでクリアされる場合に
は、メモリ・コントローラ10は、DRAMアレイ50
全体に対してバースト・メモリ消去動作を1回実行す
る。SCRUB*信号6は、メモリ全部が連続的に消去
されるまでクリアされ、ついで高になる。表1の第3行
によれば、SCBレジスタ12が設定され、設定状態で
保持される場合には、メモリ・コントローラ10は、D
RAMアレイ50に対してバースト・メモリ消去動作を
初めて実行する。最初のバースト・メモリ消去動作が実
行された後、メモリ・コントローラ10はまた、SCT
レジスタ14の期間がタイムアウトするたびに、バース
ト・メモリ消去動作を実行する。
【0023】SCTレジスタ14は、つぎのバースト・
メモリ消去動作が発生するまでの時間間隔を含む。たと
えば、SCBレジスタ12が設定状態で保持され、SC
Tレジスタ14が12時間と設定される場合には、メモ
リ・コントローラ10は、SCBレジスタが設定される
ときと、以後12時間ごとに、DRAMアレイ50に対
してバースト・メモリ消去動作を実行する。同様に、時
間間隔は、バースト・メモリ消去動作が24時間ごとに
実行されるように、24時間にプログラミングできる。
時間間隔を設定できるようにすることによって、システ
ムは、DRAMアレイ50へのアクセス頻度が最も少な
いとき、および通常のシステム動作にとって最も破壊的
でないときに、バースト・メモリ消去動作を実行でき
る。
【0024】図1に示すように、I2Cバス7を使用し
て、SCBレジスタ12およびSCTレジスタ14をプ
ログラムする。SDA(シリアル・データ)およびSC
L(シリアル・ロック)は、業界ではI2Cバスとして
広く知られる集積回路通信用の2線シリアル・データ伝
送バスを形成する。すなわち、I2Cバス7は、ピン効
率の高い方法により集積回路間でデータを伝送するのに
使用される業界標準プロトコルである。
【0025】I2Cバス7は、8ビット・データ値を、
ECDM30内の一時レジスタ(双方向バッファ)32
に書き込むことにより、SCB12およびSCT14レ
ジスタをプログラミングするのに使用される。ECDM
30は、I2Cバス・データ・インタフェース34を使
用してデータを直列化し、これをメモリ・コントローラ
10に伝送する。メモリ・コントローラは、データを非
直列化して、8ビット・データ値でその内部レジスタを
プログラミングする。I2Cバス7は、メモリ・コント
ローラ10にデータ・バスを付加せずに、メモリ・コン
トローラ10をプログラミングするのに使用される。し
かしながら、SCB12およびSCT14レジスタは、
データ・バスから直接プログラミングでき、これには、
メモリ・コントローラ10をデータ・バスと接続するの
にさらに多くのピンが必要である。
【0026】ECDM30はゲート・アレイ・デバイス
であり、その主たる目的は、(i)プロセッサ/ホスト
・データ・バスからデータを受け取って、受け取ったデ
ータをメモリもしくはDRAMアレイ50内に格納する
こと、(ii)DRAMアレイ50からデータを検索し
て、これをプロセッサ・データ・バスを介して伝送をす
ること、および(iii)DRAMアレイ50内の1ビ
ット・エラーを検出して訂正することである。
【0027】ECDM30は、双方向バッファ32,3
6,データ・ラッチ/データ・コレクタ38およびデー
タ・マルチプレクサ40によって構成される。双方向バ
ッファ32,36,トランスペアレント・ラッチおよび
データ・コレクタ38,およびデータ・マルチプレクサ
40は、通常幅広く使用される業界標準の論理素子であ
る。
【0028】双方向バッファ32は、プロセッサ/ホス
ト・データ・バス8と接続され、プロセッサ/データ・
バス8との間でデータの送受信を行う。双方向バッファ
32がデータを受信しているか、或いは送信しているか
は、メモリ・コントローラ10によって制御される。双
方向バッファ32はまた、データ・ラッチ/データ・コ
レクタ38と接続され、訂正されたデータを受信する。
また双方向バッファ32は、データをデータ・バス8か
らデータ・マルチプレクサ40およびI2Cバス・デー
タ・インタフェース34に伝送する。
【0029】双方向バッファ36は、DRAMアレイ5
0との間でメモリ・データとチェックビットを送受信す
る。双方向バッファ36はまた、データ・ラッチ/デー
タ・コレクタ38と接続され、DRAMアレイ50から
受信したメモリ・データおよびチェックビットを伝送す
る。データ・マルチプレクサ40は、バースト・メモリ
消去動作が能動であるか否かに応じて、訂正されたデー
タまたはデータを、プロセッサ・データ・バスから双方
向バッファ36に伝送する。
【0030】データ・ラッチ/データ・コレクタ38
は、トランスペアレント・データ・ラッチとデータ・コ
レクタの両方によって構成される。業界で広く知られる
トランスペアレント・ラッチは、DRAMアレイ50か
らデータをラッチするのに使用される記憶デバイスであ
る。トランスペアレント・ラッチは、D型フリップフロ
ップと似通っている。クロックの切り替わりに基づき、
D入力からQ出力にデータをラッチする代わりに、トラ
ンスペアレントDラッチは、制御信号(またはラッチ・
イネーブル信号)がある状態のときに、データがD入力
からQ出力に入ってこれるようにする。トランスペアレ
ント・ラッチは、メモリ・コントローラ10からの制御
信号が反対の状態に切り替わるときに、Q出力上でデー
タを凍結する。使用されるトランスペアレント・ラッチ
は、たとえば、モトローラ社製のSN54LS/74S
373でもよい。
【0031】データ・コレクタ38の誤り検出訂正回路
は、モディファイド・ハミング(Hamming) 符号として知
られる周知の業界標準の方式を採用する。アドバンスド
・マイクロ・デバイス(部品番号Am29C660)お
よびテキサス・インスツルメンツ(部品番号SN74A
S632A)は共に、たとえば、誤り検出訂正装置38
を製造する。誤り検出訂正装置は、システムを停止させ
るような1ビット・エラーを検出して訂正する。
【0032】図1に示すデータ・マルチプレクサ40
は、当業者には周知のものである。図1に示すように、
SCRUB* が低の場合には、データ・ラッチ/データ
・コレクタ38から伝送された訂正データおよびチェッ
クビットは、双方向バッファ36を介してDRAMアレ
イ50に出力される。SCRUB*が高の場合には、デ
ータ処理バスから受信されたデータが、双方向バッファ
36に伝送される。
【0033】DRAMアレイ50は、8チェック・ビッ
トで64ビットのデータの誤り検出訂正を実行する各種
業界標準DRAMデバイスによって構成される。たとえ
ば、東芝はDRAM(部品番号TCS14402)を製
造しており、これは本発明に使用できる。図1に示すよ
うに、64ビットのDRAMアレイ50の誤り検出訂正
は、一つのECDM30によって処理される。図1に示
す構成は、64データ・ビットのDRAMアレイ50を
有するが、DRAMアレイ50は、128データ・ビッ
トまたは256データ・ビットも可能である。そのた
め、DRAMアレイが256データ・ビットを有する場
合には、データは4つの64ビット・セクションに分け
られ、各64ビット・セクションの誤り検出訂正は4つ
のECDM30のうちの一つによって処理される。
【0034】64ビットのデータの二ビット誤り検出お
よび一ビット訂正を達成するには、各64ビット・ワー
ドにつき、8チェック・ビットを格納しなければならな
い。他の構成要素を使用して、メモリ・コントローラ1
0およびECDM30によって実行される機能を繰り返
すことができる。これらの構成要素は、標準TTL、ま
たはPALなどのプログラム可能な論理デバイスも可能
である。しかしながら、メモリ・コントローラ10とE
CDM30の設計とその方法を実現するには、これらM
SI(中規模の集積)デバイスが多数必要になる。これ
らの方法は、メモリ・コントローラ10およびECDM
30と似通っているカスタム・ゲート・アレイ設計で実
現される可能性が高い。
【0035】本発明の好適な実施例によりバースト・モ
ードで誤りを検出して訂正する方法を図2に示す。ステ
ップ100で、メモリ・コントローラ10は、SCBレ
ジスタ12においてSCBが設定されているか否か判断
する。SCBが、上記のI2Cバスインタフェースを介
して設定された場合には、ステップ102で、メモリ・
コントローラ10は、SCRUB*信号ラインをクリア
することにより、バースト誤り消去動作の実行を開始す
る。また、SCBがゼロすなわちクリアされた場合に
は、メモリ・コントローラ10は、自動バースト誤り消
去動作の実行をディスエーブルされ、このループはSC
Bが設定されるまで繰り返す。
【0036】ステップ102で、メモリ・コントローラ
10が、SCRUB*をクリアすることによりバースト
・メモリ消去を起動したなら、ステップ104で、メモ
リ・コントローラ10は、DRAMアレイ50の第1ア
ドレスからメモリの消去を開始する。ステップ106
で、メモリ・コントローラ10は、第1アドレスおよび
制御信号をDRAMアレイ50に伝送する。ステップ1
06で、メモリ・コントローラ10はまたECDM30
制御信号を伝送し、DRAMアレイ50に対して読取動
作が実行されたならば、双方向バッファ36がデータお
よびチェック・ビットを受信するようにする。ステップ
106において、データが双方向バッファ36でECD
M30により受信されると、ステップ108において、
ECDM30は、検索したデータおよびチェックビット
をトランスペアレント・ラッチの中に格納し、モディフ
ァイド・ハミング符号を使用して一つのビット誤りを訂
正する。上記の説明のように、ラッチング機構は業界標
準であり、データ・コレクタは、モディファイド・ハミ
ング符号として知られる業界標準方式をベースにしてい
る。
【0037】(通常の読取動作の場合のように)訂正さ
れたデータを、双方向バッファ32を介して、プロセッ
サ/ホスト・データ・バスに出力する代わりに、訂正さ
れたデータはデータ・マルチプレクサ40に送られる。
SCRUB*がアサートされる場合には、データ・マル
チプレクサ40は、双方向バッファ32というより寧
ろ、データ・ラッチ/データ・コレクタ38からデータ
を選択する。訂正されたデータはデータ・マルチプレク
サ40から双方向バッファ36に送られ、ステップ10
8において、双方向バッファは、訂正されたデータをD
RAMアレイ50に戻して書き込む。
【0038】ステップ108において、データがDRA
Mアレイ50に戻されて書き込まれた後、メモリ・コン
トローラ10は、メモリ消去がDRAMアレイ50の最
後のアドレスに対して実行された否か判断する。それが
最後のアドレスでなかった場合には、ステップ112に
おいて、メモリ・コントローラ10はアドレスをインク
リメントし、DRAMアレイ50の最後のアドレスに達
するまで、ステップ106,108,110を繰り返
す。すなわち、メモリ・コントローラ10およびECD
M30は、DRAMアレイ50の第1アドレスから始ま
ってDRAMアレイ50の最後のアドレスに至るまで、
DRAMアレイの各アドレスにつき、DRAMアレイ5
0からデータを読み取り、データを訂正し、訂正したデ
ータをDRAMアレイ50に戻して書き込むこのプロセ
スを繰り返す。このプロセスは、DRAMアレイ50全
体が消去されるまで終了しない。DRAMアレイ50全
体の消去は、DRAMアレイ50のサイズに応じて、2
〜3マイクロ秒から2〜3秒までの範囲の時間で完了す
る。
【0039】ステップ110において、DRAMアレイ
50全体がバースト消去された場合には、ステップ11
4において、メモリ・コントローラはSCBがクリアさ
れたか否か判断する。ステップ114において、SCB
がクリアされた場合には、メモリ・コントローラ10
は、表1の第2行に従って一度DRAMアレイ50全体
を消去し、図2のステップ100に戻る。ステップ11
4において、SCBが設定された場合には、ステップ1
16において、メモリ・コントローラ10は、時間間隔
がタイムアウトするまで待ってから、DRAMアレイ5
0全体に対して2度目のバースト・メモリ消去を実行す
る。
【0040】図2に示す方法に従って、バースト誤り消
去方法が実行される間、プロセッサがメモリからデータ
を要求する場合には、メモリ・コントローラ10は、該
当する制御信号,タイミング信号およびアドレス信号を
クリアして設定することにより、メモリのバースト誤り
消去の動作を一時的に停止する。SCRUB*は、通常
の読取機能もしくは書込み機能が実行されるまでクリア
される。通常のDRAM読取機能もしくは書込み機能が
実行されたなら、メモリ・コントローラ10は、再度S
CRUB*を再アサートし、バースト・メモリ消去を、
中断された箇所から続行する。
【0041】当業者は、本発明が、プログラム可能な時
間間隔でメモリ・アレイ全体に対してメモリ消去を実行
することを認識しよう。またメモリ消去は、リフレッシ
ュ・サイクルと一緒には実行されないので、システム全
体の設計,性能および処理能力を向上させる。
【0042】したがって、添付請求の範囲は、本発明の
真正の意図および範囲に属する本発明のすべての変形を
カバーすることを意図している。
【図面の簡単な説明】
【図1】本発明の好適な実施例によるバースト誤り消去
システムを示す。
【図2】本発明の好適な実施例によるバースト誤り消去
方法を示す。
【符号の説明】
5 アドレス信号 6 SCRUB*信号 7 I2Cバス 8 プロセッサ/ホスト・データバス 10 メモリ・コントローラ 12 SCBレジスタ 32 双方向バッファ 34 I2Cバス・データ・インタフェース 36 双方向バッファ 38 データ・ラッチ/データ・コレクタ 40 データ・マルチプレクサ 50 DRAMアレイ
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ユージン・エイチ・グルーンダー・ジュニ ア アメリカ合衆国テキサス州オースチン、ウ エストゲート・ブルバード8005エー

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 メモリ・エラーを連続的に検出し訂正す
    るシステムであって:データを格納するメモリ(5
    0);前記メモリ(50)に接続されて、前記メモリ
    (50)内に格納された前記データの誤りを検出し訂正
    する誤り訂正データ・マルチプレクサ(30);および
    前記マルチプレクサ(30)および前記メモリ(50)
    に接続されて、前記メモリ(50)上でバースト誤り消
    去を起動し制御するメモリ・コントローラ(10);に
    よって構成されることを特徴とするシステム。
  2. 【請求項2】 メモリ・エラーを検出し訂正するシステ
    ムであって:データを格納するメモリ(50);前記メ
    モリ(50)に接続されて、前記メモリ(50)内に格
    納された前記データの誤りを検出し訂正する誤り訂正デ
    ータ・マルチプレクサ(30);および前記マルチプレ
    クサ(30)および前記メモリ(50)に接続されて、
    プログラム可能な時間間隔で、前記メモリ(50)上で
    バースト誤り消去を起動し制御するメモリ・コントロー
    ラ(10);によって構成されることを特徴とするシス
    テム。
  3. 【請求項3】 コンピュータによってコンピュータ・プ
    ログラムの一部として実行される、メモリ(50)内に
    格納されたデータの誤りを検出し訂正する方法であっ
    て: (a)前記メモリ(50)のバースト消去が実行される
    時間間隔をプログラミングする段階;および (b)前記メモリ(50)から前記データを連続的に読
    み取り、前記データの誤りを検出し訂正し、前記訂正さ
    れたデータを前記メモリ(50)に戻して書き込むこと
    により、前記プログラムされた時間間隔で前記メモリ
    (50)のバースト消去を行う段階;によって構成され
    ることを特徴とする方法。
  4. 【請求項4】 コンピュータによってコンピュータ・プ
    ログラムの一部として実行される、メモリ(50)内に
    格納されたデータの誤りを検出し訂正する方法であっ
    て、消去制御ビットは、前記メモリ(50)のバースト
    消去を起動するのに使用され、前記方法は: (a)前記メモリ(50)のバースト消去が実行される
    時間間隔をプログラミングする段階; (b)前記消去制御ビットが設定されるときに、前記メ
    モリ(50)のバースト消去を起動する段階; (c)前記メモリ(50)から前記データを検索する段
    階; (d)前記データの誤りを検出し訂正する段階; (e)前記訂正されたデータを前記メモリ(50)に戻
    して書き込む段階; (f)前記メモリ(50)の開始アドレスから始まり、
    前記メモリ(50)の最後のアドレスで終わるまで、前
    記メモリ(50)の各アドレスにつき、段階(c)〜
    (e)を連続的に繰り返す段階;および (g)前記時間間隔で段階(b)〜(f)を繰り返す段
    階;によって構成されることを特徴とする方法。
JP6054767A 1993-03-05 1994-03-02 メモリ・エラーを検出し訂正するシステムとその方法 Pending JPH06290115A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US026668 1993-03-05
US08/026,668 US5495491A (en) 1993-03-05 1993-03-05 System using a memory controller controlling an error correction means to detect and correct memory errors when and over a time interval indicated by registers in the memory controller

Publications (1)

Publication Number Publication Date
JPH06290115A true JPH06290115A (ja) 1994-10-18

Family

ID=21833162

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6054767A Pending JPH06290115A (ja) 1993-03-05 1994-03-02 メモリ・エラーを検出し訂正するシステムとその方法

Country Status (4)

Country Link
US (1) US5495491A (ja)
EP (1) EP0614142B1 (ja)
JP (1) JPH06290115A (ja)
DE (1) DE69425600T2 (ja)

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6279128B1 (en) * 1994-12-29 2001-08-21 International Business Machines Corporation Autonomous system for recognition of patterns formed by stored data during computer memory scrubbing
US5793943A (en) * 1996-07-29 1998-08-11 Micron Electronics, Inc. System for a primary BIOS ROM recovery in a dual BIOS ROM computer system
US6292869B1 (en) 1998-08-31 2001-09-18 International Business Machines Corporation System and method for memory scrub during self timed refresh
US6480982B1 (en) * 1999-06-04 2002-11-12 International Business Machines Corporation Computer RAM memory system with enhanced scrubbing and sparing
US6560725B1 (en) * 1999-06-18 2003-05-06 Madrone Solutions, Inc. Method for apparatus for tracking errors in a memory system
US6510528B1 (en) * 1999-12-14 2003-01-21 International Business Machines Corporation Method for improving personal computer reliability for systems that use certain power saving schemes
US6832340B2 (en) * 2000-01-26 2004-12-14 Hewlett-Packard Development Company, L.P. Real-time hardware memory scrubbing
US6701480B1 (en) * 2000-03-08 2004-03-02 Rockwell Automation Technologies, Inc. System and method for providing error check and correction in memory systems
AT409562B (de) * 2001-03-16 2002-09-25 Thaller Karl Dipl Ing Verfahren und einrichtung zum testen eines speichers
US6851070B1 (en) * 2001-08-13 2005-02-01 Network Appliance, Inc. System and method for managing time-limited long-running operations in a data storage system
EP1438662A2 (en) * 2001-10-11 2004-07-21 Altera Corporation Error detection on programmable logic resources
DE10223914A1 (de) * 2002-05-29 2003-12-11 Bayer Cropscience Ag Substituierte Phenyluracile
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
US8176250B2 (en) * 2003-08-29 2012-05-08 Hewlett-Packard Development Company, L.P. System and method for testing a memory
US7346755B2 (en) * 2003-09-16 2008-03-18 Hewlett-Packard Development, L.P. Memory quality assurance
US7328377B1 (en) 2004-01-27 2008-02-05 Altera Corporation Error correction for programmable logic integrated circuits
US7257686B2 (en) * 2004-06-03 2007-08-14 International Business Machines Corporation Memory controller and method for scrubbing memory without using explicit atomic operations
US20070022244A1 (en) * 2005-07-25 2007-01-25 Honeywell International Inc. Methods and systems for refresh and error scrubbing of dynamic memory devices
US7698591B2 (en) * 2005-08-26 2010-04-13 International Business Machines Corporation Method and apparatus for ensuring data integrity in redundant mass storage systems
US20070168754A1 (en) * 2005-12-19 2007-07-19 Xiv Ltd. Method and apparatus for ensuring writing integrity in mass storage systems
US7493523B2 (en) * 2006-03-14 2009-02-17 International Business Machines Corporation Method and apparatus for preventing soft error accumulation in register arrays
GB2439968B (en) * 2006-07-07 2011-05-25 Advanced Risc Mach Ltd Memory testing
RU2450331C1 (ru) * 2011-04-05 2012-05-10 Межрегиональное общественное учреждение "Институт инженерной физики" Устройство хранения и передачи данных с исправлением одиночных ошибок в байте информации и обнаружением произвольных ошибок в байтах информации
US8990646B2 (en) 2012-05-31 2015-03-24 Hewlett-Packard Development Company, L.P. Memory error test routine
EP2738771A1 (en) * 2012-12-03 2014-06-04 Kone Corporation An apparatus and a method for memory testing by a programmable circuit in a safety critical system
US9495242B2 (en) 2014-07-30 2016-11-15 International Business Machines Corporation Adaptive error correction in a memory system
US9880900B2 (en) 2015-12-08 2018-01-30 Nvidia Corporation Method for scrubbing and correcting DRAM memory data with internal error-correcting code (ECC) bits contemporaneously during self-refresh state
US9823964B2 (en) 2015-12-08 2017-11-21 Nvidia Corporation Method for memory scrub of DRAM with internal error correcting code (ECC) bits during either memory activate and/or precharge operation
US10049006B2 (en) 2015-12-08 2018-08-14 Nvidia Corporation Controller-based memory scrub for DRAMs with internal error-correcting code (ECC) bits contemporaneously during auto refresh or by using masked write commands
KR20180081282A (ko) * 2017-01-06 2018-07-16 에스케이하이닉스 주식회사 반도체장치
CN107195329B (zh) * 2017-05-17 2024-04-02 西安紫光国芯半导体有限公司 在读操作时纠正dram中存储阵列的错误的方法以及dram

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3735105A (en) * 1971-06-11 1973-05-22 Ibm Error correcting system and method for monolithic memories
US4506362A (en) * 1978-12-22 1985-03-19 Gould Inc. Systematic memory error detection and correction apparatus and method
US4371930A (en) * 1980-06-03 1983-02-01 Burroughs Corporation Apparatus for detecting, correcting and logging single bit memory read errors
US4369510A (en) * 1980-07-25 1983-01-18 Honeywell Information Systems Inc. Soft error rewrite control system
JPS5758210A (en) * 1980-09-26 1982-04-07 Hitachi Ltd Error correction range controlling circuit
US4493081A (en) * 1981-06-26 1985-01-08 Computer Automation, Inc. Dynamic memory with error correction on refresh
GB2107496B (en) * 1981-09-30 1985-11-20 Hitachi Ltd Error flag processor
US4535455A (en) * 1983-03-11 1985-08-13 At&T Bell Laboratories Correction and monitoring of transient errors in a memory system
US4542454A (en) * 1983-03-30 1985-09-17 Advanced Micro Devices, Inc. Apparatus for controlling access to a memory
US4625301A (en) * 1983-11-30 1986-11-25 Tandy Corporation Dynamic memory refresh circuit
JPH0787034B2 (ja) * 1984-05-07 1995-09-20 株式会社日立製作所 半導体集積回路装置
JPS6432489A (en) * 1987-07-27 1989-02-02 Matsushita Electronics Corp Memory device
US4964129A (en) * 1988-12-21 1990-10-16 Bull Hn Information Systems Inc. Memory controller with error logging
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

Also Published As

Publication number Publication date
EP0614142A2 (en) 1994-09-07
DE69425600D1 (de) 2000-09-28
EP0614142A3 (en) 1997-01-08
DE69425600T2 (de) 2001-04-26
EP0614142B1 (en) 2000-08-23
US5495491A (en) 1996-02-27

Similar Documents

Publication Publication Date Title
JPH06290115A (ja) メモリ・エラーを検出し訂正するシステムとその方法
JP4317604B2 (ja) フラッシュメモリにおける書込み/消去機能を拡張するためのデータプロセシングシステム、不揮発性メモリ、および方法
US8667368B2 (en) Method and apparatus for reading NAND flash memory
US5793774A (en) Flash memory controlling system
US4380812A (en) Refresh and error detection and correction technique for a data processing system
US5490114A (en) High performance extended data out
TWI384355B (zh) 記憶體陣列錯誤校正裝置,系統及方法
US6415340B1 (en) Method and apparatus for synchronous data transfers in a memory device with selectable data or address paths
US11630786B2 (en) Non-sequential page continuous read
KR100613941B1 (ko) 커맨드당 포스트된 라이트를 갖는 메모리 장치
KR101879708B1 (ko) 통합된 데이터 마스킹, 데이터 포이즈닝, 및 데이터 버스 반전 시그널링
KR100254752B1 (ko) 메모리 확장을 위한 로직을 갖는 동기식 sram
JP2004536417A (ja) 読出及び書込動作でバースト順序が異なるアドレッシングを行うメモリデバイス
JP3875139B2 (ja) 不揮発性半導体記憶装置、そのデータ書き込み制御方法およびプログラム
US6173385B1 (en) Address generator for solid state disk drive
US6918016B1 (en) Method and apparatus for preventing data corruption during a memory access command postamble
EP1248267A2 (en) Semiconductor memory device and information processing system
JPH1145567A (ja) 半導体記憶装置
US5168558A (en) Apparatus and method for providing distributed control in a main memory unit of a data processing system
US8402233B2 (en) Method and apparatus for high throughput mass storage device interface in a microprocessor for handheld systems
EP0359232A2 (en) Computer system and method for setting recovery time
US6356976B1 (en) LSI system capable of reading and writing at high speed
TWI749598B (zh) 一種記憶體裝置及其連續讀寫方法
EP0505051A1 (en) Data storage system with intrinsic burst detection
JPS6024492B2 (ja) メモリシステム