JP2004171362A - Magnetic disk storage control device - Google Patents

Magnetic disk storage control device Download PDF

Info

Publication number
JP2004171362A
JP2004171362A JP2002337807A JP2002337807A JP2004171362A JP 2004171362 A JP2004171362 A JP 2004171362A JP 2002337807 A JP2002337807 A JP 2002337807A JP 2002337807 A JP2002337807 A JP 2002337807A JP 2004171362 A JP2004171362 A JP 2004171362A
Authority
JP
Japan
Prior art keywords
unit
path
access
magnetic disk
interface
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2002337807A
Other languages
Japanese (ja)
Other versions
JP4112954B2 (en
Inventor
Mitsuru Inoue
充 井上
Yukio Nishimura
幸夫 西村
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.)
Hitachi Ltd
Hitachi Advanced Digital Inc
Original Assignee
Hitachi Ltd
Hitachi Advanced Digital Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd, Hitachi Advanced Digital Inc filed Critical Hitachi Ltd
Priority to JP2002337807A priority Critical patent/JP4112954B2/en
Publication of JP2004171362A publication Critical patent/JP2004171362A/en
Application granted granted Critical
Publication of JP4112954B2 publication Critical patent/JP4112954B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To realize the effective use of a band having a full duplex path at a low cost in the case of using the full duplex path for connection between a switch part and a cache memory part in a switch connection type disk array. <P>SOLUTION: An access path 10 shared by a host interface part 4 or a disk interface part 6 in order to access the cache memory part 7 is constituted of the full duplex path. An access request to the cache memory part 7 which is issued through the shared access path 10 is controlled so that a read access and a write access are alternately issued. <P>COPYRIGHT: (C)2004,JPO

Description

