## 2 The Architecture of GPS Receiver  
Figure 1 shows the high-level architecture of a GPS receiver [3; 10]. The GPS receiver signal processing mainly consists of two stages, namely the radio frequency (RF) front-end stage and the signal processing stage. The main functions of the RF front-end are to amplify, downconvert, and sample the incoming GPS signal. The preamplifier magnifies and filters the received signal. Then, the preamplifier's output is shifted by the down converter from the GPS RF carrier frequency (L1) to a lower intermediate frequency (IF). The lower IF frequency is easier to deal with than the original incoming signal [11]. The signal is finally sampled by the IF sampling to be passed to the signal processing stage.  
Figure 1: High-level architecture of a global positioning system (GPS) receiver.  
Signal acquisition is the first step in processing the sampled GPS IF data. The primary purpose of the signal acquisition is to detect any visible satellites and to provide a coarse estimate about the signal parameters of the satellites in view [11; 12; 13; 14]. There are three key parameters to be determined during the acquisition process, which are the C/A codes of the available satellites, their respective C/A-code phases, and carrier frequencies. The acquisition process is a necessary step to determine an approximate Doppler and code phase for the satellite signal being tracked by the channel and to estimate a noise threshold. The estimated parameters are next passed to the second stage, which is the channel tracking loops. The tracking loops attempt to clampdown on the estimated parameters so that the satellite signal can be kept in lock, and continuous measurements can be accordingly generated. It is used to generate precise replicas of the incoming code and carrier. The local code and carrier can be correctly generated only if the signal parameters are correctly tracked. There are two main types of tracking loops depending on the tracked property of the signal. The first type is the code tracking loop, which is called the delay lock loop (DLL). The DLL provides an estimate of the code phase of the C/A code being tracked. The second are the carrier tracking loops which track the incoming carrier phase and frequency via a phase lock loop (PLL) and frequency lock loop (FLL), respectively. The code and carrier tracking loops are coupled in the sense that DLL needs an accurate estimate of the incoming carrier frequency as provided by the carrier loop.  
When a receiver is in tracking mode, it needs to know if a signal is actually tracked and that the estimated parameters (code delay, carrier frequency, and phase) are correct. After the parameters of each visible satellite are estimated accurately, the navigation message can be extracted and decoded.  
The signal parameters estimated by the tracking loops need to be converted into actual measurements (pseudo-range, Doppler frequency, and carrier phase) that can be used to obtain the navigation solution. In order to compute a navigation solution, the receiver must produce pseudo-ranges to at least four satellites and know the navigation data broadcast by satellites. The receiver can also solve for velocity using the Doppler measurements.  
The effects of the jamming signal on the receiver mainly prevent receivers from tracking the GPS signals. A jammer with a GPS-like spread spectrum signal will have a significant signal denial range for the same power since it prevents the de-spreading processing gain and is difficult to detect by conventional methods such as spectrum analysis.