(57)【要約】【課題】トラック中心線上でのデータの読み取りエラーが発生した場合に、読み取りの再試行としてオフセットリードを行って読み取ったデータを保証する記憶装置、読み取りデータ保証制御装置及び読み取りデータ保証方法を提供する。【解決手段】本発明の記憶装置は、インナオフセットデータ読み取り手段によるインナオフセット読み取りデータ及びアウタオフセットデータ読み取り手段によるアウタオフセット読み取りデータを比較する読み取りデータ比較手段と、読み取りデータ比較手段による比較結果が一致する場合に、この読み取りデータを出力する一致読み取りデータ出力手段とを備えたことを特徴とする。【選択図】        図８
2007317307.tif 000002
【特許請求の範囲】
【請求項１】
記憶媒体のトラック中心付近でのデータ読み取りエラー発生時に、該記憶媒体の中心方向であるインナ方向及び該記憶媒体の外周方向であるアウタ方向へオフセットしてデータ読み取りを再試行するオフセット読み取り再試行処理によって読み取られた読み取りデータの保証を行う記憶装置であって、
前記インナ方向へのオフセットによりインナオフセットデータを読み取り、前記アウタ方向へのオフセットによりアウタオフセットデータを読み取るデータ読み取り部と、
前記データ読み取り部により読み取られたインナオフセットデータとアウタオフセットデータとを比較するデータ比較部と、
前記データ比較部による比較結果が一致する場合に、前記読み取りデータを出力制御するデータ出力制御部と
を備えたことを特徴とする記憶装置。
【請求項２】
前記データ読み取り部は、前記データ比較部による比較結果が一致しない場合に、前記インナ方向へのオフセット量及び前記アウタ方向へのオフセット量それぞれを同量だけ段階的に減少させてオフセット読み取りを行い、
前記データ出力制御部は、前記データ読み取り部による一方のオフセットのデータ読み取りにエラーが発生した際に他方のオフセットのデータ読み取りが正常に行われると、該他方のオフセットによる読み取りデータを出力制御することを特徴とする請求項１に記載の記憶装置。
【請求項３】
前記データ読み取り部は、インナオフセットデータ又はアウタオフセットデータの何れか一方のデータ読み取りが成功した場合に、前記インナ方向へのオフセット量及び前記アウタ方向へのオフセット量それぞれを同量だけ段階的に増加させてオフセット読み取りを行い、
前記データ出力制御部は、前記データ読み取り部により一方のオフセットのデータ読み取りにエラーが発生した際に他方のオフセットのデータ読み取りが正常に行われると、該他方のオフセットの読み取りデータを出力することを特徴とする請求項１に記載の記憶装置。
【請求項４】
記憶媒体のトラック中心付近でのデータ読み取りエラー発生時に、該記憶媒体の中心方向であるインナ方向及び該記憶媒体の外周方向であるアウタ方向へオフセットしてデータ読み取りを再試行するオフセット読み取り再試行処理によって読み取られた読み取りデータの保証を行うデータ保証制御装置であって、
前記インナ方向へのオフセットにより読み取り取られたインナオフセットデータと、前記アウタ方向へのオフセットにより読み取られたアウタオフセットデータとを比較するデータ比較部と、
前記データ比較部による比較結果が一致する場合に、前記読み取りデータを出力制御するデータ出力制御部と
を備えたことを特徴とするデータ保証制御装置。
【請求項５】
記憶媒体のトラック中心付近でのデータ読み取りエラー発生時に、該記憶媒体の中心方向であるインナ方向及び該記憶媒体の外周方向であるアウタ方向へオフセットしてデータ読み取りを再試行するオフセット読み取り再試行処理によって読み取られた読み取りデータの保証を行う読み取りデータ保証方法であって、
前記インナ方向へのオフセットによりインナオフセットデータを読み取り、前記アウタ方向へのオフセットによりアウタオフセットデータを読み取るオフセットデータ読み取り工程と、
前記データ読み取り工程により読み取られたインナオフセットデータとアウタオフセットデータとを比較するデータ比較工程と、
前記データ比較工程による比較結果が一致する場合に、前記読み取りデータを出力制御するデータ出力制御工程と
を含んだことを特徴とする読み取りデータ保証方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、記憶媒体のトラック中心付近でのデータ読み取りエラー発生時に、該記憶媒体の中心方向であるインナ方向及び該記憶媒体の外周方向であるアウタ方向へオフセットしてデータ読み取りを再試行するオフセット読み取り再試行処理によって読み取られた読み取りデータの保証を行う記憶装置、読み取りデータ保証制御装置及び読み取りデータ保証方法に関する。
【背景技術】
【０００２】
近年、磁気ディスク装置の読み取りヘッドは、読み取り速度の向上及び読み取り信頼性の向上のために、書き込みヘッドに比べてより小さくなってきている。これは、読み取りヘッドが、Ｓ／Ｎ比（Signal to Noise ratio）が悪くなるために、ヘッドのコアをある程度までしか小さくできないのに対して、読み取りヘッドは、ＭＲ（Magneto Resistive）、ＧＭＲ（Giant Magneto Resistive）、ＴＭＲ（Turning Magneto Resistive）を使用することにより、読み取り性能を低下させることなく、ヘッドのコアを小さくできることによる。
【０００３】
ところで、磁気ディスクに書き込まれるデータは、トラック中心線に沿って書き込まれることが理想である。しかし、ヘッドを支持するアームは微小に振動し、応じて書き込みヘッドも振動するため、該データがトラック中心線からずれて書き込まれるというオフセットライトが発生する場合がある。
【０００４】
かかるオフセットライトによって古いデータの上に新しいデータが書き込まれた場合に、トラック中心線の付近で、古いデータと新しいデータとの両方が読み取り可能に存在することがある。これは、オフセットライトのオフセット、即ち、書き込みデータの中心線のトラック中心線からの乖離によって、新しいデータによって古いデータが完全には上書きされず、古いデータの一部が読み取り可能な状態で残されたまま新しいデータがオフセットライトされることによるものである。
【０００５】
このように、古いデータの上に新しいデータがオフセットライトされると、トラック中心線付近にオフセットライトの端部が位置することとなる場合があり、読み取りヘッドがオフセットなしにデータを読み取ろうとすると、読み取りエラーが発生することがある。
【０００６】
このような読み取りエラーが発生した場合の対処方法として、例えば、特許文献１では、読み取り利得に応じてオフセット量を変化させてデータを再取得する方法が開示されている。
【０００７】
また、特許文献２には、オフセットリードによってデータが復旧可能であるとき、読み取りエラーが発生し、オフセットリードによってデータが読み取れたセクタ及びその前後のセクタのデータを退避させた上で、これらのデータを元のセクタにオフセットなしで再び書き込むことにより、次回からオフセットリードを行わずともデータの読み取りを可能とした磁気ディスク装置が開示されている。
【０００８】
【特許文献１】特開２００４−１３４０７７号公報
【特許文献２】特開２００１−１１８３４３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかしながら、上記特許文献１及び２に代表される従来技術では、古いデータの上に新しいデータがオフセットライトによって上書きされている場合に、オフセット量の違いによって古いデータと新しいデータとの２種類のデータが読み取れてしまう場合に、何れのデータが信頼すべきデータであるかを保証するものではなかった。
【００１０】
具体的には、トラック中心線上にオフセット量が０で書き込まれている古いデータに、新しいデータが磁気ディスクの外周方向、即ちアウタ方向へオフセットライトされている場合に、磁気ディスクの中心方向、即ちインナ方向のオフセットリードによるデータは古いデータであり、アウタ方向のオフセットリードによるデータは新しいデータである。
【００１１】
かかる状況においては、最初にデータを読み取った段階では、何れのデータが正しいデータであるかを判断することはできない。よって、トラック中心線上でのデータの読み取りエラーが発生した場合に、オフセットリードを行って読み取ったデータを如何にして保証するかが極めて重要な課題となってきている。
【００１２】
本発明は、上記問題点（課題）を解消するためになされたものであって、トラック中心線上でのデータの読み取りエラーが発生した場合に、読み取りの再試行（リトライリード）としてオフセットリードを行って読み取ったデータを保証する記憶装置、読み取りデータ保証制御装置及び読み取りデータ保証方法を提供することを目的とする。
【課題を解決するための手段】
【００１３】
上述した問題を解決し、目的を達成するため、本発明は、記憶媒体のトラック中心付近でのデータ読み取りエラー発生時に、該記憶媒体の中心方向であるインナ方向及び該記憶媒体の外周方向であるアウタ方向へオフセットしてデータ読み取りを再試行するオフセット読み取り再試行処理によって読み取られた読み取りデータの保証を行う記憶装置であって、前記インナ方向へのオフセットによりインナオフセットデータを読み取り、前記アウタ方向へのオフセットによりアウタオフセットデータを読み取るデータ読み取り部と、前記データ読み取り部により読み取られたインナオフセットデータとアウタオフセットデータとを比較するデータ比較部と、前記データ比較部による比較結果が一致する場合に、前記読み取りデータを出力制御するデータ出力制御部とを備えたことを特徴とする。
【００１４】
また、本発明は、上記発明において、前記データ読み取り部は、前記データ比較部による比較結果が一致しない場合に、前記インナ方向へのオフセット量及び前記アウタ方向へのオフセット量それぞれを同量だけ段階的に減少させてオフセット読み取りを行い、前記データ出力制御部は、前記データ読み取り部による一方のオフセットのデータ読み取りにエラーが発生した際に他方のオフセットのデータ読み取りが正常に行われると、該他方のオフセットによる読み取りデータを出力制御することを特徴とする。
【００１５】
また、本発明は、上記発明において、前記データ読み取り部は、インナオフセットデータ又はアウタオフセットデータの何れか一方のデータ読み取りが成功した場合に、前記インナ方向へのオフセット量及び前記アウタ方向へのオフセット量それぞれを同量だけ段階的に増加させてオフセット読み取りを行い、前記データ出力制御部は、前記データ読み取り部により一方のオフセットのデータ読み取りにエラーが発生した際に他方のオフセットのデータ読み取りが正常に行われると、該他方のオフセットの読み取りデータを出力することを特徴とする。
【００１６】
また、本発明は、記憶媒体のトラック中心付近でのデータ読み取りエラー発生時に、該記憶媒体の中心方向であるインナ方向及び該記憶媒体の外周方向であるアウタ方向へオフセットしてデータ読み取りを再試行するオフセット読み取り再試行処理によって読み取られた読み取りデータの保証を行うデータ保証制御装置であって、前記インナ方向へのオフセットにより読み取り取られたインナオフセットデータと、前記アウタ方向へのオフセットにより読み取られたアウタオフセットデータとを比較するデータ比較部と、前記データ比較部による比較結果が一致する場合に、前記読み取りデータを出力制御するデータ出力制御部とを備えたことを特徴とする。
【００１７】
また、本発明は、記憶媒体のトラック中心付近でのデータ読み取りエラー発生時に、該記憶媒体の中心方向であるインナ方向及び該記憶媒体の外周方向であるアウタ方向へオフセットしてデータ読み取りを再試行するオフセット読み取り再試行処理によって読み取られた読み取りデータの保証を行うデータ保証方法であって、前記インナ方向へのオフセットによりインナオフセットデータを読み取り、前記アウタ方向へのオフセットによりアウタオフセットデータを読み取るオフセットデータ読み取り工程と、前記データ読み取り工程により読み取られたインナオフセットデータとアウタオフセットデータとを比較するデータ比較工程と、前記データ比較工程による比較結果が一致する場合に、前記読み取りデータを出力制御するデータ出力制御工程とを含んだことを特徴とする。
【発明の効果】
【００１８】
本発明によれば、インナオフセットによる読み取りデータ及びアウタオフセットによる読み取りデータの比較結果が一致する場合に読み取りデータを出力するので、オフセットによる読み取りデータの正当性を保証し、正しいデータを出力することができるという効果を奏する。
【００１９】
また、本発明によれば、インナオフセットによる読み取りデータ及びアウタオフセットによる読み取りデータの比較結果が一致しない場合に、インナ方向へのオフセット量及びアウタ方向へのオフセット量それぞれを同量だけ段階的に減少させてオフセットデータ読み取りを行い、一方のオフセットによるデータ読み取りにエラーが発生した際に、他方のオフセットによるデータ読み取りが正常に行われると、該他方のオフセットによる読み取りデータを出力するので、オフセットによる読み取りデータの正当性を保証し、正しいデータを出力することができるという効果を奏する。
【００２０】
また、本発明によれば、インナオフセットによるデータ読み取り及びアウタオフセットによるデータ読み取りの何れか一方によりデータ読み取りが成功した場合に、インナ方向へのオフセット量及びアウタ方向へのオフセット量それぞれを同量だけ段階的に増加させてオフセットデータ読み取りを行い、一方のオフセットによるデータ読み取りにエラーが発生した際に、他方のオフセットによるデータ読み取りが正常に行われると、該他方のオフセットによる読み取りデータを出力するので、オフセットによる読み取りデータの正当性を保証し、正しいデータを出力することができるという効果を奏する。
【発明を実施するための最良の形態】
【００２１】
以下に添付図面を参照して、本発明に係る記憶装置、読み取りデータ保証制御装置及び読み取りデータ保証方法の好適な実施例を詳細に説明する。以下の実施例では、本発明を、コンピュータシステムであるホストコンピュータに接続される磁気ディスク装置に適用した場合を示すこととする。しかし、これに限らず、光磁気ディスク装置などの記憶装置に広く適用可能である。
【実施例】
【００２２】
先ず、従来のオフセットリードにおける問題点について説明する。図１は、従来のオフセットリードにおける問題点を示す図である。同図に示すように、旧ライトデータの中心線が磁気ディスクのトラック中心線と一致するように旧ライトデータが磁気ディスクに書き込まれている。そしてこの、旧ライトデータに新ライトデータが上書きされている。旧ライトデータのライトコア幅と新ライトデータのコア幅とは同一であるため、旧ライトデータのデータ幅と新ライトデータのデータ幅とは一致する。新ライトデータは、図示する“offset量”分だけ図示の“アウタ方向”（磁気ディスクの外周方向）へオフセットライトされている。この“offset量”は、旧ライトデータ中心線と新ライトデータ中心線との“ずれ”に一致する。また、“offset量”は、旧ライトデータの“インナ方向”側の境界線と新ライトデータの同じく“インナ方向”側の境界線との“ずれ”とも一致するものである。
【００２３】
ここで、リードコアのリードコア幅は、ライトコアのライトコア幅に比べて小さいことが一般的である。そのために、図示するように、“offset量”がリードコア幅より小さければ、新ライトデータがオフセットライトされている部分のトラック及びセクタにおいて、オフセットリードによって旧ライトデータを読み出してしまうというおそれがあった。即ち、“offset量”よりリードコア幅が小さいとき、誤って旧ライトデータを読み出してしまう場合があった。
【００２４】
本発明は、かかる問題点を解消するためになされたものであって、特に、トラック中心線付近上でのデータ読み出しに失敗した際に、読み取りヘッドをオフセットして再読み出しを行う場合に、オフセットリードにより読み出されたデータが正しいものであるか否かを保証するためになされたものである。
【００２５】
なお、「“offset量”がリードコア幅より小さければ、新ライトデータがオフセットライトされている部分のトラック及びセクタにおいて、オフセットリードによって旧ライトデータを読み出してしまう」と上記した。ライトコアのインナ方向及びアウタ方向の端部においては、微小な幅ではあるが、リードコアによる読み取りが不可能となる読み取り不可部分が存在している。このために、“offset量”がリードコア幅と同一であれば、リードコアの端部が読み取り不可部分にかかってしまうために、この場合には、読み取りエラーとなってしまう。
【００２６】
次に、本発明のオフセットリードにおける特徴点について説明する。図２は、本発明のオフセットリードにおける特徴点を示す図である。同図に示すように、トラック中心線付近上において読み出しエラーが発生した場合に、リードコアのオフセットを行って再度データ読み出しを行うこととなるが、旧ライトデータ中心線に一致する旧ライトデータ中心線から、インナ方向及びアウタ方向それぞれの方向へ同量のoffset量だけoffsetさせてデータを再読み出しする。このように、offset量よりリードコア幅が小さいとき、インナ方向とアウタ方向とで同量だけoffsetさせて読み込んだ２つのデータを比較することによって、オフセットリードリトライ時の読み出しデータの保証を行うことが可能となる。
【００２７】
詳しくは後述するが、例えば、オフセットリードリトライ時の読み出しデータの保証の例としては、インナ方向のオフセットリードリトライにより読み出された読み出しデータと、アウタ方向のオフセットリードリトライにより読み出された読み出しデータとを比較し、両者が一致すれば、読み出したデータは正しいデータであると判定できるので、このデータをホストコンピュータへ出力することとなる。
【００２８】
また、インナ方向のオフセットリードリトライにより読み出された読み出しデータと、アウタ方向のオフセットリードリトライにより読み出された読み出しデータとを比較し、両者が一致しなければ、読み出したデータは正しいデータであるとは判定できないので、ホストコンピュータに対してエラー情報を出力することとなる。
【００２９】
若しくは、インナ方向のオフセットリードリトライにより読み出された読み出しデータと、アウタ方向のオフセットリードリトライにより読み出された読み出しデータとを比較し、両者が一致しなければ、インナ方向及びアウタ方向へ同量ずつ段階的にoffset量を増加させてデータ読み出しを再試行し、先に読み出しエラーが発生した方向に存在するデータを正しくないデータとし、もう一方のデータを正しいデータとしてホストコンピュータへ出力する。これは、新ライトデータがオフセットライトされていることから、新ライトデータは旧ライトデータに比べてより多いoffset量でも読み出し可能であることに基づく。
【００３０】
若しくは、インナ方向のオフセットリードリトライにより読み出された読み出しデータと、アウタ方向のオフセットリードリトライにより読み出された読み出しデータとを比較し、両者が一致しなければ、インナ方向及びアウタ方向へのoffset量を同量ずつ段階的に減少させてデータ読み出しを再試行し、先に読み出しエラーが発生した方向に存在するデータを正しくないデータとし、もう一方のデータを正しいデータとしてホストコンピュータへ出力する。ただし、これは、offset量が（ライトコア幅／２）を超えないように新ライトデータがオフセットライトされていることを前提として、新ライトデータは旧ライトデータに比べてより少ないoffset量でも読み出し可能であることに基づく。
【００３１】
上記のように、トラック中心付近でリードエラーが発生した場合に、インナオフセットリード及びアウタオフセットリードの両方を行い、その比較結果及び検証結果に基づいて、次に行う処理を決定することとなる。インナオフセットリード又はアウタオフセットリードの何れか一方のみのリード結果のみに基づいてリードデータを決定しないために、データがオフセットライトされて同一トラックの同一セクタにおいて異なるデータが読み出し可能であっても、リードデータの正当性を高く保証することが可能となる。
【００３２】
次に、トラック中心付近においてリードエラー発生時の処理の第１の例について説明する。図３は、トラック中心付近においてリードエラー発生時の処理の概要を示す図（その１）である。同図に示すように、トラック中心から下方の近傍においてデータ読み取りエラーが発生するリードエラー領域が存在して、（１）このリードエラー領域をリードコアが読み取ろうとしたためにリードエラーが発生する。（２）そして、インナ方向及びアウタ方向への同じoffset量のoffsetリードが両方とも成功して、かつ両者の読み取りデータがリードデータ１であって一致する場合に、このリードデータ１を正しいデータとしてホストコンピュータへ送出する。
【００３３】
次に、トラック中心付近においてリードエラー発生時の処理の第２の例について説明する。図４は、トラック中心付近においてリードエラー発生時の処理の概要を示す図（その２）である。同図に示すように、トラック中心から下方の近傍においてデータ読み取りエラーが発生するリードエラー領域が存在して、（１）このリードエラー領域をリードコアが読み取ろうとしたためにリードエラーが発生する。（２）そして、インナ方向（磁気ディスクの中心方向、図では下方向）及びアウタ方向（磁気ディスクの外周方向、図では上方向）への同じoffset量のoffsetリードが両方とも成功したが、両者の読み取りデータがリードデータ１及びリードデータ２であって一致しない。（３）ここで、さらに、インナオフセットリード及びアウタオフセットリードのoffset量を段階的に同量ずつ減らしてデータ読み出しの再試行を続ける。これを、減少オフセットリトライリードと呼ぶこととする。
【００３４】
（４）その結果、いずれかが先にリードエラーとなった場合（図では、インナ方向のオフセットリードが先にエラーとなっている）、リードエラーとならなかったオフセットリードデータ（図ではリードデータ１）を正しいデータとしてホストコンピュータへ送出することとなる。
【００３５】
次に、トラック中心付近においてリードエラー発生時の処理の第３の例について説明する。図５は、トラック中心付近においてリードエラー発生時の処理の概要を示す図（その３）である。同図に示すように、トラック中心の近傍においてデータ読み取りエラーが発生するリードエラー領域が存在して、（１）このリードエラー領域をリードコアが読み取ろうとしたためにリードエラーが発生する。（２）そして、インナ方向及びアウタ方向への同じoffset量のoffsetリードを行ったが、一方のオフセットリードのみが成功したために（図では、アウタ方向のオフセットリードのみ成功）、この読み取り成功したリードデータ１を正しいデータとしてホストコンピュータへ送出する。
【００３６】
次に、トラック中心付近においてリードエラー発生時の処理の第４の例について説明する。図６は、トラック中心付近においてリードエラー発生時の処理の概要を示す図（その４）である。同図に示すように、トラック中心の近傍においてデータ読み取りエラーが発生するリードエラー領域が存在して、（１）このリードエラー領域をリードコアが読み取ろうとしたためにリードエラーが発生する。（２）そして、インナ方向及びアウタ方向への同じoffset量のoffsetリードのうち一方のみが成功する（図ではアウタ方向のオフセットリードのみ成功）。（３）さらに、インナオフセットリード及びアウタオフセットリードのoffset量を段階的に同量ずつ増やしてデータ読み出しの再試行を続ける。これによってもなお依然として一方のみ（図では、アウタ方向のオフセットリードのみ）が成功する場合に、この読み取り成功しているリードデータ１を正しいデータしてホストコンピュータへ送出する。これを、増加オフセットリトライリードと呼ぶこととする。
【００３７】
次に、トラック中心付近においてリードエラー発生時の処理の第５の例について説明する。図７は、トラック中心付近においてリードエラー発生時の処理の概要を示す図（その５）である。同図に示すように、トラック中心から下方の近傍においてデータ読み取りエラーが発生するリードエラー領域が存在して、（１）このリードエラー領域をリードコアが読み取ろうとしたためにリードエラーが発生する。（２）そして、インナ方向及びアウタ方向への同じoffset量のoffsetリードのうち一方のみが成功する（図ではアウタ方向のオフセットリードのみ成功）。（３）さらに、インナオフセットリード及びアウタオフセットリードのoffset量を段階的に同量ずつ増やしてデータ読み出しの再試行を続ける。この結果、インナ方向及びアウタ方向への同じoffset量のoffsetリードが双方とも成功し、かつ読み出したデータがリードデータ１及びリードデータ２と一致しない。この場合に、エラー情報をホストコンピュータへ送出することとなる。
【００３８】
次に、実施例の磁気ディスクが有するハードディスクコントローラの構成について説明する。図８は、ハードディスクコントローラの構成を示す機能ブロック図である。同図に示すように、ハードディスクコントローラ１００は、オフセットリトライ制御部１０１と、オフセットリトライデータ検証部１０２と、ヘッド駆動制御部１０３と、制御パラメータインターフェース部１０４と、ディスクインターフェース部１０５と、ＥＣＣ（Error Correcting Code）処理部１０６と、ホストインターフェース部１０７とを有する。なお、オフセットリードリトライ制御部１０１及びオフセットリトライデータ検証部１０２は、ＭＣＵ（Microcontroller Unit）のファームウェアプログラムにより構成される。
【００３９】
オフセットリトライ制御部１０１は、磁気ディスクから読み出され、ディスクインターフェース部１０５、ＥＣＣ処理部１０６、オフセットリトライデータ検証部１０２へと受け渡されてきた読み出しデータがエラーを示す情報であるときに、インナ方向及びアウタ方向へのオフセットリトライリードを行うようにヘッド駆動制御部１０３へ指示を出力する。
【００４０】
また、インナ方向及びアウタ方向へのオフセットリトライリードによるリードデータが不一致又はいずれか一方がリードエラーであるときに、ヘッド駆動制御部１０３に対してインナ方向及びアウタ方向へのoffset量を同量だけ段階的に変化（増加又は減少）させてオフセットリードを継続させる指示を出力する。
【００４１】
オフセットリトライデータ検証部１０２は、ディスクインターフェース１０５からＥＣＣ処理部１０６を経て受け渡された磁気ディスクから読み出された読み出しデータを検証する処理を行う。具体的には、インナ方向のオフセットリードによる読み出しデータとアウタ方向のオフセットリードによる読み出しデータとの両方が読み出し成功して一致するか否かを検証したり、いずれか一方のオフセットリードが成功しもう一方のオフセットリードが失敗か否かを認識して、オフセットリードが成功した読み出しデータを正当なデータとして取り扱うこととしたり、双方のオフセットリードが失敗した場合はエラーを認識したりする。オフセットリトライデータ検証部１０２は、制御パラメータインターフェース部１０４を介して参照される外部から設定される制御パラメータに応じて処理を分岐させる。
【００４２】
また、オフセットリトライ制御部１０１は、オフセットリトライデータ検証部１０２の検証結果に基づいて読み取りデータの出力を制御し、該読み取りデータをホストインターフェース部１０７からホストコンピュータへ出力させる。
【００４３】
ヘッド駆動制御部１０３は、オフセットリトライ制御部１０１の指示に基づいて、磁気ヘッドの支持アームの駆動制御を行う。また、通常は、磁気ディスクに書き込まれているサーボ情報に基づいて特定されるデータの読み書き位置情報に応じて、磁気ヘッドの支持アームの駆動制御を行う。
【００４４】
制御パラメータインターフェース部１０４は、磁気ディスク装置の外部から設定されるオフセットリトライ時の処理方法の選択情報を受け付けるインターフェースである。制御パラメータインターフェース部１０４を介して外部からオフセットリトライ時の処理方法の選択情報を受け付ける方法の具体例としては、ＳＣＳＩ（Small Computer System Interface）のMode Parameterや、磁気ディスク装置に備えられるディップスイッチを利用する方法などがある。磁気ディスク装置の外部から設定されるオフセットリトライ時の処理方法の選択情報は、後述するように、磁気ディスクのハードディスクコントローラ１００におけるオフセットリードリトライ処理時において参照される制御パラメータである。この制御パラメータの詳細については後述する。
【００４５】
ディスクインターフェース部１０５は、磁気ディスクヘッド（リードコア）から読み出された情報をＥＣＣ処理部１０６へ受け渡したり、ＥＣＣ処理部１０６から受け渡されたデータを磁気ディスクヘッド（ライトコア）へ出力して磁気ディスクへ書き込ませたりするためのインターフェースである。
【００４６】
ＥＣＣ処理部１０６は、磁気ディスクへの書き込みデータをＥＣＣ符号化し、磁気ディスクからの読み出しデータをＥＣＣ復号する処理を行う。さらには、ＥＣＣ処理部１０６は、制御パラメータインターフェース部１０４を介して外部から参照される制御パラメータに応じて、オフセットリトライによりインナ方向又はアウタ方向の一方で読み出し成功したデータを同一トラックの同一セクタに上書きする処理を行う。これにより、以後オフセットリードリトライを行わなくても正しいデータを読み出すことが可能となる。また、ＥＣＣ処理部１０６は、制御パラメータインターフェース部１０４を介して外部から参照される制御パラメータに応じて、読み出しエラーを出力した場合には、ＥＣＣによる誤り訂正が不可能であるデータを同一トラックの同一セクタに上書きする処理を行う。これにより、以後当該トラックの当該セクタにおいて、常にエラーを出力し、誤ったデータを読み出すことをなくすることが可能となる。
【００４７】
ホストインターフェース部１０７は、ホストコンピュータから磁気ディスクへ書き込むためのデータを受け取ってＥＣＣ処理部１０６へ受け渡し、また、磁気ディスクから読み出したデータをＥＣＣ処理部１０６から受け取ってホストコンピュータへ受け渡すインターフェースである。
【００４８】
次に、オフセットリトライ方法に関する４bitパラメータの設定内容について説明する。図９は、オフセットリトライ方法に関する４bitパラメータの設定内容の設定内容を示す図である。４bitパラメータは、前述の磁気ディスク装置の外部から設定される制御パラメータである。同図に示すように、４bitパラメータは、bit0〜bit3の４ビットから構成される。この４bitパラメータを設けることによって、ホストコンピュータ及び磁気ディスク装置の運用形態に合わせて、処理の分岐を自由に設定することができ、必要な処理を必要に応じて行うようにでき、処理の効率化を図ることができる。
【００４９】
bit0は、インナ方向及びアウタ方向の両方のオフセットリードで異なったデータが読み出し成功した場合の検証許可についての情報である。bit0が“０”であるとき、設定内容は、“検証を行わずエラー報告”である。即ち、インナ方向及びアウタ方向の両方のオフセットリードで異なったデータが読み出し成功した場合に、これを無条件にエラーとしてエラー情報を出力すると設定するものである。bit0が“１”であるとき、設定内容は、“何れが有効データか検証実施”である。即ち、インナ方向及びアウタ方向の両方のオフセットリードで異なったデータが読み出し成功した場合に、何れの読み出しデータが正しい有効なデータであるかを検証すると設定するものである。これにより、インナ方向及びアウタ方向のオフセットリトライリードにより異なったデータが読み出されたとしても、何れが正当なデータであるか検証を行うことによって、データの正当性をより高く保証することができる。
【００５０】
bit1は、インナ方向又はアウタ方向のオフセットリードの何れかでデータが読出し成功した場合の検証許可についての情報である。bit1が“０”であるとき、設定内容は、“検証を行わずデータ送出（正常終了）”である。即ち、インナ方向又はアウタ方向のオフセットリードの何れかでデータが読み出し成功した場合に、読み出し成功したデータを無条件に正しいデータとして出力すると設定するものである。bit1が“１”であるとき、設定内容は、“同一トラック内に他のデータが存在しないか検証実施”である。即ち、インナ方向又はアウタ方向のオフセットリードの何れかでデータが読み出し成功した場合に、同一トラック内に他のデータが存在しないか減少オフセットリトライリード又は増加オフセットリトライリードを実施して検証すると設定するものである。これにより、たとえ一旦オフセットリトライリードが成功したとしても、読み出し成功したデータが真に正しいデータであるか否かを検証することとなり、データの正当性をより高く保証することができる。
【００５１】
bit2は、エラー時データ破壊許可についての情報である。bit2が“０”であるとき、設定内容は、“エラー時にオーバーライトしない”である。即ち、データ読み出しエラー情報を出力した場合に、当該トラックの当該セクタのデータをＥＣＣ訂正不可能なデータで破壊しないと設定するものである。bit2が“１”であるとき、設定内容は、“エラー時に読み出し不可能なデータでオーバーライト”である。即ち、データ読み出しエラー情報を出力した場合に、当該トラックの当該セクタのデータをＥＣＣ訂正不可能なデータで上書きして破壊すると設定するものである。これによって、以後リトライリードによって誤ってデータが読み出されることを防止することができる。
【００５２】
bit3は、データ送出時オーバーライト許可についての情報である。bit3が“０”であるとき、設定内容は、“正常に読み出したときはオーバーライトしない”である。即ち、データ読み出し成功してデータを出力した場合に、当該トラックの当該セクタのデータを該読み出しデータで上書きしないと設定するものである。bit3が“１”であるとき、設定内容は、“送出したデータでオーバーライト”である。即ち、読み出し成功したデータで当該トラックの当該セクタのデータを上書きすると設定するものである。これによって、以後リトライリードにおいても常に正常にデータが読み出されるようになる。
【００５３】
次に、図８に示したハードディスクコントローラ１００において実行されるオフセットリードリトライ処理手順について説明する。図１０は、図８に示したハードディスクコントローラ１００において実行されるオフセットリードリトライ処理手順を示すフローチャートである。同図に示すように、先ず、インナオフセットリード及びアウタオフセットリードを実施する（ステップＳ１０１）。続いて、オフセットリードでエラーが発生したか否かを判定し（ステップＳ１０２）、エラーが発生したと判定されたならば（ステップＳ１０２肯定）、ステップＳ１０３へ処理を移し、エラーが発生しなかったと判定された場合には（ステップＳ１０２否定）、ステップＳ１０５へ処理を移す。
【００５４】
ステップＳ１０３では、インナオフセットリードとアウタオフセットリードとの両方がエラーか否かを判定する。両方がエラーと判定された場合に（ステップＳ１０３肯定）、別の方法によるリトライ継続又はエラーを報告する（ステップＳ１０４）。ステップＳ１０４が終了すると、オフセットリードリトライ処理は終了する。一方、両方がエラーと判定されなかった場合に（ステップＳ１０３否定）、ステップＳ１０７へ処理を移す。
【００５５】
他方、ステップＳ１０５では、インナオフセットリードとアウタオフセットリードのリードデータは一致しているか否かを判定し、一致していると判定された場合に（ステップＳ１０５肯定）、一致するデータをホストコンピュータへ送信し（ステップＳ１０６）、オフセットリードリトライ処理は終了する。一致していると判定されなかった場合に（ステップＳ１０５否定）、ステップＳ１１６へ処理を移す。
【００５６】
ステップＳ１０７では、bit1の設定は“１”か否かを判定し、bit1の設定が“１”である場合に（ステップＳ１０７肯定）、読み出せたデータをRD_DATAと定義して一時記憶し（ステップＳ１０８）、bit1の設定が“１”でない場合に（ステップＳ１０７否定）、読み出せたデータをホストコンピュータへ送信する（ステップＳ１１３）。ステップＳ１１３が終了すると、オフセットリードリトライ処理は終了する。
【００５７】
ステップＳ１０８に続いてステップＳ１０９では、オフセット量を増加させ、オフセットは所定の規定値に達したか否かを判定する（ステップＳ１１０）。オフセットが所定の規定値に達したと判定される場合に（ステップＳ１１０肯定）、RD_DATAをホストコンピュータへ送信し（ステップＳ１１４）、オフセットリードリトライ処理は終了し、オフセットはトラックの端に達したと判定されない場合に（ステップＳ１１０否定）、インナオフセットリード及びアウタオフセットリードを再び実施する（ステップＳ１１１）。
【００５８】
次に、インナオフセットリード及びアウタオフセットリードのリード結果がRD_DATAと等しい又は何れかがリードエラーか否かを判定し（ステップＳ１１２）、ステップＳ１１２が肯定の場合に、ステップＳ１０９へ処理を移し、ステップＳ１１２が否定の場合に、エラーを報告する（ステップＳ１１５）。ステップＳ１１５が終了すると、オフセットリードリトライ処理は終了する。
【００５９】
他方、ステップＳ１０５が否定の場合に続くステップＳ１１６では、bit0の値が“１”か否かを判定する。bit0の値が“１”と判定される場合に（ステップＳ１１６肯定）、ステップＳ１１７へ処理を移し、bit0の値が“１”と判定されない場合に（ステップＳ１１６否定）、エラーを報告して（ステップＳ１２０）、オフセットリードリトライ処理は終了する。
【００６０】
ステップＳ１１７では、オフセット量を減少させ、インナオフセットリード及びアウタオフセットリードを再び実施する（ステップＳ１１８）。続いて、インナオフセットリード又はアウタオフセットリードがエラーか否かを判定し（ステップＳ１１９）、インナオフセットリード又はアウタオフセットリードがエラーであると判定された場合に（ステップＳ１１９肯定）、ステップＳ１１７へ処理を移し、インナオフセットリード又はアウタオフセットリードがエラーであると判定されなかった場合に（ステップＳ１１９否定）、読み出せたデータをホストコンピュータへ送信し（ステップＳ１２１）、オフセットリードリトライ処理は終了する。
【００６１】
本実施例によれば、ライトコア幅とリードコア幅の差の増加によって、オフセットリード（インナオフセットリード及びアウタオフセットリード）により同一トラック内で異なったデータが読み出せた場合に、誤ったデータをホストコンピュータに送信することを防止し、データの保証を行って信頼性を高めることができる。
【００６２】
さらに、具体的には、リードエラー発生時に、トラックのインナ側とアウタ側でそれぞれオフセットリードし、それぞれのデータを比較し検証することによって、データがオフセットライトされたトラック及びセクタにおいて誤ったデータをホストコンピュータへ送信することを防止することができる。
【００６３】
以上、本発明の実施例を説明したが、本発明は、これに限られるものではなく、特許請求の範囲に記載した技術的思想の範囲内で、更に種々の異なる実施例で実施されてもよいものである。また、実施例に記載した効果は、これに限定されるものではない。
【００６４】
（付記１）記憶媒体のトラック中心付近でのデータ読み取りエラー発生時に、該記憶媒体の中心方向であるインナ方向及び該記憶媒体の外周方向であるアウタ方向へオフセットしてデータ読み取りを再試行するオフセット読み取り再試行処理によって読み取られた読み取りデータの保証を行う記憶装置であって、
前記インナ方向へのオフセットによりインナオフセットデータを読み取り、前記アウタ方向へのオフセットによりアウタオフセットデータを読み取るデータ読み取り部と、
前記データ読み取り部により読み取られたインナオフセットデータとアウタオフセットデータとを比較するデータ比較部と、
前記データ比較部による比較結果が一致する場合に、前記読み取りデータを出力制御するデータ出力制御部と
を備えたことを特徴とする記憶装置。
【００６５】
（付記２）前記データ出力制御部は、前記データ読み取り部により前記インナオフセットデータ又は前記アウタオフセットデータの何れか一方のデータ読み取りが成功した場合に、該読み取り成功したデータを出力することを特徴とする付記１に記載の記憶装置。
【００６６】
（付記３）前記データ読み取り部は、前記データ比較部による比較結果が一致しない場合に、前記インナ方向へのオフセット量及び前記アウタ方向へのオフセット量それぞれを同量だけ段階的に減少させてオフセット読み取りを行い、
前記データ出力制御部は、前記データ読み取り部による一方のオフセットのデータ読み取りにエラーが発生した際に他方のオフセットのデータ読み取りが正常に行われると、該他方のオフセットによる読み取りデータを出力制御することを特徴とする付記１に記載の記憶装置。
【００６７】
（付記４）前記データ読み取り部は、インナオフセットデータ又はアウタオフセットデータの何れか一方のデータ読み取りが成功した場合に、前記インナ方向へのオフセット量及び前記アウタ方向へのオフセット量それぞれを同量だけ段階的に増加させてオフセット読み取りを行い、
前記データ出力制御部は、前記データ読み取り部により一方のオフセットのデータ読み取りにエラーが発生した際に他方のオフセットのデータ読み取りが正常に行われると、該他方のオフセットの読み取りデータを出力することを特徴とする付記１に記載の記憶装置。
【００６８】
（付記５）前記データ読み取り部によりインナオフセットデータ又はアウタオフセットデータの何れか一方の読み取りに成功した読み取りデータが出力された場合に、当該データ読み取りに成功したトラック及びセクタ全域に該読み取りデータを上書きする読み取りデータ上書き部をさらに備えたことを特徴とする付記３又は４に記載の記憶装置。
【００６９】
（付記６）前記データ出力制御部は、前記データ比較部による比較結果が一致しない場合に、読み取りエラー情報を出力することを特徴とする付記１に記載の記憶装置。
【００７０】
（付記７）前記データ読み取り部は、前記データ読み取り部によるインナオフセットデータ又はアウタオフセットデータの何れか一方のデータ読み取りが成功した場合に、前記インナ方向へのオフセット量及び前記アウタ方向へのオフセット量それぞれを同量だけ段階的に増加させてオフセット読み取りを行い、
前記データ出力制御部は、前記データ読み取り部によって両方のオフセットによるデータ読み取りが成功し、かつ前記データ比較部によって該両方のオフセットによる読み取りデータが一致しないとされた場合に、読み取りエラー情報を出力することを特徴とする付記１に記載の記憶装置。
【００７１】
（付記８）前記データ出力制御部により前記読み取りエラー情報が出力された場合に、当該読み取りエラーが発生したトラック及びセクタ全域にＥＣＣ（Error Correcting Code）による誤り訂正不可能なデータを上書きする誤り訂正不可能データ上書き部をさらに備えたことを特徴とする付記６又は７に記載の記憶装置。
【００７２】
（付記９）前記データ比較部による比較結果が一致しない場合に、読み取りエラー情報を出力するか、若しくは前記インナ方向へのオフセット量及び前記アウタ方向へのオフセット量それぞれを同量だけ段階的に減少させてオフセット読み取りを行って一方のオフセットによるデータ読み取りにエラーが発生した際に他方のオフセットによるデータ読み取りが正常に行われると、該他方のオフセットによる読み取りデータを出力するかを選択する第１の選択部をさらに備えたことを特徴とする付記１に記載の記憶装置。
【００７３】
（付記１０）前記データ読み取り部によりインナオフセットデータ又はアウタオフセットデータの何れか一方のデータ読み取りが成功した場合に、該読み取り成功したデータを出力するか、若しくは前記インナ方向へのオフセット量及び前記アウタ方向へのオフセット量それぞれを同量だけ段階的に減少させてオフセット読み取りを行い、一方のオフセットによるデータ読み取りにエラーが発生した際に、他方のオフセットによるデータ読み取りが正常に行われると、該他方のオフセットによる読み取りデータを出力するかを選択する第２の選択部をさらに備えたことを特徴とする付記１に記載の記憶装置。
【００７４】
（付記１１）前記データ読み取り部によりインナオフセットデータ又はアウタオフセットデータの何れか一方の読み取りに成功した読み取りデータが出力された場合に、当該データ読み取りが成功したトラック及びセクタ全域に該読み取りデータを上書きするか否かを選択する第３の選択部をさらに備えたことを特徴とする付記３又は４に記載の記憶装置。
【００７５】
（付記１２）前記データ出力制御部により読み取りエラー情報が出力された場合に、当該読み取りエラーが発生したトラック及びセクタ全域にＥＣＣ（Error Correcting Code）による誤り訂正不可能なデータを上書きするか否かを選択する第４の選択部をさらに備えたことを特徴とする付記６又は７に記載の記憶装置。
【００７６】
（付記１３）記憶媒体のトラック中心付近でのデータ読み取りエラー発生時に、該記憶媒体の中心方向であるインナ方向及び該記憶媒体の外周方向であるアウタ方向へオフセットしてデータ読み取りを再試行するオフセット読み取り再試行処理によって読み取られた読み取りデータの保証を行うデータ保証制御装置であって、
前記インナ方向へのオフセットにより読み取り取られたインナオフセットデータと、前記アウタ方向へのオフセットにより読み取られたアウタオフセットデータとを比較するデータ比較部と、
前記データ比較部による比較結果が一致する場合に、前記読み取りデータを出力制御するデータ出力制御部と
を備えたことを特徴とするデータ保証制御装置。
【００７７】
（付記１４）前記データ出力制御部は、前記インナ方向へのオフセットによるデータ読み取り又は前記アウタ方向へのオフセットによるデータ読み取りの何れか一方によってデータ読み取りが成功した場合に、該読み取り成功したデータを出力することを特徴とする付記１３に記載の読み取りデータ保証制御装置。
【００７８】
（付記１５）前記データ出力制御部は、前記データ比較部による比較結果が一致しない場合に前記インナ方向へのオフセット量及び前記アウタ方向へのオフセット量それぞれを同量だけ段階的に減少させて行ったオフセット読み取り時に、一方のオフセットによるデータ読み取りにエラーが発生した際に他方のオフセットによるデータ読み取りが正常に行われると、該他方のオフセットによる読み取りデータを出力することを特徴とする付記１３に記載の読み取りデータ保証制御装置。
【００７９】
（付記１６）前記データ出力制御部は、前記インナ方向へのオフセットによるデータ読み取り又は前記アウタ方向へのオフセットによるデータ読み取りの何れか一方によりデータ読み取りが成功した場合に前記インナ方向へのオフセット量及び前記アウタ方向へのオフセット量それぞれを同量だけ段階的に増加させて行ったオフセット読み取り時に、一方のオフセットによるデータ読み取りにエラーが発生した際に他方のオフセットによるデータ読み取りが正常に行われると、該他方のオフセットによる読み取りデータを出力することを特徴とする付記１３に記載の読み取りデータ保証制御装置。
【００８０】
（付記１７）前記データ出力制御部は、前記データ比較部による比較結果が一致しない場合に、読み取りエラー情報を出力することを特徴とする付記１３に記載の読み取りデータ保証制御装置。
【００８１】
（付記１８）前記データ出力制御部は、前記インナ方向へのオフセットによるデータ読み取り又は前記アウタ方向へのオフセットによるデータ読み取りの何れか一方によりデータ読み取りが成功した場合に前記インナ方向へのオフセット量及び前記アウタ方向へのオフセット量それぞれを同量だけ段階的に増加させて行うオフセット読み取り時に、両方のオフセットによるデータ読み取りが成功し、かつ該両方のオフセットによる読み取りデータが一致しない場合に、読み取りエラー情報を出力することを特徴とする付記１３に記載の読み取りデータ保証制御装置。
【００８２】
（付記１９）前記データ比較部による比較結果が一致しない場合に、読み取りエラー情報を出力するか、若しくは前記インナ方向へのオフセット量及び前記アウタ方向へのオフセット量それぞれを同量だけ段階的に減少させてオフセット読み取りを行って一方のオフセットによるデータ読み取りにエラーが発生した際に他方のオフセットによるデータ読み取りが正常に行われると、該他方のオフセットによる読み取りデータを出力するかを選択する第１の選択部をさらに備えたことを特徴とする付記１３に記載の読み取りデータ保証制御装置。
【００８３】
（付記２０）記憶媒体のトラック中心付近でのデータ読み取りエラー発生時に、該記憶媒体の中心方向であるインナ方向及び該記憶媒体の外周方向であるアウタ方向へオフセットしてデータ読み取りを再試行するオフセット読み取り再試行処理によって読み取られた読み取りデータの保証を行う読み取りデータ保証方法であって、
前記インナ方向へのオフセットによりインナオフセットデータを読み取り、前記アウタ方向へのオフセットによりアウタオフセットデータを読み取るオフセットデータ読み取り工程と、
前記データ読み取り工程により読み取られたインナオフセットデータとアウタオフセットデータとを比較するデータ比較工程と、
前記データ比較工程による比較結果が一致する場合に、前記読み取りデータを出力制御するデータ出力制御工程と
を含んだことを特徴とする読み取りデータ保証方法。
【産業上の利用可能性】
【００８４】
本発明は、記憶媒体のオフセットリードリトライにおいて読み出されたデータの保証を行いたい場合に有用であり、特に、古いデータに新しいデータがオフセットライトされ、オフセットリードにより古いデータ及び新しいデータの双方が読み出し可能な場合に、いずれの読み出しデータを正当なデータとして取り扱ってよいかを保証したい場合に有効である。
【図面の簡単な説明】
【００８５】
【図１】従来のオフセットリードにおける問題点を示す図である。
【図２】本発明のオフセットリードにおける特徴店を示す図である。
【図３】トラック中心付近においてリードエラー発生時の処理の概要を示す図（その１）である。
【図４】トラック中心付近においてリードエラー発生時の処理の概要を示す図（その２）である。
【図５】トラック中心付近においてリードエラー発生時の処理の概要を示す図（その３）である。
【図６】トラック中心付近においてリードエラー発生時の処理の概要を示す図（その４）である。
【図７】トラック中心付近においてリードエラー発生時の処理の概要を示す図（その５）である。
【図８】ハードディスクコントローラの構成を示す機能ブロック図である。
【図９】オフセットリトライ方法に関する４bitパラメータの設定内容を示す図である。
【図１０】オフセットリードリトライ処理手順を示すフローチャートである。
【符号の説明】
【００８６】
１００    ハードディスクコントローラ
１０１    オフセットリトライ制御部
１０２    オフセットリトライデータ検証部
１０３    ヘッド駆動制御部
１０４    制御パラメータインターフェース部
１０５    ディスクインターフェース部
１０６    ＥＣＣ処理部
１０７    ホストインターフェース部
【図１】
2007317307.tif 000003
【図２】
2007317307.tif 000004
【図３】
2007317307.tif 000005
【図４】
2007317307.tif 000006
【図５】
2007317307.tif 000007
【図６】
2007317307.tif 000008
【図７】
2007317307.tif 000009
【図８】
2007317307.tif 000010
【図９】
2007317307.tif 000011
【図１０】
2007317307.tif 000012