Convolutional coding extends the concept of a block code
to allow memory from block to block. Each encoded symbol
is therefore a linear combination of information symbols in the
current block and a selected number of preceding blocks.
In convolutional
coding the encoder operates not on disjoint blocks, but
on a running block of bits held in a shift
register, generating a sequence of higher rate. This procedure is
normally used for error detection and correcting, but the correcting
capabilities are not so easily quantified as for block codes.
Probabilistic decoding, approximating maximum likelihood, is generally used.
GSM uses a
half-rate convolutional coder. The output of the channel coder is
punctured to reduce the data rate.
Other topics in our resources on GSM related to Convolutional Coding include: