Difference between revisions of "DAQ Testing/20181128"

From PREX Wiki
Jump to navigationJump to search
Line 24: Line 24:
 
* Ed Jastrzembski is busy this week, so Bob and Cameron will work with him in the first half of next week
 
* Ed Jastrzembski is busy this week, so Bob and Cameron will work with him in the first half of next week
 
* Paul King says that fiber optics cables were run to the second floor of the counting house for this purpose during QWeak, so we should be able to use those
 
* Paul King says that fiber optics cables were run to the second floor of the counting house for this purpose during QWeak, so we should be able to use those
 +
 +
== Reading Injector .dat Files in xcefdmp ==
 +
 +
Scaling the data file in xcefdmp to 14 words wide is helpful. Event banked data is 14 x 45 - 3 = 627 words. I will enumerate them with the first word indexed at 0. Each word has 8 hex digits to it, and each hex digit has 4 bits = 32 bit data flow.
 +
 +
=== Header Words ===
 +
 +
What are the headers?
 +
 +
* Event header = 0xffb0b444 - word 0
 +
* SCAL_BTYPE = 0x3101 - word 1, 37 data words follow, 1 footer word = 0xf0f0f0f0 appended (word 39)
 +
* VQWK_BTYPE = 0xff902902 - word 40, 528 data words follow
 +
* VQWKERR_BTYPE = 0x3112 - word 569, 32 data words follow
 +
* HEL_BTYPE = 0x3103 - word 602, 24 data words follow
 +
 +
=== HEL_BTYPE ===
 +
 +
The helicity data is stored at the end of the event data and is obtained from the FLEXIO (as the first data word, word 603) and possibly also the STR7200 data words (next 5, 605-610) if needed
 +
 +
* Word 603 = the input signals, read from flexioReadData(2)
 +
** Method loaded from ~/devices/flexio/PaulVers/flexioLib.c/h (KentVers used in Counting House)
 +
** The data being read is the FLEXIO "input_reg", which (I believe) is the 16-bit hexadecimal word corresponding to the FLEXIO's input channels (assumed NIM logical pulses that are static per event)
 +
** Because for the tests [[DAQ_Testing/20181127|yesterday]] I plugged an extra copy of HEL+ into the FLEXIO's last (index 15) input bit then we should expect to get a 0 or 8 in the 4th hex digit of the FLEXIO "input_reg" data
 +
* Word 604 = the FLEXIO output control bit, read from flexioReadData(1)
 +
** This word is trivially zero
 +
* Words 605-610 = the STR7200 measured data
 +
** This data is stored in an "event_registers[16]" array
 +
** This array is filled by the STR7200 loaded library methods (see [[DAQ_Hardware/STR7200]])
  
 
== Results ==
 
== Results ==

Revision as of 20:24, 29 November 2018

Back to Main Page >> DAQ Documentation Portal >> DAQ Testing >> DAQ Commissioning Notes

Previous Day of Testing << >> Next Day of Testing

November 28th, 2018 Testers: Bob, Cameron, Paul

See Today's Meeting Notes (Analyzer Meeting)

Goals

  • Figure out how to read raw .dat files to find helicity signals by hand
  • Update timing diagrams (include the 1us between start of T_settle and Helicity flipping, don't show multiple helicity flips if subsequent T_settle's aren't shown too)
  • Work with Ed Jastrzembski to implement/verify the synchronization of the TS between Counting House and Injector
  • Understand how to monitor data transfer in ET system using monitorGui
    • Understand DAQ deadtime implications
    • Figure out the parameters to be tweaked to allow data to flow unobstructed
    • If this doesn't yield an obvious solution, explore a homemade data buffer solution that allows for DAQ vs. online analysis decoupling
  • Incorporate Helicity sequence monitor into deadtime testing and scaler testing
    • Also incorporate it into raw .dat file reading to determine helicity sequence and relative offsets of other copies of HEL+/-

Injector/Counting House Synchronization

  • Ed Jastrzembski is busy this week, so Bob and Cameron will work with him in the first half of next week
  • Paul King says that fiber optics cables were run to the second floor of the counting house for this purpose during QWeak, so we should be able to use those

Reading Injector .dat Files in xcefdmp

Scaling the data file in xcefdmp to 14 words wide is helpful. Event banked data is 14 x 45 - 3 = 627 words. I will enumerate them with the first word indexed at 0. Each word has 8 hex digits to it, and each hex digit has 4 bits = 32 bit data flow.

Header Words

What are the headers?

  • Event header = 0xffb0b444 - word 0
  • SCAL_BTYPE = 0x3101 - word 1, 37 data words follow, 1 footer word = 0xf0f0f0f0 appended (word 39)
  • VQWK_BTYPE = 0xff902902 - word 40, 528 data words follow
  • VQWKERR_BTYPE = 0x3112 - word 569, 32 data words follow
  • HEL_BTYPE = 0x3103 - word 602, 24 data words follow

HEL_BTYPE

The helicity data is stored at the end of the event data and is obtained from the FLEXIO (as the first data word, word 603) and possibly also the STR7200 data words (next 5, 605-610) if needed

  • Word 603 = the input signals, read from flexioReadData(2)
    • Method loaded from ~/devices/flexio/PaulVers/flexioLib.c/h (KentVers used in Counting House)
    • The data being read is the FLEXIO "input_reg", which (I believe) is the 16-bit hexadecimal word corresponding to the FLEXIO's input channels (assumed NIM logical pulses that are static per event)
    • Because for the tests yesterday I plugged an extra copy of HEL+ into the FLEXIO's last (index 15) input bit then we should expect to get a 0 or 8 in the 4th hex digit of the FLEXIO "input_reg" data
  • Word 604 = the FLEXIO output control bit, read from flexioReadData(1)
    • This word is trivially zero
  • Words 605-610 = the STR7200 measured data
    • This data is stored in an "event_registers[16]" array
    • This array is filled by the STR7200 loaded library methods (see DAQ_Hardware/STR7200)

Results

To Do

  • Work with Ed Jastrzembski next week on Injector/Counting house TS synchronization