(PDF) Joint Decoding of LDPC Codes and Finite-State Channels Via Linear-Programming - DOKUMEN.TIPS (2024)

IEEE JOURNAL OF SELECTED TOPICS IN SIGNAL PROCESSING, VOL. 5, NO. 8, DECEMBER 2011 1563

Joint Decoding of LDPC Codes and Finite-StateChannels Via Linear-Programming

Byung-Hak Kim, Student Member, IEEE, and Henry D. Pfister, Senior Member, IEEE

Abstract—This paper considers the joint-decoding problem forfinite-state channels (FSCs) and low-density parity-check (LDPC)codes. In the first part, the linear-programming (LP) decoder forbinary linear codes is extended to perform joint-decoding of bi-nary-input FSCs. In particular, we provide a rigorous definitionof LP joint-decoding pseudo-codewords (JD-PCWs) that enablesevaluation of the pairwise error probability between codewordsand JD-PCWs in AWGN. This leads naturally to a provable upperbound on decoder failure probability. If the channel is a finite-stateintersymbol interference channel, then the joint LP decoder alsohas the maximum-likelihood (ML) certificate property and all in-teger-valued solutions are codewords. In this case, the performanceloss relative to ML decoding can be explained completely by frac-tional-valued JD-PCWs. After deriving these results, we discov-ered some elements were equivalent to earlier work by Flanaganon linear-programming receivers. In the second part, we developan efficient iterative solver for the joint LP decoder discussed inthe first part. In particular, we extend the approach of iterativeapproximate LP decoding, proposed by Vontobel and Koetter andanalyzed by Burshtein, to this problem. By taking advantage ofthe dual-domain structure of the joint-decoding LP, we obtain aconvergent iterative algorithm for joint LP decoding whose struc-ture is similar to BCJR-based turbo equalization (TE). The resultis a joint iterative decoder whose per-iteration complexity is sim-ilar to that of TE but whose performance is similar to that of jointLP decoding. The main advantage of this decoder is that it ap-pears to provide the predictability and superior performance ofjoint LP decoding with the computational complexity of TE. Oneexpected application is coding for magnetic storage where the re-quired block-error rate is extremely low and system performanceis difficult to verify by simulation.

Index Terms—BCJR algorithm, finite-state channels, joint-de-coding, low-density parity-check (LDPC) codes, linear-program-ming (LP) decoding, turbo equalization.

I. INTRODUCTION

A. Motivation and Problem Statement

I TERATIVE decoding of error-correcting codes, while in-troduced by Gallager in his 1960 Ph.D. thesis, was largely

forgotten until the 1993 discovery of turbo codes by Berrou et al.

Manuscript received January 26, 2011; revised May 15, 2011, July 20, 2011;accepted July 29, 2011. Date of publication August 22, 2011; date of currentversion November 18, 2011. This work was supported by the National ScienceFoundation under Grant 0747470. The material in this paper was presentedin part at the IEEE International Symposium on Information Theory (ISIT),Austin, TX, June 2010 and the IEEE International Conference on Communi-cations (ICC), Kyoto, Japan, June 2011. The associate editor coordinating thereview of this manuscript and approving it for publication was Prof. RiccardoRaheli.

The authors are with the Department of Electrical and Computer Engineering,Texas A&M University, College Station, TX 77843 USA (e-mail: [emailprotected]; [emailprotected]).

Color versions of one or more of the figures in this paper are available onlineat http://ieeexplore.ieee.org.

Digital Object Identifier 10.1109/JSTSP.2011.2165525

Since then, message-passing iterative decoding has been a verypopular decoding algorithm in research and practice. In 1995,the turbo decoding of a finite-state channel (FSC) and a convolu-tional code (instead of two convolutional codes) was introducedby Douillard et al. as turbo equalization (TE) and this enabledthe joint-decoding of the channel and the code by iterating be-tween these two decoders [1]. Before this, one typically sepa-rated channel decoding (i.e., estimating the channel inputs fromthe channel outputs) from the decoding of the error-correctingcode (i.e., estimating the transmitted codeword from estimatesof the channel inputs) [2], [3]. This breakthrough received im-mediate interest from the magnetic recording community, andTE was applied to magnetic recording channels by a variety ofauthors (e.g., [4]–[7]). TE was later combined with turbo codesand also extended to low-density parity-check (LDPC) codes(and called joint iterative decoding) by constructing one largegraph representing the constraints of both the channel and thecode (e.g., [8] and [9]).

