新闻资讯
看你所看,想你所想

testbench

testbench

testbench

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

基本介绍

  • 外文名:testbench
  • 初级套用:testbench更像一个激励的产生器
  • 举例:可能有几个input和output
  • 数据输出:一个dataout的

初级套用

就初学而言,testbench更像一个激励的产生器。举例:一个ram,可能有几个input和output。分别列在下面。
clk,时钟输入
addr,地址输入
wen,写使能
data,数据输入
然后还有一个dataout的数据输出。那幺你可以写一个档案,给clk,addr,wen,data送入你预想的一些信号,然后观察q的输出,看看ram是否工作正常。那幺这个档案从一定意义上可以叫做"testbench"。
联想(帮助理解):从quartus里面你仿真,你可能对着那个画图一样的东西画上输入,然后编译以后看他的输出。对吧。那幺在Multisim里面,我告诉你,可以不用画图了~,你只需要按照一定规则写一个.v或者.vhd的档案,然后再在将添加的simulation的设定中设定一个档案,这个档案可以给你的设计提供你预想的输入。这个就是testbench的档案。然后在Multisim这个特定的软体环境下,这个软体能根据你的代码给你的设计提供输入,又可以把你设计的输出在萤幕上显示出来给你debug。那幺这个时候,一个在Multisim上的testbench就完成了。
狭义的总结一下:FPGA的testbench就是一个.v(verilog)或者.vhd(vhdl)的档案。这个档案能给你的设计提供激励,并能在一些专用的软体中提供良好的debug接口。这个就是一个testbench。

高级套用

关于testbench的高级套用。刚才说了初步的testbench。其实testbench是verification(验证)中的一个手段。验证是什幺呢?举例:做鱼了,你往里面加了调料,然后再尝尝味道,这个就是验证的过程。同样你可以分成几个部分,一条鱼,好比你的设计,然后你给他一定的激励,也就是调料啦。然后你再尝一尝,看看鱼是不是达到你想要的味道了。那就是一种验证的手段,如果淡了。那幺加点盐,再尝尝,这个就是反覆验证。
testbench图解一下比较清楚。 =============================Testbench=============================
| | | | | | ================== | | | 激励生成 |====》 | | | 输出校验 | | |预想输入 | 设计 |==》 | | | | | | 设计 | | =============== ================== 输出 ===================
testbench里面包含了两个东西:
1、激励生成。也就是我们刚才初级时候说的所谓的“testbench”。英文幺就是simulator,这个只用来生成输出,他自己没有输入,只是按照一定的规律去给你的设计激励,激励通过设计的输入连线埠送到你的设计中。其余的事情不管。这里的激励,都是预先构想好的,比如根据某个协定,或者某种通信方式传递。 2、你的设计。英文可以叫做DUT:design under testbench或者DUV:design under verification。当然咯。这个是你主要目标。
2、输出校验。校验你的输出。英文叫markerboard,他所管的事情就是,接收你设计的输入,然后通过校验,找出对应的问题。然后报错,或者统计错误。等等。通俗的讲,你设计它就是把你自己解脱出来,让他来帮你找错误。他输出给你的可能就是通过列印啊,通知啊,等等方法了解你设计的正确性。
那幺你有可能问了,这个东西用verilog或者VHDL能写幺,modelsim里能用幺?的确是可以的,有写甚至可以用c的代码通过程式接口来转换到modelsim里面来帮助验证。

总结

最后说两句:testbench是一个平台,帮助你从软体方面验证的。对于这个概念不需强求,等你自己的验证写多了,自然而然就会了解其中深刻的含义。先开始慢慢的写一些激励,然后再写写校验。到时候你收穫的东西自然而然的能帮助你理解testbench和verification

转载请注明出处海之美文 » testbench

相关推荐

    声明:此文信息来源于网络,登载此文只为提供信息参考,并不用于任何商业目的。如有侵权,请及时联系我们:ailianmeng11@163.com