XILINX core generator question

Hi,

Can someone help me please. I am trying familiarize myself with xilinx ISE an d core generator. I was trying to realize simple "fifo core" using core generator. I have done all the procedure and the core have been created. So I instance created component in my design and it looks like this

----------------------------------------------------------------------------------

-- Company:

-- Engineer:

--

-- Create Date: 15:08:49 05/22/2008

-- Design Name:

-- Module Name: fifotest - Behavioral

-- Project Name:

-- Target Devices:

-- Tool versions:

-- Description:

--

-- Dependencies:

--

-- Revision:

-- Revision 0.01 - File Created

-- Additional Comments:

--

---------------------------------------------------------------------------------- library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL;

--Library XilinxCoreLib;

-- synthesis translate_on library work;

---- Uncomment the following library declaration if instantiating

---- any Xilinx primitives in this code.

--library UNISIM;

--use UNISIM.VComponents.all;

entity fifotest is port ( clk: IN std_logic; din: IN std_logic_VECTOR(17 downto 0); rd_en: IN std_logic; rst: IN std_logic; wr_en: IN std_logic; dout: OUT std_logic_VECTOR(17 downto 0); empty: OUT std_logic; full: OUT std_logic); end fifotest;

architecture Behavioral of fifotest is

component fifo_v4_3 port ( clk: IN std_logic; din: IN std_logic_VECTOR(17 downto 0); rd_en: IN std_logic; rst: IN std_logic; wr_en: IN std_logic; dout: OUT std_logic_VECTOR(17 downto 0); empty: OUT std_logic; full: OUT std_logic); end component;

begin

------------- Begin Cut here for INSTANTIATION Template ----- INST_TAG your_instance_name : fifo_v4_3 port map ( clk => clk, din => din, rd_en => rd_en, rst => rst, wr_en => wr_en, dout => dout, empty => empty, full => full);

------------INSTANTIATION Template ------------

end Behavioral;

but when I wanted to implement my module I have got this error

ERROR:NgdBuild:604 - logical block 'your_instance_name' with type 'fifo_v4_3'

I was reading on the xilinx help but there is written that I should do this

This error occurs when a netlist is not found.

In EDK user-defined PCOREs, if the VHDL for the PCORE is using both HDL and NGC or EDIF netlists, the STYLE attribute for the MPD file for that core must be set correctly. When using both HDL and NGC or EDIF netlists, ensure that the STYLE = MIX is set in the peripheral MPD file.

The MPD file can be found in the following directory:

\pcore\\data

But I can' find this MPD file in my core directory. Actually, directory where my core is realized consist only directory temp. I am totally confused.

Has anyone had similar type of problem. I repeat that from the core generator I don't receive any kind of message that there are some errors in my designed core.

Any kind of help is welcome Thanks to everyone Zoran

Reply to
Zorjak
Loading thread data ...

-=AD-------

-=AD-------

Coregen creates a .ngc file too.Have you copied the .ngc file also from your coregen directory to your ISE project? ISE needs the ngc file for the implementation.

Raghu.

Reply to
raghunandan85

---=AD-------

---=AD-------

HI Raghu

Thanks for your try to help. My core folder is located in the my ise project directory. All I I included my vhd core file in to my ise project. After you told me this I have copied all files from core directory to my ise directory and i tried to start compilation again. My result is the same. I am getting the same error.

I don't know what to do. Zoran

Reply to
Zorjak

Two notes:

  1. The help article you found about EDK pcores is totally irrelevant. Forget about EDK and MPD files. You are working with basic ISE and coregen and they have nothing to do with EDK.

  1. The vhdl wrapper file generated by coregen is for simulation, not for synthesis. You don't need to add any vhdl files to your project to be able to use the core. What you need to add is the ngc file, although I believe it should find it even if you don't add it explicitly. Also, ISE GUI expects you to do this all differently. After you create a new project you can right click in the sources pane and choose new source, then choose IP in the new window which will open. This will start coregen and will let you generate your core. It will also attach an xco file to the project, which is a coregen config file for the specific core. Since you have already run the coregen you can add the existing xco file to the project.

/Mikhail

Reply to
MM

Thanks Mikkhail

I've included xco file in to my ise project and I haven't got any errors. My synthesis and implementation have passed.

You helped me very much. Thank you a lot, Mikkhail Zoran

Reply to
Zorjak

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.