本文目录一览

1,能告诉我什么是testbench吗

多看点、、、、、、

能告诉我什么是testbench吗

2,FPGA的testbench和simulation

当你的写完HDL描述,并经过编译将语法错误排除之后,为了验证你的描述能否完成你设计的功能,就需要写一个仿真激励文件testbench,然后进入仿真(simulation)过程,从仿真结果中判定你的描述是否与你设计的功能吻合。
其实testbench本质上就是另一个vhdl程序罢了,只不过由他来给调用的代码所需要的输入信号赋值罢了,如果复杂的话,testbench写起来确实不容易,不过如果代码都是自己写的话那就知道里面的逻辑了,只要按照你设想的输入信号,看结果就可以了。测试代码的例子应该网上有,依样画葫芦 就可以了

FPGA的testbench和simulation

3,Verilog 中testbench 和 工程文件

1. 一定需要。对于ASIC,综合成门级网表;对于FPGA,就是一些逻辑和寄存器等(altera的quartus ii综合完成后在tools->netlists viewer->Technology xxx (post fitting)中可观察综合的结果)。若想了更多综合知识,推荐搜索关键词"逻辑综合"或"logic synthesis"。至于top module的作用,想象在面包板上搭建一个电路,面包板上的各个元器件就是例化的子模块,而面包板就是top module(一般top module里面只例化各个模块而没有逻辑功能)。2. 不可以。编写testbench是为了仿真。仿真是为了验证设计模块的设计是否正确。testbench中,主要产生测试和激励信号给DUT(design under test,指要测试的rtl代码),并收集DUT输出用于验证、比对等。对于testbench来说既不需要额外的激励(需要什么信号自行产生就可以了),也不需要输出(testbench就是用于仿真的,输出给哪一个模块?)。

Verilog 中testbench 和 工程文件

4,什么是test bench

1、打开quartus ii,tools菜单下options项,general中eda tool options,指定modelsim的路径,比如c:\altera\11.0\modelsim_ae\win32aloem,或者c:\altera\modelsimse10.0b\win642、设计好quartus下的工程后,processing菜单栏下start项右侧展开选择“start testbench templates writer”,就会创建一个testbench的模版。在此基础上修改你所需要的testbench3、testbench设计完后,assignments菜单下setting项,左侧栏中找到eda tool settings下的simulation,在右侧simulation的设置框中,选择tool name,到“more eda netlist writer settings”中,选择“compile test bench,点击右侧的“test benches”,”new“,把testbench文件的module名填入top level项(11.0下;9.0下三项都要补齐,第三项是例化名)。在下面的“test bench files”中指定你的testbench,模板文件默认是在simulation--modelsim中,后缀是.vt,“add”进来,一路ok。4、仿真时,“tools”菜单下“run eda simulation tool”右侧展开,第一个为功能仿真,第二个为时序仿真。
test bench试验[测试]工作台; 例句:1.Both require intensive test bench and template construction and have limited application.

5,quartus 怎么打开testbench

一个是时序约束,另一个就是逻辑锁定。时序约束是按照你的时序要求去布局布线。而逻辑锁定则是指设计者将某个模块或者某个网络指定在器件的某个位置。尽管有时序约束,但综合器也不能保证每次都能达到要求;而只有当逻辑锁定后,它能保证被锁定的模块在下一次综合不被改变。  事出有因,之前加进来的一个spi模块,一开始是正常的,后来陆续在设计中加了一些模块,综合后,居然发现spi模块工作不正常,奇怪的是,在我备份的几个版本中,有几个正常,有几个又不正常,而在这个过程中spi模块从未被修改过。我想一定是综合器在捣鬼,后来我在spi正常的版本上查看chip planner中spi的布局信息,然后将其逻辑锁定,再添加新的模块进来,结果发现,spi果然没有受到影响。
1、打开quartus ii,Tools菜单下Options项,General中EDA Tool Options,指定Modelsim的路径,比如C:\altera\11.0\modelsim_ae\win32aloem,或者C:\altera\Modelsimse10.0b\win642、设计好quartus下的工程后,Processing菜单栏下Start项右侧展开选择“Start TestBench Templates Writer”,就会创建一个testbench的模版。在此基础上修改你所需要的testbench3、testbench设计完后,Assignments菜单下Setting项,左侧栏中找到EDA Tool Settings下的Simulation,在右侧Simulation的设置框中,选择Tool name,到“More EDA Netlist Writer Settings”中,选择“Compile test bench,点击右侧的“Test Benches”,”New“,把testbench文件的module名填入top level项(11.0下;9.0下三项都要补齐,第三项是例化名)。在下面的“Test bench files”中指定你的testbench,模板文件默认是在simulation--modelsim中,后缀是.vt,“Add”进来,一路OK。4、仿真时,“Tools”菜单下“Run EDA Simulation Tool”右侧展开,第一个为功能仿真,第二个为时序仿真。

6,能告诉我什么是testbench吗

=================================概念=============================== testbench是一种验证的手段。 首先,任何设计都是会有输入输出的。但是在软环境中没有激励输入,也不会对你设计的输出正确性进行评估。那么此时便有一种,模拟实际环境的输入激励和输出校验的一种“虚拟平台”的产生。在这个平台上你可以对你的设计从软件层面上进行分析和校验,这个就是testbench的含义。 ===================================================================== ============================初步认识================================= 就初学而言,testbench更像一个激励的产生器。 举例:一个ram,可能有几个input和output。分别列在下面。 clk,时钟输入 addr,地址输入 wen,写使能 data,数据输入 然后还有一个dataout的数据输出。 那么你可以写一个文件,给clk,addr,wen,data送入你预想的一些信号,然后观察q的输出,看看ram是否工作正常。那么这个文件从一定意义上可以叫做"testbench"。 联想(帮助理解):从quartus里面你仿真,你可能对着那个画图一样的东西画上输入,然后编译以后看他的输出。对吧。那么在modelsim里面,我告诉你,可以不用画图了~,你只需要按照一定规则写一个.v或者.vhd的文件,这个文件可以给你的设计提供你预想的输入。这个就是testbench的文件。然后在modelsim这个特定的软件环境下,这个软件能根据你的代码给你的设计提供输入,又可以把你设计的输出在屏幕上显示出来给你debug。那么这个时候,一个在modelsim上的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。当然咯。这个是你主要目标。 3、输出校验。校验你的输出。英文叫markerboard,他所管的事情就是,接收你设计的输入,然后通过校验,找出对应的问题。然后报错,或者统计错误。等等。通俗的讲,你设计它就是把你自己解脱出来,让他来帮你找错误。他输出给你的可能就是通过打印啊,通知啊,等等方法了解你设计的正确性。 那么你有可能问了,这个东西用verilog或者VHDL能写么,modelsim里能用么?的确是可以的,有写甚至可以用c的代码通过程序接口来转换到modelsim里面来帮助验证。 ===============================高级应用结束========================== 最后小说两句:testbench是一个平台,帮助你从软件方面验证的。对于这个概念不需强求,等你自己的验证写多了,自然而然就会了解其中深刻的含义。先开始慢慢的写一些激励,然后再写写校验。到时候你收获的东西自然而然的能帮助你理解testbench和verification

文章TAG:testbench  能告诉我什么是testbench吗  
下一篇