JP2011081683A - Control device and method for controlling the same - Google Patents

Control device and method for controlling the same Download PDF

Info

Publication number
JP2011081683A
JP2011081683A JP2009234724A JP2009234724A JP2011081683A JP 2011081683 A JP2011081683 A JP 2011081683A JP 2009234724 A JP2009234724 A JP 2009234724A JP 2009234724 A JP2009234724 A JP 2009234724A JP 2011081683 A JP2011081683 A JP 2011081683A
Authority
JP
Japan
Prior art keywords
hdd
address
storage device
partition
new
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.)
Withdrawn
Application number
JP2009234724A
Other languages
Japanese (ja)
Inventor
Ritsu Baba
立 馬塲
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.)
Canon Inc
Original Assignee
Canon 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 Canon Inc filed Critical Canon Inc
Priority to JP2009234724A priority Critical patent/JP2011081683A/en
Publication of JP2011081683A publication Critical patent/JP2011081683A/en
Withdrawn legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To appropriately access a plurality of partition areas of a new storage device in making an exchange of a storage device. <P>SOLUTION: A computer system has an HC 200 and a disk array device 100 for controlling accesses to HDDs 300, 301 in accordance with a request from the HC 200. The computer system controls a plurality of pieces of format information respectively corresponding to plural kinds of storage capacity as information showing the starting addresses of a plurality of partition areas of the HC, and chooses format information corresponding to a storage capacity of a new HDD from the plurality of pieces of controlled format information when any of the HDDs 300, 301 is replaced with the new HDD. An address calculation section 104 calculates an address in accessing a plurality of partitions of the new storage device on the basis of the chosen format information. A RAID control section 102 controls access to the new HDD on the basis of the calculated address. <P>COPYRIGHT: (C)2011,JPO&INPIT

Description

本発明は、制御装置及び制御装置の制御方法に関する。   The present invention relates to a control device and a control method of the control device.

ハードディスク(以下、HDD(Hard Disk Drive))等の記録装置の信頼性向上、高速化を実現する技術としてRAID(Redundant Arrays of Inexpensive Disks)がある。このRAIDは、ストライピング、パリティチェック、ECC(Error Check and Correct)、データとパリティ、ECCの分散書き込み等の機能を含む。また、採用している機能やその組み合わせの違いにより、RAID0〜RAID6等の様々な種類が存在する。   RAID (Redundant Arrays of Inexpensive Disks) is a technique for improving the reliability and speeding up of a recording device such as a hard disk (hereinafter referred to as HDD (Hard Disk Drive)). This RAID includes functions such as striping, parity check, ECC (Error Check and Correct), data and parity, and ECC distributed writing. There are various types such as RAID0 to RAID6 depending on the functions adopted and the combinations thereof.

例えば、RAID1は、ミラーリングとも呼ばれ、複数のHDDに同じデータを書き込む技術であり、一つのHDDに障害が起こっても、他のHDDに障害が無ければデータの消失を防ぐことができる。   For example, RAID1 is also called mirroring, and is a technique for writing the same data to a plurality of HDDs. Even if a failure occurs in one HDD, data loss can be prevented if there is no failure in another HDD.

ここで、複数の同容量のHDDでRAID1を構築している状態を考える。一つのHDDに障害が起きた場合、この障害が起きたHDDを、障害発生前の容量よりも大きな容量のHDDに交換し、交換されなかったHDDのデータを複製するリビルド処理を実行したとする。しかし、交換した大きな容量のHDDのRAID1としての使用領域は、障害発生前と同様の容量のみであった。また、リビルド処理の後に、例えもう一方の小さい容量のHDDを大きな容量のHDDと交換して、リビルド処理を実行したとしても、上記と同様にRAID1としての使用領域は小さな容量のHDDと同様の領域のみとなる。即ち、RAIDの再構築及びオペレーティングシステム(OS)の再インストールを伴わない限り、リビルドのみでのRAID1の使用領域は変わらないという問題があった。   Here, consider a state in which RAID 1 is constructed with a plurality of HDDs having the same capacity. When a failure occurs in one HDD, the failed HDD is replaced with an HDD with a capacity larger than the capacity before the failure, and a rebuild process is executed to replicate the data in the HDD that was not replaced. . However, the used area of the replaced large capacity HDD as RAID 1 is only the same capacity as before the occurrence of the failure. Further, even if the other smaller capacity HDD is replaced with a larger capacity HDD and the rebuild process is executed after the rebuild process, the used area as RAID 1 is the same as that of the smaller capacity HDD. Only area. That is, there is a problem in that the area used for RAID 1 only by rebuilding does not change unless RAID rebuilding and operating system (OS) reinstallation are involved.

特許文献1には、上記のような、いわゆる余ったHDDの容量を有効に利用する提案がなされている。また、特許文献2には、アレイを構成する全てのHDDの容量が拡張された場合において、RAIDの再構築及びOSの再インストールを行わなくてもRAIDアレイの容量拡張を実現する提案がなされている。   Japanese Patent Application Laid-Open No. 2004-133620 proposes to effectively use the so-called surplus HDD capacity as described above. Further, Patent Document 2 proposes to realize capacity expansion of a RAID array without performing RAID reconstruction and OS re-installation when the capacity of all HDDs constituting the array is expanded. Yes.

特開平11−126137号公報JP-A-11-126137 特開2006−178823号公報JP 2006-178823 A

しかし、特許文献1の技術を用いたとしても、RAIDアレイ装置自体の容量は最初にRAIDアレイを組んだときの容量で動作してしまうため、リビルド処理の対象となるHDDの領域は、最初にRAIDアレイを組んだときの容量しかRAID1としての使用領域とならない。   However, even if the technique of Patent Document 1 is used, the capacity of the RAID array device itself operates with the capacity when the RAID array is first assembled. Only the capacity when the RAID array is assembled is used as the RAID1.

また、特許文献2では、HDDに保持されている連続するパーティション領域を拡張する構成が含まれていないため、拡張可能なパーティションは限定され、連続する全てのパーティション領域を自由に拡張することはできない。   Further, since Patent Document 2 does not include a configuration for extending a continuous partition area held in the HDD, the extendable partitions are limited, and it is not possible to freely extend all the continuous partition areas. .

本発明は、上記の問題点を解決するためになされたものである。本発明の目的は、複数の記憶装置に含まれるいずれかの記憶装置が新たな記憶装置に交換された場合に、新たな記憶装置の記憶容量に対応するフォーマット情報に従って、新たな記憶装置における複数のパーティション領域にアクセスする制御装置及びその制御方法を提供することである。   The present invention has been made to solve the above problems. An object of the present invention is to provide a plurality of storage devices in a new storage device according to format information corresponding to the storage capacity of the new storage device when any storage device included in the plurality of storage devices is replaced with a new storage device. It is providing the control apparatus which accesses the partition area | region, and its control method.

本発明は、情報処理装置及び複数の記憶装置と接続可能であり、前記情報処理装置からの要求に応じて前記複数の記憶装置へのアクセスを制御する制御装置であって、前記制御装置に接続される前記記憶装置における複数のパーティション領域の開始アドレスを示す情報として、複数種類の記憶容量の各々に対応する複数のフォーマット情報を管理する管理手段と、前記複数の記憶装置に含まれる何れかの記憶装置が新たな記憶装置に交換された場合に、前記新たな記憶装置の記憶容量に対応するフォーマット情報を前記管理手段により管理される複数のフォーマット情報の中から選択する選択手段と、前記新たな記憶装置の複数のパーティションへアクセスする際のアドレスを、前記選択手段により選択されたフォーマット情報に基づいて算出するアドレス算出手段と、前記アドレス算出手段により算出されたアドレスに基づいて前記新たな記憶装置へのアクセスを制御する制御手段とを有することを特徴とする。   The present invention is a control device that can be connected to an information processing device and a plurality of storage devices, and controls access to the plurality of storage devices in response to a request from the information processing device, and is connected to the control device Management means for managing a plurality of format information corresponding to each of a plurality of types of storage capacities as information indicating start addresses of a plurality of partition areas in the storage device, and any one of the plurality of storage devices Selecting means for selecting format information corresponding to the storage capacity of the new storage device from a plurality of format information managed by the management means when the storage device is replaced with a new storage device; An address for accessing a plurality of partitions in a storage device is based on the format information selected by the selection means An address calculation means for output, and having a control means for the controlling the access to the new storage device based on the address calculated by the address calculation unit.

本発明によれば、複数の記憶装置に含まれるいずれかの記憶装置が新たな記憶装置に交換された場合に、新たな記憶装置の記憶容量に対応するフォーマット情報に従って、新たな記憶装置における複数のパーティション領域にアクセスする制御装置及びその制御方法を提供することが可能となる。   According to the present invention, when any storage device included in a plurality of storage devices is replaced with a new storage device, the plurality of storage devices in the new storage device are in accordance with the format information corresponding to the storage capacity of the new storage device. It is possible to provide a control apparatus and a control method for accessing the partition area.

ディスクアレイ装置を含むコンピュータシステムの構成図である。1 is a configuration diagram of a computer system including a disk array device. ホストコンピュータ200の処理を示すフローチャートである。3 is a flowchart showing processing of a host computer 200. ディスクアレイ装置100の基本処理を示すフローチャートである。3 is a flowchart showing basic processing of the disk array device 100. 新HDD接続処理を示すフローチャートである。It is a flowchart which shows a new HDD connection process. 制御コマンドのフォーマットを示す図である。It is a figure which shows the format of a control command. ディスクアレイ装置100のフォーマット情報の構成を示す図である。3 is a diagram showing a configuration of format information of the disk array device 100. FIG. フォーマット管理テーブルの構成を示す図である。It is a figure which shows the structure of a format management table. RAID1ディスクアレイ状態1を示す図である。FIG. 3 is a diagram showing a RAID 1 disk array state 1; RAID1ディスクアレイ状態2を示す図である。It is a figure which shows RAID1 disk array state 2. FIG. RAID1ディスクアレイ状態3を示す図である。FIG. 3 is a diagram showing a RAID 1 disk array state 3; RAID5ディスクアレイ状態を示す図である。It is a figure which shows a RAID5 disk array state.

以下、本発明を実施するための形態について図面を用いて説明する。   Hereinafter, embodiments for carrying out the present invention will be described with reference to the drawings.

図1は、本発明の実施例1に係る制御装置を適用したディスクアレイ装置を含むコンピュータシステムの構成を示す図である。図1において、100はディスクアレイ装置、200は情報処理装置としてのホストコンピュータ(以下、HC)、300及び301は記憶装置であるハードディスク(HDD)である。HC200は、ディスクアレイ装置100の上位装置で、具体的には、パーソナルコンピュータ等の本体や、複合機(MFP)等の画像処理装置のコントローラ部等に対応し、CPU、ROM、RAM、各種インタフェース等を有する。   FIG. 1 is a diagram illustrating a configuration of a computer system including a disk array device to which a control device according to a first embodiment of the invention is applied. In FIG. 1, 100 is a disk array device, 200 is a host computer (hereinafter referred to as HC) as an information processing device, and 300 and 301 are hard disks (HDD) as storage devices. The HC 200 is a host device of the disk array device 100. Specifically, the HC 200 corresponds to a main body such as a personal computer or a controller unit of an image processing apparatus such as a multifunction peripheral (MFP), and has a CPU, ROM, RAM, and various interfaces. Etc.

