从事数字逻辑设计的小伙伴总是要与时序图打交道,这里推荐一款“优雅"的时序图绘制插件:Waveform。
》》VSCode+Waveform自VSCode问世,早已被人玩儿出了诸多花样,大有“一统江湖”的味道。对于数字逻辑开发工程师而言,VSCode对Verilog/SystemVerilog的支持当前也做的不错。而对于我们来讲另一项不可避免的需求便是时序图绘制。由于TimeGen并没有Mac版本,故而有时花个时序图还是挺不容易的。这个时候就需要VSCode来拯救下了。在VSCode的MarkerPlace中搜索安装Wavefrom Render:Wavefrom波形绘制采用json文件的形式。创建一个json后缀的文件即可。Wavefrom提供两条指令(通过Ctrl+Shift+p(windows)或Cmd+Shift+p(Mac))即可找到这两条指令:
-
Wavefrom Render:Draw:打开波形显示窗口,可用于查看对应的波形
-
Wavefrom Render:Toggle Live Preview:可用于在编辑时实时更新波形,再次执行该指令会关闭该功能。
使用效果如下:
只需掌握几个语法,便可轻松绘制波形。还是相当方便的~ 》》关键字由于文件格式是json,在Wavefrom中指令的信号root object为“signal”,且遵循JSON格式:
{"signal":[
...
]}
而信号名称的声明则采用“name"来制定,波形则用“wave”来声明:
{ "signal" : [
{ "wave" : "x.01.=.." }
]}
其中wave所对应的字符串每个字符串对应一个信号值。常用的字符值有:-
p- when first in string creates positive edged clock wave
-
n- when first in string creates negative edged clock wave
-
P- same aspbut with arrow
-
N- same asnbut with arrow
-
0- low level
-
1- high level
-
=- value (default color 2)
-
2- value with color 2
-
3- value with color 3
-
4- value with color 4
-
5- value with color 5
-
x- undefined value
-
.- extends previous cycle
-
z- high-impedance state
-
u- pull-up (weak 1)
-
d- pull-down (weak 0)
-
|- extends previous cycle and draw gap on top of it
时钟的绘制常用的“wave”字符有"p"、"n"、"P"、"N"、"."、"|":
对应的波形分别如下
》》单比特信号
单比特信号的绘制与时钟绘制基本一致,其常用的字符为"0","1","u","d","z":
对应波形:
》》多比特信号
在"wave"中的字符2345常用来表示不同的颜色,且多比特信号也可以通过“data”来标明信号的值:
》》更多语法在VSCode中安装Waveform Render时,可以在最下方找到完整的手册链接:
点击跳转到git链接后其下方还有一个WaveDrom Tutirial链接:
审核编辑 :李倩
-
时钟
+关注
关注
10文章
1724浏览量
131399 -
时序
+关注
关注
5文章
387浏览量
37296 -
数字逻辑
+关注
关注
0文章
73浏览量
16641
原文标题:VSCode:WaveForm在手,时序我有
文章出处:【微信号:zhuyandz,微信公众号:FPGA之家】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论