Multi-non-binary turbo codes

This paper presents a new family of turbo codes called multi-non-binary turbo codes (MNBTCs) that generalizes the concept of turbo codes to multi-non-binary (MNB) parallel concatenated convolutional codes (PCCC). An MNBTC incorporates, as component encoders, recursive and systematic multi-non-binary convolutional encoders. The more compact data structure for these encoders confers some advantages on MNBTCs over other types of turbo codes, such as better asymptotic behavior, better convergence, and reduced latency. This paper presents in detail the structure and operation of an MNBTC: MNB encoding, trellis termination, Max-Log-MAP decoding adapted to the MNB case. It also shows an example of MNBTC whose performance is compared with the state-of-the-art turbo code adopted in the DVB-RCS2 standard.


Introduction
Two decades after their introduction in [1], turbo codes (TCs) have found their utility in numerous communication systems.TCs can be found in LTE, DVB or in deep space communications standards [2][3][4].This TC success was possible because of the numerous studies in the past years, leading to the diversification of TC families and to the emergence of new codes, whose decoding is based on the principle of iterative or turbo decoding.Thus, the evolution of TC in terms of component convolutional encoder after the now classic single binary turbo codes (SBTC) [1], was followed by double/multibinary turbo codes (D/MBTCs) [5,6] and non-binary turbo codes (NBTCs) [7][8][9].These new TC families aim to improve SBTC performance, especially by lowering the error floor.Proposing a new family of multi-non-binary turbo codes (MNBTCs), this paper may be seen as a continuation of these concerns.The MNBTC was firstly introduced in [10], but this paper presents a more complete description of MNBTCs and also an example of more efficient MNBTCs.An MNBTC has recursive and systematic convolutional component encoders, with several non-binary inputs.This evolution from single-binary to (multi-)non-binary is found at low-density parity-check (LDPC) codes [11], but it happened much earlier [12].
The first benefit brought forth by the new family of MNBTCs is latency reduction, the data block being more compact.Another benefit, argued by practical results, is a lower error floor.Basically, simulations show that the waterfall region extends below 10 −8 of frame error rate (FER).Furthermore, MNB turbo decoders have a better convergence at high SNRs.
In addition, MNBTCs as non-binary LDPCs (NB-LDPCs) can be easily combined with high-order modulations, yielding increased bandwidth efficiency.The price for these benefits is the increased complexity of the component code trellis and, therefore, of the computational effort of the decoder.But, due to the evolution of the processing capacity, it is expected that the complexity of non-binary codes to no longer pose a disadvantage in relation to binary codes.This is confirmed by the extensive studies of NB-LDPC codes, [13][14][15][16][17].
The structure of the paper is as follows: in Section 2, we describe the MNBTC encoder and decoder, as well as component codes, the MNBTC structure, the encoding process and trellis termination, the Max-Log-MAP algorithm adjusted to the MNB case, and details of interleaving.In Section 3, we propose a memory-3 MNBTC with two inputs offering a good trade-off between performance and complexity.The process of component encoder selection is explained and performance is assessed through simulations in both the AWGN and the Rayleigh fading channels, in conjunction with BPSK and 16-QAM modulations.Performance is compared with the DBTC of the DVB-RCS2 standard [3] and also with some NB-LDPC from literature.Section 4 concludes the paper.

