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 Loading

  1. pyEDAA.ProjectModel Public

    An abstract model of EDA tool projects.

    Python 14 1

  2. pyEDAA.Reports Public

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

    Python 14 1

  3. pyEDAA.IPXACT Public

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

    Python 22 11

  4. pyEDAA.CLITool Public

    EDA Tool CLI Abstraction Layer.

    Python 6

  5. pyEDAA.OutputFilter Public

    Post-processing of EDA Tool outputs.

    Python 4

  6. pyEDAA.Launcher Public

    Python 4

Repositories

Showing 10 of 15 repositories
  • pyEDAA.CLITool Public

    EDA Tool CLI Abstraction Layer.

    Python 6 0 1 3 Updated Apr 23, 2025
  • pyEDAA.IPXACT Public

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

    Python 22 11 2 4 Updated Apr 23, 2025
  • pyEDAA.Reports Public

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

    Python 14 1 1 6 Updated Apr 21, 2025
  • pyEDAA.UCIS Public

    Unified Coverage Interoperability Standard (UCIS)

    Python 10 0 1 6 Updated Apr 21, 2025
  • pyEDAA.OSVVM Public

    Parsing and Converting OSVVM Specific Data Formats.

    Python 2 0 2 5 Updated Apr 21, 2025
  • pyEDAA.ProjectModel Public

    An abstract model of EDA tool projects.

    Python 14 1 26 7 Updated Apr 21, 2025
  • Python 4 0 0 4 Updated Apr 18, 2025
  • pySystemRDLModel Public

    An abstract language model of SystemRDL written in Python.

    Python 3 0 0 5 Updated Apr 13, 2025
  • pySVModel Public

    An abstract language model of SystemVerilog (incl. Verilog) written in Python.

    Python 9 0 1 (1 issue needs help) 5 Updated Apr 13, 2025
  • pyEDAA.OutputFilter Public

    Post-processing of EDA Tool outputs.

    Python 4 0 0 5 Updated Apr 13, 2025