JPH08234922A - 鏡像化メモリ用エラー検出システム - Google Patents

鏡像化メモリ用エラー検出システム

Info

Publication number
JPH08234922A
JPH08234922A JP7300640A JP30064095A JPH08234922A JP H08234922 A JPH08234922 A JP H08234922A JP 7300640 A JP7300640 A JP 7300640A JP 30064095 A JP30064095 A JP 30064095A JP H08234922 A JPH08234922 A JP H08234922A
Authority
JP
Japan
Prior art keywords
data
error
memory
controller
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.)
Granted
Application number
JP7300640A
Other languages
English (en)
Other versions
JP3748117B2 (ja
Inventor
Barry J Oldfield
バリー・ジェイ・オールドフィールド
Mark D Petersen
マーク・ディー・ピーターソン
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.)
HP Inc
Original Assignee
Hewlett Packard Co
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 Hewlett Packard Co filed Critical Hewlett Packard Co
Publication of JPH08234922A publication Critical patent/JPH08234922A/ja
Application granted granted Critical
Publication of JP3748117B2 publication Critical patent/JP3748117B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1666Error detection or correction of the data by redundancy in hardware where the redundant component is memory or memory area
    • 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/1076Parity data used in redundant arrays of independent storages, e.g. in RAID systems
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1608Error detection by comparing the output signals of redundant hardware
    • G06F11/1612Error detection by comparing the output signals of redundant hardware where the redundant component is persistent storage
    • 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/74Masking faults in memories by using spares or by reconfiguring using duplex memories, i.e. using dual copies
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2211/00Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
    • G06F2211/10Indexing scheme relating to G06F11/10
    • G06F2211/1002Indexing scheme relating to G06F11/1076
    • G06F2211/109Sector level checksum or ECC, i.e. sector or stripe level checksum or ECC in addition to the RAID parity calculation

Abstract

