版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1電子電路設(shè)計(jì)訓(xùn)練
數(shù)字部分(Verilog)第四講、簡(jiǎn)單數(shù)字電路設(shè)計(jì)24.1門級(jí)電路一個(gè)邏輯電路是由許多邏輯門和開關(guān)所組成,因此用邏輯門的模型來(lái)描述邏輯電路結(jié)構(gòu)是最直觀的。Verilog提供了一些描述門類型的關(guān)鍵字,可以用于門級(jí)結(jié)構(gòu)建模。Verilog基本元件模型共有26種,其中14種為基本門級(jí)元件,12種為開關(guān)級(jí)元件,34.1門級(jí)電路門級(jí)電路列表多輸入門and(與門)nand(與非門)or(或門)
nor(或非門)
xor(異或門)
xnor(異或非門,同或門)多輸出門buf(緩沖器)not(非門)三態(tài)門(如果不被使能,
則輸出“z”)bufif0(低電平使能緩沖器)
bufif1(高電平使能緩沖器)notif0(低電平使能非門)
notif1(高電平使能非門)上拉,下拉電阻pullup(上拉電阻)pulldown(下拉電阻)<實(shí)例元件名>(<數(shù)據(jù)輸出>,<數(shù)據(jù)輸入>,<控制輸入>)44.1門級(jí)電路門級(jí)電路調(diào)用(實(shí)例化)<門的類型>[<驅(qū)動(dòng)能力><延時(shí)>]<門實(shí)例1>[,<門實(shí)例2>,
<門實(shí)例3>……];而每個(gè)門實(shí)例,按照<實(shí)例元件名>(<數(shù)據(jù)輸出>,<數(shù)據(jù)輸入>,<控制輸入>)例:nand#10nd1(a,data,clock,clear);這個(gè)例子說(shuō)明在模塊中只使用了一個(gè)名為nd1的與非門實(shí)例,輸入為clock,data,clear輸出為a,輸出與輸入的延時(shí)為10個(gè)單位時(shí)間。54.1門級(jí)電路門級(jí)電路例子--D觸發(fā)器6門級(jí)電路例子--D觸發(fā)器(續(xù))module
flop
(data,clock,clear,q,qb);input data,clock,clear;outputq,qb;endmodulenand #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);74.1門級(jí)電路門級(jí)電路例子—4位寄存器`include“flop.v”module
hardreg
(d,clk,clrb,q);input clk,clrb;input[3:0]d;output[3:0]q;endmoduleflopf0(d[0],clk,clrb,q[0],),f1(d[1],clk,clrb,q[1],),
f2(d[2],clk,clrb,q[2],),f3(d[3],clk,clrb,q[3],);注意但是,對(duì)于自行定義的模塊,推薦的作法:flopf0(.data(d[0]),.clock(clk),.clear(clrb),.q(q[0]),),f1(.data(d[1]),.clock(clk),.clear(clrb),.q(q[1]),),f2(.data(d[2]),.clock(clk),.clear(clrb),.q(q[2]),),f3(.data(d[3]),.clock(clk),.clear(clrb),.q(q[3]),);84.1門級(jí)電路門級(jí)電路例子—行為描述對(duì)比module
behaviorreg
(d,clk,clrb,q);input clk,clrb;input[3:0]d;output[3:0]q;endmodulealways
@(posedgeclkorclrb)
begin
if(!clrb)q<=0;
elseq<=d;
end94.2常用組合邏輯電路組合邏輯電路—
功能上無(wú)記憶,結(jié)構(gòu)上無(wú)反饋電路任一時(shí)刻的輸出狀態(tài)只取決于該時(shí)刻各輸入狀態(tài)的組合,而與電路的原狀態(tài)無(wú)關(guān)。對(duì)于任何一個(gè)多輸入多輸出組合邏輯電路,可以用框圖或者一組邏輯函數(shù)來(lái)表示。y1=f1
(a1,a2,…,an)y2=f2
(a1,a2,…,an)…ym
=fm
(a1,a2,…,an)
104.2常用組合邏輯電路加法器回憶多位加法器114.2常用組合邏輯電路加法器module
add_4(A,B,CI,S,CO);input[3:0] A,B;input CI;output[3:0]S;output CO;assign {CO,S}=A+B+CI;endmodule4位全加器16位?module
add_16(A,B,CI,S,CO);input[15:0] A,B;input CI;output[15:0]S;output CO;assign {CO,S}=A+B+CI;endmodule16位全加器124.2常用組合邏輯電路乘法器modulemult_4(X,Y,Product); input[3:0]X,Y; output[7:0]Product; assignProduct=X*Y;endmodule134.2常用組合邏輯電路比較器XY(X>Y)(X>=Y)(X=Y)(X<=Y)(X<Y)(X!=Y)00011100010001111011000111011100(X>Y)=X·(~Y)(X<Y)=(~X)·Y(X=Y)=(~X)·(~Y)+X·Y14比較器modulecompare_n(X,Y,XGY,XSY,XEY);parameterwidth=8;//必須在用以前寫input[width-1:0]X,Y;outputXGY,XSY,XEY;regXGY,XSY,XEY;
always@(XorY)//每當(dāng)X或Y變化時(shí)beginif(X==Y)XEY=1;//設(shè)置X等于Y的信號(hào)為1elseXEY=0;if(X>Y)XGY=1;//設(shè)置X大于Y的信號(hào)為1elseXGY=0;if(X<Y)XSY=1;//設(shè)置X小于Y的信號(hào)為1elseXSY=0;endendmodule154.2常用組合邏輯電路多路器modulemuxtwo(out,a,b,sl);inputa,b,sl;outputout;regout;always@(sloraorb) if(!sl)out=a; elseout=b;endmodulen位數(shù)據(jù)選擇信號(hào)數(shù)據(jù)輸出數(shù)據(jù)輸入D0D1二選一8選一?164.2常用組合邏輯電路多路器moduleMux_8(addr,in1,in2,in3,in4,in5,in6,in7,in8,Mout,nCS);parameterwidth=8;
input[2:0]addr;input[width-1:0]in1,in2,in3,in4,in5,in6,in7,in8;inputnCS;output[windth-1:0]Mout;reg[windth-1:0]Mout;
always@(addrorin1orin2orin3orin4orin5orin6orin7orin8ornCS)beginif(!nCS) case(addr)3'b000:Mout=in1;3'b001:Mout=in2;….endcaseelse Mout=0;endendmodule八選一…174.2常用組合邏輯電路編碼器(8-3編碼器)moduleencode8to3(in,out);input[7:0]in;output[2:0]out;reg[2:0]out;always@(in)begincase(in)8'b00000001:out=3'b000;8'b00000010:out=3'b001;8'b00000100:out=3'b010; 8'b00001000:out=3'b011; 8'b00010000:out=3'b100; 8'b00100000:out=3'b101; 8'b01000000:out=3'b110; 8'b10000000:out=3'b111;
default:out=3’b000;
//討論,default的重要性endcaseendendmodule184.2常用組合邏輯電路譯碼器(3-8譯碼器)moduledecode3to8(addr,out);
input[2:0]addr;
output[7:0]out;
assignout=1’b1<<addr;
endmodule194.3常用時(shí)序邏輯電路輸出不只是當(dāng)前輸入的邏輯電平的函數(shù),還與目前電路所處的狀態(tài)有關(guān)。時(shí)序邏輯通常是由多個(gè)觸發(fā)器和多個(gè)組合邏輯塊組成的網(wǎng)絡(luò),時(shí)序邏輯電路是設(shè)計(jì)復(fù)雜數(shù)字電路的核心。204.3常用時(shí)序邏輯電路RS觸發(fā)器moduleRS_FF(R,S,Q,QB);
inputR,S;
outputQ,QB;
regQ,QB;
always@(RorS)
case({R,S})
0:beginQ<=Q;QB<=QB;end
1:beginQ<=1;QB<=0;end
2:beginQ<=0;QB<=1;end
3:beginQ<=1‘bx;QB<=1’bx;end//思考是否影響綜合?
endcase
endmodule214.3常用時(shí)序邏輯電路RS觸發(fā)器224.3常用時(shí)序邏輯電路同步RS觸發(fā)器234.3常用時(shí)序邏輯電路同步RS觸發(fā)器moduleSY_RS_FF(R,S,CLK,Q,QB);
inputR,S,CLK;
outputQ,QB;
regQ;
assignQB=~Q;
always@(posedgeCLK)
case({R,S})
0:Q<=0;
1:Q<=1;
2:Q<=0;
3:Q<=1‘bx;
endcase
endmodule
244.3常用時(shí)序邏輯電路同步RS觸發(fā)器moduleSY_RS_FF(R,S,CLK,Q,QB);
inputR,S,CLK;
outputQ,QB;
regQ;
assignQB=~Q;
always@(posedgeCLK)
case({R,S})
0:Q<=0;
1:Q<=1;
2:Q<=0;
3:Q<=1'bx;
endcase
endmodule254.3常用時(shí)序邏輯電路D觸發(fā)器
moduleSY_D_FF(D,CLK,Q,QB);
inputD,CLK;
outputQ,QB;
regQ;
assignQB=~Q;
always@(posedgeCLK)
Q<=D;
endmodule264.3常用時(shí)序邏輯電路JK觸發(fā)器274.3常用時(shí)序邏輯電路JK觸發(fā)器moduleSY_JK_FF(J,K,CLK,Q,QB);
inputJ,K,CLK;
outputQ,QB;
regQ;
assignQB=~Q;
always
@(posedgeCLK)
case({J,K})
0:Q<=Q;
1:Q<=0;
2:Q<=1;
3:Q<=~Q;
endcase
endmoduleQnJK010001111011101000284.3常用時(shí)序邏輯電路寄存器
moduleREG4(CLR,D,CLK,Q);
inputCLR,CLK;
input[3:0]D;
output[3:0]Q;
reg[3:0]Q;
always@(posedgeCLKornegedgeCLR)
Q<=(!CLR)?0:D;
endmodule294.3常用時(shí)序邏輯電路移位寄存器moduleshifter_1(IN,CLK,CLR,Q);inputI
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 貴州城市職業(yè)學(xué)院《機(jī)械設(shè)計(jì)》2023-2024學(xué)年第一學(xué)期期末試卷
- 貴陽(yáng)職業(yè)技術(shù)學(xué)院《數(shù)據(jù)科學(xué)導(dǎo)論》2023-2024學(xué)年第一學(xué)期期末試卷
- 油橄欖示范基地建設(shè)項(xiàng)目可行性研究報(bào)告-油橄欖市場(chǎng)需求持續(xù)擴(kuò)大
- 貴陽(yáng)人文科技學(xué)院《樂(lè)理視唱一》2023-2024學(xué)年第一學(xué)期期末試卷
- 廣州中醫(yī)藥大學(xué)《智慧城市信息系統(tǒng)建設(shè)與實(shí)踐》2023-2024學(xué)年第一學(xué)期期末試卷
- 2025山西省建筑安全員-A證考試題庫(kù)及答案
- 2025河南省建筑安全員B證(項(xiàng)目經(jīng)理)考試題庫(kù)
- 2025河南省安全員B證考試題庫(kù)附答案
- 2025福建建筑安全員B證考試題庫(kù)附答案
- 2025上海市安全員A證考試題庫(kù)
- 滯銷風(fēng)險(xiǎn)管理制度內(nèi)容
- 關(guān)于物業(yè)服務(wù)意識(shí)的培訓(xùn)
- JJF 2184-2025電子計(jì)價(jià)秤型式評(píng)價(jià)大綱(試行)
- 排污許可證辦理合同1(2025年)
- GB/T 44890-2024行政許可工作規(guī)范
- 上海科目一考試題庫(kù)參考資料1500題-上海市地方題庫(kù)-0
- 【7地XJ期末】安徽省宣城市寧國(guó)市2023-2024學(xué)年七年級(jí)上學(xué)期期末考試地理試題(含解析)
- 設(shè)備操作、保養(yǎng)和維修規(guī)定(4篇)
- (完整版)四年級(jí)上冊(cè)數(shù)學(xué)豎式計(jì)算題100題直接打印版
- 玻璃瓶罐的缺陷產(chǎn)生原因及解決方法63699
- 高層住宅(23-33層)造價(jià)估算指標(biāo)
評(píng)論
0/150
提交評(píng)論