SPUC  3.0
Public Types | Public Member Functions | Public Attributes | List of all members
SPUC::qpsk_variable< Numeric > Class Template Reference

A QPSK receiver that can operate over a range of non-integer sampling rates. More...

#include <qpsk_variable.h>

Collaboration diagram for SPUC::qpsk_variable< Numeric >:
Collaboration graph
[legend]

Public Types

typedef fundtype< Numeric >::ftype CNumeric
 

Public Member Functions

Numeric I_data ()
 
Numeric Q_data ()
 
complex< CNumericdata ()
 
Numeric carrier_loop ()
 
Numeric symbol_loop ()
 
bool symclk (void)
 
Numeric agc_out (void)
 
 qpsk_variable (void)
 
void clock (complex< CNumeric > adc)
 

Public Attributes

a_d ADC
 
fir< complex< CNumeric >, Numeric > rcv_sqrt_rc
 
lagrange< complex< float_type > > interp
 
delay< complex< CNumeric > > final_baseband_delay
 
delay< complex< CNumeric > > hard_decision_delay
 
delay< complex< CNumeric > > timing_disc_delay
 
sum_and_dump< CNumericsymbol_lock_detect
 
fir< complex< CNumeric >, Numeric > fmf
 
agc sigma_delta
 
loop_filter< Numeric > afc_loop_filter
 
loop_filter< Numeric > carrier_loop_filter
 
loop_filter< Numeric > symbol_loop_filter
 
qpsk_discriminators discriminators
 
Numeric agc_bit
 
Numeric carrier_loop_out
 
Numeric symbol_loop_out
 
bool symbol_clk
 
bool symbol_clk_pls
 
bool sample_clk
 
bool symbol_x2_clk
 
bool symbol_x2_clk_pls
 
vco< Numeric > carrier__nco
 
cordic< CNumericcordic_mult
 
resampler< complex< CNumeric > > rate_change
 
long bpsk
 
long resampler_round
 
int sym_dec
 
Numeric carrier_error
 
Numeric symbol_nco_out
 
complex< CNumerichard_decision_prev
 
complex< CNumericfinal_baseband_prev
 
complex< long > adc_out
 
complex< CNumericbaseband
 
complex< CNumericdecimated
 
complex< CNumericdecimated_baseband
 
complex< CNumericresampled
 
complex< CNumericcarrier_in
 
complex< CNumericcarrier_nco_out
 
complex< CNumericmf_in
 
complex< CNumericmf_out
 
complex< CNumericfmf_out
 
complex< CNumericfinal_baseband
 
Numeric timing_error
 
Numeric nda_timing_error
 
Numeric sym_lock
 
Numeric symbol_locked
 
Numeric sym_lock_thres
 
Numeric cp_afc
 
Numeric quad_afc
 
bool afc
 
complex< CNumerichard_decision
 
Numeric qpsk_bpsk_reg
 
Numeric lock_rate_reg
 
Numeric invert_q_reg
 

Detailed Description

template<class Numeric>
class SPUC::qpsk_variable< Numeric >

A QPSK receiver that can operate over a range of non-integer sampling rates.

,Symbol timing, frequency control and carrier phase locked loops are included. Also contains root-raised cosine matched filter, A/D and agc function.

Author
Tony Kirke

Member Typedef Documentation

template<class Numeric>
typedef fundtype<Numeric>::ftype SPUC::qpsk_variable< Numeric >::CNumeric

Constructor & Destructor Documentation

template<class Numeric>
SPUC::qpsk_variable< Numeric >::qpsk_variable ( void  )
inline

Member Function Documentation

template<class Numeric>
Numeric SPUC::qpsk_variable< Numeric >::agc_out ( void  )
inline
template<class Numeric>
Numeric SPUC::qpsk_variable< Numeric >::carrier_loop ( )
inline
template<class Numeric>
void SPUC::qpsk_variable< Numeric >::clock ( complex< CNumeric adc)
inline
template<class Numeric>
complex<CNumeric> SPUC::qpsk_variable< Numeric >::data ( )
inline
template<class Numeric>
Numeric SPUC::qpsk_variable< Numeric >::I_data ( )
inline
template<class Numeric>
Numeric SPUC::qpsk_variable< Numeric >::Q_data ( )
inline
template<class Numeric>
Numeric SPUC::qpsk_variable< Numeric >::symbol_loop ( )
inline
template<class Numeric>
bool SPUC::qpsk_variable< Numeric >::symclk ( void  )
inline

Member Data Documentation

