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 395
  • Win 326
  • Mac 16
  • Linux 53
Oct 8 Oct 7 Oct 6 Oct 5 Oct 4 Oct 3 Oct 2 Oct 1 Sep 30 Sep 29 Sep 28 Sep 27 Sep 26 Sep 25 Sep 24 Sep 23 Sep 22 Sep 21 Sep 20 Sep 19 Sep 18 Sep 17 Sep 16 Sep 15 Sep 14 Sep 13 Sep 12 Sep 11 Sep 10 Sep 9 Sep 8 Sep 7 Sep 6 Sep 5 Sep 4 Sep 3 Sep 2 Sep 1 Aug 31 Aug 30 Aug 29 Aug 28 Aug 27 Aug 26 Aug 25
Windows 0 0 0 0 0 0 0 0 1 0 0 5 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 1
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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Linux 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 0 0 0 0 0 0 0 0 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