Académique Documents
Professionnel Documents
Culture Documents
Citation: Journal of Vacuum Science & Technology B 28, C4E39 (2010); doi: 10.1116/1.3374719
View online: http://dx.doi.org/10.1116/1.3374719
View Table of Contents: http://scitation.aip.org/content/avs/journal/jvstb/28/3?ver=pdfcov
Published by the AVS: Science & Technology of Materials, Interfaces, and Processing
Redistribution subject to AVS license or copyright; see http://scitation.aip.org/termsconditions. Download to IP: 139.124.18.99 On: Tue, 12 Nov 2013 14:38:19
Open source scanning probe microscopy control software package GXSM
Percy Zahla兲
Center for Functional Nanomaterials, Brookhaven National Laboratory, 11973 Upton,
New York 11973-5000
Thorsten Wagner
Atomic Physics and Surface Science Division, Institute of Experimental Physics, Johannes Kepler University
Linz, Altenbergerstr. 69, A-4040 Linz, Austria
Rolf Möller
Department of Physics, University of Duisburg-Essen, Lotharstrasse 1, 47048 Duisburg, Germany
Andreas Klust
Massachusetts Institute of Technology, 77 Massachusetts Avenue, Cambridge, MA 02139–4307
共Received 28 October 2009; accepted 1 March 2010; published 20 May 2010兲
GXSM is a full featured and modern scanning probe microscopy 共SPM兲 software. It can be used for
powerful multidimensional image/data processing, analysis, and visualization. Connected to an
instrument, it is operating many different flavors of SPM, e.g., scanning tunneling microscopy and
atomic force microscopy or, in general, two-dimensional multichannel data acquisition instruments.
The GXSM core can handle different data types, e.g., integer and floating point numbers. An easily
extendable plug-in architecture provides many image analysis and manipulation functions. A digital
signal processor subsystem runs the feedback loop, generates the scanning signals, and acquires the
data during SPM measurements. The programmable GXSM vector probe engine performs virtually
any thinkable spectroscopy and manipulation task, such as scanning tunneling spectroscopy or tip
formation. The GXSM software is released under the GNU general public license and can be obtained
via the internet. © 2010 American Vacuum Society. 关DOI: 10.1116/1.3374719兴
I. INTRODUCTION AND OVERVIEW digital feedback loops5–9 and are demonstrative, but less
available 共mostly home made hardware兲 to the scientist as
The development of the scanning tunneling microscope1,2 they are not maintained nor supported like GXSM is. This
共STM兲 provided scientists with a versatile tool to image, article presents the major updates and new developments of
spectroscopically analyze, and manipulate atoms and mol- the GXSM software project and will focus on the new data
ecules on surfaces at length scales from ⬃100 m down to acquisition and control design and new features since the
the atomic scale. Due to the tremendous potential of scan- first publication.10
ning probe microscopy 共SPM兲 many different SPM tech- In 2003 support for a commercially available completely
niques and instruments such as the STM and the atomic new digital signal processor 共DSP兲 platform “signal
force microscope 共AFM兲 were developed in the last 30 ranger”11 共SR兲 with USB interface was started. At this point
years.3,4 Nowadays, SPM is widely used and belongs to the a new fully modular hardware interface 共HwI兲 plug-in was
standard experimental techniques in many different research designed and the HwI for the new platform was created. A
fields, starting from basic surface science, where it origi- fourth generation of DSP code design was set into place.
nated, surface chemistry, to biology. Especially the potential This new design of a low level real time and multitask ca-
of local spectroscopic measurements and manipulations on pable data processing DSP code allows simultaneous scan-
atomic scale was and is still discovered by many research ning, probing 共spectroscopy, etc.兲, or changing of almost ev-
groups. There is a very broad range of different types of ery parameter at any time.
spectroscopy and manipulation methods existing and only a Later the invention of the generic vector probe 共VP兲 en-
few commercial SPM control and software solutions are ad- gine took place, a novel approach to spectroscopic measure-
dressing these needs in a universal way and all of them are ments and manipulations. This engine allows performing al-
built on top of special instruments and hardware solutions. most every imaginable spectroscopic measurement or
Furthermore, for most systems the source code is not avail- manipulation in real time without the need for low level
able as open source. Therefore, the extension of these soft- programming.
ware packages by their users to special dedicated tasks is Also the vector scan generator and data acquisition engine
very limited if not impossible. and data transfer were redesigned for maximum of efficiency
Previous publications on various special and universal and universality. The DSP is now running a full frame scan
SPM control hardware cover computer controlled analog or in real time with zero time loss in between lines for any data
transfers, as data are continuously streamed via a first in first
a兲
Electronic mail: zahl@users.sourceforge.net out 共FIFO兲 background task. Also all user interactions with
C4E39 J. Vac. Sci. Technol. B 28„3…, May/Jun 2010 1071-1023/2010/28„3…/C4E39/9/$30.00 ©2010 American Vacuum Society C4E39
Redistribution subject to AVS license or copyright; see http://scitation.aip.org/termsconditions. Download to IP: 139.124.18.99 On: Tue, 12 Nov 2013 14:38:19
C4E40 Zahl et al.: Open source SPM control software package GXSM C4E40
own needs, not excluding the DSP code. Since over 9 years it
resides at the open source development network14 “source-
forge.net” as a “GXSM” project. Public online help and dis-
cussion forums are available. For convenience an Ubuntu
based LINUX distribution can be downloaded from Ref. 15,
which includes the GXSM binaries as well as the source code
for further development. The distribution can even run in a
live mode without installation on a host PC.
Redistribution subject to AVS license or copyright; see http://scitation.aip.org/termsconditions. Download to IP: 139.124.18.99 On: Tue, 12 Nov 2013 14:38:19
C4E41 Zahl et al.: Open source SPM control software package GXSM C4E41
Redistribution subject to AVS license or copyright; see http://scitation.aip.org/termsconditions. Download to IP: 139.124.18.99 On: Tue, 12 Nov 2013 14:38:19
C4E42 Zahl et al.: Open source SPM control software package GXSM C4E42
FIG. 3. 共Color online兲 Screenshot of the signal ranger HwI control window,
feedback folder selected. The other folders are for “trigger” 共trigger param-
eter changes while scanning兲, “advanced” 共IIR filter configuration, raster
vector probe setup and expert scan settings兲, “STS” 关ordinary I / V spectros-
copy with option for gap 共Z兲 adjustments, repetitions, multiposition probes,
etc.兴, Z 共vertical manipulation兲, PL 共generate bias/Z pulses for tip forming,
etc.兲, “LPC, SP” 共custom user modes兲, “TS” 共time spectrum兲, “LM” 共lateral
manipulation兲, “lock-in” 共DSP lock-in amplifier settings兲, “AX” 共auxiliary FIG. 4. 共Color online兲 Schematic of the DSP code topology: Start up section
data collection, e.g., from a spectrometer via the counter channel兲. Via configures the DSP system, sets up timers for data processing ISR and enters
“graphs” the user defines which data should be collected and how to plot it. the never ending idle loop, which implements a state machine.
Redistribution subject to AVS license or copyright; see http://scitation.aip.org/termsconditions. Download to IP: 139.124.18.99 On: Tue, 12 Nov 2013 14:38:19
C4E43 Zahl et al.: Open source SPM control software package GXSM C4E43
FIG. 6. 共Color online兲 Profile as extracted from Fig. 5 via the “show line tool” as marked with a line.
Redistribution subject to AVS license or copyright; see http://scitation.aip.org/termsconditions. Download to IP: 139.124.18.99 On: Tue, 12 Nov 2013 14:38:19
C4E44 Zahl et al.: Open source SPM control software package GXSM C4E44
Sជ s,i ª 共v,x,y,z,fb兲,
dSជ ª 共dv,dx,dy,dz,fb兲.
冉 冊
scan shows a Cu共111兲 sample covered with a submonolayer of PTCDA and
a small amount of copper phthalocyanine 共CuPc兲 molecules, which are 共ADC0,ADC1, . . . ,ADC7兲,
ជª
D .
found to be in contact to the PTCDA islands at low temperatures 共8 K兲. The 共Zmon,L0,L1a,L1b,L2a,L2b兲
spectroscopy data were measured at distinct positions of the molecules as
indicated by the colored dots. As a reference, the dI / dV spectrum of the bare
Cu substrate is given 共black line兲. It exhibits the Shockley surface state at
Here, ADCn is a analog input channel with n = 0 , . . . , 7, Zmon
⬃0.45 eV below Fermi energy. The PTCDA molecules show an interface is the current z value given by the feedback loop, and Lx
state 共sharp feature at ⫺0.75 eV兲. Due to molecule-molecule interaction, denotes data generated by the built-in digital lock-in ampli-
some benzene rings of adjacent CuPc molecules also show this interface fier. The components of the data vector are flags that are set
state, in this example shifted by 100 meV.
to 1 when data are to be acquired and to 0 if no data are
taken 共to optimize data transfer bandwidth, only requested
data are transferred to and recorded by GXSM兲.
A section of a vector probe event is then described by the
with STMs where the tunneling current 共I兲 and its derivative change in the systems state dSជ between the individual data
共dI / dV兲 is measured as a function of the bias voltage to points and the data sources D ជ to be acquired at each data
study the local electronic structure of the sample, see Fig. 7. point,
Countless variations in scanning probe spectroscopy are used
by different research groups. However, many SPM control pជ s ª 共dSជ ,D
ជ ,n, 兲,
software systems are restricted to the most common spectros-
copy modes, such as I / V curves. GXSM features a novel ap- where n is the number of times to apply dSជ and also the
proach to scanning probe spectroscopy and manipulation, the number of data points in this VP segment and is the rate in
VP engine. GXSM’s universal vector probe allows almost ev- vectors per second, which defines the duration 共n / 兲 of every
ery imaginable spectroscopy or manipulation task to be per- probe segment.
formed without the need to modify the DSP code. Neverthe- A complete VP is defined by a list of probe vectors pជ s that
less, the VP engine DSP code is small and extremely efficient are executed consecutively. A null vector is used as program
to reduce the memory footprint and increase performance. end mark for the VP engine.
The basic idea behind GXSM’s VP is that every spectro- For example, a simple delay is done by just setting all
scopic measurement 共probe兲 can be described by the state of components of dSជ to zero and the fb flag as desired and then
the instrument at each measurement point and the data ac- use n and to define the total duration n / of this segment.
quired at this point and how to get to the next state. A full A simple bias ramp can be achieved by setting just the value
generic probe can usually be split into sections s of specific for dv, the total bias change will be defined as n · dv and the
actions such as “go from the current state to the initial in- duration again by n / .
tended probe state” 共i.e., ramp from current bias to the start This description is simplified, as the real implementation
bias兲, then “run the probe itself” 共ramp from start to end includes digital oversampling, data averaging, and has addi-
bias兲, and “finish with a return to the original state.” tional vector components. Our vector probe engine has also
Redistribution subject to AVS license or copyright; see http://scitation.aip.org/termsconditions. Download to IP: 139.124.18.99 On: Tue, 12 Nov 2013 14:38:19
C4E45 Zahl et al.: Open source SPM control software package GXSM C4E45
C. Gridded probe
GXSM allows setting up an automated gridded probe while speed 共given here in pixels/s兲. All available input channels
scanning. The vector scan engine can trigger any probe ac- ADCi are managed in this automatic scan speed matching
tion every nth data point. We are assuming a scan speed slow bandwidth mode,
compared to the probe time 共i.e., the time in between trig- N−1
gering single probes must be at least larger than the probe 1 75 000 Hz
V = 兺 ADCi共n兲, N=
duration itself兲. This probe action is performed fully simul- N n=0 pixel/s
taneous to the scanning, meaning the tip keeps—very
slowly—moving. The advantage of this is that the scan im- or in signal noise gain 共SN兲 terms,
age stays undisturbed by any means of piezononlinearities,
such as creep. Nevertheless a simple stop and go mode is
available as well.
SN = 20 log 冉冑 冊
1
N
The first trigger within every line is shifted by a computed is the gain in signal to noise ratio—assuming statistical
number of pixels 共offset from left兲 to get an optimized cov- noise—on top of the available 16 bits 共1 bit rms兲 of the
erage of the whole scan with data points. By using this lin- SR2-A810.12
ewise variation in the offset, the probe data are not only Further the latest experimental release revises the feed-
acquired on a fixed grid 共e.g., every nth point in every mth back loop configuration and allows up to four signals 共pro-
line兲 but in every line. While maintaining a constant raster vided on ADC0,…,3兲 to be user configurable as feedback
speed of the tip, the number of data points can be increased sources using linear or logarithmic signal transformations
so that an implemented filter algorithm can be used to inter- and can even be mixed and weighted in different ways via
polate between the two-dimensional distributed probe points the gains Gi, as illustrated in Fig. 8. It also includes a special
to restore a multidimensional, hence multilayered probe im- “fuzzy” mixing mode to enable a particular channel depend-
age with the full pixel resolution of the topography image. ing on its signal level; only the “amount beyond” is used for
⌬i computation.
D. Roadmap and latest developments for the This multichannel feedback mode allows, for example,
MK2-A810 SPM control continuous transitions between STM and AFM or dynamic
force microscope 共DFM兲 operation modes. The fuzzy mode
As experimental code release a high-resolution mode for
can be used in many ways, one may be a kind of “tip guard”
the DAC converts is implemented. This will allow increasing
mechanism watching for special conditions, i.e., watching
the bit resolution of selected output channels by 1–3 bits.
the power dissipation signal commonly available from phase
This is possible on DSP software level now running sam-
locked loop controllers used for DFM.
pling and data processing at full 150 kHz but limiting all
For channel ADC0 a real time self-adaptive infinite re-
other DSP tasks such as scan and feedback to a reasonable
sponse 共IIR兲 filter which adjusts its frequency as function of
fraction of this. For all input channels an automatic scan
the signal magnitude is implemented—assuming to be used
speed depending on bandwidth adjustment 共simple averag-
for sampling the tunnel current in STM mode. The user se-
ing兲 is used as before, but now the gained resolution due to
lects a crossover current Ic and cutoff lower limit frequency
statistics is not any longer thrown away 共rounded off to in-
f min, also the upper bandwidth can be limited to f max. This
teger兲, but the full 32 bit accumulated value and normaliza-
will then in real time limit the ADC0 input bandwidth in
tion count are kept and transferred. A normalization to the
dependence of the signal magnitude 兩In兩 according to
original 16 bit magnitude, but now as floating point number,
is done by the HwI as data post processing. For performance f min
Ic + 兩In兩
reasons and future expansions the FIFO data stream consist- ln共q兲 f max
ing of a set of 32 bit signals are now compressed using first f 0共q兲 = − 75 000 Hz , q共In兲 = 1 − .
2 Ic + 兩In兩
order linear predictor and custom encoded byte packed.
In particular, the signal to noise ratio of small or noisy This real time computed q is limited to a qmin matching the
signals will increase automatically while lowering the scan given f max before the bandwidth limited 共IIR filter兲 current
Redistribution subject to AVS license or copyright; see http://scitation.aip.org/termsconditions. Download to IP: 139.124.18.99 On: Tue, 12 Nov 2013 14:38:19
C4E46 Zahl et al.: Open source SPM control software package GXSM C4E46
0
10
ADC-0: current
combination with a DSP based hardware it becomes a com-
Z-mon: IIR response
plete real time SPM control system including a full digital
-1
signal [V]
5 kHz
0.5
ACKNOWLEDGMENTS
q
10 kHz
gained by a combination of IIR filtering and slower scan- www.ventiotec.com/linux/GXSM-Linux.iso, provided via Ventiotec
Dolega Wagner GbR, Marler Straße 100-102, 45896 Gelsenkirchen, Ger-
ning. This digital self-adapting IIR filter implementation al- many.
lows full control of the frequency ranges and guarantees a 16
UNIDATA, NetCDF Homepage: see URL: http://www.unidata.ucar.edu/
fast tip response to a sudden increase in the tunnel signal 共up packages/netcdf.
17
to full band width兲 as needed to prevent the tip from crashing The IMAGEJ project, see URL: http://rsbweb.nih.gov/ij/index.html.
18
The GWYDDION project, see URL: http://gwyddion.net.
into step bunches or other “edges.” 19
I. Horcas, R. Fernandez, J. M. Gomez-Rodriguez, J. Colchero, J. Gomez-
Herrero, and A. M. Baro, Rev. Sci. Instrum. 78, 013705 共2007兲.
20
E. Conclusion G. Aloisi, F. Bacci, M. Carla, D. Dolci, and L. Lanzi, Rev. Sci. Instrum.
79, 113702 共2008兲.
21
We present an update on the open source scanning probe Florence Open SPM, see URL: http://spm.polosci.unifi.it.
22
Miguel de Icaza, the Gnome desktop environment, see URL: http://
microscopy control project GXSM. The GXSM control soft-
www.gnome.org.
ware is already a versatile data processing tool for multidi- 23
P. Zahl, S. Schröder, T. Wagner, and A. Klust, The GXSM Manual,
mensional data obtained by scanning probe microscopes. In Brookhaven National Laboratory, NY, USA, 2010, online available via
Redistribution subject to AVS license or copyright; see http://scitation.aip.org/termsconditions. Download to IP: 139.124.18.99 On: Tue, 12 Nov 2013 14:38:19
C4E47 Zahl et al.: Open source SPM control software package GXSM C4E47
URL: http://gxsm.sourceforge.net, navigate to Documentation, Manual/ for current simulation. Using the mixer and feedback settings typical
Help. situations can be tested using various vector probe modes. Here, for this
24
Piezodrive by Ing. Büro W. Reimann, Germany, see URL: http:// IIR performance test, the feedback is configured in linear mode with
gxsm.sourceforge.net and look at the section hardware for details. proportional gain one and integration set to zero. This means the IIR filter
25
FEMTO: model DLPCA-200 variable-gain low-noise current amplifier or
output 共feedback input signal兲 can be monitored as Z signal. See URL:
any other current to voltage amplifier with typical gains of 108 and 109.
26 http://sourceforge.net/apps/wordpress/gxsm/2009/10/09.
K. Besocke, Surf. Sci. 181, 145 共1987兲. 29
27
Python scripting language, see URL: http://www.python.org. A complete list of all GXSM developers can be found at URL: http://
28
GXSM self-test configuration: bias looped back to feedback input 共current兲 sourceforge.net/projects/gxsm/, click on “view members.”
Redistribution subject to AVS license or copyright; see http://scitation.aip.org/termsconditions. Download to IP: 139.124.18.99 On: Tue, 12 Nov 2013 14:38:19