User Tools

Site Tools


event_filter

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
event_filter [2017/10/17 17:27]
pereira [Ion-Chamber packet]
event_filter [2018/05/11 15:10]
pereira [OBJECT PIN packet]
Line 1: Line 1:
 ====== S800 data format from Event Filter (S800 Filter) ====== ====== S800 data format from Event Filter (S800 Filter) ======
-This page describes the data format assembled ​by the S800 filter. The data is written in a series of 16-bit unsigned integers, subsequently referred to as ''​words''​. ​This format is suitable for the output ​of most of the modules ​presently used in the S800and in the case where 32 bit integers are needed, the proper unpacking procedures will be given.+The purpose of the S800 filter is to parse data from the S800 Event Builder, and reformat them in separated data packets, with an [[#General packet structure|specific structure]]. 
 + 
 + 
 +Data from the S800 filter are encapsulated as Ring Items (RI) and, as such, will include a [[http://​docs.nscl.msu.edu/​daq/​newsite/​nscldaq-11.2/​c185.html|Ring-Item Header]], a [[http://​docs.nscl.msu.edu/​daq/​newsite/​nscldaq-11.2/​x214.html|Body Header]], and a Body, where the real parsed data are included. Ring Items emitted from the S800 filter are pushed into a [[http://​docs.nscl.msu.edu/​daq/​newsite/​nscldaq-11.2/​c43.html|Ring-Buffer]] called **s800filter**. 
 + 
 + 
 +This page describes the data format assembled ​in the __Body__ of the S800 Filter RI. The data is written in a series of 16-bit unsigned integers, subsequently referred to as ''​words''​. ​Regardless ​of what modules ​are being read, the Body of the S800 Filter RI will always include four 16-bit wordsfollowed by a series of [[#General packet structure|data packets]]. The structure of the whole Body is described in the diagram below: 
 + 
 + 
 + 
 +^ Body Length 1 ^ Body Length 2 ^ S800 Data Tag ^ S800 Data Version ^ Data Packet 1 ^ Data Packet 2 ^ ... | 
 + 
 +  * **Body Length 1**: Number of words in body (self inclusive) 
 +  * **Body Length 2**: Number of words in body - 1 (self-inclusive) 
 +  * **S800 Data Tag**: 0x5800 
 +  * **S800 Data Version**: 0x0005 
 + 
  
 ===== General packet structure ===== ===== General packet structure =====
Line 171: Line 187:
  
 ^    A number from 2 to 10    ^^^^^^^^^^^^^^^| ^    A number from 2 to 10    ^^^^^^^^^^^^^^^|
-| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | | X | X | X |+| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | | X | X | X |
 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
  
Line 467: Line 483:
   * **Packet Length** (self-inclusive)   * **Packet Length** (self-inclusive)
  
-^    ​   ​^^^^^^^^^^^^^^^| +^    ​   ​^^^^^^^^^^^^^^^| 
-| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 1 |+| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 |
 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
  
Line 477: Line 493:
 | 0 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | | 0 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 |
 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
 +
 +
 +
 +  * **Hodoscope Sub-packet "​Hit-pattern"​ Tag** 
 +
 +
 +^    0x0002 ​  ​^^^^^^^^^^^^^^^|
 +| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | X |
 +| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
 +
  
  
Line 633: Line 659:
  
  
 +===== OBJECT PIN packet =====
 +The OBJECT PIN packet includes the energy (encoded in the [[S800 USB DAQ data format#Tag 0x7167: Phillips 7164 ADC module for CRDC anodes (energies and TAC)|S800 Phillips 7164H ADC]] measured in the S800 OBJ PIN detector. Note that for most of the experiments,​ this packet is empty (i.e. it only includes the packet-length and packet tag) because this detector is rarely used.
 + 
  
  
 +  * **Packet Length** (self-inclusive)
 +
 +^    A number between 2 and 3    ^^^^^^^^^^^^^^^|
 +| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | X | X | X |
 +| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
 +
 +
 +  * **Packet Tag**
 +
 +^    0x58A0 ​   ^^^^^^^^^^^^^^^|
 +| 0 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 |
 +| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
 +
 +
 +  * **Energy**
 +The energy from the Phillips ADC is given by one word:  ​
 +
 +^  ^^^ Ch ^   ​energy ​  ​^^^^^^^^^^^|
 +| 0 | 0 | 0 | X | X | X | X | X | X | X | X | X | X | X | X | X |
 +| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
 +
 +
 +where **Ch** is the Phillips ADC channel reserved for the PIN detector (0). The energy words is sent by the Filter as long as **time** is greater than 0.
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +===== Galotte packet =====
 +The Galotte packet includes up to five time signals from the Galotte detector. These times are encoded in the [[S800 USB DAQ data format#Tag 0x7186: Phillips 7186 TDC module for time-of-flights|Phillips TDC]]. Note that for most of the experiments,​ this packet is empty (i.e. it only includes the packet-length and packet tag) because this detector is rarely used.
 +
 +
 +
 +  * **Packet Length** (self-inclusive)
 +
 +^    A number from 2 to 7    ^^^^^^^^^^^^^^^|
 +| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | X | X | X |
 +| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
 +
 +
 +  * **Packet Tag**
 +
 +^    0x58D0 ​   ^^^^^^^^^^^^^^^|
 +| 0 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 0 | 0 | 0 |
 +| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
 +
 +
 +  * **Time values**
 +The time information for each of the five detector channel is coded in words that look like:
 +
 +^  ^^^ Ch ^  time  ^^^^^^^^^^^|
 +| 0 | 0 | 0 | X | X | X | X | X | X | X | X | X | X | X | X | X |
 +| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
 +
 +Where **Ch** runs from 0 to 3. These words are sent by the Filter as long as **time** is greater than 0. 
 +
 +
 +
 +
 +===== LaBr packet =====
 +The LaBr packet includes the energy (encoded in the [[S800 USB DAQ data format#Tag 0x4300: FERA module for plastic scintillator energies|FERA LeCroy module]]) and times (encoded in a Phillips TDC) from up to four LaBr detectors.
 +Note that although there is a specific EVB tag for that Phillips TDC (0x7187), this module is currently not included in the S800 electronics. As a result, the data packet is empty (i.e. it only includes the packet-length and packet tag).
 +
 +
 +
 +  * **Packet Length** (self-inclusive)
 +
 +^    A number from 2 to 10    ^^^^^^^^^^^^^^^|
 +| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | X | X | X | X |
 +| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
 +
 +
 +  * **Packet Tag**
 +
 +^    0x58E0 ​   ^^^^^^^^^^^^^^^|
 +| 0 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 |
 +| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
 +
 +
 +
 +  * **Energy and time values**
 +The energy (from the FERA module) and time (from the Phillips TDC) are given by two consecutive words for each LaBr: 
 +
 +^  ^^^ Ch ^ ^ energy ​ ^^^^^^^^^^|
 +| 0 | 0 | 0 | X | 0 | X | X | X | X | X | X | X | X | X | X | X |
 +| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
 +
 +
 +^  ^^^ Ch ^ time  ^^^^^^^^^^^|
 +| 0 | 0 | 0 | X | X | X | X | X | X | X | X | X | X | X | X | X |
 +| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
 +
 +
 +Where **Ch** runs from 0 to 3. These words are sent by the Filter as long as **time** is greater than 0. 
 ===== Mesytec TDC (MTDC) packet ===== ===== Mesytec TDC (MTDC) packet =====
 The MTDC packet includes the multiple timing values [[S800 USB DAQ data format#Tag 0x0DDC: Mesytec MTDC-32 module |encoded in the Mesytec MTDC]]. The packet looks like: The MTDC packet includes the multiple timing values [[S800 USB DAQ data format#Tag 0x0DDC: Mesytec MTDC-32 module |encoded in the Mesytec MTDC]]. The packet looks like:
Line 648: Line 778:
   * **Packet Tag**   * **Packet Tag**
  
-^    ​0x58E0 ​   ​^^^^^^^^^^^^^^^|+^    ​0x58F0 ​   ​^^^^^^^^^^^^^^^|
 | 0 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | | 0 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 |
 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
event_filter.txt · Last modified: 2018/05/11 15:10 by pereira