Revolution EDA is a new generation of schematic and symbol editor targeting custom integrated circuit design with integrated simulation and plotting capabilities.
- Advanced Symbol Creation: Create symbols with both common symbol attributes and instance parameters. Instance parameters can be Python functions for dynamic parameter calculation.
- Automatic Symbol Generation: Generate symbols automatically from schematics and Verilog-A modules with support for circles, lines, rectangles, and arches.
- Verilog-A Integration: Clear separation between model and instance parameters for Verilog-A symbols.
- JSON-Based File Format: Human-readable JSON format allows easy inspection and editing with text editors.
- Configuration-Driven Netlisting: Config view support similar to commercial tools for choosing simulation views.
- Hierarchical Netlisting: Full hierarchical netlisting capability with Xyce simulator support.
- Python-Powered Labels: Labels support Python functions enabling professional PDK development.
- Layout Editor: Full-featured hierarchical layout editor with support for rectangles, polygons, paths, pins, labels, vias (single and array) and python-based parametric layout cells. Includes layer management (selectibility and visibility management), and GDS import/export capabilities.
- Comprehensive Library Management: Familiar library browser for creating, renaming, copying, and deleting libraries, cells, and views.
- Persistent Configuration: Save and restore configuration parameters.
- Comprehensive Logging: Error, warning, and info message logging.
Revolution EDA features a modular plugin architecture that enables extensible functionality. There are already two plugins available, revedasim and revedaplot. These plugins are not open-source, emphasizing the fact that Revolution EDA allows the independent Electronic Design Automation Software vendors a base they can build upon. Please inquire at Revolution EDA website
There are already two plugins available developed by Revolution Semiconductor for Revolution EDA:
- Xyce Simulator Integration: Full support for Xyce circuit simulator
- Parameter Sweeps: Multi-dimensional parameter sweep capabilities
- Analysis Types: Support for DC, AC, transient, noise, and harmonic balance analyses
- Output Management: Flexible output signal selection and processing
- Process Management: Efficient simulation job management
- Very Fast: Can handle very large datasets.
- Imports both Raw and Ascii file output: Can uniformly handle raw and ascii file formats generated by Xyce and other circuit simulators.
- Interactive Waveform Viewer: Advanced plotting with zoom, pan, and measurement tools
- Multi-Plot Support: Combined and separate plot views
- Parameter Sweep Visualization: Automatic plotting of parametric simulation results
- Export Capabilities: High-quality plot export functionality
- Python 3.12 or 3.13
- Poetry dependency management tool if installing from source.
pip install revolution-edaAfter installation, start the program with:
reveda# Clone the repository
git clone https://github.com/eskiyerli/revolution-eda.git
cd revolution-eda
# Install dependencies
poetry install
# Run the application
poetry run revedaTo use preliminerary IHP PDK, clone the ihp_pdk repository preferably to a directory:
git clone https://github.com/eskiyerli/ihp_pdk.gitIf you would like to use preliminary IHP PDK, make sure that REVEDA_PDK_PATH variable in
.env file points to where it is downloaded. The .env file could be under package
directoryFor example, you had cloned the
repository
under
the same directory where revolution-eda repo is cloned, .env file content could be:
REVEDA_PDK_PATH=../ihp_pdk
You could also clone example_libraries repo to have some ideal elements and IHP sg13g2_pr
library. The second library also three layout parametric cells included for rsil,
cap_cmim
and sg13_lv_nmos. There is no guarantee given that these parametric cells are error-free
and
can be used with the relevant IHP process.
Once again, the user can clone the relevant repository to download the example libraries:
git clone https://github.com/eskiyerli/exampleLibraries.gitUser Library Path Editor to add the paths to downloaded libraries to library browser.
- Some icons by Yusuke Kamiyamane. Licensed under a Creative Commons Attribution 3.0 License.