VHDL if语句 - 文本附近的语法错误
问题描述:
任何人都可以看到我的代码有什么问题吗?VHDL if语句 - 文本附近的语法错误
我在注释行中发生错误。在文字旁边说出语法错误。我试图从二进制转换为十六进制数字,但不断得到相同的错误。 如果错误是评论选择。
这是错误的:
错误(10500):在附近MAL.vhd(26)VHDL语法错误文本
错误(10500):在MAL.vhd(26)VHDL语法错误附近文字“”;错误(10500):在文本附近的MAL.vhd(26)处的VHDL语法错误 错误(10500):MAL.vhd(26)在文本附近的VHDL语法错误¬
错误(10500):VHDL MAL.vhd(29)在文本“else”附近出现语法错误; (10500):在文本“if”附近的MAL.vhd(31)处出现VHDL语法错误;或者在语法“if”附近的MAL.vhd(31)处出现VHDL语法错误。期待“过程”
LIBRARY ieee;
USE ieee.std_logic_1164.ALL;
USE ieee.numeric_std.ALL;
USE ieee.std_logic_unsigned.ALL;
ENTITY MAL IS
PORT (
clk_50 : IN std_logic;
pulse_out : OUT std_logic
);
END MAL;
ARCHITECTURE behave OF MAL IS
SIGNAL pulse : std_logic;
SIGNAL counter : std_logic_vector(15 DOWNTO 0);
BEGIN
PROCESS (clk_50) IS
BEGIN
pulse <= '0';
-- if counter = x"C34F" then
-- counter <= (others => '0');
pulse <= '1';
-- else
counter <= counter + 1;
END IF;
END PROCESS;
--output
pulse_out <= pulse;
END ARCHITECTURE behave;
请提供错误信息,并更新源代码在评论中包含行号,例如'27行',因为'27 if'肯定是语法错误:-) –
感谢您的评论。它现在改变了。我找不到在Quartus中包含行号的情况。你知道哪里吗? – remivass
此代码不是生成这些错误的原因。你注释掉了“else”,它仍然在错误信息中。 – Philippe