gts, global trigger and synchronization system
DESCRIPTION
GTS synchronizes electronic cards at the sub-nanossecond level. GTS also triggers the data acquisition of the experiment. Structurally, it is a tree of cards connected by gigabit optical fibers. All the trigger decisions are made in real-time in a central trigger processor. The system is currently in use in the nuclear physics experiment AGATA. Moreover, following this presentation, it has been chosen (with some hardware integration planned) to trigger and synchronize the experiments of SPIRAL2 in GANIL.TRANSCRIPT
Orsay, 10 december 2009, for the selection process of the trigger and synchronization system for nuclear physics experiments in GANIL (SPIRAL2) Joël Chavas
GTS
Trigger and synchronize : AGATA + ancillaries
Outline
• GTS – Main features • GTS – Hardware / software • GTS – Status and characteristics
The DAQ in AGATA
GTS – Function
• Provides the global clock • Handles centrally all trigger requests • Transport medium for trigger activity • Equalizes downlinks
– No calibration run required • Provides the absolute time (48-bit counter)
GTS – Structure
Trigger processor Root
Leaf
Leaf
Fanin- fanout
Leaf
Leaf
GTS – AGATA requirements
• Individual trigger requests – 50 kHz • Trigger validation – 1 MHz (Mult. 1) • Trigger validation – 300kHz (Mult. 30) • Repeatability of the phase skew on the sub-ns
scale
GTS – Originality and novelty
• Digital trigger system • Replaces analog triggers – without dead-time • Optical fibers, to transmit clock and trigger events • Modularity
Hardware
• Trigger processor : – a commercial card inside a PCIexpress slot of the computer
• GTS card : – Mezzanine – ATCA card in development
• Links : – Optical links – Mezzanine connectors
GTS card
FPGA
PLL
TDC
mux
DELAY
MGT optic M
trigger bus
GTS mezzanine
XXX
GTS mezzanine
GTS mezzanine – on LLP carrier GTS
GTS
GTS mezzanine – On LLP carrier
GTS
Firmware / software
• Trigger processor : – edk project, home made slow control through
PCIexpress • GTS :
– edk project, embedded software (vxWorks) – slow control through udp/ip
How it works : a modular approach
GTS tree
Trigger processor
vhdl trigger cores
Trigger processor – structure
Online sorter
Multiplicity Partition 0
Multiplicity Partition 1
Multiplicity Partition 4
Multiplicity Partition 5
Multiplicity Partition 2
Multiplicity Partition 3
Multiplicity Partition 6
Coincidence Validation broadcast
Multiplicity Partition 7
Trigger processor
• Partition coincidence – Ex : Mult(Ge) ≥ 4 and Mult(Ancillary) ≥ 1 after 5µs – Delayed multiplicity window : clock precision
GTS tree – General
• A unique hardware for all nodes • A unique firmware for all leaves • A unique embedded software for all nodes
GTS tree – Clocks
• Clock recovered from gigabit optical links • Clock cleaned by external PLL • Downlink times are measured • Downlink times are equalized through a FIFO and
an external delay line
GTS tree – Alignment
combinatorial
combinatorial t1
combinatorial
clocked t2
downlink
tdownlink = t2 – 1/2 × t1
GTS – Communication with carriers
Trigger cores
• Handle all trigger activity • Purely vhdl • Uplink :
– Trigger requests – Periodic idles
• Downlink : – Trigger validation – Absolute time – Synchronous command
• No dead-time
Root
Leaf
Leaf Leaf
Leaf uplink
downlink
Measurements – Jitters
p-p jitter (ps)
clk 70
leaf-leaf 200
leaf-root 170
Measurements – Skews
Max (ps)
phase alignment +/- 250
phase repeatability +/- 50
Measurements – latencies
• Local latency : hundreds of ns • No dead-time, except for a technical 2 µs one • GTS tree latencies :
– Max = 12 µs (4-layer tree) with trigger processor • Depends on idle rate and delayed coincidence
– 7 µs without trigger processor – 2 µs added at each FANIN-FANOUT layer
GTS commissioning : november 2009
• 4-layer GTS tree • 7 leaves (6 for germanium detectors, 1 for
ancillary detectors) • 2 partitions (germanium detectors and ancillary
detectors) with two decision equations used : – Mult(Ge, 3,+0) – Mult(Ge,2,+0) + Mult(Anc,1,+2µs)
• Technical trigger validation rate : 2 MHz
Trigger processor -- Status
• 2 multiplicity partitions implemented on a FX100 • Firmware done for 8 partitions – to be
implemented on a more powerful hardware • On-line reconfiguration through a pseudo-C
configuration file • GUI based on ncurses library
GTS tree -- Status
• Done : firmware, embedded software, host server software
• Under development : python-based GUI • ATCA card development
GTS hardware – Status
• V2 : 4 complete GTS cards + 1 GTS that can be used only as root
• V3 : 20 produced and tested • V3 : 10 under production for june 2009 • Comments :
– Production is not the problem : testing and support are the problem
– Stand-alone GTS card : no support is needed – GTS tree : support is needed
Discussion and future needs
• Ancillaries and the GTS tree latency • Feeding the root and the leave with an external
clock – links with BUTIS? • Customization (software) of the trigger processor
– Physics is done on the trigger processor
Work load
• Roberto Isocrate (hardware) • Damiano Bortolato (firmware/software GTS tree
prototype) • Joël Chavas (firmware/software/commissioning GTS tree,
testing) • Luciano Berti (trigger processor) • Marco Bellato (trigger cores, conception, organization) • Dino Bazzacco (validation)
Conclusion
• GTS : an innovative digital trigger system • Successful commissioning with the ancillary
detectors included : november 2009