Atomic & Crystal Structure of Semiconductors

From atoms to wafers. Learn atomic structure (protons, neutrons, electrons, atomic number, shells and valence electrons), covalent bonding in group-IV semiconductors, crystalline vs polycrystalline vs amorphous solids, lattice, unit cell and basis, the diamond-cubic (Si, Ge) and zinc-blende (GaAs) and wurtzite (GaN) structures, crystal planes and directions with Miller indices, wafer orientations (100)/(111), and crystal defects — vacancies, interstitials, substitutional impurities, dislocations, stacking faults and grain boundaries — and their effect on devices. Python computes silicon's atom density, mass density, bond length, plane densities and interplanar spacings.

Device behaviour starts with how atoms are arranged. Silicon's four valence electrons form four covalent bonds in a perfectly repeating 3-D lattice; this regularity creates the energy bands that make semiconductors work.

Crystal orientation affects oxidation rate, carrier mobility and etching, while defects create unwanted energy states that trap carriers and cause leakage.

An analogy

A crystal is like a perfectly tiled floor stretching for kilometres: each tile (unit cell) is identical, so you can describe the whole floor by one tile and the pattern. Defects are missing, extra or cracked tiles — each one a place where something can go wrong.

Atoms and bonding

An atom has a nucleus of protons (positive, count = atomic number Z) and neutrons, surrounded by electrons in shells. Chemistry and conduction are governed by the outermost (valence) electrons. Group IV elements (C, Si, Ge) have four valence electrons and form four covalent bonds; III-V compounds (Ga + As) share electrons to average four per atom.

Crystalline, polycrystalline, amorphous

Order matters:

Miller indices

To name a plane, take its intercepts with the axes in units of a, invert them and clear fractions: a plane cutting x at 1 and parallel to y and z is (100). Directions [uvw] are vector components; in cubic crystals [hkl] is perpendicular to (hkl). Families use {100} and ⟨100⟩. Wafers are specified by surface orientation (e.g. (100)) and marked with flats or notches showing a ⟨110⟩ direction.

Defects

Point defects: vacancies, self-interstitials, substitutional impurities (dopants, intentionally) and unwanted metals (Fe, Cu, Au) that create deep traps. Line defects: dislocations (from thermal stress or lattice mismatch in epitaxy). Planar: stacking faults, grain boundaries, twin boundaries. Volume: precipitates (oxygen in Cz silicon, used for gettering). Defects increase leakage, reduce minority-carrier lifetime and cause reliability failures — hence clean rooms and gettering.

Formulas

Worked example: Miller indices

Given: Plane intercepts x = 1, y = 2, z = ∞

Find: (hkl).

Answer: (210)

Worked example: GaAs atom density

Given: a = 5.653 Å, 8 atoms/cell

Find: N.

Answer: 4.43 × 10²² cm⁻³

Worked example: Spacing

Given: Si (220)

Find: d.

Answer: 1.92 Å

From atom to device

  Si atom (Z = 14): 1s² 2s² 2p⁶ 3s² 3p²  → 4 valence electrons
        │ sp³ bonding: each atom shares electrons with 4 neighbours (tetrahedral, 109.5°)
        ▼
  Diamond-cubic lattice (two interpenetrating FCC lattices offset by a/4 along [111])
        ▼
  Single-crystal ingot (Czochralski) → wafer sliced along (100) → devices

Each silicon atom completes an octet by sharing one electron with each of four neighbours. The diamond-cubic arrangement is FCC with a two-atom basis; GaAs has the same geometry with alternating Ga and As atoms (zinc blende), and GaN uses the hexagonal wurtzite structure.

Silicon lattice numbers

import math
# Silicon diamond-cubic lattice: atom density, mass density, bond length, plane densities and spacing
a = 5.431e-8                                       # lattice constant (cm)
N = 8 / a**3
print(f"atoms per cm^3 = 8/a^3 = {N:.3e}")
print(f"mass density = {N*28.0855/6.02214e23:.3f} g/cm^3")
print(f"nearest-neighbour (bond) distance = sqrt(3)*a/4 = {math.sqrt(3)*a/4*1e8:.3f} Angstrom")
planes = {"(100)": 2 / a**2, "(110)": 4 / (math.sqrt(2) * a**2), "(111)": 4 / (math.sqrt(3) * a**2)}
for p, d in planes.items():
    print(f"surface atom density {p}: {d:.2e} atoms/cm^2")
for hkl in [(1, 0, 0), (1, 1, 0), (1, 1, 1)]:
    d = a / math.sqrt(sum(i * i for i in hkl))
    print(f"interplanar spacing d{hkl} = {d*1e8:.3f} Angstrom")
print(f"a 1 mm^3 cube holds {N*1e-3:.2e} atoms; a 1e16 cm^-3 doping replaces 1 atom in {N/1e16:.1e}")
# atoms per cm^3 = 8/a^3 = 4.994e+22
# mass density = 2.329 g/cm^3
# nearest-neighbour (bond) distance = sqrt(3)*a/4 = 2.352 Angstrom
# surface atom density (100): 6.78e+14 atoms/cm^2
# surface atom density (110): 9.59e+14 atoms/cm^2
# surface atom density (111): 7.83e+14 atoms/cm^2
# interplanar spacing d(1, 0, 0) = 5.431 Angstrom
# interplanar spacing d(1, 1, 0) = 3.840 Angstrom
# interplanar spacing d(1, 1, 1) = 3.136 Angstrom
# a 1 mm^3 cube holds 4.99e+19 atoms; a 1e16 cm^-3 doping replaces 1 atom in 5.0e+06

Silicon packs 5 × 10²² atoms per cm³, giving 2.33 g/cm³. The (110) plane is the densest, (100) the sparsest — one reason (100) wafers give the lowest interface-trap density for MOSFETs while (111) was historically used for bipolar devices. A typical doping level replaces only one silicon atom in millions.

Common mistakes

Applications

Key takeaways

Going further