ISSN: 2278-08 Vol. Iue 6, Augut - 202 The Turbo Code and an Efficient Decoder Implementation uing MAP Algorithm for Software Defined Radio Mr Rupeh Singh (Principal), Dr. Nidhi Singh (Aociate Profeor) SriGanganagar Engineering College,SriGanganagar. Abtract: After the initial interet caued by the appearance of turbo code in 993. pecial attention on the implementation ha led to their adoption in ome of the mot important 3G tandard. However. future broadband ytem (with data rate up to 55 Mbp) till require a better peed/ latency/ power performance than thoe found in current implementation. Several tep toward an efficient implementation have reulted in turbo decoding architecture that reach 0 Mb/ with reaonable power and latency. The poibility of uing turbo code in real ytem ha triggered the interet of tandardization bodie. A major landmar wa the adoption of turbo code a one of the IMT-2000 channel coding tandard for third generation (3G) mobile communication ytem nown a UMTS. It wa followed by the approval of turbo code a the major coding cheme in the interactive channel for digital video broadcating (DVB-RCS) and in the CCSDS tandard for telemetry in pace reearch miion. We aimed at optimizing turbo coding implementation a defined in 3G tandard toward pecification that met broadband wirele communication. the original MAP algorithm i of great complexity, o it i impractical to implement it in hardware. So the Log-MAP and Max- Log-MAP algorithm were propoed later to reduce the arithmetic complexity while till maintaining good decoding performance. Due to it excellent error correction performance, many communication tandard have choen Turbo code a the Forward Error Correction (FEC) code, uch a CDMA-2000, W-CDMA, DVB-RCS, HSDPA, UMTS, IEEE 802.6e WiMax, and 3GPP LTE. The CDMA2000 tandard provide mixed voice and data ervice. A parent rate-/5 turbo code coniting of two identical, eight tate, parallel, rate-/3 contituent recurive ytematic convolutional (RSC) encoder i employed. Thi paper provide a decription of the turbo code ued by the UMTS third-generation cellular tandard, a tandardized by the Third-Generation Partnerhip Project (3GPP), and propoe an efficient decoder uitable for inertion into oftware-defined radio or for ue in computer imulation. Becaue the decoder i implemented in oftware, rather than hardware, inglepreciion floating-point arithmetic i aumed and a variable number of decoder iteration i not only poible but deirable. The well-nown log-map decoding algorithm with detailed analyi i propoed and the imulation reult are hown. ) Introduction: Due to their near Shannon-capacity [] performance, turbo code have received a coniderable amount of attention ince their introduction [2]. They are particularly attractive for cellular communication ytem and have been included in the pecification for both the WCDMA (UMTS) and CDMA2000 third-generation cellular tandard. At thi time, the reaon for the uperior performance of turbo code [3,4] and the aociated decoding algorithm [5,6] are, for the mot part, undertood. The purpoe of thi paper i to explain the phenomenal performance of turbo code and to derive the decoding algorithm. Alo the purpoe i to clearly explain an efficient decoding algorithm uitable for immediate implementation in a oftware radio receiver. In order to provide a concrete example, the dicuion i limited to the turbo code ued by the Univeral Mobile Telecommunication Sytem (UMTS) pecification, a tandardized by the Third-
ISSN: 2278-08 Vol. Iue 6, Augut - 202 Generation Partnerhip Project (3GPP) [7]. The decoding algorithm i baed on the log-map algorithm [8], although many part of the algorithm have been implified without any lo in performance. Some critical implementation iue are dicued, in particular the decoding iteration. Simple, but effective, olution for MAP Algorithm are propoed and illutrated through computer imulation. In the decription of the algorithm, we have aumed that the reader ha a woring nowledge of the Viterbi algorithm [9]. Information on the Viterbi algorithm can be found in a tutorial paper by Forney [0]. 2) The UMTS Turbo Encoder and Decoder: A hown in Fig., the UMTS turbo encoder i compoed of two contraint length 4 recurive ytematic convolutional (RSC) encoder concatenated in parallel [2]. The feedforward generator i 5 and the feedbac generator i 3, both in octal. The number of data bit at the input of the turbo encoder i K. Data i encoded by the firt (i.e., upper) encoder in it natural order and by the econd (i.e., lower) encoder after being interleaved. At firt, the two witche are in the up poition. The interleaver i a matrix with 5, 0, or 20 row and between 8 and 256 column (incluive), depending on the ize of the input word. Data i read into the interleaver in a rowwie fahion (with the firt data bit placed in the upper-left poition of the matrix). Intrarow permutation are performed on each row of the matrix in accordance with a rather complicated algorithm, which i fully decribed in the pecification []. Fig. The data bit are tranmitted together with the parity bit generated by the two encoder (the ytematic output of the lower encoder i not ued and thu not hown in the diagram). Thu, the overall code rate of the encoder i rate /3, not including the tail bit. Z i the parity output from the upper (uninterleaved) encoder, and Z i the parity output from the lower (interleaved) encoder. After the K data bit have been encoded, the trellie of both encoder are forced bac to the all-zero tate by the proper election of tail bit. Unlie conventional convolutional code, which can alway be terminated with a tail of zero, the tail bit of an RSC will de- pend on the tate of the encoder. Becaue the tate of the two RSC encoder will uually be different after the data ha been encoded, the tail for each encoder 2
ISSN: 2278-08 Vol. Iue 6, Augut - 202 mut be eparately calculated and tranmitted. The tail bit are generated for each encoder by throwing the two witche into the down poition, thu cauing the input to the two encoder to be indicated by the dotted line. Decoder: For each time tic, decoding i done by calculating the L-value of a + bit. If it i poitive, the deciion i in favor of a +. Calculation of the L-value or L(u) i quite a complex proce. The main equation ued to calculate the L-value i thi. e ( ). ( ). c L u L( u ) L ( u ) Lc. y log () ( ). ( ). u e From thi computation if L(u) i poitive, then u i equal to +. The firt term, i the a- priori value from Decoder 2. Thi i the L-value of the a-priori probability of the bit in quetion. At firt, the decoder ha no idea what it i. A good gue i to aume it i 0.5. The econd term, i computed by multiplying the ytematic information with Lc. Thi value i the channel L-value and give an indication of channel SNR. The third big term with all ind of quiggly item i the a-poteriori probability. Thi number i calculated for each trelli egment. Remember that we can only have one reult for a trelli ection, a + or -. The L(u) calculation tell u what that number i, The big equation can be written imply a um of three piece of information. L-apriori Thi i our initial gue about a + bit in firt iteration L-Channel - Thi i related to channel SNR and ytematic bit and i equal to Le the computed information in each iteration i called the a- poteriori L-value. The L-channel value doe not change from iteration to iteration ince i it given by. Neither the Lc nor the ytematic bit change from iteration to iteration, So let called it K. The only two item that change are the a-priori and a-poteriori L-value. A-priori value goe in, it i ued to compute the new a-poteriori probability and then it can be ued to compute L(u) or i paed to the next decoder. Although in the example we compute L(u) each time, during actual decoding thi i not done. Only a-poteriori metric i computed and decoder and eep doing thi either a fixed number of time or until it converge. L-poteriori i alo called Extrinic information. A branch metric i the correlation of the received ignal with it trelli value. In a nuthell, if the received value are the ame ign a the coded bit, then the correlation will be high. For each decoder, there are full tranition branch metric which incorporate, the ytematic and the parity bit and partial branch metric which incorporate only the parity bit. 3
ISSN: 2278-08 Vol. Iue 6, Augut - 202 Fif.2 Iteration cycle of MAP Turbo Decoding. Computing full branch metric: The full branch metric i given by the equation q e,, p exp. L ( c ). c Lc.. y. c exp Lc.. y. c 2 2 i 2 2 (2) The data required i Lc, the ytematic value, parity value and trelli coded value. We compute thi for each branch of the trelli for all even time tic. 2. Compute partial branch metric: Thee value are baed only on parity bit. We will ue thee to compute the total extrinic L- value. The equation for calculating the partial metric i given by: 0 q i, p i exp Lc.. y. c (3) 2 i 2 3. Calculation of forward metric Encoding alway tart in tate. So we aume that ignal can only be in tate at time =0. The initial value of the forward metric i et at.0. The other three tate are given value of 0.0. Meaning, thee are not poible tate. Thereafter the forward metric are computed recurively for each tate (not branche). The equation i: 4
ISSN: 2278-08 Vol. Iue 6, Augut - 202 ( ) ( ) ( ) (4) 4. Computing bacward tate metric: ( ) ( ) (5) 2 ( ) (, ) We aume that the ignal will end in tate. (Tail bit are added to force it end in tate.) The ending tate i alway, o it get a value of.0 jut a the forward tate metric. The ret of the three tate at = 7 are given a bacward tate value of zero. 5. Computing Extrinic L-value: Now we will compute the Extrinic L-value. Which are given by the product of the all three metric. e ( ) ( ).. ( ) (6) To compute the L-value we need the ratio of thee number for the + and - branche. For that we add the top four branch metric and divide by the um of the bottom four branch metric to atify the following equation: log u u ( ). ( ). ( ). ( ). e e Tae the natural log of the ratio. Thi i the extrinic value output for thi iteration. Thee value after interleaving go to Decoder 2 and become it a-priori probabilitie. Normally the decoder at thi point would top becaue it ha done it job of computing the extrinic value. But we will compute the L-value of the bit to how you how the bit deciion can be made at any iteration. 3) SIMULATION SET UP: The oftware pacage and MATLAB are ued to accomplih complicated calculation. The imulation model are implemented uing the oftware pacage MATLAB. The reult of the mathematical analyi and computer imulation are diplayed 5
ISSN: 2278-08 Vol. Iue 6, Augut - 202 uing graph in which the bit error rate i plotted veru ignal-to-noie ratio (E b /N 0 ) in decibel. Table are alo ued to diplay reult. The BER performance of the Simplified-Log-MAP algorithm i compared to that of the MAP, Log-MAP, and Max- Log-MAP algorithm. The imulation reult are for a Turbo code with /2 code rate, N = 024, m = 3, and the feedbac and feedforward generator polynomial equal to 5oct and 7oct repectively. Three iteration were ued for the imulation and the reult in fig. 2 are for QPSK. 4) SIMULATION RESULTS & DISCUSSION The BER performance of the Simplified-Log-MAP algorithm i compared to that of the MAP, Log-MAP, and Max- Log-MAP algorithm. The imulation reult are for a Turbo code with /2 code rate, N = 024, m = 3, and the feedbac and feedforward generator polynomial equal to I 5oct and I 7oct repectively. Three iteration were ued for the imulation. A we can ee from the reult, the Log-MAP decoding algorithm ha imilar performance to the MAP algorithm. The performance lo for the MAX-Log-MAP compared to the MAP algorithm i from 0.2 db. The SNR requirement for a given BER i higher at larger contellation ize, therefore, the approximation of the logarithm ha more ignificant effect on the BER performance of the MAX-Log-MAP algorithm. Table: Complexity Comparion obetween different MAP Algorithm 5) CONCLUSIONS: The Simplified Log-MAP ha a negligible performance degradation compared to the MAP algorithm for QPSK contellation, while the performance lo i approximately 0. db. It can be concluded from the above reult that Simplified Log-MAP algorithm together with the new hardware implementation are an appropriate choice for implementing Turbo decoder in practice without any ignificant lo in performance. 6
ISSN: 2278-08 Vol. Iue 6, Augut - 202 Fig. 2 BER performance of MAP-baed decoding algorithm Thi paper introduce the next generation 3G technology and many communication tandard have choen Turbo code a the Forward Error Correction (FEC) code, uch a CDMA-2000, W-CDMA, DVB-RCS, HSDPA, UMTS, IEEE 802.6e WiMax, and 3GPP LTE. The paper have aeed the performance of 3G TC. The performance of 3G TC by varying different component of encoder and decoder in the form of BER v. Eb/No curve i hown. 6) FUTURE WORK: Diverity technique can be applied to further improve the performance of the code even when there i evere ISI preent. The ue of pace-time coding cheme, which i baed on the idea of the uing of multiple tranmitting and receiving antenna can be tudied, while uing turbo code a the channel coding cheme. Channel equalization technique can alo aid to improve the performance of the ytem and it incluion in the ytem will be a good idea. Finally, crowded contellation cheme uch a the trelli coded modulation i alo an intereting area to be explored uing turbo code. 7) REFERENCES: [] SHANNON, C. E.: A mathematical theory of communication, Bell Syt. Tech. J., July and October 948, 27, pp.379 423 and 623 656. [2] C. Berrou, A. Glavieux, and P. Thitimajhima, Near Shannon limit error-correcting coding and decoding: Turbo-code(), Proc.IEEE Int. Conf. on Commun. (Geneva, Switzerland), pp. 064 070, May 993. [3] S. Benedetto and G. Montori, Unveiling turbo code: Some reult on parallel concatenated coding cheme, IEEE Tran. Inform.Theory, Vol. 42, pp. 409 428, Mar. 996. 7
ISSN: 2278-08 Vol. Iue 6, Augut - 202 [4] L. C. Perez, J. Segher, and D. J. Cotello, A ditance pectrum interpretation of turbo code, IEEE Tran. Inform. Theory, Vol. 42, pp. 698 708, Nov. 996. [5] D. Divalar, S. Dolinar, and F. Pollara, Iterative turbo decoder analyi baed on denity evolution, IEEE J. Select. Area Commun., Vol. 9, pp. 89 907, May 200. [6] S. ten Brin, Convergence behavior of iteratively decoded parallel concatenated code, IEEE Tran. Commun., Vol. 49, pp. 727 737, Oct. 200. [7] European Telecommunication Standard Intitute, Univeral mobile telecommunication ytem (UMTS): Multiplexing and channel coding (FDD), 3GPP TS 25.22 verion 3.4.0, pp. 4 20, Sept. 23, 2000. [8] P. Roberton, P. Hoeher, and E. Villebrun, Optimal and ub-optimal maximum a poteriori algorithm uitable for turbo decoding, European Tran. on Telecommun., Vol. 8, pp. 9 25, Mar./Apr. 997. [9] A. J. Viterbi, Error bound for convolutional code and an aymptotically optimum decoding Algorithm, IEEE Tran. Inform. Theory, Vol. 3, pp. 260 269, Apr. 967. [0] G. D. Forney, The Viterbi algorithm, Proc. IEEE, Vol. 6, pp.268 278, Mar. 973. [] Third Generation Partnerhip Project 2 (3Gpp2), Phyical Layer Standard for cdma2000 Spread Spectrum Sytem, Releae C, 3GPP2 C.S0002-C, verion.0, 2002, pp. 5-22. [2] A. G. Amat, G. Montori, S. Benedetto, D. Vogrig, A. Neviani, A. Geroa, An analog turbo decoder for the UMTS tandard, International Sympoium on Information Theory, ISIT, 2004, pp. 296. [3] F. Marx, J. Farah, Improved turbo-coded UMTS ytem with Unequal Error Protection of compreed video equence tranmitted over frequency-elective channel, International Conference on Communication, vol. 5, June 2004, pp. 309-3095. 8