JP4364650B2 - データ記憶システム - Google Patents

データ記憶システム Download PDF

Info

Publication number
JP4364650B2
JP4364650B2 JP2003580998A JP2003580998A JP4364650B2 JP 4364650 B2 JP4364650 B2 JP 4364650B2 JP 2003580998 A JP2003580998 A JP 2003580998A JP 2003580998 A JP2003580998 A JP 2003580998A JP 4364650 B2 JP4364650 B2 JP 4364650B2
Authority
JP
Japan
Prior art keywords
director
memory
directors
board
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.)
Expired - Lifetime
Application number
JP2003580998A
Other languages
English (en)
Other versions
JP2005528675A (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.)
EMC Corp
Original Assignee
EMC 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
Priority claimed from US10/112,598 external-priority patent/US6877061B2/en
Priority claimed from US10/109,583 external-priority patent/US6907483B1/en
Application filed by EMC Corp filed Critical EMC Corp
Publication of JP2005528675A publication Critical patent/JP2005528675A/ja
Application granted granted Critical
Publication of JP4364650B2 publication Critical patent/JP4364650B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/084Multiuser, multiprocessor or multiprocessing cache systems with a shared cache

Description

本発明は、一般的にデータ記憶システムに関し、より詳しくは、冗長機構を有するデータ記憶システムであって、該記憶システムの構成部品または組立部品が故障した場合に、全システム故障を防ぐようにしたデータ記憶システムに関する。
この技術において知られているように、大型のホストコンピュータとサーバ(ここではまとめて「ホストコンピュータ/サーバ」と呼ぶ)は大容量のデータ記憶システムを必要とする。この大型ホストコンピュータ/サーバは一般的にデータプロセッサを備えており、このデータプロセッサは、データ記憶システムを含む周辺装置を介してこのホストコンピュータ/サーバに導かれたデータについての多くの操作を行う。この操作の結果は、前記記憶システムを含む周辺装置に出力される。
データ記憶システムの一つの形式に磁気ディスク記憶システムがある。このシステムにおいては、ディスクドライブ群とホストコンピュータ/サーバはインターフェースを介して互いに接続される。このインターフェースは、フロントエンドコントローラ(またはディレクタ)またはホストコンピュータ/サーバコントローラ(またはディレクタ)と、バックエンドコントローラ(またはディレクタ)またはディスクコントローラ(またはディレクタ)を備えている。このインターフェースはこれらのコントローラ(またはディレクタ)を、それらがホストコンピュータ/サーバにとってトランスペアレントであるように動作させる。即ち、ホストコンピュータ/サーバが単に、自分自身のローカルディスクドライブと共に動作していると思うように、データがディスクドライブ群に格納され、そこから取り出される。そのようなシステムの一つが、特許文献1に記載されている。
この米国特許に記載されているように、前記インターフェースは、ホストコンピュータ/サーバコントローラ(ディレクタ)とディスクコントローラ(ディレクタ)の他に、アドレス可能なキャッシュメモリを備えている。このキャッシュメモリは半導体メモリであって、ホストコンピュータ/サーバからのデータを、ディスクドライに格納される前にすばやく格納する一方、ディスクドライブからのデータを、ホストコンピュータ/サーバに送られる前にすばやく格納するようになっている。ディスクドライブの場合における磁気メモリと区別される半導体メモリであるキャッシュメモリは、ディスクドライブよりも速くデータの読み出しと書き込みを行う。
前記ホストコンピュータ/サーバコントローラとディスクコントローラとキャッシュメモリは、バックプレーンプリント回路基板を介して相互に接続されている。より詳しくは、ディスクコントローラは、ディスクコントローラプリント回路基板上に取り付けられている。ホストコンピュータ/サーバコントローラは、ホストコンピュータ/サーバコントローラプリント回路基板上に取り付けられている。また、キャッシュメモリはキャッシュメモリプリント回路基板上に取り付けられている。ディスクディレクタとホストコンピュータ/サーバディレクタとキャッシュメモリプリント回路基板は、バックプレーンプリント回路基板にプラグ接続されている。ディレクタが故障の場合にデータの完全性を保つために、バックプレーンプリント回路基板は一対のバスを有している。一組のディスクディレクタが一方のバスに接続されており、もう一組のディスクディレクタがもう一方のバスに接続されている。同様に、一組のホストコンピュータ/サーバディレクタが一方のバスに接続されており、もう一組のホストコンピュータ/サーバディレクタが、もう一方のバスに接続されたディレクタである。キャッシュメモリは両方のバスに接続されている。このバスのそれぞれはデータとアドレスと制御情報を供給する。
この機構は図1に概略示されている。このように、二つのバスB1,B2を使用することにより、一方のバスに接続されたコントローラまたはディスクドライブが故障の場合に全システム故障を防ぐような程度の冗長性が提供される。また、二つのバスを使用することにより、単一バスを有するシステムに比べて、システムのデータ転送帯域幅が増加する。従って、動作において、ホストコンピュータ/サーバ12は、データを格納したいと思うときは、書き込み命令を実行するために、フロントエンドディレクタ14(即ち、ホストコンピュータ/サーバディレクタ)の一つに書き込み要求を出す。フロントエンドディレクタ14の一つがその要求に答え、ホストコンピュータ12にデータを請求する。前記要求が、要求フロントエンドディレクタ14の一つに渡った後、そのディレクタ14はデータのサイズを判定し、その要求を格納するためのキャッシュメモリ18内のスペースを確保する。そのフロントエンドディレクタ14はそれから、そのフロントエンドディレクタ14に接続されたアドレスメモリバスB1,B2の一方の上に制御信号を生成して、キャッシュメモリへの転送を可能にする。ホストコンピュータ/サーバ12はそれから、そのフロントエンドディレクタ14にデータを転送する。そのフロントエンドディレクタ14はそれから、ホストコンピュータ/サーバ12に、転送が完了したことを知らせる。そのフロントエンドディレクタ14は、キャッシュメモリ18に格納されている図示されないテーブルの中を調べて、バックエンドディレクタ20(即ち、ディスクディレクタ)のどの一つがこの要求を扱うべきかを判定する。このテーブルは、ディスクドライブ群14内のアドレスにホストコンピュータ/サーバ12アドレスをマッピングする。そのフロントエンドディレクタ14はそれから、その要求とそのデータの量とそのデータに対するディスクアドレスとを扱うことになっているバックエンドディレクタ20のための「メールボックス」(図示されていないがキャッシュメモリ18に格納されている)に通知を入れる。他のバックエンドディレクタ20は、それらがそれらの「メールボックス」をチェックしていないとき、キャッシュメモリ18をポーリングする。ポーリングされた「メールボックス」が、転送がなされるべきことを示すならば、そのバックエンドディレクタ20は、前記要求を処理し、ディスクドライブ群22内のディスクドライブをアドレス指定し、キャッシュメモリ18からデータを読み出し、ディスクドライブ群22内のディスクドライブのアドレスにそれを書き込む。
ディスクドライブ群22内のディスクドライブからホストコンピュータ/サーバ12へデータを読み出そうとする場合は、システムは相互的に動作する。より詳しくは、読み出し動作の間、読み出し要求は、ホストコンピュータ/サーバ12によって、特定のメモリ場所のデータ(即ち、要求されたデータブロック)に対して始められる。フロントエンドディレクタ14の一つが、その読み出し要求を受け取り、キャッシュメモリ18を調べて、要求されたデータブロックがキャッシュメモリ18内に格納されているかどうかを判定する。要求されたデータブロックがキャッシュメモリ18内にあれば、要求されたデータブロックはキャッシュメモリ18から読み出され、ホストコンピュータ/サーバ12に送られる。要求されたデータブロックがキャッシュメモリ18内に無い(即ち、所謂「キャッシュミス」)とそのフロントエンドディレクタ14が判定した場合は、そのディレクタ14は、要求されたデータブロックを受け取る必要があるという注記をキャッシュメモリ18(即ち、「メールボックス」)に書き込む。バックエンドディレクタ20はキャッシュメモリ18をポーリングして、とるべき行動(即ち、要求されたデータブロックの読み出し動作)があるかどうかを判定する。キャッシュメモリ18のメールボックスをポーリングし、読み出し動作を検出したバックエンドディレクタ20の一つは、要求されたデータブロックを読み出し、キャッシュメモリ18内に格納されるその要求されたデータブロックの格納を始める。その格納がキャッシュメモリ18に完全に書き込まれると、読み出し完了表示がキャッシュメモリ18内の「メールボックス」に置かれる。注目すべきは、フロントエンドディレクタ14は、読み出し完了表示に対してキャッシュメモリ18をポーリングしているということである。ポーリングしているフロントエンドディレクタ14
の一つが読み出し完了表示を検出すると、そのフロントエンドディレクタ14は、現在キャッシュメモリ18内に格納されている要求されたデータのホストコンピュータ/サーバ12への転送を完了する。
米国特許第5,206,939号明細書
メールボックスとポーリングの使用は、ホストコンピュータ/サーバ12とディスクドライブ群22との間でデータを転送するための時間を必要とするので、インターフェースの動作帯域幅を減少させる。
本発明によれば、システムインターフェースを介してホストコンピュータ/サーバとディスクドライブ群との間でデータを転送するためのデータ記憶システムを生成するための方法が提供される。このシステムインターフェースは、複数の第1ディレクタと、複数の第2ディレクタと、キャッシュメモリとを有している。前記方法は、複数のプリント回路基板をプラグ接続するのに適したスロットを有するバックプレーンを提供するステップを備える。このプリント回路基板は、前記第1ディレクタを有する複数の第1ディレクタ基板と、前記第2ディレクタを有する複数の第2ディレクタ基板と、前記グローバルメモリを提供する複数のメモリプリント回路基板と、第1ジャンパーを有する複数のダミー第1ディレクタ基板と、第2ジャンパーを有する複数のダミー第2ディレクタ基板と、第3ジャンパーを有する複数のダミーメモリ基板とを備えている。前記方法は、前記第1ジャンパーと第2ジャンパーと第3ジャンパーとの間の接続を行うように前記バックプレーンに配線を施して、前記複数の第1ディレクタを前記ホストコンピュータ/サーバに、前記複数の第2ディレクタを前記ディスクドライブ群に、前記グローバルメモリを前記複数の第1ディレクタと前記複数の第2ディレクタとに接続するステップを備える。
本発明のもう一つの特徴によれば、システムインターフェースを介してホストコンピュータ/サーバとディスクドライブ群との間でデータを転送するためのデータ記憶システムが提供される。このシステムインターフェースは、複数の第1ディレクタと、複数の第2ディレクタと、グローバルメモリとを有する。このインターフェースは、複数のプリント回路基板をプラグ接続するのに適したスロットを有するバックプレーンを備える。前記プリント回路基板は、前記第1ディレクタを有する複数の第1ディレクタ基板と、前記第2ディレクタを有する複数の第2ディレクタ基板と、前記グローバルメモリを提供する複数のメモリプリント回路基板と、第1ジャンパーを有する複数のダミー第1ディレクタ基板と、第2ジャンパーを有する複数のダミー第2ディレクタ基板と、第3ジャンパーを有する複数のダミーメモリ基板とを備える。前記バックプレーンは、前記第1ジャンパーと第2ジャンパーと第3ジャンパーとの間の接続を行うように配線されて、前記複数の第1ディレクタを前記ホストコンピュータ/サーバに、前記複数の第2ディレクタを前記ディスクドライブ群に、前記複数のメモリを前記複数の第1ディレクタと前記複数の第2ディレクタとに接続する。
本発明の更にもう一つの特徴によれば、システムインターフェースを介してホストコンピュータ/サーバとディスクドライブ群との間でデータを転送するためのデータ記憶システムが提供される。このシステムインターフェースは、前記ホストコンピュータ/サーバに接続された複数の第1ディレクタと、前記ディスクドライブ群に接続された複数の第2ディレクタと、キャッシュメモリとを備える。前記キャッシュメモリは、一対の冗長なデータ/制御ポートを有する共通メモリアレイと、それぞれ一方が前記一対のデータ/制御ポートの対応する一方に接続された一対の論理ネットワークとを有する。前記ディレクタのそれぞれとグローバルキャッシュメモリとの間に別々のポイントツーポイントデータパ
スがある。前記第1ディレクタの一対は、前記一対の論理ネットワークへの接続に適している。
一つの実施態様において、前記第1ディレクタのそれぞれは、別々のプリント回路基板上にある。
本発明のもう一つの特徴によれば、システムインターフェースを介してホストコンピュータ/サーバとディスクドライブ群との間でデータを転送するためのデータ記憶システムが提供される。このシステムインターフェースは、前記ホストコンピュータ/サーバに接続された複数の第1ディレクタと、前記ディスクドライブ群に接続された複数の第2ディレクタと、キャッシュメモリとを備える。前記キャッシュメモリは、一対の冗長なデータ/制御ポートを有する共通メモリアレイと、それぞれ一方が前記一対のデータ/制御ポートの対応する一方に接続された一対の論理ネットワークとを有する。前記ディレクタのそれぞれとグローバルキャッシュメモリとの間に別々のポイントツーポイントデータパスがある。前記第2ディレクタの一対は、前記一対の論理ネットワークへの接続に適している。
一つの実施態様において、前記第2ディレクタのそれぞれは、別々のプリント回路基板上にある。
本発明の更にもう一つの特徴によれば、システムインターフェースを介してホストコンピュータ/サーバとディスクドライブ群との間でデータを転送するためのデータ記憶システムが提供される。このシステムインターフェースは、前記ホストコンピュータ/サーバに接続された複数の第1ディレクタと、前記ディスクドライブ群に接続された複数の第2ディレクタと、キャッシュメモリとを備える。前記キャッシュメモリは、一対のメモリ基板を有し、このメモリ基板のそれぞれはメモリアレイを有する。前記ディレクタのそれぞれとグローバルキャッシュメモリとの間に別々のポイントツーポイントデータパスがある。前記第1ディレクタの一対は、前記一対のメモリ基板のメモリアレイへの接続に適している。
一つの実施態様において、前記第2ディレクタの一つは、前記一対のメモリ基板のメモリアレイへの接続に適している。
一つの実施態様において、前記メモリ基板のそれぞれは、一対の冗長なデータ/制御ポートを有する共通メモリアレイと、一対の論理ネットワークとを有し、前記一対の論理ネットワークのそれぞれ一方は、前記一対のデータ/制御ポートの対応するいずれか一方に接続される。前記プリント回路基板は、ジャンパーでの接続を行うように配線されて、前記第1ディレクタの一対を前記一対の論理ネットワークに接続可能にすると共に、前記第2ディレクタの一対を前記一対の論理ネットワークに接続可能にする。
一つの実施態様において、前記プリント回路基板は、ジャンパーでの接続を行うように配線されて、前記第1ディレクタの一方を、前記一対のメモリ基板のメモリアレイに接続する。
一つの実施態様において、前記方法は、前記ディレクタのそれぞれを別々のプリント回路基板上に設けるステップを備える。前記バックプレーンは、ジャンパーに配線、接続されて、前記一対の論理ネットワークのそれぞれを、前記第1ディレクタの一つと前記第2ディレクタの一つに接続する。
本発明の一つまたはそれ以上の実施態様の詳細は、添付図面と以下の説明の中で述べられている。本発明の他の特徴、目的、および利点は、以下の説明と図面および特許請求項から明らかとなる。
本発明のこれらおよびその他の特徴は、以下の詳細な説明が添付図面と一緒に読まれるときに、その説明から更に容易に明らかとなる。
図2はデータ記憶システム100を示し、このデータ記憶システム100は、システムインターフェース160を介して、ホストコンピュータ/サーバ120とディスクドライブ群140の間でデータを転送する。システムインターフェース160は、図示されたように、ポート123〜12332を介してホストコンピュータ/サーバ120に接続された複数のフロントエンドディレクタ180〜18032と、ポート12333〜12364を介してディスクドライバ群140に接続された複数のバックエンドディレクタ200〜20032と、複数のフロントエンドディレクタ180〜18016とバックエンドディレクタ200〜20016に接続された、グローバルキャッシュメモリ220を有するデータ転送部240と、複数のフロントエンドディレクタ180〜18032と複数のバックエンドディレクタ200〜20032に接続された、データ転送部240とは独立して動作するメッセージネットワーク260とを備えている。フロントエンドディレクタ180〜18032とバックエンドディレクタ200〜20032は機能的には類似しており、以下の審査中の特許出願の中で詳細に説明されている、マイクロプロセッサ(μP)299(即ち、中央処理装置(CPU)とRAM)と、メッセージエンジン/CPUコントローラ314と、データパイプ316とを備えている。
Figure 0004364650
しかしながら、ここでは、フロントエンドディレクタ180〜18032とバックエンドディレクタ200〜20032は、ディレクタ180〜18032と200〜20032の間でメッセージネットワーク260を通過するメッセージに応じて、ホストコンピュータ/サーバ120とディスクドライブ群140の間のデータ転送を制御するとだけ言えば十分である。このメッセージは、ホストコンピュータ/サーバ120とディスクドライブ群140の間のデータ転送を助け、データは、データ転送部240を介してグローバルキャッシュメモリ220を通過する。より詳しくは、フロントエンドディレクタ180〜18032の場合は、データは、ホストコンピュータとの間を通り、フロントエンド180〜18032内のデータパイプ316を経由してグローバルキャッシュメモリ220に至り、メッセージは、そのフロントエンド180〜18032内のメッセージエンジン/CPUコントローラ314を通過する。バックエンドディレクタ200〜20032の場合は、データは、バックエンドディレクタ200〜20032とディスクドライブ群140の間を通り、バックエンドディレクタ200〜20032内のデータパイプ316を経由してグローバルキャッシュメモリ220に至り、メッセージは、そのバックエンドディレクタ200〜20032内のメッセージエンジン/CPUコントローラ314を通過する。
そのような機構によって、データ転送部240内のキャッシュメモリ220は、ディレクタメッセージを転送するタスクを負わない。むしろ、メッセージネットワーク260はデータ転送部240とは独立に動作するので、システムインターフェース160の動作帯域幅を増加させる。
動作において、最初にホストコンピュータ/サーバ120による読み出し要求(即ち、ホストコンピュータ/サーバ120は、ディスクドライバ140からのデータを要求する)を考えると、その要求は、ホストコンピュータ120内の、複数、ここでは32個のホストコンピュータプロセッサ121〜12132の一つから、そのホストコンピュータプロセッサ121〜12132に接続されたフロントエンドディレクタ180〜18032対の一方または両方に渡される。(注目すべきは、ホストコンピュータ120において、ホストコンピュータプロセッサ121〜12132のそれぞれは、ここでは一対(一対に限られない)のフロントエンドディレクタ180〜18032に接続されていて、それに接続されたフロントエンドディレクタ180〜18032の一つの故障の場合における冗長性を提供するということである。同様に、ディスクドライブ群140は、複数、ここでは32個のディスクドライブ141〜14132を有しており、各ディスクドライブ141〜14132は、ここでは一対(一対に限定されない)のバックエンドディレクタ200〜20032に接続されていて、それに接続されたバックエンドディレクタ200〜20032の一つの故障の場合における冗長性を提供する)。このように、フロントエンドディレクタ対180,180;...18031,18032は、図示されたように、それぞれプロセッサ対121,121;...12131,12132に接続されている。同様に、バックエンドディレクタ対200,200;...20031,20032は、図示されたように、それぞれディスクドライブ対141,141;...14131,14132に接続されている。
各フロントエンドディレクタ180〜18032は、参照特許出願の中で詳細に説明されているマイクロプロセッサ(μP)299(即ち、中央処理装置(CPU)とRAM)を備えている。しなしながら、ここでは、マイクロプロセッサ299はグローバルキャッシュメモリ220からのデータを要求するということを言っておけば十分である。グローバルキャッシュメモリ220は図示しない常駐キャッシュ管理テーブルを有している。どのディレクタ180〜18032,200〜20032も常駐キャッシュ管理テーブルにアクセスでき、フロントエンドディレクタ180〜18032は、データ転送を要求するたび毎に、グローバルキャッシュメモリ220に問い合わせて、要求されたデータがグローバルキャッシュメモリ220の中にあるかどうかを判断しなければならない。要求されたデータがグローバルキャッシュメモリ220の中にあれば(即ち、リード「ヒット」であれば)、フロントエンドディレクタ180〜18032、より詳しくは、その中のマイクロプロセッサ299は、グローバルキャッシュメモリ220に対するDMA(ダイレクトメモリアクセス)動作を仲介し、要求されたデータを要求ホストコンピュータプロセッサ121〜12132に転送する。
一方、データ要求を受け取ったフロントエンドディレクタ180〜18032は、グローバルキャッシュメモリ220内のキャッシュ管理テーブルの問い合わせの結果として、要求されたデータがグローバルキャッシュメモリ220内に無い(即ち、リード「ミス」)と判断した場合は、そのフロントエンドディレクタ180〜18032は、要求されたデータがディスクドライブ群140の中にあると結論する。従って、データ要求を受け取ったフロントエンドディレクタ180〜18032は、バックエンドディレクタ200〜20032の一つにデータを要求して、そのバックエンドディレクタ200〜20032がディスクドライブ群140にデータを要求するようにしなければならない。どのバックエンドディレクタ200〜20032がディスクドライブ群140内のどのディスクドライブ141〜14132を制御するかのマッピングは、電源投入初期化段
階の間に決定される。そのマップはグローバルキャッシュメモリ220内に格納される。従って、フロントエンドディレクタ180〜18032は、グローバルキャッシュメモリ220にデータ要求を行い、要求されたデータがグローバルキャッシュメモリ内に無い(即ち、ミス)と判断したときは、そのフロントエンドディレクタ180〜18032はまた、グローバルキャッシュメモリ220内のマップによって、ディスクドライブ群140内の、要求されたデータに対して責任のあるバックエンドディレクタ200〜20032について知らされる。要求フロントエンドディレクタ180〜18032はそれから、マップ指定されたバックエンドディレクタ200〜20032に、ディスクドライブ群140内のデータを要求しなければならない。そのフロントエンドディレクタ180〜18032と、バックエンドディレクタ200〜20032の中の適当な一つ(グローバルキャッシュメモリ200内に格納されたマップによって決定される)との間のこの要求は、そのフロントエンドディレクタ180〜18032からメッセージネットワーク260を経由してその適当なバックエンドディレクタ200〜20032に至るメッセージによる。この場合、注目すべきは、メッセージは、グローバルキャッシュメモリ220を経由せずに(即ち、データ転送部240を経由せずに)、むしろ別の独立メッセージネットワーク260を経由するということである。このように、ディレクタ180〜18032,200〜20032間の通信は、メッセージネットワーク260を介して行われ、グローバルキャッシュメモリ220を介して行われない。従って、グローバルキャッシュメモリ220の貴重な帯域幅は、ディレクタ180〜18032,200〜20032間のメッセージ伝送のために使用されない。
このように、グローバルキャッシュメモリ220「リードミス」の場合、フロントエンドディレクタ180〜18032は、メッセージネットワーク260を介してバックエンドディレクタ200〜20032の適当な一つにメッセージを送って、そのバックエンドディレクタ200〜20032に、ディスクドライブ140からの要求されたデータをグローバルキャッシュメモリ220に転送するように指示する。転送が終ると、バックエンドディレクタ200〜20032は要求フロントエンドディレクタ180〜18032に転送が終ったことを、バックエンドディレクタ200〜20032からメッセージネットワーク260を経由してフロントエンドディレクタ180〜18032に至るメッセージによって知らせる。その肯定応答信号に応じて、それによって、フロントエンドディレクタ180〜18032は、キャッシュ「リードヒット」がある場合、上述したように、そのフロントエンドディレクタ180〜18032がグローバルキャッシュメモリ220からのデータを要求ホストコンピュータプロセッサ121〜12132に転送できるということを知らされる。
注目すべきは、要求されたデータに対して責任のある一つまたはそれ以上のバックエンドディレクタ200〜20032があるかも知れないということである。従って、一つのバックエンドディレクタ200〜20032だけが、要求されたデータに対して責任がある場合、要求フロントエンドディレクタ180〜18032は、ユニキャストメッセージを、メッセージネットワーク260を介してバックエンドディレクタ200〜20032のその特定の一つだけに送る。一方、二つ以上のバックエンドディレクタ200〜20032が、要求されたデータに対して責任がある場合、マルチキャストメッセージ(ここでは一連のユニキャストメッセージとして実行される)が、一つの要求フロントエンドディレクタ180〜18032によって、要求されたデータに対して責任のあるすべてのバックエンドディレクタ200〜20032に送られる。いずれにしても、ユニキャストメッセージとマルチキャストメッセージのいずれも、メッセージネットワーク260を通過するが、データ転送部240を通過しない(即ち、グローバルキャッシュメモリ220を通過しない)。
同様に、注目すべきは、ホストコンピュータプロセッサ121〜12132の一つが
データを要求する一方、肯定応答信号が、要求ホストコンピュータプロセッサ121、あるいは、一つまたはそれ以上の他のホストコンピュータプロセッサ121〜12132に、メッセージネットワーク260を通じて、マルチキャストメッセージ(即ち、一連のユニキャストメッセージ)を介して送られ、データ読み出し動作が完了する。
書き込み動作においては、ホストコンピュータ120が、データを記憶装置(即ち、ディスクドライブ群140)に書き込みたいと思う。フロントエンドディレクタ180〜18032の一つがホストコンピュータ120からデータを受け取って、それをグローバルキャッシュメモリ220に書き込む。フロントエンドディレクタ180〜18032はそれから、バックエンドディレクタ200〜20032が、データをそのキャッシュメモリ220から取り出してディスクドライブ群140に格納できると判断したある時間後に、そのデータの転送を要求する。ディスクドライブ群140への転送前に、キャッシュメモリ220内のデータには「新鮮データ」(即ち、ディスクドライブ群140に転送されていないデータ、即ち、「書き込みペンディング」であるデータ)としての1ビットが付される。従って、ディスクドライブ群140へ転送される前に、グローバルキャッシュメモリ220内の同じメモリ位置(即ち、特定のバンクアカウント)に対して多数の書き込み要求があった場合、キャッシュメモリ220内のデータは最も新しいデータで重ね書きされる。データがグローバルキャッシュメモリ220に転送されるたび毎に、転送を制御するフロントエンドディレクタ180〜18032はまた、ホストコンピュータ120に、転送が終了したことを知らせ、そのことによって他のデータ転送に対してホストコンピュータ120を自由にする。
バックエンドディレクタ200〜20032によって判定されるように、グローバルキャッシュメモリ220内のデータをディスクドライブ群140に転送する時間になると、バックエンドディレクタ200〜20032は、グローバルキャッシュメモリ220からのデータをディスクドライブ群140に転送し、グローバルキャッシュメモリ220内のデータに関するタグをリセットして(即ち、データからタグを外して)、グローバルキャッシュメモリ220内のデータがディスクドライブ群140に転送されたことを示す。注目すべきは、グローバルキャッシュメモリ220内のタグが外されたデータは、新しいデータによって重ね書きされるまでそこに残るということである。
図3,4,5において、システムインターフェース160は電気キャビネット300を含むように示され、そのキャビネット内には、複数、ここでは8枚の、それぞれが4つのフロントエンドディレクタ180〜18032を有するフロントエンドディレクタ基板190〜190と、複数、ここでは8枚の、それぞれが4つのバックエンドディレクタ200〜20032を有するバックエンドディレクタ基板210〜210と、グローバルキャッシュメモリ220を構成する複数、ここでは8枚のメモリ基板M0〜M7とが格納されている。これらの基板はバックプレーン302の前面にプラグ接続されている。(注目すべきは、バックプレーン302は中間平面プリント回路基板であることである)。バックプレーン302の背面にはメッセージネットワーク基板がプラグ接続されている。このメッセージネットワーク基板は、上で参照した審査中の特許出願の中で説明されているようにメッセージネットワーク260を構成している。バックプレーン302の背面はその中に、図2〜図4に示されていないアダプタ基板をプラグ接続しており、このアダプタ基板は、バックプレーン302の背面にプラグ接続された基板を、図2に示すように、コンピュータ120およびディスクドライブ群140と接続する。
即ち、再び図2において、図示されないI/Oアダプタが、フロントエンド(FE)ディレクタ180〜18032のそれぞれとホストコンピュータ120との間に接続されており、更に、図示されないI/Oアダプタが、各バックエンドディレクタ200〜20032のそれぞれとディスクドライブ群140との間に接続されている。
図5に示すように、また、上で参照した審査中の特許出願の中で更に説明されているように、ディレクタ基板190〜210のそれぞれは、4つのディレクタ180〜18032,200〜20032(図2)を上述したように備えている。注目すべきは、ディレクタ基板190〜190は基板当たり4つのフロントエンドディレクタを有し、180〜18032はフロントエンドディレクタと呼ばれ、ディレクタ基板210〜210は基板当たり4つのバックエンドディレクタを有し、200〜20032はバックエンドディレクタと呼ばれることである。ディレクタ180〜18032,200〜20032のそれぞれは、図2に示された、マイクロプロセッサ299(上で参照)と、メッセージエンジン/CPUコントローラ314と、データパイプ316とを備えている。
フロントエンドディレクタ基板は、図2に示すように、プロセッサ121〜12132に接続されたポート123〜12332を有している。バックエンドディレクタ基板は、図2に示すように、ディスクドライバ141〜14132に接続されたポート12333〜12364を有している。
ディレクタ基板190〜210のそれぞれは、図5に示すようにクロスバースイッチ318を備えている。このクロスバースイッチ318は、4つの入出力ポートC〜Cを有しており、各入出力ポートは、ディレクタ基板190〜210上の4つのディレクタ180〜18032,200〜20032の対応する一つのデータパイプ316(図2)に接続されている。クロスバースイッチ318は、数字321によって図5にまとめて示された8つの入出力ポートを有している。(これらの入出力ポートはバックプレーン302にプラグ接続している)。フロントエンドディレクタ基板190〜190上のクロスバースイッチ318は、フロントエンドディレクタ基板190〜190上の4つのフロントエンドディレクタ180〜18032の内の選択された一つのデータパイプ316を、バックプレーン302と図示しないI/Oアダプタを介してグローバルキャッシュメモリ220に接続するために使用される。バックエンドディレクタ基板210〜210上のクロスバースイッチ318は、バックエンドディレクタ基板210〜210上の4つのバックエンドディレクタ200〜20032の内の選択された一つのデータパイプ316を、バックプレーン302と図示しないI/Oアダプタを介してグローバルキャッシュメモリ220に接続するために使用される。従って、図2において、フロントエンドディレクタ180〜18032内のデータパイプ316は、ホストコンピュータ120とグローバルキャッシュメモリ220の間でデータを接続する一方、バックエンドディレクタ200〜20032内のデータパイプ316は、ディスクドライブ群140とグローバルキャッシュメモリ220の間でデータを接続する。注目すべきは、ディレクタ180〜18032,200〜20032のそれぞれとグローバルキャッシュメモリ220の間に別々のポイントツーポイントデータパスPTH〜PTH64(図2)があることである。また、注目すべきは、バックプレーン302は、プリント回路基板の一つまたはそれ以上の層の上のエッチングされた導体だけで構成されているために、受動バックプレーンであるということである。即ち、バックプレーン302は何らの能動部品も持っていない。
また、上で参照した審査中の特許出願の中で説明されているように、クロスバースイッチ320(図5)はバックプレーン302にプラグ接続しており、ディレクタをバックプレーンを介してメッセージネットワーク260(図2)に接続するために使用される。
再び図5において、クロスバースイッチ318は一対のクロスバースイッチ406X,406Yからなっている。クロスバースイッチ406X,406Yのそれぞれは、4つのディレクタ側入出力ポートC〜Cと、数字321によって図5にまとめて示された4
つのメモリ側入出力ポートを備えている。スイッチ406Xのディレクタ側ポートC〜Cは、図示したように、また、上で参照した審査中の特許出願の中でもっと詳しく説明されているように、ディレクタ基板上の4つのディレクタに接続されている。同様に、スイッチ406Yのディレクタ側ポートC〜Cもまた、図示したように、その基板上のデュアルポートディレクタに接続されている。このように、上で参照した審査中の特許出願の中で説明されているように、各ディレクタはデュアルポートディレクタである。
上で参照した特許出願の中で説明されているように、ポートC〜Cのそれぞれを、その基板上のディレクタによってスイッチ406Xに与えられた制御ワードに従って、数字321によってまとめて示された4つのポートの選択された一つに接続することができる。ここでは、ディレクタ180,180,180,180のいづれか一つのポート402Aを、制御ワードに従って選択的に、スイッチ406Xのポート321のいずれか一つに接続できるとだけ言っておけば十分である。ディレクタ基板190〜190,210〜210とグローバルキャッシュメモリ220の間の接続は図8に示されている。スイッチ406に対しても同様である。
より詳しくは、そして、図2においても、上に述べたように、ホストコンピュータ120の中のホストコンピュータプロセッサ121〜12132のそれぞれは、フロントエンドディレクタ180〜18032の一対に接続されて、それに接続されたフロントエンドディレクタ180〜18032の一つに故障があった場合に冗長性を提供する。同様に、ディレクタドライバ群140は、複数、ここでは32個のディレクタドライバ141〜14132を有し、各ディレクタドライバ141〜14132はバックエンドディレクタ200〜20032の一対に接続されて、それに接続されたバックエンドディレクタ200〜20032の一つに故障があった場合に冗長性を提供する。このように、代表的なホストコンピュータプロセッサ121を考えると、そのプロセッサ121は一対のフロントエンドディレクタ180,180に接続されている。従って、ディレクタ180が故障した場合、ホストコンピュータプロセッサ121は、他のフロントエンドディレクタ180によってとはいえ、依然としてシステムインターフェース160にアクセスすることができる。従って、ディレクタ180と180は冗長性ディレクタ対と考えられる。同様に、他の冗長性フロントエンドディレクタ対は、フロントエンドディレクタ180,180;180,180;180,180;180,18010;18011,18012;18013,18014;18015,18016;18017,18018;18019,18020;18021,18022;18023,18024;18025,18026;18027,18028;18029,18030;18031,18032である。(図2にはディレクタ18031と18032だけを示す)。
同様に、ディスクドライブ141は一対のバックエンドディレクタ200,200に接続される。従って、ディレクタ200が故障した場合、ディスクドライブ141は、他のバックエンドディレクタ180によってとはいえ、依然としてシステムインターフェース160にアクセスすることができる。同様に、他の冗長性バックエンドディレクタ対は、バックエンドディレクタ200,200;200,200;200,200;200,20010;20011,20012;20013,20014;20015,20016;20017,20018;20019,20020;20021,20022;20023,20024;20025,20026;20027,20028;20029,20030;20031,20032である。(図2にはディレクタ20031と20032だけを示す)。
上に述べたように、各ディレクタ基板の上に4つのディレクタがある。ディレクタ基板の物理的位置を位置名称と共に図8に示す(例えば、ディレクタ基板190は名称D2
も持っている)。また、図2と図5を参照すれば以下の表のようになる。
Figure 0004364650
上に述べた冗長ディレクタ対を設けるために、以下のディレクタ基板を対にして、上述の冗長性の達成を可能にする。
フロントエンド基板:
D2とDD
D3とDC
D9とD6
D8とD7
バックエンド基板:
D0とDF
D2とDE
DBとD4
DAとD5
また、図5において、グローバルキャッシュメモリ220は、図示されたように、複数、ここでは8枚のキャッシュメモリ基板M0〜M7を備えている。更にまた、図6にキャッシュメモリ基板の代表的な一つを示す。ここで、各キャッシュメモリ基板は4つのメモリアレイ領域1〜4を有しており、その代表的な一つが、米国特許No.5,943,287「名称:故障許容メモリシステム(Fault Tolerant Memory System)、発明者:Joh n K. Walton、発行日:1999年8月24日、譲渡:本発明と同じ非譲渡人に譲渡」の
図6との関連で示され、説明されており、この特許の主題全体はここに参照の形で含まれている。キャッシュメモリ基板の代表的な一つの更なる詳細が、上で参照された審査中の特許出願の中で説明されている。
図6に示すように、代表的なメモリ基板は、複数、ここでは4つのRAMメモリアレイ領域1〜4を有しており、このアレイ領域のそれぞれは、メモリアレイ領域へのデータまたはそこからのデータを受け取るためのみならず、メモリ制御信号を受け取るための、一対の冗長なデータ/制御ポート、即ち、AポートとBポートを有している。メモリ基板それ自身は、16個のポート、即ち、8個のドメインAポートP〜Pと8個のドメインBポートP〜P15を有している。上で参照した審査中の特許出願と上記参照米国特許の中で更に詳細に説明されているように、各メモリ基板は4つの論理ネットワーク(ここではクロスバースイッチ)を有している。これら4つの論理ネットワーク2211A,2212A,2211B,2212Bは、ここではクロスバースイッチである。論理ネットワーク2211A,2212Aと論理ネットワーク2211B,2212Bは二つの独立ドメイン、即ちドメインAとドメインBにある。このように、論理ネットワーク2211A,2212AはドメインAにあり、論理ネットワーク2211B,2212BはドメインBにある。また、ドメインAの論理ネットワーク2211A,2212AはそれぞれA1およびA2と呼び、ドメインBの論理ネットワーク2211B,2212BはそれぞれB1およびB2と呼ぶ。
メモリ基板M0〜M7とディレクタD0〜DFとの間のこれらの接続をそれぞれ以下の表I と表IIに示す。

