NVBoard提供了C++API
README文件中对NVBoard的描述是:可以在Verilator仿真环境中模拟FPGA。由此可知nvboard是需要接入到verilator仿真环境当中的,只有将nvboard的环境放入到verilator环境中,我们才能够调用它。
NVBoard接入verilator仿真环境的过程
总体步骤
- 进入verilator仿真的循环前,绑定引脚,随后进行nvboard初始化;
- 在verilator仿真循环中更新nvboard的状态;
- 退出verilator仿真循环后,销毁nvboard资源;
具体操作
- 在Makefile中,将生成的上述引脚绑定的C++文件加入源文件列表;
- 在Makefile中,包含NVBoard构建脚本;
include $(NVBOARD_HOME)/scripts/nvboard.mk
- 利用
make nvboard-archive
生成nvboard库文件;
- 在生成verilator仿真可执行文件(即$(NVBOARD_ARCHIVE))时将这个库文件加入链接过程,并加入链接选项
-lSDL2 -lSDL2_image