版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第三章verilog的基本語(yǔ)法天津大學(xué)電子科學(xué)與技術(shù)系史再峰shizaifeng@verilog2011--TJU.ASICCenter---ArnoldShi3.1數(shù)據(jù)類型及其常量及變量天津大學(xué)電子科學(xué)與技術(shù)系史再峰shizaifeng@verilog2011--TJU.ASICCenter---ArnoldShi
0、低、偽、邏輯低、地、VSS、負(fù)插入01XZ0bufbufbufbufif11、高、真、邏輯高、電源、VDD、正插入X、不確定:邏輯沖突無(wú)法確定其邏輯值HiZ、高阻抗、三態(tài)、無(wú)驅(qū)動(dòng)源Verilog
的四種邏輯值x和X、z和Z不區(qū)別大小寫。Z有時(shí)候也用?代替verilog2011--TJU.ASICCenter---ArnoldShi數(shù)據(jù)類型VerilogHDL中共有19種數(shù)據(jù)類型,分成常量和變量最基本最常用的4種:寄存器型reg線網(wǎng)型wire整形
integer參數(shù)型parameter其余的包括:large\medium\scalared\time\small\tri\trio\tri1\triand\trior\trireg\vectored\wand\wor型,主要與基本單元庫(kù)有關(guān),設(shè)計(jì)時(shí)很少使用verilog2011--TJU.ASICCenter---ArnoldShi一、常量在程序運(yùn)行中,其值不能被改變的量叫常量?jī)深愖罨镜某A浚簲?shù)字型常量和參數(shù)(parameter)數(shù)字型常量:整型數(shù)可以按如下兩種方式書寫簡(jiǎn)單的十進(jìn)制數(shù)格式
基數(shù)格式verilog2011--TJU.ASICCenter---ArnoldShi基數(shù)表示法(一)格式:[位寬]’進(jìn)制
值無(wú)符號(hào)數(shù)。位寬是按照二進(jìn)制數(shù)來(lái)計(jì)算的。進(jìn)制可以為b或B(二進(jìn)制)、o或O(八進(jìn)制)、d或D(十進(jìn)制)、h或H(十六進(jìn)制)。值是基于進(jìn)制的數(shù)字序列。如:
3’b001,3’B110三位二進(jìn)制
6’o12,6’O12六位八進(jìn)制
4’d9,4’D9十位十進(jìn)制
8’hBF,8’HBF八位十六進(jìn)制verilog2011--TJU.ASICCenter---ArnoldShi基數(shù)表示法(二)基數(shù)格式計(jì)數(shù)形式的數(shù)通常為無(wú)符號(hào)數(shù)。這種形式的整型數(shù)的長(zhǎng)度定義是可選的。如果沒(méi)有定義一個(gè)整數(shù)型的長(zhǎng)度,數(shù)的長(zhǎng)度為相應(yīng)值中定義的位數(shù)。下面是兩個(gè)例子:'o7219位八進(jìn)制數(shù)'hAF8位十六進(jìn)制數(shù)verilog2011--TJU.ASICCenter---ArnoldShi基數(shù)表示法(三)如果定義的長(zhǎng)度比為常量指定的長(zhǎng)度長(zhǎng),通常在左邊填0補(bǔ)位。但是如果數(shù)最左邊一位為x或z,就相應(yīng)地用x或z在左邊補(bǔ)位。例如:10'b10左邊添0占位,000000001010'bx0x1左邊添x占位,xxxxxxx0x1如果長(zhǎng)度定義得更小,那么最左邊的位相應(yīng)地被截?cái)?。例如?'b1001_0011與3'b011相等5'H0FFF與5'H1F相等?字符在數(shù)中可以代替值z(mì)在值z(mì)被解釋為不分大小寫的情況下提高可讀性verilog2011--TJU.ASICCenter---ArnoldShi下劃線下劃線可以用來(lái)分割數(shù)的表達(dá)式以提高程序的可讀性,但不能用在位寬和進(jìn)制處,只能用于具體的數(shù)字之間比如16’b1010_1011_11111_000//合法格式8’b_0011_1011//非法格式verilog2011--TJU.ASICCenter---ArnoldShi負(fù)數(shù)一個(gè)數(shù)字可以被定義成負(fù)數(shù),只要在位寬表達(dá)式前加一個(gè)減號(hào)
-8’d5//合法格式
8’d-5//非法格式verilog2011--TJU.ASICCenter---ArnoldShi簡(jiǎn)單的十進(jìn)制格式這種形式的整數(shù)定義為帶有一個(gè)可選的“+”(一元)或“-”(一元)運(yùn)算符的數(shù)字序列。這種形式的整數(shù)值代表一個(gè)有符號(hào)的數(shù)。負(fù)數(shù)使用補(bǔ)碼形式表示。例如
15 相當(dāng)于二進(jìn)制01111-15 相當(dāng)于二進(jìn)制10001
verilog2011--TJU.ASICCenter---ArnoldShi實(shí)數(shù)類型實(shí)數(shù)可以用下列兩種形式定義十進(jìn)制記數(shù)法,例如:2.0;
-0.1等
科學(xué)記數(shù)法,例如:235.1e2 等于23510.0234_12e2 等于2341200.0實(shí)數(shù)小數(shù)通過(guò)四舍五入被隱式地轉(zhuǎn)換為最相近的整數(shù)。例如:42.446,42.45轉(zhuǎn)換為整數(shù)4292.5,92.699轉(zhuǎn)換為整數(shù)93-5.62轉(zhuǎn)換為整數(shù)-6-26.22轉(zhuǎn)換為整數(shù)-6verilog2011--TJU.ASICCenter---ArnoldShi常量的位數(shù),x(或z)在十六進(jìn)制值中代表4位x(或z),在八進(jìn)制中代表3位x(或z),在二進(jìn)制中代表1位x(或z)當(dāng)常量不說(shuō)明位數(shù)時(shí)候默認(rèn)是32位,每個(gè)字母用8位ASCII碼來(lái)表示10=32’d10=32’b10101=32’d1=32’b1-1=-32’d1=32’hFFFF_FFFF‘BX=32’BX=32’BXXXXXXXXXX...“AB”=16’B010000001_01000010A的ASCII值是85,B的值是86verilog2011--TJU.ASICCenter---ArnoldShi字符串字符串是雙引號(hào)內(nèi)的字符串列。一個(gè)字符可用八位二進(jìn)制表示。如:“INTEGER”需要8*7位。 例: reg[8*14:1]Message;
Message=“INTERNALERROR”;verilog2011--TJU.ASICCenter---ArnoldShi課堂練習(xí)下列表達(dá)式的位模式是什么?寫出其具體的二進(jìn)制表示值7'o44,'Bx0,5'bx110,'hA0,10'd2,'hzFVerilog描述實(shí)際的二進(jìn)制值7'o44
100100'Bx0x05'bx110xx110'hA01010_000010'd20000_0000_10'hzFzzzz1111verilog2011--TJU.ASICCenter---ArnoldShi參數(shù)參數(shù)是一個(gè)常量。用parameter定義一個(gè)標(biāo)識(shí)符來(lái)代表一個(gè)常量。參數(shù)經(jīng)常用于定義時(shí)延和變量的寬度。格式:parameterparam1=const_expr1,param2=const_expr2, …,
paramN=const_exprN;
如:parameterDelay=1;
parameterA=32,B=4’b0001;
parameterstring=“exec_command”;verilog2011--TJU.ASICCenter---ArnoldShi參數(shù)的傳遞參數(shù)值也可以在編譯時(shí)被改變。改變參數(shù)值可以使用參數(shù)定義語(yǔ)句或通過(guò)在模塊初始化語(yǔ)句中定義參數(shù)值當(dāng)某個(gè)模塊在另一個(gè)模塊內(nèi)被引用時(shí),高層模塊能夠改變低層模塊的參數(shù)值。模塊參數(shù)值的改變可采用下述兩種方式:參數(shù)定義語(yǔ)句(defparam);帶參數(shù)值的模塊引用。verilog2011--TJU.ASICCenter---ArnoldShidefparam舉例module
TOP(NewA,NewB,NewS,NewC);input
NewA,NewB;output
NewS,NewC;defparam
Ha1.XOR_DELAY=5,//實(shí)例Ha1中的參數(shù)XOR_DELAY。
Ha1.AND_DELAY=2;//實(shí)例Ha1中參數(shù)的AND_DELAY。HAHa1(NewA,NewB,NewS,NewC);endmodulemoduleHA(A,B,S,C);inputA,B;outputS,C;parameterAND_DELAY=1,XOR_DELAY=2;assign#XOR_DELAYS=A^B;assign#AND_DELAYC=A&B;endmoduleHATOPverilog2011--TJU.ASICCenter---ArnoldShi參數(shù)值的模塊引用module
TOP3(NewA,NewB,NewS,NewC);input
NewA,NewB;output
NewS,NewC;HA
#(5,2)Ha1(NewA,NewB,NewS,NewC);//第1個(gè)值5賦給參數(shù)AND_DELAY,該參數(shù)在模塊HA中說(shuō)明。//第2個(gè)值2賦給參數(shù)XOR_DELAY,該參數(shù)在模塊HA中說(shuō)明。endmoduleverilog2011--TJU.ASICCenter---ArnoldShi課堂練習(xí)-參數(shù)傳遞假定一個(gè)模塊為BK,內(nèi)部?jī)蓚€(gè)參數(shù)P1,P2;另外一個(gè)模塊為HA,內(nèi)部參數(shù)P3,P4其在TOP模塊中實(shí)例化調(diào)用的名稱分別為U1,U2請(qǐng)嘗試在top模塊中用兩種不同的方法改變其參數(shù)值p1-p4分別為1,2,3,4verilog2011--TJU.ASICCenter---ArnoldShi二、變量在Verilog中有兩大主要數(shù)據(jù)類型:線網(wǎng)類型(wire)、寄存器類型(reg)。線網(wǎng)類型
包含下述不同種類的線網(wǎng)子類型。
wire,tri
用于連線的最常見(jiàn)的線網(wǎng)類型
wor,trior
線或
wand,triand
線與
trireg
此線網(wǎng)存儲(chǔ)數(shù)值,用于電容節(jié)點(diǎn)的建模
tri1,tri0
用于線邏輯的建模,上拉或下拉驅(qū)動(dòng)
supply0,supply1supply0用于對(duì)“地”建模,supply1對(duì)電源建模verilog2011--TJU.ASICCenter---ArnoldShinets(網(wǎng)絡(luò)連線)nets(網(wǎng)絡(luò)連線):由模塊或門驅(qū)動(dòng)的連線。驅(qū)動(dòng)端信號(hào)的改變會(huì)立刻傳遞到輸出的連線上。例如:右圖上,selb的改變,會(huì)自動(dòng)地立刻影響或門的輸出。
netsabslselbselansloutverilog2011--TJU.ASICCenter---ArnoldShiNets(線網(wǎng)型)例:
wire
BpW;
assign
BpW=Error&Wait;
assign
BpW=Valid|Clear;BpW電路圖verilog2011--TJU.ASICCenter---ArnoldShiNets(網(wǎng)絡(luò)連線,線網(wǎng)類型)簡(jiǎn)單的線網(wǎng)類型定義說(shuō)明語(yǔ)句為:
net_kind[msb:lsb]net1,net2,….netN;
當(dāng)一個(gè)線形有兩個(gè)或多個(gè)驅(qū)動(dòng)時(shí),線網(wǎng)的有效值按如下表確定。verilog2011--TJU.ASICCenter---ArnoldShi補(bǔ)充:CMOSNORABF001010100110A+BABABABverilog2011--TJU.ASICCenter---ArnoldShi補(bǔ)充:CMOSNANDABA?BABABF001011101110ABverilog2011--TJU.ASICCenter---ArnoldShiNets(網(wǎng)絡(luò)連線)verilog2011--TJU.ASICCenter---ArnoldShi補(bǔ)充知識(shí):連續(xù)賦制值語(yǔ)句連續(xù)賦制語(yǔ)句用于把值賦給線網(wǎng)型變量(不能為寄存器型變量賦值)語(yǔ)句形式為:assignA=B&C;連續(xù)賦值語(yǔ)句在什么時(shí)候執(zhí)行呢?只要在右端表達(dá)式的操作數(shù)上有事件(事件為值的變化)發(fā)生時(shí),表達(dá)式即被計(jì)算;如果結(jié)果值有變化,新結(jié)果就賦給左邊的線網(wǎng)。verilog2011--TJU.ASICCenter---ArnoldShi連續(xù)賦值的目標(biāo)類型標(biāo)量線網(wǎng)向量線網(wǎng)向量的常數(shù)型位選擇,如a[1]
向量的常數(shù)型部分選擇如:a[3:1]
上述類型的任意的拼接運(yùn)算結(jié)果verilog2011--TJU.ASICCenter---ArnoldShi連續(xù)賦值語(yǔ)句舉例module
FA_Df(A,B,Cin,Sum,Cout
);input
A,B,Cin;output
Sum,Cout
;assign
Sum=A^B^Cin;assign
Cout=(A&Cin)|(B&Cin)|(A&B);endmodule在本例中,有兩個(gè)連續(xù)賦值語(yǔ)句。這些賦值語(yǔ)句是并發(fā)的,與其書寫的順序無(wú)關(guān)verilog2011--TJU.ASICCenter---ArnoldShi數(shù)據(jù)流描述方式例:
wor
BpW;wand
BpR;
assign
BpW=Error&Wait;
assign
BpW=Valid|Clear;
assign
BpR=Error^Valid;
assign
BpR=!Clear;BpW和BpR電路圖verilog2011--TJU.ASICCenter---ArnoldShi寄存器(register)類型變量寄存器(register)類型變量register型變量能保持其值,直到它被賦于新的值。register型變量常用于行為建模,產(chǎn)生測(cè)試的激勵(lì)信號(hào)。常用行為語(yǔ)句結(jié)構(gòu)來(lái)給寄存器類型的變量賦值。abslselbselansloutreg_areg_selreg_bverilog2011--TJU.ASICCenter---ArnoldShireg型寄存器是數(shù)據(jù)存儲(chǔ)單元的抽象reg型數(shù)據(jù)常用來(lái)表示always塊內(nèi)的指定信號(hào),常代表觸發(fā)器reg型數(shù)據(jù)用initial或者always塊中指定信號(hào)reg型數(shù)據(jù)的缺省值是x??梢员毁x正值或者負(fù)值。當(dāng)它作為一個(gè)表達(dá)式中的操作數(shù)時(shí)候,作為無(wú)符號(hào)數(shù)。reg數(shù)據(jù)類型定義格式為reg[n-1:0]數(shù)據(jù)名1,....;或者reg[n:1]數(shù)據(jù)名1,....;verilog2011--TJU.ASICCenter---ArnoldShi寄存器陣列
Verilog
語(yǔ)言支持寄存器陣列的聲明:integerNUMS[7:0];//8個(gè)整型變量的寄存器陣列time
t_vals[3:0];//4個(gè)時(shí)間變量的寄存器陣列數(shù)據(jù)類型為reg
的陣列常稱為存儲(chǔ)器(即memory):reg[15:0]MEM[0:1023];//1Kx16位的存儲(chǔ)器reg[7:0]PREP[‘hfffe:‘hffff];//2x8位的存儲(chǔ)器可以用參數(shù)來(lái)表示存儲(chǔ)器的大小:parameter
wordsize=16;parameter
memsize=1024;reg[wordsize-1:0]MEM3[memsize-1:0];只能一次選擇一個(gè)字,不允許對(duì)存儲(chǔ)器變量值部分進(jìn)行部分選擇或位選擇.如dram[60][2:4]是錯(cuò)誤的verilog2011--TJU.ASICCenter---ArnoldShi存儲(chǔ)器memory型變量存儲(chǔ)器memory型用一個(gè)寄存器數(shù)組來(lái)對(duì)存儲(chǔ)器建模。格式:reg[msb:lsb]存儲(chǔ)器名
[upper1:lower1];
如:
reg[3:0]MyMem[63:0];//64個(gè)四位寄存器組
verilog2011--TJU.ASICCenter---ArnoldShi其他類型變量integer
整數(shù)寄存器有符號(hào)數(shù)。主要用來(lái)高層次建模。如:integerA; //整形寄存器,32位
integerB[1023:0];//10位time
時(shí)間類型寄存器如:timeCurrentTime;//CurrentTime存儲(chǔ)一個(gè)時(shí)間值
CurrentTime=$time;verilog2011--TJU.ASICCenter---ArnoldShi輸入端口(input)可以由寄存器(reg)或線網(wǎng)(wire)連接驅(qū)動(dòng),但它本身只能驅(qū)動(dòng)網(wǎng)絡(luò)連接。輸出端口(output)可以由寄存器或線網(wǎng)連接驅(qū)動(dòng),但它本身只能驅(qū)動(dòng)線網(wǎng)連接。輸入/輸出端口(inout)只可以由線網(wǎng)連接驅(qū)動(dòng),但它本身只能驅(qū)動(dòng)線網(wǎng)連接。如果信號(hào)變量是在過(guò)程塊(initial塊或always塊)中被賦值的,必須把它聲明為寄存器類型變量
如何選擇正確的數(shù)據(jù)類型?verilog2011--TJU.ASICCenter---ArnoldShimoduletop;wirey;
rega,b;DUTu1(y,a,b);
initial
begina=0;b=0;#10a=1;….
endendmodule
模塊DUT的邊界輸入口輸出口輸出/入口netnetnet/registernetnet/registernetinoutmoduleDUT(Y,A,B_);outputY;inputA,B:wireY,A,B;and(Y,A,B);endmodule舉例說(shuō)明數(shù)據(jù)類型的選擇verilog2011--TJU.ASICCenter---ArnoldShi在過(guò)程塊(alwaysinitial)中對(duì)變量賦值時(shí),忘了把它定義為寄存器類型(reg)或已把它定義為連接類型了(wire)把實(shí)例的輸出連接出去時(shí),把它定義為寄存器類型把模塊的輸入信號(hào)定義為寄存器類型。這是經(jīng)常犯的三個(gè)錯(cuò)誤?。。∵x擇數(shù)據(jù)類型時(shí)常犯的錯(cuò)誤verilog2011--TJU.ASICCenter---ArnoldShi3.2運(yùn)算符及表達(dá)式天津大學(xué)電子科學(xué)與技術(shù)系史再峰shizaifeng@verilog2011--TJU.ASICCenter---ArnoldShi3.2運(yùn)算符(操作符)及表達(dá)式VerilogHDL中的運(yùn)算符可以分為下述類型:算術(shù)運(yùn)算符關(guān)系運(yùn)算符相等運(yùn)算符邏輯運(yùn)算符按位運(yùn)算符縮減(歸約)運(yùn)算符移位運(yùn)算符條件運(yùn)算符連接和復(fù)制運(yùn)算符verilog2011--TJU.ASICCenter---ArnoldShi按所帶操作數(shù)的個(gè)數(shù)分類單目運(yùn)算符(unaryoperator)帶一個(gè)操作數(shù),操作數(shù)在運(yùn)算符的右邊如~clock雙目運(yùn)算符(binaryoperator)帶兩個(gè)操作數(shù),操作數(shù)分別在運(yùn)算符的兩邊如a|b三目運(yùn)算符(ternaryoperator)帶三個(gè)操作數(shù),用三目運(yùn)算符隔開(kāi)verilog2011--TJU.ASICCenter---ArnoldShi3.2.1算術(shù)運(yùn)算符算術(shù)運(yùn)算符有:
+(一元加和二元加)
-(一元減和二元減)*(乘)
/(除)
%(取模)整數(shù)除法截?cái)嗳魏涡?shù)部分。例如:7/4結(jié)果為1取模運(yùn)算符求出與第一個(gè)運(yùn)算符符號(hào)相同的余數(shù)。7%4結(jié)果為3而-7%4結(jié)果為-3verilog2011--TJU.ASICCenter---ArnoldShi課堂練習(xí)以下表達(dá)式在verilogHDL中的值是多少?(結(jié)果用16位hex表示表示)5/3(-9)/6(-9)%611%(-5)12/(-7)答案是5/3=16’h0001(-9)/6=16’hFFFF(-9)%6=16’hFFFD11%(-5)=16’h000112/(-7)=16’hFFFFverilog2011--TJU.ASICCenter---ArnoldShi3.2.2按位運(yùn)算符按位運(yùn)算符有:~(一元非)
&(二元與)
|(二元或)
^(二元異或)
~^,^~(二元異或非)這些運(yùn)算符在輸入操作數(shù)的對(duì)應(yīng)位上按位操作,并產(chǎn)生向量結(jié)果。不同長(zhǎng)度操作符運(yùn)算時(shí),會(huì)右端對(duì)齊,左端補(bǔ)0verilog2011--TJU.ASICCenter---ArnoldShi按位非運(yùn)算符verilog2011--TJU.ASICCenter---ArnoldShi按位與運(yùn)算符verilog2011--TJU.ASICCenter---ArnoldShi按位或運(yùn)算符verilog2011--TJU.ASICCenter---ArnoldShi按位異或運(yùn)算符verilog2011--TJU.ASICCenter---ArnoldShi按位異或非運(yùn)算符verilog2011--TJU.ASICCenter---ArnoldShi按位操作符舉例假定A='b0110;B='b0100;那么:A|B結(jié)果為0110A&B結(jié)果為01004'b1011^4'bx010=4'bx001如果操作數(shù)長(zhǎng)度不相等,長(zhǎng)度較小的操作數(shù)在最左側(cè)添0補(bǔ)位。例如,'b0110^'b10000與如下式的操作相同:'b00110^'b10000結(jié)果為'b10110。verilog2011--TJU.ASICCenter---ArnoldShi3.2.3邏輯運(yùn)算符邏輯運(yùn)算符有:&&(邏輯與)||(邏輯或)
!(一元邏輯非)這些運(yùn)算符在邏輯值0或1上運(yùn)算。邏輯運(yùn)算的結(jié)構(gòu)為0或1。verilog2011--TJU.ASICCenter---ArnoldShi邏輯與運(yùn)算舉例assigna=8'haa;assignb=8'hff;assign
c_out=a&b;assignc_out2=a&&b;c_out2結(jié)果是0000_0001verilog2011--TJU.ASICCenter---ArnoldShi課堂練習(xí)以下表達(dá)式在verilogHDL中的值是多少?(結(jié)果用8位表示)assignd_0=4'b1101^8'h0a;assignd_1=4'b1101^~8'h0a;assignd_2=4'b1z01|8'h0a;assignd_3=4'b1101&&8'h0a;assignd_4=!4'b1x01;assignd_5=4'b1010||8'h55;答案是#hexd_0is07#hexd_1isF8#binaryd_2is0000_1x11#hexd_3is01#hexd_4is00#hexd_5is01verilog2011--TJU.ASICCenter---ArnoldShi3.2.4關(guān)系運(yùn)算符關(guān)系運(yùn)算符有:
>(大于)
<(小于)
>=(不小于)
<=(不大于)關(guān)系運(yùn)算符的結(jié)果為真(1)或假(0)。如果操作數(shù)中有一位為X或Z,那么結(jié)果為X。例如:23>45結(jié)果為假(0)52<8‘hxFF結(jié)果為x。verilog2011--TJU.ASICCenter---ArnoldShi關(guān)系運(yùn)算符語(yǔ)法如果操作數(shù)長(zhǎng)度不同,長(zhǎng)度較短的操作數(shù)在最重要的位方向(左方)添0補(bǔ)齊。例如:'b1000>='b01110等價(jià)于:'b01000>='b01110結(jié)果為假(0)verilog2011--TJU.ASICCenter---ArnoldShi3.2.5相等關(guān)系運(yùn)算符相等關(guān)系運(yùn)算符有:==(邏輯相等)
!=(邏輯不等)
===(全等)
!==(非全等)如果比較結(jié)果為假,則結(jié)果為0;否則結(jié)果為1。在全等比較中,值x和z嚴(yán)格按位比較。verilog2011--TJU.ASICCenter---ArnoldShi相等關(guān)系運(yùn)算舉例Data='b11x0;Addr='b11x0;那么(Data==Addr)不定,值為x,但:Data===Addr為真,值為1。如果操作數(shù)的長(zhǎng)度不相等,長(zhǎng)度較小的操作數(shù)在左側(cè)添0補(bǔ)位,例如:2'b10==4'b0010與下面的表達(dá)式相同:4'b0010==4'b0010結(jié)果為真(1)。verilog2011--TJU.ASICCenter---ArnoldShi關(guān)系及相等關(guān)系運(yùn)算符練習(xí)判斷以下表達(dá)式中的d值是多少
assignd_relation1=(4'b1011>=4'b10x1);
assignd_relation2=(4'b1011==4'b10x1);
assignd_relation3=(4'b10x1==4'b10x1);
assignd_relation4=(4'b10z1===4'b10x1);assignd_relation5=(4'b10x1!==4'b10x1);assignd_relation6=(4'b10x1!=4'b10x1);答案是:#bind_relation1is1'bx#bind_relation2is1'bx#bind_relation3is1'bx#bind_relation4is1'b0#bind_relation5is1'b0#bind_relation6is1'bxverilog2011--TJU.ASICCenter---ArnoldShi3.2.6縮減(歸約)運(yùn)算符歸約運(yùn)算符在單一操作數(shù)的所有位上操作,并產(chǎn)生1位結(jié)果。歸約運(yùn)算符有:&(歸約與):如果存在位值為0,那么結(jié)果為0;若如果存在位值為x或z,結(jié)果為x;否則結(jié)果為1。~&(歸約與非):與歸約運(yùn)算符&相反。
|(歸約或):如果存在位值為1,那么結(jié)果為1;如果存在位x或z,結(jié)果為x;否則結(jié)果為0。
~|(歸約或非):與歸約運(yùn)算符|相反。
^(歸約異或):如果存在位值為x或z,那么結(jié)果為x;否則如果操作數(shù)中有偶數(shù)個(gè)1,結(jié)果為0;否則結(jié)果為1。
~^(歸約異或非):與歸約運(yùn)算符^正好相反。verilog2011--TJU.ASICCenter---ArnoldShi縮減(歸約)運(yùn)算符練習(xí)判斷以下表達(dá)式中的d值是多少
assignd_reduction1=&8'b1011_0011;
assignd_reduction2=~|8'b1011_0011;
assignd_reduction3=~&8'b1011_0011;assignd_reduction4=~^8'b1011_0011;
assignd_reduction5=^8'b1011_0011;assignd_reduction6=~|8'b1011_00x1;
assignd_reduction7=^8'b10z1_0011;
assignd_reduction8=&8'b1011_00x1;assign
d_reduction8=&~8'b1011_00x1;modelsim仿真驗(yàn)證的答案是#bind_reduction1is1'b0#bind_reduction2is1'b0#bind_reduction3is1'b1#bind_reduction4is1'b0#bind_reduction5is1'b1#bind_reduction6is1'b0#bind_reduction7is1'bx#bind_reduction8is1'b0
Error:./vlog_test.v(57):near"~":syntaxerror,
verilog2011--TJU.ASICCenter---ArnoldShi3.2.7移位運(yùn)算符移位運(yùn)算符有:<<(左移)
>>(右移)移位運(yùn)算符左側(cè)操作數(shù)移動(dòng)右側(cè)操作數(shù)表示的次數(shù),它是一個(gè)邏輯移位。空閑位添0補(bǔ)位。如果右側(cè)操作數(shù)的值為x或z,移位操作的結(jié)果為x。假定:reg
[0:7]Qreg;...Qreg
=4'b0111;那么:Qreg
>>2是8'b0000_0001verilog2011--TJU.ASICCenter---ArnoldShi3.2.8條件運(yùn)算符條件運(yùn)算符根據(jù)條件表達(dá)式的值選擇表達(dá)式,形式如下:cond_expr
?expr1:expr2如果cond_expr
為真(即值為1),選擇expr1;如果cond_expr為假(值為0),選擇expr2。如果cond_expr
為x或z,結(jié)果將是按以下邏輯expr1和expr2按位操作的值:0與0得0,1與1得1,其余情況為x。verilog2011--TJU.ASICCenter---ArnoldShi條件運(yùn)算符舉例wire
[0:2]Student=Marks>18?GA:GC;計(jì)算表達(dá)式Marks>18;如果真,GA賦值給Student;如果Marks<=18,GC賦值給Student。再例如:
always#5Ctr
=(Ctr
!=25)?(Ctr
+1):5;過(guò)程賦值中的表達(dá)式表明如果Ctr不等于25,則加1;否則如果Ctr值為25時(shí),將Ctr值重新置為5。verilog2011--TJU.ASICCenter---ArnoldShi3.3.8連接和復(fù)制操作連接操作是將小表達(dá)式合并形成大表達(dá)式的操作。形式如:{expr1,expr2,...,exprN}實(shí)例如下所示:wire[7:0]Dbus;wire[11:0]Abus;assign
Dbus[7:4]={Dbus[0],Dbus[1],Dbus[2],Dbus[3]};//以反轉(zhuǎn)的順序?qū)⒌投?位賦給高端4位。assign
Dbus={Dbus[3:0],Dbus[7:4]};//高4位與低4位交換。verilog2011--TJU.ASICCenter---ArnoldShi復(fù)制運(yùn)算符通過(guò)指定重復(fù)次數(shù)來(lái)執(zhí)行操作。形式如下:{repetition_number
{expr1,expr2,...,exprN
}}以下是一些實(shí)例:Abus={3{4'b1011}};/位向量12'b1011_1011_1011)Abus={{4{Dbus[7]}},Dbus};/*符號(hào)擴(kuò)展*/verilog2011--TJU.ASICCenter---ArnoldShi運(yùn)算符的優(yōu)先級(jí)verilog2011--TJU.ASICCenter---ArnoldShi3.2.10關(guān)鍵詞所有關(guān)鍵詞都是事先定義好的確認(rèn)符,用于組織語(yǔ)言結(jié)構(gòu),全部是小寫定義。常用的有assignalwaysinitialbeginendbufbufif0bufif1casex
casez
cmos
deassigndefaultdefparamdisableedgecaseifelseendcasejoinlargeforkjoinnotnotif0notif1xorwirereg
wor
xor
xnorwhiletritri0tri1triand
triorrepeattaskfunctionforeverendtask
等等verilog2011--TJU.ASICCenter---ArnoldShi作業(yè)練習(xí)題假定32位總線Address_Bus,編寫一個(gè)表達(dá)式,計(jì)算從第11位到第20位的歸約與非。假定一條總線Control_Bus
[15:0],編寫賦值語(yǔ)句將總線分為兩條總線:Abus
[0:9]和Bbus[6:1]。編寫一個(gè)表達(dá)式,執(zhí)行算術(shù)移位,將Qparity
中包含的8位有符號(hào)數(shù)算術(shù)移位。使用條件運(yùn)算符,編寫賦值語(yǔ)句選擇NextState的值。如果CurrentState的值為RESET,那么NextState的值為GO;如果CurrentState的值為GO,則NextState
的值為BUSY;如果CurrentState的值為BUSY;則NextS
tate的值為RESET。verilog2011--TJU.ASICCenter---ArnoldShi習(xí)題解答錯(cuò)誤解答:assign
CurrentState==RESET?NextState=Go:(CurrentState==Go?NextState=BUSY:(CurrentState==BUSY?NextState=RESET:))正確解答:assignnextstate=(currentstate==RESET)?GO:((currentstate==GO)?BUSY:((currentstate==BUSY)?RESET:1’bz));verilog2011--TJU.ASICCenter---ArnoldShi3.3數(shù)據(jù)流建模天津大學(xué)電子科學(xué)與技術(shù)系史再峰shizaifeng@verilog2011--TJU.ASICCenter---ArnoldShi一、連續(xù)賦制值語(yǔ)句連續(xù)賦制語(yǔ)句用于把值賦給線網(wǎng)型變量(不能為寄存器型變量賦值)語(yǔ)句形式為:assignA=B&C;只要在右端表達(dá)式的操作數(shù)上有事件(事件為值的變化)發(fā)生時(shí),表達(dá)式即被計(jì)算;如果計(jì)算的結(jié)果值有變化,新結(jié)果就賦給左邊的線網(wǎng)。verilog2011--TJU.ASICCenter---ArnoldShi數(shù)據(jù)流的模型化連續(xù)賦值語(yǔ)句將值賦給線網(wǎng)(連續(xù)賦值不能為reg)例如assign
Mux
=(S==0)?A:1'bz;assign
Mux
=(S==1)?B:1'bz;assign
Mux
=(S==2)?C:1'bz;assign
Mux
=(S==3)?D:1'bz;assign
Mux
=(S==0)?A:1‘bz,//也可以這樣在一個(gè)語(yǔ)句中寫Mux
=(S==1)?B:1‘bz,
Mux
=(S==2)?C:1‘bz,
Mux
=(S==3)?D:1'bz;verilog2011--TJU.ASICCenter---ArnoldShi連續(xù)賦值的目標(biāo)類型標(biāo)量線網(wǎng)wirea;
向量線網(wǎng)wire[7:0]a;
向量線網(wǎng)的常數(shù)型位選擇,如a[1]
向量線網(wǎng)的常數(shù)型部分選擇如:a[3:1]
上述類型的任意的拼接運(yùn)算結(jié)果{3a[2],a[2:1]}verilog2011--TJU.ASICCenter---ArnoldShi連續(xù)賦值語(yǔ)句舉例module
FA_Df
(A,B,Cin,Sum,Cout
);input
A,B,Cin;output
Sum,Cout
;assign
Sum=A^B^Cin;assign
Cout
=(A&Cin)|(B&Cin)|(A&B);endmodule在本例中,有兩個(gè)連續(xù)賦值語(yǔ)句。這些賦值語(yǔ)句是并發(fā)的,與其書寫的順序無(wú)關(guān)verilog2011--TJU.ASICCenter---ArnoldShi對(duì)應(yīng)的電路連接關(guān)系verilog2011--TJU.ASICCenter---ArnoldShi賦值給向量線網(wǎng)的拼接wire
Cout,Cin;wire[3:0]Sum,A,B;assign{Cout,Sum}=A+B+Cin;verilog2011--TJU.ASICCenter---ArnoldShi數(shù)據(jù)流描述方式例:
wor
BpW;wand
BpR;
assign
BpW=Error&Wait;
assign
BpW=Valid|Clear;
assign
BpR=Error^Valid;
assign
BpR=!Clear;BpW和BpR電路圖verilog2011--TJU.ASICCenter---ArnoldShi用數(shù)據(jù)流描述對(duì)2-4解碼器電路的建模verilog2011--TJU.ASICCenter---ArnoldShi參考答案`timescale1ns/1nsmoduleDecoder2x4(A,B,EN,Z);inputA,B,EN;output[0:3]Z;wire
Abar,Bbar;assign
Abar=~A;assign
Bbar=~B;assignZ[0]=~(Abar&Bbar&EN);assignZ[1]=~(Abar&B&EN);assignZ[2]=~(A&Bbar&EN);assignZ[3]=~(A&B&EN);endmoduleverilog2011--TJU.ASICCenter---ArnoldShi課堂練習(xí)題使用連續(xù)賦值語(yǔ)句,描述圖示的優(yōu)先編碼器電路的行為2bar02bar12bar2verilog2011--TJU.ASICCenter---ArnoldShi某同學(xué)的解答module(Data,Encode,Valid);input[3:0]Data;output[1:0]Encode;wire2bar0,2bar1,0bar;assign2bar0=~Data[2];assign2bar1=2bar0&Data[1];assign0bar=Data[0]|Data[1];assignEncode[0]=Data[3]|2bar1;assignEncode[1]=Data[3]|Data[2];assignValid=Data[3]|Data[2]|0bar;endmodule
程序基本沒(méi)有問(wèn)題,但是:第1行module沒(méi)有命名,這是不可以的第4行變量定義的時(shí)候,標(biāo)識(shí)符的首字母應(yīng)該是字母或者下劃線verilog2011--TJU.ASICCenter---ArnoldShi正確解答module
encoder(Data,Encode,Valid);input[3:0]Data;output[1:0]Encode;wirebar0,bar1,bar;assignbar0=~Data[2];assignbar1=2bar0&Data[1];assignbar=Data[0]|Data[1];assignEncode[0]=Data[3]|2bar1;assignEncode[1]=Data[3]|Data[2];assignValid=Data[3]|Data[2]|0bar;endmodule
verilog2011--TJU.ASICCenter---ArnoldShi二、線網(wǎng)說(shuō)明賦值連續(xù)賦值可作為線網(wǎng)說(shuō)明本身的一部分。這樣的賦值被稱為線網(wǎng)說(shuō)明賦值。如:wire[3:0]Sum=4'b0;wireClear='b1;wireA_GT_B=A>B,B_GT_A=B>A;等價(jià)于
wireclear;
assignclear=‘b1;不允許在同一個(gè)線網(wǎng)上出現(xiàn)多個(gè)線網(wǎng)說(shuō)明賦值。如果多個(gè)賦值是必需的,則必須使用連續(xù)賦值語(yǔ)句。verilog2011--TJU.ASICCenter---ArnoldShi隱式線網(wǎng)如果在VerilogHDL模型中一個(gè)線網(wǎng)沒(méi)有被特別說(shuō)明,那么它被缺省聲明為1位線網(wǎng)。但是`
default_nettype編譯指令能夠用于取代缺省線網(wǎng)類型.例:`default_nettypewand
//根據(jù)此編譯指令,所有后續(xù)未說(shuō)明的線網(wǎng)都是wand類型再例:`default_nettype
wiremoduleAND4to1(Z,D0,D1,D2,D3,S0);outputZ;inputD0,D1,D2,D3,S0;
assignZ=S0?(D0&D1&D2&D3):1’b0;
endmodule
verilog2011--TJU.ASICCenter---ArnoldShi數(shù)據(jù)流建模課堂練習(xí)verilog2011--TJU.ASICCenter---ArnoldShi數(shù)據(jù)流建模參考答案moduleMSDFF_DF(D,C,Q,Qbar);inputD,C;outputQ,Qbar;//wireNotC,NotD,NotY,Y,D1,D2,Ybar,Y1,;Y2assignNotD=~D;assignNotC=~C;assignNotY=~Y;assignD1=~(D&C);assignD2=~(C&NotD);assignY=~(D1&Ybar);assignYbar=~(Y&D2);assignY1=~(Y&NotC);assignY2=~(NotY&NotC);assignQ=~(Qbar&Y1);assignQbar=~(Y2&Q);endmoduleverilog2011--TJU.ASICCenter---ArnoldShi三、時(shí)延說(shuō)明assign#6Ask=Quiet||Late;規(guī)定右邊表達(dá)式結(jié)果的計(jì)算到其賦給左邊目標(biāo)需經(jīng)過(guò)6個(gè)時(shí)間單位時(shí)延。例如,如果在時(shí)刻5,Late值發(fā)生變化,則賦值的右端表達(dá)式被計(jì)算,并且Ask在時(shí)刻11(=5+6)被賦于新值verilog2011--TJU.ASICCenter---ArnoldShi時(shí)延VerilogHDL模型中的所有時(shí)延都根據(jù)時(shí)間單位定義使用編譯指令將時(shí)間單位與物理時(shí)間相關(guān)聯(lián)。這樣的編譯器指令需在模塊描述前定義,如下所示:`timescale
1ns/100ps此語(yǔ)句說(shuō)明時(shí)延時(shí)間單位為1ns并且時(shí)間精度為100ps(時(shí)間精度是指所有的時(shí)延必須被限定在0.1ns內(nèi))。如果此編譯器指令所在的模塊包含上面的連續(xù)賦值語(yǔ)句,#2代表2ns。如果沒(méi)有這樣的編譯器指令,VerilogHDL模擬器會(huì)指定一個(gè)缺省時(shí)間單位。IEEEVerilogHDL
標(biāo)準(zhǔn)中沒(méi)有規(guī)定缺省時(shí)間單位。verilog2011--TJU.ASICCenter---ArnoldShi為什么會(huì)有延時(shí)?以下兩個(gè)最基本的電路單元verilog2011--TJU.ASICCenter---ArnoldShiCMOSNANDABA?BABABF001011101110ABverilog2011--TJU.ASICCenter---ArnoldShiCMOSNORABF001010100110A+BABABABverilog2011--TJU.ASICCenter---ArnoldShiMOSFET的結(jié)構(gòu)verilog2011--TJU.ASICCenter---ArnoldShiMOS電容verilog2011--TJU.ASICCenter---ArnoldShi靜態(tài)CMOS的開(kāi)關(guān)模型AReqARpARpARnCLACLBRnARpBRpARnCintBRpARpARnBRnCLCintNAND2INVNOR2verilog2011--TJU.ASICCenter---ArnoldShi關(guān)于時(shí)延探討如果右端在傳輸給左端之前變化,右端發(fā)生在時(shí)延間隔內(nèi)的變化被濾掉。 例如:assign#4Cab=Drm;這也同樣適用于慣性時(shí)延行為:即右端值變化在能夠傳播到左端前必須至少保持時(shí)延間隔;如果在時(shí)延間隔內(nèi)右端值變化,則前面的值不能傳輸?shù)捷敵觥erilog2011--TJU.ASICCenter---ArnoldShi三類時(shí)延值對(duì)于每個(gè)時(shí)延定義,總共能夠指定三類時(shí)延值:
上升時(shí)延下降時(shí)延關(guān)閉時(shí)延assign#(rise,fall,turn-off)LHS=RHS_expr;如果右端從非0向量變化到0向量,那么就使用下降時(shí)延。如果右端值到達(dá)z,那么使用下降時(shí)延;否則使用上升時(shí)延。assign#4Ask=Quiet||Late;//Onedelayvalue.assign#(4,8)Ask=Quick;//Twodelayvalues.assign#(4,8,6)Arb=&DataBus;//Threedelayvalues.assignBus=MemAddr[7:4];//Nodelayvalue.verilog2011--TJU.ASICCenter---ArnoldShi帶時(shí)延的譯碼器建模`timescale1ns/1nsmoduleDecoder2x4(A,B,EN,Z);inputA,B,EN;output[0:3]Z;wire
Abar,Bbar;assign#1Abar=~A;assign#1Bbar=~B;assign#2Z[0]=~(Abar&Bbar&EN);assign#2Z[1]=~(Abar&B&EN);assign#2Z[2]=~(A&Bbar&EN);assign#2Z[3]=~(A&B&EN);endmoduleverilog2011--TJU.ASICCenter---ArnoldShi結(jié)果波形verilog2011--TJU.ASICCenter---ArnoldShi3.4.3線網(wǎng)時(shí)延時(shí)延也可以在線網(wǎng)說(shuō)明中定義,如:wire#5Arb;線網(wǎng)時(shí)延效果如圖線網(wǎng)時(shí)延Textassign時(shí)延assign時(shí)延驅(qū)動(dòng)2驅(qū)動(dòng)2驅(qū)動(dòng)1RHS表達(dá)式RHS表達(dá)式線網(wǎng)目標(biāo)verilog2011--TJU.ASICCenter---ArnoldShi線網(wǎng)時(shí)延舉例wire#5Arb;assign#2Arb=Bod⋒因?yàn)槎x了線網(wǎng)時(shí)延,實(shí)際對(duì)Arb的賦值發(fā)生在時(shí)刻17(=10+2+5)。verilog2011--TJU.ASICCenter---ArnoldShi課后作業(yè)數(shù)據(jù)流建模以下的奇偶發(fā)生器verilog2011--TJU.ASICCenter---ArnoldShi3.4門級(jí)結(jié)構(gòu)建模天津大學(xué)電子科學(xué)與技術(shù)系史再峰shizaifeng@verilog2011--TJU.ASICCenter---ArnoldShi3.4門級(jí)結(jié)構(gòu)建模moduleaddbit(a,b,ci,sum,co);inputa,b,ci;outputsum,co;wirea,b,ci,sum,co,n1,n2,n3;
xor(n1,a,b,);xor(sum,n1,ci);and(n2,a,b);and(n3,n1,ci);or(co,n2,n3);endmodule
由一些Verilog原型列出結(jié)構(gòu)化的元件并按網(wǎng)表連接verilog2011--TJU.ASICCenter---ArnoldShi3.4.1內(nèi)置的基本門VerilogHDL為門級(jí)電路建模的能力.提供下列內(nèi)置基本門:
多輸入門:and,nand,or,nor,xor,xnor
多輸出門:buf,not
三態(tài)門:bufif0,bufif1,notif0,notif1
上拉、下拉電阻:pullup,pulldownMOS開(kāi)關(guān):cmos,nmos,pmos,rcmos,rnmos,rpmos
雙向開(kāi)關(guān):tran,tranif0,tranif1,rtran,rtranif0,rtranif1verilog2011--TJU.ASICCenter---ArnoldShi門級(jí)結(jié)構(gòu)建模語(yǔ)法語(yǔ)句形式gate_type[instance_name](term1,term2,...,termN);注意,instance_name是可選的;
gate_type為前面列出的某種門類型。各term用于表示與門的輸入/輸出端口相連的線網(wǎng)或寄存器.同一門類型的多個(gè)實(shí)例能夠在一個(gè)結(jié)構(gòu)形式中定義gate_type[instance_name1](term1,term2,...,termN),
[instance_name2](term1,term2,...,termN),
[instance_name3](term1,term2,...,termN),
[instance_name4](term1,term2,...,termN);verilog2011--TJU.ASICCenter---ArnoldShi3.4.2多輸入門內(nèi)置的多輸入門包括:andnandnororxor
xnor這些邏輯門只有單個(gè)輸出,1個(gè)或多個(gè)輸入。門實(shí)例語(yǔ)句的語(yǔ)法如:multi_input_gate_type[instance_name](OutputA,Input1,Input2,...,InputN);第一個(gè)端口是輸出,其它端口是輸入多輸入門input1input2inputNOutputAverilog2011--TJU.ASICCenter---ArnoldShi多輸入門語(yǔ)法舉例andA1(Out1,In1,In2);andRBX(Sty,Rib,Bro,Qit,Fi)x;xor(Bar,Bud[0],Bud[1],Bud[2]),(Car,Cut[0],Cut[1]),(Sar,Sut[2],Sut[1],Sut[0],Sut[3]);verilog2011--TJU.ASICCenter---ArnoldShi多輸入門的真值表(一)nand01XZ01111110XXX1XXXZ1XXXand01XZ00000101XXX0XXXZ0XXXverilog2011--TJU.ASICCenter---ArnoldShi多輸入門的真值表(二)nor01XZ010XX10000XX0XXZX0XXor01XZ001XX11111XX1XXZX1XXverilog2011--TJU.ASICCenter---ArnoldShi多輸入門的真值表(三)xnor01XZ010XX101XXXXXXXZXXXXxor01XZ001XX110XXXXXXXZXXXXverilog2011--TJU.ASICCenter---ArnoldShi3.4.3多輸出門多輸出門有:bufnot這些門都只有單個(gè)輸入,一個(gè)或多個(gè)輸出。多輸出門的實(shí)例語(yǔ)句的基本語(yǔ)法如:multi_output_gate_type[instance_name](Out1,Out2,...OutN,InputA);多輸出門output1output2outputNInputAverilog2011--TJU.ASICCenter---ArnoldShi多輸出門語(yǔ)法舉例buf
B1(Fan[0],F(xiàn)an[1],F(xiàn)an[2],F(xiàn)an[3],Clk);notN1(PhA,PhB,Ready);真值表01XZbuf01XXnot10XXverilog2011--TJU.ASICCenter---ArnoldShi3.4.4三態(tài)門三態(tài)門有:bufif0bufif1notif0notif1這些門用于對(duì)三態(tài)驅(qū)動(dòng)器建模。這些門有一個(gè)輸出、一個(gè)數(shù)據(jù)輸入和一個(gè)控制輸入。三態(tài)門實(shí)例語(yǔ)句的基本語(yǔ)法如下:
tristate_gate[instance_name](OutputA,InputB,ControlC);第一個(gè)端口OutputA是輸出端口,第二個(gè)端口InputB是數(shù)據(jù)輸入,ControlC是控制輸入。inputAoutputAControlC三態(tài)門verilog2011--TJU.ASICCenter---ArnoldShi三態(tài)門的真值表bufif0控制信號(hào)01XZ數(shù)據(jù)輸入00Z0/z0/z11Z1/z1/zXXZXxZXZXxbufif1控制信號(hào)01XZ數(shù)據(jù)輸入0Z00/z0/z1Z11/z1/zXZXXxZZXXxnotif0控制信號(hào)01XZ數(shù)據(jù)輸入01Z1/z1/z10Z0/z0/zXXZXxZXZXxnotif1控制信號(hào)01XZ數(shù)據(jù)輸入0Z11/z1/z1Z00/z0/zXZXXxZZXXxverilog2011--TJU.ASICCenter---ArnoldShi門級(jí)結(jié)構(gòu)建模例題verilog2011--TJU.ASICCenter---ArnoldShimodule
flop(data,clock,clear,q,qb);input
data,clock,clear;output
q,qb;nand
#10 nd1(a,data,clock,clear),nd2(b,ndata,clock),nd4(d,c,b,clear),nd5(e,c,nclock),nd6(f,d,nclock),nd8(qb,q,f,clear);nand
#9 nd3(c,a,d),nd7(q,e,qb);not
#10 iv1(ndata,data),iv2(nclock,clock);endmoduleverilog2011--TJU.ASICCenter---ArnoldShi課堂練習(xí)用verilog的內(nèi)置基本門結(jié)構(gòu)建模以下電路verilog2011--TJU.ASICCenter---ArnoldShi參考答案
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五版汽車抵押貸款合同借款人借款用途變更通知合同3篇
- 二零二五年度城市軌道交通內(nèi)部承包合同6篇
- 二零二五版企業(yè)日常經(jīng)營(yíng)客戶關(guān)系管理與維護(hù)合同2篇
- 二零二五年酒店員工入股與酒店服務(wù)體驗(yàn)優(yōu)化合同3篇
- 二零二五年度廁所革命專項(xiàng)基金使用管理合同3篇
- 二零二五年度新能源風(fēng)能發(fā)電設(shè)備研發(fā)制造合同2篇
- 二零二五版企業(yè)法人借款合同擔(dān)保協(xié)議3篇
- 2025版大清包勞務(wù)合同范本:二零二五年度文化活動(dòng)組織執(zhí)行合同3篇
- 二零二五年海底光纜線路鋪設(shè)及安全保障合同3篇
- 2025年度祠堂宗教活動(dòng)組織與承包合同2篇
- GB/T 44679-2024叉車禁用與報(bào)廢技術(shù)規(guī)范
- 抖音直播帶貨協(xié)議書模板
- 2024義務(wù)教育體育與健康課程標(biāo)準(zhǔn)(2022年版)必考題庫(kù)及答案
- 工業(yè)機(jī)器人控制器:FANUC R-30iB:機(jī)器人實(shí)時(shí)監(jiān)控與數(shù)據(jù)采集技術(shù)教程
- 墓地銷售計(jì)劃及方案設(shè)計(jì)書
- 新加坡留學(xué)完整版本
- 勞務(wù)服務(wù)合作協(xié)議書范本
- 優(yōu)佳學(xué)案七年級(jí)上冊(cè)歷史
- 中醫(yī)五臟心完整版本
- 智能音箱方案
- 鋁箔行業(yè)海外分析
評(píng)論
0/150
提交評(píng)論