HC200は、HDD300,301に対して、ディスクアレイ装置100を介して書き込み及び読み出しを行う。このように、ディスクアレイ装置100は、上位装置であるHC200及び複数の記憶装置(HDD,301)と接続可能である。なお、本発明は、記憶装置をHDDに限定するものではなく、他の記憶装置、例えば、フラッシュメモリ等の半導体を使用した記憶装置等でも同様の結果を得ることが出来る。また、ディスクアレイ装置100に接続される記憶装置の台数も2台に限定されるものではなく、3台以上接続されていてもよい。   The HC 200 writes to and reads from the HDDs 300 and 301 via the disk array device 100. As described above, the disk array device 100 can be connected to the HC 200 that is a host device and a plurality of storage devices (HDD, 301). In the present invention, the storage device is not limited to the HDD, and the same result can be obtained with another storage device, for example, a storage device using a semiconductor such as a flash memory. Further, the number of storage devices connected to the disk array device 100 is not limited to two, and three or more storage devices may be connected.

HC200とディスクアレイ装置100、ディスクアレイ装置100とHDD300,301は、それぞれシリアルATAインタフェース(SATA I/F)400により接続されている。なお、本実施例では、HC200、ディスクアレイ装置100、及び、HDD300,301の接続をシリアルATAインタフェースに限定するものではない。他のインタフェース、例えば、SAS(Serial Attached SCSI)インタフェース等でも同様の結果を得ることが出来る。   The HC 200 and the disk array device 100, and the disk array device 100 and the HDDs 300 and 301 are connected by a serial ATA interface (SATA I / F) 400, respectively. In this embodiment, the connection of the HC 200, the disk array device 100, and the HDDs 300 and 301 is not limited to the serial ATA interface. Similar results can be obtained with other interfaces such as a SAS (Serial Attached SCSI) interface.

ディスクアレイ装置100において、デバイス制御部101は、HC200からシリアルATAインタフェース900を介して受信する書き込み要求及び読み出し要求に従い、RAID制御部102に対して指示を行う。   In the disk array device 100, the device control unit 101 instructs the RAID control unit 102 in accordance with a write request and a read request received from the HC 200 via the serial ATA interface 900.

RAID制御部102は、デバイス制御部101からの指示を受けて、RAIDと呼ばれる制御(RAID制御)を行う。このRAID制御とは、背景技術で示したように、1台のHDDが故障した場合でも故障したHDDに記憶されていたデータを復元可能な技術である。RAID制御部102は、RAID制御を実行する際、マスターとなるHDD(マスターHDD)のID及びマスターHDDのアクセスLBAを、フォーマット管理部103に送信する。なお、フォーマット管理部103は、HDD300内及びHDD301内の連続するパーティション領域の管理情報を示すフォーマット情報(後述する図6に示す)を記憶管理している。また、LBAは、論理ブロックアドレス(Logical Block Addressing)を示す。さらに、マスターHDDのアクセスLBAは、HC200からのアクセス要求(例えば、書込要求、読出要求)等から抽出される。   In response to an instruction from the device control unit 101, the RAID control unit 102 performs a control called RAID (RAID control). The RAID control is a technology that can restore data stored in a failed HDD even when one HDD fails, as shown in the background art. When executing RAID control, the RAID control unit 102 transmits the ID of the master HDD (master HDD) and the access LBA of the master HDD to the format management unit 103. Note that the format management unit 103 stores and manages format information (shown in FIG. 6 to be described later) indicating management information of continuous partition areas in the HDD 300 and the HDD 301. LBA indicates a logical block address. Further, the access LBA of the master HDD is extracted from an access request (for example, a write request, a read request) from the HC 200 or the like.

フォーマット管理部103は、RAID制御部102から受信した情報からマスターHDD及びバックアップとなるHDD(バックアップHDD)におけるアクセスの対象となるパーティションの開始LBA(アクセスパーティション開始LBA)を算出する。次に、フォーマット管理部103は、マスターHDDのアクセスLBA、マスターHDD及びバックアップHDDのアクセスパーティション開始LBAをアドレス算出部104に送信する。   The format management unit 103 calculates the start LBA (access partition start LBA) of the partition to be accessed in the master HDD and the backup HDD (backup HDD) from the information received from the RAID control unit 102. Next, the format management unit 103 transmits the access LBA of the master HDD and the access partition start LBA of the master HDD and the backup HDD to the address calculation unit 104.

アドレス算出部104は、フォーマット管理部103から受信した情報からバックアップHDDのアクセスすべきアドレス(アクセスLBA)を算出し、RAID制御部102に送信する。なお、ここでは、フォーマット管理部103が、マスターHDD及びバックアップHDDにおけるアクセスパーティション開始LBAを算出し、アドレス算出部104が、バックアップHDDのアクセスLBAを算出する構成を説明した。しかし、フォーマット管理部103は、フォーマット情報を記憶管理するのみとしてもよい。そして、アドレス算出部104が、フォーマット管理部103で管理されるフォーマット情報に基づきマスターHDD及びバックアップHDDにおけるアクセスパーティション開始LBAを算出し、バックアップHDDのアクセスLBAを算出してもよい。   The address calculation unit 104 calculates an address (access LBA) to be accessed by the backup HDD from the information received from the format management unit 103 and transmits it to the RAID control unit 102. Here, the configuration has been described in which the format management unit 103 calculates the access partition start LBA in the master HDD and the backup HDD, and the address calculation unit 104 calculates the access LBA of the backup HDD. However, the format management unit 103 may only store and manage format information. Then, the address calculation unit 104 may calculate the access partition start LBA in the master HDD and the backup HDD based on the format information managed by the format management unit 103, and may calculate the access LBA of the backup HDD.

次に、RAID制御部102は、マスターHDDのアクセスLBAと、アドレス算出部104から得たバックアップHDDのアクセスLBAを用いて、デバイス制御部101からの指示に対応する処理をホスト制御部105に指示する。ホスト制御部105は、RAID制御部102からの指示に従い、シリアルATAインタフェース900を介してHDD300,301に書き込み要求及び読み出し要求を行う。   Next, the RAID control unit 102 instructs the host control unit 105 to perform processing corresponding to the instruction from the device control unit 101 using the access LBA of the master HDD and the access LBA of the backup HDD obtained from the address calculation unit 104. To do. The host control unit 105 makes a write request and a read request to the HDDs 300 and 301 via the serial ATA interface 900 in accordance with an instruction from the RAID control unit 102.

HDD300,301は、ホスト制御部105からの書き込み要求及び読み出し要求に従い、受信したデータの磁気ディスク(図示せず)への書込み及び磁気ディスクからのデータの読み出しを行う。なお、RAID制御部102は、ホスト制御部105のいずれのチャネルに接続されたHDDがマスターであるかの情報等を保持する。   The HDDs 300 and 301 write received data to a magnetic disk (not shown) and read data from the magnetic disk in accordance with a write request and a read request from the host control unit 105. The RAID control unit 102 holds information indicating which HDD connected to which channel of the host control unit 105 is a master.

状態保持部106は、ディスクアレイ装置100の電源停止前の状態を保持する。状態保持部106が保持する状態には、接続されているHDDの種類、個数、内部ブロックであるデバイス制御部101、RAID制御部102、フォーマット管理部103、アドレス算出部104、ホスト制御部105の初期設定値等が含まれる。また、状態保持部106は、RAID制御状態(RAID制御の有効/無効の設定状態)も保持する。なお、RAID制御状態は、ユーザの指示によりHC200から設定されるものである。また、リビルド処理中に電源が停止された場合、状態保持部106は、リビルド処理の処理状態(何%終了)等の情報も保持する。なお、状態保持部106は、FLASH ROMやボタン型電池でデータが保持されるSRAM等が使用される。   The state holding unit 106 holds the state of the disk array device 100 before the power is stopped. The status held by the status holding unit 106 includes the type and number of connected HDDs, the device control unit 101 that is an internal block, the RAID control unit 102, the format management unit 103, the address calculation unit 104, and the host control unit 105. Initial setting values are included. The state holding unit 106 also holds a RAID control state (a RAID control valid / invalid setting state). The RAID control state is set from the HC 200 according to a user instruction. In addition, when the power is stopped during the rebuild process, the state holding unit 106 holds information such as the process state of the rebuild process (how many% end). As the state holding unit 106, a flash ROM, an SRAM in which data is held by a button type battery, or the like is used.

図2は、本発明の実施例1に係るHC200の処理を示すフローチャートである。このフローチャートに示す処理は、HC200のCPUがROM又はHDD300,301に記録されたプログラムをRAMにロードして実行することにより実現されるものである。   FIG. 2 is a flowchart showing processing of the HC 200 according to the first embodiment of the present invention. The processing shown in this flowchart is realized by the CPU of the HC 200 loading a program recorded in the ROM or HDD 300, 301 into the RAM and executing it.

HC200は、電源が投入されるとHC200自身の初期化処理を実行する(S100)。S100の初期化処理には、HC内に実装されるメモリインタフェースの初期化、シリアルATAインタフェースの初期化、CPUの初期化、HCの起動処理等が含まれる。なお、HCの起動処理には、マスターHDD(例えばHDD300)からOSをメモリにロードして、OSを起動する動作も含まれる。また、以下のS101〜S107は、OS上で動作する、ディスクアレイ装置100のデバイスドライバの動作に対応する。   The HC 200 executes initialization processing of the HC 200 itself when the power is turned on (S100). The initialization processing in S100 includes initialization of a memory interface mounted in the HC, initialization of the serial ATA interface, initialization of the CPU, startup processing of the HC, and the like. The HC activation process includes an operation of loading an OS from a master HDD (for example, HDD 300) into a memory and activating the OS. Further, S101 to S107 below correspond to the operation of the device driver of the disk array device 100 operating on the OS.

次に、HC200のCPUは、HDDフォーマットテーブルを用意する(RAM内に読み込む)(S101)。なお、HDDフォーマットテーブルは、ディスクアレイ装置100のデバイスドライバに含まれるものとする。即ち、HDDフォーマットテーブルはHDDに保持されるが、マスター/バックアップHDDという区別はない。HDDフォーマットテーブルは、例えば、ディスクアレイ装置100にマスターHDDのみ接続されている場合はマスターHDDに保持され、マスターHDD/バックアップHDD共に接続されている場合はマスター/バックアップHDDの両方に保持されている。   Next, the CPU of the HC 200 prepares an HDD format table (reads it into the RAM) (S101). Note that the HDD format table is included in the device driver of the disk array device 100. That is, although the HDD format table is held in the HDD, there is no distinction between master / backup HDDs. For example, the HDD format table is held in the master HDD when only the master HDD is connected to the disk array device 100, and is held in both the master / backup HDD when both the master HDD / backup HDD are connected. .

また、ここで読み出すHDDフォーマットテーブルには、ディスクアレイ装置100に接続されるHDDにおける複数のパーティション領域の開始アドレスを示す情報として、予め、想定されているHDDの複数種類の記憶容量毎に用意された複数のフォーマット情報が記述管理されている。例えば、80,160,250,500,1000[GByte]の記憶容量を持つHDDの存在が想定されるとすると、それぞれに対するパーティションの管理情報(例えば、それぞれ図6に示すような情報)が記述されている。即ち、実際に接続されていない容量のHDDについてもフォーマットテーブル内にパーティションの管理情報が存在することになる。なお、HDDフォーマットテーブルは、ディスクアレイ装置100のデバイスドライバをバージョンアップすること等により更新可能である。   Also, the HDD format table read here is prepared in advance as information indicating the start addresses of a plurality of partition areas in the HDD connected to the disk array device 100 for each of a plurality of types of storage capacities of the assumed HDDs. A plurality of format information is described and managed. For example, if it is assumed that there is an HDD having a storage capacity of 80, 160, 250, 500, 1000 [GByte], partition management information (for example, information as shown in FIG. 6) is described for each HDD. ing. That is, partition management information exists in the format table even for HDDs with capacities that are not actually connected. The HDD format table can be updated by upgrading the device driver of the disk array device 100 or the like.

