ADCM is the compact and universal Digital Pulse Processing system for nuclear physics experiments.

User Guide

ADCM User manual


For software installation please proceed to ADCM Wiki



Supported Hardware


Theory of Operation

ADCM has the universal Digital Pulse Processing architecture. The hardware data acquisition board ADCM16-LTC utilizes high speed ADC for sampling of input signals. First level trigger logic performs zero suppression by threshold crossing method with hysteresis. Second level trigger logic (when enabled) measures the arrival time of input signals in coarse scale and the coincidence logic produce match output signal for data taking start.

The acquired ADC samples of input pulses are analyzed by the software. Baseline is subtracted and the charge, the sum of samples is measured.

For time measurements, the digitized pulse is fed through digital FIR filter that performs tail cancellation and shapes the pulse to gaussian like form. The search for peaks is run and the pile-up rejector determines the areas of multiple unresolvable pulses to be suppressed. The approximate arrival time of pulses is measured by weighting of samples near pulse peak. This method relatively fast and runs on-line at speed of million pulses per second. However, the accuracy and DNL of this time measurement by weighting is far from optimal and depends largely on the shape of filtered signal. This pulse coarse time is used for third level trigger with software coincidence matching of pulse arrival time.

Precision Time Measurement

Unlike most commercial digital pulse processors, ADCM uses general purpose CPU to improve time measurement resolution and does it in real-time. The use of FGPA for this task is not optimal today due to iterative nature of the algorithm and high resource usage.

Thoroughly optimized software pulse processor is designed for extra precision measurements. The software is capable of 100,000 pulses per second when running on 3 GHz CPU. ADCM pulse processor utilize real-time least square minimization method for gaussian-like pulse parameter evaluation. This method is widely used in curve fitting.

The time resolution achieved by software pulse reconstruction algorithm is very close to theoretical limit and does not change with light variations of signal shape. Other methods, including parabolic approximation, do not give enough resolution and have bad DNL (differential nonlinearity) in comparison to iterative minimization method. Only curve fitting method gives sound result when the signal to noise ratio drops under 5%. This is also the case when working with non-monotonic, structured signals of BGO of NaI crystal gamma detectors - weighting and parabolic approximation methods do not work.

ADCM Software

ADCM Software Screenshots

We have developed the software for complex signal analysis including charge spectrometry and Time-Of-Flight measurements. One of the key features is precision sub-sample timing of signals using a variant of digital constant fraction discriminator.

The signal parameters are presented in live histograms and stored in data file. Histograms are shown for main measured parameters: amplitude (integral), time difference.

The software package has two parts: the lowlevel kernel driver and GUI control panel. We have a bootable LiveCD and LiveUSB flashdrive for no-harddisk installations.

Requirements: CPU 2.0GHz, 1024MB RAM, CD/DVD drive (for LiveCD) or USB port (for LiveUSB), PCI Express slot.

Data File Format