我試圖做一個簡單的程序來打開一個LED時,按下按鈕。VHDL語法錯誤,非常簡單,如果然後進程
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
entity TurnOn is
Port (sig : in STD_LOGIC;
led : out STD_LOGIC);
end TurnOn;
architecture Behavioral of TurnOn is
(Line 39) process(sig)
begin
if sig = '1' then
led <= '1';
(Line 44) else
led <= '0';
(Line 47)end if;
end process;
end Behavioral;
我得到這些錯誤。
Line 39: Syntax error near "process".
Line 44: Syntax error near "else".
Line 47: Syntax error near "if".
我是新來的VHDL所以我假設它的小東西,我很想念。一直盯着這個約一個小時。感謝您的任何意見。
你也可以省略整個過程,只寫下面一行:'led <= sig;'。這是一個併發信號分配,因此這些信號直接連接。但你仍然需要缺少'begin'。 –
併發語句具有等價的過程,實際上它們是如何被詳細闡述用於仿真的。您可以將其視爲進程聲明的簡寫。 IEEE Std 1076-1993,9.5併發信號指配聲明,第8段和構造選擇d)或-2008,11.6並行信號指配聲明,第9段和構造選擇d)。 – user1155120