US6438180B1  Soft and hard sequence detection in ISI memory channels  Google Patents
Soft and hard sequence detection in ISI memory channels Download PDFInfo
 Publication number
 US6438180B1 US6438180B1 US09/259,195 US25919599A US6438180B1 US 6438180 B1 US6438180 B1 US 6438180B1 US 25919599 A US25919599 A US 25919599A US 6438180 B1 US6438180 B1 US 6438180B1
 Authority
 US
 United States
 Prior art keywords
 detector
 sequence
 decoder
 noise
 method
 Prior art date
 Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
 Expired  Lifetime
Links
Images
Classifications

 H—ELECTRICITY
 H03—BASIC 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/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03  H03M13/35
 H03M13/39—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
 H03M13/41—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors

 H—ELECTRICITY
 H03—BASIC 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/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03  H03M13/35
 H03M13/39—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
 H03M13/3961—Arrangements of methods for branch or transition metric calculation

 H—ELECTRICITY
 H03—BASIC 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/63—Joint error correction and other techniques
 H03M13/6343—Error control coding in combination with techniques for partial response channels, e.g. recording

 H—ELECTRICITY
 H04—ELECTRIC COMMUNICATION TECHNIQUE
 H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
 H04L25/00—Baseband systems
 H04L25/02—Details ; Arrangements for supplying electrical power along data transmission lines
 H04L25/03—Shaping networks in transmitter or receiver, e.g. adaptive shaping networks ; Receiver end arrangements for processing baseband signals
 H04L25/03006—Arrangements for removing intersymbol interference
 H04L25/03178—Arrangements involving sequence estimation techniques
 H04L25/03184—Details concerning the metric
 H04L25/03191—Details concerning the metric in which the receiver makes a selection between different metrics
