arXiv is now an independent nonprofit! Learn more
License: arXiv.org perpetual non-exclusive license
arXiv:2006.00070v1 [cs.IT] 29 May 2020

Refined Reliability Combining for Binary Message Passing Decoding of Product Codes

Alireza Sheikh    Alexandre Graell i Amat    Gianluigi Liva    Alex Alvarado thanks: A. Sheikh and A. Alvarado are with the Department of Electrical Engineering, Eindhoven University of Technology, PO Box 513 5600 MB Eindhoven, The Netherlands (emails: {asheikh, a.alvarado}@tue.nl). The work of A. Sheikh and A. Alvarado has received funding from the European Research Council (ERC) under the European Union’s Horizon 2020 research and innovation programme (grant agreement No 757791).thanks: A. Graell i Amat is with the Department of Electrical Engineering, Chalmers University of Technology, SE-41296 Gothenburg, Sweden (email: alexandre.graell@chalmers.se).thanks: G. Liva is with the Institute of Communications and Navigation of the German Aerospace Center (DLR), Münchner Strasse 20, 82234 Weßling, Germany (email: gianluigi.liva@dlr.de).
Abstract

We propose a novel soft-aided iterative decoding algorithm for product codes (PCs). The proposed algorithm, named iterative bounded distance decoding with combined reliability (iBDD-CR), enhances the conventional iterative bounded distance decoding (iBDD) of PCs by exploiting some level of soft information. In particular, iBDD-CR can be seen as a modification of iBDD where the hard decisions of the row and column decoders are made based on a reliability estimate of the BDD outputs. The reliability estimates are derived using extrinsic message passing for generalized low-density-parity check (GLDPC) ensembles, which encompass PCs. We perform a density evolution analysis of iBDD-CR for transmission over the additive white Gaussian noise channel for the GLDPC ensemble. We consider both binary transmission and bit-interleaved coded modulation with quadrature amplitude modulation. We show that iBDD-CR achieves performance gains up to 0.510.51 dB compared to iBDD with the same internal decoder data flow. This makes the algorithm an attractive solution for very high-throughput applications such as fiber-optic communications.

Index Terms:
Binary message passing, bounded distance decoding, complexity, high speed communications, hard decision decoding, product codes, quantization errors.

I Introduction

The rediscovery of soft-decision (SD) iterative decoding algorithms and graph-based codes in the early 1990s allowed for the first time performance close to the theoretical limits with relatively low complexity. Turbo [1], and low-density parity-check (LDPC) [2] codes were soon widely adopted in communications standards. However, the ever more demanding requirements in terms of throughput and power consumption, asks for new coding solutions. For example, current optical coherent transceivers operate at data rates of 400 Gbps and the next frontier is 11 Tbps. Scaling conventional SD iterative decoders to such high throughputs is very challenging. This has spurred a great deal of research in the last few years on designing low-complexity coding and decoding schemes that can operate at very high throughputs while yet achieving performance close to that of conventional SD iterative schemes [3, 4].

A key observation is that the main limitation to achieve very high throughputs arises from the high internal decoder data flow of SD decoders [5]. For this reason hard-decision (HD) decoders are appealing solutions when high throughputs are sought, as the internal decoder data flow can be kept reasonably small. For example, HD coding for optical communications is usually based on product-like codes with high rate Bose-Chaudhuri-Hocquenghem (BCH) component codes, which can be efficiently decoded via bounded distance decoding (BDD) [5, 6]. The decoding is then performed based on BDD of the component codes and iterating between the row and column decoders, which we refer here to as iterative BDD (iBDD). The very high throughputs of HD product-like coding schemes, however, are achieved at the expense of a significant performance loss compared to their LDPC code counterparts, decoded via SD belief propagation.

Recently, several works have focused on the improvement of the performance of conventional iBDD of product-like codes targeting specifically very high throughputs [7, 8, 9, 10, 11]. The underlying idea in all these works is to generate some level of reliability information within the decoder to assist the conventional BDD. The result is an enhanced performance compared to iBDD while keeping the internal data flow low. Among the algorithms in [7, 8, 11], iBDD with scaled reliability (iBDD-SR) [8] is the one yielding the smallest increase in complexity, yet achieving about 0.30.3 dB performance improvement compared to iBDD for binary transmission. Following the principle introduced in [12], iBDD-SR is based on binary message passing (BMP) between component decoders and generates reliability information at the BDD output by scaling the decisions according to a reliability estimate of the decision. The reliability information, in the form of log-likelihood ratios is then added to the corresponding channel LLRs to form refined bit estimates (see [8, Fig. 2]). The decoding schemes in [9, 10, 11, 13], on the other hand, yield some additional coding gains but require the knowledge of the least reliable bits in the decoding process, and hence entail further complexity. Alternative constructions for high-throughput applications include coarsely-quantized low-density parity-check decoders [12, 14, 4], two-stage decoders [15], and SD-HD hybrid schemes based on concatenating a relatively weak SD code and an outer HD product-like code [16, 17].

This paper extends our previous work [8] in three different directions:

  • i.

    We derive a more accurate estimate of the reliability of the BDD outputs, which allows us to derive an improved combining rule for the BDD outputs and the channel LLRs. The resulting decoding algorithm, dubbed iterative bounded distance decoding with combined reliability (iBDD-CR) is shown to outperform iBDD-SR and, interestingly, also an idealized (genie-aided) iBDD that prevents miscorrections. The combining rule can be implemented by means of a small lookup table (LUT).

  • ii.

    We adapt the algorithm to bit interleaved coded modulation (BICM) with nonbinary modulation. For both binary and BICM transmission, we derive the density evolution (DE) equations for iBDD-CR, which provides an amenable analysis of the algorithm.

  • iii.

    We evaluate the effect of quantizing the channel LLRs and show that iBDD-CR has low sensitivity to quantization.

The combining rule derived in this work is based on DE analysis of (regular) generalized LDPC (GLDPC) codes ensembles that contain product codes (PCs) as ensemble members, under extrinsic message passing decoding. For the ensembles under consideration, the derived rule is optimal in the limit of large block lengths. Remarkably, the proposed combining rule provides a substantial coding gain with respect to iBDD-SR also when applied to the decoding of PCs, with gains that are consistent with the DE analysis findings. We show that iBDD-CR yields gains up to 0.510.51 dB compared to iBDD with an identical decoder data flow, making the algorithm particularly appealing for high-throughput applications.

Notation: We use boldface letters to denote vectors and matrices, e.g., 𝒙\bm{x} and 𝑿=[xi,j]\bm{X}=[x_{i,j}], with xi,jx_{i,j} representing the element corresponding to the ii-th row and jj-th column of 𝑿\bm{X}. Moreover, 𝑿i,:\bm{X}_{i,:} denotes the ii-th row of 𝑿\bm{X}. |a||a| denotes the absolute value of aa, a\mathopen{}\mathclose{{\left\lfloor a}}\right\rfloor the largest integer smaller than or equal to aa, and a\mathopen{}\mathclose{{\left\lceil a}}\right\rceil the smallest integer larger than or equal to aa. ()𝖳(\cdot)^{\mathsf{T}} denotes the transpose operation. We also define l^{±1}\hat{l}\in\{\pm 1\} as the sign of value ll. \mathbb{R} is the set of real numbers and p()p(\cdot) is the probability distribution or probability mass function of the continuous or discrete random variables (RVs), respectively. A Gaussian distribution with mean μ\mu and variance σ2\sigma^{2} is denoted by 𝒩(μ,σ2)\mathcal{N}(\mu,\sigma^{2}). Furthermore, 𝖦(λ,μ,σ2)12πσexp(OPEN(λμCLOSE)22σ2)\mathsf{G}(\lambda;\mu,{\sigma^{2}})\triangleq\frac{1}{{\sqrt{2\pi}\sigma}}\exp(-\frac{{{{\mathopen{}\mathclose{{\left({\lambda-\mu}}}\right)}^{2}}}}{{2{\sigma^{2}}}}) stands for the Gaussian function with mean and variance μ\mu and σ2\sigma^{2}. We also denote by 𝖰(x)12πxeξ22𝑑ξ\mathsf{Q}(x)\triangleq\frac{1}{\sqrt{2\pi}}\int_{x}^{\infty}\mathrm{e}^{\frac{-\xi^{2}}{2}}\mathrm{d}\xi the tail probability of the standard Gaussian distribution. The Hamming distance between vectors 𝒂\bm{a} and 𝒃\bm{b} is denoted by 𝖽𝖧(𝒂,𝒃)\mathsf{d}_{\mathsf{H}}(\bm{a},\bm{b}). Finally, we define