次に、HC200のCPUは、一連の初期化処理が終了すると割り込み受信待ち状態となる(S102でNo)。そして、HC200のCPUは、割り込みを受信したと判定すると(S102でYes)、その割り込みが新HDD接続割り込みであるか判定する(S103)。   Next, the CPU of the HC 200 enters an interrupt reception waiting state after a series of initialization processes is completed (No in S102). If the CPU of the HC 200 determines that an interrupt has been received (Yes in S102), it determines whether the interrupt is a new HDD connection interrupt (S103).

そして、新HDD接続割り込みであると判定した場合(S103でYes)、HC200のCPUは、ディスクアレイ装置100から新HDD情報(容量等)を取得する(S104)。   If it is determined that this is a new HDD connection interrupt (Yes in S103), the CPU of the HC 200 acquires new HDD information (capacity, etc.) from the disk array device 100 (S104).

HC200のCPUは、得られた新HDD情報(容量等)を元に上記S101で用意したHDDフォーマットテーブルを参照し、該HDDフォーマットテーブルから新HDD用のフォーマット情報を選択する(S105)。例えば、80,160,250,500,1000[GByte]のHDDに対するフォーマット情報の中から、新たに接続されたHDDの容量に対応するフォーマット情報を自動選択する。これにより、新たなHDDが接続されても、ユーザが手動でパーティション情報等を指定する手間を省くことができる。例えば、ミラーリングを行うためにはマスター/バックアップHDDのミラーリングされている個所の容量が等しく(正確にはマスターHDDの容量以上)なければならず、これを満たさない場合、ミラーリングの不具合が発生するが、これを防止できる。   The CPU of the HC 200 refers to the HDD format table prepared in S101 based on the obtained new HDD information (capacity, etc.), and selects format information for the new HDD from the HDD format table (S105). For example, the format information corresponding to the capacity of the newly connected HDD is automatically selected from the format information for the 80, 160, 250, 500, and 1000 [GB] HDDs. Thereby, even if a new HDD is connected, it is possible to save the user from manually specifying partition information and the like. For example, in order to perform mirroring, the capacity of the mirrored part of the master / backup HDD must be equal (exactly more than the capacity of the master HDD), and if this is not satisfied, a mirroring malfunction may occur. This can be prevented.

次に、HC200のCPUは、上記S105で選択した新HDD用フォーマット情報をディスクアレイ装置100に送信し(S106)、再び割り込み受信待ちとなる(S102)。   Next, the CPU of the HC 200 transmits the new HDD format information selected in S105 to the disk array device 100 (S106), and again waits for an interrupt (S102).

一方、HC200が受信した割り込みが新HDD接続割り込み以外であった場合(S103でNo)、HC200のCPUは、受信した割り込みに応じた処理を実施し(S107)、再び割り込み受信待ち(S102)となる。例えば、フォーマット管理情報更新完了の割り込みを受信した場合、HC200のCPUは、S107において、リビルド処理を実行するコマンドをディスクアレイ装置100に送信するようにしてもよい。そして、リビルド処理の実行中は、リビルド処理の状態(何%終了)等の情報を図示しない表示部に表示してもよい。また、この場合、リビルド処理を実行するか否かを指示する画面を図示しない表示部に表示してもよい。その場合、この画面からユーザがリビルド処理の実行を指示した場合、HC200のCPUは、ディスクアレイ装置100にリビルド処理を実行するコマンドを送信するものとする。   On the other hand, when the interrupt received by the HC 200 is other than the new HDD connection interrupt (No in S103), the CPU of the HC 200 performs processing according to the received interrupt (S107) and waits for an interrupt reception again (S102). Become. For example, when the format management information update completion interrupt is received, the CPU of the HC 200 may transmit a command for executing the rebuild process to the disk array device 100 in S107. During the rebuilding process, information such as the rebuilding process status (how many% completed) may be displayed on a display unit (not shown). In this case, a screen for instructing whether or not to execute the rebuild process may be displayed on a display unit (not shown). In this case, when the user instructs execution of the rebuild process from this screen, the CPU of the HC 200 transmits a command for executing the rebuild process to the disk array device 100.

なお、上記S105では、HC200のCPUが、HDDフォーマットテーブルから新HDD用のフォーマット情報を自動選択する構成を説明した。しかし、HC200のCPUが、図示しない表示部に新HDDが接続された旨と新HDDの情報(新HDDの容量等)を表示し、ユーザに新HDDのフォーマット情報を入力させるようにしてもよい。この場合、HC200は、入力される新HDDの各パーティションの容量がマスターHDDの対応する各パーティションの容量より小さい場合、エラーとなるように制御する。また、HC200は、入力される新HDDのパーティション数がマスターHDDのパーティション数より少ない場合も、エラーとなるように制御する。   In the above S105, the configuration in which the CPU of the HC 200 automatically selects the format information for the new HDD from the HDD format table has been described. However, the CPU of the HC 200 may display that the new HDD is connected to a display unit (not shown) and information on the new HDD (such as the capacity of the new HDD), and allow the user to input the format information of the new HDD. . In this case, the HC 200 performs control so that an error occurs when the capacity of each input partition of the new HDD is smaller than the capacity of each corresponding partition of the master HDD. Also, the HC 200 performs control so that an error occurs even when the number of partitions of the input new HDD is smaller than the number of partitions of the master HDD.

図3は、実施例1のディスクアレイ装置100の基本処理を示すフローチャートである。このフローチャートに示す処理においてディスクアレイ装置100を構成する各部が実行する各ステップは、ハードウェアにより実現されるものであってもよいし、ソフトウェアにより実現されるものであってもよい。ソフトウェアにより実現される場合、コンピュータ(プロセッサ)読み取り可能な記録媒体に格納されたプログラムをコンピュータ(プロセッサ)が読み出して実行する等により実現される。   FIG. 3 is a flowchart illustrating basic processing of the disk array device 100 according to the first embodiment. In the processing shown in this flowchart, each step executed by each unit constituting the disk array device 100 may be realized by hardware or may be realized by software. When realized by software, it is realized by a computer (processor) reading and executing a program stored in a computer (processor) -readable recording medium.

ディスクアレイ装置100は、電源が投入されると、ディスクアレイ装置100自身の初期化処理を実行する(S200)。この初期化処理(S200)には、デバイス制御部101の初期化、RAID制御部102の初期化、フォーマット管理部103の初期化、アドレス算出部104の初期化、ホスト制御部105の初期化が含まれる。また、この初期化処理には、一部、状態保持部106に保持された情報が使用される。   When the power is turned on, the disk array device 100 executes initialization processing of the disk array device 100 itself (S200). This initialization process (S200) includes initialization of the device control unit 101, initialization of the RAID control unit 102, initialization of the format management unit 103, initialization of the address calculation unit 104, and initialization of the host control unit 105. included. In addition, part of the information held in the state holding unit 106 is used for the initialization process.

次に、ディスクアレイ装置100は、ディスクアレイ装置100に接続されているHDDの情報を取得する(S201)。RAID制御部102は、状態保持部106に保持されているRAID制御状態(RAID制御の有効/無効の設定状態)を確認し、RAID制御が有効であるか否かを判定する(S202)。   Next, the disk array device 100 acquires information on HDDs connected to the disk array device 100 (S201). The RAID control unit 102 checks the RAID control state (RAID control valid / invalid setting state) held in the state holding unit 106, and determines whether or not RAID control is valid (S202).

そして、RAID制御が有効であると判定した場合(S202でYes)、RAID制御部102は、上記S201で取得されたHDD情報が状態保持部106に未登録か登録されているか確認する(S203)。   If it is determined that the RAID control is valid (Yes in S202), the RAID control unit 102 checks whether the HDD information acquired in S201 is unregistered or registered in the state holding unit 106 (S203). .

そして、上記S201で取得されたHDD情報が状態保持部106に未登録であると判定した場合(S203でYes)、RAID制御部102は、デバイス制御部101を介してHC200に対してエラーを通知するように制御する(S204)。そして、本フローチャートの処理を終了する。   If it is determined that the HDD information acquired in S201 has not been registered in the state holding unit 106 (Yes in S203), the RAID control unit 102 notifies the HC 200 of an error via the device control unit 101. Control is performed (S204). And the process of this flowchart is complete | finished.

一方、上記S201で取得されたHDD情報が状態保持部106に登録されていると判定した場合(S203でNo)、RAID制御部102は、RAID制御を実行する(S205)。そして、本フローチャートの処理を終了する。   On the other hand, when it is determined that the HDD information acquired in S201 is registered in the state holding unit 106 (No in S203), the RAID control unit 102 executes RAID control (S205). And the process of this flowchart is complete | finished.

また、状態保持部106の登録内容からRAID制御が無効であると判定した場合(S202でNo)、RAID制御部102は、状態保持部106に保持された有効なチャネルにHDDが接続されている(HDD接続OK)かを確認する(S206)。   Also, when it is determined from the registered contents of the state holding unit 106 that the RAID control is invalid (No in S202), the RAID control unit 102 has an HDD connected to a valid channel held in the state holding unit 106. It is confirmed whether (HDD connection is OK) (S206).

そして、状態保持部106に保持された有効なチャネルにHDDが接続されていないと判定した場合(S206でNo)、RAID制御部102は、デバイス制御部101を介してHC200にエラーを通知する(S204)。そして、本フローチャートの処理を終了する。   If it is determined that the HDD is not connected to a valid channel held in the status holding unit 106 (No in S206), the RAID control unit 102 notifies the HC 200 of an error via the device control unit 101 ( S204). And the process of this flowchart is complete | finished.

一方、状態保持部106に保持された有効なチャネルにHDDが接続されていると判定した場合(S206でYes)、RAID制御部102は、該当するHDDに対する制御を実行する(1HDD制御実行)(S207)。そして、本フローチャートの処理を終了する。   On the other hand, if it is determined that the HDD is connected to a valid channel held in the state holding unit 106 (Yes in S206), the RAID control unit 102 executes control for the corresponding HDD (1 HDD control execution) ( S207). And the process of this flowchart is complete | finished.

図4は、実施例1のディスクアレイ装置100の新HDD接続処理を示すフローチャートである。このフローチャートにおける処理は、コンピュータ読み取り可能な記録媒体に格納されたプログラムをコンピュータ(プロセッサ)が読み出して実行する等により実現される。   FIG. 4 is a flowchart illustrating the new HDD connection process of the disk array device 100 according to the first embodiment. The processing in this flowchart is realized by a computer (processor) reading and executing a program stored in a computer-readable recording medium.

RAID制御が無効化された状態のディスクアレイ装置100において、無効なチャネルに新HDDが接続されると、RAID制御部102は、ホスト制御部を介して新HDDの接続を検出する(S300)。なお、新HDDの接続を検出した場合、RAID制御部102は、デバイス制御部101を介して、新HDD接続割り込みを、HC200に送信する。これにより、HC200では、新HDD接続割り込みが受信される(図2のS102,S103)。   When a new HDD is connected to an invalid channel in the disk array device 100 in a state where RAID control is invalidated, the RAID control unit 102 detects the connection of the new HDD via the host control unit (S300). When the connection of the new HDD is detected, the RAID control unit 102 transmits a new HDD connection interrupt to the HC 200 via the device control unit 101. As a result, the HC 200 receives a new HDD connection interrupt (S102, S103 in FIG. 2).

