Title: Event Mode Data Acquisition System
1Event Mode Data Acquisition System
Richard Riedel, Oak Ridge National Laboratory
2Event Mode In a Nutshell
- Every neutron detected is time stamped and saved
without histogramming. - Other variables are also time stamped producing a
movie like data set at run end.
3Why Event Mode?
- This what detectors do (where and when a neutron
is detected) - Electronic time-focusing of pulsed-source
neutron chopper data binning to minimize effects
of proton pulse and chopper opening time
variations JM Carpenter NIM vol 429 2001 - Pulse Probe Techniques
- Cross-Correlation Techniques.
- (Corelli, which measures single crystal diffuse
scattering using cross correlation to provide
elastic discrimination) - Offers novel approaches to typical data
acquisition problems
4Histogram
Original Space nor Time resolution necessarily
preserved histogramming is a destroyer of
information
5Also Need Hardware Gating
Histogram neutrons only when temperature is
within some range of setpoint
gate control
from preamp or shaper
6Event Based System Requirements
- No hardware histogramming.
- Ability to timestamp detected neutrons.
- Log with time/date stamp ancillary variables
(i.e. temp, magnetic fields etc.).
7Event Mode Paradigms
- Gating is done at the reduction/analysis level
not in the DAS hardware. - Histogramming is done at the reduction/analysis
and can be modified as needed without affecting
the underlying data.
scattering data
software with sort criteria
data from file stream or live stream
gated data
temperature logs
8- Variables can be calculated without
histogramming first.
d? ? /sin?
Event
sine lookup
Increment this bin
Software a few multiplies, additions and if
statements
Pixel ID
tof
Could put a software gate here.
- Its easier to throw data out then to look at data
that was never collected.
9Event Mode Data Format
Array of event structure
Standard neutron event data generated by all
detector electronics at the SNS
Array of pulse info structure
Standard pointer array which associates a pulse
ID with a set of event data.
10SNS Implementation
C Abstraction Classes
Detectors
Common C Code (Command Handling Data transfer
functions.)
Class xxx
Common Data Format Independent of Detector System
Class yyy
UDP Broadcast
Class zzz
Detector Electronics
11Broadcasting the Data Stream
Guaranteed Delivery To One Point
Active Client (DFS)
Passive Client
Passive Client
Preprocessor
Session Header
Header ACK
Data Packet 0
Packet 0 ACK
Data Packet n-1
Packet n-1 ACK
12Transmission Benchmarks
13Sample Live Views From Control Computer
Mag. Refl. 2D He3 Gas Detector
SNAP .5M pixel Anger Camera
Both instruments see same event format!
14Additional Listeners Can Do Real Time Independent
Work
15Most Interesting Applications Require Additional
Time Stamped Data
Position,TOF
Event Data
Chopper Phase
Pulse Information
Temperature, Stress
SNS DAS streams, event data
Cross, AutoCorrelations, Dynamics, Phase
Transitions, Kinetics and Transient Phenomenon
16Adding Chopper Phases/Other Variables
- Requires DAS Hardware Sync signal.
- Require Access To Accelerator Time Stamp
Broadcast. - Requires Computer Clock to be synced with
accelerator
High Frequency Signals
Low Frequency Signals
17Stress Strain Example
Proton Pulses
Stress Waveform
Strain Transducers
time
Strain Sample Times
Data Set
Sync. Pulse
PulseID
Stress Strain Preprocessor
PulseID Broadcast
Data Settwo binary files
VULCAN will have the capability to do cross
correlation technique
18How Time Synchronization Is Done
Satellite Computers Chopper, Sample Environment
etc.
Tier 0
Tier 1
Preprocessor
Tier 2
NTP sets local time, UDP broadcast sends
accelerator time stamp
ETC
Accelerator Time Stamp (60Hz)
NTP
Timing PC
Interrupt Based Driver/Service (50usec latency)
NTP only
NTP to sync computer time,date clock UDP
broadcast for computers that must associate
additional data with accelerator time stamp
(pulseid).
Control Computer
19Final File Set
Pairs of binary files
Neutron data
pulseid
Chopper Phases
pulseid
X Variable
pulseid
not the same!
20SQL Like Queries are Possible
- SELECT pulses FROM run3100 WHERE temperature gt
10 AND temperature lt 20 - SELECT tof FROM run3100 WHERE pixelid1101 OR
pixelid1102 - Would require a abstraction of file system.
(Embryonic SQL queries available now for current
values).
21Who Else Runs An Event DAQ?
Particle Physics.
ATLAS DAQ system
Reduction, Data Sorting, Analysis
Event Data
NOMAD ratesup to 500MB/s