HLS开发学习-08- Vivado HLS下C_C++测试平台的基本架构

网友投稿 301 2022-09-21

HLS开发学习-08- Vivado HLS下C_C++测试平台的基本架构

写在前面

本系列的第8篇,ppt引用来自赛灵思hls教程,主要介绍HLS下C_C++测试平台的基本架构。

什么是TB?

testbench是一种验证的手段。首先,任何设计都是会有输入输出的。但是在软环境中没有激励输入,也不会对你设计的输出正确性进行评估。那么此时便有一种,模拟实际环境的输入激励和输出校验的一种“虚拟平台”的产生。在这个平台上你可以对你的设计从软件层面上进行分析和校验,这个就是testbench的含义。

在HLS中使用C搭建的tb是这样的功能,和RTL层不同的是,这里的TB的主要包括了这些内容:激励(给出一组数据或者一定状态用于检测)、参考模型(也就是用于检测运行结果的答案,如同参考答案)、DUT(待测模型)、SCOREBOARD(这里实际就是一个检测函数的功能测试评分表)。其中,monitor(过程中的检测),可根据选择进行取舍。

为什么使用C test bench?

好处如下:

可以用来检测C函数 的功能正确性和健壮性。C tb相比RTL tb 效率更高。C tb也可以验证RTL 的设计。C test bench 即可验证C函数的功能,又可以和RTL设计一起进行协同仿真。

高效的TB

对于高效的TB应该是

用case演示基本架构

根据示例,我们可以对刚刚讲述的C测试平台的架构进行对应。

下图表示了,对于不同的部分,输入输出的一些设计要求,还有一些设计中的注意事项。

summary

简要总结:

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:微信视频号终于开放推流直播了!
下一篇:FPGA-篮球计分计时器的设计
相关文章

 发表评论

暂时没有评论,来抢沙发吧~