pulp-platform / axi

AXI SystemVerilog synthesizable IP modules and verification infrastructure for high-performance on-chip communication
Other
980 stars 245 forks source link

Add axi_burst_unwrap #326

Open niwis opened 7 months ago

niwis commented 7 months ago

Add a module that converts wrapping bursts into up to two incremental bursts.

The first incremental burst covers the region from the start address to the wrap boundary. The second burst covers the region from the aligned base address to the start address. In the special case of an aligned start address, the wrapping burst can be trivially converted into a single incremental burst.

By splitting wrapping bursts that wrap around the wrap boundary into two incremental bursts, the ordering of the read/write transactions is preserved and no data buffering is required.

This module hasn't been properly verified yet.