Verilog是一款使用C++仿真Verilog的工具

KeyWords:
仿真流程
波形生成

测试仿真流程

  1. 将HDL文件转换为C++文件
  2. 编译.cpp(自己写Makefile或者Verilator的编译规则)
  3. 运行编译之后的文件

Verilator在编译中干了什么?

使用type命令找到verilator命令的位置
查看命令内容(看不懂如何实现,但是知道有什么用)
使用verilator来编译(就是用--build参数),C++文件需要叫sim_main.cpp,Verilog顶层文件需要叫top.v

Verilator是如何进行VM_TRACE的定义的?

在查看创造波形的示例代码make_tracing_c时,发现有#if VM_TRACE,但却找不到在哪定义的
查看示例的example发现调用了带--trace参数的verilator命令,应该和这个有关
但具体verilator到底是怎么读取参数执行的,并不知道
在编译后的文件里,obj_dir下的Vtop_classes.mk里将该定义赋予1VM_TRACING = 1