𝕌¯(x)={1if x<00otherwise.\displaystyle\bar{\mathbbm{U}}(x)=\mathopen{}\mathclose{{\left\{\begin{array}[]{ll}1&\text{if }x<0\\ 0&\text{otherwise}.\end{array}}}\right.

II Preliminaries

We consider binary PCs with BCH component codes. Let 𝒞\mathcal{C} be an (n,k)(n,k) BCH code with minimum Hamming distance d𝗆𝗂𝗇d_{\mathsf{min}} built over the Galois field GF(2v)\text{GF}(2^{v}) with (even) block length nn and information block length kk given by

n=2v1,k=2vvt1,\displaystyle n=2^{v}-1,\;\;\;k=2^{v}-vt-1, (1)

where t=Δd𝗆𝗂𝗇12t\mathrel{\mathop{\kern 0.0pt=}\limits^{\Delta}}\mathopen{}\mathclose{{\left\lfloor{\frac{{{d_{\mathsf{min}}}-1}}{2}}}}\right\rfloor is the error correcting capability of the code.

A (two-dimensional) PC with parameters (n2,k2)(n^{2},k^{2}) and code rate R=k2/n2R=k^{2}/n^{2} is defined as the set of all n×nn\times n arrays such that each row and each column in the array is a codeword of 𝒞\mathcal{C}. Accordingly, a codeword can be defined as a binary matrix 𝑪=[ci,j]\bm{C}=[c_{i,j}]. For ease of explanation, assume first transmission over the binary input additive white Gaussian noise (bi-AWGN) channel (in Sec. IV-B we also consider a bit-interleaved coded modulation (BICM)). The output of the bi-AWGN channel corresponding to code bit ci,jc_{i,j} is thus given by

yi,j=xi,j+ni,j,\displaystyle y_{i,j}=x_{i,j}+n_{i,j}, (2)

where xi,j=(1)ci,jx_{i,j}=(-1)^{c_{i,j}} and ni,j𝒩(0,σ2)n_{i,j}\sim\mathcal{N}(0,\sigma^{2}). For a given 𝖤𝖻/𝖭𝟢\mathsf{E_{b}}/\mathsf{N_{0}} and code rate RR, the noise variance is σ2=(2R𝖤𝖻/𝖭𝟢)1\sigma^{2}=(2R\mathsf{E_{b}}/\mathsf{N_{0}})^{-1}. The signal-to-noise ratio (SNR) per symbol is 𝖤𝗌/𝖭𝟢=12σ2\mathsf{E_{s}}/\mathsf{N_{0}}=\frac{1}{2\sigma^{2}}. Let 𝑳=[li,j]\bm{L}=[l_{i,j}] be the matrix of channel LLRs and 𝑹=[ri,j]\bm{R}=[r_{i,j}] the matrix of hard decisions at the output of the channel, i.e., ri,jr_{i,j} is obtained taking the sign of li,jl_{i,j} and mapping 11-1\mapsto 1 and +10+1\mapsto 0. We denote this mapping by 𝖡()\mathsf{B}(\cdot), i.e., ri,j=𝖡(li,j)r_{i,j}=\mathsf{B}(l_{i,j}). With some abuse of notation we will write 𝑹=𝖡(𝑳)\bm{R}=\mathsf{B}(\bm{L}).

PCs are conventionally decoded using BDD of the component codes. Here we briefly explain BDD. Consider the decoding of an arbitrary row component, which is an 1×n1\times n array. Specifically, assume decoding of the transmitted component codeword 𝒄=(c1,,cn)\bm{c}=(c_{1},\ldots,c_{n}) based on the hard-detected bits at the channel output, 𝒓=(r1,,rn)\bm{r}=(r_{1},\ldots,r_{n}). BDD corrects all error patterns with Hamming weight up to the error-correcting capability of the code tt. If the weight of the error pattern is larger than tt and there exists another codeword 𝒄~𝒞\tilde{\bm{c}}\in\mathcal{C} with 𝖽𝖧(𝒄~,𝒓)t\mathsf{d_{H}}(\tilde{\bm{c}},\bm{r})\leq t, then BDD erroneously decodes 𝒓\bm{r} onto 𝒄~\tilde{\bm{c}} and a so-called miscorrection occurs. Otherwise, if such a codeword does not exist, BDD fails. In this case, the bounded distance (BD) decoder may output its input 𝒓\bm{r}, or it may declare a decoding failure (often referred to as an erasure). The decoding of PCs can be accomplished in an iterative fashion based on BDD of the component codes and iterating between the row and column decoders, which we refer to as iBDD. In the case of iBDD, if a local BD decoder fails, it outputs the input vector.

Fig. 1: Block diagram illustrating the message passing in iBDD-CR corresponding to iith row decoding at iteration \ell. The diagram shows the decision on code bit ci,jc_{i,j}. 𝚿i,:𝖼,(1)\bm{\Psi}_{i,:}^{\mathsf{c},(\ell-1)} is the input to BDD, μ¯i,j𝗋,()\bar{\mu}^{\mathsf{r},(\ell)}_{i,j} is the output of BDD, li,jl_{i,j} is the channel LLR, l^i,j\hat{l}_{i,j} is sign of channel LLR, μ~i,j𝗋,()\tilde{\mu}^{\mathsf{r},(\ell)}_{i,j} is the output of LUT given in Table I, ψi,j𝗋,()\psi^{\mathsf{r},(\ell)}_{i,j} is the output of iBDD-CR and l~i,j𝗋,()\tilde{l}^{\mathsf{r},(\ell)}_{i,j} is the LLR of ψi,j𝗋,()\psi^{\mathsf{r},(\ell)}_{i,j}.

III Iterative Bounded Distance Decoding with Combined Reliability

Recently, a variant of iBDD called iBDD-SR has been proposed, where the BDD outbound messages are modified based on the channel reliabilities to reduce miscorrections. A detailed explanation of iBDD-SR can be found in [8]. We highlight that iBDD-SR exploits an estimate of the reliability of the BDD decisions to produce weighted sums of BDD outputs and channel LLRs (see [8, Fig. 2]). We provide next an improved combining rule, based on an enhanced model of the component code decoder behavior. The new rule will be shown to be superior to the weighted sum approach of [8], in terms of both asymptotic decoding threshold and finite-length performance.

Consider the decoding of an (n2,k2)(n^{2},k^{2}) PC and let 𝚿𝖼,(1)=[ψi,j𝖼,(1)]\bm{\Psi}^{\mathsf{c},(\ell-1)}=[\psi_{i,j}^{\mathsf{c},(\ell-1)}] be the decoding result of the nn column codes at iteration 1\ell-1, where ψi,j𝖼,(1)\psi_{i,j}^{\mathsf{c},(\ell-1)} corresponds to the decision on code bit ci,jc_{i,j}. The input of the row decoders at iteration \ell is 𝚿𝖼,(1)\bm{\Psi}^{\mathsf{c},(\ell-1)}. Without loss of generality, we assume the decoding of the iith row code at iteration \ell, hence, the input of the decoder is 𝚿𝖼,(1)i,:\bm{\Psi}^{\mathsf{c},(\ell-1)}_{i,:}.11 1 Recall our notation where 𝑿i,:\bm{X}_{i,:} denotes the ii-th row of 𝑿\bm{X}. The block diagram of the iBDD-CR algorithm corresponding to the iith row decoding at iteration \ell is schematized in Fig. 1. Let μ¯i,j𝗋\bar{\mu}_{i,j}^{\mathsf{r}} denote the output of the iith row BD decoder corresponding to code bit ci,jc_{i,j}. μ¯i,j𝗋\bar{\mu}_{i,j}^{\mathsf{r}} takes values on a ternary alphabet, μ¯i,j𝗋{±1,0}\bar{\mu}_{i,j}^{\mathsf{r}}\in\{\pm 1,0\}, where the decoded bits are mapped according to 0+10\mapsto+1 and 111\mapsto-1 if BDD is successful, and the output is 00 in the case of a decoding failure. Let l~i,j𝗋,()\tilde{l}_{i,j}^{\mathsf{r},(\ell)} be the soft value of code bit ci,jc_{i,j} at iteration \ell, which is formed based on the values of the BDD output and the channel LLRs, i.e., μ¯i,j𝗋,()\bar{\mu}_{i,j}^{\mathsf{r},(\ell)} and li,jl_{i,j}, respectively. In Sec. IV, we derive a closed-form expression for l~i,j𝗋,()\tilde{l}_{i,j}^{\mathsf{r},(\ell)} via a DE analysis.22 2 Note that the expression is derived under the assumption of an asymptotically-large block length, under an extrinsic message passing variation of the algorithm, as will be discussed in Sec. IV. For now, assume that combining μ¯i,j𝗋,()\bar{\mu}_{i,j}^{\mathsf{r},(\ell)} and li,jl_{i,j} results in a soft value l~i,j𝗋,()\tilde{l}_{i,j}^{\mathsf{r},(\ell)}. Then, the hard decision on the code bit ci,jc_{i,j} produced by the iith row decoder is formed as

ψi,j𝗋,()=𝖡(l~i,j𝗋,()),\psi_{i,j}^{\mathsf{r},(\ell)}=\mathsf{B}(\tilde{l}_{i,j}^{\mathsf{r},(\ell)}), (3)

where ties can be broken with any policy (see Sec. II for the definition of 𝖡()\mathsf{B}(\cdot)).

The hard decision ψi,j𝗋,()\psi_{i,j}^{\mathsf{r},(\ell)} is the message passed from the ii-th row decoder to the jj-th column decoder. In particular, after applying this procedure to all row decoders, the matrix 𝚿𝗋,()=[ψi,j𝗋,()]\bm{\Psi}^{\mathsf{r},(\ell)}=[\psi_{i,j}^{\mathsf{r},(\ell)}] is formed and used as the input for the nn column decoders, and column decoding based on 𝚿𝗋,()\bm{\Psi}^{\mathsf{r},(\ell)} is performed. Assume the decoding of the jjth column code at iteration \ell, hence, the input of the decoder is 𝚿𝗋,():,j\bm{\Psi}^{\mathsf{r},(\ell)}_{:,j}. As before, we assume that the output of the jjth column BD decoder corresponding to code bit ci,jc_{i,j}, denoted by μ¯i,j𝖼\bar{\mu}_{i,j}^{\mathsf{c}}, takes values on {±1,0}\{\pm 1,0\}. Similar to row decoding, l~i,j𝖼,()\tilde{l}_{i,j}^{\mathsf{c},(\ell)} is formed based on combining μ¯i,j𝖼\bar{\mu}_{i,j}^{\mathsf{c}} and li,jl_{i,j}. Then, the hard decision on code bit ci,jc_{i,j} produced by the jjth column decoder is formed as

ψi,j𝖼,()=𝖡(l~i,j𝖼,()).\psi_{i,j}^{\mathsf{c},(\ell)}=\mathsf{B}(\tilde{l}_{i,j}^{\mathsf{c},(\ell)}). (4)

The matrix 𝚿𝖼,()=[ψi,j𝖼,()]\bm{\Psi}^{\mathsf{c},(\ell)}=[\psi_{i,j}^{\mathsf{c},(\ell)}] is passed to the nn row decoders for the decoding iteration +1\ell+1. The iterative process continues until a maximum number of iterations is reached.

With reference to Fig. 1, observe that in the proposed algorithm the component code decoders exchange only (binary) hard decisions. Hence, the contribution of the messages passed among component decoders to the overall internal decoder data flow is comparable to that of conventional iBDD [5, Sec. III.A].

IV Density Evolution Analysis of iBDD-CR for GLDPC Code Ensembles

IV-A Density Evolution Analysis for the bi-AWGN Channel

We provide in this section a DE analysis of PCs, under iBDD-CR decoding. More specifically, we analyze PCs as members of regular GLDPC code ensembles [18]. To do so, we first recall the Tanner graph representation of a PC [19]. A two-dimensional PC defined by an (n,k)(n,k) component code (used for both rows and columns of the codeword array) can be represented by a graph consisting of two sets of nodes: n2n^{2} degree-22 variable nodes (VNs) and 2n2n degree-nn constraint nodes (CNs). Each VN is associated to a codeword bit, and each CN is associated to a row/column code. VNs and CNs are then connected by edges according to the constraints defined by the PC construction. An example is provided in Fig. 2 for the case of n=3n=3 component code.

Fig. 2: (a) The PC code array with 99 bits. (b) Tanner graph of the PC. 𝗋𝟣\mathsf{r_{1}}, 𝗋𝟤\mathsf{r_{2}}, and 𝗋𝟥\mathsf{r_{3}} (𝖼𝟣\mathsf{c_{1}}, 𝖼𝟤\mathsf{c_{2}}, and 𝖼𝟥\mathsf{c_{3}}) stand for the first, second, and third BCH row (column) constraint nodes. A length-88 cycle is highlighted in the Tanner graph. (c) Tanner graph of a generic regular GLDPC code with n2n^{2} degree-22 VNs and 2n2n degree-nn CNs.

PCs can be seen as a special class of GLDPC codes for which the connections between VNs and CNs are directly defined by the PC structure. The deterministic nature of the Tanner graph of PCs has a major consequence in terms of DE analysis. Indeed, DE can applied to graphs whose nodes have a tree-like neighborhood down to a certain depth (which is directly related to the number of decoding iterations). To determine the limiting behavior in terms of iterative decoding threshold, the number of iterations (and, consequently, the depth for which a tree-like neighborhood is required) has to be taken to infinity. This demands for the block length to grow large (i.e., in the limit, to infinity). However, even if one would be able to construct a sequence of PCs with increasing block length, the requirement of a tree-like neighborhood down to a growing depth cannot be attained by any PC. The girth of the Tanner graph of a PC is, in fact, 88 (a length-88 cycle in the Tanner graph of the PC of Fig. 2(b) is highlighted), jeopardizing the possibility to perform a proper DE analysis.33 3 A notable exception, where a DE analysis of PCs can be performed, was described in [20] for the binary erasure channel for the limiting case where the code rate tends to 11. Hence, rather than analyzing a specific PC, we resort to the analysis of the GLDPC ensemble encompassing the PC.

Fig. 2(c) depicts the Tanner graph of a generic PC with n2n^{2} degree-22 VNs and 2n2n degree-nn CNs, where the permutation of the edges is represented by the edge interleaver π\pi. The PC is defined by a particular permutation. Note also that this Tanner graph corresponds to that of a regular GLDPC code for which all CNs are associated the same (n,k)(n,k) component code. The set of codes defined by all possible edge permutations yields the GLDPC code ensemble, which contains among its members the two-dimensional PC based on the (n,k)(n,k) component code. To perform a DE analysis, we will need to untangle the number of VNs and CNs from the component code block length: The regular GLDPC code ensembles on interest will be hence defined by the CNs component code, the degree of the VNs (which is 22), and the block length (i.e., the number of VNs).

Remark 1

The Tanner graph of a product/GLDPC code can be used to describe the message-passing schedule between VNs and CNs. Typically, GLDPC ensembles are analyzed under the assumption of a flooding schedule, i.e., at each iteration VNs pass a message to all the neighboring CNs, and all CNs pass a message to their neighboring VNs. While the principle can be applied to PCs, too, in the following we will analyze a message passing schedule that follows from the decoding algorithm described in Sec. III. To this aim, we divide the CNs into two classes (or types): The class of CNs associated to row decoders and the class of CNs associated to column decoders. The decoding schedule, hence, will involve two half-iterations: In the first half-iteration, only CNs associated to column decoders are active, while in the second half-iteration only CNs associated to row decoders are active.

Remark 2

A further difference in the analysis with respect to the classical analysis of GLDPC code ensembles stems from the DE analysis approach proposed in [6] for GLDPC code ensembles under iBDD. Typically, a VN in a GLDPC code Tanner graph gets as input the corresponding codeword bit channel observation, and it forwards to the neighboring CNs an updated belief. The updated belief accounts for the channel observation and the extrinsic information provided at the previous iteration, by the CNs output. As suggested in [6], when analyzing the iBDD algorithm it is particularly convenient to provide the channel observations as input to each CN directly, and to let VNs act as simple message routers (i.e., they forward the message received along one edge over the other edge without performing any modification). We adopt this approach in the following. It follows that the combining of the channel soft information with the output of the local BD decoders takes place within the CNs, as emphasized in Fig. 1.

In order to proceed with the DE analysis, a further important aspect needs to be addressed. In particular, the decoding rule specified for the component code decoders in Sec. III has to be modified in order to render the message passing extrinsic. From (3)–(4), one can infer that the standard row (column) decoding of PCs using iBDD-CR does not fall into the extrinsic decision rule category, as the input of row (column) decoder for iteration \ell is the output of column (row) decoder from the iteration 1\ell-1. Therefore, for analysis purposes, similar to [6, 8] we modify the algorithm such that the BDD of the component code is substituted by an extrinsic rule relying on BDD [6, Sec. II.B].

The iBDD-CR decoding algorithm with extrinsic BDD of the component codes is explained in the following. Without loss of generality, we consider the decoding of the ii-th row of the PC at iteration \ell, corresponding to the transmitted component code codeword 𝒄=(c1,,cn)\bm{c}=(c_{1},\ldots,c_{n}), where the input for the ii-th row decoder is 𝚿i,:𝖼,(1)=(ψi,1𝖼,(1),,ψi,n𝖼,(1))\bm{\Psi}_{i,:}^{\mathsf{c},(\ell-1)}=(\psi_{i,1}^{\mathsf{c},(\ell-1)},\ldots,\psi_{i,n}^{\mathsf{c},(\ell-1)}). For the decision on the code bit ci,jc_{i,j}, the jj-th component of 𝚿i,:𝖼,(1)\bm{\Psi}_{i,:}^{\mathsf{c},(\ell-1)} is substituted by the channel output ri,jr_{i,j}, and hence, 𝝍~=Δ(ψi,1𝖼,(1),,ri,j,,ψi,n𝖼,(1))\tilde{\bm{\psi}}\mathrel{\mathop{\kern 0.0pt=}\limits^{\Delta}}(\psi_{i,1}^{\mathsf{c},(\ell-1)},\ldots,r_{i,j},\ldots,\psi_{i,n}^{\mathsf{c},(\ell-1)}) is used as the input for BDD. After performing extrinsic BDD, the outbound message on code bit ci,jc_{i,j} (μ¯i,j𝗋\bar{\mu}_{i,j}^{\mathsf{r}}) is

μ¯i,j𝗋={(1)ciif 𝖽𝖧(𝒄,𝝍~)t(1)c~iif 𝖽𝖧(𝒄,𝝍~)>t and 𝒄~such that𝖽𝖧(𝒄~,𝝍~)t0otherwise,\displaystyle\bar{\mu}_{i,j}^{\mathsf{r}}=\begin{cases}{(-1)}^{c_{i}}&\text{if }\mathsf{d}_{\mathsf{H}}(\bm{c},\tilde{\bm{\psi}})\leq t\\ {(-1)}^{\tilde{c}_{i}}&\text{if }\mathsf{d}_{\mathsf{H}}(\bm{c},\tilde{\bm{\psi}})>t\text{ and }\exists{\tilde{\bm{c}}}\;\text{such that}\;\mathsf{d}_{\mathsf{H}}(\tilde{\bm{c}},\tilde{\bm{\psi}})\leq t\\ 0&\text{otherwise}\end{cases},

(5)

where 𝒄~=(c~1,,c~n)\tilde{\bm{c}}=(\tilde{c}_{1},\ldots,\tilde{c}_{n}) is a valid component codeword. The same decoding rule can be employed for iBDD-CR decoding with extrinsic BDD of column codes.

Remark 3

The extrinsic decoding rule requires decoding nn times each component code, which is complex for a practical system. We highlight that we only use the extrinsic decoding rule to derive the DE analysis, whereas for the performance evaluation via simulations we use the more practical decoder outlined in Sec. II, i.e., the standard (intrinsic) row/column decoding of the component codes is employed.

We consider transmission over the bi-AWGN channel where a length-nn BCH component code with error-correcting capability tt is assumed at the CNs. We denote by p𝖼𝗁p_{\mathsf{ch}} the channel output error probability yielded by applying hard detection to the bi-AWGN channel output, i.e., OPENp𝖼𝗁=𝖰(1σCLOSE)p_{\mathsf{ch}}=\mathsf{Q}\mathopen{}\mathclose{{\left(\frac{1}{\sigma}}}\right). We consider two sets of equal size for CNs, where each set defines a CN type. We refer to the two CN types as row and column CN types. Each VN is connected to one row-type CN and to one column-type CN. Each decoding iteration consists of one row CN processing, followed by one column CN processing. In the following, we denote by x{x} the error probability associated to the messages exchanged by the component decoders (via VNs). In particular, we denote by x𝗋,(){x}^{\mathsf{r},(\ell)} and x𝖼,(){x}^{\mathsf{c},(\ell)} the message error probability at the output of the row component decoder (row-type CN) and column component decoder (column-type CN), respectively, at the \ellth iteration. The message error probability at the input of a row-type CN at the \ellth iteration is given by x𝖼,(1){x}^{\mathsf{c},(\ell-1)}, whereas the message error probability at the input of a column-type CN during the \ellth iteration is x𝗋,(){x}^{\mathsf{r},(\ell)}.

Without loss of generality, consider the row-type CN operation at iteration \ell of DE.The combining yields a soft estimate for code bit ci,jc_{i,j}, i.e., l~i,j𝗋,(){\tilde{l}}_{i,j}^{\mathsf{r},(\ell)}, given the corresponding BDD output and channel LLR are μ¯i,j𝗋,()\bar{\mu}_{i,j}^{\mathsf{r},(\ell)} and li,jl_{i,j}, respectively. By applying Bayes’ rule to the definition of l~i,j𝗋,(){\tilde{l}}_{i,j}^{\mathsf{r},(\ell)}, we have

l~i,j𝗋,()\displaystyle\tilde{l}_{i,j}^{\mathsf{r},(\ell)} =ΔlnOPENp(μ¯i,j𝗋,(),li,j|ci,j=0CLOSE)OPENp(μ¯i,j𝗋,(),li,j|ci,j=1CLOSE)\displaystyle\mathrel{\mathop{\kern 0.0pt=}\limits^{\Delta}}\ln\frac{{p\mathopen{}\mathclose{{\left({\bar{\mu}_{i,j}^{\mathsf{r},(\ell)},{{l}_{i,j}}|{c_{i,j}}=0}}}\right)}}{{p\mathopen{}\mathclose{{\left({\bar{\mu}_{i,j}^{\mathsf{r},(\ell)},{{l}_{i,j}}|{c_{i,j}}=1}}}\right)}}
=lnOPENp(μ¯i,j𝗋,()|li,j,ci,j=0CLOSE)OPENp(μ¯i,j𝗋,()|li,j,ci,j=1CLOSE)+lnOPENp(li,j|ci,j=0CLOSE)OPENp(li,j|ci,j=1CLOSE)\displaystyle=\ln\frac{{p\mathopen{}\mathclose{{\left({\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}|{{l}_{i,j}},{c_{i,j}}=0}}}\right)}}{{p\mathopen{}\mathclose{{\left({\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}|{{l}_{i,j}},{c_{i,j}}=1}}}\right)}}+\ln\frac{{p\mathopen{}\mathclose{{\left({{{l}_{i,j}}|{c_{i,j}}=0}}}\right)}}{{p\mathopen{}\mathclose{{\left({{{l}_{i,j}}|{c_{i,j}}=1}}}\right)}}
=lnOPENp(μ¯i,j𝗋,()|li,j,ci,j=0CLOSE)OPENp(μ¯i,j𝗋,()|li,j,ci,j=1CLOSE)+li,j.\displaystyle=\ln\frac{{p\mathopen{}\mathclose{{\left({\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}|{l_{i,j}},{c_{i,j}}=0}}}\right)}}{{p\mathopen{}\mathclose{{\left({\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}|{l_{i,j}},{c_{i,j}}=1}}}\right)}}+l_{i,j}. (6)

where li,j=2σ2yi,jl_{i,j}=\frac{2}{\sigma^{2}}y_{i,j}. It follows li,j𝒩(2/σ2,4/σ2)l_{i,j}\sim\mathcal{N}(2/\sigma^{2},4/\sigma^{2}) if ci,j=0c_{i,j}=0 and li,j𝒩(2/σ2,4/σ2)l_{i,j}\sim\mathcal{N}(-2/\sigma^{2},4/\sigma^{2}) if ci,j=1c_{i,j}=1.

