**The Viterbi Algorithm Applications in Detection and Equalization**

**Abstract**
The purpose of this report was to study how the Viterbi algorithm can be applied to detection of continuous-phase modulated(CPM) signals and how it can be integrated into equalization. This was accomplished by studying relevant cases in the literature and by implementing two different simulation with MATLAB program.

**Introduction**

The Viterbi algorithm(VA) was first proposed by Andrew J. Viterbi in 1967 as a solution to the decoding of convolutional codes. The VA is a fundamental signal processing technique widely used in modern digital communication systems. Typical application examples are maximum likelihood sequence estimation(MLSE) in the presence of intersymbol interference(ISI) and decoding of convolutional codes. In many communication systems the VA is used for decoding or demodulation in concatenated schemes.

The Viterbi algorithm can be described as an algorithm that finds the most likely path through a trellis diagram, given a set of observations. The trellis diagram is a representation of a finite set of states from a Finite States Machine. Each node in the diagram represents a state and each edge a possible transition between two states at consecutive discrete time intervals.

CPM codes carry data in the continuous coded phase of a sinusoidal carrier. They belongs to an important class of constant envelope schemes and have found applications in many digital satellite and mobile radio channels. These may be classified as medium power medium bandwidth codes.

**Equalization**

Viterbi decoding is an optimal solution for detecting sequences from a channel with intersymbol interfere(ISI). But if the interference is severe, i.e. the time spread is high, it does not perform well enough. Therefore the need for equalizing the signal before attempting to decode it. As the channel is typically time-variant, the equalization needs to be adaptive. A first choice can be to provide the equalizer with its own decision device, and feed these decisions back to the equalizer for tap coefficients updating, making equalizer and Viterbi detection "independent". However, the pre-decoding decisions are likely to be fairly unreliable, due to the low signal-to-noise ratio; we can then think of employing the Viterbi decoder's decisions to update the equalizer's tap weights. Viterbi decisions are more reliable and will then provide an appropriate feedback to the adaptive equalizer, if the latter is linear. To get around with the delay introduced by the Viterbi decoder, an analogous delay can be introduced before creating the error signal.

Our interest focused on the characteristics of Viterbi equalizers used in GSM systems. There is no universal specification in GSM standard, so the deployment is left to the developers; most of the results are hence not available to the public. However there have been some proposals and related studies, mainly from universities, that can be effective. Here we present two of them, adding a MATLAB simulation that we developed to illustrate the principle.