版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、湖南科技大學信息與電氣工程學院VHDL硬件描述語言課程設計報告題 目: 數(shù)字頻率計 專 業(yè): 通信工程 班 級: 一班 姓 名: 學 號: 指導教師: 胡仕剛 2015年 01月 04日信息與電氣工程學院課程設計任務書20 20 學年第 學期專業(yè): 學號: 姓名: 課程設計名稱: 設計題目: 完成期限:自 年 月 日至 年 月 日共 周設計依據(jù)、要求及主要內容(可另加附頁):指導教師(簽字): 批準日期: 年 月 日目錄摘要1引言2第一章 概述21.1 設計概述21.2課程設計的總體目標21.3 設計內容21.4 設計原理21.5 設計功能3第二章 數(shù)字頻率計系統(tǒng)分析32.1數(shù)字頻率計的設計任
2、務及要求32.2 模塊的劃分32.3設計分析4第三章 各功能模塊基于VHDL的設計43.1 時基產(chǎn)生與測頻時序控制電路模塊的VHDL源程序43.2 待測信號脈沖計數(shù)電路模塊的VHDL源程序53.2.1 十進制加法計數(shù)器的VHDL源程序53.2.2待測信號脈沖計數(shù)器的VHDL源程序63.3 鎖存與譯碼顯示控制電路模塊的VHDL源程序73.3.1 譯碼顯示電路的VHDL源程序73.3.2 鎖存與譯碼顯示控制模塊的VHDL源程序73.4 頂層電路的VHDL源程序8第四章 數(shù)字頻率計波形仿真94.1 時基產(chǎn)生與測頻時序控制電路模塊的仿真94.2 待測信號脈沖計數(shù)電路模塊的仿真104.2.1 十進制加法
3、計數(shù)器的仿真104.2.2待測信號脈沖計數(shù)器的仿真104.3 鎖存與譯碼顯示控制電路模塊的仿真104.3.1 譯碼顯示電路的仿真114.3.2 鎖存與譯碼顯示控制模塊的仿真114.4 數(shù)字頻率計系統(tǒng)的仿真11第五章 體會和建議12參考文獻:13摘要 本文介紹了一種自頂向下分層設計多功能數(shù)字頻率計的設計方法。該頻率計采用VHDL硬件描述語言編程以MAX+PLUS為開發(fā)環(huán)境,極大地減少了硬件資源的占用。數(shù)字頻率計模塊劃分的設計具有相對獨立性,可以對模塊單獨進行設計、調試和修改,縮短了設計周期。該數(shù)字頻率計的測量范圍為lHz1MHz,響應時間小于等于15秒;其測試結果由4只七段數(shù)碼管穩(wěn)定顯示,測量誤
4、差小于等于1 。仿真波形與分析結果表明,所設計的電路通過硬件仿真能夠滿足數(shù)字頻率計的功能要求,具有理論與實踐意義,實現(xiàn)了電子電路自動化的過程。數(shù)字頻率計模塊劃分的設計具有相對獨立性,可以對模塊單獨進行設計、調試和修改,縮短了設計周期。關鍵詞:VHDL 數(shù)字頻率計 EDA MAX+PLUSAbstractThis paper presents a top-down design of multi-layered design method of digital frequency meter. The frequency counter using VHDL hardware descripti
5、on language programming in MAX + PLUS for the development environment, greatly reducing the hardware resources of the occupation. Digital frequency meter module design division of the relative independence of the separate modules can design, debug and modify, shorten the design cycle. The digital fr
6、equency meter measurement range of lHz 1MHz, response time of 15 seconds or less; the test results from the four seven-segment digital tube display stability, measurement error is less than equal to 1%. Simulation waveforms and analysis results show that the designed circuit simulation by hardware t
7、o meet the functional requirements of digital frequency meter of great theoretical and practical significance of the electronic circuit to achieve the automated process. Digital frequency meter module design division of the relative independence of the separate modules can design, debug and modify,
8、shorten the design cycle.Key words: VHDL Digital frequency meter EDA MAX+PLUS引言數(shù)字頻率計是數(shù)字電路中的一個典型應用,實際的硬件設計用到的器件較多,連線比較復雜,而且會產(chǎn)生較大的延時,造成測量誤差、可靠性差。隨著可編程邏輯器件(CPLD)的廣泛應用,以EDA工具為開發(fā)平臺,利用VHDL(Very High Speed Integrated Circuit Hardware Description Language,超高速集成電路硬件描述語言)工業(yè)標準硬件描述語言,采用自頂向下(Top to Down)和基于庫(Lib
9、rary-based)的設計,設計者不但可以不必了解硬件結構設計,而且將使系統(tǒng)大大簡化,提高整體的性能和可靠性。第一章 概述1.1 設計概述所謂頻率,就是周期信號在單位時間(1s)里變化的次數(shù)。本數(shù)字頻率計的設計思路是:(1) 根據(jù)頻率計的測頻原理,可以選擇合適的時基信號對輸入被測信號脈沖進行計數(shù),實現(xiàn)測頻的目的。(2) 根據(jù)數(shù)字頻率計的基本原理,本文設計方案的基本思想是分為三個模塊來實現(xiàn)其功能,即時基產(chǎn)生與測頻時序控制電路模塊、待測信號脈沖計數(shù)電路模塊和鎖存與譯碼顯示控制電路模塊,并且分別用VHDL對其進行編程,實現(xiàn)計數(shù)電路、鎖存電路、顯示電路等。1.2課程設計的總體目標(1)、本設計的任務
10、是熟悉支持VHDL語言的軟件,例如:MAXPLUS2,ISP,F(xiàn)OUNDATION等,利用這一類軟件使用VHDL語言進行設計。(2)、熟悉數(shù)字電路及相關專業(yè)課程的基本知識并能聯(lián)系具體程序 (3)、正確操作使用VHDL語言相關軟件,能編譯,調試,仿真VHDL語言程序(4)、設計數(shù)字電路,編寫程序,實現(xiàn)電路功能。1.3 設計內容分析數(shù)字頻率計的功能,完成功能模塊的劃分,分別用VHDL語言完成底層模塊的設計和以原理圖的方法完成頂層模塊的設計,分別對各個模塊以及頂層模塊進行仿真分析,最后在硬件開發(fā)平臺上進行測試。1.4 設計原理眾所周知,頻率信號易于傳輸,抗干擾性強,可以獲得較好的測量精度。因此,頻率
11、檢測是電子測量領域最基本的測量之一。頻率計的基本原理是用一個頻率穩(wěn)定度高的頻率源作為基準時鐘,對比測量其他信號的頻率。通常情況下計算每秒內待測信號的脈沖個數(shù),即閘門時間為1s。閘門時間可以根據(jù)需要取值,大于或小于1S都可以。閘門時間越長,得到的頻率值就越準確,但閘門時間越長,則每測一次頻率的間隔就越長。閘門時間越短,測得的頻率值刷新就越快,但測得的頻率精度就受影響。一般取1s作為閘門時間。數(shù)字頻率計的關鍵組成部分包括測頻控制信號發(fā)生器、計數(shù)器、鎖存器、譯碼驅動電路和顯示電路,其原理框圖如圖1. 1所示。計數(shù)器鎖存器譯碼驅動電路數(shù)碼管顯示測頻控制信號發(fā)生器圖1.1 原理框圖待測信號1.5 設計功
12、能 四位十進制數(shù)字頻率計用四組七段譯碼顯示的數(shù)字頻率計,其頻率測量范圍為1Hz10kHz。采用記憶顯示的方法,即在測量過程中不刷新數(shù)據(jù),等數(shù)據(jù)過程結束后才顯示測量結果,給出待測信號的頻率值,并保存到下一次測量結束,顯示時間不少于1秒。第二章 數(shù)字頻率計系統(tǒng)分析2.1數(shù)字頻率計的設計任務及要求設計一個四位十進制的數(shù)字頻率計,要求具有以下功能:(1) 測量范圍:1Hz10kHz。(2) 測量誤差1%。(3) 響應時間15s。(4) 顯示時間不少于1s。(5) 具有記憶顯示的功能,即在測量的過程中不刷新數(shù)據(jù),等數(shù)據(jù)過程結束后才顯示測量結果,給出待測信號的頻率值,并保存到下一次測量結束。2.2 模塊的
13、劃分根據(jù)系統(tǒng)設計要求,系統(tǒng)設計采用自頂向下的設計方法,系統(tǒng)的組成框圖如圖3. 1所示,包括時基產(chǎn)生與測頻時序控制電路模塊,以及待測信號脈沖計數(shù)電路模塊和鎖存與譯碼顯示控制電路模塊。時基產(chǎn)生與測頻時序控制電路待測信號脈沖計數(shù)電路鎖存與譯碼顯示電路ENCLRLOCKq0:15z10:6z20:6z30:6z40:6待測信號F_IN標準時鐘CLK圖3.1 數(shù)字頻率計的組成框圖(1) 時基產(chǎn)生與測頻時序控制電路模塊時基產(chǎn)生與測頻時序控制電路的主要產(chǎn)生計數(shù)允許信號EN、清零信號CCLR和鎖存信號LOCK。(2) 待測信號脈沖計數(shù)電路模塊待測信號脈沖計數(shù)電路是對待測脈沖信號的頻率進行測量,它可由4個十進制
14、加法計數(shù)器組成,其中EN為計數(shù)選通控制信號,CLR為計數(shù)器清零信號。在計數(shù)器清零信號CLR清零后,當計數(shù)選通控制信號EN有效時,開始對待測信號進行計數(shù)。如果計數(shù)選通控制信號EN的寬度為1s,那么計數(shù)結果就為待測信號的頻率;如果計數(shù)選通信號EN的寬度為100ms,那么待測信號的頻率等于計數(shù)結果10。(3) 鎖存與譯碼顯示控制電路模塊鎖存與譯碼顯示控制電路用于實現(xiàn)記憶顯示,在測量過程中不刷新新的數(shù)據(jù),直到測量過程結束后,鎖存顯示測量結果,并且保存到下一次測量結束。鎖存與譯碼顯示電路的功能是對四位BCD碼進行鎖存,并轉換為對應的4組七段碼,用于驅動數(shù)碼管。2.3設計分析采用VHDL語言設計一個復雜的
15、電路系統(tǒng),運用自頂向下的設計思想,將系統(tǒng)按功能逐層分割的層次化設計方法進行設計。在頂層對內部各功能塊的連接關系和對外的接口關系進行了描述,而功能塊的邏輯功能和具體實現(xiàn)形式則由下一層模塊來描述。各功能模塊采用VHDL語言來描述。第三章 各功能模塊基于VHDL的設計3.1 時基產(chǎn)生與測頻時序控制電路模塊的VHDL源程序程序ctrl.vhdLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CTRL IS PORT(CLK: IN STD_LOGIC; -系統(tǒng)時鐘 LOCK: OUT STD_
16、LOGIC; -鎖存信號 EN: OUT STD_LOGIC; -計數(shù)允許信號 CLR: OUT STD_LOGIC); -清零信號END;ARCHITECTURE ART OF CTRL IS SIGNAL Q: STD_LOGIC_VECTOR(3 DOWNTO 0); -定義變量BEGINPROCESS(CLK) BEGIN IF(CLK'EVENT AND CLK='1')THEN -檢測時鐘上升沿 IF Q="1111"THEN Q<="0000" -計數(shù)大于15,清零 ELSE Q<=Q+'1
17、9; -允許計數(shù) END IF; END IF; EN<=NOT Q(3); LOCK<=Q(3) AND NOT(Q(2) AND Q(1); CLR<=Q(3) AND Q(2) AND NOT(Q(1); END PROCESS;END ART; 程序主要講述了由時鐘信號產(chǎn)生計數(shù)允許信號、清零信號和鎖存信號,而且限定了響應時間為不超過15s。3.2 待測信號脈沖計數(shù)電路模塊的VHDL源程序3.2.1 十進制加法計數(shù)器的VHDL源程序程序cb10.vhdLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_
18、UNSIGNED.ALL;ENTITY CB10 IS PORT(CLK,EN,CLR: IN STD_LOGIC; COUNT10: BUFFER STD_LOGIC_VECTOR(3 DOWNTO 0); -計數(shù)輸信號END CB10;ARCHITECTURE ART OF CB10 IS -結構體 BEGIN PROCESS(CLK,CLR,EN) BEGIN IF CLR='1' THEN COUNT10<="0000" -計數(shù)器清零 ELSIF RISING_EDGE(CLK) THEN -檢測時鐘上升沿 IF(EN='1')
19、 THEN -檢測是否允許計數(shù) IF COUNT10="1001" THEN COUNT10<="0000" -計數(shù)值滿9清零 ELSE COUNT10<=COUNT10+'1' -允許計數(shù) END IF; END IF; END IF; END PROCESS;END ART; 程序主要講述了十進制加法計數(shù)器的使用,在符合了一定的標準以后十進制的使用,在計數(shù)器滿9后清零。3.2.2待測信號脈沖計數(shù)器的VHDL源程序程序count.vhdLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE
20、IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY COUNT IS PORT(CLK: IN STD_LOGIC; -待測時鐘信號 EN: IN STD_LOGIC; -計數(shù)選通控制信號 CLR: IN STD_LOGIC; -計數(shù)器清零信號 QA,QB,QC,QD: BUFFER STD_LOGIC_VECTOR(3 DOWNTO 0); -結果輸出信號END;ARCHITECTURE ART OF COUNT IS COMPONENT CB10 -元件CB10引用說明語句 PORT(CLK,EN,CLR: IN STD_LOGIC; COUNT10: BUFFER ST
21、D_LOGIC_VECTOR(3 DOWNTO 0); -計數(shù)輸出信號 END COMPONENT; SIGNAL CLK2: STD_LOGIC; SIGNAL CLK3: STD_LOGIC; SIGNAL CLK4: STD_LOGIC; BEGIN CLK2<=NOT QA(3); CLK3<=NOT QB(3); CLK4<=NOT QC(3); U1:CB10 PORT MAP(CLK,EN,CLR,QA); -元件引用例示 U2:CB10 PORT MAP(CLK2,EN,CLR,QB); -元件引用例示 U3:CB10 PORT MAP(CLK3,EN,CLR
22、,QC); -元件引用例示 U4:CB10 PORT MAP(CLK4,EN,CLR,QD); -元件引用例示END ART;3.3 鎖存與譯碼顯示控制電路模塊的VHDL源程序3.3.1 譯碼顯示電路的VHDL源程序程序bcd7.vhdLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY BCD7 IS PORT(BCD: IN STD_LOGIC_VECTOR(3 DOWNTO 0); -BCD輸入信號 LED: OUT STD_LOGIC_VECTOR(6 DOWNTO 0); -七段譯碼輸出信號END;ARCHITECTURE ART OF BC
23、D7 IS BEGIN LED<="0111111" WHEN BCD="0000" ELSE -對照七段字形顯示譯碼器真值表 "0000110" WHEN BCD="0001" ELSE "1011011" WHEN BCD="0010" ELSE "1001111" WHEN BCD="0011" ELSE "1100110" WHEN BCD="0100" ELSE "110
24、1101" WHEN BCD="0101" ELSE "1111101" WHEN BCD="0110" ELSE "0000111" WHEN BCD="0111" ELSE "1111111" WHEN BCD="1000" ELSE "1101111" WHEN BCD="1001" ELSE "0000000"END ART; 程序主要講述了七段譯碼器的顯示問題,對應的給出了信號
25、輸入過程中七段譯碼器的各種顯示。3.3.2 鎖存與譯碼顯示控制模塊的VHDL源程序程序lock.vhdLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY LOCK IS PORT(LOCK: IN STD_LOGIC; QA,QB,QC,QD: IN STD_LOGIC_VECTOR(3 DOWNTO 0); LEDA,LEDB,LEDC,LEDD: OUT STD_LOGIC_VECTOR(6 DOWNTO 0);-頻率計數(shù)輸出END;ARCHITECTURE ART OF LOCK IS SIGNAL QAL,QBL,QCL,QDL: STD_L
26、OGIC_VECTOR(3 DOWNTO 0); COMPONENT BCD7 -元件BCD7引用說明語句 PORT(BCD: IN STD_LOGIC_VECTOR(3 DOWNTO 0); LED: OUT STD_LOGIC_VECTOR(6 DOWNTO 0); END COMPONENT; BEGIN PROCESS(LOCK) BEGIN IF(LOCK'EVENT AND LOCK='1')THEN -檢測時鐘上升沿 QAL<=QA; QBL<=QB; QCL<=QC; QDL<=QD; END IF; END PROCESS; U
27、0: BCD7 PORT MAP(QAL,LEDA); -元件引用例示 U1: BCD7 PORT MAP(QBL,LEDB); -元件引用例示 U2: BCD7 PORT MAP(QCL,LEDC); -元件引用例示 U3: BCD7 PORT MAP(QDL,LEDD); -元件引用例示END ART; 程序主要講述了調用七段譯碼器的顯示,將輸入的信號經(jīng)過譯碼之后在七段譯碼器上進行顯示。3.4 頂層電路的VHDL源程序程序pinlvji.vhdLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY PINLVJI IS PORT(F_IN,CLK:
28、IN STD_LOGIC; ENT,LOCKT,CLRT: BUFFER STD_LOGIC; Z1,Z2,Z3,Z4: OUT STD_LOGIC_VECTOR(6 DOWNTO 0);END PINLVJI;ARCHITECTURE ART OF PINLVJI IS SIGNAL ENS,LOCKS,CLRS: STD_LOGIC; SIGNAL QAS,QBS,QCS,QDS: STD_LOGIC_VECTOR(3 DOWNTO 0);COMPONENT CTRL -元件CTRL引用說明語句 PORT(CLK: IN STD_LOGIC; EN,LOCK,CLR: OUT STD_LO
29、GIC);END COMPONENT;COMPONENT COUNT -元件COUNT引用說明語句 PORT(CLK,EN,CLR: IN STD_LOGIC; QA,QB,QC,QD: OUT STD_LOGIC_VECTOR(3 DOWNTO 0);END COMPONENT;COMPONENT LOCK -元件LOCK引用說明語句 PORT(LOCK: IN STD_LOGIC; QA,QB,QC,QD: IN STD_LOGIC_VECTOR(3 DOWNTO 0); LEDA,LEDB,LEDC,LEDD: OUT STD_LOGIC_VECTOR(6 DOWNTO 0);END C
30、OMPONENT; BEGIN ENT<=ENS; LOCKT<=LOCKS; CLRT<=CLRS; U1:CTRL PORT MAP(CLK,ENS,LOCKS,CLRS); -元件引用例示 U2:COUNT PORT MAP(F_IN,ENS,CLRS,QAS,QBS,QCS,QDS); -元件引用例示 U3:LOCK PORT MAP(LOCKS,QAS,QBS,QCS,QDS,Z1,Z2,Z3,Z4); -元件引用例示 END ART;第四章 數(shù)字頻率計波形仿真4.1 時基產(chǎn)生與測頻時序控制電路模塊的仿真圖4.1 時基產(chǎn)生與測頻時序控制模塊的仿真圖圖4. 2 時基產(chǎn)
31、生與測頻時序控制電路模塊的仿真圖的詳細 圖4.1顯示的是時基產(chǎn)生與測頻時序控制電路模塊的仿真圖,很鮮明的給出了時鐘信號與計數(shù)允許信號、清零信號和鎖存信號的關系,而圖5. 2更加詳細的給出了計數(shù)允許信號、清零信號和鎖存信號與變量Q之間所存在的相對應的關系。4.2 待測信號脈沖計數(shù)電路模塊的仿真4.2.1 十進制加法計數(shù)器的仿真圖4.3 十進制加法計數(shù)器的仿真圖 圖4.3顯示的是十進制加法計數(shù)器的仿真圖,它詳細的給出了計數(shù)輸出信號與計數(shù)允許信號和清零信號之間的關系,能清楚的理解當CLR為0時,輸出為0;在EN為1選通有效后,則開始計數(shù)。4.2.2待測信號脈沖計數(shù)器的仿真圖4.4 測信號脈沖計數(shù)器的仿真圖4.4顯示的是測信號脈沖計數(shù)器的仿真圖,以圖文的形式更直接的表現(xiàn)了信號脈沖的計數(shù)值,簡介明了。4.3 鎖存與譯碼顯示控制電路模塊的仿真4.3.1 譯碼顯示電路的仿真圖4.5 譯碼顯示電路的仿真圖 圖4.5顯示的是譯碼顯示電路的仿真圖,它直接用圖形詮釋了程序中語句的意思,讓人一目了然,更簡單的了
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 煙囪安全評估協(xié)議
- 通信光纜鋪設圍擋施工合同
- 數(shù)據(jù)泄露賠償協(xié)議
- 石家莊市電影院租賃合同
- 設備轉讓協(xié)議書簽訂
- 房地產(chǎn)合同定制
- 城市文化國標施工合同樣本
- 體育館工程圍墻施工合同
- 商業(yè)大樓硬化施工合同
- 教育機構教師勞動合同樣本
- 2024年01月11032成本管理期末試題答案
- 年高考新課標I卷語文試題講評課件
- 2024年高中班主任德育工作計劃(5篇)
- 浙江省嘉興市2023-2024學年高二上學期1月期末檢測數(shù)學試題
- 2024-2025學年語文二年級上冊 部編版期末測試卷 (含答案)
- 廢棄油管道注漿施工方案
- 2021-2022學年廣東省深圳市龍崗區(qū)六年級上學期期末英語試卷
- 資金托盤業(yè)務協(xié)議
- 消防水帶使用培訓
- 電力設備維護保養(yǎng)計劃手冊
- 滑坡治理工程監(jiān)測實施方案
評論
0/150
提交評論