Hacker News new | ask | show | jobs
Show HN: Naja EDA – A Python Package for Easy Electronic Design Automation (pypi.org)
2 points by xtofalex 551 days ago
We are happy to introduce Naja EDA, a Python package designed to streamline post-synthesis Electronic Design Automation (EDA) workflows. Naja EDA offers a robust framework that enables both software and hardware developers to efficiently navigate and manipulate electronic designs.

Key Features:

- Comprehensive Netlist Exploration:

  . Navigate netlist hierarchies with ease.

  . Access multiple levels of detail, including bit-level and bus-level granularity.

  . Explore instance-by-instance or utilize flattened views at the primitives level.

  . View per-instance connections or comprehensive equipotential networks.
- Engineering Change Order (ECO) Transformations:

  . Apply and manage design changes seamlessly.
- Rapid Prototyping:

  . Experiment with new EDA concepts using an intuitive API.
- Custom EDA Tool Development:

  . Build tailored tools to address specific challenges without relying on proprietary EDA software.
Installation: pip install najaeda

Simple example - print all instances in the design:

    def print_netlist(instance):
        for child_instance in instance.get_child_instances():
            print(f"{child_instance}:{child_instance.get_model_name()}")
            print_netlist(child_instance)
For more examples and detailed documentation, visit:

- https://pypi.org/project/najaeda/

- https://github.com/najaeda/naja

We would love to hear your feedback and learn more about how we can make naja EDA useful for software and hardware designers !

Looking forward to your thoughts!