EX:
always@(posedge clkSys or negedge rst_n)begin
if(!rst_n)begin
.....
end
else begin
.....
end
end
這裡的 if-else 跟 C 語言是相同的用法,不過值得一提的是,在描述組合邏輯電路時 else 最好要寫(循序邏輯則沒差),避免電路的描述不完整,容易產生 latch。
EX:
if(...)begin
if()begin
....
end
else begin
....
end
end
else if(...)begin
....
end
else begin
....
end
EX:
case(...)
item_1:begin
....
end
item_2:begin
....
end
item_3:begin
....
end
item_4:begin
....
end
default:begin
....
end
endcase
這邊的 default 跟 if-else 中的 else 一樣,不管有沒有用,在描述組合邏輯時都加上去,避免導致 latch,抑或是在 always block 的最上面先給初值也可以避免 latch 的產生。