— This paper presents an efficient and unique method to learn the com plex receiver structure of Galileo E5 AltBOC (Alternative Binary Offset Carrier). The software application is designed in Matlab to present each step involved in the desi gn of software receiver of Galileo E5 signal. This soft ware application contains the f undamental concepts of the Galileo E5 signal in the form of signal acquisition, signal tracking, extraction of the navigation data, power spectral density (PSD) of the AltBOC ( 15, 10), Fast Fourier Transform (FFT) of the E5a and E5b signal and implementati on of the subcarrier used for the AltBOC (15,10). This paper also presents the extraction of navigation data by a novel based approach using the prompt channel of carrier trac king from the code loop discriminator. Keywords —AltBOC; Engineering Education; G alileo E5 signal; Signal acquisition; Signal tracking; I. INTRODUCTION In recent years, software based solutions have made possible the expansion of various tools to support engineering education. The large impact of complex sa tellite signals in Research and Development (R&D) proved to be of great worth in the current era. However, many engineers face the ultimate challenge of learning the basic concepts of Galileo signals. The understanding of Auto -correlation function (ACF) of signal acquisition, generation of sub -carrier for AltBOC ( 15, 10), signal tracking and extraction of the navigation data are very important topics for the researcher of satellite navigation technolog y. In terms of engineering education, it is aimed that u ndergraduate or post -graduate s tudents must be prepared with enough knowledge and understanding before working in the field. Therefore, we present one of the simplest and unique software for learning the basic concepts of the baseband signal processing of the Galileo E5 AltBOC signal. Satellite system that offers continuous positioning over the globe is known as Global Navigation Satellite System (GNSS) [1]. Galileo is European’s GNSS at the development stage that consist of E1, E5 and E6 signal s. The most sophisticated Galil eo E5 signal is split into of E5a and E5b signals and employs AltBOC modulation that can be used as a wideband signal to offer a n accuracy of 20 centimetres even with pseudo -range only. AltBOC is a complex signal composed of four codes multiplexed so as to have a constant envelope. The main lobes of the signal span over 50 MHz, which means the signal bandwidth is about thirty times larger than the current Global Positioning System (GPS) signal bandwidth and the signal uses com plex modulation [2]. Therefore, due to the intricacy of E5 AltBOC signal it presents extraordinarily challenging for the baseband signal processing. First stage in the baseband signal processing involves signal acquisition that aims to get rough estimation of the Doppler frequency and code delay of the received signal [3]. Tracking is the second stage in the baseband signal processing of Galileo receiver that aims to refine coarse values obtained from acquisition, and keep track of signal propert ies that may change over time to demodulate the navigation data from a specific satellite [4]. Navigation data extraction is the third stage in the baseband signal processing section of a Galileo receiver. When the signals are correctly tracked then carrie r wave and Pseudo Random Noise (PRN) code can be eliminated from the signal to leave only the navigation bits with a period of 20 ms. The software application presented in this paper can be used by any institution. However, initial goal is to ado pt it at the University of Nott ingham, UK campus. The main envisioned outcomes of the developed activities were to do the following: • Motivate researchers to learn complex receiver structure of Galileo E5 AltBOC. • Upsurge researchers interest in taking rese arch projects related to Galile o signals. There has been no document related to th e software application based learning of Galileo E5 AltBOC signal. However, several papers have already discussed the baseband signal processing of Galileo E5 s ignal. For example, in [5], the authors have presented the signal acquisition of E5 Galileo signals in Matlab by using parallel frequency search algorithm. The code is developed on the basis of the free code developed by the GPS software defined radio [6]. However, they were unable to p erform the signal tracking. In [7], the authors have presented the basis of baseband signal processing without discussing tracking l oop parameters that performs major importance in the development of code and carrier loops. A uthors in [8] have proposed an innovative and efficient solution for the demodulation of the navigation data. However, they did not analyze the performance of the tracking stages in delay locked loops under hazardous situation. Novel based approach has been addressed in [9] to perfo rm full band along with wiping off the data bias on both E5a and E5b respectively, to take maximum advantage of power. The introduction of mitigation in the code phase multipath by frequency exploitation is used for E5 signal . Another novel based demodulat ion approach of Side Band Translator (SBT) is proposed in the [10]. The authors have recovered the data channels by frequency shift of the real signals on the received signal, and obtaine d replicas from the sub -carrier. Once data is acquired then both the frequency shifts are filtered in a separate way to reduce cross correlations. The interferences of channels were not presented in the above paper. However, the need of interferences with adjacent channels is performed in [11]. Therefore, navigation data i s extracted and separately acquired in the two BPSK signals by performing demodulated operation. However, there is no signal acquisition performed by the authors. A complete Galileo E5 AltBOC (15, 10) receiver is designed by [12]-[14]. It presents fundamen tals of acquisition, tracking and demodulation of the AltBOC (15, 10). The demodulation and tracking channels are achieved with hardware prototype of the receiver. However, acquisition algorithm is not efficient and Auto corr elation function of the structu res has less narrow side lobes . Many authors have focused on engineering education. For instance, [15]-[21], but as discussed earlier that has been no work related to the learning of Galileo E5 AltBOC for the baseband signa l processing of Galileo E5 sign al. Our software based receiver will provide complete understanding of the signal acquisition, signal tracking and extraction of navigation data. The organization of the paper is as follows: Section II explains the Galileo E5 signal structure. Section III presents the baseband signal processing (signal acquisition, tracking and data demodulation) of the Galileo E5 signal. Section IV presents a brief overview of the Matlab based application used for the Galileo E5 signal. Secti on V presents the GUI based res ults of the receiver and conclusion is discussed in the section VI. II. COMPLEX SIGNAL STRUCTURE OF GALILEO E5 ALTBOC The complex receiver structure and implementation of the complex envelope has been provided by the documente d presented in [22] as follows:        ) ( )( ))( )( ( 221) ( )( ))( )( ( 221) ( )( ))( )( ( 221) ( )( ))( )( ( 221)( 4/5, 5 5 5 54/5, 5 5 5 54/5, 5 5 5 54/5, 5 5 5 5 5 Es p E p E QbE IbEEs p E p E QaE IaEEs s E s E QbE IbEEs s E s E QaE IaE E Tt jsct sct ejt eTt jsct sct ejt eTt jsct sct jet eTt jsct sct jet e ts − + ++− − ++− + ++− − + = − − − −− − − −− − − −− − − − (1) The respective dashed signal components , IaEe−5 , QaEe−5 , IbEe−5 and QbEe−5 repres ent product signals according t o following: QbE IbE QaE IaE e e e e− − − − =5 5 5 5 QaE IaE QbE IbE e e e e− − − − =5 5 5 5 QbE IbE IaE QaE e e e e− − − − =5 5 5 5 QaE IaE IbE QbE e e e e− − − − =5 5 5 5 The QbE IaE e e− − 5 5,.., are Non return to zero (NRZ) signals which comprise the primary QbEP IaEP C C− − 5, 5, ,.., and secondary QbES IaES C C− − 5, 5, ,.., codes and navigation message data IaED−5 and IbED−5 . The chip rate of the primary codes is Chipf . IaE IaE IaE IbESIaEP IaE D C D C C e− − − − − − = =5 5 5 5, 5, 5 (2) QaES QaEP QaE C C e− − −=5, 5, 5 (3) IaE IbE IaE IbESIbEP IaE D C D C C e− − − − − − = =5 5 5 5, 5, 5 (4) QbES QbEP QaE C C e− − −=5, 5, 5 (5) Main and auxiliary sub -carrier waveforms can be represented in the form of SEsc−5 and PEsc−5 respectively. In the above expression 5, 5, /1Es Es f T= is the sub -carrier period and 5,Esf is the sub -carrier frequency. The combination of Galileo E5 signal provides four different combinations in the form of E5a -I, E5a -Q, E5b -I and E5b -Q components, and the auxiliary component for compe nsation of the signal envelope. Quadrature Phase Shift Keying (QPSK) modulation scheme is used in order to modulate E5a -I and E5a -Q components. Similar procedure is used for the E5b sub -carriers. Navigation data channels are E5 a-I and E5b -I, also known as da ta signals. This is due to the modulations in the message bits. Whereas pilot signals are E5a -Q and E5b -Q that contains only pilot data. III. DESIGN OF GALILEO E5 RECEIVER Receiver side of Galileo GNSS is very complex structure th at provides continuous position ing for the incoming signal. Accuracy and precision for the navigation data must be handled carefully for the upcoming technologies. Therefore, this secti on details the software receiver structure of the Galileo E5 AltBOC. Satellite raw data is available from the German company (Fraunhofer -Institut fur Integrierte Schaltungem) that passes through antenna and then front -end block as shown in the Fig. 1. The same data is then passed through acquisition stage to give the rough e stimation information about the available code phase and frequency. Information obtained from the acquisition is processed by the carrier and code tracking to give the exact information of the availability of particular navigation data. A fter forming the e ntire baseband signal processin g the whole information is passed to Matlab based Graphical User Interface (GUI). The navigation data is obtained in the form of position, velocity and time (PVT). Fig. 1. Receiver design of Galileo E5 AltBOC A. Signal Acquisi tion Many different approac hes have been used for the acquisition process but in this paper, we have used parallel search for the both code phase and frequency search. Parallelism in acquisition can be achieved by either in frequency domain or in the time domain. Analysis of acquisi tion in time domain is to spread the receiver structure to comprise more correlators, over full spreading code epoch period. While analysis of acquisition in frequency domain is functional in the received stream and local ly generated replica code. Since pe rforming correlation in time domain gives a multiplication factor in frequency -domain. Initially the incoming signal is split into In -phase (I) and Quadrature (Q) components. Local oscillator is shifted by 90 degrees to give Q component. FFT is used to com bine the both I and Q components and then Correlation is performed by involving the sub carrier of AltBOC and locally generated PRN passed through FFT and complex conjugate. Acquisition ACF is obtained simply by taking Invers e Fast Fourier Transform (IFFT) over the resulting multiplication as shown in Fig 2. The received signal is initially multiplied with a locally produced carrier wave, and giving In -phase (I) and Quadrature (Q) signal components. Both I and Q are shared as a composite input to the FFT. T he output of the FFT is then combined with the outcome of the lower branch of the block diagram in Fig 2. Fig. 2. Parallel code phase search block diagram [24] Reshape function is used to convert acquisition vector dat a into the matrix form to acquire 3 D plot. Note that the total length of acquisition output is 1000000 samples and a resample matrix of 10230 chips is used for code samples and multiple of 10230 are used to achieve frequency samples. The AltBOC when sample d at 120 MHz will provide perfect s ide-lobes as mentioned in the literature and can be observed in Fig 3, but at 80MHz centred lobes will shift upwards due to mismatching of sampling frequency of satellite raw data and AltBOC modulation. Fig 4 also shows the normalised ACF of AltBOC that d oes match with MATLAB plot shown in [23]: -40 -20 0 20 4000.20.40.60.81 samplesACF AltBOC(15,10) Ideal Fig. 3. ACF of AltBOC (15, 10) at sampling frequency of 120 MHz B. Signal Tracking and navigation data extraction Receiver can lose track of the satellite signal due to the chan ge in the carrier frequency. The ca rrier tracking loop tries to retain phase lock of the satellite as long as the drift is inside a given boundary. The acquisition will give the carrier fre quency within 500 KHz, the carrier tracking must then first bring t he carrier frequency into lock. We approached the carrier tracking problem by implementing a Phase Lock Loop (PLL). The basic PLL structure is shown in the Fig 4. However, we have made some changes to the architecture. Since we have an integrator that inte grates over one PRN code period we get the function of a Low Pass Filter (LPF) with a stop -band frequency of 1 KHz. Because of that we leave out the specified low pass filter which is only there to filter out high frequency noise anyway. This approach has been only used for carrier tracking . The intermediate frequency is the carrier frequency fc (this is the frequency that will be corrected) to generate I -component and Q -component. I and Q signals are then multiplied with our prompt replica code and are sum med over one period. I and Q signal are then fed into the discriminator which gives us the angle in radians between the I -component and Q -component. What we want is to have the I - component as large as possible while keeping the Q -component as small as poss ible. So, this yields that we shoul d try to keep the discriminator angle as small as possible. The discriminator uses atan instead of atan2 in order to ignore the phase shifts du e to AltBOC. In order to correct carrier frequency, the angle passes from the carrier loop filter to the carrier NCO. Fig. 4. The block diagram of a complete tracking channel on Galileo E5 receiver Code tracking loop is used to keep track of the code phase of an explicit code in the signal. The result of such a code tracking loop is flawle ssly aligned replica of the code. The code tracking loop in the Galileo receiver is a Delay Lock Loop (DLL) called an early -late tracking loop. Correlation ideally slides down linearly from maximum correlation to zero correlation when the phase error is on e full chip. If the phase error becomes one full chip, then there should be any correlation since the PRN code is supposed to act like white noise which is uncorrelated . In case of a shift the mark will slide to the right or left, depending on the nature o f the shift. Direction of the slide that we have introduced is two additional PRN codes. The new PRN codes are called early, prompt and late PRN. The navigation data is extracted from the prompt code. The discriminator al gorithm gives and envisioned or cal culated number on the phase error that is present in the receiver. The discriminator output signal  is calculated: LateEarly= (6) The discriminator will give us 1= , when we are perfectly aligned, 1 , when we should shift the code to the right, 1 , when we should shift the code to the left. Since we know that the data provided is from a stationary receiver and have a maximum Doppler shift of approximately s KHz/ 10 , we can calculate the maximum phase deviation per code period as below: s chipsfff f CAc c CA / 5.6m ax = (7) Where m axCAf is maximum Doppler shift on carrier, cf is carrier frequency and CAf is the code chipping rate. So to avoid jerky corrections due to noise, we have averaged over twenty code periods, which should be enough to calculate the phase deviati on before it reaches a full chip. The worst c hip deviation we can obtain per twenty codes is 0.02*6.5 = 0.13 chips. IV. BRIEF OVERVIEW OF EDUCATIONAL SOFTWARE Educational software for the entire baseband signal processing of Galileo E5 Signal is developed in Matlab usi ng Graphical User Interface Develop ment Environment (GUIDE). The main purpose of developing software application is to arrange data in one place for learning purposes. This standalone application can also be used in the classrooms during the lectures o f satellite communication based modules . The first step in the application is to set the value of number of correlators and threshold. A threshold is used to set a point where any particular PRN can be acquired. Number of correlators is used to provide the accuracy in the data. However, any lar ge value of correlators will take 10 -15 mints to process the entire baseband signal processing. Fig. 5. Initial layout of GUI at 80MHz Therefore, a range have been set [1 -10] for both the threshold and number of correl ators between. Initially the values are set 1 and 6 respectively for both number of correlators and threshold. The educational software works in the following process: 1. Set number of correlators and threshold 2. Press run button to start the acquisition and tracking In order to view differen t plots of acquisition and tracking there are separate radio buttons available in the application. Fig 5 shows the ACF of Galileo E5 signal at 80 MHz in the acquisition panel. For education purposes in the classroom of s atellite communications the student s can understand the PSD of AltBOC, generation of sub -carrier, working of both frequency and code search, tracking channels in the form of early, prompt and late codes and extraction of navigation data in the form of E5a -I or E5b -I. V. RESULTS Most conspicuou sly, ACF of AltBOC is achieved at 80 MHz and higher side peaks of 120 MHz could be compared with Fig. 5. We have sampled both satellite baseband raw data and the AltBOC modulation at the same frequency, there will be high er offset every time due to a misma tch in AltBOC. The only way to obtain perfect result is to remove offset at the time of tracking, which is shown in the Fig. 6 of sub -carrier. Once the correlator and threshold is set then acquisition can be performed. F or the above -mentioned frequency, available from the German company, we have acquired PRN 17. Code search is available for 7.8 MHz. Similarly, for frequency search at 7.8 MHz students can learn the availability of PRN 17. Once the acquisition is successful ly performed then tracking can be performed in the GUI. 0 0.5 1 1.5 x 10-7-1-0.500.51subcarrier AS2 samples/value seconds0 0.5 1 1.5 x 10-7-1-0.500.51subcarrier AP2 samples/value seconds 0 0.5 1 1.5 x 10-7-1-0.500.51T/4 delayed subcarrier AS2 samples/value seconds0 0.5 1 1.5 x 10-7-1-0.500.51T/4 delayed subcarrier AP2 samples/value seconds Fig. 6. Generation of the sub -carrier Fig.7. GUI based PRN 17 is Visible in Code Search The complete acquisition in the form of code phase and frequency search can be observed from the Fig 7 and 8 respectively. Track ing channels (early, prompt and late) can be seen from the Fig 11. The Matlab application shows that the data channels for late and early gives only delayed and forward replica of them. Whereas the extraction of data chan nel E5a -I can be retrieved from the prompt channel. Fig 9 shows the navigation data extraction for a complete second. The same can be seen in the ACF form in the GUI. Similarly, E5b-I navigation data can be extracted from the application. The power spect ral density of the E5 signal can al so be ideally observed from the Fig.10. The only difference between the in -phase and quadrature PSD is that of amplitude spike. Fig 8. GUI based PRN 17 is Visible in Frequency Search 50 60 70 80 90 100 110 120 130 140 150-4-2024x 104 Time(ms)Prompt data extraction of selected interval 0 100 200 300 400 500 600 700 800 900 1000-505x 104 Time(ms)Navigation Data Fig. 9. Navigation data extractio n for 1 sec as well as on small sel ected interval Students are expected to change the threshold and correlators to observe the change in the behavior of the receiver structure of E5. Phase lock loop works fine with the data provided. The only problem occu rs when the acquisition is not clos e enough to the true carrier frequency. This is overcome by performing a linear fine grained (% Hz) frequency search at the fix ed code phase that was obtained from the acquisition process. -8 -6 -4 -2 0 2 4 6 8 x 107012x 10-5 Real PSD IdealIn-Phase hertzs -8 -6 -4 -2 0 2 4 6 8 x 107012x 10-5 Imaginary PSD IdealQuadrature hertzs-8 -6 -4 -2 0 2 4 6 8 x 107012x 10-5 E5 PSD Ideal Fig. 10. Power Spectral Densi ty of E5 signal -20 -15 -10 -5 0 5 10 15 2000.20.40.60.81 SamplesACF Early Prompt Late 10 20 30 40 50 60 70 80 90 100 110-1.5-1-0.500.51x 105 Time [msec] Early Prompt Late Fig. 11. Tracking channels with ACF of early, prompt and late VI. CONCLUSION A unique method has been proposed for the baseband signal processing of Galileo E5 AltBOC using similar approaches used as in GPS. However, the implementation of c ode tracking provides efficient nov el based technique to keep track of code only by directly sending prompt code in the code loop discriminator. The entire baseband signal processing is performed in one single standalone software application to provide fea sibility to researchers and instruc tors for learning Galileo E5 AltBOC signal. More, importantly, software application provides each step involves in the design of complex receiver structure of Galileo E5 signa l during the classrooms. The difference in th e frequency provides higher side pe aks for the ACF of acquisition but with help of fixed thresh old the problem was resolved.