我有一段可以编译的 VHDL 代码,但是当我尝试合成它时我卡住了,这意味着合成永远不会结束,我在控制台中有:
分析图书馆工作中的实体解释器(架构)。
我试图理解为什么,但我不能。我所知道的是,如果我评论这条线,CPT_PAN <= CPT_PAN - 1;
那么我突然之间就可以综合了。
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.NUMERIC_STD.ALL;
entity Interpretor is
Port (SCAN_CODE : IN STD_LOGIC_VECTOR(7 downto 0));
end Interpretor;
architecture Behavioral of Interpretor is
Signal CPT_PAN : Integer range 0 to 255 := 0;
begin
process(SYS_CLK)
begin
if (SYS_CLK'EVENT and SYS_CLK = '1') then
if SCAN_CODE = "01101011" then
if CPT_PAN /= 0 then
CPT_PAN <= CPT_PAN - 1; -- Line to be commented to synthesize
end if;
end if;
end if;
end process;
end Behavioral;