Figure 0004364650

Figure 0004364650

Figure 0004364650

Figure 0004364650

Figure 0004364650

Figure 0004364650

Figure 0004364650

Figure 0004364650

Figure 0004364650
上記表Iから注目されることは、各ドメインのスイッチ(即ち、論理ネットワークA1,A2,B1,B2)のそれぞれは、一対のフロントエンドディレクタ基板と一対のバックエンドディレクタ基板に接続されるということである。例えば、論理ネットワーク2211A(即ち、論理ネットワークA1)に対しては、そのポートの二つPとPがフロントエンドディレクタ基板の一つに接続され、そのポートの他の二つPとPがバックエンドディレクタ基板の一つに接続される。図6Aを参照のこと。この機構は、論理ネットワークのいずれの一つについても負荷をバランスさせているので、システムの帯域幅を増やすことができる。
上に述べたように、4つのスイッチ(即ち、A1,A2,B1,B2)は、図6に示すように、二つの独立ドメイン、即ち、ドメインAとドメインBにある。代表的な4つのAポートP〜Pを考えると、4つのAポートP〜Pのそれぞれは、論理ネットワーク2211A(即ち、A1)を介して、メモリアレイ領域1〜4のいずれか一つのAポートに接続可能である。このように、ポートPを考えると、そのポートは4つのメモリアレイ1〜4のAポートに接続可能である。同様に、論理ネットワーク2212A(即ち、A2)の4つのAポートP〜Pを考えると、4つのAポートP〜Pのそれぞれは、論理ネットワーク2212Aを介して、メモリアレイ領域1〜4のいずれか一つのAポートに接続可能である。同様に、論理ネットワーク2211B(B1)の4つのBポートP〜P11を考えると、4つのBポートP〜P11のそれぞれは、論理ネットワーク2211Bを介して、メモリアレイ領域1〜4のいずれか一つのBポートに接続可能である。同様に、論理ネットワーク2212B(B2)の4つのBポートP12〜P15を考えると、4つのBポートP12〜P15のそれぞれは、論理ネットワーク2212Bを介して、メモリアレイ領域のいずれか一つのBポートに接続可能である。このように、上で参照した米国特許の中で説明されているように、ポートP12を考えると、そのポートは4つのメモリ領域1〜4のBポートに接続可能である。従って、二つの別々の独立パス(即ち、ドメイン)があり、フロントエンドディレクタ180〜18032かバックエンドディレクタ200〜20032のいずれかからのデータと制御は、メモリ基板上の4つのメモリアレイ領域1〜4のそれぞれ一つに到達することができる。論理A1とA2はドメインAにあり、論理B1とB2はドメインBにある。
また、上に述べたように、ディレクタのそれぞれは一対の冗長なポート、即ち、402Aと402Bポートを有している(図5)。より詳しくは、図7において、代表的な一対の冗長なディレクタ、ここでは、例えば、フロントエンドディレクタ180とフロントエンドディレクタ180が示されている。最初に注目すべきは、各冗長ディレクタ対のディレクタ180,180はそれぞれ、別のディレクタ基板、ここでは、190(D2),190(DD)の上になければならないことである。従って、ここでは、フロントエンドディレクタ基板190〜190はその上にそれぞれ、フロントエンドディ
レクタ180,180,180,180、フロントエンドディレクタ180,180,180,180、フロントエンドディレクタ180,18011,18013,18015、フロントエンドディレクタ18010,18012,18014,18016、フロントエンドディレクタ18017,18019,18021,18023、フロントエンドディレクタ18018,18020,18022,18024、フロントエンドディレクタ18025,18027,18029,18031、フロントエンドディレクタ18018,18020,18022,18024を有している。従って、ここでは、バックエンドディレクタ基板210〜210はその上にそれぞれ、バックエンドディレクタ200,200,200,200、バックエンドディレクタ200,200,200,200、バックエンドディレクタ200,20011,20013,20015、バックエンドディレクタ20010,20012,20014,20016、バックエンドディレクタ20017,20019,20021,20023、バックエンドディレクタ20018,20020,20022,20024、バックエンドディレクタ20025,20027,20029,20031、バックエンドディレクタ20018,20020,20022,20024を有している。このことは上記二つの表に示されている。
従って、ここでは図7に示すフロントエンドディレクタ180は、フロントエンドディレクタ基板190(D2)の上にあり、図7に示すその冗長な、または対になったフロントエンドディレクタ180は、別のフロントエンドディレクタ基板、ここでは例えば、フロントエンドディレクタ基板190(DD)の上にある。上で説明したように、また、上で参照した審査中の特許出願の中で更に詳しく説明されているように、各ディレクタは、図6に示すように、一対のポート402A,402Bを有している。ディレクタ180に対して示されるように、ディレクタのポート402Aは、クロスバースイッチ318のスイッチ406Xに接続されており、ディレクタのポート402Bは、クロスバースイッチ318のスイッチ406Yに接続されている。冗長ディレクタ180に対しても同様である。
上に述べたように、クロスバースイッチ318は、数字321によってまとめて示された8つのポートを有している。これらのポートは、図8に示す機構においてバックプレーンにプラグ接続されている。ディレクタ基板のそれぞれに対するこの8つのポートは、図示されたように、0,1,2,3,4,5,6,7と呼ばれる。ポート0,1,2,3はXクロスバースイッチ406Xのポートであり、ポート4,5,6,7はYクロスバースイッチ406Yのポートである。
注目すべきは、各メモリ基板M0〜M7に対して、ドメインAの論理(A1またはA2)は冗長ディレクタ基板対の一方に接続されており、ドメインBの論理(B1またはB2)は冗長ディレクタ基板対のもう一方に接続されているということである。従って、ここでは、メモリ基板M0に対して、論理A2は基板D2のディレクタ180に接続されており、メモリ基板M0の論理B1はディレクタ基板DDのディレクタ180に接続されている。
また、注目すべきは、各ディレクタは一対のメモリ基板の異なるドメインに接続可能であるということである。例えば、ディレクタ180は、スイッチ406Xを介してメモリ基板M0のドメインA(ここでは論理A2)に接続でき、そのスイッチが故障した場合は、ディレクタ基板DD上のスイッチ406Yを介してドメインB(ここでは論理B2)に接続できる。
また、ディレクタ180が故障の場合は、メモリM0はディレクタ180を介してアクセス可能である。メモリM0のドメインAが故障の場合は、メモリM0内のデータは
ディレクタ180を介して、メモリM0のドメインB論理を通じてアクセス可能である。従って、もっと一般的に言えば、各メモリは、一対のディレクタの一方にとってはドメインの一つを介してアクセス可能であり、その一対のディレクタのもう一方にとっては他のドメインを介してアクセス可能である。また、注目すべきは、各ディレクタは一対のメモリ基板にアクセスできるということである。この後者の機構は二重書き込み能力を可能にする。即ち、一つのディレクタ内のデータを複数のメモリ基板に書き込むことができる。即ち、図示の機構により、ディレクタは同じデータを二つの異なるメモリに書き込むことができる。従って、例えば、基板D2上のディレクタ180は、基板D2上のスイッチ406Xを介して、メモリM0にデータを書き込むことができると共に、基板D2上のスイッチ406Yを介して、メモリM0の対のメモリM1に同じデータを書き込むことができる。これは、ポイントツーポイントメモリ/ディレクタ接続機構による二重書き込み機能である。
最後に、注目すべきは、対のホストコンピュータプロセッサ121,121のそれぞれは、対のディレクタD2,DDのいずれか一方を介して同じメモリにアクセスできるということである。従って、例えば、対のディレクタ基板の一方、例えば基板D2が故障の場合、ホストコンピュータプロセッサ121は、その対のディレクタ基板DDを介してメモリM0にアクセスできる。注目すべきは、この機構は、対のバックエンドディレクタD0とDFに対して図7に示されるように、バックエンドディレクタに適用されるということである。
ディレクタプリント回路基板とメモリプリント回路基板に対する配線済みバックプレーンの中のスロットを図8に示す。
バックプレーンを介してのディレクタ基板とメモリ基板のポートへの接続を上記表I と表IIに示す。
いま、このデータ記憶システムに対する顧客が、図2に関連して上に示し説明したようなメモリの半分だけを必要とするとみなす。すなわち、顧客が8つのメモリ基板の代わりに4つのメモリ基板を必要とする。しかしながら、望ましいには、このシステムが、上に説明した冗長性と二重書き込み機能で動作するが、上に説明した8つのメモリ基板に対するものと同じバックプレーン配線を用いて4つのメモリ基板だけで動作することである。
これを達成するために、ダミーメモリ基板とダミーディレクタを、バックプレーンの空いているスロットに挿入する。これらのダミー基板は、ディレクタまたはメモリアレイを持っていないが、場合によっては、説明されるように、ダミーディレクタ基板またはダミーメモリ基板のポート対に接続されたジャンパーを有している。以下に示されるように、このジャンパーの使用により、上に説明した望ましい冗長性と二重書き込み機能が達成される。
図9に、バックプレーン302内のスロットが、4つのメモリ基板と8つのディレクタ基板だけを有するシステムに対して示されている。従って、ここのメモリ基板M2,M3,M4,M5は、図10に示すように、ここのメモリ基板M2,M3,M4,M5の代わりに使用されるダミーメモリ基板と交換される。ジャンパーはJで示され、ここでは8つのジャンパーJ1〜J8が、図9に示すようにメモリ基板M2,M3,M4,M5の代わりに使用されるダミーメモリ基板のそれぞれに対して、メモリ基板ポート対を接続するために使用される。ダミーメモリ基板M2,M3,M4,M5に対するジャンパー接続は、図10に示すように、P0からP8と、P2からP10と、P3からP11と、P4からP12と、P5からP13と、P6からP14と、P7からP15とである。
同様に、図9に示すように、完全ポピュレイテドシステムにおいてディレクタ基板D9
,D6,D8,D7,DB,D4,DA,D5によって占められたバックプレーン302のスロットは、図11に示すダミーディレクタ基板によって置き換えられる。ジャンパーはJで示され、ここでは8つのジャンパーJ1〜J8が、図12に示すようにディレクタ基板D9,D6,D8,D7,DB,D4,DA,D5の代わりに使用されるダミーディレクタ基板のそれぞれに対して、ディレクタ基板ポート対を接続するために使用される。図11に示すように、ディレクタ基板D9,D6,DB,D4に対するジャンパー接続は、P0からP7と、P1からP6と、P2からP5と、P3からP4とであり、ディレクタ基板D8,DA,D7,D5に対するジャンパー接続は、P0からP5と、P1からP4と、P2からP7と、P3からP6とである。
これらのジャンパーによりメモリ基板M0,M1,M6,M7とディレクタD0,D1,D2,D3,DC,DD,DE,DFと間の接続が行われ、それぞれ以下の表IIIと表IVに示す。

