Abstract
M.Ing.
In practical transmission or storage systems, the convolutional encoding and Viterbi
decoding scheme is widely used to protect the data from substitution errors. Two
independent insertion/deletion/substitution (IDS) error correcting designs, working on the
convolutional encoder and the Viterbi decoder respectively, are shown in this thesis.
The Levenshtein distance has previously been postulated to be a suitable branch comparison
metric for the Viterbi algorithm on channels with not only substitution errors, but also
insertion/deletion errors. However, to a large extent, this hypothesis has still to be
investigated. In the first coding scheme, a modified Viterbi algorithm based on the
Levenshtein distance metric is used as the decoding algorithm. Our experiments give
evidence that the modified Viterbi algorithm with the Levenshtein distance metric is
suitable as an applicable decoding algorithm for IDS channels.
In the second coding scheme, a new type of convolutional code called the path-pruned
convolutional code is introduced on the encoder side. By periodically deleting branches in a
high rate convolutional code trellis diagram to create a specific insertion/deletion error
correcting block codeword structure in the encoded sequence, we can obtain an encoding
system to protect against insertion, deletion and substitution errors at the same time.
Moreover, the path-pruned convolutional code is an ideal code to use for unequal error
protection. Therefore, we also present an application of the rate-compatible path-pruned
convolutional codes over IDS channels.