The present invention is related to systems and methods for data processing, and more particularly to systems and methods for noise predictive filtering in data processing.
Data processing circuits often include a data detector circuit and a data decoder circuit. In some cases many passes through both the data detector circuit and the data decoder circuit in an attempt to recover originally written data. One of the main causes limiting the ability to recover originally written data is media noise corrupting information received from a channel. To limit the effects of media noise, the data processing circuit may include a noise predictive filter circuit that relies on historical information to predict potential noise corruption. Such an approach is not ideal.
Hence, for at least the aforementioned reasons, there exists a need in the art for advanced systems and methods for data processing.
The present invention is related to systems and methods for data processing, and more particularly to systems and methods for noise predictive filtering in data processing.
Various embodiments of the present invention provide data processing circuits that include a data detector circuit. The data detector circuit includes an anti-causal noise predictive filter circuit and a data detection circuit. In some cases, the anti-causal noise predictive filter circuit is operable to apply noise predictive filtering to a detector input to yield a filtered output, and the data detection circuit is operable to apply a data detection algorithm to the filtered output derived from the anti-causal noise predictive filter circuit. In various instances of the aforementioned embodiments, the data processing circuit is implemented as part of a storage device or a receiving device. In some cases, the data processing circuit is implemented as part of an integrated circuit. The data detection algorithm may be, but is not limited to, a maximum a posteriori data detection algorithm, or a Viterbi algorithm data detector circuit
In some instances of the aforementioned embodiments, the anti-causal noise predictive filter circuit includes a delay buffer circuit and a noise predictive filter bank. In some such cases, the noise predictive filter bank includes sixteen anti-causal noise predictive filters each tuned to a different noise pattern. The different noise patterns may include at least one future noise sample and/or at least one prior noise sample. In various cases, the data detector circuit is operable to provide a detected output, and the data processing circuit further includes a data decoder circuit operable to apply a data decoding algorithm to decoder input derived from the detected output. The data decoding algorithm may be, but is not limited to, a Reed Solomon data decoding algorithm, and a low density parity check decoding algorithm. In some cases, the data processing circuit further includes an analog to digital converter circuit operable to convert an analog input into a series of digital samples, and an equalizer circuit operable to receive the series of digital samples and to equalize the series of digital samples to yield the detector input.
Some embodiments of the present invention provide methods that include: receiving a data input; anti-causal noise predictive filtering the data input to yield a filtered output; and applying a data detection algorithm to the filtered output to yield a detected output. In some cases, the methods further includes applying a data decoding algorithm to the detected output to yield a decoded output. The data decoding algorithm may be, but is not limited to, a Reed Solomon data decoding algorithm, or a low density parity check decoding algorithm. The data detection algorithm may be, but is not limited to, a maximum a posteriori data detection algorithm, or a Viterbi algorithm data detector circuit. In some cases, the anti-causal noise predictive filtering includes noise predictive filtering using at least one future noise sample, and/or at least one prior noise sample.
This summary provides only a general outline of some embodiments of the invention. Many other objects, features, advantages and other embodiments of the invention will become more fully apparent from the following detailed description, the appended claims and the accompanying drawings.
A further understanding of the various embodiments of the present invention may be realized by reference to the figures which are described in remaining portions of the specification. In the figures, like reference numerals are used throughout several figures to refer to similar components. In some instances, a sub-label consisting of a lower case letter is associated with a reference numeral to denote one of multiple similar components. When reference is made to a reference numeral without specification to an existing sub-label, it is intended to refer to all such multiple similar components.
a depicts a data processing circuit having anti-causal noise predictive filtering circuitry in accordance with some embodiments of the present invention;
b depicts an anti-causal noise predictive filter bank that may be used in relation to the data processing circuit of
The present invention is related to systems and methods for data processing, and more particularly to systems and methods for noise predictive filtering in data processing.
It has been determined that when information is run length limited (i.e., the number of successive non-transitory bit periods is limited) causal noise predictive filtering is not ideal as burst errors caused by long runs (i.e., four or more consecutive bit periods) are dominant in a read channel or receiver channel. By encoding originally written data to avoid such long runs, the dominance of such burst errors can be reduced and performance improved. In some cases, runs of a maximum of three consecutive non-transitory bit periods are allowed. In such a situation, it has been observed that bits at the beginning of such a transition limited run exhibited a higher probability of error. To address this asymmetry in the occurrence of errors, anti-causal noise predictive filtering as more fully discussed below. In some embodiments of the present invention, use of such anti-causal noise predictive filtering balances the error locations across non-transitory runs resulting in an improved bit error rate.
Various embodiments of the present invention provide for data processing that includes application of a data detection algorithm to a received data set followed by application of a data decoding algorithm to the result of the data detection algorithm in an attempt to recover originally written data. In some cases, two or more global iterations including application of the data detection algorithm and the data decoding algorithm may be applied to a given data set. Application of the data detection algorithm includes performing anti-causal noise predictive filtering on the received data set to yield a filtered output, with the filtered output then being provided to a trellis based detector circuit that applies the data detection algorithm.
As used herein, the term “anti-causal” is used in its broadest sense to mean any condition where at least post occurrence information is used to determine a current occurrence. In contrast, the term “causal” implies a condition where only pre-occurrence and/or current occurrence information is used to determine a current occurrence. Thus, as an example, an anti-causal circuit may rely on the following five data inputs i−2, i−1, i0, i+1, i+2, where i−2 occurs two bit periods prior to the current occurrence, i−1 occurs one bit periods prior to the current occurrence, i0 is the current occurrence, i−1 occurs one bit periods after the current occurrence, and i+2 occurs two bit periods after the current occurrence. In contrast, a causal circuit may rely on the following five data inputs i−4, i−3, i−2, i−1, i0, where i−4 occurs four bit periods prior to the current occurrence, where i−3 occurs three bit periods prior to the current occurrence, where i−2 occurs two bit periods prior to the current occurrence, i−1 occurs one bit periods prior to the current occurrence, and i0 is the current occurrence. Based upon the disclosure provided herein, one of ordinary skill in the art will recognize a variety of data sets upon which an anti-causal noise predictive filter circuit may operate in accordance with different embodiments of the present invention. In some embodiments of the present invention, an anti-causal noise predictive filter is used that relies on one or more future noise samples to estimate a current noise level (e.g., n+1, where n+1 is a noise sample occurring one bit period after the current noise sample n0). In some cases, such an anti-causal noise predictive filter relies on one or more future noise samples and none or more past noise samples (e.g., n+1 where n+1 is a noise sample occurring one bit period after the current noise sample n0, and n−1 where n−1 is a noise sample occurring one bit period prior to the current noise sample n0).
Turning to
In a typical read operation, read/write head assembly 176 is accurately positioned by motor controller 168 over a desired data track on disk platter 178. Motor controller 168 both positions read/write head assembly 176 in relation to disk platter 178 and drives spindle motor 172 by moving read/write head assembly to the proper data track on disk platter 178 under the direction of hard disk controller 166. Spindle motor 172 spins disk platter 178 at a determined spin rate (RPMs). Once read/write head assembly 178 is positioned adjacent the proper data track, magnetic signals representing data on disk platter 178 are sensed by read/write head assembly 176 as disk platter 178 is rotated by spindle motor 172. The sensed magnetic signals are provided as a continuous, minute analog signal representative of the magnetic data on disk platter 178. This minute analog signal is transferred from read/write head assembly 176 to read channel circuit 110 via preamplifier 170. Preamplifier 170 is operable to amplify the minute analog signals accessed from disk platter 178. In turn, read channel circuit 110 decodes and digitizes the received analog signal to recreate the information originally written to disk platter 178. This data is provided as read data 103 to a receiving circuit. A write operation is substantially the opposite of the preceding read operation with write data 101 being provided to read channel circuit 110. This data is then encoded and written to disk platter 178.
During a read operation, data received from preamplifier circuit 170 is converted from an analog signal to a series of corresponding digital samples, and the digital samples are equalized to yield an equalized output. The equalized output is then provided to a data detection circuit. The data detection circuit includes an anti-causal noise predictive filtering circuit that yields a filtered output, and the filtered output is provided to a trellis based detector circuit that applies a data detection algorithm to the filtered output to yield a detected output. The detected output is then provided to a data decoder circuit that applies a data decode algorithm to the detected output to yield a decoded output. Application of the data detection algorithm by the data detector circuit and the data decoder algorithm by the data decoder circuit is done in a global iteration. In some cases, two or more global iterations may be applied to a given data set in an attempt to recover originally written data that is ultimately provided as read data 103. In some cases, the data processing may be done using a circuit similar to data processing circuit 300, and/or using a process similar to that discussed below in relation to
It should be noted that storage system 100 may be integrated into a larger storage system such as, for example, a RAID (redundant array of inexpensive disks or redundant array of independent disks) based storage system. It should also be noted that various functions or blocks of storage system 100 may be implemented in either software or firmware, while other functions or blocks are implemented in hardware.
Turning to
Turning to
Data processing circuit 300 includes an analog front end circuit 310 that receives an analog signal 308. Analog front end circuit 310 processes analog signal 308 and provides a processed analog signal 312 to an analog to digital converter circuit 315. Analog front end circuit 310 may include, but is not limited to, an analog filter and an amplifier circuit as are known in the art. Based upon the disclosure provided herein, one of ordinary skill in the art will recognize a variety of circuitry that may be included as part of analog front end circuit 310. In some cases, analog signal 308 is derived from a read/write head assembly (not shown) that is disposed in relation to a storage medium (not shown). In other cases, analog signal 308 is derived from a receiver circuit (not shown) that is operable to receive a signal from a transmission medium (not shown). The transmission medium may be wired or wireless. Based upon the disclosure provided herein, one of ordinary skill in the art will recognize a variety of source from which analog input 308 may be derived.
Analog to digital converter circuit 315 converts processed analog signal 312 into a corresponding series of digital samples 317. Analog to digital converter circuit 315 may be any circuit known in the art that is capable of producing digital samples corresponding to an analog input signal. Based upon the disclosure provided herein, one of ordinary skill in the art will recognize a variety of analog to digital converter circuits that may be used in relation to different embodiments of the present invention. Digital samples 317 are provided to an equalizer circuit 320. Equalizer circuit 320 applies an equalization algorithm to digital samples 317 to yield an equalized output 322. In some embodiments of the present invention, equalizer circuit 320 is a digital finite impulse response filter circuit as are known in the art.
Equalized output 322 is provided to both a data detector circuit 325 and to a sample buffer circuit 375. Sample buffer circuit 375 stores equalized output 322 as buffered data 377 for use in subsequent iterations through data detector circuit 325. Data detector circuit 325 includes an anti-causal noise predictive filter circuit 380 and a soft input/soft output data detection circuit 390. Anti-causal noise predictive filter circuit 380 includes a delay buffer circuit 370 that accumulates a number of noise samples (n) that are provided as a noise sample output 372 to an anti-causal noise predictive filter bank 388. Anti-causal noise predictive filter bank 388 includes a number of anti-causal noise predictive finite impulse response (FIR) filters 380, 382, 384, 386 that each operate on one or more future noise samples. Anti-causal noise predictive filter bank 388 provides a current noise level as a filtered output 389 with the current noise level being based at least in part on one future noise sample.
Filtered output 389 from anti-causal noise predictive filter circuit 380 is described by the following equation:
where nk is noise samples at time k, yk is equalized output 322 (or buffered output 377 depending upon the particular global iteration), xk is digital samples 317, and {gi} is a partial response target. This can be reduced to:
where {circumflex over (n)}k is the predicted noise at time k, {fl} is an anti-causal noise predictive filter function at time l, w represents a number of prior noise samples, and z represents a number of future bit samples. The predicted error (ek) at time k may be expressed as:
In one particular embodiment of the present invention, each of anti-causal noise predictive finite impulse response (FIR) filters 380, 382, 384, 386 operates on five noise samples (two prior noise samples [n−2 that is a noise sample occurring two bit periods before the current noise sample n0, and n−1 that is a noise sample occurring one bit period before the current noise sample n0], one current noise sample [n0], and two future noise samples [n+1 that is a noise sample occurring one bit period after the current noise sample n0, and n+2 that is a noise sample occurring two bit periods after the current noise sample n0]). The current noise level provided as filtered output 389 corresponds to the bit period of n0. Of note, the use of five noise samples may be changed depending upon the particular embodiment, and based upon the disclosure provided herein, one of ordinary skill in the art will recognize other numbers of noise samples that may be used in relation to different embodiments of the present invention. Further, one of ordinary skill in the art will recognize that the noise samples may be all future noise samples, a combination of the current noise sample and one or more future noise samples, and/or a combination of one or more prior noise samples, the current noise sample, and one or more future noise samples depending upon the particular implementation.
Turning to
Anti-causal noise predictive filter circuit 333 applies the following algorithm to the combination of noise sample output 385 and digital samples 387:
yk+2−(g0xk+2+g1xk+1),
where g0 and g1 represent partial response filter taps. Anti-causal noise predictive filter circuit 333 provides the result as an output 343 to a filter circuit 353. Anti-causal noise predictive filter circuit 335 applies the following algorithm to the combination of noise sample output 385 and digital samples 387:
yk+1−(g0xk+1+g1xk)
that is provided as an output 345 to a filter circuit 355; anti-causal noise predictive filter circuit 337 applies the following algorithm to the combination of noise sample output 385 and digital samples 387:
yk−(g0xk+g1xk−1)
that is provided as an output 347 to a filter circuit 357; and
anti-causal noise predictive filter circuit 339 applies the following algorithm to the combination of noise sample output 385 and digital samples 387:
yk−1−(g0xk−1+g1xk−2)
that is provided as an output 349 to a filter circuit 359.
Filter circuit 353 applies a noise filter (f−2) to yield an output 363 that is provided to a summation circuit 371; filter circuit 355 applies a noise filter (f−1) to yield an output 365 that is provided to summation circuit 371; filter circuit 357 applies a noise filter (f0) to yield an output 367 that is provided to summation circuit 371; and filter circuit 359 applies a noise filter (f−1) to yield an output 369 that is provided to summation circuit 371. f−2 is the causal noise predictive filter function corresponding to an occurrence two bit periods prior to the current occurrence; f−1 is the causal noise predictive filter function corresponding to an occurrence one bit period prior to the current occurrence; f0 is the causal noise predictive filter function corresponding to the current occurrence; and f+1 is the causal noise predictive filter function corresponding to an occurrence one bit period after to the current occurrence. Summation circuit 371 aggregates outputs 363, 365, 367, 369 to yield a filtered output 373.
The noise filters may be trained using approaches similar to that used to train causal noise predictive filters. In one particular embodiment of the present invention, training is done that includes constraining the main filter tap f0 to unit while other taps are trained. The trained filter taps can be scaled to facilitate a particular hardware implementation.
As a contrast to the anti-causal implementation, where anti-causal noise predictive filter bank 331 was implemented as a causal noise predictive filter bank, the function of block 333 would be replaced with:
yk−(g0xk+g1xk−1);
the function of block 335 would be replaced with:
yk−1−(g0xk−1+g1xk−2);
the function of block 337 would be replaced with:
yk−2−(g0xk−2+g1xk−3); and
the function of block 339 would be replaced with:
yk−3−(g0xk−3+g1xk−4).
The filter function applied by filter circuit 353 would be f0, the filter function applied by filter circuit 355 would be f1, the filter function applied by filter circuit 357 would be f2, and the filter function applied by filter circuit 353 would be f3.
Returning to
Detected output 327 may include both hard decisions and soft decisions. The terms “hard decisions” and “soft decisions” are used in their broadest sense. In particular, “hard decisions” are outputs indicating an expected original input value (e.g., a binary ‘1’ or ‘0’, or a non-binary digital value), and the “soft decisions” indicate a likelihood that corresponding hard decisions are correct. Based upon the disclosure provided herein, one of ordinary skill in the art will recognize a variety of hard decisions and soft decisions that may be used in relation to different embodiments of the present invention.
Detected output 327 is provided to a central queue memory circuit 360 that operates to buffer data passed between data detector circuit 325 and a data decoder circuit 350. When data decoder circuit 350 is available, data decoder circuit 350 receives detected output 327 from central queue memory 360 as a decoder input 356. Data decoder circuit 350 applies a data decoding algorithm to decoder input 356 in an attempt to recover originally written data. The result of the data decoding algorithm is provided as a decoded output 354. Similar to detected output 327, decoded output 354 may include both hard decisions and soft decisions. For example, data decoder circuit 350 may be any data decoder circuit known in the art that is capable of applying a decoding algorithm to a received input. Data decoder circuit 350 may be, but is not limited to, a low density parity check decoder circuit or a Reed Solomon decoder circuit as are known in the art. Based upon the disclosure provided herein, one of ordinary skill in the art will recognize a variety of data decoder circuits that may be used in relation to different embodiments of the present invention. Where the original data is recovered (i.e., the data decoding algorithm converges) or a timeout condition occurs, data decoder circuit 350 provides the result of the data decoding algorithm as a data output 352.
One or more iterations through the combination of data detector circuit 325 and data decoder circuit 350 may be made in an effort to converge on the originally written data set. As mentioned above, processing through both the data detector and the data decoder is referred to as a “global iteration”. Further, one or more iterations may be made through data decoder circuit 350 during any given global iteration. These iterations through data decoder circuit 350 are referred to as “local iterations”. For the first global iteration, data detector circuit 325 applies the data detection algorithm without guidance from a decoded output. For subsequent global iterations, data detector circuit 325 applies the data detection algorithm to buffered data 377 as guided by decoded output 354. Decoded output 354 is received from central queue memory 360 as a detector input 329.
Turning to
Anti-causal noise predictive filtering is performed to yield a noise predictive output (block 425). This anti-causal noise predictive filtering may be done similar to a corresponding causal noise predictive filtering except that at least one future noise sample is incorporated into the filtering. The resulting filtered output provided by the anti-causal noise predictive filtering is consistent with the following equations:
where nk is noise samples at time k, yk is equalized output 322 (or buffered output 377 depending upon the particular global iteration), xk is digital samples 317, and {gi} is a partial response target. This can be reduced to:
where {circumflex over (n)}k is the predicted noise at time k, {fl} is an anti-causal noise predictive filter function at time l, w represents a number of prior noise samples, and z represents a number of future bit samples. The predicted error (ek) at time k may be expressed as:
In one particular embodiment of the present invention, the anti-causal noise predictive finite impulse response operates on five noise samples (two prior noise samples [n−2 that is a noise sample occurring two bit periods before the current noise sample n0, and n−1 that is a noise sample occurring one bit period before the current noise sample n0], one current noise sample [n0], and two future noise samples [n+1 that is a noise sample occurring one bit period after the current noise sample n0, and n+2 that is a noise sample occurring two bit periods after the current noise sample n0]). The current noise level provided as filtered output 389 corresponds to the bit period of n0. Of note, the use of five noise samples may be changed depending upon the particular embodiment, and based upon the disclosure provided herein, one of ordinary skill in the art will recognize other numbers of noise samples that may be used in relation to different embodiments of the present invention. Further, one of ordinary skill in the art will recognize that the noise samples may be all future noise samples, a combination of the current noise sample and one or more future noise samples, and/or a combination of one or more prior noise samples, the current noise sample, and one or more future noise samples depending upon the particular implementation.
A soft input/soft output data detection algorithm is applied to yield a detected output (block 430). The data detection algorithm may be any trellis based data detection algorithm known in the art. As some examples, the data detection algorithm may be, but is not limited to, a Viterbi data detection algorithm or a maximum a posteriori data detection algorithm are known in the art. Based upon the disclosure provided herein, one of ordinary skill in the art will recognize a variety of data detection algorithms that may be used in relation to different embodiments of the present invention. The resulting detected output may include both hard decisions and soft decisions. The terms “hard decisions” and “soft decisions” are used in their broadest sense. In particular, “hard decisions” are outputs indicating an expected original input value (e.g., a binary ‘1’ or ‘0’, or a non-binary digital value), and the “soft decisions” indicate a likelihood that corresponding hard decisions are correct. Based upon the disclosure provided herein, one of ordinary skill in the art will recognize a variety of hard decisions and soft decisions that may be used in relation to different embodiments of the present invention.
A data decode algorithm is applied to the detected output to yield a decoded output (block 435). The data decode algorithm may be, but is not limited to, a low density parity check decode algorithm or a Reed Solomon decode algorithm as are known in the art. Based upon the disclosure provided herein, one of ordinary skill in the art will recognize a variety of data decode algorithms that may be used in relation to different embodiments of the present invention. It is determined whether the decoded output converged (block 440). Where the decoded output converged (block 440), it is provided as a data output (block 445).
Alternatively, where the decoded output failed to converge (block 440), a subsequent anti-causal noise predictive filtering is performed similar to that described above in relation to block 425 to yield a noise predictive output (block 450). A soft input/soft output data detection algorithm is applied to yield a detected output similar to that described above in relation to block 430, except that the algorithm is guided by the decoded output (block 455). At this juncture, a subsequent data decode is performed (block 435).
It should be noted that the various blocks discussed in the above application may be implemented in integrated circuits along with other functionality. Such integrated circuits may include all of the functions of a given block, system or circuit, or only a subset of the block, system or circuit. Further, elements of the blocks, systems or circuits may be implemented across multiple integrated circuits. Such integrated circuits may be any type of integrated circuit known in the art including, but are not limited to, a monolithic integrated circuit, a flip chip integrated circuit, a multichip module integrated circuit, and/or a mixed signal integrated circuit. It should also be noted that various functions of the blocks, systems or circuits discussed herein may be implemented in either software or firmware. In some such cases, the entire system, block or circuit may be implemented using its software or firmware equivalent. In other cases, the one part of a given system, block or circuit may be implemented in software or firmware, while other parts are implemented in hardware.
In conclusion, the invention provides novel systems, devices, methods and arrangements for data processing. While detailed descriptions of one or more embodiments of the invention have been given above, various alternatives, modifications, and equivalents will be apparent to those skilled in the art without varying from the spirit of the invention. Therefore, the above description should not be taken as limiting the scope of the invention, which is defined by the appended claims.
Number | Name | Date | Kind |
---|---|---|---|
5278703 | Rub | Jan 1994 | A |
5278846 | Okayama et al. | Jan 1994 | A |
5317472 | Schweitzer, III | May 1994 | A |
5325402 | Ushirokawa | Jun 1994 | A |
5392299 | Rhines et al. | Feb 1995 | A |
5471500 | Blaker et al. | Nov 1995 | A |
5513192 | Janku et al. | Apr 1996 | A |
5523903 | Hetzler | Jun 1996 | A |
5550870 | Blaker et al. | Aug 1996 | A |
5612964 | Haraszti | Mar 1997 | A |
5701314 | Armstrong et al. | Dec 1997 | A |
5710784 | Kindred et al. | Jan 1998 | A |
5712861 | Inoue et al. | Jan 1998 | A |
5717706 | Ikeda | Feb 1998 | A |
5768044 | Hetzler | Jun 1998 | A |
5802118 | Bliss et al. | Sep 1998 | A |
5844945 | Nam et al. | Dec 1998 | A |
5898710 | Amrany | Apr 1999 | A |
5923713 | Hatakeyama | Jul 1999 | A |
5978414 | Nara | Nov 1999 | A |
5983383 | Wolf | Nov 1999 | A |
6005897 | McCallister et al. | Dec 1999 | A |
6023783 | Divsalar et al. | Feb 2000 | A |
6029264 | Kobayashi et al. | Feb 2000 | A |
6041432 | Ikeda | Mar 2000 | A |
6065149 | Yamanaka | May 2000 | A |
6097764 | McCallister et al. | Aug 2000 | A |
6145110 | Khayrallah | Nov 2000 | A |
6216249 | Bliss et al. | Apr 2001 | B1 |
6216251 | McGinn | Apr 2001 | B1 |
6229467 | Eklund et al. | May 2001 | B1 |
6266795 | Wei | Jul 2001 | B1 |
6317472 | Choi et al. | Nov 2001 | B1 |
6351832 | Wei | Feb 2002 | B1 |
6377610 | Hagenauer et al. | Apr 2002 | B1 |
6381726 | Weng | Apr 2002 | B1 |
6438717 | Butler et al. | Aug 2002 | B1 |
6473878 | Wei | Oct 2002 | B1 |
6476989 | Chainer et al. | Nov 2002 | B1 |
6625775 | Kim | Sep 2003 | B1 |
6657803 | Ling et al. | Dec 2003 | B1 |
6671404 | Katawani et al. | Dec 2003 | B1 |
6748034 | Hattori et al. | Jun 2004 | B2 |
6757862 | Marianetti | Jun 2004 | B1 |
6775334 | Liu et al. | Aug 2004 | B1 |
6785863 | Blankenship et al. | Aug 2004 | B2 |
6788654 | Hashimoto et al. | Sep 2004 | B1 |
6810502 | Eidson | Oct 2004 | B2 |
6980382 | Hirano et al. | Dec 2005 | B2 |
6986098 | Poeppelman | Jan 2006 | B2 |
7010051 | Murayama et al. | Mar 2006 | B2 |
7047474 | Rhee et al. | May 2006 | B2 |
7058873 | Song et al. | Jun 2006 | B2 |
7073118 | Greeberg et al. | Jul 2006 | B2 |
7093179 | Shea | Aug 2006 | B2 |
7113356 | Wu | Sep 2006 | B1 |
7136244 | Rothbert | Nov 2006 | B1 |
7173783 | McEwen et al. | Feb 2007 | B1 |
7184486 | Wu et al. | Feb 2007 | B1 |
7191378 | Eroz et al. | Mar 2007 | B2 |
7203015 | Sakai et al. | Apr 2007 | B2 |
7203887 | Eroz et al. | Apr 2007 | B2 |
7236757 | Raghavan et al. | Jun 2007 | B2 |
7257764 | Suzuki et al. | Aug 2007 | B2 |
7310768 | Eidson et al. | Dec 2007 | B2 |
7313750 | Feng et al. | Dec 2007 | B1 |
7370258 | Iancu et al. | May 2008 | B2 |
7403752 | Raghavan et al. | Jul 2008 | B2 |
7430256 | Zhidkov | Sep 2008 | B2 |
7502189 | Sawaguchi et al. | Mar 2009 | B2 |
7505537 | Sutardja | Mar 2009 | B1 |
7509927 | Mukomilow | Mar 2009 | B2 |
7523375 | Spencer | Apr 2009 | B2 |
7587657 | Haratsch | Sep 2009 | B2 |
7590168 | Raghavan et al. | Sep 2009 | B2 |
7702989 | Graef et al. | Apr 2010 | B2 |
7712008 | Song et al. | May 2010 | B2 |
7738201 | Jin et al. | Jun 2010 | B2 |
7752523 | Chaichanavong | Jul 2010 | B1 |
7801200 | Tan | Sep 2010 | B2 |
7802163 | Tan | Sep 2010 | B2 |
8170089 | Park et al. | May 2012 | B2 |
8249203 | Sun et al. | Aug 2012 | B2 |
20030063405 | Jin et al. | Apr 2003 | A1 |
20030081693 | Raghavan et al. | May 2003 | A1 |
20030087634 | Raghavan et al. | May 2003 | A1 |
20030112896 | Raghavan et al. | Jun 2003 | A1 |
20030134607 | Raghavan et al. | Jul 2003 | A1 |
20040071206 | Takatsu | Apr 2004 | A1 |
20040098659 | Bjerke et al. | May 2004 | A1 |
20040132416 | Yee | Jul 2004 | A1 |
20050010855 | Lusky | Jan 2005 | A1 |
20050078399 | Fung | Apr 2005 | A1 |
20050111540 | Modrie et al. | May 2005 | A1 |
20050157780 | Werner et al. | Jul 2005 | A1 |
20050195749 | Elmasry et al. | Sep 2005 | A1 |
20050216819 | Chugg et al. | Sep 2005 | A1 |
20050273688 | Argon | Dec 2005 | A1 |
20060020872 | Richardson et al. | Jan 2006 | A1 |
20060031737 | Chugg et al. | Feb 2006 | A1 |
20060123285 | De Araujo et al. | Jun 2006 | A1 |
20060140311 | Ashley et al. | Jun 2006 | A1 |
20060168493 | Song et al. | Jul 2006 | A1 |
20060195772 | Graef et al. | Aug 2006 | A1 |
20060210002 | Yang et al. | Sep 2006 | A1 |
20060239339 | Brown et al. | Oct 2006 | A1 |
20060248435 | Haratsch | Nov 2006 | A1 |
20060256670 | Park et al. | Nov 2006 | A1 |
20070011569 | Vila Casado et al. | Jan 2007 | A1 |
20070047121 | Eleftheriou et al. | Mar 2007 | A1 |
20070047635 | Stojanovic et al. | Mar 2007 | A1 |
20070110200 | Mergen et al. | May 2007 | A1 |
20070230407 | Petrie et al. | Oct 2007 | A1 |
20070286270 | Huang et al. | Dec 2007 | A1 |
20080049825 | Chen et al. | Feb 2008 | A1 |
20080055122 | Tan | Mar 2008 | A1 |
20080065970 | Tan | Mar 2008 | A1 |
20080069373 | Jiang et al. | Mar 2008 | A1 |
20080168330 | Graef et al. | Jul 2008 | A1 |
20080276156 | Gunnam | Nov 2008 | A1 |
20080301521 | Gunnam | Dec 2008 | A1 |
20090185643 | Fitzpatrick | Jul 2009 | A1 |
20090199071 | Graef | Aug 2009 | A1 |
20090235116 | Tan et al. | Sep 2009 | A1 |
20090235146 | Tan | Sep 2009 | A1 |
20090259915 | Livshitz et al. | Oct 2009 | A1 |
20090273492 | Yang et al. | Nov 2009 | A1 |
20090274247 | Galbraith et al. | Nov 2009 | A1 |
20100002795 | Raghavan et al. | Jan 2010 | A1 |
20100042877 | Tan | Feb 2010 | A1 |
20100042890 | Gunnam | Feb 2010 | A1 |
20100050043 | Valentin Savin | Feb 2010 | A1 |
20100061492 | Noeldner | Mar 2010 | A1 |
20100070837 | Xu et al. | Mar 2010 | A1 |
20100101578 | Cha et al. | Apr 2010 | A1 |
20100164764 | Nayak | Jul 2010 | A1 |
20100185914 | Tan et al. | Jul 2010 | A1 |
20110075569 | Marrow et al. | Mar 2011 | A1 |
20110080211 | Yang et al. | Apr 2011 | A1 |
20110167246 | Yang et al. | Jul 2011 | A1 |
Number | Date | Country |
---|---|---|
0522578 | Jan 1993 | EP |
0631277 | Dec 1994 | EP |
1814108 | Aug 2007 | EP |
WO 2006016751 | Feb 2006 | WO |
WO 2006134527 | Dec 2006 | WO |
WO 2007091797 | Aug 2007 | WO |
WO 2010126482 | Apr 2010 | WO |
WO 2010101578 | Sep 2010 | WO |
Entry |
---|
U.S. Appl. No. 11/461,026, filed Jul. 31, 2006, Tan, Weijun. |
U.S. Appl. No. 11/461,198, filed Jul. 31, 2006, Tan, Weijun. |
U.S. Appl. No. 11/461,283, filed Jul. 31, 2006, Tan, Weijun. |
U.S. Appl. No. 12/540,283, filed Aug. 12, 2009, Liu, et al. |
U.S. Appl. No. 12/652,201, filed Jan. 5, 2010, Mathew, et al. |
U.S. Appl. No. 12/763,050, filed Apr. 19, 2010, Ivkovic, et al. |
U.S. Appl. No. 12/792,555, filed Jun. 2, 2010, Liu, et al. |
U.S. Appl. No. 12/887,317, filed Sep. 21, 2010, Xia, et al. |
U.S. Appl. No. 12/887,330, filed Sep. 21, 2010, Zhang, et al. |
U.S. Appl. No. 12/887,369, filed Sep. 21, 2010 Liu, et al. |
U.S. Appl. No. 12/901,816, filed Oct. 11, 2010, Li, et al. |
U.S. Appl. No. 12/901,742, filed Oct. 11, 2010, Yang. |
U.S. Appl. No. 12/917,756, filed Nov. 2, 2010, Miladinovic, et al. |
U.S. Appl. No. 12/947,931, filed Nov. 17, 2010, Yang, Shaohua. |
U.S. Appl. No. 12/947,947, filed Nov. 17, 2010, Ivkovic, et al. |
U.S. Appl. No. 12/972,942, filed Dec. 20, 2010, Liao, et al. |
U.S. Appl. No. 12/992,948, filed Nov. 16, 2010, Yang, et al. |
U.S. Appl. No. 13/021,814, filed Feb. 7, 2011, Jin, Ming, et al. |
U.S. Appl. No. 13/031,818, filed Feb. 22, 2011 Xu, Changyou, et al. |
U.S. Appl. No. 13/050,129, filed Mar. 17, 2011, Tan, et al. |
U.S. Appl. No. 13/050,765, filed Mar. 17, 2011, Yang, et al. |
U.S. Appl. No. 13/088,119, filed Apr. 15, 2011, Zhang, et al. |
U.S. Appl. No. 13/088,146, filed Apr. 15, 2011, Li, et al. |
U.S. Appl. No. 13/088,178, filed Apr. 15, 2011, Sun, et al. |
U.S. Appl. No. 13/126,748, filed Apr. 28, 2011, Tan. |
U.S. Appl. No. 13/167,764, filed Jun. 24, 2011, Li, Zongwang, et al. |
U.S. Appl. No. 13/167,771, filed Jun. 24, 2011, Li, Zongwang, et al. |
U.S. Appl. No. 13/167,775, filed Jun. 24, 2011, Li, Zongwang. |
U.S. Appl. No. 13/186,146, filed Jul. 19, 2011, Mathew, et al. |
U.S. Appl. No. 13/186,213, filed Jul. 19, 2011, Mathew, et al. |
U.S. Appl. No. 13/186,234, filed Jul. 19, 2011, Xia, Haitao, et al. |
U.S. Appl. No. 13/186,251, filed Jul. 19, 2011, Xia, Haitao, et al. |
U.S. Appl. No. 13/186,174, filed Jul. 19, 2011, Mathew, et al. |
U.S. Appl. No. 13/186,197, filed Jul. 19, 2011, Mathew, George et al. |
U.S. Appl. No. 13/213,751, filed Aug. 19, 2011, Zhang, Fan, et al. |
U.S. Appl. No. 13/213,808, filed Aug. 19, 2011, Jin, Ming. |
U.S. Appl. No. 13/220,142, filed Aug. 29, 2011, Chang, Wu, et al. |
U.S. Appl. No. 13/227,538, filed Sep. 8, 2011, Yang, Shaohua, et al. |
U.S. Appl. No. 13/227,544, filed Sep. 8, 2011, Yang, Shaohua, et al. |
U.S. Appl. No. 13/239,683, filed Sep. 22, 2011, Xu, Changyou. |
U.S. Appl. No. 13/239,719, filed Sep. 22, 2011, Xia, Haitao, et al. |
U.S. Appl. No. 13/251,342, filed Oct. 2, 2011, Xia, Haitao, et al. |
U.S. Appl. No. 13/269,832, filed Oct. 10, 2011, Xia, Haitao, et al. |
U.S. Appl. No. 13/269,852, filed Oct. 10, 2011, Xia, Haitao, et al. |
U.S. Appl. No. 13/284,819, filed Oct. 28, 2011, Tan, Weijun, et al. |
U.S. Appl. No. 13/284,730, filed Oct. 28, 2011, Zhang, Fan, et al. |
U.S. Appl. No. 13/284,754, filed Oct. 28, 2011, Zhang, Fan, et al. |
U.S. Appl. No. 13/284,767, filed Oct. 28, 2011, Zhang, Fan, et al. |
U.S. Appl. No. 13/284,826, filed Oct. 28, 2011, Tan, Weijun, et al. |
U.S. Appl. No. 13/295,150, filed Nov. 14, 2011, Li, Zongwang, et al. |
U.S. Appl. No. 13/295,160, filed Nov. 14, 2011, Li, Zongwang, et al. |
U.S. Appl. No. 13/251,340, filed Oct. 3, 2011, Xia, Haitao, et al. |
Amer et al “Design Issues for a Shingled Write Disk System” MSST IEEE 26th Symposium May 2010. |
Bahl, et al “Optimal decoding of linear codes for Minimizing symbol error rate”, IEEE Trans. Inform. Theory, vol. 20, pp. 284-287, Mar. 1974. |
Casado et al., Multiple-rate low- denstiy parity-check codes with constant blocklength, IEEE Transations on communications, Jan. 2009, vol. 57, pp. 75-83. |
Collins and Hizlan, “Determinate State Convolutional Codes” IEEE Transactions on Communications, Dec. 1993. |
Eleftheriou, E. et al., “Low Density Parity-Check Codes for Digital Subscriber Lines”, Proc ICC 2002, pp. 1752-1757. |
Fisher, R et al., “Adaptive Thresholding”[online] 2003 [retrieved on May 28, 2010] Retrieved from the Internet <URL:http://homepages.inf.ed.ac.uk/rbf/HIPR2/adpthrsh.htm. |
Fossnorier, Marc P.C. “Quasi-Cyclic Low-Density Parity-Check Codes From Circulant Permutation Maricies” IEEE Transactions on Information Theory, vol. 50, No. 8 Aug. 8, 2004. |
Gibson et al “Directions for Shingled-Write and Two-Dimensional Magnetic Recording System” Architectures: Synergies with Solid-State Disks Carnegie Mellon Univ. May 1, 2009. |
K. Gunnam et al., “Next Generation iterative LDPC solutions for magnetic recording storage”, invited paper. The Asilomar Conference on Signals, Systems, and Computers, Nov. 2008. |
K. Gunnam et al., “Value-Reuse Properties of Min-Sum for GF(q)” (dated Oct. 2006) Dept. of ECE, Texas A&M University Technical Note, published about Aug. 2010. |
K. Gunnam et al., “Value-Reuse Properties of Min-Sum for GF(q)”(dated Jul. 2008) Dept. of ECE, Texas A&M University Technical Note, published about Aug. 2010. |
K. Gunnam “Area and Energy Efficient VLSI Architectures for Low-Density Parity-Check Decoders Using an On-The-Fly Computation” dissertation at Texas A&M University, Dec. 2006. |
Han and Ryan, “Pinning Techniques for Low-Floor Detection/Decoding of LDPC-Coded Partial Response Channels”, 5th International Symposium on Turbo Codes &Related Topics, 2008. |
Hagenauer, J. et al A Viterbi Algorithm with Soft-Decision Outputs and its Applications in Proc. IEEE Globecom, pp. 47. 11-47 Dallas, TX Nov. 1989. |
Lee et al., “Partial Zero-Forcing Adaptive MMSE Receiver for DS-CDMA Uplink in Multicell Environments” IEEE Transactions on Vehicular Tech. vol. 51, No. 5, Sep. 2002. |
Lin et al “An efficient VLSI Architecture for non binary LDPC decoders”—IEEE Transaction on Circuits and Systems II vol. 57, Issue 1 (Jan. 2010) pp. 51-55. |
Mohsenin et al., “Split Row: A Reduced Complexity, High Throughput LDPC Decoder Architecture”, pp. 1-6, printed from www.ece.ucdavis.edu on Jul. 9, 2007. |
Moon et al, “Pattern-dependent noise prediction in signal-dependent Noise,” IEEE JSAC, vol. 19, No. 4 pp. 730-743, Apr. 2001. |
Perisa et al “Frequency Offset Estimation Based on Phase Offsets Between Sample Correlations” Dept. of Info. Tech. University of Ulm 2005. |
Sari H et al., “Transmission Techniques for Digital Terrestrial TV Broadcasting” IEEE Communications Magazine, IEEE Service Center NY, NY vol. 33, No. 2 Feb. 1995. |
Selvarathinam, A.: “Low Density Parity-Check Decoder Architecture for High Throughput Optical Fiber Channels” IEEE International Conference on Computer Design (ICCD '03) 2003. |
Shu Lin, Ryan, “Channel Codes, Classical and Modern” 2009, Cambridge University Press, pp. 213-222. |
Unknown, “Auto threshold and Auto Local Threshold” [online] [retrieved May 28, 2010] Retrieved from the Internet: <URL:http://www.dentristy.bham.ac.uk/landinig/software/autoth. |
Vasic, B., “High-Rate Low-Density Parity-Check Codes Based on Anti-Pasch Affine Geometries,” Proc ICC 2002, pp. 1332-1336. |
Vasic, B., “High-Rate Girth-Eight Codes on Rectangular Integer Lattices”, IEEE Trans. Communications, vol. 52, Aug. 2004, pp. 1248-1252. |
Wang Y et al., “A Soft Decision Decoding Scheme for Wireless COFDM With Application to DVB-T” IEEE Trans. on Consumer elec., IEEE Service Center, NY,NY vo. 50, No. 1 Feb. 2004. |
Weon-Cheol Lee et al., “Vitierbi Decoding Method Using Channel State Info. in COFDM System” IEEE Trans. on Consumer Elect., IEEE Service Center, NY, NY vol. 45, No. 3 Aug. 1999. |
Xia et al, “A Chase-GMD algorithm of Reed-Solomon codes on perpendicular channels”, IEEE Transactions on Magnetics, vol. 42 pp. 2603-2605, Oct. 2006. |
Xia et al, “Reliability-based Reed-Solomon decoding for magnetic recording channels”, IEEE International Conference on Communication pp. 1977-1981, May 2008. |
Yeo et al., “VLSI Architecture for Iterative Decoders in Magnetic Storage Channels”, Mar. 2001, pp. 748-755, IEEE trans. Magnetics, vol. 37, No. 2. |
Youn, et al. “BER Perform. Due to Irrreg. of Row-Weight Distrib. of the Parity-Chk. Matrix in Irreg. LDPC Codes for 10-Gb/s Opt. Signls” Jrnl of Lightwave Tech., vol. 23, Sep. 2005. |
Zhong et al., “Area-Efficient Min-Sum Decoder VLSI Architecture for High-Rate QC-LDPC Codes in Magnetic Recording”, pp. 1-15, Submitted 2006, not yet published. |
Zhong, “Block-LDPC: A Practical LDPC Coding System Design Approach”, IEEE Trans. on Circuits, Regular Papers, vol. 5, No. 4, pp. 766-775, Apr. 2005. |
Zhong et al., “Design of VLSI Implementation-Oriented LDPC Codes”, IEEE, pp. 670-673, 2003. |
Zhong et al., “High-Rate Quasi-Cyclic LDPC Codes for Magnetic Recording Channel with Low Error Floor”, ISCAS, IEEE pp. 3546-3549, May 2006. |
Zhong et al., “Iterative MAX-LOG-MAP and LDPC Detector/Decoder Hardware Implementation for Magnetic Read Channel”, SRC TECHRON, pp. 1-4, Oct. 2005. |
Zhong et al., “Joint Code-Encoder Design for LDPC Coding System VLSI Implementation”, ISCAS, IEEE pp. 389-392, May 2004. |
Zhong et al., “Quasi Cyclic LDPC Codes for the Magnetic Recording Channel: Code Design and VSLI Implementation”, IEEE Transactions on Magnetics, v. 43, pp. 1118-1123, Mar. 7. |
Zhong, “VLSI Architecture of LDPC Based Signal Detection and Coding System for Magnetic Recording Channel”, Thesis, RPI, Troy, NY, pp. 1-95, May 2006. |
Number | Date | Country | |
---|---|---|---|
20130054664 A1 | Feb 2013 | US |