on

您所在的位置:网站首页 axi读写 on

on

2023-12-28 10:35| 来源: 网络整理| 查看: 265

1.突发长度、突发大小

突发长度(burst length):指在一次突发传输中进行的数据传输次数,用AxLEN字段标识。由于标识值是从0开始的,实际的突发长度应为标识值+1,即突发长度=AxLEN + 1.

突发大小(burst size):指突发传输中的每次数据传输的字节数,用AxSIZE字段标示。

突发大小=2^AxSIZE

2.非对齐传输(Unaligned Transfer)

        首先需要理解地址的对齐传输:在ARM的32bit的地址总线中,其最低两位[1:0]=0,所以从第三位开始,地址也就是4的倍数,如0x00,0x04,0x08等,都是对齐的。

        AHB总线只支持对齐传输,而AXI协议支持地址的非对齐传输。在AXI传输中,只需要在传输时给出首地址,其后的传输地址都是由首地址和突发大小、突发类型决定的。在第一笔数据的传输时,如果首地址不是对齐的,那么主设备会在第一笔传输中对数据进行填充,直到首次传输填充至地址对齐,然后,再用WSTRB信号将填充的数据标记为无效。这样,之后的传输地址也就都是对齐的了。

        举个例子,假设AwLEN = 3, AwSIZE=2,首地址为0x01,如图,则:

突发长度=AwLEN+1=4,

突发大小=2^2=4bytes=32bits

        图中传输的首地址为0x01,是非对齐的。AXI协议就会对0x00地址进行填充,并用WSTRB信号标记,这样传输的首地址就是0x00了。这么一来,随后三笔的传输自然就都是对齐的了。需注意的是,这笔突发传输的第一笔有效数据,在master端和slave端都是3bytes,因为第一byte的数据已经被标记为无效了,该地址的数据是被填充以满足传输地址对齐的需求。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3