aboutsummaryrefslogtreecommitdiffstats
path: root/atk16_fpga/bram_fsm.v
diff options
context:
space:
mode:
authorJan Tuomi <jan@jantuomi.fi>2025-03-18 18:38:44 +0200
committerJan Tuomi <jan@jantuomi.fi>2025-03-18 18:38:44 +0200
commit69de37cdb25563f6cbd2a3c1a338b1e0dd47b3a4 (patch)
treec1895044fd0051f919a989460be3ac39a6ab09b8 /atk16_fpga/bram_fsm.v
parent06e8b8dbadf769507abf5368caee253ded139adc (diff)
Start reworking fpga impl
Diffstat (limited to 'atk16_fpga/bram_fsm.v')
-rw-r--r--atk16_fpga/bram_fsm.v58
1 files changed, 0 insertions, 58 deletions
diff --git a/atk16_fpga/bram_fsm.v b/atk16_fpga/bram_fsm.v
deleted file mode 100644
index 763b853..0000000
--- a/atk16_fpga/bram_fsm.v
+++ /dev/null
@@ -1,58 +0,0 @@
-`default_nettype none
-
-`define ST_IDLE 3'd0
-`define ST_READ 3'd1
-`define ST_WRITE 3'd2
-
-module bram_fsm(
- input clk,
- input [15:0] addr,
- input [15:0] data_in,
- input read_en,
- input write_en,
-
- output wire [15:0] data_out,
- output reg done
-);
- reg wr, rd;
- reg [15:0] bram_addr;
- reg [2:0] state = 0;
- bram bram_inst(
- .clk(clk),
- .addr(bram_addr),
- .cs_n(1'd0),
- .wr_n(~wr),
- .rd_n(~rd),
- .bram_data_in(data_in),
- .bram_data_out(data_out)
- );
-
- always @(posedge clk) begin
- case (state)
- `ST_IDLE: begin
- done <= 0;
- if (~done && read_en) begin
- state <= `ST_READ;
- bram_addr <= addr;
- rd <= 1;
- wr <= 0;
- end
- else if (~done && write_en) begin
- state <= `ST_WRITE;
- bram_addr <= addr;
- rd <= 0;
- wr <= 1;
- end
- end
- `ST_READ: begin
- state <= `ST_IDLE;
- done <= 1;
- end
- `ST_WRITE: begin
- state <= `ST_IDLE;
- done <= 1;
- end
- endcase
- end
-
-endmodule