Also known as: continuous-phase modulation, CPM
Continuous-phase modulation (CPM) is a family of digital modulations in which the carrier phase is constrained to vary continuously, never jumping between symbols.1 That single rule gives every CPM signal a constant envelope — its amplitude never changes — and a compact spectrum, because abrupt phase discontinuities are exactly what create wide spectral sidelobes. Well-known members include minimum-shift keying and its Gaussian-filtered refinement GMSK.
How it works
A CPM signal is defined by an accumulated phase: the modulator integrates a data-driven frequency deviation, so the transmitted phase is the running sum of every past symbol. Because integration is inherently continuous, the phase cannot jump. Three parameters characterise a CPM scheme:
- the modulation index h, which sets how far the phase advances per symbol (h = 0.5 gives MSK);
- the pulse shape, which spreads each symbol’s phase contribution over one interval (rectangular) or several (partial-response, as in GMSK’s Gaussian pulse);
- the alphabet size, binary or multi-level.
Constant envelope is the payoff: a CPM signal can be driven through a saturated, non-linear power amplifier at high efficiency without spectral regrowth, unlike amplitude- or phase-jump schemes that need linear amplifiers and back-off. The cost is receiver complexity. Optimal CPM detection tracks the accumulated phase through a trellis with a Viterbi-style sequence estimator, because the phase memory couples successive symbols. Simpler, slightly sub-optimal receivers use a frequency discriminator and accept a small penalty.
Variants
The CPM family is a continuum. Full-response schemes (one symbol per pulse) include MSK and general CPFSK; partial-response schemes spread each pulse over several symbols to narrow the spectrum further, at the price of controlled intersymbol interference that the trellis detector unwinds. GMSK is the best-known partial-response member. Multi-h CPM cycles the modulation index between symbols to improve distance properties. The 4FSK/C4FM used in land-mobile radio is continuous-phase FSK and so sits within this same family.
Relevance to SDR
CPM matters to software radio precisely because of its efficiency: any system that must squeeze the most range and battery life out of a cheap non-linear amplifier tends toward CPM. GSM (GMSK), AIS (GMSK), aircraft and satellite telemetry, and the C4FM land-mobile modes are all continuous-phase. On a waterfall these signals are narrow and flat-topped, with none of the amplitude blinking of ASK. Choosing the right demodulator — coherent trellis versus non-coherent discriminator — is the main practical decision.
GopherTrunk lives squarely in this family: the P25 C4FM, DMR, and NXDN modes it decodes are continuous-phase 4FSK, and its AIS path uses a GMSK demodulator. CPM is therefore not just background here but the theory underpinning most of what GopherTrunk actually receives.
Sources
-
Continuous phase modulation — Wikipedia, for the CPM definition, the modulation-index/pulse-shape parameters, and full- versus partial-response schemes. ↩