thermal spike hot spot phonon transport non Fourier heat

# Non-Fourier Phonon Heat Transport and Thermal Spike Kinetics in Nanoscale Devices

## 1. Introduction: Breakdown of Fourier's Law at Nanoscale

Classical Fourier's law of heat conduction:
$$q = -\kappa abla T$$

assumes that heat diffuses instantaneously through the material via local temperature gradients. This assumption fails when device dimensions become comparable to or smaller than the phonon mean free path $\lambda_{ ext{ph}}$. In modern GAA (Gate-All-Around) FinFETs and CFETs operating at sub-3nm channel lengths, the characteristic thermal diffusion length becomes shorter than typical phonon wavelengths, violating the hydrodynamic limit.

The breakdown manifests in:
- Ballistic phonon transport: Phonons traverse the device without scattering (direct transmission)
- Thermal non-equilibrium: Local temperature cannot be uniquely defined; energy is carried by directed phonon flux
- Transient overshoot: Heat fronts propagate faster than predicted by classical diffusion
- Thermal memory effects: The system "remembers" previous states over phonon relaxation times

These effects are critical during:
1. High-power RF switching (nanosecond pulse injection)
2. Ion implantation damage (thermal spike dynamics during ion stopping)
3. Joule heating in narrow current channels (hot spots exceeding equilibrium by 100s of K)

## 2. Phonon Boltzmann Transport Equation

The fundamental equation governing phonon distribution is the phonon Boltzmann transport equation (BTE):

$$\frac{\partial f_ u}{\partial t} + \vec{v}_ u \cdot abla f_ u + \frac{\vec{F}}{m^*} \cdot abla_k f_ u = \left(\frac{\partial f_ u}{\partial t} ight)_{ ext{scatt}}$$

where:
- $f_
u(\vec{r}, \vec{k}, t)$ is the phonon distribution function for mode $
u$ (phonon type: acoustic/optical)
- $\vec{v}_
u = \partial \omega_
u / \partial \vec{k}$ is the group velocity
- $\vec{F}$ is an external force (strain-induced acoustic forces)
- The scattering term accounts for phonon-phonon, phonon-defect, and boundary collisions

For heat transport without external forces, the steady-state BTE simplifies to:

$$\vec{v}_ u \cdot abla f_ u = \left(\frac{\partial f_ u}{\partial t} ight)_{ ext{scatt}}$$

The scattering term in the relaxation time approximation:

$$\left(\frac{\partial f_ u}{\partial t} ight)_{ ext{scatt}} = -\frac{f_ u - f_ u^{eq}}{ au_ u}$$

where $ au_
u$ is the mode-dependent relaxation time and $f_
u^{eq}$ is the equilibrium Bose-Einstein distribution.

## 3. Callaway Model and Effective Mean Free Path

The Callaway model provides an analytical solution to the phonon BTE by separating processes into normal (momentum-conserving) and umklapp (momentum-destroying) scattering:

$$ au_ u^{-1} = au_N^{-1} + au_U^{-1}$$

where $ au_N$ is the normal process time and $ au_U$ is the umklapp time. Umklapp processes dominate at high temperature and limit thermal conductivity.

The effective mean free path:
$$\lambda_{ ext{eff}} = \min(\lambda_{ ext{scatt}}, \lambda_{ ext{device}})$$

  • When $\lambda_{ ext{scatt}} \gg L$ (device length): Ballistic limit — phonons cross without scattering, $\kappa_{ ext{eff}} \propto \sqrt{L}$
  • When $\lambda_{ ext{scatt}} \ll L$: Diffusive limit — classical Fourier law applies
  • When $\lambda_{ ext{scatt}} \sim L$: Transition regime — non-Fourier corrections dominate

For silicon at 300 K:
- Optical phonon mean free path: $\lambda_{ ext{opt}} \sim 10-20$ nm
- Acoustic phonon mean free path: $\lambda_{ ext{ac}} \sim 100-300$ nm

