A Fast Void Detection Algorithm for
Three-Dimensional Deposition Simulation
Otmar Ertl and Siegfried Selberherr
Institute for Microelectronics, TU Wien
Gußhausstraße 27–29/E360, A-1040 Wien, Austria
Email: {ertl|selberherr}@iue.tuwien.ac.at
Abstract—We present an efficient algorithm for the detection
of voids which potentially emerge during deposition process
simulation. The application of modern level set techniques and
data structures enables the fast determination of connected
components directly from the implicit level set representation
without the need of an additional surface extraction. The algo-
rithm exhibits optimal linear scaling with surface size and is
demonstrated on an example, where an isotropic etching process
followed by conformal deposition is simulated.
I. I NTRODUCTION
Deposition processes can lead to the inclusion of voids.
From the point of formation their shapes usually do not
change, since they are disconnected from the process chamber.
Deposition process simulations should reproduce this simple
behavior. However, especially in three dimensions, the solution
of more complex models is computationally very expensive.
Therefore, often approximations or simplified models are
used, which can result in non-physical movement of void
boundaries. For example, a constant deposition rate is often
used for isotropic deposition simulations.
If the surface is given as triangulation, it is possible to find
voids by determining the connected components of the mesh.
However, to overcome the arising difficulties with topographic
changes during boundary movement, the surface is usually
described implicitly using techniques like the level set method
[1] or the equi-volume rate model [2]. Furthermore, it has been
demonstrated that topography simulations are possible, where
the surface rates are calculated using just the implicit surface
representation [3], [4]. To avoid the need of a triangulated
version of the surface at all, which has to be extracted every
time step using costly techniques like the marching cubes
algorithm [5], it would be convenient to have an efficient
method to detect voids directly using the implicit surface
representation.
II. LEVEL SET METHOD
The level set method is a technique to describe geometric
changes over time and is widely-used for three-dimensional
topography simulation [6]. A moving surface S is described
implicitly as zero level set of a continuous function Φ
S = {x : Φ(x)=0}. (1)
Using this level set function the time evolution of the surface
can be simply described by the level set equation
∂ Φ
∂t
+ V (x)‖∇Φ‖ =0. (2)
Here V (x) denotes a velocity field. Since this field has no
physical meaning in topography simulations, it has to be
extrapolated from the rates on the surface [7]. The level set
equation can be easily solved on regular grids using simple
finite difference upwind schemes [8].
The level set function is defined on the whole simulation
domain, which implies that the memory requirements and also
the computation time for time evolution scale with domain
size. Different techniques have been developed to obtain
optimal linear scaling with surface size (surface area measured
in grid spacings).
A. Sparse field level set method
Only level set values of grid points close to the surface have
an influence on the surface position. Therefore, it is sufficient
to consider only grid points located around the surface for
time integration. Only the level set values of these so-called
active grid points have to be updated in time, leading to a
linear complexity.
This idea was first put into practice by the narrow band
method which uses several layers of active grid points around
the surface [9]. We use another technique, the sparse field level
set method [10], which further decreases the computation time
by using just one single layer of active grid points, namely
those with level set values in the range -0.5 to 0.5. Since all
active grid points are very close to the surface (within a half
grid spacing), the required surface velocity extension is very
simple. It is even possible to avoid this extrapolation at all, if
the surface velocities are calculated directly for all active grid
points [4].
B. Hierarchical run-length encoding
The narrow band or the sparse field level set method
requires only the level set values of all active grid points
and additionally those of grid points in neighboring layers
to enable the calculation of derivatives. Hence, the memory
requirements can be minimized by storing just the needed level
set values.
We use the hierarchical run-length encoded (HRLE) data
structure [11] to store just the level set values of the so-called
978-1-4244-3947-8/09/$25.00 ©2009 IEEE 174