Design of Irregular SC-LDPC Codes With Non-Uniform Degree Distributions by Linear Programing

In this paper, we propose a new design method of irregular spatially-coupled low-density paritycheck (SC-LDPC) codes with non-uniform degree distributions by linear programming (LP). In general, irregular SC-LDPC codes with non-uniform degree distributions is difficult to design with low complexity because their density evolution equations are multi-dimensional. To solve the problem, the proposed method is based on two main ideas: a local design of the degree distributions for each pair of positions and pre-computation of the input/output message relationship. These ideas make it possible to design the degree distributions of irregular SC-LDPC codes by solving low complexity LP problems which are used when optimizing uncoupled low-density parity-check (LDPC) codes over the binary erasure channel. We also find a proper objective function for the proposed design methodology to improve the performance of SC-LDPC codes. It is shown that the irregular SC-LDPC codes obtained by the proposed method are superior to regular SC-LDPC codes in terms of both asymptotic and finite-length performances.

READ FULL TEXT VIEW PDF
POST COMMENT

Comments

There are no comments yet.

Authors

page 1

page 2

page 3

page 4

01/15/2020

Non-Uniform Windowed Decoding For Multi-Dimensional Spatially-Coupled LDPC Codes

In this paper, we propose a non-uniform windowed decoder for multi-dimen...
04/12/2019

Spatially Coupled LDPC Codes with Non-uniform Coupling for Improved Decoding Speed

We consider spatially coupled low-density parity-check codes with finite...
06/13/2019

A Finite-Length Construction of Irregular Spatially-Coupled Codes

Spatially-coupled (SC) LDPC codes have recently emerged as an excellent ...
01/05/2020

Design of Capacity-Approaching Low-Density Parity-Check Codes using Recurrent Neural Networks

In this paper, we model Density Evolution (DE) using Recurrent Neural Ne...
12/02/2016

Implementation and evaluation of data-compression algorithms for irregular-grid iterative methods on the PEZY-SC processor

Iterative methods on irregular grids have been used widely in all areas ...
06/20/2017

Single- and Multiple-Shell Uniform Sampling Schemes for Diffusion MRI Using Spherical Codes

In diffusion MRI (dMRI), a good sampling scheme is important for efficie...
06/21/2020

An Entropy-based Proof of Threshold Saturation for Nonbinary SC-LDPC Ensembles on the BEC

In this paper we are concerned with the asymptotic analysis of nonbinary...
This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

I Introduction

Spatially-coupled low-density parity-check (SC-LDPC) codes have attracted much attention due to their ability to universally achieve channel capacity over general binary memoryless symmetric (BMS) channels under iterative belief propagation (BP) decoding [1]. By coupling disjoint component low-density parity-check (LDPC) codes arranged at positions, SC-LDPC codes are constructed and their decoding performances under BP decoding approaches the maximum a posteriori (MAP) decoding performance of uncoupled LDPC codes. This phenomenon is termed the threshold saturation effect, which is empirically observed in [2] and analytically proved for the binary erasure channel (BEC) [3] and general BMS channels [1], [4].

Most studies of SC-LDPC codes focus on spatially-coupled codes composed of regular LDPC codes. However, irregular LDPC codes can be coupled to construct irregular SC-LDPC codes, where the threshold saturation effect also occurs [1], [5], [6]. Thus, there have been researches to construct SC-LDPC codes from irregular LDPC codes which outperform regular LDPC codes. The first approach to construct irregular SC-LDPC codes is coupling protograph-based codes [7] such as repeat-accumulate (RA) [8], accumulate-repeat-jagged-accumulate (ARJA) [9], and MacKay-Neal (MN) [10] codes. Spatially coupled ARJA codes [11], [12] and spatially-coupled MN codes [13], [14] show better asymptotic performance than regular SC-LDPC codes with bounded degrees. However, it is later known that the finite-length performance of spatially-coupled ARJA codes is rather worse than that of other spatially-coupled codes due to their inferior scaling behavior [15]. On the contrary, spatially-coupled repeat accumulate (SC-RA) codes [16] show the best finite-length performance compared to other spatially-coupled codes [15].