Multi-non-binary convolutional encoders
In this section, we describe the encoding scheme of the constituent codes of MNBTCs.Each constituent encoder has R non-binary inputs taking values in the Galois field GF(2 Q ), and is then referred to as a multi-non-binary (MNB).In Figure 1, we present the general scheme of a memory-M recursive systematic MNB convolutional encoder (MNBCE), with a rate R c = R/(R + 1).This scheme is known as the observer canonical form [18].Each cell of the register in Figure 1 stores a vector of Q bits at a time.All the links are supposed to have a width equal to Q in order to carry Q-bit vectors.Each block labeled g m,r , with 0 ≤ m < M, 0 ≤ r ≤ R, represents a multiplier in GF(2 Q ) by the generator polynomial coefficient g m,r .Adders also performs the sum in GF(2 Q ).At time n, the R encoder inputs consist of a word of symbols where N is the interleaver length and u n r;q are binary coefficients.The MNB convolutional encoder generates R + 1 outputs, of which the first R symbols correspond to the R inputs (systematic part) and the last symbol is a redundant symbol.The current encoder state at time n is given by the content of the shift register, S n 0 , S n 1 , … S n M−1 .We define the encoder state vector by . To simplify the notations, we understand by u n both its vector expression and its scalar one u n being an element of GF(2 Q•R ), the distinction being made in context.Similarly, u n r is in GF(2 Q ) and s n is in GF(2 Q•M ).Also, we note that we have chosen to place temporal indices in the top right and the rest of the indices in the bottom right.
The relation between the encoder state at time n + 1 and the encoder state at time n can be expressed in the compact form: where G T = G L ⋅G F + G T 0 and W = ([0 0 … 0 1] 1×M ) T , with ' T ' denoting the transpose operation and In the definition of T and in (1), we marked the size of the matrices in question by pairs of indices of the form x × y.
Applying the D transform similarly to the binary case x k ⋅D k ) to Equations 1 and 2, we obtain After some basic manipulations, it can be shown that This encoding matrix uniquely identifies a MNB convolutional encoder from the whole encoders family.For the sake of simplicity, we will use the form G = [g m,r ] M≥m≥0,R≥r≥0 to refer to the encoding matrix.Hence, we have

The trellis termination for an MNBCE
In this section, we show how the already known techniques for trellis termination can be adapted to the MNB case: tail-biting [20] and zero padding [21,22].
Although the form of the equations is similar to the binary case, for the MNB case, all operations are performed in GF(2 Q ).
Starting from Equation 1we can develop consecutively a Thus, using the notation we have The tail-biting technique involves a pre-encoding stage.The goal of pre-encoding is to determine s u .Thus, starting with the null state s 0 = 0, it results that s u = s N .Actual coding starts with state s 0 = s x and finally reaches the same state s N = s x .We have s x = s u + s x ⋅ T N , hence provided that the matrix (I M + T N ) is non-singular.If N f is the period of the polynomial g 0 (D) associated to the feedback, we have Therefore, (I M + T N ) is non-singular and hence the tail-biting technique can be applied if N is not a multiple of the period N f .The maximum possible period of a degree-M feedback polynomial with coefficients in GF(2 Q ) is In practice, the transition from s N to s x can be achieved using a look-up table with 2 Q•M values.
The tail-biting technique has the advantage of not requiring the insertion of additional redundancy.Using tail-biting, the coding rate of the MNBCE in Figure 1 is Zero padding can be achieved in two ways: interleaved termination or uninterleaved termination.Zero padding closes the trellis at null state b at both ends: s end = s 0 = 0.If s 0 = 0, (8) results in Zero padding with uninterleaved termination does not require pre-encoding.For zero padding with uninterleaved termination, K redundant symbols are added to the input block [u n ] 0≤ n <N so that The matrix Equation 16 should be regarded as a system of M scalar equations on GF(2 Q ), where the unknowns are redundant symbols u N , …, u N+K−1 with parameters the entries of s N .For (16) to be a compatible system, uniquely determined, it is necessary and sufficient to insert K = M redundant symbols.
Similar to the tail-biting case (Equation 11), Equation 16 also can be solved a priori, then using a look-up-table.
The coding rate for zero padding with uninterleaved termination is Zero padding with interleaved termination is done, dislodging M information symbols and attributing their places to redundant symbols.Assuming that the positions of redundant symbols are J ZPI = {n 1 , …, n M }, we have As for tail-biting, Equation 18 can be solved in two steps.By a pre-encoding stage, in which u n ð Þ n∈J ZPI is set to 0, we obtain Knowing s u , the matrix Equation 18 is a system of M scalar equations with M unknowns that can be solved a priori, and for which a look-up table can be used.One can note that the pre-encoding step can be eliminated if J ZPI = {N-M, …, N-1}.In this case, the calculation of s u , identifying the redundant symbols for the trellis termination and the encoding of these symbols using a lookup table are two phases of a single encoding.
The coding rate for zero padding with interleaved termination is