(57)【要約】 【課題】二重制御装置ディスク記憶システム中のリアル
タイム同期鏡像化メモリ制御装置用の効果的で信頼でき
る鏡像化メモリ・データ・エラー検出システムを提供す
る。 【解決手段】本システムは、一方の制御装置のメモリか
ら第1のデータを取り出し、それとほぼ同時に、他の制
御装置の鏡像化メモリ・アドレス位置から第2のデータ
を取り出す。システムはさらに、第1のデータのエラー
と第2のデータのエラーを別々に検出し(100、10
5)、それとほぼ同時に、第1のデータおよび第2のデ
ータのそれぞれの他方に対するエラーを検出する(9
0、95)。調停論理機構(40、45)は、ミラーの
両面からの読取りを同時に行い、データ・エラー検査を
同時に行うことができるように両方の制御装置のメモリ
へのアクセスを一方の制御装置に与えることを管理す
る。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、全般的には、ディスク
記憶制御装置に関し、詳細には、二重制御装置ディスク
記憶システム中の鏡像化メモリ・データ・エラーを検出
するシステムに関する。
【0002】
【従来の技術】信頼性の高いコンピュータ・ディスク記
憶システムでは、部品の障害時のデータの喪失およびダ
ウン・タイムの可能性を減少させるために、サブシステ
ムを構成するすべての物理的部品に冗長性を有すること
が望ましい。それぞれ、それ自身のメモリを有する、二
重ディスク記憶制御装置を使用すると、ディスク記憶シ
ステムにいくつかの大きな利益が与えられる。たとえ
ば、(1)ある制御装置またはそのメモリに障害が発生
し、あるいはある制御装置またはそのメモリが失われた
場合に回復できるようにする記憶情報の冗長性が保持さ
れ、(2)二次制御装置のフェイルオーバ(failover)機
能のためにディスエーブルされた制御装置の修理が可能
であり、(3)二次制御装置が利用可能であるために、
より長いシステム・アップ時間が得られる。
【0003】このような冗長サブシステムからより高い
性能を得ることが望ましいので、キャッシングと、メモ
リを一時記憶域として使用することが一般的になってき
ている。このような重複物理メモリを同期させる手段は
困難であることがある。ある種のディスク・システム
は、待ち時間(遅延または大量の更新)プロセスを使用
してこの重複を生成するが、その手法は経費を追加する
傾向があり、管理が非常に複雑である。他の手法(本発
明で使用される方法)は、リアルタイム鏡像化メモリ・
プロセスを形成して、データの正確なこの重複を生成し
保持することである。リアルタイム同期冗長メモリ(鏡
像化メモリ)を二重制御装置で使用すると、1つの制御
装置から他の制御装置へのフェイルオーバの場合の速度
および精度が向上する。
【0004】しかし、冗長メモリをこのように使用する
と、複数ディスク記憶制御装置解決策を提供することが
ずっと難しくなる。解消すべき典型的で重大な問題に
は、(1)処理速度を減少させずに鏡像化メモリのデー
タ・エラーを効果的にかつ確実に検出するにはどうすべ
きかと、(2)データ・エラーの原因、すなわちミラー
のどちらの面が、破壊されたデータを保持しているかを
効果的にかつ確実に識別するにはどうすべきかが含まれ
る。
【0005】複数制御装置ディスク記憶システム中の鏡
像化メモリでのエラー検出に関連する前記の問題と、本
発明で取り上げないその他の問題が与えられた場合、従
来技術では一般に、複数制御装置システム中の制御装置
間で鏡像化メモリを使用することは教示されていない。
【0006】
【発明が解決しようとする課題】したがって、本発明の
目的は、二重制御装置ディスク記憶システム中のリアル
タイム同期鏡像化メモリ制御装置用の効果的で信頼でき
る鏡像化メモリ・データ・エラー検出システムを提供す
ることである。
【0007】
【課題を解決するための手段】本発明の好ましい実施例
の原則によれば、二重制御装置と、制御装置間の鏡像化
メモリとを有するディスク記憶システムのメモリ・デー
タ・エラーを確実に検出するエラー検出システムおよび
方法が開示される。このシステムおよび方法は、一方の
制御装置のメモリから第1のデータを取り出し、それと
ほぼ同時に、他方の制御装置の鏡像化メモリ・アドレス
位置から第2のデータを取り出す手段を含む。このシス
テムおよび方法はさらに、第1のデータのエラーと第2
のデータのエラーを別々に検出し、それとほぼ同時に、
第1のデータおよび第2のデータのそれぞれの他方に対
するエラーを検出する手段を含む。
【0008】本発明の他の原則によれば、第1のデータ
のエラーと第2のデータのエラーを別々に検出する手段
は、それぞれ、第1のデータおよび第2のデータに対し
てエラー訂正コード(ECC)訂正を使用する手段を含
む。さらに、第1のデータおよび第2のデータのそれぞ
れの他方に対するエラーを検出する手段は、第1のデー
タと第2のデータを比較して、一致が存在するかどうか
を判定する手段を含む。
【0009】本発明の他の原則によれば、調停手段は、
ミラーの両面からの読取りを同時に行い、データ・エラ
ー検出を同時に行うことができるように両方の制御装置
のメモリへのアクセスを一方の制御装置に与えることを
管理する。
【0010】本発明の他の目的、利点、および機能は、
説明が進むにつれてさらに明らかになろう。
【0011】
【実施例】図1は、鏡像化メモリを間に有する二重ディ
スク制御装置システム10のデータ・エラーを検出する
本発明のシステムの概要を表すブロック図である。ディ
スク記憶制御システム10は、ディスク制御装置12を
有するディスク記憶サブシステム15と、二重記憶制御
装置20および25とを含む。制御装置20および25
はそれぞれ、メモリ30とメモリ35とを有する。
【0012】大部分のタイプのランダム・アクセス・メ
モリ(RAM)は、メモリ30および35として使用す
るのに適しているが、好ましい実施例では、不揮発性R
AM(または電源バックアップを使用することによって
不揮発性になる揮発性RAM)を使用して、電源障害の
場合にデータを保持できるようにする。本発明で図示し
全般的に論じているのは、二重制御装置20および25
だけであるが、本明細書で表され意味される原則が、複
数制御装置環境、すなわち2つよりも多くの制御装置で
同様に適用できることは自明であろう。
【0013】各メモリ30および35は、鏡像化メモリ
である。当業者には周知のように、鏡像化メモリとは単
に、あるメモリ中のデータが他のメモリで重複または
「鏡像化」されることを意味する。鏡像化メモリは、本
発明では、ある制御装置のメモリ中のデータが他の制御
装置のメモリで重複または「鏡像化」されることを意味
する。二重制御装置と、各制御装置中の鏡像化メモリの
存在は、ディスク記憶システム10にフォールト・トレ
ラント環境を提供する。すなわち、一方の制御装置また
は一方の制御装置メモリに障害が発生した場合、他方の
制御装置およびそのメモリが存在することによって、連
続処理のための継ぎ目なしフェイルオーバ・オプション
が提供される。この状況では、制御装置20と制御装置
25の間で通信が行われて費用有効なリアルタイム・リ
ンクが提供され、各制御装置は、重複制御装置の状態を
監視し、活動の調和をとることができる。
【0014】好ましい実施例では、鏡像化メモリはリア
ルタイム鏡像化メモリであり、すなわち単一のマイクロ
プロセッサ・アクセスまたは直接メモリ・アクセスによ
って、メモリ30へのデータの更新とメモリ35へのデ
ータの更新がほぼ同時に行われ、あるいはメモリ30の
データの検索とメモリ35のデータの検索がほぼ同時に
行われる。調停論理機構40および45は、各制御装置
がいつ、メモリのデータを更新し、あるいは検索するた
めのアクセスを与えられるかを制御する。調停論理機構
40および45はそれぞれ、現在、どちらの制御装置が
メモリへの現アクセスを有するかが分かるように相互に
通信する。
【0015】好ましい実施例では、調停論理機構40お
よび45は、単一の時間に1つの制御装置しかメモリに
アクセスできないようにする。たとえば、調停論理機構
40は、メモリ30へのアクセスを制御装置20に与え
るとき、同様に適当な信号回線をイネーブル/ディスエ
ーブルすることによって、制御装置25のメモリ35へ
のアクセスを制御装置20に与える。これによって、制
御装置20は、両方のメモリに同時にアクセスすること
ができる。したがって、調停論理機構40がメモリ30
および35へのアクセスを制御装置20に与えるとき、
調停論理機構45は、制御装置25がどちらのメモリに
もアクセスできないようにする。
【0016】二重制御装置構成の主要な目的のうちの1
つが、ある制御装置から他の制御装置へただちにフェイ
ルオーバできるようにすることであることが与えられた
場合、動作が割り込まれずに継続するように、各制御装
置のメモリ内容は、フェイルオーバが行われる前には同
じでなければならない。したがって、本発明は、メモリ
30とメモリ35の両方からのデータのほぼ同時のリア
ルタイム検索時のデータ・エラー検出に焦点を当てる。
調停論理機構40および45によって、制御装置が両方
のメモリにアクセスするとき、30およびメモリ35の
一方から第1のデータが取り出され、それと同時に、メ
モリ30およびメモリ35のうちの他方から第2のデー
タが取り出される。第1および第2のデータはそれぞ
れ、メモリ30および35の鏡像化アドレス位置から検
索される。第1および第2のデータは、単一データ・ビ
ット(バイト)を備えることも、あるいは複数データ・
ビット(バイト)を備えることもできる。
【0017】第1および第2のデータは、取り出された
直後に、エラー訂正コード(ECC)100および10
5を実施することによってエラーがないかどうかを別々
にかつ独立に検査される。また、これとほぼ同時に、第
1のデータと第2のデータが相互に比較され、それらの
データの間にエラーが発生しているかどうかが判定され
る(90および95)。エラーが検出されなかった場
合、アクセスは正常に進行し、データ値が一致する場
合、比較プロセスはアクセス時間に影響を及ぼさない。
しかし、ECC検査または比較検査によってエラーが検
出された場合、制御プロセッサにエラーを通知するよう
に信号線(ビット)がセットされる。この3つの別々の
エラー検査が与えられた場合、エラーの原因はほぼ判定
することができる(すなわちミラーのどちらの面がデー
タ破壊されているかを判定することができる)。したが
って、次いで、エラーに応じて適当な処置をとることが
でき、そのためメモリ・システムの信頼性が増大する。
【0018】次に図2を参照すると、本発明のシステム
のさらに詳細な概略ブロック図が示されている。図1と
図2の間の類似の構成要素は、類似の参照符号を保持す
る。したがって、各制御装置20および25は全般的に
参照され、各鏡像化メモリ30および35は、好ましい
実施例で使用される不揮発性ダイナミック・ランダム・
アクセス・メモリ(NVDRAM)として参照され、調
停論理機構40および45、ECC回路100および1
05、ならびに比較回路90および95はすべて、図1
と同様に参照されている。説明を簡単にするために、N
VDRAM制御装置50および55は、本明細書ではD
RAM制御装置として参照する。すべての方向矢印は、
通信またはデータ転送、あるいはその両方の経路を示
す。
【0019】各制御装置20および25は、それぞれの
回路を全体的に支配する制御装置自体の内部クロック
(図示せず)を有する。図1に関して前記で述べたよう
に、調停論理機構40および45は、どちらの制御装置
がメモリ30および35へのアクセスを与えられるか
と、どちらの制御装置が前記メモリにアクセスすること
をディスエーブルされるかを制御する。調停論理機構4
0および45はそれぞれ、相互に通信し、DRAM制御
装置50および55、バッファ60および65、制御ト
ランシーバ70および75、ならびにデータ・トランシ
ーバ80および85と通信する。
【0020】当技術分野で一般的であるように、DRA
M制御装置50および55は、RowAddress Select(RA
S)、Column Address Select(CAS)、Write Enabl
e(WE)、Output Enable(OE)など、それぞれDR
AM30および35の適当なアドレスにアクセスするた
めのタイミング・制御論理信号を管理し生成する。バッ
ファ60および65は、それぞれDRAM30および3
5へのアクセスに関して各DRAM制御装置50および
55をイネーブル/ディスエーブルするDRAM制御装
置バッファである。
【0021】制御トランシーバ70および75は、
(1)他の(リモート)制御装置のメモリにアクセスす
るためにコンピュータ・システムのバックプレーン78
へのアドレス信号をドライブし、あるいは(2)ローカ
ル制御装置のメモリにアクセスするためにバックプレー
ンを介してリモート制御装置からアドレス信号を受け取
る、ローカル制御装置(すなわちトランシーバが存在す
る制御装置)用の二方向トランシーバ・バッファであ
る。同様に、データ・トランシーバ80および85は、
(1)リモート制御装置に送信すべきバックプレーン7
8へのデータ信号をドライブし、あるいは(2)バック
プレーンを介してリモート制御装置からデータ信号を受
け取る、ローカル制御装置用の二方向トランシーバ・バ
ッファである。
【0022】ECC論理機構100および105は、そ
れぞれのDRAMブロック30および35から読み取ら
れたデータに対してすべてのECC検査および訂正を実
行する。ECC論理機構は最初、DRAMに書き込まれ
るデータ(ビット)に基づいて検査ビットを生成する。
この検査ビットは、書込みが実行されたときにデータ・
ビットと共にDRAMに記憶される。DRAM読取りア
クセス時に、検査ビットは、データ(ビット)と共に読
み取られ、再計算された検査ビット(すなわち、データ
が最初、DRAMに書き込まれたときに記憶された検査
ビットと比較され、読み取られたデータから再計算され
た検査ビット)と比較される。ECC論理機構は、記憶
されている検査ビットを、再計算された検査ビットと比
較することによって、すべての単一ビット・エラーを検
出し訂正することができ、すべての2ビット・エラーを
検出することができる。2ビットよりも多いビットのエ
ラーが検出されることは保証されない。エラーが検出さ
れた場合、そのようなエラーを管理するプロセッサまた
は論理機構(本発明では、DRAM制御装置50および
55)を通知するように適当な信号線(ビット)11
0、115、120、125がセットされる。
【0023】さらに、ECC論理機構100および10
5に関するデータ信頼性を増大させるために、比較回路
90および95はそれぞれ、DRAM30および35か
ら読み取られた第1のデータと第2のデータの十分な比
較を実行する。ECC論理機構では複数ビット・エラー
は検出されないので、比較回路90および95を使用し
て、各制御装置上に記憶されているデータが同じである
かどうかが判定される。基本的に、第1のデータと第2
のデータが比較されて、一致(すなわち、鏡像化による
もの)が存在するかどうかが判定され、あるいは一方の
データのエラーを示す不一致が存在するかどうかが判定
される。データを相互に比較することによって、任意の
数のビットのすべてのエラーが検出される。
【0024】本発明の1つの新規の態様は、ECCエラ
ー検出が、各制御装置上で、その制御装置から読み取ら
れたデータに対して別々に行われ、それとほぼ同時に、
鏡像化メモリの両面から読み取られた同じデータが相互
に比較されることである。比較のための余分のクロック
・サイクルは必要とされず、システムの全体的な信頼性
が増大する。さらに、エラー信号ビット設定が与えられ
た場合、一般に、ミラーのどちらの面からエラーが発生
したかを検出することができる。
【0025】図2の動作は、図3に示した説明的な例に
よって最もよく説明することができる。図3は、図2の
方向矢印が、制御装置20による鏡像化メモリからの読
取り時のデータ・エラーを検出するための通信およびデ
ータ転送の実際の方向経路を示す一方向矢印と置換され
ていることを除き、図2と同じである。
【0026】制御装置20が読取りを開始した場合、D
RAM制御装置50は、それ自体の調停論理機構40へ
の要求をアサートする。調停論理機構40は次いで、要
求状態に入り、制御装置25の調停論理機構45がスレ
ーブ状態に入るのを待つ。要求状態とは、(この例で
は)ローカル調停論理機構40が、リモート調停論理機
構45がリモートDRAM35へのアクセスを制御装置
20に与えるのを待つ状態である。スレーブ状態とは、
調停論理機構45が、(この例では)DRAM制御装置
バッファ65をディスエーブルしてDRAM35へのア
クセスを制御装置20に与える状態である。
【0027】さらに具体的には、制御装置25のDRA
M制御装置55は、メモリを使用する(読取りまたは書
込み)サイクルを完了したとき、調停論理機構45への
制御装置自体の要求を削除し、スレーブ状態に入る。調
停論理機構45は、スレーブ状態に入った後、バッファ
65から先へ進む(バッファ65の先を指す)方向矢印
ががなくなることによって示されるように、DRAM制
御装置バッファ65をディスエーブルする。また、調停
論理機構45は、方向矢印73および77によって示さ
れるようにバックプレーン78からDRAM35へアド
レス信号をドライブするように制御トランシーバ75を
セットし、方向矢印87および83によって示されるよ
うにDRAM35からバックプレーン78へデータをド
ライブするようにデータ・トランシーバ85をセットす
る。
【0028】調停論理機構40は、制御装置20がメモ
リ30とメモリ35の両方へのアクセスを許可されるマ
スタ状態に入ることによって、これに肯定応答する。調
停論理機構40は、方向矢印62によって示されるよう
に調停論理機構自体のローカルDRAM制御装置バッフ
ァ60をイネーブルし、方向矢印73によって示される
ように制御装置20からバックプレーン78へドライブ
するように制御トランシーバ70をセットし、データ・
トランシーバ80から先へ進む(データ・トランシーバ
80の先を指す)方向矢印ががなくなることによって示
されるように、データ・トランシーバ80をディスエー
ブルする。
【0029】次に、DRAM制御装置50は、方向矢印
64によって示されるように、DRAM制御装置自体の
DRAM30にアクセスするように行アドレス信号およ
びOE信号をドライブし、方向矢印66、73、77に
よって示されるように、制御装置20のDRAM35に
アクセスするように制御トランシーバ70および75を
介して前記信号をドライブすることによって、DRAM
読取りサイクルを実行する。それぞれのDRAMアレイ
30および35から読み取られたデータを適切に検査す
るために、制御装置50は自身のECC論理機構100
をイネーブルし、制御装置55は自身のECC論理機構
105をイネーブルする。次いで、RASがアサートさ
れて列アドレスがドライブされ、CASが同様にアサー
トされて適当な第1のデータがDRAM30から読み取
られ(方向矢印74によって示される)、それとほぼ同
時に、第2のデータがDRAM35から読み取られる
(方向矢印87および83によって示される)。DRA
M30および35からのデータのこの読取りが、鏡像化
アドレス位置、すなわち同じ「鏡像化」データを保持す
るアドレス位置からのデータの取出しであることは自明
である。
【0030】第1のデータは、DRAM30から読み取
られ、エラー検査および訂正のためにECC論理機構1
00を介して処理される。同様に、第2のデータは、D
RAM35から読み取られ、エラー検査および訂正のた
めにECC論理機構105を介して処理される。各場合
では、ECC検査は、読取り中のデータに関連する検査
ビットを読み取ることによって行われる。すなわち、検
査ビットは最初、データが最初にDRAMに書き込まれ
たときにそのデータから計算され、その検査ビットは、
データ自体と共にDRAMに記憶された。したがって、
データの読取りサイクル中に、記憶されている検査ビッ
トが読み取られ、新たに再計算された検査ビット(すな
わち新たにデータを読み取ることから作成された検査ビ
ット)と比較される。差異が存在する場合、訂正が行わ
れ(可能なら)、適当なエラー信号(状況ビット)が、
その後のエラー処理のためにラッチされる。たとえば、
ECC論理機構100中の第1のデータに関して訂正可
能なエラーが検出された場合、そのエラーは訂正され、
訂正可能信号線110(状況ビット)が、適当な制御論
理機構に通知するようにセットされる。一方、ECC論
理機構105中の第2のデータに関して訂正不能なエラ
ーが検出された場合、訂正不能信号線125(状況ビッ
ト)がセットされる。
【0031】ECC検査とほぼ同時に、DRAM35の
第2のデータは(その検査ビットと共に)データ・トラ
ンシーバ85およびバックプレーン78を介して制御装
置20の比較論理機構90に渡される。データ・トラン
シーバ80はディスエーブルされ、DRAM30から
(検査ビットと共に)読み取られた第1のデータとDR
AM35から読み取られた第2のデータとの衝突はなく
なる。DRAM30からの第1のデータとDRAM35
からの第2のデータは共に、制御装置20の比較論理機
構90に渡すことができる。比較論理機構90は、第1
のデータと第2のデータを比較して、一致が存在するか
どうかを判定する。一致が存在する場合、処理は正常に
継続する。これに対して、一致が存在しない場合、不一
致信号線130(状況ビット)が、適当な制御論理機構
にエラーを通知するようにセットされる。
【0032】要するに、ECC論理機構100および1
05は、読取りサイクル中に論理機構を通過するそれぞ
れのローカル・データにデータ・エラーがあるかどうか
を別々にかつ独立に検査する。これとほぼ同時に、デー
タが、(この図3の例では)比較論理機構90で比較さ
れて、ECC論理機構100および105では検出され
ない複数のビット・エラーが捕捉される。各ECC・比
較検査では、処理中に、エラーを検出した時点で適当な
状況ビットがセットされる。読取りサイクルの終りに、
DRAM制御装置50は、ECCおよび比較論理機構か
ら得た状況ビットを検査し、いずれかがエラーをラッチ
しているかどうかを調べて、エラー(もしあれば)を適
切に処理する。
【0033】上記では、鏡像化メモリを間に有する二重
ディスク記憶制御装置のデータ・エラーを検出するシス
テムおよび方法の好ましい実施例に関して説明した。本
発明が、鏡像化メモリ二重制御装置システムで信頼性を
増大させる強力なツールを提供することは明らかであ
る。さらに、当業者には、当技術分野に存在する様々な
ハードウェア・プラトフォームおよびソフトウェア・ツ
ールのうちのどれを使用しても本発明が容易に実施され
ることが自明であろう。本発明を特定の実施例に関して
説明したが、本発明の真の趣旨および範囲から逸脱せず
に実施態様または修正例の他の代替実施例および方法を
使用できることは自明であろう。
【0034】以上、本発明の実施例について詳述した
が、以下、本発明を各実施態様毎に列挙する。 (1). 複数のディスク制御装置を有するコンピュー
タ・ディスク記憶制御システム用のデータ・エラー検出
システムにおいて、(a)各制御装置上のメモリが、他
の制御装置メモリに対してほぼ鏡像化されたメモリであ
る、複数の制御装置のそれぞれの自身のメモリと、
(b)1つの制御装置のメモリから第1のデータを取り
出し、それとほぼ同時に、他の制御装置のうちの1つの
メモリから第2のデータを取り出す手段と、(c)第1
のデータのエラーと第2のデータのエラーを別々に検出
する手段と、(d)第1のデータのエラーと第2のデー
タのエラーを別々に検出するのとほぼ同時に、第1のデ
ータおよび第2のデータのそれぞれの他方に対するエラ
ーを検出する手段とを有することを特徴とするシステ
ム。 (2). 調停手段が、1つの制御装置に、(a)第1
のデータが取り出される前記制御装置のメモリへのアク
セスと、(b)第2のデータが取り出される他の制御装
置のうちの1つのメモリへのアクセスをほぼ同時に与え
る手段を有することを特徴とする(1)に記載のシステ
ム。 (3). 第1のデータのエラーと第2のデータのエラ
ーを別々に検出する手段が、それぞれ第1のデータおよ
び第2のデータに対してエラー訂正コード(ECC)訂
正を使用する手段を有することを特徴とする(1)に記
載のシステム。 (4). 第1のデータおよび第2のデータのそれぞれ
の他方に対するエラーを検出する手段が、第1のデータ
と第2のデータを比較して、一致が存在するかどうかを
判定する手段を有することを特徴とする(1)に記載の
システム。 (5). 前記システムにおいて、(a)第1のデータ
と第2のデータの比較から得た比較結果に基づき、
(b)第1のデータおよび第2のデータのそれぞれから
別々に得たECC結果に基づいて、エラー検出を通知す
る手段を有することを特徴とする(1)に記載のシステ
ム。 (6). それぞれ、他の制御装置メモリに対してほぼ
鏡像化されたメモリを有する、複数のディスク制御装置
を有するコンピュータ・ディスク記憶制御システムのエ
ラーを検出する方法において、(a)1つの制御装置の
メモリから第1のデータを取り出し、それとほぼ同時
に、他の制御装置のうちの1つのメモリから第2のデー
タを取り出すステップと、(b)第1のデータのエラー
と第2のデータのエラーを別々に検出するステップと、
(c)第1のデータのエラーと第2のデータのエラーを
別々に検出するのとほぼ同時に、第1のデータおよび第
2のデータのそれぞれの他方に対するエラーを検出する
ステップとを有することを特徴とする方法。 (7). 前記制御装置のメモリへのアクセスを1つの
制御装置に与えることが、1つの制御装置に、(a)第
1のデータが取り出される前記制御装置のメモリへのア
クセスと、(b)第2のデータが取り出される他の制御
装置のうちの1つのメモリへのアクセスをほぼ同時に与
えることを特徴とする(6)に記載の方法。 (8). 前記第1のデータのエラーと第2のデータの
エラーを別々に検出するステップが、それぞれ第1のデ
ータおよび第2のデータに対してエラー訂正コード(E
CC)訂正を使用することを特徴とする(6)に記載の
方法。 (9). 前記第1のデータおよび第2のデータのそれ
ぞれの他方に対するエラーを検出するステップが、第1
のデータと第2のデータを比較して、一致が存在するか
どうかを判定することを特徴とする(6)に記載の方
法。 (10). 前記方法が、(a)第1のデータと第2の
データの比較から得た比較エラーと、(b)第1のデー
タおよび第2のデータのそれぞれから別々に得たECC
エラーを通知することによってエラー検出を通知するス
テップを有することを特徴とする(6)に記載の方法。
【0035】
【発明の効果】以上のように、本発明を用いると、二重
制御装置と、制御装置間の鏡像化メモリとを有するディ
スク記憶システムのメモリ・データ・エラーを確実に検
出するエラー検出システムおよび方法を提供することが
できる。本発明によるシステムおよび方法は、一方の制
御装置のメモリから第1のデータを取り出し、それとほ
ぼ同時に、他方の制御装置の鏡像化メモリ・アドレス位
置から第2のデータを取り出すことができ、さらに、第
1のデータのエラーと第2のデータのエラーを別々に検
出し、それとほぼ同時に、第1のデータおよび第2のデ
ータのそれぞれの他方に対するエラーを検出することも
できる。
【0036】第1のデータのエラーと第2のデータのエ
ラーを別々に検出する手段は、それぞれ、第1のデータ
および第2のデータに対してエラー訂正コード(EC
C)訂正を使用することができ、さらに、第1のデータ
および第2のデータのそれぞれの他方に対するエラーを
検出する手段は、第1のデータと第2のデータを比較し
て、一致が存在するかどうかを判定することができる。
【0037】調停手段は、ミラーの両面からの読取りを
同時に行い、データ・エラー検出を同時に行うことがで
きるように両方の制御装置のメモリへのアクセスを一方
の制御装置に与えることを管理することができる。
【図面の簡単な説明】
【図1】鏡像化メモリを間に有する二重ディスク記憶制
御装置システムのデータ・エラーを検出する本発明のシ
ステムの概要を示すブロック図である。
【図2】本発明のより詳細な概略ブロック図である。
【図3】本発明の原則によって鏡像化メモリからの読取
り時にデータ・エラーを検出する通信およびデータ転送
の一方向経路が示された図2の概略ブロック図である。
【符号の説明】
10:二重ディスク制御装置システム 12:ディスク制御装置 15:ディスク記憶サブシステム 20、25:二重記憶制御装置 30、35:メモリ 40、45:調停論理機構 90、95:比較回路 100、105:ECC回路

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】複数のディスク制御装置を有するコンピュ
    ータ・ディスク記憶制御システム用のデータ・エラー検
    出システムにおいて、 (a)各制御装置上のメモリが、他の制御装置メモリに
    対してほぼ鏡像化されたメモリである、複数の制御装置
    のそれぞれの自身のメモリと、 (b)1つの制御装置のメモリから第1のデータを取り
    出し、それとほぼ同時に、他の制御装置のうちの1つの
    メモリから第2のデータを取り出す手段と、 (c)第1のデータのエラーと第2のデータのエラーを
    別々に検出する手段と、 (d)第1のデータのエラーと第2のデータのエラーを
    別々に検出するのとほぼ同時に、第1のデータおよび第
    2のデータのそれぞれの他方に対するエラーを検出する
    手段とを有することを特徴とするシステム。
  2. 【請求項2】調停手段が、1つの制御装置に、 (a)第1のデータが取り出される前記制御装置のメモ
    リへのアクセスと、 (b)第2のデータが取り出される他の制御装置のうち
    の1つのメモリへのアクセスをほぼ同時に与える手段を
    有することを特徴とする請求項1に記載のシステム。
  3. 【請求項3】第1のデータのエラーと第2のデータのエ
    ラーを別々に検出する手段が、それぞれ第1のデータお
    よび第2のデータに対してエラー訂正コード(ECC)
    訂正を使用する手段を有することを特徴とする請求項1
    に記載のシステム。
  4. 【請求項4】第1のデータおよび第2のデータのそれぞ
    れの他方に対するエラーを検出する手段が、第1のデー
    タと第2のデータを比較して、一致が存在するかどうか
    を判定する手段を有することを特徴とする請求項1に記
    載のシステム。
  5. 【請求項5】前記システムにおいて、 (a)第1のデータと第2のデータの比較から得た比較
    結果に基づき、 (b)第1のデータおよび第2のデータのそれぞれから
    別々に得たECC結果に基づいて、 エラー検出を通知する手段を有することを特徴とする請
    求項1に記載のシステム。
  6. 【請求項6】それぞれ、他の制御装置メモリに対してほ
    ぼ鏡像化されたメモリを有する、複数のディスク制御装
    置を有するコンピュータ・ディスク記憶制御システムの
    エラーを検出する方法において、 (a)1つの制御装置のメモリから第1のデータを取り
    出し、それとほぼ同時に、他の制御装置のうちの1つの
    メモリから第2のデータを取り出すステップと、 (b)第1のデータのエラーと第2のデータのエラーを
    別々に検出するステップと、 (c)第1のデータのエラーと第2のデータのエラーを
    別々に検出するのとほぼ同時に、第1のデータおよび第
    2のデータのそれぞれの他方に対するエラーを検出する
    ステップとを有することを特徴とする方法。
  7. 【請求項7】前記制御装置のメモリへのアクセスを1つ
    の制御装置に与えることが、1つの制御装置に、 (a)第1のデータが取り出される前記制御装置のメモ
    リへのアクセスと、 (b)第2のデータが取り出される他の制御装置のうち
    の1つのメモリへのアクセスをほぼ同時に与えることを
    特徴とする請求項6に記載の方法。
  8. 【請求項8】前記第1のデータのエラーと第2のデータ
    のエラーを別々に検出するステップが、それぞれ第1の
    データおよび第2のデータに対してエラー訂正コード
    (ECC)訂正を使用することを特徴とする請求項6に
    記載の方法。
  9. 【請求項9】前記第1のデータおよび第2のデータのそ
    れぞれの他方に対するエラーを検出するステップが、第
    1のデータと第2のデータを比較して、一致が存在する
    かどうかを判定することを特徴とする請求項6に記載の
    方法。
  10. 【請求項10】前記方法が、 (a)第1のデータと第2のデータの比較から得た比較
    エラーと、 (b)第1のデータおよび第2のデータのそれぞれから
    別々に得たECCエラーを通知することによってエラー
    検出を通知するステップを有することを特徴とする請求
    項6に記載の方法。
