| 000 | SINGLE | Single transfer. |
| 001 | INCR | Incrementing, undefined length. |
| 010/100/110 | WRAP4/8/16 | Wraps at boundary. |
| 011/101/111 | INCR4/8/16 | Linear increment. |
Burst Transfers
Bursts allow the Master to transfer large blocks of data efficiently without renegotiating arbitration for every beat.
Burst Types
Wrapping Bursts (Critical)
Wrapping bursts are used for cache-line fills. The address wraps at the boundary defined by:
Number_of_Beats * Size_of_Beat.
The 1KB Boundary Rule
Rule: A burst must NOT cross a 1KB address boundary.
Why?
Slaves are typically mapped with 1KB separation (minimum). If a burst crosses 0x400 (1KB), it might drift from Slave A's memory space into Slave B's space. Since HSEL (Slave Select) doesn't change during a burst, the burst would continue writing to Slave A (at an invalid offset) or fail.
If a Master wants to cross 1KB, it must terminate the burst and start a new one.
Common Interview Questions
Base = 0x00 (0x00 to 0x1F is limits).
Beat 1: 0x1C.
Beat 2: 0x1C + 4 = 0x20.
0x20 is outside boundary. Wraps to 0x00.
Answer: 0x00.