<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE article  PUBLIC "-//NLM//DTD Journal Publishing DTD v3.0 20080202//EN" "http://dtd.nlm.nih.gov/publishing/3.0/journalpublishing3.dtd"><article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" dtd-version="3.0" xml:lang="en" article-type="research article"><front><journal-meta><journal-id journal-id-type="publisher-id">WET</journal-id><journal-title-group><journal-title>Wireless Engineering and Technology</journal-title></journal-title-group><issn pub-type="epub">2152-2294</issn><publisher><publisher-name>Scientific Research Publishing</publisher-name></publisher></journal-meta><article-meta><article-id pub-id-type="doi">10.4236/wet.2011.24031</article-id><article-id pub-id-type="publisher-id">WET-8149</article-id><article-categories><subj-group subj-group-type="heading"><subject>Articles</subject></subj-group><subj-group subj-group-type="Discipline-v2"><subject>Computer Science&amp;Communications</subject></subj-group></article-categories><title-group><article-title>
 
 
  Optimal M-BCJR Turbo Decoding: The Z-MAP Algorithm
 
</article-title></title-group><contrib-group><contrib contrib-type="author" xlink:type="simple"><name name-style="western"><surname>issa</surname><given-names>Ouardi</given-names></name><xref ref-type="corresp" rid="cor1"><sup>*</sup></xref></contrib><contrib contrib-type="author" xlink:type="simple"><name name-style="western"><surname>Ali</surname><given-names>Djebbari</given-names></name></contrib><contrib contrib-type="author" xlink:type="simple"><name name-style="western"><surname>Boubakar</surname><given-names>Seddik Bouazza</given-names></name></contrib></contrib-group><author-notes><corresp id="cor1">* E-mail:<email>Ouardi.aissa@hotmail.fr(IO)</email>;</corresp></author-notes><pub-date pub-type="epub"><day>24</day><month>10</month><year>2011</year></pub-date><volume>02</volume><issue>04</issue><fpage>230</fpage><lpage>234</lpage><history><date date-type="received"><day>August</day>	<month>16th,</month>	<year>2011</year></date><date date-type="rev-recd"><day>September</day>	<month>12th,</month>	<year>2011</year>	</date><date date-type="accepted"><day>October</day>	<month>10th,</month>	<year>2011.</year></date></history><permissions><copyright-statement>&#169; Copyright  2014 by authors and Scientific Research Publishing Inc. </copyright-statement><copyright-year>2014</copyright-year><license><license-p>This work is licensed under the Creative Commons Attribution International License (CC BY). http://creativecommons.org/licenses/by/4.0/</license-p></license></permissions><abstract><p>
 
 
  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.
 
