(57)【特許請求の範囲】
【請求項１】
磁気記憶媒体へのアクセスを制御する方法であって、
少なくとも第１サーボ・データ・セクタおよび第２サーボ・データ・セクタを含む磁気記憶媒体を提供すること、
前記第１サーボ・データ・セクタおよび前記第２サーボ・データ・セクタの内の１つ、または前記第１サーボ・データ・セクタと前記第２サーボ・データ・セクタとの間のユーザ・データ領域に設置されるマークを識別すること、
磁気記憶媒体の第１サーボ・データ・セクタの一部分と磁気記憶媒体の第２サーボ・データ・セクタの一部分との間の位置を示すロケーション・カウントを提供すること、および
前記ロケーション・カウントが下限のしきい値よりも大きく上限のしきい値よりも小さいときにはイネーブル・ウィンドウ信号をアサートすることを含み、
前記下限のしきい値と前記上限のしきい値との間の差が少なくとも２である方法。
【請求項２】
前記第１サーボ・データ・セクタの前記一部分が第１サーボ・アドレス・マークであり、前記第２サーボ・データ・セクタの前記一部分が第２サーボ・アドレス・マークである、請求項１に記載の方法。
【請求項３】
カウンタを提供することをさらに含み、
前記ロケーション・カウントを提供することが、前記第１サーボ・アドレス・マークと前記第２サーボ・アドレス・マークとの間の前記カウンタを増分することを含む、請求項２に記載の方法。
【請求項４】
サーボ・アドレス・マークが予想される期間中に前記イネーブル・ウィンドウ信号がアサートされる、請求項１に記載の方法。
【請求項５】
前記イネーブル・ウィンドウ信号がアサートされていないときには、サーボ・アドレス・マーク検出回路が低消費電力モードに切り替わる、請求項４に記載の方法。
【請求項６】
前記第１サーボ・データ・セクタと前記第２サーボ・データ・セクタとの間のユーザ・データ部分内で、マークが予想される期間中に前記イネーブル・ウィンドウ信号がアサートされる、請求項１に記載の方法。
【請求項７】
プリアンブルが予想される期間中に前記イネーブル・ウィンドウ信号がアサートされる、請求項１に記載の方法。
【請求項８】
ディスク・ドライブ・イベントに備えることができるよう、前記ディスク・ドライブ・イベントの十分に前の時点で、前記イネーブル・ウィンドウ信号がアサートされる、請求項１に記載の方法。
【請求項９】
データ・アクセスのためのシステムであって、
少なくとも第１サーボ・データ・セクタおよび第２サーボ・データ・セクタを含む磁気記憶媒体と、
前記第２サーボ・データ・セクタの内の１つ、または前記第１サーボ・データ・セクタと前記第２サーボ・データ・セクタとの間のユーザ・データ領域に設置されるマークを識別するように動作可能なマーク検出モジュールと、
前記第１サーボ・データ・セクタの一部と前記第２サーボ・データ・セクタの一部との間の位置を示すカウント値を提供するように動作可能なロケーション・カウンタと、
前記カウント値に基づいてイネーブル・ウィンドウ出力をアサートするように動作可能なイネーブル・ウィンドウ回路とを含み、
前記イネーブル・ウィンドウ出力が前記マークが期待される前に前記マーク検出モジュールの動作を有効化し、
前記イネーブル・ウィンドウ回路が前記カウント値を上限のしきい値および下限のしきい値と比較するように動作可能なコンパレータを含み、
前記カウント値が前記下限のしきい値よりも大きく、かつ前記上限のしきい値よりも小さいときは常に、前記イネーブル・ウィンドウ出力がアサートされる、システム。
【請求項１０】
サーボ・アドレス・マーク検出モジュールをさらに含み、前記サーボ・アドレス・マーク検出モジュールが、前記第２サーボ・データ・セクタ内のサーボ・アドレス・マークを識別するように動作可能であり、前記イネーブル・ウィンドウ出力が、前記サーボ・アドレス・マークが期待される前に前記サーボ・アドレス・マーク検出モジュールの動作を有効化する、請求項９に記載のシステム。
【請求項１１】
前記イネーブル・ウィンドウ回路がコンパレータを含み、前記コンパレータが前記カウントを上限のしきい値および下限のしきい値と比較するように動作可能であり、前記カウントが前記下限のしきい値を超え、かつ前記上限のしきい値を超えないときは常に、前記イネーブル・ウィンドウ出力がアサートされる、請求項１０に記載のシステム。
【請求項１２】
前記下限のしきい値が、前記サーボ・アドレス・マークが期待される前に発生するカウント値であり、前記上限のしきい値が、前記サーボ・アドレス・マークが検出された後に発生するカウント値である、請求項１１に記載のシステム。
【請求項１３】
前記マーク検出モジュールが、前記第１サーボ・データ・セクタと前記第２サーボ・データ・セクタとの間のユーザ・データ内の第１マークと第２マークを識別するように動作可能であり、
前記イネーブル・ウィンドウ出力が、前記第１マークが期待される前に前記マーク検出モジュールの動作を有効化し、前記第１マークが検出された後で前記マーク検出モジュールを無効化し、前記第２マークが期待される前に前記マーク検出モジュールを有効化する、請求項９に記載のシステム。
【請求項１４】
プリアンブル検出モジュールをさらに含み、前記プリアンブル検出モジュールが、前記第２サーボ・データ・セクタ内のプリアンブルを識別するように動作可能であり、前記イネーブル・ウィンドウ出力が、前記プリアンブルが期待されるときには前記プリアンブル検出モジュールの動作を有効化する、請求項９に記載のシステム。
【請求項１５】
ハード・ディスク・ドライブであって、前記ハード・ディスク・ドライブが、
第１サーボ・アドレス・マークを有する第１サーボ・データ・セクタと第２サーボ・アドレス・マークを有する第２サーボ・データ・セクタとを少なくとも含む磁気記憶媒体と、
前記磁気記憶媒体からデータを読み取り、前記磁気記憶媒体にデータを書き込むディスク・コントローラとを含み、前記ディスク・コントローラが、
前記第１サーボ・データ・セクタと前記第２サーボ・データ・セクタとの間のユーザ・データ内にある第１マークと第２マークを識別するように動作可能なマーク検出モジュールと、
前記第１サーボ・アドレス・マークと前記第２サーボ・アドレス・マークとの間の位置を示すカウント値を提供するように動作可能なカウンタと、
前記カウント値に基づいてイネーブル・ウィンドウ出力をアサートするように動作可能なイネーブル・ウィンドウ回路とを含み、
前記イネーブル・ウィンドウ回路が、前記第２サーボ・データ・セクタ内の前記第２サーボ・アドレス・マークを識別するように動作可能なサーボ・アドレス・マーク検出モジュールと、前記第２サーボ・データ・セクタ内のプリアンブルを識別するように動作可能なプリアンブル検出モジュールと、前記第１サーボ・アドレス・マークと前記第２サーボ・アドレス・マークとの間に点在する少なくとも第１マークと第２マークを識別するように動作可能なマーク検出モジュールとからなる群から選択されたモジュールの動作を有効化するように動作可能であり、
前記ウィンドウ出力が、前記第１マークが期待される前に前記マーク検出モジュールの動作を有効化し、前記第１マークが検出された後で前記マーク検出モジュールを無効化し、前記第２マークが期待される前に前記マーク検出モジュールを有効化する、ハード・ディスク・ドライブ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、磁気記憶媒体にアクセスするためのシステムおよび方法に関し、より詳細には、磁気記憶媒体へのアクセスを制御するためのシステムおよび方法に関する。
【背景技術】
【０００２】
読取りチャネル集積回路（ＩＣ）は、ハード・ディスク・ドライブなどの磁気記録システムにおける主要な電子構成要素の１つである。読取りチャネルは、磁気読取りヘッドがディスク・ドライブにデータを書き込み、次いでデータを正確に読み取ることができるように、データを変換し、符号化する。ドライブ内のディスク上には一般に、多くのトラックがある。各トラックは一般に、ユーザ・データ・セクタと、このユーザ・データ・セクタの間に点在するコントロール・データ・セクタまたは「サーボ」データ・セクタとからなる。サーボ・データ・セクタは、読取りセクタに格納されている情報を正しく取り出すことができるように、磁気記録ヘッドをトラック上で位置決めするのに役立つ。加えて、ユーザ・データ内には様々なマークが点在しており、データをサンプリングするクロックを制御するために使用されるフェーズ・ロック・ループ用のフィードバックとしてこれらのマークに依拠することができる。しかし、しばしば、チャネルにはノイズが入り込み、特定のサーボ・データ・セクタに、またはユーザ・データ内に点在するマークに含まれる１つまたは複数の要素の識別の失敗を引き起こす。これが原因で、データが失われたり、読取り動作中に間違って解釈されたりすることがある。
【０００３】
したがって、少なくとも上記の理由により、磁気記憶媒体にアクセスするための高度なシステムおよび方法が当技術分野で必要とされている。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明は、磁気記憶媒体にアクセスするためのシステムおよび方法に関し、より詳細には、磁気記憶媒体へのアクセスを制御するためのシステムおよび方法に関する。
【課題を解決するための手段】
【０００５】
本発明のいくつかの実施形態は、磁気記憶媒体へのアクセスを制御するための方法を提供する。そのような方法は、磁気記憶媒体の第１サーボ・データ・セクタの一部分と磁気記憶媒体の第２サーボ・データ・セクタの一部分の間の位置を示すロケーション・カウントを提供することを含む。場合によっては、第１サーボ・データ・セクタの一部分はＳＡＭ（サーボ・アドレス・マーク）であり、第２サーボ・データ・セクタの一部分は後続のＳＡＭである。これらの方法はさらに、ロケーション・カウントに基づいてイネーブル・ウィンドウ信号をアサートすることを含む。上記の実装形態のいくつかの例では、ロケーション・カウントは、連続するＳＡＭの間のＳＡＭ２ＳＡＭカウンタを増分することによって提供される。上記の実装形態のいくつかの例では、イネーブル・ウィンドウ回路はさらに、カウント値に基づいて生成されていない入力に基づいて、イネーブル・ウィンドウ出力をデアサートするように動作可能である。
【０００６】
上記の実施形態のいくつかの例では、ＳＡＭが予想される期間中にイネーブル・ウィンドウ信号がアサートされる。特定の例では、イネーブル・ウィンドウ信号がアサートされていないときには、ＳＡＭの検出に使用される回路を低電力モードに切り替えることができる。上記の実施形態の他の例では、第１サーボ・データ・セクタと第２サーボ・データ・セクタの間のユーザ・データ部分内でマークが予想される期間中に、イネーブル・ウィンドウ信号がアサートされる。いくつかのそのような例では、第１サーボ・データ・セクタと第２サーボ・データ・セクタの間で、イネーブル・ウィンドウ信号のアサートとデアサートが何度も行われる可能性がある。さらに上記の実施形態の別の例では、プリアンブルが予想される期間中に、イネーブル・ウィンドウ信号がアサートされる。上記の実施形態の特定の例では、ディスク・ドライブ・イベントに備えることができるよう、ディスク・ドライブ・イベントの十分に前の時点で、イネーブル・ウィンドウ信号がアサートされる。そのようなディスク・ドライブ・イベントとしてサーボ・イベント、書込みイベント、または読取りイベントがあり得るが、これらに限定されるわけではない。上記の実施形態の１つまたは複数の例では、ロケーション・カウントに関係のない時点で、イネーブル・ウィンドウ信号がデアサートまたはリセットされることがある。
【０００７】
本発明の別の実施形態は、データ・アクセスのためのシステムを提供する。そのようなシステムは、少なくとも第１サーボ・データ・セクタおよび第２サーボ・データ・セクタを有する磁気記憶媒体と、第１サーボ・データ・セクタと第２サーボ・データ・セクタの間の位置を示すカウント値を提供するように動作可能なロケーション・カウンタと、カウント値に基づいてイネーブル・ウィンドウ出力をアサートするように動作可能なイネーブル・ウィンドウ回路とを含む。上記の実施形態の特定の例では、ロケーション・カウンタはＳＡＭ２ＳＡＭカウンタである。
【０００８】
上記のシステムの様々な例では、システムはさらに、第２サーボ・データ・セクタ内のＳＡＭを識別するように動作可能なＳＡＭ検出モジュールを含む。そのような例では、イネーブル・ウィンドウ出力が、ＳＡＭが期待される前にＳＡＭ検出モジュールの動作を有効化する。さらにそのような例では、イネーブル・ウィンドウ回路は、カウントを上限のしきい値および下限のしきい値と比較するように動作可能なコンパレータを含む。カウントが下限のしきい値を超え、かつ上限のしきい値を超えない場合は常に、イネーブル・ウィンドウ出力がアサートされる。
【０００９】
上記の実装形態の別の例では、システムはさらに、第１サーボ・データ・セクタと第２サーボ・データ・セクタの間のユーザ・データ内の、第１マークと第２マークを識別するように動作可能なマーク検出モジュールを含む。そのような例では、イネーブル・ウィンドウ出力が、第１マークが期待される前にマーク検出モジュールの動作を有効化し、第１マークが検出された後にマーク検出モジュールを無効化し、第２マークが期待される前にマーク検出モジュールを有効化する。上記の実装形態のこれとは別の例では、システムはさらに、第２サーボ・データ・セクタ内のプリアンブルを識別するように動作可能なプリアンブル検出モジュールを含む。そのような例では、イネーブル・ウィンドウ出力が、プリアンブルが期待される前にプリアンブル検出モジュールの動作を有効化する。
【００１０】
本発明のさらに別の実施形態は、磁気記憶媒体と、磁気記憶媒体へのアクセスを制御するディスク・コントローラとを含むハード・ディスク・ドライブを提供する。磁気記憶媒体は、少なくとも、第１ＳＡＭを有する第１サーボ・データ・セクタと、第２ＳＡＭを有する第２サーボ・データ・セクタとを含む。ディスク・コントローラは、第１ＳＡＭと第２ＳＡＭの間の位置を示すカウント値を提供するように動作可能なＳＡＭ２ＳＡＭカウンタと、そのカウント値に基づいてイネーブル・ウィンドウ出力をアサートするように動作可能なイネーブル・ウィンドウ回路とを含む。いくつかの例では、イネーブル・ウィンドウ回路は、第２サーボ・データ・セクタ内の第２ＳＡＭを識別するように動作可能なＳＡＭ検出モジュール、第２サーボ・データ・セクタ内のプリアンブルを識別するように動作可能なプリアンブル検出モジュール、および、第１ＳＡＭと第２ＳＡＭの間に点在する少なくとも第１マークと第２マークを識別するように動作可能なマーク検出モジュールのうちの１つまたは複数の動作を有効化するように動作可能である。場合によっては、ＳＡＭ検出モジュールと、プリアンブル検出モジュールと、マーク検出モジュールとのすべてが含まれ、少なくとも１つの回路要素を共用する。
【００１１】
この概要は、本発明のいくつかの実施形態の一般的な概略に過ぎない。以下の詳細な説明、添付の特許請求の範囲、および添付の図面によって、本発明のその他の多くの目的、特徴、利点、および別の実施形態がより十分に明らかになるであろう。
【００１２】
本明細書の以下の部分で説明する図面を参照することによって、本発明の様々な実施形態をより深く理解することができる。図では、いくつかの図面にわたって同じ参照番号を使用し、同様の構成要素を指す。場合によっては、小文字からなるサブレベルを参照番号に関連付け、複数の同様の構成要素のうちの１つを表す。既存のサブラベルを指定せずに参照番号が参照される場合、そのような複数の同様の構成要素のすべてを指すものとする。
【図面の簡単な説明】
【００１３】
【図１ａ】従来技術の同期化の手法を示す図である。
【図１ｂ】従来技術の同期化の手法を示す図である。
【図１ｃ】従来技術の同期化の手法を示す図である。
【図２】従来技術の同期化の手法を示す図である。
【図３】本発明のいくつかの実施形態による、強化された同期処理を提供するシステムの図である。
【図４】本発明のいくつかの実施形態による、同期化を制御するプロセスを示すフロー図である。
【図５】本発明のいくつかの実施形態による、ＳＡＭ２ＳＡＭカウント値に基づいてウィンドウ出力を生成する例示的な回路を示す図である。
【図６】本発明のいくつかの実施形態による、ハード・ディスク・コントローラからの出力によって制御可能な、ＳＡＭ２ＳＡＭカウント値に基づいてウィンドウ出力を生成する例示的な回路を示す図である。
【発明を実施するための形態】
【００１４】
本発明は、磁気記憶媒体にアクセスするためのシステムおよび方法に関し、より詳細には、磁気記憶媒体へのアクセスを制御するためのシステムおよび方法に関する。
【００１５】
図１ａは、サーボ・データ・セクタ１００の従来技術のデータ形式を示している。図に示すように、サーボ・データ・セクタ１００は、書き込まれたサーボ・データのタイミングとゲインをシステムが復元することを可能にするプリアンブル・パターン１０２を含むことができる。一般に、プリアンブル・パターン１０２の後には、すべてのサーボ・セクタにとって同一のサーボ・アドレス・マーク（ＳＡＭ）１０４が続く。次いで、ＳＡＭ１０４の後には符号化されたサーボ・グレイ・データ１０６が続き、グレイ・データ１０６の後には１つまたは複数のバースト復調フィールド１０８が続く。グレイ・データ１０６はトラック番号／シリンダ情報を表すことができ、磁気記憶媒体を横切る読取りヘッドに大まかな位置決め情報を提供する。バースト復調フィールド１０８は、磁気記憶媒体を横切る読取りヘッドに細かい位置決め情報を提供する。図１ｂは、磁気記憶媒体１５０のまわりに放射状パターンで延在する複数の各トラック１６０の一部として組み込まれている、上記のサーボ・データ・セクタ１００を示している。理想的には、読取りヘッドは、交互するサーボ・データ・セクタとユーザ・データ・セクタの上で個々のトラックを横切る。
【００１６】
図１ｃは、２つの連続するサーボ・データ・セクタ１００の間に延在するユーザ・データ領域１６０を示している。具体的には、ユーザ・データ領域１６０は、周期的なデータ・マーク１７２によって分離されたデータ１７０の領域を含む。そのようなデータ・マーク１７２は一般に、当技術分野で周知のようにデータ・アドレス・マークおよび／または他の情報を含み、通常はマークとして参照することができる。様々な場合に、２つのサーボ・データ・セクタ間のユーザ・データ内に８個のマーク１７２が点在し得る。
【００１７】
図２は、磁気記憶媒体から読取りデータ２０５を受け取る従来技術のシステム２００を示している。読取りデータ２０５がアナログ・フィルタ２１０に提供され、フィルタ処理されたアナログ出力２６０がアナログ・デジタル変換器２１５に提供される。アナログ・デジタル変換器２１５は、サーボ検出モジュール２２０とデータ検出モジュール２５５の両方にデジタル出力２５０を提供する。サーボ検出モジュール２２０は、サーボ・データ内のサーボ・アドレス・マークの識別に一部基づいて、サンプル・クロックを読取りデータ２０５に同期させるように動作可能である。サーボ・アドレス・マークが識別されると、ＳＡＭＦＯＵＮＤ２３０信号がアサートされる。サーボ検出モジュール２２０からタイミング情報２５５が提供され、データ検出モジュール２２５によってデジタル出力２５０から取り出されたユーザ・データが同期化される。データ検出モジュールは、ユーザ・データ内に点在するマークの位置を示すマーク出力２３５、およびユーザ・データ出力２４０を提供する。場合によってシステム２００には、あるＳＡＭから後続のＳＡＭへ読取りヘッドが移動するときにカウント値を提供する、内部クロック・サイクルに同期したカウンタが含まれることがある。このカウント情報はこれまで、合致させることによって読取りチャネルの内部クロック周波数を制御し、磁気記憶媒体上のサーボ・データ・セクタの間隔を追跡するために使用されてきた。具体的には、ユーザ・データ領域を横切るのに必要なクロック期間数が分かっている場合、あるＳＡＭから次のＳＡＭへのカウント値を使用して、連続するサーボ・データ・セクタ間のディスク・スピン速度に比べて、内部クロックの速度が早すぎるか遅すぎるかを示すことができる。この情報を使用して調整を行い、内部クロックの周波数を訂正することができる。
【００１８】
図３を参照すると、本発明のいくつかの実施形態による、強化された同期処理を提供するシステム３００が示されている。システム３００は、クロック信号３０３がアサートされるたびに増分し、ＳＡＭＦＯＵＮＤ信号３０１がアサートされるたびにリセットされるＳＡＭ２ＳＡＭカウンタ３０５を含む。本発明のある特定の実施形態では、セクタ・データの処理、および／またはユーザ・データ内に点在するマークの処理を通じて、当技術分野で周知のように確立されたデータ・サンプリング周波数で、クロック信号３０３が動作する。ＳＡＭ２ＳＡＭカウンタ３０５の出力は、ＳＡＭ２ＳＡＭカウント値３０７である。本発明のある特定の実施形態では、ＳＡＭ２ＳＡＭカウンタ３０５は、クロック信号３０３に同期している１６ビットのカウンタである。本明細書の開示に基づき、ＳＡＭ２ＳＡＭカウンタ３０５は様々なカウンタ回路を使用して実装できること、および、具体的な実装に応じて様々なカウンタ・サイズを使用できることが当業者には理解されよう。
【００１９】
ＳＡＭ２ＳＡＭカウント値３０７は、デコード・ロジック・モジュール３３０に提供される。これに加えて、プログラム可能な１組の値がデコード・ロジック・モジュール３３０に提供される。具体的には、プログラム可能なセットアップ・イネーブル・レジスタ３１０から、セットアップ・イネーブル３０８用の上限しきい値および下限しきい値が提供され、プログラム可能なセットアップ・イネーブル・レジスタ３１５から、スタート・イネーブル３０９用の上限しきい値および下限しきい値が提供される。レジスタ３１０、３１５は、プログラミング・インターフェース３２３を通じてプロセッサ３２０によってプログラムされる。プロセッサ３２０は、当技術分野で周知のどんなプロセッサでもよく、プログラミング・インターフェース３２３は、プロセッサ３２０が１つまたは複数のメモリ位置やレジスタに書き込むことができる、当技術分野で周知のどんなインターフェースでもよい。本明細書の開示に基づき、本発明の異なる実施形態に関して、いくつかのプロセッサおよびプロセッサ・インターフェースを利用できることが当業者には理解されよう。
【００２０】
デコード・ロジック・モジュール３３０は、ＳＡＭ２ＳＡＭカウント値３０７に少なくとも一部基づいて様々なイネーブル信号を提供する。これらのイネーブル信号は、磁気記憶媒体との間でやり取りされる情報の処理に関連して、特定のイベントの発生がその時間内に期待されるウィンドウを表す。具体的には、デコード・ロジック・モジュール３３０は、後続のサーボ・データ・セクタ内で後続のＳＡＭが期待される直前にアサートされ、ＳＡＭの発生直後までアサートの状態が続く、ＳＡＭウィンドウ信号３３１を提供する。ＳＡＭウィンドウ信号３３１は、サーボ・データ・セクタ内でＳＡＭの識別を行うＳＡＭ検出モジュール３４０に、イネーブル入力として提供される。ＳＡＭ検出モジュール３４０は、ＳＡＭＦＯＵＮＤ信号３０１を提供することができ、本発明の異なる実施形態により変更してイネーブル信号を受け取ることができる、当技術分野で周知のどんなＳＡＭ検出モジュールでもよい。ＳＡＭ２ＳＡＭカウント値３０７を使用して、ＳＡＭ検出モジュール３４０が後続のＳＡＭの識別を試みるウィンドウを開くことによって、誤検出の可能性が回避され、ノイズのある環境でＳＡＭ検出に対して追加の指針が提供されるため、確実性を高めることができる。さらに、ＳＡＭ検出に関係する回路は、ウィンドウが開いていない場合は無効にして、潜在的な省電力を実現することができる。ＳＡＭ２ＳＡＭカウント値３０７を使用して後続のＳＡＭの発生を予測することによって、あるサーボ・データ・セクタから次のサーボ・データ・セクタへの、ディスク・スピン速度の起こり得る周波数の変化を明らかにすることになる、非常に正確な検討のウィンドウを開くことができる。そのようなウィンドウイングは、サーボ・データ・セクタの物理的な位置は可変でも、ＳＡＭが周知または予測可能なＳＡＭ２ＳＡＭカウンタ間隔で発生するため、スパイラル波形を処理するときに特に役立つことができる。
【００２１】
本発明のある特定の実施形態では、デコード・ロジック・モジュール３３０は２つのＳＡＭウィンドウ・コンパレータを含む。一方はＳＡＭ２ＳＡＭカウント値３０７を下限のしきい値（例えば、ＳＡＭの検索の開始が望まれる場合の、特定のＳＡＭ２ＳＡＭカウント値３０７）と比較し、他方はＳＡＭ２ＳＡＭカウント値３０７を上限のしきい値（例えば、ＳＡＭがすでに検出されている場合の、特定のＳＡＭ２ＳＡＭカウント値３０７）と比較する。ＳＡＭ２ＳＡＭカウント値３０７が下限のしきい値を超えるとＳＡＭウィンドウ信号３３１がアサートされ、ＳＡＭ２ＳＡＭカウント値３０７が上限のしきい値を超えるまでアサートが継続し、したがって、「ウィンドウ」が作成される。本発明のいくつかの実施形態では、上限と下限のしきい値は、プロセッサを介してプログラムすることができる。上限と下限のしきい値がハードコード化される場合もある。本明細書の開示に基づき、様々な回路を使用して、利用可能なＳＡＭ２ＳＡＭカウントに基づくそのようなウィンドウを生成できることが当業者には理解されよう。
【００２２】
別法として、またはこれに加えて、デコード・ロジック・モジュール３３０は、後続のサーボ・データ・セクタ内で後続のプリアンブルが期待される直前にアサートされ、プリアンブルの発生直後までアサートの状態が続く、プリアンブル・ウィンドウ信号３３２を提供する。プリアンブル・ウィンドウ信号３３２は、サーボ・データ・セクタ内でプリアンブルの識別を行うプリアンブル検出モジュール３５０に、イネーブル入力として提供される。プリアンブル検出モジュール３５０は、本発明の異なる実施形態により変更してイネーブル信号を受け取ることができる、当技術分野で周知のどんなプリアンブル検出モジュールでもよい。例えば、プリアンブル検出モジュール３５０は、スパイラル・サーボ処理を行い、位相やその他の情報を計算することもできる。ＳＡＭ２ＳＡＭカウント値３０７を使用して、プリアンブル検出モジュール３５０が後続のプリアンブルの識別を試みるウィンドウを開くことによって、誤検出の可能性が回避され、ノイズのある環境でプリアンブル検出に対して追加の指針が提供されるため、確実性を高めることができる。さらに、プリアンブル検出に関係する回路は、ウィンドウが開いていない場合は無効にして、潜在的な省電力を実現することができる。ＳＡＭ２ＳＡＭカウント値３０７を使用して後続のプリアンブルの発生を予測することによって、あるサーボ・データ・セクタから次のサーボ・データ・セクタへの、ディスク・スピン速度の起こり得る周波数の変化を明らかにすることになる、非常に正確な検討のウィンドウを開くことができる。そのようなウィンドウイングは、サーボ・データ・セクタの物理的な位置は可変でも、プリアンブルが周知または予測可能なＳＡＭ２ＳＡＭカウンタ間隔で発生するため、スパイラル波形を処理するときに特に役立つことができる。
【００２３】
本発明のある特定の実施形態では、デコード・ロジック・モジュール３３０は２つのプリアンブル・ウィンドウ・コンパレータを含む。一方はＳＡＭ２ＳＡＭカウント値３０７を下限のしきい値（例えば、プリアンブルの検索の開始が望まれる場合の、特定のＳＡＭ２ＳＡＭカウント値３０７）と比較し、他方はＳＡＭ２ＳＡＭカウント値３０７を上限のしきい値（例えば、プリアンブルがすでに検出されている場合の、特定のＳＡＭ２ＳＡＭカウント値３０７）と比較する。ＳＡＭ２ＳＡＭカウント値３０７が下限のしきい値を超えるとプリアンブル・ウィンドウ信号３３２がアサートされ、ＳＡＭ２ＳＡＭカウント値３０７が上限のしきい値を超えるまでアサートが継続し、したがって、「ウィンドウ」が作成される。本発明のいくつかの実施形態では、上限と下限のしきい値は、プロセッサを介してプログラムすることができる。上限と下限のしきい値がハードコード化される場合もある。本明細書の開示に基づき、様々な回路を使用して、利用可能なＳＡＭ２ＳＡＭカウントに基づくそのようなウィンドウを生成できることが当業者には理解されよう。
【００２４】
別法として、またはこれに加えて、デコード・ロジック・モジュール３３０は、ユーザ・データ・セグメント内で後続のマークが期待される直前にアサートされ、マークの発生直後までアサートの状態が続く、マーク・ウィンドウ信号３３３を提供する。マーク・ウィンドウ信号３３３は、ユーザ・データ内に点在するマークの識別を行うマーク検出モジュール３６０に、イネーブル入力として提供される。そのようなマークにはデータ・アドレス・マークを含むことができるが、これに限定されるわけではない。マーク検出モジュール３６０は、本発明の異なる実施形態により変更してイネーブル信号を受け取ることができる、当技術分野で周知のどんなマーク検出モジュールでもよい。ＳＡＭ２ＳＡＭカウント値３０７を使用して、マーク検出モジュール３６０が後続のマークの識別を試みるウィンドウを開くことによって、誤検出の可能性が回避され、ノイズのある環境でマーク検出に対して追加の指針が提供されるため、確実性を高めることができる。さらに、マーク検出に関係する回路は、ウィンドウが開いていない場合は無効にして、潜在的な省電力を実現することができる。ＳＡＭ２ＳＡＭカウント値３０７を使用して後続のマークの発生を予測することによって、あるサーボ・データ・セクタから次のサーボ・データ・セクタへの、ディスク・スピン速度の起こり得る周波数の変化を明らかにすることになる、非常に正確な検討のウィンドウを開くことができる。そのようなウィンドウイングは、読取り速度とユーザ・データのウェッジのサイズが磁気記憶媒体全体でゾーンごとに変化する可能性があるため、特に役立つことができる。ただし、すべての変化が事前に分かっている場合に、ＳＡＭ２ＳＡＭカウントに基づく後続のマーク位置の予測が可能である。
【００２５】
本発明のある特定の実施形態では、デコード・ロジック・モジュール３３０は２つのマーク・ウィンドウ・コンパレータを含む。一方はＳＡＭ２ＳＡＭカウント値３０７を下限のしきい値（例えば、マークの検索の開始が望まれる場合の、特定のＳＡＭ２ＳＡＭカウント値３０７）と比較し、他方はＳＡＭ２ＳＡＭカウント値３０７を上限のしきい値（例えば、マークがすでに検出されている場合の、特定のＳＡＭ２ＳＡＭカウント値３０７）と比較する。ＳＡＭ２ＳＡＭカウント値３０７が下限のしきい値を超えるとマーク・ウィンドウ信号３３３がアサートされ、ＳＡＭ２ＳＡＭカウント値３０７が上限のしきい値を超えるまでアサートが継続し、したがって、「ウィンドウ」が作成される。上限のしきい値を超えると、次に期待されるマークの位置を反映するように下限のしきい値と上限のしきい値が増加し、しきい値の比較とマーク信号ウィンドウのアサートおよびデアサートの処理が繰り返される。ＳＡＭＦＯＵＮＤ３０１がアサートされると、ユーザ・データ内の第１マークの期待される位置を示すように、上限と下限のしきい値がリセットされる。本発明のいくつかの実施形態では、上限と下限のしきい値は、プロセッサを介してプログラムすることができる。上限と下限のしきい値がハードコード化される場合もある。本明細書の開示に基づき、様々な回路を使用して、利用可能なＳＡＭ２ＳＡＭカウントに基づくそのようなウィンドウを生成できることが当業者には理解されよう。
【００２６】
別法として、またはこれに加えて、デコード・ロジック・モジュール３３０は、特定の機能のセットアップ時間の直前にアサートされる、プログラム可能なセットアップ・イネーブル信号３７１を提供する。例えば、サーボ、読取り、または書込みのイベントが発生する直前に、プログラム可能なセットアップ・イネーブル信号３７１をアサートすることができる。これによって、例えば、特定のイベントが開始する前に回路が動作的に安定するよう（例えば、過渡信号が落ち着くまでの時間）、十分に事前に非アクティブ回路に電力を供給することができる。さらに、そのようなイネーブルは、イベント間のパッド領域を減少させることになる。１つの具体例として、そのようなセットアップ・イネーブルを使用すると、十分に早期に書込みパスのための電源をオンにすることができ、ディスクにデータが実際に書き込まれる前に、内部電圧を安定させることができる。別の具体例として、そのようなイネーブルを使用すると、サーボ・イベントに対して早期にスケルチを開始することができる。さらに別の具体例として、そのようなイネーブルを使用すると、読取りイベントにとってクロックが必要な位置より前に、復元されたクロックの電源オン・シーケンスを開始することができる。本明細書の開示に基づき、そのようなセットアップ・イネーブル信号には、この他にも様々な潜在的な用途があることが当業者には理解されよう。
【００２７】
ＳＡＭ２ＳＡＭカウント値３０７を使用してプログラム可能なセットアップ・イネーブル信号３７１をアサートすることによって、特定のイベントのための準備を正確な間隔で開始および終了することができる。本発明のある特定の実施形態では、デコード・ロジック・モジュール３３０は２つのセットアップ・ウィンドウ・コンパレータを含む。一方はＳＡＭ２ＳＡＭカウント値３０７をプログラム可能なセットアップ・イネーブル・レジスタ３１０から利用可能な下限のしきい値と比較し、他方はＳＡＭ２ＳＡＭカウント値３０７をプログラム可能なセットアップ・イネーブル・レジスタ３１０からやはり利用可能な上限のしきい値と比較する。ＳＡＭ２ＳＡＭカウント値３０７が下限のしきい値を超えるとプログラム可能なセットアップ・イネーブル信号３７１がアサートされ、ＳＡＭ２ＳＡＭカウント値３０７が上限のしきい値を超えるまで（または場合によっては、ハード・ディスク・コントローラ（図示せず）によって信号が送られたために、ＳＡＭ２ＳＡＭカウント値とは無関係のイベントが完了するまで）アサートが継続する。本明細書の開示に基づき、様々な回路を使用して、利用可能なＳＡＭ２ＳＡＭカウントに基づくプログラム可能なセットアップ・イネーブル信号３７１を生成できることが当業者には理解されよう。
【００２８】
別法として、またはこれに加えて、デコード・ロジック・モジュール３３０は、特定の機能の開始時間の直前にアサートされる、プログラム可能なスタート・イネーブル信号３７２を提供する。例えば、サーボ、読取り、または書込みのイベントが発生する直前に、プログラム可能なスタート・イネーブル信号３７２をアサートすることができる。そのような信号は、ハード・ディスク・コントローラ（図示せず）からの従来のゲート・アサーションにも使用することができ、したがって、コントローラは引き続きイベントの抑制や中止をリアルタイムで制御することができる。また一方、ＳＡＭ２ＳＡＭカウンタを用いて、これらのイベントの実際のデータ処理開始時間をトリガすることで、セクタ間のパッド領域を減少させ、プリアンブルのサイズを減少させることができる。このことは、実際のデータのためにより多くのディスク容量を使用できることを意味する。本明細書の開示に基づき、そのようなセットアップ・イネーブル信号には、この他にも様々な潜在的な用途があることが当業者には理解されよう。
【００２９】
ＳＡＭ２ＳＡＭカウント値３０７を使用してプログラム可能なスタート・イネーブル信号３７２をアサートすることによって、特定のイベントを開始するタイミングをより正確に表すことができる。本発明のある特定の実施形態では、デコード・ロジック・モジュール３３０は２つのスタート・ウィンドウ・コンパレータを含む。一方はＳＡＭ２ＳＡＭカウント値３０７をプログラム可能なスタート・イネーブル・レジスタ３１５から利用可能な下限のしきい値と比較し、他方はＳＡＭ２ＳＡＭカウント値３０７をプログラム可能なスタート・イネーブル・レジスタ３１５からやはり利用可能な上限のしきい値と比較する。ＳＡＭ２ＳＡＭカウント値３０７が下限のしきい値を超えるとプログラム可能なスタート・イネーブル信号３７２がアサートされ、ＳＡＭ２ＳＡＭカウント値３０７が上限のしきい値を超えるまで（または場合によっては、ハード・ディスク・コントローラ（図示せず）によって信号が送られたために、ＳＡＭ２ＳＡＭカウント値３０７とは無関係のイベントが完了するまで）アサートが継続する。本明細書の開示に基づき、様々な回路を使用して、利用可能なＳＡＭ２ＳＡＭカウントに基づくプログラム可能なスタート・イネーブル信号３７２を生成できることが当業者には理解されよう。
【００３０】
図４は、本発明の様々な実施形態による同期化の処理を示す流れ図４００である。流れ図４００をたどると、ＳＡＭ２ＳＡＭカウンタの出力値が、プログラム可能なセットアップ出力に関連する下限のしきい値と比較される（ブロック４０２）。下限のしきい値を超えている場合（ブロック４１２）、プログラム可能なセットアップ・イネーブルがアサートされる（ブロック４０４）。次いで、プログラム可能なセットアップ出力に関連する上限のしきい値を超えているかどうか（ブロック４０６）、または、例えばハード・ディスク・コントローラなどの外部割込みを受け取っているかどうか（ブロック４０７）が判断される。上限のしきい値を超えていない場合（ブロック４０６）、かつ、外部割込みを受け取っていない場合（ブロック４０７）、プログラム可能なセットアップ・イネーブルはアサートの状態が続く。あるいは、上限のしきい値を超えている場合（ブロック４０６）、または、外部割込みを受け取っている場合（ブロック４０７）、プログラム可能なセットアップ・イネーブルがデアサートされる（ブロック４０８）。デアサートされると（ブロック４０８）、ブロック４０２〜４０８の処理が再び開始するまで、ＳＡＭ２ＳＡＭカウンタのリセットが待機される（ブロック４５４）。
【００３１】
別法として、またはこれに加えて、ＳＡＭ２ＳＡＭカウンタの出力値が、プログラム可能なスタート出力に関連する下限のしきい値と比較される（ブロック４１２）。下限のしきい値を超えている場合（ブロック４１２）、プログラム可能なスタート・イネーブルがアサートされる（ブロック４１４）。次いで、プログラム可能なスタート出力に関連する上限のしきい値を超えているかどうか（ブロック４１６）、または、例えばハード・ディスク・コントローラなどの外部割込みを受け取っているかどうか（ブロック４１７）が判断される。上限のしきい値を超えていない場合（ブロック４１６）、かつ、外部割込みを受け取っていない場合（ブロック４１７）、プログラム可能なスタート・イネーブルはアサートの状態が続く。あるいは、上限のしきい値を超えている場合（ブロック４１６）、または、外部割込みを受け取っている場合（ブロック４１７）、プログラム可能なスタート・イネーブルがデアサートされる（ブロック４１８）。デアサートされると（ブロック４１８）、ブロック４１２〜４１８の処理が再び開始するまで、ＳＡＭ２ＳＡＭカウンタのリセットが待機される（ブロック４５４）。
【００３２】
別法として、またはこれに加えて、ＳＡＭ２ＳＡＭカウンタの出力値が、ＳＡＭウィンドウ出力に関連する下限のしきい値と比較される（ブロック４２２）。下限のしきい値を超えている場合（ブロック４２２）、ＳＡＭウィンドウ出力がアサートされる（ブロック４２４）。次いで、ＳＡＭウィンドウ出力に関連する上限のしきい値を超えているかどうかが判断される（ブロック４２６）。上限のしきい値を超えていない場合（ブロック４２６）、ＳＡＭウィンドウ出力はアサートの状態が続く。あるいは、上限のしきい値を超えている場合（ブロック４２６）、ＳＡＭウィンドウ出力がデアサートされる（ブロック４２８）。デアサートされると（ブロック４２８）、ブロック４２２〜４２８の処理が再び開始するまで、ＳＡＭ２ＳＡＭカウンタのリセットが待機される（ブロック４５４）。
【００３３】
別法として、またはこれに加えて、ＳＡＭ２ＳＡＭカウンタの出力値が、プリアンブル・ウィンドウ出力に関連する下限のしきい値と比較される（ブロック４３２）。下限のしきい値を超えている場合（ブロック４３２）、ＳＡＭウィンドウ出力がアサートされる（ブロック４３４）。次いで、ＳＡＭウィンドウ出力に関連する上限のしきい値を超えているかどうかが判断される（ブロック４３６）。上限のしきい値を超えていない場合（ブロック４３６）、ＳＡＭウィンドウ出力はアサートの状態が続く。あるいは、上限のしきい値を超えている場合（ブロック４３６）、ＳＡＭウィンドウ出力がデアサートされる（ブロック４３８）。デアサートされると（ブロック４３８）、ブロック４３２〜４３８の処理が再び開始するまで、ＳＡＭ２ＳＡＭカウンタのリセットが待機される（ブロック４５４）。
【００３４】
別法として、またはこれに加えて、ＳＡＭ２ＳＡＭカウンタの出力値が、マーク・ウィンドウ出力に関連する下限のしきい値と比較される（ブロック４４２）。下限のしきい値を超えている場合（ブロック４４２）、マーク・ウィンドウ出力がアサートされる（ブロック４４４）。次いで、プリアンブル・ウィンドウ出力に関連する上限のしきい値を超えているかどうかが判断される（ブロック４４６）。上限のしきい値を超えていない場合（ブロック４４６）、プリアンブル・ウィンドウ出力はアサートの状態が続く。あるいは、上限のしきい値を超えている場合（ブロック４４６）、プリアンブル・ウィンドウ出力がデアサートされる（ブロック４４８）。デアサートされると（ブロック４４８）、次に期待されるマークの位置（例えば、システムが次のマークの検索を開始すべき位置）を示すように、マーク・ウィンドウに関連する下限のしきい値が増分し（ブロック４５０）、次に期待されるマークの位置（例えば、システムがすでにマークを識別していることが期待される位置）を示すように、マーク・ウィンドウに関連する上限のしきい値が増分する（ブロック４５２）。更新されたこれらのしきい値を使用して（ブロック４５０、４５２）、ブロック４４２〜４４８の処理が繰り返される。
【００３５】
前述の処理はＳＡＭ２ＳＡＭカウンタがリセットされるまで続く（ブロック４５６）。ＳＡＭ２ＳＡＭカウンタがリセットされると（ブロック４５６）、プログラム可能なセットアップ出力、プログラム可能なスタート出力、ＳＡＭウィンドウ出力、プリアンブル・ウィンドウ出力、マーク・ウィンドウ出力のすべてが、まだデアサートされていない場合はデアサートされる（ブロック４５８）。デアサートされたこれらの信号を用いて、ブロック４０２〜４５４の処理が、新しく識別されたＳＡＭと後続のＳＡＭの間の次の期間に繰り返される。
【００３６】
図５を参照すると、本発明のいくつかの実施形態による、ＳＡＭ２ＳＡＭカウント値に基づいてウィンドウ出力を生成するための例示的な回路５００が示されている。回路５００は、上限コンパレータ５２５と下限コンパレータ５３５とを含む。上限コンパレータ５２５は、ＳＡＭ２ＳＡＭカウント値５１０（すなわち、連続する２つのサーボ・データ・セクタの間の位置を示す値）と上限のしきい値５２０を比較するように動作可能である。上限のしきい値５２０は、プログラム可能な場合もあれば、ハードコードされている場合もある。さらに上限のしきい値５２０は、例えば、連続する２つのサーボ・データ・セクタの間に発生する複数のマークを検出することができるように、動的に変更することができる。下限コンパレータ５３５は、ＳＡＭ２ＳＡＭカウント値５１０と下限のしきい値５３０を比較するように動作可能である。下限のしきい値５３０は、プログラム可能な場合もあれば、ハードコードされている場合もある。さらに下限のしきい値５３０は、例えば、連続する２つのサーボ・データ・セクタの間に発生する複数のマークを検出することができるように、動的に変更することができる。上限のしきい値５２０がＳＡＭ２ＳＡＭカウント５１０より大きい場合、上限コンパレータ５２５の出力がｈｉｇｈにアサートされる。下限のしきい値５３０がＳＡＭ２ＳＡＭカウント５１０より大きい場合、下限コンパレータ５３５の出力がｈｉｇｈにアサートされる。各コンパレータの出力がＸＯＲゲート５４５に提供され、ＸＯＲゲート５４５の出力がフリップ・フロップ５５５のデータ入力に提供される。
【００３７】
動作時、上限コンパレータ５２５と下限コンパレータは両方とも論理「０」である。このため、ＸＯＲゲート５４５の出力は論理「０」となり、これが次のクロック５６０でフリップ・フロップ５５５の出力５７０となる。下限コンパレータ５３５の出力が論理「１」としてアサートされている場合、ＳＡＭ２ＳＡＭカウント５１０が下限のしきい値５３０を超えるまでこの状態が続く。これは、ＸＯＲゲート５４５の出力、および最終的にフリップ・フロップ５７０の出力５７０で論理「１」をもたらす。上限コンパレータ５２５の出力が論理「１」としてアサートされている場合、ＳＡＭ２ＳＡＭカウント５１０が上限のしきい値５２０を超えるまでこの状態が続く。これは、ＸＯＲゲート５４５の出力、および最終的にフリップ・フロップ５７０の出力５７０で論理「０」をもたらす。後続のサーボ・データ・セクタ内のＳＡＭの識別によってＳＡＭ２ＳＡＭカウント５１０がリセットされるまで、この状態が続く。
【００３８】
図６を参照すると、本発明のいくつかの実施形態による、ハード・ディスク・コントローラからの出力によって制御可能な、ＳＡＭ２ＳＡＭカウント値に基づいてウィンドウ出力を生成するための例示的な回路６００が示されている。回路６００は、上限コンパレータ６２５と下限コンパレータ６３５とを含む。上限コンパレータ６２５は、ＳＡＭ２ＳＡＭカウント値６１０（すなわち、連続する２つのサーボ・データ・セクタの間の位置を示す値）と上限のしきい値６２０を比較することができる。上限のしきい値６２０は、プログラム可能な場合もあれば、ハードコードされている場合もある。さらに上限のしきい値６２０は、例えば、連続する２つのサーボ・データ・セクタの間に発生する複数のマークを検出することができるように、動的に変更することができる。下限コンパレータ６３５は、ＳＡＭ２ＳＡＭカウント値６１０と下限のしきい値６３０を比較するように動作可能である。下限のしきい値６３０は、プログラム可能な場合もあれば、ハードコードされている場合もある。さらに下限のしきい値６３０は、例えば、連続する２つのサーボ・データ・セクタの間に発生する複数のマークを検出することができるように、動的に変更することができる。上限のしきい値６２０がＳＡＭ２ＳＡＭカウント６１０より大きい場合、上限コンパレータ６２５の出力がｈｉｇｈにアサートされる。下限のしきい値６３０がＳＡＭ２ＳＡＭカウント６１０より大きい場合、下限コンパレータ６３５の出力がｈｉｇｈにアサートされる。各コンパレータの出力がＸＯＲゲート６４５に提供され、ＸＯＲゲート６４５の出力がフリップ・フロップ６５５のデータ入力に提供される。コントローラ出力は、フリップ・フロップ６５５のリセット入力に適用される。これによってハード・ディスク・コントローラ（図示せず）は、ＳＡＭ２ＳＡＭカウント６１０の値とは別に出力６７０をリセットすることができる。回路６００は回路５００と実質的に同様に動作するが、ＳＡＭ２ＳＡＭカウント６１０の値に必ずしも影響されない入力によって出力６７０をリセットできる点が異なる。回路５００および回路６００は単なる例であり、本明細書の開示に基づき、本発明の様々な実施形態により、様々な回路を使用して、ＳＡＭ２ＳＡＭＮカウント値に基づく所望の出力を提供できることを当業者は理解するであろうことに留意されたい。
【００３９】
終わりに、本発明は、磁気記憶媒体へのアクセスを制御するための新規なシステム、デバイス、方法、および構成を提供する。以上本発明を１つまたは複数の実施形態に関して詳細に述べたが、その趣旨から逸脱することなく、様々な改変形態、変更形態、および均等物が当業者には明らかであろう。したがって、上記の説明は、添付の特許請求の範囲で定義される本発明の範囲を限定するものと解釈すべきでない。
【図１ａ】
0005420555.tif 000002
【図１ｂ】
0005420555.tif 000003
【図１ｃ】
0005420555.tif 000004
【図２】
0005420555.tif 000005
【図３】
0005420555.tif 000006
【図４】
0005420555.tif 000007
【図５】
0005420555.tif 000008
【図６】
0005420555.tif 000009