vyges-em-ir — power integrity
Part of the Vyges Loom suite. Install once with
vyges install loom, then runvyges loom em-ir. It’s also a standalonevyges-em-irbinary on your PATH (the integration contract for flow authors).
vyges-em-ir takes the design’s power-distribution network (PDN) and solves it —
reporting IR-drop (supply voltage lost across the grid) and checking
electromigration (EM) current limits against a budget. Its dynamic solve is
fed by the per-switch energy from vyges-char.
Run it
vyges install loom # one-time: fetch the Loom suite
vyges loom em-ir demo # instant: 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)
vyges loom em-ir check block.emir # validate the job
See the full CLI reference (generated from --help).
Where it sits
design + PDN + IR/EM budget → IR-drop map + EM check. Turns power integrity from a late, manual sign-off step into a deterministic, CI-gated check. See the data spine.
Digital and analog / mixed-signal
The solve is G·V = I on a generic conductance matrix — there is no standard-cell or
Liberty assumption in the physics, only resistors, pads and per-node currents. Besides the DEF
path, the engine reads a generic .pdn resistor-network description (used when def: is
empty), so a hand-built analog / mixed-signal supply mesh solves exactly as a digital PDN
does. The examples/analog_bias/ job is a .pdn mesh with pads and analog op-point load
currents standing in for the per-instance digital activity.
vyges loom em-ir run examples/analog_bias/analog_bias.emir # analog bias mesh → IR-drop + EM
Power-integrity (IR / EM) applies to any grid; the only difference is where the node currents come from — digital switching activity or an analog operating point. Scope here is physical power-integrity; analog functional / timing sign-off is out of scope (that leans on external SPICE / behavioral tools).
Source & releases
- Repo: https://github.com/vyges-tools/em-ir
- Binaries: https://github.com/vyges-tools/em-ir/releases
- Apache-2.0. Per-foundry calibration plugins are separate (NDA).