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
Next revision Both sides next revision
event_filter [2015/10/30 18:47]
pereira [CRDC packets]
event_filter [2015/10/31 17:02]
pereira [TPPACs packet]
Line 3: Line 3:
 The trigger bits words indicates which bits were set during the event. The encoding of the bits is the following: The trigger bits words indicates which bits were set during the event. The encoding of the bits is the following:
  
-In this section, the following diagram will be used to describe a 16-bit word sent by the Filter. The first row includes the value, either in decimal or hexadecimal format, or a descriptive note. The second row shows the value in binary ("X"s are used to describe arbitrary values that vary from event to event). The last row shows the bit number. +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 ("X"s are used to describe arbitrary values that vary from event to event). The last row shows the bit number. 
  
  
Line 268: Line 268:
   * **Sub-packet "Energy" Length** (self-inclusive)   * **Sub-packet "Energy" Length** (self-inclusive)
  
-   from 2 to 16    ^^^^^^^^^^^^^^^|+  A number from 2 to 16    ^^^^^^^^^^^^^^^|
 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | X | X | X | X | X | | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 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 |
Line 293: Line 293:
   * **Packet Length** (self-inclusive)   * **Packet Length** (self-inclusive)
  
-^    A number from to 18    ^^^^^^^^^^^^^^| +^    A number from 10 to 330    ^^^^^^^^^^^^^^^| 
-| 0 | 0 | 0 | 0 | 0 | 0 | 0 | | X | X | X | X | X |+| 0 | 0 | 0 | 0 | 0 | 0 | 0 | | 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 |
  
Line 318: Line 318:
   * **CRDC Sub-packet "Raw" Length** (self-inclusive)   * **CRDC Sub-packet "Raw" Length** (self-inclusive)
  
-   from to 16    ^^^^^^^^^^^^^^^| +  A number from to 323    ^^^^^^^^^^^^^^^| 
-| 0 | 0 | 0 | 0 | 0 | 0 | 0 | | X | X | X | X | X |+| 0 | 0 | 0 | 0 | 0 | 0 | 0 | | 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 |
  
Line 332: Line 332:
  
  
-  * **Dummy word** +  * **Global threshold** 
  
 ^    0x0000    ^^^^^^^^^^^^^^^| ^    0x0000    ^^^^^^^^^^^^^^^|
Line 338: Line 338:
 | 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 |
  
-This word is reserved for a global threshold, which is no longer used.+This word is reserved for a global threshold; it is no longer used, so it is set to 0 
  
  
Line 379: Line 379:
  
   * **Energy from Anode**   * **Energy from Anode**
-The anode energy (encoded in the Phillips 7164H ADC module) is given by: +The anode 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]]) is given by: 
  
