You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1.9 KiB
1.9 KiB
KyuPy - Pythonic Processing of VLSI Circuits
KyuPy is a Python package for processing and analysis of non-hierarchical gate-level VLSI designs. It contains fundamental building blocks for research software in the fields of VLSI test, diagnosis and reliability:
- Efficient data structures for gate-level circuits and related design data.
- Partial lark parsers for common design files like bench, gate-level Verilog, standard delay format (SDF), standard test interface language (STIL), design exchange format (DEF).
- Bit-parallel gate-level 2-, 4-, and 8-valued logic simulation.
- GPU-accelerated high-throughput gate-level timing simulation.
- High-performance through the use of numpy and numba.
Getting Started
KyuPy is available in PyPI. It requires Python 3.10 or newer, lark, and numpy. Although optional, numba should be installed for best performance. numba-cuda is required for GPU/CUDA acceleration. If numba is not available, KyuPy will automatically fall back to slow, pure Python execution.
The Jupyter Notebook Introduction.ipynb contains some useful examples to get familiar with the API.
Development
To work with the latest pre-release source code, clone the KyuPy GitHub repository.
- Using
pip: Runpip install -e .within your local checkout to make the package available in your Python environment. The source code comes with tests that can be run withpytest. - Using
uv: Runuv run pytestwithin your local checkout to get started.