Struct dll_state_t¶
DLL state. More...
#include <dll_core.h>
Public Attributes¶
| Type | Name |
|---|---|
| float complex | acc_e |
| float complex | acc_l |
| float complex | acc_o |
| float complex | acc_p |
| double | bn |
| double | chip_pos |
| const uint8_t * | code |
| double | code_rate |
| double | inv_sps |
| double | last_error |
| loop_filter_state_t | lf |
| double | lock_alpha |
| size_t | lock_count |
| size_t | lock_nz |
| double | lock_stat |
| double | lock_sum |
| double | lock_thresh |
| int | locked |
| size_t | n_looks |
| double | noise_ema |
| double | noise_guard |
| double | off_chips |
| int | owns_code |
| uint32_t | rng |
| double | seed_chip |
| double | seg_chips |
| size_t | seg_idx |
| double | seg_norm |
| size_t | segments |
| size_t | sf |
| double | spacing |
| size_t | sps |
| double | sum_e |
| double | sum_l |
| double | zeta |
Detailed Description¶
Allocate with dll_create() (copies the code), or embed by value and dll_init() (borrows the caller's code). The loop filter lf is a public sub-component so the inline composition helpers can drive it; treat the correlator accumulators and code-phase fields as internal.
Public Attributes Documentation¶
variable acc_e¶
early correlator accumulator.
variable acc_l¶
late correlator accumulator.
variable acc_o¶
offset (noise) correlator accumulator.
variable acc_p¶
prompt correlator accumulator.
variable bn¶
loop noise bandwidth (retained).
variable chip_pos¶
current prompt code phase, chips.
variable code¶
spreading code, one period (0/1 chips).
variable code_rate¶
chips advanced per nominal chip (~1.0).
variable inv_sps¶
1 / sps (per-sample chip advance scale).
variable last_error¶
last discriminator output (loop stress).
variable lf¶
2nd-order code PI loop.
variable lock_alpha¶
EMA coefficient 1/L_eff (L_eff >> n_looks).
variable lock_count¶
looks accumulated in the current window.
variable lock_nz¶
noise looks folded in (cumulative-mean boot).
variable lock_stat¶
last statistic R = sqrt(2 sum|P|^2/E|O|^2).
variable lock_sum¶
running sum|P_k|^2 over the current window.
variable lock_thresh¶
CFAR threshold eta on R (det_threshold_nc).
variable locked¶
last lock decision (R > eta).
variable n_looks¶
non-coherent integration depth N.
variable noise_ema¶
EMA of offset power; estimates E|O|^2.
variable noise_guard¶
chips around P/E/L the offset must avoid.
variable off_chips¶
this look's offset code phase, whole chips.
variable owns_code¶
1 if dll_destroy() frees code.
variable rng¶
xorshift32 state for the random offset.
variable seed_chip¶
create-time code phase, for reset.
variable seg_chips¶
code phase per partial segment = sf/segments.
variable seg_idx¶
current partial index within the epoch.
variable seg_norm¶
nominal samples per segment (prompt scale).
variable segments¶
partial correlations per epoch (1 = full).
variable sf¶
code length (chips per period).
variable spacing¶
early/late tap offset, chips (e.g. 0.5).
variable sps¶
samples per chip.
variable sum_e¶
non-coherent early sum over the epoch.
variable sum_l¶
non-coherent late sum over the epoch.
variable zeta¶
damping factor (retained).
The documentation for this class was generated from the following file native/inc/dll/dll_core.h