電子科技大學(xué)現(xiàn)代電子綜合實(shí)驗(yàn)頻率計(jì)實(shí)驗(yàn)報(bào)告_第1頁
電子科技大學(xué)現(xiàn)代電子綜合實(shí)驗(yàn)頻率計(jì)實(shí)驗(yàn)報(bào)告_第2頁
電子科技大學(xué)現(xiàn)代電子綜合實(shí)驗(yàn)頻率計(jì)實(shí)驗(yàn)報(bào)告_第3頁
電子科技大學(xué)現(xiàn)代電子綜合實(shí)驗(yàn)頻率計(jì)實(shí)驗(yàn)報(bào)告_第4頁
電子科技大學(xué)現(xiàn)代電子綜合實(shí)驗(yàn)頻率計(jì)實(shí)驗(yàn)報(bào)告_第5頁
已閱讀5頁,還剩35頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、電子科技大學(xué) 211 樓 308數(shù)字頻率計(jì)用 VHDL 語言設(shè)計(jì)實(shí)現(xiàn)基于 FPGA 的數(shù)字頻率計(jì)學(xué)號(hào)學(xué)號(hào)姓名姓名2014/04/07-2014/04/30摘要I摘 要本文重點(diǎn)介紹了一種基于 FPGA 的數(shù)字頻率的實(shí)現(xiàn)方法。該設(shè)計(jì)采用硬件描述語言 VHDL,在軟件開發(fā)平臺(tái) ISE 上完成。該設(shè)計(jì)的頻率計(jì)能準(zhǔn)確的測量頻率在 10Hz 到 10MHz 之間的信號(hào)。使用 ModelSim 仿真軟件對 VHDL 程序做了仿真,并完成了綜合布局布線,最終下載到芯片上取得良好測試效果。關(guān)鍵詞:關(guān)鍵詞:FPGA,VHDL,ISE,頻率計(jì)目錄目 錄第一章第一章 引言引言 .1第二章第二章 基于基于 FPGA 的

2、的 VHDL 設(shè)計(jì)流程設(shè)計(jì)流程.22.1 概述概述.22.2 VHDL 語言介紹語言介紹.22.2.1 VHDL 的特點(diǎn).32.3 FPGA 開發(fā)介紹開發(fā)介紹.4第三章第三章 數(shù)字頻率計(jì)的軟件開發(fā)環(huán)境數(shù)字頻率計(jì)的軟件開發(fā)環(huán)境 .53.1 開發(fā)環(huán)境開發(fā)環(huán)境.53.2 MODELSIM介紹介紹.53.3 ISE 介紹介紹.6第四章第四章 數(shù)字頻率計(jì)的設(shè)計(jì)與實(shí)現(xiàn)數(shù)字頻率計(jì)的設(shè)計(jì)與實(shí)現(xiàn) .74.1 任務(wù)要求任務(wù)要求.74.2 測量原理測量原理.74.2.1 頻率或時(shí)間的原始基準(zhǔn) .84.2.2 電子計(jì)數(shù)器測頻方法 .94.3 設(shè)計(jì)方案與系統(tǒng)需求設(shè)計(jì)方案與系統(tǒng)需求.104.4 各模塊的功能及實(shí)現(xiàn)各模塊的

3、功能及實(shí)現(xiàn).124.4.1 分頻器 .124.4.2 閘門選擇器 .134.4.3 測頻控制器 .144.4.4 計(jì)數(shù)器 .154.4.5 鎖存器 .164.4.6 掃描顯示控制系統(tǒng) .174.4.6 7 段譯碼顯示控制系統(tǒng).184.5 分配引腳和下載實(shí)現(xiàn)分配引腳和下載實(shí)現(xiàn).194.6 誤差分析誤差分析.194.6.1 1 誤差.204.6.2 標(biāo)準(zhǔn)頻率誤差 .214.6.3 結(jié)論 .21第五章第五章 實(shí)驗(yàn)結(jié)論及總結(jié)實(shí)驗(yàn)結(jié)論及總結(jié) .23參考文獻(xiàn)參考文獻(xiàn) .24致致 謝謝 .25目錄附附 錄錄 .26附錄附錄 1. 分頻器程序分頻器程序 .26附錄附錄 2. 閘門選擇器程序閘門選擇器程序 .2

4、8附錄附錄 3. 測頻控制器程序測頻控制器程序 .29附錄附錄 4. 計(jì)數(shù)器程序計(jì)數(shù)器程序 .30附錄附錄 5. 鎖存器程序鎖存器程序 .31附錄附錄 5. 掃描顯示控制程序掃描顯示控制程序 .33附錄附錄 5. 譯碼系統(tǒng)程序譯碼系統(tǒng)程序 .34第一章 引言1第一章第一章 引言引言在電子技術(shù)領(lǐng)域內(nèi),頻率是一個(gè)最基本的參數(shù),頻率與其它許多電參量的測量方案、測量結(jié)果都有十分密切的關(guān)系。如時(shí)間,速度等都涉及到或本身可轉(zhuǎn)化為頻率的測量。因此,頻率的測量就顯得更為重要。而且,目前在電子測量中,頻率的測量精確度是最高的.現(xiàn)在市場上有各種多功能,高精度,高頻率的數(shù)字頻率計(jì),但價(jià)格不菲。而在實(shí)際工程中,不是對

5、所有信號(hào)的頻率測量都要求達(dá)到非常高的精度。因此,本文提出了一種能滿足一般測量精度要求,但成本低廉的數(shù)字頻率計(jì)的設(shè)計(jì)方案。本文主要任務(wù)是針對設(shè)計(jì)的要求,基于 FPGA 利用硬件描述語言 VHDL完成數(shù)字頻率計(jì)的設(shè)計(jì),通過仿真,分析,綜合并最終下載到 FPGA 里面去實(shí)現(xiàn)。除被測信號(hào)的整形部分、鍵輸入部分以外,其余全部在一片 FPGA 芯片上實(shí)現(xiàn),整個(gè)系統(tǒng)非常精簡,而且具有靈活的現(xiàn)場可更改性。在不更改硬件電路的基礎(chǔ)上,對系統(tǒng)進(jìn)行各種改進(jìn)還可以進(jìn)一步提高系統(tǒng)的性能。電子科技大學(xué)現(xiàn)代電子技術(shù)綜合實(shí)驗(yàn)報(bào)告2第二章第二章 基于基于 FPGA 的的 VHDL 設(shè)計(jì)流程設(shè)計(jì)流程2.1 概述概述數(shù)字頻率計(jì)是數(shù)字

6、電路中的一個(gè)典型應(yīng)用,實(shí)際的硬件設(shè)計(jì)用到的器件較多,連線比較復(fù)雜,而且會(huì)產(chǎn)生比較大的延時(shí),造成測量誤差、可靠性差。頻率計(jì)的設(shè)計(jì)有傳統(tǒng)方法和現(xiàn)代方法,傳統(tǒng)的設(shè)計(jì)方法耗時(shí)耗功,設(shè)計(jì)強(qiáng)度大,且容易出錯(cuò),設(shè)計(jì)的質(zhì)量不一定是最好的。自然我們考慮到現(xiàn)代方法,即二十世紀(jì)八十年代興起的電子設(shè)計(jì)自動(dòng)化技術(shù),英文為 Electronic Design Auto,縮寫為 EDA。在 EDA 設(shè)計(jì)工具中,用的最廣泛的是 VHDL 和 VERILOG,當(dāng)然還有其它的。比較 VHDL 和 VERILOG,在頂層設(shè)計(jì)方面 VHDL 優(yōu)于VERILOG,在門級(jí)電路設(shè)計(jì)方面 VERILOG 優(yōu)于 VHDL。隨著復(fù)雜可編程邏輯器

7、件(CPLD)的廣泛應(yīng)用,以 EDA 工具作為開發(fā)手段,運(yùn)用 VHDL 語言,將使整個(gè)系統(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ì),除被測信號(hào)的整形部分、鍵輸入部分以外,其余全部在一片 FPGA 芯片上實(shí)現(xiàn),整個(gè)系統(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 Inte

8、grated 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)行了修訂,從

9、更高的抽象層次和系統(tǒng)描述能力上擴(kuò)第二章 基于 FPGA 的 VHDL 設(shè)計(jì)流程3展 VHDL 的內(nèi)容,公布了新版本的 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)的特點(diǎn)VHDL 主要用于描述數(shù)字系統(tǒng)的結(jié)構(gòu)、行為、功能和接口。除了含有許多具有硬件特征的語句外,VHDL 的語言形式,描述風(fēng)格以及句法十分類似于一

10、般的計(jì)算機(jī)高級(jí)語言。VHDL 的程序結(jié)構(gòu)特點(diǎn)是將一項(xiàng)工程設(shè)計(jì),或稱為設(shè)計(jì)實(shí)體(可以是一個(gè)元件、一個(gè)電路模塊或一個(gè)系統(tǒng))分成外部(又稱為可視部分,即端口)和內(nèi)部(又稱為不可視部分) ,即設(shè)計(jì)實(shí)體的內(nèi)部功能和算法完成部分。在對一個(gè)設(shè)計(jì)實(shí)體定義了外部界面后,一旦其內(nèi)部開發(fā)完成后,其它的設(shè)計(jì)就可以直接調(diào)用這個(gè)實(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ì)

11、大規(guī)模電子系統(tǒng)的重要保證。就目前流行的 EDA 工具和 VHDL 綜合器而言,將基于抽象的行為描述風(fēng)格的VHDL 程序綜合成為具體的 FPGA 和 CPLD 等目標(biāo)器件的網(wǎng)表文件已不成問題,只是在綜合與優(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í)可對設(shè)計(jì)進(jìn)行仿真模擬。即在遠(yuǎn)離門級(jí)的高層次上進(jìn)行模擬,使設(shè)計(jì)者對整個(gè)工程設(shè)計(jì)的結(jié)構(gòu)和功能的可行性做出決策。3、VHDL 語句的行為描

12、述能力和程序結(jié)構(gòu)決定了它具有支持大規(guī)模設(shè)計(jì)的分解和已有設(shè)計(jì)的再利用功能,符合市場所需求的,大規(guī)模系統(tǒng)高效、高速的完成必須由多人甚至多個(gè)開發(fā)組共同并行工作才能實(shí)現(xiàn)的特點(diǎn)。VHDL 中設(shè)計(jì)實(shí)體的概念、程序包的概念、設(shè)計(jì)庫的概念為設(shè)計(jì)的分解和并行工作提供了有力的支持。電子科技大學(xué)現(xiàn)代電子技術(shù)綜合實(shí)驗(yàn)報(bào)告44、對于用 VHDL 完成的一個(gè)確定的設(shè)計(jì),可以利用 EDA 工具進(jìn)行邏輯綜合和優(yōu)化,并自動(dòng)地把 VHDL 描述設(shè)計(jì)轉(zhuǎn)變成為門級(jí)網(wǎng)表。這種方式突破了門級(jí)電路設(shè)計(jì)的瓶頸,極大地減少了電路設(shè)計(jì)的時(shí)間和可能發(fā)生的錯(cuò)誤,降低了開發(fā)成本。應(yīng)用 EDA 工具的邏輯優(yōu)化功能,可以自動(dòng)地把一個(gè)綜合后的設(shè)計(jì)變成一個(gè)更

