gateware

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README

commit 8dbf2e4226d6b897836db6055734ee4d8f0956e2
parent fe0d0a7e943c0a82de682ec89cfff40e72c6a217
Author: Brian Swetland <swetland@frotz.net>
Date:   Tue,  4 Feb 2020 12:19:07 -0800

sdram: fix off by one in burst length

Diffstat:
Mhdl/sdram/sdram.sv | 18++++++++++++------
1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/hdl/sdram/sdram.sv b/hdl/sdram/sdram.sv @@ -274,7 +274,12 @@ always_comb begin io_sel_a10_next = 0; // no auto precharge rd_pipe_rdy_next = { 1'b1, rd_pipe_rdy[PMSB:1] }; rd_pipe_bsy_next = { PMSB + 1 { 1'b1 } }; - state_next = (burst != 4'd0) ? READ : IDLE; + if (burst == 4'd0) begin + state_next = IDLE; + end else begin + state_next = READ; + burst_next = burst_sub1; + end end end START_WRITE: if (!rd_pipe_bsy[0]) begin @@ -291,11 +296,12 @@ always_comb begin io_sel_row_next = 0; // column addr io_sel_a10_next = 0; // no auto precharge data_oe_next = 1; - if (burst != 4'd0) begin - state_next = WRITE; - end else begin + if (burst == 4'd0) begin state_next = IDLE; + burst_next = burst_sub1; count_next[2] = 1; count_done_next = 0; // WR? + end else begin + state_next = WRITE; end end end @@ -309,7 +315,7 @@ always_comb begin bank_row_next[io_bank] = io_row; end READ: begin - if (burst_done) begin + if (burst == 4'd0) begin state_next = IDLE; end else begin burst_next = burst_sub1; @@ -321,7 +327,7 @@ always_comb begin rd_pipe_bsy_next = { PMSB + 1 { 1'b1 } }; end WRITE: begin - if (burst_done) begin + if (burst == 4'd0) begin state_next = IDLE; count_next[2] = 1; count_done_next = 0; // WR? end else begin