JP4667312B2 - External storage device access control system, and controller, host system or external storage device performing access control system - Google Patents

External storage device access control system, and controller, host system or external storage device performing access control system Download PDF

Info

Publication number
JP4667312B2
JP4667312B2 JP2006188151A JP2006188151A JP4667312B2 JP 4667312 B2 JP4667312 B2 JP 4667312B2 JP 2006188151 A JP2006188151 A JP 2006188151A JP 2006188151 A JP2006188151 A JP 2006188151A JP 4667312 B2 JP4667312 B2 JP 4667312B2
Authority
JP
Japan
Prior art keywords
storage device
external storage
controller
hdd
host system
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2006188151A
Other languages
Japanese (ja)
Other versions
JP2008015901A (en
Inventor
克己 吉田
義弘 中野
広昭 福丸
一弘 日向
正浩 鈴木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Hitachi Information and Control Solutions Ltd
Original Assignee
Hitachi Ltd
Hitachi Information and Control Solutions Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd, Hitachi Information and Control Solutions Ltd filed Critical Hitachi Ltd
Priority to JP2006188151A priority Critical patent/JP4667312B2/en
Publication of JP2008015901A publication Critical patent/JP2008015901A/en
Application granted granted Critical
Publication of JP4667312B2 publication Critical patent/JP4667312B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、外部記憶装置を備えた計算機システムの制御方式に係わり、特に、外部記憶装置自身のエラー回復処理が有効に働くようにし、外部記憶装置の稼働率を高めた外部記憶装置のアクセス制御方式、このアクセス制御方式を実行する外部記憶装置コントローラ、このコントローラを内蔵する外部記憶装置、及びこのコントローラの機能を有するホストシステムに関する。   The present invention relates to a control method for a computer system equipped with an external storage device, and in particular, the access control of an external storage device in which the error recovery processing of the external storage device itself works effectively and the operation rate of the external storage device is increased. The present invention relates to a method, an external storage device controller that executes this access control method, an external storage device that incorporates this controller, and a host system that has the function of this controller.

外部記憶装置、例えば磁気ディスク記憶装置(以下、HDDと称する)を備えた計算機システムでは、HDDとこのHDDを利用するホストシステムとは、ホストインターフェース、例えばSCSI(Small Computer System Interface)バスにより直接相互接続されるか、インターフェースを変換するためのコントローラや、RAID(Redundant Arrays of Independent Disks)コントローラを介して接続される。   In a computer system equipped with an external storage device such as a magnetic disk storage device (hereinafter referred to as HDD), the HDD and a host system using the HDD are directly connected to each other via a host interface such as a SCSI (Small Computer System Interface) bus. Or a controller for converting the interface or a RAID (Redundant Arrays of Independent Disks) controller.

ホストまたはコントローラがHDDへのアクセスを行ったときに、何らかのエラーが発生し、HDDから一定時間応答が帰ってこない場合、コントローラはタイムアウト検出と同時にHDDにリセット指示を出し(例えば、HDDによるエラー回復処理を中止させる)、その後ホストシステムへエラー報告を行っていた。   If an error occurs when the host or controller accesses the HDD and no response is returned from the HDD for a certain period of time, the controller issues a reset instruction to the HDD upon detection of a timeout (for example, error recovery by the HDD) The process was canceled), and then an error was reported to the host system.

HDDにエラーが発生した場合、HDD内部では予め定められた手順でエラー回復処理が行われる。近年では、このHDDのエラー回復機能は非常に強化されてきており、膨大な数の回復処理を予め定められた順序で実行するように構成されている。したがって、ホストシステムからのアクセス要求に対してHDD内部でエラーが発生しても、この強化されたエラー回復処理により、エラーが救済される可能性が高くなっている。   When an error occurs in the HDD, error recovery processing is performed in a predetermined procedure in the HDD. In recent years, the error recovery function of this HDD has been greatly enhanced, and it is configured to execute a huge number of recovery processes in a predetermined order. Therefore, even if an error occurs in the HDD in response to an access request from the host system, there is a high possibility that the error will be remedied by this enhanced error recovery processing.

しかし、エラーの内容によってはエラー回復処理に時間が掛かり、回復処理を行っている途中でタイムアウトが検出され、リセット処理が行われる場合がある。リセット処理が行われた場合、回復処理は完了せず、結果としてHDDはエラー状態のままである。ホストシステムはHDDのエラー報告を受けた場合、HDDへの再アクセスを要求するが、この状態では、再アクセスを行っても同じ場所でエラーが発生するため、タイムアウトと再アクセスの繰り返しとなり、回復処理が完了すれば使用可能なHDDであっても、復旧不可能となるという事態が生じていた。   However, depending on the content of the error, the error recovery process may take time, and a timeout may be detected during the recovery process, and the reset process may be performed. When the reset process is performed, the recovery process is not completed, and as a result, the HDD remains in an error state. When the host system receives an HDD error report, it requests re-access to the HDD. However, in this state, an error occurs at the same location even if re-access is made. Even if the HDD is usable when the processing is completed, there is a situation in which it cannot be recovered.

この事態に対して、例えば特許文献1に記載されているように、タイムアウトによってエラー回復処理が中断した場合、アクセス要求内容を記憶しておき、次回に同じアクセス要求がきたときには、タイムアウトまでの監視時間を延長するといった技術(以下、先行技術と称する)が提案されている。
特開2002−358170号公報
For this situation, as described in Patent Document 1, for example, when error recovery processing is interrupted due to timeout, the access request content is stored, and when the same access request is received next time, monitoring until timeout is performed. A technique for extending the time (hereinafter referred to as prior art) has been proposed.
JP 2002-358170 A

しかし、上記先行技術においては、タイムアウト時間(ホストにエラー報告するまでの時間)を延ばすことでエラー回復処理時間を確保しているため、従来の古い計算機システムに近年の新しいHDDを接続する場合等において、タイムアウト時間を延ばすことによって他の何らかの不具合が生じるというような場合には、上記引用文献の技術を利用できない虞があった。   However, in the above prior art, the error recovery processing time is secured by extending the time-out time (time until an error is reported to the host), so when a recent new HDD is connected to a conventional old computer system, etc. However, in the case where some other inconvenience is caused by extending the time-out period, there is a possibility that the technique of the cited document cannot be used.

本発明の目的は、上述した課題を解決するためになされたものであり、従来のホストのタイムアウト時間を変更せずに、HDD自体のエラー回復処理を有効にするコントローラのアクセス制御方式を提供することにある。   An object of the present invention is to solve the above-described problems, and provides a controller access control method that enables error recovery processing of the HDD itself without changing the timeout time of a conventional host. There is.

前記課題を解決するために、本発明は主として次のような構成を採用する。
ホストシステムと外部記憶装置にアクセスするためのそれぞれのインタフェース部を介し、制御プログラムにより各種機能を実現する処理部を備えたコントローラであって、
前記処理部は、前記ホストシステムからのアクセス要求に基づいて前記外部記憶装置にアクセスしたとき、タイムアウト時間内に前記外部記憶装置からのエラー回復処理完了を含めた正常応答がなかった場合、前記外部記憶装置に対してリセットの指示を行わずに、前記ホストシステムにエラー報告を行い、前記ホストシステムからの再度のアクセス要求に基づいて、前記アクセスした外部記憶装置に対してリセットの指示を行った後に、再度アクセスする処理を行う構成とする。
In order to solve the above problems, the present invention mainly adopts the following configuration.
A controller having a processing unit that realizes various functions by a control program via each interface unit for accessing a host system and an external storage device,
When the processing unit accesses the external storage device based on an access request from the host system, if there is no normal response including completion of error recovery processing from the external storage device within a timeout period, the external storage device An error report was sent to the host system without giving a reset instruction to the storage device, and a reset instruction was given to the accessed external storage device based on a re-access request from the host system. Later, the process of accessing again is performed.

また、ホストシステムにアクセスするためのホストシステム用インタフェース部と複数の外部記憶装置にアクセスするための外部記憶装置用インタフェース部を介し、制御プログラムによりミラーリングを含めた各種機能を実現する処理部を備えたコントローラであって、
前記処理部は、前記ホストシステムからのアクセス要求に基づいて一の外部記憶装置にアクセスしたとき、タイムアウト時間内に前記一の外部記憶装置からのエラー回復処理完了を含めた正常応答がなかった場合、前記一の外部記憶装置に対してリセットの指示を行わずに、他の外部記憶装置に再アクセスし、前記他の外部記憶装置に対するタイムアウト時間内に前記他の外部記憶装置からのエラー回復処理完了を含めた正常応答がなかった場合、前記他の外部記憶装置に対してリセットの指示を行わずに、前記ホストシステムにエラー報告を行い、前記ホストシステムからの再度のアクセス要求に基づいて、前記一の外部記憶装置に対してリセットの指示を行った後に、再度アクセスする処理を行う構成とする。
It also has a processing unit that implements various functions including mirroring by a control program via a host system interface unit for accessing the host system and an external storage device interface unit for accessing a plurality of external storage devices. Controller,
When the processing unit accesses one external storage device based on an access request from the host system, there is no normal response including completion of error recovery processing from the one external storage device within a timeout period The other external storage device is re-accessed without giving a reset instruction to the one external storage device, and the error recovery process from the other external storage device is performed within the time-out time for the other external storage device. When there is no normal response including completion, without performing a reset instruction to the other external storage device, an error report is given to the host system, and based on a re-access request from the host system, After a reset instruction is given to the one external storage device, a process of accessing again is performed.