In general, computing the first term of (6) is a formidable task, since the extrinsic decoding rule (5) results in a statistical dependence between μ¯i,j𝗋,()\bar{\mu}_{i,j}^{\mathsf{r},(\ell)} and li,jl_{i,j}. The trick for computing this term is that μ¯i,j𝗋,()\bar{\mu}_{i,j}^{\mathsf{r},(\ell)} only depends on the hard value l^i,j\hat{l}_{i,j} and not on the reliability |li,j||l_{i,j}|.44 4 Recall that, for what concerns the computation of l~i,j𝗋,()\tilde{l}_{i,j}^{\mathsf{r},(\ell)} in the extrinsic message passing decoding rule, the input of the row decoder corresponding to code bit ci,jc_{i,j} is given by ri,j=𝖡(li,j)r_{i,j}=\mathsf{B}(l_{i,j}). As 𝖡()\mathsf{B}(\cdot) is a mapper operating on the sign of its input, μ¯i,j𝗋,()\bar{\mu}_{i,j}^{\mathsf{r},(\ell)} only depends on l^i,j\hat{l}_{i,j}. In fact, the extrinsic decoding rule imposes that li,jl^i,jμ¯i,j𝗋,()l_{i,j}\to\hat{l}_{i,j}\to\bar{\mu}_{i,j}^{\mathsf{r},(\ell)} forms a Markov chain, i.e., given l^i,j\hat{l}_{i,j}, μ¯i,j𝗋,()\bar{\mu}_{i,j}^{\mathsf{r},(\ell)} and li,jl_{i,j} are statistically independent. Therefore, one can re-state (6) as

l~i,j𝗋,()=μ~i,j𝗋,()+li,j\displaystyle\tilde{l}_{i,j}^{\mathsf{r},(\ell)}=\tilde{\mu}_{i,j}^{\mathsf{r},(\ell)}+l_{i,j} (7)

where μ~i,j𝗋,()\tilde{\mu}_{i,j}^{\mathsf{r},(\ell)} is defined as

μ~i,j𝗋,()lnOPENp(μ¯i,j𝗋,()|l^i,j,ci,j=0CLOSE)OPENp(μ¯i,j𝗋,()|l^i,j,ci,j=1CLOSE).\displaystyle\tilde{\mu}_{i,j}^{\mathsf{r},(\ell)}\triangleq\ln\frac{{p\mathopen{}\mathclose{{\left({\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}|{\hat{l}_{i,j}},{c_{i,j}}=0}}}\right)}}{{p\mathopen{}\mathclose{{\left({\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}|{\hat{l}_{i,j}},{c_{i,j}}=1}}}\right)}}. (8)

Similarly, for the column-type CN operation the soft value of the VN corresponding to code bit ci,jc_{i,j} is derived as

l~i,j𝖼,()=μ~i,j𝖼,()+li,j,\displaystyle\tilde{l}_{i,j}^{\mathsf{c},(\ell)}=\tilde{\mu}_{i,j}^{\mathsf{c},(\ell)}+l_{i,j}, (9)

where μ~i,j𝖼,()\tilde{\mu}_{i,j}^{\mathsf{c},(\ell)} is defined as

μ~i,j𝖼,()lnOPENp(μ¯i,j𝖼,()|l^i,j,ci,j=0CLOSE)OPENp(μ¯i,j𝖼,()|l^i,j,ci,j=1CLOSE).\displaystyle\tilde{\mu}_{i,j}^{\mathsf{c},(\ell)}\triangleq\ln\frac{{p\mathopen{}\mathclose{{\left({\bar{\mu}_{i,j}^{\mathsf{c},(\ell)}|{\hat{l}_{i,j}},{c_{i,j}}=0}}}\right)}}{{p\mathopen{}\mathclose{{\left({\bar{\mu}_{i,j}^{\mathsf{c},(\ell)}|{\hat{l}_{i,j}},{c_{i,j}}=1}}}\right)}}. (10)

 

x𝗋,()=fP𝖾(x𝖼,(1))𝖰(σ2min(ln(fP𝖾(x𝖼,(1))fQ𝖼(x𝖼,(1))CLOSE),0)+1σ)+fP𝖼(x𝖼,(1))𝖰(σ2min(ln(fP𝖼(x𝖼,(1))fQ𝖾(x𝖼,(1))CLOSE),0)+1σ)+\displaystyle{x}^{\mathsf{r},(\ell)}=\scalebox{0.8}{\mbox{$\displaystyle f^{P^{\mathsf{e}}}({x}^{\mathsf{c},(\ell-1)}){\mathsf{Q}\mathopen{}\mathclose{{\left({\frac{\sigma}{2}\text{min}\mathopen{}\mathclose{{\left(\ln\mathopen{}\mathclose{{\left(\frac{f^{P^{\mathsf{e}}}({x}^{\mathsf{c},(\ell-1)})}{f^{Q^{\mathsf{c}}}({x}^{\mathsf{c},(\ell-1)})}}}\right),0}}\right)+\frac{1}{\sigma}}}}\right)}+f^{P^{\mathsf{c}}}({x}^{\mathsf{c},(\ell-1)}){\mathsf{Q}\mathopen{}\mathclose{{\left({\frac{\sigma}{2}\text{min}\mathopen{}\mathclose{{\left(\ln\mathopen{}\mathclose{{\left(\frac{f^{P^{\mathsf{c}}}({x}^{\mathsf{c},(\ell-1)})}{f^{Q^{\mathsf{e}}}({x}^{\mathsf{c},(\ell-1)})}}}\right),0}}\right)+\frac{1}{\sigma}}}}\right)}$}}+

fPϵ(x𝖼,(1))𝖰(σ2min(ln(fPϵ(x𝖼,(1))fQϵ(x𝖼,(1))CLOSE),0)+1σ)+fQ𝖾(x𝖼,(1))(𝖰(σ2ln(fQ𝖾(x𝖼,(1))fP𝖼(x𝖼,(1))CLOSE)+1σ)𝖰(1σCLOSE))𝕌¯(ln(fQ𝖾(x𝖼,(1))fP𝖼(x𝖼,(1))CLOSE))\displaystyle f^{P^{\mathsf{\epsilon}}}({x}^{\mathsf{c},(\ell-1)}){\mathsf{Q}\mathopen{}\mathclose{{\left({\frac{\sigma}{2}\text{min}\mathopen{}\mathclose{{\left(\ln\mathopen{}\mathclose{{\left(\frac{f^{P^{\mathsf{\epsilon}}}({x}^{\mathsf{c},(\ell-1)})}{f^{Q^{\mathsf{\epsilon}}}({x}^{\mathsf{c},(\ell-1)})}}}\right),0}}\right)+\frac{1}{\sigma}}}}\right)}+f^{Q^{\mathsf{e}}}({x}^{\mathsf{c},(\ell-1)})\mathopen{}\mathclose{{\left({\mathsf{Q}\mathopen{}\mathclose{{\left({\frac{\sigma}{2}\ln\mathopen{}\mathclose{{\left(\frac{f^{Q^{\mathsf{e}}}({x}^{\mathsf{c},(\ell-1)})}{f^{P^{\mathsf{c}}}({x}^{\mathsf{c},(\ell-1)})}}}\right)+\frac{1}{\sigma}}}}\right)}-\mathsf{Q}\mathopen{}\mathclose{{\left(\frac{1}{\sigma}}}\right)}}\right)\cdot\bar{\mathbbm{U}}\mathopen{}\mathclose{{\left(\ln\mathopen{}\mathclose{{\left(\frac{f^{Q^{\mathsf{e}}}({x}^{\mathsf{c},(\ell-1)})}{f^{P^{\mathsf{c}}}({x}^{\mathsf{c},(\ell-1)})}}}\right)}}\right)

+OPENOPENfQ𝖼(x𝖼,(1))(𝖰(σ2ln(fQ𝖼(x𝖼,(1))fP𝖾(x𝖼,(1))CLOSE)+1σ)𝖰(1σCLOSE))𝕌¯(ln(fQ𝖼(x𝖼,(1))fP𝖾(x𝖼,(1))CLOSE))\displaystyle+\scalebox{0.85}{\mbox{$\displaystyle f^{Q^{\mathsf{c}}}({x}^{\mathsf{c},(\ell-1)})\mathopen{}\mathclose{{\left({\mathsf{Q}\mathopen{}\mathclose{{\left({\frac{\sigma}{2}\ln\mathopen{}\mathclose{{\left(\frac{f^{Q^{\mathsf{c}}}({x}^{\mathsf{c},(\ell-1)})}{f^{P^{\mathsf{e}}}({x}^{\mathsf{c},(\ell-1)})}}}\right)+\frac{1}{\sigma}}}}\right)}-\mathsf{Q}\mathopen{}\mathclose{{\left(\frac{1}{\sigma}}}\right)}}\right)\cdot\bar{\mathbbm{U}}\mathopen{}\mathclose{{\left(\ln\mathopen{}\mathclose{{\left(\frac{f^{Q^{\mathsf{c}}}({x}^{\mathsf{c},(\ell-1)})}{f^{P^{\mathsf{e}}}({x}^{\mathsf{c},(\ell-1)})}}}\right)}}\right)$}}
+OPENOPENfQϵ(x𝖼,(1))(𝖰(σ2ln(fQϵ(x𝖼,(1))fPϵ(x𝖼,(1))CLOSE)+1σ)𝖰(1σCLOSE))𝕌¯(ln(fQϵ(x𝖼,(1))fPϵ(x𝖼,(1))CLOSE))\displaystyle+\scalebox{0.85}{\mbox{$\displaystyle f^{Q^{\mathsf{\epsilon}}}({x}^{\mathsf{c},(\ell-1)})\mathopen{}\mathclose{{\left({\mathsf{Q}\mathopen{}\mathclose{{\left({\frac{\sigma}{2}\ln\mathopen{}\mathclose{{\left(\frac{f^{Q^{\mathsf{\epsilon}}}({x}^{\mathsf{c},(\ell-1)})}{f^{P^{\mathsf{\epsilon}}}({x}^{\mathsf{c},(\ell-1)})}}}\right)+\frac{1}{\sigma}}}}\right)}-\mathsf{Q}\mathopen{}\mathclose{{\left(\frac{1}{\sigma}}}\right)}}\right)\cdot\bar{\mathbbm{U}}\mathopen{}\mathclose{{\left(\ln\mathopen{}\mathclose{{\left(\frac{f^{Q^{\mathsf{\epsilon}}}({x}^{\mathsf{c},(\ell-1)})}{f^{P^{\mathsf{\epsilon}}}({x}^{\mathsf{c},(\ell-1)})}}}\right)}}\right)$}} (11)

 

 

x𝖼,()=fP𝖾(x𝗋,())𝖰(σ2min(ln(fP𝖾(x𝗋,())fQ𝖼(x𝗋,())CLOSE),0)+1σ)+fP𝖼(x𝗋,())𝖰(σ2min(ln(fP𝖼(x𝗋,())fQ𝖾(x𝗋,())CLOSE),0)+1σ)+\displaystyle{x}^{\mathsf{c},(\ell)}=\scalebox{0.85}{\mbox{$\displaystyle f^{P^{\mathsf{e}}}({x}^{\mathsf{r},(\ell)}){\mathsf{Q}\mathopen{}\mathclose{{\left({\frac{\sigma}{2}\text{min}\mathopen{}\mathclose{{\left(\ln\mathopen{}\mathclose{{\left(\frac{f^{P^{\mathsf{e}}}({x}^{\mathsf{r},(\ell)})}{f^{Q^{\mathsf{c}}}({x}^{\mathsf{r},(\ell)})}}}\right),0}}\right)+\frac{1}{\sigma}}}}\right)}+f^{P^{\mathsf{c}}}({x}^{\mathsf{r},(\ell)}){\mathsf{Q}\mathopen{}\mathclose{{\left({\frac{\sigma}{2}\text{min}\mathopen{}\mathclose{{\left(\ln\mathopen{}\mathclose{{\left(\frac{f^{P^{\mathsf{c}}}({x}^{\mathsf{r},(\ell)})}{f^{Q^{\mathsf{e}}}({x}^{\mathsf{r},(\ell)})}}}\right),0}}\right)+\frac{1}{\sigma}}}}\right)}$}}+

fPϵ(x𝗋,())𝖰(σ2min(ln(fPϵ(x𝗋,())fQϵ(x𝗋,())CLOSE),0)+1σ)+fQ𝖾(x𝗋,())(𝖰(σ2ln(fQ𝖾(x𝗋,())fP𝖼(x𝗋,())CLOSE)+1σ)𝖰(1σCLOSE))𝕌¯(ln(fQ𝖾(x𝗋,())fP𝖼(x𝗋,())CLOSE))\displaystyle f^{P^{\mathsf{\epsilon}}}({x}^{\mathsf{r},(\ell)}){\mathsf{Q}\mathopen{}\mathclose{{\left({\frac{\sigma}{2}\text{min}\mathopen{}\mathclose{{\left(\ln\mathopen{}\mathclose{{\left(\frac{f^{P^{\mathsf{\epsilon}}}({x}^{\mathsf{r},(\ell)})}{f^{Q^{\mathsf{\epsilon}}}({x}^{\mathsf{r},(\ell)})}}}\right),0}}\right)+\frac{1}{\sigma}}}}\right)}+f^{Q^{\mathsf{e}}}({x}^{\mathsf{r},(\ell)})\mathopen{}\mathclose{{\left({\mathsf{Q}\mathopen{}\mathclose{{\left({\frac{\sigma}{2}\ln\mathopen{}\mathclose{{\left(\frac{f^{Q^{\mathsf{e}}}({x}^{\mathsf{r},(\ell)})}{f^{P^{\mathsf{c}}}({x}^{\mathsf{r},(\ell)})}}}\right)+\frac{1}{\sigma}}}}\right)}-\mathsf{Q}\mathopen{}\mathclose{{\left(\frac{1}{\sigma}}}\right)}}\right)\cdot\bar{\mathbbm{U}}\mathopen{}\mathclose{{\left(\ln\mathopen{}\mathclose{{\left(\frac{f^{Q^{\mathsf{e}}}({x}^{\mathsf{r},(\ell)})}{f^{P^{\mathsf{c}}}({x}^{\mathsf{r},(\ell)})}}}\right)}}\right)

+OPENOPENfQ𝖼(x𝗋,())(𝖰(σ2ln(fQ𝖼(x𝗋,())fP𝖾(x𝗋,())CLOSE)+1σ)𝖰(1σCLOSE))𝕌¯(ln(fQ𝖼(x𝗋,())fP𝖾(x𝗋,())CLOSE))\displaystyle+\scalebox{0.85}{\mbox{$\displaystyle f^{Q^{\mathsf{c}}}({x}^{\mathsf{r},(\ell)})\mathopen{}\mathclose{{\left({\mathsf{Q}\mathopen{}\mathclose{{\left({\frac{\sigma}{2}\ln\mathopen{}\mathclose{{\left(\frac{f^{Q^{\mathsf{c}}}({x}^{\mathsf{r},(\ell)})}{f^{P^{\mathsf{e}}}({x}^{\mathsf{r},(\ell)})}}}\right)+\frac{1}{\sigma}}}}\right)}-\mathsf{Q}\mathopen{}\mathclose{{\left(\frac{1}{\sigma}}}\right)}}\right)\cdot\bar{\mathbbm{U}}\mathopen{}\mathclose{{\left(\ln\mathopen{}\mathclose{{\left(\frac{f^{Q^{\mathsf{c}}}({x}^{\mathsf{r},(\ell)})}{f^{P^{\mathsf{e}}}({x}^{\mathsf{r},(\ell)})}}}\right)}}\right)$}}
+OPENOPENfQϵ(x𝗋,())(𝖰(σ2ln(fQϵ(x𝗋,())fPϵ(x𝗋,())CLOSE)+1σ)𝖰(1σCLOSE))𝕌¯(ln(fQϵ(x𝗋,())fPϵ(x𝗋,())CLOSE))\displaystyle+\scalebox{0.85}{\mbox{$\displaystyle f^{Q^{\mathsf{\epsilon}}}({x}^{\mathsf{r},(\ell)})\mathopen{}\mathclose{{\left({\mathsf{Q}\mathopen{}\mathclose{{\left({\frac{\sigma}{2}\ln\mathopen{}\mathclose{{\left(\frac{f^{Q^{\mathsf{\epsilon}}}({x}^{\mathsf{r},(\ell)})}{f^{P^{\mathsf{\epsilon}}}({x}^{\mathsf{r},(\ell)})}}}\right)+\frac{1}{\sigma}}}}\right)}-\mathsf{Q}\mathopen{}\mathclose{{\left(\frac{1}{\sigma}}}\right)}}\right)\cdot\bar{\mathbbm{U}}\mathopen{}\mathclose{{\left(\ln\mathopen{}\mathclose{{\left(\frac{f^{Q^{\mathsf{\epsilon}}}({x}^{\mathsf{r},(\ell)})}{f^{P^{\mathsf{\epsilon}}}({x}^{\mathsf{r},(\ell)})}}}\right)}}\right)$}} (12)

 

The derivation of μ~i,j𝗋,()\tilde{\mu}_{i,j}^{\mathsf{r},(\ell)} and μ~i,j𝖼,()\tilde{\mu}_{i,j}^{\mathsf{c},(\ell)} under extrinsic iBDD-CR decoding is provided by the next proposition.

Proposition 1