JP30064095A 1994-10-25 1995-10-25 鏡像化メモリ用エラー検出システム Expired - Fee Related JP3748117B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US32955694A 1994-10-25 1994-10-25
US329,556 1994-10-25

Publications (2)

Publication Number Publication Date
JPH08234922A true JPH08234922A (ja) 1996-09-13
JP3748117B2 JP3748117B2 (ja) 2006-02-22

Family

ID=23285961

Family Applications (1)

Application Number Title Priority Date Filing Date
JP30064095A Expired - Fee Related JP3748117B2 (ja) 1994-10-25 1995-10-25 鏡像化メモリ用エラー検出システム

Country Status (3)

Country Link
EP (1) EP0709782B1 (ja)
JP (1) JP3748117B2 (ja)
DE (1) DE69508034T2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002288048A (ja) * 2001-03-28 2002-10-04 Nippon Signal Co Ltd:The ワンチップマイクロコントローラ及びそのシステム
JP2006260160A (ja) * 2005-03-17 2006-09-28 Fujitsu Ltd 二重化記憶装置及び二重化記憶装置の制御方法
JP2007518166A (ja) * 2003-12-31 2007-07-05 サンディスク コーポレイション フラッシュメモリシステムの起動動作

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6938124B2 (en) 2002-07-19 2005-08-30 Hewlett-Packard Development Company, L.P. Hardware assisted communication between processors
US7873803B2 (en) 2007-09-25 2011-01-18 Sandisk Corporation Nonvolatile memory with self recovery
EP2294580B1 (en) 2008-06-20 2014-04-02 Freescale Semiconductor, Inc. Memory system with redundant data storage and error correction
US9152511B2 (en) 2008-06-20 2015-10-06 Freescale Semiconductor, Inc. System for dynamically distributing an available memory resource to redundant and non-redundant storage areas using RAM routing logic
US8634240B2 (en) 2009-10-28 2014-01-21 SanDisk Technologies, Inc. Non-volatile memory and method with accelerated post-write read to manage errors
US20130031431A1 (en) * 2011-07-28 2013-01-31 Eran Sharon Post-Write Read in Non-Volatile Memories Using Comparison of Data as Written in Binary and Multi-State Formats
US8750042B2 (en) 2011-07-28 2014-06-10 Sandisk Technologies Inc. Combined simultaneous sensing of multiple wordlines in a post-write read (PWR) and detection of NAND failures
US8566671B1 (en) 2012-06-29 2013-10-22 Sandisk Technologies Inc. Configurable accelerated post-write read to manage errors
US20140052906A1 (en) * 2012-08-17 2014-02-20 Rambus Inc. Memory controller responsive to latency-sensitive applications and mixed-granularity access requests
US9213601B2 (en) 2013-12-03 2015-12-15 Sandisk Technologies Inc. Adaptive data re-compaction after post-write read verification operations

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0306211A3 (en) * 1987-09-04 1990-09-26 Digital Equipment Corporation Synchronized twin computer system
GB8815239D0 (en) * 1988-06-27 1988-08-03 Wisdom Systems Ltd Memory error protection system
ATE172038T1 (de) * 1992-06-05 1998-10-15 Compaq Computer Corp Plattenantriebsteuergerät mit nachschreibcachespeicher

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002288048A (ja) * 2001-03-28 2002-10-04 Nippon Signal Co Ltd:The ワンチップマイクロコントローラ及びそのシステム
JP4748871B2 (ja) * 2001-03-28 2011-08-17 日本信号株式会社 ワンチップマイクロコントローラシステム
JP2007518166A (ja) * 2003-12-31 2007-07-05 サンディスク コーポレイション フラッシュメモリシステムの起動動作
US7962777B2 (en) 2003-12-31 2011-06-14 Sandisk Corporation Flash memory system startup operation
JP4933268B2 (ja) * 2003-12-31 2012-05-16 サンディスク コーポレイション フラッシュメモリシステムの起動動作
JP2006260160A (ja) * 2005-03-17 2006-09-28 Fujitsu Ltd 二重化記憶装置及び二重化記憶装置の制御方法
JP4667093B2 (ja) * 2005-03-17 2011-04-06 富士通株式会社 二重化記憶装置及び二重化記憶装置の制御方法

