Field Guide · term

Also known as: H-DQPSK, Harmonized DQPSK, P25 Phase 2 waveform, HCPM

H-DQPSK (Harmonized Differential QPSK) is the physical-layer waveform of P25 Phase 2.1 Where Phase 1 puts one 9600 bit/s C4FM channel on a 12.5 kHz carrier (FDMA), Phase 2 packs two independent voice paths onto the same 12.5 kHz carrier by running a faster 6000 symbol/second (12000 bit/s) π/8-shifted DQPSK waveform and time-dividing it into two slots — TDMA.2 Each symbol carries a dibit (2 bits), and the information rides in the phase change from one symbol to the next, so the receiver is a differential decoder rather than a coherent one.

slot 1 · 30 ms slot 2 · 30 ms one 12.5 kHz carrier · 6000 sym/s · 12000 bit/s shared between the two slots π/8-offset DQPSK · dibit = phase step two voice paths per carrier
Phase 2 doubles a carrier's capacity by TDMA — two 30 ms slots share one 6000 sym/s H-DQPSK waveform — instead of Phase 1's single continuous C4FM channel.

Modulation and rate

The Phase 2 downlink (base → subscriber) is a π/8-shifted DQPSK constellation: the four QPSK points sit on a ring, and successive symbols step by odd multiples of π/4 around a fixed π/8 offset. That offset keeps the trajectory off the origin, bounding the envelope so a linear power amplifier stays efficient — the same reasoning behind π/4-DQPSK in TETRA and IS-136, of which this is the π/8 cousin. The uplink is defined as a compatible H-CPM (Harmonized Continuous Phase Modulation) constant-envelope waveform so a battery subscriber can run its PA in saturation; “harmonized” refers to reconciling the two vendor proposals that merged into the standard. A GopherTrunk receiver treats the demodulated downlink as a differential dibit stream and does not model the CPM uplink except as a diagnostic sync target.

At 6000 sym/s with 2 bits per symbol, one carrier delivers 12000 bit/s of coded channel, which the TDMA structure splits into two ~6000 bit/s logical slots — enough for one AMBE+2 vocoder stream plus signalling each. Contrast Phase 1: 4800 sym/s C4FM (4-FSK family) at 9600 bit/s, one voice path per carrier. The net effect is a doubling of channel capacity on the same spectrum, which is the whole point of Phase 2.

Demodulating it

GopherTrunk demodulates H-DQPSK with a single reusable primitive. NewPiOver4DQPSK builds a root-raised-cosine matched filter (roll-off α = 0.20 for Phase 2) feeding a differential slicer; the constructor takes a rotation argument, and passing math.Pi/8 selects the Phase 2 offset (passing math.Pi/4 gives the TETRA/IS-136 variant from the same code). At each symbol the decoder computes arg(s · conj(last)) − rotation, wraps to [−π, π], and picks the nearest of the four quadrants to emit a dibit. A soft-decision path (DecodeBoth) additionally exports the raw complex differential s · conj(last), whose real and imaginary parts are the two on-air bits’ reliabilities — the log-likelihood input the MAC trellis’s soft Viterbi uses to recover ~1.5–2 dB the hard slicer throws away.

Because the modulation is differential, the receiver never has to resolve an absolute carrier phase, which is what makes the four-fold QPSK phase ambiguity harmless: a whole-constellation rotation cancels in the s · conj(last) product. It does, however, mean the dibit labels the slicer assigns can differ from the standard’s by a quadrant transpose, which is why the Phase 2 front end applies a fixed dibit remap before anything downstream reads the bits (see the Phase 2 sync word).

Relevance to SDR

H-DQPSK is the entry point of GopherTrunk’s Phase 2 decoder: internal/dsp/demod/dqpsk.go and piover4_dqpsk.go turn IQ into the 6000 sym/s dibit stream that the sync detector, ISCH decode, and MAC FEC all consume. Getting the rotation (π/8, not π/4) and the RRC roll-off right is what lets a real two-slot signal lock at all; everything from the superframe grid to the vocoder sits on top of this waveform. The spec is TIA-102.BBAC.

Sources

  1. Project 25 — Wikipedia, on P25 Phase 2 and its two-slot TDMA physical layer. 

  2. Phase-shift keying — Wikipedia, on differential and π/4-shifted QPSK constellations. 

See also