## 4. Guyer-Krumhansl Non-Fourier Heat Transport

The Guyer-Krumhansl equation extends Fourier's law to include non-local and time-dependent effects:

$$\frac{\partial Q}{\partial t} + Q = -\kappa abla T + \lambda_{ ext{ph}}^2 \frac{\partial}{\partial t}(\kappa abla^2 T) + \lambda_{ ext{ph}}^2 \kappa abla^4 T$$

where $Q$ is the heat flux, $\kappa$ is thermal conductivity, and $\lambda_{ ext{ph}}$ is the phonon mean free path.

This hyperbolic PDE replaces the parabolic heat equation:
$$ ho c_v \frac{\partial T}{\partial t} = \kappa abla^2 T$$

The Cattaneo relaxation time $ au_c \sim \lambda_{ ext{ph}} / v_s$ (sound velocity $v_s$) introduces finite heat pulse speed rather than instantaneous diffusion.

Rearranging to standard form:
$$ au_c \frac{\partial^2 T}{\partial t^2} + \frac{\partial T}{\partial t} = D_{ ext{eff}} abla^2 T + au_c D_{ ext{eff}} abla^4 T$$

where $D_{ ext{eff}} = \kappa / (
ho c_v)$ is the effective thermal diffusivity.

## 5. Thermal Spike Kinetics: Ion Implantation Energy Deposition

During ion implantation, an energetic ion (E = 1-100 keV) dumps energy via:
1. Electronic stopping (e-e collisions): Fast, creates electron-hole pairs
2. Nuclear stopping (n-n collisions): Slower, creates atomic displacements

The thermal spike forms when:
- Electronic energy is converted to lattice vibrations (electron-phonon coupling)
- Temperature rises dramatically in $\sim 10$-100 fs timescale
- Localized region (cylinder radius ~10 nm) reaches melting or amorphous state

The peak temperature at radius $r$ during ion impact:

$$T_{ ext{peak}}(r) = T_0 + \frac{E_{ ext{dep}}}{2\pi ho c_v r L_{ ext{track}}} \exp\left(-\frac{r^2}{\lambda_{ ext{th}}^2} ight)$$

where:
- $E_{ ext{dep}}$ is deposited energy
- $L_{ ext{track}}$ is ionization track length
- $\lambda_{ ext{th}} \sim$ 10 nm is thermal diffusion length

## 6. High-Power RF Switching and Joule Heating

During RF switching at high power, current crowding in narrow channels (sub-100 nm) creates hot spots:

$$P_{ ext{Joule}} = I^2 R = \frac{V_{ ext{DS}}^2}{ ho(T) A}$$

where resistivity $
ho(T)$ increases with temperature (positive temperature coefficient in semiconductors).

The self-heating feedback loop:
$$\frac{dT}{dt} = \frac{P_{ ext{Joule}}}{ ho c_v} - \frac{\kappa}{( ho c_v) L_{ ext{th}}^2}(T - T_{ ext{ambient}})$$

For sub-3nm channels with $A \sim 10$ nm², joule power density can reach 10 MW/cm³, creating transient temperatures >500 K.

## 7. Python Implementation: Ballistic-Diffusive Heat Transport

import numpy as np
import matplotlib.pyplot as plt
from scipy.integrate import odeint
from scipy.sparse import diags, lil_matrix
from scipy.sparse.linalg import spsolve

def phonon_mean_free_path(T, material='Si'):
    """
    Compute phonon mean free path vs temperature.
    
    Parameters:
    -----------
    T : array (K)
        Temperature array
    material : str
        'Si' or 'SiO2' or 'TiN'
    
    Returns:
    --------
    lambda_ph : array (m)
        Phonon mean free path
    """
    
    if material == 'Si':
        # Empirical fit: λ_ph(T) ∝ 1/T at high T (umklapp dominated)
        lambda_0 = 100e-9  # Reference: 100 nm at 300 K
        T_ref = 300
        lambda_ph = lambda_0 * (T_ref / (T + 1e-10))
    elif material == 'SiO2':
        # Silica: more defects, shorter mfp
        lambda_0 = 10e-9
        T_ref = 300
        lambda_ph = lambda_0 * (T_ref / (T + 1e-10))**0.5
    else:
        lambda_ph = 50e-9 * np.ones_like(T)
    
    return np.clip(lambda_ph, 1e-10, 500e-9)  # Physical bounds

