Simple script for verilog/systemverilog module templates generation
Project description
Templates generator: make Verilog/SystemVerilog module template by parameters and ports list
Usage
Verilog-style generation:
vloginit index_file.dat
SystemVerilog-style generation:
vloginit -sv index_file.dat
Mnemonics list
module name : %file_name
include file : `<name>
parameter : $<name> # <value> # <param_type> # <width> # <array width>
localparam : ?<name> # <value> # <param_type> # <width> # <array width>
port : @<direction> # <name> # <width> # <port_type> # <array width>
comment list : "/", "//"
comment RTL : "*"
Ports description mnemonics
<width> default `1`. Number's or parameter name - both is possible. If there is no previously defined parameter - this parameter will defined.
<port type> default `logic`. Define required mnemonic, in case it necesary
<array width> Number or parameter's name - both is possible. Only 1-D arrays. TODO: N-D arrays support
<direction> = [ i : input ,
o : output ,
io : inout
]
<port_type> = [ w/W : wire ,
l/L : logic ,
b/B : bit ,
r/R : reg ,
ws/Ws : wire signed ,
ls/Ls : logic signed,
bs/Bs : bit signed ,
rs/Rs : reg signed ,
i/I : int ,
user_type
]
<param_type> = [ l/L : logic ,
b/B : bit ,
r/R : reg ,
i/I : int ,
u/U : untyped ,
user_type
]
Parameters/local parameters mnemonics
<value> default "1". Number's or parameter name - both is possible. If there is no previously defined parameter - this parameter will defined.
<param type> default "int". Define required mnemonic, in case it necesary
<width> default "1". Number's or parameter name - both is possible. If there is no previously defined parameter - this parameter will defined.
<array width> Number or parameter's name - both is possible. Only 1-D arrays. TODO: N-D arrays support
Comments mnemonics
comment list:
String started with '/' or '//'. This string will be excluded from vloginit parsing
comment RTL:
String started with '*'. This string will be translated into RTL comment line.
In case using only default values for all fields possible to leave it blank. But separation symbol '#' must be inserted
Examples
Input and results files are accessible ./examples
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file vloginit-0.0.3.tar.gz.
File metadata
- Download URL: vloginit-0.0.3.tar.gz
- Upload date:
- Size: 9.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cb101568288ba8e42667bb4abfcb41323fb4b32c5dd826d8e1c7b2b837144cbe
|
|
| MD5 |
53c10895a1c2c804d78191dffb7fa775
|
|
| BLAKE2b-256 |
1bf75c2e7aaa89497666f3f43139b22d25841dee36365177f597a635fd4f12e5
|
File details
Details for the file vloginit-0.0.3-py3-none-any.whl.
File metadata
- Download URL: vloginit-0.0.3-py3-none-any.whl
- Upload date:
- Size: 9.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e21ce5e85ff8afebb09475431038735a9dc977d7f83fd6832195009aa4355cc8
|
|
| MD5 |
e3fd247e9ae9e2a8cf08a0ec892d4b92
|
|
| BLAKE2b-256 |
c8a17d1f650232acafcd6ab73f2f1236815555a72cfe7b07264bf5813ef82605
|