




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、摘要摘要II電子科技大學(xué)211樓308數(shù)字頻率計(jì)用VHDL語言設(shè)計(jì)實(shí)現(xiàn)基于FPGA的數(shù)字頻率計(jì)學(xué)號姓名2014/04/07-2014/04/30摘 要本文重點(diǎn)介紹了一種基于FPGA的數(shù)字頻率的實(shí)現(xiàn)方法。該設(shè)計(jì)采用硬件描述語言VHDL,在軟件開發(fā)平臺ISE上完成。該設(shè)計(jì)的頻率計(jì)能準(zhǔn)確的測量頻率在10Hz到10MHz之間的信號。使用ModelSim仿真軟件對VHDL程序做了仿真,并完成了綜合布局布線,最終下載到芯片上取得良好測試效果。關(guān)鍵詞:FPGA,VHDL,ISE,頻率計(jì)目錄目錄目 錄 TOC o 1-3 h z u HYPERLINK l _Toc386641898 第一章 引言 PAGER
2、EF _Toc386641898 h 1 HYPERLINK l _Toc386641899 第二章 基于FPGA的VHDL設(shè)計(jì)流程 PAGEREF _Toc386641899 h 2 HYPERLINK l _Toc386641900 2.1 概述 PAGEREF _Toc386641900 h 2 HYPERLINK l _Toc386641901 2.2 VHDL語言介紹 PAGEREF _Toc386641901 h 2 HYPERLINK l _Toc386641902 2.2.1 VHDL的特點(diǎn) PAGEREF _Toc386641902 h 3 HYPERLINK l _Toc3
3、86641903 2.3 FPGA開發(fā)介紹 PAGEREF _Toc386641903 h 4 HYPERLINK l _Toc386641904 第三章 數(shù)字頻率計(jì)的軟件開發(fā)環(huán)境 PAGEREF _Toc386641904 h 5 HYPERLINK l _Toc386641905 3.1 開發(fā)環(huán)境 PAGEREF _Toc386641905 h 5 HYPERLINK l _Toc386641906 3.2 ModelSim介紹 PAGEREF _Toc386641906 h 5 HYPERLINK l _Toc386641907 3.3 ISE介紹 PAGEREF _Toc3866419
4、07 h 6 HYPERLINK l _Toc386641908 第四章 數(shù)字頻率計(jì)的設(shè)計(jì)與實(shí)現(xiàn) PAGEREF _Toc386641908 h 7 HYPERLINK l _Toc386641909 4.1 任務(wù)要求 PAGEREF _Toc386641909 h 7 HYPERLINK l _Toc386641910 4.2 測量原理 PAGEREF _Toc386641910 h 7 HYPERLINK l _Toc386641911 4.2.1 頻率或時間的原始基準(zhǔn) PAGEREF _Toc386641911 h 8 HYPERLINK l _Toc386641912 4.2.2 電子
5、計(jì)數(shù)器測頻方法 PAGEREF _Toc386641912 h 9 HYPERLINK l _Toc386641913 4.3 設(shè)計(jì)方案與系統(tǒng)需求 PAGEREF _Toc386641913 h 10 HYPERLINK l _Toc386641914 4.4 各模塊的功能及實(shí)現(xiàn) PAGEREF _Toc386641914 h 12 HYPERLINK l _Toc386641915 4.4.1 分頻器 PAGEREF _Toc386641915 h 12 HYPERLINK l _Toc386641916 4.4.2 閘門選擇器 PAGEREF _Toc386641916 h 13 HYPE
6、RLINK l _Toc386641917 4.4.3 測頻控制器 PAGEREF _Toc386641917 h 14 HYPERLINK l _Toc386641918 4.4.4 計(jì)數(shù)器 PAGEREF _Toc386641918 h 15 HYPERLINK l _Toc386641919 4.4.5 鎖存器 PAGEREF _Toc386641919 h 16 HYPERLINK l _Toc386641920 4.4.6 掃描顯示控制系統(tǒng) PAGEREF _Toc386641920 h 17 HYPERLINK l _Toc386641921 4.4.6 7段譯碼顯示控制系統(tǒng) PA
7、GEREF _Toc386641921 h 18 HYPERLINK l _Toc386641922 4.5 分配引腳和下載實(shí)現(xiàn) PAGEREF _Toc386641922 h 19 HYPERLINK l _Toc386641923 4.6 誤差分析 PAGEREF _Toc386641923 h 19 HYPERLINK l _Toc386641924 4.6.1 1誤差 PAGEREF _Toc386641924 h 20 HYPERLINK l _Toc386641925 4.6.2 標(biāo)準(zhǔn)頻率誤差 PAGEREF _Toc386641925 h 21 HYPERLINK l _Toc3
8、86641926 4.6.3 結(jié)論 PAGEREF _Toc386641926 h 21 HYPERLINK l _Toc386641927 第五章 實(shí)驗(yàn)結(jié)論及總結(jié) PAGEREF _Toc386641927 h 23 HYPERLINK l _Toc386641928 參考文獻(xiàn) PAGEREF _Toc386641928 h 24 HYPERLINK l _Toc386641929 致 謝 PAGEREF _Toc386641929 h 25 HYPERLINK l _Toc386641930 附 錄 PAGEREF _Toc386641930 h 26 HYPERLINK l _Toc38
9、6641931 附錄1. 分頻器程序 PAGEREF _Toc386641931 h 26 HYPERLINK l _Toc386641932 附錄2. 閘門選擇器程序 PAGEREF _Toc386641932 h 28 HYPERLINK l _Toc386641933 附錄3. 測頻控制器程序 PAGEREF _Toc386641933 h 29 HYPERLINK l _Toc386641934 附錄4. 計(jì)數(shù)器程序 PAGEREF _Toc386641934 h 30 HYPERLINK l _Toc386641935 附錄5. 鎖存器程序 PAGEREF _Toc386641935
10、 h 31 HYPERLINK l _Toc386641936 附錄5. 掃描顯示控制程序 PAGEREF _Toc386641936 h 33 HYPERLINK l _Toc386641937 附錄5. 譯碼系統(tǒng)程序 PAGEREF _Toc386641937 h 34第一章 引言 PAGE 1第一章 引言在電子技術(shù)領(lǐng)域內(nèi),頻率是一個最基本的參數(shù),頻率與其它許多電參量的測量方案、測量結(jié)果都有十分密切的關(guān)系。如時間,速度等都涉及到或本身可轉(zhuǎn)化為頻率的測量。因此,頻率的測量就顯得更為重要。而且,目前在電子測量中,頻率的測量精確度是最高的.現(xiàn)在市場上有各種多功能,高精度,高頻率的數(shù)字頻率計(jì),但價
11、格不菲。而在實(shí)際工程中,不是對所有信號的頻率測量都要求達(dá)到非常高的精度。因此,本文提出了一種能滿足一般測量精度要求,但成本低廉的數(shù)字頻率計(jì)的設(shè)計(jì)方案。本文主要任務(wù)是針對設(shè)計(jì)的要求,基于FPGA利用硬件描述語言VHDL完成數(shù)字頻率計(jì)的設(shè)計(jì),通過仿真,分析,綜合并最終下載到FPGA里面去實(shí)現(xiàn)。除被測信號的整形部分、鍵輸入部分以外,其余全部在一片F(xiàn)PGA芯片上實(shí)現(xiàn),整個系統(tǒng)非常精簡,而且具有靈活的現(xiàn)場可更改性。在不更改硬件電路的基礎(chǔ)上,對系統(tǒng)進(jìn)行各種改進(jìn)還可以進(jìn)一步提高系統(tǒng)的性能。電子科技大學(xué)現(xiàn)代電子技術(shù)綜合實(shí)驗(yàn)報(bào)告第二章 基于FPGA的VHDL設(shè)計(jì)流程 PAGE 4 PAGE 5第二章 基于FPG
12、A的VHDL設(shè)計(jì)流程2.1 概述數(shù)字頻率計(jì)是數(shù)字電路中的一個典型應(yīng)用,實(shí)際的硬件設(shè)計(jì)用到的器件較多,連線比較復(fù)雜,而且會產(chǎn)生比較大的延時,造成測量誤差、可靠性差。頻率計(jì)的設(shè)計(jì)有傳統(tǒng)方法和現(xiàn)代方法,傳統(tǒng)的設(shè)計(jì)方法耗時耗功,設(shè)計(jì)強(qiáng)度大,且容易出錯,設(shè)計(jì)的質(zhì)量不一定是最好的。自然我們考慮到現(xiàn)代方法,即二十世紀(jì)八十年代興起的電子設(shè)計(jì)自動化技術(shù),英文為Electronic Design Auto,縮寫為EDA。在EDA設(shè)計(jì)工具中,用的最廣泛的是VHDL和VERILOG,當(dāng)然還有其它的。比較VHDL和VERILOG,在頂層設(shè)計(jì)方面VHDL優(yōu)于VERILOG,在門級電路設(shè)計(jì)方面VERILOG優(yōu)于VHDL。隨
13、著復(fù)雜可編程邏輯器件(CPLD)的廣泛應(yīng)用,以EDA工具作為開發(fā)手段,運(yùn)用VHDL語言,將使整個系統(tǒng)大大簡化,提高整體的性能和可靠性。本次的頻率計(jì)設(shè)計(jì)主要是頂層設(shè)計(jì),目的是設(shè)計(jì)6位十進(jìn)制頻率計(jì),學(xué)習(xí)常用的數(shù)字系統(tǒng)設(shè)計(jì)方法。采用VDHL編程設(shè)計(jì)實(shí)現(xiàn)的數(shù)字頻率計(jì),除被測信號的整形部分、鍵輸入部分以外,其余全部在一片F(xiàn)PGA芯片上實(shí)現(xiàn),整個系統(tǒng)非常精簡,而且具有靈活的現(xiàn)場可更改性。在不更改硬件電路的基礎(chǔ)上,對系統(tǒng)進(jìn)行各種改進(jìn)還可以進(jìn)一步提高系統(tǒng)的性能。該數(shù)字頻率計(jì)具有高速、精確、可靠、抗干擾性強(qiáng)和現(xiàn)場可編程等優(yōu)點(diǎn)。2.2 VHDL語言介紹VHDL(Very-high-speed Integrated
14、 Circuit Hardware Description Language)誕生于1982年。1987年底,VHDL被IEEE(The Institute of Electrical and Electronics Engineers)和美國國防部確認(rèn)為標(biāo)準(zhǔn)硬件描述語言。自IEEE公布了VHDL的標(biāo)準(zhǔn)版本(IEEE-1076)之后,各EDA公司相繼推出了自己的VHDL設(shè)計(jì)環(huán)境,并宣布自己的設(shè)計(jì)工具可以和VHDL接口。此后VHDL在電子設(shè)計(jì)領(lǐng)域得到了廣泛的接受,并逐步取代了原有的非標(biāo)準(zhǔn)硬件描述語言。1993年,IEEE對VHDL進(jìn)行了修訂,從更高的抽象層次和系統(tǒng)描述能力上擴(kuò)展VHDL的內(nèi)容,公
15、布了新版本的VHDL,即IEEE標(biāo)準(zhǔn)的1076-1993版本?,F(xiàn)在,VHDL和VERILOG作為IEEE的工業(yè)標(biāo)準(zhǔn)硬件描述語言,又得到眾多EDA公司的支持,在電子工程領(lǐng)域,已成為事實(shí)上的通用硬件描述語言。有專家認(rèn)為,在新的世紀(jì)中,VHDL和VERILOG語言將承擔(dān)起幾乎全部的數(shù)字系統(tǒng)設(shè)計(jì)任務(wù)。2.2.1 VHDL的特點(diǎn)VHDL主要用于描述數(shù)字系統(tǒng)的結(jié)構(gòu)、行為、功能和接口。除了含有許多具有硬件特征的語句外,VHDL的語言形式,描述風(fēng)格以及句法十分類似于一般的計(jì)算機(jī)高級語言。VHDL的程序結(jié)構(gòu)特點(diǎn)是將一項(xiàng)工程設(shè)計(jì),或稱為設(shè)計(jì)實(shí)體(可以是一個元件、一個電路模塊或一個系統(tǒng))分成外部(又稱為可視部分,即
16、端口)和內(nèi)部(又稱為不可視部分),即設(shè)計(jì)實(shí)體的內(nèi)部功能和算法完成部分。在對一個設(shè)計(jì)實(shí)體定義了外部界面后,一旦其內(nèi)部開發(fā)完成后,其它的設(shè)計(jì)就可以直接調(diào)用這個實(shí)體。這種將設(shè)計(jì)實(shí)體分成內(nèi)外部分的概念是VHDL系統(tǒng)設(shè)計(jì)的基本點(diǎn)。應(yīng)用VHDL進(jìn)行工程設(shè)計(jì)的優(yōu)點(diǎn)是多方面的,具體如下:1、與其它的硬件描述語言相比,VHDL具有更強(qiáng)的行為描述能力,從而決定了它成為系統(tǒng)設(shè)計(jì)領(lǐng)域最佳的硬件描述語言。強(qiáng)大的行為描述能力是避開具體的器件結(jié)構(gòu),從邏輯行為上描述和設(shè)計(jì)大規(guī)模電子系統(tǒng)的重要保證。就目前流行的EDA工具和VHDL綜合器而言,將基于抽象的行為描述風(fēng)格的VHDL程序綜合成為具體的FPGA和CPLD等目標(biāo)器件的網(wǎng)表
17、文件已不成問題,只是在綜合與優(yōu)化效率上略有差異。2、VHDL最初是作為一種仿真標(biāo)準(zhǔn)格式出現(xiàn)的,因此VHDL既是一種硬件電路描述和設(shè)計(jì)語言,也是一種標(biāo)準(zhǔn)的網(wǎng)表格式,還是一種仿真語言。其豐富的仿真語句和庫函數(shù),使得在任何大系統(tǒng)的設(shè)計(jì)早期(即尚未完成),就能用于查驗(yàn)設(shè)計(jì)系統(tǒng)的功能可行性,隨時可對設(shè)計(jì)進(jìn)行仿真模擬。即在遠(yuǎn)離門級的高層次上進(jìn)行模擬,使設(shè)計(jì)者對整個工程設(shè)計(jì)的結(jié)構(gòu)和功能的可行性做出決策。3、VHDL語句的行為描述能力和程序結(jié)構(gòu)決定了它具有支持大規(guī)模設(shè)計(jì)的分解和已有設(shè)計(jì)的再利用功能,符合市場所需求的,大規(guī)模系統(tǒng)高效、高速的完成必須由多人甚至多個開發(fā)組共同并行工作才能實(shí)現(xiàn)的特點(diǎn)。VHDL中設(shè)計(jì)實(shí)
18、體的概念、程序包的概念、設(shè)計(jì)庫的概念為設(shè)計(jì)的分解和并行工作提供了有力的支持。4、對于用VHDL完成的一個確定的設(shè)計(jì),可以利用EDA工具進(jìn)行邏輯綜合和優(yōu)化,并自動地把VHDL描述設(shè)計(jì)轉(zhuǎn)變成為門級網(wǎng)表。這種方式突破了門級電路設(shè)計(jì)的瓶頸,極大地減少了電路設(shè)計(jì)的時間和可能發(fā)生的錯誤,降低了開發(fā)成本。應(yīng)用EDA工具的邏輯優(yōu)化功能,可以自動地把一個綜合后的設(shè)計(jì)變成一個更高效、更高速的電路系統(tǒng)。反過來,設(shè)計(jì)者還可以容易地從綜合和優(yōu)化后的電路獲得設(shè)計(jì)信息,返回去更新修改VHDL設(shè)計(jì)描述,使之更為完善。5、VHDL對設(shè)計(jì)的描述具有相對獨(dú)立性,設(shè)計(jì)者可以不懂硬件的結(jié)構(gòu),也不必管最終設(shè)計(jì)實(shí)現(xiàn)的目標(biāo)器件是什么,而進(jìn)行
19、獨(dú)立的設(shè)計(jì)。正因?yàn)閂HDL硬件描述與具體的工藝技術(shù)和硬件結(jié)構(gòu)無關(guān),VHDL設(shè)計(jì)程序的硬件實(shí)現(xiàn)目標(biāo)器件有廣闊的選擇范圍,其中包括各系列的CPLD、FPGA及各種門陣列實(shí)現(xiàn)目標(biāo)。6、由于VHDL具有類屬描述語句和子程序調(diào)用等功能,對于已完成的設(shè)計(jì),在不改變源程序的條件下,只需要改變端口類屬參量或函數(shù),就能輕易地改變設(shè)計(jì)的規(guī)模和結(jié)構(gòu)。2.3 FPGA開發(fā)介紹現(xiàn)場可編程門陣列(FPGA)器件是八十年代中期出現(xiàn)的新產(chǎn)品,它的應(yīng)用大大地方便了IC的設(shè)計(jì),因而隨著數(shù)字技術(shù)日益廣泛的應(yīng)用,以FPGA為代表的ASIC器件得到了迅速的普及和發(fā)展,器件集成度和速度都在高速增長。傳統(tǒng)的電路設(shè)計(jì)過程是:先畫原理圖、把原
20、理圖繪制成印制電路板圖、再制版、安裝、調(diào)試。有了FPGA,我們只需要在計(jì)算機(jī)上繪出原理圖,再運(yùn)行相應(yīng)的軟件,就可把所設(shè)計(jì)的邏輯電路在FPGA中實(shí)現(xiàn)。所有步驟均可自動完成。電子設(shè)計(jì)工程師自己設(shè)計(jì)專用集成電路成為了一件很容易的事情。FPGA作為專用集成電路(ASIC)概念上的一個新型范疇和門類,以其高度靈活的用戶現(xiàn)場編程方式,現(xiàn)場定義高容量數(shù)字單片系統(tǒng)的能力,能夠重復(fù)定義、反復(fù)改寫的新穎功能,為復(fù)雜數(shù)字系統(tǒng)設(shè)計(jì)、研制以及產(chǎn)品開發(fā)提供了有效的技術(shù)手段。電子應(yīng)用設(shè)計(jì)工程師應(yīng)用FPGA技術(shù)不僅可避免通常ASIC單片系統(tǒng)設(shè)計(jì)周期長,前期投資風(fēng)險(xiǎn)大的弱點(diǎn),而且克服了過去板級通用數(shù)字電路應(yīng)用設(shè)計(jì)的落后,繁瑣和
21、不可靠性。目前FPGA的兩個重要發(fā)展與突破是,大多數(shù)廠商在其高端器件上都提供了片上的處理器(如CPU、DSP)等硬核(Hard Core)或固化核(Fixed Core)。比如Xilinx的Virtex II Pro芯片可以提供Power PC,而Altera的Stratix、Excalibur等系列芯片可以提供Nios、DSP和Arm等模塊。在FPGA上集成微處理器,使SOPC設(shè)計(jì)更加便利與強(qiáng)大。另一個發(fā)展是在不同器件商推出的高端芯片上大都集成了高速串行收發(fā)器,一般能夠達(dá)到3Gb/s以上的數(shù)據(jù)處理能力,在Xilinx、Altera、Lattice都有相應(yīng)的器件型號提供該功能。這些新功能使FP
22、GA的數(shù)據(jù)吞吐能力大幅度增強(qiáng)。第三章 數(shù)字頻率計(jì)的軟件開發(fā)環(huán)境 PAGE 6 PAGE 7第三章 數(shù)字頻率計(jì)的軟件開發(fā)環(huán)境本章主要介紹項(xiàng)目中將要用到了一系列軟件,包括用于VHDL語言編寫和編譯的ISE軟件和用于程序仿真的仿真軟件ModelSim。3.1 開發(fā)環(huán)境隨著可編程器件紛紛超越百萬門級,設(shè)計(jì)者面臨的產(chǎn)品性能與設(shè)計(jì)效率的挑戰(zhàn)也越來越大。設(shè)計(jì)者必須合理選擇各EDA廠家提供的加速設(shè)計(jì)的工具軟件,這樣才能在較短的時間內(nèi)設(shè)計(jì)出高效穩(wěn)定的產(chǎn)品。在本次設(shè)計(jì)中,由于選擇的FPGA芯片是由Xilinx公司生產(chǎn)的,所以我們主要使用ModelSim和ISE軟件進(jìn)行仿真和綜合。3.2 ModelSim介紹Mod
23、elSim支持PC和UNIX平臺,是單一內(nèi)核支持VHDL和Verilog混合仿真的HDL語言仿真器。ModelSim不僅可以完成設(shè)計(jì)的功能驗(yàn)證,也可實(shí)現(xiàn)邏輯綜合后的門級仿真以及布局布線后的功能與時序驗(yàn)證。ModelSim完全支持VHDL和Verilog標(biāo)準(zhǔn);采用直接編輯技術(shù),大大提高HDL編譯和仿真速度。還可以利用ModelSim調(diào)用設(shè)計(jì)文件進(jìn)行仿真分析。在調(diào)試環(huán)境中,設(shè)計(jì)者可以通過ModelSim的快速調(diào)試步驟以及對各種信號的監(jiān)控功能(無論信號處于VHDL層,還是處于混合語言層)使仿真的執(zhí)行過程形象直觀化,幫助設(shè)計(jì)者及時發(fā)現(xiàn)漏洞,縮短設(shè)計(jì)周期。ModelSim最大的特點(diǎn)是其強(qiáng)大的調(diào)試功能:先
24、進(jìn)的數(shù)據(jù)流窗口,可以迅速追蹤到生產(chǎn)不定或者錯誤狀態(tài)的原因;性能分析工具幫助分析性能瓶頸,加速仿真;代碼覆蓋率檢查確保測試的完備;多種模式的波形比較功能;先進(jìn)的 SignalSpy功能,可以方便地訪問VHDL或者VHDL和Verilog混合設(shè)計(jì)中的底層信號;支持加密IP;可以實(shí)現(xiàn)與Matlab的Simulink的聯(lián)合仿真。3.3 ISE介紹ISE的主要功能包括設(shè)計(jì)輸入、綜合、仿真、實(shí)現(xiàn)和下載,涵蓋了可編程邏輯器件開發(fā)的全過程,從功能上講,完成CPLD/FPGA的設(shè)計(jì)流程無需借助任何第三方EDA軟件。下面簡要說明各功能的作用:設(shè)計(jì)輸入:ISE提供的設(shè)計(jì)輸入工具包括用于HDL代碼輸入和查看報(bào)告的IS
25、E文本編輯器(The ISE Text Editor),用于原理圖編輯的工具ECS(The Engineering Capture System),用于生成IP Core的Core Generator,用于狀態(tài)機(jī)設(shè)計(jì)的StateCAD以及用于約束文件編輯的Constraint Editor等。綜合:ISE的綜合工具不但包含了Xilinx自身提供的綜合工具XST,同時還可以內(nèi)嵌Mentor Graphics公司的Leonardo Spectrum和Synplicity公司的Synplify,實(shí)現(xiàn)無縫鏈接。 仿真:ISE本身自帶了一個具有圖形化波形編輯功能的仿真工具HDL Bencher,同時又提
26、供了使用Model Tech公司的Modelsim進(jìn)行仿真的接口。 實(shí)現(xiàn):此功能包括了翻譯、映射、布局布線等,還具備時序分析、管腳指定以及增量設(shè)計(jì)等高級功能。 下載:下載功能包括了BitGen,用于將布局布線后的設(shè)計(jì)文件轉(zhuǎn)換為位流文件,還包括了IMPACT,功能是進(jìn)行芯片配置和通信,控制將程序燒寫到FPGA芯片中去。第四章 數(shù)字頻率計(jì)的設(shè)計(jì)與實(shí)現(xiàn) PAGE 18 PAGE 17第四章 數(shù)字頻率計(jì)的設(shè)計(jì)與實(shí)現(xiàn)4.1 任務(wù)要求本實(shí)驗(yàn)核心任務(wù)是完成基于FPGA利用VHDL語言設(shè)計(jì)一個數(shù)字頻率計(jì)的設(shè)計(jì),仿真,下載實(shí)現(xiàn)并實(shí)際測量效果??紤]到是首次接觸VHDL描述語言,并且以前沒有過基于FPGA設(shè)計(jì)的經(jīng)驗(yàn)
27、,所以在完成實(shí)驗(yàn)的同時,也不斷的加深對VHDL描述語言的掌握,以及不斷總結(jié)由軟件來實(shí)現(xiàn)硬件的特點(diǎn),為以后的工作和更進(jìn)一步的學(xué)習(xí)學(xué)習(xí)打好基礎(chǔ)。數(shù)字頻率計(jì)的相關(guān)技術(shù)指標(biāo)如下:1、位數(shù):測量頻率通過LED數(shù)碼管為六位十進(jìn)制數(shù)顯示。2、測試頻率范圍為:10Hz10MHz。3、量程分為三檔:第一檔:最小量程檔,閘門時間為1S時,最大讀數(shù)為999.999KHz。第二檔:閘門時間為0.1S時,最大讀數(shù)為9999.99KHz。第三檔:閘門時間為0.01S時,最大讀數(shù)為99999.9KHz。以上三檔,實(shí)際測得的頻率是1Hz99999.9KHz。顯然完全涵蓋了10Hz10MHz的范圍。4、顯示工作方式:a、用BC
28、D七段共陽極數(shù)碼管顯示讀數(shù),只有在讀數(shù)不發(fā)生跳變時才是正確的結(jié)果。b、用一個LED做計(jì)數(shù)器溢出標(biāo)志。c、用一個LED閘門的開與閉。5、要求被測輸入信號應(yīng)是符合數(shù)字電路要求的脈沖波或正弦波。4.2 測量原理頻率計(jì)的基本原理是用一個頻率穩(wěn)定度高的頻率源作為基準(zhǔn)時鐘,對比測量其他信號的頻率。通常情況下計(jì)數(shù)每秒內(nèi)待測信號的脈沖個數(shù),此時我們稱閘門時間為1S,閘門時間也可以大于或小于1S。閘門時間越長,得到的頻率值就準(zhǔn)確,但閘門時間越長則每測一次頻率的間隔就越長;閘門時間越短,測得頻率值刷新就越快,但測得的頻率精準(zhǔn)度就受影響。4.2.1 頻率或時間的原始基準(zhǔn)時間是某一時刻與另一時刻之間的時間長度,這里指
29、的時刻是連續(xù)流逝的時間中的一個時點(diǎn)。為了使大家能夠確定出同一時刻,就需要使用共同的時刻標(biāo)尺來衡量,用這個時刻標(biāo)尺上的標(biāo)度來客觀地認(rèn)識時刻。要計(jì)量時間需要有固定不變的時間單位,用秒作為時間的基本單位。如果一秒內(nèi)的振動數(shù)即頻率為已知,則可由此振動數(shù)的倒數(shù)得到秒的間隔,這就是說單位秒和標(biāo)準(zhǔn)頻率數(shù)是互相依存的事物。時刻和時間發(fā)展的歷史,集中反映在秒的定義在不斷變遷,秒的準(zhǔn)確度不斷提高。采用天文觀測方法,求得的太陽出現(xiàn)于天頂?shù)钠骄芷跒槠骄柸?。將太陽日分?46060份,得到的秒為零類世界時(記作),其準(zhǔn)確度在量級。地球自轉(zhuǎn)受到極運(yùn)動(極移引起的經(jīng)度變化)的影響,校正了這個偏差而得到的地球自轉(zhuǎn)的周期
30、,稱為第一世界時(記作)。再把地球自轉(zhuǎn)的季度性、年度性的變化(最大可達(dá)0.03秒)校正,就引出了第二世界時(記作)。世界時經(jīng)過五十年的觀測,發(fā)現(xiàn)其穩(wěn)定度為。這樣,以為標(biāo)準(zhǔn)其計(jì)時準(zhǔn)確度很難優(yōu)于。為了得到更準(zhǔn)確的均勻不變的時間標(biāo)準(zhǔn),人們以1.900回歸年的31 556 925 9747分之一作為歷書時的秒(記作ET),其準(zhǔn)確度可達(dá)左右。、ET為宏觀計(jì)時標(biāo)準(zhǔn),它需要精密的天文觀測,手續(xù)煩雜,準(zhǔn)確度有限。近年來引進(jìn)了微觀計(jì)時標(biāo)準(zhǔn),這就是利用原子或分子內(nèi)部能級躍遷所輻射或吸收的電磁波的頻率作為基準(zhǔn)來計(jì)量時間。采用()原子基態(tài)的兩個超精細(xì)能級之間躍遷所對應(yīng)的9 192 631 770個周期的持續(xù)時間為一秒
31、,以此為標(biāo)準(zhǔn)定出的時間標(biāo)準(zhǔn)稱為原子時(記作AT),其準(zhǔn)確度可達(dá)。目前,國際上已經(jīng)應(yīng)用經(jīng)過原子標(biāo)準(zhǔn)修正過的時間來發(fā)送時間標(biāo)準(zhǔn),用原子時來對天文時(、ET)進(jìn)行修正。另外,由于頻率是時間的倒數(shù),因此,有了時間標(biāo)準(zhǔn)也就有了頻率標(biāo)準(zhǔn)。由于數(shù)字電路的飛速發(fā)展和數(shù)字集成電路的普及,電子計(jì)數(shù)器的應(yīng)用已十分普及,利用電子計(jì)數(shù)器測量頻率具有精確度高、使用方便、測量迅速,以及便于實(shí)現(xiàn)測量過程自動化等一系列突出優(yōu)點(diǎn),故已發(fā)展成為近代頻率測量的重要手段。4.2.2 電子計(jì)數(shù)器測頻方法目前,絕大多數(shù)實(shí)驗(yàn)室用電子計(jì)數(shù)器都具有測量頻率(測頻)和測量周期(測周)等兩種以上的測量功能,故統(tǒng)稱“通用計(jì)數(shù)器.各種測量功能可利用功能
32、選擇開關(guān)加以選擇。 電子計(jì)數(shù)器的測頻原理所謂“頻率”,就是周期性信號在單位時間(一秒)內(nèi)變化的次數(shù)。若在一定時間內(nèi)計(jì)得這個周期信號變化的次數(shù)為N,則其頻率可表達(dá): (4-1)電子計(jì)數(shù)器可以嚴(yán)格按照公式(4-1)所表達(dá)的頻率的定義進(jìn)行測頻,其原理方框圖如圖 4-1 示:圖 4-1 測頻原理圖首先,把被測信號(以正弦波為例)通過脈沖形成電路轉(zhuǎn)變成脈沖(實(shí)際上變成方波即可)其重復(fù)頻率等于被測頻率,然后將它加到閘門的一個輸入端。閘門出門控信號來控制開、閉時間,只有在閘門開通時間T內(nèi),被計(jì)數(shù)的脈沖才能通過閘門,被送到十進(jìn)制電子計(jì)數(shù)器進(jìn)行計(jì)數(shù)。門控信號的作用時間T是非常準(zhǔn)確的,以它作為時間基準(zhǔn)(時基),它
33、由時基發(fā)生器提供。時基信號發(fā)生一個高穩(wěn)定的石英振蕩器和一系列數(shù)字分頻器組成,由它輸出的標(biāo)準(zhǔn)時間脈沖(時標(biāo))去控制門控電路形成門控信號。比如,時標(biāo)信號的重復(fù)周期為1S,則加到閘門的門控信號作用時間T即閘門時間亦準(zhǔn)確地等于1s,即閘門開通時間為1s,這時若計(jì)得10 000個數(shù),則按式(4-1),被測頻率=10.000Hz,若計(jì)數(shù)器上單位顯示為“kHz”,則顯示10.000kHz,即小數(shù)點(diǎn)定位在第三位。不難設(shè)想,若閘門時間改為T=0.1s,則計(jì)數(shù)值為1 000,這個數(shù)乘以10就等于1s的計(jì)數(shù)值,即Hz。實(shí)際上,當(dāng)改變閘門時間T時,顯示器上的小數(shù)點(diǎn)也隨著往右移一位(自動定位),即顯示10.000kHz
34、。從以上討論可知,電子計(jì)數(shù)器的測頻原理實(shí)質(zhì)上以比較法為基礎(chǔ),它將和時基信號頻率相比,兩個頻率相比的結(jié)果以數(shù)字的形式顯示出來。4.3 設(shè)計(jì)方案與系統(tǒng)需求由電子計(jì)數(shù)器頻率測量基本原理可知,測頻功能實(shí)現(xiàn)需要脈沖形成電路、閘門、十進(jìn)制電子計(jì)數(shù)器、門控電路、時基信號發(fā)生器。結(jié)合實(shí)際實(shí)驗(yàn)板的硬件條件,可以利用EDA軟件和HDL語言在EEC-FPGA實(shí)驗(yàn)板上完成頻率計(jì)的數(shù)字部分的設(shè)計(jì)與實(shí)現(xiàn)。實(shí)驗(yàn)板原理圖如圖4-2所示:圖 4-2 實(shí)驗(yàn)板原理圖如果以此實(shí)驗(yàn)板做為頻率計(jì)的硬件實(shí)現(xiàn),可以使用48Mhz的有源晶振作為時基信號發(fā)生器,但是測量需要的時基信號為1S、0.1S、0。01S,因此需要進(jìn)行分頻,另外計(jì)數(shù)器的輸
35、出結(jié)果可以使用數(shù)碼管顯示,需要一個1KHz的掃描信號,也可由晶振分頻得到,脈沖形成電路可以使用模擬電路,另外為了使數(shù)碼管能夠穩(wěn)定顯示,在輸出之前加一個鎖存器,閘門選擇可以使用實(shí)驗(yàn)板上的開關(guān)得到。至此可以確定,可以在EEC-FPGA實(shí)驗(yàn)板實(shí)現(xiàn)的數(shù)字電路部分為分頻器、計(jì)數(shù)器、鎖存器、門控電路、閘門選擇、數(shù)碼管掃描顯示控制子系統(tǒng),這些模塊之間的關(guān)系如圖4-3所示:圖 4-3 原理框圖放大整形電路:放大被測信號并將其整形為方波脈沖,該方波脈沖經(jīng)過閘門后送計(jì)數(shù)器計(jì)數(shù)。石英振蕩器:產(chǎn)生一個頻率(48MHz)高度穩(wěn)定的信號送給分頻器分頻。分頻器:對石英振蕩器產(chǎn)生的信號進(jìn)行分頻,得到100Hz、10Hz和1H
36、z三個基準(zhǔn)頻率;同時產(chǎn)一個1KHz的信號作為掃描顯示譯碼模塊的時鐘,以產(chǎn)生掃描選擇信號。門控電路:門控電路在時間基準(zhǔn)信號的控制下產(chǎn)生門控信號GATE,門控信號有效時,閘門開通,計(jì)數(shù)器計(jì)數(shù)。當(dāng)門控信號停止作用時,閘門關(guān)斷。此時,為了使計(jì)數(shù)結(jié)果能夠在顯示器上穩(wěn)定的顯示,門控電路要產(chǎn)生一個鎖存命令Latch使鎖存器鎖存計(jì)數(shù)結(jié)果。在計(jì)數(shù)結(jié)果鎖存以后,下一次計(jì)數(shù)開始以前,門控電路還要產(chǎn)生一個清零信號CLEAR將計(jì)數(shù)器清零,以便重新計(jì)數(shù)。GATE信號、Latch信號以及CLEAR信號三者的關(guān)系如圖4-4所示:圖 4-4 控制信號波形4.4 各模塊的功能及實(shí)現(xiàn)4.4.1 分頻器分頻器的功能是提供標(biāo)準(zhǔn)閘門時間
37、控制信號以精確控制計(jì)數(shù)器的開閉。由于閘門時間只有1S,0.1S,0.01S三檔,且在數(shù)碼管顯示時采用動態(tài)掃描的方法,需要產(chǎn)生1kHz的掃描信號,由于本設(shè)計(jì)將下載到開發(fā)板上,其提供的標(biāo)準(zhǔn)時間是48MHz,所以要對系統(tǒng)的48MHz時鐘信號進(jìn)行分頻,以產(chǎn)生符合要求的各頻率信號:先由系統(tǒng)時鐘48MHz分頻出1kHz作為數(shù)碼管顯示的動態(tài)掃描信號,再由1kHz分頻出100Hz產(chǎn)生0.01S的計(jì)數(shù)閘門信號脈沖,由100Hz分頻出10Hz產(chǎn)生0.1S的計(jì)數(shù)閘門信號脈沖,由10Hz分頻出1Hz產(chǎn)生1S的計(jì)數(shù)閘門信號脈沖。同時給整個系統(tǒng)定義系統(tǒng)復(fù)位。由以上分析,可分頻器模塊如圖所示:圖 4-5 分頻器模塊仿真圖如
38、圖4-6所示:圖 4-6 分頻器模塊仿真圖這個模塊即實(shí)現(xiàn)了把48MHz的時基信號分成了我們需要的四個信號1Hz,10Hz,100Hz,1KHz。4.4.2 閘門選擇器該模塊的功能是實(shí)現(xiàn)對輸入的幾個閘門信號的手動選擇,并輸出被選中的閘門信號fhz和閘門開與斷的現(xiàn)實(shí)信號light以及小數(shù)點(diǎn)的控制信號dp。生成的模塊如圖4-7所示:圖 4-7 閘門選擇器該模塊有六個輸入端口,其中s(2:0)為選擇端,f1hz,f10hz,f100hz為被選時基信號輸入端。當(dāng)s(0)為1,其余無效時,f1hz的輸入時基信號被選中,被賦值給輸出端口fhz輸出,此時dp(3)有效,其余的無效,點(diǎn)亮dp(4)連接的小數(shù)點(diǎn);
39、當(dāng)s(1)為0,其余無效時,f10hz時基信號被選中,被賦值給輸出端口fhz輸出,此時dp(2)有效,其余的無效,點(diǎn)亮dp(2)連接的小數(shù)點(diǎn);最后當(dāng)s(2)為0,其余無效時,f100hz時基信號被選中,被賦值給輸出端口fhz輸出,此時dp(1)有效,其余的無效,點(diǎn)亮dp(1)連接的小數(shù)。仿真圖如圖4-8所示:圖 4-8 閘門選擇器仿真圖4.4.3 測頻控制器測頻控制器是控制整個頻率計(jì)各模塊進(jìn)行時序工作的控制裝置,它對輸入的標(biāo)準(zhǔn)時鐘信號進(jìn)行變換,產(chǎn)生我們所需要的三個信號閘門信號GATE,鎖存信號LATCH以及清零信號CLEAR。其生成的模塊如下圖4-9所示:圖 4-9 測頻控制器測頻控制器的計(jì)數(shù)
40、使能信號Gate能產(chǎn)生一個周期信號,并對頻率計(jì)的計(jì)數(shù)器使能端進(jìn)行同步控制。當(dāng)Gate為高電平時,允許計(jì)數(shù),為低電平時停止計(jì)數(shù),并保持其所計(jì)得脈沖數(shù)。在停止計(jì)數(shù)期間,首先需要一個鎖存信號latch的上升沿將計(jì)數(shù)器在前一秒的計(jì)數(shù)值鎖存進(jìn)24位鎖存器Latch中,并由外部的7段譯碼器譯出,并穩(wěn)定顯示。鎖存信號之后,必須有一清零信號clear對計(jì)數(shù)器清零,為下一秒的計(jì)數(shù)操作準(zhǔn)備。測頻控制信號發(fā)生器的仿真工作時序如圖4-10所示。圖 4-10 測頻控制器的仿真圖如果閘門信號Gate的頻率取1Hz,那么信號Gate的脈寬恰好為1S,可以用作計(jì)數(shù)閘門信號。然后根據(jù)測頻的時序要求,可得出信號latch和Res
41、et的邏輯描述。由圖可見,在計(jì)數(shù)完成后,即計(jì)數(shù)使能信號Gate在1S的高電平后,利用其反相值產(chǎn)生一個鎖存信號latch,由于反相器的器件延時,鎖存信號的上升沿是在計(jì)數(shù)使能信號即閘門信號Gate的下降沿之后,即是計(jì)數(shù)完了才鎖存的,符合我們的設(shè)計(jì)要求。而清零信號Reset的上升沿的產(chǎn)生是在下一個Gate信號上升沿來臨之前,也就是說是清了零才開始計(jì)數(shù)的,不是計(jì)了一會兒數(shù)再被清零了繼續(xù)計(jì)數(shù),這也是與我們的設(shè)計(jì)要求相符合的。高質(zhì)量的測頻控制信號發(fā)生器的設(shè)計(jì)十分重要,設(shè)計(jì)中要對其進(jìn)行仔細(xì)的實(shí)時仿真,防止可能產(chǎn)生的毛刺。4.4.4 計(jì)數(shù)器由于要求頻率計(jì)的顯示為十進(jìn)制六位,所示我們設(shè)計(jì)的是使能端的十進(jìn)制計(jì)數(shù)器
42、,所生成的模塊如圖所示:其中rst是清零端,wave是計(jì)數(shù)信號輸入端,進(jìn)位輸出作為溢出標(biāo)志用over來表示,用以顯示計(jì)數(shù)器計(jì)數(shù)是否溢出,溢出了就更換大一級的檔位。這樣的級聯(lián)形成了同步計(jì)數(shù),是一種計(jì)數(shù)較快的級聯(lián)方式,生成的模塊如圖4-11所示:圖形 4-11 計(jì)數(shù)器模塊仿真圖如下圖4-12所示:圖 4-12 計(jì)數(shù)器的仿真圖由仿真圖可以看出,程序的綜合出來的這個計(jì)數(shù)器的確實(shí)現(xiàn)我們預(yù)定的要求。有清零端和保持端,通過對計(jì)數(shù)器的級聯(lián)就可以實(shí)現(xiàn)十進(jìn)制六位數(shù)的計(jì)數(shù)。4.4.5 鎖存器如果計(jì)數(shù)器輸出直接與譯碼器相連接,那么在計(jì)數(shù)過程中輸出端則隨輸入脈沖數(shù)的增加而不斷跳變,那么顯示數(shù)碼管則也會不斷閃爍跳變,讓人
43、不能看到穩(wěn)定的輸出,設(shè)鎖存器后,則不再跳變,便可清晰讀出計(jì)數(shù)結(jié)果。由控制模塊產(chǎn)生的latch信號來提供鎖存脈沖。其生成的功能模塊如圖4-13所示:圖 4-13 鎖存器模塊這模塊實(shí)現(xiàn)了對六位計(jì)數(shù)結(jié)果和溢出信號over的鎖存功能。即鎖存信號的上升沿來時送數(shù),其它時候則保持不變。4.4.6 掃描顯示控制系統(tǒng)本模塊通過用一個頻率1KHz的信號來掃描一個多路選擇器,實(shí)現(xiàn)對六位已經(jīng)鎖存的計(jì)數(shù)結(jié)果的掃描輸出,由于1KHz相對了人眼的暫留效應(yīng)已經(jīng)很高了,所以顯示結(jié)果不會讓人感覺到閃爍。這樣就可以用一個譯碼器來實(shí)現(xiàn)對六個4位二進(jìn)制數(shù)的譯碼。譯碼結(jié)果再連接到一個多路選擇器的輸入端,同樣由1KHz的信號來同步掃描選
44、通。最后的輸出全部通過下載前的固定引腳連接到LED顯示管上。實(shí)現(xiàn)最終結(jié)果的數(shù)字顯示。輸入端包括掃描信號1KHz,由前小數(shù)點(diǎn)指示信號dp以及鎖存器的輸出結(jié)果。第四章 數(shù)字頻率計(jì)的設(shè)計(jì)與實(shí)現(xiàn) PAGE 24 PAGE 23其生成掃描模塊如圖4-14所示:圖 4-14 掃描顯示控制模塊掃描仿真結(jié)果如圖4-15所示:圖 4-15 掃描顯示控制模塊的仿真圖4.4.6 7段譯碼顯示控制系統(tǒng)六位十進(jìn)制數(shù)的BCD碼相繼進(jìn)入bcd_code,經(jīng)7段譯碼輸出,顯示十進(jìn)制數(shù)。并根據(jù)檔位信號確定小數(shù)點(diǎn)顯示的位置以實(shí)現(xiàn)檔位的顯示。模塊如圖4-16所示:圖 4-16 顯示譯碼控制模塊掃描仿真結(jié)果如圖4-17所示:圖 4-
45、17 顯示模塊的仿真圖4.5 分配引腳和下載實(shí)現(xiàn)全部仿真通過后,就運(yùn)行ISE的設(shè)計(jì)實(shí)現(xiàn),然后分配引腳,即實(shí)現(xiàn)設(shè)計(jì)的輸入輸出端口與實(shí)際芯片的輸入輸出端口的對應(yīng)連接。比如七段LED管的控制信號就連接到實(shí)際電路的七個引腳。需要注意的是一些端口是固定的,不能胡亂的連接。比如時基信號即石英振蕩器所提供的信號就只能由T8輸入。外部信號輸入只能由外部信號源接口輸入,同時還要考慮內(nèi)部的可配制邏輯塊CLB的數(shù)量是否夠滿足程序的綜合要求。一切都準(zhǔn)備就緒后就可以運(yùn)行Configure Device,選擇要下載的位文件(.bit)便可開始下載了。4.6 誤差分析下面我們來分析計(jì)數(shù)器測頻的測量誤差。從公式(4-1)可知
46、,上述測頻方法的測量誤差,一方面決定于閘門時間T準(zhǔn)不準(zhǔn),另一方面決定于計(jì)數(shù)器計(jì)得的數(shù)準(zhǔn)不準(zhǔn)。根據(jù)誤差合成方法,從公式(4-1)可得: (4-2)公式(4-2)中第一項(xiàng)是數(shù)字化儀器所特有的誤差,而第二項(xiàng)是閘門時間的相對誤差,這項(xiàng)誤差決定于石英振蕩器所提供的標(biāo)準(zhǔn)頻率的準(zhǔn)確度?,F(xiàn)分述如下。4.6.1 1誤差在測頻時,主門的開啟時刻與計(jì)數(shù)脈沖之間的時間關(guān)系是不相關(guān)的,所以它們在時間軸上的相對位置是隨機(jī)的。這樣,在相同的主門開啟時間內(nèi),計(jì)數(shù)器所計(jì)得的數(shù)卻不一定相同,當(dāng)主門開啟時間T接近甚至等于被測信號周期的整數(shù)倍N倍時,此項(xiàng)誤差為最大,圖 4-2 畫出的就是這種情況。圖 4-2 正負(fù)1誤差若主門開啟時刻
47、為,而第1個計(jì)數(shù)脈沖出現(xiàn)在,圖 4-2 (a)中示出了0的情況(),這時計(jì)數(shù)器計(jì)得N個數(shù)(圖中N=6);現(xiàn)在再來看圖 4-2 (b)情況,即趨近于0,這就有兩種可能的計(jì)數(shù)結(jié)果:若第1個計(jì)數(shù)脈沖和第7個計(jì)數(shù)脈沖都能通過主門,則可計(jì)得N+1=7個數(shù);也可能這兩個脈沖都沒有能進(jìn)入主門,則只能計(jì)得N-1=5個數(shù)。由此可知,最大的計(jì)數(shù)誤差為個數(shù)。所以考慮到公式(4-1),可寫成 (4-3)式中T為閘門時間,為被測頻率。從公式(4-3)可知,不管計(jì)數(shù)值N多少,其最大誤差總是1個計(jì)數(shù)單位,故稱“1個字誤差”,簡稱“1誤差”。而且一定時,增大閘門時間T,可減小1誤差對測頻誤差的影響。當(dāng)T選定后,越低,則由1誤
48、差產(chǎn)生的測頻誤差越大。4.6.2 標(biāo)準(zhǔn)頻率誤差閘門時間T準(zhǔn)不準(zhǔn),主要決定于由石英振蕩器提供的標(biāo)準(zhǔn)頻率的準(zhǔn)確度,若石英振蕩器的頻率為,分頻系數(shù)為k,則而所以 (4-4)可見,閘門時間的準(zhǔn)確度在數(shù)值上等于標(biāo)準(zhǔn)頻率的準(zhǔn)確度,式中負(fù)號表示由引起的閘門時間的誤差為。通常,對標(biāo)準(zhǔn)頻率準(zhǔn)確度的要求是根據(jù)所要求的測頻準(zhǔn)確度提出來的,例如,當(dāng)測量方案的最小計(jì)數(shù)單位為1Hz,而=Hz,在T=1s時的測量準(zhǔn)確度為(只考慮誤差),為了使標(biāo)準(zhǔn)頻率誤差不對測量結(jié)果表明產(chǎn)生影響,石英振蕩器的輸出頻率準(zhǔn)確度應(yīng)優(yōu)于,即比誤差引起的測頻誤差小一個量級。4.6.3 結(jié)論綜上所述,可得如下結(jié)論:1、計(jì)數(shù)器直接測頻的誤差主要有兩項(xiàng):即
49、誤差和標(biāo)準(zhǔn)頻率誤差。一般,總誤差可采用分項(xiàng)誤差絕對值合成,即 (4-5)可把公式(4-5)畫成圖 4-3 所示的曲線,即與T,以及的關(guān)系曲線。圖 4-3 誤差曲線從圖可知,一定時,閘門時間T選得越長,測量準(zhǔn)確度就越高。而當(dāng)T選定后,越高,則由于誤差對測量結(jié)果的影響越小,測量準(zhǔn)確度就越高。但是,隨著誤差的減小,標(biāo)準(zhǔn)頻率誤差將對測量結(jié)果產(chǎn)生影響,并以(圖中以為例)為極限,即測量準(zhǔn)確度不可能優(yōu)于。2、測量低頻時,由于誤差產(chǎn)生的測頻誤差大得驚人,例如,為10Hz,T=1s,則由誤差引起的測頻誤差可達(dá)到10%,所以,測量低頻時不宜采用直接測頻方法。第五章 結(jié)論 PAGE 25第五章 實(shí)驗(yàn)結(jié)論及總結(jié)本文主
50、要介紹了利用VHDL語言完成基于FPGA的數(shù)字頻率計(jì)的設(shè)計(jì)與實(shí)現(xiàn)。詳細(xì)介紹了測量原理,設(shè)計(jì)方案以及各模塊的設(shè)計(jì)過程及其實(shí)現(xiàn)的功能,并對設(shè)計(jì)中遇到的問題作了分析和處理;利用ISE和ModelSim對設(shè)計(jì)進(jìn)行了仿真,分析,綜合,并最終下載到FPGA芯片中,實(shí)現(xiàn)了對頻率的測量。(1).通過ISE綜合,ModelSim仿真,最終在XILINX學(xué)生EDA實(shí)驗(yàn)板上實(shí)現(xiàn)了10Hz10MHz頻率計(jì)數(shù)器的設(shè)計(jì),其誤差在0.01%數(shù)量級,能夠較為精確的測量頻率。(2).當(dāng)頻率計(jì)值達(dá)到該檔量程最大測量值時,這時輸入頻率值再繼續(xù)增加,則會產(chǎn)生溢出,并且LED8會變亮表示計(jì)數(shù)器已經(jīng)溢出。(3).在測量頻率過程中我們應(yīng)當(dāng)
51、選擇適當(dāng)?shù)臋n位,使得測量結(jié)果更加精確,特別是溢出信號LED亮的時候,一定要選擇更高檔位來進(jìn)行測量。通過頻率計(jì)的設(shè)計(jì)試驗(yàn),對頻率計(jì)有了更深的認(rèn)識,尤其是對頻率計(jì)的工作原理以及各功能模塊的實(shí)現(xiàn)有深入了解。此外,還熟悉了Xilinx ISE 10.1i軟件的用法和VHDL/Verilog的編程環(huán)境,通過本次的設(shè)計(jì)培養(yǎng)自己的實(shí)驗(yàn)動手能力。這是第一次利用HDL語言來實(shí)現(xiàn)基于FPGA的實(shí)際工程項(xiàng)目,所以在實(shí)驗(yàn)過程中不可避免的遇到了很多問題以及設(shè)計(jì)中一些不足的地方。理論和實(shí)踐沒有有機(jī)的聯(lián)系起來,理論沒有起到應(yīng)有的指導(dǎo)作用。 PAGE 24參考文獻(xiàn)1. 蔣煥文,孫續(xù). 電子測量(第二版). 中國計(jì)量出版社 (
52、中).2. Volnei A. Pedroni. VHDL數(shù)字電路設(shè)計(jì)教程. 電子工業(yè)出版社 (巴西).3. 姜立東. VHDL語言程序設(shè)計(jì)及應(yīng)用 (第二版). 北京郵電出版社 (中).4. 湯山俊夫. 數(shù)字電路設(shè)計(jì)與制作. 科學(xué)出版社 (日).5. 廖超平. EDA技術(shù). 北京理工大學(xué)出版社 (中).6. 孫航. Xilinx可編程邏輯器件的高級應(yīng)用與設(shè)計(jì)技巧. 電子工業(yè)出版社 (中).致謝PAGE 26 PAGE 25致 謝在此,我首先向不辭辛勞,誨人不倦的老師劉曦工程師和皇曉輝工程師,表示最衷心的感謝。本實(shí)驗(yàn)從最初的選題到任務(wù)的制定,系統(tǒng)的設(shè)計(jì)和開發(fā)過程中都得到了劉老師和的悉心指導(dǎo)與指正
53、。正是老師們的諄諄教導(dǎo)和熱心關(guān)懷使我較快的熟悉了用硬件語言來實(shí)現(xiàn)項(xiàng)目的過程,并最終順利完成實(shí)驗(yàn)。同時,老師們嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度以及對工作的一絲不茍,也使我受益匪淺,終生難忘。特別感謝固電專業(yè)的同學(xué)們在實(shí)驗(yàn)期間給予我的巨大幫助與支持。同學(xué)們都樂于助人。在此,謹(jǐn)向他們致以深深的敬意和誠摯的感謝!最后,感謝電子工程學(xué)院和微電子與固體工程學(xué)院給予我這個鍛煉自我提升自我的實(shí)驗(yàn)平臺。翻譯文稿 PAGE 46 PAGE 45附 錄附錄1. 分頻器程序library IEEE;use IEEE.STD_LOGIC_1164.ALL;use IEEE.STD_LOGIC_ARITH.ALL;use IEEE.STD
54、_LOGIC_UNSIGNED.ALL; Uncomment the following library declaration if instantiating any Xilinx primitives in this code.-library UNISIM;-use UNISIM.VComponents.all;entity divf is Port ( rst : in STD_LOGIC; clk : in STD_LOGIC; f1 : out STD_LOGIC; f10 : out STD_LOGIC; f100 : out STD_LOGIC; f1000 : out ST
55、D_LOGIC);end divf;architecture Behavioral of divf issignal f1_cnt:integer range 0 to 48000000:=1;signal f10_cnt:integer range 0 to 48000000:=1;signal f100_cnt:integer range 0 to 48000000:=1;signal f1000_cnt:integer range 0 to 48000000:=1;signal f1m:STD_LOGIC;signal f10m:STD_LOGIC;signal f100m:STD_LO
56、GIC;signal f1000m:STD_LOGIC;beginpf1:process(rst,clk,f1_cnt)beginif rst=0 then f1_cnt=1;elsif rising_edge(clk) then if f1_cnt=24000000 then f1m= not f1m; f1_cnt=1; else f1_cnt=f1_cnt+1; end if;end if;end process;pf10:process(rst,clk,f10_cnt)beginif rst=0 then f10_cnt=1;elsif rising_edge(clk) then if
57、 f1_cnt=2400000 then f10m= not f10m; f10_cnt=1; else f10_cnt=f10_cnt+1; end if;end if;end process;pf100:process(rst,clk,f100_cnt)beginif rst=0 then f100_cnt=1;elsif rising_edge(clk) then if f100_cnt=24000000 then f100m= not f100m; f100_cnt=1; else f100_cnt=f100_cnt+1; end if;end if;end process;pf100
58、0:process(rst,clk,f1000_cnt)beginif rst=0 then f1000_cnt=1;elsif rising_edge(clk) then if f1000_cnt=24000000 then f1000m= not f1000m; f1000_cnt=1; else f1000_cnt=f1000_cnt+1; end if;end if;end process;f1=f1m;f10=f10m;f100=f100m;f1000fhz=f1hz;dp=110111;lightfhz=f10hz;dp=110111;lightfhz=f100hz;dp=1101
59、11;lightfhz=Z;dp=111111;light=1;end case;end process;end Behavioral;附錄3. 測頻控制器程序library IEEE;use IEEE.STD_LOGIC_1164.ALL;use IEEE.STD_LOGIC_ARITH.ALL;use IEEE.STD_LOGIC_UNSIGNED.ALL; Uncomment the following library declaration if instantiating any Xilinx primitives in this code.-library UNISIM;-use
60、UNISIM.VComponents.all;entity control2 is Port ( clr : in STD_LOGIC; fre : in STD_LOGIC; rst : out STD_LOGIC; latch : out STD_LOGIC; gate : out STD_LOGIC);end control2;architecture Behavioral of control2 issignal g1:STD_LOGIC;signal g2:STD_LOGIC;beginprocess(fre,clr)begin if clr=0 then g1=0; elsif r
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 快遞員計(jì)件合同協(xié)議
- 和4s店簽合同協(xié)議
- 2025商場攤位租賃合同示范文本
- 快遞工資月結(jié)合同協(xié)議
- 母嬰工廠代加工合同協(xié)議
- 快遞勞務(wù)承攬合同協(xié)議
- 欠款房產(chǎn)證抵押合同協(xié)議
- 商標(biāo)出租合同協(xié)議
- 2025年鐵嶺市九年級中考語文第一次模擬試卷附答案解析
- 樓道大件搬運(yùn)合同協(xié)議
- 機(jī)動車排放定期檢驗(yàn)內(nèi)部審批程序
- DUOYING功效護(hù)膚品牌傳播規(guī)劃
- 小學(xué)英語-《Caterpillar,caterpillar》教學(xué)設(shè)計(jì)學(xué)情分析教材分析課后反思
- 長郡中學(xué)小升初招生考試數(shù)學(xué)真題試卷(含答案)
- 紡紗織造工藝流程培訓(xùn)教材實(shí)用課件
- GRR表格MSA第四版(手冊例)
- 曼陀羅繪畫心理課件:曼陀羅繪畫療法
- 中美關(guān)系新時代52張課件
- 五大領(lǐng)域教育活動設(shè)計(jì)和組織
- SHL7.0-1.09570-AⅡ熱水鍋爐設(shè)計(jì)-畢業(yè)論文
- DB65T 2283-2005新疆平原楊樹人工林二元立木材積表
評論
0/150
提交評論