Similar to protograph-based spatially-coupled codes, randomly constructed irregular SC-LDPC codes can be constructed by coupling irregular LDPC codes with variable and check node degree distributions and . However, it is difficult to globally optimize the degree distributions and of irregular SC-LDPC codes with low-complexity because their density evolution (DE) equations [3] are multi-dimensional for the number of positions . Thus, many studies assume a nearly regular degree distribution with two distinct degrees because its optimization is possible by exhaustive searches. For example, SC-LDPC ensembles with two distinct degrees on check nodes are designed to improve the BP threshold over wide range of code rate [17]. In [18], they show that slightly imposing irregularity on the variable node degree distribution can improve the convergence speed. Also, it has been reported that this improvement in the convergence speed also results in an improvement of the finite-length performance [19]. Recently, an optimization method for irregular SC-LDPC codes without any constraints on the degree distributions is proposed [20]. Further, SC-LDPC ensembles with so called non-uniform degree distributions

are designed, where the degree distributions can differ for each position. By optimizing the degree distributions using a genetic algorithm, it is shown that the optimized SC-LDPC codes exhibit improved decoding performance compared to regular SC-LDPC codes.

In this paper, motivated by the ideas in [20], we propose a systematic method with low-complexity to design irregular SC-LDPC codes with non-uniform degree distributions. To reduce the design complexity, the proposed method iteratively solves linear programming (LP) problems. The LP problem is widely used when optimizing uncoupled irregular LDPC codes over the BEC [21], [22]. However, it is hard to directly apply the LP problem to the designing of the degree distributions of SC-LDPC codes because the DE equations are multi-dimensional. Thus, we introduce two important methods for designing the degree distributions. First, instead of designing the degree distributions at once, local designs are iteratively performed, where the variable node degree distributions of the target positions are obtained one at a time while keeping the degree distributions of the other positions constant. Second, the input/output message relationship between the variable nodes at the target positions and the remaining graph is pre-computed. These two methods allow us to obtain a one-dimensional DE equation, which enables the designing of the degree distributions simply, such as by solving LP problems.

The one-dimensional DE equation is used in [23] to optimize the degree distribution of additional variable nodes to mitigate the rate-loss of SC-LDPC codes, where the objective function for the optimization is to maximize the design rate. However, we observe that the objective function of maximizing the design rate is not proper when designing the degree distributions of irregular SC-LDPC codes. Thus, we use another objective function which minimizes the number of required iterations for successful decoding [22], [24]. The proposed design method finds the degree distributions of the target positions one at a time to minimize the number of required iterations in the one-dimensional DE equation. Although the proposed method aims to minimize the number of required iterations in the one-dimensional DE equation, it is observed that the overall number of required iterations in the multi-dimensional DE equations is also properly decreased by the proposed design method. In addition, the BP threshold is improved by the proposed design method if all of the degree distributions are locally designed, which is confirmed graphically from an analysis of the expected graph evolution [25]

. Numerical results show that irregular SC-LDPC codes with the degree distributions obtained by the proposed method exhibit superior BP threhold and finite-length performance compared to regular SC-LDPC codes. It is also shown that an additional degree of freedom on the check node degrees can improve the performance further. Finally, we introduce several methods which can be used to improve the performance by adopting the multi-edge type (MET) structure

[21] and applying the proposed method to SC-RA codes.

The remainder of the paper is organized as follows. Section II introduces the construction methods of SC-LDPC ensembles and the tools for analyzing the ensembles. In Section III, the methods to design the degree distributions of SC-LDPC ensembles are proposed. In Section IV, the finite-length performance of the SC-LDPC codes obtained by the proposed methods is shown and several methods for improving the performance further are presented. Finally, the conclusion is given in Section V.

Ii SC-LDPC Ensembles

Ii-a Construction of SC-LDPC Ensembles

