为何不能综合?

2020-02-28 18:33发布

综合错误怎么修改?
在程序中,我先判断了200上升沿后并计数,让一些GPIO输出高低电平,需要在第二百个脉冲的下降沿去处理一些信号,即再这些GPIO输出高低电平,必须在第第201个脉冲上升沿到来之前处理。于是我程序就这样写的:

   if (SynPulseINCLK2'EVENT AND SynPulseINCLK2 = '1') then        
                locaCntPulse <= locaCntPulse + "0000000000000001";
       处理 GPIO 电平;
       If  LocaCntPulse =200        then
        LocaTrigStop = '1';
      End if;
   end if;
   
  然后判断第200个脉冲的下降沿,程序:
           if LocaTrigStop = '1' then
                        if (SynPulseINCLK2'EVENT AND SynPulseINCLK2 = '0') then
                           
                                                                处理GPIO电平;
            end if;
     end if;         
                                        -------------
以上都是在同一个process中。



可是综合以后,出现下面的提示错误:应该怎么修改?
Line 758: statement is not synthesizable since it does not hold its value under NOT(clock-edge) condition
Netlist cnt0117(arch_cnt0117) remains a blackbox, due to errors in its contents


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。