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/31 12:20]
pereira [CRDC packets]
event_filter [2015/10/31 21:44]
pereira [TPPACs packet]
Line 283: Line 283:
  
  
-Where Ch is the segment number (from 0 to 15, being segment 0 the most upstream). The Filter gives an energy word for each segment as long as **energy** is greater than 0.+where Ch is the segment number (from 0 to 15, being segment 0 the most upstream). The Filter gives an energy word for each segment as long as **energy** is greater than 0.
  
  
Line 403: Line 403:
  
  
-==== Intermediate-image PPACs packet ==== +==== Hodoscope packet ==== 
-The Filter provides a PPAC packet: one for [[Detectors|Cathode Readout Drift Chambers (CRDC)|CRDC1]] and one for [[Detectors|Cathode Readout Drift Chambers (CRDC)|CRDC2]]. Each CRDC packet is divided in two sub-packets: the "Raw" sub-packet with information about the pads energies (encoded in the [[S800 USB DAQ data format#Tag 0xCFDCXLM72V crdc1 pad readout module|CRDCs XLM72 modules]]), and the "Anode" sub-packet with anode energy and time information encoded in the CRDCs [[S800 USB DAQ data format#Tag 0x7167Phillips 7164 ADC module for CRDC anodes (energies and TAC)|Phillips ADC]]. In the following, we describe the structure of the packet provided by the Filter for each CRDC.+The Filter parses the [[Detectors#Hodoscope|Hodoscope]] information encoded in the two  
 +[[S800 USB DAQ data format#Tag 0x7165Phillips 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 0x4448LeCroy4448 coincidence register module for hodoscope hit pattern|LeCroy 4448 coincidence-register module]]. 
 + 
 +Each of the **two first packets** look like:
  
   * **Packet Length** (self-inclusive)   * **Packet Length** (self-inclusive)
  
-^    A number from 10 to 330    ^^^^^^^^^^^^^^^| +^    A number from to 19    ^^^^^^^^^^^^^^^| 
-| 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 415: Line 418:
   * **Packet Tag**   * **Packet Tag**
  
-^    0x5840    ^^^^^^^^^^^^^^^| +^    0x58B0    ^^^^^^^^^^^^^^^| 
-| 0 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | | 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 "Energy" Tag** 
  
-  * **CRDC label** 
  
-^    0x0000 or 0x0001   ^^^^^^^^^^^^^^^|+^    0x0000 or 0x0001    ^^^^^^^^^^^^^^^|
 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | X | | 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 | | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
  
-where 0x0000 and 0x0001 identify CRDC1 and CRDC2, respectively.+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.
  
  
  
-  * **CRDC Sub-packet "Raw" Length** (self-inclusive)+  * **Energy values** 
 +The energy from each of the two Phillips 7164H ADC modules is given by a series of words that look like:  
 + 
 +^  ^^^ 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 crystal number in the packet (from 0 to 15). The Filter gives an energy word for each crystal as long as **energy** is greater than 0. 
 + 
 + 
 + 
 + 
 + 
 +The **third hodoscope packet** with information from the coincidence register looks like: 
 + 
 +  * **Packet Length** (self-inclusive) 
 + 
 +^    5    ^^^^^^^^^^^^^^^| 
 +| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 
 +| 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 | 
 + 
 + 
 +  * **Hit pattern**  
 + 
 + 
 +^    hit pattern of first 16 crystals   ^^^^^^^^^^^^^^^| 
 +| 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 | 
 + 
 + 
 + 
 +^    hit pattern of crystals 16 to 32   ^^^^^^^^^^^^^^^| 
 +| 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 | 
 + 
 + 
 + 
 +  * **Time** 
 +The Hodoscope OR 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 | 
 + 
 + 
 + 
 + 
 +==== 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    ^^^^^^^^^^^^^^^| ^   A number from 3 to 323    ^^^^^^^^^^^^^^^|
Line 439: Line 514:
  
  
-  * **CRDC Sub-packet "Raw" Tag** +  * **TPPAC Sub-packet "Raw" Tag** 
  
-^    0x5841    ^^^^^^^^^^^^^^^| + 
-| 0 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 1 | | 0 | 0 | 0 | 1 |+^    0x5871    ^^^^^^^^^^^^^^^| 
 +| 0 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 1 | | 0 | 0 | 0 | 1 |
 | 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 470: Line 546:
 | 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 |
  
-The **connector** number is related to the pad number (**pad**) according to: **pad** = **channel** + **connector** x 64 (where **connector** ranges from 0 to 3, and **channel** is given by the first word of the sample sub-packet)Note that the Filter processes information from connectors with energies greater than 0+The **connector** number is defined between 0 and 3, and it is related to the pad number (**pad**). The value 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 TPPACFinally, 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|
  
  
  
-  * **CRDC Sub-packet "Anode" Length** (self-inclusive) 
  
-^    4    ^^^^^^^^^^^^^^^| 
-| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 
-| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | 
  
 +==== Mesytec TDC (MTDC) packet ====
 +The MTDC packet includes the multiple timing values registered in each channel of the Mesytec MTDC for a given event. 
  
 +all the timing values encoded in the [[S800 USB DAQ data format#Tag 0x7186: Phillips 7186 TDC module for time-of-flights|Phillips TDC]] and the XFP-FP and OBJ-FP ToF from the ORTEC TACs encoded in the [[S800 USB DAQ data format#Tag 0x7167: Phillips 7164 ADC module for CRDC anodes (energies and TAC)|S800 Phillips 7164H ADC]]. 
  
-  * **CRDC Sub-packet "Anode" Tag**  
  
-^    0x5845    ^^^^^^^^^^^^^^^| +  * **Packet Length** (self-inclusive) 
-| 0 | | 0 | | 0 | 0 | 0 | 0 | | 0 | 0 | 0 | |+ 
 +^    A number from 2 to 10    ^^^^^^^^^^^^^^^| 
 +| 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 | | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
  
  
 +  * **Packet Tag**
  
 +^    0x5802    ^^^^^^^^^^^^^^^|
 +| 0 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 |
 +| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
  
-  * **Energy from Anode** 
-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:  
  
- empty  ^^^^   energy   ^^^^^^^^^^^| +  * **Time-of-flight values** 
-| 0 | 0 | 0 | | X | X | X | X | X | X | X | X | X | X | X | X |+The time-of-flight information for each 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 |
 | 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  | 
 +
 +
 +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. 
  
  
-  * **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 | 
  
  
event_filter.txt · Last modified: 2019/05/24 13:58 by pereira