File constants.h

FileList > midas_fe > constants.h

Go to the source code of this file

Definitions of project-wide constants and event data structures. More...

  • #include <array>
  • #include <map>
  • #include <string>
  • #include <vector>
  • #include "registers.h"

Classes

Type Name
struct mevent_t
struct dsin_t
struct reset
struct resetcommand

Public Types

Type Name
enum uint8_t ADC_Command
enum uint8_t ADC_Mode
enum uint8_t ADC_Mux_Address

Public Attributes

Type Name
constexpr uint16_t CMD_MUTRIG_ASIC_CFG = 0x0110
constexpr uint16_t CMD_MUTRIG_ASIC_OFF = 0x0130
constexpr uint16_t CMD_MUTRIG_CNT_RESET = 0x0160
constexpr uint16_t CMD_TILE_ASIC_PWR = 0x0210
constexpr uint16_t CMD_TILE_ASIC_PWROR = 0x0220
constexpr uint16_t CMD_TILE_INJECTION_SETTING = 0x0260
constexpr uint16_t CMD_TILE_POWERMONITORS_READ = 0x0240
constexpr uint16_t CMD_TILE_TEMPERATURES_READ = 0x0230
constexpr uint16_t CMD_TILE_TEMPERATURES_READ_IDS = 0x0270
constexpr uint16_t CMD_TILE_TMB_INIT = 0x0200
constexpr uint16_t CMD_TILE_TMB_STATUS = 0x0250
constexpr uint16_t FEB_REPLY_ERROR = 0x0001
constexpr uint16_t FEB_REPLY_SUCCESS = 0x0000
constexpr uint32_t MAX_LVDS_LINKS_PER_FEB = 36
constexpr uint32_t MAX_SLOWCONTROL_MESSAGE_SIZE = 100 - 4
constexpr uint32_t MAX_SLOWCONTROL_WRITE_MESSAGE_SIZE = (1 &lt;&lt; 16) - 1
constexpr uint32_t NMUTRIGCHANNELS = 32
constexpr uint32_t N_BITS_MUTRIG = 2662
constexpr uint32_t N_BYTES_MUPIX = 48
constexpr uint32_t N_BYTES_MUTRIG = 333
constexpr uint32_t N_CHIPS = 8
constexpr uint32_t N_CHIPS_MAX = 12
constexpr uint32_t N_FEBS = 4
constexpr uint32_t N_FEBS_QUAD = 4
constexpr uint32_t N_MUTRIGS_PER_FEB = 4
constexpr size_t N_TMB_MATRIX_TEMPERATURES = 26
constexpr size_t N_TMB_STATUS_VALUES = 4
constexpr size_t N_TMB_TEMPERATURES_VALUES = 26+1
constexpr size_t N_TMB_TEMPERATURE_IDS_VALUES = 26\*2+1
constexpr size_t N_TxTM_VALUES = 26
constexpr float TMB_TEMPERATURE_FACTOR = 0.0078125
const std::array< const std::string, 13 > adcnames = /* multi line expression */
constexpr uint32_t dma_buf_nwords = dma\_buf\_size / sizeof(uint32\_t)
constexpr size_t dma_buf_size = MUDAQ\_DMABUF\_DATA\_LEN
constexpr uint32_t length = length\_32bits \* 4
constexpr uint32_t length_32bits = 12
constexpr uint32_t max_requested_words = 0x80000
constexpr uint32_t nadcvals = 13

Detailed Description

This header centralizes configuration constants used across the MuPix MIDAS frontend, including parameters for DMA buffering, FEB and chip limits, slow control protocol constraints, and data format definitions.

It also declares the mevent_t structure, which defines the format for decoded readout events from MuPix hardware.

Constants include: * Maximum LVDS links per FEB * Number of FEBs and chips * DMA buffer sizing and usage * Maximum message sizes for slow control * Configuration payload lengths

These constants provide a consistent interface across the data and control subsystems of the DAQ framework.

Public Types Documentation

enum ADC_Command

enum ADC_Command {
    Reset = 0b1000,
    Configure = 0b0100,
    Measure = 0b0010
};

enum ADC_Mode

enum ADC_Mode {
    Single = 0b0100,
    Sequence = 0b0010,
    All = 0b0001
};

enum ADC_Mux_Address

