JP4112954B2 - 磁気ディスク記憶制御装置 - Google Patents
磁気ディスク記憶制御装置 Download PDFInfo
- Publication number
- JP4112954B2 JP4112954B2 JP2002337807A JP2002337807A JP4112954B2 JP 4112954 B2 JP4112954 B2 JP 4112954B2 JP 2002337807 A JP2002337807 A JP 2002337807A JP 2002337807 A JP2002337807 A JP 2002337807A JP 4112954 B2 JP4112954 B2 JP 4112954B2
- Authority
- JP
- Japan
- Prior art keywords
- unit
- path
- data
- switch unit
- access
- 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 - Fee Related
Links
Images
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Description
【発明の属する技術分野】
本発明はディスクアレイを有する磁気ディスク記憶制御装置に係り、特にディスクアレイに記録されるデータを一時的に格納するキャッシュメモリのアクセスパスの構成に関する。
【0002】
【従来の技術】
磁気ディスク記憶制御装置(ディスクアレイ制御装置)はコンピュータの2次記憶装置として広く使用されているが、主記憶のI/O性能に比較し常に3〜4桁程度I/O性能が低く、従来からこの差を縮める努力が行われてきた。磁気ディスクサブシステムのI/O性能を向上させる為の方法としては、複数の磁気ディスク装置を並列動作させデータを複数の磁気ディスクに分散記憶させるディスクアレイ方式が知られている。
【0003】
ディスクアレイ方式では、複数のディスク装置を並列に動作させる事で、I/O性能及びシーケンシャルアクセス時のスループット性能を向上する事ができるが、複数のディスクへのアクセスと同時にデータ転送を行う必要がある為、装置性能を引き上げる為にはディスク装置とホスト側I/F部を接続する内部パスにも高いデータ転送性能が求められる。
【0004】
従来のディスクアレイ制御装置は特許文献1に示されるように、複数のホストコンピュータとのホストインターフェース部、複数のディスクドライブとのディスクインターフェース部、装置の制御情報を記憶する制御用共有メモリ部(以下共有メモリ部という)、ディスクドライブに書き込むデータを一時記憶するデータ用共有メモリ部(以下キャッシュメモリ部という)、スイッチ部、により構成されており、ホストインターフェース部及びディスクインターフェース部とスイッチ部はそれぞれ独立した一本の双方向パスで1対1に接続され、同じくスイッチ部と複数のキャッシュメモリ部とはそれぞれ独立した一本の双方向パスで接続されている。また、ホストインターフェース部及びディスクインターフェース部のプロセッサは接続パスで共有メモリ部と接続されており、ホストインターフェース部及びディスクインターフェース部は、共有メモリ部で互いに通信を取りながらスイッチ部経由でキャッシュメモリ部のアクセスを行う。
【0005】
このようなディスクアレイはスイッチ接続型ディスクアレイと呼ばれ、一般的にスイッチ部とキャッシュメモリ部とを接続する双方向パスの帯域と本数で決定される総転送帯域によりシステムのスループット性能が決定されるが、キャッシュメモリ部との接続パスの物理本数は比較的多くすることが可能である為、物理ピン数の限界から接続パス1本の転送スループットは共有バス方式に比べ大きく出来ないものの、装置全体としての限界転送スループットは大きく、システムのスループット性能の向上を行いやすいアーキテクチャであると言われて来た。
【0006】
また、ホストインターフェース部、ディスクインターフェース部あるいはキャッシュメモリ部の増設により、前記接続パスの本数も増加する為、機能部位の増設に従いシステム性能が向上する為、スケーラブルなアーキテクチャであるとも言われている。
【0007】
【特許文献1】
特開2000−200156号公報(第6−7頁、図1)
【0008】
【発明が解決しようとする課題】
ホストコンピュータ側の急速な性能向上、ネットワークの高速化に伴いディスクアレイシステムの性能に対する市場要求もより厳しいものとなって来ている。これに対し、前記の通りスイッチ接続型ディスクアレイでは、キャッシュメモリ部への接続パス本数を多くする事により装置としてのスループット性能の向上が可能であると言われて来た。
【0009】
しかしスイッチ接続型ディスクアレイであっても、実装上の問題により接続パスの本数が限界に達し初めており、接続パス数の増加のみでは更なる性能向上には限界がある。この為、信号ピン数の増加無しに接続パス1本当たりの転送性能の向上が求められている。
【0010】
使用する信号線数を増加させずにパスの転送性能を向上させるには、一般に動作周波数を上げると言う手段が考えられる。この場合、使用する物理インターフェース(I/F)の種類により動作周波数の上限が決定するが、近年通信等の分野ではLVDSに代表される差動信号を使用した低振幅I/Fを使用する事で動作周波数を向上する試みが多く見られる。
【0011】
差動信号I/Fを使用した場合、そのパスは送信方向が単方向となる為、通常単方向のパスを2本組み合わせ全二重のパスとして使用する。これをディスクアレイ制御装置のスイッチ部とキャッシュメモリ部とを接続するパスに適用すれば、動作周波数の向上、即ち接続パス1本当りの転送性能向上が実現出来る。
【0012】
キャッシュメモリ部を有するディスクアレイ装置の場合、一般にホストからのライトアクセスではホストインターフェース部はキャッシュメモリへのデータライト、ディスクインターフェース部はキャッシュメモリからのデータリードを行い、ホストからのリードアクセスではホストインターフェース部はキャッシュメモリからのデータリード、ディスクインターフェース部はキャッシュメモリへのデータライト行う。
【0013】
この為、通常キャッシュメモリ部へのアクセスはライトアクセスとリードアクセスが混在するが、複数のホストコンピュータがデータを共有するようなディスクアレイ装置の場合、キャッシュメモリへのアクセスは比較的転送データ長の長いアクセスが主体である一方、ライトアクセス・リードアクセスの発生順は一定では無い。この為、単純に全二重パス化すると、ライトアクセスが連続した場合にはスイッチ部からキャッシュメモリ部への下りパスのみが混雑する一方、リードアクセスが連続した場合には反対に上りパスのみが混雑する事になり、全二重パスの有する帯域を有効利用できないと言う問題がある。
【0014】
上記問題点はキャッシュメモリ部がスイッチ部から送られてくるアクセス要求パケットを一定数バッファリングする機能を有し、スイッチ部はキャッシュメモリ部がバッファ可能である個数だけ常に要求パケットを送りつけるというコネクションレスアクセス方式を採用し、バッファ可能なアクセス要求パケットの数を多くする事である程度緩和可能である。しかしながら、上記の通りディスクアレイサブシステムでは1回のアクセスでの転送データ長が比較的長い為、バッファ可能なアクセス要求パケットを多くする事は、装置コストに悪影響を及ぼす。
【0015】
従って、スイッチ部とキャッシュメモリ部との接続に全二重パスを使用した場合に、全二重パスの持つ帯域の有効利用を低コストで実現する事が本発明の改善すべき課題である。
【0016】
本発明の目的は、スイッチ部とキャッシュメモリ部間に全二重パスを適用した場合の接続パスの利用状況を改善する事で上記課題を解決し、ホストインターフェース部、ディスクインターフェース部、キャッシュメモリ部間のデータ転送スループットの高い磁気ディスク記憶制御装置を低コストで提供する事である。
【0017】
【課題を解決する為の手段】
前記目的を達成するために本発明では、キャッシュメモリを有する磁気ディスクサブシステムにおいて、ホストインターフェース部及びディスクインターフェース部がキャッシュメモリをアクセスする為に共有するアクセスパスを全二重方式のパスで構成し、この全二重パスに対して前記キャッシュメモリへのアクセスが可能な限りリードアクセスとライトアクセスが交互に発行される様に制御を行う。
【0018】
すなわち、共有する全二重パスにリードアクセスとライトアクセスが交互に転送されることにより、リードデータが上りパスをホストインターフェース部又はディスクインターフェースに向かって移動するのと同時に、ライトデータが下りパスをキャッシュメモリに向かって移動するようになる。
【0019】
また、本発明ではリードデータとライトデータが、それぞれ下りパスと上りパスを同時刻に移動する比率を改善する事で効率を改善する為、1回のリードアクセスでリードデータが上りパスを移動する時間と1回のライトアクセスでライトデータが下りパスを移動する時間が等しい場合により効果が大きくなる。
【0020】
また、本発明ではキャッシュメモリを共有するデータアクセスマスタの数が多く並列して動作している場合の方が、リードアクセス、ライトアクセス要求が同時刻にスイッチ部に発行され、スイッチ部がリード・ライトアクセスを交互に発行できる可能性が高まる。
【0021】
【発明の実施の形態】
図1は、本発明を適用した磁気ディスク記憶制御装置(ディスクアレイ制御装置)の一実施例を示した図である。本実施例では、ディスクアレイ制御装置1は複数のホストコンピュータ3とのホストインターフェース部4、複数の磁気ディスクドライブを冗長配列したディスクアレイ5とのディスクインターフェース部6、装置の制御情報を記憶する共有メモリ部2及びディスクアレイ5に書き込むデータを一時記憶するキャッシュメモリ部7、スイッチ部8、により構成されている。
【0022】
ホストインターフェース部4、ディスクインターフェース部6とスイッチ部8はそれぞれ独立した全二重パス9(以下Mパス9と呼ぶ)で1対1に接続され、同じくスイッチ部8とキャッシュメモリ部7とはそれぞれ独立した全二重パス10(以下Sパス10と呼ぶ)で接続されており、ホストインターフェース部4、ディスクインターフェース部6はスイッチ部8経由でキャッシュメモリ部7のアクセスを行うようになっている。また、ホストインターフェース部4、ディスクインターフェース部6からキャッシュメモリ部7へのアクセス方法はパケット方式を使用したコネクションレスの全二重方式となっている。
【0023】
Mパス9は各インタフェース部からスイッチ部8方向へのデータ送信を担う下りパス9aとスイッチ部8から各インタフェース部方向へのデータ送信を担う上りパス9bから構成されており、上り下りで独立したパスを有する事で全二重アクセスに対応している。同様にSパス10はスイッチ部8からキャッシュメモリ部7方向へのデータ送信を担う下りパス10aとキャッシュメモリ部7からスイッチ部8方向へのデータ送信を担う上りパス10bから構成されており、上り下りで独立したパスを有する事で全二重アクセスに対応している。
【0024】
また、ホストインターフェース部4、ディスクインターフェース部6の制御用プロセッサMP11,14(以下CHP11、DKP11と呼ぶ)は図示されていない接続パス▲1▼で共有メモリ部2と接続されており、ホストインターフェース部4、ディスクインターフェース部6は、共有メモリ部2で互いに通信を取りながらスイッチ部8経由でキャッシュメモリ部7のアクセスを行う様になっている。
【0025】
本実施例では、スイッチ部8に接続しているホストインターフェース部4、ディスクインターフェース部6は各2個、キャッシュメモリ部7の数量は4個であるが、この個数は任意に設定可能である。ただしスイッチ部8に接続するホストインターフェース部4、ディスクインターフェース部6の数がキャッシュメモリ部7の数に比較し多い場合の方がスイッチ部8にて調停を受けるアクセス要求の数が多く成る為、キャッシュメモリ部7に対しリードアクセス・ライトアクセスを交互に実行できる可能性が高くなり、効果は大きいと言える。
【0026】
ホストインターフェース部4は、ホストインターフェース部4を制御する2個のプロセッサMP11(以下CHP11)、CHP11の指示によりホストCPU3とキャッシュメモリ部7間のデータ転送を行う2個のチャネルI/F回路12、チャネルI/F回路12とスイッチ部8間の通信制御を行うキャッシュメモリアクセス制御部13から構成され、2つのチャネルI/F回路12とキャッシュメモリアクセス制御部13は専用パスで1対1に接続されている。
【0027】
ディスクインターフェース部6は、ディスクインターフェース部6を制御する2個のプロセッサMP14(以下DKP14)、DKP14の指示によりディスクアレイ5とキャッシュメモリ部7間のデータ転送を行う2個のディスクI/F回路15、ディスクI/F回路15とスイッチ部8間の通信制御を行うキャッシュメモリアクセス制御部13から構成され、2つのディスクI/F回路15とキャッシュメモリアクセス制御部13は専用パスで1対1に接続されている。
【0028】
スイッチ部8は、ホストインターフェース部4又はディスクインターフェース部6からMパス9a経由でキャッシュメモリアクセス要求を受信する。スイッチ部8は受信したキャッシュメモリアクセス要求を解析し、同一のキャッシュメモリ部7に対するアクセス要求が複数存在する場合にはアービトレーションを行い、キャッシュメモリ部7にアクセス要求を発行する順序を決定し、順にSパス10a経由でアクセス要求をキャッシュメモリ部7に発行する様に動作する。また、アクセス要求先が異なるキャッシュメモリ部7に分散している場合には、可能な限り同時に複数のSパス10a経由でアクセス要求をそれぞれのキャッシュメモリ部7に発行する。
【0029】
本実施例は、スイッチ部8が同一のキャッシュメモリ部7に対するアクセス要求を受信した場合に、アクセス要求がリード・ライト交互にキャッシュメモリ部7に発行されるように動作する事が一つの特徴であるが、これを実現する為のスイッチ部8の構成説明は後ほど図5を使用して行う。
【0030】
キャッシュメモリ部7は、SパスI/F部16、メモリ制御部17、複数のメモリモジュール18の順に接続され構成されており、スイッチ部8経由で送られてくるアクセス要求を解析してメモリモジュール18へのデータの読み、書きを行う。
【0031】
ホストインターフェース部4及びディスクインターフェース部6のキャッシュメモリアクセス制御部13は複数の通信パケットを保持出来るようになっており、これによりコネクションレスの全二重アクセスを実現しているが、これらについては後ほど説明する。
【0032】
ホストコンピュータ3からディスクアレイ制御装置1へのデータの読み出し時は、その要求がチャネルI/F回路12経由でまずCHP11に伝わる。次にCHP11は図示されていない接続パス▲1▼経由で共有メモリ部2上の制御情報を読み出し、キャッシュメモリ部7上に要求データが存在するかを確認する。要求データがキャッシュメモリ部7に存在する場合には、CHP11はチャネルI/F回路12−キャッシュメモリアクセス制御部13−スイッチ部8経由でキャッシュメモリ部7上の読み出し対象データを読み出し、ホストコンピュータ3に送信する。
【0033】
要求データが存在しない場合、CHP11はディスクアレイ5上の対象データを読み出しキャッシュメモリ部7に書き込む指示を共有メモリ部2を介してある1つのディスクインターフェース部6のDKP14に伝える。指示を受けたDKP14は、ディスクアレイ5とキャッシュメモリ部7間のデータ転送を行うディスクI/F回路15を使用して該当データをキャッシュメモリ部7に転送する。
【0034】
データ転送終了後DKP14は共有メモリ部2を介して要求元のCHP11にキャッシュメモリ部7へのデータ転送終了を報告する。データ転送終了の報告を受けてCHP11は、チャネルI/F回路12−キャッシュメモリアクセス制御部13−スイッチ部8経由でキャッシュメモリ部7上の当該データを読み出しホストコンピュータ3への要求データの送信を行う。
【0035】
ホストコンピュータ3からディスクアレイ制御装置1へのデータの書き込み時は、その要求がチャネルI/F回路12経由でまずCHP11に伝わる。次にCHP11はチャネルI/F回路12−キャッシュメモリアクセス制御部13−スイッチ部8経由でキャッシュメモリ部7に当該データを書き込む。またCHP11はキャッシュメモリ部7に当該データを書き込んだ事を共有メモリ部2を介してある1つのディスクインターフェース部6のDKP14に伝える。またこの時点でホストコンピュータ3に対し書き込み終了通知を発行する。通知を受けたDKP14はディスクアレイ5とキャッシュメモリ部7間のデータ転送を行うディスクI/F回路15を使用してディスクI/F回路15−キャッシュメモリアクセス制御部13−スイッチ部8−キャッシュメモリ部7の経路を経由して該当データをキャッシュメモリ部7から読み出しディスクアレイ5に書き込む。
【0036】
前記実施例では、ホストインターフェース部4、ディスクインターフェース部6とスイッチ部8はそれぞれ独立した全二重パス9で1対1に接続されているが、全二重パス9はホストインターフェース部4とディスクインターフェース部6が共有する構成にすることもできる。この場合は、キャッシュメモリ部7に対するライトアクセスとリードアクセスの交互に発行できる頻度をより高めることができる。
【0037】
以上、本実施例の基本構成及び動作を説明したが、以下に各構成要素の具体的構成及び動作を説明する。
(1)パケットの構成について
図2はホストインターフェース部4、ディスクインターフェース部6からキャッシュメモリ部7へのアクセスに使用されるパケットの構成を示した図である。キャッシュメモリ部7へのライトアクセスにはコマンド・データパケット30とステータスパケット31が使用される。コマンド・データパケット30は、パケットの種別36、アクセス元37、キャッシュアドレス38、転送データ長39、の各パケット情報を含むヘッダ部34とキャッシュメモリ部7へのライトデータ40を保持するデータ部35、パケットのチェックコード41から構成される。ステータスパケット31は、同様なヘッダ部34と転送結果を示すステータス42、パケットチェックコード41とから構成される。
【0038】
キャッシュメモリ部7へのライトアクセスではホストインターフェース部4、ディスクインターフェース部6からスイッチ部8を経由し、キャッシュメモリ部7に対し下りのMパス9a、Sパス10aを使用してコマンド・データパケット30が送信される。キャッシュメモリ部7はライトデータ40をキャッシュアドレス38で指定されたキャッシュメモリアドレスに書き込み、その結果をステータスパケット31にしてスイッチ部8経由でホストインターフェース部4、ディスクインターフェース部6に上りのSパス10b、Mパス9bを使用して返信する。コマンド・データパケット30におけるライトデータ40の長さはステータスパケット31のステータス42に比較し遥かに長く、キャッシュメモリ部7へのライトアクセスでは、Mパス9、Sパス10の下りパス9a、10aが使用される時間と上りパス9b、10bが使用される時間との比は約100:1になる。
【0039】
キャッシュメモリ部7へのリードアクセスにはコマンドパケット32とデータ・ステータスパケット33が使用される。コマンドパケット32は、パケットの種別36、アクセス元37、キャッシュアドレス38、転送データ長39、の各パケット情報を含むヘッダ部34とパケットのチェックコード41から構成される。データ・ステータスパケット33は、同様なヘッダ部34とリードデータ43を保持するデータ部35、転送結果を示すステータス42、パケットチェックコード41とから構成される。
【0040】
キャッシュメモリ部7へのリードアクセスではホストインターフェース部4、ディスクインターフェース部6からスイッチ部8を経由し、キャッシュメモリ部7に対し下りのMパス9a、Sパス10aを使用してコマンドパケット32が送信される。キャッシュメモリ部7はリードデータ43をキャッシュアドレス38で指定されたキャッシュメモリアドレスから読み出し、読み出したデータと読み出し結果からデータ・ステータスパケット33を作成し、スイッチ部8経由でホストインターフェース部4、ディスクインターフェース部6に上りのSパス10b、Mパス9bを使用して返信する。データ・ステータスパケット33におけるリードデータ43の長さはコマンドパケット32のヘッダ部34に比較し遥かに長く、キャッシュメモリ部7へのリードアクセスではライトアクセスの場合とは逆にMパス9、Sパス10の上りパス9b、10bが使用される時間と、下りパス9a、10aが使用される時間との比は約100:1となる。
(2)キャッシュメモリアクセス制御部13について
図3はキャッシュメモリアクセス制御部13の構成を示したものである。キャッシュメモリアクセス制御部13は、1つの下りパス用セレクタ60、1つの上りパス用セレクタ61、チャネルI/F回路12又はディスクI/F回路15に対応し1パケット分のパケットを一時格納するパケットバッファ62が2個、スイッチ部8への下りMパス9a用の1つのパスI/F回路63a、スイッチ部8からの上りMパス9b用の1つのパスI/F回路63b、スイッチ部8から送られてくるパケットを一時保管する1つのRxパケットバッファ65、そして主に下り方向の転送制御を行う1つのデータ転送制御部A 66aと主に上り方向の転送制御を行う1つのデータ転送制御部B 66bから構成される。
【0041】
セレクタ60の2つの入力ポートはパケットバッファ62を経由してデータ線67でそれぞれ異なるチャネルI/F回路12又はディスクI/F回路15に接続され、一方セレクタ60の出力のポートはパスI/F63aを経由して下りデータ線68aでスイッチ部8の下りMパスポートと接続される。
【0042】
データ転送制御部A 66aは制御線69で2つのチャネルI/F回路12又はディスクI/F回路15に接続され、一方制御線70でスイッチ部8内のMパス側制御部A 87aと接続される。下りデータ線68a、制御線70のセットが1つの下りMパス9aに相当する。データ転送制御部A 66aは、2つのチャネルI/F回路12又はディスクI/F回路15からのアクセス要求のアービトレーションを行い、制御線70でスイッチ部8との通信を取りながらセレクタ60を切替え、スイッチ部8への下り方向のパケット送信を行う。そしてこの時、制御線70の示す情報を元に可能な限りスイッチ部8のMパス側制御部A 87aに複数パケット分の転送要求が保持される様に動作する。
【0043】
セレクタ61の入力ポートはRxパケットバッファ65を経由して上りデータ線68bでスイッチ部8の上りMパスポートと接続され、一方セレクタ61の2つの出力ポートはパケットバッファ62経由でそれぞれ異なるチャネルI/F回路12又はディスクI/F回路15に接続される。データ転送制御部B 66bはスイッチ部8から上りデータ線68bを送られてきた返信パケットがRxパケットバッファ65に取りこまれると、そのヘッダ部35のアクセス元37を解析し、セレクタ61を切り替えて受信パケットをアクセス元となるチャネルI/F回路12又はディスクI/F回路15に送信する。
【0044】
データ転送制御部A 66aとデータ転送制御部B 66bは独立して動作可能であり、上記構成により、本実施例ではMパスにおいて最大2パケットまでのコネクションレスな全二重通信が可能となっている。
(3)スイッチ部8について
図4はスイッチ部8の構成を示したものである。スイッチ部8は大別してホストインターフェース部4及びディスクインターフェース部6にMパス9にて接続される4つのMパスポート部80、キャッシュメモリ部7にSパス10にて接続される4つのSパスポート部81、両者を接続するセレクタ部82、Mパスポート部80からのキャッシュアクセス要求に対しSパスポート部81の使用権を調停するTxアービタ部83、Sパスポート部81からホストインターフェース部4及びディスクインターフェース部6への返信パケットのMパス使用権を調停するRxアービタ部84から構成される。
【0045】
Mパスポート部80はホストインターフェース部4又はディスクインターフェース部6のキャッシュメモリアクセス制御部13との下りMパス用の1つのパスI/F86a、同じく上りMパス用の1つのパスI/F86b、2パケット分までのパケットを一時格納する一つのパケットバッファ88、そして下り方向の転送を制御するMパス側制御部A 87aと上り方向の転送を制御するMパス側制御部B 87bから構成される。
【0046】
パケットバッファ88の入力側は、下りMパス用のパスI/F86aを介して下りデータ線68aでホストインターフェース部4又はディスクインターフェース部6のキャッシュアクセス制御部13に接続されており、パケットバッファ88の出力側は、内部下りパス89aで下り側セレクタ100aのMパスポート入力側に接続されている。一方、上りMパス用パスI/F86bは入力側が内部上りパス89bで上り側セレクタ100bのMパスポート出力側に接続され、出力側は上りデータ線68bでホストインターフェース部4又はディスクインターフェース部6のキャッシュアクセス制御部13の上りパスI/F63bに接続されている。
【0047】
Mパスポート部80はさらに制御線70でホストインターフェース部4又はディスクインターフェース部6内のデータ転送制御部A 66aと接続される一方、SパスREQ線90、SパスACK線91aでTxアービタ83と接続されている。また、SパスREQ線90に関しては、キャッシュライトアクセスとリードアクセスに対応して、要求するSパスポートに各2本づつ接続されている。(▲1▼W、▲1▼R)
Sパスポート部81はキャッシュメモリ部7のSパスI/F部16との下りSパス用の1つのパスI/F92a、同じく上りSパス用の1つのパスI/F92b、2パケット分までのパケットを一時格納する一つのRxパケットバッファ93、そして下り方向の転送を制御するSパス側制御部A 94aと上り方向の転送を制御するSパス側制御部B 94bから構成される。
【0048】
下りSパス用パスI/F92aは入力側を内部下りパス95aで下り側セレクタ100aのSパスポート出力側に接続され、出力側を下りSパスデータ線96aでキャッシュメモリ部7の下りSパス用パスI/F131aに接続されている。Rxパケットバッファ93の入力側は、上りSパス用のパスI/F92bを介してSパス上りデータ線96bでキャッシュメモリ部7の上りSパス用パスI/F131bに接続されており、Rxパケットバッファ93の出力側は、内部上りパス95bで上り側セレクタ100bのSパスポート入力側に接続されている。
【0049】
Sパスポート部81はさらに制御線97でキャッシュメモリ部7のSパス側制御部A 132aと接続される一方、MパスREQ線98、MパスACK線99aでRxアービタ84と接続されている。
【0050】
キャッシュメモリアクセス制御部13からの1つのアクセス要求は、図2で示した構成を持つパケット(ライトアクセスではコマンド・データパケット30、リードアクセスではコマンドパケット32)として下りMパス9a経由でMパスポート部80のパケットバッファ88に書き込まれる。Mパス側制御部A 87aはこのパケットバッファ88内の、パケットヘッダ部34を解析しSパスポートの使用要求(SパスREQ90)をライト使用要求(▲1▼W)又は、リード使用要求(▲1▼R)でTxアービタ83に発行する。
【0051】
Txアービタ83は4つのMパスポート制御部80からのアクセス要求に対しアービトレーションを行ない、下りSパスポートの使用者を決定する。続けてTxアービタ83は下り側セレクタ100aの切り替え及び転送の対象となるMパス側制御部A 87a、Sパス側制御部A 94aにSパス使用権獲得(SパスACK91a)、転送開始指示(91b)、及びアクセス内容の通知を行う。通知を受けたSパス側制御部A 94aは制御線97でキャッシュメモリ部7との通信を取りながらパケットバッファ88からパケットを抜き出しキャッシュメモリ部7へのパケット送信を行なう。Mパス側制御部A 87aはパケットバッファ88からのパケットの抜き出しが完了した時点で、パケットバッファ88上に保管されている次のパケットの解析作業を開始し、上記動作を繰り返す。
【0052】
なおキャッシュメモリ部7側も2つまでのパケットを一時保管出来るパケットバッファを有しており、Sパスポート部81はキャッシュメモリ部7の終了応答(ステータスパケット31又はデータ・ステータスパケット33)を待たずに、2つのパケットまでキャッシュメモリ部7に送信する事が出来るようになっている。
【0053】
一方、キャッシュメモリ部7からの返信パケット(ライトアクセスおけるステータスパケット31、リードアクセスにおけるデータ・ステータスパケット33)は上りSパス10b経由でSパスポート部81のRxパケットバッファ93に書き込まれる。Sパス側制御部B 94bはこのRxパケットバッファ93内の、パケットヘッダ部34のアクセス元37を解析しMパスポートの使用要求(MパスREQ98)をRxアービタ84に発行する。
Rxアービタ84は4つのSパスポート制御部81からの使用要求に対しアービトレーションを行ない、上りMパスポートの使用者を決定する。続けてRxアービタ84は上り側セレクタ100bの切り替え及び転送の対象となるSパス側制御部B 94b、Mパス側制御部B 87bにMパス使用権獲得(MパスACK99a)、転送開始指示(99b)、及びアクセス内容の通知を行う。通知を受けたMパス側制御部B 87bはパケットバッファ88からパケットを抜き出しキャッシュメモリアクセス制御部13への返信パケットの送信を行なう。
【0054】
Mパス側、Sパス側の各制御部A、Bは各々独立に動作可能となっており、上記の構成と動作によりスイッチ部8はSパス10、Mパス9とも全二重転送が可能であり、2パケットまでのコネクションレス転送を行なうようになっている。また上記の方法で、キャッシュメモリ部7に対するパケット送信動作が行なわれるが、本実施例ではTxアービタ83が各Sパス10の使用権を決定する際に、ライトアクセス・リードアクセスが交互になる様にアービトレーションする様になっており、これにより全二重パスであるSパス10の使用効率の向上が図られている。
(4)Txアービタ83について
図5はTxアービタ83の構成を示している。Txアービタ83はSパス10に対応した4つのアービタブロック110から構成される。各アービタブロック110はライトアービタ部111、リードアービタ部112、Sパスポートの使用状況を示すBUSYフラグ113、セレクタ114、これらを制御するアービタ制御論理115から構成される。アービトレーションはSパス毎、アクセス種別毎ののREQ信号を元に各Sパス毎実施され、ライト要求はライトアービタ部111、リード要求はリードアービタ部112にて行なわれる様になっている。
【0055】
一回のSパス10へのパケット送信毎にアービタ制御論理115がセレクタ114を切り替え、ライト要求のアービトレーション、リード要求のアービトレーションが交互に行なわれる様になっている。また、ライト・リードいずれか片方のアクセス要求しかない場合は、アービタ制御論理115がこれを検出しセレクタ114をアクセス要求が発生している方に切り替えてアービトレーションを行なう。上記構成によりTxアービタ83は各Sパス10の使用権を決定する際に、ライトアクセス・リードアクセスが交互になる様に動作する。
(5)キャッシュメモリ部7について
図6はキャッシュメモリ部7の構成を示している。キャッシュメモリ部7は大別してSパスI/F部16とメモリ部131から構成されている。SパスI/F部16はスイッチ部8の下りSパスI/F92aと接続するパスI/F131a、スイッチ部8の上りSパスI/F92bと接続するパスI/F131b、下りパス側を制御するSパス側制御部A 132a、上りパス側を制御するSパス側制御部B 132b、2パケット分までパケットの一時保持が可能な下りパス用パケットバッファ134a、2パケット分までパケットの一時保持が可能な上りパス用パケットバッファ134bから構成されている。
【0056】
パスI/F131aは下りSパスデータ線96aでスイッチ部8の下りパスI/F92aと接続される一方、パケットバッファ134a、データ線135a、セレクタ136経由でデータ線137によりメモリモジュール18に接続されている。Sパス側制御部A 132aは制御線97でスイッチ部8のSパス側制御部A 94aと接続され、制御線97で通信をしながら下りデータ線96aを使用しスイッチ8からの送信パケットの受信を行なう。
【0057】
パスI/F131bは上りSパスデータ線96bでスイッチ部8の上りパスI/F92bと接続される一方、パケットバッファ134b、データ線135b、セレクタ136経由でデータ線137によりメモリモジュール18に接続されている。Sパス側制御部B 132bは上りデータ線96bを使用しスイッチ8への返信パケットの送信を行なう。
【0058】
メモリ部131はメモリ制御部17とメモリモジュール18から構成されている。メモリ制御部17の内部にはパケットヘッダ解析部140があり、メモリ制御部17はSパス10aで送信されパケットバッファ134aに格納されたパケットのヘッダ情報を解析し、要求に従ってメモリモジュール18に対するデータの読み書きを実行する。
【0059】
メモリモジュール18に対する読み書き動作が完了するとメモリ制御部131はSパス側制御部B 132bにこれを通知し、Sパス側制御部B 132bは返信用パケットをパケットバッファ134b上に作成してこれをスイッチ部8に送信する。
【0060】
Sパス側制御部A 132aとSパス側制御部B 132bは各々独立に動作可能となっており、上記の構成と動作によりSパス10は全二重転送が可能で、2パケットまでのコネクションレス転送を行なうようになっている。また、転送要求パケットの処理はスイッチ部8からの転送要求パケットの受信順に従って処理を行う様になっている。
(6)Sパス10上のデータパケットの動きについて
図7はスイッチ部8上でホストインターフェース部4及びディスクインターフェース部6から1つのキャッシュメモリ部7へのアクセスが、4個が競合した場合のSパス10上のデータパケットの動きを示した図である。
【0061】
図7の例では、スイッチ部8上で競合しているアクセス要求はキャッシュリードアクセス2個、キャッシュライトアクセス2個の合計4個である。スイッチ部8は図5に示したTxアービタ83にて4つのアクセス要求をリードアクセス・ライトアクセス毎にアービトレーションする。これにより、まず1つのキャッシュリードアクセスが選択され下りSパス10aを使用してリードのコマンドパケット200がキャッシュメモリ部7に送信される。本例では2パケットまでのコネクションレスアクセスを採用している為、スイッチ部8は続けて次のアクセスのアービトレーションを行ない、今度は1つのキャッシュライトアクセスが選択され、リードのコマンドパケット200に続けて1つ目のライトのコマンド・データパケット201が下りSパス10aを使用してキャッシュメモリ部7に送信される。
【0062】
キャッシュ部メモリ7は1つ目のリードのコマンドパケット200を受信すると、これを解析してメモリモジュール18よりデータを読み出し、ステータス情報を付加してデータ・ステータスパケット202を作成して上りSパス10bを使用してスイッチ部8に返信する。また、キャッシュメモリ部7は続けて送られてくる1つ目のライトアクセスについてもコマンド・データパケット201を解析して、メモリモジュール18にデータを書き込み、結果をステータスパケット203として上りSパス10bを使用してスイッチ部8に返信する。
【0063】
スイッチ部8は1つ目のリードのデータ・ステータスパケット202を受信すると、それをアクセス要求元に返信すると同時に、次のアクセスのアービトレーションを行ない、今度は2つ目のキャッシュリードアクセスが選択され、下りSパス10aを使用して2つ目のリードのコマンドパケット204がキャッシュメモリ部7に送信する。また、スイッチ部8は次に1つ目のライトアクセスに対応するステータスパケット203を受信し、それをアクセス要求元に返信すると同時に、次のアクセスのアービトレーションを行ない、今度は2つ目のキャッシュライトアクセスを選択し、下りSパス10aを使用して2つ目のライトのコマンド・データパケット205がキャッシュ部7に送信する。
【0064】
キャッシュメモリ部7は同様に2つ目のリードのコマンドパケット204、2つ目のライトのコマンド・データパケット205を受信して、順に処理しそれぞれデータ・ステータスパケット206、ステータスパケット207としてスイッチ部8に返信する。したがって、ライトのコマンド・データパケット201、205とリードのデータ・ステータスパケット202、206の送信は、下り・上りの両Sパス10で大部分の時間並行して行なわれる様に動作する事となる。
【0065】
なお、ライトアクセス2つ、リードアクセス2つが、リード1、ライト1、リード2、ライト2の順に処理される例を示したが、ライト1、リード1、ライト2、リード2の順に処理される場合で有っても、リード1、ライト2の転送データパケット転送は大部分の時間並行して行なわれる様に動作する。
【0066】
以上の本実施例によれば、スイッチ部8とキャッシュメモリ部7を接続するSパス10において下りSパス10aと上りSパス10bが同時に使用される割合が高まる為、Sパス10の使用率が向上し、ディスクアレイ装置のスループットを引き上げる事が可能となる。
【0067】
【発明の効果】
本発明によれば、スイッチ部とキャッシュメモリ部間を接続する全二重パスの利用状況を改善する事で、ホストインターフェース部及びディスクインターフェース部とキャッシュメモリ部間のデータ転送スループットの高い磁気ディスク記憶制御装置を提供する事が出来る。
【図面の簡単な説明】
【図1】本発明の一実施例によるディスクアレイ制御装置のブロック構成図である。
【図2】図1に示す実施例におけるキャッシュメモリ部アクセスの転送に使用されるパケット構成を示す図である。
【図3】図1に示す実施例におけるキャッシュメモリアクセス制御部の構成を示す図である。
【図4】図1に示す実施例におけるスイッチ部の構成を示す図である。
【図5】図1に示す実施例におけるスイッチ部のTxアービタの構成を示す図である。
【図6】図1に示す実施例におけるキャッシュメモリ部の構成を示す図である。
【図7】図1に示す実施例におけるスイッチ部とキャッシュメモリ部間の転送パケットの動きを示す図である。
【符号の説明】
1 ディスクアレイ制御装置(磁気ディスク記憶制御装置)
2 共有メモリ部
3 ホストコンピュータ
4 ホストインターフェース部
5 ディスクアレイ
6 ディスクインターフェース
7 キャッシュメモリ部
8 スイッチ部
9 全二重パス(Mパス)
10 全二重パス(Sパス)
9a,10a 下りパス
9b,10b 上りパス
11,14 プロセッサ
12 チャネルI/F回路
13 キャッシュメモリアクセス制御部
15 ディスクI/F回路
16 SパスI/F部
17 メモリ制御部
18 メモリモジュール
83 Txアービタ
84 Rxアービタ
134a,134b パケットバッファ
Claims (7)
- 磁気ディスク装置と、該磁気ディスク装置に記録するデータを一時格納する複数のメモリと、上位装置に接続される複数の第1のインターフェース部と、前記磁気ディスク装置に接続された複数の第2のインターフェース部と、前記第1及び第2のインターフェース部からのアクセス要求を受信するスイッチ部と、該スイッチ部と前記第1及び第2のインターフェース部を接続する第1の全二重パスと、当該スイッチ部と前記複数のメモリを接続する第2の全二重パスとを有し、
前記スイッチ部は前記第1の全二重パスが接続される第1の複数のパスポート部と、前記第2の全二重パスが接続される第2の複数のパスポート部と、該第2の複数のパスポート部と前記第1の複数のパスポート部を接続するセレクタ部と、前記第1の複数のパスポート部からの前記複数のメモリへのアクセス要求に対し前記第2の複数のパスポート部の使用権を調停する第1のアービタと、前記第2の複数のパスポート部からの前記第1のインターフェース部及び前記第2のインターフェース部への返信に対し前記第1の複数のパスポート部の使用権を調停する第2のアービタとを有し、
前記スイッチ部は前記第1の全二重パスを介して前記第1及び第2のインターフェース部から受信したアクセス要求であるリードコマンドと,ライトデータを含むライトコマンドとを前記第1の複数のパスポート部に保持し、前記複数のメモリのうちの同一のメモリに対するリードコマンドと,ライトデータを含むライトコマンドを前記第1のアービタの制御により前記第2の全二重パスを介して交互に送信し、前記メモリからの返信であるリードデータとライト結果を前記第2の全二重パスを介して前記第2のパスポート部で受信し、前記第2のアービタの制御により前記第1及び第2のインターフェース部に送信することを特徴とする磁気ディスク記憶制御装置。 - 前記磁気ディスク装置は複数の磁気ディスク装置を冗長配列して構成されたディスクアレイであることを特徴とする請求項1記載の磁気ディスク記憶制御装置。
- 前記第1の全二重パスは前記第1のインターフェース部及び前記第2のインターフェース部から前記スイッチ部の方向にデータを転送する第1のパスと、前記スイッチ部から前記第1のインターフェース部及び前記第2のインターフェース部の方向にデータを転送する第2のパスを有し、前記第2の全二重パスは前記スイッチ部から前記複数のメモリの方向にデータを転送する第3のパスと、前記複数のメモリから前記スイッチ部の方向にデータを転送する第4のパスを有し、前記第3のパスのデータ転送と前記第4のパスのデータ転送が並行して行われることを特徴とする請求項1または2記載の磁気ディスク記憶制御装置。
- 前記複数のメモリは前記スイッチ部から送信されるアクセス要求を複数保持する手段を有し、前記スイッチ部は前記メモリの保持手段が保持可能な数だけのアクセス要求を送信することを特徴とする請求項1乃至3のいずれか1項に記載の磁気ディスク記憶制御装置。
- 前記第1のインターフェース部は複数のプロセッサと、該プロセッサの指示により上位装置とのデータ転送を行う複数のチャネルインターフェース回路と、該チャネルインターフェース回路と前記スイッチ部間の通信制御を行うメモリアクセス制御部とを有することを特徴とする請求項1乃至4のいずれか1項に記載の磁気ディスク記憶制御装置。
- 前記第2のインターフェース部は複数のプロセッサと、該プロセッサの指示により前記スイッチ部とのデータ転送を行う複数のディスクインターフェース回路と、該ディスクインターフェース回路と前記スイッチ部間の通信制御を行うメモリアクセス制御部とを有することを特徴とする請求項1乃至5のいずれか1項に記載の磁気ディスク記憶制御装置。
- 前記メモリは前記スイッチ部との間のデータ転送を制御するインターフェース部と、該インターフェース部が受取ったデータのヘッダを解析するメモリ制御部と、該メモリ制御部の指示によりデータの読み書きを行う複数のメモリモジュールとを有することを特徴とする請求項1乃至6のいずれか1項に記載の磁気ディスク記憶制御装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002337807A JP4112954B2 (ja) | 2002-11-21 | 2002-11-21 | 磁気ディスク記憶制御装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002337807A JP4112954B2 (ja) | 2002-11-21 | 2002-11-21 | 磁気ディスク記憶制御装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004171362A JP2004171362A (ja) | 2004-06-17 |
JP4112954B2 true JP4112954B2 (ja) | 2008-07-02 |
Family
ID=32701210
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002337807A Expired - Fee Related JP4112954B2 (ja) | 2002-11-21 | 2002-11-21 | 磁気ディスク記憶制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4112954B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4794194B2 (ja) * | 2005-04-01 | 2011-10-19 | 株式会社日立製作所 | ストレージシステム及び記憶制御方法 |
JP5293233B2 (ja) * | 2009-02-03 | 2013-09-18 | 日本電気株式会社 | データ入出力装置 |
JP4922442B2 (ja) | 2010-07-29 | 2012-04-25 | 株式会社東芝 | バッファ管理装置、同装置を備えた記憶装置、及びバッファ管理方法 |
-
2002
- 2002-11-21 JP JP2002337807A patent/JP4112954B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2004171362A (ja) | 2004-06-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5872560B2 (ja) | 高速メモリ・システム | |
US7103710B2 (en) | Disk array controller with connection path formed on connection request queue basis | |
US8156270B2 (en) | Dual port serial advanced technology attachment (SATA) disk drive | |
JP2593146B2 (ja) | データハブ | |
CN100595720C (zh) | 用于基于集线器的存储系统中直接存储器访问的设备和方法 | |
EP0451938B1 (en) | Multiple cluster signal processor | |
US7877524B1 (en) | Logical address direct memory access with multiple concurrent physical ports and internal switching | |
US8074002B2 (en) | Route aware serial advanced technology attachment (SATA) switch | |
US6850998B2 (en) | Disk array system and a method for controlling the disk array system | |
JP4696024B2 (ja) | データ処理装置用相互接続論理 | |
US20140104967A1 (en) | Inter-memory data transfer control unit | |
JPH02103649A (ja) | 制御装置および情報処理システム | |
US20050060477A1 (en) | High-speed I/O controller having separate control and data paths | |
US7409486B2 (en) | Storage system, and storage control method | |
JP4112954B2 (ja) | 磁気ディスク記憶制御装置 | |
US7218638B2 (en) | Switch operation scheduling mechanism with concurrent connection and queue scheduling | |
KR20050119677A (ko) | 기회적 판독 완료 결합 | |
JP2009151752A (ja) | バススイッチ,電子機器及びデータ転送方法 | |
US7039730B2 (en) | Storage device control apparatus and method | |
JPH07191930A (ja) | ディスク装置のインタフェース及びその制御方法 | |
US11645005B2 (en) | Near-memory computing systems and methods | |
US7272151B2 (en) | Centralized switching fabric scheduler supporting simultaneous updates | |
JP4014061B2 (ja) | ネットワーク装置 | |
JP3684902B2 (ja) | ディスクアレイ制御装置 | |
JP4231633B2 (ja) | 外部記憶システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040721 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20061214 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20061226 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070222 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20070222 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070605 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070723 |
|
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: 20080318 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080410 |
|
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: 20110418 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120418 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120418 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130418 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |