Vyges Loom

vyges-em-ir

Power-integrity sign-off — solve the power-distribution network for IR-drop and electromigration against a budget, from one declarative job. Digital, analog and mixed-signal power grids alike — it's grid physics, not a standard-cell construct.

View source on GitHub →

What it does

Used by: teams enforcing power budgets before tape-out, not after surprises.

vyges-em-ir takes the design's power-distribution network (PDN) and solves it — reporting IR-drop (how much supply voltage the grid loses) and checking electromigration (EM) current limits against a budget. The per-switch energy seam from vyges-char feeds its dynamic solve, so power integrity is consistent with the cells' characterized behavior. It reports both steady-state and dynamic IR-drop. This turns power integrity from a late, manual sign-off step into a deterministic, CI-gated check.

design + PDN + IR/EM budget  ──►  vyges-em-ir  ──►  IR-drop map + EM check

One declarative job

An .emir job file declares the design, the PDN, and the IR/EM budget. Standard CLI: --json, --quiet, --verbose — and like the timing engine, it can fail CI on a budget violation. No bespoke setup; the same declarative shape as the rest of the spine.

One declarative job in; one standard sign-off artifact out. Exits non-zero on violations — designed to gate CI, not generate PDFs.

Try it

$ vyges install loom   # one-time: fetch the Loom suite into ~/.vyges/bin
$ vyges loom em-ir demo   # instant — analyze a built-in PDN → IR/EM
$ vyges loom em-ir run block.emir -o block.rpt   # analyze → report
$ vyges loom em-ir run block.emir --fail-on-violation   # exit 3 if over budget (CI gate)

Open core · Apache-2.0

Open and runnable today, and inside VyBox Sley. The per-foundry calibration plugins (NDA) stay private. See all the engines & the data spine →