23 #ifndef GNSS_SDR_GPS_L1_CA_DLL_PLL_TRACKING_FPGA_H 24 #define GNSS_SDR_GPS_L1_CA_DLL_PLL_TRACKING_FPGA_H 49 const std::string&
role,
50 unsigned int in_streams,
51 unsigned int out_streams);
61 inline std::string
role()
override 71 return "GPS_L1_CA_DLL_PLL_Tracking_Fpga";
79 return sizeof(int16_t);
85 void connect(gr::top_block_sptr top_block)
override;
90 void disconnect(gr::top_block_sptr top_block)
override;
124 const std::string default_device_name_GPS_L1 =
"multicorrelator_resampler_S00_AXI";
125 const std::string default_device_name_Galileo_E1 =
"multicorrelator_resampler_5_1_AXI";
127 static const uint32_t NUM_PRNs = 32;
128 static const int32_t GPS_CA_BIT_DURATION_MS = 20;
131 static const int32_t LOCAL_CODE_FPGA_ENABLE_WRITE_MEMORY = 0x0C000000;
133 dll_pll_veml_tracking_fpga_sptr tracking_fpga_sc_sptr_;
135 std::string device_name_;
136 int32_t* ca_codes_ptr_;
137 uint32_t num_prev_assigned_ch_;
139 uint32_t in_streams_;
140 uint32_t out_streams_;
146 #endif // GNSS_SDR_GPS_L1_CA_DLL_PLL_TRACKING_FPGA_H void set_gnss_synchro(Gnss_Synchro *p_gnss_synchro) override
Set acquisition/tracking common Gnss_Synchro object pointer to efficiently exchange synchronization d...
Implementation of a code DLL + carrier PLL tracking block using an FPGA.
void disconnect(gr::top_block_sptr top_block) override
Disconnect.
gr::basic_block_sptr get_right_block() override
Get right block.
GpsL1CaDllPllTrackingFpga(const ConfigurationInterface *configuration, const std::string &role, unsigned int in_streams, unsigned int out_streams)
Constructor.
size_t item_size() override
Returns size of lv_16sc_t.
std::string role() override
Role.
This is the class that contains the information that is shared by the processing blocks.
virtual ~GpsL1CaDllPllTrackingFpga()
Destructor.
This abstract class represents an interface to configuration parameters.
void set_channel(unsigned int channel) override
Set tracking channel unique ID.
void connect(gr::top_block_sptr top_block) override
Connect.
This abstract class represents an interface to a tracking block.
This class implements a code DLL + carrier PLL tracking loop.
void start_tracking() override
Start the tracking process in the FPGA.
std::string implementation() override
Returns "GPS_L1_CA_DLL_PLL_Tracking_Fpga".
gr::basic_block_sptr get_left_block() override
Get left block.
void stop_tracking() override
Stop the tracking process in the FPGA.
This class represents an interface to a tracking block.