Turbo Code Encoding and Decoding with Performance Simulation

Resource Overview

Course design implementing two programs: 1) Turbo code encoding and decoding for 400-bit data frames transmitted over noisy channels, simulating Log-MAP decoding algorithm performance across different iteration counts. 2) Performance evaluation of Turbo codes using MAP decoding algorithm under varying signal-to-noise ratios in noisy channels. Both main programs include comprehensive code comments and can be executed directly via turbo_main.m or LogMAP.m to observe simulation results within moments.

Detailed Documentation

The course design requires implementation of two distinct programs. The first program involves designing 400-bit data frames that utilize Turbo codes for both encoding and decoding when transmitted through noisy channels. This implementation includes simulation of the Log-MAP decoding algorithm's performance characteristics under varying iteration counts, allowing for comparative analysis of decoding efficiency. The second program focuses on evaluating Turbo code performance using the MAP decoding algorithm across different signal-to-noise ratio conditions in noisy channel environments. Both main programs feature detailed code annotations explaining key functions such as the recursive systematic convolutional (RSC) component encoders, interleaver design, and the iterative decoding process. The simulations can be executed directly by running either turbo_main.m or LogMAP.m files, with results becoming available after a brief computation period. The implementation demonstrates practical aspects of Turbo code operation including branch metric calculations, forward/backward recursions for MAP decoding, and extrinsic information exchange between constituent decoders.