1
0
mirror of https://github.com/gnss-sdr/gnss-sdr synced 2024-12-04 23:40:04 +00:00
GNSS-SDR, an open-source software-defined GNSS receiver.
Go to file
Javier Arribas 34d1c5110b GNSS-SDR Major changes:
New tracking libraries:
        -  tracking_discriminators: Library with a set of code tracking and carrier tracking discriminators that is used by the tracking algorithms. (fully documented, including math algorithms using doxygen!)
        -  tracking_2rd_DLL_filter: Class that implements 2 order DLL filter for code tracking loop.
        -  tracking_2rd_PLL_filter: Class that implements 2 order PLL filter for carrier tracking loop.
        -  tracking_FLL_PLL_filter:  Class that implements hybrid FLL and PLL filter for tracking carrier loop.
        -  CN_estimators: Library with a set of Carrier to Noise estimators and lock detectors. (fully documented, including math algorithms using doxygen!)

    Tracking:
        - gps_l1_ca_dll_pll_tracking: The existing DLL + PLL tracking module, which is the K.Borre and D.Akos one, is now completely re-factored. Now uses the above described libraries.
        - gps_l1_ca_dll_fll_pll_tracking: This is a brand new tracking module, which implements the FLL assisted PLL described in Kaplan (2nd edition). (also documentedwith references)

    Configuration options:
        - The following tracking parameters are added:
            ;######### TRACKING CONFIG ############
            ; Tracking.implementation=GPS_L1_CA_DLL_PLL_Tracking or GPS_L1_CA_DLL_FLL_PLL_Tracking 
            Tracking.implementation=GPS_L1_CA_DLL_FLL_PLL_Tracking
            ;PLL filter bandwidth in Hz.
            Tracking.pll_bw_hz=50.0;
            ;DLL filter bandwidth in Hz.
            Tracking.dll_bw_hz=2.0;
            ;FLL filter bandwidth in Hz.
            Tracking.fll_bw_hz=50;
            ;filter order: choice between 2 or 3 at this moment, only for FLL assisted PLL
            Tracking.order=2;
            ;Correlator space in chips units
            Tracking.early_late_space_chips=0.5;

Other files have also been modified with minor changes to adapt to new modules or minor bug fixes.


git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@80 64b25241-fba3-4117-9849-534c7e92360d
2011-11-22 17:21:54 +00:00
conf GNSS-SDR Major changes: 2011-11-22 17:21:54 +00:00
docs moving things to trunk 2011-10-01 18:45:20 +00:00
src GNSS-SDR Major changes: 2011-11-22 17:21:54 +00:00
AUTHORS git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@74 64b25241-fba3-4117-9849-534c7e92360d 2011-10-01 19:23:34 +00:00
COPYING moving things to trunk 2011-10-01 18:45:20 +00:00
Doxyfile moving things to trunk 2011-10-01 18:45:20 +00:00
jamroot.jam GNSS-SDR Major changes: 2011-11-22 17:21:54 +00:00
README IT++ dependency and build instructions added to README 2011-10-31 09:51:09 +00:00

How to set up the compilation environment for Ubuntu 9.10 and 10.04

- Download GNU Radio 3.3.0 from ftp://ftp.gnu.org/gnu/gnuradio
- Compile and install following the instructions at http://gnuradio.org/redmine/wiki/1/UbuntuInstall
- Install bjam with the command 'sudo apt-get install bjam'
- Install Boost.Build with the command 'sudo apt-get install boost-build'
- Add the system variable GNURADIO_330_ROOT with the location of the sources of gnuradio-3.3.0 
- Download gtest-1.4.0.tar.gz from http://code.google.com/p/googletest.
- Unpack gtest-1.4.0.tar.gz into some folder.
- From the folder containing gtest build the libraries and install them:
	- GTEST$ ./configure
	- GTEST$ make
	- GTEST$ make check
	- GTEST$ sudo make install
- Add the following line to your .bashrc:
	- export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/usr/local/lib
- Download glog-0.3.0.tar.gz from http://code.google.com/p/google-glog.
- Unpack glog-0.3.0.tar.gz into some folder.
- From the folder containing glog, build and install the libraries:
	- GLOG$ ./configure
	- GLOG$ make
	- GLOG$ sudo make install
	NOTE: THE LOG FILES ARE STORED BY DEFAULT /TMP/
- Download gflags-1.3.tar.gz from http://code.google.com/p/google-gflags.
- Unpack gflags-1.3.tar.gz into some folder.
- From the folder containing gflags, build the libraries and install them:
	- GFLAGS$ ./configure
	- GFLAGS$ make
	- GFLAGS$ sudo make install

- (31/10/2011) Download, compile and install the IT++ library, from http://sourceforge.net/apps/wordpress/itpp/
	From the folder containing IT++, build and install the library:
		export CXXFLAGS="-DNDEBUG -O3 -pipe"    (*)
		./configure
		make
		make check
		sudo make install
	(*) For more information on the the specific compiler flags for your processor, go to http://itpp.sourceforge.net/devel/installation.html

(11/12/2010) GSL AND CBLAS ARITHMETIC

In order to compile the arithmetic tests, the GNU Scientific Library (GSL) library package is needed.
Install the ubuntu package with:

sudo apt-get install libgsl0ldbl


To build the project type call bjam from the project root folder.

PROFILING

In order to do profiling, you'll have to install google-perftools library.
- Download google-perftools-1.5.tar.gz from http://code.google.com/p/google-perftools.
- Unpack google-perftools-1.5.tar.gz into some folder.
- From the folder containing google-perftools, build and install the libraries:
	- PERFTOOLS$ ./configure
	- PERFTOOLS$ make
	- PERFTOOLS$ sudo make install
	
Once google-perftools is installed, you can use the script "profiler" which is placed 
in the root folder of MERCURIO sources. The script must be run as root since it makes use
of "nice". The result of the profiling are two files, mercurio.cpu.prof and mercurio.head.prof.0001.heap,
that contain the results for CPU and HEAP profiling. You can use google-perftools' script pprof
to analyze the recorded data.

(Sample of .bashrc configuration)

export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/usr/local/lib
export GNURADIO_330_ROOT=/home/gnss/sdr/gnuradio-3.3.0