template<class Numeric>
a_d SPUC::qpsk_variable< Numeric >::ADC
template<class Numeric>
complex<long> SPUC::qpsk_variable< Numeric >::adc_out
template<class Numeric>
bool SPUC::qpsk_variable< Numeric >::afc
template<class Numeric>
loop_filter<Numeric> SPUC::qpsk_variable< Numeric >::afc_loop_filter
template<class Numeric>
Numeric SPUC::qpsk_variable< Numeric >::agc_bit
template<class Numeric>
complex<CNumeric> SPUC::qpsk_variable< Numeric >::baseband
template<class Numeric>
long SPUC::qpsk_variable< Numeric >::bpsk
template<class Numeric>
vco<Numeric> SPUC::qpsk_variable< Numeric >::carrier__nco
template<class Numeric>
Numeric SPUC::qpsk_variable< Numeric >::carrier_error
template<class Numeric>
complex<CNumeric> SPUC::qpsk_variable< Numeric >::carrier_in
template<class Numeric>
loop_filter<Numeric> SPUC::qpsk_variable< Numeric >::carrier_loop_filter
template<class Numeric>
Numeric SPUC::qpsk_variable< Numeric >::carrier_loop_out
template<class Numeric>
complex<CNumeric> SPUC::qpsk_variable< Numeric >::carrier_nco_out
template<class Numeric>
cordic<CNumeric> SPUC::qpsk_variable< Numeric >::cordic_mult
template<class Numeric>
Numeric SPUC::qpsk_variable< Numeric >::cp_afc
template<class Numeric>
complex<CNumeric> SPUC::qpsk_variable< Numeric >::decimated
template<class Numeric>
complex<CNumeric> SPUC::qpsk_variable< Numeric >::decimated_baseband
template<class Numeric>
qpsk_discriminators SPUC::qpsk_variable< Numeric >::discriminators
template<class Numeric>
complex<CNumeric> SPUC::qpsk_variable< Numeric >::final_baseband
template<class Numeric>
delay< complex<CNumeric> > SPUC::qpsk_variable< Numeric >::final_baseband_delay
template<class Numeric>
complex<CNumeric> SPUC::qpsk_variable< Numeric >::final_baseband_prev
template<class Numeric>
fir< complex<CNumeric>, Numeric > SPUC::qpsk_variable< Numeric >::fmf
template<class Numeric>
complex<CNumeric> SPUC::qpsk_variable< Numeric >::fmf_out
template<class Numeric>
complex<CNumeric> SPUC::qpsk_variable< Numeric >::hard_decision
template<class Numeric>
delay< complex<CNumeric> > SPUC::qpsk_variable< Numeric >::hard_decision_delay
template<class Numeric>
complex<CNumeric> SPUC::qpsk_variable< Numeric >::hard_decision_prev
template<class Numeric>
lagrange<complex<float_type> > SPUC::qpsk_variable< Numeric >::interp
template<class Numeric>
Numeric SPUC::qpsk_variable< Numeric >::invert_q_reg
template<class Numeric>
Numeric SPUC::qpsk_variable< Numeric >::lock_rate_reg
template<class Numeric>
complex<CNumeric> SPUC::qpsk_variable< Numeric >::mf_in
template<class Numeric>
complex<CNumeric> SPUC::qpsk_variable< Numeric >::mf_out
template<class Numeric>
Numeric SPUC::qpsk_variable< Numeric >::nda_timing_error
template<class Numeric>
Numeric SPUC::qpsk_variable< Numeric >::qpsk_bpsk_reg
template<class Numeric>
Numeric SPUC::qpsk_variable< Numeric >::quad_afc
template<class Numeric>
resampler<complex<CNumeric> > SPUC::qpsk_variable< Numeric >::rate_change
template<class Numeric>
fir< complex<CNumeric>, Numeric > SPUC::qpsk_variable< Numeric >::rcv_sqrt_rc
template<class Numeric>
complex<CNumeric> SPUC::qpsk_variable< Numeric >::resampled
template<class Numeric>
long SPUC::qpsk_variable< Numeric >::resampler_round
template<class Numeric>
bool SPUC::qpsk_variable< Numeric >::sample_clk
template<class Numeric>
agc SPUC::qpsk_variable< Numeric >::sigma_delta
template<class Numeric>
int SPUC::qpsk_variable< Numeric >::sym_dec
template<class Numeric>
Numeric SPUC::qpsk_variable< Numeric >::sym_lock
template<class Numeric>
Numeric SPUC::qpsk_variable< Numeric >::sym_lock_thres
template<class Numeric>
bool SPUC::qpsk_variable< Numeric >::symbol_clk
template<class Numeric>
bool SPUC::qpsk_variable< Numeric >::symbol_clk_pls
template<class Numeric>
sum_and_dump<CNumeric> SPUC::qpsk_variable< Numeric >::symbol_lock_detect
template<class Numeric>
Numeric SPUC::qpsk_variable< Numeric >::symbol_locked
template<class Numeric>
loop_filter<Numeric> SPUC::qpsk_variable< Numeric >::symbol_loop_filter
template<class Numeric>
Numeric SPUC::qpsk_variable< Numeric >::symbol_loop_out
template<class Numeric>
Numeric SPUC::qpsk_variable< Numeric >::symbol_nco_out
template<class Numeric>
bool SPUC::qpsk_variable< Numeric >::symbol_x2_clk
template<class Numeric>
bool SPUC::qpsk_variable< Numeric >::symbol_x2_clk_pls
template<class Numeric>
delay< complex<CNumeric> > SPUC::qpsk_variable< Numeric >::timing_disc_delay
template<class Numeric>
Numeric SPUC::qpsk_variable< Numeric >::timing_error

The documentation for this class was generated from the following file: