可編程邏輯器件復習題_第1頁
可編程邏輯器件復習題_第2頁
可編程邏輯器件復習題_第3頁
可編程邏輯器件復習題_第4頁
可編程邏輯器件復習題_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、.可編程邏輯習題一、選擇題1. 一個項目的輸入輸出端口是定義在 A 。 A. 實體中 B. 結(jié)構(gòu)體中 C. 任何位置 D. 進程體 2. 描述項目具有邏輯功能的是 B 。 A. 實體 B. 結(jié)構(gòu)體 C. 配置 D. 進程 3. 關鍵字ARCHITECTURE定義的是 A 。A. 結(jié)構(gòu)體 B. 進程 C. 實體 D. 配置 4. MAXPLUSII中編譯VHDL源程序時要求 C 。A.文件名和實體可不同名 B.文件名和實體名無關 C. 文件名和實體名要相同 D. 不確定 5. 1987標準的VHDL語言對大小寫是 D 。 A. 敏感的 B. 只能用小寫 C. 只能用大寫 D. 不敏感 6. 關于

2、1987標準的VHDL語言中,標識符描述正確的是 A 。 A. 必須以英文字母開頭 B.可以使用漢字開頭 C.可以使用數(shù)字開頭 D.任何字符都可以 7. 關于1987標準的VHDL語言中,標識符描述正確的是 B 。 A. 下劃線可以連用 B. 下劃線不能連用 C. 不能使用下劃線 D. 可以使用任何字符 8. 符合1987VHDL標準的標識符是 A 。 A. A_2 B. A+2 C. 2A D. 229. 符合1987VHDL標準的標識符是 A 。 A. a_2_3 B. a_2 C. 2_2_a D. 2a 10. 不符合1987VHDL標準的標識符是 C 。 A. a_1_in B. a

3、_in_2 C. 2_a D. asd_1 11. 不符合1987VHDL標準的標識符是 D 。 A. a2b2 B. a1b1 C. ad12 D. %50 12. VHDL語言中變量定義的位置是 D 。 A. 實體中中任何位置 B. 實體中特定位置 C. 結(jié)構(gòu)體中任何位置 D. 結(jié)構(gòu)體中特定位置 13. VHDL語言中信號定義的位置是 D 。 A. 實體中任何位置 B. 實體中特定位置 C. 結(jié)構(gòu)體中任何位置D. 結(jié)構(gòu)體中特定位置14. 變量是局部量可以寫在 B 。 A. 實體中 B. 進程中 C. 線粒體 D. 種子體中 15. 變量和信號的描述正確的是 A 。 A. 變量賦值號是:=

4、B. 信號賦值號是:= C. 變量賦值號是<= D. 二者沒有區(qū)別 16. 變量和信號的描述正確的是 B 。 A. 變量可以帶出進程 B. 信號可以帶出進程 C. 信號不能帶出進程 D. 二者沒有區(qū)別17. 關于VHDL數(shù)據(jù)類型,正確的是 D 。 A. 數(shù)據(jù)類型不同不能進行運算 B. 數(shù)據(jù)類型相同才能進行運算 C. 數(shù)據(jù)類型相同或相符就可以運算 D. 運算與數(shù)據(jù)類型無關 18. 下面數(shù)據(jù)中屬于實數(shù)的是 A 。 A. 4.2 B. 3 C. 1 D. “11011” 19. 下面數(shù)據(jù)中屬于位矢量的是 D 。A. 4.2 B. 3 C. 1 D. “11011” 20. 關于VHDL數(shù)據(jù)類型

5、,正確的是 。 A. 用戶不能定義子類型 B. 用戶可以定義子類型 C. 用戶可以定義任何類型的數(shù)據(jù) D. 前面三個答案都是錯誤的 21. 可以不必聲明而直接引用的數(shù)據(jù)類型是 C 。 A. STD_LOGIC B. STD_LOGIC_VECTOR C. BIT D. 前面三個答案都是錯誤的 22. STD_LOGIG_1164中定義的高阻是字符 D 。 A. X B. x C. z D. Z 23. STD_LOGIG_1164中字符H定義的是 A 。 A. 弱信號1 B. 弱信號0 C. 沒有這個定義 D. 初始值 24. 使用STD_LOGIG_1164使用的數(shù)據(jù)類型時 B 。 A.可以

