User Tools

Site Tools


sweeper_usb_daq_data_format

This is an old revision of the document!


The Sweeper USB DAQ data format

Two crates are read by the Sweeper DAQ software (one CAMAC and one VME), but more could be easily added to the software. This section describes the data format coming from each controller. (Please, note that this data format is irrelevant for the user; this is so because the USB data are “pre-unpacked” by the Sweeper Pre-unpacker software before being distributed to the user.)

CAMAC Crate data format

The CCUSB controller used to read data out of the CAMAC crate generates buffers of variable length. The first two words (16 bits each) are the buffer headers where information about the buffer is encoded. Events then follow until a single word 0xFFFF which is the buffer terminator. The format is as follows:

Header1 Header2 Events… 0xFFFF

Header1 codes the number of events in bits 0-11. Bit14=1 indicates a scaler buffer, while bit15=1 indicates a watchdog buffer (not used in this implementation).

Header2 codes the number of words in the buffer in bits 0-11.

The format of events is as follows:

Length 0xC801 Event counter bits 0-15 Event counter bits 16-23 Event counter bits 24-39 Event counter bits 40-47 Tag Data… End Tag Tag Data… End Tag

The length is the number of words following in the event. Note that IT IS NOT SELF-INCLUSIVE!

The word 0xC801 identifies the origin of the event as from the Sweeper CAMAC crate

The following 6 words encode the 48 bit event number

The tags and end tags identify the modules being read and encapsulate the data from each. The tags, end tags and their corresponding modules are listed below:

  • 0x2367, 0xf367: LeCroy ULM2367 Trigger module
  • 0x4300, 0xf300: LeCroy4300B FERA module for plastic scintillator energies
  • 0x7164, 0xf164: Phillips7164 ADC module for ion chamber energies
  • 0x7167, 0xf167: Phillips7164 ADC module for CRDC anodes (energies and TAC)
  • 0x7186, 0xf168: Phillips7186 TDC module for time-of-flights (DISCONTINUED)

Tag 0x2367: Trigger module

The ULM trigger module provides a bit mask with information about the trigger sources, and a time-stamp value

0x2367 Trigger bits TS 0-15 TS 16-31 TS 32-47 TS 48-63 0xf367

The trigger bits words indicates which bits were set during the event. The encoding of the bits is the following:

Bit Source
0 Sweeper
1 Coincidence
2 External 1
3 External 2
4 Secondary

The 64 bit time stamp (TS) follows from least significant word to most.

Tag 0x4300: FERA module for plastic scintillator energies

0x4300 FERA data… 0xf300

The data following the tag is the standard sparse FERA data as shown in the figure below:

Format of LeCroy 4300B FERA data

At present (Oct 2015), the FERA channel assignments are:

Channel Source
0 FP Thin SCI Left, Up
1 FP Thin SCI Left, Down
2 FP Thin SCI Right, Up
3 FP Thin SCI Right, Down
4-7 Free
8 Pot SCI
9-15 Free

Tag 0x7164: Phillips 7164 ADC module for ion chamber energies

0x7164 hit pattern ADC data… 0xf164

The ADC data contains all channels for which the hit pattern bit is set. The channel number is encoded in bits 12-15, while the data is in bits 0-11. The ion chamber has 16 segments, channel 0 corresponding to the most upstream segment while channel 15 corresponding to the most downstream segment.

Tag 0x7167: Phillips 7164 ADC module for CRDC anodes (energies and TAC)

0x7167 hit pattern ADC data… 0xf167

The ADC data contains all channels for which the hit pattern bit is set. The channel number is encoded in bits 12-15, while the data is in bits 0-11. The table below shows the channel assignments.

Channel Assignment
0 Available
1 CRDC1 Anode
2 CRDC2 Anode
3 CRDC1 TAC
4 CRDC2 TAC
5-15 Available

VME Crate data format

The VMUSB controller used to read data out of the VME crate generates buffers of variable length. The first two words (16 bits each) are the buffer headers where information about the buffer is encoded. Events then follow until two word 0xFFFF which are the buffer terminators. The format is as follows:

Header1 Header2 Events… 0xFFFF 0xFFFF

Header1 codes the number of events in bits 0-11. Bit14=1 indicates a scaler buffer, while bit15=1 indicates a watchdog buffer (not used in this implementation).

Header2 codes the number of words in the buffer in bits 0-11.

The format of events is as follows:

Length 0xE801 Event counter bits 0-15 Event counter bits 16-31 Event counter bits 32-47 Event counter bits 48-63 Tag Data… End Tag Tag Data… End Tag

The length is the number of words following in the event. Note that IT IS NOT SELF-INCLUSIVE! This word also contains information about the stack that generated the data as well as a continuation bit indicating that the data spans more than the 2 kwords limit of the internal FIFO of the VMUSB. This bit is set for each contiguous fragment of the data until the last fragment for which it is not set. The mapping of the length word is the following:

15-13 12 11-0
Stack ID Continuation bit Length

The word 0xE801 identifies the origin of the event as from the Sweeper VME crate

The following 4 16-bit words encode the 64 bit event number

The tags and end tags identify the modules being read, and encapsulate their data. The tags, end tags and their corresponding modules are listed below:

  • 0x5901, 0xf901: trigger pattern from Level-3 trigger module (XLM72)
  • 0x5903, 0xf903: time stamp pattern from Level-3 trigger module (XLM72)
  • 0xcfdc, 0xffdc: XLM72 module configure to read CRDC1 pad signals
  • 0xcfdd, 0xffdd: XLM72 module configure to read CRDC2 pad signals
  • 0x59b0, 0xf9b0: MADC-32 module for Hodoscope
  • 0x59b0, 0xf9b0: MADC-32 module for Segmented Target
  • 0x0ddc, 0xfddc: MTDC-32 module for time-of-flights
sweeper_usb_daq_data_format.1494190783.txt.gz · Last modified: 2017/05/07 16:59 by pereira