From 291a0864012463238e0a59321d60b8fc694bbbe2 Mon Sep 17 00:00:00 2001 From: uvok Date: Thu, 1 Jan 2026 17:45:49 +0100 Subject: fix cunter, add testbench --- nandgame/counter_tb.sv | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 nandgame/counter_tb.sv (limited to 'nandgame/counter_tb.sv') diff --git a/nandgame/counter_tb.sv b/nandgame/counter_tb.sv new file mode 100644 index 0000000..a7fab85 --- /dev/null +++ b/nandgame/counter_tb.sv @@ -0,0 +1,49 @@ +`timescale 1us/1us + +module counter_tb; + +logic clk_i, store; +logic [15:0] in, res; + +counter uut ( + .cl(clk_i), + .X(in), + .count(res), + .st(store) +); + +string filename; +initial begin +`ifdef DUMP_FILE_NAME + filename=`DUMP_FILE_NAME; +`else + filename="counter.lxt2"; +`endif + $dumpfile(filename); $dumpvars(); + clk_i = 0; + store = 0; + in = 0; +end + +always #10 clk_i = ~clk_i; + +initial begin + #200 + @(posedge clk_i); + store = 1; + in = 16'd834; + repeat(3) begin + @(posedge clk_i); + assert (res == 834) + else $error("Expected 834, got %d", res); + end + store = 0; + @(posedge clk_i); + assert (res == 835) + else $error("Expected 835, got %d", res); + #30 + + $finish(); +end + +endmodule -- cgit v1.2.3