EDA實驗打印版1204451204_第1頁
EDA實驗打印版1204451204_第2頁
EDA實驗打印版1204451204_第3頁
EDA實驗打印版1204451204_第4頁
EDA實驗打印版1204451204_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、目錄基于FPGA的半整數(shù)分頻器設(shè)計2一、系統(tǒng)設(shè)計任務(wù)及功能概述2二、系統(tǒng)設(shè)計方案2三、電路模塊VHDL程序設(shè)計2四、仿真結(jié)果及原理圖3(一)模8計數(shù)器波形仿真及其元件圖3(二)分頻比7.5的半整數(shù)分頻器邏輯設(shè)計及仿真4四組數(shù)字智力搶答器的VHDL設(shè)計4一、系統(tǒng)設(shè)計任務(wù)及功能概述5二、系統(tǒng)設(shè)計方案5三、電路模塊VHDL程序設(shè)計6(一)搶答鑒別器VHDL設(shè)計及波形仿真6(二)加減計分器VHDL設(shè)計及波形仿真7(三)犯規(guī)及倒計時VHDL設(shè)計及波形仿真11(四)譯碼器VHDL設(shè)計及波形仿真14四、四路搶答器電路總體設(shè)計結(jié)果15(一)四路搶答器總體設(shè)計與仿真15五、EDA(VHDL)課程設(shè)計總結(jié)17參考

2、文獻:17基于FPGA的半整數(shù)分頻器設(shè)計一、系統(tǒng)設(shè)計任務(wù)及功能概述說明設(shè)計任務(wù)或功能描述1.設(shè)計任務(wù)要求:設(shè)有一個15MHz(或7、9、11、13、15、17、19、21、23、25、27MHz)的時鐘源,但電路中需要產(chǎn)生一個2MHz的時鐘信號,由于分頻比為7.5(或3.5、4.5、5.5、6.5、7.5、8.5、9.5、10.5、11.5、12.5、13.5),因此采用小數(shù)分頻。2.小數(shù)分頻的基本原理是:采用脈沖吞吐計數(shù)器和鎖相環(huán)技術(shù),設(shè)計兩個不同分頻比的整數(shù)分頻器,通過控制單位時間內(nèi)兩種分頻比出現(xiàn)的不同次數(shù),從而獲得所需要的小數(shù)分頻值。二、系統(tǒng)設(shè)計方案系統(tǒng)設(shè)計方案闡述分頻系數(shù)為N-0.5的

3、分頻器,其電路可由一個異或門、一個模N計數(shù)器和二分頻器組成。下圖給出了通用半整數(shù)分頻器電路組成,采用VHDL及相關(guān)工具軟件完成設(shè)計任務(wù)。圖1 通用半整數(shù)分頻器電路組成原理框圖由于本人設(shè)計的分頻器的分頻比為7.5,因此需要先建立模3計數(shù)器元件,再利用原理圖設(shè)計完成分頻器的設(shè)計。三、電路模塊VHDL程序設(shè)計模8計數(shù)器VHDL設(shè)計程序:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY jishuqi8 IS -模8計數(shù)器的實體定義 PORT(INCLK,RET,EN:IN STD_LOGIC

4、; Q0,Q1,Q2:OUT STD_LOGIC);END jishuqi8;ARCHITECTURE ONE OF jishuqi8 IS -結(jié)構(gòu)體定義 SIGNAL CLK:STD_LOGIC; -脈沖信號定義 SIGNAL COUNT:STD_LOGIC_VECTOR(2 DOWNTO 0); -定義數(shù)組信號count BEGIN CLK<=INCLK ; PROCESS(CLK,RET,EN) -進程定義,敏感信號為CLK RET EN BEGIN IF(RET='1') THEN COUNT<="000" ELSIF(CLK'E

5、VENT AND CLK='1') THEN IF(EN='1') THEN IF(COUNT="111") THEN COUNT<="000" ELSE COUNT<=COUNT+1; END IF;END IF;END IF; END PROCESS;Q0<=COUNT(0);Q1<=COUNT(1);Q2<=COUNT(2);END ONE;四、仿真結(jié)果及原理圖(一)模8計數(shù)器波形仿真及其元件圖1.模8計數(shù)器波形仿真圖2 模8計數(shù)器波形仿真圖2.模8計數(shù)器元件圖圖3 模8計數(shù)器元件圖(二

6、)分頻比7.5的半整數(shù)分頻器邏輯設(shè)計及仿真1分頻比7.5的半整數(shù)分頻器邏輯圖設(shè)計圖4分頻比7.5的半整數(shù)分頻器邏輯圖2分頻比7.5的半整數(shù)分頻器波形仿真圖5分頻比7.5的半整數(shù)分頻器波形仿真圖3.輸入、輸出接口說明接口名稱類型(輸入/輸出)結(jié)構(gòu)圖上的信號名引腳號說明INCPINinclock2系統(tǒng)時鐘 15MHzOUTCPOUToutclk5系統(tǒng)輸出 2MHZQNOUTQ26系統(tǒng)輸出 1MHZ表1輸入和輸出說明表四組數(shù)字智力搶答器的VHDL設(shè)計一、系統(tǒng)設(shè)計任務(wù)及功能概述系統(tǒng)設(shè)計要求: (1) 采用VHDL及相關(guān)工具軟件,設(shè)計一個可容納四組參賽者的數(shù)字智力搶答器,每組設(shè)置一個搶答按鈕供搶答者使用

7、。 (2) 電路具有第一搶答信號的鑒別和鎖存功能。 (3) 設(shè)置計分電路(根據(jù)實驗箱條件,可以只完成二路計分電路設(shè)計)。(4) 設(shè)置犯規(guī)電路(選作)。功能描述:1.系統(tǒng)的輸入信號有:各組的搶答按鈕A、B、C、D,系統(tǒng)復(fù)位信號CLR,系統(tǒng)時鐘信號CLK,計分復(fù)位端RST,加分按鈕端jia,減分按鈕 jian,犯規(guī)控制開關(guān)端CLA,倒計時脈沖CLK,倒計時復(fù)位CLR;2.系統(tǒng)的輸出信號有:四個組搶答成功與否的指示燈控制信號輸出口LED1、LES2、LED3、LED4,四個組搶答時的計時數(shù)碼顯示控制信號若干,搶答成功組別顯示的控制信號若干,各組計分動態(tài)顯示的控制信號若干。3.本系統(tǒng)具有的功能有:第一

8、搶答信號的鑒別和鎖存功能;搶答計時功能;各組得分的累加和動態(tài)顯示功能,犯規(guī)判斷功能。根據(jù)以上的分析,我們可將整個系統(tǒng)分為三個主要模塊:搶答鑒別模塊;加減計分模塊;犯規(guī)及倒計時模塊;對于需顯示的信息,需增加或外接譯碼器,進行顯示譯碼??紤]到FPGA、CPLD的可用接口及一般EDA實驗開發(fā)系統(tǒng)的輸出顯示資源的限制,這里我們將組別顯示和計時顯示的譯碼器內(nèi)設(shè),而將各組的計分顯示的譯碼器外接。二、系統(tǒng)設(shè)計方案系統(tǒng)的工作原理如下:由裁判先開始按下開始start,復(fù)位fw,fuwei,使每個模塊都處于特定的狀態(tài),然后經(jīng)過1234組的搶答,將搶答結(jié)果送入計分裝置中,回答對問題之后,由裁判進行加減,按下加減按鍵

9、之后,計分器對選中的組加分或減分。重復(fù)上面的步驟,重新再來。如果在裁判沒按下開始按鍵start時候,有人搶先按下按鍵,觸發(fā)犯規(guī)模塊,對應(yīng)的犯規(guī)燈發(fā)光,由裁判重新復(fù)位等操作。顯示分數(shù)設(shè)計圖框如圖:倒計時顯示犯規(guī)顯示搶答加減計分器犯規(guī)及倒計時器四組搶答器四組搶答按鍵三、電路模塊VHDL程序設(shè)計(一)搶答鑒別器VHDL設(shè)計及波形仿真1. 搶答鑒別器VHDL設(shè)計LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY SIZU_QDQ IS -搶答器的實體定義 PORT(CLR:IN STD_LOGIC; A,B,C,D:IN STD_LOGIC; Q1,Q2,Q

10、3,Q4:OUT STD_LOGIC; XIANSHI:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);END ENTITY ;ARCHITECTURE ART OF SIZU_QDQ IS -搶答器的結(jié)構(gòu)體說明 CONSTANT W1:STD_LOGIC_VECTOR:="0001" -常量W1 W2 W3 W4定義并賦初值 CONSTANT W2:STD_LOGIC_VECTOR:="0010" CONSTANT W3:STD_LOGIC_VECTOR:="0011" CONSTANT W4:STD_LOGIC_

