3
0
Fork 0
mirror of https://github.com/YosysHQ/yosys synced 2025-04-13 12:28:44 +00:00
yosys/techlibs/xilinx7/counter_tb.v
2013-08-22 20:31:04 +02:00

62 lines
1.3 KiB
Verilog

`timescale 1 ns / 1 ps
module testbench;
reg clk, en, rst;
wire [3:0] count;
counter uut_counter(
.clk(clk),
.count(count),
.en(en),
.rst(rst)
);
initial begin
clk <= 0;
forever begin
#50;
clk <= ~clk;
end
end
initial begin
@(posedge clk);
forever begin
@(posedge clk);
$display("%d", count);
end
end
initial begin
rst <= 1; en <= 0; @(posedge clk);
rst <= 1; en <= 0; @(posedge clk);
rst <= 0; en <= 0; @(posedge clk);
rst <= 0; en <= 1; @(posedge clk);
rst <= 0; en <= 1; @(posedge clk);
rst <= 0; en <= 1; @(posedge clk);
rst <= 0; en <= 0; @(posedge clk);
rst <= 0; en <= 1; @(posedge clk);
rst <= 0; en <= 1; @(posedge clk);
rst <= 0; en <= 1; @(posedge clk);
rst <= 1; en <= 1; @(posedge clk);
rst <= 0; en <= 0; @(posedge clk);
rst <= 0; en <= 1; @(posedge clk);
rst <= 0; en <= 1; @(posedge clk);
rst <= 0; en <= 0; @(posedge clk);
rst <= 0; en <= 1; @(posedge clk);
rst <= 0; en <= 1; @(posedge clk);
rst <= 0; en <= 0; @(posedge clk);
rst <= 1; en <= 0; @(posedge clk);
rst <= 0; en <= 1; @(posedge clk);
rst <= 0; en <= 0; @(posedge clk);
rst <= 0; en <= 1; @(posedge clk);
rst <= 0; en <= 1; @(posedge clk);
rst <= 0; en <= 0; @(posedge clk);
rst <= 0; en <= 1; @(posedge clk);
rst <= 0; en <= 0; @(posedge clk);
$finish;
end
endmodule