A PC-based data acquisition package for nuclear microbeam systems

A PC-based data acquisition package for nuclear microbeam systems

Nuclear Instruments and Methods in Physics Research B 89 (1994) 223-228 North-Holland NOMB Beam Interactions with Materials&Atoms A PC-based data a...

530KB Sizes 0 Downloads 149 Views

Nuclear Instruments and Methods in Physics Research B 89 (1994) 223-228 North-Holland

NOMB

Beam Interactions with Materials&Atoms

A PC-based data acquisition package for nuclear microbeam systems G.W. Grime *, M. Dawson University of Oxford Scanning Proton Microprobe Unit, Nuclear Physics Laboratory, Keble Road, Oxford, UK

This paper describes a hardware and software package that enables nuclear microprobe data to he collected with a minimum of complexity using a standard Personal Computer. The package comprises an external module containing ADCs for pulse height and x and y position together with pulse scalers for recording accumulated charge and dead time. Up to 8 detector signals are multiplexed into the ADC using peak detecting front-end modules SOthat no additional timing signals are required. The controlling software runs under Windows and allows the collection and display of spectra and 2D maps generated by setting energy windows on the spectra. Saving and playback of event-by-event (listmodel data is also possible. Using a DAC card in the PC, the system will control the beam position, allowing the generation of irregular scan patterns or the positioning of the beam using the mouse. Using a high performance PC, data throughput of up to 50 kHz is possible.

1. Introduction

A wide variety of solutions have been proposed or implemented to solve the problem of collecting and handling the large volume of data that can be generated by a scanning nuclear microbeam experiment [l]. The system described in this paper was developed to exploit the increasing power of the IBM compatible Personal Computers using concepts developed and proved in the VAX/VME based data acquisition system that has operated in Oxford since 1988 [2]. The signals available from a nuclear microbeam experiment include amplitude modulated pulses from several X-ray or particle detectors, DC voltage levels to indicate the instantaneous x-y position of the beam and logic pulses from a charge digitiser. These signals must be read and sorted into spectra elemental maps, preferably in real time. In addition it is necessary to correct for dead time from both the acquisition system and individual detectors and it would also be desirable to allow the computer to control the beam position to allow the generation of irregular scan patterns and precise beam positioning using the mouse. In view of these requirements it was clear that the hardware interface could not be realised using standard PC interface boards and an external module containing the ADCs and scalers was developed. This connects to the PC via a standard 48-bit digital input/ output card. For scan voltage generation a standard DAC card is used in the PC. The hardware and software used in this system will be described separately.

* Corresponding author.

2. Hardware Figs. la and lb show the schematic layout of the interface unit. This comprises two main sections: (a) 8 channel multiplexed 1Zbit ADC with individual peak sensing modules which provide timing signals to start a conversion cycle and also hold the peak value of the pulse voltage together with two S-bit ADCs to digitise x and y scan voltages and (b) the charge scaler and dead-time unit. The correct operational sequence of these units is controlled by a series of logic units and delays.

2.1. Pulse handling and AD0 Each of the 8 pulse input channels consists of a peak hold and trigger module (PI-IT). This module consists of a diode/capacitor peak hold circuit together with high speed comparators that generate a logical trigger signal when a pulse arrives (input voltage above a preset threshold). The PHTs also contain reset circuitry to discharge the peak hold capacitor when a RESET signal is received from the host computer. When a pulse arrives from a detector, the trigger signal from the PHT is passed to a priority encoder that generates a 3 bit channel address for this signal. This address is used to switch the peak voltage from the PHT onto the input of a 12 bit 1 pS conversion time ADC via an 8 channel analogue multiplexer. The trigger signal is also passed to the logic unit, which sets the BUSY signal and initiates a series of delays that allow the pulse to peak and the multiplexer to settle

0168-583X/94/$07.00 0 1994 - Elsevier Science B.V. All rights reserved SSDI 0168-583X(93lE0820-7

VI. X-BAY EMISSION

224

G. W. Grime, M. Dawson /Nucl.

In&. and Meth. in Phys. Res. B 89 (1994) 223-228

c

(INO>-

PEAK HOLD

ENERGY

-

andTRIGGER $_

e-

MPX

F--D

I *

-c

1%BIT At%

5;+

I

-

I

I

w

c

I

TRIGGER .

-

RESET

;:-

TIMING AND CCNTROL LOGIC

l

&_+

AOC ADDRESS ENCODER

!!I v)-

RESET .

. .

-

X

c



Y

32-BIT SCALER CHARGE PULSES

8 BIT COUNTER DATA 32-BIT SCALER SYSTEM LIVE TIME

32-BIT SCALER LIVE 0 LIVE TIME

32-BIT SCALER (LIVE 1 LIVE TIME)

_

-t.

lb) Fig. 1. (a) Outline

diagram

of the hardware

interface collection

for the PC based data acquisition and dead time correction system.

system.

(b) Outline

diagram

of the charge

G. W. Grime, M. Dawson/Nucl. Instr. and Meth. in Phys. Res. B 89 (1994) 223-228

before starting the ADC conversion. The conversions of the x and y ADCs are also started. At the end of the conversion cycle on all ADCs, the digitised values are passed to an output buffer and a trigger signal is set to indicate to the host computer that an event is ready. The data is presented to the computer as a 3-bit detector address, a 1Zbit energy value and two S-bit bytes for x and y position. After processing the event, the host computer sends a RESET signal to the interface unit. This clears the PHT modules and resets the BUSY signal so that the system is ready to receive another event. The control logic ensures that the system cannot be reset until all inputs are below the threshold. This is to avoid generating spurious triggers from the trailing edges of pulses on non-active channels. 2.2. Charge scaling and dead-time correction The charge scaling and dead-time correction module is shown schematically in Fig. lb. This unit consists of five 32-bit scalers, SO to S4. Pulses from the charge digitiser are counted in SO. Using a sensitivity of lo-l4 C per pulse, this gives a maximum charge collection of approximately 42 PC. Dead time in the system arises from two sources: (a) the delay in sensing and digitising the signals and software processing the digitised data and (b) any external delays in the detector electronics for pile-up rejection, pulse processing, etc. The first, internal source of dead time is accurately represented by the BUSY signal that is set by the incoming signal and reset by the software after processing. External dead time can be measured by signals from the detector electronics if necessary. The dead-time signals are used to gate a 10 MHz clock that is counted in a set of 32-bit counters Sl-S4, where Sl accumulates total ungated live time, S2 accumulates system live time (gated by the BUSY signal) and S3 and S4 accumulate live time on two external channels (gated by BUSY and either of two busy signals from external detector electronics). The live charge on any channel is then given by SO X Sn/Sl, where n is 2 for internal dead time and 3 or 4 for the external channels. The maximum run time before the scalers recycle is 0.1 t.t.SX 100 X 232 or about 12 hours. The five 32-bit counters are formed from twenty S-bit sub-units that are attached to a common data bus, so that data can be read sequentially in S-bit bytes via the DIO port by selecting the address of each sub-unit. A single ZERO signal from the computer is used to reset all scalers at the start of a run. 2.3. Controlling the beam position Voltages to control the x and y beam positions are generated using a standard commercial 12-bit digital-

225

to-analogue converter (DAC) plug-in card (although the voltages are generated with S-bit precision). An external relay unit senses a logic level from the DAC card to select either internally generated scan voltages or voltages from an external scan generator. When the system is using internal scanning, the information from the x and y ADCs is ignored and the currently active DAC data is used to give the beam co-ordinates.

3. Sofhvare The hardware interface is controlled by software running on the host PC. In order to give a consistent user interface and exploit the advanced features of the 80386/80486 series of processors, the code runs within the Microsoft Windows environment and is written in C with critical procedures coded directly in assembler. The PC is responsible for reading, processing and storing the data together with providing the operator interface - control of the acquisition, display of spectra and elemental maps etc. Since a single processor is used, rather than the distributed processing arrangement used in the original system, this results in suspension of data acquisition during screen updates or i/o operations, but with current fast processors and peripherals the loss of data in normal operation is minimal and is accounted for in the system dead time. 3.1. Data collection and sorting Data collection is carried out by polling the trigger signal from the interface unit in a loop that runs whenever the PC processor is not busy on other tasks. When an event is detected, the data is read and sorted into spectra and elemental maps. Memory for the

Table 1 Experimental Fig. 3

details and results for the spectra shown in

Proton energy Measured beam charge Run time

Detector area [mm’] Detector distance (mm) Angle to beam [deg] Count rate [Hz] Measured live charge [&I Au film thickness (RBS) Au cont. using meas. charge Q factor (from RBS) Corrected live charge [&I Au cont. using corr. charge

3 MeV 0.1 uc 600s PIXE

RBS

70 25 45 1500 0.038

237 54 25 300 0.056 2.35 pm 0.42 0.023 -

40.6% _ 0.016 97.3%

VI. X-RAY EMISSION

226

G. W. Grime, M. Dawson / Nucl. Instr. and Meth. in Phys. Res. B 89 (1994) 223-228

energy spectra is arranged as 8 contiguous 2048 X 4 byte blocks (total 64kb). When the energy word is read, the word is left shifted by 1 bit to reduce the number of channels to 2048. Because the channel address forms the three high order bits of the energy word, the full energy word can then be used to index into the energy spectra without explicit channel sorting. On-line elemental maps are created as dynamically allocated blocks of 256 X 256 X 2 byte (128kb) blocks of memory. The theoretical maximum number of maps that can be defined is limited by the available memory,

though because of the virtual memory capability of Windows, this is not a serious limitation, and at present the number of maps is limited to 64 by the size of internal storage for map properties, etc. When a sort is defined, the base address of the memory block is stored in an 8 x 2048 entry sort table for each energy channel that the sort refers to, otherwise the sort table entry is zero. Thus for the next step in the sorting sequence the energy word is used to index into the sort table and if a sort address is defined, the x and y bytes are read and the 16 bit xy word is used to index into

d

SI, PIx2

M; 51

S.PIZ-CZ

M;6

Fig. 2. Elemental maps of the Si and S distribution in cells of a freshwater diatom, scan size 500 km. (a), (b) using a raster scan of the full area; (c), (d) using selected scanning of the cells. Data collection time for both maps 300 s.

G. U! Grime, M. Dawson/Nucl. Instr. and Meth. in Phys. Rex B 89 (1994) 223-228

221

the elemental map array to locate the pixel to be incremented. This sorting procedure requires few instructions and is coded in assembler language to optimise the speed. As a further option, data can be stored in list mode as a sequence of energy-x-y triplets. List mode files can be replayed using the same software so that additional elemental maps or energy spectra of selected areas on the map can be generated.

patterns, used for the efficient scanning of uneven objects can be generated either by drawing the required shape using the mouse or by using an existing elemental map as a template [5]. The beam is stepped to the next pixel after a preset number of 10 $S pulses, charge digitiser pulses or data events. The DAC facility also allows point analysis to be carried out anywhere on a map using the mouse to position the beam accurately.

3.2. Scan pattern generation

3.3. Operator interjface

Scan patterns are stored as a list of pixel coordinates which the beam steps through sequentially until a marker value is reached at which point the scan direction is reversed. In this way either square or irregular scan patterns can be generated. Irregular

Each data object (energy spectrum, elemental map) is created as a separate window that can be sized and positioned on the display screen using standard Windows operations. These are updated at intervals to give a current display of the incoming data. In addition, the

lo4 12 lo” lOI -

_.

-

loa 10.0

5.0

ADC2: PIXE spectrum

15.0

(keV)

25.0

20.0

Detector: LSS_PIXE d=25.0mn Filter:Be

2500

2000

1500

1000

500

0 2500.0

ADC3: RBS spectrum(keV)

2750.0

3000.0 Detector:BIG_RBS

Fig. 3. PIXE and RBS energy spectra of a thin gold foil collected using the PC based data acquisition system. VI. X-RAY EMISSION

G. UCGrime, M. Dawson/Nucl. Instr. and Meth. in Phys. Res. B 89 (1994) 223-228

228

data from the charge scalers is used to give an instantaneous display of beam current, accumulated charge and dead-time. This system records full details of the experimental conditions (sample, detectors, beam parameters, etc.) and there are many features to provide a convenient and flexible operating environment such

as a library of X-ray energies to allow instantaneous identification of peaks in PIXE spectra. Data is saved in a compressed format using the scheme described in ref. [2] based on ref. [4] which exploits the fact that elemental maps and spectra often contain sequences of zeroes or low numbers. This is very efficient for sparse elemental maps and is an important factor in conserving disk space. At present the collected data is processed by converting the files from the PC format to the standard VAX format used at Oxford and then processing the energy spectra using SPEX, a VAX shell for PIXAN and RUMP [2,3].

4. Performance 4.1. Data rate

The data throughput of the system is determined by the delays in the hardware and the software processing time. For normal operation the hardware delay between the trigger signal and the initiation of ADC conversion is set so that the time from pulse to trigger is typically 6-10 p,S. The software processing time depends on the speed of the computer and with a 66 MHz 80486 computer a data throughput of over 50 kHz using a fixed frequency pulser on a single channel has been observed. When using random pulses on more than one channel the throughput can be degraded by pulse overlaps.

and the charge normalisation. The PIXE detector is a Link Systems 80 mm2 Si-Li and pulse processor. This has a substantial processing time (typically lo-20 $5) between an X-ray entering the sensitive volume and the pulse appearing at the output, so the dead-time on the PIXE channel is significantly higher than the system dead time, especially at high PIXE count rates. The charge on the sample is measured simply by collecting the current from the sample (or a Faraday cup behind thin specimens) and converting this to pulses in a sensitive charge digitiser. Because of secondary electron emission and other effects, the measured charge is not accurate and the RBS signal is used to normalise the charge. Assuming that the detectors are well characterised this system can provide accurate charge normalisation together with determining the sample matrix composition for thick target PIXE corrections [5]. These results show that although the measured charge was inaccurate by a factor of 2, RBS normalisation taking into account the differences in dead time in the two detectors was able to provide both an accurate value of charge and the true value of the sample thickness to allow the gold concentration to be determined with an error of 3%.

5. Conclusion A PC-based data acquisition system for ion microbeam experiments has been described. This incorporates all the features required for collecting, sorting and storing energy spectra and elemental maps into a single package. Analysis of a pure gold foil demonstrates that the charge collection and dead-time correction scheme performs well.

4.2. Scan pattern generation Acknowledgement

Figs. 2a, 2b show a 500 pm Si and S map of a number of cells of a freshwater diatom obtained using a raster scan of the full square area. In figs. 2c, 2d the cells were outlined and the map was accumulated for the same period. The increase in the significance of the data for the selected objects is obvious. This feature is proving features sis.

to be of great value in the assessment of on a sample prior to higher resolution analy-

4.3. Charge and dead-time correction In order to verify the dead-time and charge correction procedure a thin gold foil was analysed using PIXE and simultaneous RBS to give the foil thickness

The development of this system was supported Oxford Microbeams Ltd, Oxford U.K.

by

References

HI N.E.O. Liivestam, Nucl. Instr. and Meth. B 77 (1993) 71. Dl G.W. Grime, M. Dawson, M. Marsh, I.C. McArthur and F. Watt, Nucl. Instr. and Meth. B 131 G.W. Grime and F. Watt, Nucl. (1993) 495. [41 L. Zolnai and S. Szilagyi, Nucl. (1986) 360. El G.W. Grime and F. Watt, Nucl. (1988) 300.

54 (1991) 52. Instr. and Meth. B 75 Instr. and Meth. B 14 Instr. and Meth. B 30