11、VECTOR:="0100" BEGIN PROCESS(CLR,A,B,C,D)IS -進程說明 敏感信號為CLK A B C D BEGIN IF( CLR ='1')THEN XIANSHI<="0000" ELSIF(A='1'AND B='0'AND C='0'AND D='0')THEN Q1<='1'Q2<='0'Q3<='0'Q4<='0'XIANSHI<=W1

12、; ELSIF(A='0'AND B='1'AND C='0'AND D='0')THEN Q1<='0'Q2<='1'Q3<='0'Q4<='0'XIANSHI<=W2; ELSIF(A='0'AND B='0'AND C='1'AND D='0')THEN Q1<='0'Q2<='0'Q3<='1'Q4&l

13、t;='0'XIANSHI<=W3; ELSIF(A='0'AND B='0'AND C='0'AND D='1')THEN Q1<='0'Q2<='0'Q3<='0'Q4<='1'XIANSHI<=W4; END IF; END PROCESS;END ARCHITECTURE;2.搶答鑒別器波形仿真圖1 搶答鑒別器波形仿真圖3.搶答鑒別器元件圖圖2搶答鑒別器元件圖4.搶答鑒別器輸入和輸出說明表接口名稱類型(輸入/

14、輸出)結(jié)構(gòu)圖上的信號名引腳號說明STARTINCLR9復(fù)位按鍵ZU1INA5第一組ZU2INB6第二組ZU3INC7第三組ZU4IND8第四組LED1OUTQ114第一組燈LED2OUTQ215第二組燈LED3OUTQ316第三組燈LED4OUTQ417第四組燈XIANSHI6.0OUTXIANSHI3.024搶答成功組表1搶答鑒別器輸入和輸出說明表(二)加減計分器VHDL設(shè)計及波形仿真1.加減計分器VHDL設(shè)計LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY SIZU_JJJFQ I

15、S -加減計分器的實體說明 PORT(RST,CLK:IN STD_LOGIC; JIA:IN STD_LOGIC; JIAN:IN STD_LOGIC; CHOOSE:IN STD_LOGIC_VECTOR(3 DOWNTO 0); AA1,AA2,BB1,BB2:OUT STD_LOGIC_VECTOR(3 DOWNTO 0); CC1,CC2,DD1,DD2:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);END ENTITY;ARCHITECTURE ART OF SIZU_JJJFQ IS -加減計數(shù)器的結(jié)構(gòu)體說SIGNAL POINTS_A2,POINTS_A1:

16、STD_LOGIC_VECTOR(3 DOWNTO 0);-對分數(shù)信號的定義 SIGNAL POINTS_B2,POINTS_B1:STD_LOGIC_VECTOR(3 DOWNTO 0); SIGNAL POINTS_C2,POINTS_C1:STD_LOGIC_VECTOR(3 DOWNTO 0); SIGNAL POINTS_D2,POINTS_D1:STD_LOGIC_VECTOR(3 DOWNTO 0); BEGIN PROCESS(RST,CLK,JIA,JIAN,CHOOSE) -進程說明敏感信號RST CLK JIA JIAN CHOOSE BEGIN IF RST='

17、1'THEN POINTS_A2<="0001"POINTS_A1<="0000" POINTS_B2<="0001"POINTS_B1<="0000" POINTS_C2<="0001"POINTS_C1<="0000" POINTS_D2<="0001"POINTS_D1<="0000" ELSIF(CLK'EVENT AND CLK='1')THEN

18、IF JIA='1'THEN IF CHOOSE="0001"THEN IF (POINTS_A1="1001")THEN POINTS_A1<="0000" IF POINTS_A2="1001"THEN POINTS_A2<="0000" ELSE POINTS_A2<=POINTS_A2+'1' END IF; ELSE POINTS_A1<=POINTS_A1+'1' END IF; ELSIF CHOOSE=&qu

19、ot;0010" THEN IF (POINTS_B1="1001")THEN POINTS_B1<="0000" IF POINTS_B2="1001"THEN POINTS_B2<="0000" ELSE POINTS_B2<=POINTS_B2+'1' END IF; ELSE POINTS_B1<=POINTS_B1+'1' END IF; ELSIF (CHOOSE="0011") THEN IF (POINTS_C1=

