for the magnetic recording channel has recently been reported in [10]â[13]. In particular, application of turbo codes and com- bined turbo decoding and turbo ...
IEEE TRANSACTIONS ON MAGNETICS, VOL. 37, NO. 2, MARCH 2001
721
Reduced-Complexity Decoding of Low Density Parity Check Codes for Generalized Partial Response Channels Thomas Mittelholzer, Ajay Dholakia, and Evangelos Eleftheriou
Abstract—The performance of low-density parity-check (LDPC) codes serially concatenated with generalized partial response channels is investigated. Various soft-input/soft-output detection schemes suitable for use in iterative detection/decoding systems are described. A low-complexity near-optimal detection algorithm that incorporates soft-input reliability information and generates soft-output reliability information is presented. A reduced-complexity algorithm for decoding LDPC codes is described. Simulation results on the performance of high-rate LDPC codes on generalized PR channels at various recording densities are presented. These results indicate that a judicious selection of the inner detector target polynomial and the choice of a good LDPC code are important in optimizing the performance of the overall recording system. Furthermore, the results also show that iterative detection/decoding schemes using LDPC codes can outperform hard-decision decoding of Reed–Solomon codes by over 2 dB at a sector error rate of 10 3 . Index Terms—Dual-max algorithm, iterative detection/decoding, LDPC codes, NPML, sum–product decoding.
I. INTRODUCTION
A
T HIGH recording densities, generalized partial-response (PR) monic polynomials with noninteger coefficients match the recording channel more accurately than the conventional PR class-4 (PR4) channel shaping [1], leading to less noise enhancement at the equalizer output. In particular, polynomials of the form and , is a noise where whitening filter, render the total noise at the input of the detector approximately white, provided the equalizer and the predictor , are sufficiently long. This class of polynomials filter, is significant in practice, and when combined with sequence detection, gives rise to noise-predictive maximum likelihood (NPML) systems [2], [3]. Specifically, sixteen-state NPML detectors and simple single or dual parity coding schemes combined with traditional run-length-limited (RLL) codes have become state-of-the-art in commercial hard-disk drives. Efficient decoding of these simple coding schemes is achieved by utilizing some form of reliability or soft information [4], [5]. Turbo codes [6] and low-density parity-check (LDPC) codes [7], [8] are recent breakthroughs in coding theory that promise to push the areal density of the magnetic recording channel to its Manuscript received October 24, 2000. The authors are with IBM Research, Zurich Research Laboratory, Säumerstrasse 4, CH-8803 Rüschlikon, Switzerland. Publisher Item Identifier S 0018-9464(01)02384-6.
limits. In particular, LDPC codes have been shown to approach the capacity of the memoryless additive white Gaussian noise (AWGN) channel within 0.1 dB [9]. Iterative detection and decoding algorithms for turbo, turbo-like, and LDPC codes are being investigated for use in many diverse communication and data storage systems where intersymbol interference (ISI) and noise are the limiting impairments. Considerable work in investigating turbo decoding schemes for the magnetic recording channel has recently been reported in [10]–[13]. In particular, application of turbo codes and combined turbo decoding and turbo equalization [14] to magnetic recording is presented in [11]. A simplified serial turbo decoder structure, in which the inner code is the precoded PR4 channel and the outer code is a single convolutional code, has been considered in [13]. Finally, a reverse-order concatenation scheme that involves maximum-transition-run (MTR) and LDPC codes has been studied in [12]. In this paper, we investigate serial concatenation of inner generalized PR channels and outer LDPC codes in detail (see also [15]). We consider LDPC codes of various block lengths and rates and investigate reduced-complexity detection and decoding algorithms. Simulations results on the performance of high-rate LDPC codes on a generalized PR channel with iterative NPML detection and decoding are presented. Finally, the potential gains of LDPC codes over the traditional hard-decision decoded Reed–Solomon (RS) codes are discussed. Note that although it is often necessary to incorporate RLL constraints in practice, we do not include them in our study in order to focus on the performance gains achieveable solely by using LDPC outer codes. The paper is organized as follows. Section II outlines the iterative detection/decoding system model used in this paper. Section III describes various soft-input/soft-output detection schemes that can be employed in such a system, including a modified dual-max detection algorithm, which incorporates a priori reliability information as soft input and delivers near-optimal performance. Section IV is devoted to LDPC codes and iterative decoding in which a reduced-complexity decoding algorithm is described. Section V presents the simulations results, and conclusions are given in Section VI.
II. SYSTEM CONFIGURATION The basic recording system with an LDPC encoder and a serially concatenated detector/decoder configuration is shown
0018–9464/01$10.00 © 2001 IEEE
722
IEEE TRANSACTIONS ON MAGNETICS, VOL. 37, NO. 2, MARCH 2001
III. SOFT-INPUT/SOFT-OUTPUT DETECTORS
Fig. 1. System model for LDPC encoder, channel, detector, and LDPC decoder.
in Fig. 1. A block of binary data is enLDPC encoder into a binary codeword coded by a rateand then mapped to antipodal encoded data , , which are written symbols . Adopting a linear model for the on the disk at a rate of write/read process on a magnetic disk and assuming the presence of thermal noise only, the magnetic recording channel is modeled by a Lorentzian channel model with AWGN. The data signal is read back via a low-pass filter (LPF) and shaped such that the overall discrete-time transfer function, including the head/disk-medium characteristics, the analog LPF, and the sam. The pler, closely matches the generalized PR polynomial are then passed to the deshaped channel-output samples tector. The detector produces soft information about the encoded by using the channel constraints. By taking the data symbols code constraints into account, the decoder computes an estimate together with (soft) extrinsic information for the encoded data symbols . The extrinsic information may be fed back directly to the decoder or passed to the detector, depending on the detection/decoding schedule that has been adopted. The channel detector can be any soft-input soft-output detector based on the BCJR algorithm [16], on the soft-output Viterbi algorithm (SOVA) [17] (see also [18], [19]), or on any simplified version of either of these two algorithms. In our iterative detection and decoding system, the detector is based on a modified dual-max algorithm [20] and the LDPC code is decoded using a reduced-complexity version [21] of the sum–product algorithm (SPA) [7], [22], [8]. The dual-max algorithm offers near-optimum performance at significantly reduced implementation complexity. It provides a path for a natural evolution from existing hard-decision or soft-output-only detectors that are being used in practice. Besides the latency due to the additional backward processing step, the dual-max algorithm has exactly the same structure as the Viterbi algorithm. This feature is particularly attractive in that many parts of the existing hardware design can be reused in a new design. Similarly, our reduced-complexity algorithm for decoding LDPC codes is also very attractive from an implementation perspective and delivers performance very close to that of the full SPA.
Traditional detectors for signals impaired by ISI and noise employ maximum likelihood sequence detection (MLSD) based on the Viterbi Algorithm (VA) [23]. In magnetic storage systems the recording channel is shaped to a specific polynomial or target response such as (extended partial-response maximum likelihood, EPRML) or (NPML) and the data detector operates on the 8-state or 16-state trellis, respectively. Although these detectors process soft information from the channel, they only provide hard decisions at the output for further processing by a decoder to perform error correction. It is known that using soft decisions in the form of a posteriori probabilities (APP) or log-likelihood ratios (LLR) at the detector output can provide additional performance gain when utilized by a soft-input decoder. Furthermore, if the decoder also has the capability to provide soft decisions, then the detector and decoder operating in an iterative fashion can offer substantial performance improvement. Clearly, the detector in such a system must be able to accept additional soft inputs in the form of APP or LLR. In this section, we describe how the various detector algorithms can be modified to incorporate a priori reliability information as soft inputs. A. Soft-Input/Soft-Output Viterbi Detector Let the memory of the ISI channel be represented by a finite denoted by state machine (FSM), with the state at time and at time by . Then, the VA is described by the following recursive equation (1) represents the metrics associated with the state where at time , and denotes the branch metric associated with the transition from state to state at time . The soft a priori reliability information can be included in the branch metric computation, and the resulting algorithm is known as APRI-VA [24]. For a generalized partial response (PR) shaped in the presence of noise, i.e., signal
(2) is the encoded data symbol at time , is the generalized PR polynomial and is a white Gaussian noise sample at the input of the detector with variance , the branch metric is given by
where
(3) Note that in the case of additive noise with another non-Gaussian distribution the metric in (3) can be easily and the a reformulated. The Viterbi detector operating on of the independent recorded symbols priori probability
MITTELHOLZER et al.: REDUCED-COMPLEXITY DECODING OF LDPC CODES
finds the sequence metric:
that minimizes the following
723
C. Dual-Max Detector for Generalized PR Channels A sub-optimal soft-output detection approach known as the dual-max algorithm [20] can be obtained by using the standard approximation (10)
(4) Soft-output capability can be incorporated using the SOVA or improved SOVA principles [17]–[19].
in (9). The resulting computation is
B. APP Detector for Generalized PR Channels The soft-output APP detector based on the BCJR algorithm operating on the ISI trellis computes the symbol APP’s , where is the sequence of channel with the maximum APP values output samples. The symbol is selected as the data decision at each time instance . As described in [25], the key idea is to partition the joint probability
(11) is an approximation of the a posteriori LLR and and are the forward and backward state metrics, respectively. The recursive algorithm computes in a forward pass
where
(12) and in a backward pass (5) and denote the portions of the sequence where received before and after the th channel output sample , is obtained by respectively. Then, the APP of the symbol for which is , i.e., summing over all state pairs
(6)
and are the forward and backward state where metrics, respectively, computed recursively as follows:
(13) is given by (3) and where, again, the branch metric incorporates the a priori information as an additional soft input. For a terminated trellis, the initial conditions for the forward and , , and for the pass are and , , backward pass are where is the length of the terminated trellis. In certain cases such as the nonterminated ISI trellis, the initial state metrics , where is the for the backward pass are is the length of the block memory of the ISI channel, and of channel output samples processed together by the dual-max detector. IV. ITERATIVE DECODING OF LDPC CODES
(7)
(8) in (5)–(8) is given by (3) and incorThe branch metric porates the a priori information as an additional soft input. It is often convenient to work with a posteriori LLR for the th symbol, given by
High-rate LDPC codes appear to have certain advantages over convolutional or turbo codes when used as outer codes. For instance, LDPC codes appear not to suffer from error floors . Furthermore, the sparseness of the at bit error rates of parity-check matrices of LDPC codes results in decoding algorithms that are competitive in terms of complexity compared to serially concatenated systems with convolutional outer codes. Finally, no interleaver is needed between the LDPC encoder and the channel, because interleaving can be implicitly incorporated into the LDPC code. A. Construction of LDPC Codes
(9)
A binary low-density parity-check (LDPC) code [7], [8] is a linear block code described by a sparse parity-check matrix , has a low density of 1’s. The class of LDPC matrices i.e., must satisfy the following regularity constraint: Each column contains a small fixed number of 1’s and each row contains a small fixed number of 1’s. Equivalently, an LDPC matrix with rows and columns can be described by a bipartite graph symbol nodes, which with two kinds of nodes: There are
724
IEEE TRANSACTIONS ON MAGNETICS, VOL. 37, NO. 2, MARCH 2001
correspond to each bit in the codeword, and check nodes, which correspond to the parity checks represented by the rows of the matrix. The connectivity of the graph is such that the parityis the incidence matrix of the bipartite graph check matrix [22]. The regularity constraint implies that each symbol node is connected to check nodes and each check node is connected to symbol nodes. Codes defined by graphs can be decoded by the sum–product algorithm (SPA) [7], [26]. However, the SPA performs well and essentially achieves the performance of a maximum-likelihood decoder only for graphs without short cycles and, therefore, one requires that the graph has no 4-cycles [27]. This 4-cycle-free condition translates into the condition that the corresponding parity-check matrix has no two rows that have overlapping 1’s in more than one position. High-rate 4-cycle free LDPC matrices only exist if their rate satisfies a combinatorial bound [27], viz., of rows, the block length is upperfor a given number bounded by (14) Binary high-rate LDPC codes without 4-cycles can be constructed by randomly generating columns, which contain exactly 1’s [27]. The parity-check matrix is built up iteratively by adding a new column if this column does not form a 4-cycle with the previously generated columns of . In general, this method does not provide matrices with a fixed row weight . An alternative method was proposed by Gallager [7], [27], matrix is built from sub-matrices of size where the , which are themselves LDPC matrices with column must be a multiple weight 1 and row weight . In particular, of . These random constructions provide codes with reasonable but it is difficult to find codes distance properties for for which the bound (14) is tight [27]. An alternative deterministic construction of LDPC matrices has been proposed that is based on finite geometries [28]. With this deterministic construction, one can achieve the bound (14). Furthermore, these codes hold the promise of an analytic approach to the distance the minimum distance and properties of the code; e.g., for its multiplicity have been determined [29]. Owing to the ease of construction of these codes we have used the deterministically constructed codes. B. Reduced-Complexity Decoding of LDPC Codes The graphical representation of LDPC codes is useful in describing iterative decoding based on the SPA. The SPA operates by passing messages between symbol nodes and check nodes according to a suitable schedule. The messages themselves can be APP’s or LLR’s. A convenient and commonly used message passing schedule is one in which the update computations of all the nodes of the same kind (say, check nodes) are carried out first and the resulting messages are sent to the neighboring nodes. Next, the update computations of all the nodes of the other kind (say, symbol nodes) are carried out. The resulting messages are then sent to the neighboring nodes, completing one round or iteration of message passing. At this point the next iteration begins,
and the SPA proceeds in this manner until a specified stopping criterion is met. In the serially concatenated detector/decoding scheme shown in Fig. 1, the detector passes soft-information in the form of extrinsic information to the LDPC decoder. These extrinsic information terms about code bit are determined of the detector about from the a priori knowledge and from the APP’s (6) or, equivalently, from the LLR’s (9) or approximated LLR’s (11) that are produced by the channel detector at each iteration step, i.e., (15) or 1. where The SPA is itself an iterative algorithm using these extrinsic informations as inputs. In the initial step of the SPA, each , and symbol node generates messages passes them to all check nodes that are connected to symbol node . The core of the SPA consists of two local update rules for check and symbol nodes [7], [8]. The connectivity of the graph can be described as follows. Check node is connected , , that are checked by to all symbol nodes the th parity check (16) The update of the messages sent from check node , , is given by symbol nodes
to all
(17)
where node by
and the product is taken over all symbol nodes . The update of the messages sent from symbol to the check nodes , which check symbol , is given
(18) that where the product is taken over all check nodes are connected to symbol node , and the normalizing constants are chosen such that . In the last decoding step, the SPA computes the “pseudo-posterior proba, , given by bilities”
(19) is chosen such that . where In general, the check node update (17) is much more complex than the symbol node update (18). An efficient way to peris to apply the BCJR algoform the update at check node trellis sections for the single rithm to a two-state trellis with determined by (16). In parity check equation the probability domain, the branch metric for the th component
MITTELHOLZER et al.: REDUCED-COMPLEXITY DECODING OF LDPC CODES
725
of the codeword is given by . The of state at time in the forward recursion metrics of the BCJR algorithm are updated by
(20) , . For a fixed with initial conditions is a probability distribution, viz., time , the state metric is the probability of reaching state in the forward recursion, when each branch is chosen according to the branch metric . Similar update rules hold for the state (probability) of the backward recursion, which again have an metrics interpretation as probabilities. The combining pass of the BCJR algorithm yields the messages that are sent from check node to symbol node : Fig.
(21) One can reduce the complexity of the BCJR algorithm by working in the LLR domain, i.e., by making use of
(22) and Note that the LLR’s can be viewed as the forward and backward difference-metrics in the log domain, respectively. Using (10), the update rules (20) can be rewritten [21] as sgn sgn
if otherwise,
(23)
where sgn denotes the sign of the argument. One can show in a similar manner that the backward recursion and the combining pass are given by sgn sgn
if otherwise.
(24)
sgn sgn
if otherwise.
(25)
and
When replacing these tight approximations by equalities, one obtains an efficient difference-metric based dual-max algorithm for the two-state trellis. Finally, it is possible to apply a correction term to each update computation in the forward and backward passes, which results in essentially no loss in performance compared to the full SPA [21]. V. SIMULATION RESULTS The error rate performance of the magnetic recording system employing LDPC codes serially concatenated with generalized PR channels has been studied by computer simulations. Except for the performance results corresponding to the EPR4 system,
N
2. Comparison
of
iterative
detection/decoding
= 508 LDPC code at fixed SNR = 14 dB (
pw
=T
schedule
= 2:995).
for
the target polynomial is , which gives rise to a 16-state trellis. The read-back signal is first filtered by a 5th-order low-pass Butterworth filter and is then fed to a very long zero-forcing PR4 equalizer (with 200 taps). The coand are obtained by applying minimum-meanefficients squared error prediction to the noise component of the signal at the output of the PR4 equalizer. The signal-to-noise ratio (SNR) is defined as the ratio of the energy of the encoded data symbol and the variance of the AWGN at the input of the low-pass filter. A. Selection of Iterative Detection/Decoding Schedule Fig. 2 shows the performance as a function of the total number of LDPC decoder iterations for various message-passing schedules. The detector uses the modified dual-max algorithm and the decoder uses the SPA. The SNR is fixed at 14 dB and . Similar families of curves are obtained for different values of the SNR. The message-passing schedule starts by executing forward, backward, and combining passes once in the dual-max detector, followed by one or more rounds of symbol and check updates in the LDPC decoder. This constitutes one “outer” iteration. Five different message-passing schedules are compared in Fig. 2. Curves 1 through 4 correspond to schedules in which an outer iteration consists of one detector iteration followed by a fixed number 1, 4, 16, and 64 of decoder iterations, respectively, and one or more outer iterations are performed. Curve 5 corresponds to the schedule with only one outer iteration and a varying number of LDPC decoder rounds. Note that the abscissa in Fig. 2 represents the total number of LDPC decoder iterations, independent of the schedule. Hence, for example, 32 total LDPC decoder iterations can be carried out by performing 8 outer iterations using the schedule corresponding to curve 2, 2 outer iterations using the schedule corresponding to curve 3, or 32 LDPC decoder iterations using the schedule corresponding to curve 5. The results show that for a given total number of LDPC decoder iterations, the best schedule is the one in which only one
726
Fig. 3. Comparison of BCJR and dual-max detectors for code (pw =T = 2:6 and 2:995).
IEEE TRANSACTIONS ON MAGNETICS, VOL. 37, NO. 2, MARCH 2001
N
=
508 LDPC
Fig. 4. Comparison of decoders for 2:995).
N
= 508 LDPC code (pw
=T
=
LDPC decoder iteration is carried out in each outer iteration. It appears desirable to pass the results of each round of symbol and check updates in the sum–product algorithm to the detector, which can combine the updated a priori LLR and the channel outputs to generate more reliable soft symbol information for the next outer iteration. The message-passing schedule employed in obtaining the rest of the simulation results reported below performs only one LDPC decoder round in each outer iteration and a maximum of 30 such outer iterations are carried out. B. Reduced-Complexity Detection Algorithm We have seen above that using the dual-max detector leads to a considerable reduction in computational complexity. It is natural to ask whether this simplification incurs any performance penalty. Fig. 3 compares the performance of 16-state BCJR and dual-max detectors at two different user densities. The LDPC code is used with a decoder based on SPA. The iteration schedule alternates between the detector and decoder after each round and the maximum number of outer iterations is limited to 30. It can be seen that the loss of performance is approximately 0.05 dB or less. Similar behavior was also observed with LDPC code. the C. Reduced-Complexity Decoding Algorithm Fig. 4 shows the performance comparison of various decoding algorithms for the LDPC codes. The 16-state dual-max LDPC code at detector is used along with the . Curve 1 corresponds to the SPA, whereas curve 2 depicts the simplified difference-metric algorithm. A loss of around 0.1 dB is incurred. Finally, curve 3 shows the performance of the difference-metric algorithm including the correction term [21], which is seen to be almost identical to the performance of the full SPA. Thus, the reduced-complexity decoding algorithm described in the previous section is a good choice for practical implementations.
Fig. 5. Performance comparison of LDPC codes on 16-state NPML and EPR4 systems (pw =T = 2:6).
D. BER Performance Figs. 5 and 6 show bit error probabilities of a simulated iterative dual-max detector and LDPC decoder for a Lorentzian and , channel with respectively. In Fig. 5, curve 1 indicates the performance of an 8-state LDPC code. EPR dual-max detector with the Curve 3 shows the performance of the 16-state noisepredictive dual-max detector in conjunction with the same LDPC code. Curves 2 and 4 depict the performance of the 8-state EPR and 16-state NPML dual-max detectors LDPC code, respectively. In all cases, the user with is kept constant at 2.6 and the SNR has not been , adjusted for rate loss. At a symbol error probability of the system with 16-state NPML detector gains 1.0 to 1.5 dB over the system employing 8-state EPR detector. In Fig. 6, curve 1 indicates the performance of an uncoded system using a 16-state NPML detector. Curve 2 shows the
MITTELHOLZER et al.: REDUCED-COMPLEXITY DECODING OF LDPC CODES
727
assumed 3-way byte-level interleaving and an overall rate of . Recall that the LDPC code used in the simulations has about the same rate as the RS code, viz., 0.936. , iteratively The results indicate that at a sector error rate of decodable LDPC codes offer more than 2 dB gain compared to the traditional RS-encoded hard-disk drive systems. VI. CONCLUSIONS
Fig. 6. Performance comparison of LDPC codes and uncoded NPML system 2:995). (pw =T
=
We have investigated the performance of LDPC codes with iterative detection and decoding for generalized partial response channels. The low-complexity dual-max algorithm modified to incorporate soft-input reliability information performs recursive computations similar to the VA and hence is extremely important from an implementation point of view. Moreover, the reduced-complexity difference-metric based decoding algorithm described in this paper is also a good candidate for practical, high-speed decoding of LDPC codes. The choice of the inner detector target polynomial is important in obtaining the full benefit of the outer LDPC codes for the overall recording system. Performance results have shown that iterative detection/decoding schemes using LDPC codes can outperform hard-decision decoding of Reed–Solomon . We believe codes by over 2 dB at a sector error rate of that iterative detection/decoding schemes, and in general soft-input/soft-output algorithms, can have a tremendous impact on increasing the areal density of future hard-disk drives. REFERENCES
Fig. 7. Performance comparison of LDPC codes (pw code (pw =T = 3:17).
=T
= 3:2) and RS
performance of the 16-state noise-predictive dual-max detector , ) in conjunction with the rate-0.8839 ( LDPC code. Curve 3 shows the performance of the 16-state noise-predictive dual-max detector in conjunction with the rate, ) LDPC code. In all cases, the 0.936 ( is kept constant at 2.995 and the SNR has not been , adjusted for rate loss. At a symbol error probability of LDPC code delivers nearly 4 dB gain over the the reference uncoded NPML system. Moreover, compared to the capacity bound [30] shown in curve 4, the performance of this LDPC code lags by approximately 1.5 dB. E. SER Performance Fig. 7 compares the sector error rate performance of LDPC codes and Reed–Solomon codes with hard-decision decoding. In hard-disk drive systems, a sector corresponds to 516 information bytes and is typically encoded into three RS codewords, each with 10 bytes of redundancy. In our simulations, we have
[1] R. D. Cideciyan, F. Dolivo, R. Hermann, W. Hirt, and W. Schott, “A PRML system for digital magnetic recording,” IEEE J. Sel. Areas Commun., vol. 10, pp. 38–56, Jan. 1992. [2] P. R. Chevillat, E. Eleftheriou, and D. Maiwald, “Noise-predictive partial-response equalizers and applications,” in Proc. IEEE ICC ’92, Chicago, IL, June 1992, pp. 942–947. [3] E. Eleftheriou and W. Hirt, “Noise predictive maximum-likelihood (NPML) detection for the magnetic recording channel,” in Proc. IEEE ICC ’96, June 1996, pp. 556–560. [4] R. D. Cideciyan, J. D. Coker, E. Eleftheriou, and R. L. Galbraith, “NPML detection combined with parity-based post-processing,” IEEE Trans. Magn., pt. 1, vol. 37, no. 1. [5] T. Conway, “A new target response with parity coding for high density magnetic recording channels,” IEEE Trans. Magn., vol. 34, no. 4, pp. 2382–2486, July 1998. [6] C. Berrou, A. Glavieux, and P. Thitimajshima, “Near Shannon limit error-correcting coding and decoding: Turbo-codes,” in Proc. IEEE ICC’93, Geneva, Switzerland, May 1993, pp. 1064–1070. [7] R. G. Gallager, “Low-density parity-check code,” IRE Trans. Inform. Theory, vol. IT-8, pp. 21–28, Jan. 1962. [8] D. J. C. MacKay, “Good error-correcting codes based on very sparse matrices,” IEEE Trans. Inform. Theory, vol. 45, pp. 399–431, Mar. 1999. [9] T. J. Richardson, A. Shokrollahi, and R. Urbanke, “Design of provably good low-density parity-check codes,” IEEE Trans. Inform. Theory, Apr. 1999, submitted for publication. [10] W. E. Ryan, “Performance of high rate turbo codes on a PR4-equalized magnetic recording channel,” in Proc. IEEE ICC’98, Atlanta, GA, June 1998, pp. 947–951. [11] W. E. Ryan, L. L. McPheters, and S. W. McLaughlin, “Combined turbo coding and turbo equalization for PR4-equalized Lorentzian channels,” in Proc. Conf. Info. Sci. Sys., Princeton, NJ, Mar. 1998, pp. 489–493. [12] H. Song, R. M. Todd, and J. R. Cruz, “Low density parity check codes for magnetic recording channels,” in Proc. IEEE Intermag 2000, Toronto, Canada, Apr. 2000. [13] T. Souvignier, A. Friedmann, M. Oberg, P. H. Siegel, R. E. Swanson, and J. K. Wolf, “Turbo decoding for PR4: parallel versus serial concatenation,” in Proc. IEEE ICC’99, Vancouver, Canada, June 1999, pp. 1638–1642.
728
[14] C. Douillard, M. Jezequel, and C. Berrou, “Iterative correction of intersymbol interference: Turbo-equalization,” European Trans. Telecommun., pp. 507–511, Sept./Oct. 1995. [15] A. Dholakia, E. Eleftheriou, and T. Mittelholzer, “Iterative detection/decoding techniques for the magnetic recording channel,” in Dig. 11th Annu. Magnetic Recording Conf. (TMRC 2000), Santa Clara, CA, Aug. 2000, p. D6. [16] L. R. Bahl, J. Cocke, F. Jelinek, and J. Raviv, “Optimal decoding of linear codes for minimizing symbol error rate,” IEEE Trans. Inform. Theory, vol. IT-20, pp. 284–287, Mar. 1974. [17] J. Hagenauer and P. Hoeher, “A Viterbi algorithm with soft-decision outputs and its applications,” in Proc. IEEE Globecom’89, 1989, pp. 1680–1686. [18] M. P. C. Fossorier, F. Burkert, S. Lin, and J. Hagenauer, “On the equivalence between SOVA and Max-Log-MAP decodings,” IEEE Comm. Letters, vol. 2, no. 5, pp. 137–139, May 1998. [19] L. Lin and R. S. Cheng, “Improvements in SOVA-based decoding for turbo codes,” in Proc. IEEE ICC’97, 1997, pp. 1473–1478. [20] A. J. Viterbi, “An intuitive justification and a simplified implementation of the MAP decoder for convolutional codes,” IEEE J. Sel. Areas Commun., vol. 16, pp. 260–264, Feb. 1998. [21] E. Eleftheriou, T. Mittelholzer, and A. Dholakia, “A reduced-complexity decoding algorithm for low-density parity-check codes,” Electron. Lett., Oct. 2000, submitted for publication. [22] R. M. Tanner, “A recursive approach to low complexity codes,” IEEE Trans. Inform. Theory, vol. 27, pp. 533–548, Sept. 1981.
IEEE TRANSACTIONS ON MAGNETICS, VOL. 37, NO. 2, MARCH 2001
[23] G. D. Forney Jr., “Maximum likelihood sequence detection in the presence of intersymbol interference,” IEEE Trans. Inform. Theory, vol. 18, pp. 363–378, May 1972. [24] J. Hagenauer, P. Robertson, and L. Papke, “Iterative (‘Turbo’) decoding of systematic convolutional codes with MAP and SOVA algorithms,” in Proc. ITG Conf., Oct. 1994, pp. 41–48. [25] J. Hagenauer, E. Offer, and L. Papke, “Iterative decoding of binary block and convolutional codes,” IEEE Trans. Inform. Theory, vol. 42, pp. 429–445, Mar. 1996. [26] G. D. Forney Jr., “The forward-backward algorithm,” in Proc. 1996 Allerton Conf., Allerton, IL, Sept. 1996. [27] D. J. C. MacKay and M. C. Davey, “Evaluation of Gallager codes for short block length and high rate applications,” in Codes, Systems, and Graphical Models, B. Marcus and J. Rosenthal, Eds. Heidelberg: Springer, 2000, vol. 123, pp. 113–130. [28] T. Mittelholzer, “Construction of Steiner systems and high-rate LDPC codes,” IEEE Trans. Inform. Theory, June 2000, submitted for publication. [29] D. Hösli, E. Svensson, and D. Arnold, “High-rate low-density paritycheck codes: Construction and application,” in Proc. 2nd Int. Symp. Turbo Codes, Brest, France, Sept. 2000, pp. 447–450. [30] A. Dholakia, E. Eleftheriou, and T. Mittelholzer, “On iterative decoding for magnetic recording channels,” in Proc. 2nd Int. Symp. Turbo Codes, Brest, France, Sept. 2000, pp. 219–226.