【问题标题】:How to specify annotations in VCD files?如何在 VCD 文件中指定注释?
【发布时间】:2016-01-10 18:03:15
【问题描述】:

VCD 文件中,我想指定某些事件发生在特定时间。为此,我尝试定义一个值几乎是时间0的单个位信号,并将此值切换为0,然后同时切换回1(在我的事件发生时) .不幸的是,使用gtkwave 查看文件时没有显示任何内容。我怎样才能实现这种行为?

【问题讨论】:

  • 如果你在没有提前时间的情况下翻转一个信号,它甚至会被写入 VCD 吗?我希望信号是 0 或 1 或 x,但看不到它去 1 并返回。
  • @dave 我正在自己生成一个 VCD 文件,所以是的,我可以同时打开和关闭它。此外,据我了解,VCD 文件必须按时间排序,您确认了吗?
  • 我仍然不希望它出现在 gtkwave 中:VCD 没有意义....一个信号不能同时有两个值。
  • 好的,谢谢您的明确回答。那么您认为有一种方法可以在 VCD 文件中显示“瞬时”事件吗?
  • 不,没有,但您可以使用小于其他时间间隔的时间间隔(例如时钟的一小部分)

标签: linux gtkwave vcd


【解决方案1】:

使用 event 作为你的变量数据类型并使用 -> 来强制一个事件。它将在 gtkwave 中显示为零时间的脉冲箭头。不需要时间尺度的技巧。

【讨论】:

  • 谢谢,这正是我想要的!尽管如此,我无法找到在特定时间引发事件的正确语法(事件定义是正确的),你能举个例子吗?另外,是否有任何关于 VCD 文件格式的权威文档?
  • 这里是一个例子:模块顶部;事件一;初始开始 $dumpfile("whatever.vcd"); $dumpvars(0, 顶部); #10 ->一个; #10 ->一个; #10 ->一个; #10 ->一个; #10 ->一个;结束模块
  • VCD 语法,可以查看 Verilog 规范。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-07-14
  • 1970-01-01
  • 1970-01-01
  • 2016-09-21
  • 1970-01-01
  • 2011-01-27
相关资源
最近更新 更多