一款“优雅"的时序图绘制插件:Waveform

描述


 

    从事数字逻辑设计的小伙伴总是要与时序图打交道,这里推荐一款“优雅"的时序图绘制插件: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 as p but with arrow

  • N - same as n but 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链接:

时钟

  审核编辑 :李倩

 


打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分