Metadata-Version: 2.1
Name: vloginit
Version: 0.0.2
Summary: Simple script for verilog/systemverilog module templates generation
Home-page: https://gitlab.com/vborshch/vloginit
Author: Vladislav Borshch, Shekhalev Denis
Author-email: borchsh.vn@mail.com, diod2003@list.ru
License: MIT
Project-URL: Bug Tracker, https://gitlab.com/vborshch/vloginit/issues
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`
        
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.6
Description-Content-Type: text/markdown