def thermal_conductivity_ballistic(T, L_device, material='Si'):
    """
    Compute effective thermal conductivity with ballistic correction.
    
    κ_eff = κ_bulk / (1 + β * λ_ph(T) / L_device)
    
    Parameters:
    -----------
    T : array (K)
        Temperature
    L_device : float (m)
        Device length scale
    material : str
        Material type
    
    Returns:
    --------
    kappa_eff : array (W/m·K)
        Effective thermal conductivity
    """
    
    if material == 'Si':
        # Bulk Si thermal conductivity (empirical)
        kappa_bulk = 150 / (1 + 0.004 * (T - 300))  # W/(m·K)
    else:
        kappa_bulk = 10 * np.ones_like(T)
    
    lambda_ph = phonon_mean_free_path(T, material)
    
    # Ballistic reduction factor
    Knudsen = lambda_ph / (L_device + 1e-12)
    reduction_factor = 1.0 / (1.0 + 2.0 * Knudsen)
    
    kappa_eff = kappa_bulk * reduction_factor
    
    return kappa_eff

def solve_guyer_krumhansl_1d(x, t, T_init, T_boundary, power_density_array, 
                              L_device, dt_out, material='Si'):
    """
    Solve Guyer-Krumhansl non-Fourier heat equation in 1D.
    
    ∂T/∂t = D_eff ∂²T/∂x² + τ_c D_eff ∂⁴T/∂x⁴ + P(x,t)/ρc_v
    
    Parameters:
    -----------
    x : array (m)
        Spatial grid
    t : array (s)
        Time output points
    T_init : array (K)
        Initial temperature
    T_boundary : float (K)
        Boundary temperature
    power_density_array : array (W/m³)
        Time-dependent power input
    L_device : float (m)
        Device length
    dt_out : float (s)
        Output time step
    material : str
        Material type
    
    Returns:
    --------
    T_history : array (N_space, N_time)
        Temperature evolution
    t_out : array
        Output time array
    """
    
    # Material properties
    if material == 'Si':
        rho = 2330  # kg/m³
        c_v = 700   # J/(kg·K)
    else:
        rho = 2200
        c_v = 600
    
    dx = x[1] - x[0]
    dt = 0.1 * dx**2 / (100e-9 / (rho * c_v))  # Stable timestep
    
    N_space = len(x)
    N_time_steps = int(t[-1] / dt)
    t_out = np.linspace(0, t[-1], len(t))
    
    T = T_init.copy()
    T_history = np.zeros((N_space, len(t_out)))
    T_history[:, 0] = T
    
    # Finite difference stencils
    L_laplacian = diags([-2, 1, 1], [0, -1, 1], shape=(N_space, N_space)) / dx**2
    L_laplacian[0, :] = 0
    L_laplacian[-1, :] = 0
    L_laplacian = lil_matrix(L_laplacian)
    
    L_bilaplacian = L_laplacian @ L_laplacian
    L_bilaplacian = L_bilaplacian.tocsr()
    
    output_idx = 0
    
    for n in range(N_time_steps):
        t_current = n * dt
        
        # Temperature-dependent properties
        kappa_eff = thermal_conductivity_ballistic(T, L_device, material)
        lambda_ph = phonon_mean_free_path(T, material)
        D_eff = np.mean(kappa_eff) / (rho * c_v)
        tau_c = np.mean(lambda_ph) / 3000  # Sound velocity ~3000 m/s
        
        # Power input (interpolate from array)
        P_idx = min(int(t_current / (t[-1] / len(power_density_array))), 
                    len(power_density_array) - 1)
        P = power_density_array[P_idx]
        
        # RHS: D_eff ∇²T + τ_c D_eff ∇⁴T + P/(ρc_v)
        grad2T = L_laplacian @ T
        grad4T = L_bilaplacian @ T
        
        dT = D_eff * grad2T + tau_c * D_eff * grad4T + P / (rho * c_v)
        
        # Forward Euler
        T_new = T + dt * dT
        T_new[0] = T_boundary
        T_new[-1] = T_boundary
        T = T_new
        
        # Store output
        if abs(t_current - t_out[output_idx]) < dt:
            T_history[:, output_idx] = T
            output_idx = min(output_idx + 1, len(t_out) - 1)
    
    return T_history, t_out

