FPGA試卷+答案+超詳細解答_第1頁
FPGA試卷+答案+超詳細解答_第2頁
FPGA試卷+答案+超詳細解答_第3頁
FPGA試卷+答案+超詳細解答_第4頁
FPGA試卷+答案+超詳細解答_第5頁
已閱讀5頁,還剩5頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 裝 訂 線 考 生 答 題 不 得 超 過 此 線 廣東技術(shù)師范學院 2020學年度第()學期期末考試試卷科目:<<FPGA設計>>()卷考試形式:閉卷 考試時間:100 分鐘院(系)別、班級: 姓名: 學號: 電子與信息學院 20.考試試卷(含答題紙、試題紙、草稿紙的裝訂試卷不能分拆)題 目一二三四五六七八總分標準分數(shù)2030201020 100實得分數(shù)評卷人 試題區(qū):(試題區(qū)必須與答題區(qū)同時交回,含答題紙、試題紙、草稿紙的裝訂試卷不能分拆)一、單項選擇題:(20分)1 在VHDL語言中,下列對進程(PROCESS)語句的語句結(jié)構(gòu)及語法規(guī)則的描述中,不正確的是_C_

2、。A. PROCESS為一無限循環(huán)語句;敏感信號發(fā)生更新時啟動進程,執(zhí)行完成后,等待下一次進程啟動。B. 敏感信號參數(shù)表中,不一定要列出進程中使用的所有輸入信號;C. 進程由說明部分、結(jié)構(gòu)體部分、和敏感信號三部分組成;(進程由聲明語句、順序語句、敏感信號列表組成)D. 當前進程中聲明的變量不可用于其他進程。2 在一個VHDL設計中idata是一個信號,數(shù)據(jù)類型為integer,數(shù)據(jù)范圍0 to 127,下面哪個賦值語句是正確的_C_。(信號賦值符號 <= )A. idata := 32;B. idata <= 16#A0#; (十進制數(shù)為:10*16= 160,idata范圍為01

3、27)C. idata <= 16#7#E1;(十進制數(shù)為:7*161= 112)D. idata := B#1010#;3 大規(guī)模可編程器件主要有FPGA、CPLD兩類,下列對FPGA結(jié)構(gòu)與工作原理的描述中,正確的是_C_。A. FPGA是基于乘積項結(jié)構(gòu)的可編程邏輯器件;(FPGA芯片基于查找表的可編程邏輯結(jié)構(gòu))B. FPGA是全稱為復雜可編程邏輯器件;(FPGA 現(xiàn)場可編程邏輯門陣列,CPLD才是 復雜可編程邏輯器件)C. 基于SRAM的FPGA器件,在每次上電后必須進行一次配置;D. 在Altera公司生產(chǎn)的器件中,MAX7000系列屬FPGA結(jié)構(gòu)。(MAX7000系列屬CPLD結(jié)

4、構(gòu))4 進程中的變量賦值語句,其變量更新是_A_。(變量(variable)是立即完成的,信號(signal)有延時)A. 立即完成;B. 按順序完成;C. 在進程的最后完成; D.都不對。5 VHDL語言是一種結(jié)構(gòu)化設計語言;一個設計實體(電路模塊)包括實體與結(jié)構(gòu)體兩部分,結(jié)構(gòu)體描述_D_。(結(jié)構(gòu)體實現(xiàn) 實體的功能,通過對實體的邏輯功能進行描述)A. 器件外部特性;B. 器件的綜合約束;C. 器件外部特性與內(nèi)部功能;D. 器件的內(nèi)部功能。6 CASE語句是_A_。(case語句時順序語句中最重要最常用的順序語句)A. 順序語句 B. 并行語句 C. 其它 D.組合邏輯控制電路語句7 LIBR

5、ARY _A_; -庫的聲明USE IEEE.STD_LOGIC_1164.ALL; -庫的引用,引用IEEE庫中的std_logic_1164中的所有項目A. IEEE      B. STD     C.WORK D.ENTITY counter IS8 下列標識符中,_B_是不合法的標識符。(標識符開頭必須是英文字符)A. State0B. 9moonC. Not_Ack_0D. signall9 關于VHDL中的數(shù)字,請找出以下數(shù)字中最大的一個:_A_。(整型數(shù)字的表示) 裝 訂 線 考 生 答

