Sentaurus Process
11. Special Focus: Three-Dimensional Examples

11.1 Overview
11.2 Three-Dimensional Setup Without Implantation and Diffusion
11.3 Three-Dimensional Setup With Implantation and Diffusion
11.4 Switching From Two Dimensions to Three Dimensions
11.5 Linear Solvers

Objectives

11.1 Overview

Sentaurus Process can perform all process steps, except for oxidation, in three dimensions as well. Implantation and diffusion steps do not require any special considerations in three dimensions, except for the fact that each of these steps takes significantly longer to complete when performed in three dimensions compared to two dimensions. As such, using a coarser mesh in three dimensions is recommended.

For process steps that change the structure, however, special care must be taken. These steps include etching, deposition, photo, strip, reflection, and cut. While the syntax in three dimensions is equivalent to two dimensions, the operations are more complicated and can require simplifications.

Before starting any 3D project, it is a good idea to build the project in two dimensions and ensure it runs. Since simulations take longer in three dimensions, this can save a lot of time if the input is incorrect or does not produce the required results.

After the project runs in two dimensions, 3D input can be created by adding line z commands, which will make the initial structure 3D. It is recommended that you initially switch off the implantation and diffusion steps, so that only structure-modifying steps remain. These run relatively fast and, therefore, can be used to check whether the final structure is correct.

11.2 Three-Dimensional Setup Without Implantation and Diffusion

A few points are worth noting when setting up the initial flow without implantation and diffusion steps. The structure-modifying steps (etching, deposition, photo, and transform) take very little time, but mesh generation in three dimensions can be slow. The following suggestions will minimize the number of times Sentaurus Process needs to generate the 3D mesh and, therefore, will make the simulations run faster:

An example of a 3D setup without implantation and diffusion steps can be found in the project Applications_Library/GettingStarted/sprocess/SmallMOS_NoDiff.

Click to view the command file sprocess_fps.cmd.

The simulation generates a TDR boundary file at every structure-modifying step. Figure 1 shows an animation of the evolution of the structure.

Animation of 3D MOS flow without implantation and diffusion

Figure 1. Animation of 3D MOS flow without implantation and diffusion.

11.3 Three-Dimensional Setup With Implantation and Diffusion

After satisfactory results are obtained for the structure-modifying steps, implantation and diffusion steps can be switched on again. At this point, saving the structure with struct tdr.bnd=<c> is no longer necessary, but the other recommendations should be followed.

The example 3D project with the implantation and diffusion steps can be found in the directory Applications_Library/GettingStarted/sprocess/SmallMOS_Full.

Click to view the command file sprocess_fps.cmd.

The project also includes remeshing for device simulation with Sentaurus Process, as well as device simulation with Sentaurus Device. The results of the 3D Sentaurus Process simulation are shown in Figure 2.

Sample 3D MOS flow with implantation and diffusion

Figure 2. Sample 3D MOS flow with implantation and diffusion. (Click image for full-size view.)

11.4 Switching From Two Dimensions to Three Dimensions

As in 2D simulations, Sentaurus Process keeps the initial structure in 1D mode before an etch with a mask is encountered. As soon as the first 3D mask is encountered, the structure is extended to three dimensions according to the size specified by the line y and line z commands. Even in cases where the first mask is only one-directional (for example, a strip that extends beyond the simulation domain), the structure does not become 2D. Sentaurus Process does not differentiate between masks that would keep the structure 2D or masks that would make the structure 3D.

However, it can sometimes be useful to keep the structure in two dimensions as long as possible, so that oxidation can be performed. In such cases, you must explicitly state when to switch to 3D simulation.

This is achieved by initializing the simulation in two dimensions, that is, by specifying only line x and line y commands. After the 2D simulations are performed as usual, line z commands are used to extend the structure to three dimensions. After that point, the simulation becomes 3D.

The example 3D project where the switch from two dimensions to three dimensions is performed manually can be found in the directory Applications_Library/GettingStarted/sprocess/SmallMOS_2D3D.

Click to view the command file sprocess_fps.cmd.

Figure 3 shows the results of Sentaurus Process. In contrast to Figure 2, the initial plot is 2D since it is before the switch to three dimensions occurred.

Switching from 2D structure to 3D structure

Figure 3. Sample MOS flow where the structure is switched from two dimensions to three dimensions manually. (Click image for full-size view.)

11.5 Linear Solvers

The default linear solver for 1D and 2D simulations in Sentaurus Process is the direct solver PARDISO. For 2D diffusion and all types of 3D simulation, the iterative solver ILS is used by default.

To activate PARDISO for diffusion (diffuse) and mechanics (Flow) simulations, use:

math diffuse dim=2 pardiso
math diffuse dim=3 pardiso
math Flow    dim=3 pardiso

Similar syntax is used to activate ILS for 2D simulations:

math diffuse dim=2 ils
math Flow    dim=2 ils

In the case of poor convergence, you can improve the quality of the ILS preconditioning of the matrices by reducing the ILS.ilut.tau parameter, for example, from 2x10-3 (the default value for 3D diffusion) to 1x10-5, or even a smaller value.

The iterative solver GMRES stores a given number m of backvectors. If the solution does not converge within m iterations, GMRES restarts. Higher values of m improve convergence but increase memory use. You can set m in Sentaurus Process by changing the parameter ILS.gmres.restart.

Recommended values are between the default value of 60 to 100 for 3D diffusion:

pdbSet Math diffuse 3D ILS.ilut.tau 5e-5
pdbSet Math diffuse 3D ILS.gmres.restart 80
pdbSet Math diffuse 3D ILS.maxit 200
pdbSet Math diffuse 3D ILS.tolrel 1e-6
pdbSet Math diffuse 3D ILS.refine.residual 5

To activate parallel computation for each solver on four threads, for example, use:

math numThreadsILS=4
math numThreadsPardiso=4

main menu    |   module menu    |   << previous section    |   next section >>