关于IP核的顶层仿真文件testbench,应该如何写
时间:10-02
整理:3721RD
点击:
我在底层文件里,添加了2个除法器的IP核,想仿真一下,但是不知道testbench怎么写?望高人指点?
我的底层文件是这样写的:
module test(clk,
divisor1,divisor2,
dividend1,dividend2,
quotient1,quotient2,
remainder1,remainder2,
rfd1,rfd2,);
input clk;
input [15:0] divisor1,divisor2;
input [15:0] dividend1,dividend2;
output [15:0] quotient1,quotient2;
output [15:0] remainder1,remainder2;
output rfd1,rfd2;
divider d1(
.clk(clk),
.dividend(dividend1),
.divisor(divisor1),
.quotient(quotient1),
.remainder(remainder1),
.rfd(rfd1)
);
divider d2(
.clk(clk),
.dividend(dividend2),
.divisor(divisor2),
.quotient(quotient2),
.remainder(remainder2),
.rfd(rfd2)
);
endmodule
请问:顶层仿真文件testbench该如何写?
我的底层文件是这样写的:
module test(clk,
divisor1,divisor2,
dividend1,dividend2,
quotient1,quotient2,
remainder1,remainder2,
rfd1,rfd2,);
input clk;
input [15:0] divisor1,divisor2;
input [15:0] dividend1,dividend2;
output [15:0] quotient1,quotient2;
output [15:0] remainder1,remainder2;
output rfd1,rfd2;
divider d1(
.clk(clk),
.dividend(dividend1),
.divisor(divisor1),
.quotient(quotient1),
.remainder(remainder1),
.rfd(rfd1)
);
divider d2(
.clk(clk),
.dividend(dividend2),
.divisor(divisor2),
.quotient(quotient2),
.remainder(remainder2),
.rfd(rfd2)
);
endmodule
请问:顶层仿真文件testbench该如何写?
我顶
testbench跟是不是IP没有关系,你要根据IP实现的功能来写。sigh
找一个标准的testbench对着写就行了,无非是由以下几部分组成:
(1)例化你所需要测试的模块。
(2)生成输入激励,包括:时钟信号与数据信号。
(3)检查响应对不对。
具体就靠自己学了
找一个标准的testbench对着写就行了,无非是由以下几部分组成:
(1)例化你所需要测试的模块。
(2)生成输入激励,包括:时钟信号与数据信号。
(3)检查响应对不对。
具体就靠自己学了
言简意赅啊!强!
建议先看一下IPcore的datasheet,上面有各个信号的定义
谢谢~
