| module top( |
| input wire clk, |
| output wire [3:0] led |
| ); |
| |
| wire [63:0] emio_gpio_o; |
| wire [63:0] emio_gpio_t; |
| wire [63:0] emio_gpio_i; |
| |
| wire clk_bufg; |
| BUFG BUFG(.I(clk), .O(clk_bufg)); |
| |
| wire en_counter = ~emio_gpio_o[0]; |
| wire count_direction = ~emio_gpio_o[1]; |
| reg [31:0] counter = 0; |
| |
| always @(posedge clk_bufg) begin |
| if (en_counter) |
| if (count_direction) |
| counter <= counter + 1; |
| else |
| counter <= counter - 1; |
| end |
| |
| assign led = counter[27:24]; |
| |
| // The PS7 |
| (* KEEP, DONT_TOUCH *) |
| PS7 PS7( |
| .EMIOGPIOO (emio_gpio_o), |
| .EMIOGPIOTN (emio_gpio_t), |
| .EMIOGPIOI (emio_gpio_i), |
| ); |
| |
| |
| endmodule |