(57)【要約】【課題】２進データ・ストリームで同期を実現する方法、システム、およびプログラムを提供すること。【解決手段】２進データ・ストリームが受領される。少なくとも１つの分離したピークを有する同期マークが、データ・ストリーム中の少なくとも１つの地点に生成される。受領した２進データと同期マークを連結することにより、符号化データ・ストリームが形成される。復号化の間、同期マークの少なくとも１つの分離したピークに隣接して発生するエラー伝播に基づいて同期マークが検出される。
2005525666.tif 000002
【特許請求の範囲】
【請求項１】
２進データ・ストリームで同期を実現する方法であって、
２進データ・ストリームを受け取ること、
少なくとも１つの分離したピークを有する同期マークを、前記データ・ストリーム中の少なくとも１つの地点に生成すること、
前記同期マークを前記受け取った２進データと連結することによって符号化データ・ストリームを形成すること、および
復号化の間、前記同期マークの前記少なくとも１つの分離したピークに隣接して発生するエラー伝播に基づいて前記同期マークを検出することを含む方法。
【請求項２】
前記受け取った２進データ・ストリームを既知のパターンと連結することをさらに含む請求項１に記載の方法。
【請求項３】
前記既知のパターンが、シーケンス「１０」を有するＶＦＯパターンを含む請求項２に記載の方法。
【請求項４】
前記同期マークが、同期シンボルを前記ＶＦＯパターンと連結することによって決定される請求項３に記載の方法。
【請求項５】
前記同期マークを前記受け取った２進データと連結することによって前記符号化データ・ストリームを形成することが、
前記同期マークを、前記ＶＦＯパターンからの少なくとも１つのビットと連結して、前記同期マークよりも多くのビットを有する修正後同期パターンを得ることをさらに含む請求項３に記載の方法。
【請求項６】
前記受け取った２進データ・ストリームを、少なくとも１つの再同期マークと連結することをさらに含み、前記少なくとも１つの再同期マークが、前記受け取った２進データ・ストリームの中央に位置し、前記再同期マークと前記符号化２進データとは異なる請求項１に記載の方法。
【請求項７】
前記少なくとも１つの再同期マークを検出して、前記復号化プロセスが正しく動作しているかを検証することをさらに含む請求項６に記載の方法。
【請求項８】
前記受け取った２進データのデータ区間が、レートｍ／ｎで符号化される請求項１に記載の方法。
【請求項９】
前記同期マークが０１０００１００００１０１０００１を含み、前記ｍ／ｎ符号化レートが１６／１７符号化レートを含む請求項８に記載の方法。
【請求項１０】
前記データ区間が符号化レートｍ／ｎで符号化され、前記再同期マークが、前記符号化２進データの各バイトと等しい固定の複数のビットを含む請求項８に記載の方法。
【請求項１１】
前記再同期マークが１０００００００００１００００００００００１０００００００００００１を含み、前記ｍ／ｎレート符号化ビット・シーケンスが１６／１７レート・コード化シーケンスを含む請求項１０に記載の方法。
【請求項１２】
前記同期マークを検出することが、ピーク間の偶数個の１と、ピークの周りのエラー・パターン「１０１」とを検出することを含む請求項１に記載の方法。
【請求項１３】
２進データ・ストリームで同期を実現するシステムであって、
２進データ・ストリームを受け取る手段と、
少なくとも１つの分離したピークを有する同期マークを、前記データ・ストリーム中の少なくとも１つの地点に生成する手段と、
前記同期マークを前記受け取った２進データと連結することによって符号化データ・ストリームを形成する手段と、
復号化の間、前記同期マークの前記少なくとも１つの分離したピークに隣接して発生するエラー伝播に基づいて前記同期マークを検出する手段とを備えるシステム。
【請求項１４】
前記受け取った２進データ・ストリームを既知のパターンと連結する手段をさらに備える請求項１３に記載のシステム。
【請求項１５】
前記周知パターンが、シーケンス「１０」を有するＶＦＯパターンを含む請求項１４に記載のシステム。
【請求項１６】
前記同期マークが、同期シンボルを前記ＶＦＯパターンと連結することによって決定される請求項１５に記載のシステム。
【請求項１７】
前記同期マークを前記受け取った２進データと連結することによって前記符号化データ・ストリームを形成する前記手段がさらに、前記同期マークを、前記ＶＦＯパターンからの少なくとも１つのビットと連結して、前記同期マークよりも多くのビットを有する修正後同期パターンを得る請求項１５に記載のシステム。
【請求項１８】
前記受け取った２進データ・ストリームを少なくとも１つの再同期マークと連結する手段をさらに備え、前記少なくとも１つの再同期マークが、前記受け取った２進データ・ストリームの中央に位置し、前記再同期マークと前記符号化２進データとは異なる請求項１３に記載のシステム。
【請求項１９】
前記少なくとも１つの再同期マークを検出して、前記復号化プロセスが正しく動作しているかを検証する手段をさらに備える請求項１８に記載のシステム。
【請求項２０】
前記受け取った２進データのデータ区間、レートｍ／ｎで符号化される請求項１３に記載のシステム。
【請求項２１】
前記同期マークが０１０００１００００１０１０００１を含み、前記ｍ／ｎ符号化レートが１６／１７符号化レートを含む請求項２０に記載のシステム。
【請求項２２】
前記データ区間が符号化レートｍ／ｎで符号化され、前記再同期マークが、前記符号化２進データの各バイトと等しい固定の複数のビットを含む請求項２０に記載のシステム。
【請求項２３】
前記再同期マークが１０００００００００１００００００００００１０００００００００００１を含み、前記ｍ／ｎレート符号化ビット・シーケンスが１６／１７レート・コード化シーケンスを含む請求項２２に記載のシステム。
【請求項２４】
前記同期マークを検出する手段が、ピーク間の偶数個の１と、ピークの周りのエラー・パターン「１０１」とを検出する請求項１３に記載のシステム。
【請求項２５】
入出力装置をさらに備え、前記同期を実現する前記システムが前記Ｉ／Ｏ装置内に実装される請求項１３に記載のシステム。
【請求項２６】
前記Ｉ／Ｏ装置が磁気テープ・ドライブを含む請求項２５に記載のシステム。
【請求項２７】
２進データ・ストリームで同期を実現するコードを含む製品であって、前記コードが、
２進データ・ストリームを受け取ること、
少なくとも１つの分離したピークを有する同期マークを、前記データ・ストリーム中の少なくとも１つの地点に生成すること、
前記同期マークを前記受け取った２進データと連結することによって符号化データ・ストリームを形成すること、および
復号化の間、前記同期マークの前記少なくとも１つの分離したピークに隣接して発生するエラー伝播に基づいて前記同期マークを検出することを含む動作を実施させる製品。
【請求項２８】
前記受け取った２進データ・ストリームを既知のパターンと連結することをさらに含む請求項２７に記載の製品。
【請求項２９】
前記既知のパターンが、シーケンス「１０」を有するＶＦＯパターンを含む請求項２８に記載の製品。
【請求項３０】
前記同期マークが、同期シンボルを前記ＶＦＯパターンと連結することによって決定される請求項２９に記載の製品。
【請求項３１】
前記同期マークを前記受け取った２進データと連結することによって前記符号化データ・ストリームを形成することが、
前記同期マークを、前記ＶＦＯパターンからの少なくとも１つのビットと連結して、前記同期マークよりも多くのビットを有する修正後同期パターンを得ることをさらに含む請求項２９に記載の製品。
【請求項３２】
前記受け取った２進データ・ストリームを、少なくとも１つの再同期マークと連結することをさらに含み、前記少なくとも１つの再同期マークが、前記受け取った２進データ・ストリームの中央に位置し、前記再同期マークと前記符号化２進データとは異なる請求項２７に記載の製品。
【請求項３３】
前記少なくとも１つの再同期マークを検出して、前記復号化プロセスが正しく動作しているかを検証することをさらに含む請求項３２に記載の製品。
【請求項３４】
前記受け取った２進データのデータ区間が、レートｍ／ｎで符号化される請求項２７に記載の製品。
【請求項３５】
前記同期マークが０１０００１００００１０１０００１を含み、前記ｍ／ｎ符号化レートが１６／１７符号化レートを含む請求項３４に記載の製品。
【請求項３６】
前記データ区間が符号化レートｍ／ｎで符号化され、前記再同期マークが、前記符号化２進データの各バイトと等しい固定の複数のビットを含む請求項３４に記載の製品。
【請求項３７】
前記再同期マークが１０００００００００１００００００００００１０００００００００００１を含み、前記ｍ／ｎレート符号化ビット・シーケンスが１６／１７レート・コード化シーケンスを含む請求項３６に記載の製品。
【請求項３８】
前記同期マークを検出することが、ピーク間の偶数個の１と、ピークの周りのエラー・パターン「１０１」とを検出することを含む請求項２７に記載の製品。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ・ストリームの同期および再同期のための方法、システム、およびプログラムに関する。
【背景技術】
【０００２】
関連出願
本願は、同時係属の、本願の譲受人に譲渡された「磁気記録システムでの分離遷移を保証するようにデータを符号化する方法および装置（Method and Apparatus for Encoding Data to Guarantee IsolatedTransitions in a Magnetic Recording System）」という名称の出願人整理番号TUC920010037US1を有する米国特許出願に関連する。この米国特許出願第10/037753号は、本明細書と同一の日付（2002年1月2日）で出願され、参照によりその全体が本明細書に組み込まれる。
【０００３】
データ記録システムでは、データ・ドライブが、当技術分野で周知の符号化方式を使用して正および負の「磁束遷移」を記憶媒体に書き込み、デコーダを使用して記憶媒体上に格納された符号化データをリードバックする。「１」ビット（「１」）は信号中のピークまたはトラフを表し、「０」ビット（「０」）はピークがないことを示す。記録チャネルまたはデコーダに提供すべきデータは、記録媒体上に／から遷移として記録またはリードバックすべき順次ビット文字列である。従来技術では、データセットは、特定の位置（ヘッダ）にＶＦＯ（「可変周波数発振器」）パターンを含み、読取りクロック（位相ロック・ループ（「ＰＬＬ」）など）をコードワード・ビット周波数に同期するための特定の既知の遷移周波数を含む。ＶＦＯパターンは、１続きの「１０」または２Ｔビットなどの反復コードワード・パターンを含むことができるが、反復コードワード・パターンは、ヘッダ中のその位置によって識別可能である。ＶＦＯパターンと任意の符号化データとの間に既知の同期マークも設けられ、デコーダをコードワード境界と着信データの開始位置とに位置合せすることが可能となる。
【０００４】
ＰＬＬが完全な位相ロックを達成しない場合、またはデコーダが着信データ上のコードワード境界に位置合せされない場合、デコーダは、通常は次のデータセットのヘッダ中または１群のコードワード・グループに関するヘッダ中にある次の同期（「ｓｙｎｃ」）または再同期（「ｒｅｓｙｎｃ」）パターンに遭遇するまで、着信符号化データを首尾よく復号化することができなくなる。同期パターンを検出しなかった（ミスした）か、（例えば欠陥のために）誤った位置で誤って検出したとき、厳密なビット位置およびコードワード境界への位置合せはわからない。したがって、デコーダは、次のｓｙｎｃまたは再同期などの何らかの別のｓｙｎｃフィールドに出会わなければ、または何らかの別のｓｙｎｃフィールドに出会うまで、符号化データを首尾よく復号化することができない。そのような復号化の失敗は、無限のエラー伝播を含み、それは破壊的なタイプの障害である。
【０００５】
ＶＦＯパターンおよび同期マークの位置が既知である場合であっても、同期マーク中の１つまたは複数のビットの誤検出によって同期マークの認識が妨げられる可能性がある。同期マークが適切に認識されない場合、データ検出器は、記録されたデータと同期されず、データを認識しない。
【０００６】
従来技術では、エラー訂正コードを使用してデータ・エラーが対処される。このようなコードにより、多くのデータ記録エラーの検出および訂正が可能となる。しかし、ＶＦＯまたは同期パターン中のエラーにより、同期マークの検出をミスする可能性があり、または誤った位置で同期マークを検出する可能性がある。したがって、データが実際に開始する前または開始した後にデータを読み取ることでデータ検出が開始される可能性がある。同期マークの検出を介してデータの開始を判定することができない場合、１つの同期マークと、首尾よく検出された後続の同期マークとの間の全データが失われることになる。これは破壊的な効果を持ち、データを保護するエラー訂正コードが無駄となる可能性がある。
【０００７】
本願の譲受人に譲渡された米国特許第５，９９９，１１０号では、ＶＦＯパターンと連結された符号化同期マークを使用することに基づく方法が開示されている。この方法では、符号化同期マークが、固定された複数のビット中のビット数に関して、連結されたＶＦＯから最大ハミング距離のところにセットされる。しかし、ＥＰＲ４（Enhanced Partial Response Type 4）などのある応用例では、エラーはピーク間で伝播する傾向があるので、最大ハミング距離尺度はあまり効果的ではない。
【特許文献１】米国特許第５，９９９，１１０号
【非特許文献１】米国特許出願第10/037753号「磁気記録システムでの分離遷移を保証するようにデータを符号化する方法および装置（Method andApparatus for Encoding Data to Guarantee Isolated Transitions in a MagneticRecording System）」、出願人整理番号TUC920010037US1
【発明の開示】
【発明が解決しようとする課題】
【０００８】
したがって、データ符号化システムでのエラーを低減するためのより精巧な同期／再同期方法を提供することが当技術分野で求められている。
【課題を解決するための手段】
【０００９】
２進データ・ストリームで同期を達成するための方法、システム、およびプログラムが提供される。２進データ・ストリームが受領される。少なくとも１つの分離したピークを有する同期マークがデータ・ストリーム中の少なくとも１つの地点に生成される。受領した２進データと同期マークを連結することにより、符号化データ・ストリームが形成される。復号化の間、同期マークの少なくとも１つの分離したピークに隣接して発生するエラー伝播に基づいて同期マークが検出される。
【００１０】
別の実装では、受領した２進データ・ストリームが少なくとも１つの再同期マークと連結され、その少なくとも１つの再同期マークが、受領した２進データ・ストリームの中央に位置し、再同期マークと符号化２進データとは異なる。
【００１１】
復号化プロセスが正しく動作していることを検証するために再同期マークが検出される。
【００１２】
さらに別の実装では、受領した２進データ・ストリームのデータ区間が、符号化速度ｍ／ｎで符号化され、再同期マークが、符号化２進データの各バイトと等しい固定の複数のビットを含む。
【００１３】
記載の実装は、データ・ストリーム中に同期／再同期マークを配置して、受領した２進データ・ストリーム中のデータ区間の検出を改善することによって改良型のデータの復号化を提供する技法を提供する。
【００１４】
次に図面を参照する。各図面では、全体を通して、同様の参照数字が、対応する部分を表す。
【発明を実施するための最良の形態】
【００１５】
以下の説明では、本明細書の一部をなし、本発明のいくつかの実施形態を示す添付の図面を参照する。本発明の範囲から逸脱することなく、他の実施形態を使用することもでき、構造的変更および動作的変更を行えることを理解されたい。
【００１６】
図１に本発明の諸態様が実施されるテープ記憶環境を示す。ホスト・システム２はテープ・ドライブ４と通信する。テープ・ドライブ４は、ホスト・システム２筐体内の構成要素でよく、またはホスト・システム２がネットワーク（図示せず）を介して通信するテープ・ライブラリまたはテープ・サーバ内のドライブでよい。テープ・ドライブ４は、テープ・ドライブ４書込みヘッド１６と係合するテープ・カートリッジ１０内のテープ媒体８上に書き込むべきホスト２から受け取ったデータを符号化するエンコーダ６を含む。テープ・ドライブ４は、テープ媒体８上に格納されたデータを復号化してホスト・システム２に返すデコーダ１２をさらに含む。テープ・ドライブ４内のコントローラ１４は、書込みヘッド１６および読取りヘッド１８を駆動して、テープ媒体８上の符号化データに関して、当技術分野で周知の方式で、それぞれ書込み操作および読取り操作を実施する。エンコーダ６およびデコーダ１２は、コントローラ１４の外部の別々のハードウェア構成要素として実装することができ、またはコントローラ１４によって実行される論理機構内に実装することができる。
【００１７】
代替の実装では、ハード・ディスク・ドライブ、光ディスク・ドライブなどの他のタイプの記憶装置、または不揮発性記憶媒体に対してデータを読み取る／書き込むその他の装置内にエンコーダおよびデコーダを実装することができる。記載の実装では、テープ媒体８は、磁気テープ（例えばLinear Tape Open、Travanなど）またはデジタル・テープを含む。
【００１８】
書込みヘッド１６は、符号化２進ストリームを磁束遷移の形でテープ媒体８に書き込む。テープ媒体８からデータを取り出すために、読取りヘッド１８はテープ媒体８から符号化データを読み取り、次いで符号化データがデコーダ１２によって復号化され、デコーダ１２は、ホスト２に返すための出力２進データを供給する。読取り時のエラーが同期およびエラー制御のために使用されるコードのエラー訂正能力を超えない場合、デコーダ１２からの２進出力データは、ホスト２からの２進入力データと一致する。
【００１９】
ある実装では、書込みヘッド１６と読取りヘッド１８での入力は非同期である。したがって、読取りチャネルへのデータ・ストリームは、読取りヘッド１８が格納データの遷移を正しく解釈することが可能となり、その結果デコーダ１２がチャネル出力データを復号化することができるのに必要なクロッキングを提供しなければならない。デコーダ１２は位相ロック・ループ（ＰＬＬ）２０回路を含む。ＰＬＬのクロックを首尾よく読み取ることを必要とする符号化データ・フィールドに進入する前に、位相ロック・ループ（ＰＬＬ）２０が位相ロックを達成できるようにクロッキング・フィールドが符号化データ・フィールドに付加される。
【００２０】
書込みフォーマッタ２２は、クロッキング情報を有するヘッダを各データ・セットに追加する。例えば、書込みフォーマッタ２２は、エンコーダ６、ｓｙｎｃジェネレータ２４、およびマルチプレクサ（ＭＵＸ）２６を操作して、符号化データ、ｓｙｎｃ信号などを所望のフォーマット内に配置する。次いで、クロッキング情報を読取りヘッド１８で使用して、符号化データ中の各遷移位置を識別することができ、符号化データを復号化するためにデコーダ１２にその情報を供給することができる。読取りヘッド１８からの出力信号パターンは、テープ媒体８から読み取った２進データ中の同期パターンを検出するｓｙｎｃ検出器２８にも供給される。読取りフォーマッタ３０は、検出した同期マークを使用して、デコーダ出力のうちどれがデータであるかを判定する。
【００２１】
図２に、本発明の実装による同期／再同期マークを使用した符号化データ・セットの記録／チャネル・フォーマットを示す。各データ・セットはデータ・セット・セパレータまたはギャップ５０によって分離される。データが磁気テープ・ドライブによって記録されたとき、ギャップは通常、「ＩＢＧ」ギャップすなわちブロック間ギャップと呼ばれる。ギャップの後には、ＶＦＯエリアの周波数へのデータ周波数の同期を維持するために出力チャネルＰＬＬ２０で使用される変数周波数発振器（ＶＦＯ）エリア５２が続くこともある。データ記録において、テープ・ドライブ１０は様々な速度で動作することができ、または停止し、再始動し、または方向を反転させることができ、したがってデータ周波数が変化する。この変化は、ＰＬＬ２０でＶＦＯエリア周波数を検出することによって判定しなければならない。次いでＶＦＯエリア５２の後に符号化データ５３〜５５クワドラント（ｑｕａｄｒａｎｔ）が続き、磁気テープなど順方向または逆方向に移動することができるテープ・ドライブにおいて、後方ＶＦＯエリア５７が続く。
【００２２】
記載の実装では、１群のコードワード・グループすなわちコードワード・カッド５４が、図２でより詳細に拡大され、図示されている。各コードワード・カッドは、先行ＶＦＯパターン６０および同期マーク６１を有するヘッダと、再同期マーク６５で分離された複数のコードワード・グループ６２〜６３とを含み、カッドの端部で次のＶＦＯパターンに隣接する、磁気テープ用の「反転Ｓｙｎｃ」パターン６８を有する。コードワード・グループ６２〜６３はそれぞれどんな適切な長さでもよい。デコーダ４０を同期マークに位置合せする前に周波数を調整できるように、ＶＦＯパターン６０が同期マーク６１の前に現れ、同期マーク６１と連結されることも好ましい。記載の実装は、ＶＦＯパターンの反対側に逆順に同期マーク６８を書き込み、末尾ＶＦＯパターンと連結することにより、どちらの方向でも読み書きするように構成することができる。したがって、反転ｓｙｎｃ６８、ＶＦＯ６０、および次の同期マーク６１を順次文字列として連結することができる。
【００２３】
ＶＦＯパターン６０は、反復高周波数コードワード・パターンであり、ヘッダ中に配置された結果として識別可能となる。ＶＦＯパターン６０は、クロックまたはＰＬＬが動作周波数をＶＦＯエリア５２の周波数に調節する（位相ロック）ことができるショート・パターンを提供する。しかしＶＦＯパターン６０は、周波数を検出してロックすることができるように十分長くなければならない。
【００２４】
デコーダ１２が符号化データの開始を判定し、それをコードワード境界に位置合せすることが可能となるように同期マーク／パターン６１が設けられる。（ＶＦＯパターンに隣接しない再同期マークとは対照的に）同期マークは常にＶＦＯパターンに隣接するので、同期マークはＶＦＯパターンに続いて容易に検出される。同期マークの位置により、符号化データで見られるどんな問題もほぼ解消される。
【００２５】
ＶＦＯまたは同期パターンあるいはその両方の中のエラーにより、同期パターンを誤った位置で発見する可能性があり、その結果、データが実際に開始する前または後に、記録読取りチャネルが「データ」の供給を開始する可能性がある。これにより、デコーダ１２が同期から外れて動作し、それによって、供給された「データ」のいずれも復号化が妨げられる。データ記録システムで生じる１つのエラーは「ビット・シフト」である。ビット・シフトでは、高周波数信号のシンボル間干渉が、任意の遷移の検出を、隣接する遷移から離れ、遷移なしの長い文字列（遷移間の多数の「０」）に向けてシフトする。これにより、検出回路が、長い範囲の遷移を別々の位置にシフトし、それによって長い範囲の遷移が短いパターンとして誤って検出される可能性がある。
【００２６】
別のエラーは、ある遷移の発生が非常にゆっくりで、読取り時に強い信号が形成されず、したがってピーク検出器の最小検出しきい値を満たさないものである。したがって、遷移は完全にミスされる。さらに別のエラーは、媒体中の欠陥の結果として生じ、その結果、データが記録される１本のトラックに関して信号振幅が劇的に失われ、伝達関数が劇的に変化する。
【００２７】
記載の実装では、上記で議論したエラーを防止する、同期マークのピーク間の連続するエラーの発生に基づく検出アルゴリズムが開示される。記載の実装によるアルゴリズムは、分離したピークからなる同期マークを使用する。分離したピークを使用するのは、ＥＰＲ４（「Extended Partial Response」）タイプの波形を復号化する際に見つかる最も可能性の高いタイプのエラー伝播に対して、ピークが自然の障壁として振る舞うからである。１６／１７符号化レートを使用する一実装では、ＶＦＯに付加される、Ｓ＝０１０００１００００１０１０００１などの１７ビット同期シンボルＳを使用することができる。代替の同期シンボルをデータ・ストリーム中に生成することもできる。データ・ストリーム中のデータの前に同期シンボル（Ｓ）を生成することにより、データ・ストリーム中でデータ復号化が始まる地点をデコーダ１２が検出することが可能となる。ある実装では、同期シンボルがＶＦＯに付加され、
Ｓ’＝１００１０００１００００１０１０００１
が得られる。Ｓ’の最初の２ビット（１０）は既にＶＦＯ内にあるので、１９ビットではなく、１７ビットがＶＦＯに付加される。これは１６／１７コード・レートでの２バイトに等しい。このようにして、伝播ピークを利用して同期シンボルを伝播ピークに組み込む。同期シンボル（Ｓ’）の値を代替方式で生成することもできる。Ｓ’を求めた後、データが同期マークの後に続いて始まるので、データの位置を突き止め、読み取ることができる。加えて、逆方向でデータを読み取ることもできるので、同期マークが、符号化データの後に逆方向にも記録される。その結果、同期マークのどの部分もＶＦＯパターンと混同する可能性は低く、同期マークは、全パターンに実際に遭遇するまで、認識する可能性は低い。したがって、符号化データに遭遇する前に、有効な同期マークに遭遇した場合、正しい位置で認識する可能性が高い。
【００２８】
ＶＦＯが付加された同期Ｓ’で生じる一般的エラーは、ピーク間に偶数の「１」を有するバーストに関係する。加えて、ピークの周りのタイプ「１０１」のエラー・パターンも一般的である。生じ得る可能なエラー・パターンは以下の通りである。
１１１１０００００００００００００００
０００００００００１１１１００００００
０００００１１０００００００１１１１０
００１０１００００００００００００００
【００２９】
したがって、本発明によれば、デコーダ１２は、一般的に生じるエラー・パターンをそのようなものとして認識することができるべきである。
【００３０】
記載の実装では、デコーダ１２によって受領される２進ストリームは、ＶＦＯフィールド１０１０１０と、その後に続く同期マークと、次いで、「磁気記録システムでの分離遷移を保証するようにデータを符号化する方法および装置（Method and Apparatus for Encoding Data to Guarantee IsolatedTransitions in a Magnetic Recording System）」という名称の整理番号TUC920010037US1を有する関連特許出願で開示されるレート・コードなどの１６／１７レート・コードを使用して符号化されたデータとを含む。この特許出願は、参照によりその全体が本明細書に組み込まれている。各コードワードは、せいぜい３つの０および３つの１で開始および終了し、２つのパターン１０１０１０１０１および０１０１０１０１０は除外され、各コードワードはピーク０１０を含む。ＥＰＲ４波形を符号化するために、２進ストリームに
【００３１】
【数１】
2005525666.tif 000003
（ただしＤは遅延演算子）を掛け、次いで２進ストリームを（１−Ｄ）（１＋Ｄ２）で畳み込むことによって２進ストリームが事前コード化され、当技術分野で周知の方式でＥＰＲ４波形が得られる。ＥＰＲ４波形を復号化するために、Ｖｉｔｅｒｂｉ復号化アルゴリズムが、恐らくは雑音のある波形のバージョンに適用され、アルゴリズムの結果を
【００３２】
【数２】
2005525666.tif 000004
と畳み込むことによってＶｉｔｅｒｂｉアルゴリズムの結果が事後コード化される。
【００３３】
図３に、ｓｙｎｃｈ検出器２８で実施され、受け取った２進ベクトル（ｒ０，ｒ１，ｒ２，．．．）中の同期マークを検出する論理を示す。記載の実装では、同期マークは、「０１０」などの少なくとも１つのピークを含む。図３に関して、制御は、入力２進ベクトル（ｒ０，ｒ１，ｒ２，．．．）を受け取る際にブロック１００で始まる。ただし各ｒｊは、受け取った入力ベクトル中のｊ番目の項目に関する２進値である。（ブロック１０２で）ｓｙｎｃｈ検出器２８はｊを０に初期化する。入力ベクトルの考慮する区間（ｒｊ，ｒｊ＋１，．．．，ｒｊ＋１８）を同期シンボル（Ｓ’）と比較し（ただしＳ’＝１００１０００１００００１０１０００１）、（ブロック１０４で）その間のハミング距離を求める。ハミング距離とは、各ベクトル中の異なるビット位置の数である。（ブロック１０６で）入力ベクトルの考慮する区間（ｒｊ，ｒｊ＋１，．．．，ｒｊ＋１８）と同期シンボル（Ｓ’＝１００１０００１００００１０１０００１）との間の求めたハミング距離が２以下である場合、（ブロック１０８で）入力ベクトルの考慮する区間（ｒｊ，ｒｊ＋１，．．．，ｒｊ＋１８）を、受け取った２進ベクトル内の同期シンボルとみなす。そうではなく、（ブロック１０６で）ハミング距離が２より大きい場合、（ブロック１１０で）エラー・ベクトルＥを、入力ベクトルの考慮する区間（ｒｊ，ｒｊ＋１，．．．，ｒｊ＋１８）と同期シンボル（Ｓ’＝１００１０００１００００１０１０００１）の排他的論理和（ＸＯＲ）として計算し、結果としてベクトル（ｅ０，ｅ１，．．．，ｅ１８）が得られる。（ブロック１１２で）値Ｘ０を論理和（ＯＲ）ｅ０∨ｅ１∨ｅ２に設定する。（ブロック１１４で）値Ｘ１を論理和（ＯＲ）ｅ４∨ｅ５∨ｅ６に設定する。（ブロック１１６で）値Ｘ２を論理和（ＯＲ）ｅ８∨ｅ９∨ｅ１０に設定する。（ブロック１１８で）値Ｘ３をｅ１３に設定する。（ブロック１２０で）値Ｘ４を論理和（ＯＲ）ｅ１５∨ｅ１６∨ｅ１７∨ｅ１８に設定する。（ブロック１２２で）値ＸをＸ１、Ｘ２、Ｘ３、およびＸ４の和に設定する。
【００３４】
（ブロック１２４で）Ｘが１に等しい場合、制御はブロック１０８に進み、入力ベクトルの考慮する区間（ｒｊ，ｒｊ＋１，．．．，ｒｊ＋１８）を入力ベクトル中の同期マークとみなす。そうではなく、（ブロック１２６で）Ｘが２より大きい場合、（ブロック１２８で）ｊを１だけ増分し、制御はブロック１０４に戻って、１ビットだけ右にシフトした、入力ベクトルの次の区間を考慮する。そうではなく、（ブロック１２６で）Ｘが２に等しい場合、（ブロック１３０で）変数Ｍを、エラー・ベクトル（Ｅ）中の１であるビット値の数として求める。（ブロック１３２で）ベクトルＷ（ｉ０，ｉ１，．．．，ｉＭ−１）を、ｉｋがｋ番目の値１の、入力ベクトルの考慮する区間（ｒｊ，ｒｊ＋１，．．．，ｒｊ＋１８）内のオフセットとなるように求める。例えば、ベクトル１０１０１の場合、ｉ０が０であり、ｉ１が２であり、ｉ２が４である。次いで、同期検出器２８は、（ブロック１３４で）変数Ｌを、１≦ｋ≦Ｍ−１について（ｉｋ−ｉｋ−１）が１と等しくなる回数に設定する。（ブロック１３６で）ＬがＭ−２に等しい場合、制御はブロック１０８に進み、現在考慮中の区間（ｒｊ，ｒｊ＋１，．．．，ｒｊ＋１８）を同期マークとして受諾し、そうでない場合、制御はブロック１２８に進み、受け取った入力データ中の次の可能な同期マークを考慮する。同期マークに続くビットはデータのブロックを含むので、同期マークから、読取りフォーマッタ３０は、データのブロックにアクセスして復号化することができる。
【００３５】
同期シンボルに加えて、再同期マーク６５をデータの中央に生成し、正しいデータを読み取っているかを検証する。同期シンボルとは異なり、再同期パターン６５の開始を示すためのＶＦＯは再同期マーク６５に先行しない。したがって、再同期マーク６５の位置は、符号化データと認識されることを回避するために追加の防護手段を有さなければならない。ある実装では、再同期マーク６５は、ほぼ４バイトのデータと等しい。１６／１７符号化レートを使用する一実施形態では、ＲＳ＝１０００００００００１００００００００００１０００００００００００１などの３４ビット再同期マークＲＳが使用される。ＲＳシンボルは単に例示のために与えたに過ぎず、他のシンボルも使用することができる。しかし、記載の実装では、再同期マーク６５を符号化データと間違える可能性は低い。したがって、符号化プロトコルに応じて、実際のデータとの混同を回避するように再同期マークが選択される。
【００３６】
再同期マークＲＳを検出するために、同期オペレーションで使用するのと同一の１６／１７コードで符号化されたデータ間に位置する上述のＲＳと一緒に以下のアルゴリズムを使用する（すなわち、各コードワードはせいぜい３つの０および３つの１で開始および終了し、２つのパターン１０１０１０１０１および０１０１０１０１０は除外され、各コードワードはピーク０１０を含む）。
【００３７】
図４に、読取りフォーマッタ３０で実施される、再同期（ＲＳ）コードを検出するための論理を示す。図４の論理は、３４ビット再同期マーク１０００００００００１００００００００００１０００００００００００１を仮定する。図４に関して、制御は、入力２進ベクトル（ｒ０，ｒ１，ｒ２，．．．）を読み取る際にブロック２００で始まる。ただし各ｒｊは、受け取った入力ベクトル中のｊ番目の項目に関する２進値である。デコーダ１２は（ブロック２０２で）ｊを０に初期化する。所与のｊに対する入力ベクトルの区間（ｒｊ，ｒｊ＋１，．．．，ｒｊ＋３３）を再同期シンボル（ＲＳ＝１０００００００００１００００００００００１０００００００００００１）と比較し、（ブロック２０６で）その２つの間のハミング距離を求める。ハミング距離は、各ベクトル中の異なるビット位置の数である。（ブロック２０６で）入力ベクトルの区間（ｒｊ，ｒｊ＋１，．．．，ｒｊ＋３３）と再同期シンボル（ＲＳ＝１０００００００００１００００００００００１０００００００００００１）との間の求めたハミング距離が０である場合、（ブロック２０８で）入力ベクトルの考慮する区間（ｒｊ，ｒｊ＋１，．．．，ｒｊ＋３３）を、読み取るベクトル内の再同期シンボル（ＲＳ）とみなす。そうではなく、（ブロック２０６で）ハミング距離が０でない場合、（ブロック２１０で）エラー・ベクトルＥを、入力ベクトルの考慮する区間（ｒｊ，ｒｊ＋１，．．．，ｒｊ＋３３）と再同期シンボル（ＲＳ）の排他的論理和（ＸＯＲ）として計算し、結果としてベクトル（ｅ０，ｅ１，．．．，ｅ３３）が得られる。
【００３８】
ブロック２１２では、変数Ｍを、入力ベクトル（ｒｊ，ｒｊ＋１，．．．，ｒｊ＋３３）中の１であるビット値の数として求める。（ブロック２１４で）ベクトルＷ（ｉ０，ｉ１，．．．，ｉＭ−１）を、ｉｋがｋ番目の値１の、入力ベクトルの考慮する区間（ｒｊ，ｒｊ＋１，．．．，ｒｊ＋３３）内のオフセットとなるように求める。例えば、ベクトル１０１０１の場合、ｉ０が０であり、ｉ１が２であり、ｉ２が４である。（ブロック２１６で）（（ｉＭ−１−ｉ０）＋１）がＭであり、（ブロック２２０で）Ｍが２に等しい場合、制御はブロック２０８に進み、入力ベクトルを再同期マークとして受諾する。（ブロック２２０で）Ｍが２ではなく、（ブロック２２４で）Ｍ＞１である場合、Ｅベクトルにおいて、（ブロック２３０で）ｅ０およびｅｗ−１を０に設定し、１≦ｋ≦（Ｍ−２）についてｅｋを１に設定する。（ブロック２３２で）修正後エラーＥベクトルと再同期シンボル（ＲＳ）中に共に１であるビット位置が１つだけ存在する場合、制御はブロック２０８に進み、入力ベクトルを再同期シンボルとして受諾する。そうでない場合、（ブロック２２８で）ｊを１だけ増分し、制御は、ブロック２０４に戻り、受け取った入力ベクトル内で１ビットだけシフトし、次の可能な３４ビットを再同期マークとして考慮する。（ブロック２２６で）Ｗベクトル（ｉ０，ｉ１，．．．，ｉＭ−１）中の値が集合（０，１，３２，３３）の要素である場合、制御はブロック２０８に進み、考慮するベクトルを再同期マークとして受諾する。そうでない場合、制御はブロック２２８に進み、受け取った入力ベクトル中の次の可能な再同期マークを考慮する。（ブロック２１６で）（（ｉＭ−１−ｉ０）＋１）がＭではなく、（ブロック２１８で）（ｉＭ−１−ｉ０）がＭである場合、制御はブロック２３０に進み、そうでない場合、制御はブロック２２８に進み、ｊを増分し、受け取った入力ベクトル（ｒ０，ｒ１，ｒ２，．．．）中の次の可能な再同期マークを考慮する。
【００３９】
図５に、同期検出器２８およびデコーダ１２が本発明の実装に従ってどのようにビット同期／再同期を実施するかを示す。論理はブロック３００で始まり、デコーダ１２がテープ媒体８から符号化ビット・シーケンスを受け取る。（ブロック３０２で）同期検出器２８は、符号化ビット・シーケンス中のＶＦＯパターンを検出するためにシークする。ＶＦＯを検出した後、（ブロック３０４で）同期検出器２８は図３の論理を実行して同期マークＳを検出する。同期マーク（Ｓ）を識別することによりユーザ・データの始まりを正しく識別する。デコーダ１２がデータを読み取る間（ブロック３０６）、デコーダ１２は、再同期マーク（ＲＳ）を識別するためにシークし、データを正しく読み取っているかを検証する。（ブロック３０８で）デコーダ１２は、図４の論理を実行して再同期（ＲＳ）パターンを識別し、デコーダ１２がデータを適切に解釈しているか否かを検査する。
【００４０】
追加の実装の詳細
好ましい実施形態は、ソフトウェア、ファームウェア、ハードウェア、またはそれらの任意の組合せを生成するための標準プログラミング技法または標準エンジニアリング技法あるいはその両方を使用して、方法、装置、または製品（article of manufacture）として実装することができる。本明細書で使用する「製品」という用語は、ハードウェア論理機構（例えば集積回路チップ、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）、特定用途向け集積回路（ＡＳＩＣ）など）、またはコンピュータ可読媒体（例えば磁気記憶媒体（例えばハード・ディスク・ドライブ、フロッピィ・ディスク、テープなど）、光ストレージ（ＣＤＲＯＭ、光ディスクなど）、揮発性／不揮発性メモリ装置（例えばＥＥＰＲＯＭ、ＲＯＭ、ＰＲＯＭ、ＲＡＭ、ＤＲＡＭ、ＳＲＡＭ、ファームウェア、プログラマブル・ロジックなど））として実装されたコードまたは論理を指す。コンピュータ可読媒体中のコードはプロセッサによってアクセスされ実行される。好ましい実施形態が実装されるコードはさらに、伝送媒体を介して、またはファイル・サーバからネットワークを介してアクセス可能とすることができる。このような場合、コードが実装される製品は、ネットワーク伝送線路、ワイヤレス伝送媒体、空間を通じて伝播する信号、電波、赤外線信号などの伝送媒体を含むことができる。もちろん、本発明の範囲から逸脱することなく、この構成に対して多数の修正形態を作成することができ、製品は当技術分野で周知のどんな情報運搬媒体も含むことができることを当業者は理解されよう。
【００４１】
記載の実装は、データをテープ・ドライブに転送する技法を提供する。上述の論理は、他の入力／出力（Ｉ／Ｏ）装置または他の記憶装置、例えば光学式テープ、磁気テープ、磁気ディスクなどと共に使用することもできる。
【００４２】
記載の実装では、好ましいアルゴリズムを、ＥＰＲ４システムに基づいて示した。代替の実装では、同期／再同期マークの分離したピークの隣のエラー伝播を識別する同一の技法を使用して、ＰＲ４／Ｅ２ＰＲ４システムで使用するようにアルゴリズムを変更することもできる。
【００４３】
記載の実装では、各コードワードがせいぜい３つの０および３つの１で開始および終了し、２つのパターン１０１０１０１０１および０１０１０１０１０が除外され、各コードワードがピーク０１０を含む１６／１７コードを使用してデータが符号化されると仮定した。代替実施形態では、本発明で説明した同期／再同期方法を他の符号化方式にも適用することができ、異なる符号化のｍ／ｎレートで適用することもできる。さらに、同期（Ｓ’）／再同期（ＲＳ）シンボルに関して、本明細書で説明した値以外の他のシンボルを使用することもできる。
【００４４】
図３、４、および５で説明した論理では、特定の順序で行われる特定の動作を説明した。代替方法実装では、一部の論理動作を異なる順序で実施することができ、一部の論理動作を変更または削除することができ、それでもなお本発明の好ましい実施形態を実施することができる。さらに、上述の論理にステップを追加することができ、それでもなお本発明の実装に準拠することができる。
【００４５】
本発明の好ましい実施形態の上記の説明は、例示し説明するために提示した。これは網羅的なものではなく、本発明を開示の厳密な形態に限定するものでもない。上記の教示に照らして多数の修正形態および変形形態が可能である。本発明の範囲はこの詳細な説明によって限定されるのではなく、本明細書に添付の特許請求の範囲によって限定されるものとする。上記の使用、実施例、およびデータは、本発明の構成物の製造および使用についての完全な説明を提供する。本発明の精神および範囲から逸脱することなく本発明の多数の実施形態を作成することができるので、本発明は、頭記の特許請求の範囲内に存在する。
【図面の簡単な説明】
【００４６】
【図１】本発明の諸態様が実施される、データを符号化および復号化するためのテープ・ドライブ中の構成要素のアーキテクチャを示す図である。
【図２】本発明の実装による同期／再同期マークを使用する符号化データ・セットの記録／チャネル・フォーマットを示す図である。
【図３】本発明の実装に従ってデータ・ストリーム中の同期マークを検出する論理を示す図である。
【図４】本発明の実装に従って再同期マークを検出する論理を示す図である。
【図５】本発明の実装に従ってデータを復号化するときに図３および４の論理を使用するための論理を示す図である。
【図１】
2005525666.tif 000005
【図２】
2005525666.tif 000006
【図３】
2005525666.tif 000007
【図４】
2005525666.tif 000008
【図５】
2005525666.tif 000009
【国際調査報告】
2005525666.tif 000010
2005525666.tif 000011
2005525666.tif 000012