JP2004502264A - 連結された誤り訂正コードを有する磁気記録チャンネル内で不等保護により符号化する方法と装置 - Google Patents
連結された誤り訂正コードを有する磁気記録チャンネル内で不等保護により符号化する方法と装置 Download PDFInfo
- Publication number
- JP2004502264A JP2004502264A JP2002505618A JP2002505618A JP2004502264A JP 2004502264 A JP2004502264 A JP 2004502264A JP 2002505618 A JP2002505618 A JP 2002505618A JP 2002505618 A JP2002505618 A JP 2002505618A JP 2004502264 A JP2004502264 A JP 2004502264A
- Authority
- JP
- Japan
- Prior art keywords
- ecc
- code
- bit
- data
- code word
- 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.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/29—Coding, 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
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/12—Formatting, e.g. arrangement of data block or words on the record carriers
- G11B20/1217—Formatting, e.g. arrangement of data block or words on the record carriers on discs
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/14—Digital recording or reproducing using self-clocking codes
- G11B20/1403—Digital recording or reproducing using self-clocking codes characterised by the use of two levels
- G11B20/1423—Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code
- G11B20/1426—Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code conversion to or from block codes or representations thereof
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/18—Error detection or correction; Testing, e.g. of drop-outs
- G11B20/1833—Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error 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/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/151—Cyclic 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/1515—Reed-Solomon codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/29—Coding, 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/2903—Methods and arrangements specifically for encoding, e.g. parallel encoding of a plurality of constituent codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/35—Unequal or adaptive error protection, e.g. by providing a different level of protection according to significance of source information or by adapting the coding according to the change of transmission channel characteristics
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/12—Formatting, e.g. arrangement of data block or words on the record carriers
- G11B20/1217—Formatting, e.g. arrangement of data block or words on the record carriers on discs
- G11B2020/1218—Formatting, e.g. arrangement of data block or words on the record carriers on discs wherein the formatting concerns a specific area of the disc
- G11B2020/1222—ECC block, i.e. a block of error correction encoded symbols which includes all parity data needed for decoding
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/18—Error detection or correction; Testing, e.g. of drop-outs
- G11B20/1833—Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information
- G11B2020/1836—Error 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
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Mathematical Physics (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Error Detection And Correction (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
少なくとも1つのデータ・ワードのブロックをマッピングして誤り訂正コード(ECC)コード・ワードを生成する、データ・ワードを符号化する符号器および方法を与える。ECCコード・ワードは、境界により分離される複数の多重ビットECC記号で定義される。境界に対するビット・パターンの相対的位置に基づいて、ビット・パターンがECCコード・ワード内で起こるのを制約する。
Description
【0001】
本出願は、米国暫定出願番号第60/214,699号、2000年6月27日出願、「連結された誤り訂正コードを持つ磁気記録チャンネルのための不等保護を含む符号化(CODING WITH UNEQUAL PROTECTION FOR MAGNETIC RECORDING CHANNELS WITH CONCATENATED ERROR CORRECTION CODES)」からの優先権を請求する。
【0002】
(発明の分野)
本発明は符号化システムに関する。詳しく述べると、本発明はディスク・ドライブやその他のデータ記憶装置などの記録チャンネル内の符号化装置に関する。
【0003】
(発明の背景)
ディジタル通信システムの分野では、ディジタル情報は送信機から受信機にチャンネルを通して伝送される。「チャンネル」とは、記録媒体や、電話線や、電磁スペクトラムなどの種々の媒体を含む一般化された用語である。磁気ディスク・ドライブなどのデータ記憶装置ではチャンネルは記憶媒体を含み、ディジタル情報は記憶媒体に送られて或る時間記憶された後、回復されて受信機に送られる。
【0004】
一般的な磁気ディスク・ドライブは、ハブまたはスピンドル上に取り付けられて回転する1個以上の硬いディスクを含む。各ディスクは流体式ベアリングで形成される関連するヘッドと変換器を有し、ディスクの表面と通信する。電気機械式アクチュエータは、データ・ヘッドをディスク表面上で半径方向に動かしてトラックを探索し、変換器をディスク表面上の所望のトラックの真上に保持してトラック追跡を行う。ドライブ・コントローラはホスト・システムから受けた命令に基づいてディスク・ドライブを制御して、ディスクから情報を検索し、またディスク上に情報を記憶する。ドライブ・コントローラは種々のサブシステムを含む。例えば、ホスト・システムと通信するための「ホスト・インターフェース」や、アクチュエータを制御するための「サーボ・サブシステム」や、記憶媒体上にデータを記録するための「書き込みチャンネル」や、記憶媒体から記録されたデータを受けるための「読み取りチャンネル」などである。
【0005】
情報は一般にディスク表面上の同心データ・トラック内に記憶される。変換器を流れる電流の方向を制御することにより、選択されたデータ・トラック内のディスク表面上に磁束反転を符号化する。非ゼロ復帰反転(NRZI)符号化と呼ばれる符号化方式では、ディジタルの「1」はデータ・トラック内の1つの磁気領域から次の磁気領域への磁束反転で表され、ディジタルの「0」は1つの磁気領域から次の磁気領域への磁束反転がないことで表される。
【0006】
ディスクからデータを検索するとき、サーボ・サブシステムは電気機械式アクチュエータを制御してデータ・ヘッドを所望のデータ・トラック上に飛ばし、データ・トラック内に記憶されている磁束反転を検出し、かかる磁束反転に基づいて読み取り信号を生成する。一般にこの読み取り信号を読み取りチャンネルで調整して復号し、磁束反転で表されるデータを回復する。一般的な読み取りチャンネルは、自動利得制御回路と、低域フィルタと、アナログ・ディジタル変換器またはサンプラと、シーケンス検出器と、復号器とを含む。
【0007】
読み取りチャンネル内のシーケンス検出器としては、これまでビタビ(Viterbi)検出器が用いられてきた。検出器の入力が信号と加算的な白色、ガウス雑音から成るとき、また一般的な分岐規準(検出器に与えられる信号内の誤りの2乗)が用いられるとき、ビタビ検出器は最尤(ML)シーケンス検出器として動作する。次に、検出されたビット・シーケンスを復号器に送り、復号して元のユーザ・データを生成する。
【0008】
ディスク・ドライブ記憶チャンネルを含む全てのチャンネルは、搬送する信号内に雑音を生じる。チャンネル雑音に起因する信号誤りを検出しまた場合によっては訂正するため、多数の符号化方式が開発されている。かかる符号化方式は、多数のデータ・ビットで形成されるユーザ・データ・ワードを多数のコード・ビットで形成されるコード・ワードに変換する。コード・ワードに与えられる符号化制約は、誤り事象を生成しやすいビット・シーケンスの発生を防ぐように設計され、チャンネルから受けた信号内の誤りを検出しまた場合によっては訂正することができる。
【0009】
ユーザ・データ・ビット数とコード・ビット数との平均比率(m/n)をコードのコード・レートと呼ぶ。一般に、受信チャンネル内の誤りを検出して訂正する能力はコード・レートが低いほど高い。なぜなら、コード・レートが低いということはコード・ワード内の冗長情報の量が大きいことを意味するからである。しかし、符号器がビットを追加するほど、チャンネルを通して信号を送信するのに必要な時間とエネルギーは増加する。
【0010】
複数のコード制約方式が提案されている。例えば、ディスク・ドライブでは、磁気媒体を回転させるスピンドル・モータの回転速度は時間と共に変化する。このため、読み取り信号電圧パルスの間の時間間隔は不均一になる。読み取りタイミング・クロックの位相と周波数を読み取り信号電圧パルスの位相と周波数に同期させるには、位相同期ループ(PLL)が用いられる。PLLを定期的に更新するため、或るコードを用いて、読み取り信号内の連続した「ゼロ」の数が或る最大数「k」より大きくならないように制限してよい。この種のコードを、「k」制約を持つランレングス制限(RLL)コードと呼ぶ。「k」の値が小さくなるほどPLLの性能は良くなるが、「k」の値が小さくなるほどこのコードを実現するのが難しくなる。
【0011】
またこのコードは、符号化されたビット・ストリーム内の連続した「1」の数を制限して記号間の干渉の影響を制限する。記号間の干渉は、送信信号内の連続した遷移が互いに干渉するときに起こる。かかるコードを、「j」制約を持つ最大遷移実行(maximum trasition run)(MTR)コードと呼ぶ。ただし、「j」はチャンネル信号内に許される連続した遷移の最大数である。例えば、3つ以上の連続した遷移の発生を防ぐには、MTR制約j=2を持つコードを設計してよい。MTRコードを用いると記号間の干渉は減少するが、多数の利用可能なコード・ワードが除外されるので、高いコード・レートを持つMTR制約を実現することは困難であり、場合によっては不可能である。
【0012】
磁気記録チャンネルの中には誤り訂正コード(ECC)により更に保護を与えるものがある。データの連続したブロック(符号化されたもの、または符号化されないもの)をマッピングして、データ・フィールドおよびECCフィールドを有する連続した誤り訂正コード・ワードを生成する。データのブロックをデータ・フィールドにマッピングし、これを多数の多重ビットECC記号に分割する。データ・フィールド内のECC記号を或る多項式関数に与えると、ECCフィールドを形成する「パリティ・ビット」と呼ばれる追加の多重ビットECC記号を生成する。データ・フィールドに連結される追加のECC記号の数は、訂正することが可能なECCコード・ワード内のECC記号の数を決定する。例えば、Reed−Solomon方式のECCでECCコード・ワード内の1つの記号を訂正するには、2つの追加のECC記号を必要とする。ECCフィールド内で連結する24の追加のECC記号を有するECCコード・ワードは、ECCコード・ワード内で最大12記号の誤り事象を訂正することができる。
【0013】
この場合は、読み取りチャンネル内でECC復号器を用いてECCコード・ワード内の誤りを検出して訂正する。送信されたECCコード・ワード内の対応する記号と一致しない受信されたECCコード・ワード内の記号毎に、受信されたコード・ワード内の他の記号と、追加の記号を生成するのに用いられた多項式関数とに基づいて、ECC復号器は正しい記号を決定する。
【0014】
かかる符号化方式は、いくつかの誤り事象の発生を防ぎ、残りのほとんどの誤り事象を訂正する手段を与えるのに有効であるが、高いコード・レートで実現するのは困難である。これはコードの効率と記憶チャンネルの速度を制限する。本発明はかかる問題に対処して、従来の技術より優れた方法を提供する。
【0015】
(発明の概要)
本発明の1つの形態は、データ・ワードを符号化する方法に関する。すなわち、少なくとも1つのデータ・ワードのブロックをマッピングして誤り訂正コード(ECC)コード・ワードを生成する。ECCコード・ワードは、境界により分離された複数の多重ビットECC記号と定義される。境界に対するビット・パターンの相対的位置に基づいて、ビット・パターンがECCコード・ワード内で起こるのを制約する。
【0016】
本発明の別の形態は、連続したデータ・ワードを符号化してそれぞれの連続したコード・ワードを生成する符号器に関する。この符号器は、データ・ワード入力と、コード・ワード出力と、第1の符号器ユニットを含む。第1の符号器ユニットは、データ・ワード入力に受けた各連続したデータ・ワードを第1のコードに従ってマッピングして、コード・ワード出力でそれぞれの連続したコード・ワードを生成する。第1のコードは、各コード・ワード内の多重ビット誤り訂正コード(ECC)記号の間の境界を識別し、境界から離れた各コード・ワード内のビット位置とは異なるコード制約を、境界に近い各コード・ワード内のビット位置に与える。
【0017】
本発明の別の形態は、変換器と符号器を含むディスク・ライブ記憶チャンネルに関する。変換器はデータ記憶ディスクと通信することができる。符号器は変換器に結合して、データを或るコードに従って符号化して、多重ビットECC記号で形成する連続した誤り訂正コード(ECC)コード・ワードを生成する。このコードは、多重ビットECC記号の間の境界に対するビット・パターンの相対的位置に基づいて、ビット・パターンが各ECCコード・ワード内で発生するのを防ぐ。次に、符号器はECCコード・ワードをコード・ワード・ストリームとして変換器に送信する。
【0018】
本発明の更に別の形態は、変換器と復号器を含むディスク・ドライブ記憶チャンネルに関する。変換器はデータ記憶ディスクと通信することができる。復号器は変換器に結合し、変換器から読み取り信号を受け、読み取り信号により表される連続した誤り訂正コード(ECC)コード・ワードを或るコードに従って復号して連続したデータ・ワードを生成する。各ECCコード・ワードは複数の多重ビットECC記号を含み、このコードは、多重ビットECC記号の間の境界に対するビット・パターンの相対的位置に基づいて、各ECCコード・ワード内のビット・パターンを制約する。
【0019】
(例示の実施の形態の詳細な説明)
図1は、本発明が有効なディスク・ドライブ100の斜視図である。ディスク・ドライブ100は、ベース102とトップ・カバー(図示せず)を持つハウジングを含む。ディスク・ドライブ100は、ディスク・クランプ108によりスピンドル・モータ(図示せず)上に取り付けられたディスク・パック106を更に含む。ディスク・バック106は複数の個別のディスクを含み、中心軸109の回りに共に回転するように取り付けられる。各ディスク表面には関連するディスク・ヘッド・スライダ110があり、スライダ110はディスク・ドライブ100に取り付けられてディスク表面と通信する。図1に示す例では、スライダ110はサスペンション112により支持され、サスペンション112はアクチュエータ116のトラック・アクセシング・アーム114に取り付けられている。図1に示すアクチュエータは、回転移動コイル・アクチュエータと呼ばれる型であって、一般に118で示す音声コイル・モータ(VCM)を含む。音声コイル・モータ118は、ヘッド110を取り付けたアクチュエータ116を回転軸120の回りに回転させて、ディスク内径124とディスク外径126の間の弓形経路122に沿ってヘッド110を所望のデータ・トラックの上に位置決めする。音声コイル・モータ118は、ヘッド110とホスト・コンピュータ(図示せず)により生成される信号に基づいて、内部回路128内のサーボ電子回路により駆動される。
【0020】
内部回路128内の書き込み回路は、記憶すべきデータを符号化して連続したコード・ワードを生成し、これを予備符号化して非ゼロ復帰反転(NRZI)書式(または、NRZ書式)を生成し、変調して、直列アナログ書き込み信号を形成する。ヘッド110上の書き込み変換器は、アナログ書き込み信号に基づいてディスク表面上の磁気層内に磁束反転を符号化する。読み取り動作中は、へッド110内の読み取り変換器は磁束反転を検出して直列アナログ読み取り信号を生成する。アナログ読み取り信号は直列ディジタル信号に変換され、内部回路128内の検出器および復号器回路に与えられて、回復されたデータ信号が生成される。
【0021】
図2は、本発明に用いられる一般化された通信装置138のブロック図である。図1のディスク・ドライブでは、通信装置138はヘッド110と、ディスク106と、回路128内の内部論理により形成される。通信装置138は符号器回路139を含み、符号器回路139は第1のビット・レベル符号器140と、記号レベル誤り訂正コード(ECC)符号器144と、マルチプレクサ148と、第2のビット・レベル符号器150を含む。ビット・レベル符号器140は連続したデータ・ワード142を受け、この連続したデータ・ワードを或るコードに従って符号化して連続したデータ・コード・ワード143を生成する。各データ・ワード142は、任意の数のビットを含んでよい。ビット数が大きいほど符号器140が達成するコード・レートは大きい。前記コードは連続したデータ・コード・ワード143をビット・レベルで制約して、チャンネル160内に或る共通の誤り事象の原因となることが知られているビット・パターンを持つコード・ワードが発生するのを防ぐ。
【0022】
例えば、前記コードは「k」制約を持つラン・レングス制限(RLL)コードを含んでよい。「k」制約は、読み取り信号内の連続したゼロの数が最大数「k」より大きくならないよう制限する。または前記コードは、符号化されたビット・ストリーム内の連続した1の数を制限して、送信信号内の連続した遷移が互いに干渉するときに起こる記号間干渉の影響を制限する。かかるコードを、「j」制約を持つ最大遷移実行(MTR)コードと呼ぶ。ただし、「j」はチャンネル信号内に許される連続した遷移の最大数である。符号器140は、上に述べたコードの種類に加えてまたは代わりに、他の種類のコードを用いることができる。後で詳細に説明する1つの実施の形態では、このコードは、多重ビットECC記号内で各ビットが有する相対的位置に基づいて、各データ・コード・ワード142内の異なるビット位置に異なる制約を与える。これには、符号器140が実現するコードが、各データ・コード・ワード143内のECC記号境界を識別する必要がある。
【0023】
符号器140はブロック符号器を含んでよく、または状態で駆動してよく、全てのコード・ワード143を注意して選択して、共通の誤り事象の原因となるコード・ワードが発生するのを防ぐ。符号器140は組み合わせ論理で実現してよく、または各ユーザ・データ・ワードとその対応するコード・ワードの間の変換を行うルックアップ・テーブルを持つソフトウエアで実現してもよい。その他のハードウエアやソフトウエアを用いて実現してもよい。
【0024】
符号器140が生成した連続したデータ・コード・ワード143は、マルチプレクサ148の一方の入力とECC符号器144に入り、この両者はデータ・コード・ワード143の連続したブロック(またはセクタ)を符号化して、連続したECCコード・ワード(ECCブロックまたはセクタとも呼ぶ)149をマルチプレクサ148の出力で生成する。各ECCコード・ワード149は、それぞれ1つ以上の多重ビットECC記号で形成するデータ・フィールドとECCフィールドを含む。マルチプレクサ148はデータ・コード・ワード143の各ブロックをマッピングして、対応するECCコード・ワード149のデータ・フィールドを生成し、1つ以上のECC記号をデータ・フィールド内に形成する。
【0025】
ECC符号器144は、データ・フィールド内のECC記号に基づいてECCフィールドのための追加のECC記号152を生成する。例えば、追加のECC記号は、データ・フィールド内のECC記号を多項式関数に与えて生成してよい。ECCフィールド内で連結された追加のECC記号の数は、各ECCコード・ワード内の訂正可能なECC記号の全数を決定する。例えば、1つの特定のECCは、ECCコード・ワード内の訂正可能なECC記号毎に2つの追加のECC記号を必要とする。任意の種類のECC(例えば、Reed−Solomon ECC)を用いてよい。
【0026】
ビット・レベル符号器150は、追加のECC記号152を符号化して、符号器140がデータ・コード・ワード142に与えたのと同じコード制約を与える。この場合も、このコードは、ECC記号内の各ビットの相対的位置に基づいて異なるビット位置に異なる制約を与える。1つの実施の形態では、各ECC記号を符号化して対応する符号化されたECC記号146を生成する。各追加のECC記号152内のビット数は各データ・ワード142内のビット数より少ないので、ビット・レベル符号器150のコード・レートはビット・レベル符号器140のコード・レートより小さい。別の実施の形態では、複数の追加のECC記号を一緒に符号化して対応するコード・ワードを生成する。次に、得られた符号化されたECC記号146をマルチプレクサ148の他方の入力に与える。
【0027】
マルチプレクサ148は、データ・コード・ワード143の各ブロックをマッピングして対応するECCコード・ワード149のデータ・フィールドを生成し、またマルチプレクサの入力を時間多重化することにより、追加の符号化されたECC記号146の各集合をマッピングして対応するECCコード・ワード149のECCフィールドを生成する。別の実施の形態では、他の構造と方法を用いて、追加の符号化されたECC記号146を対応するECCコード・ワード149のデータ・フィールドに連結してよい。
【0028】
並直列変換器155は、連続したECCコード・ワード149を受け、各ECCコード・ワード149を直列表現に変換し、この直列表現を連結して、ECCコード・ワード・ビット154の直列ストリームを生成する。送信機/プレコーダ156は、直列コード・ワード・ストリーム154を受け、チャンネルからの信号を回復するのに用いられる検出器の種類に関して最適になるようにこのシーケンスを調整する。送信機/プレコーダ156は、符号化された書き込み信号158を生成してチャンネル160に与える。
【0029】
ディスク・ドライブ100では、チャンネル160はヘッド110内の書き込み変換器と、デスク・パック106と、ヘッド110内の読み取り変換器を含む。符号化された書き込み信号は、書き込み変換器によりディスク表面に記憶される。読み取り動作中は、読み取り変換器は記憶され符号化された情報をディスク表面から読み取り、符号化された情報を読み取り信号164として受信機/検出器162に与える。受信機/検出器162は、読み取り信号164を増幅して濾波し、複数の既知の検出方法の1つを用いて、読み取り信号から符号化された情報を回復する。例えば、受信機/検出器162は、ビタビ検出器、決定フィードバック等化(DFE)、決定フィードバックによる固定遅延ツリー探索(FDTS/DF)、回復状態(Reduced State)シーケンス検出(RSSE)を用いてよい。チャンネル160からの信号を検出して増幅した後、受信機/検出器162は回復されたコード・ワード・ビットのシーケンス165を生成して直並列変換器163に与える。
【0030】
直並列変換器163は、ビットをグループ化してECCコード・ワードを生成し、ECCコード・ワードを直列書式から並列書式に変換する。連続して回復されたECCコード・ワード166は、符号器139が生成したECCコード・ワードの長さに対応する長さを有する。直並列変換器163は、連続して回復されたECCコード・ワード166をECC復号器および訂正回路168に並列書式で出力する。回路168は、符号器150が用いた符号化規則の逆を用いてECCフィールド内の追加のECC記号を復号して元のECC記号を生成し、ECCコード・ワード166内のECC記号とECC符号器144が用いた多項式関数とに基づいて、誤りを含むECC記号があるかどうか判定する。誤りを含むECC記号の数が回路168で訂正することが可能な記号の最大数より大きくない限り、元の送信ECC記号は回復される。
【0031】
次に、回復されたECCコード・ワードからデータ・フィールドを取り出してデータ・コード・ワード170の元のブロックを回復し、これを復号器172に与える。ビット・レベル復号器172は、符号器140が用いた符号化規則の逆を用いて、連続したデータ・コード・ワード170を復号してそれぞれのデータ・ワード174を生成する。
【0032】
上に述べたように、ビット・レベル符号器140および150は、各ECC記号内の異なるビット位置に関して一様でない誤り保護を与える。1つの実施の形態では、各ECC記号の中央付近のビット位置に比べてECC記号境界の近くのビット位置に対して一層多くの誤り保護を与える。これは、各ECC記号の「外側の」ビット位置にコード制約の1つの集合を与え、各ECC記号の「内側の」ビット位置にコード制約の別の集合を与えることにより行う。
【0033】
これは、ECC復号器および訂正回路168の誤り訂正能力に大きな影響を与える誤り事象に対して大きな保護を与える。符号器140および150が用いるコードは、ECC記号境界をまたがない誤りに比べてECC記号境界をまたぐ誤りに対して一層大きな保護を与える。ECC記号境界をまたぐ誤り事象は、2つの連続したECC記号内に誤りを生じる。かかる多重記号誤り事象が発生するのを防ぐことにより、各ECCコード・ワード内に存在する誤りを含むECC記号の全数が減り、回路168が所定のECCコード・ワード内の全てのECC記号を回復できる可能性が大きくなる。
【0034】
また、或るビット・パターンが起こることを各ECC記号の「内側の」ビット位置では許すが「外側の」ビット位置では許さないことにより、比較的高いコード・レートを保持することができる。なぜなら、ECC記号境界に影響を与えるビット・パターンだけが制約されるからである。したがって、使用するビット・パターンの可能な全数を一層大きくすることができる。
【0035】
磁気記録チャンネルでは、最も起こりやすい誤り事象は1ビットと3ビットの誤り事象である。1ビット誤り事象は、常に1ビットECC記号誤りになる。3ビット誤り事象は、ECC記号境界をまたぐ場合には2つのECC記号誤りになることがある。1つの実施の形態では、符号器140および150はECC記号境界での「3ビット」誤り事象を除くために境界MTRコードを用いる。このコードは、ECC記号境界で中央の遷移を行う3ビットを生成するような2つのNRZパターン(または1つのNRZIパターン)を除去する。
【0036】
図3−1と図3−2は、符号器140および150が発生を防ぐ違法のNRZビット・パターンを含むECCコード・ワードの部分を示す図である。上に述べたように、各ECCコード・ワードは、データおよびECCフィールド内で互いに連結する複数の多重ビットECC記号で形成する。図3−1において、ECCコード・ワード300は、10ビットのECC記号301および302(他にもあるが)を含み、その間に境界303を有する。ECCコード・ワード300内の各ECC記号は、1つ以上の「外側の」ビット位置304と1つ以上の「内側の」境界ビット位置306を有し、これらは互いに重なってよい。ECC記号301の「外側の」境界ビット位置の「01」とECC記号302の「外側の」境界ビット位置の「01」により形成されるNRZパターンは3遷移を含み、中央の遷移は境界303で起こる。図3−2では、ECCコード・ワード310はECC記号311および312(他にもあるが)を含み、その間に境界313を有する。図3−1に示すパターンと同様に、NRZパターン「1010」は3遷移を含み、中央の遷移は2つのECC記号311と312の間の境界313で起こる。符号器140および150はかかるパターンを、「外側の」境界ビット位置304では発生を防ぐが「内側の」ビット位置306では許す。
【0037】
図3−3と図3−4は、符号器140および150が発生を防がない複数の合法のNRZビット・パターンを含むECCコード・ワードの部分を示す図である。図3−3において、ECCコード・ワード320はECC記号321および322(他にもあるが)を含み、その間に境界323を有する。NRZパターン「10100」は3遷移を含むが、中央の遷移は「外側の」ビット・パターン304内の境界313で起こらない。図3−4では、ECCコード・ワード330はECC記号331および332(他にもあるが)を含み、その間に境界333を有する。図3−3に示すパターンと同様に、NRZパターン「00101」は3遷移を含むが、中央の遷移は2つのECC記号331と332の間の境界333で起こらない。
【0038】
符号器140および150で図3−1および図3−2に示すパターンを取り除き、復号器168および172で対応する制約を与えることにより、ECC記号境界での2つの可能な3ビット誤り事象と、ECC記号境界での3ビットを含む一層大きな誤り事象を全て除去することができる。単一のECC記号の内側のビット位置306で起こる3ビット誤り事象には同じ制約を与えない。したがって、ECC記号の境界の近くのビット位置では、ECC記号内のビット位置よりビット誤り率の確率が低い。
【0039】
全ての3ビット誤り事象を除去するMTRコードを用いるのは、コード・レートが大きいので不利である。なぜなら、3ビットを形成する全てのビット・パターンの発生を防ぐには、多数のコード・ビットを用いなければならないからである。本発明の上述の実施の形態では、ECC記号境界での全ての3ビット誤り事象の発生は防ぐが、残りの3ビット誤り事象は防がないので効率的な妥協が得られる。残りの3ビット誤り事象は単一ECC記号に限られるので、かかる誤り事象はECC復号器で訂正できる可能性が大きい。かかる誤りの発生をMTRコードによりビット・レベルで防ぐ必要はない。したがって、MTRコード制約を緩和して一層高いコード・レートを得ることができる。
【0040】
一例として、チャンネル160(図2に示す)が3ビット誤りだけを有すると仮定する。ECC符号器144は10ビット記号で形成し、ECC復号器168は、各ECCコード・ワード内の最大12のECC記号を訂正する能力を有すると仮定する。符号器140および150(これも図2に示す)が符号化を行わないとき、ECCコード・ワード内で7つの誤り事象が起こればECC能力を超える。この7つの誤り事象が全てECC記号境界で起こる場合は、14のECC記号が誤りを持つので、12のECC記号誤り能力を超える。ECCコード・ワード毎に1パリティ・ビットを用いる場合は、ECCコード・ワード内に8つの誤り事象が起こればECC能力を超える。境界MTRコード(ECC記号境界で3ビット誤りの発生を防ぐ)を用いてパリティがない場合、ECCコード・ワード内に13の誤り事象が起こればECC能力を超える。
【0041】
図4は、連結されたECCコードを有する符号化されたチャンネルと符号化されないチャンネルについて、X軸401に事象誤り率をとり、Y軸400にその関数として訂正されたビット誤り率をとってプロットしたグラフである。訂正されたビット誤り率は、訂正できないECCコード・ワード(セクタ)の数を、読み取ったビットの数で割った比である。線402は符号化されない例についての訂正されたビット誤り率を表し、線403は境界MTRで符号化された例についての訂正されたビット誤り率を表す。境界MTRで符号化された例は、符号化されない例に比べて訂正できないECCコード・ワードが明らかに少ない。
【0042】
図5は、本発明の1つの実施の形態において、符号器140が行う符号化プロセスを示す図である。ステップ500で、符号器140は符号化のための、連続したmビットのデータ・ワードを受ける。ステップ501で、符号器140は各連続したmビットのデータ・ワードを或るコードに従ってマッピングして、それぞれの連続したnビットのコード・ワードを生成する。このコードは、各コード・ワード内の、ECC符号器144が後で定義する多重ビットECC記号の間の境界を識別し、ECC境界から遠い各コード・ワード内のビット位置とは異なるコード制約をECC境界に近い各コード・ワード内のビット位置に与える。ステップ502で、符号器140は得られたコード・ワードをECC符号器144に出力する。
【0043】
図6は、本発明の一例において、符号器144および150が行うプロセスを示す流れ図である。ステップ600で、ECC符号器144は符号器140から符号化されたデータ・ワードのブロックを受ける。ステップ601で、ECC符号器144はこのデータ・ワードのブロックを対応するECCコード・ワードのデータ・フィールドに与え、これを複数の多重ビットECC記号に分割する。ステップ601で、データ・フィールド内のECC記号を多項式に与え、これを用いて追加のECC記号を生成してデータ・フィールドに連結する。ステップ603で、ビット・レベル符号器150は、追加のECC記号を或るコードに従ってマッピングして符号化されたECC記号を生成し、ビット・レベル符号器140が与えたのと同じ制約を与えて、ECC記号境界で3ビットが発生するのを防ぐ。ステップ604で、符号化されたECC記号をECCコード・ワードのECCフィールドに与えてデータ・フィールドに連結する。得られた符号化されたECCコード・ワードを書き込みチャンネル内の次の段階に出力する。
【0044】
図7は、本発明の一例に係る、符号器139を通るデータの流れを示す図である。符号器140(図2に示す)は、データ・ワードのブロック700を符号化して、それぞれ符号化されたデータ・ワードのブロック701を生成する。符号化されたデータ・ワードのブロック701をECCコード・ワード703のデータ・フィールド702に直接与える。データ・フィールド702は、複数の多重ビットECC記号に分割される。別の実施の形態では、ECC符号器144は符号化されたデータ・ワードのブロックに多項式関数を与えて、データ・フィールド702内にECC記号を生成する。符号化されたデータ・ワード701のブロックを多項式704にも与えて、追加のECC記号705を生成する。所望の誤り訂正コードを実現するのに任意の適当な多項式を用いてよい。次に符号器150は、追加のECC記号を符号化して符号化されたECC記号706を生成し、ECCコード・ワード703のECCフィールド708に与える。これは「系統的な」型の符号器の一例である。
【0045】
図8は、図2に示す符号器回路139の代わりに用いることが可能な、本発明の別の実施の形態に係る符号器回路800のブロック図である。符号器回路800は、記号レベルECC符号器802と、マルチプレクサ804と、ビット・レベル符号器806を含む。連続して入力されたデータ・ワード810のブロックをマルチプレクサ804の第1のデータ入力に与え、対応するECCコード・ワード812のデータ・フィールドにマルチプレクサ804の出力でマッピングする。この場合も、上に述べたように各ECCコード・ワードのデータフィールドを複数のECC記号に分割する。連続したデータ・ワードのブロック810をECC符号器802にも与え、データ・フィールド内のECC記号に基づいて、ECCフィールドのための追加のECC記号812を生成する。例えば、追加のECC記号は、データ・フィールド内のECC記号を多項式関数に与えて生成してよい。次に追加のECC記号をマルチプレクサ804の第2のデータ入力に与える。マルチプレクサ804は、追加のECC記号814の連続した集合を連続したECCコード・ワード812のECCフィールドに連結する。
【0046】
ビット・レベル符号器806は、各ECCコード・ワード812を受けて、図2の符号器140および150が与えたのと同じコード制約を与える。1つの実施の形態では、符号器806は、ECCコード・ワード812内の各ECC記号を符号化して対応する符号化されたECC記号を生成するブロック符号器である。この場合も、ECC記号内の各ビットの相対的位置に基づいて、コードは異なるビット位置に異なる制約を与える。各ECC記号内のビット数は各データ・ワード142(図2の)内のビット数より小さいので、符号化回路800の全コード・レートは符号化回路139の全コード・レートより小さい。符号化回路139では、各ECCコード・ワードの大多数のビットはデータ・ビットであり、ビット・レベル符号器140により一層高いレートで符号化される。少数のビットだけが符号器150によりECC記号ベースの低いレートで符号化される。本発明では他の符号化方式も用いてよい。
【0047】
要約すると、本発明の1つの形態は、データ・ワード142を符号化する方法に関する。すなわち、少なくとも1つのデータ・ワード142のブロック700をマッピングして誤り訂正コード(ECC)コード・ワード149,701を生成する。ECCコード・ワード149,701は、境界303,313,323,333により分離された複数の多重ビットECC記号301,302,311,312,321,322,331,332で定義される。境界303,313,323,333に対するビット・パターンの相対的位置304,306に基づいて、ビット・パターン(例えば、図3−1および3−2に示すもの)がECCコード・ワード149,701内で発生するのを制約する。
【0048】
本発明の別の形態は、連続したデータ・ワードを符号化してそれぞれの連続したコード・ワードを生成するための符号器139に関する。この符号器は、データ・ワード入力142と、コード・ワード出力143と、第1の符号器ユニット140を含む。第1の符号器ユニット140は、データ・ワード入力142に受けた各連続したデータ・ワードを第1のコードに従ってマッピングして、コード・ワード出力143でそれぞれの連続したコード・ワードを生成する。この第1のコードは、各コード・ワード内の多重ビット誤り訂正コード(ECC)記号301,302,311,312,321,322,331,332の間の境界303,313,323,333を識別し、境界303,313,323,333から離れた各コード・ワード内のビット位置306とは異なるコード制約を、境界に近い各コード・ワード内のビット位置304に与える。
【0049】
本発明の別の形態は、変換器110と符号器139を含むディスク・ドライブ記憶チャンネル138に関する。変換器110は、データ記憶デスク106と通信することができる。符号器139は変換器110に結合して、データ142を或るコードに従って符号化して、多重ビットECC記号301,302,311,312,321、322,331,332で形成する連続した誤り訂正コード(ECC)コード・ワード149,701を生成する。このコードは、多重ビットECC記号301,302,311,312,321、322,331,332の間の境界303,313,323,333に対するビット・パターンの相対的位置304,306に基づいて、ビット・パターンが各ECCコード・ワード149,701内で発生するのを制約する。次に、符号器139は、ECCコード・ワード149,701をコード・ワード・ストリーム154として変換器110に送信する。
【0050】
本発明の更に別の形態は、変換器110と復号器168,172を含むディスク・ドライブ記憶チャンネル138に関する。変換器110はデータ記憶ディスク106と通信することができる。復号器168,172は、変換器110に結合して変換器110から読み取り信号164を受け、読み取り信号164により表される連続した誤り訂正コード(ECC)コード・ワード166を或るコードに従って復号して連続したデータ・ワードを174を生成する。各ECCコード・ワード166は、複数の多重ビットECC記号301,302,311,312,321,322,331,332を含み、このコードは、多重ビットECC記号301,302,311,312,321,322,331,332の間の境界303,313,323,333に対するビット・パターンの相対的位置304,306に基づいて、各ECCコード・ワード166内のビット・パターンを制約する。
【0051】
理解されるように、上の説明では本発明の種々の実施の形態の多くの特徴と利点を、本発明の種々の実施の形態の構造と機能の詳細と共に示したが、この開示は単なる例であって、詳細については、特に特許請求の範囲を記述する用語の広い一般的な意味で示される全範囲について本発明の原理内の構造と部品の配置に関して変更を行ってよい。例えば、本発明の範囲と精神から逸れることなくチャンネルの特定の応用に従って特定の要素を変更し、同時に同じ機能性を実質的に保持してよい。更に、ここに説明した実施の形態は、ディスク・ドライブ・システムの読み取りおよび書き込みチャンネルに関するものであるが、当業者が理解するように、本発明の教示は、本発明の範囲と精神から逸れることなく、他の装置や、同様な通信装置や、その他の記憶装置に適用することができる。また本明細書と特許請求の範囲に用いられている「結合」という用語は、直接接続または1つ以上の中間構成要素を通した接続を含んでよい。
【図面の簡単な説明】
【図1】
本発明の諸形態を実施することが可能なディスク・ドライブの斜視図である。
【図2】
本発明の1つの実施の形態に係る、図1に示すディスク・ドライブ内のデータ記憶チャンネルのブロック図である。
【図3−1】
図2に示す記憶チャンネル内で用いられる符号器および復号器により発生を防ぐ、違法のNRZビット・パターンを含むECCコード・ワードの部分を示す図である。
【図3−2】
図2に示す記憶チャンネル内で用いられる符号器および復号器により発生を防ぐ、違法のNRZビット・パターンを含むECCコード・ワードの部分を示す図である。
【図3−3】
図2に示す記憶チャンネル内で用いられる符号器および復号器により許される、複数の法定のNRZビット・パターンを含むECCコード・ワードの部分を示す図である。
【図3−4】
図2に示す記憶チャンネル内で用いられる符号器および復号器により許される、複数の法定のNRZビット・パターンを含むECCコード・ワードの部分を示す図である。
【図4】
連結されたECCコードを有する符号化されたまたは符号化されないチャンネルについて、訂正されたビット誤り率を事象誤り率の関数としてプロットしたグラフである。
【図5】
本発明の1つの実施の形態に係る、図2に示す第1のビット・レベル符号器が行う符号化プロセスを示す図である。
【図6】
本発明の一例に係る、図2に示すECC符号器および第2のビット・レベル符号器が行うプロセスを示す図である。
【図7】
図2に示すECC符号器およびビット・レベル符号器を通るデータの流れを示す図である。
【図8】
本発明の別の実施の形態に係る符号器回路のブロック図である。
本出願は、米国暫定出願番号第60/214,699号、2000年6月27日出願、「連結された誤り訂正コードを持つ磁気記録チャンネルのための不等保護を含む符号化(CODING WITH UNEQUAL PROTECTION FOR MAGNETIC RECORDING CHANNELS WITH CONCATENATED ERROR CORRECTION CODES)」からの優先権を請求する。
【0002】
(発明の分野)
本発明は符号化システムに関する。詳しく述べると、本発明はディスク・ドライブやその他のデータ記憶装置などの記録チャンネル内の符号化装置に関する。
【0003】
(発明の背景)
ディジタル通信システムの分野では、ディジタル情報は送信機から受信機にチャンネルを通して伝送される。「チャンネル」とは、記録媒体や、電話線や、電磁スペクトラムなどの種々の媒体を含む一般化された用語である。磁気ディスク・ドライブなどのデータ記憶装置ではチャンネルは記憶媒体を含み、ディジタル情報は記憶媒体に送られて或る時間記憶された後、回復されて受信機に送られる。
【0004】
一般的な磁気ディスク・ドライブは、ハブまたはスピンドル上に取り付けられて回転する1個以上の硬いディスクを含む。各ディスクは流体式ベアリングで形成される関連するヘッドと変換器を有し、ディスクの表面と通信する。電気機械式アクチュエータは、データ・ヘッドをディスク表面上で半径方向に動かしてトラックを探索し、変換器をディスク表面上の所望のトラックの真上に保持してトラック追跡を行う。ドライブ・コントローラはホスト・システムから受けた命令に基づいてディスク・ドライブを制御して、ディスクから情報を検索し、またディスク上に情報を記憶する。ドライブ・コントローラは種々のサブシステムを含む。例えば、ホスト・システムと通信するための「ホスト・インターフェース」や、アクチュエータを制御するための「サーボ・サブシステム」や、記憶媒体上にデータを記録するための「書き込みチャンネル」や、記憶媒体から記録されたデータを受けるための「読み取りチャンネル」などである。
【0005】
情報は一般にディスク表面上の同心データ・トラック内に記憶される。変換器を流れる電流の方向を制御することにより、選択されたデータ・トラック内のディスク表面上に磁束反転を符号化する。非ゼロ復帰反転(NRZI)符号化と呼ばれる符号化方式では、ディジタルの「1」はデータ・トラック内の1つの磁気領域から次の磁気領域への磁束反転で表され、ディジタルの「0」は1つの磁気領域から次の磁気領域への磁束反転がないことで表される。
【0006】
ディスクからデータを検索するとき、サーボ・サブシステムは電気機械式アクチュエータを制御してデータ・ヘッドを所望のデータ・トラック上に飛ばし、データ・トラック内に記憶されている磁束反転を検出し、かかる磁束反転に基づいて読み取り信号を生成する。一般にこの読み取り信号を読み取りチャンネルで調整して復号し、磁束反転で表されるデータを回復する。一般的な読み取りチャンネルは、自動利得制御回路と、低域フィルタと、アナログ・ディジタル変換器またはサンプラと、シーケンス検出器と、復号器とを含む。
【0007】
読み取りチャンネル内のシーケンス検出器としては、これまでビタビ(Viterbi)検出器が用いられてきた。検出器の入力が信号と加算的な白色、ガウス雑音から成るとき、また一般的な分岐規準(検出器に与えられる信号内の誤りの2乗)が用いられるとき、ビタビ検出器は最尤(ML)シーケンス検出器として動作する。次に、検出されたビット・シーケンスを復号器に送り、復号して元のユーザ・データを生成する。
【0008】
ディスク・ドライブ記憶チャンネルを含む全てのチャンネルは、搬送する信号内に雑音を生じる。チャンネル雑音に起因する信号誤りを検出しまた場合によっては訂正するため、多数の符号化方式が開発されている。かかる符号化方式は、多数のデータ・ビットで形成されるユーザ・データ・ワードを多数のコード・ビットで形成されるコード・ワードに変換する。コード・ワードに与えられる符号化制約は、誤り事象を生成しやすいビット・シーケンスの発生を防ぐように設計され、チャンネルから受けた信号内の誤りを検出しまた場合によっては訂正することができる。
【0009】
ユーザ・データ・ビット数とコード・ビット数との平均比率(m/n)をコードのコード・レートと呼ぶ。一般に、受信チャンネル内の誤りを検出して訂正する能力はコード・レートが低いほど高い。なぜなら、コード・レートが低いということはコード・ワード内の冗長情報の量が大きいことを意味するからである。しかし、符号器がビットを追加するほど、チャンネルを通して信号を送信するのに必要な時間とエネルギーは増加する。
【0010】
複数のコード制約方式が提案されている。例えば、ディスク・ドライブでは、磁気媒体を回転させるスピンドル・モータの回転速度は時間と共に変化する。このため、読み取り信号電圧パルスの間の時間間隔は不均一になる。読み取りタイミング・クロックの位相と周波数を読み取り信号電圧パルスの位相と周波数に同期させるには、位相同期ループ(PLL)が用いられる。PLLを定期的に更新するため、或るコードを用いて、読み取り信号内の連続した「ゼロ」の数が或る最大数「k」より大きくならないように制限してよい。この種のコードを、「k」制約を持つランレングス制限(RLL)コードと呼ぶ。「k」の値が小さくなるほどPLLの性能は良くなるが、「k」の値が小さくなるほどこのコードを実現するのが難しくなる。
【0011】
またこのコードは、符号化されたビット・ストリーム内の連続した「1」の数を制限して記号間の干渉の影響を制限する。記号間の干渉は、送信信号内の連続した遷移が互いに干渉するときに起こる。かかるコードを、「j」制約を持つ最大遷移実行(maximum trasition run)(MTR)コードと呼ぶ。ただし、「j」はチャンネル信号内に許される連続した遷移の最大数である。例えば、3つ以上の連続した遷移の発生を防ぐには、MTR制約j=2を持つコードを設計してよい。MTRコードを用いると記号間の干渉は減少するが、多数の利用可能なコード・ワードが除外されるので、高いコード・レートを持つMTR制約を実現することは困難であり、場合によっては不可能である。
【0012】
磁気記録チャンネルの中には誤り訂正コード(ECC)により更に保護を与えるものがある。データの連続したブロック(符号化されたもの、または符号化されないもの)をマッピングして、データ・フィールドおよびECCフィールドを有する連続した誤り訂正コード・ワードを生成する。データのブロックをデータ・フィールドにマッピングし、これを多数の多重ビットECC記号に分割する。データ・フィールド内のECC記号を或る多項式関数に与えると、ECCフィールドを形成する「パリティ・ビット」と呼ばれる追加の多重ビットECC記号を生成する。データ・フィールドに連結される追加のECC記号の数は、訂正することが可能なECCコード・ワード内のECC記号の数を決定する。例えば、Reed−Solomon方式のECCでECCコード・ワード内の1つの記号を訂正するには、2つの追加のECC記号を必要とする。ECCフィールド内で連結する24の追加のECC記号を有するECCコード・ワードは、ECCコード・ワード内で最大12記号の誤り事象を訂正することができる。
【0013】
この場合は、読み取りチャンネル内でECC復号器を用いてECCコード・ワード内の誤りを検出して訂正する。送信されたECCコード・ワード内の対応する記号と一致しない受信されたECCコード・ワード内の記号毎に、受信されたコード・ワード内の他の記号と、追加の記号を生成するのに用いられた多項式関数とに基づいて、ECC復号器は正しい記号を決定する。
【0014】
かかる符号化方式は、いくつかの誤り事象の発生を防ぎ、残りのほとんどの誤り事象を訂正する手段を与えるのに有効であるが、高いコード・レートで実現するのは困難である。これはコードの効率と記憶チャンネルの速度を制限する。本発明はかかる問題に対処して、従来の技術より優れた方法を提供する。
【0015】
(発明の概要)
本発明の1つの形態は、データ・ワードを符号化する方法に関する。すなわち、少なくとも1つのデータ・ワードのブロックをマッピングして誤り訂正コード(ECC)コード・ワードを生成する。ECCコード・ワードは、境界により分離された複数の多重ビットECC記号と定義される。境界に対するビット・パターンの相対的位置に基づいて、ビット・パターンがECCコード・ワード内で起こるのを制約する。
【0016】
本発明の別の形態は、連続したデータ・ワードを符号化してそれぞれの連続したコード・ワードを生成する符号器に関する。この符号器は、データ・ワード入力と、コード・ワード出力と、第1の符号器ユニットを含む。第1の符号器ユニットは、データ・ワード入力に受けた各連続したデータ・ワードを第1のコードに従ってマッピングして、コード・ワード出力でそれぞれの連続したコード・ワードを生成する。第1のコードは、各コード・ワード内の多重ビット誤り訂正コード(ECC)記号の間の境界を識別し、境界から離れた各コード・ワード内のビット位置とは異なるコード制約を、境界に近い各コード・ワード内のビット位置に与える。
【0017】
本発明の別の形態は、変換器と符号器を含むディスク・ライブ記憶チャンネルに関する。変換器はデータ記憶ディスクと通信することができる。符号器は変換器に結合して、データを或るコードに従って符号化して、多重ビットECC記号で形成する連続した誤り訂正コード(ECC)コード・ワードを生成する。このコードは、多重ビットECC記号の間の境界に対するビット・パターンの相対的位置に基づいて、ビット・パターンが各ECCコード・ワード内で発生するのを防ぐ。次に、符号器はECCコード・ワードをコード・ワード・ストリームとして変換器に送信する。
【0018】
本発明の更に別の形態は、変換器と復号器を含むディスク・ドライブ記憶チャンネルに関する。変換器はデータ記憶ディスクと通信することができる。復号器は変換器に結合し、変換器から読み取り信号を受け、読み取り信号により表される連続した誤り訂正コード(ECC)コード・ワードを或るコードに従って復号して連続したデータ・ワードを生成する。各ECCコード・ワードは複数の多重ビットECC記号を含み、このコードは、多重ビットECC記号の間の境界に対するビット・パターンの相対的位置に基づいて、各ECCコード・ワード内のビット・パターンを制約する。
【0019】
(例示の実施の形態の詳細な説明)
図1は、本発明が有効なディスク・ドライブ100の斜視図である。ディスク・ドライブ100は、ベース102とトップ・カバー(図示せず)を持つハウジングを含む。ディスク・ドライブ100は、ディスク・クランプ108によりスピンドル・モータ(図示せず)上に取り付けられたディスク・パック106を更に含む。ディスク・バック106は複数の個別のディスクを含み、中心軸109の回りに共に回転するように取り付けられる。各ディスク表面には関連するディスク・ヘッド・スライダ110があり、スライダ110はディスク・ドライブ100に取り付けられてディスク表面と通信する。図1に示す例では、スライダ110はサスペンション112により支持され、サスペンション112はアクチュエータ116のトラック・アクセシング・アーム114に取り付けられている。図1に示すアクチュエータは、回転移動コイル・アクチュエータと呼ばれる型であって、一般に118で示す音声コイル・モータ(VCM)を含む。音声コイル・モータ118は、ヘッド110を取り付けたアクチュエータ116を回転軸120の回りに回転させて、ディスク内径124とディスク外径126の間の弓形経路122に沿ってヘッド110を所望のデータ・トラックの上に位置決めする。音声コイル・モータ118は、ヘッド110とホスト・コンピュータ(図示せず)により生成される信号に基づいて、内部回路128内のサーボ電子回路により駆動される。
【0020】
内部回路128内の書き込み回路は、記憶すべきデータを符号化して連続したコード・ワードを生成し、これを予備符号化して非ゼロ復帰反転(NRZI)書式(または、NRZ書式)を生成し、変調して、直列アナログ書き込み信号を形成する。ヘッド110上の書き込み変換器は、アナログ書き込み信号に基づいてディスク表面上の磁気層内に磁束反転を符号化する。読み取り動作中は、へッド110内の読み取り変換器は磁束反転を検出して直列アナログ読み取り信号を生成する。アナログ読み取り信号は直列ディジタル信号に変換され、内部回路128内の検出器および復号器回路に与えられて、回復されたデータ信号が生成される。
【0021】
図2は、本発明に用いられる一般化された通信装置138のブロック図である。図1のディスク・ドライブでは、通信装置138はヘッド110と、ディスク106と、回路128内の内部論理により形成される。通信装置138は符号器回路139を含み、符号器回路139は第1のビット・レベル符号器140と、記号レベル誤り訂正コード(ECC)符号器144と、マルチプレクサ148と、第2のビット・レベル符号器150を含む。ビット・レベル符号器140は連続したデータ・ワード142を受け、この連続したデータ・ワードを或るコードに従って符号化して連続したデータ・コード・ワード143を生成する。各データ・ワード142は、任意の数のビットを含んでよい。ビット数が大きいほど符号器140が達成するコード・レートは大きい。前記コードは連続したデータ・コード・ワード143をビット・レベルで制約して、チャンネル160内に或る共通の誤り事象の原因となることが知られているビット・パターンを持つコード・ワードが発生するのを防ぐ。
【0022】
例えば、前記コードは「k」制約を持つラン・レングス制限(RLL)コードを含んでよい。「k」制約は、読み取り信号内の連続したゼロの数が最大数「k」より大きくならないよう制限する。または前記コードは、符号化されたビット・ストリーム内の連続した1の数を制限して、送信信号内の連続した遷移が互いに干渉するときに起こる記号間干渉の影響を制限する。かかるコードを、「j」制約を持つ最大遷移実行(MTR)コードと呼ぶ。ただし、「j」はチャンネル信号内に許される連続した遷移の最大数である。符号器140は、上に述べたコードの種類に加えてまたは代わりに、他の種類のコードを用いることができる。後で詳細に説明する1つの実施の形態では、このコードは、多重ビットECC記号内で各ビットが有する相対的位置に基づいて、各データ・コード・ワード142内の異なるビット位置に異なる制約を与える。これには、符号器140が実現するコードが、各データ・コード・ワード143内のECC記号境界を識別する必要がある。
【0023】
符号器140はブロック符号器を含んでよく、または状態で駆動してよく、全てのコード・ワード143を注意して選択して、共通の誤り事象の原因となるコード・ワードが発生するのを防ぐ。符号器140は組み合わせ論理で実現してよく、または各ユーザ・データ・ワードとその対応するコード・ワードの間の変換を行うルックアップ・テーブルを持つソフトウエアで実現してもよい。その他のハードウエアやソフトウエアを用いて実現してもよい。
【0024】
符号器140が生成した連続したデータ・コード・ワード143は、マルチプレクサ148の一方の入力とECC符号器144に入り、この両者はデータ・コード・ワード143の連続したブロック(またはセクタ)を符号化して、連続したECCコード・ワード(ECCブロックまたはセクタとも呼ぶ)149をマルチプレクサ148の出力で生成する。各ECCコード・ワード149は、それぞれ1つ以上の多重ビットECC記号で形成するデータ・フィールドとECCフィールドを含む。マルチプレクサ148はデータ・コード・ワード143の各ブロックをマッピングして、対応するECCコード・ワード149のデータ・フィールドを生成し、1つ以上のECC記号をデータ・フィールド内に形成する。
【0025】
ECC符号器144は、データ・フィールド内のECC記号に基づいてECCフィールドのための追加のECC記号152を生成する。例えば、追加のECC記号は、データ・フィールド内のECC記号を多項式関数に与えて生成してよい。ECCフィールド内で連結された追加のECC記号の数は、各ECCコード・ワード内の訂正可能なECC記号の全数を決定する。例えば、1つの特定のECCは、ECCコード・ワード内の訂正可能なECC記号毎に2つの追加のECC記号を必要とする。任意の種類のECC(例えば、Reed−Solomon ECC)を用いてよい。
【0026】
ビット・レベル符号器150は、追加のECC記号152を符号化して、符号器140がデータ・コード・ワード142に与えたのと同じコード制約を与える。この場合も、このコードは、ECC記号内の各ビットの相対的位置に基づいて異なるビット位置に異なる制約を与える。1つの実施の形態では、各ECC記号を符号化して対応する符号化されたECC記号146を生成する。各追加のECC記号152内のビット数は各データ・ワード142内のビット数より少ないので、ビット・レベル符号器150のコード・レートはビット・レベル符号器140のコード・レートより小さい。別の実施の形態では、複数の追加のECC記号を一緒に符号化して対応するコード・ワードを生成する。次に、得られた符号化されたECC記号146をマルチプレクサ148の他方の入力に与える。
【0027】
マルチプレクサ148は、データ・コード・ワード143の各ブロックをマッピングして対応するECCコード・ワード149のデータ・フィールドを生成し、またマルチプレクサの入力を時間多重化することにより、追加の符号化されたECC記号146の各集合をマッピングして対応するECCコード・ワード149のECCフィールドを生成する。別の実施の形態では、他の構造と方法を用いて、追加の符号化されたECC記号146を対応するECCコード・ワード149のデータ・フィールドに連結してよい。
【0028】
並直列変換器155は、連続したECCコード・ワード149を受け、各ECCコード・ワード149を直列表現に変換し、この直列表現を連結して、ECCコード・ワード・ビット154の直列ストリームを生成する。送信機/プレコーダ156は、直列コード・ワード・ストリーム154を受け、チャンネルからの信号を回復するのに用いられる検出器の種類に関して最適になるようにこのシーケンスを調整する。送信機/プレコーダ156は、符号化された書き込み信号158を生成してチャンネル160に与える。
【0029】
ディスク・ドライブ100では、チャンネル160はヘッド110内の書き込み変換器と、デスク・パック106と、ヘッド110内の読み取り変換器を含む。符号化された書き込み信号は、書き込み変換器によりディスク表面に記憶される。読み取り動作中は、読み取り変換器は記憶され符号化された情報をディスク表面から読み取り、符号化された情報を読み取り信号164として受信機/検出器162に与える。受信機/検出器162は、読み取り信号164を増幅して濾波し、複数の既知の検出方法の1つを用いて、読み取り信号から符号化された情報を回復する。例えば、受信機/検出器162は、ビタビ検出器、決定フィードバック等化(DFE)、決定フィードバックによる固定遅延ツリー探索(FDTS/DF)、回復状態(Reduced State)シーケンス検出(RSSE)を用いてよい。チャンネル160からの信号を検出して増幅した後、受信機/検出器162は回復されたコード・ワード・ビットのシーケンス165を生成して直並列変換器163に与える。
【0030】
直並列変換器163は、ビットをグループ化してECCコード・ワードを生成し、ECCコード・ワードを直列書式から並列書式に変換する。連続して回復されたECCコード・ワード166は、符号器139が生成したECCコード・ワードの長さに対応する長さを有する。直並列変換器163は、連続して回復されたECCコード・ワード166をECC復号器および訂正回路168に並列書式で出力する。回路168は、符号器150が用いた符号化規則の逆を用いてECCフィールド内の追加のECC記号を復号して元のECC記号を生成し、ECCコード・ワード166内のECC記号とECC符号器144が用いた多項式関数とに基づいて、誤りを含むECC記号があるかどうか判定する。誤りを含むECC記号の数が回路168で訂正することが可能な記号の最大数より大きくない限り、元の送信ECC記号は回復される。
【0031】
次に、回復されたECCコード・ワードからデータ・フィールドを取り出してデータ・コード・ワード170の元のブロックを回復し、これを復号器172に与える。ビット・レベル復号器172は、符号器140が用いた符号化規則の逆を用いて、連続したデータ・コード・ワード170を復号してそれぞれのデータ・ワード174を生成する。
【0032】
上に述べたように、ビット・レベル符号器140および150は、各ECC記号内の異なるビット位置に関して一様でない誤り保護を与える。1つの実施の形態では、各ECC記号の中央付近のビット位置に比べてECC記号境界の近くのビット位置に対して一層多くの誤り保護を与える。これは、各ECC記号の「外側の」ビット位置にコード制約の1つの集合を与え、各ECC記号の「内側の」ビット位置にコード制約の別の集合を与えることにより行う。
【0033】
これは、ECC復号器および訂正回路168の誤り訂正能力に大きな影響を与える誤り事象に対して大きな保護を与える。符号器140および150が用いるコードは、ECC記号境界をまたがない誤りに比べてECC記号境界をまたぐ誤りに対して一層大きな保護を与える。ECC記号境界をまたぐ誤り事象は、2つの連続したECC記号内に誤りを生じる。かかる多重記号誤り事象が発生するのを防ぐことにより、各ECCコード・ワード内に存在する誤りを含むECC記号の全数が減り、回路168が所定のECCコード・ワード内の全てのECC記号を回復できる可能性が大きくなる。
【0034】
また、或るビット・パターンが起こることを各ECC記号の「内側の」ビット位置では許すが「外側の」ビット位置では許さないことにより、比較的高いコード・レートを保持することができる。なぜなら、ECC記号境界に影響を与えるビット・パターンだけが制約されるからである。したがって、使用するビット・パターンの可能な全数を一層大きくすることができる。
【0035】
磁気記録チャンネルでは、最も起こりやすい誤り事象は1ビットと3ビットの誤り事象である。1ビット誤り事象は、常に1ビットECC記号誤りになる。3ビット誤り事象は、ECC記号境界をまたぐ場合には2つのECC記号誤りになることがある。1つの実施の形態では、符号器140および150はECC記号境界での「3ビット」誤り事象を除くために境界MTRコードを用いる。このコードは、ECC記号境界で中央の遷移を行う3ビットを生成するような2つのNRZパターン(または1つのNRZIパターン)を除去する。
【0036】
図3−1と図3−2は、符号器140および150が発生を防ぐ違法のNRZビット・パターンを含むECCコード・ワードの部分を示す図である。上に述べたように、各ECCコード・ワードは、データおよびECCフィールド内で互いに連結する複数の多重ビットECC記号で形成する。図3−1において、ECCコード・ワード300は、10ビットのECC記号301および302(他にもあるが)を含み、その間に境界303を有する。ECCコード・ワード300内の各ECC記号は、1つ以上の「外側の」ビット位置304と1つ以上の「内側の」境界ビット位置306を有し、これらは互いに重なってよい。ECC記号301の「外側の」境界ビット位置の「01」とECC記号302の「外側の」境界ビット位置の「01」により形成されるNRZパターンは3遷移を含み、中央の遷移は境界303で起こる。図3−2では、ECCコード・ワード310はECC記号311および312(他にもあるが)を含み、その間に境界313を有する。図3−1に示すパターンと同様に、NRZパターン「1010」は3遷移を含み、中央の遷移は2つのECC記号311と312の間の境界313で起こる。符号器140および150はかかるパターンを、「外側の」境界ビット位置304では発生を防ぐが「内側の」ビット位置306では許す。
【0037】
図3−3と図3−4は、符号器140および150が発生を防がない複数の合法のNRZビット・パターンを含むECCコード・ワードの部分を示す図である。図3−3において、ECCコード・ワード320はECC記号321および322(他にもあるが)を含み、その間に境界323を有する。NRZパターン「10100」は3遷移を含むが、中央の遷移は「外側の」ビット・パターン304内の境界313で起こらない。図3−4では、ECCコード・ワード330はECC記号331および332(他にもあるが)を含み、その間に境界333を有する。図3−3に示すパターンと同様に、NRZパターン「00101」は3遷移を含むが、中央の遷移は2つのECC記号331と332の間の境界333で起こらない。
【0038】
符号器140および150で図3−1および図3−2に示すパターンを取り除き、復号器168および172で対応する制約を与えることにより、ECC記号境界での2つの可能な3ビット誤り事象と、ECC記号境界での3ビットを含む一層大きな誤り事象を全て除去することができる。単一のECC記号の内側のビット位置306で起こる3ビット誤り事象には同じ制約を与えない。したがって、ECC記号の境界の近くのビット位置では、ECC記号内のビット位置よりビット誤り率の確率が低い。
【0039】
全ての3ビット誤り事象を除去するMTRコードを用いるのは、コード・レートが大きいので不利である。なぜなら、3ビットを形成する全てのビット・パターンの発生を防ぐには、多数のコード・ビットを用いなければならないからである。本発明の上述の実施の形態では、ECC記号境界での全ての3ビット誤り事象の発生は防ぐが、残りの3ビット誤り事象は防がないので効率的な妥協が得られる。残りの3ビット誤り事象は単一ECC記号に限られるので、かかる誤り事象はECC復号器で訂正できる可能性が大きい。かかる誤りの発生をMTRコードによりビット・レベルで防ぐ必要はない。したがって、MTRコード制約を緩和して一層高いコード・レートを得ることができる。
【0040】
一例として、チャンネル160(図2に示す)が3ビット誤りだけを有すると仮定する。ECC符号器144は10ビット記号で形成し、ECC復号器168は、各ECCコード・ワード内の最大12のECC記号を訂正する能力を有すると仮定する。符号器140および150(これも図2に示す)が符号化を行わないとき、ECCコード・ワード内で7つの誤り事象が起こればECC能力を超える。この7つの誤り事象が全てECC記号境界で起こる場合は、14のECC記号が誤りを持つので、12のECC記号誤り能力を超える。ECCコード・ワード毎に1パリティ・ビットを用いる場合は、ECCコード・ワード内に8つの誤り事象が起こればECC能力を超える。境界MTRコード(ECC記号境界で3ビット誤りの発生を防ぐ)を用いてパリティがない場合、ECCコード・ワード内に13の誤り事象が起こればECC能力を超える。
【0041】
図4は、連結されたECCコードを有する符号化されたチャンネルと符号化されないチャンネルについて、X軸401に事象誤り率をとり、Y軸400にその関数として訂正されたビット誤り率をとってプロットしたグラフである。訂正されたビット誤り率は、訂正できないECCコード・ワード(セクタ)の数を、読み取ったビットの数で割った比である。線402は符号化されない例についての訂正されたビット誤り率を表し、線403は境界MTRで符号化された例についての訂正されたビット誤り率を表す。境界MTRで符号化された例は、符号化されない例に比べて訂正できないECCコード・ワードが明らかに少ない。
【0042】
図5は、本発明の1つの実施の形態において、符号器140が行う符号化プロセスを示す図である。ステップ500で、符号器140は符号化のための、連続したmビットのデータ・ワードを受ける。ステップ501で、符号器140は各連続したmビットのデータ・ワードを或るコードに従ってマッピングして、それぞれの連続したnビットのコード・ワードを生成する。このコードは、各コード・ワード内の、ECC符号器144が後で定義する多重ビットECC記号の間の境界を識別し、ECC境界から遠い各コード・ワード内のビット位置とは異なるコード制約をECC境界に近い各コード・ワード内のビット位置に与える。ステップ502で、符号器140は得られたコード・ワードをECC符号器144に出力する。
【0043】
図6は、本発明の一例において、符号器144および150が行うプロセスを示す流れ図である。ステップ600で、ECC符号器144は符号器140から符号化されたデータ・ワードのブロックを受ける。ステップ601で、ECC符号器144はこのデータ・ワードのブロックを対応するECCコード・ワードのデータ・フィールドに与え、これを複数の多重ビットECC記号に分割する。ステップ601で、データ・フィールド内のECC記号を多項式に与え、これを用いて追加のECC記号を生成してデータ・フィールドに連結する。ステップ603で、ビット・レベル符号器150は、追加のECC記号を或るコードに従ってマッピングして符号化されたECC記号を生成し、ビット・レベル符号器140が与えたのと同じ制約を与えて、ECC記号境界で3ビットが発生するのを防ぐ。ステップ604で、符号化されたECC記号をECCコード・ワードのECCフィールドに与えてデータ・フィールドに連結する。得られた符号化されたECCコード・ワードを書き込みチャンネル内の次の段階に出力する。
【0044】
図7は、本発明の一例に係る、符号器139を通るデータの流れを示す図である。符号器140(図2に示す)は、データ・ワードのブロック700を符号化して、それぞれ符号化されたデータ・ワードのブロック701を生成する。符号化されたデータ・ワードのブロック701をECCコード・ワード703のデータ・フィールド702に直接与える。データ・フィールド702は、複数の多重ビットECC記号に分割される。別の実施の形態では、ECC符号器144は符号化されたデータ・ワードのブロックに多項式関数を与えて、データ・フィールド702内にECC記号を生成する。符号化されたデータ・ワード701のブロックを多項式704にも与えて、追加のECC記号705を生成する。所望の誤り訂正コードを実現するのに任意の適当な多項式を用いてよい。次に符号器150は、追加のECC記号を符号化して符号化されたECC記号706を生成し、ECCコード・ワード703のECCフィールド708に与える。これは「系統的な」型の符号器の一例である。
【0045】
図8は、図2に示す符号器回路139の代わりに用いることが可能な、本発明の別の実施の形態に係る符号器回路800のブロック図である。符号器回路800は、記号レベルECC符号器802と、マルチプレクサ804と、ビット・レベル符号器806を含む。連続して入力されたデータ・ワード810のブロックをマルチプレクサ804の第1のデータ入力に与え、対応するECCコード・ワード812のデータ・フィールドにマルチプレクサ804の出力でマッピングする。この場合も、上に述べたように各ECCコード・ワードのデータフィールドを複数のECC記号に分割する。連続したデータ・ワードのブロック810をECC符号器802にも与え、データ・フィールド内のECC記号に基づいて、ECCフィールドのための追加のECC記号812を生成する。例えば、追加のECC記号は、データ・フィールド内のECC記号を多項式関数に与えて生成してよい。次に追加のECC記号をマルチプレクサ804の第2のデータ入力に与える。マルチプレクサ804は、追加のECC記号814の連続した集合を連続したECCコード・ワード812のECCフィールドに連結する。
【0046】
ビット・レベル符号器806は、各ECCコード・ワード812を受けて、図2の符号器140および150が与えたのと同じコード制約を与える。1つの実施の形態では、符号器806は、ECCコード・ワード812内の各ECC記号を符号化して対応する符号化されたECC記号を生成するブロック符号器である。この場合も、ECC記号内の各ビットの相対的位置に基づいて、コードは異なるビット位置に異なる制約を与える。各ECC記号内のビット数は各データ・ワード142(図2の)内のビット数より小さいので、符号化回路800の全コード・レートは符号化回路139の全コード・レートより小さい。符号化回路139では、各ECCコード・ワードの大多数のビットはデータ・ビットであり、ビット・レベル符号器140により一層高いレートで符号化される。少数のビットだけが符号器150によりECC記号ベースの低いレートで符号化される。本発明では他の符号化方式も用いてよい。
【0047】
要約すると、本発明の1つの形態は、データ・ワード142を符号化する方法に関する。すなわち、少なくとも1つのデータ・ワード142のブロック700をマッピングして誤り訂正コード(ECC)コード・ワード149,701を生成する。ECCコード・ワード149,701は、境界303,313,323,333により分離された複数の多重ビットECC記号301,302,311,312,321,322,331,332で定義される。境界303,313,323,333に対するビット・パターンの相対的位置304,306に基づいて、ビット・パターン(例えば、図3−1および3−2に示すもの)がECCコード・ワード149,701内で発生するのを制約する。
【0048】
本発明の別の形態は、連続したデータ・ワードを符号化してそれぞれの連続したコード・ワードを生成するための符号器139に関する。この符号器は、データ・ワード入力142と、コード・ワード出力143と、第1の符号器ユニット140を含む。第1の符号器ユニット140は、データ・ワード入力142に受けた各連続したデータ・ワードを第1のコードに従ってマッピングして、コード・ワード出力143でそれぞれの連続したコード・ワードを生成する。この第1のコードは、各コード・ワード内の多重ビット誤り訂正コード(ECC)記号301,302,311,312,321,322,331,332の間の境界303,313,323,333を識別し、境界303,313,323,333から離れた各コード・ワード内のビット位置306とは異なるコード制約を、境界に近い各コード・ワード内のビット位置304に与える。
【0049】
本発明の別の形態は、変換器110と符号器139を含むディスク・ドライブ記憶チャンネル138に関する。変換器110は、データ記憶デスク106と通信することができる。符号器139は変換器110に結合して、データ142を或るコードに従って符号化して、多重ビットECC記号301,302,311,312,321、322,331,332で形成する連続した誤り訂正コード(ECC)コード・ワード149,701を生成する。このコードは、多重ビットECC記号301,302,311,312,321、322,331,332の間の境界303,313,323,333に対するビット・パターンの相対的位置304,306に基づいて、ビット・パターンが各ECCコード・ワード149,701内で発生するのを制約する。次に、符号器139は、ECCコード・ワード149,701をコード・ワード・ストリーム154として変換器110に送信する。
【0050】
本発明の更に別の形態は、変換器110と復号器168,172を含むディスク・ドライブ記憶チャンネル138に関する。変換器110はデータ記憶ディスク106と通信することができる。復号器168,172は、変換器110に結合して変換器110から読み取り信号164を受け、読み取り信号164により表される連続した誤り訂正コード(ECC)コード・ワード166を或るコードに従って復号して連続したデータ・ワードを174を生成する。各ECCコード・ワード166は、複数の多重ビットECC記号301,302,311,312,321,322,331,332を含み、このコードは、多重ビットECC記号301,302,311,312,321,322,331,332の間の境界303,313,323,333に対するビット・パターンの相対的位置304,306に基づいて、各ECCコード・ワード166内のビット・パターンを制約する。
【0051】
理解されるように、上の説明では本発明の種々の実施の形態の多くの特徴と利点を、本発明の種々の実施の形態の構造と機能の詳細と共に示したが、この開示は単なる例であって、詳細については、特に特許請求の範囲を記述する用語の広い一般的な意味で示される全範囲について本発明の原理内の構造と部品の配置に関して変更を行ってよい。例えば、本発明の範囲と精神から逸れることなくチャンネルの特定の応用に従って特定の要素を変更し、同時に同じ機能性を実質的に保持してよい。更に、ここに説明した実施の形態は、ディスク・ドライブ・システムの読み取りおよび書き込みチャンネルに関するものであるが、当業者が理解するように、本発明の教示は、本発明の範囲と精神から逸れることなく、他の装置や、同様な通信装置や、その他の記憶装置に適用することができる。また本明細書と特許請求の範囲に用いられている「結合」という用語は、直接接続または1つ以上の中間構成要素を通した接続を含んでよい。
【図面の簡単な説明】
【図1】
本発明の諸形態を実施することが可能なディスク・ドライブの斜視図である。
【図2】
本発明の1つの実施の形態に係る、図1に示すディスク・ドライブ内のデータ記憶チャンネルのブロック図である。
【図3−1】
図2に示す記憶チャンネル内で用いられる符号器および復号器により発生を防ぐ、違法のNRZビット・パターンを含むECCコード・ワードの部分を示す図である。
【図3−2】
図2に示す記憶チャンネル内で用いられる符号器および復号器により発生を防ぐ、違法のNRZビット・パターンを含むECCコード・ワードの部分を示す図である。
【図3−3】
図2に示す記憶チャンネル内で用いられる符号器および復号器により許される、複数の法定のNRZビット・パターンを含むECCコード・ワードの部分を示す図である。
【図3−4】
図2に示す記憶チャンネル内で用いられる符号器および復号器により許される、複数の法定のNRZビット・パターンを含むECCコード・ワードの部分を示す図である。
【図4】
連結されたECCコードを有する符号化されたまたは符号化されないチャンネルについて、訂正されたビット誤り率を事象誤り率の関数としてプロットしたグラフである。
【図5】
本発明の1つの実施の形態に係る、図2に示す第1のビット・レベル符号器が行う符号化プロセスを示す図である。
【図6】
本発明の一例に係る、図2に示すECC符号器および第2のビット・レベル符号器が行うプロセスを示す図である。
【図7】
図2に示すECC符号器およびビット・レベル符号器を通るデータの流れを示す図である。
【図8】
本発明の別の実施の形態に係る符号器回路のブロック図である。
Claims (11)
- データ・ワードを符号化する方法において、
(a) 少なくとも1つのデータ・ワードのブロックをマッピングして、境界により分離された複数の多重ビット誤り訂正コード(ECC)記号で定義されるECCコード・ワードを生成するステップと、
(b) 前記境界に対するビット・パターンの相対的位置に基づいて、前記ビット・パターンが前記ECCコード・ワード内に現れることを制約するステップと、
を含むデータ・ワードを符号化する方法。 - ステップ(a)において、各ECC記号は、複数の内側のビット位置と、該内側のビット位置より前記各境界の近くにある複数の外側のビット位置とを含み、
ステップ(b)において、前記ビット・パターンを制約することは、前記内側のビット位置とは異なるコード制約を前記外側のビット位置に与えて、選択されたビット・パターンが前記内側のビット位置に現れることは許すが前記外側のビット位置に現れることは防ぐことを含む、
請求項1記載のデータ・ワードを符号化する方法。 - ステップ(a)は、
(a)(1) 或るコードに従って各データ・ワードを符号化してデータ・コード・ワードを生成するステップであって、当該或るコードは、前記多重ビットECC記号の間の前記境界に対応する前記データ・コード・ワード内のビット位置に対する前記データ・コード・ワード内の前記ビット・パターンの位置に基づいて前記ビット・パターンが前記データ・コード・ワード内に現れることを抑制するステップと、
(a)(2) 少なくとも1つの前記データ・コード・ワードのブロックをマッピングして、前記ECC記号の第1の集合を含む前記ECCコード・ワードのデータ・フィールドを生成するステップと、
を含む請求項1記載のデータ・ワードを符号化する方法。 - ステップ(a)は、
(a)(3) 境界により分離された前記ECC記号の第2の集合をECC記号の前記第1の集合の多項式関数として生成するステップと、
(a)(4) ECC記号の前記第2の集合の前記境界に対する前記ビット・パターンの相対的位置に基づいて、前記ビット・パターンがECC記号の前記第2の集合内に現れることを制約するステップと、
(a)(5) ECC記号の前記第2の集合をマッピングして前記ECCコード・ワードのECCフィールドを生成するステップと、
を含む請求項3記載のデータ・ワードを符号化する方法。 - 前記ビット・パターンは、第1および第2の2進状態の間の3連続遷移を有するビット・パターンを含み、前記遷移の中央の遷移は前記境界の1つで起こる、
請求項1記載のデータ・ワードを符号化する方法。 - 連続したデータ・ワードを符号化してそれぞれの連続したコード・ワードを生成する符号器であって、
データ・ワード入力と、
コード・ワード出力と、
前記データ・ワード入力に受けた各連続したデータ・ワードを第1のコードに従ってマッピングして、前記コード・ワード出力でそれぞれの連続したコード・ワードを生成する第1の符号器ユニットであって、前記第1のコードは、各コード・ワード内の多重ビット誤り訂正コード(ECC)記号の間の境界を識別して、前記境界から離れた各コード・ワード内のビット位置とは異なるコード制約を前記境界に近い各コード・ワード内のビット位置に与える、第1の符号器ユニットと、
を備える符号器。 - 前記第1の符号器ユニットから前記連続したコード・ワードを受けて、少なくとも1つの前記コード・ワードのブロックをマッピングしてECCコード・ワードのデータ・フィールドを生成し、前記データ・フィールドと予め定められたECC多項式関数に基づいてECCフィールドを前記データ・フィールドに連結するECC符号器であって、前記ECCコード・ワードは、前記データ・フィールドおよびECCフィールド内の複数の多重ビットECC記号で定義される、ECC符号器、
を更に備える請求項6記載の符号器。 - 前記ECCフィールド内の各ECC記号を第2のコードに従ってマッピングして符号化されたECC記号を生成する第2の符号器ユニットであって、前記第2のコードは、前記ECCフィールド内の前記符号化されたECC記号の間の境界を識別して、前記ECCフィールド内の境界から離れたビット位置とは異なるコード制約を前記ECCフィールド内の前記境界に近い各符号化されたECC記号内のビット位置に与える、第2の符号器ユニット、
を更に備える請求項7記載の符号器。 - 前記第1および第2のコードは、選択されたビット・パターンが前記ECCコード・ワード内に現れるのを防ぎ、前記選択されたビット・パターンは、第1および第2の2進状態の間の3連続遷移を有し、前記遷移の中央の遷移は前記ECCコード・ワード内の前記ECC記号境界の1つで起こる、請求項8記載の符号器。
- ディスク・ドライブ記憶チャンネルにおいて、
データ記憶ディスクと通信することができる変換器と、
前記変換器に結合され、データを或るコードに従って符号化して、多重ビット誤り訂正コード(ECC)記号で形成する連続したECCコード・ワードを生成する符号化手段であって、前記コードは多重ビットECC記号の間の境界に対するビット・パターンの相対的位置に基づいて前記ビット・パターンが各ECCコード・ワード内に現れるのを制約し、前記ECCコード・ワードをコード・ワード・ストリームとして前記変換器に送信する、符号化手段と、
を備えるディスク・ドライブ記憶チャンネル。 - ディスク・ドライブ記憶チャンネルにおいて、
データ記憶ディスクと通信することができる変換器と、
前記変換器に結合され、読み取り信号を前記変換器から受け、前記読み取り信号により表される連続した誤り訂正コード(ECC)コード・ワードを或るコードに従って復号する復号手段であって、各ECCコード・ワードは複数の多重ビットECC記号を含み、前記コードは前記多重ビットECC記号の間の境界に対するビット・パターンの相対的位置に基づいて各ECCコード・ワード内の前記ビット・パターンを制約する、復号手段と、
を備えるディスク・ドライブ記憶チャンネル。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US21469900P | 2000-06-27 | 2000-06-27 | |
PCT/US2001/020311 WO2002001561A2 (en) | 2000-06-27 | 2001-06-26 | Method and apparatus for encoding with unequal protection in magnetic recording channels having concatenated error correction codes |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004502264A true JP2004502264A (ja) | 2004-01-22 |
JP2004502264A5 JP2004502264A5 (ja) | 2004-12-24 |
Family
ID=22800094
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002505618A Pending JP2004502264A (ja) | 2000-06-27 | 2001-06-26 | 連結された誤り訂正コードを有する磁気記録チャンネル内で不等保護により符号化する方法と装置 |
Country Status (7)
Country | Link |
---|---|
US (1) | US6804805B2 (ja) |
JP (1) | JP2004502264A (ja) |
KR (1) | KR20020025239A (ja) |
CN (1) | CN1383617A (ja) |
DE (1) | DE10193104T1 (ja) |
GB (1) | GB2371960A (ja) |
WO (1) | WO2002001561A2 (ja) |
Families Citing this family (68)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002116961A (ja) * | 2000-10-11 | 2002-04-19 | Nec Corp | シリアル通信装置およびシリアル通信方法 |
US7024653B1 (en) * | 2000-10-30 | 2006-04-04 | Cypress Semiconductor Corporation | Architecture for efficient implementation of serial data communication functions on a programmable logic device (PLD) |
FR2837332A1 (fr) * | 2002-03-15 | 2003-09-19 | Thomson Licensing Sa | Dispositif et procede d'insertion de codes de correction d'erreurs et de reconstitution de flux de donnees, et produits correspondants |
JP2003318865A (ja) * | 2002-04-26 | 2003-11-07 | Fuji Xerox Co Ltd | 信号伝送システム |
DE10305008A1 (de) * | 2003-02-07 | 2004-08-19 | Robert Bosch Gmbh | Verfahren und Vorrichtung zur Überwachung einer elektronischen Steuerung |
US7174485B2 (en) | 2003-11-21 | 2007-02-06 | Seagate Technology Llc | Reverse error correction coding with run length limited constraint |
US6897793B1 (en) * | 2004-04-29 | 2005-05-24 | Silicon Image, Inc. | Method and apparatus for run length limited TMDS-like encoding of data |
US20060242530A1 (en) * | 2005-03-31 | 2006-10-26 | Nec Laboratories America, Inc. | Method for constructing finite-length low density parity check codes |
US7599396B2 (en) * | 2005-07-11 | 2009-10-06 | Magnalynx, Inc. | Method of encoding and synchronizing a serial interface |
KR101202537B1 (ko) | 2006-05-12 | 2012-11-19 | 애플 인크. | 메모리 디바이스를 위한 결합된 왜곡 추정 및 에러 보정 코딩 |
US8239735B2 (en) | 2006-05-12 | 2012-08-07 | Apple Inc. | Memory Device with adaptive capacity |
CN103258572B (zh) | 2006-05-12 | 2016-12-07 | 苹果公司 | 存储设备中的失真估计和消除 |
WO2008053472A2 (en) | 2006-10-30 | 2008-05-08 | Anobit Technologies Ltd. | Reading memory cells using multiple thresholds |
US8151163B2 (en) | 2006-12-03 | 2012-04-03 | Anobit Technologies Ltd. | Automatic defect management in memory devices |
US8151166B2 (en) | 2007-01-24 | 2012-04-03 | Anobit Technologies Ltd. | Reduction of back pattern dependency effects in memory devices |
WO2008111058A2 (en) | 2007-03-12 | 2008-09-18 | Anobit Technologies Ltd. | Adaptive estimation of memory cell read thresholds |
US8234545B2 (en) | 2007-05-12 | 2012-07-31 | Apple Inc. | Data storage with incremental redundancy |
US8429493B2 (en) * | 2007-05-12 | 2013-04-23 | Apple Inc. | Memory device with internal signap processing unit |
US8259497B2 (en) * | 2007-08-06 | 2012-09-04 | Apple Inc. | Programming schemes for multi-level analog memory cells |
US8174905B2 (en) | 2007-09-19 | 2012-05-08 | Anobit Technologies Ltd. | Programming orders for reducing distortion in arrays of multi-level analog memory cells |
WO2009050703A2 (en) | 2007-10-19 | 2009-04-23 | Anobit Technologies | Data storage in analog memory cell arrays having erase failures |
KR101509836B1 (ko) | 2007-11-13 | 2015-04-06 | 애플 인크. | 멀티 유닛 메모리 디바이스에서의 메모리 유닛의 최적화된 선택 |
US8225181B2 (en) * | 2007-11-30 | 2012-07-17 | Apple Inc. | Efficient re-read operations from memory devices |
US8209588B2 (en) | 2007-12-12 | 2012-06-26 | Anobit Technologies Ltd. | Efficient interference cancellation in analog memory cell arrays |
US8456905B2 (en) * | 2007-12-16 | 2013-06-04 | Apple Inc. | Efficient data storage in multi-plane memory devices |
US8156398B2 (en) | 2008-02-05 | 2012-04-10 | Anobit Technologies Ltd. | Parameter estimation based on error correction code parity check equations |
US8230300B2 (en) | 2008-03-07 | 2012-07-24 | Apple Inc. | Efficient readout from analog memory cells using data compression |
US8400858B2 (en) | 2008-03-18 | 2013-03-19 | Apple Inc. | Memory device with reduced sense time readout |
US8493783B2 (en) | 2008-03-18 | 2013-07-23 | Apple Inc. | Memory device readout using multiple sense times |
US8498151B1 (en) | 2008-08-05 | 2013-07-30 | Apple Inc. | Data storage in analog memory cells using modified pass voltages |
US8949684B1 (en) | 2008-09-02 | 2015-02-03 | Apple Inc. | Segmented data storage |
US8169825B1 (en) | 2008-09-02 | 2012-05-01 | Anobit Technologies Ltd. | Reliable data storage in analog memory cells subjected to long retention periods |
US8482978B1 (en) | 2008-09-14 | 2013-07-09 | Apple Inc. | Estimation of memory cell read thresholds by sampling inside programming level distribution intervals |
US8239734B1 (en) | 2008-10-15 | 2012-08-07 | Apple Inc. | Efficient data storage in storage device arrays |
US8261159B1 (en) | 2008-10-30 | 2012-09-04 | Apple, Inc. | Data scrambling schemes for memory devices |
US8208304B2 (en) | 2008-11-16 | 2012-06-26 | Anobit Technologies Ltd. | Storage at M bits/cell density in N bits/cell analog memory cell devices, M>N |
US8397131B1 (en) | 2008-12-31 | 2013-03-12 | Apple Inc. | Efficient readout schemes for analog memory cell devices |
US8248831B2 (en) | 2008-12-31 | 2012-08-21 | Apple Inc. | Rejuvenation of analog memory cells |
US8924661B1 (en) | 2009-01-18 | 2014-12-30 | Apple Inc. | Memory system including a controller and processors associated with memory devices |
US8228701B2 (en) * | 2009-03-01 | 2012-07-24 | Apple Inc. | Selective activation of programming schemes in analog memory cell arrays |
US8832354B2 (en) | 2009-03-25 | 2014-09-09 | Apple Inc. | Use of host system resources by memory controller |
US8259506B1 (en) | 2009-03-25 | 2012-09-04 | Apple Inc. | Database of memory read thresholds |
US8238157B1 (en) | 2009-04-12 | 2012-08-07 | Apple Inc. | Selective re-programming of analog memory cells |
US8479080B1 (en) | 2009-07-12 | 2013-07-02 | Apple Inc. | Adaptive over-provisioning in memory systems |
US8495465B1 (en) | 2009-10-15 | 2013-07-23 | Apple Inc. | Error correction coding over multiple memory pages |
US8677054B1 (en) | 2009-12-16 | 2014-03-18 | Apple Inc. | Memory management schemes for non-volatile memory devices |
EP2338544A1 (en) | 2009-12-28 | 2011-06-29 | F. Hoffmann-La Roche AG | Ambulatory infusion device with variable energy storage testing and method for testing an energy storage |
US8694814B1 (en) | 2010-01-10 | 2014-04-08 | Apple Inc. | Reuse of host hibernation storage space by memory controller |
US8677203B1 (en) | 2010-01-11 | 2014-03-18 | Apple Inc. | Redundant data storage schemes for multi-die memory systems |
US8694853B1 (en) | 2010-05-04 | 2014-04-08 | Apple Inc. | Read commands for reading interfering memory cells |
US8572423B1 (en) | 2010-06-22 | 2013-10-29 | Apple Inc. | Reducing peak current in memory systems |
US8595591B1 (en) | 2010-07-11 | 2013-11-26 | Apple Inc. | Interference-aware assignment of programming levels in analog memory cells |
US9104580B1 (en) | 2010-07-27 | 2015-08-11 | Apple Inc. | Cache memory for hybrid disk drives |
US8645794B1 (en) | 2010-07-31 | 2014-02-04 | Apple Inc. | Data storage in analog memory cells using a non-integer number of bits per cell |
US8856475B1 (en) | 2010-08-01 | 2014-10-07 | Apple Inc. | Efficient selection of memory blocks for compaction |
US8493781B1 (en) | 2010-08-12 | 2013-07-23 | Apple Inc. | Interference mitigation using individual word line erasure operations |
US8694854B1 (en) | 2010-08-17 | 2014-04-08 | Apple Inc. | Read threshold setting based on soft readout statistics |
US9021181B1 (en) | 2010-09-27 | 2015-04-28 | Apple Inc. | Memory management for unifying memory cell conditions by using maximum time intervals |
US8922923B2 (en) | 2011-03-01 | 2014-12-30 | Seagate Technology Llc | Interleaved automatic gain control for asymmetric data signals |
US20140223136A1 (en) * | 2013-02-07 | 2014-08-07 | Lsi Corporation | Lookup Tables Utilizing Read Only Memory and Combinational Logic |
US9594719B2 (en) | 2014-02-03 | 2017-03-14 | Valens Semiconductor Ltd. | Seamless addition of high bandwidth lanes |
US9270415B2 (en) | 2014-02-03 | 2016-02-23 | Valens Semiconductor Ltd. | Encoding payloads according to data types while maintaining running disparity |
US9270403B2 (en) | 2014-02-03 | 2016-02-23 | Valens Semiconductor Ltd. | Indicating end of idle sequence by replacing expected code words while maintaining running disparity |
US9270411B2 (en) | 2014-02-03 | 2016-02-23 | Valens Semiconductor Ltd. | Indicating end of idle sequence by replacing certain code words with alternative code words |
US9407394B2 (en) | 2014-02-03 | 2016-08-02 | Valens Semiconductor Ltd. | Frequent flow control by replacing certain idle words with bitwise complement words |
US9401729B2 (en) | 2014-02-03 | 2016-07-26 | Valens Semiconductor Ltd. | Maintaining running disparity while utilizing different line-codes |
US11556416B2 (en) | 2021-05-05 | 2023-01-17 | Apple Inc. | Controlling memory readout reliability and throughput by adjusting distance between read thresholds |
US11847342B2 (en) | 2021-07-28 | 2023-12-19 | Apple Inc. | Efficient transfer of hard data and confidence levels in reading a nonvolatile memory |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3334810B2 (ja) * | 1992-02-14 | 2002-10-15 | ソニー株式会社 | 符号化方法、再生方法、および、再生装置 |
US5859601A (en) * | 1996-04-05 | 1999-01-12 | Regents Of The University Of Minnesota | Method and apparatus for implementing maximum transition run codes |
US6009549A (en) * | 1997-05-15 | 1999-12-28 | Cirrus Logic, Inc. | Disk storage system employing error detection and correction of channel coded data, interpolated timing recovery, and retroactive/split-segment symbol synchronization |
JP2001512945A (ja) * | 1997-08-11 | 2001-08-28 | シーゲイト テクノロジー エルエルシー | 時変拘束を有するコードを利用するチャネル用静的ビタビ検出器 |
SG87129A1 (en) * | 1999-07-12 | 2002-03-19 | Ibm | Data encoding systems |
US6505320B1 (en) * | 2000-03-09 | 2003-01-07 | Cirrus Logic, Incorporated | Multiple-rate channel ENDEC in a commuted read/write channel for disk storage systems |
-
2001
- 2001-06-26 WO PCT/US2001/020311 patent/WO2002001561A2/en not_active Application Discontinuation
- 2001-06-26 CN CN01801821A patent/CN1383617A/zh active Pending
- 2001-06-26 GB GB0204744A patent/GB2371960A/en not_active Withdrawn
- 2001-06-26 US US09/891,688 patent/US6804805B2/en not_active Expired - Lifetime
- 2001-06-26 KR KR1020027002595A patent/KR20020025239A/ko not_active Application Discontinuation
- 2001-06-26 DE DE10193104T patent/DE10193104T1/de not_active Ceased
- 2001-06-26 JP JP2002505618A patent/JP2004502264A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
GB2371960A (en) | 2002-08-07 |
KR20020025239A (ko) | 2002-04-03 |
WO2002001561A2 (en) | 2002-01-03 |
GB0204744D0 (en) | 2002-04-17 |
CN1383617A (zh) | 2002-12-04 |
US20010056561A1 (en) | 2001-12-27 |
DE10193104T1 (de) | 2003-03-13 |
US6804805B2 (en) | 2004-10-12 |
WO2002001561A3 (en) | 2002-05-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6804805B2 (en) | Method and apparatus for encoding with unequal protection in magnetic recording channels having concatenated error correction codes | |
US6018304A (en) | Method and apparatus for high-rate n/n+1 low-complexity modulation codes with adjustable codeword length and error control capability | |
US5260703A (en) | Data encoding and decoding within PRML class IV sampling data detection channel of disk drive | |
US5757294A (en) | Rate 24/25 modulation code for PRML recording channels | |
US6185173B1 (en) | Sampled amplitude read channel employing a trellis sequence detector matched to a channel code constraint and a post processor for correcting errors in the detected binary sequence using the signal samples and an error syndrome | |
US6201652B1 (en) | Method and apparatus for reading and writing gray code servo data to magnetic medium using synchronous detection | |
US6388587B1 (en) | Partial response channel having combined MTR and parity constraints | |
WO2001067447A2 (en) | Multiple-rate channel endec in a commuted read/write channel for disk storage systems | |
JP3923143B2 (ja) | 17ビットのコードワードを16ビットのデータワードに復号化する16/17 endecおよび17ビットのコードワードを16ビットのデータワードに復号化する方法 | |
US5576707A (en) | Method and apparatus for detecting and decoding data in a PRML class-IV digital communication channel | |
JP4065357B2 (ja) | 高密度データの記録/再生のための符号化/復号化方法 | |
KR100406806B1 (ko) | 짧게 인터리브된 제한 조건을 갖는 효과적인 런 길이 제한코드 | |
US5544178A (en) | Method and apparatus for encoding data in a PRML class-IV digital communication channel | |
US7006016B1 (en) | DC-free line codes | |
KR100426656B1 (ko) | 24 비트 시퀀스의 데이터에 대한 인코딩 및 디코딩 기술 | |
Thapar et al. | On the performance of a rate 8/10 matched spectral null code for class-4 partial response | |
US6201485B1 (en) | High rate runlength limited codes for 8-bit ECC symbols | |
US20080115038A1 (en) | Dynamic early termination of iterative decoding for turbo equalization | |
US6839004B2 (en) | High rate run length limited code | |
US6868515B2 (en) | Formatting method and apparatus for a direct access storage device | |
US6317856B1 (en) | Encoder and a method of encoding for partial response channels | |
US6201779B1 (en) | MEEPR4 sampled amplitude read channel for disk storage systems | |
US6577460B1 (en) | Method and apparatus for improving track format efficiency in a direct access storage device | |
US20030227399A1 (en) | Run length limited coding with minimal error propagation | |
JP2001518253A (ja) | 位置依存制約を有する最大遷移ランレングス符号用システム及び方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040423 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20041005 |