WaveDromGen开源波形图绘制工具详解
芯片前端设计经常要描述接口波形行为,传统的绘图工具,如TimeGen,Viso都是收费的,而开源工具WaveDrom需要记住繁琐的编码符号,并且,编码方式对画一些复杂接口时序来说,也是极不友好的,如何更快更方便且免费的画接口波形呢?
WaveDromGen使用python3编写,是一款功能强大的开源波形绘制工具,可以用于绘制数字电路的各种波形。该工具提供了一种简单易用的语言来生成各种波形,使得用户可以轻松地创建自己所需要的波形。WaveDromGen不仅易于使用,而且完全免费,是非常实用的工具。
WaveDromGen具有丰富的选项来定制波形,例如调整波形颜色和线宽、添加注释和图例等。这些选项可以帮助用户更好地展示数字电路中的各种信号,同时也为用户提供了更多的创造空间。除了这些选项外,WaveDromGen还支持多种波形类型,例如时钟波形、数据波形、使能波形等。这些波形类型可以满足用户在数字电路设计中的各种需求。
WaveDromGen
WaveDromGen 基于 wavedrom 开发,相比 wavedrom 代码式画图,WaveDromGen 所见即所得,更适合绘制、调整复杂的时序图。
支持功能
1. 绘图区
绘图通过鼠标点击交互绘制波形,操作方式和TimeGen十分相似。
- 菜单栏,基本编辑功能
- 视图模式:
- 绘图器:点击波形绘图
- 编辑器:使用代码进行绘图
- 字符图:不可编辑,实时将波形准换为ascii图
- 绘图器工具栏,从上至下依次为:
- clk:时钟,点击后在波形区点击任意位置,将产生时钟波形,再次点击相同位置将改变值,值为依次为正时钟 -> 上升沿 -> 负时钟 -> 下降沿;
- sig:单比特信号,点击后在波形区点击任意位置,将产生0电平,再次点击相同位置将改变值为1;
- bus:总线信号,点击后在波形区点击任意位置,将产生总线标识,再次点击相同位置将恢复;
- x:不定态,点击后在波形区点击任意位置,将产生不定标识,再次点击相同位置将恢复;
- z:高阻态,点击后在波形区点击任意位置,将产生高阻标识,再次点击相同位置将恢复;
- sel:选择,点击后在波形区点击无波形区域,将增加行列数;上下拖动波形将调整波形位置;上下拖动波形时按住 ctrl 将复制对应波形;左右拖动波形将横向移动波形;
- t:文本框,点击后在波形区点击信号名或总线标识,可修改对应名称;
- clr:清除,点击后在波形区点击信号,将清除信号数据;
- 状态栏
2. 编辑区
编辑区整合了WaveDrom的功能,用WaveDrom的符号进行绘图,满足不同绘图要求。
- 编辑器工具栏,从左至右依次为:
- 渲染: 将编辑器内容渲染为波形图;
- 复制: 复制选中内容;
- 粘贴: 粘贴复制内容;
- 撤销;撤销上一步操作;
- 重做;重做撤销操作;
- 搜索;搜索关键字
- 编辑区: 编辑波形代码,语法遵循 wavedrom 定义
3. 字符图区
字符图区可以将绘制的波形实时转换成ascii字符,这下直接黏贴到代码里就可以了。
5. 下载链接
wavedromgen: WaveDriomGen是一块图形化绘制时序图的开源工具,快速绘制复杂时序。
感兴趣的童鞋就试试吧,基于python3+tkinter写的,用来学习python也是个不错的例子哦!