天天看點

AXI協定burst不能跨4k邊界AXI協定中burst不能跨4k邊界總線傳輸中的位址對齊操作

AXI協定中burst不能跨4k邊界

4k邊界是低12bit為0的位址,如32‘h00001000,32’h00002000,這些特殊的位址為4k邊界。

同理1k邊界為低10bit為0的位址,如32‘h00000400,32’h00000800;

32bit邊界(4byte邊界)為0x00,0x04,0x08,0x0c等

4k邊界對齊的最大原因是系統中定義一個page大小為4kBytes,為了更好設定每個slave的通路attribute,就給一個slave劃分4k空間,4k對齊以32位位址為例,[32:12]位相等的位址都是同一個page

如果master需要通路0x1ff0~0x200c共32byte(256bit)的資料(8個beats,每個beat有4byte,arlen=7,arsize=0b010),就需要拆分成0x1ff0~0x1ffc和0x2000~0x200c兩個transaction,每個transaction共4個beats,每個beat共4byte

總線傳輸中的位址對齊操作

AXI協定burst不能跨4k邊界AXI協定中burst不能跨4k邊界總線傳輸中的位址對齊操作
AXI協定burst不能跨4k邊界AXI協定中burst不能跨4k邊界總線傳輸中的位址對齊操作
AXI協定burst不能跨4k邊界AXI協定中burst不能跨4k邊界總線傳輸中的位址對齊操作

繼續閱讀