版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
習(xí)題3-2圖3-16所示的是4選1多路選擇器,試分別用IF_THEN語句、WHEN_ELSE和CASE語句的表達方式寫出此電路的VHDL程序,要求選擇控制信號s1和s0的數(shù)據(jù)類型為STD_LOGIC;當(dāng)s1='0',s0='0';s1='0',s0='1';s1='1',s0='0'和s1='1',s0='1'時,分別執(zhí)行y<=a、y<=b、y<=c、y<=d。
習(xí)題3-2WHEN_ELSE條件信號賦值語句
LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYmux41ISPORT(s0,s1:instd_logic;a,b,c,d:instd_logic;y:outstd_logic);ENDENTITYmux41;ARCHITECTUREbehave1OFmux41ISSIGNALs:std_logic_vector(1downto0);BEGINS<=s1&s0;y<=aWHENs="00"ELSE bWHENs="01"ELSE cWHENs="10"ELSE dWHENs="11"ELSE '0';ENDbehave1;多選擇控制的IF語句
IF條件1THEN<順序語句l>;ELSIF條件2THEN<順序語句2>;…..ELSIF條件nTHEN<順序語句n>;ELSE<順序語句n+1>;ENDIF;…ARCHITECTUREbehave2OFmux41ISSIGNALs:std_logic_vector(1downto0);BEGINs<=s1&s0;PROCESS(s,a,b,c,d)BEGINIFs="00"THENy<=a;ELSIFs="01"THENy<=b;ELSIFs="10"THENy<=c;ELSEy<=d;ENDIF;ENDPROCESS;ENDbehave2;CASE語句…ARCHITECTUREbehave3OFmux41ISSIGNALs:std_logic_vector(1downto0);BEGINs<=s1&s0;PROCESS(s,a,b,c,d)BEGINCASEsISWHEN"00"=>y<=a;WHEN"01"=>y<=b;WHEN"10"=>y<=c;WHEN"11"=>y<=d;WHENOTHERS=>y<='0';ENDCASE;ENDPROCESS;ENDbehave3;習(xí)題3-3圖3-17所示的是雙2選1多路選擇器構(gòu)成的電路MUXK,對于其中MUX21A,當(dāng)s='0'和s='1'時,分別有y<='a'和y<='b'。試在一個結(jié)構(gòu)體中用兩個進程來表達此電路,每個進程中用CASE語句描述一個2選1多路選擇器MUX21A。LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYmuxkISPORT(a1,a2,a3:instd_logic;s0,s1:instd_logic;outy:outstd_logic);ENDENTITYmuxk;ARCHITECTUREbehaveOFmuxkISSIGNALtmp:std_logic;SIGNALoutx:std_logic;BEGINPr1:PROCESS(a2,a3,s0)BEGINCASEs0ISWHEN'0'=>tmp<=a2;WHEN'1'=>tmp<=a3;WHENOTHERS=>tmp<='0';ENDCASE;ENDPROCESS;Pr2:PROCESS(a1,tmp,s1)BEGINCASEs1ISWHEN'0'=>outx<=a1;WHEN'1'=>outx<=tmp;WHENOTHERS=>outx<='0';ENDCASE;ENDPROCESS;outy<=outx;ENDbehave;LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYmux21aISPORT(a,b:instd_logic;s:instd_logic;y:outstd_logic);ENDENTITYmux21a;ARCHITECTUREbehaveOFmux21aISBEGINy<=aWHENs='0'ELSEb;ENDbehave;LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYmuxkISPORT(a1,a2,a3:instd_logic;s0,s1:instd_logic;outy:outstd_logic);ENDENTITYmuxk;ARCHITECTUREbehaveOFmuxkISSIGNALtmp:std_logic;COMPONENTmux21aPORT(a,b,s:instd_logic;y:outstd_logic);ENDCOMPONENT;BEGINu1:mux21aPORTMAP(a2,a3,s0,tmp);u2:mux21aPORTMAP(a1,tmp,s1,outy);ENDbehave;必須先編譯、調(diào)試子模塊,才能使用元件例化語句。
習(xí)題3-6圖3-18是一個含有上升沿觸發(fā)的D觸發(fā)器的時序電路,試寫出此電路的VHDL設(shè)計文件。
LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYmux_dISPORT(CL,CLK0:instd_logic;OUT1:outstd_logic);END;ARCHITECTUREbehaveOFmux_dISSIGNALx,y:std_logic;BEGINx<=NOT(CLORy);--或x<=CLNORyOUT1<=NOTy;PROCESS(CLK0)BEGINIFCLK0'EVENTANDCLK0='1'THENy<=x;ENDIF;ENDPROCESS;ENDbehave;4-5.給出1位全減器的VHDL描述。要求:(1)首先設(shè)計1位半減器,然后用例化語句將它們連接起來,圖4-20中h_suber是半減器,diff是輸出差,s_out是借位輸出,sub_in是借位輸入。(2)以1位全減器為基本硬件,構(gòu)成串行借位的8位減法器,要求用例化語句來完成此項設(shè)計(減法運算是x–y-sun_in=diffr)。圖4-19時序電路圖
t0t1t2(1)先設(shè)計一個半減器Libraryieee;useieee.std_logic_1164.alll;Entityh_suberisPort(x,y:instd_logic;diff,s_out:outstd_logic);endh_suber;Architecturebehavofh_suberisBeginprocess(x,y)begindiff<=xxory;s_out<=(notx)andy;Endprocess;Endbehav;x、y00011011diff0110S_out0100一位全減器的VHDL描述suber.vhdLibraryieee;useieee.std_logic_1164.alll;EntitysuberisPort(x,y,sub_in:instd_logic;diffr,sub_out:outstd_logic);Endsuber;ArchitecturebehavofsuberisComponenth_suberPort(x,y:instd_logic;diff,s_out:outstd_logic);Endcomponent;Signalt0,t1,t2:std_logic;Beginu1:h_suberportmap(x=>x,y=>y,diff=>t0,s_out=>t1);u2:h_suberportmap(x=>t0,y=>sub_in,diff=>diffr,s_out=>t2);Sub_out<=t1ort2;Endbehav;(2)8位全減器(生成語句第九章)Libraryieee;useieee.std_logic_1164.alll;Entitysuber8isPort(a,b:instd_logic_vector(7downto0);Sin:instd_logic;sout:outstd_logic;C:outstd_logic_vector(7doento0);Endsub8;Architecturebehavofsuber8isComponentsuberPort(x,y,sub_in:instd_logic;diffr,sub_out:outstd_logic);Endcomponent;Signalstmp:std_logic_vector(8downto0);Beginstmp(0<=sin;Sout<=stmp(8);Gensub:foriin0to7generateu1:subportmap(x=>a(i),y=>b(i),diffr=>c(i),sub_out=>stmp(i+1));Endgenerate;end;習(xí)題3-4將3-20程序的計數(shù)器改為12進制計數(shù)器,程序用例3-21的方式表述,并且將復(fù)位RST改為同步清0控制,加載信號LOAD改為異步控制方式。討論例3-20與例3-21的異同點。LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYCNT12ISPORT(CLK,RST,EN,LOAD:INSTD_LOGIC;DATA:INSTD_LOGIC_VECTOR(3DOWNTO0);DOUT:OUTSTD_LOGIC_VECTOR(3DOWNTO0);COUT:OUTSTD_LOGIC);END;ARCHITECTUREbehavOFCNT12ISSIGNALQ:STD_LOGIC_VECTOR(3DOWNTO0);BEGINREG:PROCESS(CLK,LOAD)BEGIN
IFLOAD='0'THENQ:=DATA; ELSIFCLK'EVENTANDCLK='1'THEN IFEN='1'THEN
IF(RST='0')THENQ:=(OTHERS=>'0');
ELSEIFQ<11THENQ:=Q+1;ELSEQ:=(OTHERS=>'0');ENDIF;ENDIF; ENDIF; ENDIF;ENDPROCESS;COM:PROCESS(Q) IFQ="1011"THENCOUT<='1'; ELSECOUT<='0'; ENDIF;ENDPROCESS;DOUT<=Q;ENDbehav;習(xí)題準(zhǔn)備:設(shè)計含有異步清零和計數(shù)使能的16位二進制加法可控計數(shù)器。LIBRARYieee;USEieee.std_logic_1164.all;USEieee.std_logic_unsigned.all;USEieee.std_logic_arith.all;ENTITYex3_4_aISport(clk:instd_logic;clr,en:instd_logic;cnt:outstd_logic_vector(15downto0));END;ARCHITECTUREbhvOFex3_4_aIS signalcnt_tmp:std_logic_vector(15downto0); BEGIN process(clk,clr)begin
ifclr='1'thencnt_tmp<=(others=>'0');
elsif(rising_edge(clk))thenifen='1'thencnt_tmp<=cnt_tmp+1;endif;
endif;endprocess;cnt<=cnt_tmp;END;習(xí)題3-5設(shè)計含有異步清零和計數(shù)使能的16位二進制加減法可控計數(shù)器。LIB
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 堅果種植土壤肥力提升考核試卷
- 窄軌機車車輛制造中的風(fēng)險管理考核試卷
- 河南省平頂山市寶豐縣名校聯(lián)盟2024-2025學(xué)年七年級9月月考生物學(xué)試題(原卷版)
- 蘇教版五年級上冊勞技教案深入淺出全解析
- 溶液的酸堿性蘇教版解析與指南
- 掌握矩形判定輕松應(yīng)對幾何考試
- 掌握北師大版高二英語短語技巧分享
- 外研版九年級英語上冊重點詞匯盤點
- 五年級語文句型轉(zhuǎn)換技巧解析
- 學(xué)習(xí)三角形的切線與割線解析技巧
- 中國大眾音樂協(xié)會薩克斯學(xué)會章程
- 注塑部績效考核表
- 熱力管道固定支架軸向推力計算表
- 泵站工程施工質(zhì)量管理體系與措施
- 收到基-空干基-干基(圖解)
- 三一重工服務(wù)營銷體系建構(gòu)
- 拉深件坯料尺寸計算
- 諧波齒輪減速器的設(shè)計與建模
- 大中型泵站工程管理崗位設(shè)置及定員標(biāo)準(zhǔn)
- 參加全科醫(yī)學(xué)學(xué)習(xí)的心得體會(多篇)
- sfp光模塊接口類型及辨認辦法
評論
0/150
提交評論