Feature Extraction Firmware-to-Firmware Interface


Draft  November 16, 2002, by Gerald Przybylski, Lawerence Berkeley national Laboratory
Revision or refinement (date?) by Christian Bohm, U of Sweden, Stockholm

Functional Description

Signals collected by photomultiplier tubes deep in the Antarctic ice at the south pole, are digitized by the main printed circuit board in the DOM (Digital Optical Module). The digital data is sent to the surface through a pair of wires.  Most of the signals (perhaps 99%) can be classified as single photoelectron (SPE) pulses.  Since the SPE pulses (as many as 97.5%) are from unavoidable noise  sources are very similar one to another, it should be possible to use a few parameters to describe the SPE waveform.  
.
For the DOMs the bandwidth load for data sent to the surface can be significantly reduced by extracting waveform parameters, and sending them to the surface (along with a time of arrival) instead of over a thousand bytes of data.  This form of data reduction at the place where data is collected allows the limited bandwidth of the data communications pair to handle all the data.  Some of these simple captured waveforms are sent to the surface to confirm the data quality matches expectation.

The feature extraction firmware moduleaccepts as input the stream of samples from the most sensitive channel of the Analog Transient Waveform Digitizer (ATWD) of theDOM.  The module, upon digesting the data, assignes a leading edge time with respect to the beginning of the sample vector. ).  The module also assigns an amplitude value.   If the ATWD waveform is found to fit expectation poorly, then it will be assumed to consist of multiple photoelectrons, so transmission of the in-tact waveform should be forced.   A multiple PE event may have exactly the shape of a single PE, but bigger.  SPE signals may overlap.  The capacity of the module to store SPE parameters may be exceeded.

The API

The API consists of  control lines and data busses.  

Input/Output
Name
Bus width
Input
Clock
1
Input
ATWD_Data
[9..0]
Input
Data_Available
1
Input
Datum_Transfer
1
Input
Initialize
1
Input
Threshold  (constant)
[3..0]
Input
T_Over_Threshold (constant)
[3..0]
Output
Status
[3..0]
Output
Time (vector two samples deep)
[9..0]
Output
Waveform_Parameter0 (vector two samples deep)
[7..0]
Output
Waveform_Parameter1 (vector two samples deep)
[7..0]

Clock rate equals the data transfer rate from the ATWD output FIFO.

The vector of ATWD_Data is 128 samples long.  The first and last samples, however, may be unreliable, and therefore may be discarded.
The last datum captured is the first one to be delivered to the firmware module.

Data_Available becomes true two clock cycles before the first ATWD_Data word appears at the input of the module.  During the first clock cycle latency, the gray code output of the ATWD is converted to binary form.  During the second clock cycle of latency, the pedestal value is subtracted from the converted datum.

Datum_Transfer, when asserted, discards the data present at Time, Waveform_Parameter0, and Waveform_Parameter1 output, replacing them with the next sample resident in internal storage.  

Initialize, when asserted, prepares the firmware module for the next waveform to be processed.  Any data saved from the previous waveform analyzed is destroyed.  

Threshold conveys the programmed pedestal value to the module.  If this value is zero, the module is free to calculate its own pedestal using information in the waveform.

T_Over_Threshold conveys the programmed minimum time over thresholod to the firmware module.  If zero, a built in algorhythm may be sued.

Status consists of the following information:
Bit
Information
0
Done
1
On or more SPE found
2
Force full waveform to be sent to surface
3
Clear if one SPE found, set if two SPEs found in waveform

Time is the number of samples from the beginning of the waveform that waveform begins, three bits of which are the interpolation between ATWD samples,  giving an ultimate time resolution of 3.125 ns.  (Provisional specification, November 16, 2002, gtp)  The first time presented at this output is the one nearest the beginning of the waveform.

Waveform_Parameter0 Two deep FIFO of waveform parameters

Waveform_Parameter1 Two deep FIFO of waveform parameters (if needed, provisional specification, November 16, 2002, gtp)

Definitions:

By definition, the beginning of the sampling vector is the first waveform sample taken after the trigger signal is applied to the ATWD

Unavoidable, non-physics PMT signals take two forms.  The photomultiplier tube photocathode  itself spontaneously emits photoelectrons which cause the usual cascade through the dynode chain and produce low amplitude pulses.   In addition, the small percentage of  40K (Potassium 40) atoms contained in the glass sphere encasing the PMT and the electronics decays, over time at a rate of about 200 or 300 per second.