Figure 0004364650

Figure 0004364650

Figure 0004364650

Figure 0004364650

Figure 0004364650

Figure 0004364650

Figure 0004364650
注目すべきは、図7に詳しく示された完全ポピュレイテドシステムの冗長機能と二重書き込み機能は、デポピュレイテドシステム、ここでは4つのメモリ基板と8つのディレクタ基板だけを備えたシステムにおいて保持される機能であるということである。また、注目すべきは、このデポピュレイテドシステムにおいて、メモリ基板上の各論理ネットワークは、上記表III と表IVに示されるように、一対のフロントエンドディレクタと一対のバックエンドディレクタに接続されるということである。
より詳しくは、上に述べたように、ディレクタのそれぞれは一対の冗長なポート、即ち、402Aポートと402Bポート(図5)を有している。従って、4メモリ/8ディレクタシステム(デポピュレイテドシステムと呼ぶ)に対する図13には、代表的な冗長ディレクタ対、ここでは例えば、フロントエンドディレクタ180とフロントエンドディレクタ180が示されている。最初に注目すべきは、各冗長ディレクタ対におけるディレクタ180,180は再び、それぞれ、別のディレクタ基板、ここでは基板190(D2),190(DD)上にあるということである。従って、図15に示すフロントエンドディレクタ180は、フロントエンドディレクタ基板190(D2)上にあり、図13に示すその冗長フロントエンドディレクタ180は、別のフロントエンドディレクタ基板、ここでは例えば、フロントエンドディレクタ基板190(DD)の上にある。上で説明したように、各ディレクタは、図15に示すように、一対のポート402A,402Bを有している。ディレクタ180に対して示されるように、ディレクタのポート402Aは、クロスバースイッチ318のスイッチ406Xに接続されており、ディレクタのポート402Bは、クロスバースイッチ318のスイッチ406Yに接続されている。冗長ディレクタ180に対しても同様である。
上に述べたように、クロスバースイッチ318は、数字321によってまとめて示された8つのポートを有している。これらのポートは、図9に示す機構において、バックプレーンにプラグ接続されている。ディレクタ基板のそれぞれに対するこの8つのポートは、図示されたように、0,1,2,3,4,5,6,7と呼ばれる。ポート0,1,2,3はXクロスバースイッチ406Xのポートであり、ポート4,5,6,7はYクロスバースイッチ406Yのポートである。
注目すべきは、上で説明したメモリ基板とディレクタ基板の上のジャンパーのために、ディレクタ基板の8つのポートが8つのメモリ基板上のメモリ素子(即ち、メモリ領域1〜4)に接続される代わりに、ここでは、それらは4つのメモリ基板だけに接続されるということである。従って、図13において、ディレクタ基板D2およびそれと対になったディレクタ基板DDはそれぞれ、図示されたように、4つのメモリ基板、ここではM0,M1,M6,M7に接続される。
また、注目すべきは、各ディレクタは一対のメモリ基板の異なるドメインに接続可能であるということである。例えば、ディレクタ基板D2上のディレクタ180は、スイッチ406Xを介してメモリ基板M0のドメインA(ここでは論理A2)に接続でき、そのスイッチが故障した場合は、ディレクタ基板D2上のスイッチ406Yを介してメモリ基板M0のドメインB(ここでは論理B2)に接続できる。
また、ディレクタ180が故障の場合は、メモリM0はディレクタ180を介してアクセス可能である。メモリM0のドメインAが故障の場合は、メモリM0内のデータはディレクタ180を介して、メモリM0のドメインB論理を通じてアクセス可能である。従って、もっと一般的に言えば、各メモリは、一対のディレクタの一方にとってはドメインの一つを介してアクセス可能であり、その一対のディレクタのもう一方にとっては他のドメインを介してアクセス可能である。また、注目すべきは、各ディレクタは一対のメモリ基板にアクセスできるということである。この後者の機構は二重書き込み能力を可能にする。即ち、一つのディレクタ内のデータを複数のメモリ基板に書き込むことができる。即ち、図示の機構により、ディレクタは同じデータを二つの異なるメモリに書き込むことができる。従って、例えば、基板D2上のディレクタ180は、基板D2上のスイッチ406Xを介して、メモリM0にデータを書き込むことができると共に、基板D2上のスイッチ406Yを介して、メモリM0の対のメモリM1に同じデータを書き込むことができる。これは、ポイントツーポイントメモリ/ディレクタ接続機構による二重書き込み機能である。
注目すべきは、対のホストコンピュータプロセッサ121,121のそれぞれは、対のディレクタD2,DDのいずれか一方を介して同じメモリにアクセスできるということである。従って、例えば、対のディレクタ基板の一方、例えば基板D2が故障の場合、ホストコンピュータプロセッサ121は、その対のディレクタ基板DDを介してメモリM0にアクセスできる。
注目すべきは、この機構は、対のバックエンドディレクタD0とDFに対して図7に示されるように、バックエンドディレクタに適用されるとういうである。
最初に注目すべきは、図10に示すように、すべてのダミー(ジャンパー)メモリ基板は、同じジャンパー機構を有するということである。次に図11から注目されることは、ディレクタ基板D9,DB,D6,D4に対して使用されるジャンパー機構は同一であるということである。ここで、そのディレクタ基板D9,DB,D6,D4のすべては、以下にタイプAと呼ばれる構成のジャンパー機構を有している。また、ディレクタ基板D8,DA,D7,D5に対するジャンパー機構は同一である。ここで、そのディレクタ基板D8,DA,D7,D5のすべては、以下にタイプBと呼ばれる構成のジャンパー機構を有している。
図14に、ユニバーサルダミー(ジャンパー)ディレクタ基板UDを示す。図9から注目しなければならないことは、ディレクタ基板とメモリ基板に対するバックプレーン内のすべてのスロットが独自のスロット名称を持っているということである。より詳しくは、図示されたように、左から右へ0から23のスロット名称を持っている。(これと同じスロット名称が、図8に示す完全ポピュレイテドシステムに適用される)。従って、バックプレーンは、スロット名称を代表する5ビットコードにハードワイヤされた図示されないピンを有している。従って、ディレクタD0がバックプレーンのスロット0にプラグ接続された場合、そのディレクタは2進コード00000を受け取る。同様に、メモリ基板M0がバックプレーンのスロット8にプラグ接続された場合、そのメモリ基板にコード01000が供給される。他のディレクタ基板およびメモリ基板も同様である。
再び図14において、ユニバーサルダミーディレクタ(即ち、ジャンパー基板)は、制御される3つのスイッチS1,S2,S3,S4と、デコーダを有している。ユニバーサル基板がバックプレーンスロットにプラグ接続された場合、その上のデコーダが、ユニバーサル基板がスロット17(即ち、D9スロット)、スロット19(即ち、DBスロット)、スロット6(即ち、D6スロット)、または、スロット4(即ち、D4スロット)のいずれにプラグ接続されたかを示すコードを検出すると、論理1がデコーダによって生成され、それによってスイッチS1,S2,S3,S4をタイプA構成にする。ユニバーサル基板がバックプレーンスロットにプラグ接続された場合、そのデコーダが、ユニバーサル基板がスロット16(即ち、D8スロット)、スロット18(即ち、DAスロット)、スロット7(即ち、D7スロット)、または、スロット5(即ち、D5スロット)のいずれにプラグ接続されたかを示すコードを検出すると、論理0がデコーダによって生成され、それによってスイッチS1,S2,S3,S4をタイプB構成にする。
タイプA状態において、スイッチS1,S2,S3,S4はそれぞれ、ポート0をポート7に、ポート1をポート6に、ポート2をポート5に、ポート3をポート4に接続する。タイプB状態においては、スイッチS1,S2,S3,S4はそれぞれ、ポート0をポート5に、ポート1をポート4に、ポート2をポート7に、ポート3をポート6に接続する。従って、同じユニバーサル基板を、ジャンパーを有するどのディレクタに対しても使用することができる。
従って、ユニバーサルディレクタ基板UDは、スロット4,5,6,7,16,17,18,19に挿入することができ、その上のデコーダが、上に説明したように、スイッチS1,S2,S3,S4を自動的に作動させてユニバーサル基板を図11に示すように構成する。
注目すべきは、ディレクタ基板を通過する信号が、ここでは正のエミッタ結合論理(PECL)信号であるということである。また、注目すべきは、スイッチS1,S2,S3が、これらの信号を拒絶するためにも使用されるということである。ここで、スイッチS1,S2,S3は、741 Call Plano, Camarillo, CA 93012 にあるVitesse Semiconductor Corporation によるモデルVCS-830 スイッチである。
他の実施態様は添付請求項の精神と範囲内にある。
従来技術によるデータ記憶システムのブロック図。 本発明によるデータ記憶システムのブロック図。 図2のデータ記憶システムにおいて使用されるシステムインターフェースを格納する電気キャビネットの概略図。 図2のデータ記憶システムのシステムインターフェースを提供するプリント回路基板概略を示す等角投影図。 図2のデータ記憶システムにおいて使用されるシステムインターフェースのブロック図。 図2のシステムインターフェースにおいて使用される代表的なグローバルキャッシュメモリ基板のブロック図。 図2のシステムにおいて使用されるメモリプリント回路基板の代表的な一つを示す図。 図2のシステムのシステムインターフェースにおいて使用される、一対のホストプロセッサとグローバルキャッシュメモリ基板との間に接続された一対のフロントエンドディレクタ基板と、一対のディスクドライブとグローバルキャッシュメモリ基板との間に接続された一対のフロントエンドディレクタ基板とを示すブロック図。 図2のシステムにおいて使用されるバックプレーンの立面図であり、このバックプレーンは、フロントエンドディレクタプリント回路基板とバックエンドディレクタプリント回路基板とメモリ基板とを収容するのに適したスロットを有している。 図2のシステムにおいて使用されるバックプレーンの立面図であり、このバックプレーンは、フロントエンドディレクタプリント回路基板とバックエンドディレクタプリント回路基板とメモリ基板を収容すると共に、ダミーフロントエンドディレクタプリント回路基板とダミーバックエンドディレクタプリント回路基板とダミーメモリ基板を収容するのに適したスロットを有し、これらのダミープリント回路基板はジャンパーを有して、このバックプレーンを、図2のメモリ基板とディレクタのすべてを有する完全ポピュレイテドシステム、および、図2のメモリ基板とディレクタの全部の内の一部だけを有するデポピュレイテドシステムと共に使用できるようにしている。 デポピュレイテドシステムにおいて使用されるダミーメモリ基板を示すブロック図。 デポピュレイテドシステムにおいて使用されるダミーディレクタ基板を示すブロック図。 デポピュレイテドシステムにおいて使用されるメモリプリント回路基板の代表的な一つを示す概念図。 デポピュレイテドシステムのシステムインターフェースにおいて使用される、一対のホストコンピュータとグローバルキャッシュメモリ基板の間に接続された一対のフロントエンドディレクタ基板と、一対のディスクドライバとグローバルキャッシュメモリ基板の間に接続された一対のフロントエンドディレクタ基板を示すブロック図。 図13のデポピュレイテドシステムのシステムインターフェースにおける使用に適したユニバーサルディレクタ基板を示すブロック図。

