Module galileo_osnma::storage

source ·
Expand description

OSNMA storage definitions.

The trait StaticStorage in this module is used to define the sizes of some of the data that is allocated by Osnma. This can be used to reduce the memory footprint, at the cost of processing less satellites in parallel or not processing Slow MAC.

The number of SVNs (satellites) in the Galileo constellation is 36, but a receiver will typically track at most 8 to 12 satellites at a time. Storage space can be saved by limiting the information stored to only that of 8 or 12 satellites.

Slow MAC requires authenticating the data transmitted 10 subframes (300 seconds) ago, so an additional history of data for 10 subframes needs to be stored if Slow MAC is used. By limiting the history stored and not using Slow MAC, space can be saved.

A StaticStorage trait is used to define types that indicate the size of the storage. In general, these types should be zero-sized. Two types are provided: FullStorage, which gives the largest reasonable storage, and SmallStorage, which is a much smaller size that can be used in memory constrained applications. Users can define additional storage sizes by implementing the StaticStorage trait on their own types.

Structs§

  • Storage size for 36 satellites and Slow MAC.
  • Storage size for 12 satellites without Slow MAC.

Traits§