Convolutional vs. LDPC Coding for Coded Adaptive-QAM Modulations on Mobile Radio Channels V.Bota, M.Varga, Zs.Polgar Communications Department, Technical University Cluj-Napoca
Overview 1. General Aspects: General requirements, Convolutional codes, LDPC codes 2. Performances Evaluation of the Two Types of Codes: • BER vs. SNR performances on a flat AWGN channel – 2-PSK, 4, 16, 64-QAM - Comparison of the Spectral Efficiencies of the convolutional-coded vs. LDPC-coded QAM constellations 3. Computational Requirements of the Convolutional and LDPC Codes Decoders - Rough Evaluation 4. References (selected)
1. General Aspects 1.a.General requirements: • due to the multipath propagation and to the user-mobility (Doppler shift) the user bin (chunk) should be quite narrow in frequency and short in time [Ste], [Win] • to a limited number Ns of payload QAM symbols/bin, i.e. Nb = 80 or 108 for [Win] or [Ste] • since the QAM modulations employed are 2-PSK, 4, 16 and 64 QAM, the number of bits of the codeword is: Nb = Ns∙ni; ni = 1, 2, 4, or 6; (1) • - ranging from Nb = 80 (108) up to Nb = 480 (648) bits/bin • - the candidate codes are the convolutional codes [Win] or LDPC codes • - reasonable decoding complexity and delay are required
1. General Aspects 1.b. Convolutional Codes • constraint K = 9 (256-state trellis) for high correction capability • coding rates R = 1/2, 2/3, 3/4, 4/5, 5/6 and 6/7 [Win] • the codes are generated by puncturing, using the ”parent” code R = ½, [561,753]8 [Lin] • the optimal puncturing patterns are from [Qua] • the encoded bits are mapped on the QAM coordinates using a Gray 2-dimensional mapping [Bud, Bar]
Convolutional Codes • the decoding is performed using the Viterbi algorithm with a decoding window W = 5K = 45 frames • the metric employed is the a posteriori probability of every bit, that is optimum [Lin] • the a posteriori probabilities of every bit mapped on a QAM symbol are obtained from the received QAM-symbol coordinates using the soft-demapping technique:[ITUT-2] • It requires the value of the noise variance of the channel, with an error smaller than 2 dB
Convolutional Codes • the information bits of a chunk include the K-1 = 8 termination bits (“0”) required to bring the trellis in the state 0 at the end of each bin, • So, considering N bits/bin and k information bits/bin (R = k/N), the actual coding rate is:
1. General Aspects 1.c. LDPC Codes Considered • array-based [ITU-T2], • combinatorial (Kirkman) [Ant1] • geometrical [Ant1] • the last two types could not be generated for very short codeword, Nb = 80 – 216 (2-PSK, 4-QAM), therefore they were not employed; • Array-based LDPC codes • This type of LDPC codes are generated using a triangular HT control matrix [ITU-T2, Bar] starting from three integer numbers, k, j, p: j < k p; p – prime;
LDPC Codes Considered • the numbers of bits/codeword N, info bits/codeword J and control bits/codeword C are: • N = kp; J = (k-j)p; C = jp; (5) • The codeword length is adapted to the bin dimension Nb by shortening • The optimal puncturing patterns for the LDPC codes needs further study • The coding rate Rc and the configuration rate Rcfg (due to shortening) are: (6) • the encoding method is described in [Bud, Bar]
LDPC Codes Considered • the decoding is performed by the Message-Passing algorithm [McKay] • the maximum number of iterations performed by the MP decoding algorithm is B = 15, to keep the delay and computational complexity as close as possible to the VA employed for the convolutional codes • the bit-symbol mapping and the soft-demapping that provides the a posteriori probabilities for every bit, are the same as for the convolutional codes [ITUT – 2] • simulations performed [Bar] showed that the estimation of the channel-noise variance with an error smaller than 2 dB does not affect significantly the correction capability of the MP decoder
2.Performances Evaluation of the Two Types of Codes • the performances of the LDPC and convolutional codes are evaluated in two steps: • BER vs. SNR performances of the Coded 2-PSK and 4, 16 and 64 QAM for coding rates R= ½, 2/3, ¾, 4/5, 5/6 • this would allow the comparison according to the codeword length (1) and rate • Spectral efficiency vs. SNR performances • this would allow a comparison of performances in adaptive QAM systems that employ Optimal Allocation of the user-bin [Ant2]
2.A. BER vs. SNR performances on a flat AWGN channel • the BER vs. SNR are evaluated for coded 2-PSK, 4, 16, 64-QAM • the curves were obtained by computer simulations using the programs described in [Bud] • - the simulations were performed on 2,000,000 bits and the evaluation threshold would SNR for which a BER= 10-5 is accomplished • the SNR variation step was 0.5 dB, so an error of maximum 0.5 dB affects the thresholds. • for reference, the SNR value for which the non-coded QAM constellation employed ensures BER=10-5, is mentioned • the codes are compared by their coding gains, with respect of the non-coded transmission, and their relative coding gain defined as: • CG = CG (LDPC) - CG(Conv)
Lg(BER) LDPC 9 5 13 Rcfg =0.400 LDPC 8 4 11 Rcfg =0.4567 CONV R=1/2 K=9 R’=0.407 2.8 3.6 2.4 SNR(dB) 2.A. 1. 2-PSK • only codes of R= ½ were considered because, due the small values of Nb LDPC codes • of higher rates could not be generated Fig. 1 – BER vs. SNR 2-PSK R=1/2; N=80 or 108 – SNR(10-5) =9.5 dB • for small lengths, 80 or 108 bits, the LDPC codes provide poorer performances than the Conv codes, but the difference is small
CONV R=3/4 R’=0.6975 K=9 7.8 9.2 LDPC 13 3 13 Rcfg =0.7592 CONV R=1/2 R’=0.4506 K=9 LDPC 8 4 23 Rcfg =0.432 LDPC 8 4 29 Rcfg =0.463 4.7 4.9 5.8 2.A.2. 4-QAM 4-QAM – considered rates are R= ½, 2/3, ¾ Fig. 2 – BER vs. SNR 4-QAM R=1/2; N=160 or 216; SNR(10-5) =12.5 dB Fig. 3 – BER vs. SNR 4-QAM R=3/4; N=160; SNR(10-5)=12.5 dB - for 4-QAM, longer codeword, the LDPC codes provide a positive CG that increases with the code rate
CONV R=1/2R’=0.4753 K=9 LDPC 11 5 31 Rcfg =0.5216 CONV R=3/4R’=0.7006 K=9 LDPC 18 3 19 Rcfg =0.8240 LDPC 8 4 41 Rcfg =0.4938 LDPC 15 3 23 Rcfg =0.7870 14.2 13.4 11.5 10.5 10.3 CONV R=5/6 R’=0.7839 K=9 17.8 LDPC 18 3 19 Rcfg =0.824 2.A.3. 16-QAM – RC =1/2, 2/3, ¾, 4/5, 5/6, could be generated due to the longer Nb= 320 bits Fig. 5 – BER vs. SNR 16-QAM R=3/4; N=320 SNR(10-5) = 19.5 dB Fig. 4 – BER vs. SNR 16-QAM R=1/2; N=320 SNR(10-5) = 19.5 dB Fig. 6 – BER vs. SNR 16-QAM R=5/6; N=320 SNR(10-5) = 19.5 dB • the additional coding gain increases with the codeword length, compare with 2-PSK, • the additional coding gain increases with the coding rate
Fig. 6 – BER vs. SNR 64-QAM R=1/2; Nb =480 SNR(10-5) = 25.5 dB Fig. 7 – BER vs. SNR 64-QAM R=3/4; N=480 SNR(10-5) = 25.5 dB CONV R=1/2 R’=0.4835 LDPC 9 4 59 Rcfg =0.5144 LDPC 8 4 61 Rcfg =0.4979 16.9 15.8 15.3 CONV R=5/6 R’=0.8168 24.3 LDPC 17 3 29 Rcfg =0.8209 LDPC 22 4 23 Rcfg =0.8106 LDPC 22 3 23 Rcfg =0.8580 20.2 21.2 19.9 CONV R=3/4 R’=0.7335 Lg(BER) LDPC 16 4 31 Rcfg =0.7448 LDPC 12 3 41 Rcfg =0.7469 21 19.1 2.A.4. 64-QAM - RC =1/2, 2/3, ¾, 4/5, 5/6, 6/7 could be generated,due to the Nb= 480 bits Fig. 8 – BER vs. SNR 64-QAM R=5/6; N=480 SNR(10-5) = 25.5 dB LDPC 6/7 - for a given Nb, the additional coding gain increases with the coding rate - for a given rate the additional coding rate increases with Nb
2.A.5. BER vs. SNR. Conclusions • the LDPC-coded configurations using 4, 16 and 64-QAM have better BER performances than their convolutional-coded counterparts. • the additional coding gains ranging from 1 dB to 4 dB, increase with the coding gains and with the codeword length, brought by the increase of the constellation • the configurations employing 2-PSK are the only configurations where the LDPC ensure a negative additional coding gain of -0.4 – -1.2 dB, depending of Nb. • in an adaptive modulation scheme, the configurations built on 2-PSK and 4-QAM are used quite seldom due to the Optimal Allocation of the user chunk. [Ant2, Ste] which employs in profitable way the frequency diversity of the channel, by allocating the user the frequency-bin that provides the best SINR
2.A.5. BER vs. SNR. Conclusions • Table 5 shows the separation of the 0-30 dB SNR-interval into 12 regions, according to the spectral efficiencies ηci provided by LDPC-coded configurations with ni bits/symbol and a code-rate Rci. • The coded 2-PSK should be employed only in region 1, 4-QAM coded with R=1/2 in region 2 and 4-QAM coded with R=3/4 only in region 3. • The separation thresholds are selected so that a BinER < 10-2 is ensured
Nei Cfg index 2.A.5. BER vs. SNR. Conclusions • The occurrence-numbers of each of these regions on a WP5 Macro channel model [Win] with an average SINR = 0 dB, considering 10,000 bins are shown in figure 9, indicating that the 2-PSK is used for less than 0.1% of the bins, and the 4-QAM coded with R = ½ is employed less the 1% of bins. • This shows that the situations when LDPC coding provides poorer or comparable performances than the convolutional codes are met quite seldom even for tough channels, if the system takes advantage of the frequency diversity. Figure 9 Nei vs. region. index for SNR = 0 dB of set 1 on WP 5 Macro for 10,000 bins.
2. B. Comparison of the Spectral Efficiencies of the convolutional-coded vs. LDPC-coded QAM constellations • the comparison is performed for configurations that map only coded bits on the QAM symbols • 2.B.1. Spectral efficiencies of the coded configurations - Computation [Bar] • - the nominal bit rate of a transmission using a configuration with ni bits/symbol is: • Dci = BinR·Ns·ni·Rcfgi (bit/s)(8) • - the throughput is obtained by: • Θci(SINR) = BinR·Ns·ni·Rcfgi(1-BinERi(SINR)) (9) • In (9) BinERi denotes the bin error rate, when configuration i is employed, i.e.: • BinERi(SINR) = 1-(1-pbi(SINR))Nb (10) • pbi being the bit error rate ensured by the configuration i (QAM const, LDPC code,) for that value of SINR. • - spectral efficiency is obtained by: (bps/Hz) (11) The expressions for Dci (8), Θci (9) and ηci (11) for convolutional codes could be obtained by replacing Rcfgi (1) with R’ (3), in the corresponding expressions.
2.B.2. Sets of Coded Modulations Employed • the comparison is performed for two sets of configurations (coded modulations) that map only coded bits on the 64 - QAM symbols • Set Conv employing the 64-QAM and the convolutional codes with R = ½, 2/3, ¾ and 5/6 (K = 9) • set LDPC using codes with the same rates, selected from the figures 5, 6, 7 and table 3 • the two sets are, presented in table 6. The table contains the R’ and Rcfg and the nominal ci computed using (11) for BinER < 10-2. • table 6 also contains the SINR domains within which each coded modulation ensures a CER < 10-2. • this condition is important for ARQ transmissions where a retransmission decreases significantly the value of the spectral efficiency
ci [bps/Hz] LDPC 8 4 61 Rcfg =0.4979 4.42 LDPC 12 4 41 Rcfg =0.6625 LDPC 12 3 41 Rcfg =0.7469 LDPC 14 3 37 Rcfg =0.7716 3.69 Non-coded 3.47 3.36 LDPC 17 3 29 R=0.8209 2.98 2.24 19 20 26 23 17 ci [bps/Hz] Conv R’=0.7335 4.42 Conv R’=0.7835 Conv R’=0.4835 Conv R’=0.8186 Conv R’=0.6502 non-coded 3.68 3.58 3.30 2.92 2.18 19 22 26 20 17 2.B.3. Spectral Efficiencies of Coded Modulations Figure 10.a. Spectral efficiencies of set Conv – see table 6 Figure 10.b Spectral efficiencies of set LDPC – see table 6
2.B.3. Spectral Efficiencies of Coded Modulations • the LDPC-coded configuration with ηic = 3.69 bps/Hz covers a wider SINR domain (down to 20 dB or even to 19 dB if extended to the CER = 10-2 limit), than its Conv counterpart, which reaches only 22 dB. • the interval 20 (19) – 22 dB would be covered by the lower ηic = 3.5 and 3.3 bps/Hz; a difference of 0.39 in spectral efficiency corresponds to a difference of 0.39·300 = 117 kbps. • by ensuring larger coding gains the LDPC codes increase the spectral efficiency. • this situation occurs for smaller constellations as well, mostly for configurations using Rcfg = R’ > 0.5 and constellations larger than 2-PSK • the upper limitation of ηic = 4.42 bps/Hz could be passed by using the LDPC-coded 256-QAM that also maps non-coded bits.
2.B.3. Spectral Efficiencies of Coded Modulations • for the 2-PSK constellations, the simulations performed by the authors showed that the employment of convolutional codes ensures higher spectral efficiencies. But, as shown in figure 9, this constellations would be quite seldom employed. • these considerations hold for the 4-QAM coded with R= ½, where the LDPC codes ensure a small additional coding gain. • therefore, the LDPC codes are a better alternative as an encoding solution for the set of coded modulations that would be used adaptively on a mobile multipath radio channel.
CER LDPC 8 4 61 Rcfg =0.4980 LDPC 12 4 41 Rcfg =0.6625 LDPC 12 3 41 Rcfg =0.7469 Non-coded LDPC 14 3 37 Rcfg =0.7716 LDPC 17 3 29 Rcfg =0.8209 SINR [dB] Conv R’=0.7335 CER Conv R’=0.7835 Conv R’=0.8186 Non-coded Conv R’=0.6502 Conv R’=0.4835 SINR [dB] 2.B.4. BinER vs. SNR of Coded Modulations Figure 11a. Bin error rate of set Conv 26 23 Figure 11.b Bin error rate of set LDPC
3. Computational Requirements of the Convolutional and LDPC Codes Decoders - Rough Evaluation • rough evaluation of the computational requirements of the Viterbi decoder (VD), for the convolutional codes, and of the Message-Passing (MP) decoder for the LDPC codes. • the evaluation was made using the implementations employed in our simulation program. • the numbers of additions, multiplications, memory-read and write operations and comparisons were considered. • the “classical” version of the MP algorithm [McKay] was considered. • Notations: • Ls - the length (in bits) of shortened codeword that matches the bin dimension Nb for the considered configuration (constellation, number of coded bits/QAM symbol), • C = jp – the number of control bits of the LDPC codeword • We did not consider the operations performed by the soft-demapping required by the MP decoder and the Viterbi algorithm
3. Computational Requirements of the Convolutional and LDPC Codes Decoders - Rough Evaluation • The approximate numbers of operations/iteration required by the decoding of one codeword are listed in table 7. These numbers should be multiplied with B, the maximum number of iterations performed/codeword during a bin interval. The dimension of memory areas required to store the control matrix HT is jp · kp. • - For the convolutional codes, we considered the Viterbi algorithm with soft-decoding [Lin], denoting by: - = K-1 – the number of delay-cells in the encoder - k0 – the number of information bits entering in the encoder; we considered k0 =1 from the “parent” code - n0 – the number of coded bits emerging from the encoder; we considered n0 =2 from the “parent” code - w – the length of the decoding window in bits, w = 5··n0
Table 7 Numbers of operations required to decode the convolutional (VA) and LDPC (MP -1 iteration) code words • For a numerical comparison we selected the configurations that has the longest number of bits, i.e. 64-QAM coded with convolutional R=1/2, K=9 or LDPC (k=12, j=4, p=41), shortened to the chunk dimension L = Ls = 480 bits. • - Table 8. presents the numbers of operation required by the convolutional decoding and by the LDPC decoding for B = 1, 15 and 50 iterations. The VA requires more additions, comparisons and memory-accesses, while the MP requires significantly more multiplications. This rough evaluation is meant to show that the amount of computation required by the MP decoder should not be an argument against the employment of the LDPC codes as an alternative to the convolutional codes.
4. References (selected) • [Ste] - M. Sternad, T. Ottosson, A. Ahlén, A. Svensson, “Attaining both coverage and high spectral efficiency with adaptive OFDMA downlinks,” in Proc. IEEE VTC 2003 Fall, Orlando, USA, October 2003. • [Win] – “Winner. Report D2.4 – Assessment of adaptive transmissions technologies”, 2005 • [Lin] - S. Lin, D. Costello, “Error Control Coding. Fundamentals and Applications”, Prentice Hall, 1983 • [D] – Qualcomm –“Q1650 k=7 Multi-code rate Viterbi decoder” Technical data sheet, Qualcomm, 1991. • [McKay] -D.J.C. McKay, “Good error-correcting codes based on very sparse matrices,” IEEE Trans. on Information Theory, vol. 45, No. 2, March, 1999. • [ITU-T1] - ITU-T, “LDPC codes for G.dmt.bis and G.lite.bis,” Temporary Document CF-060. • [ITU-T2] - ITU-T, “Low-density parity-check codes for DSL transmission,” Temporary Document BI-095. • [Bud] - V.Bota, `Zs.Polgar, M.Varga, “Performances of LDPC-Coded Multi-Carrier Transmissions”,Cost 289 Workshop, Budapest, 2004 • [Bar] - V. Bota, Zs. Polgar, M. Varga – “Performances of LDPC-Coded OFDM Transmissions and Applications on Fixed and Mobile Radio Channels”, MCM Meeting COST 289 Barcelona, 2004 • [Ant1] – Zs.Polgar, Fl.Ardelean, M.Varga, V.Bota – „Performance Comparison of LDPC Codes Generated With Various Code-Construction Methods”, Cost 289 Workshop, Antalya, 2005 • [Ant2] – M.Varga,V.Bota, Zs. Polgar – “User-Bin Allocation Methods for Adaptive-OFDM Downlinks of Mobile Transmissions” Cost 289 Workshop, Antalya, 2005