User manual

Blinky using registers
// File name: Blinky_D.sv
//
// 10Sep2013 .. initial version .. K.Metzger
//
module Blinky_D
(
output LEDR[0],
input CLOCK_50
);
logic led_bit, next_led_bit, clk;
logic [24:0] counter, next_counter;
initial begin
led_bit = 0;
counter = 25000000-1;
end
assign clk = CLOCK_50;
assign LEDR[0] = led_bit;
always_ff @(posedge clk) begin
led_bit <= next_led_bit;
counter <= next_counter;
end
always_comb begin
next_counter = counter-1;
next_led_bit = led_bit;
if (counter == 0) begin
next_counter = 25000000-1;
next_led_bit = ~led_bit;
end
end
endmodule
EECS 452 Fall 2014 Lecture 5 Page 99/143 Tuesday September 16, 2014