A Physicallayer Rateless Code for Wireless Channels
Abstract
In this paper, we propose a physicallayer rateless code for wireless channels. A novel rateless encoding scheme is developed to overcome the high error floor problem caused by the lowdensity generator matrix (LDGM)like encoding scheme in conventional rateless codes. This is achieved by providing each symbol with approximately equal protection in the encoding process. An extrinsic information transfer (EXIT) chart based optimization approach is proposed to obtain a robust check node degree distribution, which can achieve nearcapacity performances for a wide range of signal to noise ratios (SNR). Simulation results show that, under the same channel conditions and transmission overheads, the biterrorrate (BER) performance of the proposed scheme considerably outperforms the existing rateless codes in additive white Gaussian noise (AWGN) channels, particularly at low BER regions.
I Introduction
Rateless codes [1] were initially developed to achieve efficient transmission in erasure channels. The Luby transform (LT) code [2] is broadly viewed as the first practical realization of rateless codes. The LT encoded symbols are generated in accordance with a specific degree distribution and there is potentially an unlimited number of encoded symbols. These symbols are generated on the fly and broadcasted to the receiver until an acknowledgment (ACK) response of successful decoding is received at the transmitter.
Ideally, a rateless code should allow the receiver to recover the message symbols with high probability by receiving as few encoded symbols as possible. Aiming to reduce the necessary number of encoded symbols, Shokrollahi proposed Raptor codes in [3]. In Raptor codes, a precoding (e.g., based on lowdensity paritycheck (LDPC) codes) is applied to the message symbols prior to the LT code. In [3], Raptor codes are constructed in systematic and nonsystematic manners for different erasure channel scenarios.
The initial work on rateless codes has mainly been limited to erasure channels with the primary application in multimedia video streaming. Recently, the design of rateless codes for wireless channels, such as binary symmetric channels (BSC) [4], additive white Gaussian noise (AWGN) channels [5], [6], as well as fading channels [7], has attracted significant attention. Rateless codes have a wide spectrum of applications in various modern wireless communication networks, such as to enhance the transmission efficiency in IEEE adhoc 802.11b wireless networks [8] and cooperative relay networks [9], [10], and to control the peaktoaverage power ratio in OFDM systems [11]. Rateless codes are particularly beneficial to wireless transmissions because, in contrast to traditional fixedrate coding schemes, the transmitter potentially does not need to know the channel state information before sending its encoded symbols, and the receiver can retain a resilient decoding performance. This property is of particular importance in the design of codes for time varying wireless channels.
In general, there are two categories of physicallayer rateless codes for wireless channels: systematic [8], [12] and nonsystematic [6], [13], [14], [15]. For systematic rateless codes, the systematic message symbols are first transmitted to the receiver, followed by a number of encoded symbols. For nonsystematic rateless codes, only encoded symbols are broadcasted. The receiver uses the classic belief propagation (BP) algorithm for decoding [16]. At the transmitter, the encoder of the existing rateless codes uses coding schemes that are akin to the lowdensity generator matrix (LDGM) codes [17]. The LDGMlike rateless codes are of linear complexity for encoding and their encoded symbols can be simply calculated on the fly.
A major drawback of the existing physicallayer rateless codes is the notably high error floor. This error floor is present mainly because, from the BP decoding perspective, the encoder creates an encoded symbol by selecting systematic message symbols only. As a result, the encoded symbol is connected to only one check node and cannot receive updated information as the decoding progresses. Therefore, an erroneous encoded symbol keeps propagating the error message through its corresponding check node to the systematic message symbols, which are connected to that check node. To improve the error floor performance, a considerable amount of research has been conducted in the past several years, which can be broadly divided into two directions. One direction applies serial concatenated coding schemes [13], [14], [18], where the LDGMlike rateless code is used as a component code in the concatenation structure. The other direction modifies the LDGMlike rateless code as a standalone code without concatenation [6], [15]. As reported in [6], the error performance of concatenation codes is largely determined by the standalone rateless code itself, and the concatenation will inevitably increase the system complexity. Therefore, in this paper, we will focus on the design of the standalone rateless code. In [15] and [19], it shows that the error floor in LDGMlike codes is closely related to the systematic message symbols connected to a relatively small number of check nodes. The error floor can be reduced to a certain level by reducing the number of message symbols of a lowerdegree. For this purpose, [15] proposed to connect all message symbols to an approximately equal number of check nodes. However, the method in [15] suffers from a high error floor problem especially at low signal to noise ratio (SNR) regime. This is because all encoded symbols still have degreeone, and thus cannot receive updated information from other check nodes in the BP decoder.
Another major drawback of the existing physicallayer rateless codes is that different wireless channel conditions need different check node degree distributions to achieve the nearcapacity performance [6]. This is primarily because, for the LDGMlike rateless codes, the degree of systematic message symbols continues to increase as the transmission goes on to generate and transmit more encoded symbols. From the extrinsic information transfer (EXIT) chart perspective [20], increasing the degree of systematic message symbols will change the EXIT curve of variable nodes. To achieve a low biterrorrate (BER) for a nearcapacity transmission overhead, an open but minimum spacing EXIT chart tunnel is required. As a result, the inverted EXIT curve of check nodes needs to follow the change, which in turn causes the check node degree distribution to change. Obviously, to utilize multiple distributions and adjust them to fit different channel conditions would complicate the transmission mechanism. A robust check node degree distribution that can perform well over a wide range of SNRs would dramatically simplify the system. Some initial studies [14], [21] have attempted to design a robust degree distribution, but the progress has been limited so far.
In this paper, we first develop a rateless encoding approach to resolve the high error floor problem caused by the conventional LDGMlike rateless encoding schemes in wireless channels. For the proposed approach, the encoder creates an encoded symbol by selecting not only the systematic message symbols, but also the encoded symbols created prior to the present encoded symbol. By doing so, each encoded symbol will be connected to multiple check nodes in the Tanner graph [22]. Moreover, to provide all the symbols with approximately equal protection in the BP decoder, we require each variable node to connect to an approximately equal number of check nodes. To achieve this, we let the variable nodes with a lower degree be selected with a higher priority when the encoder selects variable nodes for each check equation to form an encoded symbol. By using the proposed encoding approach, the encoded symbol can exchange information with other symbols through multiple check nodes as the decoding progresses. As a result, the error floor is lowered.
To provide satisfactory performance over a wide range of SNRs, we develop an EXITchartbased optimization approach and achieve a near optimal robust check node degree distribution for the proposed rateless code. This robust distribution is able to create a constant EXIT chart tunnel for different SNRs. In general, for the conventional rateless codes under a particular channel condition, the shape of the EXIT curve of variable nodes is determined by the variable node degree distribution. This distribution depends on two factors: one is the check node degree distribution, and the other is the number of symbols transmitted [6]. To achieve a satisfactory decoding performance, the lower the SNR is, the more symbols need to be transmitted. Therefore, when SNR changes, the EXIT curve inevitably changes. In contrast, for the proposed rateless code, we can keep the EXIT curve unchanged by dividing the variable nodes involved in the BP decoder into two sets and manipulating the sizes of the two sets. One set corresponds to the received symbol sequence from the wireless channel. This received sequence consists of all the encoded symbols and the message symbols that are actually transmitted. The other set of variable nodes corresponds to the remaining message symbols that are yet to be transmitted. We adjust the number of message symbols in the two sets in order to achieve a stable EXIT curve of variable nodes for a desired range of SNRs. Consequently, we can achieve a wellbehaved and constant EXIT chart tunnel leading to superior performances. Simulation results show that, under the same channel condition and transmission overhead, the BER performance of the proposed code considerably outperforms the existing rateless codes in additive white Gaussian noise (AWGN) channels, particularly at low BER regions.
The rest of the paper is organized as follows. In Section II, the system model is introduced. In Section III, the conventional rateless codes are discussed. In Section IV, the construction of the proposed rateless code is described first, followed by a discussion of optimizing the check node degree distribution based on the EXIT chart analysis. Simulation results are presented in Section V. Some concluding remarks are made in Section VI.
Ii System Model
In this paper, we consider a pointtopoint physicallayer transmission in AWGN channels. The system model is shown in Fig. 1. Let denote the binary message symbols, generated by the source, where is the th symbol and is the length of message. The message symbols are first encoded by a rateless channel encoder. Let represent the th binary rateless coded symbol, which is then modulated and transmitted. We consider the binary phase shift keying (BPSK) modulation. Let be the modulated signal of . The received signal, , at the receiver is given by
(1) 
where is the transmission power, which is assumed to be of unity power, i.e. , and is the realvalued additive noise in AWGN channels with zeromean and variance of . After receiving the rateless coded symbols, the receiver applies the BP decoding algorithm [16] to recover the source message. For the rateless code, the encoder generates an unlimited number of symbols and keeps transmitting these symbols until it receives an ACK response from the receiver.
Iii Conventional Physicallayer Rateless Codes
In the encoding phase, the encoder first draws a value of from a distribution called the check node degree distribution. The encoder then randomly selects systematic message symbols, and performs binary summation (i.e. XOR) of these selected symbols to generate an encoded symbol. The relationship of systematic message symbols and encoded symbols can be represented by a bipartite Tanner graph [22]. Fig. 2 shows the Tanner graph of the conventional LDGMlike rateless codes. In the Tanner graph, the systematic message symbols are denoted by ‘’ and the encoded symbols by ‘’. The vertices ‘’ are check nodes representing the paritycheck equation constraint.
At the receiver, to evaluate the BER performance of the rateless codes in AWGN channels, Etesami and Shokrollahi introduced a formal definition of the reception overhead of a decoder in [6]. Let denote the number of binary symbols collected at the receiver to perform satisfactory decoding in the BP decoder. We express as
(2) 
where is the achievable code rate for binaryinput continuousoutput AWGN channels with the noise level parameter . This noise level is often called the Shannon limit. From (2), we can see that the overhead represents the number of collected binary symbols away from the optimal number defined by .
For equiprobable , is given by [23]
(3) 
where
(4) 
Since there is no closed form expression, the integral in (3) is evaluated by numerical integration techniques [24]. Table I and Fig. 3 show the Shannon limits as a function of some specific code rates . These values will be used later for the design of the proposed rateless code. The last column in Table I is the Shannon limit expressed as the ratio (dB) of signal energy per symbol to noise power spectral density, and is defined as
(5) 
0.501  0.977  0.1934 
0.912  0.5  3.4104 
0.999  0.2859  7.864 
Iv Proposed Physicallayer Rateless Codes Scheme
In this section, the construction of the proposed rateless code is described first. A ballintobin method is developed to have the encoded symbol connected to multiple check nodes, and a full rank paritycheck matrix tailored to the transmission characteristics of wireless channels is constructed. The EXITchartbased optimization program is then employed to optimize the robust check node degree distribution.
Iva Construction of the Proposed Coding Scheme
To overcome the high error floor problem in the LDGMlike encoding scheme, we propose a rateless coding scheme where the encoder generates an encoded symbol by using not only the systematic message symbols, but also the encoded symbols created before the present one. Each encoded symbol will be connected to multiple check nodes (check equations). Through these check nodes, each variable node and check node can exchange information with other nodes as the BP decoding progresses. In this way, the error floor can be lowered considerably.
Let us look at a simple example in Fig. 4, which illustrates the proposed encoding representation by using a Tanner graph. In this example, the number of systematic message symbols . The set of vertices on the left is called variable nodes, representing the systematic message symbols ‘’ and the encoded symbols ‘’. The vertices ‘’ on the right are check nodes. Since each encoded symbol is generated by a check equation, each variable node corresponding to an encoded symbol is connected to its corresponding check node (check equation) in the graph.
An ideal rateless code commonly requires a check node to be randomly connected to variable nodes. For a check node of degree in the LTbased encoding schemes, the check node selects systematic message symbols in a uniformly random manner to produce an encoded symbol as shown in Fig. 2. This implies that the degree of the message symbols, or in other words, the number of check nodes a message symbol connects to, can be very broadly distributed. Some of the message symbols may not even have a connection to any check node unless a sufficiently large number of check nodes are provided. Consequently, even for very high SNRs, there is still a great chance that the decoding error would occur due to the unconnected message symbols. Thus, from the transmission efficiency point of view, a completely random selection would not be suitable for high SNR regions in AWGN channels. To boost the transmission efficiency at high SNRs, we apply a full rank constraint to the paritycheck matrix H of the proposed rateless code. The structure of H of the code in Fig. 4 is shown in Fig. 5. Each row of H corresponds to a paritycheck equation and each column of H corresponds to a symbol in the rateless code. We decompose H into two parts. The first part of H corresponds to the encoded symbols and consists of the ()th to the rightmost columns of H. This part is a sparse lower triangular matrix. The second part of H corresponds to the message symbols and consists of the first columns of H. In the second part, a sparse upper triangular matrix is on top of a regular sparse matrix. The purpose of producing the upper triangular matrix is to guarantee a full rank matrix for the first rows of H. This full rank design ensures that when SNR is sufficiently high, even though none of the message symbols are transmitted, all message symbols can be successfully decoded as soon as the decoder receives the first encoded symbols. When SNR is lowered, more symbols have to be transmitted to achieve satisfactory decoding performance. In this case, we require all the variable nodes to connect to an approximately equal number of check nodes, which ensures that all transmitted symbols receive almost the same protection from the BP decoder. In the following, a ballintobin encoding scheme is developed to construct a rateless code as discussed above.
Ballintobin encoding procedure: to better describe the encoding process, let us first look at an example with . Suppose there are ‘variable balls’, , corresponding to variable nodes. As shown in Fig. 6, these variable balls are classified into two groups. The first group, which we call the systematic ball group, includes balls, , representing the systematic binary message symbols. The second group, which we call the encoded ball group, contains balls, , representing the encoded symbols, and the values for these encoded symbols are to be determined in the encoding process. Let denote the check node degree distribution, where . represents the probability that a check node has degree , and is the maximum check node degree. Similarly, we denote by the maximum variable node degree. There are degree bins labeled as ‘Bin of Degree ’, ‘Bin of Degree ’, ‘Bin of Degree ’, …, ‘Bin of Degree ’. A ball sitting in ‘Bin of Degree ’ means that is of degree and has connections to check nodes. We also introduce a bin labeled as ‘Buffer Bin’ to produce the upper triangular matrix in H. Only systematic balls can be put into ‘Buffer Bin’ by the encoder. If a ball is put into ‘Buffer Bin’, it will not be used to generate encoded symbols unless drawn out of ‘Buffer Bin’ and put into the degree bins. The detailed application of the ‘Buffer Bin’ will be described later in this section. In addition, since there are encoded symbols, we have check nodes, in Fig. 6, correspondingly.
Denoting by the index of the check nodes, the encoding procedure progresses as increases from one to , and is divided into two phases. Phase I, , will generate the first encoded symbols, which will form the upper triangular matrix of H; Phase II, , will generate the rest encoded symbols. Before the encoding process begins (, Fig. 6), all systematic balls sit in ‘Bin of Degree ’.
The st encoding step (): as shown in Fig. 7, firstly, the encoder randomly produces a degree number according to the check node degree distribution and assigns it to the check node . In this example, . Since is already connected to , the encoder then picks more variable balls out of ‘Bin of Degree ’ in a uniformly random manner (e.g. , and ) and calculates the value of by combining the values of these balls using modulo2 addition. From the perspective of H, the first, third, sixth and seventh columns of the first row have entries of , and the other columns of the same row have entries of . Secondly, the encoder moves the variable balls involved in the calculation (i.e. , , and ) to ‘Bin of Degree ’, since they have had one connection to the check nodes. Thirdly, the encoder randomly chooses one systematic ball (e.g. ) from those systematic ones picked in the present encoding step, and moves it into ‘Buffer Bin’. At last, the ‘Buffer Bin’ will record the degree bin from which the systematic ball comes.
The nd encoding step (): as shown in Fig. 8, the encoder randomly produces a degree number for (e.g. ). In order to have each variable node connected to an approximately equal number of check nodes, we require the encoder to select as many variable balls as possible in the bin labeled with the lowest degree. If there are not enough balls in this bin, the encoder will take all of them and randomly choose the rest from the bin labeled with the second lowest degree. It means that balls with a lower degree have a higher priority to be chosen by the check nodes than those with a greater degree; balls sitting in the same degree bins, i.e. of the same degree, have the equal chance to be chosen. In this example, the degree number for is , so the encoder firstly picks all the three variable balls , and in ‘Bin of Degree ’ and randomly chooses a variable ball from ‘Bin of Degree ’ to calculate the value of ball . Next, the encoder moves balls , , and to ‘Bin of Degree ’, and ball to ‘Bin of Degree ’. Finally, the encoder randomly chooses the systematic ball and moves it into ‘Buffer Bin’.
In the remaining of Phase I, a similar encoding procedure is performed for . In Phase I, we require the encoder to pick at least one systematic ball in each encoding step. Each time increases by one, the encoder chooses one systematic ball, which it picks to form the encoded symbol in the th encoding step, and moves it into ‘Buffer Bin’. Systematic balls sitting in ‘Buffer Bin’ will not be picked again by the encoder to generate any other encoded symbols until Phase I ends. It means that, if a systematic ball is put into ‘Buffer Bin’ in the th encoding step, the ()th entry is ‘’ and there will be no more entries of ‘’ from the ()th to the th row for the th column. By doing so, as the encoding progresses from the st to the th step, we can obtain a matrix which is equivalent to the upper triangular submatrix of H in Fig. 5.
The ()th encoding step (): as shown in Fig. 9, Phase II of the encoding process starts. At this point, the ‘Buffer Bin’ has collected all the systematic balls. The encoder first puts all these systematic balls back into those degree bins from which they were moved to the ‘Buffer Bin’ during Phase I. Next, the encoder performs the same process as in Phase I except that the ‘Buffer Bin’ is not used, because the encoder does not move balls to ‘Buffer Bin’ in Phase II. The encoding process goes on as increases until it reaches .
By following the steps above, we obtain a rateless code that can be represented by a paritycheck matrix H as shown in Fig. 5. Next, we discuss the optimization of the robust check node degree distribution for a desired range of SNRs.
IvB Optimization of the Robust Check Node Degree Distribution
The check node degree distribution is usually expressed in the polynomial form [6] and is given by
(6) 
So we have . The check node degree distribution can be defined with respect to the nodes themselves as or with respect to the edges as . Let , , represent the check node degree distribution with respect to the edges, i.e. the probability that a given edge is connected to a check node of degree . The degree polynomial with respect to the edges is defined by
(7) 
The formula for converting between the nodeview and edgeview distributions is given as
(8) 
where is the average degree of check nodes.
Degree distributions are similarly defined for the variable nodes. We denote and the polynomials for the variable nodes with respect to the nodes and the edges, respectively. Assuming there are encoded symbols, and denoting by the average degree of variable nodes, we have
(9) 
Recall that, for the proposed rateless encoding scheme with a sufficiently large , the majority of variable nodes have a degree approaching the average degree . From (9), the variable node distribution can be approximately given by a distribution form for variable nodes in regular LDPC codes as
(10) 
Alternatively, in practice, to achieve a more accurate variable node degree distribution, we can use computer simulations by first generating the variable node degree distribution many times using a fixed check node degree distribution, and then calculating the empirical mean.
The EXIT chart [20], [25] is a popular curve fitting tool widely used to optimize degree distributions. This method tracks the extrinsic mutual information between the transmitted BPSK symbols and the value of extrinsic loglikelihood ratios (Lvalue) in the BP decoder. Let denote the th iteration of the BP decoder. At the th iteration, an extrinsic Lvalue on an edge outgoing from a variable node to a check node is given by
(11) 
where is the Lvalue of the received symbols that are determined from the channel measurement. is the incoming extrinsic Lvalue, at the th iteration, to the variable node from a check node , which is in connection to this variable node, and is given by
(12) 
For the initial phase where and from (1), we have
(13) 
where is the conditional probability density function (pdf) of the signal at the output of the AWGN channel given the input signal . Thus, we have the variance of as
(14) 
The EXIT chart analysis is carried out under two main assumptions. Firstly, the code Tanner graph can be represented by a tree graph [6], [26], [27], so that all involved random variables are independent. The second assumption is that the extrinsic Lvalues passed between nodes have a symmetric Gaussian distribution for mean and variance [20], [26]. Let function denote the mutual information between the transmitted BPSK symbols and the extrinsic Lvalues with variance , which can be expressed as
(15) 
where is the entropy function. Let be the average mutual information between the BPSK symbols and the Lvalues incoming to variable nodes, the average mutual information outgoing from variable nodes is then given by
(16) 
On the side of check nodes, assume that is the average mutual information between the BPSK symbols and the outgoing Lvalues calculated by check nodes, the average mutual information incoming to check nodes is given by
(17) 
The derivation of (16) and (17) is detailed in [20]. In the EXIT chart analysis, the sets of variable nodes and check nodes are respectively referred to as the variable node decoder (VND) and check node decoder (CND) [20]. These two decoders form the BP decoder. The curve , , is referred to as EXIT curve of the VND, and the curve , , is referred to as inverted EXIT curve of the CND. Three requirements need to be satisfied in order to achieve a near optimal degree design. Firstly, both the VND and inverted CND curves should be monotonically increasing functions and reach the point on the EXIT chart. Secondly, the VND curve should be always above the inverted CND curve. And thirdly, the VND curve has to match the shape of the inverted CND curve as accurately as possible. Consequently, the VND and inverted CND curves build an EXIT chart tunnel area. The EXIT chart analysis views iterative decoding as an evolution of the mutual information in the EXIT tunnel, starting from point . When the mutual information equals one, there are no bit errors.
As the transmission progresses, i.e. the code rate changes, for a fixed degree distribution of check nodes, the inverted CND curve will stay unchanged. It is desirable if we can obtain a suitable VND curve that is unchanged as well, so that a stable EXIT chart tunnel can be obtained. From (16), it can be observed that the shape of the VND curve depends on two elements. The first element is the variable node degree distribution , which is in turn determined by the check node degree distribution and the number of encoded symbols. The second element for shaping the VND curve is the channel parameter . This parameter determines the starting point of the VND curves, , which is also the point that the evolution of the mutual information starts from in the BP decoder.
We start the design of the robust degree distribution by trying to maintain the quantity of unchanged as the transmission goes on. Let us first consider a scenario where the SNR is sufficiently high, so that the receiver can successfully decode all the systematic message symbols as soon as it receives encoded symbols. The reason for sending encoded symbols at first, rather than sending message symbols themselves, is that the encoded symbols can provide variable nodes with protection by using parity check equations in the BP decoder. In this case, the BP decoder has variable nodes. From Fig. 4, we can observe that these variable nodes can be divided into two sets. One set consists of the th to th variable nodes representing encoded symbols. For this set, the variable nodes are initiated by Lvalues of the received symbols from the AWGN channel. From (16) and let , the quantity of the initial average mutual information for these variable nodes is given by
(18) 
As shown in [20], is the capacity of the channel with , which in our case is the achievable code rate for the AWGN channel with BPSK modulation. For sufficiently high SNRs, is close to one. The other variable node set consists of the message symbols. Since the message symbols have not been transmitted yet, the initial mutual information for these variable nodes is given by . Let and denote the number and the percentage, respectively, of the variable nodes that have zero initial mutual information in the BP decoder. We have
(19) 
where is the number of encoded symbols. For the considered scenario, , so . The quantity of is then given by
(20) 
When SNR is lower, more symbols are necessary to be transmitted to guarantee a reliable decoding. Let us consider a scenario where SNR is about dB. From Table I, we know that the achievable code rate . From (20), we observe that it requires a neartozero to maintain . A neartozero means that, either the BP decoder receives no message symbols but an infinitely large number of encoded symbols, i.e. and in (19), or the sender starts to supply message symbols at some point of the transmission, i.e. to decrease . The latter approach can effectively reduce to zero. In this paper, we refer to it as the reverse systematic transmission.
Let us represent this proposed reverse mechanism by partitioning the variable nodes into four subcodes, namely Subcode , , and as shown in the example in Fig. 4. Subcode contains all the systematic message symbols represented by the first variable nodes. Subcode is the first encoded symbols. The th to th encoded symbols constitute Subcode , where function represents the nearest integer to , and is a positive value to be determined in the optimization program. Subcode consists of encoded symbols from the th encoded one to a potentially unlimited number due to the rateless property. The encoded symbols in Subcodes and are firstly transmitted in sequence, followed by the message symbols in Subcode , and finally more encoded symbols in Subcode are sent. The sender can transmit symbolbysymbol. Alternatively, it can transmit blockbyblock and each block consists of a fixed number of symbols. The transmission will be terminated when the sender receives an ACK response from the receiver. Next, we address the problem of optimizing the value of , together with the design of a robust check node degree distribution.
Similar to (20), the entire curve of , , can be given by
(21) 
It shows that a tunable can adjust the shape of the VND curves. Thus, it is possible for us to keep the VND curve unchanged by adjusting while the transmission goes on. As shown in Fig. 4, for the reverse systematic transmission, the message symbols are transmitted after encoded symbols. When all the message symbols are received at the decoder, we have , so would always be zero and, consequently, the decoder will lose the ability to adjust the VND curves. In order to have a tunable , is expected to be large enough so that the decoding can be successful before all the message symbols are sent. In this case, for a single SNR value of dB, the rate of the proposed rateless code can be calculated as
(22) 
It can be observed that the actual code rate depends on the degree distributions, as well as on and . Based on this observation, an optimization program is developed to obtain a robust check node degree distribution.
Let the SNR range for the robust distribution target on . We choose SNR points within this range, where . Let denote the capacity of code rate corresponding to , where . Further, denote as
(23) 
where is given by (22). We want to be as close to one as possible, which means is close to the capacity. For the given , and , the robust degree distribution of is to minimize the maximum element of
(24) 
subject to four constraints

