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