Files
galileo/docs/e1_pilot_aided_tracking.md
T

35 lines
1.6 KiB
Markdown

# E1C-pilot-aided E1B tracking
The default E1 architecture uses two phase-coherent correlator branches:
```text
raw SignalSim IQ8
-> E1C PCPS acquisition
-> E1C 25-symbol secondary-code phase/frequency search
-> shared double-precision carrier and code phase vectors
-> E1C VE/E/P/L/VL -> FLL/PLL/DLL/CN0/BOC lock
-> E1B VE/E/P/L/VL -> 4 ms Prompt stream -> I/NAV decoder
```
The secondary synchronizer jointly searches code phase and residual carrier
frequency using complex 4 ms Prompt values. Its estimated secondary phase is
then applied at every E1C primary-code epoch. Integrations may divide the 4 ms
primary period exactly; the 2 ms navigation configuration applies the same
secondary symbol to both halves.
E1B navigation polarity never enters the pilot loop discriminators, C/N0
estimator, or lock detector. The E1B branch receives the identical carrier and
code phase arrays before either NCO advances, preserving sample-by-sample
coherence. Only E1B Prompt I/Q is passed to symbol synchronization and I/NAV
decoding.
The initial 400 ms E1C secondary search operates on a buffered portion of the
same input stream. The offline regression replays that buffer through the
closed loops after synchronization; it does not load frozen Prompt, symbol,
page, or ephemeris artifacts. A streaming implementation can use the same
bounded input buffer or start output after synchronization.
This pilot architecture is a separate robustness improvement. It is not used
to conceal the legacy BOC metric defect: E1B-only and E1C-aided modes are both
evaluated with the same corrected BOC-aware lock detector.