1.axi bus matrix
为什么axi bus matrix没有成为soc内多master和多slave的互联总线?现在常用的都是noc
axi bus matrix都是corssbar拓扑结构?对于大型soc太过于复杂?
2.跨4K拆分
4K边界可以看成是master侧对边界的主动保护。比如两个slave地址是连序的,那么在第一个slave末尾附近地址发起一个长burst跨越边界,第二个slave实际上没有完成前面的AW或者AR通道的握手,这个会引起总线异常。
如果是大片地址的slave设备,并且本身没有4K边界的要求,双方约定好,master侧可以不进行4K边界检测。
上面的结论是基于不同slave的地址边界是对齐4K的。还有一种说法是ddr的page是以4K为单位,不同的page可能具有不同的属性,为了属性的区分才有了跨4K拆分。
总的来说地址对齐和跨地址拆分都是不同slave提出的要求,不同的slave可能有不同的要求。比如说一个on-chip sram挂在总线上,这个on-chip sram是由多个N×1024×256的mem组成,要求trans不能跨mem读取且地址32B对齐。那么就要对跨32K的地址进行拆分。
3.AXI的deadLock与noc的deadlock
ax的deadlock有哪几类?
和out-of-order有关?
DesignWare DW_AXI的deadLock_axi deadlock-****博客