刚接触FPGA的时候都是在Quartus平台上进行仿真,因此经常TestBench。但是没有真正形成好的编写习惯以及技巧,有时候因为TestBench'的错误还需要调试好久,因此总结了一下写下来防止以后出错。
需要注意的是,对于FPGa仿真,使用波形输入产生激励是可以的,观察波形输出以验证测试结果也是可以的。波形也许是最直观的观察手段,但是绝不是唯一手段。
TestBench的设计是多种多样的,它的语法也可以比较随意,不像RTL级设计代码有很多讲究,它是基于行为级的语法,有很多高级的语法都可以在脚本中使用。因为它不需要实现在FPGA中,是运行在PC上的一段测试脚本,因此相对于RTL可以做的更容易、更灵活一些。
TestBench的一般编写步骤:
1,对被测试的顶层接口进行例化;
2,给被测试的输入接口添加激励