【0001】
【発明の属する技術分野】
本発明はディスクアレイを有する磁気ディスク記憶制御装置に係り、特にディスクアレイに記録されるデータを一時的に格納するキャッシュメモリのアクセスパスの構成に関する。
【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 パケットバッファ
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a magnetic disk storage controller having a disk array, and more particularly to a configuration of an access path of a cache memory for temporarily storing data recorded on the disk array.
[0002]
[Prior art]
A magnetic disk storage controller (disk array controller) is widely used as a secondary storage device of a computer, but the I / O performance is always lower by about 3 to 4 digits than the I / O performance of the main memory. Efforts have been made to reduce this gap. As a method for improving the I / O performance of a magnetic disk subsystem, a disk array system in which a plurality of magnetic disk devices are operated in parallel and data is distributed and stored on a plurality of magnetic disks is known.
[0003]
In the disk array system, I / O performance and throughput performance at the time of sequential access can be improved by operating a plurality of disk devices in parallel, but it is necessary to perform data transfer simultaneously with access to a plurality of disks. For this reason, in order to improve the device performance, a high data transfer performance is also required for an internal path connecting the disk device and the host-side I / F unit.
[0004]
As disclosed in Patent Document 1, a conventional disk array control device includes a host interface unit with a plurality of host computers, a disk interface unit with a plurality of disk drives, and a control shared memory unit (hereinafter referred to as a control memory unit) for storing control information of the device. A shared memory unit for storing data to be written to a disk drive temporarily (hereinafter referred to as a cache memory unit), and a switch unit. The host interface unit, the disk interface unit, and the switch unit are independent of each other. The switch unit and the plurality of cache memory units are similarly connected by one independent bidirectional path. Further, the processors of the host interface unit and the disk interface unit are connected to the shared memory unit via a connection path, and the host interface unit and the disk interface unit communicate with each other in the shared memory unit and communicate with each other in the cache memory unit via the switch unit. Perform access.
[0005]
Such a disk array is called a switch connection type disk array, and the throughput performance of the system is generally determined by the bandwidth of the bidirectional path connecting the switch unit and the cache memory unit and the total transfer bandwidth determined by the number. However, since the number of physical paths connected to the cache memory unit can be relatively large, the transfer throughput of one connection path cannot be increased compared to the shared bus method due to the limitation of the number of physical pins. It has been said that the architecture has a large limit transfer throughput as a whole and is easy to improve the throughput performance of the system.
[0006]
It is also said that the architecture is scalable because the number of the connection paths is increased by adding a host interface unit, a disk interface unit, or a cache memory unit, and the system performance is improved with the addition of functional units.
[0007]
[Patent Document 1]
JP-A-2000-200156 (page 6-7, FIG. 1)
[0008]
[Problems to be solved by the invention]
With the rapid improvement in performance of the host computer and the speeding up of the network, market requirements for the performance of the disk array system have become more stringent. On the other hand, as described above, it has been said that the switch connection type disk array can improve the throughput performance as an apparatus by increasing the number of connection paths to the cache memory unit.
[0009]
However, even with a switch connection type disk array, the number of connection paths has only reached the limit due to mounting problems, and there is a limit to further performance improvement by merely increasing the number of connection paths. For this reason, it is required to improve the transfer performance per connection path without increasing the number of signal pins.
[0010]
In order to improve the transfer performance of the path without increasing the number of signal lines to be used, it is generally considered to increase the operating frequency. In this case, the upper limit of the operating frequency is determined by the type of the physical interface (I / F) to be used. In recent years, a low-amplitude I / F using a differential signal represented by LVDS has been used in the field of communication and the like. There are many attempts to improve the operating frequency.
[0011]
When the differential signal I / F is used, the transmission direction is unidirectional, so two unidirectional paths are usually combined and used as a full-duplex path. If this is applied to the path connecting the switch unit and the cache memory unit of the disk array control device, it is possible to improve the operating frequency, that is, to improve the transfer performance per connection path.
[0012]
In the case of a disk array device having a cache memory unit, in general, the host interface performs data writing to the cache memory during write access from the host, the disk interface performs data reading from the cache memory, and the host interface performs read access from the host. The unit reads data from the cache memory, and the disk interface unit writes data to the cache memory.
[0013]
For this reason, access to the cache memory unit usually includes both write access and read access, but in the case of a disk array device in which a plurality of host computers share data, access to the cache memory has a relatively long transfer data length. While long access is the main subject, the order of occurrence of write access / read access is not fixed. Therefore, if a full-duplex path is simply used, only the down path from the switch section to the cache memory section is congested when write access is continuous, while only the up path is reversed when read access is continuous. This causes congestion, and there is a problem that the bandwidth of the full-duplex path cannot be used effectively.
[0014]
The above problem is that the cache memory unit has a function of buffering a certain number of access request packets sent from the switch unit, and the switch unit always sends request packets as many as the cache memory unit can buffer. This can be alleviated to some extent by adopting a wireless access method and increasing the number of access request packets that can be buffered. However, as described above, since the transfer data length in one access is relatively long in the disk array subsystem, increasing the number of access request packets that can be buffered adversely affects the device cost.
[0015]
Therefore, when a full-duplex path is used for the connection between the switch unit and the cache memory unit, it is an object of the present invention to realize effective use of the bandwidth of the full-duplex path at low cost.
[0016]
SUMMARY OF THE INVENTION An object of the present invention is to solve the above-mentioned problem by improving the use state of a connection path when a full-duplex path is applied between a switch unit and a cache memory unit. An object of the present invention is to provide a low-cost magnetic disk storage controller having a high data transfer throughput.
[0017]
[Means for solving the problem]
In order to achieve the above object, according to the present invention, in a magnetic disk subsystem having a cache memory, an access path shared by a host interface unit and a disk interface unit to access the cache memory is configured by a full-duplex path. In this full-duplex path, control is performed so that read access and write access are alternately issued as much as possible to access the cache memory.
[0018]
That is, read access and write access are alternately transferred to the shared full-duplex path, so that read data moves up the uplink path toward the host interface or disk interface, and at the same time, write data moves down the downlink path. Move towards the cache memory.
[0019]
Further, in the present invention, in order to improve the efficiency by improving the ratio of the read data and the write data moving on the down path and the up path at the same time, respectively, the read data moves on the up path by one read access. The effect is greater when the time is equal to the time for the write data to move down the path in one write access.
[0020]
In the present invention, when the number of data access masters sharing the cache memory is large and operating in parallel, read access and write access requests are issued to the switch at the same time, and the switch The possibility that write access can be issued alternately increases.
[0021]
BEST MODE FOR CARRYING OUT THE INVENTION
FIG. 1 is a diagram showing an embodiment of a magnetic disk storage controller (disk array controller) to which the present invention is applied. In this embodiment, the disk array controller 1 includes a host interface unit 4 with a plurality of host computers 3, a disk interface unit 6 with a disk array 5 in which a plurality of magnetic disk drives are redundantly arranged, and a shared storage for storing control information of the device. It comprises a cache memory unit 7 for temporarily storing data to be written to the memory unit 2 and the disk array 5, and a switch unit 8.
[0022]
The host interface unit 4, the disk interface unit 6, and the switch unit 8 are connected one-to-one by independent full-duplex paths 9 (hereinafter referred to as M paths 9), and the switch unit 8 and the cache memory unit 7 The host interface unit 4 and the disk interface unit 6 access the cache memory unit 7 via the switch unit 8 through independent full-duplex paths 10 (hereinafter, referred to as S paths 10). The access method from the host interface unit 4 and the disk interface unit 6 to the cache memory unit 7 is a connectionless full-duplex system using a packet system.
[0023]
The M path 9 is composed of a down path 9a responsible for data transmission from each interface unit to the switch unit 8 and an uplink path 9b responsible for data transmission from the switch unit 8 to each interface unit. Having a path supports full-duplex access. Similarly, the S path 10 includes a down path 10a responsible for data transmission from the switch unit 8 to the cache memory unit 7 and an up path 10b responsible for data transmission from the cache memory unit 7 to the switch unit 8. It has full-duplex access by having an independent path on the downstream.
[0024]
The control processors MP11 and MP14 (hereinafter referred to as CHP11 and DKP11) of the host interface unit 4 and the disk interface unit 6 are connected to the shared memory unit 2 via a connection path (1) (not shown). 4. The disk interface unit 6 accesses the cache memory unit 7 via the switch unit 8 while communicating with each other in the shared memory unit 2.
[0025]
In this embodiment, each of the host interface unit 4 and the disk interface unit 6 connected to the switch unit 8 is two, and the number of the cache memory units 7 is four, but these numbers can be arbitrarily set. However, when the number of host interface units 4 and the number of disk interface units 6 connected to the switch unit 8 are larger than the number of cache memory units 7, the number of access requests to be arbitrated by the switch unit 8 is larger. The possibility that the read access and the write access to the cache memory unit 7 can be executed alternately is increased, and the effect is large.
[0026]
The host interface unit 4 includes two processors MP11 (hereinafter, CHP11) that control the host interface unit 4, two channel I / F circuits 12 that perform data transfer between the host CPU 3 and the cache memory unit 7 according to instructions from the CHP11, The cache memory access control unit 13 controls communication between the channel I / F circuit 12 and the switch unit 8. The two channel I / F circuits 12 and the cache memory access control unit 13 are connected one-to-one with dedicated paths. Have been.
[0027]
The disk interface unit 6 includes two processors MP14 (hereinafter referred to as DKP 14) for controlling the disk interface unit 6, and two disk I / F circuits 15 for performing data transfer between the disk array 5 and the cache memory unit 7 according to an instruction from the DKP 14. , A cache memory access control unit 13 for controlling communication between the disk I / F circuit 15 and the switch unit 8, and the two disk I / F circuits 15 and the cache memory access control unit 13 are in a one-to-one correspondence with dedicated paths. It is connected.
[0028]
The switch unit 8 receives a cache memory access request from the host interface unit 4 or the disk interface unit 6 via the M path 9a. The switch unit 8 analyzes the received cache memory access request, performs arbitration when there are a plurality of access requests for the same cache memory unit 7, determines the order in which the access requests are issued to the cache memory unit 7, and sequentially determines It operates to issue an access request to the cache memory unit 7 via the S path 10a. When the access request destinations are distributed to different cache memory units 7, access requests are issued to the respective cache memory units 7 via the plurality of S paths 10a as simultaneously as possible.
[0029]
This embodiment is characterized in that, when the switch unit 8 receives an access request to the same cache memory unit 7, the switch unit 8 operates so that the access request is issued to the cache memory unit 7 alternately for read / write. However, the configuration of the switch section 8 for realizing this will be described later with reference to FIG.
[0030]
The cache memory unit 7 is connected and configured in the order of an S-path I / F unit 16, a memory control unit 17, and a plurality of memory modules 18. The cache memory unit 7 analyzes an access request sent via the switch unit 8 and Read and write data to and from.
[0031]
The cache memory access control unit 13 of the host interface unit 4 and the disk interface unit 6 is capable of holding a plurality of communication packets, thereby realizing connectionless full-duplex access. explain.
[0032]
When data is read from the host computer 3 to the disk array controller 1, the request is first transmitted to the CHP 11 via the channel I / F circuit 12. Next, the CHP 11 reads the control information in the shared memory unit 2 via the connection path (1) (not shown), and checks whether the requested data exists in the cache memory unit 7. If the requested data exists in the cache memory unit 7, the CHP 11 reads the data to be read from the cache memory unit 7 via the channel I / F circuit 12 -the cache memory access control unit 13 -the switch unit 8, and Send to
[0033]
If the requested data does not exist, the CHP 11 transmits an instruction to read the target data on the disk array 5 and write it to the cache memory unit 7 to the DKP 14 of one disk interface unit 6 via the shared memory unit 2. The DKP 14 that has received the instruction transfers the corresponding data to the cache memory unit 7 using the disk I / F circuit 15 that performs data transfer between the disk array 5 and the cache memory unit 7.
[0034]
After the end of the data transfer, the DKP 14 reports the end of the data transfer to the cache memory unit 7 to the requesting CHP 11 via the shared memory unit 2. Upon receiving the report of the end of the data transfer, the CHP 11 reads the data on the cache memory unit 7 via the channel I / F circuit 12-the cache memory access control unit 13-the switch unit 8 and transmits the requested data to the host computer 3. Do.
[0035]
When writing data from the host computer 3 to the disk array controller 1, the request is first transmitted to the CHP 11 via the channel I / F circuit 12. Next, the CHP 11 writes the data into the cache memory unit 7 via the channel I / F circuit 12, the cache memory access control unit 13, and the switch unit 8. Further, the CHP 11 notifies the DKP 14 of one disk interface unit 6 via the shared memory unit 2 that the data has been written to the cache memory unit 7. At this time, a write completion notice is issued to the host computer 3. The DKP 14 that has received the notification uses the disk I / F circuit 15 that performs data transfer between the disk array 5 and the cache memory unit 7, the disk I / F circuit 15 -the cache memory access control unit 13 -the switch unit 8 -the cache memory. The corresponding data is read from the cache memory unit 7 via the path of the unit 7 and written to the disk array 5.
[0036]
In the above embodiment, the host interface unit 4, the disk interface unit 6, and the switch unit 8 are connected one-to-one with independent full-duplex paths 9, but the full-duplex path 9 is connected to the host interface unit 4 and the disk unit. The configuration may be such that the interface unit 6 is shared. In this case, the frequency at which write access and read access to the cache memory unit 7 can be issued alternately can be further increased.
[0037]
The basic configuration and operation of the present embodiment have been described above. The specific configuration and operation of each component will be described below.
(1) Packet configuration
FIG. 2 is a diagram showing a configuration of a packet used for accessing the cache memory unit 7 from the host interface unit 4 and the disk interface unit 6. A command / data packet 30 and a status packet 31 are used for write access to the cache memory unit 7. The command / data packet 30 includes a header section 34 including packet information of a packet type 36, an access source 37, a cache address 38, and a transfer data length 39, and a data section 35 holding write data 40 to the cache memory section 7. , A check code 41 of the packet. The status packet 31 includes a similar header portion 34, a status 42 indicating a transfer result, and a packet check code 41.
[0038]
In the write access to the cache memory unit 7, the command / data packet 30 is transmitted from the host interface unit 4 and the disk interface unit 6 via the switch unit 8 to the cache memory unit 7 using the down M path 9 a and the S path 10 a. Is sent. The cache memory unit 7 writes the write data 40 to the cache memory address specified by the cache address 38 and converts the result into a status packet 31 via the switch unit 8 to the host interface unit 4 and the S interface 10b going up to the disk interface unit 6. , Using the M path 9b. The length of the write data 40 in the command / data packet 30 is much longer than the status 42 of the status packet 31. In the write access to the cache memory unit 7, the down paths 9a and 10a of the M path 9 and the S path 10 The ratio of the time used and the time used for the upstream paths 9b and 10b is about 100: 1.
[0039]
A command packet 32 and a data status packet 33 are used for read access to the cache memory unit 7. The command packet 32 is composed of a header section 34 including packet information of a packet type 36, an access source 37, a cache address 38, a transfer data length 39, and a check code 41 of the packet. The data / status packet 33 includes a similar header section 34, a data section 35 holding read data 43, a status 42 indicating a transfer result, and a packet check code 41.
[0040]
In the read access to the cache memory unit 7, the command packet 32 is transmitted from the host interface unit 4 and the disk interface unit 6 to the cache memory unit 7 via the switch unit 8 via the M path 9 a and the S path 10 a. Is done. The cache memory unit 7 reads the read data 43 from the cache memory address specified by the cache address 38, creates a data status packet 33 from the read data and the read result, and, via the switch unit 8, the host interface unit 4 and the disk interface A reply is sent to the unit 6 using the upstream S path 10b and M path 9b. The length of the read data 43 in the data status packet 33 is much longer than that of the header section 34 of the command packet 32. In the read access to the cache memory section 7, the M path 9 and the S path The ratio of the time during which the ten upstream paths 9b, 10b are used to the time during which the downstream paths 9a, 10a are used is approximately 100: 1.
(2) Regarding the cache memory access control unit 13
FIG. 3 shows the configuration of the cache memory access control unit 13. The cache memory access control unit 13 corresponds to one downlink path selector 60, one uplink path selector 61, the channel I / F circuit 12 or the disk I / F circuit 15, and temporarily stores a packet of one packet. Two buffers 62, one path I / F circuit 63a for the down M path 9a to the switch unit 8, one path I / F circuit 63b for the up M path 9b from the switch unit 8, and One Rx packet buffer 65 for temporarily storing transmitted packets, one data transfer control unit A 66a for mainly performing downlink transfer control, and one data transfer control unit for mainly performing uplink transfer control B 66b.
[0041]
Two input ports of the selector 60 are connected to different channel I / F circuits 12 or disk I / F circuits 15 via data buffers 67 via a packet buffer 62, respectively, while an output port of the selector 60 is a path I / F 63a. Is connected to the downstream M passport of the switch unit 8 via the downstream data line 68a.
[0042]
The data transfer control unit A 66a is connected to two channel I / F circuits 12 or disk I / F circuits 15 by a control line 69, and is connected to the M path side control unit A 87a in the switch unit 8 by a control line 70. You. A set of the downlink data line 68a and the control line 70 corresponds to one downlink M path 9a. The data transfer control unit A 66a performs arbitration of access requests from the two channel I / F circuits 12 or the disk I / F circuits 15, and switches the selector 60 while communicating with the switch unit 8 via the control line 70. A packet is transmitted in the downstream direction to the switch unit 8. At this time, based on the information indicated by the control line 70, the M path side control unit A 87a of the switch unit 8 operates so that a transfer request for a plurality of packets is held as much as possible.
[0043]
An input port of the selector 61 is connected to an upstream M-pass port of the switch unit 8 via an Rx packet buffer 65 via an upstream data line 68b, while two output ports of the selector 61 are connected to different channel I / Fs via a packet buffer 62, respectively. It is connected to the circuit 12 or the disk I / F circuit 15. When the return packet sent from the switch unit 8 via the upstream data line 68b is taken into the Rx packet buffer 65, the data transfer control unit B 66b analyzes the access source 37 of the header unit 35 and switches the selector 61. The received packet is transmitted to the channel I / F circuit 12 or the disk I / F circuit 15 which is the access source.
[0044]
The data transfer control unit A 66a and the data transfer control unit B 66b can operate independently. According to the above configuration, in this embodiment, connectionless full-duplex communication of up to two packets can be performed on the M path. I have.
(3) Switch section 8
FIG. 4 shows the configuration of the switch unit 8. The switch unit 8 is roughly divided into four M passport units 80 connected to the host interface unit 4 and the disk interface unit 6 by the M path 9, and four S pass port units 81 connected to the cache memory unit 7 by the S path 10. And a Tx arbiter unit 83 that arbitrates the right to use the S passport unit 81 in response to a cache access request from the M passport unit 80, and a host interface unit 4 and a disk interface unit 6 from the S passport unit 81. And an Rx arbiter unit 84 that arbitrates the right to use the M path of the return packet of.
[0045]
The M passport unit 80 has one path I / F 86a for the down M path with the cache memory access control unit 13 of the host interface unit 4 or the disk interface unit 6, one path I / F 86b for the up M path, and two packets. It comprises one packet buffer 88 for temporarily storing packets up to the minute, an M-path control unit A 87a for controlling the transfer in the downstream direction, and an M-path control unit B 87b for controlling the transfer in the upstream direction.
[0046]
The input side of the packet buffer 88 is connected to the host interface unit 4 or the cache access control unit 13 of the disk interface unit 6 via a downlink data line 68a via a path I / F 86a for the downlink M path. The output side is connected to the M passport input side of the downstream selector 100a via an internal downstream path 89a. On the other hand, the upstream M path path I / F 86b has an internal upstream path 89b connected to the M path port output side of the upstream selector 100b on the input side, and an upstream data line 68b connected on the output side to the cache of the host interface unit 4 or the disk interface unit 6 via the upstream data line 68b. It is connected to the upstream path I / F 63b of the access control unit 13.
[0047]
The M passport unit 80 is further connected to the host interface unit 4 or the data transfer control unit A 66a in the disk interface unit 6 via a control line 70, while being connected to the Tx arbiter 83 via an S path REQ line 90 and an S path ACK line 91a. Have been. Further, two S-path REQ lines 90 are connected to the requested S-pass ports in correspondence with cache write access and read access. ((1) W, (1) R)
The S passport unit 81 has one path I / F 92a for the downlink S path with the S path I / F unit 16 of the cache memory unit 7, and also has one path I / F 92b for the uplink S path and up to two packets. Is temporarily composed of one Rx packet buffer 93, and an S-path control unit A 94a for controlling the transfer in the down direction and an S-path control unit B 94b for controlling the transfer in the up direction.
[0048]
The downstream I / F path I / F 92a is connected on the input side to the S pass port output side of the downstream selector 100a via an internal downstream path 95a, and on the output side via a downstream S path data line 96a for the downstream S path of the cache memory unit 7. It is connected to the I / F 131a. The input side of the Rx packet buffer 93 is connected to the upstream S path path I / F 131b of the cache memory unit 7 via the upstream S path path I / F 92b via the S path upstream data line 96b. The output side of 93 is connected to the S passport input side of the upstream selector 100b via an internal upstream path 95b.
[0049]
The S passport section 81 is further connected to the S path side control section A 132a of the cache memory section 7 by a control line 97, while being connected to the Rx arbiter 84 by an M path REQ line 98 and an M path ACK line 99a.
[0050]
One access request from the cache memory access control unit 13 is transmitted as a packet having the configuration shown in FIG. 2 (command / data packet 30 for write access and command packet 32 for read access) via the downlink M path 9a via the M passport unit. 80 is written to the packet buffer 88. The M-path side control unit A 87a analyzes the packet header unit 34 in the packet buffer 88, and sends an S passport use request (S path REQ90) to a write use request (1W) or a read use request (1). (R) Issue to Tx arbiter 83.
[0051]
The Tx arbiter 83 performs arbitration for access requests from the four M passport controllers 80, and determines a user of the downstream S passport. Subsequently, the Tx arbiter 83 obtains the S path use right (S path ACK 91a) and instructs the transfer start (91b) to the M path side control unit A 87a and the S path side control unit A 94a to be switched and transferred by the down side selector 100a. ) And the contents of the access are notified. The S-path side control unit A 94a that has received the notification extracts the packet from the packet buffer 88 and transmits the packet to the cache memory unit 7 while communicating with the cache memory unit 7 via the control line 97. When the extraction of the packet from the packet buffer 88 is completed, the M-path side control unit A 87a starts the analysis of the next packet stored in the packet buffer 88 and repeats the above operation.
[0052]
The cache memory unit 7 also has a packet buffer capable of temporarily storing up to two packets, and the S passport unit 81 does not wait for the end response (status packet 31 or data status packet 33) of the cache memory unit 7. In addition, up to two packets can be transmitted to the cache memory unit 7.
[0053]
On the other hand, return packets (status packet 31 for write access and data status packet 33 for read access) from the cache memory unit 7 are written to the Rx packet buffer 93 of the S passport unit 81 via the uplink Spath 10b. The S path side control unit B 94b analyzes the access source 37 of the packet header unit 34 in the Rx packet buffer 93, and issues a use request of the M passport (M path REQ 98) to the Rx arbiter 84.
The Rx arbiter 84 arbitrates the use requests from the four S passport controllers 81 and determines the user of the up M passport. Subsequently, the Rx arbiter 84 obtains the M path use right (M path ACK 99a) and instructs the transfer start (99b) to the S path side control unit B 94b and the M path side control unit B 87b to be switched and transferred by the uplink selector 100b. ) And the contents of the access are notified. Upon receiving the notification, the M path side control unit B 87b extracts the packet from the packet buffer 88 and transmits a return packet to the cache memory access control unit 13.
[0054]
Each of the control units A and B on the M path side and the S path side can operate independently, and the switch unit 8 can perform full-duplex transfer with both the S path 10 and the M path 9 by the above configuration and operation. Yes, connectionless transfer of up to two packets is performed. In the above-described method, the packet transmission operation to the cache memory unit 7 is performed. In this embodiment, when the Tx arbiter 83 determines the right to use each S path 10, write access and read access are alternated. The use efficiency of the S path 10, which is a full-duplex path, is improved.
(4) About Tx arbiter 83
FIG. 5 shows the configuration of the Tx arbiter 83. The Tx arbiter 83 includes four arbiter blocks 110 corresponding to the S path 10. Each arbiter block 110 includes a write arbiter unit 111, a read arbiter unit 112, a BUSY flag 113 indicating the use status of the S passport, a selector 114, and an arbiter control logic 115 for controlling these. Arbitration is performed for each S path based on the REQ signal for each S path and each access type, and a write request is made by the write arbiter unit 111 and a read request is made by the read arbiter unit 112.
[0055]
Each time a packet is transmitted to the S path 10, the arbiter control logic 115 switches the selector 114 so that arbitration of a write request and arbitration of a read request are performed alternately. If there is only one of the write and read access requests, the arbiter control logic 115 detects this and switches the selector 114 to the one that has generated the access request to perform arbitration. With the above configuration, the Tx arbiter 83 operates so that the write access and the read access alternate when determining the right to use each S path 10.
(5) About the cache memory unit 7
FIG. 6 shows the configuration of the cache memory unit 7. The cache memory unit 7 is roughly composed of an S path I / F unit 16 and a memory unit 131. The S path I / F unit 16 controls a path I / F 131a connected to the downstream S path I / F 92a of the switch unit 8, a path I / F 131b connected to the upstream S path I / F 92b of the switch unit 8, and a downstream path. S path side control unit A 132a, S path side control unit B 132b for controlling the upstream path side, downlink packet buffer 134a capable of temporarily holding packets up to 2 packets, temporary storage up to 2 packets It is composed of an upstream path packet buffer 134b.
[0056]
The path I / F 131a is connected to the downstream path I / F 92a of the switch unit 8 by the downstream S path data line 96a, and is connected to the memory module 18 by the data line 137 via the packet buffer 134a, the data line 135a, and the selector 136. I have. The S path side control unit A 132a is connected to the S path side control unit A 94a of the switch unit 8 via a control line 97, and receives a transmission packet from the switch 8 using the downlink data line 96a while communicating via the control line 97. Perform
[0057]
The path I / F 131b is connected to the uplink path I / F 92b of the switch unit 8 by an uplink S path data line 96b, and is connected to the memory module 18 by a data line 137 via a packet buffer 134b, a data line 135b, and a selector 136. I have. The S path side control unit B 132b transmits a reply packet to the switch 8 using the uplink data line 96b.
[0058]
The memory unit 131 includes a memory control unit 17 and a memory module 18. Inside the memory control unit 17, there is a packet header analysis unit 140. The memory control unit 17 analyzes the header information of the packet transmitted by the S path 10a and stored in the packet buffer 134a, and transmits the data to the memory module 18 according to the request. Perform reading and writing.
[0059]
When the read / write operation to the memory module 18 is completed, the memory control unit 131 notifies the S path side control unit B 132b of this, and the S path side control unit B 132b creates a reply packet on the packet buffer 134b and switches it. Transmit to the unit 8.
[0060]
The S-path side control unit A 132a and the S-path side control unit B 132b can operate independently of each other. With the above configuration and operation, the S-path 10 can perform full-duplex transfer and connectionless up to two packets. The transfer is performed. The processing of the transfer request packet is performed in accordance with the order in which the transfer request packets are received from the switch unit 8.
(6) Movement of data packet on S path 10
FIG. 7 is a diagram showing the movement of a data packet on the S path 10 when four accesses from the host interface unit 4 and the disk interface unit 6 to one cache memory unit 7 on the switch unit 8 compete with each other. is there.
[0061]
In the example of FIG. 7, the number of access requests competing on the switch unit 8 is two, ie, two cache read accesses and two cache write accesses. The switch unit 8 arbitrates four access requests by the Tx arbiter 83 shown in FIG. 5 for each read access / write access. As a result, first, one cache read access is selected, and a read command packet 200 is transmitted to the cache memory unit 7 using the downlink S path 10a. In this example, since the connectionless access of up to two packets is employed, the switch unit 8 continuously arbitrates for the next access, and this time one cache write access is selected, and the switch command 8 is followed by the read command packet 200. The first write command / data packet 201 is transmitted to the cache memory unit 7 using the downlink S path 10a.
[0062]
When the cache memory 7 receives the first read command packet 200, the first read command packet 200 is analyzed, the data is read from the memory module 18, the status information is added, the data status packet 202 is created, and the uplink S path 10b Is sent back to the switch unit 8 using. The cache memory unit 7 also analyzes the command / data packet 201 with respect to the first write access that is continuously transmitted, writes data into the memory module 18, and transmits the result as a status packet 203 to the upstream S path 10b. Used to return to the switch unit 8.
[0063]
When the switch unit 8 receives the data status packet 202 of the first read, it replies it to the access request source and, at the same time, performs arbitration of the next access. This time, the second cache read access is selected. The second read command packet 204 is transmitted to the cache memory unit 7 using the downstream S path 10a. Next, the switch unit 8 receives the status packet 203 corresponding to the first write access and returns it to the access request source, and at the same time, performs arbitration for the next access. Access is selected, and the second write command / data packet 205 is transmitted to the cache unit 7 using the downlink S path 10a.
[0064]
Similarly, the cache memory unit 7 receives the second read command packet 204 and the second write command / data packet 205, processes them in order, and processes them as data status packets 206 and status packets 207, respectively. Reply to Therefore, transmission of the write command / data packets 201 and 205 and the read data / status packets 202 and 206 is performed in such a manner that the transmission is performed in parallel for most of the time in both the downlink and uplink S paths 10. .
[0065]
Although an example in which two write accesses and two read accesses are processed in the order of read 1, write 1, read 2, and write 2 has been described, the processing is performed in the order of write 1, read 1, write 2, and read 2. Even in such a case, the operation is such that the transfer of the transfer data packet of the read 1 and the write 2 is performed in parallel most of the time.
[0066]
According to the above-described embodiment, since the ratio of the simultaneous use of the downstream S path 10a and the upstream S path 10b in the S path 10 connecting the switch unit 8 and the cache memory unit 7 increases, the usage rate of the S path 10 is reduced. Thus, the throughput of the disk array device can be increased.
[0067]
【The invention's effect】
According to the present invention, a magnetic disk storage having a high data transfer throughput between the host interface unit and the disk interface unit and the cache memory unit is improved by improving the use state of the full-duplex path connecting the switch unit and the cache memory unit. A control device can be provided.
[Brief description of the drawings]
FIG. 1 is a block diagram of a disk array control device according to an embodiment of the present invention.
FIG. 2 is a diagram showing a packet configuration used for transfer of access to a cache memory unit in the embodiment shown in FIG. 1;
FIG. 3 is a diagram showing a configuration of a cache memory access control unit in the embodiment shown in FIG.
FIG. 4 is a diagram showing a configuration of a switch unit in the embodiment shown in FIG.
FIG. 5 is a diagram showing a configuration of a Tx arbiter of a switch unit in the embodiment shown in FIG.
FIG. 6 is a diagram showing a configuration of a cache memory unit in the embodiment shown in FIG.
FIG. 7 is a diagram showing a movement of a transfer packet between a switch unit and a cache memory unit in the embodiment shown in FIG. 1;
[Explanation of symbols]
1 Disk array controller (magnetic disk storage controller)
2 Shared memory section
3 host computer
4 Host interface section
5 Disk array
6 disk interface
7 Cache memory section
8 Switch section
9 Full duplex path (M path)
10 Full duplex path (S path)
9a, 10a Down pass
9b, 10b Up path
11,14 processor
12 channel I / F circuit
13 Cache memory access control unit
15 Disk I / F circuit
16 S path I / F section
17 Memory control unit
18 Memory module
83 Tx Arbiter
84 Rx arbiter
134a, 134b Packet buffer

