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# 47642

14.1 - EDK - XPS does not take parameter values from MHS, but ALWAYS computes from the IP_DRC_TCL procedure for two Interconnect parameters

Description

The expected behavior from XPS is that:

USER should be able to over-write the OPTION_UPDATE parameters values by EXPLICITLY setting their values in MHS.

This behavior in general works fine, but it is not working for following two parameters in axi_vdma_v2_0_1.mpd:

C_INTERCONNECT_M_AXI_MM2S_READ_FIFO_DEPTH
C_INTERCONNECT_M_AXI_S2MM_WRITE_FIFO_DEPTH

For these two parameters, XPS does not take a parameter value from MHS, but ALWAYS computes from the IP_DRC_TCL procedure from axi_vdma_v2_0_1.tcl.

WARNING:EDK:4083 - IPNAME: axi_vdma, INSTANCE: axi_vdma_0 - PARAMETER: C_INTERCONNECT_M_AXI_MM2S_READ_FIFO_DEPTH has value 32 specified in MHS, but tcl is overriding the value to 0
WARNING:EDK:4083 - IPNAME: axi_vdma, INSTANCE: axi_vdma_0 - PARAMETER: C_INTERCONNECT_M_AXI_S2MM_WRITE_FIFO_DEPTH has value 512 specified in MHS, but tcl is overriding the value to 0

Solution

A workaround for this is to make the AXI VDMA pcore local and then modify Tcl script axi_vdma_v2_1_0.tcl.

Specifically, the procedures iplevel_update_mm2s_fifo_depth and iplevel_update_s2mm_fifo_depth should be modified as below:

## This procedure sets the mm2s fifo depth to 512 if store and forward is turned off.
## users can overide this by explicitly setting fifo depth in the system.mhs
proc iplevel_update_mm2s_fifo_depth {param_handle} {
set mhsinst [xget_hw_parent_handle $param_handle]
set sf_included [xget_hw_parameter_value $mhsinst "C_INCLUDE_MM2S_SF"]
if {$sf_included == 0} {
return 512
} else {
return X <= X should be replaced with the read FIFO depth desired (0, 32 or 512)
}
}

## This procedure sets the s2mm fifo depth to 512 if store and forward is turned off.
## users can overide this by explicitly setting fifo depth in the system.mhs
proc iplevel_update_s2mm_fifo_depth {param_handle} {
set mhsinst [xget_hw_parent_handle $param_handle]
set sf_included [xget_hw_parameter_value $mhsinst "C_INCLUDE_S2MM_SF"]
if {$sf_included == 0} {
return 512
} else {
return X <= X should be replaced with the write FIFO depth desired(0, 32 or 512)
}
}

Once these modifications have been done, the user repositories should be rescanned.

AR# 47642
Date Created 05/07/2012
Last Updated 09/27/2012
Status Active
Type Known Issues
Tools
  • EDK - 14.1