x2745 Scope 2024112500
CUP documentation
Supported Endpoints

Raw

Raw data.

Options:

  • Level: DIG

Supported Fields

Name Native Type Dim Description
DATA U8 (fixed) 1 Raw Data (type of conversion not supported)
SIZE SIZE_T 0 Size of data written to DATA
N_EVENTS U32 0 Number of events in the blob

Three event types are present in the data:

  • The Start Run event
  • Data events, one per each trigger accepted by the board
  • The Stop Run event

The Start Run is a special event composed of four 64-bit words and generated by the board when the acquisition starts.

The Start event is below described:

0x3000000300000004
0x02000000 & '0' & decim_factor(3:0) & "01" & waveform_width(24:0)
0x01000000 & ch_enable_mask[31:0]
0x01000000 & ch_enable_mask[63:32]

The Data event size depends on the portion of the waveform to be saved and the enabled channels. The Default value of RecordLength is 0xA, which means 10 quartets of samples per channel (i.e. 64 bits per channel). The quartet is the minimum data per channel. The default configuration of ChEnable is "True" for all the channels.

The Data event starts with three 64-bit Header words following described.

Fig: Header description of the Data event

Head0 (first Header word):

  • Format carries the format type information. Bit [63:60] = 0x1 means "Scope Firmware" format.
  • Board Fail is a flag indicating that an error occured among the ones that the User can enable through the ErrorFlagDataMask parameter. If bit [56] = 1, the User can then use the ErrorFlags parameter to read out the status of each flag looking for the error origin.
  • Trigger_ID is the 24-bit identifier configurable through the TriggerIDMode parameter. It can be either the total trigger counter, or the saved event counter, or a pattern coming from the LVDS I/Os (the connector on the digitizer front panel).
  • Event Size is the total size of the event (including the header) expressed in 64-bit words.

Head1 (second Header word):

  • Flags: Bit [51] is the overlap flag (1 means trigger overlapped, while 0 is trigger not overlapped). The others are all "0".
  • OvL: Bits [50:48] is the number overlapped samples. Maximum value is 3, so Bit [50] is always 0.
  • Trigger Time Tag (TTT) is the trigger timestamp over 48 bits with 8 ns of resolution.

Head2 (third Header word):

  • Channel Enable Mask is the mask of the channels that are present in the event and necessary to decode the data.

Considering all the 64 channels enabled and Recordlength = N (i.e. quartets ranging from 0 up to N-1), the final event, composed of 64-bit words, is then structured as in figure below.

In the case of K channels enabled, there will be K 64-bit words per each quartet (i.e. 4 samples, each sample over 16 bits), one word per each enabled channel, ordered by channel index.

To decode the channels, the information in the Channel Enable Mask word of the Header (Header2) must be used.

The Stop Run is a special event composed of three 64-bit words and generated at the end of the Run. The Stop Run event will be read out after all the data events. The Stop event is below described:

0x3200000200000003
0x0000 & realtime(47:0)
0x01000000 & deadtime[31:0]

Scope

Decoded scope endpoint.

Options:

  • Level: DIG

Supported Fields

Name Native Type Dim Description
TIMESTAMP U64 0 Timestamp (48 bits)
TIMESTAMP_NS U64 0 Timestamp in nanoseconds (51 bits)
TRIGGER_ID U32 0 Trigger ID (24 bits)
WAVEFORM U16 2 Array with pointers to allocated memory for waveforms, each with size at least MaxRawDataSize
WAVEFORM_SIZE SIZE_T 1 Array with waveform size for each channel
EVENT_SIZE SIZE_T 0 Total event raw size, useful for statistics
FLAGS U16 0 Event Flags (13 bits)
BOARD_FAIL BOOL 0 Checks if any error in ErrorFlagMask is set
SAMPLES_OVERLAPPED U8 3 Number of overlapped samples

ActiveEndpoint

Defines which endpoint will be used. Path to be used in the CAEN_FELib_GetHandle(): /endpoint/par/activeendpoint

Options:

  • Level: FOLDER
  • Access Mode: READ_WRITE
  • Type: STRING

Allowed Values:

  • Raw: Decode is disabled, data are received in the same format as provided by the digitizer, and ReadData should be made on handle /endpoint/raw
  • Scope: Decode is enabled, data are decoded to a specific format, and it is possible to decide which fields must be present in the decoded data through the Scope endpoint. ReadData should be made on handle /endpoint/scope