UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Visitor icogginsoda
Visitor
430 Views
Registered: ‎02-02-2017

AXI Data mover MAx burst / cmd fragmentation

I have a design using the Xilinx AXI Datamover IP core.  It is configured with 64 bit stream interface and 256 bit MM interface, and a max burst size of 16 beats.

 

I have a video feed, that can be of varying dimensions. I am finding that as long as I submit cmds to the DM core, that are multiples of the 16 beat size, I get one MM transaction per cmd queued and all is well.

 

dIf my video feed is reduced, and I no longer have 16 beats , I am finding that the AXatamover I core is coalescing cmds and then splitting at  what appear to be MAX_BURST 16 beat boundaries - creating interim s2mm_ld_nxt_len / s2mm_wr_len signals and causing a major headache with asserting TLAST correctly.  The extra ld_nxt_len cycle occurs while the first segment is being transferred, so I have to hold the values for later creating pipeline issues.  .

 

The attached image shows the split packet. To the right of the yellow cursor, you'll see a burst len of 07 followed by 03.

 

 

 

bad_dma_burst.png
0 Kudos