Let and denote the variable and check node degrees of regular LDPC ensembles, respectively. The SC-LDPC ensemble considered in this paper is irregular SC-LDPC ensembles, where the degree distributions of the variable nodes at each position can be irregular while the check node degrees at each position are regular but can differ at each position. The SC-LDPC ensemble consists of variable nodes located at each of positions with check nodes located at each of positions, where . The variable nodes at position follow the edge perspective degree distribution [21] while the check nodes at position have degree . The number of edges between the positions in the graph is represented by a connectivity matrix , where the entry is the number of edges between the check nodes at position and the variable nodes at position . For example, the regular SC-LDPC ensemble [3] constructed by coupling regular LDPC ensembles has code parameters of for , for , and for .

In Fig. 1, Tanner graphs of three different SC-LDPC codes with , and are shown as examples and their code parameters are represented in Table I. Note that there are multiple edges in the Tanner graphs to represent various degree distributions with a small number of nodes. First, Graph 1 represents a regular SC-LDPC code, where the degrees of all of the variable nodes are equal to . In contrast, the degree distributions of the variable nodes at positions and in Graph are irregular. Graph 2 is called a SC-LDPC code with non-uniform degree distributions in that the degree distributions of the variable nodes at each position differ from each other. The objective of this paper is to find good degree distributions of the variable nodes at each position of the SC-LDPC ensemble. In addition, Graph 2 becomes Graph 3 after permitting a different number of connected edges between the positions, giving more freedom in the design of the degree distributions. Note that we assume a symmetric structure, that is, for all the codes in this paper.

(a) Graph 1
(b) Graph 2
(c) Graph 3
Fig. 1: Examples of Tanner graphs of SC-LDPC codes for , , and .
Graph 1
Graph 2
Graph 3
TABLE I: Parameters of the Tanner graphs in Fig. 1

For the given code parameters , , and , the detailed construction method of the SC-LDPC ensemble is described as follows. Let for . First, place variable nodes with degree distribution at position for . Then, there are variable node sockets at position , where is the average variable node degree of the variable nodes at position . To connect all of the sockets, the number of edges connected to the variable nodes at position should be equal to the number of sockets, that is, . Let be a random permutation on for position . Divide into disjoint subsets denoted by such that the size of becomes for . Similarly, place check nodes of degree at position for in the graph. Accordingly, there are check node sockets at position but some sockets cannot be filled if . Divide the randomly selected check node sockets among the check node sockets at position into groups randomly such that the size of group becomes for , where for . Then, the th check node socket in group at position is connected to the th variable node socket at position , where denotes the th element of .

The total numbers of variable nodes and check nodes placed in the graph are and , respectively. However, some check nodes at position for or cannot be connected to any variable nodes in the graph because the number of edges connected to check nodes is lower than the number of sockets . To be specific, a check node socket at position for or

cannot be connected to any variable node in the graph with probability

. Then, the expected number of check nodes with at least one connection to the variable nodes in the graph is given as

which is less than . Therefore, the design rate of the SC-LDPC ensemble is expressed as

(1)

Generally, because the last term of (1) is much smaller than the other terms, we ignore the last term when calculating the design rate for convenience.

Ii-B DE Equations of SC-LDPC Ensembles

In this paper, the channel is assumed to be the BEC with erasure probability . The DE is often used in predicting the performance in an asymptotic setting such as infinite code lengths and infinite numbers of iterations. Let and denote the average erasure probabilities of messages at iteration emitted from the variable nodes at position and the check nodes at position , respectively. Set the initial conditions as for all . Then, the evolution of can be expressed as

(2)

With the DE equations in (2), we can obtain the BP threshold which is defined as the maximum for which goes to zero for all . Additionally, we define the overall number of required iterations for successful decoding as the minimum such that for all and define the average convergence speed as [18].

Ii-C Expected Graph Evolution of SC-LDPC Ensembles

In [15], [25], the scaling law of SC-LDPC codes is derived to predict the finite-length performance of SC-LDPC codes. The scaling law of SC-LDPC ensembles depends on the scaling parameters derived by analyzing the statistical behavior of the number of degree-one check nodes in the remaining graph of the peeling decoding. In [25], a system of coupled differential equations to compute the expected number of degree-one check nodes is derived for regular SC-LDPC ensembles. Because the SC-LDPC ensemble considered in this paper has the non-uniform degree distributions, the differential equations to compute the expected number of degree-one check nodes should be modified as follows.

Consider the degree distributions of the original graph before the peeling decoder is initialized. First, consider the degree distribution of the variable nodes at position . Define the type of a variable node at position

using the vector

, where represents the number of edges connected to the check nodes at position . Although the profile of degrees of each variable node is sufficient to represent the DE equations in (2), the type of each variable node should be considered when calculating the expected graph evolution. Let be the probability that a variable node chosen at random from position in the original graph is of type . Considering the construction method of the SC-LDPC ensemble, we can see that the vector for the variable nodes at position follows a multinomial distribution with probabilities , where . Thus, the probability is given as

where . Next, consider the check nodes at position . Let be the probability that a check node chosen at random from position in the original graph is of degree , which is given as

For iteration of the peeling decoder, let be the number of iterations normalized by , i.e., . At time , let be the number of edges connected to the check nodes of degree , , at position , . Likewise, let be the number of edges that are connected to variable nodes of type at position , . After the initialization of the peeling decoder, the expected value of is expressed as

In addition, the initial values of the expected value of can be computed as

Let and , where the expectation is determined given the degree distributions in the remaining graph at time . In order to compute the expectation of and from the initial values, we solve the system of differential equations described as

The procedure used to obtain and is described as follows. Let be the probability that a variable node of type connected to a degree-one check node at position belongs to position . Then, we have

where . When a degree-one check node from position and the variable node connected to it are removed, we define as the probability that edges of the removed variable node are connected to the check nodes other than the removed check node at position . Then, we have

for , where denotes the maximum degree of variable nodes. The average number of degree- check nodes losing one edge when edges are randomly removed from check nodes at position is given as

where for and . Then, we have

where is the position at which a degree-one check node is removed at time . Finally, the expectations of and are described as

where Then, the expectation of the total number of degree-one check nodes in the remaining graph at becomes and the normalized number of degree-one check nodes is computed as .

Iii Proposed Design Methods of SC-LDPC Ensembles

In this section, we propose new design methods of code parameters , , and for the SC-LDPC ensembles.

Iii-a Pre-Computation of

Before describing the proposed design methods of the SC-LDPC ensemble, we introduce a procedure called pre-computation of and described in Algorithm 1. This procedure, firstly used in [23], is essential for the proposed design methods.

0:  
1:  for  do
2:     Set
3:     Update for all except and by DE equations (2) until the messages are saturated while fixing for all .
4:     Let be the incoming message to variable nodes at position , that is,
5:  end for
Algorithm 1 Pre-computation of [23]

In Algorithm 1, the graph can be considered as two parts, which are the variable nodes at positions and and the remaining graph, and then the input/output message relationship is obtained. First, the input message to the remaining graph is passed from the variable nodes at positions and to the remaining graph. And then the messages in the remaining graph are updated using the DE equations (2) until all of the messages are saturated while the messages from the variable nodes at positions and to the remaining graph are fixed at . Finally, let the incoming message to the variable nodes at positions and be . In other words, Algorithm 1 calculates the output message corresponding to the input message from the perspective of the remaining graph.

Consider a message update scheduling such that the message is updated only after the other messages are saturated to their fixed values. Under this message update scheduling, is updated from to because the incoming message to the variable nodes at position is . In other words, pre-computation of gives a one-dimensional DE equation for position with an initial value of under the message update scheduling described before. The one-dimensional DE makes it possible to design the SC-LDPC ensemble by the methods used to optimize uncoupled LDPC codes, such as maximizing the design rate [21] and minimizing the number of required iteration [22], [24].

Iii-B Maximizing Design Rate

