New analysis code being developed for 2014 data format

New code is being developed by Daniel Arcaro with help from Eric Hazen and Dan Gastler to analyze the new/final data format documented here: AMC13CommonFirmwareProposal. Also Ted Laird has written a tool to convert to root format:

P.S. If you end up dumping the AMC13 monitor buffers, but would like
to convert the dumps to .root files with TTrees of
std::vector, so that you can use "ordinary" analysis
programs to analyze them, feel free to use this program:
badcoffee.cpp

Bug reports are quite welcome.  (to Ted Laird)

A preliminary API is documented below. Three classes are foreseen:

Class Description
FedEvent one event fragment as received from an AMC13 in response to a single L1A
FedAmc Payload for one AMC
FedBlock internal block structure of event fragment

Each class is documented below:

Class FedEvent

Function Description
FedEvent( uint64_t* data, size_t size) Constructor using raw data
EvN(), BcN(), OrN() Access Event, Bunch and Orbit numbers from event header
vector amc Vector of 1...12 FedAmc objects representing AMC payloads
CalcSize() Size calculated from structure (should match total word count)
CRC() CRC16 from event trailer
CalcCRC() CRC16 calculated from event data (should match CRC())

To Do List

Bugs

  • In FedEvent::PreParse the expression if(GetNAMC() > 0 || GetNAMC() < 13) is always true. I think you mean to use && instead of ||.
  • In FedEvent::PreParse there are two possibilities for size: a) 2 and b) 4...14. It should throw an exception if any other value is passed. The comments should reflect this.
  • Add a doxygen configuration file and "doc" target to makefile so one can do 'make doc' and get the doxygen output.

New Features

  • Check for consistency of LMSEPVC bits through an entire event
    • MS should be "10" for first block, "11" for intermediate blocks, "01" for final blocks.
    • C should be 1 when MS="01".
    • EP should always be "11" I think
  • Check Blk_No, AmcNo, BoardID in block headers for consistency throughout event
  • Add option to dump entire AMC payloads

-- EricHazen - 04 Aug 2014

Edit | Attach | Watch | Print version | History: r22 | r6 < r5 < r4 < r3 | Backlinks | Raw View | Raw edit | More topic actions...
Topic revision: r4 - 30 Apr 2015 - EricHazen
 
  • Edit
  • Attach
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2019 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback