Iterative Soft Permutation Decoding of Product Codes

In this paper the performance of product codes based on quadratic residue codes is investigated. Our Proposed Iterative decoding SISO based on a soft permutation decoding algorithm (SPDA) as a component decoder. Numerical result for the proposed algorithm over Additive White Gaussian Noise (AWGN) channel is provided. Results show that the turbo effect of the proposed decoder algorithm is established for this family of quadratic residue codes.


Introduction
The turbo codes were invented in 1993 by Berrou, Glavieux and Thitimajshima, who had used the concatenation of convolutional codes, the elementary decoder BCJR (Bahl, Cocke, Jelinek and Raviv Algorithm) and SOVA (Soft output Viterbi Algorithm) as a soft output.Two years later, Pyndiah et al [4] presented an alternative for bloc codes using the product code based on BCH (Bose, Ray Chaudhurand Hocquenghem) codes, the Chase II algorithm, as a component decoder, and the Pyandiah's soft output generated according to the formula presented in.Since turbo codes have been subject of many publications for instance.The turbo codes have attracted the interest of the scientific community, especially for their high speed transmissions over the air.The word turbo is much more related to decoding than encoding.To make a turbo decoding we will need three basic elements where the first is the concatenation of several simple codes, the second is to develop or adopt an efficient elementary decoder conducted by a soft output and the third element is a decoding scheme in which the soft output is converted to extrinsic information exchanged between the components decoders in an iterative process.The implementation and the performance of an efficient turbo decoder depend on the complexity of these three elements.In addition to the computation of the extrinsic information which has to be done in a very short time, and the convergence based on the number of iterations, we will need an elementary decoder less complex.In this perspective comes our work in which we use our soft permutation decoding algorithm (SPDA) proposed in [5] as an elementary decoder given the importance of performance results obtained by our decoder SIHO, and we compute its soft output using extrinsic information according to Soleymani et al.The result obtained in terms of BER is very interesting.The rest of the paper is organized as follow: section II presents the quadratic residue (QR) codes, section III describes the construction of product codes, section IV describes the original version of Soft permutation decoding algorithm (SPDA) for QR codes, section V talks about the Soft output and the Schema of the iterative decoding of Soleymani, finally, Simulation results and analyses are given in Section VI.

Quadratic Residue Codes and Their Stabilizers
The n is a prime and , the quadratic residue code is a cyclic code with a generator polynomial , where is the set of all nonzero 1(mod 8) n ≡ ± ( ) where ρ is a primitive element of GF(n).
By a theorem of Gleason and Prange, the automorphism group of an extended quadratic residue code has a subgroup which is isomorphic to either PSL 2 (n).

Product Codes
The product codes are constructed by concatenation of two or more linear block codes.We consider two basic block codes C 1 and C 2 characterized by parameters (n 1 , k 1 , d 1, R 1 ) and (n 2 , k 2 , d 2, R 2 ) where n i represent the code length, k i the length of the message d i the minimum distance Hamming and R i the code rate .The product code is represented in the form of matrix with n 1 rows and n 2 columns.Where the information forms a sub-matrix M of k 1 lines and k 2 columns, each of the lines k 1 from M is coded by the code C 1 and each of the n 1 columns is coded by the code C 2 .The resultant parameters of the product code are where , and , the code rate is . An important Property of these codes is that if the n1 columns are by construction the C2's code words, and k2 lines are C1's code words, the n1-k1 remaining lines of the resultant code word are C1's code words.In other hand the major advantage of product codes is a gain in minimum distance, and their major disadvantage is the loss in codes rate, subsequently, we consider that codes C1 and C2 are identical.

Soft Permutation Decoding Algorithm (SPDA)
The SPDA algorithm proposed in [5], tries to find the closest codeword to the received word in terms of Euclidian distance.The algorithm works as shown below:

