[hamradio-commits] [gnss-sdr] 23/303: Fix 16-bit complex resampler

Carles Fernandez carles_fernandez-guest at moszumanska.debian.org
Mon Feb 13 22:35:44 UTC 2017


This is an automated email from the git hooks/post-receive script.

carles_fernandez-guest pushed a commit to branch master
in repository gnss-sdr.

commit 3abe944877c1445687f9a402e10d47e921a42124
Author: Carles Fernandez <carles.fernandez at gmail.com>
Date:   Mon Aug 15 12:03:15 2016 +0200

    Fix 16-bit complex resampler
---
 .../tracking/libs/cpu_multicorrelator_16sc.cc       | 21 +++++----------------
 .../tracking/libs/cpu_multicorrelator_16sc.h        |  1 -
 2 files changed, 5 insertions(+), 17 deletions(-)

diff --git a/src/algorithms/tracking/libs/cpu_multicorrelator_16sc.cc b/src/algorithms/tracking/libs/cpu_multicorrelator_16sc.cc
index ceedacc..fa9f787 100644
--- a/src/algorithms/tracking/libs/cpu_multicorrelator_16sc.cc
+++ b/src/algorithms/tracking/libs/cpu_multicorrelator_16sc.cc
@@ -45,7 +45,6 @@ bool cpu_multicorrelator_16sc::init(
     size_t size = max_signal_length_samples * sizeof(lv_16sc_t);
 
     d_n_correlators = n_correlators;
-    d_tmp_code_phases_chips = static_cast<float*>(volk_gnsssdr_malloc(n_correlators * sizeof(float), volk_gnsssdr_get_alignment()));
 
     d_local_codes_resampled = static_cast<lv_16sc_t**>(volk_gnsssdr_malloc(n_correlators * sizeof(lv_16sc_t*), volk_gnsssdr_get_alignment()));
     for (int n = 0; n < n_correlators; n++)
@@ -80,18 +79,14 @@ bool cpu_multicorrelator_16sc::set_input_output_vectors(lv_16sc_t* corr_out, con
 
 void cpu_multicorrelator_16sc::update_local_code(int correlator_length_samples, float rem_code_phase_chips, float code_phase_step_chips)
 {
-    for (int n = 0; n < d_n_correlators; n++)
-        {
-            d_tmp_code_phases_chips[n] = d_shifts_chips[n] - rem_code_phase_chips;
-        }
-
-    volk_gnsssdr_16ic_xn_resampler_fast_16ic_xn(d_local_codes_resampled,
+    volk_gnsssdr_16ic_xn_resampler_16ic_xn(d_local_codes_resampled,
             d_local_code_in,
-            d_tmp_code_phases_chips,
+            rem_code_phase_chips,
             code_phase_step_chips,
-            correlator_length_samples,
+            d_shifts_chips,
+            d_code_length_chips,
             d_n_correlators,
-            d_code_length_chips);
+            correlator_length_samples);
 }
 
 
@@ -119,7 +114,6 @@ cpu_multicorrelator_16sc::cpu_multicorrelator_16sc()
     d_shifts_chips = nullptr;
     d_corr_out = nullptr;
     d_local_codes_resampled = nullptr;
-    d_tmp_code_phases_chips = nullptr;
     d_code_length_chips = 0;
     d_n_correlators = 0;
 }
@@ -137,11 +131,6 @@ cpu_multicorrelator_16sc::~cpu_multicorrelator_16sc()
 bool cpu_multicorrelator_16sc::free()
 {
     // Free memory
-    if (d_tmp_code_phases_chips != nullptr)
-        {
-            volk_gnsssdr_free(d_tmp_code_phases_chips);
-            d_tmp_code_phases_chips = nullptr;
-        }
     if (d_local_codes_resampled != nullptr)
         {
             for (int n = 0; n < d_n_correlators; n++)
diff --git a/src/algorithms/tracking/libs/cpu_multicorrelator_16sc.h b/src/algorithms/tracking/libs/cpu_multicorrelator_16sc.h
index 280e2ab..617d79b 100644
--- a/src/algorithms/tracking/libs/cpu_multicorrelator_16sc.h
+++ b/src/algorithms/tracking/libs/cpu_multicorrelator_16sc.h
@@ -56,7 +56,6 @@ public:
 private:
     // Allocate the device input vectors
     const lv_16sc_t *d_sig_in;
-    float *d_tmp_code_phases_chips;
     lv_16sc_t **d_local_codes_resampled;
     const lv_16sc_t *d_local_code_in;
     lv_16sc_t *d_corr_out;

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-hamradio/gnss-sdr.git



More information about the pkg-hamradio-commits mailing list