,

,

,

for .
This optimization program can be solved by using a linear program with computer search. Condition (3) is used to enforce each pair of the VND curves being as close to each other as possible, so that a stable EXIT chart tunnel is obtained. Condition (4) is used to enforce the condition that the EXIT chart tunnel for every point stays open. Therefore, an arbitrarily low BER can be achieved with the nearcapacity transmission overhead. In addition, to reduce the transmission complexity, it is ideal to have one global . We propose to select that value as , covering all . Generally, is determined by the lowest SNR point, because the lower the SNR is, the more transmitted symbols are required. Finally, in practice, we found that it is more efficient to perform the degree optimization program by dealing with the lower SNR points first.
An example of the EXIT chart resulting from the computer search for two SNR points dB and dB is shown in Fig. 10. These two points were chosen to correspond to a lower code rate and a higher code rate , respectively, as shown in Table I. In this computer search, we found the values , , , and the robust check node degree distribution as
(25) 
In Fig. 10, we can observe that the two respective VND curves obtained by using the robust check node degree distribution in (25) coincide with each other closely. It indicates that the system complexity can be reduced under different channel conditions.
V Simulation Results
In this section, we will present the BER performance as a function of the transmission overhead for various rateless coding schemes. BPSK modulation is used in the simulation and the transmission signal power is set to unity. We first consider two scenarios in an AWGN channel, where the noise standard deviations are and , which correspond to dB and dB, respectively, as shown in Table I. Given that the current practical codelength requirement is a few thousands [28], [29] and with regards to the necessity of sparseness in LDPClike codes [30], the number of message symbols used in simulations is set to 2000, 3000 and 5000. The comparison is given between the proposed scheme, the nonsystematic rateless code developed in [15], and the systematic rateless code in [12].
Fig. 11 shows the BER performance with respect to transmission overhead at the low SNR region for . From (2) and Table I, the number of received symbols is given by
(26) 
We can observe that, for the proposed rateless code at a fixed BER level, the overhead decreases rapidly as increases. For , we can see that the schemes in [15] and [12] have an error floor at BER of and respectively, while the proposed scheme achieves significant performance improvement and the error floor has not appeared at BER of . Moreover, for BER of , the proposed scheme saves
(27) 
redundant symbols on average, i.e. almost of , compared to the existing rateless coding schemes. The improved performance brought by the proposed rateless coding scheme is the result of the elimination of the degreeone encoded symbols and the application of the specially designed full rank paritycheck matrix H. We also compared the performance of these schemes for and , and obtained similar results. To simplify the illustration and reduce the number of curves, we only show the comparisons for in the figure.
Fig. 12 compares the BER performance at a higher SNR region for . Similarly, for the proposed code at a fixed BER level, the overhead decreases as increases. It can also be observed that the systematic code gives the worst performance for BER lower than . Although both the proposed and the nonsystematic coding schemes have error floors at BER of about , the proposed scheme still outperforms the nonsystematic one and saves about
(28) 
redundant symbols on average, i.e. about of .
In Fig. 13, the BER performance for is plotted. We can observe that the proposed scheme has the best performance for BER better than . The same robust check node degree distribution used in Fig. 11 and Fig. 12 is also used here. For , BER of is reached with overhead less than . The results are fairly satisfactory, although the case of was not taken into consideration when we conducted the computer search in the optimization program in Section IV B.
Index  Degree Distribution  Threshold 

