All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
CAEN_V1730_setup_icarus.fcl
Go to the documentation of this file.
1 #
2 # File: CAEN_V1730_setup_icarus.fcl
3 # Purpose: Features of the setup of CAEN V1730 PMT readout boards in ICARUS.
4 # Author: Gianluca Petrillo (petrillo@slac.stanford.edu)
5 # Date: April 13, 2021
6 #
7 # V1730 setup information:
8 #
9 # * Name: name of the board, as specified in DAQ configuration
10 # * TriggerDelay: delay from the time stamp of the global trigger to the
11 # first post-trigger sample of the board
12 #
13 
14 BEGIN_PROLOG
15 
16 ################################################################################
17 ### Run0
18 ################################################################################
19 #
20 # "Run 0": configuration good for commissioning and Run 0 runs.
21 #
22 # This configuration is FROZEN: do not change it.
23 #
24 # Delays have been measured by Andrea Scarpelli, Animesh Chatterjee and Nick Suarez
25 # (see e.g. SBN DocDB 20283); the figure "43 ns" here is a rough guess from
26 # some of the measurements -- more precise ones may be available;
27 # the offset measured against a (supposedly) common reference via the
28 # Trigger Time Tag counter of the readout board settles to 48 ns
29 # (the counter tick is worth 16 ns).
30 #
32 
33  ### --------------------------------------------------------------------------
34  ### WW
35  ### --------------------------------------------------------------------------
36  #
37  # top
38  #
39  { Name: "icaruspmtwwtop01" TriggerDelay: " 0 ns" },
40  { Name: "icaruspmtwwtop02" TriggerDelay: "43 ns" },
41  { Name: "icaruspmtwwtop03" TriggerDelay: "86 ns" },
42  #
43  # bottom
44  #
45  { Name: "icaruspmtwwbot01" TriggerDelay: " 0 ns" },
46  { Name: "icaruspmtwwbot02" TriggerDelay: "43 ns" },
47  { Name: "icaruspmtwwbot03" TriggerDelay: "86 ns" },
48  ### --------------------------------------------------------------------------
49  ### WE
50  ### --------------------------------------------------------------------------
51  #
52  # top
53  #
54  { Name: "icaruspmtwetop01" TriggerDelay: " 0 ns" },
55  { Name: "icaruspmtwetop02" TriggerDelay: "43 ns" },
56  { Name: "icaruspmtwetop03" TriggerDelay: "86 ns" },
57  #
58  # bottom
59  #
60  { Name: "icaruspmtwebot01" TriggerDelay: " 0 ns" },
61  { Name: "icaruspmtwebot02" TriggerDelay: "43 ns" },
62  { Name: "icaruspmtwebot03" TriggerDelay: "86 ns" }
63  ### --------------------------------------------------------------------------
64 
66 
67 
68 icarus_V1730_East_setup_Run0: [
69  ### --------------------------------------------------------------------------
70  ### EW
71  ### --------------------------------------------------------------------------
72  #
73  # top
74  #
75  { Name: "icaruspmtewtop01" TriggerDelay: " 0 ns" },
76  { Name: "icaruspmtewtop02" TriggerDelay: "43 ns" },
77  { Name: "icaruspmtewtop03" TriggerDelay: "86 ns" },
78  #
79  # bottom
80  #
81  { Name: "icaruspmtewbot01" TriggerDelay: " 0 ns" },
82  { Name: "icaruspmtewbot02" TriggerDelay: "43 ns" },
83  { Name: "icaruspmtewbot03" TriggerDelay: "86 ns" },
84  ### --------------------------------------------------------------------------
85  ### EE
86  ### --------------------------------------------------------------------------
87  #
88  # top
89  #
90  { Name: "icaruspmteetop01" TriggerDelay: " 0 ns" },
91  { Name: "icaruspmteetop02" TriggerDelay: "43 ns" },
92  { Name: "icaruspmteetop03" TriggerDelay: "86 ns" },
93  #
94  # bottom
95  #
96  { Name: "icaruspmteebot01" TriggerDelay: " 0 ns" },
97  { Name: "icaruspmteebot02" TriggerDelay: "43 ns" },
98  { Name: "icaruspmteebot03" TriggerDelay: "86 ns" }
99  ### --------------------------------------------------------------------------
100 
101 ] # icarus_V1730_East_setup_Run0
102 
103 
104 icarus_V1730_setup_Run0: [
105 
107  @sequence::icarus_V1730_East_setup_Run0
108 
109 ] # icarus_V1730_setup_Run0
110 
111 
112 ################################################################################
113 ### Run1
114 ################################################################################
115 
116 #
117 # configuration for one special channel reading the trigger primitives
118 #
120  ChannelIndex: 15 # the last one
121  Channel: @nil # needs to be customized on each board
122  InstanceName: "trgprim"
123 }
124 icarus_V1730_16thChannel_RWM_setup_Run1: {
125  ChannelIndex: 15 # the last one
126  Channel: @nil # needs to be customized on each board
127  OnlyOnGlobalTrigger: true
128  InstanceName: "RWM"
129 }
130 icarus_V1730_16thChannel_BES_setup_Run1: {
131  ChannelIndex: 15 # the last one
132  Channel: @nil # needs to be customized on each board
133  OnlyOnGlobalTrigger: true
134  InstanceName: "BES"
135 }
136 icarus_V1730_16thChannel_BNBbeam_setup_Run1: {
137  ChannelIndex: 15 # the last one
138  Channel: @nil # needs to be customized on each board
139  MinSpan: 100 # needs to span at least 100 ADC peak-to-peak
140  OnlyOnGlobalTrigger: true
141  InstanceName: "BNB"
142 }
143 icarus_V1730_16thChannel_NuMIbeam_setup_Run1: {
144  ChannelIndex: 15 # the last one
145  Channel: @nil # needs to be customized on each board
146  MinSpan: 100 # needs to span at least 100 ADC peak-to-peak
147  OnlyOnGlobalTrigger: true
148  InstanceName: "NuMI"
149 }
150 icarus_V1730_16thChannel_misc_setup_Run1: {
151  ChannelIndex: 15 # the last one
152  Channel: @nil # needs to be customized on each board
153  MinSpan: 40
154  InstanceName: "unknwn"
155 }
156 
157 #
158 # "Run 1": configuration good for data taken after March 2022.
159 #
160 # This configuration is FROZEN: do not change it.
161 #
162 # Delays have been measured by Andrea Scarpelli, Animesh Chatterjee and Nick Suarez
163 # (see e.g. SBN DocDB 20283); the figure "43 ns" here is a rough guess from
164 # some of the measurements -- more precise ones may be available;
165 # the offset measured against a (supposedly) common reference via the
166 # Trigger Time Tag counter of the readout board settles to 48 ns
167 # (the counter tick is worth 16 ns).
168 # The special channels are saved and their channel number encodes their meaning:
169 # 0xT0CB:
170 # * `T`: the content of the channel:
171 # * 0: PMT signal (routed into data product with empty instance name)
172 # * 1: trigger primitive signal (routed into "trgprim" data product instance name)
173 # * 2: RWM signal (routed into "RWM" data product instance name)
174 # * 3: early warning signal (routed into "earlw" data product instance name)
175 # * 4: BNB beam signal (either RWM or early warning, routed into "BNB" data product instance name)
176 # * 5: NuMI beam signal (either RWM or early warning, routed into "NuMI" data product instance name)
177 # * 7: unknown/unspecified (routed into "unknwn" data product instance name)
178 # * `C`: identifier of the crate (containing three boards), in three bits `cts`:
179 # * `c`: cryostat bit: `0` for east cryostat ("e"), `1` for west cryostat ("w")
180 # * `t`: TPC bit: `0` for east TPC ("e"), `1` for west TPC ("w")
181 # * `s`: side: `0` for bottom ("bot"), `1` for top ("top")
182 # For example, the digit 5 (0b101) is the crate `wetop`.
183 # * `B`: board inside the crate: 1, 2 or 3.
184 #
185 icarus_V1730_West_setup_Run1: [
186 
187  ### --------------------------------------------------------------------------
188  ### WW
189  ### --------------------------------------------------------------------------
190  #
191  # top
192  #
193  { Name: "icaruspmtwwtop01" TriggerDelay: " 0 ns" SpecialChannels: [ { @table::icarus_V1730_16thChannel_trgprim_setup_Run1 Channel: 0x1071 } ] },
194  { Name: "icaruspmtwwtop02" TriggerDelay: "43 ns" SpecialChannels: [ { @table::icarus_V1730_16thChannel_BNBbeam_setup_Run1 Channel: 0x4072 } ] },
195  { Name: "icaruspmtwwtop03" TriggerDelay: "86 ns" SpecialChannels: [ { @table::icarus_V1730_16thChannel_NuMIbeam_setup_Run1 Channel: 0x5073 } ] },
196  #
197  # bottom
198  #
199  { Name: "icaruspmtwwbot01" TriggerDelay: " 0 ns" SpecialChannels: [ { @table::icarus_V1730_16thChannel_trgprim_setup_Run1 Channel: 0x1061 } ] },
200  { Name: "icaruspmtwwbot02" TriggerDelay: "43 ns" SpecialChannels: [ { @table::icarus_V1730_16thChannel_BNBbeam_setup_Run1 Channel: 0x4062 } ] },
201  { Name: "icaruspmtwwbot03" TriggerDelay: "86 ns" SpecialChannels: [ { @table::icarus_V1730_16thChannel_NuMIbeam_setup_Run1 Channel: 0x5063 } ] },
202  ### --------------------------------------------------------------------------
203  ### WE
204  ### --------------------------------------------------------------------------
205  #
206  # top
207  #
208  { Name: "icaruspmtwetop01" TriggerDelay: " 0 ns" SpecialChannels: [ { @table::icarus_V1730_16thChannel_trgprim_setup_Run1 Channel: 0x1051 } ] },
209  { Name: "icaruspmtwetop02" TriggerDelay: "43 ns" SpecialChannels: [ { @table::icarus_V1730_16thChannel_BNBbeam_setup_Run1 Channel: 0x4052 } ] },
210  { Name: "icaruspmtwetop03" TriggerDelay: "86 ns" SpecialChannels: [ { @table::icarus_V1730_16thChannel_NuMIbeam_setup_Run1 Channel: 0x5053 } ] },
211  #
212  # bottom
213  #
214  { Name: "icaruspmtwebot01" TriggerDelay: " 0 ns" SpecialChannels: [ { @table::icarus_V1730_16thChannel_trgprim_setup_Run1 Channel: 0x1041 } ] },
215  { Name: "icaruspmtwebot02" TriggerDelay: "43 ns" SpecialChannels: [ { @table::icarus_V1730_16thChannel_BNBbeam_setup_Run1 Channel: 0x4042 } ] },
216  { Name: "icaruspmtwebot03" TriggerDelay: "86 ns" SpecialChannels: [ { @table::icarus_V1730_16thChannel_NuMIbeam_setup_Run1 Channel: 0x5043 } ] }
217  ### --------------------------------------------------------------------------
218 
219 ] # icarus_V1730_West_setup_Run1
220 
221 
222 icarus_V1730_East_setup_Run1: [
223  ### --------------------------------------------------------------------------
224  ### EW
225  ### --------------------------------------------------------------------------
226  #
227  # top
228  #
229  { Name: "icaruspmtewtop01" TriggerDelay: " 0 ns" SpecialChannels: [ { @table::icarus_V1730_16thChannel_trgprim_setup_Run1 Channel: 0x1031 } ] },
230  { Name: "icaruspmtewtop02" TriggerDelay: "43 ns" SpecialChannels: [ { @table::icarus_V1730_16thChannel_BNBbeam_setup_Run1 Channel: 0x4032 } ] },
231  { Name: "icaruspmtewtop03" TriggerDelay: "86 ns" SpecialChannels: [ { @table::icarus_V1730_16thChannel_NuMIbeam_setup_Run1 Channel: 0x5033 } ] },
232  #
233  # bottom
234  #
235  { Name: "icaruspmtewbot01" TriggerDelay: " 0 ns" SpecialChannels: [ { @table::icarus_V1730_16thChannel_trgprim_setup_Run1 Channel: 0x1021 } ] },
236  { Name: "icaruspmtewbot02" TriggerDelay: "43 ns" SpecialChannels: [ { @table::icarus_V1730_16thChannel_BNBbeam_setup_Run1 Channel: 0x4022 } ] },
237  { Name: "icaruspmtewbot03" TriggerDelay: "86 ns" SpecialChannels: [ { @table::icarus_V1730_16thChannel_NuMIbeam_setup_Run1 Channel: 0x5023 } ] },
238  ### --------------------------------------------------------------------------
239  ### EE
240  ### --------------------------------------------------------------------------
241  #
242  # top
243  #
244  { Name: "icaruspmteetop01" TriggerDelay: " 0 ns" SpecialChannels: [ { @table::icarus_V1730_16thChannel_trgprim_setup_Run1 Channel: 0x1011 } ] },
245  { Name: "icaruspmteetop02" TriggerDelay: "43 ns" SpecialChannels: [ { @table::icarus_V1730_16thChannel_BNBbeam_setup_Run1 Channel: 0x4012 } ] },
246  { Name: "icaruspmteetop03" TriggerDelay: "86 ns" SpecialChannels: [ { @table::icarus_V1730_16thChannel_NuMIbeam_setup_Run1 Channel: 0x5013 } ] },
247  #
248  # bottom
249  #
250  { Name: "icaruspmteebot01" TriggerDelay: " 0 ns" SpecialChannels: [ { @table::icarus_V1730_16thChannel_trgprim_setup_Run1 Channel: 0x1001 } ] },
251  { Name: "icaruspmteebot02" TriggerDelay: "43 ns" SpecialChannels: [ { @table::icarus_V1730_16thChannel_BNBbeam_setup_Run1 Channel: 0x4002 } ] },
252  { Name: "icaruspmteebot03" TriggerDelay: "86 ns" SpecialChannels: [ { @table::icarus_V1730_16thChannel_NuMIbeam_setup_Run1 Channel: 0x5003 } ] }
253  ### --------------------------------------------------------------------------
254 
255 ] # icarus_V1730_East_setup_Run1
256 
257 
258 icarus_V1730_setup_Run1: [
259 
260  @sequence::icarus_V1730_West_setup_Run1,
261  @sequence::icarus_V1730_East_setup_Run1
262 
263 ] # icarus_V1730_setup_Run1
264 
265 
266 ################################################################################
267 ### current default
268 ################################################################################
269 icarus_V1730_setup: @local::icarus_V1730_setup_Run1
270 
271 
272 ################################################################################
273 
274 END_PROLOG
BEGIN_PROLOG icarus_V1730_West_setup_Run0
#define the
BEGIN_PROLOG sequence::icarus_V1730_East_setup_Run0 icarus_V1730_16thChannel_trgprim_setup_Run1
BEGIN_PROLOG vertical distance to the surface Name
then echo Cowardly refusing to create a new FHiCL file with the same name as the original one('${SourceName}')." >&2 exit 1 fi echo "'$