[求助]
用verilog hdl编写的19位计数器的testbench如何编写?
modulecounter(inclk,rst_n,en,out);
input inclk,rst_n,en;
output[18:0] out;
reg[18:0] out,value_r;
always @(posedge inclk ornegedge rst_n)
if(~rst_n) value_r<=19'b0;
else
if(en)
begin
value_r<=value_r+19'h1;
end
else
if(!en)
begin
out<=value_r;
value_r<=0;
end
initial value_r<=0;
endmodule
以上为该计数器的源程序。
谢谢。
自己尝试了好多遍编写testbench,总是有问题。
- module tb_count();
- reg inclk;
- reg rst_n;
- reg en;
- wire[18:0] out;
- initial
- begin
- inclk = 0 ;
- rst_n <= 0 ;
- en <= 0 ;
- #50
- rst_n <= 1 ;
- end
- always #5 inclk = ~inclk ;
- always #100 en <= ~en ;
- counter counter_inst(
- .inclk (inclk ),
- .rst_n (rst_n ),
- .en (en ),
- .out (out )
- );
-
- endmodule