latch是电平触发,reg是边沿触发。时序设计中尽量使用reg触发。行为描述中,如果对应所有可能输入条件,有的输入没有对应明确的输出,系统会综合出latch。
比如:
always@( a or b) //缺少else语句
begin
if(a==1)
q <= b;
end
always@(posedge clk or negedge rst_n)begin //case语句没有default
if(!rst_n)
state <= IDLE;
else begin
case(state)
a:balabala;
b:balabala;
endcase
end
end