1
0
mirror of https://github.com/gnss-sdr/gnss-sdr synced 2026-04-25 00:01:25 +00:00

TTFF reduction in GPS L1 and Galileo E1

This commit is contained in:
Javier Arribas
2021-08-03 14:03:27 +02:00
parent b4b9c31182
commit 23a2d3ef89
8 changed files with 90 additions and 54 deletions

View File

@@ -75,6 +75,7 @@ dll_pll_veml_tracking_sptr dll_pll_veml_make_tracking(const Dll_Pll_Conf &conf_)
dll_pll_veml_tracking::dll_pll_veml_tracking(const Dll_Pll_Conf &conf_) : gr::block("dll_pll_veml_tracking", gr::io_signature::make(1, 1, sizeof(gr_complex)),
gr::io_signature::make(1, 1, sizeof(Gnss_Synchro)))
{
//debug_action1 = false;
// prevent telemetry symbols accumulation in output buffers
this->set_max_noutput_items(1);
d_trk_parameters = conf_;
@@ -1981,6 +1982,14 @@ int dll_pll_veml_tracking::general_work(int noutput_items __attribute__((unused)
}
}
}
//*** debug only!!
//force tracking loss after 120 seconds
//if (debug_action1 == false and (static_cast<double>(d_sample_counter) / d_trk_parameters.fs_in >= 120))
// {
// d_carrier_lock_fail_counter = 200000; // force loss-of-lock condition
// debug_action1 = true;
// }
//*************
consume_each(d_current_prn_length_samples);
d_sample_counter += static_cast<uint64_t>(d_current_prn_length_samples);
if (current_synchro_data.Flag_valid_symbol_output || loss_of_lock)

View File

@@ -198,6 +198,8 @@ private:
bool d_dump_mat;
bool d_acc_carrier_phase_initialized;
bool d_enable_extended_integration;
//debug only
//bool debug_action1;
};

View File

@@ -34,7 +34,7 @@ Dll_Pll_Conf::Dll_Pll_Conf()
enable_fll_pull_in = false;
enable_fll_steady_state = false;
pull_in_time_s = 10;
bit_synchronization_time_limit_s = pull_in_time_s + 60;
bit_synchronization_time_limit_s = pull_in_time_s + 10;
fll_filter_order = 1;
pll_filter_order = 3;
dll_filter_order = 2;
@@ -138,7 +138,7 @@ void Dll_Pll_Conf::SetFromConfiguration(const ConfigurationInterface *configurat
enable_fll_steady_state = configuration->property(role + ".enable_fll_steady_state", enable_fll_steady_state);
fll_bw_hz = configuration->property(role + ".fll_bw_hz", fll_bw_hz);
pull_in_time_s = configuration->property(role + ".pull_in_time_s", pull_in_time_s);
bit_synchronization_time_limit_s = pull_in_time_s + 60;
bit_synchronization_time_limit_s = configuration->property(role + ".bit_synchronization_time_limit_s", bit_synchronization_time_limit_s);
early_late_space_chips = configuration->property(role + ".early_late_space_chips", early_late_space_chips);
early_late_space_narrow_chips = configuration->property(role + ".early_late_space_narrow_chips", early_late_space_narrow_chips);
very_early_late_space_chips = configuration->property(role + ".very_early_late_space_chips", very_early_late_space_chips);