EDA技術與項目訓練_第1頁
EDA技術與項目訓練_第2頁
EDA技術與項目訓練_第3頁
EDA技術與項目訓練_第4頁
EDA技術與項目訓練_第5頁
已閱讀5頁,還剩37頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、共享知識分享快樂 盛年不重來,一日難再晨。及時宜自勉,歲月不待人。 EDA技術與項目訓練課程試題庫 選擇題 1. 一個項目的輸入輸出端口是定義在。 A. 實體中B.結構體中C.任何位置D.進程體 2. 描述項目具有邏輯功能的是。 A. 實體B.結構體 C.配置D.進程 3. 關鍵字 ARCHITECTURE 定義的是。 A. 結構體B.進程 C.實體D.配置 4. MAXPLUSII中編譯VHDL源程序時要求。 A. 文件名和實體可以不同名B.文件名和實體名無關 C.文件名和實體名要相同D.不確定 5. 1987標準的VHDL語言對大小寫是。 A. 敏感的B.只能用小寫C.只能用大寫D.不敏感

2、 6. 關于1987標準的VHDL語言中,標識符描述正確的是。 A. 必須以英文字母開頭B.可以使用漢字開頭 C.可以使用數字開頭D.任何字符都可以 7. 關于1987標準的VHDL語言中,標識符描述正確的是。 A. 下劃線可以連用B.下劃線不能連用 C.不能使用下劃線D.可以使用任何字符 8. VHDL語言中變量定義的位置是。 A. 實體中中任何位置B.實體中特定位置 C.結構體中任何位置 D.結構體中特定位置 9. VHDL語言中信號定義的位置是。 A. 實體中任何位置B.實體中特定位置 C.結構體中任何位置D.結構體中特定位置 10. 變量是局部量可以寫在。 A.實體中B.進程中 C.線

3、粒體D.種子體中 11. 變量和信號的描述正確的是。 A.變量賦值號是:= B.信號賦值號是:= C.變量賦值號是= D.二者沒有區(qū)別 12. 變量和信號的描述正確的是。 A.變量可以帶出進程B.信號可以帶出進程 C.信號不能帶出進程D.二者沒有區(qū)別 13. 關于VHDL數據類型,正確的是。 A.數據類型不同不能進行運算B.數據類型相同才能進行運算 C.數據類型相同或相符就可以運算D.運算與數據類型無關 14. 使用STD_LOGIG_1164使用的數據類型時。 A.可以直接調用B.必須在庫和包集合中聲明 C.必須在實體中聲明D.必須在結構體中聲明 15. 關于轉化函數正確的說法是。 A.任何

4、數據類型都可以通過轉化函數相互轉化B.只有特定類型的數據類型可以轉化 C.任何數據類型都不能轉化D.前面說法都是錯誤的 16. VHDL運算符優(yōu)先級的說法正確的是。 A.邏輯運算的優(yōu)先級最高B.關系運算的優(yōu)先級最高 C.邏輯運算的優(yōu)先級最低D.關系運算的優(yōu)先級最低 17. VHDL運算符優(yōu)先級的說法正確的是。 A. NOT的優(yōu)先級最高B. AND和NOT屬于同一個優(yōu)先級 C. NOT的優(yōu)先級最低D.前面的說法都是錯誤的 18. VHDL運算符優(yōu)先級的說法正確的是。 A.括號不能改變優(yōu)先級B.不能使用括號 C.括號的優(yōu)先級最低D.括號可以改變優(yōu)先級 19. 女口果 a=1,b=0,則邏輯表達式(

5、a AND b) OR( NOT b AND a )的值是。A. 0B. 1C. 2D.不確定 20. 關于關系運算符的說法正確的是。 A.不能進行關系運算B.關系運算和數據類型無關 C.關系運算數據類型要相同D.前面的說法都錯誤 21. 轉換函數TO_BITVECTOR(A)的功能是。 A.將 STDLOGIC_VECTOR 轉換為 BIT_VECTOR B.將 REAL 轉換為 BIT_VECTOR C.將 TIME 轉換為 BIT_VECTOR 22. VHDL中順序語句放置位置說法正確的是 A.可以放在進程語句中 C.不能放在任意位置 23. 不屬于順序語句的是 A. IF語句 D.前

