Presentation is loading. Please wait.

Presentation is loading. Please wait.

Multistep Runs with ROD Crate DAQ Murrough Landon, QMUL Outline: Overview Implementation Comparison with existing setup Readout Status ModuleServices API.

Similar presentations


Presentation on theme: "Multistep Runs with ROD Crate DAQ Murrough Landon, QMUL Outline: Overview Implementation Comparison with existing setup Readout Status ModuleServices API."— Presentation transcript:

1 Multistep Runs with ROD Crate DAQ Murrough Landon, QMUL Outline: Overview Implementation Comparison with existing setup Readout Status ModuleServices API change Next Steps Demo?

2 CERN, 30 Jan 2006 Murrough Landon, QMUL ROD Crate DAQ Controller Derived from ROS Software –Application framework implementing the run state transition skeleton –Implemented as set of plugin libraries, configured via database –Set of ReadoutModules with DataChannels responsible for reading data (analogous to ROBins with input links). L1Calo implementation –configL1Calo package: schema and data access library providing pluging for our L1CaloReadoutModule subclass –readoutModule package: implementation of module and data channel classes and a “crate” class for common actions at the start of each state transition: L1CaloReadoutModule L1CaloDataChannel CrateSetup –dbFiles package: script to generate RCD DB objects

3 CERN, 30 Jan 2006 Murrough Landon, QMUL RCD Implementation

4 CERN, 30 Jan 2006 Murrough Landon, QMUL RCD Controller: Pros and Cons Pro –Standard, supported solution for detectors ROD (and other) crates –Hopefully less maintenance and easier use of new features –Implements readout/monitoring/histo publishing within the framework, also interrupts, database access (not COOL yet?) –Allows multiple readouts during the RUNNING phase of multistep runs (compared with one readout per step at present) Con –Database requires lots of objects: generate them all from the hardware description (hw/*_crates.data.xml) but then harder to customise individual crates - eg to add applications such as “kickers” –Less flexible: no direct access to RC skeleton –Represents a change from what we are used to

5 CERN, 30 Jan 2006 Murrough Landon, QMUL Readout Data Software –Separate crate_readout program no longer required –Start/stop readout should be better synchronised with state transitions Format –Data from one crate looks like a ROS fragment, contains one ROB (and ROD) fragment per module –Using “TDAQ beam crate” source ID at the moment (0x700000) –Should add crate ID to this at ROS level, crate and module IDs at ROB/ROD level? –No need for existing one word buffer header (or extended crate header?) but keep rest of the formatted buffer contents Monitoring –Use -k RCD -v rcd- –Existing standalone monitoring programs need to use eformat to locate ROD fragments within the ROS fragment –But GNAM can easily provide a vector of ROD fragments

6 CERN, 30 Jan 2006 Murrough Landon, QMUL Present Status Implemented and tested (OK) –Actions at run state transitions (USA15 and RAL) –Publishing status to IS –One readout at state transitions and many readouts when RUNNING Problems –See a few “ROS” errors building events (high rate?) –When running, need a way to know if a new event is available –(at present the DataChannel just sleeps a bit) To be done –Test elsewhere than USA15 (eg with more modules at RAL) –Modify monitoring programs to slightly different packaging of formatted readout buffers

7 CERN, 30 Jan 2006 Murrough Landon, QMUL ModuleServices API Change? Issue –DataChannel has poll() method to see if data is available –(alternatively can use interrupts) –If true, RCD will call DataChannel::getNextEvent() –But at the moment the DataChannel has no way of knowing if PPM or ROD (or DSS?) has a new event available (for other modules its not a problems as status information is always available) Suggestion –Add a generic isDataAvailable() method to moduleServices API –Only needs a real implementation in PPM, ROD (and DSS?)

8 CERN, 30 Jan 2006 Murrough Landon, QMUL Next Steps Soon –More tests, adapt PPM monitoring and try Tile tests –Try out at other sites, after a few dbFiles mods: partitions: Partition  PartitionRcd segments: partition_segments  cut down partitionRcd_segments Include partition_genrcd.data.xml instead of existing crate segments Fairly soon –Implement moduleServices API change, along with connect() method in preparation for forthcoming run control changes Not long after –Would like to move to RCD as our standard –NB simulation controller remains in the old style for now


Download ppt "Multistep Runs with ROD Crate DAQ Murrough Landon, QMUL Outline: Overview Implementation Comparison with existing setup Readout Status ModuleServices API."

Similar presentations


Ads by Google