From df1c4f07863bae359994347228865467f84c67ad Mon Sep 17 00:00:00 2001 From: Lars-Peter Clausen Date: Tue, 18 Mar 2014 19:03:16 +0100 Subject: [PATCH] axi_dmac: data_mover: Improve timing The pending_burst signal and the expression id != request_id are almost identical. pending_burst goes high with a delay of one clock cycle, but the important thing is that it goes low on the same clock cycle as the expression. By using pending_burst here instead of 'id != request_id' we can reduce the fanout of the 'id' register and improve the timing of the core. --- library/axi_dmac/data_mover.v | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/library/axi_dmac/data_mover.v b/library/axi_dmac/data_mover.v index bf905968f..ded6727d1 100644 --- a/library/axi_dmac/data_mover.v +++ b/library/axi_dmac/data_mover.v @@ -152,7 +152,7 @@ end always @(*) begin if ((s_axi_ready && s_axi_valid && last) || - (sync_id && id != request_id)) + (sync_id && pending_burst)) id_next <= inc_id(id); else id_next <= id;