(1)一个进程中不允许出现两个时钟沿触发,(Xilinx公司CoolRunner系列CPLD支持单个时双钟的双触发沿除外)
(2)对同一信号赋值的语句应出现在单个进程内,不要在时钟沿之后加上elsif,else语句,如
(3)不能在两个以上的进程内对同一信号赋值操作,引起输出多驱动源的发生
设计指原意是设计一个二输入与门,但因“if”语句中无“else”语句,在对此语句逻辑综合时为“else”语句中为:“C<=C;”,即保持不变。因此可能形成下图所示的电路:
利用MAX+PLUSII软件仿真时,除了“a=1”及“b=1”时“c=1”外,其他时刻的值都不确定。为改正此错误,仅需加上如下语句即可。
这类错误在利用“if-then-else”语句设计组合电路时常犯的。