今天把AXI协议看完了,有下面问题请各位帮忙解决:
Q1:
AHB中M个master与N个slave通过a central mul
tiplexor interconnection scheme(总裁器与译码器等)实现连接
通信。在AXI中,master与slave之间有5个channel进行连接(写地址,写数据,写回应,读地址,读数据),这样看似乎是master与slave之间的一一对应关系,但是在AXI标准中又提出interconnect的概念,是否通过interconnect实现M个master与N个slave的互连,如果是,能不能理解为类似AHP中的a central multiplexor interconnection scheme部分,在interconnect内部实现总裁与译码?如果不是,那interconnect的功能是什么?
Q2:
Each AXI channel transfers information in only one direction, and there is no requirement for a fixed relationship between the various channels. This is important because it enables the insertion of a register slice in any channel, at the cost of an additional cycle of latency. This makes possible a trade-off between cycles of latency and maximum frequency of operation.register slice的解释,为什么使用register slice?
Q3:
master的burst transaction中相关控制信息是否走write address channel传输给slave?地址信息为什么为31位,AXI译码方式与AHP中的区别?
Q4:
这里还是需要搞清楚transfer和transaction的区别?注意下面数个描述:“The write address bus gives the address of the first transfer in a write burst transaction.”,“The burst length gives the exact number of transfers in a burst.”,“Every transaction must have the number of transfers specified by ARLEN or AWLEN.”,“The AXI protocol uses burst-based addressing, which means that each transaction consists of a number of data transfers.”我的理解是一次burst可以理解为一个transaction,而在一个transaction内包含burst length个transfer。和TommyGG 的回答是否有冲突?
Q5:
master的burst transaction中相关控制信息是否走write address channel传输给slave?地址信息为什么为31位,AXI译码方式与AHP中的区别?
Q6:
Bufferable与catchable的是什么?具体作用体现?文档中下述描述的解释:
Bufferable (B) bit, ARCACHE[0] and AWCACHE[0]
When this bit is HIGH, it means that the interconnect or any component can delay the transaction reaching its final destination for an arbitrary number of cycles. This is usually only relevant to writes.(延时的作用,什么情况下会出现这种情况?)
Cacheable (C) bit, ARCACHE[1] and AWCACHE[1]
When this bit is HIGH, it means that the transaction at the final destination does not have to match the characteristics of the original transaction.
For writes this means that a number of different writes can be merged together.
For reads this means that a location can be pre-fetched or can be fetched just once for multiple read transactions.(什么情况下读写操作会有这样的需求?)
Q7:
privileged access是指什么样的access(“A privileged processing mode typically has a greater level of access within a system.”)?
secure access与non-secure access的区别,在什么情况下要对access进行这样的标记?
Q8:
Atomic access具体指什么类型操作?
exclusive access与locked access操作的区别是否主要集中在一下描述中:“The exclusive access mechanism enables the implementation of semaphore type operations without requiring the bus to remain locked to a particular master for the duration of the operation. (exclusive access mechanism能完成semaphore type operations,并且在此操作期间不要求当前操作定主机lock总线,semaphore type operations?)The advantage of exclusive access is that semaphore type operations do not impact either the critical bus access latency or the maximum achievable bandwidth.”?
exclusive access怎么翻译, exclusive在什么情况下可以发挥自己的作用??
semaphore type operations具体指什么类型操作?
A single-ported slave是指什么样的slave,port这里具体指什么?
Q9:
DECERR与SLVERR的区别?
Q10:
在ID tag相同的情况下是怎么样保证有序的?需要保证有序的最小单位是burst还是burst内的transfer?
AWID,WID,ARID RID这几个信号的作用?
Q11:
multiple outstanding addresses是指?
multiple outstanding addresses与transactions out of order是否具有内在联系?
Q12:
the read data reordering depth是指什么?
Q13:
write data interleaving是指什么样的操作?Write data interleaving enables a slave interface to accept interleaved write data with different AWID values. The slave declares a write data interleaving depth that indicates if the interface can accept interleaved write data from sources with different AWID values.
这里的different AWID values是指来自同一master还是不同master?
write data interleaving depth的具体作用?
Q14:
Byte-invariant具体是指什么?能否举一个实例?
原作者:countryhotel