Reg型數(shù)據(jù)常用作表示always模塊內(nèi)的自定信號(hào),常代表觸發(fā)器。
縮減運(yùn)算符依次高位和地位實(shí)現(xiàn)邏輯運(yùn)算。
關(guān)系運(yùn)算符兩個(gè)數(shù)據(jù)進(jìn)行關(guān)系運(yùn)算,輸出真假和不確定X
等式運(yùn)算符分為邏輯等和嚴(yán)格等。邏輯等輸出01X,將X,Z視為不確定的數(shù);關(guān)系等分為01,將X,Z視為兩種符號(hào)。
位拼接運(yùn)算符將兩個(gè)數(shù)據(jù)的某幾位拼接在一起
三目運(yùn)算符相當(dāng)于if和else,
阻塞賦值也就是說它阻塞了其他賦值語句的執(zhí)行,只能進(jìn)行一步一步的執(zhí)行,
非阻塞賦值允許其他verilog語句同時(shí)進(jìn)行操作,a<=b
當(dāng)使用always時(shí),阻塞賦值來描述組合邏輯,而非阻塞賦值描述時(shí)序邏輯。在一個(gè)always塊中不要同時(shí)使用阻塞邏輯和非阻塞邏輯
在if嵌套中,else總是和它最上面的if來匹配。
Case語句中的case和endcase成對(duì)出現(xiàn)。case語句分為case語句,以常量為參考;casez則以高阻態(tài)為參考,當(dāng)有一個(gè)Z是,其結(jié)果為真;ca***則以高阻態(tài)和不確定值為參考,當(dāng)有一個(gè)為Z或X時(shí),結(jié)果為真。
采用‘primitive’對(duì)于case的約束主要分為FULL_CASE和PARALLEL_CASE。FULL_CASE約束就是讓編譯器默認(rèn)case語句為完全case。
10:verilog分為四種循環(huán)的方式,其中repeat,forever,while只能用于仿真,不能形成電路。
Forever循環(huán)常用于產(chǎn)生周期性波形?梢赃M(jìn)行終止后執(zhí)行forever之后的語句。
While是用作一定條件下的循環(huán),滿足條件是連續(xù)執(zhí)行,當(dāng)條件不滿足時(shí)進(jìn)入while之后的程序。
For循環(huán)部分可以進(jìn)行仿真和綜合,電路復(fù)雜。
11:
塊語句有begin_end和fork_join。
Begin_end塊內(nèi)可以定義局部變量,其次塊內(nèi)使用的語句可以被其他語句調(diào)用。
Fork_join塊內(nèi)語句將同時(shí)開始并行執(zhí)行,按照時(shí)間順序,排在最后一個(gè)語句執(zhí)行完之后跳出該程序塊。
塊內(nèi)部賦值有assign的連續(xù)賦值語句,當(dāng)右邊的值發(fā)生變化時(shí),計(jì)算右邊的表達(dá)式的值,并將結(jié)果付給左邊的變量。具有組合邏輯的特征。
Always塊可以描述組合邏輯也可以描述時(shí)序邏輯。Always塊主要由時(shí)序控制條件和執(zhí)行語句構(gòu)成。
12:抽象級(jí)別的描述主要分為系統(tǒng)級(jí),算法級(jí),RTL級(jí),門級(jí)和開關(guān)級(jí)。
門級(jí)描述就是利用verilog內(nèi)置的基本門級(jí)元件以及他們之間的連接來構(gòu)筑邏輯電路的模型。
行為級(jí)描述關(guān)注的是邏輯電路的輸入/輸出的因果關(guān)系,即在任何輸入條件下產(chǎn)生何級(jí)輸出,描述的是一種行為特征。
13:組合邏輯通過assign實(shí)現(xiàn)。而時(shí)序的邏輯通過always實(shí)現(xiàn)。