PT100M222A 數(shù)據(jù)流建模
發(fā)布時間:2019/10/13 19:00:13 訪問次數(shù):1275
PT100M222A位拼接運算符的作用是將兩個或多個信號的某些位拼接起來成為一個新的操作數(shù),進行運算操作。例如,設(shè)A=1’b1,B=2’b10,C=2’b00,若將操作數(shù)B、C拼接起來,則得到{B,C}=4’b1000;若將操作數(shù)A、B的第1位和C的第0位拼接起來,則得到一個3位矢量的新操作數(shù),即{A,B[1],C[0]}=31b110。若將操作數(shù)A、B、C和3i b101拼接起來,則得到一個8位矢量的新操作數(shù),即{A,B,C,31b101}=81b11000101。
對同一個操作數(shù)重復拼接還可以使用雙重大括號構(gòu)成的運算符{{}},例如{4{A}}=4i b1111,{2{A},2{B},C}=8’b11101000。注意,參與拼接的操作數(shù)必須標明位寬。
條仵運算符有三個操作數(shù),運算時根據(jù)條件表達式的值選擇表達式。一般用法如下:
condition-expr?expr1:expr2; .
首先計算第一個操作數(shù)condiuon~expr的值,如果結(jié)果為邏輯1,則選擇第二個操作數(shù)expr1的值作為結(jié)果返回,否則,選擇第三個操作數(shù)expr2的值作為結(jié)果返回。該運算符的功能與條件語句(if-else)等效。例4.6.7是使用條件運算符的一個例子。
數(shù)據(jù)流建模舉例,在Verilog語言中,數(shù)據(jù)流建模使用的基本語句是連續(xù)賦值語句,連續(xù)賦值語句用于對wire型變量進行賦值,它由關(guān)鍵詞assign開始,后面跟著由操作數(shù)和運算符組成的邏輯表達式。例如,2選1數(shù)據(jù)選擇器的連續(xù)賦值描述是:
wire A,B,SEL,L;//聲明4個連線型變量
assngn L=(A&~SEL)|(B&SEL);//連續(xù)賦值
連續(xù)賦值語句的執(zhí)行過程是:只要邏輯表達式右邊變量的邏輯值發(fā)生變化,則等式右邊表達式的值會立即被計算出來并賦給左邊的變量。注意,在assign語句中,左邊變量的數(shù)據(jù)類型必須是Wire型。
前面門級描述中介紹的2線-4線譯碼器和4位全加器的數(shù)據(jù)流描述分別如例4.6.4和例4.6.5所示。例4.6.4由4個邏輯表達式組成的連續(xù)賦值語句實現(xiàn)了2線一4線譯碼器的邏輯功能。仿真時,4條連續(xù)賦值語句是同時并行執(zhí)行的。
例4.6.4
//Datanow description of a 2-to~4~1ine decoder, (See Fig・4.4.7)
1nodule decoder~df(A1,A0,E,Y);
input A1,A0,E;
PT100M222A位拼接運算符的作用是將兩個或多個信號的某些位拼接起來成為一個新的操作數(shù),進行運算操作。例如,設(shè)A=1’b1,B=2’b10,C=2’b00,若將操作數(shù)B、C拼接起來,則得到{B,C}=4’b1000;若將操作數(shù)A、B的第1位和C的第0位拼接起來,則得到一個3位矢量的新操作數(shù),即{A,B[1],C[0]}=31b110。若將操作數(shù)A、B、C和3i b101拼接起來,則得到一個8位矢量的新操作數(shù),即{A,B,C,31b101}=81b11000101。
對同一個操作數(shù)重復拼接還可以使用雙重大括號構(gòu)成的運算符{{}},例如{4{A}}=4i b1111,{2{A},2{B},C}=8’b11101000。注意,參與拼接的操作數(shù)必須標明位寬。
條仵運算符有三個操作數(shù),運算時根據(jù)條件表達式的值選擇表達式。一般用法如下:
condition-expr?expr1:expr2; .
首先計算第一個操作數(shù)condiuon~expr的值,如果結(jié)果為邏輯1,則選擇第二個操作數(shù)expr1的值作為結(jié)果返回,否則,選擇第三個操作數(shù)expr2的值作為結(jié)果返回。該運算符的功能與條件語句(if-else)等效。例4.6.7是使用條件運算符的一個例子。
數(shù)據(jù)流建模舉例,在Verilog語言中,數(shù)據(jù)流建模使用的基本語句是連續(xù)賦值語句,連續(xù)賦值語句用于對wire型變量進行賦值,它由關(guān)鍵詞assign開始,后面跟著由操作數(shù)和運算符組成的邏輯表達式。例如,2選1數(shù)據(jù)選擇器的連續(xù)賦值描述是:
wire A,B,SEL,L;//聲明4個連線型變量
assngn L=(A&~SEL)|(B&SEL);//連續(xù)賦值
連續(xù)賦值語句的執(zhí)行過程是:只要邏輯表達式右邊變量的邏輯值發(fā)生變化,則等式右邊表達式的值會立即被計算出來并賦給左邊的變量。注意,在assign語句中,左邊變量的數(shù)據(jù)類型必須是Wire型。
前面門級描述中介紹的2線-4線譯碼器和4位全加器的數(shù)據(jù)流描述分別如例4.6.4和例4.6.5所示。例4.6.4由4個邏輯表達式組成的連續(xù)賦值語句實現(xiàn)了2線一4線譯碼器的邏輯功能。仿真時,4條連續(xù)賦值語句是同時并行執(zhí)行的。
例4.6.4
//Datanow description of a 2-to~4~1ine decoder, (See Fig・4.4.7)
1nodule decoder~df(A1,A0,E,Y);
input A1,A0,E;