6、面的說法都錯誤 。 B. 可以放在子程序中 D.前面的說法都正確 。 B. LOOP語句 C. PROCESS 語句D. CASE 語句 24. 正確給變量X賦值的語句是。 A. X=A+B; C. X=A+B; 25. EDA的中文含義是 A.電子設計自動化 C.計算機輔助教學 26. 可編程邏輯器件的英文簡稱是 B. X:=A+b; D.前面的都不正確 B.計算機輔助計算 D.計算機輔助制造 A. FPGA B. PLA C. PALD. PLD 27.現(xiàn)場可編程門陣列的英文簡稱是 A. FPGAB. PLA C. PALD. PLD 38. 基于下面技術的 PLD器件中允許編程次數最多的

7、是 A. FLASHB. EEROM C. SRAMD. PROM 39. 在EDA中,IP的中文含義是。 A.網絡供應商B.在系統(tǒng)編程 C. 沒有特定意義D.知識產權核 40. 女口果a=1,b=1,則邏輯表達式(a XOR b) OR ( NOT b AND a )的值是 A. 0B. 1C. 2D.不確定 41. 執(zhí)行下列語句后 Q的值等于。 SIGNAL E: STD_LOGIC_VECTOR (2 TO 5); SIGNAL Q: STD_LOGIC_VECTOR (9 DOWNTO 2); E 1 , 4= 0 , OTHERS= 1 ); QE (2), 4=E (3), 5=

8、1 , 7=E (5), OTHERS=E (4); A.“11011011”B. “00101101” C. “11011001” D.“00101100” 42. MAXPLUSII不支持的輸入方式是。 A.文本輸入B.原理圖輸入 C.波形輸入D.矢量輸入 43. MAXPLUSII中原理圖的后綴是。 A. DOCB. GDF C. BMPD. JIF 44. 在一個VHDL設計中Idata是一個信號,數據類型為std_logic_vector,試指出下面那個 賦值語句是錯誤的。 A.id ata =“ 00001111 ”;B.idata = b” 0000_1111 ”; C.idat

9、a = X” AB”D. idata ”不是操作符號,它只相當與作用。 A. IFB. THENC. ANDD. OR 54. 下列關于信號的說法不正確的是。 A .信號相當于器件內部的一個數據暫存節(jié)點。 B. 信號的端口模式不必定義,它的數據既可以流進,也可以流出。 C. 在同一進程中,對一個信號多次賦值,其結果只有第一次賦值起作用。 D. 信號在整個結構體內的任何地方都能適用。 55. 下面哪一個可以用作 VHDL中的合法的實體名。 A. ORB. VARIABLEC. SIGNALD. OUT1 56. 下列關于變量的說法正確的是 A. 變量是一個局部量,它只能在進程和子程序中使用。 B

10、. 變量的賦值不是立即發(fā)生的,它需要有一個3延時。 C. 在進程的敏感信號表中,既可以使用信號,也可以使用變量。 D. 變量賦值的一般表達式為:目標變量名NULL ;語句。 C. CASE語句中的選擇值只能出現(xiàn)一次,且不允許有相同的選擇值的條件語句出現(xiàn) D. CASE語句執(zhí)行必須選中,且只能選中所列條件語句中的一條。 58. VHDL中,為目標變量賦值符號是。 A. =:B. =C. 再加敏感信號,否則則是 A. =B. :=C. = 66. 在VHDL中,含 WAIT語句的進程 PROCESS的括弧中 非法的。 A.可以B.不能 C.必須D.有時可以 67 在 MAX+PLUSII 集成環(huán)境

11、下為圖形文件產生一個元件符號的主要作用是 A.綜合B.編譯 C.仿真 D.被高層次電路設計調用 68. 執(zhí)行下列語句后Q的值等于 SIGNAL E: STD_LOGIC_VECTOR (2 TO 5); SIGNAL Q: STD_LOGIC_VECTOR (9 DOWNTO 2); E 0 , 4= 0 , OTHERS= 1 ); QE (2), 4=E (3), 5= 1 , 7=E (5), OTHERS=E (4); A.“11011011”B. “00110100”C. “11011001” D.“00101100” 69. 綜合是EDA設計流程的關鍵步驟,綜合就是把抽象設計層次中