Claims (16)

磁気ディスク装置と、該磁気ディスク装置に記録するデータを一時格納するメモリと、上位装置に接続される第1のインターフェース部と、前記磁気ディスク装置に接続された第2のインターフェース部と、該第2のインターフェース部と前記第1のインターフェース部を前記メモリに接続する全二重パスとを有し、前記上位装置からのリードアクセスとライトアクセスを前記メモリに対し前記第1及び第2のインターフェース部と前記全二重パスを介して交互に実行することを特徴とする磁気ディスク記憶制御装置。A magnetic disk device, a memory for temporarily storing data to be recorded on the magnetic disk device, a first interface unit connected to the host device, a second interface unit connected to the magnetic disk device, And a full-duplex path connecting the first interface unit to the memory. The first and second interface units perform read access and write access from the higher-level device to the memory. And alternately through the full-duplex path. 磁気ディスク装置と、該磁気ディスク装置に記録するデータを一時格納するメモリと、上位装置に接続される第1のインターフェース部と、該第1のインターフェース部と前記メモリを接続する第1の全二重パスと、前記磁気ディスク装置に接続された第2のインターフェース部と、該第2のインターフェース部と前記メモリを接続する第2の全二重パスとを有し、前記上位装置からのリードアクセスとライトアクセスを前記メモリに対し前記第1及び第2のインターフェース部と前記第1及び第2の全二重パスを介して交互に実行することを特徴とする磁気ディスク記憶制御装置。A magnetic disk device, a memory for temporarily storing data to be recorded on the magnetic disk device, a first interface unit connected to a higher-level device, and a first all-in-one unit connecting the first interface unit and the memory. Read access from the higher-level device, comprising a double path, a second interface unit connected to the magnetic disk device, and a second full-duplex path connecting the second interface unit and the memory. And a write access to the memory via the first and second interface units and the first and second full-duplex paths alternately. 前記磁気ディスク装置は複数の磁気ディスク装置を冗長配列して構成されたディスクアレイであることを特徴とする請求項2記載の磁気ディスク記憶制御装置。3. The magnetic disk storage control device according to claim 2, wherein the magnetic disk device is a disk array configured by redundantly arranging a plurality of magnetic disk devices. 前記第1の全二重パスは前記第1のインターフェース部から前記メモリの方向にデータを転送する第1のパスと、前記メモリから前記第1のインターフェース部の方向にデータを転送する第2のパスを有し、前記第2の全二重パスは前記第2のインターフェース部から前記メモリの方向にデータを転送する第3のパスと、前記メモリから前記第2のインターフェース部の方向にデータを転送する第4のパスを有し、前記第1及び第3のパスのデータ転送と前記第2及び第4のパスのデータ転送が並行して行われることを特徴とする請求項2または3記載の磁気ディスク記憶制御装置。The first full-duplex path is a first path for transferring data from the first interface unit to the memory, and a second path for transferring data from the memory to the first interface unit. A second path for transferring data from the second interface to the memory, and a second path for transferring data from the memory to the second interface. 4. The apparatus according to claim 2, further comprising a fourth path for transferring, wherein the data transfer of the first and third paths and the data transfer of the second and fourth paths are performed in parallel. Magnetic disk storage controller. 前記メモリは前記第1及び第2のインターフェース部から送信されるアクセス要求を複数保持する手段を有し、前記第1及び第2のインターフェース部は前記メモリの保持手段が保持可能な数だけのアクセス要求を送信することを特徴とする請求項1乃至4のいずれか1項に記載の磁気ディスク記憶制御装置。The memory has means for holding a plurality of access requests transmitted from the first and second interface units, and the first and second interface units have as many accesses as the holding means of the memory can hold. 5. The magnetic disk storage controller according to claim 1, wherein the request is transmitted. 磁気ディスク装置と、該磁気ディスク装置に記録するデータを一時格納する複数のメモリと、上位装置に接続される複数の第1のインターフェース部と、前記磁気ディスク装置に接続された複数の第2のインターフェース部と、前記第1及び第2のインターフェース部からのアクセス要求を受信し前記複数のメモリのうちの同一のメモリに対するアクセス要求の調停を行うスイッチ部と、該スイッチ部と前記第1及び第2のインターフェース部を接続する第1の全二重パスと、当該スイッチ部と前記複数のメモリを接続する第2の全二重パスとを有し、前記スイッチ部は前記第1及び第2のインターフェース部から前記第1の全二重パスを介して受信したリードアクセスとライトアクセスを前記第2の全二重パスを介して前記同一のメモリに対し交互に送信することを特徴とする磁気ディスク記憶制御装置。A magnetic disk device, a plurality of memories for temporarily storing data to be recorded on the magnetic disk device, a plurality of first interface units connected to a higher-level device, and a plurality of second interface units connected to the magnetic disk device An interface unit, a switch unit that receives access requests from the first and second interface units and arbitrates an access request to the same memory among the plurality of memories, and the switch unit and the first and second interfaces. A first full-duplex path connecting the two interface units, and a second full-duplex path connecting the switch unit and the plurality of memories, wherein the switch unit includes the first and second interfaces. A read access and a write access received from the interface unit via the first full-duplex path are transferred to the same memory via the second full-duplex path. Magnetic disk storage controller and transmits to alternately. 前記磁気ディスク装置は複数の磁気ディスク装置を冗長配列して構成されたディスクアレイであることを特徴とする請求項6記載の磁気ディスク記憶制御装置。7. The magnetic disk storage control device according to claim 6, wherein the magnetic disk device is a disk array configured by redundantly arranging a plurality of magnetic disk devices. 前記第1の全二重パスは前記第1のインターフェース部及び前記第2のインターフェース部から前記スイッチ部の方向にデータを転送する第1のパスと、前記スイッチ部から前記第1のインターフェース部及び前記第2のインターフェース部の方向にデータを転送する第2のパスを有し、前記第2の全二重パスは前記スイッチ部から前記複数のメモリの方向にデータを転送する第3のパスと、前記複数のメモリから前記スイッチ部の方向にデータを転送する第4のパスを有し、前記第3のパスのデータ転送と前記第4のパスのデータ転送が並行して行われることを特徴とする請求項6または7記載の磁気ディスク記憶制御装置。The first full-duplex path includes a first path for transferring data from the first interface unit and the second interface unit to the switch unit, and a first path for transferring data from the switch unit to the first interface unit. A second path for transferring data in the direction of the second interface unit, wherein the second full-duplex path includes a third path for transferring data in the direction of the plurality of memories from the switch unit; And a fourth path for transferring data from the plurality of memories in the direction of the switch unit, wherein the data transfer of the third path and the data transfer of the fourth path are performed in parallel. 8. The magnetic disk storage controller according to claim 6, wherein: 前記スイッチ部は前記第1のインターフェース部及び前記第2のインターフェース部から送信されるアクセス要求をリードアクセスとライトアクセスに分離して保持する手段を有し、該保持したアクセス要求を前記複数のメモリのうちの同一のメモリに対しリードアクセスとライトアクセスが交互に送信されるように調停することを特徴とする請求項6乃至8のいずれか1項に記載の磁気ディスク記憶制御装置。The switch unit has means for separately holding an access request transmitted from the first interface unit and the second interface unit for read access and write access, and stores the held access request in the plurality of memories. 9. The magnetic disk storage controller according to claim 6, wherein arbitration is performed such that read access and write access are alternately transmitted to the same memory. 前記スイッチ部は前記第1の全二重パスが接続される第1の複数のパスポート部と、前記第2の全二重パスが接続される第2の複数のパスポート部と、該第2の複数のパスポート部と前記第1の複数のパスポート部を接続するセレクタ部と、前記第1の複数のパスポート部からの前記複数のメモリへのアクセス要求に対し前記第2の複数のパスポート部の使用権を調停する第1のアービタと、前記第2の複数のパスポート部からの前記第1のインターフェース部及び前記第2のインターフェース部への返信に対し前記第1の複数のパスポート部の使用権を調停する第2のアービタとを有することを特徴とする請求項9記載の磁気ディスク記憶制御装置。The switch unit includes a first plurality of passport units to which the first full-duplex path is connected; a second plurality of passport units to which the second full-duplex path is connected; A selector unit that connects a plurality of passport units and the first plurality of passport units, and use of the second plurality of passport units in response to an access request to the plurality of memories from the first plurality of passport units A first arbiter for arbitrating the right and a right to use the first plurality of passport units in response to a reply from the second plurality of passport units to the first interface unit and the second interface unit. 10. The magnetic disk storage controller according to claim 9, further comprising a second arbiter for arbitration. 前記複数のメモリは前記スイッチ部から送信されるアクセス要求を複数保持する手段を有し、前記スイッチ部は前記メモリの保持手段が保持可能な数だけのアクセス要求を送信することを特徴とする請求項6乃至10のいずれか1項に記載の磁気ディスク記憶制御装置。The plurality of memories include a unit that holds a plurality of access requests transmitted from the switch unit, and the switch unit transmits as many access requests as the number of storage requests that the holding unit of the memory can hold. Item 11. The magnetic disk storage control device according to any one of items 6 to 10. 前記第1のインターフェース部は複数のプロセッサと、該プロセッサの指示により上位装置とのデータ転送を行う複数のチャネルインターフェース回路と、該チャネルインターフェース回路と前記スイッチ部間の通信制御を行うメモリアクセス制御部とを有することを特徴とする請求項6乃至11のいずれか1項に記載の磁気ディスク記憶制御装置。The first interface unit includes a plurality of processors, a plurality of channel interface circuits for performing data transfer with a host device according to instructions from the processors, and a memory access control unit for controlling communication between the channel interface circuits and the switch unit. The magnetic disk storage control device according to any one of claims 6 to 11, comprising: 前記第2のインターフェース部は複数のプロセッサと、該プロセッサの指示により前記スイッチ部とのデータ転送を行う複数のディスクインターフェース回路と、該ディスクインターフェース回路と前記スイッチ部間の通信制御を行うメモリアクセス制御部とを有することを特徴とする請求項6乃至12のいずれか1項に記載の磁気ディスク記憶制御装置。The second interface unit includes a plurality of processors, a plurality of disk interface circuits for performing data transfer with the switch unit according to instructions from the processor, and a memory access control unit for performing communication control between the disk interface circuit and the switch unit. The magnetic disk storage control device according to claim 6, further comprising a unit. 前記メモリは前記スイッチ部との間のデータ転送を制御するインターフェース部と、該インターフェース部が受取ったデータのヘッダを解析するメモリ制御部と、該メモリ制御部の指示によりデータの読み書きを行う複数のメモリモジュールとを有することを特徴とする請求項6乃至13のいずれか1項に記載の磁気ディスク記憶制御装置。The memory includes an interface unit that controls data transfer to and from the switch unit, a memory control unit that analyzes a header of data received by the interface unit, and a plurality of units that read and write data according to instructions from the memory control unit. 14. The magnetic disk storage control device according to claim 6, further comprising a memory module. 複数の磁気ディスク装置を冗長配列して構成されたディスクアレイと、該ディスクアレイに記録するデータを一時格納する複数のキャッシュメモリと、ホストコンピュータからのアクセス要求及びデータを受取る複数のホストインターフェース部と、前記ディスクアレイからのアクセス要求及びデータを受取る複数のディスクインターフェース部と、前記複数のホストインターフェース部、前記複数のディスクインターフェース部及び前記複数のキャッシュメモリと全二重バスにより接続され前記複数のホストインターフェース部及び前記複数のディスクインターフェース部から送信されるアクセス要求をリードアクセスとライトアクセスに分離して保持する手段を有し該保持したアクセス要求を前記複数のキャッシュメモリのうちの同一のキャッシュメモリに対しリードアクセスとライトアクセスが交互に送信されるように調停するスイッチ部とを有することを特徴とする磁気ディスク記憶制御装置。A disk array configured by redundantly arranging a plurality of magnetic disk devices; a plurality of cache memories for temporarily storing data to be recorded on the disk array; and a plurality of host interface units for receiving access requests and data from a host computer. A plurality of disk interface units for receiving an access request and data from the disk array; a plurality of host interfaces connected to the plurality of host interface units, the plurality of disk interface units and the plurality of cache memories by a full-duplex bus; Means for separately holding an access request transmitted from the interface unit and the plurality of disk interface units for read access and write access, and storing the held access request in the same one of the plurality of cache memories. Magnetic disk storage control apparatus characterized by a switch unit for arbitrating as read and write accesses are sent alternately to Yasshumemori. 前記スイッチ部から前記複数のキャッシュメモリに対するデータの転送と、前記と同一のキャッシュメモリからの前記スイッチ部に対するデータ転送が並行して行われることを特徴とする請求項15記載の磁気ディスク記憶制御装置。16. The magnetic disk storage control device according to claim 15, wherein data transfer from the switch unit to the plurality of cache memories and data transfer from the same cache memory to the switch unit are performed in parallel. .
JP2002337807A 2002-11-21 2002-11-21 Magnetic disk storage controller Expired - Fee Related JP4112954B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002337807A JP4112954B2 (en) 2002-11-21 2002-11-21 Magnetic disk storage controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002337807A JP4112954B2 (en) 2002-11-21 2002-11-21 Magnetic disk storage controller

