Presentation is loading. Please wait.

Presentation is loading. Please wait.

Level-zero trigger status

Similar presentations


Presentation on theme: "Level-zero trigger status"— Presentation transcript:

1 Level-zero trigger status
Francesco Gonnella CERN – TDAQ Working group 16 December 2015

2 NA62 time alignment (1/2) before 2015 since 2015 time trigger
Physics 1 trigger latencies Physics 2 Physics 3 since 2015 time trigger fixed trigger latency TDC offsets Physics In 2014 run we tuned the latency of every detector in order to match physics Since 2015 we use the TDC offsets (directly fed to HPTDC chips, through the XML configuration files) to move physics and used the same latency in every detector. Thanks to this choice, all the detectors produce synchronous data from the very beginning, as if the cable length was properly tuned to synchronise them all This means that data are time-aligned both for Level 0 and for Level 1 and 2 trigger for free Francesco Gonnella - University of Birmingham 16 December 2015

3 NA62 time alignment (2/2) Event Dump Orange plots
Event header and number length c83 timestamp 3ec76 trword 38801 Number of detectors: 9 Detector 4 offset 11 (hex) 17 (dec) length 2c (hex) 44 (dec) c 0003ec f 0003ff ff ff ff c ec f 0003ff ff ff ff ec76 f 0103ff ff ff ff c ec f 0003ff ff ff ff c 0003ec76 f 0003ff ff ff ff c 0003ec f ff ff ff ff00 Detector 18 offset 3d (hex) 61 (dec) length 7 (hex) 7 (dec) c 0003ec f 0003ff ff ff ff00 Detector 40 offset 44 (hex) 68 (dec) length c (hex) 12 (dec) ec dda Detector 10 offset 50 (hex) 80 (dec) length 4f (hex) 79 (dec) ec ff ff ff ec76 ff ff ff00 010a001c 0003ec76 020a040f 0003ff00 ff ff ff c 0003ec f 0003ff ff00 ff ff c 0003ec f 0003ff ff ff00 ff c 0003ec f 0003ff ff ff ff00 c 0003ec f 0003ff ff ff ff ec ff ff ff c 0003ec f ff ff ff ff ec ff00 ff ff00 010b001c 0003ec76 020b040f 0003ff ff ff00 ff ec ff ff ff00 Detector 30 offset 9f (hex) 159 (dec) length 6 (hex) 6 (dec) ec ff ff ff00 Orange plots Thanks to the TDC-offset tuning, data are time-aligned at the raw level with respect to the trigger time An easy cross check can be performed in the reconstruction and by eye with the event-dump software If we plot the raw time ps) minus the trigger time 100 ps) we obtain the so-called ‘orange plots’ that are fundamental for data monitoring Francesco Gonnella - University of Birmingham 16 December 2015

4 What’s in a trigger primitive?
NA62 trigger-primitives are made of two 32-bit words containing: Primitive IDs depend upon the sub-detector, nevertheless some general rules exist (and must be respected): Every bit must carry an information independently of the others, so that the L0TP can take decisions based on single bits L0TP can require 1, 0 or ignore a bit, cannot (by construction) perform any OR operation among the bits of a primitive ID and among primitive IDs of different detectors. If an OR is needed it must be calculated by the detector itself prior to sending the primitive to L0TP Bit 15 must be at 0 for any physics primitive and 1 for calibration primitives Bit 14 must always be at 1 for every primitive (MUV3 guys won) 31 TimeStamp (25 ns) 0 31 primitive ID 16 15 reserved 7 7 fine time (100 ps) 0 Francesco Gonnella - University of Birmingham 16 December 2015

5 What’s in an MTP? A MTP (Multi Trigger Packet) is a UDP packet sent from the detector participating to the level-0 trigger to the L0TP The MTP are sent every 6.4 us If no primitives were produced in a given 6.4-us interval, an empty MTP is sent The L0TP needs MTPs to be delivered periodically in order to be sure all the primitives have arrived before starting to evaluate the coincidences Other than primitive data, an MTP contains a header (64 bit): The time stamp (25ns) at which the packet itself was sent The detector ID and the subdetector ID The number of primitives contained in the packet and the dimension of the packet in bytes Francesco Gonnella - University of Birmingham 16 December 2015

6 Level-0 trigger bit-mask
Every detector that is participating to L0 and is producing primitives can send 15 independent ‘type of triggers’ (PrimitiveID) This type of triggers strongly depend on the detector itself Every type of trigger is represented by a bit in the trigger mask for that detector The meaning of each bit is a matter of the L0 experts (and is or should be written in the documentation) Nevertheless bit 14 (0xE) must always be at one so it can be used: for triggering on any primitive, if set to 1, (all other bits to don’t care) for vetoing on any primitive, if set to 0, (all other bits to don’t care) for ignoring any primitive, if set to don’t care (all other bits to don’t care) Francesco Gonnella - University of Birmingham 16 December 2015

7 Detectors participating in level 0 trigger
CHOD Primitive: Coincidence between two slabs ID: multiplicity and quadrants RICH Primitive: Time clusters ID: Hit multiplicity LAV12 Primitive: Coincidence between high and low threshold crossing ID: Hit multiplicity (possible cut on ToT) MUV3 Primitive: Coincidence between the 2 PMTs coupled to the same tile ID: Position, Multiplicity, see documentation IRC/SAC (using LAV firmware) LKr (LKr, MUV1-2, IRC/SAC) Primitive and ID: Energy threshold, number of clusters Francesco Gonnella - University of Birmingham 16 December 2015

