《數(shù)字電路與邏輯設(shè)計實驗(上)》_第1頁
《數(shù)字電路與邏輯設(shè)計實驗(上)》_第2頁
《數(shù)字電路與邏輯設(shè)計實驗(上)》_第3頁
《數(shù)字電路與邏輯設(shè)計實驗(上)》_第4頁
《數(shù)字電路與邏輯設(shè)計實驗(上)》_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 數(shù)字電路與邏輯設(shè)計實驗(上)學(xué)院:信息與通信工程學(xué)院班級: 學(xué)號: 姓名: 班內(nèi)序號:日期:2015年05月31日 一、實驗要求(1)實驗?zāi)康?.熟悉用QuartusII原理圖輸入法進行電路設(shè)計和仿真;2.掌握QuartusII圖形模塊單元的生成與調(diào)用;3.熟悉用VHDL語言設(shè)計組合邏輯電路和時序電路的方法;4.熟悉用QuartusII文本輸入法和圖形輸入法進行電路設(shè)計;5.熟悉不同的編碼及其之間的轉(zhuǎn)換;6.熟悉計數(shù)器、分頻器的設(shè)計方法7.掌握VHDL語言的語法規(guī)范,掌握時序電路描述方法;8.掌握多個數(shù)碼管動態(tài)掃描顯示的原理及設(shè)計方法。9.熟悉實驗板的使用。(2)實驗所用儀器及元器件 1.計

2、算機 2.直流穩(wěn)壓電源 3.數(shù)字系統(tǒng)與邏輯設(shè)計實驗開發(fā)板(EPM1270T144C5)(3)實驗內(nèi)容1. QuartusII 原理圖輸入法設(shè)計與實現(xiàn)2. 用 VHDL 設(shè)計與實現(xiàn)組合邏輯電路3. 用 VHDL 設(shè)計與實現(xiàn)時序邏輯電路4. 用 VHDL 設(shè)計與實現(xiàn)相關(guān)電路二、四次實驗的具體內(nèi)容實驗一:實驗內(nèi)容:QuartusII 原理圖輸入法設(shè)計與實現(xiàn)1.用邏輯門設(shè)計實現(xiàn)一個半加器,仿真驗證其功能,并生成新的半加器圖形模塊單元。 2.用實驗內(nèi)容1中生成的半加器模塊和邏輯門設(shè)計實現(xiàn)一個全加器,仿真驗證其功能,并下載到實驗板測試,要求用撥碼開關(guān)設(shè)定輸入信號,發(fā)光二極管顯示輸出信 號。 3.用3線-8

3、線譯碼器(74LS138)和邏輯門設(shè)計實現(xiàn)函數(shù)F,仿真驗證其功能,并下載到實驗板測試。要求用撥碼開關(guān)設(shè)定輸入信號,發(fā)光二極管顯示輸出信號。實驗題目:第七章實驗 1(1)、(2)、(3)必做,選做 VHDL 實現(xiàn)全加器實驗設(shè)計的原理圖、VHDL代碼、仿真波形圖:1 半加器:原理圖: 仿真波形圖: 仿真波形圖分析:根據(jù)仿真波形對比半加器真值表,可以確定電路實現(xiàn)了半加器的功能。滿足了實驗要求。2. 全加器:原理圖:仿真波形圖: 仿真波形圖分析:根據(jù)仿真波形對比全加器真值表,可以確定電路實現(xiàn)了全加器的功能,滿足了實驗要求。3. 3線-8線譯碼器原理圖: 仿真波形圖: 仿真波形圖分析:觀察波形,可實現(xiàn)函

4、數(shù)F,滿足實驗要求。實驗二:實驗內(nèi)容:用 VHDL 設(shè)計與實現(xiàn)組合邏輯電路1. 數(shù)碼管譯碼器:用VHDL語言設(shè)計實現(xiàn)一個3線8線譯碼器,仿真驗證其功能,并下載到實驗板測試。要求用撥碼開關(guān)設(shè)定輸入信號,發(fā)光二極管顯示輸出信號。2. 8421 碼轉(zhuǎn)余 3 碼:用VHDL語言設(shè)計實現(xiàn)一個8421碼轉(zhuǎn)換為余3碼的代碼轉(zhuǎn)換器,仿真驗證其功能,并下載到實驗板測試。要求用撥碼開關(guān)設(shè)定輸入信號,發(fā)光二極管顯示輸出信號。3. 奇校驗器:用VHDL語言設(shè)計實現(xiàn)一個4位二進制奇校驗器,輸入奇數(shù)個1時,輸出為1,否則輸出0,仿真驗證其功能,并下載到實驗板測試。要求用撥碼開關(guān)設(shè)定輸入信號,發(fā)光二極管顯示輸出信號。實驗題

