1
0
mirror of https://github.com/gnss-sdr/gnss-sdr synced 2024-07-16 00:24:20 +00:00
Commit Graph

1403 Commits

Author SHA1 Message Date
Carles Fernandez
2f145e8f19 Add ability to log GPS dual freq (L1/L2C) observations 2016-10-29 17:15:04 +02:00
Carles Fernandez
5e24e3d486 Fixes CNAV message files 2016-10-29 12:41:51 +02:00
Carles Fernandez
25a57d5b88 Work on Rinex printer 2016-10-29 11:42:17 +02:00
Carles Fernandez
e746945a18 Remove unrequired variable 2016-10-27 08:26:25 +02:00
Carles Fernandez
85012b3d74 Improve handling of ORC library if present
This also allows to build a snap package
2016-10-23 11:12:13 +02:00
Carles Fernandez
67105d62b7 Avoid macro redefinitions 2016-10-16 13:01:53 +02:00
Carles Fernandez
def78e3098 Define prefetch macros even if volk ones were already included 2016-10-16 12:11:41 +02:00
Carles Fernandez
3cce2e8340 Make prefetching more portable
See https://github.com/gnuradio/volk/issues/97 and
https://gcc.gnu.org/onlinedocs/gcc/Other-Builtins.html#Other-Builtins
2016-10-16 11:31:42 +02:00
Carles Fernandez
a30bf16abf Some minor fixes for packaging
See https://github.com/gnuradio/volk/pull/100
2016-10-16 08:13:18 +02:00
Carles Fernandez
08f0a36075 Improve queue management gnss-sdr and in TTFF tests.
Always destroy queues when exiting
2016-10-03 17:43:06 +02:00
Carles Fernandez
3a10f3c26b Inform about TTFF 2016-10-02 01:55:48 +02:00
Carles Fernandez
db71c74898 Small fixes 2016-10-01 19:09:55 +02:00
Carles Fernandez
a2eaab884e Add sysV queue to the GPS PVT block 2016-10-01 11:03:40 +02:00
Carles Fernandez
2b5ac76f8a Add NEON protokernel to volk_gnsssdr_32f_index_max_32u kernel 2016-09-22 20:05:48 +02:00
Carles Fernandez
8ba309d92d Add AVX and unaligned protokernels 2016-09-20 00:02:03 +02:00
Carles Fernandez
438ba45c16 Fix acquisition with rata rates higher than 16 Msps in 4ms code periods
while not requiring a very recent version of VOLK
2016-09-19 09:06:40 +02:00
Carles Fernandez
7e0e99dc4b Add kernel volk_gnsssdr_32f_index_max_32u
This is a copy of VOLK's volk_32f_index_max32u. It allows acquisition
with rata rates higher than 16 Msps when working with 4ms code periods,
while not requiring a very recent version of VOLK
2016-09-19 01:32:30 +02:00
Cillian O'Driscoll
8d8249247f Alternative fix for issue #31
Rather than changing the index type to uint16_t, I think it would be
better to use the volk_32f_index_max32* functions instead of the 16 bit
counterparts. This ensures backwards compatibility (the index was
previously 32 bit, even if the function name indicated that it was 16
bit) and also, for FFT acquisition we may encounter large FFTs with more
than 65 535 points
2016-09-18 19:00:57 +02:00
Carles Fernandez
fd31559b68 Fix header guard 2016-08-19 20:25:13 +02:00
Carles Fernandez
24e62c4e4e Make use of volk_gnsssdr_malloc, volk_gnsssdr_free
instead of volk_malloc, volk_free (which are missing from the volk
version distributed by ubuntu 14.04). Fix the include guard in
volk_gnsssdr_malloc.h 
Thanks to @hoernchen
2016-08-18 14:17:02 +02:00
Carles Fernandez
04a16055ff Revert wrong commit 2016-08-16 21:18:24 +02:00
Carles Fernandez
3abe944877 Fix 16-bit complex resampler 2016-08-15 12:03:15 +02:00
Carles Fernandez
838e643d51 Consume all samples in each iteration 2016-08-13 18:28:05 +02:00
Carles Fernandez
10cd79591b Add warning if sample rates are not consistent 2016-08-13 17:25:07 +02:00
Carles Fernandez
43862991e9 Fix error in documentation 2016-08-13 12:30:28 +02:00
Carles Fernandez
7630688957 Fix profile update reading end of lines 2016-08-12 21:31:04 +02:00
Carles Fernandez
12739fccdd Merge remote-tracking branch 'cf/tong' into next 2016-08-11 13:51:53 +02:00
Carles Fernandez
2499946514 Fix correlator spacing 2016-08-11 13:51:14 +02:00
Carles Fernandez
2a2344d501 Add maximum number of dwells in the Tong algorithm 2016-08-11 13:13:30 +02:00
Carles Fernandez
e4080b50d8 Remove unused variable 2016-08-08 12:56:14 +02:00
Carles Fernandez
6a46e05350 Fix VOLK_GNSSSDR figure 2016-08-06 10:57:40 +02:00
Carles Fernandez
ce16f25296 Remove unused parameters 2016-08-05 18:47:34 +02:00
Carles Fernandez
b36773edf4 Fix bug in correlator spacing 2016-08-03 17:45:54 +02:00
Carles Fernandez
7460176808 Fix implementation string 2016-08-03 17:38:38 +02:00
Carles Fernandez
0d74214bfa Remove unused line 2016-08-03 17:38:16 +02:00
Carles Fernandez
a416707c50 Remove unused line 2016-08-03 17:37:44 +02:00
Carles Fernandez
44a5ddb5c1 Remove unused line 2016-08-03 17:37:14 +02:00
Carles Fernandez
05632aa180 Make it work in Ubuntu 14.04 LTS 2016-07-15 04:48:11 +02:00
Carles Fernandez
0d448e8857 Port templates from python-cheetah to python-mako
python-mako will be included as a dependency in GNU Radio 3.8 (see
https://github.com/gnuradio/gnuradio/pull/303). Changes following
https://github.com/gnuradio/volk/pull/94
2016-07-15 04:34:49 +02:00
Carles Fernandez
ed0654492d Remove repeated sentence 2016-07-06 21:53:42 +02:00
Carles Fernandez
e4b0070e9a Add volk_gnsssdr-config-info to the list of generated executables 2016-07-06 20:25:39 +02:00
Carles Fernandez
f3df860005 Starting 0.0.8git 2016-07-04 17:39:33 +02:00
Carles Fernandez
09a7eab397 Bump version number 2016-07-04 17:05:53 +02:00
Carles Fernandez
2374cb152c Add CMake hint
See
78c8bc4a0e
2016-07-02 20:10:18 +02:00
Carles Fernandez
e6b62b8399 add --alignment and --malloc options to volk_gnsssdr-config-info
See
06ef4f42c7
2016-07-02 19:54:05 +02:00
Carles Fernandez
cf53f86aea use GLIBCXX11 ABI
This should enable builds with GCC4 that link against libraries
like boost which were built with GCC5. See
e5fec2aaac
2016-07-02 19:41:15 +02:00
Carles Fernandez
512e2992e9 Document ENABLE_PROFILING option 2016-07-02 19:24:48 +02:00
Carles Fernandez
8cdcbb17d1 Fix typo 2016-07-02 19:14:05 +02:00
Carles Fernandez
d92b3598d7 Add option to launch volk_gnssssdr_profile after build 2016-07-02 18:54:39 +02:00
Carles Fernandez
0ddea14c57 Add automatic profiling after make 2016-07-02 13:34:00 +02:00
Carles Fernandez
a0bc6d7472 Don't override the BOOST_ROOT environment variable 2016-07-02 12:02:13 +02:00
Carles Fernandez
f180139968 Fix the CMake-based check for posix_memalign 2016-07-02 12:00:30 +02:00
Javier
6cdca3b269 cuda multicorrelator bug correction 2016-06-17 17:35:19 +02:00
Javier Arribas
c8d7a607f8 Adding CPU and GPU multicorrelators unit tests 2016-06-17 12:48:31 +02:00
Carles Fernandez
81093e3d6b Remove firmware and drivers folders
Now drivers have their own repo at https://github.com/gnss-sdr/gr-gn3s
and https://github.com/gnss-sdr/gr-dbfcttc
2016-06-09 19:10:24 +02:00
Carles Fernandez
2f339d2ee7 fix error 2016-05-31 21:08:53 +02:00
Carles Fernandez
2abb774f6e fix error 2016-05-31 21:06:28 +02:00
Carles Fernandez
ef6c5dd7bb fix errors 2016-05-31 21:03:33 +02:00
Carles Fernandez
ce04d6889c fix error 2016-05-31 20:58:59 +02:00
Carles Fernandez
c8f71204fc Make kernels compatible with c98 standard
so the library can be built by more compilers
2016-05-31 20:56:19 +02:00
Carles Fernandez
0aa980a9a1 Merge branch 'michaelld-fix_volk_max_API_index_uint16_t' into next
Fix issue related to the change in the VOLK API
2016-05-29 21:26:04 +02:00
Carles Fernandez
a826215778 Fix issue about the change in the VOLK API 2016-05-29 21:18:41 +02:00
Michael Dickens
99abf76dd4 Fix usage of volk_32f_index_max*, first argument, to be uint16_t* as required by the Volk API. 2016-05-27 22:51:34 -04:00
Carles Fernandez
5a73b4e047 Improve package reproducibility
Packages using CMake often use file(GLOB ...) to retrieve a list of
source files. As this is based on readdir(), the resulting file list
is unsorted. A common use case is to pass this list directly to
add_executable or add_library. But as the order is unpredictable, the
binaries are not reproducible (because the order in which the objects
are linked will vary).

See https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=824263
2016-05-23 19:51:59 +02:00
Carles Fernandez
896d6bc045 Tag library version with git 2016-05-21 01:09:17 +02:00
Carles Fernandez
16c4bb677e Fix building when using PyBOMBS 2016-05-21 01:06:46 +02:00
Carles Fernandez
daee8de0e0 Fix bug in AVX2 puppet 2016-05-21 00:42:21 +02:00
Carles Fernandez
19f46c2cd9 Bump version number to v0.0.7
preparing v0.0.7 release and minor code cleaning
2016-05-13 19:17:56 +02:00
Luis Esteve
7ea560f3f7 Fix bug un pcps_acquisition_cc::set_local_code
Assign the length of the code correctly to the FFT

Resolves: #25
2016-05-13 05:16:59 +02:00
Luis Esteve
0f599a1e6a Fix bug in Pfa assignation in GpsL1CaPcpsAcquisition 2016-05-13 05:00:00 +02:00
Luis Esteve
0671ec6b28 Add cshort implementation to GalileoE1PcpsAmbiguousAcquisition 2016-05-13 01:51:14 +02:00
Luis Esteve
2780247cda Add forgotten options to GpsL2MPcpsAcquisition 2016-05-13 00:21:27 +02:00
Luis Esteve
2e6bcdbdd2 Add cshort implementation to GpsL2MPcpsAcquisition 2016-05-13 00:07:21 +02:00
Luis Esteve
77b7ac24d2 Remove unused variables in GpsL1CaPcpsAcquisition 2016-05-12 23:37:02 +02:00
Luis Esteve
6a0cbd785d Improve documentation in GpsL2MPcpsAcquisition 2016-05-12 23:37:02 +02:00
Luis Esteve
7be4585136 Fix a minor bug in GpsL1CaPcpsAcquisition 2016-05-12 23:22:42 +02:00
Carles Fernandez
d5d80395ba Update volk_gnsssdr_profile manpage 2016-05-11 19:20:01 +02:00
Luis Esteve
fd5cd42b9a Correct minor bug in pcps acquisition blocks
Change the initialization of max_dwells in pcps acquisition adpaters
due its value is forced to be 1 in gr_block constructor if boolean
"bit_transition_flag" is set to TRUE

Resolves: #24
2016-05-11 01:39:11 +02:00
Carles Fernandez
94855ffa06 Attempt to generate hybrid GPS L1 / Galileo E1 RTCM messages 2016-05-10 22:16:50 +02:00
Carles Fernandez
fc7d3118c5 Fix computation of time in the hybrid Galileo/GPS solution 2016-05-10 21:19:09 +02:00
Carles Fernandez
fda0b93d83 Fix bug in hybrid PVT
The block was not correctly handling satellites from the two constellations, causing problems when receiving two satellites (one GPS and one Galileo) with the same PRN number
2016-05-10 11:18:41 +02:00
Carles Fernandez
b1188e9c92 Set configuration of RTCM messages rate 2016-05-09 19:28:02 +02:00
Carles Fernandez
af56520798 Fix Galileo MSM message numbers 2016-05-09 19:24:29 +02:00
Carles Fernandez
f1a5708891 Remove unused queue in Signal Conditioners 2016-05-09 18:53:48 +02:00
Carles Fernandez
953bc4686e Remove unused queue in input filters and data type adapters 2016-05-09 18:44:58 +02:00
Carles Fernandez
3bd59ec83e Remove unused queue from acquisition blocks
Now replaced by GNU Radio's message passing system
2016-05-09 16:44:54 +02:00
Carles Fernandez
0acb48c0b5 Remove unused queue from tracking blocks
Now replaced by GNU Radio block's message passing system
2016-05-09 11:51:42 +02:00
Carles Fernandez
7a6952f8b6 Remove unused queue
Now replaced by GNU Radio block's message passing system
2016-05-09 10:27:42 +02:00
Carles Fernandez
dcc9b6ed8c Remove compiler flags from MSVC builds
See https://github.com/gnuradio/volk/pull/78
2016-05-08 08:34:35 +02:00
Carles Fernandez
50c16c9129 Remove unused variables 2016-05-08 08:31:38 +02:00
Carles Fernandez
cdbba89996 Expose Galileo RTCM messages rate to the PVT configuration 2016-05-07 23:15:17 +02:00
Carles Fernandez
818e09536b Exposing RTCM message rate to the configuration 2016-05-07 12:22:40 +02:00
Carles Fernandez
9cbb88bc9f TCP port and RTCM station ID are now configured by the printer
Merge branch 'next' of git+ssh://github.com/gnss-sdr/gnss-sdr into next
2016-05-06 21:00:08 +02:00
Luis Esteve
7403fec396 Eliminate redundancy in doppler_max initialization
Eliminate the initialization of Acquisition variable "doppler_max" in
Channel (acq_->set_doppler_max(doppler_max);) because this
initialization is done now in Acquisition adpaters
2016-05-06 19:30:36 +02:00
Luis Esteve
bfd86f8792 Changes initialization of acquisition variables
Rename "shift_resolution_" variable in some Acquisition adapters to
"doppler_max_" according to its meaning and change "ifreq" to "if"
because the value was not properly read. Delete unused variables.

Resolves: #23
2016-05-06 19:04:55 +02:00
Luis Esteve
3b2678daf3 Improve docummentation 2016-05-06 10:41:29 +02:00
Carles Fernandez
84911043b4 Documenting kernels constraint 2016-05-06 08:25:04 +02:00
Carles Fernandez
fd81154b95 Smaller figure 2016-05-05 20:37:32 +02:00
Carles Fernandez
f3f2e9458b Adding caption and Doxygen path 2016-05-05 20:36:22 +02:00
Carles Fernandez
0881f19a89 Updating list of kernels 2016-05-05 19:40:34 +02:00
Carles Fernandez
1a1f0f9abe Add reference to ION GNSS+ 2016 paper 2016-05-05 19:19:53 +02:00
Carles Fernandez
1b607751ef Add graphic example of VOLK_GNSSSDR usage 2016-05-05 18:59:02 +02:00
Carles Fernandez
99d6ce9ba7 Remove line that was causing random fails in parallel compilations
in Mac OS X
2016-05-05 18:02:03 +02:00
Carles Fernandez
a09f3e138f Remove unused variable 2016-05-04 20:29:34 +02:00
Carles Fernandez
97f4f24c88 Enable RTCM messages in Galileo E1 receiver 2016-05-04 19:53:53 +02:00
Carles Fernandez
8fe691dc76 Fix computation of lock time
LLI still not implemented, values will be incorrect upon first loss of
lock.
2016-05-04 19:18:34 +02:00
Carles Fernandez
95f75d407e Fix phase range rate computation in RTCM messages 2016-05-03 14:35:43 +02:00
Javier Arribas
3d2e72c790 Re-enabling the GPS L1 warm start ephemeris assistance stored in XML file 2016-05-03 12:34:38 +02:00
Carles Fernandez
eb8539a725 fix TOW formatting in RTCM messages 2016-05-03 11:01:10 +02:00
Carles Fernandez
b1740460fd print ephemeris of all tracked satellites in RTCM messages 2016-05-03 00:56:08 +02:00
Carles Fernandez
831cc75153 Remove tabs from the source code 2016-05-02 23:46:30 +02:00
Carles Fernandez
fbfc4a28ba Improve memory management
The blocks are now always managed by smart pointers instead of raw pointers
2016-05-02 17:26:32 +02:00
Carles Fernandez
ad16c5ab35 some test fixes 2016-05-01 12:39:40 +02:00
Carles Fernandez
c6eec90849 adding zlib license text 2016-04-29 08:03:20 +02:00
Carles Fernandez
25e5c744d7 More consistent naming
now volk_gnsssdr_16ic_xn_resampler_16ic implements the same resampler
than volk_gnsssdr_32fc_xn_resampler_32fc. The old one, which is faster
in SSE implementations at the expense of some constraints on the inputs
(to be documented), is now named
volk_gnsssdr_16ic_xn_resampler_fast_16ic
2016-04-28 20:12:27 +02:00
Carles Fernandez
4c4f6c1def Commenting out messages on standard output
which interferes with programs trying to use it for legitimate purposes.
2016-04-27 21:00:59 +02:00
Carles Fernandez
e102de53fc fixing lintian warning spelling-error-in-binary 2016-04-26 20:06:49 +02:00
Carles Fernandez
59e2e61cae Merge branch 'next' of git+ssh://github.com/gnss-sdr/gnss-sdr into next 2016-04-26 18:54:32 +02:00
Carles Fernandez
ad9dd71359 code cleaning 2016-04-25 20:34:56 +02:00
Carles Fernandez
59b6bf18c5 code cleaning 2016-04-25 20:34:27 +02:00
Carles Fernandez
36ab6a0e67 merging text fixes 2016-04-25 16:48:01 +02:00
Carles Fernandez
b2cc18bfa5 Adding AVX protokernel 2016-04-23 16:31:41 +02:00
Carles Fernandez
c6359c3313 fix in documentation 2016-04-23 16:30:36 +02:00
Carles Fernandez
0f2a08f49d Merge branch 'next' of git+ssh://github.com/gnss-sdr/gnss-sdr into next
# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
2016-04-22 18:41:24 +02:00
Javier Arribas
60b6b98c52 Bug fix in L2CM CNAV message decoder. The decoder is still experimental. 2016-04-22 16:49:12 +02:00
Javier Arribas
0a5573f666 several receiver configuration mechanism simplifications and several bug fixes. Work in progress 2016-04-21 18:54:08 +02:00
Javier Arribas
5cdd6b2cc9 Re-enabling the GPS L1 warm start ephemeris assistance stored in
XML file. Now GNSS-SDR is able to load auto-stored ephemeris from
previous runs to speed up the position fix.
2016-04-20 12:58:54 +02:00
Javier Arribas
853e314bf0 Split the message collector block in a separated object inside channel 2016-04-18 14:17:09 +02:00
Javier Arribas
0f80ce0159 Channel internal message queue is replaced by the asynchronous GNURadio
message system. Removing the deprecated channel internal queue and its
references. Some tests that are using the old channel queue are disabled
in this version
2016-04-15 16:33:41 +02:00
Carles Fernandez
2b7175083f Merge branch 'next' of git+ssh://github.com/gnss-sdr/gnss-sdr into next 2016-04-13 18:26:19 +02:00
Carles Fernandez
4a1812197b Deleting unnecessary contructors when posting messages
and some code formatting
2016-04-13 17:50:16 +02:00
Javier Arribas
bd60379753 Removed unused queues in telemetry decoders 2016-04-13 17:18:29 +02:00
Javier Arribas
6b45d4019c removed unused queues in observables blocks 2016-04-13 17:02:33 +02:00
Javier Arribas
638fbf7bd8 Removing unused queues in PVT 2016-04-13 16:55:14 +02:00
Javier Arribas
6ba8cea5f4 removed unused queue from PCPS acquisition constructors 2016-04-13 16:45:17 +02:00
Javier Arribas
7560a158f0 More telemetry global queues migration to GNURadio asynchronous messages
and
some
code cleaning
2016-04-13 16:19:15 +02:00
Javier Arribas
b56183f93b Replacing Galileo E1, SBAS, and GPS L2C telemetry shared queues and maps
with GNURadio asynchronous messages (TLM -> PVT)
2016-04-12 17:29:16 +02:00
Javier Arribas
588864e19e Replacing GPS telemetry shared queues and maps with GNURadio
asynchronous messages (TLM -> PVT)
2016-04-12 15:28:58 +02:00
Carles Fernandez
414eaddb42 Fixing resamplers
Under some circumstances (i.e. negative Doppler) it could cause a
segmentation fault. It is now fixed for all protokernels.
2016-04-12 01:05:47 +02:00
Javier Arribas
fc6fdc277c Fix incorrect correlator local code length in Galileo E5a tracking 2016-04-11 10:46:56 +02:00
Carles Fernandez
fbaa3276ce minor cleaning 2016-04-10 10:58:39 +02:00
Carles Fernandez
4d072833c5 minor cleaning 2016-04-10 10:29:25 +02:00
Carles Fernandez
a10ca1a840 Filling the Signal field in all cases 2016-04-10 10:18:42 +02:00
Carles Fernandez
ad5d509250 deleting unrequired include 2016-04-08 18:26:53 +02:00
Carles Fernandez
2e86037279 fix typo in documentation 2016-04-08 18:25:50 +02:00
Carles Fernandez
2cf82bef1d fix typo in documentation 2016-04-08 18:25:24 +02:00
Carles Fernandez
045d384061 small fixes and cleaning 2016-04-08 15:10:46 +02:00
Carles Fernandez
b8f984292a Update tests with the new tracking blocks, removing old ones 2016-04-08 11:46:39 +02:00
Javier Arribas
5aebc90ff7 Fixing some initialization problems in tracking correlators that
could cause random segmentation faults.
2016-04-07 19:41:22 +02:00
Javier Arribas
1c2f897655 Refactoring the gnss_synchro member initializations and minor bug fixes. 2016-04-07 18:25:45 +02:00
Carles Fernandez
9cb60ec948 fixing resampler 2016-04-07 12:42:24 +02:00
Carles Fernandez
a32aaa15f4 Merge branch 'next' of https://github.com/gnss-sdr/gnss-sdr into next 2016-04-07 12:03:46 +02:00
Carles Fernandez
1aa9a9fd1e Fixing resampler 2016-04-07 12:03:05 +02:00
Javier Arribas
6a3258a73f Bug fix in cpu_multicorrelator 2016-04-07 12:02:25 +02:00
Javier Arribas
150aceb404 Process optimization: Moved the receiver stdout status output
(a.k.a seconds counter) from the tracking blocks to PVT block
2016-04-06 17:33:52 +02:00
Javier Arribas
98bfb7d801 Removing more unused parameters warnings using
the __attribute__((unused)) pre-compiler directive
2016-04-06 16:27:47 +02:00
Javier Arribas
b4e8966691 Removing the unused Output_filter block from the gnss_sdr flowgraph 2016-04-06 16:12:06 +02:00
Javier Arribas
203e998efc Adding __attribute__((unused)) in tracking GNURadio work functions to
disable unused variable warnings without wasting any extra CPU cycle
2016-04-06 15:04:52 +02:00
Javier Arribas
9db0990adc Deleted obsolete DLL_FLL_PLL GPS tracking. Deleted obsolete correlator.h
and migrated all tracking in order to use the newer and optimized
cpu_multicorrelator. Code simplification and code cleaning
2016-04-06 14:58:18 +02:00
Javier Arribas
eac888067f Deleted obsolete DLL_FLL_PLL GPS tracking. Deleted obsolete correlator.h and migrated all tracking in order to use the newer and optimized cpu_multicorrelator. Code simplification and code cleaning 2016-04-06 14:57:44 +02:00
Carles Fernandez
970ba3feb8 fix typo 2016-04-03 09:42:39 +02:00
Carles Fernandez
9ebbb3b460 fix kernel
This fixes a runtime error, since VOLK functions are static and a
segmentation fault was caused when aligned and unaligned versions were
called concurrently.
2016-04-03 09:07:10 +02:00
Carles Fernandez
a5fb34c800 Fixing NEON proto-kernels 2016-04-03 02:27:54 +02:00
Carles Fernandez
57107cf86d Introducing a new resampler kernel for comparison 2016-04-01 12:41:00 +02:00
Carles Fernandez
7658f64527 adding unaligned protokernels 2016-04-01 10:36:52 +02:00
Carles Fernandez
5841258a36 bug fix 2016-04-01 01:51:58 +02:00
Carles Fernandez
99ceb30a0e Fixes related to the MSVC compiler 2016-04-01 01:50:09 +02:00
Carles Fernandez
684073bef6 adding NEON puppet 2016-04-01 01:47:51 +02:00
Carles Fernandez
43330588a8 adding include for neon intrinsics 2016-04-01 01:25:57 +02:00
Carles Fernandez
f6cfc64cf7 adding NEON protokernel 2016-04-01 01:21:35 +02:00
Carles Fernandez
a71b118170 Workaround for problems with orc 2016-03-31 21:35:05 +02:00
Carles Fernandez
817139ba50 ask for aligned memory in a more portable way 2016-03-31 19:39:37 +02:00
Carles Fernandez
3d733a5140 initializing all members in the constructor 2016-03-31 00:27:33 +02:00
Carles Fernandez
60cc057eb6 Fix defects detected by Coverity scan 2016-03-30 23:49:53 +02:00
Carles Fernandez
36660e05ca Removing unused class (nco_lib, replaced by volk kernels) 2016-03-30 22:37:43 +02:00
Carles Fernandez
806fdcdade code cleaning 2016-03-30 22:28:13 +02:00
Carles Fernandez
4f3273f296 code cleaning, removing tabs 2016-03-30 22:27:12 +02:00
Carles Fernandez
9eb175fb0e Adding new resampler kernel and integrating it in the multicorrelator 2016-03-30 21:33:43 +02:00
Carles Fernandez
70a2c5837c code cleaning 2016-03-30 21:09:38 +02:00
Javier Arribas
b2034896e1 Merge branch next_gps_20ms_corr with next. Removing obsolete code and code cleaning 2016-03-30 15:03:25 +02:00
Javier Arribas
d15066fda6 Bug fix in Hybrid PVT date/time computation. Removed the obsolete GPS L1 Optim tracking block 2016-03-29 18:40:00 +02:00
Javier Arribas
e37824787e Adding RX clock offset [s] storage in LS PVT class member 2016-03-29 18:12:59 +02:00
Carles Fernandez
1b9516fa8b Integrating the new volk kernel in the multiple correlator (32 bits)
and some cleaning
2016-03-28 16:35:55 +02:00
Carles Fernandez
d8b45d9b79 fix wrong storeu by store 2016-03-28 13:51:51 +02:00
Carles Fernandez
78372ba2e9 adding _mm256_zeroupper() at the end of AVX and AVX2 protokernels
This avoids penalties for state transitions from 256-bit x86-AVX
instructions to x86-SSE instructions
2016-03-28 11:58:01 +02:00
Carles Fernandez
b1d99d58ec fix typo in puppet initialization
The AVX2 protokernel achieves an acceleration factor x13.
2016-03-28 10:14:32 +02:00
Carles Fernandez
26e68e89f2 adding AVX2 protokernels (aligned and unaligned) 2016-03-28 09:42:55 +02:00
Carles Fernandez
7c1f5723e6 remove unneeded stores in NEON protokernels 2016-03-27 13:00:04 +02:00
Carles Fernandez
d113835073 adding new kernel: volk_gnsssdr_32fc_x2_rotator_dot_prod_32fc_xn
Including generic, SSE3 (aligned and unaligned), AVX (aligned and
unaligned) and NEON protokernels.
2016-03-27 12:50:53 +02:00
Carles Fernandez
751764343c adding AVX2 protokerns
I haven't found a way to do the rotator part better than with SSE3. Only
the dot product takes real advantage of 256-bit registers. Even tough,
the gain with respect to SSE3 is about 12%.
2016-03-26 01:51:01 +01:00
Javier Arribas
500dc59516 Release candidate of the GPS L1 C/A telemetry decoder supporting variable tracking correlation length 2016-03-22 18:07:12 +01:00
Carles Fernandez
d987a04d42 adding AVX2 protokernels 2016-03-22 18:03:34 +01:00
Carles Fernandez
bd6c028ec4 bug fix
writing to the input pointer was having bad consequences (random fails
in other kernels)
2016-03-22 18:00:56 +01:00
Javier Arribas
0e47d97dec Adding a missing include in gnsssdr volk kernel library (volk_gnsssdr_16ic_x2_rotator_dot_prod_16ic_xn) 2016-03-21 16:07:16 +01:00
Carles Fernandez
b888573c3d Replacing the fxp_nco by the sincos kernel 2016-03-21 01:49:59 +01:00
Carles Fernandez
703de227a2 fix typo 2016-03-21 00:44:09 +01:00
Carles Fernandez
a908804b44 fix phase computation in the tail items of the NEON protokernel 2016-03-21 00:40:36 +01:00
Carles Fernandez
1983562496 The sincos kernel now accepts an initial phase 2016-03-21 00:38:08 +01:00
Carles Fernandez
485a405bab Adding new neon kernel and solving x86 issues
Managing memory with volk_gnsssdr instead of malloc and free. This seems
to solve runtime problems (segmentation faults) in i386 (32 bit)
architectures.
2016-03-20 13:11:53 +01:00
Carles Fernandez
883cf629d1 Adding new NEON protokernel
Try another strategy based on multiply-and-accumulate for the dot
product. In all SIMD protokernels, managing memory with
volk_gnsssdr_malloc and volk_gnsssdr_free instead of calloc and free
2016-03-20 12:23:45 +01:00
Carles Fernandez
9cb43ef84a Adding missing library link 2016-03-20 02:46:15 +01:00
Carles Fernandez
fa292961c1 Fix neon protokernel 2016-03-20 01:50:04 +01:00
Carles Fernandez
9c8fc9436e Adding and integrating sincos kernel 2016-03-20 01:45:01 +01:00
Carles Fernandez
2be266cc71 adding sincos kernel 2016-03-19 21:41:19 +01:00
Carles Fernandez
1703be7612 Removing optim_tracking 2016-03-18 20:28:27 +01:00
Carles Fernandez
c9ff9759cc Fixing some numerical problems 2016-03-18 19:46:18 +01:00
Javier Arribas
083350bd61 Refactoring of GPS L1 CA telemetry decoder. PVT is not yet fully tested 2016-03-18 17:36:29 +01:00
Javier Arribas
840bb1b9a3 Work on the telemetry decoder to support the variable-length correlator in GPS L1 CA tracking 2016-03-17 18:54:41 +01:00
Javier Arribas
2f61ad7c64 Added configuration option to customize the extension of the GPS L1 CA correlation length after bit synchronization (options are: [1,2,4,5,10,20] ms). Increasing resolution in CN0 estimator internal variables. 2016-03-16 17:32:20 +01:00
Javier Arribas
6c2f3d8f43 Bug fixes in GPS CA L1 20 extended correlator 2016-03-15 17:58:58 +01:00
Carles Fernandez
754e4436ee Revert "Experimental extended correlation for GPS L1 CA C_Aid tracking"
This reverts commit d664dc63b3.
2016-03-15 10:01:08 +01:00
Carles Fernandez
2cf1ea85af fix app name in help message 2016-03-13 12:07:40 +01:00
Carles Fernandez
87dc56e147 Using vector multiply-accumulate in NEON kernels
Aprox 10% of improvememnt
2016-03-12 21:47:35 +01:00
Carles Fernandez
f7c1c9ce43 Using multiply-accumulate in NEON 2016-03-12 19:30:00 +01:00
Carles Fernandez
c236c3ab67 Exploiting multiply-accumulate in NEON 2016-03-12 13:32:10 +01:00
Carles Fernandez
a93a01e9b1 prefetching data 2016-03-12 12:22:26 +01:00
Carles Fernandez
268f298fad More elegant workaround for 32-bit architecutres 2016-03-12 09:28:25 +01:00
Javier Arribas
6e076e8143 Fixing bugs in extended correlator for GPS L1 2016-03-11 18:32:56 +01:00
Carles Fernandez
d9c333c85f Improving documentation
Adding Doxygen documentation to VOLK_GNSSSDR kernels
2016-03-10 00:56:23 +01:00
Carles Fernandez
f6e713929a Adding documentation
Copied from VOLK, with some minor changes
2016-03-09 21:01:22 +01:00
Carles Fernandez
81f4eadb5b Deleting old, unused file 2016-03-09 19:35:56 +01:00
Carles Fernandez
243d66218b Change @VERSION by @LIBVER@ 2016-03-09 18:41:02 +01:00
Carles Fernandez
250375dbd3 Fix incorrect include when building with MSVC
Keeping track of VOLK's improvements, see
65539f2691
2016-03-09 18:23:19 +01:00
Carles Fernandez
9a92672905 Fix some CMake complaints
Keeping track of VOLK's improvements, see
434c994f21
2016-03-09 18:19:05 +01:00
Carles Fernandez
cf44382afe tmpl: cast windows regs to int* calling cpuidex
Keeping track of VOLK's improvements. See
b1b69e1ae3
2016-03-09 18:15:28 +01:00
Carles Fernandez
1e9a9d1a55 reverting wrong commit 2016-03-09 15:56:07 +01:00
Javier Arribas
14e109983a Added confguration option to set DLL and PLL bandwidth for 20 ms
extended correlation in C_Aid GPS L1 CA tracking (dll_bw_narrow_hz and
pll_bw_narrow_hz)
2016-03-09 15:29:00 +01:00
Javier Arribas
d664dc63b3 Experimental extended correlation for GPS L1 CA C_Aid tracking 2016-03-08 18:30:56 +01:00
Carles Fernandez
59011a7772 prefetching data in the cache 2016-03-07 19:57:22 +01:00
Carles Fernandez
aac79eb78a prefetching data in the cache 2016-03-07 19:25:12 +01:00
Carles Fernandez
a3d7683c85 Fix segmentation fault of volk_gnsssdr_profile in 32-bit architectures
Temporal deactivation of the unaligned protokernel of the multiple
correlator. It does not affect receiver's performance. The commit
includes other minor fixes.
2016-03-07 18:35:40 +01:00
Javier Arribas
36c8db4143 Code cleaning and removing deprecated tracking modules 2016-03-01 16:45:46 +01:00
Javier Arribas
1bafa1e447 Migration of Galileo E1 DLL PLL VEML tracking to use the optimized
cpu_multicorrelator class
2016-02-26 11:14:45 +01:00
Javier Arribas
b94253cb10 Bug fix and ammend last commit message: If DISABLED
(.Acquisition_1C.use_CFAR_algorithm=false) as an option in the
acquisition configuration, it allows setting more stable thresholds in
the presence of non-gaussian front-end noise (which is the usual
behavior of front-ends....)
2016-02-25 18:59:26 +01:00
Javier Arribas
f41a8ad6d9 Merge branch 'next' of https://github.com/gnss-sdr/gnss-sdr.git into next 2016-02-25 18:21:56 +01:00
Javier Arribas
4480c12d94 Added a non CFAR PCPS acquisition algorithm based on the estimation of
the post correlation noise floor. If enabled
(.Acquisition_1C.use_CFAR_algorithm=true) as an option in the
acquisition configuration, it allows setting more stable thresholds in
the presence of non-gaussian front-end noise (which is the usual
behavior of front-ends....)
2016-02-25 18:21:30 +01:00
Carles Fernandez
b24db5d77e Fix compilation with CMake 3.5
The CMake variables CMAKE_BINARY_DIR and CMAKE_SOURCE_DIR should never be set. Now CMake 3.5 prevents the user from doing that. They have been replaced by their counterparts PROJECT_BINARY_DIR and PROJECT_SOURCE_DIR
2016-02-25 15:26:32 +01:00
Carles Fernandez
9ae59c2009 Adding missing include 2016-02-22 10:07:08 +01:00
Carles Fernandez
11c84ed8ad Fixing kernels 2016-02-19 11:03:24 +01:00
Carles Fernandez
b2a654c646 fix typos 2016-02-14 15:06:45 +01:00
Carles Fernandez
1930f02c4f saving one register in neon implementation 2016-02-14 15:02:17 +01:00
Carles Fernandez
6156f4b3de some small fixes 2016-02-14 14:52:26 +01:00
Carles Fernandez
e8dfd860fb prefetching data in neon implementation
5% of average improvement
2016-02-13 14:26:40 +01:00
Carles Fernandez
a4e2ceb9c4 Adding neon implementation
Input data have been re-scaled to avoid saturation problems
2016-02-13 14:16:40 +01:00
Javier Arribas
d4d73e24c1 Fixing some includes in volk gnsssdr kernels 2016-02-12 12:36:08 +01:00
Carles Fernandez
e400885800 Fixing puppets
In kernels which output is shorter than num_points, memory is firtly
filled bu zeros and then the kernel is executed.
2016-02-11 21:15:46 +01:00
Javier Arribas
7f9dccd386 generic implementation simplification in volk gnsssdr kernel module 2016-02-11 17:57:03 +01:00
Carles Fernandez
7d0e3126aa Merge branch 'next' of git+ssh://github.com/gnss-sdr/gnss-sdr into next
# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
2016-02-09 19:43:07 +01:00
Javier Arribas
9bf4710679 Added a new volk_gnsssdr kernel that integrates both the phase rotator
and n dot_product kernels. Enabled in cpu_multicorrelator_16sc
2016-02-09 11:49:18 +01:00
Carles Fernandez
794d141e84 Improved processor/feature detection when building with MSVC 2016-02-07 10:56:21 +01:00
Carles Fernandez
1b7bc5af0c The USRP Hardware Driver (UHD) is now optional.
Used if found.
2016-02-02 23:32:48 +01:00
Carles Fernandez
844c33d699 improving documentation 2016-01-31 23:21:28 +01:00
Carles Fernandez
bb54222883 improving documentation 2016-01-31 23:13:10 +01:00
Carles Fernandez
213486c2eb improving documentation 2016-01-31 19:36:48 +01:00
Carles Fernandez
833fe313c7 Improving documentation 2016-01-31 18:13:03 +01:00
Carles Fernandez
f4875012df prefetch data in the cache in neon implementation
8% of average improvement
2016-01-31 10:41:51 +01:00
Carles Fernandez
8a6c4d767f ask for aligned memory in neon implementation
1% improvement
2016-01-31 10:39:24 +01:00
Carles Fernandez
4fcffa2bdd some improvements
phase computation was correclty done in SSE implementation but not in
NEON. Ask for aligned memory in NEON implementation. Some code cleaning
2016-01-31 09:49:50 +01:00
Carles Fernandez
db321d1c2e Fixing missing phase increment in SIMD implementations
After computing the rotation with SIMD instructions, we were not
incrementing the phase step, so the first iteration in the 'c region'
had the same phase than the last sample computed with SIMD instructions.
This commit fix the bux in SSE3 and NEON implementations
2016-01-29 19:42:30 +01:00
Carles Fernandez
8c07815852 fix missing time step in neon implementation 2016-01-29 19:30:31 +01:00
Javier Arribas
a26255270e Optimized SSE3 16ic rotator volk_gnsssdr module 2016-01-29 18:43:44 +01:00
Carles Fernandez
ccbdcf8788 adding neon implementation
about x10 acceleration
2016-01-28 23:36:19 +01:00
Carles Fernandez
d69e8e34f6 adding neon implementation 2016-01-28 19:45:31 +01:00
Carles Fernandez
2014149e17 Merge branch 'next' of git+ssh://github.com/gnss-sdr/gnss-sdr into next
# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
2016-01-28 18:10:21 +01:00
Javier Arribas
d2898c40ce Added SSE2 implementation for volk_gnss-sdr 16ic phase rotator. Bug fix
in volk_gnss-sdr rotator puppet unit test.
2016-01-28 16:42:19 +01:00
Carles Fernandez
b270d1ca61 remove old code and unrequired includes 2016-01-27 21:09:23 +01:00
Carles Fernandez
5d207ffcbc integrate new volk_gnsssdr kernel (16ic rotator)
Kernel still under development, will use generic impl by now
2016-01-27 20:16:51 +01:00
Carles Fernandez
4e12f6ee5a adding definition of new volk_gnsssdr kernel: 16-bit complex rotator
generic implementation only
2016-01-27 18:34:20 +01:00
Carles Fernandez
1d9fc3ceae adding neon implementation 2016-01-25 20:53:02 +01:00
Carles Fernandez
ba8f0e86b2 adding neon implementation 2016-01-25 18:13:54 +01:00
Carles Fernandez
3306c21cf8 adding neon implementation 2016-01-24 20:10:12 +01:00
Carles Fernandez
da67f85f6c remove unused variable in neon implementation 2016-01-24 14:38:34 +01:00
Carles Fernandez
b18fc5835c fix implementation 2016-01-24 14:37:19 +01:00
Carles Fernandez
377acfc322 add neon implementation 2016-01-24 14:30:33 +01:00
Carles Fernandez
2d21706041 add neon implementation 2016-01-24 13:02:02 +01:00
Carles Fernandez
812a4df93f add neon implementation 2016-01-24 12:01:40 +01:00
Carles Fernandez
cd2f0b86f6 add neon implementation 2016-01-23 21:22:30 +01:00
Carles Fernandez
c5252da7fd adding neon implementation 2016-01-23 21:05:28 +01:00
Carles Fernandez
a49cf3a98f missing include 2016-01-22 16:52:43 +01:00
Carles Fernandez
7bf4bfd7dc adding neon implementation 2016-01-22 12:29:08 +01:00
Carles Fernandez
642018bada tagging version 2016-01-22 10:14:43 +01:00
Carles Fernandez
8159c1ec22 Adding README and .gitignore 2016-01-22 02:02:23 +01:00
Carles Fernandez
61e36aa2a0 copy GPLv3 license from gnss-sdr 2016-01-22 00:54:52 +01:00
Carles Fernandez
4553b5e643 cleaning includes 2016-01-21 23:30:24 +01:00
Carles Fernandez
d139e6d93a Using limits.h instead of hardcoded values 2016-01-21 12:30:46 +01:00
Javier Arribas
62a17dc3d7 Replaced literal limits with values stored in limits.h for volk gnss-sdr
kernel
2016-01-21 11:30:09 +01:00
Javier Arribas
02a6f41794 Fix seg fault on some architectures in gnss-sdr volk 32fc convert to
16ic module
2016-01-21 11:21:25 +01:00
Carles Fernandez
3ce1bba194 Fix execution of puppets when compiled with clang 2016-01-21 01:40:29 +01:00
Carles Fernandez
577f7f1940 fixes CMake warning under Linux 2016-01-21 00:42:17 +01:00
Carles Fernandez
f6cb32bc9f cleaning 2016-01-21 00:25:53 +01:00
Carles Fernandez
88752588b6 remove duplicated copyright text 2016-01-21 00:12:14 +01:00
Carles Fernandez
53179468bd Removing unused constant 2016-01-20 23:42:25 +01:00
Carles Fernandez
d095b581ae code cleaning 2016-01-20 22:59:22 +01:00
Carles Fernandez
1f3554384d fix parallel building 2016-01-20 20:39:27 +01:00
Carles Fernandez
fe4cce043d Remove unnecessary code, making it closer to the original VOLK
GNSS-SDR-spefific additions are clearly marked, so it will be easier to
follow their changes and to add other specific features
2016-01-20 20:14:42 +01:00
Carles Fernandez
7e11a6ef72 Merge branch 'new_volk_module' of git+ssh://github.com/gnss-sdr/gnss-sdr
into new_volk_module

# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
2016-01-20 18:40:27 +01:00
Carles Fernandez
497c856437 add unaligned version 2016-01-20 18:38:33 +01:00
Javier Arribas
bb39ff43a0 Merge branch 'new_volk_module' of https://github.com/gnss-sdr/gnss-sdr.git into new_volk_module 2016-01-20 18:24:25 +01:00
Javier Arribas
ea35f33c83 Added native input sample interface support for 16 bits integer complex
in PCPS_Acquisition (added the _sc variant). Now the PCPS acquisiton
adapter requires no conversion when the receiver works with 16 bits
integer complex samples.
2016-01-20 18:24:03 +01:00
Carles Fernandez
c7193e394e Merge branch 'new_volk_module' of git+ssh://github.com/gnss-sdr/gnss-sdr
into new_volk_module

# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
2016-01-20 18:18:32 +01:00
Carles Fernandez
9bf8b174ba Sout out the aligned/unaligned thing in old kernels 2016-01-20 18:16:09 +01:00
Javier Arribas
07feeeee3a New volk_gnss_sdr kernel: Fast conversion between 16 bit int complex to
32 bits floating point complex
2016-01-20 17:45:47 +01:00
Javier Arribas
e92f409897 Added SSE2 unaligned versions of volk_gnss-sdr dot product and resampler
kernels.
2016-01-20 15:53:09 +01:00
Carles Fernandez
7a5574f598 Fixing aligned/unaligned tag 2016-01-20 11:21:58 +01:00
Carles Fernandez
7e52e3cf5b fixes parallel building when volk_gnsssdr_module is already installed 2016-01-19 19:43:09 +01:00
Carles Fernandez
d30a24a48c Fixing parallel building 2016-01-19 19:34:23 +01:00
Javier Arribas
5a716840ab tracking dll pll cAid can work now with gr_complex and cshort just
setting the data imput type in config file. All the internal receiver
signal chain can work in complex short for the first time. Speed
improvement using custom gnss-sdr volk kernels for cshort data input
types.
2016-01-19 18:37:30 +01:00
Javier Arribas
3add3a7f91 Bug fix in both interleaved byte and short to complex converters 2016-01-19 18:15:48 +01:00
Carles Fernandez
0215748638 Adding a puppet for the multiple correlator 2016-01-19 12:42:55 +01:00
Carles Fernandez
bbe0f37910 fixing result reading in puppet 2016-01-19 11:53:46 +01:00
Carles Fernandez
bf0a37960f adding a puppet for the multiple resampler 2016-01-19 10:45:56 +01:00
Carles Fernandez
090f6524db Merge branch 'new_volk_module' of git+ssh://github.com/gnss-sdr/gnss-sdr
into new_volk_module

# Conflicts:
#	src/algorithms/libs/volk_gnsssdr_module/volk_gnsssdr/kernels/volk_gnsssdr/volk_gnsssdr_16ic_x2_dot_prod_16ic.h
2016-01-19 00:01:26 +01:00
Carles Fernandez
1d18ff6c16 avoiding redefinition of functions 2016-01-18 23:50:34 +01:00
Carles Fernandez
57c05e3cf0 adding a puppet for the 16-bit complex resampler 2016-01-18 23:44:10 +01:00
Carles Fernandez
e53e85f41b fixing a wrong fix :-P 2016-01-18 20:59:51 +01:00
Javier Arribas
4ba75a3fbe Still some bugs to fix in 16sc dot product. All fixed now. 2016-01-18 10:43:09 +01:00
Carles Fernandez
fd2af02aec fix sse implementation 2016-01-16 23:15:19 +01:00
Carles Fernandez
a2429a851c fix sse implementation 2016-01-16 22:52:10 +01:00
Carles Fernandez
cd80beb16c fix sse implementation 2016-01-16 22:49:34 +01:00
Carles Fernandez
3d3a758ef2 fix sse implementation 2016-01-16 22:48:29 +01:00
Carles Fernandez
46e3ce5ec2 fix sse implementations 2016-01-16 22:39:15 +01:00
Carles Fernandez
38d4d8aa9a fix sse implementations 2016-01-16 20:57:55 +01:00
Carles Fernandez
a817d49e89 fix that makes pass the test 2016-01-16 14:29:15 +01:00
Carles Fernandez
dab4da064c Updating documentation 2016-01-16 14:11:12 +01:00
Carles Fernandez
3eab3b58c6 Removing garbage 2016-01-15 18:25:05 +01:00
Javier Arribas
fb42cda826 Range reduced to 4 bits in the volk short int test input to avoid
saturation of vector dot products.
Reduced test vector sizes to 8111 to avoid saturation.
2016-01-14 18:56:22 +01:00
Carles Fernandez
5fdbb472f6 required by memset 2016-01-13 20:09:27 +01:00
Carles Fernandez
e57d02321d Merge branch 'new_volk_module' of git+ssh://github.com/gnss-sdr/gnss-sdr
into new_volk_module

# Conflicts:
#	src/algorithms/libs/volk_gnsssdr_module/volk_gnsssdr/kernels/volk_gnsssdr/volk_gnsssdr_16ic_x2_dot_prod_16ic_xn.h
#	src/algorithms/tracking/libs/volk_gnsssdr_16ic_xn_resampler_16ic_xn.h
2016-01-13 20:04:18 +01:00
Carles Fernandez
ae2b594c3b Moving two kernels to volk_gnsssdr. Still no testing 2016-01-13 19:38:07 +01:00
Javier Arribas
5d0186eee1 Renamed saturated arithmetic library and some code cleaning and
refresh documentation in new gnsssdr volk modules
2016-01-13 15:37:58 +01:00
Carles Fernandez
f88f222ef6 fixes cmake warning in MacOSX 2016-01-13 15:34:50 +01:00
Carles Fernandez
ece7bc2c65 Integrating a new volk kernel 2016-01-13 11:42:01 +01:00
Carles Fernandez
f659005e63 Remove duplicated line 2016-01-13 11:19:07 +01:00
Carles Fernandez
bbdf52dbed fixes for MacOS 2016-01-13 11:04:32 +01:00
Carles Fernandez
97ed762964 some fixes 2016-01-13 10:22:06 +01:00
Carles Fernandez
62f23a7a2b Fix warning (unused variable) 2016-01-12 23:22:50 +01:00
Carles Fernandez
551735e034 Fixes warning about posix_memalign 2016-01-12 23:19:09 +01:00
Carles Fernandez
48e9ada2e1 fix warning 2016-01-12 23:12:04 +01:00
Carles Fernandez
eb1dbfe37b introducing new kernels 2016-01-12 22:48:59 +01:00
Carles Fernandez
1bf645c98c adding a missing kernel 2016-01-12 21:03:51 +01:00
Carles Fernandez
601dc7a85c Merge branch 'new_next' of git://github.com/Arribas/gnss-sdr into
new_volk_module
2016-01-12 20:57:06 +01:00
Carles Fernandez
24909510e7 Updating volk_gnsssdr to the new volk scheme 2016-01-12 20:15:16 +01:00
Javier Arribas
c2676ec491 Added missing includes (to be removed in future versions). Steps towards
the integration of new standalone kernels into volk_gnsssdr library.
2016-01-12 18:58:00 +01:00
Javier Arribas
5ba12c6fdb Added 16 bits short int complex ultra-fast resampler,
carrier wipe-off and correlator kernels (250% faster than
gr_complex) enabled in tracking GPS_L1_CA_DLL_PLL_C_Aid_Tracking_16sc
tracking
2016-01-11 16:49:37 +01:00
Javier Arribas
05937e6995 bug fix in interleaved byte to complex data type adapter (incorrect
scaled output when char to short int conversion was used, now replaced
the two-step process by single GNURadio block interleaver char to
complex)
2016-01-11 12:26:45 +01:00
Carles Fernandez
f4584a12c1 Fixing a couple of warnings
unused parameter '_chip_shift', comparison between signed and unsigned
integers. Regular casts have been replaced by static casts.
2016-01-11 11:32:41 +01:00
Carles Fernandez
fc01c85203 Removing unused parameter (removes a warning) 2016-01-11 10:44:57 +01:00
Carles Fernandez
0a295f9147 Remove unused code 2016-01-11 01:02:44 +01:00
Carles Fernandez
2615cd1a5b required for size_t 2016-01-11 00:56:38 +01:00
Carles Fernandez
aefe47cd7a Removing unused code 2016-01-11 00:50:09 +01:00
Carles Fernandez
2697fb6198 Cleaning includes 2016-01-10 22:21:31 +01:00
Carles Fernandez
bc0e4f188b Cleaning includes 2016-01-10 14:30:04 +01:00
Carles Fernandez
5743f0f631 fix defect detected by coverity scan
aStr->find('.', startPos) can return a negative number, but idx was
passed to a parameter that cannot be negative. Now the function returns
the string as is in case of no decimal point found.
2016-01-06 14:30:15 +01:00
Carles Fernandez
14d3c3dd27 cleaning includes and removing gnuradio-trellis and gnuradio-fec
dependencies
2016-01-06 02:05:34 +01:00
Carles Fernandez
5abc7b8b6a Include cleaning 2016-01-05 15:35:33 +01:00
Carles Fernandez
0a1aa50c4a Cleaning includes
plus some code cleaning
2016-01-05 10:59:37 +01:00
Carles Fernandez
1c3a9f98ee cleaning includes 2016-01-04 23:52:21 +01:00
Carles Fernandez
d0ac06d71d Cleaning includes 2016-01-04 22:56:52 +01:00
Carles Fernandez
972c86c1ea cleaning the use of includes 2016-01-04 18:06:54 +01:00
Carles Fernandez
9cdfc5e8c2 fixing a warning (unused variable) 2016-01-04 10:29:29 +01:00
Carles Fernandez
9e0c1bb719 remove unnedded headers 2016-01-03 15:22:52 +01:00
Carles Fernandez
70706cb87e removed unused variable 2016-01-03 15:11:57 +01:00
Carles Fernandez
9ea5d80935 Fixing silly redefinition of variable 2016-01-03 14:16:26 +01:00
Carles Fernandez
c5407a5106 Improved handling of threads
Some threads were not terminating properly, triggering a failure of
control_thread_test in some configurations.
2015-12-30 14:43:32 +01:00
Carles Fernandez
fc91768c11 missing commit 2015-12-25 12:29:35 +01:00
Carles Fernandez
589342e4a4 fix typo 2015-12-25 12:27:08 +01:00
Carles Fernandez
286ee3b561 Integrating the RTCM printer
Now the Galileo E1 receiver generates RTCM messages 1045 (ephemeris) and
MSM7 / 1097 (observables). Parameters related to RTCM included in conf
files. The TCP/IP server can be activated by setting flag_rtcm_server to
true.
2015-12-25 10:25:22 +01:00
Carles Fernandez
f70df3e581 Integrating the RTCM message printer
Now the GPS L1 receiver generates 1002 and 1019 messages. Bugs in the
Rtcm class fixed.
2015-12-24 20:56:41 +01:00
Javier Arribas
48c5227c9b bug fix for Mac OSX compiler 2015-12-23 11:31:16 +01:00
Javier Arribas
9acc7e7a20 Replaced fix point NCO by VOLK phase rotator in CPU multicorrelator
(around 5% faster).
This optimization is enabled at this time only in
Tracking_DLL_PLL_C_Aid. Sample config can be found in
gnss-sdr_Hybrid_byte_sim.conf
2015-12-21 11:59:15 +01:00
Javier Arribas
847716428e Updated GPU tracking implementation. Bug fixed in cuda correlator and
performance improvements
2015-12-11 13:53:43 +01:00
Javier Arribas
9bcea5b9cb Merge branch 'next-gnss-sdr' into new_next
Conflicts:
	src/algorithms/tracking/gnuradio_blocks/gps_l1_ca_dll_pll_tracking_gpu_cc.cc
2015-12-10 13:07:33 +01:00
Carles Fernandez
450728dfeb fix defect detected by coverity scan: rinex observables are printed if
both GPS and Galileo observables are available. This avoids
dereferencing an iterator though it is already past the end of its
container (in case only one of them were available)
2015-12-08 21:10:17 +01:00
Carles Fernandez
6c9a90abe4 fixing defects detected by coverity scan 2015-12-08 20:24:36 +01:00
Carles Fernandez
7b0285ba60 initializing members (defects detected by coverity scan) 2015-12-02 23:44:07 +01:00
Javier Arribas
424e7abe68 Migrating cuda tracking internal DLL/PLL vars from float to double 2015-12-02 19:00:29 +01:00
Carles Fernandez
45195917c1 fixing some gnuradio-related warnings reported by gcc, so others can be spotted easier 2015-12-02 18:25:06 +01:00
Carles Fernandez
17517625be fixing includes 2015-12-01 13:30:03 +01:00
Carles Fernandez
4e5abdf4f2 fixing parallel building if glog and gflags were built locally 2015-11-30 19:11:49 +01:00
Carles Fernandez
3c21a1853d fixing building if glog and gflags were built locally 2015-11-30 19:02:56 +01:00
Carles Fernandez
3a56e09772 fixes from wrong merge 2015-11-30 14:39:29 +01:00
Carles Fernandez
6f87e3fc17 fixing some compilation errors 2015-11-30 14:16:41 +01:00
Carles Fernandez
23ce240483 Merge branch 'carrier_phase_bug_fix' of
git+ssh://github.com/gnss-sdr/gnss-sdr into odrisci-contrib

# Conflicts:
#	conf/gnss-sdr_Hybrid_byte_sim.conf
#	src/algorithms/observables/gnuradio_blocks/gps_l1_ca_observables_cc.cc
#	src/algorithms/telemetry_decoder/gnuradio_blocks/gps_l1_ca_telemetry_decoder_cc.cc
#	src/algorithms/tracking/gnuradio_blocks/galileo_e1_dll_pll_veml_tracking_cc.cc
#	src/algorithms/tracking/gnuradio_blocks/galileo_e5a_dll_pll_tracking_cc.cc
#	src/algorithms/tracking/gnuradio_blocks/galileo_volk_e1_dll_pll_veml_tracking_cc.cc
#	src/algorithms/tracking/gnuradio_blocks/gps_l1_ca_dll_pll_c_aid_tracking_cc.cc
#	src/algorithms/tracking/gnuradio_blocks/gps_l1_ca_dll_pll_optim_tracking_cc.cc
#	src/algorithms/tracking/gnuradio_blocks/gps_l1_ca_dll_pll_tracking_cc.cc
#	src/algorithms/tracking/gnuradio_blocks/gps_l1_ca_dll_pll_tracking_gpu_cc.cc
#	src/algorithms/tracking/gnuradio_blocks/gps_l2_m_dll_pll_tracking_cc.cc
#	src/algorithms/tracking/libs/cpu_multicorrelator.cc
#	src/algorithms/tracking/libs/cpu_multicorrelator.h
#	src/algorithms/tracking/libs/cuda_multicorrelator.h
#	src/algorithms/tracking/libs/tracking_discriminators.cc
#	src/core/receiver/gnss_block_factory.cc
#	src/core/system_parameters/GPS_L1_CA.h
2015-11-30 13:59:31 +01:00
Javier Arribas
8c22e5846d Carrier phase observable bug fix for GPS L1 CA trackings, new GPS L1 carrier aided tracking using nex multitap correlator library, and some CUDA multitap correlator performance improvements 2015-11-30 11:43:37 +01:00
Carles Fernandez
0450e174a6 fixing wrong merge 2015-11-30 10:46:07 +01:00
Carles Fernandez
74d42250d8 Merge branch 'contrib' of https://github.com/odrisci/gnss-sdr into
odrisci-contrib

# Conflicts:
#	src/algorithms/tracking/gnuradio_blocks/gps_l1_ca_dll_pll_tracking_cc.cc
#	src/algorithms/tracking/libs/tracking_discriminators.cc
2015-11-30 10:18:09 +01:00
Carles Fernandez
e6cf773a2b removing tabs and tailing whitespaces 2015-11-27 17:37:21 +01:00
Carles Fernandez
bfbea68c8f Merge branch 'next' of git://github.com/Arribas/gnss-sdr into
tracking_arribas

# Conflicts:
#	src/algorithms/tracking/gnuradio_blocks/CMakeLists.txt
#	src/core/receiver/gnss_block_factory.cc
2015-11-27 14:53:33 +01:00
Carles Fernandez
df6996f3b1 reverting wrong change 2015-11-27 14:06:30 +01:00
Carles Fernandez
2a6381c6fa Merging branch 'next' of git://github.com/Arribas/gnss-sdr 2015-11-27 13:32:21 +01:00
Javier Arribas
38e8feefa8 Name change in new DLL PLL algorithm implementation. We introduce DLL
PLL Carrier Aided Tracking.
2015-11-27 12:53:27 +01:00
Javier Arribas
c8f7e08127 Updated all GPS and Galileo trackings for double floating point internal
computations and bug fixes in the carrier phase accumulator.
(all, except Matlab-Simulink linked trackings)
2015-11-26 18:44:04 +01:00
Cillian O'Driscoll
26b18c19ee Added a generic tracking_loop_filter class
This implements a generic loop filter. Based on the analog PLL filters
from Kaplan and Hegarty, with a bilinear (Tustin's) transform from
s-plane to z-plane ( 1/s -> T/2 ( 1 + z^-1 )/( 1 - z^-1 ) )

Also added tests. Note the "truth" outputs
were derived from an Octave implementation of the loop filter and
Octave's builtin filter function
2015-11-26 15:12:26 +00:00
Cillian O'Driscoll
518deb501a Added IF handling to acq and tracking
Only GPS L1 CA DLL PLL tracking for now. Still experimental.
2015-11-26 15:12:26 +00:00
Cillian O'Driscoll
b95219dbc6 Added two Carrier_rotate correlator utilities
1) Carrier_rotate_and_EPL_volk

This is a very efficient VOLK based carrier wipeoff and
Early/Prompt/Late correlation. The carrier wipe off is done using the
VOLK rotator functions, which means there is no need to generate a local
replica sinusoid.

2) Carrier_rotate_and_VEPL_Volk