6、直接調(diào)用 B.必須在庫和包集合中聲明 C.必須在實體中聲明 D. 必須在結(jié)構(gòu)體中聲明 25. 關于轉(zhuǎn)化函數(shù)正確的說法是 。 A. 任何數(shù)據(jù)類型都可以通過轉(zhuǎn)化函數(shù)相互轉(zhuǎn)化 B. 只有特定類型的數(shù)據(jù)類型可以轉(zhuǎn)化 C. 任何數(shù)據(jù)類型都不能轉(zhuǎn)化 D. 前面說法都是錯誤的 26. VHDL運算符優(yōu)先級的說法正確的是 C 。 A. 邏輯運算的優(yōu)先級最高 B. 關系運算的優(yōu)先級最高 C. 邏輯運算的優(yōu)先級最低 D. 關系運算的優(yōu)先級最低 27. VHDL運算符優(yōu)先級的說法正確的是 A 。 A. NOT的優(yōu)先級最高 B. AND和NOT屬于同一個優(yōu)先級 C. NOT的優(yōu)先級最低 D. 前面的說法都是錯誤的 2

7、8. VHDL運算符優(yōu)先級的說法正確的是 D 。 A. 括號不能改變優(yōu)先級 B. 不能使用括號 C. 括號的優(yōu)先級最低 D. 括號可以改變優(yōu)先級 29. 如果a=1,b=0,則邏輯表達式(a AND b) OR( NOT b AND a)的值是 B 。 A. 0 B. 1 C. 2 D. 不確定 30. 關于關系運算符的說法正確的是 。 A. 不能進行關系運算 B. 關系運算和數(shù)據(jù)類型無關 C. 關系運算數(shù)據(jù)類型要相同 D. 前面的說法都錯誤 31. 轉(zhuǎn)換函數(shù)TO_BITVECTOR(A)的功能是 。 A. 將STDLOGIC_VECTOR轉(zhuǎn)換為BIT_VECTOR B. 將REAL轉(zhuǎn)換為BI

8、T_VECTOR C. 將TIME轉(zhuǎn)換為BIT_VECTOR D. 前面的說法都錯誤 32. VHDL中順序語句放置位置說法正確的是 。 A.可以放在進程語句中 B. 可以放在子程序中 C. 不能放在任意位置 D. 前面的說法都正確 33. 不屬于順序語句的是 B 。 A. IF語句 B. LOOP語句 C. PROCESS語句 D. CASE語句 34. 正確給變量X賦值的語句是 B 。 A. X<=A+B; B. X:=A+b; C. X=A+B; D. 前面的都不正確 35. EDA的中文含義是 A 。 A. 電子設計自動化 B. 計算機輔助計算 C. 計算機輔助教學 D. 計算機

9、輔助制造 36. 可編程邏輯器件的英文簡稱是 。 A. FPGA B. PLA C. PAL D. PLD 37. 現(xiàn)場可編程門陣列的英文簡稱是 。 A. FPGA B. PLA C. PAL D. PLD 38. 基于下面技術的PLD器件中允許編程次數(shù)最多的是 。 A. FLASH B. EEROM C. SRAM D. PROM 39. 在EDA中,ISP的中文含義是 。 A. 網(wǎng)絡供應商 B. 在系統(tǒng)編程 C. 沒有特定意義 D. 使用編程器燒寫PLD芯片 40. 在EDA中,IP的中文含義是 。 A. 網(wǎng)絡供應商 B. 在系統(tǒng)編程 C. 沒有特定意義 D. 知識產(chǎn)權核41. EPF10

