The Simulation Program with Integrated Circuit Emphasis (SPICE), introduced in 1973, laid the foundation for transistor-level netlist representation. Over the decades, numerous SPICE dialects emerged, each tailored to specific needs but sharing core semantics. This article presents EDACurry, an innovative, open-source framework designed to simplify and automate the creation, translation, and manipulation of transistor-level netlists across SPICE-based languages such as Eldo and Spectre. By leveraging a unified internal Abstract Syntax Tree (AST), EDACurry bridges syntactical differences while maintaining semantic consistency, enabling efficient manipulation workflows. The framework supports custom operations, including design space exploration, defect model injection, and subcircuit wrapping, all accessible through Python. Demonstrated applications highlight its versatility in analog design workflows, offering integration with commercial and open-source simulators. With EDACurry, analog designers gain a powerful tool to support netlist manipulation tasks, improving productivity and fostering innovation in circuit design. The entire framework is publicly available on GitHub: https://github.com/esd-univr/EDACurry.
EDACurry: A Multi-Language Framework to Create, Translate, and Manipulate Transistor-Level Netlists
Nicola Dall’Ora
;Enrico Fraccaroli;Franco Fummi
2025-01-01
Abstract
The Simulation Program with Integrated Circuit Emphasis (SPICE), introduced in 1973, laid the foundation for transistor-level netlist representation. Over the decades, numerous SPICE dialects emerged, each tailored to specific needs but sharing core semantics. This article presents EDACurry, an innovative, open-source framework designed to simplify and automate the creation, translation, and manipulation of transistor-level netlists across SPICE-based languages such as Eldo and Spectre. By leveraging a unified internal Abstract Syntax Tree (AST), EDACurry bridges syntactical differences while maintaining semantic consistency, enabling efficient manipulation workflows. The framework supports custom operations, including design space exploration, defect model injection, and subcircuit wrapping, all accessible through Python. Demonstrated applications highlight its versatility in analog design workflows, offering integration with commercial and open-source simulators. With EDACurry, analog designers gain a powerful tool to support netlist manipulation tasks, improving productivity and fostering innovation in circuit design. The entire framework is publicly available on GitHub: https://github.com/esd-univr/EDACurry.I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.



