NAME

Physics::Etch - model wet and dry semiconductor etch processes

SYNOPSIS

use Physics::Etch;

# Patterned copper, wet ferric-chloride etch
my $cu = Physics::Etch->wet_etch( 'copper',
    thickness      => 500,          # nm
    temperature    => 40,           # degC
    feature_cd     => 3000,         # nm mask opening
    mask_thickness => 1500,         # nm resist
    overetch       => 0.30,
);
print $cu->report;

# Silicon-nitride RIE
my $sin = Physics::Etch->dry_etch( 'silicon_nitride',
    thickness  => 200, feature_cd => 250,
    power => 250, pressure => 25, bias => 300,
);
print $sin->report;

DESCRIPTION

Physics::Etch is a facade over the etch models Physics::Etch::WetEtch (isotropic, Arrhenius-activated) and Physics::Etch::DryEtch (anisotropic plasma / RIE). It ships a small database of materials and etch recipes so a working process can be built with one call, then customised via overrides.

Factory methods

Physics::Etch->wet_etch($material, %overrides)
Physics::Etch->dry_etch($material, %overrides)

Build a process object from the recipe database. %overrides may set thickness, temperature, feature_cd, mask, mask_thickness, substrate, overetch, uniformity, time, etchant (to pick a specific chemistry), and any rate parameter (rate, Ea, power, pressure, bias, anisotropy, ...).

Physics::Etch->material($name, thickness => $nm)

Return a Physics::Etch::Material from the database.

Physics::Etch->recipes(%filter) / find_recipe / material_names

Introspect the built-in database.

DISCLAIMER

Rates, activation energies and selectivities are illustrative teaching values, not process specifications. Always calibrate against your own tool and chemistry.