Turbo encoding of an MNBTC
The left part of Figure 2 describes the structure of an MNBTC encoder.
. At the same time, after being permuted by the block interleaver π, the input data sequence π(u) is encoded by MNB encoder C0 which generates the second redundant symbols sequence is the systematic part of the output.In this way, the turbo coding rate is R c = R/(R + 2).Of course, if a higher turbo coding rate is desired, puncturing can be performed.
Figure 3 shows the general structure of a block generated by an MNB turbo encoder at bit-wise in Figure 3a, and at symbol-wise in Figure 3b, respectively.All bits of a block form the MNBTC word.Columns in both figures contain the bits/symbols generated at the turbo encoder output in the same moment of time (tact).The entire bit sequence contained in a column was named coded word (different from the MNBTC word).These coded words can be identified by the temporal indices: x i , 0 ≤ i < N. The structure of bit-wise encoded words is visible in Figure 3a, of symbol-wise encoded words in Figure 3b.Also, Figure 3b shows that a coded word contains both information (symbols) and redundancy (symbols).The same block (turbo-coded word) can be seen/regrouped in Q-symbol sequences generated by the R + 2 outputs of the MNBTC, denoted x r , 0 ≤ r ≤ R + 1.Sequences x 2 , x 3 , …, x R+1 form the data block, and x 0 and x 1 form the redundancy generated by the MNBTC.Note that a branch through the trellis encoder C1 is given by the pair u n x n 1 ½ and a branch in C0 encoder trellis is given by the pair π u ð Þ n x n 0 Â Ã .Trellis termination in MNBTC may be done primarily in four ways: i) Dual tail-biting.Both encoders, C1 and C0, use the tail-biting technique to terminate their trellises.Turbocoding rate in this case is ii) Semi-termination.C1 terminates its trellis according to the zero padding technique with interleaved termination with J ZPI = {N-M, …, N-1} while C0 does not terminate the trellis.For the turbo-coding rate, the following value results iii) Interleaved dual termination.Both encoders use the zero padding technique with interleaved termination.Positions of redundant symbols for C1 trellis termination can be chosen like in the previous case J ZPI−1 = {N-M, …, N-1}, but for C0 they result from interleaving: J ZPI-2 = {π(N-M), …, π(N-1)}.Thus, at least C0 performs a pre-coding stage.The coding rate is iv) Uninterleaved dual termination.Both encoders use the zero padding technique with uninterleaved termination.The coding rate is The uninterleaved dual termination technique is easy to accomplish, but subsequently raises the issue of restructuring the encoded block as sequences x 2 , …, x R+1 contain N + 2•M symbols, while sequences x 0 and x 1 only consist of N + M symbols.

Modulation
For a 2 P -order modulation, if Q is a multiple of P, i.e., Q = P • B, the Q bits of a turbo-coded Q-symbol can be grouped into B groups of P bits that can be transmitted in B-modulated P-symbols z n r;B−1 For the mapping between (the bits c of ) the coded word and modulated symbol, we use the notation

Turbo decoding of MNBTCs
In this section, we describe the possibilities for decoding MNBTCs.

Channel output and the decoding strategy
We will start by identifying the channel sequences arriving at the (turbo) decoder.
The sequences retrieved at the channel output, after demodulation, are denoted by y = [y R+1 … y 2 y 1 y 0 ], with b is a sample of the additive white Gaussian noise (AWGN) and a is the fading amplitude.The decoding of these sequences can be performed bitwise, symbol-wise, or word-wise.Of course, dedicated decoding algorithms can be used: maximum a posteriori (MAP) [23], logarithmic MAP (LogMAP) [24] or maximum logarithmic MAP (MaxLogMAP) [25,26].Due to the known advantages of the MaxLogMAP algorithm with respect to practical implementation, we further present its adaptation to the MNB case.Let us note that although we adopted the strategy of the Max-Log-MAP algorithm, the changes needed to adapt MAP and Log-MAP algorithms to the MNB case are similar to the one shown.