13、高效、更高速的電路系統(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)行獨(dú)立的設(shè)計(jì)。正因?yàn)?VHDL硬件描述與具體的工藝技術(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 FP

14、GA 開發(fā)介紹開發(fā)介紹現(xiàn)場可編程門陣列(FPGA)器件是八十年代中期出現(xiàn)的新產(chǎn)品,它的應(yīng)用大大地方便了 IC 的設(shè)計(jì),因而隨著數(shù)字技術(shù)日益廣泛的應(yīng)用,以 FPGA 為代表的 ASIC 器件得到了迅速的普及和發(fā)展,器件集成度和速度都在高速增長。傳統(tǒng)的電路設(shè)計(jì)過程是:先畫原理圖、把原理圖繪制成印制電路板圖、再制版、安裝、調(diào)試。有了 FPGA,我們只需要在計(jì)算機(jī)上繪出原理圖,再運(yùn)行相應(yīng)的軟件,就可把所設(shè)計(jì)的邏輯電路在 FPGA 中實(shí)現(xiàn)。所有步驟均可自動(dòng)完成。電子設(shè)計(jì)工程師自己設(shè)計(jì)專用集成電路成為了一件很容易的事情。FPGA 作為專用集成電路(ASIC)概念上的一個(gè)新型范疇和門類,以其高度靈活的用戶現(xiàn)

15、場編程方式,現(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),而且克服了過去板級(jí)通用數(shù)字電路應(yīng)用設(shè)計(jì)的落后,繁瑣和不可靠性。目前 FPGA 的兩個(gè)重要發(fā)展與突破是,大多數(shù)廠商在其高端器件上都提供第二章 基于 FPGA 的 VHDL 設(shè)計(jì)流程5了片上的處理器(如 CPU、DSP)等硬核(Hard Core)或固化核(Fixed Core) 。比如 Xilinx 的 Virtex II Pro 芯片可以提供 Power

16、PC,而 Altera 的Stratix、Excalibur 等系列芯片可以提供 Nios、DSP 和 Arm 等模塊。在 FPGA上集成微處理器,使 SOPC 設(shè)計(jì)更加便利與強(qiáng)大。另一個(gè)發(fā)展是在不同器件商推出的高端芯片上大都集成了高速串行收發(fā)器,一般能夠達(dá)到 3Gb/s 以上的數(shù)據(jù)處理能力,在 Xilinx、Altera、Lattice 都有相應(yīng)的器件型號(hào)提供該功能。這些新功能使 FPGA 的數(shù)據(jù)吞吐能力大幅度增強(qiáng)。電子科技大學(xué)現(xiàn)代電子技術(shù)綜合實(shí)驗(yàn)報(bào)告6第三章第三章 數(shù)字頻率計(jì)的軟件開發(fā)環(huán)境數(shù)字頻率計(jì)的軟件開發(fā)環(huán)境本章主要介紹項(xiàng)目中將要用到了一系列軟件,包括用于 VHDL 語言編寫和編譯的

17、ISE 軟件和用于程序仿真的仿真軟件 ModelSim。3.1 開發(fā)環(huán)境開發(fā)環(huán)境隨著可編程器件紛紛超越百萬門級(jí),設(shè)計(jì)者面臨的產(chǎn)品性能與設(shè)計(jì)效率的挑戰(zhàn)也越來越大。設(shè)計(jì)者必須合理選擇各 EDA 廠家提供的加速設(shè)計(jì)的工具軟件,這樣才能在較短的時(shí)間內(nèi)設(shè)計(jì)出高效穩(wěn)定的產(chǎn)品。在本次設(shè)計(jì)中,由于選擇的 FPGA 芯片是由 Xilinx 公司生產(chǎn)的,所以我們主要使用 ModelSim 和 ISE軟件進(jìn)行仿真和綜合。3.2 ModelSim 介紹介紹ModelSim 支持 PC 和 UNIX 平臺(tái),是單一內(nèi)核支持 VHDL 和 Verilog 混合仿真的 HDL 語言仿真器。ModelSim 不僅可以完成設(shè)計(jì)的

18、功能驗(yàn)證,也可實(shí)現(xiàn)邏輯綜合后的門級(jí)仿真以及布局布線后的功能與時(shí)序驗(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)試步驟以及對各種信號(hào)的監(jiān)控功能(無論信號(hào)處于 VHDL 層,還是處于混合語言層)使仿真的執(zhí)行過程形象直觀化,幫助設(shè)計(jì)者及時(shí)發(fā)現(xiàn)漏洞,縮短設(shè)計(jì)周期。ModelSim 最大的特點(diǎn)是其強(qiáng)大的調(diào)試功能:先進(jìn)的數(shù)據(jù)流窗口,可以迅速追蹤到生產(chǎn)不定或者錯(cuò)誤狀態(tài)的原因;性能分析工具幫助分析性能瓶頸,加速仿真;代碼覆蓋

19、率檢查確保測試的完備;多種模式的波形比較功能;先進(jìn)的 SignalSpy 功能,可以方便地訪問 VHDL 或者 VHDL 和 Verilog 混合設(shè)計(jì)中的底層信號(hào);支持加密 IP;可以實(shí)現(xiàn)與 Matlab 的 Simulink 的聯(lián)合仿真。第三章 數(shù)字頻率計(jì)的軟件開發(fā)環(huán)境73.3 ISE 介紹介紹ISE 的主要功能包括設(shè)計(jì)輸入、綜合、仿真、實(shí)現(xiàn)和下載,涵蓋了可編程邏輯器件開發(fā)的全過程,從功能上講,完成 CPLD/FPGA 的設(shè)計(jì)流程無需借助任何第三方 EDA 軟件。下面簡要說明各功能的作用:設(shè)計(jì)輸入:ISE 提供的設(shè)計(jì)輸入工具包括用于 HDL 代碼輸入和查看報(bào)告的 ISE 文本編輯器(The

20、ISE Text Editor) ,用于原理圖編輯的工具 ECS(The Engineering Capture System) ,用于生成 IP Core 的 Core Generator,用于狀態(tài)機(jī)設(shè)計(jì)的 StateCAD 以及用于約束文件編輯的 Constraint Editor 等。綜合:ISE 的綜合工具不但包含了 Xilinx 自身提供的綜合工具 XST,同時(shí)還可以內(nèi)嵌 Mentor Graphics 公司的 Leonardo Spectrum 和 Synplicity 公司的Synplify,實(shí)現(xiàn)無縫鏈接。 仿真:ISE 本身自帶了一個(gè)具有圖形化波形編輯功能的仿真工具 HDL B

21、encher,同時(shí)又提供了使用 Model Tech 公司的 Modelsim 進(jìn)行仿真的接口。 實(shí)現(xiàn):此功能包括了翻譯、映射、布局布線等,還具備時(shí)序分析、管腳指定以及增量設(shè)計(jì)等高級(jí)功能。 下載:下載功能包括了 BitGen,用于將布局布線后的設(shè)計(jì)文件轉(zhuǎn)換為位流文件,還包括了 IMPACT,功能是進(jìn)行芯片配置和通信,控制將程序燒寫到FPGA 芯片中去。電子科技大學(xué)現(xiàn)代電子技術(shù)綜合實(shí)驗(yàn)報(bào)告8第四章第四章 數(shù)字頻率計(jì)的設(shè)計(jì)與實(shí)現(xiàn)數(shù)字頻率計(jì)的設(shè)計(jì)與實(shí)現(xiàn)4.1 任務(wù)要求任務(wù)要求本實(shí)驗(yàn)核心任務(wù)是完成基于 FPGA 利用 VHDL 語言設(shè)計(jì)一個(gè)數(shù)字頻率計(jì)的設(shè)計(jì),仿真,下載實(shí)現(xiàn)并實(shí)際測量效果??紤]到是首次接

22、觸 VHDL 描述語言,并且以前沒有過基于 FPGA 設(shè)計(jì)的經(jīng)驗(yàn),所以在完成實(shí)驗(yàn)的同時(shí),也不斷的加深對 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、量程分為三檔:第一檔:最小量程檔,閘門時(shí)間為 1S 時(shí),最大讀數(shù)為 999.999KHz。第二檔:閘門時(shí)間為 0.1S 時(shí),最大讀數(shù)為 9999.99KHz。第三檔:閘門時(shí)間為 0.01S 時(shí),最大讀數(shù)為 99999.9KHz。以上三檔,實(shí)際測得的頻率是 1H

23、z99999.9KHz。顯然完全涵蓋了10Hz10MHz 的范圍。4、顯示工作方式:a、用 BCD 七段共陽極數(shù)碼管顯示讀數(shù),只有在讀數(shù)不發(fā)生跳變時(shí)才是正確的結(jié)果。b、用一個(gè) LED 做計(jì)數(shù)器溢出標(biāo)志。c、用一個(gè) LED 閘門的開與閉。5、要求被測輸入信號(hào)應(yīng)是符合數(shù)字電路要求的脈沖波或正弦波。4.2 測量原理測量原理頻率計(jì)的基本原理是用一個(gè)頻率穩(wěn)定度高的頻率源作為基準(zhǔn)時(shí)鐘,對比測量其他信號(hào)的頻率。通常情況下計(jì)數(shù)每秒內(nèi)待測信號(hào)的脈沖個(gè)數(shù),此時(shí)我們稱閘門時(shí)間為 1S,閘門時(shí)間也可以大于或小于 1S。閘門時(shí)間越長,得到的頻率第四章 數(shù)字頻率計(jì)的設(shè)計(jì)與實(shí)現(xiàn)9值就準(zhǔn)確,但閘門時(shí)間越長則每測一次頻率的間隔