また、ホストシステムとの通信を行うホストシステム用インタフェース部と、外部記憶装置との通信を行う外部記憶装置用インタフェース部と、前記通信に基づいて演算処理を行う処理部と、前記演算処理の結果を格納する記憶部と、を備え、前記ホストシステムと前記外部記憶装置との間の通信を制御するコントローラであって、
前記記憶部は、前記コントローラが前記外部記憶装置のエラー回復処理に対するリセットを行ったか否かを判定するための判定フラグを格納し、
前記処理部は、前記ホストシステムからアクセス要求を受けた場合、判定フラグをチェックする処理と、前記判定フラグがON(リセットを行った)であれば前記外部記憶装置に対してリセットを行わずアクセスを実行する処理と、前記判定フラグがOFF(リセットしていない)であれば前記外部記憶装置に対してリセットを行った後にアクセスを実行する処理と、アクセスの実行後、前記外部記憶装置が所定の時間内に応答がなかった場合に前記外部記憶装置に対してリセットを行わず、前記フラグをOFFにした後、前記ホストシステムに対してエラーを報告する処理と、を実行する構成とする。
A host system interface unit that communicates with the host system; an external storage device interface unit that communicates with the external storage device; a processing unit that performs arithmetic processing based on the communication; and a result of the arithmetic processing A controller for controlling communication between the host system and the external storage device,
The storage unit stores a determination flag for determining whether or not the controller has reset the error recovery processing of the external storage device,
The processing unit checks the determination flag when receiving an access request from the host system, and accesses the external storage device without resetting if the determination flag is ON (reset). If the determination flag is OFF (not reset), a process for executing access after resetting the external storage device, and after executing the access, the external storage device is predetermined. If no response is received within the time period, the external storage device is not reset, and after the flag is turned OFF, an error reporting process to the host system is executed.

また、前記コントローラにおいて、前記外部記憶装置用ンタフェース部は、複数の外部記憶装置とアクセスする機能を有し、前記記憶部は、前記コントローラが一の外部記憶装置のエラー回復処理に対するリセットを行ったか否かを判定するための判定フラグと、他の外部記憶装置のエラー回復処理に対するリセットを行ったか否かを判定するための判定フラグと、を格納し、
前記処理部は、前記ホストシステムからアクセス要求を受けた場合、アクセスする前記一か前記他の外部記憶装置を選択する処理と、選択した一の外部記憶装置の判定フラグをチェックする処理と、前記判定フラグがON(リセットを行った)であれば前記選択した一の外部記憶装置に対してリセットを行わずアクセスを実行する処理と、前記判定フラグがOFF(リセットしていない)であれば前記選択された一の外部記憶装置に対してリセットを行った後にアクセスを実行する処理と、アクセスの実行後、前記選択された一の外部記憶装置が所定の時間内に応答がなかった場合に前記選択された一の外部記憶装置に対してリセットを行わず、前記フラグをOFFした後、前記他の外部記憶装置に対して前記一の外部記憶装置と同様処理を行う処理と、を実行する構成とする。
In the controller, the interface unit for external storage device has a function of accessing a plurality of external storage devices, and the storage unit has reset the error recovery processing of one external storage device by the controller. A determination flag for determining whether or not, and a determination flag for determining whether or not a reset for error recovery processing of another external storage device has been performed,
The processing unit, when receiving an access request from the host system, a process of selecting the one or other external storage device to be accessed, a process of checking a determination flag of the selected one external storage device, If the determination flag is ON (reset), the process of executing access without resetting the selected one external storage device, and if the determination flag is OFF (not reset) A process of executing access after resetting the selected one external storage device, and when the selected one external storage device does not respond within a predetermined time after executing the access, The selected one external storage device is not reset, the flag is turned off, and the other external storage device is processed in the same manner as the one external storage device. And configured to execute cormorants and processing, the.

古い世代のHDDは、エラー回復処理の内容も簡素で、それほど時間を必要としなかったが、現在の新しい世代のHDDでは、エラー回復処理が高度化・複雑化しており、処理に時間が必要である。このため、古い世代のHDDを使用しているホストシステムに新しい世代のHDDを適用した場合、タイムアウト時間が回復処理に必要な時間より短く、新しい世代のHDDのエラー回復処理を有効に働かせることができなかった。   Older generation HDDs also have simple error recovery processing and did not require much time. However, current new generation HDDs have advanced and complicated error recovery processing, which requires time. is there. For this reason, when a new generation HDD is applied to a host system using an old generation HDD, the time-out time is shorter than the time required for the recovery process, and the error recovery process of the new generation HDD can be used effectively. could not.

本発明によれば、前記のようなタイムアウト時間が短いホストシステムにおいても、エラー回復処理のための時間を確保することができ、処理を有効に働かせることが可能となる。   According to the present invention, it is possible to secure a time for error recovery processing even in a host system with a short timeout time as described above, and to make the processing work effectively.

本発明の実施形態に係るコントローラのアクセス制御方式について、図面を参照しながら以下詳細に説明する。本発明の第1の実施形態については、図1、図2及び図3を用いて説明し、本発明の第2の実施形態については、図4、図5−1〜図5−4及び図6を用いて説明する。図面において、10はホストシステム、20はコントローラ、21はホストアクセス用インターフェース、22は処理部、23は外部記憶装置アクセス用インターフェース、24は記憶部、30は外部記憶装置(HDD)、30Aは 外部記憶装置1(HDD1)、30Bは 外部記憶装置2(HDD2)、をそれぞれ表す。   A controller access control system according to an embodiment of the present invention will be described in detail below with reference to the drawings. The first embodiment of the present invention will be described with reference to FIGS. 1, 2 and 3, and the second embodiment of the present invention will be described with reference to FIGS. 4, 5-1 to 5-4 and FIG. 6 will be described. In the drawing, 10 is a host system, 20 is a controller, 21 is a host access interface, 22 is a processing unit, 23 is an external storage device access interface, 24 is a storage unit, 30 is an external storage device (HDD), and 30A is an external device. Storage devices 1 (HDD1) and 30B represent external storage devices 2 (HDD2), respectively.

「第1の実施形態」
図1は本発明の第1の実施形態に係るコントローラを含めた計算機システムの全体構成を示すブロック図である。
“First Embodiment”
FIG. 1 is a block diagram showing the overall configuration of a computer system including a controller according to the first embodiment of the present invention.

図1に示すように、第1の実施形態に係る計算機システムは、ホストシステム(ホスト計算機)10と、ホストシステム10の外部記憶装置として当該ホストシステム10に利用される外部記憶装置30、例えばHDD(磁気ディスク装置)と、ホストシステム10とHDD30を仲介するコントローラ20と、から構成される。ここで、コントローラ20とは、ホストインターフェースとHDDインターフェースとを仲介するインターフェース変換コントローラや2台以上のHDDを接続するためのRAIDコントローラのことを指す。   As shown in FIG. 1, the computer system according to the first embodiment includes a host system (host computer) 10 and an external storage device 30, such as an HDD, used as the external storage device of the host system 10. (Magnetic disk device), a host system 10, and a controller 20 that mediates the HDD 30. Here, the controller 20 refers to an interface conversion controller that mediates between the host interface and the HDD interface and a RAID controller for connecting two or more HDDs.

コントローラ20は、各種機能を実現するための処理部22と、制御プログラムが予め格納された記憶部24と、ホストシステム10にアクセスするためのインタフェース21と、外部記憶装置にアクセスするためのインタフェース23と、を有している。   The controller 20 includes a processing unit 22 for realizing various functions, a storage unit 24 in which a control program is stored in advance, an interface 21 for accessing the host system 10, and an interface 23 for accessing an external storage device. And have.

次に、図2を参照(適宜に図1を参照)して、本発明の第1の実施形態に係るコントローラの処理部が行う処理について説明する。図2は、本発明の第1の実施形態に係るコントローラの処理を示すフローチャートである。   Next, processing performed by the processing unit of the controller according to the first embodiment of the present invention will be described with reference to FIG. 2 (refer to FIG. 1 as appropriate). FIG. 2 is a flowchart showing processing of the controller according to the first embodiment of the present invention.

