前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >使用Verdi的小技巧(三)

使用Verdi的小技巧(三)

作者头像
icsoc
发布2021-08-18 10:30:24
3.2K0
发布2021-08-18 10:30:24
举报
文章被收录于专栏:ICSOC.TECHICSOC.TECH

使用Verdi的小技巧(一)

使用Verdi的小技巧(二)

使用 Verdi 的过程中,难免会碰到表示某种变化量的多位宽数字信号,我们关心的是它的变化趋势。今天主要聊聊数字信号的模拟化呈现。

数字信号的模拟化呈现

Verdi 提供了既简单又直观的操作,去绘制数字信号的模拟变化趋势。尤其是在观察周期性计数的数字信号时,例如调制频率的变化,还有 FIFO 读写地址的变化,这种方式基本是可以做到一目了然的。

操作方式:nWave 窗口菜单 - Waveform - Analog Waveform

对于 Verdi 这个工具来说,它对于数字信号本身的含义目前还没有智能到可以自动识别。所以我们需要指定特定数字信号的表示方式(Notation),是无符号、二补码还是补码等等。

操作方式:nWave 窗口菜单 - Waveform - Set Notation

模拟波形的显示范围

还有一个可能遇到的局限性就是,Verdi 在绘制数字信号的模拟波形时,默认会按照整个波形的动态范围来绘图。如果一个数字信号的初始值和工作时实际的动态范围差别很大,那么观察实际工作时的模拟波形时,波形变化的幅度相比整个动态范围就会太小,无法明了的看到小动态范围的变化趋势。

手动调节显示范围

还好 Verdi 提供了手动调节显示范围的功能。

操作方式:nWave 窗口菜单 - Analog - Zoom Value...

根据需要调节上限和下限,调节过程中波形是实时更新的。

对比效果如下图,第一个信号是默认范围的,动态变化缩成一条直线了,没有观察价值。第二个信号是调整了范围的,可以清楚的看到变化趋势。第三个是原始的数字信号。

自动调节:切换 FSDB 文件

还有一个比较笨的解决方法是,写出 FSDB 文件时,根据特定信号,从数字信号开始动态变化的时候,做一个文件切换。这样就把数字信号初始化部分的波形分离出去。当我们着重分析动态变化的部分时,就不需要加载初始化部分的波形。Verdi 在绘制模拟波形的时候,只会看到小动态范围的数值,绘制出来的变化趋势就足够清楚了。

代码语言:javascript
复制
    $fsdbDumpfile("tb_000.fsdb");
    $fsdbDumpvars(0, tb);
    @(posedge some_trigger_signal);
    $fsdbSwitchDumpfile("tb_001.fsdb");
自动调节:加载特定时间范围

当然作为团队项目的螺丝钉,有时候不方便控制 FSDB 文件的产生方式,那么在加载 FSDB 文件的时候,可以选择指定一个时间范围。感谢读者 @Erik Li 提供的这个技巧。

操作方式:nWave窗口菜单 - Open,选择 FSDB 文件到 Target Name 后,点击左下方的 Options... 按钮。

在弹出的对话框中选中 Open File By Time Range,然后点击 OK 按钮。

再点击 OK 按钮,在弹出的对话框中就可以选择感兴趣的时间起止范围了。

如何提高螺丝钉的自我修养

今天就到这里。最后再分享一个最近才发现的 Verdi 调用参数。

代码语言:javascript
复制
verdi -preTitle "some text"

螺丝钉做久了,需要同时打开的 Verdi 窗口数量与日俱增。怎么从密密麻麻的任务栏图标中找到要找的那个,是个麻烦但不紧急的问题。除了贯彻断舍离、及时关闭短期内不需要的窗口之外,用上面的选项为每一个 Verdi 窗口做个简洁唯一的命名,也是一个不那么有效的解决之道。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-08-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 icsoc 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 数字信号的模拟化呈现
  • 模拟波形的显示范围
    • 手动调节显示范围
      • 自动调节:切换 FSDB 文件
        • 自动调节:加载特定时间范围
        • 如何提高螺丝钉的自我修养
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档