(57)【要約】【課題】歩留まりを維持しつつ検出能力を向上することを課題とする。【解決手段】検出装置は、記憶媒体の欠陥箇所を検出する検出処理時に適用される検出能力に関する検出設定を記憶する記憶部を備える。具体的には、記憶部は、記憶媒体を備える記憶装置に搭載されたビタビ復号処理時に発生するエラー数に対応づけて、エラー数が多いほど検出能力が相対的に高い検出設定を記憶し、エラー数が少ないほど検出能力が相対的に低い検出設定を記憶する。また、検出装置は、検出処理の対象となる記憶媒体に対してビタビ復号処理を実行し、記憶媒体を区分けした領域ごとにエラー数を取得する。また、検出装置は、取得したエラー数を用いて記憶部を参照し、エラー数に対応づけて記憶された検出設定を領域ごとに取得する。また、検出装置は、取得した検出設定を領域ごとに適用し、検出処理を実行する。【選択図】        図１
2010123188.tif 000002
【特許請求の範囲】
【請求項１】
記憶媒体の欠陥箇所を検出する検出処理時に適用される検出能力に関する検出設定として、ビタビ復号処理時に発生するエラー数に対応づけて、当該エラー数が多いほど検出能力が相対的に高い検出設定を記憶し、当該エラー数が少ないほど検出能力が相対的に低い検出設定を記憶する記憶部と、
前記検出処理の対象となる記憶媒体に対してビタビ復号処理を実行し、当該記憶媒体を区分けした領域ごとに前記エラー数を取得するエラー数取得部と、
前記エラー数取得部によって前記領域ごとに取得されたエラー数を用いて前記記憶部を参照し、当該エラー数に対応づけて記憶された検出設定を当該領域ごとに取得する設定取得部と、
前記設定取得部によって取得された検出設定を前記領域ごとに適用し、前記検出処理を実行する実行部と、
を備えたことを特徴とする検出装置。
【請求項２】
前記検出処理は、前記ビタビ復号処理時に発生したエラー各々の内エラー訂正処理により訂正されなかったエラーに対応する箇所を検出するものであって、
前記記憶部は、前記エラー数が多いほど、前記エラー訂正処理によるエラー訂正能力が相対的に高い検出設定および／または前記記憶媒体から情報を読み出すヘッドと当該記憶媒体との間の距離が相対的に短い検出設定を記憶し、当該エラー数が少ないほど、前記エラー訂正能力が相対的に低い検出設定および／または前記距離が相対的に長い検出設定を記憶することを特徴とする請求項１に記載の検出装置。
【請求項３】
前記エラー数取得部は、前記エラー数をゾーンごとに取得し、
前記設定取得部は、前記エラー数取得部によって前記ゾーンごとに取得された前記エラー数を用いて前記記憶部を参照し、前記検出設定を当該ゾーンごとに取得し、
前記実行部は、前記設定取得部によって取得された検出設定を前記ゾーンごとに適用し、前記検出処理を実行する、ことを特徴とする請求項１または２に記載の検出装置。
【請求項４】
利用者から指示を受け付ける指示部をさらに備え、
前記実行部は、前記指示部によって前記記憶部に記憶された検出設定を用いる旨の指示を受け付けることを条件として、前記設定取得部によって取得された検出設定を前記領域ごとに適用して前記検出処理を実行することを特徴とする請求項１〜３のいずれか一つに記載の検出装置。
【請求項５】
記憶媒体の欠陥箇所を検出する検出処理時に適用される検出能力に関する検出設定として、ビタビ復号処理時に発生するエラー数に対応づけて、当該エラー数が多いほど検出能力が相対的に高い検出設定を記憶し、当該エラー数が少ないほど検出能力が相対的に低い検出設定を記憶する記憶部と、
前記検出処理の対象となる記憶媒体に対してビタビ復号処理を実行し、当該記憶媒体を区分けした領域ごとに前記エラー数を取得するエラー数取得部と、
前記エラー数取得部によって前記領域ごとに取得されたエラー数を用いて前記記憶部を参照し、当該エラー数に対応づけて記憶された検出設定を当該領域ごとに取得する設定取得部と、
前記設定取得部によって取得された検出設定を前記領域ごとに適用し、前記検出処理を実行する実行部と、
を備えたことを特徴とする記憶装置。
【請求項６】
記憶媒体の欠陥箇所を検出する検出処理の対象となる記憶媒体に対してビタビ復号処理を実行し、当該記憶媒体を区分けした領域ごとにビタビ復号処理時に発生するエラー数を取得するエラー数取得工程と、
前記検出処理時に適用される検出能力に関する検出設定として、前記エラー数に対応づけて、当該エラー数が多いほど検出能力が相対的に高い検出設定を記憶し、当該エラー数が少ないほど検出能力が相対的に低い検出設定を記憶する記憶部を、前記エラー数取得工程によって前記領域ごとに取得されたエラー数を用いて参照し、当該エラー数に対応づけて記憶された検出設定を当該領域ごとに取得する検出設定取得工程と、
前記検出設定取得工程によって取得された検出設定を前記領域ごとに適用し、前記検出処理を実行する実行工程と、
を含んだことを特徴とする検出方法。
【請求項７】
記憶媒体の欠陥箇所を検出する検出処理の対象となる記憶媒体に対してビタビ復号処理を実行し、当該記憶媒体を区分けした領域ごとにビタビ復号処理時に発生するエラー数を取得するエラー数取得手順と、
前記検出処理時に適用される検出能力に関する検出設定として、前記エラー数に対応づけて、当該エラー数が多いほど検出能力が相対的に高い検出設定を記憶し、当該エラー数が少ないほど検出能力が相対的に低い検出設定を記憶する記憶部を、前記エラー数取得手順によって前記領域ごとに取得されたエラー数を用いて参照し、当該エラー数に対応づけて記憶された検出設定を当該領域ごとに取得する検出設定取得手順と、
前記検出設定取得手順によって取得された検出設定を前記領域ごとに適用し、前記検出処理を実行する実行手順と、
をコンピュータに実行させることを特徴とする検出プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、検出装置、記憶装置、検出方法および検出プログラムに関する。
【背景技術】
【０００２】
従来より、記憶装置を製造する製造者は、記憶装置を出荷する前に、データが格納される記憶領域から、エラーが発生する可能性が相対的に高い箇所を検出し、検出した箇所を使用しないように設定していた。なお、エラーが発生する可能性の高い箇所とは、リード処理やライト処理の再現性が相対的に低い箇所であり、例えば、微小な傷がある箇所が該当する。
【０００３】
例えば、磁気ディスク装置では、ビタビ復号器が、磁気ヘッドによって読み出されたデータに対してビタビ復号処理を行う。そして、磁気ディスク装置は、ビタビ復号処理されたデータに含まれるエラーであるビタビ復号器エラーに対して、ＥＣＣ（Error  Check  and  Correct）領域を用いたエラー訂正処理を行う。そして、磁気ディスク装置では、エラー訂正処理により訂正されなかったビタビ復号器エラーが検出された箇所を検出していた。
【０００４】
ここで、例えば、製造者は、エラーが発生する可能性が相対的に高い箇所が所定数以上検出された記憶装置を装置不良とするので、歩留まりを維持することを目的として、エラーの訂正能力を高く設定する高設定技術が知られている。すなわち、高設定技術では、エラーの訂正能力を高く設定することで、相対的に多くのビタビ復号器エラーが訂正され、訂正されなかったビタビ復号器エラーの数が相対的に減少する。
【０００５】
また、例えば、エラーの訂正能力を相対的に高く設定した場合には、エラーが発生する可能性が相対的に高い箇所を検出できないことがあるので、エラー訂正処理によるエラーの訂正能力を相対的に低く設定する低設定技術が知られている。なお、低設定技術では、訂正能力を相対的に高く検出設定した場合には訂正されていたビタビ復号器エラーをも検出する。
【０００６】
なお、記録媒体にデータをライト処理する際に、データに付加されるＥＣＣ領域のデータ量を削減することを目的として、記憶装置が訂正能力を変動する技術などが知られている。
【０００７】
【特許文献１】特開２００１−１９５８４４号公報（第１−４頁、第１図）
【特許文献２】特開平４−１７１６６号公報（第５−７頁、第１図）
【発明の開示】
【発明が解決しようとする課題】
【０００８】
ところで、上記した従来の技術は、歩留まりの維持と検出能力の向上とを両立できないという課題があった。例えば、高設定技術では、訂正能力を高く設定する結果、エラーが発生する可能性の高い箇所を検出できない場合があった。また、低設定技術では、訂正能力を高く設定した場合には訂正されていたビタビ復号器エラーを含めて、多くの箇所を検出することになり、歩留まりが低下していた。
【０００９】
そこで、本発明は、上述した従来技術の課題を解決するためになされたものであり、歩留まりを維持しつつ検出能力を向上することが可能な検出装置、記憶装置、検出方法および検出プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
上述した課題を解決し、目的を達成するため、検出装置は、記憶媒体の欠陥箇所を検出する検出処理時に適用される検出能力に関する検出設定として、当該記憶媒体を備える記憶装置に搭載されたビタビ復号処理時に発生するエラー数に対応づけて、当該エラー数が多いほど検出能力が相対的に高い検出設定を記憶し、当該エラー数が少ないほど検出能力が相対的に低い検出設定を記憶する記憶部を備える。また、検出装置は、前記検出処理の対象となる記憶媒体に対してビタビ復号処理を実行し、当該記憶媒体を区分けした領域ごとに前記エラー数を取得するエラー数取得部を備える。また、検出装置は、前記エラー数取得部によって前記領域ごとに取得されたエラー数を用いて前記記憶部を参照し、当該エラー数に対応づけて記憶された検出設定を当該領域ごとに取得する設定取得部を備える。また、検出装置は、前記設定取得部によって取得された検出設定を前記領域ごとに適用し、前記検出処理を実行する実行部を備える。
【発明の効果】
【００１１】
歩留まりを維持しつつ検出能力を向上することが可能である。
【発明を実施するための最良の形態】
【００１２】
以下に添付図面を参照して、本発明に係る検出装置、記憶装置、検出方法および検出プログラムの実施例を詳細に説明する。なお、以下では、実施例１に係る記憶装置の概要、実施例１に係る記憶装置の構成、検出設定テーブルについて、実施例１に係る記憶装置の処理の流れを順に説明し、その後、その他の実施例について説明する。
【００１３】
また、以下では、特に言及しない限り、記憶装置として磁気ディスク装置を例にあげて説明する。すなわち、磁気ディスク装置が、自磁気ディスクに対して検出処理を実行する場合について説明する。
【００１４】
なお、以下では、磁気ディスク装置が、自磁気ディスクに対して検出処理を実行する場合を例にあげて説明するが、本発明はこれに限定されるものではなく、例えば、磁気ディスク装置と接続された他のコンピュータが、磁気ディスク装置が備える磁気ディスクに対して検出処理を実行してもよい。また、以下では、記憶装置として磁気ディスク装置を例にあげて説明するが、本発明はこれに限定されるものではなく、他の記憶装置であってもよく、例えば、光ディスク装置や、半導体不揮発メモリ（ＳＳＤ、Solid  State  Drive）などの記憶装置であってもよい。
【実施例１】
【００１５】
［磁気ディスク装置の概要］
まず最初に、図１を用いて、実施例１における磁気ディスク装置１００の概要を説明する。図１は、実施例１における磁気ディスク装置の概要を説明するための図である。
【００１６】
実施例１における磁気ディスク装置１００は、データを記憶する記憶媒体を備え、図１に示すように、記憶媒体の欠陥箇所を検出する検出処理時に適用される検出能力に関する検出設定を記憶する記憶部を備える。また、記憶部は、記憶媒体を備える記憶装置に搭載されたビタビ復号処理時に発生するエラー数であるビタビ復号器エラー数に対応づけて、ビタビ復号器エラー数が多いほど検出能力が相対的に高い検出設定を記憶し、ビタビ復号器エラー数が少ないほど検出能力が相対的に低い検出設定を記憶する。
【００１７】
図１に示す例では、記憶部は、ビタビ復号器エラー数に対応づけて検出設定を記憶し、例えば、ビタビ復号器エラー数「０〜１４９９」に対応づけて、検出能力が相対的に低い検出設定を記憶し、ビタビ復号器エラー数「２０００〜」に対応づけて、検出能力が相対的に高い検出設定を記憶する。
【００１８】
その上で、実施例１における磁気ディスク装置１００は、記憶媒体に対して検出処理を実行し、欠陥箇所を検出し、例えば、検出した欠陥箇所がその後用いられないように設定する。なお、記憶媒体に対して行われる検出処理は、例えば、磁気ディスク装置１００を出荷する前に行われる。
【００１９】
すなわち、図１の（１）に示すように、実施例１における磁気ディスク装置１００は、検出処理の対象となる記憶媒体に対してビタビ復号処理を実行し、記憶媒体を区分けした領域ごとにビタビ復号器エラー数を取得する。図１の（１）に示す例では、磁気ディスク装置１００は、磁気ディスクのゾーン「１」について、ビタビ復号器エラー数「１０６０」を取得し、磁気ディスクのゾーン「２８」について、ビタビ復号器エラー数「２８４７」を取得する。
【００２０】
そして、図１の（２）に示すように、実施例１における磁気ディスク装置１００は、領域ごとに取得したビタビ復号器エラー数を用いて記憶部を参照し、ビタビ復号器エラー数に対応づけて記憶された検出設定を領域ごとに取得する。図１の（２）に示す例では、磁気ディスク装置１００は、ゾーン「１」について、検出能力が相対的に低い検出設定を取得し、また、ゾーン「２８」について、検出能力が相対的に高い検出設定を取得する。
【００２１】
そして、図１の（３）に示すように、実施例１における磁気ディスク装置１００は、取得した検出設定を領域ごとに適用し、検出処理を実行する。図１の（３）に示す例では、磁気ディスク装置１００は、ゾーン「１」について、検出能力が相対的に低い検出設定を適用して検出処理を実行し、ゾーン「２８」について、検出能力が相対的に高い検出設定を適用して検出処理を実行する。
【００２２】
このようなことから、実施例１における磁気ディスク装置１００は、歩留まりを維持しつつ検出能力を向上することが可能である。
【００２３】
［磁気ディスク装置の構成］
次に、図２を用いて、図１に示した磁気ディスク装置１００の構成の一例を説明する。図２は、磁気ディスク装置の構成の一例を説明するためのブロック図である。
【００２４】
図２に示すように、磁気ディスク装置１００は、ＳＰＭ（スピンドルモータ）１０１と、磁気ヘッド１０２と、ＶＣＭ（ボイスコイルモータ）１０３と、共通バス１０４とを備える。また、磁気ディスク装置１００は、サーボ制御部１０５と、ヘッドＩＣ１０６と、リードチャネル１０７と、ビタビ復号器１０８と、フォーマット制御部１０９と、ホストＩＦ制御部１１０とを備える。また、磁気ディスク装置１００は、磁気ディスク２０１と、メモリ２０２と、ＭＰＵ３００とを備える。
【００２５】
磁気ディスク２０１（「記憶媒体」とも称する）は、データを記憶する記憶領域として、ユーザデータ記憶領域とシステムデータ記憶領域とを備え、ユーザデータ記憶領域とシステムデータ記憶領域とにあるセクタ各々にデータを記憶する。また、以下では、磁気ディスク２０１の半径方向にて複数に区分けしたユーザデータ記憶領域の領域各々をゾーンと記載する。すなわち、ゾーン各々には、複数のセクタが含まれる。
【００２６】
また、磁気ディスク２０１は、ＳＰＭ１０１によって磁気ディスクが回転させられ、磁気ヘッド１０２によってリード処理やライト処理が実行される。
【００２７】
ここで、ユーザデータ記憶領域は、磁気ディスク装置１００を利用する利用者によって用いられる領域である。また、システムデータ記憶領域は、例えば、磁気ディスク装置１００を製造する製造者によって用いられ、検出設定テーブル（「記憶部」とも称する）を記憶する。なお、検出設定テーブルとは、検出処理時に適用される検出能力に関する検出設定を記憶するテーブルである。
【００２８】
システムデータ記憶領域が記憶する検出設定テーブルについて、図３を用いてさらに説明する。なお、図３は、実施例１における検出設定テーブルに記憶されたデータの一例を説明するための図である。
【００２９】
図３に示すように、検出設定テーブルは、ビタビ復号器エラー数に対応づけて検出設定を記憶する。具体的には、検出設定テーブルは、ビタビ復号器エラー数が多いほど検出能力が相対的に高い検出設定を記憶し、ビタビ復号器エラー数が少ないほど検出能力が相対的に低い検出設定を記憶する。
【００３０】
なお、検出能力が相対的に高い検出設定とは、同じ磁気ディスク２０１に対して検出処理を実行する場合に、検出される欠陥箇所の数が相対的に多くなる検出設定を示す。また、検出能力が相対的に低い検出設定とは、検出される欠陥箇所の数が相対的に少なくなる検出設定を示す。
【００３１】
図３に示す検出設定についてさらに説明する。以下では、検出処理の流れについて簡単に説明した上で、図３に示す「ＥＣＣ（Error  Check  and  Correct）パワー」と検出能力との関係について説明し、その後、図３に示す「ヒーターパワー」と検出能力との関係について説明する。
【００３２】
検出処理の流れについて簡単に説明する。磁気ディスク装置１００は、磁気ディスク２０１に対してビタビ復号処理を実行し、ビタビ復号処理により発生したエラーであるビタビ復号器エラーに対してエラー訂正処理を実行する。そして、磁気ディスク装置１００は、エラー訂正処理により訂正できなかったビタビ復号器エラーが発生したセクタについて、欠陥箇所として検出する。
【００３３】
図３に示す「ＥＣＣパワー」と検出能力との関係について説明する。以下では、まず、「ＥＣＣパワー」とエラー訂正能力との関係について説明し、その後、「ＥＣＣパワー」と検出能力との関係について説明する。
【００３４】
「ＥＣＣパワー」とは、検出処理にて実行されるエラー訂正処理によるエラー訂正能力を示す。図３に示す例では、「ＥＣＣパワー」の値が大きければ大きいほど、エラー訂正能力が相対的に高いことを示し、また、「ＥＣＣパワー」の値が小さければ小さいほど、エラー訂正能力が相対的に低いことを示す。
【００３５】
具体的には、「ＥＣＣパワー」が大きくなればなるほど、ＥＣＣ領域の大きさを相対的に大きくする検出設定となり、ＥＣＣ領域を用いた訂正能力が相対的に高くなる。同様に、「ＥＣＣパワー」が小さくなればなるほど、ＥＣＣ領域の大きさを相対的に小さくする検出設定となり、ＥＣＣ領域を用いた訂正能力が相対的に低くなる。
【００３６】
「ＥＣＣパワー」とエラー訂正能力との関係について踏まえた上で、「ＥＣＣパワー」と検出能力との関係について説明する。「ＥＣＣパワー」の値が相対的に大きい検出設定では、エラー訂正能力が相対的に高くなり、磁気ディスク装置１００が、エラー訂正処理により、相対的に多くのビタビ復号器エラーを訂正する。この結果、磁気ディスク装置１００は、エラー訂正処理により訂正できなかったビタビ復号器エラー数が減少し、相対的に少ない数の欠陥箇所を検出する。すなわち、「ＥＣＣパワー」の値が相対的に大きい検出設定とは、検出能力が相対的に低い検出設定となる。同様に、「ＥＣＣパワー」の値が相対的に小さい検出設定とは、検出能力が相対的に高い検出設定となる。
【００３７】
図３に示す「ヒーターパワー」と検出能力との関係について説明する。「ヒーターパワー」とは、浮上量制御ＤＦＨ（Dynamic  fly  height）のパワーを示し、磁気ヘッド１０２と磁気ディスク２０１との距離を制御する値である。図３に示す例では、「ヒーターパワー」の値が大きければ大きいほど、磁気ヘッド１０２と磁気ディスク２０１との距離が相対的に短いことを示し、「ヒーターパワー」の値が小さければ小さいほど、磁気ヘッド１０２と磁気ディスク２０１との距離が相対的に長いことを示す。
【００３８】
例えば、「ヒーターパワー」の値が相対的に大きい検出設定では、磁気ヘッド１０２と磁気ディスク２０１との距離が相対的に短くなり、磁気ヘッド１０２が、磁気ディスク２０１から相対的に高い精度にてリード処理やライト処理を実行する。この結果、ビタビ復号処理により発生するビタビ復号器エラーの数が相対的に少なくなり、エラー訂正処理により訂正できなかったエラーの数も相対的に少なくなり、磁気ディスク装置１００は、相対的に少ない数の欠陥箇所を検出する。すなわち、「ヒーターパワー」の値が相対的に大きい検出設定とは、検出能力が相対的に低い検出設定となる。また、同様に、「ヒーターパワー」の値が相対的に小さい検出設定とは、検出能力が相対的に高い検出設定となる。
【００３９】
ここで、図３に戻ると、検出設定テーブルは、ビタビ復号器エラー数に対応づけて検出設定を記憶し、具体的には、検出設定として、「ＥＣＣパワー」と「ヒーターパワー」とを記憶する。図３に示す例では、検出設定テーブルは、ビタビ復号器エラー数「〜１４９９」に対応づけて、ＥＣＣパワー「８」とヒーターパワー「１５」とを記憶し、ビタビ復号器エラー数「３２０１〜」に対応づけて、ＥＣＣパワー「１８」とヒーターパワー「２４」とを記憶する。
【００４０】
すなわち、検出設定テーブルは、ビタビ復号器エラー数「〜１４９９」よりも相対的に多いエラー数であるビタビ復号器エラー数「３２０１〜」に対応づけて、検出能力が相対的に低い検出設定を記憶する。また、検出設定テーブルは、ビタビ復号器エラー数「３２０１〜」よりも相対的に少ないエラー数であるビタビ復号器エラー数「〜１４９９」に対応づけて、検出能力が相対的に高い検出設定を記憶する。
【００４１】
なお、検出設定テーブルに記憶された検出設定は、予め製造者によって格納されるものである。
【００４２】
メモリ２０２は、共通バス１０４を介してＭＰＵ３００と接続され、ＭＰＵ３００によって用いられる制御用データや制御用プログラム（ファームウェア）を記憶する。また、メモリ２０２は、ＭＰＵ３００によってビタビ復号器エラー数テーブルが格納され、ビタビ復号器エラー数テーブルを記憶する。
【００４３】
図４を用いて、ビタビ復号器エラー数テーブルについて説明する。なお、図４は、実施例１におけるビタビ復号器エラー数テーブルに記憶されたデータの一例を説明するための図である。ビタビ復号器エラー数テーブルは、磁気ディスク２０１がデータを記憶する記憶領域を区分けした領域ごとにビタビ復号器エラー数を記憶し、具体的には、検出処理を実行する対象となるゾーン各々についてのビタビ復号器エラー数を記憶する。図４に示す例では、ビタビ復号器エラー数テーブルは、ゾーンを他のゾーンから識別するデータであるゾーン識別番号に対応づけて、ビタビ復号器エラー数を記憶する。
【００４４】
ゾーン識別番号「０」によって識別されるゾーンにて、ビタビ復号処理により「９３０」のエラーが発生した場合を例に、ビタビ復号器エラー数テーブルについて説明する。図４に示すように、ビタビ復号器エラー数テーブルは、ゾーン識別番号「０」に対応づけて、ビタビ復号器エラー数「９３０」を記憶する。
【００４５】
また、メモリ２０２は、ＭＰＵ３００によって検出設定テーブルが入力されると、入力された検出設定テーブルを記憶する。
【００４６】
ＳＰＭ１０１は、サーボ制御部１０５と接続され、サーボ制御部１０５によって制御されることで磁気ディスク２０１を回転させる。また、磁気ヘッド１０２は、ヘッドＩＣ１０６と接続され、ヘッドＩＣ１０６によって制御されることで磁気ディスク２０１に対してリード処理やライト処理を実行する。また、ＶＣＭ１０３は、サーボ制御部１０５と接続され、サーボ制御部１０５によって制御されることで磁気ヘッドの位置決めを行う。また、共通バス１０６は、サーボ制御部１０５とヘッドＩＣ１０６とリードチャネル１０７とフォーマット制御部１０９とホストＩＦ制御部１１０とＭＰＵ３００と接続され、各部の間にて行われるデータの送受信を中継する。
【００４７】
サーボ制御部１０５は、共通バス１０４を介してＭＰＵ３００と接続され、また、ＳＰＭ１０１とＶＣＭ１０３と接続される。また、サーボ制御部１０５は、ＭＰＵ３００からの指示に従って、ＳＰＭ１０１を制御することで磁気ディスク２０１の回転を制御し、また、ＶＣＭ１０３を制御することで磁気ヘッド１０２の位置決めを制御する。
【００４８】
ここで、サーボ制御部１０５について、磁気ヘッドの位置決めを制御する点についてさらに説明する。サーボ制御部１０５は、ＭＰＵ３００によって指示された位置になるように、磁気ヘッド１０２の位置決めを制御する。また、サーボ制御部１０５は、ＭＰＵ３００から「ヒーターパワー」を受け付けると、受け付けた「ヒーターパワー」によって識別される距離へと、磁気ヘッド１０２と磁気ディスク２０１との距離を制御する。
【００４９】
例えば、サーボ制御部１０５は、ゾーンすべてに適用する「ヒーターパワー」をＭＰＵ３００から受け付けると、受け付けた「ヒーターパワー」を全ゾーンに適用しつつ、磁気ヘッド１０２の位置決めを制御する。
【００５０】
ゾーンすべてに適用するヒーターパワー「１５」を受け付けた場合を用いて、サーボ制御部１０５について具体的に説明する。サーボ制御部１０５は、ゾーンすべてに適用するヒーターパワー「１５」を受け付けると、磁気ヘッド１０２と磁気ディスク２０１との距離をヒーターパワー「１５」によって識別される距離に制御しつつ、磁気ヘッド１０２の位置決めを制御する。
【００５１】
また、例えば、サーボ制御部１０５は、ゾーン各々に適用する「ヒーターパワー」各々をＭＰＵ３００から受け付けると、受け付けた「ヒーターパワー」各々をゾーン各々に適用しつつ、磁気ヘッド１０２の位置決めを制御する。
【００５２】
ゾーン「２２」に適用するヒーターパワー「１５」やゾーン「２３」に適用するヒーターパワー「１６」をＭＰＵ３００から受け付けた場合を用いて、サーボ制御部１０５について具体的に説明する。サーボ制御部１０５は、ゾーン「２２」に含まれるセクタ各々に磁気ヘッド１０２の位置決めを制御する場合には、磁気ヘッド１０２と磁気ディスク２０１との距離をヒーターパワー「１５」によって識別される距離に制御する。そして、サーボ制御部１０５は、ゾーン「２３」に含まれるセクタ各々に磁気ヘッドの位置決めを制御する場合には、磁気ヘッド１０２と磁気ディスク２０１との距離をヒーターパワー「１６」によって識別される距離に制御する。
【００５３】
ヘッドＩＣ１０６は、共通バス１０４を介してＭＰＵ３００とリードチャネル１０７と接続され、また、磁気ヘッド１０２と接続される。また、ヘッドＩＣ１０６は、ＭＰＵ３００からの指示に従って、磁気ヘッド１０２によるリード処理やライト処理を制御する。具体的には、ヘッドＩＣ１０６は、ライト処理する旨の指示と「ＥＣＣパワー」とをＭＰＵ３００から受け付けると、「ＥＣＣパワー」を用いたライト処理を実行するよう磁気ヘッド１０２を制御する。また、ヘッドＩＣ１０６は、リード処理する旨の指示をＭＰＵ３００から受け付けると、リード処理を実行するように磁気ヘッド１０２を制御する。
【００５４】
例えば、ライト処理する旨の指示と、ゾーンすべてに適用する「ＥＣＣパワー」とをＭＰＵ３００から受け付けると、ヘッドＩＣ１０６は、受け付けた「ＥＣＣパワー」を適用したデータをセクタすべてにライト処理する。なお、「ＥＣＣパワー」を適用したデータとは、ＥＣＣ領域の大きさをＥＣＣパワーによって識別される大きさにしたデータを示す。
【００５５】
また、例えば、ヘッドＩＣ１０６は、ライト処理する旨の指示と、ゾーン各々に適用する「ＥＣＣパワー」各々とをＭＰＵ３００から受け付けると、ゾーン各々に、当該ゾーンに対応する「ＥＣＣパワー」を適用したデータをライト処理する。
【００５６】
ライト処理する旨の指示と、ゾーン「２２」に適用するＥＣＣパワー「８」やゾーン「２３」に適用するＥＣＣパワー「１１」とをＭＰＵ３００から受け付けた場合を用いて、ヘッドＩＣ１０６について具体的に説明する。ヘッドＩＣ１０６は、ゾーン「２２」に含まれるセクタ各々にライト処理を実行する場合には、ＥＣＣパワー「８」を適用したデータをライト処理を実行する。そして、ゾーン「２３」に含まれるセクタ各々にライト処理を実行する場合には、ＥＣＣパワー「１１」を適用したデータをライト処理する。
【００５７】
また、ヘッドＩＣ１０６は、リード処理する旨の指示をＭＰＵ３００から受け付けると、磁気ディスク２０１に対してリード処理を実行し、得られたデータをリードチャネル１０７に送る。
【００５８】
リードチャネル１０７は、共通バス１０４を介してヘッドＩＣ１０６とフォーマット制御部１０９と接続され、ビタビ復号処理を実行するビタビ復号器１０８を備える。また、リードチャネル１０７は、ヘッドＩＣ１０６からデータを受け付けると、ビタビ復号器１０８が、受け付けたデータに対してビタビ復号処理を実行する。
【００５９】
また、リードチャネル１０７は、ビタビ復号処理が実行されたデータであるビタビ復号処理済みデータをフォーマット制御部１０９に送る。
【００６０】
フォーマット制御部１０９は、共通バス１０４を介してリードチャネル１０７とＭＰＵ３００と接続される。また、フォーマット制御部１０９は、ビタビ復号処理済みデータをリードチャネル１０７から受け付けると、エラーチェックを行う。具体的には、フォーマット制御部１０９は、ビタビ復号処理済みデータに含まれるビタビ復号器エラーを識別する。
【００６１】
また、フォーマット制御部１０９は、ＭＰＵ３００からの指示に従って、ビタビ復号器エラー数をゾーンごとに算出する。例えば、フォーマット制御部１０９は、ゾーン「２２」についてのビタビ復号処理済みデータに、ビタビ復号器エラーが「１４１６」含まれていると算出し、また、ゾーン「２３」についてのビタビ復号処理済みデータに、ビタビ復号器エラーが「１７９６」含まれていると算出する。
【００６２】
ここで、フォーマット制御部１０９によって算出されたゾーンごとのビタビ復号器エラー数は、ＭＰＵ３００によって取得される。
【００６３】
また、フォーマット制御部１０９は、ビタビ復号処理済みデータに含まれるビタビ復号器エラーに対して、エラー訂正処理を実行する。具体的には、フォーマット制御部１０９は、識別したビタビ復号器エラー各々について、ＥＣＣ領域を用いたエラー訂正処理を実行する。
【００６４】
ここで、ゾーン「２２」に含まれるセクタ各々について、ＥＣＣ領域の大きさがＥＣＣパワー「８」によって識別される大きさとなっている場合を例に、フォーマット制御部１０９について具体的に説明する。また、ゾーン「２３」に含まれるセクタ各々について、ＥＣＣ領域の大きさがＥＣＣパワー「１１」によって識別される大きさとなっているものとする。
【００６５】
フォーマット制御部１０９は、ゾーン「２２」に含まれるセクタ各々についてのビタビ復号処理済みデータに含まれるビタビ復号器エラーについて、ＥＣＣパワー「８」によって識別される大きさのＥＣＣ領域を用いたエラー訂正処理を実行する。また、フォーマット制御部１０９は、ゾーン「２３」に含まれるセクタ各々についてのビタビ復号処理済みデータに含まれるビタビ復号器エラーについて、ＥＣＣパワー「１１」によって識別される大きさのＥＣＣ領域を用いたエラー訂正処理を実行する。
【００６６】
また、フォーマット制御部１０９は、エラー訂正処理を実行すると、エラー訂正処理にて訂正できなかったビタビ復号器エラーである訂正失敗エラーを識別し、訂正失敗エラーが発生したデータが格納された訂正失敗セクタを識別する。ここで、フォーマット制御部１０９によって識別された訂正失敗セクタは、ＭＰＵ３００によって取得される。
【００６７】
なお、フォーマット制御部１０９は、エラー訂正処理を複数回実行しても訂正できなかった場合に、訂正失敗エラーとして識別してもよい。
【００６８】
ホストＩＦ制御部１１０は、ＭＰＵ３００と共通バス１０４を介して接続され、また、磁気ディスク装置１００に接続された外部装置と接続され、外部装置と磁気ディスク装置１００との間でのデータの送受信を制御する。
【００６９】
例えば、ホストＩＦ制御部１１０は、ビタビ復号器エラー数を取得する旨の指示や、検出処理を実行する旨の指示、検出設定テーブルに記憶された検出設定を用いる旨の指示を外部装置から受け付けると、ＭＰＵ３００に送る。また、例えば、ホストＩＦ制御部１１０は、ＭＰＵ３００から検出処理結果を受け付けると、外部装置に送る。なお、外部装置とは、製造者によって用いられるコンピュータが該当する。
【００７０】
ＭＰＵ３００は、共通バス１０４を介してサーボ制御部１０５とヘッドＩＣ１０６とフォーマット制御部１０９とホストＩＦ制御部１１０と接続される。また、ＭＰＵ３００は、検出処理手順などを規定したプログラムを格納するための内部メモリを有し、検出処理を実行する。また、ＭＰＵ３００は、図２に示すように、エラー数取得部３０１と、設定取得部３０２と、実行部３０３とを備える。
【００７１】
エラー数取得部３０１は、共通バス１０４を介してサーボ制御部１０５とヘッドＩＣ１０６とフォーマット制御部１０９と接続される。また、エラー数取得部３０１は、ビタビ復号器エラー数を取得する旨の指示をホストＩＦ制御部１１０から受け付ける。そして、エラー数取得部３０１は、ビタビ復号器エラー数をゾーンごとに取得し、例えば、ゾーン「２２」についてのビタビ復号器エラー「１４１６」やゾーン「２３」についてのビタビ復号器エラー「１７９６」を取得する。そして、エラー数取得部３０１は、取得したビタビ復号器エラー数をゾーンごとに対応づけてメモリ２０２に格納し、言い換えると、ビタビ復号器エラー数テーブルを格納する。
【００７２】
ビタビ復号器エラー数をゾーンごとに取得するエラー数取得部３０１による処理についてさらに説明する。エラー数取得部３０１は、予め製造者によって決定される設定を用いたライト処理をゾーンすべてに対して実行するようにサーボ制御部１０５とヘッドＩＣ１０６とを制御し、同様に、リード処理を実行するように制御する。その後、エラー数取得部３０１は、フォーマット制御部１０９によってゾーンごとに算出されたビタビ復号器エラーの数を取得する。
【００７３】
すなわち、ビタビ復号器エラーテーブルに記憶されたビタビ復号器エラー数は、予め製造者によって決定される設定を用いて処理が行われた場合に発生するビタビ復号器エラーの数である。
【００７４】
サーボ制御部１０５とヘッドＩＣ１０６とをエラー数取得部３０１が制御する点について、具体的に説明する。エラー数取得部３０１は、ゾーンすべてに適用する「ヒーターパワー」をサーボ制御部１０５に送り、また、ライト処理する旨の指示とゾーンすべてに適用する「ＥＣＣパワー」とをヘッドＩＣ１０６に送る。その後、エラー数取得部３０１は、リード処理する旨の指示をヘッドＩＣ１０６に送る。
【００７５】
すなわち、エラー数取得部３０１は、ゾーンすべてに適用する検出設定をサーボ制御部１０５とヘッドＩＣ１０６に送り、ライト処理を実行させ、その後、ライト処理により磁気ディスク２０１に格納されたデータを磁気ディスク２０１からリード処理により読み出させる。その後、ヘッドＩＣ１０６は、リード処理により得られたデータをリードチャネル１０７に送り、リードチャネル１０７が、ビタビ復号処理を実行してビタビ復号処理済みデータをフォーマット制御部１０９に送る。続いて、フォーマット制御部１０９は、ゾーンごとにビタビ復号器エラー数を算出し、エラー数取得部３０１が、フォーマット制御部１０９によって算出されたビタビ復号器エラー数各々を取得する。
【００７６】
設定取得部３０２は、実行部３０３と接続される。設定取得部３０２は、エラー数取得部３０１によってゾーンごとに取得されたビタビ復号器エラー数を用いて検出設定テーブルを参照し、ビタビ復号器エラー数に対応づけて記憶された検出設定をゾーンごとに取得する。
【００７７】
例えば、設定取得部３０２は、ゾーンごとの検出設定を取得する旨の指示を実行部３０３から受け付けると、磁気ディスク２０１のシステムデータ記憶領域から検出設定テーブルを読み出して一度メモリ２０２に格納する。なお、設定取得部３０２が磁気ディスク２０１のシステムデータ記憶領域に記憶された検出設定テーブルを読み出す処理については、システムデータ記憶領域からデータをリード処理する従来の処理と同様であり、説明を省略する。
【００７８】
また、例えば、設定取得部３０２は、メモリ２０２に記憶されたビタビ復号器エラー数テーブルを参照し、ゾーンごとのビタビ復号器エラー数各々を取得する。そして、設定取得部３０２は、ビタビ復号器エラー数テーブルから取得したビタビ復号器エラー数各々を用いて検出設定テーブルを参照し、ゾーンごとに検出設定各々取得する。
【００７９】
具体的な例をあげて説明すると、設定取得部３０２は、ゾーン「２２」について、ビタビ復号器エラー数テーブルを参照することで、ビタビ復号器エラー数が「１４１６」であると取得する。そして、設定取得部３０２は、ビタビ復号器エラー数「１４１６」を用いて検出設定テーブルを参照し、ビタビ復号器エラー数「１４１６」に対応するＥＣＣパワー「８」とヒーターパワー「１５」とを取得する。また、同様に、設定取得部３０２は、すべてのゾーンについて、検出設定を取得する。
【００８０】
また、設定取得部３０２は、ゾーンごとの検出設定各々を実行部３０３に送る。
【００８１】
実行部３０３は、共通バス１０４を介してホストＩＦ制御部１１０と接続され、また、設定取得部３０２と接続される。実行部３０３は、設定取得部３０２によって取得された検出設定をゾーンごとに適用し、検出処理を実行する。
【００８２】
具体的には、実行部３０３は、検出設定テーブルを用いる旨の指示を受け付けることを条件として、設定取得部３０２によって取得された検出設定を領域ごとに適用して検出処理を実行する。すなわち、実行部３０３は、検出処理を実行する旨の指示をホストＩＦ制御部１１０から受け付けると、機能が「ＯＮ」であるかを判定し、具体的には、検出設定テーブルに記憶された検出設定を用いる旨の指示を外部装置から受け付けているかを判定する。ここで、実行部３０３は、受け付けていると判定した場合には、ゾーンごとに検出設定を適用した検出処理を実行し、受け付けていると判定しなかった場合には、ゾーンすべてに同じ検出設定を適用する従来の検出処理を実行する。
【００８３】
以下では、ゾーンごとに検出設定を適用した検出処理を実行する場合における実行部３０３の処理について説明する。実行部３０３は、検出処理を実行する旨の指示を受け付け、検出設定テーブルに記憶された検出設定を用いる旨の指示を外部装置から受け付けていると判定すると、ゾーンごとの検出設定を取得する旨の指示を設定取得部３０２に送る。
【００８４】
また、実行部３０３は、設定取得部３０２からゾーンごとの検出設定を受け付け、受け付けた検出設定各々をゾーンごとに適用した検出処理を実行するようサーボ制御部１０５とヘッドＩＣ１０６とを制御する。そして、実行部３０３は、フォーマット制御部１０９によって識別された訂正失敗セクタ各々を検出する。
【００８５】
サーボ制御部１０５とヘッドＩＣ１０６とを実行部３０３が制御する点について、具体的に説明する。エラー数取得部３０１は、ゾーンごとの検出設定を設定取得部３０２から受け付ける。その後、実行部３０３は、ゾーン各々に適用する「ヒーターパワー」各々をサーボ制御部１０５に送り、例えば、ゾーン「２２」に適用するヒーターパワー「１５」やゾーン「２３」に適用するヒーターパワー「１６」などを送る。また、実行部３０３は、ライト処理する旨の指示と、ゾーン各々に適用する「ＥＣＣパワー」各々とをヘッドＩＣ１０６に送る。例えば、実行部３０３は、ライト処理する旨の指示と、ゾーン「２２」に適用するＥＣＣパワー「８」やゾーン「２３」に適用するＥＣＣパワー「１１」などを送る。また、その後、実行部３０３は、リード処理する旨の指示をヘッドＩＣ１０６に送る。
【００８６】
すなわち、実行部３０３は、ゾーンごとの検出設定をサーボ制御部１０５とヘッドＩＣ１０６に送り、ライト処理を実行させ、その後、ライト処理により磁気ディスク２０１に格納されたデータを磁気ディスク２０１からリード処理により読み出させる。その後、ヘッドＩＣは、リード処理により得られたデータをリードチャネル１０７に送り、リードチャネル１０７が、ビタビ復号処理を実行してビタビ復号処理済みデータをフォーマット制御部１０９に送る。続いて、フォーマット制御部１０９は、ゾーンごとにビタビ復号器エラーを識別し、ビタビ復号器エラーに対してエラー訂正処理を行う。続いて、フォーマット制御部１０９は、訂正失敗セクタを識別し、実行部３０３が、フォーマット制御部１０９によって識別された訂正失敗セクタを取得する。
【００８７】
［検出設定テーブルについて］
ここで、図５〜図８を用いて、検出設定テーブルについてさらに説明する。以下では、検出処理の対象となる磁気ディスク２０１には、狭い範囲内に多くの訂正失敗セクタが集中している磁気ディスク２０１や、全体的に訂正失敗セクタが多い磁気ディスク２０１が含まれないものとして説明する。例えば、歩留まりを考慮して検出設定された検出設定を全セクタに適用した検出処理がすでに実行された磁気ディスク装置を対象として説明する。
【００８８】
ここで、利用者によってエラーありと報告された磁気ディスク装置２０１であるエラー磁気ディスクがあるものとして説明する。図５は、エラー磁気ディスクについてのビタビ復号器エラー数の一例を示すための図である。図５に示す横軸は、ゾーン識別番号を示し、縦軸が、ビタビ復号器エラー数を示す。図５に示す例では、エラー磁気ディスクについてのビタビ復号器エラー数は、ゾーン識別番号が増加するに従って、つまり、磁気ディスク２０１の内側になればなるほど、ビタビ復号器エラー数が増加する傾向が見られる。
【００８９】
ここで、磁気ディスクの内側になればなるほど、ビタビ復号器エラー数が増加する傾向は、一般的に見られるものである。つまり、内側になるにしたがってビタビ復号器エラー数が増加するからといって、装置不良とは識別できない。また、図５に示すように、例えば、ゾーン「１０」についてのビタビ復号器エラー数は、他のゾーンと比較して多いわけではなく、ビタビ復号器エラー数の数から異常は検出されない。
【００９０】
次に、図６を用いて、エラー磁気ディスクについてのSecterVMMとリード波形との一例を示す。図６は、エラー磁気ディスクについてのSecterVMMとリード波形との一例を説明するための図である。図６の（１）に示すSecterVMMとは、１セクタ当たりのビタビ復号器エラー数を示す。また、図６の（２）に示すリード波形とは、リード処理を実行した場合に得られる波形であり、当該波形が得られなくなると、データが得られなくなったことを示す。なお、図６の横軸は、ゾーン「１０」に含まれるセクタ各々を示す。なお、図６の横軸には、ゾーン「１０」に含まれるセクタの一部のみが含まれるものとして説明する。
【００９１】
図６に示す例では、ビタビ復号器エラー数の数から異常は検出されなかったゾーン「１０」について、図６の○で囲んだ位置に対応するセクタについて、リード処理により得られるリード波形の出力が他のセクタと比較して低下している。すなわち、他のセクタと比較して、エラーが発生する可能性が相対的に高くなっている。なお、エラーが発生する可能性の高い箇所とは、リード処理やライト処理の再現性が相対的に低い箇所であり、例えば、微小な傷がある箇所が該当する。
【００９２】
その上で、エラー磁気ディスクから検出される欠陥箇所の数とＥＣＣパワーとの関係を図７に示した。図７は、エラー磁気ディスクについてのＥＣＣパワーと欠陥箇所の検出数との関係を示すための図である。図７の横軸はゾーン識別番号を示し、縦軸は、欠陥箇所の検出数を示す。
【００９３】
図７に示す例では、ＥＣＣパワーが「１４」から「１０」の間では、欠陥箇所の検出数は、「０」に近い数にとどまっており、言い換えると、例えば、ゾーン「１０」にあるエラーが発生する可能性の高い箇所を検出できていない。一方、ＥＣＣパワーを「８」にすると、欠陥箇所が検出されており、ゾーン「１０」にあるエラーが発生する可能性の高い箇所を検出された。
【００９４】
また、図７に示す例では、ＥＣＣパワーを「８」にして検出処理を実行した場合には、磁気ディスクの内側に位置するゾーンから相対的に多くの箇所を検出しており、この結果、装置不良と扱われ、歩留まりを下げる結果となる。なお、検出された箇所の数が所定数以上となった磁気ディスクについては、装置不良として扱われる。
【００９５】
ここで、内側に位置するゾーンについて検出された箇所について、SecterVMMやリード波形を測定すると、リード波形の出力レベルには問題なかった。すなわち、内側に位置するゾーンについて検出された箇所すべてが、エラーが発生する可能性の高い箇所というわけではなかった。
【００９６】
すなわち、本検出設定テーブルは、以上の結果を踏まえた上で、ビタビ復号器エラー数ごとに、適切な検出設定を予め記憶する。例えば、ビタビ復号器エラー数ごとに対応づけられた検出設定各々は、エラー磁気ディスク各々について、欠陥箇所が検出される検出設定をビタビ復号器エラー数ごとに識別して統計をとることで設定される。
【００９７】
具体的には、検出設定テーブルは、少ないビタビ復号器エラー数が検出されたゾーンでは、検出能力が相対的に高くなる検出設定を記憶し、図８に示す例では、ゾーン「０〜２２」では、ＥＣＣパワー「８」が適用される検出設定を記憶する。また、多くのビタビ復号器エラー数が検出された内側のゾーンでは、検出能力が相対的に低くなる検出設定を記憶し、図８に示す例では、ゾーン「２３〜２６」では、ＥＣＣパワー「１０」が適用される検出設定を記憶する。なお、図８は、検出設定を可変にした場合における欠陥箇所の検出数を説明するための図である。図８の横軸はゾーン識別番号を示し、縦軸は、欠陥箇所の検出数を示す。
【００９８】
［ビタビ復号器エラー数テーブル取得処理］
図９を用いて、実施例１におけるビタビ復号器エラー数テーブルを取得する処理の流れの一例について説明する。図９は、実施例１におけるビタビ復号器エラー数テーブルを取得する処理の流れの一例について説明ためのフローチャートである。
【００９９】
図９に示すように、エラー数取得部３０１は、ビタビ復号器エラー数を取得する旨の指示をホストＩＦ制御部１１０から受け付ける（ステップＳ１０１肯定）。そして、エラー数取得部３０１は、予め製造者によって決定される設定を用いたライト処理を実行するようにサーボ制御部１０５とヘッドＩＣ１０６とを制御する（ステップＳ１０２）。具体的には、エラー数取得部３０１は、予め製造者によって決定される設定をサーボ制御部１０５とヘッドＩＣ１０６とに送り、ライト処理を実行させる。そして、エラー数取得部３０１は、リード処理を実行するようにサーボ制御部１０５とヘッドＩＣ１０６とを制御する（ステップＳ１０３）。
【０１００】
そして、エラー数取得部３０１は、ビタビ復号器エラー数をゾーンごとに取得し（ステップＳ１０４）、つまり、記憶媒体を区分けした領域ごとにビタビ復号器エラー数を取得する。具体的には、リード処理後、ヘッドＩＣ１０６は、リード処理により得られたデータをリードチャネル１０７に送り、リードチャネル１０７が、ビタビ復号処理を実行してビタビ復号処理済みデータをフォーマット制御部１０９に送る。続いて、フォーマット制御部１０９がゾーンごとにビタビ復号器エラー数を算出し、エラー数取得部３０１が、フォーマット制御部１０９によって算出されたビタビ復号器エラー数各々を取得する。
【０１０１】
例えば、エラー数取得部３０１は、ゾーン「２２」についてのビタビ復号器エラー「１４１６」やゾーン「２３」についてのビタビ復号器エラー「１７９６」などを取得する。
【０１０２】
［検出処理］
図１０を用いて、実施例１における検出処理の流れの一例について説明する。図１０は、実施例１における検出処理の流れの一例について説明ためのフローチャートである。
【０１０３】
図１０に示すように、実行部３０３は、検出処理を実行する旨の指示をホストＩＦ制御部１１０から受け付けると（ステップＳ２０１肯定）、機能が「ＯＮ」であるかを判定する。すなわち、実行部３０３は、検出設定テーブルに記憶された検出設定を用いる旨の指示を外部装置から受け付けているかを判定する。ここで、実行部３０３は、機能が「ＯＦＦ」であると判定した場合には（ステップＳ２０２否定）、つまり、受け付けていると判定しなかった場合には、ゾーンすべてに同じ検出設定を適用する従来の検出処理を実行する（ステップＳ２０３）。
【０１０４】
一方、実行部３０３が、機能が「ＯＮ」であると判定した場合には（ステップＳ２０２肯定）、つまり、受け付けていると判定した場合には、設定取得部３０２は、検出設定テーブルを読み出す（ステップＳ２０４）。そして、実行部３０３は、ゾーンごとのビタビ復号器エラー数を取得する（ステップＳ２０５）。そして、設定取得部３０２は、ゾーンごとの出設定各々取得する（ステップＳ２０６）。つまり、設定取得部３０２は、エラー数取得部３０１によってゾーンごとに取得されたビタビ復号器エラー数を用いて検出設定テーブルを参照し、ビタビ復号器エラー数に対応づけて記憶された検出設定を領域ごとに取得する。
【０１０５】
そして、実行部３０３は、ゾーンごとに検出設定を適用して検出処理を実行する（ステップＳ２０７）。つまり、設定取得部３０２によって取得された検出設定をゾーンごとに適用して検出処理を実行し、具体的には、フォーマット制御部１０９によって識別された訂正失敗セクタ各々を検出する。
【０１０６】
［実施例１の効果］
上記したように、実施例１によれば、磁気ディスク装置１００は、磁気ディスク２０１の欠陥箇所を検出する検出処理時に適用される検出能力に関する検出設定を記憶する検出設定テーブルを備える。また、検出設定テーブルは、ビタビ復号器エラー数に対応づけて、エラー数が多いほど検出能力が相対的に高い検出設定を記憶し、ビタビ復号器エラー数が少ないほど検出能力が相対的に低い検出設定を記憶する。その上で、磁気ディスク装置１００は、出処理の対象となる磁気ディスク２０１に対してビタビ復号処理を実行し、ゾーンごとにビタビ復号器エラー数を取得する。また、磁気ディスク装置１００は、ゾーンごとに取得されたビタビ復号器エラー数を用いて検出設定テーブルを参照し、ビタビ復号器エラー数に対応づけて記憶された検出設定をゾーンごとに取得し、検出処理を実行するので、歩留まりを維持しつつ検出能力を向上することが可能である。
【０１０７】
具体的には、磁気ディスク装置１００は、予め用意した検出設定テーブルを用いて、ゾーンごとに検出設定を変更し、歩留まりを維持しつつ検出能力を向上することが可能となる。すなわち、図１１の（１）に示すように、同一の検出設定を適用した場合には、磁気ディスク２０１の内側に位置するゾーンから相対的に多くの箇所を検出する結果となり、装置不良となってしまった。一方、図１１の（２）に示すように、検出設定を可変にすることで、磁気ディスク２０１の内側に位置するゾーンにて検出する箇所の数を抑えることができる。また、ビタビ復号器エラー数が少ないゾーンでは検出能力が相対的に高い検出設定を適用できる。この結果、歩留まりを維持しつつ検出能力を向上することが可能となる。なお、図１１は、実施例１における磁気ディスク装置の効果を説明するための図である。
【０１０８】
また、実施例１によれば、磁気ディスク装置１００は、検出設定テーブルに記憶された検出設定を用いる旨の指示を受け付けることを条件として、設定取得部３０２によって取得された検出設定をゾーンごとに適用して検出処理を実行する。この結果、利用者の指示によって、機能のＯＮ／ＯＦＦを簡単に実行することが可能である。
【実施例２】
【０１０９】
さて、これまで実施例１について説明したが、本発明は実施例１以外にも、その他の実施例にて実施されてもよい。そこで、以下では、その他の実施例について説明する。
【０１１０】
［検出設定テーブル］
例えば、実施例１では、検出設定テーブルが、磁気ディスク２０１のシステムデータ記憶領域に記憶されている場合について説明したが、本発明はこれに限定されるものではない。例えば、予めメモリに記憶させてもよく、また、ＭＰＵ３００が外部装置から受け付けても良い。
【０１１１】
［指示］
また、実施例１では、ビタビ復号器エラー数を取得する旨の指示や、検出処理を実行する旨の指示、検出設定テーブルに記憶された検出設定を用いる旨の指示をそれぞれ別々に受け付ける手法について説明したが、本発明はこれに限定されるものではない。例えば、ビタビ復号器エラー数を取得する旨の指示、検出処理を実行する旨の指示、および、検出設定テーブルに記憶された検出設定を用いる旨の指示の内、複数の指示を含む指示を受け付けても良い。
【０１１２】
また、実施例１では、ビタビ復号器エラー数を取得する旨の指示を受け付けた後に、ビタビ復号器エラー数テーブルを算出する手法について説明したが、本発明はこれに限定されるものではなく、指示を待つことなく算出してもよい。
【０１１３】
［ゾーン］
また、実施例１では、ゾーンごとにビタビ復号器エラー数を取得し、ゾーンごとに検出設定を適用する手法について説明したが、本発明はこれに限定されるものではない。例えば、所定数のセクタごとに、ビタビ復号器エラー数を取得し、検出設定を適用してもよい。
【０１１４】
［実施手法］
また、実施例１では、検出設定として、ＥＣＣパワーとヒーターパワーとを合わせて用いる場合について説明したが、本発明はこれに限定されるものではなく、ＥＣＣパワーまたはヒーターパワーのみを用いてもよい。
【０１１５】
［機能ＯＮ／ＯＦＦ］
また、実施例１では、検出設定テーブルに記憶された検出設定を用いる旨の指示を受け付けた場合にのみ、検出設定テーブルに記憶された検出設定を用いる場合について説明したが、本発明はこれに限定されるものではない。例えば、常に、検出設定テーブルに記憶された検出設定を用いて検出処理を実行しても良い。
【０１１６】
［システム構成］
また、実施例１において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともでき、あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。例えば、検出設定を手動にて取得してもよい。また、磁気ディスク装置１００は、予め所定のタイミングが検出設定されており、外部装置からの指示を待つことなく、所定のタイミングとなると、ビタビ復号器エラー数を取得する処理や検出処理を開始しても良い。
【０１１７】
この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含むデータについては、特記する場合を除いて任意に変更することができる（図１〜図４、図９、図１０）。
【０１１８】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
【０１１９】
例えば、外部装置としてのコンピュータが、検出設定テーブルやビタビ復号器エラー数テーブルを記憶し、エラー数取得部３０１や設定取得部３０２や実行部３０３を備えることで、検出処理を実行しても良い。
【０１２０】
［その他］
なお、本実施例で説明した検出プログラムは、インターネットなどのネットワークを介して配布することができる。また、このプログラムは、ハードディスク、フレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行することもできる。
【図面の簡単な説明】
【０１２１】
【図１】実施例１における磁気ディスク装置の概要を説明するための図である。
【図２】実施例１における磁気ディスク装置の構成の一例を説明するためのブロック図である。
【図３】実施例１における検出設定テーブルに記憶されたデータの一例を説明するための図である。
【図４】実施例１におけるビタビ復号器エラー数テーブルに記憶されたデータの一例を説明するための図である。
【図５】エラー磁気ディスクについてのビタビ復号器エラー数の一例を示すための図である。
【図６】エラー磁気ディスクについてのSecterVMMとリード波形との一例を説明するための図である。
【図７】エラー磁気ディスクについてのＥＣＣパワーと欠陥箇所の検出数との関係を示すための図である。
【図８】検出設定を可変にした場合における欠陥箇所の検出数を説明するための図である。
【図９】実施例１におけるビタビ復号器エラー数テーブルを取得する処理の流れの一例について説明するためのフローチャートである。
【図１０】実施例１における検出処理の流れの一例について説明するためのフローチャートである。
【図１１】実施例１における磁気ディスク装置の効果を説明するための図である。
【符号の説明】
【０１２２】
１００  磁気ディスク装置
１０１  ＳＰＭ（スピンドルモータ）
１０２  磁気ヘッド
１０３  ＶＣＭ（ボイスコイルモータ）
１０４  共通バス
１０５  サーボ制御部
１０６  ヘッドＩＣ
１０７  リードチャネル
１０８  ビタビ復号器
１０９  フォーマット制御部
１１０  ホストＩＦ制御部
２０１  磁気ディスク
２０２  メモリ
３００  ＭＰＵ
３０１  エラー数取得部
３０２  設定取得部
３０３  実行部
【図１】
2010123188.tif 000003
【図２】
2010123188.tif 000004
【図３】
2010123188.tif 000005
【図４】
2010123188.tif 000006
【図５】
2010123188.tif 000007
【図６】
2010123188.tif 000008
【図７】
2010123188.tif 000009
【図８】
2010123188.tif 000010
【図９】
2010123188.tif 000011
【図１０】
2010123188.tif 000012
【図１１】
2010123188.tif 000013