0:  
1:  Initialization: Code parameters of the regular SC-LDPC ensemble
2:  for  to  do
3:     for  to  do
4:        Calculate the BP threshold by the DE equations (2)
5:        Pre-computation of by Algorithm 1
6:        Obtain by solving the following LP problem
7:        
8:     end for
9:  end for
Algorithm 2 Design method for maximizing design rate
Fig. 2: Design procedure of the proposed algorithms with and .

First, a design method to maximize the design rate is described in Algorithm 2. Maximizing the design rate can be achieved by solving the LP problem with the objective function to minimize the average variable node degree under the constraint of the successful decoding . Unlike the codes defined in Section II-A, where the number of variable nodes at each position is fixed to , there are variable nodes at position because edges heading to the variable nodes at each position are distributed to the variable nodes with the average variable node degree . Thus, minimizing the average degree corresponds to maximizing the number of variable nodes and the design rate.

In Algorithm 2, the graph is initialized with the regular SC-LDPC ensemble. Then, the degree distribution is designed starting from to maximize the design rate and is also determined by the designed degree distribution because of the symmetric code structure. To design , the value is pre-calculated; this is used to design to maximize the design rate. The degree distribution for the next position is designed in the same manner after designing . This local design is conducted until the number of iterations for the algorithm reaches or does not change with . For the other algorithms to be introduced, we apply the same design procedure, in which the local design of the degree distributions is conducted for each pair of positions one at a time, as in Fig. 2.

For the input values , and , the design rate is increased from to by Algorithm 2. Likewise, the design rate is increased from to by Algorithm 2 for . Fig. 3 shows the average variable node degree of each position for the SC-LDPC ensemble obtained by Algorithm 2 for and . It shows that the degree distributions of the center positions for and for are properly designed to increase the design rate by minimizing the corresponding average variable node degrees. However, the variable node degrees of the positions far from the center positions remain nearly identical to the initial degree . Thus, the fraction of the number of positions to be improved by Algorithm 2 becomes smaller as becomes larger. To achieve an improvement in all positions for large , a different objective function for the LP problem is required instead of maximizing the design rate.

Fig. 3: Average variable node degree of each position for the SC-LDPC ensemble obtained by Algorithm 2.

Iii-C Minimizing the Number of Required Iterations

Another objective function described in Algorithm 3 is minimizing the number of required iterations. Consider a non-increasing iterative function . Given an initial value , the iterative process is represented by and . The number of required iterations for the target value , , is defined as the minimum such that . In [22], the number of required iterations is approximated as

where , and .

0:  
1:  Initialization: Code parameters of the regular SC-LDPC ensemble
2:  for  to  do
3:     for  to  do
4:        Calculate the BP threshold by the DE equations (2)
5:        Pre-computation of by Algorithm 1
6:        Obtain by solving the following LP problem
7:        
8:     end for
9:  end for
Algorithm 3 Design method for minimizing the number of required iterations
Fig. 4: Evolution of average convergence speed as the for-loop in Algorithm 3 proceeds.
1 0 1 0 0 0 0 0 0
2 0.1916 0.4889 0.3194 0 0 0 0 0
3 0.3852 0 0.5769 0.0362 0 0 0.0017 0
7 0.6128 0 0 0 0 0.2644 0.0357 0.0870
8 0.6429 0 0 0 0 0 0 0.3571
9 0.6429 0 0 0 0 0 0 0.3571
10 0.6429 0 0 0 0 0 0 0.3571
TABLE II: Coefficients of for the SC-LDPC ensemble obtained by Algorithm 3 for

In the case of the one-dimensional DE of the SC-LDPC ensemble, the iterative function is given as . Thus, the number of required iterations from the initial value to the target value is approximated as

(3)

where . Thus, the design method that minimizes the number of iterations can be summarized as Algorithm 3, where the objective function is to minimize the equation (3). In Algorithm 3, there is the additional constraint , which implies that the average variable node degree should be equal to the variable node degree of the initial regular SC-LDPC ensemble to maintain the design rate. As an example, some part of coefficients of obtained by Algorithm 3 with , and are shown in Table II. Note that, to maintain the advantages of the regular SC-LDPC codes whose minimum variable node degree is larger than [26], we generally initialize the algorithm from the regular SC-LDPC ensemble with and the minimum degree constraint as . Instead, Algorithm 3 is not initialized from the regular SC-LDPC ensemble with because a non-zero fraction of degree-two variable nodes is unavoidably required to introduce a fraction of variable nodes with degree larger than .

