2.5 KiB
Configuration
ReceiverConfig owns RF, acquisition, tracking, front-end, and fixed-point
dataclasses. YAML loading is strict: a misspelled field is an error.
Important validation rules include positive sampling/loop rates, a real IF strictly below Nyquist, integer sample counts per integration interval, ordered correlator tap spacing, explicit FFT length when requested, E1B bit-transition protection beyond 4 ms, and E1C secondary-code handling beyond 4 ms. E1B tracking is conservatively limited to 4 ms until navigation-symbol synchronization is implemented.
intermediate_frequency_hz may be nonzero for either real or analytic input.
The front end always outputs complex baseband and divides the effective sample
rate by the integer decimation factor. Acquisition/tracking must use that output
rate.
Acquisition parallelism fields expose future hardware/software scheduling but
do not change numerical results. zero_padding_mode: none provides the exact
N-sample circular correlation. A longer FFT changes the sampled numerical
correlation/edge convention; it is not additional physical delay information.
Default YAML files:
e1_default.yaml: requested 16.368 MHz nominal defaults.acquisition_example.yaml: faster 4.092 MHz executable search.tracking_example.yaml: 4.092 MHz tracking defaults.e1_cboc.yaml: explicit full-band CBOC selection at 32.736 Msps and a 2.25 MHz analytic low IF.navigation_collection.yaml: SignalSim IQ-to-I/NAV regression. Its defaulttracking.architectureise1c_pilot_aided_e1b; the CLI can selecte1b_onlyfor an A/B replay.
AcquisitionConfig.modulation and TrackingConfig.modulation independently
select BOC11 or CBOC. Both default to BOC11, so existing SignalSim and
low-bandwidth configurations retain their measured behavior. A CBOC vector
must set both fields to CBOC for a matched acquisition/tracking replica.
The BOC lock detector parameters are part of TrackingConfig. The defaults use
25 noncoherent power epochs, three confirmations, and the configured
loss_of_lock_epochs for sustained failure. Carrier and BOC central/outer
shape thresholds have explicit entry and exit values. lock_signal_loss_power_ratio
sets the five-tap power loss test. These parameters affect monitoring and
reacquisition only; they do not change discriminator or loop-filter coefficients.
boc_side_peak_coherence_enter/exit calibrate the coherent E/L-to-P tap-sign
test needed to distinguish the negative half-chip BOC sidelobe from the main
peak using more than magnitude-only information.