UPGRADE YOUR BROWSER

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

EDIF2XNF 5.x: Error 3, port name not found on external library primitive for cell

Description

Keywords: edif2xnf, xact, error, port, cell

Urgency: Standard

General Description:

In some cases, EDIF2XNF 5.x may issue an error similar to the following:

Error: 3 port name I1 not found on external library primitive for cell OR2

When EDIF2XNF is executed, it looks for information about Xilinx primitives
in the $LCA/data directory. If the obsolete libraries are installed, you
will see edif2000, edif3000, and edif4000 directories under $LCA/data. With
the Unified Libraries, you will see another set of similarly named
directories underneath $LCA/data/unified.

In these directories are .eds files that describe the correct pinout of the
Xilinx primitives. If the ports, or pinout, of the symbol on the schematic
sheet do not match the ports shown in the .eds file for the corresponding
primitive, the above error will occur. By default, EDIF2XNF looks in the
$LCA/data (obsolete) directory for the appropriate device family (e.g.,
$LCA/data/edif4000) unless given the -l option (automatically inferred by
Men2XNF8).

This error message has several causes and solutions.

解决方案

1

A Mentor gen_lib part was inadvertently included in the schematic.
EDIF2XNF is trying to match the ports on the gen_lib part with the ports
from the Xilinx library, which are incompatible.

The design must be modified so that all of its components come from the
same library. You can check library usage with the "listref" command in
Unix (a Mentor-supplied program) or with the Report -> Show References ->
For Design selection in PLD_DMgr. Any references to the old library will
show up, for example, as $LCA/lib4k (XC4000 design); while references to
the Unified library will show up, for example, as $LCA/xc4000.

2

You are using Unified Libraries, and are running EDIF2XNF without the -l
option. As stated above, EDIF2XNF by default looks in the $LCA/data
directory, which corresponds to the obsolete libraries, for .eds files.
Either add the following to your command line:

edif2xnf -l $LCA/data/unified/edif4000 (XC4000 target, for example)

or run Men2XNF8, which automatically infers the necessity for the -l
option.

3

You have mixed Unified and obsolete libraries. Men2XNF8, if it sees a
single Unified Library component, assumes that the entire design was drawn
with Unified Libraries. If there are any obsolete library parts in the
design, EDIF2XNF (with the -l option) will try to crossmatch an obsolete
library part with a Unified Library port description, the two of which will
be incompatible. Even when running EDIF2XNF separately without the -l
option, you will get a similar situation as in case #2, where the program
tries to crossmatch a Unified library part with an obsolete library port
description.

The design must be modified so that all of its components come from the
same library. You can check library usage with the "listref" command in
Unix (a Mentor-supplied program) or with the Report -> Show References ->
For Design selection in PLD_DMgr. Any references to the old library will
show up, for example, as $LCA/lib4k (XC4000 design); while references to
the Unified library will show up, for example, as $LCA/xc4000.
AR# 396
创建日期 08/31/2007
Last Updated 10/01/2008
状态 Archive
Type 综合文章