-^  ^^^ Ch ^   energy   ^^^^^^^^^^^| + empty  ^^^^   energy   ^^^^^^^^^^^| 
-| 0 | 0 | 0 | | 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 |
 | 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 from Anode**
 +The anode time (from an ORTEC TAC encoded in the [[S800 USB DAQ data format#Tag 0x7167: Phillips 7164 ADC module for CRDC anodes (energies and TAC)|S800 Phillips 7164H ADC]]) is given by: 
 +
 +^  empty ^^^^   time   ^^^^^^^^^^^|
 +| 0 | 0 | 0 | 0 | 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 |
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +==== Hodoscope packet ====
 +The Filter parses the [[Detectors#Hodoscope|Hodoscope]] information encoded in the two 
 +[[S800 USB DAQ data format#Tag 0x7165: Phillips 7164 ADC module for hodoscope energies 0 through 15|Phillips 7164 ADCs]] and re-formats the data in three packets, two with the energies of the two groups crystals (from 1 to 16 and from 17 to 32), and the third one with the hit pattern recorded in the [[S800 USB DAQ data format#Tag 0x4448: LeCroy4448 coincidence register module for hodoscope hit pattern|LeCroy 4448 coincidence-register module]].
 +
 +Each of the two first packets look like:
 +
 +  * **Packet Length** (self-inclusive)
 +
 +^    A number from 5 to 325    ^^^^^^^^^^^^^^^|
 +| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 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 |
 +
 +
 +  * **Packet Tag**
 +
 +^    0x58B0    ^^^^^^^^^^^^^^^|
 +| 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 |
 +
 +
 +  * **Hodoscope Sub-packet "Energy" Tag** 
 +
 +
 +^    0x0000 or 0x0001    ^^^^^^^^^^^^^^^|
 +| 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 |
 +
 +where 0x0000 labels the energy sub-packet of the first group of crystals from 1 to 16, and 0x00001 labels the second group of crystals from 17 to 32.
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +==== TPPACs packet ====
 +The Filter parses and re-formats information from the [[Detectors#Tracking Parallel Plate Avalanche Counters (TPPAC)|Tracking PPACs]] encoded in the [[S800 USB DAQ data format#Tag 0x5870: XLM72V tracking ppac readout module|XLM72 TPPACs module]]. The new packet includes both TPPACs; its structure is very similar to that from the CRDCs.
 +
 +  * **Packet Length** (self-inclusive)
 +
 +^    A number from 5 to 325    ^^^^^^^^^^^^^^^|
 +| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 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 |
 +
 +
 +  * **Packet Tag**
 +
 +^    0x5870    ^^^^^^^^^^^^^^^|
 +| 0 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 0 | 0 | 0 | 0 |
 +| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
 +
 +
 +  * **TPPAC Sub-packet "Raw" Length** (self-inclusive)
 +
 +^   A number from 3 to 323    ^^^^^^^^^^^^^^^|
 +| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 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 |
 +
 +
 +
 +  * **TPPAC Sub-packet "Raw" Tag** 
 +
 +
 +^    0x5871    ^^^^^^^^^^^^^^^|
 +| 0 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 0 | 0 | 0 | 1 |
 +| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
 +
 +
 +
 +  * **Global threshold** 
 +
 +^    0x0000    ^^^^^^^^^^^^^^^|
 +| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
 +| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
 +
 +This word is reserved for a global threshold; it is no longer used, so it is set to 0 
 +
 +
 +
 +  * **Samples sub-packets**
 +The Filter sends a series of sample sub-packets. Each sub-packet consists of two parts. The first part includes one 16-bit word with information about the **sample** and **channel** numbers:
 +
 +^  control bit  ^   sample    ^^^^^^^^^   channel   ^^^^^|
 +| 1 | 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 |
 +
 +where **channel** is a number between 0 and 63, and refers to a group of four pads. The second part includes __up to four__ consecutive 16-bit words, each with a pad energy __greater than 0__:
 +
 +^  control bit  ^  empty  ^^^  connector  ^^  energy  ^^^^^^^^^|
 +| 0 | 0 | 0 | 0 | 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 |
 +
 +The **connector** number is defined between 0 and 3, and it is related to the pad number (**pad**). The value 0 refers to the first 64 pads, and correspond to the strips in the dispersive direction of the first TPPAC. The value 1 is for pads between 63 and 127, and includes the strips in the non-dispersive direction of the first TPPAC. The value 2 corresponds to pads between 128 and 191, which are associated to the strips in the dispersive direction of the second TPPAC. Finally, the value 3 corresponds to pads between 191 to 256, and covers the strips in the non-dispersive direction of the second TPPAC.
 +
 +The value of **pad** is given by **index** + **connector** x 64, where **index** is depends on the value of **channel** and **connector** according to the table below, where the second column shows the index values for **connector**=0 or 2, and the third column corresponds to the index values for **connector**=1 or 3:
 +
 +^channel^index^index|   
 +|0|30|0|
 +|1|31|1|
 +|2|28|2|
 +|3|29|3|
 +|4|26|4|
 +|5|27|5|
 +|6|24|6|
 +|7|25|7|
 +|8|22|8|
 +|9|23|9|
 +|10|20|10|
 +|11|21|11|
 +|12|18|12|
 +|13|19|13|
 +|14|16|14|
 +|15|17|15|
 +|16|14|16|
 +|17|15|17|
 +|18|12|18|
 +|19|13|19|
 +|20|10|20|
 +|21|11|21|
 +|22|8|22|
 +|23|9|23|
 +|24|6|24|
 +|25|7|25|
 +|26|4|26|
 +|27|5|27|
 +|28|2|28|
 +|29|3|29|
 +|30|0|30|
 +|31|1|31|
 +|32|33|63|
 +|33|32|62|
 +|34|35|61|
 +|35|34|60|
 +|36|37|59|
 +|37|36|58|
 +|38|39|57|
 +|39|38|56|
 +|40|41|55|
 +|41|40|54|
 +|42|43|53|
 +|43|42|52|
 +|44|45|51|
 +|45|44|50|
 +|46|47|49|
 +|47|46|48|
 +|48|49|47|
 +|49|48|46|
 +|50|51|45|
 +|51|50|44|
 +|52|53|43|
 +|53|52|42|
 +|54|55|41|
 +|55|54|40|
 +|56|57|39|
 +|57|56|38|
 +|58|59|37|
 +|59|58|36|
 +|60|61|35|
 +|61|60|34|
 +|62|63|33|
 +|63|62|32|
 +
 +
 +
 +
 +
 +
 +
  
  
event_filter.txt · Last modified: 2019/05/24 13:58 by pereira