24、就越長;閘門時(shí)間越短,測得頻率值刷新就越快,但測得的頻率精準(zhǔn)度就受影響。4.2.1 頻率或時(shí)間的原始基準(zhǔn)頻率或時(shí)間的原始基準(zhǔn)時(shí)間是某一時(shí)刻與另一時(shí)刻之間的時(shí)間長度,這里指的時(shí)刻是連續(xù)流逝的時(shí)間中的一個(gè)時(shí)點(diǎn)。為了使大家能夠確定出同一時(shí)刻,就需要使用共同的時(shí)刻標(biāo)尺來衡量,用這個(gè)時(shí)刻標(biāo)尺上的標(biāo)度來客觀地認(rèn)識(shí)時(shí)刻。要計(jì)量時(shí)間需要有固定不變的時(shí)間單位,用秒作為時(shí)間的基本單位。如果一秒內(nèi)的振動(dòng)數(shù)即頻率為已知,則可由此振動(dòng)數(shù)的倒數(shù)得到秒的間隔,這就是說單位秒和標(biāo)準(zhǔn)頻率數(shù)是互相依存的事物。時(shí)刻和時(shí)間發(fā)展的歷史,集中反映在秒的定義在不斷變遷,秒的準(zhǔn)確度不斷提高。采用天文觀測方法,求得的太陽出現(xiàn)于天頂?shù)钠骄芷跒?/p>

25、平均太陽日。將太陽日分為 246060 份,得到的秒為零類世界時(shí)(記作),其準(zhǔn)確度在0UT量級(jí)。地球自轉(zhuǎn)受到極運(yùn)動(dòng)(極移引起的經(jīng)度變化)的影響,校正了這個(gè)偏610差而得到的地球自轉(zhuǎn)的周期,稱為第一世界時(shí)(記作)。再把地球自轉(zhuǎn)的季1UT度性、年度性的變化(最大可達(dá) 0.03 秒)校正,就引出了第二世界時(shí)(記作)。2UT世界時(shí)經(jīng)過五十年的觀測,發(fā)現(xiàn)其穩(wěn)定度為。這樣,以為標(biāo)準(zhǔn)2UT81032UT其計(jì)時(shí)準(zhǔn)確度很難優(yōu)于。8103為了得到更準(zhǔn)確的均勻不變的時(shí)間標(biāo)準(zhǔn),人們以 1.900 回歸年的 31 556 925 9747 分之一作為歷書時(shí)的秒(記作 ET),其準(zhǔn)確度可達(dá)左右。9101、ET 為宏觀計(jì)時(shí)

26、標(biāo)準(zhǔn),它需要精密的天文觀測,手續(xù)煩雜,準(zhǔn)確度有限。2UT近年來引進(jìn)了微觀計(jì)時(shí)標(biāo)準(zhǔn),這就是利用原子或分子內(nèi)部能級(jí)躍遷所輻射或吸收的電磁波的頻率作為基準(zhǔn)來計(jì)量時(shí)間。采用()原子基態(tài)的兩個(gè)133銫133Cs超精細(xì)能級(jí)之間躍遷所對應(yīng)的 9 192 631 770 個(gè)周期的持續(xù)時(shí)間為一秒,以此為標(biāo)準(zhǔn)定出的時(shí)間標(biāo)準(zhǔn)稱為原子時(shí)(記作 AT),其準(zhǔn)確度可達(dá)。1310目前,國際上已經(jīng)應(yīng)用經(jīng)過原子標(biāo)準(zhǔn)修正過的時(shí)間來發(fā)送時(shí)間標(biāo)準(zhǔn),用原子時(shí)來對天文時(shí)(、ET)進(jìn)行修正。另外,由于頻率是時(shí)間的倒數(shù),因此,2UT有了時(shí)間標(biāo)準(zhǔn)也就有了頻率標(biāo)準(zhǔn)。由于數(shù)字電路的飛速發(fā)展和數(shù)字集成電路的普及,電子計(jì)數(shù)器的應(yīng)用已十分普及,利用電子

27、計(jì)數(shù)器測量頻率具有精確度高、使用方便、測量迅速,以及便于實(shí)現(xiàn)測量過程自動(dòng)化等一系列突出優(yōu)點(diǎn),故已發(fā)展成為近代頻率測量的重要手段。電子科技大學(xué)現(xiàn)代電子技術(shù)綜合實(shí)驗(yàn)報(bào)告104.2.2 電子計(jì)數(shù)器測頻方法電子計(jì)數(shù)器測頻方法目前,絕大多數(shù)實(shí)驗(yàn)室用電子計(jì)數(shù)器都具有測量頻率(測頻)和測量周期(測周)等兩種以上的測量功能,故統(tǒng)稱“通用計(jì)數(shù)器.各種測量功能可利用功能選擇開關(guān)加以選擇。4.2.2.1 電子計(jì)數(shù)器的測頻原理所謂“頻率” ,就是周期性信號(hào)在單位時(shí)間(一秒)內(nèi)變化的次數(shù)。若在一定時(shí)間內(nèi)計(jì)得這個(gè)周期信號(hào)變化的次數(shù)為 N,則其頻率可表達(dá): (4-1)TNf 電子計(jì)數(shù)器可以嚴(yán)格按照公式(4-1)所表達(dá)的頻率

28、的定義進(jìn)行測頻,其原理方框圖如圖 4-1 示:圖 4-1 測頻原理圖首先,把被測信號(hào)(以正弦波為例)通過脈沖形成電路轉(zhuǎn)變成脈沖(實(shí)際上變成方波即可)其重復(fù)頻率等于被測頻率,然后將它加到閘門的一個(gè)輸入端。xf閘門出門控信號(hào)來控制開、閉時(shí)間,只有在閘門開通時(shí)間 T 內(nèi),被計(jì)數(shù)的脈沖才能通過閘門,被送到十進(jìn)制電子計(jì)數(shù)器進(jìn)行計(jì)數(shù)。門控信號(hào)的作用時(shí)間T 是非常準(zhǔn)確的,以它作為時(shí)間基準(zhǔn)(時(shí)基),它由時(shí)基發(fā)生器提供。時(shí)基信號(hào)發(fā)生一個(gè)高穩(wěn)定的石英振蕩器和一系列數(shù)字分頻器組成,由它輸出的標(biāo)準(zhǔn)時(shí)間脈沖(時(shí)標(biāo))去控制門控電路形成門控信號(hào)。比如,時(shí)標(biāo)信號(hào)的重復(fù)周期為 1S,則加到閘門的門控信號(hào)作用時(shí)間 T 即閘門時(shí)間