DD1  0.53  
DD2  0.525  
DD3  0.44 
In addition, we provide the experimental results for different check node degree distributions to justify the use of EXIT chart analysis in the proposed encoding method. We first choose three given degree distributions, and then obtain their channel threshold parameters by using the EXIT chart approach. Thirdly, we perform simulations for the decoding performance. Results show that the degree distribution of a greater threshold does give a better decoding performance. This is consistent with the EXIT chart analysis.
We consider a code rate , and the three degree distributions and their channel threshold values obtained by EXIT chart analysis are given in Table II. Next, we perform simulations for the three degree distributions, which are shown as DD1, DD2 and DD3 in Fig. 14, with codelength of 6250 and 3750 symbols (i.e. the number of message symbols is 5000 and 3000 respectively). The threshold value of each degree distribution is also shown in Fig. 14.
From EXIT chart analysis, we know that the threshold values of DD1 and DD2 are 0.53 and 0.525 respectively. Simulation results show that DD1 and DD2 have waterfall regions that closely match the threshold prediction by the EXIT chart analysis. As the codelength goes very long, we can presume an even closer match in the threshold between the simulations and the EXIT chart analysis. For DD3, it does not have clear waterfall and error floor regions, because its threshold is too far away from the Shannon limit for code rate , so DD3 is far from a good distribution choice for this code rate. Overall, we come to the conclusion from simulation results that the degree distribution of a greater threshold has a better decoding performance, so the EXIT chart analysis is justified in the degree distribution design for the proposed rateless encoding method.
Vi Conclusions
In this paper, we propose a physicallayer rateless coding scheme for wireless channels. A ballintobin method is firstly introduced to construct a particular paritycheck matrix H. The aim of this method is to let both the systematic message symbols and the encoded symbols have an approximately equal degree, so that they can receive equal protection in the BP decoder. Moreover, in order to obtain a robust degree distribution of check nodes for a range of SNRs, a degree optimization program based on the EXIT chart analysis is proposed. The proposed rateless code with the robust degree distribution achieves nearcapacity performances with respect to the transmission overhead. Simulation results show that the transmission redundancy is reduced as the message length increases. Moreover, under the same channel condition and transmission overhead, the BER performance of the proposed code outperforms the existing rateless codes in AWGN channels, particularly at low BER regions. For example, for BER of and of dB, the proposed scheme saves more than onethird of the message length compared to the existing rateless schemes.
References

