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

10.1 Floorplanner - When using DISTRIBUTED (LUT) RAM in design, "Write RPM to UCF" function fails

Description

When I am making one small design where I use Xilinx coregenlib DISTRIBUTED RAM core of any dimension, implement the design, open post-PAR Floorplanner, and try to create RPM through File->Write RPM to UCF with "Automatically Generate RPM in NGC Format" option checked, the following error occurs:  

 

"ERROR:NgdBuild:753 - Line 4 in 'D:/basheer/Exp1/dpram_rpm/dram_rpm.ucf': 

Could not find instance(s) 'INST/BU37' in the design. To suppress this error specify the correct instance name or remove the constraint." 

 

How can I solve this problem?

Solution

In the UCF file, Floorplanner is writing out constraints for instances that do not exist in the EDIF. 

 

For Example: 

INST "BU6" RLOC = "X0Y0" ; 

INST "BU6/RAM64X1S1" RLOC = "X2Y0" ; 

INST "BU6/RAM64X1S0" RLOC = "X3Y0" ; 

....... ....... 

 

The instance "BU6" is in the netlist, but not in the lower-level instances ("RAM64X1S1" and "RAM64X1S0"). The NGD file contains these instances, but not the EDIF.  

 

To work around this issue, simply remove the "BU*/RAM64S*" constraints from the UCF and run the NGDBuild command line. This will constrain the position of the RAM. However, it might ignore the RPM of the distributed RAM itself.

AR# 20295
Date Created 09/03/2007
Last Updated 05/16/2014
Status Archive
Type General Article