UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 52756

14.3 EDK, axi_emc version 1.03a - Possible race condition when AWVALID and ARVALID assert at the same time

Description

There is a possible race condition when AWVALID and ARVALID assert at the same time.

Solution


This issue appears when two AXI4 MASTERs access the S_AXI_MEM port of the controller version 1.03.a simultaneously.

AssemblyView.JPG
AssemblyView.JPG


A specific sequence of AXI4 accesses to the EMC controller version 1.03a can cause the S_AXI_MEM interface to hang.

The sequence is:

READ_BURST of length 4 (from MASTER1)

followed by:

WRITE (from MASTER0) and READ_BURST (from MASTER1) where AWVALID and ARVALID are asserted at the same time. (Note: WVALID is only one cycle after.)

Following is a snapshot of a simulation that shows S_AXI_MEM hanging. In fact, WREADY and AWREADY never go HIGH, but BVALID pulses HIGH and this is a AXI VIOLATION because BRESP does not flag any error (always 0).

Sim_Bug.JPG
Sim_Bug.JPG


A tactical patch is included at the end of this answer record to apply on the 1.03.a core that comes with the 14.3 release of the tools.




ar52756_EDK_14_3_Preliminary_rev1.zip
AR# 52756
Date Created 11/02/2012
Last Updated 12/03/2012
Status Active
Type Known Issues
Devices
  • Spartan-6 LX
  • ??????
Tools
  • EDK - 13.4
  • EDK - 14.3
  • ??????
IP
  • AXI External Memory Controller
  • ??????