Viterbi Algorithm for Decoding of Convolutional Codes
Company: 1-CORE Technologies
Convolutional codes are frequently used to correct errors in noisy channels. They have rather good correcting capability and perform well even on very bad channels. Convolutional codes are extensively used in satellite communications.
Although convolutional encoding is a simple procedure, decoding of a convolutional code is much more complex task. Several classes of algorithms exist for this purpose:
There are also soft-output algorithms, like SOVA (Soft Output Viterbi Algorithm) or MAP algorithm, which provide not only a decision, but also an estimate of its reliability. They are used primarily in the decoders of turbo codes and are not discussed in this article.
In this article the Viterbi algorithm is described using the approach suitable both for hardware and software implementations.
Reprinted from SOCcentral.com, your first stop for ASIC, FPGA, EDA, and IP news and design information.