20、"1001")THEN POINTS_C1<="0000" IF POINTS_C2="1001"THEN POINTS_C2<="0000" ELSE POINTS_C2<=POINTS_C2+'1' END IF; ELSE POINTS_C1<=POINTS_C1+'1' END IF; ELSIF CHOOSE="0100"THEN IF (POINTS_D1="1001")THEN POINTS_D1<=

21、"0000" IF POINTS_D2="1001"THEN POINTS_D2<="0000" ELSE POINTS_D2<=POINTS_D2+'1' END IF; ELSE POINTS_D1<=POINTS_D1+'1' END IF; END IF; ELSIF JIAN='1' THEN IF CHOOSE="0001"THEN IF (POINTS_A1="0000")THEN POINTS_A1<=&qu

22、ot;0000" IF POINTS_A2="0000"THEN POINTS_A2<="0000" ELSE POINTS_A2<=POINTS_A2-'1' END IF; ELSE POINTS_A1<=POINTS_A1-'1' END IF; ELSIF CHOOSE="0010" THEN IF (POINTS_B1="0000")THEN POINTS_B1<="0000" IF POINTS_B2="00

23、00"THEN POINTS_B2<="0000" ELSE POINTS_B2<=POINTS_B2-'1' END IF; ELSE POINTS_B1<=POINTS_B1-'1' END IF; ELSIF (CHOOSE="0011") THEN IF (POINTS_C1="0000")THEN POINTS_C1<="0000" IF POINTS_C2="0000"THEN POINTS_C2<="

24、0000" ELSE POINTS_C2<=POINTS_C2-'1' END IF; ELSE POINTS_C1<=POINTS_C1-'1' END IF; ELSIF CHOOSE="0100"THEN IF (POINTS_D1="0000")THEN POINTS_D1<="0000" IF POINTS_D2="0000"THEN POINTS_D2<="0000" ELSE POINTS_D2<=POINTS

25、_D2-'1' END IF; ELSE POINTS_D1<=POINTS_D1-'1' END IF; END IF; END IF;END IF; END PROCESS; AA1<=POINTS_A1;AA2<=POINTS_A2; BB1<=POINTS_B1;BB2<=POINTS_B2; CC1<=POINTS_C1;CC2<=POINTS_C2; DD1<=POINTS_D1;DD2<=POINTS_D2;END ARCHITECTURE;2.加減計分器波形仿真圖3加減計分器波形仿真圖3.加減

26、計分器元件圖圖4 加減計分器元件圖(三)犯規(guī)及倒計時VHDL設(shè)計及波形仿真1. 犯規(guī)及倒計時VHDL設(shè)計LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY SIZU_FGQ IS -實體的定義 PORT(CLA,CLK,CLR,A,B,C,D:IN STD_LOGIC; FG1,FG2,FG3,FG4:OUT STD_LOGIC; QA:OUT STD_LOGIC_VECTOR(3 DOWNTO 0); QB:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);END EN

27、TITY SIZU_FGQ;ARCHITECTURE ART OF SIZU_FGQ IS -結(jié)構(gòu)體的定義 CONSTANT WW1:STD_LOGIC_VECTOR:="0000" -常量定義并賦初值 CONSTANT WW2:STD_LOGIC_VECTOR:="0110" CONSTANT S1:STD_LOGIC:='1' CONSTANT S2:STD_LOGIC:='0' BEGIN PROCESS(CLK)IS -進程說明敏感信號為CLK VARIABLE TMPA:STD_LOGIC_VECTOR(3 DO

28、WNTO 0); VARIABLE TMPB:STD_LOGIC_VECTOR(3 DOWNTO 0); BEGIN IF CLR='1'THEN TMPA:=WW1;TMPB:=WW2; ELSIF CLK'EVENT AND CLK='1'THEN IF CLA='1' THEN IF TMPA="0000"THEN TMPA:="1001" IF TMPB="0000"THEN TMPB:="0110" ELSE TMPB:=TMPB-'1

29、9; END IF; ELSE TMPA:=TMPA-'1' END IF; END IF;END IF; QA<=TMPA; -個位 QB<=TMPB; -十位 END PROCESS;PROCESS(CLA,A,B,C,D)BEGINIF CLA='0' THENIF A='1' THEN FG1<=S1;ELSE FG1<=S2;END IF;IF B='1' THEN FG2<=S1;ELSE FG2<=S2;END IF;IF C='1' THEN FG3<=S1

