Skip to main content

Sourcecode on GitHub Sourcecode License Documentation Documentation License Gitter
PyPI PyPI - Status PyPI - Python Version
GitHub Workflow - Build and Test Status Libraries.io status for latest release Codacy - Quality Codacy - Coverage Codecov - Branch Coverage

Provide unified interfaces to execute EDA tools via CLI from Python, agnostic to any specific configuration format/object.

Main Goals

  • Provide a pythonic solution to construct command line calls for EDA tools based on pyTooling.CLIAbstraction
  • Launch CLI tools and connect to STDIn, STDOUT, STDERR for realtime output post-processing.

Features

  • Support multiple native platforms: Linux, macOS, Windows.
  • Support nested platforms like MSYS2 with MinGW32, MinGW64, URCT64, Clang64, ...
  • Find CLI programs either in PATH or specify an exact installation location.
  • Generate CLI options in correct order.
  • Generate correctly escaped CLI options.

Supported Tools

  • Aldec
    • 🚧 Active-HDL
    • 🚧 Riviera-PRO
  • Altera
    • 🚧 Quartus
    • 🚫 ModelSim Altera (Student) Edition
  • Cadence
    • 🙋 need a list of tools
  • IntelFPGA
    • 🚧 Quartus
    • 🚫 ModelSim Altera (Student) Edition
  • Lattice
    • 🚧 Diamond
    • 🚫 Active-HDL Lattice Edition
    • 🚫 ModelSim Lattice Edition
  • MentorGraphics
    • ✅ ModelSim DE/SE/PE
    • 🚫 QuestaSim
  • SiemensEDA
    • 🚫 ModelSim DE/SE/PE
    • 🚫 QuestaSim
  • Synopsys
    • 🙋 need a list of tools
  • Xilinx
    • 🚧 ISE
    • 🚧 Vivado
    • 🚫 Vivado-SDK
    • 🚫 Vitis
  • System Tools
    • ✅ Git
  • Open Source
    • ✅ GHDL
    • ✅ GTKWave
  • Yosys
    • 🙋 need a list of tools

Legend:
✅ → implemented and tested
🚧 → under test
🚫 → planned but not yet implemented ⇒ accepting PRs
🙋 → need help

Examples

from pyEDAA.CLITool.GHDL import GHDL

tool = GHDL()
tool[tool.CommandAnalyze] = True
tool[tool.FlagVHDLStandard] = "08"
tool[tool.FlagSynopsys] = True
tool[tool.FlagRelaxed] = True
tool[tool.FlagExplicit] = True
tool[tool.FlagMultiByteComments] = True
tool[tool.FlagLibrary] = "lib_Test"

print(f"Calling GHDL: {tool}")
# Calling GHDL: "ghdl" "analyze" "--std=08" "-fsynopsys" "-frelaxed" "-fexplicit" "--work=lib_Test" "--mb-comments"

Consumers

This layer is used by:

References

Contributors

License

This Python package (source code) is licensed under Apache License 2.0.
The accompanying documentation is licensed under Creative Commons - Attribution 4.0 (CC-BY 4.0).


SPDX-License-Identifier: Apache-2.0

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyedaa_clitool-0.4.4.tar.gz (27.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pyedaa_clitool-0.4.4-py3-none-any.whl (37.9 kB view details)

Uploaded Python 3

File details

Details for the file pyedaa_clitool-0.4.4.tar.gz.

File metadata

  • Download URL: pyedaa_clitool-0.4.4.tar.gz
  • Upload date:
  • Size: 27.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.6

File hashes

Hashes for pyedaa_clitool-0.4.4.tar.gz
Algorithm Hash digest
SHA256 b8cd03991880e14d1b03c91e7b44ec588155ff19ac0ce2890998269ea742cc59
MD5 04cd4288e1423d66b98292d221f556aa
BLAKE2b-256 619247ce7d3cfa698b760b9c844f74d69b851956dc22870d8123b7fed92692ad

See more details on using hashes here.

File details

Details for the file pyedaa_clitool-0.4.4-py3-none-any.whl.

File metadata

  • Download URL: pyedaa_clitool-0.4.4-py3-none-any.whl
  • Upload date:
  • Size: 37.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.6

File hashes

Hashes for pyedaa_clitool-0.4.4-py3-none-any.whl
Algorithm Hash digest
SHA256 0a3af246a71b1add917dab028ebed2bfd95021326466363bcb721066ea8f7b7a
MD5 ba2eb0071e5dcfb70e8a6579e1f4b010
BLAKE2b-256 4ec03b38a5056e68485a40308ec77deb1faa659f856f76a57c6c2969d8d7f6ed

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.4.4 This release

2 files

0.4.3

2 files

0.4.2

2 files

0.4.1

2 files

0.3.11

2 files

0.3.10

2 files

0.3.9

2 files

0.3.8

2 files

0.3.6

2 files

0.3.4

2 files

0.3.2

2 files

0.3.1

2 files

0.3.0

2 files

0.2.1

2 files

0.2.0

2 files

0.1.0

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page