大众信息网

请问在Verilog中模块源代码和测试模块源代码关系

关注:62  答案:5  手机版
解决时间 2021-01-08 06:37
如果不写测试代码将会出出现什么问题!
最佳答案
首先,模块源代码描述了一个电路,这个电路要工作,肯定需要一个外部环境(比如clk信号的输入之类的),然后,这个电路的输出我们也希望能查看。

在实际烧写进FPGA之前,我们希望用一个软件来模拟这个电路工作的情况,也就是所说的仿真。

然后,测试代码(testbench)是用来模拟源代码所实现的电路的外部环境的,也可以通过软件来查看这个电路的输出信号的波形。

所以,不写测试代码,只要你能保障源代码正确无误,是可以不用仿真的(但说实话,谁能保证呢,除非电路太简单了)。

另外,由于模块的源代码是要生成具体器件的,所以必须是可综合的。而测试代码只是模拟外部环境,所以不需要是可综合的。
全部回答
如果用的ise,你直接生成verilog test文件,会帮你把乘法器模块添加进去,然后根据需要修改输入参数的值 always #5 clk = !clk; always @(posedge clk) begin //输入参数的值 end
什么问题都不会有~测试可以有很多方式,完全可以不用testbench(modelsim才有的功能)而用波形仿真(quartus自带的功能)。 测试代码只是用来测试的。
如果不写测试代码的话 没有激励源 你就不知道你写的模块是否正确 在仿真环境里没有波形 就是说: 你写的模块,连经过功能仿真 怎么知道这个模块是正确的 举个例子: 你怎么知道 某种动物能抓老鼠? 答案是: 让它抓一只试试 能抓到老鼠的才是好猫, 不经过测试,没有人敢用这个模块
不会出现问题, 源代码是可综合的,应该是硬件描述语言的一个子集
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!