verilog語言(8)——行為級建模語句成分

verilog語言(8)——行為級建模語句成分

硬體描述語言在對電路的設計中,主要就在行為級建模,行為級建模中的語句主要有以下幾個類別:過程語句、語句塊、賦值語句、條件語句、迴圈語句。而行為級建模我們總結起來,就只有三條語句:賦值語句、條件語句、迴圈語句。其中迴圈語句是不作為行為級建模中的主要語句。所以精簡下來,實際上就兩條語句,賦值語句和條件表示式語句。下面分別介紹這幾個語句。

過程語句:

有兩種。分別叫做

initial和always語句

連續賦值語句它不能在過程語句或語句塊中使用(所以說這兩個語句本身就是排他的一個概念)。連續賦值語句是可以直接形成電路的(這個沒什麼問題,因為它牽扯的都是基本的元器件和運算單元),所以,出問題出的最多的就在行為級建模上面,我們說過程語句中

initial這個過程是不具有綜合性的,always則是具有綜合性的

語句塊:

分為兩種,即

begin-end序列塊和fork-join並行塊

。其中,

序列塊是可以綜合的,並行塊是不可以綜合的。

賦值語句:

兩個型別,有過程連續賦值語句

assign

,這個assign和連續賦值語句一點關係都沒有,這條語句是不可以綜合的。還有一個型別是過程賦值

"="、"<="

,其中“=”稱為阻塞性過程語句,帶“<=”是非阻塞賦值語句。這兩個語句都是可以綜合的。

條件語句:

兩類:if-else,還有一個case。這兩個都是可以綜合的