PuEDA
A collection of Python tools for micro-Electronics Design Automation.
PuEDA in an acronym, but also stands for a conjugate for of the Spanish verb "poder" which means "can". The project was born as part of a group of scripts to test the cryptech ecdsa256 IP.
Install (from pypi)
pip3 install pueda
Install (from github)
pip3 install git+https://github.com/bat52/pueda.git@master
Example of simple simulation with Icarus Verilog
from pueda.edalize import icarus
icarus(simname='hello', top='hello_tb', src_dirs = ['./hello'])
Example of simulation with Icarus Verilog
from pueda.edalize import icarus
icarus(simname='counter', top='counter_tb', src_dirs = ['./counter/rtl','./counter/tb'], iverilog_options=['-g2005-sv'])
Example of simulation with pyverilator
from pueda.pyverilator import pyverilator_wrapper
pv = pyverilator_wrapper(fname='./counter/rtl/counter.v', src_dirs=['./counter/rtl'], command_args = [], dump_en = False)
for _ in range(16):
pv.sim.clock.tick()
print('count = %d' % pv.sim.io.count)
assert(pv.sim.io.count == 0)
Example of synthesys with yosys
from pueda.yosys import yosys
yosys(top='counter', src_dirs = ['./counter/rtl'], synth_en=True)
# gate count available in ./work_yosys/yosys.log
Common functions
from pueda.common import *
# list2str : convert a list of strings into a single string
# get_source_files_alldir : returns a file list from a list of directories
# get_source_files: gets all rtl source files from a directory
# get_inc_list: returns a string appending -I to the input list of directories
# get_remote_files: donwload files from an internet url
# vcd_view: visualize a vcd or fst file with gtkwave
# get_clean_work: generate a clean work direactory for a specific tool
# write_file_lines: print a file to screen
Metadata
Release files for pueda 0.1.12
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| pueda-0.1.12.tar.gz | 16.7 kB | Without provenance | Details for pueda-0.1.12.tar.gz |
Release files / pueda-0.1.12.tar.gz
| Download URL | pueda-0.1.12.tar.gz |
|---|---|
| Size | 16.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
16b3eed917487e1660328cbaaef7aa8a1f31aab7660b826fcedc5863c23523e4
|
|
BLAKE2b-256 checksum How to use checksums |
8c1da20e23f5b2f8ad696fac1ef606cacc18a16c012bd00c346e9bccb7af6e72
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.10.12
|
Security for pueda 0.1.12
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.