In this paper, we propose a novel idea for improvement performances of the leader M-BCJR algorithm functioning in low complexity. The basic idea consists to localize error instant possibility, and then increase the complexity around this moment. We also propose an easy and important idea for early localisation of erroneous moments. We call this new algorithm Z-MAP. The simulations show that the improvement of performances is significant. The performances of Z-MAP turbo decoding are so close to full MAP-BCJR performances. Furthermore, the complexity is the same that of the M-BCJR. So, Z-MAP is an optimal version of M-BCJR algorithm.
The M-BCJR [
For turbo decoding [
In order to enhance the performances of M-BCJR algorithm, an optimal version is proposed in this paper. it offers same performances of full MAP-BCJR turbo decoding with the same complexity of the M-BCJR algorithm.
The rest of the paper is organized as follows: In Section 2 and 3, we present the behavior of the M-BCJR algorithm and characterization of its error instants. In Section 4, we explain our idea for improvement this algorithm and we detail our new algorithm Z-MAP. Finally, in Section 5 we present the results of our simulations and conclude with the evaluation of our improvements.
Let us show quickly the principle of M-BCJR. It simply consists to keep the M significant values of alpha in the forward (beta in the backward). The other states are declared dead and set to 0. This implies a reduction of: calculated states (alpha, beta forced to zero), outgoing branches of each state (thus gamma, also forced to zero) because [
and
Our observations of M-BCJR algorithm show that its weakness is error amplification. The nature of M-BCJR algorithm causes bad estimations of alpha due to zero forcing of some states. This causes a frame of errors. At erroneous moments, we observe one or more concurrents with the most probable state in trellis. The unique way to correct this is increasing states number. We call this mechanism Z-MAP algorithm. Z designs go, stop in error instance, back and increase states number. This is similar to “Z” letter.
In M-BCJR decoding, we observe that the correct instants are characterized by an impulse with high alpha value for the probable state (
For example, let us take a trellis with “4” states (
past. Let us take this past “”. In this case, alpha of state “0” is given by :
We suppose that at “”, is forced to zero with M-BCJR mechanism. This event changes the four alphas, , and with different quantities. This phenomena generates a competitor in M-BCJR decoding.
The accumulation of more zero forcing in M-BCJR algorithm is more significant and promotes the concurrent apparition.
These remarks of error possibility give an idea about the prediction of errors moments during decoding:
The presence of the competitors indicates the possibility of an erroneous decision.
The criterion of prediction can be: if the most probable competitor exceeds a threshold “Th”, then, we have to apply Z-MAP algorithm.
Finally, we note that this technique gives only a possibility of error instant.
When we locate the error instant, we have to delete the reason of this degradation. Our Z-MAP algorithm consists to increase the states number around this instant. We
should fix a threshold “Th” for detect the event of error presence and a fixed backward “r”.
The proposed Z-MAP algorithm, consists to:
1) Locate the error moment during the progress of the M-BCJR in a direction. Let us take for example the forward direction, it means, during the calculation of alphas. Let us take “i” this moment.
2) Make a return with “i-r” in the trellis.
3) Increase to, with.
4) This increase should not exceed “2 * r”.
The following example (
Let us suppose that an error is located at moment 5, and take r = 2. We show in second part (
For simulations, we use the following conditions :
Convolutional turbocode: [1, 35/23].
Code rate: 1/3, without puncturing.
Modulation: BPSK.
Interleaver: Pseudo random (S-Random) of length 5120.
Iteration number: 5.
Performance evaluation: Simulations are stopped after 20 erroneous frames.
Complexity: 12 states , reduction with 4 states.
Z-MAP: used in second decoder with threshold Th = 10–2, and r = 3.
The
To show that the ZMAP is an optimal version of M-BCJR, let us plot the average number of live states.
To show improvement in performances,
The results are unexpected. The simulation shows that the performance of the Turbo decoder Z-MAP are very close to those of Full-MAP (note that the proposed algorithm works with the reduced complexity 12.3 only). At 10–3, The loss in performances between Z-MAP and Full-MAP is 0.02 dB.
Simulations show that the Z-MAP gives an improvement in performances of the M-BCJR with low complexity at the price of a little increase in complexity (an average of 0.3). This increase is very weak because it’s related to the error moments only. The idea of Z-MAP algorithm is very important, and it opens a new field of research in digital communications. We believe that there is an important theory which is hiding behind this story.
Finally, we can say that the Z-MAP is an optimal version of the M-BCJR algorithm.