1.實際工作中,除了描述仿真測試激勵時使用for循環語句外,極少在RTL級編碼中使用for循環
這是因爲for循環會被綜合器展開爲所有變量情況的執行語句,每個變量獨立佔用寄存器資源,不能有效的複用硬件邏輯資源,造成巨大的浪費。一般常用case語句代替。
2. if…else…和case在嵌套描述時是有很大區別的
if…else…是有優先級的,一般來說,第一個if的優先級最高,最後一個else的優先級最低。而case語句是平行語句,它是沒有優先級的,而建立優先級結構需要耗費大量的邏輯資源,所以能用case的地方就不要用if…else…語句。
補充:1.也可以用if…; if…; if…;描述不帶優先級的“平行”語句。