Publications (2)

Publication Number Publication Date
JP2004171362A true JP2004171362A (en) 2004-06-17
JP4112954B2 JP4112954B2 (en) 2008-07-02

Family

ID=32701210

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002337807A Expired - Fee Related JP4112954B2 (en) 2002-11-21 2002-11-21 Magnetic disk storage controller

Country Status (1)

Country Link
JP (1) JP4112954B2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006285778A (en) * 2005-04-01 2006-10-19 Hitachi Ltd Storage system and storage control method
JP2010181915A (en) * 2009-02-03 2010-08-19 Nec Corp Data input-output device
US8327043B2 (en) 2010-07-29 2012-12-04 Kabushiki Kaisha Toshiba Buffer management device which manages buffer transfer, storage apparatus comprising the same device, and buffer management method

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006285778A (en) * 2005-04-01 2006-10-19 Hitachi Ltd Storage system and storage control method
JP2010181915A (en) * 2009-02-03 2010-08-19 Nec Corp Data input-output device
US8327043B2 (en) 2010-07-29 2012-12-04 Kabushiki Kaisha Toshiba Buffer management device which manages buffer transfer, storage apparatus comprising the same device, and buffer management method

Also Published As

Publication number Publication date
JP4112954B2 (en) 2008-07-02

Similar Documents