30、;ELSE FG3<=S2;END IF;IF D='1' THEN FG4<=S1;ELSE FG4<=S2;END IF;END IF;END PROCESS; END ARCHITECTURE ART;2.犯規(guī)及倒計時波形仿真圖5犯規(guī)及倒計時波形仿真圖3.犯規(guī)及倒計時元件圖圖6 犯規(guī)及倒計時元件圖4.犯規(guī)及倒計時輸入和輸出說明表接口名稱類型(輸入/輸出)結(jié)構(gòu)圖上的信號名引腳號說明STARTINCLA9復(fù)位按鍵Maichong_cpINCLK16脈沖cpFWINCLR17計時復(fù)位按鍵ZU1INA5第一組ZU2INB6第二組ZU3INC7第三組ZU4IND8

31、第四組Fgd1OUTFG125第一組犯規(guī)燈Fgd2OUTFG229第二組犯規(guī)燈Fgd3OUTFG328第三組犯規(guī)燈Fgd4OUTFG427第四組犯規(guī)燈AIN43.0OUTQA3.022倒計時個位AIN43.0OUTQB3.021倒計時十位表3犯規(guī)及倒計時輸入和輸出說明表(四)譯碼器VHDL設(shè)計及波形仿真1. 譯碼器VHDL設(shè)計LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY SIZU_YMQ IS - 實體體說明 PORT(AIN4:IN STD_LOGIC_VECTOR(3 DOWN

32、TO 0); DOUT7:OUT STD_LOGIC_VECTOR(6 DOWNTO 0);END ENTITY;ARCHITECTURE ART OF SIZU_YMQ IS - 結(jié)構(gòu)體說明 BEGIN PROCESS(AIN4) - 進程說明 BEGIN CASE AIN4 IS WHEN"0000"=>DOUT7<="0111111" WHEN"0001"=>DOUT7<="0000110" WHEN"0010"=>DOUT7<="101101

33、1" WHEN"0011"=>DOUT7<="1001111" WHEN"0100"=>DOUT7<="1100110" WHEN"0101"=>DOUT7<="1101101" WHEN"0110"=>DOUT7<="1111101" WHEN"0111"=>DOUT7<="0000111" WHEN"1000&qu

34、ot;=>DOUT7<="1111111" WHEN"1001"=>DOUT7<="1101111" WHEN OTHERS=>DOUT7<="0000000" END CASE; END PROCESS;END ARCHITECTURE;2.譯碼器波形仿真圖7譯碼器波形仿真圖3.譯碼器元件圖圖8譯碼器元件圖4.譯碼器輸入輸出說明表接口名稱類型(輸入/輸出)結(jié)構(gòu)圖上的信號名引腳號說明QB3.0INA1N43.06輸入JSXS26.0OUTDOUT76.038輸出表4譯碼器輸入和輸

35、出說明表四、四路搶答器電路總體設(shè)計結(jié)果(一)四路搶答器總體設(shè)計與仿真1.四路搶答器電路邏輯實現(xiàn)原理總圖圖9 四路搶答器電路邏輯實現(xiàn)原理總圖2. 四路搶答器電路波形仿真圖圖10 四路搶答器電路波形仿真圖3四組搶答器電路圖引腳輸入輸出說明表接口名稱類型(輸入/輸出)結(jié)構(gòu)圖上的信號名引腳號說明STARTINCLA9開始按鍵Maichong_cpINCLK16脈沖cpFWINCLR17計時復(fù)位按鍵ZU1INA5第一組ZU2INB6第二組ZU3INC7第三組ZU4IND8第四組FuweiINRST59計分器復(fù)位端ShizhongcpINCLK10計數(shù)器時鐘端JiafenINJia11加分按鍵jianfe

36、nINjian56減分按鍵Fgd1OUTFG125第一組犯規(guī)燈Fgd2OUTFG229第二組犯規(guī)燈Fgd3OUTFG328第三組犯規(guī)燈Fgd4OUTFG427第四組犯規(guī)燈Shumaguan16.0OUTQA3.023倒計時個位Shumaguan26.0OUTQB3.024倒計時十位Shumaguan36.0OUTDOUT76.018顯示搶答成功組Shumaguan43.0OUTAA13.026顯示1組得分個位數(shù)Shumaguan53.0OUTAA23.033顯示1組得分十位數(shù)Shumaguan63.0OUTBB13.034顯示2組得分個位數(shù)Shuamguan73.0OUTBB23.035顯示2組得分十位數(shù)Shuamguan83.0OUTCC13.036顯示3組得分個位數(shù)S

溫馨提示

  • 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

提交評論