From e1c081bd2089b87808c592e3dabc4ac464b2a57c Mon Sep 17 00:00:00 2001 From: uvok Date: Fri, 26 Dec 2025 15:12:58 +0100 Subject: Add working toggle implementation --- led_toggle.tb.v | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 led_toggle.tb.v (limited to 'led_toggle.tb.v') diff --git a/led_toggle.tb.v b/led_toggle.tb.v new file mode 100644 index 0000000..f6c6dad --- /dev/null +++ b/led_toggle.tb.v @@ -0,0 +1,55 @@ +`timescale 1us/1ns + +module led_toggle_tb ( +); + +reg clk_i; +reg rst_i; +reg key_i; +wire [5:0] led; +integer i = 0; + +led_toggle uut( + .rst_i(rst_i), + .clk_i(clk_i), + .key_i(key_i), + .led(led) +); +defparam uut.STABLE_PERIOD = 2; + +initial begin + $dumpfile("led_toggle.lxt2"); $dumpvars(); + clk_i <= 0; + key_i <= 1'b1; + #1 + rst_i <= 0; + #1 + rst_i <= 1; +end + +always #10 clk_i = ~clk_i; + + +initial begin + // initial key press + #25 + key_i <= ~key_i; + #40 + key_i <= ~key_i; + + // try bouncing + + #50 + + for (i=0; i < 19; i = i + 1) begin + #20 + key_i <= ~key_i; + end + #200 + key_i <= ~key_i; + + #205 + $finish(); +end + +endmodule -- cgit v1.2.3