Does Symphony EDA support altera_mf lib?

P

Peter Sommerfeld

Guest
Are there any Symphony EDA experts out there?

I have following code:

library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
use ieee.std_logic_arith.all;

library altera_mf;
use altera_mf.altera_mf_components.all;

entity my_fifo ..

architecture ..

begin
a_fifo : dcfifo generic map ( ...
end;

-----------

I know that Symphony is finding dcfifo because it compiles fine (if I
change "dcfifo" to something bogus the compile fails). But when I try
to simulate I get the error:

Warning: CSVHE0009: dma_demand_fifo.vhd: (line 289): Could not find
entity/arch named 'dcfifo'. Ignoring component instantiation

Any ideas? I manually created the altera_mf lib by compiling the
altera_mf lib files under my Quartus II 3.0 install.

-- Pete
 
Peter Sommerfeld a écrit :
Are there any Symphony EDA experts out there?

I have following code:

library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
use ieee.std_logic_arith.all;

library altera_mf;
use altera_mf.altera_mf_components.all;

entity my_fifo ..

architecture ..

begin
a_fifo : dcfifo generic map ( ...
end;

-----------

I know that Symphony is finding dcfifo because it compiles fine (if I
change "dcfifo" to something bogus the compile fails). But when I try
to simulate I get the error:

Warning: CSVHE0009: dma_demand_fifo.vhd: (line 289): Could not find
entity/arch named 'dcfifo'. Ignoring component instantiation

Any ideas? I manually created the altera_mf lib by compiling the
altera_mf lib files under my Quartus II 3.0 install.
Symphony found a component declaration named dcfifo somewhere. Probably in
package altera_mf.altera_mf_components. The compiler doesn't complain because
with this component declaration it can check what has to be checked at compile
time (ports mode and type compatibility, etc). But a component declaration is
just an interface declaration, not an entity / architecture design unit. If you
don't bind your component instanciation to a design unit it's just a black box
and the simulator ignores it. What you need is an entity and an architecture for
dcfifo and a configuration that binds all the stuff:

library ALTERA_MF;

configuration MY_FIFO_CFG of MY_FIFO is
for ARC
for A_FIFO: DCFIFO
use entity ALTERA_MF.E(A);
end for;
end for;
end configuration MY_FIFO_CFG;

where ALTERA_MF.E is the entity and ALTERA_MF.A the architecture you found. Then
compile, elaborate and simulate MY_FIFO_CFG.

Regards,
--
Renaud Pacalet, GET/ENST/COMELEC/LabSoC
Institut Eurecom BP 193, 2229 route des Cretes
F-06904 Sophia-Antipolis Cedex
Tel : +33 (0) 4 9300 2770
Fax : +33 (0) 4 9300 2627
Fight Spam! Join EuroCAUCE: http://www.euro.cauce.org/
 
Hi Renaud,

Thanks for the tips.

The real problem was Symphony hadn't built the altera_mf libs because
Quartus II 3.0 (perhaps one of the service packs) had moved their
location. Symphony sent me a patch in less than 24 hrs and everything
is working great. That's what I call service :)

-- pete

Renaud Pacalet <MonPrenom.MonNom@MonOrganisation.MonPays> wrote in message news:<bpd7ha$n19$1@lanfeust.eurecom.fr>...
Peter Sommerfeld a écrit :
Are there any Symphony EDA experts out there?

I have following code:

library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
use ieee.std_logic_arith.all;

library altera_mf;
use altera_mf.altera_mf_components.all;

entity my_fifo ..

architecture ..

begin
a_fifo : dcfifo generic map ( ...
end;

-----------

I know that Symphony is finding dcfifo because it compiles fine (if I
change "dcfifo" to something bogus the compile fails). But when I try
to simulate I get the error:

Warning: CSVHE0009: dma_demand_fifo.vhd: (line 289): Could not find
entity/arch named 'dcfifo'. Ignoring component instantiation

Any ideas? I manually created the altera_mf lib by compiling the
altera_mf lib files under my Quartus II 3.0 install.

Symphony found a component declaration named dcfifo somewhere. Probably in
package altera_mf.altera_mf_components. The compiler doesn't complain because
with this component declaration it can check what has to be checked at compile
time (ports mode and type compatibility, etc). But a component declaration is
just an interface declaration, not an entity / architecture design unit. If you
don't bind your component instanciation to a design unit it's just a black box
and the simulator ignores it. What you need is an entity and an architecture for
dcfifo and a configuration that binds all the stuff:

library ALTERA_MF;

configuration MY_FIFO_CFG of MY_FIFO is
for ARC
for A_FIFO: DCFIFO
use entity ALTERA_MF.E(A);
end for;
end for;
end configuration MY_FIFO_CFG;

where ALTERA_MF.E is the entity and ALTERA_MF.A the architecture you found. Then
compile, elaborate and simulate MY_FIFO_CFG.

Regards,
 

Welcome to EDABoard.com

Sponsor

Back
Top