29、亦準(zhǔn)確地等于 1s,即閘門開通時(shí)間為 1s,這時(shí)若計(jì)得 10 000 個(gè)數(shù),則按式(4-1),被測頻率=10.000Hz,若計(jì)xf數(shù)器上單位顯示為“kHz” ,則顯示 10.000kHz,即小數(shù)點(diǎn)定位在第三位。不難設(shè)想,若閘門時(shí)間改為 T=0.1s,則計(jì)數(shù)值為 1 000,這個(gè)數(shù)乘以 10 就等于 1s 的第四章 數(shù)字頻率計(jì)的設(shè)計(jì)與實(shí)現(xiàn)11計(jì)數(shù)值,即Hz。實(shí)際上,當(dāng)改變閘門時(shí)間 T 時(shí),顯示器1000 10100000 xf 上的小數(shù)點(diǎn)也隨著往右移一位(自動(dòng)定位),即顯示 10.000kHz。從以上討論可知,電子計(jì)數(shù)器的測頻原理實(shí)質(zhì)上以比較法為基礎(chǔ),它將和時(shí)基信號(hào)頻率相比,兩個(gè)頻率相比的結(jié)果以

30、數(shù)字的形式顯示出來。xf4.3 設(shè)計(jì)方案與系統(tǒng)需求設(shè)計(jì)方案與系統(tǒng)需求由電子計(jì)數(shù)器頻率測量基本原理可知,測頻功能實(shí)現(xiàn)需要脈沖形成電路、閘門、十進(jìn)制電子計(jì)數(shù)器、門控電路、時(shí)基信號(hào)發(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 的有源晶振作為時(shí)基信號(hào)發(fā)生器,但是測量需要的時(shí)基信號(hào)為 1S、0.1S、0。01S,因此需要進(jìn)行分頻,另外計(jì)數(shù)器的輸出結(jié)果可以使用數(shù)碼管顯示,需要一個(gè) 1KHz 的掃描信號(hào),也可

31、由晶振分頻得到,脈沖形成電路可以使用模擬電路,另外為了使數(shù)碼管能夠穩(wěn)定顯示,在輸出之前加一個(gè)鎖存器,閘門選擇可以使用實(shí)驗(yàn)板上的開關(guān)得到。至此可以確定,可以在 EEC-FPGA 實(shí)驗(yàn)板實(shí)現(xiàn)的數(shù)字電路部分為分頻器、計(jì)數(shù)器、鎖存器、門控電路、閘門選擇、數(shù)碼管掃描顯示控制子系統(tǒng),這些模塊之間的關(guān)系如圖 4-3 所示:電子科技大學(xué)現(xiàn)代電子技術(shù)綜合實(shí)驗(yàn)報(bào)告12圖 4-3 原理框圖放大整形電路放大整形電路:放大被測信號(hào)并將其整形為方波脈沖,該方波脈沖經(jīng)過閘門后送計(jì)數(shù)器計(jì)數(shù)。石英振蕩器石英振蕩器:產(chǎn)生一個(gè)頻率(48MHz)高度穩(wěn)定的信號(hào)送給分頻器分頻。分頻器分頻器:對石英振蕩器產(chǎn)生的信號(hào)進(jìn)行分頻,得到 100

32、Hz、10Hz 和 1Hz三個(gè)基準(zhǔn)頻率;同時(shí)產(chǎn)一個(gè) 1KHz 的信號(hào)作為掃描顯示譯碼模塊的時(shí)鐘,以產(chǎn)生掃描選擇信號(hào)。門控電路門控電路:門控電路在時(shí)間基準(zhǔn)信號(hào)的控制下產(chǎn)生門控信號(hào) GATE,門控信號(hào)有效時(shí),閘門開通,計(jì)數(shù)器計(jì)數(shù)。當(dāng)門控信號(hào)停止作用時(shí),閘門關(guān)斷。此時(shí),為了使計(jì)數(shù)結(jié)果能夠在顯示器上穩(wěn)定的顯示,門控電路要產(chǎn)生一個(gè)鎖存命令 Latch 使鎖存器鎖存計(jì)數(shù)結(jié)果。在計(jì)數(shù)結(jié)果鎖存以后,下一次計(jì)數(shù)開始以前,門控電路還要產(chǎn)生一個(gè)清零信號(hào) CLEAR 將計(jì)數(shù)器清零,以便重新計(jì)數(shù)。GATE 信號(hào)、Latch 信號(hào)以及 CLEAR 信號(hào)三者的關(guān)系如圖 4-4 所示:第四章 數(shù)字頻率計(jì)的設(shè)計(jì)與實(shí)現(xiàn)13圖 4

33、-4 控制信號(hào)波形4.4 各模塊的功能及實(shí)現(xiàn)各模塊的功能及實(shí)現(xiàn)4.4.1 分頻器分頻器分頻器的功能是提供標(biāo)準(zhǔn)閘門時(shí)間控制信號(hào)以精確控制計(jì)數(shù)器的開閉。由于閘門時(shí)間只有 1S,0.1S,0.01S 三檔,且在數(shù)碼管顯示時(shí)采用動(dòng)態(tài)掃描的方法,需要產(chǎn)生 1kHz 的掃描信號(hào),由于本設(shè)計(jì)將下載到開發(fā)板上,其提供的標(biāo)準(zhǔn)時(shí)間是 48MHz,所以要對系統(tǒng)的 48MHz 時(shí)鐘信號(hào)進(jìn)行分頻,以產(chǎn)生符合要求的各頻率信號(hào):先由系統(tǒng)時(shí)鐘 48MHz 分頻出 1kHz 作為數(shù)碼管顯示的動(dòng)態(tài)掃描信號(hào),再由 1kHz 分頻出 100Hz 產(chǎn)生 0.01S 的計(jì)數(shù)閘門信號(hào)脈沖,由 100Hz分頻出 10Hz 產(chǎn)生 0.1S 的

34、計(jì)數(shù)閘門信號(hào)脈沖,由 10Hz 分頻出 1Hz 產(chǎn)生 1S 的計(jì)數(shù)閘門信號(hào)脈沖。同時(shí)給整個(gè)系統(tǒng)定義系統(tǒng)復(fù)位。由以上分析,可分頻器模塊如圖所示:圖 4-5 分頻器模塊電子科技大學(xué)現(xiàn)代電子技術(shù)綜合實(shí)驗(yàn)報(bào)告14仿真圖如圖 4-6 所示:圖 4-6 分頻器模塊仿真圖這個(gè)模塊即實(shí)現(xiàn)了把 48MHz 的時(shí)基信號(hào)分成了我們需要的四個(gè)信號(hào)1Hz,10Hz,100Hz,1KHz。4.4.2 閘門選擇器閘門選擇器該模塊的功能是實(shí)現(xiàn)對輸入的幾個(gè)閘門信號(hào)的手動(dòng)選擇,并輸出被選中的閘門信號(hào) fhz 和閘門開與斷的現(xiàn)實(shí)信號(hào) light 以及小數(shù)點(diǎn)的控制信號(hào) dp。生成的模塊如圖 4-7 所示:圖 4-7 閘門選擇器該模塊

35、有六個(gè)輸入端口,其中 s(2:0)為選擇端,f1hz,f10hz,f100hz 為被選時(shí)基信號(hào)輸入端。當(dāng) s(0)為 1,其余無效時(shí),f1hz 的輸入時(shí)基信號(hào)被選中,被賦值給輸出端口 fhz 輸出,此時(shí) dp(3)有效,其余的無效,點(diǎn)亮 dp(4)連接的小數(shù)點(diǎn);當(dāng) s(1)為 0,其余無效時(shí),f10hz 時(shí)基信號(hào)被選中,被賦值給輸出端口 fhz第四章 數(shù)字頻率計(jì)的設(shè)計(jì)與實(shí)現(xiàn)15輸出,此時(shí) dp(2)有效,其余的無效,點(diǎn)亮 dp(2)連接的小數(shù)點(diǎn);最后當(dāng) s(2)為0,其余無效時(shí),f100hz 時(shí)基信號(hào)被選中,被賦值給輸出端口 fhz 輸出,此時(shí)dp(1)有效,其余的無效,點(diǎn)亮 dp(1)連接的

36、小數(shù)。仿真圖如圖 4-8 所示:圖 4-8 閘門選擇器仿真圖4.4.3 測頻控制器測頻控制器測頻控制器是控制整個(gè)頻率計(jì)各模塊進(jìn)行時(shí)序工作的控制裝置,它對輸入的標(biāo)準(zhǔn)時(shí)鐘信號(hào)進(jìn)行變換,產(chǎn)生我們所需要的三個(gè)信號(hào)閘門信號(hào) GATE,鎖存信號(hào) LATCH 以及清零信號(hào) CLEAR。其生成的模塊如下圖 4-9 所示:圖 4-9 測頻控制器測頻控制器的計(jì)數(shù)使能信號(hào) Gate 能產(chǎn)生一個(gè)周期信號(hào),并對頻率計(jì)的計(jì)數(shù)器使能端進(jìn)行同步控制。當(dāng) Gate 為高電平時(shí),允許計(jì)數(shù),為低電平時(shí)停止計(jì)數(shù),并保持其所計(jì)得脈沖數(shù)。在停止計(jì)數(shù)期間,首先需要一個(gè)鎖存信號(hào) latch的上升沿將計(jì)數(shù)器在前一秒的計(jì)數(shù)值鎖存進(jìn) 24 位鎖存

37、器 Latch 中,并由外部的 7 段譯碼器譯出,并穩(wěn)定顯示。鎖存信號(hào)之后,必須有一清零信號(hào) clear 對電子科技大學(xué)現(xiàn)代電子技術(shù)綜合實(shí)驗(yàn)報(bào)告16計(jì)數(shù)器清零,為下一秒的計(jì)數(shù)操作準(zhǔn)備。測頻控制信號(hào)發(fā)生器的仿真工作時(shí)序如圖 4-10 所示。圖 4-10 測頻控制器的仿真圖如果閘門信號(hào) Gate 的頻率取 1Hz,那么信號(hào) Gate 的脈寬恰好為 1S,可以用作計(jì)數(shù)閘門信號(hào)。然后根據(jù)測頻的時(shí)序要求,可得出信號(hào) latch 和 Reset 的邏輯描述。由圖可見,在計(jì)數(shù)完成后,即計(jì)數(shù)使能信號(hào) Gate 在 1S 的高電平后,利用其反相值產(chǎn)生一個(gè)鎖存信號(hào) latch,由于反相器的器件延時(shí),鎖存信號(hào)的上升

38、沿是在計(jì)數(shù)使能信號(hào)即閘門信號(hào) Gate 的下降沿之后,即是計(jì)數(shù)完了才鎖存的,符合我們的設(shè)計(jì)要求。而清零信號(hào) Reset 的上升沿的產(chǎn)生是在下一個(gè) Gate信號(hào)上升沿來臨之前,也就是說是清了零才開始計(jì)數(shù)的,不是計(jì)了一會(huì)兒數(shù)再被清零了繼續(xù)計(jì)數(shù),這也是與我們的設(shè)計(jì)要求相符合的。高質(zhì)量的測頻控制信號(hào)發(fā)生器的設(shè)計(jì)十分重要,設(shè)計(jì)中要對其進(jìn)行仔細(xì)的實(shí)時(shí)仿真,防止可能產(chǎn)生的毛刺。4.4.4 計(jì)數(shù)器計(jì)數(shù)器由于要求頻率計(jì)的顯示為十進(jìn)制六位,所示我們設(shè)計(jì)的是使能端的十進(jìn)制計(jì)數(shù)器,所生成的模塊如圖所示:其中 rst 是清零端,wave 是計(jì)數(shù)信號(hào)輸入端,進(jìn)位輸出作為溢出標(biāo)志用 over 來表示,用以顯示計(jì)數(shù)器計(jì)數(shù)是否

39、溢出,溢出了就更換大一級(jí)的檔位。這樣的級(jí)聯(lián)形成了同步計(jì)數(shù),是一種計(jì)數(shù)較快的級(jí)聯(lián)方式,生成的模塊如圖 4-11 所示:第四章 數(shù)字頻率計(jì)的設(shè)計(jì)與實(shí)現(xiàn)17圖形 4-11 計(jì)數(shù)器模塊仿真圖如下圖 4-12 所示:圖 4-12 計(jì)數(shù)器的仿真圖由仿真圖可以看出,程序的綜合出來的這個(gè)計(jì)數(shù)器的確實(shí)現(xiàn)我們預(yù)定的要求。有清零端和保持端,通過對計(jì)數(shù)器的級(jí)聯(lián)就可以實(shí)現(xiàn)十進(jìn)制六位數(shù)的計(jì)數(shù)。4.4.5 鎖存器鎖存器如果計(jì)數(shù)器輸出直接與譯碼器相連接,那么在計(jì)數(shù)過程中輸出端則隨輸入脈沖數(shù)的增加而不斷跳變,那么顯示數(shù)碼管則也會(huì)不斷閃爍跳變,讓人不能看到穩(wěn)定的輸出,設(shè)鎖存器后,則不再跳變,便可清晰讀出計(jì)數(shù)結(jié)果。由控制模塊產(chǎn)生的

40、 latch 信號(hào)來提供鎖存脈沖。其生成的功能模塊如圖 4-13 所示:電子科技大學(xué)現(xiàn)代電子技術(shù)綜合實(shí)驗(yàn)報(bào)告18圖 4-13 鎖存器模塊這模塊實(shí)現(xiàn)了對六位計(jì)數(shù)結(jié)果和溢出信號(hào) over 的鎖存功能。即鎖存信號(hào)的上升沿來時(shí)送數(shù),其它時(shí)候則保持不變。4.4.6 掃描顯示控制系統(tǒng)掃描顯示控制系統(tǒng)本模塊通過用一個(gè)頻率 1KHz 的信號(hào)來掃描一個(gè)多路選擇器,實(shí)現(xiàn)對六位已經(jīng)鎖存的計(jì)數(shù)結(jié)果的掃描輸出,由于 1KHz 相對了人眼的暫留效應(yīng)已經(jīng)很高了,所以顯示結(jié)果不會(huì)讓人感覺到閃爍。這樣就可以用一個(gè)譯碼器來實(shí)現(xiàn)對六個(gè) 4 位二進(jìn)制數(shù)的譯碼。譯碼結(jié)果再連接到一個(gè)多路選擇器的輸入端,同樣由1KHz 的信號(hào)來同步掃描選

41、通。最后的輸出全部通過下載前的固定引腳連接到LED 顯示管上。實(shí)現(xiàn)最終結(jié)果的數(shù)字顯示。輸入端包括掃描信號(hào) 1KHz,由前小數(shù)點(diǎn)指示信號(hào) dp 以及鎖存器的輸出結(jié)果。第四章 數(shù)字頻率計(jì)的設(shè)計(jì)與實(shí)現(xiàn)19其生成掃描模塊如圖 4-14 所示:圖 4-14 掃描顯示控制模塊掃描仿真結(jié)果如圖 4-15 所示:圖 4-15 掃描顯示控制模塊的仿真圖4.4.6 7 段譯碼顯示控制系統(tǒng)段譯碼顯示控制系統(tǒng)六位十進(jìn)制數(shù)的BCD碼相繼進(jìn)入bcd_code,經(jīng)7段譯碼輸出,顯示十進(jìn)制數(shù)。并根據(jù)檔位信號(hào)確定小數(shù)點(diǎn)顯示的位置以實(shí)現(xiàn)檔位的顯示。模塊如圖 4-16 所示:電子科技大學(xué)現(xiàn)代電子技術(shù)綜合實(shí)驗(yàn)報(bào)告20圖 4-16 顯

42、示譯碼控制模塊掃描仿真結(jié)果如圖 4-17 所示:圖 4-17 顯示模塊的仿真圖4.5 分配引腳和下載實(shí)現(xiàn)分配引腳和下載實(shí)現(xiàn)全部仿真通過后,就運(yùn)行 ISE 的設(shè)計(jì)實(shí)現(xiàn),然后分配引腳,即實(shí)現(xiàn)設(shè)計(jì)的輸入輸出端口與實(shí)際芯片的輸入輸出端口的對應(yīng)連接。比如七段 LED 管的控制信號(hào)就連接到實(shí)際電路的七個(gè)引腳。需要注意的是一些端口是固定的,不能胡亂的連接。比如時(shí)基信號(hào)即石英振蕩器所提供的信號(hào)就只能由 T8 輸入。外部信號(hào)輸入只能由外部信號(hào)源接口輸入,同時(shí)還要考慮內(nèi)部的可配制邏輯塊CLB 的數(shù)量是否夠滿足程序的綜合要求。一切都準(zhǔn)備就緒后就可以運(yùn)行Configure Device,選擇要下載的位文件(.bit)

43、便可開始下載了。4.6 誤差分析誤差分析下面我們來分析計(jì)數(shù)器測頻的測量誤差。從公式(4-1)可知,上述測頻方第四章 數(shù)字頻率計(jì)的設(shè)計(jì)與實(shí)現(xiàn)21法的測量誤差,一方面決定于閘門時(shí)間 T 準(zhǔn)不準(zhǔn),另一方面決定于計(jì)數(shù)器計(jì)得的數(shù)準(zhǔn)不準(zhǔn)。根據(jù)誤差合成方法,從公式(4-1)可得: (4-2)TTNNffxx公式(4-2)中第一項(xiàng)是數(shù)字化儀器所特有的誤差,而第二項(xiàng)是閘門NNTT時(shí)間的相對誤差,這項(xiàng)誤差決定于石英振蕩器所提供的標(biāo)準(zhǔn)頻率的準(zhǔn)確度?,F(xiàn)分述如下。4.6.1 1 誤差誤差在測頻時(shí),主門的開啟時(shí)刻與計(jì)數(shù)脈沖之間的時(shí)間關(guān)系是不相關(guān)的,所以它們在時(shí)間軸上的相對位置是隨機(jī)的。這樣,在相同的主門開啟時(shí)間內(nèi),計(jì)數(shù)器

44、所計(jì)得的數(shù)卻不一定相同,當(dāng)主門開啟時(shí)間 T 接近甚至等于被測信號(hào)周期的整數(shù)倍 N 倍時(shí),此項(xiàng)誤差為最大,圖 4-2 畫出的就是這種情況。xT圖 4-2 正負(fù) 1 誤差若主門開啟時(shí)刻為,而第 1 個(gè)計(jì)數(shù)脈沖出現(xiàn)在,圖 4-2 (a)中示出了0TxT0 的情況(),這時(shí)計(jì)數(shù)器計(jì)得 N 個(gè)數(shù)(圖中 N=6);現(xiàn)在再來xT0T0TTTx看圖 4-2 (b)情況,即趨近于 0,這就有兩種可能的計(jì)數(shù)結(jié)果:若第 1 個(gè)計(jì)T數(shù)脈沖和第 7 個(gè)計(jì)數(shù)脈沖都能通過主門,則可計(jì)得 N+1=7 個(gè)數(shù);也可能這兩個(gè)脈沖都沒有能進(jìn)入主門,則只能計(jì)得 N-1=5 個(gè)數(shù)。由此可知,最大的計(jì)數(shù)誤差為個(gè)數(shù)。所以考慮到公式(4-1)

45、,可寫成1N電子科技大學(xué)現(xiàn)代電子技術(shù)綜合實(shí)驗(yàn)報(bào)告22 (4-3)xTfNNN11式中 T 為閘門時(shí)間,為被測頻率。從公式(4-3)可知,不管計(jì)數(shù)值 N 多xf少,其最大誤差總是1 個(gè)計(jì)數(shù)單位,故稱“1 個(gè)字誤差” ,簡稱“1 誤差” 。而且一定時(shí),增大閘門時(shí)間 T,可減小1 誤差對測頻誤差的影響。當(dāng) T 選xf定后,越低,則由1 誤差產(chǎn)生的測頻誤差越大。xf4.6.2 標(biāo)準(zhǔn)頻率誤差標(biāo)準(zhǔn)頻率誤差閘門時(shí)間 T 準(zhǔn)不準(zhǔn),主要決定于由石英振蕩器提供的標(biāo)準(zhǔn)頻率的準(zhǔn)確度,若石英振蕩器的頻率為,分頻系數(shù)為 k,則cfccfkkTT而2ccffkT所以 (4-4)ccffTT可見,閘門時(shí)間的準(zhǔn)確度在數(shù)值上等于

46、標(biāo)準(zhǔn)頻率的準(zhǔn)確度,式中負(fù)號(hào)表示由引起的閘門時(shí)間的誤差為。cfT通常,對標(biāo)準(zhǔn)頻率準(zhǔn)確度的要求是根據(jù)所要求的測頻準(zhǔn)確度提出來的,ccff例如,當(dāng)測量方案的最小計(jì)數(shù)單位為 1Hz,而=Hz,在 T=1s 時(shí)的測量準(zhǔn)xf610確度為(只考慮誤差),為了使標(biāo)準(zhǔn)頻率誤差不對測量結(jié)果表明產(chǎn)生61011影響,石英振蕩器的輸出頻率準(zhǔn)確度應(yīng)優(yōu)于,即比誤差引起的測ccff71011頻誤差小一個(gè)量級(jí)。4.6.3 結(jié)論結(jié)論綜上所述,可得如下結(jié)論:第四章 數(shù)字頻率計(jì)的設(shè)計(jì)與實(shí)現(xiàn)231、計(jì)數(shù)器直接測頻的誤差主要有兩項(xiàng):即誤差和標(biāo)準(zhǔn)頻率誤差。一般,1總誤差可采用分項(xiàng)誤差絕對值合成,即 (4-5)1(ccxxxffTfff可把

47、公式(4-5)畫成圖 4-3 所示的曲線,即與 T,以及的xxffxfccff關(guān)系曲線。圖 4-3 誤差曲線從圖可知,一定時(shí),閘門時(shí)間 T 選得越長,測量準(zhǔn)確度就越高。而當(dāng)xfT 選定后,越高,則由于誤差對測量結(jié)果的影響越小,測量準(zhǔn)確度就越xf1高。但是,隨著誤差的減小,標(biāo)準(zhǔn)頻率誤差將對測量結(jié)果產(chǎn)生影響,1ccff并以(圖中以為例)為極限,即測量準(zhǔn)確度不可能優(yōu)于。ccff910591052、測量低頻時(shí),由于誤差產(chǎn)生的測頻誤差大得驚人,例如,為1xf10Hz,T=1s,則由誤差引起的測頻誤差可達(dá)到 10%,所以,測量低頻時(shí)不1宜采用直接測頻方法。電子科技大學(xué)現(xiàn)代電子技術(shù)綜合實(shí)驗(yàn)報(bào)告24第五章第五

48、章 實(shí)驗(yàn)結(jié)論及總結(jié)實(shí)驗(yàn)結(jié)論及總結(jié)本文主要介紹了利用 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ù)量級(jí),能夠較為精確的測量頻率。(2).當(dāng)頻率計(jì)值達(dá)到該檔量程最大測量值時(shí),這時(shí)輸入頻率值再繼續(xù)增加,則會(huì)產(chǎn)

49、生溢出,并且 LED8 會(huì)變亮表示計(jì)數(shù)器已經(jīng)溢出。(3).在測量頻率過程中我們應(yīng)當(dāng)選擇適當(dāng)?shù)臋n位,使得測量結(jié)果更加精確,特別是溢出信號(hào) LED 亮的時(shí)候,一定要選擇更高檔位來進(jìn)行測量。通過頻率計(jì)的設(shè)計(jì)試驗(yàn),對頻率計(jì)有了更深的認(rèn)識(shí),尤其是對頻率計(jì)的工作原理以及各功能模塊的實(shí)現(xiàn)有深入了解。此外,還熟悉了 Xilinx ISE 10.1i 軟件的用法和 VHDL/Verilog 的編程環(huán)境,通過本次的設(shè)計(jì)培養(yǎng)自己的實(shí)驗(yàn)動(dòng)手能力。這是第一次利用 HDL 語言來實(shí)現(xiàn)基于 FPGA 的實(shí)際工程項(xiàng)目,所以在實(shí)驗(yàn)過程中不可避免的遇到了很多問題以及設(shè)計(jì)中一些不足的地方。理論和實(shí)踐沒有有機(jī)的聯(lián)系起來,理論沒有起到

