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 |