Awesome
sphinx-hwt
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 HwModule class like this (will add scheme to a html doc).
from hwt.hwModule import HwModule
def explicit_constructor():
return ExampleCls0()
class ExampleCls0(HwModule):
"""
.. 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/HwModule classes with a information about value and type
- hwt-interface - generates a list of IO interfaces of the Interface/HwModule class
- hwt-components - generates a list of components for the HwModule class
- hwt-schematic:
- generate interactive schematic for HwModule instances (= module in verilog, entity + architecutere in VHDL).
- zoom, pan, dynamic colapsing, net-select, searching and filtering
- schematic rendered by d3-hwschematic library
- HwModule instances to graph conversion by hwtGraph library
- generate interactive schematic for HwModule 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