Over the bi-AWGN channel, the values of μ~i,j𝗋,()\tilde{\mu}_{i,j}^{\mathsf{r},(\ell)} and μ~i,j𝖼,()\tilde{\mu}_{i,j}^{\mathsf{c},(\ell)} are provided in Table I and Table II, respectively, where the message error probability at the row-type and column-type CN at the \ellth iteration is given by (11) and (12), respectively, with x𝖼,(0)=p𝖼𝗁{x}^{\mathsf{c},(0)}=p_{\mathsf{ch}}, and the values of fP𝖾(x)f^{P^{\mathsf{e}}}({x}), fP𝖼(x)f^{P^{\mathsf{c}}}({x}), fQ𝖾(x)f^{Q^{\mathsf{e}}}({x}), fQ𝖼(x)f^{Q^{\mathsf{c}}}({x}), fPϵ(x)f^{P^{\mathsf{\epsilon}}}({x}), fQϵ(x)f^{Q^{\mathsf{\epsilon}}}({x}) in Tables III are derived in (20)–(25).

The proof of Proposition 1 is given in Appendix A. Owing to (6), we remark that the combining rule is optimal for GLDPC code ensembles in the sense of minimizing the message error probability, under extrinsic message passing decoding, in the limit of infinitely large blocks.

Table I: μ~i,j𝗋,()\tilde{\mu}_{i,j}^{\mathsf{r},(\ell)} for row-type CN operation (row decoding for PC) over iteration \ell, based on the corresponding BDD output μi,j𝗋,()\mu_{i,j}^{\mathsf{r},(\ell)} and channel output hard decision l^i,j\hat{l}_{i,j}.
μ¯i,j𝗋,()\bar{\mu}_{i,j}^{\mathsf{r},(\ell)} l^i,j\hat{l}_{i,j} μ~i,j𝗋,()\tilde{\mu}_{i,j}^{\mathsf{r},(\ell)}
1-1 1-1 lnfP𝖾(x𝖼,(1))fQ𝖼(x𝖼,(1))\ln\frac{f^{P^{\mathsf{e}}}({x}^{\mathsf{c},(\ell-1)})}{f^{Q^{\mathsf{c}}}({x}^{\mathsf{c},(\ell-1)})}
11 1-1 lnfP𝖼(x𝖼,(1))fQ𝖾(x𝖼,(1))\ln\frac{f^{P^{\mathsf{c}}}({x}^{\mathsf{c},(\ell-1)})}{f^{Q^{\mathsf{e}}}({x}^{\mathsf{c},(\ell-1)})}
00 1-1 lnfPϵ(x𝖼,(1))fQϵ(x𝖼,(1))\ln\frac{f^{P^{\mathsf{\epsilon}}}({x}^{\mathsf{c},(\ell-1)})}{f^{Q^{\mathsf{\epsilon}}}({x}^{\mathsf{c},(\ell-1)})}
1-1 11 lnfQ𝖾(x𝖼,(1))fP𝖼(x𝖼,(1))\ln\frac{f^{Q^{\mathsf{e}}}({x}^{\mathsf{c},(\ell-1)})}{f^{P^{\mathsf{c}}}({x}^{\mathsf{c},(\ell-1)})}
11 11 lnfQ𝖼(x𝖼,(1))fP𝖾(x𝖼,(1))\ln\frac{f^{Q^{\mathsf{c}}}({x}^{\mathsf{c},(\ell-1)})}{f^{P^{\mathsf{e}}}({x}^{\mathsf{c},(\ell-1)})}
00 11 lnfQϵ(x𝖼,(1))fPϵ(x𝖼,(1))\ln\frac{f^{Q^{\mathsf{\epsilon}}}({x}^{\mathsf{c},(\ell-1)})}{f^{P^{\mathsf{\epsilon}}}({x}^{\mathsf{c},(\ell-1)})}
Table II: μ~i,j𝖼,()\tilde{\mu}_{i,j}^{\mathsf{c},(\ell)} for column-type CN operation (column decoding for PC) over iteration \ell, based on the corresponding BDD output μi,j𝖼,()\mu_{i,j}^{\mathsf{c},(\ell)} and channel output hard decision l^i,j\hat{l}_{i,j}.
μ¯i,j𝖼,()\bar{\mu}_{i,j}^{\mathsf{c},(\ell)} l^i,j\hat{l}_{i,j} μ~i,j𝖼,()\tilde{\mu}_{i,j}^{\mathsf{c},(\ell)}
1-1 1-1 lnfP𝖾(x𝗋,())fQ𝖼(x𝗋,())\ln\frac{f^{P^{\mathsf{e}}}({x}^{\mathsf{r},(\ell)})}{f^{Q^{\mathsf{c}}}({x}^{\mathsf{r},(\ell)})}
11 1-1 lnfP𝖼(x𝗋,())fQ𝖾(x𝗋,())\ln\frac{f^{P^{\mathsf{c}}}({x}^{\mathsf{r},(\ell)})}{f^{Q^{\mathsf{e}}}({x}^{\mathsf{r},(\ell)})}
00 1-1 lnfPϵ(x𝗋,())fQϵ(x𝗋,())\ln\frac{f^{P^{\mathsf{\epsilon}}}({x}^{\mathsf{r},(\ell)})}{f^{Q^{\mathsf{\epsilon}}}({x}^{\mathsf{r},(\ell)})}
1-1 11 lnfQ𝖾(x𝗋,())fP𝖼(x𝗋,())\ln\frac{f^{Q^{\mathsf{e}}}({x}^{\mathsf{r},(\ell)})}{f^{P^{\mathsf{c}}}({x}^{\mathsf{r},(\ell)})}
11 11 lnfQ𝖼(x𝗋,())fP𝖾(x𝗋,())\ln\frac{f^{Q^{\mathsf{c}}}({x}^{\mathsf{r},(\ell)})}{f^{P^{\mathsf{e}}}({x}^{\mathsf{r},(\ell)})}
00 11 lnfQϵ(x𝗋,())fPϵ(x𝗋,())\ln\frac{f^{Q^{\mathsf{\epsilon}}}({x}^{\mathsf{r},(\ell)})}{f^{P^{\mathsf{\epsilon}}}({x}^{\mathsf{r},(\ell)})}
Fig. 3: Summary of the notation for the BICM scheme. The message 𝒖\bm{u} is encoded to 𝒃\bm{b}. After interleaving and mapping, 𝒙\bm{x} is sent through a Gaussian channel where the noise 𝒏\bm{n} is added, resulting in 𝒚\bm{y}. The LLRs corresponding to 𝒃\bm{b} are denoted as 𝒍\bm{l}, whereas the decoder output is 𝒖^\hat{\bm{u}}. Φ\Phi maps mm bits to a modulation symbol and Φ1\Phi^{-1} maps a symbol to mm bits.

 

 

x𝗋,()

 
 

=Δ𝗀(x𝖼,(1),σ,M)=fP𝖾(x𝖼,(1))j=0M/21wj𝖰(OPENmin(ln(fP𝖾(x𝖼,(1))fQ𝖼(x𝖼,(1))CLOSE),0)+μjσj)+fP𝖼(x𝖼,(1))j=0M/21wj𝖰(OPENmin(ln(fP𝖼(x𝖼,(1))fQ𝖾(x𝖼,(1))CLOSE),0)+μjσj)

 
+
\displaystyle\scalebox{0.78}{\mbox{$\displaystyle{x}^{\mathsf{r},(\ell)}$}}\scalebox{0.8}{\mbox{$\displaystyle\mathrel{\mathop{\kern 0.0pt=}\limits^{\Delta}}\mathsf{g}({x}^{\mathsf{c},(\ell-1)},\sigma,M)=f^{P^{\mathsf{e}}}({x}^{\mathsf{c},(\ell-1)}){\sum\limits_{j=0}^{M/2-1}{w_{j}}{\mathsf{Q}\biggl(\frac{{\text{min}\mathopen{}\mathclose{{\left(\ln\mathopen{}\mathclose{{\left(\frac{f^{P^{\mathsf{e}}}({x}^{\mathsf{c},(\ell-1)})}{f^{Q^{\mathsf{c}}}({x}^{\mathsf{c},(\ell-1)})}}}\right),0}}\right)+\mu_{j}}}{\sigma_{j}}\biggr)}}+f^{P^{\mathsf{c}}}({x}^{\mathsf{c},(\ell-1)}){\sum\limits_{j=0}^{M/2-1}{w_{j}}{\mathsf{Q}\biggl(\frac{{\text{min}\mathopen{}\mathclose{{\left(\ln\mathopen{}\mathclose{{\left(\frac{f^{P^{\mathsf{c}}}({x}^{\mathsf{c},(\ell-1)})}{f^{Q^{\mathsf{e}}}({x}^{\mathsf{c},(\ell-1)})}}}\right),0}}\right)+\mu_{j}}}{\sigma_{j}}\biggr)}}$}}+

OPENfPϵ(x𝖼,(1))j=0M/21wj𝖰(OPENmin(ln(fPϵ(x𝖼,(1))fQϵ(x𝖼,(1))CLOSE),0)+μjσj)+fQ𝖾(x𝖼,(1))(j=0M/21wj(𝖰(OPENln(fQ𝖾(x𝖼,(1))fP𝖼(x𝖼,(1))CLOSE)+μjσj)𝖰(μjσj)))𝕌¯(ln(fQ𝖾(x𝖼,(1))fP𝖼(x𝖼,(1))CLOSE))\displaystyle f^{P^{\mathsf{\epsilon}}}({x}^{\mathsf{c},(\ell-1)}){\sum\limits_{j=0}^{M/2-1}{w_{j}}{\mathsf{Q}\biggl(\frac{{\text{min}\mathopen{}\mathclose{{\left(\ln\mathopen{}\mathclose{{\left(\frac{f^{P^{\mathsf{\epsilon}}}({x}^{\mathsf{c},(\ell-1)})}{f^{Q^{\mathsf{\epsilon}}}({x}^{\mathsf{c},(\ell-1)})}}}\right),0}}\right)+\mu_{j}}}{\sigma_{j}}\biggr)}}+f^{Q^{\mathsf{e}}}({x}^{\mathsf{c},(\ell-1)})\biggl({\sum\limits_{j=0}^{M/2-1}{w_{j}}\biggl({\mathsf{Q}\biggl(\frac{{\ln\mathopen{}\mathclose{{\left(\frac{f^{Q^{\mathsf{e}}}({x}^{\mathsf{c},(\ell-1)})}{f^{P^{\mathsf{c}}}({x}^{\mathsf{c},(\ell-1)})}}}\right)+\mu_{j}}}{\sigma_{j}}\biggr)}-\mathsf{Q}\biggl(\frac{\mu_{j}}{\sigma_{j}}\biggr)\biggr)}\biggr)\cdot\bar{\mathbbm{U}}\biggl(\ln\mathopen{}\mathclose{{\left(\frac{f^{Q^{\mathsf{e}}}({x}^{\mathsf{c},(\ell-1)})}{f^{P^{\mathsf{c}}}({x}^{\mathsf{c},(\ell-1)})}}}\right)\biggr)

