Skip to main content

HDL converter, based on GHDL, Yosys, and the plugins ghdl-yosys-plugin and yosys-slang

Project description

HDLconv

HDL converter (between VHDL, SystemVerilog and/or Verilog), based on GHDL, Yosys, Synlig and the plugins ghdl-yosys-plugin and yosys-slang. It relies on Docker and PyFPGA containers.

Known limitation: the files must be located either under the $HOME directory or under the current working directory ($PWD) for Docker to be able to find and access them.

  • vhdl2vhdl: converts from a newer VHDL to VHDL'93 (using ghdl).
  • vhdl2vlog: converts from VHDL to Verilog (backends: ghdl or yosys).
  • slog2vlog: converts from SystemVerilog to Verilog (frontends: slang, synlig or yosys).

Documentation

usage: vhdl2vhdl [-h] [-v] [--no-docker] [-g GENERIC VALUE] [-a ARCH]
                 [-f FILENAME] [-o PATH] -t TOPNAME
                 FILE[,LIBRARY] [FILE[,LIBRARY] ...]

VHDL to VHDL

positional arguments:
  FILE[,LIBRARY]        VHDL file/s (with an optional LIBRARY specification)

optional arguments:
  -h, --help            show this help message and exit
  -v, --version         show program's version number and exit
  --no-docker           do not use Docker (use system tools instead)
  -g GENERIC VALUE, --generic GENERIC VALUE
                        specify a top-level Generic (can be specified multiple
                        times)
  -a ARCH, --arch ARCH  specify a top-level Architecture
  -f FILENAME, --filename FILENAME
                        resulting file name [<TOPNAME>.<EXT>]
  -o PATH, --odir PATH  output directory [results]
  -t TOPNAME, --top TOPNAME
                        specify the top-level of the design
usage: vhdl2vlog [-h] [-v] [--no-docker] [--backend TOOL] [-g GENERIC VALUE]
                 [-a ARCH] [-f FILENAME] [-o PATH] -t TOPNAME
                 FILE[,LIBRARY] [FILE[,LIBRARY] ...]

VHDL to Verilog

positional arguments:
  FILE[,LIBRARY]        VHDL file/s (with an optional LIBRARY specification)

optional arguments:
  -h, --help            show this help message and exit
  -v, --version         show program's version number and exit
  --no-docker           do not use Docker (use system tools instead)
  --backend TOOL        backend tool [ghdl]
  -g GENERIC VALUE, --generic GENERIC VALUE
                        specify a top-level Generic (can be specified multiple
                        times)
  -a ARCH, --arch ARCH  specify a top-level Architecture
  -f FILENAME, --filename FILENAME
                        resulting file name [<TOPNAME>.<EXT>]
  -o PATH, --odir PATH  output directory [results]
  -t TOPNAME, --top TOPNAME
                        specify the top-level of the design
usage: slog2vlog [-h] [-v] [--no-docker] [--frontend TOOL] [-p PARAM VALUE]
                 [-d DEFINE VALUE] [-i PATH] [-f FILENAME] [-o PATH] -t
                 TOPNAME
                 FILE [FILE ...]

SystemVerilog to Verilog

positional arguments:
  FILE                  System Verilog file/s

optional arguments:
  -h, --help            show this help message and exit
  -v, --version         show program's version number and exit
  --no-docker           do not use Docker (use system tools instead)
  --frontend TOOL       frontend tool [slang]
  -p PARAM VALUE, --param PARAM VALUE
                        specify a top-level Parameter (can be specified
                        multiple times)
  -d DEFINE VALUE, --define DEFINE VALUE
                        specify a Define (can be specified multiple times)
  -i PATH, --include PATH
                        specify an Include Path (can be specified multiple
                        times)
  -f FILENAME, --filename FILENAME
                        resulting file name [<TOPNAME>.<EXT>]
  -o PATH, --odir PATH  output directory [results]
  -t TOPNAME, --top TOPNAME
                        specify the top-level of the design

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hdlconv-0.2.0.tar.gz (19.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

HDLconv-0.2.0-py3-none-any.whl (21.2 kB view details)

Uploaded Python 3

File details

Details for the file hdlconv-0.2.0.tar.gz.

File metadata

  • Download URL: hdlconv-0.2.0.tar.gz
  • Upload date:
  • Size: 19.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for hdlconv-0.2.0.tar.gz
Algorithm Hash digest
SHA256 ac1646988f191356baccdf74d5ccff942b5b44b2261e491a7aaecff523f44c16
MD5 3adf4e7c9af425eae397fef1262285f0
BLAKE2b-256 3c84901227ba088418b168874a627f33f4da0c85170f3ec41da5043f415197ed

See more details on using hashes here.

File details

Details for the file HDLconv-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: HDLconv-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 21.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for HDLconv-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9cf30903b75d2d02ee7f2adb4202f30930a7fea2e8a181e804df12a49b0c94a1
MD5 ddb9921fb0b0e156f108b62b616d85c0
BLAKE2b-256 adff7200bbc2c0ec8a2e1dff0bd4d38455a3fba3bf2aece2ed160fab7a5c2e84

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page