字节如何映射到小端系统上的AXI4总线

时间:2015-11-13 19:31:30

标签: hardware endianness cpu-architecture amba

如果在小端处理器上运行的程序将值0xaabbccdd写入地址0,并且处理器使用32位宽的AXI4总线,则是WDATA 0xaa或0xdd的31-24位?

AXI不会暴露字节可寻址存储器 - 它只能读取或写入完整数据总线宽度(本例中为32位)。问题是它如何将字节值的地址映射到数据总线位。

AXI spec(rev E)的第A3.4.3节讨论"字节不变"字节序,但似乎没有解释数据总线上的字节顺序。

1 个答案:

答案 0 :(得分:1)

  

如果小端处理器通过32位宽的AXI4总线将未缓存的值0xaabbccdd写入地址0,那么WDATA的31-24位是0xaa还是0xdd?

WDATA的31-24位为0xAA,与处理器字节序无关。但是内存中字节的顺序由字节顺序决定。有关字节不变字节序的说明,请参见this answer