Files
galileo/reports/signalsim_bit_generation_report.md
T

35 lines
2.2 KiB
Markdown

# SignalSim Galileo E1 bit-generation trace
Inspected project: `globsky/SignalSim`, commit
`80b262113e77c4482ca9f5cbfef9bcada402ed28`.
| Layer | E1B status | E1C status | Evidence/qualification |
|---|---|---|---|
| Navigation fields | Generated from RINEX ephemeris, almanac, UTC/iono | N/A pilot | `INavBit::GetWordData`, setters called by IFdataGen |
| Navigation page | 500-symbol, 2-second I/NAV page | N/A | `INavBit::GetFrameData` |
| CRC | CRC-24Q over 196 bits | N/A | `Crc24qEncode` |
| Channel encoding | Galileo convolutional encoder with tail bits | N/A | `GalConvolutionEncode` |
| Interleaving | 8 by 30 traversal for both page halves | N/A | final loops in `GetFrameData` |
| Sync | 10 symbols `0101100000` before each 240-symbol half | N/A | `SyncPattern` |
| Symbols | One encoded E1B symbol per 4 ms | 25-symbol overlay sequence | `SignalAttributes[9]`; `SecondaryCodeE1` |
| Spreading | 4092-chip E1B memory code | 4092-chip E1C memory code | `E1MemoryCode`, `GetMemorySequence` |
| Modulation | BOC(1,1), amplitude `-DataBit/sqrt(2)` | BOC(1,1), amplitude `PilotBit/sqrt(2)` | `SatelliteSignal.cpp`, `SatIfSignal.cpp` |
| IF samples | Combined complex IQ at RF-center offset | Combined complex IQ | IFdataGen quantizer/output path |
The I/NAV stream is not random dummy data. It includes CRC, convolutional
encoding, interleaving, sync, page timing, TOW/WN fields where applicable, and
ephemeris/almanac content. Limitations are also explicit: unsupported word types
above 20 become dummy word 63, and reserved/SAR/spare content includes fixed
zero placeholders.
Receiver-side evidence recovered 469 raw E1B symbols after the tracking
transient and found two exact `0101100000` sync words 250 symbols apart with
zero errors over the 20 known sync symbols. Receiver-side deinterleaving, FEC
decoding, page parsing, and CRC validation are not implemented, so this result
must not be described as decoded navigation bits or decoded I/NAV pages.
E1C evidence found secondary phase 10, normalized correlation 0.9830, and zero
sign errors over 100 primary-code periods. The implemented 25-symbol constant
was verified against generated samples but was not independently certified
against an external ICD table in this work.