打印

When Wrapping happens in AXI?

[复制链接]
130|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
稻花香1号|  楼主 | 2018-9-9 12:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
pen, App, pi, AD, ST
Hi Forum,
I cannot understand when address is being wrapped in WRAP burst.In my example, the WRAP condition never happens in other words, during BURST operation address always remains small than wrap address.
From the spec, the wrapping happens when
        Address_N = Wrap_Boundary + (Number_Bytes × Burst_Length),\nAnd every new transfer for WRAP is defined as:
            Address_N = Aligned_Address + (N – 1) × Number_Bytes\nNow if we discuss this example:
Start_Address : 0x04  (d4):
awlen = 3  -> Burst_Length = 4
awsize = 1-> Number_Bytes=2
than we have:
Wrap Boundary = INT( d4/(24) )  (24) = INT(0.5)  8 = 1 *8 = 8
And Wrap Address: Address_N=Wrap_Boundary + (Number_Bytes × Burst_Length) = 8+(2*4) = 16
For the BURST:
Add1=4+ (1-1)*2 = 4
Add2=4+ (2-1)*2 = 6
Add3=4+ (3-1)*2 = 8
Add4=4+ (4-1)*2 = 10    -->  our Burst_length is 4, so BURST is ended no need to WRAP the address, so wrap conditions not happened.
Can someone please help me understand what I missed here? And what is the new address value after WRAP?
Thanks

使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

381

主题

382

帖子

1

粉丝