Return to Support Page
 homesearchagentssupportask xilinxmap

Answers Database


M1.4 MAP: NMC hard macro cannot be LOC'd from the UCF file


Record #3269

Problem Title:
M1.4 MAP: NMC hard macro cannot be LOC'd from the UCF file


Problem Description:
Keywords: nmc, hard macro, loc, ucf

Urgency: hot


Users attempting to LOC a hard macro (.nmc) may find that PAR does not
respect the LOC. The problem actually lies in MAP, since it does not
translate the LOC constraint contained in the UCF into the PCF.


Solution 1:

A workaround is to LOC it in the PCF file. Here is the syntax:

MACRO "macro_name" LOCATE = SITE "site_name" LEVEL 0 ;

where "macro name" is the name of the macro instance instantiated
into the design. For instance, if you create a .nmc macro called
abc.nmc and instantiate that into schematic, and if that particular
instantiation is called "$1I1" in the schematic, then the following
would LOC the "reference comp" to R5C4:

MACRO "$1I1" LOCATE = SITE "CLB_R5C4" LEVEL 0 ;

The "reference comp" is the COMP in the macro that the LOC constraint
is applied to; it can be set in EPIC. All the other COMPs are placed
in the same relative position to the LOC'd reference comp. To determine
what the reference comp is, invoke EPIC on the macro and select
Macro->Get Reference Comp.

As an alternative, the following syntax will also work in the PCF:

COMP "$1I1/$COMP_0" LOCATE=SITE "CLB_R2C2" LEVEL 1;

This does not require the knowledge of which COMP is the reference
comp, but it does require you to select a particular COMP to LOC
(in this case, $COMP_0).



End of Record #3269

For the latest news, design tips, and patch information on the Xilinx design environment, check out the Xilinx Expert Journals!

© 1998 Xilinx, Inc. All rights reserved
Trademarks and Patents