Decoding over trellises of the component codes
To describe the operations performed by component decoders, we will first describe their operands.
At iteration i, each decoder DECj processes the channel soft values [y R+1 … y 2 y j ] and the a priori information La j , j = 0, 1, to calculate the anch metrics (the gamma coefficients), the nodes metrics by forward recurrence (the alpha coefficients), the nodes metrics by backward recurrence (the beta coefficients), a posteriori information e L, and extrinsic information Le.
The decoder tries to reconstruct the encoder's path through the trellis.In this respect, it assigns reliability values to each node and each branch in the trellis according to the values of received sequences, y n r .A trellis branch is identified by the triplet s n , s n+1 , and u n .However, the possible values for the variables s n , s n+1 , and u n respectively have a timeless character (do not depend on n or i).For possible values, we will use the notation: θ for s n , θ for s n+1 , and d for u n .We will also denote by x the generic word obtained by encoding d, and with zr;b ; the generic symbol obtained by modulating the word x: Obviously, there is interdependence between the current state θ, future state θ, and the value of the input word f d: any two of them uniquely determine the third one.For instance, the current state θ of the encoder and the input word value d determines the future state θ of the encoder.We will mark it through notation θ; d → θ.Given this interdependence property, the indexing of branches can be done by any two of these parameters.Therefore, the following branch metric notations are equivalent: Both branch metric γ and information processed during decoding (L, Le, or La) depend on how the input word d is regarded by the decoder.Thus we have a) word-wise decoding:

Recurrences of component decoders
In this we present calculations performed by each component decoder in each iteration.Regardless of the adopted decoding way (bit-/symbol-/ word-wise), forward and backward recurrences have the same form: Branch metrics γ, a posteriori information L, and extrinsic information Le are calculated by the formulas where σ 2 is the noise variance and δ and Ex depend on the adopted decoding way: We have N Ld ≤ N Lc ≤ N Lb ≤ N La .Obviously, a higher value of N L requires a higher computational effort, but also a decoder finer 'resolution'.In fact, this is the essence of the difference between SBTC, MBTC, NBTC, and MNBTC.A simple block data restructuring would not bring any advantage without rethinking of the decoding.Considering the decoding modes from d) to a), one can note a decoding optimization shift from bit-wise to symbol-wise and then word-wise.Word-wise decoding optimization accredits the MNBTC with a higher potential in decoder performance g .Other details that define the structure and operation of a MNBTC remain to be optimized.An example of this is interleaving.

Turbo decoding
Knowing the outputs of component decoders, we can specify the equations that govern turbo-decoding.At the turbo decoder level, we have the relations where δ is defined above.Each decoder generates extrinsic information L ej that is transformed by interleaving in a priori information for the other component decoder with L 0 e1 ≡0.The iterative process continues until all iterations are performed or until a stop condition is fulfilled, if the turbo decoder is equipped with a mechanism to stop the iterations.

The hard decision
After performing all iterations, decoding is completed by a hard decision on a posteriori information values provided by one of the two component decoders.Thus, for word-wise decoding, we have For other decoding methods, ûn and d are replaced with ûn r and d r , 0 ≤ d r < 2 Q , 0 ≤ r < R, for Q-symbol-wise decoding; ûn r;b and d r,b , 0 ≤ d r,b < 2 P , 0 ≤ r < R, 0 ≤ b < B, for B-symbol-wise decoding; and ûn r;q and d r,q , 0 ≤ d r,q < 2, 0 ≤ r < R, 0 ≤ q < Q, for bit-wise decoding.

