Board logo

标题: 用synplify综合xilinx的IP核,再用ISE implement就出错了 [打印本页]

作者: boy364    时间: 2006-6-23 13:18     标题: 用synplify综合xilinx的IP核,再用ISE implement就出错了

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


---- Uncomment the following library declaration if instantiating
---- any Xilinx primitives in this code.
library UNISIM;
use UNISIM.VComponents.all;


entity flash is
    Port ( clk : in std_logic;
           rst : in std_logic;
           flash_out : out std_logic);
end flash;


architecture Behavioral of flash is
   component clock is
   port ( CLKIN_IN        : in    std_logic;
          RST_IN          : in    std_logic;
          CLKIN_IBUFG_OUT : out   std_logic;
          CLK0_OUT        : out   std_logic;
          LOCKED_OUT      : out   std_logic);
end component;
attribute syn_black_box : boolean;
attribute syn_black_box of clock: component is true;
--attribute syn_black_box of clock: component is true;
   signal temp: std_logic_vector(1 downto 0);
   signal derive_clk,inter_clk,ready: std_logic;
   signal inter_signal : std_logic;


begin
     u1:   clock
           port map(
          CLKIN_IN=>  clk,
       RST_IN=> rst,
       CLK0_OUT=>inter_clk,
       LOCKED_OUT=>ready,
       CLKIN_IBUFG_OUT=>open);
     process(inter_clk)
    begin
     if(ready='1')  then
      if(inter_clk'event and inter_clk='1')  then
        temp<=temp+1; 
      if(temp="11") then
         derive_clk<=  not derive_clk;
                end if; 
             end if; 
     
          end if;
      end process;
  process(derive_clk)
   begin
       if(derive_clk'event and derive_clk='1')  then
             inter_signal<=not inter_signal;
           end if;
      end process;
   flash_out<= inter_signal;
end Behavioral;


上面是源程序,用了一个IP核:DCM,用synplify综合,输出EDIF文件,用ISE implement,结果出错了。提示:ERROR:NgdBuild:604 - logical block 'u1' with type 'clock' could not be resolved.
   A pin name misspelling can cause this, a missing edif or ngc file, or the
   misspelling of a type name. Symbol 'clock' is not supported in target
   'spartan3'.


还要在ISE工程中添加什么文件吗,添加core generator生成的clock.xaw也不行,还是提示同样的错误,高手指点啊,到底怎么回事?

[此贴子已经被作者于2006-6-23 13:18:15编辑过]


作者: boy364    时间: 2006-6-24 12:07

知道了,在synplify工程中加入clock.vhd就可以了
作者: boy364    时间: 2006-6-27 18:31

是的,我是在synplify单独建立的工程,现在又出现新问题了,郁闷!
我生成了一个asynchronous fifo的IP核,把它的VHDL源码加到synplify工程中,就不行了。我单独给这个文件建立一个synplify工程,编译都通不过。在ISE中单独编译这个文件也通不过,但是在ISE工程中再添加一个顶层文件,却能实例化该文件。
asynchronous fifo和DCM不同的是:asynchronous fifo用XilinxCoreLib库,DCM只用unisim库。
需要用到asynchronous fifo的时候在synplify中怎样综合呢,还需要添加什么文件??

[此贴子已经被作者于2006-6-27 18:31:45编辑过]


作者: boy364    时间: 2006-6-28 10:29

搞定,在ise工程中加上IPCORE的edn文件就可以了
作者: Santas    时间: 2006-6-30 11:50

其实最好还是在ISE中调用Synplify和Modelsim,这样只有一个工程项目,管理起来也比较方便啊。




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0