Abstract

This paper presents a family of rate-compatible (RC) globally coupled low-density parity-check (GC-LDPC) codes, which is constructed by combining algebraic construction method and graph extension. Specifically, the highest rate code is constructed using the algebraic method and the codes of lower rates are formed by successively extending the graph of the higher rate codes. The proposed rate-compatible codes provide more flexibility in code rate and guarantee the structural property of algebraic construction. It is confirmed, by numerical simulations over the AWGN channel, that the proposed codes have better performances than their counterpart GC-LDPC codes formed by the classical method and exhibit an approximately uniform gap to the capacity over a wide range of rates. Furthermore, a modified two-phase local/global iterative decoding scheme for GC-LDPC codes is proposed. Numerical results show that the proposed decoding scheme can reduce the unnecessary cost of local decoder at low and moderate SNRs, without any increase in the number of decoding iterations in the global decoder at high SNRs.

1. Introduction

Globally coupled low-density parity-check (GC-LDPC) codes, which were proposed by Li et al. in [14], are a special type of LDPC codes designed for correcting random symbol errors and bursts of errors or erasures. They have a different structure from the conventional LDPC block codes and the spatially coupled LDPC (SC-LDPC) codes [512]. From the perspective of the Tanner graph, a GC-LDPC code using a group of global check nodes (CNs) couples (or connects) a set of disjoint Tanner graphs called local graphs. We refer to such codes as CN-based globally coupled LDPC (CN-GC-LDPC) codes. Due to the special structure, CN-GC-LDPC codes not only perform well on both the additive white Gaussian noise (AWGN) channel and the binary erasure channel (BEC) but also are effective for correcting burst erasures.

For time-varying channels, from the wireless communication theory, we need to adapt the rate according to the available channel state information (CSI); such an error control strategy is referred to as rate adaptability [13]. Rate-compatible (RC) channel codes with incremental redundancy are often used in conjunction with the HARQ strategy [1420]. Most recently, RC-LDPC codes have been adopted by the 3rd Generation Partnership Project (3GPP) as the channel coding scheme for 5G enhanced mobile broadband (eMBB) data channel [21]. Such codes with a wide range of rates and block lengths are a family of nested codes which can be interpreted as a graph extension of high-rate codes [17, 22, 23].

Unlike the SC-LDPC codes which have some conventional design methods for RC-LDPC codes, such as puncturing variable nodes from the codes with low rate and extending variable nodes to the codes with high rate, the classical GC-LDPC codes are mostly restricted to invariant code rate [11, 20, 2225]. And the existing construction methods of GC-LDPC codes are not flexible enough for RC code design. In this paper, we present a family of RC CN-GC-LDPC codes. The proposed construction is based on combining algebraic construction method and graph extension. The highest rate code, which can be called the mother code, is constructed using the algebraic method. And the codes of lower rates are formed by successively extending the graph of the higher rate. Compared to the original CN-GC-LDPC codes, the proposed family of RC CN-GC-LDPC codes not only provides more flexibility in code rate and allows more efficient encoding but also guarantees the structural property of algebraic construction. Examples show that the proposed codes perform well and exhibit an approximately uniform gap to the capacity over a wide range of rates.

Furthermore, localization is a significant advantage of CN-GC-LDPC codes which allows us to process a consecutive sequence by some local sequences. If a decoder uses two-phase local/global iterative scheme, its decoding latency and memory requirements are much less than those of the classical decoding scheme without performance degradation [1, 2, 26, 27]. However, the local decoder performs a plenty of useless operations at low and moderate SNRs, which causes the unnecessary cost of the decoder. In light of this case, we present a modified two-phase local/global iterative decoding scheme for CN-GC-LDPC codes which reduces the unnecessary cost of the local decoder at low and moderate SNRs.