J. Byers, M. Luby, M. Mitzenmacher and A. Rege, “A digital fountain approach to reliable distribution of bulk data,” in Proc. ACM SIGCOMM, Vancouver, BC, Canada, Jan. 1998, pp. 56  67.

M. Luby, “LT codes,” in Proc. The 43rd Annual IEEE Symposium on Foundations of Computer Science, Vancouver, BC, Canada, Nov. 2002, pp. 271  280.

A. Shokrollahi, “Raptor codes,” IEEE Transactions on Information Theory, vol. 52, no. 6, pp. 2551  2567, June 2006.

R. Palanki and J. Yedidia, “Rateless codes on noisy channels,” in Proc. IEEE International Symposium on Information Theory (ISIT), Chicago, IL, June 2004, pp. 38.

O. Etesami, M. Molkaraie and A. Shokrollahi, “Raptor Chodes on Symmetric Channels,” in Proc. IEEE International Symposium on Information Theory (ISIT), Chicago, IL, June 2004, pp. 39.

O. Etesami and A. Shokrollahi, “Raptor codes on binary memoryless symmetric channels,” IEEE Transactions on Information Theory, vol. 52, no. 5, pp. 2033  2051, May 2006.

J. Castura and Y. Mao, “Raptor coding over fading channels,” IEEE Communications Letters, vol. 10, no. 1, pp. 46  48, Jan. 2006.

