. This blog post shows an example of how a decision-directed Costas loop carrier recovery method works for digital I/Q demodulator using Nutaq’s Model-Based Design Kit
(MBDK)  and the Perseus 601x
Decision-directed Costas loop
A Costas loop is basically a special use of a phase lock loop (PLL) for estimating carrier frequency and phase errors and for disciplining the receiver’s local oscillator. At the heart of the Costas loop is the quadrature decision-directed phase detector and loop filter circuits, as shown in Figure 1.
Figure 1: Quadrature decision-directed Costas loop
The loop filter is usually a proportional-integral (PI) filter providing both frequency and phase tracking of the Costas loop. Due to the limited scope of this blog post, I'll leave PI filter design and tuning problems to the readers. In this post, assume that we want to demodulate 4-QAM symbols having –1 or +1 values per I/Q rail. It turns out that a multiplier-less phase detector can be implemented in System Generator, as illustrated in Figure 2.
Figure 2: Multiplier-less phase detector
Combining the phase detector and loop filter together makes the decision-directed Costas loop, as shown in Figure 3. In Figure 3, averaging the phase detector output over several samples is necessary to remove additive white Gaussian noise (AWGN) caused by the channel before feeding it to the PI loop filter. The limiter block is used to limit filtered phase error and to automatically re-initialize the loop filter if the PI controller is unstable due to bad tuning.
Figure 3: Decision-directed Costa loop circuit
Figure 4shows a simple 4-QAM digital communication chain for testing the carrier recovery loop. The analog-digital converter (ADC) module of the ADAC250 , clocked at 128 MHz, provides a modulated 4-QAM signal centered at 8 MHz. The intermediate frequency (IF) mixer at the receiver was tuned to 7.995 MHz in order to generate a 5-kHz frequency offset from the transmitter IF frequency. This leads to a normalized IF frequency of 7.995/64 = 0.124923705. Input delay is also introduced to the receiver IF mixer in order to generate some phase error. 128 MSPS I/Q multiplexed 4-QAM symbols from the IF mixer output is then decimated to 4 MSPS per I/Q rail prior to the decision-directed Costas loop processing.
Figure 4: Decision-directed Costas loop in a simple 4-QAM digital receiver
Simulation results of the model and Costas loop outputs are shown in Figure 5. After the Costas loop locks to the transmit IF carrier, the 4-QAM demodulator outputs the expected 4-QAM symbols at I and Q rails. The lock time of the Costas loop depends on how the PI loop filter is tuned.
Figure 5: Simulation of the carrier recovery using decision-directed Costas loop
Figure 6: IQ demodulator output with carrier recover circuit enabled
Figure 7: Demodulated 4-QAM symbols before and after Costas loop enable
Preliminary results obtained via ChipScope are shown in Figure 6(purple signal is Q rail; dark blue signal is the loop filter phase accumulation output) and Figure 7. Figure 7compares the constellation of the demodulated 4-QAM symbols before and after enabling the Costas loop. You can clearly see that there is a significant improvement to the demodulated 4-QAM constellation with aid of the carrier recovery loop.
The use of carrier recovery circuit in digital I/Q demodulator is to reduce small amounts of carrier frequency errors and phase offset in coherent receivers. This blog post showed an example of the decision-directed Costas loop method works within a simple digital 4-QAM receiver using Nutaq's MBDK in order to help readers understand the basics of carrier recovery in the digital I/Q demodulators.