+OPENOPENfQ𝖼(x𝖼,(1))(j=0M/21wj(𝖰(OPENln(fQ𝖼(x𝖼,(1))fP𝖾(x𝖼,(1))CLOSE)+μjσj)𝖰(μjσjCLOSE)))𝕌¯(ln(fQ𝖼(x𝖼,(1))fP𝖾(x𝖼,(1))CLOSE))\displaystyle+\scalebox{0.78}{\mbox{$\displaystyle f^{Q^{\mathsf{c}}}({x}^{\mathsf{c},(\ell-1)})\biggl({\sum\limits_{j=0}^{M/2-1}{w_{j}}\biggl({\mathsf{Q}\biggl(\frac{{\ln\mathopen{}\mathclose{{\left(\frac{f^{Q^{\mathsf{c}}}({x}^{\mathsf{c},(\ell-1)})}{f^{P^{\mathsf{e}}}({x}^{\mathsf{c},(\ell-1)})}}}\right)+\mu_{j}}}{\sigma_{j}}\biggr)}-\mathsf{Q}\mathopen{}\mathclose{{\left(\frac{\mu_{j}}{\sigma_{j}}}}\right)\biggr)}\biggr)\cdot\bar{\mathbbm{U}}\mathopen{}\mathclose{{\left(\ln\mathopen{}\mathclose{{\left(\frac{f^{Q^{\mathsf{c}}}({x}^{\mathsf{c},(\ell-1)})}{f^{P^{\mathsf{e}}}({x}^{\mathsf{c},(\ell-1)})}}}\right)}}\right)$}}
+fQϵ(x𝖼,(1))(j=0M/21wj(𝖰(ln(fQϵ(x𝖼,(1))fPϵ(x𝖼,(1)))+μjσj)𝖰(μjσj))(𝕌¯(ln(fQϵ(x𝖼,(1))fPϵ(x𝖼,(1))CLOSE))\displaystyle+\scalebox{0.78}{\mbox{$\displaystyle f^{Q^{\mathsf{\epsilon}}}({x}^{\mathsf{c},(\ell-1)})\biggl({\sum\limits_{j=0}^{M/2-1}{w_{j}}\biggl({\mathsf{Q}\biggl(\frac{{\ln\biggl(\frac{f^{Q^{\mathsf{\epsilon}}}({x}^{\mathsf{c},(\ell-1)})}{f^{P^{\mathsf{\epsilon}}}({x}^{\mathsf{c},(\ell-1)})}\biggr)+\mu_{j}}}{\sigma_{j}}\biggr)}-\mathsf{Q}\biggl(\frac{\mu_{j}}{\sigma_{j}}\biggr)\biggr)}\biggr(\cdot\bar{\mathbbm{U}}\biggl(\ln\mathopen{}\mathclose{{\left(\frac{f^{Q^{\mathsf{\epsilon}}}({x}^{\mathsf{c},(\ell-1)})}{f^{P^{\mathsf{\epsilon}}}({x}^{\mathsf{c},(\ell-1)})}}}\right)\biggr)$}} (13)

 

 

x𝖼,()=Δ𝗀(x𝗋,(),σ,M)=fP𝖾(x𝗋,())j=0M/21wj𝖰(OPENmin(ln(fP𝖾(x𝗋,())fQ𝖼(x𝗋,())CLOSE),0)+μjσj)+fP𝖼(x𝗋,())j=0M/21wj𝖰(OPENmin(ln(fP𝖼(x𝗋,())fQ𝖾(x𝗋,())CLOSE),0)+μjσj)+\displaystyle{x}^{\mathsf{c},(\ell)}\mathrel{\mathop{\kern 0.0pt=}\limits^{\Delta}}\mathsf{g}({x}^{\mathsf{r},(\ell)},\sigma,M)=\scalebox{0.8}{\mbox{$\displaystyle f^{P^{\mathsf{e}}}({x}^{\mathsf{r},(\ell)}){\sum\limits_{j=0}^{M/2-1}{w_{j}}{\mathsf{Q}\biggl(\frac{{\text{min}\mathopen{}\mathclose{{\left(\ln\mathopen{}\mathclose{{\left(\frac{f^{P^{\mathsf{e}}}({x}^{\mathsf{r},(\ell)})}{f^{Q^{\mathsf{c}}}({x}^{\mathsf{r},(\ell)})}}}\right),0}}\right)+\mu_{j}}}{\sigma_{j}}\biggr)}}+f^{P^{\mathsf{c}}}({x}^{\mathsf{r},(\ell)}){\sum\limits_{j=0}^{M/2-1}{w_{j}}{\mathsf{Q}\biggl(\frac{{\text{min}\mathopen{}\mathclose{{\left(\ln\mathopen{}\mathclose{{\left(\frac{f^{P^{\mathsf{c}}}({x}^{\mathsf{r},(\ell)})}{f^{Q^{\mathsf{e}}}({x}^{\mathsf{r},(\ell)})}}}\right),0}}\right)+\mu_{j}}}{\sigma_{j}}\biggr)}}$}}+

OPENOPENfPϵ(x𝗋,())j=0M/21wj𝖰(OPENmin(ln(fPϵ(x𝗋,())fQϵ(x𝗋,())CLOSE),0)+μjσj)+fQ𝖾(x𝗋,())(j=0M/21wj(𝖰(OPENln(fQ𝖾(x𝗋,())fP𝖼(x𝗋,())CLOSE)+μjσj)𝖰(μjσjCLOSE)))𝕌¯(ln(fQ𝖾(x𝗋,())fP𝖼(x𝗋,())CLOSE))\displaystyle f^{P^{\mathsf{\epsilon}}}({x}^{\mathsf{r},(\ell)}){\sum\limits_{j=0}^{M/2-1}{w_{j}}{\mathsf{Q}\biggl(\frac{{\text{min}\mathopen{}\mathclose{{\left(\ln\mathopen{}\mathclose{{\left(\frac{f^{P^{\mathsf{\epsilon}}}({x}^{\mathsf{r},(\ell)})}{f^{Q^{\mathsf{\epsilon}}}({x}^{\mathsf{r},(\ell)})}}}\right),0}}\right)+\mu_{j}}}{\sigma_{j}}\biggr)}}+f^{Q^{\mathsf{e}}}({x}^{\mathsf{r},(\ell)})\biggl({\sum\limits_{j=0}^{M/2-1}{w_{j}}\biggl({\mathsf{Q}\biggl(\frac{{\ln\mathopen{}\mathclose{{\left(\frac{f^{Q^{\mathsf{e}}}({x}^{\mathsf{r},(\ell)})}{f^{P^{\mathsf{c}}}({x}^{\mathsf{r},(\ell)})}}}\right)+\mu_{j}}}{\sigma_{j}}\biggr)}-\mathsf{Q}\mathopen{}\mathclose{{\left(\frac{\mu_{j}}{\sigma_{j}}}}\right)\biggr)}\biggr)\cdot\bar{\mathbbm{U}}\mathopen{}\mathclose{{\left(\ln\mathopen{}\mathclose{{\left(\frac{f^{Q^{\mathsf{e}}}({x}^{\mathsf{r},(\ell)})}{f^{P^{\mathsf{c}}}({x}^{\mathsf{r},(\ell)})}}}\right)}}\right)

+OPENOPENfQ𝖼(x𝗋,())(j=0M/21wj(𝖰(OPENln(fQ𝖼(x𝗋,())fP𝖾(x𝗋,())CLOSE)+μjσj)𝖰(μjσjCLOSE)))𝕌¯(ln(fQ𝖼(x𝗋,())fP𝖾(x𝗋,())CLOSE))\displaystyle+\scalebox{0.8}{\mbox{$\displaystyle f^{Q^{\mathsf{c}}}({x}^{\mathsf{r},(\ell)})\biggl({\sum\limits_{j=0}^{M/2-1}{w_{j}}\biggl({\mathsf{Q}\biggl(\frac{{\ln\mathopen{}\mathclose{{\left(\frac{f^{Q^{\mathsf{c}}}({x}^{\mathsf{r},(\ell)})}{f^{P^{\mathsf{e}}}({x}^{\mathsf{r},(\ell)})}}}\right)+\mu_{j}}}{\sigma_{j}}\biggr)}-\mathsf{Q}\mathopen{}\mathclose{{\left(\frac{\mu_{j}}{\sigma_{j}}}}\right)\biggr)}\biggr)\cdot\bar{\mathbbm{U}}\mathopen{}\mathclose{{\left(\ln\mathopen{}\mathclose{{\left(\frac{f^{Q^{\mathsf{c}}}({x}^{\mathsf{r},(\ell)})}{f^{P^{\mathsf{e}}}({x}^{\mathsf{r},(\ell)})}}}\right)}}\right)$}}
+OPENOPENfQϵ(x𝗋,())(j=0M/21wj(𝖰(OPENln(fQϵ(x𝗋,())fPϵ(x𝗋,())CLOSE)+μjσj)𝖰(μjσjCLOSE)))𝕌¯(ln(fQϵ(x𝗋,())fPϵ(x𝗋,())CLOSE))\displaystyle+\scalebox{0.8}{\mbox{$\displaystyle f^{Q^{\mathsf{\epsilon}}}({x}^{\mathsf{r},(\ell)})\biggl({\sum\limits_{j=0}^{M/2-1}{w_{j}}\biggl({\mathsf{Q}\biggl(\frac{{\ln\mathopen{}\mathclose{{\left(\frac{f^{Q^{\mathsf{\epsilon}}}({x}^{\mathsf{r},(\ell)})}{f^{P^{\mathsf{\epsilon}}}({x}^{\mathsf{r},(\ell)})}}}\right)+\mu_{j}}}{\sigma_{j}}\biggr)}-\mathsf{Q}\mathopen{}\mathclose{{\left(\frac{\mu_{j}}{\sigma_{j}}}}\right)\biggr)}\biggr)\cdot\bar{\mathbbm{U}}\mathopen{}\mathclose{{\left(\ln\mathopen{}\mathclose{{\left(\frac{f^{Q^{\mathsf{\epsilon}}}({x}^{\mathsf{r},(\ell)})}{f^{P^{\mathsf{\epsilon}}}({x}^{\mathsf{r},(\ell)})}}}\right)}}\right)$}} (14)

 

IV-B Density Evolution Analysis for BICM with M2M^{2}-QAM

BICM [21, 22] (see Fig. 3) has become a de-facto standard in optical communications [23, 24] due to the inherent flexibility and implementation simplicity. One can see the M2M^{2}-QAM modulation as a Cartesian product of two amplitude shift keying (ASK) modulations, i.e, the real and imaginary parts of each M2M^{2}-QAM symbol are chosen form an MM-ASK constellation. More specifically, for M=2mM=2^{m}, the constellation points for both real and imaginary parts of the M2M^{2}-QAM symbol are chosen from 𝒳{(2m+1)Δ,,Δ,Δ,,(2m1)Δ}\mathcal{X}\triangleq\{(-2^{m}+1)\cdot\Delta,...,-\Delta,\Delta,...,(2^{m}-1)\cdot\Delta\} where Δ=32(M21)\Delta=\sqrt{\frac{3}{2(M^{2}-1)}} is a scaling factor which normalizes the resulting M2M^{2}-QAM constellation energy to 11. In the following, we only consider transmission of the real part of M2M^{2}-QAM, as the real and imaginary parts can be treated independently for the AWGN channel. We consider binary reflected Gray coding (BRGC) mapping [25]. The output of the AWGN channel at time instant ii corresponding to ASK symbol xix_{i} is given by

yi=xi+ni,\displaystyle y_{i}=x_{i}+n_{i}, (15)

where xi𝒳x_{i}\in\mathcal{X} and ni𝒩(0,σ2)n_{i}\sim\mathcal{N}(0,\sigma^{2}). The LLR of the kk-th bit level of yiy_{i} is given as

OPENlik=ln(a𝒮k0e(yia)22σ2a𝒮k1e(yia)22σ2CLOSE),k=1,,m\displaystyle l_{i}^{k}=\ln\mathopen{}\mathclose{{\left(\frac{\sum\limits_{a\in\mathcal{S}_{k}^{0}}{{e^{-\frac{{({y_{i}}-a{)^{2}}}}{{2\sigma^{2}}}}}}}{{\sum\limits_{a\in\mathcal{S}_{k}^{1}}{{e^{-\frac{{({y_{i}}-a{)^{2}}}}{{2\sigma^{2}}}}}}}}}}\right),\;k=1,\cdots,m (16)

where 𝒮k0𝒳\mathcal{S}_{k}^{0}\subset\mathcal{X} and 𝒮k1𝒳\mathcal{S}_{k}^{1}\subset\mathcal{X} are sets of size 2m2^{m} ASK symbols with 00 and 11 as the kkth bit of the corresponding BRGC label, respectively. To alleviate the complexity of the LLR computation the well-known max-log approximation is usually used, yielding [26, Eq. 6]

lik\displaystyle l_{i}^{k} 12σ2[maxa𝒮l0{(yiaCLOSE)2}maxa𝒮l1{(yiaCLOSE)2}]\displaystyle\approx\frac{1}{{2{\sigma^{2}}}}\mathopen{}\mathclose{{\left[{\mathop{\max}\limits_{a\in{\cal S}_{l}^{0}}\mathopen{}\mathclose{{\left\{{{{-\mathopen{}\mathclose{{\left({{y_{i}}-a}}}\right)}^{2}}}}}\right\}-\mathop{\max}\limits_{a\in{\cal S}_{l}^{1}}\mathopen{}\mathclose{{\left\{{{{-\mathopen{}\mathclose{{\left({{y_{i}}-a}}}\right)}^{2}}}}}\right\}}}}\right]
=12σ2[mina𝒮l1{(yiaCLOSE)2}mina𝒮l0{(yiaCLOSE)2}].\displaystyle=\frac{1}{{2{\sigma^{2}}}}\mathopen{}\mathclose{{\left[{\mathop{\min}\limits_{a\in{\cal S}_{l}^{1}}\mathopen{}\mathclose{{\left\{{{{\mathopen{}\mathclose{{\left({{y_{i}}-a}}}\right)}^{2}}}}}\right\}-\mathop{\min}\limits_{a\in{\cal S}_{l}^{0}}\mathopen{}\mathclose{{\left\{{{{\mathopen{}\mathclose{{\left({{y_{i}}-a}}}\right)}^{2}}}}}\right\}}}}\right]. (17)
OPENOPENp(l|bCLOSE)=j=0M21wj𝖦(l,(1CLOSE)bμj,σj2),\displaystyle p\mathopen{}\mathclose{{\left({l|b}}}\right)=\sum\limits_{j=0}^{\frac{M}{2}-1}{{w_{j}}}{\mathsf{G}}({l;\mathopen{}\mathclose{{\left({-1}}}\right)^{b}}{\mu_{j}},\sigma_{j}^{2}), (18)

where ll is the LLR corresponding to transmitted bit b{0,1}b\in\{0,1\}, wj=OPEN2(2mlog2(j+1CLOSE)1)mM{w_{j}}=\frac{{2\mathopen{}\mathclose{{\left({{2^{m-\mathopen{}\mathclose{{\left\lceil{{{\log}_{2}}\mathopen{}\mathclose{{\left({j+1}}}\right)}}}\right\rceil}}-1}}}\right)}}{{m\cdot M}}, μj=2Δ2(j+1)2σ2\mu_{j}=\frac{2\Delta^{2}(j+1)^{2}}{\sigma^{2}}, and σj2=4Δ2(j+1)2σ2\sigma^{2}_{j}=\frac{4\Delta^{2}(j+1)^{2}}{\sigma^{2}}, respectively. To proceed with the DE analysis, we assume that the all-zero codeword is transmitted. This leads to the need to symmetrizing the LLR distribution. To achieve this, we resort to the use of channel adapters [27]. Denote by l¯\bar{l} the LLR of the symmetrized BICM channel. The distribution of l¯\bar{l} is given as [28, Eq. (19)]

OPENp(l¯|bCLOSE)=OPENOPENp(l|bCLOSE)+p(l|1bCLOSE)2.\displaystyle p\mathopen{}\mathclose{{\left(\bar{l}|b}}\right)=\frac{p\mathopen{}\mathclose{{\left({l|b}}}\right)+p\mathopen{}\mathclose{{\left({-l|1-b}}}\right)}{2}. (19)
Proposition 2

For a BICM scheme with BRGC mapping, the message error probability at the row-type and column-type CN at the \ellth iteration is given by (13) and (14), respectively, with

OPENx𝖼,(0)=j=0M21wj𝖰(μjσjCLOSE).{x}^{\mathsf{c},(0)}=\sum\limits_{j=0}^{\frac{M}{2}-1}{{w_{j}}}\cdot\mathsf{Q}\mathopen{}\mathclose{{\left(\frac{\mu_{j}}{\sigma_{j}}}}\right).

The proof is given in Appendix B.

V Numerical Results

In this section, in order to have a direct comparison with iBDD-SR, we consider PCs with the same component codes as those considered in [8], i.e., PCs with (255255,231231,33) and (511511,484484,33) BCH component codes.55 5 Component codes with long block length and t=3t=3 are interesting for fiber-optic communications as their error floor is below 101510^{-15} and the decoder can be efficiently implemented using LUTs [5, Appendix I]. The code rates of the PCs are R=0.820R=0.820 and 0.8970.897, respectively. Also, we consider 1212 decoding iterations.

Remark 4

In the case of errors with high reliability, i.e., LLRs with high magnitude and wrong sign, the decoding rule in (3)–(4) will be unable to correct such errors, as it is likely that 𝖡(l~i,j𝗋,())=𝖡(li,j)\mathsf{B}(\tilde{l}_{i,j}^{\mathsf{r},(\ell)})=\mathsf{B}({l}_{i,j}). Therefore, similar to iBDD-SR [8, Sec. VI], one should selectively apply iBDD-CR to to increase the chance of correcting such errors. In particular, unless otherwise specified, we consider iBDD-CR and iBDD-SR for some iterations and then we append a few conventional iBDD iterations. The additional iBDD iterations increase the chance of correcting transmission errors with high reliability, as the iBDD decoding rule is independent of channel reliabilities. Specifically, we consider a maximum of 1010 iBDD-CR (or iBDD-SR) iterations followed by 22 conventional iBDD iterations. For the sake of fairness, other decoding algorithms are evaluated with 1212 decoding iterations.

Fig. 4: Comparison between DE thresholds (computed for the relevant GLDPC ensembles) and BER performance of iBDD-CR and iBDD-SR algorithms applied to PCs. The BCH component codes for (a) and (b) have parameters (255255,231231,33) and (511511,484484,33), respectively.
Fig. 5: Performance of iBDD, ideal iBDD, AD, iBDD-SR, and iBDD-CR for a PC with a (255255,231231,33) BCH component code and a staircase code with a (511511,484484,33) BCH component code.
Fig. 6: Performance of iBDD, ideal iBDD, iBDD-SR, and iBDD-CR with unquantized LLRs for a (255255,231231,33) BCH component code in a BICM scheme with 1616-QAM, 6464-QAM, and 256256-QAM modulation.
Fig. 7: Performance of iBDD-CR with different appended iBDD iterations for the BICM channel with 1616-QAM modulation and PC with BCH component code (255255,231231,33).

We highlight that for the PC performance simulation, we obtain the values of μ~i,j𝗋,()\tilde{\mu}_{i,j}^{\mathsf{r},(\ell)} and μ~i,j𝖼,()\tilde{\mu}_{i,j}^{\mathsf{c},(\ell)} from the DE for a single Eb/N0E_{\mathrm{b}}/N_{0}, corresponding to an SNR point in the waterfall region. We found that changing the operating SNR point in the waterfall region (which in principle results in different values for μ~i,j𝗋,()\tilde{\mu}_{i,j}^{\mathsf{r},(\ell)} and μ~i,j𝖼,()\tilde{\mu}_{i,j}^{\mathsf{c},(\ell)}) yields a minor performance difference in the simulation results. Furthermore, in the following simulation results we restrict to μ~i,j𝗋,()=μ~i,j𝖼,()\tilde{\mu}_{i,j}^{\mathsf{r},(\ell)}=\tilde{\mu}_{i,j}^{\mathsf{c},(\ell)}, i.e., for a given decoding iteration the values of μ~i,j𝗋,()\tilde{\mu}_{i,j}^{\mathsf{r},(\ell)} in Table I are used for both row and column decoding, as we found that this induces a negligible performance loss.

In Fig. 4, the performance of PCs with iBDD-CR and iBDD-SR over the bi-AWGN channel is shown and compared with the DE thresholds of the corresponding GLDPC code ensembles. As it can be seen, the performance improvement of iBDD-CR over iBDD-SR is well-predicted by the DE analysis, confirming that DE can be used for as a tool for the optimization of the decoding algorithm. The gap between the DE thresholds and the BER curves is due to two reasons. First and foremost, DE predicts the performance of the GLDPC code ensemble with infinite long block length. By increasing the PC component code block length from 255255 to 511511, the gap is reduced, as it can be seen in Fig. 4. Second, DE analysis relies on an extrinsic message passing variation of the algorithms, whereas the simulation results employ standard (intrinsic) message passing.

Table III: Comparison of iBDD-CR and iBDD for PCs with (255255,231231,33) and (511511,484484,33) BCH component codes, with code rates of 0.8200.820 and 0.8970.897, respectively. The Eb/N0E_{\mathrm{b}}/N_{0} for iBDD and iBDD-CR are measured at BER=106\text{BER}=10^{-6} from the simulations. The corresponding Shannon limits are also shown.
component code decoding algorithm Eb/N0E_{\mathrm{b}}/N_{0} [dB] Shannon limit [dB]
(255255,231231,33) iBDD 4.624.62 3.543.54 (HD)
(255255,231231,33) iBDD-CR 4.294.29 2.232.23 (SD)
(511511,484484,33) iBDD 5.185.18 4.364.36 (HD)
(511511,484484,33) iBDD-CR 4.894.89 3.153.15 (SD)

In Fig. 5, we show the performance of iBDD-CR, iBDD, ideal iBDD, anchor decoding (AD) [7], and iBDD-SR for transmission over the bi-AWGN channel. One can see that iBDD-CR outperforms all other decoders. In particular, iBDD-CR performs even better than ideal iBDD. The performance gain of iBDD-CR over iBDD is 0.360.36 dB and 0.290.29 dB for PCs with component codes (255255,231231,33) and (511511,484484,33), respectively. In Table III, we show the required Eb/N0E_{\mathrm{b}}/N_{0} for iBDD-CR and iBDD to achieve a BER of 10610^{-6}. We also show the corresponding hard-decision (HD) and soft-decision (SD) Shannon limits. Note that iBDD should be compared with the HD Shannon limit, while iBDD-CR should be compared with the SD counterpart, as the algorithm exploits the channel LLRs. The gap between the performance of iBDD-CR and the SD Shannon limit is mainly due to the fact that the structure of iBDD-CR structure is intentionally kept very similar to that of iBDD, in order to constrain the decoder complexity and the internal decoder data flow. By allowing the exchange of soft information between component decoders this gap can be closed further at the cost of significantly higher data flow and complexity (see [9, 10, 11] for more details).

In Fig. 6, we show the performance of a BICM system using a PC with component code (255255,231231,33) for iBDD, ideal iBDD, iBDD-SR, and iBDD-CR and 1616-QAM, 6464-QAM, and 256256-QAM. We also show the DE threshold for the corresponding GLDPC ensemble. iBDD-CR outperforms others decoders and the DE analysis predicts the performance of iBDD-CR accurately. Furthermore, the gain of iBDD-CR over iBDD improves by increasing the modulation order; the gain is up to 0.510.51 dB for 256256-QAM.

In Fig. 7, we examine the effect of appended iBDD iterations on the performance of iBDD-CR. We split the total of 1212 decoding iterations between iBDD-CR and iBDD. As it can be seen, increasing the number of iBDD-CR iterations yields a performance improvement, where such improvement saturates at 1010 iBDD-CR and 22 iBDD iterations. This motivates the choice of appending 22 iBDD iterations for performance evaluation of iBDD-CR (see Remark 4).

Fig. 8: Comparison between the PDF of the LLRs and the corresponding quantized PMF using 33 bits for 1616-QAM modulation and Es/N0=12.92E_{\mathrm{s}}/N_{0}=12.92 dB. The dashed line shows the boundaries of the optimized nonuniform quantization based on the Lloyd-Max algorithm.
Fig. 9: Performance of iBDD-CR with exact, max-log approximation, and quantized channel LLRs for the BICM channel with 1616-QAM modulation and PC with BCH component code (255255,231231,33).

To evaluate the sensitivity of iBDD-CR to channel LLR quantization, we resort to a classical quantization scheme called Lloyd–Max algorithm [29, 30], which aims at optimizing the quantization levels in the sense of minimizing the mean squared error between LLRs and the corresponding quantized values.66 6 We highlight that in this paper our approach is to just show the feasibility of iBDD-CR implementation with limited channel LLR quantization levels, using a known quantization technique. In general, one can exploit the properties of the quantized channel in decoding rule to reduce the sensitivity to quantization errors. This analysis is beyond the scope of this paper. As an example, Fig. 8 shows the distribution of LLRs for 1616-QAM at Es/N0=12.92E_{\mathrm{s}}/N_{0}=12.92 dB,77 7 We highlight that Es/N0=12.92E_{\mathrm{s}}/N_{0}=12.92 dB corresponds to Eb/N0=7.76E_{\mathrm{b}}/N_{0}=7.76 dB which is a point selected in the waterfall region of iBDD-CR (see Fig. 7). the optimized quantization values, and the corresponding boundaries using 33 bits based on the Lloyd–Max algorithm. As it can be seen, Lloyd–Max yields nonuniform quantization values.

In Fig. 9, we investigate the effect of max-log channel LLR approximation and channel LLR quantization based on the Lloyd–Max algorithm on the performance of iBDD-CR. In particular, we consider a BICM channel with 1616-QAM modulation, PC with BCH component code (255255,231231,33), and 33-bit and 44-bit quantization. One can see that the performance of iBDD-CR with exact channel LLR computation (16) and max-log channel LLR approximation (17) is almost identical, hence, in a practical system max-log approximation can be employed to reduce the complexity of LLR computations. Furthermore, at a BER of 10710^{-7}, the performance loss of iBDD-CR with 33 and 44 bits nonuniform channel LLR quantization based on the Lloyd-Max algorithm is small, i.e., 0.070.07 dB and 0.0450.045 dB, respectively. This shows that iBDD-CR has a low sensitivity to channel LLR quantization.

VI Conclusion

We proposed an iterative soft-aided decoding algorithm for PCs, called iBDD-CR. iBDD-CR exploits the LLRs in the BDD of the component codes and has the same decoder data flow as that of conventional iBDD. We performed a DE analysis of the GLDPC code ensemble containing PCs for both the bi-AWGN and BICM channels under extrinsic message passing. From the analysis, an accurate estimate of the reliability of the BDD outbound messages, which is essential for implementing the iBDD-CR was derived. The proposed algorithm attains gains up to 0.510.51 dB over conventional iBDD and outperforms ideal iBDD. We showed that iBDD-CR has a low sensitivity to quantization errors on the channel LLRs and can be implemented using the low-complexity max-log LLR approximation. Overall, the low required internal data flow and low sensitivity to quantization errors of iBDD-CR makes it an attractive solution for optical communication for 400400G and beyond, where an excellent performance along with stringent constraint on latency and power consumption are required.

We remark that iBDD-CR requires some extra memory compared to iBDD to store the channel LLRs and the LUTs. The exact required extra memory depends on the level of parallelism in implementing row/column decoding and the relative required clock cycles of BDD and combining stages. Therefore, the complexity of iBDD-CR should be investigated via hardware implementation, which is left as future work.

Acknowledgment

The authors would like to thank Dr. Alexios Balatsoukas-Stimming for fruitful discussions about the complexity of iBDD-CR.

Appendix A Proof of Proposition 1

Let us consider the decoding of row-type CNs. In particular, we first compute μ~i,j𝗋,()\tilde{\mu}_{i,j}^{\mathsf{r},(\ell)} and then we calculate x𝗋,(){x}^{\mathsf{r},(\ell)}. At the first iteration, we have x𝖼,(0)=p𝖼𝗁{x}^{\mathsf{c},(0)}=p_{\mathsf{ch}}, i.e., the input of the row-type CN is initialized with the channel error probability. Let l^i,j\hat{l}_{i,j} be the RV representing the sign of the LLR corresponding to code bit ci,jc_{i,j} (see Fig. 1). To compute μ~i,j𝗋,()\tilde{\mu}_{i,j}^{\mathsf{r},(\ell)} (see (8)), we should compute the probabilities of p(μ¯i,j𝗋,()|l^i,j,ci,j=0)\displaystyle p({\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}|{\hat{l}_{i,j}},{c_{i,j}}=0}) and p(μ¯i,j𝗋,()|l^i,j,ci,j=1)\displaystyle p({\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}|{\hat{l}_{i,j}},{c_{i,j}}=1}) . Depending on the values of l^i,j{±1}\hat{l}_{i,j}\in\{\pm 1\} and μi,j𝗋,(){0,±1}\mu_{i,j}^{\mathsf{r},(\ell)}\in\{0,\pm 1\}, six different terms for p(μ¯i,j𝗋,()|l^i,j,ci,j=0)\displaystyle p({\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}|{\hat{l}_{i,j}},{c_{i,j}}=0}) and p(μ¯i,j𝗋,()|l^i,j,ci,j=1)\displaystyle p({\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}|{\hat{l}_{i,j}},{c_{i,j}}=1}) are possible (1212 in total). The term p(μ¯i,jr,()=1|l^i,j=1,ci,j=0)\displaystyle p({\bar{\mu}_{i,j}^{r,(\ell)}=-1|{\hat{l}_{i,j}=-1},{c_{i,j}}=0}) is the probability of error at the BDD output given that the channel output is also in error. One can check that this is exactly the definition of p(μ¯i,j𝗋,()=1|l^i,j=1,ci,j=1)\displaystyle p({\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}=1|{\hat{l}_{i,j}=1},{c_{i,j}}=1}) as the values for μ¯i,j𝗋,()\bar{\mu}_{i,j}^{\mathsf{r},(\ell)} and l^i,j\hat{l}_{i,j} are changed from 1-1 to 11 and the value for ci,jc_{i,j} is changed from 00 to 11. Therefore, p(μ¯i,j𝗋,()=1|l^i,j=1,ci,j=0)=p(μ¯i,j𝗋,()=1|l^i,j=1,ci,j=1)\scalebox{0.9}{\mbox{$\displaystyle p({\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}=-1|{\hat{l}_{i,j}=-1},{c_{i,j}}=0})$}}=\scalebox{0.9}{\mbox{$\displaystyle p({\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}=1|{\hat{l}_{i,j}=1},{c_{i,j}}=1})$}}. Similarly, the following relations also hold:
p(μ¯i,j𝗋,()=1|l^i,j=1,ci,j=0)=p(μ¯i,j𝗋,()=1|l^i,j=1,ci,j=1)\scalebox{0.9}{\mbox{$\displaystyle p({\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}=1|{\hat{l}_{i,j}=1},{c_{i,j}}=0})$}}=\scalebox{0.9}{\mbox{$\displaystyle p({\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}=-1|{\hat{l}_{i,j}=-1},{c_{i,j}}=1})$}}, p(μ¯i,j𝗋,()=1|l^i,j=1,ci,j=0)=p(μ¯i,jr,()=1|l^i,j=1,ci,j=1)\scalebox{0.9}{\mbox{$\displaystyle p({\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}=1|{\hat{l}_{i,j}=-1},{c_{i,j}}=0})$}}=\scalebox{0.9}{\mbox{$\displaystyle p({\bar{\mu}_{i,j}^{r,(\ell)}=-1|{\hat{l}_{i,j}=1},{c_{i,j}}=1})$}}, p(μ¯i,j𝗋,()=1|l^i,j=1,ci,j=0)=p(μ¯i,jr,()=1|l^i,j=1,ci,j=1)\scalebox{0.9}{\mbox{$\displaystyle p({\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}=-1|{\hat{l}_{i,j}=1},{c_{i,j}}=0})$}}=\scalebox{0.9}{\mbox{$\displaystyle p({\bar{\mu}_{i,j}^{r,(\ell)}=1|{\hat{l}_{i,j}=-1},{c_{i,j}}=1})$}}, p(μ¯i,j𝗋,()=0|l^i,j=1,ci,j=0)=p(μ¯i,j𝗋,()=0|l^i,j=1,ci,j=1)\scalebox{0.9}{\mbox{$\displaystyle p({\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}=0|{\hat{l}_{i,j}=-1},{c_{i,j}}=0})$}}=\scalebox{0.9}{\mbox{$\displaystyle p({\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}=0|{\hat{l}_{i,j}=1},{c_{i,j}}=1})$}}, and p(μ¯i,j𝗋,()=0|l^i,j=1,ci,j=0)=p(μ¯i,j𝗋,()=0|l^i,j=1,ci,j=1)\scalebox{0.85}{\mbox{$\displaystyle p({\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}=0|{\hat{l}_{i,j}=1},{c_{i,j}}=0})$}}=\scalebox{0.85}{\mbox{$\displaystyle p({\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}=0|{\hat{l}_{i,j}=-1},{c_{i,j}}=1})$}}.

