Construction and Iterative Decoding of LDPC Codes Over Rings for Phase-Noisy Channels

This paper presents the construction and iterative decoding of low-density parity-check (LDPC) codes for channels a ﬀ ected by phase noise. The LDPC code is based on integer rings and designed to converge under phase-noisy channels. We assume that phase variations are small over short blocks of adjacent symbols. A part of the constructed code is inherently built with this knowledge and hence able to withstand a phase rotation of 2 π/M radians, where “ M ” is the number of phase symmetries in the signal set, that occur at di ﬀ erent observation intervals. Another part of the code estimates the phase ambiguity present in every observation interval. The code makes use of simple blind or turbo phase estimators to provide phase estimates over every observation interval. We propose an iterative decoding schedule to apply the sum-product algorithm (SPA) on the factor graph of the code for its convergence. To illustrate the new method, we present the performance results of an LDPC code constructed over Z 4 with quadrature phase shift keying (QPSK) modulated signals transmitted over a static channel, but a ﬀ ected by phase noise, which is modeled by the Wiener (random-walk) process. The results show that the code can withstand phase noise of 2 ◦ standard deviation per symbol with small loss.


INTRODUCTION
In the past decade, plenty of work was done in the construction and decoding of LDPC codes [1]. In general, the code construction techniques were motivated to provide a reduced encoding complexity and better bit-error rate (BER) performance. The channels considered are generally either additive white Gaussian (AWGN) or binary erasure channels. However, many real systems are affected by phase noise (e.g., DVB-S2). The severity of the phase noise depends on the quality of the local oscillators and the symbol rate. Hence the performance of codes on the channels with phase disturbances are of practical significance.
Over the past few years, iterative decoding for channels with phase disturbance has received lots of attention [2][3][4][5][6][7]. In [2,3], the authors have proposed algorithms to apply over a factor graph model that involves the phase noise process. They used canonical distributions to deal with the continuous phase probability density functions. In particular, their approach based on Tikhonov distribution yields a good performance. In [4], the authors developed algorithms for noncoherent decoding of turbo-like codes for the phase-noisy channels. These schemes make use of pilot symbols for either estimation or decoding. In [5], the authors showed the rotational robustness of certain codes under a constant phase offset channel with the presence of cycle slips only during the initial part of the codeword.
In [6], the authors used smaller observation intervals to tackle varying frequency offset in the context of serially concatenated convolutional codes (SCCCs). They used blind and turbo phase estimators to provide a phase estimate for every sub-block. Since the phase estimates obtained from the blind phase estimator (BPE) are phase ambiguous, each sub-block is affected by an ambiguity of 2π/M radians. By differentially encoding the sub-blocks independently, the authors tackled the phase ambiguity. However, using an inner differential encoder along with an LDPC code provides a loss in performance and the degree distributions of the LDPC code needs to be optimized [7].
The concept of smaller observation intervals in the presence of phase disturbances is attractive and offers low complexity as well. Intuitively, as the observation interval get 2 EURASIP Journal on Wireless Communications and Networking smaller more phase variation may be tackled. On the other hand, phase estimators produce poor estimates with smaller observation intervals. However, if the phase estimation error is smaller than π/M, the decoder may be able to converge correctly.
In our earlier work [8], we used sub-blocks in a binary LDPC-coded receiver to tackle residual frequency offset. The received symbol vector was split into many sub-blocks and BPE was used to provide a phase estimate across every subblock. We introduced the concept of "local check nodes" (LCNs) to resolve the phase ambiguity created by the BPE on the sub-blocks. Local check nodes are odd degree check nodes connected to the variable nodes present within a single sub-block. In (1), the local check nodes correspond to the top four rows of the parity-check matrix, in which the bottom (dotted) part is connected according to random construction. In this small example, the LCN degree (d L c ) is three and if the sub-block size (N b ) is six symbols, the parity check matrix provides N b /d L c = 2 LCNs to resolve the phase ambiguity in each sub-block The phase-ambiguity-resolved vector is decoded by an LDPC decoder. Turbo phase/frequency estimates (e.g., [9]) are obtained during iterations to facilitate the convergence. The quality of the phase ambiguity estimate is better with more LCNs. Hence with reduced sub-block sizes, the phase ambiguity estimate is less reliable and the code suffers performance degradation. Following [6,8], but with a different perspective, we addressed the problem of phase noise for BPSK signals in the presence of a binary LDPC-coded system [10]. In particular, we incorporated the observation that, even under large phase disturbances the variation in phase over adjacent symbols are normally small. We created a set of check nodes called "global check nodes" (GCNs) that converge irrespective of phase rotations (0 or π radians) in any sub-blocks. We used BPE or TPE to provide a phase estimate in each subblock. After the convergence of GCN, we used only one LCN per sub-block to resolve the phase ambiguity present in the sub-block. We found that even under relatively large phase noise and observation intervals, the method provided a good performance for BPSK signals. We did not make use of pilot symbols and the complexity is low. However, we found that the extension of the above approach to higher-order modulations was very difficult with a binary LDPC code. In particular, with a binary LDPC code, constructing global check nodes that converge irrespective of a phase rotation (a multiple of 2π/M radians) in the sub-blocks was difficult.
This paper addresses the problem of extending the above code construction technique to higher-order signal constella-tions based on integer rings. Specifically, we construct LDPC codes over rings with certain constraints on the placement of edges and edge gains such that they, along with sub-block phase estimation techniques, provide good performance under phase-noisy channels with low complexity. Under a noiseless channel, we present edge constraints based on integer rings generalized for any phase-symmetric modulation scheme, under which the convergence of the global check nodes is guaranteed in the presence of phase ambiguities in any sub-block. Similarly, we present generalized edge constraints for the local check node such that they are able to resolve the phase ambiguity in the sub-block. To illustrate the concepts discussed in this paper under a phasenoisy channel, we show the performance of an LDPC code constructed over Z 4 with codewords mapped onto QPSK modulation, where the transmitted symbol s k ∈ {s m k = e j((π/2)m+π/4) }, m = {0, 1, 2, 3}.
The remainder of the paper is organized as follows. In Section 2, we discuss the channel model considered for our simulations. In Section 3, we address the effects of phase ambiguity on the check nodes and discuss the construction of global and local check nodes. In Section 4, we explain code construction and present a matrix inversion technique to obtain the generator matrix. In Section 5, we explain the receiver architecture and detail the iterative decoding for the convergence of these codes. We also show the additional computational complexity required due to the phase estimation process. In Section 6, we discuss the BER performance of the proposed receiver under phase noise conditions using the code constructed over Z 4 for QPSK signal set. In Section 7, we discuss the benefits of the blind phase estimator in reducing the computational complexity involved with the turbo phase estimation and also show the BER performance of the low-complexity iterative receiver with the Z 4 code under phase noise conditions. We conclude in Section 8 by summarizing the results of this paper.

