值变转储文件

值变转储文件(VCD)是一个ASCII文件,它包含仿真时间,范围与信号的定义以及仿真运行过程中信号值的变化等信息。设计中的所有信号或者选定的信号集合在仿真过程中都可以被写入VCD文件。后处理工具可以把VCD文件作为输入并把层次信息、信号值和信号波形显示出来。

现在有许多商业后处理工具以及集成到仿真器中的工具可供使用。对于大规模设计的仿真,设计者可以把选定的信号转储到VCD文件中,并使用后处理工具去调试,分析和验证仿真输出结果。

Verilog提供了系统任务来

选择要转储的模块实例或者模块实例信号($dumpvars),

选择VCD文件的名称($dumpfile),

选择转储过程的起点和终点($dumpon, $dumpoff),

选择生成检测点($dumpall),

example

// 指定VCD文件名。若不指定VCD文件,则由仿真器指定一默认文件名
initial 
  $dumpfile("myfile.dmp");  // 仿真信息转储到myfile.dmp文件

// 转储模块中的信号
initial 
  $dumpvars;                // 没有指定变量范围,把设计中全部信号都转储
initial 
  $dumpvars(1, top);        // 转储模块实例top中的信号
                            // 数1表示层次的等级,只转储top下第一层信号
                            // 即转储top模块中的变量,而不转储在top中调用
                            // 模块中的变量
initial 
  $dumpvars(2, top.m1);     // 模块中的变量

initial 
  $dumpvars(0, top.m1);     // 数0表示转储top.m1模块下面各个层的所有信号

// 启动和停止转储过程
initial begin
  $dumpon;                  // 启动转储过程
  #10000 $dumpoff;          // 过了100 000个仿真时间单位后,停止转储过程
end

// 生成一个检查点, 转储所有VCD变量的现行值
initial  
  $dumpall;


$dumpfile 和 $dumpvars任务通常在仿真开始时指定,$dumpon, $dumpoff和dumpall任务在仿真过程中控制转储过程

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值