Skip to content
@edaa-org

EDA²

Electronic Design Automation Abstraction

Electronic Design Automation Abstraction (EDA²) is a conceptual model for characterising the abstraction layers in Electronic Design Automation (EDA) projects based on Hardware Description Languages (HDLs). Its goal is the interoperability of diverse tools and languages, through documented interfaces.

EDA² aims to provide reference Python implementations and schemas of commonly needed software layers for (open source) EDA tooling/frameworks to reduce code duplication and reinventions of existing algorithms and data structures. Each layer solves the problems at a different abstraction level, hence, they are organised as an stack.

Although all the resources provided through EDA² can be used together, that is not a requirement. Third parties are expected to (re)use only the subset of layers that allows them to reduce the maintenance burden of their codebase, while preserving the functionality and UX expected by their user base. In fact, pyEDAA modules are based on Object Oriented Programming (OOP) patterns, to allow enhancements through inheritance and overriding.

See Conceptual Model and Frequently Asked Questions (FAQ).

Pinned

  1. pyEDAA.ProjectModel pyEDAA.ProjectModel Public

    An abstract model of EDA tool projects.

    Python 10 1

  2. pyEDAA.Reports pyEDAA.Reports Public

    Proposal to define an XML-based logging format for outputs from EDA tools and logging libraries.

    Python 12

  3. pyEDAA.IPXACT pyEDAA.IPXACT Public

    An IP-XACT DOM for IEEE 1685-2014 in Python.

    Python 17 11

  4. pyEDAA.CLITool pyEDAA.CLITool Public

    EDA Tool CLI Abstraction Layer.

    Python 4

  5. pyEDAA.OutputFilter pyEDAA.OutputFilter Public

    Post-processing of EDA Tool outputs.

    Python 3

  6. pyEDAA.Launcher pyEDAA.Launcher Public

    3

Repositories

Showing 10 of 13 repositories

Top languages

Loading…

Most used topics

Loading…