ctrl+shift+p filters: :st2 :st3 :win :osx :linux
Browse

Sublime​Linter-contrib-xsim

by Mei Zihao ST3

Vivado Simulator (XSim) xvlog/xvhdl plugin for SublimeLinter. Linting for Verilog/SystemVerilog and VHDL.

Details

Installs

  • Total 422
  • Win 346
  • Mac 17
  • Linux 59
Jan 21 Jan 20 Jan 19 Jan 18 Jan 17 Jan 16 Jan 15 Jan 14 Jan 13 Jan 12 Jan 11 Jan 10 Jan 9 Jan 8 Jan 7 Jan 6 Jan 5 Jan 4 Jan 3 Jan 2 Jan 1 Dec 31 Dec 30 Dec 29 Dec 28 Dec 27 Dec 26 Dec 25 Dec 24 Dec 23 Dec 22 Dec 21 Dec 20 Dec 19 Dec 18 Dec 17 Dec 16 Dec 15 Dec 14 Dec 13 Dec 12 Dec 11 Dec 10 Dec 9 Dec 8
Windows 0 0 0 0 0 0 0 1 0 0 0 2 1 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 2 0 0 0 1 0 3 0 0 0 0 0 2 1 1 0
Mac 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Linux 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0

Readme

Source
raw.​githubusercontent.​com

SublimeLinter-contrib-xsim

GitHub tag (latest SemVer) Project license GitHub stars

English | 简体中文

This linter plugin for SublimeLinter provides an interface to xvlog/xvhdl - Verilog/SystemVerilog/VHDL compilers provided with Vivado Simulator (XSim). xvlog will be used with “Verilog” and “SystemVerilog” files , xvhdl with “VHDL” files.

Installation

SublimeLinter must be installed in order to use this plugin.

Please use Package Control to install the linter plugin.

Before installing this plugin, you must ensure that xvlog/xvhdl are installed on your system. Once you install Vivado Design Suite, they will be in the directory PATH_TO_VIVADO/VIVADO_VERSION/bin.

In order for xvlog/xvhdl to be executed by SublimeLinter, you must ensure that its path is available to SublimeLinter. The docs cover troubleshooting PATH configuration.

Verilog/SystemVerilog/VHDL syntax highlight is not natively supplied by Sublime Text. You may install Sublime Text Verilog, Sublime Text SystemVerilog and Sublime Text VHDL Mode to do the job.

Settings

Passing arguments to xvlog/xvlog_sv/xvhdl

Arguments can be passed in a linter settings file or set in a project settings file:

  • Using linter settings file:
// SublimeLinter Settings - User
   {
       "linters": {
           "xvlog": {
               "args": ["--relax"],
               "working_dir": "${TEMP:${project_path:${folder:$file_path}}}",
           },
           "xvlog_sv": {
               "args": ["--relax"],
               "working_dir": "${TEMP:${project_path:${folder:$file_path}}}",
           },
           "xvhdl": {
               "args": ["--relax"],
               "working_dir": "${TEMP:${project_path:${folder:$file_path}}}",
           }
       },
   }
  • Using Project specific settings:

    // .sublime-project
    {
        "folders":
        [
            {
                "path": "."
            }
        ],
        "settings": {
            // SublimeLinter-contrib-xsim
            "SublimeLinter.linters.xvlog.args":[
                "-i", "$project_path/PATH_TO_HEADER_0",
                "-i", "$project_path/PATH_TO_HEADER_1",
                "--relax"
            ],
            "SublimeLinter.linters.xvlog_sv.args":[
                "-i", "$project_path/PATH_TO_HEADER_0",
                "-i", "$project_path/PATH_TO_HEADER_1",
                "--relax"
            ],
            "SublimeLinter.linters.xvhdl.args":[
                "--relax"
            ]
        }
    }
    

    It is recommended to use project specific settings when using xvlog with -i [include] <directory_name> command option.

  • Remarks

    • xvlog_sv is equal to xvlog with --sv command option on, which is specifically made for SystemVerilog files.
    • args is command option passed to xvlog/xvhdl
      • --relax: Relax strict HDL language checking rules, which is default settting of Vivado.
      • -i: Specify directories to be searched for files included using Verilog `include. Use -i|--include for each specified search directory
      • For more information please check UG900, or using xvlog/xvhdl --help.
    • work_dir is working directory xvlog/xvhdl
      • Since .dir .log .pb folders or files will be generated in working directory, so I set $TEMP (i.e. temporary directory in Operating System) as working directory, when TEMP is not exist, the following directory will be selected.

Demo

xvlog for Verilog file:

xvlog

xvlog_sv for SystemVerilog file

xvlog_sv

xvhdl for VHDL file

xvhdl

Acknowledgment