次に、RAID制御部102は、ホスト制御部を介して新HDDの情報を取得する(容量取得等を行う)(S301)。さらに、RAID制御部102は、上記S301で取得した新HDDの情報をデバイス制御部101を介してHC200に対して送信する(S302)。これにより、HC200では、新HDDの情報が受信され、新HDDフォーマット情報が選択され、ディスクアレイ装置100に新HDD用フォーマット情報が送信される(図2のS104〜S106)。   Next, the RAID control unit 102 acquires information on the new HDD (capacity acquisition and the like) via the host control unit (S301). Furthermore, the RAID control unit 102 transmits the new HDD information acquired in S301 to the HC 200 via the device control unit 101 (S302). As a result, the HC 200 receives the new HDD information, selects the new HDD format information, and transmits the new HDD format information to the disk array device 100 (S104 to S106 in FIG. 2).

この後、RAID制御部102は、デバイス制御部101を介してHC200から新HDDのフォーマット情報を受信する(フォーマット情報取得を行う)(S303)。さらに、RAID制御部102は、上記S303で受信したフォーマット情報を元にフォーマット管理部103の情報を更新(S304)する。そして、本フローチャートの処理を終了する。なお、S304の処理が完了した際に、RAID制御部102は、デバイス制御部101を介して、新HDDに基づくフォーマット管理情報更新完了の割り込みを、HC200に送信するようにしてもよい。また、S304の処理が完了した際に、RAID制御部102が自発的にリビルド処理を開始するように構成してもよい。   Thereafter, the RAID control unit 102 receives the format information of the new HDD from the HC 200 via the device control unit 101 (performs format information acquisition) (S303). Further, the RAID control unit 102 updates the information in the format management unit 103 based on the format information received in S303 (S304). And the process of this flowchart is complete | finished. Note that when the processing of S304 is completed, the RAID control unit 102 may transmit an interrupt of completion of the format management information update based on the new HDD to the HC 200 via the device control unit 101. Alternatively, the RAID control unit 102 may be configured to spontaneously start the rebuild process when the process of S304 is completed.

なお、S301で取得された新HDDの容量が、マスターHDDの容量より小さい場合には、エラーとなり、その旨がHC200に通知され、処理が終了される。なお、HC200側では、上記エラーが通知されると、新たに接続されたHDDの容量がマスターHDDの容量より小さい旨のエラーメッセージを図示しない表示部に表示してもよい。   If the capacity of the new HDD acquired in S301 is smaller than the capacity of the master HDD, an error occurs, the HC 200 is notified to that effect, and the process ends. On the HC 200 side, when the error is notified, an error message indicating that the capacity of the newly connected HDD is smaller than the capacity of the master HDD may be displayed on a display unit (not shown).

なお、本実施例では、S302で新HDDの情報をHC200に送信し、HC200が、該新HDDの情報(容量)に対応するフォーマット情報(図2のS101で用意済み)をHC200内のRAMに読み込み済みのHDDフォーマットテーブルから選択してディスクアレイ装置100に送信し(図2のS103〜106)、S303でHC200から新HDDのフォーマット情報を受信する構成を説明した。しかし、ディスクアレイ装置100内にフォーマットテーブル記憶部を設け、RAID制御部102が上記HDDフォーマットテーブルから新HDDの容量に対応するフォーマット情報を選択する構成にしてもよい。例えば、ディスクアレイ装置100内の不図示のROMやディスクアレイ装置100に接続されるいずれかのHDDにHDDフォーマットテーブルを記憶させておき、RAID制御部102が、上記HDDフォーマットテーブルから新HDDの容量に対応するフォーマット情報を選択するようにしてもよい。なお、上記HDDフォーマットテーブルは、ディスクアレイ装置100内の図示しないROMに記録されるファームウェアをバージョンアップすること等により更新可能である。   In this embodiment, the information on the new HDD is transmitted to the HC 200 in S302, and the HC 200 stores the format information (prepared in S101 in FIG. 2) corresponding to the information (capacity) of the new HDD in the RAM in the HC 200. The configuration has been described in which the selected HDD format table is selected and transmitted to the disk array device 100 (S103 to S106 in FIG. 2) and the new HDD format information is received from the HC 200 in S303. However, a format table storage unit may be provided in the disk array device 100, and the RAID control unit 102 may select format information corresponding to the capacity of the new HDD from the HDD format table. For example, the HDD format table is stored in a ROM (not shown) in the disk array device 100 or any HDD connected to the disk array device 100, and the RAID controller 102 determines the capacity of the new HDD from the HDD format table. The format information corresponding to may be selected. The HDD format table can be updated by upgrading the firmware recorded in the ROM (not shown) in the disk array device 100.

また、本実施例では、S302で新HDDの情報をHC200に送信し、S303でHC200から新HDDのフォーマット情報を受信する構成を説明した。しかし、S302で接続されている全てのHDDの情報をHC200に送信し、S303でHC200から接続されている全てのHDDのフォーマット情報を受信するようにしてもよい。   In the present embodiment, the configuration in which the information on the new HDD is transmitted to the HC 200 in S302 and the format information on the new HDD is received from the HC 200 in S303 has been described. However, information on all HDDs connected in S302 may be transmitted to the HC 200, and format information of all HDDs connected from the HC 200 may be received in S303.

図5は、実施例1のディスクアレイ装置100の制御コマンドのフォーマットを示す図である。図5において、400はディスクアレイ装置100の制御コマンドである。実施例1のディスクアレイ装置100では、制御コマンド400としてATAで規定されているコマンドフォーマットを使用する。   FIG. 5 is a diagram illustrating a format of a control command of the disk array device 100 according to the first embodiment. In FIG. 5, reference numeral 400 denotes a control command for the disk array device 100. In the disk array device 100 of the first embodiment, a command format defined by ATA is used as the control command 400.

制御コマンド400において、Featuresフィールド401は、対応する制御IDが挿入される。実施例1のディスクアレイ装置100では、「0x00」にRAID機能のON/OFFを指示するRAID制御、「0x01」にフォーマット情報制御を割り当てる。   In the control command 400, a corresponding control ID is inserted into the Features field 401. In the disk array device 100 according to the first embodiment, “0x00” is assigned RAID control for instructing ON / OFF of the RAID function, and “0x01” is assigned format information control.

Commandフィールド402は、ATAで規定されているコマンドが挿入される。実施例1のディスクアレイ装置100では、ベンダ定義コマンドとして規定されている「0xFF」を使用する。C/I/Dフィールド403は、ソフトリセット制御、等の指示に使用される。   In the Command field 402, a command defined by ATA is inserted. In the disk array device 100 of the first embodiment, “0xFF” defined as the vendor definition command is used. The C / I / D field 403 is used for instructions such as soft reset control.

FIS Typeフィールド404は、Frame Information Structureと呼ばれるフレーム構造を指定する。実施例1のディスクアレイ装置100では、Host-to-Device Registerタイプとして規定されている「0x27」を使用する。   The FIS Type field 404 specifies a frame structure called Frame Information Structure. In the disk array device 100 of the first embodiment, “0x27” defined as the Host-to-Device Register type is used.

Dev/Headフィールド405は、HDDヘッド番号、マスター/スレーブデバイス、LBA/CHS切り替え指示等の情報が挿入される。Cyl Highフィールド406は、上位HDDシリンダ番号、等が挿入される。Cyl Lowフィールド407は、下位HDDシリンダ番号、等が挿入される。   In the Dev / Head field 405, information such as an HDD head number, a master / slave device, and an LBA / CHS switching instruction is inserted. In the Cyl High field 406, an upper HDD cylinder number and the like are inserted. In the Cyl Low field 407, a lower HDD cylinder number and the like are inserted.

Sec Numフィールド408は、HDDセクタ番号が挿入される。Features(exp)フィールド409は、拡張されたFeaturesフィールド401として使用される。Cyl High(exp)フィールド410は、137GByte容量を越えるHDDに対する上位LBAが割り当てられる。Cyl Low(exp)フィールド411は、137GByte容量を越えるHDDに対する下位LBAが割り当てられる。Sec Num(exp)フィールド412は、137GByte容量を越えるHDDセクタ番号が挿入される。Controlフィールド413は、HDD制御に使用される。   In the Sec Num field 408, the HDD sector number is inserted. The Features (exp) field 409 is used as the expanded Features field 401. In the Cyl High (exp) field 410, an upper LBA for an HDD exceeding the capacity of 137 GB is allocated. In the Cyl Low (exp) field 411, a lower LBA for an HDD exceeding the 137 GB capacity is assigned. In the Sec Num (exp) field 412, an HDD sector number exceeding 137 GB capacity is inserted. The Control field 413 is used for HDD control.

Sec Cnt(exp)フィールド414は、137GByte容量を越えるHDDに対する連続的に処理されるセクタ数が挿入される。Sec Cntフィールド415は、連続的に処理されるセクタ数が挿入される。Reservedフィールド416は、今後の機能拡張用に確保され、現在は未使用となっている。   In the Sec Cnt (exp) field 414, the number of sectors that are continuously processed for the HDD exceeding the 137 GB capacity is inserted. In the Sec Cnt field 415, the number of continuously processed sectors is inserted. The Reserved field 416 is reserved for future function expansion and is currently unused.

図6は、実施例1のディスクアレイ装置100のフォーマット情報の構成を示す図である。図6において、500はフォーマット情報である。フォーマット情報500は、512Byte領域を4Byte単位で区切り、先頭からアドレス501を割り振る。各4Byteのフィールドにおいて有効サイズ502と内容503を示す。   FIG. 6 is a diagram illustrating the format information format of the disk array device 100 according to the first embodiment. In FIG. 6, 500 is format information. In the format information 500, a 512-byte area is divided in units of 4 bytes, and an address 501 is allocated from the top. The effective size 502 and the content 503 are shown in each 4-byte field.

例えば、第1フィールド510には、ホスト制御部105のチャネルAに接続されるHDD300内のパーティション1に対する開始LBA(Low)が挿入される。第2フィールド511には、チャネルAに接続されるHDD300内のパーティション1に対する開始LBA(High)が挿入される。   For example, in the first field 510, the start LBA (Low) for the partition 1 in the HDD 300 connected to the channel A of the host control unit 105 is inserted. In the second field 511, the start LBA (High) for the partition 1 in the HDD 300 connected to the channel A is inserted.

第3フィールド512には、チャネルAに接続されるHDD300内のパーティション2に対する開始LBA(Low)が挿入される。第4フィールド513には、チャネルAに接続されるHDD300内のパーティション2に対する開始LBA(High)が挿入される。   In the third field 512, the start LBA (Low) for the partition 2 in the HDD 300 connected to the channel A is inserted. In the fourth field 513, the start LBA (High) for the partition 2 in the HDD 300 connected to the channel A is inserted.

第5フィールド520には、チャネルBに接続されるHDD301内のパーティション1に対する開始LBA(Low)が挿入される。第6フィールド521には、チャネルBに接続されるHDD301内のパーティション1に対する開始LBA(High)が挿入される。   In the fifth field 520, the start LBA (Low) for the partition 1 in the HDD 301 connected to the channel B is inserted. In the sixth field 521, the start LBA (High) for the partition 1 in the HDD 301 connected to the channel B is inserted.

第7フィールド522には、チャネルBに接続されるHDD301内のパーティション2に対する開始LBA(Low)が挿入される。第8フィールド523には、チャネルBに接続されるHDD301内のパーティション2に対する開始LBA(High)が挿入される。   In the seventh field 522, the start LBA (Low) for the partition 2 in the HDD 301 connected to the channel B is inserted. In the eighth field 523, the start LBA (High) for the partition 2 in the HDD 301 connected to the channel B is inserted.

