AXI死锁

  • Post author:
  • Post category:其他




1. 不遵守AXI协议造成:

  • AXI4协议移除了WID,那么master连发多个trans时,aw通道虽然和w通道隔离,但是顺序就必定要一致了,否则无法判断WDATA到底是哪个AWADDR的
  • 虽然AXI3协议有WID,但是协议规定

    WDATA第一笔必须和顺序一致

    ,比如AW通道发送ADDR0, ADDR1,ADDR2 三笔写操作,每个写操作burst length=2,那么W通道的顺序在AXI4协议的规定下必须是WDATA0_0,WDATA0_1,WDATA1_0,WDATA1_1,WDATA2_0,WDATA2_1;而AXI3协议稍微宽松一点可以是WDATA0_0, WDATA1_0, WDATA2_0, WDATA0_1, WDATA1_1, WDATA2_1,即3个*_0之间的顺序不能乱。



2. 互联结构问题导致:

在基于AXI总线协议的SOC中,多主设备(Master)和多从设备(Slave)之间常通过总线互联Interconnect模块(也称为总线矩阵,即Bus Matrix)实现数据交换。SOC常常由多个Interconnect模块级联构成。Interconnect模块兼容AXI协议所支持的

Outstanding传输访问和乱序(Out-of-Order,OoO)访问机制

,这在一方面

提升了传输吞吐率

,但在另一方面,也

增加了总线死锁的风险

,尤其是在多级Interconnect模块级联的总线系统中。


  • 反向通道死锁(针对读乱序)


    在AXI传输中,Master用ID号来标记每一次传输,<



版权声明:本文为qq_39541098原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。