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.

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 | r5 < r4 < r3 < r2 | Backlinks | Raw View | Raw edit | More topic actions...
Topic revision: r3 - 04 Aug 2014 - 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