1
0
mirror of https://github.com/gnss-sdr/gnss-sdr synced 2024-07-01 01:13:15 +00:00
Commit Graph

1076 Commits

Author SHA1 Message Date
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