keypad working
This commit is contained in:
parent
55adbcf90a
commit
4855bbc42d
10 changed files with 526 additions and 213 deletions
65
chip8.sv
65
chip8.sv
|
@ -1,23 +1,35 @@
|
|||
module chip8 (
|
||||
input wire fpga_clk,
|
||||
input wire rst_in,
|
||||
output logic lcd_clk,
|
||||
output logic lcd_clk,
|
||||
output logic lcd_data,
|
||||
output logic [5:0] led,
|
||||
input wire [3:0] row,
|
||||
output logic [3:0] col
|
||||
);
|
||||
logic slow_clk;
|
||||
logic debug_overlay;
|
||||
logic slow_clk;
|
||||
`ifdef FAST_CLK
|
||||
assign slow_clk = fpga_clk;
|
||||
assign slow_clk = fpga_clk;
|
||||
`endif
|
||||
|
||||
`ifndef FAST_CLK
|
||||
downclocker #(10) dc(fpga_clk, slow_clk);
|
||||
downclocker #(12) dc (
|
||||
fpga_clk,
|
||||
slow_clk
|
||||
);
|
||||
`endif
|
||||
|
||||
logic key_clk;
|
||||
downclocker #(24) dck(fpga_clk, key_clk);
|
||||
`ifdef FAST_CLK
|
||||
downclocker #(1) dck (
|
||||
`endif
|
||||
`ifndef FAST_CLK
|
||||
downclocker #(12) dck (
|
||||
`endif
|
||||
fpga_clk,
|
||||
key_clk
|
||||
);
|
||||
|
||||
logic [7:0] rd_memory_data;
|
||||
logic [11:0] rd_memory_address;
|
||||
|
@ -25,27 +37,37 @@ logic slow_clk;
|
|||
logic [7:0] wr_memory_data;
|
||||
logic wr_go;
|
||||
memory #(4096) mem (
|
||||
slow_clk,
|
||||
wr_go,
|
||||
wr_memory_address,
|
||||
wr_memory_data,
|
||||
rd_memory_address,
|
||||
rd_memory_data
|
||||
);
|
||||
slow_clk,
|
||||
wr_go,
|
||||
wr_memory_address,
|
||||
wr_memory_data,
|
||||
rd_memory_address,
|
||||
rd_memory_data
|
||||
);
|
||||
|
||||
logic [15:0] keymap;
|
||||
|
||||
keypad keypad (
|
||||
`ifndef DUMMY_KEYPAD
|
||||
key_clk,
|
||||
`endif
|
||||
`ifdef DUMMY_KEYPAD
|
||||
slow_clk,
|
||||
`endif
|
||||
row,
|
||||
col,
|
||||
keymap
|
||||
);
|
||||
|
||||
assign led = { key_clk, 1'b0, slow_clk, 1'b0, fpga_clk, 1'b0};
|
||||
|
||||
keypad keypad(
|
||||
key_clk,
|
||||
row,
|
||||
col,
|
||||
led
|
||||
);
|
||||
|
||||
int cycle_counter;
|
||||
logic [5:0] nc;
|
||||
cpu cpu (
|
||||
slow_clk,
|
||||
fpga_clk,
|
||||
rd_memory_data,
|
||||
keymap,
|
||||
cycle_counter,
|
||||
rd_memory_address,
|
||||
wr_memory_address,
|
||||
|
@ -53,7 +75,10 @@ logic slow_clk;
|
|||
wr_go,
|
||||
lcd_clk,
|
||||
lcd_data,
|
||||
nc
|
||||
nc,
|
||||
row,
|
||||
col,
|
||||
debug_overlay
|
||||
);
|
||||
|
||||
endmodule
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue