210 likes | 332 Views
Event Mode Data Acquisition System. Richard Riedel, Oak Ridge National Laboratory. Event 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. Why Event Mode?.
E N D
Event Mode Data Acquisition System Richard Riedel, Oak Ridge National Laboratory
Event 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.
Why 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
Histogram Original Space nor Time resolution necessarily preserved… histogramming is a destroyer of information
Also Need Hardware Gating Histogram neutrons only when temperature is within some range of setpoint gate control from preamp or shaper
Event Based System Requirements • No hardware histogramming. • Ability to timestamp detected neutrons. • Log with time/date stamp ancillary variables (i.e. temp, magnetic fields etc.).
Event 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
Variables can be calculated without histogramming first. d /sin Event sine lookup Software: a few multiplies, additions and if statements Increment this bin Pixel ID tof Could put a software gate here. • Its easier to throw data out then to look at data that was never collected.
Event 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.
SNS 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
Broadcasting the Data Stream Guaranteed Delivery To One Point Preprocessor Passive Client Passive Client Active Client (DFS) Session Header Header ACK Data Packet #0 Packet #0 ACK Data Packet #n-1 Packet #n-1 ACK
Sample Live Views From Control Computer Mag. Refl. 2D He3 Gas Detector SNAP .5M pixel Anger Camera Both instruments see same event format!
Most Interesting Applications Require Additional Time Stamped Data Position,TOF = + Chopper Phase Event Data Pulse Information Temperature, Stress… SNS DAS streams, event data…… Cross, AutoCorrelations, Dynamics, Phase Transitions, Kinetics and Transient Phenomenon
Adding 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
Stress Strain Example Proton Pulses Stress Waveform Strain Transducers time Strain Sample Times Data Set Sync. Pulse PulseID Stress Strain Preprocessor PulseID Broadcast Data Set=two binary files VULCAN will have the capability to do cross correlation technique
How Time Synchronization Is Done Satellite Computers: Chopper, Sample Environment etc. Tier 1 Tier 0 Tier 2 Preprocessor 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
Final File Set Pairs of binary files Neutron data pulseid + Chopper Phases pulseid X Variable pulseid not the same!
SQL Like Queries are Possible • SELECT pulses FROM run3100 WHERE temperature > 10 AND temperature < 20; • SELECT tof FROM run3100 WHERE pixelid=1101 OR pixelid=1102; • Would require a abstraction of file system. (Embryonic SQL queries available now for current values).
Who Else Runs An Event DAQ? Particle Physics. ATLAS DAQ system Reduction, Data Sorting, Analysis Event Data NOMAD rates…up to 500MB/s