Abstract
Description
This application is a continuationinpart of U.S. patent application Ser. No. 09/055,003, filed Apr. 3, 1998, which claims priority to Provisional Ser. No. 60/046,006, filed May 9, 1997, under 35 U.S.C. Section 119(e).
This invention was supported in part by the National Science Foundation under Grant No. ECD8907068. The United States Government has certain rights in this invention.
1. Field of the Invention
The present invention is directed generally to sequence detectors, and, more particularly, to sequence detectors in ISI memory channels.
2. Description of the Background
In recent years, there has been a major shift in the design of signal detectors in magnetic recording. Traditional peak detectors (PD), such as those described in Nakagawa et al., “A Study of Detection Methods of NRZ Recording”, IEEE Trans. Magn., vol. 16, pp. 1041110, January 1980, have been replaced by Viterbilike detectors in the form of partial response maximum likelihood (PRML) schemes or hybrids between tree/trellis detectors and decision feedback equalizers (DFE), such as FDTS/DF, MDFE and RAMRSE. These methods were derived under the assumption that additive white Gausian noise (AWGN) is present in the system. The resulting trellis/tree branch metrics are then computed as Euclidian distances.
It has long been observed that the noise in magnetic recording systems is neither white nor stationary. The nonstationarity of the media noise results from its signal dependent nature. Combating media noise and its signal dependence has thus far been confined to modifying the Euclidian branch metric to account for these effects. Zeng, et al., “Modified Viterbi Algorithm for JitterDominated 1D^{2 }Channel,” IEEE Trans. Magn., Vol. MAG28, pp. 289597, September, 1992, and Lee et al., “Performance Analysis of the Modified maximum Likelihood Sequence Detector in the Presence of DataDependent Noise,” Proceedings 26th Asilomar Conference, pp. 96164, October 1992 have derived a branch metric computation method for combating the signaldependent character of media noise. These references ignore the correlation between noise samples. The effectiveness of this method has been demonstrated on real data in Zayad et al., “Comparison of Equalization and Detection for Very HighDensity Magnetic Recording,” IEEE INTERMAG Conference, New Orleans, April 1997.
These methods do not take into consideration the correlation between noise samples in the readback signal. These correlations arise due to noise coloring by frontend equalizers, media noise, media nonlinearities, and magnetoresistive (MR) head nonlinearities. This noise coloring causes significant performance degradation at high recording densities. Thus, there is a need for an adaptive correlationsensitive maximum likelihood sequence detector which derives the maximum likelihood sequence detector (MLSD) without making the usual simplifying assumption that the noise samples are independent random variables.
Turbo codes were introduced in 1993 and hold the promise of substantial coding gains over current coding algorithms, and their performance is within a fraction of a dB of the Shannon theoretical limit for additive white Gaussian noise channels. The basic idea in turbo decoding and other iterative decoding strategies is to pass “soft” information between several components of the decoder and the detector. In this context, the detector is the first device that processes data which is observed at the output of the communications channel. Classically, the detector is a harddetection device which provides zeroes and ones at its output. A Viterbi detector is a typical example of such a hard detector. When iterative decoding is used, however, the detector is often a soft detector in which the outputs of the detector are reliability measures for bits transmitted through the communications channel. Because the detector is the first device that processes the channel output, the detector should be tuned to the channel signal and noise statistics. However, existing soft output detectors are designed only for channels which are assumed to have white noise. Thus, there is a need for a soft detector which is designed for channels which have correlated and/or signaldependent noise.
The present invention is directed to a method of determining branch metric values in a detector. The method includes receiving a plurality of time variant signal samples, the signal samples having one of signaldependent noise, correlated noise, and both signal dependent and correlated noise associated therewith. The method also includes selecting a branch metric function at a certain time index and applying the selected function to the signal samples to determine the metric values.
The present invention represents a substantial advance over prior sequence detectors. Because the present invention takes into account the correlation between noise samples in the readback signal, the detected data sequence is detected with a higher degree of accuracy. Those advantages and benefits of the present invention, and others, will become apparent from the Detailed Description of the Invention hereinbelow.
For the present invention to be clearly understood and readily practiced, the present invention will be described in conjunction with the following figures wherein:
FIG. 1 is an illustration of a magnetic recording system;
FIG. 2 is an illustration of a CSMLSD detector circuit of a preferred embodiment of the present invention;
FIG. 3 is an illustration of a sample signal waveform, its samples, and written symbols;
FIG. 3A is an illustration of a branch metric computation module;
FIG. 3B is an illustration of an implementation of a portion of the branch metric computation module of FIG. 3A;
FIG. 4 is an illustration of one cell of a PR4 trellis;
FIG. 5 is an illustration of a detected path in a PR4 trellis;
FIG. 6 is a block diagram of a preferred embodiment of a method for signal detection;
FIG. 7 is an illustration of PR4 detection results at a 4.4a/symbol;
FIG. 8 is an illustration of EPR4 detection results at a 4.4a/symbol;
FIG. 9 is an illustration of PR4 detection results at a 3.5a/symbol;
FIG. 10 is an illustration of EPR4 detection results at a 3.5a/symbol;
FIG. 11 is an illustration of S(AWG)NR margins needed for error rate of 10^{−5 }with EPR4 detectors;
FIG. 12 is an illustration of PR4 detection results at a 2.9a/symbol; and
FIG. 13 is an illustration of EPR 4 detection results at a 2.9a/symbol.
FIG. 14 is an illustration of a portion of a communications system having a detector with parallely concatenated decoders; and
FIG. 15 is an illustration of a portion of a communications system having a detector serially concatenated with a decoder.
FIG. 1 illustrates a magnetic recording system 10. A data source 12 supplies data to a write signal processing circuit 14. The signal processing circuit 14 converts the input data into signals with a format suitable for storage on a magnetic medium 16. The medium 16 is typically a rotating disk, a “floppy” disk, or a tape with magnetic coatings. A write head 18 stores the signals on the medium 16 as a series of variations in the magnetic flux of the medium 16. The write head 18 is controlled by a write control circuit 20, which supplies signals to the write head 18 to control its position with respect to the medium 16.
A read head 22 retrieves the variations in the magnetic flux that are stored on the medium 16. A read control circuit 24 supplies signals to the read head 22 to control its position with respect to the medium 16. The read head 22 provides a stream of data to a detector circuit 26. The detector circuit 26 detects the data from the data stream and outputs the data. The detector 26 must be able to detect the data in the presence of intersymbol interference (“ISI”) noise. Prior art detector circuits have employed the maximum likelihood sequence (“MLS”) estimation algorithm or peak detection techniques. The MLS algorithm analyzes a sequence of consecutive data and determines the output data based on the sequence. Peak detection techniques identify analog peaks in a sequence of data and determine the output data based on the peaks.
A block diagram of a CSMLSD detector circuit 28 is shown in FIG. 2. The CSMLSD detector circuit 28 is a part of the detector circuit 26 of FIG. 1. The detector circuit 28 has a feedback circuit 32 which feeds back into a Viterbilike detector 30. The outputs of the detector 30 are decisions and delayed signal samples, which are used by the feedback circuit 32. A noise statistics tracker circuit 34 uses the delayed samples and detector decisions to update the noise statistics, i.e., to update the noise covariance matrices. A metric computation update circuit 36 uses the updated statistics to calculate the branch metrics needed in the Viterbilike algorithm. The algorithm does not require replacing current detectors. It simply adds two new blocks in the feedback loop to adaptively estimate the branch metrics used in the Viterbilike detector 30.
The Viterbilike detector 30 typically has a delay associated with it. Until the detector circuit 28 is initialized, signals of known values may be input and delayed signals are not output until the detector circuit 28 is initialized. In other types of detectors, the detector may be initialized by having the necessary values set.
The correlationsensitive maximum likelihood sequence detector (CSMLSD) 28 is described hereinbelow. Assume that N>1 channel bits (symbols), a_{1}, a_{2}, . . . , a_{N}, are written on a magnetic medium. The symbols a_{i}, i=1, . . . , N, are drawn from an alphabet of four symbols, a_{i}, ε{+, ⊕, −, ⊖}. The symbols ‘+’ and ‘−’ denote a positive and a negative transition, respectively. The symbol ‘⊕’ denotes a written zero (no transition) whose nearest preceding nonzero symbol is a ‘+’, while ‘⊖’ denotes a written zero whose nearest preceding transition is a negative one, i.e., ‘−’. This notation is used because a simple treatment of transitions as ‘1’s and no transitions as ‘0’s is blind to signal asymmetries (MR head asymmetries and base line drifts), which is inappropriate for the present problem. In FIG. 3 a sample waveform is illustrated. The signal asymmetries and base line shifts are exaggerated in FIG. 3. FIG. 3 also shows the written symbols a_{1}, . . . , a_{18}, as well as the samples r_{1}, . . . , r_{18 }of the readback waveform, sampled at the rate of one sample per symbol interval.
When the written sequence of symbols a_{i}, i=1, . . . , N, is read, the readback waveform is passed through a pulseshaping equalizer and sampled one sample per symbol, resulting in the sequence of samples r_{i}, i=1, . . . , N. Due to the noise in the system, the samples r_{i }are realizations of random variables. The maximum likelihood detector determines the sequence of symbols a_{i }that has been written, by maximizing the likelihood function, i.e.:
In (1), the likelihood function ƒ(r_{i}, . . . , r_{N}a_{1}, . . . , a_{N}) is the joint probability density function (pdf) of the signal samples r_{1}, . . . , r_{N}, conditioned on the written symbols a_{1}, . . . , a_{N}. The maximization in (1) is done over all possible combinations of symbols in the sequence {a_{1}, . . . , a_{N}}.
Due to the signal dependent nature of media noise in magnetic recording, the functional form of joint conditional pdf ƒ(r_{1}, . . . , r_{N}a_{1}, . . . , a_{N}) in (1) is different for different symbol sequences a_{1}, . . . , a_{N}. Rather than making this distinction with more complex but cluttered notation, the notation is kept to a minimum by using simply the same symbol ƒ to denote these different functions.
By Bayes rule, the joint conditional pdf (likelihood function) is factored into a product of conditional pdfs:
To proceed and obtain more concrete results, the nature of the noise and of the intersymbol interference in magnetic recording is exploited.
Finite correlation length. The conditional pdfs in Equation (2) are assumed to be independent of future samples after some length L≧0. L is the correlation length of the noise. This independence leads to:
Finite intersymbol interference. The conditional pdf is assumed to be independent of symbols that are not in the Kneighborhood of r_{i}, . . . , ri_{i+L}. The value of K≧1 is determined by the length of the intersymbol interference (ISI). For example, for PR4, K=2, while for EPR4, K=3. K_{l}≧0 is defined as the length of the leading (anticausal) ISI and K_{t}≧0 is defined as the length of the trailing (causal) ISI, such that K=K_{l}+K_{t}+1. With this notation the conditional pdf in (3) can be written as:
Substituting (4) into (2) and applying Bayes rule, the factored form of the likelihood function (conditional pdf) is obtained:
The factored form of equation (5) is suitable for applying Viterbilike dynamic programming detection techniques. Equation (5) assumes anticausal factorization, i.e. , it is derived by taking into account the effect of the samples r_{i+1}, . . . , r_{i+L}, on r_{i}. If only the causal effects are taken into account, the causal equivalent of (5) can be derived as ƒ(r_{1}, . . . , r_{N}a_{1}, . . . , a_{N})=
The causal and anticausal factorization could be combined to find the geometric mean of the two to form a causalanticausal factorization. Since this only complicates derivations and does not provide further insight, only the anticausal Equation (5) is considered.
Maximizing the likelihood function in (5) is equivalent to minimizing its negative logarithm. Thus, the maximumlikelihood detector is now:
M_{i }represents the branch metric of the trellis/tree in the Viterbilike algorithm. The metric is a function of the observed samples r_{i}, r_{i+1}, . . . , r_{i+L}. It is also dependent on the postulated sequence of written symbols a_{i−K} _{ t }, . . . , a_{i+L+K} _{ t }, which ensures the signaldependence of the detector. As a consequence, the branch metrics for every branch in the tree/trellis is based on its corresponding signal/noise statistics. Although the above discussion focused on maximum likelihood sequence detectors, the discussion also applies to maximum aposteriori (MAP) branch metrics by including prior probabilities. See J. Moura and A. Kavcic, “The Viterbi Algorithm and Markov Noise Memory”, accepted for publication in IEEE Transactions on Information Theory. An example of MAP soft decision detection is give hereinbelow in connection with FIGS. 14 and 15.
Specific expressions for the branch metrics that result under different assumptions on the noise statistics are next considered.
Euclidian branch metric. In the simplest case, the noise samples are realizations of independent identically distributed Gaussian random variables with zero mean and variance σ^{2 }This is a white Gaussian noise assumption. This implies that the correlation distance is L=0 and that the noise pdfs have the same form for all noise samples. The total ISI length is assumed to be K=K_{l}+K_{t}+1, where K_{l }and K_{t }are the leading and trailing ISI lengths, respectively. The conditional signal pdfs are factored as
Here the mean signal mi is dependent on the written sequence of symbols. For example, for a PR4 channel, m_{i }ε{−1,0,1}. The branch/tree metric is then the conventional Euclidian distance metric:
M _{i} =N _{i} ^{2}=(r _{i} −m _{i})^{2} (8)
Variance dependent branch metric. It is again assumed that the noise samples are samples of independent Gaussian variables, but that their variance depends on the written sequence of symbols. The noise correlation length is still L=0 but the variance of the noise samples is no longer constant for all samples. The variance is σ^{2i}, where the index i denotes the dependence on the written symbol sequence. As for the Euclidian metric, it is assumed that the total ISI length is K=K_{l}+K_{t}+1. The conditional signal pdf is factored to give:
The corresponding branch metric is:
Correlationsensitive branch metric. In the most general case, the correlation length is L>0. The leading and trailing ISI lengths are K_{l }and K_{t}, respectively. The noise is now considered to be both correlated and signaldependent. Joint Gaussian noise pdfs are assumed. This assumption is well justified in magnetic recording because the experimental evidence shows that the dominant media noise modes have Gaussianlike histograms. The conditional pdfs do not factor out in this general case, so the general form for the pdf is:
The (L+1)×(L+1) matric C_{i }is the covariance matrix of the data samples r_{i}, r_{i+1}, . . . , r_{i+L}, when a sequence of symbols a_{i−Kl}, . . . , a_{i+L+Kt }is written. The matrix c_{i }in the denominator of (11) is the L×L lower principal submatrix of C_{i}=[_{.} ^{.} _{C} _{ i } ^{.}]. The (L+1)dimensional vector N _{i }is the vector of differences between the observed samples and their expected values when the sequence of symbols a_{i−Kl}, . . . , a_{i+L+Kt }is written, i.e.:
The vector n _{i }collects the last L elements of N _{i}, ni=[(r_{i+1}−m_{i+1}) . . . (r_{i+L}−m_{i+L})]^{T}. With this notation, the general correlationsensitive metric is:
In the derivations of the branch metrics (8), (10) and (13), no assumptions were made on the exact Viterbitype architecture, that is, the metrics can be applied to any Viterbitype algorithm such as PRML, FDTS/DF, RAMRSE, or, MDFE.
FIG. 3A illustrates a block diagram of a branch metric computation circuit 48 that computes the metric M_{i }for a branch of a trellis, as in Equation (13). Each branch of the trellis requires a circuit 48 to compute the metric M_{i}.
A logarithmic circuit 50 computes the first term of the right hand side of (13) (i.e.
and a quadratic circuit 52 computes the second terms of the right hand side of (13) (i.e. N _{i} ^{T}C_{i} ^{−1} N _{i}−n _{i} ^{T}c_{i} ^{−1} n _{i}), The arrows through the circuits 50 and 52 represent the adaptive nature of the Virterbilike detector 30. A sum circuit 53 computes the sum of the outputs of the circuits 50 and 52.
As stated above, the covariance matrix is given as:
Using standard techniques of signal processing, it can be shown that:
This ratio of determinants is referred to as σ_{i} ^{2}, i.e.:
It can be shown by using standard techniques of signal processing that the sum of the last twc terms of (13), i.e. the output of the circuit 52, is:
Where the vector w _{i }is (L+1)dimensional and is given by:
Equations (17), (18) and (16) (the circuit 52) can be implemented as a tappeddelay line as illustrated in FIG. 3B. The circuit 52 has L delay circuits 54. The tappeddelay line implementation shown in FIGS. 3A and 3B is also referred to as a movingaverage, feedforward, or finiteimpulse response filter. The circuit 48 can be implemented using any type of filter as appropriate.
The adaptation of the vector of weights w _{i }and the quantity σ_{i} ^{2 }as new decisions are made is essentially an implementation of the recursive least squares algorithm. Alternatively, the adaptation may be made using the least mean squares algorithm.
The quantities m_{i }that are subtracted from the output of the delay circuits 54 are the target response values, or mean signal values of (12). The arrows across multipliers 56 and across square devices 58 indicate the adaptive nature, i.e., the data dependent nature, of the circuit 52. The weights w _{i }and the value σ_{i} ^{2 }can be adapted using three methods. First, w _{i }and σ_{i} ^{2 }can be obtained directly from Equations (20) and (16), respectively, once an estimate of the signaldependent covariance matrix C_{i }is available. Second, w _{i }and σ_{i} ^{2 }can be calculated by performing a Cholesky factorization on the inverse of the covariance matrix C_{i}. For example, in the L_{i}D_{i} ^{−1}L_{i} ^{T }Cholesky factorization, w _{i }is the first column of the Cholesky factor L_{i }and σ_{i} ^{2 }is the first element of the diagonal matrix D_{i}. Third, w _{i }and σ_{i} ^{2 }can be computed directly from the data using a recursive least squarestype algorithm. In the first two methods, an estimate of the covariance matrix is obtained by a recursive least squares algorithm.
Computing the branch metrics in (10) or (13) requires knowledge of the signal statistics. These statistics are the mean signal values m_{i }in (12) as well as the covariance matrices C_{i }in (13). In magnetic recording systems, these statistics will generally vary from track to track. For example, the statistics that apply to a track at a certain radius will differ from those for another track at a different radius due to different linear track velocities at those radii. Also, the signal and noise statistics will be different if a head is flying slightly offtrack or if it is flying directly over the track. The head skew angle is another factor that contributes to different statistics from track to track. These factors suggest that the system that implements the metric in (13) needs to be flexible to these changes. Storing the statistics for each track separately is very difficult because of the memory span required to accomplish this. A reasonable alternative is to use adaptive filtering techniques to track the needed statistics.
Tracking the mean signal values m_{i }is generally done so that these values fall on prespecified targets. An adaptive frontend equalizer is employed to force the signal sample values to their targets. This is certainly the case with partial response targets used in algorithms like PR4, EPR4, or EEPR4 where the target is prespecified to one of the class4 partial responses. For example, in a PR4 system, the signal samples, if there is no noise in the system, fall on one of the three target values 1, 0, or −1. Typically this is done with an LMSclass (least meansquares) algorithm that ensures that the mean of the signal samples is close to these target values. In decision feedback equalization (DFE) based detectors or hybrids between fixed delay tree search and DFE, such as FDTS/DF or MDFE, the target response need not be prespecified. Instead, the target values are chosen onthefly by simultaneously updating the coefficients of the frontend and feedback equalizers with an LMStype algorithm.
When there are severe nonlinearities in the system (also referred to as nonlinear distortion or nonlinear ISI), a linear equalizer will generally not be able to place the signal samples right on target. Instead, the means of the signal samples will fall at a different value. For example, in a PR4 system, the response to a sequence of written symbols . . . , −, +, ⊕, . . . might result in mean sample target values . . . , 0, 1, 0.9, . . . , while a sequence of written symbols . . . , +, −, ⊖, . . . might result in a sequence of mean sample values . . . , 0.95, −1.05, 0, . . . . Clearly, in this example, what should be a target value of 1 becomes either 1, 0.9, or 0.95 depending on the written sequence. Because mean values and not noisy samples are being considered, this deviation is due to nonlinearities in the system. There are two fixes for this problem. The first is to employ a nonlinear filter (neural network or Volterra series filter) that is capable of overcoming these nonlinear distortions. Although recently very popular, such a method introduces further correlation between noise samples due to the nonlinear character of the filter. The second fix is to track the nonlinearities in a feedback loop and use the tracked value in the metric computation. For example, let the response to a written symbol sequence . . . , ⊖, +, ⊕, . . . be consistently . . . , 0, 1, 0.9, . . . Then, rather than using the value 1 in the metric computation for the third target, this behavior can be tracked and the value m_{i}=0.9 can be used.
In the remainder of this discussion, for simplicity, it is assumed that the frontend equalizer is placing the signal samples right on the desired target values and that there is no need for further mean corrections. The focus is shifted to tracking the noise covariance matrices needed in the computation of the branch metrics (13).
Assume that the sequence of samples r_{i}, r_{i+1}, . . . , r_{i+L }is observed. Based on these and all other neighboring samples, after an appropriate delay of the Viterbi trellis, a decision is made that the most likely estimate for the sequence of symbols a_{i−K} _{ t }, . . . , a_{i+L+K} _{ t }is â_{i−K} _{ t }, . . . , â_{i+L+K} _{ t }. Here L is the noise correlation length and K=K_{l}+K_{t}+1 is the ISI length. Let the current estimate for the (L+1)×(L+1) covariance matrix corresponding to the sequence of symbols â_{i−K} _{ t }, . . . , â_{i+L+K} _{ t }be Ĉ(â_{i−K} _{ t }, . . . , â_{i+L+K} _{ t }). This symbol is abbreviated with the shorter notation, Ĉ (â). If the estimate is unbiased, the expected value of the estimate is:
where N _{i }is the vector of differences between the observed samples and their expected values, as defined in (12).
Note that once the samples r_{i}, r_{i+1}, . . . , r_{i+L }are observed, and once it is decided that most likely they resulted from a series of written symbols â_{i−K} _{ t }, . . . , â_{i+L+K} _{ t }, the sequence of target (mean) values m_{i}; m_{i+1}, . . . , m_{i+L }is known that correspond to these samples. They are used to compute the vector N _{i}, with which the empirical rankone covariance matrix N _{i}, N ^{T} _{i }is formed. In the absence of prior information, this rankone matrix is an estimate for the covariance matrix for the detected symbols. In a recursive adaptive scheme, this rankone data covariance estimate is used to update the current estimate of the covariance matrix Ĉ (â). A simple way to achieve this is provided by the recursive leastsquares (RLS) algorithm. The RLS computes the next covariance matrix estimate Ĉ′(â) as:
Here, β(t), 0<β(t)<1, is a forgetting factor. The dependence on t signifies that β is a function of time. Equation (22) can be viewed as a weighted averaging algorithm, where the data sample covariance N _{i} _{i} ^{T }is weighted by the factor [1−β(t)], while the previous estimate is weighted by β(t). The choice of β(t) should reflect the nonstationarity degree of the noise. For example, if the nonstationarity is small, β(t) should be close to 1, while it should drop as the nonstationarity level increases. The forgetting factor is typically taken timedependent to account for the startup conditions of the RLS algorithm in (22). As more data is processed, a steadystate is expected to be achieved and β(t) is made to approach a constant value. Initially, β(t) is close to zero, to reflect the lack of a good prior estimate Ĉ(â), and to rely more on the data estimate. With time, β(t) is increased and settles around a value close to 1.
The impact of the initial conditions in (22) decays exponentially fast. Hence, the algorithm (22) can be started with an arbitrary initial guess for the covariance matrix Ĉ(â), with the only constraint being that the matrix be positive semidefinite, e.g, a zero matrix or an identity matrix.
The onedimensional equivalent of equation (22) is
This equation can be used in conjunction with the metric in (10).
It is important to point out that, due to the signaldependent character of the media noise, there will be a different covariance matrix to track for each branch in the treetrellis of the Viterebilike detector. Practical considerations of memory requirements, however, limit the dimensions of the matrices to be tracked. Fortunately, simple 2×2 matrices are enough to show substantial improvement in error rate performance.
The following example illustrates how the algorithm in (22) works. Assume a PR4 target response with a simple trellis structure as shown in FIG. 4 Notice that for PR4, the symbols can be equated to the trellis states, as is illustrated in FIG. 4 The number next to each branch in FIG. 4 represents the target value (mean sample value) for the corresponding path between states. The target values in PR4 can be one of three values −1, 0, or 1.
In this example a noise correlation length of L=1 is assumed. It is also assumed that the leading and trailing ISI lengths are K_{l}=0 and K_{t}=1, respectively, to give the total ISI length K=K_{l}+K_{t}+1=2 for the PR4 response. Because L=1, signal covariance matrices of size (L+1)×(L+1)=2×2 need to be tracked. The number of these matrices equals the number of different combinations of two consecutive branches in the trellis. A simple count in FIG. 4 reveals that this number is 16, because there are 4 nodes in the trellis and 2 branches entering and leaving each node.
Assume that, using the branch metric in (13), the Viterbilike detector decides that the most likely written symbols a_{i}, a_{i+1}, a_{i+2}, equal {â_{i}, â_{i+1}, â_{i+2}}={⊕, +, −}. This is illustrated in FIG. 5, where the corresponding path through the trellis is highlighted. The noisy signal samples corresponding to the trellis branches are r_{i}=0.9 and r_{i+1}=−!0.2, which deviate slightly from their ideal partial response target values of 1 and 0, respectively.
Suppose that, prior to making the decision {â_{i}, â_{i+1}, â_{i+2}}={⊕, +, −}, the estimate for the a covariance matrix associated with this sequence of three symbols is
Let the forgetting factor be B=0.95. To update the covariance matrix the vector is first formed:
The rankone sample covariance matrix N N ^{T }is used to find the covariance matrix update:
The matrix Ĉ′(⊕, +, −) becomes our estimate for the covariance matrix corresponding to this particular symbol sequence (trellis path) and is used to compute the metrics (13) in the subsequent steps of the Viterbilike algorithm.
FIG. 6 illustrates a flowchart of a method of detecting a sequence of adjacent signal samples stored on a high density magnetic recording device. Viterbi sequence detection is performed using a signal sample at step 38. The sequence detection produces decisions which are output at step 40. The signal sample is delayed at step 42. The past samples and detector decisions are used to update the noise statistics at step 44. Branch metrics, which are used in the sequence detection step 38, are calculated at step 46.
It can be understood by those skilled in the art that the method of FIG. 6 can be performed on a computer. The steps may be coded on the computer as a series of instructions, which, when executed, cause the computer to detect a sequence of adjacent signal samples stored on a high density magnetic recording device. The computer may be, for example, a personal computer, a workstation, or a mainframe computer. The computer may also have a storage device, such as a disk array, for storage of the series of instructions.
Simulation results using two partial response detection algorithms, namely PR4 and EPR4 are now presented. To create realistic waveforms, corrupted by media noise, an efficient stochastic zigzag model, the TZZT model was used. These waveforms are then passed through the detectors. A Lindholm inductive head is used for both writing and reading. Table 1 presents the recording parameters of the model. These recording parameters are chosen so that with a moderately low symbol density per PW50, a low number of transition widths a per symbol transition separation results. Namely, at 3 symbols/PW50 a transition separation of only 2.9 a is present. The transition profile was modeled by an error function, where the transition width a denotes the distance from the transition center to the point where the magnetization equals M_{r}/2.
TABLE 1  
Recording parameters used in simulations.  
Parameter  Symbol  Value  
media remanence  M_{r}  450  kA/m 
media coercivity  H_{c}  160  kA/m 
media thickness  δ  0.02  μm 
media crosstrack correlation width  s  200  Å 
headmedia separation  d  15  nm 
head field gradient factor  Q  0.8  
had gap length  g  0.135  μm 
track width  TW  2  μm 
transition width parameter  α  0.019  μm 
percolation length  L = 1.4α  0.0266  μm 
50% pulse width  PW50  0.167  μm 
The symbols utilizing the (0,4) run length limited code are written. No error correction is applied, so the obtained error rates are not bit error rates, but (raw) symbol error rates.
Both the PR4 and EPR4 detectors were tested using the following three different metric computation methods: the Euclidian metric (8), the variance dependent metric (10). also referred to as the C1 metric, and the 2×2 correlation sensitive metric (13), named the C2 metric for short. For a PR4 target response, the total ISI length is K=K_{l}+K_{t}+1=2. where the leading and trailing ISI lengths are K_{l}=0 and K_{t}=1, respectively. The noise correlation length for the Euclidian and the C1 metrics is L=0, and for the C2 metric the noise correlation length is L=1. These three PR4 detectors are referred to as PR4(Euc), PR4(C1), and PR4(C2).
Similarly to the PR4 detectors, three EPR4 detectors were tested, EPR4(Euc), EPR4(C1) and EPR4(C2). The only difference between the PR4 detectors and the EPR4 detectors are the target response and the ISI length, which for the EPR4 target response equals K=K_{l}+K_{t}+1=3, with K_{l}=1 and K_{t}=1.
The signal obtained by the TZZT model is already corrupted with media noise. To this signal white Gaussian noise was added to simulate the head and electronics noise in a real system. The power of the additive white Gaussian noise is quoted as the signal to additive white Gaussian noise ratio, S(AWG)NR, which is obtained as:
where A_{iso }is the mean (media noise free) amplitude of an isolated pulse and σ^{2} _{n }is the variance of the additive white Gaussian noise. The noise distorted signal is first passed through a lowpass filter to clean out the noise outside the Nyquist band. The signal is then sampled at a rate of one sample per symbol and subsequently passed through a partial response shaping filter, either PR4 or EPR4. The partial response shaping filter is implemented as an adaptive FIR filter whose tap weights are adjusted using the LMS algorithm. Note that both filters add correlation to the noise. For the C1 and C2 metrics in (10) and (13), the RLS algorithms (22) and (23) are used to estimate the noise variances and covariance matrices for the branch metric computations. In both cases, the forgetting factor is set to β=0.95.
All six detection algorithms were tested at three different recording densities.
Symbol separation of 4.4 a. This recording density corresponds to a symbol density of 2 symbols/PW50, see Table 1. FIG. 7 shows the symbol error rate performance of the PR4 detectors for different additive noise SNRs. The media noise is embedded in the system, which is why the xaxis on the graph is labeled as S(AWG)NR instead of simply SNR. At this density, the PR4(Euc) and PR4(C1) detectors perform just about the same and the PR4(C2) detector outperforms them both by about 3 dB. The reason for this is that the PR4 shaping filter averages noise samples from different symbols, which masks the signal dependent nature of the media noise. This is why there is not much to gain by using PR4(C1) instead of PR4(Euc). The PR4(C2) detector performs better because it partially removes the effects of noise correlation introduced by the PR4 shaping filter. FIG. 8 shows how the EPR4 detectors perform at this same density (symbol separation 4.4 a).: The PR4(C2) has the best performance and PR4(Euc) has the worst. The difference in performance at the error rate of 10^{−5 }is only about 0.5 dB between PR4(Euc) and PR4(C2). This is because the media noise power at this density is low and the signal is well matched to the target so the EPR4 shaping filter does not introduce unnecessary noise correlation.
Symbol separation of 3.5 a. This recording density corresponds to a symbol density of 2.5 symbols/PW50. FIG. 9 shows the performance of the PR4 detectors at this density. FIG. 9 is similar to FIG. 7. except that the error rates have increased. This is again due to a mismatch between the original signal and the PR4 target response, which is why the PR4 shaping filter introduces correlation in the noise. PR4(C2) still outperforms the two other algorithms, showing the value of exploiting the correlation across signal samples.
FIG. 10 shows the error rates obtained when using the EPR4 detectors. Due to a higher density; the media noise is higher than in the previous example with symbol separations of 4.4 a. This is why the graph in FIG. 10 has moved to the right by 2 dB in comparison to the graph in FIG. 8. While the required S(AWG)NR increased, the margin between the EPR4(Euc) and EPR4(C2) also increased from about 0.5 dB to about 1 dB,suggesting that the correlationsensitive metric is more resilient to density increase. This is illustrated in FIG. 11 where the S(AWG)NR required for an error rate of 10^{−5 }is plotted versus the linear density for the three EPR4 detectors. From FIG. 11 it can be seen that, for example, with an S(AWG)NR of 15 dB, the EPR(Euc) detector operates at a linear density of about 2.2 symbols/PW50 and the EPR4(C2) detector operates at 2.4 symbols/PW50, thus achieving a gain of about 10% of linear density. Symbol separation of 2.9 a. This recording density corresponds to a symbol density of 3 symbols/PW50. Due to a very low number of symbols per a, this is the density where the detectors significantly lose performance due to the percolation of magnetic domains, also referred to as nonlinear amplitude loss or partial signal erasure. FIGS. 12 and 13 show the performance of the PR4 and EPR4 families of detectors at this density. The detectors with the C2 metric outperform the other two metrics. The error rates are quite high in all cases. This is because at the symbol separations of 2.9 a, nonlinear effects, such as partial erasure due to percolation of domains , start to dominate. These effects can only be undone with a nonlinear pulse shaping filter, which have not been employed here.
The experimental evidence shows that the correlation sensitive sequence detector outperforms the correlation insensitive detectors. It has also been demonstrated that the performance margin between the correlation sensitive and the correlation insensitive detectors grows with the recording density. In other words, the performance of the correlation insensitive detector deteriorates faster than the performance of the correlation sensitive detector. Quantitatively, this margin depends on the amount of correlation in the noise passed through the system. Qualitatively, the higher the correlation between the noise samples, the greater will be the margin between the CSSD and its correlation insensitive counter part.
The teachings of the present invention can be extended beyond Viterbilike detectors to apply to turbo decoders, softdecision detectors, and detectors utilizing the Viterbi algorithm, the BCJR algorithm, the SoftOutput Viterbi Algorithm (SOVA), and other similar algorithms. Traditionally, these algorithms and devices have been derived and designed assuming that the communication channel is memoryless, i.e. that the noise in the channel is white and uncorrelated. However, the teachings of the present invention, in which the branch metric computations are performed assuming the channel has memory, i.e. the noise is correlated and the noise statistical correlation is possibly signal dependent, can be applied to any device or algorithm in which branch metrics must be computed.
FIG. 14 is an illustration of a portion of a communications system 100 having a detector 102 with parallely concatenated decoders 104 and 106. The output of a communications channel 108 is connected to a receiver 110. The receiver includes the detector 102, a first decoder 104, and a second decoder 106. The detector 102 processes the output of the channel 108 and feeds decisions to the decoders 104 and 106. The decoders 104 and 106 can be, for example, turbo decoders or any other iterative decoders that use, for example, low density parity check codes, linear block coders, or convolutional codes.
FIG. 15 is an illustration of a portion of a communications system 112 having the detector 102 connected in a serially concatenated arrangement to a decoder 114. The detector 102 and the decoder 11 comprise a receiver/decoder 116.
The detector 102 can use any type of appropriate algorithm such as, for example, BCJR, Viterbi, SOVA, or any other instance of the Generalized Viterbi Algorithm (GVA). The detector 102 can work on a trellis, tree, finitestate machine, graph, or any other structure with branches for which the detector 102 has a component that must compute branch metrics. Because this component reflects the assumptions on the noise memory and statistics, the teachings of the present invention can be designed into this component such that the detector 102 is accurate when the channel 108 has memory, i.e. the channel 108 has intersymbol interference and correlated noise with signal dependent statistics.
As an example, the BCJR algorithm can be described for channels with memory. The following equations use standard notation to describe the BCJR algorithm, as described in L. R. Bahl et al., “Optimal Decoding of Linear Codes for Minimizing Symbol Error Rate”, IEEE Transactions on Information Theory, IT20:28487, March 1974 and C. Heegard et al., Turbo Coding, 1999, Kluwer Academic Publishers, which are herein incorporated by reference.
BCJR softoutput algorithm for Markov noise with memory length L:
Initialization
Thus, the branch metric, as denoted by the second half of Equation x, is computed exactly the same way as the branch metric of Equations 6, 9, 10, 11, and 13. When the noise process is Gaussian, the branch metric can be computed using Equation 13 and the arrangements described in FIGS. 3A and 3B.
The generalization of the case described above for the BCJR algorithm can be made for any other soft output or hard output algorithm defined on a trellis or a graph of any communications (or other dynamic) system. The place in the detector where the branch metric is computed can be substituted by the metric computation as described in Equations 6, 9, 10, 11, 13 and FIGS. 3A and 3B.
While the present invention has been described in conjunction with preferred embodiments thereof, many modifications and variations will be apparent to those of ordinary skill in the art. For example, the present invention may be used to detect a sequence that exploits the correlation between adjacent signal samples for adaptively detecting a sequence of symbols through a communications channel. The foregoing description and the following claims are intended to cover all such modifications and variations.
Claims (27)
Priority Applications (3)
Application Number  Priority Date  Filing Date  Title 

US4600697P true  19970509  19970509  
US09/055,003 US6201839B1 (en)  19970509  19980403  Method and apparatus for correlationsensitive adaptive sequence detection 
US09/259,195 US6438180B1 (en)  19970509  19990301  Soft and hard sequence detection in ISI memory channels 
Applications Claiming Priority (1)
Application Number  Priority Date  Filing Date  Title 

US09/259,195 US6438180B1 (en)  19970509  19990301  Soft and hard sequence detection in ISI memory channels 
Related Parent Applications (1)
Application Number  Title  Priority Date  Filing Date  

US09/055,003 ContinuationInPart US6201839B1 (en)  19970509  19980403  Method and apparatus for correlationsensitive adaptive sequence detection 
Publications (1)
Publication Number  Publication Date 

US6438180B1 true US6438180B1 (en)  20020820 
Family
ID=46276340
Family Applications (1)
Application Number  Title  Priority Date  Filing Date 

US09/259,195 Expired  Lifetime US6438180B1 (en)  19970509  19990301  Soft and hard sequence detection in ISI memory channels 
Country Status (1)
Country  Link 

US (1)  US6438180B1 (en) 
Cited By (61)
Publication number  Priority date  Publication date  Assignee  Title 

US20020161561A1 (en) *  20010116  20021031  Sridevi Sarma  System and method for association of object sets 
US20020174400A1 (en) *  20010418  20021121  Eiji Yamada  Decoding method and recordingmedium reproducing apparatus 
US20020186793A1 (en) *  20010608  20021212  Thomas Kolze  Detection and mitigation of temporary impairments in a communications channel 
US20030023917A1 (en) *  20010615  20030130  Tom Richardson  Node processors for use in parity check decoders 
US20030038212A1 (en) *  19991209  20030227  Torsten Niemeyer  Guide assembly for a missile 
US6570919B1 (en) *  19990730  20030527  Agere Systems Inc.  Iterative decoding of data packets employing decision feedback equalization 
US6631494B2 (en) *  20001207  20031007  Maxtor Corporation  Ameliorating the adverse impact of burst errors on the operation of ISI detectors 
US20040006735A1 (en) *  20020703  20040108  William Mar  Viterbi decoding device and method for processing multidata input into multidata output 
US20040019845A1 (en) *  20020726  20040129  Hughes Electronics  Method and system for generating low density parity check codes 
US20040042106A1 (en) *  20010723  20040304  Yasutaka Kotani  Magnetic reproducing apparatus and magnetic reproducing method 
WO2004019268A1 (en) *  20020820  20040304  Flarion Technologies, Inc.  Methods and apparatus for encoding ldpc codes 
US20040141480A1 (en) *  20020522  20040722  Interdigital Technology Corporation  Adaptive algorithm for a cholesky approximation 
US20040153934A1 (en) *  20020820  20040805  Hui Jin  Methods and apparatus for encoding LDPC codes 
US20040153953A1 (en) *  20030203  20040805  Wilson Danny W.  Processor and method for convolutional decoding 
US20040157626A1 (en) *  20030210  20040812  Vincent Park  Paging methods and apparatus 
US20040168114A1 (en) *  20030226  20040826  Tom Richardson  Soft information scaling for iterative decoding 
US20040187129A1 (en) *  20030226  20040923  Tom Richardson  Method and apparatus for performing lowdensity paritycheck (LDPC) code operations using a multilevel permutation 
US20040196927A1 (en) *  20030402  20041007  Hui Jin  Extracting soft information in a blockcoherent communication system 
US20040216024A1 (en) *  20030402  20041028  Hui Jin  Methods and apparatus for interleaving in a blockcoherent communication system 
US20040268208A1 (en) *  20030627  20041230  Seagate Technology Llc  Computation of branch metric values in a data detector 
US20050090293A1 (en) *  20031028  20050428  Jingdong Lin  Method and apparatus for silent frame detection in a GSM communications system 
US20050138520A1 (en) *  20031222  20050623  Tom Richardson  Methods and apparatus for reducing error floors in message passing decoders 
US20050169412A1 (en) *  20040203  20050804  Seagate Technology Llc  Patterndependent equalization and detection 
US6931585B1 (en)  20020103  20050816  Marvell International Ltd.  Detection in the presence of media noise 
US6965652B1 (en)  20000628  20051115  Marvell International Ltd.  Address generator for LDPC encoder and decoder and method thereof 
US20050257124A1 (en) *  20010615  20051117  Tom Richardson  Node processors for use in parity check decoders 
US20050278606A1 (en) *  20010615  20051215  Tom Richardson  Methods and apparatus for decoding ldpc codes 
US20060020872A1 (en) *  20040721  20060126  Tom Richardson  LDPC encoding methods and apparatus 
US20060020868A1 (en) *  20040721  20060126  Tom Richardson  LDPC decoding methods and apparatus 
US20060026486A1 (en) *  20040802  20060202  Tom Richardson  Memory efficient LDPC decoding methods and apparatus 
US7000177B1 (en) *  20000628  20060214  Marvell International Ltd.  Parity check matrix and method of forming thereof 
US20060093075A1 (en) *  20041028  20060504  Radich William M  Whitening of datadependent, nonstationary noise in an intersymbol interference channel detector 
US20060119964A1 (en) *  20041203  20060608  International Business Machines Corporation  Magnetic tape read channel signal values developed employing intermediate bits of the path memory of a PRML viterbi detector 
US7072417B1 (en)  20000628  20060704  Marvell International Ltd.  LDPC encoder and method thereof 
US7099411B1 (en)  20001012  20060829  Marvell International Ltd.  Softoutput decoding method and apparatus for controlled intersymbol interference channels 
GB2425027A (en) *  20050408  20061011  Arithmatica Ltd  Viterbi detector using Markov noise model 
US20060233287A1 (en) *  20050413  20061019  Seagate Technology Llc  Jitter sensitive maximumaposteriori sequence detection 
US7154965B2 (en)  20021008  20061226  President And Fellows Of Harvard College  Soft detection of data symbols in the presence of intersymbol interference and timing error 
US7158589B2 (en) *  20000912  20070102  Broadcom Corporation  Method and apparatus for parallel decoding of turbo encoded data 
US7184486B1 (en)  20000427  20070227  Marvell International Ltd.  LDPC encoder and decoder and method thereof 
US20070234175A1 (en) *  20030402  20071004  Qualcomm Incorporated  Methods and apparatus for interleaving in a blockcoherent communication system 
US20070234178A1 (en) *  20030226  20071004  Qualcomm Incorporated  Soft information scaling for interactive decoding 
US20070286312A1 (en) *  20060601  20071213  Nokia Corporation  Apparatus, method and computer program product providing iterative recursive least squares (RLS) algorithm for coded MIMO systems 
US7340003B1 (en)  20000427  20080304  Marvell International Ltd.  Multimode iterative detector 
US20080065947A1 (en) *  20020703  20080313  The Directv Group, Inc.  Method and system for decoding low density parity check (ldpc) codes 
US20080212721A1 (en) *  20061030  20080904  Colorado State University Research Foundation  Low complexity maximum likelihood sequence detection system and methods 
US20080280566A1 (en) *  20070507  20081113  KuangYu Yen  Wireless communication apparatus with builtin channel emulator/noise generator 
US20090194106A1 (en) *  20050815  20090806  Resmed Ltd.  Humidifier and/or flow generator for CPAP device 
US20090296664A1 (en) *  20010608  20091203  Kolze Thomas J  Detection and Mitigation of Temporary (Bursts) Impairments in Channels Using SCDMA 
US20100107032A1 (en) *  20020703  20100429  The Directv Group, Inc.  Bit labeling for amplitude phase shift constellation used with low density parity check (ldpc) codes 
US20100192038A1 (en) *  20040813  20100729  Dtvg Licensing, Inc.  Code design and implementation improvements for low density parity check codes for multipleinput multipleoutput channels 
US7801253B1 (en)  20051019  20100921  Marvell International Ltd.  Nonlinear postprocessors for channels with signaldependent noise 
US7853855B1 (en)  20050825  20101214  Marvell International Ltd.  High speed iterative decoder 
US7861131B1 (en)  20050901  20101228  Marvell International Ltd.  Tensor product codes containing an iterative code 
US20110126076A1 (en) *  20020726  20110526  Dtvg Licensing, Inc.  Satellite communication system utilizing low density parity check codes 
US8094707B1 (en)  20070321  20120110  Arrowhead Center, Inc.  Listbased detection in fading channels with long intersymbol interference 
US8321769B1 (en)  20081106  20121127  Marvell International Ltd.  Multiparity tensorproduct code for data channel 
US8711661B2 (en)  20120120  20140429  Carnegie Mellon University  Bidirectional pattern dependent noise prediction 
US8713495B2 (en)  20120816  20140429  Lsi Corporation  Accelerator for a readchannel design and simulation tool 
US8745468B1 (en) *  20080121  20140603  Marvel International Ltd.  Iterative decoding systems using noisebiasing 
US8789525B2 (en)  20070607  20140729  Resmed Limited  Tub for humidifier 
Citations (16)
Publication number  Priority date  Publication date  Assignee  Title 

US5689532A (en)  19950630  19971118  Quantum Corporation  Reduced complexity EPR4 postprocessor for sampled data detection 
US5737342A (en)  19960531  19980407  Quantum Corporation  Method for inchip testing of digital circuits of a synchronously sampled data detection channel 
US5781590A (en)  19960419  19980714  Nec Corporation  Partial response maximum likelihood (PRML) signal processing apparatus 
US5784415A (en)  19930614  19980721  International Business Machines Corporation  Adaptive noisepredictive partialresponse equalization for channels with spectral nulls 
US5844946A (en)  19951025  19981201  Mitsubishi Denki Kabushiki Kaisha  Softdecision receiver and decoder for digital communication 
US5856983A (en)  19960627  19990105  Kabushiki Kaisha Toshiba  Magnetic disk drive and error correction method 
US5862192A (en)  19911231  19990119  Lucent Technologies Inc.  Methods and apparatus for equalization and decoding of digital communications channels using antenna diversity 
US5914988A (en)  19960409  19990622  Thomson Multimedia S.A.  Digital packet data trellis decoder 
US5920599A (en)  19960829  19990706  Mitsubishi Denki Kabushiki Kaisha  Soft decision decoder 
US5937020A (en)  19950926  19990810  Hitachi, Ltd.  Digital information signal reproducing circuit and digital information system 
US5970091A (en)  19951130  19991019  Hitachi, Ltd.  Equalizer having a processing unit for selecting a coefficient out of a coefficient table 
US5978426A (en)  19960418  19991102  Texas Instruments Incorporated  Phase locked loop system and method for use in a data channel 
US6005731A (en) *  19930701  19991221  Cirrus Logic, Inc.  Channel quality circuit employing a test pattern generator in a sampled amplitude read channel for calibration 
US6104766A (en) *  19950918  20000815  International Business Machines Corporation  Noise predictive maximum likelihood (NPML) detection methods and apparatus based thereon 
US6201839B1 (en) *  19970509  20010313  Carnegie Mellon University  Method and apparatus for correlationsensitive adaptive sequence detection 
US6215831B1 (en) *  19950331  20010410  Motorola, Inc.  Decoder circuit using bitwise probability and method therefor 

1999
 19990301 US US09/259,195 patent/US6438180B1/en not_active Expired  Lifetime
Patent Citations (16)
Publication number  Priority date  Publication date  Assignee  Title 

US5862192A (en)  19911231  19990119  Lucent Technologies Inc.  Methods and apparatus for equalization and decoding of digital communications channels using antenna diversity 
US5784415A (en)  19930614  19980721  International Business Machines Corporation  Adaptive noisepredictive partialresponse equalization for channels with spectral nulls 
US6005731A (en) *  19930701  19991221  Cirrus Logic, Inc.  Channel quality circuit employing a test pattern generator in a sampled amplitude read channel for calibration 
US6215831B1 (en) *  19950331  20010410  Motorola, Inc.  Decoder circuit using bitwise probability and method therefor 
US5689532A (en)  19950630  19971118  Quantum Corporation  Reduced complexity EPR4 postprocessor for sampled data detection 
US6104766A (en) *  19950918  20000815  International Business Machines Corporation  Noise predictive maximum likelihood (NPML) detection methods and apparatus based thereon 
US5937020A (en)  19950926  19990810  Hitachi, Ltd.  Digital information signal reproducing circuit and digital information system 
US5844946A (en)  19951025  19981201  Mitsubishi Denki Kabushiki Kaisha  Softdecision receiver and decoder for digital communication 
US5970091A (en)  19951130  19991019  Hitachi, Ltd.  Equalizer having a processing unit for selecting a coefficient out of a coefficient table 
US5914988A (en)  19960409  19990622  Thomson Multimedia S.A.  Digital packet data trellis decoder 
US5978426A (en)  19960418  19991102  Texas Instruments Incorporated  Phase locked loop system and method for use in a data channel 
US5781590A (en)  19960419  19980714  Nec Corporation  Partial response maximum likelihood (PRML) signal processing apparatus 
US5737342A (en)  19960531  19980407  Quantum Corporation  Method for inchip testing of digital circuits of a synchronously sampled data detection channel 
US5856983A (en)  19960627  19990105  Kabushiki Kaisha Toshiba  Magnetic disk drive and error correction method 
US5920599A (en)  19960829  19990706  Mitsubishi Denki Kabushiki Kaisha  Soft decision decoder 
US6201839B1 (en) *  19970509  20010313  Carnegie Mellon University  Method and apparatus for correlationsensitive adaptive sequence detection 
NonPatent Citations (7)
Title 

Bahl, et al., "Optimal Decoding of Linear Codes for Minimizng Symbol Error Rate," IEEE Transactions on Information Theory, pp. 284287, Mar. 1974. 
Chevillat et al., "NoisePredictive PartialResponse Equalizers and Applications," IEEE CC '92 Conference Record, pp. 942947, Jun. 1992. 
Heegard et al., Turbo Coding, 1999, Kluwer Academc Publishers, pp. 121164. 
Lee et al., "Performance Analysis of the Modified Maximum Likelihood Sequence Detector in the Presence of Datadependent Noise", Proceedings of the 26th Asilomar Conference, pp. 961964, Oct. 1992. 
Nakagawa et al., "A Study on Detection Methods of NRZ Recording", IEEE Trans. On Magnetics, vol. MAG16, No. 1, pp. 10410, Jan. 1980. 
Zayad et al., "Comparison of Equalization & Detection for Very HighDensity Magnetic Recording," IEEE Intermag Conference, Apr. 1997. 
Zeng et al., "Modified Viterbi Algorithm for Jitterdominant 1D2 Channel," IEEE Trans. On Magnetics, vol. 28, No. 5, pp. 28952897, Sep. 1992. 
Cited By (134)
Publication number  Priority date  Publication date  Assignee  Title 

US6570919B1 (en) *  19990730  20030527  Agere Systems Inc.  Iterative decoding of data packets employing decision feedback equalization 
US20030038212A1 (en) *  19991209  20030227  Torsten Niemeyer  Guide assembly for a missile 
US7184486B1 (en)  20000427  20070227  Marvell International Ltd.  LDPC encoder and decoder and method thereof 
US8136005B1 (en)  20000427  20120313  Marvell International Ltd.  Multimode iterative detector 
US7340003B1 (en)  20000427  20080304  Marvell International Ltd.  Multimode iterative detector 
US7453960B1 (en)  20000427  20081118  Marvell International Ltd.  LDPC encoder and encoder and method thereof 
US7751505B1 (en)  20000427  20100706  Marvell International Ltd.  LDPC encoder and encoder and method thereof 
US7168033B1 (en)  20000628  20070123  Marvell International Ltd.  Parity check matrix and method of forming thereof 
US7583751B1 (en)  20000628  20090901  Marvell International Ltd.  LDPC encoder method thereof 
US7580485B1 (en)  20000628  20090825  Marvell International Ltd.  Address generator for LDPC encoder and decoder and method thereof 
US7000177B1 (en) *  20000628  20060214  Marvell International Ltd.  Parity check matrix and method of forming thereof 
US7801254B1 (en)  20000628  20100921  Marvell International Ltd.  Address generator for LDPC encoder and decoder and method thereof 
US7760822B1 (en)  20000628  20100720  Marvell International Ltd.  Address generator for LDPC encoder and decoder and method thereof 
US7072417B1 (en)  20000628  20060704  Marvell International Ltd.  LDPC encoder and method thereof 
US6965652B1 (en)  20000628  20051115  Marvell International Ltd.  Address generator for LDPC encoder and decoder and method thereof 
US7158589B2 (en) *  20000912  20070102  Broadcom Corporation  Method and apparatus for parallel decoding of turbo encoded data 
US7319726B1 (en)  20001012  20080115  Marvell International Ltd.  Softoutput decoding method and apparatus for controlled intersymbol interference channels 
US7099411B1 (en)  20001012  20060829  Marvell International Ltd.  Softoutput decoding method and apparatus for controlled intersymbol interference channels 
US6631494B2 (en) *  20001207  20031007  Maxtor Corporation  Ameliorating the adverse impact of burst errors on the operation of ISI detectors 
US20020161561A1 (en) *  20010116  20021031  Sridevi Sarma  System and method for association of object sets 
US7234096B2 (en) *  20010418  20070619  Sharp Kabushiki Kaisha  Decoding method and recordingmedium reproducing apparatus 
US20020174400A1 (en) *  20010418  20021121  Eiji Yamada  Decoding method and recordingmedium reproducing apparatus 
US20080098287A1 (en) *  20010608  20080424  Thomas Kolze  Detection and mitigation of temporary impairments in a communications channel 
US20090296664A1 (en) *  20010608  20091203  Kolze Thomas J  Detection and Mitigation of Temporary (Bursts) Impairments in Channels Using SCDMA 
US8068564B2 (en)  20010608  20111129  Broadcom Corporation  Detection and mitigation of temporary impairments in a communications channel 
US20020186793A1 (en) *  20010608  20021212  Thomas Kolze  Detection and mitigation of temporary impairments in a communications channel 
US8107355B2 (en)  20010608  20120131  Broadcom Corporation  Detection and mitigation of temporary (bursts) impairments in channels using SCDMA 
US7308050B2 (en) *  20010608  20071211  Broadcom Corporation  Detection and mitigation of temporary impairments in a communications channel 
US8498365B2 (en)  20010608  20130730  Broadcom Corporation  Detection and mitigation of temporary impairments in a communications channel 
US7673223B2 (en)  20010615  20100302  Qualcomm Incorporated  Node processors for use in parity check decoders 
US20050278606A1 (en) *  20010615  20051215  Tom Richardson  Methods and apparatus for decoding ldpc codes 
US20030023917A1 (en) *  20010615  20030130  Tom Richardson  Node processors for use in parity check decoders 
US7133853B2 (en)  20010615  20061107  Qualcomm Incorporated  Methods and apparatus for decoding LDPC codes 
US20050257124A1 (en) *  20010615  20051117  Tom Richardson  Node processors for use in parity check decoders 
US6938196B2 (en)  20010615  20050830  Flarion Technologies, Inc.  Node processors for use in parity check decoders 
US7552097B2 (en)  20010615  20090623  Qualcomm Incorporated  Methods and apparatus for decoding LDPC codes 
US20060242093A1 (en) *  20010615  20061026  Tom Richardson  Methods and apparatus for decoding LDPC codes 
US20040042106A1 (en) *  20010723  20040304  Yasutaka Kotani  Magnetic reproducing apparatus and magnetic reproducing method 
US7155660B1 (en)  20020103  20061226  Marvell International Ltd.  Detection in the presence of media noise 
US6931585B1 (en)  20020103  20050816  Marvell International Ltd.  Detection in the presence of media noise 
US7917836B1 (en)  20020103  20110329  Marvell International Ltd.  Detection in the presence of media noise 
US20040141480A1 (en) *  20020522  20040722  Interdigital Technology Corporation  Adaptive algorithm for a cholesky approximation 
US7185269B2 (en) *  20020703  20070227  Via Optical Solution, Inc.  Viterbi decoding device and method for processing multidata input into multidata output 
US20100107032A1 (en) *  20020703  20100429  The Directv Group, Inc.  Bit labeling for amplitude phase shift constellation used with low density parity check (ldpc) codes 
US8145980B2 (en) *  20020703  20120327  Dtvg Licensing, Inc.  Method and system for decoding low density parity check (LDPC) codes 
US20080065947A1 (en) *  20020703  20080313  The Directv Group, Inc.  Method and system for decoding low density parity check (ldpc) codes 
US8102947B2 (en)  20020703  20120124  Dtvg Licensing, Inc.  Bit labeling for amplitude phase shift constellation used with low density parity check (LDPC) codes 
US20040006735A1 (en) *  20020703  20040108  William Mar  Viterbi decoding device and method for processing multidata input into multidata output 
US8291293B2 (en)  20020703  20121016  Dtvg Licensing, Inc.  Method and system for routing in low density parity check (LDPC) decoders 
US20110239086A1 (en) *  20020703  20110929  Dtvg Licensing, Inc.  Method and system for routing in low density parity check (ldpc) decoders 
US20080082895A1 (en) *  20020726  20080403  The Directv Group, Inc.  Method and system for generating low density parity check codes 
US8095854B2 (en) *  20020726  20120110  Dtvg Licensing, Inc.  Method and system for generating low density parity check codes 
US20110126076A1 (en) *  20020726  20110526  Dtvg Licensing, Inc.  Satellite communication system utilizing low density parity check codes 
US8144801B2 (en)  20020726  20120327  Dtvg Licensing, Inc.  Satellite communication system utilizing low density parity check codes 
US20040019845A1 (en) *  20020726  20040129  Hughes Electronics  Method and system for generating low density parity check codes 
US6961888B2 (en)  20020820  20051101  Flarion Technologies, Inc.  Methods and apparatus for encoding LDPC codes 
US7627801B2 (en)  20020820  20091201  Qualcomm Incorporated  Methods and apparatus for encoding LDPC codes 
US20100153812A1 (en) *  20020820  20100617  Qualcomm Incorporated  Methods and apparatus for encoding ldpc codes 
WO2004019268A1 (en) *  20020820  20040304  Flarion Technologies, Inc.  Methods and apparatus for encoding ldpc codes 
US8751902B2 (en)  20020820  20140610  Qualcomm Incorporated  Methods and apparatus for encoding LDPC codes 
US20040153934A1 (en) *  20020820  20040805  Hui Jin  Methods and apparatus for encoding LDPC codes 
US7154965B2 (en)  20021008  20061226  President And Fellows Of Harvard College  Soft detection of data symbols in the presence of intersymbol interference and timing error 
US20040153953A1 (en) *  20030203  20040805  Wilson Danny W.  Processor and method for convolutional decoding 
US7171609B2 (en) *  20030203  20070130  Verisilicon Holdings Company Ltd.  Processor and method for convolutional decoding 
US20040157626A1 (en) *  20030210  20040812  Vincent Park  Paging methods and apparatus 
US20070060175A1 (en) *  20030210  20070315  Vincent Park  Paging methods and apparatus 
US20070234178A1 (en) *  20030226  20071004  Qualcomm Incorporated  Soft information scaling for interactive decoding 
US20050258987A1 (en) *  20030226  20051124  Tom Richardson  Method and apparatus for performing lowdensity paritycheck (LDPC) code operations using a multilevel permutation 
US20080028272A1 (en) *  20030226  20080131  Tom Richardson  Method and apparatus for performing lowdensity paritycheck (ldpc) code operations using a multilevel permutation 
US7966542B2 (en)  20030226  20110621  Qualcomm Incorporated  Method and apparatus for performing lowdensity paritycheck (LDPC) code operations using a multilevel permutation 
US20040168114A1 (en) *  20030226  20040826  Tom Richardson  Soft information scaling for iterative decoding 
US7237171B2 (en)  20030226  20070626  Qualcomm Incorporated  Method and apparatus for performing lowdensity paritycheck (LDPC) code operations using a multilevel permutation 
US6957375B2 (en)  20030226  20051018  Flarion Technologies, Inc.  Method and apparatus for performing lowdensity paritycheck (LDPC) code operations using a multilevel permutation 
US7231577B2 (en)  20030226  20070612  Qualcomm Incorporated  Soft information scaling for iterative decoding 
US20040187129A1 (en) *  20030226  20040923  Tom Richardson  Method and apparatus for performing lowdensity paritycheck (LDPC) code operations using a multilevel permutation 
US20070234175A1 (en) *  20030402  20071004  Qualcomm Incorporated  Methods and apparatus for interleaving in a blockcoherent communication system 
US7231557B2 (en)  20030402  20070612  Qualcomm Incorporated  Methods and apparatus for interleaving in a blockcoherent communication system 
US7434145B2 (en)  20030402  20081007  Qualcomm Incorporated  Extracting soft information in a blockcoherent communication system 
US8196000B2 (en)  20030402  20120605  Qualcomm Incorporated  Methods and apparatus for interleaving in a blockcoherent communication system 
US20040196927A1 (en) *  20030402  20041007  Hui Jin  Extracting soft information in a blockcoherent communication system 
US20040216024A1 (en) *  20030402  20041028  Hui Jin  Methods and apparatus for interleaving in a blockcoherent communication system 
US20040268208A1 (en) *  20030627  20041230  Seagate Technology Llc  Computation of branch metric values in a data detector 
US20050090293A1 (en) *  20031028  20050428  Jingdong Lin  Method and apparatus for silent frame detection in a GSM communications system 
US7245878B2 (en) *  20031028  20070717  Spreadtrum Communications Corporation  Method and apparatus for silent frame detection in a GSM communications system 
US8020078B2 (en)  20031222  20110913  Qualcomm Incorporated  Methods and apparatus for reducing error floors in message passing decoders 
US20050138520A1 (en) *  20031222  20050623  Tom Richardson  Methods and apparatus for reducing error floors in message passing decoders 
US7237181B2 (en)  20031222  20070626  Qualcomm Incorporated  Methods and apparatus for reducing error floors in message passing decoders 
US7599450B2 (en)  20040203  20091006  Seagate Technology  Patterndependent equalization and detection 
US20050169412A1 (en) *  20040203  20050804  Seagate Technology Llc  Patterndependent equalization and detection 
US8595569B2 (en)  20040721  20131126  Qualcomm Incorporated  LCPC decoding methods and apparatus 
US7346832B2 (en)  20040721  20080318  Qualcomm Incorporated  LDPC encoding methods and apparatus 
US20060020868A1 (en) *  20040721  20060126  Tom Richardson  LDPC decoding methods and apparatus 
US8683289B2 (en)  20040721  20140325  Qualcomm Incorporated  LDPC decoding methods and apparatus 
US8533568B2 (en)  20040721  20130910  Qualcomm Incorporated  LDPC encoding methods and apparatus 
US7395490B2 (en)  20040721  20080701  Qualcomm Incorporated  LDPC decoding methods and apparatus 
US20080163027A1 (en) *  20040721  20080703  Tom Richardson  Ldpc encoding methods and apparatus 
US20060020872A1 (en) *  20040721  20060126  Tom Richardson  LDPC encoding methods and apparatus 
US20060026486A1 (en) *  20040802  20060202  Tom Richardson  Memory efficient LDPC decoding methods and apparatus 
US7376885B2 (en)  20040802  20080520  Qualcomm Incorporated  Memory efficient LDPC decoding methods and apparatus 
US20070168832A1 (en) *  20040802  20070719  Tom Richardson  Memory efficient LDPC decoding methods and apparatus 
US7127659B2 (en)  20040802  20061024  Qualcomm Incorporated  Memory efficient LDPC decoding methods and apparatus 
US20100192038A1 (en) *  20040813  20100729  Dtvg Licensing, Inc.  Code design and implementation improvements for low density parity check codes for multipleinput multipleoutput channels 
US8392793B2 (en)  20040813  20130305  Dtvg Licensing, Inc.  Code design and implementation improvements for low density parity check codes for multipleinput multipleoutput channels 
US20060093075A1 (en) *  20041028  20060504  Radich William M  Whitening of datadependent, nonstationary noise in an intersymbol interference channel detector 
US7471746B2 (en)  20041028  20081230  Seagate Technology, Llc  Whitening of datadependent, nonstationary noise in an intersymbol interference channel detector 
US7573665B2 (en)  20041203  20090811  International Business Machines Corporation  Magnetic tape read channel signal values developed employing intermediate bits of the path memory of a PRML Viterbi detector 
US20060119964A1 (en) *  20041203  20060608  International Business Machines Corporation  Magnetic tape read channel signal values developed employing intermediate bits of the path memory of a PRML viterbi detector 
US20080253012A1 (en) *  20041203  20081016  Eleftheriou Evangelos S  Magnetic tape read channel signal values developed employing intermediate bits of the path memory of a prml viterbi detector 
US7430084B2 (en)  20041203  20080930  International Business Machines Corporation  Magnetic tape read channel signal values developed employing intermediate bits of the path memory of a PRML viterbi detector 
GB2425027A (en) *  20050408  20061011  Arithmatica Ltd  Viterbi detector using Markov noise model 
GB2425027B (en) *  20050408  20070815  Arithmatica Ltd  Likelihood detector for datadependant correlated noise 
US20060233287A1 (en) *  20050413  20061019  Seagate Technology Llc  Jitter sensitive maximumaposteriori sequence detection 
US7424077B2 (en) *  20050413  20080909  Carnegie Mellon University  Jitter sensitive maximumaposteriori sequence detection 
US20090194106A1 (en) *  20050815  20090806  Resmed Ltd.  Humidifier and/or flow generator for CPAP device 
US9038629B2 (en)  20050815  20150526  Resmed Limited  Humidifier and/or flow generator for CPAP device 
US10124143B2 (en)  20050815  20181113  Resmed Limited  Humidifier and/or flow generator for CPAP device 
US7853855B1 (en)  20050825  20101214  Marvell International Ltd.  High speed iterative decoder 
US8086945B1 (en)  20050901  20111227  Marvell International Ltd.  Tensor product codes containing an iterative code 
US7861131B1 (en)  20050901  20101228  Marvell International Ltd.  Tensor product codes containing an iterative code 
US8259872B2 (en)  20051019  20120904  Marvell International Ltd.  Nonlinear postprocessors for channels with signaldependent noise 
US20100322353A1 (en) *  20051019  20101223  Zining Wu  Nonlinear postprocessors for channels with signaldependent noise 
US7801253B1 (en)  20051019  20100921  Marvell International Ltd.  Nonlinear postprocessors for channels with signaldependent noise 
US20070286312A1 (en) *  20060601  20071213  Nokia Corporation  Apparatus, method and computer program product providing iterative recursive least squares (RLS) algorithm for coded MIMO systems 
US20080212721A1 (en) *  20061030  20080904  Colorado State University Research Foundation  Low complexity maximum likelihood sequence detection system and methods 
US8275075B2 (en) *  20061030  20120925  Colorado State University Research Foundation  Low complexity maximum likelihood sequence detection system and methods 
US8094707B1 (en)  20070321  20120110  Arrowhead Center, Inc.  Listbased detection in fading channels with long intersymbol interference 
US20080280566A1 (en) *  20070507  20081113  KuangYu Yen  Wireless communication apparatus with builtin channel emulator/noise generator 
US8789525B2 (en)  20070607  20140729  Resmed Limited  Tub for humidifier 
US8745468B1 (en) *  20080121  20140603  Marvel International Ltd.  Iterative decoding systems using noisebiasing 
US9256492B1 (en)  20080121  20160209  Marvell International Ltd.  Iterative decoding systems using noisebiasing 
US8321769B1 (en)  20081106  20121127  Marvell International Ltd.  Multiparity tensorproduct code for data channel 
US8635515B1 (en)  20081106  20140121  Marvell International Ltd.  Multiparity tensorproduct code for data channel 
US8711661B2 (en)  20120120  20140429  Carnegie Mellon University  Bidirectional pattern dependent noise prediction 
US8713495B2 (en)  20120816  20140429  Lsi Corporation  Accelerator for a readchannel design and simulation tool 
Similar Documents
Publication  Publication Date  Title 

US7180693B2 (en)  Method and apparatus for maximum likelihood detection of data employing interpolation with compensation of signal asymmetry  
US8589773B1 (en)  Disk drive margining read channel by biasing loglikelihood ratios of an iterative decoder  
US6889154B2 (en)  Method and apparatus for calibrating datadependent noise prediction  
US7012772B1 (en)  Sampled amplitude read channel employing an adaptive nonlinear correction circuit for correcting nonlinear distortions in a read signal  
US8015477B2 (en)  Method and apparatus for a datadependent noise predictive viterbi  
US7729071B2 (en)  Readback apparatus and readback method  
EP1267345B1 (en)  Information recording and reproducing method and signal decoding circuit  
Moon et al.  Performance comparison of detection methods in magnetic recording  
EP0649139B1 (en)  Apparatus for reproducing information  
US7779325B2 (en)  Data detection and decoding system and method  
US8760782B1 (en)  Methods and devices for joint twodimensional selfiterating equalization and detection  
Moon  Discretetime modeling of transition noise dominant channels and study of detection performance  
US6249398B1 (en)  Class of fixed partial response targets in a PRML sampled data detection channel  
US6912099B2 (en)  Maximum likelihood detection of asynchronous servo data employing interpolation  
Kavcic et al.  The Viterbi algorithm and Markov noise memory  
US20060280093A1 (en)  Information recording and reproducing apparatus, evaluation method, and information recording and reproducing medium  
US6081562A (en)  Implementing reducedstate viterbi detectors  
US5619539A (en)  Data detection methods and apparatus for a direct access storage device  
US7286313B2 (en)  Correcting radial incoherence in servo track sensing  
US5490091A (en)  Histograms of processed noise samples for measuring error rate of a PRML data detection channel  
US7917836B1 (en)  Detection in the presence of media noise  
JP4652310B2 (en)  Decoder and reproducing apparatus  
US7564933B2 (en)  Method and system for near optimal iterative detection of the 2dimensional ISI channel  
US20050068650A1 (en)  Detection of recorded data employing interpolation with gain compensation  
US6643814B1 (en)  Maximum transition run encoding and decoding systems 
Legal Events
Date  Code  Title  Description 

AS  Assignment 
Owner name: CARNEGIE MELLON UNIVERSITY, PENNSYLVANIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:KAVCIC, ALEKSANDAR;MOURA, JOSE M.F.;REEL/FRAME:010016/0556 Effective date: 19990428 

STCF  Information on status: patent grant 
Free format text: PATENTED CASE 

CC  Certificate of correction  
FPAY  Fee payment 
Year of fee payment: 4 

FPAY  Fee payment 
Year of fee payment: 8 

FPAY  Fee payment 
Year of fee payment: 12 

RR  Request for reexamination filed 
Effective date: 20140121 

B1  Reexamination certificate first reexamination 
Free format text: THE PATENTABILITY OF CLAIMS 1 AND 2 IS CONFIRMED.CLAIMS 327 WERE NOT REEXAMINED. 

AS  Assignment 
Owner name: NATIONAL SCIENCE FOUNDATION, VIRGINIA Free format text: CONFIRMATORY LICENSE;ASSIGNOR:CARNEGIEMELLON UNIVERSITY;REEL/FRAME:037910/0896 Effective date: 20160224 