Answers Database
Foundation Express 2.0.x: multiple modules in Foundation schematic can cause RLOC error:x4kma:312 in MAP
Record #1972
Product Family: Software
Product Line: Synopsys
Problem Title:
Foundation Express 2.0.x: multiple modules in Foundation schematic can
cause RLOC error:x4kma:312 in MAP
Problem Description:
Keywords: FPGA Express, Foundation, Express, schematic, U_SET, x4kma:312
Urgency: Standard
General Description:
Express has the ability to create modules (click the "Do Not Insert I/O"
button). The modules can be brought into Foundation (or any other schematic
entry tool) to be used in a top-level schematic. See (Xilinx Solution 3301)
for information on how this is done in Foundation.
However, if the Express module contains arithmetic functions or other functions
that use relative location constraints (RLOCs), a problem may occur. If
multiple calls to the same Express macro are done in a single design, then MAP
will issue an error similar to the following:
ERROR:x4kma:312 - The following symbols could not be constrained to a single
CLB:
CY4 symbol "U2/C4_C0_C1" (output signal=U2/C4_N2)
CY4_20 symbol "U2/C4_C0_C2" (output signal=U2/C4_C0_N7)
DFF symbol "U2/q_reg<0>" (output signal=&__A__16)
FMAP symbol "U2/FMAP_0" (output signal=U2/N54)
CY4 symbol "U1/C4_C0_C1" (output signal=U1/C4_N2)
CY4_20 symbol "U1/C4_C0_C2" (output signal=U1/C4_C0_N7)
There is more than one carry logic symbol associated with this CLB. These
symbols share the same RLOC attribute value, which requires them to be mapped
to the same CLB.
The issue here is that Express uses U_SETs instead of HU_SETs. Express groups
RLOC sets by giving them all the same U_SET name. This is required to isolate
multiple RLOC sets in one XNF file.
However, if multiple macros are used in a single design, the U_SET parameters
will link RLOC sets across multiple XNF files, and RLOC conflicts will occur.
There is nothing to uniquify the different calls to the same module.
Solution 1:
The solution is to edit the XNF file. Open the XNF created by Express in your
favorite text editor. Globally search for "U_SET" and replace each instance
with "HU_SET".
The HU_SET parameter will isolate the RLOC group within the single XNF file,
and will not attempt to combine sets with the same names across hierarchical
boundaries.
For more information about RLOCs and set parameters (H_SET, U_SET, and HU_SET),
please consult pages 4-79 through 4-97 of the Xilinx Libraries Guide.
Solution 2:
There is patch file available from the
Xilinx anonymous FTP site. To use this
patch to upgrade to FPGA Express v1.03,
an exisiting version(1.00,1.01, or 1.02)
of FPGA Express must already be installed.
The patch is called xprs103.zip and is
available from:
Xilinx File ftp://ftp.xilinx.com/pub/swhelp/synopsys/xprs103.zip
End of Record #1972
For the latest news, design tips, and patch information on the Xilinx design environment, check out the Xilinx Expert Journals! |