|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
哪位大神解答一下AXI 互联上的蝴蝶结死锁一般是如何避免的?我看DW手册上说用什么本地非本地从机标识,没怎么看懂。。
The DW_axi has a feature that prevents deadlocks from occurring. When configuring the DW_axi, you must configure which slave ports of the DW_axi instance are used to access slaves that are not local to the DW_axi instance currently being configured. For example, you must configure slave ports that are connected— possibly through other components such as a DW_axi_rs, DW_axi_x2x, and so on—to the interconnecting master port of another DW_axi instance. The DW_axi uses this information to prevent a master from issuing transactions to a local slave or a different non-local slave if that master has outstanding transactions at a non-local slave. Once the last write data beat of the outstanding transactions at the non-local slave have been issued by the master port, transactions to a different slave—local or non-local—are immediately issued. This situation adds no throughput penalty to the write data channel. The AXI_ACC_NON_LCL_SLV_S(j) parameters denote which slave ports access non-local slaves. These slave ports are called “interconnecting slave ports” because they are connected to another bus instead of a system slave. Setting the parameter to true (1) indicates that the slave is used to access non-local slaves. The AXI_ACC_NON_LCL_SLV_S(j) parameters are enabled in multi-tile/bidirectional configurations where AXI_HAS_BICMD = 1. The AXI_ACC_NON_LCL_SLV_S(j) parameters are also enabled in multi-tile configurations where AXI_EN_MULTI_TILE_DLOCK_AVOID = 1. In the coreConsultant GUI, the AXI_ACC_NON_LCL_SLV_S(j) parameters are accessed through the “Interconnecting Slave Ports” portion of the Multi-Tile/Bidirectional Command section of the Specify Configuration activity; for information on this section, refer to “Multititle/Bidirectional Command” in “Parameter Descriptions” on page 103. For information on avoiding out-of-order deadlocks, refer to “Out-ofOrder Deadlock Avoidance” on page 54.
|
|