International Journal of Computer & Organization Trends – Volume 5 – February 2014
Implementation of Encoder and Adaptive Viterbi Decoder 1
Manashree Nayak, 2 Praveen Kumar Y.G, 3Dr. M Z Kurian 1 th
4 SEM, M.Tech (Digital Electronics), SSIT, Tumkur 2
M.Tech, Lecturer, Dept. of E&C, SSIT, Tumkur
3
HOD, Dept. of E&C, SSIT, Tumkur, Karnataka
Abstract-----Adaptive viterbi decoder is used for decoding codes of long constraint length, where as viterbi decoder is used for decoding short constraint lengths. In order to minimize power consumption and BER, Radix2 ACS Adaptive Viterbi decoder has been proposed. The area consumption is less in viterbi compared to Adaptive Viterbi decoder. But the power consumption is much less in radix 2 ACS Adaptive Viterbi decoder when compared to other decoders. Keywords: -Bit error rate (BER), Adaptive Viterbi Decoder (AVD), Convolutional Encoder, Radix2 Add Compare Select (ACS).
1. INTRODUCTION Convolutional coding is type of error correcting code in which each m bit information symbol is transformed into n bit symbol where m/n is code rate. Convolutional codes are frequently used to correct errors in noisy channels. They error correcting capability and perform well even on very bad channels. Convolutional coding has been used in communication systems including deep space Communications and wireless communications. Convolutional codes offer an alternative to block codes for transmission over a noisy channel. Convolutional coding can be applied to a Continuous input stream (which cannot be done with block codes), as well as blocks of data. A Convolutional encoder is a Mealy machine, where the output is a function of the current State and the current input. It consists of one or more shift registers and multiple XOR gates. The Stream of information bits flows in to the shift register from one end and is shifted out at the other end. XOR gates are connected to some stages of the shift registers as well as to the current Input to generate the output. There is no theoretical basis for the optimal location of the shift Register stages to be connected to XOR gates. It is based on an empirical approach. The encoder produces three bits of encoded information for each bit of input Information, so it is called a rate 1/3
ISSN: 2249-2593
encoder. A Convolutional encoder is generally characterized in (n, k, and m) format. Viterbi decoding is an optimal algorithm for decoding convolution code in maximal likelihood sense. A Viterbi decoder is an important target for power reduction in many low-power communication devices. It can account for more than one-third of power consumption during baseband processing in current generation cellular telephones. As integrated circuits continue to become smaller and faster, the appeal of higher complexity Viterbi decoders for higher memory order convolution codes increases. Its main drawback is that the decoding complexity grows exponentially with the code length. So, it can be utilized only for relatively short codes. To overcome this problem, the adaptive Viterbi Decoder (AVD) has been proposed. Adaptive viterbi decoder is used for decoding codes of long constraint length. In order to minimize power consumption and BER, Radix2 ACS adaptive viterbi decoder has been proposed. The goal of adaptive Viterbi is to reduce the average computation and path storage required by the Viterbi algorithm. Instead of computing and retaining all possible paths, only those paths which satisfy cost conditions (1.path is less than min cost of all surviving path 2.total number of survivor path is limited to fixed no Nmax) are retained for each received symbol at each state node. Power reduction in AVDs has been achieved by either reducing the number of states (reduced-state sequence decoder), the size of survivor memory, or the number of trellis paths (limited-search trellis) at the expense of increased BER and reduced throughput.
http://www.ijcotjournal.org
Page 40