aboutsummaryrefslogtreecommitdiffstats
path: root/atk16_fpga/sram.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/sram.v
parent06e8b8dbadf769507abf5368caee253ded139adc (diff)
Start reworking fpga impl
Diffstat (limited to 'atk16_fpga/sram.v')
-rw-r--r--atk16_fpga/sram.v33
1 files changed, 0 insertions, 33 deletions
diff --git a/atk16_fpga/sram.v b/atk16_fpga/sram.v
deleted file mode 100644
index 8d62e48..0000000
--- a/atk16_fpga/sram.v
+++ /dev/null
@@ -1,33 +0,0 @@
-`default_nettype none
-`timescale 1 ns / 100 ps
-
-// This is a memory model of the SRAM chip on the iCE40HX8K-EVB.
-// Relevant specs:
-// - 256Kx16 capacity
-// - 18-bit address bus, 16-bit data bus
-// - 10 ns read or write cycle time
-// - 3 ns output hold from address change
-module sram(
- input wire cs_n,
- input wire wr_n,
- input wire rd_n,
- input wire [17:0] addr,
- input wire [15:0] data_in,
- output reg [15:0] data_out
-);
- reg [15:0] mem [0:262143]; // 256K x 16 memory
-
- always @(cs_n or wr_n or rd_n or addr or data_in) begin
- if (cs_n == 1'b1) begin
- data_out <= #3 16'hx;
- end
- if (cs_n == 1'b0 && wr_n == 1'b0) begin
- mem[addr] <= #3 16'hx;
- mem[addr] <= #7 data_in;
- end
- if (cs_n == 1'b0 && rd_n == 1'b0) begin
- data_out <= #3 16'hx;
- data_out <= #7 mem[addr];
- end
- end
-endmodule