If you wish to contribute or participate in the discussions about articles you are invited to contact the Editor

Digital Signal Processing

From Navipedia
Revision as of 17:40, 29 April 2011 by Teresa.Ferreira (talk | contribs)
Jump to navigation Jump to search


ReceiversReceivers
Title Digital Signal Processing
Author(s) GMV
Level Advanced
Year of Publication 2011
Logo GMV.png


Digital Signal Processing is responsible for the processing of the input signal from its digitization and down-conversion in the RF section (antenna and front end), up to the overall receiver output, including the Application Processing block which compiles the information provided by all channels in order to provide a navigation solution to the user.

Block Diagram

The GNSS receiver digital signal processing section – depicted in figure 1 – includes the baseband processing blocks of each channel as well as the application processing, which provides the user with a navigation solution. The incoming signal is fed to the baseband processing block that assigns each channel to a given signal from a given satellite. Each channel correlates the incoming signal with a locally generated replica of the PRN code and implements tracking loops to follow accurately the code delay and the Doppler frequency of that specific signal in a feedback loop to the local code generation. The outputs of the baseband processing are the navigation bits for each signal (whenever applicable) and GNSS observables (pseudorange, carrier phase and Doppler frequency), as well as additional data such as CN0 and lock detection indicators. The application processing integrates this information from all channels to provide the expected solution. Although in most common receiver architectures these channels operate independently, there could be situations where aiding information could be useful. As an example, Inertial Measurements could provide additional information on the receiver dynamics and therefore help adjusting the code and carrier phase estimates.


Figure 1:Generic Digital Signal Processing block diagram.


Doppler Removal

The Doppler removal block is responsible for rotating the incoming signal by the estimated amount of carrier phase, accounting for the observed Doppler frequency in CDMA systems such as GPS and Galileo. In FDMA systems, such as GLONASS, all satellites transmit the same ranging code (also called PRN code) but each satellite is assigned with a dedicated frequency band. In this case, the Doppler removal block actually includes the estimated Doppler frequency added to the center frequency shift at hand, specific to that satellite.

Correlators, Accumulators and Local Code Generation

These blocks are responsible for correlating the local code with the incoming signal over a time interval (designed for that specific application). The local code is generated using the current estimate of the code delay. Correlations of the locally generated ranging code are the key operations of the GNSS receiver in order to synchronize with the incoming signal.

Further information can be found here.

Tracking Loops

Tracking loops are used to follow continuously both parameters to be estimated: the code delay and the carrier phase of the incoming signal. A new estimation of these parameters is provided every T interval, where T is the accumulators’ integration time and can be different for each of the parameters. The design of the tracking loops is of paramount importance on the overall performance of the receiver, since it dictates the ability to correctly track the signal and hence influencing the accuracy of the receiver.

Further information can be found here.

Data Demodulation and Data Processing

This block takes the symbols extracted from the incoming signal and performs bit and frame synchronization in order to decode the navigation message, i.e. the data bits containing ephemeris and satellite clock information among others. Besides retrieving the actual navigation data, synchronization with the incoming navigation message allows converting code delay estimates into pseudo-range using the time tags of the satellite.

Further information can be found here.

Applications Processing

This block is responsible for processing the data from all channels to derive a navigation solution (e.g. PVT). The input data include GNSS observables (code pseudo-range and carrier phase measurements) from all (available) channels as well as the decoded navigation data (e.g. ephemeris and satellite clock error information).

Further information can be found here.

Lock Detectors

This block uses the information provided by the accumulators in order to assess the tracking status. By inspection of the correlators phase and power, the lock detectors block assesses how well the incoming signal is being tracked. Based on this information, the Channel Control and Monitoring block may decide to declare loss of lock and to go back to the acquisition process.

Further information can be found here.

Control and Monitoring

This block is common to all receiver block. At channel level, its purpose is to assign each channel with a signal to track and to monitor its status. As an example, if a signal from a given satellite has been lost, the receiver may decide to allocate a new satellite (e.g. in case the original satellite has fallen below the masking angle) or it may decide to continue searching for this satellite (e.g. in case the satellite is still there but has been momentarily obstructed). Furthermore, the time to first fix into a navigation solution may be optimized by using information from other satellites. As an example, in [Receiver Operations|warm start conditions]], the receiver may use pre-loaded almanac data together with a rough initial position estimate to determine what other satellites are visible. At overall receiver level, the control block manages all the operations, e.g. making sure that the outputs of all channels refer to the same time instant and that a navigation solution uses only valid satellite measurements.


Related articles

References