A. Ngo, T. Steven, G. Maunder and L. Hanzo, “A systematic LT coded arrangement for transmission over correlated shadow fading channels in 802.11 adhoc wireless networks,” in Proc. IEEE Vehicular Technology Conference (VTC 2010Spring), Taipei, Taiwan, May 2010, pp. 1  5.

X. Liu and T. Lim, “Fountain codes over fading relay channels,” IEEE Transactions on Wireless Communications, vol. 8, no. 6, pp. 3278  3287, June 2009.

W. Chen and W. Chen, “A new rateless coded cooperation scheme for multiple access channels,” in Proc. IEEE International Conference on Communications (ICC), Kyoto, Japan, June 2011, pp. 1  5.

T. Jiang and X. Li, “Using fountain codes to control the peaktoaverage power ratio of OFDM signals,” IEEE Transactions on Vehicular Technology, vol. 59, no. 8, pp. 3779  3785, Oct. 2010.

T. Nguyen, L. Yang and L. Hanzo, “Systematic Luby transform codes and their soft decoding,” in Proc. IEEE Workshop on Signal Processing Systems, Shanghai, China, Oct. 2007, pp. 67  72.

Z. Cheng, J. Castura and Y. Mao, “On the design of raptor codes for binaryinput gaussian channels,” IEEE Transactions on Communications, vol. 57, no. 11, pp. 3269  3277, Nov. 2009.

R. Barron, C. Lo and J. Shapiro, “Global design methods for raptor codes using binary and higherorder modulations,” in Proc. IEEE Military Communications Conference, Boston, MA, Oct. 2009, pp. 1  7.

I. Hussain, M. Xiao and L. K. Rasmussen, “Error floor analysis of LT codes over the additive white Gaussian noise channel,” in Proc. IEEE Global Telecommunications Conference (GLOBECOM), Houston, USA, Dec. 2011, pp. 1  5.

R. G. Gallager, Low density paritycheck codes. Cambridge, MA: MIT Press, 1963.

J. GarciaFrias and W. Zhong, “Approaching Shannon performance by iterative decoding of linear codes with lowdensity generator matrix,” IEEE Communications Letters, vol. 7, no. 6, pp. 266  268, June 2003.

N. Bonello, R. Zhang, S. Chen and L. Hanzo, “Reconfigurable rateless codes,” IEEE Transactions on Wireless Communications, vol. 8, no. 11, pp. 5592  5600, Nov. 2009.

K. Liu and J. GarciaFrias, “Error floor analysis in LDGM codes,” in Proc. IEEE Int. Symp. Inf. Theory (ISIT), Austin, USA, Jun. 2010, pp. 734  738.

S. ten Brink, G. Kramer and A. Ashikhmin, “Design of lowdensity paritycheck codes for modulation and detection,” IEEE Transactions on Communications, vol. 52, no. 4, pp. 670  678, April 2004.