5、目:(1)數(shù)碼管譯碼器(第七章實驗 2(2)(2)8421 碼轉(zhuǎn)余 3 碼(第七章實驗 3(2)(3)奇校驗器(第七章實驗 4(2);實驗設(shè)計的原理圖、VHDL代碼、仿真波形圖:1. 數(shù)碼管譯碼器:VHDL代碼:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY yimaqi IS PORT( a: IN STD_LOGIC_VECTOR(3 downto 0); b: OUT STD_LOGIC_VECTOR(6 downto 0); c: OUT STD_LOGIC_VECTOR(5 downto 0) );END yimaqi;ARCHITEC

6、TURE yimaqi_arch OF yimaqi ISBEGIN c<="011111" PROCESS(a) BEGIN CASE a IS WHEN"0000" => b<="1111110"-0 WHEN"0001" => b<="0110000"-1 WHEN"0010" => b<="1101101"-2 WHEN"0011" => b<="1111001&q

7、uot;-3 WHEN"0100" => b<="0110011"-4 WHEN"0101" => b<="1011011"-5 WHEN"0110" => b<="1011111"-6 WHEN"0111" => b<="1110000"-7 WHEN"1000" => b<="1111111"-8 WHEN"1001&quo

8、t; => b<="1111011"-9 WHEN OTHERS=> b<="0000000" END CASE; END PROCESS;END yimaqi_arch; 仿真波形圖:仿真波形圖分析:當(dāng)a分別取得09時,輸出b分別使得對應(yīng)的數(shù)碼管亮起對應(yīng)的數(shù)字。滿足實驗要求。2. 8421轉(zhuǎn)余3碼VHDL代碼:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY zhuanyu3 ISPORT(A:IN STD_LOGIC_

9、VECTOR(3 downto 0); B:OUT STD_LOGIC_VECTOR(3 downto 0);END zhuanyu3;ARCHITECTURE trans_ex3 OF zhuanyu3 ISBEGINPROCESS(A) BEGIN CASE A IS WHEN"0000" => B<="0011"WHEN"0001" => B<="0100"WHEN"0010" => B<="0101"WHEN"0011&q

10、uot; => B<="0110"WHEN"0100" => B<="0111"WHEN"0101" => B<="1000" WHEN"0110" => B<="1001"WHEN"0111" => B<="1010"WHEN"1000" => B<="1011"WHEN"1001"

11、=> B<="1100"WHEN OTHERS=> B<="0000"END CASE;END PROCESS;END trans_ex3;仿真波形圖:仿真波形圖分析:當(dāng)A分別取得09對應(yīng)的8421碼時,輸出B輸出對應(yīng)的余3碼。滿足實驗要求。3. 奇校驗器VHDL代碼:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY odd_parity ISPORT(A3,A2,A1,A0:IN STD_LOGIC; Y:OUT STD_LOGIC);END odd_parity;ARCHITECT

12、URE behave OF odd_parity IS SIGNAL comb: STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINcomb<=A3&A2&A1&A0; PROCESS(comb) BEGINCASE comb ISWHEN"0001" => Y<='1'WHEN"0010" => Y<='1'WHEN"0100" => Y<='1'WHEN"1000" => Y

13、<='1'WHEN"1011" => Y<='1'WHEN"1101" => Y<='1'WHEN"1110" => Y<='1'WHEN"0111" => Y<='1'WHEN OTHERS => Y<='0'END CASE; END PROCESS;END behave;仿真波形圖:仿真波形圖分析:當(dāng)輸入A3.A2.A1.A0中有奇數(shù)個1時,輸出Y=

14、1。滿足實驗要求。實驗三:實驗內(nèi)容:用 VHDL 設(shè)計與實現(xiàn)時序邏輯電路1. 8421 十進制計數(shù)器:用VHDL語言設(shè)計實現(xiàn)一個帶異步復(fù)位的8421碼十進制計數(shù)器,仿真驗證其功能,并下載到實驗版測試。要求用按鍵設(shè)定輸入信號,發(fā)光二極管顯示輸出信號。2. 分頻器:用VHDL語言設(shè)計實現(xiàn)一個分頻系數(shù)為12,分頻輸出信號占空比為50%的分頻器。要求在QuartusII平臺上設(shè)計程序并仿真驗證設(shè)計。3. 將1、2所設(shè)計的電路(分頻器的系數(shù)需要修改)和數(shù)碼管譯碼器 3 個電路進行鏈接,并下載到實驗板顯示計數(shù)結(jié)果實驗題目: (1)8421 十進制計數(shù)器(第七章實驗 8(2)(2)分頻器(第七章實驗 11(

15、1)(3)將(1)、(2)和數(shù)碼管譯碼器 3 個電路進行鏈接,并下載到實驗板顯示計數(shù)結(jié)果實驗設(shè)計的原理圖、VHDL代碼、仿真波形圖:1. 8421 十進制計數(shù)器:VHDL代碼:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY count ISPORT(clk,clear:IN STD_LOGIC; q:OUT STD_LOGIC_VECTOR(3 DOWNTO 0) );END count;ARCHITECTURE a OF count ISSIGNAL q_temp:STD_LOGI

16、C_VECTOR(3 DOWNTO 0);BEGINPROCESS(clk)BEGINIF(clk'event and clk='1')THEN IF clear='1' THENq_temp<="0000" ELSIF q_temp="1001" THENq_temp<="0000" ELSEq_temp<=q_temp+1; END IF;END IF;END PROCESS;q<=q_temp;END a;仿真波形圖:仿真波形圖分析:由圖易看出其計數(shù)周期為10,從0

17、9。分頻器:VHDL代碼:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY div12 ISPORT(clk:IN STD_LOGIC;clear:IN STD_LOGIC;clk_out:OUT STD_LOGIC);END div12;ARCHITECTURE a OF div12 IS SIGNAL tmp:INTEGER RANGE 0 TO 11;BEGIN p1:PROCESS(clear,clk) BEGIN IF clear='1' THENtmp<

18、;=0; ELSIF clk'event AND clk='1' THEN IF tmp=11 THENtmp<=0; ELSEtmp<=tmp+1; END IF; END IF; END PROCESS; p2:PROCESS(tmp) BEGIN IF clk'event AND clk='1' THEN IF tmp<6 THENclk_out<='0'elseclk_out<='1' END IF; END IF; END PROCESS p2; END a;仿真波形圖:仿真

19、波形圖分析:由圖易看出該分頻器的輸出的時鐘周期是輸入時鐘周期的12倍。2. 三個電路綜合:(用VHDL語言實現(xiàn)連接)VHDL代碼:(此時分頻器的分頻比為12M)LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY lianjie4 ISPORT(CLK:IN STD_LOGIC; CLEAR:IN STD_LOGIC; OP:OUT STD_LOGIC_VECTOR(6 DOWNTO 0); CAT: OUT STD_LOGIC_VECTOR(5 DOWNTO 0);END lianjie

20、4;ARCHITECTURE behav OF lianjie4 IS COMPONENT div50mPORT(clk:IN STD_LOGIC;clear:IN STD_LOGIC;clk_out:OUT STD_LOGIC); END COMPONENT; COMPONENT countPORT(clk,clear:IN STD_LOGIC;q:OUT STD_LOGIC_VECTOR(3 DOWNTO 0); END COMPONENT; COMPONENT seg7_1PORT(A: IN STD_LOGIC_VECTOR(3 DOWNTO 0); LED7S: OUT STD_LO

21、GIC_VECTOR(6 DOWNTO 0); CAT: OUT STD_LOGIC_VECTOR(5 DOWNTO 0); END COMPONENT; SIGNAL clktmp:STD_LOGIC; SIGNAL tmp:STD_LOGIC_VECTOR(3 DOWNTO 0);BEGIN u1:div50m PORT MAP(clk=>CLK,clear=>CLEAR,clk_out=>clktmp); u2:count PORT MAP(clk=>clktmp,clear=>CLEAR,q=>tmp); u3:seg7_1 PORT MAP(A=&

22、gt;tmp,LED7S=>OP,CAT=>CAT);END behav;實驗四:實驗內(nèi)容:用 VHDL 設(shè)計與實現(xiàn)相關(guān)電路1. 數(shù)碼管動態(tài)掃描控制器:用VHDL語言設(shè)計并實現(xiàn)六個數(shù)碼管串行掃描電路,要求同時顯示“班級班內(nèi)序號”(120-11)這六個不同的數(shù)字圖形到六個數(shù)碼管上,仿真驗證其功能,并下載到實驗板測試。實驗題目:數(shù)碼管動態(tài)掃描控制器、點陣行掃描控制器(二選一)實驗設(shè)計的原理圖、VHDL代碼、仿真波形圖:1. 數(shù)碼管動態(tài)掃描控制器:原理圖: catout partoutclk tempclkVHDL代碼:library ieee;use ieee.std_logic_11

23、64.all;use ieee.std_logic_unsigned.all;entity led isport(clk: in std_logic;partout:out std_logic_vector(6 downto 0);catout: out std_logic_vector(5 downto 0);end led;architecture a of led issignal part: std_logic_vector(6 downto 0);signal cat: std_logic_vector(5 downto 0);signal temp: std_logic;signa

24、l count: integer range 0 to 50000;beginp1:process(clk)beginif(clk'event and clk='1')thenif count=50000 thencount<=0;temp<= not temp;elsecount<=count+1;end if;end if;end process p1;p2:process(temp)beginif(temp'event and temp='1')thencase cat iswhen"111110"=&

25、gt; cat<="011111"part<="0110000" -1when"011111"=> cat <="101111"part<="1101101" -2when"101111"=> cat <="110111"part<="1111110" -0when"110111"=> cat<="111011"part<=&quo

26、t;0000001" -when"111011"=> cat<="111101"part<="0110000" -1when"111101"=> cat<="111110"part<="0110000" -1when others => cat<="011111"part<="0110000" -1end case;end if;end process p2;catout&

27、lt;=cat;partout<=part;end a;仿真波形圖:仿真波形圖分析:由仿真波形圖可以看出輸出值符合實驗要求。選做題目:VHDL代碼:LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY GKY07P14 ISPORT( clk,clear:IN STD_LOGIC; q:OUT STD_LOGIC_VECTOR(6 DOWNTO 0); countout:OUT STD_LOGIC_VECTOR(5 DOWNTO 0); END GKY07P14; ARCHIT

28、ECTURE behave OF GKY07P14 IS SIGNAL q_temp:STD_LOGIC_VECTOR(6 DOWNTO 0); SIGNAL count:STD_LOGIC_VECTOR(5 DOWNTO 0); SIGNAL cnt,cnt1:INTEGER RANGE 0 TO 11; SIGNAL tmp:INTEGER RANGE 0 TO 15999; signal clk1:STD_LOGIC; beginp0:PROCESS(clk,clear) BEGINIF clear='0' THEN tmp<=0; ELSIF clk'EV

29、ENT AND clk='1' THEN IF tmp=15999 THEN tmp<=0; ELSE tmp<=tmp+1; end if;end if;end process p0;p1:PROCESS(tmp) begin IF clk'EVENT AND clk='1' THEN IF tmp<1000 THEN clk1<='0' else clk1<='1' END IF; END IF; END PROCESS p1; p2:PROCESS(clk) BEGINIF(clk

30、9;EVENT AND clk='1')THEN IF(cnt=11)THEN cnt<=0; ELSE cnt<=cnt+1; END IF; END IF; END PROCESS p2;p3:PROCESS(clk1)BEGIN IF(clk1'EVENT AND clk1='1')THEN IF(cnt1=11)THEN cnt1<=0; else cnt1<=cnt1+1; end if;end if;END PROCESS p3; p4:PROCESS(cnt,cnt1) BEGIN IF(clear='0&#

31、39;)THEN q_temp<="0000000" ELSECASE cnt+cnt1 ISWHEN 6=>q_temp<="0110000" WHEN 7=>q_temp<="1101101" WHEN 8=>q_temp<="0000001" WHEN 9=>q_temp<="0110000"WHEN 10=>q_temp<="0110000" WHEN 11=>q_temp<="0110000" WHEN OTHERS =>q_temp<="

溫馨提示

  • 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)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論