The remainder of this paper is organized as follows. In Section 2, we give a brief introduction to CN-GC-LDPC codes. In Section 3, we introduce the concept of graph extension through a four-edge-type LDPC code and propose a simple construction method of four-edge-type LDPC code family. In Section 4, we present a modified two-phase local/global iterative decoding scheme for CN-GC-LDPC codes. Numerical results for RC GC-LDPC codes are presented in Section 5. Finally, Section 6 concludes this paper.

2. Background

2.1. CN-Based QC-GC-LDPC Codes

A CN-based QC-GC-LDPC code is constructed using a base matrix which consists of two subarrays as shown:The upper subarray of is a diagonal array with matrices on its main diagonal and the lower part is an matrix , where . So, is an matrix.

Consider a finite field GF and let be a primitive element of GF. Let denote the parity-check matrix of CN-based QC-GC-LDPC code. We can use the base matrix and -fold dispersion to form as follows: for each entry in , if , then replace by the zero matrix (ZM); otherwise, assume with , and then replace by a circulant permutation matrix (CPM) whose first row has a single 1-component at the th element. The resultant is an matrix over GF. The null space of gives a CN-based QC-GC-LDPC code.

From the perspective of graph, let be the Tanner graph associated with for . We call a local Tanner graph. The different are pairwise disjoint (for , , and , and are disjoint). The global CNs connect all these local graphs, composing the Tanner graph associated with , denoted as , as shown in Figure 1 (in this figure, the edge labels are ignored). We see that the global CNs provide the only connections between any two disjoint local Tanner graphs.

2.2. The Basic Method of Code Construction

Li et al. presented two types of CN-based QC-GC-LDPC codes and their construction methods in [1, 2, 4]. In this subsection, we briefly review the construction method for the first type of QC-GC-LDPC codes in [1]. Let GF be a nonbinary (NB) field with elements, where is a power of a prime. Let be a primitive element of GF. Then, the powers of , namely, , give all the nonzero elements of GF and . We construct the following matrix over GF using the method in [2]:

Suppose can be factored as the product of two positive integers and ; that is, . The matrix which has a cyclic structure is then an square matrix. The first rows in comprise an matrix, denoted by . Then, can be partitioned into submatrices of size , denoted by . Based on the cyclic structure of , we can obtain the next rows in by cyclically shifting all the rows of positions to right, denoted by . And so, the matrix can be partitioned into submatrices of size , denoted by , where , . Hence, we can form the following block-cyclic structured matrix from :

For and , , we take an submatrix from . For the submatrix , we restrict the locations of its entries in to be identical (i.e., for , , the entries of and are taken from identical locations in and ). Then, we form the following array of submatrices over GF with a block-cyclic structure:

We denote the set of rows in the first row blocks of by . So, is a submatrix of . In forming the array of submatrices over GF given by (4), there are rows in each row-block and columns in each column-block of which are unused. We denote the set of unused rows of in each row-block by . So, there are sections which have a total of components in each row of . For each section in row, we remove components which are not used in forming the array from . We denote the set of rows by . The rows in set and the rows in set are disjoint. Let and be two positive integers with and . We remove the last sections from and take rows from the remaining sections of to form an matrix over GF. By taking the diagonal array from the main diagonal of and appending the matrix to the bottom of them, we form the following base matrix of a QC-GC-LDPC code:

Each entry in the upper subarray of is equal to which is an matrix, and such subarray is called local part. Note that we can use different member matrices in the set as the matrices on the main diagonal of upper subarray of as well. And we call the lower subarray of global part. The -fold dispersion of results in an array of CPMs and/or ZMs. The null space of gives a CN-based QC-GC-LDPC code whose Tanner graph has a girth of at least 6.

Let be the design rate of a () binary CN-GC-LDPC code, where and denote the VNs (variable nodes) degrees of local part and global part, respectively, and and denote the CNs degrees of local part and global part, respectively. Then, , , , , and . For , , , and , is equal to .

