Javier Arribas
55b1f316ed
Removing gnuradio block inheritance in FPGA acquisition
2019-03-20 16:57:50 +01:00
Marc Majoral
6da82535ba
Merge branch 'next' of https://github.com/gnss-sdr/gnss-sdr into fpga
2019-03-20 16:35:55 +01:00
Javier Arribas
0be8c657de
Reducing the latency in the acquisition to tracking transition
2019-03-20 15:13:17 +01:00
Marc Majoral
a24d26f427
set the default sampling frequency of the HW source to 12.5 Msps and the default bandpass bandwidth to 12.5 MHz + other minor changes
2019-03-19 10:14:09 +01:00
Marc Majoral
bef7e42fb9
Merge branch 'next' of https://github.com/gnss-sdr/gnss-sdr into fpga
2019-03-18 19:37:19 +01:00
Carles Fernandez
dd7a52c93b
Fix headers
2019-03-06 21:54:39 +01:00
Carles Fernandez
9ce827437c
Improve includes (IWYU)
2019-03-06 16:10:18 +01:00
Carles Fernandez
5b8ab9f591
Improve includes (IWYU)
2019-03-06 13:49:14 +01:00
Carles Fernandez
e7ea5c1fdd
Remove superfluous 'using google::LogMessage'
2019-03-03 13:39:35 +01:00
Carles Fernandez
fcfe63ba08
Fix defects detected by coverity scan
2019-03-01 20:49:45 +01:00
Marc Majoral
5a2dc274cf
but solved: double acquisition was using uint32_t for the initial doppler estimation. Therefore when the first estimated doppler was negative it was reset to zero.
2019-03-01 20:37:14 +01:00
Carles Fernandez
df0a77ee0d
Fix warnings
...
more protection on read/write failures and some code cleaning
2019-03-01 10:11:36 +01:00
Carles Fernandez
7c71ed9404
Merge branch 'fpga' of https://github.com/gnss-sdr/gnss-sdr into merge-fpga
...
Applied checks and formatting
2019-02-28 21:45:30 +01:00
Marc Majoral
ea86546d99
implemented double acquisition for the FPGA
2019-02-28 20:49:35 +01:00
Marc Majoral
c32e0b427a
coding style + removed some unnecessary memory arrays in the FPGA E5A tracking adapter class.
2019-02-27 17:27:31 +01:00
Marc Majoral
8d770d9be9
more code cleaning
...
removed some non used variables
2019-02-27 13:30:09 +01:00
Marc Majoral
5e22e4c50a
cleaned the FPGA acquisition code
2019-02-26 18:28:14 +01:00
Marc Majoral
cf0a37300a
Merge branch 'next' of https://github.com/gnss-sdr/gnss-sdr into fpga
2019-02-25 19:21:00 +01:00
Carles Fernandez
62a7e54359
Introduce readability-identifier-naming check
...
This commit enforces naming style for Classes and global constants:
Camel_Snake_Case for Classes
UPPER_CASE for global constants
CamelCase for abstract classes
2019-02-22 10:47:24 +01:00
Carles Fernandez
9bc771bed6
Deploy a new option -DENABLE_CLANG_TIDY to integrate clang-tidy checks and fixes into the compilation process, if found. It defaults to OFF
2019-02-21 09:59:06 +01:00
Carles Fernandez
31383258b0
clang-tidy: apply checks
2019-02-12 15:56:18 +01:00
Carles Fernandez
111c6291ec
Revert "clang-tidy: apply performance-unnecessary-value-param check"
...
This reverts commit eae967ed1a
.
2019-02-12 12:07:40 +01:00
Carles Fernandez
0c4b68c92d
clang-tidy: apply performance-move-const-arg check
...
See https://clang.llvm.org/extra/clang-tidy/checks/performance-move-const-arg.html
2019-02-12 02:07:06 +01:00
Carles Fernandez
eae967ed1a
clang-tidy: apply performance-unnecessary-value-param check
...
See https://clang.llvm.org/extra/clang-tidy/checks/performance-unnecessary-value-param.html
2019-02-12 01:00:36 +01:00
Carles Fernandez
73b7341904
clang-tidy: apply readability-braces-around-statements plus code formatting
...
See http://releases.llvm.org/7.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-braces-around-statements.html
Code formatting applied with:
find ../src/ -iname *.h -o -iname *.cc | xargs clang-format -i
2019-02-11 21:13:02 +01:00
Carles Fernandez
6abebac5eb
Make use of cstdint type names
2019-02-11 17:51:20 +01:00
Carles Fernandez
b9c115bdf8
clang-tidy: apply modernize-use-using check
2019-02-11 13:13:06 +01:00
Carles Fernandez
4b2b205e21
Avoid throwing exceptions from destructors
...
Detected by clang-tidy check bugprone-exception-escape
2019-02-10 21:55:51 +01:00
Carles Fernandez
75bd492d96
Change CMake target names to more meaningful ones, reflecting the code tree
2019-02-10 18:34:28 +01:00
Carles Fernandez
ce051e040f
Improve target design
2019-02-10 01:13:02 +01:00
Carles Fernandez
a63d7834f4
Remove unused include
2019-02-10 00:12:19 +01:00
Carles Fernandez
e5b7eaa366
Reorder static dependencies
2019-02-07 23:07:24 +01:00
Carles Fernandez
708b288e61
Clean CMake scripts
2019-02-04 22:44:45 +01:00
Carles Fernandez
8ae72fe458
Update to modern CMake usage
2019-02-03 19:24:44 +01:00
Marc Majoral
f127729eb0
Merge branch 'next' of https://github.com/gnss-sdr/gnss-sdr into fpga
2019-01-25 18:02:07 +01:00
Carles Fernandez
f351615ef9
Apply clang-tidy fix modernize-use-bool-literals
2018-12-11 12:08:54 +01:00
Carles Fernandez
e2582586b9
Apply fixes by clang-tidy
2018-12-11 02:22:33 +01:00
Carles Fernandez
d920aa4d92
Apply fixes by clang-tidy
2018-12-11 01:56:25 +01:00
Carles Fernandez
54237770a6
Apply fixes by clang-tidy
2018-12-10 22:59:10 +01:00
Carles Fernandez
3dce8934fd
Apply fixes by clang-tidy
2018-12-10 19:05:12 +01:00
Carles Fernandez
5b79f8ac50
Merge branch 'next' into smart_acq_resampler
2018-12-10 14:24:42 +01:00
Carles Fernandez
5f79053d65
Sort includes automatically with clang-format
...
Order:
1.- Main header
2.- Local headers
3.- Third-party library headers
4.- System headers
each category sorted lexicographically
2018-12-09 22:00:09 +01:00
Carles Fernandez
17260bbcea
Miscelaneous code improvements by clang-tidy
2018-12-08 18:49:31 +01:00
Javier Arribas
63b19692e7
Completing the smart acquisition resampler
2018-12-05 16:50:32 +01:00
Marc Majoral
e436aadfd9
minor modifications to the Galileo E5a and GPS L5 acquisition adapters. Now the acquisition opens and closes the acquisition HW device every time an acquisition is done, to prevent the acquisition interrupt from interrupting all the acquisition processes at the same time.
2018-12-05 11:23:30 +01:00
Carles Fernandez
7261bec2ad
Miscelaneous code improvements
2018-12-04 13:20:49 +01:00
Carles Fernandez
b2659aa076
Merge branch 'next' into smart_acq_resampler
2018-12-04 00:05:04 +01:00
Carles Fernandez
327fec627c
clang-tidy: apply readability-else-after-return fix (see https://clang.llvm.org/extra/clang-tidy/checks/readability-else-after-return.html )
2018-12-03 22:08:19 +01:00
Carles Fernandez
1743a773b5
Improve performance by using const and std::move() to avoid unnecessary copies
2018-12-03 19:01:47 +01:00
Carles Fernandez
2709dc5ec7
clang-tidy: apply performance-faster-string-find (see https://clang.llvm.org/extra/clang-tidy/checks/performance-faster-string-find.html )
2018-12-03 18:17:21 +01:00
Javier Arribas
4b80451630
Adding initial functional changes for the smart acquisition resampler
2018-12-03 17:58:18 +01:00
Carles Fernandez
0d408a6024
clang-tidy: apply modernize-use-auto fix (see https://clang.llvm.org/extra/clang-tidy/checks/modernize-use-auto.html )
2018-12-03 16:25:11 +01:00
Carles Fernandez
0a46cb1fe1
Use nullptr
2018-12-03 10:05:47 +01:00
Marc Majoral
bd90563925
Merge branch 'next' of https://github.com/gnss-sdr/gnss-sdr into fpga
2018-11-30 11:10:38 +01:00
Marc Majoral
f48a91c413
Galileo E5a is now debugged and working. Acquisition is using interrupts again. Each acquisition process opens and closes the acquisition device when an acquisition is done instead of having the device opened all the time. In this way the acquisition interrupt should only be received by the process that is using the interrupt at that time.
2018-11-30 11:07:01 +01:00
Carles Fernandez
87d1413447
Make cmakelint happier
2018-11-24 18:40:34 +01:00
Carles Fernandez
b0ba246934
Apply some style rules to CMake scripts
2018-11-22 00:35:21 +01:00
Marc Majoral
f7050766bc
re-enabled the possibility to run the FPGA tracking pull-in tests and observables tests running the doppler wipeoff in the HW. The FPGA now uses the same block of received samples to test all the doppler shifts.
2018-11-16 18:28:02 +01:00
Marc Majoral
f150fe02c7
solved a bug which caused the tracking pull-in test not to work correctly with Galileo E1 when using the downsampling filter in the acquisition.
2018-11-09 20:50:32 +01:00
Marc Majoral
047807ba0c
solved a bug that caused the tracking pull-in test in the FPGA not to work when using the downsampling filter in the acquisition.
2018-11-08 19:19:39 +01:00
Marc Majoral
1c80eaa50c
corrected a bug in the fpga tracking pull-in test where a parameter was rewritten with an incorrect value
...
modified the fpga tracking pull-in test to take into account the downsampling factor in the L1/E1 queue
2018-11-07 20:21:05 +01:00
Marc Majoral
0d9b08df70
updated the tracking pull-in test for the FPGA. To be tested.
2018-11-05 19:50:40 +01:00
Marc Majoral
41faa311f7
Merge branch 'next' of https://github.com/gnss-sdr/gnss-sdr into fpga
2018-11-05 18:29:35 +01:00
Marc Majoral
b5409f0860
updated the SW to run the new Acquisition HW accelerator, which compensates the scaling factors of the FFT and the IFFT, and computes the test statistics out of the peak value and the second peak value resulting from the correlation performed by the acquisition process. Updated the GPS L1 and Galileo E1 acquisition adapters.
2018-10-31 18:48:08 +01:00
Carles Fernandez
1269be3a72
Allow to save Acq dump anywhere
2018-10-30 12:04:59 +01:00
Marc Majoral
8e6370e133
changed the downsampling factor of the L1 and E1 acquisition from /2 to /4
2018-10-17 15:45:08 +02:00
Marc Majoral
8710ba1cf7
Merge branch 'next' of https://github.com/gnss-sdr/gnss-sdr into fpga
2018-10-08 19:47:39 +02:00
Marc Majoral
6c56107664
removed some unnecessary debug messages
...
updated the Hybrid Observables test for the FPGA to instantiate the FPGA sample counter instead of the SW sample counter.
2018-10-08 18:09:25 +02:00
Carles Fernandez
78c0b76cb9
Avoid use of GLOB for source and header files
2018-10-04 22:35:44 +02:00
Marc Majoral
2826dd21d3
use of the :2 decimator in the GPS L1/Galileo E1 frequency band
...
added methods to the L1 and E1 FPGA acquisition classes for the unit tests to be able to control the doppler sweep from the SW instead of the HW. In this way we can produce more detailed results.
2018-10-04 17:49:09 +02:00
Marc Majoral
df3caf5c2b
Merge branch 'next' of https://github.com/gnss-sdr/gnss-sdr into fpga
2018-09-18 11:43:19 +02:00
Marc Majoral
f333c05305
saving temporary changes before merging with usptream next branch
...
added functions that allow the tests to read the scaling factor used by the FFT and the IFFT during acquisition
2018-09-18 11:36:12 +02:00
Carles Fernandez
cc3ead3ea2
Reserve memory only one if acquisition init is called multiple times
2018-09-17 11:30:42 +02:00
Marc Majoral
5b9b63cc77
implemented tracking pull-in tests for the FPGA
...
solved a bug in which the SW was using the doppler shift index reported by the HW acquisition accelerator plus one, instead of using the doppler shift index as such.
2018-09-12 16:02:23 +02:00
Marc Majoral
2b15343a6a
started tracking pull-in test implementation for the FPGA
2018-08-29 18:20:41 +02:00
Carles Fernandez
a833abbb8a
Merge branch 'kf' of https://github.com/gnss-sdr/gnss-sdr into next
2018-08-21 11:50:39 +02:00
Carles Fernandez
4a2ba1cff0
Improve handling of data types
2018-08-13 00:54:23 +02:00
Carles Fernandez
05a1806c8f
Merge branch 'fpga' of https://github.com/mmajoral/gnss-sdr into merge-marc
2018-08-11 12:56:52 +02:00
Carles Fernandez
f6af31b81f
Add more extensive use of cstdint typenames
2018-08-11 11:44:23 +02:00
Carles Fernandez
4404516289
Add more extensive use of cstdint typenames
2018-08-11 11:42:07 +02:00
Carles Fernandez
6b1611b3a9
Replace unsigned long int by uint64_t and long int by int64_t. Fixes #199
2018-08-10 20:34:03 +02:00
Marc Majoral
f14ad930d5
declared the 64-bit variables as long long ints instead of long ints in the FPGA related files.
...
Variables declared as long ints are interpreted as 32-bit variables in the ARM architecture and 64-bit variables in the X86-64 architecture.
2018-08-10 16:42:53 +02:00
Marc Majoral
b1524a3afe
implemented 64-bit global sample counter
...
started programming the FPGA tracking unit tests
2018-08-10 13:12:06 +02:00
Carles Fernandez
2cc2e93d10
Fix make_two_steps option
2018-08-09 12:47:20 +02:00
Marc Majoral
557d25d3ea
Merge branch 'next' of https://github.com/gnss-sdr/gnss-sdr into fpga
2018-08-08 18:23:38 +02:00
Carles Fernandez
69803b55da
Remove stream_to_vector in generic acquisition block
2018-08-08 15:02:29 +02:00
Marc Majoral
b1a7031e52
solved some bugs in GPS L5
...
removed check for sign in multicorrelator results: this is not necessary anymore
did some other minor maintenances
2018-08-07 18:56:54 +02:00
Marc Majoral
daedfc3e01
adapted the FPGA tracking class according to the latest changes in the next branch
2018-08-02 17:32:59 +02:00
Marc Majoral
7e246dea29
Merge branch 'next' of https://github.com/gnss-sdr/gnss-sdr into fpga
2018-08-01 18:59:40 +02:00
Marc Majoral
bb33faea21
improved existing code
...
started the GPS L2 FPGA class implementation (not finished yet)
implemented the GPS L5 FPGA class (not tested yet)
implemented the Galileo E5 FPGA class (not tested yet)
The code is still "dirty": it is yet to be cleaned of debug comments/code and any possible redundant code and not used variables.
2018-08-01 15:55:40 +02:00
Carles Fernandez
5a908fcf7d
Merge branch 'next' of https://github.com/gnss-sdr/gnss-sdr into glamountain-kf
2018-07-20 12:59:46 +02:00
Javier Arribas
f9e4bdfa59
Fix stream_to_vector incoherence in pcps acquisition and add support for GPS L2C, L5I, Galileo E1 and E5a in tracking pull-in test
2018-07-19 16:26:51 +02:00
Carles Fernandez
ee90b739b5
Add coherent integration for GPS L2C, L5 and Galileo E1
2018-07-15 04:12:20 +02:00
Carles Fernandez
0352108a79
Accept non-integer number of samples per code period
2018-07-13 14:23:14 +02:00
Carles Fernandez
92a6676b9e
Enable second refinement stage in a thinner grid for coherent and/or non-coherent acquisitions
2018-07-13 11:50:31 +02:00
Carles Fernandez
1b7b2da603
Reset grid after successful acquisition or reaching max number of dwells
2018-07-12 20:32:05 +02:00
Carles Fernandez
9881857fa5
Fix Acquisition for L2C and E1B
2018-07-11 14:51:34 +02:00
Carles Fernandez
d9b9df3718
Fix warning, improve code consistency
2018-07-10 17:43:05 +02:00
Carles Fernandez
85f70fe1a3
Fix coherent acquisition
2018-07-10 16:25:16 +02:00
Carles Fernandez
394f6088aa
Add work on noncoherent acquisition
2018-07-10 08:47:04 +02:00
Carles Fernandez
e1c26ec858
Add work on noncoherent acquisition
2018-07-10 07:48:08 +02:00
Carles Fernandez
dad0ba32ad
Add work on noncoherent acquisition
2018-07-10 07:45:49 +02:00
Carles Fernandez
6b67037fed
Add first-to-second peak statistic
2018-07-09 17:56:47 +02:00
Carles Fernandez
d76dab6248
Implement non-coherent acquisition
2018-07-08 13:26:30 +02:00
Javier Arribas
89c00560f2
Fix Acquisition fine Doppler implementation
2018-07-07 15:39:09 +02:00
Carles Fernandez
5ef6157fc1
Store acquisition results only when there is a decision
2018-07-05 21:31:38 +02:00
Javier Arribas
6055200440
Code cleaning
2018-07-05 20:26:37 +02:00
Javier Arribas
d9f6d41eed
Fix crash of PCPS acquisition fine doppler on some systems
2018-07-05 20:19:29 +02:00
Javier Arribas
adcc04c3b6
Fix GPS L1 CA fine Doppler acquisition implementation and migrate the configuration interface
2018-07-04 16:56:47 +02:00
Carles Fernandez
e454dc7e14
Merge branch 'next' of https://github.com/gnss-sdr/gnss-sdr into kf
2018-07-04 13:09:28 +02:00
Gerald LaMountain
d565d65521
Update KF tracking to use acquisition doppler bin size for initial doppler state covariance
2018-07-03 13:31:53 -04:00
Carles Fernandez
895f8dc75a
Expose the blocking_on_standby parameter to the documentation. Useful for unit testing
2018-06-29 13:39:17 +02:00
Javier Arribas
b0eb9f3aac
Adding a parameter to allow the acquisition engine to block the samples flow in stanby mode, very useful in unit testing (disabled by default)
2018-06-28 17:39:37 +02:00
Carles Fernandez
559a9a7c43
Fix problem caused by hdf5 when saving concurrently
...
Only one acquisition channel info is stored in dump file if dump is activated. New configuration parameter dump_channel, set to 0 by default.
Name of Matlab variable changed from gird to acq_grid to not overlap Matlab command.
2018-06-24 11:05:58 +02:00
Carles Fernandez
cef26aa89b
Fix annotation of acq result in dump file
2018-06-22 12:30:30 +02:00
Carles Fernandez
020603c3b8
Add more info in acquisition dumps
2018-06-21 12:23:10 +02:00
Carles Fernandez
47c9ad0160
Save results for all executions, not just the last one
2018-06-21 08:05:33 +02:00
Carles Fernandez
c0337528f5
Store results also when using the refinement stage
2018-06-20 20:48:43 +02:00
Carles Fernandez
f133392a8c
Fix bug in matio usage
2018-06-20 20:16:19 +02:00
Carles Fernandez
423176de7b
Replace acq configuration struct by a class
2018-06-19 12:59:54 +02:00
Carles Fernandez
ebd8b46e51
Remove if parameter from Acquisition and Tracking blocks
2018-06-06 17:25:03 +02:00
Carles Fernandez
0d60d97c24
Use https instead of http in links when available
...
Update copyright year in headers
2018-05-13 22:49:11 +02:00
Carles Fernandez
7754fc66a6
Code cleaning
2018-05-09 13:09:26 +02:00
mmajoral
0b9b9f4c39
Merge branch 'next' of https://github.com/gnss-sdr/gnss-sdr into fpga.
...
Use a generic tracking radio block class for the tracking code that uses the FPGA HW accelerators.
2018-05-09 11:11:12 +02:00
mmajoral
4fa5648aa4
Currently creating a generic tracking class for the FPGA in the same way as it is done in the SW.
2018-05-03 10:38:21 +02:00
Carles Fernandez
0494d9b5a8
Avoid claah between volk and volk_gnsssdr defines
2018-04-30 20:58:53 +02:00
Carles Fernandez
6d6b583169
Merge branch 'next' of https://github.com/gnss-sdr/gnss-sdr into mmajoral-fpga
2018-04-30 19:23:35 +02:00
mmajoral
4433c0c6be
Minor code cleaning.
2018-04-30 11:59:56 +02:00
Carles Fernandez
a2eb5d5344
Improve readability, reorder includes
2018-04-29 13:26:21 +02:00
Carles Fernandez
01429132bd
Avoid clash of redefined macros with Volk
2018-04-29 02:51:50 +02:00
mmajoral
512bf3f4cf
Created a generic gnuradio block acquisition class for the FPGA.
2018-04-27 20:00:50 +02:00
Carles Fernandez
31e634635c
Move general_work to the bottom of the file
2018-04-13 11:07:58 +02:00
Javier Arribas
8e59a42ae2
Merge Next with FPGA. Adding software-defined emulation of the sample counter
2018-04-06 17:03:20 +02:00
Antonio Ramos
e42149c9e5
Add number of doppler bins and doppler step in two step acquisition
2018-04-05 12:42:28 +02:00
Antonio Ramos
44635a41b3
Add two step acquisition funcionality
2018-04-04 14:59:28 +02:00
Carles Fernandez
97e5d88623
Minor fixes: typos, includes
2018-03-26 15:06:14 +02:00
Carles Fernandez
6de9c728f9
Merge branch 'glonass_l2_ca' of https://github.com/dmiralles2009/gnss-sdr into dmiralles2009-glonass_l2_ca
2018-03-26 10:30:56 +02:00
Carles Fernandez
0400034d14
Fix typos detected by codespell
2018-03-25 19:47:28 +02:00
Damian Miralles
287d38dea2
GLONASS L2 CA Signal Addition
...
Adds GLONASS L2 C/A signal processing to GNSS-SDR based on previous
work developed for the L1 signal. All code have been added in a single
commit with the idea to illustrate the process of signal addition for
future work
2018-03-24 12:44:26 -06:00
Javier Arribas
7c406bb6eb
Merging fpga with next
2018-03-05 11:03:59 +01:00
Carles Fernandez
07b25ebb06
Apply clang-format to the whole source tree
2018-03-04 02:04:27 +01:00
Carles Fernandez
34f24562cf
Apply automated code formatting
...
Documented at .clang-format
See http://clang.llvm.org/docs/ClangFormat.html and http://clang.llvm.org/docs/ClangFormatStyleOptions.html
2018-03-03 02:03:39 +01:00
Carles Fernandez
c9ac8c78af
Move OpenCL-related files to a folder
2018-03-02 15:48:38 +01:00
Javier Arribas
288dd481e7
Updating FPGA acquisition modules
2018-03-02 12:23:10 +01:00
Carles Fernandez
658e677fc3
Reorder includes: local headers first, then 3rd-party library headers, and finally standard headers
2018-02-26 03:15:53 +01:00
Carles Fernandez
5c77a394d7
Replace memset by std::fill_n
2018-02-25 13:34:13 +01:00
Carles Fernandez
946d3dae9f
Replace memset by std::fill_n. This fix warnings in GCC 8.0.1 (Fedora
...
Rawhide). The warnings were:
warning: 'void* memset(void*, int, size_t)' clearing an object of
non-trivial type 'struct std::complex<float>'; use assignment or
value-initialization instead [-Wclass-memaccess]
2018-02-25 13:27:27 +01:00
Carles Fernandez
4c408f5239
Fix building in ArchLinux
2018-02-23 17:57:53 +01:00
Gastd
300604eb85
Fix memory leak
2018-02-12 03:04:27 -02:00
Carles Fernandez
c945ddcacd
Initialize all members in the constructor
2018-02-08 12:49:53 +01:00