Struct dp_async_dsss_receiver_state_t¶
ClassList > dp_async_dsss_receiver_state_t
Composed receiver state. More...
#include <async_dsss_receiver_core.h>
Public Attributes¶
Detailed Description¶
Every child is allocated at create() with a placeholder seed (phase 0, no Doppler) and REBUILT (not freed to NULL) on every real transition: a fixed shape, independent of state. Treat all fields as internal (use the getters).
Public Attributes Documentation¶
variable acq¶
The embedded search.
variable align_pending¶
Running: the searcher was reset and discards input to the next multiple of coherent_bins * code_len * spc before its next dwell starts.
variable both_down_samples¶
Running: consecutive samples fed while tracking with BOTH lock flags down the release clock; lost keeps it counting. With reacquire it counts the symbol lock flag alone.
variable ca¶
variable car¶
variable car_carry_buf¶
variable car_carry_len¶
variable car_coasting¶
Running: the carrier loop is held.
variable car_frozen¶
variable car_held¶
The carrier as of the last period with both lock flags up, restored on entering the hold.
variable car_wiped_buf¶
variable carrier_freq_hz¶
nominal RF carrier, Hz; > 0 enables the carrier->code rate aiding, 0 = off (config, not running state restored by create).
variable chip_rate¶
variable cn0_dbhz¶
Design C/N0 feeds both Acquisition's own sizing and (derated) CarrierAcquisition's design_snr on every refine-chain (re)build.
variable cn0_dbhz_est¶
The seed's C/N0 estimate (its own hit's, or an outside seed's); nothing refreshes it.
variable code¶
variable code_len¶
variable code_only_s¶
Config: the code-only window, seconds (create()'s; restored by create).
variable differential¶
variable dll¶
variable doppler_hz_est¶
The seed's Doppler while refining; the CarrierAcquisition-refined value once tracking. A refused hand-over zeroes both, as reset() does.
variable doppler_rate¶
Config: the searcher's rate bound, Hz/s.
variable excl¶
those phases, chips, in [0, code_len), the status() convention.
variable had_lock¶
Running: both lock flags have been up since the hand-over. After that both down holds both loops (dp_dll_set_coast, the carrier's own hold) so a departed emitter's receiver cannot free-run onto a neighbour's code (#1271).
variable lock_alpha¶
EMA coeff = 1/dwell (dwell >= 30).
variable lock_den¶
variable lock_metric¶
variable lock_num¶
variable lost_confirm_s¶
Config: both flags down for longer than this is "gone"; 0 = never.
variable lost_confirm_samples¶
lost_confirm_s at the input rate.
variable m¶
variable n¶
MpskReceiver's terminal outputs per symbol (m_out: even, 2..8).
variable n_excl¶
set_exclusions(): code phases held.
variable pd¶
Also CarrierAcquisition's own pd.
variable pfa¶
Also CarrierAcquisition's own pfa.
variable rank¶
set_rank(): which surviving peak of a dwell the search takes, 0 = the strongest.
variable rc¶
variable reacquire¶
Config: release on symbol lock alone and reset to searching, never lost (see dp_async_dsss_receiver_create()).
variable refine_design_margin_db¶
variable refine_dll¶
variable refine_dll_out_buf¶
variable refine_dll_out_cap¶
variable refine_max_error_db¶
variable refine_max_n_blocks¶
variable refine_min_blocks¶
Floor on the refine's dwell, in blocks (default 7). The refine's detection sizing needs fewer blocks the higher the C/N0, but the estimate the carrier chain must pull in from does not sharpen with it (#1265). Set with set_refine_min_blocks(), which carries the measurement.
variable refine_n_fft¶
variable refine_periods¶
Diagnostic: code periods the refine stage processed since its chain was built. It stops at the period the carrier estimate decides in, so it is the same whatever the block size (#2395). Not in the state blob: it changes nothing, and a restore restarts it.
variable refine_rc¶
variable refine_rc_out_buf¶
variable refine_rc_out_cap¶
variable refine_samples_fed¶
Raw samples fed into the refine pipeline since it was last (re)built. At the hand-over, fed minus consumed is the tail of the last call that goes straight on to the live chain. The clock dilation is taken over the consumed count, from the refine's blocks, not over this.
variable refine_samples_per_symbol¶
variable refine_segments¶
dp_dll_lookback_segments() result, computed once at create: config for refine_dll's layout, needed again by set_state's check.
variable refine_sequential¶
variable refine_zero_pad¶
variable refused_hits¶
Searching hits the seed domain refused as seeds, since create or reset. In the blob with state_samples, so a resumed receiver's status matches an unbroken run's.
variable rx¶
variable samples_in¶
Running: input samples fed since create. Never reset: every receiver in a pool is fed every sample from create, so this IS the shared sample count the searchers' dwells align to.
variable seed_chip_phase¶
The seed's chip phase; the live chain starts from it advanced by the clock dilation over the refine, not from wherever the refine-stage Dll drifted.
variable seed_doppler_hz_est¶
Original (unrefined) handoff Doppler estimate.
variable segments¶
The live-tracking Dll's partial correlations per code period (refine_segments is the refine collector's).
variable spc¶
variable sps¶
MpskReceiver's samples per symbol.
variable state¶
One of the ASYNC_DSSS_RX_SEARCHING .. _LOST values.
variable state_samples¶
Running: samples fed since the current state was entered.
variable sym_lockdet¶
variable symbol_rate¶
variable tlm¶
NULL = detached.
variable tlm_decim¶
The attach's decimation.
variable tlm_handover¶
"<prefix>.handover_hz" id, -1 detached.
variable tlm_prefix¶
The attach's prefix.
variable tlm_refused¶
"<prefix>.refused" id, -1 detached.
variable tlm_state¶
"<prefix>.state" id, -1 detached.
variable tlm_sym_lock¶
"<prefix>.sym.lock" id, -1 detached.
variable tlm_sym_locked¶
"<prefix>.sym.locked" id, -1 detached.
variable track_dll_out_buf¶
variable track_dll_out_cap¶
variable track_rc_out_buf¶
variable track_rc_out_cap¶
variable tsamps¶
code_len*spc one code period, samples.
The documentation for this class was generated from the following file native/inc/doppler/async_dsss_receiver/async_dsss_receiver_core.h