JP4397770B2 - 記憶媒体制御装置、記憶媒体制御方法および記憶媒体制御プログラム - Google Patents

記憶媒体制御装置、記憶媒体制御方法および記憶媒体制御プログラム Download PDF

Info

Publication number
JP4397770B2
JP4397770B2 JP2004271861A JP2004271861A JP4397770B2 JP 4397770 B2 JP4397770 B2 JP 4397770B2 JP 2004271861 A JP2004271861 A JP 2004271861A JP 2004271861 A JP2004271861 A JP 2004271861A JP 4397770 B2 JP4397770 B2 JP 4397770B2
Authority
JP
Japan
Prior art keywords
error
read
occurrence location
error occurrence
inspection
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
JP2004271861A
Other languages
English (en)
Other versions
JP2006085592A (ja
Inventor
栄作 高橋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2004271861A priority Critical patent/JP4397770B2/ja
Priority to US11/017,946 priority patent/US7415636B2/en
Publication of JP2006085592A publication Critical patent/JP2006085592A/ja
Application granted granted Critical
Publication of JP4397770B2 publication Critical patent/JP4397770B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B20/1883Methods for assignment of alternate areas for defective areas
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B20/1816Testing
    • G11B2020/1823Testing wherein a flag is set when errors are detected or qualified
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B20/1816Testing
    • G11B2020/1826Testing wherein a defect list or error map is generated
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B20/1816Testing
    • G11B2020/183Testing wherein at least one additional attempt is made to read or write the data when a first attempt is unsuccessful
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers

Description

この発明は、上位装置からのアクセス要求に応じて記憶媒体(例えば、ディスクなど)にリードアクセスまたはライトアクセスするとともに、リードアクセスに際して発生したリードエラーを検査して交代処理を施行する記憶媒体制御装置、記憶媒体制御方法および記憶媒体制御プログラム(例えば、ディスク制御装置、ディスク制御方法およびディスク制御プログラム)に関する。
従来より、ディスクアレイやRAID(Redundant Array of Inexpensive Disks)と呼ばれるディスク制御装置では、複数のディスクを利用することで、並列動作による性能向上や高い信頼性の実現を図っている。そして、このようなディスク制御装置には、ディスクへのリードアクセスに対してリードエラーの応答があった場合に、読み取るべきデータを他のディスクに記憶されたデータから復元するだけでなく、リードエラーが根本的な媒体欠陥によるものであるかを検査して交代処理を施行するようにしたものもある。
これを具体的に説明すると、かかるディスク制御装置では、リードエラーが発生した場合に、エラーが発生した箇所(セクタ)に対して再びリードアクセスを試みる。そして、このリトライに対してデータを読み取ることができた場合には、突発的なリードエラーであると判断して、読み取ったデータを通常通り上位装置(ホストコンピュータ)に転送する。一方、リトライに対しても再びリードエラーの応答があった場合には、根本的な媒体欠陥によるリードエラーであると判断して、読み取るべきデータを他のディスクから復元してホストコンピュータに転送するとともに、エラーが発生したセクタに代えて新たなセクタを交代セクタとして割当て、この交代セクタに復元したデータを書き込む交代処理を施行する(例えば、特許文献1参照)。
特開平10−247133号公報
ところで、上記した従来の技術は、以下に説明するように、リードエラーの要因を正確に判別することができないために、交代処理が必要である箇所について交代処理が施行されない結果、パフォーマンス低下や二重故障という問題があり、その一方、交代処理が必要でない箇所について交代処理が施行される結果、交代領域の浪費という問題があった。
すなわち、上記した従来の技術では、エラー発生箇所へのリトライに対して再びリードエラーの応答があるか否かによって交代処理の要否を判断するが、例えば、重度の媒体欠陥ではない軽度の媒体欠陥によってリードエラーが発生した場合には、リトライに対してリードエラーが常に応答されるとは限らないので、突発的なリードエラーであるとして交代処理が施行されないこともある。この場合、媒体欠陥は軽度であっても、リードエラーが発生した箇所においては今後もリードエラーが頻発するので、その度にリトライが行われたのではディスク制御装置のパフォーマンスが低下することになり、さらに、このような媒体欠陥に対して交代処理を施行せずに放置したのでは二重故障の原因にもなる。
その一方、媒体に欠陥が全く無いような場合でも、リトライに対して突発的な要因でリードエラーが応答されることもあるが、上記した従来の技術では、このようなリードエラーについても交代処理を施行してしまう。この場合、リードエラーが発生した箇所については媒体欠陥が無く、交代処理が必要でない箇所であるので、交代領域を無駄に消費することになる。
さらに、ディスクのヘッドが媒体に接触する衝撃で熱減磁作用が働いてデータが消失することがあるが、上記した従来の技術では、かかる熱減磁作用によってリードエラーが発生した場合に、リトライに対してリードエラーが常に応答されるので、根本的な媒体欠陥であるとして交代処理を施行する。この場合も、リードエラーが発生した箇所については媒体欠陥が無く、データを再度書き込めば正常にデータを読み取ることができる箇所であるので、交代領域を無駄に消費することになる。
そこで、この発明は、上述した従来技術の課題を解決するためになされたものであり、リードエラーに対する交代処理の要否を精度良く判別することができ、交代処理を適切に施行することが可能な記憶媒体制御装置、記憶媒体制御方法および記憶媒体制御プログラムを提供することを目的とする。
上述した課題を解決し、目的を達成するため、発明は、上位装置からのアクセス要求に応じて記憶媒体にリードアクセスまたはライトアクセスするとともに、リードアクセスに際して発生したリードエラーを検査して交代処理を施行する記憶媒体制御装置であって、前記リードエラーが発生した記憶媒体上のエラー発生箇所に対して複数回のリードアクセスを試みてリードエラーが複数回再現されるか否かを検査するエラー検査手段と、前記エラー検査手段による検査においてリードエラーが複数回再現された場合に、前記エラー発生箇所に対して交代処理を施行する交代処理手段と、を備えたことを特徴とする。
また、発明は、上記の発明において、前記リードエラーの発生に応じて、当該リードエラーが発生した記憶媒体上のエラー発生箇所を示す情報を記憶するエラー発生箇所記憶手段を備え、前記エラー検査手段は、記憶媒体パトロール時に、前記エラー発生箇所記憶手段に記憶されたエラー発生箇所を示す情報に基づいて、当該エラー発生箇所に対して複数回のリードアクセスを試みてリードエラーが複数回再現されるか否かを検査することを特徴とする。
また、発明は、上記の発明において、前記エラー検査手段による検査においてリードエラーが複数回再現された場合に、前記エラー発生箇所に対してデータを書き込むデータ書込手段をさらに備え、前記エラー検査手段は、前記データ書込手段によってデータが書き込まれたエラー発生箇所に対して再び複数回のリードアクセスを試みてリードエラーが複数回再現されるか否かを検査し、前記交代処理手段は、前記エラー検査手段による再度の検査においてリードエラーが複数回再現された場合に、前記エラー発生箇所に対して交代処理を施行することを特徴とする。
また、発明は、上記の発明において、前記エラー検査手段による再度の検査においてリードエラーが複数回再現されなかった場合に、前記エラー発生箇所を再検査成功箇所として記憶する再検査成功箇所記憶手段をさらに備え、前記交代処理手段は、前記再検査成功箇所記憶手段に記憶された再検査成功箇所について再びリードエラーが発生した場合に、当該再検査成功箇所に対して交代処理を施行することを特徴とする。
また、発明は、上記の発明において、前記エラー検査手段は、前記交代処理手段によって交代処理が施行されたエラー発生箇所の周辺に位置する周辺箇所についても、複数回のリードアクセスを試みてリードエラーが複数回発生するか否かを検査し、前記交代処理手段は、前記エラー検査手段による検査において前記周辺箇所についてリードエラーが複数回発生した場合には、当該周辺箇所に対しても交代処理を施行することを特徴とする。
また、発明は、上記の発明において、前記エラー検査手段は、ライトエラー発生後の再ライトアクセスでデータが書き込まれた再ライト箇所についても、複数回のリードアクセスを試みてリードエラーが複数回発生するか否かを検査し、前記交代処理手段は、前記エラー検査手段による検査において前記再ライト箇所についてリードエラーが複数回発生した場合には、当該再ライト箇所に対しても交代処理を施行することを特徴とする。
また、発明は、上位装置からのアクセス要求に応じて記憶媒体にリードアクセスまたはライトアクセスするとともに、リードアクセスに際して発生したリードエラーを検査して交代処理を施行する記憶媒体制御装置であって、前記リードエラーが発生した記憶媒体上のエラー発生箇所に対してデータを書き込むデータ書込手段と、前記データ書込手段によってデータが書き込まれたエラー発生箇所に対してリードアクセスを試みてリードエラーが再現されるか否かを検査するエラー検査手段と、前記エラー検査手段による検査においてリードエラーが再現された場合に、前記エラー発生箇所に対して交代処理を施行する交代処理手段と、を備えたことを特徴とする。
また、発明は、上記の発明において、前記エラー検査手段は、前記エラー発生箇所に対して複数回のリードアクセスを試みてリードエラーが複数回再現されるか否かを検査することを特徴とする。
また、発明は、上位装置からのアクセス要求に応じて記憶媒体にリードアクセスまたはライトアクセスするとともに、リードアクセスに際して発生したリードエラーを検査して交代処理を施行する記憶媒体制御方法であって、前記リードエラーが発生した記憶媒体上のエラー発生箇所に対して複数回のリードアクセスを試みてリードエラーが複数回再現されるか否かを検査するエラー検査工程と、前記エラー検査工程による検査においてリードエラーが複数回再現された場合に、前記エラー発生箇所に対して交代処理を施行する交代処理工程と、を含んだことを特徴とする。
また、発明は、上位装置からのアクセス要求に応じて記憶媒体にリードアクセスまたはライトアクセスするとともに、リードアクセスに際して発生したリードエラーを検査して交代処理を施行する方法をコンピュータに実行させる記憶媒体制御プログラムであって、前記リードエラーが発生した記憶媒体上のエラー発生箇所に対して複数回のリードアクセスを試みてリードエラーが複数回再現されるか否かを検査するエラー検査手順と、前記エラー検査手順による検査においてリードエラーが複数回再現された場合に、前記エラー発生箇所に対して交代処理を施行する交代処理手順と、をコンピュータに実行させることを特徴とする。
発明によれば、エラー発生箇所に対して複数回のリードアクセスを試みてリードエラーが何度も再現される場合に、看過できない媒体欠陥があるとして交代処理を施行するので、重度や軽度の媒体欠陥に対してはリードエラーが何度も再現される結果、交代処理を施行するが、突発的な要因に対しては何度もリードエラーが再現されることがない結果、交代処理を施行しない。このため、リードエラーに対する交代処理の要否を精度良く判別することができ、交代処理を適切に施行することが可能である。すなわち、ディスク制御装置のパフォーマンス低下や二重故障を防止する一方で、ディスクにおける交代領域の無駄な消費を防止することが可能である。
また、発明によれば、リードエラーの発生時にエラー検査処理を実行するのではなく、エラー発生箇所を示す情報を記憶することで事後的にエラー検査処理を実行するので、リードエラーの発生時には上位装置への応答を優先することができ、応答パフォーマンスの低下を防止することが可能である。特に、上位装置からのアクセス要求が少ないディスクパトロール時にエラー処理を行うので、応答パフォーマンスの低下を確実に防止することが可能である。また、ディスクパトロール時であれば、リードアクセスの回数を大幅に増やしてもパフォーマンスが低下するおそれがなくなるので、リードアクセスの回数増加によって一層精度良く交代処理の要否を判別するようにすることが可能である。さらに、ディスクパトロール時にディスクの全面を診断するのではなく、ディスク上のエラー発生箇所のみを集中的に診断することになるので、効率的に診断を行うことが可能である。
また、発明によれば、リードエラーが何度も再現される場合でも、エラー発生箇所に対してデータを書き込んだ後に、再びリードアクセスを試みてリードエラーが再現されるか否かを検査した上で交代処理を施行するので、熱減磁作用によるリードエラーについては書き込み後のエラー検査でリードエラーが再現されなくなる結果、交代処理を施行しない。このため、ディスクにおける交代領域の無駄な消費を防止することが可能である。また、書き込み後のエラー検査においても、複数回のリードアクセスを試みてリードエラーが何度も再現されるか否かを検査するので、軽度の媒体欠陥や突発的な要因に対しても交代処理の要否を精度良く判別することが可能である。
また、発明によれば、書き込み後のエラー検査でリードエラーの再現がなくなった箇所については再検査成功箇所として記憶しておき、この再検査成功箇所でリードエラーが再び発生した場合にエラー検査を経ることなく交代処理を施行するので、今後もリードエラーが発生する可能性が高い箇所に対して積極的に交代処理が施行される結果、ディスク制御装置のパフォーマンス低下や二重故障を積極的に防止することが可能である。
また、発明によれば、交代処理が施行された箇所の周辺箇所についても同様のエラー検査を行った上で交代処理を施行するので、同様の媒体欠陥が生じている可能性が高い箇所についてエラー検査が行われて交代処理が施行される結果、後に発生したであろうリードエラーを事前に取り除くことができ、ディスク制御装置のパフォーマンス低下を積極的に防止することが可能である。
また、発明によれば、ライトエラー発生後の再ライトアクセスでデータが書き込まれた再ライト箇所についても同様のエラー検査を行った上で交代処理を施行するので、何かしらの欠陥が生じている可能性がある箇所についてエラー検査が行われて交代処理が施行される結果、後に発生したであろうリードエラーを事前に取り除くことができ、ディスク制御装置のパフォーマンス低下を積極的に防止することが可能である。
また、発明によれば、エラー発生箇所に対してデータを書き込んだ後に、リードアクセスを試みてリードエラーが再現される場合に、看過できない媒体欠陥があるとして交代処理を施行するので、熱減磁作用によるリードエラーについては書き込み後にリードエラーが再現されなくなる結果、交代処理を施行しない。このため、リードエラーに対する交代処理の要否を精度良く判別することができ、交代処理を適切に施行することが可能である。すなわち、ディスクにおける交代領域の無駄な消費を防止することが可能である。
また、発明によれば、書き込み後のエラー検査では、複数回のリードアクセスを試みてリードエラーが何度も再現されるか否かを検査するので、軽度の媒体欠陥や突発的な要因に対しても交代処理の要否を精度良く判別することができ、ディスク制御装置のパフォーマンス低下や二重故障を防止することが可能である。
以下に添付図面を参照して、この発明に係る記憶媒体制御装置、記憶媒体制御方法および記憶媒体制御プログラムの実施例を詳細に説明する。なお、以下では、いわゆるRAID1で構成されるディスク装置(二重化された複数のディスクを備えるディスク装置)を制御するディスク制御装置を実施例1として説明した後に、本発明に含まれる他の実施例を実施例2として説明する。
以下の実施例1では、実施例1に係るディスク制御装置の概要および特徴、ディスク制御装置の構成および処理の流れを順に説明し、最後に実施例1による効果を説明する。
[概要および特徴(実施例1)]
まず最初に、図1を用いて、実施例1に係るディスク制御装置の概要および特徴を説明する。図1は、実施例1に係るディスク制御装置の概要および特徴を説明するための図である。同図に示すように、このディスク制御装置10は、上位装置であるホストコンピュータ20からのリードアクセス要求やライトアクセス要求に応じて、二重化された複数のディスクを備えるディスク装置30に対してリードアクセスまたはライトアクセスする。
また、ディスク制御装置10は、リードアクセスによってデータが読み取られた場合には、読み取ったデータをホストコンピュータ20に転送するが、リードアクセスに対してディスク装置30からリードエラー(データが読み取れない旨を示すエラー)の応答があった場合には、読み取るべきデータを他のミラーディスクから読み取ることで復元し、復元したデータをホストコンピュータ20に転送する。さらに、ディスク制御装置10は、リードエラーが根本的な媒体欠陥によるものであるかを検査し、そうであるならば、リードエラーが発生したセクタに代えて新たなセクタを交代セクタとして割当て、この交代セクタに対して他のミラーディスクから読み取ったデータを書き込む。
同様に、ディスク制御装置10は、ライトアクセスによってデータが書き込めずにライトエラーが発生した場合には、再びライトアクセスを試みる。そして、再ライトアクセスでもライトエラーが発生した場合には、ライトエラーが発生したセクタとは別のセクタを新たな書込箇所として選択し、この新たなセクタに対してデータを書き込む。
なお、実施例1においては、ディスク上のリードエラーが発生したセクタを「エラー発生箇所」といい、かかるエラー発生箇所に代えて新たなセクタを交代セクタとして割当てて復元データを書き込む処理を「交代処理」といい、リードエラーの要因を検査して交代処理の要否を判断する処理を「エラー検査処理」という。また、ライトエラー発生後の再ライトアクセスでデータが書き込まれた箇所を「再ライト箇所」という。
このような概要を有するディスク制御装置10は、上記したエラー検査処理に主たる特徴があり、具体的には、エラー発生箇所に対して複数回のリードアクセスを試みてリードエラーが何度も再現されるかを検査し、何度もリードエラーが再現される場合には看過できない媒体欠陥があるとして交代処理を施行するようにしている。このため、リードエラーに対する交代処理の要否を精度良く判別することができ、交代処理を適切に施行することが可能になる。
この主たる特徴について簡単に説明すると、リードエラーの要因としては、図1に示すように、例えば、重い媒体欠陥、軽い媒体欠陥、突発的要因などがある。このうち、重い媒体欠陥については、明らかに交代処理が必要な場合であり、例えば、1回のリトライ(エラー発生箇所に対してリードアクセスを1回試みてリードエラーが再現される場合に交代処理を施行する手法)でエラー検査を行ったとしても、リードエラーが再現されるので、適切に交代処理が施行される。
しかしながら、軽い媒体欠陥がリードエラーの要因である場合には、ディスク制御装置10のパフォーマンス低下や二重故障を防止する観点から交代処理が必要であるにもかかわらず、1回のリトライでは場合によってリードエラーが再現されないことがあるので、適切に交代処理が施行されない場合がある。その一方、1回のリトライに対して突発的な要因でリードエラーが応答される場合には、交代処理が必要でないにもかかわらず、交代処理が施行されるので、ディスクにおける交代領域を無駄に消費してしまう。
そこで、ディスク制御装置10では、エラー発生箇所に対して複数回(例えば数十回、数百回)のリードアクセスを試みてリードエラーが何度も(例えば2回以上)再現される場合に交代処理を施行するようにしている。このため、重度や軽度の媒体欠陥に対してはリードエラーが何度も再現される結果、交代処理を施行するが、突発的な要因に対しては何度もリードエラーが再現されることがない結果、交代処理を施行しない。したがって、上記したように、リードエラーに対する交代処理の要否を精度良く判別することができ、交代処理を適切に施行することが可能になる。すなわち、ディスク制御装置10のパフォーマンス低下や二重故障を防止する一方で、ディスクにおける交代領域の無駄な消費を防止することが可能である。
ところで、リードエラーの要因としては、図1に示すように、熱減磁作用によるものもある。この場合には、ディスクのヘッドが媒体に接触する衝撃でデータが消失しただけであり、データを再度書き込めば正常にデータを読み取ることができるので、交代処理が本来的には必要でない。しかしながら、データが消失している状態で、1回もしくは複数回のリードアクセスをエラー検査として行っても、リードエラーが常に再現され、交代処理が施行されるので、ディスクにおける交代領域を無駄に消費してしまう。
そこで、ディスク制御装置10では、上記した主たる特徴の他に、リードエラーが何度も再現される場合でも、エラー発生箇所に対してデータを書き込んだ後に、再びリードアクセスを試みてリードエラーが再現されるか否かを検査した上で交代処理を施行するようにしている。このようにすれば、熱減磁作用によるリードエラーについては書き込み後のエラー検査でリードエラーが再現されなくなる結果、交代処理が施行されなくなるので、ディスクにおける交代領域の無駄な消費を防止することが可能である。
なお、ディスク制御装置10では、このような特徴の他に、上記した書き込み後のエラー検査でリードエラーの再現がなくなった箇所については再検査成功箇所として記憶しておき、この再検査成功箇所でリードエラーが再び発生した場合にエラー検査を経ることなく交代処理を施行する点、リードエラーの発生時にエラー検査処理を実行するのではなく、エラー発生箇所を示す情報を記憶することで事後的にエラー検査処理を実行する点、交代処理が施行された箇所の周辺箇所についても同様のエラー検査を行った上で交代処理を施行する点、ライトエラー発生後の再ライトアクセスでデータが書き込まれた再ライト箇所についても同様のエラー検査を行った上で交代処理を施行する点にも特徴がある。
[ディスク制御装置(実施例1)]
続いて、図2〜図5を用いて、実施例1に係るディスク制御装置10の構成を説明する。図2は、実施例1に係るディスク制御装置10の構成を示すブロック図であり、図3は、ディスク上のトラックおよびセクタを説明するための図であり、図4は、エラー発生箇所記憶部を説明するための図であり、図5は、再検査成功箇所記憶部を説明するための図である。
図2に示すように、ディスク制御装置10は、SCSIバスやPCIバスなどを介して、ホストコンピュータ20およびディスク装置30とそれぞれ接続される。ここで、ホストコンピュータ20は、ディスク制御装置10に対してリードアクセス要求やライトアクセス要求を送出する上位装置である。
また、ディスク装置30は、図2に示すように、二重化された複数のディスクを所定のバスで接続して構成される。そして、各ディスクは、回転する円盤状の記録媒体(磁気記録媒体や光記録媒体、光磁気記録媒体など)や、その記録媒体上を半径方向に移動してデータをリード/ライトするヘッドなどを備えて構成される。また、ディスク上では、図3に例示するように、記録媒体がトラックと呼ばれる複数の同心円状の領域に区切られ、さらに、各トラックはセクタと呼ばれる単位に区切られ、かかるセクタ単位(一般的に512バイト単位)でデータの読み書きが行われる。
一方、ディスク制御装置10は、図2に示すように、ホスト転送制御部11と、ディスク転送制御部12と、キャッシュ13と、キャッシュ制御部14と、記憶部15と、制御部16とを所定のバスで接続して構成される。以下に、これらの各部の処理を説明する。
このうち、ホスト転送制御部11は、ホストコンピュータ10との間におけるデータ転送を制御するためのDMA(Direct Memory Access)を含むプロトコルプロセッサである。例えば、ホストコンピュータ20からリードアクセス要求やライトアクセス要求を受け取ると、制御部16(後述するアクセス制御部16a)に対して割り込み要求を送出する。また、ライトアクセス要求に応じたデータ転送指示をアクセス制御部16aから受け取ると、ホストコンピュータ20から送出された書き込みデータをキャッシュ13に格納する。さらに、リードアクセス要求に応じて読み取られたデータ(さらには、リードエラーの発生に起因して復元されたデータ)がキャッシュ13に格納されると、アクセス制御部16aからの指示に応じて、キャッシュ13に格納されたデータをホストコンピュータ20に転送する。
ディスク転送制御部12は、ディスク装置30との間におけるデータ転送を制御するためのディスク側DMAを含むプロトコルプロセッサである。例えば、ライトアクセス要求に伴って書き込みデータがキャッシュ13に格納されると、アクセス制御部16aからの指示に応じて、キャッシュ13に格納されたデータをディスク装置10における所定ディスクの所定トラックの所定セクタに書き込む。また、リードアクセス要求に応じたリードアクセス指示をアクセス制御部16aから受け取ると、ディスク装置10における所定ディスクの所定トラックの所定セクタからリードアクセス要求に係るデータを読み取り、読み取ったデータをキャッシュ13に格納する。さらに、リードエラーが発生すると、アクセス制御部16aからの指示に応じて、ミラーディスクから代わりのデータを読み取り、これを復元されたデータとしてキャッシュ13に格納する。
キャッシュ13は、上記のように、ホストコンピュータ20から送出された書き込みデータや、ディスク装置30から読み取られた読み取りデータ(さらには、リードエラーの発生に起因して復元されたデータ)を一時的に格納するメモリである。そして、キャッシュ制御部14は、かかるキャッシュ13に対するデータの読み書きを制御するプロセッサである。
記憶部15は、制御部16による各種処理に必要なデータやプログラムを格納するメモリであり、特に本発明に密接に関連するものとしては、図2に示すように、エラー発生箇所記憶部15aと、再検査成功箇所記憶部15bとを備える。なお、エラー発生箇所記憶部15aは特許請求の範囲に記載の「エラー発生箇所記憶手段」に対応し、再検査成功箇所記憶部15bは同じく「再検査成功箇所記憶手段」に対応する。
かかる記憶部15のなかで、エラー発生箇所記憶部15aは、ディスク上のエラー発生箇所を示す情報を記憶する手段であり、具体的には、図4に例示するように、ディスク番号、トラック番号およびセクタ番号からなる位置情報を記憶する。ここで、エラー発生箇所記憶部15aに記憶されるエラー発生箇所としては、リードエラーが発生した箇所だけでなく、交代処理が施行された箇所の周辺箇所(例えば、図3に示すように、交代処理が施行された箇所に隣接する8つの箇所)や、ライトエラー発生後の再ライトアクセスでデータが書き込まれた再ライト箇所も記憶される。これは、かかる周辺箇所や再ライト箇所に対しても、通常のエラー発生箇所と同様のエラー検査を実施できるようにするためである。また、エラー発生箇所記憶部15aに記憶されたエラー発生箇所の情報は、エラー検査でリードエラーが再現されなかった場合や、交代処理が施行された場合に削除される。
また、再検査成功箇所記憶部15bは、後述する書き込み後のエラー検査でリードエラーの再現がなくなったエラー発生箇所を示す情報を再検査成功箇所として記憶する手段であり、具体的には、図5に例示するように、ディスク番号、トラック番号およびセクタ番号からなる位置情報を記憶する。ここで、再検査成功箇所記憶部15bには、エラー発生箇所記憶部15aに記憶されたエラー発生箇所のうち、書き込み後のエラー検査でリードエラーの再現がなくなった箇所が記憶される。これは、かかる再検査成功箇所でリードエラーが再び発生した場合にエラー検査を経ることなく交代処理を施行できるようにするためである。また、再検査成功箇所記憶部15bに記憶された再検査成功箇所の情報は、交代処理が施行された場合に削除される。
ディスク制御装置10の説明に戻ると、制御部16は、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、これらによって種々の処理を実行するプロセッサであり、特に本発明に密接に関連するものとしては、図2に示すように、アクセス制御部16aと、パトロール部16bと、エラー検査部16cと、データ書込部16dと、交代処理部16eとを備える。なお、エラー検査部16cは特許請求の範囲に記載の「エラー検査手段」に対応し、データ書込部16dは同じく「データ書込手段」に対応し、交代処理部16eは同じく「交代処理手段」に対応する。
かかる制御部16のなかで、アクセス制御部16aは、上記したホスト転送制御部11、ディスク転送制御部12、キャッシュ13およびキャッシュ制御部14を制御して、ホストコンピュータ20からのリードアクセス要求やライトアクセス要求を処理する処理部である。ここで、かかるアクセス制御部16aによるアクセス制御処理において、アクセス制御部16aは、ディスク制御装置10からリードエラーの応答があった場合には、リードエラーが発生した箇所を示す情報をエラー発生箇所記憶部15aに登録し、また、ライトエラー発生後の再ライトアクセスでデータが書き込まれた場合にも、この再ライト箇所を示す情報をエラー発生箇所記憶部15aに登録する。なお、かかるアクセス制御処理の詳細については図6を用いて後に説明する。
パトロール部16bは、ディスク装置30の各ディスクの全面を巡回して異常を検出し、かかる異常が検出された箇所に対して診断や修復を施行する処理部である。このパトロール処理は、後述するエラー検査処理において、エラー発生箇所記憶部15aにエラー発生箇所が登録されていない場合に施行される。なお、このパトロール処理によって、アクセス頻度の低い箇所における異常も早期に検出されて修復が施されることになる。
エラー検査部16cは、上記のエラー発生箇所記憶部15aに記憶されたエラー発生箇所に対して複数回のリードアクセスを試みてリードエラーが複数回再現されるか否かを検査する処理部である。ここで、かかるエラー検査部16cによるエラー検査処理は、ホストコンピュータ20からのアクセス要求が少ないディスクパトロール時に実行される。また、かかるエラー検査でリードエラーが何度も再現される場合でも、後述するデータ書込部16dによってエラー発生箇所に対してデータを書き込んで再びエラー検査を行う。そして、書き込み後のエラー検査でリードエラーの再現がなくなった場合には、この再検査成功箇所を示す情報を再検査成功箇所記憶部15bに登録する。なお、かかるエラー検査処理の詳細については図7を用いて後に説明する。
データ書込部16dは、上記のエラー検査部16cによるエラー検査処理において、エラー発生箇所に対するエラー検査でリードエラーが何度も再現される場合に、かかるエラー発生箇所に対してデータを書き込む処理部である。具体的には、ディスク転送制御部12およびキャッシュ制御部14を制御して、エラー発生箇所にあるべきデータをミラーディスクから代わりに読み取ってキャッシュ13に一旦格納した後、これをエラー発生箇所に対して書き込む。
交代処理部16eは、上記のエラー検査部16cによるエラー検査処理において、書き込み後のエラー検査でもリードエラーが何度も再現されるエラー発生箇所に代えて新たなセクタを交代セクタとして割当て、この交代セクタにデータを書き込む処理部である。具体的には、上記のデータ書込部16dと同様、ディスク転送制御部12およびキャッシュ制御部14を制御して、エラー発生箇所にあるべきデータをミラーディスクから代わりに読み取ってキャッシュ13に一旦格納した後、これを交代セクタに対して書き込む。
[アクセス制御処理(実施例1)]
次に、実施例1に係るディスク制御装置10によるアクセス制御処理を説明する。図6は、実施例1におけるアクセス制御処理の手順を示すフローチャートである。なお、以下では、ディスク制御装置10における制御部16のアクセス制御部16aによる処理としてアクセス制御処理を説明する。
図6に示すように、アクセス制御部16aは、ホストコンピュータ20が送出したアクセス要求をホスト転送制御部11から受け取ると(ステップS601肯定)、かかるアクセス要求を制御部16の内部メモリに格納し、これがリードアクセス要求であるかライトアクセス要求であるかを判別する(ステップS602)。
ここで、アクセス要求がリードアクセス要求であった場合には(ステップS602肯定)、アクセス制御部16aは、ディスク転送制御部12を制御してディスクにリードアクセスし、リードアクセス要求に係るデータをディスク装置10における所定ディスクの所定トラックの所定セクタから読み取る(ステップS603)。
そして、かかるリードアクセスに対してディスク装置30からリードエラーの応答がなく、リードが成功した場合には(ステップS604肯定)、アクセス制御部16aは、ディスク転送制御部12およびキャッシュ制御部14を制御して、ディスク装置30から読み取ったデータをキャッシュ13に格納する(ステップS605)。さらに、アクセス制御部16aは、ホスト転送制御部11を制御して、キャッシュ13に格納された読み取りデータをホストコンピュータ20に転送した後(ステップS606)、図6に示すようにアクセス制御処理を終了する。
これとは反対に、リードアクセスに対してディスク装置30からリードエラーの応答があった場合には(ステップS604否定)、アクセス制御部16aは、ディスク転送制御部12を介してミラーディスクにリードアクセスし、代わりのデータを読み取ってエラー発生箇所にあるべきデータを復元する(ステップS607)。さらに、アクセス制御部16aは、ディスク転送制御部12およびキャッシュ制御部14を制御して、復元されたデータをキャッシュ13に格納するとともに(ステップS608)、リードエラーが発生したエラー発生箇所をエラー発生箇所記憶部15aに登録する(ステップS609)。その後、アクセス制御部16aは、ホスト転送制御部11を制御して、キャッシュ13に格納されたデータをホストコンピュータ20に転送した後(ステップS606)、図6に示すようにアクセス制御処理を終了する。
ここで、上記のステップS602の説明に戻ると、アクセス要求がライトアクセス要求であった場合には(ステップS602否定)、アクセス制御部16aは、ホスト転送制御部11を制御して、ホストコンピュータ20から送出された書き込みデータをキャッシュ13に格納する(ステップS610)。その上で、アクセス制御部16aは、ディスク転送制御部12を制御してディスクにライトアクセスし、キャッシュ13に格納されたデータをディスク装置10における所定ディスクの所定トラックの所定セクタに書き込む(ステップS611)。
そして、かかるライトアクセスに対してディスク装置30からライトエラーの応答がなく、ライトが成功した場合には(ステップS612肯定)、アクセス制御部16aは、図6に示す通り、そのままアクセス制御処理を終了する。その一方、ディスク装置30からライトエラーの応答があった場合には(ステップS612否定)、ディスク転送制御部12を制御してディスクに対するライトアクセスを再び試みる(ステップS613)。
ここで、二度目のライトアクセスでライトが成功した場合には(ステップS614肯定)、アクセス制御部16aは、かかる再ライトアクセスでデータが書き込まれた再ライト箇所をエラー発生箇所記憶部15aに登録した後(ステップS615)、図6に示すようにアクセス制御処理を終了する。
これとは反対に、再ライトアクセスに対してもディスク装置30からライトエラーの応答があった場合には(ステップS614否定)、アクセス制御部16aは、ライトエラーが発生したセクタとは別のセクタを新たな書込箇所として選択した後(ステップS616)、上記したステップS611に戻り、かかる新たなセクタに対してライトアクセスを改めて試みる(ステップS611)。すなわち、ホストコンピュータ20から送出された書き込みデータがいずれかのセクタに書き込まれるまで(ステップS612肯定またはステップS614肯定)、新たなセクタが選択されてライトアクセスが試みられる。
[エラー検査処理(実施例1)]
続いて、実施例1に係るディスク制御装置10によるエラー検査処理を説明する。図7は、実施例1におけるエラー検査処理の手順を示すフローチャートである。なお、以下では、ディスク制御装置10における制御部16のエラー検査部16cによる処理としてエラー検査処理を説明する。
図7に示すように、エラー検査部16cは、ホストコンピュータ20からのアクセス要求が少ない状況で実施されるディスクパトロールの開始時になると(ステップS701肯定)、エラー発生箇所記憶部15aにエラー発生箇所を示す情報が登録されているか否かを判別する(ステップS702)。
ここで、エラー発生箇所記憶部15aにエラー発生箇所の登録がある場合には(ステップS702肯定)、エラー検査部16cは、エラー発生箇所記憶部15aに記憶されたエラー発生箇所のなかから一つのエラー発生箇所をエラー検査対象として選択する(ステップS703)。なお、かかる選択の手法は任意であり、例えば、エラー発生箇所記憶部15aに登録された順番に従って古い順に選択する手法などがある。
そして、エラー検査部16cは、エラー発生箇所記憶部15aから選択したエラー検出箇所が再検査成功箇所として再検査成功箇所記憶部15bにも登録されているか否かを判別する(ステップS704)。ここで、エラー検出箇所が再検査成功箇所に該当する場合には(ステップS704肯定)、エラー検査部16cは、交代処理部16eに指示して、エラー検出箇所に対して交代処理を施行する(ステップS705)。具体的には、エラー検査部16cから指示を受けた交代処理部16eが、ディスク転送制御部12およびキャッシュ制御部14を制御して、エラー発生箇所にあるべきデータをミラーディスクから代わりに読み取ってキャッシュ13に一旦格納した後、これを交代セクタに対して書き込む。
さらに、エラー検査部16cは、交代処理が施行された箇所の周辺箇所(例えば、図3に示すように、交代処理が施行された箇所に隣接する8つの箇所)を示す情報を、エラー発生箇所記憶部15aに登録するとともに(ステップS706)、交代処理が施行されたエラー発生箇所に対応する情報をエラー発生箇所記憶部15aおよび再検査成功箇所記憶部15bからそれぞれ削除する(ステップS707)。
その後、エラー検査部16cは、エラー発生箇所記憶部15aからエラー発生箇所の登録がなくなったか否かを判別し(ステップS708)、エラー発生箇所の登録がある場合には(ステップS708否定)、上記のステップS703に戻って、エラー発生箇所記憶部15aのなかから一つのエラー発生箇所を新たなエラー検査対象として選択するが(ステップS703)、エラー発生箇所の登録がない場合には(ステップS708肯定)、図7に示すように、エラー検査処理を終了する。
ここで、上記のステップS704の説明に戻ると、エラー発生箇所記憶部15aから選択したエラー検出箇所が再検査成功箇所に該当しない場合には(ステップS704否定)、エラー検査部16cは、ディスク転送制御部12を制御してディスク上のエラー発生箇所に対して複数回のリードアクセスを試みることで、リードエラーが複数回再現されるか否かを検査する(ステップS709)。例えば、数十回または数百回のリードアクセスを試みてリードエラーが2回以上再現されるかを検査する。
かかるエラー検査に対してリードエラーが何度も再現される場合には(ステップS710肯定)、エラー検査部16cは、データ書込部16dに指示して、エラー検出箇所に対してデータを書き込む(ステップS711)。具体的には、エラー検査部16cから指示を受けたデータ書込部16dは、ディスク転送制御部12およびキャッシュ制御部14を制御して、エラー発生箇所にあるべきデータをミラーディスクから代わりに読み取ってキャッシュ13に一旦格納した後、これをエラー発生箇所に対して書き込む。
この書き込みに続いて、エラー検査部16cは、ディスク転送制御部12を制御してディスク上のエラー発生箇所に対して再び複数回のリードアクセスを試みることで、リードエラーが複数回再現されるか否かを再び検査する(ステップS712)。そして、かかる書き込み後のエラー検査に対してもリードエラーが何度も再現される場合には(ステップS713肯定)、エラー検査部16cは、交代処理部16eに指示して、エラー検出箇所に対して交代処理を施行する(ステップS714)。
さらに、かかる交代処理に続いて、エラー検査部16cは、交代処理が施行された箇所の周辺箇所を示す情報を、エラー発生箇所記憶部15aに登録するとともに(ステップS715)、交代処理が施行されたエラー発生箇所に対応する情報をエラー発生箇所記憶部15aから削除する(ステップS716)。その後、エラー検査部16cは、図7に示すように、上記したステップS708の処理、すなわち、エラー発生箇所記憶部15aからエラー発生箇所の登録がなくなったか否かを判別する処理に移行する(ステップS708)。
ここで、上記のステップS713の説明に戻ると、書き込み後のエラー検査に対してリードエラーが何度も再現されることがなかった場合には(ステップS713否定)、エラー検査部16cは、このエラー検査が行われたエラー発生箇所を示す情報を再検査成功箇所として再検査成功箇所記憶部15bに登録する一方で(ステップS717)、かかるエラー発生箇所に対応する情報をエラー発生箇所記憶部15aから削除する(ステップS716)。その後、エラー検査部16cは、図7に示すように、上記したステップS708の処理に移行する。
また、上記のステップS710の説明に戻ると、書き込み前のエラー検査に対してリードエラーが何度も再現されることがなかった場合には(ステップS710否定)、エラー検査部16cは、このエラー検査が行われたエラー発生箇所に対応する情報をエラー発生箇所記憶部15aから削除した後に(ステップS716)、図7に示すように、上記したステップS708の処理に移行する。
さらに、上記のステップS702の説明に戻ると、ディスクパトロールの開始時において、エラー発生箇所記憶部15aにエラー発生箇所を示す情報が登録されていない場合には(ステップS702否定)、エラー検査部16cは、パトロール部16bに指示して、パトロール処理を施行した後(ステップS718)、図7に示すように、エラー検査処理を終了する。具体的には、エラー検査部16cから指示を受けたパトロール部16bが、ディスク装置30の各ディスクの全面を巡回して異常を検出し、かかる異常が検出された箇所に対して診断や修復を施行した後、エラー検査部16cは、次回のディスクパトロール開始時まで待機状態となる。
[実施例1の効果]
上述してきたように、実施例1によれば、エラー発生箇所に対して複数回のリードアクセスを試みてリードエラーが何度も再現される場合に、看過できない媒体欠陥があるとして交代処理を施行するので、重度や軽度の媒体欠陥に対してはリードエラーが何度も再現される結果、交代処理を施行するが、突発的な要因に対しては何度もリードエラーが再現されることがない結果、交代処理を施行しない。このため、リードエラーに対する交代処理の要否を精度良く判別することができ、交代処理を適切に施行することが可能である。すなわち、ディスク制御装置10のパフォーマンス低下や二重故障を防止する一方で、ディスクにおける交代領域の無駄な消費を防止することが可能である。
また、実施例1によれば、リードエラーの発生時にエラー検査処理を実行するのではなく、エラー発生箇所を示す情報をエラー発生箇所記憶部15aに登録することで事後的にエラー検査処理を実行するので、リードエラーの発生時にはホストコンピュータ20への応答を優先することができ、応答パフォーマンスの低下を防止することが可能である。特に、ホストコンピュータ20からのアクセス要求が少ないディスクパトロール時にエラー処理を行うので、応答パフォーマンスの低下を確実に防止することが可能である。また、ディスクパトロール時であれば、リードアクセスの回数を大幅に増やしてもパフォーマンスが低下するおそれがなくなるので、リードアクセスの回数増加によって一層精度良く交代処理の要否を判別するようにすることが可能である。さらに、ディスクパトロール時にディスクの全面を診断するのではなく、ディスク上のエラー発生箇所のみを集中的に診断することになるので、効率的に診断を行うことが可能である。
また、実施例1によれば、リードエラーが何度も再現される場合でも、エラー発生箇所に対してデータを書き込んだ後に、再びリードアクセスを試みてリードエラーが再現されるか否かを検査した上で交代処理を施行するので、熱減磁作用によるリードエラーについては書き込み後のエラー検査でリードエラーが再現されなくなる結果、交代処理を施行しない。このため、ディスクにおける交代領域の無駄な消費を防止することが可能である。また、書き込み後のエラー検査においても、複数回のリードアクセスを試みてリードエラーが何度も再現されるか否かを検査するので、軽度の媒体欠陥や突発的な要因に対しても交代処理の要否を精度良く判別することが可能である。
また、実施例1によれば、書き込み後のエラー検査でリードエラーの再現がなくなった箇所については再検査成功箇所として再検査成功箇所記憶部15bに登録しておき、この再検査成功箇所でリードエラーが再び発生した場合にエラー検査を経ることなく交代処理を施行するので、今後もリードエラーが発生する可能性が高い箇所に対して積極的に交代処理が施行される結果、ディスク制御装置10のパフォーマンス低下や二重故障を積極的に防止することが可能である。
また、実施例1によれば、交代処理が施行された箇所の周辺箇所についても同様のエラー検査を行った上で交代処理を施行するので、同様の媒体欠陥が生じている可能性が高い箇所についてエラー検査が行われて交代処理が施行される結果、後に発生したであろうリードエラーを事前に取り除くことができ、ディスク制御装置10のパフォーマンス低下を積極的に防止することが可能である。
また、実施例1によれば、ライトエラー発生後の再ライトアクセスでデータが書き込まれた再ライト箇所についても同様のエラー検査を行った上で交代処理を施行するので、何かしらの欠陥が生じている可能性がある箇所についてエラー検査が行われて交代処理が施行される結果、後に発生したであろうリードエラーを事前に取り除くことができ、ディスク制御装置10のパフォーマンス低下を積極的に防止することが可能である。
さて、これまで実施例1に係るディスク制御装置10について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下では実施例2に係るディスク制御装置として、種々の異なる実施例を(1)〜(5)に区分けして説明する。
(1)エラー検査のタイミング
上記の実施例1では、ディスクパトロールの開始時にエラー検査処理を実行する場合を説明したが、図8に示すように、本発明はこれに限定されるものではなく、他の事後的タイミングやリードエラーの発生直後など、任意のタイミングでエラー検査処理を実行するようにしてもよい。なお、図8は、エラー検査のタイミング、対象および手法を説明するための図である。
(2)エラー検査の対象
上記の実施例1では、リードエラーが発生した箇所だけでなく、交代処理が施行された箇所の周辺箇所や、ライトエラー発生後の再ライトアクセスでデータが書き込まれた再ライト箇所についてもエラー検査の対象とする場合を説明したが、図8に示すように、本発明はこれに限定されるものではなく、リードエラー発生箇所のみをエラー検査の対象としてもよく、また、リードエラー発生箇所および交代処理の周辺箇所をエラー検査の対象としてもよく、さらに、リードエラー発生箇所および再ライト箇所をエラー検査の対象としてもよい。
(3)エラー検査の手法
上記の実施例1では、複数回のリードアクセスによるエラー検査の後にデータを書き込んで再び複数回のリードアクセスによるエラー検査を行うとともに、再検査成功箇所でリードエラーが再び発生した場合にエラー検査を経ることなく交代処理を施行する場合を説明したが、図8に示すように、本発明はこれに限定されるものではなく、例えば、データ書込後においては1回のリードアクセスのみでエラー検査を行うようにしてもよく、また、再検査成功箇所に基づいた交代処理はそもそも実行しないようにしてもよく、さらには、データ書込後のエラー検査は行わず、複数回のリードアクセスによるエラー検査のみを行うようにしてもよい。このように、エラー検査の手法を簡素化することで、エラー検査処理に要する時間を短縮化することも可能になる。
また、再検査成功箇所に基づいた交代処理を実行するような場合には、再検査成功箇所でリードエラーが再び1回発生することを交代処理の実行条件にするようにしてもよく、さらに、本発明はこれに限定されるものではなく、例えば、再検査成功箇所でリードエラーが複数回数(例えば3回)再発生することを交代処理の実行条件にするようにしてもよい。つまり、後者の場合には、エラー発生箇所記憶部15aから選択したエラー検出箇所が再検査成功箇所に該当する場合でも、再検査成功箇所におけるリードエラーの再発生回数が所定の回数に達していなければ、交代処理をいきなり行うのではなく、上記したエラー検査(複数回のリードアクセスを行った後にデータを書き込んで再び複数回のリードアクセスを行うエラー検査)を行う。
ところで、上記の実施例1では、複数回のリードアクセスによるエラー検査の後にデータを書き込んで再び複数回のリードアクセスによるエラー検査を行う場合を説明したが、図8に示すように、本発明はこれに限定されるものではなく、エラー発生箇所に対して最初にデータを書き込んでからリードアクセスによるエラー検査を行うようにしてもよい。この場合でも、熱減磁作用によるリードエラーについては書き込み後にリードエラーが再現されなくなる結果、交代処理を施行しないので、リードエラーに対する交代処理の要否を精度良く判別することができ、交代処理を適切に施行することが可能である。すなわち、ディスクにおける交代領域の無駄な消費を防止することが可能である。
また、エラー発生箇所に対して最初にデータを書き込んでからエラー検査を行うような場合には、1回のリードアクセスによるエラー検査を行うようにしてもよく、さらに、本発明はこれに限定されるものではなく、複数回のリードアクセスによるエラー検査を行うようにしてもよい。後者の場合には、軽度の媒体欠陥や突発的な要因に対しても交代処理の要否を精度良く判別することができ、ディスク制御装置10のパフォーマンス低下や二重故障を防止することが可能である。
(4)装置構成や処理手順
上記の実施例1では、いわゆるRAID1で構成されるディスク装置30を制御するディスク制御装置10に本発明を適用する場合を説明したが、本発明はこれに限定されるものではなく、他のRAID(例えばRAID2〜5、RAID0)で構成されるディスク装置30を制御するディスク制御装置10に対しても本発明を同様に適用することができる。なお、他のRAIDで構成されるディスク装置30であっても、リードアクセスに対してディスク装置30から返ってくるリードエラー(データが読み取れない旨を示すエラー)が本発明でいうエラー処理の対象であって、いわゆるビット固着等に起因する読み取りデータの正誤に係るエラーは、本発明でいうエラー処理の対象ではない。
また、図2に示したディスク制御装置10の各構成要素は機能的な区分けであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、ディスク制御装置10の分散や統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
また、上記の実施例1において説明したアクセス制御処理やエラー検査処理の手順については、特記する場合を除いて任意に変更することができる。例えば、図6で説明したアクセス制御処理においては、ステップS608の処理(復元したデータをキャッシュに格納する処理)およびステップS609の処理(エラー発生箇所を登録する処理)について実行順序を入れ替えてもよく、また、図7に示したエラー検査処理においては、ステップS705の処理(交代処理)、ステップS706の処理(エラー発生箇所の周辺箇所を登録する処理)およびステップS707の処理(エラー発生箇所を削除する処理)について実行順序を入れ替えてもよく、これと同様に、ステップS714からS716に至る処理や、ステップS717からS716に至る処理についても実行順序を入れ替えてもよい。
(5)ディスク制御プログラム
ところで、上記の実施例1で説明した各種の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。そこで、以下では、図9を用いて、上記の実施例1と同様の機能を有するディスク制御プログラムを実行するコンピュータの一例を説明する。図9は、ディスク制御プログラムを実行するコンピュータを示す図である。
同図に示すように、ディスク制御装置としてのコンピュータ40は、キャッシュ41、RAM42、フラッシュメモリ43、ROM44およびCPU45をバス46で接続して構成される。ここで、ROM44には、上記の実施例1と同様の機能を発揮するディスク制御プログラム、つまり、図9に示すように、ホスト転送制御プログラム44a、ディスク転送制御プログラム44b、キャッシュ制御プログラム44c、アクセス制御プログラム44d、パトロールプログラム44e、エラー検査プログラム44f、データ書込プログラム44gおよび交代処理プログラム44hがあらかじめ記憶されている。
そして、CPU45は、これらのプログラム44a〜44hを読み出して実行することで、図9に示すように、各プログラム44a〜44hは、ホスト転送制御プロセス45a、ディスク転送制御プロセス45b、キャッシュ制御プロセス45c、アクセス制御プロセス45d、パトロールプロセス45e、エラー検査プロセス45f、データ書込プロセス45gおよび交代処理プロセス45hとなる。なお、各プロセス45a〜45hは、図2に示したホスト転送制御部11、ディスク転送制御部12、キャッシュ制御部14、アクセス制御部16a、パトロール部16b、エラー検査部16c、データ書込部16dおよび交代処理部16eにそれぞれ対応する。
また、フラッシュメモリ43には、図9に示すように、ディスク上のエラー発生箇所を示す情報を記憶するエラー発生箇所テーブル43aと、ディスク上の再検査成功箇所を示す情報を記憶する再検査成功箇所テーブル43bとが設けられる。そして、CPU45は、エラー発生箇所テーブル43aおよび再検査成功箇所テーブル43bに対して情報の登録および削除を行うとともに、エラー発生箇所テーブル43aおよび再検査成功箇所テーブル43bから情報を読み出してRAM42に格納し、RAM42に格納された情報に基づいてエラー検査処理等を実行する。なお、エラー発生箇所テーブル43aおよび再検査成功箇所テーブル43bは、図2に示したエラー発生箇所記憶部15aおよび再検査成功箇所記憶部15bにそれぞれ対応する。
そして、キャッシュ41は、ホストコンピュータ20から送出された書き込みデータや、ディスク装置30から読み取られた読み取りデータ(さらには、リードエラーの発生に起因して復元されたデータ)を一時的に格納するメモリである。なお、かかるキャッシュ41は、図2に示したキャッシュ13に対応する。
ところで、上記した各プログラム44a〜44hについては、必ずしもROM44に記憶させておく必要はなく、例えば、コンピュータ40に挿入されるフレキシブルディスク(FD)、CD−ROM、MOディスク、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」、または、コンピュータ40の内外に備えられるハードディスクドライブ(HDD)などの「固定用の物理媒体」、さらには、公衆回線、インターネット、LAN、WANなどを介してコンピュータ40に接続される「他のコンピュータ(またはサーバ)」に記憶させておき、コンピュータ40がこれらからプログラムを読み出して実行するようにしてもよい。
(付記1)上位装置からのアクセス要求に応じて記憶媒体にリードアクセスまたはライトアクセスするとともに、リードアクセスに際して発生したリードエラーを検査して交代処理を施行する記憶媒体制御装置であって、
前記リードエラーが発生した記憶媒体上のエラー発生箇所に対して複数回のリードアクセスを試みてリードエラーが複数回再現されるか否かを検査するエラー検査手段と、
前記エラー検査手段による検査においてリードエラーが複数回再現された場合に、前記エラー発生箇所に対して交代処理を施行する交代処理手段と、
を備えたことを特徴とする記憶媒体制御装置。
(付記2)前記リードエラーの発生に応じて、当該リードエラーが発生した記憶媒体上のエラー発生箇所を示す情報を記憶するエラー発生箇所記憶手段を備え、
前記エラー検査手段は、記憶媒体パトロール時に、前記エラー発生箇所記憶手段に記憶されたエラー発生箇所を示す情報に基づいて、当該エラー発生箇所に対して複数回のリードアクセスを試みてリードエラーが複数回再現されるか否かを検査することを特徴とする付記1に記載の記憶媒体制御装置。
(付記3)前記エラー検査手段による検査においてリードエラーが複数回再現された場合に、前記エラー発生箇所に対してデータを書き込むデータ書込手段をさらに備え、
前記エラー検査手段は、前記データ書込手段によってデータが書き込まれたエラー発生箇所に対して再び複数回のリードアクセスを試みてリードエラーが複数回再現されるか否かを検査し、
前記交代処理手段は、前記エラー検査手段による再度の検査においてリードエラーが複数回再現された場合に、前記エラー発生箇所に対して交代処理を施行することを特徴とする付記1または2に記載の記憶媒体制御装置。
(付記4)前記エラー検査手段による再度の検査においてリードエラーが複数回再現されなかった場合に、前記エラー発生箇所を再検査成功箇所として記憶する再検査成功箇所記憶手段をさらに備え、
前記交代処理手段は、前記再検査成功箇所記憶手段に記憶された再検査成功箇所について再びリードエラーが発生した場合に、当該再検査成功箇所に対して交代処理を施行することを特徴とする付記3に記載の記憶媒体制御装置。
(付記5)前記エラー検査手段は、前記交代処理手段によって交代処理が施行されたエラー発生箇所の周辺に位置する周辺箇所についても、複数回のリードアクセスを試みてリードエラーが複数回発生するか否かを検査し、
前記交代処理手段は、前記エラー検査手段による検査において前記周辺箇所についてリードエラーが複数回発生した場合には、当該周辺箇所に対しても交代処理を施行することを特徴とする付記1〜4のいずれか一つに記載の記憶媒体制御装置。
(付記6)前記エラー検査手段は、ライトエラー発生後の再ライトアクセスでデータが書き込まれた再ライト箇所についても、複数回のリードアクセスを試みてリードエラーが複数回発生するか否かを検査し、
前記交代処理手段は、前記エラー検査手段による検査において前記再ライト箇所についてリードエラーが複数回発生した場合には、当該再ライト箇所に対しても交代処理を施行することを特徴とする付記1〜5のいずれか一つに記載の記憶媒体制御装置。
(付記7)上位装置からのアクセス要求に応じて記憶媒体にリードアクセスまたはライトアクセスするとともに、リードアクセスに際して発生したリードエラーを検査して交代処理を施行する記憶媒体制御装置であって、
前記リードエラーが発生した記憶媒体上のエラー発生箇所に対してデータを書き込むデータ書込手段と、
前記データ書込手段によってデータが書き込まれたエラー発生箇所に対してリードアクセスを試みてリードエラーが再現されるか否かを検査するエラー検査手段と、
前記エラー検査手段による検査においてリードエラーが再現された場合に、前記エラー発生箇所に対して交代処理を施行する交代処理手段と、
を備えたことを特徴とする記憶媒体制御装置。
(付記8)前記エラー検査手段は、前記エラー発生箇所に対して複数回のリードアクセスを試みてリードエラーが複数回再現されるか否かを検査することを特徴とする付記7に記載の記憶媒体制御装置。
(付記9)上位装置からのアクセス要求に応じて記憶媒体にリードアクセスまたはライトアクセスするとともに、リードアクセスに際して発生したリードエラーを検査して交代処理を施行する記憶媒体制御方法であって、
前記リードエラーが発生した記憶媒体上のエラー発生箇所に対して複数回のリードアクセスを試みてリードエラーが複数回再現されるか否かを検査するエラー検査工程と、
前記エラー検査工程による検査においてリードエラーが複数回再現された場合に、前記エラー発生箇所に対して交代処理を施行する交代処理工程と、
を含んだことを特徴とする記憶媒体制御方法。
(付記10)前記エラー検査工程による検査においてリードエラーが複数回再現された場合に、前記エラー発生箇所に対してデータを書き込むデータ書込工程をさらに備え、
前記エラー検査工程は、前記データ書込工程によってデータが書き込まれたエラー発生箇所に対して再び複数回のリードアクセスを試みてリードエラーが複数回再現されるか否かを検査し、
前記交代処理工程は、前記エラー検査工程による再度の検査においてリードエラーが複数回再現された場合に、前記エラー発生箇所に対して交代処理を施行することを特徴とする付記9に記載の記憶媒体制御方法。
(付記11)上位装置からのアクセス要求に応じて記憶媒体にリードアクセスまたはライトアクセスするとともに、リードアクセスに際して発生したリードエラーを検査して交代処理を施行する記憶媒体制御方法であって、
前記リードエラーが発生した記憶媒体上のエラー発生箇所に対してデータを書き込むデータ書込工程と、
前記データ書込工程によってデータが書き込まれたエラー発生箇所に対してリードアクセスを試みてリードエラーが再現されるか否かを検査するエラー検査工程と、
前記エラー検査工程による検査においてリードエラーが再現された場合に、前記エラー発生箇所に対して交代処理を施行する交代処理工程と、
を含んだことを特徴とする記憶媒体制御方法。
(付記12)前記エラー検査工程は、前記エラー発生箇所に対して複数回のリードアクセスを試みてリードエラーが複数回再現されるか否かを検査することを特徴とする付記11に記載の記憶媒体制御方法。
(付記13)上位装置からのアクセス要求に応じて記憶媒体にリードアクセスまたはライトアクセスするとともに、リードアクセスに際して発生したリードエラーを検査して交代処理を施行する方法をコンピュータに実行させる記憶媒体制御プログラムであって、
前記リードエラーが発生した記憶媒体上のエラー発生箇所に対して複数回のリードアクセスを試みてリードエラーが複数回再現されるか否かを検査するエラー検査手順と、
前記エラー検査手順による検査においてリードエラーが複数回再現された場合に、前記エラー発生箇所に対して交代処理を施行する交代処理手順と、
をコンピュータに実行させることを特徴とする記憶媒体制御プログラム。
(付記14)前記エラー検査手順による検査においてリードエラーが複数回再現された場合に、前記エラー発生箇所に対してデータを書き込むデータ書込手順をさらに備え、
前記エラー検査手順は、前記データ書込手順によってデータが書き込まれたエラー発生箇所に対して再び複数回のリードアクセスを試みてリードエラーが複数回再現されるか否かを検査し、
前記交代処理手順は、前記エラー検査手順による再度の検査においてリードエラーが複数回再現された場合に、前記エラー発生箇所に対して交代処理を施行することを特徴とする付記13に記載の記憶媒体制御プログラム。
(付記15)上位装置からのアクセス要求に応じて記憶媒体にリードアクセスまたはライトアクセスするとともに、リードアクセスに際して発生したリードエラーを検査して交代処理を施行する方法をコンピュータに実行させる記憶媒体制御プログラムであって、
前記リードエラーが発生した記憶媒体上のエラー発生箇所に対してデータを書き込むデータ書込手順と、
前記データ書込手順によってデータが書き込まれたエラー発生箇所に対してリードアクセスを試みてリードエラーが再現されるか否かを検査するエラー検査手順と、
前記エラー検査手順による検査においてリードエラーが再現された場合に、前記エラー発生箇所に対して交代処理を施行する交代処理手順と、
をコンピュータに実行させることを特徴とする記憶媒体制御プログラム。
(付記16)前記エラー検査手順は、前記エラー発生箇所に対して複数回のリードアクセスを試みてリードエラーが複数回再現されるか否かを検査することを特徴とする付記15に記載の記憶媒体制御プログラム。
以上のように、本発明に係る記憶媒体制御装置、記憶媒体制御方法および記憶媒体制御プログラムは、上位装置からのアクセス要求に応じて記憶媒体にリードアクセスまたはライトアクセスするとともに、リードアクセスに際して発生したリードエラーを検査して交代処理を施行する場合に有用であり、特に、リードエラーに対する交代処理の要否を精度良く判別することができ、交代処理を適切に施行することに適する。
実施例1に係るディスク制御装置の概要および特徴を説明するための図である。 実施例1に係るディスク制御装置の構成を示すブロック図である。 ディスク上のトラックおよびセクタを説明するための図である。 エラー発生箇所記憶部を説明するための図である。 再検査成功箇所記憶部を説明するための図である。 実施例1におけるアクセス制御処理の手順を示すフローチャートである。 実施例1におけるエラー検査処理の手順を示すフローチャートである。 エラー検査のタイミング、対象および手法を説明するための図である。 ディスク制御プログラムを実行するコンピュータを示す図である。
符号の説明
10 ディスク制御装置
11 ホスト転送制御部
12 ディスク転送制御部
13 キャッシュ
14 キャッシュ制御部
15 記憶部
15a エラー発生箇所記憶部
15b 再検査成功箇所記憶部
16 制御部
16a アクセス制御部
16b パトロール部
16c エラー検査部
16d データ書込部
16e 交代処理部
20 ホストコンピュータ
30 ディスク装置
40 ディスク制御装置(コンピュータ)
41 キャッシュ
42 RAM
43 フラッシュメモリ
44 ROM
45 CPU

Claims (5)

  1. 上位装置からのアクセス要求に応じて記憶媒体にリードアクセスまたはライトアクセスするとともに、リードアクセスに際して発生したリードエラーを検査して交代処理を施行する記憶媒体制御装置であって、
    前記リードアクセスに際してリードエラーが発生した場合に、当該リードエラーが発生した記憶媒体上のエラー発生箇所を示す情報を記憶するエラー発生箇所記憶手段と、
    前記交代処理を施行する場合に、前記エラー発生箇所記憶手段に記憶されたエラー発生箇所を示す情報を参照し、前記リードエラーが発生した記憶媒体上のエラー発生箇所に対して複数回のリードアクセスを試みてリードエラーが複数回再現されるか否かを検査する第一のエラー検査手段と、
    前記第一のエラー検査手段による検査においてリードエラーが複数回再現された場合に、前記エラー発生箇所に対してデータを書き込むデータ書込手段と、
    前記データ書込手段によってデータが書き込まれたエラー発生箇所に対して再び複数回のリードアクセスを試みてリードエラーが複数回再現されるか否かを検査する第二のエラー検査手段と、
    前記第二のエラー検査手段による再度の検査においてリードエラーが複数回再現されなかった場合に、前記エラー発生箇所を再検査成功箇所として記憶する再検査成功箇所記憶手段と、
    前記第二のエラー検査手段による再度の検査においてリードエラーが複数回再現された場合に、前記エラー発生箇所に対して交代処理を施行する第一の交代処理手段と、
    前記第一の交代処理手段により交代処理が施行されたエラー発生箇所を示す情報および前記再検査成功箇所記憶手段に記憶されたエラー発生箇所を示す情報を、前記エラー発生箇所記憶手段から削除する第一の削除手段と、
    前記第一のエラー検査手段による検査に先立って前記エラー発生箇所記憶手段に記憶されたエラー発生箇所を示す情報を参照し、前記エラー発生箇所記憶手段に記憶されたエラー発生箇所が前記再検査成功箇所記憶手段に再検査成功箇所として記憶されている場合には、当該エラー発生箇所に対して、前記第一のエラー検査手段によるエラー検査を行うことなく交代処理を施行する第二の交代処理手段と、
    前記第二の交代処理手段により交代処理が施行されたエラー発生箇所を示す情報を前記エラー発生箇所記憶手段から削除するとともに、当該エラー発生箇所に対応する再検査成功箇所を示す情報を前記再検査成功箇所記憶手段から削除する第二の削除手段と、
    を備えたことを特徴とする記憶媒体制御装置。
  2. 前記エラー発生箇所記憶手段は、前記第一および第二の交代処理手段によって交代処理が施行されたエラー発生箇所の周辺に位置する周辺箇所についても、前記エラー発生箇所としてエラー発生箇所を示す情報を記憶することを特徴とする請求項1に記載の記憶媒体制御装置。
  3. 前記エラー発生箇所記憶手段は、ライトエラー発生後の再ライトアクセスでデータが書き込まれた再ライト箇所についても、前記エラー発生箇所としてエラー発生箇所を示す情報を記憶することを特徴とする請求項1または2に記載の記憶媒体制御装置。
  4. 上位装置からのアクセス要求に応じて記憶媒体にリードアクセスまたはライトアクセスするとともに、リードアクセスに際して発生したリードエラーを検査して交代処理を施行する記憶媒体制御方法であって、
    前記リードアクセスに際してリードエラーが発生した場合に、当該リードエラーが発生した記憶媒体上のエラー発生箇所を示す情報をエラー発生箇所記憶手段に格納するエラー発生箇所格納工程と、
    前記交代処理を施行する場合に、前記エラー発生箇所記憶手段に記憶されたエラー発生箇所を示す情報を参照し、前記リードエラーが発生した記憶媒体上のエラー発生箇所に対して複数回のリードアクセスを試みてリードエラーが複数回再現されるか否かを検査する第一のエラー検査工程と、
    前記第一のエラー検査工程による検査においてリードエラーが複数回再現された場合に、前記エラー発生箇所に対してデータを書き込むデータ書込工程と、
    前記データ書込工程によってデータが書き込まれたエラー発生箇所に対して再び複数回のリードアクセスを試みてリードエラーが複数回再現されるか否かを検査する第二のエラー検査工程と、
    前記第二のエラー検査工程による再度の検査においてリードエラーが複数回再現されなかった場合に、前記エラー発生箇所を再検査成功箇所として再検査成功箇所記憶手段に格納する再検査成功箇所格納工程と、
    前記第二のエラー検査工程による再度の検査においてリードエラーが複数回再現された場合に、前記エラー発生箇所に対して交代処理を施行する第一の交代処理工程と、
    前記第一の交代処理工程により交代処理が施行されたエラー発生箇所を示す情報および前記再検査成功箇所記憶手段に記憶されたエラー発生箇所を示す情報を、前記エラー発生箇所記憶手段から削除する第一の削除工程と、
    前記第一のエラー検査工程による検査に先立って前記エラー発生箇所記憶手段に記憶されたエラー発生箇所を示す情報を参照し、前記エラー発生箇所記憶手段に記憶されたエラー発生箇所が前記再検査成功箇所記憶手段に再検査成功箇所として記憶されている場合には、当該エラー発生箇所に対して、前記第一のエラー検査手段によるエラー検査を行うことなく交代処理を施行する第二の交代処理工程と、
    前記第二の交代処理工程により交代処理が施行されたエラー発生箇所を示す情報を前記エラー発生箇所記憶手段から削除するとともに、当該エラー発生箇所に対応する再検査成功箇所を示す情報を前記再検査成功箇所記憶手段から削除する第二の削除工程と、
    を含んだことを特徴とする記憶媒体制御方法。
  5. 上位装置からのアクセス要求に応じて記憶媒体にリードアクセスまたはライトアクセスするとともに、リードアクセスに際して発生したリードエラーを検査して交代処理を施行する方法をコンピュータに実行させる記憶媒体制御プログラムであって、
    前記リードアクセスに際してリードエラーが発生した場合に、当該リードエラーが発生した記憶媒体上のエラー発生箇所を示す情報をエラー発生箇所記憶手段に格納するエラー発生箇所格納手順と、
    前記交代処理を施行する場合に、前記エラー発生箇所記憶手段に記憶されたエラー発生箇所を示す情報を参照し、前記リードエラーが発生した記憶媒体上のエラー発生箇所に対して複数回のリードアクセスを試みてリードエラーが複数回再現されるか否かを検査する第一のエラー検査手順と、
    前記第一のエラー検査手順による検査においてリードエラーが複数回再現された場合に、前記エラー発生箇所に対してデータを書き込むデータ書込手順と、
    前記データ書込手順によってデータが書き込まれたエラー発生箇所に対して再び複数回のリードアクセスを試みてリードエラーが複数回再現されるか否かを検査する第二のエラー検査手順と、
    前記第二のエラー検査手順による再度の検査においてリードエラーが複数回再現されなかった場合に、前記エラー発生箇所を再検査成功箇所として再検査成功箇所記憶手段に格納する再検査成功箇所格納手順と、
    前記第二のエラー検査手順による再度の検査においてリードエラーが複数回再現された場合に、前記エラー発生箇所に対して交代処理を施行する第一の交代処理手順と、
    前記第一の交代処理手順により交代処理が施行されたエラー発生箇所を示す情報および前記再検査成功箇所記憶手段に記憶されたエラー発生箇所を示す情報を、前記エラー発生箇所記憶手段から削除する第一の削除手順と、
    前記第一のエラー検査手順による検査に先立って前記エラー発生箇所記憶手段に記憶されたエラー発生箇所を示す情報を参照し、前記エラー発生箇所記憶手段に記憶されたエラー発生箇所が前記再検査成功箇所記憶手段に再検査成功箇所として記憶されている場合には、当該エラー発生箇所に対して、前記第一のエラー検査手段によるエラー検査を行うことなく交代処理を施行する第二の交代処理手順と、
    前記第二の交代処理手順により交代処理が施行されたエラー発生箇所を示す情報を前記エラー発生箇所記憶手段から削除するとともに、当該エラー発生箇所に対応する再検査成功箇所を示す情報を前記再検査成功箇所記憶手段から削除する第二の削除手順と、
    をコンピュータに実行させることを特徴とする記憶媒体制御プログラム。
JP2004271861A 2004-09-17 2004-09-17 記憶媒体制御装置、記憶媒体制御方法および記憶媒体制御プログラム Expired - Fee Related JP4397770B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2004271861A JP4397770B2 (ja) 2004-09-17 2004-09-17 記憶媒体制御装置、記憶媒体制御方法および記憶媒体制御プログラム
US11/017,946 US7415636B2 (en) 2004-09-17 2004-12-22 Method and apparatus for replacement processing

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004271861A JP4397770B2 (ja) 2004-09-17 2004-09-17 記憶媒体制御装置、記憶媒体制御方法および記憶媒体制御プログラム

Publications (2)

Publication Number Publication Date
JP2006085592A JP2006085592A (ja) 2006-03-30
JP4397770B2 true JP4397770B2 (ja) 2010-01-13

Family

ID=36127084

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004271861A Expired - Fee Related JP4397770B2 (ja) 2004-09-17 2004-09-17 記憶媒体制御装置、記憶媒体制御方法および記憶媒体制御プログラム

Country Status (2)

Country Link
US (1) US7415636B2 (ja)
JP (1) JP4397770B2 (ja)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060256653A1 (en) * 2005-05-05 2006-11-16 Rune Toennessen Forward looking systems and methods for positioning marine seismic equipment
US7831882B2 (en) 2005-06-03 2010-11-09 Rambus Inc. Memory system with error detection and retry modes of operation
US9459960B2 (en) 2005-06-03 2016-10-04 Rambus Inc. Controller device for use with electrically erasable programmable memory chip with error detection and retry modes of operation
JP2007052509A (ja) * 2005-08-15 2007-03-01 Fujitsu Ltd ディスクアレイ装置における媒体エラーリカバリ装置、方法、及びプログラム
JP2007058978A (ja) * 2005-08-24 2007-03-08 Canon Inc データ処理方法、装置及びプログラム
US7562285B2 (en) 2006-01-11 2009-07-14 Rambus Inc. Unidirectional error code transfer for a bidirectional data link
US20070271495A1 (en) * 2006-05-18 2007-11-22 Ian Shaeffer System to detect and identify errors in control information, read data and/or write data
US8352805B2 (en) * 2006-05-18 2013-01-08 Rambus Inc. Memory error detection
JP2007310974A (ja) * 2006-05-19 2007-11-29 Fujitsu Ltd 記憶装置および制御装置
JP2008010113A (ja) * 2006-06-30 2008-01-17 Fujitsu Ltd 磁気ディスク制御装置、磁気ディスク装置および読取り障害修復方法
WO2009001413A1 (ja) * 2007-06-22 2008-12-31 Fujitsu Limited コントローラ、ディスクパトロール方法
TWI381393B (zh) * 2008-10-06 2013-01-01 Phison Electronics Corp 區塊管理與更換方法、快閃記憶體儲存系統及其控制器
US20100131808A1 (en) * 2008-11-25 2010-05-27 Bei-Chuan Chen Method For Testing Memory
KR20110083352A (ko) * 2010-01-14 2011-07-20 삼성전자주식회사 데이터 손실을 방지하기 위한 방법과 상기 방법을 수행할 수 있는 장치들
JP5658827B2 (ja) * 2011-06-24 2015-01-28 株式会社日立製作所 ストレージシステム
JP2014010759A (ja) 2012-07-02 2014-01-20 Toshiba Corp ブリッジ装置およびその方法、ストレージ装置、ならびにプログラム
GB2502858B (en) * 2013-03-06 2014-07-02 Imagination Tech Ltd Improved mechanism for copying data in memory
JP6205909B2 (ja) * 2013-07-03 2017-10-04 富士ゼロックス株式会社 情報処理装置及びプログラム
JP5989818B2 (ja) * 2015-01-28 2016-09-07 株式会社東芝 ブリッジ装置およびその方法、ストレージ装置、ならびにプログラム
JP6114767B2 (ja) * 2015-01-28 2017-04-12 株式会社東芝 ブリッジ装置およびその方法、ストレージ装置、ならびにプログラム
JP6890557B2 (ja) * 2018-01-17 2021-06-18 株式会社日立製作所 分析モデル作成システム、プログラミング装置および分析モデル作成方法
JP2019164853A (ja) 2018-03-19 2019-09-26 株式会社東芝 ディスク装置およびメディアスキャン方法
EP3776207B1 (en) 2018-03-26 2023-08-09 Rambus Inc. Command/address channel error detection
CN109003646B (zh) * 2018-07-24 2021-02-23 浪潮电子信息产业股份有限公司 一种数据处理方法及单片机
JP7367495B2 (ja) * 2019-11-29 2023-10-24 富士通株式会社 情報処理装置および通信ケーブルログ情報採取方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5602814A (en) * 1994-10-06 1997-02-11 International Business Machines Corporation Calibration of write-once disks using a single disk sector
JPH09212311A (ja) 1996-01-31 1997-08-15 Ekushingu:Kk ディスクアレイ装置
JPH09274541A (ja) * 1996-04-08 1997-10-21 Canon Inc 記憶装置及び該装置の制御方法及び記憶システム及び該システムの制御方法
JP3613722B2 (ja) 1997-03-05 2005-01-26 株式会社日立製作所 ディスクアレイ装置
WO1998041915A1 (fr) 1997-03-19 1998-09-24 Hitachi, Ltd. Sous-systeme pour pile de disques
JP3869365B2 (ja) * 2000-07-21 2007-01-17 富士通株式会社 ディスク記録装置、および記録ディスクのセクタ交替方法
JP2002215336A (ja) 2001-01-15 2002-08-02 Hitachi Ltd 記憶装置の制御方法および記憶サブシステム
US6854071B2 (en) * 2001-05-14 2005-02-08 International Business Machines Corporation Method and apparatus for providing write recovery of faulty data in a non-redundant raid system
US7050252B1 (en) * 2002-06-01 2006-05-23 Western Digital Technologies, Inc. Disk drive employing off-line sector verification and relocation of marginal sectors discovered during read error recovery procedure

Also Published As

Publication number Publication date
US20060075291A1 (en) 2006-04-06
JP2006085592A (ja) 2006-03-30
US7415636B2 (en) 2008-08-19

Similar Documents

Publication Publication Date Title
JP4397770B2 (ja) 記憶媒体制御装置、記憶媒体制御方法および記憶媒体制御プログラム
US7681071B2 (en) Storage apparatus, control method therefor and program
US7577897B2 (en) Data integrity inspection support method for disk devices, and data integrity inspection method for disk devices
US6513135B2 (en) Automatic read reassignment method and a magnetic disk drive
US5751947A (en) Magnetic disk apparatus having inspection function of recording medium and method of inspecting recording medium in magnetic disk apparatus
JP2005122338A (ja) スペアディスクドライブをもつディスクアレイ装置及びデータスペアリング方法
US7664981B2 (en) Method of restoring source data of hard disk drive and method of reading system information thereof
US7609596B2 (en) Storage apparatus and computer-readable storage medium
JPH086862A (ja) 記憶媒体に記憶されたデータの保全を向上させるための方法及び関連するシステム
JP4454204B2 (ja) ディスクアレイ制御装置及び方法並びにディスクアレイ制御プログラム
US6393580B1 (en) Automatic read reassignment method and a magnetic disk drive
JP2006252733A (ja) 媒体記憶装置及び媒体記憶装置のライト系経路診断方法。
JP3214444B2 (ja) 磁気ディスク装置の制御方法と制御装置
JP2003297025A (ja) ディスク装置
CN113190179B (zh) 提升机械硬盘使用寿命的方法、存储设备及系统
JP3841595B2 (ja) 記憶装置の交代処理時間判定試験方法
JPH1050005A (ja) 光ディスク欠陥管理方法および装置
JP2002123372A (ja) キャッシュメモリ付きディスクアレイ装置及びそのエラー制御方法並びにその制御プログラムを記録した記録媒体
JP2007004343A (ja) 書き込み制御方法及び記憶装置
JP3335969B2 (ja) 磁気ディスク装置
JPH04311218A (ja) 外部記憶制御装置
US20090303628A1 (en) Data managing method, information storage apparatus, and data mangement circuit
JP4131953B2 (ja) ファイル制御装置
JPH0660550A (ja) ディスク装置
JP2007157304A (ja) ディスク装置、そのテスト方法、及びその製造方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060726

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090604

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090609

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090731

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090908

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090925

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

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

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

Free format text: PAYMENT UNTIL: 20121030

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20121030

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20131030

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees