This page describes the data written to disk by the S800 data acquisition system. The majority of modules use the CAMAC bus for readout, with the exception of the XLM modules which are housed in VME crates. The Electronics Diagram shows how the different modules are interconnected. The data is written in a series of 16-bit unsigned integers, subsequently referred to as
words. This format is suitable for the output of most of the modules presently used in the S800, and in the case where 32 bit integers are needed, the proper unpacking procedures will be given.
All data is written using the concept of “packets”. The format of a packet is:
|Length||Packet Tag||Packet Data|
Length: a count of the number of words in the packet, inclusive of the length word itself
Packet Tag: a predefined integer indicating the type of data found in the Packet Data
Packet Data: the data themselves. These can be data read from the modules or a sub packet. Sub packets have identical structure to main packets.
Using this format all data can be placed in nested packets, and coding decisions on how to unpack the Packet Data can be made by examination of the preceding Packet Tag. Packets (including sub packets) can also be skipped by jumping ahead Length words in the buffer.
The detectors installed in the S800 and the data to be read from them often changes with the differing requirements of each experiment. This in turn impacts the details of the data format, and requires the use of a version number in order to be backward compatible. Subsequent changes to the S800 data acquisition will increment the version number of the data format and new configurations will be reflected in new packet tags. Documentation for these changes will be given here, in links accessible from the following table. The current version of the data format is indicated with a star.