FPGA开发时序图绘制

开始的时候画时序图都是拿 visio 硬连,但是那个线宽太难统一了,丑不拉几的,遂学习 waveform 语法使用代码来画时序图。

开始

Vscode 中安装 waveform render 或者在 GitHub 搜索 wavedrom 安装即可。由于 vscode 是我常用的编辑器,所以选择在 vscode 安装插件的方式来学习使用 waveform。

在 vscode 中创建一个 json 文件,内容

json 复制代码
{

    "signal":[

        {"name":"clk","wave":"p....."},

        {"name":"data","wave":"010101"}

    ]

}

在命令面板中选择如下命令后即可查看渲染结果:

语法

时钟信号

  • p 表示上升沿开始的方波
  • n 表示下降沿开始的方波
  • l 表示低电平
  • h 表示高电平
  • 大写会在方波边沿绘制箭头

    代码渲染出的时序图为:

数据信号

  • 01

  • x 表示未知状态

  • =表示有效数据,也可写成 2~9,会用不同的颜色显示,并且可用 data 变量加上文本标签

  • 可以用 | 表示省略一段信号

    periodphase 变量用于调整时序

  • period 的值应该是一个数字 n ,表示横向等比例放大或缩小

  • phase 的值应该是一个数字 n ,表示横向的位置调整,单位是一个时钟周期:

    • 如果是正数,表示向左移动 n 个时钟周期
    • 如果是负数,表示向右移动 n 个时钟周期

      多个信号可以用 ['group name', {...}, {...}, ...] 语法编成一组,而且支持嵌套
      时序绘制完毕后,还可以对图片进行修饰。 "config": { "hscale": n } 表示将图片横向等比例放大 n 倍。"head":{ }"foot":{ } 分别表示在时序图的上方和下方添加一些内容:
  • text 变量应该设置一个字符串,表示添加一行文本

  • tick 变量应该设置一个整数,表示在时钟周期的起点显示序号,从 n 开始

  • tock 变量应该设置一个整数,表示在时钟周期的中点显示序号,从 n 开始

相关推荐
Riwuarua7 小时前
从近似0基础开始FPGA开发 -- part.14 JESD204协议、IP核与嵌入式初始化
fpga开发·jesd
第二层皮-合肥21 小时前
Vivado 自动生成的 AXI‑Lite 从机 IP 的操作步骤
fpga开发
blue_ice .1 天前
Verilog DDS 数字信号发生器:DAC 输出模拟波形与 ADC 回采观测
开发语言·单片机·嵌入式硬件·fpga开发
薛定谔的bug~1 天前
【vivado】10G ibert 工程
fpga开发
博览鸿蒙1 天前
新手怎么挑一块靠谱的FPGA开发板?
fpga开发·fpga·fpga开发板
威嵌神州1 天前
VxWorks6.9 BSP 适配:飞腾 D2000/FT2000/4 平台、驱动开发
驱动开发·嵌入式硬件·fpga开发·系统架构
FPGA小迷弟2 天前
【无标题】
fpga开发·dsp开发·fpga·sdr·无线电
szxinmai主板定制专家2 天前
【工控实战】RK3568/RK3588 8路隔离CAN/CANFD完整解决方案|多路总线并行通信、车载/工控量产落地
人工智能·fpga开发·zynq·mpsoc·半导体设备
郝旭帅电子设计团队2 天前
Xilinx FPGA的BANK标号命令规则
fpga开发·郝旭帅电子设计团队·郝旭帅
威嵌神州2 天前
天脉 3 开发环境与 BSP 适配:IDE license、驱动开发、飞腾平台
ide·驱动开发·嵌入式硬件·fpga开发