JP2614415B2 - データ記録読取方法および装置 - Google Patents

データ記録読取方法および装置

Info

Publication number
JP2614415B2
JP2614415B2 JP6130055A JP13005594A JP2614415B2 JP 2614415 B2 JP2614415 B2 JP 2614415B2 JP 6130055 A JP6130055 A JP 6130055A JP 13005594 A JP13005594 A JP 13005594A JP 2614415 B2 JP2614415 B2 JP 2614415B2
Authority
JP
Japan
Prior art keywords
data
array
rows
bytes
row
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.)
Expired - Lifetime
Application number
JP6130055A
Other languages
English (en)
Other versions
JPH0757401A (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 JPH0757401A publication Critical patent/JPH0757401A/ja
Application granted granted Critical
Publication of JP2614415B2 publication Critical patent/JP2614415B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1076Parity data used in redundant arrays of independent storages, e.g. in RAID systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • 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/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B20/1866Error detection or correction; Testing, e.g. of drop-outs by interleaving
    • 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
    • H03M13/1515Reed-Solomon codes
    • 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/29Coding, 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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • 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/29Coding, 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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2903Methods and arrangements specifically for encoding, e.g. parallel encoding of a plurality of constituent codes
    • 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/29Coding, 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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2906Coding, 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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using block codes
    • H03M13/2909Product codes
    • 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/29Coding, 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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2906Coding, 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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using block codes
    • H03M13/2918Coding, 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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using block codes with error correction codes in three or more dimensions, e.g. 3-dimensional product code where the bits are arranged in a cube

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Probability & Statistics with Applications (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Signal Processing (AREA)
  • Algebra (AREA)
  • Pure & Applied Mathematics (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、誤り検出および訂正シ
ステムに関し、さらに詳しくは、データ交換媒体として
使用される磁気テープのような複数トラック媒体を使用
するシステムに関する。
【0002】
【従来の技術】磁気テープ媒体は、長年の間、データ記
憶媒体すなわち記録媒体として使用されてきた。特にデ
ータ交換の分野でそうであった。初期においては、この
ような磁気テープ媒体は少数の(7−9本)記録トラッ
クまたはデータ・トラックを有していた。トラック数が
そのように少なかったにもかかわらず、磁気テープ媒体
および関連の磁気テープ装置は、エラーを発生させるい
くつかの特性を示していた。そのような磁気テープ媒体
にデータを記憶したり検索したりする間に発生する誤り
に対処し訂正するために、誤り検出訂正システムが広く
使用されてきた。また長年にわたり、面記録密度の増加
が要求されてきた。この要求を満足させるために、誤り
検出訂正システムが成功裏に使用されてきた。このよう
な誤り検出訂正システムは多くの制約条件をもってい
た。すなわち、誤りの検出および訂正は「実時間」で行
われねばならないこと、すなわち最小限の遅れで誤り検
出および訂正データ処理を行わなければならないことで
ある。
【0003】
【発明が解決しようとする課題】現在、1/2インチ幅
の磁気テープに数百本、例えば128本のトラックを設
けることが望まれている。同時に、長手方向の密度も実
質的にミリメートル当たり2500以上の磁束変化まで
に増加している。このような長手方向およびトラックの
高密度によって感度が高まり、その結果多くのデータ・
エラーを引き起こす。媒体表面摂動、ヘッドと媒体の関
係、およびその他の事象が相互に作用し、記録や再生に
誤りを生じやすい。磁気テープ媒体上で各データ・レコ
ード、ブロック、ファイルなどからのデータ記録を分散
させることにより、このような誤り発生条件を緩和させ
ることがすでに知られている。また、データの高速な記
録と再生を実現するために、そのような分散を最小限の
区域で行うことが望まれる。本発明によれば、そのよう
な分散を最小限の区域で行うことができ、さらに、誤り
検出訂正データ・フォーマットに従ってデータを分散す
ることによって、高度な信頼性の記録と再生が得られ
る。そのような分散は、基本的なデータ・フォーマット
に変更を加えなくても、種々のトラック密度に対応した
効果が得られるようになされる。したがって、高品質の
データ記録と再生を得るためには、データ・フォーマッ
トが重要な役割を果たす。
【0004】磁気テープ媒体で誤りを発生させる徴候
は、信号対雑音比(SNR)の変化によって知ることが
できる。SNRが低くなればなるほど、データ・エラー
の発生率が高くなる。従って、低いSNRに対処できる
ような誤り検出訂正(ECC)システムを使用すること
が望ましい。
【0005】すでに知られた誤り検出訂正アルゴリズム
は、いわゆるBCH符号である。BCH符号の単純化さ
れたサブセットとして、周知のリードソロモン(Ree
d−Solomon)符号がある。磁気テープ媒体への
データ記録と再生には、多くの種類の誤り検出および訂
正の符号化が使用されてきた。すべてのECCシステム
の誤り訂正機能を高めるために、いわゆるエラー・ポイ
ンタが使用されてきた。いわゆる「デッド・トラック」
の読取り回路が読取り信号と同期しないため特定のトラ
ックから有効なデータが感知されていないという事実を
知らせるために、いわゆる「デッド・トラッキング」
(dead tracking)が磁気テープ媒体で使
用されてきた。上記のような事実は、ECCに対してデ
ッド・トラックからのすべての信号が誤りであることを
示すポインタとなる。誤りを指し示すために、他のエラ
ー・ポインタも長年にわたって使用されてきた。もちろ
ん、エラー・ポインタのいくつかはECCによって生成
することができる。しかし、ECCによって生成される
ポインタの使用を超えて誤り訂正を拡張するためには、
外部のエラー・ポインタが必要となる。
【0006】リードソロモン符号は、ディスク記録媒体
においていわゆる内部・外部符号の形式で使用されてき
た。外部符号は、比較的強力な誤り検出訂正機能を提供
するのに充分な冗長度をもっている。内部符号の冗長度
と能力は外部符号よりは小さい。内部符号は、外部符号
によって使用されるエラー・ポインタの源として使用す
ることができる。内部符号も外部符号もリードソロモン
符号に基づいた符号にすることができる。
【0007】
【課題を解決するための手段】本発明は、矩形(データ
・バイトの列と行)のECC符号/データ・ブロックの
行に存在するデータを、異なった量だけ相対的に変位さ
せることによって誤りの制御を高めるものである。その
ような変位は、マルチトラック記録媒体において、各デ
ータ記憶域(データ・トラックの一部分のような)に存
在する最初のデータ行(各行には複数のデータ・バイト
がある)が、隣接したレコード・トラックのデータ行か
ら、所定のECC配列位置だけ回転されたデータ行から
始まるようになっている。誤り検出および訂正のための
ECC冗長度(外部符号)は、行に直交した列に配置さ
れる。実施例において、複数のデータ行が複数の集合の
中の1つにある。データのそれぞれの集合は、アドレス
可能区域(トラック部分)に記録される。異なるアドレ
ス可能区域に記憶される各集合の中にある行の論理位置
は回転されている。その回転は、各集合の中の行のそれ
ぞれのグループにおけるデータ行を折返し回転(シフ
ト)することによってなされるので、物理的/論理的に
隣接したアドレス可能データ記憶域(トラック)で多様
なデータ変位が得られる。
【0008】第2の誤り符号(内部符号)が、データ・
バイトの行のそれぞれの1つに含まれるデータ・エラー
を検出する。それぞれの行は、トラックの1つの中に完
全に記憶されている。第3の誤り符号(ECC符号)
が、それぞれのトラックに記憶された所定数のデータ行
(配列行と呼ばれる)に適用される。このような第3の
ECC符号は、トラックのそれぞれの1つに記憶されて
いるデータ・バイトの各配列行と第1のECC符号冗長
度のデ−タ・エラーを検出(場合によっては訂正)す
る。また、この第3のECC検出によって、内部符号お
よび外部符号の冗長度に存在する誤りが検出され訂正さ
れる。
【0009】本発明の実施例において、記録されようと
しているデータ・バイトの配列は、3次元の論理配列と
して配置される。この3次元の配列は、単一面すなわち
X−YのRAM(ランダム・アクセス・メモリ)に記憶
されてよい。データ・バイトは複数の論理的に整列され
たデータ平面に配置され、各データ平面は1ブロックの
データ(今後、ブロックと呼ぶ)を含んでいる。各ブロ
ックは、行と列に配置されたデータ・バイトを含む矩形
配列である。行はまたブロック行とも呼ばれる。各ブロ
ックの中で同じ相対的論理位置をもっているブロック行
は、配列行を構成する。
【0010】ブロックの中のそれぞれのデータ列で第1
のECC冗長度を生成するために、外部ECC符号がそ
れぞれの列へ別々に適用される。次に、データ・バイト
および外部ECC符号冗長バイトで構成される生成配列
の全体が複数の集合に分割される。それぞれの集合は複
数のブロック行より成り、それらのブロック行はデータ
/第1冗長バイトで構成されている1つまたはそれ以上
の配列行に含まれるようにされる。すなわち、最初と2
番目の配列行が1つの集合を構成するようにされてよ
い。各集合におけるデータ・バイトのブロック行は、そ
れぞれの配列行の中で折り返して回転される。ブロック
行の回転は、1つの集合の中のすべての配列行で同じで
ある(たとえば、最初の集合のブロック行は回転され
ず、2番目の集合のブロック行は1行だけ回転され
る)。したがって、各集合の中のデータ・バイトのブロ
ック行は、それぞれの元の列位置から、集合が記憶され
ようとしているアドレス可能データ記憶域(トラック)
によって決まる、それぞれの異なる回転数だけ変位され
ている。次に、生成配列を受け取って記憶するトラック
の数に基づいて、データ・バイトを含む1つまたはそれ
以上の集合がトラックのそれぞれの1つに記録される。
【0011】上記に述べたブロック行回転の後で、第2
の内部ECC符号(データ・エラーを検出するが訂正は
しない)が、すべてのブロックの中のデータ・バイトの
各ブロック行に別々に適用される。その結果、それぞれ
の行に第2のECC冗長度が生じ、第2のECC冗長バ
イトの論理的列が付け加えられる。第2のECC符号
は、ブロック行のエラーを検出してそのブロック行への
エラー・ポインタを作成するために使用される。
【0012】それぞれの配列行に対して各トラックの中
で第3の冗長度を生成するために、回転と集合選択の後
で、第3のECCがトラック書込み回路の中のデータに
適用される。この第3のECCは、集合の中のそれぞれ
の配列行部分へのエラー・ポインタを作成し訂正するた
めに使用される。
【0013】記録媒体からデータを再生する場合、最初
に、第3のECCがトラックごとに適用されて、読み取
られた配列行の中の誤りが検出され、そのいくつかが訂
正される。 次に、第2のECCがデータ・バイトの各
ブロック行に対するエラー・ポインタを生成する。読み
出されたデータ・バイトを生成配列の中の元の位置に戻
し、バッファの中に再生配列を生成するために、データ
・バイトの集合がインターリーブを解除され、また回転
を解除される。エラー・ポインタは行と集合に関連ずけ
られてバッファに入れられる。最後に、各列のエラー・
バイトを指し示すため、バッファの中のエラー・ポイン
タが使用され、外部ECCがデータ・バイトの各列に適
用されて、誤りのないデータが作成される。
【0014】
【実施例】添付の図面において、同じ番号は同じ部品お
よび構造機構を示す。1つまたはそれ以上のホスト・プ
ロセッサ10が、周辺制御装置11および複数の1/2
インチ高性能磁気テープ装置12で構成されているデー
タ記憶サブシステムに接続されている。各磁気テープ装
置12は、書込み(記録)および読取り(再生)動作に
使用される磁気テープ13を格納したテープ・カートリ
ッジ(図示せず)を装着することができる。各磁気テー
プ装置12には、マルチトラック・マルチギャップのヘ
ッド15(変換アセンブリ)がある。ヘッド15は米国
特許第5,161,299号に示されているように組み
立てることができる。この特許は、堆積されたギャッ
プ、および走査される各トラック毎に1つの書込みギャ
ップと1つの読取りギャップを持っているギャップ配列
を示している。ヘッドとテープが相対的に動くどちらの
方向にも書き込むことができるように、ギャップの配置
は互い違いになっている。各書込みギャップおよび読取
りギャップは、磁気テープ13の上に示されているトラ
ック19のような各々のトラック(すべてのトラックが
示されているわけではない)を同時に走査する。同時に
データを受け取るトラックの数は、実施例では4本から
32本までである。テープ上に存在するトラックの数は
32本から128本またはそれ以上あってもよい。32
トラックのテープでは、4本のトラックが、記録の場合
はデータを同時に受取り、読取りの場合はデータを同時
に送出する。高能率記録システムでは、トラックの数が
多くなればなるほど、同時にデータを受取りかつ送出す
るトラックの数は多くなる。数字16、17,18は、
それぞれ図2で示す後述の生成配列の1つから記録され
たデータの長手方向の境界を示す。磁気テープ13に
は、ヘッド15の読み書きギャップの対よりも多いトラ
ック19があってもよい。その場合、ヘッド15は、ト
ラックの異なったグループにアクセスするために、磁気
テープ13を横断して動く。トラックの各グループは、
相対的な磁気テープの動作方向で、読み書きギャップ対
の数と等しいトラックを有している。
【0015】RAM(ランダム・アクセス・メモリ)2
0は、図2に関連して後で詳しく述べるが、磁気テープ
13に書き込まれるデータを受け取って記憶する。読取
り動作中に、RAM20は、磁気テープ13から正しく
読み取ったデータを記憶する。データが磁気テープ13
に書き込まれる場合を考えると、データがRAM20に
記憶されている間に、ECC−1回路21は、それぞれ
の列に存在するデータ・バイトのために列方向誤り検出
および訂正冗長度を生成し、後で説明するように、この
冗長度をデータの列と共に記憶する。RAM20に記憶
されたデータは、後で述べるように、データ・バイトを
再配置するために回転およびインターリーブ回路(R
I)23へ移動される。回転かつインターリーブされた
配列データは、バンク1 23−1およびバンク2 2
3−2へ交互に記憶されてよい。次に、記録されようと
しているデータは、生成された配列の中の各データ行に
ついて誤り検出冗長度を生成するために、ECC−2回
路22を通過する。データをそれぞれのトラックへ書込
むため、各データ行がトラック書込み回路24を通され
る際に、ECC−2回路22が、生成された冗長度を各
データ行へ付け加える。書き込まれる各トラック毎に1
つのトラック書込み回路がある。
【0016】本発明の1つの態様に従って、回転および
インターリーブ回路(RI)23は、4、8、16また
は32本のトラック19へ同時に書き込むようにデータ
配列を操作する。同様に、適切なヘッド・アセンブリが
設けられていれば、後述するトラック読取り回路が、
4、8、16、または32本のトラック19のいずれか
に記録されたデータを磁気テープ13から再生すること
ができる。
【0017】トラック書込み回路24はそれぞれECC
−3回路25と連携し、(1つのトラック書込み回路2
4に1つのECC−3回路25が対応している)、後に
説明するように、トラックに記録されるデータ・バイト
の各配列行に、第3のECC冗長度を付け加える。この
冗長度は、記録された各配列行の誤り検出および訂正を
可能にする。データの書込みには、磁気テープ13上の
部分16−17、17−18などに書き込むために、1
つまたはそれ以上のデータ生成配列を使用してよい。磁
気テープ13に書込まれる各物理データ・ブロックは、
後で説明するように、生成されたデータECC冗長度配
列の整数個を含んでいる。
【0018】磁気テープ装置12は磁気テープ13から
ブロック(16−17)の中のデータを読み取る。1セ
ットのトラック読取り回路30が、読み取っている磁気
テープ装置12から読取り信号を受け取る。トラック読
取り回路30は、既知の方法でデータを検出する。複数
のトラック読取り回路30の各々には、1つのECC−
3誤り検出回路31が接続される。ECC−3誤り検出
回路は、それぞれのデータ集合の中の読み取られた配列
行の1つに存在するデータ・エラーを検出し訂正する。
ECC−3誤り検出回路がそれぞれの配列行のデータ・
エラーを検出してもそれを訂正しない場合、適切なポイ
ンタ信号がポインタ回路97へ送られる。
【0019】ECC−3誤り検出回路のデータ訂正に続
いて、各トラック読取り回路30はECC−2誤り検出
回路と連携して、各ブロック行のデータについてエラー
・バイトを検出する。トラック読取り回路30は相互に
独立して動作し、既知のように、各トラック読取り回路
30の小部分が、読み取られているトラックに従属した
クロック速度および位相で動作する。
【0020】トラック読取り回路30の各々は、それぞ
れの検出したデータ集合からのデータを、回転解除およ
びインターリーブ解除回路(DI)33へ送る。実施例
では、データ転送は一時に1データ・バイトで行われ
る。回転解除およびインターリーブ解除回路(DI)3
3において、バンク・メモリ1および2 34−35用
の入力アドレシング回路は、種々の読取り回路のために
アドレス・シーケンスを使用する。その回路は、データ
がバンク・メモリ1および2 34−35へ記憶される
につれて、データの回転解除およびインターリーブ解除
を行い、図2に示された元のデータECC冗長度配列の
複写配列である読取り(再生)データ配列を生成する。
連続した読取り配列の間のスキュー補正は、バンク・メ
モリ1 34またはバンク・メモリ2 35のいずれか
の適切な記憶域にデータを記憶することによって達成さ
れる。回転解除およびインターリーブ解除回路(DI)
33は、トラック読取り回路と一対一で連携している。
また、回転解除およびインターリーブ解除回路(DI)
33は、後で説明するように、データの転換解除を行
う。1つのバンク・メモリ、たとえばバンク・メモリ1
にデータを入れる場合、トラック読取り回路のいくつか
が、バンク・メモリ1の他のトラック読取り回路より前
にデータの読取りを終了する可能性がある。これがデー
タ読取りスキューである。この時、スキュー補正の動作
として、早く終了したトラック読取り回路は第2の読取
り配列からデータ・バイトをバンク・メモリ2へ送り始
める。すべてのトラック読取り回路30がバンク・メモ
リ1へのデータ送信を終了すると、直ちにバンク・メモ
リ1はいっぱいとなり、ECC−1誤り検出回路36
(外部符号回路)による誤り検出および訂正の準備が完
了する。
【0021】間違った記録符号のワード、クロック・エ
ラーなどによりトラック読取り回路30で生成されたエ
ラー・ポインタ、ECC−2誤り検出回路およびECC
−3誤り検出回路で生成されたエラー・ポインタは、読
取り配列とアドレス的に関連している補助バッファに記
憶されるように送られ、それによってECC−1誤り検
出回路は、各読取り配列のエラー・バイトを訂正するた
めに、読取り回路によって生成されたエラー・ポインタ
にアクセスすることができる。
【0022】ECC−1誤り検出回路36は、読み取ら
れた再生データ配列のデータ・エラーを検出し訂正す
る。バッファに入れられたエラー・ポインタは、既知の
ように、誤り訂正の補助として使用される。訂正された
データは、データを要求しているホスト・プロセッサ1
0へ転送するために、RAMへ送られる。周辺制御装置
11の中にある他の回路39は、そのような周辺制御装
置の中に通常存在する他のすべての回路(たとえば、ホ
スト・プロセッサ接続回路、タイミング回路、種々の制
御回路など)を表している。
【0023】図2は、データ・バイトおよびECC冗長
バイトから成る1つの生成配列45を示す。これらの配
列の1つは、1つの単位として、4、8、または16本
の並行トラックのいずれかへ記録される。32本のトラ
ックへ並行して記録される場合、後で説明するように、
2つの生成配列45がインターリーブされる。本発明の
実施には、もっと多くの並行トラックを使用することが
できる。生成配列45は8つのデータ・ブロックA−H
から成る。データ・ブロックA−Hは、それぞれRAM
20の対応する部分に配置され、次のようにして別々に
アドレスすることができる。すなわち、各データ・ブロ
ックには、複数のブロック・データ行R1−R32と複
数のデータ列C1−C32がある。列C33は、後に説
明するように、ECC−2誤り検出(EDC)冗長バイ
トを表わすための仮想の列である。列と行のそれぞれの
交差点は1つのデータ・バイトを表す。したがって、各
ブロック行には32個のデータ・バイトがあり、各列に
は32個のデータ・バイトがある。1つの配列行は8つ
のブロック行から成る。ブロックA−Hの各々の中で同
じ相対位置をもったそれぞれのブロック行は、配列行を
構成する。すなわち、ブロックA−Hのブロック行R1
のすべてが1つの配列行を構成する。
【0024】生成配列45の各交差点は、ブロックAの
上左角のバイトがA−R1C1となるように、その行と
列の番号で識別される。ブロック行はブロックおよび行
で識別される、すなわちA−R1はデータの1つのブロ
ック行を表す。列も同様にA−C1などとして識別され
る。行の範囲はA−R1..R24として識別され、列
の範囲はA−C1..C32として表す。配列行はR1
−A..Hなどとして表す。
【0025】磁気テープ13に記憶されるデータ・バイ
トは、ホスト・プロセッサ10から順次に受け取られ、
RAM20の範囲A−R1C1..R24C32に記憶
される(受け取られるデータ・バイトは、高さ24で幅
32の配列)。各ブロックA−Hには、この範囲に記憶
されたホスト・プロセッサからのデータがある。第1の
ECC−1すなわち誤り訂正(ECC)冗長バイトは、
位置R25C1..R32C32に入る。列C1..C
32の各々には、行R1..R24に記憶され列C
1..C32のそれぞれに存在するデータのために、列
ごとの冗長度が行R25..R32に置かれている。第
2の内部符号ECC−2は、後述するように、回転およ
びインターリーブ回路(RI)23がデータ行を回転し
インターリーブした後に付け加えられる冗長度誤り検出
バイトである。このような第2の冗長度は、行R1..
R32に共通した列C33で表される。ECC−3によ
って生成される冗長度は図2に示されていない。ECC
−3の冗長度はそれぞれの配列行(8つのブロック行)
のために生成される。
【0026】データ・バイトは送出側のホスト・プロセ
ッサ10から順次に受け取られて、RAM20の中で、
配列位置A−R1C1から始まって列A−C1に沿って
順次にA−R24C1まで記憶される。ECC−1回路
は、各データ・バイトがRAM20に記憶される前に、
受け取ったデータ・バイトを処理し、列C1の最後のバ
イトが記憶されたときには、冗長バイトがバイト位置A
−R25C1..R32C1に記憶される。RAM20
のデータ記憶速度は、受け取られる速度よりも早い。
【0027】RAM20でのデータ・バイトの記憶はA
−C2に進み、前述の手順が繰り返される。この手順は
ブロックA−Hの各々の列で繰り返され、最後に生成配
列45の全体が生成される。この時点で、生成配列45
は次の処理のために準備完了となる。RAM20に十分
なデータ記憶容量とアクセス速度があれば、生成配列4
5が次の処理段階にあるときに、第2の生成配列45を
生成することができる。
【0028】生成配列45の次の処理を説明する前に、
種々の本数のトラックから同時に記録および読取りを行
うヘッド15を使用し、生成配列45を磁気テープに記
憶させる、いわゆる集合配置について説明する。それぞ
れのデータ集合は、並行トラックの各々にビット直列形
式で記録される。下記の表1は、生成配列45に存在す
る256行のデータ・バイトが、異なった本数のトラッ
クに対して、それぞれの集合の中でどのように配置され
るかを示す。32本のトラックの場合、後述するよう
に、2つの生成配列45が、データ・ブロックのそれぞ
れの誤り検出および訂正領域において磁気テープ13上
でインターリーブされる。表1の「*」は2つの生成配
列45がある場合を示している。
【0029】
【表1】 並行トラック 集合当たりの 集合の数 トラック当たり の数 ブロック行の数 ブロック当たり の行の数 4 64 4 8 8 32 8 4 16 16 16 2 32* 16* 64* 配列当たり 2
【0030】表1は次のことを示している。すなわち、
それぞれの集合の配列行の中で、データのブロック行を
折返し回転またはシフトすることによって(図2のルー
プ状の矢印46を参照)、最小区域にあるデータ・バイ
ト行の間の物理間隔を最大に保ちつつ、磁気テープの横
方向および長手方向に均等にブロック行を配分すること
ができる。このようなデータの均等間隔配分は、磁気テ
ープに1つの原因があったための(例えば、表面欠陥、
または磁気テープ上の破片など)データ・エラーの数を
減少する。また、それによって、非回転・非インターリ
ーブ配列のデータ列の各々に生じるデータ・エラーの数
が減少される。
【0031】下記の表2は、16本の並行トラックで記
録する場合の行配分を途中まで示したものである。
【0032】
【表2】 トラック 最初の 行の順序 番号 ブロック行 トラック当たり16行 1 A−R1 A−R1..H−R1 A−R2..H−R2 2 B−R3 B−R3..H−R3,A−R3 B−R4..H−R4,A−R4 3 C−R5 C−R5..H−R5,A−R5,B−R5 C−R6..H−R6,A−R6,B−R6 4 D−R7 D−R7..H−R7,A−R7..C−R7 D−R8..H−R8,A−R8..C−R8 5 E−R9 E−R9..H−R9,A−R9..D−R9 E−R10..H−R10,A−R10..D−R10 6 F−R11 F−R11..H−R11,A−R11..E−R11 F−R12..H−R12,A−R12..E−R12 7 G−R13 G−R13,H−R13,A−R13..F−R13 G−R14,H−R14,A−R14..F−R14 8 H−R15 H−R15,A−R15..G−R15 H−R16,A−R16..G−R16 9 A−R17 A−R17..H−R17 A−R18..H−R18
【0033】表2は、トラック番号1−8に8までの数
を加え、他の2つの欄では行の値に16までの数を加え
ることによって完成できる。異なった本数の並行トラッ
クの場合も、同様にして表を作成することができる。
【0034】図3は、磁気テープ13の上の16本のト
ラックに記録する場合を部分的に示す。トラック19−
1および19−2が簡略にそして部分的に示される。ト
ラック19−1は、表2で示されている行の最初の集合
を記憶するトラック番号1である。この図では、他のす
べての記録制御が処理されているものとする。すなわ
ち、読取りクロックは同期しており、バイト境界は通常
の方法で識別されている。行A−R1およびB−R1
は、トラック部分50(合計66バイト)に書き込ま
れ、既知の設計のバイト再同期インディケータ51が後
に続く。次のトラック部分52は行C−R1およびD−
R1を記憶する。バイト再同期インディケータ53がト
ラック部分52に続く。次に、行E−R1およびF−R
1を記憶するトラック部分54が第3のバイト再同期イ
ンディケータ55の前にある。次に、トラック部分56
が行G−R1およびH−R1を記憶し、トラック部分5
7にECC−3の冗長度が続いている。この例では、E
CC−3はデータ配列行A..H−R1の誤りを検出す
る。バイト再同期インディケータ58は、トラック部分
57にあるECC−3の冗長度と、トラック19−1の
区域59にある次の8つのブロック行との間に配置され
る。トラック19−1は、トラック部分50からバイト
再同期インディケータ58までと同じフォーマットで、
ブロック行A−R2..H−R2(1つの配列行として
はA..H−R2)を記憶する。同様に、トラック19
−2はバイト再同期インディケータ51、53、55お
よび58を含んでいる。これらは、回転されたブロック
行の対、すなわち、トラック部分65にあるB−R3と
C−R3、トラック部分66にあるD−R3とE−R
3,トラック部分67にあるF−R3とG−R3、およ
びトラック部分68にあるH−R3とA−R3を分離す
る。
【0035】ECC−3冗長度はトラック部分69に記
録される。区域70は、表2に示したようにトラック1
9−2の行集合における最後のブロック行を記憶する。
他のすべてのトラックも同じフォーマットである。32
本トラックの並行記録では、後述するように2つの生成
配列45がインターリーブされる。
【0036】図4は、16本までの並行トラックのデー
タ配列行を、回転およびインターリーブする回転および
インターリーブ回路(RI)23を簡略に示す。回転お
よびインターリーブ回路(RI)23の望ましい構成を
図8に示す。アドレス・デコーダ77はRAM20への
各バイト・アドレスを提供する。既知のように、アドレ
ス・デコーダ77は、RAM20のアドレス回路へ、後
述するカウント値を与える。バイト・カウンタ81は、
生成配列45の行の各々の中にあるバイトをカウントす
る。すなわちアドレスの最下位の数字を生成する。ブロ
ック・カウンタ82はブロックA−Hをカウントする。
すなわち、これはモジュロ8カウンタである。行カウン
タ83は各々の集合の中の行をカウントする。ブロック
・カウンタ82は、行カウンタ83の各カウント毎に1
回の周期をとる。REP回路84は、各々の集合を開始
しまたは終了するブロックの番号を、ブロック・カウン
タ82に表示する。すなわち、回転の式に解を与える。
換言すれば、ブロックA−Hのどれが集合の最初の行を
与えるかによって、ブロック・カウンタ82は1、2な
どの値から始まる。配列カウンタ85は、32本トラッ
ク記録操作を可能とする1ビット・カウンタである。
【0037】サイクラ86は、各種のカウンタ81−8
5を進め、トラック・カウンタ89によって指示された
各トラック書込み回路へ読み出すための信号をRAM2
0へ与える。トラック・カウンタは、トラック書込み回
路を選択するためにトラック番号で循環する。また、ト
ラック・カウンタは、それぞれの式に解を与えるため、
トラック番号をブロック・カウンタ82および行カウン
タ83へ与える。記録されているトラックの番号はトラ
ック回路88で指示される。トラック回路88は、トラ
ック・カウンタ89、REPカウンタ84、および配列
カウンタ85のモジュロを制御する(オンまたはオ
フ)。
【0038】32本トラック並行記録では、いくつかの
インターリーブ方式の1つを使用して、2つの生成配列
45がインターリーブされる。そのような配列インター
リーブ方式では、各トラックに同じような配列の集合が
記録される。すなわち、トラック1は両方の配列から最
初の配列集合を受け取り、トラック2は両方の配列から
2番目の配列集合を受け取る。以下同様である。配列の
インターリーブでは、2つの配列からのそのような配列
集合が、データ・トラックの中で各トラックの最初の
(先頭の)位置または2番目(後続の)位置に交互に配
置される。もしインターリーブの交替をトラック単位で
行うのであれば、最初のデータ配列は、その集合をすべ
ての奇数番号トラックの最初の位置に記録され、2番目
のデータ配列は、その集合を偶数番号トラックの最初の
位置に記録される。配列集合は、トラックの2番目の
(後続の)位置では逆になる。このようなインターリー
ブ方式を表3に示す。
【0039】
【表3】 トラック番号 配列1の配列行 配列2の配列行 奇数 先頭位置 後続位置 偶数 後続位置 先頭位置
【0040】配列カウンタ85は1ビットのカウンタ
で、先頭配列の指示された配列行がトラック書込み回路
へ送出された後では反転される。このような反転は、た
とえばRAM20の異なった配列部分を選択する。回転
およびインターリーブ回路(RI)23の動作は、配列
の間で交互に行われる。指示された配列行のインターリ
ーブと回転の各サイクルは、後続の配列に対して繰り返
される。
【0041】2つの生成配列45(配列1および配列
2)からのそのような配列行は、任意数のトラックを含
む各トラック・グループの先頭および後続の位置で交互
にインターリーブすることができる。たとえば、8本ト
ラックのグループを選択してよい。32本並行トラック
の記録では、2つの配列のインターリーブされたデータ
の整数個が、1つのデータ・ブロックを構成する。
【0042】線178は、他の回路39からの32本並
行トラックを表示する信号を送る。それにより、上記で
説明したように、配列カウンタ85が制御されて、配列
1および配列2の間でその値が反転される。さらに、ブ
ロック・カウンタ82および行カウンタ83は、配列1
および配列2についてそれぞれのカウントを繰り返す。
配列1に1つのカウンタ、配列2に1つのカウンタを使
用することもできる。その場合、一時点では1つの配列
(配列1または配列2)が処理される。
【0043】図5は、トラック書込み回路を簡略に示
す。ゲート100は、RAM20からのデータおよびト
ラック・カウンタ89(図4)からのトラックN信号を
受け取り、RAM20のデータをバッファ101へ送
る。ECC−3回路102は、ECC−3冗長度を、デ
ータがバッファ101を通過するときに付け加える。媒
体制御追加回路103は、ブロックの前書き信号(プリ
アンブル)、バイト再同期信号など通常の媒体制御信号
を追加する。ディジタル変調回路104は、ヘッド15
を介してデータを磁気テープ13へ記録するために、
(1,7)、(d,k)符号のようなディジタル変調ま
たは記録符号へそのデータを符号化する。通常のアナロ
グ増幅器などは示されていない。トラック書込み回路
は、並行トラックの数に関係なく、同じように動作す
る。
【0044】図6は、トラック読取り回路30の簡略図
である。ヘッド15から送られた1つのトラック読取り
信号は、通常の読取り回路90を通過する。その間に、
増幅、補正および検出が行われる。d,k記録符号をN
RZデータ信号に変換することも行われる。ECC−3
誤り検出回路91は、読み取られたデータを処理し、そ
れぞれの読み取られた集合の配列行部分に存在する短い
誤りを検出し訂正する。検出されたエラーはポインタ回
路97へ表示され、後にポインタ・メモリ(図7)へ転
送される。ECC−3誤り検出回路には、2つまでのエ
ラー・バイトを訂正するような誤り訂正機能をもたせる
ことができる。同様に、ECC−2誤り検出回路92は
読取りデータを処理し、それぞれの行に存在する誤りを
検出する。各行には1つの誤り検出冗長度がある。行の
中で検出された誤りは、ポインタ回路97の別のラッチ
に送られて,ECC−1誤り検出回路36へ転送される
のを待つ。次に、読み取られたデータは非直列化されて
バイト・バッファ93へ入れられる。1つのデータ・バ
イトがバイト・バッファ93に記録されると、直ちにレ
ディー・ラッチ95が活動状態にセットされて、1バイ
トのデータが転送可能であることを回転解除およびイン
ターリーブ解除回路(DI)33へ知らせる。回転解除
およびインターリーブ解除回路(DI)33は、線96
のレディー信号に応答し、線132を介してバイト・バ
ッファ93へ読出し信号を送る。それによって、1バイ
トのデータが回転解除およびインターリーブ解除回路
(DI)33へ転送され、そしてレディー・ラッチ95
がリセットされる。図7に示されるアドレス指定方式を
除いて、トラック読取り回路30は並行トラックの本数
に関係なく、同じように動作する。
【0045】トラック読取り回路90は、d,k読取り
信号の誤りを検出することができる。検出された誤りは
ポインタ回路97に表示され、そこに一時的に記憶さ
れ、そして、後述するように、データ行信号と共にEC
C−1誤り検出回路36へ転送される。3種類のポイン
タの各々は、ポインタ回路97へ別々に記憶される。1
つのポインタが記憶されたポインタ回路97は、1ビッ
トのポインタ信号を線98を通して回転解除およびイン
ターリーブ解除回路(DI)33へ送る。回転解除およ
びインターリーブ解除回路(DI)33はポインタ信号
を読み取り、線141を通してリセット信号を送る。こ
のリセット信号はポインタ・ビット・ラッチ(図示せ
ず)をリセットする。
【0046】回転解除およびインターリーブ解除回路
(DI)33は図7に示されている。回転解除およびイ
ンターリーブ解除回路(DI)33には、トラック読取
り回路30の各々に対応して1つのアドレス生成回路が
設けられている。16本トラック読取り動作では、16
個の活動状態のアドレス生成回路115がある。各アド
レス生成回路115は、前記の表で説明したように、各
トラックについてデータ・バイトの回転解除およびイン
ターリーブ解除を行うために、一定の順序でアドレス生
成を行う。各アドレス生成回路115には、トラック読
取り回路30からバンク・メモリ1および2 34ー3
5へのデータ・バイトの転送をカウントするため、固定
値の順序カウンタ116が置かれている。アドレス生成
は、固定値にセットされたトラック・カウンタ120、
読み取られたデータ・バイトが転送される行をカウント
する行カウンタ121、ブロックA−Hのそれぞれの1
つからカウントを開始するようにブロック・カウンタ1
23を調整する回転カウンタ122、およびバンク・メ
モリ1および2 34−35の中で生成されている読取
り(再生)配列のバイト位置をカウントする列カウンタ
124によって行われる。
【0047】スキャナ130は、いっぱいになったバイ
ト・バッファ93を見つけるために、レディー・ラッチ
95を継続的に高速で走査する。この走査はラウンド・
ロビン方式である。最初に検出された、レディー状態に
あるレディー・ラッチ95はスキャナ130を中断す
る。それによって、スキャナ130は、バンク・メモリ
1および2 34−35の次のアドレスを生成するため
に、対応するアドレス生成回路115を活動化させる。
同時に、スキャナ130は、対応するバッファ読取り線
132にバッファ読取り信号を送る。それによって、対
応するバイト・バッファ93が活動化され、そこに記憶
されているデータ・バイトがバス94を介してバンク・
メモリ1および2 34−35へ送られる。送られたデ
ータ・バイトは、対応するアドレス生成回路115によ
って指定されたバイト位置に記憶される。
【0048】トラック読取り回路30に記憶されたポイ
ンタは、ポインタ・スキャナ140へ表示される。ポイ
ンタ・スキャナ140は線98上でポインタ・レディー
信号を感知する(1つのポインタが活動化している)。
次に、ポインタ・スキャナ140は、対応する線141
を介してポインタ読取り信号をポインタ・メモリ111
へ送る。それによって、ポインタが受け取られ、そして
ポインタ回路97がクリアされる。ポインタが存在しな
ければ、ポインタ・メモリは信号を受け取らない。線9
8の各々は3ビット・レジスタに接続されている。ポイ
ンタの各々に1ビットが対応している。ポインタ・メモ
リ111は、記憶したポインタ信号をECC−1誤り検
出回路36へ送る。
【0049】ポインタは、ECC−1誤り検出回路へゼ
ロ(エラー無し)または1(エラーあり)のいずれかで
送られる。バンク・メモリ1 34またはバンク・メモ
リ235のいずれかがいっぱいで、しかもエラー・ポイ
ンタがECC−1誤り検出回路に存在すると、ECC−
1誤り検出回路は対応するバンク・メモリからデータを
読み取る。ポインタがポインタ・メモリ111に記憶さ
れているアドレスは、通常の方法でバンク・メモリ1お
よび2 34−35の中のデータと論理的に関連づけら
れている。ポインタ・メモリ111には、バンク・メモ
リ1および2の各々について区画が確保されている。従
って、アドレス・デコーダ110のバンク選択部分の制
御によって、バンク・メモリ1がECC−1誤り検出回
路によって読まれている間に、バンク・メモリ2のポイ
ンタはポインタ・メモリ111へ記憶される。
【0050】他の回路39からの線178は、32本並
行トラックが読み込まれていることを示す32本トラッ
ク信号を送る。線178が32本並行トラック以外の信
号を送っている場合は、前に説明したように動作し、1
つの再生配列が生成されている。32本並行トラックの
場合、磁気テープ13から読み取られている2つの配列
をインターリーブ解除することによって、2つの再生配
列が生成される。配列セレクタ117が、4、8、また
は16本並行トラックであることを示す線178の信号
に応答する場合は、これまで説明した構成要素を常に選
択して配列1を処理するため、処置不要の信号を線18
8上に出す。配列セレクタ117が、32本並行トラッ
クであることを示す線178の信号、および1つの配列
から1つのデータ集合がトラックのそれぞれから読み込
まれたことを示す順序カウンタ116に応答する場合
は、線188上に活動化信号を出す。それによって、配
列1から配列2へ(またはその逆へ)処理を切り替える
ために、後述する制御回路が反転する。アドレス生成回
路115の各々には、2つのアドレス回路がある。種々
のカウンタ120−124(アドレス要素)は、配列1
を処理するために使用される第1のアドレス回路を構成
し、数字の200は第2のアドレス回路を示す。この回
路は種々のカウンタ120−124と同種のものであ
り、配列2を処理するためのアドレスを生成する。配列
セレクタ117が活動化信号を出している間、順序カウ
ンタ116がアドレス回路200を増進させ、配列2が
処理される。同様に、線188の活動化信号は第2のポ
インタ・メモリ111−Aおよび第2のバンク・メモリ
34−Aを選択する。アドレス・デコ−ダ110および
110−Aは、それぞれ配列1または配列2を処理する
ため、同様な方法で選択される。配列1または配列2が
完全に読み込まれると、ECC−1がエラー・ポインタ
およびデ−タを通常の方法で処理する。
【0051】3つのECC符号は、次のような生成多項
式を使用することができる。
【数1】ECC−1の場合: G(X) = X8 + α1767 + α2406 + α2115 + α2534 + α2203 + α32 + α203X + α36
【数2】ECC−2の場合(誤り検出のみ): G(X) = X + α
【数3】ECC−3の場合(誤り検出および訂正): G(X) = X4 + α743 + α2472 + α75X + α2
【数4】ここで、GF(256)は、3つのすべての生
成元多項式について、原始多項式 P(x) = X8 + X3 + X2 + X + 1 を使用して構成される。
【0052】3つの生成多項式において、原始要素α =
00000001 である。
【0053】図8は、トラックの多様なインターリーブ
を効果的に達成する望ましいインターリーブ論理回路を
簡略に示す。回転およびインターリーブ回路(RI)2
3の設計思想は、図2で示される3次元を基礎としてい
る。インターリーブ回路は3つの座標軸X,YおよびZ
を使用する。座標軸Xは水平オフセットすなわち列の番
号(1−32ではなく0−31)を示し、座標軸Yは垂
直オフセットすなわちデータ・バイトの行(1−32で
はなく0−31)を示し、そして座標軸Zは深さすなわ
ちブロック・アドレスA−H(0−7)を示す。集合の
中の行の回転すなわちシフトは、モジュロ8加算器によ
って決定される。
【0054】下記の表4は、X,YおよびZのデータ配
列オフセットを計算するための表である。このオフセッ
トはRAM20の線形メモリ・アドレスを生成するため
に使用される。このアドレスによって、ブロック行のイ
ンターリーブと行の回転すなわち折返しシフトが、それ
ぞれの配列行の中で同時に実行される。
【0055】
【表4】 並行トラック Xオフセット Yオフセット Zオフセット の数 列番号 行番号 ブロック番号 モジュロ8 4 列番号 (8*TRK)+ROW 2*TRK+BLK 8 列番号 (4*TRK)+ROW TRK+BLK 16 列番号 (2*TRK)+ROW TRK+BLK
【0056】表4で、TRKは、8つのブロック行のど
のグループがアドレスされているかを表している、デー
タ配列のYオフセットを示し、BLKは、ブロックA−
Hをそれぞれアドレスするブロック番号0−7を示し、
ROWは、配列行の中で読まれる行を含んでいるブロッ
クを示している。RAM20のバッファ・アドレスは、
下記の式を使用して計算される。
【数5】 アドレス=(Z*1024)+(X*32)+Y (1)
【0057】値TRKおよびROWの係数(modul
us)は、並行して記録されるトラックの本数で変わ
る。データ行のバイト・アドレスは一定の5ビット量で
あり、BLK値(0−7のアドレス値を使用してブロッ
クA−Hを選択する)は3ビットの一定の係数をもって
いる。4本並行トラックの場合のROW係数は3ビット
であり、8本並行トラックの場合は2ビットであり、1
6本並行トラックの場合は1ビットである。
【0058】図8に示したアドレスマッピング論理回路
は、13ビットのアドレス・レジスタ150へ挿入する
ためのX,YおよびZのデ−タ配列値を計算する。RA
M20のアドレスは、Yマルチプレクサ151を経由し
て受け取られるYオフセット(5つの最下位有効ビット
8−12)、Xマルチプレクサ165を経由して受け取
られるXオフセット(中間の有効数字ビット3−7)、
およびブロック・モジュロ8カウンタ160から得られ
る最上位ビット0−2から構成されている。13ビット
のバイト・カウンタ170が1回循環すると、生成配列
45の1つを形成するためのRAM20のアドレスが生
成される。バイト・カウンタ170には、下記の表5で
示されているように、アドレスマッピング論理回路の入
力に接続される13本の出力線171がある。
【0059】
【表5】 カウンタ アドレスマッピング論理回路への入力線番号 出力線番号 4本トラック 8本トラック 16本トラック 入力線番号 入力線番号 入力線番号 0 175−Y2 177−Y3 180−Y4 1 175−Y3 177−Y4 192−BO 2 175−Y4 191−BO 192−B1 3 190−BO 191−B1 192−B2 4 190−Bl 191−B2 197−CO 5 190−B2 196−CO 197−Cl 6 195−CO 196−Cl 197−C2 7 195−Cl 196−C2 197−C3 8 195−C2 196−C3 197−C4 9 195−C3 196−C4 181−YO 10 195−C4 185−ZO と 186−Z4 と 178−YO 181−Yl 11 176−YO と 185−Zl 186−Zl と 184−Z4 181−Y2 12 176−Yl と 185−Z2 186−Z2 と 184−Zl と 181−Y3 184−Z2 = 0
【0060】表5で、Yは垂直軸すなわち行番号(R1
−R32; 0−31)を表し、BはブロックA−H
(0−7)を表し、Tはトラック番号を表し、そしてC
はそれぞれの行のバイトを示す列番号を表す。
【0061】32本トラック並行記録を処理する場合
は、第2のバイト・カウンタ170−Aおよびマルチプ
レクサ172が追加される。配列1および配列2からの
配列行が、表3に示される先頭および後続位置で処理さ
れている間、線178の信号はバイト・カウンタ170
および170−Aをそれぞれ制御して増加させる。マル
チプレクサ172は、トリガ・カウントに達したバイト
・カウンタ170または170−Aから線175の信号
を受け取って、配列1と配列2の間で処理の切替を行
う。線171は前に説明したように接続されている。
【0062】図9は、2つの配列(配列1および配列
2)からの配列行が32本並行トラックの上でインター
リーブされる状態を示す。最初の配列1から来る配列行
は英字および数字の組み合わせで表され、2番目の配列
行から来る配列行はアポストロフィ(’)を付けた英字
および数字の組み合わせで表される。表3に示したよう
に、トラック1においては、配列1からの配列行がトラ
ックの先頭位置に置かれ、配列2からの配列行はトラッ
クの後続位置に置かれる。これに対し、トラック2にお
いては、配列2からの配列行がトラックの先頭位置に置
かれ、配列1からの配列行はトラックの後続位置に置か
れる。
【0063】本発明を、その特定の実施例を参照して詳
しく説明したが、本発明の趣旨、範囲、および教示から
逸脱することなく細部に他の様々な変更を加えることが
可能なことは、当業者には明白であろう。
【0064】まとめとして、本発明の構成に関して以下
の事項を開示する。
【0065】(1)誤り検出および訂正冗長度を有する
記録媒体へのデータ記録および読取方法であって、所定
の複数の記録されるデータ・バイトを選択し、ランダム
・アクセス・メモリにおいて、前記データ・バイトの矩
形ブロック配列に第1のデータ・バイトのブロック配列
を生成し、前記ブロック配列は第1の数の前記データ・
バイトの列および第2の数の前記データ・バイトの行を
有し、前記ブロック配列の各々の前記列の前記データ・
バイトに、第1の誤り検出および訂正符号を適用し、前
記列の各々の前記データ・バイトのための第1の冗長バ
イトをそれぞれ生成し、前記生成された冗長バイトをそ
れぞれの列に追加することによって前記ブロック配列に
所定の数の行を追加し、よって前記ブロック配列に第3
の数の前記行を生成し、前記行の所定の数の隣り合った
ものを選択して所定の複数の第1の集合の行を作り、前
記集合が前記ブロック配列で隣接しており、かつ各集合
が前記所定の数の行になるようにし、前記追加および選
択の後、前記行の集合の各々において所定のバイト数だ
けデータ・バイトを折返しシフトすることによって、各
集合が異なるバイト数だけシフトされている状態にし、
前記記録媒体のそれぞれのアドレス可能データ記憶域に
前記シフトした行の集合を記憶し、それぞれのアドレス
可能データ記憶域の中の前記データの最初のバイトが前
記列の異なる列から来るようにし、前記記録媒体から前
記記憶されたシフト済みの行の集合を検索し、前記それ
ぞれの所定数のバイトだけ前記集合を逆にシフトして検
索されたバイト配列を作り、前記検索された配列の行を
配置して前記生成された配列の行の複製行となるように
し、前記第1の誤り検出および訂正符号および前記第1
の冗長バイトを、前記検索された配列の前記データへ適
用して、前記検索された配列のデータの誤りを検出およ
び訂正する、各ステップを含む、データ記録読取方法。 (2)複数の前記データ・バイトの行が前記集合の各々
に入るように選択し、複数の前記データ・バイトが前記
行の各々に入るように選択し、前記集合の各々に前記行
の数を含み、前記折返しシフトのステップにおいて、前
記各集合の前記行はお互いに関して折返しシフトされる
が、前記各々の行内のデータ・バイトは前記各々の行内
の他のデータ・バイトに関してはシフトしないように、
各行のすべてのバイトを単一体としてシフトし、前記ア
ドレス可能データ記憶域の各々に前記集合の1つをそれ
それ記録する各ステップを含む、(1)に記載のデータ
記録読取方法。 (3)前記集合の前記データ・バイトをシフトした後
で、第2の誤り検出符号をブロック配列の各行のデータ
および冗長バイトに適用して前記行のために第2の冗長
バイトを生成し、第2の冗長バイトが各アドレス可能デ
ータ記憶域に記憶されている前記行のデータ・エラーを
示すようにし、前記行が前記記録媒体に記録される前
に、ブロック配列の前記行へ前記第2の冗長バイトを追
加する各ステップを含む、(1)に記載のデータ記録読
取方法。 (4)前記記録媒体として変換アセンブリによって走査
される複数の並行な長手方向信号記録トラックを有する
ものを選択し、前記変換アセンブリを長手方向トラック
に対して横方向に配置し、データ・バイトの前記集合を
受取りおよび記録するために、前記変換アセンブリおよ
び前記トラックの各々を相対的に同時に動かし、複数の
前記データ・バイトを前記行の各々に挿入し、前記折返
しシフトのステップにおいて、各行の前記データ・バイ
トを、データの単一体として、同時にそして同様に連続
してシフトし、前記行を相互に関して相対的に折返しシ
フトし、前記行のどのバイトも各行内の他のバイトに関
してシフトしないで、それにより前記生成ブロック配列
の前記列の違う所からの各行の記録データ・バイトのそ
れぞれのトラックへの、前記同時記録は、前記記録媒体
上で、物理的に離れていることにより、記録媒体のそれ
ぞれの区域からの媒体の欠陥に起因する誤りがデータ・
バイトの前記行の異なるものに作用し、前記第1の誤り
検出および訂正符号の誤り訂正能力を高めることになる
ステップを含む、(1)に記載のデータ記録読取方法。 (5)前記収集し、生成し、適用するステップにおい
て、複数のブロック配列を生成配列として生成するため
に、前記ブロック配列を生成し、第1の冗長バイトの前
記行から一番遠く離れた行から始まって、第1の冗長バ
イトの前記行の所定の行で終わるように、前記ブロック
配列のすべての前記行に同様の順序で番号をつけ、前記
ブロック配列の各々の、すべての等しく番号づけされた
行が配列行になるようにし、所定の数の前記配列行を含
んだ前記集合を生成し、前記検索ステップで、前記ブロ
ック配列のすべてをデータの単一体として検索する各ス
テップを含む、(4)に記載のデータ記録読取方法。 (6)前記配列行の各集合内のデータ・バイトを記録す
る前に、第3の誤り検出および訂正符号を各前記配列行
の前記データ・バイトに適用して、各々の配列行の誤り
バイトを検出するために、前記トラックのそれぞれに第
3の冗長バイトを生成し、前記検索ステップで、データ
・バイトの前記行を逆にシフトする前に、各配列行で、
誤りバイトの数まで、誤りを検出し表示する各ステップ
を含む、(5)に記載のデータ記録読取方法。 (7)前記データ・バイトを受け取る前記トラックの数
を決定し、前記トラック数に対する逆比に値がなるよう
に、すなわち、トラック数が大きいほど前記所定の数が
小さい値となるように前記所定の数を選択する各ステッ
プを含む、(5)に記載のデータ記録読取方法。 (8)第2の所定の複数の第2のデータ・バイトを選択
し、前記ランダム・アクセス・メモリにおいて、前記第
2のデータ・バイトの第2の矩形のブロック配列を有す
る第2の生成配列を生成し、前記第2の矩形ブロック配
列が、前記第1の数の前記第2のデータ・バイトの第2
列および前記第2の数の前記第2のデータ・バイトの第
2行を有し、前記第1の誤り検出および訂正符号を、前
記第2の生成配列の各前記第2列の前記第2のデータ・
バイトに適用し、前記第2のブロック配列の前記第2列
の各々にある前記第2のデータ・バイトのために、第2
の冗長バイトをそれぞれに生成し、前記所定の数の前記
第2行を前記第2のブロック配列へ追加して前記第2の
行の前記第3の数を生成するために、前記生成した第2
の冗長バイトを各々の第2列に追加し、前記所定の数の
隣接した前記第2行を、所定の複数の第2の行の集合へ
選択して入れることにより、前記第2の集合は、前記第
2ブロック配列で連続していて、各第2集合は前記所定
の数の前記第2の行を有するようになり、前記追加およ
び選択の後で、第2の行の前記第2の集合の各々にある
データ・バイトを、前記所定のバイト数だけ折返しシフ
トし、各前記第2の集合は異なるバイト数だけシフトさ
れるようにし、さらに、前記記録媒体のそれぞれのアド
レス可能なデータ記憶域に、各前記シフトされた第2の
集合の行を記憶し、各々のアドレス可能なデータ記憶域
の前記データの最初のバイトは、前記列の異なる列から
きており、前記アドレス可能記憶域の第1の所定の区域
には、前記第1の集合が記憶され、続いて前記第2の集
合が記憶され、そして前記アドレス可能記憶域の第2の
所定の区域には、前記第2の集合が記憶され、続いて前
記第1の集合が記憶されることにより、アドレス可能記
憶域の前記第2の所定の区域のいくつかは、前記レコー
ド記憶媒体の前記データ記憶域の前記第1の所定の区域
とともにインターリーブされるようにし、前記検索のス
テップで、前記記憶されたシフト済みの行の集合を、前
記記録記憶媒体から検索し、その集合を前記各々の所定
のバイト数だけ逆にシフトし、第1と第2の検索された
バイト配列を生成し、前記生成した第1および第2のブ
ロック配列のそれぞれの複製行として、第1と第2の検
索した行を配置し、前記第1誤り検出および訂正符号、
および前記第1および第2冗長バイトをそれぞれ検索し
た配列の前記データに適用して、検索した配列のデータ
の誤り検出および訂正を行う各ステップを含む、(5)
に記載のデータ記録読取方法。 (9)前記収集および生成ステップにおいて、前記第1
および第2生成配列の各々で、等しい複数の前記ブロッ
ク配列を生成し、各々の第1および第2の配列の第1お
よび第2の冗長バイトの前記行から一番遠く離れた行か
ら始まって、第1および第2の冗長バイトの前記行の所
定の行で終わるように、すべての前記ブロック配列の前
記行に同様の順序で番号をつけ、前記第1および第2配
列のそれぞれの前記ブロック配列のすべてから等しい数
の行が入るように、前記第1および第2集合を生成し、
前記アドレス可能記憶域の各々が、前記第1および第2
集合の各々の前記等しい数のデータ・バイトの行から、
同じ数の前記第1および第2データ・バイトを受け取る
ようにし、前記第1の誤り検出および訂正符号を、前記
第1および第2配列の両方にある、各前記ブロック配列
の各前記列の前記第1および第2データ・バイトに適用
して、前記データ・ブロックのすべての前記列の各々の
前記第1および第2データ・バイトのために、第1およ
び第2冗長バイトをそれぞれ生成し、前記ブロック配列
のすべてにおいて、前記生成した冗長バイトを各列に追
加し、所定の数の行を前記ブロック配列に追加し、前記
第1および第2の生成配列の両方の前記ブロック配列の
各々に前記行の第3の数を生成し、前記第1および第2
の生成配列の前記ブロック配列のすべてを、第1および
第2の検索した配列として前記検索した配列に入れる各
ステップを含む、(8)に記載のデータ記録読取方法。 (10)前記記憶ステップの前でしかも前記折返しシフ
トの後において、前記生成配列の両方の各前記配列行の
ために、前記集合の各々に第3のECC冗長度を生成
し、各前記第3ECC冗長度を各前記配列行の後に挿入
し、前記記録媒体とともに記憶するステップを含む、
(9)に記載のデータ記録読取方法。 (11)前記検索ステップ中で、しかも前記検索ステッ
プの逆シフト・ステップ前に、各検索した行で、前記各
行のデータ・バイトの誤りを検出し、その行へのエラー
・ポインタを生成し、前記エラー・ポインタを記憶かつ
表示し、前記検索ステップにおいて、フォーマットおよ
びデータの誤りを検出し、フォーマットおよびデータの
誤りを指示する追加のエラー・ポインタを生成し、前記
適用ステップにおいて、前記エラー・ポインタを、検索
した配列へ結びつけて誤り訂正機能を拡張する各ステッ
プを含む、(9)に記載のデータ記録読取方法。 (12)前記折返しシフト・ステップを実行する場合
に、そのステップの中で、転送される各バイトのアドレ
ス・カウンタを所定のカウント・モジュラスまで増加さ
せ、前記カウント・モジュラスと前記ランダム・アクセ
ス・メモリのアドレス・スペースとを等しくし、前記折
返しシフトのステップの後に前記データを同時に受け取
るトラック数を決定し、前記アドレス・スペースをX,
YおよびZのアドレス要素に分割し、前記Xアドレス要
素を一定の数の範囲とし、前記Yアドレス要素をモジュ
ロ2Nとし、(ここでNは正の整数)、前記決定したト
ラック数と前記ブロック配列の数、モジュロ8とを加算
し、前記Zアドレス要素を生成し、前記決定したトラッ
ク数の結果と前記配列行を受け取る前記トラックの現在
のものとを加算し、前記Yアドレス要素を生成し、前記
アドレス部分を1つのアドレスとして1つの値に結合
し、所定の順序でデータのバイトを取り出し、各配列行
内で前記ブロック行を折返しシフトし、前記データのバ
イトの順次的な流れが前記所定の順序になるようにする
各ステップを含む、(9)に記載のデータ記録読取方
法。 (13)前記ブロック配列の1つへのアクセスを表す数
を増加させて、次にアクセスするブロック配列のアドレ
スとし、前記Zアドレス部分を作成する前記ステップに
おいて、所定のトラック数を4とした場合に、現行のト
ラック数値を倍にして4本トラックの部分合計を生成
し、それから次にアクセスされる現行のブロック配列
数、モジュロ8を前記4本トラック部分合計に加算して
前記Zアドレス部分を生成し、前記Zアドレス部分を作
成する前記ステップにおいて、所定のトラック数を8、
16、または32とした場合に、現行のトラック数値
を、次にアクセスされる現行のブロック配列数に加算し
て前記Zアドレス部分を生成し、前記Yアドレス部分の
ステップにおいて、さらに所定のトラック数が4、8、
16、または32の場合に、前記現行のトラック数に、
それぞれ8、4、または2を掛けるステップを含む、
(12)に記載のデータ記録読取方法。 (14)データを同時に受け取る前記トラック数を32
トラックと決め、前記生成配列を2つ生成し、前記適
用、追加、選択のステップのすべてを前記生成配列の双
方に実行し、さらに、前記生成配列の各々の所定の部分
を選択し、前記生成配列の前記所定の部分を、前記磁気
テープの長手方向に対して横方向に交替させて前記生成
配列の各々の1つの部分が前記32トラックの各々に入
るようにし、前記1つの部分が前記磁気テープの横方向
に入る順番が前記トラックの所定数ごとに交替するよう
にし、前記検索ステップにおいては、前記部分は交替が
解除されて、前記生成配列の双方が再生成される各ステ
ップを含む、(5)に記載のデータ記録読取方法。 (15)前記生成配列をw2つ生成し、かつ前記誤り冗
長度のすべてを生成し、かつ前記2つの生成配列の各々
の中でそれぞれの前記配列行の行を折返しシフトし、並
行トラックを複数のグループに分けて、各グループが同
じ数の前記トラックを有するようにし、連続したグルー
プを奇数および偶数グループとして名前をつけて、奇数
グループと偶数グループがトラックの横方向で交替する
ようにし、前記配列の各々からの1つの集合をトラック
の各々に記録し、第1の生成配列からの集合を奇数グル
ープの前記トラックの最初に記録し、第2の生成配列か
らの集合を偶数グループの前記トラックの最初に記録す
る各ステップを含む、(5)に記載のデータ記録読取方
法。 (16)複数のアドレス可能トラックを有する記録媒体
と、前記記録媒体との間で交換されるデータをデータ・
バイトの行と列に記憶するアドレス可能データ・メモリ
とを有し、前記行と列がデータ・バイトのブロック配列
へグループ分けされるような記録システムの誤り検出お
よび訂正装置にして、複数の記録されるべきデータ・バ
イトを供給するための入力手段と、前記データ・バイト
を受け取るため前記入力手段に接続され、前記受け取っ
たデータ・バイトを第1のデータ・バイトのブロック配
列として記憶することによって該ブロック配列が前記デ
ータ・バイトの矩形ブロック配列になるようにしかつ該
ブロック配列が前記データ・バイトの第1の数の列と前
記データ・バイトの第2の数の行とを有するようにする
ため前記アドレス可能データ・メモリに接続された配列
組立手段と、前記アドレス可能データ・メモリと前記入
力手段に接続され、第1の誤り検出および訂正符号を前
記ブロック配列の各列の前記データ・バイトに適用し、
前記各列の前記データ・バイトのために第1の冗長バイ
トを生成し、前記生成された冗長バイトを前記アドレス
可能データ・メモリのそれぞれの列に追加することによ
って所定の数の行を前記ブロック配列に追加し、よって
前記ブロック配列の中に第3の数の前記行を生成する第
1の誤り0手段と、前記アドレス可能データ・メモリへ
接続され、所定数の連続した前記行を選択してそれらの
行を所定の複数の第1の集合に分けることによって、該
集合が前記ブロック配列の中で連続しておりかつ各集合
が前記所定の数の前記行を有するようにする集合手段
と、前記アドレス可能データ・メモリと前記集合手段に
接続され、前記データ・バイトを前記アドレス可能デー
タ・メモリから検索し、行の前記集合の各々の中でデー
タ・バイトを所定のバイト数だけ折返しシフトすること
によって、各集合が異なるバイト数だけ折返しシフトさ
れた行を有するようにするインターリーブ手段と、行の
前記シフトされた集合を受け取るため前記インターリー
ブ手段に接続され、前記記録媒体に対して記録関係に配
置され、行のシフトされた集合を前記記録媒体のそれぞ
れのアドレス可能トラックの中のそれぞれの集合へ記憶
し、各アドレス可能データ記憶域の中の前記データの最
初のバイトが、前記ブロック配列の前記列の異なるもの
から来るようにするトラック書込み手段と、前記記録媒
体に対して読取り関係に配置され、前記記録媒体から前
記記憶されたシフト済みの行の集合を検索するトラック
読取り手段と、前記検索された行の集合を受け取るため
前記トラック読取り手段に接続され、各集合内のシフト
されている行を前記所定のバイト数だけ逆シフトして、
検索されたバイト配列を生成し、検索された配列の中の
行を前記ブロック配列の中の行の複製行として配置する
インターリーブ解除手段とより成り、前記第1誤り手段
は、前記第1の誤り検出および訂正符号および前記第1
の冗長バイトを、前記検索された配列の中の前記データ
に適用し、前記検索された配列の中のデータの誤りを検
出しかつ訂正する誤り検出訂正装置。 (17)前記集合手段は、データ・バイトの複数の前記
行を選択し、前記集合の各々の配列行とし、各集合が同
じ数の前記ブロック行を有するようにする手段を有し、
前記インターリーブ手段は、集合内で各配列のブロック
行を前記異なるバイト数だけ折返しシフトし、各配列行
内の各行が各前記集合内では同じバイト数だけシフトさ
れている状態にする、(16)に記載の誤り検出訂正装
置。 (18)前記インターリーブ手段と前記トラック書込み
手段との間に置かれて第2の誤り検出符号を各前記ブロ
ック行のデータと冗長バイトに適用し、前記各行のため
に第2の冗長バイトを生成し、前記第2の冗長バイト
が、各アドレス可能データ記憶域に記憶されている前記
行のデータ・エラーを表示するようにする第2の誤り手
段を有し、前記トラック書込み手段は、前記第2冗長バ
イトを受け取り、前記行を前記各アドレス可能トラック
に記録する前に、前記第2冗長バイトを前記行に追加す
るため、前記第2誤り手段に接続されており、前記第2
誤り手段は、前記トラック読取り手段の読取り誤り部分
を有して行の誤りを検出し、前記検出された誤りのある
行を表示するように構成された、(16)に記載の誤り
検出訂正装置。 (19)前記配列組立手段は、複数の前記ブロック配列
を有する生成配列を生成し、各前記ブロック配列が等し
い数の前記データ・バイトと前記第1冗長バイトを有す
るようにする手段を有し、前記配列組立手段内の前記手
段は、前記ブロック配列のすべての前記行に、等しい順
序で番号を付けて、第1冗長バイトを有する前記行から
最も離れている行で始まり、第1冗長バイトの前記行の
所定の行で終わるようにし、前記ブロック配列の中の同
じ番号の行のすべてから配列行を作り、前記集合手段
は、各前記集合が同じ数の前記配列行を有するように、
各前記集合のために所定の数の前記配列行を選択し、前
記トラック読取り手段と前記インターリーブ解除手段と
は、前記ブロック配列のすべてを、データの1つの単一
体として検索するようにする、(16)に記載の誤り検
出訂正装置。 (20)前記トラック書込み手段は、前記配列行の各々
を検査して第3の誤り冗長度を生成し、前記第3誤り冗
長度をそれぞれの配列行へ追加し、配列行とそれぞれの
第3冗長度を前記トラックの各々に記憶する第3の誤り
手段を有し、前記トラック読取り手段は、読取り配列行
および各第3冗長度を検査して各配列行の誤りを検出し
表示する第3の誤り検出手段を有する、(19)に記載
の誤り検出訂正装置。 (21)前記インターリーブ手段は、前記データ・バイ
トを同時に受け取る前記トラックの数を決定し表示する
手段を有し、前記インターリーブ手段は、前記表示され
たトラック数に応答し、トラック数が大きいほど前記所
定の数が小さい値となるように前記所定の数を選択し、
前記所定の数が前記表示されたトラック数に対して逆比
となるようにする手段を有する、(19)に記載の誤り
検出訂正装置。 (22)前記入力手段は、第2の所定の複数の第2デー
タ・バイトを選択し、前記配列組立手段は、前記第2の
データ・バイトからなる第2の矩形データ配列を有する
第2の生成配列を生成し、前記第2矩形ブロック配列が
前記第2データ・バイトの第2列の前記第1の数、およ
び前記第2データ・バイトの第2の行の前記第2の数を
有するようにし、前記第1誤り手段は、前記第1の誤り
検出および訂正符号を、前記第2の生成配列の各前記第
2の列の前記第2データ・バイトに適用し、前記第2ブ
ロック配列の前記第2の列の各々にある前記第2のデー
タ・バイトに第2の冗長バイトをそれぞれ生成し、前記
生成された第2の冗長バイトをそれぞれの第2の列に追
加して、前記第2の列の前記所定の数を前記第2のブロ
ック配列に追加することによって、前記第2の行の前記
第3の数を生成し、前記集合手段は、前記第2の行から
前記所定の数の隣接した行を選択して所定の複数の行の
第2の集合へ入れ、前記第2の集合が前記第2のブロッ
ク配列で連続しており、各第2の集合が前記所定の数の
前記第2の行を有するようにし、前記インターリーブ手
段は、第2の行の前記第2集合の各々にあるデータ・バ
イトを前記所定数のバイトだけ折り返しシフトして、各
々の前記第2集合が異なる数のバイトだけシフトされる
ようにし、前記トラック書込み手段は、前記インターリ
ーブ手段から前記第2の生成配列の前記データ・バイト
を受け取り、各前記シフトされた第2の行の集合を前記
記録媒体のそれぞれのアドレス可能記憶域に記憶し、各
々のアドレス可能データ記憶域の前記データの最初のバ
イトが前記列の中の異なる列から来ており、前記アドレ
ス可能データ記憶域の第1の所定の区域には、前記第1
の集合が記憶され、前記第2の集合の記憶がそれに続
き、前記アドレス可能データ記憶域の第2の所定の区域
には前記第2の集合が記憶され、前記第1の集合の記憶
がそれに続き、アドレス可能記憶域の前記第2の所定の
区域のいくつかは、前記記録記憶媒体の前記データ記憶
域の前記第1の所定の区域とともにインターリーブされ
るようにし、前記トラック読取り手段は、前記記憶され
たシフト済みの行の集合を、前記記録記憶媒体から検索
し、その集合を前記各々の所定のバイト数だけ逆にシフ
トし、第1と第2の検索されたバイト配列を生成し、か
つ第1と第2の検索された配列の行を配置して、前記生
成された第1および第2のブロック配列のそれぞれの複
製配列となるようにし、前記第1誤り手段は、前記第1
の誤り検出および訂正符号、および前記第1および第2
冗長バイトを、検索された配列の前記データに適用する
ことによって、検索された配列のデータの誤り検出およ
び訂正を行う、(19)に記載の誤り検出訂正装置。 (23)前記配列組立手段は、前記第1および第2の生
成配列の中で複数かつ同数の前記ブロック配列を生成
し、前記配列組立手段は、前記ブロック配列のすべてに
おける前記行に、等しい順序で番号を付けて、その番号
が、第1および第2配列における第1および第2冗長バ
イトの前記行から最も離れている行から始まり、第1お
よび第2冗長バイトの前記行の所定の行で終わるように
し、前記集合手段は、前記第1および第2の生成配列の
それぞれの前記ブロック配列のすべてから等しい番号の
行を入れるように、前記第1および第2集合を生成し、
前記アドレス可能記憶域の各々が、前記第1および第2
集合の各々の前記等しい番号のデータ・バイトの行か
ら、同じ数の前記第1および第2データ・バイトを受け
取るようにし、前記第1誤り手段は、前記第1誤り検出
および訂正符号を、前記第1および第2配列の両方にあ
る、各前記ブロック配列の各前記列の前記第1および第
2データ・バイトに適用して、前記データ・ブロックの
すべての前記列の各々の前記第1および第2データ・バ
イトのために、第1および第2冗長バイトをそれぞれ生
成し、前記生成した冗長バイトを各列に追加し、所定の
数の行を前記ブロック配列に追加し、前記第1および第
2の生成配列の両方の前記ブロック配列の各々に前記行
の第3の数を生成し、前記トラック読取り手段および前
記インターリーブ解除手段は、前記検索された配列を、
前記第1および第2生成配列の複製配列である第1およ
び第2の検索された配列へそれぞれ分割して入れるよう
にする、(22)に記載の誤り検出訂正装置。 (24)前記トラック書込み手段内に設けられ、各前記
配列行のために第3の誤り冗長度を生成し、前記記録メ
ンバへ配列行と共に記憶させるために、前記第3誤り冗
長度を各前記配列行に付加する第3誤り手段を有し、前
記トラック読取り手段は、各々の読み取られた第3冗長
度および各配列行を分析し、読み取られた配列行の誤り
をそれぞれ検出し、前記第3冗長度検出誤りを、前記読
み取られた配列行の誤りに対する各エラー・ポインタと
して表示する第3誤り検出手段を有し、前記トラック読
取り手段は、フォーマットおよびデータの誤りを検出
し、フォーマットおよびデータの誤りを指示する追加的
エラー・ポインタを生成するフォーマット手段を有し、
前記インターリーブ解除手段の中では、前記ポインタを
受け取り、前記第1誤り手段に接続されて、前記エラー
・ポインタを前記第1誤り手段に供給し、前記エラー・
ポインタを前記読み取られた第1冗長度と結合し、前記
検索された配列のデータの誤り訂正機能を拡張するエラ
ー・ポインタ手段が前記トラック読取り手段に接続され
ている、(23)に記載の誤り検出訂正装置。 (25)前記生成配列の所定のデータ・バイトが前記デ
ータ・メモリから供給されていることを、前記インター
リーブ手段へ表示するためのカウントを提供し、制御手
段が前記バイト・カウンタおよび前記データ・メモリに
接続され、前記バイト・カウンタを作動させて、各バイ
トが前記データ・メモリから前記インターリーブ手段へ
転送されるごとに、前記カウントを増加させる、前記イ
ンターリーブ手段に接続されたバイト・カウンタを有
し、前記データ・メモリは前記生成配列を記憶するため
のアドレス空間を有し、該アドレス空間は前記バイト・
カウンタのカウント・モジュラスと等しいカウント・モ
ジュラスのアドレス範囲を有しており、前記生成配列の
前記データを同時に受け取るトラックの並行本数を示
す、前記インターリーブ手段に接続されたトラック手段
を有し、論理手段が前記インターリーブ手段の中にあ
り、該論理手段は前記アドレス空間をX,YおよびZの
アドレス要素に分割し、X手段が前記論理手段の中にあ
り、該X手段は前記Xアドレス要素を一定数の範囲に
し、Z手段が前記論理手段の中にあり、該Z手段は、前
記Zアドレス要素をモジュロ2Nとし、(ここでNは正
の整数)、かつ前記Zアドレス要素を生成するため前記
並行本数と前記生成配列の前記ブロック配列の数、モジ
ュロ8とを加算する加算手段を有し、Y手段が前記論理
手段の中にあり、該Y手段は、前記Yアドレス要素を生
成するため前記配列行を受け取る前記トラックの1つの
現行の番号と前記並行本数との積を加算し、マルチプレ
クサ手段が前記論理手段の中にあり、該マルチプレクサ
手段は、前記X,Y,およびZアドレス部分をデータ・
メモリ・アドレスとして1つの値に結合し、それによっ
てデータ・バイトが所定の順序で取り出され、各配列行
内で前記ブロック行が折返しシフトされ、前記データ・
バイトの順次的な流れが前記所定の順序になるようにす
る、(23)に記載の誤り検出訂正装置。 (26)前記Z手段は、前記ブロック配列の1つへのデ
ータ・メモリ・アクセスを表す一連の増分したバイト・
カウントを前記バイト・カウンタ手段から受け取って次
にアクセスするブロック配列のアドレスとし、前記Z手
段は、前記トラック手段に応答して4の並行本数を表示
する4本トラック手段を有し、それによって現在のトラ
ック数の値が倍にされ、4本トラックの部分合計が生成
され、前記部分合計が前記加算手段に与えられ、ブロッ
ク配列手段が、前記データ・メモリの中のブロック配列
が次にアクセスされるブロック配列であることを示す現
行ブロック配列番号を前記加算手段に与え、それによっ
て前記4本トラック部分合計が加算されて、前記Zアド
レス部分が生成され、前記論理手段の中の8本トラック
手段が、前記トラック手段に応答して8、16、または
32の並行本数を表示し、それによって現行トラックの
番号値が前記加算手段へ与えられ、前記加算手段は、前
記現行トラック番号値を次にアクセスされる前記現行ブ
ロック配列番号に加算して前記Zアドレス部分を生成
し、前記Y手段は、並行本数4、8、16、または32
を表示する前記トラック手段にそれぞれ応答して、前記
現行トラック番号にそれぞれ8、4、または2を掛けて
前記Yアドレス部分を生成する、(25)に記載の誤り
検出訂正装置。 (27)繰返し手段が前記配列組立手段と前記第1誤り
手段と前記集合手段と前記インターリーブ手段に接続さ
れ、前記繰返し手段は、前記生成配列の2つを作成し、
かつ前記誤り冗長度のすべてを生成し、前記2つの生成
配列のそれぞれにおける各前記配列行の行を折返しシフ
トし、前記繰返し手段はグループ手段を有し、該グルー
プ手段は、並行トラックを複数のグループにグループ分
けして各グループが同じ数の前記トラック含むようにし
かつ連続したグループを奇数および偶数グループとし
て、トラックの横方向で奇数グループと偶数グループが
交互に並ぶようにし、前記グループ手段は、前記配列の
各々から1つの集合をトラックの各々に記録する交替手
段を有し、前記交替手段は前記インターリーブ手段を作
動させる切替手段を有し、それによってまず生成配列の
第1のものからの集合が処理され、次に配列の第2のも
のからの集合が処理される連続処理が行われ、配列の第
1のものからの集合が奇数グループの前記トラックの最
初に記録され、配列の第2のものからの集合が偶数のグ
ループの前記トラックの最初に記録される、(19)に
記載の誤り検出訂正装置。
【0066】
【発明の効果】本発明の実施により、最小限の区域でデ
ータの分散を行うことができ、また、低いSNRにも対
処できる誤り検出訂正(ECC)システムが得られる。
【図面の簡単な説明】
【図1】本発明で使用される周辺データ記憶サブシステ
ムおよび磁気テープ媒体を示す概略図である。
【図2】図1で示したシステムのためのデータ・バイト
および誤り冗長度を構成する元の配列を示す概略図であ
る。
【図3】図2で示した配列の集合の中でデータ行を回転
させた効果を説明するために、図1に示した磁気テープ
媒体の一部分を示す図である。
【図4】図3で示したフォーマットを生成するためブロ
ック行の回転および配列行のインターリーブを行う回路
を示す概略図である。
【図5】図1で示したサブシステムの書込みチャネルを
示す概略図である。
【図6】図1で示したサブシステムの読出し(再生)チ
ャネルを示す概略図である。
【図7】図1で示したサブシステムの回転解除およびイ
ンターリーブ解除回路を示す概略図である。
【図8】図1で示したサブシステムのためにブロック行
の回転および配列行のインターリーブを行う回路の概略
図である。
【図9】2つの配列からの配列行を32本トラックの上
に記録する場合のインターリーブ方式を示す簡略図であ
る。
【符号の説明】
10 ホスト・プロセッサ 11 周辺制御装置 12 磁気テープ装置 13 磁気テープ 15 ヘッド 19 トラック 20 RAM(ランダム・アクセス・メモリ) 21 ECC−1 22 ECC−2 23 回転およびインターリーブ回路(RI) 23−1 バンク1 23−2 バンク2 24 トラック書込み回路 25 ECC−3回路 30 トラック読取り回路 31 ECC−3誤り検出回路 32 ECC−2誤り検出回路 33 回転解除およびインターリーブ解除回路(D
I) 34 バンク・メモリ1 35 バンク・メモリ2 36 ECC−1誤り検出回路 39 他の回路 45 生成配列 50 トラック部分 51 バイト再同期インディケータ 52 トラック部分 53 バイト再同期インディケータ 54 トラック部分 55 バイト再同期インディケータ 56 トラック部分 57 トラック部分 58 バイト再同期インディケータ 59 区域 65 トラック部分 66 トラック部分 67 トラック部分 68 トラック部分 69 トラック部分 70 区域 77 アドレス・デコーダ 81 バイト・カウンタ 82 ブロック・カウンタ 83 行カウンタ 84 REPカウンタ 85 配列カウンタ 86 サイクラ 88 トラック回路 89 トラック・カウンタ 90 トラック読取り回路 91 ECC−3誤り検出回路(31) 92 ECC−2誤り検出回路(32) 93 バイト・バッファ 95 レディー・ラッチ 97 ポインタ回路 100 ゲート 101 バッファ 102 ECC−3回路(25) 103 媒体制御追加回路 104 ディジタル変調回路 110 アドレス・デコーダ 111 ポインタ・メモリ 115 アドレス生成回路 116 順序カウンタ 117 配列セレクタ 120 トラック・カウンタ 121 行カウンタ 122 回転カウンタ 123 ブロック・カウンタ 124 列カウンタ 130 スキャナ 140 ポインタ・スキャナ 150 アドレス・レジスタ 151 Yマルチプレクサ 160 ブロック・モジュロ8カウンタ 165 Xマルチプレクサ 170 バイト・カウンタ 170−A バイト・カウンタ 172 マルチプレクサ 200 アドレス回路
───────────────────────────────────────────────────── フロントページの続き (72)発明者 アーネスト・スチュワート・ゲール アメリカ合衆国85730 アリゾナ州トゥ ーソン イースト・ニカラガ・プレイス 9831 (72)発明者 カール・アンダース・ハッセル アメリカ合衆国85710 アリゾナ州トゥ ーソン イースト・ローズウッド6851 (72)発明者 スコット・ジェフリー・シャッファー アメリカ合衆国85715 アリゾナ州トゥ ーソン イースト・バーウッド・ロード 7910 (72)発明者 サシャマ・マヘシュ・パランジャプ アメリカ合衆国85715 アリゾナ州トゥ ーソン イースト・テリトリー・ロード 6000 (72)発明者 ステファン・チャールス・ウエスト アメリカ合衆国85749 アリゾナ州トゥ ーソン イースト・ビスタ・モンタナ 9760

Claims (27)

    (57)【特許請求の範囲】
  1. 【請求項1】誤り検出および訂正冗長度を有する記録媒
    体へのデータ記録および読取方法であって、 所定の複数の記録されるデータ・バイトを選択し、 ランダム・アクセス・メモリにおいて、前記データ・バ
    イトの矩形ブロック配列に第1のデータ・バイトのブロ
    ック配列を生成し、前記ブロック配列は第1の数の前記
    データ・バイトの列および第2の数の前記データ・バイ
    トの行を有し、 前記ブロック配列の各々の前記列の前記データ・バイト
    に、第1の誤り検出および訂正符号を適用し、前記列の
    各々の前記データ・バイトのための第1の冗長バイトを
    それぞれ生成し、 前記生成された冗長バイトをそれぞれの列に追加するこ
    とによって前記ブロック配列に所定の数の行を追加し、
    よって前記ブロック配列に第3の数の前記行を生成し、 前記行の所定の数の隣り合ったものを選択して所定の複
    数の第1の集合の行を作り、前記集合が前記ブロック配
    列で隣接しており、かつ各集合が前記所定の数の行にな
    るようにし、 前記追加および選択の後、前記行の集合の各々において
    所定のバイト数だけデータ・バイトを折返しシフトする
    ことによって、各集合が異なるバイト数だけシフトされ
    ている状態にし、 前記記録媒体のそれぞれのアドレス可能データ記憶域に
    前記シフトした行の集合を記憶し、それぞれのアドレス
    可能データ記憶域の中の前記データの最初のバイトが前
    記列の異なる列から来るようにし、 前記記録媒体から前記記憶されたシフト済みの行の集合
    を検索し、前記それぞれの所定数のバイトだけ前記集合
    を逆にシフトして検索されたバイト配列を作り、前記検
    索された配列の行を配置して前記生成された配列の行の
    複製行となるようにし、 前記第1の誤り検出および訂正符号および前記第1の冗
    長バイトを、前記検索された配列の前記データへ適用し
    て、前記検索された配列のデータの誤りを検出および訂
    正する、 各ステップを含むデータ記録読取方法。
  2. 【請求項2】複数の前記データ・バイトの行が前記集合
    の各々に入るように選択し、 複数の前記データ・バイトが前記行の各々に入るように
    選択し、 前記集合の各々に前記行の数を含み、 前記折返しシフトのステップにおいて、前記各集合の前
    記行はお互いに関して折返しシフトされるが、前記各々
    の行内のデータ・バイトは前記各々の行内の他のデータ
    ・バイトに関してはシフトしないように、各行のすべて
    のバイトを単一体としてシフトし、 前記アドレス可能データ記憶域の各々に前記集合の1つ
    をそれそれ記録する各ステップを含む、請求項1に記載
    のデータ記録読取方法。
  3. 【請求項3】前記集合の前記データ・バイトをシフトし
    た後で、第2の誤り検出符号をブロック配列の各行のデ
    ータおよび冗長バイトに適用して前記行のために第2の
    冗長バイトを生成し、第2の冗長バイトが各アドレス可
    能データ記憶域に記憶されている前記行のデータ・エラ
    ーを示すようにし、 前記行が前記記録媒体に記録される前に、ブロック配列
    の前記行へ前記第2の冗長バイトを追加する各ステップ
    を含む、請求項1に記載のデータ記録読取方法。
  4. 【請求項4】前記記録媒体として変換アセンブリによっ
    て走査される複数の長手方向に並行する信号記録トラッ
    クを有するものを選択し、前記変換アセンブリを長手方
    向トラックに対して横方向に配置し、 データ・バイトの前記集合を受取りおよび記録するため
    に、前記変換アセンブリおよび前記トラックの各々を相
    対的に同時に動かし、 複数の前記データ・バイトを前記行の各々に挿入し、 前記折返しシフトのステップにおいて、各行の前記デー
    タ・バイトを、データの単一体として、同時にそして同
    様に連続してシフトし、前記行を相互に関して相対的に
    折返しシフトし、前記行のどのバイトも各行内の他のバ
    イトに関してシフトしないで、それにより前記生成ブロ
    ック配列の前記列の違う所からの各行の記録データ・バ
    イトのそれぞれのトラックへの、前記同時記録は、前記
    記録媒体上で、物理的に離れていることにより、記録媒
    体のそれぞれの区域からの媒体の欠陥に起因する誤りが
    データ・バイトの前記行の異なるものに作用し、前記第
    1の誤り検出および訂正符号の誤り訂正能力を高めるこ
    とになるステップを含む、請求項1に記載のデータ記録
    読取方法。
  5. 【請求項5】前記収集し、生成し、適用するステップに
    おいて、複数のブロック配列を生成配列として生成する
    ために、前記ブロック配列を生成し、 第1の冗長バイトの前記行から一番遠く離れた行から始
    まって、第1の冗長バイトの前記行の所定の行で終わる
    ように、前記ブロック配列のすべての前記行に同様の順
    序で番号をつけ、前記ブロック配列の各々の、すべての
    等しく番号づけされた行が配列行になるようにし、 所定の数の前記配列行を含んだ前記集合を生成し、 前記検索ステップで、前記ブロック配列のすべてをデー
    タの単一体として検索する各ステップを含む、請求項4
    に記載のデータ記録読取方法。
  6. 【請求項6】前記配列行の各集合内のデータ・バイトを
    記録する前に、第3の誤り検出および訂正符号を各前記
    配列行の前記データ・バイトに適用して、各々の配列行
    の誤りバイトを検出するために、前記トラックのそれぞ
    れに第3の冗長バイトを生成し、 前記検索ステップで、データ・バイトの前記行を逆にシ
    フトする前に、各配列行で、誤りバイトの数まで、誤り
    を検出し表示する各ステップを含む、請求項5に記載の
    データ記録読取方法。
  7. 【請求項7】前記データ・バイトを受け取る前記トラッ
    クの数を決定し、 前記トラック数に対する逆比に値がなるように、すなわ
    ち、トラック数が大きいほど前記所定の数が小さい値と
    なるように前記所定の数を選択する各ステップを含む、
    請求項5に記載のデータ記録読取方法。
  8. 【請求項8】第2の所定の複数の第2のデータ・バイト
    を選択し、 前記ランダム・アクセス・メモリにおいて、前記第2の
    データ・バイトの第2の矩形のブロック配列を有する第
    2の生成配列を生成し、前記第2の矩形ブロック配列
    が、前記第1の数の前記第2のデータ・バイトの第2列
    および前記第2の数の前記第2のデータ・バイトの第2
    行を有し、 前記第1の誤り検出および訂正符号を、前記第2の生成
    配列の各前記第2列の前記第2のデータ・バイトに適用
    し、前記第2のブロック配列の前記第2列の各々にある
    前記第2のデータ・バイトのために、第2の冗長バイト
    をそれぞれに生成し、 前記所定の数の前記第2行を前記第2のブロック配列へ
    追加して前記第2の行の前記第3の数を生成するため
    に、前記生成した第2の冗長バイトを各々の第2列に追
    加し、 前記所定の数の隣接した前記第2行を、所定の複数の第
    2の行の集合へ選択して入れることにより、前記第2の
    集合は、前記第2ブロック配列で連続していて、各第2
    集合は前記所定の数の前記第2の行を有するようにな
    り、 前記追加および選択の後で、第2の行の前記第2の集合
    の各々にあるデータ・バイトを、前記所定のバイト数だ
    け折返しシフトし、各前記第2の集合は異なるバイト数
    だけシフトされるようにし、 さらに、前記記録媒体のそれぞれのアドレス可能なデー
    タ記憶域に、各前記シフトされた第2の集合の行を記憶
    し、各々のアドレス可能なデータ記憶域の前記データの
    最初のバイトは、前記列の異なる列からきており、前記
    アドレス可能記憶域の第1の所定の区域には、前記第1
    の集合が記憶され、続いて前記第2の集合が記憶され、
    そして前記アドレス可能記憶域の第2の所定の区域に
    は、前記第2の集合が記憶され、続いて前記第1の集合
    が記憶されることにより、アドレス可能記憶域の前記第
    2の所定の区域のいくつかは、前記レコード記憶媒体の
    前記データ記憶域の前記第1の所定の区域とともにイン
    ターリーブされるようにし、 前記検索のステップで、前記記憶されたシフト済みの行
    の集合を、前記記録記憶媒体から検索し、その集合を前
    記各々の所定のバイト数だけ逆にシフトし、第1と第2
    の検索されたバイト配列を生成し、前記生成した第1お
    よび第2のブロック配列のそれぞれの複製行として、第
    1と第2の検索した行を配置し、 前記第1誤り検出および訂正符号、および前記第1およ
    び第2冗長バイトをそれぞれ検索した配列の前記データ
    に適用して、検索した配列のデータの誤り検出および訂
    正を行う各ステップを含む、請求項5に記載のデータ記
    録読取方法。
  9. 【請求項9】前記収集および生成ステップにおいて、前
    記第1および第2生成配列の各々で、等しい複数の前記
    ブロック配列を生成し、 各々の第1および第2の配列の第1および第2の冗長バ
    イトの前記行から一番遠く離れた行から始まって、第1
    および第2の冗長バイトの前記行の所定の行で終わるよ
    うに、すべての前記ブロック配列の前記行に同様の順序
    で番号をつけ、 前記第1および第2配列のそれぞれの前記ブロック配列
    のすべてから等しい数の行が入るように、前記第1およ
    び第2集合を生成し、前記アドレス可能記憶域の各々
    が、前記第1および第2集合の各々の前記等しい数のデ
    ータ・バイトの行から、同じ数の前記第1および第2デ
    ータ・バイトを受け取るようにし、 前記第1の誤り検出および訂正符号を、前記第1および
    第2配列の両方にある、各前記ブロック配列の各前記列
    の前記第1および第2データ・バイトに適用して、前記
    データ・ブロックのすべての前記列の各々の前記第1お
    よび第2データ・バイトのために、第1および第2冗長
    バイトをそれぞれ生成し、 前記ブロック配列のすべてにおいて、前記生成した冗長
    バイトを各列に追加し、所定の数の行を前記ブロック配
    列に追加し、前記第1および第2の生成配列の両方の前
    記ブロック配列の各々に前記行の第3の数を生成し、 前記第1および第2の生成配列の前記ブロック配列のす
    べてを、第1および第2の検索した配列として前記検索
    した配列に入れる各ステップを含む、請求項8に記載の
    データ記録読取方法。
  10. 【請求項10】前記記憶ステップの前でしかも前記折返
    しシフトの後において、前記生成配列の両方の各前記配
    列行のために、前記集合の各々に第3のECC冗長度を
    生成し、各前記第3ECC冗長度を各前記配列行の後に
    挿入し、前記記録媒体とともに記憶するステップを含
    む、請求項9に記載のデータ記録読取方法。
  11. 【請求項11】前記検索ステップ中で、しかも前記検索
    ステップの逆シフト・ステップ前に、各検索した行で、
    前記各行のデータ・バイトの誤りを検出し、その行への
    エラー・ポインタを生成し、前記エラー・ポインタを記
    憶かつ表示し、 前記検索ステップにおいて、フォーマットおよびデータ
    の誤りを検出し、フォーマットおよびデータの誤りを指
    示する追加のエラー・ポインタを生成し、 前記適用ステップにおいて、前記エラー・ポインタを、
    検索した配列へ結びつけて誤り訂正機能を拡張する各ス
    テップを含む、請求項9に記載のデータ記録読取方法。
  12. 【請求項12】前記折返しシフト・ステップを実行する
    場合に、そのステップの中で、転送される各バイトのア
    ドレス・カウンタを所定のカウント・モジュラスまで増
    加させ、 前記カウント・モジュラスと前記ランダム・アクセス・
    メモリのアドレス・スペースとを等しくし、 前記折返しシフトのステップの後に前記データを同時に
    受け取るトラック数を決定し、 前記アドレス・スペースをX,YおよびZのアドレス要
    素に分割し、 前記Xアドレス要素を一定の数の範囲とし、 前記Yアドレス要素をモジュロ2Nとし、(ここでNは
    正の整数)、前記決定したトラック数と前記ブロック配
    列の番号、モジュロ8とを加算し、前記Zアドレス要素
    を生成し、 前記決定したトラック数の結果と前記配列行を受け取る
    前記トラックの現在のものとを加算し、前記Yアドレス
    要素を生成し、 前記アドレス部分を1つのアドレスとして1つの値に結
    合し、所定の順序でデータのバイトを取り出し、各配列
    行内で前記ブロック行を折返しシフトし、前記データの
    バイトの順次的な流れが前記所定の順序になるようにす
    る各ステップを含む、請求項9に記載のデータ記録読取
    方法。
  13. 【請求項13】前記ブロック配列の1つへのアクセスを
    表す数を増加させて、次にアクセスするブロック配列の
    アドレスとし、 前記Zアドレス部分を作成する前記ステップにおいて、
    所定のトラック数を4とした場合に、現行のトラック数
    値を倍にして4本トラックの部分合計を生成し、それか
    ら次にアクセスされる現行のブロック配列番号、モジュ
    ロ8を前記4本トラック部分合計に加算して前記Zアド
    レス部分を生成し、 前記Zアドレス部分を作成する前記ステップにおいて、
    所定のトラック数を8、16、または32とした場合
    に、現行のトラック数値を、次にアクセスされる現行の
    ブロック配列番号に加算して前記Zアドレス部分を生成
    し、 前記Yアドレス部分のステップにおいて、さらに所定の
    トラック数が4、8、16、または32の場合に、前記
    現行のトラック数に、それぞれ8、4、または2を掛け
    るステップを含む、請求項12に記載のデータ記録読取
    方法。
  14. 【請求項14】データを同時に受け取る前記トラック数
    を32トラックと決め、 前記生成配列を2つ生成し、前記適用、追加、選択のス
    テップのすべてを前記生成配列の双方に実行し、さら
    に、前記生成配列の各々の所定の部分を選択し、前記生
    成配列の前記所定の部分を、前記磁気テープの長手方向
    に対して横方向に交替させて前記生成配列の各々の1つ
    の部分が前記32トラックの各々に入るようにし、前記
    1つの部分が前記磁気テープの横方向に入る順番が前記
    トラックの所定数ごとに交替するようにし、 前記検索ステップにおいては、前記部分は交替が解除さ
    れて、前記生成配列の双方が再生成される各ステップを
    含む、請求項5に記載のデータ記録読取方法。
  15. 【請求項15】前記生成配列を2つ生成し、かつ前記誤
    り冗長度のすべてを生成し、かつ前記2つの生成配列の
    各々の中でそれぞれの前記配列行の行を折返しシフト
    し、 並行トラックを複数のグループに分けて、各グループが
    同じ数の前記トラックを有するようにし、連続したグル
    ープを奇数および偶数グループとして名前をつけて、奇
    数グループと偶数グループがトラックの横方向で交替す
    るようにし、 前記配列の各々からの1つの集合をトラックの各々に記
    録し、 第1の生成配列からの集合を奇数グループの前記トラッ
    クの最初に記録し、第2の生成配列からの集合を偶数グ
    ループの前記トラックの最初に記録する各ステップを含
    む、請求項5に記載のデータ記録読取方法。
  16. 【請求項16】複数のアドレス可能トラックを有する記
    録媒体と、前記記録媒体との間で交換されるデータをデ
    ータ・バイトの行と列に記憶するアドレス可能データ・
    メモリとを有し、前記行と列がデータ・バイトのブロッ
    ク配列へグループ分けされるような記録システムの誤り
    検出および訂正装置にして、 複数の記録されるべきデータ・バイトを供給するための
    入力手段と、 前記データ・バイトを受け取るため前記入力手段に接続
    され、前記受け取ったデータ・バイトを第1のデータ・
    バイトのブロック配列として記憶することによって該ブ
    ロック配列が前記データ・バイトの矩形ブロック配列に
    なるようにしかつ該ブロック配列が前記データ・バイト
    の第1の数の列と前記データ・バイトの第2の数の行と
    を有するようにするため前記アドレス可能データ・メモ
    リに接続された配列組立手段と、 前記アドレス可能データ・メモリと前記入力手段に接続
    され、第1の誤り検出および訂正符号を前記ブロック配
    列の各列の前記データ・バイトに適用し、前記各列の前
    記データ・バイトのために第1の冗長バイトを生成し、
    前記生成された冗長バイトを前記アドレス可能データ・
    メモリのそれぞれの列に追加することによって所定の数
    の行を前記ブロック配列に追加し、よって前記ブロック
    配列の中に第3の数の前記行を生成する第1の誤り手段
    と、 前記アドレス可能データ・メモリへ接続され、所定数の
    連続した前記行を選択してそれらの行を所定の複数の第
    1の集合に分けることによって、該集合が前記ブロック
    配列の中で連続しておりかつ各集合が前記所定の数の前
    記行を有するようにする集合手段と、 前記アドレス可能データ・メモリと前記集合手段に接続
    され、前記データ・バイトを前記アドレス可能データ・
    メモリから検索し、行の前記集合の各々の中でデータ・
    バイトを所定のバイト数だけ折返しシフトすることによ
    って、各集合が異なるバイト数だけ折返しシフトされた
    行を有するようにするインターリーブ手段と、 行の前記シフトされた集合を受け取るため前記インター
    リーブ手段に接続され、前記記録媒体に対して記録関係
    に配置され、行のシフトされた集合を前記記録媒体のそ
    れぞれのアドレス可能トラックの中のそれぞれの集合へ
    記憶し、各アドレス可能データ記憶域の中の前記データ
    の最初のバイトが、前記ブロック配列の前記列の異なる
    ものから来るようにするトラック書込み手段と、 前記記録媒体に対して読取り関係に配置され、前記記録
    媒体から前記記憶されたシフト済みの行の集合を検索す
    るトラック読取り手段と、 前記検索された行の集合を受け取るため前記トラック読
    取り手段に接続され、各集合内のシフトされている行を
    前記所定のバイト数だけ逆シフトして、検索されたバイ
    ト配列を生成し、検索された配列の中の行を前記ブロッ
    ク配列の中の行の複製行として配置するインターリーブ
    解除手段とより成り、 前記第1誤り手段は、前記第1の誤り検出および訂正符
    号および前記第1の冗長バイトを、前記検索された配列
    の中の前記データに適用し、前記検索された配列の中の
    データの誤りを検出しかつ訂正する誤り検出訂正装置。
  17. 【請求項17】前記集合手段は、データ・バイトの複数
    の前記行を選択し、前記集合の各々の配列行とし、各集
    合が同じ数の前記ブロック行を有するようにする手段を
    有し、 前記インターリーブ手段は、集合内で各配列のブロック
    行を前記異なるバイト数だけ折返しシフトし、各配列行
    内の各行が各前記集合内では同じバイト数だけシフトさ
    れている状態にする、請求項16に記載の誤り検出訂正
    装置。
  18. 【請求項18】前記インターリーブ手段と前記トラック
    書込み手段との間に置かれて第2の誤り検出符号を各前
    記ブロック行のデータと冗長バイトに適用し、前記各行
    のために第2の冗長バイトを生成し、前記第2の冗長バ
    イトが、各アドレス可能データ記憶域に記憶されている
    前記行のデータ・エラーを表示するようにする第2の誤
    り手段を有し、 前記トラック書込み手段は、前記第2冗長バイトを受け
    取り、前記行を前記各アドレス可能トラックに記録する
    前に、前記第2冗長バイトを前記行に追加するため、前
    記第2誤り手段に接続されており、 前記第2誤り手段は、前記トラック読取り手段の読取り
    誤り部分を有して行の誤りを検出し、前記検出された誤
    りのある行を表示するように構成された、請求項16に
    記載の誤り検出訂正装置。
  19. 【請求項19】前記配列組立手段は、複数の前記ブロッ
    ク配列を有する生成配列を生成し、各前記ブロック配列
    が等しい数の前記データ・バイトと前記第1冗長バイト
    を有するようにする手段を有し、 前記配列組立手段内の前記手段は、前記ブロック配列の
    すべての前記行に、等しい順序で番号を付けて、第1冗
    長バイトを有する前記行から最も離れている行で始ま
    り、第1冗長バイトの前記行の所定の行で終わるように
    し、前記ブロック配列の中の同じ番号の行のすべてから
    配列行を作り、 前記集合手段は、各前記集合が同じ数の前記配列行を有
    するように、各前記集合のために所定の数の前記配列行
    を選択し、 前記トラック読取り手段と前記インターリーブ解除手段
    とは、前記ブロック配列のすべてを、データの1つの単
    一体として検索するようにする、請求項16に記載の誤
    り検出訂正装置。
  20. 【請求項20】前記トラック書込み手段は、前記配列行
    の各々を検査して第3の誤り冗長度を生成し、前記第3
    誤り冗長度をそれぞれの配列行へ追加し、配列行とそれ
    ぞれの第3冗長度を前記トラックの各々に記憶する第3
    の誤り手段を有し、 前記トラック読取り手段は、読取り配列行および各第3
    冗長度を検査して各配列行の誤りを検出し表示する第3
    の誤り検出手段を有する、請求項19に記載の誤り検出
    訂正装置。
  21. 【請求項21】前記インターリーブ手段は、前記データ
    ・バイトを同時に受け取る前記トラックの数を決定し表
    示する手段を有し、 前記インターリーブ手段は、前記表示されたトラック数
    に応答し、トラック数が大きいほど前記所定の数が小さ
    い値となるように前記所定の数を選択し、前記所定の数
    が前記表示されたトラック数に対して逆比となるように
    する手段を有する、請求項19に記載の誤り検出訂正装
    置。
  22. 【請求項22】前記入力手段は、第2の所定の複数の第
    2データ・バイトを選択し、 前記配列組立手段は、前記第2のデータ・バイトからな
    る第2の矩形データ配列を有する第2の生成配列を生成
    し、前記第2矩形ブロック配列が前記第2データ・バイ
    トの第2列の前記第1の数、および前記第2データ・バ
    イトの第2の行の前記第2の数を有するようにし、 前記第1誤り手段は、前記第1の誤り検出および訂正符
    号を、前記第2の生成配列の各前記第2の列の前記第2
    データ・バイトに適用し、前記第2ブロック配列の前記
    第2の列の各々にある前記第2のデータ・バイトに第2
    の冗長バイトをそれぞれ生成し、前記生成された第2の
    冗長バイトをそれぞれの第2の列に追加して、前記第2
    の列の前記所定の数を前記第2のブロック配列に追加す
    ることによって、前記第2の行の前記第3の数を生成
    し、 前記集合手段は、前記第2の行から前記所定の数の隣接
    した行を選択して所定の複数の行の第2の集合へ入れ、
    前記第2の集合が前記第2のブロック配列で連続してお
    り、各第2の集合が前記所定の数の前記第2の行を有す
    るようにし、 前記インターリーブ手段は、第2の行の前記第2集合の
    各々にあるデータ・バイトを前記所定数のバイトだけ折
    り返しシフトして、各々の前記第2集合が異なる数のバ
    イトだけシフトされるようにし、 前記トラック書込み手段は、前記インターリーブ手段か
    ら前記第2の生成配列の前記データ・バイトを受け取
    り、各前記シフトされた第2の行の集合を前記記録媒体
    のそれぞれのアドレス可能記憶域に記憶し、各々のアド
    レス可能データ記憶域の前記データの最初のバイトが前
    記列の中の異なる列から来ており、前記アドレス可能デ
    ータ記憶域の第1の所定の区域には前記第1の集合が記
    憶され、前記第2の集合の記憶がそれに続き、前記アド
    レス可能データ記憶域の第2の所定の区域には前記第2
    の集合が記憶され、前記第1の集合の記憶がそれに続
    き、アドレス可能記憶域の前記第2の所定の区域のいく
    つかは、前記記録記憶媒体の前記データ記憶域の前記第
    1の所定の区域とともにインターリーブされるように
    し、 前記トラック読取り手段は、前記記憶されたシフト済み
    の行の集合を、前記記録記憶媒体から検索し、その集合
    を前記各々の所定のバイト数だけ逆にシフトし、第1と
    第2の検索されたバイト配列を生成し、かつ第1と第2
    の検索された配列の行を配置して、前記生成された第1
    および第2のブロック配列のそれぞれの複製配列となる
    ようにし、 前記第1誤り手段は、前記第1の誤り検出および訂正符
    号、および前記第1および第2冗長バイトを、検索され
    た配列の前記データに適用することによって、検索され
    た配列のデータの誤り検出および訂正を行う、請求項1
    9に記載の誤り検出訂正装置。
  23. 【請求項23】前記配列組立手段は、前記第1および第
    2の生成配列の中で複数かつ同数の前記ブロック配列を
    生成し、 前記配列組立手段は、前記ブロック配列のすべてにおけ
    る前記行に、等しい順序で番号を付けて、その番号が、
    第1および第2配列における第1および第2冗長バイト
    の前記行から最も離れている行から始まり、第1および
    第2冗長バイトの前記行の所定の行で終わるようにし、 前記集合手段は、前記第1および第2の生成配列のそれ
    ぞれの前記ブロック配列のすべてから等しい番号の行を
    入れるように、前記第1および第2集合を生成し、前記
    アドレス可能記憶域の各々が、前記第1および第2集合
    の各々の前記等しい番号のデータ・バイトの行から、同
    じ数の前記第1および第2データ・バイトを受け取るよ
    うにし、前記第1誤り手段は、前記第1誤り検出および
    訂正符号を、前記第1および第2配列の両方にある、各
    前記ブロック配列の各前記列の前記第1および第2デー
    タ・バイトに適用して、前記データ・ブロックのすべて
    の前記列の各々の前記第1および第2データ・バイトの
    ために、第1および第2冗長バイトをそれぞれ生成し、 前記生成した冗長バイトを各列に追加し、所定の数の行
    を前記ブロック配列に追加し、前記第1および第2の生
    成配列の両方の前記ブロック配列の各々に前記行の第3
    の数を生成し、 前記トラック読取り手段および前記インターリーブ解除
    手段は、前記検索された配列を、前記第1および第2生
    成配列の複製配列である第1および第2の検索された配
    列へそれぞれ分割して入れるようにする、請求項22に
    記載の誤り検出訂正装置。
  24. 【請求項24】前記トラック書込み手段内に設けられ、
    各前記配列行のために第3の誤り冗長度を生成し、前記
    記録メンバへ配列行と共に記憶させるために、前記第3
    誤り冗長度を各前記配列行に付加する第3誤り手段を有
    し、 前記トラック読取り手段は、各々の読み取られた第3冗
    長度および各配列行を分析し、読み取られた配列行の誤
    りをそれぞれ検出し、前記第3冗長度検出誤りを、前記
    読み取られた配列行の誤りに対する各エラー・ポインタ
    として表示する第3誤り検出手段を有し、前記トラック
    読取り手段は、フォーマットおよびデータの誤りを検出
    し、フォーマットおよびデータの誤りを指示する追加的
    エラー・ポインタを生成するフォーマット手段を有し、 前記インターリーブ解除手段の中では、前記ポインタを
    受け取り、前記第1誤り手段に接続されて、前記エラー
    ・ポインタを前記第1誤り手段に供給し、前記エラー・
    ポインタを前記読み取られた第1冗長度と結合し、前記
    検索された配列のデータの誤り訂正機能を拡張するエラ
    ー・ポインタ手段が前記トラック読取り手段に接続され
    ている、請求項23に記載の誤り検出訂正装置。
  25. 【請求項25】前記生成配列の所定のデータ・バイトが
    前記データ・メモリから供給されていることを、前記イ
    ンターリーブ手段へ表示するためのカウントを提供し、
    制御手段が前記バイト・カウンタおよび前記データ・メ
    モリに接続され、前記バイト・カウンタを作動させて、
    各バイトが前記データ・メモリから前記インターリーブ
    手段へ転送されるごとに、前記カウントを増加させる、
    前記インターリーブ手段に接続されたバイト・カウンタ
    を有し、 前記データ・メモリは前記生成配列を記憶するためのア
    ドレス空間を有し、該アドレス空間は前記バイト・カウ
    ンタのカウント・モジュラスと等しいカウント・モジュ
    ラスのアドレス範囲を有しており、 前記生成配列の前記データを同時に受け取るトラックの
    並行本数を示す、前記インターリーブ手段に接続された
    トラック手段を有し、 論理手段が前記インターリーブ手段の中にあり、該論理
    手段は前記アドレス空間をX,YおよびZのアドレス要
    素に分割し、 X手段が前記論理手段の中にあり、該X手段は前記Xア
    ドレス要素を一定数の範囲にし、 Z手段が前記論理手段の中にあり、該Z手段は、前記Z
    アドレス要素をモジュロ2Nとし、(ここでNは正の整
    数)、かつ前記Zアドレス要素を生成するため前記並行
    本数と前記生成配列の前記ブロック配列の番号、モジュ
    ロ8とを加算する加算手段を有し、 Y手段が前記論理手段の中にあり、該Y手段は、前記Y
    アドレス要素を生成するため前記配列行を受け取る前記
    トラックの1つの現行の番号と前記並行本数との積を加
    算し、 マルチプレクサ手段が前記論理手段の中にあり、該マル
    チプレクサ手段は、前記X,Y,およびZアドレス部分
    をデータ・メモリ・アドレスとして1つの値に結合し、
    それによってデータ・バイトが所定の順序で取り出さ
    れ、各配列行内で前記ブロック行が折返しシフトされ、
    前記データ・バイトの順次的な流れが前記所定の順序に
    なるようにする、請求項23に記載の誤り検出訂正装
    置。
  26. 【請求項26】前記Z手段は、前記ブロック配列の1つ
    へのデータ・メモリ・アクセスを表す一連の増分したバ
    イト・カウントを前記バイト・カウンタ手段から受け取
    って次にアクセスするブロック配列のアドレスとし、 前記Z手段は、前記トラック手段に応答して4の並行本
    数を表示する4本トラック手段を有し、それによって現
    在のトラック数の値が倍にされ、4本トラックの部分合
    計が生成され、前記部分合計が前記加算手段に与えら
    れ、 ブロック配列手段が、前記データ・メモリの中のブロッ
    ク配列が次にアクセスされるブロック配列であることを
    示す現行ブロック配列番号を前記加算手段に与え、それ
    によって前記4本トラック部分合計が加算されて、前記
    Zアドレス部分が生成され、 前記論理手段の中の8本トラック手段が、前記トラック
    手段に応答して8、16、または32の並行本数を表示
    し、それによって現行トラックの番号値が前記加算手段
    へ与えられ、 前記加算手段は、前記現行トラック番号値を次にアクセ
    スされる前記現行ブロック配列番号に加算して前記Zア
    ドレス部分を生成し、 前記Y手段は、並行本数4、8、16、または32を表
    示する前記トラック手段にそれぞれ応答して、前記現行
    トラック番号にそれぞれ8、4、または2を掛けて前記
    Yアドレス部分を生成する、請求項25に記載の誤り検
    出訂正装置。
  27. 【請求項27】繰返し手段が前記配列組立手段と前記第
    1誤り手段と前記集合手段と前記インターリーブ手段に
    接続され、前記繰返し手段は、前記生成配列の2つを作
    成し、かつ前記誤り冗長度のすべてを生成し、前記2つ
    の生成配列のそれぞれにおける各前記配列行の行を折返
    しシフトし、前記繰返し手段はグループ手段を有し、該
    グループ手段は、並行トラックを複数のグループにグル
    ープ分けして各グループが同じ数の前記トラックを含む
    ようにしかつ連続したグループを奇数および偶数グルー
    プとして、トラックの横方向で奇数グループと偶数グル
    ープが交互に並ぶようにし、 前記グループ手段は、前記配列の各々から1つの集合を
    トラックの各々に記録する交替手段を有し、 前記交替手段は前記インターリーブ手段を作動させる切
    替手段を有し、それによってまず生成配列の第1のもの
    からの集合が処理され、次に配列の第2のものからの集
    合が処理される連続処理が行われ、配列の第1のものか
    らの集合が奇数グループの前記トラックの最初に記録さ
    れ、配列の第2のものからの集合が偶数のグループの前
    記トラックの最初に記録される、請求項19に記載の誤
    り検出訂正装置。
JP6130055A 1993-06-14 1994-06-13 データ記録読取方法および装置 Expired - Lifetime JP2614415B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US075944 1993-06-14
US08/075,944 US5369652A (en) 1993-06-14 1993-06-14 Error detection and correction having one data format recordable on record media using a diverse number of concurrently recorded tracks
US75944 1993-06-14

Publications (2)

Publication Number Publication Date
JPH0757401A JPH0757401A (ja) 1995-03-03
JP2614415B2 true JP2614415B2 (ja) 1997-05-28

Family

ID=22128925

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6130055A Expired - Lifetime JP2614415B2 (ja) 1993-06-14 1994-06-13 データ記録読取方法および装置

Country Status (2)

Country Link
US (1) US5369652A (ja)
JP (1) JP2614415B2 (ja)

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3259323B2 (ja) * 1992-04-13 2002-02-25 ソニー株式会社 デ・インターリーブ回路
US5510912A (en) * 1993-08-09 1996-04-23 International Business Machines Corporation Method and apparatus for modulation of multi-dimensional data in holographic storage
KR100362072B1 (ko) * 1994-12-23 2003-02-11 코닌클리케 필립스 일렉트로닉스 엔.브이. 송신신호수신기및수신방법
US5815482A (en) * 1996-01-22 1998-09-29 T Squared G, Inc. Multibyte random access mass storage/memory system
US5940863A (en) * 1996-07-26 1999-08-17 Zenith Electronics Corporation Apparatus for de-rotating and de-interleaving data including plural memory devices and plural modulo memory address generators
US6111708A (en) * 1996-12-11 2000-08-29 Tecmar Technologies, Inc. Apparatus and method for detecting read/write gap failure and switching to an alternative read/write gap
US5938763A (en) * 1997-08-06 1999-08-17 Zenith Electronics Corporation System for transposing data from column order to row order
US6367047B1 (en) * 1998-10-20 2002-04-02 Ecrix Multi-level error detection and correction technique for data storage recording device
US6493835B1 (en) 1999-09-30 2002-12-10 Storage Technology Corporation System and method for detecting media and transport degradation during multichannel recording
US7356752B2 (en) * 2000-03-14 2008-04-08 Comtech Telecommunications Corp. Enhanced turbo product codes
WO2001076079A2 (en) * 2000-04-04 2001-10-11 Comtech Telecommunication Corp. Enhanced turbo product code decoder system
US7062702B2 (en) * 2001-03-14 2006-06-13 Hewlett-Packard Development Company, L.P. Efficient parity operations
US7107505B2 (en) 2001-03-27 2006-09-12 Comtech Aha Corporation Concatenated turbo product codes for high performance satellite and terrestrial communications
US8656246B2 (en) * 2001-04-16 2014-02-18 Qualcomm Incorporated Method and an apparatus for use of codes in multicast transmission
US6978414B2 (en) * 2001-07-17 2005-12-20 Hewlett-Packard Development Company, L.P. Method and apparatus for protecting against errors occurring in data storage device buffers
US6883122B2 (en) * 2001-07-31 2005-04-19 Hewlett-Packard Development Company, L.P. Write pass error detection
US6958873B2 (en) * 2001-07-31 2005-10-25 Hewlett-Packard Development Company, L.P. Data rewrite control in data transfer and storage apparatus
US7042667B2 (en) * 2001-07-31 2006-05-09 Hewlett-Packard Development Company, L.P. Data storage
DE10243786A1 (de) * 2002-09-20 2004-04-01 Siemens Ag Verfahren zur mehrfachen Codierung einer Datenbitfolge, zur Decodierung dieser Datenfolge und Anordnung zur Decodierung
KR100518295B1 (ko) * 2003-03-14 2005-10-04 삼성전자주식회사 디지털 통신 시스템의 디인터리빙장치 및 그의디인터리빙방법
EP1953754A3 (en) * 2003-06-02 2011-04-06 Panasonic Corporation Error correction method and apparatus for interleaved data
US7389468B2 (en) * 2004-09-20 2008-06-17 International Business Machines Corporation Writing and reading of data in probe-based data storage devices
US7269687B2 (en) * 2004-08-20 2007-09-11 Quantum Corporation Bounding defective regions of a tape storage medium
US7984359B2 (en) * 2006-05-01 2011-07-19 Seagate Technology, Llc Correction of data errors in a memory buffer
JP5056081B2 (ja) * 2007-03-08 2012-10-24 日本電気株式会社 磁気テープ装置及びデータ記録方法
US7787203B2 (en) * 2008-09-29 2010-08-31 International Business Machines Corporation Error correction mapping
US8250299B2 (en) * 2009-05-20 2012-08-21 International Business Machines Corporation Multi-host concurrent writing to magnetic tape
JP5692780B2 (ja) * 2010-10-05 2015-04-01 日本電気株式会社 マルチコア型誤り訂正処理システムおよび誤り訂正処理装置
RU2480918C1 (ru) * 2011-11-18 2013-04-27 Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Ульяновский государственный технический университет" Адаптивный кодер гиперкода размерности 3d
US9792928B2 (en) * 2012-11-02 2017-10-17 Hewlett Packard Enterprise Development Lp Tape storage device having at least one redundant read data element
JP2014135659A (ja) * 2013-01-10 2014-07-24 Fujitsu Ltd 伝送装置及び伝送方法
JP5766266B2 (ja) * 2013-12-20 2015-08-19 日立マクセル株式会社 磁気テープ装置、データ記録方法、磁気テープ
CN104849733A (zh) * 2015-05-05 2015-08-19 中国人民解放军国防科学技术大学 一种利用冗余法对导航电文误码进行纠错的方法
US11237736B1 (en) * 2019-10-14 2022-02-01 Meta Platforms, Inc. Efficient data recovery for tape storage system
CN111078460B (zh) * 2019-11-18 2020-08-25 北京中电兴发科技有限公司 一种快速纠删码计算方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3985016A (en) * 1969-12-10 1976-10-12 Shimadzu Seisakusho Ltd. Chromatograph
US3868632A (en) * 1972-11-15 1975-02-25 Ibm Plural channel error correcting apparatus and methods
US3800281A (en) * 1972-12-26 1974-03-26 Ibm Error detection and correction systems
US4052698A (en) * 1975-03-17 1977-10-04 Burroughs Corporation Multi-parallel-channel error checking
USRE33332E (en) * 1983-03-12 1990-09-11 Sony Corporation Apparatus for correcting errors
US4727547A (en) * 1984-07-18 1988-02-23 Willi Studer Method and apparatus for decoding
JPH07111815B2 (ja) * 1984-07-23 1995-11-29 株式会社日立製作所 デイジタル信号記録方式
US4796110A (en) * 1986-02-18 1989-01-03 Irwin Magnetic Systems, Inc. System and method for encoding and storing digital information on magnetic tape
JP2526875B2 (ja) * 1986-11-05 1996-08-21 ソニー株式会社 デイジタル情報記録装置
US4908826A (en) * 1988-01-05 1990-03-13 Digital Equipment Corporation Stored data error correction system
DE3804175A1 (de) * 1988-02-11 1989-08-24 Broadcast Television Syst Verfahren und schaltungsanordnung zum einschreiben und auslesen eines digitalen halbleiterspeichers fuer videosignale
JPH02105730A (ja) * 1988-10-14 1990-04-18 Sony Corp データ記録方法
US5172381A (en) * 1989-04-27 1992-12-15 International Business Machines Corporation Enhanced data formats and machine operations for enabling error correction

Also Published As

Publication number Publication date
JPH0757401A (ja) 1995-03-03
US5369652A (en) 1994-11-29

Similar Documents

Publication Publication Date Title
JP2614415B2 (ja) データ記録読取方法および装置
AU640197B2 (en) Direct access storage device with independently stored parity
US5271012A (en) Method and means for encoding and rebuilding data contents of up to two unavailable DASDs in an array of DASDs
EP1125294B1 (en) Multi-level error detection and correction technique for data storage recording device
KR0163566B1 (ko) 에러 정정 방법
AU604836B2 (en) Method and apparatus for error correction
US5467360A (en) Storage device for reversibly storing digital data on a multitrack storage medium, a decoding device, an information reproducing apparatus for use with a storage medium, and a unitary storage medium for use with such a storage device decoding device and/o
JP2533076B2 (ja) エラ−訂正のための符号化方法
JPH0812614B2 (ja) データ・ブロックを訂正する装置
JPH07168675A (ja) データ記憶システム及びその動作方法
SE461309B (sv) Saett och anordning foer kodning av en digital informationssignal samt saett och anordning foer oeverfoering av data
JPH0731580B2 (ja) 可変長レコードへのアクセス方法、単一パス同期型アクセス保証方法、及びアレイ制御装置
KR100537577B1 (ko) 스트리밍 오디오비주얼 데이터를 디스크 드라이브에기록하는 방법
JPH0142069B2 (ja)
KR20040014909A (ko) 크로스 인터리브 리드 솔로몬 코드 정정
JP2000010807A (ja) ディジタルデータ再生装置
JPS6338897B2 (ja)
KR100691065B1 (ko) 고밀도 광 기록매체에서의 데이터 에러정정 코드생성방법과 이에 의한 에러 정정 방법, 그리고 그 장치
JP2605270B2 (ja) エラー訂正及びチエツク装置
JP2730892B2 (ja) ディスク記録方法
KR100200810B1 (ko) 오류 정정부호화 방법 및 장치
JP2702950B2 (ja) Pcm信号記録再生装置
JPH08509351A (ja) セミサイクリックコードに基づく誤り補正可能データ伝送方法及び装置
JP2600672B2 (ja) 誤り訂正符号化方法及び誤り訂正符号化装置
JPS62221223A (ja) デ−タ伝送方法