{'fraction_non_alphanumeric': 0.041929452033087185, 'fraction_numerical': 0.012994010078280988, 'mean_word_length': 4.03012912482066, 'pattern_counts': {'":': 0, '<': 1, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 14, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Simple Low-Rate Non-Binary LDPC Coding for Relay Channels

Binary LDPC coded relay systems have been well studied previously with the assumption of infinite codeword length. In this paper, we deal with non-binary LDPC codes which can outperform their binary counterpart especially for practical codeword length. We utilize non-binary LDPC codes and recently invented non-binary coding techniques known as multiplicative repetition to design the low-rate coding strategy for the decode-and-forward half-duplex relay channel. We claim that the proposed strategy is simple since the destination and the relay can decode with almost the same computational complexity by sharing the same structure of decoder. Numerical experiments are carried out to show that the performances obtained by non-binary LDPC coded relay systems surpass the capacity of direct transmission and also approach within less than 1.5 dB from the achievable rate of the relay channels.


I. INTRODUCTION
Over recent years, cooperative communication has been studied extensively in order to increase the capacity of wireless networks [1], [2], [3]. In cooperative networks, terminals act as relays which can forward the received information to destinations or terminals. It is well known that spatial diversity is the promising technique for improving the quality and reliability of wireless links [4]. The spatial diversity can be obtained by adopting multiple antennas in a transmitter or/and a receiver [5], [6]. Relays in a cooperative network form a virtual multiple antenna system and hence allow a singleantenna user to transmit the information through the different and independent paths. Without employing multiple antennas, the spatial diversity still can be achieved via relaying. Therefore, the concept of relaying is applicable to mobile terminals which cannot support multiple antenna. However, cooperative communications with multiple antennas also have been studied to achieve higher capacity [7], [8] but this is beyond the scope of this paper.
A single relay channel is an elementary component of a cooperative network [9]. The single relay channel simply consists of three terminals which are a source, a relay and a destination. It is theoretically shown that the achievable rate of a single relay channel is much higher than the capacity of direct transmission [10]. Many protocols, such as amplifyand-forward [11] or compress-and-forward [12], have been developed for processing the signals in relay channels. Previous works have shown that the decode-and-forward protocol achieves better performance compared with other protocols when a quality of source-relay link is good [13], [14]. By using the decode-and-forward protocol, a relay is capable to decode the received signal and forward the decoded information to the destination.
At the present moment, half-duplex relaying is regarded more practical since full-duplex relaying cannot be implemented efficiently. The operation in a half-duplex scheme is divided into two modes named as broadcast (BC) and multiple access (MAC) modes. In BC mode, the source transmits signal to both the relay and the destination. The relay does not have its own information to transmit. Thus the relay only listens to the source in BC mode. In MAC mode, both the relay and the source transmit their signals to the destination. In this paper, we focus only on the half-duplex relay channel with the decode-and-forward protocol and restrict ourselves to the case of a single relay.
Several binary LDPC (BLDPC) coding strategies have been developed to enhance the performance of a decodeand-forward half-duplex relay channel [15], [16]. The main challenging problem in this field is that one needs to design a coding strategy that works at both source-relay and sourcedestination links. In other words, a code-structure is necessary to exhibit excellent performance at two different signal to noise ratios. After designing the code properly, the code is distributed to the source, the relay and the destination. We briefly introduce some prominent works in this research field. Chakrabarti et al. optimized the degree profile of BLDPC codes for half-duplex relay channel by mean of density evolution [17]. Razaghi and Yu developed a technique called bilayer BLDPC codes [18] in which overall graph of an BLDPC code is subdivided into lower and upper parts corresponding to codes for source-relay and source-destination links. In [16], Li et al. proposed the distributed BLDPC code using a ratecompatible structure and also developed a method which can accurately predict the performance of BLDPC codes for a relay channel. Recently, Cances et al. extended the idea of bi-layer and designed the BLDPC codes that work closely to theoretical limit [19]. We note that all works mentioned above focused on BLDPC codes.
Although the significant progress has been made to design the distributed LDPC codes for the half-duplex relay channel. However, there still exist some problems that can be addressed as follows: 1) The design of optimized LDPC codes for the relay channel requires a task to obtain such an optimized degree profile. 2) The sophisticated degree profile of LDPC code obtained from an optimization process makes the hardware implementation quite complicated. 3) LDPC codes with the optimized degree profile require very large codeword length (e.g. 10 5 bits) to perform close to the theoretical limit. The large codeword length leads to the transmission latency and complex decoders. which are not preferred in the real world communication. Moreover, the good performance of optimized LDPC code are not guaranteed when the codeword length is short or moderate. In this paper, we overcome these problems by considering non-binary LDPC (NBLDPC) codes.
An NBLDPC code is defined by a sparse parity-check matrix defined over GF(2 m ), m > 1 [20]. Over point-to-point channels, it was shown in [20], [21] that the NBLDPC codes can outperform their binary counterparts especially for the short and moderate codeword lengths. Therefore, the NBLDPC codes can be employed to improve the performance of practical wireless communications since the short and moderate codeword lengths (e.g. a few thousand bits) are now currently used [22], [23]. Good NBLDPC codes defined over higher order Galois fields tend to have the regular degree profile (row and column weights of parity-check matrix are constant) [24]. The regular NBLDPC codes defined over GF(2 m ) with column weight 2 are empirically known [24] as the best performing codes for 2 m > 64. Therefore, the first and second problems addressed in the previous paragraph can be alleviated since we can use NBLDPC codes with regular degree profile for transmission and hence do not need to optimize the degree profile of NBLDPC codes.
At this moment, little progress has been made for an application of NBLDPC codes on relay channels but the aforementioned reasons mentioned earlier motivate us to design the distributed NBLDPC codes for relay channel. This paper, we develop the low-rate NBLDPC coding strategy for the decode-and-forward half-duplex relay channel. We apply the concept of multiplicative repetition [25], [26] to design the distributed low-rate NBLDPC codes for the relay channel. Based on the proposed NBLDPC coding strategies, the relay and the destination can perform the decoding process with the same computational complexity even the coding rate of the destination is much lower than that of the relay. Finally, we show that the proposed strategy provides the relay systems with very good decoding performances especially for the short and moderate codeword lengths.
The rest of this paper is organized as follows. Section II, we explain the half-duplex relay channel in time-division mode together with the decode-and-forward protocol. The NBLDPC codes are introduced in Section III. Section IV, we develop the simple NBLDPC coding strategy which applicable to lowrate relay channel. In Section V, we present the decoding performance of the proposed coding strategy. The conclusions are finally given in Section VI.