10、K20TC144-4具有多少個管腳 A 。 A. 144個 B. 84個 C. 15個 D. 不確定 42. EPF10K20TC144-X器件,如果X的值越小表示 。 A. 器件的工作頻率越小 B. 器件的管腳越少 C. 器件的延時越小 D. 器件的功耗越小 43. 如果a=1,b=1,則邏輯表達式(a XOR b) OR( NOT b AND a)的值是 A 。 A. 0 B. 1 C. 2 D. 不確定 44. 執(zhí)行下列語句后Q的值等于 B 。SIGNAL E: STD_LOGIC_VECTOR (2 TO 5);SIGNAL Q: STD_LOGIC_VECTOR (9 DOWNTO

11、2);E<=(2=>1, 4=>0, OTHERS=>1);Q<=(2=>E (2), 4=>E (3), 5=>1, 7=>E (5), OTHERS=>E (4);A “11011011” B. “00101101” C. “11011001” D. “00101100” 45. VHDL文本編輯中編譯時出現(xiàn)如下的報錯信息Error: VHDL syntax error: signal declaration must have ;,but found begin instead. 其錯誤原因是 A 。A. 信號聲明缺少分號。B.

12、 錯將設計文件存入了根目錄,并將其設定成工程。C. 設計文件的文件名與實體名不一致。 D. 程序中缺少關鍵詞。46. VHDL文本編輯中編譯時出現(xiàn)如下的報錯信息Error: VHDL syntax error: choice value length must match selector expression value length 其錯誤原因是 A 。A. 表達式寬度不匹配。 B. 錯將設計文件存入了根目錄,并將其設定成工程。C. 設計文件的文件名與實體名不一致。 D. 程序中缺少關鍵詞。47. MAX+PLUSII的設計文件不能直接保存在 B 。 A 硬盤 B. 根目錄 C. 文件夾

13、D. 工程目錄 48. MAXPLUSII是哪個公司的軟件 A 。 A. ALTERA B. ATMEL C. LATTICE D. XILINX 49. MAXPLUSII不支持的輸入方式是 D 。 A. 文本輸入 B. 原理圖輸入 C. 波形輸入 D. 矢量輸入 50. MAXPLUSII中原理圖的后綴是 B 。 A. DOC B. GDF C. BMP D. JIF 51. 在一個VHDL設計中Idata是一個信號,數(shù)據(jù)類型為std_logic_vector,試指出下面那個賦值語句是錯誤的。 D 。 A.idata <= “00001111”; B.idata <= b”00

14、00_1111”;C.idata <= X”AB” D. idata <= B”21”;52. 在VHDL語言中,下列對時鐘邊沿檢測描述中,錯誤的是 D 。 A.if clkevent and clk = 1 then B.if falling_edge(clk) thenC.if clkevent and clk = 0 then D.if clkstable and not clk = 1 then53. 下面對利用原理圖輸入設計方法進行數(shù)字電路系統(tǒng)設計的描述中,那一種說法是不正確的。 。 A.原理圖輸入設計方法直觀便捷,但不適合完成較大規(guī)模的電路系統(tǒng)設計;B.原理圖輸入設計方

15、法一般是一種自底向上的設計方法;C.原理圖輸入設計方法無法對電路進行功能描述;D.原理圖輸入設計方法也可進行層次化設計。54. 在一個VHDL設計中idata是一個信號,數(shù)據(jù)類型為integer,數(shù)據(jù)范圍0 to 127,下面哪個賦值語句是正確的。 C 。 A.idata := 32; B.idata <= 16#A0#; C.idata <= 16#7#E1; D.idata := B#1010#;55. 下列那個流程是正確的基于EDA軟件的FPGA / CPLD設計流程: A 。 A.原理圖/HDL文本輸入功能仿真綜合適配編程下載硬件測試B.原理圖/HDL文本輸入適配綜合功能仿

16、真編程下載硬件測試;C.原理圖/HDL文本輸入功能仿真綜合編程下載適配硬件測試;D.原理圖/HDL文本輸入功能仿真適配編程下載綜合硬件測試56. 在VHDL語言中,下列對進程(PROCESS)語句的語句結(jié)構(gòu)及語法規(guī)則的描述中,正確的是 。 A.PROCESS為一無限循環(huán)語句;敏感信號發(fā)生更新時啟動進程,執(zhí)行完成后,等待下一次進程啟動。 B.敏感信號參數(shù)表中,應列出進程中使用的所有輸入信號;C.進程由說明部分、結(jié)構(gòu)體部分、和敏感信號參數(shù)表三部分組成;D.當前進程中聲明的信號也可用于其他進程。57. 對于信號和變量的說法,哪一個是不正確的: A 。 A.信號用于作為進程中局部數(shù)據(jù)存儲單元B.變量的

17、賦值是立即完成的C.信號在整個結(jié)構(gòu)體內(nèi)的任何地方都能適用D.變量和信號的賦值符號不一樣58. VHDL語言共支持四種常用庫,其中哪種庫是用戶的VHDL設計現(xiàn)行工作庫: 。 A.IEEE庫B.VITAL庫 C.STD庫D.WORK工作庫59. 下列語句中,不屬于并行語句的是: B 。 A.進程語句B.CASE語句 C.元件例化語句D.WHENELSE語句60. 下面哪一條命令是MAX+PLUSII在時序仿真時執(zhí)行加載節(jié)點的命令? C 。 A. file>set project to current file B. assign>pin/location chipC. node>

18、enter node from SNFD. file>create default symbol61. 在EDA工具中,能將硬件描述語言轉(zhuǎn)換為硬件電路的重要工具軟件稱為 D 。 A.仿真器B.綜合器C.適配器D.下載器62. VHDL文本編輯中編譯時出現(xiàn)如下的報錯信息Error: Cant open VHDL “WORK” 其錯誤原因是 B 。A. 錯將設計文件的后綴寫成.tdf,而非.vhd 。B. 錯將設計文件存入了根目錄,并將其設定成工程。C. 設計文件的文件名與實體名不一致。D. 程序中缺少關鍵詞。63. 在VHDL的CASE語句中,條件句中的“=>”不是操作符號,它只相當

19、與 B 作用。A. IFB. THENC. ANDD. OR64. 下面哪一條命令是MAXPLUSII軟件中引腳鎖定的命令 C 。A file>set project to current fileBnode>enter node from SNFC assign>pin/location chipD file>create default symbol65. 下列關于信號的說法不正確的是 C 。A . 信號相當于器件內(nèi)部的一個數(shù)據(jù)暫存節(jié)點。B. 信號的端口模式不必定義,它的數(shù)據(jù)既可以流進,也可以流出。C. 在同一進程中,對一個信號多次賦值,其結(jié)果只有第一次賦值起作用。

20、D. 信號在整個結(jié)構(gòu)體內(nèi)的任何地方都能適用。66. 下面哪一個可以用作VHDL中的合法的實體名 D 。A. ORB. VARIABLE C. SIGNALD. OUT167. VHDL文本編輯中編譯時出現(xiàn)如下的報錯信息Error:Line1,File e:muxfilemux21.tdf: TDF syntax error 其錯誤原因是 A 。A. 錯將設計文件的后綴寫成.tdf 而非.vhd 。B. 錯將設計文件存入了根目錄,并將其設定成工程。C. 設計文件的文件名與實體名不一致。D. 程序中缺少關鍵詞。68. 下列關于變量的說法正確的是 A 。A. 變量是一個局部量,它只能在進程和子程序中

21、使用。B. 變量的賦值不是立即發(fā)生的,它需要有一個延時。C. 在進程的敏感信號表中,既可以使用信號,也可以使用變量。D. 變量賦值的一般表達式為:目標變量名<= 表達式。69. 下列關于CASE語句的說法不正確的是 B 。A. 條件句中的選擇值或標識符所代表的值必須在表達式的取值范圍內(nèi)。B. CASE語句中必須要有WHEN OTHERS=>NULL;語句。C. CASE語句中的選擇值只能出現(xiàn)一次,且不允許有相同的選擇值的條件語句出現(xiàn) 。D. CASE語句執(zhí)行必須選中,且只能選中所列條件語句中的一條。70. VHDL中,為目標變量賦值符號是 D 。A. =:B. =C. <=D

22、.:=71. 在VHDL中,可以用語句 D 表示檢測clock下降沿。A. clock event B. clock event and clock=1 C. clock=0 D. clock event and clock=072.在VHDL的FOR_LOOP語句中的循環(huán)變量是一個臨時變量,屬于LOOP語句的局部量, B 事先聲明。 A. 必須B. 不必C. 其類型要D.其屬性要73. 在VHDL中,語句”FOR I IN 0 TO 7 LOOP ”定義循環(huán)次數(shù)為 A 次。A. 8B. 7C. 0D.174. 在VHDL中,PROCESS結(jié)構(gòu)內(nèi)部是由 B 語句組成的。A. 順序B. 順序和并

23、行C. 并行D.任何75. 執(zhí)行MAX+PLUSII的 C 命令,可以對設計的電路進行仿真。A.Creat Default SymbolB.CompilerC.SimulatorD.Programmer76. 在VHDL中,PROCESS本身是 C 語句。A. 順序B.順序和并行C.并行D.任何77. 下面哪一個是VHDL中的波形編輯文件的后綴名 B 。A. gdfB. scfC. sys D. tdf78. 在元件例化語句中,用 D 符號實現(xiàn)名稱映射,將例化元件端口聲明語句中的信號與PORT MAP()中的信號名關聯(lián)起來。A. =B. :=C. <=D.=>79.在VHDL中,含

24、WAIT語句的進程PROCESS的括弧中 B 再加敏感信號,否則則是非法的。A. 可以B.不能C. 必須D. 有時可以80.在MAX+PLUSII集成環(huán)境下為圖形文件產(chǎn)生一個元件符號的主要作用是 D 。 A. 綜合B. 編譯C. 仿真D.被高層次電路設計調(diào)用81.在MAX+PLUSII工具軟件中,完成網(wǎng)表提取、數(shù)據(jù)庫建立、邏輯綜合、邏輯分割、適配、延時網(wǎng)表提取和編程文件匯編等操作,并檢查設計文件是否正確的過程稱為 。A. 編輯B. 編譯C. 綜合D. 編程82. VHDL文本編輯中編譯時出現(xiàn)如下的報錯信息Error: VHDL Design File “mux21” must contain

25、an entity of the same name 其錯誤原因是 C 。A. 錯將設計文件的后綴寫成.tdf 而非.vhd 。B. 錯將設計文件存入了根目錄,并將其設定成工程。 C. 設計文件的文件名與實體名不一致。 D. 程序中缺少關鍵詞。83. 執(zhí)行下列語句后Q的值等于 D 。SIGNAL E: STD_LOGIC_VECTOR (2 TO 5);SIGNAL Q: STD_LOGIC_VECTOR (9 DOWNTO 2);E<=(2=>0, 4=>0, OTHERS=>1);Q<=(2=>E (2), 4=>E (3), 5=>1, 7

26、=>E (5), OTHERS=>E (4);A “11011011” B. “00110100” C. “11011001” D. “00101100” 84. 綜合是EDA設計流程的關鍵步驟,綜合就是把抽象設計層次中的一種表示轉(zhuǎn)化成另一種表示的過程;在下面對綜合的描述中, 是錯誤的。A. 綜合就是將電路的高級語言轉(zhuǎn)化成低級的,可與FPGA / CPLD的基本結(jié)構(gòu)相映射的網(wǎng)表文件; B. 為實現(xiàn)系統(tǒng)的速度、面積、性能的要求,需要對綜合加以約束,稱為綜合約束;C. 綜合可理解為,將軟件描述與給定的硬件結(jié)構(gòu)用電路網(wǎng)表文件表示的映射過程,并且這種映射關系不是唯一的。 D. 綜合是純軟件

27、的轉(zhuǎn)換過程,與器件硬件結(jié)構(gòu)無關;85. 關于VHDL中的數(shù)字,請找出以下數(shù)字中數(shù)值最小的一個: A. 2#1111_1110#B. 8#276# C. 10#170#D. 16#E#E186. 以下對于進程PROCESS的說法,正確的是: C 。A. 進程之間可以通過變量進行通信 B. 進程內(nèi)部由一組并行語句來描述進程功能C. 進程語句本身是并行語句 D.一個進程可以同時描述多個時鐘信號的同步時序邏輯87. 進程中的信號賦值語句,其信號更新是 。A.按順序完成; B.比變量更快完成;C.在進程的最后完成; D.以上都不對。88關于VHDL中的數(shù)字,請找出以下數(shù)字中最大的一個: 。A2#1111

28、_1110# B.8#276# C. 0#170# D.6#E#E189VHDL語言是一種結(jié)構(gòu)化設計語言;一個設計實體(電路模塊)包括實體與結(jié)構(gòu)體兩部分,結(jié)構(gòu)體描述 。A器件外部特性; B器件的內(nèi)部功能;C器件的綜合約束;C 器件外部特性與內(nèi)部功能。90下列標識符中, B 是不合法的標識符。A. State0B. 9moonC. Not_Ack_0D. signal91在VHDL中,IF語句中至少應有1個條件句,條件句必須由 表達式構(gòu)成。A. BITB. STD_LOGICC. BOOLEAND. INTEGER92. 在VHDL中 D 不能將信息帶出對它定義的當前設計單元。A. 信號B. 常

29、量C. 數(shù)據(jù)D. 變量93.在VHDL中,為定義的信號賦初值,應該使用_D_ 符號。A. =:B. =C. :=D. <=94.在VHDL中,一個設計實體可以擁有一個或多個 D A. 設計實體B. 結(jié)構(gòu)體 C. 輸入 D. 輸出95. 執(zhí)行下列語句后Q的值等于 A 。SIGNAL E: STD_LOGIC_VECTOR (2 TO 5);SIGNAL Q: STD_LOGIC_VECTOR (9 DOWNTO 2);E<=(2=>1, 4=>1, OTHERS=>0);Q<=(2=>E (2), 4=>E (3), 5=>1, 7=>

30、E (5), OTHERS=>E (4); A “11011011” B. “00110100” C. “11011001” D. “00101100” 96. 在VHDL的IEEE標準庫中,預定義的標準邏輯位STD_LOGIC的數(shù)據(jù)類型中是用 表示的。 A 小寫字母和數(shù)字 B. 大寫字母數(shù)字 C.大或小寫字母和數(shù)字 D. 全部是數(shù)字 97. 執(zhí)行MAX+PLUSII的 A 命令,可以為設計電路建立一個元件符號。A create default symbol B. simulator C. compiler D. timing analyzer 98. 在VHDL中,條件信號賦值語句WH

31、EN_ELSE屬于 語句。A 并行和順序 B. 順序 C. 并行 D. 不存在的 99. 在VHDL的IEEE標準庫中,預定義的標準邏輯數(shù)據(jù)STD_LOGIC有 C 種邏輯值。A 2 B. 3 C. 9 D. 8 100.一個能為VHDL綜合器接受,并能作為一個獨立的設計單元的完整的VHDL程序成為 。A 設計輸入 B. 設計輸出 C. 設計實體 D. 設計結(jié)構(gòu) 二、填空題 1EDA設計流程包括 設計輸入、設計實現(xiàn)、實際設計檢驗和 下載編程四個步驟。2EDA設計輸入主要包括圖形輸入、HDL文本輸入和狀態(tài)機輸入。3時序仿真是在設計輸入完成之后,選擇具體器件并完成布局

32、、布線之后進行的時序關系仿真,因此又稱為功能仿真。 4VHDL的數(shù)據(jù)對象包括變量、常量和信號,它們是用來存放各種類型數(shù)據(jù)的容器。5圖形文件設計結(jié)束后一定要通過仿真,檢查設計文件是否正確。6以EDA方式設計實現(xiàn)的電路設計文件,最終可以編程下到FPGA 和CPLD 芯片中,完成硬件設計和驗證。7MAX+PLUS的文本文件類型是(后綴名).VHD。8在PC上利用VHDL進行項目設計,不允許在根目錄下進行,必須在根目錄為設計建立一個工程目錄。9VHDL源程序的文件名應與實體名相同,否則無法通過編譯。三、名詞解釋題:(本大題共3題,每小題3分,共計9分)1. ASIC專用集成電路2.

33、 FPGA現(xiàn)場可編程門陣列3. CPLD復雜可編程邏輯器件4. EDA電子設計自動化5. IP知識產(chǎn)權核6. SOC單芯片系統(tǒng)7. VHDL和FPGA: 超高速硬件描述語言      現(xiàn)場可編程門陣列  四、VHDL程序填空1. 下面程序是1位十進制計數(shù)器的VHDL描述,試補充完整。LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CNT10 ISPORT ( CLK : IN STD_LOGIC ; Q : OUT

34、 STD_LOGIC_VECTOR(3 DOWNTO 0) ;END CNT10;ARCHITECTURE bhv OF CNT10 ISSIGNAL Q1 : STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINPROCESS (CLK) BEGINIF CLK'EVENT AND CLK = '1' THEN- 邊沿檢測IF Q1 > 10 THENQ1 <= (OTHERS => '0');- 置零ELSEQ1 <= Q1 + 1 ;- 加1END IF;END IF;END PROCESS ;Q <=

35、 Q1;END bhv;2. 下面是一個多路選擇器的VHDL描述,試補充完整。LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY bmux ISPORT (sel : IN STD_LOGIC;A, B : IN STD_LOGIC_VECTOR(7 DOWNTO 0);Y: OUT STD_LOGIC_VECTOR(7 DOWNTO 0) ;END bmux;ARCHITECTURE bhv OF bmux ISBEGINy <= A when sel = '1' ELSE B;END bhv;三、VHDL程序改錯仔細閱讀下列

36、程序,回答問題LIBRARY IEEE;- 1USE IEEE.STD_LOGIC_1164.ALL;- 2ENTITY LED7SEG IS- 3PORT (A : IN STD_LOGIC_VECTOR(3 DOWNTO 0);- 4CLK : IN STD_LOGIC;- 5LED7S : OUT STD_LOGIC_VECTOR(6 DOWNTO 0);- 6END LED7SEG;- 7ARCHITECTURE one OF LED7SEG IS- 8SIGNAL TMP : STD_LOGIC;- 9BEGIN- 10SYNC : PROCESS(CLK, A)- 11BEGIN-

37、 12IF CLK'EVENT AND CLK = '1' THEN- 13TMP <= A;- 14END IF;- 15END PROCESS;- 16OUTLED : PROCESS(TMP)- 17BEGIN- 18CASE TMP IS- 19 WHEN "0000" => LED7S <= "0111111"- 20 WHEN "0001" => LED7S <= "0000110"- 21 WHEN "0010" => L

38、ED7S <= "1011011"- 22 WHEN "0011" => LED7S <= "1001111"- 23 WHEN "0100" => LED7S <= "1100110"- 24 WHEN "0101" => LED7S <= "1101101"- 25 WHEN "0110" => LED7S <= "1111101"- 26 WHEN &quo

39、t;0111" => LED7S <= "0000111"- 27 WHEN "1000" => LED7S <= "1111111"- 28 WHEN "1001" => LED7S <= "1101111"- 29END CASE;- 30END PROCESS;- 31END one;- 321. 在程序中存在兩處錯誤,試指出,并說明理由:第14行 TMP附值錯誤第29與30行之間,缺少WHEN OTHERS語句2. 修改相應行的程序:錯誤1行

40、號: 9 程序改為: TMP : STD_LOGIC_VECTOR(3 DOWNTO 0);錯誤2行號: 29 程序改為:該語句后添加 WHEN OTHERS => LED7S <= "0000000"五、閱讀下列VHDL程序,畫出原理圖(RTL級)LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY HAD ISPORT (a : IN STD_LOGIC;b : IN STD_LOGIC;c : OUT STD_LOGIC;d : OUT STD_LOGIC);END ENTITY HAD;ARCHITECTURE

41、fh1 OF HAD ISBEGINc <= NOT(a NAND b);d <= (a OR b)AND(a NAND b);END ARCHITECTURE fh1;六、請按題中要求寫出相應VHDL程序1. 帶計數(shù)使能的異步復位計數(shù)器輸入端口:clk時鐘信號rst異步復位信號en計數(shù)使能load同步裝載data(裝載)數(shù)據(jù)輸入,位寬為10輸出端口:q計數(shù)輸出,位寬為10LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CNT1024 ISPORT (CLK, RST,

42、EN, LOAD: IN STD_LOGIC;DATA : IN STD_LOGIC_VECTOR (9 DOWNTO 0);Q : OUT STD_LOGIC_VECTOR (9 DOWNTO 0) );END CNT1024;ARCHITECTURE ONE OF CNT1024 ISBEGINPROCESS (CLK, RST, EN, LOAD, DATA)VARIABLE Q1 : STD_LOGIC_VECTOR (9 DOWNTO 0);BEGINIF RST = '1' THENQ1 := (OTHERS => '0');ELSIF CLK

43、 = '1' AND CLK'EVENT THENIF LOAD = '1' THEN Q1 := DATA;ELSEIF EN = '1' THENQ1 := Q1 + 1;END IF;END IF; END IF;Q <= Q1;END PROCESS;END ONE;2. 看下面原理圖,寫出相應VHDL描述LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY TRI_STATE ISPORT (E, A : IN STD_LOGIC;Y : INOUT STD_LOGIC;B : O

44、UT STD_LOGIC);END TRI_STATE;ARCHITECTURE BEHAV OF TRI_STATE ISBEGINPROCESS (E, A, Y)BEGINIF E = '0' THENB <= Y;Y <= 'Z'ELSEB <= 'Z'Y <= A;END IF;END PROCESS;END BEHAV;七、綜合題下圖是一個A/D采集系統(tǒng)的部分,要求設計其中的FPGA采集控制模塊,該模塊由三個部分構(gòu)成:控制器(Control)、地址計數(shù)器(addrcnt)、內(nèi)嵌雙口RAM(adram)。控制器(

45、control)是一個狀態(tài)機,完成AD574的控制,和adram的寫入操作。Adram是一個LPM_RAM_DP單元,在wren為1時允許寫入數(shù)據(jù)。試分別回答問題下面列出了AD574的控制方式和控制時序圖AD574邏輯控制真值表(X表示任意)CECSRCK12_8A0工 作 狀 態(tài)0XXXX禁止X1XXX禁止100X0啟動12位轉(zhuǎn)換100X1啟動8位轉(zhuǎn)換1011X12位并行輸出有效10100高8位并行輸出有效10101低4位加上尾隨4個0有效AD574工作時序:1. 要求AD574工作在12位轉(zhuǎn)換模式,K12_8、A0在control中如何設置K12_8為1,A0為02. 試畫出control

46、的狀態(tài)機的狀態(tài)圖類似書上圖8-43. 對地址計數(shù)器模塊進行VHDL描述輸入端口:clkinc 計數(shù)脈沖 cntclr計數(shù)器清零輸出端口:rdaddrRAM讀出地址,位寬10位library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity addr_cnt isport (clkinc, cntclr : in std_logic;wraddr : out std_logic_vector (9 downto 0) );end addr_cnt;architecture one of addr_cnt

47、 issignal tmp : std_logic_vector (9 downto 0);beginprocess (clkinc, cntclr)beginif clkinc'event and clkinc = '1' thenif cntclr = '1' thentmp <= (others => '0');elsetmp <= tmp + 1;end if;end if;end process;wraddr <= tmp;end one;4. 根據(jù)狀態(tài)圖,試對control進行VHDL描述library

48、 ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity control isport (addata : in std_logic_vector (11 downto 0);status, clk : in std_logic;cs, ce, a0, rc, k12_8, clkinc : out std_logic;rddata : out std_logic_vector (11 downto 0) );end control;architecture behav of control istype

49、con_st is (s0, s1, s2, s3, s4);signal cst, nst : con_st;signal lock : std_logic;signal reg12 : std_logic_vector (11 downto 0);begina0 <= '0'k12_8 <= '1'ce <= '1'cs <= '0'REGP : process (clk)beginif clk'event and clk = '1' thencst <= nst;end

50、if;end process;COMP : process (cst, status, addata)begincase (cst) iswhen s0 => rc <= '1' lock <= '0' nst <= s1;when s1 => rc <= '0' lock <= '0' nst <= s2;when s2 => if status = '1' then nst <= s3; end if;rc <= '1' lock

51、 <= '0'when s3 => rc <= '1' lock <= '1' nst <= s4;when s4 => rc <= '1' lock <= '0' nst <= s0;when others => nst <= s0;end case;end process;LOCKP : process (lock)beginif lock = '1' and lock'event thenreg12 <= addata;end if;end process;rddata <= reg12;clkinc <= lock; -(或者為NOT LOCK,延后半個時鐘)end behav;5. 已知adram的端口描述如下

溫馨提示

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

評論

0/150

提交評論