Continuous phase modulation (CPM) is a method for modulation of data commonly used in wireless modems. In contrast to other coherent digital phase modulation techniques where the carrier phase abruptly resets to zero at the start of every symbol (e.g. M-PSK), with CPM the carrier phase is modulated in a continuous manner. For instance, with QPSK the carrier instantaneously jumps from a sine to a cosine (i.e. a 90 degree phase shift) whenever one of the two message bits of the current symbol differs from the two message bits of the previous symbol. This discontinuity requires a relatively large percentage of the power to occur outside of the intended band (e.g., high fractional out-of-band power), leading to poor spectral efficiency. Furthermore, CPM is typically implemented as a constant-envelope waveform, i.e., the transmitted carrier power is constant. Therefore, CPM is attractive because the phase continuity yields high spectral efficiency, and the constant envelope yields excellent power efficiency. The primary drawback is the high implementation complexity required for an optimal receiver.
Each symbol is modulated by gradually changing the phase of the carrier from the starting value to the final value, over the symbol duration. The modulation and demodulation of CPM is complicated by the fact that the initial phase of each symbol is determined by the cumulative total phase of all previous transmitted symbols, which is known as the phase memory. Therefore, the optimal receiver cannot make decisions on any isolated symbol without taking the entire sequence of transmitted symbols into account. This requires a Maximum Likelihood Sequence Estimator (MLSE), which is efficiently implemented using the Viterbi algorithm.
Minimum-shift keying (MSK) is another name for CPM with an excess bandwidth of 1/2 and a linear phase trajectory. Although this linear phase trajectory is continuous, it is not smooth since the derivative of the phase is not continuous. The spectral efficiency of CPM can be further improved by using a smooth phase trajectory. This is typically accomplished by filtering the phase trajectory prior to modulation, commonly using a Raised Cosine or a Gaussian filter. The raised cosine filter has zero crossings offset by exactly one symbol time, and so it can yield a full-response CPM waveform that prevents Intersymbol Interference (ISI).