II. INTRODUCTION TO NBLDPC CODES
Before describing the proposed coding strategy, we first introduce NBLDPC codes, multiplicative repetition, puncturing and their decoding algorithm.
A. NBLDPC codes NBLDPC codes are defined by sparse parity-check matrices defined over GF(2 m ), m > 1 [20]. We can represent each element x ∈ GF(2 m ) by using binary sequences of length m bits. For transmitting over the binary input channels, each non-binary symbol in GF(2 m ) needs to be represented by a binary sequence of length m. For each m, we fix a Galois field GF(2 m ) with a primitive element α and its primitive polynomial π. Once a primitive element α of GF(2 m ) is fixed, each symbol is given a m-bit representation [27, pp. 110]. For example, with a primitive element α ∈ GF(2 3 ) such that π(α) = α 3 + α + 1 = 0, each symbol is represented as 0 = (0, 0, 0), 1 = (1, 0, 0), α = (0, 1, 0), α 2 = (0, 0, 1), α 3 = (1, 1, 0), α 4 = (0, 1, 1), α 5 = (1, 1, 1) and α 6 = (1, 0, 1). Assigning of binary sequence to each element depends on the primitive polynomial used to construct the field. Specifically, an NBLDPC code C over GF (2 m where x = (x 1 , . . . , x N ) is the codeword. The c-th paritycheck equation for c = 1, . . . , M is written as where h c1 , . . . , h cN ∈ GF(2 m ) are the entries of c-th row of H. The parameter N is the codeword length in symbol. Throughout this paper (assuming H is of full rank), we denote the number of information symbols by K = N − M . Let n = mN and k = mK be the codeword length and information length in bit, respectively. The coding rate R of any NBLDPC code can be computed by R = 1 − d v /d c = K/N . An NBLDPC code is called (d v , d c )-regular if the paritycheck matrix of the code has constant column weight d v and row weight d c . In this paper, only (d v = 2, d c )-regular NBLDPC codes defined over GF (2 8 ) are considered, since they are empirically known as the best performing codes. The d v , d c indicates the column and row weights of parity-check matrix, respectively. We can represent the parity-check matrix of an NBLDPC code by a Tanner graph with variable and check nodes [28]. Each variable node and check node represents a coded symbol and a parity-check equation, respectively. Therefore, the number of variable nodes and check nodes are equal to M and N , respectively. Figure 1 shows an example of the parity-check matrix of a (2, 3)-regular NBLDPC code defined over GF(2 2 ) and the corresponding Tanner graph.
Since, in this paper, we focus only on the binary transmission, we describe how to transmit the NBLDPC coded symbols x v by using the binary modulation scheme for v = 1, 2, . . . , N and i = 1, 2, . . . , m. At the v-th output of NBLDPC encoder, each coded symbol x v ∈ GF(2 m ) is mapped to the binary sequence of m bits (x v,1 , x v,2 , . . . , x v,m ) ∈ GF(2) m according to the primitive polynomial as described above. The obtained binary sequence (x v,1 , x v,2 , . . . , x v,m ) ∈ GF(2) m is then mapped to m modulated signals through the mapper for the transmission.

B. Multiplicative Repetition
More recently, Kasai et al. proposed an efficient method called multiplicative repetition to construct low-rate NBLDPC codes [25], [26]. Over point to point channels, the low-rate codes constructed by this method outperform the previously found low-rate codes. By using the NBLDPC code of rate R 1 , we can easily construct code NBLDPC codes of lower rate R < R 1 as described as follows.
Let C 1 denotes a NBLDPC code of length N and coding rate R 1 . Since code C 1 is used to constructed another codes, we refer to C 1 as a mother code. A low-rate code C 2 of length 2N and coding rate R 2 = 1 2 R 1 can be constructed as follows. We select N coefficients r N +1 , . . . , r 2N randomly from GF(2 m )\{0}. Note that we define r v = 1 ∈ GF(2 m ) for v = 1, . . . , N for simplicity of notation. We then multiplicatively repeat the coded symbols from C 1 with the coefficients to obtain the lower-rate code C 2 as follows.
In this way, we can construct a (2N, K) code from an (N, K) code. The codes C 3 , C 4 , . . . , C T of lower coding rates can also be constructed from code C 1 through the multiplicative repetition process. We refer a parameter T as repetition parameter. For T ≥ 3, in a recursive fashion, N coefficients T R 1 can also be constructed as follows.
Therefore, we can easily construct (T N, K) code from (N, K) code in a recursive fashion.
For example, we can construct C 2 , C 3 , . . . , C T with coding rate 1/6, 1/9, . . . , 1/3T respectively when the mother code C 1 is a (2, 3)-regular NBLDPC code. Figure 2 shows the block diagram of multiplicatively repeated encoder of C T . We will show in the next section that the multiplicative repetition is applicable to design low-rate coding strategy for relay channels.

C. Puncturing
By puncturing a code, we obtain a higher-rate code. We cancel some parity symbols produced from the encoder of mother code C of rate R = K N to form the code C ′ of higher rate R ′ = K N −Np where N p is the number of punctured symbols. We refer to the code C as the mother code. The puncturing plays an important role in constructing the ratecompatible codes. The rate-compatible codes are very useful in wireless communications which employ hybrid automatic repeat request (HARQ) protocol. The rate-compatible codes can flexibly adapt the coding rate according to the channel quality by adopting only one mother code.
Instead of random puncturing, we find the location of variable node for puncturing by the concept called recoverable step [29]. This method helps the decoding process at R because the punctured variable nodes will receive nonzero messages at small number of iterations. We first search for the group of variable nodes with one-step-recoverable. After that, we then search for the group of variable nodes with two-steprecoverable, and so on. We therefore puncture variable nodes by the ascending order of recoverable steps. An example of puncturing on the (2, 3)-regular NBLDPC codes with one step recoverable is illustrated in Fig. 3. In this paper, the concept of puncturing by recoverable step will be used to obtain the rate-compatible NBLDPC codes for the relay channel. Circle and square nodes represent variable and check nodes respectively. We intend to puncture the variable node with one step recoverable first and then continue to puncture variable node with two step recoverable and so on.

D. Decoding algorithm for NBLDPC codes
With some abuse of notation, we denote the v-th variable node by v. Let X v be the random variables with realization x v where X v represents the coded symbol and v = 1, 2, . . . , N . Let Y v be the random variables with realization y v which is the received value from the channel Pr(Y v |X v ). The probability of transmitted symbol Pr(X v ) is assumed to be uniform. We assume that the decoders at both relay and destination knows the channel transition probability for x ∈ GF(2 m ). For memoryless binary-input outputsymmetric (MBIOS) channels, the channel transition probability is given as where X v,i is the random variable of the transmitted bit, (x 1 , x 2 , . . . , x m ) ∈ GF(2) m is the binary representation of x ∈ GF(2 m ) and the corresponding channel output y v,i and its random variable Y v,i . The decoding of NBLDPC codes is accomplished on the Tanner graph through the belief propagation (BP) algorithm [20], [21]. The BP algorithm exchanges probability vectors of length 2 m between variable nodes and check nodes at each iteration round ℓ. The BP algorithm mainly consists of 4 parts described as follows.
initialization : We set the iteration round ℓ = 0. Each variable node sends the initial message p Pr(X (tN +v = r tN +v x|Y tN +v = y tN +v ), where ξ represents the normalized constant so that Let V p denotes the set of punctured variable nodes. For punctured NBLDPC codes and v = 1, 2, . . . , N , the probability p where p 1 ⊗ p 2 ∈ R 2 m is a convolution of p 1 ∈ R 2 m which can be expressed as follows The convolution appeared above can be efficiently calculated via FFT and IFFT [21]. Increment the iteration round as ℓ := ℓ + 1 variable to check : For each variable node v = 1, 2, . . . , N , let ∂ v be the set of adjacent check nodes of v. The message p vc (x) = 1. tentative decision : For v = 1, 2, . . . , N , the tentative decision of the v-th symbol is given bŷ N ) be the estimated codeword of iteration round ℓ. The decoder stops when the maximum iteration ℓ max is reached or Hx = 0 ∈ GF(2 m ) M . Otherwise repeat the latter 3 decoding steps. After the decoder stops, R sendsx as the codeword in MAC mode.

III. RELAY CHANNEL
This paper deals with the time-division half-duplex relay channel which employs the decode-and-forward protocol. Throughout this paper, we refer to the time-division halfduplex relay channel with the decode-and-forward protocol as the relay channel for the sake of simplicity.

A. Time-Division Half Duplex Relay Channel
In half-duplex relaying, a relay cannot transmit and receive simultaneously in one time slot so the concept of time-division is introduced [13], [30]. In our model, we assume that the relay (R) places on the direct line between a source (S) and a destination (D) as shown in Fig. 4. The distance between S and D is normalized to 1 and let d denote the distance between S and R. The transmission in relay channel takes place over two time slots of normalized duration. In BC mode, S sends information to R and D within the first time slot of duration t. We refer a parameter t as time-sharing factor. In the second time slot of duration t ′ = 1 − t, R and S send information to D and we refer to the operations in this time slot as MAC mode. Figure 5 illustrates the transmission in the time-division half-duplex relay channel. Parameters h SD , h SR and h RD generally represent the channel effects such as fading, shadowing and path loss between two terminals. In this paper, we consider only the large scale path loss. Under this circumstance, |h SD | 2 = 1, |h SR | 2 = 1 d α and |h RD | 2 =
For a fair comparison with direct transmission (the communication that consists of S and D), the transmitted powers of S and R must obey an average global power constraint given as [17] Θ : tP S,BC + t ′ (P S,MAC + P R,MAC ) ≤ P, where P S,BC is the average transmitted power of S in BC mode, P S,MAC and P R,MAC are the average transmitted powers of S and R in MAC mode respectively. We define P as the total transmission power of the relay system. The alphabet in subscript is used to describe the position of variables under consideration.
For i-th transmission, let s In MAC mode, the received signal at D is given as where n D,MAC are AWGN with zero mean and unit variance at given positions and modes. In this paper, the relationship between the total transmission power and the signal to noise ratio (SNR) of the relay system is defined as follows [17].
where R r is the coding rate for the relay channel and E b /N 0 is the the energy per bit to noise power spectral density ratio.
Since the power of noise is normalized to unity, the SNR at S in both BC and MAC modes can be expressed as follows

B. Decode-and-Forward Protocol
We summarize the common parameters before describing the decode-and-forward protocol. Let K denote the information length in symbol. Let N denote the length of the code used at S for BC mode. Let N ′ denote the length of the codes used for MAC mode. The relationship between the time-sharing factor and the lengths of codes used in BC and MAC modes can be expressed as N N ′ = t t ′ . The overall coding rate of the relay channel is given by R r = K N +N ′ In BC mode, S firstly encodes the K information symbols with a code of length N and of rate R S,BC = K N . The N coded symbols are transmitted to both R and D. R decodes its received signals and the estimation obtained from decoder will be further used in MAC mode. Meanwhile, D just stores the received signals. In MAC mode, R transmits another set of N ′ symbols to D. At the same time, S also simultaneously sends N ′ symbols to D. Finally, D can decode the received information transmitted in BC mode at lower coding rate R D,MAC = K N +N ′ = R r since it receives the additional information transmitted in the MAC mode. This implies that the computational complexity of decoder at D is much higher than that of decoder at R since the number of parity symbols at D is more than the number of parity symbols at R. This is more crucial when the overall relay system operates at low coding rate. In this paper, we will develop coded relay system which R and D can decode their received signals with almost the same computational complexity.

C. Achievable Rate
For a Gaussian relay channel, a general time-division halfduplex relay channel with decode-and-forward protocol can achieve the following rate [17].
where w =|h SR | 2 P S,BC , and Θ is defined in (6). The parameter r represents the correlation between s S,MAC and s R,MAC in MAC mode. The function C(·) is known as the Shannon formula used to calculate capacity of Gaussian link. In order to achieve R given in (13), a joint optimization is needed over the correlation in MAC mode, time-sharing factor and power allocation. Figure 6 compares the capacity of the direct transmission with the achievable rate of a relay channel with d = 0.5 and α = 2. In this figure, we plotted the coding rate versus E b /N 0 which is the normalized SNR. Details of these calculations are fully presented in [17], [31]. This figure clearly shows that the achievable rate of the relay channel is much higher than the capacity of direct transmission especially for low SNR. Therefore, we focus our attention on designing low-rate NBLDPC codes for the relay channel. Fig. 6. The achievable rate of a relay channel for d = 0.5 and α = 2 obtained from optimal relay parameters and the capacity of direct transmission.

IV. LOW-RATE RELAY CODING STRATEGY
In this section, we propose a novel low-rate NBLDPC coding strategy for the relay channel. The proposed coding strategy is analogous to constructing C T of the multiplicatively repeated NBLDPC code. For this strategy, the relationship between time sharing factor t and repetition parameter T are t . By using the decode-andforward protocol, we describe the low-rate NBLDPC coding strategy for the relay channel as follows.
1) Encoding in BC mode: By using an NBLDPC code of rate R S,BC = K N as C 1 , S encodes K information symbols into codeword x = (x 1 , x 2 , . . . , x N ) ∈ GF(2 m ) N . S sends x to both R and D. For this strategy, S also stores the codeword x ∈ C 1 for the next transmission in MAC mode. Subsequently x is mapped to a binary sequence of length mN bits. Then the BPSK modulated signals of the binary sequence are sent to R and D at the same time.
2) Decoding in BC mode: R decodes its received signals by using the BP algorithm (described in section II-D). R first calculates p where (x 1 , . . . , x m ) ∈ GF(2) m is the binary representation of x ∈ GF(2 m ), and s i is the modulates binary signal corresponding to x i . Then the decoder at R is initialized p v (x) as the input of the BP algorithm. After BP decoding, R produces an estimated codewordx R ∈ GF(2 m ) N . Meanwhile, D only stores its received signals for the future decoding at the end of MAC mode.
3) Encoding in MAC mode: The encoding processes for both S and R in this mode are analogous to constructing the code C T from multiplicative repetition. By using x = (x 1 , x 2 , . . . , x N ) ∈ C 1 stored in BC mode, S produces a codeword of code C T by multiplicative repetition as described in Section II-B.
In the same way, as S produced x S from x, R produces x R ∈ GF(2 m ) (T −1)N fromx R ∈ GF(2 m ) N . We note that S and R send the same coded symbols x S = x R if R, in BC mode, did successfully decode the codeword, i.e., x =x. This means the additional parity symbols sent from S and R in this mode are fully correlated (r = 1). Thus, the additional (T − 1)N symbols are sent to D. v (x) for v = 1, . . . , N as follows.
Pr(X tN +v = r tN +v x | where s t,v,i is the modulated binary signal correspond-ing to the i-th bit of the binary representation of r tN +v x v ∈ GF(2 m ), and ξ is the normalized constant so that Then the decoder at D is initialized p After the two received signals are combined, the decoder performs the BP algorithm on the Tanner graph of C 1 with N variable nodes.
In summary, the proposed low-rate NBLDPC coding strategy for the relay channel is depicted in Fig. 7. We claim that the proposed coding strategy is very simple due to the following two reasons. 1) For encoding in MAC mode, the encoder at R uses only multiplicative repetition which is much simpler than encoders of BLDPC codes. The multiplicative repetition requires only (T −1)N multiplications over GF(2 m ) for encoding. 2) The Tanner graphs of decoders at both R and D are the same, i.e., the Tanner graph of C 1 . The difference of decoding at R and D is only the initialization. And the computational complexity of the decoders are almost the same even if the coding rate at D was lower than that of R.
information of length K symbols Source Encoder information of length K symbols Fig. 7. Block diagram of the proposed low-rate NBLDPC coding strategy for the relay channel. In this figure, the block labeled with "MR" represents multiplicative repetition as described in Section IV. The block labeled with "combine" represents the mathematical operations according to the initialization step of decoding at D. The Tanner graphs at the decoders at R and D are the same.

