This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
event_filter [2015/10/31 21:44] pereira [TPPACs packet] |
event_filter [2016/03/16 15:36] pereira [S800 data format from Event Filter (S800 Filter)] |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== 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 '' | ||
+ | |||
+ | ===== General packet structure ===== | ||
+ | All data is written using the concept of " | ||
+ | |||
+ | ^ Length ^ Packet Tag ^ Packet Data | | ||
+ | |||
+ | Length: a count of the number of words in the packet, inclusive of the length word itself | ||
+ | |||
+ | Packet Tag: a predefined integer indicating the type of data found in the Packet Data | ||
+ | |||
+ | Packet Data: the data themselves. These can be data read from the modules or a sub packet. Sub packets have identical structure to main packets. Using this format all data can be placed in nested packets, and coding decisions on how to unpack the Packet Data can be made by examination of the preceding Packet Tag. Packets (including sub packets) can also be skipped by jumping ahead Length words in the buffer. | ||
- | The trigger bits words indicates which bits were set during the event. The encoding of the bits is the following: | ||
In this section, each 16-bit word sent by the Filter is described by a 16x3-table diagram. The first row includes the value, either in decimal or hexadecimal format, or a descriptive note. The second row shows the value in binary (" | In this section, each 16-bit word sent by the Filter is described by a 16x3-table diagram. The first row includes the value, either in decimal or hexadecimal format, or a descriptive note. The second row shows the value in binary (" | ||
+ | |||
Line 621: | Line 634: | ||
==== Mesytec TDC (MTDC) packet ==== | ==== Mesytec TDC (MTDC) packet ==== | ||
- | The MTDC packet includes the multiple timing values | + | The MTDC packet includes the multiple timing values [[S800 USB DAQ data format# |
- | + | ||
- | all the timing values encoded in the [[S800 USB DAQ data format# | + | |
Line 635: | Line 646: | ||
* **Packet Tag** | * **Packet Tag** | ||
- | ^ | + | ^ |
- | | 0 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 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 | | ||
- | * **Time-of-flight | + | * **Time values** |
- | The time-of-flight | + | Every time value encoded in the MTDC is sent by the Filter as a series |
- | ^ ^^^ Ch ^ | + | ^ |
| 0 | 0 | 0 | X | X | X | X | X | X | X | X | X | X | X | X | X | | | 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 | | | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | | ||
- | Up to eight of these words can be present (depending on wheter **time** is greater than 0): six from the Phillips TDC, and two from the XFP-FP and OBJ-FP TACs. The channel number Ch is given by: | ||
- | ^ Ch ^ Source | ||
- | | 6 | Phillips TDC time from the A1900 IM2 north scintillator (optional) | ||
- | | 7 | Phillips TDC time from the A1900 IM2 south scintillator (optional) | ||
- | | 12 | Phillips TDC time from the RF | | ||
- | | 13 | Phillips TDC time from the OBJ scintillator | ||
- | | 14 | Phillips TDC time from the XFP scintillator | ||
- | | 15 | Phillips TDC time from the LaBr (optional) | ||
- | | 4 | XFP-FP time-of-flight from TAC | | ||
- | | 5 | OBJ-FP time-of-flight from TAC | | ||
- | + | ^ time | |
- | Note that the time values from the Phillips TDC are subtracted by SpecTcl to the time from the S800 trigger E1 up (encoded in the [[#trigger packet|trigger packet]]) in order to calculate the corresponding time-of-flight. On the other hand, the times from the TACs (Ch 4 and 5) correspond to actual time-of-flight values. | + | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | ^ | + | |
| X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | | | X | X | X | 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 | | | 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 | | ||
- | |||
- | |||
- | |||
- | |||
- | ^ Bit ^^^^^^^^^^^^^^^| | ||
- | | 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 | | ||
- | |||
- | |||