cancel
Showing results for 
Search instead for 
Did you mean: 
Visitor
Visitor
511 Views
Registered: ‎04-03-2019

AXI4 4K address boundary

Jump to solution
Hi, guys, According to the ARM amba_axi_protocol document, a burst must not cross a 4KB addresss boundary. When I use vivado to create my own IP with AXI4 interface, the automatically generated design file xxxxxx_M0_AXI.v shows "Non-2^n lengths will eventually cause bursts across 4k address boundary" (in the comment for local parameter C_MASTER_LENGTH). So my question is does that mean non-2^n burst length is not allowed for the AXI4 protocol? Thanks
0 Kudos
1 Solution

Accepted Solutions
Highlighted
Scholar
Scholar
473 Views
Registered: ‎05-21-2015

Re: AXI4 4K address boundary

Jump to solution

@joker0208,

Not at all.  _AXI_AxLEN values can be anything from 0 (burst length 1) through 255 (burst length 256).  Nothing prevents you from abusing the protocol and crossing 4kB boundaries in your master.

If I understand correctly, this limitation is designed to keep you from crossing peripherals within a single burst.  If every peripheral's base address is on a 4kB boundary, and the protocol doesn't allow you to cross a 4kB boundary within a burst, then any and all bursts will only ever reference a single peripheral.  Crossing peripheral boundaries inside a single burst can make things difficult for the interconnect to deal with.  (i.e., what happens when one peripheral returns values before another, etc.)

Dan

View solution in original post

2 Replies
Highlighted
Scholar
Scholar
474 Views
Registered: ‎05-21-2015

Re: AXI4 4K address boundary

Jump to solution

@joker0208,

Not at all.  _AXI_AxLEN values can be anything from 0 (burst length 1) through 255 (burst length 256).  Nothing prevents you from abusing the protocol and crossing 4kB boundaries in your master.

If I understand correctly, this limitation is designed to keep you from crossing peripherals within a single burst.  If every peripheral's base address is on a 4kB boundary, and the protocol doesn't allow you to cross a 4kB boundary within a burst, then any and all bursts will only ever reference a single peripheral.  Crossing peripheral boundaries inside a single burst can make things difficult for the interconnect to deal with.  (i.e., what happens when one peripheral returns values before another, etc.)

Dan

View solution in original post

Highlighted
Visitor
Visitor
443 Views
Registered: ‎04-03-2019

Re: AXI4 4K address boundary

Jump to solution

Thank you, Dan. It makes sense.

0 Kudos