50、應(yīng)有的指導(dǎo)作用。25參考文獻(xiàn)參考文獻(xiàn)1. 蔣煥文,孫續(xù). 電子測量(第二版). 中國計(jì)量出版社 (中).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 可編程邏輯器件的高級(jí)應(yīng)用與設(shè)計(jì)技巧. 電子工業(yè)出版社 (中).電子科技大學(xué)現(xiàn)代電子技術(shù)綜合實(shí)驗(yàn)報(bào)告26致致 謝謝在此,我首先向不辭辛勞,誨人不倦的老師劉曦工程師和皇

51、曉輝工程師,表示最衷心的感謝。本實(shí)驗(yàn)從最初的選題到任務(wù)的制定,系統(tǒng)的設(shè)計(jì)和開發(fā)過程中都得到了劉老師和的悉心指導(dǎo)與指正。正是老師們的諄諄教導(dǎo)和熱心關(guān)懷使我較快的熟悉了用硬件語言來實(shí)現(xiàn)項(xiàng)目的過程,并最終順利完成實(shí)驗(yàn)。同時(shí),老師們嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度以及對工作的一絲不茍,也使我受益匪淺,終生難忘。特別感謝固電專業(yè)的同學(xué)們在實(shí)驗(yàn)期間給予我的巨大幫助與支持。同學(xué)們都樂于助人。在此,謹(jǐn)向他們致以深深的敬意和誠摯的感謝!最后,感謝電子工程學(xué)院和微電子與固體工程學(xué)院給予我這個(gè)鍛煉自我提升自我的實(shí)驗(yàn)平臺(tái)。翻譯文稿27附附 錄錄附錄附錄 1. 分頻器程序分頻器程序library IEEE;use IEEE.STD_LO

