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

XNFPREP 5.0: ERROR 7852 on CLB primitive with associated timing specs


When timing specifications are applied to CLB primitives, XNFPREP does not
correctly determine what types of resources are used in the CLB, which may
cause errors. For example, if a CLB primitive is defined so that a flip-flop
is used, and this flip flop has an output net named DOUT, the following line
may be added to a TIMEGROUP symbol:


This should create a group called FFOUT consisting of the flip-flop DOUT.
Instead, the following error would be issued by XNFPREP:

The following signal specification (in the TIMEGRP definition 'FFOUT
') was not matched in the design.

FFS matched by DOUT

There are three possible workarounds to this problem:

* Replace the CLB primitives with individual elements and CLBMAPs; or

* Run XNFPREP twice, the first time with the
parttype set to a non-A architecture.

For example, if the design is targeted for a 3020Apc84:

xnfprep <design> parttype=3020pc84 outfile=<design>.xxx
xnfprep <design>.xxx parttype=3020Apc84

The first run will not DO a TIMESPEC check, since a 3020 design does
not support them, but it will flatten the CLB primitives into normal
primitives and CLBMAPs. The second run can then check and process the
TIMESPECs correctly.

* This solution is probably the cleanest. Use a TNM parameter on a signal
going into the CLB primitive, but separate the signal from the CLB
primitive input with a BUF. Since XNFPREP expands the CLB primitive into
its constituent parts BEFORE it absorbs the buffer, the TNM parameter (or
TSid) will get pushed onto the flip-flop or EQN input pin directly when
the buffer is absorbed.

That is, change this:

-------------------------| CLB primitive input
to this:

-----------------| >-----------| CLB primitive input
|/ BUF |

AR# 343
Date Created 08/31/2007
Last Updated 03/31/1997
Status Archive