6、題 不 得 超 過 此 線 A. 2#1111_1110# -二進制數(shù),下劃線不影響數(shù)值大小,只是增強可讀性,轉(zhuǎn)換成10進制數(shù)為:254B. 8#276# -八進制數(shù),轉(zhuǎn)換成十進制為:190C. 10#170# -十進制數(shù):170D. 16#E#E1 -十六進制數(shù),E為十進制14,后面的E1是指14乘以相應進制數(shù)的1次方,轉(zhuǎn)換成十進制為:14*161=22410下列EDA軟件中,哪一個不具有邏輯綜合功能:_。 (邏輯功能 簡單點說 就是利用軟件使我們用語言設計的電路優(yōu)化成最簡邏輯,相當于 我們數(shù)電的 最簡與或式)A. Max+Plus II (Quartus II的舊版本)B. ModelSi

7、m (專業(yè)的仿真軟件,時序和功能仿真,不具備 邏輯綜合功能)C. Quartus II (自帶)Synplify (專業(yè)的邏輯綜合工具)二.簡答題30分(每題5分)。1根據(jù)下面的VHDL語句,描述出相應的電路原理圖。LIBRARYieee; USEieee.std_logic_1164.ALL; USEieee.std_logic_unsigned.ALL; ENTITYcfq_1 IS PORT(d,cp:INstd_logic; q,nq:OUT std_logic); ENDcfq_1;- ENDar_4; -老師的題目錯誤,結(jié)束實體,這句應該放在最后。ARCHITECTURE ar_4

8、 OFcfq_1 ISBEGINPROCESS (CP)BEGINIFcp=1THENq <= d;nq <=NOT d;ENDIF;ENDPROCESS;END ar_4; -修改后,結(jié)束實體END ar_4應該在這個位置。自己用Quartus II軟件生成的,筆試的時候應該用筆來畫,元件名應與實體名一致cfq_1。2quartus開發(fā)工具為設計者提供了哪些庫?各有什么功能?(摘自FPGA系統(tǒng)設計與實例P32)1) IEEE庫 :被IEEE采用的標準化庫,是VHDL設計中最重要的庫;2) STD庫 :所用設計單元所共享,默認的庫;3)ASIC庫:矢量庫,該庫存放著與邏輯門一一對應

9、的實體;4) WORK庫 :用戶的VHDL 設計的現(xiàn)行工作庫用于存放用戶設計和定義的一些設計單元和程序包5) 用戶自定義庫 :設計者自己建立的設計單元資源庫。3quartus開發(fā)工具,圖形文件的擴展名是 ? 波形文件的擴展名是 ?使用VHDL語言,文本設計文件的擴展名是?圖形文件擴展名:gdf;波形文件擴展名:vwfVHDL文本設計文件擴展名:vhd4簡述FPGA的結(jié)構(gòu)FPGA由可編程邏輯塊(CLB)、輸入/輸出模塊(IOB)及可編程互連資源(PIR)等三種可編程電路和一個SRAM結(jié)構(gòu)的配置存儲單元組成。1)可編程邏輯塊(CLB):主要由邏輯函數(shù)發(fā)生器、觸發(fā)器、數(shù)據(jù)選擇器等電路組成。2)輸入/

10、輸出模塊(IOB):主要由輸入觸發(fā)器、輸入緩沖器和輸出觸發(fā)/鎖存器、輸出緩沖器組成,每個IOB控制一個引腳,它們可被配置為輸入、輸出或雙向I/O功能。3)可編程互連資源(PIR):由許多金屬線段構(gòu)成,這些金屬線段帶有可編程開關,通過自動布線實現(xiàn)各種電路的連接。實現(xiàn)FPGA內(nèi)部的CLB和CLB之間、CLB和IOB之間的連接。5什么叫功能仿真?什么叫時序仿真?、兩者有什么區(qū)別?功能仿真又稱前仿真,是在不考慮器件延時的理想情況下的一種項目驗證方法,通過功能仿真來驗證一個項目的邏輯功能是否正確。時序仿真又稱模擬仿真或后仿真,是在考慮設計項目具體適配器件的各種延時的情況下的一種項目驗證方法。時序仿真不僅