Publication Publication Date Title
JP5872560B2 (en) High speed memory system
US8156270B2 (en) Dual port serial advanced technology attachment (SATA) disk drive
US8200870B2 (en) Switching serial advanced technology attachment (SATA) to a parallel interface
US8266353B2 (en) Serial advanced technology attachment (SATA ) switch
EP0451938B1 (en) Multiple cluster signal processor
US6850998B2 (en) Disk array system and a method for controlling the disk array system
EP1622324A1 (en) Fault tolerant data transfer in multi-node system via internodal crossbar switch
US20140104967A1 (en) Inter-memory data transfer control unit
US20060106997A1 (en) Bridge permitting access by multiple hosts to a single ported storage drive
JP3769413B2 (en) Disk array controller
US7421520B2 (en) High-speed I/O controller having separate control and data paths
JP2008541276A (en) Simultaneous read response confirmation extended direct memory access unit
JP2009151752A (en) Bus switch, electronic equipment and data transfer method
US7218638B2 (en) Switch operation scheduling mechanism with concurrent connection and queue scheduling
JP3578075B2 (en) Disk array control device and disk array control method
JP4112954B2 (en) Magnetic disk storage controller
JP5102917B2 (en) Storage apparatus and access command transmission method
US7039730B2 (en) Storage device control apparatus and method
US20040151175A1 (en) Transparent data format within host device supporting differing transaction types
JP2004318628A (en) Processor unit
JP4014061B2 (en) Network equipment
US7272151B2 (en) Centralized switching fabric scheduler supporting simultaneous updates
US11645005B2 (en) Near-memory computing systems and methods
US20090138647A1 (en) Bus switch, electronic equipment, and data transfer method
US7716392B2 (en) Computer system having an I/O module directly connected to a main storage for DMA transfer

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