Nuclear Instruments North-Holland
and Methods
in Physics
Research
B 85 (1994) 693-698
RlOMl B
Beam Interactions with Materials 8 Atoms
A data acquisition system for scanning microbeam analysis + D.H. Morse * Sandia National Laboratories,
Livermore,
CA 94551-0969,
USA
A computer controlled data acquisition and scanning system has been designed with specific emphasis on efficient collection of scanning transmission ion microscopy (STIM) and ion microtomography (IMT) data. The system has also been used for scanning proton induced X-ray emission (PIXE), proton induced gamma emission (PIGE), and ion backscattering spectrometry (IBS). Scanning, data storage, and display functions are all performed under software control by a workstation, resulting in greater flexibility, speed and convenience than systems that are more hardware-based. A variety of scan formats and a choice of electrostatic or mechanical rastering are offered. Scanning arrays are nearly unlimited in size. Scan parameters and other information are conveniently entered and stored using a point-and-click menu system. Data can be collected simultaneously from one or more sources at rates exceeding 30000 events per second
1. Introduction
A computer system for scanning microbeam analysis must be adaptable to a variety of hardware and experimental configurations. The system described in this paper has been developed by the Ion Micro Analysis Group (IMAG), a joint project of Sandia National Laboratories and Lawrence Livermore National Laboratories, over a period of six years [1,2]. We originally built the system for scanning transmission ion microscopy @TIM) and ion microtomography (IMT) measurements, which require high data acquisition rates and large data arrays. We later modified the program to include scanning particle induced X-ray emission (PIXE), particle induced gamma emission (PIGE), and ion backscattering spectrometry (IBS). Although other microbeam laboratories have developed data acquisition systems [3,4], we feel that ours offers a unique combination of features including the following: (1) Either mechanical or electrostatic rastering may be selected. Electrostatic rastering is faster, which is especially important when a large number of pixels is being scanned as is the case for STIM or IMT. Mechanical rastering is sometimes necessary to scan specimens that are too large to be scanned electrostatically. (2) Scanning options include single-point, line, 2D, fan and cone scans. Fan rastering collects tomographic data slice by slice, while cone rastering collects tomo+ Work supported by US Department of Energy under contract no. DE-AC04-76POO789. * Phone + 1 510 294 2637, fax + 1 510 294 3231.
0168-583X/94/$07.00 0 1994 - Elsevier SSDI 0168-583X(93)E0701-H
Science
SNL
graphic data for all slices in a projection before starting the next one. (3) Scan sizes have few limits because scanning is under software control. We have scanned arrays larger than 1000 by 1000 pixels. (4) Multiple analog-to-digital converters @DC’s) can simultaneously acquire data using more than one analysis technique, for example, PIXE and RBS. A time-to-digital converter (TDC) has also been used for time-of-flight proton energy loss analysis. (5) Data collection rates of more than 30000 events per second have been observed with our system ample speed even for two or three ADC’s. Recent increases in computer processing speeds could enhance this rate significantly. (6) Data are collected in list mode which preserves the maximum spectral information. An image of the raw data events is stored for post-processing and as an archive. (7) Parameters are entered using a point-and-click menu system for speed and convenience. All parameters are stored in a file which is used by acquisition and post-processing programs. The parameter file also serves as a log of experimental conditions. (8) Real time two-dimensional displays of energy loss or elemental maps provide the user with feedback of the scanned image size and resolution. A histogram display provides further spectral information. (9) The data acquisition system is constructed mainly from commercially available modules, requiring a minimum of custom-built hardware. The heart of the data acquisition system is a Sun@ workstation which collects data from a CAMAC crate
B.V. All rights reserved
XII. ACCELERATORS/BEAMS
694
D.H. Morse / Duct. I&r. and h&h. in Phys. Res. B 85 (19941 693-698
for immediate display and storage. Scanning is controlled by an IBM@ PC compatible. Separating the scanning and acquisition functions allows us to take advantage of the display and computational abilities of the workstation, the real time capability and the availability of interface boards for the PC, and the added speed of multiple processors. The software is written as three separate programs. A parameter entry program and the data acquisition program residing on the workstation are written using standard Sun C with high-level graphics calls to the Xview ToolkitTM included with the Sun operating system. A third program written in Borland Turbo CTM on the PC controls scanning.
2. Scanning considerations There are two methods generally used to scan a beam and record its position. One method is to scan randomly in the horizontal and vertical directions at a constant rate or a rate determined by beam current [5] and digitize the scan position whenever a data event occurs. The second method is to step the beam in sequential increments, dwelling at each pixel for a pre-determined interval of time, charge or number of data events. We chose the second method for several reasons. First, it is possible to have exactly the same number of events per pixel and consequently the same counting statistics for all pixels, which is an advantage for STIM and IMT analysis. Second, the amount of data that needs to be stored and the time required to store it is reduced, because position is dependant on sequence and can be encoded concisely, as will be discussed in the hardware section below. Third, the
maximum scanning array size is determined only by the physical limits of the scanning system, not by the ability to digitize the scan position. Fourth, mechanical scanning is better adapted to sequential scanning. Finally, since the beam is not moving during acquisition, spatial resolution should not be degraded by motion of the beam. On the other hand, there are some advantages to scanning the beam continuously. For example, fragile specimens are less susceptible to thermal damage since the beam energy is more evenly distributed with time. In addition, it is easier to track any dimensional changes in the specimen as a function of time. It is also possible to observe data being collected uniformty over the entire specimen and to terminate data acquisition at any time. Sequential scanning can be made to approximate random scanning by making multiple passes over the entire scanned area with relatively short dwell times. We chose to use electrostatic rather than magnetic scanning because settling times are shorter for high voltage amplifiers than for the constant current supplies we were able to obtain. Also, electrostatic scanning plates are generally small and their fields easily shielded, making them more suitable for post-lens scanning. Magnetic scanning coils do have the advantage of being more accessible since they can be mounted outside the vacuum system.
3. Hardware description A simplified hardware schematic is shown in Fig. 1. A LeCroy model 3512 ADC sends each digitized pulse through a model 3587 Data Router and then across a
,BM Fc C’OMPATIBLE COMPCIIER
t ETHERNEFNElWOFiK
Fig. 1. Simplified schematic of the data acquisition system configured to collect STIM data using electrostatic scanning. An IBM PC controls scanning, CAMAC hardware digitizes and buffers the incoming data, and a Sun workstation displays, processes and stores the data.
D.H. Morse / Nucl. Instr. and Meth. in Phys. Rex B 85 (1994) 693-698
front panel bus to four model MM8206A, 16 bit by 64k, List Mode Memories configured as a circular buffer. All four memories are initially cleared and the first memory is enabled to read data from the ADC. When each memory is filled, it automatically enables the next memory. The workstation senses that a memory has been filled and immediately reads it by means of a CAMAC block transfer. A simple up/down counter (not shown) keeps track of the number of memories that are full and disables data acquisition preventing any data from being over-written. A minimum of three buffers are necessary for uninterrupted data collection, ensuring that while one buffer is being read and one buffer is being filled, there will always be an empty buffer ready to be enabled. A LeCroy model 4204 TDC may be substituted for the ADC for time of flight analysis. Multiple ADCs can be implemented using software configuration to allocate up to 4096 channels among ADc’s. An IBM PC compatible computer is used to scan the beam and gate the ADC between pixels. A programmable counter board controls the dwell time at each pixel by counting a pre-set number of data pulses, integrator pulses or clock pulses. The outputs of a 12-bit digital to analog board (DAC) are applied to Trek bipolar, high frequency response (50 us maximum settling time), high voltage (_t4 kV) amplifiers which are connected to a set of four deflection plates. Two amplifiers could also be used with two grounded plates for half the maximum deflection. Maximum scan size
695
and pixel resolution are both a function of the beam energy and species, deflection plate geometry, DAC output voltage and resolution, and amplifier gain. Either stepping motors or DC motors are used to position the target in the vertical, horizontal and rotational axes. We have used stepping motor powered manipulators where high speed is required and internally mounted DC motor driven manipulators where precision is more important. Four output lines are connected to the four most significant data bits of the CAMAC memory bus and are used to overlay information that can later be decoded into pixel location. Data bit 16 is toggled after each change in X position, bit 15 is toggled after each change in Y position, bit 14 is toggled after each change in rotation, and bit 13 is set only when scanning is completed. The remaining 12 bits are used for pulse height data.
4. Parameter entry program The parameter entry program (Fig. 2) is a convenient means of entering and storing all of the relevant parameters of each experiment. An advantage of separating the parameter entry from the data acquisition routine is that new parameter sets may be generated even while other data is being acquired. Starting the program recalls either a specified parameter set or, by default, the previous parameter set. Typically only a few parameters need to be changed during a series of
Fig. 2. Example of the program used to display and modify data acquisition parameter files. Pop-up windows, shown at the top of the display are used to group similar parameters. Buttons with a triangular symbol (e.g. next to the word “CONE”) activate pull-down menus. Scan and pixel sizes are automatically rounded to the nearest possible value and array sizes are automatically calculated. XII. ACCELERATORS/BEAMS
696
D.H. Morse /Nucl. Instr. and Meth. in Phys. Res. B 85 (1994) 693-698
Fig. 3. Acquisition program display for an ion microtomography the accumulated histogram, a 2D projection of the medians
experiments, and may be quickly edited by selecting them with the mouse. Some parameters are entered from the keyboard, others from pull-down menus, and others - especially those that are seldom changed are located on one of four pop-up menus used to group similar functions and reduce clutter. The main menu is used primarily to enter scanning and display options.
scan of a multi-layered
spherical
target.
Separate
windows
display
in the latest rotational view and a sinogram of slice number 20.
The four pop-up menus are used to enter sample identification, beam parameters, hardware configuration, and miscellaneous information. Exiting the main menu causes the program to store the existing parameters to a file (a warning is given before overwriting an existing file). Parameter files serve as a permanent log of all experimental conditions of each data set, are
Fig. 4. Acquisition program display for a 2D PIXE scan of a composite material which contains silicon carbide fibers in a titanium matrix. The lighter area indicates titanium X-rays (channels 200 to 2.50) and the darker areas indicate silicon carbide.
D. H. Morse / Nucl. Instr. and Meth. in Phys. Res. B 85 (1994) 693-698
used by the data acquisition program, and can be read and amended by data analysis programs. Parameter files are written as pairs of identifying keywords and parameter values in the following format: - keyword1 - keyword2
parameter1 parameter2
Because each parameter is associated to a keyword, they may appear in any order. Unused parameters are ignored and missing parameters may be replaced by default values. This makes it possible to modify the list of recognized parameters without editing every previous parameter file. The entire parameter list may be easily read and written by any program simply by adding an include statement and two function calls.
5. Data acquisition program An example of the data acquisition display for IMT data is shown in Fig. 3. The data acquisition program is responsible for reading each CAMAC memory as soon as it is full, sorting the data by pixel, processing the data for each pixel, displaying each pixel in one or more formats, and storing the data to disk. Maximum average data throughput is limited to approximately 30000 counts per second by our workstation which is rated at approximately 18 million instructions per seeond. (The actual ma~mum count rate in our system is limited to about 30000 counts per second by non-linearity in the pre-amplifier due to overload at high count rates [6].) Newer computers are two to three times as fast and would presumably increase the data rates proportionately. Data is normally read from CAMAC memory, but may alternatively be read from disk, making it possible to re-process or recover old data. Mean or median pixel values may be calculated for STIM or IMT data and displayed as a color in the projection display window according to one of several available color conversion tables. In the case of PIXE or IBS (Fig. 41, a histogram is written to disk for each pixel. Histogram data of two-dimensional scans are displayed by selecting a “region of interest” energy window and plotting a color that is based on the number of counts within that window. An accumulated histogram for the entire data set is always displayed and is updated whenever a buffer is read. The histogram may be displayed on a linear or logarithmic scale and may be zeroed at any time. A sinogram may also be stored for IMT data. The sinogram is created by displaying one slice (the slice number is selectable) for each projection. The sinogram is displayed with horizontal position in the horizontal axis, projection angle in the vertical axis and energy loss displayed as a color. The data displays described here were intended
697
mainly as an indication that the correct portion of the sample is being analyzed and that the spectral data is valid. Post-analysis programs [7] are intended to be used for further processing of the data. At the end of the experiment the accumulated histogram is stored to a file. Elapsed time and total integrator counts are also automatically stored in the parameter file.
6. Scanning program The scanning software is relatively simple and operates with almost no user intervention. The scanning program waits for a start signal from the CAMAC digital output port, reads the scanning parameters across an Ethernet connection from a file which is remotely mounted on the Sun, and then begins the rastering sequence. The PC moves the sample to the correct starting position, initializes the counter to preset the dwell per pixel, and enters a series of scanning loops. During the counting cycle for each pixel the counter is enabled by a software command, opens the ADC gate to allow pulses to be digitized, and then closes the gate when the pre-set count is reached. When the software senses that the count is complete, it changes the DAC settings and/or sample position and updates the state of the four output signals to reflect the change in pixel position. This process repeats until the last pixel has been scanned, at which time the “end of run” bit is set and the PC waits for the next “start” signal. Several scanning motion routines have been written to include 2D and 3D scans with either mechanical or electrostatic scanning. Total dead time spent moving between pixels in the electrostatic scanning mode is less than 50 p,s which is important for STIM or IMT measurements which may require millions of pixels.
7. Conclusion The data acquisition and spanning system described here is fast, has a number of flexible scanning modes for both mechanical and electrostatic rastering, and is capable of recording data simultaneously from multiple ADCs or a TDC. Data is acquired in list mode and processed in software which can be easily modified by the user. Data and parameter sets can be automatically archived. The system can be easily assembled, mainly from commercially available equipment and takes advantage of the high resolution display, speed and convenience of a modern workstation. Although the software described is complete, additional features will undoubtedly be added and minor improvements made. XII. ACCELE~TORS/BEAMS
698
D.H. Morse /Nucl. Instr. and Meth. in Phys. Res. B 85 (1994) 693-698
[21 A.E. Pontau,
Acknowledgements
It is a pleasure to acknowledge the programming assistance of A.A. Ver Berkmoes and B.V. Hess and the suggestions, encouragement and critical review of A.E. Pontau, A.J. Antolak, G.S. Bench and D.W. Heikkinen.
References [l] D.W. Heikkinen, and A.E. Pontau,
G.S. Bench, A.J. Antolak, D.H. Morse, Nucl. Instr. and Meth. B 77 (1993) 45.
A.J. Antolak and D.H. Morse, Nucl. Instr. and Meth. B 45 (1990) 503. J. Microscopy 117 (1979) [31G.J.F. Legge and I. Hammond, 201. [41K.G. Malmqvist et al., Nucl. Instr. and Meth. B 40/41 (1989) 685. El G.W. Grime, J. Takacs and F. Watt, Nucl. Instr. and Meth. B 3 (1984) 589. (Wi[61 G.F. Knoll, Radiation Detection and Measurement ley, 1979) p. 652. (IBA-11, [71A. Antolak, G. Bench et al., these Proceedings Balatonfiired, Hungary, 1993) Nucl. Instr. and Meth. B 85 (1994) 597.