We assume all-zero codeword transmission. Such assumption yields the computation of six different terms corresponding to p(μ¯i,j𝗋,()|l^i,j,ci,j=0)\displaystyle p({\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}|{\hat{l}_{i,j}},{c_{i,j}}=0}) .

Let x{x} be the input error probability to the row-type CNs for the BDD stage and denote by fP𝖾(x)f^{P^{\mathsf{e}}}({x}) the probability that a randomly selected bit in the component code’s codeword is decoded incorrectly when it was initially in error. The notion of randomly selected bit is motivated due to the fact that we analyze the ensemble given in Fig. 2(c), where the connection between VN and CN is randomly built. Also, we use the notion of initially in error as we analyze the extrinsic message passing where in each iteration the input corresponding to ci,jc_{i,j} is substituted by channel input ri,jr_{i,j} (see (5)). Furthermore, we denote by OPENP𝖾(iCLOSE)P^{\mathsf{e}}\mathopen{}\mathclose{{\left(i}}\right) the probability that a randomly selected bit in the component code’s codeword is decoded incorrectly when it was initially in error and there are ii errors in the other n1n-1 positions. OPENP𝖾(iCLOSE)P^{\mathsf{e}}\mathopen{}\mathclose{{\left(i}}\right) was derived in [8, Eq. (5)] for iBDD-SR and the same expression holds for iBDD-CR. fP𝖾(x)f^{P^{\mathsf{e}}}({x}) is then obtained based on the union of (independent) events for i{0,,n1}i\in\{0,\cdots,n-1\} random errors as

OPENfP𝖾(x)=Δp(μ¯i,j𝗋,()=1|l^i,j=1,ci,j=0)=i=0n1bin(x)P𝖾(iCLOSE).\displaystyle\scalebox{0.86}{\mbox{$\displaystyle f^{P^{\mathsf{e}}}({x})\mathrel{\mathop{\kern 0.0pt=}\limits^{\Delta}}p(\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}=-1|{\hat{l}_{i,j}}=-1,c_{i,j}=0)=\sum\limits_{i=0}^{n-1}b^{n}_{i}(x){P^{\mathsf{e}}\mathopen{}\mathclose{{\left(i}}\right)}$}}. (20)

where OPENbin(x)=Δ(n1i)xi(1xCLOSE)ni1b^{n}_{i}(x)\mathrel{\mathop{\kern 0.0pt=}\limits^{\Delta}}{{n-1}\choose{i}}{{x}^{i}}{\mathopen{}\mathclose{{\left({1-{x}}}}\right)^{n-i-1}}.

We denote by fP𝖼(x)f^{P^{\mathsf{c}}}({x}) and fPϵ(x)f^{P^{\mathsf{\epsilon}}}({x}) the probability that a randomly selected bit in the component code’s codeword is decoded correctly and erased,88 8 Note the μ¯i,j𝗋,()=0\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}=0 corresponds to the erasure output of BDD. respectively, when it was initially in error. Furthermore, we denote by OPENP𝖼(iCLOSE)P^{\mathsf{c}}\mathopen{}\mathclose{{\left(i}}\right) and Pϵ(i)P^{\epsilon}(i) the probability that a randomly selected bit in the component code’s codeword is decoded correctly and erased, respectively, when it was initially in error and there are ii errors in the other n1n-1 positions. OPENP𝖼(iCLOSE)P^{\mathsf{c}}\mathopen{}\mathclose{{\left(i}}\right) is given in [8, Eq. (9)] and OPENOPENPϵ(i)=1P𝖾(iCLOSE)P𝖼(iCLOSE)P^{\epsilon}(i)=1-P^{\mathsf{e}}\mathopen{}\mathclose{{\left(i}}\right)-P^{\mathsf{c}}\mathopen{}\mathclose{{\left(i}}\right). Similar to the derivation of (20), fP𝖼(x)f^{P^{\mathsf{c}}}({x}) and fPϵ(x)f^{P^{\mathsf{\epsilon}}}({x}) are obtained as

OPENfP𝖼(x)=Δp(μ¯i,j𝗋,()=1|l^i,j=1,ci,j=0)=i=0n1bin(x)P𝖼(iCLOSE),\displaystyle\scalebox{0.86}{\mbox{$\displaystyle f^{P^{\mathsf{c}}}({x})\mathrel{\mathop{\kern 0.0pt=}\limits^{\Delta}}p(\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}=1|{\hat{l}_{i,j}}=-1,c_{i,j}=0)=\sum\limits_{i=0}^{n-1}b^{n}_{i}(x){P^{\mathsf{c}}\mathopen{}\mathclose{{\left(i}}\right)}$}}, (21)
OPENfPϵ(x)=Δp(μ¯i,j𝗋,()=0|l^i,j=1,ci,j=0)=i=0n1bin(x)Pϵ(iCLOSE).\displaystyle\scalebox{0.86}{\mbox{$\displaystyle f^{P^{\mathsf{\epsilon}}}({x})\mathrel{\mathop{\kern 0.0pt=}\limits^{\Delta}}p(\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}=0|{\hat{l}_{i,j}}=-1,c_{i,j}=0)=\sum\limits_{i=0}^{n-1}b^{n}_{i}(x){P^{\mathsf{\epsilon}}\mathopen{}\mathclose{{\left(i}}\right)}$}}. (22)

Furthermore, we denote by fQ𝖾(x)f^{Q^{\mathsf{e}}}({x}), fQ𝖼(x)f^{Q^{\mathsf{c}}}({x}), and fQϵ(x)f^{Q^{\mathsf{\epsilon}}}({x}) the probability that a randomly selected bit in the component code’s codeword is decoded incorrectly, correctly, and erased, respectively, when the bit was initially correct. Also, let us denote by OPENQ𝖾(iCLOSE)Q^{\mathsf{e}}\mathopen{}\mathclose{{\left(i}}\right), OPENQ𝖼(iCLOSE)Q^{\mathsf{c}}\mathopen{}\mathclose{{\left(i}}\right), and Qϵ(i)Q^{\epsilon}(i) the probability that a randomly selected bit in the component code’s codeword is decoded incorrectly, correctly, and erased, respectively, when the bit was initially correct and there are ii errors in the remaining n1n-1 positions. OPENQ𝖼(iCLOSE)Q^{\mathsf{c}}\mathopen{}\mathclose{{\left(i}}\right) is given in [8, Eq. (6)], OPENQ𝖾(iCLOSE)Q^{\mathsf{e}}\mathopen{}\mathclose{{\left(i}}\right) in [8, Eq. (10)], and Qϵ(iCLOSE)=1Q𝖾(iCLOSE)Q𝖼(iCLOSE)Q^{\mathsf{\epsilon}}\mathopen{}\mathclose{{\left(i}}\right)=1-Q^{\mathsf{e}}\mathopen{}\mathclose{{\left(i}}\right)-Q^{\mathsf{c}}\mathopen{}\mathclose{{\left(i}}\right). Following the same steps as for the derivation of (20), we get

