General background in solid-state physics Important charge transport properties of semiconductor devices such as the deviance from Ohm's law and the saturation of carriers mobility are a direct consequence of scattering mechanisms. It is thus of great importance for a semiconductor device simulation to capture the physics of such mechanisms. The semiconductor Monte Carlo simulation, in this scope, is a very powerful tool for the ease and the precision with which an almost exhaustive array of scattering mechanisms can be included. The duration of the free flights is determined from the scattering rates. At the end of each flight, the appropriate scattering mechanism must be chosen in order to determine the final energy of the scattered carrier, or equivalently, its new momentum and scattering angle. In this sense, one will distinguish two broad types of scattering mechanisms which naturally derive form the classic kinetic theory of collision between two bodies:
Elastic scattering, where the energy of the particle is conserved after being scattered. Elastic scattering will hence only change the direction of the particle's momentum. Impurity scattering and surface scattering are, with a fair approximation, two good examples of elastic scattering processes.
Inelastic scattering, where energy is transferred between the scattered particle and the scattering center. Electronphonon interactions are essentially inelastic since a phonon of definite energy is either emitted or absorbed by the scattered particle. Before characterizing scattering mechanisms in greater mathematical details, it is important to note that when running semiconductor Monte Carlo simulations, one has to deal mainly with the following types of scattering events:
Non Equivalent Intervalley Phonon: Involves the transition of a charge carrier between valleys of different types.
Piezoelectric Phonon: For low temperatures.
Ionized Impurity: Reflects the deviation of a particle from it ballistic trajectory due to Coulomb interaction with an ionized impurity in the crystal lattice. Because the mass of an electron is relatively small in comparison to the one of an impurity, the Coulomb cross section decreases rapidly with the difference of the modulus of momentum between the initial and final state. Very often, the charge of the carriers is assigned to a grid using a Cloud-in-Cell method, where part of the charge of a given particle is assigned to a given number of closest grid points with a certain weight factor.
Plasmon: Reflects the effect of the collective oscillation of the charge carriers on a given particle.
Inclusion of scattering mechanisms in Monte Carlo A computationally efficient approach to including scattering in Monte Carlo simulation consists in storing the scattering rates of the individual mechanisms in tables. Given the different scattering rates for a precise particle state, one may then randomly select the scattering process at the end of the free flight. These scattering rates are very often derived using the
Born approximation, in which a scattering event is merely a transition between two momentum states of the carrier involved. As discussed in section II-I, the quantum many-body problem arising from the interaction of a carrier with its surrounding environment (phonons, electrons, holes, plasmons, impurities,...) can be reduced to a two-body problem using the quasiparticle approximation, which separates the carrier of interest from the rest of the crystal. : \langle k|H'|k' \rangle = \frac{1}{Vol} \int_\mathrm{Vol} \psi_k (r) H' \psi^*_{k'} (r) \, dr In a crystal lattice, the wavefunctions \psi_k (r) and \psi_{k'} (r) are simply
Bloch waves. When it is possible, analytic expression of the Matrix elements are commonly found by Fourier expanding the
Hamiltonian H', as in the case of Impurity scattering or acoustic phonon scattering. In the important case of a transition from an energy state E to an energy state E' due to a phonon of wave vector q and frequency \omega_q, the energy and momentum change is: : E' - E = E(k') - E(k) \pm \hbar \omega_q \, :k' - k \pm q = \begin{cases} 0 & \text{ } \\ R & \text{Umklapp-process} \end{cases} where
R is a
reciprocal lattice vector. Umklapp processes (or U-processes) change the momentum of the particle after scattering and are therefore limiting the conduction in semiconductor crystals. Physically, U-processes occur when the final momentum of the particle points out of the first Brillouin zone. Once one knows the scattering probability per unit time from a state k to a state k', it is interesting to determine the scattering rate for a given scattering process. The scattering rate gives the probability per unit time to scatter from a state
k to any other state in the reciprocal space. Therefore, the scattering rate is : \lambda (k) = \sum_{k'} S(k,k') which can be readily used to determine the free flight time and the scattering process as discussed in section 3-3. It is important to note that this scattering rate will be dependent on the band structure of the material (the dependence arises from the matrix elements).
Selection of scattering mode and scattered trajectory At the end of a free flight, a scattering mode and angle must be randomly chosen. In order to determine the scattering mechanism, one has to consider all the scattering rates \lambda_1, \lambda_2, ..., \lambda_n of the mechanisms relevant to the simulation as well as the total scattering rate at the time of scattering \lambda_{tot} (t_{sc}) = \sum_i \lambda_i. Selecting a scattering mechanism then simply results in generating a uniformly distributed random number 0 \begin{align} r & A computationally efficient approach to selecting the scattering mechanism consists in adding a “void” scattering mechanism so that \lambda_\mathrm{tot} remains constant over time. If a particle is scattered according to this mechanism, it will keep its ballistic trajectory after scattering takes place. In order to choose a new trajectory, one must first derive the
energy (or
momentum) of the particle after scattering : E(k') = E(k) \pm \hbar \omega_q \pm \Delta E_C \, where the term \hbar \omega_q accounts for phonon emission or absorption and the term \Delta E_C is non-null for inter-valley scattering. The final energy (and the band structure) directly yield the modulus of the new momentum k'. At this point one only needs to choose a new direction (or angle) for the scattered particle. In some simple cases as
phonon scattering and a parabolic dispersion relation, the scattering angle is random and evenly distributed on the sphere of radius k'. Using spherical coordinates, the process of choosing the angle is equivalent to randomly picking two angles \thetaand \psi. If the angle is distributed with a distribution p(\theta, \psi), then for a uniform distribution of angles, the
probability to pick a point of the sphere is : p(\theta, \psi) \, d \theta d \psi = \frac{\sin \theta \, d \theta \, d \psi}{4 \pi} It is possible, in this case, to separate the two variables. Integrating over \psi then over \theta, one finds : p(\theta) = \frac{\sin \theta}{2} : p(\psi) = \frac{1}{2 \pi} The two spherical angles can then be chosen, in the uniform case, by generating two random numbers 0 1, r2 r_1 = \int_0^\psi p(\psi ') \, d \psi ' = \frac{\psi}{2 \pi} : r_2 = \int_0^\theta p(\theta ') \, d \theta ' = \frac{1 - \cos \theta}{2} == Quantum corrections for Monte Carlo simulation ==