棋子 · 2020年01月20日

Alignment Address Calculation in AHB

Hello I want to know the calculation for

HSIZE=2 and Wrap 8

and starting address is 0x4

and how we are doing alignment ???

1 个回答 得票排序 · 时间排序
极术小姐姐 · 2020年01月20日

HSIZE=2 means 32-bit transfers, so 4 byte address increments.

The wrapping boundary for an 8-beat, 4 byte WRAP burst will be on multiples of 8x4 bytes, so 32-byte boundaries (HADDR multiples of 0x20).

So starting at 0x4 the WRAP8 burst will access 0x4, 0x8, 0xC, 0x10, 0x14, 0x18 then 0x1C. As the next (8th) address increment would hit the wrap boundary, the next (and final) access would instead wrap back to 0x0.

The HTRANS value for the 0x0 access is still SEQ because this is a sequential expected step for this WRAP burst sequence (it isn't a NONSEQ step).

Hopefully that answers your question.

Up0Down

你的回答