CHANNEL MODEL
An information sequence is encoded by an (N, K) nonbinary LDPC code constructed over integer rings (Z M ), where N and K represent the length and dimension of the code and Z M denote the integers {0, 1, 2, . . . , M − 1} under addition modulo M, respectively. The alphabets over Z M are mapped onto complex symbols s using phase shift keying (PSK) modulation with M phase symmetries. The complex symbols are transmitted over a channel affected by carrier phase disturbance and complex additive white Gaussian noise.
Ideal timing and frame synchronization are assumed and henceforth, all the simulations assume one sample per symbol. At the receiver, after matched filtering and ideal sampling, we have where s k , r k , θ k , and n k are the kth component of the vectors r, s, θ, and n, of length N s , respectively. The noise samples n k contain uncorrelated real and imaginary parts with zero mean and two-sided power spectral density (PSD) of N 0 /2.

3
The phase noise process θ k is generated using the Wiener (random-walk) model described by where Δ k is a white real Gaussian process with a standard deviation of σ Δ . θ 0 is generated uniformly from the distribution (−π, π). Let us divide the received symbol vector r of length N s into B sub-blocks of length N b . Assuming small phase variations over adjacent symbols, we may approximate the phase variations on the symbol in the lth sub-block by a mean phase offset θ l ∈ (−π, π). Similar to (2), the received sequence can be expressed as where (2) is used in our simulations, we use the approximate model in (4) for the code construction and receiver-side processing. The approximate phase offset over lth sub-block, θ l ∈ (−π, π) can be represented as the summation of an ambiguous phase offset φ l ∈ (−π/M, π/M) and the phase ambiguity α l ∈ {0, 2π/M, 4π/M, . . . , 2(M − 1)π/M}. The proposed receiver tackles modest to high levels of phase noise. For instance, the phase noise considered in this paper (Wiener model with σ Δ of 1 • and 2 • ) is several times larger than the phase noise mentioned in the European Space Agency model (Wiener model with σ Δ = 0.3 • per symbol [2]). However, due to the assumptions made in (4), the proposed receiver will not be able to tackle large amounts of phase noise, such as the Wiener model with σ Δ = 6 • per symbol in [2,3].

