AR# 73206

|

AXI CDMA with default configuration can deadlock in designs with multiple instances

描述

The default configuration of the AXI CDMA IP is susceptible to a lock-up condition when there are multiple instances of the IP in a design. 

The basic lock up scenario is as follows:

  1. CDMA0 and CDMA1 send out their read commands targeting DDR simultaneously. CDMA0 wins arbitration for the read channel
  2. CDMA0 and CDMA1 send out their write commands targeting DDR simultaneously. CDMA1 wins arbitration for the write channel
  3. DDR starts to return data to CDMA0
  4. CDMA0 cannot forward data to the write path because it did not win arbitration. It drops RREADY on the data read channel
  5. As a result, read data cannot go to CDMA1. This means that the CDMA1 write path that is blocking CDMA0 never completes
  6. Dead lock occurs

 

This issue occurs in all versions of Vivado.

解决方案

To resolve this issue, use the Store and Forward option.

The Store and Forward option prevents the deadlock scenario because the write commands are not issued until the reads complete and write data is available in the CDMA's data buffer.

To enable Store and Forward, select the option in the configuration GUI as shown below.

 

ar73206_StoreAndForward.PNG

 

 

AR# 73206
日期 12/12/2019
状态 Active
Type 综合文章
IP
People Also Viewed