blob: c56b13c4a2ab3b2eab7b8f84857db453f73e3dca (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
|
`timescale 1 ns / 10 ps
module collatz_tb ();
reg clk = 0;
reg rst = 0;
wire idle;
localparam integer DURATION = 500_000;
always begin
#41.667;
clk = ~clk;
end
reg [24:0] n = 1_000_000;
reg start_int;
wire [24:0] count_out;
collatz #(
.WIDTH(32)
) ctz (
.clk(clk),
.rst(rst),
.in_start(n),
.start_int(start_int),
.o_count(count_out),
.idle(idle)
);
initial begin
#10 rst = 1'b1;
#1 rst = 1'b0;
end
initial begin
$dumpfile("collatz_tb.vcd");
$dumpvars(0, collatz_tb);
#50 start_int = 1;
#10 start_int = 0;
#(DURATION);
$display("Finished!");
$finish;
end
endmodule
|