啥是testbench

你买了个黑古隆冬的东西, 有几个引脚. 人家说那叫芯片, 是USB转UART芯片.


你可以往FPGA/CPLD里写程序,让他跟那个转换芯片一样的逻辑去工作, 这里的程序就是你所谓的VHDL程序.


可写好了, 谁知道是是正宗是水货还是山寨啊, 总得测试鉴定一下吧. 于是你又用C语言写了个上位机程序, 往USB发,用UART收, 调USB1.0/1.1/2.0, 调UART速率2400/9600/115200, 反正是双向通测了一遍. 恩, 没问题. 数据准确, 性能稳定, 那是什么山寨还是水货已经不重要了. 是你的VHDL写对了.


但是, 如果你已经把VHDL都玩烂透了, c实在不熟也不想写那么复杂的c程序了. 那可不可以直接用VHDL写段简单的代码来测试你的转换程序呢?


答曰: 可以. 把你那个被测程序打包成模块, 让它被上刚写的那个测试程序虚拟调用, 给它发数据让它把收到的显示出来. That's testbench.


原来的VHDL因为是必须要写入FPGA所以他得是可综合, 有时序约束的. 而Testbech就是段用VHDL语言描述的信号发生器, 由计算机来编译实现即可, 不受FPGA硬件约束, 可以是不可综合的.

你可能感兴趣的:(vhdl,testbench)