




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上題 目: 作 者: 學 號: 所屬學院: 專業(yè)年級: 完成時間: 8位十進制數(shù)字頻率計的設計 摘 要數(shù)字頻率計是用數(shù)字顯示被測信號頻率的儀器,被測信號是方波信號。數(shù)字頻率計廣泛應用于科研機構、學校、實驗室、企業(yè)生產(chǎn)車間等場所。研究數(shù)字頻率計的設計和開發(fā),有助于頻率計功能的不斷完善、性價比的提高和實用性的加強。 本文介紹了一種自頂向下分層設計多功能數(shù)字頻率計的設計方法。該頻率計采用 Verilog 硬件描述語言編程,以 QuartusII為開發(fā)環(huán)境,極大地減少了硬件資源的占用。數(shù)字頻率計模塊劃分的設計具有相對獨立性,可以對模塊單獨進行設計、調(diào)試和修改,縮短了設計周期。所
2、設計的Verilog語言通過仿真能夠較好的測出所給頻率并且滿足數(shù)字頻率計的自動清零和自動測試的功能要求,具有理論與實踐意義。關鍵詞:Verilog ;數(shù)字頻率計; EDA; QuartusII第一章 EDA技術原理與概述1.1可編程邏輯器件基本原理FPGA 4-5是一種高密度的可編程邏輯器件,自從Xilinx公司1985年推出第一片F(xiàn)PGA以來,FPGA的集成密度和性能提高很快,其集成密度最高達1000萬門/片以上,系統(tǒng)性能可達300MHz。由于FPGA器件集成度高,方便易用,開發(fā)和上市周期短,在數(shù)字設計和電子生產(chǎn)中得到迅速普及和應用。FPGA采用了邏輯單元陣列LCA(Logic Cell A
3、rray)這樣一個概念,內(nèi)部包括可配置邏輯模塊CLB(Configurable Logic Block)、輸出輸入模塊IOB(Input Output Block)和內(nèi)部連線(Interconnect)三個部分。 現(xiàn)場可編程門陣列(FPGA)是可編程器件。與傳統(tǒng)邏輯電路和門陣列(如PAL,GAL及CPLD器件)相比,F(xiàn)PGA具有不同的結構,F(xiàn)PGA利用小型查找表(16×1RAM)來實現(xiàn)組合邏輯,每個查找表連接到一個D觸發(fā)器的輸入端,觸發(fā)器再來驅(qū)動其他邏輯電路或驅(qū)動I/O,由此構成了既可實現(xiàn)組合邏輯功能又可實現(xiàn)時序邏輯功能的基本邏輯單元模塊,這些模塊間利用金屬連線互相連接或連接到I/O
4、模塊。FPGA的邏輯是通過向內(nèi)部靜態(tài)存儲單元加載編程數(shù)據(jù)來實現(xiàn)的,存儲在存儲器單元中的值決定了邏輯單元的邏輯功能以及各模塊之間或模塊與I/O間的聯(lián)接方式,并最終決定了FPGA所能實現(xiàn)的功能,F(xiàn)PGA允許無限次的編程。 FPGA器件優(yōu)點:高密度、高速率、系列化、標準化、小型化、多功能、低功耗、低成本,設計靈活方便,可無限次反復編程,并可現(xiàn)場模擬調(diào)試驗證。1.2硬件描述語言 目前最主要的硬件描述語言是VHDL和Verilog HDL,Verilog HDL和HDL都是用于邏輯設計的硬件描述語言,并且都已成為IEEE標準。VHDL發(fā)展的較早,語法嚴格,而Verilog HDL是在C語言的基礎上發(fā)展起
5、來的一種硬件描述語言,語法較自由。 VHDL和Verilog HDL兩者相比,VHDL的書寫規(guī)則比Verilog煩瑣一些,但verilog自由的語法也容易讓少數(shù)初學者出錯。Verilog HDL和VHDL作為描述硬件電路設計的語言,其共同的特點在于:能形式化地抽象表示電路的行為和結構、支持邏輯設計中層次與范圍的描述、可借用高級語言的精巧結構來簡化電路行為的描述、具有電路仿真與驗證機制以保證設計的正確性、支持電路描述由高層到低層的綜合轉換、硬件描述與實現(xiàn)工藝無關。本設計是用的Verilog語言來實現(xiàn)數(shù)字頻率計的設計的,本設計將重點介紹Verilog語言。Verilog語言主要用于描述數(shù)字系統(tǒng)的結
6、構,行為,功能和接口。Verilog的程序結構特點是將一項工程設計,或稱設計實體(可以是一個元件,一個電路模塊或一個系統(tǒng))分成外部(或稱可是部分,及端口)和內(nèi)部(或稱不可視部分),既涉及實體的內(nèi)部功能和算法完成部分。在對一個設計實體定義了外部界面后,一旦其內(nèi)部開發(fā)完成后,其他的設計就可以直接調(diào)用這個實體。這種將設計實體分成內(nèi)外部分的概念是Verilog系統(tǒng)設計的基本點。Verilog語言能夠成為標準化的硬件描述語言并獲得廣泛應用,它自身必然具有很多其他硬件描述語言所不具備的優(yōu)點。Verilog程序組成部分由實體、構造體、配置、包集合、庫5個部分組成。各組成部分的作用是:(1)實體:用于描述所設
7、計的系統(tǒng)的外部接口信號。(2)構造體:用于描述系統(tǒng)內(nèi)部結構和行為。(3)配置:用于從庫中選取不同單元(器件)來組成系統(tǒng)設計的不同版本。(4)包集合:存放各設計模塊都能共享的數(shù)據(jù)類型,常數(shù)和子程序等。(5)庫:可由系統(tǒng)工程師生成或由ASIC芯片商提供,以便在設計中共享。 詳細介紹QuartusII文本編輯輸入法的使用方法:1.編輯設計文件(1) 新建一個文件夾。利用資源管理器,新建一個文件夾,如e:SIN GNT。(2) 輸入源程序。打開QuartusII,執(zhí)行FileNew,在New窗口中的“Device Design Files”中選擇編譯文件的語言類型,這里選“Verilog Files”
8、,然后在Verilog文本編譯窗口中鍵入Verilog程序。如圖2.3所示。(3) 文件存盤。執(zhí)行FileSave As,找到已設立的文件夾e:SIN_GNT,存盤文件名應該與實體名一致。2.創(chuàng)建工程(1)建立新工程管理窗。執(zhí)行FileNew Project Wizard命名,在圖2.4對話框進行工程設置。(2)將設計文件加入工程中。(3)選擇仿真器和綜合器類型。(4)選擇芯片。(5)結束設置。3.編譯前設置 (1) 選擇目標芯片,執(zhí)行Assignmemtssettings命令,在彈出的對話框中選Compiler Settings項下的Device選目標芯片。(2)選擇目標器件編程配置方式,由
9、圖2.5的按鈕Device Pin Options進入選擇窗,可選Configuration方式為Active Serial。 (3)在下圖所示的Programming Files窗口,Hexadecimal(Intel-Format)output File,即產(chǎn)生下載文件的同時,產(chǎn)生二進制十六進制配置文件fraqtest.hexout,可用于單片機與EPROM構成的FPGA配置電路系統(tǒng)如圖2.6所示。4.編譯及了解編譯結果首先執(zhí)行ProcessingStart Compilation命令,啟動全程編譯,如果工程中的文件有錯誤,在下方的Processing處理欄中會顯示出來。對于Process
10、ing欄顯示出的語句格式錯誤,可雙擊此條文,即彈出Verilog文件,在閃動的光標處(或附近)可發(fā)現(xiàn)文件中的錯誤。再次進行編譯直至排除所有錯誤第二章 數(shù)字頻率計的系統(tǒng)分析2.1 8位十進制數(shù)字頻率計系統(tǒng)設計的原理2.1.1數(shù)字頻率計的基本原理數(shù)字頻率計的基本原理是用一個頻率穩(wěn)定度高的頻率源作為基準時鐘,通常情況下計算每秒內(nèi)待測信號的脈沖個數(shù),此時我們稱閘門時間為1秒。閘門時間也可以大于或小于一秒。閘門時間越長,得到的頻率值就越準確,但閘門時間越長則每測一次頻率的間隔就越長。閘門時間越短,測的頻率值刷新就越快,但測得的頻率精度就受影響。數(shù)字頻率計的主要功能是測量周期信號的頻率。頻率是單位時間(1
11、S)內(nèi)信號發(fā)生周期變化的次數(shù)。如果我們能在給定的1S時間內(nèi)對信號波形計數(shù),并將計數(shù)結果顯示出來,就能讀取被測信號的頻率。數(shù)字頻率計首先必須獲得相對穩(wěn)定與準確的時間,同時將被測信號轉換成幅度與波形均能被數(shù)字電路識別的脈沖信號,然后通過計數(shù)器計算這一段時間間隔內(nèi)的脈沖個數(shù),將其換算后顯示出來。這就是數(shù)字頻率計的基本原理。2.1.2 系統(tǒng)總體框架圖 總體框圖設計思路:由20MHz系統(tǒng)時鐘分頻得到0.5Hz的基準時鐘。在基準時鐘的1S 高電平期間計被測頻率的脈沖個數(shù),1S高電平結束時計數(shù)結束,所記錄的脈沖個數(shù)是被測信號的頻率,為了在數(shù)碼管上顯示計數(shù)結果需要鎖存器將所計的數(shù)鎖存,因此,在基準時鐘下降沿來
12、的時候鎖存器實現(xiàn)鎖存功能。為了下次計數(shù)必須將本次計數(shù)的結果清零,所以在基準時鐘低電平期間對計數(shù)器清零。被測頻率從計數(shù)器的是中端輸入實現(xiàn)頻率的測試。將鎖存器鎖存的數(shù)據(jù)輸入掃描器,通過譯碼器將鎖存的二進制數(shù)譯成十進制然后顯示到數(shù)碼管上,最終被讀出來。2.2 8位十進制數(shù)字頻率計設計任務及要求用測頻法設計一個八位十進制的數(shù)字頻率器,測頻范圍是1HZ到HZ。(1)測量范圍信號:方波、正弦波;幅度:0.5V5V;頻率:1HzHZ。(2)測量范圍信號:脈沖波;幅度:0.5V5V;脈沖寬度100s.測量誤差1%。(3)顯示器:十進制數(shù)字顯示,顯示刷新時間110秒連續(xù)可調(diào),對上述三種測量功能分別用不同顏色的發(fā)
13、光二極管指示。 (4)具有自校功能,時標信號頻率為1HZ第三章 各功能模塊基于Verilog的設計3.1 8位十進制數(shù)字頻率計的電路邏輯圖 8位十進制數(shù)字頻率計的電路邏輯圖,它由一個測頻控制信號發(fā)生器TESTCTL、8個有時鐘使能的十進制計數(shù)器CNT10、一個32位鎖存器REG32B 8組成。以下分別敘述頻率計各邏輯模塊的功能與設計方法。8位十進制數(shù)字頻率計的電路邏輯如圖4.18所示。圖4.1 8位十進制數(shù)字頻率計的電路邏輯圖3.2系統(tǒng)時鐘分頻的功能模塊(1)系統(tǒng)時鐘分頻的分頻功能模塊如圖4.4所以。圖4.4 系統(tǒng)時鐘分頻的功能模塊圖(2)源程序如下: module fre_div(
14、clk,clkout); /輸入20MHz,輸出分頻到1Hzinput clk; output clkout;reg clkout;reg31:0 counter; / 中間變量counter定義為寄存器型parameter N=20_000_000; always(posedge clk) begin if(counter= N/2-1)beginclkout <= clkout; counter<=0;end else counter<=counter+1'b1; endendmodule3.4.2鎖存器的功能模塊(1)32位鎖存器的功能模塊如圖4.6所示。圖4.
15、6 鎖存器的功能模塊圖(2)源程序如下:module REG32B (LOAD, DIN, DOUT); input LOAD; input31:0 DIN; output31:0 DOUT; reg31:0 DOUT; always (posedge LOAD) begin : xhdl_1 / 時鐘到來時,鎖存輸入示 DOUT <= DIN ; end endmodule3.5 數(shù)碼管掃描的功能模塊(1)數(shù)碼管掃描8的功能模塊如圖4.8所示。圖4.8 數(shù)碼管掃描的功能模塊(2)源程序如下:module seven_seg( clk ,rst_n,d,dig ,seg);input c
16、lk ; /20MHzinput rst_n ; /復位信號,低電平有效input 31:0 d; /要顯示的32位數(shù)據(jù)output 7:0 dig ; /位選信號output 7:0 seg; /段碼dp到a由高到低排列parameter N= 20000; /分頻系數(shù)reg clkout ; /掃描時鐘reg 13:0cnt; /分頻計數(shù)器reg 2:0 scan_cnt ; /掃描計數(shù)器 reg 3:0 disp_dat ; /每一位數(shù)碼管待譯碼數(shù)據(jù)reg 7:0 dig;reg 7:0 seg_r;always ( posedge clk or negedge rst_n) /分頻到1
17、KHzbegin if (!rst_n)cnt <= 0 ;else begin if(cnt= N/2-1)beginclkout <= clkout; cnt<=0;end else cnt<=cnt+1'b1; endendalways (posedge clkout or negedge rst_n) /產(chǎn)生掃描計數(shù)值 begin if (!rst_n) scan_cnt <= 0 ; else scan_cnt <= scan_cnt + 1'b1; endalways ( scan_cnt,d) /8位數(shù)碼管位選擇,同時送相應要顯
18、示數(shù)據(jù)begin case ( scan_cnt )3'b000 : begin dig<= 8'b0000_0001;disp_dat<= d3:0; end3'b001 : begin dig<= 8'b0000_0010;disp_dat<= d7:4; end3'b010 : begin dig<= 8'b0000_0100;disp_dat<= d11:8; end3'b011 : begin dig<= 8'b0000_1000;disp_dat<= d15:12; en
19、d3'b100 : begin dig<= 8'b0001_0000;disp_dat<= d19:16; end3'b101 : begin dig<= 8'b0010_0000;disp_dat<= d23:20; end3'b110 : begin dig<= 8'b0100_0000;disp_dat<= d27:24; end3'b111 : begin dig<= 8'b1000_0000;disp_dat<= d31:28; end default : begin di
20、g<= 8'b0000_0001;disp_dat<= d3:0; end endcaseendalways ( disp_dat ) /共陽極數(shù)碼管譯碼begin case (disp_dat) 4'h0 : seg_r = 8'hc0; /顯示"0" 4'h1 : seg_r = 8'hf9; /顯示"1" 4'h2 : seg_r = 8'ha4; /顯示"2" 4'h3 : seg_r = 8'hb0; /顯示"3" 4
21、39;h4 : seg_r = 8'h99; /顯示"4" 4'h5 : seg_r = 8'h92; /顯示"5" 4'h6 : seg_r = 8'h82; /顯示"6" 4'h7 : seg_r = 8'hf8; /顯示"7" 4'h8 : seg_r = 8'h80; /顯示"8" 4'h9 : seg_r = 8'h90; /顯示"9" 4'ha : seg_r = 8&
22、#39;h88; /顯示"a" 4'hb : seg_r = 8'h83; /顯示"b" 4'hc : seg_r = 8'hc6; /顯示"c" 4'hd : seg_r = 8'ha1; /顯示"d" 4'he : seg_r = 8'h86; /顯示"e" 4'hf : seg_r = 8'h8e; /顯示"f" default: seg_r = 8'hff;/滅 endcaseendassign seg=seg_r; /取反變成共陰極段碼endmodule3.7 十進制計數(shù)器的功能模塊4.7.1計數(shù)器計數(shù)是一種最簡單基本的運算,計數(shù)器15就是實現(xiàn)這種運算的邏輯電路,計數(shù)器在數(shù)字系統(tǒng)中主要是對脈沖的個數(shù)進行計數(shù),以實現(xiàn)測量、計數(shù)和控制的功能,同時兼有分頻功能,計數(shù)器是由基本的計數(shù)單元和一些控制門所組成,計數(shù)單元則由一系列具有存儲信息功能的各類觸發(fā)器構成,這些觸發(fā)器有RS觸發(fā)器、T觸發(fā)器、D觸
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 關于水電安裝合同范本
- 出國保姆合同范本
- 拌合站加工合同范本
- 萬科景觀合同范本
- 北京市裝飾合同范例
- 冷庫玉米加工合同范本
- 合作送外賣合同范例
- 公司結算合同范本
- 地基注漿加固合同范本
- 光伏發(fā)電代理合同范本
- 《創(chuàng)傷失血性休克中國急診專家共識(2023)》解讀課件
- 2024年全國體育單招英語考卷和答案
- 河北省邯鄲市磁縣2024屆中考數(shù)學模試卷含解析
- 2024上海市高三英語一模各區(qū)《完形填空》分類匯編
- 2020-2024年安徽省初中學業(yè)水平考試中考歷史試卷(5年真題+答案解析)
- 企業(yè)解散清算公告模板
- 2024年江蘇農(nóng)牧科技職業(yè)學院單招職業(yè)適應性測試題庫帶答案
- GB/T 43977-2024電子氣體八氟環(huán)丁烷
- 2024年廊坊市財信投資集團有限公司招聘筆試沖刺題(帶答案解析)
- 以案促改整改方案整改目標
- 2024年江西應用工程職業(yè)學院單招職業(yè)技能測試題庫及答案解析
評論
0/150
提交評論