Currently, the Viterbi algorithm is used to be implemented with either hard or soft decision decoder, which is stated hereinafter.
All the major wireless communication systems in use today use convolution channel codes. The Viterbi algorithm is the dominant method of decoding the convolution codes. The Viterbi algorithm is implemented using either hard or soft decision decoder. The soft-decision decoder is the recommended scheme to use with the Viterbi decoder because it provides a coding gain over hard decision Viterbi decoder. The Viterbi algorithm is a maximum likelihood rule which is optimum for an AWGN channel. For hard decision Viterbi decoder, the samples corresponding to a single bit of a codeword are quantized to two levels zero and one, a decision is made as whether each transmitted bit in a codeword is zero or one. The coding gain of the soft decision decoder with respect to hard decision increases to a little bit more than 2 dB for higher signal-to-noise ratio (SNR). The soft-decision Viterbi decoder is implemented using soft decision demodulation. The path metrics in the Viterbi algorithm are calculated by weighting the square Hamming distance between the soft decision and the reference value. A four-level discrete symmetric channel model is used for the soft decision decoder. The receiver assigns one of four values to each received signal. The underlined zero and one indicate the reception of a strong signal, while the non-underlined pair denotes the reception of a weaker signal. The four-level soft-decision Viterbi decoder is almost exactly as shown for the hard-decision case, the only difference being the increased number of path metrics.