Answers Database


XNFPREP: Possible cause of ERROR 4015


Record #264

Problem Title:
XNFPREP: Possible cause of ERROR 4015


Problem Description:




Solution 1:




XNFPREP may issue an error similar to the following on designs that contain EQN statements ( designs that use CLB primitives, or synthesis designs ):


     XNFPREP: ERROR 4015:
       Pin(s) I4 on EQN symbol '_115_' (output signal = _115_) are not
       connected or the signals driving them were trimmed. These pin(s)
       are required based on the EQN=~I4*(I0*~I2*~I3+I1) parameter.


This error can be incorrectly issued in certain cases. If there are two nets
that have different names but are functionally identical ( for example, two
nets separated by a buffer ) which are both referenced in an EQN statement,
the EQN statement may be rendered invalid by the trimming of the buffer.
For example, assume the following connections:


---------------NETA------------>BUFFER--------------->NETB------------>

Next assume that NETA is connected to the I4 and NETB is connected to I3,
and that the function in the EQN record is I2*I4*I3. The buffer will be
trimmed, and NETB will be merged with NETA. Next, XNFPREP sees that there
are two identical connections on a CLB ( I3 and I4 ), and so trims one of
the connections. However, it does not update the equation (I2 * I4 * I3), which still references the now-missing I3 connection. The error message is then
issued by XNFPREP.

There are two possible workarounds to this problem.

* Putting an X flag on both signals, so the buffer is kept in the design and
    the signal names don't change.

* Change the two equation symbols so they don't use the same (equivalent)
    signal on two input pins.






End of Record #264 - Last Modified: 04/01/97 07:30

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