譯碼器的設(shè)計(jì)_第1頁
譯碼器的設(shè)計(jì)_第2頁
譯碼器的設(shè)計(jì)_第3頁
譯碼器的設(shè)計(jì)_第4頁
譯碼器的設(shè)計(jì)_第5頁
免費(fèi)預(yù)覽已結(jié)束,剩余1頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

word文檔可自由復(fù)制編輯譯碼器的設(shè)計(jì)architecturedec_behaveofe1isSignalsel:std_logic_vector(0to3);beginsel(0)<=en;sel(1)<=a(0);sel(2)<=a(1);sel(3)<=a(2);withselselecty<="00000001"when"1000","00000010"when"1001","00000100"when"1010","00001000"when"1011","00010000"when"1100","00100000"when"1101","01000000"when"1110","10000000"when"1111","00000000"whenothers;enddec_behave;編碼器的設(shè)計(jì)libraryIEEE;entityencoder83isport(ind:instd_logic_vector(7downto0);outd:outstd_logic_vector(2downto0));end;architecturebehaveofencoder83isbeginprocess(ind)beginifind(7)=‘1'thenoutd<="111";elsifind(6)=‘1'thenoutd<="110";elsifind(5)=‘1'thenoutd<="101";elsifind(4)=‘1'thenoutd<="100";elsifind(3)=‘1'thenoutd<="011";elsifind(2)=‘1'thenoutd<="010";elsifind(1)=‘1'thenoutd<="001";elsifind(0)=‘1'thenoutd<="000";elseoutd<="000";endif;endprocess;endbehave;數(shù)據(jù)選擇器的設(shè)計(jì)LIBRARYIEEE;……;ENTITYE3ISPORT(A,B,C,D:INSTD_LOGIC_VECTOR(3DOWNTO0);S:INSTD_LOGIC_VECTOR(0TO1);Z:OUTSTD_LOGIC_VECTOR(3DOWNTO0));END;ARCHITECTURECONC_BEHAVEOFE3ISBEGINZ<=AWHENS="00"ELSEBWHENS="01"ELSECWHENS="10"ELSEDWHENS="11"ELSE"0000";ENDCONC_BEHAVE;比較器:設(shè)計(jì)八位比較器,相等時(shí)輸出為1,否則輸出為0libraryieee;entitycompareisport(a,b:instd_logic_vector(7downto0); y:outstd_logic);endcompare;architecturebehaveofcompareisbeginprocesss(a,b)Beginif(a=b)theny<='1';elsey<='0';endif;endprocess;endbehave;求補(bǔ)器:求補(bǔ)器的輸入信號(hào)為a(7..0),輸出信號(hào)為b(7..0),設(shè)a(7)和b(7)為符號(hào)位。libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entitycomplementisport(a:instd_logic_vector(7downto0);b:outstd_logic_vector(7downto0));endcomplement;architecturebehaveofcomplementisbeginprocess(a)beginif(a(7)='0')thenb<=a; elseb<='1'&(nota(6downto0)+'1');endif;endprocess;endbehave;單向總線緩沖器的設(shè)計(jì)LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYe7ISport(enable:INSTD_LOGIC;datain:INSTD_LOGIC_VECTOR(7DOWNTO0);dataout:OUTSTD_LOGIC_VECTOR(7DOWNTO0));END;ARCHITECTUREbhvOFe7ISBEGINPROCESS(enable,datain)BEGINIFenable='1'THENdataout<=datain;ELSEdataout<="ZZZZZZZZ";ENDIF;ENDPROCESS;ENDbhv;雙向總線緩沖器的設(shè)計(jì)libraryieee;……ENTITYe8ISport(en,dr:instd_logic;a,b:inoutstd_logic_vector(7downto0));END;ARCHITECTUREbhvOFe8ISsignalaout,bout:std_logic_vector(7downto0);beginprocess(a,en,dr)BEGINif((en='0')and(dr='1'))thenbout<=a;elsebout<="ZZZZZZZZ";endif;b<=bout;ENDprocess;process(b,en,dr)BEGINif((en='0')and(dr='0'))thenaout<=b;elseaout<="ZZZZZZZZ";endif;a<=aout;ENDprocess;ENDbhv;同步復(fù)位信號(hào)的VHDL描述:process(復(fù)位信號(hào)名,時(shí)鐘信號(hào)名)begin if(時(shí)鐘信號(hào)變化條件)then if(復(fù)位信號(hào)變化條件)then 狀態(tài)復(fù)位語句; else 順序語句; endif; endif;endprocess;異步復(fù)位信號(hào)的VHDL描述:process(復(fù)位信號(hào)名,時(shí)鐘信號(hào)名)begin if(復(fù)位信號(hào)變化條件)then 狀態(tài)復(fù)位語句; elsif(時(shí)鐘信號(hào)變化條件)then 順序語句; endif;endprocess;8D鎖存器使能信號(hào)en=1時(shí),數(shù)據(jù)鎖存,否則數(shù)據(jù)保持。libraryieee;……;entityd_latchisport(en:instd_logic;d:instd_logic_vector(7downto0);q:outstd_logic_vector(7downto0));endd_latch;architecturebehaveofd_latchisbeginprocess(en,d)begin ifen='1'thenq<=d; endif;endprocess;endbehave;設(shè)計(jì)四位D觸發(fā)器,具有異步清零CLR和置位PRN、同步使能EN控制功能。LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYsh1isPORT(CLK,CLR,PRN,EN:INSTD_LOGIC;D:INSTD_LOGIC_VECTOR(3DOWNTO0);Q:OUTSTD_LOGIC_VECTOR(3DOWNTO0));END;ARCHITECTUREaOFsh1ISBEGINPROCESS(CLR,PRN,CLK,EN)BEGINIFCLR='1'THENQ<=(OTHERS=>'0');ELSIFPRN='1'THENQ<=(OTHERS=>'1');ELSIFRISING_EDGE(CLK)THENIFEN='1'THEN Q<=D;ENDIF;ENDIF;ENDPROCESS;ENDa;設(shè)計(jì)4bit的移位寄存器,具有左移一位或右移一位,并行輸入和同步復(fù)位的功能。Library……;entityshifterisport(data:instd_logic_vector(3downto0);left_da,right_da,reset,clk:instd_logic;mode:instd_logic_vector(1downto0);qout:bufferstd_logic_vector(3downto0));endshifter;architecturebehaveofshifterisbeginprocessbegin waituntilrising_edge(clk); if(reset='1')then qout<="0000"; else casemodeiswhen“01”=>qout<=right_da&qout(3downto1);when"10"=>qout<=qout(2downto0)&left_da;when"11"=>qout<=data;whenothers=>null;endcase;endif;endprocess;endbehave;60進(jìn)制計(jì)數(shù)器libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entitycout60_visport(clrn,ldn,en,clk:instd_logic;da :instd_logic_vector(3downto0);db :instd_logic_vector(2downto0);qa:outstd_logic_vector(3downto0);qb:outstd_logic_vector(2downto0);rco:outstd_logic);endcout60_v;architectureaofcout60_visbeginprocess(clk)variabletmpa:std_logic_vector(3downto0);variabletmpb:std_logic_vector(2downto0);begin ifclrn='0'thentmpb:="000";tmpa:="0000";elseif(clk'eventandclk='1')thenifldn='0'thentmpa:=da;tmpb:=db;elsifen='1'theniftmpa="1001"then tmpa:="0000";iftmpb="101"thentmpb:="000";elsetmpb:=tmpb+1;endif;elsetmpa:=tmpa+1;endif;endif;endif;endif;qa<=tmpa;qb<=tmpb;rco<=tmpb(0)andtmpb(2)andtmpa(0)andtmpa(3)anden;endprocess;enda;用D觸發(fā)器構(gòu)成四位移位寄存器。entityshiftisport(sin,clk:inbit;sout:outbit);endshift;architecturenetlist1ofshiftiscomponentdff--元件說明 port(d,clk:inbit;q:outbit);endcomponent;signalz:bit_vector(0to4);beginz(0)〈=sin;gf:foriin0to3generateu1:dffportmap(z(i),clk,z(i+1));endgenerate;sout〈=z(4);endnetlist1;EDA試卷答案一、單項(xiàng)選擇題1、2.基于EDA軟件的FPGA/CPLD設(shè)計(jì)流程為:原理圖/HDL文本輸入→__A__→綜合→適配→____B____→編程下載→硬件測試。A.功能仿真 B.時(shí)序仿真C.邏輯綜合 D.配置3.IP核在EDA技術(shù)和開發(fā)中具有十分重要的地位;提供用VHDL等硬件描述語言描述的功能塊,但不涉及實(shí)現(xiàn)該功能塊的具體電路的IP核為__A___。A.軟IP B.固IPC.硬IP D.全對(duì)4.綜合是EDA設(shè)計(jì)流程的關(guān)鍵步驟,在下面對(duì)綜合的描述中,_____D____是錯(cuò)誤的。A.綜合就是把抽象設(shè)計(jì)層次中的一種表示轉(zhuǎn)化成另一種表示的過程。B.綜合就是將電路的高級(jí)語言轉(zhuǎn)化成低級(jí)的,可與FPGA/CPLD的基本結(jié)構(gòu)相映射的網(wǎng)表文件。C.為實(shí)現(xiàn)系統(tǒng)的速度、面積、性能的要求,需要對(duì)綜合加以約束,稱為綜合約束。D.綜合可理解為,將軟件描述與給定的硬件結(jié)構(gòu)用電路網(wǎng)表文件表示的映射過程,并且這種映射關(guān)系是唯一的(即綜合結(jié)果是唯一的)。5.大規(guī)??删幊唐骷饕蠪PGA、CPLD兩類,其中CPLD通過___A__實(shí)現(xiàn)其邏輯功能。A.可編程乘積項(xiàng)邏輯 B.查找表(LUT)C.輸入緩沖 D.輸出緩沖6.VHDL語言是一種結(jié)構(gòu)化設(shè)計(jì)語言;一個(gè)設(shè)計(jì)實(shí)體(電路模塊)包括實(shí)體與結(jié)構(gòu)體兩部分,結(jié)構(gòu)體描述__B___。A.器件外部特性 B.器件的內(nèi)部功能C.器件外部特性與內(nèi)部功能 D.器件的綜合約束7.電子系統(tǒng)設(shè)計(jì)優(yōu)化,主要考慮提高資源利用率減少功耗(即面積優(yōu)化),以及提高運(yùn)行速度(即速度優(yōu)化);下列方法中___A___不屬于面積優(yōu)化。A.流水線設(shè)計(jì) B.資源共享C.邏輯優(yōu)化 D.串行化8.進(jìn)程中的信號(hào)賦值語句,其信號(hào)更新是___B____。A.立即完成 B.在進(jìn)程的最后完成C.按順序完成 D.都不對(duì)9.不完整的IF語句,其綜合結(jié)果可實(shí)現(xiàn)__A__。A.時(shí)序邏輯電路B.組合邏輯電路C.雙向電路 D.三態(tài)控制電路10.狀態(tài)機(jī)編碼方式中,其中__A__占用觸發(fā)器較多,但其簡單的編碼方式可減少狀態(tài)譯碼組合邏輯資源,且易于控制非法狀態(tài)。A.一位熱碼編碼 B.順序編碼C.狀態(tài)位直接輸出型編碼 D.格雷碼編碼二、VHDL程序填空1.下面程序是1位十進(jìn)制計(jì)數(shù)器的VHDL描述,試補(bǔ)充完整。LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYCNT10ISPORT(CLK:INSTD_LOGIC;Q:OUTSTD_LOGIC_VECTOR(3DOWNTO0));ENDCNT10;ARCHITECTUREbhvOFCNT10ISSIGNALQ1:STD_LOGIC_VECTOR(3DOWNTO0);BEGIN PROCESS(CLK)BEGINIFCLK'EVENTANDCLK='1'THEN --邊沿檢測IFQ1>10THEN Q1<=(OTHERS=>'0'); --置零 ELSE Q1<=Q1+1; --加1 ENDIF; ENDIF; ENDPROCESS; Q<=Q1;ENDbhv;2.下面是一個(gè)多路選擇器的VHDL描述,試補(bǔ)充完整。LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYbmuxIS PORT( sel:INSTD_LOGIC; A,B:INSTD_LOGIC_VECTOR(7DOWNTO0); Y :OUTSTD_LOGIC_VECTOR(7DOWNTO0));ENDbmux;ARCHITECTUREbhvOFbmuxISBEGIN y<=Awhensel='1'ELSEB;ENDbhv;四、閱讀下列VHDL程序,畫出原理圖(RTL級(jí))LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYHADIS PORT( a:INSTD_LOGIC; b:INSTD_LOGIC; c:OUTSTD_LOGIC; d:OUTSTD_LOGIC );ENDENTITYHAD;ARCHITECTUREfh1OFHADISBEGIN c<=NOT(aNANDb); d<=(aORb)AND(aNANDb);ENDARCHITECTUREfh1;五、請(qǐng)按題中要求寫出相應(yīng)VHDL程序帶計(jì)數(shù)使能的異步復(fù)位計(jì)數(shù)器輸入端口: clk 時(shí)鐘信號(hào)rst 異步復(fù)位信號(hào)en 計(jì)數(shù)使能load 同步裝載data (裝載)數(shù)據(jù)輸入,位寬為10輸出端口: q 計(jì)數(shù)輸出,位寬為10LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYCNT1024IS PORT( CLK,RST,EN,LOAD :INSTD_LOGIC; DATA:INSTD_LOGIC_VECTOR(9DOWNTO0); Q:OUTSTD_LOGIC_VECTOR(9DOWNTO0));ENDCNT1024;ARCHITECTUREONEOFCNT1024ISBEGINPROCESS(CLK,RST,EN,LOAD,DATA)VARIABLEQ1:STD_LOGIC_VECTOR(9DOWNTO0); BEGIN IFRST='1'

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論