Claims (4)

  1. システムインターフェースを介してホストコンピュータ/サーバとディスクドライブ群との間でデータを転送するためのデータ記憶システムであって、前記システムインターフェースが、複数の第1ディレクタと、複数の第2ディレクタと、グローバルメモリとを有するシステムにおいて、
    前記第1ディレクタを有する複数の第1ディレクタ基板と、
    前記第2ディレクタを有する複数の第2ディレクタ基板と、
    前記グローバルメモリを提供する複数のメモリプリント回路基板と、
    前記メモリプリント回路基板の各々は、一対の冗長なデータ/制御ポートを有する共通メモリアレイと、一対の論理ネットワークとを有し、前記一対の論理ネットワークのそれぞれ一方は、前記一対のデータ/制御ポートの対応するいずれか一方に接続されることと、
    第1ジャンパーを有する複数のダミー第1ディレクタ基板と、
    第2ジャンパーを有する複数のダミー第2ディレクタ基板と、
    第3ジャンパーを有する複数のダミーメモリ基板とからなる、複数のプリント回路基板をプラグ接続するのに適したスロットを有するバックプレーンを備え、
    前記第1ディレクタ基板、前記第2ディレクタ基板、およびメモリプリント回路基板がそれぞれ、前記ダミー第1ディレクタ基板、前記ダミー第2ディレクタ基板、および前記ダミーメモリ基板によって置き換えられたときには、前記第1ジャンパー、第2ジャンパー、および第3ジャンパーはそれぞれ、前記複数の第1ディレクタ基板を前記ホストコンピュータ/サーバに、前記複数の第2ディレクタ基板を前記ディスクドライブ群に、及び、前記グローバルメモリを前記複数の第1ディレクタ基板及び第2ディレクタ基板に接続するために使用されることによって、前記第1ディレクタのうちの一対および前記第2ディレクタのうちの一対が冗長性を有する方式にて前記一対の論理ネットワークに接続されている、データ記憶システム。
  2. 前記第1ディレクタ基板は前記第1のジャンパーによって接続されることで、前記第1ディレクタのうちの1つを前記1対のメモリプリント回路基板のメモリアレイに接続するために配線されている、請求項1に記載のシステム。
  3. 複数の前記ディレクタのそれぞれは異なるプリント回路基板にあり、前記バックプレーンは前記一対の論理ネットワークのそれぞれを、前記第1ディレクタのうちの1つと前記第2ディレクタのうちの1つとに接続すべく前記第3ジャンパーによって配線及び接続されている、請求項に記載のシステム。
  4. 記バックプレーンの前記スロットに前記ダミー基板が挿入されることによって前記複数のプリント回路基板の間を接続する、前記ダミー基板上のジャンパーは、前記ディレクタのそれぞれと前記グローバルメモリとの間で別々のポイントツーポイントデータパスを設ける、請求項に記載のシステム。
