一款合适的编辑器能够大大提高我们代码的编写速度,而 sublime 就是一款非常强大的编辑器,它在拥有丰富的插件的同时,也具备非常美型的外观。
sublime 是一款免费的编辑器,虽然不进行购买的话会时不时地提示购买,但是无视就好。
在官网下载即可(https://www.sublimetext.com/)
接下来推荐几个比较好用的插件
首先是语法插件,由于 systemverilog 能够完全向下兼容 verilog,这里推荐插件 systemverilog,直接搜索即可,关于插件的具体使用可以在插件的网站查看手册:https://sv-doc.readthedocs.io/en/latest/。这个插件能够支持语法高亮,代码补全,自动例化连线,设计层次查看等功能。不仅能够提高 verilog 的编码速度,也支持 sv 中验证部分的语法,比如查看类的成员、方法、继承属性等。
例如,自动例化,按下 crtl+shift+p,在搜索框中输入 inm,选择例化功能,回车后选择模块,再回车,如果目标模块具有参数化设计,按照提示配置即可。
第二款插件是 SublimeLinter-contrib-modelsim,安装此插件之前需要安装 SublimeLinter 插件作为依赖,安装完成后,在编辑 sv,v 的文件时,就会实时地检查语法错误,当出现语法错误时,在行号前显示红点,将鼠标放置在红点前就会显示错误信息。值得注意的一点是,插件是通过调用 vlog 进行编译从而语法检查,而文件的编译范围就是我们在 sublime 中打开的文件,如果因为找不到模块而提示错误,那么只需要打开模块的文件,插件就能够读取到这个文件。
第三款插件是 Verilog Gadget,能够自动生成简单的 testbench 模板。安装以后右键,选择 generate testbench,将会打开一个新的文件并生成 tb 代码,crtl+s 保存即可。这个插件在我们需要简单的 tb 时非常实用,另外该插件提供插入头部说明的注释,选择 insert header 即可。
第四款插件是 insert nums,我们在写 verilog 时,有时候需要进行批量编辑寄存器等操作,并且需要数字递增,那么这款插件能够帮助我们快速输入。使用插件我们需要选中多个目标,选中多个目标有多种方法。第一种就是使用 crtl+d,首先选择一个单词,然后重复按下 crtl+d,这样就能够进行连续选择同一个单词,然后按下→或者←,就能看到我们的光标从刚刚的选中状态变回正常的闪烁状态,并且有多个光标,第二个方法时使用 crtl+alt+↑或者↓进行光标的上下拓展。第三种就是按下鼠标中键进行选择。在用这三种方法让光标变成多个以后,按下 crtl+shift+p 后,输入 inn,然后选择我们的插件,就可以进入输入状态,输入格式时 num1:num2,第一个数是序列的首项,第二个值是公差,比如我们要输入 1 3 5 7,那么只需要输入 1:2 即可。实际上这个插件也能够支持字母递增,第一个参数设置为字母即可。
更多的功能等待着大家去发掘。