Title : 
A real-time embedded software implementation of a turbo encoder and soft output Viterbi algorithm based turbo decoder
         
        
            Author : 
Sabir, M. Farooq ; Tripathi, Rashmi ; Evans, Brian L. ; Bovik, Alan C.
         
        
            Author_Institution : 
Dept. of Electr. & Comput. Eng., Texas Univ., Austin, TX, USA
         
        
        
        
        
        
            Abstract : 
Turbo codes are used for error protection, especially in wireless systems. A turbo encoder consists of two recursive systematic convolutional component encoders connected in parallel and separated by a random interleaver. A turbo decoder, which is iterative, is typically based on either a soft output Viterbi algorithm (SOVA) or a maximum a posteri (MAP) algorithm. MAP is roughly three times more computationally complex than SOVA, but provides 0.5 dB of coding gain. We implement a turbo encoder and SOVA-based turbo decoder in real-time software on a TMS320C6700 digital signal processor (DSP). The contributions of this paper are: (1) first publicly available implementation of a SOVA-based turbo decoder on a C6000 DSP (2) speedup of 162x for the encoder on a C6200 DSP and 11.7x for the decoder on a C6700 DSP over level three C compiler optimization, and (3) dataflow modeling for a turbo channel coding subsystem.
         
        
            Keywords : 
Viterbi decoding; channel coding; computational complexity; concatenated codes; convolutional codes; data flow computing; digital signal processing chips; interleaved codes; iterative decoding; maximum likelihood decoding; program compilers; turbo codes; C compiler optimization; DSP; MAP algorithm; SOVA; SOVA-based turbo decoder; TMS320C6700 digital signal processor; coding gain; computational complexity; dataflow modeling; error protection; iterative decoder; maximum a posterior algorithm; random interleaver; real-time embedded software implementation; real-time software; recursive systematic convolutional component encoders; soft output Viterbi algorithm; turbo channel coding subsystem; turbo codes; turbo decoder; turbo encoder; wireless systems; Convolution; Convolutional codes; Digital signal processing; Embedded software; Iterative algorithms; Iterative decoding; Protection; Signal processing algorithms; Turbo codes; Viterbi algorithm;
         
        
        
        
            Conference_Titel : 
Signals, Systems and Computers, 2002. Conference Record of the Thirty-Sixth Asilomar Conference on
         
        
            Conference_Location : 
Pacific Grove, CA, USA
         
        
        
            Print_ISBN : 
0-7803-7576-9
         
        
        
            DOI : 
10.1109/ACSSC.2002.1196954