NVBoard提供了C++API

README文件中对NVBoard的描述是:可以在Verilator仿真环境中模拟FPGA。由此可知nvboard是需要接入到verilator仿真环境当中的,只有将nvboard的环境放入到verilator环境中,我们才能够调用它。

NVBoard接入verilator仿真环境的过程

总体步骤

  1. 进入verilator仿真的循环前,绑定引脚,随后进行nvboard初始化;
  1. 在verilator仿真循环中更新nvboard的状态;
  1. 退出verilator仿真循环后,销毁nvboard资源;

具体操作

  1. 在Makefile中,将生成的上述引脚绑定的C++文件加入源文件列表;
  1. 在Makefile中,包含NVBoard构建脚本;
    1. include $(NVBOARD_HOME)/scripts/nvboard.mk
  1. 利用make nvboard-archive生成nvboard库文件;
  1. 在生成verilator仿真可执行文件(即$(NVBOARD_ARCHIVE))时将这个库文件加入链接过程,并加入链接选项-lSDL2 -lSDL2_image