版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、答案由個(gè)人做出,可能有不全或錯(cuò)誤之處,歡迎大家批評(píng)指正。第一章 1.EDA的英文全稱及其中文含義是什么?答:EDA是Electronic Design Automation,其中文含義是“電子設(shè)計(jì)自動(dòng)化”。2.什么叫EDA技術(shù)?簡(jiǎn)述EDA技術(shù)的發(fā)展歷程。答:EDA技術(shù)有狹義和廣義之分,狹義EDA技術(shù)就是以大規(guī)??删幊踢壿嬈骷樵O(shè)計(jì)載體,以硬件描述語(yǔ)言為系統(tǒng)邏輯描述的主要表達(dá)方式,以計(jì)算機(jī)、大規(guī)??删幊踢壿嬈骷拈_(kāi)發(fā)軟件及實(shí)驗(yàn)開(kāi)發(fā)系統(tǒng)為設(shè)計(jì)工具,通過(guò)有關(guān)的開(kāi)發(fā)軟件,自動(dòng)完成用軟件的方式設(shè)計(jì)的電子系統(tǒng)到硬件系統(tǒng)的邏輯編譯、邏輯化簡(jiǎn)、邏輯分割、邏輯綜合及優(yōu)化、邏輯布局布線、邏輯仿真,直至完成對(duì)于特定
2、目標(biāo)芯片的適配編譯、邏輯映射、編程下載等工作,最終形成集成電子系統(tǒng)或?qū)S眉尚酒囊婚T(mén)新技術(shù),或稱為IES/ASIC自動(dòng)設(shè)計(jì)技術(shù)。 3.簡(jiǎn)述用EDA技術(shù)設(shè)計(jì)電路的設(shè)計(jì)流程。答 EDA設(shè)計(jì)流程包括:設(shè)計(jì)準(zhǔn)備、設(shè)計(jì)輸入、設(shè)計(jì)處理、設(shè)計(jì)校驗(yàn)、器件編程、器件測(cè)試和設(shè)計(jì)驗(yàn)證。4.什么叫”綜合”和”網(wǎng)表文件”?答: (A)在電子設(shè)計(jì)領(lǐng)域中綜合的概念可以表示為:將用行為和功能層次表達(dá)的電子系統(tǒng)轉(zhuǎn)換為低層次的便于具體實(shí)現(xiàn)的模塊組合裝配的過(guò)程。(1)從自然語(yǔ)言轉(zhuǎn)換到 VHDL 語(yǔ)言算法表示,即 自然語(yǔ)言綜合。(2)從算法表示轉(zhuǎn)換到寄存器 傳輸級(jí)(RegisterTransport Level,RTL),即從行為
3、域到結(jié)構(gòu)域的綜合,即行為綜合。(3)從 RTL 級(jí)表示轉(zhuǎn)換到邏 輯門(mén)(包括觸發(fā)器)的表示,即邏輯綜合。(4)從邏輯門(mén)表示轉(zhuǎn)換到版圖表示(ASIC 設(shè)計(jì)),或轉(zhuǎn)換到 FPGA 的配置網(wǎng)表 文件,可稱為版圖綜合或結(jié)構(gòu)綜合。 綜合在電子設(shè)計(jì)自動(dòng)化中處于核心地位。 (B)網(wǎng)表文件是描述電路的連接關(guān)系的文件,一般以文本文件的形式存在。英文為 netlist file格式有cdl, spice, aucdl.等5. 從使用的角度來(lái)講,EDA技術(shù)主要包括幾個(gè)方面的內(nèi)容?這幾個(gè)方面在整個(gè)電子系統(tǒng)的設(shè)計(jì)中分別起什么作用?答: EDA技術(shù)的學(xué)習(xí)主要應(yīng)掌握4個(gè)方面的內(nèi)容: 大規(guī)??删幊踢壿嬈骷?; 硬件描述語(yǔ)言; 軟
4、件開(kāi)發(fā)工具; 實(shí)驗(yàn)開(kāi)發(fā)系統(tǒng)。6.目前流行的主流廠家的EDA的軟件工具有哪些?比較這些EDA軟件的差異。答: (1)目前比較流行的主流廠家的EDA的軟件工具有Altera的MAX+plus II、Quartus II 、Lattice的ispEXPERT、Xilinx的Foundation Series。 (2)Max+plus II 是A1tera公司推出的一個(gè)使用非常廣泛的EDA軟件工具,它支持原理圖、VHDL和Verilog語(yǔ)言的文本文件,以及波形圖與EDIF等格式的文件作為設(shè)計(jì)輸入,并支持這些文件的任意混合設(shè)計(jì)。它具有門(mén)級(jí)仿真器,可以進(jìn)行功能仿真和時(shí)序仿真,能夠產(chǎn)生精確的仿真結(jié)果。在適配
5、之后,Max+plus II生成供時(shí)序仿真用的Edif、VHDL和Verilog 3種不同格式的網(wǎng)表文件。Max+plus II界面友好,使用便捷,被譽(yù)為業(yè)界最易學(xué)易用的EDA軟件,并支持主流的第三方EDA工具,支持除APEx20K系列之外的所有A1tera公司的FPGACPLD大規(guī)模邏輯器件。 Quartus II是A1tera公司新近推出的EDA軟件工具,其設(shè)計(jì)工具完全支持VHDL和Verilog的設(shè)計(jì)流程,其內(nèi)部嵌有VHDL、Verilog邏輯綜合器。第三方的綜合工具,如Leonardo Spectrum、Synplify pro和FPGA Compiler II有著更好的綜合效果,Qu
6、artus II可以直接調(diào)用這些第三方工具,因此通常建議使用這些工具來(lái)完成VHDL/Verilog源程序的綜合。同樣,Quartus II具備仿真功能,也支持第三方的仿真工具,如Modelsim。此外,Quartus II為A1tera DSP開(kāi)發(fā)包進(jìn)行系統(tǒng)模型設(shè)計(jì)提供了集成綜合環(huán)境,它與MATLAB和DSP Builder結(jié)合可以進(jìn)行基于FPGA的DSP系統(tǒng)開(kāi)發(fā),是DSP硬件系統(tǒng)實(shí)現(xiàn)的關(guān)鍵EDA工具。Quartus II還可與SOPC Builder結(jié)合,實(shí)現(xiàn)SOPC系統(tǒng)開(kāi)發(fā)。ispExPERT是Lattice公司的主要集成環(huán)境。通過(guò)它可以進(jìn)行VHDL、Verilog及ABEL語(yǔ)言的設(shè)計(jì)輸入
7、、綜合、適配、仿真和在系統(tǒng)下載。ispExPERT是目前流行的EDA軟件中最容易掌握的設(shè)計(jì)工具之一,它界面友好、操作方便、功能強(qiáng)大,并與第三方EDA工具兼容良好。 Foundation Series是Xilinx公司較成熟的集成開(kāi)發(fā)EDA工具。它采用自動(dòng)化的、完整的集成設(shè)計(jì)環(huán)境。Foundation項(xiàng)目管理器集成Xilinx實(shí)現(xiàn)工具,并包含了強(qiáng)大的書(shū)館Synopsys FPGA Express綜合系統(tǒng),是業(yè)界最強(qiáng)大的EDA設(shè)計(jì)工具之一。7. 簡(jiǎn)要闡述EDA技術(shù)的發(fā)展趨勢(shì)和應(yīng)用領(lǐng)域答:從目前的EDA技術(shù)來(lái)看,其發(fā)展趨勢(shì)是政府重視、使用普及、應(yīng)用文泛、工具多樣、軟件功能強(qiáng)大。EDA的范疇包括:機(jī)械
8、、電子、通信、航空航天、化工、礦產(chǎn)、生物、醫(yī)學(xué)、軍事等各個(gè)領(lǐng)域,都有 EDA的應(yīng)用。第二章 VHDL硬件描述語(yǔ)言1、簡(jiǎn)述實(shí)體(ENTITY)、結(jié)構(gòu)體(ARCHITECTURE)與原理圖的關(guān)系。答:結(jié)構(gòu)來(lái)說(shuō) 實(shí)體就是原理圖的外觀,結(jié)構(gòu)體中的具體程序就是原理圖中的具體實(shí)現(xiàn)。2、子程序調(diào)用與元件例化有何區(qū)別,函數(shù)與過(guò)程在具體使用上有何不同。答:從硬件角度講,一個(gè)子程序的調(diào)用類似于一個(gè)元件模塊的例化,VHDL綜合器為子程序的每一次調(diào)用都生成一個(gè)電路邏輯塊。所不同的是,元件的例化將產(chǎn)生一個(gè)新的設(shè)計(jì)層次,而子程序調(diào)用只對(duì)應(yīng)于當(dāng)前層次的一部分。函數(shù)和過(guò)程的不同在于:函數(shù)只有一個(gè)輸出,只能通過(guò)函數(shù)體內(nèi)的RET
9、URN語(yǔ)句來(lái)實(shí)現(xiàn),函數(shù)體內(nèi)不能有信號(hào)賦值語(yǔ)句;而過(guò)程卻可以有不止一個(gè)輸出,而且是通過(guò)過(guò)程體內(nèi)的信號(hào)賦值語(yǔ)句或者變量賦值語(yǔ)句來(lái)實(shí)現(xiàn)的,過(guò)程體內(nèi)的RETURN語(yǔ)句沒(méi)有用處,因此不少過(guò)程都將其省略了。函數(shù)的調(diào)用只能通過(guò)表達(dá)式來(lái)實(shí)現(xiàn),過(guò)程的調(diào)用則是通過(guò)過(guò)程調(diào)用語(yǔ)句來(lái)實(shí)現(xiàn)的。3、什么是重載函數(shù)?重載算符有何用處?如何調(diào)用重載算符函數(shù)。答:(1)什么是重載函數(shù)? 根據(jù)操作對(duì)象變換處理功能。 (2)重載算符有何用處? 用于兩個(gè)不同類型的操作數(shù)據(jù)自動(dòng)轉(zhuǎn)換成同種數(shù)據(jù)類型,并進(jìn)行運(yùn)算處理。 (3)如何調(diào)用重載算符函數(shù)?采用隱式方式調(diào)用,無(wú)需事先聲明。4、在VHDL程序中配置有何用處?答:配置可以把特定的結(jié)構(gòu)體關(guān)聯(lián)
10、到一個(gè)確定的實(shí)體,正如配置一詞本身的含義一樣。配置語(yǔ)句就是用來(lái)為較大的系統(tǒng)設(shè)計(jì)提供管理和工程組織的。配置也是 VHDL 設(shè)計(jì)實(shí)體中的一個(gè)基本單元,在綜合或仿真中,可以利用配置語(yǔ)句為確定整個(gè)設(shè)計(jì)提供許多有用信息。總之用于設(shè)置VHDL的工作參數(shù)以及工作模式。配置用來(lái)選擇實(shí)體的多個(gè)結(jié)構(gòu)體的哪一個(gè)被使用。5. 嵌套 BLOCK 的可視性規(guī)則是什么?以嵌套 BLOCK 的語(yǔ)句方式設(shè)計(jì)三個(gè)并列的 3 輸入或門(mén)。答:BLOCK是 VHD 中具有的一種劃分機(jī)制,這種機(jī)制允許設(shè)計(jì)者合理地將一個(gè)模塊分為數(shù)個(gè)區(qū)域,在每個(gè)塊都能對(duì)其局部信號(hào)、數(shù)據(jù)類型和常量加以描述和定義。任何能在結(jié)構(gòu)體的說(shuō)明部分進(jìn)行說(shuō)明的對(duì)象都能在
11、BLOCK 說(shuō)明部分中進(jìn)行說(shuō)明。相關(guān)參考代碼:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY triple_input ISPORT (A :IN STD_LOGIC; B :IN STD_LOGIC; C :IN STD_LOGIC; OUTA :OUT STD_LOGIC );END triple_input;ARCHITECTURE ADO OF triple_input IS BEGIN OUTA= A AND B AND C; END ADO;6.簡(jiǎn)述函數(shù)與過(guò)程的異同點(diǎn),過(guò)
12、程與進(jìn)程的異同點(diǎn)。答:子程序有兩種類型,即過(guò)程(PROCEDURE)和函數(shù)(FUNCTION)。函數(shù)和過(guò)程都是串行的。它們的區(qū)別在于:過(guò)程的調(diào)用可以通過(guò)其界面獲得多個(gè)返回值,而函數(shù)只能返回一個(gè)值;在函數(shù)入口中,所有參數(shù)都是輸入?yún)?shù),而過(guò)程有輸入?yún)?shù)、輸出參數(shù)和雙向參數(shù);過(guò)程一般被看作一種語(yǔ)句結(jié)構(gòu),而函數(shù)通常是表達(dá)式的一部分;過(guò)程可以單獨(dú)存在,而函數(shù)通常作為語(yǔ)句的一部分調(diào)用。過(guò)程和進(jìn)程的相同點(diǎn):只能使用順序語(yǔ)句,可以單獨(dú)存在。不同點(diǎn):過(guò)程不能像進(jìn)程那樣可以從本結(jié)構(gòu)體的其他塊或進(jìn)程結(jié)構(gòu)中直接讀取信號(hào)值或者信號(hào)賦值。7、判斷下列 VHDL 標(biāo)識(shí)符是否合法,如果不合法則指出原因:16#0FA#,10#
13、12F#,8#789#,8#356#,2#0101010#,74HC245,74HC574,CLR/RESET,IN 4/SCLK, D100%。答:識(shí)符用法規(guī)定:(1)只能包含英文字母,數(shù)字,下劃線(2)標(biāo)識(shí)符的首字符只能是字母。故:(1)16#0FA#錯(cuò)在首字符是數(shù)字,且包含非法字符“#“。 10#12F#、8#789#,8#356#,2#0101010#,74HC245也是犯同一錯(cuò)誤。(2)74HC574,CLR/RESET,IN4/SCLK,D100%都是非法,包含非法字符.8、討論數(shù)據(jù)對(duì)象信號(hào)與變量間的異同處,說(shuō)明它們的使用對(duì)所形成的硬件結(jié)構(gòu)有何影響。答:在VHDL中,對(duì)象是指用來(lái)保
14、持?jǐn)?shù)據(jù)的一些客體單元。信號(hào)跟變量是VHDL中的重要客體。信號(hào)是指在設(shè)計(jì)實(shí)體中數(shù)據(jù)交換的一種手段,采用信號(hào)對(duì)象可以把設(shè)計(jì)實(shí)體連接在一起形成模塊。在硬件電路中代表一條硬件連線,有時(shí)信號(hào)會(huì)被綜合成一個(gè)寄存器。變量主要是對(duì)暫時(shí)數(shù)據(jù)進(jìn)行局部存儲(chǔ),它是一個(gè)局部量。信號(hào)與變量在使用前都必需先聲明后使用,否則會(huì)產(chǎn)生編譯錯(cuò)誤。信號(hào)可以architecture、package、entitiy中聲明,是全局量可以在全局使用。變量可以process、function、procedure中聲明,也只能在process、function、procedur中使用不是全局變量。他們之間的主要區(qū)別有:信號(hào)賦值至少要有延時(shí);而變
15、量賦值沒(méi)有。信號(hào)除當(dāng)前值外有許多相關(guān)的信息,如歷史信息和投影波形;而變量只有當(dāng)前值。進(jìn)程對(duì)信號(hào)敏感而不對(duì)變量敏感。信號(hào)可以是多個(gè)進(jìn)程的全局信號(hào);而變量只在定義他們的順序域可見(jiàn)(共享變量除外)。信號(hào)是硬件中連線的抽象描述,他們的功能是保存變化的數(shù)據(jù)值和連接子元件,信號(hào)在元件的端口連接元件。變量在硬件中沒(méi)有類似的對(duì)應(yīng)關(guān)系,他們用于硬件特性的高層次建模所需要的計(jì)算中。 從綜合后所對(duì)應(yīng)的硬件電路結(jié)構(gòu)來(lái)看,信號(hào)一般將對(duì)應(yīng)更多的硬件結(jié)構(gòu),但在許多情況下,信號(hào)和變量并沒(méi)有什么區(qū)別。例如在滿足一定條件的進(jìn)程中,綜合后它們都能引入寄存器。這時(shí)它們都具有能夠接受賦值這一重要的共性,而VHDL綜合器并不理會(huì)它們?cè)诮?/p>
16、受賦值時(shí)存在的延時(shí)特性。9. 運(yùn)算符重載函數(shù)通常要調(diào)用轉(zhuǎn)換函數(shù),以便能夠利用已有的數(shù)據(jù)類型。下面給出一個(gè)新的數(shù)據(jù)類型AGE,并且下面的轉(zhuǎn)換函數(shù)已經(jīng)實(shí)現(xiàn):function CONV_INTEGER(ARG:AGE) return INTEGER;請(qǐng)仿照本章中的例子,利用此函數(shù)編寫(xiě)一個(gè)“+”運(yùn)算符重載函數(shù),支持下面的運(yùn)算:SIGNALa,c : AGE;.c B 時(shí), E=1;當(dāng) Ab)thenX=1;Y=0;Z=0;elsif(ab)thenX=0;Y=1;Z=0;ELSEX=0;Y=0;Z=1;endif;endprocess;endbehave;11. 在 VHDL 編程中,為什么應(yīng)盡可能使
17、用子類型對(duì)類型的取值范圍給予限定。答:由于子類型與其基本數(shù)據(jù)類型屬同一數(shù)據(jù)類型,因此屬于子類型的和屬于基本數(shù)據(jù) 類型的數(shù)據(jù)對(duì)象間的賦值和被賦值可以直接進(jìn)行,不必進(jìn)行數(shù)據(jù)類型的轉(zhuǎn)換。利用子類型定義數(shù)據(jù)對(duì)象的好處是,除了使程序提高可讀性和易處理外,其實(shí)質(zhì)性的好處還在于有利于提高綜合的優(yōu)化效率,這是因?yàn)榫C合器可以根據(jù)子類型所設(shè)的約束范圍,有效地推知參與綜合的寄存器的最合適的數(shù)目。12、判斷下面 3 例 VHDL 程序中是否有錯(cuò)誤,若有錯(cuò)誤則指出錯(cuò)誤原因:程序1Signal A, EN : std_logic; Process (A, EN)Variable B : std_logic;Beginif
18、 EN = 1 thenB = A;end if;end process;程序 2Architecture one of sample isvariable a, b, c : integer;beginc = a + b;end;程序 3library ieee;use ieee.std_logic_1164.all;entity mux21 isport ( a, b : in std_logic; sel : in std_logic; c : out std_logic;); end sam2;architecture one of mux21 isbeginif sel = 0 th
19、en c := a;else c := b;end if;end two;答:程序1: 將“B=A”改成“B:=A”程序2:-將“c=a+b”改成“c:=a+b”程序3: 將“;)”改成“)” 將“sam2”改成“entity mux21” 增加“process(a,b,sel) beginif sel= 0 then c:=a; else c:=b; end if; -應(yīng)改成“if sel= 0 then c=a; else c=b; end if;”增加“end process;” 將“two”改成“architecture one”13、分別用 CASE 語(yǔ)句和 IF設(shè)計(jì)3-8譯碼器。答
20、:CASE語(yǔ)句:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY decoder38 ISPORT (EN:IN STD_LOGIC;A0,A1,A2:IN STD_LOGIC;Y:OUT STD_LOGIC_VECTOR(7 DOWNTO 0);END ENTITY decoder38;ARCHITECTUR bhv OF decoder38 ISSIGNAL S:STD_LOGIC_VECTOR(2 DOWNTO 0);BEGIN SYYYYYYYYNULL; END CASE;END IF;END PROCESS;END ARCHITECTU
21、RE bhv;IF語(yǔ)句:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY decoder38 ISPORT (EN:IN STD_LOGIC;A0,A1,A2:IN STD_LOGIC;Y:OUT STD_LOGIC_VECTOR(7 DOWNTO 0);END ENTITY decoder38;ARCHITECTUR bhv OF decoder38 ISBEGINPROCESS (EN,A2,A1,A0)BEGINIF (EN=1) THEN IF(A2=0) THEN IF(A1=0) THEN IF(A0=0) THEN Y=0000000
22、1; ELSE Y=00000010; ELSIF(A1=1) THEN IF(A0=0) THEN Y=00000100; ELSE Y=00001000; END IF; END IF; ELSIF(A2=1) THEN IF(A1=0) THEN IF(A0=0) THEN Y=00010000; ELSE Y=00100000; END IF; ELSIF(A1=1) THEN IF(A0=0) THEN Y=01000000; ELSE Y=10000000; END IF; END IF; END IF;END IF;END PROCESS;END ARCHITECTURE bhv
23、;library ieee;use ieee.std_logic_1164.all;entity sss is port (a: in std_logic_vector(2 downto 0); cout:out std_logic_vector(7 downto 0);end ;architecture one of sss isbegin process(a) begin if a=000 then cout =11111110; elsif a=001 then cout =11111101; elsif a=010 then cout =11111011; elsif a=011 th
24、en cout =11110111; elsif a=100 then cout =11101111; elsif a=101 then cout =11011111; elsif a=110 then cout =10111111; elsif a=111 then cout x,b=y,ci=tmp,su=sum,co=cout); u2:df port map(d=cout,cl=clock,q1=tmp); end architecture one;-底層文件1:D觸發(fā)器library ieee;use ieee.std_logic_1164.all; entity df is por
25、t (d,cl:in std_logic; q1:out std_logic); end; architecture two of df is signal qq:std_logic; begin process(cl,qq) begin if cl event and cl=1 then qq=d; end if; end process; q1a,b1=b,cou=d,so=e); u2:h_adder port map(a1=e,b1=ci,cou=f,so=su); u3:or2a port map(a1=d,b1=f,c=co); end architecture three;-底層
26、文件2-1:半加器library ieee;use ieee.std_logic_1164.all; entity h_adder is port (a1,b1:in std_logic; so,cou:out std_logic); end; architecture four of h_adder is begin so=not(a1 xor(not b1); cou=a1 and b1; end architecture four;-底層文件2-2:或門(mén)library ieee;use ieee.std_logic_1164.all; entity or2a is port (a1,b1
27、:in std_logic; c:out std_logic); end; architecture five of or2a is begin c=a1 or b1; end architecture five;16. 設(shè)計(jì)5位可變模數(shù)計(jì)數(shù)器。設(shè)計(jì)要求:令輸入信號(hào)M1和M0 控制計(jì)數(shù)模,即令(M1,M0)=(0,0)時(shí)為模19 加法計(jì)數(shù)器,(M1,M0)=(0,1)時(shí)為模4計(jì)數(shù)器,(M1,M0) =(1,0) 為模10 加法計(jì)數(shù)器,(M1,M0)=(1,1)時(shí)為模6計(jì)數(shù)器。答:Entity mod_cal is Port(M1,M0:in bit; Count:out std_logic_v
28、ector(4 downto 0); Clk:in std_logic);End entity;Architecture behav of mod_cal isSignal count1:std_logic_vector(4 downto 0);Begin Process(clk,M1,M0) Variable sel is bit_vector(1 downto 0); Begin Sel:=M1&M0; If clkevent and clk=1then Count1if Count1=”10011”then Count1if Count1=”00100”then Count1if Cou
29、nt1=”01010”then Count1if Count1=”00110”then Count1=”00000”; End if; End case; End if;End process;Count=count1;End behav;17. 什么是 VHDL 結(jié)構(gòu)體的行為描述風(fēng)格,敘述行為描述的優(yōu)缺點(diǎn)。答:如果 VHDL 的結(jié)構(gòu)體只描述了所希望電路的功能或者說(shuō)電路行為,而沒(méi)有直接指明或涉及實(shí)現(xiàn)這些行為的硬件結(jié)構(gòu),包括硬件特性、連線方式、邏輯行為方式,則稱為行為風(fēng)格的描述或行為描述。優(yōu)點(diǎn):抽象程度最高,最能體現(xiàn)VHDL描述高層次結(jié)構(gòu)和系統(tǒng)的能力。缺點(diǎn):只表示輸入與輸出間轉(zhuǎn)換的行為,它不包含
30、任何結(jié)構(gòu)信息。18結(jié)構(gòu)化描述與調(diào)用子程序有何異同點(diǎn),VHDL 程序中是如何進(jìn)行結(jié)構(gòu)化描述的?結(jié)構(gòu)化描述需要哪些語(yǔ)句?答:略19. 試舉一例,在一個(gè)結(jié)構(gòu)體中同時(shí)含有3種不同描述風(fēng)格的VHDL語(yǔ)句結(jié)構(gòu)。答:略20. 以數(shù)據(jù)流的方式設(shè)計(jì)一個(gè) 2 位比較器,再以結(jié)構(gòu)描述方式將已設(shè)計(jì)好的比較器連接起來(lái)構(gòu)成一個(gè) 8 位比較器答:略21. 采用VHDL進(jìn)行數(shù)字系統(tǒng)設(shè)計(jì)有哪些特點(diǎn)?答:HDL系統(tǒng)設(shè)計(jì)的基本點(diǎn):(1)與其他硬件描述語(yǔ)言相比,VHDL具有以下特點(diǎn):(2)功能強(qiáng)大、設(shè)計(jì)靈活。(3)強(qiáng)大的系統(tǒng)硬件描述能力。 (4)易于共享和復(fù)用。22. VHDL的基本程序結(jié)構(gòu)由幾部分組成?各部分的功能是什么?答:由5
31、個(gè)部分組成,包含實(shí)體、結(jié)構(gòu)體、配置、程序包和庫(kù)。實(shí)體作為一個(gè)設(shè)計(jì)實(shí)體的組成部分,其功能是對(duì)這個(gè)設(shè)計(jì)實(shí)體與外部電路進(jìn)行接口描述。結(jié)構(gòu)體(ARCHITECTURE)是設(shè)計(jì)實(shí)體的一個(gè)重要部分,結(jié)構(gòu)體將具體實(shí)現(xiàn)一個(gè)實(shí)體。在利用 VHDL 進(jìn)行工程設(shè)計(jì)中,為了提高設(shè)計(jì)效率以及使設(shè)計(jì)遵循某些統(tǒng)一的語(yǔ)言標(biāo)準(zhǔn)或數(shù)據(jù)格式,有必要將一些有用的信息匯集在一個(gè)或幾個(gè)庫(kù)中以供調(diào)用,這些信息可以是預(yù)先定義好的數(shù)據(jù)類型、子程序等設(shè)計(jì)單元的集合體(程序包)或預(yù)先設(shè)計(jì)好的各種設(shè)計(jì)實(shí)體(元件庫(kù)程序包)。因此可以把庫(kù)看成是一種用來(lái)存儲(chǔ)預(yù)先完成的程序包、數(shù)據(jù)集合體和元件的倉(cāng)庫(kù)。已在設(shè)計(jì)實(shí)體中定義的數(shù)據(jù)類型、子程序或數(shù)據(jù)對(duì)象對(duì)于其它設(shè)
32、計(jì)實(shí)體是不可用的,或者說(shuō)是不可見(jiàn)的。為了使已定義的常數(shù)、數(shù)據(jù)類型、元件調(diào)用說(shuō)明以及子程序能被更多的 VHDL 設(shè)計(jì)實(shí)體方便地訪問(wèn)和共享,可以將它們收集在一個(gè) VHDL 程序包中,多個(gè)程序包可以并入一個(gè) VHDL 庫(kù)中,使之適用于更一般的訪問(wèn)和調(diào)用范圍,這一點(diǎn)對(duì)于大系統(tǒng)開(kāi)發(fā)多個(gè)或多組開(kāi)發(fā)人員同步并行工作顯得尤為重要。配置可以把特定的結(jié)構(gòu)體關(guān)聯(lián)到一個(gè)確定的實(shí)體,正如配置一詞本身的含義一樣。配置也是 VHDL 設(shè)計(jì)實(shí)體中的一個(gè)基本單元,在綜合或仿真中,可以利用配置語(yǔ)句為確定整個(gè)設(shè)計(jì)提供許多有用信息。23. 說(shuō)明端口模式BUFFER與INOUT有何異同點(diǎn)?答:INOUT為輸入輸出雙向端口,即從端口內(nèi)部
33、看,可以對(duì)端口進(jìn)行賦值,即輸出數(shù)據(jù)。也可以從此端口讀入數(shù)據(jù),即輸入。BUFFER為緩沖端口,功能與INOUT類似,區(qū)別在于當(dāng)需要讀入數(shù)據(jù)時(shí),只允許內(nèi)部回讀內(nèi)部產(chǎn)生的輸出信號(hào),即反饋。舉個(gè)例子,設(shè)計(jì)一個(gè)計(jì)數(shù)器的時(shí)候可以將輸出的計(jì)數(shù)信號(hào)定義為BUFFER,這樣回讀輸出信號(hào)可以做下一計(jì)數(shù)值的初始值。24. 用VHD設(shè)計(jì)一個(gè)實(shí)現(xiàn)三輸入的多數(shù)表決器。答:library ieee; use ieee.std_logic_1164.all; entity bjq3 is port(a,b,c:in std_logic; y:out std_logic); end; architecture x of bjq
34、3 is signal ty:std_logic_vector(2 downto 0); begin ty=a&b&c; with ty select y=0 when 000, 0 when 001, 0 when 010, 1 when 011, 0 when 100, 1 when 101, 1 when 110, 1 when 111, X when others; end;25. 用PROCESS語(yǔ)句描述帶同步復(fù)位的JK觸發(fā)器。答:library ieee; use ieee.std_logic_1164.all; entity jk_ff is port(clk,reset,j,k
35、:in std_logic; q,qb:out std_logic); end; architecture behave of jk_ff is signal tq,tqb:std_logic; begin q=tq;qb=tqb; process(clk,reset) begin if (clkevent and clk=1) then if (reset=0) then tq=0;tqb=1; elsif (j=0)and(k=0) then tq=tq;tqb=tqb; elsif (j=0)and(k=1) then tq=0;tqb=1; elsif (j=1)and(k=0) th
36、en tq=1;tqb=0; elsif (j=1)and(k=1) then tq=not tq;tqb=not tqb; end if; end if; end process; end;26. 用并行信號(hào)賦值語(yǔ)句設(shè)計(jì)8選1數(shù)據(jù)選擇器。答:library ieee; use ieee.std_logic_1164.all; entity xzq8 is port(x:in std_logic_vector(7 downto 0); sel:in std_logic_vector(2 downto 0); f:out std_logic); end; architecture a of xz
37、q8 is begin f=x(0) when sel=000 else x(1) when sel=001 else x(2) when sel=010 else x(3) when sel=011 else x(4) when sel=100 else x(5) when sel=101 else x(6) when sel=110 else x(7) when sel=111 else X; end;27. 用VHDL設(shè)計(jì)一個(gè)三態(tài)輸出的雙4選1數(shù)據(jù)選擇器。其地址信號(hào)共用,且各有個(gè)低電平有效的使能端答:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENT
38、ITY DUAL_MUX_41 ISPORT( A,B,C,D:IN STD_LOGIC; ENA_N,ENB_N:IN STD_LOGIC; S :IN STD_LOGIC_VECTOR(1 DOWNTO 0); OUTA,OUTB:OUT STD_LOGIC );ENDARCHITECTURE A OF DUAL_MUX_41 IS SIGNAL P,Q:STD_LOGIC_VECTOR(1 DOWNTO 0);BEGIN P=ENA_N & S; Q=ENB_N & S; WITH P SELECT OUTA=A WHEN “000”, B WHEN”001”, C WHEN”010”,
39、 D WHEN”011”, Z WHEN OTHERS; WITH Q SELECT OUTB= A WHEN”000”, B WHEN”001”, C WHEN”010”, D WHEN”011”, Z WHEN OTHERS; END A; 28. 用VHDL設(shè)計(jì)實(shí)現(xiàn)由兩輸入端與非門(mén)構(gòu)成的1位全加器。答:略29. 用VHDL設(shè)計(jì)實(shí)現(xiàn)一百進(jìn)制的計(jì)數(shù)器。答:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY counter ISGENERIC( count_value: INTEGER:
40、=9); PORT (clk,clr,en: IN STD_LOGIC; co: OUT STD_LOGIC; count: OUT INTEGER RANGE 0 TO count_value);END counter;ARCHITECTURE a OF counter ISSIGNAL cnt: INTEGER RANGE 0 TO count_value;BEGINPROCESS (clk,clr) BEGIN IF clr = 1 THEN cnt = 0; ELSIF (clkEVENT AND clk = 1) THEN IF en = 1 THEN IF cnt = count_
41、value THEN cnt = 0;ELSE cnt = cnt + 1; END IF; END IF; END IF;END PROCESS;co=1 WHEN cnt=count_value ELSE 0;count 9) port map(clk,clr,en, en1, count1); bb: counter generic map( count_value=9) port map(clk=clk,clr=clr, en=en1, co=co,count=count2); end rtl; 30. 比較CASE語(yǔ)句與WITH_SELECT語(yǔ)句,敘述它們的異同點(diǎn)。答:相同點(diǎn):CASE語(yǔ)句中各子句的條件不能有重疊,必須包容所有的條件;WITH_SECLECT語(yǔ)句也不允許選擇值有重疊現(xiàn)象,也不允許選擇值涵蓋不全的情況。另外,兩者對(duì)子句各選擇值的測(cè)試都具有同步性,都依賴于敏感信號(hào)的變化。 不同點(diǎn):CASE語(yǔ)句只能在進(jìn)程中使用,至少包含一個(gè)條件語(yǔ)句,可以有多個(gè)賦值目標(biāo);WITH_SECLECT語(yǔ)句
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年人民版九年級(jí)生物下冊(cè)階段測(cè)試試卷含答案
- 2025年華師大新版選修4化學(xué)下冊(cè)階段測(cè)試試卷含答案
- 2025年滬科版第二冊(cè)生物上冊(cè)月考試卷
- 2025年人教新課標(biāo)七年級(jí)生物下冊(cè)階段測(cè)試試卷含答案
- 2025年粵教滬科版八年級(jí)科學(xué)上冊(cè)月考試卷含答案
- 2025年滬教版九年級(jí)歷史上冊(cè)階段測(cè)試試卷含答案
- 2025年新世紀(jì)版七年級(jí)物理上冊(cè)階段測(cè)試試卷含答案
- 2025年華東師大版必修3歷史上冊(cè)月考試卷含答案
- 2025年度網(wǎng)絡(luò)文字處理專家勞動(dòng)合同4篇
- 2025年度智能門(mén)窗系統(tǒng)銷售安裝與升級(jí)合同4篇
- 2025年度版權(quán)授權(quán)協(xié)議:游戲角色形象設(shè)計(jì)與授權(quán)使用3篇
- 心肺復(fù)蘇課件2024
- 《城鎮(zhèn)燃?xì)忸I(lǐng)域重大隱患判定指導(dǎo)手冊(cè)》專題培訓(xùn)
- 湖南財(cái)政經(jīng)濟(jì)學(xué)院專升本管理學(xué)真題
- 全國(guó)身份證前六位、區(qū)號(hào)、郵編-編碼大全
- 2024-2025學(xué)年福建省廈門(mén)市第一中學(xué)高一(上)適應(yīng)性訓(xùn)練物理試卷(10月)(含答案)
- 《零售學(xué)第二版教學(xué)》課件
- 廣東省珠海市香洲區(qū)2023-2024學(xué)年四年級(jí)下學(xué)期期末數(shù)學(xué)試卷
- 房地產(chǎn)行業(yè)職業(yè)生涯規(guī)劃
- 江蘇省建筑與裝飾工程計(jì)價(jià)定額(2014)電子表格版
- MOOC 數(shù)字電路與系統(tǒng)-大連理工大學(xué) 中國(guó)大學(xué)慕課答案
評(píng)論
0/150
提交評(píng)論