diff options
| author | uvok | 2025-12-26 15:12:58 +0100 |
|---|---|---|
| committer | uvok | 2025-12-26 15:12:58 +0100 |
| commit | e1c081bd2089b87808c592e3dabc4ac464b2a57c (patch) | |
| tree | 41c5d4fb2e94ae4514b4b0e560eece7e16a1bb58 /led_toggle.tb.v | |
| parent | a36697cf98292e28e82870f0b2fdaa4243021671 (diff) | |
Add working toggle implementation
Diffstat (limited to 'led_toggle.tb.v')
| -rw-r--r-- | led_toggle.tb.v | 55 |
1 files changed, 55 insertions, 0 deletions
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 |