Example 1. Consider the prime field for the code construction. Suppose we choose two sets of parameters, , , , , , and , , , , , . Based on the construction method described above, we form two binary matrices of size and , respectively. We denote those two matrices as and . For , it has two column weights, 5 and 6, and two row weights, 39 and 120. The null space of gives CN-based QC-GC-LDPC code with a rate of 0.8667. The Tanner graph of contains 3,165,498 cycles of length 6 and 545,198,472 cycles of length 8. For , it has two column weights, 3 and 4, and two row weights, 21 and 125. The null space of gives CN-based QC-GC-LDPC code with a rate of 0.85. The Tanner graph of contains 198,828 cycles of length 6 and 21,715,639 cycles of length 8.

3. Rate-Compatible GC-LDPC Codes

In this section, we first introduce the concept of graph extension through a four-edge-type LDPC code. Then, we present a construction method of RC GC-LDPC codes.

3.1. Four-Edge-Type LDPC Codes

The Tanner graph of a four-edge-type LDPC code is illustrated in Figure 2. We partition the VNs into sections, denoted by , each containing VNs. Every is then split into two parts: the mother VNs of length and the extended VNs of length ; that is, . We denote the corresponding coded symbols of VNs as a vector of size . At the th section, we denote the corresponding symbol vectors of and as and , respectively. Then, we denote by the CNs in the lower part which are called global CNs. In the upper part, we partition the CNs into sections, each containing CNs, denoted by . We split each section of such CNs into two parts: the mother CNs of length and the extended CNs of length , where . We refer to the edges connecting and as the type 1 edges, the edges connecting and as the type 2 edges, the edges connecting and as the type 3 edges, and the edges connecting and as the type 4 edges.

From Figure 2, we can see that the mother VN not only is connected to the global CNs by the type 4 edges but also is connected to the mother CNs and the extended CNs by the type 1 edges and the type 2 edges, respectively. However, the extended VNs which have the same number of the extended CNs only are connected to the extended CNs by the type 3 edges. This means that we can form GC-LDPC codes by connecting the mother CNs and the global CNs to the mother VNs in the graph. By extending the new nodes and then increasing new edges of type 2 and type 3, we can continuously form the new GC-LDPC codes. Note that the type 2 edges are the only edges connecting the mother nodes and the extended nodes, so they are quite different from the type 1 edges. Since there are four different types of edges in the Tanner graph, we refer to such LDPC codes as four-edge-type LDPC codes.

For , the submatrices which correspond to the four types of edges are denoted byThen, the parity-check matrix of four-edge-type LDPC codes can be represented by

Analogous to GC-LDPC codes, we call the upper subarray local part and the lower subarray global part. We extract , , and from to form an matrix over GF as follows:where is an all-zero matrix, , and for . So, the corresponding base matrix of and is and , respectively.

Then, the four-edge-type LDPC code satisfies the following parity-check equation:

We denote the LDPC code given by the null space of as and the LDPC code given by the null space of as , respectively (where ). Notice that is square and has a full rank for , and the entries above have to be all zero to achieve rate compatibility; thus, is a RC-LDPC code [16]. We extract and from to form an matrix over GF as follows:

Then, based on (8) and (9), we have

This means that is a RC parity-check matrix obtained progressively by extension, in order of decreasing rate [17]. Furthermore, all the mother VNs are connected to and there are no edges connecting and for ; thus, the four-edge-type LDPC codes can be viewed as a type of RC CN-based QC-GC-LDPC codes.

3.2. Construction of Rate-Compatible GC-LDPC Codes

We now present a method to construct RC GC-LDPC codes. Because the extended VNs are not connected to , the construction of RC GC-LDPC codes can be realized by successively extending the graph of local part. The successive extension of the parity-check matrices of local part in the th section is shown in Figure 3.

Assume that we intend to construct a family of four-edge-type LDPC codes containing member codes . The corresponding target rate set is given. We denote as the parity-check matrix of , where . At the local part of , there are submatrices on the main diagonal of size and we denote each submatrix as , where and . So, is the mother matrix of . And the code rate of is