Interleaving for MNBTCs
Similarly, to the interleavers used in MBTCs [5], for MNBTCs we also perform an intra-symbol interleaving step and an inter-symbol interleaving step.Inter-symbol interleaving permutes the input words u n in the information data sequence may be done using already known interleaving techniques [27][28][29].An advantage brought by MNBTCs is the essential reduction of the interleaver length N. The MNBTC data block structure is three-dimensional: R × Q × N.For SBTC, we have a linear data block structure (R = Q = 1) and for MBTC and NBTC planar structures (R > Q = 1 for MBTC and Q > R = 1 for NBTC) as well.
Interleaver size reduction implicitly leads to latency decrease.This is an advantage offered by MNBTCs.Latency is generally defined as the time from the first bit of a block input to the device to the time that the same bit is output from the device.Since this time is proportional to the length of the interleaver (not the size of the data block), a decrease in the latency results, proportional to the reduction of N, both the MNB encoder and the MNB decoder.Latency reduction is possible because both (MNB encoder and decoder) operate with symbols and not bits.
MNBTCs also constitute a compromise in complexity (placed) between MBTCs and NBTCs.Thus, considering the same data block of size R × Q × N bits and the same memory M for all three (MBTC, NBTC, and MNBTC), in Table 1, we present the total number of ways from component encoders' trellises (MBCE, NBCE, and MNBCE).We considered that each encoder has an extra output (minimum redundancy).Then, the MNB encoder's trellis has 2 (Q − 1) × (R + 1) × M /Q more branches than the MB encoder's trellis and 2 (R − 1) × Q × M less branches than the NB encoder's trellis.However, an accurate comparison is difficult, given that data block size and coding rate for the encoder in question cannot be aligned simultaneously.The fact however is that the MNB encoder has a low complexity compared to the NB encoder due to a lower number of bits per symbol.
Table 2 compares the volume of the calculation made by the convolutional decoder for SB, MB, and MNB.For each case, we present details about the calculation of the recurrent coefficients α and β, of the coefficients γ (trellis branch metrics), and the values of the coefficients L. 'No.' is the total number of coefficients calculated.To calculate each coefficient, we require a number of 'prod' multiplications and a number of 'sum' additions or 'cmp' comparisons.For a fair analysis, it is necessary to use the same number of bits of information, the same encoding rate and the same constraint length (binary equivalent) for all three cases.The encoding rate is adjustable through puncturing.But puncturing does not change the 'volume' of decoding calculation.Thus, for comparison, we considered the natural rate of encoding in each case.In order to preserve the size of the input data block, we considered that a data block has the same number of bits (R × Q × N) in all three cases.
'Preserving' the constraint length (binary equivalent) requires that between M' (SB and MB encoders' memory) and M (MNB encoder's memory) there be the formula: As expected, the volume of the calculation for the MNB decoder is significantly higher than for SB and MB.However, a comparison between computational efforts made in turbo-decoding for the three cases must take into account the convergence of the iterative process (see Section 3.2, Equation 38).
By imposing the 'preservation' of the number of bits in the data block results an advantage for MNB: reduced latency.Thus, the numbers of recurrent steps necessary to be taken in the SB, MB, or MNB decoders are R × Q × N + 1, Q × N + 1, and N + 1, respectively.If the other theoretical calculations can be parallelized, recurrences require successive calculations.Thus, latency becomes proportional to the number of recurrent steps and, of course, there is a reduction in the case of MNB.
Intra-symbol interleaving, used in the DVB-RCS and WiMAX standards, operates on the R = 2 bits (Q = 1) of each input symbol, reversing their positions for even indexes n.Since for MNBTCs, an input word consists of at least 4 bits, intra-symbol interleaving can be made in many more ways.A study of these modes is beyond the scope of this paper.The intra-symbol permutation implemented in the simulation results presented in Section 3 was not specifically optimized: we performed helical intra-symbol interleaving, i.e., the R•Q bits of the u n word are cyclically permuted by one position in the same direction.

An example of MNBTC
This section presents an instance of MNBTC offering a good trade-off between performance and complexity.It is the outcome of a search among the MNB component encoders family with R = 2 (double-binary input), Q = 2, and memory M = 3.The next sections provide some details on the MNB component encoder family's cardinality on the selection criteria.Then the BER/FER performance of the selected MNBTC is compared with the memory-4 DBTC used in the DVB-RCS2 standard.
We chose this TC as benchmark, since it is the most powerful standardized TC with a ½ natural rate.But an absolute 'fair' comparison should be made between convolutional codes with the same 'binary equivalent constraint length'.

Search for the best MNBCE
Through practical observations, we found that an efficient turbo decoder in terms of BER/FER converges also rapidly, meaning that on average, it performs few iterations to correct a block.Thus, if the TC is equipped with a criterion for stopping the iterations, its convergence is defined as the ratio of the total number of iterations, iter (Nb) necessary for the decoding of Nb turbo-coded blocks and Nb, when Nb is large For small SNR values, convergence C v tends to iter max , the maximum iteration number, which is set a priori.When the SNR increases, the weight of the nonconverging blocks decreases.
The motivation of using convergence criterion is that C v can be calculated with a quite good accuracy for small values of Nb.So, the turbo code functionality was simulated with each of the component codes.The simulations were stopped if the convergence C v overcame a given limit where dC v represents the speed of threshold decreasing.The given threshold C v0 -Nb⋅dC v decreases with Nb in order to limit the simulation duration for a specific code.
In the search we made, the values of the parameters C v0 and dC v were chosen equal to 4.5 and 15 × 10 −4 respectively.For example, for a TC with a convergence C v1 = 3 iterations/block, N b1 = 10 3 blocks are simulated.The lower the convergence of a TC, the more blocks have to be simulated, which leads to a more precise estimate of its convergence.We used the QPP inter-symbol interleaver set forth in the LTE standard for the length of 376.Thus, the data block size is 4 × 376 bits.For the most efficient component encoders in terms of convergence, we performed simulations in order to estimate BER and FER.Note that we obtained many component encoders with very close BER/FER performance.

Table 2 Complexity of the Max-Log-MAP decoding algorithm
Comparison between SB, MB, and MNB.

Simulations results
The method described above led to the following generator matrix: The MNBTC performance built with this component encoder is compared with the one of the benchmark DBTC from DVB-RCS2 in Figure 4.For a fair comparison, we used data blocks with sizes of R × Q × N = 2 × 2 × 376 bits for MNBTC and 2 × 1 × 752 bits for DBTC.Also, for both TCs, we used tail-biting and the Max-Log-MAP decoding algorithm with the adaptation previously described for MNBs (word-wise decoding).To plot the curves, we performed simulations until 500 erroneous blocks were obtained or until a maximum number of blocks equal to 10 9 for DBTC and around 2 ×10 8 for MNBTC were simulated.Exceptions are simulations to determine the extreme points of the curves ' AWGN&BPSK' for MNBTC.For these points, simulations ran until we obtained 30 erroneous blocks (over 2.1 ×10 9 blocks transmitted).The maximum number of iterations is set to 16 or 100, combined with the genie stopping criterion [30].The theoretical limit mentioned in Figure 4 is the sphere packing bound that takes the penalty due to the block size into account [31].For the 16-QAM modulation, to perform the mapping between coded symbols and modulation symbols, in the MNBTC case, we used the values B = Q = 2, P = 1, and the relation For the DBTC case, we used the relations where x n 3 x n 2 x n 1 x n 0 ½ is the turbo decoder output at time n.We do not use puncturing, nor quantization nor bit interleaving between code and modulation for the Rayleigh case, since BPSK is assumed in this case.
Whatever type of channel involved and the type of modulation used, as argued by the curves in Figure 4, the MNBTC does not show the error floor effect in the value range for FER investigated.The MNBTC performance in the waterfall region is slightly weaker than for the DBTC: the observed convergence loss ranges from 0.1 to 0.4 dB, but that the error floor is much lower in all the simulated cases.
An advantage of MNBTCs over DBTCs is the continuous improvement of BER/FER performance when performing an average number of iterations greater than usual for TCs. Figure 4 shows that the FER performance of the DBTC does not improve from 16 to 100 iterations, whereas for the MNBTC, the improvement is clear.This is an interesting property for applications where the decoding latency/throughput is not an issue.Some additional details on this behavior are given in Figure 5.At a SNR = 1.4 dB, the histogram of blocks as a function of the number of iterations required for correction presents a much higher dispersion in MNBTCs than DBTCs.While the SNR increases, the histograms for MNBTCs becomes 'finer' , and have become more compact than DBTC histograms at SNRs greater than 2 dB.For SNR > 2 dB, MNBTC shows better convergence than DBTC.This is argued by the third diagram in Figure 5.
In Figure 6, we compared the performance of the proposed MNBTC with that of the NB-LDPCs presented recently in the literature, [32][33][34][35][36][37][38].In the simulations carried out for the construction of the curves for the MNBTCs in Figure 6, we used the stop criteria described in [39], with a threshold value of 20.The results in this figure clearly lead to the conclusion that the proposed MNBTC is inferior in terms of performance to the NB-LDPC in small size data block (under a thousand bits), but becomes superior at larger sizes (thousands of bits).

Conclusion
This work opens a new horizon for TCs: using of the multi-non-binary convolutional encoders by generalizing the concepts of multi-binary and non-binary codes.The sample of MNBTC presented in this paper successfully competes in performance with the DBTC recently standardized in DVB-RCS2.The main advantages (as for example latency reduction) of MNBTCs arise from the more compact form of data blocks.Many aspects still remain to be explored in this horizon, e.g., an optimization for intra-symbol interleaving.We intend also to investigate new solutions for decoding MNBTCs.The MAP adaptation algorithm, described above, is a rather complex solution.Due to the non-binary nature, it is possible to find solutions less complicated, possibly by adapting the algorithms used in (turbo) decoding of the Reed-Solomon codes.Such solutions even if they are less effective than MAP type algorithms can be alternatives.
Regarding the iteration stopping criteria, stopping mechanisms dedicated to SBTCs abound in the literature [30,[39][40][41][42].A few studies on the stopping criteria for MBTCs can also be found [39,43].In general, they can be adapted to the MNB case.Although a detailed study on this topic is beyond the scope of this paper, we have implemented the stopping criterion called minAPP in [39] for the MNB case.Performance in terms of BER/ FER is similar to the application of the genie criterion [30].However, the average number of iterations performed for decoding a block depends on the selected stopping technique.Thus, an MNB turbo-decoder equipped with a mechanism to stop the iterations based on the minAPP criterion (easily implementable in practice) performs on average 1.5 more iterations than the one based on the genie criterion (not applicable in practice).
The investigation of the possibilities of using the MNBTC in cooperative communications schemes, [44][45][46], is also of interest.

Endnotes a
To avoid confusion, let us point out that the matrix T is the only variable throughout the paper that appears exponentiated, i.e., for which the top right indexes are exponents.
b Obviously, the trellis can be closed in any other state, but this does not bring benefits.
c Even if working with symbols and words, they exist physically still under binary form.
d By 'flat' we considered a frequency nonselective fading, whose amplitude remains constant for the duration of a transmitted symbol (which is P times greater than the length of a bit).
e Since in the Max-Log-MAP algorithm operations are performed in the logarithmic domain, operands have an information dimension and not a probability one.
f The input word uniquely identifies a branch between all outgoings (or incomings) in a node.
are the generator polynomials.Because of the systematic nature of the involved encoders, (5) can be seen as the encoding relationship: U 0 (D) = G(D)⋅U(D), where

Figure 2
Figure2The scheme of a MNBTC.

Figure 3
Figure 3 Structure of MNB turbo-coded block.(a) Bit-level structure of MNB turbo-coded block; (b) Q-symbol-level structure of MNB turbo-coded block.
obviously, the scalar equivalent value of d remains the same in GF(2 Q•R ); c) B-symbol-wise decoding: d r from the previous expression of d is also a d r; B−1 … d r;1 d r;0 ½ vector with entries in GF(2 P ) with P = Q/B; d) bit-wise decoding.This case results as a degeneration of the previous case for P = 1 and B = Q.We have d r ¼ d r;Q−1 … d r;1 d r;0 ½ .

..
a) Word-wise decoding: δ=d and Ex ¼ Le n;i j d ð Þ .The decoder calculates N La = 2 Q•R values for L, Le, and La.b) Q-symbol-wise decoding: δ = d r and The decoder calculates N Lb = R•2 Q values for L, Le, and La.The decoder calculates N Lc = R•B•2 P values for L, Le and La.d) Bit-wise decoding: δ=d r,q and Ex ¼ X R r¼1 X Q−1 q¼0 Le n;i j d r;q À Á θ ^;d ð Þ→dr;q .The decoder calculates N Ld = 2•R•Q values for L, Le, and La.

g
Optimal decoding algorithm uses a posteriori probabilities for the entire sequence of data transmitted.

Table 1
Components of MB, NB and MNB encoders' trellises 32 g 31 g 30 ; g 22 g 21 g 20 ; g 12 g 11 g 10 ; g 02 g 01 g 00 Â Ã ; Figure5Histograms of 10 6 performed blocks over necessary iterations to correct entire block.In the case of AWGN transmission channel and BPSK modulation.