vyges-thermal — on-chip thermal
Part of the Vyges Loom suite. Install once with
vyges install loom, then runvyges loom thermal. It’s also a standalonevyges-thermalbinary on your PATH (the integration contract for flow authors).
vyges-thermal lands the design’s power on the die as heat and solves the steady
state — reporting the peak temperature, the hotspot location, per-block
temperatures, and a PASS/FAIL against a temperature limit. It is the thermal dual of
vyges-em-ir: the same grid solve, temperature where em-ir has voltage. The
per-block power comes from vyges-power; with temperature-dependent leakage
it runs the electro-thermal loop to a fixed point (leakage heats the die, the hotter
die leaks more), so you get the real operating temperature — closing
char → power → em-ir → thermal → power.
Run it
vyges install loom # one-time: fetch the Loom suite
vyges loom thermal demo # instant: built-in floorplan → temp + heat map
vyges loom thermal run block.thermal -o block.rpt # analyze → report
vyges loom thermal run block.thermal --fail-on-violation # exit 3 if over the limit (CI gate)
vyges loom thermal check block.thermal # validate the job
Job file
A .thermal job declares the die, the solver grid, the material parameters
(k_si, thickness_um, theta_ja), the ambient, and the temperature limit; a
floorplan: (.flp) places the blocks and their power (with an optional per-block
leakage portion for the coupling). Standard CLI: --json, --quiet, --verbose — and
like the rest of the suite it fails CI (exit 3) when the peak exceeds t_limit_c.
See the CLI reference for the full flag list, and
Job-file formats for the .thermal / .flp shapes.
Digital and analog / mixed-signal
The solve is G_th·ΔT = P on a tile grid built from a generic .flp block list — each block
is just name x y w h power, with no notion of where the power came from. It is fully
decoupled from the power source, so an analog / mixed-signal floorplan lands its heat and
solves exactly as a digital one does. The examples/pa/ job is an RF power-amplifier
floorplan whose concentrated dissipation produces a classic analog PA hotspot.
vyges loom thermal run examples/pa/pa.thermal # RF power-amplifier floorplan → temp + PA hotspot
Heat flow is heat flow; the block powers can come from digital activity or an analog op-point. Scope here is physical thermal analysis; analog functional / timing sign-off is out of scope (that leans on external SPICE / behavioral tools).
Correlation baseline: HotSpot (the canonical open on-chip thermal simulator) — there is no thermal tool inside OpenLane/OpenROAD, so vyges-thermal fills that gap.