请问在Verilog中模块源代码和测试模块源代码关系
答案:5 mip版
解决时间 2021-01-08 06:37
- 提问者网友:情婲、毒
- 2021-01-08 00:36
如果不写测试代码将会出出现什么问题!
最佳答案
- 二级知识专家网友:清和十五
- 2021-01-08 01:31
首先,模块源代码描述了一个电路,这个电路要工作,肯定需要一个外部环境(比如clk信号的输入之类的),然后,这个电路的输出我们也希望能查看。
在实际烧写进FPGA之前,我们希望用一个软件来模拟这个电路工作的情况,也就是所说的仿真。
然后,测试代码(testbench)是用来模拟源代码所实现的电路的外部环境的,也可以通过软件来查看这个电路的输出信号的波形。
所以,不写测试代码,只要你能保障源代码正确无误,是可以不用仿真的(但说实话,谁能保证呢,除非电路太简单了)。
另外,由于模块的源代码是要生成具体器件的,所以必须是可综合的。而测试代码只是模拟外部环境,所以不需要是可综合的。
在实际烧写进FPGA之前,我们希望用一个软件来模拟这个电路工作的情况,也就是所说的仿真。
然后,测试代码(testbench)是用来模拟源代码所实现的电路的外部环境的,也可以通过软件来查看这个电路的输出信号的波形。
所以,不写测试代码,只要你能保障源代码正确无误,是可以不用仿真的(但说实话,谁能保证呢,除非电路太简单了)。
另外,由于模块的源代码是要生成具体器件的,所以必须是可综合的。而测试代码只是模拟外部环境,所以不需要是可综合的。
全部回答
- 1楼网友:青春敷年華
- 2021-01-08 04:49
如果用的ise,你直接生成verilog test文件,会帮你把乘法器模块添加进去,然后根据需要修改输入参数的值
always #5 clk = !clk;
always @(posedge clk)
begin
//输入参数的值
end
- 2楼网友: 深知你是梦
- 2021-01-08 04:34
什么问题都不会有~测试可以有很多方式,完全可以不用testbench(modelsim才有的功能)而用波形仿真(quartus自带的功能)。
测试代码只是用来测试的。
- 3楼网友:在時光深處躲貓貓
- 2021-01-08 03:31
如果不写测试代码的话 没有激励源
你就不知道你写的模块是否正确
在仿真环境里没有波形
就是说: 你写的模块,连经过功能仿真 怎么知道这个模块是正确的
举个例子: 你怎么知道 某种动物能抓老鼠?
答案是: 让它抓一只试试
能抓到老鼠的才是好猫, 不经过测试,没有人敢用这个模块
- 4楼网友:最强暴君
- 2021-01-08 01:55
不会出现问题,
源代码是可综合的,应该是硬件描述语言的一个子集
我要举报
如以上问答内容为低俗/色情/暴力/不良/侵权的信息,可以点下面链接进行举报,我们会做出相应处理,感谢你的支持!
点此我要举报以上问答信息
推荐资讯