




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、第三章3-5設(shè)計一個4選1多路選擇器,當(dāng)選擇輸入信號分別取“00”、“01”、“10”和“11”時,輸出信號分別與一路輸入信號相連。LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY MAX4_1 ISPORT(A,B,C,D,S1,S2 : IN STD_LOGIC; Y : OUT STD_LOGIC);END ENTITY MAX4_1;ARCHITECTURE HF1 OF MAX4_1 ISSIGNAL SS : STD_LOGIC_VECTOR (0 TO 1);BEGINSS Y Y Y Y NULL;END CASE;END PROC
2、ESS;END HF1;3-6設(shè)計一個7人表決電路,參加表決者7人,同意為1,不同意為0,同意者過半則表決通過,綠指示燈亮;表決不通過則紅指示燈亮。設(shè)計思路:根據(jù)7人表決電路設(shè)計要求,7人中至少有4個通過才可以表決通過,故可以在程序中設(shè)置一個變量TEMP,使其在表決電路中遇1則加1,遇0則加0(設(shè)計中1表示通過,0表示不通過)。當(dāng)TEMP=4時,表示表決通過,當(dāng)TEMPOUTPUTOUTPUT=1; END CASE ; END PROCESS; END BEHAVE;第四章4-6試寫出4選1多路選擇器VHDL描述。選擇控制信號為S1和S0,輸入信號為A,B,C,D,輸出信號為Y。LIBRAR
3、Y IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY MUX41A IS PORT (A,B,C,D,S0,S1:IN STD_LOGIC; -輸入信號 Y:OUT STD_LOGIC); -輸出信號END ENTITY MUX41A;ARCHITECTURE ONE OF MUX41A IS SIGNAL S:STD_LOGIC_VECTOR(1 DOWNTO 0); BEGIN S Y Y Y YNULL; -其它情況為空值 END CASE; -CASE語句結(jié)束 END PROCESS; -PROCESS進程語句結(jié)束END ARCHITECTURE ONE;
4、4-7使給出1位全減器的VHDL描述,要求:首先設(shè)計1位半減器,然后用例化語句將它們連接起來。設(shè)X為被減數(shù),Y為減數(shù),SUB_IN是借位輸入,DIFF是輸出差,SUB_OUT是借位輸出。(1.1):實現(xiàn)1位半減器H_SUBER(DIFF=X-Y;S_OUT=1,XY)LIBRARY IEEE; -半減器描述(1):布爾方程描述方法 USE IEEE.STD_LOGIC_1164.ALL; ENTITY H_SUBER IS PORT( X,Y: IN STD_LOGIC; DIFF,S_OUT: OUT STD_LOGIC); END ENTITY H_SUBER; ARCHITECTURE
5、HS1 OF H_SUBER IS BEGIN DIFF = X XOR (NOT Y); S_OUT XIN,Y=YIN, DIFF=A, S_OUT=B); U2:H_SUBER PORT MAP(X=A, Y=SUB_IN, DIFF=DIFF_OUT,S_OUT=C); SUB_OUT = C OR B;END ARCHITECTURE FS1;二進制全加器,元件聲明與元件例化(COMPONENT,PORT MAP)/或門LIBRARY IEEE; ;USE IEEE.STD_LOGIC_1164.ALL;ENTITY OR2A ISPORT(A,B : IN STD_LOGIC; C
6、 : OUT STD_LOGIC);END OR2A;ARCHITECTURE ART1 OF OR2A ISBEGIN C=A OR B;END ART1;/半加器;LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY H_ADDER IS PORT(A,B : IN STD_LOGIC; CO,SO: OUT STD_LOGIC);END H_ADDER;ARCHITECTURE ART2 OF H_ADDER ISBEGIN SO = A XOR B; CO E,B=CIN,CO=F,SO=SUM);U3:OR2A PORT MAP(D,F,CO
7、UT);END ART3;第五章5-1.試說明實體端口模式BUFFER和INOUT的不同之處?答: BUFFER端口:緩沖模式,具有讀功能的輸出模式,即信號輸出到實體外部,但同時也在內(nèi)部反饋使用,不允許作為雙向端口使用。而INOUT端口:雙向模式,即信號的流通是雙向的,既可以對此端口賦值,也可以通過此端口讀入數(shù)據(jù)。5-2.VHDL的數(shù)據(jù)對象有哪幾種?它們之間有什么不同?答:VHDL的數(shù)據(jù)對象有三種:信號、變量、常量。 它們之間的的區(qū)別如下:信號賦值至少有延時,而變量和常量沒有;信號除當(dāng)前值外,有許多相關(guān)信息,變量只有當(dāng)前值,常量的值在設(shè)計實體中始終不變;進程對信號敏感而對變量及常量不敏感;信號
8、可以是多個進程的全局信號,變量只在定義它們的順序域可見,而常量的使用范圍取決于它被定義的位置;信號是硬件連線的抽象描述信號賦值,賦值符號 = 而變量和常量的賦值符號 :=。5-3.說明下列各定義的意義: SIGNAL a , b , c : BIT : =0; CONSTANT TIME1 , TIME2 : TIME : 20ns ;VARIABLE x , y , z : STD_LOGIC :=x;答:定義3個位數(shù)據(jù)類型的信號A、B、C,它們?nèi)≈禐?; 定義2個時間數(shù)據(jù)類型的常量TIME1、TIME2,它們值為20NS; 定義3個標(biāo)準(zhǔn)邏輯位 STD_LOGIC數(shù)據(jù)類型的變量X、Y、Z,它
9、們的值是強未知的。5-4.什么是重載函數(shù)?重載運算符有何用處?如何調(diào)用重載運算符函數(shù)? 答:為了方便各種不同數(shù)據(jù)類型間的運算,VHDL允許用戶對原有的基本操作符重新定義,賦予新的含義和功能,從而建立一種新的操作符,這就是重載操作符,定義這種操作符的函數(shù)成為重載函數(shù)。重載運算符的作用是為了方便各種不同的數(shù)據(jù)類型間的運算。要調(diào)用重載運算符函數(shù),先要在程序包中進行函數(shù)體的定義,調(diào)用的格式如下 : X =函數(shù)名(參數(shù)1,參數(shù)2,) 參數(shù)個數(shù)和類型與所定義的函數(shù)要保持一致。5-5.數(shù)據(jù)類型BIT INTEGER BOOLEAN分別定義在哪個庫中?哪些庫和程序包總是可見的?答:數(shù)據(jù)類型BIT INTEGE
10、R BOOLEAN均定義在STD庫中。IEEE庫和程序包STD_LOGIC.1164 、STD_LOGIC_UNSIGNED、STD_LOGIC_SIGNED、STD_LOGIC_ARITH等總是可見的。5-6.函數(shù)和過程有什么區(qū)別?答:子程序有兩種類型,即過程(PROCEDURE)和函數(shù)(FUNCTION)。它們的區(qū)別在于:過程的調(diào)用可以通過其界面獲得多個返回值,而函數(shù)只能返回一個值;在函數(shù)入口中,所有參數(shù)都是輸入?yún)?shù),而過程有輸入?yún)?shù)、輸出參數(shù)和雙向參數(shù);過程一般被看作一種語句結(jié)構(gòu),而函數(shù)通常是表達式的一部分;過程可以單獨存在,而函數(shù)通常作為語句的一部分調(diào)用。5-7.若在進程中加入WAIT
11、語句,應(yīng)注意哪幾個方面的問題? 答:應(yīng)注意以下問題:已列出敏感信號的進程中不能使用任何形式的WAIT語句;一般情況下,只有WAIT UNTIL格式的等待語句可以被綜合器所接受,其余語句格式只能在VHDL仿真器中使用;在使用WAIT ON語句的進程中,敏感信號量應(yīng)寫在進程中的WAIT ON語句后面;在不使用WAIT ON語句的進程中,敏感信號量應(yīng)在開頭的關(guān)鍵詞PROCESS后面的敏感信號表中列出。5-8.哪些情況下需用到程序包STD_LOGIC_UNSIGNED?試舉一例。答:調(diào)用數(shù)據(jù)類型變換函數(shù)或重載運算符函數(shù)時;定義UNSIGNED類型的數(shù)據(jù)時。舉例如下: LIBRARY IEEE; USE
12、 IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; IF TEMP=11111111THEN TEMP:= 00000000; ELSE TEMP:=TEMP+16;END IF;5-9.為什么說一條并行賦值語句可以等效為一個進程?如果是這樣的話,怎樣實現(xiàn)敏感信號的檢測?答:因為信號賦值語句的共同點是賦值目標(biāo)必須都是信號,所有賦值語句與其它并行語句一樣,在結(jié)構(gòu)體內(nèi)的執(zhí)行是同時發(fā)生的,與它們的書寫順序沒有關(guān)系,所以每一信號賦值語句都相當(dāng)于一條縮寫的進程語句。由于這條語句的所有輸入信號都被隱性地列入此縮寫進程的敏感信號表中,故任何信
13、號的變化都將相關(guān)并行語句的賦值操作,這樣就實現(xiàn)了敏感信號的檢測。5-10.比較CASE語句和WITH_SELECT語句,敘述它們的異同點? 答:相同點:CASE語句中各子句的條件不能有重疊,必須包容所有的條件;WITH_SECLECT語句也不允許選擇值有重疊現(xiàn)象,也不允許選擇值涵蓋不全的情況。另外,兩者對子句各選擇值的測試都具有同步性,都依賴于敏感信號的變化。不同點:CASE語句只能在進程中使用,至少包含一個條件語句,可以有多個賦值目標(biāo);WITH_SECLECT語句根據(jù)滿足的條件,對信號進行賦值,其賦值目標(biāo)只有一個,且必須是信號。5-11.將以下程序段轉(zhuǎn)換為WHEN_ELSE語句: PROCE
14、SS (a , b ,c ,d) BEGIN IF a=0AND b=1THEN NEXT1 =1101; ELSEIF a=0THEN NEXT1 =d; ELSEIF b=1THEN NEXT1 =c; ELSE NEXT1 =1011; END IF; END PROCESS;原程序轉(zhuǎn)換如下: ARCHITECTURE one OF mux IS BEGIN PROCESS (a , b ,c ,d) BEGIN NEXT1 =1101WHEN a=0AND b=1ELSE d WHEN a=0ELSE c WHEN b=1ELSE 1011; END one; END PROCESS;
15、5-12使給出一位全減器的算法描述、數(shù)據(jù)流描述、結(jié)構(gòu)描述和混合描述。數(shù)據(jù)流描述:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY F_SUB1 ISPORT( A,B :IN STD_LOGIC; CIN :IN STD_LOGIC; DIFF,COUT : OUT STD_LOGIC );END;ARCHITECTURE A OF F_SUB1 ISSIGNAL S :STD_LOGIC_VECTOR(2 DOWNTO 0);BEGIN S DIFF=0;COUT DIFF=1;CO
16、UT DIFF=1;COUT DIFF=0;COUT DIFF=1;COUT DIFF=0;COUT DIFF=0;COUT DIFF=1;COUT DIFF=X;COUT=X; END CASE; END PROCESS;END A;行為描述:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY F_SUB4 ISPORT( A,B,CIN : IN STD_LOGIC; DIFF,COUT : OUT STD_LOGIC );END;ARCHITECTURE A OF F_SUB4 I
17、SBEGIN DIFF=A XOR B XOR CIN; COUT=(NOT A AND B) OR (NOT A AND CIN) OR (B AND CIN);END A;5-13用VHDL描述下列器件的功能:(1)十進制BCD碼編碼器,輸出使能為低電平有效。LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY BIN_BCD ISPORT( BIN : IN INTEGER RANGE 0 TO 20; -ENA : IN STD_LOGIC; BCD_OUT : OUT STD_LOGIC_VECTOR(7 DOWNTO 0) );END;AR
18、CHITECTURE A OF BIN_BCD ISBEGINBINARY_BCD : BLOCKBEGINBCD_OUT =00000000 WHEN BIN = 0 ELSE00000001 WHEN BIN = 1 ELSE00000010 WHEN BIN = 2 ELSE00000011 WHEN BIN = 3 ELSE00000100 WHEN BIN = 4 ELSE00000101 WHEN BIN = 5 ELSE00000110 WHEN BIN = 6 ELSE00000111 WHEN BIN = 7 ELSE00001000 WHEN BIN = 8 ELSE000
19、01001 WHEN BIN = 9 ELSE00010000 WHEN BIN = 10 ELSE00010001 WHEN BIN = 11 ELSE00010010 WHEN BIN = 12 ELSE00010011 WHEN BIN = 13 ELSE00010100 WHEN BIN = 14 ELSE00010101 WHEN BIN = 15 ELSE00010110 WHEN BIN = 16 ELSE00010111 WHEN BIN = 17 ELSE00011000 WHEN BIN = 18 ELSE00011001 WHEN BIN = 19 ELSE0010000
20、0 WHEN BIN = 20 ELSE 00000000;END BLOCK;END A;(2)時鐘(可控)RS觸發(fā)器。LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY FFRS ISPORT(S,R: IN STD_LOGIC; Q,QB: OUT STD_LOGIC);END FFRS;ARCHITECTURE RTL OF FFRS ISSIGNAL QN,NQN: STD_LOGIC;BEGIN QN= R NOR NQN;NQN= S NOR QN; Q=QN;QB=NQN;END RTL; (3)帶復(fù)位端、置位端、延遲為15NS的響應(yīng)
21、 CP下降沿觸發(fā)的JK觸發(fā)器。LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY JKFF ISPORT( J,K,RST,CLR : IN BIT; CLK : IN BIT; Q,NQ : OUT BIT );END;ARCHITECTURE A OF JKFF ISSIGNAL Q_S,NQ_S : BIT;BEGIN PROCESS(J,K,RST,CLR,CLK) BEGIN IF RST=1 THEN Q_S=1; NQ_S=0; ELSIF CLKEVENT AND CLK
22、=0 THEN IF CLR=1 THEN Q_S=0; NQ_S=1; ELSIF J=0 AND K=1 THEN Q_S=0; NQ_S=1; ELSIF J=1 AND K=0 THEN Q_S=1; NQ_S=0; ELSIF J=1 AND K=1 THEN Q_S=NOT Q_S; NQ_S=NOT NQ_S; END IF; ELSE NULL; END IF; Q=Q_S; NQ=NQ_S;END PROCESS;END A;(4)集成計數(shù)器74161LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNS
23、IGNED.ALL;ENTITY CNT4 ISPORT( CLK,LDN,CLRN : IN STD_LOGIC; D,C,B,A : IN STD_LOGIC; CARRY : OUT STD_LOGIC; QD,QC,QB,QA : OUT STD_LOGIC );END;ARCHITECTURE A OF CNT4 IS SIGNAL DATA_IN: STD_LOGIC_VECTOR(3 DOWNTO 0);BEGIN DATA_IN0); ELSIF CLKEVENT AND CLK=1 THEN IF LDN=0 THEN CNT:=DATA_IN; ELSE CNT:=CNT+
24、1; END IF; END IF; CASE CNT IS WHEN 1111= CARRY CARRY=0; END CASE; QA=CNT(0); QB=CNT(1); QC=CNT(2); QD=CNT(3); END PROCESS; END A;5-14用VHDL描述一個三態(tài)輸出的雙4選一的數(shù)據(jù)選擇器,其地址信號共用,且各有一個低電平有效的使能端。LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY DUAL_MUX_41 ISPORT( A,B,C,D : IN STD_LOGIC; ENA_N,ENB_N : IN STD_LOGIC
25、; S : IN STD_LOGIC_VECTOR(1 DOWNTO 0); OUTA,OUTB : OUT STD_LOGIC );END;ARCHITECTURE A OF DUAL_MUX_41 IS SIGNAL P,Q : STD_LOGIC_VECTOR(2 DOWNTO 0);BEGIN P=ENA_N & S; Q=ENB_N & S; WITH P SELECT OUTA=A WHEN 000, B WHEN 001, C WHEN 010, D WHEN 011, Z WHEN OTHERS; WITH Q SELECT OUTB=A WHEN 000, B WHEN 00
26、1, C WHEN 010, D WHEN 011, Z WHEN OTHERS; END A;5-15試用并行信號賦值語句分別描述下列器件的功能:(1) 3-8譯碼器(2) 8選1數(shù)據(jù)選擇器(1)功能描述如下: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY decoder38 IS PORT(a,b,c,g1,g1a,a2b:IN STD_LOGIC; q:OUT STD_LOGIC_VECTOR(7 DOWNTO 0); END decoder38; ARCHITECTURE behave38 OF decoder38 IS SIGNA
27、L inda: STD_LOGIC_VECTOR(2 DOWNTO 0); BEGIN indaqqqqqqqqq=XXXXXXXX; END CASE; ELSE q=11111111; END IF; END PROCESS;END behave38; (2)功能描述如下: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY mux8 IS PORT(d0,d1,d2,d3,d4,d5,d6,d7:IN STD_LOGIC_VECTOR(7 DOWNTO 0); s0,s1,s2:IN STD_LOGIC; q:OUT STD_LOGIC_V
28、ECTOR(7 DOWNTO 0); END mux8;ARCHITECTURE behave OF mux8 IS SIGNAL s: STD_LOGIC_VECTOR(2 DOWNTO 0);BEGIN s =s2&s1&s0; WITH s SECLECT d =d0 WHEN 000, d1 WHEN 001, d2 WHEN 010, d3 WHEN 011, d4 WHEN 100, d5 WHEN 101, d6 WHEN 110, d7 WHEN 111, XWHEN OTHERS;END behave;5-16利用生產(chǎn)語句描述一個由n個一位全減器構(gòu)成的n位減法器,n的默認(rèn)值為4。LIBRARY IEEE;USE IE
溫馨提示
- 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)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 論文課題申報書
- 音樂陶笛課題立項申報書
- 建黨精神課題申報書
- 古琴課題申報書
- 快樂讀書吧課題申報書
- 賣房貸款合同范本
- 咨詢費購銷合同范本
- 共享充電寶股合同范本
- 70歲以上用工合同范例
- 品牌童裝贈與合同范本
- 環(huán)水保培訓(xùn)資料
- 2025中智集團招聘重要崗位高頻重點模擬試卷提升(共500題附帶答案詳解)
- 華菱漣鋼薄板冷軋項目酸軋線介紹
- 急危重癥護理學(xué)第十章環(huán)境及理化因素?fù)p傷的救護
- 駱駝祥子(老舍著,人民文學(xué)出版社)
- GB/T 44993-2024電動汽車非車載充電機現(xiàn)場檢測儀
- 常用臨床檢驗結(jié)果解讀
- 小學(xué)語文文學(xué)閱讀與創(chuàng)意表達學(xué)習(xí)任務(wù)群教學(xué)實踐研究
- 2025年臨床醫(yī)師定期考核試題中醫(yī)知識復(fù)習(xí)題庫及答案(280題)
- 港珠澳大橋及背后的故事中國建造課程組30課件講解
- 2025年吉林長白朝鮮族自治縣事業(yè)單位招聘16人歷年高頻重點提升(共500題)附帶答案詳解
評論
0/150
提交評論