Skip to content

Struct carrier_nda_state_t

ClassList > carrier_nda_state_t

NDA M-th-power carrier loop state. More...

  • #include <carrier_nda_core.h>

Public Attributes

Type Name
agc_state_t agc
boxcar_state_t arm
size_t arm_len
double bn
double ctl_cyc
double last_error
loop_filter_state_t lf
double lock
double lock_scale
int m
int n
lo_state_t nco
double seed_norm_freq
size_t sps
double zeta

Detailed Description

Allocate with carrier_nda_create(), or embed by value and carrier_nda_init(). The carrier NCO (nco) and PI loop (lf) are public sub-components so a composing receiver can drive the same NCO; treat the arm accumulator and the diagnostics as internal.

Public Attributes Documentation

variable agc

agc_state_t carrier_nda_state_t::agc;

per-sample log-domain AGC on the arm sample (normalizes to unit average power).


variable arm

boxcar_state_t carrier_nda_state_t::arm;

I/Q boxcar moving-average arm (sps/n).


variable arm_len

size_t carrier_nda_state_t::arm_len;

moving-average window length (= sps / n).


variable bn

double carrier_nda_state_t::bn;

PLL loop noise bandwidth (retained).


variable ctl_cyc

double carrier_nda_state_t::ctl_cyc;

NCO control (cyc/sample) for next wipeoff.


variable last_error

double carrier_nda_state_t::last_error;

last phase discriminator (loop stress).


variable lf

loop_filter_state_t carrier_nda_state_t::lf;

2nd-order carrier PI loop.


variable lock

double carrier_nda_state_t::lock;

EMA of the lock signal (1 = locked).


variable lock_scale

double carrier_nda_state_t::lock_scale;

per-M lock-signal scale (1/0.619/0.412).


variable m

int carrier_nda_state_t::m;

constellation order M (2, 4, 8).


variable n

int carrier_nda_state_t::n;

sets the MA window (= a 1/n-symbol box).


variable nco

lo_state_t carrier_nda_state_t::nco;

integer carrier NCO (uint32 phase).


variable seed_norm_freq

double carrier_nda_state_t::seed_norm_freq;

create-time carrier freq, for reset.


variable sps

size_t carrier_nda_state_t::sps;

samples per symbol.


variable zeta

double carrier_nda_state_t::zeta;

damping factor (retained).



The documentation for this class was generated from the following file native/inc/carrier_nda/carrier_nda_core.h