# Simulation setup
x = np.linspace(0, 100e-9, 500)  # 0-100 nm channel
t = np.logspace(-12, -9, 100)    # 1 ps to 1 ns

# Initial condition: room temperature
T_init = 300 * np.ones_like(x)

# Power density: thermal spike from ion impact
# Gaussian pulse centered at t=100 fs, width ~50 fs
t_pulse = 100e-15
sigma_t = 50e-15
power_scale = 1e18  # 1 EW/m³ peak power

power_density = power_scale * np.exp(-((t - t_pulse)**2) / (2 * sigma_t**2))

# Solve GK equation
T_history, t_out = solve_guyer_krumhansl_1d(x, t, T_init, 300, power_density, 
                                            100e-9, 1e-12, material='Si')

# Plotting
fig, axes = plt.subplots(2, 2, figsize=(13, 10))

# Panel A: Temperature profiles at different times
time_indices = [0, 20, 50, 80, 99]
colors = plt.cm.hot(np.linspace(0.2, 1, len(time_indices)))

for idx, i in enumerate(time_indices):
    axes[0, 0].plot(x*1e9, T_history[:, i], color=colors[idx], 
                   label=f't={t_out[i]*1e15:.0f} fs', linewidth=2)

axes[0, 0].set_xlabel('Position (nm)', fontsize=11)
axes[0, 0].set_ylabel('Temperature (K)', fontsize=11)
axes[0, 0].set_title('Thermal Spike Evolution', fontsize=12, fontweight='bold')
axes[0, 0].legend(fontsize=9)
axes[0, 0].grid(True, alpha=0.3)

# Panel B: Phonon mean free path vs T
T_range = np.linspace(300, 1000, 100)
lambda_ph = phonon_mean_free_path(T_range, 'Si')
axes[0, 1].semilogy(T_range, lambda_ph*1e9, 'b-', linewidth=2)
axes[0, 1].set_xlabel('Temperature (K)', fontsize=11)
axes[0, 1].set_ylabel('λ_ph (nm)', fontsize=11)
axes[0, 1].set_title('Phonon Mean Free Path', fontsize=12, fontweight='bold')
axes[0, 1].grid(True, alpha=0.3, which='both')

# Panel C: Contour plot of thermal evolution
X_plot, T_plot = np.meshgrid(x*1e9, t_out*1e15)
contour = axes[1, 0].contourf(X_plot, T_plot, T_history.T, levels=20, cmap='hot')
axes[1, 0].set_xlabel('Position (nm)', fontsize=11)
axes[1, 0].set_ylabel('Time (fs)', fontsize=11)
axes[1, 0].set_title('Thermal Spike Contour (Space-Time)', fontsize=12, fontweight='bold')
plt.colorbar(contour, ax=axes[1, 0], label='T (K)')

