使用verilator运行C++例子
① 为了能在verilator安装路径以外的地方运行,需要添加以下路径
VERILATOR_ROOT
等号后面为自己的verilator的安装路径
② 在任意文件夹下创建两个文件our.v
和sim_main.cpp
Vour.h
对应的是our.v文件,包括第8行代码的Vour也是与our.v文件名相关
③命令行输入
verilator --c --exe --build -j 0 -Wall sim_main.cpp our.v
--c
:获取C++的输出文件
--exe
:使cpp文件能创建成可执行文件
--build
:使verilator能够自动make
-j 0
:创建线程
-Wall
:警告功能使能
④ 运行完成后,会生成obj_dir文件
⑤运行obj_dir文件夹的Vour,终端输入以下指令
obj_dir/Vour
得到以下结果
使用verilator运行双控开关
①创建双控开关文件double_sw.v
,module的名字一定要和文件名对应(这是容易踩坑的地方)
② 修改sim_main.cpp
内容
蓝色部分是随机产生1bit的数,通过eval()函数更新电路状态
③ 输入执行命令
verilator --c --exe --build -j 0 -Wall sim_main.cpp double_sw.v
④ 会生成一个obj_dir文件夹,运行里面的Vdouble_sw
文件
obj_dir/Vdouble_sw
⑤ 因为程序没有停止的函数,需要手动crtl+c停止