Base component
Channel Controller (cc)
Creates and manages processing channels for signals received from the RF front end. Acquires and tracks signals, decodes telemetry, and writes channel measurements to the Channel Measurement Table. Controls the correlators implemented in programmable logic and distributes tasks across CPU cores and FPGA fabric to exploit the MPSoC's heterogeneous architecture.
Critical functions
- Acquire and track civil GNSS signals across L1, L2, and L5.
- Measure and output pseudorange and carrier phase.
- Allocate channels to satellites based on code-mode and satellite selection.
- Compute pseudorange and deltarange measurements across tracking states.
- Provide pseudorange, deltarange, and SV position/velocity to the integrated platform.
- Support military signal modes per applicable program requirements.
Modules
-
ChannelManager
Manages channels in the Channel Controller — initialization, configuration, and control.
-
Channel
A single channel instance: carrier and code tracking loops, correlation, and demodulation.
-
CarrierTrackingLoop
Carrier-phase tracking loop — phase and frequency estimation and correction.
-
CodeTrackingLoop
Code tracking loop — delay estimation and correlation.
-
AltNavInterface
Interface to the AltNav receiver running in the Xen hypervisor partition.
-
Correlator
Hardware correlation in programmable logic, abstracted by the GEnCor control layer.
-
SpreadingCodeGenerator
Generates the spreading codes used by the code tracking loop for each satellite signal.
-
ConfigurationParser
Parses configuration files and inputs to configure the Channel Controller and its modules.
-
DMAController
Manages direct memory access operations for efficient data transfer between CPU and PL.