Suppose has a full rank:By adding new rows and new columns to mother matrix , we obtain an extended matrix . The upper part of is composed of a mother matrix and an all-zero matrix of size . The lower part of is composed of a matrix of size and a matrix of size . Thus, the updated submatrices on the main diagonal of form the local part of . Then, we partition the global part of into submatrices of size and we denote each submatrix as , where . By adding all-zero matrix to the right of , we form an extended matrix , where . We combine the extended submatrices to compose the global part of . Suppose has a full rank; we haveRecursively, for the code , we can obtain its parity-check matrix from the previously generated parity-check matrix for , . Suppose has a full rank; the rate of the code satisfiesIn particular, it is not necessary for to be a full-rank matrix for constructing the RC GC-LDPC codes. Using elementary row and column operations of , we have where and . Consider as a nonsingular matrix, where ; the rank of can be written as where . And it is clear to see that can be a full-rank matrix if and only if is a full-rank matrix. The construction for the parity-check matrix of the RC GC-LDPC codes is described in detail in Algorithm 1.

Input: , , , , and
Output:
Using the construction method described in Section 2 to form an matirx which
specify a GC-LDPC code with rate .
  for    do
Use as the mother matrix.
  for    do
Generate a matrix of size .
Generate a matrix of size which is square and has a full rank.
  for    do
Compose the parity-check matrix of the form
     
  for    do
Compose the matrix of the form
     
where is an all-zero matrix of size .
Compose the matrix of the form
     
update .

Furthermore, the RC CN-based QC-GC-LDPC codes with extension structure allow more efficient encoding. Especially for and , if is an identity matrix, the encoding of such RC CN-based QC-GC-LDPC codes is more efficient: after encoding the mother VNs, the encoding of the extended VNs only involves XOR operations on the precode output symbols.

Example 2. Consider the prime field GF(193) for code construction. Let , , , , , and . Based on the construction method described in Section 2, we form a binary matrix . It has one column weight 6, two row weights, 27 and 81. Based on base graph 1 in 5G standard, we construct a masking matrix of size for each submatrix on the main diagonal at the local part of [28]. Particularly, the first columns of are punctured columns. The degree distribution for is , . and are the variable and check degree distributions from the edge perspective. We can construct a matrix using to mask each submatrix on the main diagonal at the local part of . Suppose . Based on the construction method described in Algorithm 1, we construct a family of four-edge-type LDPC codes. Particularly, by applying graph extension, we obtain the protomatrix of and , where and . Particularly, and are connected by one edge if and only if . In the terminologies of protograph construction, lifting the protograph of and is equivalent to dispersing the base matrix of them [11]. Then, we can use the method in [29] to find circulants for the protomatrix of and . Based on the construction method described in Algorithm 1, we construct a family of four-edge-type LDPC codes. And we refer to its th member as , where . Consider that the four-edge-type LDPC code is constructed based on finite field which guarantees the structural property of algebraic construction, and the Tanner graphs of such codes have a girth of at least 6. The parameters of such family of four-edge-type LDPC codes are summarized in Table 1 and the diagram of its matrix is shown in Figure 4.

Example 3. In order to improve flexibility of code rate, we can puncture the parity bits from a family of four-edge-type LDPC codes. Based on presented in Example 2, for instance, we set the last 98 columns from as punctured columns, where . Then, we obtain (14682,12480) GC-LDPC code with a rate of 0.85 and denote it as .

4. Local/Global Two-Phase Decoding Scheme

For classical iterative decoding scheme, the decoder includes all the VNs in a block and performs total decoding operations in one phase [30]. We refer to such an iterative decoding scheme as one-phase iterative scheme. In contrast to classical iterative decoding scheme, Li et al. devised a two-phase local/global iterative scheme for CN-GC-LDPC codes [1, 2]. Taking advantage of the cascading structure of local part, we can split local part into independent sections. And each section can use an independent decoder at the local phase. If all sections of local part are successfully decoded and the locally decoded codeword satisfies the parity-check constraints in global part, the locally decoded codeword would be delivered to the user. If it does not, the global decoder starts to process the received codeword from the local decoder. In a good channel environment, we only need to use a group of ( or less) local decoders to process a group of ( or less) consecutive received sections in parallel. This means that we can process a consecutive sequence by some local sequences for a GC-LDPC code. The advantage of this decoding scheme is that lower latency and less memory requirements are required by the decoder. We refer to such a scheme as normal two-phase local/global iterative scheme. However, in a bad channel environment, we find that the local decoder performs a plenty of useless operations, which causes the unnecessary cost of the decoder. Therefore, we present a modified two-phase local/global iterative decoding scheme for CN-GC-LDPC codes.

4.1. Modified Local/Global Two-Phase Iterative Decoding Scheme

Let be the received sequences. Firstly, in local phase of decoding, received sequences are decoded by independent decoders with the maximum iteration number . If all the sections are successfully decoded and the locally decoded codeword satisfies the parity-check constraints in global part, the locally decoded codeword could be delivered to the user. If one of the decoders fails to decode a received section, we switch the decoding from the local phase to the global phase. If all sections are successfully decoded, but the locally decoded codeword does not satisfy the parity-check constraints in global part, save the decoded information (s) and return to the local decoder. We set the maximum iteration number of local decoders to . Then, if one of the decoders fails to decode a received section or the locally decoded codeword does not satisfy the parity-check constraints in global part, we switch the decoding from local phase to global phase.

In global phase of decoding, a global decoder is activated. It processes the received vector with the channel information and the combined decoded information (s) of successfully decoded sections as inputs. And the diagram of modified two-phase local/global decoding iterative scheme is illustrated in Figure 5.

We define the order of decoding complexity as the number of operations required per information bit and denote the order of decoding complexity for the normal two-phase decoding algorithm as . Suppose the number of operations for one iteration of global part is and the number of operations for one iteration in the th section of local part is , where . As stated in [13], we havewhere is the length of the information bits, is the number of iterations involving updates of variables in the th section of the local part, and is the number of iterations involving updates of variables in the global part. Then, the order of decoding complexity of the modified two-phase decoding algorithm, which is denoted as , can be summarized aswhere and are the number of iterations involving updates of variables in the th section of the local part in which maximum iterations number is and , respectively. As can be seen, in a bad channel environment, few sections are successfully decoded at first local phase. And each successfully decoded section performs not more than iteration operations. So, we haveConsidering , we have . Moreover, in a good channel environment, most successfully decoded sections satisfy the parity-check constraints in global part. Not more than iteration operations are required in each successfully decoded section. For , we have .

5. Numerical Results

In this section, we first present the simulation performance for RC GC-LDPC codes over the AWGN channel. Then, we compare the decoding complexity of different decoding schemes presented in Section 4. The decoding latency with different decoding schemes is also discussed.

5.1. Error-Correcting Performance

We now provide the simulated BER and BLER performances for RC GC-LDPC codes over the AWGN channel with QPSK signaling. It is assumed that all the simulations are performed using the belief propagation (BP) algorithm with the maximum iteration number 50, if not specified. The BER and BLER performances for different code rates are plotted in Figure 6 together with the corresponding Shannon limits. The iterative decoding thresholds achieved by the proposed RC GC-LDPC codes are summarized in Table 2. It can be seen that the gaps between the iterative decoding thresholds and the Shannon limits are very small. Figure 7 depicts the BER and BLER performances of Examples 1, 2, and 3. We then see that the proposed RC GC-LDPC codes are better than the QC-GC-LDPC codes formed by the classical method in Section 2.

5.2. Decoding Complexity

