GNSS software-defined receiver
A Software GNSS Receiver is a GNSS receiver that has been designed and implemented following the philosophy of Software-defined radio.
A GNSS receiver is an electronic device that receives and digitally processes the signals from the a satellite constellation in order to provide position, velocity and time (of the receiver).
GNSS receivers have been traditionally implemented in hardware: a hardware GNSS receiver is conceived as a dedicated chip that have been designed and built (from the very beginning) with the only purpose of being a GNSS receiver.
In a Software GNSS Receiver, however, the whole digital processing is carried out by a general purpose microprocessor. In this approach, a (small and cheap) dedicated hardware is still needed, known as the frontend, which is in charge of amplifying and digitalizing the signal from the satellites, converting it in a stream of ones and zeros that can be digitally processed. Then, this raw digital stream enters a general purpose microprocessor that executes all the digital processes required for implementing the GNSS function.
When comparing Hardware vs Software GNSS Receivers, a number of pros and cons can be found for each approach:
- Hardware GNSS receivers are in general more efficient from the point of view of, both, computational load and power consumption, since they have been designed, in a highly specialized way, with the only purpose of implementing the GNSS processing.
- Software GNSS receivers allow a huge flexibility: many features of the receiver can be modified just through software. This provides adaptative capabilities, depending on the user's needs and working conditions. In addition, the receiver can be easily upgraded via software.
- Under some assumptions, Software GNSS receivers can be more profitable for some applications, as long as a suficient computational power is available (and can be shared among multiple applications). For example, the microprocessor of a smartphone can be used to provide GNSS navigation with the only need of including a frontend (instead of a full, more expensive, hardware receiver).
Currently, most of the GNSS receiver market is still hardware. However, there already exists operational solutions based on the software approach and able to run on low-cost microprocessors. In fact, software GNSS receivers are expected to progressively increase its market share or even take over in the near future.