GNU Radio 3.7.1 C++ API
|
This block makes hard decisions about the received symbols (using a constellation object) and also fine tunes phase synchronization. More...
#include <constellation_receiver_cb.h>
Public Types | |
typedef boost::shared_ptr < constellation_receiver_cb > | sptr |
Public Member Functions | |
virtual void | phase_error_tracking (float phase_error)=0 |
Static Public Member Functions | |
static sptr | make (constellation_sptr constellation, float loop_bw, float fmin, float fmax) |
Constructor to synchronize incoming M-PSK symbols. |
This block makes hard decisions about the received symbols (using a constellation object) and also fine tunes phase synchronization.
The phase and frequency synchronization are based on a Costas loop that finds the error of the incoming signal point compared to its nearest constellation point. The frequency and phase of the NCO are updated according to this error.
static sptr gr::digital::constellation_receiver_cb::make | ( | constellation_sptr | constellation, |
float | loop_bw, | ||
float | fmin, | ||
float | fmax | ||
) | [static] |
Constructor to synchronize incoming M-PSK symbols.
constellation | constellation of points for generic modulation |
loop_bw | Loop bandwidth of the Costas Loop (~ 2pi/100) |
fmin | minimum normalized frequency value the loop can achieve |
fmax | maximum normalized frequency value the loop can achieve |
The constructor chooses which phase detector and decision maker to use in the work loop based on the value of M.
virtual void gr::digital::constellation_receiver_cb::phase_error_tracking | ( | float | phase_error | ) | [pure virtual] |