期刊名称:International Journal of Soft Computing & Engineering
电子版ISSN:2231-2307
出版年度:2012
卷号:2
期号:5
页码:95-99
出版社:International Journal of Soft Computing & Engineering
摘要:This paper, as the name suggests, shows the working of a forward error correction (FEC) coding technique using convolutional encoding with Viterbi decoding. It can be used by anyone interested in designing or understanding wireless digital communications Technique systems. This paper initially explains the working of a convolutional encoder[1]. The encoded bit stream, is then passed through an additive white Gaussian noise (AWGN) channel, quantized and received at the decoder. Finally, the original data stream is recovered by either a hard decision Viterbi decoder or a soft decision Viterbi decoder. This entire FEC technique is demonstrated, both practically, using Matlab, and theoretically. Also shown are simulation plots, characterizing the performance factors affecting the FEC coding technique. These factors include primarily the noise level as well as the encoder memory size. Convolutional encoding is widely used in modern communication systems. A software tool for simulating the processes of convolutional encoding and decoding is developed and presented in the paper. The convolutional encoders are investigated in respect of the parameter bit error rate. The decoding of convolutional codes is based on Viterbi algorithm[3]. The software tool is developed in MATLAB and Communication Toolbox. In mathematics, computer science, telecommunication, and information theory, error detection and correction has great practical importance in maintaining information (data) integrity across noisy channels and less-than-reliable storage media. A channel code is a broadly used term mostly referring to the forward error correction (FEC) code and bit interleaving in communication and storage where the communication media or storage media is viewed as a channel[6]. The FEC code is used to protect data sent over the channel for storage or retrieval even in the presence of noise (errors) . There exist two main forms of channel codes – convolutional codes and block codes. Convolutional codes are often used to improve the performance of digital radio, mobile phones, satellite links, and Bluetooth implementations. Unlike block encoders, convolutional encoders are not memoryless devices. A convolutional encoder accepts a fixed number of message symbols and produces a fixed number of code symbols, but its computations depend on the current set of input symbols and on some of the previous input symbols[13].