In the magnetic storage industry, error correction basedon Reed–Solomon codes with hard-decision decoding hasprevailed for the last 25 years. Recently, LDPC codes haveattracted a lot of attention and some hard-disk drives (HDDs)have started using iterative decoding (e.g., [10]–[12]). Despiteprogress in the area of reduced-complexity detection anddecoding algorithms, there has been some resistance to thedeployment of TE structures (with iterative detectors/decoders)in magnetic recording systems because of error floors and thedifficulty of accurately predicting performance at very low errorrates. Furthermore, some of the spectacular gains of iterativecoding schemes have been observed only in simulations withblock-error rates above . The challenge of predicting theonset of error floors and the performance at very low error rates,such as those that constitute the operating point of HDDs (thecurrent requirement of an overall block error rate of ,remains an open problem. The presence of error floors and thelack of analytical tools to predict performance at very low errorrates are current impediments to the application of iterativecoding schemes in magnetic recording systems.

In the last five years, linear programming (LP) decoding hasbeen a popular topic in coding theory and has given new in-sight into the analysis of iterative decoding algorithms and theirmodes of failure [13]–[15]. In particular, it has been observedthat LP decoding sometimes performs better than iterative (e.g.,sum-product) decoding in the error-floor region. We believe thisstems from the fact that the LP decoder always converges toa well-defined LP optimum point and either detects decodingfailure or outputs an ML codeword. For both decoders, frac-tional vectors, known as pseudo-codewords (PCWs), play animportant role in the performance characterization of these de-coders [14], [16]. This is in contrast to classical coding theory

1932-4553/$26.00 © 2011 IEEE

1564 IEEE JOURNAL OF SELECTED TOPICS IN SIGNAL PROCESSING, VOL. 5, NO. 8, DECEMBER 2011

where the performance of most decoding algorithms (e.g., max-imum-likelihood (ML) decoding) is completely characterizedby the set of codewords.

While TE-based joint iterative decoding provides goodperformance close to capacity, it typically has some troublereaching the low error rates required by magnetic recording andoptical communication. To combat this, we extend LP decodingto perform joint-decoding of a binary-input FSC and an outerLDPC code. During the review process of our conference paperon this topic [17], we discovered that this LP formulation ismathematically equivalent to Flanagan’s general formulation oflinear-programming receivers [18], [19]. Since our main focuswas different than Flanagan’s, our main results and extensionsdiffer somewhat from his.

Our main motivation is that critical storage applications (e.g.,HDDs) require block error rates that are too low to be easilyverifiable by simulation. For these applications, an efficientiterative solver for the joint-decoding LP would have favor-able properties: error floors predictable by pseudo-codewordanalysis and convergence based on a well-defined optimizationproblem. Therefore, we introduce a novel iterative solver forthe joint LP decoding problem whose per-iteration complexity(e.g., memory and time) is similar to that of TE but whoseperformance appears to be superior at high SNR [17], [20].

B. Notation

Throughout the paper we borrow notation from [14]. Letand be sets of indices for the

variable and parity-check nodes of a binary linear code. A vari-able node is connected to the set of neighboringparity-check nodes. Abusing notation, we also let be theneighboring variable nodes of a parity-check node whenit is clear from the context. For the trellis associated with a FSC,we let index the set of trellis edges associatedwith one trellis section, be the set of possible states, and bethe set of noiseless output symbols. For each edge1, ,in the length- trellis, the functions

, andmap this edge to its respective time index, initial

state, final state, input bit, and noiseless output symbol. Finally,the set of edges in the trellis section associated with time isdefined to be .

C. Background: LP Decoding and Finite-State Channels

In [13], [14], Feldman et al. introduced a linear-program-ming (LP) decoder for binary linear codes, and applied it specif-ically to both LDPC and turbo codes. It is based on solving anLP relaxation of an integer program that is equivalent to max-imum-likelihood (ML) decoding. For long codes and/or lowSNR, the performance of LP decoding appears to be slightlyinferior to belief-propagation decoding. Unlike the iterative de-coder, however, the LP decoder either detects a failure or outputsa codeword which is guaranteed to be the ML codeword.

Let be the length- binary linear code definedby a parity-check matrix and be a codeword.

1In this paper, � is used to denote a trellis edge while � denotes the universalconstant that satisfies �� � � �.

Let be the set whose elements are the sets of indices involvedin each parity check, or

Then, we can define the set of codewords to be

The codeword polytope is the convex hull of . This polytopecan be quite complicated to describe though, so instead one con-structs a simpler polytope using local constraints. Each parity-check defines a local constraint equivalent to the extremepoints of a polytope in .

Definition 1: The local codeword polytope associ-ated with a parity check is the convex hull of the bit sequencesthat satisfy the check. It is given explicitly by

We use the notation to denote the simpler polytopecorresponding to the intersection of local check constraints; theformal definition follows.

Definition 2: The relaxed polytope is the intersectionof the LCPs over all checks and

The LP decoder and its ML certificate property is character-ized by the following theorem.

Theorem 3 ([13]): Consider consecutive uses of a sym-metric channel . If a uniform random code-word is transmitted and is received, then theLP decoder outputs given by

which is the ML solution if is integral (i.e., ).From simple LP-based arguments, one can see that LP de-

coder may also output nonintegral solutions.Definition 4: An LP decoding pseudo-codeword of a code

defined by the parity-check matrix is any nonintegral vertexof the relaxed (fundamental) polytope .

We also define the finite-state channel, which can be seenas a model for communication systems with memory whereeach output depends only on the current input and the previouschannel state instead of the entire past.

Definition 5: A finite-state channel (FSC) defines a proba-bilistic mapping from a sequence of inputs to a sequence of out-puts. Each output depends only on the current input

and the previous channel state instead of theentire history of inputs and channel states. Mathematically, wedefine

KIM AND PFISTER: JOINT DECODING OF LDPC CODES AND FINITE-STATE CHANNELS VIA LINEAR-PROGRAMMING 1565

Fig. 1. State diagrams for noiseless dicode channel without (left) and with pre-coding (right). The edges are labeled by the input/output pair.

for all , and use the shorthand notationand

where the notation denotes the subvector .An important subclass of FSCs is the set of finite-state in-

tersymbol interference channels which includes all determin-istic finite-state mappings of the inputs corrupted by memory-less noise.

Definition 6: A finite-state intersymbol interference channel(FSISIC) is a FSC whose next state is a deterministic function

of the current state and input . Mathematically, thisimplies that

ifotherwise.

Though our derivations are general, we use the followingFSISIC examples throughout the paper to illustrate concepts andperform simulations.

Definition 7: The dicode channel (DIC) is a binary-inputFSISIC with an impulse response of and addi-tive Gaussian noise [21]. If the input bits are differentially en-coded prior to transmission, then the resulting channel is calledthe precoded dicode channel (pDIC) [21]. The state diagramsof these two channels are shown in Fig. 1. For the trellis associ-ated with a DIC and pDIC, we letand . Also, the class-II Partial Response (PR2)channel is a binary-input FSISIC with an impulse response of

and additive Gaussian noise [21], [22].

D. Outline of the Paper

The remainder of this paper is organized as follows. InSection II, we introduce the joint LP decoder, define joint-de-coding pseudo-codewords (JD-PCWs), and describe theappropriate generalized Euclidean distance for this problem.Then, we discuss the decoder performance analysis using theunion bound (via pairwise error probability) over JD-PCWs.Section III is devoted to developing the iterative solver forthe joint LP decoder, i.e., iterative joint LP decoder and itsproof of convergence. Finally, Section IV presents the decodersimulation results and Section V gives some conclusions.

II. JOINT LP DECODER

Feldman et al. introduced the LP decoder for binary linearcodes in [13] and [14]. It is based on an LP relaxation of aninteger program that is equivalent to ML decoding. Later, thismethod was extended to codes over larger alphabets [23] and tothe simplified decoding of intersymbol interference (ISI) [24].In particular, this section describes an extension of the LP de-coder to the joint-decoding of binary-input FSCs and defines LPjoint-decoding pseudo-codewords (JD-PCWs) [17]. This exten-sion is natural because Feldman’s LP formulation of a trellisdecoder is general enough to allow optimal (Viterbi style) de-coding of FSCs, and the constraints associated with the outerLDPC code can be included in the same LP. This type of exten-sion has been considered as a challenging open problem in priorworks [13], [25] and was first given by Flanagan [18], [19], butwas discovered independently by us and reported in [17]. In par-ticular, Flanagan showed that any communication system whichadmits a sum-product (SP) receiver also admits a correspondinglinear-programming (LP) receiver. Since Flanagan’s approachis more general, it is also somewhat more complicated. Still, theresulting LPs are mathematically equivalent though. One ben-efit of restricting our attention to FSCs is that our descriptionof the LP is based on finding a path through a trellis, which issomewhat more natural for the joint-decoding problem.

These LP decoders provide a natural definition of PCWs forjoint-decoding, and they allow new insight into the joint-de-coding problem. Joint-decoding pseudo-codewords (JD-PCWs)are defined and the decoder error-rate is upper bounded by aunion bound sum over JD-PCWs. This leads naturally to a prov-able upper bound (e.g., a union bound) on the probability of LPdecoding failure as a sum over all codewords and JD-PCWs.Moreover, we can show that all integer solutions are indeedcodewords and that this joint LP decoder also has an ML certifi-cate property. Therefore, all decoder failures can be explainedby (fractional) JD-PCWs. It is worth noting that this property isnot guaranteed by other convex relaxations of the same problem(e.g., see Wadayama’s approach based on quadratic program-ming [25]).

Our primary motivation is the prediction of the error rate forjoint-decoding at high SNR. The basic idea is to run simula-tions at low SNR and keep track of all observed codeword andpseudo-codeword errors. An estimate of the error rate at highSNR is computed using a truncated union bound formed bysumming over all observed error patterns at low SNR. Com-puting this bound is complicated by the fact that the loss ofchannel symmetry implies that the dominant PCWs may de-pend on the transmitted sequence. Still, this technique providesa new tool to analyze the error rate of joint decoders for FSCsand low-density parity-check (LDPC) codes. Thus, novel pre-diction results are given in Section IV.

A. Joint LP Decoding Derivation

Now, we describe the joint LP decoder in terms of the trellisof the FSC and the checks in the binary linear code 2. Let bethe length of the code and be the receivedsequence. The trellis consists of vertices (i.e., onefor each state and time) and a set of at most edges (i.e.,

2It is straightforward to extend this joint LP decoder to non-binary linearcodes based on [23].

1566 IEEE JOURNAL OF SELECTED TOPICS IN SIGNAL PROCESSING, VOL. 5, NO. 8, DECEMBER 2011

one edge for each input-labeled state transition and time). TheLP formulation requires one indicator variable for each edge

, and we denote that variable by . So, is equal to1 if the candidate path goes through the edge in . Likewise,the LP decoder requires one cost variable for each edge and weassociate the branch metric with the edge given by

ifif

First, we define the trellis polytope formally as follows.Definition 8: The trellis polytope enforces the flow conser-

vation constraints for the channel decoder. The flow constraintfor state at time is given by

Using this, the trellis polytope is given by

for any

From simple flow-based arguments, it is known that the MLedge path on trellis can be found by solving a minimum-cost LPapplied to the trellis polytope .

Theorem 9 ([13, p. 94]): Finding the ML edge-path through aweighted trellis is equivalent to solving the minimum-cost flowLP

and the optimum must be integral (i.e., ) un-less there are ties.

The indicator variables are used to define the LP and thecode constraints are introduced by defining an auxiliary variable

for each code bit.Definition 10: Let the code-space projection be the map-

ping from to the input vectordefined by with

For the trellis polytope is the set of vectors whoseprojection lies inside the relaxed codeword polytope .

Definition 11: The trellis-wise relaxed polytope foris given by

The polytope has integral vertices which are in one-to-one correspondence with the set of trelliswise codewords.

Definition 12: The set of trellis-wise codewords for isdefined by

Finally, the joint LP decoder and its ML certificate propertyare characterized by the following theorem.

Theorem 13: The LP joint decoder computes

(1)

and outputs a joint ML edge-path if is integral.Proof: Let be the set of valid input/state sequence pairs.

For a given , the ML edge-path decoder finds the most likelypath, through the channel trellis, whose input sequence is acodeword. Mathematically, it computes

where ties are resolved in a systematic manner and has theextra term for the initial state probability. By re-laxing into , we obtain the desired result.

Corollary 14: For a FSISIC3, the LP joint decoder outputs ajoint ML codeword if is integral.

Proof: The joint ML decoder for codewords computes

where follows from Definition 6 and holds because eachinput sequence defines a unique edge-path. Therefore, the LPjoint-decoder outputs an ML codeword if is integral.

Remark 15: If the channel is not a FSISIC (e.g., if it is afinite-state fading channel), then integer valued solutions of theLP joint-decoder are ML edge-paths but not necessarily MLcodewords. This occurs because the joint LP decoder does notsum the probability of the multiple edge-paths associated withthe same codeword (e.g., when multiple distinct edge-pathsare associated with the same input labels). Instead, it simplygives the probability of the most-likely edge path associatedthat codeword.

B. Joint LP Decoding Pseudo-Codewords

Pseudo-codewords have been observed and given names by anumber of authors (e.g., [28]–[30]), but the simplest general def-inition was provided by Feldman et al. in the context of LP de-

3In fact, this holds more generally for the restricted class of FSCs used in [26],which are now called unifilar FSCs because they generalize the unifilar Markovsources defined in [27].

KIM AND PFISTER: JOINT DECODING OF LDPC CODES AND FINITE-STATE CHANNELS VIA LINEAR-PROGRAMMING 1567

Fig. 2. Illustration of joint LP decoder outputs for the single parity-check codeSPC(3,2) over DIC (starts in zero state). By ordering the trellis edges appropri-ately, joint LP decoder converges to either a TCW (0 1 0 0;0 0 0 1;.0 0 1 0) (topdashed blue path) or a JD-TPCW (0 1 0 0;0 0.5.5;.5 0.5 0) (bottom dashed redpaths). Using� to project them into ����, we obtain the corresponding SCW(1,1,0) and JD-SPCW (1,.5,0).

coding of parity-check codes [14]. One nice property of the LPdecoder is that it always returns either an integral codeword or afractional pseudo-codeword. Vontobel and Koetter have shownthat a very similar set of pseudo-codewords also affect mes-sage-passing decoders, and that they are essentially fractionalcodewords that cannot be distinguished from codewords usingonly local constraints [16]. The joint-decoding pseudo-code-word (JD-PCW), defined below, can be used to characterizecode performance at low error rates.

Definition 16: If for all , then the output of theLP joint decoder is a trellis-wise codeword (TCW). Otherwise,

for some and the solution is called a joint-de-coding trellis-wise pseudo-codeword (JD-TPCW); in this case,the decoder outputs “failure” (see Fig. 2 for an example of thisdefinition).

Definition 17: For any TCW , the projectionis called a symbol-wise codeword (SCW). Likewise, for anyJD-TPCW , the projection is called a joint-de-coding symbolwise pseudo-codeword (JD-SPCW) (see Fig. 2for a graphical depiction of this definition).

Remark 18: For FSISICs, the LP joint decoder has the MLcertificate property; if the decoder outputs a SCW, then it isguaranteed to be the ML codeword (see Corollary 14).

Definition 19: If is a JD-TPCW, thenwith

is called a joint-decoding symbol-wise signal-space pseudo-codeword (JD-SSPCW). Likewise, if is a TCW, then iscalled a symbol-wise signal-space codeword (SSCW).

C. Union Bound for Joint LP Decoding

Now that we have defined the relevant pseudo-codewords, weconsider how much a particular pseudo-codeword affects per-formance; the idea is to quantify pairwise error probabilities. Infact, we will use the insights gained in the previous section toobtain a union bound on the decoder’s word-error probability

and to analyze the performance of the proposed joint LP de-coder. Toward this end, let us consider the pairwise error eventbetween a SSCW and a JD-SSPCW first.

Theorem 20: A necessary and sufficient condition for thepairwise decoding error between a SSCW and a JD-SSPCW

is

(2)

where and are the LP variables for and, respectively.

Proof: By definition, the joint LP decoder (1) prefersover if and only if (2) holds.

For the moment, let be the SSCW of FSISIC to anAWGN channel whose output sequence is , where

is an independent and identically distributed(i.i.d.) Gaussian sequence with mean 0 and variance . Then,the joint LP decoder can be simplified as stated in the followingtheorem.

Theorem 21: Let be the output of a FSISIC with zero-meanAWGN whose variance is per output. Then, the joint LPdecoder is equivalent to

Proof: For each edge , the output is Gaussianwith mean and variance , so we have

. Therefore,the joint LP decoder computes

We will show that each pairwise probability has a simpleclosed-form expression that depends only on a generalizedsquared Euclidean distance and the noise variance

. One might notice that this result is very similar to thepairwise error probability derived in [31]. The main differenceis the trellis-based approach that allows one to obtain this resultfor FSCs. Therefore, the next definition and theorem can beseen as a generalization of [31].

Definition 22: Let be a SSCW and a JD-SSPCW. Thenthe generalized squared Euclidean distance between andcan be defined in terms of their trellis-wise descriptions by

where

Theorem 23: The pairwise error probability between a SSCWand a JD-SSPCW is

where .

1568 IEEE JOURNAL OF SELECTED TOPICS IN SIGNAL PROCESSING, VOL. 5, NO. 8, DECEMBER 2011

Proof: The pairwise error probability that theLP joint-decoder will choose the pseudo-codeword over canbe written as

where follows from the fact that has aGaussian distribution with mean and variance

, and follows from Definition 22.The performance degradation of LP decoding relative to ML

decodingcanbeexplainedbypseudo-codewordsand theircontri-bution to the error rate, which depends on . Indeed, bydefining as the number of codewords and JD-PCWs atdistance from and as the set of generalized Euclideandistances,wecanwrite theunionboundonword error rate (WER)as

(3)

Of course, we need the set of JD-TPCWs to computewith the Theorem 23. There are two complications with thisapproach. One is that, like the original problem [13], no gen-eral method is known yet for computing the generalized Eu-clidean distance spectrum efficiently. Another is, unlike originalproblem, the constraint polytope may not be symmetric undercodeword exchange. Therefore the decoder performance maynot be symmetric under codeword exchange. Hence, the decoderperformance may depend on the transmitted codeword. In thiscase, the pseudo-codewords will also depend on the transmittedsequence.

III. ITERATIVE SOLVER FOR THE JOINT LP DECODER

In the past, the primary value of linear programming (LP)decoding was as an analytical tool that allowed one to betterunderstand iterative decoding and its modes of failure. Thisis because LP decoding based on standard LP solvers is quiteimpractical and has a superlinear complexity in the block length.This motivated several authors to propose low-complexity algo-rithms for LP decoding of LDPC codes in the last five years (e.g.,[25], [32]–[37]). Many of these have their roots in the iterativeGauss–Seidel approach proposed by Vontobel and Koetter forapproximate LP decoding [32]. This approach was also analyzedfurther by Burshtein [36]. Smoothed Lagrangian relaxationmethods have also been proposed to solve intractable optimalinference and estimation for more general graphs (e.g., [38]).

In this section, we consider the natural extension of [32], [36]to the joint-decoding LP formulation developed in Section II.

TABLE IPRIMAL PROBLEM (PROBLEM-P)

We argue that, by taking advantage of the special dual-domainstructure of the joint LP problem and replacing minima inthe formulation with soft-minima, we can obtain an efficientmethod that solves the joint LP. While there are many waysto iteratively solve the joint LP, our main goal was to deriveone as the natural analogue of turbo equalization (TE). Thisshould lead to an efficient method for joint LP decoding whoseperformance is similar to that of joint LP and whose per-itera-tion complexity similar to that of TE. Indeed, the solution weprovide is a fast, iterative, and provably convergent form ofTE whose update rules are tightly connected to BCJR-basedTE. This demonstrates that an iterative joint LP solver with asimilar computational complexity as TE is feasible (see Re-mark 27). In practice, the complexity reduction of this iterativedecoder comes at the expense of some performance loss, whencompared to the joint LP decoder, due to convergence issues(discussed in Section III-B).

Previously, a number of authors have attempted to reverseengineer an objective function targeted by turbo decoding (andTE by association) in order to discuss its convergence andoptimality [39]–[41]. For example, [39] uses a duality link be-tween two optimality formulations of TE: one based on Bethefree energy optimization and the other based on constrainedML estimation. This results of this section establish a newconnection between iterative decoding and optimization forthe joint-decoding problem that can also be extended to turbodecoding.

A. Iterative Joint LP Decoding Derivation

In Section II, a joint LP decoder is presented as anLDPC-code constrained shortest-path problem on the channeltrellis. In this section, we develop the iterative solver for thejoint-decoding LP. There are few key steps in deriving itera-tive solution for the joint LP decoding problem. For the firststep, given by the primal problem (Problem-P) in Table I,we reformulate the original LP (1) in Theorem 13 using onlyequality constraints involving the indicator variables4 and

4The valid patterns � �� � � ��� � ��� is even� for each parity-check� � allow us to define the indicator variables � (for � � and � � � )which equal 1 if the codeword satisfies parity-check � using configuration� � � .

KIM AND PFISTER: JOINT DECODING OF LDPC CODES AND FINITE-STATE CHANNELS VIA LINEAR-PROGRAMMING 1569

Fig. 3. Illustration of primal variables � and� defined for Problem-P and dualvariables� and� defined for Problem-D1 on the same example given by Fig. 2:SPC(3,2) with DIC for � � �.

TABLE IIDUAL PROBLEM FIRST FORMULATION (PROBLEM-D1)

. The second step, given by the first formulation of the dualproblem (Problem-D1) in Table II, follows from standardconvex analysis (e.g., see ([42, p. 224]). Strong duality holdsbecause the primal problem is feasible and bounded. Therefore,the Lagrangian dual of Problem-P is equivalent to Problem-D1and the minimum of Problem-P is equal to the maximum ofProblem-D1. From now on, we consider Problem-D1, wherethe code and trellis constraints separate into two terms in theobjective function. See Fig. 3 for a diagram of the variablesinvolved.

The third step, given by the second formulation of the dualproblem (Problem-D2) in Table III, observes that forward/backward recursions can be used to perform the optimizationover and remove one of the dual variable vectors. Thissplitting is enabled by imposing the trellis flow normalizationconstraint in Problem-P only at one time instant . Thisdetail gives different ways to write the same LP and is animportant part of obtaining update equations similar to thoseof TE.

TABLE IIIDUAL PROBLEM SECOND FORMULATION (PROBLEM-D2)

Fig. 4. Illustration of Viterbi updates in Problem-D2 on the same examplegiven by Fig. 2: DIC for � � � with forward ��� and backward��� .

Lemma 24: Problem-D1 is equivalent to Problem-D2.Proof: By rewriting the inequality constraint in

Problem-D1 as

we obtain the recursive upper bound for as

...

This upper bound is achieved by theforward Viterbi update in Problem-D2 for .Again, by expressing the same constraint as

we get a recursive upper bound for . Similar reasoningshows this upper bound is achieved by the back-ward Viterbi update in Problem-D2 for .See Fig. 4 for a graphical depiction of this.

1570 IEEE JOURNAL OF SELECTED TOPICS IN SIGNAL PROCESSING, VOL. 5, NO. 8, DECEMBER 2011

Fig. 5. Illustration of Algorithm 1 steps for � � � on the same example given by Fig. 2: outer loop update (left) and inner loop update (right).

TABLE IVSOFTENED DUAL PROBLEM (PROBLEM-DS)

The fourth step, given by the softened dual problem(Problem-DS) in Table IV, is formulated by replacing theminimum operator in Problem-D2 with the soft-minimumoperation

This smooth approximation converges to the minimum func-tion as increases [32]. Since the soft-minimum functionis used in two different ways, we use different constants,and , for the code and trellis terms. The smoothness ofProblem-DS allows one to to take derivative of (4) (giving theKarush–Kuhn–Tucker (KKT) equations, derived in Lemma 25),and represent (5) and (6) using BCJR-like forward/backwardrecursions (given by Lemma 26).

Lemma 25: Consider the KKT equations associated withperforming the minimization in (4) only over the variables

. These equations have a unique solution givenby

for where

Proof: See Appendix A.Lemma 26: Equations (5) and (6) are equivalent to the BCJR-

based forward and backward recursion given by (7)–(9).

Proof: By letting,

and , we obtain the de-sired result by normalization.

Now, we have all the pieces to complete the algorithm. Asthe last step, we combine the results of Lemma 25 and 26 toobtain the iterative solver for the joint-decoding LP, which issummarized by the iterative joint LP decoding in Algorithm 1(see Fig. 5 for a graphical depiction).

Remark 27: While Algorithm 1 always has a bit-node up-date rule different from standard belief propagation (BP), wenote that setting in the inner loop gives the exact BPcheck-node update and setting in the outer loop givesthe exact BCJR channel update. In fact, one surprising result ofthis work is that such a small change to the BCJR-based TE up-date provides an iterative solver for the LP whose per-iterationcomplexity similar to TE. It is also possible to prove the con-vergence of a slightly modified iterative solver that is based ona less efficient update schedule.

KIM AND PFISTER: JOINT DECODING OF LDPC CODES AND FINITE-STATE CHANNELS VIA LINEAR-PROGRAMMING 1571

Algorithm 1 Iterative Joint Linear-Programming Decoding

• Step 1. Set and initialize for.

• Step 2. Update Outer Loop: For ,— (i) Compute bit-to-trellis message

where

— (ii) Compute forward/backward trellis messages

(7)

(8)

where for all .— (iii) Compute trellis-to-bit message

(9)

• Step 3. Update Inner Loop for rounds: For ,— (i) Compute bit-to-check msg for

— (ii) Compute check-to-bit msg for

(10)

where

(11)

• Step 4. Compute hard decisions and stopping rule— (i) For ,

ifotherwise

— (ii) If satisfies all parity checks or the maximumouter iteration number, , is reached, stop andoutput . Otherwise increment and go to Step 2.

B. Convergence Analysis

This section considers the convergence properties of Algo-rithm 1. Although simulations have not shown any convergenceproblems with Algorithm 1 in its current form, our proof re-quires a modified update schedule that is less computationallyefficient. Following Vontobel’s approach in [32], which isbased on general properties of Gauss–Seidel-type algorithmsfor convex minimization, we show that the modified versionAlgorithm 1 is guaranteed to converge. Moreover, a feasible

TABLE VSOFTENED PRIMAL PROBLEM (PROBLEM-PS)

solution to Problem-P can be obtained whose value is arbitrarilyclose to the optimal value of Problem-P.

The modified update rule for Algorithm 1 consists of cycli-cally, for each , computing the quantity (viastep 2 of Algorithm 1) and then updating for all(based on step 3 of Algorithm 1). The drawback of this approachis that one BCJR update is required for each bit update, ratherthan for bit updates. This modification allows us to interpretAlgorithm 1 as a Gauss–Seidel-type algorithm. We believe that,at the expense of a longer argument, the convergence proof canbe extended to a decoder which uses windowed BCJR updates(e.g., see [43]) to achieve convergence guarantees with muchlower complexity. Regardless, the next few lemmas and theo-rems can be seen as a natural generalization of [32], [36] to thejoint-decoding problem.

Lemma 28: Assume that all the rows of have Hammingweight at least 3. Then, the modified Algorithm 1 converges tothe maximum of the Problem-DS.

Proof: See Appendix B.Next, we introduce the softened primal problem (Problem-PS)

in Table V, using the definitions and. Using standard convex analysis (e.g., see

([42, p. 254, Ex. 5.5]), one can show that Problem-PS is theLagrangian dual of Problem-DS and that the minimum ofProblem-PS is equal to the maximum of Problem-DS. Inparticular, Problem-PS can be seen as a maximum-entropy reg-ularization of Problem-DS that was derived by smoothing dualproblem given by Problem-D2. Thus, Algorithm 1 is dually-re-lated to an interior-point method for solving the LP relaxationof joint ML decoding on trellis-wise polytope using the entropyfunction (for in the standard simplex)

(12)

as a barrier function (e.g., see ([38, p. 126]) for the polytope.Remark 29: By taking sufficiently large and , the

primal LP of joint LP decoder in Problem-P, emerges as the“zero temperature” limit of the approximate LP relaxationsgiven by Problem-PS [32], [38]. Also, Problem-PS can be seenas a convex free-energy minimization problem [38].

Next, we develop a relaxation bound, given by Lemma 30and Lemma 31 to quantify the performance loss of Algorithm 1(when it converges) in relation to the joint LP decoder.

Lemma 30: Let be the minimum value of Problem-P andbe the minimum value of Problem-PS. Then, one finds that

where

1572 IEEE JOURNAL OF SELECTED TOPICS IN SIGNAL PROCESSING, VOL. 5, NO. 8, DECEMBER 2011

and

Proof: See Appendix C.Lemma 31: For any , sufficiently many iterations

of the modified Algorithm 1 produces a feasible solution forProblem-DS that satisfies the KKT conditions within . If

, then one can construct a solution forProblem-PS that is feasible and whose value satisfies

where

Proof: Proof follows from careful modification of the ar-guments in ([36, pp. 4840–4841]) and the details can be foundin [44].

Lastly, we obtain the desired conclusion, which is stated asTheorem 32.

Theorem 32: For any , sufficiently many iterationsof the modified Algorithm 1 produces a feasible solution forProblem-DS that satisfies the KKT conditions within . If ,then one can construct a solution for Problem-P that isfeasible and whose value satisfies

where

Proof: Combining results of Lemma 28, Lemma 30, andLemma 31, we obtain the desired error bound.

Remark 33: The modified (i.e., cyclic schedule) Algorithm 1is guaranteed to converge to a solution whose value can be madearbitrarily close to . Therefore, the joint iterative LP decoderprovides an approximate solution to Problem-P whose valueis governed by the upper bound in Theorem 32. Algorithm 1can be further modified to be of Gauss–Southwell type so thatthe complexity analysis in [36] can be extended to this case.Still, the analysis in [36], although a valid upper bound, doesnot capture the true complexity of decoding because one mustchoose to guarantee that the iterative LP solverfinds the true minimum. Therefore, the exact convergencerate and complexity analysis of Algorithm 1 is left for futurestudy. In general, the convergence rate of coordinate-descentmethods (e.g., Gauss–Seidel and Gauss–Southwell type algo-rithms) for convex problems without strict convexity is an openproblem [45].

IV. ERROR RATE PREDICTION AND VALIDATION

In this section, we validate the proposed joint-decodingsolution and discuss some implementation issues. Then, wepresent simulation results and compare with other approaches.

In particular, we compare the performance of the joint LPdecoder and joint iterative LP decoder with the joint iterativemessage-passing decoder on two finite-state intersymbol in-terference channels (FSISCs) described in Definition 7. Forpreliminary studies, we use a (3, 5)-regular binary LDPCcode on the precoded dicode channel (pDIC) with length 155and 455. For a more practical scenario, we also consider a(3, 27)-regular binary LDPC code with length 4923 and rate8/9 on the class-II Partial Response (PR2) channel used as apartial-response target for perpendicular magnetic recording.All parity-check matrices were chosen randomly except thatdouble-edges and four-cycles were avoided. Since the perfor-mance depends on the transmitted codeword, the WER resultswere obtained for a few chosen codewords of fixed weight. Theweight was chosen to be roughly half the block length, givingweights 74, 226, and 2462 respectively.

The performance of the three algorithms was assessed basedon the following implementation details.

Joint LP Decoder: Joint LP decoding is performed inthe dual domain because this is much faster than the primaldomain when using MATLAB. Due to the slow speed of LPsolver, simulations were completed up to a WER of roughly

on the three different nonzero LDPC codes with blocklengths 155 and 455 each. To extrapolate the error rates tohigh SNR (well beyond the limits of our simulation), weuse a simulation-based semi-analytic method based on thetruncated union bound (3), as discussed in Section II. Theidea is to run a simulation at low SNR and keep track ofall observed codeword and pseudo-codeword (PCW) errorsand a truncated union bound is computed by summing overall observed errors. The truncated union bound is obtainedby computing the generalized Euclidean distances associatedwith all decoding errors that occurred at some low SNR points(e.g., WER of roughly than ) until we observe a stationarygeneralized Euclidean distance spectrum. It is quite easy, infact, to store these error events in a list which is finallypruned to avoid overcounting. Of course, low SNR allows thedecoder to discover PCWs more rapidly than high SNR andit is well-known that the truncated bound should give a goodestimate at high SNR if all dominant joint decoding PCWshave been found (e.g., [46], [47]). One nontrivial open questionis the feasibility and effectiveness of enumerating error eventsfor long codes. In particular, we do not address how manyinstances must be simulated to have high confidence that allthe important error events are found so there are no surprisesat high SNR.

Joint Iterative LP Decoder: Joint iterative decoding isperformed based on the Algorithm 1 on all three LDPC codesof different lengths. For block lengths 155 and 455, we chosethe codeword which shows the worst performance for thejoint LP decoder experiments. We used a simple schedulingupdate scheme: variables are updated according to Algorithm1 with cyclically with inner loop iterations for eachouter iteration. The maximum number of outer iterations is

, so the total iteration count, , is at most200. The choice of parameters are andon the LDPC codes with block lengths 155 and 455. For theLDPC code with length 4923, is reduced to 10. To prevent

KIM AND PFISTER: JOINT DECODING OF LDPC CODES AND FINITE-STATE CHANNELS VIA LINEAR-PROGRAMMING 1573

Fig. 6. Comparisons between the joint LP decoding, joint iterative LP decoding, and joint iterative message-passing (MP) decoding on the pDIC with AWGN forrandom (3,5) regular LDPC codes of length � � ��� (left) and � � ��� (right). The joint LP decoding experiments were repeated for three different nonzerocodewords and depicted in three different curves. The dashed curves are computed using the union bound in (3) based on JD-PCWs observed at 3.46 dB (left)2.6 dB (right). Note that SNR is defined as channel output power divided by � .

possible underflow or overflow, a few expressions must beimplemented carefully. When

a well-behaved approximation of (10) and (11) is given by

where is the usual sign function. Also, (9) should beimplemented using

where and .Joint Iterative Message-Passing Decoder: Joint iterative

message decoding is performed based on the state-based algo-rithm described in [43] on all three LDPC codes of different

lengths. To make a fair comparison with the Joint Iterative LPDecoder, the same maximum iteration count and the same code-words are used.

A. Results

Fig. 6 compares the results of all three decoders and the error-rate estimate given by the union bound method discussed inSection II. The solid lines represent the simulation curves whilethe dashed lines represent a truncated union bound for three dif-ferent nonzero codewords. Surprisingly, we find that joint LPdecoder outperforms joint iterative message passing decoder byabout 0.5 dB at WER of . We also observe that joint it-erative LP decoder loses about 0.1 dB at low SNR. This maybe caused by using finite values for and . At high SNR,however, this gap disappears and the curve converges towardsthe error rate predicted for joint LP decoding. This shows thatjoint LP decoding outperforms belief-propagation decoding forshort length code at moderate SNR with the predictability of LPdecoding. Of course, this can be achieved with a computationalcomplexity similar to turbo equalization.

One complication that must be discussed is the dependenceon the transmitted codeword. Computing the bound is compli-cated by the fact that the loss of channel symmetry implies thatthe dominant PCWs may depend on the transmitted sequence.It is known that long LDPC codes with joint iterative decodingexperience a concentration phenomenon [43] whereby the errorprobability of a randomly chosen codeword is very close, withhigh probability, to the average error probability over all code-words. This effect starts to appear even at the short block lengthsused in this example. More research is required to understandthis effect at moderate block lengths and to verify the same ef-fect for joint LP decoding.

Fig. 7 compares the joint iterative LP decoder and joint itera-tive message-passing decoder in a practical scenario. Again, wefind that the joint iterative LP decoder provides gains over thejoint iterative message-passing decoder at high SNR. The slopedifference between the curves also suggests that the

1574 IEEE JOURNAL OF SELECTED TOPICS IN SIGNAL PROCESSING, VOL. 5, NO. 8, DECEMBER 2011

Fig. 7. Comparisons between the joint iterative LP decoding, joint iterative MPdecoding and soft-output Viterbi algorithm (SOVA)-based TE decoding (takenfrom [22]) on the PR2 channel with AWGN for random (3,27) regular LDPCcodes of length � � ����. Note that SNR is defined as channel output powerdivided by � .

performance gains of joint iterative LP decoder will increasewith SNR. This shows that joint iterative LP decoding can pro-vide performance gains at high SNR with a computational com-plexity similar to that of turbo equalization.

V. CONCLUSION

In this paper, we consider the problem of linear-programming(LP) decoding of low-density parity-check (LDPC) codes andfinite-state channels (FSCs). First, we present an LP formulationof joint-decoding for LDPC codes on FSCs that offers decodingperformance improvements over joint iterative message-passingdecoding at moderate SNR. Then, joint-decoding pseudo-code-words (JD-PCWs) are defined and the decoder error rate is upperbounded by a union bound over JD-PCWs that is evaluated fordeterministic ISI channels with AWGN. Next, we propose asimulation-based semi-analytic method for estimating the errorrate of LDPC codes on finite-state intersymbol interferencechannel (FSISIC) at high SNR using only simulations at lowSNR. Finally, we present a novel iterative solver for the jointLP decoding problem. This greatly reduces the computationalcomplexity of the joint LP solver by exploiting the LP dualproblem structure. Its main advantage is that it combines thepredictability of LP decoding with a computational complexitysimilar to turbo equalization (TE) and provides performancegains over TE in the error-floor region.

APPENDIX

A. Proof of Lemma 25

Restricting the minimization in (4) to the variablesgives

(13)

The solution to (13) can be obtained by solving the KKT equa-tions. For , we take the first derivative with respect to

and set it to zero; this yields

(14)

By defining as

(15)

where we can rewrite (14) to obtain the de-sired result.

B. Proof of Lemma 28

To characterize the convergence of the iterative joint LP de-coder, we consider the modification of Algorithm 1 with cyclicupdates. The analysis follows [32] and uses the propositionabout convergence of block coordinate descent methods from([48, p. 247]).

Proposition 34: Consider the problem

where and each is aclosed convex subset of . The vector is partitionedso with . Suppose that iscontinuously differentiable and convex on and that, for every

and every , the problem

has a unique minimum. Now, consider the sequencedefined by

for . Then, every limit point of this sequence min-imizes over .

KIM AND PFISTER: JOINT DECODING OF LDPC CODES AND FINITE-STATE CHANNELS VIA LINEAR-PROGRAMMING 1575

By using Proposition 34, we will show that the modified Al-gorithm 1 converges. Define and

Let us consider cyclic coordinate decent algorithm which mini-mizes cyclically with respect to the coordinate variable. Thus,

is changed first, then and so forth through . Then(4)–(6) are equivalent to for each with proper as

Using the properties of log-sum-exp functions (e.g., see [42, p.72]), one can verify that is continuously differentiable andconvex. The minimum over for all is uniquely ob-tained because of the unique KKT solution in Lemma 25. There-fore, we can apply the Proposition 34 to achieve the desired con-vergence result under the modified update schedule. It is worthmentioning that the Hamming weight condition prevents degen-eracy of Problem-DS based on the fact that, otherwise, somepairs of bits must always be equal.

C. Proof of Lemma 30

Denote the optimum solution of Problem-P by and andthe optimum solution of Problem-PS by and . Since and

are the optimal with respect to the Problem-P, we have

(16)

On the other hand, and are the optimal with respect to theProblem-PS, we have

where is the entropy defined by (12). Rewrite this gives

(17)

The last inequality is due to nonnegativity of entropy. UsingJensen’s inequality, we obtain

(18)

and

(19)

By substituting (18) and (19) to (17), we have

(20)

Combining (16) and (20) gives the result.

REFERENCES

[1] C. Douillard, M. Jézéquel, C. Berrou, A. Picart, P. Didier, and A.Glavieux, “Iterative correction of intersymbol interference: Turboequalization,” Eur. Trans. Telecomm., vol. 6, no. 5, pp. 507–511,Sep.–Oct. 1995.

[2] R. G. Gallager, “Low-density parity-check codes,” Ph.D. dissertation,Mass. Inst. of Technol., Cambridge, MA, 1960.

[3] R. R. Müller and W. H. Gerstacker, “On the capacity loss due to sep-aration of detection and decoding,” IEEE Trans. Inf. Theory, vol. 50,no. 8, pp. 1769–1778, Aug. 2004.

[4] W. E. Ryan, “Performance of high rate turbo codes on a PR4-equal-ized magnetic recording channel,” in Proc. IEEE Int. Conf. Commun.,Atlanta, GA, Jun. 1998, pp. 947–951.

[5] L. L. McPheters, S. W. McLaughlin, and E. C. Hirsch, “Turbo codes forPR4 and EPR4 magnetic recording,” in Proc. Asilomar Conf. Signals,Syst. Comput., Pacific Grove, CA, Nov. 1998.

[6] M. Öberg and P. H. Siegel, “Performance analysis of turbo-equalizeddicode partial-response channel,” in Proc. 36th Annual Allerton Conf.Commun., Control, Comput.., Monticello, IL, Sep. 1998, pp. 230–239.

[7] M. Tüchler, R. Koetter, and A. Singer, “Turbo equalization: Principlesand new results,” IEEE Trans. Commun., vol. 50, no. 5, pp. 754–767,May 2002.

[8] B. M. Kurkoski, P. H. Siegel, and J. K. Wolf, “Joint message-passingdecoding of LDPC codes and partial-response channels,” IEEE Trans.Inf. Theory, vol. 48, no. 6, pp. 1410–1422, June 2002.

[9] G. Ferrari, G. Colavolpe, and R. Raheli, Detection Algorithms for Wire-less Communications, with Applications to Wired and Storage Sys-tems. New York: Wiley, 2004.

[10] A. Dholakia, E. Eleftheriou, T. Mittelholzer, and M. Fossorier,“Capacity-approaching codes: Can they be applied to the magneticrecording channel?,” IEEE Commun. Mag., vol. 42, no. 2, pp. 122–130,Feb. 2004.

[11] A. Anastasopoulos, K. Chugg, G. Colavolpe, G. Ferrari, and R. Raheli,“Iterative detection for channels with memory,” Proc. IEEE, vol. 95,no. 6, pp. 1272–1294, Jun. 2007.

[12] A. Kavcic and A. Patapoutian, “The read channel,” Proc. IEEE, vol.96, no. 11, pp. 1761–1774, Nov. 2008.

1576 IEEE JOURNAL OF SELECTED TOPICS IN SIGNAL PROCESSING, VOL. 5, NO. 8, DECEMBER 2011

[13] J. Feldman, “Decoding error-correcting codes via linear program-ming,” Ph.D. dissertation, Mass. Inst. of Technol., Cambridge, MA,2003.

[14] J. Feldman, M. J. Wainwright, and D. R. Karger, “Using linear pro-gramming to decode binary linear codes,” IEEE Trans. Inf. Theory, vol.51, no. 3, pp. 954–972, Mar. 2005.

[15] [Online]. Available: http://www.PseudoCodewords.info[16] P. Vontobel and R. Koetter, “Graph-cover decoding and finite-length

analysis of message-passing iterative decoding of LDPC codes,” Dec.2005 [Online]. Available: http://arxiv.org/abs/cs/0512078

[17] B.-H. Kim and H. D. Pfister, “On the joint decoding of LDPC codesand finite-state channels via linear programming,” in Proc. IEEE Int.Symp. Inf. Theory, Austin, TX, June 2010, pp. 754–758.

[18] M. F. Flanagan, “Linear-programming receivers,” in Proc. 47th AnnualAllerton Conf. Commun., Control, Comput., Monticello, IL, Sep. 2008,pp. 279–285.

[19] M. F. Flanagan, “A unified framework for linear-program-ming based communication receivers,” [Online]. Available:http://arxiv.org/abs/0902.0892, accepted for publication

[20] B.-H. Kim and H. D. Pfister, “An iterative joint linear-programmingdecoding of LDPC codes and finite-state channels,” in Proc. IEEE Int.Conf. Commun., Jun. 2011, pp. 1–6.

[21] K. A. S. Immink, P. H. Siegel, and J. K. Wolf, “Codes for digitalrecorders,” IEEE Trans. Inf. Theory, vol. 44, no. 6, pp. 2260–2299, Oct.1998.

[22] S. Jeon, X. Hu, L. Sun, and B. Kumar, “Performance evaluationof partial response targets for perpendicular recording using fieldprogrammable gate arrays,” IEEE Trans. Magn., vol. 43, no. 6, pp.2259–2261, Jun. 2007.

[23] M. F. Flanagan, V. Skachek, E. Byrne, and M. Greferath, “Linear-programming decoding of nonbinary linear codes,” IEEE Trans. Inf.Theory, vol. 55, no. 9, pp. 4134–4154, Sep. 2009.

[24] M. H. Taghavi and P. H. Siegel, “Graph-based decoding in the presenceof ISI,” IEEE Trans. Inf. Theory, vol. 57, no. 4, pp. 2188–2202, Apr.2011.

[25] T. Wadayama, “Interior point decoding for linear vector channels basedon convex optimization,” IEEE Trans. Inf. Theory, vol. 56, no. 10, pp.4905–4921, Oct. 2010.

[26] J. Ziv, “Universal decoding for finite-state channels,” IEEE Trans. Inf.Theory, vol. 31, no. 4, pp. 453–460, Jul. 1985.

[27] R. Ash, Information Theory. New York: Dover, 1990.[28] N. Wiberg, “Codes and decoding on general graphs,” Ph.D. disserta-

tion, Linköping Univ., Linköping, Sweden, 1996, S-581 83.[29] C. Di, D. Proietti, E. Telatar, T. J. Richardson, and R. Urbanke, “Finite-

length analysis of low-density parity-check codes on the binary erasurechannel,” IEEE Trans. Inf. Theory, vol. 48, no. 6, pp. 1570–1579, Jun.2002.

[30] T. Richardson, “Error floors of LDPC codes,” in Proc. 42nd Annu.Allerton Conf. Commun., Control, and Comput., Oct. 2003.

[31] G. D. Forney, Jr., R. Koetter, F. R. Kschischang, and A. Reznik, “On theeffective weights of pseudocodewords for codes defined on graphs withcycles,” in Codes, Systems and Graphical Models, ser. IMA VolumesSeries, B. Marcus and J. Rosenthal, Eds. New York: Springer, 2001,vol. 123, pp. 101–112.

[32] P. Vontobel and R. Koetter, “Towards low-complexity linear-program-ming decoding,” in Proc. Int. Symp. Turbo Codes Rel. Topics, Munich,Germany, Apr. 2006.

[33] P. Vontobel, “Interior-point algorithms for linear-programming de-coding,” in Proc. 3rd Annu. Workshop Inf. Theory and its Appl., SanDiego, CA, Feb. 2008.

[34] M. Taghavi and P. Siegel, “Adaptive methods for linear programmingdecoding,” IEEE Trans. Inf. Theory, vol. 54, no. 12, pp. 5396–5410,Dec. 2008.

[35] T. Wadayama, “An LP decoding algorithm based on primal path-fol-lowing interior point method,” in Proc. IEEE Int. Symp. Inf. Theory,Seoul, Korea, Jun. 2009, pp. 389–393.

[36] D. Burshtein, “Iterative approximate linear programming decoding ofLDPC codes with linear complexity,” IEEE Trans. Inf. Theory, vol. 55,no. 11, pp. 4835–4859, Nov. 2009.

[37] M. Punekar and M. F. Flanagan, “Low complexity linear programmingdecoding of nonbinary linear codes,” in Proc. 48th Annu. Allerton Conf.Commun., Control, Comput.., Monticello, IL, Sep.. 2010.

[38] J. K. Johnson, “Convex relaxation methods for graphical models: La-grangian and maximum entropy approaches,” Ph.D. dissertation, Mass.Inst. of Technol., Cambridge, MA, 2008.

[39] P. Regalia and J. Walsh, “Optimality and duality of the turbo decoder,”Proc. IEEE, vol. 95, no. 6, pp. 1362–1377, Jun. 2007.

[40] F. Alberge, “Iterative decoding as Dykstra’s algorithm with alternatei-projection and reverse i-projection,” in Proc. Eur. Signal Process.Conf., Lausanne, Switzerland, 2008.

[41] J. Walsh and P. Regalia, “Belief propagation, Dykstra’s algorithm, anditerated information projections,” IEEE Trans. Inf. Theory, vol. 56, no.8, pp. 4114–4128, Aug. 2010.

[42] S. Boyd and L. Vandenberghe, Convex Optimization. Cambridge,U.K.: Cambridge Univ. Press, 2004.

[43] A. Kavcic, X. Ma, and M. Mitzenmacher, “Binary intersymbol interfer-ence channels: Gallager codes, density evolution and code performancebounds,” IEEE Trans. Inf. Theory, vol. 49, no. 7, pp. 1636–1652, Jul.2003.

[44] B.-H. Kim, “Joint equalization and decoding via convex optimization,”Ph.D. dissertation, Texas A&M Univ., College Station, TX.

[45] Z. Q. Luo and P. Tseng, “On the convergence of the coordinate descentmethod for convex differentiable minimization,” J. Optim. Theory Ap-plicat., vol. 72, no. 1, pp. 7–35, Jan. 1992.

[46] X. Hu, Z. Li, V. Kumar, and R. Barndt, “Error floor estimation of longLDPC codes on magnetic recording channels,” IEEE Trans. Magn., vol.46, no. 6, pp. 1836–1839, Jun. 2010.

[47] P. Lee, L. Dolecek, Z. Zhang, V. Anantharam, B. Nikolic, and M. Wain-wright, “Error floors in LDPC codes: Fast simulation, bounds and hard-ware emulation,” in Proc. IEEE Int. Symp. Inf. Theory, Toronto, ON,Canada, Jul. 2008, pp. 444–448.

[48] D. Bertsekas, Nonlinear Programming. Belmont, MA: Athena Sci-entific, 1995.

Byung-Hak Kim (S’09) received the B.S. and M.S.degrees in electrical engineering from Korea Univer-sity, Seoul, Korea, in 2000 and 2002, respectively. Heis currently working toward the Ph.D. degree in elec-trical engineering at Texas A&M University, CollegeStation.

During the summer of 2007, he interned at Qual-comm, Inc, San Diego, CA. His current researchinterests include information theory and channelcoding with applications in wireless communica-tions, data storage, and statistical inference.

Henry D. Pfister (S’99–M’03–SM’09) received thePh.D. degree in electrical engineering from the Uni-versity of California, San Diego, in 2003.

He joined the faculty of the School of Engineeringat Texas A&M University, College Station, in 2006.Prior to that, he spent two years in R&D at Qual-comm, Inc, San Diego. and one year as a post-docat EPFL.

Dr. Pfister received the NSF Career Award in 2008and was a coauthor of the 2007 IEEE COMSOCbest paper in Signal Processing and Coding for Data

Storage. His current research interests include information theory, channelcoding, and iterative decoding with applications in wireless communicationsand data storage.

(PDF) Joint Decoding of LDPC Codes and Finite-State Channels Via Linear-Programming - DOKUMEN.TIPS (2024)

FAQs

What are the decoding algorithms for LDPC codes? ›

Decoding algorithms for LDPC codes have been discovered and formed several times independently and hence comes under different names. The most common ones are the bit flipping algorithm and the sum-product algorithm.

What is message passing decoding of LDPC codes? ›

The message passing decoding algorithm for LDPC codes is an instantiation of a more general algorithm, known as belief propagation, that is used for inference in graphical models. In this section we describe the inference problem and describe the belief propagation (BP) algorithm.

Is ldpc a linear block code? ›

An LDPC code is defined by its parity check matrix. The k x n generator matrix that is used to encode a linear block code can be derived from the parity check matrix through linear operations.

What is a low density parity check code? ›

In information theory, a low-density parity-check (LDPC) code is a linear error correcting code, a method of transmitting a message over a noisy transmission channel. An LDPC code is constructed using a sparse Tanner graph (subclass of the bipartite graph).

What is the difference between LDPC and convolutional codes? ›

In LDPC decoding, the entire codeword must be received before it can be processed, and the long codewords required for capacity-approaching performance imply a large latency penalty; in contrast, a convolutional code can be continuously decoded with a substantially reduced latency.

What is the difference between turbo code and LDPC? ›

LDPC is better in performance for high code rates (rate 7/8) than the Turbo Code, Beside that the iterations in LDPC can be done in parallel but for turbo code is in serial. Here, the Turbo code is better in performance for moderate code rate than the LDPC.

What are the disadvantages of LDPC codes? ›

The disadvantages of the LDPC decoder using traditional HDL based approach are the complexity of hardware implementation, time consuming and difficult to meet the real time requirements of communication systems.

What is encoding of LDPC code? ›

Description. The LDPC Encoder block applies LDPC coding to a binary input message. LDPC codes are linear error control codes with sparse parity-check matrices and long block lengths that can attain performance near the Shannon limit. The input and output are discrete-time signals.

Are LDPC codes systematic? ›

LDPC are randomly generated and by nature, they are non-systematic codes.

What is the 7 4 linear block code? ›

The (7, 4) code given in Table 1 is a linear systematic block code; the rightmost four digits of each code word are identical to the corresponding information digits. Which is called the syndrome of r. Then s = 0 if and only if r is a code word, and s ≠ 0 if and only if r is not a code word.

What is the difference between linear code and block code? ›

In coding theory, a linear code is an error-correcting code for which any linear combination of codewords is also a codeword. Linear codes are traditionally partitioned into block codes and convolutional codes, although turbo codes can be seen as a hybrid of these two types.

How do you know if a code is linear? ›

A code is a linear code if it is determined by the null space of some matrix H∈Mm×n(Z2).

What is the algorithm of LDPC decoder? ›

The LDPC Decoder block uses the belief propagation algorithm to decode a binary LDPC code, which is input to the block as the soft-decision output (log-likelihood ratio of received bits) from demodulation. The block decodes generic binary LDPC codes where no patterns in the parity-check matrix are assumed.

What is the LDPC code parity matrix? ›

A low-density parity check (LDPC) code is a linear block code whose parity check matrix has a small number of one's. The number of 1's in an LDPC code's matrix grows linearly with the size N. The number of 1's in a regular-density matrix grows as N·(M-N).

How to generate an LDPC matrix? ›

GENERATING THE PARITY CHECK MATRIX

An (n,j,k) LDPC code is specified by a partiy check matrix,H having n-k rows, n columns and j 1's per column. In this software k=3 i.e., all the parity check matrices will have 3 ones per column. The code formed form such a parity check matrix is known as a regular Gallagher code.

What is the code decoding method? ›

In coding theory, decoding is the process of translating received messages into codewords of a given code. There have been many common methods of mapping messages to codewords. These are often used to recover messages sent over a noisy channel, such as a binary symmetric channel.

What are the decoding methods for language models? ›

Decoding strategies dictate how a language model selects the next token in a sequence after predicting probabilities for all possible tokens. These strategies significantly impact the quality and variety of the generated text. There are two main types of decoding strategies: deterministic and stochastic.

Which decoding algorithm is used in Turbo codes? ›

The turbo code decoder is based on a modified Viterbi algorithm that incorporates reliability values to improve decoding performance. First, this chapter introduces the concept of reliability for Viterbi decoding. Then, the metric that will be used in the modified Viterbi algorithm for turbo code decoding is described.

References

Top Articles
Latest Posts
Article information

Author: Saturnina Altenwerth DVM

Last Updated:

Views: 5593

Rating: 4.3 / 5 (64 voted)

Reviews: 87% of readers found this page helpful

Author information

Name: Saturnina Altenwerth DVM

Birthday: 1992-08-21

Address: Apt. 237 662 Haag Mills, East Verenaport, MO 57071-5493

Phone: +331850833384

Job: District Real-Estate Architect

Hobby: Skateboarding, Taxidermy, Air sports, Painting, Knife making, Letterboxing, Inline skating

Introduction: My name is Saturnina Altenwerth DVM, I am a witty, perfect, combative, beautiful, determined, fancy, determined person who loves writing and wants to share my knowledge and understanding with you.