2015-05-29 82 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'被聲明在其他地方,並且在這個架構內不可見。 –