48 lines
2.5 KiB
Markdown
48 lines
2.5 KiB
Markdown
# 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 default
|
|
`tracking.architecture` is `e1c_pilot_aided_e1b`; the CLI can select
|
|
`e1b_only` for 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.
|