12、的一種表示轉化成另一 種表示的過程;在下面對綜合的描述中,是錯誤的。 A. 綜合就是將電路的高級語言轉化成低級的,可與FPGA / CPLD的基本結構相映射的網表 文件; B. 為實現(xiàn)系統(tǒng)的速度、面積、性能的要求,需要對綜合加以約束,稱為綜合約束; C. 綜合可理解為,將軟件描述與給定的硬件結構用電路網表文件表示的映射過程,并且這 種映射關系不是唯一的。 D. 綜合是純軟件的轉換過程,與器件硬件結構無關; 70. 以下對于進程 PROCESS的說法,正確的是:。 A. 進程之間可以通過變量進行通信 B. 進程內部由一組并行語句來描述進程功能 C. 進程語句本身是并行語句 D. 一個進程可以同時

13、描述多個時鐘信號的同步時序邏輯 71. VHDL語言是一種結構化設計語言;一個設計實體(電路模塊)包括實體與結構體兩部 分,結構體描述。 A 器件外部特性; B .器件的內部功能; C.器件的綜合約束; E. 器件外部特性與內部功能。 72下列標識符中,是不合法的標識符。 A. StateOB. 9moo n C. Not_Ack_0D. sig nail 73. 在VHDL中不能將信息帶出對它定義的當前設計單元。 A.信號 B.常量 C.數據 D.變量 74. 在VHDL中,為定義的信號賦初值,應該使用符號。 A. = :B. = C. :=D. = 75在VHDL中,一個設計實體可以擁有一

14、個或多個 A.設計實體B.結構體 C.輸入D.輸出 76.在VHDL的IEEE標準庫中,預定義的標準邏輯位STD_LOGIC 的數據類型中是用 表示的。 小寫字母和數字 B.大寫字母數字C.大或小寫字母和數字D.全部是數 77. 78. A. 執(zhí)行 MAX+PLUSII 的 create default symbol 在VHDL中,條件信號賦值語句 命令,可以為設計電路建立一個元件符號。 B. simulator C. compilerD. WHEN ELSE屬于語句。 timi ng an alyzer 79. 并行和順序B.順序C.并行 在VHDL的IEEE標準庫中,預定義的標準邏輯數據S

15、TD_LOGIC有 2B. 3 D. A . D. 80. 一個能為VHDL綜合器接受,并能作為一個獨立的設計單元的完整的 為 不存在的 種邏輯值。 C. 9 VHDL程序成 A.設計輸入 B.設計輸出C.設計實體 D.設計結構 EDA技術與項目訓練課程試題庫 填空題 (一) 在下面橫線上填上合適的vhdl關鍵詞,完成2選1多路選擇器的設計。 library ieee; use ieee.std _lo gic_1164.all; 1 mux21 is port(sel:i n std_logic; a,b:in std_logic; q: out std_logic ); end mux21

