SPUC
3.0
|
Loop Filter for use in PLL circuits. More...
#include <loop_filter.h>
Public Types | |
typedef unquantized_mixed_type < Numeric, Coeff >::dtype | k_type |
Accumulator for k1 branch (should not be written to) More... | |
Public Member Functions | |
loop_filter (void) | |
Constructor. More... | |
void | reset (void) |
Reset. More... | |
Numeric | update (Numeric error) |
Normal call with input, returns output. More... | |
Public Attributes | |
long | k0_en |
enable first order branch More... | |
long | k1_en |
enable second order branch More... | |
Coeff | k0 |
First order gain. More... | |
Coeff | k1 |
second order gain More... | |
k_type | k1_acc |
Protected Attributes | |
Numeric | loop_out |
k_type | k1_prod |
k_type | k0_prod |
Loop Filter for use in PLL circuits.
Template for 2nd order loop filter (for timing/carrier recovery, etc). Either branch can be enabled/disabled for 1st/2nd order operation There is no overflow protection on accumulator. Gains are not normalized.
typedef unquantized_mixed_type<Numeric,Coeff>::dtype SPUC::loop_filter< Numeric, Coeff >::k_type |
Accumulator for k1 branch (should not be written to)
|
inline |
Constructor.
|
inline |
Reset.
Referenced by SPUC::loop_filter< Numeric >::loop_filter(), and SPUC::qpsk< Numeric >::reset().
|
inline |
Normal call with input, returns output.
Referenced by SPUC::qpsk< Numeric >::clock(), and SPUC::qpsk_variable< Numeric >::clock().
Coeff SPUC::loop_filter< Numeric, Coeff >::k0 |
First order gain.
Referenced by SPUC::sim_qpsk_variable< Numeric >::loop_init(), SPUC::qpsk< Numeric >::qpsk(), and SPUC::qpsk_variable< Numeric >::qpsk_variable().
long SPUC::loop_filter< Numeric, Coeff >::k0_en |
enable first order branch
Referenced by SPUC::qpsk< Numeric >::qpsk(), SPUC::qpsk_variable< Numeric >::qpsk_variable(), and SPUC::loop_filter< Numeric >::update().
|
protected |
Coeff SPUC::loop_filter< Numeric, Coeff >::k1 |
second order gain
Referenced by SPUC::sim_qpsk_variable< Numeric >::loop_init(), SPUC::qpsk< Numeric >::qpsk(), and SPUC::qpsk_variable< Numeric >::qpsk_variable().
k_type SPUC::loop_filter< Numeric, Coeff >::k1_acc |
long SPUC::loop_filter< Numeric, Coeff >::k1_en |
enable second order branch
Referenced by SPUC::qpsk< Numeric >::qpsk(), SPUC::qpsk_variable< Numeric >::qpsk_variable(), and SPUC::loop_filter< Numeric >::update().
|
protected |
Referenced by SPUC::loop_filter< Numeric >::update().
|
protected |