In order to investigate the change of the overall number of required iterations in the DE equations (2) at each local design, the evolution of the average convergence speed is shown in Fig. 4 as the for-loop in Algorithm 3 proceeds. It shows that the average convergence speed increases steadily as the local design of each position proceeds. In addition, we note an increase in the BP threshold at for-loop 6, where the BP threshold corresponds to the erasure probability that the average convergence speed becomes zero.

(a) Algorithm 2
(b) Algorithm 3
Fig. 5: Evolution of for the SC-LDPC ensembles obtained by Algorithms 2 and 3 as the for-loop proceeds.

To observe the change in the SC-LDPC ensemble according to the local design of Algorithms 2 and 3 graphically, the expected graph evolution can be used. With the differential equations in Section II-C, Fig. 5 shows the evolutions of at for the SC-LDPC ensembles obtained by the algorithms as the for-loop in the algorithms proceeds. The evolution of at the initialization corresponds to for the regular SC-LDPC ensemble that is analyzed in [25]. According to the analysis in [25], remains constant at the local minimum for a certain interval of , referred to as the critical phase. On the basis of the critical phase, the evolution of is divided into three phases: The initial phase, the critical phase, and the third phase. Most of the variable nodes located in the boundary positions have already been recovered in the initial phase. Then, in the critical phase, two decoding waves emerge and travel along the inner positions while recovering the variable nodes through which the decoding waves pass. If the local performance of each position is defined as the number of degree-one check nodes when the decoding waves pass through the position, the steady value of in the critical phase implies that the local performances of the inner positions are all the same. Moreover, it can be said that the BP threshold of the SC-LDPC ensemble is determined by the local performance of the inner positions. Finally, in the third phase, the decoding waves meet around the center and the variable nodes located at the center positions are recovered, which corresponds to the increase in the value.

Fig. 5(a) shows the evolution of as the for-loop in Algorithm 2 proceeds. After performing for-loop 2 in Algorithm 2, the degree distributions of the center positions from to are locally designed to decrease their average variable node degree. However, the value of is decreased in the third phase at the expense of lowering the average variable node degrees of the center positions as in Fig. 5(a). In addition, it is observed that the minimum value of in the third phase is nearly identical to the value of in the critical phase due to the constraint in Algorithm 2 that the BP threshold should be maintained. If the minimum value of in the third phase becomes smaller than the value of the critical phase, the BP threshold will be degraded. In other words, because the value of in the third phase is larger than the critical phase value for the initial regular SC-LDPC ensemble, there is a room for improvement in the design rate for the center positions. However, an improvement in the design rate of the inner positions cannot be achieved while maintaining the BP threshold. Accordingly, the average variable node degree of the positions except the center positions does not change, as indicated in Fig. 3, and the evolution of is unchanged from for-loops to .

Compared to Algorithm 2, Fig. 5(b) shows the evolution of as the for-loop in Algorithm 3 proceeds. After for-loop 2, where the local design has been performed from center positions , in the right part of the critical phase increases. This means that the local design improves the local performance of the center positions and accordingly the length of the critical phase is shortened and the overall number of required iterations is decreased. Likewise, from for-loops 2 to 4, the length of the critical phase is steadily shortened. After for-loop 6, the critical phase observed in the initial regular SC-LDPC ensemble disappears and only a single local minimum point remains. The local minimum value is greater than the value of in the critical phase, which means that the BP threshold is increased. Further, in for-loop 8, the critical phase observed in the initialization completely disappears, which implies that the BP threshold is increased significantly. In other words, the BP threshold is increased in for-loop 6 because the local performances of positions have already been improved. Conversely, the BP threshold does not increase up to for-loop because the local performances of positions and , which are not yet designed at this point, become a bottleneck despite the fact that the local performances of positions are improved by the local design. On the other hand, the BP threshold is increased when the bottleneck positions and are designed in for-loop . In summary, the BP threshold can be increased if the degree distributions of all positions are properly designed by Algorithm 3. In Table III, the BP thresholds of the regular SC-LDPC ensemble and the SC-LDPC ensembles obtained by Algorithm 3 are shown.

