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