まず、コントローラ20はホストシステム10からHDDへのアクセス要求を受ける(S101)。コントローラの処理部22は、HDD30がビジー状態かどうかを確認する(S102)。「HDDがビジー状態である」場合、S201に進み、「HDDがビジー状態でない」場合、S103に進む。   First, the controller 20 receives an access request to the HDD from the host system 10 (S101). The processing unit 22 of the controller checks whether the HDD 30 is busy (S102). If “HDD is busy”, the process proceeds to S201. If “HDD is not busy”, the process proceeds to S103.

S201に進んだ場合、規定時間経った後ビジーが解除されたかどうかを判定する(S201)。「規定時間経ってビジー状態が解除された」場合、S103へ進み、「規定時間経ってもビジー状態が解除されない」場合、S108へ進む。S103に進んだ場合、処理部22は記憶部24のリセットフラグの状態を判定する(S103)。ここで、リセットフラグはコントローラ20がHDD30にリセットを行ったか否かを判定するためのフラグである。   When the process proceeds to S201, it is determined whether the busy state is canceled after a lapse of a specified time (S201). If “the busy state is released after a specified time”, the process proceeds to S103. If “the busy state is not released even after a specified time”, the process proceeds to S108. When the process proceeds to S103, the processing unit 22 determines the state of the reset flag in the storage unit 24 (S103). Here, the reset flag is a flag for determining whether or not the controller 20 has reset the HDD 30.

「リセットフラグがON(リセットを行った)」の場合はS104へ進み、コントローラはHDDにアクセスを行う(S104)。「リセットフラグがOFF(リセットしていない)」の場合、S301に進み、コントローラ20はHDD30にリセットを行った後、HDDへアクセスを行う(S301)。このとき、記憶部のリセットフラグをONにする(S302)。S104またはS302のどちらの場合でも次にS105へ進む。   If the “reset flag is ON (reset is performed)”, the process proceeds to S104, and the controller accesses the HDD (S104). When the “reset flag is OFF (not reset)”, the process proceeds to S301, where the controller 20 resets the HDD 30 and then accesses the HDD (S301). At this time, the reset flag of the storage unit is turned ON (S302). In either case of S104 or S302, the process proceeds to S105.

HDDにアクセスを行った結果、「HDDからエラー応答があった」場合にはS401へ進み、HDDへのリセットを行った後、ホストシステムへエラー報告を行い、処理を終了する(S401)。「HDDからエラー応答がなかった」場合、S106へ進む。HDDから何も応答が得られず、タイムアウトが検出されたかどうかを判定する(S106)。「HDDのタイムアウトが検出された」場合、S107へ進み、「HDDのタイムアウトが検出されなかった」場合、S501へ進む。   As a result of accessing the HDD, if “an error response has been received from the HDD”, the process proceeds to S401. After resetting to the HDD, an error report is sent to the host system, and the process ends (S401). If “no error response from HDD”, the process proceeds to S106. It is determined whether no response is obtained from the HDD and a timeout is detected (S106). If “HDD time-out is detected”, the process proceeds to S107. If “HDD time-out is not detected”, the process proceeds to S501.

S107へ進んだ場合、処理部は記憶部のリセットフラグをOFFにする(S107)。その後、HDDへのリセットは行わずにホストシステムへエラー報告を行い、処理を終了する(S108)。S501へ進んだ場合、HDDから正常応答を受けとる(S501)。その後、ホストへ正常応答を送信し、処理を終了する(S502)。   When the process proceeds to S107, the processing unit turns off the reset flag of the storage unit (S107). Thereafter, an error report is made to the host system without resetting the HDD, and the process is terminated (S108). When the process proceeds to S501, a normal response is received from the HDD (S501). Thereafter, a normal response is transmitted to the host, and the process is terminated (S502).

次に、図3を参照(適宜に図1と図2を参照)して、本発明の第1の実施形態に係る計算機システムの処理について説明する。図3は、本発明の第1の実施形態に係る計算機システムの処理を説明する模式図であり、図3(a)は、コントローラがHDDへアクセスを行ったとき、エラーが発生しなかった場合を示す模式図、図3(b)は、コントローラがHDDへアクセスを行ったとき、タイムアウト時間内にエラー回復処理が完了した場合を示す模式図、図3(c)は、コントローラがHDDへアクセスを行ったとき、タイムアウト時間内にエラー回復処理が完了しなかった場合を示す模式図である。   Next, the processing of the computer system according to the first embodiment of the present invention will be described with reference to FIG. 3 (refer to FIGS. 1 and 2 as appropriate). FIG. 3 is a schematic diagram for explaining processing of the computer system according to the first embodiment of the present invention. FIG. 3A shows a case where no error occurs when the controller accesses the HDD. FIG. 3B is a schematic diagram showing a case where error recovery processing is completed within the time-out time when the controller accesses the HDD, and FIG. 3C is a diagram showing the controller accessing the HDD. FIG. 10 is a schematic diagram showing a case where error recovery processing has not been completed within a timeout time when performing.

図3の(a)について説明すると、まず、ホストシステムはコントローラに対しアクセス要求を出す(U110)。アクセス要求を受けとったコントローラは、HDDに対しアクセスを行う(U120)。HDDは正常動作を行い(U130)、コントローラへ正常応答を返す(U131)。HDDから正常応答を受けとったコントローラはホストシステムに対し正常応答を返す(U121)。   Referring to FIG. 3A, first, the host system issues an access request to the controller (U110). The controller that has received the access request accesses the HDD (U120). The HDD performs normal operation (U130) and returns a normal response to the controller (U131). The controller that has received a normal response from the HDD returns a normal response to the host system (U121).

図3の(b)について説明すると、まず、ホストシステムは、コントローラに対しアクセス要求を出す(U210)。アクセス要求を受けとったコントローラは、HDDに対しアクセスを行う(U220)。ここでエラーが発生した場合(或るアドレスの読み出しアクセスで該当するセクタに一時的な媒体不良があって読み出せない場合)、HDDはエラー回復処理を開始する(U230)。   Referring to FIG. 3B, first, the host system issues an access request to the controller (U210). The controller that has received the access request accesses the HDD (U220). If an error occurs here (when the read sector at a certain address has a temporary medium defect in the corresponding sector and cannot be read), the HDD starts error recovery processing (U230).

このとき、回復処理がタイムアウト時間U221までに終了した場合、HDDはコントローラに対し正常応答を返す(U231)。HDDから正常応答を受けとったコントローラは、ホストシステムに対し正常応答を返す(U222)。   At this time, if the recovery process is completed by the timeout time U221, the HDD returns a normal response to the controller (U231). The controller that has received a normal response from the HDD returns a normal response to the host system (U222).

図3の(c)について説明すると、まず、ホストシステムは、コントローラに対しアクセス要求を出す(U310)。アクセス要求を受けとったコントローラは、HDDに対しアクセスを行う(U320)。ここでエラーが発生した場合、HDDはエラー回復処理を開始する(U330)。   Referring to FIG. 3C, first, the host system issues an access request to the controller (U310). The controller that has received the access request accesses the HDD (U320). If an error occurs here, the HDD starts error recovery processing (U330).

このとき、回復処理がタイムアウト時間U321までに終了しなかった場合、通常、コントローラはHDDに対しリセットを行おうとするが、これを抑止する(U322)。(ここで、回復処理がタイムアウト時間内に終了しなかった場合にリセットしようとする意味は、リセットされようとするアクセス要求とは異なる新たな要求が次回に行われる場合には、このリセットされようとするアクセス要求に対するHDDの回復処理を実行しなくても、次回の要求に対しては正常な動作を行うことが可能な場合があるので、当該回復処理を中止するためである)その後、コントローラは、ホストシステムに対しエラー報告を行う(U323)。この間も図示するように回復処理を続行している。   At this time, if the recovery process does not end before the timeout time U321, the controller normally tries to reset the HDD, but suppresses this (U322). (Here, if the recovery process does not end within the timeout period, the meaning of resetting is that if a new request different from the access request to be reset is made next time, the reset will be reset. This is to stop the recovery process because there is a case where normal operation can be performed for the next request without executing the HDD recovery process for the access request. Reports an error to the host system (U323). During this time, the recovery process continues as shown in the figure.

これを受けてホストシステムは、コントローラに対して再アクセス要求を行う(例えば、前回と同一アドレスの内容を読み出すというアクセス要求)(U311)。再アクセス要求を受け取ったコントローラは、HDDに対してリセットを行う(U324)。このため、エラー回復処理U330は、リセットU324が来るまでHDDの回復処理を続けることができる。   In response to this, the host system makes a re-access request to the controller (for example, an access request to read the contents of the same address as the previous time) (U311). The controller that has received the re-access request resets the HDD (U324). Therefore, the error recovery process U330 can continue the HDD recovery process until the reset U324 is received.

リセットが完了した後、コントローラはHDDに対しアクセスを行う(U325)。HDDはエラー回復処理が完了しているので、正常動作を行い(U331)、コントローラに対して正常応答を行う(U332)。HDDから正常応答を受けとったコントローラは、ホストシステムに対し正常応答を返す(U326)。   After the reset is completed, the controller accesses the HDD (U325). Since the error recovery processing has been completed, the HDD performs a normal operation (U331) and sends a normal response to the controller (U332). The controller that has received a normal response from the HDD returns a normal response to the host system (U326).

「第2の実施形態」
図4は本発明の第2の実施形態に係るコントローラを含めた計算機システムの全体構成を示すブロック図である。本発明の第2の実施形態は、コントローラに複数のHDDを接続し、ミラーリングを行う場合を想定している。ここで述べるミラーリングとは、複数台のHDDに対して、同一の情報を記録しておき、情報読み出し時に1台目のHDDにエラーが発生した場合、別のHDDから情報を読み出す仕組みを指す。なお、計算機システムの全体構成の中で第1の実施形態と共通する部分については、同じ符号を付し、説明を省略する。
“Second Embodiment”
FIG. 4 is a block diagram showing an overall configuration of a computer system including a controller according to the second embodiment of the present invention. The second embodiment of the present invention assumes a case where a plurality of HDDs are connected to a controller and mirroring is performed. The mirroring described here refers to a mechanism in which the same information is recorded in a plurality of HDDs, and information is read from another HDD when an error occurs in the first HDD during information reading. In addition, about the part which is common in 1st Embodiment in the whole structure of a computer system, the same code | symbol is attached | subjected and description is abbreviate | omitted.

まず、図4を参照して、本発明の第2の実施形態に係る計算機システムの構成について説明する。図4に示すように、計算機システムのうち、ホストシステム10とコントローラ20は図1と同じ構成となっている。ここで、コントローラの外部記憶装置アクセス用インタフェース23に接続される対象が、外部記憶装置1(30A)および外部記憶装置2(30B)の複数台となっている点のみ、図1と異なる。   First, the configuration of a computer system according to the second embodiment of the present invention will be described with reference to FIG. As shown in FIG. 4, in the computer system, the host system 10 and the controller 20 have the same configuration as in FIG. Here, the only difference from FIG. 1 is that the target connected to the external storage device access interface 23 of the controller is a plurality of external storage devices 1 (30A) and 2 (30B).

次に、図5−1から図5−4を参照(適宜に図4を参照)して、本発明の第2の実施形態に係るコントローラの処理部が行う処理について説明する。図5−1から図5−4は、本発明の第2の実施形態に係るコントローラの処理の一部を示すフローチャートである。   Next, processing performed by the processing unit of the controller according to the second embodiment of the present invention will be described with reference to FIGS. 5-1 to 5-4 (refer to FIG. 4 as appropriate). FIGS. 5-1 to 5-4 are flowcharts showing a part of the processing of the controller according to the second embodiment of the present invention.

図5−1について説明する。まず、コントローラ20はホストシステム10からHDDへのアクセス要求を受ける(T111)。コントローラの処理部22は、アクセスするHDDをHDD1(30A)またはHDD2(30B)から選択する(T112)。ここでの選択方法は限定せず、アクセス対象のデータにヘッドが近いHDDが選択されるニアレスシークでも良いし、他の方法でも構わない。そして「選択したHDDがHDD1」の場合はT113に進み、「選択したHDDがHDD2」の場合は後述の図5−3のBに進む。   FIG. 5A will be described. First, the controller 20 receives an access request to the HDD from the host system 10 (T111). The processing unit 22 of the controller selects the HDD to be accessed from the HDD 1 (30A) or the HDD 2 (30B) (T112). The selection method here is not limited, and a near-less seek in which the HDD whose head is close to the data to be accessed may be selected, or another method may be used. If “the selected HDD is HDD1,” the process proceeds to T113. If “the selected HDD is HDD2,” the process proceeds to B in FIG.

T113に進んだ場合、処理部22は、HDD1がビジー状態かどうかを確認する(T113)。「HDD1がビジー状態である」場合、T121に進み、「HDD1がビジー状態でない」場合、T114に進む。T121に進んだ場合、規定時間経った後ビジーが解除されたかどうかを判定する(T121)。「規定時間経ってビジー状態が解除された」場合、T114へ進み、「規定時間経ってもビジー状態が解除されない」場合、T119へ進む。   When the process proceeds to T113, the processing unit 22 checks whether the HDD 1 is busy (T113). If “HDD1 is busy”, the process proceeds to T121. If “HDD1 is not busy”, the process proceeds to T114. When the process proceeds to T121, it is determined whether the busy state is canceled after a lapse of a specified time (T121). If “the busy state is released after a specified time”, the process proceeds to T114. If “the busy state is not released even after a specified time”, the process proceeds to T119.

T114に進んだ場合、処理部22は記憶部24のHDD1のリセットフラグの状態を判定する(T114)。「HDD1のリセットフラグがON」の場合はT115へ進み、コントローラ20はHDD1にアクセスを行う(T115)。「HDD1のリセットフラグがOFF」の場合、T131に進み、コントローラ20はHDD1にリセットを行った後、HDD1へアクセスを行う(T131)。このとき記憶部24のHDD1のリセットフラグをONにする(T132)。T115またはT132のどちらの場合でも次にT116へ進む。   When the process proceeds to T114, the processing unit 22 determines the state of the reset flag of the HDD 1 in the storage unit 24 (T114). If “the reset flag of HDD1 is ON”, the process proceeds to T115, and the controller 20 accesses the HDD1 (T115). If “the reset flag of HDD1 is OFF”, the process proceeds to T131, and the controller 20 resets the HDD1, and then accesses the HDD1 (T131). At this time, the reset flag of the HDD 1 in the storage unit 24 is turned ON (T132). In either case of T115 or T132, the process proceeds to T116.

HDD1にアクセスを行った結果、「HDD1からエラー応答があった」場合にはT141へ進み、HDD1へのリセットを行う(T141)、その後、T119へ進む。「HDD1からエラー応答がなかった」場合、T117へ進む。HDD1から何も応答が得られず、タイムアウトが検出されたかどうかを判定する(T117)。「HDD1のタイムアウトが検出された」場合、T118へ進み、「HDD1のタイムアウトが検出されなかった」場合、T151へ進む。   As a result of accessing the HDD 1, if “an error response is received from the HDD 1”, the process proceeds to T 141, the HDD 1 is reset (T 141), and then the process proceeds to T 119. If there is no error response from HDD1, the process proceeds to T117. It is determined whether no response is obtained from the HDD 1 and a timeout is detected (T117). If “HDD 1 timeout is detected”, the process proceeds to T118. If “HDD 1 timeout is not detected”, the process proceeds to T151.

T118へ進んだ場合、処理部は記憶部のHDD1のリセットフラグをOFFにする(T118)。T118またはT141のどちらの場合も、その後アクセス対象のHDDをHDD2に変更し(T119)、後述の図5−2のAへ進む。T151へ進んだ場合、HDD1から正常応答を受けとる(T151)。その後、ホストへ正常応答を送信し、処理を終了する(T152)。   When the process proceeds to T118, the processing unit turns off the reset flag of the HDD 1 in the storage unit (T118). In either case of T118 or T141, the HDD to be accessed is subsequently changed to HDD2 (T119), and the process proceeds to A in FIG. When the process proceeds to T151, a normal response is received from the HDD 1 (T151). Thereafter, a normal response is transmitted to the host, and the process is terminated (T152).

次に、図5−2について説明する。前述の図5−1のT119からT211に進んだ場合、処理部22は、HDD2がビジー状態かどうかを確認する(T211)。「HDD2がビジー状態である」場合、T221に進み、「HDD2がビジー状態でない」場合、T212に進む。T221に進んだ場合、規定時間経った後ビジーが解除されたかどうかを判定する(T221)。「規定時間経ってビジー状態が解除された」場合、T212へ進み、「規定時間経ってもビジー状態が解除されない」場合、T217へ進む。   Next, FIG. 5-2 will be described. When the process proceeds from T119 to T211 in FIG. 5A described above, the processing unit 22 checks whether the HDD 2 is busy (T211). If “HDD2 is busy”, the process proceeds to T221. If “HDD2 is not busy”, the process proceeds to T212. When the process proceeds to T221, it is determined whether the busy state is canceled after a lapse of a specified time (T221). If “the busy state is released after a specified time”, the process proceeds to T212. If “the busy state is not released even after a specified time”, the process proceeds to T217.

T212に進んだ場合、処理部は記憶部のHDD2のリセットフラグの状態を判定する(T212)。「HDD2のリセットフラグがON」の場合はT213へ進み、コントローラ20はHDD2にアクセスを行う(T213)。「HDD2のリセットフラグがOFF」の場合、T231に進み、コントローラ20はHDD2にリセットを行った後、HDD2へアクセスを行う(T231)。このとき記憶部24のHDD2のリセットフラグをONにする(T232)。T213またはT232のどちらの場合でも次にT214へ進む。   When the process proceeds to T212, the processing unit determines the state of the reset flag of the HDD 2 of the storage unit (T212). If “the reset flag of the HDD 2 is ON”, the process proceeds to T213, and the controller 20 accesses the HDD 2 (T213). If “the reset flag of the HDD 2 is OFF”, the process proceeds to T231, and the controller 20 resets the HDD 2 and then accesses the HDD 2 (T231). At this time, the reset flag of the HDD 2 in the storage unit 24 is turned ON (T232). In either case of T213 or T232, the process proceeds to T214.

HDD2にアクセスを行った結果、「HDD2からエラー応答があった」場合にはT241へ進み、HDD2へのリセットを行った後、ホストシステム10にエラー報告を行い、処理を終了する(T241)。「HDD2からエラー応答がなかった」場合、T215へ進む。HDD2から何も応答が得られず、タイムアウトが検出されたかどうかを判定する(T215)。「HDD2のタイムアウトが検出された」場合、T216へ進み、「HDD2のタイムアウトが検出されなかった」場合、T251へ進む。   As a result of accessing the HDD 2, if “an error response is received from the HDD 2”, the process proceeds to T 241, after resetting to the HDD 2, an error report is sent to the host system 10 and the process is terminated (T 241). If there is no error response from the HDD 2, the process proceeds to T215. It is determined whether no response is obtained from the HDD 2 and a timeout is detected (T215). If “HDD 2 timeout is detected”, the process proceeds to T216. If “HDD 2 timeout is not detected”, the process proceeds to T251.

T216へ進んだ場合、処理部22は記憶部24のHDD2のリセットフラグをOFFにする(T216)。その後、HDD2へのリセットは行わずにホストシステムへエラー報告を行い、処理を終了する(T217)。T251へ進んだ場合、HDD2から正常応答を受けとる(T251)。その後、ホストへ正常応答を送信し、処理を終了する(T252)。   When the process proceeds to T216, the processing unit 22 turns off the reset flag of the HDD 2 in the storage unit 24 (T216). Thereafter, an error report is made to the host system without resetting to the HDD 2, and the process is terminated (T217). When the process proceeds to T251, a normal response is received from the HDD 2 (T251). Thereafter, a normal response is transmitted to the host, and the process is terminated (T252).

図5−3について説明する。前述の図5−1のT112からT311に進んだ場合、処理部22は、HDD2がビジー状態かどうかを確認する(T311)。「HDD2がビジー状態である」場合、T321に進み、「HDD2がビジー状態でない」場合、T312に進む。T321に進んだ場合、規定時間経った後ビジーが解除されたかどうかを判定する(T321)。「規定時間経ってビジー状態が解除された」場合、T312へ進み、「規定時間経ってもビジー状態が解除されない」場合、T317へ進む。   FIG. 5-3 will be described. When the process proceeds from T112 to T311 in FIG. 5A described above, the processing unit 22 checks whether the HDD 2 is busy (T311). If “HDD2 is busy”, the process proceeds to T321. If “HDD2 is not busy”, the process proceeds to T312. When the process proceeds to T321, it is determined whether the busy state is canceled after a lapse of a specified time (T321). If “the busy state is released after a specified time”, the process proceeds to T312. If “the busy state is not released even after the specified time has elapsed”, the process proceeds to T317.

T312に進んだ場合、処理部22は記憶部24のHDD2のリセットフラグの状態を判定する(T312)。「HDD2のリセットフラグがON」の場合はT313へ進み、コントローラはHDD2にアクセスを行う(T313)。「HDD2のリセットフラグがOFF」の場合、T331に進み、コントローラはHDD2にリセットを行った後、HDD2へアクセスを行う(T331)。このとき記憶部24のHDD2のリセットフラグをONにする(T332)。T313またはT332のどちらの場合でも次にT314へ進む。   When the process proceeds to T312, the processing unit 22 determines the state of the reset flag of the HDD 2 in the storage unit 24 (T312). If “the reset flag of HDD2 is ON”, the process proceeds to T313, and the controller accesses the HDD2 (T313). If “the reset flag of the HDD 2 is OFF”, the process proceeds to T331, and the controller resets the HDD 2 and then accesses the HDD 2 (T331). At this time, the reset flag of the HDD 2 in the storage unit 24 is turned ON (T332). In either case of T313 or T332, the process proceeds to T314.

HDD2にアクセスを行った結果、「HDD2からエラー応答があった」場合にはT341へ進み、HDD2へのリセットを行う(T341)、その後、T317へ進む。「HDD2からエラー応答がなかった」場合、T315へ進む。HDD2から何も応答が得られず、タイムアウトが検出されたかどうかを判定する(T315)。「HDD2のタイムアウトが検出された」場合、T316へ進み、「HDD2のタイムアウトが検出されなかった」場合、T351へ進む。   As a result of accessing the HDD 2, if “an error response is received from the HDD 2”, the process proceeds to T 341, the HDD 2 is reset (T 341), and then the process proceeds to T 317. If “no error response from HDD 2”, the process proceeds to T315. It is determined whether no response is obtained from the HDD 2 and a timeout is detected (T315). If “HDD 2 timeout is detected”, the process proceeds to T316. If “HDD 2 timeout is not detected”, the process proceeds to T351.

T316へ進んだ場合、処理部22は記憶部24のHDD2のリセットフラグをOFFにする(T316)。T316またはT341のどちらの場合も、その後アクセス対象のHDDをHDD1に変更し(T317)、後述の図5−4のCへ進む。T351へ進んだ場合、HDD2から正常応答を受けとる(T351)。その後、ホストへ正常応答を送信し、処理を終了する(T352)。   When the process proceeds to T316, the processing unit 22 turns off the reset flag of the HDD 2 in the storage unit 24 (T316). In either case of T316 or T341, the HDD to be accessed is subsequently changed to HDD1 (T317), and the process proceeds to C in FIG. When the process proceeds to T351, a normal response is received from the HDD 2 (T351). Thereafter, a normal response is transmitted to the host, and the process ends (T352).

図5−4について説明する。前述の図5−3のT317からT411に進んだ場合、処理部22は、HDD1がビジー状態かどうかを確認する(T411)。「HDD1がビジー状態である」場合、T421に進み、「HDD1がビジー状態でない」場合、T412に進む。T421に進んだ場合、規定時間経った後ビジーが解除されたかどうかを判定する(T421)。「規定時間経ってビジー状態が解除された」場合、T412へ進み、「規定時間経ってもビジー状態が解除されない」場合、T417へ進む。   FIG. 5-4 will be described. When the process proceeds from T317 in FIG. 5C to T411, the processing unit 22 checks whether the HDD 1 is busy (T411). If “HDD1 is busy”, the process proceeds to T421. If “HDD1 is not busy”, the process proceeds to T412. When the process proceeds to T421, it is determined whether the busy state is canceled after a lapse of a specified time (T421). If “the busy state is released after a specified time”, the process proceeds to T412. If “the busy state is not released even after the specified time has elapsed”, the process proceeds to T417.

T412に進んだ場合、処理部22は記憶部24のHDD1のリセットフラグの状態を判定する(T412)。「HDD1のリセットフラグがON」の場合はT413へ進み、コントローラ20はHDD1にアクセスを行う(T413)。「HDD1のリセットフラグがOFF」の場合、T431に進み、コントローラはHDD1にリセットを行った後、HDD1へアクセスを行う(T431)。このとき記憶部のHDD1のリセットフラグをONにする(T432)。T413またはT432のどちらの場合でも次にT414へ進む。   When the process proceeds to T412, the processing unit 22 determines the state of the reset flag of the HDD 1 in the storage unit 24 (T412). When “the reset flag of HDD1 is ON”, the process proceeds to T413, and the controller 20 accesses the HDD1 (T413). If “the reset flag of HDD1 is OFF”, the process proceeds to T431, where the controller resets HDD1 and then accesses HDD1 (T431). At this time, the reset flag of the HDD 1 of the storage unit is turned ON (T432). In either case of T413 or T432, the process proceeds to T414.

HDD1にアクセスを行った結果、「HDD1からエラー応答があった」場合にはT441へ進み、HDD1へのリセットを行った後、ホストシステム10にエラー報告を行い、処理を終了する(T441)。「HDD1からエラー応答がなかった」場合、T415へ進む。HDD1から何も応答が得られず、タイムアウトが検出されたかどうかを判定する(T415)。「HDD1のタイムアウトが検出された」場合、T416へ進み、「HDD1のタイムアウトが検出されなかった」場合、T451へ進む。   As a result of accessing HDD 1, if “an error response is received from HDD 1”, the process proceeds to T 441, after resetting to HDD 1, an error report is sent to the host system 10, and the process is terminated (T 441). If there is no error response from HDD1, the process proceeds to T415. It is determined whether no response is obtained from the HDD 1 and a timeout is detected (T415). If "HDD 1 timeout is detected", the process proceeds to T416. If "HDD 1 timeout is not detected", the process proceeds to T451.

T416へ進んだ場合、処理部22は記憶部24のHDD1のリセットフラグをOFFにする(T416)。その後、HDD1へのリセットは行わずにホストシステムへエラー報告を行い、処理を終了する(T417)。T451へ進んだ場合、HDD2から正常応答を受けとる(T451)。その後、ホストへ正常応答を送信し、処理を終了する(T452)。   When the process proceeds to T416, the processing unit 22 turns off the reset flag of the HDD 1 in the storage unit 24 (T416). Thereafter, the HDD 1 is not reset and an error is reported to the host system, and the process is terminated (T417). When the process proceeds to T451, a normal response is received from the HDD 2 (T451). Thereafter, a normal response is transmitted to the host, and the process ends (T452).

次に、図6を参照(適宜に図4,5−1〜5−4を参照)して、本発明の第2の実施形態に係る計算機システムの処理について説明する。図6は、本発明の第2の実施形態に係る計算機システムの処理を説明する模式図であり、図6(a)は、コントローラがHDDへアクセスを行ったとき、エラーが発生しなかった場合を示す模式図、図6(b)は、コントローラがHDDへアクセスを行ったとき、タイムアウト時間内にエラー回復処理が完了した場合を示す模式図、図6(c)は、コントローラが1台目のHDD2へアクセスを行ったとき、タイムアウト時間内にエラー回復処理が完了せず、別のHDD1へアクセスを切替え、このHDD1ではエラーが発生しなかった場合を示す模式図、図6(d)は、コントローラが1台目のHDD2へアクセスを行ったとき、タイムアウト時間内にエラー回復処理が完了せず、別のHDD1へアクセスを切替え、このHDD1でもタイムアウト時間内にエラー回復処理が完了しなかった場合を示す模式図である。   Next, the processing of the computer system according to the second embodiment of the present invention will be described with reference to FIG. 6 (refer to FIGS. 4, 5-1 to 5-4 as appropriate). FIG. 6 is a schematic diagram for explaining processing of the computer system according to the second embodiment of the present invention. FIG. 6A shows a case where no error occurs when the controller accesses the HDD. FIG. 6B is a schematic diagram showing a case where error recovery processing is completed within the timeout time when the controller accesses the HDD, and FIG. 6C is a diagram showing the first controller. FIG. 6D is a schematic diagram showing a case where the error recovery processing is not completed within the time-out time when the HDD 2 is accessed and the access is switched to another HDD 1 and no error occurs in this HDD 1. When the controller accesses the first HDD 2, the error recovery processing is not completed within the timeout time, and the access is switched to another HDD 1. It is a schematic diagram showing a case where error correction processing is not completed within the out time.

図6の(a)について説明すると、まず、ホストシステム10は、コントローラ20に対しアクセス要求を出す(V110)。アクセス要求を受けとったコントローラ20は、アクセスするHDDを選択し、選択したHDDに対しアクセスを行う。図6(a)では、HDD2を選択した場合を示す(V120)。   Referring to FIG. 6A, first, the host system 10 issues an access request to the controller 20 (V110). Receiving the access request, the controller 20 selects the HDD to be accessed and accesses the selected HDD. FIG. 6A shows a case where the HDD 2 is selected (V120).

HDD2は正常動作を行い(V130)、コントローラへ正常応答を返す(V131)。HDD2から正常応答を受けとったコントローラは、ホストシステムに対し正常応答を返す(V121)。   The HDD 2 performs a normal operation (V130) and returns a normal response to the controller (V131). The controller that has received a normal response from the HDD 2 returns a normal response to the host system (V121).

図6の(b)について説明すると、まず、ホストシステム10は、コントローラ20に対しアクセス要求を出す(V210)。アクセス要求を受けとったコントローラ20は、アクセスするHDDを選択し、選択したHDDに対しアクセスを行う。図6(b)では、HDD1を選択した場合を示す(V220)。   Referring to FIG. 6B, first, the host system 10 issues an access request to the controller 20 (V210). Receiving the access request, the controller 20 selects the HDD to be accessed and accesses the selected HDD. FIG. 6B shows a case where the HDD 1 is selected (V220).

ここでエラーが発生した場合、HDD1はエラー回復処理を開始する(V230)。このとき、回復処理がタイムアウト時間V221までに終了した場合、HDD1はコントローラに対し正常応答を返す(V231)。HDD1から正常応答を受けとったコントローラ20は、ホストシステム10に対し正常応答を返す(V222)。   If an error occurs here, the HDD 1 starts error recovery processing (V230). At this time, if the recovery process is completed by the timeout time V221, the HDD 1 returns a normal response to the controller (V231). The controller 20 that has received a normal response from the HDD 1 returns a normal response to the host system 10 (V222).

図6の(c)について説明すると、まず、ホストシステム10は、コントローラ20に対しアクセス要求を出す(V310)。アクセス要求を受けとったコントローラは、アクセスするHDDを選択し、選択したHDDに対しアクセスを行う。図6(c)では、HDD2を選択した場合を示す(V320)。   Referring to FIG. 6C, first, the host system 10 issues an access request to the controller 20 (V310). The controller that has received the access request selects the HDD to be accessed, and accesses the selected HDD. FIG. 6C shows a case where the HDD 2 is selected (V320).

ここでエラーが発生した場合、HDD2はエラー回復処理を開始する(V330)。このとき、回復処理がタイムアウト時間V321までに終了しなかった場合、通常、コントローラ20はHDD2に対しリセットを行おうとするが、これを抑止する(V322)。   If an error occurs here, the HDD 2 starts error recovery processing (V330). At this time, if the recovery process is not completed before the timeout time V321, the controller 20 normally tries to reset the HDD 2, but suppresses this (V322).

コントローラはアクセスするHDDをHDD1に切り替えて再アクセスを行う(V323)。HDD1は正常動作を行い、HDD1はコントローラ20に対し正常応答を返す(V332)。HDD1から正常応答を受けとったコントローラは、ホストシステムに対し正常応答を返す(V324)。その間にエラー回復処理V330は処理を完了する。   The controller switches the HDD to be accessed to HDD 1 and performs re-access (V323). The HDD 1 performs a normal operation, and the HDD 1 returns a normal response to the controller 20 (V332). The controller that has received a normal response from the HDD 1 returns a normal response to the host system (V324). Meanwhile, the error recovery process V330 completes the process.

図6の(d)について説明すると、まず、ホストシステム10は、コントローラ20に対しアクセス要求を出す(V410)。アクセス要求を受けとったコントローラは、アクセスするHDDを選択し、選択したHDDに対しアクセスを行う。図6(d)では、HDD2を選択した場合を示す(V420)。   Referring to FIG. 6D, first, the host system 10 issues an access request to the controller 20 (V410). The controller that has received the access request selects the HDD to be accessed, and accesses the selected HDD. FIG. 6D shows a case where the HDD 2 is selected (V420).

ここでエラーが発生した場合、HDD2はエラー回復処理を開始する(V430)。このとき、回復処理がタイムアウト時間V421までに終了しなかった場合、通常、コントローラ20はHDD2に対しリセットを行おうとするが、これを抑止する(V422)。コントローラ20はアクセスするHDDをHDD1に切り替えて再アクセスを行う(V423)。ここで、HDD1にもエラーが発生した場合、HDD1はエラー回復処理を開始する(V431)。   If an error occurs here, the HDD 2 starts error recovery processing (V430). At this time, if the recovery process does not end before the timeout time V421, the controller 20 normally tries to reset the HDD 2, but suppresses this (V422). The controller 20 switches the HDD to be accessed to the HDD 1 and performs re-access (V423). If an error also occurs in the HDD 1, the HDD 1 starts error recovery processing (V431).

このとき、回復処理がタイムアウト時間V424までに終了しなかった場合、通常、コントローラ20はHDD1に対しリセットを行おうとするが、これを抑止する(V425)。その後コントローラは、ホストシステムに対しエラー報告を行う(V426)。   At this time, if the recovery process is not completed before the timeout time V424, the controller 20 normally tries to reset the HDD 1 but suppresses this (V425). Thereafter, the controller reports an error to the host system (V426).

これを受けてホストシステム10は、コントローラ20に対して再アクセス要求を行う(V412)。再アクセス要求を受けとったコントローラ20は、アクセスするHDDを選択し、選択したHDD2に対しリセットを行う(V427)。リセットが完了した後、コントローラ20はHDD2に対しアクセスを行う(V428)。   In response to this, the host system 10 issues a re-access request to the controller 20 (V412). The controller 20 that has received the re-access request selects the HDD to be accessed, and resets the selected HDD 2 (V427). After the reset is completed, the controller 20 accesses the HDD 2 (V428).

HDD2はエラー回復処理が完了しているので(図示するHDD2のエラー回復処理V430が、リセットV427の以前に回復処理が完了していることを想定している)、正常動作を行い(V432)、コントローラに対して正常応答を行う(V433)。HDD2から正常応答を受けとったコントローラは、ホストシステムに対し正常応答を返す(V429)。   Since the HDD 2 has completed the error recovery process (assuming that the error recovery process V430 of the HDD 2 shown in the figure has completed the recovery process before the reset V427), the HDD 2 performs a normal operation (V432), A normal response is made to the controller (V433). The controller that has received a normal response from the HDD 2 returns a normal response to the host system (V429).

以上説明したように、本発明の実施形態は、次のような構成を備え作用効果を奏することを主たる特徴とするものである。すなわち、ホストシステムがアクセス要求を行ったとき、HDDで何らかのエラーが発生し、エラー回復処理の途中でタイムアウトが発生しても、コントローラによるHDDへのリセットは行わない。リセットは、次にHDDにアクセスを行う直前に行う。このことにより、一度目のアクセスと二度目のアクセスまでに空き時間があった場合には、その時間をエラーの回復処理に充てることができ、実質的な回復処理時間を延ばすことで、HDD自体のエラー回復処理が中断されずに完了できる可能性を高めることができる。   As described above, the embodiment of the present invention is mainly characterized by having the following configuration and providing operational effects. That is, when the host system makes an access request, even if an error occurs in the HDD and a timeout occurs during the error recovery process, the controller does not reset the HDD. The reset is performed immediately before the next access to the HDD. As a result, when there is free time between the first access and the second access, the time can be used for error recovery processing, and the HDD itself can be increased by extending the substantial recovery processing time. It is possible to increase the possibility that the error recovery process can be completed without interruption.

さらに、本実施形態の特徴をRAIDコントローラ(ミラーコントローラ)に適用すれば、1台目のHDDでエラーが発生し、他のHDDに処理が切り替わっている時間をエラー回復処理に割当てることができ、再び1台目のHDDにアクセス要求が行われるまでにエラー回復処理が完了している可能性を高めることを実現する。なお、以上の説明では、図2、図5−1〜図5−4に示す機能をコントローラが具備するものとして述べたが、これに限らず、同様の機能をホストシステムに内蔵させても良く、また、外部記憶装置に具備させても良い。   Furthermore, if the feature of the present embodiment is applied to a RAID controller (mirror controller), the time when an error occurs in the first HDD and the process is switched to another HDD can be allocated to the error recovery process. It is possible to increase the possibility that error recovery processing has been completed before an access request is made to the first HDD again. In the above description, the controller has the functions shown in FIGS. 2 and 5-1 to 5-4. However, the present invention is not limited to this, and the same function may be built in the host system. Also, it may be provided in an external storage device.

本発明の第1の実施形態に係るコントローラを含めた計算機システムの全体構成を示すブロック図である。1 is a block diagram showing an overall configuration of a computer system including a controller according to a first embodiment of the present invention. 本発明の第1の実施形態に係るコントローラの処理を示すフローチャートである。It is a flowchart which shows the process of the controller which concerns on the 1st Embodiment of this invention. 本発明の第1の実施形態に係るコントローラを含めた計算機システムの処理を説明する模式図である。It is a mimetic diagram explaining processing of a computer system including a controller concerning a 1st embodiment of the present invention. 本発明の第2の実施形態に係るコントローラを含めた計算機システムの全体構成を示すブロック図である。It is a block diagram which shows the whole structure of the computer system containing the controller which concerns on the 2nd Embodiment of this invention. 本発明の第2の実施形態に係るコントローラの処理の一部を示すフローチャートである。It is a flowchart which shows a part of process of the controller which concerns on the 2nd Embodiment of this invention. 本発明の第2の実施形態に係るコントローラの処理の一部を示すフローチャートである。It is a flowchart which shows a part of process of the controller which concerns on the 2nd Embodiment of this invention. 本発明の第2の実施形態に係るコントローラの処理の一部を示すフローチャートである。It is a flowchart which shows a part of process of the controller which concerns on the 2nd Embodiment of this invention. 本発明の第2の実施形態に係るコントローラの処理の一部を示すフローチャートである。It is a flowchart which shows a part of process of the controller which concerns on the 2nd Embodiment of this invention. 本発明の第2の実施形態に係るコントローラを含めた計算機システムの処理を説明する模式図である。It is a mimetic diagram explaining processing of a computer system including a controller concerning a 2nd embodiment of the present invention.

符号の説明Explanation of symbols

10 ホストシステム
20 コントローラ
21 ホストアクセス用インターフェース
22 処理部
23 外部記憶装置アクセス用インターフェース
24 記憶部
30 外部記憶装置(HDD)
30A 外部記憶装置1(HDD1)
30B 外部記憶装置2(HDD2)
10 Host System 20 Controller 21 Host Access Interface 22 Processing Unit 23 External Storage Device Access Interface 24 Storage Unit 30 External Storage Device (HDD)
30A External storage device 1 (HDD 1)
30B External storage device 2 (HDD 2)

Claims (7)

ホストシステムと外部記憶装置にアクセスするためのそれぞれのインタフェース部を介し、制御プログラムにより各種機能を実現する処理部を備えたコントローラであって、
前記処理部は、前記ホストシステムからのアクセス要求に基づいて前記外部記憶装置にアクセスしたとき、タイムアウト時間内に前記外部記憶装置からのエラー回復処理完了を含めた正常応答がなかった場合、前記外部記憶装置に対してリセットの指示を行わずに、前記ホストシステムにエラー報告を行い、
前記ホストシステムからの再度のアクセス要求に基づいて、前記アクセスした外部記憶装置に対してリセットの指示を行った後に、再度アクセスする処理を行う
ことを特徴とするコントローラ。
A controller having a processing unit that realizes various functions by a control program via each interface unit for accessing a host system and an external storage device,
When the processing unit accesses the external storage device based on an access request from the host system, if there is no normal response including completion of error recovery processing from the external storage device within a timeout period, the external storage device Without giving a reset instruction to the storage device, reporting an error to the host system,
A controller that performs a process of accessing again after giving a reset instruction to the accessed external storage device based on a re-access request from the host system.
ホストシステムにアクセスするためのホストシステム用インタフェース部と複数の外部記憶装置にアクセスするための外部記憶装置用インタフェース部を介し、制御プログラムによりミラーリングを含めた各種機能を実現する処理部を備えたコントローラであって、
前記処理部は、前記ホストシステムからのアクセス要求に基づいて一の外部記憶装置にアクセスしたとき、タイムアウト時間内に前記一の外部記憶装置からのエラー回復処理完了を含めた正常応答がなかった場合、前記一の外部記憶装置に対してリセットの指示を行わずに、他の外部記憶装置に再アクセスし、前記他の外部記憶装置に対するタイムアウト時間内に前記他の外部記憶装置からのエラー回復処理完了を含めた正常応答がなかった場合、前記他の外部記憶装置に対してリセットの指示を行わずに、前記ホストシステムにエラー報告を行い、
前記ホストシステムからの再度のアクセス要求に基づいて、前記一の外部記憶装置に対してリセットの指示を行った後に、再度アクセスする処理を行う
ことを特徴とするコントローラ。
A controller having a processing unit for realizing various functions including mirroring by a control program via a host system interface unit for accessing the host system and an external storage device interface unit for accessing a plurality of external storage devices Because
When the processing unit accesses one external storage device based on an access request from the host system, there is no normal response including completion of error recovery processing from the one external storage device within a timeout period The other external storage device is re-accessed without giving a reset instruction to the one external storage device, and the error recovery process from the other external storage device is performed within the time-out time for the other external storage device. When there is no normal response including completion, an error report is sent to the host system without instructing the reset to the other external storage device,
A controller that performs a process of accessing again after instructing a reset to the one external storage device based on a re-access request from the host system.
ホストシステムとの通信を行うホストシステム用インタフェース部と、外部記憶装置との通信を行う外部記憶装置用インタフェース部と、前記通信に基づいて演算処理を行う処理部と、前記演算処理の結果を格納する記憶部と、を備え、前記ホストシステムと前記外部記憶装置との間の通信を制御するコントローラであって、
前記記憶部は、前記コントローラが前記外部記憶装置のエラー回復処理に対するリセットを行ったか否かを判定するための判定フラグ(リセットを行った場合ON、行っていない場合OFF)を格納し、
前記処理部は、前記ホストシステムからアクセス要求を受けた場合、判定フラグをチェックする処理と、前記判定フラグがON(リセットを行った)であれば前記外部記憶装置に対してリセットを行わずアクセスを実行する処理と、前記判定フラグがOFF(リセットしていない)であれば前記外部記憶装置に対してリセットを行った後にアクセスを実行する処理と、アクセスの実行後、前記外部記憶装置が所定の時間内に応答がなかった場合に前記外部記憶装置に対してリセットを行わず、前記フラグをOFFにした後、前記ホストシステムに対してエラーを報告する処理と、を実行する
ことを特徴とするコントローラ。
A host system interface unit that communicates with a host system, an external storage device interface unit that communicates with an external storage device, a processing unit that performs arithmetic processing based on the communication, and a result of the arithmetic processing are stored A controller that controls communication between the host system and the external storage device,
The storage unit stores a determination flag (ON when resetting, OFF when not resetting) for determining whether or not the controller has reset the error recovery processing of the external storage device,
The processing unit checks the determination flag when receiving an access request from the host system, and accesses the external storage device without resetting if the determination flag is ON (reset). If the determination flag is OFF (not reset), a process for executing access after resetting the external storage device, and after executing the access, the external storage device is predetermined. If the response is not received within a predetermined time, the external storage device is not reset, and after the flag is turned OFF, an error is reported to the host system. Controller.
請求項3において、
前記外部記憶装置用ンタフェース部は、複数の外部記憶装置とアクセスする機能を有し、
前記記憶部は、前記コントローラが一の外部記憶装置のエラー回復処理に対するリセットを行ったか否かを判定するための判定フラグと、他の外部記憶装置のエラー回復処理に対するリセットを行ったか否かを判定するための判定フラグと、を格納し、
前記処理部は、前記ホストシステムからアクセス要求を受けた場合、アクセスする前記一か前記他の外部記憶装置を選択する処理と、選択した一の外部記憶装置の判定フラグをチェックする処理と、前記判定フラグがON(リセットを行った)であれば前記選択した一の外部記憶装置に対してリセットを行わずアクセスを実行する処理と、前記判定フラグがOFF(リセットしていない)であれば前記選択された一の外部記憶装置に対してリセットを行った後にアクセスを実行する処理と、アクセスの実行後、前記選択された一の外部記憶装置が所定の時間内に応答がなかった場合に前記選択された一の外部記憶装置に対してリセットを行わず、前記フラグをOFFした後、前記他の外部記憶装置に対して前記一の外部記憶装置と同様処理を行う処理と、を実行する
ことを特徴とするコントローラ。
In claim 3,
The external storage device interface unit has a function of accessing a plurality of external storage devices,
The storage unit determines whether or not the controller has reset the error recovery process of one external storage device and whether or not the error recovery process of another external storage device has been reset. A determination flag for determining, and
The processing unit, when receiving an access request from the host system, a process of selecting the one or other external storage device to be accessed, a process of checking a determination flag of the selected one external storage device, If the determination flag is ON (reset), the process of executing access without resetting the selected one external storage device, and if the determination flag is OFF (not reset) A process of executing access after resetting the selected one external storage device, and when the selected one external storage device does not respond within a predetermined time after executing the access, The selected one external storage device is not reset, the flag is turned off, and the other external storage device is processed in the same manner as the one external storage device. Controller and executes cormorants and processing, the.
請求項1ないし4のいずれか1つの請求項に記載のコントローラの機能を内蔵するホストシステム。   5. A host system incorporating the function of the controller according to any one of claims 1 to 4. 請求項1ないし4のいずれか1つの請求項に記載のコントローラの機能を内蔵する外部記憶装置。   An external storage device incorporating the function of the controller according to any one of claims 1 to 4. 請求項1ないし4のいずれか1つの請求項に記載のコントローラと、ホストシステムと、外部記憶装置を備えた計算機システム。   A computer system comprising the controller according to any one of claims 1 to 4, a host system, and an external storage device.
JP2006188151A 2006-07-07 2006-07-07 External storage device access control system, and controller, host system or external storage device performing access control system Expired - Fee Related JP4667312B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006188151A JP4667312B2 (en) 2006-07-07 2006-07-07 External storage device access control system, and controller, host system or external storage device performing access control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006188151A JP4667312B2 (en) 2006-07-07 2006-07-07 External storage device access control system, and controller, host system or external storage device performing access control system

Publications (2)

Publication Number Publication Date
JP2008015901A JP2008015901A (en) 2008-01-24
JP4667312B2 true JP4667312B2 (en) 2011-04-13

Family

ID=39072831

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006188151A Expired - Fee Related JP4667312B2 (en) 2006-07-07 2006-07-07 External storage device access control system, and controller, host system or external storage device performing access control system

Country Status (1)

Country Link
JP (1) JP4667312B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE112009002119T5 (en) * 2008-10-15 2011-07-07 Mitsubishi Electric Corp. Information storage means
JP5012822B2 (en) * 2009-01-27 2012-08-29 日本電気株式会社 Storage controller
WO2015170702A1 (en) * 2014-05-09 2015-11-12 日本電気株式会社 Storage device, information processing system, storage control method and program

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003323265A (en) * 2002-05-02 2003-11-14 Matsushita Electric Ind Co Ltd Magnetic tape library apparatus
JP2005276026A (en) * 2004-03-26 2005-10-06 Hitachi Global Storage Technologies Netherlands Bv Error recovery processing method in data storage device, data storage device and magnetic disc storage device

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3290365B2 (en) * 1996-11-19 2002-06-10 インターナショナル・ビジネス・マシーンズ・コーポレーション How to perform error recovery procedures
JPH11249826A (en) * 1998-03-03 1999-09-17 Fujitsu Ltd Optical magnetic disk controller

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003323265A (en) * 2002-05-02 2003-11-14 Matsushita Electric Ind Co Ltd Magnetic tape library apparatus
JP2005276026A (en) * 2004-03-26 2005-10-06 Hitachi Global Storage Technologies Netherlands Bv Error recovery processing method in data storage device, data storage device and magnetic disc storage device

Also Published As

Publication number Publication date
JP2008015901A (en) 2008-01-24

Similar Documents

Publication Publication Date Title
JP4372134B2 (en) Storage system with data comparison function
JP5521794B2 (en) Storage device and control program thereof
JP4061492B2 (en) Information processing apparatus and power consumption control method
JP4901316B2 (en) Storage system and storage control device
EP1503378A2 (en) System and method for autonomous data scrubbing in a hard disk drive
US6789163B2 (en) Optimizing data transfer performance through partial write command purging in a disc drive
CN103246478B (en) A kind of based on the disc array system of software PLC support without packet type overall situation HotSpare disk
JP4792490B2 (en) Storage controller and RAID group expansion method
JP4227106B2 (en) Data recovery apparatus and method for flash memory
JP2007102322A (en) Computer system, storage device, system management device, and control method of disk device power source
JP2008276626A (en) Storage control device, and control method of storage control device
US20110185201A1 (en) Storage system and its power control method
US20180024742A1 (en) Storage media performance management
JP4667312B2 (en) External storage device access control system, and controller, host system or external storage device performing access control system
JP2007034537A (en) Composite storage device, data writing method, and program
US20080244173A1 (en) Storage device using nonvolatile cache memory and control method thereof
JPWO2009050765A1 (en) Medium storage device read / write processing method and medium storage device
JP4891811B2 (en) Control device and storage device
US20120303945A1 (en) Computer system with multiple operation modes and method of switching modes thereof
US9990134B2 (en) Command tunneling in a hybrid data storage device
JP2006309375A (en) Storage system operating on the basis of system information, and control method for storage system
JP2007193886A (en) Disk device, data writing control method, and command control method
JP2014048834A (en) Information processor, copy control program, and copy control method
CN110825314B (en) Data scheduling method and device
JP5292813B2 (en) Storage apparatus, method and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080507

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101213

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: 20101221

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110111

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

Free format text: PAYMENT UNTIL: 20140121

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees