4. AMIGOS

Analytical Model Interface &

General Object-Oriented Solver

To accurately simulate modern semiconductor process steps, a simulation tool must include a variety of physical models and numerical methods. Increasingly complex physical formulations are required to account for effects that were not important in simulating previous generations of technology. Thus, flexibility in the definition of models as well as in numerical solving methods is highly desirable. But the transposition to computer science turned out to be very time consuming and resulted in a profusion of different simulators which can handle more or less a special but very restricted field of physical behavior especially in three dimensions. Instead of simulating simple singular process steps the industry more and more demanded a complete simulation flow control which can handle all necessary simulation steps to describe the behavior of any semiconductor device and its manufacturing process.

However, the development of new complex physical models and its practical realization requires a large expenditure of time. Since modeling, especially for oxidation, still is in a fairly experimental state, it seems to be obvious to develop a tool that supports a lot of different features for rapid prototyping. With the traditional approach to implementing process simulators the discretized equations and intelligence about when to add extra equations or terms is hard-coded in the simulator. Access to and an understanding of the source code would normally be required to prototype a new model. There are quite a lot of reasons why it is necessary to change the common used implementation approach. The most significant are

- Copyrights often prohibit the modification of source code and source code is often not accessible.
- It takes a combination of a physicist, a numerical analyst and a software developer to prototype new models, even if it involves only incremental changes to an existing source code. People with this mixture of skills are very rare.
- Any code with multiple developers (especially at different sites) will diverge into versions with different subsets of capabilities. Since it is desirable to have a single version with the union of the added capabilities, code merging must eventually be performed. Past experience indicates that a complete rewrite is often less effort than a merge.

To fulfill these liquidated demands the requirements for a general PDE solver have been analyzed carefully and the common features, such as modeling of physical definitions, parameter and model library, grid-adaptation, numerical solver, simple front-end controller as well as geometry and boundary definition have been separated. As a result AMIGOS has been developed. A tool that translates a mathematical formulation of a nonlinear discretized coupled partial differential equation system into a highly optimized model which will then be passed to a nonlinear numerical solver that can handle different mathematical models on various grids as well as interfaces and boundaries.

To support this flexibility the model developer has to implement the
complete discretization within the *Analytical Model Interface*
(AMI). For obvious reasons it is necessary to go down to the low
level discretization layer, because the vast variety of actual
problems can not be handled by a simple standard discretization
method. It is widely common knowledge that there are preferable
discretization methods for definite problems. Whereas in standard
simulation tools a fixed method is prescribed AMIGOS also offers the
possibility to use a mixed discretization. For example the developer
may use a finite element discretization for mechanical problems and
can combine a diffusion process using finite box discretization that
is known to be superior in case of material conservation laws. The
negative consequence is that the complexity of the Analytical Model
Interface increases, because not only the partial differential
equation must be understood by the developer, but also the
mathematical basics of discretizing this system.

- 4.1 General Overview
- 4.2 Input & Control Interface
- 4.3 AMI - Analytical Model Interface
- 4.4 Assembling of the Global Stiffness Matrix
- 4.5 ESA - Equation System Analyzer
- 4.6 Solving Methods
- 4.7 Grid & Element Manager
- 4.8 Examples

1998-12-11