[ Home ]

# Phenomenological Single-Particle Modeling of Reactive Transport in Semiconductor Processing

#### 4.3 Integration with the Level-Set Method

Ultimately, the reactive transport model presented in Section 4.2 must be integrated within a topography simulator to evaluate the experimental quantities of interest, especially the film thicknesses, as well as to enable simulations of device operation. To achieve this integration in a LS based topography simulator, a velocity field $$v(\vec {r},t)$$ must be constructed, as discussed in Section 2.2. However, unlike the growth rate proposed for conventional CVD [30] in Eq. (2.5), a velocity field for ALP requires a careful consideration of the involved time scales.

As conventional CVD is a steady-state process, the actual reactor operation time can directly be used in the solution of the LS equation in Eq. (2.2). In ALP, the pulse time $$t_p$$ does not play the same role due to the self-limiting nature of the reactions. Instead, the changes in profile are controlled by the $$N_\mathrm {cycles}$$ and the involved GPC or EPC. Thus, to maintain unit consistency in Eq. (2.2), an artificial time $$t^*$$ for the calculation of the evolution of the topography is defined as

\begin{align} \label {eq::artificial_time} t^* = \frac {N_\mathrm {cycles}}{C}\, , \end{align} where $$C$$ is a numerical constant. For the reasons discussed below, it has been observed that choosing $$C$$ such that $$t^* \approx 1$$ is sufficient. Under the assumption that the reactive transport is limited by a single species, the factor limiting the conformality is the coverage distribution of said species. Therefore, the velocity field is constructed from $$\Theta (z)$$ calculated using Eqs. (4.5) and (4.11) as

\begin{align} \label {eq::velocity_ALP} v(\vec {r},t) = v(z,t) = C \cdot \Theta (z) \cdot \begin{cases} \text {GPC, or} \\ -\text {EPC}\, . \end {cases} \end{align} This is in contrast to the modeling of aluminum oxidation, where the self-limiting nature is directly captured by the LS method [29]. Instead, Eq. (4.15) delegates the self-limiting aspects of the calculation to $$\Theta (z)$$, while the surface advection proceeds normally for the duration of $$t^*$$.

Effectively, the introduction of $$t^*$$ in Eq. (4.14) means that multiple, but not all, ALP cycles are bundled in a single LS advection time step. LS based simulation treats $$v(\vec {r},t)$$ as constant only during a single advection step which is limited to at most one grid spacing $$\Delta x$$ according to the Courant-Friedrichs-Lewy (CFL) condition [59, 79]. That is, the actual bundling of cycles is given by $$\Delta x/{\max {|v(\vec {r},t)|}}$$ and not $$t^*$$, as the inputs $$d$$ and $$L$$ of the calculation of $$v(\vec {r},t)$$ are updated after each advection step. Notwithstanding, $$\Delta x$$ must be carefully chosen so that variations in the distribution of $$\Gamma _\mathrm {imp}(\vec {r})$$ are minimal during the advection step.

The calculation of $$\Gamma _\mathrm {imp}(\vec {r})$$ presented in Section 4.2 is performed on $$N_z$$ slices which might not necessarily correspond to the required $$z$$ coordinates for the solution of the LS equation. This is addressed by storing the values of $$\Theta$$ at each $$k$$ slice as a look-up table. Then, the values are linearly interpolated for the $$z$$ coordinate of each evolving surface point $$\vec {r}$$. Since the presented model does not require any modifications to the LS method, it has been implemented using the Python interface of ViennaLS [158] as well as the user-facing Open Model Library of Silvaco’s Victory Process [55].