Posts

Showing posts from March, 2020

Understanding VITERBI DECODING and CONVOLUTIONAL CODES

Image
The Algorithms for  Viterbi Decoding The Viterbi decoder itself is the primary focus of this blog. The single most important concept to aid in understanding the Viterbi algorithm is the trellis diagram. The figure below shows the trellis diagram for our example rate 1/2 K = 3 convolutional encoder, for a 15-bit message. Trellis diagram for rate 1/2 K = 3 convolutional encoder, for a 15-bit message The four possible states of the encoder are depicted as four rows of horizontal dots. There is one column of four dots for the initial state of the encoder and one for each time instant during the message. For a 15-bit message with two encoder memory flushing bits, there are 17 time instants in addition to t = 0, which represents the initial condition of the encoder. The solid lines connecting dots in the diagram represent state transitions when the input bit is a one. The dotted lines represent state transitions when the input bit is a zero. Notice the correspondence betw