mirror of
				https://github.com/gnss-sdr/gnss-sdr
				synced 2025-10-31 07:13:03 +00:00 
			
		
		
		
	- set output vectors is only done in the class constructor, no need to do it continuously
- no need to multiply by two the results of the multicorrelator HW accelerators
This commit is contained in:
		| @@ -172,6 +172,8 @@ Gps_L1_Ca_Dll_Pll_Tracking_fpga_sc::Gps_L1_Ca_Dll_Pll_Tracking_fpga_sc( | ||||
|     d_carrier_phase_step_rad = 0.0; | ||||
|  | ||||
|     set_relative_rate(1.0 / static_cast<double>(d_vector_length)); | ||||
|  | ||||
|     multicorrelator_fpga_8sc->set_output_vectors(d_correlator_outs); | ||||
| } | ||||
|  | ||||
| void Gps_L1_Ca_Dll_Pll_Tracking_fpga_sc::start_tracking() | ||||
| @@ -320,7 +322,6 @@ int Gps_L1_Ca_Dll_Pll_Tracking_fpga_sc::general_work (int noutput_items __attrib | ||||
|  | ||||
|             // ################# CARRIER WIPEOFF AND CORRELATORS ############################## | ||||
|             // perform carrier wipe-off and compute Early, Prompt and Late correlation | ||||
| 			multicorrelator_fpga_8sc->set_output_vectors(d_correlator_outs); | ||||
| 			multicorrelator_fpga_8sc->Carrier_wipeoff_multicorrelator_resampler( | ||||
| 			d_rem_carr_phase_rad, d_carrier_phase_step_rad, | ||||
| 			d_rem_code_phase_chips, d_code_phase_step_chips, | ||||
|   | ||||
| @@ -403,14 +403,12 @@ void fpga_multicorrelator_8sc::read_tracking_gps_results(void) | ||||
|                 { | ||||
|                     readval_real = -2097152 + readval_real; | ||||
|                 } | ||||
|             readval_real = readval_real * 2; // the results are shifted two bits to the left due to the complex multiplier in the FPGA | ||||
|  | ||||
|             readval_imag = d_map_base[1 + d_n_correlators + k]; | ||||
|             if (readval_imag >= 1048576) // 0x100000 (21 bits two's complement) | ||||
|                 { | ||||
|                     readval_imag = -2097152 + readval_imag; | ||||
|                 } | ||||
|             readval_imag = readval_imag * 2; // the results are shifted two bits to the left due to the complex multiplier in the FPGA | ||||
|             d_corr_out[k] = gr_complex(readval_real,readval_imag); | ||||
|         } | ||||
| } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 mmajoral
					mmajoral