diff options
Diffstat (limited to 'platform/wavelet3d/gfx_bootrom.sv')
| -rw-r--r-- | platform/wavelet3d/gfx_bootrom.sv | 66 |
1 files changed, 0 insertions, 66 deletions
diff --git a/platform/wavelet3d/gfx_bootrom.sv b/platform/wavelet3d/gfx_bootrom.sv deleted file mode 100644 index 2c4581e..0000000 --- a/platform/wavelet3d/gfx_bootrom.sv +++ /dev/null @@ -1,66 +0,0 @@ -module gfx_bootrom -import gfx::*; -( - input logic clk, - rst_n, - - gfx_axil.s axis -); - - localparam ROM_WORDS_LOG = 8; - - enum int unsigned - { - WAIT, - READ, - RDATA, - READY - } state; - - word read, rom[1 << ROM_WORDS_LOG]; - logic[ROM_WORDS_LOG - 1:0] read_addr; - - assign axis.bvalid = 0; - assign axis.wready = 0; - assign axis.awready = 0; - - always_ff @(posedge clk or negedge rst_n) - if (~rst_n) begin - state <= WAIT; - axis.rvalid <= 0; - axis.arready <= 0; - end else begin - axis.arready <= 0; - - unique case (state) - WAIT: - if (axis.arvalid & ~axis.arready) - state <= READ; - - READ: - state <= RDATA; - - RDATA: begin - state <= READY; - axis.rvalid <= 1; - end - - READY: - if (axis.rready) begin - state <= WAIT; - axis.rvalid <= 0; - axis.arready <= 1; - end - endcase - end - - always_ff @(posedge clk) begin - read <= rom[read_addr]; - read_addr <= axis.araddr[$bits(read_addr) + SUBWORD_BITS - 1:SUBWORD_BITS]; - axis.rdata <= read; - end - - initial - $readmemh("gfx_bootrom.hex", rom); - -endmodule |
