first commit

This commit is contained in:
2025-04-06 00:11:28 -04:00
commit 6206025f5a
16 changed files with 930 additions and 0 deletions

92
rtl/basys3_toplevel.sv Normal file
View File

@@ -0,0 +1,92 @@
module basys3_toplevel (
input logic clk,
input logic btnC,
input logic btnU,
input logic btnL,
input logic btnR,
input logic btnD,
input logic [15:0] sw,
output logic [15:0] led
);
logic clock;
logic reset;
assign clock = clk;
assign reset = sw[0];
logic got_strike;
logic got_ball;
logic got_foul;
logic got_hit;
logic got_out;
logic [1:0] strike_count;
logic [2:0] ball_count;
logic [1:0] out_count;
logic [3:0] inning_count;
logic team_active;
assign led[15:12] = inning_count;
assign led[11] = 'b0;
assign led[10] = team_active;
assign led[9] = 'b0;
assign led[8] = (strike_count > 0);
assign led[7] = (strike_count > 1);
assign led[6] = 'b0;
assign led[5] = (ball_count > 0);
assign led[4] = (ball_count > 1);
assign led[3] = (ball_count > 2);
assign led[2] = 'b0;
assign led[1] = (out_count > 0);
assign led[0] = (out_count > 1);
button_trigger btnC_trigger (
.clock(clock),
.reset(reset),
.raw_button(btnC),
.trigger_signal(got_out)
);
button_trigger btnU_trigger (
.clock(clock),
.reset(reset),
.raw_button(btnU),
.trigger_signal(got_hit)
);
button_trigger btnL_trigger (
.clock(clock),
.reset(reset),
.raw_button(btnL),
.trigger_signal(got_strike)
);
button_trigger btnR_trigger (
.clock(clock),
.reset(reset),
.raw_button(btnR),
.trigger_signal(got_ball)
);
button_trigger btnD_trigger (
.clock(clock),
.reset(reset),
.raw_button(btnD),
.trigger_signal(got_foul)
);
baseball_scoreboard baseball(
.clock(clock),
.reset(reset),
.got_strike(got_strike),
.got_ball(got_ball),
.got_foul(got_foul),
.got_hit(got_hit),
.got_out(got_out),
.strike_count(strike_count),
.ball_count(ball_count),
.out_count(out_count),
.inning_count(inning_count),
.team_active(team_active)
);
endmodule