diff --git a/rtl/dma_if_pcie_rd.v b/rtl/dma_if_pcie_rd.v index e32a5f13c..c4e647c09 100644 --- a/rtl/dma_if_pcie_rd.v +++ b/rtl/dma_if_pcie_rd.v @@ -617,9 +617,9 @@ always @* begin req_tlp_count_next = req_op_count_reg; dword_count = (req_op_count_reg + req_pcie_addr_reg[1:0] + 3) >> 2; req_last_tlp = 1'b1; - // optimized req_pcie_addr = req_pcie_addr_reg + req_tlp_count_next + // always last TLP, so next address is irrelevant req_pcie_addr[PCIE_ADDR_WIDTH-1:12] = req_pcie_addr_reg[PCIE_ADDR_WIDTH-1:12]; - req_pcie_addr[11:0] = req_pcie_addr_reg[11:0] + req_op_count_reg; + req_pcie_addr[11:0] = 12'd0; end end else begin // packet larger than max read request size diff --git a/rtl/dma_if_pcie_us_rd.v b/rtl/dma_if_pcie_us_rd.v index 521285ac2..333996c33 100644 --- a/rtl/dma_if_pcie_us_rd.v +++ b/rtl/dma_if_pcie_us_rd.v @@ -578,9 +578,9 @@ always @* begin req_tlp_count_next = req_op_count_reg; dword_count = (req_op_count_reg + req_pcie_addr_reg[1:0] + 3) >> 2; req_last_tlp = 1'b1; - // optimized req_pcie_addr = req_pcie_addr_reg + req_tlp_count_next + // always last TLP, so next address is irrelevant req_pcie_addr[PCIE_ADDR_WIDTH-1:12] = req_pcie_addr_reg[PCIE_ADDR_WIDTH-1:12]; - req_pcie_addr[11:0] = req_pcie_addr_reg[11:0] + req_op_count_reg; + req_pcie_addr[11:0] = 12'd0; end end else begin // packet larger than max read request size diff --git a/rtl/pcie_us_axi_dma_rd.v b/rtl/pcie_us_axi_dma_rd.v index 39f079bef..297bbc3ad 100644 --- a/rtl/pcie_us_axi_dma_rd.v +++ b/rtl/pcie_us_axi_dma_rd.v @@ -596,9 +596,9 @@ always @* begin req_tlp_count_next = req_op_count_reg; dword_count = (req_op_count_reg + req_pcie_addr_reg[1:0] + 3) >> 2; req_last_tlp = 1'b1; - // optimized req_pcie_addr = req_pcie_addr_reg + req_tlp_count_next + // always last TLP, so next address is irrelevant req_pcie_addr[PCIE_ADDR_WIDTH-1:12] = req_pcie_addr_reg[PCIE_ADDR_WIDTH-1:12]; - req_pcie_addr[11:0] = req_pcie_addr_reg[11:0] + req_op_count_reg; + req_pcie_addr[11:0] = 12'd0; end end else begin // packet larger than max read request size