Also Published As

Publication number Publication date
DE69508034D1 (de) 1999-04-08
EP0709782A2 (en) 1996-05-01
JP3748117B2 (ja) 2006-02-22
DE69508034T2 (de) 1999-08-19
EP0709782A3 (ja) 1996-06-12
EP0709782B1 (en) 1999-03-03

Similar Documents

Publication Publication Date Title
US5887270A (en) Fault tolerant controller system and method
US5724501A (en) Quick recovery of write cache in a fault tolerant I/O system
US5802561A (en) Simultaneous, mirror write cache
US7257682B2 (en) Synchronizing memory copy operations with memory accesses
US20040153727A1 (en) Method and apparatus for recovering redundant cache data of a failed controller and reestablishing redundancy
US20020144210A1 (en) SDRAM address error detection method and apparatus
US20020124129A1 (en) Method for using RAM buffers with multiple accesses in flash-based storage systems
US20110047440A1 (en) Systems and Methods to Respond to Error Detection
JPH08249130A (ja) 障害検出システム
JP2000112830A (ja) メモリシステム、コンピュ―タシステムおよびデ―タ・ブロック中のビットエラ―を訂正する方法
JP3748117B2 (ja) 鏡像化メモリ用エラー検出システム
US7076686B2 (en) Hot swapping memory method and system
JP2000181887A (ja) 情報処理装置における障害処理方法及び記憶制御装置
CN104798059A (zh) 在检查点外部处理写入数据的多个计算机系统
JP2001249911A (ja) データ転送方法及びデータ処理システム
US5953265A (en) Memory having error detection and correction
US6950907B2 (en) Enhanced protection for memory modification tracking with redundant dirty indicators
CN110147343B (zh) 一种全比较的Lockstep处理器架构
GB2369692A (en) A fault tolerant computer with a bridge allowing direct memory access (DMA) between main memories of duplicated processing sets
JPH0594377A (ja) パリテイ検出回路
JPH03182958A (ja) 再同期時のバルクメモリ転送
US6981172B2 (en) Protection for memory modification tracking
US6249878B1 (en) Data storage system
US11726864B2 (en) Data processing device and data processing method
JP2006178795A (ja) Dma回路及びこれを用いたディスクアレイ装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050428

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050510

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20050809

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20050812

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20051122

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20051124

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091209

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101209

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees