STIX Bulk Science Data
Onboard data handling
The design driver for the IDPU’s X-ray data processing is the need to reconcile an input stream of up to 800,000 photons per second (∼20 Mbits/sec) to a telemetry budget of 700 bits per second. This is done by combining rapid FPGA sorting and ac- cumulation of individual events with slower application software that processes the accumulator contents. Figure 17 indicates the overall data flow. The goal of the FPGA’s prompt processing is to sort and sum the input photon stream into accumulators on the basis of their detector ID, pixel ID and detected energy in keV. Application software running on a LEON3 processor then proceeds along three parallel paths:
- a primary path that handles the X-ray imaging and spectroscopy data;
- a quick-look (QL) path that supports the generation of light curves and other products used to monitor the performance of the instrument and to provide a continuous overview of solar activity;
- a calibration path that acquires data needed to establish the energy calibration of each detector/pixel.
From a digital perspective, the X-ray input to this task consists of an asynchronous stream of 24-bit ‘photon words’, each of which corresponds to a single detected X-ray, specified by the detector ID (5 bits), pixel ID (4 bits), 3 spare bits and the 12-bit ADC output which is a linear representation of the detected photon energy. The first step in handling each photon word is to correct the ADC output for a known weak temperature dependence. This correction is implemented by applying a small detector-, pixel- and temperature-dependent offset (configurable) to the 12-bit ADC output for each photon. The modified ADC values are used for subsequent processing where they can be considered to cor- respond to a common, predetermined reference temperature. Since it is neither practical nor necessary for the primary and QL paths to retain the full 12-bit energy resolution, the next pro- cessing step is to rebin the detected energy for each photon into one of 32 broader ’science energy channels’. This is done by the FPGA with a detector- and pixel-dependent, programmable look-up table. The rebinned energy provides 30 energy channels between 4 and 150 keV plus two integral channels for energies above and below these limits. An important rebinning feature is that despite potentially different calibrations, the boundaries that separate the science energy bins are matched in terms of keV among all detectors and pixels. Also, rather than having equal widths, the science energy bin widths are optimized for typical flare energy spectra, with a 1 keV width at lower energies, broad- ening gradually at higher energies (Figure 1). Simulations have shown that energy binning on this scale does not significantly degrade spectroscopic analyses.
Primary data path
In the primary data path, each photon word increments one of 12288 double-buffered accumulators (32 energies × 32 detectors × 12 pixels). Accumulation continues for an integral number of 0.1 s periods until one of two conditions is met: 1) a preset min- imum integration time has been exceeded AND a preset count threshold (within a specified energy range) has also been ex- ceeded; OR 2) a preset maximum integration time is reached. The use of programmable, adaptive integration times enables subsequent data handling to be efficient during solar quiet pe- riods while still supporting high time-resolution during flares. With suitable parameter selection, the option of fixed integration times is also available. As each integration is completed, the FPGA transfers the contents of the accumulators into a time-tagged rotating buffer. The contents of the rotating buffer are subsequently compacted (partly by eliminating accumulators with zero counts) and stored into 16 GBytes of flash memory. This ‘archive buffer’ can be retained on board for several weeks and provides the input for all subsequent primary analyses. It is important to note that de- spite the foregoing energy and time binning, the archived data can be generally considered scientifically lossless in the sense that higher time- or energy-resolution could not be exploited for statistically significant solar analysis. In parallel with the photon word handling, one of 16 trigger accumulators is incremented each time a trigger is generated by a ‘not-busy’ detector. Trigger counters accumulate for the same time intervals as the event counters and their output is carried along with event counts in subsequent data handling and analysis steps. Photons that are detected in more than one pixel in a detec- tor pair generate a single trigger but are otherwise excluded from subsequent analysis and do not generate a photon event word. The dead time is digitally the same for all triggers (nominally 12.5 microseconds). Therefore the trigger rate alone is sufficient to directly measure the live time for the corresponding detector pair. An important corollary is that all pixels in a single detector share a common live time. This greatly eases the interpretation of intra-detector count rate comparisons which form the basis for imaging.
Quick-look data path
As with the primary data path, the QL data path also begins by feeding the photon words into a (separate) set of 12288 double- buffered accumulators. In this case, the accumulation intervals are fixed (4 s nominal). In most cases the calculation of QL products requires only summing various combinations of the QL accumulator contents. In five cases detailed in subsequent sub- sections (Also see Table 3), more extensive calculations are re- quired. Except as noted, the calculation of QL products must be completed within the 4 s QL-integration time.