52、GIC_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 UNISIM.VComponents.all;entity divf is Port ( rst : in STD_LOGIC; clk : in STD_LOGIC; f1 : out STD_LOGIC; f

53、10 : out STD_LOGIC; f100 : out STD_LOGIC; f1000 : out STD_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

54、 f1m:STD_LOGIC;signal f10m:STD_LOGIC;signal f100m:STD_LOGIC;signal f1000m:STD_LOGIC;beginpf1:process(rst,clk,f1_cnt)beginif rst=0 then f1_cnt=1;電子科技大學(xué)現(xiàn)代電子技術(shù)綜合實(shí)驗(yàn)報(bào)告28elsif 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

55、(rst,clk,f10_cnt)beginif rst=0 then f10_cnt=1;elsif rising_edge(clk) then if 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

56、f100m; f100_cnt=1; else f100_cnt=f100_cnt+1; end if;end if;end process;pf1000: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;翻譯文稿29end if;end process;f1=f1m;f10=f10m;f

57、100=f100m;f1000fhz=f1hz;dp=110111;lightfhz=f10hz;dp=110111;lightfhz=f100hz;dp=110111;lightfhz=Z;dp=111111;light=1;end case;電子科技大學(xué)現(xiàn)代電子技術(shù)綜合實(shí)驗(yàn)報(bào)告30end process;end Behavioral;附錄附錄 3. 測頻控制器程序測頻控制器程序library IEEE;use IEEE.STD_LOGIC_1164.ALL;use IEEE.STD_LOGIC_ARITH.ALL;use IEEE.STD_LOGIC_UNSIGNED.ALL;- Unco

58、mment the following library declaration if instantiating- any Xilinx primitives in this code.-library UNISIM;-use 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 Behav

59、ioral of control2 issignal g1:STD_LOGIC;signal g2:STD_LOGIC;beginprocess(fre,clr)begin if clr=0 then g1=0; elsif rising_edge(fre) then g1= not g1; end if; if falling_edge(fre) then g2= not g1; end if; end process;gate=g1;latch=g2;rst=(not fre) and (not g1) and (g2);翻譯文稿31end Behavioral;附錄附錄 4. 計(jì)數(shù)器程序

60、計(jì)數(shù)器程序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 UNISIM.VComponents.all;entity m10_counter is Port ( rst : in STD_LOGIC; w

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論