2015-05-29 57 views
5

我有以下VHDL代码,它是一个项目的实体:对象被使用但未被声明?

library ieee; 
use ieee.std_logic_1164.all; 
library work; 
use work.typedef.all; 

entity uc is 
    port(faaaa: in std_logic_vector(15 downto 0); 
      phi: in std_logic; 
      isDirect,isRam,jmp,store,NarOut,arpOut:out std_logic); 
    end entity uc; 

architecture b8 of ua is 
    signal instt : std_logic_vector(15 downto 0); 
    signal bit7: std_logic; 
     begin 
      bit7<='0'; 
      instt <= faaaa; 
      .... 
      process(phi) is 
      .... 
      end process; 
end architecture b8; 

错误说:

对象 “faaaa” 使用,但没有宣布

什么我在这里做错了吗?

+0

此错误消息特定于综合/仿真工具。您能否将其名称添加为标签,以便其他人可以搜索此消息。 – Paebbels

+0

@Paebbels,这是一个Quartus消息[ID:10482](http://quartushelp.altera.com/14.0/mergedProjects/msgs/msgs/evrfx_vhdl_is_not_declared.htm)。某处已经分析过一个实体'uc',它没有在体系结构uc(b8)中找到'faaaa'的声明。具有声明的实体“ua”在所示的体系结构中未被使用。 – user1155120

回答

7

您的实体被称为uc,但架构b8ua

+3

...这意味着'faaaa'被声明在其他地方,并且在这个架构内不可见。 –