Skip to content

Nic30/sphinx-hwt

Repository files navigation

sphinx-hwt

CircleCI PyPI version Coverage Status Documentation Status Python version

Extension for Sphinx document generator. Add automatically generated schemes and other visual documentation of hardware. Currently mainly for HWT library (but VHDL,Verilog -> HWT is possible).

Live demo is documentation of hwtLib library, this library contains many components. The schematic is in documentation of compoents for example there in documentation of CRC generator.

Installation

Install as standard python package, using pip. If you have NPM installed javascript in package will be updated.

pip3 install sphinx-hwt

sphinx-hwt package provides sphinx_hwt extension for sphinx doc. gen. In order to use this extension you have to register in in your conf.py sphinx doc. configuration.

extensions = ['sphinx_hwt']

From now Sphinx will be able to use directives from sphinx-hwt to render schematics and others.

Usage

Add hwt-schematic directive in docstring of Unit class like this (will add scheme to a html doc).

from hwt.synthesizer.unit import Unit

def explicit_constructor():
    return ExampleCls0()

class ExampleCls0(Unit):
    """
    .. hwt-schematic::

    or

    .. hwt-schematic:: explicit_constructor

    There are also other directives, read the feature list below.
    """

Feature list

  • hwt-params - generates a list of hwt Params for Interface/Unit classes with a information about value and type
  • hwt-interface - generates a list of IO interfaces of the Interface/Unit class
  • hwt-components - generates a list of components for the Unit class
  • hwt-schematic:
    • generate interactive schematic for Unit instances (= module in verilog, entity + architecutere in VHDL).
  • hwt-autodoc: hwt-params, hwt-interface, hwt-components and hwt-schematic at once

Similar software

  • symbolator - Python, hdl component symbol generator also for sphinx

About

Sphinx extension for visual documentation of hardware written in HWT

Resources

License

Stars

Watchers

Forks

Packages

No packages published