




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第3章VHDL基礎3-1:畫出與下例實體描述對應的原理圖符號元件:ENTITYbuf3s實體1:IS三態緩--沖器PORT(input:IN輸STD_LOGIC入端;--enable:INSTD_LOGIC使能端;--output:OUTSTD_LOGIC輸出端);--ENDbuf3x;ENTITYmux21實體2:IS2選1--多路選擇器PORT(in0,in1,sel:INSTD_LOGIC;output:OUTSTD_LOGIC);3-1.答案3-2.圖3-30所示的是4選1多路選擇器,試分別用IF_THEN語句和CASE語句的表達方式寫出此電路的VHDL程序。s0的數據類型為STD_LOGIC_VECTOR;當s1='1',s0='0'和s1='1',s0='1'分別執行y<=a、y<=c、y<=d。選擇控制的信號s1和s1='0',s0='0';s1='0',s0='1';、y<=b3-2.答案LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYMUX41ISPORT(s:INSTD_LOGIC_VECTOR(1輸入選擇信號DOWNTO0);--a,b,c,d:INSTD_LOGIC;輸入信號--y:OUTSTD_LOGIC);--輸出端ENDENTITY;ARCHITECTUREARTOFMUX41ISBEGINPROCESS(s)BEGINIF(S="00")THENy<=a;ELSIF(S="01")THENy<=b;ELSIF(S="10")THENy<=c;ELSIF(S="11")THENy<=d;ELSEy<=NULL;ENDIF;EDNPROCESS;ENDART;LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYMUX41ISPORT(s:INSTD_LOGIC_VECTOR(1a,b,c,d:INSTD_LOGIC;輸入信號--y:OUTSTD_LOGIC);--輸出端ENDMUX41;輸入選DOWNTO擇信號0);--ARCHITECTUREARTOFMUX41ISBEGINPROCESS(s)BEGINCASEsISWHEN“00”=>y<=a;WHEN“01”=>y<=b;WHEN“10”=>y<=c;WHEN“11”=>y<=d;WHENOTHERS=>NULL;ENDCASE;ENDPROCESS;ENDART;3-3.圖3-31所示的是雙2選1多路選擇器構成的電路MUXK,對于其中MUX21A,當s='0'和'1'時,分別有y<='a'和y<='b'。試在一個結構體中用兩個進程來表達此電路,每個進程中用CASE語句描述一個2選1多路選擇器MUX21A。3-3.答案LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYMUX221ISPORT(a1,a2,a3:INSTD_LOGIC_VECTOR(1輸入信號DOWNTO0);--s0,s1:INSTD_LOGIC;outy:OUTSTD_LOGIC);--輸出端ENDENTITY;ARCHITECTUREONEOFMUX221ISSIGNALtmp:STD_LOGIC;BEGINPR01:PROCESS(s0)BEGINIFs0=”0”THENtmp<=a2;ELSEtmp<=a3;ENDIF;ENDPROCESS;PR02:PROCESS(s1)BEGINIFs1=”0”THENouty<=a1;ELSEouty<=tmp;ENDIF;
ENDPROCESS;ENDARCHITECTUREONE;ENDCASE;3-5.下圖是一個含有上升沿觸發的D觸發器的時序電路,試寫出此電路的VHDL設計文件。LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYMULTIISPORT(CL:INSTD_LOGIC;輸入選擇信--號CLK0:INSTD_LOGIC;輸入信--號OUT1:OUTSTD_LOGIC);--輸出端ENDENTITY;ARCHITECTUREONEOFMULTIISSIGNALQ:STD_LOGIC;BEGINPR01:PROCESS(CLK0)BEGINIFCLK‘EVENTANDCLK=’1’THENQ<=NOT(CLORQ);ELSEENDIF;ENDPROCESS;PR02:PROCESS(CLK0)BEGINOUT1<=Q;ENDPROCESS;ENDARCHITECTUREONE;ENDPROCESS;3-4.給出1位全減器的VHDL描述。要求:(1)首先設計1位半減器,然后用例化語句將它們連接起來,圖3-32中h_suber是半減器,diff是輸出差,s_out是借位輸出,sub_in是借位輸入。(2)以1位全減器為基本硬件,構成串行借位的8位減法器,要求用例化語句來完成此項設計(減法運算是x–y-sun_in=diffr)3-4.答案底層文件1:or2a.VHD實現或門操作LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYor2aISPORT(a,b:INSTD_LOGIC;c:OUTSTD_LOGIC);ENDENTITYor2a;ARCHITECTUREoneOFor2aISBEGINc<=aORb;
ENDARCHITECTUREone;2:h_subber.VHD實現LIBRARYIEEE;底層文件一位半減器USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYh_subberISPORT(x,y:INSTD_LOGIC;diff,s_out::OUTSTD_LOGIC);ENDENTITYh_subber;ARCHITECTUREONEOFh_subberISSIGNALxyz:STD_LOGIC_VECTOR(1DOWNTO0);BEGINxyz<=x&y;PROCESS(xyz)BEGINCASExyzISWHEN"00"=>diff<='0';s_out<='0';WHEN"01"=>diff<='1';s_out<='1';WHEN"10"=>diff<='1';s_out<='0';WHEN"11"=>diff<='0';s_out<='0';WHENOTHERS=>NULL;ENDCASE;ENDPROCESS;ENDARCHITECTUREONE;頂層文件:f_subber.VHD實現一位全減器LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYf_subberISPORT(x,y,sub_in:INSTD_LOGIC;diffr,sub_out:OUTSTD_LOGIC);ENDENTITYf_subber;ARCHITECTUREONEOFf_subberISCOMPONENTh_subberPORT(x,y:INSTD_LOGIC;diff,S_out:OUTSTD_LOGIC);ENDCOMPONENT;COMPONENTor2aPORT(a,b:INSTD_LOGIC;c:OUTSTD_LOGIC);ENDCOMPONENT;SIGNALd,e,f:STD_LOGIC;BEGINu1:h_subberPORTMAP(x=>x,y=>y,diff=>d,s_o
u2:h_subberPORTMAP(x=>d,y=>sub_in,diff=>u3:or2aPORTMAP(a=>f,b=>e,c=>sub_out);ENDARCHITECTUREONE;ENDARCHITECTUREART;3-6.根據下圖,寫出頂層文件MX3256.VHD的VHDL設計文件。MAX3256頂層文件LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYMAX3256ISPORT(INA,INB,INCK:INSTD_LOGIC;INC:INSTD_LOGIC;E,OUT:OUTSTD_LOGIC);ENDENTITYMAX3256;ARCHITECTUREONEOFMAX3256ISCOMPONENT調用LK35LK3聲5明--語句PORT(A1,A2:INSTD_LOGIC;CLK:INSTD_LOGIC;Q1,Q2:OUTSTD_LOGIC);ENDCOMPONENT;COMPONENT調用DD觸發--器聲明語句PORT(D,C:INSTD_LOGIC;CLK:INSTD_LOGIC;Q:OUTSTD_LOGIC);ENDCOMPONENT;COMPONENT調用MUX21--二選一選擇器聲明語句PORT(B,A:INSTD_LOGIC;S:INSTD_LOGIC;C:OUTSTD_LOGIC);ENDCOMPONENT;SIGNALAA,BB,CC,DD:STD_LOGIC;BEGINu1:LK35PORTMAP(A1=>INA,A2=>INB,CLK=INCK,u2:DPORTMAP(D=>BB;CLK=>INCK,C=>INC,Q=>CCu3:LK35PORTMAP(A1=>BB,A2=>CC,CLK=INCK,;u4:MUX21PORTMAP(B=>AA,A=>DD,S=>BB,C=>E)ENDARCHITECTUREONE;3-7設計含有異步清零和計數使能的16位二進制加減可控計數器。LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYCNT16ISPORT(CLK,RST,EN:INSTD_LOGIC;CHOOSE:INBIT;
SETDATA:BUFFERINTEGERRANCE65535DOWNTO0;COUT:BUFFERINTEGERRANCE65535DOWNTO0);ENDCNT16;ARCHITECTUREONEOFCNT16ISBEGINPROCESS(CLK,RST,SDATA)VARIABLEQI:STD_LOGIC_VECTOR(65535DOWNTO0);BEGINIFRST='1'THEN計--數器異步復位QI:=(OTHERS=>'0');ELSIFSET=’1’THEN--計數器一步置位QI:=SETDATA;ELSIFCLK'EVENTANDCLK='1'THEN檢--測時鐘上升沿IFEN=’1’THEN–檢測是否允許計數IFCHOOSE=’1’THEN--選擇加法計數QI:=QI+1;計數--器加一ELSEQI=QI-1;計數--器加一ENDIF;ENDIF;ENDIF;COUT<=QI;--將計數值向端口輸出ENDPROCESS;ENDONE;3-8什么是固有延時?什么是慣性延時?答:固有延時(InertialDelay)也稱為慣性延時,固有延時的主要物理機制是分布電容效應3-9哪些情況下需要用到程序包STD_LOGIC_UNSIGNED?試舉一例。VHDL描述中若有不同類型數據相加、相減時需要用到程序包STD_LOGIC_UNSIGNED中的“+”、“-”算符重載函數。如:SIGNALQ1:STD_LOGIC_VECTOR(3DOWNTO;0)BEGINPROCESS(CLK)BEGINIFCLK’EVENTANDCLK=‘1’THENQ1<=Q1+1;ENDIF;3-10:說明信號和變量的功能特點,以及應用上的異同點。習題6-4(解答):變量的特性:a.變量不能將信息帶出它的使用范圍。b.變量的賦值是立即實現,不存在延時。c.在程進中可以對一個變量多次賦值,但后賦的值將改變先賦的值。信號的特性:a.信號賦值語句,可以出現在程進中,也可以出現在結構體的并行語句中。
b.進程中可以對同一個信號多次賦值,但只有最后一次賦值才被執行。c.在進程外的并行語句中對同一個信號不能有多次賦值。信號賦值要經歷一個延時,這一點和器件傳輸延時吻合。d.進程中的信號與變量賦值特性的異同分析:①從硬件電路系統來看,變量和信號都相當于邏輯電路中的連線和連線上的信號值。②從行為仿真和VHDL語句功能上看,信號和變量具有明顯區別:信a.號可以變b.量只能在進c.程中的變量賦值設置傳輸延遲量,而變量不能。定義它的進程中有效,而信號在進程內外都能傳遞信息。是語句執行時立即完成,而進程中的信號賦值則并不是語句執行時立即賦值,而是要等到進程結束時才賦值。一般完成一次進程需要δ時間,因此說信號的賦值要延遲δ時間才能完成。3-11同步復位和異步復位。同步復位是指與時鐘同步,當復位信號有效之后,出現時鐘有效邊沿時才對電路模塊進行復位操作;而異步復位與時鐘信號無關,只要復位信號有效,無論這時時鐘信號是什么樣,都對電路模塊進行復位操作。例如同步復位D觸發器:IFclock'eventANDclock='1'THENIFreset_n='0'THENq<=(OTHERS=>'0');ELSEq<=d;ENDIF;ENDIF;異步復位D觸發器:IFreset_n='0'THENq<=(OTHERS=>'0');ELSIFclock'eventANDclock='1'THENq<=d;ENDIF;10:EDA中組合電路,時序電路的特點、區別構成:組合邏輯電路原來的狀態無。關而時序邏輯電路在邏輯功能是任意時刻的輸上的特點出僅僅取決于該時刻的輸在邏輯功能是任意時刻的輸出不僅取決于當時的,而且還取決于電路原來的狀態,或者說,還與以前的輸入有。關組合邏輯電路可以有若個輸入變量和若干個輸出變量,其每個輸是其輸入的邏輯函數,其每個時刻的輸出變量的狀態僅與當時的輸入變量的狀態有,關與本輸出的原來狀態及輸入的原狀態無,關也就是輸入狀態的變化立即反映在輸出狀態的變化。時序邏輯電路任意時刻的輸出不僅取決于該時刻的輸入,而且還和電路原來的狀態有。關也就是說,組合邏輯電路沒有記憶功能,序電路具有記憶功能。11,函數定義方式:函數的定義由函數首和函數體兩部分組成,在進程數首,而在程序包中必須定義函數首。入,與電路上的特點輸入信號出變量而時或結構體中不必定義函17,四位加法器:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;useieee.std_logic_arith.all;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYadd4ISPORT(C4:INSTD_LOGIC;--前一位的進位CA4:INSTD_LOGIC_VECTOR(3DOWNTO0);--被加數A被加數B相加的和S相加產生的進位CB4:INSTD_LOGIC_VECTOR(3DOWNTO0);--S4:OUTSTD_LOGIC_VECTOR(3DOWNTO0);--CO4:OUTSTD_LOGIC);--ENDENTITYadd4;ARCHITECTUREARTOFadd4ISSIGNALS5:STD_LOGIC_VECTOR(4DOWNTO0);SIGNALA5,B5:STD_LOGIC_VECTOR(4DOWNTO0);BEGINA5<='0'&A4;--擴展被加數A高位為0B5<='0'&B4;--擴展被加數B高位為0S5<=A5+B5+C4;--二數相加,并加上前一位的進位S4<=S5(3DOWNTO0);--相加和的結果CO4<=S5(4);--相加后的進位ENDARCHITECTUREART;六位加法器。6位加法器可以對兩個6位二進制數進行加法運算,并且產生進位。其真值表如下表所示。輸入輸出A[5..0]AB[5..0]BS[5..0]A+BCout進位6位加法器應具備的腳位:輸入端:A[5..0]、B[5..0];輸出端:S、Cout。2、VHDL源程序LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYhalf_addISPORT(A,B:INSTD_LOGIC;S,C:OUTSTD_LOGIC);ENDhalf_add;ARCHITECTUREaOFhalf_addISSIGNALtemp:STD_LOGIC_VECTOR(1DOWNTO0);BEGINtemp<=('0'&A)+B;S<=temp(0);C<=temp(1);ENDa;LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYfull_addISPORT(A,B,Ci:INSTD_LOGIC;S,Co:OUTSTD_LOGIC);ENDfull_add;ARCHITECTUREaOFfull_addISSIGNALtemp:STD_LOGIC_VECTOR(1DOWNTO0);BEGINtemp<=('0'&A)+B+Ci;S<=temp(0);Co<=temp(1);ENDa;LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYadd6IS--頂層文件名ADD6PORT(A,B:INSTD_LOGIC_VECTOR(5DOWNTO0);S:OUTSTD_LOGIC_VECTOR(5DOWNTO0);Cout:OUTSTD_LOGIC);ENDadd6;ARCHITECTUREaOFadd6ISCOMPONENThalf_addPORT(A,B:INSTD_LOGIC;S,Co:OUTSTD_LOGIC);ENDCOMPONENT;COMPONENTfull_addPORT(A,B,Ci:INSTD_LOGIC;S,Cout:OUTSTD_LOGIC);ENDCOMPONENT;SignalN1,N2,N3,N4,N5:STD_LOGIC;BEGINh0:half_addPORTMAP(a=>A(0),b=>B(0),s=>S(0),c=>N1)
f1:full_addPORTMAP(a=N1,b=>A(1),ci=>B(1),s=>S(1),cf2:full_addPORTMAP(a=>N2,b=>A(2),ci=>B(2),s=>S(2),f3:full_addPORTMAP(a=>N3,b=>A(3),ci=>B(3),s=>S(3),f4:full_addPORTMAP(a=>N4,b=>A(4),ci=>B(4),s=>S(4),f5:full_addPORTMAP(a=>N5,b=>A(5),ci=>B(5),s=>S(5),ENDa;17,3-8譯碼器libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entityTEisport(input:instd_logic_vector(2downto0);output:outstd_logic_vector(7downto0));endTE;architectureoneofTEisbeginoutput(0)<='1'wheninput="000"else'0';output(1)<='1'wheninput="001"else'0';output(2)<='1'wheninput="010"else'0';output(3)<='1'wheninput="011"else'0';output(4)<='1'wheninput="100"else'0';output(5)<='1'wheninput="101"else'0';output(6)<='1'wheninput="110"else'0';output(7)<='1'wheninput="111"else'0';endone;17,2選1多路選擇器module2sel1(y,s,a,b);inputa,b,s;outputy;regyassigny=s?a:b;END2SEL1;8選1:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYEIGHT_XUAN_1ISPORT(ST:INSTD_LOGIC;A:INSTD_LOGIC_VECTOR(2DOWNTO0);D:INSTD_LOGIC_VECTOR(7DOWNTO0);Q:OUTSTD_LOGIC);END;ARCHITECTUREHBVOFEIGHT_XUAN_1ISSIGNALQ1:STD_LOGIC;BEGINPROCESS(A)BEGINIFST='1'THENQ1<='0';ELSECASEAISWHEN"000"=>Q1<=D(0);WHEN"001"=>Q1<=D(1);WHEN"010"=>Q1<=D(2);WHEN"011"=>Q1<=D(3);WHEN"100"=>Q1<=D(4);WHEN"101"=>Q1<=D(5);WHEN"110"=>Q1<=D(6);WHEN"111"=>Q1<=D(7);WHENOTHERS=>NULL;ENDCASE;ENDIF;ENDPROCESS;Q<=Q1;ENDHBV;實驗,優先編碼器libraryieee;useieee.std_logic_1164.all;entityencodeisport(d:instd_logic_vector(7downto0);ein:instd_logic;a0n,a1n,a2n,gsn,eon:outstd_logic);endencode;architecturebehavofencodeissignalq:std_logic_vector(2downto0);begina0n<=q(0);a1n<=q(1);a2n<=q(2);process(d)beginifein='1'thenq<="111";gsn<='1';eon<='1';elsifd(7)='0'thenq<="000";gsn<='0';eon<='1';elsifd(6)='0'thenq<="001";gsn<='0';eon<='1';elsifd(5)='0'thenq<="010";gsn<='0';eon<='1';elsifd(4)='0'thenq<="011";gsn<='0';eon<='1';elsifd(3)='0'thenq<="100";gsn<='0';eon<='1';elsifd(2)='0'thenq<="101";gsn<='0';eon<='1';elsifd(1)='0'thenq<="110";gsn<='0';eon<='1';elsifd(0)='0'thenq<="111";gsn<='0';eon<='1';elsifd="11111111"thenq<="111";gsn<='1';eon<='0';endif;endprocess;endbehav;1、半減器程序多位減法器;libraryieee;useieee.std_logic_1164.all;entityh_suberisport(x,y:instd_logic;diff,s_out:outstd_logic);endentityh_suber;architecturebhvofh_suberisbeginprocess(x,y)begindiff<=xxory;s_out<=(notx)andy;endprocess;endarchitecturebhv;2、一位全減器程序libraryieee;useieee.std_logic_1164.all;entitysuberis
port(x,y,sub_in:instd_logic;diffr,sub_out:outstd_logic);endentitysuber;architecturebhvofsuberiscomponenth_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;endarchitecturebhv;3、8位全減器程序libraryieee;useieee.std_logic_1164.all;entitysub8isport(a,b:instd_logic_vector(7downto0);sin:instd_logic;sout:outstd_logic;c:outstd_logic_vector(7downto0));endentitysub8;architecturebhvofsub8iscomponentsuberport(x,y,sub_in:instd_logic;diffr,sub_out:outstd_logic);endcomponent;signalt:std_logic_vector(6downto0);beginu0:suberportmap(x=>a(0),y=>b(0),sub_in=>sin,diffr=>c(0),sub_out=>t(0));u1:suberportmap(x=>a(1),y=>b(1),sub_in=>t(0),diffr=>c(1),sub_out=>t(1));u2:suberportmap(x=>a(2),y=>b(2),sub_in=>t(1),diffr=>c(2),sub_out=>t(2));u3:suberportmap(x=>a(3),y=>b(3),sub_in=>t(2),diffr=>c(3),sub_out=>t(3));u4:suberportmap(x=>a(4),y=>b(4),sub_in=>t(3),diffr=>c(4),sub_out=>t(4));u5:suberportmap(x=>a(5),y=>b(5),sub_in=>t(4),diffr=>c(5),sub_out=>t(5));u6:suberportmap(x=>a(6),y=>b(6),sub_in=>t(5),diffr=>c(6),sub_out=>t(6));u7:suberportmap(x=>a(7),y=>b(7),sub_in=>t(6),diffr=>c(7),sub_out=>sout);endarchitecturebhv;下面程序是1位十進制計數器的VHDL描述,試補充完整。
LIBRARYIEEE;STD_LOGIC_1164USEIEEE..ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYCNT10ISPORT(CLK:INSTD_LOGIC;Q:OUTSTD_LOGIC_VECTOR(3DOWNTO0)ENDCNT10;CNT10ARCHITECTUREbhvOFISSIGNALQ1:STD_LOGIC_VECTOR(3DOWNTO0);BEGINPROCESS(CLK)BEGINCLK'EVENTANDCLK='1'IFTHEN--邊沿檢測IFQ1>10THENQ1<=(OTHERS=>'0');--置零ELSEQ1<=Q1+1;--加1ENDIF;ENDIF;ENDPROCESS;Q<=Q1;ENDbhv;2.下面是一個多路選擇器的VHDL描述,試補充完整。LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYbmuxISINPORT(sel:STD_LOGIC;A,B:INSTD_LOGIC_VECTOR(7DOWNTO0);OUT7Y:STD_LOGIC_VECTOR(DOWNTO0));ENDbmux;ARCHITECTUREbhvOFbmuxISBEGINELSEy<=Awhensel='1'B;ENDbhv;三、VHDL程序改錯仔細閱讀下列程序,回答問題LIBRARYIEEE;--1USEIEEE.STD_LOGIC_1164.ALL;--2ENTITYLED7SEGIS--3PORT(A:INSTD_LOGIC_VECTOR(3DOWNTO0);--4CLK:INSTD_LOGIC;--5LED7S:OUTSTD_LOGIC_VECTOR(6DOWNTO0));--6ENDLED7SEG;--7
ARCHITECTUREoneOFLED7SEGIS--8SIGNALTMP:STD_LOGIC;--9BEGIN--10--11--12SYNC:PROCESS(CLK,A)BEGINIFCLK'EVENTANDCLK='1'THEN--13TMP<=A;ENDIF;--14--15--16ENDPROCESS;OUTLED:PROCESS(TMP)--17BEGIN--18--19CASETMPISWHEN"0000"=>LED7S<="0111111";--20WHEN"0001"=>LED7S<="0000110";--21WHEN"0010"=>LED7S<="1011011";--22WHEN"0011"=>LED7S<="1001111";--23WHEN"0100"=>LED7S<="1100110";--24WHEN"0101"=>LED7S<="1101101";--25WHEN"0110"=>LED7S<="1111101";--26WHEN"0111"=>LED7S<="0000111";--27WHEN"1000"=>LED7S<="1111111";--28WHEN"1001"=>LED7S<="1101111";--29ENDCASE;--30ENDPROCESS;ENDone;--31--321.在程序中存在兩處錯誤,試指出,并說明理由:第14行TMP附值錯誤第29與30行之間,缺少WHENOTHERS語句2.修改相應行的程序:錯誤1行號:9程序改為:TMP:STD_LOGIC_VECTOR(3DOWNTO0);錯誤2行號:29程序改為:該語句后添加WHENOTHERS=>LED7S<="0000000";四、閱讀下列VHDL程序,畫出原理圖(RTL級)LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYHADISPORT(a:INSTD_LOGIC;b:INSTD_LOGIC;c:OUTSTD_LOGIC;d:OUTSTD_LOGIC);ENDENTITYHAD;ARCHITECTUREfh1OFHADISBEGIN
c<=NOT(aNANDb);d<=(aORb)AND(aNANDb);ENDARCHITECTUREfh1;五、請按題中要求寫出相應VHDL程序
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 電子專業視頻采集卡考核試卷
- 葡萄酒教育與文化交流考核試卷
- 生物藥品的藥物發現與篩選技術優化考核試卷
- 稀土金屬壓延加工的數據分析與應用考核試卷
- 傳染病處置規范
- 旅行社與景區共建特色旅游項目合作協議
- 心理咨詢服務保密協議修訂
- 民辦教育機構委托管理及教學質量提升合作協議
- 影視拍攝場地使用與安全設施定期檢查維護協議
- 澳洲天然美妝連鎖店全球加盟合同
- 醫院實驗室生物安全管理手冊范本
- 蘇教版譯林小學英語人物Word可打印頭像
- 化驗員培訓-實驗室建設課件
- 工作票票樣(配電)模板
- DB11-381-2016既有居住建筑節能改造技術規程
- JJF 1934-2021 超聲波風向風速測量儀器校準規范
- AS1657-1992---固定平臺、走道、樓梯與梯子的設計、施工與安裝
- 地形圖的識別及應用與涉密地圖的保密管理(課堂PPT)
- 機電傳動控制期末考試試卷試題及答案
- 電大漢語言文學專業本科社會實踐調查報告
- 高級英語第一冊Unit2Hiroshima課后練習答案
評論
0/150
提交評論