Skip to content
Snippets Groups Projects
Select Git revision
  • 22db2b66a6ae9da4fc340c9123cb6f1c06bfeacc
  • MCCS-163 default
  • main
  • sar-277-update-docs-with-examples-for-lrc
  • st-946-automate
  • sar_302-log-fix
  • sar-287_subarray_commands_to_lrc
  • sar_302-POC_await_sub_device_state
  • sat_302_fix_pipelines
  • sar-286_lrc_one_subarry_command
  • sar-286_lrc_improvements
  • sar-288-async-controller
  • sar-276-combine-tango-queue
  • sar-255_remove_nexus_reference
  • sar-275-add-LRC
  • sar-273-add-lrc-attributes
  • sar-272
  • sp-1106-marvin-1230525148-ska-tango-base
  • sp-1106-marvin-813091765-ska-tango-base
  • sar-255/Publish-package-to-CAR
  • mccs-661-device-under-test-fixture
  • mccs-659-pep257-docstring-linting
  • 0.11.3
  • 0.11.2
  • 0.11.1
  • 0.11.0
  • 0.10.1
  • 0.10.0
  • 0.9.1
  • 0.9.0
  • 0.8.1
  • 0.8.0
  • 0.7.2
  • 0.7.1
  • 0.7.0
  • 0.6.6
  • 0.6.5
  • 0.6.4
  • 0.6.3
  • 0.6.2
  • 0.6.1
  • 0.6.0
42 results

setup.py

Blame
  • Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    fpga.h 8.77 KiB
    /* *************************************************************************
    * Copyright 2020
    * ASTRON (Netherlands Institute for Radio Astronomy) <http://www.astron.nl/>
    * P.O.Box 2, 7990 AA Dwingeloo, The Netherlands
    *
    * Licensed under the Apache License, Version 2.0 (the "License");
    * you may not use this file except in compliance with the License.
    * You may obtain a copy of the License at
    *
    * http://www.apache.org/licenses/LICENSE-2.0
    *
    * Unless required by applicable law or agreed to in writing, software
    * distributed under the License is distributed on an "AS IS" BASIS,
    * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    * See the License for the specific language governing permissions and
    * limitations under the License.
    * *********************************************************************** */
    
    /* *************************************************************************
    * Author:
    * . Leon Hiemstra
    * . Pieter Donker
    * Purpose:
    * . opc-ua to ucp translator
    * Description:
    * . class for fpga registers (peripherals) that need some more actions
    * *********************************************************************** */
    
    #ifndef __PERIPH_FPGA_H__
    #define __PERIPH_FPGA_H__
    
    
    #include <string>
    #include <vector>
    #include <fstream>
    #include <sstream>
    
    #include "../io/ucp.h"
    #include "../tools/util.h"
    #include "../registers.h"
    #include "../constants.h"
    
    
    class Periph_fpga {
    private:
      Tictoc tictoc;  // used to get some timing information
      UCP *ucp;
      CMMap *mmap;
      uint32_t GlobalNr;
      uint32_t nBeamsets;
    
      // Masked is set by the client and is used to set the fpga's to communinicate with, true is communicate, false do not.
      bool Masked;
      // Online is the communication state with the fpga true if no errors, false is no communication.
      // state is set in read_system_info() function that is called every second from the monitor() function.
      bool Online;
    
      std::string my_current_design_name;
      uint my_current_hw_version;
      std::string my_current_fw_version;
    
      bool    my_bsn_input_sync_timeout;
      int64_t my_bsn_input_bsn;
      int64_t my_xst_input_bsn_at_sync;
      int64_t my_xst_output_sync_bsn;
      int32_t my_bsn_input_nof_packets;
      int32_t my_bsn_input_nof_valid;
      int32_t my_bsn_input_nof_err;
    
      uint32_t my_jesd_csr_rbd_count[C_S_pn];