(58)【調査した分野】(Int.Cl.,DB名)
データ検出アルゴリズムは、非二値最大事後データ検出アルゴリズム及び非二値ビタビデータ検出アルゴリズムからなる群から選択される、請求項1に記載のデータ処理回路。
相対メトリックのサブセットをバイアスすることであって、一連の被バイアス相対メトリックをもたらす、バイアスすることは、相対メトリックを、ルックアップテーブルからアクセスされた被バイアス相対メトリックと置き換えることを含む、請求項1に記載のデータ処理回路。
一連の被バイアス軟判定データは、それぞれのシンボル値が正しいことの尤度を示す一連の被バイアス非二値軟判定データであり、該一連の被バイアス非二値軟判定データは該一連のバイアスされていない軟判定データの対応するインスタンスよりも低い尤度を示す、請求項4に記載のデータ処理回路。
バイアス値メモリであって、該バイアス回路からアドレスを受信し、該アドレスに対応するバイアス値を返すように動作可能であり、該バイアス値は対応する相対メトリックと置き換わる被バイアス相対メトリックとして用いられる、バイアス値メモリを更に備える、請求項6に記載のデータ処理回路。
一連の被バイアス軟判定データは、それぞれのシンボル値が正しいことの尤度を示す一連の被バイアス非二値軟判定データであり、該一連の被バイアス非二値軟判定データは該一連のバイアスされていない軟判定データの対応するインスタンスよりも低い尤度を示す、請求項13に記載の方法。
相対メトリックの該サブセットをバイアスすることであって、該一連の被バイアス相対メトリックをもたらす、バイアスすることは、該相対メトリックの該サブセットのそれぞれにバイアス値を乗算することを含む、請求項13に記載の方法。
【符号の説明】
【0012】
図1
105 Analog Input アナログ入力
110 Analog Front End Circuit アナログフロントエンド回路
114 Analog to Digital Converter Circuit アナログ/デジタル変換器回路
120 DFIR Circuit DFIR回路
130 Buffer Circuit バッファー回路
135 Data Detector Circuit データ検出器回路
140 Soft Data Biasing Circuit 軟データバイアス回路
150 Selector Circuit 選択器回路
155 Data Decoder Circuit データ復号器回路
157 Decoded Output 復号出力
165 Biasing Look Up Table バイアスルックアップテーブル
170 Biasing Control Circuit バイアス制御回路
180 Histogram Based LUT Calculation Circuit ヒストグラムに基づくLUT計算回路
図2
137 Detector Soft Decision Data 検出器軟判定データ
142 Updated Detector Soft Decision Data 更新された検出器軟判定データ
167 Bias Relative Metric From Biasing Look Up Table バイアスルックアップテーブルからのバイアス相対メトリック
169 Relative Soft Decision Data to Biasing Look Up
Table バイアスルックアップテーブルへの相対軟判定データ
205 Non-Binary Metrics to Relative Metrics Conversion
Circuit 非二値メトリック対相対メトリック変換回路
220 Biased Relative Metrics Replacement Circuit 被バイアス相対メトリック置換回路
230 Biased Relative Metrics to Updated Non-Binary
Metrics ConversionCircuit 被バイアス相対メトリック対更新された非二値メトリック変換回路
Lowest Metric 最も低いメトリック
図3
305 Analog Input アナログ入力
310 Analog Front End Circuit アナログフロントエンド回路
314 Analog to Digital Converter Circuit アナログ/デジタル変換器回路
320 DFIR Circuit DFIR回路
330 Buffer Circuit バッファー回路
335 Data Detector Circuit データ検出器回路
340 Soft Data Biasing Circuit 軟データバイアス回路
350 Selector Circuit 選択器回路
355 Data Decoder Circuit データ復号器回路
357 Decoded Output 復号出力
365 Fixed Bias Value 固定バイアス値
370 Biasing Control Circuit バイアス制御回路
図4
405 Receive Analog Input アナログ入力を受信する
410 Convert Analog Input to a Series of Digital Samples アナログ入力を一連のデジタルサンプルに変換する
415 Equalize the Series of Digital Samples to Yield an
Equalized Output 一連のデジタルサンプルを等化して等化された出力をもたらす
420 Perform Data Detection on the Equalized Output to
Yield a DetectedOutput 等化された出力に対しデータ検出を実行して検出出力をもたらす
425 Soft Data Marginalization Selected? 軟データ周辺化が選択された?
430 Convert Non-Binary Metrics to Relative Metrics 非二値メトリックを相対メトリックに変換する
435 Bias the Relative Metrics to Yield Biased Relative
Metrics 相対メトリックをバイアスして被バイアス相対メトリックをもたらす
440 Convert Biased Relative Metrics to Updated
Non-Binary Metrics 被バイアス相対メトリックを更新された非二値メトリックに変換する
445 Provide the Updated Non-Binary Metrics as a
Modified Detected Output 更新された非二値メトリックを変更された検出出力として与える
450 Perform Data Decoding on the Detected Output to
Yield a DecodedOutput 検出出力に対しデータ復号を実行して復号出力をもたらす
455 Decoded Output Converged? 復号出力が収束しているか?
460 Perform Decoded Output as Data Output 復号出力をデータ出力として実行する
図6
610 Transmitter 送信機
620 Receiver Including Performance Degradation Control
Circuitry 性能縮対制御回路部を備える受信機
630 Transfer Medium 転送媒体
図7
701 Write Data 書込みデータ
703 Read Data 読取りデータ
710 Read Channel Including Performance Degradation
Control Circuitry 性能縮対制御回路部を備える読取りチャネル
720 Interface Controller インターフェースコントローラー
766 Hard Disk Controller ハードディスクコントローラー
768 Motor Controller モーターコントローラー
770 Preamp 前置増幅器
772 Spindle Motor スピンドルモーター
776 Read/Write Head 読取り/書込みヘッド
778 Disk Platter ディスクプラッター
図8
810 Calculate Histogram of Relative Metrics For a First
Condition 第1の状態の相対メトリックのヒストグラムを計算する
815 Normalize the Histogram Corresponding to the First
Condition 第1の状態に対応するヒストグラムを正規化する
817 Calculate the Cumulative Mass of the Normalized
HistogramCorresponding to the First Condition 第1の状態に対応する正規化されたヒストグラムの累積質量を計算する
820 Calculate Histogram of Relative Metrics For a
Second Condition 第2の状態の相対メトリックのヒストグラムを計算する
825 Normalize the Histogram Corresponding to the Second
Condition 第2の状態に対応するヒストグラムを正規化する
827 Calculate the Cumulative Mass of the Normalized
HistogramCorresponding to the Second Condition 第2の状態に対応する正規化されたヒストグラムの累積質量を計算する
830 Sequentially Determine Bias Values For the Biasing
Look Up Table by Matchingthe Projected Probability Mass Distribution of the
First Condition toApproximate the Second Condition 第1の状態の投影された確率質量密度を第2の状態を近似するようにマッチングすることによってバイアスルックアップテーブルのバイアス値を順次求める
835 Write the Bias Values to the Biasing Look Up Table バイアス値をバイアスルックアップテーブルに書き込む
From Block430 ブロック430から
図9
137 Detector Soft Decision Data 検出器軟判定データ
182 Bias Values バイアス値
905 Histogram Generation Circuit ヒストグラム生成回路
907 Histogram A ヒストグラムA
909 Histogram B ヒストグラムB
910 Histogram Normalization Circuit ヒストグラム正規化回路
917 Normalized Histogram A 正規化されたヒストグラムA
919 Normalized Histogram B 正規化されたヒストグラムB
920 Cumulative Mass Calculation Circuit 累積質量計算回路
927 Cumulative Mass A 累積質量A
929 Cumulative Mass B 累積質量B
930 Bias Value Calculation Circuit バイアス値計算回路
【発明を実施するための形態】
【0013】
本発明はデータを格納するシステム及び方法に関し、より詳細にはストレージデバイスを特徴付けるシステム及び方法に関する。
【0014】
図1は、本発明のいくつかの実施形態による選択可能な動作縮退回路部を備えるデータ処理回路100を示している。データ処理回路100は、アナログ入力105を受信し、処理済みアナログ信号112を与えるアナログフロントエンド回路110を備える。アナログフロントエンド回路110は当該技術分野において既知の任意のアナログ処理回路とすることができる。本発明の1つの特定の実施形態では、アナログフロントエンド回路110は、受信した入力を増幅し、雑音フィルタリングして処理済みアナログ信号112をもたらすように動作する増幅器回路及び連続時間フィルター(すなわちアナログフィルター)を備える。アナログ信号105は、ストレージ媒体又は転送媒体を含むがそれらに限定されない種々のソースから取り出すことができる。本明細書において提供される開示に基づいて、当業者であれば、アナログ入力信号105を取り出すことができる種々のソースを認識するであろう。
【0015】
処理済みアナログ信号112はアナログ/デジタル変換器回路114に与えられ、該アナログ/デジタル変換器回路114は処理済みアナログ信号112をサンプリングして対応する一連のデジタルサンプル116をもたらす。アナログ/デジタル変換器回路114は、連続時間信号を一連のデジタル値に変換することが可能な当該技術分野において既知の任意の回路とすることができる。デジタルサンプル116は、当該技術分野において既知のデジタル有限インパルス応答回路として実装することができる等化器回路120に与えられる。等化器回路120はデジタルサンプル116に対し等化を実行し、等化された出力125をもたらす。本明細書において提供される開示に基づいて、当業者であれば、本発明の様々な実施形態に関連して用いることができる種々の等化器回路を認識するであろう。
【0016】
等化された出力125はデータ検出器回路135及びバッファー回路130に与えられる。データ検出器回路135は等化された出力125にデータ検出アルゴリズムを適用し、検出出力137をもたらす。データ検出器回路135は、ビタビアルゴリズムデータ検出器回路又は最大事後データ検出器回路を含むがそれらに限定されない当該技術分野において既知の任意のデータ検出器回路とすることができる。いくつかの場合、検出出力137は硬判定データ及び軟判定データの双方を含む。本明細書において用いられるとき、「硬判定データ」というフレーズは、所与の単数又は複数のビット期間の或る特定の論理レベルを示すデータ出力を指す。例えば、二値システムでは、論理レベルは「1」又は「0」とすることができる。別の例として、2ビット二値システムでは、論理レベルは「00」、「01」、「10」、又は「11」とすることができる。本明細書において提供される開示に基づいて、当業者であれば、データ検出器回路によって生成することができる種々の硬判定データを認識するであろう。本明細書において用いられるとき、「軟判定データ」というフレーズは、データ検出器回路135が単数又は複数のビット期間のデータを正しく検出した尤度を示すデータ出力を指す。本発明の1つの特定の実施形態では、軟判定データは−15〜+15の範囲をとり、−15は判定が正しい可能性が非常に低いことを示し、+15は判定が正しい可能性が非常に高いことを示す。−14〜から+14に増大する値は、判定が正しかったことの尤度における対応する増大に対応する。本明細書において提示される開示に基づいて、当業者であれば、軟判定データを表すのに用いることができる種々の値及び範囲を認識するであろう。
【0017】
非二値データ処理システムでは、シンボル群は一緒に処理される。例えば、2ビット非二値データ処理システムでは、2ビットシンボルの群は一緒に処理され、該2ビットシンボルの群は、4つの可能な出力(すなわち、00、01、10、11)を表すことが可能である。そのようなシステムでは、メトリック(すなわちユークリッド距離)は、可能なシンボル値のそれぞれについて計算される。2ビットシンボルの場合、4つのメトリックが計算される。大きなメトリック値は、対応するシンボル値の可能性が低いことを示し、小さなメトリックはより高い尤度を示す。シンボルは、正しく選択されたシンボル値が最小のメトリックに対応しないとき、誤りである。対照的に、シンボルは、正しく選択されたシンボル値が最も小さなメトリックに対応するとき、正しいと判断される。以下で検討する復号アルゴリズムは、複数のメトリックを処理して任意の誤りを訂正する。検出出力137は、軟データ判定としてシンボル値の可能な値のそれぞれのメトリックを含み、最小のメトリックに対応するシンボル値を含む場合も含まない場合もある。
【0018】
検出出力137は、軟データバイアス回路140及び選択器回路150の双方に与えられる。軟データバイアス回路140は、検出出力137に含まれる軟判定データをバイアスして変更された検出出力142をもたらすように動作可能である。特に、検出出力137からの軟判定データは、非二値メトリックから相対メトリックに変換され、相対メトリックに雑音バイアスを適用することによってバイアスされて、被バイアス相対メトリックがもたらされ、被バイアス相対メトリックは非二値メトリック(すなわち更新された二値メトリック)に逆変換される。
【0019】
非二値メトリックから相対メトリックへの変換は、最も可能性の高いシンボル値に対応するメトリックにゼロ値が割り当てられ、全ての他の可能なシンボル値に非負のメトリックが割り当てられるように、受信した非二値メトリック間の相対差を計算することを含む。検出出力137に4つの可能なシンボル値(すなわち00、01、10、11)及び対応する非二値メトリック(すなわちM
00、M
01、M
10、及びM
11)が含まれる2ビット非二値データ処理システムを例として用いると、以下の式に従って相対メトリック(RM
00、RM
01、RM
10、及びRM
11)が計算される。
RM
00=M
00−基準メトリック、
RM
01=M
01−基準メトリック、
RM
10=M
10−基準メトリック、及び
RM
11=M
11−基準メトリック、
ここで、基準メトリックは書き込まれた真のシンボル値(すなわちテストパターン)に対応するメトリック値である。真のシンボル値に対応するメトリック値は、メモリから再生することもできるし、予めプログラムされたメモリから基準メトリックにアクセスする等の別の手法を用いて再生することもできる。
【0020】
理解されるように、正しいシンボル値に対応する相対メトリックは、適切に選択された場合ゼロである。データ検出が正しい場合、全てのメトリックは非負となる。代わりに、検出が正しくない場合、最小メトリックを有するシンボルは正しいシンボルと異なることになる。この不正確な検出の場合、検出器判定シンボルの相対メトリックは負である。
【0021】
軟データバイアス回路140は、非ゼロ相対メトリックをバイアスして被バイアス相対メトリックをもたらす。これは、歪みの結果生じる誤りが、歪みが適用されない場合に結果として生じる誤りの数に予測可能に関連するよう、検出出力137を歪めるように行うことができる。データ処理回路100の動作を予測可能に縮退させることによって、データ処理回路100が展開されるシステムを特徴付けるのに十分な数の誤りを生成するのに必要とされる時間が減少し、縮退動作からの対応する誤りの数が実際の誤りの数に予測可能に関連しているので、特徴付けはシステムの実際の動作を表す。いくつかの場合、非ゼロ相対メトリックの全てがバイアスルックアップテーブル165からアクセスされる被バイアス相対メトリック167によって置き換えられる。被バイアス相対メトリック167はバイアスルックアップテーブル165にアドレス169として与えられる対応する計算された相対メトリックに対応する。そして、軟データバイアス回路140は、返された被バイアス相対メトリックを用いてそれぞれの相対メトリックを置きかえる。
【0022】
誤りは、ほとんどの場合に(小さな相対メトリック値を有する)最も可能性の高いシンボルに関連しており、他の可能性のより低いシンボル値のバイアス関数は、誤り訂正性能にあまり関連していないことがわかっている。これに起因して、ハードウェア複雑度を節減するために、非ゼロ相対メトリックの全てに同じバイアス値を適用することができる。このため、例えば単一の被バイアス相対メトリック167を返すアドレス169として単一の相対メトリックがバイアスルックアップテーブル165に与えられる。この被バイアス相対メトリック167は非ゼロ相対メトリックの全ての代わりに用いられる。他の場合、バイアス値は正しく選択されたシンボル値(すなわち、最も低い相対メトリック値)に基づいて選択することができる。なぜなら、磁気記録物理学の特性に起因して、磁気ベースのストレージデバイスでは、非遷移シンボル(例えば「11」及び「00」)と比較して、遷移シンボル(例えば「00」及び「10」)の場合に本質的により多くの雑音が存在するためである。
【0023】
被バイアス相対メトリックを非二値メトリックに逆変換することは、実質的に、非二値メトリックから相対メトリックへの上述した変換の逆である。同じ2ビット非二値データ処理システムを例として用いて、以下の式に従って、被バイアス相対メトリック(すなわち、BRM
00、BRM
01、BRM
10、及びBRM
11)から、更新された非二値メトリック(すなわち、UNBM
00、UNBM
01、UNBM
10、及びUNBM
11)が計算される。
UNBM
00=BRM
00−最小相対メトリック、
UNBM
01=BRM
01−最小相対メトリック、
UNBM
10=BRM
10−最小相対メトリック、及び
UNBM
11=BRM
11−最小相対メトリック、
ここで、最小相対メトリックは最も低い値を有する被バイアス相対メトリック(BRM
00、BRM
01、BRM
10、及びBRM
11)である。更新されたバイアスされていないメトリックは、変更された検出出力142の一部分として与えられる。軟バイアス回路140の例は2ビットの例であるが、同じ手法を、シンボルあたり3つ以上のビットを含むシンボルに対し動作する非二値データ処理システムに適用するように拡張することができることに留意すべきである。
【0024】
加えて、軟データバイアス回路140は、検出出力137からの軟判定データ及び変更された検出出力142からの軟判定データを、ヒストグラムに基づくルックアップテーブル計算回路180への軟判定出力144として与える。ヒストグラムに基づくルックアップテーブル計算回路180は、検出出力137の複数のインスタンスに対応する受信した軟判定出力144をヒストグラム化する。それぞれ異なる誤り率を呈する検出出力137の2つの異なるインスタンス(すなわち第1の符号語に対応する第1の一連の検出出力及び第2の符号語に対応する第2の一連の検出出力)に対応するヒストグラムを用いて、検出出力137の2つのインスタンス間の縮退に対応するバイアス値182を計算する。
【0025】
図5を見ると、グラフ表現500が、ヒストグラムA(曲線501)及びヒストグラムB(曲線503)の例を示している。特に、ヒストグラムA(曲線501)は、−15の対数尤度比(正しい可能性が非常に低い)を有する検出出力137からの軟判定出力144の正規化された数が約10
−5であることを示している。−14〜15の対数尤度比の各値は、約10
−5から10
0を僅かに下回る数まで増大する。同様に、ヒストグラムB(曲線503)は、−15(正しい可能性が非常に低い)の対数尤度比を有する検出出力137からの軟判定出力144の正規化された数が約10
−4であることを示している。−14〜15の対数尤度比の各値は、約10
−4から10
0を僅かに下回る数まで増大する。データセットからの低い値の軟判定出力144の尤度の増大によって明白であるように、ヒストグラムA(曲線501)に対応するデータセットの誤り率は、ヒストグラムB(曲線503)に対応するデータセットの誤り率より低い。
図5bを見ると、グラフ表現550が、ヒストグラムAに対応する累積質量関数(cumulative mass function)(曲線551)及びヒストグラムBに対応する累積質量関数(曲線553)の例を示している。
【0026】
例示的なヒストグラムA及びヒストグラムBを用いると、バイアス値182を計算するプロセスは、(1)軟判定出力144として受信されたデータをヒストグラム化し、ヒストグラムA及びヒストグラムBをもたらし、(2)ヒストグラムA及びヒストグラムBを正規化して、曲線501及び曲線503に類似したデータをもたらし、(3)受信したヒストグラムデータの正規化された累積質量関数を計算し、(4)計算された累積質量関数を用いてバイアス値182を計算することを含む。ヒストグラムA及びヒストグラムBを正規化し、正規化された累積質量関数を計算し、バイアス値182を計算することは、以下の疑似コードに従って行うことができる。
/*(2)ヒストグラムA及びヒストグラムBを正規化する*/
For(i=1〜ヒストグラムAの長さ)
{
正規化されたヒストグラムA[i]=(ヒストグラムA[i])/(ヒストグラムAの全ての要素の和);
正規化されたヒストグラムB[i]=(ヒストグラムB)[i]/(ヒストグラムBの全ての要素の和)
}
/*(3)受信したヒストグラムデータの正規化された累積質量関数を計算する*/
累積質量関数A(CMFA[1])=正規化されたヒストグラムA[1];
累積質量関数B(CMFB[1])=正規化されたヒストグラムB[1];
For(i=2〜ヒストグラムAの長さ)
{
CMFA[i]=CMFA[i−1]+正規化されたヒストグラムA[i];
CMFB[i]=CMFB[i−1]+正規化されたヒストグラムB[i]
}
/*(4)計算された累積質量関数を用いてバイアス値182を計算する*/
バイアスルックアップテーブル165の長さ(LUT長)=ヒストグラムAの長さ;
バイアス値182(LUT[])=Array[LUT長];
k=1;
For(i=1〜LUT長)
{
If(i==1)
{
LUT[i]=1
}
Else
{
LUT[i]=LUT[i−1]
}
For(j=LUT[i]〜ヒストグラムAの長さ)
{
If(abs_value(CMFA[i]−CMFA[LUT[i]])>abs_value(CMFA[i]−CMFA[j])
{
LUT[i]=j
}
}
While(k<=LUT[i])
{
更新された累積質量関数(UCMFA[])=CMFA[i];
k=k+1
}
}
【0027】
上述した疑似コードは、ヒストグラムA内のインスタンス数(すなわちヒストグラムAの長さ)がヒストグラムBのインスタンス数と同じであると仮定する。
図1に戻ると、処理の終了時に、バイアス値182に対応するLUT[i]は、ヒストグラムAがヒストグラムBによって置き換えられるように、対応する相対メトリック値を置き換えるのに用いられる被バイアス相対メトリックを表す。これらの値はバイアスルックアップテーブル165に格納される。このため、ヒストグラムA内の値のうちの1つに対応する値がアドレス169によって選択されるとき(例えばヒストグラムAの要素のうちの1つに対応する−15と15との間の対数尤度比)、対応する被バイアス相対メトリック167がバイアスルックアップテーブル165によって軟データバイアス回路140に与えられる。そして、軟データバイアス回路140は相対メトリックを、受信したバイアス相対メトリックと置き換える。次に、これらの被バイアス相対メトリックが上述した更新された非二値メトリックに変換される。
【0028】
計算されたバイアス値182はバイアスルックアップテーブル165に格納される。上述したように、非ゼロ相対メトリックが計算され、非ゼロ相対メトリックに対応するアドレス169がバイアスルックアップテーブル165に与えられる。それに応じて、バイアスルックアップテーブル165はバイアス値167を与え、該バイアス値167を用いて、回路動作を、バイアス値182を計算するのに用いられた2つのヒストグラムの誤り率差に対応する、より高い誤り率差を呈するように縮退させることができる。
【0029】
選択器回路150は、検出出力137と変更された検出出力142との間で選択し、選択出力152を与える。検出出力137と変更された検出出力142との間での選択は、バイアス制御回路170によって制御された選択器入力172に基づいて行われる。本発明のいくつかの実施形態では、バイアス制御回路170はプログラム可能なレジスタである。選択器入力172が論理「1」としてアサートされると、変更された検出出力142が選択出力152として与えられる。代わりに、選択器入力172が論理「0」としてアサートされると、検出出力137が選択出力152として与えられる。
【0030】
選択出力152はデータ復号器回路155に与えられる。データ復号器回路155は選択出力152にデータ復号アルゴリズムを適用して、復号出力157をもたらす。データ復号器回路155は、当該技術分野において既知の任意のデータ復号器回路とすることができる。本発明の1つの実施形態では、データ復号器回路155は非二値低密度パリティチェック復号器回路である。復号出力157が収束に失敗した(すなわち、誤り又は元々書き込まれタデータセットとの差を含む)場合、データ検出器回路135は、バッファー回路130からバッファー済みデータ132として引き出された、復号出力157を導出するのに用いられたデータセットを再処理することができる。再処理は、復号出力157をガイドとして用いて行われる。データ検出アルゴリズム及びデータ復号アルゴリズムの双方の適用を組み合わせたものは大域反復と呼ばれる。元のデータセットを取り出すプロセスは、多数の大域反復を含むことができる。
【0031】
図2を見ると、
図1の軟データバイアス回路140の代わりに用いることができる軟データバイアス回路200の1つの実施態様が示されている。軟データバイアス回路200は、非二値メトリック対相対メトリック変換回路205を含む。非二値メトリックは検出出力137から取り出された軟判定データに対応する。非二値メトリックから相対メトリックへの変換は、最も可能性の高いシンボル値に対応するメトリックにゼロ値が割り当てられ、全ての他の可能なシンボル値に非負のメトリックが割り当てられるように、受信した非二値メトリック間の相対差を計算することを含む。検出出力137において4つの可能なシンボル値(すなわち00、01、10,11)及び対応する非二値メトリック(すなわち、M
00、M
01、M
10、及びM
11)が存在する2ビット非二値データ処理システムを例として用いると、以下の式に従って相対メトリック(RM
00、RM
01、RM
10、及びRM
11)が計算される。
RM
00=M
00−基準メトリック、
RM
01=M
01−基準メトリック、
RM
10=M
10−基準メトリック、及び
RM
11=M
11−基準メトリック、
ここで、基準メトリックは書き込まれた真のシンボル値(すなわちテストパターン)に対応するメトリック値である。真のシンボル値に対応するメトリック値は、メモリから再生することもできるし、予めプログラムされたメモリから基準メトリックにアクセスする等の別の手法を用いて再生することもできる。
【0032】
上述した最低メトリックは、変換回路205によって、バイアスルックアップテーブル165へのアドレス169として与えられる。引換えに、バイアスルックアップテーブル165は対応する被バイアス相対メトリック167を与える。被バイアス相対メトリック167は、被バイアス相対メトリック置換回路220に与えられる。被バイアス相対メトリック置換回路220は、非ゼロ相対メトリック(RM
00、RM
01、RM
10、及びRM
11のうちの3つ)を被バイアス相対メトリック(BRM
00、BRM
01、BRM
10、及びBRM
11のうちの3つ)として受信されたそれぞれの値と置き換える。いくつかの場合、被バイアス相対メトリック167は、3つの非ゼロ相対メトリックを置き換えるのに用いられる単一の被バイアス相対メトリックである。他の場合、被バイアス相対メトリック167は、3つの非ゼロ相対メトリックに対応して置き変えるのに用いられる3つの値である。
【0033】
被バイアス相対メトリック(BRM
00、BRM
01、BRM
10、及びBRM
11)は被バイアス相対メトリック対更新された非二値メトリック変換回路230に与えられる。変換回路230は実質的に、変換回路205によって実行される変換の逆変換を実行する。同じ2ビット非二値データ処理システムを例として用いて、以下の式に従って、被バイアス相対メトリック(すなわち、BRM
00、BRM
01、BRM
10、及びBRM
11)から、更新された非二値メトリック(すなわち、UNBM
00、UNBM
01、UNBM
10、及びUNBM
11)が計算される。
UNBM
00=BRM
00−最小相対メトリック、
UNBM
01=BRM
01−最小相対メトリック、
UNBM
10=BRM
10−最小相対メトリック、及び
UNBM
11=BRM
11−最小相対メトリック、
ここで、最小相対メトリックは最も低い値を有する被バイアス相対メトリック(BRM
00、BRM
01、BRM
10、及びBRM
11)である。更新されたバイアスされていないメトリックは、変更された検出出力142の一部分として与えられる。軟バイアス回路200の例は2ビットの例であるが、同じ手法を、シンボルあたり3つ以上のビットを含むシンボルに対し動作する非二値データ処理システムに適用するように拡張することができることに留意すべきである。
【0034】
図3を見ると、本発明のいくつかの実施形態による、選択可能な動作縮退回路部を含む別のデータ処理回路300が示されている。データ処理回路100とデータ処理回路300との間の基本的な差は、適応バイアス値がデータ処理回路100によって生成されるのと比較して、データ処理回路300が固定のバイアス値又はプログラム可能なバイアス値を用いることである。いくつかの例では、データ処理回路において用いられる固定のバイアス値又はプログラム可能なバイアス値は、
図1に関連して上記で検討したものと同じヒストグラムに基づく手法を用いて計算することができるが、適応的に更新されない。他の場合、固定のバイアス値又はプログラム可能なバイアス値は、別の手法を用いて計算又は選択される。
【0035】
データ処理回路300は、アナログ入力305を受信し、処理済みアナログ信号312を与えるアナログフロントエンド回路310を含む。アナログフロントエンド回路310は当該技術分野において既知の任意のアナログ処理回路とすることができる。本発明の1つの特定の実施形態では、アナログフロントエンド回路310は、受信した入力を増幅し、雑音フィルタリングして処理済みアナログ信号312をもたらすように動作する増幅器回路及び連続時間フィルター(すなわちアナログフィルター)を含む。アナログ信号305は、ストレージ媒体又は転送媒体を含むがそれらに限定されない種々のソースから取り出すことができる。本明細書において与えられる開示に基づいて、当業者であれば、アナログ入力信号305を取り出すことができる種々のソースを認識するであろう。
【0036】
処理済みアナログ信号312はアナログ/デジタル変換器回路314に与えられ、該アナログ/デジタル変換器回路314は処理済みアナログ信号312をサンプリングして対応する一連のデジタルサンプル316をもたらす。アナログ/デジタル変換器回路314は、連続時間信号を一連のデジタル値に変換することが可能な当該技術分野において既知の任意の回路とすることができる。デジタルサンプル316は、当該技術分野において既知のデジタル有限インパルス応答回路として実装することができる等化器回路320に与えられる。等化器回路320はデジタルサンプル316に対し等化を実行し、等化された出力325をもたらす。本明細書において提供される開示に基づいて、当業者であれば、本発明の様々な実施形態に関連して用いることができる種々の等化器回路を認識するであろう。
【0037】
等化された出力325はデータ復号器回路335及びバッファー回路330に与えられる。データ復号器回路335は等化された出力325にデータ検出アルゴリズムを適用し、検出出力337をもたらす。データ復号器回路335は、ビタビアルゴリズムデータ復号器回路又は最大事後データ復号器回路を含むがそれらに限定されない当該技術分野において既知の任意のデータ復号器回路とすることができる。いくつかの場合、検出出力337は硬判定データ及び軟判定データの双方を含む。本明細書において用いられるとき、「硬判定データ」というフレーズは、所与の単数又は複数のビット期間の或る特定の論理レベルを示すデータ出力を指す。例えば、二値システムでは、論理レベルは「1」又は「0」とすることができる。別の例として、2ビット二値システムでは、論理レベルは「00」、「01」、「10」、又は「11」とすることができる。本明細書において提供される開示に基づいて、当業者であれば、データ復号器回路によって生成することができる種々の硬判定データを認識するであろう。本明細書において用いられるとき、「軟判定データ」というフレーズは、データ復号器回路335が単数又は複数のビット期間のデータを正しく検出した尤度を示すデータ出力を指す。本発明の1つの特定の実施形態では、軟判定データは−15〜+15の範囲をとり、−15は判定が正しい可能性が非常に低いことを示し、+15は判定が正しい可能性が非常に高いことを示す。−14〜から+14に増大する値は、判定が正しかったことの尤度における対応する増大に対応する。本明細書において提示される開示に基づいて、当業者であれば、軟判定データを表すのに用いることができる種々の値及び範囲を認識するであろう。
【0038】
非二値データ処理システムでは、シンボル群は一緒に処理される。例えば、2ビット非二値データ処理システムでは、2ビットシンボルの群は一緒に処理され、該2ビットシンボルの群は4つの可能な出力(すなわち、00、01、10、11)を表すことが可能である。そのようなシステムでは、メトリック(すなわちユークリッド距離)は、可能なシンボル値のそれぞれについて計算される。2ビットシンボルの場合、4つのメトリックが計算される。大きなメトリック値は、対応するシンボル値の可能性が低いことを示し、小さなメトリックはより高い尤度を示す。シンボルは、正しく選択されたシンボル値が最小のメトリックに対応しないとき、誤りである。対照的に、シンボルは、正しく選択されたシンボル値が最も小さなメトリックに対応するとき、正しいと判断される。以下で検討する復号アルゴリズムは、任意の誤りを訂正する複数のメトリックを処理する。検出出力137は、軟データ判定としてシンボル値の可能な値のそれぞれのメトリックを含み、最小のメトリックに対応するシンボル値を含む場合も含まない場合もある。
【0039】
検出出力337は、軟データバイアス回路340及び選択器回路350の双方に与えられる。軟データバイアス回路340は、検出出力337に含まれる軟判定データをバイアスして変更された検出出力342をもたらすように動作可能である。特に、検出出力337からの軟判定データは、非二値メトリックから相対メトリックに変換され、相対メトリックに雑音バイアスを適用することによってバイアスされて、被バイアス相対メトリックがもたらされ、被バイアス相対メトリックは非二値メトリック(すなわち更新された二値メトリック)に逆変換される。
【0040】
非二値メトリックから相対メトリックへの変換は、最も可能性の高いシンボル値に対応するメトリックにゼロ値が割り当てられ、全ての他の可能なシンボル値に非負のメトリックが割り当てられるように、受信した非二値メトリック間の相対差を計算することを含む。検出出力137において4つの可能なシンボル値(すなわち00、01、10,11)及び対応する非二値メトリック(すなわち、M
00、M
01、M
10、及びM
11)が存在する2ビット非二値データ処理システムを例として用いると、以下の式に従って相対メトリック(RM
00、RM
01、RM
10、及びRM
11)が計算される。
RM
00=M
00−基準メトリック、
RM
01=M
01−基準メトリック、
RM
10=M
10−基準メトリック、及び
RM
11=M
11−基準メトリック、
ここで、基準メトリックは書き込まれた真のシンボル値(すなわちテストパターン)に対応するメトリック値である。真のシンボル値に対応するメトリック値は、メモリから再生することもできるし、予めプログラムされたメモリから基準メトリックにアクセスする等の別の手法を用いて再生することもできる。
【0041】
理解されるように、正しいシンボル値に対応する相対メトリックは、適切に選択された場合ゼロである。このため、不正確なシンボル値(すなわち最低のメトリックに対応しないシンボル値)のそれぞれについて、対応する相対メトリックが正である場合、データ検出アルゴリズムの適用によって適切なシンボル値が正しく選択されている。逆に、相対メトリックのうちのいずれかが負である場合、データ検出アルゴリズムの適用によって適切なシンボル値が正しく選択されていない。
【0042】
軟データバイアス回路340は、非ゼロ相対メトリックをバイアスして被バイアス相対メトリックをもたらす。これは、歪みの結果生じる誤りが、歪みが適用されない場合に結果として生じる誤りの数に予測可能に関連するよう、検出出力337を歪めるように行うことができる。データ処理回路300の動作を予測可能に縮退させることによって、データ処理回路300が展開されるシステムを特徴付けるのに十分な数の誤りを生成するのに必要とされる時間が減少し、縮退動作からの対応する誤りの数が実際の誤りの数に予測可能に関連しているので、特徴付けはシステムの実際の動作を表す。いくつかの場合、非ゼロ相対メトリックの全てに同じ固定のバイアス値が乗算される。他の場合、非ゼロ相対メトリックの全てに、非ゼロ相対メトリックのうちの1つ又は非ゼロ相対メトリックの組合せに基づいて選択された同じバイアス値が乗算される。更に他の場合、非ゼロ相対メトリックのそれぞれに、対応する相対メトリックに基づいて選択されたそれぞれのバイアス値が乗算される。個々のバイアス値が用いられる場合、バイアス値は相対メトリックの値及びゼロへの近接性(すなわちゼロに最も近いか、ゼロに2番目に近いか、ゼロに3番目に近い)の双方に基づいて選択することができる。
【0043】
誤りは、ほとんどの場合に(小さな相対メトリック値を有する)最も可能性の高いシンボルに関連しており、可能性のより低い他のシンボル値のバイアス関数は、誤り訂正性能にあまり関連していないことがわかっている。これに起因して、ハードウェア複雑度を節減しようとして、非ゼロ相対メトリックの全てに同じバイアス値を適用することができる。他の場合、バイアス値は正しく選択されたシンボル値(すなわち、最も低い相対メトリック値)に基づいて選択することができる。なぜなら、磁気記録物理学の特性に起因して、磁気ベースのストレージデバイスでは、非遷移シンボル(例えば「11」及び「00」)と比較して、遷移シンボル(例えば「01」及び「10」)の場合に本質的により多くの雑音が存在するためである。
【0044】
本発明のいくつかの実施形態では、バイアスは、計算された相対メトリックに、軟データバイアス回路340によってバイアス値367を乗算してそれぞれの被バイアス相対メトリック(BRM)をもたらすことによって行われる。バイアス値367は、特定の実施態様に依拠してプログラム可能又はハードワイヤードのいずれかとすることができる固定バイアス値レジスター365によって与えられる。次に、軟データバイアス回路340は、実質的に非二値メトリックから相対メトリックへの上述した変換の逆であるプロセスを用いて被バイアス相対メトリックを非二値メトリックに逆変換する。同じ2ビット非二値データ処理システムを例として用いて、以下の式に従って、被バイアス相対メトリック(すなわち、BRM
00、BRM
01、BRM
10、及びBRM
11)から更新された非二値メトリック(すなわち、UNBM
00、UNBM
01、UNBM
10、及びUNBM
11)が計算される。
UNBM
00=BRM
00−最小相対メトリック、
UNBM
01=BRM
01−最小相対メトリック、
UNBM
10=BRM
10−最小相対メトリック、及び
UNBM
11=BRM
11−最小相対メトリック、
ここで、最小相対メトリックは最も低い値を有する被バイアス相対メトリック(BRM
00、BRM
01、BRM
10、及びBRM
11)である。更新されたバイアスされていないメトリックは、変更された検出出力342の一部分として与えられる。軟バイアス回路340の例は2ビットの例であるが、同じ手法を、シンボルあたり3つ以上のビットを含むシンボルに対し動作する非二値データ処理システムに適用するように拡張することができることに留意すべきである。
【0045】
選択器回路350は、検出出力337と変更された検出出力142との間で選択し、選択出力352を与える。検出出力337と変更された検出出力342との間での選択は、バイアス制御回路370によって制御された選択器入力372に基づいて行われる。本発明のいくつかの実施形態では、バイアス制御回路370はプログラム可能なレジスターである。選択器入力372が論理「1」としてアサートされると、変更された検出出力342が選択出力352として与えられる。代わりに、選択器入力372が論理「0」としてアサートされると、検出出力337が選択出力352として与えられる。
【0046】
選択出力352はデータ復号器回路355に与えられる。データ復号器回路355は選択出力352にデータ復号アルゴリズムを適用して、復号出力357をもたらす。データ復号器回路355は、当該技術分野において既知の任意のデータ復号器回路とすることができる。本発明の1つの実施形態では、データ復号器回路355は非二値低密度パリティチェック復号器回路である。復号出力357が収束に失敗した(すなわち、誤り又は元々書き込まれタデータセットとの差を含む)場合、データ検出器回路335は、バッファー回路330からバッファー済みデータ332として引き出された、復号出力357を導出するのに用いられたデータセットを再処理することができる。再処理は、復号出力357をガイドとして用いて行われる。データ検出アルゴリズム及びデータ復号アルゴリズムの双方の適用を組み合わせたものは大域反復と呼ばれる。元のデータセットを取り出すプロセスは、多数の大域反復を含むことができる。
【0047】
図4を見ると、流れ
図400が、本発明のいくつかの実施形態による選択可能な軟データバイアスの方法を示している。流れ
図400に従ってアナログ入力が受信される(ブロック405)。アナログ入力はストレージ媒体上に保持される情報に対応することができる。アナログ入力は一連のデジタルサンプルに変換される(ブロック410)。アナログ/デジタル変換プロセスは、アナログ信号を対応するデジタルサンプルに変換する、当該技術分野において既知の任意のプロセスとすることができる。次に、データ等化プロセスがデジタルサンプルに適用され、等化された出力がもたらされる(ブロック415)。本発明のいくつかの実施形態では、等化プロセスは、1つ又は複数のデジタル有限インパルスフィルターによって実行される。本明細書において提供される開示に基づいて、当業者であれば、本発明の様々な実施形態に関連して用いることができる種々の等化方法を認
識するであろう。
【0048】
等化された出力に対しデータ検出が実行される(ブロック420)。データ処理は、限定ではないが、等化された出力にデータ検出アルゴリズムを適用して検出出力をもたらすことを含むことができる。1つの実施形態では、データ検出プロセスは当該技術分野において既知のビタビアルゴリズム検出プロセス又は最大事後検出プロセスである。検出出力は硬判定データ及び軟判定データの双方を含むことができる。本明細書において提供される開示に基づいて、当業者であれば、本発明の様々な実施形態に関連して用いることができる種々のデータ検出プロセス及び/又はアルゴリズムを認識するであろう。
【0049】
軟データ周辺化(soft data marginalization)が選択されているか否かが判断される(ブロック425)。そのような軟データ周辺化は、データ処理の結果生じる誤りの数を予測可能に増大させるように選択することができる。データ処理の結果生じる誤りの数を予測可能に増大させることによって、プロセスが展開されるシステムを特徴づけるのに十分な数の誤りを生成するのに必要とされる時間が減少する。周辺化された動作からの対応する誤りの数は実際の誤りの数に予測可能に関連しているので、特徴付けはシステムの実際の動作を表す。
【0050】
軟データ周辺化が選択されている場合(ブロック425)、検出出力の軟判定データとして含まれている非二値メトリックが相対メトリックに変換される(ブロック430)。非二値メトリックから相対メトリックへの変換は、最も可能性の高いシンボル値に対応するメトリックにゼロ値が割り当てられ、全ての他の可能なシンボル値に非負のメトリックが割り当てられるように、受信した非二値メトリック間の相対差を計算することを含む。検出出力337において4つの可能なシンボル値(すなわち00、01、10,11)及び対応する非二値メトリック(すなわち、M
00、M
01、M
10、及びM
11)が存在する2ビット非二値データ処理システムを例として用いると、以下の式に従って相対メトリック(RM
00、RM
01、RM
10、及びRM
11)が計算される。
RM
00=M
00−基準メトリック、
RM
01=M
01−基準メトリック、
RM
10=M
10−基準メトリック、及び
RM
11=M
11−基準メトリック、
ここで、基準メトリックは書き込まれた真のシンボル値(すなわちテストパターン)に対応するメトリック値である。真のシンボル値に対応するメトリック値は、メモリから再生することもできるし、予めプログラムされたメモリから基準メトリックにアクセスする等の別の手法を用いて再生することもできる。
【0051】
次に、相対メトリックがバイアスされ、被バイアス相対メトリック(BRM
00、BRM
01、BRM
10、及びBRM
11)がもたらされる(ブロック435)。これは例えば、
図1に関連して上記で検討したような非ゼロ相対メトリックのうちの1つに基づいてバイアスルックアップテーブルにアクセスすることによって行うことができる。他の場合、バイアスは、以下の式に従って相対メトリックのそれぞれにバイアス値を乗算することによって行うことができる。
BRM
00=(バイアス値)*(RM
00)
BRM
01=(バイアス値)*(RM
01)、
BRM
10=(バイアス値)*(RM
10)、及び
BRM
11=(バイアス値)*(RM
11)
バイアス値は
図3に関連して上記で検討したものに類似した固定値又はプログラム可能な値とすることができる。
【0052】
バイアスを適用するのに用いることができる他の手法に着目すべきである。例えば、本発明の他の実施形態では、バイアスは、以下の式に従って、対応する相対メトリックからバイアス値を減算することによって行うことができる。
BRM
00=RM
00−バイアス値
BRM
01=RM
01−バイアス値、
BRM
10=RM
10−バイアス値、及び
BRM
11=RM
11−バイアス値
本明細書において提供される開示に基づいて、当業者であれば、本発明の様々な実施形態に関連して用いることができる、バイアスを適用する他の手法を認識するであろう。
【0053】
次に、被バイアス相対メトリックは更新された非二値メトリック(UNBM
00、UNBM
01、UNBM
10、及びUNBM
11)に変換される(ブロック440)。同じ2ビット非二値データ処理システムを例として用いて、以下の式に従って、被バイアス相対メトリック(すなわち、BRM
00、BRM
01、BRM
10、及びBRM
11)から更新された非二値メトリック(すなわち、UNBM
00、UNBM
01、UNBM
10、及びUNBM
11)が計算される。
UNBM
00=BRM
00−最小相対メトリック、
UNBM
01=BRM
01−最小相対メトリック、
UNBM
10=BRM
10−最小相対メトリック、及び
UNBM
11=BRM
11−最小相対メトリック、
ここで、最小相対メトリックは最も低い値を有する被バイアス相対メトリック(BRM
00、BRM
01、BRM
10、及びBRM
11)である。更新されたバイアスされていないメトリックは、変更された検出出力の一部分として与えられる(ブロック445)。流れ
図400のプロセスは2ビットシンボルの例を用いて説明されているが、同じ手法を、シンボルあたり3つ以上のビットを含むシンボルに対し動作する非二値データ処理システムに適用するように拡張することができることに留意すべきである。
【0054】
軟データ周辺化が選択されていないか(ブロック425)、又は周辺化プロセスが完了している(ブロック430〜445)場合、検出出力の標準の処理(ブロック420)が実行される。特に、検出出力にデータ復号アルゴリズムが適用され、復号出力がもたらされる(ブロック450)。復号アルゴリズムは、例えば当該技術分野において既知の非二値低密度パリティチェックアルゴリズムとすることができる。本明細書において提供される開示に基づいて、当業者であれば、本発明の様々な実施形態に関連して適用することができる種々の復号アルゴリズムを認識するであろう。復号出力が収束している(すなわち元々書き込まれたデータが結果として正しく特定されている)か否かが判断される(ブロック455)。復号出力が収束している場合(ブロック455)、復号出力がデータ出力として与えられる(ブロック460)。代替的に、復号出力が収束に失敗した場合(ブロック455)、復号出力をガイドとして用いて後続のデータ検出プロセスが適用される(ブロック420)。
【0055】
図6を見ると、本発明のいくつかの実施形態による雑音挿入回路部を有する受信機620を備えるデータ送信システム600が示されている。データ送信システム600は、当該技術分野において既知の転送媒体630を介して、符号化された情報を送信するように動作可能な送信機610を備える。符号化されたデータは、受信機620によって転送媒体630から受信される。受信機620は、
図1、
図2、若しくは
図3に関連して上記で検討した回路部と同様に実装することができ、かつ/又は
図4に関連して上述した回路部と同様に動作することができる性能縮退制御回路部を組み込む。
【0056】
図7は、本発明のいくつかの実施形態による性能縮退制御回路部を有する読取りチャネル回路710を備えるストレージシステム700を示している。ストレージシステム700は、例えばハードディスクドライブとすることができる。ストレージシステム700は前置増幅器770、インターフェースコントローラー720、ハードディスクコントローラー766、モーターコントローラー768、スピンドルモーター772、ディスクプラッター778、及び読取り/書込みヘッド機構776も備える。インターフェースコントローラー720はディスクプラッター778への/からのデータのアドレス指定及びタイミングを制御する。ディスクプラッター778上のデータは、読取り/書込みヘッド機構776がディスクプラッター778上に適切に位置決めされているときに該機構によって検出することができる磁気信号の群からなる。1つの実施形態では、ディスクプラッター778は長手記録方式又は垂直記録方式のいずれかに従って記録される磁気信号を含む。
【0057】
通常の読取り動作では、読取り/書込みヘッド機構776はモーターコントローラー768によって、ディスクプラッター778上の所望のデータトラックの上方に正確に位置決めされる。モーターコントローラー768は、ハードディスクコントローラー766の指示の下で読取り/書込みヘッド機構をディスクプラッター778上の適切なデータトラックに移動することによって、ディスクプラッター778に対して読取り/書込みヘッド機構776を位置決めし、かつスピンドルモーター772を駆動する。スピンドルモーター772は所定のスピンレート(RPM)でディスクプラッター778をスピンさせる。読取り/書込みヘッド機構778が適切なデータトラックに近接して位置決めされると、ディスクプラッター778がスピンドルモーター772によって回転するのに応じてディスクプラッター778上のデータを表す磁気信号が読取り/書込みヘッド機構776によって感知される。感知された磁気信号は、ディスクプラッター778上の磁気データを表す連続した微小アナログ信号として与えられる。この微小アナログ信号は、読取り/書込みヘッド機構776から、前置増幅器770を介して、読取りチャネル回路710に送信される。前置増幅器770は、ディスクプラッター778からアクセスされた微小アナログ信号を増幅するように動作可能である。そして、読取りチャネル回路710は受信したアナログ信号を復号及びデジタル化し、ディスクプラッター778に元々書き込まれた情報を再生する。このデータは、読取りデータ703として受信回路に与えられる。書込み動作は実質的に、先行する読取り動作の反対であり、書込みデータ701が読取りチャネル回路710に与えられる。次にこのデータは符号化され、ディスクプラッター778に書き込まれる。
【0058】
1つ又は複数のセットアップ期間中、備えられた性能縮退制御回路部は、回路動作を縮退させ、そうでなければ予期されなかった複数の誤りを引き起こす。このプロセスの間、軟データは、回路性能に制御された形で負の影響を与えるように変更される。多くの利点の単に1つとして、誤りを制御可能に引き起こすことができることによって、通常の誤り率が発生する場合に可能であるよりも高速のデバイス特徴付けが可能になる。そのような性能縮退は、製造中に行うことができ、かつ/又はストレージデバイス700が展開されると行うことができる。性能縮退制御回路部は、
図1、
図2、若しくは
図3に関連して上記で検討した回路部と同様に実装することができ、かつ/又は
図4に関連して上述した回路部と同様に動作することができる。
【0059】
ストレージシステム700は、例えばRAID(低価格ディスク冗長アレイ又は独立ディスク冗長アレイ)ベースのストレージシステム等のより大きなストレージシステムに統合することができることに留意すべきである。また、ストレージシステム700の様々な機能又はブロックをソフトウェア又はファームウェアのいずれかに実装することができる一方、他の機能又はブロックはハードウェアに実装されることにも留意すべきである。
【0060】
図8を見ると、流れ
図800が、本発明のいくつかの実施形態による、縮退係数又はバイアス値を求める方法を示している。流れ
図800によれば、相対メトリックが
図4のブロック430から受信される。これらの相対メトリックは、所与のシンボル値が正しいことの尤度を示す軟判定データに変換される。第1の状態に対応する相対メトリックのヒストグラムが計算される(ブロック810)。第1の状態は、処理されると第1の誤り率をもたらす第1のデータセット(すなわち一連の値)である。第1の状態に対応するヒストグラム(ブロック810)は正規化される(ブロック815)。この正規化は、以下の疑似コードに従って行うことができる。
/*ヒストグラムAを正規化する*/
For(i=1〜ヒストグラムAの長さ)
{
正規化されたヒストグラムA[i]=(ヒストグラムA[i])/(ヒストグラムAの全ての要素の和);
}
ヒストグラムAは第1の状態のヒストグラムに対応する。第1の状態のヒストグラムの累積質量が計算される(ブロック817)。この計算は、以下の疑似コードに従って行うことができる。
/*受信したヒストグラムデータの正規化された累積質量関数を計算する*/
累積質量関数A(CMFA[1])=正規化されたヒストグラムA[1];
For(i=2〜ヒストグラムAの長さ)
{
CMFA[i]=CMFA[i−1]+正規化されたヒストグラムA[i];
}
【0061】
第2の状態(すなわち第2の誤り率)のデータセットについて同じプロセスが実行される。特に、第2の状態に対応する相対メトリックのヒストグラムが計算される(ブロック820)。第2の状態は、処理されると第2の誤り率をもたらす第2のデータセット(すなわち一連の値)である。第2の状態に対応するヒストグラム(ブロック820)は正規化される(ブロック825)。この正規化は、以下の疑似コードに従って行うことができる。
/*ヒストグラムBを正規化する*/
For(i=1〜ヒストグラムBの長さ)
{
正規化されたヒストグラムB[i]=(ヒストグラムB[i])/(ヒストグラムBの全ての要素の和);
}
ヒストグラムBは第2の状態のヒストグラムに対応する。第2の状態のヒストグラムの累積質量が計算される(ブロック827)。この計算は、以下の疑似コードに従って行うことができる。
/*受信したヒストグラムデータの正規化された累積質量関数を計算する*/
累積質量関数B(CMFB[1])=正規化されたヒストグラムB[1];
For(i=2〜ヒストグラムBの長さ)
{
CMFB[i]=CMFB[i−1]+正規化されたヒストグラムB[i];
}
【0062】
第1の状態と第2の状態との間で変換するためのバイアス値が順次求められる(ブロック830)。これらのバイアス値は、
図4に関連して上記で検討したデータ処理動作を予測可能に縮退させるように用いることができ、具体的には、
図4のブロック435で用いられたバイアス値である。いくつかの実施形態では、バイアス値を求めることは、以下の疑似コードに従って行われる。
/*計算された累積質量関数を用いてバイアス値を計算する*/
バイアスルックアップテーブルの長さ(LUT長)=ヒストグラムAの長さ;
バイアス値(LUT[])=Array[LUT長];
k=1;
For(i=1〜LUT長)
{
If(i==1)
{
LUT[i]=1
}
Else
{
LUT[i]=LUT[i−1]
}
For(j=LUT[i]〜ヒストグラムAの長さ)
{
If(abs_value(CMFA[i]−CMFA[LUT[i]])>abs_value(CMFA[i]−CMFA[j])
{
LUT[i]=j
}
}
While(k<=LUT[i])
{
更新された累積質量関数(UCMFA[])=CMFA[i];
k=k+1
}
}
次に、計算されたバイアス値(LUT[])はバイアスルックアップテーブルに格納され、該バイアスルックアップテーブルから、バイアスに用いるために計算されたバイアス値にアクセスすることができる(ブロック835)。
【0063】
図9を見ると、本発明の様々な実施形態によるヒストグラムに基づくバイアス値計算回路900が示されている。ヒストグラムに基づくバイアス値計算回路900はヒストグラム生成回路905を備える。ヒストグラム生成回路905は、検出出力137から軟判定データを受信し、1つのデータセットの軟判定データの各値をカバーするヒストグラムA907、及び別のデータセットの軟判定データの各値をカバーするヒストグラムB909を生成する。ヒストグラムA907及びヒストグラムB909はヒストグラム正規化回路910に与えられ、該ヒストグラム正規化回路910は、受信したヒストグラムの双方を正規化して、正規化されたヒストグラムA917及び正規化されたヒストグラムB919をもたらす。いくつかの実施形態では、正規化されたヒストグラムは以下の疑似コードに従って計算される。
/*ヒストグラムA及びヒストグラムBを正規化する*/
For(i=1〜ヒストグラムAの長さ)
{
正規化されたヒストグラムA[i]=(ヒストグラムA[i])/(ヒストグラムAの全ての要素の和);
正規化されたヒストグラムB[i]=(ヒストグラムB)[i]/(ヒストグラムBの全ての要素の和)
}
【0064】
正規化されたヒストグラムA917及び正規化されたヒストグラムB919は累積質量計算回路920に与えられ、該累積質量計算回路920は正規化されたヒストグラムA917の累積質量A927及び正規化されたヒストグラムB919の累積質量B929を計算する。いくつかの実施形態では、累積質量計算は以下の疑似コードに従って実行される。
/*受信したヒストグラムデータの正規化された累積質量関数を計算する*/
累積質量関数A(CMFA[1])=正規化されたヒストグラムA[1];
累積質量関数B(CMFB[1])=正規化されたヒストグラムB[1];
For(i=2〜ヒストグラムAの長さ)
{
CMFA[i]=CMFA[i−1]+正規化されたヒストグラムA[i];
CMFB[i]=CMFB[i−1]+正規化されたヒストグラムB[i]
}
【0065】
累積質量A927及び累積質量B929はバイアス値計算回路930に与えられ、該バイアス値計算回路930はバイアス値182を計算する。いくつかの実施形態では、バイアス値は以下の疑似コードに従って計算される。
/*計算された累積質量関数を用いてバイアス値182を計算する*/
バイアスルックアップテーブルの長さ(LUT長)=ヒストグラムAの長さ;
バイアス値182(LUT[])=Array[LUT長];
k=1;
For(i=1〜LUT長)
{
If(i==1)
{
LUT[i]=1
}
Else
{
LUT[i]=LUT[i−1]
}
For(j=LUT[i]〜ヒストグラムAの長さ)
{
If(abs_value(CMFA[i]−CMFA[LUT[i]])>abs_value(CMFA[i]−CMFA[j])
{
LUT[i]=j
}
}
While(k<=LUT[i])
{
更新された累積質量関数(UCMFA[])=CMFA[i];
k=k+1
}
}
【0066】
上記のアプリケーションにおいて検討された様々なブロックは、他の機能とともに集積回路において実施することができることに留意すべきである。そのような集積回路は、所与のブロック、システム、若しくは回路の機能のすべて、又はブロック、システム、若しくは回路のサブセットのみを含むことができる。また、ブロック、システム、又は回路の要素を複数の集積回路にわたって実装することができる。そのような集積回路は、限定ではないが、モノリシック集積回路、フリップチップ集積回路、マルチチップモジュール集積回路、及び/又は混合信号集積回路を含む、当該技術分野において既知の任意のタイプの集積回路とすることができる。本明細書において検討されたブロック、システム、又は回路の様々な機能を、ソフトウェア又はファームウェアのいずれでも実施することができることにも留意すべきである。いくつかのそのような場合、システム、ブロック、又は回路全体を、そのソフトウェア等価物又はファームウェア等価物を用いて実施することができる。他の場合、所与のシステム、ブロック、又は回路の一部分をソフトウェア又はファームウェアにおいて実装することもできる一方、他の部分はハードウェアにおいて実装される。
【0067】
結論として、本発明はデータ処理のために新規なシステム、デバイス、方法、及び構成を提供する。本発明の1つ又は複数の実施形態の詳細な説明が上記で与えられたが、本発明の趣旨を変えることなく、様々な代替形態、変更形態、及び等価物が当業者には明らかとなろう。したがって、上記の説明は本発明の範囲を限定するものとして解釈されるべきではなく、本発明の範囲は添付の特許請求の範囲によって規定される。