User Tools

Site Tools


event_filter

Differences

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

Link to this comparison view

Next revision
Previous revision
Next revision Both sides next revision
event_filter [2015/10/30 16:54]
pereira [Ion-Chamber packet]
event_filter [2015/10/31 12:20]
pereira [CRDC packets]
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 278: Line 278:
 The energy (from the Phillips 7164H ADC module) is given by a series of words that look like:  The energy (from the Phillips 7164H ADC module) is given by a series of words that look like: 
  
-^  ^^^ Ch ^ energy  ^^^^^^^^^^^|+^  ^^^ Ch ^   energy   ^^^^^^^^^^^|
 | 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 |
Line 289: Line 289:
  
 ==== CRDC packets ==== ==== CRDC packets ====
-The Filter provides two CRDC packets: one for CRDC1 and one for 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 0xCFDC: XLM72V 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 0x7167: Phillips 7164 ADC module for CRDC anodes (energies and TAC)|Phillips ADC]]. +The Filter provides two CRDC packets: 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 0xCFDC: XLM72V 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 0x7167: Phillips 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.
  
 +  * **Packet Length** (self-inclusive)
  
 +^    A number from 10 to 330    ^^^^^^^^^^^^^^^|
 +| 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**
 +
 +^    0x5840    ^^^^^^^^^^^^^^^|
 +| 0 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
 +| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
 +
 +
 +
 +  * **CRDC label**
 +
 +^    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 and 0x0001 identify CRDC1 and CRDC2, respectively.
 +
 +
 +
 +  * **CRDC 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 |
 +
 +
 +
 +  * **CRDC Sub-packet "Raw" Tag** 
 +
 +^    0x5841    ^^^^^^^^^^^^^^^|
 +| 0 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 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 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. 
 +
 +
 +
 +
 +
 +  * **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 |
 +
 +
 +
 +  * **CRDC Sub-packet "Anode" Tag** 
 +
 +^    0x5845    ^^^^^^^^^^^^^^^|
 +| 0 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 1 | 0 | 1 |
 +| 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   ^^^^^^^^^^^|
 +| 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 |
 +
 +
 +
 +  * **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 |
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +==== Intermediate-image PPACs 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 0xCFDC: XLM72V 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 0x7167: Phillips 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.
  
   * **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 302: Line 415:
   * **Packet Tag**   * **Packet Tag**
  
-^    0x5820    ^^^^^^^^^^^^^^^| +^    0x5840    ^^^^^^^^^^^^^^^| 
-| 0 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 |+| 0 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 1 | 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 |
  
  
  
-  * **Sub-packet "Energy" Tag**+  * **CRDC label**
  
-^    0x5821    ^^^^^^^^^^^^^^^| +^    0x0000 or 0x0001   ^^^^^^^^^^^^^^^| 
-| 0 | | 0 | | 0 | 0 | 0 | 0 | 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 | | 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.
  
  
-  * **Sub-packet "Energy" Length** (self-inclusive) 
  
-   from to 16    ^^^^^^^^^^^^^^^| +  * **CRDC Sub-packet "Raw" Length** (self-inclusive) 
-| 0 | 0 | 0 | 0 | 0 | 0 | 0 | | X | X | X | X | X |+ 
 +  A number from to 323    ^^^^^^^^^^^^^^^| 
 +| 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 |
  
  
  
 +  * **CRDC Sub-packet "Raw" Tag** 
  
-  * **Energy values** +^    0x5841    ^^^^^^^^^^^^^^^| 
-The energy (from the Phillips 7164H ADC module) is given by a series of words that look like: +| 0 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 
 +| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
  
- ^^^ Ch energy  ^^^^^^^^^^^| + 
-| 0 | 0 | 0 | |+ 
 +  * **Global threshold**  
 + 
 +^    0x0000    ^^^^^^^^^^^^^^^| 
 +| 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 |
 +
 +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 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. 
 +
 +
 +
 +
 +
 +  * **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 |
 +
 +
 +
 +  * **CRDC Sub-packet "Anode" Tag** 
 +
 +^    0x5845    ^^^^^^^^^^^^^^^|
 +| 0 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 1 | 0 | 1 |
 +| 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   ^^^^^^^^^^^|
 +| 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 |
 +
 +
 +
 +  * **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 |
 +
 +
 +
  
  
-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. 
  
  
event_filter.txt · Last modified: 2019/05/24 13:58 by pereira