実施例1のディスクアレイ装置100では、フォーマット情報500をATAで規定されているData FIS内のデータ領域に512Byteデータとして挿入する。フォーマット情報500の送信は、ATAの規定に従い、Featuresフィールド401に「0x01」が挿入された制御コマンドに続いて送信される。   In the disk array device 100 of the first embodiment, the format information 500 is inserted as 512-byte data into the data area in the Data FIS defined by ATA. The format information 500 is transmitted following the control command in which “0x01” is inserted in the Features field 401 in accordance with the ATA regulations.

図7は、本発明の実施例1に係るフォーマット管理部103で記憶管理されるフォーマット管理テーブルの構成を示す図である。図7において、600はフォーマット管理テーブルである。フォーマット管理テーブル600には、ディスクアレイ装置100に接続されるHDDのID601、HDD内パーティション番号602、及び各パーティションが開始されるLBA603が保持される。   FIG. 7 is a diagram showing a configuration of a format management table stored and managed by the format management unit 103 according to the first embodiment of the present invention. In FIG. 7, reference numeral 600 denotes a format management table. The format management table 600 holds an HDD ID 601 connected to the disk array device 100, an HDD partition number 602, and an LBA 603 from which each partition is started.

ここで、フォーマット管理テーブル600の更新方法について述べる。
HC200から送信されたフォーマット情報制御コマンド400及びフォーマット情報500をデバイス制御部101が受信し、デバイス制御部101は、受信したフォーマット情報500をRAID制御部102に内部バスを介して送信する。RAID制御部102は、受信したフォーマット情報をフォーマット管理部103に送信する。フォーマット管理部103は、受信した情報を元にフォーマット管理テーブルを作成する。なお、フォーマット管理テーブル600の更新は、HDD毎に個別に更新することも可能である。HDD毎に個別にフォーマット管理テーブル600内の情報を更新する場合は、或るHDDのフォーマット情報のみがHC200からディスクアレイ装置100に送信される。そして、RAID制御部102は、受信した前記HDDのフォーマット情報をフォーマット管理部103に送信する。そして、フォーマット管理部103が、前記HDDのフォーマット情報を元にフォーマット管理テーブル内の前記HDDに対応する部分を更新する。
Here, a method for updating the format management table 600 will be described.
The device control unit 101 receives the format information control command 400 and the format information 500 transmitted from the HC 200, and the device control unit 101 transmits the received format information 500 to the RAID control unit 102 via the internal bus. The RAID control unit 102 transmits the received format information to the format management unit 103. The format management unit 103 creates a format management table based on the received information. The format management table 600 can be updated individually for each HDD. When updating the information in the format management table 600 individually for each HDD, only the format information of a certain HDD is transmitted from the HC 200 to the disk array device 100. Then, the RAID control unit 102 transmits the received HDD format information to the format management unit 103. Then, the format management unit 103 updates the part corresponding to the HDD in the format management table based on the format information of the HDD.

以下、図8〜図10に示すRAID1ディスクアレイ状態例を用いて、ディスクアレイ装置100によるHDDアクセス処理を具体的に説明する。図8は、実施例1のディスクアレイ装置100のRAID1ディスクアレイ状態1を示す図である。
図8に示すように、ホスト制御部105のチャネルAに接続されたHDD300及びチャネルBに接続されたHDD301の容量を共に80GByteとする。チャネルAに接続されたHDD300のパーティション構造は、パーティション1を「0x0000_0000」から「0x04FF_FFFF」までの40GByteとする。また、HDD300のパーティション2を「0x0500_0000」から「0x09FF_FFFF」までの40GByteとする。また、チャネルBに接続されたHDD301のパーティション構造も同様とする。これらパーティション情報は、フォーマット管理部103により管理される。また、チャネルAに接続されたHDD300をマスターHDD、チャネルBに接続されたHDD301をバックアップHDDとする。
Hereinafter, the HDD access processing by the disk array device 100 will be described in detail with reference to RAID1 disk array state examples shown in FIGS. FIG. 8 is a diagram illustrating RAID 1 disk array state 1 of the disk array device 100 according to the first embodiment.
As shown in FIG. 8, the capacities of the HDD 300 connected to the channel A and the HDD 301 connected to the channel B of the host control unit 105 are both 80 GB. In the partition structure of the HDD 300 connected to the channel A, the partition 1 is 40 GB from “0x0000_0000” to “0x04FF_FFFF”. In addition, the partition 2 of the HDD 300 is set to 40 GB from “0x0500_0000” to “0x09FF_FFFF”. The same applies to the partition structure of the HDD 301 connected to the channel B. These pieces of partition information are managed by the format management unit 103. In addition, the HDD 300 connected to the channel A is a master HDD, and the HDD 301 connected to the channel B is a backup HDD.

ここで図8を例にして、HC200からの書き込み要求に対するディスクアレイ装置100によるHDDアクセス処理を具体的に説明する。
HC200からATAの規定に従って送信された書き込み要求をデバイス制御部101が受信すると、デバイス制御部101は、受信した書き込み要求の内容を、内部バスを介してRAID制御部102に送信する。RAID制御部102は、デバイス制御部101から受信した上記書き込み要求の内容からマスターHDD300のLBA(要求の対象となるLBA)を抽出し、該抽出されたLBA及びマスターHDDのIDをフォーマット管理部103に送信する。
Here, the HDD access processing by the disk array device 100 in response to a write request from the HC 200 will be specifically described with reference to FIG.
When the device control unit 101 receives a write request transmitted from the HC 200 according to the ATA regulations, the device control unit 101 transmits the content of the received write request to the RAID control unit 102 via the internal bus. The RAID control unit 102 extracts the LBA of the master HDD 300 (the LBA that is the target of the request) from the content of the write request received from the device control unit 101, and the format management unit 103 extracts the extracted LBA and master HDD ID. Send to.

書き込み要求の対象となるLBAが「0x0100_0000」である場合、マスターHDDのIDである「HDDA」及び「0x0100_0000」がRAID制御部102からフォーマット管理部103に送信される。   When the LBA that is the target of the write request is “0x0100_0000”, “HDDA” and “0x0100_0000” that are the IDs of the master HDD are transmitted from the RAID control unit 102 to the format management unit 103.

フォーマット管理部103は、受信したLBAとHDDのIDを用いてフォーマット管理テーブル600にアクセスし、書き込み要求の対象となるパーティション番号を抽出する。   The format management unit 103 accesses the format management table 600 using the received LBA and HDD ID, and extracts the partition number that is the target of the write request.

図8の例では、パーティション番号は「1」となる。フォーマット管理部103は、抽出されたマスターHDDのパーティション番号から該当するマスターHDDのパーティション開始LBA、バックアップHDDのパーティション開始LBAを抽出する。図8の例では、マスターHDDのパーティション番号「1」のパーティション開始LBAは「0x0000_0000」となり、バックアップHDDのパーティション番号「1」のパーティション開始LBAは「0x0000_0000」となる。   In the example of FIG. 8, the partition number is “1”. The format management unit 103 extracts the partition start LBA of the corresponding master HDD and the partition start LBA of the backup HDD from the extracted partition number of the master HDD. In the example of FIG. 8, the partition start LBA of the partition number “1” of the master HDD is “0x0000_0000”, and the partition start LBA of the partition number “1” of the backup HDD is “0x0000_0000”.

フォーマット管理部103は、RAID制御部102から受信したマスターHDDのLBA、マスターHDDのパーティション開始LBA及びバックアップHDDのパーティション開始LBAをアドレス算出部104に送信する。図8の例では、マスターHDDのLBAは「0x0100_0000」となり、マスターHDDのパーティション開始LBAは「0x0000_0000」となり、バックアップHDDのパーティション開始LBAは「0x0000_0000」となる。   The format management unit 103 transmits the master HDD LBA, the master HDD partition start LBA, and the backup HDD partition start LBA received from the RAID control unit 102 to the address calculation unit 104. In the example of FIG. 8, the LBA of the master HDD is “0x0100_0000”, the partition start LBA of the master HDD is “0x0000_0000”, and the partition start LBA of the backup HDD is “0x0000_0000”.

アドレス算出部104は、マスターHDDのアクセスLBA、マスターHDDのアクセスパーティション開始LBA、及び、バックアップHDDのアクセスパーティション開始LBAから、以下の(式1)に従い、バックアップHDDのアクセスLBAを算出する。なお、マスターHDDのアクセスLBAを「LBA_M」とする。また、マスターHDDのアクセスパーティション開始LBAを「P_LBA_M」とする。また、バックアップHDDのアクセスパーティション開始LBAを「P_LBA_B」とする。また、バックアップHDDのアクセスLBAを「LBA_B」とする。   The address calculation unit 104 calculates the access LBA of the backup HDD from the access LBA of the master HDD, the access partition start LBA of the master HDD, and the access partition start LBA of the backup HDD according to the following (Equation 1). Note that the access LBA of the master HDD is “LBA_M”. Also, the access partition start LBA of the master HDD is set to “P_LBA_M”. Further, the access partition start LBA of the backup HDD is assumed to be “P_LBA_B”. Further, the access LBA of the backup HDD is assumed to be “LBA_B”.

LBA_B=P_LBA_B+(LBA_M−P_LBA_M) ・・・(式1)
図8の例では、LBA_Bは「0x0100_0000」となる。アドレス算出部104は、算出したバックアップHDDのアクセスLBAをRAID制御部102に送信する。RAID制御部102は、デバイス制御部101から受信したマスターHDDのLBA及びアドレス算出部104から受信したバックアップHDDのLBAを用いてRAID制御し、それぞれのHDDに対する書き込み要求を生成し、ホスト制御部105に送信する。ホスト制御部105は、RAID制御部102から受信したマスターHDD及びバックアップHDDに対する書き込み要求をATAの規定に沿ったコマンドに変換する。ホスト制御部105は、変換した書き込み要求をそれぞれチャネルA及びチャネルBのシリアルATAインタフェース900を介してHDD300,301に送信する。
LBA_B = P_LBA_B + (LBA_M−P_LBA_M) (Formula 1)
In the example of FIG. 8, LBA_B is “0x0100_0000”. The address calculation unit 104 transmits the calculated access LBA of the backup HDD to the RAID control unit 102. The RAID control unit 102 performs RAID control using the LBA of the master HDD received from the device control unit 101 and the LBA of the backup HDD received from the address calculation unit 104, generates a write request for each HDD, and creates a host control unit 105. Send to. The host control unit 105 converts the write request for the master HDD and backup HDD received from the RAID control unit 102 into a command conforming to the ATA rules. The host control unit 105 transmits the converted write request to the HDDs 300 and 301 via the channel A and channel B serial ATA interfaces 900, respectively.

ここで図8を例にして、ディスクアレイ装置100におけるリビルド処理によるHDDアクセス処理を説明する。
実施例1のディスクアレイ装置100におけるリビルド処理実行は、HC200からのリビルド実行指示、HDDに対する書き込み処理エラーの検出、HDDに対する読み込み処理エラーの検出等で開始される。しかし、リビルド処理の開始条件(リビルド条件)は、これらに限定されるものではない。
Here, the HDD access process by the rebuild process in the disk array device 100 will be described using FIG. 8 as an example.
The rebuild process execution in the disk array device 100 according to the first embodiment is started by a rebuild execution instruction from the HC 200, a write process error detection for the HDD, a read process error detection for the HDD, or the like. However, the rebuild process start conditions (rebuild conditions) are not limited to these.

