After gaining a theoretical understanding of the carrier recovery sub-system of a digital receiver, you will simulate the sub-system in MATLAB and implement it on the DSP. The sub-system described is specifically tailored to a non-modulated carrier. A complete implementation will require modifications to the design presented.

The phase-locked loop (PLL) is a
critical component in coherent communications receivers that
is responsible for locking on to the carrier of a received
modulated signal. Ideally, the transmitted carrier frequency
is known exactly and we need only to know its phase to
demodulate correctly. However, due to imperfections at the
transmitter, the actual carrier frequency may be slightly
different from the expected frequency. For example, in the
QPSK transmitter of Digital
Transmitter: Introduction to Quadrature Phase-Shift
Keying, if the digital carrier frequency is

This difference between the expected and actual carrier frequencies can be modeled as a time-varying phase. Provided that the frequency mismatch is small relative to the carrier frequency, the feedback control of an appropriately calibrated PLL can track this time-varying phase, thereby locking on to both the correct frequency and the correct phase.

**Numerically controlled oscillator**

In a complete coherent receiver implementation, carrier recovery is required since the receiver typically does not know the exact phase and frequency of the transmitted carrier. In an analog system this recovery is often implemented with a voltage-controlled oscillator (VCO) that allows for precise adjustment of the carrier frequency based on the output of a phase-detecting circuit.

In our digital application, this adjustment is performed with a numerically-controlled oscillator (NCO) (see Figure 1). A simple scheme for implementing an NCO is based on the following re-expression of the carrier sinusoid:

**Phase detector**

The goal of the PLL is to maintain a demodulating sine and
cosine that match the incoming carrier. Suppose

**Loop filter**

The estimated phase mismatch estimate is fed to the NCO via a loop filter, often a simple low-pass filter. For this exercise you can use a one-tap IIR filter,

It is suggested that you start by choosing

Comments:"Real-Time DSP with MATLAB"