Skip to main content

Dependencies

  • lark-parser

Enabling

Add extension in conf.py:

extensions = [ 'sphinx_verilog_domain' ]

Usage

Module headers (non-ANSI-style only for now):

.. verilog::module:: module Top(a, b);

Port declarations:

.. verilog:port:: input wire [31:0] a, b;

Parameter declarations:

.. verilog:parameter:: parameter logic param_name_05 = 1, param_name_05_b = 2;

Custom name for use in references:

.. verilog:module:: module \35(4p3|) (z);
    :refname: module_escaped

References:

Reference to :verilog:ref:`Top`
Reference to :verilog:ref:`module_escaped` - links to ``\\35(4p3|)``

Nesting:

.. verilog:module:: module Top1(a, b, c);

    .. verilog:port:: input a;

        Description of port ``a``

    .. verilog:port:: input b;

        Description of port ``b``

    .. verilog:module:: module Nested(a);

        .. verilog:port:: output a;

            Description of port ``a`` in ``Nested``

        Reference to module ``Top1``'s port ``a``: :verilog:ref:`Top1.a`.

Namespaces

There are three directives for changing current Verilog scope:

  • .. verilog:namespace:: A::B - sets current scope to A::B. Using $root as an argument or using the directive without argument at all sets global namespace.

  • .. verilog:namespace-push:: C::D - sets current scope to C::D relatively to current scope

  • .. verilog:namespace-pop:: - restores scope which was active before previous namespace-push was called. If there is no matching namespace-push, scope is set to global scope.

Example:

.. verilog:namespace:: A::B
.. verilog:port:: input inside_a_b;
.. verilog:namespace-push:: C::D
.. verilog:port:: input inside_a_b_c_d;
.. verilog:namespace-pop::
.. verilog:port:: input inside_a_b_again;
.. verilog:namespace::
.. verilog:port:: input in_global_namespace;

Development

To create and open the development environment with all system and python packages use:

make env
source env/conda/bin/activate sphinx-verilog-domain

Metadata

Release files for sphinx-verilog-domain 0.2.post21

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for sphinx-verilog-domain 0.2.post21
File Size Uploaded Provenance
sphinx-verilog-domain-0.2.post21.tar.gz 10.8 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for sphinx-verilog-domain 0.2.post21
File Interpreter ABI Platform
sphinx_verilog_domain-0.2.post21-py3-none-any.whl Python 3 none any Details

Total release size: 23.6 kB

Release files / sphinx-verilog-domain-0.2.post21.tar.gz

Download URL sphinx-verilog-domain-0.2.post21.tar.gz
Size 10.8 kB
Tags Source
SHA-256 checksum
How to use checksums
4d96be81de6e5c1523c5161daf2eec5618c271c80682de0418558d9f650977d9
BLAKE2b-256 checksum
How to use checksums
6ff067eac66d37e202e2fdcdfbf6e73514379e4f1e6187c56ab1d0b3e38ff12f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.15.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.5.2

Release files / sphinx_verilog_domain-0.2.post21-py3-none-any.whl

Download URL sphinx_verilog_domain-0.2.post21-py3-none-any.whl
Size 12.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
cfb6b63d55bc8e217e60cb4e9c2cf8b1ccd88c18ab98a4b09a84640c06d4e703
BLAKE2b-256 checksum
How to use checksums
92abfa7ea5e87a98e0eb07f3037da01d5f89643753402bbcae8e0b94d1d7e2c3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.15.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.5.2

Security for sphinx-verilog-domain 0.2.post21

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.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page