OPENfQ𝖾(x)=Δp(μ¯i,j𝗋,()=1|l^i,j=1,ci,j=0)=i=0n1bin(x)Q𝖾(iCLOSE),\displaystyle\scalebox{0.86}{\mbox{$\displaystyle f^{Q^{\mathsf{e}}}({x})\mathrel{\mathop{\kern 0.0pt=}\limits^{\Delta}}p(\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}=-1|{\hat{l}_{i,j}}=1,c_{i,j}=0)=\sum\limits_{i=0}^{n-1}b^{n}_{i}(x){Q^{\mathsf{e}}\mathopen{}\mathclose{{\left(i}}\right)}$}}, (23)
OPENfQ𝖼(x)=Δp(μ¯i,j𝗋,()=1|l^i,j=1,ci,j=0)=i=0n1bin(x)Q𝖼(iCLOSE),\displaystyle\scalebox{0.86}{\mbox{$\displaystyle f^{Q^{\mathsf{c}}}({x})\mathrel{\mathop{\kern 0.0pt=}\limits^{\Delta}}p(\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}=1|{\hat{l}_{i,j}}=1,c_{i,j}=0)=\sum\limits_{i=0}^{n-1}b^{n}_{i}(x){Q^{\mathsf{c}}\mathopen{}\mathclose{{\left(i}}\right)}$}}, (24)
OPENfQϵ(x)=Δp(μ¯i,j𝗋,()=0|l^i,j=1,ci,j=0)=i=0n1bin(x)Qϵ(iCLOSE).\displaystyle\scalebox{0.86}{\mbox{$\displaystyle f^{Q^{\mathsf{\epsilon}}}({x})\mathrel{\mathop{\kern 0.0pt=}\limits^{\Delta}}p(\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}=0|{\hat{l}_{i,j}}=1,c_{i,j}=0)=\sum\limits_{i=0}^{n-1}b^{n}_{i}(x){Q^{\mathsf{\epsilon}}\mathopen{}\mathclose{{\left(i}}\right)}$}}. (25)

Recalling (8) and the discussion given in the begining of this appendix, by employing (20)–(25) and x𝖼,(1){x}^{\mathsf{c},(\ell-1)} as the input error probability of row-type CN at iteration \ell, the values of μ~i,j𝗋,()\tilde{\mu}_{i,j}^{\mathsf{r},(\ell)} given in Table I are obtained.

Now we focus on computing x𝗋,(){x}^{\mathsf{r},(\ell)}. Assuming transmission of the all-zero codeword, using (7), and applying Bayes’ rule, the probability of error at the output of row decoder is obtained as

x𝗋,()\displaystyle{x}^{\mathsf{r},(\ell)} =p(l~i,j𝗋,()<0)\displaystyle=p(\tilde{l}_{i,j}^{\mathsf{r},(\ell)}<0)
=μ¯i,j𝗋,(){0,±1}L^i,j{±1}p(l~i,j𝗋,()<0|μ¯i,j𝗋,(),l^i,j)p(μ¯i,j𝗋,()|l^i,j)p(l^i,j)\displaystyle=\sum\limits_{\mathclap{\begin{subarray}{c}{\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}\in\{0,\pm 1\}}\\ {{{\hat{L}}_{i,j}}\in\{\pm 1\}}\end{subarray}}}{p(\tilde{l}_{i,j}^{\mathsf{r},(\ell)}<0|\bar{\mu}_{i,j}^{\mathsf{r},(\ell)},{{\hat{l}}_{i,j}})}p(\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}|{\hat{l}_{i,j}})p({\hat{l}_{i,j}}) (26)

where p(μ¯i,j𝗋,()|l^i,j)p(\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}|{\hat{l}_{i,j}}) is given in (20)–(25). In the following, we compute p(l~i,j𝗋,()<0|μ¯i,j𝗋,(),l^i,j){p(\tilde{l}_{i,j}^{\mathsf{r},(\ell)}<0|\bar{\mu}_{i,j}^{\mathsf{r},(\ell)},{{\hat{l}}_{i,j}})}. In particular, let us first calculate the term p(l~i,j𝗋,()<0|μ¯i,j𝗋,()=1,l^i,j=1){p(\tilde{l}_{i,j}^{\mathsf{r},(\ell)}<0|\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}=-1,{{\hat{l}}_{i,j}=-1})} in (26). This probability can be written as

OPENp(l~i,j𝗋,()<0|μ¯i,j𝗋,()=1,l^i,j=1)=(a)\displaystyle{p\mathopen{}\mathclose{{\left(\tilde{l}_{i,j}^{\mathsf{r},(\ell)}<0\lvert\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}=-1,{{\hat{l}}_{i,j}=-1}}}\right)}\stackrel{{\scriptstyle\mathclap{\mbox{\scriptsize$(a)$}}}}{{=}}
OPENp(li,j<ln(fP𝖾(x𝖼,(1))fQ𝖼(x𝖼,(1))CLOSE)|μ¯i,j𝗋,()=1,l^i,j=1)=(b)\displaystyle{p\mathopen{}\mathclose{{\left(l_{i,j}<-\ln\mathopen{}\mathclose{{\left(\frac{f^{P^{\mathsf{e}}}({x}^{\mathsf{c},(\ell-1)})}{f^{Q^{\mathsf{c}}}({x}^{\mathsf{c},(\ell-1)})}}}\right)\bigg\lvert{\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}=-1,{\hat{l}}_{i,j}}=-1}}\right)}\stackrel{{\scriptstyle\mathclap{\mbox{\scriptsize$(b)$}}}}{{=}}
OPENp(li,j<ln(fP𝖾(x𝖼,(1))fQ𝖼(x𝖼,(1))CLOSE)|l^i,j=1)=(c)\displaystyle{p\mathopen{}\mathclose{{\left(l_{i,j}<-\ln\mathopen{}\mathclose{{\left(\frac{f^{P^{\mathsf{e}}}({x}^{\mathsf{c},(\ell-1)})}{f^{Q^{\mathsf{c}}}({x}^{\mathsf{c},(\ell-1)})}}}\right)\bigg\lvert{{\hat{l}}_{i,j}}=-1}}\right)}\stackrel{{\scriptstyle\mathclap{\mbox{\scriptsize$(c)$}}}}{{=}}
OPENp(li,j<ln(fP𝖾(x𝖼,(1))fQ𝖼(x𝖼,(1))CLOSE),li,j<0)p(li,j<0)=(d)\displaystyle\frac{p\mathopen{}\mathclose{{\left(l_{i,j}<-\ln\mathopen{}\mathclose{{\left(\frac{f^{P^{\mathsf{e}}}({x}^{\mathsf{c},(\ell-1)})}{f^{Q^{\mathsf{c}}}({x}^{\mathsf{c},(\ell-1)})}}}\right),l_{i,j}<0}}\right)}{p(l_{i,j}<0)}\stackrel{{\scriptstyle\mathclap{\mbox{\scriptsize$(d)$}}}}{{=}}
OPENp(li,j<min(ln(fP𝖾(x𝖼,(1))fQ𝖼(x𝖼,(1))CLOSE),0))p(li,j<0)=(e)\displaystyle\frac{p\mathopen{}\mathclose{{\left(l_{i,j}<\text{min}\mathopen{}\mathclose{{\left(-\ln\mathopen{}\mathclose{{\left(\frac{f^{P^{\mathsf{e}}}({x}^{\mathsf{c},(\ell-1)})}{f^{Q^{\mathsf{c}}}({x}^{\mathsf{c},(\ell-1)})}}}\right),0}}\right)}}\right)}{p(l_{i,j}<0)}\stackrel{{\scriptstyle\mathclap{\mbox{\scriptsize$(e)$}}}}{{=}}
𝖰(σ2min(ln(fP𝖾(x𝖼,(1))fQ𝖼(x𝖼,(1))CLOSE),0)+1σ)p(li,j<0)\displaystyle\frac{{\mathsf{Q}\mathopen{}\mathclose{{\left({\frac{\sigma}{2}\text{min}\mathopen{}\mathclose{{\left(\ln\mathopen{}\mathclose{{\left(\frac{f^{P^{\mathsf{e}}}({x}^{\mathsf{c},(\ell-1)})}{f^{Q^{\mathsf{c}}}({x}^{\mathsf{c},(\ell-1)})}}}\right),0}}\right)+\frac{1}{\sigma}}}}\right)}}{p(l_{i,j}<0)} (27)

where (a)(a) follows from (7) and Table I, (b)(b) follows from the Markov chain li,jl^i,jμ¯i,j𝗋,()l_{i,j}\to\hat{l}_{i,j}\to\bar{\mu}_{i,j}^{\mathsf{r},(\ell)} (see Sec. IV-A), (c)(c) follows from the definition of conditional probability and the fact that p(l^i,j=1)=p(li,j<0)p(\hat{l}_{i,j}=-1)=p(l_{i,j}<0), (d)(d) follows by intersecting the events {li,j<ln(fP𝖾(x𝖼,(1))fQ𝖼(x𝖼,(1))CLOSE)}\Big\{l_{i,j}<-\ln\mathopen{}\mathclose{{\left(\frac{f^{P^{\mathsf{e}}}({x}^{\mathsf{c},(\ell-1)})}{f^{Q^{\mathsf{c}}}({x}^{\mathsf{c},(\ell-1)})}}}\right)\Big\} and {li,j<0}\{l_{i,j}<0\}, and (e)(e) follows by recalling that li,j𝒩(2/σ2,4/σ2)l_{i,j}\sim\mathcal{N}(2/\sigma^{2},4/\sigma^{2}) if ci,j=0c_{i,j}=0 and employing the 𝖰()\mathsf{Q}(\cdot) function.

With the same approach above, one can compute the following probabilities

OPENp(l~i,j𝗋,()<0|μ¯i,j𝗋,()=1,l^i,j=1CLOSE)=\displaystyle{p\mathopen{}\mathclose{{\left(\tilde{l}_{i,j}^{\mathsf{r},(\ell)}<0|\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}=1,{{\hat{l}}_{i,j}=-1}}}\right)}=
𝖰(σ2min(ln(fP𝖼(x𝖼,(1))fQ𝖾(x𝖼,(1))CLOSE),0)+1σ)p(li,j<0),\displaystyle\penalty\ \penalty\ \penalty\ \penalty\ \penalty\ \penalty\ \penalty\ \penalty\ \penalty\ \frac{{\mathsf{Q}\mathopen{}\mathclose{{\left({\frac{\sigma}{2}\text{min}\mathopen{}\mathclose{{\left(\ln\mathopen{}\mathclose{{\left(\frac{f^{P^{\mathsf{c}}}({x}^{\mathsf{c},(\ell-1)})}{f^{Q^{\mathsf{e}}}({x}^{\mathsf{c},(\ell-1)})}}}\right),0}}\right)+\frac{1}{\sigma}}}}\right)}}{p(l_{i,j}<0)}, (28)
OPENp(l~i,j𝗋,()<0|μ¯i,j𝗋,()=0,l^i,j=1CLOSE)=\displaystyle{p\mathopen{}\mathclose{{\left(\tilde{l}_{i,j}^{\mathsf{r},(\ell)}<0|\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}=0,{{\hat{l}}_{i,j}=-1}}}\right)}=
𝖰(σ2min(ln(fPϵ(x𝖼,(1))fQϵ(x𝖼,(1))CLOSE),0)+1σ)p(li,j<0).\displaystyle\penalty\ \penalty\ \penalty\ \penalty\ \penalty\ \penalty\ \penalty\ \penalty\ \penalty\ \frac{{\mathsf{Q}\mathopen{}\mathclose{{\left({\frac{\sigma}{2}\text{min}\mathopen{}\mathclose{{\left(\ln\mathopen{}\mathclose{{\left(\frac{f^{P^{\mathsf{\epsilon}}}({x}^{\mathsf{c},(\ell-1)})}{f^{Q^{\mathsf{\epsilon}}}({x}^{\mathsf{c},(\ell-1)})}}}\right),0}}\right)+\frac{1}{\sigma}}}}\right)}}{p(l_{i,j}<0)}. (29)

The probability OPENp(l~i,j𝗋,()<0|μ¯i,j𝗋,()=1,l^i,j=1CLOSE){p\mathopen{}\mathclose{{\left(\tilde{l}_{i,j}^{\mathsf{r},(\ell)}<0|\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}=-1,{{\hat{l}}_{i,j}=1}}}\right)} is

OPENp(l~i,j𝗋,()<0|μ¯i,j𝗋,()=1,l^i,j=1)=(a)\displaystyle{p\mathopen{}\mathclose{{\left(\tilde{l}_{i,j}^{\mathsf{r},(\ell)}<0\lvert\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}=-1,{{\hat{l}}_{i,j}=1}}}\right)}\stackrel{{\scriptstyle\mathclap{\mbox{\scriptsize$(a)$}}}}{{=}}
OPENp(li,j<ln(fQ𝖾(x𝖼,(1))fP𝖼(x𝖼,(1))CLOSE)|μ¯i,j𝗋,()=1,l^i,j=1)=(b)\displaystyle{p\mathopen{}\mathclose{{\left(l_{i,j}<-\ln\mathopen{}\mathclose{{\left(\frac{f^{Q^{\mathsf{e}}}({x}^{\mathsf{c},(\ell-1)})}{f^{P^{\mathsf{c}}}({x}^{\mathsf{c},(\ell-1)})}}}\right)\bigg\lvert\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}=-1,{{\hat{l}}_{i,j}}=1}}\right)}\stackrel{{\scriptstyle\mathclap{\mbox{\scriptsize$(b)$}}}}{{=}}
OPENp(li,j<ln(fQ𝖾(x𝖼,(1))fP𝖼(x𝖼,(1))CLOSE)|l^i,j=1)=(c)\displaystyle{p\mathopen{}\mathclose{{\left(l_{i,j}<-\ln\mathopen{}\mathclose{{\left(\frac{f^{Q^{\mathsf{e}}}({x}^{\mathsf{c},(\ell-1)})}{f^{P^{\mathsf{c}}}({x}^{\mathsf{c},(\ell-1)})}}}\right)\bigg\lvert{{\hat{l}}_{i,j}}=1}}\right)}\stackrel{{\scriptstyle\mathclap{\mbox{\scriptsize$(c)$}}}}{{=}}
OPENp(li,j<ln(fQ𝖾(x𝖼,(1))fP𝖼(x𝖼,(1))CLOSE),li,j>0)p(li,j>0)=(d)\displaystyle\frac{p\mathopen{}\mathclose{{\left(l_{i,j}<-\ln\mathopen{}\mathclose{{\left(\frac{f^{Q^{\mathsf{e}}}({x}^{\mathsf{c},(\ell-1)})}{f^{P^{\mathsf{c}}}({x}^{\mathsf{c},(\ell-1)})}}}\right),l_{i,j}>0}}\right)}{p(l_{i,j}>0)}\stackrel{{\scriptstyle\mathclap{\mbox{\scriptsize$(d)$}}}}{{=}} (30)
OPENp(0<li,j<ln(fQ𝖾(x𝖼,(1))fP𝖼(x𝖼,(1))CLOSE))p(li,j>0),\displaystyle\frac{p\mathopen{}\mathclose{{\left(0<l_{i,j}<-\ln\mathopen{}\mathclose{{\left(\frac{f^{Q^{\mathsf{e}}}({x}^{\mathsf{c},(\ell-1)})}{f^{P^{\mathsf{c}}}({x}^{\mathsf{c},(\ell-1)})}}}\right)}}\right)}{p(l_{i,j}>0)}, (31)

