Wiki source code of Trigger Howto

Version 21.1 by sndueste on 2020/01/23 12:32

Hide last authors
sendels 1.1 1
2
sndueste 6.1 3 {{toc/}}
sendels 1.1 4
sndueste 10.1 5 = Introduction (user panel)
6 =
sendels 1.1 7
sndueste 19.1 8 The MTCA based triggers have a jitter in the few ps range, the delay can be shifted in 9 ns steps, One can choose between 10 Hz triggers, Triggers connected to the (fast) FEL shutters,  frequencies locked to the pulses (e.g. 1MHz) and the actual bunch patterns. A detailed description can be found in [[x2Timer manual>>attach:x2Timer.pdf]] ([[Design Paper>>url:http://ttfinfo2.desy.de/doocs/Timing/CDRv2.2short.pdf||shape="rect"]]).
sendels 1.1 9
sndueste 19.1 10 In short:
sendels 1.1 11
sndueste 19.1 12 * the triggers are for low impedance (~~50 Ohm )
13 * signal level is + 5V - otherwise 0V (in the expert panel one can also invert the signal - base line is +5 V and trigger 0V)
14 * The trigger are send to the MTCA several ms before the first FEL pulse (3.1 ms for the "standard" trigger, 23 ms for the "early" trigger).
15 * The timer card can delay the trigger in 9 ns  steps for more than 100 ms (an option to shift the trigger in 1 ns steps is available in the expert panel)
16 * The shown delay in µs is in respect to the //first// FEL pulse. negative delay: trigger comes before FEL, positive : trigger comes after the FEL.
17 * The desired delay has to be entered in the "delay to be set" field and as second step pressing the "set delay" sends the delay value to the timer card. Then the trigger delay will be changed and the "actual delay" will be updated.
18 * The trigger can be set to only provide a trigger signal if the FEL Fast shutter is open. One has to choose which FEL shutter to use.
19 * The trigger  width can be adjusted from 9 ns to several ms in 9 ns steps
20 * The timer card can in addition to the 10 Hz triggers also provide frequencies which are linked to the FEL repetition rate and the actual burst pattern of the FEL. For details how to set these modes see below
21 * At the beamlines the triggers are provided with a  BNC patch panel
sendels 1.1 22
sndueste 19.1 23 The main control can be done with a simplified user panel which can handle the timing in respect to the FEL pulses (and not in respect to some arbitrary event time)
24
25
sendels 1.1 26 \\
27
sndueste 20.1 28 [[image:attach:image2020-1-23_12-10-59.png||width="700"]]
sndueste 19.1 29
30 \\
31
32 \\
33
sndueste 21.1 34 Choosing a FLASH1 trigger there are 2 options to be synchronized with the BL and the PG shutter :  [[image:attach:image2020-1-23_12-29-40.png||height="250"]]
35
36 A yellow background indicates that the trigger is synchronized to a fast shutter:  [[image:attach:image2020-1-23_12-31-41.png||height="250"]] or:[[image:attach:image2020-1-23_12-32-20.png||height="250"]]
37
sndueste 19.1 38 \\
39
40 \\
41
sendels 1.1 42 \\
43
sndueste 6.1 44 = Expert panels =
sendels 1.1 45
46 \\
47
sndueste 21.1 48 [[image:attach:image2020-1-23_12-28-6.png||height="250"]] [[image:attach:image2019-9-17_13-8-46.png||height="400"]]
sndueste 6.1 49
sndueste 7.1 50 With the **"Expert overview"** one gets the overview over all channels available on the timing card and can configure the card. This is useful to look what channels are using clock settings or burst mode settings that one wants to change ... and using the other tabs one can set parameters for clocks and bursts (see below)
sndueste 6.1 51
52 \\
53
sndueste 7.1 54 For each trigger channel there is in addition an **"Expert panel"** to set the properties of THIS channel
sndueste 6.1 55
sndueste 21.1 56 [[image:attach:image2020-1-23_12-28-46.png||height="250"]] [[image:attach:image2019-9-17_13-15-38.png||width="550"]]
sndueste 6.1 57
58 \\
59
60 \\
61
sndueste 10.1 62 = Set a constant frequency to a channel =
63
64 =
sndueste 6.1 65 [[image:attach:image2019-9-17_13-18-9.png||height="250"]][[image:attach:image2019-9-17_13-18-37.png||height="149"]] =
66
67 \\
68
sndueste 7.1 69 The timer card provides the option to generate  frequencies that are synched to the FEL reprate on the ps level. One can set 3 Clocks by deviding the reference frequency of 54.2 MHz by n.** Please check (using the Expert overview ) before changing a frequency of it is used for some other channel !!**
sndueste 6.1 70
71 Since our main FEL frequency is 100.31 MHz the dividers are not straight forward:
72
sndueste 10.1 73 [[image:attach:image2019-9-17_14-22-29.png||width="450" align="right"]]
74
75 \\
76
sndueste 7.1 77 (% class="wrapped" %)
sndueste 6.1 78 |=(((
79 Clock frequency
80 )))|=(((
sndueste 7.1 81 Divider to be set
sndueste 6.1 82 )))
83 |(((
84 "1 MHz" (1000.31 kHz)
85 )))|(((
86 53
87 )))
88 |(((
sndueste 7.1 89 "500 kHz" (501.5 kHz)
sndueste 6.1 90 )))|(((
sndueste 7.1 91 107
sndueste 6.1 92 )))
93 |(((
sndueste 7.1 94 "250 kHz" (250.8 kHz)
sndueste 6.1 95 )))|(((
sndueste 7.1 96 215
sndueste 6.1 97 )))
sndueste 7.1 98 |(% colspan="1" %)(((
99 "200 kHz" (200.6 kHz)
100 )))|(% colspan="1" %)(((
101 269
102 )))
103 |(% colspan="1" %)(((
104 "100 kHz" (100.3 kHz)
105 )))|(% colspan="1" %)(((
106 539
107 )))
sndueste 6.1 108
sndueste 10.1 109 \\
110
sndueste 15.1 111 == General FLASH frequencies: ==
112
sndueste 10.1 113 \\
114
sndueste 16.1 115 (% class="relative-table wrapped" style="width: 19.422%;" %)
sndueste 17.1 116 |(% class="highlight-grey" title="Hintergrundfarbe : Grau" data-highlight-colour="grey" %)(((
sndueste 18.1 117 (% style="color: rgb(0,0,0);" title="" %)**Name          
118 **
sndueste 17.1 119 )))|(% class="highlight-grey" title="Hintergrundfarbe : Grau" data-highlight-colour="grey" %)(((
sndueste 18.1 120 (% style="color: rgb(0,0,0);" title="" %)**Frequency                
121 **
sndueste 17.1 122 )))|(% class="highlight-grey" title="Hintergrundfarbe : Grau" data-highlight-colour="grey" %)(((
123 (% style="color: rgb(0,0,0);" title="" %)**Divider**
sndueste 15.1 124 )))
125 |(((
126 1.3 GHz
127 )))|(((
128 1300.000000 MHz
129 )))|(((
sndueste 10.1 130 \\
sndueste 15.1 131 )))
132 |(((
133 108 MHz
134 )))|(((
135 108.333333 MHz
136 )))|(((
137 12
138 )))
139 |(((
140 9 MHz
141 )))|(((
142 9.02777777 MHz
143 )))|(((
144 144
145 )))
146 |(((
147 4.5 MHz
148 )))|(((
149 4.513888 MHz
150 )))|(((
151 288
152 )))
153 |(((
154 1 MHz
155 )))|(((
156 1.003086 MHz
157 )))|(((
158 1296
159 )))
sndueste 10.1 160
161 \\
162
sndueste 7.1 163 Once a clock is configured with the right frequency one can choose in the "expert panel" of the according channel the "FPGA clock" in the "input source select"  chooser.
164
sndueste 10.1 165 One has to set the delay to values less than the repetition rate ... (so for 1 MHz between 0 and 990 µs)  and the trigger width also less than the rep rate ...
sndueste 8.1 166
sndueste 15.1 167 This results in a continuous train of pulses with the set trigger width.
sndueste 8.1 168
sndueste 10.1 169 = Creating an (own) burst trigger =
170
171 One can use now a SECOND trigger channel which is set to a regular 10 Hz trigger  and gate the clock output to create a burst with defined start point and length,
172
sndueste 11.1 173 For the example we use the FRONT.TRG2 (BL3 Trg5) as gate pulse which defines the length of the burst (set with the trigger width) and the (rough) starting point of the burst. This trigger is only used as gate and the physical trigger output is NOT used.
sndueste 10.1 174
sndueste 11.1 175 The  second channel (here FRONT.TRG3 (BL3 Trg6) which is set to the clock frequency defines the reprate (by the FPGA clock setting) , the exact starting point of the first trigger ( by the delay ) and the width of the  MHz/kHz triggers (width).
sndueste 10.1 176
sndueste 11.1 177 **To get from the clock to the burst trigger** one has to:
sndueste 10.1 178
sndueste 11.1 179 * set the  "2nd source select" to the gate trigger ( here FRONT.TRG2) - this defines a second source to considder for the trigger output.
180 * and the "output source select" to "AND 2nd Ch."  this finally only sends a trigger if on both inputs (clock and gate) we have a high signal.
181
sndueste 10.1 182 \\
183
sndueste 11.1 184 [[image:attach:image2019-9-17_14-35-5.png||height="250"]] [[image:attach:image2019-9-17_14-34-38.png||width="400"]]
185
sndueste 10.1 186 \\
187
188 \\
189
sndueste 11.1 190 = Real bunch trigger  - get a trigger for each FEL pulse =
191
sndueste 10.1 192 \\
193
sndueste 11.1 194 Sometimes it is convenient to get a trigger pulse for each pulse in the FEL. thus if the FEL number of bunches or reprate are changed, the trigger adapts accordingly.
sendels 1.1 195
sndueste 11.1 196 For this one has to select the source of interest in the expert overview panel (tab: "Bunch pattern") ... well for us this is FLASH1 (FL1D) or FLASH2 (FL2D)
sendels 1.1 197
sndueste 11.1 198 There are 6 different bunch pattern "channels" one can configure. Typically only 2 are needed ... And in each one there are 6 selectors to choose sources . We only need one - it does not matter in which one is used.
sendels 1.1 199
sndueste 12.1 200 [[~[~[image:attach:image2019-9-17_14-51-28.png~|~|height="250"~]~]>>attach:image2019-9-17_14-51-28.png]][[image:attach:image2019-9-17_14-47-15.png||thumbnail="true" height="199"]]
sndueste 8.1 201
202 \\
203
sndueste 11.1 204 In the expert panel one can now choose the configured "Bunch Pattern" as "Input source select"
sndueste 10.1 205
sndueste 11.1 206 **NOTE: To shift the burst in time one can no longer use the delay of the individual channel BUT the delay in the "Bunch pattern" tab in the expert overview! This now shifts all bursts ... so you better know what you are doing. typically the burst is already shifted to the actual FEL timing ... Shifting the timing should be discussed with the beamline scientist / local contact ...**
207
sndueste 10.1 208 \\
209
sndueste 13.1 210 [[image:attach:image2019-9-17_15-4-47.png||height="250"]][[image:attach:image2019-9-17_14-52-40.png||height="250"]]
sndueste 11.1 211
sndueste 10.1 212 \\
213
214 \\
215
sndueste 20.1 216 = Different trigger events (starting points) =
217
218 one can configure each channel for an individual trigger event
219
220 **FLASH1**
221
sndueste 21.1 222 (% class="wrapped" %)
sndueste 20.1 223 |(((
224 trigger No
225 )))|(((
226 function
227 )))
228 |(% colspan="1" %)(((
229 21
230 )))|(% colspan="1" %)(((
231 Trig16 + first bunch of FLASH1 - this trigger is shifted when FL1 starts later than "700"
232 )))
233 |(% colspan="1" %)(((
234 180
235 )))|(% colspan="1" %)(((
236 shifts with the start time of FLASH1 as event 21 but comes 23 ms  before the FEL
237 )))
238 |(((
239 16
240 )))|(((
241 the MCA trigger 3.11 ms before the Flash1 pulses (same as A6 but more stable)
242 )))
243 |(((
244 166
245 )))|(((
246 A6 event. still possible to use but less precise than 16
247 )))
248 |(((
249 162
250 )))|(((
251 A2 event as earliest ( 24 ms before the FEL)
252 )))
253 |(((
254 224
255 )))|(((
256 E0 event of the BL fast shutter ( 19 ms before the FEL) - to be switched off in 2020
257 )))
258 |(((
259 225
260 )))|(((
261 E1 event of the PG fast shutter ( 19 ms before the FEL) - to be switched off in 2020
262 )))
263
sndueste 10.1 264 \\
265
266 \\
267
sndueste 20.1 268 **FLASH2**
269
sndueste 21.1 270 (% class="wrapped" %)
sndueste 20.1 271 |(((
272 trigger No
273 )))|(((
274 function
275 )))
276 |(((
277 22
278 )))|(((
279 Trig116 + first bunch of FLASH2 - this trigger is shifted when FL2 starts at a different start time
280 )))
281 |(((
282 181
283 )))|(((
284 shifts with the start time of FLASH2 as event 22 but comes 23 ms  before the FEL
285 )))
286
287 from this trigger as starting point one can shift the timing in 9 ns steps first and finally in 0.9 ns steps for fine adjustment.
288
sndueste 10.1 289 \\
290
291 \\
292
293 \\
294
295 \\
sndueste 20.1 296
297 \\
298
299 \\
300
301 \\
302
303 \\
304
305 \\