Return to Support Page
 homesearchagentssupportask xilinxmap

Answers Database


Foundation Simulator: Unknown outputs on 3K VHDL/ABEL/schematic design


Record #1626

Product Family:  Software

Product Line:  Aldec

Problem Title:
Foundation Simulator:  Unknown outputs on 3K VHDL/ABEL/schematic design


Problem Description:
If your design meets ALL of the following criteria, you may
see X's (unknowns) in your Functional Simulation:

1. Target device XC3x00/A/L
2. Mixed-mode schematic and VHDL/ABEL
3. Design contains XBLOX components (XBLOX may be inferred by
   the XVHDL compiler)

The reason the X's are appearing on the schematic is due to
EQN symbols being present in the simulation netlist.  EQN's
are not simulatable.

The IMPROVEX program inserts these EQN symbols into the XNF
netlist.

A functionally equivalent netlist (.XAS) is also created,
which uses standard gates instead of EQN's, and is normally
used for functional simulation.

In the case where a design contains XBLOX, and top-level
design file is a schematic, the XNF file, instead of the XAS
file, will be merged into the functional simulation netlist.
This means that the EQN symbols will still be present in the
simulated netlist, and therefore X's will appear.

There are a few ways to get around this problem.


Solution 1:


Since IMPROVEX is the program that inserts the EQN's, you
can turn IMPROVEX off before performing functional
simulation.

After functional simulation is complete, and you are ready
to implement the design, re-synthesize the VHDL with IMPROVEX
turned on.

To turn IMPROVEX off:
In the HDL Editor, choose Synthesis -> Options.
Deselect Improvex.



Solution 2:

You can manually replace the synthesized XNF file with the
XAS file.  Rename the .XAS file to .XNF.  The file which is
simulated will still be the .XNF, but now it will not have
EQN's in it.

If you backup the original XNF file, you can then restore it
when you are ready to implement the design.  This eliminates
the need to re-synthesize the code.



Solution 3:

Make sure that there are no XBLOX components in the design.
This means having no XBLOX on the schematic, and also turning
off XBLOX in the Synthesis -> Options dialog (in the HDL
Editor) so that the XVHDL compiler will not infer XBLOX
components.

You can turn off XBLOX inference just for the purposes of
functional simulation, and then turn it back on when you are
ready to implement the design with the XACT Design Manager.



End of Record #1626

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

© 1998 Xilinx, Inc. All rights reserved
Trademarks and Patents