JP6217192B2 - ストレージ制御装置、制御プログラムおよび制御方法 - Google Patents
ストレージ制御装置、制御プログラムおよび制御方法 Download PDFInfo
- Publication number
- JP6217192B2 JP6217192B2 JP2013143487A JP2013143487A JP6217192B2 JP 6217192 B2 JP6217192 B2 JP 6217192B2 JP 2013143487 A JP2013143487 A JP 2013143487A JP 2013143487 A JP2013143487 A JP 2013143487A JP 6217192 B2 JP6217192 B2 JP 6217192B2
- Authority
- JP
- Japan
- Prior art keywords
- memory
- transfer
- switch
- progress
- status
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0658—Controller construction arrangements
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Bus Control (AREA)
Description
前記スイッチを介して前記メモリ上のデータを前記他のストレージ制御装置へ転送するデータ転送部と、前記データ転送部によって転送されたデータの転送状況を前記スイッチから読み出し、読み出した転送状況を前記メモリに書き込む転送状況検出部と、を有する。
図1は、実施例1に係るRAID装置のハードウェア構成を示す図である。図1に示すように、RAID装置9は、複数のコントローラモジュール(CM)1,2と、PCIバス3と、ディスク4とを有する。CM1,2は、冗長化されている。ここでは0系のCM1と1系のCM2とが、PCIバス3を介してCM間通信を行う。PCIバス3には、例えば、PCI Expressバスである。
次に、実施例1に係るCMのシーケンスを、図2を参照して説明する。図2は、CMのシーケンスを示す図である。なお、CM1が、通信起動側のCMであるとする。
上記実施例1によれば、DMAコントローラ13は、メモリ11上のデータを、スイッチ12を介して他のCM2へ転送する。そして、DMAコントローラ13は、転送状況をスイッチ12から読み出し、読み出した転送状況をメモリ11に書き込む。かかる構成によれば、DMAコントローラ13が、CPU14に代わってスイッチ12から転送状況を読み出すので、CPU14による読み出し処理が不要となり、CM1内の全体性能を向上できる。すなわち、CPU14は、読み出し処理の間、他の処理を並行して行うことができ、CM1内の全体性能を向上できる。
図4は、実施例2に係るRAID装置のハードウェア構成を示す図である。なお、図1に示すRAID装置9と同一の構成については同一符号を示すことで、その重複する構成および動作の説明については省略する。実施例1と実施例2とが異なるところは、DMAコントローラ13をDMAコントローラ13Aに変更し、スイッチ12をスイッチ12Aに変更し、CPU14をCPU14Aに変更した点にある。
次に、実施例2に係るCMのシーケンスを、図5を参照して説明する。図5は、実施例2に係るCMのシーケンスを示す図である。なお、CM1が、通信起動側のCMであるとする。また、DMAの転送状況が正常であるとする。
上記実施例2によれば、DMAコントローラ13Aは、データの転送に対応する応答をスイッチ12Aから受け取ると、データの転送に対応する進捗状況をメモリ11に書き込む。さらに、DMAコントローラ13Aは、スイッチ12A内のデバイスに正常に書き込まれた際に発行される割り込みをCPU14Aに対して通知させる。かかる構成によれば、DMAコントローラ13Aは、スイッチ12Aに、スイッチ12A内のデバイスに正常に書き込まれた際に発行される割り込みをCPU14Aに通知させることで、当該デバイスまでの書き込みが成功したことを知らせることができる。
実施例3に係るRAID装置のハードウェア構成は、実施例2に係るRAID装置のハードウェア構成(図4参照)と同様であるので、その重複する構成および動作の説明については省略する。
次に、実施例3に係るCMのシーケンスを、図7を参照して説明する。図7は、CMのシーケンスを示す図である。なお、コマンド1とコマンド2とが動作中であるとする。また、メモリ11には、進捗A相当の進捗状況が書き込まれる進捗A領域と、進捗B相当の進捗状況が書き込まれる進捗B領域とが予め割り当てられているとする。
上記実施例3によれば、DMAコントローラ13Aは、データの転送に対応する応答をスイッチ12Aから受け取ると、データの転送に対応する進捗状況をメモリ11の第1の領域に書き込む。そして、DMAコントローラ13Aは、転送状況をスイッチ12AのDW122から読み出すと、データの転送に対応する進捗状況をメモリ11の第2の領域に書き込む。さらに、DMAコントローラ13Aは、スイッチ12A内のデバイスに正常に書き込まれた際に発行される割り込みをCPU14Aに対して通知させる。そして、CPU14Aは、割り込みを受け取ったタイミングで、第1の領域および第2の領域に書き込まれた進捗状況を読み出す。かかる構成によれば、DMAコントローラ13Aは、メモリ11の第1の領域および第2の領域に、データの転送に対応する進捗状況を書き込むので、データの転送に関わる進捗状況を保持できる。この結果、CPU14Aは、データの転送に関わる複数の進捗を把握することができる。
なお、実施例3では、DMAコントローラ13Aは、進捗レジスタ相当の進捗領域を2つ分メモリ11に割り当て、2つの進捗領域にそれぞれ進捗状況を書き込む。しかしながら、DMAコントローラ13Aは、これに限定されず、進捗レジスタ相当の進捗領域を2つ以上メモリ11に割り当て、割り当てた複数の進捗領域にそれぞれ進捗状況を書き込むようにしても良い。これにより、DMAコントローラ13Aは、DMAの進捗として、さらに複数の進捗状況をメモリ11に保持することができる。
他のストレージ制御装置と接続するスイッチと、
前記スイッチを介して前記メモリ上のデータを前記他のストレージ制御装置へ転送するデータ転送部と、
前記データ転送部によって転送されたデータの転送状況を前記スイッチから読み出し、読み出した転送状況を前記メモリに書き込む転送状況検出部と、
を有することを特徴とするストレージ制御装置。
を有することを特徴とする付記1に記載のストレージ制御装置。
を有することを特徴とする付記2に記載のストレージ制御装置。
ことを特徴とする付記3に記載のストレージ制御装置。
前記制御部は、前記割り込みを受け取ったタイミングで、前記第1の領域および前記第2の領域に書き込まれた進捗状況を読み出す
ことを特徴とする付記4に記載のストレージ制御装置。
他のストレージ制御装置と接続するスイッチを介してストレージに書き込まれるデータを一時的に記憶するメモリ上のデータを前記他のストレージ制御装置へ転送し、
前記転送する処理によって転送されたデータの転送状況を前記スイッチから読み出し、読み出した転送状況を前記メモリに書き込む
処理を実行させることを特徴とする制御プログラム。
他のストレージ制御装置と接続するスイッチを介してストレージに書き込まれるデータを一時的に記憶するメモリ上のデータを前記他のストレージ制御装置へ転送し、
前記転送する処理によって転送されたデータの転送状況を前記スイッチから読み出し、読み出した転送状況を前記メモリに書き込む
処理を実行することを特徴とする制御方法。
3 PCIバス
4 ディスク
11,21 メモリ
12,12A,22 スイッチ
13,13A,23 DMAコントローラ
14,14A,24 CPU
121 UP
122 DW
Claims (7)
- ストレージに書き込まれるデータを一時的に記憶するメモリと、
他のストレージ制御装置と接続するスイッチと、
前記スイッチを介して前記メモリ上のデータを前記他のストレージ制御装置へ転送するデータ転送部と、
前記データ転送部によって転送されたデータの転送状況を前記スイッチから読み出し、読み出した転送状況を前記メモリに書き込む転送状況検出部と、
前記転送状況検出部によって書き込まれた転送状況を、所定のタイミングで、前記メモリから読み出す制御部と、
を有することを特徴とするストレージ制御装置。 - 前記データ転送部によるデータの転送に対応する応答を前記スイッチから受け取ると、前記データの転送に対応する進捗状況を前記メモリに書き込み、さらに、前記スイッチ内のデバイスに正常に書き込まれた際に発行される割り込みを前記制御部に対して通知させる進捗状況検出部
を有することを特徴とする請求項1に記載のストレージ制御装置。 - 前記制御部は、前記割り込みを受け取ったタイミングで、前記メモリに書き込まれた進捗状況を読み出す
ことを特徴とする請求項2に記載のストレージ制御装置。 - コンピュータに、
他のストレージ制御装置と接続するスイッチを介してストレージに書き込まれるデータを一時的に記憶するメモリ上のデータを前記他のストレージ制御装置へ転送し、
前記転送する処理によって転送されたデータの転送状況を前記スイッチから読み出し、読み出した転送状況を前記メモリに書き込み、
前記メモリに書き込む処理によって書き込まれた転送状況を、所定のタイミングで、前記メモリから読み出す
処理を実行させることを特徴とする制御プログラム。 - 前記転送する処理によるデータの転送に対応する応答を前記スイッチから受け取ると、前記データの転送に対応する進捗状況を前記メモリに書き込み、さらに、前記スイッチ内のデバイスに正常に書き込まれた際に発行される割り込みを、前記転送状況を前記メモリから読み出す制御部に対して通知させる
処理を実行させることを特徴とする請求項4に記載の制御プログラム。 - ストレージ制御装置が、
他のストレージ制御装置と接続するスイッチを介してストレージに書き込まれるデータを一時的に記憶するメモリ上のデータを前記他のストレージ制御装置へ転送し、
前記転送する処理によって転送されたデータの転送状況を前記スイッチから読み出し、読み出した転送状況を前記メモリに書き込み、
前記メモリに書き込む処理によって書き込まれた転送状況を、所定のタイミングで、前記メモリから読み出す
処理を実行することを特徴とする制御方法。 - 前記転送する処理によるデータの転送に対応する応答を前記スイッチから受け取ると、前記データの転送に対応する進捗状況を前記メモリに書き込み、さらに、前記スイッチ内のデバイスに正常に書き込まれた際に発行される割り込みを、前記転送状況を前記メモリから読み出す制御部に対して通知させる
処理を実行することを特徴とする請求項6に記載の制御方法。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2013143487A JP6217192B2 (ja) | 2013-07-09 | 2013-07-09 | ストレージ制御装置、制御プログラムおよび制御方法 |
| US14/305,088 US9323472B2 (en) | 2013-07-09 | 2014-06-16 | Storage controlling device and controlling method |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2013143487A JP6217192B2 (ja) | 2013-07-09 | 2013-07-09 | ストレージ制御装置、制御プログラムおよび制御方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2015018314A JP2015018314A (ja) | 2015-01-29 |
| JP6217192B2 true JP6217192B2 (ja) | 2017-10-25 |
Family
ID=52278102
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2013143487A Active JP6217192B2 (ja) | 2013-07-09 | 2013-07-09 | ストレージ制御装置、制御プログラムおよび制御方法 |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US9323472B2 (ja) |
| JP (1) | JP6217192B2 (ja) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US11314674B2 (en) | 2020-02-14 | 2022-04-26 | Google Llc | Direct memory access architecture with multi-level multi-striding |
Family Cites Families (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2012133405A (ja) * | 2009-07-24 | 2012-07-12 | Hitachi Ltd | ストレージ装置及びそのデータ転送制御方法 |
| US8589603B2 (en) | 2010-08-30 | 2013-11-19 | International Business Machines Corporation | Delaying acknowledgment of an operation until operation completion confirmed by local adapter read operation |
| JP2012212360A (ja) * | 2011-03-31 | 2012-11-01 | Nec Corp | 入出力制御装置、コンピュータ、及び制御方法 |
-
2013
- 2013-07-09 JP JP2013143487A patent/JP6217192B2/ja active Active
-
2014
- 2014-06-16 US US14/305,088 patent/US9323472B2/en active Active
Also Published As
| Publication number | Publication date |
|---|---|
| JP2015018314A (ja) | 2015-01-29 |
| US9323472B2 (en) | 2016-04-26 |
| US20150019826A1 (en) | 2015-01-15 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP7002346B2 (ja) | ストレージシステム及びその動作方法 | |
| JP5427360B2 (ja) | フラッシュメモリに基づくメモリシステム | |
| CN116724297A (zh) | 一种故障处理方法、装置及系统 | |
| CN114868117A (zh) | 通过控制总线进行的对等存储设备消息传送 | |
| US9092398B2 (en) | Restoring expander operations in a data storage switch | |
| JP4658122B2 (ja) | Dmaコントローラ、ノード、データ転送制御方法、及びプログラム | |
| JP2014032516A (ja) | ストレージ装置、制御装置およびデータ保護方法 | |
| US7624324B2 (en) | File control system and file control device | |
| CN100549986C (zh) | 信息处理装置 | |
| US7308601B2 (en) | Program, method and apparatus for disk array control | |
| JP6217192B2 (ja) | ストレージ制御装置、制御プログラムおよび制御方法 | |
| JP5034979B2 (ja) | 起動装置、起動方法、及び、起動プログラム | |
| JP2016059012A (ja) | 受信装置、送信装置およびデータ転送システム | |
| JP5910356B2 (ja) | 電子装置、電子装置制御方法及び電子装置制御プログラム | |
| JP6206138B2 (ja) | ストレージ制御装置およびストレージ制御装置の制御プログラム | |
| JP5223612B2 (ja) | ディスク制御装置およびファームウェアの更新方法 | |
| US20170109099A1 (en) | Storage device, storage system, and method of controlling storage device | |
| JP2013020566A (ja) | 二重化情報処理システム | |
| JP2010061258A (ja) | デュプレックスプロセッサシステム及びプロセッサ二重化方法 | |
| US20070174722A1 (en) | Input/output control method, computer product, and disk control apparatus | |
| JP5888419B2 (ja) | データ処理装置、プロセッサ、及び動作履歴記録方法 | |
| JP4294568B2 (ja) | ディスクアレイ装置及びその制御方法 | |
| KR0121442B1 (ko) | 멀티프로세서 시스템에서 캐쉬부 오류검출 및 그 처리장치와 방법 | |
| JP5907105B2 (ja) | ストレージ装置、方法、及び、プログラム。 | |
| JP6389499B2 (ja) | 誤り訂正前に不揮発性固体装置からデータを送信するシステムおよび方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160405 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20161227 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170207 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170407 |
|
| 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: 20170829 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170911 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 6217192 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |