A visual guide to simulating a TSV from etch to polish
I built a simplified process traveler with ViennaPS. It follows one via through the main geometry changes and shows where each handoff can fail.
What is this code useful for?
It is a teaching tool and a research scaffold. It can:
- carry one geometry through several simulated process steps;
- show how an upstream shape affects later coatings, fill, and polish;
- measure width, depth, coverage, voids, and material connections; and
- test whether a model can produce both known failures and passing controls.
That makes the code useful for learning the workflow and designing better simulation studies. It does not convert model settings into a fabrication recipe.
What is being modeled?
A through-silicon via, or TSV, is a vertical electrical connection through silicon. This teaching model keeps the core sequence and leaves out the many cleaning steps, films, and controls used in a real fabrication flow.
The key idea is continuity. The etched shape becomes the input to the liner step. That coated shape becomes the input to barrier and seed deposition. The same geometry then moves into copper fill and polishing.
How ViennaPS fits into the loop
ViennaPS represents material boundaries and moves those boundaries with a process model. Each step uses the same pattern.
materials and boundaries
deposition or removal
check and save
The implementation calls ps.Process(domain, model, duration) and then process.apply(). The updated domain is passed to the next step.
The useful knobs are step-specific
A knob matters only when its effect can be measured. These inputs are model settings, not direct recipes for gas flow, plating current, or polish pressure.
| Step | Inputs to explore | Feedback to measure |
|---|---|---|
| Mask and etch | Opening width, taper, cycles, time, particle direction | Top, middle, and bottom width; depth; bow |
| Liner | Sticking and deposited amount | Minimum thickness, deep coverage, remaining opening |
| Barrier and seed | Conformality, direction, deposited amount | Continuity, lower-wall coverage, remaining opening |
| Copper | Transport and growth selectivity | Void topology, floor-versus-wall growth, overburden |
| Polish | Material removal rates and duration | Field clearance, plug connection, stop-layer survival |
What can go wrong?
How to build the study correctly
Start with the measurement, not the sweep.
- Define the defect and the measurement that can detect it.
- Test one known failure and one prescribed passing control.
- Carry the same upstream geometry into fair downstream comparisons.
- Control random seeds and repeat noisy runs.
- Map the boundary where the result changes from pass to fail.
- Change the model when tuning cannot represent the missing physics.
What I would take away
The most useful result is not a single passing run. It is a workflow that can explain why a run passed, show what failed, and state what the model cannot yet predict.
That is the purpose of the traveler: teach the major TSV handoffs while keeping the evidence and limits visible.
Explore the interactive traveler
Change the etched shape, inspect common failures, and explore the copper response map.
Open the guide View the repository