University of Wollongong Research Online University of Wollongong Thesis Collection 1954-2016 University of Wollongong Thesis Collections 2004 Study of turbo codes across space time spreading channel I. Raad SECTE, University of Wollongong, ibrahim@uow.edu.au Recommended Citation Raad, Ibrahim Samir, Study of turbo codes across space time spreading channel, School of Electrical, M.Eng thesis, Computer and Telecommunications Engineering, University of Wollongong, 2004. http://ro.uow.edu.au/theses/269 Research Online is the open access institutional repository for the University of Wollongong. For further information contact the UOW Library: research-pubs@uow.edu.au
Study of Turbo Codes Across Space Time Spreading Channel A thesis submitted in fulfilment of the requirements for the award of the degree Masters of Engineering Research from The University of Wollongong by Ibrahim Samir Raad Bachelor of Engineering School of Electrical, Computer and Telecommunications Engineering 2004
Abstract This thesis deals with an application of turbo codes across Space Time Spreading Channel. This is done by undertaking a study into the extent to which these error correction codes can reduce the bit error rate across the space time spreading channel. Both the turbo codes and space time channel have been developed in Matlab s Simulink. The thesis starts with an introduction to turbo codes which is presented on the basis of classical turbo codes introduced by Berrou et al in 1993 (Berrou et al., 1993). This is illustrated by some examples of their performance across the Additive White Gaussian Noise Channel (AWGN). Then a detailed description of the Space Time Spreading (STS) channel and the Universal Mobile Telecommunications System (UMTS) turbo codes. Using the UMTS turbo codes this thesis produces simulation results showing to what extent they reduce the bit error rate of the STS channel. A description of the system in Simulink and Matlab is presented. The simulation results show that UMTS turbo codes applied on the top of the STS channel can improve the bit error rate performance by approximately 5dB. This is done at the expense of increased complexity and reduced effective data rate. ii
Statement of Originality This is to certify that the work described in this thesis is entirely my own, except where due reference is made in the text. No work in this thesis has been submitted for a degree to any other university or institution. Signed Ibrahim Samir Raad 7 March,2004 iii
Acknowledgments Firstly, I would like to thank my supervisor Mr. Peter James Vial for his support and help during my thesis year for Masters of Engineering Research. Without his help and tireless effort, this project could not have been completed. Secondly, I would like to thank Associate Professor Tad Wysocki for his help in this project. Finally, I would like to thank my family for their support and patience during the year. iv
Contents 1 Introduction 1 1.1 Objectives of Thesis........................ 1 1.2 Outline of Thesis.......................... 2 2 Convolutional Coding 4 2.1 Introduction............................. 4 2.2 Convolutional Encoding...................... 4 2.3 Conclusion.............................. 7 3 Turbo Codes 8 3.1 Introduction............................. 8 3.2 Turbo Coding............................ 9 3.2.1 Turbo Encoding....................... 9 3.2.2 Turbo Decoding....................... 9 3.3 Factors that effect Turbo Code Performance........... 12 3.3.1 Turbo Interleaver/Permuter................ 13 3.3.2 Constituent Encoder.................... 14 3.3.3 Puncturing......................... 15 3.3.4 Decoding Algorithm.................... 15 3.4 Decoding Algorithms........................ 15 3.4.1 Introduction......................... 15 3.4.2 The Soft Output Viterbi Algorithm (SOVA)....... 15 3.4.3 Map Algorithm....................... 19 3.4.4 The Max-Log-Map Algorithm............... 20 3.4.5 Log-Map Algorithm..................... 23 3.4.6 Extrinsic and Intrinsic Information............ 25 v
CONTENTS vi 3.4.7 Soft-Input/Soft-Output (SISO) Decoding algorithm... 25 3.5 Conclusion.............................. 27 4 A study of the Classical Turbo Codes across AWGN channel 28 4.1 Introduction............................. 28 4.2 Influence of the Size of input frame (N).............. 29 4.3 Influence of the number of Iterations............... 29 4.4 Influence of Code Rate (r)..................... 29 4.5 Influence of the Code generator (g)................ 38 4.6 Comparison of SOVA and Log-Map decoding algorithms.... 39 4.7 Conclusion.............................. 39 5 Turbo Codes Across Space Time Spreading Channel 42 5.1 Introduction............................. 42 5.2 Space Time Spreading (STS).................... 42 5.3 Description of Validated Space Time Spreading Channel..... 44 5.3.1 The Simulink Model.................... 45 5.4 Description of implementations of the UMTS Turbo Codes... 47 5.4.1 UMTS Turbo Code..................... 47 5.4.2 UMTS Decoder Architecture................ 48 5.4.3 Validation Results of UMTS turbo codes across AWGN channel........................... 50 5.5 Implemented STS turbo codes in Simulink............ 50 5.6 Results of Turbo Codes over Space Time Spreading....... 55 5.7 Conclusion.............................. 63 6 Conclusion 64 6.1 Contributions............................ 67 6.2 Future Work............................. 67 A Classical Turbo Codes tables N=100 and N=400 72 B Classical Turbo Codes tables N=1024 and N=2000 76 C Classical Turbo Codes tables for different generator matrix (g) 80 D Classical Turbo Codes- graphs of results 82
CONTENTS vii E Classical Turbo Codes- comparing SOVA and Log-Map decoding algorithms 93 F Classical Turbo Codes- comparing constraint length K = 3 and K = 4 95
List of Figures 1.1 Model for combination of turbo code and STS........... 2 1.2 An example of the components that can be included in this study. 2 2.1 Systematic half-rate, constraint-length two convolutional encoder CC(2,1,2). (Rooyen et al., 2000).................. 5 2.2 State transition diagram of the CC(2,1,2) systematic code, where broken lines indicate transitions due to an input one, while continuous lines correspond to input zero (Hanzo et al., 2002).... 6 3.1 Turbo encoder schematic (Rooyen et al., 2000).......... 9 3.2 Turbo decoder schematic (Rooyen et al., 2000).......... 10 3.3 Turbo Decoder block diagram (Rooyen et al., 2000)....... 11 3.4 Turbo code design space (Berens et al., 1999)........... 13 3.5 A summary of the key operations in the MAP algorithm (Hanzo et al., 2002).............................. 21 3.6 Soft-input/Soft-output decoder for a rate 1/2 RSC code (Hanzo et al., 2002).............................. 26 4.1 Comparison of N = 100, 400, 1024 and 2000 for bit error rate (BER) versus E b with g = [7; 5] octal, rate = 1, number of iteration is 5................................ 2 30 4.2 Comparison of N = 100, 400, 1024 and 2000 for bit error rate (BER) versus E b with g = [7; 5] octal, rate = 1, number of iteration is 5................................ 3 31 viii
LIST OF FIGURES ix 4.3 Bit Error Rate (BER) versus E b with N = 400, with g = [7; 5] octal, rate = 1 2................................ 32 4.4 Bit Error Rate (BER) versus E b with N = 400, with g = [7; 5] octal, rate = 1 3................................ 33 4.5 Bit Error Rate (BER) versus E b with N = 100, with g = [7; 5] octal, rate = 1 2................................ 34 4.6 Bit Error Rate (BER) versus E b with N = 100, with g = [7; 5] octal, rate = 1 3................................ 35 4.7 Bit Error Rate(BER) versus E b with N = 2000, with g = [7; 5] octal, rate = 1 2................................ 36 4.8 Bit Error Rate(BER) versus E b with N = 2000, with g = [7; 5] octal, rate = 1 3................................ 37 4.9 Comparison of r = 1 2 and r = 1 3 with 5 iterations, N=400, g = [7; 5] octal, Log-Map decoding..................... 38 4.10 Comparison of SOVA and Log-Map decoding algorithms for N = 400 with r = 1 2 and r = 1 3...................... 40 5.1 A(2,1) STS scheme (Hochwald et al., 2001)............ 43 5.2 Block diagram of the operation of the STS model in Simulink (Vial et al., 2003).......................... 45 5.3 Plot of m = 1 and m = 2 for STS channel............. 46 5.4 Block diagram of the UMTS turbo encoder (Valenti and Sun, 2001)................................. 48 5.5 Block diagram of the UMTS turbo decoder (Valenti and Sun, 2001)................................. 49 5.6 UMTS turbo codes,ber, N=100.................. 51 5.7 UMTS turbo codes,ber, N=400.................. 52 5.8 UMTS turbo codes,ber, N=1024................. 53 5.9 UMTS turbo codes,ber, N=2000................. 54 5.10 UMTS turbo codes,fer, N=100.................. 55 5.11 UMTS turbo codes,fer, N=400.................. 56 5.12 UMTS turbo codes,fer, N=1024................. 57
LIST OF FIGURES x 5.13 UMTS turbo codes,fer, N=2000................. 58 5.14 Input Turbo encoder......................... 58 5.15 STS channel section......................... 59 5.16 Output Turbo decoder........................ 59 5.17 UMTS turbo codes across STS channel with m = 1, This compares uncoded BER with the 12 iterations............. 60 5.18 UMTS turbo codes across STS channel with m = 2, This compares uncoded BER with the 12 iterations............. 61 5.19 UMTS turbo codes across STS channel with m = 1 and m = 2, This compares uncoded BER with the 12 iterations........ 62 D.1 Bit Error Rate versus (BER) E b with N = 1024, with g = [7; 5] octal, rate = 1 2.......................... 83 D.2 Frame Error Rate versus (FER) E b with N = 1024, with g = [7; 5] octal, rate = 1 2.......................... 84 D.3 Bit Error Rate versus (BER) E b with N = 1024, with g = [7; 5] octal, rate = 1 3.......................... 85 D.4 Frame Error Rate versus (FER) E b with N = 1024, with g = [7; 5] octal, rate = 1 3.......................... 86 D.5 Frame Error Rate versus (FER) E b with N = 2000, with g = [7; 5] octal, rate = 1 2.......................... 87 D.6 Frame Error Rate versus (FER) E b with N = 2000, with g = [7; 5] octal, rate = 1 3.......................... 88 D.7 Frame Error Rate (FER) versus E b with N = 100, with g = [7; 5] octal, rate = 1 2.......................... 89 D.8 Frame Error Rate (FER) versus E b with N = 100, with g = [7; 5] octal, rate = 1 3.......................... 90 D.9 Frame Error Rate versus (FER) E b with N = 400, with g = [7; 5] octal, rate = 1 2.......................... 91 D.10 Frame Error Rate versus (FER) E b with N = 400, with g = [7; 5] octal, rate = 1 3.......................... 92
List of Tables A.1 1 iteration, N=100, rate= 1, Log-Map decoding, g = [7; 5] 2 octal.. 72 A.2 3 iterations, N=100, rate= 1, Log-Map decoding, g = [7; 5] 2 octal. 73 A.3 5 iterations, N=100, rate= 1, Log-Map decoding, g = [7; 5] 2 octal. 73 A.4 8 iterations, N=100, rate= 1, Log-Map decoding, g = [7; 5] 2 octal. 73 A.5 1 iteration, N=100, rate= 1, Log-Map decoding, g = [7; 5] 3 octal.. 73 A.6 3 iterations, N=100, rate= 1, Log-Map decoding, g = [7; 5] 3 octal. 73 A.7 5 iterations, N=100, rate= 1, Log-Map decoding, g = [7; 5] 3 octal. 73 A.8 8 iterations, N=100, rate= 1, Log-Map decoding, g = [7; 5] 3 octal. 73 A.9 1 iteration, N=400, rate= 1, Log-Map decoding, g = [7, 5] 2 octal... 74 A.10 3 iterations, N=400, rate= 1, Log-Map decoding, g = [7, 5] 2 octal. 74 A.11 5 iterations, N=400, rate= 1, Log-Map decoding, g = [7, 5] 2 octal. 74 A.12 8 iterations, N=400, rate= 1, Log-Map decoding, g = [7, 5] 2 octal. 74 A.13 1 iteration, N=400, rate= 1, Log-Map decoding, g = [7, 5] 3 octal.. 74 A.14 3 iterations, N=400, rate= 1, Log-Map decoding, g = [7, 5] 3 octal. 74 A.15 5 iterations, N=400, rate= 1, Log-Map decoding, g = [7, 5] 3 octal. 74 A.16 8 iterations, N=400, rate= 1, Log-Map decoding, g = [7, 5] 3 octal. 75 B.1 1 iteration, N=1024, rate= 1, Log-Map decoding, g = [7, 5] 2 octal. 76 B.2 3 iterations, N=1024, rate= 1, Log-Map decoding, g = [7, 5] 2 octal. 77 B.3 5 iterations, N=1024, rate= 1, Log-Map decoding, g = [7, 5] 2 octal. 77 B.4 8 iterations, N=1024, rate= 1, Log-Map decoding, g = [7, 5] 2 octal. 77 B.5 1 iteration, N=1024, rate= 1, Log-Map decoding, g = [7, 5] 3 octal. 77 B.6 3 iterations, N=1024, rate= 1, Log-Map decoding, g = [7, 5] 3 octal. 77 B.7 5 iterations, N=1024, rate= 1, Log-Map decoding, g = [7, 5] 3 octal. 77 xi
LIST OF TABLES xii B.8 8 iterations, N=1024, rate= 1, Log-Map decoding, g = [7, 5] 3 octal. 77 B.9 1 iteration, N=2000, rate= 1, Log-Map decoding, g = [7, 5] 2 octal. 78 B.10 3 iterations, N=2000, rate= 1, Log-Map decoding, g = [7, 5] 2 octal. 78 B.11 5 iterations, N=2000, rate= 1, Log-Map decoding, g = [7, 5] 2 octal. 78 B.12 8 iterations, N=2000, rate= 1, Log-Map decoding, g = [7, 5] 2 octal. 78 B.13 1 iteration, N=2000, rate= 1, Log-Map decoding, g = [7, 5] 3 octal. 78 B.14 3 iterations, N=2000, rate= 1, Log-Map decoding, g = [7, 5] 3 octal. 78 B.15 5 iterations, N=2000, rate= 1, Log-Map decoding, g = [7, 5] 3 octal. 78 B.16 8 iterations, N=2000, rate= 1, Log-Map decoding, g = [7, 5] 3 octal. 79 C.1 5 iterations, N=400, rate= 1, Log-Map decoding, g = [7, 5] 2 octal. 80 C.2 5 iterations, N=400, rate= 1, Log-Map decoding, g = [7, 5] 3 octal. 81 C.3 5 iterations, N=400, rate= 1, Log-Map decoding, g = [17, 15] 2 octal 81 C.4 5 iterations, N=400, rate= 1, Log-Map decoding, g = [17, 15] 3 octal 81 E.1 5 iterations, N=400, rate= 1, Log-Map decoding, g = [7, 5] 2 octal. 93 E.2 5 iterations, N=400, rate= 1, Log-Map decoding, g = [7, 5] 3 octal. 94 E.3 5 iterations, N=400, rate= 1, SOVA decoding, g = [7, 5] 2 octal... 94 E.4 5 iterations, N=400, rate= 1, SOVA decoding, g = [7, 5] 3 octal... 94 F.1 5 iterations, N=400, rate= 1, Log-Map decoding, g = [7, 5] 2 octal. 95 F.2 5 iterations, N=400, rate= 1, Log-Map decoding, g = [7, 5] 3 octal. 96 F.3 5 iterations, N=400, rate= 1, Log-Map decoding, g = [17, 15] 2 octal 96 F.4 5 iterations, N=400, rate= 1, Log-Map decoding, g = [17, 15] 3 octal 96
List of Abbreviations ANSI APP ARIB AWGN BER BPSK CCs CS CWTS FEC FER GSM IMT LLR LPF MAP PCCC PS PSD QPSK RSC SISO SNR SOVA STS American National Standard Institute. A Posteriori Probability. Association of Radio Industries and Business. Additive White Gaussian Noise. Bit Error Rate. Binary Phase Shift Keying. Convolutional Codes. Circuit Switch. Chinese Wireless Telecommunications Standard. Forward Error Correction. Frame Error Rate. Global System For Mobile Communications. International Mobile Telecommunications. Log Likelihood Ratio. Low Pass Filter. Maximum-A-Posteriori. Parallel Concatenated Convolutional Code Packet Switch. Power Spectral Density. Quadrature Phase Shift Keying. Recursive Systematic Convolutional. Soft-Input Soft-Output. Signal to Noise Ratio. Soft-Output Viterbi Algorithm. Space Time Spreading. xiii
List of Abbreviations xiv TC TTA TTC VA UMTS WCDMA 3GPP Turbo Codes. Telecommunications Technology Association. Telecommunications Technology Committee. Viterbi Algorithm Universal Mobile Telecommunications System. Wide-band Code Division Multiple Access. Third Generation Partnership Project.