RAID制御部102は、リビルド条件が検出されるとリビルド処理を開始する。リビルド処理では、RAID制御部102は、マスターHDDの全パーティションに保持される全データを順次読み出してバックアップHDDの対応するパーティションに順次書き込む処理を行う。まず、RAID制御部102は、マスターHDDからデータを読み出し、該データを読み出したマスターHDDのアクセスLBAとマスターHDDのIDをフォーマット管理部103に送信する。これにより、アドレス算出部104により、バックアップHDDのアクセスLBAが算出され、RAID制御部102に送信される。そして、RAID制御部102は、上記マスターHDDから読み出したデータを、上記バックアップHDDのアクセスLBAに書き込む指示をホスト制御部105に送信する。以下、上述した書き込み要求における処理と同様に実行される。また、リビルド処理中に実行される読み込み処理においても、LBA算出手順は書き込み処理と同様である。   The RAID control unit 102 starts a rebuild process when a rebuild condition is detected. In the rebuild process, the RAID control unit 102 sequentially reads all data held in all partitions of the master HDD and sequentially writes them in the corresponding partitions of the backup HDD. First, the RAID control unit 102 reads data from the master HDD, and transmits the access LBA of the master HDD that has read the data and the ID of the master HDD to the format management unit 103. As a result, the address calculation unit 104 calculates the access LBA of the backup HDD and transmits it to the RAID control unit 102. Then, the RAID control unit 102 transmits to the host control unit 105 an instruction to write the data read from the master HDD into the access LBA of the backup HDD. Thereafter, the same processing as that in the above-described write request is executed. Also, in the read process executed during the rebuild process, the LBA calculation procedure is the same as the write process.

以上のようなリビルド処理の実行により、マスターHDDのパーティション1に保持されるデータA310は、バックアップHDDのパーティション1に保持されるデータA320としてコピーされる。また、マスターHDDのパーティション2に保持されるデータB311は、バックアップHDDのパーティション2に保持されるデータB321としてコピーされる。   By executing the rebuild process as described above, the data A310 held in the partition 1 of the master HDD is copied as the data A320 held in the partition 1 of the backup HDD. Data B311 held in partition 2 of the master HDD is copied as data B321 held in partition 2 of the backup HDD.

図9は、実施例1のディスクアレイ装置100のRAID1ディスクアレイ状態2を示す図である。
図9に示すように、ホスト制御部105のチャネルAに接続されたHDD300の容量を80GByte、チャネルBに接続されたHDD301の容量を160GByteとする。チャネルAに接続されたHDD300のパーティション構造は、パーティション1を「0x0000_0000」から「0x04FF_FFFF」までの40GByteとする。さらに、HDD300のパーティション2を「0x0500_0000」から「0x09FF_FFFF」までの40GByteとする。また、チャネルBに接続されたHDD301のパーティション構造は、パーティション1を「0x0000_0000」から「0x09FF_FFFF」までの80GByteとする。さらに、HDD301のパーティション2を「0x0A00_0000」から「0x14FF_FFFF」までの80GByteとする。これらパーティション情報は、フォーマット管理部103により管理される。また、チャネルAに接続されたHDD300をマスターHDD、チャネルBに接続されたHDD301をバックアップHDDとする。なお、HC200からの書き込み要求及びリビルドに対する処理は図8に示した状態の場合と同様である。
FIG. 9 is a diagram illustrating a RAID 1 disk array state 2 of the disk array device 100 according to the first embodiment.
As shown in FIG. 9, the capacity of the HDD 300 connected to the channel A of the host control unit 105 is 80 GB, and the capacity of the HDD 301 connected to the channel B is 160 GB. In the partition structure of the HDD 300 connected to the channel A, the partition 1 is 40 GB from “0x0000_0000” to “0x04FF_FFFF”. Further, the partition 2 of the HDD 300 is set to 40 GB from “0x0500_0000” to “0x09FF_FFFF”. In addition, the partition structure of the HDD 301 connected to the channel B is that partition 1 is 80 GB from “0x0000_0000” to “0x09FF_FFFF”. Furthermore, the partition 2 of the HDD 301 is set to 80 GB from “0x0A00_0000” to “0x14FF_FFFF”. These pieces of partition information are managed by the format management unit 103. In addition, the HDD 300 connected to the channel A is a master HDD, and the HDD 301 connected to the channel B is a backup HDD. The processing for the write request and rebuild from the HC 200 is the same as in the state shown in FIG.

ここで図9において、書き込み要求の対象となるマスターHDDのLBAが「0x0500_0100」である場合について、バックアップHDDのLBAの算出処理を説明する。
フォーマット管理部103のフォーマット管理テーブル600から、マスターHDDのアクセスパーティション開始LBAは「0x0500_0000」、バックアップHDDのアクセスパーティション開始LBAは「0x0A00_000」となる。このため、上記(式1)からバックアップHDDにおけるアクセスすべきLBAは「0x0A00_0100」となる。
Here, in FIG. 9, the LBA calculation processing of the backup HDD will be described in the case where the LBA of the master HDD that is the target of the write request is “0x0500 — 0100”.
From the format management table 600 of the format management unit 103, the access partition start LBA of the master HDD is “0x0500_0000”, and the access partition start LBA of the backup HDD is “0x0A00_000”. For this reason, the LBA to be accessed in the backup HDD is “0x0A00 — 0100” from (Equation 1).

図9に示す例では、リビルド処理の実行により、マスターHDDのパーティション1に保持されるデータA310は、バックアップHDDのパーティション1に保持されるデータA330としてコピーされる。また、マスターHDDのパーティション2に保持されるデータB311はバックアップHDDのパーティション2に保持されるデータB331としてコピーされる。   In the example illustrated in FIG. 9, the data A310 held in the partition 1 of the master HDD is copied as the data A330 held in the partition 1 of the backup HDD by executing the rebuild process. Data B311 held in partition 2 of the master HDD is copied as data B331 held in partition 2 of the backup HDD.

図10は、実施例1のディスクアレイ装置100のRAID1ディスクアレイ状態3を示す図である。
図10に示すように、ホスト制御部105のチャネルAに接続されたHDD300及びチャネルBに接続されたHDD301の容量を共に160GByteとする。チャネルAに接続されたHDD300のパーティション構造は、パーティション1を「0x0000_0000」から「0x09FF_FFFF」までの80GByteとする。さらに、HDD300のパーティション2を「0x0A00_0000」から「0x14FF_FFFF」までの80GByteとする。また、チャネルBに接続されたHDD301のパーティション構造も同様とする。これらパーティション情報はフォーマット管理部103により管理される。
FIG. 10 is a diagram showing a RAID 1 disk array state 3 of the disk array device 100 according to the first embodiment.
As shown in FIG. 10, the capacities of the HDD 300 connected to channel A and the HDD 301 connected to channel B of the host control unit 105 are both 160 GB. In the partition structure of the HDD 300 connected to the channel A, the partition 1 is set to 80 GB from “0x0000_0000” to “0x09FF_FFFF”. Furthermore, the partition 2 of the HDD 300 is set to 80 GB from “0x0A00_0000” to “0x14FF_FFFF”. The same applies to the partition structure of the HDD 301 connected to the channel B. These pieces of partition information are managed by the format management unit 103.

図10に示す例では、マスターHDDへのアクセスエラーによりマスターHDDとバックアップHDDが入れ替わった状態を想定し、チャネルBに接続されたHDD301をマスターHDD、チャネルAに接続されたHDD300をバックアップHDDとする。なお、HC200からの書き込み要求及びリビルドに対する処理フローは図8に示す状態の場合と同様である。   In the example shown in FIG. 10, assuming that the master HDD and the backup HDD are switched due to an access error to the master HDD, the HDD 301 connected to channel B is the master HDD, and the HDD 300 connected to channel A is the backup HDD. . Note that the processing flow for the write request and rebuild from the HC 200 is the same as in the state shown in FIG.

ここで図10において、書き込み要求の対象となるマスターHDDのLBAが「0x0A00_0100」である場合について、バックアップHDDのLBAの算出処理を説明する。フォーマット管理部103のフォーマット管理テーブル600から、マスターHDDのアクセスパーティション開始LBAは「0x0A00_0000」、バックアップHDDのアクセスパーティション開始LBAは「0x0A00_000」となる。このため、上記(式1)より、バックアップHDDにおけるアクセスすべきLBAは「0x0A00_0100」となる。   Here, in FIG. 10, the LBA calculation processing of the backup HDD will be described in the case where the LBA of the master HDD that is the target of the write request is “0x0A00 — 0100”. From the format management table 600 of the format management unit 103, the access partition start LBA of the master HDD is “0x0A00_0000”, and the access partition start LBA of the backup HDD is “0x0A00_000”. Therefore, from the above (Equation 1), the LBA to be accessed in the backup HDD is “0x0A00 — 0100”.

図10に示す例では、リビルド処理の実行によりマスターHDDのパーティション1に保持されるデータA330は、バックアップHDDのパーティション1に保持されるデータA340としてコピーされる。また、マスターHDDのパーティション2に保持されるデータB331は、バックアップHDDのパーティション2に保持されるデータB341としてコピーされる。   In the example shown in FIG. 10, data A330 held in the partition 1 of the master HDD by execution of the rebuild process is copied as data A340 held in the partition 1 of the backup HDD. Data B331 held in partition 2 of the master HDD is copied as data B341 held in partition 2 of the backup HDD.

実施例1のディスクアレイ装置100は、図8、図9、図10に記載した状態を順次経ることで、RAIDの再構築とOSの再インストール無しで、HDD内の連続するパーティション領域の拡張が可能となる。実際、図8〜図10で示した例では、HDD内の連続するパーティション領域が40GByteから80GByteに拡張されている。   The disk array device 100 according to the first embodiment sequentially expands the continuous partition area in the HDD without rebuilding the RAID and re-installing the OS by sequentially performing the states described in FIGS. 8, 9, and 10. It becomes possible. Actually, in the example shown in FIGS. 8 to 10, the continuous partition area in the HDD is expanded from 40 GBytes to 80 GBytes.

なお、図8に示した状態から図9の状態への移行は、HDD301を160GByteのHDDに交換してリビルド処理を行うことにより可能である。また、図9の状態から図10の状態への移行は、HDD300を160GByteのHDDに交換してリビルド処理を行うことにより可能である。   The transition from the state shown in FIG. 8 to the state shown in FIG. 9 can be performed by replacing the HDD 301 with a 160 GB HDD and performing a rebuild process. Further, the transition from the state of FIG. 9 to the state of FIG. 10 is possible by replacing the HDD 300 with a 160 GB HDD and performing a rebuild process.

以上示したように、実施例1では、RAID1制御において、パーティション管理情報からアクセスすべきHDDのアドレスを算出する構成を有する。このような構成により、RAIDの再構築とOSの再インストール無しにHDD内の連続するパーティション領域の変更を実現することができる。   As described above, the first embodiment has a configuration for calculating the address of the HDD to be accessed from the partition management information in the RAID1 control. With such a configuration, it is possible to change the partition area in the HDD without rebuilding the RAID and reinstalling the OS.

以下、実施例1の変形例(実施例2)について説明する。
上述した実施例1は、本発明をRAID1について適用する実施例であるが、本発明はこれに限らず、変形例として以下に示すようなRAID5に対しても適用することができる。なお、実施例2のディスクアレイ装置100の構成は、図1と同様であるので省略する。
Hereinafter, a modified example (Example 2) of Example 1 will be described.
The first embodiment described above is an embodiment in which the present invention is applied to RAID1, but the present invention is not limited to this and can be applied to RAID5 as shown below as a modification. The configuration of the disk array device 100 according to the second embodiment is the same as that shown in FIG.

