FEDOS (Finite Element Diffusion and Oxidation Simulator) is a general FEM simulation software developed at the Institute for Microelectronics [60]. It is capable to handle every PDE of first order in time and arbitrary differential order in space. Furthermore, it can handle coupled PDE [62]. The generation of the geometry and the meshing are preformed by external programs. As output FEDOS can write a solution file for every time step or only for the end of the simulation. FEDOS output can be used for the presentation and interpretation in external programs (e.g. visualization tools) as well as a list of maximal and minimal values for every time step. The capability of outputting the maximum and minimum values makes it a very useful tool for EM simulations, as the maximum tensile stress in the structure is a key parameter for cracking and void formation.
To set up a new model in FEDOS a model file is written, where the assembly rules for the matrix and of (4.27) are specified. Due to the element-wise assembly this definition is used for each triangle giving its nodes as input and returning the values which have to be passed into the matrices. Models can be implemented for domains, for boundaries between domains or for boundaries of the simulation domain, realizing thereby boundary conditions.
After starting the simulation, FEDOS solves the modeled problems sequentially. Figure 4.5 depicts the sequence of an EM simulation in a flow chart. First the electrothermal problem is solved and the values needed for the vacancy dynamics are passed to the next simulation phase. There the vacancy dynamics is simulated, followed by a stress calculation in the solid mechanics simulation step. After all these steps are performed the accuracy of the solution is checked. If a given precision of the solution result is reached, the solution is accepted and the maximum stress is compared against a threshold for the void formation or for cracking. If the error threshold of the solution is exceeded, the time step size is reduced by multiplying it with a user chosen factor (smaller 1) and the simulation of the last time step is reperformed. The time step size gets multiplied by the inverse of the same factor, if the solution of the following time steps are in a given error range.
« PreviousUpNext »Contents