GNSS-SDR 0.0.21
An Open Source GNSS Software Defined Receiver
Loading...
Searching...
No Matches
gps_l5_dll_pll_tracking_fpga.h
Go to the documentation of this file.
1/*!
2 * \file gps_l5_dll_pll_tracking_fpga.h
3 * \brief Interface of an adapter of a DLL+PLL tracking loop block
4 * for GPS L5 to a TrackingInterface for the FPGA
5 * \author Marc Majoral, 2019. mmajoral(at)cttc.cat
6 * Javier Arribas, 2019. jarribas(at)cttc.es
7 *
8 * Code DLL + carrier PLL according to the algorithms described in:
9 * K.Borre, D.M.Akos, N.Bertelsen, P.Rinder, and S.H.Jensen,
10 * A Software-Defined GPS and Galileo Receiver. A Single-Frequency
11 * Approach, Birkhauser, 2007
12 *
13 * -----------------------------------------------------------------------------
14 *
15 * GNSS-SDR is a Global Navigation Satellite System software-defined receiver.
16 * This file is part of GNSS-SDR.
17 *
18 * Copyright (C) 2010-2020 (see AUTHORS file for a list of contributors)
19 * SPDX-License-Identifier: GPL-3.0-or-later
20 *
21 * -----------------------------------------------------------------------------
22 */
23
24#ifndef GNSS_SDR_GPS_L5_DLL_PLL_TRACKING_FPGA_H
25#define GNSS_SDR_GPS_L5_DLL_PLL_TRACKING_FPGA_H
26
28
29// /** \addtogroup Tracking
30// * \{ */
31// /** \addtogroup Tracking_adapters
32// * \{ */
33
34/*!
35 * \brief Adapter for a GPS L5 DLL+PLL tracking loop for FPGA devices
36 */
38{
39public:
40 /*!
41 * \brief Constructor
42 */
44 const std::string& role,
45 unsigned int in_streams,
46 unsigned int out_streams);
47
48 /*!
49 * \brief Destructor
50 */
52
53 /*!
54 * \brief Returns "GPS_L5_DLL_PLL_Tracking_FPGA"
55 */
56 std::string implementation() override
57 {
58 return "GPS_L5_DLL_PLL_Tracking_FPGA";
59 }
60
61private:
62 // Pointer to local PRN codes (pilot/data)
63 int32_t* prn_codes_ptr_;
64 int32_t* data_codes_ptr_;
65
66 // Pilot tracking flag
67 bool track_pilot_;
68};
69
70// /** \} */
71// /** \} */
72#endif // GNSS_SDR_GPS_L5_DLL_PLL_TRACKING_FPGA_H
Base class providing shared logic for DLL+PLL VEML tracking adapters for FPGA-based devices.
BaseDllPllTrackingFpga(const ConfigurationInterface *configuration, const std::string &role, unsigned int in_streams, unsigned int out_streams)
Base constructor of FPGA-based Tracking block adapters.
std::string role() override
Get role from the Tracking block adapter.
This abstract class represents an interface to configuration parameters.
std::string implementation() override
Returns "GPS_L5_DLL_PLL_Tracking_FPGA".
~GpsL5DllPllTrackingFpga() override
Destructor.
GpsL5DllPllTrackingFpga(const ConfigurationInterface *configuration, const std::string &role, unsigned int in_streams, unsigned int out_streams)
Constructor.