JP2003580998A 2002-03-28 2003-03-25 データ記憶システム Expired - Lifetime JP4364650B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/112,598 US6877061B2 (en) 2000-03-31 2002-03-28 Data storage system having dummy printed circuit boards
US10/109,583 US6907483B1 (en) 2002-03-28 2002-03-28 Data storage system having dummy printed circuit boards with jumpers
PCT/US2003/009112 WO2003083638A2 (en) 2002-03-28 2003-03-25 Data storage system

Publications (2)

Publication Number Publication Date
JP2005528675A JP2005528675A (ja) 2005-09-22
JP4364650B2 true JP4364650B2 (ja) 2009-11-18

Family

ID=28677843

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003580998A Expired - Lifetime JP4364650B2 (ja) 2002-03-28 2003-03-25 データ記憶システム

Country Status (3)

Country Link
EP (1) EP1488315A2 (ja)
JP (1) JP4364650B2 (ja)
WO (1) WO2003083638A2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IL156055A0 (en) 2000-11-30 2003-12-23 Teva Pharma Novel crystal forms of atorvastatin hemi calcium and processes for their preparation as well as novel processes for preparing other forms
GB2412205B (en) * 2004-02-10 2006-02-15 Hitachi Ltd Storage system
WO2008149459A1 (ja) * 2007-06-08 2008-12-11 Fujitsu Limited ストレージ装置および制御方法
US20140149785A1 (en) * 2011-10-25 2014-05-29 M. Scott Bunker Distributed management

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE1130482B (de) * 1961-03-07 1962-05-30 Standard Elektrik Lorenz Ag Zwischenleitungsanordnung fuer die Koppelblocks zweier oder mehrerer Koppelstufen inFernmelde-, insbesondere Fernsprechvermittlungsanlagen
US4575780A (en) * 1984-04-03 1986-03-11 Northern Telecom Limited Backpanel assemblies
GB9117745D0 (en) * 1991-08-15 1991-10-02 Bicc Plc Circuit board connector
US7010575B1 (en) * 2000-03-31 2006-03-07 Emc Corporation Data storage system having separate data transfer section and message network having bus arbitration

