commpy.channelcoding.viterbi_decode

viterbi_decode(coded_bits, trellis, tb_depth=None, decoding_type='hard')

Decodes a stream of convolutionally encoded bits using the Viterbi Algorithm

Parameters :

coded_bits : 1D ndarray

Stream of convolutionally encoded bits which are to be decoded.

generator_matrix : 2D ndarray of ints

Generator matrix G(D) of the convolutional code using which the input bits are to be decoded.

M : 1D ndarray of ints

Number of memory elements per input of the convolutional encoder.

tb_length : int

Traceback depth (Typically set to 5*(M+1)).

decoding_type : str {‘hard’, ‘soft’, ‘unquantized’}

The type of decoding to be used.

Returns :

decoded_bits : 1D ndarray

Decoded bit stream.

References

[R2]Todd K. Moon. Error Correction Coding: Mathematical Methods and Algorithms. John Wiley and Sons, 2005.

Previous topic

commpy.channelcoding.conv_encode

Next topic

commpy.channelcoding.turbo_encode