1、[Synth 8-6859] multi-driven net on pin Q with 1st driver pin 'u_PILE_UP/flag_pule_reg/Q' ["F:/verilog/6_amp_stor/par/amp_stor/amp_stor.srcs/sources_1/new/PILE_UP.v":91]
解释:存在多重赋值;
原因:同一个寄存器在不同always块中都被赋值了,导致同一时钟,可能出现该寄存器不同值得情况(不定态),是可能,因限定条件而定;
解决办法:保持一个寄存器只能在一个always块中被赋值。
2、[Synth 8-434] mixed level sensitive and edge triggered event controls are not supported for synthesis ["F:/verilog/8_HV/par/HV_Ctrl/HV_Ctrl.srcs/sources_1/new/HV_DA.v":63]
解释:敏感列表中不支持混合触发方式;
原因:模块中的always块敏感列表存在混合触发,即其中既有电平触发,又有边沿触发;
解决办法:always块只采用一直触发方式
电平触发:1、always @(*)begin、、、end(always块中的所有寄存器的电平变化都会触发);
2、always @(clk)begin、、、end(可以看作clk电平变化的电平触发方式);
边沿触发:always @(posedge clk or negedge rst)begin、、、end(posedege 上边沿,negedge 下跳沿)。