JP2012514823A - 磁気テープへのマルチトラック記録のための再書込効率の高いecc/インタリービング - Google Patents

磁気テープへのマルチトラック記録のための再書込効率の高いecc/インタリービング Download PDF

Info

Publication number
JP2012514823A
JP2012514823A JP2011544819A JP2011544819A JP2012514823A JP 2012514823 A JP2012514823 A JP 2012514823A JP 2011544819 A JP2011544819 A JP 2011544819A JP 2011544819 A JP2011544819 A JP 2011544819A JP 2012514823 A JP2012514823 A JP 2012514823A
Authority
JP
Japan
Prior art keywords
pco
mod
data
floor
sub
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.)
Granted
Application number
JP2011544819A
Other languages
English (en)
Other versions
JP5341207B2 (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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2012514823A publication Critical patent/JP2012514823A/ja
Application granted granted Critical
Publication of JP5341207B2 publication Critical patent/JP5341207B2/ja
Active 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/1833Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information
    • 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/12Formatting, e.g. arrangement of data block or words on the record carriers
    • 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/12Formatting, e.g. arrangement of data block or words on the record carriers
    • G11B20/1201Formatting, e.g. arrangement of data block or words on the record carriers on tapes
    • 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
    • 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/1866Error detection or correction; Testing, e.g. of drop-outs by interleaving
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B5/00Recording by magnetisation or demagnetisation of a record carrier; Reproducing by magnetic means; Record carriers therefor
    • G11B5/008Recording on, or reproducing or erasing from, magnetic tapes, sheets, e.g. cards, or wires
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2703Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques the interleaver involving at least two directions
    • H03M13/271Row-column interleaver with permutations, e.g. block interleaving with inter-row, inter-column, intra-row or intra-column permutations
    • 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/12Formatting, e.g. arrangement of data block or words on the record carriers
    • G11B2020/1264Formatting, e.g. arrangement of data block or words on the record carriers wherein the formatting concerns a specific kind of data
    • G11B2020/1265Control data, system data or management information, i.e. data used to access or process user data
    • G11B2020/1287Synchronisation pattern, e.g. VCO fields
    • 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/12Formatting, e.g. arrangement of data block or words on the record carriers
    • G11B2020/1264Formatting, e.g. arrangement of data block or words on the record carriers wherein the formatting concerns a specific kind of data
    • G11B2020/1289Formatting of user data
    • 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/14Digital recording or reproducing using self-clocking codes
    • G11B20/1403Digital recording or reproducing using self-clocking codes characterised by the use of two levels
    • G11B20/1423Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code
    • G11B20/1426Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code conversion to or from block codes or representations thereof
    • G11B2020/144616 to 17 modulation
    • 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/1833Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information
    • G11B2020/1836Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information using a Reed Solomon [RS] code
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/90Tape-like record carriers
    • G11B2220/93Longitudinal format, wherein tracks are in the direction of the tape, read with a static head, e.g. DCC

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

【課題】マルチトラック・テープにデータを書込むための方法、装置およびコンピュータ・プログラム製品を提供する。
【解決手段】マルチトラック・テープにデータを書込むために、受取データ・セットが受取られて非符号化サブデータ・セットにセグメント化され、各サブデータ・セットはK行およびK列を有するアレイを含む。各非符号化サブデータ・セットに対して、N−KC1パリティ・バイトが各行に対して生成され、N−KC2パリティ・バイトが各列に対して生成される。C1およびC2パリティ・バイトはそれぞれ行および列の最後に追加されて、それぞれ符号化C1およびC2コードワードを形成する。データ・セット当りのC1コードワードのすべてに特定のコードワード・ヘッダが与えられて、複数の部分コードワード・オブジェクト(PCO)が形成される。各PCOは、ヘッダ内の情報に従って論理データ・トラック上にマップされる。各論理データ・トラック上で隣接するPCOはマージされてCOを形成し、COは変調符号化されマップされて同期COになる。次いでT個の同期COがデータ・テープに同時に書込まれ、ここでTはデータ・テープ上の並行アクティブ・トラックの数である。
【選択図】図14

Description

本発明は一般的に、磁気テープに記録すべきデータをフォーマットすることに関し、特に、8の倍数個のトラックからの読取およびそこへの書込を同時に行うために、ヘッド当り8の倍数のトランスデューサ/センサを有するテープ・ドライブに適応するための、調整可能なECCフォーマットおよびインタリービング・プロセスに関する。
リニア・テープ・オープン(Linear Tape Open:LTO)フォーマットの世代3および4は、2次元製品コードに基づくエラー訂正コード(error−correcting codes:ECC)を用いる。C1コードは2次元アレイの行に沿って配置される。それは長さ240の偶数/奇数インタリーブされたリード−ソロモン(Reed−Solomon:RS)コードであって、長さ480の行を生じさせる。C2コードはアレイの列に沿って配置される。それは長さ64、次元54のRSコードである。コードワードは64×480のサイズの2次元アレイであり、それらはLTO規格においてサブデータ・セットと呼ばれる。将来の世代のドライブは16より多くのトラックに同時に書込むことが予想される。しかし、LTOフォーマットのすべての現行の世代(世代1から世代4)は上記のC2符号化スキームに基づいており、これは関連するインタリービングとともに、それぞれ16、24、32または48(またはその他の8の倍数)の並行トラックを読取/書込するための、ヘッド当り16、24、32または48(またはその他の8の倍数)のトランスデューサ/センサを有するヘッドを支持する将来のテープドライブ・システムに適応できない。さらに、将来の世代のドライブは、LTOフォーマット(世代1から世代4)のコードワード対と呼ばれる2ウェイの偶数/奇数コートワード・インタリーブ(codeword interleaves:CWI−2)の代わりに、長さ960の4ウェイ・コートワード・インタリーブ(CWI−4)からなる行を有する、より長いサブデータ・セットを用いることが予期される。LTO世代1から世代4においては、これらのCWI−2にコードワード対ヘッダを与えて対にグループ分けすることにより、コードワード・オブジェクト(codeword objects:CO)を形成する。書込障害が起こったときは、CO全体を再書込する。もしCWI−4からなるサブデータ・セット行に同じCO再書込戦略を適用すれば、効率に損失が生じる。なぜなら、CO当り2つのCWI−4のうち一方のみが障害を有することがほとんどであり、他方のCWI−4は再書込みする必要がないためである。CWI−4はCWI−2の2倍の長さであるため、効率の損失は前者の場合の方が後者よりも約2倍大きくなる。
本発明は、マルチトラック・テープにデータを書込むための方法、装置およびコンピュータ・プログラム製品を提供する。
実施形態の1つにおいて、方法はユーザ・データ・シンボルのストリームを受取るステップを含み、このストリームはデータ・セットを含み、この方法はさらにデータ・セットを複数個Sの非符号化サブデータ・セットにセグメント化するステップを含み、各サブデータ・セットはK行およびK列を有するアレイを含む。各非符号化サブデータ・セットに対して、サブデータ・セットの各行に対するN−KC1パリティ・バイトが生成されて行の最後に追加されることによって、長さNの符号化C1コードワードが形成される。同様に、各非符号化サブデータ・セットに対して、サブデータ・セットの各列に対するN−KC2パリティ・バイトが生成されて列の最後に追加されることによって、長さNの符号化C2コードワードが形成され、これによってNC1コードワードを有する符号化サブデータ・セットが生成される。データ・セット当りS×NのC1コードワードのすべてに特定のコードワード・ヘッダが与えられて、複数個のS×N部分コードワード・オブジェクト(partial codeword objects:PCOs)が形成される。各PCOは、PCOのヘッダ内の情報に従って論理データ・トラック上にマップされる。各論理データ・トラック上で隣接するPCOはマージされてCOを形成し、各COは少なくとも2つの隣接するPCOを含む。各COは変調符号化され、さまざまな同期パターンを付加することによって同期COにマップされる。次いでT個の同期COがテープに同時に書込まれ、ここでTはテープ上の並行アクティブ・トラックの数に等しい。
別の実施形態において、データ記憶テープ・デバイスは、データ・セットを含むユーザ・データ・シンボルのストリームを受取るためのホスト・インタフェースと、データ・セットを複数個Sの非符号化サブデータ・セットにセグメント化するために動作可能なセグメント化モジュールとを含み、各サブデータ・セットはK行およびK列を有するアレイを含む。C1エンコーダは、サブデータ・セットの各行に対するN−KC1パリティ・バイトを生成し、C1パリティ・バイトを行の最後に追加して長さNの符号化C1コードワードを形成するために動作可能であり、C2エンコーダは、サブデータ・セットの各列に対するN−KC2パリティ・バイトを生成し、C2パリティ・バイトを列の最後に追加して長さNの符号化C2コードワードを形成するために動作可能であり、これによってNC1コードワードを有する符号化サブデータ・セットが生成される。部分コードワード・オブジェクト・フォーマッタは、S個の符号化サブデータ・セットから複数個の(S×N)部分コードワード・オブジェクト(PCO)を形成するために動作可能であり、各PCOはヘッダおよびC1コードワードを含む。部分コードワード・オブジェクト・インタリーバは、PCOのヘッダ内の情報に従って各PCOを論理データ・トラック上にマップするために動作可能である。コードワード・オブジェクト・フォーマッタは、各論理データ・トラック上で隣接するPCOをマージしてCOにするために動作可能であり、各COは少なくとも2つの隣接するPCOを含む。変調エンコーダはCOを符号化して、変調符号化COに加えてさまざまな同期パターン含有する同期COにするために動作可能である。書込ヘッドを含む書込チャネルは、T個の同期COをテープに同時に書込むために動作可能であり、ここでTはテープ上の並行アクティブ・トラックの数に等しい。
本発明を実現し得る磁気テープ・ドライブのブロック図である。 インタリーブされたC1およびC2 ECCを含む符号化サブデータ・セットを模式的に表す図である。 ユーザ・データ・シンボルのストリームからデータ・セット・レイアウトを形成するために用いられるLTO世代4規格を一般化した構成要素のブロック図である。 図4Aおよび図4Bは、それぞれ非符号化および符号化サブデータ・セットを模式的に表す図である。 本発明とともに用いられ得る[96,84,13]−RSコードに対するC2エンコーダのロジック図である。 LTO世代4データ・フォーマットのコードワード・オブジェクト(CO)を示す図である。 COインタリービングに基づく記録媒体の16トラックに沿ったサブデータ・セットの分布の例を示す図である。 本発明のPCOを示す図である。 ユーザ・データ・シンボルのストリームからデータ・セット・レイアウトを形成するために用いられる本発明の構成要素のブロック図である。 本発明の代替的なCOを示す図である。 PCOインタリービングに基づく記録媒体の16トラックに沿ったサブデータ・セットの分布の例を示す図である。 LTO世代4データ・フォーマットの同期COを示す図である。 本発明の代替的な同期COを示す図である。 符号化プロセスならびにPCO、COおよび同期COの生成を示す流れ図である。
本明細書に記載される機能ユニットのいくつかは、その実現独立性をより特定的に強調するためにモジュールとしてラベル付けされている。たとえば、モジュールは、カスタムVLSI回路またはゲート・アレイ、たとえばロジック・チップ、トランジスタ、もしくはその他のディスクリート部品などの市販の半導体を含むハードウェア回路として実現されてもよい。加えてモジュールは、たとえばフィールド・プログラマブル・ゲート・アレイ、プログラマブル・アレイ・ロジック、プログラマブル・ロジック・デバイスなどのプログラマブル・ハードウェア・デバイスにおいて実現されてもよい。加えてモジュールは、さまざまな種類のプロセッサによる実行のためにソフトウェアにおいて実現されてもよい。実行可能コードの識別されるモジュールは、たとえばオブジェクト、プロシージャまたは関数などとして組織されてもよいコンピュータ命令の1つまたはそれ以上の物理ブロックまたは論理ブロックなどを含んでもよい。実行可能コードのモジュールは、単一の命令であってもたくさんの命令であってもよく、いくつかの異なるコード・セグメント、異なるプログラムおよびいくつかのメモリ・デバイスに分散されていてもよい。
さらに、記載される本発明の特徴、構造または特性は、1つまたはそれ以上の実施形態においてあらゆる好適な態様で組合わされてもよい。以下の説明においては、本発明の実施形態の完全な理解を与えるために、たとえばプログラミング、ソフトウェア・モジュール、ハードウェア・モジュール、ハードウェア回路などの例など、多数の特定の詳細が提供される。しかし、関連技術分野の当業者は、1つもしくはそれ以上の特定の詳細がなくても、または他の方法、構成要素などを伴っても本発明を実施できることを認識するだろう。他の場合には、本発明の局面を不明瞭にすることを避けるために、周知の構造、材料または動作は詳細に図示または記載していない。
図1は、本発明を組込み得るデータ・テープ・ドライブ100の高レベルブロック図である。記録されるべきデータは、ホスト・インタフェース102を通じてホスト(図示せず)からドライブ100へと送信される。データはC1エンコーダ104において第1の符号化を受け、DRAMバッファ・コントローラ106に送られる。C1符号化されたデータはC2エンコーダ108において第2の符号化を受け、DRAMバッファ110に保存される。その後データはSRAMバッファ112に保存され、フォーマッタ114においてフォーマットされる。フォーマットされたデータは書込チャネルに送られ、次いでテープ120にデータを記録する書込ヘッド118に送られる。
テープ120からデータを読返すときは、読取ヘッド122がデータを検出して読取チャネルに送る。次いでデータはデフォーマッタ126で処理され、COは検証器128において検証される。次いでデータは復号化されて、それを要求するホストに送られる。
リニア・テープ・オープン(LTO)フォーマットは、データ・セット(テープに書込まれる最小単位)およびサブデータ・セットという概念に基づいている。データ・セットは2種類のデータを含有する。これは、ユーザ・データおよびデータ・セットに関する管理情報であり、後者はデータ・セット情報テーブル(Data Set Information Table:DSIT)の中にある。エラーまたは欠陥によるデータ損失を最小限にするために、すべてのデータはエラー訂正コード(ECC)によって保護されている。データ・セットはいくつかのサブデータ・セットを含み、各サブデータ・セットは行に配置されたデータを含有する。サブデータ・セット行はユーザ・データを含んでもよいし、DSITを含んでもよい。図2に示されるとおり、各行は2つのインタリーブされたバイト・シーケンスからなる。第1レベルECC(C1 ECC)は、各行について偶数バイトおよび奇数バイトに対して別々に計算される。その結果得られるC1 ECCの偶数および奇数パリティ・バイトは、同じくインタリーブされたやり方で対応する行に追加される。ECC保護された行はコードワード対(Codeword Pair:CWP)である。偶数バイトは偶数C1コードワードを形成し、奇数バイトは奇数C1コードワードを形成する。各列に対して第2レベルECC(C2 ECC)が計算され、その結果得られるC2 ECCパリティ・バイトは対応する列に追加される。ECC保護された列はC2コードワードである。
このようにC1およびC2 ECCによって保護されたときのサブデータ・セットは、テープに書込まれる最小ECC保護単位である。各サブデータ・セットはECCに関して独立である。つまり、サブデータ・セット中のエラーはそのサブデータ・セットのみに影響する。あらゆるECCアルゴリズムの能力は、パリティ・バイトの数に依存し、その訂正能力によって示される。C1コードワードに対して計算された所与の数のN−KC1パリティ・バイトに対しては、そのコードワードの2つのインタリーブの各々においてfloor((N−K)/4)までのエラーが訂正されてもよく、ここでfloor(x)とは実数xの整数部分を示す。加えて、C2コードワードに対して計算された所与の数のN−KC2パリティ・バイトに対しては、そのC2コードワードにおいてfloor((N−K)/2)までのエラーまたはN−K消去が訂正されてもよい。
同じサブデータ・セット中に複数のエラーがあると、C1またはC2訂正能力の性能を圧倒するため、データを読取るときにエラーが起こり得ることが認められるだろう。エラーは、たとえば小さい粒子または小さい媒体の欠陥などの非常に小さな事象によってもたらされることがある。エラーは、たとえばスクラッチ、トラッキング・エラーまたは機械的原因などのもっと大きな事象によってもたらされることもある。
単一の大きなエラーが単一のサブデータ・セット中の複数のコードワードに影響する可能性を減らすために、いくつかの書込方法では、各サブデータ・セットからのコードワードをテープ表面の縦および横方向になるべく遠く離して置く。したがって、単一のエラーが同じサブデータ・セットからの複数のコードワードに影響してもECC訂正能力が圧倒されない。同じサブデータ・セットからのコードワードを空間的に分離することはリスクを低減し、これはマルチトラック記録フォーマットに対して以下の態様で達成される。同時に記録されるトラックのセットの各トラックに対して、1つのサブデータ・セットからのコードワード対を別のサブデータ・セットからのコードワード対と組合わせることによって、コードワード・クワッド(Codeword Quad:CQ)を形成する。その結果得られるCQを、複数の記録トラックのうちの1つに書込む。同様にしてコードワード対を組合わせることによって残りのトラックすべてに対してCQを形成し、すべてのコードワード対が異なるサブデータ・セットからのものであるようにする。同時に書込まれるCQの群をCQセットと呼ぶ。
図3のブロック図に示されるとおり、データ・セット・セグメント化モジュール302においてユーザ・データ・シンボルのストリームをセグメント化することによって、指定された固定サイズのデータ・セットが形成される。データ・セットはさらに、S個の非符号化サブデータ・セットに分割される。サブデータ・セット構造は、C1/C2製品コードに基づくECCモジュール304に適合される。非符号化サブデータ・セットは、サイズK×Kのバイトの2次元アレイを含み、ここでKおよびKはそれぞれC1およびC2コードの次元である(図4A)。C1エンコーダ306は行において動作し、各行にパリティ・バイトを付加する。C2エンコーダ308はC1符号化された列において動作し、各列にパリティを追加する。その結果得られるC1/C2符号化サブデータ・セットはバイトのN×Nアレイであり、ここでNおよびNはそれぞれC1およびC2コードの長さである(図4B)。
図5に示されるとおり、C2エンコーダ308による符号化は、線形フィードバック・シフト・レジスタ(linear feedback shift register:LFSR)500によって行われてもよく、そのフィードバック係数は[96,84,13]−RSコードの生成多項式によって与えられる。LFSR500の初期状態は、オールゼロの状態である。RSコードワードのN−K=12パリティ・バイトは、LFSRを通じてすべての系統的なK=84データ・バイトをクロックし、レジスタR0からR11を読出すことによって得られる。
LTO−3/4においては、S=64サブデータ・セット(またはコードワード)がデータ・セット(DS)を形成し、C1コードの長さはN=480であり、C2コードの長さはN=64である。DS内のC1コードワードは、サブデータ・セット(subdata set:SDS)番号(0からS−1の範囲)と、サブデータ・セット(コードワード・アレイ)内の行番号とによって完全に決定される。LTO−3/4において、この割当はコードワード対指示と呼ばれる。これは以下の式によって定められる。
C1−codeword_number=SDS_number+64×row_number, (1)
ここでSDS_number=0,1,2,…,S−1であり、row_number=0,1,…,63である。LTO−3/4に対して、C1−codeword_numberインデックスは0から4095の値を取る。
図6に示される構造600はコードワード・オブジェクト(CO)構造であり、C1コードワードおよび関連するヘッダを含む基本単位の編成を反映する。
ECCモジュール304に続き、COフォーマッタ310は、2つの10バイトのヘッダ602、604と、DS当りS×N=4096のC1コードワードのうちの2つのC1コードワード606、608とからなるCOを形成する。つまり、S×N/2=2048のCOが存在して、0から2047までの番号が付けられている。インデックスCO_numberを有するCO構造600は、以下のとおり関連付けられるインデックスC1−codeword_numberを有する2つのC1コードワードを含有する。第1および第2のC1コードワードのインデックスC1−codeword_number_0およびC1−codeword_number_1は、それぞれ以下により与えられる。
C1−codeword_number_0=2×CO_number (2)
C1−codeword_number_1=2×CO_number+1 (3)
したがって、CO中の2つのC1コードワードは、連続するSDS_numberインデックスを有する2つのSDSから取られる。
COはT個のCOのバッチでテープ上に同時に書込まれ、ここでTは並行アクティブ・トラックの数である。COインタリーバ312は、DSの各COに0,1,…,T−1の範囲の論理トラック番号tを割当てる。つまり、DSのS×N/2のCOは、それらの連続するCO_numberインデックスに基づいてT個のCOのバッチにグループ分けされ、次いでこれらのバッチがTアクティブ・トラックに書込まれる。これによって、各バッチの1つのCOがTトラックの1つに、COインタリーバ312によって決定される1対1の態様で書込まれる。
COインタリーバは、インデックスn=CO_numberを有する各COに、以下の式に基づく論理トラック番号tを割当てることによって定められる。
t=mod(7floor(2n/S)+n,T) (4)
ここでfloor(x)は実数xの整数部分を示し、mod(a,T)はTによる除算の剰余を示し、剰余は0,1,…,T−1の範囲である。
図7においては、T=16論理トラックに沿ったデータ・セット・レイアウトを示すことによって、S=32SDSを有するDSに対する上記の式(4)に基づくCOインタリービングの結果が示される。96個の正方形は、SDS_number0および1を有するSDSの96個のCOに対応する。なお、テープに沿ったインタリーバ細分性はCOであり、すなわちx軸はCOの長さで測定される。T=16トラックが並行して書込まれるため、CO_number=nのCOはDSの始めからj=floor(n/T)の場所になる。
再書込を考慮すると、COよりも小さい再書込単位を有することが望ましい。この理由から、図8に示されるような部分コードワード・オブジェクト(PCO)が定められ、これはCWIおよびCWIヘッダからなり、式(4)によって指定される対応のCWI_number(図面においては4)を含む。
PCOインタリービングを伴う書込経路におけるデータ・フローを図9に示す。図3に示されるデータ・フローと同様に、データ・セット・セグメント化モジュール902においてユーザ・データ・シンボルのストリームをセグメント化することによって、指定された固定サイズのデータ・セットが形成される。データ・セットはさらに、S個の非符号化サブデータ・セットに分割される。サブデータ・セット構造は、C1/C2製品コードに基づくECCモジュール904に適合される。C1エンコーダ906は行において動作して各行にパリティ・バイトを付加し、C2エンコーダ908はC1符号化された列において動作して各列にパリティを追加することによって、C1/C2符号化サブデータ・セットが生成される。
ECCモジュール904に続き、PCOフォーマッタ910がPCOを形成する。図8に示されるPCOは、12バイトのCWIヘッダと960バイトのCWIとからなる。
データ・セット当りS×NのCWIが存在するため、データ・セット当りS×NのPCOも存在する。各PCOは、PCOのヘッダ内の情報に従って論理データ・トラック上にマップされる。
PCOインタリーバ912は、PCOに動作してそれらをT並行論理トラック上にマップする。各論理データ・トラックにおいて、隣接するPCOはCOフォーマッタ914においてマージされてCOを形成し、各COは少なくとも2つの隣接するPCOを含む。すなわち、PCOインタリーバ912は、同じトラックに沿って隣接するPCOの対をグループ化してCOにする(図10を参照)COフォーマッタ914よりも前に動作する。
PCOインタリーバ912は、インデックスm=CWI_numberを有する各PCOに、以下の式に基づく論理トラック番号tを割当てることによって定められる。
t=mod(7floor(m/S)+m,T) (5)
より一般的なPCOインタリーバは、以下の式を用いて得られる。
t=mod(7floor(f(m)/S)+g(m),T) (6)
この式は予め定められた関数f(.)およびg(.)を伴う。式(5)は(6)の特殊なケースであり、ここでf(m)=mであり、g(m)=mである。この一般式の別の興味深いケースは以下のとおりである。
t=mod(7floor(m/S)+floor(m/2),T) (7)
なお(7)は、CWIインデックスm=CWI_numberと、(2)および(3)で与えられるCOインデックスn=CO_numberとの関係を用いることによって、(4)から得られる。
図11においては、T=16論理トラックに沿ったデータ・セット・レイアウトを示すことによって、S=32SDSを有するDSに対する(7)に基づくPCOインタリービングの結果が示される。SDS_number0を有するSDSのN=96PCOがドットで表され、SDS1の96PCOが十字形でマークされる。図11においてドットおよび十字形で示される連続したPCOは、図7において正方形で示されるCOに対応する。このことはCOインタリーバ(4)とPCOインタリーバ(7)との等価性を示す。図11において、テープに沿ったインタリーバ細分性はPCOであり、すなわちx軸はPCOの長さで測定される。T=16トラックが並行して書込まれるため、CWI_number=mのPCOはDSの始めからi=floor(m/T)の場所になる。インタリーバ細分性が2倍細かくなることは、再書込の際にCOの代わりにPCOが再書込されるために、再書込による損失を約2分の1に低減できるという利点を有する。
データ・セット・レイアウトから明らかであるとおり、T論理トラックに同時に書込まれるのはT個のPCOである。T個のPCOのこうしたセットの各々をPCOセットと呼ぶ。データ・セット当りS×NのPCOが存在するため、S×N/TのPCOセットが存在する。データ・セット・レイアウト中のすべてのPCOセットは0からS×N/T−1までラベル付けされる。各CWI_number mはPCOセット・インデックスi=floor(m/T)を定める。逆に、各CWI_number mはトラック番号tおよびPCOセット・インデックスi=floor(m/T)によって一意に定められる。この「逆マップ(inverse map)」は、PCOインタリービングを特徴付けるための等価のやり方である。特に、(7)の逆マップは以下によって与えられる。
m=mod(i,2)+2Tfloor(i/2)+2mod(t−7mod(floor(i/2),T),T) (8)
COインタリーバはPCOインタリーバとは異なる細分性を有する。前者はCO_number nの自然の順序に基づくのに対し、後者はCWI_number mの自然の順序に基づく。COフォーマッタはCO_numberとCWI_numberとの間のリンクを提供する。しかし、COフォーマッタの関係(2)および(3)は、CO_numberおよびCWI_numberの自然の順序に適合しない。たとえば、CO_numberの順序に基づくと、インデックス0および1を有する連続するCWIはテープに同時に書込まれない。まず、インデックス0を有するCWIが、CWI_number2,4,…,2T−2を有するT−1個のCWIと同時に書込まれる。次いで、インデックス1を有するCWIが、CWI_number3,5,…,2T−1を有するT−1個のCWIと同時に書込まれる。よって、DSレイアウトの生成のためにCO_number nの一連の順序で進行することは、CWI_number mの一連の順序で進行することと同じではない。この違いを克服して同一のDSレイアウトを得るために、すべてのCWIインデックスのセット、すなわちセット{0,1,…,S×N−1}に固定置換pを適用して、所望の再順序付けを達成してもよい。特定的に、この置換は以下によって与えられる。
p(m)=2Tfloor(m/(2T))+Tmod(m,2)+floor(mod(m,2T)/2) (9)
ここでmod(a,b)はaのbによる除算の剰余を示す。よって、CWI_number mをDSレイアウトに対する基準として用いるとき、再順序付け置換を取り入れる必要があり、一般的なPCOインタリーバの式(6)における2つの関数はf(m)=p(m)およびg(m)=floor(p(m)/2)である。このことは、一般化したCWIインタリーバが、(4)に基づくCOインタリーバと同じデータ・セット・レイアウトを生成できることを示す。
上記のPCOインタリーバの設計は(5)または(7)に基づいている。これらの等式を修正して、代替的なPCOインタリーバを得ることができる。以下に、T=16トラック、C2長さN=96、およびデータ・セット当りS=32サブデータ・セットに対するこうした代替的なPCOインタリーバの説明を提供する。CWI_number mからトラック番号への「直接マップ」は、以下の式およびi=floor(m/T)によって与えられるPCOセット割当によって定められる。
t=mod{2floor(m/2)+6floor(m/32)+mod[floor(m/16),2]+mod[floor(m/256),2]−
2mod[floor(m/256),2]×mod[floor(m/16),2],16} (10)
CWI_number mをすべてのPCOセット・インデックスiおよび論理トラックtに割当てる逆インタリービング・マップは以下によって与えられる。
m=32floor(i/2)+mod(i,2)+2mod[5floor(i/2)+floor(t/2),8]
+16mod[mod(t,2)+mod(floor(i/16),2),2]
(11)
このマッピングを表1に示す。影付のセルは、サブデータ・セット番号0のPCOに対応する。表1より、図9に示されるCOフォーマッタ914によってPCOの対がグループ化されてCOとなる様子が明らかである。すなわち、固定された論理トラック番号tに対して、PCOインデックス2iおよび2i+1を有する2つのPCOが組合わされてCOとなり、この順序でテープに書込まれる。たとえば、CWIインデックス(16,17)および(58,59)を有する2対のPCOは2つの連続するCOにグループ分けされ、次いで論理トラックt=1に書込まれる。
PCO対のCOへのグループ化を行うための代替的なやり方もある。たとえば、各CO内のPCO対をスワップして、奇数PCOインデックス2i+1を有するPCOが偶数PCOインデックス2iを有するものの前に書込まれてもよい。さらに、こうしたスワッピングがPCOインデックスiの関数であってもよく、もしPCOインデックスiが{32,33,…,63}、{96,97,…,127}および{160,161,…,191}の範囲であれば、すべてのPCOがCO内でスワップされてもよい。こうした特定的なスワッピング規則を逆インタリーバ・マップに容易に取り入れることができる。たとえば、先のPCOインデックス依存的スワッピングは、(11)の右手側の項mod(i,2)を項mod(mod(i,2)+mod(floor(i/32),2),2)で置換することによって得られる。その結果、修正されたCWI_Number割当表が得られる。この修正された表は、{32,33,…,63}、{96,97,…,127}および{160,161,…,191}の範囲のPCOインデックスiを有するすべてのPCO対のスワッピングによって、表1とは異なっている。
表1
T=16トラック、C2長さN=96およびS=32サブデータ・セットを有する代替的なPCOインタリーバのCWI_Number割当
Figure 2012514823

Figure 2012514823

Figure 2012514823

Figure 2012514823

Figure 2012514823

Figure 2012514823
それぞれ図9および図3によって示されるPCOインタリービングまたはCOインタリービングの後、COをテープに書込む前に、COは変調符号化され、VFO、順方向同期、再同期、および逆方向同期のフィールドを挿入することによって、同期コードワード・オブジェクト(synchronized codeword object:SCO)構造に変換される(図12および図13を参照)。LTO−4において、ヘッダおよびCWI−2はコードワード対と呼ばれ、率16/17RLLエンコーダに通されることによって、それぞれ長さ85および4080のRLL符号化ビット・シーケンスをもたらす。より一般的には、ヘッダ部分に対して率RのRLLエンコーダを用い、CWIに対して率RのRLLエンコーダを用いて、CO構造を変調符号化できる。CWI−4に基づくCO構造に対して得られるSCO構造を図13に示しており、ここでVFO、順方向同期、再同期、および逆方向同期のフィールドは、それぞれ何らかの好適な長さLVFO、LFS、LRS、およびLFSを有する。
本明細書に記載されるインタリービング・スキームは、デッド・トラックに対するロバスト性およびストライプ・エラー(すなわち、すべてのトラックにわたるエラー)に対するロバスト性の増加を提供することが意図される。ストライプ・エラーに対するECC/COインタリービング・スキームまたはECC/PCOインタリービング・スキームのロバスト性は、(i)C2コードのパラメータ[N,K,dmin]、(ii)各データ・セット(DS)内のサブデータ・セット(SDS)の数Sによって与えられるインタリービングの深さ、および(iii)並列チャネル(トラック)の数Tの3つの要素に依存する。
ストライプ・エラーの場合には、デコーダが以下のとおりに動作する。C1デコーダは、いくつかのサブデータ・セットのうちの特定の行が訂正不能であることを検出し、これらの行の消去フラグをC2デコーダに与える。C2デコーダは消去復号を行い、誤訂正を避けるためにMバイトのマージンを保ちながら、サブデータ・セット当り最大N−K−Mの消去を訂正できる。テープに沿ったストライプ・エラーの伸長が(S/2)×(N−K−M)/T SCO以下であるとき、エラーに影響されるCOは(S/2)×(N−K−M)以下であり、これらの誤ったCOは影響されたDSのS/2対のサブデータ・セットにわたって逆COインタリービング・マップによって均等に分布される。PCOインタリービングの場合には、誤った(S/2)×(N−K−M)のCOはS×(N−K−M)のPCOに相当し、これらはSサブデータ・セットにわたって逆PCOインタリービング・マップによって均等に分布される。よってどちらの場合にも、各サブデータ・セットは最大N−K−Mの消去行を含有することとなり、それらは訂正可能であるため、SCO単位による最大ストライプ・エラー長(maximum stripe error length:MSEL)は以下によって与えられる。
MSEL=S×(N−K−M)/(2T) (12)
なお、テープに沿ったMSELの絶対長[mm]はSCOの長さ[mm]に依存する。
チャネル・エラーがないときに許容できるデッド・トラックの最大数(maximum number of dead tracks:MNDT)も類似の態様で導くことができる。特定的には、次式
MNDT=floor((N−K)/(N/T)) (13)
を用いてデッド・トラックの最大数を計算できる。
MSELおよびMNDT特性の点からは、COインタリーバ(4)と、(5)または(7)に基づくPCOインタリーバとは等価である。よって下記の表II−IIIはCOインタリービングおよびPCOインタリービングの両方に対して有効である。
LTO−4のSCO構造である同期コードワード・クワッド(synchronized codeword quad:SCQ)に基づいて、表2はC2コード設計の特定の構成と、最大ストライプ・エラー長およびデッド・トラック支持に関する特性とを示す。表2において、消去訂正マージンM=2と仮定されている。LTO−4のC2コード(表2の第1行を参照)に比べて、N>64を有するすべてのC2コードは3.7%改善されたフォーマット効率(format efficiency:FE)を有する。これらすべての場合において、その結果がCOインタリービング式(4)またはPCOインタリービング式(5)もしくは(7)を適用することが強調されるべきである。
表2
CWI−2に基づくSCO構造に対する特定のC2コード構成
Figure 2012514823
表3においては、T=16並列トラックおよびCWI−4に基づくSCO構造に対するC2コードの2つの実施形態に対して結果をまとめている。なお、長さ96のC2コードを有するスキームECC−1は、PCOインタリーバ(5)または(7)によっても実現できるし、表1において指定される代替的なPCOインタリーバを適用することによっても実現できる。その結果得られる3つのインタリーバは、同じMSELおよびMNDTを達成する。CWI−4の長さ[mm]はCWI−2の長さのおよそ2倍である。よって、たとえば20SCQの最大ストライプ・エラー長は、それぞれ表2および表3における10SCOに相当する。
表3
CWI−4に基づくSCO構造およびT=16トラックに対する、提案されるC2コード構成
Figure 2012514823
図14の流れ図は、前述のプロセスをまとめたものである。ホストからユーザ・データ・シンボルのストリームが受取られ、このストリームは少なくとも1つのデータ・セットを含む(ステップ1400)。各データ・セットは複数個Sの非符号化サブデータ・セットにセグメント化され、各サブデータ・セットはK行およびK列を有するアレイを含む(ステップ1402)。次いで各非符号化サブデータ・セットが符号化される(ステップ1404)。各非符号化サブデータ・セットの各行に対してN−KC1パリティ・バイトが生成され(ステップ1406)、行の最後に追加されることによって、長さNの符号化C1コードワードが形成される(ステップ1408)。加えて、各非符号化サブデータ・セットの各列に対してN−KC2パリティ・バイトが生成され(ステップ1410)、列の最後に追加されることによって、長さNの符号化C2コードワードが形成される(ステップ1412)。よって、NC1コードワードを有する符号化サブデータ・セットが生成される。
S非符号化サブデータ・セットがすべて符号化された後、符号化サブデータ・セットから複数個の(S×N)部分コードワード・オブジェクト(PCO)が形成され、各PCOはヘッダおよびC1コードワードを含む(ステップ1414)。次いで各PCOは、PCOのヘッダ内の情報に従って論理データ・トラック上にマップされ(ステップ1416)、各論理データ・トラック上で隣接するPCOはマージされてコードワード・オブジェクト(CO)を形成し、各COは少なくとも2つの隣接するPCOを含む(ステップ1418)。COは変調符号化され(ステップ1420)、VFOおよび同期パターンが加えられることによってT個の同期COが得られ、ここでTはデータ・テープ上の並行アクティブ・トラックの数である(ステップ1422)。次いでT個の同期COがデータ・テープに同時に書込まれる(ステップ1424)。
本明細書に記載されるPCOインタリービング・スキームは、同じC2コードおよびデータ・セット当り同数SのSDSに対して、COインタリービングと同じMSELおよびMNDT特性を与える。よって、どちらのスキームもストライプ・エラーおよびデッド・トラックに対して同じロバスト性を有する。PCOに基づくスキームの利点の1つは、再書込の場合に再書込されるオブジェクトがCOではなくPCOであるために、その細分性が小さくなることである。
完全に機能するデータ処理システムの状況において本発明を説明したが、本発明のプロセスは命令のコンピュータ読取可能媒体の形およびさまざまな形で配布されることが可能であり、配布を行うために実際に用いられる信号保有媒体の特定の種類に関わらず本発明が適用されることを通常の当業者は認めるであろうことに留意することは重要である。コンピュータ読取可能記憶媒体の例は、フレキシブル・ディスク、ハードディスク・ドライブ、RAMおよびCD−ROMなどの記録可能なタイプの媒体を含む。
本発明の記載は例示および説明の目的のために提供されるものであって、開示される形の発明に対して網羅的または限定的になることは意図されていない。通常の当業者には多くの修正形および変形が明らかになるだろう。実施形態は、本発明の原理、実際の適用を最もよく説明し、他の通常の当業者が、予期される特定の使用に対して好適であるようなさまざまな修正を伴うさまざまな実施形態に対して本発明を理解できるようにするために選択され説明されたものである。さらに、上記には方法およびシステムに関して記載したが、当該技術分野における要求は、マルチトラック・データ・テープ媒体にデータを書込むための命令を含有するコンピュータ・プログラム製品、またはマルチトラック・データ・テープ媒体にデータを書込むために計算システムにコンピュータ読取可能コードを組込むステップを含む、計算基盤を配置するための方法によって満たされてもよい。

Claims (35)

  1. マルチトラック・データ・テープにデータを書込むための方法であって、前記方法は、
    ユーザ・データ・シンボルのストリームを受取るステップであって、前記ストリームは少なくとも1つのデータ・セットを含む、ステップと、
    各データ・セットを複数個Sの非符号化サブデータ・セットにセグメント化するステップであって、各サブデータ・セットはK行およびK列を有するアレイを含む、ステップと、
    各非符号化サブデータ・セットに対して、
    サブデータ・セットの各行に対するN−KC1パリティ・バイトを生成し、前記C1パリティ・バイトを前記行の最後に追加することによって、長さNの符号化C1コードワードを形成するステップと、
    前記サブデータ・セットの各列に対するN−KC2パリティ・バイトを生成し、前記C2パリティ・バイトを前記列の最後に追加することによって、長さNの符号化C2コードワードを形成し、これによってNC1コードワードを有する符号化サブデータ・セットが生成されるステップと、
    前記S符号化サブデータ・セットから複数個の(S×N)部分コードワード・オブジェクト(PCO)を形成するステップであって、各PCOはヘッダおよびC1コードワードを含む、ステップと、
    各PCOを、前記PCOの前記ヘッダ内の情報に従って論理データ・トラック上にマップするステップと、
    各論理データ・トラック上で隣接するPCOをマージしてコードワード・オブジェクト(CO)を形成するステップであって、各COは少なくとも2つの隣接するPCOを含む、ステップと、
    前記COを変調符号化して同期パターンを加えることによってT個の同期COを得るステップであって、ここでTは前記データ・テープ上の並行アクティブ・トラックの数である、ステップと、
    T個の同期COを前記データ・テープに同時に書込むステップと
    を含む、方法。
  2. 各PCOをマップするステップは、インデックスm=CWI_numberを有する各PCOに、式t=mod(7floor(f(m)/S)+g(m),T)に基づく論理トラック番号tを割当てるステップを含み、ここでfloor(x)は実数xの整数部分を示し、mod(a,T)はTによる除算の剰余を示し、前記剰余は0,1,…,T−1の範囲である、請求項1に記載の方法。
  3. f(m)=mであり、g(m)=mである、請求項2に記載の方法。
  4. f(m)=mであり、g(m)=floor(m/2)である、請求項2に記載の方法。
  5. 前記テープの場所i=floor(m/T)にCWI_number=mを有するPCOを書込むステップをさらに含む、請求項2に記載の方法。
  6. 論理データ・トラック上に各PCOをマップするステップは、m=mod(i,2)+2Tfloor(i/2)+2mod(t−7mod(floor(i/2),T),T)によって特徴付けられ、ここでPCOセット・インデックスi=floor(m/T)である、請求項2に記載の方法。
  7. T=16、N=96、およびS=32であり、各PCOをマップするステップは、PCOをCWインタリーブ番号mからt=mod{2floor(m/2)+6floor(m/32)+mod[floor(m/16),2]+mod[floor(m/256),2]−2mod[floor(m/256),2]×mod[floor(m/16),2],16}に従うトラック番号にマップするステップをさらに含む、請求項1に記載の方法。
  8. 各PCOを論理データ・トラック上にマップするステップは、m=32floor(i/2)+mod(i,2)+2mod[5floor(i/2)+floor(t/2),8]+16mod[mod(t,2)+mod(floor(i/16),2),2]によって特徴付けられる、請求項7に記載の方法。
  9. データ記憶テープ・デバイスであって、前記データ記憶テープ・デバイスは、
    ホスト・インタフェースであって、該ホスト・インタフェースを通じてデータ・セットを含むユーザ・データ・シンボルのストリームが受取られる、ホスト・インタフェースと、
    前記データ・セットを複数個Sの非符号化サブデータ・セットにセグメント化するために動作可能なセグメント化モジュールであって、各サブデータ・セットはK行およびK列を有するアレイを含む、セグメント化モジュールと、
    サブデータ・セットの各行に対するN−KC1パリティ・バイトを生成し、前記C1パリティ・バイトを前記行の最後に追加して長さNの符号化C1コードワードを形成するために動作可能なC1エンコーダと、
    前記サブデータ・セットの各列に対するN−KC2パリティ・バイトを生成し、前記C2パリティ・バイトを前記列の最後に追加して長さNの符号化C2コードワードを形成するために動作可能なC2エンコーダであって、これによってNC1コードワードを有する符号化サブデータ・セットが生成される、C2エンコーダと、
    S個の符号化サブデータ・セットから、各々がヘッダおよびC1コードワードを含む複数個の(S×N)部分コードワード・オブジェクト(PCO)を形成するために動作可能な部分コードワード・オブジェクト(PCO)フォーマッタと、
    各PCOを、前記PCOの前記ヘッダ内の情報に従って論理データ・トラック上にマップするために動作可能なPCOインタリーバと、
    各論理データ・トラック上で隣接するPCOをマージしてCOにするために動作可能なコードワード・オブジェクト・フォーマッタであって、各COは少なくとも2つの隣接するPCOを含む、コードワード・オブジェクト・フォーマッタと、
    前記COを符号化して同期COにするために動作可能な変調エンコーダと、
    T個の同期COを前記テープに同時に書込むために動作可能な書込ヘッドを含む書込チャネルであって、ここでTはデータ記憶テープ上の並行アクティブ・トラックの数に等しい、書込チャネルと
    を含む、データ記憶テープ・デバイス。
  10. 前記PCOインタリーバは、インデックスm=CWI_numberを有する各PCOに、式t=mod(7floor(f(m)/S)+g(m),T)に基づく論理トラック番号tを割当てることによって、各PCOを論理データ・トラック上にマップするために動作可能であり、ここでfloor(x)は実数xの整数部分を示し、mod(a,T)はTによる除算の剰余を示し、前記剰余は0,1,…,T−1の範囲である、請求項9に記載のデータ記憶テープ・デバイス。
  11. f(m)=mであり、g(m)=mである、請求項10に記載のデータ記憶テープ・デバイス。
  12. f(m)=mであり、g(m)=floor(m/2)である、請求項10に記載のデータ記憶テープ・デバイス。
  13. 前記書込チャネルは、前記テープの場所i=floor(m/T)にCWI_number=mを有するPCOを書込むことによって、T個の同期COを前記テープに同時に書込む、請求項10に記載のデータ記憶テープ・デバイス。
  14. T=16、N=96、およびS=32であり、さらに前記PCOインタリーバは、PCOをCWインタリーブ番号mからt=mod{2floor(m/2)+6floor(m/32)+mod[floor(m/16),2]+mod[floor(m/256),2]−2mod[floor(m/256),2]×mod[floor(m/16),2],16}に従うトラック番号にマップすることによって各PCOをマップする、請求項9に記載のデータ記憶テープ・デバイス。
  15. 前記PCOインタリーバが各PCOを論理データ・トラック上にマップすることは、m=32floor(i/2)+mod(i,2)+2mod[5floor(i/2)+floor(t/2),8]+16mod[mod(t,2)+mod(floor(i/16),2),2]によって特徴付けられる、請求項14に記載のデータ記憶テープ・デバイス。
  16. プログラマブル・コンピュータとともに使用可能なコンピュータ読取可能媒体のコンピュータ・プログラム製品であって、前記コンピュータ・プログラム製品はマルチトラック・データ・テープにデータを書込むために組入れられたコンピュータ読取可能コードを有し、前記コンピュータ読取可能コードは、
    ユーザ・データ・シンボルのストリームを受取るための命令であって、前記ストリームは少なくとも1つのデータ・セットを含む、命令と、
    各データ・セットを複数個Sの非符号化サブデータ・セットにセグメント化するための命令であって、各サブデータ・セットはK行およびK列を有するアレイを含む、命令と、
    各非符号化サブデータ・セットに対して、
    サブデータ・セットの各行に対するN−KC1パリティ・バイトを生成し、前記C1パリティ・バイトを前記行の最後に追加することによって、長さNの符号化C1コードワードを形成するための命令と、
    前記サブデータ・セットの各列に対するN−KC2パリティ・バイトを生成し、前記C2パリティ・バイトを前記列の最後に追加することによって、長さNの符号化C2コードワードを形成するための命令であって、これによってNC1コードワードを有する符号化サブデータ・セットが生成される、命令と、
    前記S符号化サブデータ・セットから複数個の(S×N)部分コードワード・オブジェクト(PCO)を形成するための命令であって、各PCOはヘッダおよびC1コードワードを含む、命令と、
    各PCOを、前記PCOの前記ヘッダ内の情報に従って論理データ・トラック上にマップするための命令と、
    各論理データ・トラック上で隣接するPCOをマージしてコードワード・オブジェクト(CO)を形成するための命令であって、各COは少なくとも2つの隣接するPCOを含む、命令と、
    前記COを変調符号化して同期パターンを加えることによってT個の同期COを得るための命令であって、ここでTは前記データ・テープ上の並行アクティブ・トラックの数である、命令と、
    T個の同期COを前記データ・テープに同時に書込むための命令と
    を含む、コンピュータ・プログラム製品。
  17. 各PCOをマップするための前記命令は、インデックスm=CWI_numberを有する各PCOに、式t=mod(7floor(f(m)/S)+g(m),T)に基づく論理トラック番号tを割当てるための命令を含み、ここでfloor(x)は実数xの整数部分を示し、mod(a,T)はTによる除算の剰余を示し、前記剰余は0,1,…,T−1の範囲である、請求項16に記載のコンピュータ・プログラム製品。
  18. f(m)=mであり、g(m)=mである、請求項17に記載のコンピュータ・プログラム製品。
  19. f(m)=mであり、g(m)=floor(m/2)である、請求項17に記載のコンピュータ・プログラム製品。
  20. 前記テープの場所i=floor(m/T)にCWI_number=mを有するPCOを書込むための命令をさらに含む、請求項17に記載のコンピュータ・プログラム製品。
  21. 論理データ・トラック上に各PCOをマップすることは、m=mod(i,2)+2Tfloor(i/2)+2mod(t−7mod(floor(i/2),T),T)によって特徴付けられ、ここでPCOセット・インデックスi=floor(m/T)である、請求項17に記載のコンピュータ・プログラム製品。
  22. T=16、N=96、およびS=32であり、各PCOをマップするための前記命令は、PCOをCWインタリーブ番号mからt=mod{2floor(m/2)+6floor(m/32)+mod[floor(m/16),2]+mod[floor(m/256),2]−2mod[floor(m/256),2]×mod[floor(m/16),2],16}に従うトラック番号にマップするための命令をさらに含む、請求項16に記載のコンピュータ・プログラム製品。
  23. 各PCOを論理データ・トラック上にマップすることは、m=32floor(i/2)+mod(i,2)+2mod[5floor(i/2)+floor(t/2),8]+16mod[mod(t,2)+mod(floor(i/16),2),2]によって特徴付けられる、請求項22に記載のコンピュータ・プログラム製品。
  24. データ・セットを含むユーザ・データ・シンボルのストリームを符号化するための装置であって、
    前記データ・セットを複数個Sの非符号化サブデータ・セットにセグメント化するために動作可能なセグメント化モジュールであって、各サブデータ・セットはK行およびK列を有するアレイを含む、セグメント化モジュールと、
    サブデータ・セットの各行に対するN−KC1パリティ・バイトを生成し、前記C1パリティ・バイトを前記行の最後に追加して長さNの符号化C1コードワードを形成するために動作可能なC1エンコーダと、
    前記サブデータ・セットの各列に対するN−KC2パリティ・バイトを生成し、前記C2パリティ・バイトを前記列の最後に追加して長さNの符号化C2コードワードを形成するために動作可能なC2エンコーダであって、これによってNC1コードワードを有する符号化サブデータ・セットが生成される、C2エンコーダと、
    各PCOを、前記PCOのヘッダ内の情報に従って論理データ・トラック上にマップするために動作可能な部分コードワード・オブジェクト・インタリーバと、
    各論理データ・トラック上で隣接するPCOをマージしてCOにするために動作可能なコードワード・オブジェクト・フォーマッタであって、各COは少なくとも2つの隣接するPCOを含む、コードワード・オブジェクト・フォーマッタと、
    前記COを符号化して同期COにするために動作可能な変調エンコーダと
    を含む、装置。
  25. 前記PCOインタリーバは、インデックスm=CWI_numberを有する各PCOに、式t=mod(7floor(f(m)/S)+g(m),T)に基づく論理トラック番号tを割当てることによって、各PCOを論理データ・トラック上にマップするために動作可能であり、ここでfloor(x)は実数xの整数部分を示し、mod(a,T)はTによる除算の剰余を示し、前記剰余は0,1,…,T−1の範囲である、請求項24に記載のデータ記憶テープ・デバイス。
  26. f(m)=mであり、g(m)=mである、請求項25に記載のデータ記憶テープ・デバイス。
  27. f(m)=mであり、g(m)=floor(m/2)である、請求項25に記載のデータ記憶テープ・デバイス。
  28. 書込チャネルは、前記テープの場所i=floor(m/T)にCWI_number=mを有するPCOを書込むことによって、T個の同期COを前記テープに同時に書込む、請求項25に記載のデータ記憶テープ・デバイス。
  29. T=16、N=96、およびS=32であり、さらに前記PCOインタリーバは、PCOをCWインタリーブ番号mからt=mod{2floor(m/2)+6floor(m/32)+mod[floor(m/16),2]+mod[floor(m/256),2]−2mod[floor(m/256),2]×mod[floor(m/16),2],16}に従うトラック番号にマップすることによって各PCOをマップする、請求項24に記載のデータ記憶テープ・デバイス。
  30. 前記PCOインタリーバが各PCOを論理データ・トラック上にマップすることは、m=32floor(i/2)+mod(i,2)+2mod[5floor(i/2)+floor(t/2),8]+16mod[mod(t,2)+mod(floor(i/16),2),2]によって特徴付けられる、請求項29に記載のデータ記憶テープ・デバイス。
  31. 計算システムにコンピュータ読取可能コードを組込むステップを含む、計算基盤を配置するための方法であって、前記コードは前記計算システムと組合わせて、
    ユーザ・データ・シンボルのストリームを受取るステップであって、前記ストリームは少なくとも1つのデータ・セットを含む、ステップと、
    各データ・セットを複数個Sの非符号化サブデータ・セットにセグメント化するステップであって、各サブデータ・セットはK行およびK列を有するアレイを含む、ステップと、
    各非符号化サブデータ・セットに対して、
    サブデータ・セットの各行に対するN−KC1パリティ・バイトを生成し、前記C1パリティ・バイトを前記行の最後に追加することによって、長さNの符号化C1コードワードを形成するステップと、
    前記サブデータ・セットの各列に対するN−KC2パリティ・バイトを生成し、前記C2パリティ・バイトを前記列の最後に追加することによって、長さNの符号化C2コードワードを形成し、これによってNC1コードワードを有する符号化サブデータ・セットが生成される、ステップと、
    前記S符号化サブデータ・セットから複数個の(S×N)部分コードワード・オブジェクト(PCO)を形成するステップであって、各PCOはヘッダおよびC1コードワードを含む、ステップと、
    各PCOを、前記PCOの前記ヘッダ内の情報に従って論理データ・トラック上にマップするステップと、
    各論理データ・トラック上で隣接するPCOをマージしてコードワード・オブジェクト(CO)を形成するステップであって、各COは少なくとも2つの隣接するPCOを含む、ステップと、
    前記COを変調符号化して同期パターンを加えることによってT個の同期COを得るステップであって、ここでTは前記データ・テープ上の並行アクティブ・トラックの数である、ステップと、
    T個の同期COを前記データ・テープに同時に書込むステップと
    を行い得る、方法。
  32. 各PCOをマップするステップは、インデックスm=CWI_numberを有する各PCOに、式t=mod(7floor(f(m)/S)+g(m),T)に基づく論理トラック番号tを割当てるステップを含み、ここでfloor(x)は実数xの整数部分を示し、mod(a,T)はTによる除算の剰余を示し、前記剰余は0,1,…,T−1の範囲である、請求項31に記載の方法。
  33. 前記テープの場所i=floor(m/T)にCWI_number=mを有するPCOを書込むステップをさらに含む、請求項32に記載の方法。
  34. 論理データ・トラック上に各PCOをマップするステップは、m=mod(i,2)+2Tfloor(i/2)+2mod(t−7mod(floor(i/2),T),T)によって特徴付けられ、ここでPCOセット・インデックスi=floor(m/T)である、請求項32に記載の方法。
  35. T=16、N=96、およびS=32であり、各PCOをマップするステップは、PCOをCWインタリーブ番号mからt=mod{2floor(m/2)+6floor(m/32)+mod[floor(m/16),2]+mod[floor(m/256),2]−2mod[floor(m/256),2]×mod[floor(m/16),2],16}に従うトラック番号にマップするステップをさらに含む、請求項31に記載の方法。
JP2011544819A 2009-01-09 2009-11-25 磁気テープへのマルチトラック記録のための再書込効率の高いecc/インタリービング Active JP5341207B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/351,747 2009-01-09
US12/351,747 US7876516B2 (en) 2009-01-09 2009-01-09 Rewrite-efficient ECC/interleaving for multi-track recording on magnetic tape
PCT/EP2009/065849 WO2010088977A1 (en) 2009-01-09 2009-11-25 Rewrite-efficient ecc/interleaving for multi-track recording on magnetic tape

Publications (2)

Publication Number Publication Date
JP2012514823A true JP2012514823A (ja) 2012-06-28
JP5341207B2 JP5341207B2 (ja) 2013-11-13

Family

ID=41716259

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011544819A Active JP5341207B2 (ja) 2009-01-09 2009-11-25 磁気テープへのマルチトラック記録のための再書込効率の高いecc/インタリービング

Country Status (6)

Country Link
US (1) US7876516B2 (ja)
EP (1) EP2327075A1 (ja)
JP (1) JP5341207B2 (ja)
KR (1) KR101369621B1 (ja)
CN (1) CN102272841B (ja)
WO (1) WO2010088977A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018097908A (ja) * 2016-12-15 2018-06-21 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation テープ・ドライブ、方法、およびプログラム
JP2021508138A (ja) * 2017-12-19 2021-02-25 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 順次記憶媒体へのデータ・オブジェクト書き換えのためのシステム、方法およびコンピュータ・プログラム

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8196019B2 (en) * 2007-01-30 2012-06-05 International Business Machines Corporation Error correction in codeword pair headers in a data storage tape format
US8259405B2 (en) * 2009-01-09 2012-09-04 International Business Machines Corporation Rewriting codeword objects to magnetic data tape upon detection of an error
US8139304B2 (en) 2010-08-03 2012-03-20 International Business Machines Corporation Tape layout design for reliable ECC decoding
US8405925B2 (en) * 2011-06-01 2013-03-26 International Business Machines Corporation Track-dependent data randomization mitigating false VFO detection
US9178534B2 (en) 2012-05-29 2015-11-03 International Business Machines Corporation Methods for partial reverse concatenation for data storage devices using composite codes
US9558782B2 (en) 2012-05-29 2017-01-31 International Business Machines Corporation Partial reverse concatenation for data storage devices using composite codes
US9190076B2 (en) * 2012-05-29 2015-11-17 International Business Machines Corporation Data format using an efficient reverse concatenated modulation code for magnetic tape recording
US8910012B2 (en) * 2012-10-16 2014-12-09 International Business Machines Corporation Block-interleaved and error correction code (ECC)-encoded sub data set (SDS) format
CN103809147A (zh) * 2012-11-12 2014-05-21 苏州工业园区新宏博通讯科技有限公司 一种交流电表故障自诊断方法
US8869011B2 (en) * 2013-01-03 2014-10-21 International Business Machines Corporation Unequal error protection scheme for headerized sub data sets
US8929014B2 (en) 2013-06-04 2015-01-06 International Business Machines Corporation Tape header protection scheme for use in a tape storage subsystem
US9007709B2 (en) 2013-07-15 2015-04-14 International Business Machines Corporation Optimum tape layout selection for improved error correction capability
US9281009B1 (en) * 2014-12-18 2016-03-08 Western Digital Technologies, Inc. Data storage device employing variable size interleave written track segments
US9311960B1 (en) * 2015-03-31 2016-04-12 International Business Machines Corporation Efficient multichannel data format using variable-length headers
US10014025B1 (en) 2017-07-20 2018-07-03 Quantum Corporation System and method for tape layout optimization
US10599517B2 (en) * 2017-11-29 2020-03-24 Taiwan Semiconductor Manufacturing Co., Ltd. Memory device
US10339971B1 (en) * 2017-12-19 2019-07-02 International Business Machines Corporation Sequential data storage with rewrite using dead-track detection
US10691376B2 (en) 2018-08-29 2020-06-23 International Business Machines Corporation Prioritized sourcing for efficient rewriting
US10884653B2 (en) 2018-10-22 2021-01-05 International Business Machines Corporation Implementing a mapping between data at a storage drive and data blocks at a host
US10901825B2 (en) 2018-10-22 2021-01-26 International Business Machines Corporation Implementing a storage drive utilizing a streaming mode
US10990298B2 (en) 2018-10-22 2021-04-27 International Business Machines Corporation Implementing data requests with quality of service information

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006148366A (ja) * 2004-11-17 2006-06-08 Sony Corp データ処理方法、データ記録装置及びデータ伝送装置
WO2008116725A1 (en) * 2007-03-23 2008-10-02 International Business Machines Corporation Reverse concatenation for product codes

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5857781B2 (ja) * 1978-01-17 1983-12-21 三菱電機株式会社 符号化復号化方式
EP0957484B1 (en) * 1998-05-12 2005-10-05 Hewlett-Packard Company, A Delaware Corporation Read while write method in data storage device
EP1850342B1 (en) 2004-12-28 2012-12-05 International Business Machines Corporation INFORMATION RECORDING DEVICE and DATA-FLOW CONTROLLER FOR THE DEVICE
KR20080033433A (ko) * 2005-07-29 2008-04-16 엘지전자 주식회사 데이터 재생을 위한 방법 그리고 장치, 기록 매체, 그리고데이터 기록을 위한 방법 그리고 장치
US8005166B2 (en) * 2006-11-14 2011-08-23 Samsung Electronics Co., Ltd. System for digital television broadcasting using modified 2/3 trellis coding
US7378994B1 (en) * 2007-01-08 2008-05-27 Mediatek, Inc. EFM/EFM+ encoder and method thereof
US7873894B2 (en) * 2007-03-23 2011-01-18 International Business Machines Corporation Reverse concatenation for product codes
US7877662B2 (en) * 2007-03-23 2011-01-25 International Business Machines Corporation Reverse concatenation for product codes
US8065594B2 (en) * 2007-06-29 2011-11-22 Limberg Allen Leroy 8VSB DTV signals with PCCC and subsequent trellis coding
US8259405B2 (en) * 2009-01-09 2012-09-04 International Business Machines Corporation Rewriting codeword objects to magnetic data tape upon detection of an error
US8276045B2 (en) * 2009-01-09 2012-09-25 International Business Machines Corporation ECC interleaving for multi-track recording on magnetic tape

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006148366A (ja) * 2004-11-17 2006-06-08 Sony Corp データ処理方法、データ記録装置及びデータ伝送装置
WO2008116725A1 (en) * 2007-03-23 2008-10-02 International Business Machines Corporation Reverse concatenation for product codes
JP2010521764A (ja) * 2007-03-23 2010-06-24 インターナショナル・ビジネス・マシーンズ・コーポレーション 逆連結符号化システム、方法、及びコンピュータ・プログラム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018097908A (ja) * 2016-12-15 2018-06-21 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation テープ・ドライブ、方法、およびプログラム
JP7062423B2 (ja) 2016-12-15 2022-05-06 インターナショナル・ビジネス・マシーンズ・コーポレーション テープ・ドライブ、方法、およびプログラム
JP2021508138A (ja) * 2017-12-19 2021-02-25 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 順次記憶媒体へのデータ・オブジェクト書き換えのためのシステム、方法およびコンピュータ・プログラム

Also Published As

Publication number Publication date
JP5341207B2 (ja) 2013-11-13
KR101369621B1 (ko) 2014-03-05
WO2010088977A1 (en) 2010-08-12
CN102272841A (zh) 2011-12-07
US20100177422A1 (en) 2010-07-15
US7876516B2 (en) 2011-01-25
EP2327075A1 (en) 2011-06-01
KR20110112821A (ko) 2011-10-13
CN102272841B (zh) 2014-11-12

Similar Documents

Publication Publication Date Title
JP5341207B2 (ja) 磁気テープへのマルチトラック記録のための再書込効率の高いecc/インタリービング
US8276045B2 (en) ECC interleaving for multi-track recording on magnetic tape
US7877662B2 (en) Reverse concatenation for product codes
JP4397456B2 (ja) データ記憶装置における書込み時読取り方法
US6891690B2 (en) On-drive integrated sector format raid error correction code system and method
US8144414B2 (en) Data interleaving in tape drives
US20030147167A1 (en) Multiple level (ML), integrated sector format (ISF), error correction code (ECC) encoding and decoding processes for data storage or communication devices and systems
KR101507639B1 (ko) 에러 검출시 마그네틱 데이터 테이프로의 코드워드 오브젝트 재기록
US7873894B2 (en) Reverse concatenation for product codes
US9612905B2 (en) Encoding and writing of data on multitrack tape
KR101120780B1 (ko) 기록 쓰기 경로를 위한 리버스 연결 인코딩 시스템과 매체 상에 기록하기 위한 데이터를 인코딩하는 방법과 컴퓨터 판독가능한 기록 매체
JP2007299393A (ja) 回転する記憶媒体の複数の層にデータを読み書きする方法、プログラム及びデータ記憶装置
JP2010218631A (ja) 誤り訂正回路及びデータ記憶装置
JP5142045B2 (ja) ディスクアレイ装置
JPS60217568A (ja) 誤り訂正方式
JPS63298776A (ja) エラ−訂正処理方式
WO2004084416A1 (en) Method of storing information on an optical disc
JP2009064554A (ja) エラー訂正コードを含む磁気媒体上へのデータの格納のための方法及び装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120612

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130402

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130620

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130807

R150 Certificate of patent or registration of utility model

Ref document number: 5341207

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150