16、; 2 bhv of mux21 is begin q=a whe n sel= 1 else b; end bhv; (二)在下面橫線上填上合適的語句,完成bcd-7段led顯示譯碼器的設計 library ieee ; use ieee.std_logic_1164.all; en tity bcd_7seg is port( bcd_led : in std_logic_vector(3 dow nto 0); ledseg : out std_logic_vector(6 dow nto 0); end bcd_7seg; architecture behavior of bcd_7s

17、eg is begin process(bcd_led) 3 if bcdl_l ed=0000 then ledseg=0111111; elsif beded=0001 then ledseg=0000110; elsif bcd_led=0010 then ledseg= elsif bcd_led=0011 then ledseg=1001111; elsif bcd_led=0100 then ledseg=1100110; elsif bcd_led=0101 then ledseg=1101101; elsif beded=0110 then ledseg=1111101; el

18、sif bcd_led=0111 then ledseg=0000111; elsif bcd_led=1000 then ledseg=1111111; elsif beded=1001 then ledseg=1101111; else ledseg=5; end if;end process;end behavior; (三) 在下面橫線上填上合適的語句,完成數據選擇器的設計。 library ieee; use ieee.std _lo gic_1164.all; en tity mux16 is port( d0, d1, d2, d3: in std_logic_vector(15

19、 downto 0); 6dow nto 0); sel:in std_logic_vector( y:out std_logic_vector(15 dow nto 0); en d; architecture one of mux16 is begin with 7 select y = d0 when 00, di when 01, d2 whe n 10, d3 whe n 8 end; (四) 在下面橫線上填上合適的語句,完成jk觸發(fā)器的設計。 說明:設計一個異步復位/置位jk觸發(fā)器,其真值表如下: library ieee; use ieee.std_logic_1164.all;

20、 en tity jkffl is port (pset,clr,clk,j,k: in std_logic; q: out std_logic); end jkff1; architecture maxpld of jkff1 is signal temp:std_logic; begin process(pset,clr,clk) begin if (pset=0a nd clr=1 ) the n temp=1; elsif (pset=1a nd clr=0 ) then temp=0; elsif (pset=0and clr=0 ) then null; 9 (clkeve nt

21、and clk=1) the n 10 (j=0 and k=0) then temp=temp; elsif (j=0 and k=1) then temp=0; elsif (j=1 and k=0) then temp=1; elsif (j=1 and k=1) then temp=11 end ; end if;end if; end process;q=temp; (五) 在下面橫線上填上合適的語句,完成計數器的設計。 說明:設電路的控制端均為高電平有效,時鐘端clk,電路的預置數據輸入端為4位d,計數 輸出端也為4位q,帶同步始能en、異步復位clr和預置控制ld的六進制減法計數

22、器。 library ieee; use ieee.std _lo gic_1164.all; use ieee.std_logic_arith.all; use ieee.std_logic_ un sig ned.all; en tity cnt6 is port(e n, clr,ld,clk:in std_logic; d: in std_logic_vector(3 dow nto 0); q:out std_logic_vector(3 dow nto 0); end cn t6; architecture beha of cnt6 is sig nal qtemp:std_log

23、ic_vector(3 dow nto 0); begin process(clk,clr,ld) begin if clr=1 the nqtemp=0000; -clr=1 清零 卑微如螻蟻、堅強似大象 elsif (clkeve nt and clk=1) the n 判斷是否上升沿 if ld=1 the n qtemp= -判斷是否置位 12 the n qtemp= 13 elsif en=1 -判斷是否允許計數 等于0,計數值置 if qtemp=0000 then 5 else qtemp= 值減1 14 -否則,計數 end if; q=qtemp; end if; end

24、process; end if; beha; (六)在下面橫線上填上合適的語句,完成狀態(tài)機的設計。 說明:設計一個雙進程狀態(tài)機,狀態(tài)0時如果輸入” 10”則轉為下一狀態(tài), end 否則輸 -定義4個狀態(tài) -定義兩 -主控時序 15 ;-異步 出”1001”;狀態(tài)1時如果輸入” 11”則轉為下一狀態(tài), 否則輸出” 0101”;狀態(tài)2時如果 輸入” 01”則轉為下一狀態(tài),否則輸出” 1100”;狀態(tài) 3時如果輸入” 00”則轉為狀態(tài) 0, 否則輸出” 0010”。復位時為狀態(tài) 0。 library ieee; use ieee.std _lo gic_1164.all; use ieee.std_

25、logic_ un sig ned.all; en tity moore1 is port (data in: in std_logic_vector(1 dow nto 0); clk, rst:in std_logic; q: out std_logic_vector(3 dow nto 0); en d; architecture one of moore1 is type st_type is (st0, st1, st2, st3); signal cst, nst: st_type; 個信號(現(xiàn)態(tài)和次態(tài)) sig nal q1:std_logic_vector(3 dow nto

26、0); begin reg: process(clk, rst) 進程 begin if rst=1 the ncst= 復位為狀態(tài)0 elsif clkeve nt and clk=1 the n -現(xiàn)態(tài) cst if datain=10 then nst=st1; else nst=st0; q1 if data in=11 the n n st=st2; else n st=st1; q1 if data in=01 the n n st=st3; else n st=st2; q1 if datain=00 then nst=st0; else nst=st3; q1=0010; en

27、d if; 17; end process; q=q1; en d; (七) 在下面橫線上填上合適的語句,完成減法器的設計。 由兩個1位的半減器組成一個1位的全減器 -1位半減器的描述 library ieee; use ieee.std _lo gic_1164.all; en tity half_sub is port(a,b : in std_logic; diff,cout : out std_logic); end half_sub; architecture art of half_sub is begin cout=18;-借位 diff=19;-差 end ; -1位全減器描述

28、 library ieee; use ieee.std _lo gic_1164.all; en tity falf_sub is port(a,b,cin: in std_logic; diff,cout : out std_logic); end falf_sub; architecture art of falf_sub is comp onent half sub port(a,b : in std_logic; diff,cout : out std_logic); end comp onent; 20 t0,t1,t2:stdogic; begin u1: half_sub por

29、t map(a,b, u2: half_sub port map(t0, cout=24 21 22 ,; 23 ,t2); end ; (八)在下面橫線上填上合適的語句,完成分頻器的設計 說明:占空比為1: 2的8分頻器 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_ un sig ned.all; en tity clkdiv8_1to2 is port(clk:i n std_logic; clkout:out std_logic ); end clkdiv8_1to2; architecture two of

30、 clkdiv8_1to2 is sig nal cn t:std_logic_vector(1 dow nto 0); sig nal ck:std_logic; begin process(clk) begin if risin g_edge(25) the n if cnt=11 then cnt=00; ck=26; else cn t=27; end if; end if; clkout=ck; end process; en d; (九)在下面橫線上填上合適的語句,完成60進制減計數器的設計 library ieee; use ieee.std_logic_1164.all; us

31、e ieee.std_logic_ un sig ned.all; en tity count is port(clk: in std_logic; h,l: out std_logic_vector(3 dow nto 0) ); end count; architecture bhv of count is begin process(clk) variable hh,ll: std_logic_vector(3 dow nto 0); begin if clkeve nt and clk=1 the n if ll=0 and hh=0 then hh:=0101; ll:=1001;

32、elsif ll=0 the n ll:= 28 hh:= 29 else ll:= 30 end if; end if; h=hh; l=ll; end process; end bhv; (十)在下面橫線上填上合適的語句,完成4-2優(yōu)先編碼器的設計 library ieee; use ieee.std _lo gic_1164.all; en tity code4 is port(a,b,c,d : in std_logic; y0,y1 : out std _lo gic); end code4; architecture code4 of code4 is sig nal ddd:st

33、d_logic_vector(3 dow nto 0); sig nal q:std_logic_vector( 31 dow nto 0); begin 32 ddd= process(ddd) begin if (ddd(0)=0) the nq = 11; elsif (ddd(1)=0) the nq = 10; elsif(ddd(2)=0) the nq=01; elseq = 00; end if; 33 y1=q(0); y0=q(1); end code4; (十一)在下面橫線上填上合適的語句,完成 library ieee; use ieee.std _lo gic_116

34、4.all; 10位二進制加法器電路的設計。 use ieee.std_logic 34 .all; en tity adder1 is port(a,b:i n std_logic_vector(9 dow nto 0); cout:out std_logic; sum:out std_logic_vector(9 dow nto 0); en d; architecture jg of adder1 is dow nto 0); sig nal atemp: std_logic_vector(10 dow nto 0); sig nal btemp: std_logic_vector(10

35、 dow nto 0); sig nal sumtemp: std_logic_vector( 35 begin atemp= 0 btemp= 0 sumtemp= 36 sum=sumtemp(9 downto 0); cout= 37; end jg; (十二)在下面橫線上填上合適的語句,完成移位寄存器的設計。 說明:8位的移位寄存器,具有左移一位或右移一位、并行輸入和同步復位的功能。 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_ un sig ned.all; use ieee.std_logic_arit

36、h.all; en tity shifter is port(data :in std_logic_vector(7 dow nto 0); clk:in std_logic; shiftleft , shiftright:in stdogic; reset: in std_logic; mode:i n std_logic_vector(1 dow nto 0); qout:buffer std_logic_vector(7 dow nto 0); end shifter; architecture art of shifter is begin process begin -等待上升沿 -

37、同步復位 -右移一位 -左移一位 -不移,并行輸入 38 (risi ng_edge(clk); if reset=1 then qoutqoutqoutqoutn ull; 42; end if; end process; end art; (十三)在下面橫線上填上合適的語句,完成計數器的設計。 說明:設計一個帶有異步復位和時鐘使能的一位八進制加法計數器(帶進位輸出端) library ieee; use ieee.std _lo gic_1164.all; use ieee.std_logic_ un sig ned.all; en tity cnt8 is port (clk,rst,e

38、n : in std_logic; cq : out std_logic_vector( 43dow nto 0); cout : out std_logic ); end cn t8; architecture behav of cnt8 is begin process(clk, rst, en) 44 cqi : std_logic_vector(2 dow nto 0); begin if rst = 1then cqi :=“ 000 ”; 45clkeve nt and clk=1 the n if en = 1 the n if cqi 111 the ncqi :=46; el

39、se cqi :=47; end if; end if; end if; if cqi = 111 then cout = 1; else cout = 0; end if; cq = cqi; end process; end behav; (十四)在下面橫線上填上合適的語句,完成序列信號發(fā)生器的設計。 說明:已知發(fā)送信號為”10011010;要求以由高到低的序列形式一位一位的發(fā)送,發(fā)送開始 前及發(fā)送完為低電平。 library ieee; use ieee.std _lo gic_1164.all; en tity xulie is port (res, clk: in std_logic

40、; y: out std_logic ); en d; architecture arch of xulie is sig nal reg:std_logic_vector(7 dow nto 0); begin process(clk, res) begin if(clk event and clk= 1 ) then if res= 1 the n y= 0 ;g=48;-同步復位,并加載輸入 else y=49;-高位輸出 reg= 50;-左移,低位補0 end if; end if; end process; en d; (十五)在下面橫線上填上合適的語句,完成數據選擇器的設計。 說

41、明:采用元件例化的設計方法,先設計一個2選1多路選擇器,再使用3個2選1多路選 擇器構成一個4選1多路選擇器。 library ieee;-2選1多路選擇器的描述 use ieee.std _lo gic_1164.all; en tity mux21 is port(a,b,sel: in std_logic; y : out std_logic); end mux21; architecture art of mux21 is begin y=a whe n sel=0 else b; end ; library ieee;-4選1多路選擇器的描述 use ieee.std _lo gic

42、_1164.all; en tity mux41 is port(a,b,c,d : in std_logic; s1,s2 : in std_logic; y:out std_logic); en d; architecture art of mux41 is comp onent mux41 port(a,b,sel : in std_logic; y : out std_logic); end comp onent; 51 y1,y2:std_logic; begin u1: mux21 port map(a,b,s1,52); u2: mux21 port map(c,d, 52,y2

43、); u2: mux21 port map(y1,y2,54,y); end ; (十六)在下面橫線上填上合適的語句,完成8位奇偶校驗電路的設計。 library ieee; use ieee.std _lo gic_1164.all; en tity pc is port ( a : in std_logic_vector(7 dow nto 0); y : out std_logic ); end pc; architecture a of pc is begin process(a). variable tmp: std_logic; begin tmp 55O; for i in 0

44、to 7 loop tmp:= 56; end loop; y=57; end process; en d; (十七)在下面橫線上填上合適的語句,完成一個邏輯電路的設計, 其布爾方程為 y=(a+b)(c O d)+(b f). LIBRARY ieee; USE ieee.stdo gic_1164.ALL; ENTITY comb IS PORT(a, b,c,d,e,f,: IN stdogic; y: OUT std_logic); END comb; ARCHITECTURE one OF comb IS BEGIN y pout pout pout pout pout pout p

45、out pout pout pout pout=0000000000; END CASE; END IF; END PROCESS; END; (十九)在下面橫線上填上合適的語句,完成下降沿觸發(fā)的 LIBRARY ieee; USE ieee.stdo gic_1164.ALL ; ENTITY dff IS PORT(d,clk:IN std_logic; q, qb: OUT std_logic); END dff; ARCHITECTURE behave OF dff IS BEGIN PROCESS(clk) BEGIN IF 61 AND clkeve nt THEN q =62;

46、qb=not d; END IF; END PROCESS; END behave; (二十)在下面橫線上填上合適的語句,完成移位寄存器的設計。 說明:4位串入-串出移位寄存器有有1個串行數據輸入端( (do )和1個時鐘輸入端(clk) LIBRARY ieee; USE ieee.stdo gic_1164.ALL; ENTITY siso IS PORT(di: IN std_logic; clk:IN std_logic; do:OUT stdo gic); END siso; ARCHITECTURE a OF siso IS SIGNAL q: std_logic_vector(3

47、 DOWNTO 0); BEGIN PROCESS(clk,di) BEGIN IF clk event AND clk= 1 THEN q(0)=63; for 64 loop q(i)=65; END IF; END PROCESS; do=q(3); d觸發(fā)器的設計。 di)、1個串行數據輸出輸出端 END a; (二一)在下面橫線上填上合適的語句,完成同步22進制計數器的設計。 LIBRARY ieee; USE ieee.stdo gic_1164.ALL; USE ieee.std_logic_ un sig ned.ALL; ENTITY coun ter22 IS PORT(

48、clk: IN std_logic; ch, c: OUT std_logic; qb1, qa1: OUT stdo gic_vector(3 DOWNTO 0); END; ARCHITECTURE behav OF cou nter22 IS SIGNAL qb, qa: std_logic_vector(3 DOWNTO 0); SIGNAL cin: std_logic; BEGIN qb1=qb; qa1=qa; PROCESS(clk) BEGIN IF clkeve nt AND clk=1 THEN IF (qa= 66) OR (qb=2 AND qa=1) THEN qa

49、=0000; cin=0; ELSIF qa=67THEN ci n=1; qa=qa+1; ELSE qa=68; cin=0; END IF; END IF; END PROCESS; PROCESS(ci n, clk) BEGIN IF clkeve nt AND clk=1 THEN IF (qb=2 AND qa=1) THEN qb= 69; c=1; ELSE c=70; END IF; IF cin=1 THEN qb= 71; END IF; END IF; END PROCESS; ch=ci n; END; (二十二)在下面橫線上填上合適的語句,完成一個“0111111

50、0”列發(fā)生器的設計。 LIBRARY ieee; USE ieee.stdo gic_1164.ALL; USE ieee.std_logic_ un sig ned.ALL; USE ieee.std_logic_arith.ALL; ENTITY sen qgen IS PORT(clk,clr,clock:IN std_logic; zo:OUT std_logic); END; ARCHITECTURE art OF sen qge n IS SIGNAL coun t:std_logic_vector(2 DOWNTO 0); SIGNAL z:std_logic:=0; BEGIN

51、 PROCESS(clk,clr) BEGIN IF clr=1 THEN coun t=000; ELSE IF clk=1 AND clkeve nt THEN IF cou nt=72 THEN coun t=000; ELSE coun tzzzzzzzz= 73; END CASE; END PROCESS; PROCESS(clock,z) BEGIN IF clock=1 AND clockeve nt THEN zo= 74; END IF; END PROCESS; “01111110”列信號檢測器的設計。 END art; (二十三)在下面橫線上填上合適的語句,完成一個 L

52、IBRARY ieee; USE ieee.stdo gic_1164.ALL; ENTITY detect IS PORT( dataNIN std_logic; clk:IN std_logic; q:BUFFER stdo gic); END detect; ARCHITECTURE art OF detect IS type statetype IS (s0,s1,s2,s3,s4,s5,s6,s7,s8); BEGIN PROCESS(clk) VARIABLE 75:76; BEGIN q IF dataIN=0 THEN prese nt_state:=s1; ELSE pres

53、e nt_state:=sO; END IF; WHEN s1= IF dataIN=1 THEN prese nt_state:=s2; ELSE prese nt_state:=s1; END IF; WHEN s2= IF dataIN=1 THEN prese nt_state:=s3; ELSE prese nt_state:=s1; END IF; WHEN s3= IF dataIN=1 THEN prese nt_state:=s4; ELSE prese nt_state:=s1; END IF; WHEN s4= IF dataIN=1 THEN prese nt_stat

54、e:=s5; ELSE prese nt_state:=s1; END IF; WHEN s5= IF dataIN=1 THEN prese nt_state:=s6; ELSE prese nt_state:=s1; END IF; WHEN s6= IF dataIN=1 THEN prese nt_state:=s7; ELSE prese nt_state:=s1; END IF; WHEN s7= IF dataIN=0 THEN prese nt_state:=s8; q IF dataIN=0 THEN prese nt_state:=77; ELSE prese nt_sta

55、te:=78; END IF; END CASE; 79 clk=1: END PROCESS; END art; (二十四)在下面橫線上填上合適的語句,完成序列信號發(fā)生器的設計。 說明:帶異步復位為 clr,時鐘端為clk,輸出端為q,串行輸出指定序列(低位先出) LIBRARY ieee; USE ieee.stdo gic_1164.ALL; USE ieee.std_logic_arith.ALL; USE ieee.std_logic_ un sig ned.ALL; ENTITY sen qgen IS PORT(clr,clk:IN std_logic; q:OUT std_lo

56、gic); END sen qge n; ARCHITECTURE beha OF sen qgen IS SIGNAL q_temp:stdo gic_vector(2 DOWNTO 0); BEGIN PROCESS(clk,clr) BEGIN IF clr=1 THEN q_temp=000; 80 (clkeve nt AND clk=1) THEN IF q_temp=111 THEN q_temp=000; 81 q_tempqqqqqqqq 83; END CASE; END PROCESS; END beha; (二十五)在下面橫線上填上合適的語句,完成七人表決器的設計。 說

57、明:一個帶輸出顯示的七人表決器(兩種結果:同意,反對)。 LIBRARY ieee; USE ieee.stdo gic_1164.ALL; ENTITY biaojue7 IS PORT(d:IN std_logic_vector(0 TO 6); rled,gled:OUT std_logic; ledseg:OUT std_logic_vector( 6 DOWNTO 0) ); END; ARCHITECTURE bev OF biaojue7 IS BEGIN PROCESS(d) VARIABLE coun t:INteger RANGE 0 TO 7 ; BEGIN coun t

58、:=84; for 85 loop IF d(i)=1 THEN coun t:=86; ELSE coun t:=co unt; END IF; END loop; IF cou nt87 THEN gled=1; rled=0; ELSE gled=0;rled ledseg ledseg ledseg ledseg ledseg ledseg ledseg ledseg=0100111; END CASE; END PROCESS; END bev; (二十六)在下面橫線上填上合適的語句,完成有限狀態(tài)機的設計。 說明:狀態(tài)轉換圖如右圖,S0S3為狀態(tài)號,圈內為輸出。 LIBRARY 1E

59、EE; USE IEEE . STD_ LOGIC_1164 . ALL ; ENTITY s_ machi ne IS port( clk,reset: IN STD_LOGIC; in puts : IN STD_LOGIC_VECTOR (0 TO 1); outputs : OUT INTEGER range (0 to 15 ); END s_ machine ; ARCHITECTURE behav OF s_machi ne IS Type states is (sO,s1, s2,s3); SIGNAl curcent_state, next_state: states; BE

60、GIN REG: PROCESS (reset, clk)-狀態(tài)切換 BEGIN IF reset = THEN curre nt_ state = s0; ELSIF clk= l ANk EVENTTHEN Curre nt_ state outputs= 88; IF inputs= ” OOTHEN next_ state=sO; ELSE next_ state outputs=8 ; IF in puts=89 THEN next_ state= 90; ELSE n ext_state outputs=12; IF in puts=“11 ” THENxt_state=sO; E

溫馨提示

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

評論

0/150

提交評論