G
Garrick
Guest
I'm having an issue with simulation of Xilinx Coregen'ed entities. The
FIFO I'm simulating and including in my ISE project compiles and works
in both, but I can't get the FIFO behavioral file/model to be bound
properly in ModelSim from the Work library, which requires compiling
and maping it from a seperate library (which in turn troubles Xilinx
ISE).
So, right now, I have:
1. FIFO1.xco in ISE, which generates FIFO1.vhd for behavioral
simulation.
2. mycode.vhd, which has a componet FIFO1 declaration in it's
architecture , and fifoA : FIFO1 port map etc.
In my modelsim compilation script, I would like to:
vcom -93 -work work fifo1.vhd
and have the FIFO entity bound in properly. I can see the entity in
the Work library with all my other entities, but I get a "** Warning:
(vsim-3473) Component 'fifoA' is not bound when starting simulation.
So, to get this to simulate, I've added the following to mycode.vhd:
library myFIFOs;
use myFIFOs.all;
and my modelsim script now contains:
vlib myFIFOs
vmap myFIFOs myFIFOs
vcom -93 -work okFIFOs fifo1.vhd
This works. The FIFO is bound properly and simulation is great.
However, when switching back to ISE, I have to comment out the the
myFIFOs library links above. This is annoying and seemingly
unnecessary (I have a lot of cores to use like this).
What am I doing wrong? What's the cleanest trick to get my FIFO
behaviorial file to bind properly in ModelSim while maintaining the
same top level file between ISE and ModelSim?
Thank you, Garrick.
FIFO I'm simulating and including in my ISE project compiles and works
in both, but I can't get the FIFO behavioral file/model to be bound
properly in ModelSim from the Work library, which requires compiling
and maping it from a seperate library (which in turn troubles Xilinx
ISE).
So, right now, I have:
1. FIFO1.xco in ISE, which generates FIFO1.vhd for behavioral
simulation.
2. mycode.vhd, which has a componet FIFO1 declaration in it's
architecture , and fifoA : FIFO1 port map etc.
In my modelsim compilation script, I would like to:
vcom -93 -work work fifo1.vhd
and have the FIFO entity bound in properly. I can see the entity in
the Work library with all my other entities, but I get a "** Warning:
(vsim-3473) Component 'fifoA' is not bound when starting simulation.
So, to get this to simulate, I've added the following to mycode.vhd:
library myFIFOs;
use myFIFOs.all;
and my modelsim script now contains:
vlib myFIFOs
vmap myFIFOs myFIFOs
vcom -93 -work okFIFOs fifo1.vhd
This works. The FIFO is bound properly and simulation is great.
However, when switching back to ISE, I have to comment out the the
myFIFOs library links above. This is annoying and seemingly
unnecessary (I have a lot of cores to use like this).
What am I doing wrong? What's the cleanest trick to get my FIFO
behaviorial file to bind properly in ModelSim while maintaining the
same top level file between ISE and ModelSim?
Thank you, Garrick.