Field Guide · algorithm

Also known as: convolutional code

A convolutional code is a forward-error-correction code in which each output depends on a sliding window of recent input bits, set by the constraint length.1

in out1 out2
A convolutional code outputs parity bits computed from the current and recent input bits via a shift register.

How it works

The encoder adds structured redundancy; the receiver uses the Viterbi algorithm to find the most likely original sequence. Puncturing can raise the code rate by omitting some output bits.

Relevance to SDR

Convolutional coding (K=5) protects M17 and appears in other digital radio links to recover from bit errors.

Sources

  1. Convolutional code — Wikipedia, for the sliding-window encoder, constraint length, and puncturing. 

See also