On the complexity-performance trade-off in soft-decision decoding for unequal error protection block codes
- Rebecca C de Albuquerque^{1},
- Daniel C Cunha^{2}Email author and
- Cecilio Pimentel^{3}
https://doi.org/10.1186/1687-6180-2013-28
© de Albuquerque et al.; licensee Springer. 2013
Received: 6 August 2012
Accepted: 1 February 2013
Published: 21 February 2013
Abstract
Unequal error protection (UEP) codes provide a selective level of protection for different blocks of the information message. The effectiveness of two sub-optimum soft-decision decoding algorithms, namely generalized Chase-2 and weighted erasure decoding, is evaluated in this study for each protection class of UEP block codes. The performances of both algorithms are compared to that of the maximum likelihood algorithm in order to evaluate the performance loss of each protection class provided by less complex algorithms as well as their complexities are evaluated according to the number of arithmetic operations performed at each decoding step. Finally, numerical results and examples are provided which indicate that a trade-off between performance and complexity for each protection class is obtained. The results of this study can be used to select appropriate UEP coding and decoding schemes in applications that demand low energy consumption.
Keywords
1 Introduction
One of the main challenges in the design of battery-supplied wireless devices is the minimization of their energy consumption [1–4]. It is known that forward error correction (FEC) decoders are responsible for a large part of energy consumption of such devices [5, 6]. Since maximum likelihood (ML) decoding is often infeasible due to its complexity of exponential order, it is of interest to investigate sub-optimum decoding techniques in search of less complex alternatives.
Concerning block codes, a class of sub-optimum algorithms that deserves attention is composed of reliability-based soft-decision decoding techniques [7]. In this category, Chase-2 and weighted erasure decoding (WED) algorithms are recognized by their ease of implementation and reduced complexity when compared to the ML algorithm. The performance of the Chase-2 decoding algorithms applied to Bose–Chaudhuri–Hocquenghem codes is analyzed in [8].
In a number of wireless protocols, the importance of different bits in the information sequence often varies and certain blocks of this sequence need higher protection level than other blocks. This property is called unequal error protection (UEP) and can be obtained either by hierarchical modulation techniques [9, 10] or by FEC schemes [11, 12]. Such UEP methods have been applied to wireless and mobile computing applications [13–15], apart from several video and image coding standards as set partitioning hierarchical trees [16], ITU-T H.264 [17], and its extensions [18], and joint photographic expert group 2000 (JPEG 2000) [19]. Concerning UEP coding, the analysis of suboptimal decoding algorithms applied to UEP block codes has not been considered in the literature.
In this study, the effectiveness of sub-optimum soft-decision decoding algorithms (generalized Chase-2 algorithm [20] and WED algorithm [21]) for each protection class of UEP block codes is evaluated using binary transmission over an additive white Gaussian noise (AWGN) channel. Performances of both algorithms are compared to that of the ML algorithm in order to evaluate the performance loss of each protection class provided by less complex algorithms. We also analyze the arithmetic decoding complexity of each algorithm to decode a received sequence. In addition, an analysis of the trade-off between performance and complexity of the algorithms for each protection class is done. Based on this analysis, we discuss the choice of the parameters of the decoder with the best complexity-performance trade-off, such as the number of test patterns, the error-correcting capability of the binary decoder, and the number of quantization levels.
The remainder of this article is structured as follows: In Section 2, concepts related to UEP coding are described. The soft-decision decoding algorithms are defined in Section 3, while the analysis of their decoding complexity in terms of mathematical operations is presented in Section 4. Section 5 presents simulation results. A trade-off between performance and complexity for both decoding algorithms is established in this section. Finally, conclusions are drawn in Section 6.
2 UEP block codes
where GF(2) is the binary Galois field. The smallest element of s _{ j }is the minimum Hamming distance of C _{ j }. A code C _{ j }is said to have equal error protection capability if all elements of s _{ j } are equal, otherwise C _{ j }has the UEP property. The error-correcting capability of the code C _{ j }is denoted by ${t}_{j}^{\ast}$.
Their separation vectors are s _{1} = [8,8,5,5,5] and s _{2} = [12,12,5,5,5,5,5,5], respectively. Thus, we can say that both codes are UEP codes with two distinct protection classes, denoted by cp_{1} (higher protection class) and cp_{2} (lower protection class).
3 Soft-decision decoding algorithms
Two decoding algorithms that deal with the least reliable positions of the received sequence, namely the generalized Chase-2 (GC-2) [20] and the WED [21] algorithms, are described in this section.
3.1 Generalized Chase-2 decoding algorithm
The GC-2 algorithm uses the sequence of real values observed at the output of the matched filter, r = [r _{0},r _{1},…,r _{ n−1}], and the binary sequence y obtained by a hard quantization of r. For the AWGN channel, the real values of the sequence r correspond to the reliabilities α _{ i }such that α _{ i }= |r _{ i }|. Thus, the higher the value of α _{ i }, the lower the probability that the corresponding symbol had been strongly affected by the noise.
If z is not found by binary decoding, the next test pattern b _{ i }is selected. The objective of the GC-2 algorithm is to find the pattern ${\mathbf{z}}^{{i}^{\star}}$ with minimum analog weight W _{ α }to estimate the transmitted codeword x, as $\hat{\mathbf{x}}=\mathbf{y}\oplus {\mathbf{z}}^{{i}^{\star}}.$ When a pattern z ^{ i }is not selected (for all test patterns), then $\hat{\mathbf{x}}=\mathbf{y}$.
Description of the steps of the GC-2 algorithm
Step | Description |
---|---|
1 | Get the sequence y from the sequence r. Do i=0. Select a test pattern b _{ i } |
2 | Obtain the sequence y ^{ i }= y ⊕ b _{ i } |
3 | Compute the syndrome associated with the sequence y ^{ i }(binary decoding) |
and search the corresponding error pattern z | |
4 | If z is found, then get the pattern z ^{ i }= z ⊕ b _{ i }, compute its analog weight |
W _{ α }, store the pattern ${\mathbf{z}}^{{i}^{\star}}$ that has the minimum analog weight, and go to the | |
Step 5. Otherwise, go to Step 5 | |
5 | If there is still test patterns to generate, do i = i + 1, select b _{ i }, and go to |
Step 2. Otherwise, go to Step 6 | |
6 | If a pattern ${\mathbf{z}}^{{i}^{\star}}$ was stored, obtain the estimate $\hat{\mathbf{x}}=\mathbf{y}\oplus {\mathbf{z}}^{{i}^{\star}}$. Otherwise, $\hat{\mathbf{x}}=\mathbf{y}$ |
For a better understanding of the GC-2 algorithm, we consider the following example.
Example 1
Consider the Hamming code C(7,4,3) whose error-correcting capability is equal to one. Assume that the codeword x = [1,0,0,1,0,1,1] is BPSK modulated and is transmitted over the AWGN channel. Suppose that the received sequence is r = [1.5,0.05,−0.8,2.2,0.1,1.2,0.3].
To obtain the sequence y ^{0}, the test pattern b _{0} is selected, resulting in y ^{0} = y ⊕ b _{0} = [1,1,0,1,1,1,1]. After computing the syndrome associated to this y ^{0}, we get the error pattern z = [0,0,1,0,0,0,0]. Since the error pattern z exists, the sequence z ^{0} = z⊕b _{0} = [0,0,1,0,0,0,0] is achieved and its analog weight W _{ α }(z ^{0}) is 0.8, according to (4). Repeating this procedure with the other test patterns from S _{ b }, the algorithm stores ${\mathbf{z}}^{{i}^{\star}}={\mathbf{z}}^{2}=\left[0,1,0,0,1,0,0\right]$ as the sequence with the minimum analog weight (W _{ α }(z ^{2}) = 0.15). Finally, the estimate $\hat{\mathbf{x}}=\mathbf{y}\oplus {\mathbf{z}}^{2}=\left[1,0,0,1,0,1,1\right]$ is obtained, characterizing the correct codeword.
3.2 WED Algorithm
The Q-ary sequence q = [q _{0},q _{1},…,q _{ i },…,q _{ n−1}],q _{ i }∈ {0,…,Q−1} is defined such that q _{ i }= j, if ${r}_{i}\in {R}_{{D}_{j}}$. Then, a matrix A of dimensions m×n is determined such that the i th column of A is the binary representation of q _{ i }.
Next, a matrix A’ having the same dimensions of A is obtained from the binary decoding of the rows of A. The syndrome of each row of A is computed in order to find its associated error pattern. If an error pattern is found, it is added to the row of A to generate the row of A’. Otherwise, the row of A’ is equal to the row of A.
It is assumed that ${R}_{\ell}^{\prime}=0$ if the binary decoder cannot find the error pattern associated with the syndrome of the ℓ th row of A. This consideration is intended to reduce the reliability of sequences in which the high number of errors has made impossible the binary decoding. Also, the candidate sequences with fewer errors are favored.
If $\sum _{\ell \in {S}_{0}^{i}}{R}_{\ell}^{\prime}{v}_{\ell}=\sum _{\ell \in {S}_{1}^{i}}{R}_{\ell}^{\prime}{v}_{\ell}$, the i th bit is obtained by hard-decision decoding of the component r _{ i }.
Description of the steps of the WED algorithm
Step | Description |
---|---|
1 | Quantize the sequence r in Q levels, obtaining the sequences v and q |
2 | Construct the matrix A according to the binary representation of the sequence q |
3 | Decode the m rows of the matrix A by binary decoding obtaining the matrix A ^{′} |
4 | Get the vector f and compute ${R}_{\ell}^{\prime}$ |
5 | Get the sets ${S}_{0}^{i}$ and ${S}_{1}^{i}$. Make comparisons $\sum _{\ell \in {S}_{0}^{i}}{R}_{\ell}^{\prime}{v}_{\ell}\u2a8b\sum _{\ell \in {S}_{1}^{i}}{R}_{\ell}^{\prime}{v}_{\ell}$, obtaining $\widehat{\mathbf{x}}$ |
Example 2
From A and A’, we obtain f = [f _{0},f _{1}] = [1,0]. Assuming t = 1, the reliabilities of the rows of the A’ are R 0 ′ = 1 and R 1 ′ = 3. For the first column of A’, we have ${S}_{0}^{0}=\left\{\varnothing \right\}$ and ${S}_{1}^{0}=\{0,1\}$, resulting in ${\widehat{x}}_{0}=0$. For the second column of A’, ${S}_{0}^{1}=\left\{1\right\}$ and ${S}_{1}^{1}=\left\{0\right\}$. Since ${R}_{1}^{\prime}{\upsilon}_{1}>{R}_{0}^{\prime}{\upsilon}_{0}$ (1 > 0.666), we have ${\widehat{x}}_{1}=0$. Continuing with the decoding, the estimate $\widehat{\mathrm{x}}=\left[1,0,0,1,0,1,1\right]$ is obtained. This is the correct codeword as it was obtained in the GC-2 algorithm.
4 Arithmetic complexity of the GC-2 and WED algorithms
The complexity of both algorithms considered in this article is evaluated according to the number of arithmetic operations performed at each decoding step.^{b} Consider N _{ s },N _{ g },N _{ m }, and N _{ c }, the number of additions, additions modulo-2, multiplications and comparisons, respectively.
Number of mathematical operations performed in the GC-2 algorithm for each decoded sequence
Step | N _{ s } | N _{ g } | N _{ m } | N _{ c } |
---|---|---|---|---|
2 | - | n 2^{ p } | - | - |
3 | - | 2^{ p }(n−k)(n−1) | 2^{ p }(n−k)n | - |
4 | f _{ A }2^{ p }(n−1) | f _{ A }2^{ p } n | f _{ A }2^{ p } n | f _{ A }2^{ p } |
It is noteworthy that the operations in Step 4 depend on the result obtained in Step 3, i.e., depend on the success of the binary decoder in the search for an error pattern z associated with the sequence y ^{ i }. Thus, it is necessary to estimate the average value of the operations performed in Step 4. For this, we define the relative frequency of computing W _{ α }as f _{ A }= N _{ W }/2^{ p }, in which N _{ W }is the number of times that the analog weight W _{ α }is computed in the main loop of the algorithm. This value is evaluated via computer simulations in the next section (see also [26]).
Number of mathematical operations performed in the WED algorithm for each decoded sequence
Step | N _{ s } | N _{ g } | N _{ m } | N _{ c } |
---|---|---|---|---|
1 | - | - | - | mn |
3 | - | m[n+(n−k)(n−1)] | m n(n−k) | - |
4 | m(n+1) | mn | 2m | m |
5 | n(m−1) | - | m n | n(m+1) |
Finally, in Step 5, depending on the sequence that is being decoded, it may be necessary either (m − 1) or (m − 2) additions to perform the comparison $\sum _{\ell \in {S}_{0}^{i}}{R}_{\ell}^{\prime}{v}_{\ell}\u2a8b\sum _{\ell \in {S}_{1}^{i}}{R}_{\ell}^{\prime}{v}_{\ell}$. It is considered the worst case for all n positions, totalizing n(m − 1) additions per decoded sequence.
5 Numerical results
The performance of three decoding algorithms (ML, GC-2, and WED) is evaluated via computer simulations for the two UEP codes defined in Section 2 using binary transmission over the AWGN channel. Various configurations of the GC-2 and WED algorithms are considered by changing their parameters (t and p for GC-2; t and Q for WED), in order to compare their performance to that of the ML algorithm for each protection class. Using these results together with the operations in Tables 3 and 4, a trade-off between performance and complexity for both decoding algorithms is also established. In the following sections, the GC-2 and the WED algorithms will be denoted by GC-2 (t,p) and WED (t,Q), respectively.
5.1 GC-2 decoding algorithm
For the GC-2(2,2) algorithm, we observe that there is virtually no performance difference between the classes cp_{1} and cp_{2}. In addition, considering P _{ b }= 10^{−4}, the SNR difference compared to the ML algorithm is approximately 2 and 1.1 dB for the classes cp_{1} and cp_{2}, respectively. For the GC-2(3,4) algorithm, the SNR difference to the ML algorithm is 0.1 dB (cp_{1}) and 0.03 dB (cp_{2}).
Finally, it is analyzed the compromise between performance and complexity of the GC-2 algorithms in terms of the SNR difference with respect to the ML algorithm related to the class cp_{ i } (for P _{ b } = 10^{−4}), namely Δ _{ i } (dB), and the number of mathematical operations executed in the algorithm, defined as a 4-tuple MO = [ N _{ s }; N _{ g }; N _{ m }; N _{ c }]. For the estimation of MO, it is necessary to determine in Step 4 of Table 3 the value of f _{ A } used to weight the number of operations. Provided the GC-2 algorithm and the protection class cp_{ i },i = 1,2, the SNR value corresponding to P _{ b } = 10^{−4} is determined. With this SNR, we can identify the correspondent value of f _{ A } (see Figure 3).
Results of performance and arithmetic complexity of the GC-2 ( t , p ) algorithms applied to the UEP code C _{ 1 } (16,5,5)
p=2 | p=3 | p=4 | |||||
---|---|---|---|---|---|---|---|
MO | MO | MO | |||||
Δ _{ i }(dB) | [N _{ s }−N _{ g }] | Δ _{ i }(dB) | [N _{ s }−N _{ g }] | Δ _{ i }(dB) | [N _{ s }−N _{ g }] | ||
[N _{ m }−N _{ c }] | [N _{ m }−N _{ c }] | [N _{ m }−N _{ c }] | |||||
t = 2 | 2.0 | [58.3 − 786.2] | 1.4 | [101.4 − 1,556.1] | 0.8 | [159.6 − 3,100.0] | |
[766.2 − 3.9] | [1,516.1 − 6.8] | [3,000.0 − 10.6] | |||||
cp_{1} | t = 3 | 0.9 | [59.5 − 787.4] | 0.5 | [116.6 − 1,573.8] | 0.1 | [218.6 − 3,130.0] |
[767.4 − 4.0] | [1,533.8 − 7.8] | [3,050.0 − 14.6] | |||||
t = 4 | 0.6 | [60.0 − 788.0] | 0.2 | [119.6 − 1,575.6] | 0.1 | [238.8 −3, 150.0] | |
[768.0 − 4.0] | [1,535.6 − 8.0] | [3,070.0 − 15.9] | |||||
t = 2 | 1.1 | [58.4 − 786.3] | 0.6 | [102.0 − 1,556.8] | 0.3 | [162.2 − 3,070.0] | |
[766.3 − 3.9] | [1,516.8 − 6.8] | [3,000.0 − 10.8] | |||||
cp_{2} | t = 3 | 0.5 | [59.7 − 787.7] | 0.1 | [118.0 − 1,570] | 0.03 | [223.2 − 3,130.0] |
[767.7 − 4.0] | [1,530.0 − 7.9] | [3,050.0 − 14.9] | |||||
t = 4 | 0.4 | [60.0 − 788.0] | 0.1 | [119.9 − 1,575.8] | 0.0 | [239.3 − 3,150.0] | |
[768.0 − 4.0] | [1,535.8 − 8.0] | [3,070.0 − 15.9] |
Results of performance and arithmetic complexity of the GC-2 ( t , p ) algorithms applied to the UEP code C _{ 2 } (25,8,5)
p = 2 | p =3 | p =5 | |||||
---|---|---|---|---|---|---|---|
MO | MO | MO | |||||
Δ _{ i }(dB) | [N _{ s }−N _{ g }] | Δ _{ i }(dB) | [N _{ s }−N _{ g }] | Δ _{ i }(dB) | 0.8 [N _{ s }−N _{ g }] | ||
[N _{ m }−N _{ c }] | [N _{ m }−N _{ c }] | [N _{ m }−N _{ c }] | |||||
t =2 | 4.1 | [93.5 − 1,829.4] | 3.5 | [126.3 − 3,595.6] | 2.7 | [367.1 − 14,200] | |
[1,797.4 − 3.9] | [3,531.6 − 5.3] | [13,980 − 15.3] | |||||
t =3 | 3.1 | [95.0 − 1,831.0] | 2.6 | [169.1 − 3,640.2] | 1.6 | [577.5 − 14,400] | |
[1,799.0 − 3.96] | [3,576.2 − 7.0] | [14,200 − 24.0] | |||||
cp_{1} | t =4 | 2.2 | [95.4 − 1,831.4] | 1.7 | [183.2 − 3,654.8] | 0.8 | [687.4 − 14,600] |
[1,799.4 − 3.98] | [3,590.8 − 7.6] | [14,300 − 28.6] | |||||
t =5 | 1.3 | [95.7 − 1,831.7] | 0.9 | [188.3 − 3,660.2] | 0.3 | [742.7 − 14,630] | |
[1,799.7 − 3.99] | [3,596.2 − 7.8] | [14,400 − 30.9] | |||||
t = 6 | 1.0 | [96.0 − 1,832.0] | 0.6 | [191.4 − 3,663.4] | 0.2 | [764.9 − 14,700] | |
[1,800.0 − 4.0] | [3,599.4 − 8.0] | [14,400 − 31.9] | |||||
t =2 | 1.9 | [91.8 − 1,829.7] | 1.4 | [126.2 − 3,593.5] | 0.6 | [365.6 − 14,230] | |
[1,797.7 − 3.9] | [3,529.6 − 5.2] | [14,000 − 15.2] | |||||
t =3 | 1.0 | [94.7 − 1,830.8] | 0.6 | [169.1 − 3,640.7] | 0.1 | [596.7 − 14,500] | |
[1,799.3 − 3.96] | [3,576.6 − 7.0] | [14,220 − 24.9] | |||||
cp_{2} | t =4 | 0.6 | [95.2 − 1,831.4] | 0.3 | [182.9 − 3,655.0] | 0.06 | [728.1 − 14,600] |
[1,800.6 − 3.99] | [3,590.1 − 7.64] | [14,400 − 30.3] | |||||
t =5 | 0.5 | [95.5 − 1,832] | 0.3 | [191.1 − 3,663.2] | 0.02 | [763.4 − 14,600] | |
[1,801.2 − 4.0] | [3,598.8 − 7.9] | [14,400 − 31.8] | |||||
t =6 | 0.5 | [95.5 − 1,832] | 0.3 | [191.2 − 3,663.9] | 0.02 | [763.4 − 14,600] | |
[1,801.2 − 4.0] | [3,598.6 − 7.9] | [14,400 − 31.8] |
5.2 WED algorithm
Values of optimal quantization step δ _{ op } of the class cp _{ 1 } for the WED (2, Q ) algorithm and different values of E _{ b } / N _{ 0 }
δ _{op} | ||||||
---|---|---|---|---|---|---|
C _{1}(16,5,5) | C _{2}(25,8,5) | |||||
E _{ b }/N _{0}(dB) | Q = 4 | Q = 16 | Q = 1024 | Q = 4 | Q = 16 | Q = 1024 |
0 | 0.31 | 0.07 | 0.0011 | 0.27 | 0.05 | 0.0011 |
1 | 0.37 | 0.09 | 0.0013 | 0.23 | 0.07 | 0.0011 |
2 | 0.37 | 0.09 | 0.0013 | 0.27 | 0.07 | 0.0011 |
3 | 0.37 | 0.09 | 0.0013 | 0.27 | 0.07 | 0.0011 |
4 | 0.39 | 0.09 | 0.0013 | 0.33 | 0.07 | 0.0011 |
5 | 0.45 | 0.09 | 0.0015 | 0.29 | 0.07 | 0.0011 |
6 | 0.47 | 0.11 | 0.0015 | 0.35 | 0.09 | 0.0013 |
7 | 0.51 | 0.11 | 0.0015 | 0.37 | 0.09 | 0.0013 |
8 | 0.67 | 0.11 | 0.0017 | 0.49 | 0.11 | 0.0017 |
9 | 0.67 | 0.15 | 0.0017 | 0.57 | 0.09 | 0.0019 |
Results of performance ( Δ _{ i } in dB) and arithmetic complexity (MO) of the WED ( t , Q ) algorithms applied to the UEP codes C _{ 1 } (16,5,5) and C _{ 2 } (25,8,5)
C _{1}(16,5,5) | C _{2}(25,8,5) | ||||||
---|---|---|---|---|---|---|---|
Q | 4 | 16 | 1024 | 4 | 16 | 1024 | |
MO | [N _{ s }− N _{ g }] | [50 − 394] | [116 − 788] | [314 − 1,970] | [77 − 916] | [179 − 1,832] | [485 − 4,580] |
[N _{ m }− N _{ c }] | [388 − 82] | [776 − 148] | [1,940 − 346] | [904 − 127] | [1,808 − 229] | [4,520 − 535] | |
t = 2 | 2.7 | 2.1 | 1.7 | 4.5 | 4.1 | 3.7 | |
t = 3 | 1.2 | 0.9 | 0.8 | 3.4 | 3.0 | 2.5 | |
cp_{1} | t = 4 | 1.3 | 0.9 | 0.9 | 2.3 | 1.9 | 1.4 |
t = 5 | – | – | – | 1.3 | 1.0 | 1.0 | |
t = 6 | – | – | – | 1.2 | 1.1 | 1.1 | |
t = 2 | 1.9 | 1.4 | 1.2 | 2.4 | 2.0 | 1.8 | |
t = 3 | 1.0 | 0.8 | 0.7 | 1.7 | 1.4 | 1.3 | |
cp_{2} | t = 4 | 1.5 | 0.8 | 0.7 | 1.5 | 1.3 | 1.2 |
t = 5 | – | – | – | 1.6 | 1.4 | 1.3 | |
t = 6 | – | – | – | 1.6 | 1.4 | 1.3 |
The parameters p and Q are associated with the number of binary decodings that the GC-2 (t,p) and WED (t,Q) algorithms, respectively, execute. When decoding a received sequence, the GC-2 (t,p) algorithm does 2^{ p } binary decodings, while the WED (t,Q) algorithm does log2Q ones. Thus, for making a fair comparison of the algorithms, we choose configurations where γ ≅ 1. In this case, the WED algorithm can offer a performance closer to the ML curve (for the higher protection class), but at the price of increased complexity. For γ = 1 and code C _{2}, we can see this comparing GC-2(5,2) and WED(5,16) algorithms (see Tables 6 and 8). For the GC-2(5,2) algorithm, Δ _{1} = 1.3 dB and MO ≃[95.7;1,800;1,800;3.99], while for the WED(5,16) one, Δ _{1} = 1.0 dB and MO ≃[179;1,832;1,808;229]. Another example is verified if the GC-2(4,3) and WED(4,1024) are compared (γ = 0.8 and code C _{2}). For the GC-2(4,3) algorithm, Δ _{1} = 1.7 dB and MO ≃[183;3,655;3,591;7.63], while for the WED one, Δ _{1} = 1.4 dB and MO ≃[485;4,580;4,520;535]. It should also be observed in Table 8 that the performance of the WED algorithm degrades when t is high. The authors conjecture that this behavior is due to some limitation of the reliability ${R}_{\ell}^{\prime}$ adopted.
6 Conclusions
In this study, the effectiveness of two sub-optimum soft-decision decoding algorithms (GC-2 (t,p) and WED (t,Q) algorithms) was investigated for each protection class of UEP block codes using binary transmission over an AWGN channel. It was verified the performance of both algorithms compared to that of the ML one. The behavior of the GC-2 algorithm was investigated for estimating the analog weight (Step 4) according to the variation of its parameters (t and p), while the WED algorithm was examined for a new proposed reliability according to the variation of its parameters (t and Q). To estimate the complexity of each algorithm, it was computed the number of arithmetic operations per decoded sequence. An analysis of the trade-off between performance and complexity of the algorithms was performed for each protection class assuming various configuration options. These analyses led us to conclude that, when choosing the parameters of the algorithms, the increase of the error-correcting capability of the binary decoder (t) was more advantageous in both cases. In addition, choosing the values of p and Q such that γ is close to one (for a fixed value of t), it was verified that the GC-2 algorithm is less complex, while the WED algorithm can offer (depending on the code adopted) a performance closer to the ML one.
Endnotes
^{a}Error pattern z associated with the syndrome of the sequence y ^{ i }.^{b}The complexity of decoding algorithms should be taken into consideration additional factors besides the arithmetic operations (like memory reads and writes). Since these factors are architecture dependent, we omit their contribution in this article.
Declarations
Acknowledgements
This study was supported in part by the State of Pernambuco Research Foundation (FACEPE) under Grant APQ-1060-3.04/10 and the Brazilian Council for Scientific and Technological Development (CNPq) under Grant 302535/2010-1.
Authors’ Affiliations
References
- Lin T-H, Kaiser WJ, Pottie GJ: Integrated low-power communication system design for wireless sensor networks. IEEE Commun. Mag 2004, 42(12):142-150.View ArticleGoogle Scholar
- Niewiadomska-Szynkiewicz E, Kwasniewski P, Windyga I: Comparative study of wireless sensor networks energy-efficient topologies and power save protocols. J. Telecommun. Inf. Technol 2009, 3: 68-75.Google Scholar
- Gómez-Vilardebó J, Pérez-Neira AI, Nájar M: Energy efficient communications over the AWGN relay channel. IEEE Trans. Wirel. Commun 2010, 9(1):32-37.View ArticleGoogle Scholar
- Zhu Y, Wu W, Pan J, Tang Y: An energy-efficient data gathering algorithm to prolong lifetime of wireless sensor networks. Comput. Commun 2010, 33(5):639-647. 10.1016/j.comcom.2009.11.008View ArticleGoogle Scholar
- Howard SL, Schlegel C, Iniewski K: Error control coding in low-power wireless sensor networks: when is ECC energy-efficient? EURASIP. J. Wirel. Commun. Netw 2006, 2: 1-14.View ArticleGoogle Scholar
- Kienle F, Wehn N, Meyr H: On complexity, energy- and implementation-efficiency of channel decoders. IEEE Trans. Commun 2011, 59(12):3301-3310.View ArticleGoogle Scholar
- Fossorier M, Lin S, Snyders J: Reliability-based syndrome decoding of linear block codes. IEEE Trans. Inf. Theory IT-44 1998, 388-398.Google Scholar
- Singh J, Pesch D: Application of energy efficient soft-decision error control in wireless sensor networks. Telecommun. Syst (Springer Netherlands) (2011) , pp. 1–11 http://dx.doi.org/10.1007/s11235-011-9588-z Google Scholar
- Chang YC, Lee SW, Komiya R: A low complexity hierarchical QAM symbol bits allocation algorithm for unequal error protection of wireless video transmission. IEEE Trans. Consum. Electron 2009, 55(3):1089-1097.View ArticleGoogle Scholar
- Nguyen HX, Nguyen HH, Le-Ngoc T: Signal transmission with unequal error protection in wireless relay networks. IEEE Trans. Veh. Technol 2010, 59(5):2166-2178.View ArticleMATHGoogle Scholar
- Pimentel C, Souza RD, Uchôa-Filho BF, Pellenz ME: Generalized punctured convolutional codes with unequal error protection. EURASIP J. Adv. Signal Process. 2008, 2008: Art. ID 280831, 1-6.View ArticleMATHGoogle Scholar
- Borade S, Nakiboglu B, Zheng L: Unequal error protection: an information-theoretic perspective. IEEE Trans. Inf. Theory 2009, 55(12):5511-5539.MathSciNetView ArticleGoogle Scholar
- Zhang S, Lau VKN: A novel unequal error protection (UEP) scheme using D-STTD for multicast service. IEEE Trans. Wirel. Commun 2009, 8(2):978-984.View ArticleGoogle Scholar
- Arslan SS, Cosman PC, Milstein LB: Coded hierarchical modulation for wireless progressive image transmission. IEEE Trans. Veh. Technol 2011, 60(9):4299-4313.View ArticleGoogle Scholar
- Kang K, Jeon WJ: Differentiated protection to video layers to improve perceived quality. IEEE Trans. Mobi. Comput 2012, 11(2):292-304.View ArticleGoogle Scholar
- Thomos N, Boulgouris NV, Strintzis MG, Wireless image transmission using turbo codes and optimal unequal error protection: IEEE Trans. Image Process. 2005, 14(11):1890-1901.View ArticleGoogle Scholar
- Qu Q, Modestino JW: An adaptive motion-based unequal error protection approach for real-time video transport over wireless IP networks. IEEE Trans. Multimed 2006, 8(5):1033-1044.View ArticleGoogle Scholar
- Ha H, Yim C: Layer-weighted unequal error protection for scalable video coding extension of H.264/AVC. IEEE Trans. Consum. Electron 2008, 54(2):736-744.View ArticleGoogle Scholar
- Zhang W, Shao X, Torki M, HajShirMohammadi A, Bajic IV: Unequal error protection codes for JPEG2000 images using short block length turbo codes. IEEE Commun. Lett 2011, 15(6):659-661.View ArticleGoogle Scholar
- Tendolkar NN, Hartman CRP: Generalization of Chase algorithms for soft decision decoding of binary linear codes. IEEE Trans. Inf. Theory 1984, IT-30(5):714-721.View ArticleMATHMathSciNetGoogle Scholar
- Weldon Jr E: Decoding binary block codes on Q-ary output channels. IEEE Trans. Inf. Theory 1971, 17(6):713-718. 10.1109/TIT.1971.1054713View ArticleMATHMathSciNetGoogle Scholar
- Masnick B, Wolf J: On linear unequal error protection codes. IEEE Trans. Inf. Theory 1967, IT-3(4):600-607.View ArticleMATHGoogle Scholar
- van Gils WJ: On linear unequal error protection codes. EUT-Rep-82-WSK-02, Department of Mathematical and Computing Science. Eindhoven University of Technology, 1982MATHGoogle Scholar
- Chase D: A class of algorithms for decoding block codes with channel measurement information. IEEE Trans. Inf. Theory 1972, IT-18(1):170-182.MathSciNetView ArticleMATHGoogle Scholar
- Chen WHJ, Fossorier MPC, Lin S: Optimum quantizer design for the weigthed erasure decoding algorithm. In Proceedings of the IEEE International Conference on Communications (ICC). (Vancouver, Canada; June 1999:838-842.Google Scholar
- Albuquerque RC, Cunha DC, Pimentel C: An evaluation of the generalized Chase-2 algorithm applied to unequal error protection block codes. In Proceedings of the IEEE 3rd Latin-American Conference on Communications (LATINCOM). (Belém-PA, Brazil; October 2011:1-6.Google Scholar
- Tenenbaum AM, Langsam Y, Augenstein MJ: Data Structures Using C. Facsimile edition: Prentice Hall; 1989.MATHGoogle Scholar
Copyright
This article is published under license to BioMed Central Ltd. This is an Open Access article distributed under the terms of the Creative Commons Attribution License(http://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.