`timescale 1ns / 1ps
module test_name();
//时钟和复位
reg clk;
reg rst_n;
//输入信号
reg[3:0] din0;
reg din1;
//输出信号
wire dout0;
wire [4:0] dout1;
//时钟周期,单位ns
parameter CVCLE = 20;//例20纳秒一个周期
//复位时间,此时表示复位3个时钟周期的时间
parameter RST_TIME = 3;//例:3个周期也就是60纳秒一复位
//待测试的模块例化
module_name uut(
.clk(clk),
.rst_n(rst_n),
.din0 (din0),
.din1(din1),
.dout0(dout0),
.dout1(dout1)
);
//生成本地时钟
initial begin
clk = 0;
forever
#(CVCLE/2)
clk=~clk;
end
//生成复位信号
initial begin
rst_n = 1;
#2;
rst_n = 0;
#(CVCLE*RST_TIME);
rst_n = 1;
end
//输入信号din0赋值方式
initial begin
#1;
//赋初值
din0 = 0;
#(10*CVCLE);
//开始赋值
end
//输入信号din1的赋值方式
initial begin
#1;
//赋初值
din1 = 0;
#(10*CVCLE);
//开始赋值
end
endmodule
07-16
2906
06-06
1431
06-19
1904
08-21