図11は、実施例2のディスクアレイ装置100のRAID5ディスクアレイ状態を示す図である。
図11に示すように、ホスト制御部105のチャネルAに接続されたHDD300及びチャネルCに接続されたHDD302の容量を80GByte、チャネルBに接続されたHDD301の容量を160GByteとする。チャネルAに接続されたHDD300のパーティション構造は、パーティション1を「0x0000_0000」から「0x04FF_FFFF」までの40GByteとする。さらに、HDD300のパーティション2を「0x0500_0000」から「0x09FF_FFFF」までの40GByteとする。また、チャネルBに接続されたHDD301のパーティション構造は、パーティション1を「0x0000_0000」から「0x09FF_FFFF」までの80GByteとする。さらに、HDD301のパーティション2を「0x0A00_0000」から「0x14FF_FFFF」までの80GByteとする。また、チャネルCに接続されたHDD302のパーティション構造は、パーティション1を「0x0000_0000」から「0x04FF_FFFF」までの40GByteとする。さらに、HDD302のパーティション2を「0x0500_0000」から「0x09FF_FFFF」までの40GByteとする。これらパーティション情報はフォーマット管理部103により管理される。
FIG. 11 is a diagram illustrating a RAID 5 disk array state of the disk array device 100 according to the second embodiment.
As shown in FIG. 11, it is assumed that the capacity of the HDD 300 connected to the channel A and the HDD 302 connected to the channel C of the host control unit 105 is 80 GB, and the capacity of the HDD 301 connected to the channel B is 160 GB. In the partition structure of the HDD 300 connected to the channel A, the partition 1 is 40 GB from “0x0000_0000” to “0x04FF_FFFF”. Further, the partition 2 of the HDD 300 is set to 40 GB from “0x0500_0000” to “0x09FF_FFFF”. In addition, the partition structure of the HDD 301 connected to the channel B is that partition 1 is 80 GB from “0x0000_0000” to “0x09FF_FFFF”. Furthermore, the partition 2 of the HDD 301 is set to 80 GB from “0x0A00_0000” to “0x14FF_FFFF”. Further, the partition structure of the HDD 302 connected to the channel C is that partition 1 is 40 GB from “0x0000_0000” to “0x04FF_FFFF”. Furthermore, the partition 2 of the HDD 302 is set to 40 GB from “0x0500_0000” to “0x09FF_FFFF”. These pieces of partition information are managed by the format management unit 103.

RAID5では、ディスクアレイ装置100がHC200からの書き込み要求を受信すると、RAID制御部102は、例えばHDD300にデータを書き込む。さらに、RAID制御部102は、HDD300、及び、HDD301又はHDD301に書き込まれているデータからパリティを算出し、該算出したパリティをHDD301又はHDD302に書き込む処理を実行する。   In RAID 5, when the disk array device 100 receives a write request from the HC 200, the RAID control unit 102 writes data to the HDD 300, for example. Further, the RAID control unit 102 calculates a parity from the HDD 300 and data written in the HDD 301 or HDD 301, and executes a process of writing the calculated parity in the HDD 301 or HDD 302.

例えば、ディスクアレイ装置100がHC200からのデータAの書き込み要求を受信すると、RAID制御部102は、例えばHDD300にデータA350を書き込む。さらに、RAID制御部102は、HDD300、及び、HDD301に書き込まれているデータAからパリティAを算出し、該算出したパリティAをHDD302に書き込む。一方、ディスクアレイ装置100がHC200からのデータBの書き込み要求を受信すると、RAID制御部102は、例えばHDD300にデータB351を書き込む。さらに、RAID制御部102は、HDD300、及び、HDD302に書き込まれているデータBからパリティBを算出し、該算出したパリティBをHDD301に書き込む。   For example, when the disk array device 100 receives a data A write request from the HC 200, the RAID control unit 102 writes the data A 350 to the HDD 300, for example. Further, the RAID control unit 102 calculates a parity A from the data A written in the HDD 300 and the HDD 301, and writes the calculated parity A in the HDD 302. On the other hand, when the disk array device 100 receives a data B write request from the HC 200, the RAID control unit 102 writes data B 351 to the HDD 300, for example. Further, the RAID control unit 102 calculates the parity B from the data B written in the HDD 300 and the HDD 302, and writes the calculated parity B in the HDD 301.

このため、RAID制御部102は、HC200からの書き込み要求からHDD300のLBAを抽出し、抽出されたLBA及びHDD300のIDをフォーマット管理部103に送信する。フォーマット管理部103は、受信したLBAとHDDのIDを用いてデータの書き込み要求の対象となるHDD300、データの読み込み要求やパリティの書き込み要求の対象となるHDD301及びHDD302のパーティション開始LBAを抽出する。   For this reason, the RAID control unit 102 extracts the LBA of the HDD 300 from the write request from the HC 200 and transmits the extracted LBA and the ID of the HDD 300 to the format management unit 103. Using the received LBA and HDD ID, the format management unit 103 extracts the HDD 300 that is the target of the data write request, and the partition start LBAs of the HDD 301 and the HDD 302 that are the target of the data read request and the parity write request.

図11に示した例では、書き込み要求の対象となるHDD300のLBAが「0x0500_0100」である場合、各HDDのパーティション開始アドレスは次のようになる。HDD301のパーティション開始LBAが「0x0500_0000」、HDD301のパーティション開始LBAが「0x0A00_0000」、HDD302のパーティション開始LBAが「0x0500_0000」となる。   In the example shown in FIG. 11, when the LBA of the HDD 300 that is the target of the write request is “0x0500 — 0100”, the partition start address of each HDD is as follows. The partition start LBA of the HDD 301 is “0x0500_0000”, the partition start LBA of the HDD 301 is “0x0A00_0000”, and the partition start LBA of the HDD 302 is “0x0500_0000”.

アドレス算出部104は、フォーマット管理部103から各HDDのパーティション開始LBAとHDD300に対する書き込み要求の対象となるLBA(LAB_A)を受信する。そして、アドレス算出部104は、HDD301及びHDD302に対するアクセスすべきLBA(それぞれ、LAB_B及びLAB_C)を算出する。   The address calculation unit 104 receives the partition start LBA of each HDD and the LBA (LAB_A) that is the target of the write request to the HDD 300 from the format management unit 103. Then, the address calculation unit 104 calculates LBAs (LAB_B and LAB_C, respectively) to be accessed for the HDD 301 and the HDD 302.

算出式は、HDD300のアクセスLBA(LBA_A)、HDD301のアクセスパーティション開始LBA(P_LBA_B)、及びHDD302のアクセスパーティション開始LBA(P_PBA_C)から以下の(式2),(式3)となる。   The calculation formulas are the following (Formula 2) and (Formula 3) from the access LBA (LBA_A) of the HDD 300, the access partition start LBA (P_LBA_B) of the HDD 301, and the access partition start LBA (P_PBA_C) of the HDD 302.

LBA_B=P_LBA_B+(LBA_A−P_LBA_A) ・・・(式2)
LBA_C=P_LBA_C+(LBA_A−P_LBA_A) ・・・(式3)
図11に示した例では、LBA_Bは「0x0A00_0100」、LBA_Cは「0x0500_0100」となる。
LBA_B = P_LBA_B + (LBA_A−P_LBA_A) (Expression 2)
LBA_C = P_LBA_C + (LBA_A-P_LBA_A) (Expression 3)
In the example illustrated in FIG. 11, LBA_B is “0x0A00_0100”, and LBA_C is “0x0500_0100”.

アドレス算出部104は、算出したHDD301及びHDD302に対するアクセスLBAをRAID制御部102に送信する。RAID制御部102は、HDD300に対する書き込み要求及びHDD302に対する読み込み要求をホスト制御部105に送信する。   The address calculation unit 104 transmits the calculated access LBA for the HDD 301 and the HDD 302 to the RAID control unit 102. The RAID control unit 102 transmits a write request for the HDD 300 and a read request for the HDD 302 to the host control unit 105.

ホスト制御部105は、RAID制御部102から受信した書き込み要求及び読み込み要求をATAの規定に沿ったコマンドに変換し、それぞれHDD300及びHDD302に送信する。ホスト制御部105は、HDD302に対する読み込み要求を実行した後、HDD302から受信したデータをRAID制御部102に送信する。   The host control unit 105 converts the write request and read request received from the RAID control unit 102 into commands conforming to the ATA rules, and transmits them to the HDD 300 and the HDD 302, respectively. After executing a read request to the HDD 302, the host control unit 105 transmits data received from the HDD 302 to the RAID control unit 102.

RAID制御部102は、HDD300に書き込まれたデータとHDD302から読み込まれたデータを元にパリティを算出し、HDD301に対する書き込み要求をホスト制御部105に送信する。ホスト制御部105は、RAID制御部102から受信したHDD301に対する書き込み要求をATAの規定に沿ったコマンドに変換し、HDD301に送信する。   The RAID control unit 102 calculates a parity based on the data written in the HDD 300 and the data read from the HDD 302 and transmits a write request to the HDD 301 to the host control unit 105. The host control unit 105 converts the write request for the HDD 301 received from the RAID control unit 102 into a command conforming to the ATA rules, and transmits the command to the HDD 301.

次に、書き込み要求の対象となるHDD300のLBAが「0x0000_0100」である場合、について説明する。
書き込み要求の対象となるHDD300のLBAが「0x0000_0100」である場合、図11に示した例では、各HDDのパーティション開始アドレスは次のようになる。HDD301のパーティション開始LBAが「0x0000_0000」、HDD302のパーティション開始LBAが「0x0000_0000」となる。
Next, a case where the LBA of the HDD 300 that is the target of the write request is “0x0000 — 0100” will be described.
When the LBA of the HDD 300 that is the target of the write request is “0x0000 — 0100”, the partition start address of each HDD is as follows in the example shown in FIG. The partition start LBA of the HDD 301 is “0x0000_0000”, and the partition start LBA of the HDD 302 is “0x0000_0000”.

アドレス算出部104は、フォーマット管理部103から各HDDのパーティション開始LBAとHDD300に対する書き込み要求の対象となるLBA(LAB_A)を受信する。そして、アドレス算出部104は、HDD301及びHDD302に対するアクセスすべきLBA(それぞれ、LAB_B及びLAB_C)を算出する。図11に示した例では、LBA_Bは「0x0000_0100」、LBA_Cは「0x0000_0100」となる。   The address calculation unit 104 receives the partition start LBA of each HDD and the LBA (LAB_A) that is the target of the write request to the HDD 300 from the format management unit 103. Then, the address calculation unit 104 calculates LBAs (LAB_B and LAB_C, respectively) to be accessed for the HDD 301 and the HDD 302. In the example illustrated in FIG. 11, LBA_B is “0x0000_0100”, and LBA_C is “0x0000_0100”.

アドレス算出部104は、算出したHDD301及びHDD302に対するアクセスLBAをRAID制御部102に送信する。RAID制御部102は、HDD300に対する書き込み要求及びHDD301に対する読み込み要求をホスト制御部105に送信する。   The address calculation unit 104 transmits the calculated access LBA for the HDD 301 and the HDD 302 to the RAID control unit 102. The RAID control unit 102 transmits a write request for the HDD 300 and a read request for the HDD 301 to the host control unit 105.

