这是一个 SublimeLinter 的子插件, 提供了 xvlog
/xvhdl
的接口. xvlog
/xvhdl
由 Vivado Simulator (XSim) 提供. xvlog
被用于 "Verilog" 和 "SystemVerilog" 文件 , xvhdl
被用于 "VHDL" 文件.
在安装该插件前需要先安装 SublimeLinter.
请使用 Package Control 安装该插件.
使用该插件前, 需要保证 xvlog
/xvhdl
已经安装在系统中. 当你安装了 Vivado Design Suite 后, 他们将出现在 Vivado 安装目录下 PATH_TO_VIVADO/VIVADO_VERSION/bin
.
为了 xvlog
/xvhdl
能被 SublimeLinter 正确执行, 你必须确保 SublimeLinter 能够找到他们的路径. 你可以在环境变量中配置 PATH, 也可以在 SublimeLinter 中设置, 详见 troubleshooting PATH configuration.
Sublime 不支持 Verilog/SystemVerilog/VHDL 语法高亮. 你需要安装 Sublime Text Verilog, Sublime Text SystemVerilog 和 Sublime Text VHDL Mode 插件来实现.
- SublimeLinter settings: http://sublimelinter.readthedocs.org/en/latest/settings.html
- Linter settings: http://sublimelinter.readthedocs.org/en/latest/linter_settings.html
参数可以在 linter settings 文件或 project settings 文件中进行设置:
-
使用 linter settings:
// 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}}}", } }, }
-
使用 Project settings (会覆盖 linter setttings 的同名参数):
// .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" ] } }
在使用
xvlog
的-i [include] <directory_name>
选项等与工程相关的选项时, 建议各个工程各自使用 Project settings; 其他选项建议使用全局的 linter settings. -
备注
-
xvlog_sv
等价于带--sv
选项的xvlog
, 专门为 SystemVerilog 打造. -
args
为传递给xvlog/xvhdl
的参数--relax
: 放松语法检查规则, Vivado 中默认开启该选项-i
: 指定`include
语句的检索目录, 对多个目录需分别设置- 更多选项请查看 UG900, 或在命令行中使用
xvlog/xvhdl --help
.
-
work_dir
为xvlog/xvhdl
的运行目录- 由于运行目录下会生成
.dir
.log
.pb
等目录或文件, 故上述参考设置中将其优先设为$TEMP
, 即操作系统临时文件夹, 当TEMP
不存在时 (对于 Windows, 这是系统自带的环境变量), 才会依次选择后续目录.
- 由于运行目录下会生成
-
xvlog
for Verilog file:
xvlog_sv
for SystemVerilog file
xvhdl
for VHDL file