Also Published As

Publication number Publication date
JP2005528675A (ja) 2005-09-22
EP1488315A2 (en) 2004-12-22
WO2003083638A3 (en) 2004-06-17
WO2003083638A2 (en) 2003-10-09

Similar Documents

Publication Publication Date Title
US6957285B2 (en) Data storage system
US9037671B2 (en) System and method for simple scale-out storage clusters
US7581060B2 (en) Storage device control apparatus and control method for the storage device control apparatus
JP4413184B2 (ja) データストレージシステム及びデータストレージ制御装置
EP1695221B1 (en) Data transferring method
US20050071546A1 (en) Systems and methods for improving flexibility in scaling of a storage system
US6877061B2 (en) Data storage system having dummy printed circuit boards
JP2007080282A (ja) 改善されたネットワーク・インタフェースを有するデータ記憶システム
US7260681B2 (en) Stripe buffer list
EP2517110A2 (en) Configurable interconnection system
US11157204B2 (en) Method of NVMe over fabric RAID implementation for read command execution
US20140223097A1 (en) Data storage system and data storage control device
US7117305B1 (en) Data storage system having cache memory manager
JP2003050751A (ja) 電子装置のバックプレーンを接続する方法及びその装置
JP4364650B2 (ja) データ記憶システム
US20030135692A1 (en) Method and system for configuring RAID subsystems with block I/O commands and block I/O path
US6907483B1 (en) Data storage system having dummy printed circuit boards with jumpers
US6934158B1 (en) Disk drive system for a data storage system
US6914784B1 (en) Data storage system cabinet
US7099980B1 (en) Data storage system having port disable mechanism
US6418511B1 (en) Large capacity data storage systems using redundant buses
US7454536B1 (en) Data system having a virtual queue
US6880032B1 (en) Data storage system having concurrent ESCON channels
JP2006209549A (ja) データストレージシステム及びデータストレージ制御装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20061026

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061205

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20070305

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20070322

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070605

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080422

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20080722

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20080729

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081022

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090819

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

Free format text: PAYMENT UNTIL: 20120828

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4364650

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20120828

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130828

Year of fee payment: 4

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

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

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

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