Figures 8 and 9 depict the average iteration number of and with one-phase, normal two-phase local/global, and modified two-phase local/global iterative schemes based on the BP decoding algorithm, respectively. For both and , the maximum iteration number of one-phase iterative scheme is set to 50. The maximum iteration numbers in local decoder and global decoder of normal two-phase local/global iterative scheme with them are 50 and 100, respectively. For modified two-phase local/global iterative scheme, , , and the maximum iteration number in global decoder of are 30, 20, and 50, respectively. And , , and the maximum iteration number in global decoder of are 60, 40, and 100, respectively. Based on Figures 8 and 9, we conclude that the normal two-phase local/global iterative scheme requires a significantly higher number of iterations than modified two-phase local/global iterative scheme at local phase and needs approximately the same iteration number as the modified scheme at global phase, especially at low and moderate SNRs. At high SNRs, two-phase local/global iterative scheme requires a smaller number of iterations than one-phase iterative scheme without performance hit.

Figures 10 and 11 depict the decoding complexity of and with one-phase, normal two-phase local/global, and modified two-phase local/global iterative schemes based on BP decoding algorithm, respectively. All operations associated with modulo-2 arithmetic have been neglected as conventionally done. The decoding complexity associated with BP algorithm is evaluated based on the forward and backward recursions proposed in [7]. For , the total complexity associated with one iteration of BP consists of 877,338 real multiplications, 104,328 real divisions, and 282,366 real additions at global phase. At local phase, it consists of 237,258 real multiplications, 29,736 real divisions, and 79,002 real additions in each local decoder. For , the total complexity associated with one iteration of BP consists of 559,872 real multiplications, 76,608 real divisions, and 198,720 real additions at global phase. At local phase, it consists of 129,984 real multiplications, 20,352 real divisions, and 20,352 real additions in each local decoder. Based on Figures 10 and 11, we conclude that the normal two-phase local/global iterative scheme requires significantly more operations than modified two-phase local/global iterative scheme at low and moderate SNRs.

5.3. Decoding Latency

The decoding delay in a data transmission system is defined as the delay incurred in receiving the coded bits before decoding takes place and the ensuing decoder processing delay in [31]. In this paper, we assume that all schemes being compared have approximately the same decoding complexity, but the decoder processing time is negligible. For one-phase iterative scheme, no information symbols are decoded until an entire block is received. Thus, the maximum decoding delay experienced by an information bit when LDPC code is used for one-phase iterative scheme is the arrival time of one incoming block. Suppose its number of iterations is . Then, the total decoding latency in received symbols and the total number of soft received values that must be stored in the decoder memory at any given time (decoding latency for short) can be represented by , where is the total number of symbols. For two-phase local/global iterative scheme, all information symbols are assigned to local decoders. Suppose the number of iterations in global phase is . For the th local decoder in two-phase local/global iterative scheme, suppose the number of iterations is . So, represents the decoding latency of two-phase local/global iterative scheme. By using local decoders in fully parallel local phase decoding, the maximum decoding delay experienced by an information bit is the arrival time of each incoming block in local decoder. Then, the decoding latency reduces to . Note that decreases with the increase of SNR. At moderate and high SNRs, the decoding latency approaches when . Since and , then . This means that latency and memory requirements of two-phase local/global iterative scheme are much less than for the one-phase iterative scheme when the channel environment is better.

6. Conclusion

In this paper, we introduced the graph extension through a four-edge-type LDPC code and presented a family of RC GC-LDPC codes; they are constructed by combining algebraic method and graph extension. It was shown that the proposed family of RC CN-GC-LDPC codes can provide more flexibility in code rate and guarantee the structural property of algebraic construction. It is confirmed, by numerical simulations over the AWGN channel, that the proposed RC GC-LDPC codes outperform their counterpart QC-GC-LDPC codes formed by the method in [1, 2] in terms of waterfall performance and exhibit an approximately uniform gap to the capacity over a wide range of rates. Moreover, we presented a modified two-phase local/global iterative scheme which can reduce unnecessary cost of local decoders at low and moderate SNRs.

Conflicts of Interest

The authors declare that there are no conflicts of interest regarding the publication of this paper.

Acknowledgments

This work was supported in part by the National Natural Science Foundation of China under Grants 61771364 and 61701368, the Joint Funds of the National Natural Science Foundation of China under Grant U1504601, and Youth Foundation of the Henan University of Science and Technology (2014QN030).