Struct burst_demod_state_t¶
ClassList > burst_demod_state_t
BurstDemod state. Allocate with burst_demod_create() .
#include <burst_demod_core.h>
Public Attributes¶
| Type | Name |
|---|---|
| uint8_t * | acq_code |
| size_t | acq_reps |
| size_t | acq_sf |
| double | carrier_hz |
| double | chip_rate |
| uint8_t * | data_code |
| size_t | data_sf |
| double | est_freq_hz |
| double | est_n0 |
| double | est_rate_hz |
| size_t | est_segments |
| double | est_snr_db |
| double | f0_prior |
| size_t | frame_offset |
| size_t | frame_syms |
| float * | llr |
| double | max_rate |
| size_t | n_llr |
| size_t | n_part |
| size_t | n_sym |
| size_t | n_symbols |
| float _Complex * | part |
| ppe_state_t * | ppe |
| size_t | spc |
| size_t | start |
| float _Complex * | sym |
| int8_t * | sync |
| size_t | sync_len |
Public Attributes Documentation¶
variable acq_code¶
owned acq preamble code (0/1), length acq_sf.
variable acq_reps¶
acq preamble repetitions.
variable acq_sf¶
acq code length (chips).
variable carrier_hz¶
RF carrier (Hz) for code-Doppler; 0 = ignore.
variable chip_rate¶
chip rate (Hz).
variable data_code¶
owned data spreading code (0/1), length data_sf.
variable data_sf¶
data spreading factor (chips/symbol).
variable est_freq_hz¶
estimated residual Doppler (Hz).
variable est_n0¶
Noise power the LLRs are scaled by, referred to unit symbol amplitude. Published so a caller can undo the scaling, or compare bursts by it.
variable est_rate_hz¶
estimated Doppler rate (Hz/s).
variable est_segments¶
partials per acq period for the estimate.
variable est_snr_db¶
estimator confidence (dB).
variable f0_prior¶
coarse Doppler prior (cycles/sample).
variable frame_offset¶
symbol offset of the sync word.
variable frame_syms¶
symbols the frame occupies AFTER the sync word — a number the caller states. What they MEAN is the frame description's business, one layer up.
variable llr¶
The frame's soft bits, mpsk_soft_demap's convention: positive means bit 0, so L < 0 is the hard decision demod() returned. Valid until the next demod(); n_llr of them.
variable max_rate¶
chirp-rate search half-span (cycles/sample^2).
variable n_llr¶
LLRs the last demod() wrote (the frame's length).
variable n_part¶
variable n_sym¶
Symbols the last demod() wrote (the frame's length).
variable n_symbols¶
despread data symbols produced.
variable part¶
preamble partials scratch (acq_reps*est_seg).
variable ppe¶
feedforward (rate x freq) estimator.
variable spc¶
samples per chip.
variable start¶
preamble start sample in the burst.
variable sym¶
The frame's DEROTATED, unit-normalised complex symbols the constellation the LLRs are the real part of. Built either way to compute the projection and the noise estimate, and freed unread until doppler#1087: for BPSK a residual phase error and a genuine amplitude loss are indistinguishable in every real-only statistic (a rotation scales Re by cos(phi) without adding noise), so |LLR|, its spread and the BER all agree while only the quadrature separates them. Valid until the next demod(); n_sym of them.
variable sync¶
owned sync word as +/-1, length sync_len — the correlation template, and the only thing this object knows about the frame's CONTENT.
variable sync_len¶
sync word length (symbols).
The documentation for this class was generated from the following file native/inc/burst_demod/burst_demod_core.h