11、測試邏輯功能,還測試目標器件最差情況下的時間關系。注:功能仿真無延時(驗證邏輯是否正確 時用),時序仿真有延時(仿真出實實在在的芯片工作波形,實際芯片是有延時的)。6名詞解釋,寫出下列縮寫的中文(或者英文)含義:1. VHDL 超高速集成電路硬件描述語言 (Very-High-Speed Integrated Circuit HardwareDescription Language)2. FPGA 現(xiàn)場可編程邏輯門陣列 (FieldProgrammable Gate Array)3. RTL 寄存器傳輸級 (Register-Transfer Level)4. SOPC 可編程片上系統(tǒng) (Sy

12、stem-on-a-Programmable-Chip)5. EAB 嵌入式陣列塊 (Embedded Array Block)6. LAB 邏輯陣列塊 (Logic Array Block)三、判斷下列程序是否有錯誤,如有則指出錯誤所在,并給出完整程序。(20分)下列程序是用VHDL語言編寫的上升沿控制的D觸發(fā)器(原理圖如下)library ieee; use ieee.std_logic_unsigned.all; _use IEEE.std_logic_1164.all;_ -此D觸發(fā)器沒用到無符號算術(shù)運算,所以不用std_logic_unsigned 庫。 entity dff1 is

13、 port(clk,d:in std_logic; Q:out std_logic) _Q:out std_logic) ;_ -少了個 “;” 號end dff1; architecture one of d is _architecure one of dff1 is_ -實體名不正確,dff1begin process _process(clk)_ -VHDL中大小寫無影響begin if clk ='1' _if (clkevent and clk=1) then _ -題目要求是上升沿控制的D觸發(fā)器 then Q<=d; _Q <= d; _ -then

14、一般緊接if語句 end if; end process; end d; _end one;_ -結(jié)構(gòu)體名不正確,one 四、VHDL程序填空:(10分)下面程序是參數(shù)可定制帶計數(shù)使能異步復位計數(shù)器的VHDL描述,試補充完整。程序- N-bit Up Counter with Load, Count Enable, and- Asynchronous Resetlibrary ieee;use IEEE.std_logic_1164.all;use IEEE._ std_logic_unsigned _.all;use IEEE.std_logic_arith.all;entity count

15、er_n is_generic_ (width : integer := 8);port(data : in std_logic_vector (width-1 downto 0);load, en, clk, rst : _out_ std_logic;q : out std_logic_vector (_width-1_ downto 0);end counter_n;architecture behave of _ counter_n _ issignal count : std_logic_vector (width-1 downto 0);beginprocess(clk, rst)

16、beginif rst = '1' thencount <= _ (others => 0) _; 清零 -others=>0是比較專業(yè)的寫法,可以 count <= “00000000”;,8位標準向量,直接每一位給0;elsif _(clkevent and clk=1) _ then 邊沿檢測if load = '1' thencount <= data;_elsif_ en = '1' thencount <= count + 1;_ end if _;end if;end process;_ q &l

17、t;= count; _end behave;注:由于是電子稿,應注意下劃線。四、編程序(20分)1.已知電路原理圖如下,請用VHDL語言編寫其程序VHDL程序設計:(15分)設計一數(shù)據(jù)選擇器MUX,其系統(tǒng)模塊圖和功能表如下圖所示。試采用下面三種方式中的兩種來描述該數(shù)據(jù)選擇器MUX的結(jié)構(gòu)體。(a)用if語句 (b)用 case 語句 (c)用when else語句-庫引用-library IEEE;use IEEE.std_logic_1164.all;-實體聲明-entity myMux isport (sel:in std_logic_vector(1 downto 0); -選擇信號輸入

18、 兩位 標準邏輯向量Ain, Bin:in std_logic_vector(1 downto 0); -數(shù)據(jù)輸入 兩位 標準邏輯向量Cout :out std_logic_vector(1 downto 0) -數(shù)據(jù)輸出);end myMux;-結(jié)構(gòu)體behave描述-architecture behave of myMux is -采用case語句描述beginprocess(sel, Ain, Bin)begincase sel iswhen "00" => Cout <= Ain or Bin;when "01" => Cout

19、 <= Ain xor Bin;when "10" => Cout <= Ain and Bin;when "11" => Cout <= Ain nor Bin;when others => Cout <= "XX"end case;end process;end behave;-結(jié)構(gòu)體behave2描述-architecture behave2 of myMux is -采用when else語句描述beginCout <= Ain or Bin when sel="00&

20、quot; else Ain xor Bin when sel="01" else Ain and Bin when sel="10" else Ain not Bin when sel="11" else "XX" when sel=others ;end behave2;注:這里我只寫了 case語句和when else語句,if語句沒寫,并且我這是自己寫的,與葉深 上傳的有點區(qū)別,建議參考葉深的資料??荚嚂r我們寫完一個VHDL,直接在結(jié)構(gòu)體下補充另一個結(jié)構(gòu)體就行。2(5分)用元件例化語句設計如圖所示電路。元件為2輸入與非門。-庫引用-lib

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論