where (a)(a) follows from (7) and Table I, (b)(b) follows from the Markov chain li,jl^i,jμ¯i,j𝗋,()l_{i,j}\to\hat{l}_{i,j}\to\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}, (c)(c) follows from the definition of conditional probability and the fact that p(l^i,j=1)=p(li,j>0)p(\hat{l}_{i,j}=1)=p(l_{i,j}>0), and (d)(d) follows by intersecting the events {li,j<ln(fQ𝖾(x𝖼,(1))fP𝖼(x𝖼,(1))CLOSE)}\Big\{l_{i,j}<-\ln\mathopen{}\mathclose{{\left(\frac{f^{Q^{\mathsf{e}}}({x}^{\mathsf{c},(\ell-1)})}{f^{P^{\mathsf{c}}}({x}^{\mathsf{c},(\ell-1)})}}}\right)\Big\} and {li,j>0}\{l_{i,j}>0\}. Note that we assumed that OPENln(fQ𝖾(x𝖼,(1))fP𝖼(x𝖼,(1))CLOSE)<0\ln\mathopen{}\mathclose{{\left(\frac{f^{Q^{\mathsf{e}}}({x}^{\mathsf{c},(\ell-1)})}{f^{P^{\mathsf{c}}}({x}^{\mathsf{c},(\ell-1)})}}}\right)<0, as for OPENln(fQ𝖾(x𝖼,(1))fP𝖼(x𝖼,(1))CLOSE)>0\ln\mathopen{}\mathclose{{\left(\frac{f^{Q^{\mathsf{e}}}({x}^{\mathsf{c},(\ell-1)})}{f^{P^{\mathsf{c}}}({x}^{\mathsf{c},(\ell-1)})}}}\right)>0 the intersection between the events {li,j<ln(fQ𝖾(x𝖼,(1))fP𝖼(x𝖼,(1))CLOSE)}\Big\{l_{i,j}<-\ln\mathopen{}\mathclose{{\left(\frac{f^{Q^{\mathsf{e}}}({x}^{\mathsf{c},(\ell-1)})}{f^{P^{\mathsf{c}}}({x}^{\mathsf{c},(\ell-1)})}}}\right)\Big\} and {li,j>0}\{l_{i,j}>0\} is null and (30) boils down to zero. By recalling the distribution of li,jl_{i,j} and employing 𝖰()\mathsf{Q}(\cdot), we have

OPENp(l~i,j𝗋,()<0|μ¯i,j𝗋,()=1,l^i,j=1CLOSE)=\displaystyle{p\mathopen{}\mathclose{{\left(\tilde{l}_{i,j}^{\mathsf{r},(\ell)}<0|\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}=-1,{{\hat{l}}_{i,j}=1}}}\right)}=

OPEN𝖰(σ2ln(fQ𝖾(x𝖼,(1))fP𝖼(x𝖼,(1))CLOSE)+1σ)𝖰(1σCLOSE)p(li,j>0)𝕌¯(ln(fQ𝖾(x𝖼,(1))fP𝖼(x𝖼,(1))CLOSE))\displaystyle\frac{{\mathsf{Q}\mathopen{}\mathclose{{\left({\frac{\sigma}{2}\ln\mathopen{}\mathclose{{\left(\frac{f^{Q^{\mathsf{e}}}({x}^{\mathsf{c},(\ell-1)})}{f^{P^{\mathsf{c}}}({x}^{\mathsf{c},(\ell-1)})}}}\right)+\frac{1}{\sigma}}}}\right)}-\mathsf{Q}\mathopen{}\mathclose{{\left(\frac{1}{\sigma}}}\right)}{p(l_{i,j}>0)}\cdot\bar{\mathbbm{U}}\mathopen{}\mathclose{{\left(\ln\mathopen{}\mathclose{{\left(\frac{f^{Q^{\mathsf{e}}}({x}^{\mathsf{c},(\ell-1)})}{f^{P^{\mathsf{c}}}({x}^{\mathsf{c},(\ell-1)})}}}\right)}}\right)

(32)

Similarly, one can compute the following probabilities

OPENp(l~i,j𝗋,()<0|μ¯i,j𝗋,()=1,l^i,j=1CLOSE)=\displaystyle{p\mathopen{}\mathclose{{\left(\tilde{l}_{i,j}^{\mathsf{r},(\ell)}<0|\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}=1,{{\hat{l}}_{i,j}=1}}}\right)}=

OPEN𝖰(σ2ln(fQ𝖼(x𝖼,(1))fP𝖾(x𝖼,(1))CLOSE)+1σ)𝖰(1σCLOSE)p(li,j>0)𝕌¯(ln(fQ𝖼(x𝖼,(1))fP𝖾(x𝖼,(1))CLOSE))\displaystyle\frac{{\mathsf{Q}\mathopen{}\mathclose{{\left({\frac{\sigma}{2}\ln\mathopen{}\mathclose{{\left(\frac{f^{Q^{\mathsf{c}}}({x}^{\mathsf{c},(\ell-1)})}{f^{P^{\mathsf{e}}}({x}^{\mathsf{c},(\ell-1)})}}}\right)+\frac{1}{\sigma}}}}\right)}-\mathsf{Q}\mathopen{}\mathclose{{\left(\frac{1}{\sigma}}}\right)}{p(l_{i,j}>0)}\cdot\bar{\mathbbm{U}}\mathopen{}\mathclose{{\left(\ln\mathopen{}\mathclose{{\left(\frac{f^{Q^{\mathsf{c}}}({x}^{\mathsf{c},(\ell-1)})}{f^{P^{\mathsf{e}}}({x}^{\mathsf{c},(\ell-1)})}}}\right)}}\right)

(33)
OPENp(l~i,j𝗋,()<0|μ¯i,jr,()=0,l^i,j=1CLOSE)=\displaystyle{p\mathopen{}\mathclose{{\left(\tilde{l}_{i,j}^{\mathsf{r},(\ell)}<0|\bar{\mu}_{i,j}^{r,(\ell)}=0,{{\hat{l}}_{i,j}=1}}}\right)}=

OPEN𝖰(σ2ln(fQϵ(x𝖼,(1))fPϵ(x𝖼,(1))CLOSE)+1σ)𝖰(1σCLOSE)p(li,j>0)𝕌¯(ln(fQϵ(x𝖼,(1))fPϵ(x𝖼,(1))CLOSE))\displaystyle\frac{{\mathsf{Q}\mathopen{}\mathclose{{\left({\frac{\sigma}{2}\ln\mathopen{}\mathclose{{\left(\frac{f^{Q^{\mathsf{\epsilon}}}({x}^{\mathsf{c},(\ell-1)})}{f^{P^{\mathsf{\epsilon}}}({x}^{\mathsf{c},(\ell-1)})}}}\right)+\frac{1}{\sigma}}}}\right)}-\mathsf{Q}\mathopen{}\mathclose{{\left(\frac{1}{\sigma}}}\right)}{p(l_{i,j}>0)}\cdot\bar{\mathbbm{U}}\mathopen{}\mathclose{{\left(\ln\mathopen{}\mathclose{{\left(\frac{f^{Q^{\mathsf{\epsilon}}}({x}^{\mathsf{c},(\ell-1)})}{f^{P^{\mathsf{\epsilon}}}({x}^{\mathsf{c},(\ell-1)})}}}\right)}}\right)

(34)

By substituting (20)–(25) and (27)–(34) into (26), the closed-form expression for x𝗋,(){x}^{\mathsf{r},(\ell)} in (11) is obtained. We remark that in this substitution, p(l^i,j)p({\hat{l}_{i,j}}) in (26) cancels out with the denominator of (27)–(34).

By substituting x𝖼,(1){x}^{\mathsf{c},(\ell-1)}, μ¯i,j𝗋,()\bar{\mu}_{i,j}^{\mathsf{r},(\ell)}, and l~i,j𝗋,()\tilde{l}_{i,j}^{\mathsf{r},(\ell)} with x𝗋,(){x}^{\mathsf{r},(\ell)}, μ¯i,j𝖼,()\bar{\mu}_{i,j}^{\mathsf{c},(\ell)}, and l~i,j𝖼,()\tilde{l}_{i,j}^{\mathsf{c},(\ell)}, and following the same derivation steps as above, Table II and (12) are obtained. This concludes the proof.

Appendix B Proof of Proposition 2

By considering channel adapters, we can assume the transmission of the all-zero codeword in the DE analysis. With this assumption and employing (18) and (19), the PDF of the symmetrized LLRs is

OPENp(l¯i,j|bi,j=0CLOSE)=j=0M21wj𝖦(l¯,μj,σj2),\displaystyle p\mathopen{}\mathclose{{\left({\bar{l}_{i,j}|b_{i,j}=0}}}\right)=\sum\limits_{j=0}^{\frac{M}{2}-1}{{w_{j}}}{\mathsf{G}}(\bar{l};{\mu_{j}},\sigma_{j}^{2}), (35)

where wjw_{j}, μj\mu_{j}, and σj2\sigma_{j}^{2} are given in Sec. IV-B. The main difference between the DE analysis for BICM and for the bi-AWGN channel in Appendix A is that the PDF of the LLRs in (35) should be used in the analysis. By employing (35) in (27)–(34) the different terms for (26) are obtained and the expressions in (13) and (14) result for x𝗋,(){x}^{\mathsf{r},(\ell)} and x𝖼,(){x}^{\mathsf{c},(\ell)}, respectively. We remark that to run DE the error probability of the VNs should be initialized to p𝖼𝗁p_{\mathsf{ch}}. For the BICM channel p𝖼𝗁p_{\mathsf{ch}} can be computed by integrating the tail of the LLR distribution (35), yielding

OPENp𝖼𝗁=p(l¯i,j<0|bi,j=0)=j=0M21wj𝖰(μjσjCLOSE).\displaystyle p_{\mathsf{ch}}=p(\bar{l}_{i,j}<0|b_{i,j}=0)=\sum\limits_{j=0}^{\frac{M}{2}-1}{{w_{j}}}\cdot\mathsf{Q}\mathopen{}\mathclose{{\left(\frac{\mu_{j}}{\sigma_{j}}}}\right). (36)

This concludes the proof.

References

  • [1] C. Berrou, A. Glavieux, and P. Thitimajshima, “Near shannon limit error-correcting coding and decoding: Turbo-codes,” in Proc. IEEE Int. Inf. Conf. Commun., vol. 2, Geneva, Switzerland, May 1993, pp. 1064–1070.
  • [2] R. G. Gallager, Low-Density Parity-Check Codes. Cambridge, MA, USA: M.I.T. Press, 1963.
  • [3] K. Cushon, P. Larsson-Edefors, and P. Andrekson, “Low-power 400-Gbps soft-decision LDPC FEC for optical transport networks,” IEEE/OSA J. Lightw. Technol., vol. 34, no. 18, pp. 4304–4311, Sep. 2016.
  • [4] F. Steiner, E. Ben Yacoub, B. Matuz, G. Liva, and A. Graell i Amat, “One and two bit message passing for SC-LDPC codes with higher-order modulation,” J. Lightw. Technol., vol. 37, no. 23, pp. 5914–5925, Dec. 2019.
  • [5] B. P. Smith, A. Farhood, A. Hunt, F. R. Kschischang, and J. Lodge, “Staircase codes: FEC for 100 Gb/s OTN,” IEEE/OSA J. Lightw. Technol., vol. 30, no. 1, pp. 110–117, Jan. 2012.
  • [6] Y. Jian, H. D. Pfister, and K. R. Narayanan, “Approaching capacity at high rates with iterative hard-decision decoding,” IEEE Trans. Inf. Theory, vol. 63, no. 9, pp. 5752–5773, Sep. 2017.
  • [7] C. Häger and H. D. Pfister, “Approaching miscorrection-free performance of product codes with anchor decoding,” IEEE Trans. Commun., vol. 66, no. 7, pp. 2797–2808, Jul. 2018.
  • [8] A. Sheikh, A. Graell i Amat, and G. Liva, “Binary message passing decoding of product-like codes,” IEEE Trans. Commun., vol. 67, no. 12, pp. 8167–8178, Dec. 2019.
  • [9] A. Sheikh, A. Graell i Amat, G. Liva, C. Häger, and H. D. Pfister, “On low-complexity decoding of product codes for high-throughput fiber-optic systems,” in Proc. IEEE Int. Symp. on Turbo Codes & Iterative Inf. Proc. (ISTC), Hong Kong, Dec. 2018.
  • [10] A. Sheikh, A. Graell i Amat, and G. Liva, “Binary message passing decoding of product codes based on generalized minimum distance decoding,” in Proc. 53rd Annu. Conf. Inf. Sciences and Systems (CISS), Baltimore, MD, Mar. 2019.
  • [11] Y. Lei, B. Chen, G. Liga, X. Deng, Z. Cao, J. Li, K. Xu, and A. Alvarado, “Improved decoding of staircase codes: The soft-aided bit-marking (SABM) algorithm,” IEEE Trans. Commun., vol. 67, no. 12, pp. 8220–8232, Dec. 2019.
  • [12] G. Lechner, T. Pedersen, and G. Kramer, “Analysis and Design of Binary Message Passing Decoders,” IEEE Trans. Commun., vol. 60, no. 3, Mar. 2012.
  • [13] G. Liga, A. Sheikh, and A. Alvarado, “A novel soft-aided bit-marking decoder for product codes,” Dublin, Ireland, Sep. 2019.
  • [14] E. Ben Yacoub, F. Steiner, B. Matuz, and G. Liva, “Protograph-Based LDPC Code Design for Ternary Message Passing Decoding,” in Proc. Int. ITG Conf. Syst., Commun. and Coding (SCC), Rostock, Germany, Mar. 2019.
  • [15] G. Montorsi and S. Benedetto, “High throughput two-stage soft/hard codecs for optical communications,” in Proc. IEEE Int. Symp. on Turbo Codes & Iterative Inf. Proc. (ISTC), Hong Kong, Dec. 2018.
  • [16] L. M. Zhang and F. R. Kschischang, “Low-complexity soft-decision concatenated LDGM-staircase FEC for high-bit-rate fiber-optic communication,” IEEE/OSA J. Lightw. Technol., vol. 35, no. 18, pp. 3991–3999, Sep. 2017.
  • [17] M. Barakatain and F. R. Kschischang, “Low-complexity concatenated LDPC-staircase codes,” IEEE/OSA J. Lightw. Technol., vol. 36, no. 12, pp. 2443–2449, Jun. 2018.
  • [18] M. Lentmaier and K. S. Zigangirov, “Iterative decoding of generalized low-density parity-check codes,” in Proc. IEEE International Symp. on Inform. Theory (ISIT), Boston, USA, Aug. 1998.
  • [19] R. Tanner, “A recursive approach to low complexity codes,” IEEE Trans. Inf. Theory, vol. 27, no. 5, pp. 533–547, Sep. 1981.
  • [20] C. Häger, H. D. Pfister, A. Graell i Amat, and F. Brännström, “Density evolution for deterministic generalized product codes on the binary erasure channel at high rates,” IEEE Trans. Inf. Theory, vol. 63, no. 7, pp. 4357–4378, Jul. 2017.
  • [21] E. Zehavi, “8-PSK trellis codes for a rayleigh channel,” IEEE Trans. Commun., vol. 40, no. 5, pp. 873–884, May 1992.
  • [22] G. Caire, G. Taricco, and E. Biglieri, “Bit-interleaved coded modulation,” IEEE Trans. Inf. Theory, vol. 44, no. 3, pp. 927–946, May 1998.
  • [23] G. Böcherer, F. Steiner, and P. Schulte, “Bandwidth efficient and rate-matched low-density parity-check coded modulation,” IEEE Trans. Commun., vol. 63, no. 12, pp. 4651–4665, Dec. 2015.
  • [24] F. Buchali, F. Steiner, G. Böcherer, L. Schmalen, P. Schulte, and W. Idler, “Rate adaptation and reach increase by probabilistically shaped 64-QAM: An experimental demonstration,” IEEE/OSA J. Lightw. Technol., vol. 34, no. 7, pp. 1599–1609, Apr. 2016.
  • [25] F. Gray, “Pulse code communications,” U.S. Patent 2632058, Mar. 1953.
  • [26] A. J. Viterbi, “An intuitive justification and a simplified implementation of the MAP decoder for convolutional codes,” IEEE J. Select. Areas in Communications., vol. 16, no. 2, pp. 260–264, Feb. 1998.
  • [27] J. Hou, P. H. Siegel, L. B. Milstein, and H. D. Pfister, “Capacity-approaching bandwidth-efficient coded modulation schemes based on low-density parity-check codes,” IEEE Trans. Inf. Theory, vol. 49, no. 9, pp. 2141–2155, Sep. 2003.
  • [28] M. Ivanov, C. Häger, F. Brännström, A. Graell i Amat, A. Alvarado, and E. Agrell, “On the information loss of the Max-Log approximation in BICM systems,” IEEE Trans. Inf. Theory, vol. 62, no. 6, pp. 3011–3025, Jun. 2016.
  • [29] J. Max, “Quantizing for minimum distortion,” IRE Transactions on Information Theory, vol. 6, no. 1, pp. 7–12, Mar. 1960.
  • [30] S. Lloyd, “Least squares quantization in PCM,” IEEE Trans. Inf. Theory, vol. 28, no. 2, pp. 129–137, Mar. 1982.