-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #304 from Exabyte-io/feature/SOF-7530
feature/SOF 7530
- Loading branch information
Showing
11 changed files
with
233 additions
and
0 deletions.
There are no files selected for viewing
3 changes: 3 additions & 0 deletions
3
...rostructure-silicon-silicon-dioxide-hafnium-dioxide-titanium-nitride/import-standata.webp
Git LFS file not shown
3 changes: 3 additions & 0 deletions
3
...icon-silicon-dioxide-hafnium-dioxide-titanium-nitride/jl-setup-notebook-si-sio2-hfo2.webp
Git LFS file not shown
3 changes: 3 additions & 0 deletions
3
...e-silicon-silicon-dioxide-hafnium-dioxide-titanium-nitride/jl-setup-notebook-si-sio2.webp
Git LFS file not shown
3 changes: 3 additions & 0 deletions
3
...rostructure-silicon-silicon-dioxide-hafnium-dioxide-titanium-nitride/original-figure.webp
Git LFS file not shown
3 changes: 3 additions & 0 deletions
3
...-silicon-silicon-dioxide-hafnium-dioxide-titanium-nitride/wave-result-hfo2-slab-wave.webp
Git LFS file not shown
3 changes: 3 additions & 0 deletions
3
...ilicon-silicon-dioxide-hafnium-dioxide-titanium-nitride/wave-result-si-sio2-hfo2-tin.webp
Git LFS file not shown
3 changes: 3 additions & 0 deletions
3
...re-silicon-silicon-dioxide-hafnium-dioxide-titanium-nitride/wave-result-si-sio2-hfo2.webp
Git LFS file not shown
3 changes: 3 additions & 0 deletions
3
...ructure-silicon-silicon-dioxide-hafnium-dioxide-titanium-nitride/wave-result-si-sio2.webp
Git LFS file not shown
3 changes: 3 additions & 0 deletions
3
...ucture-silicon-silicon-dioxide-hafnium-dioxide-titanium-nitride/wave-result-tin-slab.webp
Git LFS file not shown
205 changes: 205 additions & 0 deletions
205
...fic/heterostructure-silicon-silicon-dioxide-hafnium-dioxide-titanium-nitride.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,205 @@ | ||
--- | ||
# YAML header | ||
render_macros: true | ||
--- | ||
|
||
# Creating High-k Metal Gate Stack: Si/SiO2/HfO2/TiN | ||
|
||
## Introduction | ||
|
||
This tutorial demonstrates how to create a high-k metal gate stack heterostructure consisting of four materials: Si (substrate), SiO2 (gate oxide), HfO2 (high-k dielectric), and TiN (metal gate). The process involves: | ||
|
||
1. Creating individual slabs for HfO2 and TiN | ||
2. Building the Si/SiO2 interface using strain matching | ||
3. Adding the pre-created slabs sequentially using simple interface builder | ||
|
||
We use the [Materials Designer](../../../materials-designer/overview.md) to create the high-k metal gate stack as shown in the figure below. | ||
|
||
![High-k Metal Gate Stack](/images/tutorials/materials/heterostructures/heterostructure-silicon-silicon-dioxide-hafnium-dioxide-titanium-nitride/original-figure.webp "High-k Metal Gate Stack") | ||
|
||
## 1. Set Up Materials | ||
|
||
First, navigate to Materials Designer and import from [Standata](../../../materials-designer/header-menu/input-output/standata-import.md) the following materials: | ||
|
||
- Silicon (Si) | ||
- Silicon dioxide (SiO2) | ||
- Hafnium dioxide (HfO2) | ||
- Titanium nitride (TiN) | ||
|
||
![Standata Import](/images/tutorials/materials/heterostructures/heterostructure-silicon-silicon-dioxide-hafnium-dioxide-titanium-nitride/import-standata.webp "Standata Import") | ||
|
||
## 2. Create HfO2 and TiN Slabs | ||
|
||
Before building the stack, we need to create properly terminated slabs for HfO2 and TiN. | ||
|
||
### 2.1. Create HfO2 Slab | ||
|
||
More detailed instructions on slab creation can be found in the [SrTiO3 Slab](slab-strontium-titanate.md) tutorial. | ||
|
||
Open `create_slab_with_termination.ipynb` and set parameters: | ||
|
||
```python | ||
# HfO2 slab parameters | ||
MILLER_INDICES = (0, 0, 1) | ||
THICKNESS = 4 # atomic layers | ||
VACUUM = 0.5 # Angstroms | ||
XY_SUPERCELL_MATRIX = [[1, 0], [0, 2]] | ||
USE_ORTHOGONAL_Z = True | ||
USE_CONVENTIONAL_CELL = True | ||
|
||
# Select termination (usually first one is fine) | ||
TERMINATION_INDEX = 0 | ||
``` | ||
|
||
Run the notebook to create the HfO2 slab and pass it to Materials Designer. | ||
|
||
![HfO2 slab](/images/tutorials/materials/heterostructures/heterostructure-silicon-silicon-dioxide-hafnium-dioxide-titanium-nitride/wave-result-hfo2-slab-wave.webp "HfO2 slab") | ||
|
||
### 2.2. Create TiN Slab | ||
|
||
Open another instance of `create_slab_with_termination.ipynb` for TiN: | ||
|
||
```python | ||
# TiN slab parameters | ||
MILLER_INDICES = (0, 0, 1) | ||
THICKNESS = 3 # atomic layers | ||
VACUUM = 10.0 # Angstroms - more vacuum for final layer | ||
XY_SUPERCELL_MATRIX = [[1, 0], [0, 1]] | ||
USE_ORTHOGONAL_Z = True | ||
USE_CONVENTIONAL_CELL = True | ||
|
||
TERMINATION_INDEX = 0 | ||
``` | ||
|
||
Run the notebook to create and pass the TiN slab to Materials Designer. | ||
|
||
![TiN slab](/images/tutorials/materials/heterostructures/heterostructure-silicon-silicon-dioxide-hafnium-dioxide-titanium-nitride/wave-result-tin-slab.webp "TiN slab") | ||
|
||
## 3. Create Si/SiO2 Interface | ||
|
||
### 3.1. Launch ZSL Interface Builder | ||
|
||
Open `create_interface_with_min_strain_zsl.ipynb` and configure: | ||
|
||
```python | ||
MAX_AREA = 200 # Maximum area for strain matching | ||
MAX_AREA_RATIO_TOLERANCE = 0.25 # Maximum area ratio tolerance | ||
MAX_ANGLE_TOLERANCE = 0.15 # Maximum angle tolerance | ||
MAX_LENGTH_TOLERANCE = 0.15 # Maximum length tolerance | ||
|
||
FILM_INDEX = 1 # SiO2 | ||
FILM_MILLER_INDICES = (1, 0, 0) | ||
FILM_THICKNESS = 3 | ||
FILM_XY_SUPERCELL_MATRIX = [[1, 0], [0, 1]] | ||
FILM_VACUUM = 0.0 | ||
FILM_USE_ORTHOGONAL_Z = True | ||
|
||
SUBSTRATE_INDEX = 0 # Si | ||
SUBSTRATE_MILLER_INDICES = (1, 0, 0) | ||
SUBSTRATE_THICKNESS = 4 | ||
SUBSTRATE_XY_SUPERCELL_MATRIX = [[1, 0], [0, 1]] | ||
SUBSTRATE_VACUUM = 5.0 | ||
SUBSTRATE_USE_ORTHOGONAL_Z = True | ||
|
||
INTERFACE_DISTANCE = 2.5 # Angstroms | ||
INTERFACE_VACUUM = 5.0 # Angstroms | ||
TERMINATION_PAIR_INDEX = 0 | ||
``` | ||
|
||
We set a higher tolerances to achieve smaller cell with higher strain of the film (SiO2). | ||
|
||
![Interface Setup](/images/tutorials/materials/heterostructures/heterostructure-silicon-silicon-dioxide-hafnium-dioxide-titanium-nitride/jl-setup-notebook-si-sio2.webp "Interface Setup") | ||
|
||
### 3.2. Create Initial Interface | ||
|
||
Run the notebook to create the Si/SiO2 interface. This is the most critical interface, so we use strain matching to optimize it. | ||
|
||
## 4. Add HfO2 Layer | ||
|
||
### 4.1. Configure Simple Interface Builder | ||
|
||
Open JupyterLite Session again and select the Si/SiO2 interface and HfO2 slab as input materials. | ||
|
||
Open `create_interface_with_no_strain.ipynb` and set: | ||
|
||
```python | ||
# Important: Disable slab creation since we're using pre-created slab | ||
ENABLE_FILM_SCALING = True | ||
CREATE_SLABS = False # We already have our HfO2 slab | ||
|
||
FILM_INDEX = 1 # Pre-created HfO2 slab | ||
SUBSTRATE_INDEX = 0 # Si/SiO2 structure | ||
|
||
# Interface parameters | ||
INTERFACE_DISTANCE = 2.5 # Angstroms | ||
INTERFACE_VACUUM = 0.5 # Angstroms | ||
``` | ||
|
||
Film is the material that will be strained (scaled) to match the substrate. | ||
|
||
![HfO2 Interface Setup](/images/tutorials/materials/heterostructures/heterostructure-silicon-silicon-dioxide-hafnium-dioxide-titanium-nitride/jl-setup-notebook-si-sio2-hfo2.webp "HfO2 Interface Setup") | ||
|
||
### 4.2. Add HfO2 | ||
|
||
Run the notebook to add the pre-created HfO2 slab to the Si/SiO2 structure. | ||
|
||
![Si/SiO2/HfO2](/images/tutorials/materials/heterostructures/heterostructure-silicon-silicon-dioxide-hafnium-dioxide-titanium-nitride/wave-result-si-sio2-hfo2.webp "Si/SiO2/HfO2") | ||
|
||
## 5. Add TiN Layer | ||
|
||
### 5.1. Configure Final Layer Addition | ||
|
||
Similar to steps in Section 4, we add the TiN layer to the Si/SiO2/HfO2 stack. | ||
|
||
Use `create_interface_with_no_strain.ipynb` again: | ||
|
||
```python | ||
# Keep slabs disabled | ||
ENABLE_FILM_SCALING = True | ||
CREATE_SLABS = False # Using pre-created TiN slab | ||
|
||
FILM_INDEX = 1 # Pre-created TiN slab | ||
SUBSTRATE_INDEX = 0 # Si/SiO2/HfO2 structure | ||
|
||
# Final interface parameters | ||
INTERFACE_DISTANCE = 2.5 # Angstroms | ||
INTERFACE_VACUUM = 10.0 # Final vacuum spacing | ||
``` | ||
|
||
### 5.2. Complete the Stack | ||
|
||
Run the notebook to add the TiN layer and complete the stack. | ||
|
||
![Final Stack](/images/tutorials/materials/heterostructures/heterostructure-silicon-silicon-dioxide-hafnium-dioxide-titanium-nitride/wave-result-si-sio2-hfo2-tin.webp "Final Stack") | ||
|
||
The user then can [save or download](../../../materials-designer/header-menu/input-output.md) the material in Material JSON format or POSCAR format. | ||
|
||
## Interactive JupyterLite Notebook | ||
|
||
The following JupyterLite notebook demonstrates the process of creating target material. Select "Run" > "Run All Cells". | ||
|
||
{% with origin_url=config.extra.jupyterlite.origin_url %} | ||
{% with notebooks_path_root=config.extra.jupyterlite.notebooks_path_root %} | ||
{% with notebook_name='specific_examples/heterostructure_high_k_metal_gate_stack.ipynb' %} | ||
{% include 'jupyterlite_embed.html' %} | ||
{% endwith %} | ||
{% endwith %} | ||
{% endwith %} | ||
|
||
## References | ||
|
||
1. [QuantumATK tutorial](https://docs.quantumatk.com/tutorials/hkmg_builder/hkmg_builder.html) | ||
|
||
2. **D. A. Muller et al.** | ||
"The electronic structure at the atomic scale of ultrathin gate oxides" | ||
Nature 399, 758–761 (1999) | ||
[DOI: 10.1038/21602](https://doi.org/10.1038/21602) | ||
|
||
3. **J. Robertson** | ||
"High dielectric constant gate oxides for metal oxide Si transistors" | ||
Reports on Progress in Physics 69, 327 (2006) | ||
[DOI: 10.1088/0034-4885/69/2/R02](https://doi.org/10.1088/0034-4885/69/2/R02) | ||
|
||
## Tags | ||
|
||
`slab-creation`, `interfaces`, `high-k`, `metal-gate`, `semiconductor`, `heterostructure`, `strain-matching`, `Si`, `SiO2`, `HfO2`, `TiN` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters