
PIXIE-4 User’s Manual
V2.69
©
XIA
2015. All rights reserved.
xxvi
4.2 Output Data Structures
4.2.1 MCA Histogram Data
The MCA block is fixed to 32K words (32-bit deep) per channel, i.e. total 128K words. The
MCA block resides in the external memory which can be read out via the PCI data bus at rates
over 100Mbytes/s. If spectra of less than 32K length are requested, only part of the 32K will
be filled with data. This data can be read even when a run is in progress, to get a spectrum
update.
In clover mode, spectra for each channel are 16K long and compressed into the first 64K of
the external memory. An additional 16K addback spectrum containing the sum of energies in
events with multiple hits is accumulated in the second 64K of the external memory.
In 2D mode, spectra for each channel are 16K long and compressed into the first 64K of the
external memory. The remaining 64K of the external memory contains a 256 x 256 bin two
dimensional spectrum (custom code required)
4.2.2 List Mode Data
The list mode data in external memory consists of 32 local I/O data buffers. The local I/O data
buffer can be written by the DSP in a number of formats. User code should access the three
variables BUFHEADLEN, EVENTHEADLEN, and CHANHEADLEN in the configuration
file of a particular run to navigate through the data set. It should only be read when the run has
ended.
The 32 buffers in external memory follow immediately one after the other. The data
organization of one I/O buffer is as follows. The buffer content always starts with a buffer
header of length BUFHEADLEN. Currently, BUFHEADLEN is six, and the six words are:
Table 4.2: Buffer header data format.
Word #
Variable
Description
0
BUF_NDATA
Number of words in this buffer
1
BUF_MODNUM
Module number
2
BUF_FORMAT
Format descriptor = R 0x20T0
T: bits4-7 indicate channel 0-3 acquired waveforms
in 4x trace mode.
3
BUF_TIMEHI
Run start time, high word
4
BUF_TIMEMI
Run start time, middle word
5
BUF_TIMELO
Run start time, low word
Following the buffer header, the events are stored in sequential order. Each event starts out
with an event header of length EVENTHEADLEN. Currently, EVENTHEADLEN=3, and the
three words are:
Table 4.3: Event header data format.
Word #
Variable
Description
0
EVT_PATTERN
Hit pattern. Bit [15..0] = [gate pattern | hit pattern | status | read pattern]
1
EVT_TIMEHI
Event time, high word
2
EVT_TIMELO
Event time, low word