CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
ConstantsForHardwareSystems.h
Go to the documentation of this file.
1 
2 #ifndef DataFormats_SiStripCommon_ConstantsForHardwareSystems_H
3 #define DataFormats_SiStripCommon_ConstantsForHardwareSystems_H
4 
7 
13 namespace sistrip {
14 
15  // -------------------- FED misc --------------------
16 
17  static const uint16_t FED_ADC_RANGE = 0x400; // 1024
18 
19  // -------------------- FED ids --------------------
20 
21  static const uint16_t FED_ID_MIN = static_cast<uint16_t>(FEDNumbering::MINSiStripFEDID);
22  static const uint16_t FED_ID_MAX = static_cast<uint16_t>(FEDNumbering::MAXSiStripFEDID);
23  static const uint16_t CMS_FED_ID_MAX = static_cast<uint16_t>(FEDNumbering::MAXFEDID);
24  static const uint16_t NUMBER_OF_FEDS = static_cast<uint16_t>(FED_ID_MAX - FED_ID_MIN + 1);
25 
26  // -------------------- FEDs to channels --------------------
27 
28  static const uint16_t FEDCH_PER_FEUNIT = 12;
29  static const uint16_t FEUNITS_PER_FED = 8;
30  static const uint16_t FEDCH_PER_FED = FEDCH_PER_FEUNIT * FEUNITS_PER_FED; // 96
31 
32  // -------------------- Front-end devices --------------------
33 
34  static const uint16_t APVS_PER_FEDCH = 2;
35  static const uint16_t APVS_PER_FEUNIT = APVS_PER_FEDCH * FEDCH_PER_FEUNIT; // 24
36  static const uint16_t APVS_PER_FED = APVS_PER_FEUNIT * FEUNITS_PER_FED; // 194
37 
38  static const uint16_t APVS_PER_CHAN = 2;
39  static const uint16_t CHANS_PER_LLD = 3;
40 
41  // -------------------- Detector strips --------------------
42 
43  static const uint16_t STRIPS_PER_APV = 128;
44  static const uint16_t STRIPS_PER_FEDCH = STRIPS_PER_APV * APVS_PER_FEDCH;
45  static const uint16_t STRIPS_PER_FEUNIT = STRIPS_PER_FEDCH * FEDCH_PER_FEUNIT; // 3072
46  static const uint16_t STRIPS_PER_FED = STRIPS_PER_FEUNIT * FEUNITS_PER_FED; // 24576
47 
48  // -------------------- FED buffers --------------------
49 
50  static const uint16_t DAQ_HDR_SIZE = 8;
51  static const uint16_t TRK_HDR_SIZE = 8;
52  static const uint16_t FE_HDR_SIZE = 16;
53  static const uint16_t APV_ERROR_HDR_SIZE = 24;
54  static const uint16_t FULL_DEBUG_HDR_SIZE = 8 * FE_HDR_SIZE;
55 
56  // -------------------- Control system --------------------
57 
58  //static const uint16_t FEC_CRATE_OFFSET = 1; //@@ temporary
59  //static const uint16_t FEC_RING_OFFSET = 1; //@@ temporary
60 
61  static const uint16_t FEC_RING_MIN = 1;
62  static const uint16_t FEC_RING_MAX = 8;
63 
64  static const uint16_t CCU_ADDR_MIN = 1;
65  static const uint16_t CCU_ADDR_MAX = 127;
66 
67  static const uint16_t CCU_CHAN_MIN = 16;
68  static const uint16_t CCU_CHAN_MAX = 31;
69 
70  static const uint16_t LLD_CHAN_MIN = 1;
71  static const uint16_t LLD_CHAN_MAX = 3;
72 
73  static const uint16_t APV_I2C_MIN = 32;
74  static const uint16_t APV_I2C_MAX = 37;
75 
76  // -------------------- VME crates --------------------
77 
78  static const uint16_t SLOTS_PER_CRATE = 20;
79 
80  static const uint16_t CRATE_SLOT_MIN = 2; // slot 1 is reserved for VME controller
81  static const uint16_t CRATE_SLOT_MAX = 21;
82 
83  static const uint16_t MAX_FEDS_PER_CRATE = 16;
84  static const uint16_t MAX_FECS_PER_CRATE = 20;
85 
86  static const uint16_t FED_CRATE_MIN = 1;
87  static const uint16_t FED_CRATE_MAX = 60;
88 
89  static const uint16_t FEC_CRATE_MIN = 1;
90  static const uint16_t FEC_CRATE_MAX = 4;
91 
92  // -------------------- String constants --------------------
93 
94  static const char unknownApvReadoutMode_[] = "UnknownApvReadoutMode";
95  static const char undefinedApvReadoutMode_[] = "UndefinedApvReadoutMode";
96 
97  static const char apvPeakMode_[] = "ApvPeakMode";
98  static const char apvDeconMode_[] = "ApvDeconMode";
99  static const char apvMultiMode_[] = "ApvMultiMode";
100 
101  static const char unknownFedReadoutMode_[] = "UnknownFedReadoutMode";
102  static const char undefinedFedReadoutMode_[] = "UndefinedFedReadoutMode";
103 
104  static const char fedScopeMode_[] = "FedScopeMode";
105  static const char fedVirginRaw_[] = "FedVirginRaw";
106  static const char fedProcRaw_[] = "FedProcessedRaw";
107  static const char fedZeroSuppr_[] = "FedZeroSuppressed";
108  static const char fedZeroSupprCMO_[] = "FedZeroSuppressedCMOverride";
109  static const char fedZeroSupprLite_[] = "FedZeroSupprressedLite";
110  static const char fedZeroSupprLiteCMO_[] = "FedZeroSuppressedLiteCMOverride";
111  static const char fedZeroSupprLite8TT_[] = "FedZeroSuppressedLite8TT";
112  static const char fedZeroSupprLite8TTCMO_[] = "FedZeroSuppressedLite8TTCMOverride";
113  static const char fedZeroSupprLite8TB_[] = "FedZeroSuppressedLite8TB";
114  static const char fedZeroSupprLite8TBCMO_[] = "FedZeroSuppressedLite8TBCMOverride";
115  static const char fedZeroSupprLite8BB_[] = "FedZeroSuppressedLite8BB";
116  static const char fedZeroSupprLite8BBCMO_[] = "FedZeroSuppressedLite8BBCMOverride";
117  static const char fedPreMixRaw_[] = "FedPreMixRaw";
118 
119  // -------------------- Enumerators --------------------
120 
127  };
128 
145  };
146 
152  };
153 
159  };
160 
164  REAL = 0,
165  FAKE = 1
166  };
167 
168 } // namespace sistrip
169 
170 #endif // DataFormats_SiStripCommon_ConstantsForHardwareSystems_H
static const uint16_t APVS_PER_FEUNIT
static const uint16_t STRIPS_PER_FEUNIT
static const uint16_t APV_I2C_MIN
static const char apvDeconMode_[]
static const uint16_t NUMBER_OF_FEDS
static const uint16_t FED_ID_MIN
static const uint16_t FED_CRATE_MIN
static const uint16_t CCU_ADDR_MAX
static const uint16_t CCU_CHAN_MAX
static const uint16_t TRK_HDR_SIZE
static const uint16_t CCU_CHAN_MIN
static const uint16_t LLD_CHAN_MIN
static const uint16_t LLD_CHAN_MAX
static const uint16_t FED_CRATE_MAX
static const uint16_t CMS_FED_ID_MAX
static const uint16_t FEC_CRATE_MIN
static const uint16_t FED_ADC_RANGE
static const uint16_t CRATE_SLOT_MAX
static const char fedZeroSupprLite8BB_[]
static const char fedZeroSupprLite_[]
static const char fedZeroSupprCMO_[]
static const uint16_t FEC_RING_MAX
static const uint16_t FEC_CRATE_MAX
static const uint16_t STRIPS_PER_FED
static const uint16_t FULL_DEBUG_HDR_SIZE
static const uint16_t CCU_ADDR_MIN
static const uint16_t SLOTS_PER_CRATE
static const uint16_t MAX_FECS_PER_CRATE
static const uint16_t FEUNITS_PER_FED
static const uint16_t MAX_FEDS_PER_CRATE
static const char fedProcRaw_[]
static const uint16_t CHANS_PER_LLD
static const char fedVirginRaw_[]
static const char unknownFedReadoutMode_[]
static const char fedScopeMode_[]
static const char fedZeroSupprLite8TB_[]
static const uint16_t FEC_RING_MIN
static const char undefinedFedReadoutMode_[]
static const uint16_t CRATE_SLOT_MIN
static const uint16_t STRIPS_PER_FEDCH
static const uint16_t APVS_PER_FED
static const uint16_t FEDCH_PER_FEUNIT
static const char fedZeroSupprLiteCMO_[]
static const char apvPeakMode_[]
static const uint16_t invalid_
Definition: Constants.h:16
static const uint16_t unknown_
Definition: Constants.h:19
static const char fedZeroSupprLite8BBCMO_[]
static const uint16_t APVS_PER_CHAN
static const char undefinedApvReadoutMode_[]
static const uint16_t FE_HDR_SIZE
static const uint16_t APV_I2C_MAX
static const uint16_t FEDCH_PER_FED
static const uint16_t STRIPS_PER_APV
static const char fedZeroSupprLite8TTCMO_[]
static const uint16_t FED_ID_MAX
static const uint16_t APV_ERROR_HDR_SIZE
static const uint16_t APVS_PER_FEDCH
static const char fedZeroSupprLite8TT_[]
static const char fedZeroSupprLite8TBCMO_[]
static const uint16_t DAQ_HDR_SIZE
static const char unknownApvReadoutMode_[]
static const char fedZeroSuppr_[]
static const char apvMultiMode_[]
static const char fedPreMixRaw_[]