mirror of
https://github.com/gnss-sdr/gnss-sdr
synced 2024-12-14 12:10:34 +00:00
Merge branch 'mmajoral-fix_stop_FPGA_receiver' into next
This commit is contained in:
commit
0723454753
@ -189,8 +189,8 @@ GalileoE1PcpsAmbiguousAcquisitionFpga::GalileoE1PcpsAmbiguousAcquisitionFpga(
|
||||
|
||||
void GalileoE1PcpsAmbiguousAcquisitionFpga::stop_acquisition()
|
||||
{
|
||||
// this command causes the SW to reset the HW.
|
||||
acquisition_fpga_->reset_acquisition();
|
||||
// stop the acquisition and the other FPGA modules.
|
||||
acquisition_fpga_->stop_acquisition();
|
||||
}
|
||||
|
||||
|
||||
|
@ -192,8 +192,8 @@ GalileoE5aPcpsAcquisitionFpga::GalileoE5aPcpsAcquisitionFpga(
|
||||
|
||||
void GalileoE5aPcpsAcquisitionFpga::stop_acquisition()
|
||||
{
|
||||
// this command causes the SW to reset the HW.
|
||||
acquisition_fpga_->reset_acquisition();
|
||||
// stop the acquisition and the other FPGA modules.
|
||||
acquisition_fpga_->stop_acquisition();
|
||||
}
|
||||
|
||||
|
||||
|
@ -168,8 +168,8 @@ GpsL1CaPcpsAcquisitionFpga::GpsL1CaPcpsAcquisitionFpga(
|
||||
|
||||
void GpsL1CaPcpsAcquisitionFpga::stop_acquisition()
|
||||
{
|
||||
// this command causes the SW to reset the HW.
|
||||
acquisition_fpga_->reset_acquisition();
|
||||
// stop the acquisition and the other FPGA modules.
|
||||
acquisition_fpga_->stop_acquisition();
|
||||
}
|
||||
|
||||
|
||||
|
@ -158,6 +158,8 @@ GpsL2MPcpsAcquisitionFpga::GpsL2MPcpsAcquisitionFpga(
|
||||
|
||||
void GpsL2MPcpsAcquisitionFpga::stop_acquisition()
|
||||
{
|
||||
// stop the acquisition and the other FPGA modules.
|
||||
acquisition_fpga_->stop_acquisition();
|
||||
}
|
||||
|
||||
|
||||
|
@ -170,8 +170,8 @@ GpsL5iPcpsAcquisitionFpga::GpsL5iPcpsAcquisitionFpga(
|
||||
|
||||
void GpsL5iPcpsAcquisitionFpga::stop_acquisition()
|
||||
{
|
||||
// this command causes the SW to reset the HW.
|
||||
acquisition_fpga_->reset_acquisition();
|
||||
// stop the acquisition and the other FPGA modules.
|
||||
acquisition_fpga_->stop_acquisition();
|
||||
}
|
||||
|
||||
|
||||
|
@ -301,3 +301,11 @@ void pcps_acquisition_fpga::reset_acquisition()
|
||||
d_acquisition_fpga->reset_acquisition();
|
||||
d_acquisition_fpga->close_device();
|
||||
}
|
||||
|
||||
void pcps_acquisition_fpga::stop_acquisition()
|
||||
{
|
||||
// this function stops the acquisition and the other FPGA Modules.
|
||||
d_acquisition_fpga->open_device();
|
||||
d_acquisition_fpga->stop_acquisition();
|
||||
d_acquisition_fpga->close_device();
|
||||
}
|
||||
|
@ -189,6 +189,11 @@ public:
|
||||
*/
|
||||
void reset_acquisition();
|
||||
|
||||
/*!
|
||||
* \brief stop the acquisition and the other FPGA modules.
|
||||
*/
|
||||
void stop_acquisition();
|
||||
|
||||
private:
|
||||
friend pcps_acquisition_fpga_sptr pcps_make_acquisition_fpga(pcpsconf_fpga_t conf_);
|
||||
explicit pcps_acquisition_fpga(pcpsconf_fpga_t conf_);
|
||||
|
@ -240,11 +240,15 @@ void Fpga_Acquisition::close_device()
|
||||
|
||||
void Fpga_Acquisition::reset_acquisition()
|
||||
{
|
||||
// printf("============ resetting the hw now from the acquisition ===============");
|
||||
d_map_base[8] = RESET_ACQUISITION; // writing a 2 to d_map_base[8] resets the acquisition. This causes a reset of all
|
||||
d_map_base[8] = RESET_ACQUISITION; // setting bit 2 of d_map_base[8] resets the acquisition. This causes a reset of all
|
||||
// the FPGA HW modules including the multicorrelators
|
||||
}
|
||||
|
||||
void Fpga_Acquisition::stop_acquisition()
|
||||
{
|
||||
d_map_base[8] = STOP_ACQUISITION; // setting bit 3 of d_map_base[8] stops the acquisition module. This stops all
|
||||
// the FPGA HW modules including the multicorrelators
|
||||
}
|
||||
|
||||
// this function is only used for the unit tests
|
||||
void Fpga_Acquisition::read_fpga_total_scale_factor(uint32_t *total_scale_factor, uint32_t *fw_scale_factor)
|
||||
|
@ -105,6 +105,11 @@ public:
|
||||
*/
|
||||
void reset_acquisition();
|
||||
|
||||
/*!
|
||||
* \brief stop the acquisition and the FPGA modules.
|
||||
*/
|
||||
void stop_acquisition();
|
||||
|
||||
/*!
|
||||
* \brief Read the scaling factor that has been used by the FFT-IFFT
|
||||
*/
|
||||
@ -138,8 +143,9 @@ public:
|
||||
private:
|
||||
// FPGA register parameters
|
||||
static const uint32_t PAGE_SIZE_DEFAULT = 0x10000; // default page size for the multicorrelator memory map
|
||||
static const uint32_t RESET_ACQUISITION = 2; // command to reset the multicorrelator
|
||||
static const uint32_t LAUNCH_ACQUISITION = 1; // command to launch the multicorrelator
|
||||
static const uint32_t LAUNCH_ACQUISITION = 1; // command to launch the acquisition process
|
||||
static const uint32_t RESET_ACQUISITION = 2; // command to reset the acquisition and the FPGA Modules
|
||||
static const uint32_t STOP_ACQUISITION = 4; // command to stop the acquisition and the FPGA modules
|
||||
static const uint32_t TEST_REG_SANITY_CHECK = 0x55AA; // value to check the presence of the test register (to detect the hw)
|
||||
static const uint32_t LOCAL_CODE_CLEAR_MEM = 0x10000000; // command to clear the internal memory of the multicorrelator
|
||||
static const uint32_t MEM_LOCAL_CODE_WR_ENABLE = 0x0C000000; // command to enable the ENA and WR pins of the internal memory of the multicorrelator
|
||||
|
Loading…
Reference in New Issue
Block a user