Amirhossein Zahedi
Electrical Engineering
Micro- and Nanoelectronics
This project is designed by Prof. Bijan Rashidian and his TA Reza Khoddami for the Fabrication Course, Winter 2026.
This repository presents a comprehensive TCAD-based analysis of phosphorus diffusion and ion implantation in silicon using Silvaco ATHENA.
The project investigates the trade-offs between:
- Junction depth (Xj)
- Sheet resistance (Rs)
- Surface concentration (Ns)
under various processing conditions, including:
- Pre-deposition time
- Drive-in time
- Temperature
- Ion implantation energy
- Implant dose
The work includes process simulation and sensitivity analysis.
The main goals of this project are:
- Simulate constant-source pre-deposition diffusion at 900°C.
- Perform drive-in diffusion and analyze the time evolution of doping profiles.
- Extract and analyze:
- Junction depth (Xj)
- Sheet resistance (Rs)
- Surface concentration (Ns)
- Study scaling effects:
- Rs → Rs/m (m = 2,3,4,10)
- Xj → nXj (n = 2,3,4,10)
- Propose realistic, hard, and impossible device targets.
- Implement multi-step diffusion to achieve challenging targets.
- Replace diffusion with ion implantation (≤ 200 keV).
- Compare diffusion vs implantation approaches.
- Perform sensitivity analysis.
- Verify results using published semiconductor processing literature.
- Study meshing strategies and numerical stability.
- Substrate: ⟨100⟩ Silicon
- Background doping: Boron 1×10¹⁵ cm⁻³
- Pre-deposition temperature: 900°C
- Dopant: Phosphorus
- Surface concentration set to solid solubility at 900°C
Simulations include:
- Constant-source pre-deposition
- Limited-source drive-in diffusion
- Multi-step diffusion sequences
Time sweeps: 10, 30, 90, 300 minutes
Extracted parameters:
- Xj
- Rs
- Ns
Implantation simulations include:
- Energies up to 200 keV
- Dose optimization
- Post-implant annealing
- Nitride barrier analysis
Secondary effects observed:
- Transient Enhanced Diffusion (TED)
- Dopant clustering
- Channeling
- Concentration-dependent diffusion
- Junction smoothing
Studied dependence of:
- Xj vs drive-in time
- Rs vs temperature
- Ns vs pre-deposition time
Key observations:
- Xj ∝ √(Dt)
- Rs is inversely related to integrated dopant dose
- Temperature exponentially affects the diffusion coefficient
Simulation results were compared against published processing data for:
- BJT diffusion
- MOS well formation
- Solar cell phosphorus diffusion
Findings:
- Profile shapes matched analytical solutions.
- Absolute values slightly deviated due to:
- Concentration-dependent diffusivity
- Solid solubility modeling
- Mesh resolution
- Numerical solver tolerances
- Boundary conditions
- Clustering models
Silvaco solves nonlinear PDEs using discretization and Newton-based numerical solvers, which introduce realistic physical modeling beyond ideal analytical solutions.
Meshing is critical for:
- Accurate Xj extraction
- Correct Rs calculation
- Stability in high-gradient regions
Strategies used:
- Fine mesh near the surface
- Adaptive refinement near junction
- Coarser mesh in bulk
- Controlled aspect ratio
Improper meshing leads to:
- Artificial junction shifts
- Oscillatory concentration profiles
- Convergence failures
Targets categorized as:
- Possible
- Hard/Expensive
- Impossible
Strategies evaluated:
- Increasing pre-dep time
- Multi-step diffusion
- Switching to implantation
- Barrier layer introduction
Multi-step diffusion provided better thermal budget control.
| Feature | Diffusion | Implantation |
|---|---|---|
| Profile shape | Error function | Gaussian |
| Dose control | Indirect | Precise |
| Thermal budget | High | Lower |
| Damage | Minimal | Requires anneal |
| Depth control | Limited | Accurate |
Implantation provides improved Xj–Rs trade-off control.
- Silvaco ATHENA
- TonyPlot
- MATLAB
- Junction depth scales approximately with √t.
- Rs does not scale linearly with diffusion time.
- Increasing Xj while maintaining constant Rs is physically constrained.
- Solver and meshing strongly influence simulation accuracy.
- Multi-step diffusion improves manufacturability.
- Open DeckBuild.
- Load input file from
/silvaco. - Run simulation.
- Use TonyPlot for extraction.
- Post-process data in
/analysis.