EFFECT OF PHASE AMBIGUITIES ON THE CHECK NODES
In this section, we address the effect of phase rotations that are multiples of 2π/M radians on the global and local check nodes of an LDPC code constructed over Z M . Let H i, j be the elements of the parity check matrix participating in the ith check node such that, where d c is the degree of the check node, x j is the jth symbol participating in the ith check node and the value of H i, j is chosen from the nonzero elements of Z M . In the remaining subsections, we denote the degree of the GCN and LCN as d G c and d L c , respectively.

Global check nodes
Thus for arbitrary integer t, (6) becomes zero only if In the case of binary LDPC code, p should be even in order to satisfy (7). For LDPC codes over higher-order rings, p can either be odd or even depending on the values of H i, j . In this work, we select the values of H i, j from the set of nonzero divisors of Z M ({1, 3} from Z 4 ) to avoid problems during matrix inversion. As a result, p becomes even in the case of LDPC code over integer rings which further makes d G c as well, even.

Local check nodes
Local check nodes resolve the phase ambiguity present in a sub-block. Let the elements H i, j participating in check i be selected from a single sub-block such that, Alternatively, (8) represents that the element d L c j=1 H i, j is chosen from the set of nonzero divisors from Z M , which is achieved by performing the summation over modulo 2 rather than M. If modulo M is used, the check node will not resolve certain phase ambiguities as explained below.
If all the symbols x j participating in ith local check node are rotated by 2πt/M radians, then using (5) and (8), we can show that for every t there exists a distinct residue (mod M) which provides a solution for the phase ambiguity present on the participating symbols x j . Considering all the operations below are modulo M,

EURASIP Journal on Wireless Communications and Networking
Hence t can be written as In case where the Using (10), we can evaluate that t = 1 which corresponds to π/2 radians.

NONBINARY CODE CONSTRUCTION
We apply the above set of principles in constructing codes that are beneficial in dealing with phase noise channels. Similar to [11], we construct a binary code and choose the nonzero divisors from Z M as edge gains such that check conditions as described in Section 3 are satisfied.

Code construction
Following Section 2, let us say we have "B" sub-blocks of length N b . A binary parity check matrix H N−K×N is constructed such that it involves two parts: The upper (B × N) part of the matrix, called H resolving , involves B local check nodes in contrast to N b /d c LCNs as in our previous method [8], which are used to resolve the phase ambiguity in B sub-blocks. The lower (N − K − B × N) part of the matrix, called H converging , contains N − K − B check nodes whose neighbours are selected such that their convergence is independent of the phase ambiguities in the sub-block. We assume the degree of all the local (global) check nodes to be equal to d L c (d G c ). The codes are designed to be check biregular, (i.e., with two different degrees, d L c and d G c ). However, there is no constraint on the variable node degree.
We construct the code as per the following procedure.
(1) Construction of local check nodes: the edges of the local check node are connected to the first d L c symbols of the sub-block for which it resolves the phase ambiguity. For example, assuming d L c = 3, let H i j = 1 where j corresponds to the first 3 columns of each subblock. However, we can arbitrarily choose the set of d L c symbols from any part of the sub-block.
(2) Construction of global check nodes: for every symbol, the parity checks in which the symbol participates are randomly chosen based on its degree and (7). As in Example 1, every global check node participates in only two symbols from a sub-block. Care was taken to avoid short cycles after constructing every column.
To illustrate the local and global check nodes, a small parity check matrix (H) is shown in (12). The first four rows corresponding to the local check nodes (H resolving ) are shown at the top. The two rows below the local check nodes are connected globally and also have p = 2 edges connected to symbols from a sub-block. The restriction of two edges per sub-block provides a better connectivity in the code.

