gr_costas_loop_cc.h File Reference

#include <gr_sync_block.h>
#include <stdexcept>
#include <fstream>

Include dependency graph for gr_costas_loop_cc.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  gr_costas_loop_cc
 Carrier tracking PLL for QPSK

input: complex; output: complex
The Costas loop can have two output streams: stream 1 is the baseband I and Q; stream 2 is the normalized frequency of the loop. More...


Typedefs

typedef boost::shared_ptr
< gr_costas_loop_cc
gr_costas_loop_cc_sptr

Functions

gr_costas_loop_cc_sptr gr_make_costas_loop_cc (float alpha, float beta, float max_freq, float min_freq, int order) throw (std::invalid_argument)
 A Costas loop carrier recovery module.


Typedef Documentation


Function Documentation

gr_costas_loop_cc_sptr gr_make_costas_loop_cc ( float  alpha,
float  beta,
float  max_freq,
float  min_freq,
int  order 
) throw (std::invalid_argument)

A Costas loop carrier recovery module.

The Costas loop locks to the center frequency of a signal and downconverts it to baseband. The second (order=2) order loop is used for BPSK where the real part of the output signal is the baseband BPSK signal and the imaginary part is the error signal. When order=4, it can be used for quadrature modulations where both I and Q (real and imaginary) are outputted.

More details can be found online:

J. Feigin, "Practical Costas loop design: Designing a simple and inexpensive BPSK Costas loop carrier recovery circuit," RF signal processing, pp. 20-36, 2002.

http://rfdesign.com/images/archive/0102Feigin20.pdf

Parameters:
alpha the loop gain used for phase adjustment
beta the loop gain for frequency adjustments
max_freq the maximum frequency deviation (normalized frequency) the loop can handle
min_freq the minimum frequency deviation (normalized frequency) the loop can handle
order the loop order, either 2 or 4


Generated on Thu Mar 27 14:40:56 2008 for GNU Radio 3.1.1 by  doxygen 1.5.5