diff --git a/rtl/axi_dma_rd.v b/rtl/axi_dma_rd.v index 8d1a9b994..13379ef52 100644 --- a/rtl/axi_dma_rd.v +++ b/rtl/axi_dma_rd.v @@ -339,7 +339,7 @@ always @* begin AXI_STATE_START: begin // start state - initiate new AXI transfer if (!m_axi_arvalid) begin - if (op_word_count_reg <= AXI_MAX_BURST_SIZE - (addr_reg & OFFSET_MASK)) begin + if (op_word_count_reg <= AXI_MAX_BURST_SIZE - (addr_reg & OFFSET_MASK) || AXI_MAX_BURST_SIZE >= 4096) begin // packet smaller than max burst size if (addr_reg[12] != addr_plus_count[12]) begin // crosses 4k boundary diff --git a/rtl/axi_dma_wr.v b/rtl/axi_dma_wr.v index 0bfad4b05..5dc25a5c7 100644 --- a/rtl/axi_dma_wr.v +++ b/rtl/axi_dma_wr.v @@ -425,7 +425,7 @@ always @* begin end STATE_START: begin // start state - initiate new AXI transfer - if (op_word_count_reg <= AXI_MAX_BURST_SIZE - (addr_reg & OFFSET_MASK)) begin + if (op_word_count_reg <= AXI_MAX_BURST_SIZE - (addr_reg & OFFSET_MASK) || AXI_MAX_BURST_SIZE >= 4096) begin // packet smaller than max burst size if (addr_reg[12] != addr_plus_count[12]) begin // crosses 4k boundary