SC-LDPC, Regular
SC-LDPC, Alg. 3
SC-LDPC, Alg. 4
TABLE III: Comparing the BP thresholds of the regular SC-LDPC with the ensembles obtained by the proposed algorithms
Fig. 6: Correlation between the two kinds of numbers of required iterations.

It is important to remark that the degree distributions obtained by Algorithm 3 are not the global optimum that minimizes the overall number of required iterations in the DE equations (2) because of the two facts. First, the local design is performed instead of the global design. Second, the one-dimensional DE assumes different decoding scheduling from the conventional parallel scheduling as mentioned in Section III-A. Therefore, minimizing the number of required iterations in the one-dimensional DE equation does not guarantee minimization of the overall number of required iterations in parallel scheduling. However, we numerically observe that these two kinds of numbers of required iterations are generally proportional. Fig. 6 shows the correlation between the numbers of required iterations in the one-dimensional DE equation and in DE equations (2) at for-loops 6 and 8 in Algorithm 3. Each point in Fig. 6 is the numbers of required iterations measured at for a randomly generated degree distribution. According to Fig. 6, it can be seen that both numbers of required iterations are generally proportional and thus the objective function of Algorithm 3 is proper for reducing the overall number of required iterations.

Iii-D Minimizing the Number of Required Iterations with Non-Uniform Check Node Degrees

0:  
1:  Initialization: Code parameters of the regular SC-LDPC ensemble
2:  for  to  do
3:     for  to  do
4:        Calculate the BP threshold by the DE equations (2) and set
5:        for  to  do
6:           for  to  do
7:              , ,
8:              ,
9:              Pre-computation of by Algorithm 1
10:              Obtain by solving the following LP problem
11:           end for
12:        end for
13:        
14:        
15:     end for
16:  end for
Algorithm 4 Design method for minimizing the number of required iterations for the SC-LDPC ensemble with non-uniform check node degrees

In Algorithm 3, we consider the SC-LDPC ensemble with a uniform check node degree. However, additional improvements can be achieved by permitting non-uniform check node degrees for the SC-LDPC ensemble, which is considered in Algorithm 4. For example, while designing , the degree is changed from to and the optimal value is selected such that the approximated value of the number of required iterations in (3) is minimized. Such comparison is performed for all degrees of check nodes connected to the variable nodes at position , that is, and then the optimal result is obtained. Note that the corresponding entries of the connectivity matrix should be modified according to the selected check node degree. This algorithm permits non-uniform check node degrees for each position and a different connectivity matrix from that of the regular SC-LDPC ensemble. Because it adds a degree of freedom in the design of , Algorithm 4 has higher complexity than Algorithm 3 but gives code parameters.

Unlike Algorithm 3, Algorithm 4 can be initialized with the regular SC-LDPC ensemble with and the minimum variable node degree because the average variable node degree can be higher than if the degrees of the connected check nodes are increased. For example, consider when the positions and are firstly designed for and . Recall that the number of edges coming into the variable nodes at position should be equal to the number of sockets and that there are edges between two connected positions. Thus, the average variable node degree of the variable nodes at position should be equal to because the number of edges coming to the variable nodes at position is for the regular SC-LDPC ensemble. However, if the degree of check nodes at position is increased from to and the number of edges between variable nodes and check nodes at position is accordingly increased from to as an example, the number of edges connected to variable nodes at position becomes . Then the average variable node degree becomes . Therefore, variable nodes of higher degrees can be introduced while maintaining the minimum variable node degree as .

Table III summarizes the BP thresholds of the SC-LDPC ensembles obtained by the proposed algorithms. Since the BP thresholds are better with than with