JP3850478B2 - 高性能パリティ機能アーキテクチャーを含むディスクアレイ格納システム - Google Patents

高性能パリティ機能アーキテクチャーを含むディスクアレイ格納システム Download PDF

Info

Publication number
JP3850478B2
JP3850478B2 JP32869895A JP32869895A JP3850478B2 JP 3850478 B2 JP3850478 B2 JP 3850478B2 JP 32869895 A JP32869895 A JP 32869895A JP 32869895 A JP32869895 A JP 32869895A JP 3850478 B2 JP3850478 B2 JP 3850478B2
Authority
JP
Japan
Prior art keywords
parity
local bus
speed local
data
disk array
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP32869895A
Other languages
English (en)
Other versions
JPH08235754A (ja
Inventor
ダブリュー.スチュワート ジョン
イー.ゲイツ デニス
エイ.デコニング ロドニー
ダブリュー.リンク カーティス
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
MagnaChip Semiconductor Ltd
Original Assignee
MagnaChip Semiconductor Ltd
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 MagnaChip Semiconductor Ltd filed Critical MagnaChip Semiconductor Ltd
Publication of JPH08235754A publication Critical patent/JPH08235754A/ja
Application granted granted Critical
Publication of JP3850478B2 publication Critical patent/JP3850478B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

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/1076Parity data used in redundant arrays of independent storages, e.g. in RAID systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B20/1833Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Description

【0001】
【産業上の利用分野】
本発明はディスクアレイ格納システムに関し、特に、優れた性能をもち、同時的なデータ移動およびパリティ計算の実行ができるハードウェア型ディスクアレイコントローラに関する。
【0002】
【従来の技術】
ライド(RAID)格納システムと呼ばれる、廉価なディスクの冗長型アレイ(Redundant Array of Inexpensive Disks, RAID)は、ホストコンピューターシステムには単一の大きなディスクドライブとして見えるディスクドライブの集合体である。加えて、ディスク格納装置の容量の一部は、それ以外の容量部に格納されたユーザーデータについての冗長情報(redundant information)を格納するために利用される。万一アレイディスクメンバー(array disk member)が故障したときでも、この冗長情報によって、ディスクアレイはデータを失うことなく機能し続けることができ、かつ、故障メンバーにとって代わるアレイディスクドライブメンバー上にデータを再生させることができる。
【0003】
1987年12月にカリフォルニア大学から発行されたデイビッド・エイ・パターソン、ガース・ギブソンおよびランディー・エイチ・カッツ共著の「廉価なディスクの冗長型アレイの一例」と題する記事(No.UCB/CSD 87/391)にはいくつかのライドディスクアレイの設計例が掲載されている。ここに引用する上記記事は、ディスクアレイおよびそれらの性能、信頼性、電力消費量およびスケーラビリティ(scaleability, 縮小拡張性)の改良について、単一の大型磁気ディスクと比較して論じている。
【0004】
この記事には5種類のディスクアレイ構成が記載されている。第一レベルのライドは、データ格納のためのN個のディスクと、これらのデータディスクに書き込まれた情報のコピーを格納するための別のN個の「ミラー」ディスクとを含んでいる。ライドレベル1の書込み機能は、2つのディスクへのデータの書き込みと、第2「ミラー」ディスクによる冗長情報(すなわち第一ディスクに与えられたものと同一の情報)の受信とを必要とする。データの読み取りでは、いずれのディスクからでもデータを読み取ることができる。
【0005】
ライドレベル3のシステムは、N+1個のディスクからなるグループを1つ以上含む。各グループ内で、データの格納にN個のディスクが使用され、もう一つのディスクが冗長情報(すなわちパリティ情報)の格納に利用される。ライドレベル3の書込み機能では、各データブロックはこれをN個のデータディスクにまたがって格納すべくN個の部分に分割される。それに対応するパリティ情報は、N個のデータディスクに書き込まれたデータと専用パリティディスクに書き込まれたデータとの排他的OR積を決定することにより計算される。データが読み取られるときは、すべてのN個のデータディスクがアクセスされなければならない。パリティディスクはディスクが故障したときに情報を再構築するのに使用される。
【0006】
ライドレベル2のシステムは上記のライドレベル3のシステムに類似であるが、ディスクドライブの故障を同定するための付加的な冗長ディスクを含む。
【0007】
ライドレベル4のシステムもまたN+1個のディスクからなるグループを1つ以上含むが、この場合、N個のディスクはデータの格納に使用され、付加的ディスクはパリティ情報の格納に利用される。ライドレベル4のシステムは、保存すべきデータを複数のディスクにまたがって格納するにあたり、データが1つ以上のデータブロックからなるより大きな部分に分割される点で、ライドレベル3のシステムと異なる。書込みには依然として二つのディスク、すなわちN個のデータディスクの1つおよびパリティディスク、にアクセスすることが必要である。同様にして、読み取りオペレーションは、読み取るべきデータが各ディスク上に格納されているブロック長を超えない限り、通常はN個のデータディスクのうちの一ディスクのみにアクセスすればよい。ライドレベル3システムにおけると同様、パリティディスクはディスクの故障の際の情報の再構築に使用される。
【0008】
ライドレベル5はライドレベル4と類似しているが、データに加えてパリティ情報が各グループ内のN+1個のディスクにまたがって分配される点が異なる。各グループはN+1個のディスクを含むが、各ディスクはいくつかのデータ格納用ブロックと、いくつかのパリティ情報格納用ブロックを含む。パリティ情報がどこに格納されているかは、ユーザーが与えるアルゴリズムによって制御される。ライドレベル4システムと同様に、ライドレベル5の書込みには少なくとも二つのディスクへのアクセスが必要である。しかし、一グループへの書込であれば、ライドレベル4システムにおけるような専用パリティディスクへのアクセスをもはや必要としない。この特徴は同時的書込みオペレーションを行うの 好都合である。
【0009】
ライドレベル3におけるように、ライドレベル4あるいはレベル5のいずれにおいてもまた、N個のデータドライブにまたがって格納されたデータの対応部分についてビット毎の排他的OR積(bit-wise exclusive-OR)を行うことによりパリティデータを計算することができる。しかしながら、各パリティビットは単にデータドライブからとった対応データビットすべての排他的OR積であるから、新規パリティは次の方程式を使って旧データ、旧パリティ、および新規データから容易に決定できる:
新規パリティ=(旧データ XOR 新規データ)XOR 旧パリティ
上記の方程式に示されたライドレベル4または5に対するパリティ計算は、すべてのデータドライブにまたがって格納されたデータの諸部分のビット毎の排他的OR積を行うよりもはるかに簡単であるが、通常のライドレベル4または5の書込みオペレーションは最小限二つのディスク読取りと二つのディスク書込みとを必要とする。二つ以上のデータブロックを含むデータ書込みオペレーションには二を超えるディスクの読み取りおよび書込みが必要である。別個のディスクについて行われる各々の読み取りオペレーションには、適切なディスクトラックおよび読み取るべきセクタへのシーク(seek, 探索)および回転が関与する。それゆえ、全ディスクが対象となるシークの時間は各ディスクのシーク時間の最大値である。したがって、ライドレベル4または5のシステムは、これを単一ディスク格納デバイスあるいはライドレベル1、2または3のシステムと比較するとき、書込みの負担が顕著になる。
【0010】
読み取りおよび書き込み機能を行うためにアレイ内のディスクドライブのオペレーションを統合し、受信データをアレイディスクドライブメンバー上にマップ化し、冗長情報を発生・検査し、データの回復・再構築をするためには、複雑な格納管理技術が必要である。多くの初期ディスクアレイシステムにおいては、これらの複雑な格納管理技術を果たすのに必要なアレイ管理ソフトウェアはホストコンピューターシステム内で実行される。したがってホストシステムは、ディスクアレイに必要な多くの他の格納管理オペレーションの統合のみならず、ディスクアレイコントローラとして機能するとともに冗長情報の発生と検査を行う。
【0011】
今日使用されているほとんどのディスクアレイシステムは、自己完結型(self-contained)であり、アレイ管理ソフトウェアを実行するための専用のコントローラを含んでおり、したがってホストシステムをこれらのオペレーションの負担を軽減している。図1にはディスクアレイシステムの一つの簡単な構成ブロック図が示してある。このシステムは、ホストコンピューターシステム12とN個のディスクドライブユニットとの間のデータ転送を管理するインテリジェントアレイコントローラ100を含む。これらのN個のディスクドライブユニットの内の5個が図1でドライブAからドライブEと示されている。このアレイコントローラの中心部に、周辺コンポーネントインターコネクト(Peripheral Component Interconnect, PCI)のような高速ローカルバス102がある。ホストのSCSIインターフェース104およびSCSIバス14は、ホストコンピューターシステム12とPCIバス102との間の接続を与える。同様にして、ドライブAからドライブEまでの各ディスクドライブは、PCIバス102からSCSIドライブインターフェース(112Aないし112E)および対応するSCSIバス(114Aないし114E)に接続される。パリティ機能は、パリティ論理回路108およびローカルメモリ110によって果たされる。これらもまたそれぞれPCIバス102に接続される。このコントローラの諸コンポーネント間の通信および諸コンポーネントのオペレーションは、プロセッサメモリ118内に常駐するインストラクションに基づいてプロセッサ106により制御される。本技術分野の当業者は、図1に示すアレイコントローラおよびこのコントローラに含まれる諸コンポーネントの構成とオペレーションを直ちに理解できよう。
【0012】
ライド格納プロセスは、必要なデータ冗長性(すなわちディスクの故障に続く再構築データ)を創成するための多くのパリティ計算とデータ移動オペレーションとを必要とする。上述した図1のアレイコントローラアーキテクチャーでは、アレイ書込みオペレーション期間中の新規パリティ情報の発生あるいはアレイ故障後の再構築データを発生させるためには、ホストコンピューターシステム12、アレイドライブA いし イブE、ローカルメモリ110、およびパリティ論理回路106との間で新規データ、旧データ、再構築データ、旧パリティ情報、および新規パリティ情報の転送を行う上でPCIバス102を多用することが必要となる。
【0013】
【発明が解決しようとする課題】
それゆえ、本発明の課題はコントローラの性能を改善する新規かつ有用なディスクアレイコントローラのハードウェアアーキテクチャーを与えることである。
【0014】
本発明のもう一つの課題は、同時的なデータ移動(concurrent data move)およびパリティ計算と、時間的に独立なタスクの同時的実行とを可能にするディスクアレイコントローラアーキテクチャーを与えることである。
【0015】
本発明のさらに別の課題は、パリティの発生およびデータ再構築のオペレーションを行うための、独特のパリティ補助論理回路と専用ローカルメモリとを含んだディスクアレイコントローラを与えることである。
【0016】
本発明のさらに別の課題は、I/Oデバイスとローカルメモリ間におけるデータブロックの移動、ホストシステムとローカルメモリ間のデータブロックの移動、パリティ計算、正規アレイコントローラプロセッサメモリフェッチ(normal array controller processor memory fetch)のオペレーションを同時的に行うことを可能にする新規かつ有用なディスクアレイコントローラアーキテクチャーを与えることである。
【0017】
本発明のさらに別の課題は、ブロック移動の順待ちオペレーション(queued operation of block moves)およびパリティタスクの順待ちオペレーションをも可能にするディスクアレイコントローラアーキテクチャーを与えることである。
【0018】
【課題を解決するための手段】
前記目的を達成するべく、本発明は、ホストコンピューターシステムから受信したデータを格納すると共に格納済みデータを該ホストコンピューターシステムに提供するためのディスクアレイシステムであって、第一の高速ローカルバスと、該第一の高速ローカルバスを該ホストコンピューターシステムに接続する第一のインターフェース回路と、複数のディスクドライブメンバーと、該複数のディスクドライブメンバーを該第一の高速ローカルバスに接続する第二のインターフェース回路と、該第一の高速ローカルバスに接続されたパリティ補助論理回路と、該第一の高速ローカルバスに接続されるローカルメモリ格納装置と、該パリティ補助論理回路を該ローカルメモリ格納装置に接続する第二の高速ローカルバスと、該第一の高速ローカルバスに接続されたプロセッサと、を有し、該パリティ補助論理回路は、該第二の高速ローカルバスを介して該パリティ補助エンジンを該ローカルメモリに接続する2重ポートメモリインターフェースを有し、ディスクアレイの書込みオペレーション期間中はパリティデータの計算に必要なデータを該第二の高速ローカルバスを介して該ローカルメモリに提供すると共に、該ローカルメモリに保存されているデータを操作して該ディスクアレイ書込みオペレーション期間中のパリティを決定し、該プロセッサは、該第二の高速ローカルバスとは独立する該第一の高速ローカルバスを介して、該第一のインターフェース回路、該第二のインターフェース回路及び該パリティ補助論理回路の各回路の動作制御を、該パリティ補助論理回路の動作と同時に行うことを特徴とするディスクアレイシステムを提供するものである。
【0019】
ここに記載する実施例では、本パリティ補助論理回路は、排他的OR論理回路を含んだパリティ計算用パリティ補助エンジンと、上記第二高速ローカルバスを介して上記ローカルメモリに上記パリティ補助エンジンを接続する2重ポートメモリインターフェース(dual ported memory interface)と、上記第一高速ローカルバスに上記2重ポートメモリインターフェースを接続するインターフェース回路とを有する。この第一ローカルバスは高速PCIバスである。上記の第二バスは2重ポートメモリインターフェースである。
【0020】
このアレイコントローラアーキテクチャーは縮小拡張が可能であって、ライドモード0、3、4、および5をサポートしている。このアーキテクチャーは、高帯域パリティ計算エンジン(high bandwidth parity calculation engine)と、上記高速PCIローカルバスの速度に等しい速度(以下、全速という)で動作するバッファ付きPCIインターフェースとを含むという特徴を有する。このアーキテクチャーは、多重タスクが実行されるときにタスクが順待ちできるよう、多重プロセッシングを行うという特徴を有する。さらにこのアーキテクチャーは、128MBまでの別のローカルRAMメモリのブロックをPCIバスに付加する途を与える。この付加的ローカルメモリは、PCIオペレーションおよびパリティオペレーションが同時的に進行しうるように、2重ポート化されている。
【0021】
本発明に関する上記その他の課題、特徴および利 を、添付の図面を参照しながら実施例を通して説明する。
【0022】
【実施例】
図2に示すディスクアレイシステムは、図1に示して上述したコンポーネントの多くを含む。これらのコントローラアーキテクチャーおよびアレイシステムに共通するコンポーネントについては、図1および図2で共通の参照番号を付してある。図1および図2に示すシステムは、共通のコンポーネントとして、高速PCIバス102、ホストSCSIインターフェース104、SCSIバス14、SCSIドライブインターフェース112Aないし112E、SCSIバス114Aないし114E、デスクドライブメンバ イブA いしE プロセッサ106、およびプロセッサメモリ118を含む。
【0023】
しかしながら、図2に示すアレイコントローラアーキテクチャーは、パリティの発生とPCIバス102から受信したデータの再構築とに利用されるパリティ論理回路およびローカルメモリとが除去されているため、既知アレイコントローラアーキテクチャーより優れている。図2に示すコントローラアーキテクチャーは、独立したパリティ補助エンジン132と、2重ポートメモリインターフェース134を介して相互接続されているローカルメモリ136とを有する。高速PCIインターフェース130は、PCIバス102とローカルメモリ136との間のデータ通信を与える。
【0024】
図示するように、PCIバスインターフェース130、パリティ計算エンジン132および2重ポートメモリインターフェース134は、単一のライドパリティ補助チップ128中に一体的に集積されている。しかしこれらの三つのコンポーネントは統合された態様で独立に動作し、最小限のホストCPUサイクルを使って高速のデータ格納およびパリティ計算を行うことができる。高速ローカルバス138は、このライドパリティ補助チップをローカルメモリ136に接続する。
【0025】
ディスク書込みオペレーションの期間中は、データブロックはホストSCSIチャンネル14から受信され、ローカルメモリ136内に格納される。パリティ補助エンジン132がこのデータを読み取り、パリティ情報を計算し、それをローカルメモリ136に書き戻す。次いで最終的データブロックがローカルメモリ136から適当なディスクドライブに書き込まれる。
【0026】
デスク読み取りオペレーションは、ディスクドライブからローカルメモリ136へのデータ移動をもって開始される。このデータは次いで、当該データを再構築するのにパリティ情報が必要とされる場合を除き、ホストSCSIチャンネル14に転送される。
【0027】
このアーキテクチャー メモリ使用度 高いので、ローカルメモリ136は高帯域を得るため、72ビット幅のインターフェースで組織されている。また、このメモリは最大性能を得るためのインターリーブサイクル(interleaved cycles)をサポートしている。このメモリシステムは、ライドパリティ補助チップの全速クロック速度で動作することができる。また、経済的なダイナミックRAMを格納用に使用することができるように、レフレッシュコントロールも含まれている。停電が起きたときにメモリデータを保護するため、電力低下モード動作が設けられている。
【0028】
PCIインターフェースモジュール130は、全速PCIバス転送を行うことができる。このモジュールは、1バイトから全帯域幅までのすべてのバスモードに応答するように設計されている。このPCIモジュールは、PCIバスから受信したデータを格納するための128バイトのFIFOを含んでいる。このため、ローカルメモリが一時的に利用できないときでも、PCI転送は続行することができる。
【0029】
パリティ補助エンジン132は、ローカルメモリ136内に格納されたデータに対して演算を行うことができる。このエンジンは、128バイトFIFOを使って、一時に一バースト単位でパリティを計算し、中間結果を格納することができる。これらの中間結果はローカルメモリに書き戻しされない。最大性能を得るため、パリティ補助エンジンの制御論理回路が、必要とされる各データブロックへのポインタを維持する。このパリティエンジンはローカルバスメモリの全速で動作し、上記メモリ帯域幅にとって最大可能な速度を与える。
【0030】
このパリティ補助エンジンは、一つのタスクが実行される間、別のタスクが順待ちできるようにするための4個の別個の部分を含んでいる。タスクのスケジュールが実行中のタスクと干渉しないよう、各タスクはそれ自身のコントロール兼ステータスレジスタを維持する。本発明の本アレイ機構を実現するようにパリティエンジンを調整するには、形態上いくつかの選択ができる。このエンジンは、22+1個のドライブ幅までのアレイに演算を行う単一エンジンとして構成することができ、また4+1個のドライブ幅のアレイに演算を行う4個のエンジンマシンとして構成することができる。これらの中間の形態では、エンジンを10+1個までのドライブをもつ2エンジンマシンとすることができる。
【0031】
本パリティエンジンは、移動モードおよびゼロチェックモードのみならず、ライド5およびライド3のパリティ発生/検査モードを与える排他的OR論理回路を含む。
【0032】
このアーキテクチャーの最も重要な部分は、アーキテクチャーが時間的に独立なオペレーションを与えることである。パリティ計算のためにデータブロックに同時的にアクセスをする必要はない。いくつかのドライブにまたがるディスクオペレーションのスケジュールが立てられ、各ドライブで実行可能になり次第、実行される。関連性のないディスクオペレーションは、単一のタスクに対するオペレーションがすべてのドライブで完了していないときでも続行しうる。この独立性によって、システムの最も遅い部分であるディスクドライブの動作性能を改善することができる。またこの独立性によって、同時的なハードウェアリソース条件(concurrent hardware resource requirements)を管理するソフトウェアタスクを簡単化することができる。
【0033】
本発明は、時間的に独立なデータブロック移動、時間的に独立なパリティ計算、順待ちライドオペレーション(3個までの順待ちタスク)、全速PCI転送オペレーション(4バイト/クロックサイクル)、および全速パリティ計算(4バイト/クロックサイクル)を含むという特徴を有する。さらに、本アーキテクチャーは、付加的ライドパリティ補助チップおよびローカルメモリ格納装置を付加することによって縮小拡張が可能である。
【0034】
【効果】
以上に述べたように本発明によれば、データ緩衝用の独立なメモリ構造を有するディスクアレイコントローラアーキテクチャーと、アレイタスクの並列オペレーションを可能にする独立なパリティ計算エンジンとが与えられることが理解できよう。本発明は、CPUあるいはそのメモリとの干渉を起こすことなくパリティ計算およびメモリブロックの移動を実行することができ、その結果、CPUにアレイタスクの制御を行わせるようにCPUを解放することができる。ここに開示したアレイコントローラの形態は、格納I/Oデバイスとローカルメモリとの間のデータブロック移動オペレーション、ホストSCSI接続部とローカルメモリとの間のデータブロック移動、パリティ計算、正規のCPUメモリフェッチ、ブロック移動を行うための順待ちオペレーション、およびパリティタスクを行うための順待ちオペレーションを同時的に実行することを可能にする。
【0035】
本発明の好ましい実施例をここに開示したが、前記特許請求の範囲内で種々の設計変更をなしうることを了解されたい。
【図面の簡単な説明】
【図1】 PCIバスを利用した従来技術のディスクアレイシステムの簡単なアーキテクチャーブロック線図である。
【図2】 本発明に基づく高速PCIバスと高速動作パリティ機能アーキテクチャーを利用した改良型ディスクアレイシステムの簡単なブロック線図である。
【符号の説明】
14 SCSIバス
102 高速PCIバス
104 ホストSCSIインターフェース
106 プロセッサ
112 SCSIドライブインターフェース
114 SCSIバス
118 プロセッサメモリ
128 ライドパリティ補助チップ
130 高速PCIインターフェース
132 パリティ補助エンジン
134 2重ポートメモリインターフェース
136 ローカルメモリ
138 高速ローカルバス

Claims (6)

  1. ホストコンピューターシステムから受信したデータを格納すると共に格納済みデータを該ホストコンピューターシステムに提供するためのディスクアレイシステムであって、
    第一の高速ローカルバスと、
    該第一の高速ローカルバスを該ホストコンピューターシステムに接続する第一のインターフェース回路と、
    複数のディスクドライブメンバーと、
    該複数のディスクドライブメンバーを該第一の高速ローカルバスに接続する第二のインターフェース回路と、
    該第一の高速ローカルバスに接続されたパリティ補助論理回路と、
    該第一の高速ローカルバスに接続されるローカルメモリ格納装置と、
    該パリティ補助論理回路を該ローカルメモリ格納装置に接続する第二の高速ローカルバスと、
    該第一の高速ローカルバスに接続されたプロセッサと、を有し、
    該パリティ補助論理回路該第二の高速ローカルバスを介して該パリティ補助エンジンを該ローカルメモリに接続する2重ポートメモリインターフェースを有し、ディスクアレイ書込みオペレーション期間中はパリティデータの計算に必要なデータを該第二の高速ローカルバスを介して該ローカルメモリに提供すると共に、該ローカルメモリに保存されているデータを操作して該ディスクアレイ書込みオペレーション期間中のパリティを決定し、
    該プロセッサは、該第二の高速ローカルバスとは独立する該第一の高速ローカルバスを介して、該第一のインターフェース回路、該第二のインターフェース回路及び該パリティ補助論理回路の各回路の動作制御を、該パリティ補助論理回路の動作と同時に行うことを特徴とするディスクアレイシステム。
  2. 該パリティ補助論理回路
    パリティを計算するためのパリティ補助エンジンと、
    該第一の高速ローカルバスに該2重ポートメモリインターフェースを接続している第三のインターフェース回路と、
    を含むことを特徴とする請求項1に記載のディスクアレイシステム。
  3. 該パリティ補助エンジン、排他的OR回路を含むことを特徴とする請求項2に記載のディスクアレイシステム。
  4. ホストコンピューターシステムから受信したデータを格納すると共に格納済みデータを該ホストコンピューターシステムに提供するための複数のディスクドライブメンバーを含むディスクアレイシステム用コントローラであって、
    第一の高速ローカルバスと、
    該第一の高速ローカルバスを該ホストコンピューターシステムに接続する第一のインターフェース回路と、
    複数のディスクドライブメンバーと、
    該複数のディスクドライブメンバーを該第一の高速ローカルバスに接続する第二のインターフェース回路と、
    該第一の高速ローカルバスに接続されたパリティ補助論理回路と、
    該第一の高速ローカルバスに接続されるローカルメモリ格納装置と、
    該パリティ補助論理回路を該ローカルメモリ格納装置に接続する第二の高速ローカルバスと、
    該第一の高速ローカルバスに接続されたプロセッサと、を有し、
    該パリティ補助論理回路該第二の高速ローカルバスを介して該パリティ補助エンジ ンを該ローカルメモリに接続する2重ポートメモリインターフェースを有し、ディスクアレイ書込みオペレーション期間中はパリティデータの計算に必要なデータを該第二の高速ローカルバスを介して該ローカルメモリに提供すると共に、該ローカルメモリに保存されているデータを操作して該ディスクアレイ書込みオペレーション期間中のパリティを決定し、
    該プロセッサは、該第二の高速ローカルバスとは独立する該第一の高速ローカルバスを介して、該第一のインターフェース回路、該第二のインターフェース回路及び該パリティ補助論理回路の各回路の動作制御を、該パリティ補助論理回路の動作と同時に行うことを特徴とするディスクアレイシステム用コントローラ。
  5. 該パリティ補助論理回路
    パリティを計算するためのパリティ補助エンジンと、
    該第一の高速ローカルバスに該2重ポートメモリインターフェースを接続している第三のインターフェース回路と、
    を含むことを特徴とする請求項4に記載のディスクアレイシステム用コントローラ。
  6. 該パリティ補助エンジン、排他的OR回路を含むことを特徴とする請求項5に記載のディスクアレイシステム用コントローラ。
JP32869895A 1994-12-16 1995-12-18 高性能パリティ機能アーキテクチャーを含むディスクアレイ格納システム Expired - Lifetime JP3850478B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/357,847 US5634033A (en) 1994-12-16 1994-12-16 Disk array storage system architecture for parity operations simultaneous with other data operations
US08/357,847 1994-12-16

Publications (2)

Publication Number Publication Date
JPH08235754A JPH08235754A (ja) 1996-09-13
JP3850478B2 true JP3850478B2 (ja) 2006-11-29

Family

ID=23407284

Family Applications (1)

Application Number Title Priority Date Filing Date
JP32869895A Expired - Lifetime JP3850478B2 (ja) 1994-12-16 1995-12-18 高性能パリティ機能アーキテクチャーを含むディスクアレイ格納システム

Country Status (5)

Country Link
US (1) US5634033A (ja)
EP (1) EP0717357B1 (ja)
JP (1) JP3850478B2 (ja)
KR (1) KR100351964B1 (ja)
DE (1) DE69529728T2 (ja)

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1996037840A1 (en) * 1995-05-22 1996-11-28 Mti Technology Corporation Disk array system including a dual-ported staging memory and concurrent redundancy calculation capability
US5774641A (en) * 1995-09-14 1998-06-30 International Business Machines Corporation Computer storage drive array with command initiation at respective drives
JP2981482B2 (ja) * 1995-12-06 1999-11-22 日本アイ・ビー・エム株式会社 データ記憶システム、データ転送方法及びデータ再構成方法
US5790773A (en) * 1995-12-29 1998-08-04 Symbios, Inc. Method and apparatus for generating snapshot copies for data backup in a raid subsystem
US5937174A (en) * 1996-06-28 1999-08-10 Lsi Logic Corporation Scalable hierarchial memory structure for high data bandwidth raid applications
US5881254A (en) * 1996-06-28 1999-03-09 Lsi Logic Corporation Inter-bus bridge circuit with integrated memory port
US5835694A (en) * 1996-12-06 1998-11-10 International Business Machines Corporation Raid-configured disk drive array wherein array control occurs at the disk drive level
US6065096A (en) * 1997-09-30 2000-05-16 Lsi Logic Corporation Integrated single chip dual mode raid controller
US6134630A (en) * 1997-11-14 2000-10-17 3Ware High-performance bus architecture for disk array system
US6694475B1 (en) * 1997-12-17 2004-02-17 Matsushita Electric Industrial Co., Ltd. Magnetic disk apparatus and method of data transfer
US6631477B1 (en) * 1998-03-13 2003-10-07 Emc Corporation Host system for mass storage business continuance volumes
US6173415B1 (en) 1998-05-22 2001-01-09 International Business Machines Corporation System for scalable distributed data structure having scalable availability
US6122754A (en) * 1998-05-22 2000-09-19 International Business Machines Corporation Method and system for data recovery using a distributed and scalable data structure
US6134623A (en) * 1998-08-21 2000-10-17 International Business Machines Corporation Method and system for taking advantage of a pre-stage of data between a host processor and a memory system
US6065083A (en) * 1998-08-21 2000-05-16 International Business Machines, Inc. Increasing I/O performance through storage of packetized operational information in local memory
GB2341715A (en) * 1998-09-17 2000-03-22 Springtek Limited Magnetic disk redundant array
US6425023B1 (en) 1999-03-24 2002-07-23 International Business Machines Corporation Method and system for gathering and buffering sequential data for a transaction comprising multiple data access requests
US6449678B1 (en) 1999-03-24 2002-09-10 International Business Machines Corporation Method and system for multiple read/write transactions across a bridge system
US6502157B1 (en) 1999-03-24 2002-12-31 International Business Machines Corporation Method and system for perfetching data in a bridge system
US6286074B1 (en) 1999-03-24 2001-09-04 International Business Machines Corporation Method and system for reading prefetched data across a bridge system
US6772108B1 (en) * 1999-09-22 2004-08-03 Netcell Corp. Raid controller system and method with ATA emulation host interface
US6542945B1 (en) * 1999-09-28 2003-04-01 Intel Corporation Instant configuration of a digital device
JP2001344076A (ja) * 2000-06-05 2001-12-14 Fujitsu Ltd ディスクアレイ装置
US6792567B2 (en) * 2001-04-30 2004-09-14 Stmicroelectronics, Inc. System and method for correcting soft errors in random access memory devices
TW560678U (en) * 2001-06-15 2003-11-01 Accusys Inc Floppy disk array device having large storage capacity
US20030131167A1 (en) * 2001-12-20 2003-07-10 Rankin Linda J. Node ID discovery
KR100467102B1 (ko) * 2002-05-28 2005-01-24 (주) 그레이프테크놀로지 데이터 저장 시스템
US6941408B2 (en) * 2002-09-30 2005-09-06 Lsi Logic Corporation Bus interface system with two separate data transfer interfaces
US20040123027A1 (en) * 2002-10-03 2004-06-24 Workman Michael Lee Systems and methods of multiple access paths to single ported storage devices
US20040068591A1 (en) * 2002-10-03 2004-04-08 Workman Michael Lee Systems and methods of multiple access paths to single ported storage devices
CN1296845C (zh) * 2003-01-24 2007-01-24 华为技术有限公司 一种磁盘存储系统
US8166128B1 (en) 2003-02-28 2012-04-24 Oracle America, Inc. Systems and methods for dynamically updating a virtual volume in a storage virtualization environment
US7383381B1 (en) 2003-02-28 2008-06-03 Sun Microsystems, Inc. Systems and methods for configuring a storage virtualization environment
US7236987B1 (en) 2003-02-28 2007-06-26 Sun Microsystems Inc. Systems and methods for providing a storage virtualization environment
US7290168B1 (en) 2003-02-28 2007-10-30 Sun Microsystems, Inc. Systems and methods for providing a multi-path network switch system
JP4426261B2 (ja) * 2003-11-25 2010-03-03 株式会社日立製作所 チャネルアダプタ及びディスクアレイ装置
US8209551B2 (en) * 2008-02-15 2012-06-26 Intel Corporation Security for RAID systems
JP2009230608A (ja) * 2008-03-25 2009-10-08 Fuji Xerox Co Ltd 記憶システム、制御装置、画像形成装置、および制御プログラム
US8756371B2 (en) 2011-10-12 2014-06-17 Lsi Corporation Methods and apparatus for improved raid parity computation in a storage controller
US9086992B1 (en) 2012-06-08 2015-07-21 Digital Ordnance Storage, Inc. System and method for interconnecting storage elements

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5218689A (en) * 1988-08-16 1993-06-08 Cray Research, Inc. Single disk emulation interface for an array of asynchronously operating disk drives
AU630635B2 (en) * 1988-11-14 1992-11-05 Emc Corporation Arrayed disk drive system and method
US5206943A (en) * 1989-11-03 1993-04-27 Compaq Computer Corporation Disk array controller with parity capabilities
US5263145A (en) * 1990-05-24 1993-11-16 International Business Machines Corporation Method and means for accessing DASD arrays with tuned data transfer rate and concurrency
US5191584A (en) * 1991-02-20 1993-03-02 Micropolis Corporation Mass storage array with efficient parity calculation
US5345565A (en) * 1991-03-13 1994-09-06 Ncr Corporation Multiple configuration data path architecture for a disk array controller
US5257391A (en) * 1991-08-16 1993-10-26 Ncr Corporation Disk controller having host interface and bus switches for selecting buffer and drive busses respectively based on configuration control signals
JPH0820964B2 (ja) * 1991-09-13 1996-03-04 インターナショナル・ビジネス・マシーンズ・コーポレイション メモリ制御装置および方法
US5398253A (en) * 1992-03-11 1995-03-14 Emc Corporation Storage unit generation of redundancy information in a redundant storage array system
US5469566A (en) * 1992-03-12 1995-11-21 Emc Corporation Flexible parity generation circuit for intermittently generating a parity for a plurality of data channels in a redundant array of storage units
US5375217A (en) * 1992-03-25 1994-12-20 Ncr Corporation Method and apparatus for synchronizing disk drive requests within a disk array
US5418925A (en) * 1992-10-23 1995-05-23 At&T Global Information Solutions Company Fast write I/O handling in a disk array using spare drive for buffering
US5392244A (en) * 1993-08-19 1995-02-21 Hewlett-Packard Company Memory systems with data storage redundancy management

Also Published As

Publication number Publication date
JPH08235754A (ja) 1996-09-13
US5634033A (en) 1997-05-27
KR100351964B1 (ko) 2002-12-26
DE69529728T2 (de) 2003-11-20
DE69529728D1 (de) 2003-04-03
EP0717357B1 (en) 2003-02-26
KR960024859A (ko) 1996-07-20
EP0717357A2 (en) 1996-06-19
EP0717357A3 (en) 1997-05-28

Similar Documents

Publication Publication Date Title
JP3850478B2 (ja) 高性能パリティ機能アーキテクチャーを含むディスクアレイ格納システム
US6018778A (en) Disk array controller for reading/writing striped data using a single address counter for synchronously transferring data between data ports and buffer memory
JP3302688B2 (ja) 並列ディスク駆動機構アレイ式データ記憶サブシステム用の論理トラック書込みスケジューリングのシステム
KR100255847B1 (ko) 레이드 제어기에서의 스트라이프 기록 방법
US5499337A (en) Storage device array architecture with solid-state redundancy unit
US5720027A (en) Redundant disc computer having targeted data broadcast
US6112255A (en) Method and means for managing disk drive level logic and buffer modified access paths for enhanced raid array data rebuild and write update operations
JP3237736B2 (ja) データ記憶装置のマトリックス構造
US5598549A (en) Array storage system for returning an I/O complete signal to a virtual I/O daemon that is separated from software array driver and physical device driver
JP3129732B2 (ja) コピーバックキャッシュを有する記憶装置アレイ
JP3606881B2 (ja) 動作時にXor演算を行う高性能データ経路
KR100211788B1 (ko) 디스크 어레이의 고장 예측을 위한 데이타 처리방법및시스템
US5418925A (en) Fast write I/O handling in a disk array using spare drive for buffering
EP0907917B1 (en) Cache memory controller in a raid interface
US5289418A (en) Memory apparatus with built-in parity generation
US20020184443A1 (en) Disk array device with selectable method for generating redundant data
US5867640A (en) Apparatus and method for improving write-throughput in a redundant array of mass storage devices
US20040049632A1 (en) Memory controller interface with XOR operations on memory read to accelerate RAID operations
EP0572564A4 (ja)
JP3661205B2 (ja) ディスクアレイシステムおよびディスクアレイシステムのパリティデータの生成方法
US20050193273A1 (en) Method, apparatus and program storage device that provide virtual space to handle storage device failures in a storage system
JP2981482B2 (ja) データ記憶システム、データ転送方法及びデータ再構成方法
US5964895A (en) VRAM-based parity engine for use in disk array controller
Katz A project on high performance I/0 subsystems
JPH10312246A (ja) 記憶装置サブシステム

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20041227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050525

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20050825

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050829

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20050829

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20050905

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051125

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20060201

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20060727

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: 20060828

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060830

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: 20100908

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110908

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20110908

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120908

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130908

Year of fee payment: 7

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term