/* Binary counter displayed on LEDs (the 4 green ones on the right). | |
* Changes value about once a second. | |
*/ | |
module top ( | |
input clk, | |
output LED2, | |
output LED3, | |
output LED4, | |
output LED5 | |
); | |
localparam BITS = 4; | |
localparam LOG2DELAY = 22; | |
reg [BITS+LOG2DELAY-1:0] counter = 0; | |
reg [BITS-1:0] outcnt; | |
always @(posedge clk) begin | |
counter <= counter + 1; | |
outcnt <= counter >> LOG2DELAY; | |
end | |
assign {LED2, LED3, LED4, LED5} = outcnt; | |
endmodule |