∿ LEARN DSPFrom signal to HF transceiver
Part roadmap

Digital modulation and synchronization

Go from bits to symbols and recover the data when there are timing and frequency errors.

Goal

Go from bits to symbols and recover the data when there are timing and frequency errors.

Prerequisites: Parts 04–06, 10–11. We complete carrier recovery after we study loops in Part 13.

Future lessons

  1. ASK/FSK/PSK: data transmission by a change of amplitude, frequency or phase; BPSK/QPSK/QAM, the signal constellation, bit rate and symbol rate.
  2. Raised-cosine and root-raised-cosine pulse shaping, the matched filter and intersymbol interference (ISI).
  3. Recovery of the symbol decision times and of the reference carrier; the Costas loop.
  4. FSK/MSK and how the architecture relates to FT8/WSPR, without a mandatory implementation of the full protocol.

Lab plan

  • Build BPSK/QPSK with known timing and frequency; plot the constellation and the eye diagram.
  • Add a timing error, a frequency error and white Gaussian noise one at a time; measure the bit error rate (BER).
  • After Part 13, connect the synchronization loops and compare acquisition with the steady state.
  • Compare the spectra of pulse shaping and of FSK/MSK.

We do the experiments in Python with NumPy, SciPy and Matplotlib. We keep the parameters, units and plots. The base models use float64 and complex128; we add bit-depth limits in separate experiments.

Completion criteria

  • I can tell the difference between the tasks of the matched filter, symbol synchronization and carrier recovery.
  • I measure the BER from known bits and count the acquisition time separately.

Result for the main project

A teaching digital modem with controlled channel distortions.