V. NUMERICAL RESULTS
In this section, we demonstrate the decoding performance of NBLDPC coded relay system. For all results, the NBLDPC codes defined over GF (2 8 ) with regular degree profile (d v = 2, d c ) are employed. We choose m = 8 for its good performance and also the computer-friendliness of byte. The FFT-based BP algorithm [21] with the maximum iteration ℓ max = 500 is used for decoding. The BPSK modulation was used for all the links in the relay channel. We set the attenuation exponent to α = 2 and the source-relay distance to d = 0.5. We denote the bit error rate and frame error rate as BER and FER respectively.
First, we present the BER performances of the proposed low-rate coding strategy for the relay channel. The power allocation for S and R are static and fixed as follows: P S,BC = P 2 , P S,MAC = P 4 and P R,MAC = P 4 . A (d v = 2, d c = 3)-regular NBLDPC codes of rate R = 1 3 over GF (2 8 ) are chosen as the mother code C 1 . We choose the repetition parameter T = 2 for encoding in MAC mode. This corresponds to the equal time sharing constraint since t = 1 T = 1 2 . By using this strategy, the overall coding rate is given by R r = RS,BC T = R T = 1 6 . Figure 8 shows the BER performances of the proposed three low-rate NBLDPC codes for the relay channel. The three NBLDPC codes have information length k ∈ {56, 192, 1024} bits, respectively. The threshold value for the proposed coding strategy with R r = 1 6 is calculated by the Monte Carlo density evolution. The Monte Carlo density evolution originally developed in [32] is a method to find the threshold of NBLDPC codes in the limit of very large codeword length. It can be seen that the proposed codes theoretically perform very close to the achievable rate. The gap of threshold from the achievable rate is only 0.3 dB. We can see from the figure that BER curve improves by increasing of information length (also the codeword length). At BER of 10 −5 and R r = 1 6 , it can be seen from the figure that the proposed NBLDPC code of information length k = 1024 bits performs within 1.2 dB from the achievable rate. Moreover, the coding gain is about 1.1 dB beyond the capacity of direct transmission.
We explain how the proposed strategy can be efficiently used for the rate-compatible relay system by investigating the performances of relay systems with R r = 1 4 obtained from puncturing the codes used in relay systems with R = 1 6 . By using the recoverable step discussed in Section II-C, we puncture the (2,3)-regular mother NBLDPC code of rate R = 1 3 to obtain an NBLDPC code of rate R S,BC = 1 2 . For example, we obtain a (N = 48, K = 24) NBLDPC code by puncturing (N = 72, K = 24) NBLDPC code. This means that we cancel N p = 24 parity symbols of (N = 72, K = 24) NBLDPC code. With repetition parameter T = 2 at R, the overall coding rate is R r = RS,BC T = 1 4 . The BER performances of the proposed strategy with punctured NBLDPC codes (dashed curves) are shown in Fig. 8. Although the codes are punctured but the NBLDPC coded relay system of rate R = 1 4 still obtain a coding gain around 0.75 dB beyond the capacity of direct transmission.
As mentioned in [17], the optimized BLDPC codes need the concatenation with outer BCH or RS codes to guarantee Fig. 8. The BER performances of NBLDPC coded relay systems for lowrate case. The parameters in parentheses represent the overall transmitted bits and the information bits respectively. In this figure, the word "Relay" represents achievable rate of relay channel and the word "Direct" represents the Shannon's capacity of direct transmission. The threshold value for Rr = 1 6 is represented by "Threshold". The black curves labelled with "puncturing" represent the rate-compatible relay systems with Rr = 1 4 obtained by puncturing the codes of rate Rr = 1 6 .
the good FER performance. The advantage of using (2, d c )regular NBLDPC codes over the direct transmission is that the regular NBLDPC codes with d v = 2 have a good FER performance at both waterfall and error region [33], [34]. Figure 9 shows the FER performances of NBLDPC codes for the relay channel. The proposed low-rate codes exhibit excellent FER performances at both waterfall and error region without concatenating BCH or RS codes. The punctured NBLDPC coded relay systems with R = 1 4 (dashed curve) exhibit very good FER performances. Fig. 9. The FER performance of NBLDPC coded relay systems for low-rate case.

VI. CONCLUSION
We propose in this paper the low-rate NBLDPC coding strategy for the decode-and-forward half-duplex relay channels. The advantages of the proposed strategy can be listed as follows: 1) The waterfall performance within 1.5 dB from the achievable rate can be obtained from the moderate length NBLDPC codes. The significant coding gain is also achieved over the Shannon's limit of the direct transmission. 2) We do not need the optimization process for optimizing the degree profile of LDPC codes. We just employ the (2, d c )-regular NBLDPC defined over GF (2 8 ) as the channel code. 3) The FER performances obtained from the (2, d c )-regular NBLDPC codes are excellent even the outer BCH or RS codes are not employed to lower the error floors. 4) The relay and the destination can decode with almost the same computational complexity since both the relay and the destination use the same Tanner graph for decoding. 5) The encoding processes for both the source and the relay in MAC mode are very simple since we use the multiplicative repetition which requires only (T − 1)N multiplications over GF(2 m ). 6) The proposed strategy is applicable for rate-compatible relay systems. By adapting the repetition parameter T at the relay or puncturing the codes at the source, easy HARQ is possible for very noisy relay channels.