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

5.2.1 XNFPREP - error 4572 and error 4573


Key Words: xnfprep, 4572, 4573

Urgency: Standard

General Description:
When processing a design xnfprep gives error 4572, indicating a problem with the
RLOC values on a carry chain, and error 4573 indicating a violation of direction
(UP/DOWN) on a CY4.


First check the design:

1. Make sure the symbol the error messages lists does not have duplicate
2. Make sure the carry chain goes in only one direction.
3. Check to see if you created symbols for your design named RxCx
(where x is a number). Users should avoid using symbol names with
location constraint syntax.

1. Run xnfmerge with the -f option to suppress HIERG records (which are only
used in the XC3000 flow); or

2. Delete the HIERG records from the XFF file before running XNFPREP; or

3. Force the whole XFF file to upper-case before running XNFPREP; or

4. Run XNFPREP with the (hidden) option save_xnf=true, which will cause it to
write an XTF file, even though it encountered "errors".

Any one of these should make the problem go away.

The core problem is that when XNFPREP parses the RLOC values, it requires
the "R" and "C" in the string be in upper-case. When they are in lower-case,
it does not parse the value correctly, and improperly calculates the
difference between the row and column values.

You may notice that neither of the RLOC values on these symbols are
in lower-case. For example, the RLOC value on instance U75/I128/$1I150
is "R2C0". But to conserve memory, the XNF reader only stores any given
string once, in the case in which it was first encountered. And the
first time that the string is encountered in this file is actually
in a HIERG record:

HIERG, 229, r2c0, U72/U107, r2c0.xnf, 227

Since "r2c0" is first encountered in lower-case, it is stored that way.
So XNFPREP then sees the RLOC value as being "r2c0".
AR# 2090
Date Created 08/31/2007
Last Updated 03/22/2000
Status Archive