R. Tee, T. Nguyen, L. Yang and L. Hanzo, “Serially concatenated Luby Transform coding and bitinterleaved coded modulation using iterative decoding for the wireless internet,” in Proc. IEEE Vehicular Technology Conference, 2006Spring, Melbourne, Australia, May 2006, pp. 22  26.

R. Tanner, “A recursive approach to low complexity codes,” IEEE Transactions on Information Theory, vol. 27, no. 5, pp. 533  547, Sept. 1981.

S. J. Johnson, Iterative error correction. Cambridge, United Kingdom: Cambridge University Press, 2010.

S. Lin and D. Costello, Error control coding: fundamentals and applications. Upper Saddle River, NJ, U.S.A.: Pearson Education, Inc., 2nd Edition, 2004.

S. ten Brink, “Convergence behavior of iteratively decoded parallel concatenated codes,” IEEE Transactions on Communications, vol. 49, no. 10, pp. 1727  1737, Oct. 2001.

T. Richardson, A. Shokrollahi and R. Urbanke, “Design of capacity approaching irregular lowdensity paritycheck codes,” IEEE Transactions on Information Theory, vol. 47, no. 2, pp. 619  637, Feb. 2001.

M. Luby, M. Mitzenmacher and A. Shokrollahi, “Analysis of random processes via andor tree evaluation,” in Proc. 9th Annu. ACMSIAM Symp. Discrete Algorithms, San Francisco, CA, Jan. 1998, pp. 364  373.