Some comments on encoding
We used the Gaussian elimination (GE) approach to obtain a systematic generator matrix. Even though the edge gains of the parity check matrix are nonzero divisors, we encountered zero divisors ({2} in the case of Z 4 ) during GE in the diagonal part of the matrix. To avoid this problem, we interchanged columns across the parity check matrix such that we obtain a generator matrix (G) corresponding to the column-interchanged parity check matrix (H ). Since we wanted to use the original H matrix instead of H , we created a permutation table (P) to record the columns that are interchanged during inversion. Alternate inversion techniques may avoid the use of permutation table P.
A summary of the communication system used in the simulations is given in Figure 2. The message is encoded by the generator matrix G to produce the codeword (c). The codeword c undergoes inverse permutation to produce c . The codeword is transmitted through the composite channel. Since the permuted-encoded symbols are the codewords of the original code H, the decoder decodes the codeword. The decoded codeword c is again permuted to give the original codeword c.

RECEIVER ARCHITECTURE AND ITERATIVE DECODING SCHEDULE
The receiver architecture to tackle large phase disturbances is shown below in Figure 3. We used the SPA algorithm for LDPC codes over rings, similar to [12]. In the case of an AWGN channel, the SPA may be applied over the entire code for convergence. However, in the presence of phase disturbances, phase estimators provide an ambiguous phase estimate and hence the SPA is applied only over the rotationally invariant part of the factor graph, that is, the graph involving global check nodes only. This section discusses the application of SPA on the factor graph of the code with phase offset on every sub-block such that the benefits of local and global check nodes are achieved. Thus we split up the decoding into three phases as described below.
(1) Converging phase.  [9] estimates the phase offset φ l , which is given by where k , as defined in (4), is the kth component in the lth sub-block and a * k is the complex conjugate of the soft symbol estimate. The soft symbol estimate a k of the symbol s k is given by where p(s k = s m k | r k ) is the a posteriori probability that symbol s k = s m k . The received symbol vector corresponding to lth sub-block is corrected using the turbo phase estimate φ l . (2) Resolving phase.
(a) As the symbol a posteriori probabilities at the variable nodes are good enough at the end of converging phase, a hard decision is taken on the symbols, which corresponds to (x j + t) in (10). These hard decisions are used to evaluate the sub-block phase ambiguity estimates α l = 2πt/M using local check nodes as in (10), which are further used to correct the received symbol values, giving r . In general, the decoder converges at the end of this stage.
(a) If required, SPA is continued over the entire code involving both H resolving and H converging until either the syndrome (H c T = 0) is satisfied or a specified number of iterations are reached. Turbo phase estimation or phase ambiguity resolution is is not required at this phase.

Comments on turbo phase estimation
In general, turbo phase estimation can provide a phase estimate in the range (−π, π). However, during the converging  phase of this code, the decoder converges to a codeword which is rotationally equivalent to the transmitted codeword. Hence the turbo phase estimator provides a phase estimate whose range lies between (−π/M, π/M). This is illustrated in Figure 4, which shows the mean trajectories of the turbo phase estimates over a sub-block of 100 symbols at an E b /N 0 = 2 dB under a constant phase offset (θ).

Computational complexity
The computational complexity of the proposed LDPC receiver can be evaluated as the summation of the complexities of the LDPC decoder and the phase estimator/ambiguity resolver. The computational complexity of the nonbinary LDPC decoder is dominated by the check node decoder with O(M 2 ) operations. Reducing the computational complexity of the nonbinary LDPC decoder is an active area of research [13,14]. In this paper, we concentrate only on the additional complexity involved in the receiver due to the turbo phase estimation in (13) and ambiguity resolution.
Since the decoding algorithm works in the probability domain, the a posteriori probability of the symbols p(s k = s m k | r k ) are directly available from the decoder. Given the a posteriori probability vector of length M, for the kth symbol, the soft symbol estimate of the symbol s k can be calculated according to (14). Thus the additional complexity of the receiver, mainly due to turbo phase estimation, is relatively small. In the case of the LDPC code described in Section 6, the additional complexity per symbol per iteration is approximately equivalent to ([16] × + [12] + ) operations, assuming d = 1.