ホスト制御部105は、RAID制御部102から受信した書き込み要求及び読み込み要求をATAの規定に沿ったコマンドに変換し、それぞれHDD300及びHDD301に送信する。ホスト制御部105は、HDD301に対する読み込み要求を実行した後、HDD301から受信したデータをRAID制御部102に送信する。   The host control unit 105 converts the write request and read request received from the RAID control unit 102 into commands conforming to the ATA rules and transmits them to the HDD 300 and the HDD 301, respectively. After executing a read request to the HDD 301, the host control unit 105 transmits data received from the HDD 301 to the RAID control unit 102.

RAID制御部102は、HDD300に書き込まれるデータとHDD301から読み込まれたデータを元にパリティを算出し、HDD302に対する書き込み要求をホスト制御部105に送信する。ホスト制御部105は、RAID制御部102から受信したHDD302に対する書き込み要求をATAの規定に沿ったコマンドに変換し、HDD302に送信する。   The RAID control unit 102 calculates a parity based on the data written to the HDD 300 and the data read from the HDD 301, and transmits a write request to the HDD 302 to the host control unit 105. The host control unit 105 converts the write request for the HDD 302 received from the RAID control unit 102 into a command conforming to the ATA rules, and transmits the command to the HDD 302.

以上示したように、実施例2では、RAID5制御において、各HDDのパーティション管理を行い、パーティション管理情報(フォーマット情報)を自由に変更可能とする。さらに、パーティション管理情報からアクセスすべきHDDのアドレスを算出する構成を有する。このような構成により、RAIDの再構築とOSの再インストール無しにHDD内の連続するパーティション領域の変更を実現することができる。   As described above, in the second embodiment, the partition management of each HDD is performed in RAID5 control, and the partition management information (format information) can be freely changed. Furthermore, it has a configuration for calculating the address of the HDD to be accessed from the partition management information. With such a configuration, it is possible to change the partition area in the HDD without rebuilding the RAID and reinstalling the OS.

なお、上記実施例1ではRAID1、上記実施例2ではRAID5に本発明を適用する場合について説明したが、他のRAIDレベルについても同様に本発明を適用可能なものがあり、このような構成も本発明に含まれるものである。
(その他の実施例)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
In the first embodiment, the case where the present invention is applied to RAID 1 and in the second embodiment described above is described as RAID 5. However, the present invention can be applied to other RAID levels as well, and such a configuration is also applicable. It is included in the present invention.
(Other examples)
The present invention can also be realized by executing the following processing. That is, software (program) that realizes the functions of the above-described embodiments is supplied to a system or apparatus via a network or various storage media, and a computer (or CPU, MPU, or the like) of the system or apparatus reads the program. It is a process to be executed.

ホストコンピュータ200を複合機(MFP)のコントローラ部とすることによって、本発明を複合機等の画像形成装置にも適用できる。そして、上記コントローラ部に接続されるディスクアレイ装置は、該ディスクアレイ装置に接続される複数の記憶装置のいずれかが新たな記憶装置に交換された場合に、新たな記憶装置の記憶容量に対応するフォーマット情報に従って、新たな記憶装置における複数のパーティション領域にアクセスする。   By using the host computer 200 as a controller unit of a multifunction peripheral (MFP), the present invention can be applied to an image forming apparatus such as a multifunction peripheral. The disk array device connected to the controller unit corresponds to the storage capacity of the new storage device when any of the plurality of storage devices connected to the disk array device is replaced with a new storage device. The plurality of partition areas in the new storage device are accessed according to the format information to be performed.

100 ディスクアレイ装置
101 デバイス制御部
102 RAID制御部
103 フォーマット制御部
104 アドレス算出部
105 ホスト制御部
106 状態保持部
200 ホストコンピュータ
300,301 HDD
DESCRIPTION OF SYMBOLS 100 Disk array apparatus 101 Device control part 102 RAID control part 103 Format control part 104 Address calculation part 105 Host control part 106 Status holding part 200 Host computer 300,301 HDD

Claims (4)

情報処理装置及び複数の記憶装置と接続可能であり、前記情報処理装置からの要求に応じて前記複数の記憶装置へのアクセスを制御する制御装置であって、
前記制御装置に接続される前記記憶装置における複数のパーティション領域の開始アドレスを示す情報として、複数種類の記憶容量の各々に対応する複数のフォーマット情報を管理する管理手段と、
前記複数の記憶装置に含まれる何れかの記憶装置が新たな記憶装置に交換された場合に、前記新たな記憶装置の記憶容量に対応するフォーマット情報を前記管理手段により管理される複数のフォーマット情報の中から選択する選択手段と、
前記新たな記憶装置の複数のパーティションへアクセスする際のアドレスを、前記選択手段により選択されたフォーマット情報に基づいて算出するアドレス算出手段と、
前記アドレス算出手段により算出されたアドレスに基づいて前記新たな記憶装置へのアクセスを制御する制御手段と、
を有することを特徴とする制御装置。
A control device that is connectable to an information processing device and a plurality of storage devices, and controls access to the plurality of storage devices in response to a request from the information processing device,
Management means for managing a plurality of format information corresponding to each of a plurality of types of storage capacities as information indicating start addresses of a plurality of partition areas in the storage device connected to the control device;
When any storage device included in the plurality of storage devices is replaced with a new storage device, the format information corresponding to the storage capacity of the new storage device is managed by the management means. A selection means for selecting from,
Address calculating means for calculating addresses for accessing a plurality of partitions of the new storage device based on the format information selected by the selecting means;
Control means for controlling access to the new storage device based on the address calculated by the address calculating means;
A control device comprising:
前記アドレス算出手段は、前記複数の記憶装置のいずれかの記憶装置のアドレスから、該いずれかの記憶装置のアドレスに対応する前記新たな記憶装置のアドレスを、前記いずれかの記憶装置のアドレスが属する前記いずれかの記憶装置のパーティションに対応する前記新たな記憶装置のパーティションに属するアドレスとして算出するものであり、
前記制御手段は、前記情報処理装置から受信したアクセス要求に含まれる前記いずれかの記憶装置のアドレスと、前記いずれかの記憶装置のアドレスから前記アドレス算出手段で算出される前記新たな記憶装置のアドレスとを用いて、前記新たな記憶装置へのアクセスを制御することを特徴とする請求項1に記載の制御装置。
The address calculating means calculates the address of the new storage device corresponding to the address of any one of the storage devices from the address of any one of the plurality of storage devices, and the address of any one of the storage devices is Calculating as an address belonging to the partition of the new storage device corresponding to the partition of any of the storage devices belonging to,
The control means includes the address of the storage device included in the access request received from the information processing device and the address of the new storage device calculated by the address calculation means from the address of the storage device. The control apparatus according to claim 1, wherein an access to the new storage device is controlled using an address.
前記制御手段は、接続される記憶装置のうちマスターとなる記憶装置の全パーティションに記憶される全データを順次読み出して前記新たな記憶装置の対応するパーティションに順次書き込むリビルド処理の実行が可能であり、
前記リビルド処理は、前記マスターとなる記憶装置からデータを読み出し、該読み出したデータを、前記データを読み出した前記マスターとなる記憶装置のアドレスから前記アドレス算出手段で算出される前記新たな記憶装置のアドレスに書き込む処理であることを特徴とする請求項1又は2に記載の制御装置。
The control means is capable of executing a rebuild process that sequentially reads all data stored in all partitions of the master storage device among the connected storage devices and sequentially writes the data to the corresponding partition of the new storage device. ,
The rebuild process reads data from the storage device serving as the master, and reads the read data from the address of the storage device serving as the master from which the data has been read by the address calculation unit. The control device according to claim 1, wherein the control device is a process of writing to an address.
情報処理装置及び複数の記憶装置と接続可能であり、前記複数の記憶装置における複数のパーティション領域の開始アドレスを示す情報として、複数種類の記憶容量の各々に対応する複数のフォーマット情報を管理する管理手段を備える制御装置の制御方法であって、
選択手段が、前記複数の記憶装置に含まれる何れかの記憶装置が新たな記憶装置に交換された場合に、前記新たな記憶装置の記憶容量に対応するフォーマット情報を前記管理手段により管理される複数のフォーマット情報の中から選択する選択ステップと、
アドレス算出手段が、前記新たな記憶装置の複数のパーティションへアクセスする際のアドレスを、前記選択ステップにて選択されたフォーマット情報に基づいて算出するアドレス算出ステップと、
制御手段が、前記アドレス算出ステップにより算出されたアドレスに基づいて前記新たな記憶装置へのアクセスを制御する制御ステップと、
を有することを特徴とする制御装置の制御方法。
Management that is connectable to an information processing device and a plurality of storage devices, and manages a plurality of format information corresponding to each of a plurality of types of storage capacities as information indicating start addresses of a plurality of partition areas in the plurality of storage devices A control method for a control device comprising means,
When any storage device included in the plurality of storage devices is replaced with a new storage device, the selection unit manages the format information corresponding to the storage capacity of the new storage device by the management unit. A selection step of selecting from a plurality of format information;
An address calculating step for calculating an address when the address calculating means accesses a plurality of partitions of the new storage device based on the format information selected in the selecting step;
A control step for controlling access to the new storage device based on the address calculated by the address calculating step;
A control method for a control device comprising:
JP2009234724A 2009-10-09 2009-10-09 Control device and method for controlling the same Withdrawn JP2011081683A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009234724A JP2011081683A (en) 2009-10-09 2009-10-09 Control device and method for controlling the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009234724A JP2011081683A (en) 2009-10-09 2009-10-09 Control device and method for controlling the same

Publications (1)

Publication Number Publication Date
JP2011081683A true JP2011081683A (en) 2011-04-21

Family

ID=44075658

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009234724A Withdrawn JP2011081683A (en) 2009-10-09 2009-10-09 Control device and method for controlling the same

Country Status (1)

Country Link
JP (1) JP2011081683A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013050755A (en) * 2011-08-30 2013-03-14 Sharp Corp Image processor

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013050755A (en) * 2011-08-30 2013-03-14 Sharp Corp Image processor

Similar Documents

Publication Publication Date Title
US7856526B2 (en) Storage apparatus and power-saving control method of storage apparatus
JP5721344B2 (en) System, system control method, and program
EP2399190B1 (en) Storage system and method for operating storage system
JP4869368B2 (en) Storage device and virtualization device
US7574577B2 (en) Storage system, storage extent release method and storage apparatus
US9317436B2 (en) Cache node processing
TWI531963B (en) Data storage systems and their specific instruction enforcement methods
JP6007332B2 (en) Storage system and data write method
JP2010049634A (en) Storage system, and data migration method in storage system
US20130212320A1 (en) Non-volatile memory controller processing new request before completing current operation, system including same, and method
JP2004213064A (en) Raid device and logic device expansion method therefor
JP5843010B2 (en) Storage control device, storage control method, and storage control program
JP2007156597A (en) Storage device
JP4884041B2 (en) Storage system for issuing optimum I / O command to automatically expandable volume and control method thereof
CN110300960B (en) Information system, management program, and program replacement method for information system
JP2002049511A (en) Allocation changing method for address and external storage subsystem using the same
JP2006318017A (en) Raid constitution conversion method, device and program, and disk array device using the same
JP5074676B2 (en) Device controller
WO2018051505A1 (en) Storage system
US7496724B2 (en) Load balancing in a mirrored storage system
US9170740B2 (en) System and method for providing implicit unmaps in thinly provisioned virtual tape library systems
JP2008299559A (en) Storage system and data transfer method for storage system
JP5910596B2 (en) Storage management system, storage management method, program, and information processing system
JP2011081683A (en) Control device and method for controlling the same
WO2016194162A1 (en) Computer system

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20130108