Description of Confidence Value
The concept of confidence value designated by Φ is detailed in [4].In this paragraph, we will simply give a brief description.
Let be the transmitted code word, Φ = P{D = X/R} is the probability that the decoder takes a correct decision given the received sequence ; That is the assessment of the decision of the decoder.Computing Φ is impossible for a practical implementation, thus estimation has to be performed.To estimate Φ Soleymani et al are adopted a distance destructive denoted by as a metric between R and D where only the positions increasing the Euclidian distance contribute, i.e.
where the noise vector has a different polarity than the decision vector D, following.
There is a relationship between the confidence value Φ and the destructive Euclidean distance .Using software simulation according to [2] the influence of the variable Eb/No and the number of iterations may be omitted, and treat the confidence value Φ as a function of destructive Euclidean distance, written as: (2) Φ 0.99 0,95 0,93 0,84 0,71 0,53 0,21 0,12 0

Computing Soleymani's Soft Output
In this subsection we give the computation of the soft output as it's described in [2] by Soleymani et al.Recall that is the transmitted Codeword, the symbol has certain confidence value Φ.The probability of can be expressed as: (3) The first term represents the probability value when the decoder gives a correct codeword.applying Bayes' rule to this term will yield Since the decision bit is known, then The second term in (3) represents the probability value when the decoder decides in favor of a wrong codeword.
In this case, we consider the transmitted symbol is corrupted with Gaussian noise.Thus ( 6) Again, we apply Bayes 'rule to the second term in (3) and get : (7) Combining ( 3)-( 7), the a posteriori probability of is found as:  , ).
Unlike other list-based algorithms, soft outputs generated by ( 10) can be directly fed into the next decoding stage.

Iteratif Decoding Scheme
Soleymani's algorithm is intended for decoding turbo product codes; it may be considered an improvement of the chase algorithm / Pyndiah.Indeed, in their algorithm Soleymani et al. adopt the same elementary decoder that Pyndiah is that of Chase-II, by calculating the soft output based on the list of candidates provided by the elementary decoder "ie Chase-II" and the weighting factors α and β.While Soleymani base its calculation of Soft output decision on elementary decoder while rejecting the other candidates, and by evaluating the decision depending on its distance from the received word, to assign the value of trust Φ previously described.The latter is used to calculate the extrinsic information.which represent the columns of the matrix R (J) (column decoder).This allows us to get a hard decision D (J) and the extrinsic information W column (J).For the next iteration, W column is added to the original received matrix R to form a matrix R (J + 1), which in turn must be injected into the first component decoder.This operation, which injects R(J + 1), to be repeated, and by default, it will become R(J).This iterative process stops when the maximum number of iterations is reached.

Permutations Effect on the Elementary Decoder
The Figure 3 shows that the increase of the number of the stabilizers improves the performances.

Permutations Effect on the SISO Decoder
Figure 5.Effect of the number of permutations on the proposed SISO for QR (47,24,11)2 code In Figure 5, we present the simulation results for the RQ (47, 24, 11)2 code for different numbers of stabilizers of the code.Its show that the gain depends on the number of the permutations and the improvement becomes negligible when the number of permutations is greater than 1000.The turbo effect: 6 shows that the performances increase with number of iterations.According to these Figures we can see that the improvement is great after the first iterations.So, we note that the turbo effect of the proposed SISO is established for this family of codes.

Conclusion
In this paper, we have presented a new iterative decoding SISO of product codes based on quadratic residue codes.We have studied the effect of the number of permutations which stabilize QR codes, the number of iterations using simulations.As perspectives of this work, we will challenge other families of codes to be decoded by our iterative SISO decoder.

Figure 1 .
Figure 1.Construction of product code traditional algorithm described in previous section, we can obtain the extrinsic information by the following equation (10) Substituting P(xj = +1|R) and P(xj = −1|R) , we get (11)

Table 1
below resumes the function between and Φ for some used residue codes (RQ) codes.