BER PERFORMANCE OF THE PROPOSED RECEIVER
We constructed a binary LDPC code of N = 3000, K = 1500, R = 0.5 for a sub-block size of N b = 100 symbols. Through simulations, we found that the code with sub-block size of 100 symbols gives the best BER performance for the amounts of phase noise considered in this paper. The degree distributions of this binary code were obtained through EXIT charts [15] such that they converged at an E b /N o of 1.3 dB. The variable node and check node distributions, in terms of node perspective, were λ(x) = 0.8047x 3 + 0.0067x 4 + 0.1887x 8 and ρ(x) = 0.02x 3 + 0.98x 8 , respectively. The code corresponds to B = 30 sub-blocks over the codeword. We replaced the edge gains of this code from the nonzero divisors of Z 4 such that they follow the constraints discussed in Section 3. Turbo phase estimation was done after every iteration (d = 1), only during the converging phase. Iterations are performed until the codeword converges, or to a maximum of 200 iterations. However, we found that on an average in the waterfall region, less than 40 iterations are required for convergence. Simulations are performed either until 100 codeword errors are found or up to 500,000 transmissions.
Simulation results in Figure 5 show the performance of our receiver in Figure 3 under phase noise conditions. For a constant phase offset, there is a small degradation of around 0.3 dB from the coherent performance at a BER of 10 −5 . This loss is due to the proposed application schedule of SPA on the code, which did not include local check nodes during the convergence phase and the degraded performance of the turbo phase estimator with reduced sub-block size. However, thereafter with a small loss, the code is able to tolerate a phase noise with σ Δ = 2 • per symbol.

LOWER COMPLEXITY ITERATIVE RECEIVER
In this section, we show that the computational complexity involved with the turbo phase estimation can be reduced by using a blind phase estimator just once, before the iterative receiver proposed in Figure 3.

Comments on initial phase estimation
The performance of the LCN-based phase ambiguity resolution (PAR) algorithm degrades with the amount of phase offset present on the symbols participating in the LCN. Hence in our earlier work [8], we used a BPE to provide phase estimate for every sub-block of symbols before 1 1   resolving PAR using the local check nodes. However, in the current work, we are able to delay the PAR on the sub-blocks since the code can converge with the phase ambiguous estimates obtained from the TPE alone. Hence the proposed architecture does not require the use of a blind phase estimator. However, by employing an initial BPE for coarse phase estimation and correction of the subblocks, the number of iterations required for convergence can be reduced. Figure 6 illustrates the benefit of blind phase estimation at an E b /N 0 = 2.1 dB with a Wiener phase noise of 1 • standard deviation per symbol.
It also shows that the computational complexity due to TPE can be reduced, approximately a factor of 10, by using the BPE once before the iterative receiver and then periodically using the turbo phase estimator.

BER performance
The code described in Section 6 was used to simulate the BER performance of the iterative receiver with low computational complexity. The blind phase estimator was used to estimate and correct the phase disturbance present in each sub-block of the received symbol vector, following which the phasecorrected symbol vector was fed into the iterative receiver in Figure 3. During the convergence phase, turbo phase estimates were obtained once in 10 iterations (d = 10). At σ Δ = 2 • per symbol, Figure 7 shows the advantage of a blind phase estimator in terms of BER performance. The result compares three distinct cases with the normal receiver, where turbo phase estimation was performed in every iteration. The presence of blind phase estimator allows us to include turbo phase estimator only once in every 10 iterations with a small loss of 0.05 dB. However, without blind phase estimator, performing turbo phase estimation only once in every 10 iterations shows significant degradation. As shown, the performance can be improved by including turbo phase estimation for more iterations, particularly the early stages of the decoder, during which the LDPC decoder provides a lot of new information regarding the symbols.

CONCLUSION
In this paper, we addressed the problem of LDPC codebased iterative decoding under phase noise channels from a code perspective. We proposed construction of ring-based codes for higher-order modulations that work well with sub-block phase estimation techniques of low complexity. The code was constructed using the new constraints outlined in Section 3 such that it not only converges under sub-block phase rotations, but also estimates them. We also showed the property of ring-based check nodes under the presence of phase ambiguity based on their edge gains in a generalized manner. As part of our future work, we are looking at ways to construct code without explicitly constructing local check nodes for PAR. The sub-block size used in the simulation results shown earlier, has not been optimized and we believe that the method can be extended to adjust the observation interval and phase model depending on the amount of phase noise.