This adds Very Early/Early/Prompt/Late/Very Late correlation with the
VOLK rotator implementation of carrier wipe-off
2015-11-26 15:11:59 +00:00
Cillian O'Driscoll
e6d5fe35ea Added check for zero denominator in dll discrim. 2015-11-26 15:11:59 +00:00
Cillian O'Driscoll
5b9683baad Multiple changes pcps acquisition: including linear corr.
Reduced zero_padding_factor in pcps acquisition

This was 16, I'm processing data at about 16MHz, this oversampling
factor caused memory allocation issues

Previously dump file name was not being read from the configuration

Added fix for non-zero IF in pcps_acquisition_cc

Added linear correlation to pcps acquisition.
2015-11-26 15:09:24 +00:00
Cillian O'Driscoll
e4ff358178 Added seconds_to_skip and header_size
Use these configuration parameters to skip ahead in the FileSignalSource
Fixed bug in determining file duration
2015-11-26 15:08:26 +00:00
Javier Arribas
19e1328fda Fine tunning the config file for PPP in simulation scenario 2015-11-25 19:08:54 +01:00
Javier Arribas
aed688f3b4 DLL/PLL and phase accumulator bug correction and verification almost
done. Still some outliers detected in PPP using RTKLIB but the
positioning performande is good.
2015-11-25 18:32:32 +01:00