JP3083663B2 - ディスクアレイ装置 - Google Patents

ディスクアレイ装置

Info

Publication number
JP3083663B2
JP3083663B2 JP04328173A JP32817392A JP3083663B2 JP 3083663 B2 JP3083663 B2 JP 3083663B2 JP 04328173 A JP04328173 A JP 04328173A JP 32817392 A JP32817392 A JP 32817392A JP 3083663 B2 JP3083663 B2 JP 3083663B2
Authority
JP
Japan
Prior art keywords
data
data transfer
transfer
transfer control
buffer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP04328173A
Other languages
English (en)
Other versions
JPH06175786A (ja
Inventor
秀彦 岩崎
良一 鈴木
義則 常田
克敏 水野
英美 馬場
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Hitachi Information and Telecommunication Engineering Ltd
Original Assignee
Hitachi Computer Peripherals Co Ltd
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Computer Peripherals Co Ltd, Hitachi Ltd filed Critical Hitachi Computer Peripherals Co Ltd
Priority to JP04328173A priority Critical patent/JP3083663B2/ja
Priority to US08/163,022 priority patent/US5530830A/en
Publication of JPH06175786A publication Critical patent/JPH06175786A/ja
Application granted granted Critical
Publication of JP3083663B2 publication Critical patent/JP3083663B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、複数台のディスク装置
ユニットにデータを分散して記憶、再生するディスクア
レイ装置のデータ転送回路およびデータ転送制御方式に
関する。
【0002】
【従来の技術】ディスクアレイ装置のデータ転送回路お
よびデータ転送制御方式に関する従来技術としては、例
えば、特開平2−236714号公報「アレイ型ディス
ク駆動機構システム及び方法」がある。これは、データ
を複数台のディスク装置ユニットに分散記憶し、高速転
送を実現するために、高速動作する主マイクロプロセッ
サを用い、このマイクロプロセッサが512バイト等の
セグメント単位にデータ転送管理をおこなっている。
【0003】
【発明が解決しようとする課題】上位装置とのデータ転
送速度を高速にしようとしたとき、セグメント単位での
データ転送毎に主マイクロプロセッサが介在してデータ
転送管理を行うと、主マイクロプロセッサでの処理がオ
ーバヘッドとなり、内部バスでのデータ転送効率が下が
る。上位装置との転送データサイズが1セグメントのデ
ータサイズと同程度の場合は、このオーバヘッドによる
データ転送速度に対する影響は小さいが、上位装置との
転送データサイズが大きくなると、このオーバヘッド
は、直接上位装置とのデータ転送速度に対するネックと
なる。
【0004】本発明の目的は、上位装置との高速データ
転送を実現するディスクアレイ装置を提供することであ
る。
【0005】
【課題を解決するための手段】上記目的を達成するため
に、複数のディスク装置ユニットを有し、上記ディスク
装置ユニットは複数のグループに分割され、上記ディス
ク装置ユニットが記憶しているデータを上位装置に提供
するディスクアレイ装置において、上位装置との間で行
われる上記データの転送を制御する上位データ転送制御
部と、上記上位データ転送制御部が上位装置とデータ転
送をするときに上記データを1時的に記憶するデータバ
ッファと、上記データバッファを制御するデータバッフ
ァ制御回路と、上記グループ毎に設けられ、上記データ
バッファと上記グループに属するディスク装置ユニット
との間で行われる上記データの転送を制御するドライブ
データ転送制御部と、上記上位データ転送制御部と、上
記データバッファ制御回路と、上記ドライブデータ転送
制御部とを制御する主マイクロプロセッサ部とを有し、
さらに、上記主マイクロプロセッサ部が、上記上位デー
タ転送制御部と、上記データバッファ制御回路と、上記
ドライブデータ転送制御部とを制御するための主マイク
ロプロセッサ用バスと、上記上位データ転送制御部と、
上記データバッファ制御回路と、上記データバッファ
と、上記ドライブデータ転送制御部との間でデータを転
送するためのデータ転送用バスとを有し、上記データ転
送用バスを介して、上記主マイクロプロセッサ部は、上
記上位データ転送制御部と、上記データバッファ制御回
路と、上記ドライブデータ転送制御部とを制御し、上記
データ転送用バスを介して、上記上位データ転送制御部
または上記ドライブデータ転送制御部と、上記データバ
ッファとの間で上記データを転送することとしたもので
ある。このとき、各転送制御部はそれぞれ独立にデータ
バッファとのデータ転送が可能である。
【0006】
【作用】複数のディスク装置ユニットを有し、上記ディ
スク装置ユニットは複数のグループに分割され、上記デ
ィスク装置ユニットが記憶しているデータを上位装置に
提供するディスクアレイ装置において、上位データ転送
制御部は、上位装置との間で行われる上記データの転送
を制御する。データバッファは、上記上位データ転送制
御部が上位装置とデータ転送をするときに上記データを
1時的に記憶する。データバッファ制御回路は、上記デ
ータバッファを制御する。ドライブデータ転送制御部
は、上記データバッファと上記グループに属するディス
ク装置ユニットとの間で行われる上記データの転送を制
御する。主マイクロプロセッサ部は、上記上位データ転
送制御部と、上記データバッファ制御回路と、上記ドラ
イブデータ転送制御部とを制御する。上記データ転送用
バスを介して、上記主マイクロプロセッサ部は、上記上
位データ転送制御部と、上記データバッファ制御回路
と、上記ドライブデータ転送制御部とを制御し、上記デ
ータ転送用バスを介して、上記上位データ転送制御部ま
たは上記ドライブデータ転送制御部と、上記データバッ
ファとの間で上記データを転送する。
【0007】本発明によれば、データ転送時、主マイク
ロプロセッサは、各データ転送制御部に対して、使用す
るデータバッファアドレス,データ分散のための情報な
どを指示することにより、複数のセグメントのデータ転
送を、その間主マイクロプロセッサの介在なしに、行う
ことができる。このデータ転送を行っている間、主マイ
クロプロセッサは、次の転送のための情報を生成して各
転送制御部へ指示することができ、各転送制御部は、実
行中のデータ転送終了後、直ちに次のデータ転送を実行
することができるため、データ転送用バスの使用効率を
あげることができる。
【0008】
【実施例】以下、添付の図面に示す実施例により、さら
に詳細に本発明について説明する。図1は、本発明の一
実施例であるディスクアレイ装置の構成図である。本実
施例の装置は、コンピュータの記憶装置として動作す
る。本実施例では、汎用I/Oインタフェースであるホ
ストSCSIバス11を介して、コンピュータと接続さ
れる。
【0009】ディスクアレイ装置は、ホストSCSIバ
ス11と、上位データ転送制御部である上位データ転送
制御回路12と、主マイクロプロセッサ用バスである主
マイクロプロセッサ用データバス13と、データ転送用
バスであるデータ転送用データバス14と、データバッ
ファ制御回路15と、データバッファ部であるデータバ
ッファ16と、冗長データ生成/データ修復回路17
と、主マイクロプロセッサ部である主マイクロプロセッ
サ18と、プロセッサメモリ19と、ドライブデータ転
送制御部であるドライブデータ転送制御回路20と、デ
ィスク装置ユニット(ディスク駆動機構)21とを有す
る。
【0010】コンピュータからホストSCSIバス11
を介して転送されたコマンドを、上位データ転送制御回
路12を通して主マイクロプロセッサ18が受信,解析
を行う。プロセッサ18は、コマンド実行の最適化処理
を行い、データ転送要求であった場合、上位データ転送
制御回路12及びドライブデータ転送制御回路20に対
して、主マイクロプロセッサ用データバス13を通して
データ転送指示を行う。コマンド受信後、直ちにデータ
転送を行うことができない場合、主マイクロプロセッサ
18は、コンピュータから次のコマンドを受信すること
ができる。複数のコマンドを受信し、解析、最適化処理
途中にデータ転送の準備が整った場合、プロセッサ18
は各データ転送制御回路12,20に対してデータバス
13を通してデータ転送指示を行う。ここで、主マイク
ロプロセッサ用データバス13とデータ転送用データバ
ス14が分離されている。プロセッサ18が使用するソ
フトウェア及びワーク用のメモリは、プロセッサメモリ
19上に存在し、プロセッサメモリ19は、データバス
13に接続されているため、データ転送を実行している
間もコマンドの解析、最適化処理、次のデータ転送のた
めの転送指示を行うことができる。
【0011】データ転送は、主マイクロロセッサ18
が、上位データ転送制御回路12,ドライブデータ転送
制御回路20に対して転送指示を行うことにより開始す
る。コンピュータから転送されたデータをディスク装置
ユニット21に書きこむ場合、上位データ転送制御回路
12は、コンピュータから受信したデータを512バイ
トのデータ長で分割し、データバッファ16と冗長デー
タ生成/データ修復回路17へ512バイト毎に転送す
る。冗長データ生成/データ修復回路17は、冗長デー
タの生成が終了すると、生成した冗長データをデータバ
ッファ16へ転送する。ドライブデータ転送制御回路2
0は、転送データをデータバッファ16から取りだし、
ディスク装置ユニット21へ転送する。
【0012】ドライブデータ転送制御回路20は、必要
に応じて冗長データ生成のためにディスク装置ユニット
21からデータを読みだし、冗長データ生成/データ修
復回路17へ転送する場合もある。
【0013】ディスク装置ユニット21から読みだした
データをコンピュータへ転送する場合、ドライブデータ
転送制御回路20は、ディスク装置ユニット21から読
みだしたデータをデータバッファ16へ転送する。上位
データ転送制御回路12は、転送データをデータバッフ
ァ16から取りだし、コンピュータへ転送する。
【0014】図2〜5に本実施例でのデータ転送回路に
ついて示す。
【0015】図2は、本実施例におけるデータバッファ
16の構造を示す。データバッファは、1MビットDR
AMを使用し、1Mバイトの容量を持っている。このデ
ータバッファは、コンピュータとのデータ転送速度とデ
ィスク装置ユニット21とのデータ転送速度の整合をと
ること及び、データ転送の多重処理を行った場合のデー
タ一時退避用として用いられる。本実施例では、コンピ
ュータから受信したデータを512バイト毎に分割し、
これにチェック用データを付加したものを1セグメント
としてデータ転送を行う。データバッファのアドレス管
理を容易にするため、図2に示す様に、データバッファ
を1Kバイト毎に区切り、これに1セグメントのデータ
を格納している。各データ転送制御回路12,20は、
データバッファをアクセスするためにセグメント単位の
アドレスを使用する。更に、このデータバッファは、デ
ィスク装置ユニット21の物理的な分散に対応した8つ
の領域に分けて使用する場合がある。このとき、セグメ
ントアドレスの上位3ビットを領域番号として使用す
る。
【0016】図3は、本実施例におけるデータバッファ
制御回路15を示す。データバッファ制御回路15は、
データ転送用データバス14の使用権を調整するための
バスアービタ101、各データ転送制御部12,20か
ら転送された転送制御情報を解析する転送制御情報解析
回路102、データバッファ16の領域毎のデータの入
出力セグメント数を数えるカウンタ103、転送制御情
報に従い、データの転送タイミング、データバッファへ
のリード/ライトタイミングを生成する転送タイミング
生成回路104、データの集合を検出するためのデータ
集合検出回路105から構成されている。
【0017】図4は、各データ転送制御部12,20と
データバッファ16の間のデータ転送時のタイミングを
示す。各データ転送制御回路12,20がデータ転送要
求信号111を出力すると、バスアービタ101が、デ
ータバス14の調停を行い、選択したデータ転送制御回
路にたいしてデータ転送指示信号112を出力すると同
時にデータ転送タイミング生成回路104に転送開始指
示信号117を出力する。データ転送タイミング生成回
路104は、転送開始指示信号117を受けるとデータ
転送タイミング信号118を2回出力する。選択された
データ転送制御回路は、このデータ転送タイミング信号
118に合わせてデータバス14上にデータ転送制御情
報を出力し、データバッファ制御回路15内の転送制御
情報解析回路102がこのデータ転送制御情報を取りこ
む。
【0018】転送制御情報解析回路102は、データ転
送制御情報から、データの転送方向、データの転送先、
1セグメントのデータ長等を取りだし、データ転送制御
信号114としてデータ転送タイミング生成回路104
に入力する。データ転送タイミング生成回路104は、
データ転送制御信号114に従い、1セグメント分のデ
ータ転送タイミング信号118、データバッファ転送制
御信号119、冗長データ生成回路転送制御信号120
を出力する。データ入出力数カウント103は、転送制
御情報から取りだしたデータ数カウント情報に従い、イ
ンクリメントまたはデクリメントされる。このカウンタ
103は、データバッファの8つの領域に対応した8つ
のアップダウンカウンタから構成され、各領域毎にデー
タバッファ内の残データセグメント数を示し、この値に
よりデータ転送の許可/不許可を行い、データバッファ
をFIFOとして使用可能にしている。このように多数
のデータ転送要求元がデータの転送先、転送先アドレス
などの転送情報を指定してデータ転送を行うことによ
り、1セグメント毎のデータ転送制御を連続してハード
ウェア制御で行うことができ、データバス14上のバス
効率を上げることができる。本実施例では、データバス
幅を4バイト、データ転送周期を80nSとすることに
より、データ転送速度最大50Mバイト/秒としてい
る。また、転送制御情報の転送などのオーバヘッドを含
めた場合でも、40Mバイト/秒以上の高速データ転送
が可能である。
【0019】図5は、上位データ転送制御回路12の構
成を示す。上位データ転送制御回路12は、上位データ
転送制御回路12を制御するための副プロセッサ20
1、副プロセッサ用のメモリ202、主マイクロロセ
ッサ18とのデータ受け渡しをするための共用メモリ2
03、上位インタフェース回路204、データ転送制御
回路205、転送制御情報生成手段である転送制御情報
生成回路207、FIFOメモリ206とを有する。デ
ータ転送時、副プロセッサ201は共用メモリ203を
とおしてデータ転送を行うための情報として、データの
分散形態(データの転送先の番号)、使用するデータバ
ッファドレス、転送データ量などを主マイクロロセ
ッサ18から受け取る。主マイクロプロセッサ18から
受け取った情報にしたがって、副プロセッサ201は各
回路204,205,207の初期化を行い、データ転
送を開始する。
【0020】上位インタフェース回路204はコンピュ
ータとのインタフェースを行う回路である。コンピュー
タから転送されたデータは上位インタフェース回路20
4をとおしてFIFOメモリ206に格納される。コン
ピュータから転送されたデータがFIFO206に51
2バイトたまったとき、データ転送制御回路205はデ
ータバッファ制御回路15にたいしてデータ転送要求信
号111を出力する。データバッファ制御回路15から
のデータ転送指示信号112を受信すると、データ転送
制御回路205は転送制御情報生成回路207に対して
2ワードのデータ転送制御情報の出力を指示し、出力終
了後、1セグメントのデータ転送を開始する。
【0021】下記の表1にデータ転送制御情報を示す。
【0022】
【表1】
【0023】なお、データ転送制御情報は、内容により
同一ビットに複数の項目を割り当て、8バイトに納め
る。
【0024】転送制御情報生成回路205は、1セグメ
ントのデータ長、転送方向、データ転送先等を設定する
レジスタと、転送先データバッファのアドレスを生成す
るアドレス生成回路からなる。データバッファが、ディ
スク装置ユニット毎に物理的に割り当てられている場
合、データバッファとの転送時にデータの分散/集合を
行う。このときの転送先データバッファアドレスは、デ
ータ分散形態、データバッファの使用開始アドレス等に
より一義的に求まるため、ハードウェアによるアドレス
生成が可能である。転送制御情報生成回路207は、転
送制御情報2ワードを出力すると次の転送先アドレスを
計算し、次の1セグメントのデータ転送に備える。
【0025】ドライブデータ転送制御回路20の構成
は、上位データ転送制御回路12と同じであり動作も同
様となっている。ドライブデータ転送制御回路20で
は、データバッファとのデータ転送時にデータの分散/
集合を意識しなくてよいため、アドレス生成回路が簡略
化されている。
【0026】図6,7に本実施例におけるデータ転送制
御例を示す。データ転送の具体的な制御方式は、コンピ
ュータとのデータ転送時、小さいデータを高トランザク
ション処理するか、大きなデータを転送するか、により
異なる。
【0027】図6は、1回の転送データ量が小さく、高
トランザクションを要求される場合の処理例として、コ
ンピュータから転送されたデータをディスク装置ユニッ
ト21に書きこむ場合を示す。この場合、データバッフ
ァ制御回路15のデータ入出力数カウンタ103は使用
せず、データバッファとディスク装置ユニットとの物理
対応はとらない。すなわち、従来と同じ転送制御方式で
行う。
【0028】コンピュータからのコマンドを受信する
と、主マイクロプロセッサ18はコンピュータとの転送
データを格納するために必要なデータバッファ16の領
域を確保する。データバッファ16の領域を確保できる
と、主マイクロプロセッサ18は、上位データ転送制御
回路12にたいしてデータバッファ16の使用アドレス
とデータ転送の指示を行い、転送の終了報告があるま
で、次のコマンドの解析、データ転送指示を行う。上位
データ転送制御回路12は転送指示を受けると、コンピ
ュータからのデータ受信を開始し、ハードウェア制御に
よりデータ転送をコンピュータからのデータ受信が終了
するまで続け、転送すべきデータがなくなったとき、主
マイクロプロセッサ18に対して転送終了の報告を行
う。この後、次のデータ転送が指示されていれば続けて
これを行う。
【0029】主マイクロプロセッサ18は、上位データ
転送制御回路12からデータ転送終了の報告を受ける
と、ドライブデータ転送制御回路20に対して転送すべ
きデータの格納されているデータバッファアドレスと転
送の開始を指示し、コマンド待ち・コマンド解析に戻
る。ドライブデータ転送制御回路20は、指示に従いデ
ータバッファ16からディスク装置ユニット21へのデ
ータ転送を行う。転送すべきデータを全て転送したと
き、ドライブデータ転送制御回路20は主マイクロプロ
セッサ18に転送の終了を報告する。主マイクロプロセ
ッサ18は、転送を指示した全てのドライブデータ転送
制御回路20からの転送終了報告を受信すると、確保し
ていたデータバッファの領域を開放する。
【0030】以上の動作により、主マイクロプロセッサ
18によるデータ転送管理は、セグメント毎の転送単位
ではなく、コンピュータからのコマンド単位で行うこと
ができる。このため、セグメント毎の転送単位ではソフ
トウェア処理によるオーバヘッドが発生せず、データバ
ス14の使用効率があがり、コンピュータとのデータ転
送速度を向上させることができる。また、主マイクロプ
ロセッサ18は、データ転送タイミングなどのリアルタ
イム処理から開放される。
【0031】図7は、1回の転送データ量が大きく、コ
ンピュータとの転送データがデータバッファに入りきら
ない場合の処理例を示す。画像データ等、コンピュータ
との1回の転送データが非常に大きく、データバッファ
に入りきらないようなデータを取り扱うコンピュータシ
ステムに接続する場合、高トランザクション時と同様の
制御を行うと、主マイクロプロセッサ18は、コンピュ
ータからの1コマンドを複数回の処理に分け、データバ
ッファ16の空き状態に応じてデータ転送制御を行わな
ければならず、データ転送状態の監視が必要となる。
【0032】このような場合、本装置では、データバッ
ファ16をFIFOメモリとして使用することができ
る。このとき、データバッファ制御回路15のデータ入
出力数カウンタ103を使用し、データバッファはディ
スク装置ユニット21に物理的に対応した8つの領域に
分割して使用する。
【0033】コンピュータから転送されたデータをディ
スク装置ユニット21に書きこむ場合、主マイクロプロ
セッサ18は、上位データ転送制御回路12,ドライブ
データ転送制御回路20に対してデータの分散形態情
報、データ転送の開始を指示する。転送指示を受けた上
位データ転送制御回路12,ドライブデータ転送制御回
路20は、コンピュータとデータバッファ16間、デー
タバッファ16とディスク装置ユニット20間のデータ
転送を開始する。このとき、上位データ転送制御回路1
2,ドライブデータ転送制御回路20内の転送制御情報
生成回路207では、データバッファ16の領域に合わ
せたデータバッファアドレスを計算し、データ転送を行
う。このとき、アドレスは、領域毎に指定されたアドレ
ス範囲でラップアラウンドする。また、データ転送制御
情報でデータ数カウントを指示してデータ転送を行うこ
とにより、データバッファ制御回路15では、各データ
バッファの領域毎にデータ数カウンタ103によるデー
タ入出力管理を行い、データバッファ16をFIFOと
して用いる。上位データ転送制御回路12,ドライブデ
ータ転送制御回路20は、指定されたデータ転送数を全
て終了すると、主マイクロプロセッサ18に対して、転
送終了報告を行う。以上の動作により、ハードウェア制
御で、データの分散、データバッファ16のFIFO制
御を行い、データバッファに入りきらない大量データ転
送時でも主マイクロプロセッサ18は、コンピュータの
コマンド単位で処理を行うことができる。
【0034】また、本装置では、小さいデータを高トラ
ンザクション処理する場合も、大きなデータを転送する
場合も柔軟に対応できる。データバッファをFIFOと
して制御するか否かは、データ入出力数カウンタを使用
するかしないかにより選択できる。この選択が上位デー
タ転送制御回路12,20により可能となっており、デ
ータバッファの各領域毎でラップアラウンドするアドレ
ス範囲を限定するだけで、小さいデータを高トランザク
ション処理する場合と大きなデータを転送する場合が共
存可能である。
【0035】さらに、本装置では、データの集合を検出
する機能を有している。これは、ディスク装置ユニット
21から読みだしたデータを集合してコンピュータへデ
ータを送る場合、ディスク装置ユニット21から読みだ
したデータの集合が終了したことをハードウェアにより
検出する機能である。
【0036】図8にデータ集合検出回路105を示す。
データ集合検出回路105は、終了検出手段である終了
検出回路301と、終了状態ラッチ302と、集合検出
条件設定手段である集合検出条件レジスタ303と、集
合検出手段である集合検出回路304と、転送対象ディ
スク転送制御回路番号305とを有する。
【0037】データ集合検出を行う場合、先ず、主マイ
クロプロセッサ18により集合検出条件レジスタ303
に、どのドライブデータ転送制御回路20からの転送終
了で集合検出するかを設定し、ドライブデータ転送制御
回路20に対して転送開始を指示する。ドライブデータ
転送制御回路20では、最終セグメントのバッファ転送
時に、転送終了情報115の転送終了フラグがONとな
るモードでデータ転送を開始する。データ集合検出回路
105ではデータ転送時に転送終了情報115の転送終
了フラグがONとなっていると、この時転送を実行して
いる回路20の回路番号である、転送対象ディスク転送
制御回路番号305と、転送終了情報115により終了
情報ラッチ302の回路20に対応したビットをONす
る。
【0038】この終了状態ラッチ302と集合検出条件
レジスタ303を比較し、集合検出条件が成立したと
、主マイクロプロセッサ18に対して、データ集合検
出割り込み信号121を出力する。
【0039】この機能により、主マイクロプロセッサ1
8は、複数のディスク転送制御回路20の転送終了報告
によりデータが集合したことを調べるのでなく、ただ一
つの割り込みによりデータが集合したことを知ることが
できる。
【0040】また、この機能は、データの集合を検出す
るだけでなく、各ドライブデータ転送制御回路20の準
備が全て整ったことを検出する場合にも使用できる。こ
の場合、各ドライブデータ転送制御回路20では、それ
ぞれ準備が整ったとき、データ転送制御情報の転送終了
フラグをセットし、データ転送先を指定せずにデータ転
送を行う。このとき、回路15では、終了状態ラッチ3
02をセットするだけでデータ転送動作を終了し、必要
なドライブデータ転送制御回路20対応の終了状態のラ
ッチがそろったとき、主マイクロプロセッサ18に割り
込みを行う。
【0041】本実施例によれば、データ転送時、主マイ
クロプロセッサは、各データ転送制御部に対して、使用
するデータバッファアドレス,データ分散のための情報
などを指示することにより、複数のセグメントのデータ
転送を、その間主マイクロプロセッサの介在なしに、行
うことができる。このデータ転送を行っている間、主マ
イクロプロセッサは、次の転送のための情報を生成して
各転送制御部へ指示することができ、各転送制御部は、
実行中のデータ転送終了後、直ちに次のデータ転送を実
行することができるため、データ転送用データバスの使
用効率をあげることができる。
【0042】この結果、マイクロプロセッサを頻繁に発
生するデータ転送管理から開放できる。コンピュータと
の転送データを分割し、コントローラ内部のデータ転送
及び転送状態の管理をセグメント単位で行う場合、この
管理は、頻繁に発生する。従来は、マイクロプロセッサ
でこの管理を行っいるため、データ転送を行っている
間マイクロプロセッサは他の仕事を行う余裕がなくなる
上、データ転送自体も、マイクロプロセッサの処理によ
り発生するオーバヘッドのため、性能の低下を招いてい
た。
【0043】また、転送データサイズがデータバッファ
に収まらないような大量データ転送を必要とする上位装
置に接続する場合、データバッファをFIFOとして使
用することによりデータ転送時のバス使用効率をあげる
ことができる。
【0044】すなわち、コンピュータとの転送データが
データバッファに入りきらない大きさの場合でも、最大
のデータ転送速度が得られる。また、少量データ高トラ
ンザクション処理から大量データ処理まで柔軟な対応が
できる。
【0045】さらに、データ集合の検出器により、主マ
イクロプロセッサは、この検出器からの1つの割り込み
によりデータが集合されたことを知ることができる。こ
のため、主マイクロプロセッサは、データが集合された
ことを知るための、複数のドライブとのデータ転送制御
部とのコミュニケーションが不要となり、処理の軽減が
できる。すなわち、独立して動作するドライブデータ転
送制御回路の動作状態の検出処理を簡単にし、処理速度
の向上が可能となる。
【0046】
【発明の効果】本発明によれば、上位装置との高速デー
タ転送を実現するディスクアレイ装置を提供できる。
【図面の簡単な説明】
【図1】ディスクアレイ装置のブロック図である。
【図2】データバッファの説明図である。
【図3】データバッファ制御回路のブロック図である。
【図4】データ転送時のタイミング図である。
【図5】上位データ転送制御回路のブロック図である。
【図6】高トランザクション時の転送制御の説明図であ
る。
【図7】大量データ時の転送制御の説明図である。
【図8】データ集合検出回路のブロック図である。
【符号の説明】
11…ホストSCSIバス、12…上位データ転送制御
回路、13…主マイクロプロセッサ用データバス、14
…データ転送用データバス、15…データバッファ制御
回路、16…データバッファ、17…冗長データ生成/
データ修復回路、18…主マイクロプロセッサ、19…
プロセッサメモリ、20…ドライブデータ転送制御回
路、21…ディスク装置ユニット、101…バスアービ
タ、102…転送制御情報解析回路、103…データ入
出力数カウンタ、104…データ転送タイミング生成回
路、105…データ集合検出回路、111…データ転送
要求信号、112…データ転送指示信号、113…デー
タ数カウント情報、114…データ転送制御信号、11
5…転送終了情報、116…データ転送許可信号、11
7…転送開始指示信号、118…データ転送タイミング
信号、119…データバッファ転送制御信号、120…
冗長データ生成回路転送制御信号、121…データ集合
検出割り込み、201…副プロセッサ、202…副プロ
セッサ用メモリ、203…共用メモリ、204…上位イ
ンタフェース回路、205…データ転送制御回路、20
6…FIFOメモリ、207…転送制御情報生成回路、
208…副プロセッサ用バス、209…上位側データ転
送制御信号、210…上位データバス、211…転送制
御情報生成回路制御信号、301…終了検出回路、30
2…終了状態ラッチ、303…集合検出条件レジスタ、
304…集合検出回路、305…転送対象ディスク転送
制御回路番号。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 常田 義則 神奈川県小田原市国府津2880番地 日立 コンピュータ機器株式会社内 (72)発明者 水野 克敏 神奈川県小田原市国府津2880番地 日立 コンピュータ機器株式会社内 (72)発明者 馬場 英美 神奈川県小田原市国府津2880番地 日立 コンピュータ機器株式会社内 (56)参考文献 特開 平6−161672(JP,A) 特開 平4−329422(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06F 3/06

Claims (3)

    (57)【特許請求の範囲】
  1. 【請求項1】複数のグループに分割された複数のディス
    ク装置ユニットを備え、当該ディスク装置ユニットが記
    憶しているデータを上位装置に転送するディスクアレイ
    装置であって、 上位装置との間で行われるデータの転送を制御する上位
    データ転送制御部と、 当該上位データ転送制御部がデータ転送をするときにデ
    ータを一時的に記憶するデータバッファと、 当該データバッファを制御するデータバッファ制御部
    と、 前記データバッファと前記ディスク装置ユニットとの間
    で行われるデータの転送を制御するドライブデータ転送
    制御部と、 前記上位データ転送制御部と前記ドライブデータ転送制
    御部とを制御する主マイクロプロセッサと、 当該主マイクロプロセッサが、前記上位データ転送制御
    部と前記ドライブデータ転送制御部とを制御するための
    主マイクロプロセッサ用バスと、 前記上位データ転送制御部と、前記データバッファ制御
    部と、前記データバッファと、前記ドライブデータ転送
    制御部との間でデータを転送するためのデータ転送用バ
    スと 前記複数のグループから前記データバッファへ転送され
    たデータが前記データバッファ上で集合されたことを検
    出するデータ集合検出回路と を備えたディスクアレイ装
    置。
  2. 【請求項2】複数のグループに分割された複数のディス
    ク装置ユニットを備え、当該ディスク装置ユニットが記
    憶しているデータを上位装置に転送するディスクアレイ
    装置であって、 上位装置との間で行われるデータの転送を制御する上位
    データ転送制御部と、 当該上位データ転送制御部がデータ転送をするときにデ
    ータを一時的に記憶するデータバッファと、 当該データバッファを制御するデータバッファ制御部
    と、 前記データバッファと前記ディスク装置ユニットとの間
    で行われるデータの転送を制御するドライブデータ転送
    制御部と、 前記上位データ転送制御部と前記ドライブデータ転送制
    御部とを制御する主マイクロプロセッサと、 当該主マイクロプロセッサが、前記上位データ転送制御
    部と前記ドライブデータ転送制御部とを制御するための
    主マイクロプロセッサ用バスと、 前記主マイクロプロセッサの介在なしに、上位装置から
    前記ディスク装置ユニットまでデータを転送するための
    データ転送用バスと 前記複数のグループから前記データバッファへ転送され
    たデータが前記データバッファ上で集合されたことを検
    出するデータ集合検出回路と を備えたディスクアレイ装
    置。
  3. 【請求項3】前記上位データ転送制御部または前記ドラ
    イブデータ転送制御部は、 前記データバッファ制御部との間で転送するデータの転
    送先アドレス及び転送量に関するデータを送受信するこ
    とにより、前記データバッファとの間でデータを転送す
    る請求項1または請求項2に記載のディスクアレイ装
    置。
JP04328173A 1992-12-08 1992-12-08 ディスクアレイ装置 Expired - Lifetime JP3083663B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP04328173A JP3083663B2 (ja) 1992-12-08 1992-12-08 ディスクアレイ装置
US08/163,022 US5530830A (en) 1992-12-08 1993-12-06 Disk array system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP04328173A JP3083663B2 (ja) 1992-12-08 1992-12-08 ディスクアレイ装置

Publications (2)

Publication Number Publication Date
JPH06175786A JPH06175786A (ja) 1994-06-24
JP3083663B2 true JP3083663B2 (ja) 2000-09-04

Family

ID=18207300

Family Applications (1)

Application Number Title Priority Date Filing Date
JP04328173A Expired - Lifetime JP3083663B2 (ja) 1992-12-08 1992-12-08 ディスクアレイ装置

Country Status (2)

Country Link
US (1) US5530830A (ja)
JP (1) JP3083663B2 (ja)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5712976A (en) * 1994-09-08 1998-01-27 International Business Machines Corporation Video data streamer for simultaneously conveying same one or different ones of data blocks stored in storage node to each of plurality of communication nodes
JP2845162B2 (ja) * 1995-05-10 1999-01-13 日本電気株式会社 データ転送装置
US5724543A (en) * 1995-06-19 1998-03-03 Lucent Technologies Inc. Video data retrieval method for use in video server environments that use striped disks
JPH09325865A (ja) 1996-06-05 1997-12-16 Fujitsu Ltd 記憶装置の制御装置及び記憶装置のアクセス方法
US6654853B1 (en) * 1996-12-23 2003-11-25 Lsi Logic Corporation Method of secondary to secondary data transfer with mirroring
US6134630A (en) * 1997-11-14 2000-10-17 3Ware High-performance bus architecture for disk array system
US6138176A (en) * 1997-11-14 2000-10-24 3Ware Disk array controller with automated processor which routes I/O data according to addresses and commands received from disk drive controllers
US6343343B1 (en) 1998-07-31 2002-01-29 International Business Machines Corporation Disk arrays using non-standard sector sizes
US6446237B1 (en) 1998-08-04 2002-09-03 International Business Machines Corporation Updating and reading data and parity blocks in a shared disk system
US6446220B1 (en) 1998-08-04 2002-09-03 International Business Machines Corporation Updating data and parity data with and without read caches
US6279138B1 (en) 1998-08-04 2001-08-21 International Business Machines Corporation System for changing the parity structure of a raid array
US6128762A (en) * 1998-08-04 2000-10-03 International Business Machines Corporation Updating and reading data and parity blocks in a shared disk system with request forwarding
US6272662B1 (en) 1998-08-04 2001-08-07 International Business Machines Corporation Distributed storage system using front-end and back-end locking
US6332197B1 (en) 1998-08-04 2001-12-18 International Business Machines Corp. System for updating data in a multi-adaptor environment
JP2003015826A (ja) * 2001-07-04 2003-01-17 Hitachi Ltd ディスクアレイ制御装置における共有メモリコピー機能

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU630635B2 (en) * 1988-11-14 1992-11-05 Emc Corporation Arrayed disk drive system and method
US5249279A (en) * 1989-11-03 1993-09-28 Compaq Computer Corporation Method for controlling disk array operations by receiving logical disk requests and translating the requests to multiple physical disk specific commands
US5210860A (en) * 1990-07-20 1993-05-11 Compaq Computer Corporation Intelligent disk array controller
US5408644A (en) * 1992-06-05 1995-04-18 Compaq Computer Corporation Method and apparatus for improving the performance of partial stripe operations in a disk array subsystem
US5418925A (en) * 1992-10-23 1995-05-23 At&T Global Information Solutions Company Fast write I/O handling in a disk array using spare drive for buffering

Also Published As

Publication number Publication date
JPH06175786A (ja) 1994-06-24
US5530830A (en) 1996-06-25

Similar Documents

Publication Publication Date Title
JP3083663B2 (ja) ディスクアレイ装置
KR100352039B1 (ko) 버스로부터수집된데이터에대해패리티를발생시키는플라이바이xor
US6549981B2 (en) Disk array system with controllers that automate host side of ATA interface
KR100701419B1 (ko) 호스트 시스템과 호스트 어댑터 사이에서 입출력 블록을자동적으로 전송하는 방법과 장치
US5910178A (en) Method for controlling a message send in a packet-switched interconnection network
US4467421A (en) Virtual storage system and method
US4399503A (en) Dynamic disk buffer control unit
EP0732659B1 (en) Controlling (n+i) I/O channels with (n) data managers in a homogeneous software programming environment
US6301625B1 (en) System and method for processing and tracking the completion of I/O requests in a disk array system
JP2940403B2 (ja) 並列計算機システムにおけるモニタデータ収集方法
US5664145A (en) Apparatus and method for transferring data in a data storage subsystems wherein a multi-sector data transfer order is executed while a subsequent order is issued
USRE36989E (en) Virtual storage system and method
EP0797141A1 (en) Computer system
JP2774862B2 (ja) Dma制御装置および情報処理装置
US5555390A (en) Data storage method and subsystem including a device controller for respecifying an amended start address
US5305441A (en) Data communication system prioritizing data transfer over microcomputer data interrupt processing
JPH056901B2 (ja)
US7228375B1 (en) System and method for efficient input/output of a computer system
US5875458A (en) Disk storage device
JPH02310649A (ja) 受信フレーム転送方式および通信制御装置
JP2963696B2 (ja) データ転送制御システム
US6822967B1 (en) Relay unit and frame tracing method
JPH02171843A (ja) インターフェース装置
US20020087752A1 (en) Method of real time statistical collection for I/O controllers
JPH0743687B2 (ja) データ記憶サブシステム

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080630

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20080630

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20090630

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20100630

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20100630

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20110630

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20110630

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20120630

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20120630

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20130630

Year of fee payment: 13

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130630

Year of fee payment: 13