</p></abstract><kwd-group><kwd>MAP-BCJR Algorithm</kwd><kwd> M-BCJR</kwd><kwd> Turbo Decoding</kwd><kwd> Complexity Reduction</kwd><kwd> Error Localisation Criterion</kwd></kwd-group></article-meta></front><body><sec id="s1"><title>1. Introduction</title><p>The M-BCJR [<xref ref-type="bibr" rid="scirp.8149-ref1">1</xref>] is a low complexity version of the leader MAP-BCJR (Maximum A Posteriori) algorithm [<xref ref-type="bibr" rid="scirp.8149-ref2">2</xref>]. It consists to use only M best metrics in trellis. Others states are not evaluated next step, so the complexity is reduced. The M-BCJR finds its applications in turbo equalisation [<xref ref-type="bibr" rid="scirp.8149-ref3">3</xref>] where more variants are proposed [4-6]. It can reduce trellis of detectors to M states, but when M decreases, performances will be degraded [<xref ref-type="bibr" rid="scirp.8149-ref7">7</xref>]. Note that for turbo equalisation, some designs use very low complexities (two “2” states only) without M-BCJR strategy [<xref ref-type="bibr" rid="scirp.8149-ref8">8</xref>].</p><p>For turbo decoding [<xref ref-type="bibr" rid="scirp.8149-ref9">9</xref>], there are no variants of M-BCJR. The performances are not acceptable. The reduction of the recursions to a constant M computation paths through the trellis was not successful [<xref ref-type="bibr" rid="scirp.8149-ref1">1</xref>]. The imperfection of the M-BCJR is in the fact that it presents degraded performances when the complexity is reduced. Other strategy is better than M-BCJR such as T-BCJR algorithm [<xref ref-type="bibr" rid="scirp.8149-ref1">1</xref>] where the states that have values less than threshold T are forced to zero but in this case, number of state is varying.</p><p>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.</p><p>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.</p></sec><sec id="s2"><title>2. M-BCJR Behavior</title><p>Let us show quickly the principle of M-BCJR. It simply consists to keep the M significant values of alpha <img src="2-6801092\9bbb0aa8-fc7d-41ba-952f-049639edb435.jpg" /> in the forward (beta <img src="2-6801092\53344e3d-3f62-4959-83df-38a97a00efcb.jpg" /> 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 [<xref ref-type="bibr" rid="scirp.8149-ref2">2</xref>]:</p><disp-formula id="scirp.8149-formula61357"><label>(1)</label><graphic position="anchor" xlink:href="2-6801092\a36d60f0-91d9-4c6b-8c4b-64ac3102e37e.jpg"  xlink:type="simple"/></disp-formula><p>and</p><disp-formula id="scirp.8149-formula61358"><label>(2)</label><graphic position="anchor" xlink:href="2-6801092\d2c703e2-0b27-486d-b0ca-8db1cc357c59.jpg"  xlink:type="simple"/></disp-formula><p>Our observations of M-BCJR algorithm show that its weakness is error amplification. The nature of M-BCJR algorithm causes bad estimations of alpha <img src="2-6801092\3eefbed4-7b3b-460d-8329-68abd9b86595.jpg" /> 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.</p></sec><sec id="s3"><title>3. Error Moments</title><p>In M-BCJR decoding, we observe that the correct instants are characterized by an impulse with high alpha value for the probable state (<xref ref-type="fig" rid="fig1">Figure 1</xref>). Others alphas have very little levels (probabilities) due to more zeros at previous instants. The presence of error is generally characterized by a presence of one or more competitors in alpha values (<xref ref-type="fig" rid="fig2">Figure 2</xref>). This phenomena can be used as an easy criterion to locate error possibility.</p><p>For example, let us take a trellis with “4” states (<xref ref-type="fig" rid="fig3">Figure 3</xref>) of an encoder which has a strength length equal to “3”. We establish a relation between instant “n” and the</p><p>past. Let us take this past “<img src="2-6801092\b7b48725-d7c0-40f3-8943-cd2725adca66.jpg" />”. In this case, alpha of state “0” is given by :</p><disp-formula id="scirp.8149-formula61359"><label>(3)</label><graphic position="anchor" xlink:href="2-6801092\16b0e4cf-cd56-4e67-9cd5-3b4c15d204bc.jpg"  xlink:type="simple"/></disp-formula><p>We suppose that at “<img src="2-6801092\25d54fe4-93c8-4c1b-8bd1-64a317321f55.jpg" />”, <img src="2-6801092\021226c9-ed76-48c9-b985-b7ce9a439ab0.jpg" />is forced to zero with M-BCJR mechanism. This event changes the four alphas<img src="2-6801092\416bbafc-e84b-47d6-9417-1cec46495c20.jpg" />, <img src="2-6801092\60d571b8-8136-403b-b7ff-837ccce8d07c.jpg" />, <img src="2-6801092\b3fd7793-f796-4746-91cd-f9c07fe3de11.jpg" />and <img src="2-6801092\e9b4e02a-fa9f-4f0b-8932-225e946b7278.jpg" /> with different quantities. This phenomena generates a competitor in M-BCJR decoding.</p><p><xref ref-type="fig" rid="fig4">Figure 4</xref> shows an example of the difference <img src="2-6801092\c4011b6e-7ff0-4732-9f9c-09b1365e5a85.jpg" /> between real alpha values of full MAP-BCJR and those of M-BCJR algorithm for trellis of <xref ref-type="fig" rid="fig3">Figure 3</xref>. We use SNR (E<sub>b</sub>/N<sub>0</sub>) equals to 0 dB. The <img src="2-6801092\d3ee27b0-53ea-42df-9dad-9c77bb068f09.jpg" /> is forced to zero. It affects next near 15 alphas for all states with different amplitudes. Theses fluctuations are the reason of concurrent apparition.</p><p>The accumulation of more zero forcing in M-BCJR algorithm is more significant and promotes the concurrent apparition.</p><p>These remarks of error possibility give an idea about the prediction of errors moments during decoding:</p><p>The presence of the competitors indicates the possibility of an erroneous decision.</p><p>The criterion of prediction can be: if the most probable competitor exceeds a threshold “Th”, then, we have to apply Z-MAP algorithm.</p><p>Finally, we note that this technique gives only a possibility of error instant.</p></sec><sec id="s4"><title>4. The Proposed Algorithm: Z-MAP</title><p>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</p><p>should fix a threshold “Th” for detect the event of error presence and a fixed backward “r”.</p><p>The proposed Z-MAP algorithm, consists to:</p><p>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.</p><p>2) Make a return with “i-r” in the trellis.</p><p>3) Increase <img src="2-6801092\988727f9-7a52-4786-a918-8636d3f1410a.jpg" />to<img src="2-6801092\7c968baf-3bc8-4556-933f-f2e0e80930fe.jpg" />, with<img src="2-6801092\df8b3bd8-2787-4325-aeac-836985971fb9.jpg" />.</p><p>4) This increase should not exceed “2 *&#160;r”.</p><p>The following example (<xref ref-type="fig" rid="fig5">Figure 5</xref>(a)) shows the surviving states during the execution of the 2-BCJR of a trellis with 4 states.</p><p>Let us suppose that an error is located at moment 5, and take r = 2. We show in second part (<xref ref-type="fig" rid="fig5">Figure 5</xref>(b)) the procedure of the Z-MAP.</p></sec><sec id="s5"><title>5. Z-MAP Applied to Turbo Decoding</title><sec id="s5_1"><title>5.1. Simulation Parameters</title><p>For simulations, we use the following conditions :</p><p>Convolutional turbocode: [1, 35/23].</p><p>Code rate: 1/3, without puncturing.</p><p>Modulation: BPSK.</p><p>Interleaver: Pseudo random (S-Random) of length 5120.</p><p>Iteration number: 5.</p><p>Performance evaluation: Simulations are stopped after 20 erroneous frames.</p><p>Complexity: 12 states , reduction with 4 states.</p><p>Z-MAP: used in second decoder with threshold Th = 10<sup>–2</sup>, and r = 3.</p></sec><sec id="s5_2"><title>5.2. Performances of ZMAP Turbo Decoding</title><p>The <xref ref-type="fig" rid="fig6">Figure 6</xref> shows the performance of the turbo decoder ZMAP with 12 states. The reduction is 4 states.</p><p>To show that the ZMAP is an optimal version of M-BCJR, let us plot the average number of live states.</p><p><xref ref-type="fig" rid="fig7">Figure 7</xref> shows this important parameter per iteration. We can see that we keep the same low complexity of M-BCJR at some SNR (near 0.6 dB) and after little iterations (5 iterations). At the 5<sup>th</sup> iteration, the ZMAP uses 12.3 states. So, the average cost of complexity is 0.3 states only.</p><p>To show improvement in performances, <xref ref-type="fig" rid="fig8">Figure 8</xref> gives a comparison between the Full MAP-BCJR turbo decoder (optimal), turbo decoder M-BCJR (degraded performance) and the turbo decoder of the proposed algorithm (Z-MAP).</p><p>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<sup>–</sup><sup>3</sup>, The loss in performances between Z-MAP and Full-MAP is 0.02 dB.</p></sec></sec><sec id="s6"><title>6. Conclusions</title><p>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.</p><p>Finally, we can say that the Z-MAP is an optimal version of the M-BCJR algorithm.</p></sec><sec id="s7"><title>REFERENCES</title></sec></body><back><ref-list><title>References</title><ref id="scirp.8149-ref1"><label>1</label><mixed-citation publication-type="other" xlink:type="simple">V. Franz and J. B. Anderson, “Concatenated Decoding with a Reduced-Search BCJR Algorithm,” IEEE Journal on Selected Areas in Communication, Vol. 16, No. 2, 1998, pp. 186-195.</mixed-citation></ref><ref id="scirp.8149-ref2"><label>2</label><mixed-citation publication-type="other" xlink:type="simple"> 
L. R. Bahl, J. Cocke, F. Jelinek and R. Raviv, “Optimal Decoding of Linear Codes for Minimizing Symbol Error Rate”, IEEE Transactions on Information Theory, Vol. 20, No. 2, 1974, pp. 284-287. doi:10.1109/TIT.1974.1055186</mixed-citation></ref><ref id="scirp.8149-ref3"><label>3</label><mixed-citation publication-type="other" xlink:type="simple"> 
G. Bauch, H. Khorram and J. Hagenauer, “Iterative Equalization and Decoding in Mobile Communications Systems,” Proceedings of the 2nd European Personal Mobile Communications Conference, 1997, pp. 307-312. </mixed-citation></ref><ref id="scirp.8149-ref4"><label>4</label><mixed-citation publication-type="other" xlink:type="simple"> 
J. B. Anderson and A. Prlja, “Turbo Equalization and an M-BCJR Algorithm for Strongly Narrowband Intersymbol Interference,” 2010 International Symposium on Information Theory and its Applications (ISITA), Taichung, 2010, pp. 261-266. </mixed-citation></ref><ref id="scirp.8149-ref5"><label>5</label><mixed-citation publication-type="other" xlink:type="simple"> 
C. Fragouli, N. Seshadri and W. Turin, “On the Reduced Trellis Equalization Using the M-BCJR Algorithm,” IEEE Annual Conference on Information Sciences and Systems (CISS 2000), Boston, 2000, pp. 28-33. </mixed-citation></ref><ref id="scirp.8149-ref6"><label>6</label><mixed-citation publication-type="other" xlink:type="simple"> 
P. Kumar, R. M. Banakar and B. Shankaranand, “M- BCJR Based Turbo Equalizer,” Proceedings of the Conference on Information Technology, 2004, pp. 376-386. </mixed-citation></ref><ref id="scirp.8149-ref7"><label>7</label><mixed-citation publication-type="other" xlink:type="simple"> 
K. R. Narayanan, R. V. Tamma, E. Kurtas and X. Yang, “Performance Limits of Turbo Equalization Using M-BCJR Algorithm,” Proceedings of the 3rd International Symposium on Turbo Codes, 2003, pp. 2031-2035. </mixed-citation></ref><ref id="scirp.8149-ref8"><label>8</label><mixed-citation publication-type="other" xlink:type="simple"> 
O. Aissa, A. Djebbari and B. S. Bouazza, “Partial Turbo Detection with Reduced Complexity,” International Jour- nal of Electronics, Vol. 98, No. 6, 2011, pp. 825-831. 
doi:10.1080/00207217.2011.567040</mixed-citation></ref><ref id="scirp.8149-ref9"><label>9</label><mixed-citation publication-type="other" xlink:type="simple"> 
C. Berrou, A. Glavieux and P. Thitimajshima, “Near Shannon Limit Error-Correcting and Decoding: Turbo-Codes (1),” IEEE International Conference on Communications, Vol. 2, 1993, pp. 1064-1070.</mixed-citation></ref></ref-list></back></article>