Vivado使用VSCode编辑器的各种配置:功能加持!
前言一、在Vivado中指定VSCode作为文本编辑器二、使用 xvlog / Verilator 作为代码分析工具,安装 Verilog HDL/SystemVerilog 插件三、自动生成Testbench四、一些其它的好用插件:Bracket Pair Colorizervscode-iconsTCL Language Support绘波形图插件绘图插件erilog-simplealign插件
五、快捷键六、VSCode 插件离线安装方法
前言
作为一名FPGA开发人员,在使用VSCode编辑器前,我是习惯了使用notepa++进行代码编写的,但是在最近的软件升级时无意间看到了关于notep++辱华事件的始末,瞬间觉得使用notep++进行代码编辑不香了。所以毅然决然的改用VSCode作为Verilog语言编写的编辑器。并且发现使用VSCode编写代码更为方便。故小编建议大家也可以尽量选择VSCode。下面就详细介绍一下自己从网上以及自己摸索出来的一点工具用法。 心里活动:如果有不同见解或者不使用notepad++就会无法工作的人员可以继续使用。但是作为一名爱国有志青年,若不存在上述情况的还是应该有这种爱国情怀的正常表现!
以下是本篇文章正文内容
一、在Vivado中指定VSCode作为文本编辑器
打开Vivado的设置依次点击vivado菜单栏:Tools>Settings>Text Editor.在Current Editor:输入编辑器的绝对路径如下: “…/Code.exe -g [file name]:[line number]”。
二、使用 xvlog / Verilator 作为代码分析工具,安装 Verilog HDL/SystemVerilog 插件
Verilog HDL/SystemVerilog 可以实现,代码高亮,自动补全等,直接在vscode 插件库中,搜索 Verilog HDL/SystemVerilog 就可以了。 使用该插件可以直接生成例化模板,比较简单,使用方法也比较简单,从插件的说明那里就能看到,需要安装一个小的应用程序catgs(如图点击ctags-win32就可以进入下载界面)。该插件需要到github上下载一个小程序,然后把程序添加到环境变量里面。 到它的release目录下,下载一个版本,然后解压,就可以。然后把这个路径添加到环境变量里面。添加到环境变量里面,最好重启一下电脑,这样能够确保环境变量生效了。 ctags的扩展配置:
配置xvlog 首先将vivado 加到系统环境变量中,在这之前,找到你的vivado安装路径。然后打开vscode, 找到之前安装的Verilog HDL/SystemVerilog ,在插件上右键 -> 配置扩展设置 , 找到 linter , 选择 xvlog。具体配置如下图所示。可以再vscode端口输入命令:xvlog –version来检查是否设置成功。 快速例化 crtl+p,输入instance,按回车即可得到该模块的例化代码 代码片段 在写代码的时候,一些常用的代码和文件头什么的,可以通过使用代码片段的方式来进行添加。 添加一个代码片段,代码片段可以选择支持的语言什么的。 scope字段后面是支持的语法,没有这个字段,那就是使用vscode的时候,所有文件都可以使用这个代码片段。 prefix字段是代码片段的快捷方式,输入对应的代码,就可以添加代码片段了。 body 里面就是代码片段的具体内容了。代码片段的内容需要在 " " 两个引号里面,每一行都需要。 下面是一个文件头,每次输入FH1,就会在光标的位置添加一个文件头了。会根据文件的名称,自动在文件头上添加文件的名字,然后还有创建时间什么的,完全是用户可以自己定义的哈。
{
// Place your global snippets here. Each snippet is defined under a snippet name and has a scope, prefix, body and
// description. Add comma separated ids of the languages where the snippet is applicable in the scope field. If scope
// is left empty or omitted, the snippet gets applied to all languages. The prefix is what is
// used to trigger the snippet and the body will be expanded and inserted. Possible variables are:
// $1, $2 for tab stops, $0 for the final cursor position, and ${1:label}, ${2:another} for placeholders.
// Placeholders with the same ids are connected.
// Example:
"My File Header": {
"prefix": "FH1",
"body": [
"// -----------------------------------------------------------------------------"
"// Copyright (c) 2014-2020 All rights reserved"
"// -----------------------------------------------------------------------------"
"// Author : WCC 1530604142@qq.com"
"// File : $TM_FILENAME_BASE"
"// Create : $CURRENT_YEAR-$CURRENT_MONTH-$CURRENT_DATE"
"// Revise : $CURRENT_YEAR-"
"// Editor : Vscode, tab size (4)"
"// Functions : "
"// "
"// -----------------------------------------------------------------------------"
],
"description": "My File Header"
}
}
三、自动生成Testbench
有时候在工程中要例化一个模块,这个模块有几十个输入几十个输出,如果没有一个好的脚本帮助你,不仅人为出错的可能比较大,例化的过程想必也是痛苦的。还好有人已经在VsCode编写过自动生成Testbench的脚本了,感谢。扩展商店搜索Verilog_TestBench,安装过后,任意编写一段verilog程序。按下ctrl+shift+p,选择testbench即可生成testbench对应的tb文本。 注意: 生成激励文件需要在Python环境下才能生效,否则就会报错。具体的python安装步骤如下:
双击执行Python安装包;先勾选最下方的选项添加环境变量选项,然后点击Customize installation。注意一定要勾选最下面一个选项,它可以自动帮你添加windows环境变量。点击完成后,进入下一个步骤:选择号对应安装目录后就可以开始安装。安装完成后,要测一测自己安装的python是否成功?我们按win+R,输入cmd,打开命令提示符窗口,输入python,如果你出现下面的情况,说明你的python安装成功了! 安装chardet配件:将安装包解压至Python安装目录; 打开cmd,输入 cd …\site-packages,进入…\site-packages文件路径。再输入python setup.py install,回车开始安装。测试,cmd中输入python,再输入import chardet。#没有显示错误,说明安装好了。
现在按ctrl+shift+p,输入Testbench,在命令行就会自动输出Testbench代码了,由于不会自动生成激励文件,故还是有点不方便,再进行如下操作生成.v文件。
在windows任务栏搜索菜单里,打开你的powershell。输入 echo $profile 即可。打开编辑文件,直接在命令行输入 code $profile 。添加如下代码,修改TestBenchPath的值。
function createtb_function{
param(
[Parameter(ValueFromPipeline=$true)]
$InputObject
)
$FileName = $InputObject
$tbFileName = "tb_" + $FileName.split("\")[-1]
echo $tbFileName
python $env:TestBenchPath $FileName >> $tbFileName
}
set-alias ll Get-ChildItemColor
$env:TestBenchPath="C:\Users\xxx\.vscode\extensions\truecrab.verilog-testbench-instance-0.0.5\out\vTbgenerator.py"
set-alias createtb createtb_function
将vscode添加进系统环境变量了。修改过后,重启vscode的powershell命令行。输入命令createtb xxx.v,即可输出生成文件。
解决VSCode“因为在此系统上禁止运行脚本“报错 解决方法:
以管理员身份运行vscode;执行:get-ExecutionPolicy,显示Restricted,表示状态是禁止的;执行:set-ExecutionPolicy RemoteSigned;这时再执行get-ExecutionPolicy,就显示RemoteSigned;
四、一些其它的好用插件:
Bracket Pair Colorizer
多重括号显示为不同颜色
vscode-icons
Material Icon Theme安装好,即可实现的功能:不同文件夹和文件显示为不同的图标
TCL Language Support
安装好,即可实现的功能:约束文件的语法高亮
绘波形图插件
Waveform Render这个插件可以在vscode中写一些代码,然后就可以生成对应的时序图了。ctrl + k, ctrl +d 可以将代码显示成时序图;ctrl + shit + p 然后选择toggle Live preview 可以打开和关闭实时预览。在绘图的时候把实时预览打开,绘制完毕之后,把实时预览关闭。 在设置绘制时序波形的时候,需要创建一个文件,打开文件后就可以输入代码进行波形图的绘制了。显示这里的json文件的时候,用java语法显示,显示的语法比较好看,不会提示过多的错误。点击下面这个图中的地方,换成java语法就好了。
{ signal: [
{ name: "clk", wave: "p.....|..." },
{ name: "clk", wave: "10101010101" },
{ name: "cnt", wave: ".12345=.x", data: ["0", "1", "2", "3","4"] },
{ name: "脉冲1", wave: "0..10.|..." },
{ name: "脉冲2", wave: "0...10.|..." },
]}
绘图插件
这个可以来画点流程图,结构图什么的,方便。绘制图形的时候,先创建一个后缀名为 .drawio的文件,然后用vscode打开,就可以进行图形的绘制了。
erilog-simplealign插件
可以将代码按照输入、输出,类型,位宽,信号名,等按列对齐。
五、快捷键
向上向下复制:在 Windows 上:Shift + Alt + Up/Down;拆分编辑框:Shift + Alt + \ or 2,3,4;单词选中:Ctrl+ d;打开关闭侧边栏:Ctrl+ b;添加多个光标:ctrl+Alt+Up/Down;块选择:Shift + Alt;命令面板:Ctrl + p;注释:行:ctrl + /; 块:shift + alt + A。 注释 : 先CTRL+K,然后CTRL+C 取消注释: 先CTRL+K,然后CTRL+U
六、VSCode 插件离线安装方法
解决工作机上无法上网不能安装插件的问题。接下来,我来总结下 VSCode 插件离线安装的步骤:
打开 VSCode 插件市场网址 Extensions for the Visual Studio family of product,输入你想要的插件名称,比如这里我想要安装的是 Markdown All in One 插件。或者直接在能连网的电脑上,打开vscode,搜索对应插件,直接点击就会进入该插件的主页。点击“Download Extension” 点击进入插件主页,点击右侧的 Download Extension 链接,得到下载下来的离线安装包,以 .vsix 为扩展名结尾。把下载下来的离线安装包拷贝到 VSCode 的安装目录下的 bin 目录下,比如我的 VSCode 安装在 D:\Microsoft VS Code\,因此这里我应该拷贝到 D:\Microsoft VS Code\bin 这个目录下。在上一步的 bin 目录下右键点击 在此处打开命令窗口,输入命令行,最后面的参数换成你下载的插件离线安装包的名字即可: code --install-extension yzhang.markdown-all-in-one-1.4.0.vsix
待看到如下提示即意味着安装成功,就可以打开 VSCode 进行查看了Extension ‘yzhang.markdown-all-in-one-1.4.0.vsix’ was successfully installed!至此,离线安装 VSCode 插件就算结束了。
推荐文章
发表评论