Answers Database


M1.4, 1.3 LogiBLOX, NGDBUILD/MAP: Warning/Error:basnu - logical block "<instance_name>" of type "<logiblox_module>" is unexpanded


Record #2864

Product Family: Software

Product Line: FPGA Implementation

Product Part: logiblox

Product Version: 1.3.

Problem Title:
M1.4, 1.3 LogiBLOX, NGDBUILD/MAP: Warning/Error:basnu - logical block "<instance_name>" of
type "<logiblox_module>" is unexpanded



Problem Description:
Key Words: LogiBLOX, MAP, unexpanded, logical block, basnu, based, 72,

Urgency: Standard

Description :

In a design containing LogiBLOX conmponents, the following
error and warning messages may be seen during NGDBUILD :

edif2ngd: version M1.3.7
Copyright (c) 1995-1997 Xilinx, Inc. All rights reserved.
ERROR:based:72 - The EDIF netlist "<logiblox_module>.edn" was created
   by the Xilinx NGD2EDIF program and is not a valid input netlist.
   This netlist can only be used for simulation. Similarly, an EDIF
   netlist created by LogiBLOX can only be used for simulation; the
   implementation of a LogiBLOX module is either generated during
   NGDBUILD (based on the module properties) or defined in the
   LogiBLOX-generated NGO file (for synthesis flows).
   Launcher: "edif2ngd" exited with an exit code of 1.

...

WARNING:basnu - logical block "<instance_name>" of type "<logiblox_module>" is
    unexpanded.
Logical Design DRC complete with 1 warning(s).


Later during the MAP stage, the following error is seen:


ERROR:basnu - logical block "<instance_name>" of type "<logiblox_module>"
   is unexpanded.
Errors detected in general drc.


Solution 1:

If you see something like the following error:

"ERROR:basnu:93 - logical block "L2" of type "PREPROC_MEM_16X18" is unexpanded. ERROR:basgb:230 - L2 LogiBLOX DRC: Incorrect connection for pin(s) SPO. These
    pins must be connected."

This has been observed when the SPO output of a LogiBLOX
Dual Port RAM is not connected, and LogiBLOX is directed to
generate an XNF implementation netlist for that module. A
mismatch occurs because the unconnected SPO pin does not
get a pin record created for it when the XNF netlist is created for
it, and this causes a pin mismatch in NGDBUILD which in turn
causes the module to be unexpanded.

There are several potential workarounds:

1. attach a dangling net to the SPO port to
force the XNF netlister to create a reference to the SPO pin
in the XNF.

2. direct LogiBLOX to write out an EDIF
implementation netlist instead of an XNF netlist since this
is problem is limited to the XNF netlister only.

3. use a Single Port RAM if you do not need to access both READ
and WRITE ports simultaneously for your function.



Solution 2:

M1.3, M1.4 LogiBLOX:

The typical cause of this problem is having Logiblox create an
EDIF netlist for SIMULATION in the project directory
(usually called <module_name>.edn). This is typically done
for Foundation and Viewlogic functional simulation, as
well as for other CAE simulation platforms.

Following its precedence rules, NGDBUILD reads in the LogiBLOX EDIF
file, assumes it is an *implementation* EDIF netlist, and
attempts to expand it, overwriting any pre-existing.NGO
implementation netlist files created by LogiBLOX. It is this
occurrence that may cause an "unexpanded block" error message.

Solution:

If you are not using the EDIF simulation models, delete the
current <logiblox_module>.edn and recreate the module with
LogiBLOX without also directing it to create an EDIF
simulation netlist.

If an EDIF simulation netlist is required, recreate the
LogiBLOX module specifying the EDIF netlist as an output, but
rename the <logiblox_module>.edn before implementing the
design in the Xilinx tools.

This problem and has been fixed in
the M1.5 release by changing the .NGO extension for the
LogiBLOX implementation netlist to ".NGC".

See (Xilinx Solution #3904) for additional information on
this issue.




End of Record #2864 - Last Modified: 06/14/99 09:42

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