Metadata-Version: 2.1
Name: pyha
Version: 0.0.14
Summary: Pyha
Home-page: https://github.com/gasparka/pyha
Author: Gaspar Karm
Author-email: gkarm@live.com
License: Apache Software License 2.0
Keywords: pyha
Platform: UNKNOWN
Provides-Extra: dev
Requires-Dist: redbaron (==0.7.1)
Requires-Dist: scipy (==1.1.0)
Requires-Dist: numpy (==1.15.1)
Requires-Dist: parse (==1.8.4)
Requires-Dist: six (==1.11.0)
Requires-Dist: tqdm (==4.25.0)
Requires-Dist: scikit-image (==0.14.0)
Requires-Dist: matplotlib (==3.0.0)
Requires-Dist: wurlitzer (==1.0.2)
Provides-Extra: dev
Requires-Dist: bumpversion (==0.5.3); extra == 'dev'
Requires-Dist: wheel (==0.31.1); extra == 'dev'
Requires-Dist: watchdog (==0.9.0); extra == 'dev'
Requires-Dist: flake8 (==3.5.0); extra == 'dev'
Requires-Dist: coverage (==4.5.1); extra == 'dev'
Requires-Dist: Sphinx (==1.8.0); extra == 'dev'
Requires-Dist: sphinx-rtd-theme (==0.4.1); extra == 'dev'
Requires-Dist: twine (==1.11.0); extra == 'dev'
Requires-Dist: sphinx-autobuild (==0.7.1); extra == 'dev'
Requires-Dist: snakeviz (==1.0.0); extra == 'dev'
Requires-Dist: asv (==0.3); extra == 'dev'
Requires-Dist: nbdime (==1.0.2); extra == 'dev'
Requires-Dist: nbval (==0.9.1); extra == 'dev'
Requires-Dist: pytest (==3.8.0); extra == 'dev'

====
pyha
====

.. image:: https://img.shields.io/pypi/v/pyha.svg
    :target: https://pypi.python.org/pypi/pyha

.. image:: https://img.shields.io/travis/gasparka/pyha.svg
    :target: https://travis-ci.org/gasparka/pyha

.. image:: https://pyup.io/repos/github/gasparka/pyha/shield.svg
    :target: https://pyup.io/repos/github/gasparka/pyha/
    :alt: Updates

.. image:: https://coveralls.io/repos/github/gasparka/pyha/badge.svg?branch=develop
    :target: https://coveralls.io/github/gasparka/pyha?branch=develop

* Free software: Apache Software License 2.0

Install
-------

From pip:

``pip install --user pyha``

RTL/NETLIST level simulations require `Docker <https://docs.docker.com/install/>`_ :

``curl -fsSL https://get.docker.com | sh``

Follow the instructions to add yourself to the 'docker' group.


Features
--------

* Describe hardware in Python and convert to VHDL
* Cycle-accurate and fast simulator
* Debuggable in Python – very useful as Python and VHDL sources are highly correlated
* Simple testing framework by pairing pytest and cocotb
* Builtin fixed-point and complex types


Quick start
-----------

Take a look at the cores implemented in Pyha, each of them have a Notebook to ease the experimentation.
For example, start with the moving-average core:

`Python source <https://github.com/gasparka/pyha/blob/develop/pyha/cores/filter/moving_average/moving_average.py>`_

`Notebook <https://github.com/gasparka/pyha/blob/develop/pyha/cores/filter/moving_average/moving_average.ipynb>`_

`VHDL conversion <https://github.com/gasparka/pyha/blob/develop/pyha/cores/filter/moving_average/example_conversion/src/MovingAverage_0.vhd>`_

And then see how the 'dc-removal' is built by reusing the 'moving-average' component:

`Python source <https://github.com/gasparka/pyha/blob/develop/pyha/cores/filter/dc_removal/dc_removal.py>`_

`Notebook <https://github.com/gasparka/pyha/blob/develop/pyha/cores/filter/dc_removal/dc_removal.ipynb>`_

`VHDL conversion <https://github.com/gasparka/pyha/blob/develop/pyha/cores/filter/dc_removal/example_conversion/src/DCRemoval_0.vhd>`_

Documentation
-------------

Under construction!

