EMIR¶
EMIR is a research project, provided as is, with no warranty or guarantee of accuracy. It is your responsibility to test and verify its results for your process, tools and design before relying on them.
Electromigration (EM) and IR-drop screening of extracted analog layout, built to be driven by an AI agent. EMIR reads the resistor network of each net (a DSPF; on SKY130, magic extracts one from the GDS), your PDK's EM limits and the currents (a Spectre, HSPICE, Xyce or ngspice simulation, or DC values). It says which wire segments and vias carry more current than the process allows, how far each supply drops, and what to change: widen this wire to that width, add that many cuts.
Screening, not sign-off. EMIR finds EM and IR problems early and says where to look. Foundry-qualified EM/IR analysis remains the sign-off flow.

How EMIR fits a flow, with the agent driving each stage.
A simulated run reads every branch current of the RC netlist (rcc), so every metric is checked exactly: avg, rms and peak EM, static and dynamic IR. DC currents give a screen of a current budget (avg = rms = peak). Method and accuracy has the method and the evidence.
Three ways in¶
- An AI agent. Point Claude Code, Codex, Cursor or any agent at the repository: it
reads
AGENTS.md, asksemir nextwhat to run, branches on stable error codes and relaysemir report. MCP clients useemir mcp. - The command line.
emir selftest,emir next,emir check,emir run,emir report: Getting started. - Virtuoso. An EMIR menu and an Explorer that highlights the worst segments on the layout, read-only (UNVERIFIED until checked on site): Cadence.
The pages¶
| page | for |
|---|---|
| Getting started | install, prove the install, the first run |
| Method and accuracy | what EMIR checks, rcc and DC currents, how exact it is, what it leaves out |
| Simulators | Spectre, HSPICE, Xyce and ngspice, and emir verify-sim on your machine |
| Process files and extraction | your PDK's limits (from its files or typed by hand), the DSPF, magic on SKY130 |
| Cadence | PVS, Quantus, Spectre and Virtuoso |
| Reference | every command and option (generated), with the codes and exit statuses |
EMIR runs on Linux with Python 3.10 or newer; its core needs only numpy, SciPy and PyYAML, and no licensed tool. It is licensed under the MIT License. Cadence, Virtuoso, Spectre, Quantus and PVS are trademarks of Cadence Design Systems, Inc.; Calibre is a trademark of Siemens; HSPICE and StarRC are trademarks of Synopsys. EMIR is not affiliated with or endorsed by any of them.