enum ADC_Mux_Address {
    ref_vssa = 0,
    Baseline = 1,
    blpix = 2,
    thpix = 3,
    blpix_2 = 4,
    ThLow = 5,
    ThHigh = 6,
    TEST_OUT = 7,
    vssa = 8,
    thpix_2 = 9,
    VCAL = 10,
    VTemp1 = 11,
    VTemp2 = 12
};

Public Attributes Documentation

variable CMD_MUTRIG_ASIC_CFG

constexpr uint16_t CMD_MUTRIG_ASIC_CFG;

variable CMD_MUTRIG_ASIC_OFF

constexpr uint16_t CMD_MUTRIG_ASIC_OFF;

variable CMD_MUTRIG_CNT_RESET

constexpr uint16_t CMD_MUTRIG_CNT_RESET;

variable CMD_TILE_ASIC_PWR

constexpr uint16_t CMD_TILE_ASIC_PWR;

variable CMD_TILE_ASIC_PWROR

constexpr uint16_t CMD_TILE_ASIC_PWROR;

variable CMD_TILE_INJECTION_SETTING

constexpr uint16_t CMD_TILE_INJECTION_SETTING;

variable CMD_TILE_POWERMONITORS_READ

constexpr uint16_t CMD_TILE_POWERMONITORS_READ;

variable CMD_TILE_TEMPERATURES_READ

constexpr uint16_t CMD_TILE_TEMPERATURES_READ;

variable CMD_TILE_TEMPERATURES_READ_IDS

constexpr uint16_t CMD_TILE_TEMPERATURES_READ_IDS;

variable CMD_TILE_TMB_INIT

constexpr uint16_t CMD_TILE_TMB_INIT;

variable CMD_TILE_TMB_STATUS

constexpr uint16_t CMD_TILE_TMB_STATUS;

variable FEB_REPLY_ERROR

constexpr uint16_t FEB_REPLY_ERROR;

variable FEB_REPLY_SUCCESS

constexpr uint16_t FEB_REPLY_SUCCESS;

constexpr uint32_t MAX_LVDS_LINKS_PER_FEB;

variable MAX_SLOWCONTROL_MESSAGE_SIZE

constexpr uint32_t MAX_SLOWCONTROL_MESSAGE_SIZE;

variable MAX_SLOWCONTROL_WRITE_MESSAGE_SIZE

constexpr uint32_t MAX_SLOWCONTROL_WRITE_MESSAGE_SIZE;

variable NMUTRIGCHANNELS

constexpr uint32_t NMUTRIGCHANNELS;

variable N_BITS_MUTRIG

constexpr uint32_t N_BITS_MUTRIG;

variable N_BYTES_MUPIX

constexpr uint32_t N_BYTES_MUPIX;

variable N_BYTES_MUTRIG

constexpr uint32_t N_BYTES_MUTRIG;

variable N_CHIPS

constexpr uint32_t N_CHIPS;

variable N_CHIPS_MAX

constexpr uint32_t N_CHIPS_MAX;

variable N_FEBS

constexpr uint32_t N_FEBS;

variable N_FEBS_QUAD

constexpr uint32_t N_FEBS_QUAD;

variable N_MUTRIGS_PER_FEB

constexpr uint32_t N_MUTRIGS_PER_FEB;

variable N_TMB_MATRIX_TEMPERATURES

constexpr size_t N_TMB_MATRIX_TEMPERATURES;

variable N_TMB_STATUS_VALUES

constexpr size_t N_TMB_STATUS_VALUES;

variable N_TMB_TEMPERATURES_VALUES

constexpr size_t N_TMB_TEMPERATURES_VALUES;

variable N_TMB_TEMPERATURE_IDS_VALUES

constexpr size_t N_TMB_TEMPERATURE_IDS_VALUES;

variable N_TxTM_VALUES

constexpr size_t N_TxTM_VALUES;

variable TMB_TEMPERATURE_FACTOR

constexpr float TMB_TEMPERATURE_FACTOR;

variable adcnames

const std::array<const std::string, 13> adcnames;

variable dma_buf_nwords

constexpr uint32_t dma_buf_nwords;

variable dma_buf_size

constexpr size_t dma_buf_size;

variable length

constexpr uint32_t length;

variable length_32bits

constexpr uint32_t length_32bits;

variable max_requested_words

constexpr uint32_t max_requested_words;

variable nadcvals

constexpr uint32_t nadcvals;


The documentation for this class was generated from the following file midas_fe/constants.h