IEEE standard for local and metropolitan are networks, Part 16: Air interface for fixed and mobile broadband wireless access systems. IEEE Std. 802.16, 2009.

IEEE 802.11n2009: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications: Enhancements for Higher Throughput. IEEE Std. 802.11, 2009.

D. MacKay, S. Wilson and M. Davey, “Comparison of construction of irregular Gallager codes,” IEEE Transactions on Communications, vol. 47, no. 10, pp. 1449  1454, Oct. 1999.
Shuang Tian (M’13) received the B. Sc. degree (with highest honors) from Harbin Institute of Technology, China, in 2005, the M. Eng. Sc. (Research) degree from Monash University, Australia, in 2008, and is currently working toward the Ph.D. degree at The University of Sydney, Australia, all in electrical engineering. From 2008 to 2009, he worked as a system and standard engineer with Huawei Technologies Co. Ltd., China. His research interests include coding techniques, cooperative communications, 3GPP/WiMAX network protocols, OFDM communications, and optimization of resource allocation and interference management in heterogeneous networks. He is a recipient of University of Sydney Postgraduate Awards. 
Yonghui Li (M’04SM’09) received his Ph.D. degree in November 2002 from Beijing University of Aeronautics and Astronautics. From 1999  2003, he was affiliated with Linkair Communication Inc, where he held a position of project manager with responsibility for the design of physical layer solutions for the LASCDMA system. Since 2003, he has been with the Centre of Excellence in Telecommunications, The University of Sydney, Australia. He is now an Associate Professor in School of Electrical and Information Engineering, The University of Sydney. He was the Australian Queen Elizabeth II Fellow and is currently the Australian Future Fellow. His current research interests are in the area of wireless communications, with a particular focus on MIMO, cooperative communications, coding techniques and wireless sensor networks. He holds a number of patents granted and pending in these fields. He is an executive editor for European Transactions on Telecommunications (ETT). He has also been involved in the technical committee of several international conferences, such as ICC, Globecom, etc. 
Mahyar Shirvanimoghaddam received the B. Sc. degree with the 1’st Class Honour from Tehran University, Iran, in 2008, and the M. Sc. Degree with the 1’st Class Honour from Sharif University of Technology, Iran, in 2010, and is currently working toward the Ph.D. degree at The University of Sydney, Australia, all in Electrical Engineering. His research interests include coding techniques, cooperative communications, compressive sensing, and wireless sensor networks. He is a recipient of University of Sydney International Scholarship (USydIS) and University of Sydney Postgraduate Awards. 
Branka Vucetic (M’83SM’00F’03) received the B.S.E.E., M.S.E.E., and Ph.D. degrees in 1972, 1978, and 1982, respectively, in electrical engineering, from The University of Belgrade, Belgrade, Yugoslavia. During her career, she has held various research and academic positions in Yugoslavia, Australia, and the UK. Since 1986, she has been with the Sydney University School of Electrical and Information Engineering in Sydney, Australia. She is currently the Director of the Centre of Excellence in Telecommunications at Sydney University. Her research interests include wireless communications, digital communication theory, coding, and multiuser detection. In the past decade, she has been working on a number of industry sponsored projects in wireless communications and mobile Internet. She has taught a wide range of undergraduate, postgraduate, and continuing education courses worldwide. Prof. Vucetic has coauthored four books and more than two hundred papers in telecommunications journals and conference proceedings. 