# Panel D: Peak temperature vs time
T_max_history = np.max(T_history, axis=0)
axes[1, 1].plot(t_out*1e15, T_max_history, 'r-o', linewidth=2, markersize=4)
axes[1, 1].set_xlabel('Time (fs)', fontsize=11)
axes[1, 1].set_ylabel('Peak Temperature (K)', fontsize=11)
axes[1, 1].set_title('Thermal Spike Decay Kinetics', fontsize=12, fontweight='bold')
axes[1, 1].grid(True, alpha=0.3)

plt.tight_layout()
plt.savefig('thermal_spike_phonon.png', dpi=150, bbox_inches='tight')
plt.show()

print("=== Guyer-Krumhansl Non-Fourier Heat Transport Simulation Complete ===")
print(f"Peak temperature: {np.max(T_history):.1f} K")
print(f"Time to cool to <400 K: {t_out[np.where(T_max_history < 400)[0][0]]*1e15:.1f} fs")

## 8. Phonon Drag and Dember Effect

At high thermal gradients, the phonon drag effect causes an enhancement of the Seebeck coefficient:

$$S_{ ext{total}} = S_0 + S_{ ext{drag}}$$

where $S_{ ext{drag}} \propto (\partial au / \partial E)
abla T$ represents momentum transfer from phonons to electrons.

The Dember effect (thermal voltage without applied heat gradient in semiconductors) arises from differential diffusion of electrons and holes under photoexcitation:

$$V_{ ext{Dember}} = \frac{k_B T}{q} \ln\left(\frac{\mu_e}{\mu_h} ight)$$

Both effects are relevant in multi-layered heterostructures where phonon populations in different regions become thermally decoupled.

## 9. Transient Hot Carrier Relaxation

Hot carriers (electrons/holes with $E > E_F + k_B T$) relax via:

1. Optical phonon scattering (picosecond timescale)
2. Acoustic phonon scattering (shorter mean free path)
3. Impact ionization (creates additional carriers)

The hot carrier cooling time:
$$ au_{ ext{cool}} = \hbar \omega_{ ext{opt}} / (E - E_c)$$

For GaAs: $ au_{ ext{cool}} \sim 100$ fs for carriers 100 meV above bandedge, rising to picoseconds for cooler carriers.

## 10. Two-Temperature Model

In metals and heavily doped semiconductors, electrons and lattice temperatures may differ:

$$ ho c_{e} \frac{\partial T_e}{\partial t} = \kappa_e abla^2 T_e - G(T_e - T_l) + P_{ ext{ext}}$$
$$ ho c_l \frac{\partial T_l}{\partial t} = \kappa_l abla^2 T_l + G(T_e - T_l)$$

where $G$ is the electron-phonon coupling constant (~10¹⁷ W/m³·K in metals).

This model predicts transient overshoot of electron temperature far above lattice temperature during ultrafast pulse excitation.

## 11. Thermal Boundary Resistance (Kapitza Resistance)

At interfaces, phonons scatter inelastically, creating a thermal boundary resistance $R_B$:

$$R_B = \frac{1}{C_l v_l} \sqrt{\frac{\pi m_1 m_2}{k_B T(m_1 + m_2)}}$$

where $C_l$ is phonon heat capacity, $v_l$ is sound velocity, and $m_{1,2}$ are reduced masses.

For Si/SiO₂ interface: $R_B \sim 10^{-8}$ m²·K/W, limiting thermal extraction in SOI devices.

## 12. Applications to GAAFET/CFET Thermal Management

Sub-3nm GAA transistors suffer from:
- Reduced contact area for heat extraction
- High power density ($>10$ W/μm²)
- Thermal runaway risk at high bias

Mitigation strategies:
1. Thermal interface layers (TiN, W) with high thermal conductivity
2. Back-gate cooling (heterostructure contacts)
3. Phononic crystals (periodic defects to scatter phonons below critical frequency)
4. Operation at lower $V_{DS}$ (reduces Joule heating, limits frequency)

The balance between performance and thermal stability defines the power-temperature envelope.

Go deeper with CFSGPT

Get AI-powered deep-dives, save terms, and run advanced simulations — free account.

Create Free Account