我在VHDL编程初学者,我试图合成以下VHDL代码(软件谴责的按钮)使用ISE项目导航13.1赛灵思VHDL错误827:信号<name>不能合成
entity PBdebouncer is
Port (PB : in STD_LOGIC;
CLK : in STD_LOGIC;
reset : in STD_LOGIC;
PBdebounced : out STD_LOGIC);
end PBdebouncer;
architecture Behavioral of PBdebouncer is
begin
p1: process(CLK , PB , reset)
variable enable,count : integer range 0 to 100000 := 0;
begin
if(reset = '1') then
count := 0;
enable :=0;
elsif(CLK' event and CLK = '1') then
if (enable = 1) then
count := count + 1;
end if;
if(count = 99999) then
if(PB = '0') then
PBdebounced <= '0';
else
PBdebounced <= '0';
end if;
count := 0;
enable := 0;
end if;
count := count;
else
enable := 1;
end if;
end process;
end Behavioral;
但
ERROR:Xst:827 - ".../digital lab II 110/PBdebouncer/PBdebouncer.vhd" line 43: Signal enable cannot be synthesized, bad synchronous description. The description style you are using to describe a synchronous element (register, memory, etc.) is not supported in the current software release.
所以,请你解释一下这个错误我:不幸的是,我有以下错误撞到?
关于< enable >类型我试过每一件事,但仍然是相同的错误 – Wazani 2013-02-15 21:45:44
关于我在前面的代码中有一个错误,它应该是:'if(PB ='0')then PBdebounced <='0' ; \t \t别的PBdebounced <= '1'; \t \t end if;'关于圆括号 –
Wazani
2013-02-15 21:47:01
:我试过的代码没有他们,但它仍然同样的问题 – Wazani 2013-02-15 21:50:39