8 Trigger-primitive acquisition system 1/3
7 switches were added to duplicate trigger-primitive streams going from the detectors to the L0TP Daemons running on two na62 PCs, na62prim1 and na62prim2, acquire trigger-primitive data and store them on na62merger1 The primitive-online-monitor uses this data to provide fast tiggerless information that was fundamental for beam monitoring and for trigger debugging during 2015 run The switches send data coming from input port (3) to the output port (1) and mirror the input port (3) onto one output port (8) 2 more ports (6, 7) are used to create a private LAN to remotely configure the switches themselves Every port can be enabled or disabled remotely (from the control room), so that the trigger-primitive stream coming from every detector can be enabled or disabled for primitive acquisition and/or for real trigger to L0TP Francesco Gonnella - University of Birmingham 16 December 2015

9 Trigger-primitive acquisition system 2/3
to PC-Farm L0TP A B C D E F G to LTU (to send triggers to detectors) USB (firmware programming and configuration) na62prim1 2 3 4 5 na62prim2 2 3 4 5 na62l0tp Switch Switch Switch Switch Switch Switch Switch private LAN primitive primitive primitive primitive primitive primitive primitive CHOD RICH LAV12 MUV3 IRC/SAC TALK LKr Francesco Gonnella - University of Birmingham 16 December 2015

10 Trigger primitive acquisition system 3/3
Francesco Gonnella - University of Birmingham 16 December 2015

11 Primitive data and decoder
Detector ID Send Timestamp All the information is decoded into a root tree The root file is primitive- based The information contained in the MTP header is saved in the entries of each primitive contained in the packet Nothing is saved for empty packets Integrated in official NA62 analysis Subdetector ID 100075f1 0b 100076f1 0b a c3 Number of primitives Dimension of the packet (Bytes) Timestamp Primitive ID Fine time Francesco Gonnella - University of Birmingham 16 December 2015

12 Trigger-primitive monitor
The primitive OM has become a fundamental monitoring-tool during 2015 run Francesco Gonnella - University of Birmingham 16 December 2015

13 Trigger-primitive syncronisation
In order to allow the L0TP to perform coincidences and vetoes, primitive coming from different detectors must be synchronised We synchronised the primitives by changing the TDC offsets so that all the ‘physics’ moves accordingly What we call ‘synchronisation’ has nothing to do with the time of arrival of the primitive to the L0TP, it has to do only with the value of the primitive Timestamp and Fine-time In the end, synchronising the trigger-primitives is exactly the same as time-aligning detectors for data acquisition Exception made for the LKr having two completely independent systems for data acquisition (CREAM) and primitive generation (TEL62). Francesco Gonnella - University of Birmingham 16 December 2015

14 Cross-correlation between primitive streams
xi 50 ps yi time 50 ps xi yi+t The C(t) is plotted to find a peak Considering just the centre (mainly 100* *106 )of the burst The absolute value does not have a real meaning as the matching windows is much smaller than L0TP’s window. Francesco Gonnella - University of Birmingham 16 December 2015

15 Syncronisation examples
Cross-correlation plots can be used both for synchronising the primitive generation and for spotting anomalous behaviours Francesco Gonnella - University of Birmingham 16 December 2015

16 MTP alignment (1/3) The L0TP works under the assumption that the primitive contained in the Nth MTP has a TS that matches the MTPs of the Nth packets of all the other detectors The L0TP waits for 3 MTPs to arrive for the reference detector (CHOD in the example below) before starting to compute coincidences An MTP offset n can be set into the L0TP that discards the first n MTPs before starting to process them In order to perform the alignment, the difference between the timestamp of the MTP and the primitive time stamp is used In the example the LKr MTP offset should be set to 3 CHOD LAV MUV3 LKr 10 - 11 8 12 9 13 14 15 L0TP tolerance Francesco Gonnella - University of Birmingham 16 December 2015

17 MTP alignment (2/3) MUV3 LKr IRC CHOD LAV12 X axes are in 25ns unit
Francesco Gonnella - University of Birmingham 16 December 2015

18 MTP alignment (3/3) CHOD MUV3 LKr LAV
packets (6.4 us) From this study we evaluate the difference in unit of packets to be set into the L0TP The so-called ‘max delay detector’ must be set to be the detector with the biggest MTP offset The primitive-correlation program automatically prints out the correct values Such plots should be monitored during data taking Francesco Gonnella - University of Birmingham 16 December 2015

19 The lucky case of SAC/IRC
SAC/IRC use LAV FEE boards that allow them to be readout by a TEL62 and CREAM (LKr readout system) at the same time Thanks to LAV primitive-generating firmware installed in the SAC/IRC TEL62 primitive could be produced using LAVFEE internal pulser L0TP was set to trigger on IRC/SAC primitives and triggers were sent to the whole experiment allowing us to look for a peak in data distribution The peak was found in the CREAM data of SAC/IRC allowing to evaluate the offset between the two readout systems with no beam This study allowed us to time-align MUV1, MUV2, and SAC/IRC readout through CREAM boards The LKr level-0 system was also aligned using primitive-acquisition system and correlation software Francesco Gonnella - University of Birmingham 16 December 2015

20 Conclusions The TDC-based time alignment proved to be the best choice
The trigger-primitive acquisition system is now well established and working There might be the need of integrating it into Run Control A downscale system should be implemented Primitive data is integrated in NA62 analysis The primitive raw-decoder is also committed The trigger-primitive monitor is now a fundamental tool for NA62 data and beam monitoring Primitive synchronisation and MTP alignment procedures are well established Thanks to all the L0 team! Francesco Gonnella - University of Birmingham 16 December 2015


Download ppt "Level-zero trigger status"

Similar presentations


Ads by Google